/*#
#desc: admin ex intrudes on drinking
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 10000)>>
<<set _nextDate = setup.setNextDate($now, 5, 0, 0)>>
<<addEvent 'admin_ex' _nextDate>>
<<initRoom>>
<<moveTo "event_admin_drink_1_2a">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImageGeneric("admin_ex")>>
<div id="invframe" class="scrolltext">
You're enjoying a night of drinking with your <<boy npc_admin>>friend as usual when you catch movement out of the corner of your eye, turning just as a woman steps up next to the two of you.<br>
<br>
"@@.generic_female1;<<=setup.getNpcName("npc_admin","first")>>?@@" She asks as <<=setup.getNpcName("npc_admin","first")>> turns to look at her.<br>
<br>
The woman seems vaguely familiar and <<=setup.getNpcName("npc_admin","first")>> introduces her with some tense awkwardness.<br>
<br>
"@@.npc_admin;Oh, hi <<=setup.getNpcName("generic_female1","custom", "Hanako")>>, you haven't met <<=$player.first_name>>. <<=$player.first_name>> this is <<=setup.getNpcName("generic_female1","custom", "Hanako")>> my, uh—@@" <<=setup.getNpcName("npc_admin","first")>> starts to stall out but <<=setup.getNpcName("generic_female1","custom", "Hanako")>> takes over.<br>
<br>
<<if $fetish.harass || $fetish.kharmic_harass>>
<<if $fetish.sissy && $fetish.slurs>>
<<set _term = "sissy faggot">>
<<elseif $fetish.sissy>>
<<set _term = "sissy">>
<<elseif $fetish.slurs>>
<<set _term = "faggot">>
<<else>>
<<set _term = "slut">>
<</if>>
"@@.generic_female1;<<His npc_admin>> Ex, and who the hell is this?@@" She continues, sneering at you. "@@.generic_female1;I mean, I heard you were dating some <<=_term>> but this... I can't believe you dumped a REAL woman for this!@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> wraps an arm protectively around your waist as <<he npc_admin>> rises to <<his npc_admin>> feet and looks down at the intruding woman.<br>
<br>
<<if $fetish.harass && $fetish.kharmic_harass>>
<<=setup.getNpcName("npc_admin","first")>> subtly glances at you, silently asking how you want to play things.<br>
<br>
[<<moveTo "event_admin_ex_1_harass_1" "You are a <<=_term>>... <<if $npc_admin.fem>>HER<<else>>HIS<</if>> <<=_term>>." 180>>]<br>
[<<moveTo "event_admin_ex_1_kharma_1" 'Pull closer to <<=setup.getNpcName("npc_admin","first")>> for protection.' 180>>]
<<else>>
<<if $fetish.harass>>
[<<moveTo "event_admin_ex_1_harass_1" "You are a <<=_term>>... <<if $npc_admin.fem>>HER<<else>>HIS<</if>> <<=_term>>." 180>>]<br>
<<elseif $fetish.kharmic_harass>>
[<<moveTo "event_admin_ex_1_kharma_1" 'Pull closer to <<=setup.getNpcName("npc_admin","first")>> for protection.' 180>>]
<<else>>
ERROR: unexpected state
<</if>>
<</if>>
<<else>>
"@@.generic_female1;<<His npc_admin>> ex,@@" she says with a smile, offering you a hand "@@.generic_female1;charmed, and I don't want to bother the two of you too much. I just saw you from across the bar and wanted to say hi. Though, I have to say, I'm a bit surprised to see you bringing a date here. I thought The Usual Place was just the place where you and that old friend of yours from college to catch up at?@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> pulls you in a little closer and grins, "@@.npc_admin;this is she!@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Hanako")>> blinks for a moment and looks you over as realisation blossoms over her face. "@@.generic_female1;Ohmygod! You transitioned? I never would have guessed you were the same person! Girl, you. are. GORGEOUS. The way <<=setup.getNpcName("npc_admin","first")>> talked about you I knew the two of you were close... guess there was always something there, just waiting for <<him npc_admin>> to see you in the proper light? And seriously — if we hadn't broken up I'd be worried about you swooping in just off looks... well, if it was any other <<man npc_admin>>. <<=setup.getNpcName("npc_admin","first")>> may put off that player front, but once you have <<him npc_admin>> committed <<he npc_admin>>'s a loyal puppy underneath it all!@@"<br>
<br>
Now it's <<=ps(setup.getNpcName("npc_admin","first"))>> turn to blush a little as you snuggle up into <<him npc_admin>> and thank her for the regards.<br>
<br>
"@@.generic_female1;Of course, of course. As I said, the two of us went our separate ways amicably, plus I'm about to move for a new job, anyway. I just saw <<=setup.getNpcName("npc_admin","first")>> and figured I'd say goodbye, since I don't know when I'll be back this way again. So, yeah, I'll let you get back to your drinks, I just wanted to say hi and <<=$player.first_name>>? You take care of that <<man npc_admin>>! <<He npc_admin>>'s quite the catch, and I'm glad to see <<him npc_admin>>, and that deliciously delightful dick of <<his npc_admin>>, have found a good home.@@"<br>
<br>
Her sudden turn to lewdness takes you off-guard but she winks at you knowingly and darts away before you can get in another word.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> chuckles. "@@.npc_admin;Heh, seems like the two of you would have gotten on. I never really talked to you about her much since we were dating back when you and <<=setup.getNpcName("npc_exgirlfriend","first")>> were starting to hit the rocks, and then you stopped meeting for drinks. Alls well that ends well though, right?@@" <<He npc_admin>> asks as <<he npc_admin>> waves for another round of drinks.<br>
<br>
You look up at <<him npc_admin>> with a smile. Sure, there's still the chaos at work to deal with... but in your personal life? Ends well, indeed...<br>
<br>
[<<moveTo "event_admin_drink_1_2a" 'Resume drinking.' 180>>]
<</if>>
</div>/*#
#desc: admin ex harrasses you
#status: RELEASED 0.8.8.0
#ignore_spell: t4t4life
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImageGeneric("admin_ex")>>
<div id="invframe" class="scrolltext">
You wrap yourself possessively around <<=setup.getNpcName("npc_admin","first")>> and reply with pride that you're <<if $npc_admin.fem>>HER<<else>>HIS<</if>>
<<if $fetish.sissy && $fetish.slurs>>
sissy faggot.
<<elseif $fetish.sissy>>
sissy slut.
<<elseif $fetish.slurs>>
faggot.
<<else>>
slut.
<</if>>
<br><br>
<<=ps(setup.getNpcName("npc_admin","first"))>> fingers dig into your ass as you grind against <<his npc_admin>> leg. "@@.npc_admin;Damn right. See, the thing you cis girls will never understand is that you're playing on easy mode. <<if $fetish.sissy>>A sissy<<else>>My girl<</if>>, on the other hand? She knows she's working from a disadvantage, that her only way to prove her worth is to dedicate herself to being the worlds most beautiful and enthusiastic cock-socket. None of that playing hard to get or trying to have it all, nah, she's dedicated to one singular focus, to serve her <<man npc_admin>>. You wish you were as good of a cock-sucker as she is and after feeling the difference? It's a fucking joke that I'd even consider going back to your tired cunt after breaking off a piece of this tight, juicy ass<<if $npc_admin.fem>>. T4T4Life<</if>>.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> gives you a slap on the ass that echos in the bar and makes you moan.<br>
<br>
<<printThought "Yes, degrade me<<if $fetish.daddy>> <<Daddy npc_admin>><</if>>... show everyone who owns my ass...">><br>
<br>
"@@.npc_admin;Watch, I'll prove it. Remember that time I asked you to suck me off in the theatre, and you refused, even though it was pitch black and nobody was sitting anywhere nearby? Well, watch how a TRUE <<if $fetish.sissy>>sissy <</if>>slut handles things.@@"<br>
<br>
<<printThought "That's my cue...">><br>
<br>
Your pulse pounds with excitement at the way <<=setup.getNpcName("npc_admin","first")>> is treating you. You glance around to see that half the bar is watching to see you make your move, their judgement only turning you on more.<br>
<br>
<<if $fetish.daddy>>
[<<moveTo "event_admin_ex_1_harass_2" "<<Daddy npc_admin>>'s cock needs sucking." 180>>]
<<else>>
[<<moveTo "event_admin_ex_1_harass_2" "Get down on your knees like a good slut." 180>>]
<</if>>
</div>/*#
#desc: show admin ex what a slut you are
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<<applyExperience 'oral' $npc_admin.penis_size 'terrible' $EXPOSED>>
<<applyExperience 'penis' 15 'terrible' $EXPOSED>>
<<applyExperience 'submission' 15 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImageGeneric("admin_ex")>>
<div id="invframe" class="scrolltext">
You slide to your knees as you spare a final glance at <<=setup.getNpcName("generic_female1","custom", "Hanako")>> while she looks on with shock. She only earns your attention for a few more moments before you shift your entire focus to what's important — <<if $fetish.daddy>><<Daddy npc_admin>>'s<<else>><<=ps(setup.getNpcName("npc_admin","first"))>><</if>> big, beautiful cock. It's out of <<his npc_admin>> jeans for but a moment before you put it where it belongs — inside of you, the thick, hard meat missile as delicious as it is throat-stretching, your exuberance reflected in several seconds of a drooling, messy blowjob until <<=setup.getNpcName("npc_admin","first")>> grabs you by the hair and pulls you off for a moment.<br>
<br>
"@@.npc_admin;See? Look at that face. This is the face of a true cock-addicted slut, eager to earn every <<if $fetish.cum>>drop of cum<<else>>suck<</if>> rather than just lay back and pick and choose as the <<guy npc_admin>>s to come to her.@@"<br>
<br>
You shudder submissively, the fact that <<=setup.getNpcName("npc_admin","first")>> values you over <<his npc_admin>> ex, and that <<he npc_admin>>'s treating you like this in front of the whole bar...<br>
<br>
<<printThought "<<if $fetish.daddy>><<Daddy npc_admin>><<else>><<He npc_admin>><</if>> knows EXACTLY what this <<if $fetish.sissy && $fetish.slurs>>sissy faggot<<elseif $fetish.sissy>>sissy slut<<elseif $fetish.slurs>>faggot<<else>>slut<</if>> needs...">><br>
<br>
"@@.npc_admin;Well, <<if $fetish.sissy>>sissy<<else>>slut<</if>> — you got anything to say about this?@@"<br>
<br>
[<<moveTo "event_admin_ex_2_gangbang_1" "Pop my choker, <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<sir npc_admin>><</if>>." 300>>]
</div>/*#
#desc: admin ex bar gangbang
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImageGeneric("admin_ex")>>
<div id="invframe" class="scrolltext">
"@@.pc;Pop my choker <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<sir npc_admin>><</if>>,@@" you lustily reply. <<=setup.getNpcName("npc_admin","first")>> grins and pulls you back in with both hands, <<his npc_admin>> cock thrusting down your throat in a single smooth motion, stretching you wide as your eyes roll back and you go almost limp in ecstatic dick-sheath joy.<br>
<br>
"@@.npc_admin;So you see,@@" <<=setup.getNpcName("npc_admin","first")>> explains, while punctuating each word with a hard, deep, wonderful thrust as <<his npc_admin>> strong hands jerk your skull back and forth. "@@.npc_admin;All that shit you said may be true — I may be dating a
<<if $fetish.sissy && $fetish.slurs>>
sissy faggot,
<<elseif $fetish.sissy>>
sissy slut,
<<elseif $fetish.slurs>>
faggot,
<<else>>
slut,
<</if>>
but that's because she's the one getting on her knees to be face-fucked, while your dry-ass pussy just stands there looking on, too cowardly to even act on your jealousy.@@"<br>
<br>
This finally proves too much for <<=setup.getNpcName("generic_female1","custom", "Hanako")>> and she storms off in a huff.<br>
<br>
You moan and suck with even more enthusiasm until you hear the sound of someone clearing their voice behind you.<br>
<br>
[<<moveTo "event_admin_ex_2_gangbang_2" "What's going on?" 300>>]
</div>/*#
#desc: gangbang intro after admin ex harass
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
Cock still in your mouth you turn your head just far enough to see <<=setup.getNpcName("npc_barkeeper","first")>> standing with a large strap-on buckled to her hips. "@@.npc_barkeeper;Well? You gonna hog that slut to yourself, or are her other holes available for use? 'Cause that monologue was great and all... but now I got a bar full of riled up patrons looking to blow off some steam...@@"<br>
<br>
You glance past <<=setup.getNpcName("npc_barkeeper","first")>> to see the rest of the bar looking down at you with predatory lusts, prior clients and anonymous patrons both eager to take their turns.<br>
<br>
"@@.npc_admin;Of course!@@" <<=setup.getNpcName("npc_admin","first")>> replies. "@@.npc_admin;This is your establishment, after all. But the rest of you? Y'all better to ready to pay — this <<if $fetish.sissy>>sissy<<else>>girl<</if>> is my slut, so I can use her whenever I want. But to you she's a whore, and however eager she is to be used, fucked and filled, whores charge.@@"<br>
<br>
You moan, then groan as <<=setup.getNpcName("npc_barkeeper","first")>> slides into you with what you now recognise is a perfect silicone replica of the cock currently filling your throat. You'd say nothing could be more perfect... but the evening is young, and you still have a whole bar left to entertain...<br>
<br>
[<<moveTo "event_admin_ex_2_gangbang_3" "Friday night fuck-fest time!" 3600>>]
</div>/*#
#desc: admin ex harrass gangbang
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<<applyExperience 'oral' $npc_admin.penis_size 'terrible' $EXPOSED>>
<<applyExperience 'anal' $npc_admin.penis_size 'terrible' $EXPOSED>>
<<applyExperience 'submission' 15 'terrible' $EXPOSED>>
<<applyExperience 'whoring' 10 'terrible' $EXPOSED>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
The bar soon descends into an orgy, or perhaps it would be more accurately described as a gang-bang, given that you remain the primary focus. <<=setup.getNpcName("npc_admin","first")>> is your priority, as you drain <<him npc_admin>> eagerly and hop back on the instant you see <<him npc_admin>> twitch with renewed hardness.<br>
<br>
In between, and in parallel, you take on patrons two, three, or more at a time, licking cunt or sucking cock, getting railed from either end all while <<=setup.getNpcName("npc_barkeeper","first")>> collects the credits; literally holding mini auctions for who gets next crack at one of your coveted holes, the losing bidders forced to make due paying for handjobs — all the money going to <<=setup.getNpcName("npc_barkeeper","first")>> as your reward is just the <<if $fetish.cum>>blast after blast of cum shot across your body or into your holes<<else>>joy of service<</if>>.<br>
<br>
[<<moveTo "event_admin_ex_2_gangbang_4" "More! Harder!" 3600>>]
</div>/*#
#desc: admin ex bar gangbang finishes
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
Eventually the flow of fresh cock tapers off as your drained clients stagger off or collapse in a booth.<br>
<br>
Only when you finally run out of customers does <<=setup.getNpcName("npc_admin","first")>> scoop you up — carrying you into the back room to lay you out in bed with a whispered "@@.npc_admin;good <<if $fetish.sissy>>sissy<<else>>slut<</if>>.@@"<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 7, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 7, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_admin_ex_3" "Sleep." _timeToMorning>>]
</div>/*#
#desc: admin ex kharmic harrassment intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImageGeneric("admin_ex")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_admin","first")>> stands up for you, and the woman takes a reflexive step back — after all, for as kind as <<he npc_admin>> is, the <<man npc_admin>>'s a walking wall of muscle, easily the size of you and <<=setup.getNpcName("generic_female1","custom", "Hanako")>> combined. "@@.npc_admin;This lovely lady is my girlfriend, and she is all woman. You know, I thought the two of us had a pretty amicable split... but it looks like I was wrong, and I dodged a judgemental, bigoted bullet.@@"<br>
<br>
The woman glares back, and you get the sense she had a few too many cocktails to muster up the courage to start this conversation in the first place. "@@.generic_female1;Bigoted? I'm just stating facts — that you went from a 100% natural woman to... THAT.@@"<br>
<br>
"@@.npc_admin;Natural? You mean like hemlock and malaria? Natural don't mean good, technology exists to improve our lives, and women come in all sorts of types. Now I think you should leave me, and this wonderful woman alone. 'Cause I ain't got anything more to say to you.@@"<br>
<br>
The woman starts to say something else only for <<=setup.getNpcName("npc_barkeeper","first")>> to appear with her arms crossed.<br>
<br>
[<<moveTo "event_admin_ex_1_kharma_2" "Continue." 180>>]
</div>/*#
#desc: admin ex harrasses you, barkeeper steps in
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImageGeneric("admin_ex") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
"@@.npc_barkeeper;Yes, I think you should be going. This is my bar and I do not allow customer behaviour like yours. Get. Out.@@"<br>
<br>
The woman seems about to reply, but where <<=setup.getNpcName("npc_admin","first")>> size is, ultimately an empty threat on the physical side, <<=setup.getNpcName("npc_barkeeper","first")>> is exuding an aura of "do as I say or there WILL be violence." <br>
<br>
Suddenly sobering up the woman slinks away leaving the three of you alone.<br>
<br>
[<<moveTo "event_admin_ex_1_kharma_3" "Continue." 180>>]
</div>/*#
#desc: admin ex leaves after harrasses you due to barkeeper
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
"@@.npc_barkeeper;Sorry about that, hope she didn't ruin your evening... Next round's on me, alright?@@"<br>
<br>
"@@.npc_admin;Thanks, and sorry, again about all that — I had no idea she was like that when we were dating, feelin' guilty I even gave her the time of day.@@"<br>
<br>
<<if setup.getTotalValue("whoring") >= 15>>
You glance around, the brief outburst seems to have drawn attention of other bar patrons, including quite a number you recognise as your clients...<br>
<br>
[<<moveTo "event_admin_ex_1_kharma_4" "Drinks are good... but what would really hit the spot would be cock... lots of cock." 180 "<<set $scene.sex=true>>">>]<br>
<</if>>
[<<moveTo "event_admin_ex_1_kharma_4" "Go back to drinking and forget about the rude intrusion." 180 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: sex after admin ex leaves from kharmic harass
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You get a mischievous grin as your hand drifts down to start massaging <<=setup.getNpcName("npc_admin","first")>> through <<his npc_admin>> jeans as you thank <<him npc_admin>> for the defence... and add that <<he npc_admin>> deserves a reward for being your knight in shining armour.<br>
<br>
"@@.npc_admin;Wait, here, in public?@@" <<He npc_admin>> shoots a glance at <<=setup.getNpcName("npc_barkeeper","first")>> who nods to signal it's alright and you feel <<him npc_admin>> swell, <<his npc_admin>> kink for public play getting <<his npc_admin>> blood pumping as you knew it would...<br>
<br>
[<<moveTo "event_admin_ex_1_kharma_5" "Yes, here. You have the feminine urge to be gang-banged, and <<he npc_admin>> gets first hole." 180 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_admin_ex_1_kharma_5" "Maybe the back room? Wherever it is, you definitely need <<him npc_admin>> inside of you NOW." 180 "<<set $scene.slut=false>>">>]
<<else>>
You thank <<=setup.getNpcName("npc_barkeeper","first")>> for coming to your defence and you and your <<boy npc_admin>>friend turn back to your drinks, the brief interruption soon forgotten in favour of one another's company.<br>
<br>
[<<moveTo "event_admin_drink_1_2a" 'Get back to your date.' 180>>]
<</if>>
</div>/*#
#desc: post admin ex harrass
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<<applyExperience 'oral' $npc_admin.penis_size 'terrible' $EXPOSED>>
<<applyExperience 'submission' 15 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImageGeneric("admin_ex")>>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
"@@.pc;Here,@@" you whisper as you slide to your knees and unzip <<=ps(setup.getNpcName("npc_admin","first"))>> <<getWordPenis "npc_admin">>. <<His npc_admin>> magnificence is even harder than usual, the familiar taste of every pulsing vein making you moan as you worshipfully stretch your throat with its favourite flesh filling.<br>
<br>
You noisily, and messily suck on your favourite popsickle until you sense <<=setup.getNpcName("npc_admin","first")>> is nearing climax, and you sense someone coming up behind.<br>
<br>
[<<moveTo "event_admin_ex_2_gangbang_2" "What's going on?" 300>>]
<<else>>
The recent "excitement" has you full of lust; most specifically lust for <<=setup.getNpcName("npc_admin","first")>> and you quickly lead <<him npc_admin>> to one of the familiar back rooms to lay back on the bed.<br>
<br>
The loving way <<=setup.getNpcName("npc_admin","first")>> looks up at you as you crawl across the bed towards <<him npc_admin>> has your heart skip a beat and you spend but a few brief, delicious moments sucking <<him npc_admin>> off before <<he npc_admin>> pulls you in to passionately take you in the most <<if $npc_admin.fem>>intimate<<else>>manly<</if>> of fashions.<br>
<br>
Muscles swelling and gleaming with sweat <<=setup.getNpcName("npc_admin","first")>> has you in every way <<he npc_admin>> can — a one <<man npc_admin>> gang-bang making love to every centimetre of you — with lips and fingers, whispers and, most of all... cock. Sporting the opposite of whiskey dick, <<his npc_admin>> big, perfect cock fills you with <<his npc_admin>> love over, and over, and over until the two of you pass out in one another's arms...<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 7, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 7, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_admin_ex_3" "Sleep." _timeToMorning>>]
<</if>>
</div>/*#
#desc: wake up morning after after admin ex harrasses
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -50>>
<<if setup.hasTmpEffect("tipsy")>>
<<cancelTmpEffect 'tipsy'>>
<</if>>
<<if setup.hasTmpEffect("drunk")>>
<<cancelTmpEffect 'drunk'>>
<<setTmpEffect "hangover">>
<</if>>
<<if setup.hasTmpEffect("wasted")>>
<<cancelTmpEffect 'wasted'>>
<<setTmpEffect "hangover">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_admin","first"))>> phone alarm goes off early with a snippet of some sort of jock jam that has <<him npc_admin>> up to <<his npc_admin>> feet as you more leisurely roll to your side to admire <<his npc_admin>> naked body — muscles already pumped and perfect even straight out of bed.<br>
<br>
<<printThought "Can you get a pump by dreaming of working out? If anyone could pull it off, it'd be <<=setup.getNpcName('npc_admin','first')>>.">><br>
<br>
"@@.npc_admin;'Morning, beautiful,@@" <<he npc_admin>> says with a smile, leaning in for a long kiss before looking around for <<his npc_admin>> pants.<br>
<br>
You return the greeting and slide out of bed, helping <<him npc_admin>> find <<his npc_admin>> clothes before collecting your own.<br>
<br>
"@@.npc_admin;Hate to fuck and run but, well... work's got me so busy with these mergers I need the whole weekend to catch up on errands and stuff. I'll catch you later, right?@@"<br>
<br>
You grin,
<<if $fetish.cum>>
still tasting and feeling the many loads of cum <<he npc_admin>> dumped into you the previous evening as you reply with a wink
<<else>>
and reply
<</if>>
that you'll catch <<him npc_admin>> later.<br>
<br>
<<He npc_admin>> grins, struggling for a moment to wrangle <<his npc_admin>> rapidly stiffening cock into <<his npc_admin>> pants. "@@.npc_admin;Goddess you're so fucking hot. It's a date, <<callPlayer "npc_admin">>!@@"<br>
<br>
You smile back and finish dressing before the both of you leave.<br>
<br>
[<<moveTo "room_citymap" "Head back to town." 300>>]
</div>/*#
#desc: admin texts you due to missing workouts
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if $player.llocation.startsWith("event_forced_hucow_")>>
<<include "postponeAdminMorningVisit">>
<<initRoom>>
<<set _bypass = $scene.beforetasklocation.pop()>>
<<moveTo _bypass>>
<<elseif setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $currentcall = true>>
<<set $npc_admin.flags.consecutiveWorkouts = 0>>
<<if $npc_admin.flags.flirted>>
<<include "postponeAdminMorningVisit">>
<</if>>
<<if $currentTasks.manager_morning_inspection_task && $currentTasks.manager_morning_inspection_task.finished && $scene.beforetasklocation.last() != $currentTasks.manager_morning_inspection_task.rewards.trigger_event>>
/% Hacky fix to deal with event + task system conflict %/
<<set $currentTasks.manager_morning_inspection_task.finished = false>>
<<set $currentTasks.manager_morning_inspection_task.finishedTime = undefined>>
<<set $currentTasks.manager_morning_inspection_task.condition = "">>
<</if>>
<<if $scene.beforetasklocation && $currentTasks.manager_morning_inspection_task && $scene.beforetasklocation.last() == $currentTasks.manager_morning_inspection_task.rewards.trigger_event>>
<<set $scene.at_office = true>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text from <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_admin;Hey! Missed you at the gym today, hope you're feeling good, don't wanna let those gainz goblins catch ya!@@"<br>
<br>
You feel bad about standing <<him npc_admin>> up and text back an apology saying you just couldn't manage to get up in time.<br>
<br>
<<if $npc_admin.flags.flirted>>
"@@.npc_admin;Well, maybe next time... that or I'll just pop by and carry you to the gym! No comrade left behind! Allies under the bar!@@"<br>
<br>
You blush, maybe the plan to lure <<him npc_admin>> to your flat could work...
<<else>>
"@@.npc_admin;Well, maybe next time. Don't worry about me constantly bugging you like this in the future, but I hope to see you again at the gym!@@"
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div><<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate = setup.setNextDate($now, 1, 7, 10)>>
<<case 5>>
<<set _nextDate = setup.setNextDate($now, 3, 7, 10)>>
<<case 6>>
<<set _nextDate = setup.setNextDate($now, 2, 7, 10)>>
<</switch>>
<<set $npc_admin.flags.nextWorkout = _nextDate>>
<<if $now.getUTCDay() == 5>>
<<addEvent 'event_admin_morning_workout_call' _nextDate>>
<<else>>
<<addEvent 'event_admin_morning_visit' _nextDate>>
<</if>>/*#
#desc: admin shows up in the morning due to missing workouts multiple times
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.atHome = setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
<<set $scene.wakeup = $scene.beforetasklocation.last() == "room_wake_up">>
<<if $scene.wakeup>>
<<if !($scene.tuckin && !$scene.quickSleep && $scene.cage)>>
<<include "removeGenitalMilkers">>
<</if>>
<</if>>
<<set $npc_admin.flags.morning_visit = true>>
<<set $scene.leavingHome = $scene.beforetasklocation.last() == 'room_citymap'>>
<<set $currentTasks.manager_morning_inspection_task.finished = false>>
<<set $currentTasks.manager_morning_inspection_task.condition = "">>
<<set $npc_admin.flags.consecutiveWorkouts = 0>>
<</if>>
<<if $scene.atHome || $scene.leavingHome>>
<<set $player.location to "Foyer">>
<<else>>
<<set $player.location to "Phonecall">>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.atHome || $scene.leavingHome>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.atHome>>
You hear your doorbell ring, but being a bit drowsy this early in the morning, you react kind of slow. And you didn't have your fill of hot black caffeinated beverage, aka coffee yet. You have no idea who this could be so you take a look at the screen of your security system and see your friend <<=setup.getNpcName('npc_admin', 'first')>> standing outside the door in full gym attire.<br>
<br>
Sure you haven't made it in to workout for a few days, and this was technically your plan, but you're still surprised <<he npc_admin>> came all the way out to your apartment.<br>
<br>
[<<moveTo "event_admin_morning_surprise_answer" "Open the door." 60>>]
<<elseif $scene.leavingHome>>
You reach for the door to head out just as your doorbell chimes. You check the display to see that <<=setup.getNpcName('npc_admin', 'first')>> is standing outside in full gym attire.<br>
<br>
Sure you haven't made it in to workout for a few days, and this was technically your plan, but you're still surprised <<he npc_admin>> came all the way out to your apartment.<br>
<br>
[<<moveTo "event_admin_morning_surprise_answer" "Open the door." 60>>]
<<else>>
You get a text from <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_admin;Hey! Missed you at the gym again today, swung by your pad, but you aren't here. Guess you're taking a break from working out? I'll stop buggin' ya, but hope to see you in again some morning. You know I'll be there!@@"<br>
<br>
<<printThought "Shit, I botched my opportunity to get <<him npc_admin>> alone...">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: answer door when admin drops by in the morning
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene= {}>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<set $scene.outfit_type = "">>
<<set $scene.clothinggender = setup.analyzeWornTags(['female','male','unisex'])>>
<<if setup.checkNaked()>>
<<set $scene.outfit_type = "naked">>
<<applyExperience 'humiliation' 8 'terrible' $SEEN_FRIEND>>
<<else>>
<<switch setup.analyzeWornTags(['sleepwear', 'gym', 'office', 'slutty', "formal"])>>
<<case 'sleepwear'>>
<<set $scene.outfit_type = "sleep">>
<<applyExperience 'humiliation' 8 'normal' $SEEN_FRIEND>>
<<case 'gym'>>
<<set $scene.outfit_type = "gym">>
<<case 'office'>>
<<set $scene.outfit_type = "work">>
<<case 'slutty'>>
<<set $scene.outfit_type = "slutty">>
<<case 'formal'>>
<<set $scene.outfit_type = "formal">>
<<default>>
<<set $scene.outfit_type = "other">>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.outfit_type>>
<<case "naked">>
You open the door without thinking (or is that "just as planned?") completely naked.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> is wide-eyed in shock, you can practically see <<his npc_admin>> brain slowly going through a full reboot cycle as <<his npc_admin>> gaze glides partway down your body and then snaps back up to fixate purposefully on your face.<br>
<br>
"@@.npc_admin;I, uh... wow. I guess I kind of forgot that you're a different sort of girl... down there, funny how that works given how much longer I knew you as a guy.@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
You smile and lean against the doorframe, seductively looking up at <<him npc_admin>> as you state that "@@.pc;But... I AM a girl...@@"<br>
<br>
<<He npc_admin>> quickly back-pedals.<br>
<br>
"@@.npc_admin;Shit, sorry, I didn't mean, I mean, of course you are. Um, look this is just a bit awkward. I just hadn't seen you at the gym for a few days and wanted to check in — gainz goblins are gonna close in if you keep slacking! Anyway, I, uh, gotta go, I'll see you at work?@@"
<<else>>
<<printThought "Oh <<getWordGod>>, why did I do this? This is the most humiliating thing ever...">><br>
<br>
"@@.npc_admin;Anyway, I, uh just came by since I hadn't seen you at the gym in a few days, just wanted to check in — gainz goblins are gonna close in if you keep slacking! Anyway, I, uh, gotta go, I'll see you at work?@@"
<</if>>
<br><br>
[<<moveTo "event_admin_morning_surprise_seduce_1" "Try to get <<him npc_admin>> to stay..." 60>>]<br>
[<<moveTo "room_foyer" "Let <<him npc_admin>> go." 60>>]
<<case "sleep">>
You show up to the door wearing your
<<switch $scene.clothinggender>>
<<case "female">>
cute sleeping outfit.
<<case "male">>
boring old PJs
<<case "unisex">>
gender-ambiguous sleeping attire.
<<default>>
ERROR: unknown clothing gender: <<=$scene.clothinggender>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_admin', 'first')>> balks a bit.<br>
<br>
"@@.npc_admin;Shit, did I wake you? Sorry about that... anyway, I, uh just came by since I hadn't seen you at the gym in a few days, just wanted to check in — gainz goblins are gonna close in if you keep slacking! Anyway, I, uh, gotta go, I'll see you at work?@@"
<br><br>
[<<moveTo "event_admin_morning_surprise_seduce_1" "Try to get <<him npc_admin>> to stay..." 60>>]<br>
[<<moveTo "room_foyer" "Let <<him npc_admin>> go." 60>>]
<<case "gym">>
You open the door wearing your gym attire.<br>
<br>
"@@.npc_admin;Oh, cool, looks like you were just running a bit late. I'd missed you at workout the past few days. Come on, if we hurry we should still be able to jam a few sets in before work.@@"<br>
<br>
[<<moveTo "event_admin_gym_morning_1_alt" "Grab your stuff and head out with <<him npc_admin>>." 60>>]
<<case "work">>
You open the door dressed for work.<br>
<br>
"@@.npc_admin;Oh, looks like you were about to head in to work. I was just coming by to check on why you hadn't made it to the gym the past few mornings. Guess you've been doing some extra hours at the office? That <<=setup.getNpcName('npc_manager', 'first')>> is a real ball-buster, isn't she?@@"<br>
<br>
<<printThought "You have no idea...">><br>
<br>
"@@.npc_admin;Well, I don't wanna get you in trouble so I'll let you go, hope you can make it back in to work out sometime otherwise I guess I'll see ya at the office!@@"<br>
<br>
<<He npc_admin>> gives you a wave and heads up the hall.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 60>>]
<<case "slutty">>
You open the door in your slutty outfit.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> blinks, clearly a bit distracted by your outfit.<br>
<br>
"@@.npc_admin;Oh, hey. I just swung by since I haven't seen you at the gym for a few days... you getting ready to go out or something? Feels a bit early in the day to be dressed like that but, well... your choice.@@"<br>
<br>
You smile, and wiggle to show off, but <<he npc_admin>> doesn't take the bait and you finally explain that you've just been really busy of late, but you promise you'll get back at the gym soon.<br>
<br>
<<He npc_admin>> nods and says <<if $npc_admin.fem>>she'll<<else>>he'll<</if>> see you around at work before jetting off to the gym.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 60>>]
<<case "formal">>
You open the door and <<=setup.getNpcName('npc_admin', 'first')>> does a double take.<br>
<br>
"@@.npc_admin;Wow... is there some sort of special event at work that I didn't hear about? You're dressed to the nines!@@"<br>
<br>
You smile and shrug, asking if <<he npc_admin>> likes it?<br>
<br>
"@@.npc_admin;You look fantastic, but I was here about the gym?@@"<br>
<br>
<<printThought "Hmm, seems <<hes npc_admin>> pretty fixated on that, guess this isn't quite working...">><br>
<br>
You explain that you've just been really busy of late, but you promise you'll get back at the gym soon.<br>
<br>
<<He npc_admin>> nods and says <<if $npc_admin.fem>>she'll<<else>>he'll<</if>> see you around at work before jetting off to the gym.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 60>>]
<<default>>
You open the door.<br>
<br>
"@@.npc_admin;Oh, hey. I just swung by since I haven't seen you at the gym for a few days, everything alright?@@"<br>
<br>
You explain that you've just been really busy of late, but you promise you'll get back in soon.<br>
<br>
<<He npc_admin>> nods and says <<if $npc_admin.fem>>she'll<<else>>he'll<</if>> see you around at work before jetting off to the gym.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 60>>]
<</switch>>
</div>/*#
#desc: try to seduce admin when he visits in the morning
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.accept = $npc_admin.flags.knowgender == 'female' && setup.getTotalValue("stamina") >= 10 && setup.getTotalValue("strength") >= 10 && setup.getTotalValue("dexterity") >= 10 && setup.calcBreastSize() != "none" && $scene.outfit_type == 'sleep' && $scene.clothinggender == 'female' && ["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie"].includes(setup.getCurrentMakeup()) && $player.makeup.messed < 15>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You smoulder up at <<=setup.getNpcName('npc_admin', 'first')>> as you turn on every sex-kitten power you've got, telling <<him npc_admin>> it would be a shame for <<him npc_admin>> to have come all this way for nothing...<br>
<br>
<<if $scene.accept>>
<<Hes npc_admin>> like a cute puppy following you into the apartment, <<his npc_admin>> trance only broken when the door closes behind with a surprisingly loud thunk.<br>
<br>
<<He npc_admin>> turns with a start to find you walking forward, oozing sex with each sway of your hips, <<his npc_admin>> gaze finally settling on your bouncing breasts.<br>
<br>
"@@.pc;You like?@@" You purr as you glide forward, your dainty sleep outfit barely keeping you decent as you show off the body you have spent hours working on in the gym.<br>
<br>
You come to a stop in front of <<him npc_admin>> and blink up at <<him npc_admin>>. Standing this close, you can hear the thundering beat of <<=ps(setup.getNpcName('npc_admin', 'first'))>> big heart as <<he npc_admin>> looks down at your seductively made-up face.<br>
<br>
"@@.npc_admin;I—@@" <<He npc_admin>> seems at a loss for words, but then... suddenly so are you.<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_admin_morning_surprise_seduce_2" "Why use words when a passionate kiss can say so much more?" 180 "<<set $scene.bold=true>>">>]<br>
[<<moveTo "event_admin_morning_surprise_seduce_2" "Cautiously wait for <<him npc_admin>> to make the next move." 180 "<<set $scene.bold=false>>">>]<br>
<<else>>
<<printThought "Shit, why am I suddenly petrified!">><br>
<br>
[@@.link_locked;You are too shy to hold on to the initiative.@@]<br>
[<<moveTo "event_admin_morning_surprise_seduce_2" "Continue." 180 "<<set $scene.bold=false>>">>]
<</if>>
<<else>>
<<if $npc_admin.flags.knowgender != "female">>
"@@.npc_admin;Sorry <<callPlayer "npc_admin">>, I just don't see you that way I—uh—... this is really awkward Imma go, I'll see you at work or the gym or something.@@"<br>
<br>
<<if $player.identify_as == "female">>
<<printThought "Crap, of course. <<Hes npc_admin>> like the most <<if $npc_admin.fem>>lesbian<<else>>hetero<</if>> <<guy npc_admin>> I know, but maybe if I explained to <<him npc_admin>> that I'm a woman? Probably a bit of an awkward time to try that right now though...">>
<<else>>
<<printThought "Crap, of course. <<Hes npc_admin>> like the most <<if $npc_admin.fem>>lesbian<<else>>hetero<</if>> <<guy npc_admin>> I know, there's no way I have a chance with <<him npc_admin>> unless both of us thought of me as a woman.">>
<</if>>
<<elseif setup.getTotalValue("stamina") < 10 || setup.getTotalValue("strength") < 10 || setup.getTotalValue("dexterity") < 10>>
<<He npc_admin>> shakes <<his npc_admin>> head. "@@.npc_admin;Sorry, but I can feel my muscles wilting already, I need to get to the gym... and you should be hitting it up a bit too, you still have a bit of that skinny-fat goin' on.@@"<br>
<br>
<<printThought "Hmm, makes sense, <<he npc_admin>> usually goes for pretty fit girls, I should work on getting in better overall shape for <<him npc_admin>>.">>
<<elseif setup.calcBreastSize() == "none">>
You catch <<his npc_admin>> gaze lingering on your flat chest before <<he npc_admin>> shakes <<his npc_admin>> head.<br>
<br>
<<printThought "Damn, of course. I mean, <<he npc_admin>> always was a bit of a breast <<man npc_admin>>, things are going to be challenging enough without me being flat chested!">>
<<elseif $scene.clothinggender != 'female'>>
<<His npc_admin>> gaze seems to keep coming back to your outfit, your decidedly un-feminine outfit.<br>
<br>
<<printThought "Dammit, why didn't I dress for the occasion? Something flirty and feminine, but not too put-on... maybe a sleep outfit to sell <<him npc_admin>> on this being serendipity?">>
<<elseif $scene.outfit_type != 'sleep'>>
<<He npc_admin>> seems distracted by your nudity<<if $player.body_ref.penis>>, particularly your <<getWordMyPenis>><</if>>.<br>
<br>
<<printThought "Hmm... sure <<he npc_admin>> has accepted me as a woman, but maybe I could ease <<him npc_admin>> into things a bit more gradually if I want to get <<him npc_admin>> to fall in love with me?">>
<<elseif !(["normalmakeup", "expertmakeup", "camgirl", "egirl", "moviestar", "sissy_doll", "qtpie"].includes(setup.getCurrentMakeup())) || $player.makeup.messed >= 15>>
<<He npc_admin>> looks you in the eye and you are suddenly cognisant of your
<<if setup.getCurrentMakeup() == "">>
total lack of makeup
<<elseif $player.makeup.messed >= 15>>
unkempt makeup
<<elseif setup.getCurrentMakeup() == "ultimatebimbo">>
overly slutty makeup. <<printThought 'Shit, I remember <<him npc_admin>> commenting once that <<he npc_admin>> was not a fan of "plastic" looking women... what was I thinking?'>>
<<else>>
inappropriate makeup
<</if>>
<<if setup.getCurrentMakeup() != "ultimatebimbo">>
what were you thinking, not striving to look your best?
<</if>>
<<else>>
ERROR: unexpected failure state!
<</if>>
<br><br>
<<He npc_admin>> looks very awkward and confused. "@@.npc_admin;I, uh... think I should be going, but, like... don't be a stranger, okay? Let me know next time you want to hit the bar, or just meet me at the gym like normal.@@"<br>
<br>
<<He npc_admin>> leaves the flat, but you would swear <<he npc_admin>> took a final glance back at you...<br>
<br>
<<printThought "Hmm... maybe there's a chance?">><br>
<br>
[<<moveTo "room_foyer" "Close the door and start your morning." 60>>]
<</if>>
</div>/*#
#desc: seduction results vs admin when he visits in the morning
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bold>>
<<set $npc_admin.flags.morning_seduction = 2>>
<<addEvent 'admin_first_dinner_date'>>
<<set $scene.moveHypno = $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) == 0>>
<<if $scene.moveHypno>>
<<set $currentTasks.psychiatrist_endless_hypnosis_1.trigger.atPsychiatrist.time.date = setup.setNextDate($now, 4, 19, 0)>>
<</if>>
<<set $scene.moveTwig = $currentTasks.hasOwnProperty('event_doctor_first_appointment') && !$currentTasks.event_doctor_first_appointment.finished && setup.daysToDate($now,setup.getTaskDueDate('event_doctor_first_appointment')) == 0>>
<<if $scene.moveTwig>>
<<postponeTask 'event_doctor_first_appointment' 7>>
<</if>>
<<set $scene.moveTwig = $currentTasks.hasOwnProperty('event_doctor_reup') && setup.daysToDate($now,setup.getTaskDueDate('event_doctor_reup')) == 0>>
<<if $scene.moveTwig>>
<<postponeTask 'event_doctor_reup' 7>>
<</if>>
<<else>>
<<set $npc_admin.flags.morning_seduction = 1>>
<<addWorkEvent 'manager_matchmaker'>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_15'
0
'event_psychiatrist_session_admin_seduce_fail'
false
>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.bold>>
Your lips part and you fill the gap by reaching up for a kiss, your arms wrapping over <<his npc_admin>> shoulders as you pull yourself in. <<He npc_admin>> freezes for a moment and then returns your embrace, <<his npc_admin>> hands finding their way to your hips as <<he npc_admin>> casually lifts you into the air. Feet far from the ground you feel light as a feather, like you could float here forever...<br>
<br>
Finally <<he npc_admin>> gently places you back down and then <<he npc_admin>> blinks, lust, confusion and a dozen other emotions playing over <<his npc_admin>> face.<br>
<br>
"@@.npc_admin;I—Uh, wow, that was just- wow...@@"<br>
<br>
You smile and blink, telling <<him npc_admin>> there's more where that came from, one of your hands reaching out to caress <<his npc_admin>> VERY hard cock through <<his npc_admin>> tight pants.<br>
<br>
<<if $now.getUTCDay() == 5>>
"@@.npc_admin;Woah! Uh, sorry, I, uh... I think I need time to think about this and, um, we need to get to work soon so uh... how about we meet for dinner... Monday? Getting a reservation anywhere nice right before the weekend is going to be nigh impossible.@@"
<<else>>
"@@.npc_admin;Woah! Uh, sorry, I, uh... I think I need time to think about this and, um, we need to get to work soon so uh... how about we meet after work, dinner... my treat?@@"
<</if>>
<br><br>
You're a bit disappointed that things aren't going further but, well... you can work with this. You smile and nod, giving <<him npc_admin>> a peck on the cheek and telling <<him npc_admin>> you're looking forward to it.<br>
<br>
Just before the door closes behind <<him npc_admin>>, you call out after <<him npc_admin>> "@@.pc;I'll give you a treat, too!@@"<br>
<br>
The shudder spreads across <<if $npc_admin.fem>>her<<else>>his broad<</if>> shoulders like a wave on the ocean as <<he npc_admin>> quickly steps out and closes the door.<br>
<br>
<<if $scene.moveHypno>>
Suddenly remembering your appointment with <<=setup.getNpcName("npc_psychiatrist","formal")>> you give her a call and explain that you will not be making your appointment this evening. You're still riding high on the adrenaline rush from asking out <<=setup.getNpcName("npc_admin","first")>> and bulldoze straight into rescheduling for Sunday without even listening for an objection.<br>
<br>
<</if>>
You take a deep breath and try to centre yourself, after all, you still have a day of work to get through first...
<<else>>
The moment of silence draws out and then is shattered by the loud chime of an alarm.<br>
<br>
"@@.npc_admin;Shit, sorry, that's me, It's the reminder that I need to start my first set, I use it just in case I get trapped in a conversation at the front desk or something... uh...@@"<br>
<br>
The magic of the moment shattered, <<he npc_admin>> seems unable to look at you. "@@.npc_admin;Sorry, uh, it's a bit too early for this um... I'm just going to head to the gym, I'll see you next time, maybe? Or at work... bye!@@"<br>
<br>
Surprising you with <<his npc_admin>> speed, <<he npc_admin>> darts out of the flat leaving you alone. You curse your hesitation.<br>
<br>
<<printThought "Dammit, why did I freeze! This is even harder than back when I was trying to first date <<=setup.getNpcName('npc_exgirlfriend', 'first')>>! I'm certain <<=setup.getNpcName('npc_admin', 'first')>> has feelings for me I just... can't seem to push past our history...">><br>
<br>
You sigh. Despite the somewhat underwhelming result you feel you have accomplished something. Maybe it is just a matter of waiting a bit, sometimes <<=setup.getNpcName('npc_admin', 'first')>> can take time to figure things out, but the big <<if $npc_admin.fem>>lass<<else>>lug<</if>> always comes around eventually...
<</if>>
<br><br>
[<<moveTo "room_foyer" "Continue your morning prep." 60>>]
</div>/*#
#desc: npc_admin visits for first manager training session
#status: FINISHED 0.7.8.0
#ignore_spell: c
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<storeVisual $player $npc_admin>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>>
You are working away at your desk when <<=setup.getNpcName("npc_admin","first")>> appears for yet another meeting with your <<=setup.getNpcName("npc_manager","title")>>. They have barely been in her office for a few minutes when you find yourself summoned to join.<br>
<br>
Mincing into the room, you find <<=setup.getNpcName("npc_admin","first")>> sitting casually across from <<=setup.getNpcName("npc_manager","formal")>> looking quite happy as she greets you with a smile.<br>
<br>
"@@.npc_manager;Welcome, welcome! I wanted to give <<him npc_admin>> the good news first but now that I have, well... how about you tell her?@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> is beaming as <<he npc_admin>> turns to you with a grin. "@@.npc_admin;I got another promotion! Yeah, I can't believe it myself, but apparently this whole Cloud Data merger that I've been managing has gone so well that I'm being made assistant VP of mergers and acquisitions!@@"<br>
<br>
<<if $npc_admin.flags.relationship == 'boyfriend'>>
Overcome with excitement on <<his npc_admin>> behalf, you skip across the room, diving into <<his npc_admin>> arms to give <<him npc_admin>> a hug before you remember where you are. Still draped over <<him npc_admin>>, you sheepishly turn your head to face <<=setup.getNpcName("npc_manager","formal")>> looking back in amusement.<br>
<br>
"@@.npc_manager;Oh, it is fine. I would even call it sweet how supportive the two of you are personally and professionally. Which brings us to the second reason I called you both in today. This promotion is going to come with some additional responsibilities for which <<he npc_admin>> ought to be prepared.@@"<br>
<br>
Taking her comment as blanket permission, you decide to continue to sit cradled in <<=ps(setup.getNpcName("npc_admin","first"))>> lap leaning against <<if $npc_admin.fem>>her breasts<<else>>his broad, muscly chest<</if>> as you listen to what she has to say.
<<else>>
You smile along with <<him npc_admin>>, congratulating <<him npc_admin>> on the promotion — it seems like the both of you have the proverbial rocket pack attached to your career, though the guidance systems are packing VERY different programming.<br>
<br>
"@@.npc_manager;So,@@" <<=setup.getNpcName("npc_manager","formal")>> continues once the high fives are over with "@@.npc_manager;The reason I called you both in today is that this promotion is going to come with some additional responsibilities for which <<he npc_admin>> ought to be prepared.@@"<br>
<br>
Both of you fall silent with curiosity as you wait to see what she has to say.
<</if>>
<br><br>
"@@.npc_manager;<<=$player.first_name>> is a bit more familiar with these things but, well... you are moving up and this organisation tends to construe its vertical hierarchy a bit literally and things on the upper floors can get a bit... intense.@@"<br>
<br>
You gulp as you think about the after-work parties you have started attending each week.<br>
<br>
"@@.npc_manager;Towards that end I thought some role play practice would be useful so that you are more... equipped to deal with some of the senior managers and C-levels that you will soon be working with more closely.@@"<br>
<br>
"@@.npc_admin;Sure, sure, that makes sense so... what do I need to know?@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, and you wonder just how much glee she is taking building up to this. "@@.npc_manager;To start off with, how about a lesson in discipline. Amongst senior management it is standard practice to take what could be euphemistically called a very direct approach to correcting a subordinates failure. Thus, it is quite likely that you may be offered the opportunity to reprimand an employee whose error has brought harm to your department. As a trial run, let us suppose that Miss <<=$player.last_name>> has made a clerical error that has put an important negotiation in jeopardy — how would you handle this situation?@@"<br>
<br>
<<printThought "I think I see where this is heading...">><br>
<br>
[<<moveTo "event_admin_training_1_2" "Continue." 60>>]
<<else>>
You are summoned into <<=ps(setup.getNpcName("npc_manager","formal"))>> office to find her looking somewhat pensive. "@@.npc_manager;Welcome, I have something to tell you about before my next meeting. Your friend, <<=setup.getNpcName("npc_admin","other")>>? Well, it seems that <<he npc_admin>> has proven quite the effective manager, to the point that <<he npc_admin>> has been selected for a... promotion. It falls to me to deliver this news as well as administer a certain orientation to prepare <<him npc_admin>> for some of <<his npc_admin>> new responsibilities. It is something of a formality, really given <<his npc_admin>> re-education but... the assignment has been given to me nonetheless, and for you to provide your assistance.@@"<br>
<br>
You are a bit confused, and afraid given your prior experience with <<=setup.getNpcName("npc_admin","formal")>> since <<his npc_admin>> change and you ask what you will be assisting with?<br>
<br>
"@@.npc_manager;On the one hand it is quite simple — <<he npc_admin>> needs to prove, formally, that <<he npc_admin>> is capable of administering employee discipline in a manner appropriate to one of <<his npc_admin>> newly risen position so... well, I am afraid that cute posterior of yours is in for some pain.@@"<br>
<br>
You gulp. Punishments from <<=setup.getNpcName("npc_manager","formal")>> are one thing but the "new" <<=setup.getNpcName("npc_admin","first")>> scares you.<br>
<br>
[<<moveTo "event_admin_evil_training_1_1" "Agree to do your duty." 600 "<<set $scene.obey = true>>">>]<br>
[<<moveTo "event_admin_evil_training_1_1" "Beg her to find another way." 600 "<<set $scene.obey = false>>">>]
<</if>>
</div>/*#
#desc: manager explains training to npc_admin
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.knowManagerTruth == 0>>
<<set $npc_admin.flags.knowManagerTruth = 1>>
<</if>>
<<if $npc_admin.flags.training < 1>>
<<set $npc_admin.flags.training = 1>>
<<include "startAdminSexdoll">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_admin","first")>> thinks for just a moment before responding. "@@.npc_admin;Well, clearly I should notify her superior, but I would do so in a way that presents the full story of what happened and explain that it would be best for the company, and her professional development, if this could be, for her, a learning opportunity.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grins in amusement. "@@.npc_manager;A very measured response, just what I have come to expect from you. Her superior takes your words under consideration and states that, as you were the harmed party, it would be most fair that you also administer her punishment. Towards that end <<he>> sends her to visit your office with instructions to make sure she understands the error of her ways. After she makes her apology, she hands you this.@@"<br>
<br>
Reaching into a drawer, <<=setup.getNpcName("npc_manager","formal")>> pulls out a heavy leather flogger and casually lays it across the desk.<br>
<br>
<<if $npc_admin.flags.knowManagerTruth >= 2>>
<<=ps(setup.getNpcName("npc_admin","first"))>> gaze flickers from the flogger to you. Even though you've told <<him npc_admin>> what your situation is, it seems that being faced with it bluntly in front of <<him npc_admin>> like this is still a bit of a shock.
<<else>>
<<=setup.getNpcName("npc_admin","first")>> freezes looking from the flogger to <<=setup.getNpcName("npc_manager","formal")>>, to you and then finally laughing awkwardly. "@@.npc_admin;Heh, heh, okay, I get it, promotion leads to a bit of pranking, I should be ready to handle anything but, like, seriously...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> leans over and places her hands on the desk, as you feel a slight chill move through the room. "@@.npc_manager;Oh, this is serious. Corporal punishment is quite a useful tool for correcting a subordinate, isn't that right, my slave? There is no way she could deny that the effectiveness of the occasional spanking to keep her on a productive path.@@"
<</if>>
<br><br>
[<<moveTo "event_admin_training_1_3" "Wait for <<him npc_admin>> to act." 60 "<<set $scene.active=false>>">>]<br>
[<<moveTo "event_admin_training_1_3" "Get into your role and egg <<him npc_admin>> on." 60 "<<set $scene.active=true>>">>]
</div>/*#
#desc: admin flogs you for the first time
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_10'
10
'theme_admin_flogging_1'
false
>>
<<if $scene.active>>
<<applyExperience 'bimbofication' 12 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<</if>>
<<applyExperience 'bdsm' 12 'normal' $SEEN_FRIEND>>
<<useClothSetPush 'tmp'>>
<<set $scene.jacketId = setup.getItemFromType("jacket")>>
<<if $scene.jacketId>>
<<removeItem $scene.jacketId true>>
<</if>>
<<include "calcTopId">>
<<if $scene.topId>>
<<removeItem $scene.topId true>>
<</if>>
<<set $scene.corsetId = setup.getItemFromType("corset")>>
<<if $scene.corsetId>>
<<removeItem $scene.corsetId true>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.active>>
Gracing <<=setup.getNpcName("npc_admin","first")>> with your most seductively innocent look, you start slowly shedding your clothes. "@@.pc;Please, <<sir npc_admin>>. If my errors are not corrected, I will never learn...@@"<br>
<br>
<<if $npc_admin.flags.relationship == 'boyfriend' || $npc_admin.flags.relationship == 'friendswbenefits'>>
You see the flicker of a smile on <<his npc_admin>> face as <<he npc_admin>> slowly reaches for the flogger.
<<else>>
Though <<he npc_admin>> still looks a bit confused and nervous, <<he npc_admin>> slowly reaches for the flogger.
<</if>>
Loosening your top, you wink at <<him npc_admin>> and turn to expose your back.
<<if $fetish.daddy>>
"@@.pc;Mmm, give it to me hard, <<Daddy npc_admin>>. I've been a very naughty girl@@"
<<else>>
"@@.pc;Mmm, whip me hard, I've been a very naughty girl.@@"
<</if>>
You state as you wiggle your butt and let your clothes fall to the floor.
<<else>>
<<He npc_admin>> slowly reaches for the flogger as <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;That's good. Take a few practice swings, feel the weight of it... then put this naughty girl in her place.@@" Turning to you her voice is more brusque and commanding "@@.npc_manager;Take off your top — we wouldn't want to ruin a nice outfit.@@"<br>
<br>
Doing as she commands, you slowly peel off your top and then position yourself to expose your back to <<him npc_admin>> in invitation.
<</if>>
<br><br>
"@@.npc_admin;You sure about this? I mean, I don't want to hurt her...@@" <<He npc_admin>> asks hesitantly only for <<=setup.getNpcName("npc_manager","formal")>> to let out an exasperated sigh as she walks around the desk. With a quick swing of her arm, she lays a hard spank on your ass — enough to hurt and make quite a sound even through the insulation of your clothes.<br>
<br>
"@@.npc_manager;There, see? As delicate and lovely as she may look, she is not going to shatter. Hell, at this point she might even be getting off on it. Hmm, is that right you pain-slut? You want this flogging, right?@@"<br>
<br>
You shudder, turned on, embarrassed, and further turned on by your embarrassment at being treated like this in front of your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><</if>>friend. Your lack of objection seems to finally do the trick. After a few ominous swishes <<he npc_admin>> waves the flogger in the air and lashes out with a weak blow that barely brushes your skin.<br>
<br>
"@@.npc_manager;What was that? Are all those muscles just for show? Give it to her! How can she learn from her failure without a firm reprimand! Now try again, and I want to hear that thing crack!@@"<br>
<br>
You hear <<=setup.getNpcName("npc_admin","first")>> take a deep breath and then the sharp sound of the flogger cutting through the air, impacting your back with a crack hard enough to make you gasp and stumble half a step forward.<br>
<br>
"@@.npc_admin;Oh shit! I'm so sorry, are you okay?@@" You half turn to see <<=setup.getNpcName("npc_manager","formal")>> holding <<=setup.getNpcName("npc_admin","first")>> back with one hand.<br>
<br>
"@@.npc_manager;She's fine — but this is exactly why you need this practice. It is not just about the punishment, but in controlling yourself while administering such. You cannot show weakness in front of senior management. Performance is insufficient to impress their ilk for long, you must also show appropriate behaviour — fail to properly enforce the line between superiors and subordinate's and you may well find yourself on the wrong end of a spanking.@@"<br>
<br>
"@@.npc_admin;Okay, I guess it's just... this is a bit more than I signed up for but if <<=$player.first_name>> is okay with it...@@"<br>
<br>
[<<moveTo "event_admin_training_1_end" "Say no." 60>>]<br>
[<<moveTo "event_admin_training_1_4" "Just say yes." 60 "<<set $scene.escalate=false>>">>]<br>
[<<moveTo "event_admin_training_1_4" "Tease <<him npc_admin>> to hit you harder." 60 "<<set $scene.escalate=true>>">>]
</div>/*#
#desc: you safeword out of npc_admin's lesson
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.get_raped>>
<<applyExperience 'bdsm' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You blurt out that you want this to stop. You could hear a pin drop as your words hang in the room
<<if $fetish.get_raped>>
only for the silence to be broken by <<=ps(setup.getNpcName("npc_manager","formal"))>> harsh reply. "@@.npc_manager;Well, what are you waiting for? She just added actual disobedience on top of our little role-play scenario. If you cannot flog this willfulness out of her, I will take out my frustrations with the both of you on her hide.@@"<br>
<br>
"@@.npc_admin;I'm sorry <<callPlayer "npc_admin">>@@" <<=setup.getNpcName("npc_admin","first")>> finally whispers before unfurling the flogger once more.<br>
<br>
CRACK. Softer than the previous blow but still enough to hurt, it is dismissively met with a brusque "@@.npc_manager;Harder.@@"<br>
<br>
<<if setup.getTotalValue("bdsm")>10>>
The next strike lashes painfully and you bite your lip so as not to let out a moan. Still, there's no hiding how turned on you are by this sort of treatment.
<<else>>
The next strike lashes painfully and you bite your lip to hold back a pained gasp.
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> is still unsatisfied instructing "@@.npc_manager;Harder, faster@@" as <<=setup.getNpcName("npc_admin","first")>> hesitates and then lets loose with a flurry that has you wobbling on your feet and panting before you finally receive a reprieve.<br>
<br>
"@@.npc_manager;That will do... for now. Remember this lesson — when you are around other senior staff, you must always appear in control, in charge, and superior to all subordinates. Never show weakness.@@"<br>
<br>
"@@.npc_admin;Yes@@" <<he npc_admin>> replies, waiting a few more moments before exiting the room, gracing you with a sorrowful glance before <<he npc_admin>> disappears.<br>
<br>
"@@.npc_manager;And as for you...@@" she states, walking up behind to scrape a fingernail painfully down your reddened back. "@@.npc_manager;You may dress and return to work... and try to remember this lesson? I will not brook disobedience, even in front of your friend.@@"<br>
<br>
Gathering your clothes, you wince at the slightest brush of fabric against your flogged flesh, hurrying out of the room and taking a seat on the edge of your chair to resume your normal duties.
<<else>>
finally interrupted by <<=ps(setup.getNpcName("npc_manager","formal"))>> measured reply. "@@.npc_manager;Hmm, perhaps you struck her harder than I thought. Well, I suppose that will be all for today. We will have to reconvene for a follow-up at a later date. Until then... well, I advise you to be careful and most of all — do not show weakness before senior management.@@"<br>
<br>
<<He npc_admin>> flashes a comforting glance in your direction before hurrying out of the room. <<=setup.getNpcName("npc_admin","first")>> waits for <<him npc_admin>> to leave and then
<<if ($npc_manager.affection - $npc_manager.anger) > 8>>
walks over to you, her fingers tenderly tracing your skin.<br>
<br>
"@@.npc_manager;Sorry about that... you know I never mean to actually hurt you but... well, these are the way of things and you would be better off toughening up a bit...@@"<br>
<br>
Leaving a faint tingle in their wake, her fingers part from your flesh as she walks back around to her seat.<br>
<br>
"@@.npc_manager;You may return to your normal duties now.@@"
<<else>>
walks back around to her seat, glancing at you with a scowl.<br>
<br>
"@@.npc_manager;Well go on then, get dressed and return to work.@@"
<</if>>
<br><br>
You quickly put your clothes back on and leave the room before she decides to punish you further.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Work." 60 "<<completeWorkEvent>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: finish first training with npc_admin
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.escalate>>
<<applyExperience 'bimbofication' 12 'terrible' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<if $npc_admin.flags.training < 2>>
<<set $npc_admin.flags.training = 2>>
<</if>>
<</if>>
<<applyExperience 'bdsm' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.escalate>>
Smirking over your shoulder, you wiggle your butt and taunt <<him npc_admin>> "@@.pc;That all you got, big <<if $npc_admin.fem>>girl<<else>>man<</if>>? How am I ever going to learn my lesson if you don't whip me good and hard?@@"
<<else>>
Catching your breath, you nod and state that you are ready to continue.
<</if>>
<br><br>
<<He npc_admin>> lashes out again, not as hard as the previous blow but enough to sting, the fiery pain spreading across your back as <<=setup.getNpcName("npc_manager","formal")>> gives <<him npc_admin>> advice on where to target and how to vary things up from loud cracking strikes to heavier, thudding blows.<br>
<br>
<<if setup.getTotalValue("bdsm")>10>>
You try to control yourself, but there is no hiding how turned on you are by this sort of treatment, moaning softly as each subsequent blow sends shocks of arousal through your body.
<<else>>
You bite your lip as you try to endure. You can't deny that this whole thing is somewhat arousing but with each additional blow the pain in your backside starts to drown those feelings out.
<</if>>
<br><br>
By the time <<=setup.getNpcName("npc_manager","formal")>> finally calls "@@.npc_manager;Stop,@@" you are panting and exhausted.<br>
<br>
"@@.npc_admin;You alright?@@" <<he npc_admin>> asks and you nod.<br>
<br>
<<if $npc_admin.flags.relationship == 'boyfriend' || $npc_admin.flags.relationship == 'friendswbenefits'>>
"@@.npc_manager;Oh, she is fine. Trust me, she loves a bit of pain. Why, the next time you are sharing intimate time give her a nice hard slap on the ass and watch how crazy with lust she gets.@@"<br>
<br>
You can tell by the look in <<=ps(setup.getNpcName("npc_admin","first"))>> eye as <<he npc_admin>> puts the flogger down that <<he npc_admin>> isn't quite certain about that, though there is also a twinkle of curiosity as <<he npc_admin>> glances in your direction that has you feeling weak in the knees.<br>
<br>
You share a parting kiss and congratulate <<=setup.getNpcName("npc_admin","first")>> once again on <<his npc_admin>> new position before putting your clothes on and joining <<him npc_admin>> in exiting the inner lair — you back to your desk and <<him npc_admin>> back to <<his npc_admin>> own office.
<<else>>
"@@.npc_manager;Oh she is fine. Trust me, she loves a bit of pain, but even her needs pale compared to some of the pain-sluts that work upstairs. Many executive assistants expect to start their days with a hard spanking the way you or I might enjoy a coffee.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> seems a bit uncertain about this as <<he npc_admin>> puts the flogger down and heads for the door. "@@.npc_admin;Thanks, uh, for the assistance <<callPlayer "npc_admin">>, <<=setup.getNpcName("npc_manager","first")>>, I will see you both later.@@"<br>
<br>
"@@.npc_manager;Remember what you learned — and that you must never show weakness when you are dealing with the sharks that swim on the floors above us.@@"<br>
<br>
You wave goodbye and congratulate <<him npc_admin>> again on the promotion, waiting until <<he npc_admin>> has left before gathering your clothes and being dismissed back to your desk.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Work." 60 "<<completeWorkEvent>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: theme: admin talk about barkeeper
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<addTaskById 'admin_barkeeper_matchmaker_1'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place">>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName("npc_barkeeper","first")>> and ask why <<he npc_admin>> hasn't asked her on a date or anything.<br>
<br>
<<if $npc_admin.flags.relationship == "boyfriend">>
"@@.npc_admin;Date? Have you had one too many drinks tonight? I'm dating you, silly! Besides, it just wouldn't be appropriate, what with her job. Like, okay, she flirts a bit much and maybe I play along, but a customer asking out waitstaff is kind of a manipulative abuse of power, y'know?@@"
<<else>>
"@@.npc_admin;Date? No, no, I mean she seems great, and she's definitely flirty, but that's just her doing her job. And, okay, I play along a bit, but a customer asking out waitstaff is kind of a manipulative abuse of power, y'know?@@"
<</if>>
<br><br>
You try to egg <<him npc_admin>> on that she's right there and that there's no harm asking her for clarification/so she can straighten things out but <<=setup.getNpcName("npc_admin","first")>> is quite insistent that doing anything like that while <<=setup.getNpcName("npc_barkeeper","first")>> is working would be, at best, rude.<br>
<br>
<<printThought "Okay... so I guess I need to get the two of them together away from the bar... Hmm...">><br>
<br>
<<printNpcThemeReturn 'npc_admin' 2400>>
</div>/*#
#desc: reconsider setup admin for barkeeper date
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You're about to invite <<=setup.getNpcName('npc_admin', 'first')>> to your planned hook-up with <<=setup.getNpcName('npc_barkeeper', 'first')>> when you have a moment of reflection.<br>
<br>
<<printThought "Do I want to try to get with <<=setup.getNpcName('npc_admin', 'first')>>, before I set <<him npc_admin>> up with <<=setup.getNpcName('npc_barkeeper', 'first')>>?">><br>
<br>
[<<moveTo "room_call_npc_admin" "Talk about something else." 0>>]
[<<moveTo "event_call_admin_barkeeper_1" 'You like <<=setup.getNpcName("npc_admin", "first")>> as a friend, romantically, <<he npc_admin>> belongs with <<=setup.getNpcName("npc_barkeeper", "first")>>.' 60>>]
</div>/*#
#desc: setup admin for barkeeper date
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.adminSch = true>>
<<deleteTask 'admin_barkeeper_matchmaker_1'>>
<<if !$currentTasks.hasOwnProperty("admin_barkeeper_matchmaker_2") || $currentTasks.admin_barkeeper_matchmaker_2.finished>>
<<set _date = setup.getNextDayOfWeek($now, 1, 20, 0, false)>>
<<addTaskById 'admin_barkeeper_matchmaker_2' _date>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.relationship == "">>
<<printThought "Do I want to try to get with <<=setup.getNpcName('npc_admin', 'first')>>, before I set <<him npc_admin>> up with <<=setup.getNpcName('npc_barkeeper', 'first')>>?">>
<</if>>
You ask <<=setup.getNpcName("npc_admin","first")>> if <<if $npc_admin.fem>>she'd<<else>>he'd<</if>> like to get together <<if $now.getUTCDay() == 1>>next <</if>>Monday for drinks to mix it up.<br>
<br>
"@@.npc_admin;Monday? But the Usual Place is closed!@@"<br>
<br>
You reply that you heard about another place from someone at work that you wanted to check out, but you don't want to go alone.<br>
<br>
"@@.npc_admin;Aight, I mean, I guess it couldn't hurt to blow off some steam early in the week — we just need to keep it under control and not tear it down all night like we usually do!@@"<br>
<br>
You laugh along with <<him npc_admin>> and <<he npc_admin>> ends the call.<br>
<br>
<<if $npc_admin.flags.barSch>>
<<printThought "That's two... now to be there in case they need an additional nudge...">>
<<else>>
<<printThought "That's one, just need to get <<=setup.getNpcName('npc_barkeeper','first')>> to commit and then for me to be there in case they need an additional nudge...">>
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: setup barkeeper for admin date
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set $npc_admin.flags.barSch = true>>
<<deleteTask 'admin_barkeeper_matchmaker_1'>>
<<if !$currentTasks.hasOwnProperty("admin_barkeeper_matchmaker_2") || $currentTasks.admin_barkeeper_matchmaker_2.finished>>
<<set _date = setup.getNextDayOfWeek($now, 1, 20, 0, false)>>
<<addTaskById 'admin_barkeeper_matchmaker_2' _date>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barkeeper","first")>> if she'd like to meet you for drinks Monday.<br>
<br>
"@@.npc_barkeeper;Visit another bar? Bit of a busman's holiday, don't you think? Then again... maybe it isn't a bad idea to check out the competition from time to time... okay, sure.@@"<br>
<br>
She hangs up.<br>
<br>
<<if $npc_admin.flags.adminSch>>
<<printThought "That's two... now to be there in case they need an additional nudge...">>
<<else>>
<<printThought "That's one, just need to get <<=setup.getNpcName('npc_admin','first')>> to commit and then for me to be there in case they need an additional nudge...">>
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: stand outside unusual place
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<include "calcBarOpen">>
<<set _nextdate = setup.checkTaskLocationTime('room_unusual_place_outside')>>
<<if ( (getUTCHours($now)>=6) && (getUTCHours($now) <= 20) )>>
<<set _tmpImage = "./images/locations/the_unusual_place_day.png">>
<<else>>
<<set _tmpImage = "./images/locations/the_unusual_place_night.png">>
<</if>>
<<set $player.location to "The Unusual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _tmpImage>>
<div id="invframe" class="scrolltext">
<<if _nextdate == null || !setup.compareDay($now,_nextdate)>>
You stand outside the Unusual Place... it feels weird and unnatural, and you decide against even considering heading inside.
<<elseif setup.compareDay($now,_nextdate)>>
You have plans to meet somebody here today at <<=setup.shortTime(_nextdate)>>... otherwise you wouldn't even be in the area.<br>
<br>
<<if $now.getUTCHours() > 16>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
[<<moveTo "room_unusual_place_outside" 'Head in and wait for your "date".' _tmpSeconds>>]<br>
<<else>>
The Unusual Place isn't open yet, you should come back later to head in and wait for your "date."
<</if>>
<<else>>
ERROR: unexpected state
<</if>>
<br>
[<<moveTo "room_citymap" "City Centre." 300>>]
</div>/*#
#desc: fail to show up for barkeeper/admin date
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if $npc_admin.flags.adminSch && $npc_admin.flags.barSch>>
<<set $scene.schedule = 'both'>>
<<elseif $npc_admin.flags.adminSch>>
<<set $scene.schedule = 'admin'>>
<<elseif $npc_admin.flags.barSch>>
<<set $scene.schedule = 'bar'>>
<<else>>
<<set $scene.schedule = 'none'>>
<</if>>
<<set $npc_admin.flags.adminSch = false>>
<<set $npc_admin.flags.barSch = false>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.schedule>>
<<case 'both'>>
You get a pair of texts from <<=setup.getNpcName("npc_barkeeper","first")>> and <<=setup.getNpcName("npc_admin","first")>> practically back to back — it seems they somehow BOTH got caught up in traffic and are cancelling out on you.<br>
<br>
<<printThought "What a weird coincidence, like the universe itself is making sure I'm on hand...">>
<<case 'bar'>>
You get a text from <<=setup.getNpcName("npc_barkeeper","first")>>. "@@.npc_barkeeper;Hey, what the heck? I come out to enemy territory and you aren't even here! Lame.@@"<br>
<br>
<<printThought "Dammit — I need to arrange for BOTH of them to meet if this is going to work...">>
<<case 'admin'>>
You get a text from <<=setup.getNpcName("npc_admin","first")>>. "@@.npc_admin;Hey, I thought we were getting together for drinks tonight? Tell you the truth though... I'm not really feeling the vibe here, think I'm going to head home. Let's stick to the Usual Place, okay?@@"<br>
<br>
<<printThought "Dammit — I need to arrange for BOTH of them to meet if this is going to work...">>
<<default>>
ERROR: unexpected scene.schedule <<=$scene.schedule>>
<</switch>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: setup to watch barkeeper admin date
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "An Unusual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/unusualplace.png">>
<div id="invframe" class="scrolltext">
You arrive at the bar in advance of your "double-booked" date, quickly locating a dark booth in the back where you can secretly watch what happens when your two friends arrive.<br>
<br>
Sharply on time, as always, <<=setup.getNpcName("npc_admin","first")>> walks through the door... just as your phone buzzes with a text from <<=setup.getNpcName("npc_barkeeper","first")>> telling you she's running late.<br>
<br>
You shield your face as <<=setup.getNpcName("npc_admin","first")>> scans the room and then raises <<his npc_admin>> hand for a drink, sipping <<his npc_admin>> beer as <<he npc_admin>> pulls out <<his npc_admin>> phone.<br>
<br>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>, I'm at the bar waiting, where you at?@@"<br>
<br>
[<<moveTo "event_barkeeper_admin_date_2" "Text back to sit tight, you're on your way." 300>>]
</div>/*#
#desc: barkeeper arrives for admin date
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "An Unusual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/unusualplace.png">>
<div id="invframe" class="scrolltext">
You're a bit nervous that this crazy plan of yours as you text <<=setup.getNpcName("npc_admin","first")>> back that you'll be there soon, watching as <<he npc_admin>> glances at your message and shrugs before continuing to nurse <<his npc_admin>> beer.<br>
<br>
A few more minutes pass and <<=setup.getNpcName("npc_barkeeper","first")>> walks in the door. Clearly surprised <<=setup.getNpcName("npc_admin","first")>> almost spits out <<his npc_admin>> drink before hurrying over. You crane your ear; glad that it's still early, and un-crowded enough that you can barely make out their conversation from your hiding place.<br>
<br>
"@@.npc_admin;Woah, uh, look, I know what this looks like, but I promise I'm not cheating on you!@@"<br>
<br>
"@@.npc_barkeeper;Cheating?@@" <<=setup.getNpcName("npc_barkeeper","first")>> replies. "@@.npc_barkeeper;Wouldn't we have to be dating first... OH you mean the fact that you're drinking and another establishment... well, tell you what. You can make it up to me by buying me a drink?@@"<br>
<br>
"@@.npc_admin;Actually, uh... I was waiting for <<if $npc_admin.flags.relationship == "boyfriend">>my girlfriend<<else>>a friend<</if>>, they're running a little late but she should be here any minute...@@"<br>
<br>
Realisation dawns on <<=ps(setup.getNpcName("npc_barkeeper","first"))>> face and she smiles. "@@.npc_barkeeper;Let me guess? <<=$player.first_name>>? Yeah... I'm here to meet them, as well... and I think we both got played. It seems someone fancies themselves the manipulative matchmaker...@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> is turned away, so you can't see <<his npc_admin>> expression but you can sense <<him npc_admin>> working things out as the second beer arrives.<br>
<br>
"@@.npc_admin;Wait... they were talking that you were interested in me, but I said it was just you being polite, I mean, we've known each other for so long...@@"<br>
<br>
"@@.npc_barkeeper;Yeah? And how much of that time have you been a bit of a dumb lug? Of course I'm interested in you I just... could never seem to get your attention.<<if $npc_admin.flags.relationship == "boyfriend">> Well... and then <<=$player.first_name>> comes along, and now they did this?<</if>>@@" She slams back her beer in a single quaff and waves for another. "@@.npc_barkeeper;I need another one, but what about you?@@" She asks with a note of apprehension.<br>
<br>
[<<moveTo "event_barkeeper_admin_date_3" "Keep watching." 300 "<<set $scene.appear=false>>">>]<br>
[<<moveTo "event_barkeeper_admin_date_3" "Make your presence known." 300 "<<set $scene.appear=true>>">>]
</div>/*#
#desc: barkeeper arrives for admin date
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.relationship == "boyfriend" || $npc_admin.flags.relationship == 'friendswbenefits'>>
<<addNpcTheme 'npc_admin' 'other' 'theme_admin_barkeeper_threesome'
1
'theme_admin_barkeeper_threesome_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "An Unusual Place">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.appear || $npc_admin.flags.relationship == "boyfriend">>
<<createAdvBGR "./images/locations/unusualplace.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<<else>>
<<createAdvBGR "./images/locations/unusualplace.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.appear>>
You decide it's time to make your appearance, walking up to the bar as <<=setup.getNpcName("npc_barkeeper","first")>> and <<=setup.getNpcName("npc_admin","first")>> turn towards you.<br>
<br>
"@@.npc_barkeeper;Well, well, well, if it isn't the chess-mistress herself!@@"<br>
<br>
You blush and explain that you were just trying to help...<br>
<br>
<<=setup.getNpcName("npc_barkeeper","first")>> chuckles. "@@.npc_barkeeper;I suppose someone had to do something...@@" She turns to <<=setup.getNpcName("npc_admin","first")>> "@@.npc_barkeeper;Well?@@"<br>
<br>
<<if $npc_admin.flags.relationship == "boyfriend">>
"@@.npc_admin;I, uh...@@" <<he npc_admin>> turns to you, "@@.npc_admin;Sorry, <<callPlayer "npc_admin">>, I'll confess, I'm a bit confused as to what all is going on here, actually...@@"
<<else>>
"@@.npc_admin;I mean... yeah, if you're into it...@@" <<He npc_admin>> turns to you with a wink "@@.npc_admin;thanks <<callPlayer "npc_admin">>, best friend AND best wingman<<if $npc_admin.flags.gender=='female'>>, sorry, wing-woman<<elseif $npc_admin.flags.gender!='male'>>, sorry, wing-mate<</if>>!@@"<br>
<br>
You do a modest little bow and excuse yourself for the two of them to enjoy their date.
<</if>>
<<else>>
<<if $npc_admin.flags.relationship == "boyfriend">>
"@@.npc_admin;So... you're cool and all, but I'm kind of dating <<=$player.first_name>>... then again, she set this whole thing up, so... y'know, let's just get her on the phone and sort this whole thing out?@@"<br>
<br>
You almost fall out of your chair as your phone rings, the commotion drawing the attention of your two friends and they watch as you meekly walk over to join them.<br>
<br>
"@@.npc_barkeeper;Well?@@" <<=setup.getNpcName("npc_barkeeper","first")>> asks, "@@.npc_barkeeper;you set this up, and enjoyed a bit of a show, but what's your angle, what do you want from all this?@@"
<<else>>
<<=setup.getNpcName("npc_admin","first")>> joins <<=setup.getNpcName("npc_barkeeper","first")>> in another drink, their voices lowering to the point where you can no longer make out the words. Despite that you can easily tell that they're hitting it off. With a smile of satisfaction you make your exit; not wanting to spoil the moment by revealing yourself.
<</if>>
<</if>>
<br><br>
<<if $npc_admin.flags.relationship == "boyfriend" || $npc_admin.flags.relationship == 'friendswbenefits'>>
[<<moveTo "event_barkeeper_admin_date_4" "You realised your life is just too chaotic right now for a relationship, but you wanted to take care of your friend." 300 "<<set $scene.poly=false>>">>]<br>
<<if $npc_admin.flags.relationship == "boyfriend">>
[<<moveTo "event_barkeeper_admin_date_4" "You like both of them and, know they like each other and, well... an open relationships sounds fun?" 300 "<<set $scene.poly=true>>">>]
<</if>>
<<else>>
[<<moveTo "room_citymap" "Leave." 300>>]
<</if>>
</div>/*#
#desc: barkeeper and admin share date
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.poly>>
<<set $npc_barkeeper.flags.admin.poly = true>>
<<elseif $npc_admin.flags.relationship == "boyfriend">>
<<set $npc_admin.flags.relationship = "ex">>
<<if $events.hasOwnProperty("admin_photoshoot_invite")>>
<<removeEvent "admin_photoshoot_invite">>
<</if>>
<<if $currentTasks.hasOwnProperty("admin_photoshoot")>>
<<deleteTask "admin_photoshoot">>
<</if>>
<<elseif $npc_admin.flags.relationship == "">>
<<set $npc_admin.flags.relationship = "barkeeper">>
<</if>>
<</if>>
<<set $player.location to "An Unusual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/unusualplace.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.poly>>
You reply that you're fine with sharing... if <<=setup.getNpcName("npc_barkeeper","first")>> is?<br>
<br>
<<=setup.getNpcName("npc_barkeeper","first")>> grins as she runs a hand across <<=setup.getNpcName("npc_admin","first")>> <<if $npc_admin.fem>>back<<else>>wide chest<</if>>. "@@.npc_barkeeper;Oh I think there's plenty of this big <<boy npc_admin>> to go around... if you're up for it, stud? Think you can handle keeping up with two hot, horny ladies?@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> smiles "@@.npc_admin;I was taught never to back down from a challenge, you're on lady!... and lady.@@" <<He npc_admin>> adds to you.<br>
<br>
The three of you laugh and share a hug before you excuse yourself to let the two of them get to know each other a bit better.
<<else>>
You explain that things are just to crazy for you to properly focus on a relationship, but that you couldn't stand leaving <<=setup.getNpcName("npc_admin","first")>> alone...<br>
<br>
"@@.npc_admin;Wow this is... the strangest dumping I've ever gotten...@@" <<He npc_admin>> takes another drink of beer and glances at <<=setup.getNpcName("npc_barkeeper","first")>>. If she's upset by getting your leftovers... she doesn't show it.<br>
<br>
"@@.npc_admin;If that's what you want and, well... if you're okay with this... sure...@@"<br>
<br>
You assure <<him npc_admin>> that you're happy for the both of them before excusing yourself and leaving them to their date.
<</if>>
<br><br>
As you walk away <<=setup.getNpcName("npc_admin","first")>> orders another round and <<=setup.getNpcName("npc_barkeeper","first")>> glances back at you, mouthing a silent "@@.npc_barkeeper;Thank you.@@" As you head off.<br>
<br>
[<<moveTo "room_citymap" "Leave the bar." 300>>]
</div>/*#
#desc: mention threesome w/barkeeper to admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.penis>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<<else>>
<<set _unlockable = true>>
<</if>>
<<set $scene.canSex = ($player.virgin.first || setup.checkItemTypeWorn("cage") && _unlockable) && $player.virgin.penis && $player.virgin.top_fem && $player.virgin.anal && (!$player.body_ref.vagina || $player.virgin.vaginal)>>
<<else>>
<<set $scene.canSex = !(!$player.virgin.first || !$player.virgin.anal || $player.body_ref.vagina && !$player.virgin.vaginal)>>
<</if>>
<<set $scene.stayAfter = true>>
<<addEvent 'admin_barkeeper_threesome'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place">>
<<if $scene.canSex>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$scene.canSex>>
You consider the idea of a threesome with <<=setup.getNpcName("npc_barkeeper","first")>> to <<=setup.getNpcName("npc_admin","first")>> but, given that you're <<if !$player.virgin.first>>still a virgin<<else>>maybe still a bit inexperienced<</if>>... that's probably a bit too much.<br>
<br>
<<printThought "As hot as that fantasy sounds... I wouldn't want to disappoint them with my lack of experience...">>
<<else>>
You bring up the idea of a threesome with <<=setup.getNpcName("npc_barkeeper","first")>> to <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
<<if $npc_admin.flags.relationship == "boyfriend">>
"@@.npc_admin;Hey, sure, I guess it only makes sense if I'm dating the both of you. I'm down if she is.@@"
<<elseif $npc_admin.flags.relationship == "ex">>
"@@.npc_admin;Hey! I thought you broke up with me?@@"<br>
<br>
You rub a finger around the rim of your glass and put on an innocent expression as you explain that, while you can't commit to a relationship, you are up for committing to taking that dick...<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> chuckles in amusement. "@@.npc_admin;You know, I think the biggest change is how you've blossomed from that virginal naivete... who knew that under that awkward exterior there was the beating heart of a hot, cock-hungry slut?@@"<br>
<<else>>
"@@.npc_admin;Hey, sure, I mean, I'm down if she is.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_admin","first")>> signals for another drink and then leans over the bar to whisper in <<=ps(setup.getNpcName("npc_barkeeper","first"))>> ear. A smile blooms on her face as she winks at you. "@@.npc_barkeeper;Heck yeah — just stick around until I close up and I would be more than happy to finish the night off with a bang...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 2400>>
</div>/*#
#desc: threesome w/barkeeper and admin intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place">>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
The rest of the bar is cleared out as the night... well, early morning, technically, comes to an end and you and <<=setup.getNpcName("npc_admin","first")>> help <<=setup.getNpcName("npc_barkeeper","first")>> clean and close up the bar.<br>
<br>
You can see <<=setup.getNpcName("npc_barkeeper","first")>> going through a final mental checklist before she nods and gestures towards the stairs. "@@.npc_barkeeper;And now to celebrate the end of another week.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grins in anticipation before sweeping her off her feet with one arm, a quick kiss later and <<he npc_admin>> gestures to you with <<his npc_admin>> other hand, clearly intending to carry the both of you upstairs.<br>
<br>
[<<moveTo "event_barkeeper_admin_sex_2" "Accept <<his npc_admin>> offer." 300 "<<set $scene.carry=true>>">>]<br>
[<<moveTo "event_barkeeper_admin_sex_2" "You'll walk up on your own." 300 "<<set $scene.carry=false>>">>]
</div>/*#
#desc: threesome w/barkeeper and admin - start
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.carry>>
You slide up next to <<=setup.getNpcName("npc_admin","first")>> and <<he npc_admin>> scoops you up with ease, holding a woman on either side as <<he npc_admin>> walks up the stairs, <<his npc_admin>> strong arms cradling you as you snuggle up against <<his npc_admin>> <<if $npc_admin.fem>>breasts<<else>>muscular chest<</if>> and make eyes at <<=setup.getNpcName("npc_barkeeper","first")>>.
<<else>>
You shake your hand to decline <<=ps(setup.getNpcName("npc_admin","first"))>> offer and <<he npc_admin>> shrugs, shifting to carrying her with both arm as <<he npc_admin>> takes the stairs two at a time and you hurry to keep up.
<</if>>
<br><br>
On the second floor the three of you head straight for the bed where <<=setup.getNpcName("npc_admin","first")>> playfully tosses <<if $scene.carry>>both of you onto the bed<<else>><<=setup.getNpcName("npc_barkeeper","first")>> into the bed as you crawl in next to her<</if>>.<br>
<br>
With swift speed <<=setup.getNpcName("npc_barkeeper","first")>> is already sliding out of her clothes as she slides over to unzip <<=ps(setup.getNpcName("npc_admin","first"))>> trousers and lick her lips in anticipation at the sight of <<his npc_admin>> big, beautiful cock.<br>
<br>
[<<moveTo "event_barkeeper_admin_sex_3" "<<He npc_admin>>'s big, this blowjob could use another pair of lips!" 300 "<<set $scene.action='suck'>>">>]<br>
[<<moveTo "event_barkeeper_admin_sex_3" "Eat her out while she sucks <<him npc_admin>>." 300 "<<set $scene.action='cunnilingus'>>">>]<br>
[<<moveTo "event_barkeeper_admin_sex_3" "You're here to chew bubble gum and eat her ass... and you're all out of gum." 300 "<<set $scene.action='ass'>>">>]
</div>/*#
#desc: threesome w/barkeeper and admin - oral
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<switch $scene.action>>
<<case 'suck'>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'suck'>>
<<=setup.getNpcName("npc_barkeeper","first")>> is already sucking away as you hurry across the bed to go cheek to cheek with her in slurping <<=ps(setup.getNpcName("npc_admin","first"))>> <<getWordPenis "npc_admin">>.<br>
<br>
The two of you kiss your way up and down <<=ps(setup.getNpcName("npc_admin","first"))>> rock-hard member as <<he npc_admin>> smiles down. It may be the end of a long day but <<he npc_admin>> tastes strong and <<if $npc_admin.fem>>intoxicating<<else>>masculine<</if>>, with just a hint of salty sweat growing as you move lower to suck on <<his npc_admin>> perfect, heavy balls while <<=setup.getNpcName("npc_barkeeper","first")>> focuses on the shaft.<br>
<br>
You roll onto your back and slide under <<=setup.getNpcName("npc_barkeeper","first")>>, <<if $player.body.breastsize[0] > 0>>your breasts pressing together<<else>>going chest to chest<</if>> as you tongue-bathe <<his npc_admin>> balls and <<=ps(setup.getNpcName("npc_barkeeper","first"))>> throat bulges above you.
<<case 'cunnilingus'>>
As <<=setup.getNpcName("npc_barkeeper","first")>> crawls forward to have a taste of <<=ps(setup.getNpcName("npc_admin","first"))>> <<getWordPenis "npc_admin">> you lay onto your back and slide underneath her, pulling her thighs apart as you bring your lips to her wet, quivering quim.<br>
<br>
<<=ps(setup.getNpcName("npc_barkeeper","first"))>> cock-muffled moans eggs you on as your tongue dances around her clit and then curls deeper in search of greater pleasure.
<<case 'ass'>>
<<=setup.getNpcName("npc_barkeeper","first")>> crawls forward to take on <<=ps(setup.getNpcName("npc_admin","first"))>> <<getWordPenis "npc_admin">> and you position yourself behind her; spreading her cheeks with both hands as you bury your face in her ass.<br>
<br>
<<=ps(setup.getNpcName("npc_barkeeper","first"))>> cock-muffled moans eggs you on as you nibble and lick her tight hole, working your tongue inside the tight, musky channel as she grinds back against your face.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_admin","first")>> takes a step back and you hear <<him npc_admin>> take a deep breath.<br>
<br>
"@@.npc_admin;Whew! You two are heating things up fast! Much more and I'd cum for sure, but I wanna see the two of you get off as well...@@"<br>
<br>
You consider your options as <<=setup.getNpcName("npc_admin","first")>> gets ready to join the two of you in the bed...<br>
<br>
<<if $player.body_ref.penis>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<<if _unlockable>>
[<<moveTo "event_barkeeper_admin_sex_4" 'Unlock your <<getWordMyPenis>> and stand next to <<=setup.getNpcName("npc_admin","first")>>.' 300 "<<set $scene.sex='penis'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is locked away in chastity.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_barkeeper_admin_sex_4" 'Whip out your <<getWordMyPenis>> and stand next to <<=setup.getNpcName("npc_admin","first")>>.' 300 "<<set $scene.sex='penis'>>">>]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "" && !setup.isCage()>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<<if _unlockable>>
[<<moveTo "event_barkeeper_admin_sex_4" 'Remove your belt and line up next to <<=setup.getNpcName("npc_barkeeper","first")>>.' 300 "<<set $scene.sex='vaginal'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is out of reach, locked beneath your chastity belt.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_barkeeper_admin_sex_4" 'Turn around and line up next to <<=setup.getNpcName("npc_barkeeper","first")>>.' 300 "<<set $scene.sex='vaginal'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_barkeeper_admin_sex_4" "Stick out your butt." 300 "<<set $scene.sex='anal'>>">>]
</div>/*#
#desc: threesome w/barkeeper and admin - penetration
#status: RELEASED 0.8.8.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<switch $scene.sex>>
<<case 'anal'>>
<<applyExperience 'anal' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<<case 'vaginal'>>
<<set $scene.removeCage = $scene.cage != "" && !setup.isCage()>>
<<case 'penis'>>
<<set $scene.removeCage = $scene.cage != "">>
<</switch>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<switch $scene.sex>>
<<case 'anal'>>
You line up next to <<=setup.getNpcName("npc_barkeeper","first")>> as <<=setup.getNpcName("npc_admin","first")>> steps forward. You wiggle your butt in anticipation and are rewarded by <<if setup.checkItemTypeWorn("plug")>><<him npc_admin>> playing with your plug<<else>><<his npc_admin>> thumb sliding into your ass<</if>>. You look to the side as <<=ps(setup.getNpcName("npc_barkeeper","first"))>> face twists in pleasure as she gets first crack at <<=ps(setup.getNpcName("npc_admin","first"))>> cock.<br>
<br>
You reach out to squeeze her hand as she gasps, "@@.npc_admin;there we go, just relax, nice and easy... I'm not hurting you, luv, am I?@@"<br>
<br>
"@@.npc_barkeeper;N-n-n-no... you just... oh goddess you're big... oh I needed this so bad... fuck me, fuck me!@@"<br>
<br>
Egged on by her words, <<=setup.getNpcName("npc_admin","first")>> increases <<his npc_admin>> pace, warming you up with <<his npc_admin>> free hand as you fantasise about when it will be your turn.<br>
<br>
<<=setup.getNpcName("npc_barkeeper","first")>> pulls you closer, and the two of you kiss in between moans as she rises up the mountain of ecstasy, ecstatically cumming in your arms as her thighs give out and she slumps to the bed.<br>
<br>
<<His npc_admin>> is cock slick and hard and <<=setup.getNpcName("npc_admin","first")>> looks down at you with a grin, talking a half-step to the side as <<he npc_admin>> <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>removes your plug and <</if>>lines up with your rear.<br>
<br>
Your head snaps back as <<he npc_admin>> enters you, the combination of foreplay and <<=ps(setup.getNpcName("npc_barkeeper","first"))>> juices providing plenty of lube for <<him npc_admin>> to plunge deep, pushing you down into the mattress with each thrust.<br>
<br>
The two of you are soon panting in time, even moreso when <<=setup.getNpcName("npc_barkeeper","first")>> finds her breath and sits up. <<=setup.getNpcName("npc_admin","first")>> flips you over for the finale as <<=setup.getNpcName("npc_barkeeper","first")>> sits back on your face, your tongue a whir as <<=setup.getNpcName("npc_admin","first")>> plunges in and out of your ass and the two of them make out, a near simultaneous triple-orgasm freezing the three of you in place for a moment before you all collapse onto the bed.
<<case 'vaginal'>>
You lay down on the edge of the bed next to <<=setup.getNpcName("npc_barkeeper","first")>>, legs spread<<if $scene.removeCage>> as your belt is unlocked<</if>>.<br>
<br>
"@@.npc_admin;Choices, choices...@@" <<he npc_admin>> teases as the two of you blink up at <<him npc_admin>>, <<his npc_admin>> fingers running between your wet folds as your heart races even faster.<br>
<br>
"@@.npc_barkeeper;Please...@@" <<=setup.getNpcName("npc_barkeeper","first")>> whispers lustily, her control slipping first.<br>
<br>
Two fingers and a thumb still working away in you <<=setup.getNpcName("npc_admin","first")>> grins as <<he npc_admin>> slides to the side and lines up with <<=ps(setup.getNpcName("npc_barkeeper","first"))>> <<getWordVagina>>.<br>
<br>
Her cry of ecstasy only turns you on further and you moan with want... your wish granted a second later when <<=setup.getNpcName("npc_admin","first")>> switches back, <<his npc_admin>> hard, wet cock sliding easily into your needy hole as <<he npc_admin>> gives you a few thrusts.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> continues to alternate as you and <<=setup.getNpcName("npc_barkeeper","first")>> slide closer together to reduce the time when neither of you is blessed with <<his npc_admin>> magnificence inside of you, eventually pressing together and kissing passionately as <<he npc_admin>> alternates every other thrust, the pleasure building, building, building... until a final thrust between the two of you pushes past your clits to send all three of you into a sticky, orgasmic explosion.
<<case 'penis'>>
You bounce back to your feet <<if $scene.removeCage>>hurriedly extricating yourself from chastity <</if>>to stand next to <<=setup.getNpcName("npc_admin","first")>>, <<getWordMyPenis>> in hand.<br>
<br>
<<=setup.getNpcName("npc_barkeeper","first")>> looks back and forth, from <<=setup.getNpcName("npc_admin","first")>> perfect penis to your own
<<switch $player.body.penissize[0]>>
<<case 0 1>>
significantly smaller member.
<<case 2 3>>
somewhat smaller member.
<<case 4 5>>
almost equally large member.
<<case 6>>
even larger <<if $player.body_ref.knot && $player.body_ref.horsecock>>mythical <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
"@@.npc_barkeeper;Choices, choices... only... how about I don't choose at all? I want you both — both at once. Damnit, <<=setup.getNpcName("npc_admin","first")>> I'm a bartender, not a waitress, so stop making me wait for it! @@"<br>
<br>
You and <<=setup.getNpcName("npc_admin","first")>> share a glance and a grin and then set into motion, <<=setup.getNpcName("npc_admin","first")>> easily lifting <<=setup.getNpcName("npc_barkeeper","first")>> up into the air in an arc that lands her precisely on <<his npc_admin>> cock. Moaning her way down she wraps her arms around <<his npc_admin>> shoulders as she wiggles her butt in invitation.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> half-squats to compensate for the height difference
<<switch $player.body.penissize[0]>>
<<case 0 1>>
as you easily slide into <<=ps(setup.getNpcName("npc_barkeeper","first"))>> ass.
<<case 2 3>>
as you manage to slide up into <<=ps(setup.getNpcName("npc_barkeeper","first"))>> ass.
<<case 4 5>>
as you carefully enter <<=ps(setup.getNpcName("npc_barkeeper","first"))>> ass; the combination of you and <<=setup.getNpcName("npc_admin","first")>> both leading to quite the tight fit.
<<case 6>>
as you slowly work your way into <<=ps(setup.getNpcName("npc_barkeeper","first"))>> ass. By the time <<if $player.body_ref.knot>>your knot pops into place<<else>>you are balls deep<</if>>, she is panting and moaning and you are feeling squeezed as tight as you ever have been.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
"@@.npc_barkeeper;Fuck, fuck, fuck, fuck, fuck...@@" she moans as you and <<=setup.getNpcName("npc_admin","first")>> begin to slowly move.<br>
<br>
Every thrust is a tight, sensation-filled wonder, the three of you pressed closely together as <<=setup.getNpcName("npc_barkeeper","first")>> alternately moans and gasps, her body shaking with several smaller orgasms before a final monumental crescendo rocks through all three of you as you multi-climax over the course of a full minute.<br>
<br>
The intensity of orgasm has you almost black out, <<=ps(setup.getNpcName("npc_admin","first"))>> strong arm there to catch you and then gently lower you and <<=setup.getNpcName("npc_barkeeper","first")>> to the bed before sliding in between you.
<<default>>
ERROR: unexpected scene.sex <<=$scene.sex>>
<</switch>>
<br><br>
You, <<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_barkeeper","first")>> cuddle on the bed in a post-orgasmic snuggle pile; <<=setup.getNpcName("npc_admin","first")>> in the middle with <<his npc_admin>> arms around as you and <<=setup.getNpcName("npc_barkeeper","first")>> squeeze up against <<him npc_admin>> from either side.<br>
<br>
[<<moveTo "event_barkeeper_admin_sex_5" "Continue." 1800>>]
</div>/*#
#desc: threesome w/barkeeper and admin — afterplay
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $npc_admin.flags.relationship != "">>
<<set _nextDate = setup.setNextDate($now, 2, 14, 0)>>
<<addEvent 'barkeeper_admin_threesome_post' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You've almost started to drift off to sleep when <<=setup.getNpcName("npc_barkeeper","first")>> sits up and half staggers off the bed. "@@.npc_barkeeper;Nope, sorry, but I made a promise to myself that I would never sleep at the bar — work/life balance is hard enough when you run your own business!@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> helps you up as the three of you sort out clothing<<if $scene.removeCage>> and your chastity<</if>>.<br>
<br>
Though increasingly reluctant to abandon the bed you are herded downstairs by <<=setup.getNpcName("npc_barkeeper","first")>> where she summons a trio of cabs to take you each directly home.<br>
<br>
[<<moveTo "room_foyer" "Home." 180>>]
</div>/*#
#desc: barkeeper calls you after threesome w/admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_barkeeper","first")>>.<br>
<br>
"@@.npc_barkeeper;Hey, so... the other night was pretty fucking amazing, but I was wondering... was that a one-off thing or do you see this whole thing turning into more of a triad?@@"<br>
<br>
[<<moveTo "event_barkeeper_admin_sex_post_2" "It was just a bit of side fun." 300 "<<set $scene.triad=false>>">>]<br>
[<<moveTo "event_barkeeper_admin_sex_post_2" "You'd like to take things out of the bedroom." 300 "<<set $scene.triad=true>>">>]
</div>/*#
#desc: respond to barkeeper call after threesome w/admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.triad>>
<<set $npc_barkeeper.flags.admin.poly = true>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.triad>>
You reply that you wouldn't mind seeing how things went between you, <<=setup.getNpcName("npc_barkeeper","first")>> and <<=setup.getNpcName("npc_admin","first")>> beyond just the bedroom...<br>
<br>
"@@.npc_barkeeper;Cool, I think I'd like that as well... though I definitely want more time in the bedroom, Friday was one hell of a night! Well, I gotta get ready for opening, I'll catch you later!@@"
<<else>>
You tell <<=setup.getNpcName("npc_barkeeper","first")>> that the threesome was just kind of a spur of the moment, casual thing.<br>
<br>
"@@.npc_barkeeper;Cool, cool, I just wanted to check, y'know? Communication being key to successful open relationships and all. Well, I gotta get ready for opening, I'll see you around!@@"
<</if>>
<br><br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() 'Put your phone away and get back to what you were doing.' $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div><<if ($npc_admin.flags.keyholder || !($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)) && State.hasPlayed("event_sexclub_date_admin_7")>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_collar'
11
'theme_admin_collar_1'
true
>>
<</if>>/*#
#desc: theme: admin say you want to be collared
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<if setup.getTotalValue("submission") >= 15>>
<<set _themeId = setup.findThemeId('npc_admin', 'recent', 'theme_admin_collar')>>
<<set $npc_admin.themes.recent[_themeId].repeatable = false>>
<</if>>
<<set $scene.talkedCollar = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("submission") < 15>>
You are about to ask <<=setup.getNpcName("npc_admin","first")>> about wearing <<his npc_admin>> collar, but something inside you stops the words in your mouth.<br>
<br>
<<printThought "That's a big ask... I think I need to spend more time practicing my submission...">><br>
<br>
<<=setup.getNpcName("npc_admin","first")>> fails to notice your hesitation as <<he npc_admin>> sips <<his npc_admin>> beer and waits to see what you want to talk about next.
<<elseif $player.flags.collar.ownerId>>
You are about to mention collaring to <<=setup.getNpcName("npc_admin","first")>>, only for the weight of the collar already locked around your throat to remind you that you are already owned. You take advantage of the noise of the bar to pass off your aborted question and take another sip of your drink.
<<else>>
Nervous, but forced to speak louder to be heard over the bar, you ask <<=setup.getNpcName("npc_admin","first")>> if <<he npc_admin>> would be interested in collaring you?<br>
<br>
<<He npc_admin>> pauses and takes a slow drink. "@@.npc_admin;Collar? As in, like... slave? Wow... I mean, I guess with work<<if $npc_admin.flags.keyholder>>, and my having your key<</if>>... damn, <<callPlayer "npc_admin">>, I'd be honoured! Let me do some research, and find a collar that would be appropriate for you and I'll get back to you — I want to make this special for you, after all.@@"<br>
<br>
You blush and smile, your heart skipping a beat at the thought of being marked<<if $npc_admin.fem>> "hers." <<else>> "his." <</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 300>>
</div>/*#
#desc: admin collars you intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<if $scene.choker != "">>
<<removeItem $scene.choker true>>
<</if>>
<<addItem 'eternity_collar'>>
<<wearItem 'eternity_collar' true>>
<<setThreshold 'submission' 'collar_submission' 'voluntary'>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<if $player.sec_style.submission.collar == "">>
<<set $player.sec_style.submission.collar = "voluntary">>
<</if>>
<<set $player.flags.collar.owner = 'npc_admin'>>
<<set $player.flags.collar.collarId = 'eternity_collar'>>
<<else>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $scene.choker>>
You smile and hurriedly remove your <<=setup.getItemName($scene.choker)>>
<<else>>
You smile
<</if>>
and pull your hair aside for <<him npc_admin>> to bring the steel ring to your throat. Turning around you feel a tingle go up your spine as <<he npc_admin>> closes the back... and you hear the soft click of a lock.<br>
<br>
"@@.npc_admin;Beautiful...@@" <<He npc_admin>> whispers and you beam up at <<him npc_admin>> proudly.<br>
<br>
"@@.pc;Thank you, <<Master npc_admin>>,@@" you state softly and <<he npc_admin>> pulls you in for a hug.<br>
<br>
"@@.npc_admin;Anything for my beautiful girl, um, slave.@@" <<He npc_admin>> quickly corrects.<br>
<br>
You grin in amusement at <<his npc_admin>> stumble and lean in for a long kiss.<br>
<br>
Sliding down to the ground eventually you continue to smile up at <<him npc_admin>>, throwing your arms around <<his npc_admin>> waist in a thankful hug before you reluctantly start to leave. As always <<=setup.getNpcName("npc_admin","first")>> calls you a cab home and you find yourself excitedly fingering your new piece of "jewellery" as you make the short journey home.
<<else>>
You reply that, actually... you aren't quite ready for <<his npc_admin>> collar, and, besides, it's getting pretty late.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grins. "@@.npc_admin;Sure, sure, well... if you change your mind.@@" <<He npc_admin>> leans in for a kiss and then calls you a cab home.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home." 900>>]
</div>/*#
#desc: ask admin to the club
#status: RELEASED 0.8.8.0
#ignore_spell: 'd
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if $now.getUTCDay() == 0>>
<<set $scene.day = "tomorrow night">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 1, 21, 0, false)>>
<<else>>
<<set $scene.day = "Sunday">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 0, 21, 0, false)>>
<</if>>
<<addTaskById 'task_admin_date_club' _tmpDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_admin","first")>> if <<he npc_admin>>'d like to accompany you to <<printShopName 'sex_club'>>?<br>
<br>
"@@.npc_admin;<<printShopName 'sex_club'>>? What's that? Sounds kind of industrial... I didn't know you were into that sort of thing?@@"<br>
<br>
<<printThought "Of course <<he npc_admin>> wouldn't know about it.">><br>
<br>
You explain that, it is, in fact, in an industrial area, but that it's actually well... a fetish club.<br>
<br>
"@@.npc_admin;Huh. Well, I guess I shouldn't be surprised you'd be interested in that sort of place... sure I'll be your escort for the evening. Who knows, could be fun!@@"<br>
<br>
You sigh in relief and thank <<him npc_admin>> for agreeing to join you, quickly relaying the location and time.<br>
<br>
"@@.npc_admin;Sounds good, I'll see you there!@@"<br>
<br>
<<He npc_admin>> hangs up before you remember the dresscode...<br>
<br>
<<printThought "They have rentals... probably easier to just handle things on-site rather than try to pre-plan <<him npc_admin>> an outfit.">><br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: fail to meet admin at club
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_admin' 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
<<printThought "Shit! I was supposed to meet <<him npc_admin>> at <<printShopName 'sex_club'>> tonight!">><br>
<br>
"@@.npc_admin;Hey so... I'm here outside <<printShopName 'sex_club'>> and... you ain't! Was this some sort of prank? Not cool, <<callPlayer "npc_admin">>, not cool. Anyway, I'm going to head on home... I'll see you around, I guess.@@"<br>
<br>
<<He npc_admin>> hangs up.<br>
<br>
<<printThought "Dammit.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet admin at sex club
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info = true>>
<<storeVisual $player $npc_admin>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_admin","npc_admin_club") setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You arrive at <<printShopName 'sex_club'>> to find <<=setup.getNpcName("npc_admin","first")>> waiting in the screening area doing — what else? But chatting with the guard.<br>
<br>
Your jaw drops at <<his npc_admin>> outfit — a sturdy leather harness paired with some VERY short latex shorts... and baby oil, so much baby oil to have <<him npc_admin>> practically glistening, every one of <<his npc_admin>> perfect muscles on display.<br>
<br>
"@@.npc_admin;Ah, thare's my lovely lady!@@" <<He npc_admin>> looks you up and down,
<<if setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish']) == 'fetish'>>
"@@.npc_admin;My lovely, kinky lady, I should say! That outfit is... wow! But, I guess it makes sense. I was just talking to <<=setup.getNpcName("npc_guard","first")>> here and she was explaining about the dresscode... she already helped me out on that front, you like?@@" <<He npc_admin>> asks with a grin, flexing hard enough that you're pretty sure <<he npc_admin>> could have accidentally just won a bodybuilding contest that <<he npc_admin>> didn't even enter.<br>
<br>
"@@.npc_admin;Great, well... I guess we can head in then, thanks again, <<=setup.getNpcName("npc_guard","first")>> for the help!@@" <<He npc_admin>> states before offering you an arm.<br>
<br>
"@@.npc_guard;Trust me, the pleasure was ALL mine,@@" She replies, all but licking her lips as she looks <<him npc_admin>> over.<br>
<br>
"@@.npc_admin;Nice people, here,@@" <<he npc_admin>> states as you head for the door into the club. "@@.npc_admin;Not the scary sex perverts one might imagine.@@"<br>
<br>
[<<moveTo 'event_sexclub_date_admin_2' 'Head inside.' 180>>]
<<else>>
"@@.npc_admin;I guess you need to change? <<=setup.getNpcName("npc_guard","first")>> here was telling me about the dresscode — and was kind enough to set me up with something appropriate, you like?@@" <<he npc_admin>> asks with a grin, flexing hard enough that you're pretty sure <<he npc_admin>> could have accidentally just won a bodybuilding contest that <<he npc_admin>> didn't even enter.<br>
<br>
You nod.<br>
<br>
[<<moveTo 'event_sexclub_date_admin_1_rent' 'Rent an outfit.' 60 "<<useClothSetPush 'tmp'>><<set $scene.catsuit=''>>">>]<br>
[<<moveTo 'event_sexclub_date_admin_1_change_1' 'Enter the changing rooms.' 60 "<<useClothSetPush 'tmp'>><<set $scene.catsuit=''>>">>]
<</if>>
</div>/*#
#desc: changing room at fetish club w/admin
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
You enter the changing rooms to get equipped to meet the club's dress code — your <<boy npc_admin>>friend, <<=setup.getNpcName("npc_admin","first")>> has already set quite the bar...<br>
<br>
<br><br>
<<if setup.checkVisibleClothingTag("fetish") > 60>>
<<printThought "Yeah, I think this will pass club standards.">><br>
<br>
[<<moveTo 'event_sexclub_date_admin_1_change_2' 'Re-join your <<boy npc_admin>>friend.' 60>>]<br>
<<else>>
<<printThought "No... I don't think this outfit is going to pass muster for the club tonight.">><br>
<br>
<</if>>
[<<moveTo 'event_sexclub_date_admin_1_rent' 'Rent an outfit.' 60>>]
</div>/*#
#desc: changing room at fetish club w/admin
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You ask the guard about outfit rentals and she joins you in the fitting room.<br>
<br>
"@@.npc_guard;Sure, my dear — how about a nice sleek catsuit — colour of your choice and... well, I'll waive the rental fee tonight, just seeing that <<if $npc_admin.fem>>amazon of a woman<<else>>hunk of a man<</if>> you brought with you.@@" She whistles. "@@.npc_guard;You are one lucky <<switch $player.identify_as>><<case 'female' ''>>girl<<case 'male'>>guy<<case 'fluid' 'agender'>>thing<</switch>> to be looking forward to a night with that total <<if $npc_admin.fem>>hottie<<else>>hunk<</if>>.@@"<br>
<br>
[<<moveTo 'event_sexclub_date_admin_1_change_2' 'Black catsuit.' 600 "<<set _shoes = setup.getItemFromType('shoes')>><<removeAllClothing>><<wearItem _shoes true>><<set $scene.catsuit='catsuit_latex_headless_club_black'>><<addItem 'catsuit_latex_headless_club_black'>><<wearItem 'catsuit_latex_headless_club_black' true>><<addItem 'hood_latex_club_black'>><<wearItem 'hood_latex_club_black' true>>">>]<br>
[<<moveTo 'event_sexclub_date_admin_1_change_2' 'Red catsuit.' 600 "<<set _shoes = setup.getItemFromType('shoes')>><<removeAllClothing>><<wearItem _shoes true>><<set $scene.catsuit='catsuit_latex_headless_club_red'>><<addItem 'catsuit_latex_headless_club_red'>><<wearItem 'catsuit_latex_headless_club_red' true>><<addItem 'hood_latex_club_red'>><<wearItem 'hood_latex_club_red' true>>">>]<br>
[<<moveTo 'event_sexclub_date_admin_1_change_2' 'White catsuit.' 600 "<<set _shoes = setup.getItemFromType('shoes')>><<removeAllClothing>><<wearItem _shoes true>><<set $scene.catsuit='catsuit_latex_headless_club_white'>><<addItem 'catsuit_latex_headless_club_white'>><<wearItem 'catsuit_latex_headless_club_white' true>><<addItem 'hood_latex_club_white'>><<wearItem 'hood_latex_club_white' true>>">>]<br>
[<<moveTo 'event_sexclub_date_admin_1_change_2' 'Pink catsuit.' 600 "<<set _shoes = setup.getItemFromType('shoes')>><<removeAllClothing>><<wearItem _shoes true>><<set $scene.catsuit='catsuit_latex_headless_club_pink'>><<addItem 'catsuit_latex_headless_club_pink'>><<wearItem 'catsuit_latex_headless_club_pink' true>><<addItem 'hood_latex_club_pink'>><<wearItem 'hood_latex_club_pink' true>>">>]<br>
[<<moveTo 'event_sexclub_date_admin_1_change_1' 'Change into something you brought, instead.' 60>>]
</div>/*#
#desc: meet admin at sex club
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_admin","npc_admin_club") setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You emerge from the changing room in your outfit of the night and <<=setup.getNpcName("npc_admin","first")>> grins. "@@.npc_admin;Woo-ee, <<callPlayer "npc_admin">>! Now THAT is a fetish outfit, I saw a few other guests come through while I waiting for you, but none of them are strutting it like you are! Come on, let's head in. I wanna show off my <<if $npc_admin.flags.relationship == "boyfriend">>girlfriend<<else>>fuck-buddy<</if>>.@@"<br>
<br>
You blush slightly — even with your outfit you doubt you'll be getting much attention standing next to <<his npc_admin>><<if $npc_admin.fem>> "Amazon<<else>> "Adonis<</if>> in leather and latex" number, but that doesn't mean you don't enjoy the compliment.<br>
<br>
[<<moveTo 'event_sexclub_date_admin_2' 'Head inside.' 180>>]
</div>/*#
#desc: enter club w/admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_admin","npc_admin_club")>>
<div id="invframe" class="scrolltext">
You walk into the fetish club and <<=setup.getNpcName("npc_admin","first")>> all but gawks. Staring isn't a one-way thing as you note quite a few pairs of eyes admiring your <<boy npc_admin>>friend and you shift a little bit possessively close to <<him npc_admin>>.<br>
<br>
"@@.npc_admin;Wow, I can see why people enjoy coming to a place like this, talk about sights! Well, I guess you're the expert, what should we do first?@@"<br>
<br>
<<include "adminDateChoices">>
</div><<if $scene.bar>>
[@@.link_locked;You've already gotten a drink at the bar.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_admin_3_bar_1" "Head for the bar." 60>>]<br>
<</if>>
<<if $scene.play>>
[@@.link_locked;You've already spent time in the play area.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_admin_3_play_1" "See if you can have some fun in the play area." 60>>]<br>
<</if>>
<<if $scene.dance>>
[@@.link_locked;You've already spent time on the dance floor.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_admin_3_dance_1" "Head for the dance floor." 60>>]<br>
<</if>>
<<if $scene.bar && $scene.play && $scene.dance>>
[<<moveTo "event_sexclub_date_admin_4" "Something is happening on-stage..." 600>>]
<</if>>/*#
#desc: sexclub bar with admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bar = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_admin","npc_admin_club")>>
<div id="invframe" class="scrolltext">
You motion towards the bar and <<=setup.getNpcName("npc_admin","first")>> grins.<br>
<br>
"@@.npc_admin;Now you're talking something familiar! A drink sounds great, help me relax a bit, y'know?@@"<br>
<br>
<<He npc_admin>> leads the way to the bar where you find a pair of stools and <<he npc_admin>> waves for the bartender.<br>
<br>
Before the bartender has even taken <<=ps(setup.getNpcName("npc_admin","first"))>> order <<he npc_admin>> places a fresh beer down in front of your friend.<br>
<br>
"@@.generic_male1;Compliments of the <<if $options.fem>>girl<<else>>fella<</if>> at the end of the bar,@@" the barkeeper notes.<br>
<br>
You and <<=setup.getNpcName("npc_admin","first")>> both glance over to see a fit — though not <<=setup.getNpcName("npc_admin","first")>>-sized <<man>> in a leather hat and vest wave, and then walk over towards the two of you.<br>
<br>
[<<moveTo "event_sexclub_date_admin_3_bar_2" "This is YOUR <<man npc_admin>> and you will brook no competition!" 300 "<<set $scene.possessive=true>>">>]<br>
[<<moveTo "event_sexclub_date_admin_3_bar_2" "Remain meek and quiet." 300 "<<set $scene.possessive=false>>">>]
</div>/*#
#desc: sexclub bar man hits on admin
#status: RELEASED 0.8.8.0
#ignore_spell: poppin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_admin","npc_admin_club") setup.charImage("generic","club_leather")>>
<div id="invframe" class="scrolltext">
<<if $scene.possessive>>
The <<man>> rounds the bar and you jump in between <<him>> and <<=setup.getNpcName("npc_admin","first")>> demanding to know what <<he>> thinks <<hes>> doing making moves on YOUR <<man npc_admin>>.<br>
<br>
Immediately apologetic the <<man>> throws up <<his npc_admin>> hands. "@@.generic_male2;Sorry! I didn't see you there — can't blame a <<man>> for missing the beautiful willow when it's overshadowed by a big strong mountain?@@"<br>
<br>
The <<man>>'s apology seems genuine but you're still hopped up on adrenaline when <<=ps(setup.getNpcName("npc_admin","first"))>> smooth <<if $npc_admin.fem>>voice<<else>>baritone<</if>> sounds off to defuse the situation.<br>
<br>
"@@.npc_admin;No harm done, <<if !$options.fem>>my man, <</if>>I figure everyone's a bit amped up with all I see going on around here. As my lovely lady said — I'm taken and, well... you seem like a fine <<if $options.fem>>girl<<else>>fellow<</if>> — and good job on those triceps! I'm taken and the only <<if $options.fem>>other<<else>>male<</if>> partners I look for is when I need a spot on bench!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_admin","first"))>> arm wrapping around your body and pulling you close helps you calm down as you are reminded that you're <<if $npc_admin.fem>>her's<<else>>his<</if>>, and <<he npc_admin>>'s there to protect you.
<<else>>
The <<man>> rounds the bar and approaches <<=setup.getNpcName("npc_admin","first")>> from the opposite side, leaving you almost invisible behind your <<boy npc_admin>>friend.<br>
<br>
"@@.generic_male2;Hey, so... you interested in hitting the play area? You look good enough to build a statue, but I'd love to see all those muscles in motion...@@"<br>
<br>
With <<his npc_admin>> trademark grin <<=setup.getNpcName("npc_admin","first")>> shakes <<his npc_admin>> head, "@@.npc_admin;Sorry, <<if !$options.fem>>my man, <</if>>but you're barking up the wrong tree, I'm afraid. <<if $options.fem>>I'm already taken by the prettiest girl here. And the only other partners I look for is when I need a spot on bench!<<else>>The only male partners I look for is when I need a spot on bench! And when it comes to the ladies, well... I'm already taken by the prettiest girl here.<</if>> But hey, you're a good looking <<if $options.fem>>lady<<else>>fella<</if>>, and your tri's are really poppin'! I'm sure you'll find someone tonight.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> steps to the side to reveal you as <<he npc_admin>> wraps an arm possessively around your shoulders.
<</if>>
<br><br>
The intruder smiles and throws up <<his>> hands. "@@.generic_male2;Damn, well go ahead and enjoy the beer anyway — I owe you at least that for the hassle... and to make up for all the looking I did while you was walking over. I may finally have my triceps coming together but you... you've got it ALL going on!@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> can't help but grin and do a bit of a flex at the compliment. "@@.npc_admin;Just hard work, nutrition and, well... a bit of genetics, I suppose!@@"<br>
<br>
The two<<if $options.fem == $npc_admin.fem>> <<men>><</if>> laugh and the <<man>> wanders off. <<=setup.getNpcName("npc_admin","first")>> smiles, ordering you a drink of your own as the two of you drink and take a bit of a breather. You doubt this is the first, or the last time <<he npc_admin>>'s been approached by <<if !$npc_admin.fem && !$options.fem>>another dude<<elseif $options.fem>>a girl<<else>>a guy<</if>> but, as always, <<=ps(setup.getNpcName("npc_admin","first"))>> trademark good-nature smoothed it all out.<br>
<br>
"@@.npc_admin;So,@@" <<=setup.getNpcName("npc_admin","first")>> asks after <<he npc_admin>>'s finished <<his npc_admin>> beer. "@@.npc_admin;Where to next?@@"<br>
<br>
<<include "adminDateChoices">>
</div>/*#
#desc: sexclub play area w/admin
#status: RELEASED 0.8.8.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.play = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_admin","npc_admin_club")>>
<div id="invframe" class="scrolltext">
You lead <<=setup.getNpcName("npc_admin","first")>> through the club's public play area where <<he npc_admin>> eyes the various people "playing" with a mix of intrigue and concern.<br>
<br>
<<if $npc_admin.flags.training > 0>>
"@@.npc_admin;I mean, I know the stuff that goes on at work and all, but to think this many people do that sort of thing on their free time! Well, I guess it takes all kinds, y'know?@@"
<<else>>
"@@.npc_admin;Like... do people really enjoy this sort of thing? Seems a bit off, if you ask me.@@"
<</if>>
<br><br>
You point out that it's not all that different from working out, in a way, "no pain, no gain," and all that.<br>
<br>
"@@.npc_admin;Yeah, I guess you got a point. And I certainly know some fellas that get a bit too into the whole "pre-lift" slapping encouragement and such...@@"<br>
<br>
[<<moveTo "event_sexclub_date_admin_3_play_2" "Point towards an unoccupied spanking bench and ask if <<he npc_admin>>'d like to see what you mean about enjoying it..." 1800 "<<set $scene.spank=true>>">>]<br>
[<<moveTo "event_sexclub_date_admin_3_play_2" "Keep walking." 300 "<<set $scene.spank=false>>">>]
</div>/*#
#desc: sexclub play area spanked by admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.spank>>
<<applyExperience 'bondage' 12 'terrible' $EXPOSED>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_admin","npc_admin_club")>>
<div id="invframe" class="scrolltext">
<<if $scene.spank>>
You grin and rub your butt against your <<boy npc_admin>>friend before skipping over to an un-occupied spanking bench and starting to strap yourself in.<br>
<br>
"@@.pc;Come on!@@" You state with an encouraging grin, guiding <<him npc_admin>> to strap you down tight as you note that, while <<him npc_admin>> just bending you over a desk or <<his npc_admin>> knee is great, you might as well take advantage of the extra equipment!<br>
<br>
<<He npc_admin>> seems a bit uncertain, but your enthusiasm carries things for the both of you until you're fully secured, gleefully wiggling against the tight, restrictive bonds.<br>
<br>
"@@.npc_admin;Okay, so... you seem pretty helpless, and now you want me to spank you?@@"<br>
<br>
<<if $fetish.daddy>>
"@@.pc;Yes, <<Daddy npc_admin>>,@@" you reply, fluttering your eyelashes, "@@.pc;I've been a baaad girl.@@"
<<else>>
You grin, fluttering your eyelashes as you nod eagerly.
<</if>>
<br><br>
*whack* — <<his npc_admin>> hand makes a pleasant sound against your bottom... even if <<he npc_admin>> barely hit you.<br>
<br>
"@@.npc_admin;Like that?@@" <<He npc_admin>> asks, not noticing the sound has drawn the attention of several onlookers.<br>
<br>
"@@.pc;Yeah, but, like... harder.@@" You reply.<br>
<br>
*Whack* — <<he npc_admin>> hits you a little harder and you encourage <<him npc_admin>> again, noting that <<he npc_admin>> should experiment with different impact locations, as well.<br>
<br>
*WHACK* — for the first time <<he npc_admin>> puts some force into things and you gasp,
<<if setup.getTotalValue("bdsm") > 10>>
moaning in encouragement, for <<his npc_admin>> eager form.
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
your moan of encouragement only half-faked.
<<else>>
wanting to encourage <<him npc_admin>>, you fake an encouraging moan.
<</if>>
<</if>>
<br><br>
"@@.npc_admin;Huh, I don't wanna hurt you but... from the sound of things this doesn't really HURT, hurt, does it... is that true? Are you getting off on this?@@"<br>
<br>
<<if $fetish.daddy>>
[<<moveTo "event_sexclub_date_admin_3_play_3" 'Yes, <<Daddy npc_admin>>.' 300>>]
<<else>>
[<<moveTo "event_sexclub_date_admin_3_play_3" 'Blush and nod.' 300>>]
<</if>>
<<else>>
You lamely explain that different people enjoy different things, before you and <<=setup.getNpcName("npc_admin","first")>> finish your "tour" of the play area without further incident.<br>
<br>
<<include "adminDateChoices">>
<</if>>
</div>/*#
#desc: sexclub play area spanked by admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.spank>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $EXPOSED>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'very' $EXPOSED>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_admin","npc_admin_club")>>
<div id="invframe" class="scrolltext">
*WHACK*, *WHACK* — one blow lands on each side of your rear and you shudder in your bonds. Glancing around you realise that you're starting to draw a real crowd... the watching eyes
<<if setup.getTotalValue("humiliation") > 10>>
<<if setup.getTotalValue("humiliation") > 15>>
exactly what you need to make things even more arousing.
<<else>>
turning you on even more.
<</if>>
<<else>>
making you shudder in
<<if setup.getTotalValue("humiliation") > 5>>
humiliated arousal.
<<else>>
humiliation.
<</if>>
<</if>>
<<if $fetish.daddy>>
"@@.pc;Harder, <<Daddy npc_admin>>!@@"
<<else>>
"@@.pc;Harder!@@"
<</if>>
You gasp as <<he npc_admin>> starts to get into things. One of your audience members lets out a wolf whistle of encouragement. "@@.generic_female1;Yeah, punish that <<if $fetish.sissy>>sissy<<else>>slut<</if>>, big <<guy npc_admin>>!@@" Someone calls out. <<=ps(setup.getNpcName("npc_admin","first"))>> attention finally drawn to the crowd gathering to watch, and you momentarily worry that it's over, but then you get the hardest *WHACK* yet as <<=ps(setup.getNpcName("npc_admin","first"))>> exhibitionist streak kicks in and <<he npc_admin>> responds to the crowds' encouragement to paddle your bum like you were hoping for from the beginning.<br>
<br>
Encouraged by the crowd — and your own moans — <<=setup.getNpcName("npc_admin","first")>> gives you what has to be the hardest, most exciting spanking you've ever endured. By the time <<he npc_admin>> stops you're deep in sub-space, blissed out in your bonds, a puddle of red-bottomed, submissive lust.<br>
<br>
You let out a stuttered breath as you feel <<him npc_admin>> unbuckle your bonds and help you back to your feet to applause.<br>
<br>
"@@.npc_admin;Wow... you REALLY were getting off on that,@@" <<=setup.getNpcName("npc_admin","first")>> starts and then pauses as you stare down at the raging erection only further highlighted by <<his npc_admin>> tight latex shorts. "@@.npc_admin;Okay, so... maybe I was too... your butt felt so good, and those cute moans... yeah, I think I'm starting to understand this stuff a bit more.@@"<br>
<br>
<<printThought "Hmm... am I corrupting sweet <<=setup.getNpcName('npc_admin','first')>>... or educating <<him npc_admin>>? Either way... <<he npc_admin>> DEFINITELY enjoyed that, and not just because of the audience...">><br>
<br>
Swaying slightly you welcome <<his npc_admin>> support, leaning against your <<man npc_admin>> and grinning at a few lonely slaves looking jealously on.<br>
<br>
Your red bottom swaying with each step, <<=ps(setup.getNpcName("npc_admin","first"))>> strong arm around your hip, the two of you head off for your next adventure, the way <<he npc_admin>> occasionally reaches down to squeeze your sensitive bottom making you almost moan every time.<br>
<br>
<<include "adminDateChoices">>
</div>/*#
#desc: sexclub dance floor w/admin
#status: RELEASED 0.8.8.0
#ignore_spell: eighthwoman,steelsprings
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dance = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_admin","npc_admin_club") setup.charImage("npc_shoestore_manager","npc_shoestore_pony")>>
<div id="invframe" class="scrolltext">
You casually stroll onto the dance floor when <<=setup.getNpcName("npc_admin","first")>> comes to a sudden stop.<br>
<br>
"@@.npc_admin;Wait, is that?@@" <<He npc_admin>> must have seen someone over the top of the crowd because <<he npc_admin>>'s suddenly running across the floor as you rush to keep up.<br>
<br>
On the other side of the floor <<he npc_admin>> comes to a wide-eyed stop in front of <<=setup.getNpcName("npc_shoestore_manager", "first")>> mounted, as usual, atop her gorgeous wife/pony.<br>
<br>
"@@.npc_admin;<<=setup.getNpcName("npc_shoestore_assistant", "formal")>>?@@" <<He npc_admin>> asks, the tall pony looking slightly surprised before nodding her head.<br>
<br>
"@@.npc_admin;Holy shit! You were the best Eighthwoman the All Black-Chromes ever had! I was actually there in person for the championship against the Wallaby-SteelSprings! You were on fire that day!@@"<br>
<br>
<<=setup.getNpcName("npc_shoestore_assistant", "first")>> blushes around her bit gag and turns her head as far back as she can for her wife/rider to take over.<br>
<br>
[<<moveTo "event_sexclub_date_admin_3_dance_2" 'Continue.' 300>>]
</div>/*#
#desc: sexclub dance floor admin fanboys for npc_shoestore_assistant
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_admin","npc_admin_club") setup.charImage("npc_shoestore_manager","npc_shoestore_pony")>>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;My, my, you really are a fan.@@" <<=setup.getNpcName("npc_shoestore_manager", "first")>> states with amusement before reaching forward to release her wife's gag, the bit removed and trailing saliva as <<=setup.getNpcName("npc_shoestore_assistant", "first")>> takes a breath and then does a slight pony bow.<br>
<br>
"@@.npc_shoestore_assistant;Thank you for the honour,@@" she starts only for <<=ps(setup.getNpcName("npc_admin", "first"))>> exuberance to take over as <<he npc_admin>> interrupts.<br>
<br>
"@@.npc_admin;Trust me the honour is all mine! The way you used to run, to just breeze through a defensive line like it was paper and take off downfield...@@" Seemingly finally noticing her intricate bondage get-up <<he npc_admin>> pauses, "@@.npc_admin;I guess you've taken things in a bit of a direction since retirement?@@"<br>
<br>
<<=setup.getNpcName("npc_shoestore_assistant", "first")>> waits for a moment as if to make sure <<=setup.getNpcName("npc_admin", "first")>> isn't going to go off again before responding.<br>
<br>
"@@.npc_shoestore_assistant;Yes, I help my wife with our store in the mall, <<printShopName 'mall_shoe_store'>>. It's a different sort of excitement than a scrum, but it's satisfying. And I get the opportunity to go for a run in the country every once in a while — without worrying about anyone tackling me!@@"<br>
<br>
<<=setup.getNpcName("npc_admin", "first")>> laughs along with her. "@@.npc_admin;As if anyone could! Man, in your prime... I've never seen someone play the game like you, I had no idea you lived in town! And selling shoes at the mall! I'm kind of kicking myself now for ordering all my shoes online!@@"<br>
<br>
The two of them talk for a few more minutes until <<=setup.getNpcName("npc_shoestore_manager", "first")>> makes some sort of invisible signal that it's time to wrap things up.<br>
<br>
"@@.npc_shoestore_assistant;Again, it's wonderful to meet a fan, I hope you enjoy the rest of your evening but I think my wife wants to trot around for a bit.@@"<br>
<br>
The bit gag replaced the two of them stride off — <<=setup.getNpcName("npc_shoestore_assistant", "first")>> stepping tall as people move out of the way in admiration.<br>
<br>
<<=setup.getNpcName("npc_admin", "first")>> is still in awe as <<he npc_admin>> watches them depart... only for a slight look of confusion to come over <<his npc_admin>> face.<br>
<br>
"@@.npc_admin;Wait, her tail... is it...@@"<br>
<br>
You smile up at <<him npc_admin>> and nod.<br>
<br>
"@@.npc_admin;Huh, wow, crazy world, still, it was fun to meet someone like that, it seems all sorts of people are into this fetish stuff... and I guess I'm starting to understand, it is kind of fun to let loose, and, let's be honest, I'll take pretty much any opportunity to stage a gun show...@@" <<He npc_admin>> does a quick flex that causes a random passing club-goer to whistle in appreciation.<br>
<br>
<<=setup.getNpcName("npc_admin", "first")>> grins. "@@.npc_admin;So, where to next?@@"<br>
<br>
<<include "adminDateChoices">>
</div>/*#
#desc: sex club show w/admin intro
#status: WRITTEN 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
You recognise the sign that a show is about to start and you quickly lead <<=setup.getNpcName("npc_admin", "first")>> towards a good position to see the show. People seem to naturally move out of your <<boy npc_admin>>friend's way until the two of you are right at the foot of the stage.<br>
<br>
<<=setup.getNpcName("npc_sex_club","formal")>> takes centre-stage with a smile and a flourish of <<his npc_sex_club>> cape. "@@.npc_sex_club;Welcome, friends. We have a special show tonight a tribute to the wondrous perfection of the human form!@@"<br>
<br>
With no further lead-in <<=setup.getNpcName("npc_sex_club","formal")>> moves out of the way as a gymnast flips across the stage... a latex-clad, eerily faceless gymnast, her shiny black outfit so skin-tight it is surely painted on, moving with her body as she contorts and leaps, twirling and practically gliding through the air as the crowd gasps.<br>
<br>
Her performance is infused with a passion and erotic lust as well as astounding grace and skill. You join the audience in applause as she finishes things off with a bow... only for her to be joined by a second performer, a <<man>> dressed in contrasting red latex, the two of them pushing the performance to another level as <<=setup.getNpcName("npc_sex_club","formal")>> lifts her through the air and she dances to entwine with <<=ps(setup.getNpcName("npc_sex_club","formal"))>> body. You watch in awe as the show continues, the friction of the two performers causing their liquid latex outfits to rub off, revealing the flesh beneath. First just hints, but then whole muscles peeking out, an astounding performance that celebrates the human body in a way you had never even imagined.<br>
<br>
As the applause fades on this extended performance another pair of dancers appear — a voluptuous woman partnered with a <<man>> even more slight of build than yourself, each moving with grace akin to the gymnasts... and yet the contrast of bodies making for an entirely different vision...<br>
<br>
[<<moveTo "event_sexclub_date_admin_5" 'Watch in awe.' 600>>]
</div>/*#
#desc: sex club show w/admin — option to volunteer
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png">>
<div id="invframe" class="scrolltext">
The show continues with a trio of androgynous dancers that move with such speed and precision that it becomes impossible to tell which is which, followed by a sudden appearance of some performers coming up from the audience as you realise that this celebration of the human form is shifting into a participatory one...<br>
<br>
You eye your <<boy npc_admin>>friend... you know how much <<he npc_admin>> enjoys performing and, truth be told, <<his npc_admin>> physique is easily the equal, if not better, than anyone else you have seen in the club...<br>
<br>
[<<moveTo "event_sexclub_date_admin_6" 'Wait for the next opening for the two of you to go on-stage...' 600>>]<br>
[<<moveTo "event_sexclub_date_admin_7" 'Just watch from the audience.' 1800>>]
</div>/*#
#desc: sex club show w/admin: volunteer
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_admin","npc_admin_club")>>
<div id="invframe" class="scrolltext">
You lock eyes with <<=setup.getNpcName("npc_admin", "first")>> and are instantly on the same page — waiting for the next gap in performers before <<he npc_admin>> hoists you up onto the stage and then leaps up <<him npc_admin>>self.<br>
<br>
The mere sight of your <<boy npc_admin>>friend, bright lights highlighting every one of <<his npc_admin>> perfect muscles, is enough to send a roar through the crowd. You take a moment to admire your perfect <<man npc_admin>> and then get to work, accentuating <<his npc_admin>> smooth flexing with worshipping <<his npc_admin>> muscles, and <<him npc_admin>>, with your body, wrapping yourself around <<his npc_admin>> legs, licking <<his npc_admin>> <<if $npc_admin.fem>>abs<<else>>chest<</if>>, letting your body go limp as <<he npc_admin>> balances you in one hand and lifts you into the air... only to juggle you to the other hand and swing you back to the ground where you gracefully twirl around <<him npc_admin>>, your focus, and the audiences, on <<his npc_admin>> physical perfection.<br>
<br>
You lock eyes with <<=setup.getNpcName("npc_admin", "first")>> again as you move close as <<he npc_admin>> dips you almost to the floor, your hand placed over the glorious bulge in <<his npc_admin>> latex shorts, for a moment thinking the two of you could start fucking right there on the stage... and the crowd would love it...<br>
<br>
Your heart skips a beat and the instant passes. Certainly the performances have been lusty and evocative, but mere sex would almost degrade the perfect celebration of flesh, the two of you finishing your impromptu display and sliding back into the audience to make way for the next performer.<br>
<br>
[<<moveTo "event_sexclub_date_admin_7" 'Continue.' 600>>]
</div>/*#
#desc: sex club show w/admin: end of show
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
The performance continues — a mix of individuals ranging from those graceful or physically sculpted as the initial performers... down to more normal people, a celebration of ALL bodytypes that leaves you in awe and clapping enthusiastically when the final performer rejoins the audience and <<=setup.getNpcName("npc_sex_club","formal")>> takes the stage.<br>
<br>
"@@.npc_sex_club;Thank you all! Both those of you brave enough to show yourselves before us... and those in the audience to appreciate. Truly it made for a wonderful celebration not just of humanity, but of the beauty within all of us and the opportunity for expression I hope you all avail yourselves of her. After all, sin accepts all.@@"<br>
<br>
You catch your breath as the crowd starts to dissipate... and <<=setup.getNpcName("npc_admin", "first")>> yawns.<br>
<br>
[<<moveTo "event_sexclub_date_admin_8" 'Continue.' 600>>]
</div>/*#
#desc: admin sex club visit, leave
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.catsuit>>
<<removeItem $scene.catsuit true>>
<<deleteItem $scene.catsuit>>
<<set _hood = setup.getItemFromType("hood")>>
<<removeItem _hood true>>
<<deleteItem _hood>>
<<useClothSetPop 'tmp'>>
<</if>>
<<include "adminCollarChecker">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_admin;Whew!, Sorry about that, but all this excitement, plus, it is a work-night. What say we call it a night on that high note?@@"<br>
<br>
You nod in agreement, the two of you heading back to the changing room. As good as <<=setup.getNpcName("npc_admin", "first")>> looks in <<his npc_admin>> casual attire you do find yourself missing <<his npc_admin>> jaw-dropping "club-wear." <<He npc_admin>> greets you with the same wide smile, pulling you in for a kiss... which turns into a cab-ride make-out session as <<he npc_admin>> makes sure to drop you off at home before continuing on to <<his npc_admin>> flat.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 600>>]
</div>/*#
#desc: agree to date with admin
#status: RELEASED 0.8.8.0
#ignore_spell: 6pm
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<include "calcAdminDateDay">>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 18, 0, false)>>
<<addTaskById "admin_date_movie" _nextDate>>
<<if $currentTasks.hasOwnProperty("admin_drink_1") && !$currentTasks.admin_drink_1.finished>>
<<deleteTask "admin_drink_1">>
<</if>>
<<else>>
<<include "addAdminDate">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You tell <<=setup.getNpcName("npc_admin","first")>> that an old-fashioned date sounds great.<br>
<br>
"@@.npc_admin;Awesome! So... I'll see you <<=$scene.dateAdminDay>> — I'll pick you up at your place at, say, <<if $options.militaryTime>>18:00<<else>>6pm<</if>>?@@"
<<else>>
You tell <<=setup.getNpcName("npc_admin","first")>> that you were really just looking forward to hanging out at the Usual Place and knocking back a few.<br>
<br>
"@@.npc_admin;Say no more! I'll see you then <<callPlayer "npc_admin">>!@@"
<</if>>
<br><br>
<<He npc_admin>> hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: no show movie date with admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.atHome = setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
<<if $scene.atHome>>
<<completeTask 'admin_date_movie' $now true>>
<<else>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_admin' 2>>
<</if>>
<</if>>
<<if $scene.atHome>>
<<set $player.location to "Foyer">>
<<else>>
<<set $player.location to "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.atHome>>
You hear a knock on the door, it must be <<=setup.getNpcName("npc_admin","first")>> here to pick you up for your date.<br>
<br>
[<<moveTo "event_admin_date_movie_1" "Get the door." 30 "<<set $scene.beforetasklocation.pop()>>">>]
<<else>>
You get a call from <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
<<printThought "Shit, I forgot about our date tonight!">><br>
<br>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>, so... I'm at your place and it looks like you're already out? Guess Friday night's a bit busy and things slipped your mind?@@"<br>
<br>
You try to come up with an excuse but there's really no justification for you having stood <<him npc_admin>> up.<br>
<br>
"@@.npc_admin;Well, I guess I'll see you around then.@@" <<He npc_admin>> hangs up. You feel guilty.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: admin shows up for your movie date
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Foyer">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<if setup.checkNaked()>>
<<set $scene.clothing = "naked">>
<<elseif setup.checkOutsideDecencyReason() == "underwear">>
<<set $scene.clothing = "underwear">>
<<else>>
<<set $scene.clothing = setup.analyzeWornTags(['casual','formal','fetish','office'])>>
<</if>>
<<if !setup.checkOutsideDecency() && ($scene.clothing == 'naked' || $scene.clothing == 'underwear')>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You open the door and find <<=setup.getNpcName('npc_admin', 'first')>> waiting for you.<br>
<br>
<<if setup.checkOutsideDecency() && $scene.clothing != 'fetish'>>
<<switch $scene.clothing>>
<<case 'casual'>>
<<He npc_admin>> smiles at your outfit. "@@.npc_admin;Lookin' good <<callPlayer "npc_admin">>! You know I spend so much time seeing you at work I forget how you look when you "let your hair down" — and the answer to that question is hella fine!@@"<br>
<br>
You blush, smile, and give <<him npc_admin>> a kiss before placing your hand in the crook of <<his npc_admin>> elbow.
<<case 'formal'>>
<<He npc_admin>> looks you up and down and whistles. "@@.npc_admin;Damn, <<callPlayer "npc_admin">>! you look gorgeous! I feel a bit guilty though, I mean you're a ten dressed to the nines... and the place I was planning on taking you is no way special enough to deserve you...@@"<br>
<br>
You smile and lean in for a kiss, flashing a wink as you thread your arm into <<his npc_admin>> and explain that "@@.pc;you don't care WHERE you're going ANY night with <<him npc_admin>> is a special occasion and <<he npc_admin>> deserves your best.@@"<br>
<br>
<<He npc_admin>> grins, gallantly leading the way up the hallway. "@@.npc_admin;Woo-ee, you are just sweeter than sugar. I can't believe anyone ever dumped you but... well, given that it led to me having such a lovely girlfriend I'm not going to complain!@@"
<<case 'office'>>
<<He npc_admin>> looks you up and down and grins. "@@.npc_admin;So... I know the dress-code requirements at the office are a bit intense, but seeing you, like that? Well, I get it, I ain't never gonna tire of looking at you looking all prim and professional.@@"<br>
<br>
You blush, smile, and give <<him npc_admin>> a kiss before placing your hand in the crook of <<his npc_admin>> elbow.
<<default>>
ERROR: unexpected scene.clothing <<=$scene.clothing>>
<</switch>>
<br><br>
The two of you head down to <<his npc_admin>> car and enjoy a short, uneventful drive to the restaurant.<br>
<br>
[<<moveTo "event_admin_date_movie_2" "Get seated." 600>>]
<<else>>
<<switch $scene.clothing>>
<<case 'naked' 'underwear'>>
You open the door and <<=ps(setup.getNpcName('npc_admin', 'first'))>> jaw drops. "@@.npc_admin;So... uh, wow, um... I guess I caught you in the middle of getting dressed?@@" <<He npc_admin>> grins as <<his npc_admin>> eyes roam your body. "@@.npc_admin;Not that I don't like what I see but... well, I don't want to be distracting the other diners, y'know? I'll just wait while you get changed.@@"
<<case 'fetish'>>
You open the door and <<=ps(setup.getNpcName('npc_admin', 'first'))>> eyes go wide. "@@.npc_admin;Wow! That is... that is one helluva outfit!@@" <<His npc_admin>> gaze keeps flicking up and down your body, as if uncertain what part of you <<he npc_admin>> most wants to stare at. "@@.npc_admin;Not that I don't like what I see but... well, I don't want to be distracting the other diners, y'know? I'll just wait while you get changed.@@"
<<default>>
<<His npc_admin>> gaze lights on your face as you realise
<<if setup.getCurrentMakeup() == "">>
you forgot to put on makeup.
<<else>>
your makeup is a wreck.
<</if>>
<br><br>
"@@.npc_admin;Looks like I caught you in the process of getting ready — I'll just wait here a moment while you finish up.@@"
<</switch>>
<br><br>
[<<moveTo "event_admin_date_movie_1a" "Finish getting ready." 60>>]
<</if>>
</div>/*#
#desc: change for admin movie date
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Bathroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You retreat to your bathroom to finish getting ready.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="event_admin_date_movie_1a">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Return to the Bathroom.">>'>>]<br>
<br>
<</if>>
<<if setup.checkOutsideDecency()>>
<<if setup.analyzeWornTags(['casual','formal','fetish','office']) == 'fetish'>>
[@@.link_locked;This is maybe a bit much for the movie theatre... I should change into something a bit less fetishistic.@@]
<<else>>
[<<moveTo "event_admin_date_movie_1" "Head back to the foyer." 60>>]
<</if>>
<<else>>
[@@.link_locked;I need to be dressed appropriately to go out and make sure my makeup is looking good.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: admin movie date - dinner
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "The White Dragon Noodle House">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<storeVisual $player $npc_admin>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admindinner.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You smile when you reach the restaurant, recognising The White Dragon as an old hole-in-the-wall known for its really good noodles that the two of you used to frequent back in your college days. You remark that you haven't thought of the place in years!<br>
<br>
"@@.npc_admin;Me neither, but I wanted something that was us, y'know? And I'll never forget some of the late nights we spent at this place, you helping me study... I know our careers diverged a bit from back in the day but, without your help I never would have gotten that job at CDS... you're a good friend, a damn good friend.@@"<br>
<br>
You blush at the compliment, replying that <<he npc_admin>> is, as well, staying close after the rollercoaster your life has gone through.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> smiles. "@@.npc_admin;It's certainly been a ride, and I doubt it's quite over yet, but I'll be there with you to the end, <<callPlayer "npc_admin">>!@@"<br>
<br>
You thank <<him npc_admin>> and then place your order, settling in to a casual chat as you suddenly remember something <<he npc_admin>> mentioned a long time ago.<br>
<br>
<<printThought "Hmm, I remember <<he npc_admin>> told me once about a date who got frisky with her feet under the table? I recall <<he npc_admin>> seemed pretty excited telling the story... plus, well... there's that exhibitionism kink <<he npc_admin>> mentioned...">><br>
<br>
[<<moveTo "event_admin_date_movie_3_foot" "Get up to some footsie mischief under the table." 600 "<<set $scene.footsie=true>>">>]<br>
[<<moveTo "event_admin_date_movie_3" "Just enjoy dinner." 600 "<<set $scene.footsie=false>>">>]
</div>/*#
#desc: admin movie date - dinner footjob
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "The White Dragon Noodle House">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admindinner.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
As you start to eat the nostalgic — if greasier than you remember, food you slip out of your shoe and slide your foot up <<=ps(setup.getNpcName('npc_admin', 'first'))>> leg.<br>
<br>
<<He npc_admin>>'s in the middle of a joke about how many cheat days this meal is going to count as when <<he npc_admin>> pauses and grins. You smile back and slide your foot higher, soon massaging <<his npc_admin>> hard — and longer than your foot — <<getWordPenis "npc_admin">> beneath the table, continuing a slow, secretive pace for the rest of the meal so that <<he npc_admin>>'s looking a bit flustered by the time <<he npc_admin>> calls for the check.<br>
<br>
Insisting on paying the whole thing <<him npc_admin>>self, <<=setup.getNpcName('npc_admin', 'first')>> waits for you to slip back into your shoe before offering you an arm for the short walk to the theatre.<br>
<br>
"@@.npc_admin;You really have turned into quite the naughty girl,@@" <<he npc_admin>> whispers as you walk the short couple of blocks to a nearby multiplex.<br>
<br>
You smile back and feign innocence... while noting that the night has only just begun.<br>
<br>
"@@.npc_admin;Oh I like the sound of that,@@" <<he npc_admin>> replies, giving your hip a squeeze before gesturing for you to take the lead in walking across the row to your seats. "@@.npc_admin;Mmmm, I cannot believe I wasted so many years not appreciating that fine booty,@@" <<he npc_admin>> notes once you've wiggled your way to your seats and the two of you have settled in for the pre-movie ads.<br>
<br>
[<<moveTo "event_admin_date_movie_4" "Wait for the movie to start." 600>>]
</div>/*#
#desc: admin movie date - dinner no footjob
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "The White Dragon Noodle House">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admindinner.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_admin', 'first')>> enjoy a pleasant meal. The food is a bit greasier than you remember, and <<=setup.getNpcName('npc_admin', 'first')>> jokes about this "@@.npc_admin;Being, like, a whole month of cheat days!@@" But it's tasty, and nostalgic... and the company is great!<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> insists on picking up the check — pointing out that <<he npc_admin>> makes more than you, plus <<he npc_admin>> was the one who asked you out, and then the two of you are off to the theatre, you happily curled around <<him npc_admin>> as you make the short walk to the nearby multiplex.<br>
<br>
[<<moveTo "event_admin_date_movie_4" "Find your seats and wait for the movie to start." 3600>>]
</div>/*#
#desc: admin movie date - movie start
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Movie Theatre">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/movietheatre.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
After the usual excess stream of ads and trailers for "coming features" the lights go dark and the movie starts. "Fast and Furiosa: Neo Tokyo Drift" is the latest action flick in the seemingly endless crossover/cinematic universe revival of classic action films. The plot is something about Dom's cyborg great-grandson teaming up with a mysterious woman who has appeared from the wastes, the two of them navigating the dangerous underground of Neo Tokyo in a quest for truth, water, gas... and family.<br>
<br>
In a lull between a chase scene and the next action scene you glance around, noticing that nobody is exactly sitting near the two of you... and the theatre is quite dark...<br>
<br>
[<<moveTo "event_admin_date_movie_5" "Reach over and give <<him npc_admin>> a hand job." 600 "<<set $scene.handjob=true>>">>]<br>
[<<moveTo "event_admin_date_movie_5" "Cuddle close and keep watching the film." 3600 "<<set $scene.handjob=false>>">>]
</div>/*#
#desc: admin movie date - movie handjob
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Movie Theatre">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.handjob>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<applyExperience 'penis' 10 'normal' $INCOGNITO>>
<<else>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/movietheatre.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.handjob>>
In the darkness of the theater you carefully reach for the buckle to <<=ps(setup.getNpcName('npc_admin', 'first'))>> pants. By the time you have slowly, and quietly, undone <<his npc_admin>> pants <<his npc_admin>> <<getWordPenis "npc_admin">> is very hard, <<his npc_admin>> arm across your shoulder giving you an appreciative squeeze as you begin to slowly jerk <<him npc_admin>> off.<br>
<br>
With your attention <<his npc_admin>> cock is soon at max hardness, your hand barely reaching around its thick base at the bottom of each long, slow stroke. Your hand is wet with pre-cum but you realise that actually getting <<him npc_admin>> off would risk quite a mess. Unless...<br>
<br>
[<<moveTo "event_admin_date_movie_5_bj" "Lean over to finish <<him npc_admin>> off." 600 "<<set $scene.blowjob=true>>">>]<br>
[<<moveTo "event_admin_date_movie_5_bj_no" "Call it here and go back to the film." 3000 "<<set $scene.blowjob=false>>">>]
<<else>>
You snuggle up against your <<boy npc_admin>>friend and enjoy the movie. As expected the fight choreography is fantastic, but even beyond that it's a surprisingly fun romp, a fitting instalment in a now legendary series.<br>
<br>
The lights go up and you leave the theatre arm in arm with <<=setup.getNpcName('npc_admin', 'first')>>. <<He npc_admin>> detours through a nearby park for a prettier walk home rather than following another dreary city street.<br>
<br>
[<<moveTo "event_admin_date_movie_6" "Walk through the park and chat about the film." 900>>]
<</if>>
</div>/*#
#desc: admin movie date - movie blowjob
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Movie Theatre">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $INCOGNITO>>
<<applyExperience 'cum' 11 'normal' $INCOGNITO>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/movietheatre.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You lean over, lips spreading wide as you take <<=setup.getNpcName('npc_admin', 'first')>> down your throat.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Even at this awkward angle you deep-throat <<him npc_admin>> with ease, moving your head slowly in long, deep strokes as your tongue dances along <<his npc_admin>> shaft.
<<else>>
The angle makes things a bit of a challenge but you manage to deep-throat <<him npc_admin>>, bobbing your head up and down as you suck your cheeks in tight.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<He npc_admin>>'s far too big for you to deep-throat, even at an optimal angle, so you shorten things up with one hand stroking <<his npc_admin>> shaft as you suck and lick <<his npc_admin>> thick cock-head.
<<else>>
<<He npc_admin>>'s approaching jaw-breaking large, but you do your best; jerking with one hand as you wrap your lips around <<his npc_admin>> tip and swirl your tongue.
<</if>>
<</if>>
You feel <<him npc_admin>> tense, hear <<him npc_admin>> stifle a moan as you move <<him npc_admin>> rapidly towards climax in the middle of the theatre. You listen to the film as you softly suck, timing <<his npc_admin>> orgasm right as the action hits a crescendo and the booming speakers drown out <<his npc_admin>> climactic gasp.
<<if $fetish.cum>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Even if you weren't at risk of making a mess you would never even consider letting a drop of <<his npc_admin>> precious, delicious <<getWordCum>> spill. You suck up every drop <<he npc_admin>> has, swirling it in your mouth as you savour the wonderful flavour before licking <<him npc_admin>> clean and tucking <<him npc_admin>> away.
<<else>>
You eagerly gulp down <<his npc_admin>> strong, salty, tasty load, making sure you've swallowed every drop, and licked <<him npc_admin>> clean, before carefully zipping <<him npc_admin>> up.
<</if>>
<<else>>
Mindful of the potential to make a mess you
<<if setup.getTotalValue("cum") > 5>>
quickly swallow <<his npc_admin>> thick load, reflecting that, actually... it tastes pretty good. Salty, sure, but strong, and somehow deliciously <<if $npc_admin.fem>>intoxicating<<else>>masculine<</if>>. You wait to make sure there are no after-shocks cumming before you lick <<him npc_admin>> clean and carefully zip <<him npc_admin>> up.
<<else>>
reluctantly swallow <<his npc_admin>> thick load, trying not to think about the taste as you quickly gulp it down and then stuff <<him npc_admin>> back into <<his npc_admin>> pants.
<</if>>
<</if>>
<</if>>
<<=setup.getNpcName("npc_admin","first")>> squeezes you in closer and you lean into <<him npc_admin>> as <<he npc_admin>> whispers "@@.npc_admin;I love you,@@" in thanks for your efforts.<br>
<br>
You go back to watching the film, particularly enjoying the incredible final action set-piece as the heroes race through the Neo Tokyo underground in a running fight that spans five different vehicles, all amazingly done with practical effects.<br>
<br>
The lights go up and you leave the theatre arm in arm with <<=setup.getNpcName('npc_admin', 'first')>> and <<he npc_admin>> detours through a nearby park for a prettier walk home rather than following another dreary city street.<br>
<br>
[<<moveTo "event_admin_date_movie_6" "Walk through the park and chat about the film." 900>>]
</div>/*#
#desc: admin movie date - no movie blowjob
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Movie Theatre">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/movietheatre.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
Not wanting to make a mess, you take your hand away, feeling <<=setup.getNpcName('npc_admin', 'first')>> shift awkwardly and take slow, calming breaths as <<he npc_admin>> tries to get back under control enough to zip back up.<br>
<br>
You go back to watching the film, particularly enjoying the incredible final action set-piece as the heroes race through the Neo Tokyo underground in a running fight that spans five different vehicles, all amazingly done with practical effects.<br>
<br>
The lights go up and you leave the theatre arm in arm with <<=setup.getNpcName('npc_admin', 'first')>> and <<he npc_admin>> detours through a nearby park for a prettier walk home rather than following another dreary city street.<br>
<br>
[<<moveTo "event_admin_date_movie_6" "Walk through the park and chat about the film." 900>>]
</div>/*#
#desc: admin movie date - walk in the park
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "City Park">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
Snuggled up against your <<boy npc_admin>>friend, the two of you walk through a small city park, enjoying the spot of nature and the cool night air as you reflect on the film, and the franchise.<br>
<br>
<<if !$npc_admin.fem>>
"@@.npc_admin;You know, there's a character from some of the earlier films that looks a lot like me,@@" <<=setup.getNpcName('npc_admin', 'first')>> notes with a smile.<br>
<br>
You chuckle and point out that no, <<he npc_admin>>'s WAY hotter than some old actor. The two of you laugh as you reflect on how much fun it has been to go on such a simple date.<br>
<br>
<</if>>
The park is sparsely populated and the two of you linger on your way when you spot a small clearing just off the path. Private, but not TOO private...<br>
<br>
<<if $scene.footsie && $scene.handjob && $scene.blowjob>>
<<=setup.getNpcName('npc_admin', 'first')>> pulls you a little closer. "@@.npc_admin;So... you've been rowdy all night... you wanna finish things off with a bit of final fun?@@"
<<elseif $scene.footsie || $scene.handjob>>
<<=setup.getNpcName('npc_admin', 'first')>> pulls you a little closer. "@@.npc_admin;So... you've been teasing me all night... what say we finish things off with a bang?@@"
<<else>>
You eye the bushes... they'd be perfect for a quasi-public quickie...
<</if>>
<br><br>
[<<moveTo "event_admin_date_movie_7" "Fuck in the bushes." 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_admin_date_movie_7" "Continue walking." 600 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: admin movie date - sex in the park
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<set $player.location to "City Park">>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_admin","npc_admin_casual")>>
<<else>>
<<set $player.location to "Apartment Hallway">>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_admin","npc_admin_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You and <<=setup.getNpcName('npc_admin', 'first')>> duck off the path and into the bushes where <<he npc_admin>> lays back and invites you on top.<br>
<br>
"@@.npc_admin;Don't want my best girl having to roll around in the dirt,@@" <<he npc_admin>> states with a grin as you move to straddle <<him npc_admin>>.<br>
<br>
[<<moveTo "event_admin_date_movie_7_sex" "Get fucked in the ass." 600 "<<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if $scene.cage != "">>
<<if $scene.unlockable>>
[<<moveTo "event_admin_date_movie_7_sex" "Remove your chastity belt and fuck." 600 "<<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your vagina is locked in chastity.@@]
<</if>>
<<else>>
[<<moveTo "event_admin_date_movie_7_sex" "Have <<him npc_admin>> fuck your vagina." 600 "<<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
<<else>>
You pass by the bush and continue on home. Like a bashful high school <<guy npc_admin>> <<=setup.getNpcName('npc_admin', 'first')>> kisses you goodnight outside the door to your flat.<br>
<br>
"@@.npc_admin;I had fun tonight... I hope you did as well?@@"<br>
<br>
You nod and smile, thanking <<him npc_admin>> for the nostalgic date.<br>
<br>
"@@.npc_admin;Yeah, it was nice taking a bit of a trip down memory lane... though I think the future is brighter still.@@" You blush, your heart aflutter.<br>
<br>
[<<moveTo "event_admin_date_movie_9_sex" "Invite <<him npc_admin>> in for sex." 600>>]<br>
[<<moveTo "event_admin_date_movie_9" "Say good-night." 600>>]
<</if>>
</div>/*#
#desc: admin movie date - sex in the park
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_admin' 3>>
<<if $scene.anal>>
<<applyExperience 'anal' $npc_admin.penis_size 'very' $INCOGNITO>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<else>>
<</if>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "City Park">>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
<<if $scene.removePlug>>
You remove the plug from your rear and eagerly replace it with <<=ps(setup.getNpcName("npc_admin","first"))>> big, beautiful <<getWordPenis "npc_admin">>.
<<else>>
You sit back, moaning softly as <<=ps(setup.getNpcName("npc_admin","first"))>> big, beautiful <<getWordPenis "npc_admin">> slides into your ass.
<</if>>
<br><br>
"@@.npc_admin;Fuck you're tight,@@" <<he npc_admin>> softly grunts. "@@.npc_admin;You're sure I'm not too big? I mean, you didn't even use any lube...@@"<br>
<br>
You grin down at <<him npc_admin>> and roll your hips, telling <<him npc_admin>> that <<he npc_admin>>'s "@@.pc;Perfect,@@" and for <<him npc_admin>> to "@@.pc;Shut up and fuck me, big <<guy npc_admin>>.@@"<br>
<br>
"@@.npc_admin;As my lady commands,@@" <<he npc_admin>> replies with a grin, grabbing you with both hands as <<he npc_admin>> starts thrusting up, the power in <<his npc_admin>> hips causing you to sway like you were riding a bull.
<<else>>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
You produce the key to your chastity belt and remove it
<<else>>
<<=setup.getNpcName("npc_admin","first")>> produces the key to your chastity belt and unlocks you
<</if>>
to expose your dripping excitement.
<</if>>
<<=setup.getNpcName("npc_admin","first")>> is big, but you're so excited to fuck <<him npc_admin>> in the park that <<he npc_admin>> slides into you with ease — <<his npc_admin>> strong hands helping support your hips as you guide <<him npc_admin>> into place and let your weight sink down onto <<him npc_admin>>.<br>
<br>
"@@.npc_admin;Mmmm, you feel so tight,@@" <<he npc_admin>> states with a grin, rolling <<his npc_admin>> hips as you stifle a moan, groping yourself and putting on a show as you ride <<him npc_admin>> hard.
<</if>>
<br><br>
The park path mere meters away, you try to keep quiet as you occasionally hear someone jogging past... every time <<=setup.getNpcName("npc_admin","first")>> stiffens a bit harder, <<his npc_admin>> pace quickening in excitement at the reminder of how near the two of you are to being exposed.<br>
<br>
It isn't long before the excitement of the situation has <<him npc_admin>> cumming inside of you as you climax as well, losing your balance to fall forward into a kiss as <<he npc_admin>> softens and slowly slips out of you.<br>
<br>
"@@.npc_admin;Damn, what an end to the night...@@" <<He npc_admin>> whispers as you <<if $npc_admin.fem>>snuggle up and cuddle with her to<<else>>lay on his muscular chest and<</if>> recover.<br>
<br>
You catch your breath, the cool night air starting to induce a shiver before you get back to your feet and clean up. As you emerge from the bush a woman walking her dog looks at you with clear suspicion, but she continues in the opposite direction as you and <<=setup.getNpcName("npc_admin","first")>> head for your flat.<br>
<br>
[<<moveTo "event_admin_date_movie_8" "Home." 600 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>>">>]<br>
</div>/*#
#desc: admin movie date - home
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Foyer">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEvent 'admin_ex'>>
<<set _nextDate = setup.setNextDate($now, 3, 14, 0)>>
<<addWorkEvent 'admin_work_text' _nextDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
The rest of your walk home proceeding pleasantly you stop outside the door to your flat for a good-night kiss. "@@.npc_admin;I had fun tonight... I hope you did as well?@@"<br>
<br>
You nod and smile, thanking <<him npc_admin>> for the nostalgic date.<br>
<br>
"@@.npc_admin;Yeah, it was nice taking a bit of a trip down memory lane... though I think the future is brighter still.@@" You blush, your heart aflutter.<br>
<br>
[<<moveTo "event_admin_date_movie_9_sex" "Invite <<him npc_admin>> in for sex." 600>>]<br>
[<<moveTo "event_admin_date_movie_9" "Say good-night." 600>>]
</div>/*#
#desc: admin movie date - home sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Foyer">>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
Bidding <<=setup.getNpcName("npc_admin","first")>> one last hug and kiss goodnight, you close the door and reflect on the wonderful date you had with your <<boy npc_admin>>friend.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
</div>/*#
#desc: admin movie date - home sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_admin","first")>> grins
<<if $scene.sex>>
"@@.npc_admin;Again? You really are insatiable... but how could I possibly say no to such a pretty face?@@"
<<else>>
"@@.npc_admin;I was hoping you'd ask, I've been in the mood since I first picked you up this evening!<<if $scene.footsie || $scene.handjob>> And that was before you started all that teasing!<</if>>@@"
<</if>>
<br><br>
You open the door and the two of you quickly make it to your bedroom, hands and lips all over one another before you pull <<him npc_admin>> on top of you and <<he npc_admin>> enters you. Your hands grip <<his npc_admin>> <<if $npc_admin.fem>>strong, well defined<<else>>broad, thick<</if>> back as <<he npc_admin>> makes love to you, <<his npc_admin>> hard cock pounding your pleasure centres the perfect ending to an already wonderful night.<br>
<br>
Both of your climaxes coming swiftly you collapse onto the bed, enjoying a post-sex cuddle as <<his npc_admin>> cradled and enveloped "little spoon" before <<he npc_admin>> rises to leave.<br>
<br>
"@@.npc_admin;Thanks again for a wonderful evening.@@" <<He npc_admin>> states as you strike a naked pose on the bed, feasting your eyes on <<his npc_admin>> statuesque, sweat-glistening muscles as <<he npc_admin>> pulls <<his npc_admin>> tight clothes back on.<br>
<br>
Dressed, <<he npc_admin>> looks down at you a final time with a smile. "@@.npc_admin;Damn, you look so hot I'm tempted to jump right back into bed, but I didn't bring an overnight bag or anything so I best be heading home.@@" <<He npc_admin>> leans over the bed and gives you a kiss before heading for the door. You bite your lip as you stare at <<his npc_admin>> ass until it disappears.<br>
<br>
[<<moveTo "room_bedroom" "Home." 60>>]
</div><<if $npc_admin.flags.tournament >= 6 && State.hasPlayed("event_gym_contest_7_win") && ["barkeeper", "boyfriend", "friendswbenefits"].includes($npc_admin.flags.relationship) && !($events.hasOwnProperty("admin_photoshoot_invite") || State.hasPlayed("event_admin_photoshoot_invite_1"))>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 16, 0)>>
<<addEvent 'admin_photoshoot_invite' _nextDate>>
<</if>>/*#
#desc: admin calls to invite to photoshoot
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">> — so, I was just thinking, you being Miss Hard Pump AND a reigning tournament champ... we should do something to celebrate. You know, commemorate the occasion. One of my lifting buddies from the gym recommended a photographer that <<he>>'s used before — total professional who does photoshoots for anything and, well... what could be a hotter photoshoot than me and my best girl?@@"<br>
<br>
[<<moveTo "event_admin_photoshoot_invite_2" "That sounds great!" 60 "<<set $scene.accept=true>><<set $scene.youInvite=false>>">>]<br>
[<<moveTo "event_admin_photoshoot_invite_2" "Unfortunately you're pretty busy right now." 60 "<<set $scene.accept=false>><<set $scene.youInvite=false>>">>]
</div>/*#
#desc: accept admin invite to photoshoot
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.hasDrinkTask = $currentTasks.hasOwnProperty("admin_drink_1") && !$currentTasks.admin_drink_1.finished>>
<<if $scene.hasDrinkTask>>
<<set _drinkDate = setup.getTaskDueDate('admin_drink_1')>>
<<deleteTask 'admin_drink_1'>>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 21, 30)>>
<<set $scene.canSchedule = !setup.eventOverlap(_nextDate, 4)>>
<<if $scene.canSchedule>>
<<addTaskById 'admin_photoshoot' _nextDate>>
<<elseif $scene.hasDrinkTask>>
<<addTaskById 'admin_drink_1' _drinkDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You say that you'd love to schedule a photoshoot with you and <<him npc_admin>>.<br>
<br>
"@@.npc_admin;Awesome! So, the photographer is busy most days, but <<he>> said <<he>> could do Friday evening — figure we do the shoot rather than shooting the breeze at the Usual Place. This cat's studio is over in your neck of the woods, so I'll just pick you up at your flat?@@"<br>
<br>
<<if $scene.canSchedule>>
You reply that you'll be there!
<<else>>
You reply that you've already got something scheduled.<br>
<br>
"@@.npc_admin;Damn, stood up by my best <<callPlayer "npc_admin">> on a Friday night!@@" <<He npc_admin>> laughs, clearly not actually upset. "@@.npc_admin;No problem, you just tell me some week when you have the time and we'll do this thing!@@"
<</if>>
<<else>>
You reply that you're pretty busy right now, but... maybe sometime later?<br>
<br>
"@@.npc_admin;Sure, of course! You just let me know when you're ready and I'll set everything up!@@"
<</if>>
<br><br>
<<if $scene.youInvite>>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away and get back to what you were doing." 60 "<<set $currentcall = false>>">>]
<<else>>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: not waiting for admin photoshoot
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.atHome = setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
<<if $scene.atHome>>
<<completeTask 'admin_photoshoot' $now true>>
<<else>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_admin' 3>>
<<set _nextDate = setup.setNextDate($now, 7, 18, 0)>>
<<addTaskById 'admin_photoshoot' _nextDate>>
<</if>>
<</if>>
<<if $scene.atHome>>
<<set $player.location to "Foyer">>
<<else>>
<<set $player.location to "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.atHome>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.atHome>>
You have lost track of time when the door rings — <<=setup.getNpcName('npc_admin', 'first')>> has arrived to pick you up.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_admin_photoshoot_1" "Get the door." 30>>]
<<else>>
[@@.link_locked;You are not sufficiently dressed to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
You get a call from <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>, did you forget about things tonight? Don't tell me you got confused and went to the Usual Place or something?@@"<br>
<br>
You wince and lamely reply that something came up.<br>
<br>
"@@.npc_admin;Hey, we've all been there — I can hear the stress in your voice. Work, I'm guessing? Well, whatever, I'll let you get back to it. Hit me up if you wanna reschedule, alright?@@"<br>
<br>
<<He npc_admin>> hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: admin photoshoot travel
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<storeVisual $player $npc_admin>>
<</if>>
<<if setup.checkOutsideDecency()>>
<<set $player.location to "City Street">>
<<else>>
<<set $player.location to "Foyer">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.checkOutsideDecency()>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_admin","npc_admin_casual")>>
<<else>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.checkOutsideDecency()>>
You open your apartment door to <<=setup.getNpcName('npc_admin', 'first')>> and soon the two of you are heading up the block to <<his npc_admin>> friend's studio.<br>
<br>
"@@.npc_admin;So I mentioned before that this <<guy>> does all sorts of photography. I figure we start off with a bit of cheese and beefcake showing off these two gym-honed bods and then, well... we see where the evening takes us, y'know?@@"<br>
<br>
You grin up at <<if $npc_admin.flags.relationship == 'boyfriend'>>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>>, taking <<his npc_admin>> unspoken message that <<he npc_admin>> more or less wants to do a sex shoot with the two of you. Thinking about admiring those photos afterwards has you quite liking the idea as well...<br>
<br>
[<<moveTo "event_admin_photoshoot_2" "Hurry along to your destination." 600>>]
<<else>>
The door rings — <<=setup.getNpcName('npc_landlord', 'first')>> has arrived to pick you up for your date.<br>
<br>
[@@.link_locked;I need to be dressed decently if we're going to go somewhere together.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: admin photoshoot introductions
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Photo Studio">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImageGeneric("npc_photographer")>>
<div id="invframe" class="scrolltext">
A few buildings over from where you live you travel up to a penthouse flat where <<=ps(setup.getNpcName('npc_admin', 'first'))>> friend greets the two of you with a smile and leads you to <<his>> private studio.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> grins as <<he npc_admin>> looks around and hands you a small bag.<br>
<br>
"@@.npc_admin;Fit photoshoot first — you can get changed into this while I get my pump on.@@" <<=setup.getNpcName('npc_admin', 'first')>> turns to shout at <<his npc_admin>> friend. "@@.npc_admin;Hey, where do you keep your dumb-bells, these pythons need feeding!@@"<br>
<br>
The photographer — an obvious gym rat <<him>>self, laughs and pulls some free weights out of a closet while you duck behind the partition to look at what <<=setup.getNpcName('npc_admin', 'first')>> picked out for you.<br>
<br>
[<<moveTo "event_admin_photoshoot_3" "Get changed." 600>>]
</div>/*#
#desc: admin photoshoot change
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Photo Studio">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem 'sport_bra_red'>>
<<wearItem 'sport_bra_red' true>>
<<addItem 'booty_shorts_black'>>
<<wearItem 'booty_shorts_black' true>>
<<addItem 'gym_kicks'>>
<<wearItem 'gym_kicks' true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_admin","npc_admin_training2") setup.charImageGeneric("npc_photographer")>>
<div id="invframe" class="scrolltext">
You open the bag to find a sportsbra, VERY tight booty shorts, and fashionable gym sneakers. You grin, doing a few squats to get a pump of your own before you change and prance out — greeting you with a smile as you make the connection that your outfit is a perfect match for <<his npc_admin>> own pairing of tight gym shorts and <<if $npc_admin.fem>>sports bra<<else>>muscle top<</if>>.<br>
<br>
"@@.npc_admin;Damn, you look finer than ever <<callPlayer "npc_admin">>. You ready for your close-up?@@"<br>
<br>
You grin and skip across the room to give <<if $npc_admin.flags.relationship == 'boyfriend'>>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>> a kiss to confirm.<br>
<br>
"@@.npc_admin;Alright!@@" <<He npc_admin>> says with a grin before turning to the photographer. "@@.npc_admin;Figure we start off doing some couples exercises then, well... we'll see where it takes us.@@"<br>
<br>
The photographer, camera in hand, smiles. "@@.generic_male1;I've got unlimited storage so you just provide the material, and I'll capture those hot bods for eternity.@@"<br>
<br>
[<<moveTo "event_admin_photoshoot_4" 'Start "working out."' 1800>>]
</div>/*#
#desc: admin photoshoot work out
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Photo Studio">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'strength' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_admin","npc_admin_training2")>>
<div id="invframe" class="scrolltext">
The two of you go into it for a cliche "fitness couple" workout of cooperative stretches, quasi-functional partner workouts and then transitioning into more shows of strength with <<=setup.getNpcName('npc_admin', 'first')>> working up from squatting you to benching you to finally doing Turkish get-ups with you curled around <<his npc_admin>> arm.<br>
<br>
You slide down until your thighs are over <<his npc_admin>> shoulders and you do a set of hanging sit-ups into kisses and then transition into full on mutual body worship as you kiss and caress...<br>
<br>
[<<moveTo "event_admin_photoshoot_5" 'Continue.' 600>>]
</div>/*#
#desc: admin photoshoot muscle worship
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Photo Studio">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'sport_bra_red' true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
From your lips meeting you slide down <<=ps(setup.getNpcName('npc_admin', 'first'))>> body, supported the entire time as <<he npc_admin>> holds you in <<his npc_admin>> arms... and then the two of you begin to strip. <<His npc_admin>> <<if $npc_admin.fem>>bra<<else>>shirt<</if>> is the first to go, the tight garment peeled away to reveal glistening muscles. <<He npc_admin>> returns the favour and you lose your bra, revealing your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive, heaving breasts, large even in <<his npc_admin>> hands.
<<case 'large'>>
full breasts, perfectly fit to <<his npc_admin>> large hands.
<<case 'medium'>>
breasts, supported by <<his npc_admin>> large hands.
<<case 'small'>>
small breasts, delicately caressed by <<his npc_admin>> large hands.
<<case 'none'>>
flat chest, caressed by <<his npc_admin>> large hands.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
Your heart races for a moment as you look up at <<him npc_admin>>. You're so used to heels standing next to <<him npc_admin>> in flats is yet another reminder of just how much taller, and bigger, <<he npc_admin>> is than you are. You smile up at <<him npc_admin>>, your long time friend, protector, lover... love. <<He npc_admin>> leans down, <<his npc_admin>> lips finding your neck and you gasp, holding <<him npc_admin>> tight and closing your eyes as <<his npc_admin>> hands move down your body, reaching under your shorts to grope your ass, and then peel off your shorts to fall down your thighs...<br>
<br>
Your pulse pounds, pressed against <<him npc_admin>> you feel <<his npc_admin>> big cock, its hard outline straining against <<his npc_admin>> shorts... you want <<him npc_admin>> so bad...<br>
<br>
[<<moveTo "event_admin_photoshoot_6" 'Drop to your knees and open wide.' 600 '<<set $scene.style="oral">>'>>]<br>
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || $npc_admin.flags.keyholder)>>
[<<moveTo "event_admin_photoshoot_6" 'Guide <<him npc_admin>> between your thighs...' 600 '<<set $scene.style="vag">>'>>]<br>
<</if>>
[<<moveTo "event_admin_photoshoot_6" 'Turn around and grind on <<him npc_admin>> with your bare ass...' 600 '<<set $scene.style="anal">>'>>]
</div>/*#
#desc: admin photoshoot sex
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Photo Studio">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case 'oral'>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_STRANGER>>
<<case 'anal'>>
<<applyExperience 'anal' $npc_admin.penis_size 'very' $SEEN_STRANGER>>
<</switch>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && ($player.body_ref.penis && setup.canSexOrRemoveChastity("penis", "npc_admin") || setup.canSexOrRemoveChastity("vag", "npc_admin"))>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'oral'>>
You slide to your knees, almost ripping <<=ps(setup.getNpcName('npc_admin', 'first'))>> tight shorts off, you're so eager to get at <<his npc_admin>> cock. Big and beautiful, you hold it for just a moment, marveling at how long and thick it is compared to your hand, but a moment is as far as your self-control can manage before you lunge forward throat wide. The taste of <<his npc_admin>> cock, with a hint of sweat, the scent of <<his npc_admin>> well-groomed pubes...<br>
<br>
Your eyes roll back in pleasure and you moan around the throat-stretching wonder, looking up in lust and adoration only for <<him npc_admin>> to lean down and pick you up.<br>
<br>
<<His npc_admin>> cock makes a full one-eighty in your throat as <<he npc_admin>> brings <<his npc_admin>> lips between your thighs. Your legs are spread into a full splits, confident that <<he npc_admin>> can hold you in this awkward position with ease. You continue to lovingly suck as <<he npc_admin>>
<<if $scene.removeCage>>
unlocks your <<if $scene.isCage>>cage<<else>>chastity belt<</if>> and
<</if>>
returns the favour, completing a standing double sixty-nine while <<he npc_admin>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage")>>
teases you around your chastity.
<<else>>
navigates your double genitals.
<</if>>
<<elseif $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
licks around your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>
<<else>>
licks your
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small cock.
<<case 2 3>>
average cock.
<<case 4 5>>
almost as large as <<his npc_admin>> own cock.
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock.
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<<else>>
enthusiastically licks your <<getWordVagina>>.
<</if>>
<br><br>
<<He npc_admin>> cums first while managing to keep you right on the edge... still hard as <<he npc_admin>> flips you over again to carry you into <<his npc_admin>> arms into the nearby bed. A moment later and you are
<<case 'vag'>>
Arms around <<his npc_admin>> strong neck you hop up onto <<him npc_admin>>, <<=setup.getNpcName('npc_admin', 'first')>> handling your weight with ease as you fuck in mid-air, moaning and milking <<his npc_admin>> cock with every ounce of vaginal muscle you have, feeling stretched and filled and perfect by <<his npc_admin>> magnificent meat missile.<br>
<br>
You feel <<him npc_admin>> cum... and yet <<he npc_admin>> remains hard, kissing you passionately as things transition to a nearby bed and you find yourself on top,
<<case 'anal'>>
You turn and rise onto your toes, grinding your ass against <<him npc_admin>> for a moment before <<if $scene.removePlug>>removing your plug for <<him npc_admin>> to slide<<else>><<he npc_admin>> slides<</if>> into you.<br>
<br>
You moan, feeling so wonderfully filled and fucked by <<his npc_admin>> perfect cock... only to soon transition to the bed where you find yourself
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
riding <<him npc_admin>>, <<his npc_admin>> rock-hard cock thrusting up into you, <<his npc_admin>> hands holding you up as you writhe like a spirit of lusty fire, swaying and moaning.<br>
<br>
<<if $fetish.daddy>>
[<<moveTo "event_admin_photoshoot_7" 'Fuck me harder, <<Daddy npc_admin>>...' 600>>]
<<else>>
[<<moveTo "event_admin_photoshoot_7" 'Yes!' 600>>]
<</if>>
</div>/*#
#desc: admin photoshoot sex
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Photo Studio">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
From the bottom, <<=setup.getNpcName('npc_admin', 'first')>> makes love to you, <<his npc_admin>> mammoth cock making your entire body shift with every thrust or twitch; <<his npc_admin>> hands constantly roaming your body as you move from a vertical cowgirl position to leaning in to meet <<his npc_admin>> lips for a kiss that burns with passion.<br>
<br>
You can tell that <<he npc_admin>>'s holding back; focusing on going the distance with you the same as <<he npc_admin>> might do a set to failure. But, as much as you could enjoy this forever you want <<him npc_admin>> to cum,
<<if $fetish.cum>>
<<if $fetish.daddy>>
for <<Daddy npc_admin>> to fill <<his npc_admin>> little girl with cum; to breed you like the eager slut you are.
<<else>>
to feel <<him npc_admin>> tense and unload the full contents of <<his npc_admin>> perfect round balls into you.
<</if>>
<<else>>
to feel <<him npc_admin>> tense under you, to know that you've given <<him npc_admin>> as much pleasure back as <<he npc_admin>>'s given you.
<</if>>
<br><br>
A goal in mind, you start grinding in earnest, distantly remembering that the photographer is still... somewhere documenting your efforts as you go full tunnel vision fucking your <<man npc_admin>>...<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> may be a master of focus, but you're too good, and too hot for <<him npc_admin>> to last. You grin as you look down to see <<his npc_admin>> lips part in a gasp, <<his npc_admin>> hands squeezing your hips as, rather than slamming into you... <<he npc_admin>> freezes, holding you in place as <<his npc_admin>> <<getWordPenis "npc_admin">> twitches, sending earthquake-like waves through your body as the thick obelisk shifts all on its own.<br>
<br>
Your triumph kicks off a climax of your own and you cry out in ecstasy, overwhelmed as <<he npc_admin>> pulls you in close, your body squeezed against <<his npc_admin>> perfect <<if $npc_admin.fem>>breasts<<else>>pecs<</if>> as the two of you cum in unison for what feels like a full minute.<br>
<br>
Your body feeling like you've had a full on workout you slump to the side, curling up next to <<him npc_admin>> with <<his npc_admin>> strong arm around your shoulder...<br>
<br>
[<<moveTo "event_admin_photoshoot_8" 'Yes!' 600>>]
</div>/*#
#desc: admin photoshoot recover
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<useClothSetPop 'tmp'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "Photo Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImageGeneric("npc_photographer")>>
<div id="invframe" class="scrolltext">
You might have passed out, you aren't certain, all that matters is that you're curled around your perfect <<man npc_admin>>, totally sated and slowly coming back down from your orgasmic high.<br>
<br>
Almost bashful you finally rise to your feet, helping <<=setup.getNpcName("npc_admin","first")>> back into <<his npc_admin>> clothes as you realise the photographer is STILL documenting everything.<br>
<br>
For the first time you acknowledge the <<man>> with a wink, focusing on being even more sensuous as you finish dressing your <<man npc_admin>> and then <<he npc_admin>> returns the favour to help you back into the clothes you arrived in. Only once the two of you are dressed does the photographer finally put down <<his>> camera and speak.<br>
<br>
"@@.generic_male1;Goddamn the two of you are gorgeous... and photogenic! I've worked with professional models that looked and moved worse on camera...@@"<br>
<br>
<<He>> fiddles with <<his>> camera for a moment and then hands <<=setup.getNpcName("npc_admin","first")>> a data drive.<br>
<br>
"@@.generic_male1;That's all of it, as agreed, just watching the two of you in action was more than payment for me, but if you ever wanted me to shop those photo's around, well... I am certain I could get top credits for them.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grins as <<he npc_admin>> pockets the drive. "@@.npc_admin;Not the sort of business decision I want to make while I'm still on a sexual high, thanks again for the work — I'll see you around.@@"<br>
<br>
"@@.generic_male1;Count on it!@@" The <<man>> replies as <<he>> shows the two of you to the exit.<br>
<br>
[<<moveTo "event_admin_photoshoot_9" 'Continue.' 600>>]
</div>/*#
#desc: admin photoshoot home
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to 'Outside Your Flat'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_35'
0
'theme_psychiatrist_admin_intro_1'
false
>>
<<include "checkAdminAndLandlord">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
On the long elevator ride back to the ground floor <<=setup.getNpcName("npc_admin","first")>> and you discuss tying one on at the Usual Place, but the thought of all those crowds is kind of a turn-off and <<he npc_admin>> takes you home instead.<br>
<br>
The two of you share a kiss in your hallway before finally bidding each other good-night. You remain in the doorway watching <<his npc_admin>> <<if $npc_admin.fem>>thick<<else>>tight<</if>> ass until it disappears into the elevator, backing into your flat and biting your lip as you close the door.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 60>>]
</div>/*#
#desc: meet admin for drinks
#status: FINISHED 0.4.0.0
#ignore_spell: n,b
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if $events.hasOwnProperty('event_admin_bar_call')>>
<<removeEvent 'event_admin_bar_call'>>
<</if>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<initRoom>>
<<moveTo 'event_admin_evil_stood_up'>>
<<elseif $npc_admin.flags.ageofconfusion>>
<<initRoom>>
<<moveTo 'event_admin_ageofconfusion_stood_up'>>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npcdatefirstscene = setup.calcAdminDateIntroEvent()>>
<<if $scene.npcdatefirstscene != "noshow">>
<<set $scene.npc_datethemes = 0>>
<<set $scene.npcdateclothingstyle = setup.analyzeWornTags(['female','male','unisex'])>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<set $scene.bespokeComment = setup.getBespokeComment('npc_admin')>>
<<if $scene.bespokeComment == "">>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_admin',$npc_admin)>>
<<else>>
<<set $scene.compareVisuals = "">>
<</if>>
<<storeVisual $player $npc_admin>>
<<if $npc_admin.dates == 0 && !$npc_admin.flags.reactnamechange && $player.sec_style.body.name != "">>
<<set $npc_admin.flags.reactnamechange = true>>
<</if>>
<<set $npc_admin.dates+=1>>
<<switch $scene.npcdatefirstscene>>
<<case "female">>
<<set $npc_admin.flags.sawyouinfemaleclothes = true>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<set $npc_admin.flags.firstsawfemale = "bar">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_12'
12
'event_admin_theme_female_clothes'
false
>>
<<gainWillpower 1>>
<<case "unisex">>
<<set $npc_admin.flags.sawyouinunisexclothes = true>>
<<set $scene.npcdatefirstscene = "unisex">>
<<gainWillpower 1>>
<<case "namechanged">>
<<set $npc_admin.flags.reactnamechange = true>>
<</switch>>
<<set $scene.firstNun = setup.checkVisibleClothingTag('nun') > 70 && !$npc_admin.flags.nun>>
<<if $scene.firstNun>>
<<set $npc_admin.flags.nun = true>>
<</if>>
<<if $scene.npcdatefirstscene != "namechanged" && $player.sec_style.body.name != "" && !$npc_admin.flags.reactnamechange>>
<<set $scene.npcdatenamechange_addon = true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<if $scene.npcdatefirstscene == "noshow">>
<<set $player.location to "Phonecall">>
<<set $currentcall = true>>
<<else>>
<<set $player.location to "The Usual Place">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.npcdatefirstscene == "noshow">>
<<createAdvBGR "./images/locations/phonecall.png">>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_night.png" setup.charImage("npc_admin","npc_admin_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.npcdatefirstscene>>
<<case "noshow">>
You wait a bit only to get a text from your friend.<br>
<br>
"@@.npc_admin;Hey, sorry to bail on you last minute like this, but I'm having car problems and I need to get it into the shop before the weekend. Again, really sorry for standing you up like this, but I'll make it up to you somehow aight? I'll see you on Monday.@@"<br>
<br>
You put your phone away and think about what to do now that your schedule has just cleared up.
<<case "unisex">>
<<if $npc_admin.dates == 1>>
You wait for a little bit, a bit nervous.<br>
<br>
<<printThought "Am I really ready to see <<=setup.getNpcName('npc_admin', 'first')>> dressed like this? How is <<he npc_admin>> going to react?">><br>
<br>
After a short while <<=setup.getNpcName('npc_admin', 'first')>> shows up, <<his npc_admin>> bright white smile cutting through the dim light surrounding the "Usual Place." Walking up to the front of the building, <<he npc_admin>> stops and takes a look around, as if looking for someone. It takes a minute to realise that <<he npc_admin>> might be looking for you. <<His npc_admin>> lack of recognition stings, but you have changed quite a bit since you last saw each other.<br>
<br>
<<printThought "Oh <<getWordGod>>... maybe I should send <<him npc_admin>> a message that I can't make it tonight and just run for the hills...">><br>
<br>
Your phone is in your hand when a shadow passes over you.<br>
<br>
"@@.npc_admin;<<=$player.first_name>>?@@"<br>
<br>
You look up, and <<he npc_admin>> smiles, clearly recognising your face.<br>
<br>
"@@.npc_admin;Woah, <<callPlayer "npc_admin">>! Almost didn't recognise you in the new threads...@@" <<He npc_admin>> takes a moment to appraise you more carefully. "@@.npc_admin;Interesting choice... not really my style, but you look pretty good, what prompted the change?@@" Before you can even respond <<he npc_admin>> laughs, "@@.npc_admin;look at me, asking questions while we're still outside the bar! Come on, let's get some drinks and you can tell me all about things. I imagine things have been a bit stressful on your end, but that's what a trip to the bar at the end of the week is all about solving, right?@@"<br>
<br>
<<if $scene.compareVisuals == "">>
"@@.npc_admin;I'm pretty sure we can find someone to distract you from all those worries. Don't worry pal. With your cute-faced persona, I'm sure the ladies will be stormin' your fortress in no time flat!@@"<br>
<br>
<<printThought "Oh boy, you have no idea.">>
<<else>>
"@@.npc_admin;I'm pretty sure we can find someone who's able to distract you from all those worries. Don't worry pal. With your cute face persona, I'm sure the ladies will be stormin' your fortress in no time flat!@@"<br>
<br>
<<printThought "Oh boy, you have no idea.">><br>
<br>
"@@.npc_admin;I see you've even upped your game for the evening. Trying to get lucky? Here, let me take a look. <<=$scene.compareVisuals>>@@"
<</if>>
<br><br>
You blush a little bit. <<He npc_admin>> called you cute. Not exactly the archetype you had historically aimed for, but then again, you've been kinda outside the game for a while. A long while... you can't even remember what your "type" was back before <<=setup.getNpcName('npc_exgirlfriend', 'first')>>.<br>
<br>
"@@.npc_admin;So, what are we waiting for? Let's get inside and get wasted! Hopefully in that order.@@"
<<else>>
You wait for a little bit, a bit nervous.<br>
<br>
<<if $player.identify_as != "male">>
<<printThought "Okay, meeting an old friend for the first time as the new me... should I have worn something more neutral? No... this is who I am, just gotta stay the course...">>
<<else>>
<<printThought "Damn it. I should have changed clothes. Why did I choose to appear in this outfit?">>
<</if>>
<br><br>
After a short while <<=setup.getNpcName('npc_admin', 'first')>> shows up, <<his npc_admin>> bright white smile cutting through the dim light surrounding the "Usual Place." Walking up to the front of the building, <<he npc_admin>> stops and takes a look around, as if looking for someone. It takes a minute to realise that <<he npc_admin>> might be looking for you. <<His npc_admin>> lack of recognition stings, but you have changed quite a bit since you last saw each other.<br>
<br>
<<printThought "Oh <<getWordGod>>... maybe I should send <<him npc_admin>> a message that I can't make it tonight and just run for the hills...">><br>
<br>
Your phone is in your hand when you remember that that kind of cowardice is what got you in your current predicament in the first place. For <<his npc_admin>> part, <<=setup.getNpcName('npc_admin', 'first')>> never panics even in the face of certain defeat. As far as you can tell. Though <<he npc_admin>> isn't totally perfect, you recall having to help quite a lot to get <<him npc_admin>> through <<his npc_admin>> programming exams back in the university. You scrape up the little bit of willpower you have remaining, take a deep breath, and approach <<him npc_admin>>. Standing behind <<him npc_admin>> you're reminded how much bigger <<he npc_admin>> is than yourself, you cough to get <<his npc_admin>> attention.<br>
<br>
<<if $player.sec_style.body.name == "">>
"@@.npc_admin;Hey there, how can I help you... wait a second... <<=$player.first_name>>? Is that you, <<=$player.first_name>>?@@"
<<else>>
<<if $scene.npcdatenamechange_addon>>
"@@.npc_admin;Hey there, how can I help you... wait a second... <<=$player.original_first_name>>? Is that you, <<=$player.original_first_name>>?@@"<br>
<br>
"@@.npc_admin;<<=$player.original_first_name>>? What happened to you, man? Is this like... some sort of hidden camera thing?@@" <<He npc_admin>> looks around, clearly grasping at straws for an explanation.<br>
<br>
You wince, surprised at how quickly it is that hearing your "old" name sounds weird and unnatural. Bashfully, you look towards the ground, explaining... no rather stumbling, that you go by <<=$player.first_name>> now. You turn away, blushing even harder.<br>
<br>
"@@.npc_admin;<<=$player.first_name>> huh, so, um... wow... I REALLY could use a drink right about now... you wanna join me and we can maybe talk about all the things that have obviously been going on with you?@@"
<<else>>
"@@.npc_admin;Hey there, how can I help you... wait a second... <<=$player.first_name>>? Is that you, <<=$player.first_name>>?@@"<br>
<br>
You turn and smile a bit sheepishly. "@@.npc_admin;Wow, I guess the name should have been a tip-off, you look a lot more... feminine...@@" <<He npc_admin>> pauses a bit awkwardly, as if uncertain how to proceed. "@@.npc_admin;You look good, come on let's head inside and get some drinks and you can tell me all about what's been goin' on with you.@@"
<</if>>
<</if>>
<br><br>
You nod sheepishly.<br>
<br>
"@@.npc_admin;Well, don't get this wrong, but I almost... no... if you hadn't approached me, I would have never guessed it was you. Let me take a closer look at you.@@"<br>
<br>
<<He npc_admin>> moves in way too close for your taste. It normally wouldn't be a problem, since you've known each other for years, but right now you feel vulnerable. You suddenly regret staying, uncertain if you want <<him npc_admin>> to see you like this, since you are unsure if this was forced upon you... or even worse, it was your own free will that allowed this, or would that make it better? You don't have time to answer such questions before <<he npc_admin>> makes <<his npc_admin>> assessment.<br>
<br>
<<if $scene.compareVisuals == "">>
<<if $scene.bespokeComment != "">>
<<=$scene.bespokeComment>>
<<else>>
"@@.npc_admin;Wow, that is quite a difference clothes can make. You changed your wardrobe to something more form fitting. Quite unexpected I have to admit. What's the occasion?@@"
<</if>>
<<else>>
"@@.npc_admin;Wow, that is quite a difference clothes can make. Not only did you change your wardrobe to something more form fitting. <<=$scene.compareVisuals>> Quite unexpected I have to admit. What's the occasion?@@"
<</if>>
<br><br>
You stumble over your own tongue while trying to give a coherent answer, and failing miserably at it. <<=setup.getNpcName('npc_admin', 'first')>> cuts you off in the middle of your... well... "sentence" with "@@.npc_admin;Ah yes, I see. Someone needs a little booze to loosen their tongue. Let's go inside and talk about whatever is going on in your life, if you want to, okay?@@"<br>
<br>
You simply nod, relieved at not having to talk about it anymore here, out in the open.
<br><br>
"@@.npc_admin;So, what are we waiting for. Let's get inside and wasted. Hopefully in that order.@@"
<</if>>
<<case "female">>
<<if $npc_admin.dates == 1>>
You wait for a little bit, a bit nervous.<br>
<br>
<<if $player.identify_as == "female">>
<<printThought "Okay, meeting an old friend for the first time as the new me... should I have worn something more neutral? No... this is who I am, just gotta stay the course...">>
<<else>>
<<printThought "Damn it. I should have changed clothes. Why did I choose to appear in this outfit?">>
<</if>>
<br><br>
After a short while <<=setup.getNpcName('npc_admin', 'first')>> shows up, <<his npc_admin>> bright white smile cutting through the dim light surrounding the "Usual Place." Walking up to the front of the building, <<he npc_admin>> stops and takes a look around, as if looking for someone. It takes you a minute to realise that <<he npc_admin>> might be looking for you. <<His npc_admin>> lack of recognition stings, but you have changed quite a bit since you last saw each other.<br>
<br>
Maybe it's the new outfit, maybe it's just you turning over a new leaf of self-acceptance in general, but you straighten your shoulders and march up to greet your friend.<br>
<br>
Initially distracted <<hes npc_admin>> reaching for <<his npc_admin>> phone as <<he npc_admin>> starts to wave you off. "@@.npc_admin;Sorry, hon, I'm actually waiting for a friend, maybe some other night—@@"<br>
<br>
You interrupt with a snort that draws <<his npc_admin>> attention, <<his npc_admin>> eyes scanning over you with increasing surprise.<br>
<br>
"@@.npc_admin;<<=$player.original_first_name>>? Woah, what happened! I thought you were a woman... and a damn fine looking one at that!@@"<br>
<br>
<<if $player.sec_style.body.name != "">>
You tingle at the compliment and quickly explain that, you are... and it's <<=$player.first_name>> now.
<<else>>
You tingle at the compliment but just vaguely state that you've been making some changes...
<</if>>
<br><br>
<<He npc_admin>> blinks in surprise, obviously even more confused.<br>
<br>
"@@.npc_admin;Okay... so clearly A LOT has happened since you got fired... what say we head in, grab some drinks, and you tell me all about it?@@"<br>
<br>
You can tell <<hes npc_admin>> still off-balance, but, overall, <<hes npc_admin>> taking things fairly well. Then again, you've always gotten supportive vibes from <<him npc_admin>>. You smile, and reply that you'd love that.<br>
<br>
<<He npc_admin>> grins — whatever else is going on "getting some drinks" is definitely something <<he npc_admin>> understands and <<he npc_admin>> leads the way into the bar.
<<else>>
Standing outside The Usual Place, you are feeling very nervous, rocking back and forth from one foot to the other, feeling like a deer exposed in an open field.<br>
<br>
<<printThought "Damn it. I should have changed clothes. Why did I decide to wear this outfit?">><br>
<br>
<<if setup.getTotalValue("feminization") > 5>>
In the back of your mind a quiet, yet seductive, voice whispers that you had better get used to it, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, because you have a bright, pink future ahead of you...<br>
<br>
<</if>>
You wait for a little bit when you hear a voice behind you, almost jumping in surprise.<br>
<br>
"@@.npc_admin;Hey, beautiful, why you waiting out here all alone? The party's inside!@@"<br>
<br>
You turn around not even feeling in control of your body, looking up as if compelled as <<=ps(setup.getNpcName('npc_admin', 'first'))>> expression goes from friendly flirting to shocked recognition to confusion and a dozen other emotions in between.<br>
<br>
For your part, you only feel one emotion: Utter, soul-destroying embarrassment, a feeling of total, abject humiliation from the tippy-top of your head all the way down to the <<if setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>balls of your dainty, heel-pointed feet<<else>>soles of your feet<</if>>.<br>
<br>
After muttering a few words, trying to say at least hello, you finally manage to say hi. Your embarrassed voice pitched at least an octave up from your normal speech making you blush even harder.<br>
<br>
<<if $player.sec_style.body.name == "">>
"@@.npc_admin;<<=$player.first_name>>? What happened to you, man? Is this like... some sort of hidden camera thing?@@" <<He npc_admin>> looks around, clearly grasping at straws for an explanation.<br>
<br>
"N-no" you reply, struggling not to violate your NDA and launch into a FULL explanation of what has happened to you. "@@.pc;I, uh, just decided to make some changes...@@"<br>
<br>
"@@.npc_admin;Changes... wow, yeah, no kidding! Well, far be it from me to disparage anyone's chosen attire. Just... wow, I mean it looks kind of good on you? Shit, what am I saying... look, gotta level with you, I think I could use a drink, whatcha say? I'm buying?@@"<br>
<br>
<<He npc_admin>> starts past you and looks back. "@@.npc_admin;Come on, <<=$player.first_name>>... that is your name right? I mean you look so different, it's like you're a new man, er, girl? Either way, calling you <<=$player.first_name>> just seems off, y'know? And, well, I hear you can change that pretty easy these days, all online, at least according to some billboard I saw...@@" <<he npc_admin>> shakes <<his npc_admin>> head, "@@.npc_admin;Sorry, bit side-tracked, I really need a drink.@@"
<<else>>
<<if $scene.npcdatenamechange_addon>>
"@@.npc_admin;<<=$player.original_first_name>>? What happened to you, man? Is this like... some sort of hidden camera thing?@@" <<he npc_admin>> looks around, clearly grasping at straws for an explanation.<br>
<br>
You wince, surprised at how quickly it is that hearing your "old" name sounds weird and unnatural. Bashfully, you look towards the ground, explaining... no rather stumbling, that it's <<=$player.first_name>> now. You turn away, blushing even harder.<br>
<br>
"@@.npc_admin;<<=$player.first_name>> huh, so, um... wow... I REALLY could use a drink right about now... you wanna join me and we can maybe talk about all the things that have obviously been going on with you?@@"
<<else>>
"@@.npc_admin;Wow, I know you changed names, guess I should have expected something like this. Grats dude, dudette? Well, either way, if this is what you want, more power to ya!@@"<br>
<br>
You smile, happy that, as always, you can count on <<=setup.getNpcName('npc_admin', 'first')>> to have your back.<br>
<br>
"@@.npc_admin;Alright then, <<=$player.first_name>> let's stop jibber-jabbing out here in the cold and get some drinks! Maybe talk about all the things that have obviously been going on with you?@@"
<</if>>
<</if>>
<br><br>
Alcohol, even if just to be something to do other than TALK sounds like a great idea and you hurriedly nod.<br>
<br>
<<His npc_admin>> shoulders relax just a hair as <<he npc_admin>> turns and heads into The Usual Place with you following behind. Still, you feel somehow more confident now, since you've directly approached <<him npc_admin>>, the way you look now. Which is a good thing, you hope.
<</if>>
<<case "namechanged">>
You wait for a bit outside The Usual Place until you see your friend <<=setup.getNpcName('npc_admin', 'first')>> walking up with <<his npc_admin>> patented grin.<br>
<br>
"@@.npc_admin;Hey, my <<callPlayer "npc_admin">>, <<=$player.original_first_name>>! How's it hangin'?@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
Thanks to your present locked and <<if setup.isCage()>>caged<<else>>belted<</if>> condition "it" isn't exactly hanging at all, but that's not exactly a topic you want to bring up with your friend.<br>
<br>
<</if>>
You greet <<him npc_admin>> with a firm handshake and a <<if $npc_admin.fem>>pat on the back<<else>>chest-bump<</if>> that almost knocks you over before taking a deep breath.<br>
<br>
<<He npc_admin>> can sense instantly that there's something off and <<he npc_admin>> listens patiently as you explain that, actually, you've changed your name and go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_admin;Woah, <<=$player.first_name>>? Really, you aren't just pulling my leg here, are you?@@"<br>
<br>
You shake your head.<br>
<br>
"@@.npc_admin;Damn that is... that is quite the change, you wanna tell me why?@@"<br>
<br>
The real reason for your shift seems a bit... complicated to get into standing on the sidewalk in front of a bar (to say nothing of your work NDA) so you punt, nebulously stating that you just felt like a change to kind of mark your "new" life, adding that there might be further changes to come. Feeling suddenly bashful you quickly suggest the two of you head inside and you can talk about more of what's been going on in your life over drinks.<br>
<br>
"@@.npc_admin;Now THAT is speaking my language! Well, just know that whatever you want to call yourself, you're still my friend, now come on let's get in and get wasted, in that order!@@"
<<case "dating">>
You wait for a bit outside The Usual Place until you see your friend <<=setup.getNpcName('npc_admin', 'first')>> walking up with <<his npc_admin>> patented grin.<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
<<if $scene.firstNun>>
<<He npc_admin>> looks at you with a touch of confusion. "@@.npc_admin;Did you, uh... did you join a nunnery?@@" <<if setup.checkVisibleClothingTag('latex') > 50>><<he npc_admin>> seems particularly confused by the fetishistic nature of your religious-themed attire.<</if>><br>
<br>
You laugh and explain that a, no, and b... well, the Church the Goddess all but encourages you to do the sort of thing you and <<he npc_admin>> get up to.<br>
<br>
<<He npc_admin>> looks relieved as <<he npc_admin>> cops <<his npc_admin>> usual feel on your ass as the two of you head into the bar.
<<else>>
<<He npc_admin>> greets you with a slap on the ass and a "@@.npc_admin;How ya doin, slut?@@"<br>
<br>
You smirk and reply that you'd be better with something "hard" inside of you...<br>
<br>
Smiling at you, <<he npc_admin>> plays dumb. "@@.npc_admin;Well, they got a pretty good liquor selection, come on, I'll get you something nice and girly with an umbrella spiked with Everclear.@@"
<</if>>
<<if $scene.compareVisuals == "">>
<br><br>
<<if $scene.bespokeComment != "">>
As you turn to head inside, <<his npc_admin>> gaze glides up and down your body.
<<=$scene.bespokeComment>>
<</if>>
<<else>>
<br><br>
As you turn to head inside, <<his npc_admin>> gaze glides up and down your body. "@@.npc_admin;Wow, look at you! That is quite a difference clothes can make. <<=$scene.compareVisuals>>@@"
<</if>>
<<case 'boyfriend'>>
Greeting you with a hug, <<he npc_admin>> lifts you into the air as you kiss, you savour the wonderful feel of <<his npc_admin>> gentle lips before <<he npc_admin>> finally sets you down.<br>
<br>
<<if $scene.firstNun>>
<<He npc_admin>> looks over your <<if setup.checkVisibleClothingTag('latex') > 50>>kinky <</if>>nun's attire. "@@.npc_admin;Wow, that is... you didn't join a convent, did you?@@" <<He npc_admin>> sounds a little worried.<br>
<br>
You laugh and re-assure <<him npc_admin>> that, while you've certainly been enjoying time at the Church of the Goddess, that you are still a free woman... not that the church would likely have a problem with you continuing your relationship with <<him npc_admin>>.<br>
<br>
"@@.npc_admin;Coo, coo... well you certainly look great in it, makes me feel a tad sinful, not gonna lie!@@" <<He npc_admin>> gestures towards the bar.
<<elseif $scene.compareVisuals == "">>
<<if $scene.bespokeComment != "">>
As you turn to head inside, <<his npc_admin>> gaze glides up and down your body.
<<=$scene.bespokeComment>>
<br><br>
<</if>>
<<else>>
As you turn to head inside, <<his npc_admin>> gaze glides up and down your body. "@@.npc_admin;Wow, look at you! That is quite a difference clothes can make. <<=$scene.compareVisuals>>@@"<br>
<br>
<</if>>
"@@.npc_admin;Come on, let's head inside.@@"<br>
<br>
<<His npc_admin>> arm possessively wrapped around your waist, you head into the bar.
<<default>>
ERROR: unknown npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<<case "nun">>
<<if setup.checkVisibleClothingTag('latex') > 50>>
<<=setup.getNpcName('npc_admin', 'first')>> eyes your kinky nun's outfit with surprise, and lust. "@@.npc_admin;Woah! If church had more of that, I'd consider going!@@"<br>
<br>
You smile and suggest <<he npc_admin>> try visiting the Church of the Goddess sometime.
<<else>>
<<=setup.getNpcName('npc_admin', 'first')>> eyes your nun's outfit with surprise. "@@.npc_admin;Woah! That's a change... did you join some sort of convent?@@"<br>
<br>
You laugh, and explain that no, though you have been spending more time at the Church of the Goddess.
<</if>>
<br><br>
"@@.npc_admin;Hmm, I think I saw an article about them, they're new in town, aren't they? Ah, look at me, talking about religion on a Friday night! Come on, I wanna get my drink on, unless that's a serious sin or something?@@"<br>
<br>
You laugh and assure <<him npc_admin>> that a few drinks with a friend is more than fine and <<he npc_admin>> leads the way into the bar.
<<default>>
<<if $npc_admin.dates == 1>>
You wait for a little bit. After a short while <<=setup.getNpcName('npc_admin', 'first')>> shows up, grinning from one ear to the other.<br>
<br>
"@@.npc_admin;Hey <<=$player.first_name>>. How long has it been since we met like this? <<=setup.getNpcName('npc_exgirlfriend', 'first')>> sure kept you busy before your nuclear fallout, didn't she?@@"<br>
<br>
<<if setup.getTotalValue('humiliation')<5>>
You simply find it to awkward to tell <<=setup.getNpcName('npc_admin', 'first')>> the truth. <<He npc_admin>> is a good friend, but you didn't hang out with <<him npc_admin>> as much as you used to during your time together with <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. You mumble something into your non existent beard that you simply had a lot going on.
<<else>>
You find it awkward to talk with <<=setup.getNpcName('npc_admin', 'first')>> about your plan to remain virgin. But <<he npc_admin>> is a good friend — one you haven't been hanging out with nearly as much as you used to, so <<he npc_admin>> deserves the truth.<br>
<br>
"@@.npc_admin;Woah, man. I had no idea. That takes dedication in this time and age.@@"<br>
<br>
You inform <<him npc_admin>> that you plan to change the whole "virgin" issue as soon as possible.<br>
<br>
"@@.npc_admin;Look at <<=$player.first_name>> freshly back on the market and already making plans! You go dawg!@@"<br>
<br>
<</if>>
<<if $scene.compareVisuals == "">>
"@@.npc_admin;I'm pretty sure we can find someone to distract you from all those worries. Don't worry pal. With your cute-faced persona, I'm sure the ladies will be stormin' your fortress in no time flat!@@"<br>
<br>
<<printThought "Oh boy, you have no idea.">>
<<else>>
"@@.npc_admin;I'm pretty sure we can find someone who's able to distract you from all those worries. Don't worry pal. With your cute-face persona, I'm sure the ladies will be stormin' your fortress in no time flat!@@"<br>
<br>
<<printThought "Oh boy, you have no idea.">><br>
<br>
"@@.npc_admin;I see you've even upped your game for the evening. Trying to get lucky? Here, let me take a look. <<=$scene.compareVisuals>>@@"
<</if>>
<br><br>
You blush a little bit. <<He npc_admin>> called you cute. Not exactly the archetype you were aiming for, but then again, you've been kinda outside the game for a while. A long while... you can't even remember what your "type" was back before <<=setup.getNpcName('npc_exgirlfriend', 'first')>>.<br>
<br>
"@@.npc_admin;So, what are we waiting for? Let's get inside and get wasted! Hopefully in that order.@@"
<<else>>
You wait for a little bit. After a short while <<=setup.getNpcName('npc_admin', 'first')>> shows up, grinning from one ear to the other.<br>
<br>
<<if $scene.compareVisuals != "">>
"@@.npc_admin;Woah, mixing up your look again! <<=$scene.compareVisuals>>@@"
<<else>>
"@@.npc_admin;Hey, <<=$player.first_name>>! How's it hanging? What are we waiting for? Let's get inside and get wasted! Hopefully in that order.@@"
<</if>>
<</if>>
<</switch>>
<br><br>
<<if $scene.npcdatefirstscene == "noshow">>
[<<moveTo "room_usual_place_inside" "Go inside." 30 "<<set $currentcall = false>><<set $roomchange=false>>">>]<br>
[<<moveTo "room_citymap" "City Centre." 300 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
[<<moveTo "event_admin_drink_1_1" 'Go inside "the Usual Place."' 180>>]
<</if>>
</div>/*#
#desc: admin calls you because you failed to meet for drinks on time
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_admin' 3>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_admin', 'first')>>! Oh shit. You forgot that you were supposed to go for a drink together today.<br>
<br>
<<if $npc_admin.flags.ageofconfusion>>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>, sorry for the last minute but... I won't be able to make it tonight. I have a lot on my mind currently and don't feel like talking about it. Sorry.@@"<br>
<br>
<<He npc_admin>> hangs up, and though you try to call back, <<he npc_admin>> doesn't pick up. After a while you give up in frustration.
<<else>>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>, if you didn't feel like going for a drink, you should have told me so before I came all the way out here. Well, maybe another time.@@"<br>
<br>
You apologise to <<=setup.getNpcName('npc_admin', 'first')>> and promise you'll make it up to <<him npc_admin>> next time.
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = true>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: admin calls you because you failed to meet for drinks on time
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_admin', 'first')>>!<br>
<br>
<<printThought "Oh crap, how could I forget about the code red?">><br>
<br>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>, I'm here at The Usual Place like you asked, did you get stuck in traffic or something?@@"<br>
<br>
[<<moveTo "event_admin_code_red_1_failed_2" "Say you're running late, but you're on your way." 0 "<<set $scene.noshow = false>>">>]<br>
[<<moveTo "event_admin_code_red_1_failed_2" "Apologise say something came up." 0 "<<set $scene.noshow = true>>">>]
</div>/*#
#desc: admin calls you because you failed to meet for drinks on time
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.noshow>>
<<incrementEmotion 'anger' 'npc_admin' 10>>
<<else>>
<<incrementEmotion 'anger' 'npc_admin' 5>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.noshow>>
"@@.npc_admin;What... you called a code red man, what's going on, are you okay?@@"<br>
<br>
Suddenly worried what your large, ex-military friend might be willing to do you quickly re-assure <<him npc_admin>> that, while you're really, really sorry you aren't going to make it to the bar tonight.<br>
<br>
You can tell <<hes npc_admin>> quite annoyed, but <<hes npc_admin>> holding it in.<br>
<br>
"@@.npc_admin;Not cool man, not cool. I hope you manage to sort whatever was bothering you out because I ain't happy being jerked around like this.@@"<br>
<br>
<<He npc_admin>> hangs up first.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
You profusely apologise and promise you'll be there soon and <<he npc_admin>> says <<if $npc_admin.fem>>she'll<<else>>he'll<</if>> meet you outside. Hanging up you rush to the Usual Place.<br>
<br>
Arriving breathless you stand outside looking around, cursing yourself for your tardiness.<br>
<br>
[<<moveTo "event_admin_drink_1" 'Wait for <<=setup.getNpcName("npc_admin", "first")>>.' 600 "<<set $currentcall = false>>">>]
<</if>>
</div>/*#
#desc: enter bar with admin
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.dates == 1>>
<<set $npc_barkeeper.profile = true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.dates == 1>>
Ah yes, "the Usual Place." You haven't been here for a while. You try to remember why exactly that was the case, but all you can recall is that <<=setup.getNpcName('npc_exgirlfriend', 'first')>> did not like the place and refused to go with you. Walking inside is odd, you remember it being a bit different. They've changed the lighting, so the whole bar feels full of atmosphere, and reworked the interior to make it look more old school. Nice.<br>
<br>
Looking around, the clientele hasn't changed that much. A mixture of all genders, between the ages of 25 and 40. Only a few seem younger, some might be older. Hard to tell in this light. You've been coming here together with <<=setup.getNpcName('npc_admin', 'first')>> since you met <<him npc_admin>> back in college. Looking at the bar you fail to recognise the Barkeeper.<br>
<br>
<<printThought "Hmmm... looks like Logan doesn't work here anymore.">><br>
<br>
Seeing your confusion, <<=setup.getNpcName('npc_admin', 'first')>> explains things to you: "@@.npc_admin;You see, <<=$player.first_name>>, Logan stopped working two years ago, shortly after you were here the last time. We had a big goodbye party, when he retired for good. The Lady working the Bar is his daughter <<=setup.getNpcName('npc_barkeeper', 'first')>>. Come on, I'll introduce you.@@"<br>
<br>
[<<moveTo "event_admin_drink_1_1_barkeeper" "Go to the bar." 180>>]
<<elseif $npc_admin.dates == 2>>
"The Usual Place." You really like what they've done with the lighting. The whole place feels so much more alive than when you used to hang out here, before you got together with <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. They reworked the interior to make it look really old school. Nice. The clientele is business as usual: A mixture of all genders, between the age of 20 and 40. Only a few seem younger, some might be older. Hard to tell in this light. This is the place to be, and you've been coming here together with <<=setup.getNpcName('npc_admin', 'first')>> since you met <<him npc_admin>> while you were in college. Standing behind the bar is <<=setup.getNpcName('npc_barkeeper', 'first')>>.<br>
<br>
[<<moveTo "event_admin_drink_1_2a" 'Have some drinks together with <<=setup.getNpcName("npc_admin", "first")>>.' 180 "<<setTmpEffect 'tipsy'>>">>]
<<else>>
You enter "The Usual Place." The clientele is business as usual: A mixture of all genders, between the age of 20 and 40. Only a few seem younger, some might be older. Hard to tell in this light. Standing behind the bar is <<=setup.getNpcName('npc_barkeeper', 'first')>>, nodding in your general direction as <<=setup.getNpcName('npc_admin', 'first')>> and you enter the bar.<br>
<br>
[<<moveTo "event_admin_drink_1_2a" 'Have some drinks together with <<=setup.getNpcName("npc_admin", "first")>>.' 180 "<<setTmpEffect 'tipsy'>>">>]
<</if>>
</div>/*#
#desc: introduced to barkeeper, mistaken for a girl
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 3 'little' $SEEN_FRIEND>>
<<storeVisual $player $npc_barkeeper>>
<<if $player.sec_style.body.name != "">>
<<set $npc_barkeeper.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> moves towards the bar. Built like a tank and nearly as powerful the crowd parts before <<him npc_admin>> making it easy for you to follow.<br>
<br>
"@@.npc_admin;Hey there, <<=setup.getNpcName('npc_barkeeper', 'first')>> how's it going? Tough night?@@"<br>
<br>
"@@.npc_barkeeper;<<=setup.getNpcName('npc_admin', 'other')>>, how are you?@@"<br>
<br>
"@@.npc_admin;<<=setup.getNpcName('npc_barkeeper', 'first')>>, how many times must I ask you to call me <<=setup.getNpcName('npc_admin', 'first')>>?@@"<br>
<br>
"@@.npc_barkeeper;At least once more, <<=setup.getNpcName('npc_admin', 'other')>>, as always. Anyway, who is that cute girl in your shadow? A new conquest, I assume?@@"<br>
<br>
<<if $scene.npcdatefirstscene == "unisex">>
Unable to stifle it, <<=ps(setup.getNpcName('npc_admin', 'first'))>> laughter can be heard in the whole bar.<br>
<br>
"@@.npc_admin;Hahahahahaha! Oh boy, you kind of did provoke that one with your outfit, didn't you <<=$player.first_name>>?@@"<br>
<br>
Grinning from one ear to the other <<he npc_admin>> continues, "@@.npc_admin;No, that is <<=$player.first_name>> <<=$player.last_name>>," a good friend of mine who I owe quite a lot. And he is as a matter of fact... errr...@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> looks at you, slightly confused, tilting <<his npc_admin>> head and starting slowly "@@.npc_admin;Male...ish?@@"<br>
<br>
You nod vigorously.<br>
<br>
"@@.npc_admin;Yup, 100% male. A paragon of masculinity, in fact!@@"<br>
<br>
Your face checks a few different shades of red while you try to sink into the floor.<br>
<br>
"@@.npc_barkeeper;Oh God, I am terribly sorry Mr. <<=$player.last_name>>. I would never take the liberty to assume your gender,@@" <<=setup.getNpcName('npc_barkeeper', 'first')>> blurts out, continuing with a fainter voice, "@@.npc_barkeeper;Please don't sue me! I could never afford that!@@"<br>
<br>
You assure her that you would never sue someone over assuming your or anyone else's gender, honest mistakes like these happen.<br>
<br>
"@@.npc_barkeeper;Here, let me make it up to you. Your drinks for this evening are on the house!@@"<br>
<br>
You think about declining, but free drinks are free drinks, so you thank her and accept.
<<elseif $scene.npcdatefirstscene == "female">>
Walking behind <<=setup.getNpcName('npc_admin', 'first')>> only serves to drive home how much bigger and stronger <<he npc_admin>> is<<if setup.getItemObjFromType("shoes").heels>>. Even with the aid of your heels <<if $npc_admin.fem>>... well, not that she isn't wearing them as well. You realise it's a bit odd that, despite being larger and heavier than <<=setup.getNpcName('npc_technician', 'first')>>, the only complaint <<=setup.getNpcName('npc_admin', 'first')>> ever made to you about heels was the challenge of finding boots that would fit her muscular calves. In any case, <</if>><</if>><<he npc_admin>> towers over you, and it's no wonder <<=setup.getNpcName('npc_barkeeper', 'first')>> had to peer around <<him npc_admin>> to even notice you.<br>
<br>
<<if $player.sec_style.body.name == "">>
"@@.npc_admin;Um, actually, that's <<=$player.first_name>>... you remember him, right?@@"<br>
<br>
"@@.npc_barkeeper;"Him" seems a bit of a reach, but I would never seek to dictate anyone's gender... wow, that cutie of a wingman you used to drag around? I can see it now, but I never would have recognised him, wow! I gotta say that new look SO much better suits your figure, you were cute before, but now you're just adorable!@@"
<<else>>
"@@.npc_admin;Um, actually, that's <<=$player.original_first_name>>... shit! I mean, that was her old name, now she goes by <<=$player.first_name>>.@@" <<He npc_admin>> looks at you pained, "@@.npc_admin;really sorry about using the wrong name but... it's hard to establish continuity and stuff.@@"<br>
<br>
You swear you see a flicker of jealousy go over <<=ps(setup.getNpcName('npc_barkeeper', 'first'))>> face as she looks between you and <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_barkeeper;<<=$player.first_name>>? Okay, they used to be your cute wingman! I gotta say that new look SO much better suits your figure, you were cute before, but now you're just adorable!@@"
<</if>>
<br><br>
<<printThought "Could we get, like... a meteor impact like... now? I didn't think it was possible to be this embarrassed!">><br>
<br>
You somehow mumble a response and then <<=setup.getNpcName('npc_admin', 'first')>> comes to your rescue like your own personal knight in shining, er, knight in a fitted silk shirt?<br>
<br>
"@@.npc_admin;Yeah, so <<if $player.sec_style.body.name == "">>he's<<else>>she's<</if>> been having a bit of an eventful life since the last time we were in, but we thought we'd take a nice night to relax at the old haunt.@@"<br>
<br>
"@@.npc_barkeeper;Well, let me thank you for thinking of The Usual Place for such an occasion and express my appreciation of your new look by saying that tonight you drink free. In fact, let me whip you something up to get started!@@"<br>
<br>
Her hands a blur behind the bar, it is but a few moments before you have a pink cocktail sitting in front of you in a slender martini glass.<br>
<br>
"@@.npc_barkeeper;I'll leave you two to your date then.@@"<br>
<br>
<<printThought "The way she said that... she sounded kind of sad? And did she briefly glare at me?">><br>
<br>
"@@.npc_admin;Uh, it's not actually a date, date, we're just friends getting together for a drink...@@"<br>
<br>
The feeling of relief coming off <<=setup.getNpcName('npc_barkeeper', 'first')>> is almost palpable, though <<=setup.getNpcName('npc_admin', 'first')>> seems somehow oblivious.<br>
<br>
"@@.npc_barkeeper;Oh, of course, well, let me know if there's ANYTHING I can do for you.@@"<br>
<br>
She winks at <<=setup.getNpcName('npc_admin', 'first')>> and <<he npc_admin>> flashes back with <<his npc_admin>> signature smile.
<<else>>
<<if $scene.npcdateclothingstyle!="female">>
<<printThought "Wait. Does she mean me?">>
<<else>>
<<printThought "Wait. Does she mean me? Oh wait... of course she means me.">>
<</if>>
<br><br>
Unable to stifle it, <<=ps(setup.getNpcName('npc_admin', 'first'))>> laughter can be heard through the whole bar.<br>
<br>
"@@.npc_admin;Hahahahahaha! Ouch.@@" <<=setup.getNpcName('npc_admin', 'first')>> says looking towards you, grinning like an idiot,
<<if $scene.npcdateclothingstyle!="female">>
"@@.npc_admin;You should really hit the gym more often man! No, that is <<=$player.first_name>> <<=$player.last_name>>, a good friend of mine.@@" <<he npc_admin>> tells the barkeeper, adding slightly quieter "@@.npc_admin;Who happens to be male.@@"<br>
<br>
<<printThought "Dammit, hasn't my masculinity suffered enough lately?">><br>
<br>
"@@.npc_barkeeper;Oh God, I am terribly sorry Mr. <<=$player.last_name>>. Here, let me make it up to you. Your drinks tonight are on the house.@@"<br>
<<else>>
"@@.npc_admin;You kinda ran into that one head on. No, that is <<=$player.first_name>> <<=$player.last_name>>, a good friend of mine.@@" <<he npc_admin>> tells the barkeeper, adding slightly quieter "@@.npc_admin;Who happens to be male. Really.@@"<br>
<br>
<<printThought "Normally I call that a huge dent to my masculinity. But let's be real for a second, it's more like a huge boost for my femininity...">><br>
<br>
"@@.npc_barkeeper;Oh God, I am terribly sorry <<=$player.first_name>>. Here, let me make it up to you. Your drinks tonight are on the house.@@"<br>
<</if>>
<br>
You tell her she should not worry too much, mistakes like this do happen and you blame it on the lighting. Privately, however, there's no question your masculinity just took an enormous dent. Fortunately a few drinks and cocktails from <<=ps(setup.getNpcName('npc_barkeeper', 'first'))>> repertoire makes you forget the whole incident pretty quickly.
<</if>>
<br><br>
[<<moveTo "event_admin_drink_1_2" 'Share some drinks with <<=setup.getNpcName("npc_admin", "first")>>.' 2500 "<<setTmpEffect 'tipsy'>>">>]
</div>/*#
#desc: first time drinking with admin, tries to cheer you up
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<<applyFatigue 10>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You enjoy a good night together with your friend <<=setup.getNpcName('npc_admin', 'first')>>. Since you're getting your fill this evening for free you don't even have to worry about money for the evening. You can finally relax and forget about all these troubles you had lately with your work and... other things.<br>
<br>
You talk to <<=setup.getNpcName('npc_admin', 'first')>>, <<he npc_admin>> asks you about your new position, but you kind of evade a direct answer. Ignoring your embarrassed feelings about what has happened, you're not actually sure how much you could tell <<him npc_admin>> without getting into trouble so you politely steer things away. You tell <<him npc_admin>> a few details of the rather boring stuff then ask <<him npc_admin>> how things are back down at Cloud Data Service.<br>
<br>
"@@.npc_admin;Well, it is just not really the same without you. Performance has gone up 80%, it looks like the Boss's hair is finally growing back and everyone got a raise.@@"<br>
<br>
You try to object, but <<=setup.getNpcName('npc_admin', 'first')>> interrupts you before you can finish that sentence.<br>
<br>
"@@.npc_admin;Relax, I'm joking. Things got boring without you, but the rest is business as usual. Analyzing the shit out of data, looking for patterns, you know the drill. You may be bored up on fifty-two, but at least it sounds like you get some human interaction, and let's be real for a moment. Your new Boss, <<=setup.getNpcName('npc_manager', 'other')>> is pretty smoking. I'd love to get to know her better. She seems very confident and that is something I can respect. Plus, have you seen those legs? Man... they reach to the floor and then some! But I'm not allowed into the upper floors and every time I see her down at Cloud Data Service I swear, I stutter like a freshman! Hmmm... you think you can do something?@@"<br>
<br>
<<printThought "Oh, oh.">><br>
<br>
[<<moveTo "event_admin_drink_1_2_manager" "Laugh things off and continue on." 300 "<<set $scene.warn_off=false>>">>]<br>
[<<moveTo "event_admin_drink_1_2_manager" "Say that, even if such an opportunity seems unlikely, you would really rather <<he npc_admin>> didn't do anything like that." 300 "<<set $scene.warn_off=true>>">>]
</div>/*#
#desc: first time drinking with admin, talk about him + manager
#status: FINISHED 0.7.2.0
#ignore_spell: dataservice
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.dataservice_encounter.handjob_finish == "" && !setup.checkItemOwned("technician_intro_panties") && !setup.checkItemOwned("technician_intro_panties_package")>>
<<addItem "card_technician">>
<</if>>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_0'
0
'event_admin_theme_manager_1'
true
>>
<<if $scene.warn_off>>
<<set $npc_admin.flags.monogomous_manager = true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.warn_off>>
A little awkwardly you laugh, then find yourself surprisingly serious as you ask <<=setup.getNpcName('npc_admin', 'first')>> if <<he npc_admin>> could not think of your manager that way.<br>
<br>
<<He npc_admin>> looks at you with a sly grin, "@@.npc_admin;Callin' dibs, huh? Never mind, that's cool and hey, I wish you luck... from what I hear, she's quite the woman, but if you think you can handle it well... I won't get in the way or anything.@@"<br>
<br>
You find yourself surprisingly relieved by this promise and <<he npc_admin>> soon continues on to another subject.<br>
<br>
<<switch $npc_technician.flags.dataservice_encounter.handjob_finish>>
<<case ''>>
<<if setup.checkItemOwned("technician_intro_panties") || setup.checkItemOwned("technician_intro_panties_package")>>
"@@.npc_admin;Speaking of lovely women, that cute gal from the Tech Department has been bugging me for days now asking about you. What was her name again? <<=setup.getNpcName('npc_technician', 'first')>>...<<=setup.getNpcName('npc_technician', 'full')>>. Anyway, when I told her I was going to see you tonight she made me promise to remind you to keep in touch. I dunno if she was playing coy before due to working together and office romance challenges but it sounds like the runway's clear and you should totally hit her up!@@"<br>
<<else>>
"@@.npc_admin;Speaking of lovely women, that cute gal from the Tech Department has been bugging me for days now asking about you. What was her name again? <<=setup.getNpcName('npc_technician', 'first')>>...<<=setup.getNpcName('npc_technician', 'full')>>. Anyway, when I told her I was going to see you tonight she <<if $npc_technician.flags.dataservice_encounter.asked_for_help>>practically begged<<else>>asked<</if>> me to give you this.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> hands you a card with <<=ps(setup.getNpcName('npc_technician', 'first'))>> private contact information.
<</if>>
<<case 'mouth' 'hand' 'beg'>>
"@@.npc_admin;Speaking of lovely women, <<=setup.getNpcName('npc_technician', 'first')>>, that cute gal from the Tech Department keeps asking how you're doing. You should give her a ring, she totally has the hots for you!@@"<br>
<br>
<<printThought "Not a challenge to guess why...">>
<<case 'fail'>>
"@@.npc_admin;Speaking of lovely women, <<=setup.getNpcName('npc_technician', 'first')>>, that cute gal from the Tech Department keeps asking how you're doing.@@"
<<default>>
ERROR unknown technician dataservice encounter handjob finish: <<=$npc_technician.flags.dataservice_encounter.handjob_finish>>
<</switch>>
<br><br>
"@@.npc_admin;I didn't realise the two of you were close, <<=setup.getNpcName('npc_technician', 'first')>>, <<=setup.getNpcName('npc_manager', 'other')>>... you trying to put together a harem or something?@@" <<He npc_admin>> laughs, and you join in at the absurd idea. "@@.npc_admin;Anyway, she told me you should contact her, that she has a few things she'd like to talk to you about.@@"
<<else>>
You tell <<=setup.getNpcName('npc_admin', 'first')>> that you don't really have that sort of relationship. Besides, you hastily add, she is a very busy woman, and has hardly time for anything as far as you know, which isn't even a lie. You simply left out a few peculiar details.<br>
<br>
<<switch $npc_technician.flags.dataservice_encounter.handjob_finish>>
<<case ''>>
"@@.npc_admin;Yeah, it was a stupid idea to begin with. Things would become awkward, if I really managed to date your manager. Talking about bossy! Oh, that reminds me. That cute gal from the Tech Department has been bugging me for days now asking about you. What was her name again? <<=setup.getNpcName('npc_technician', 'first')>>...<<=setup.getNpcName('npc_technician', 'full')>>. Anyway, when I told her I was going to see you tonight she <<if $npc_technician.flags.dataservice_encounter.asked_for_help>>practically begged<<else>>asked<</if>> me to give you this.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> hands you a card with <<=ps(setup.getNpcName('npc_technician', 'first'))>> private contact information.
<<case 'mouth' 'hand' 'beg'>>
"@@.npc_admin;Yeah, it was a stupid idea to begin with. Things would become awkward, if I really managed to date your manager. Talking about bossy! Not really much at the office, though <<=setup.getNpcName('npc_technician', 'first')>>, that cute gal from the Tech Department keeps asking how you're doing. You should give her a ring, she totally has the hots for you!@@"<br>
<br>
<<printThought "Not a challenge to guess why...">>
<<case 'fail'>>
"@@.npc_admin;Yeah, it was a stupid idea to begin with. Things would become awkward, if I really managed to date your manager. Talking about bossy! Not really much at the office, though <<=setup.getNpcName('npc_technician', 'first')>>, that cute gal from the Tech Department keeps asking how you're doing.@@"
<<default>>
ERROR unknown technician dataservice encounter handjob finish: <<=$npc_technician.flags.dataservice_encounter.handjob_finish>>
<</switch>>
<br><br>
"@@.npc_admin;I didn't realise the two of you were close, but looks to me like your game is still pretty much on spot. She told me you should contact her, that she has a few things she'd like to talk to you about.@@"
<</if>>
<br><br>
[<<moveTo "event_admin_drink_1_2a" "Chat for a bit." 1800>>]
</div>/*#
#desc: theme chatting with admin
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextTheme = setup.getNextForcedTheme('npc_admin')>>
<<if _nextTheme != "">>
<<initRoom>>
<<set $scene.returnPassageTheme = "event_admin_drink_1_2a">>
<<set $scene.returnPassageList = "event_admin_drink_1_2a_details">>
<<set $scene.currentNpcTheme = "_forced">>
<<moveTo _nextTheme>>
<</if>>
<<set $scene.code_red = $npc_admin.flags.rare_meeting.code_red>>
<<set $npc_admin.flags.rare_meeting.code_red = false>>
<<if setup.getNpcThemes('npc_admin') == 0>>
<<set $now = setup.setNextDate($now, 0, 22, 0)>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() > 22>>
After a long evening with you friend the hour has turned late.<br>
<br>
<<if $npc_admin.dates == 1>>
"@@.npc_admin;Well, I don't know about you, but I feel pretty done. I think we better hit the road to get some sleep. Gotta work out tomorrow morning.@@"<br>
<br>
[<<moveTo "event_admin_drink_1_2_leave" "Make yourself ready to leave." 180>>]
<<elseif $scene.stayAfter>>
[<<moveTo "event_admin_drink_after_trigger" "Continue." 0>>]
<<elseif $npc_admin.flags.knowManagerTruth == 1 && -1 == setup.findThemeId('npc_admin', 'work', 'theme_admin_work_5')>>
[<<moveTo "event_admin_theme_mistress_1" "You think you've about had enough to drink for tonight. Maybe it's time to head home." 300>>]<br>
<<elseif !$scene.code_red && $now.getUTCDay() == 5 && $npc_admin.dates >= 2 && (!$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition == "Failed")) && $npc_manager.stage > 1>>
[<<moveTo "event_admin_talk_gym" "Make yourself ready to leave." 180>>]
<<elseif ($npc_admin.flags.relationship == 'boyfriend' || $npc_admin.flags.relationship == 'friendswbenefits')>>
<<if State.hasPlayed("event_admin_sex_first_5")>>
[<<moveTo "event_admin_sex_repeat_1" "Get ready to leave." 180>>]
<<else>>
[<<moveTo "event_admin_sex_first_1" "Get ready to leave." 180>>]
<</if>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'male' && !State.hasPlayed('event_bar_pickup_8')>>
[<<moveTo "event_bar_pickup_1" "Make yourself ready to leave." 240>>]
<<else>>
[<<moveTo "room_usual_place_inside" "Make yourself ready to leave." 240>>]
<</if>>
<<elseif setup.getNpcThemes('npc_admin')>0>>
You continue to have a few drinks with <<=setup.getNpcName('npc_admin', 'first')>>, and ponder what to talk about.<br>
<br>
<<if $scene.npc_datethemes < 3>>
<<switch $scene.npc_datethemes>>
<<case 0>>
"@@.npc_admin;You look like you have something to talk about. Come on, hit me. Not physically of course, though it's not like you could hurt me in a thousand years.@@"
<<case 1 >>
"@@.npc_admin;Give me a second, I'll get us more to drink okay? You think of the next topic while you wait for me to return!@@"
<<case 2>>
"@@.npc_admin;Is there even alcohol in this? I don't feel tipsy at all. Don't the two of you agree? Anyway, you were saying? But this time one after another, okay?@@"
<</switch>>
<br><br>
<<printNpcThemeCategory
'npc_admin'
'event_admin_drink_1_2a'
'event_admin_drink_1_2a_details'
>>
<<if $npc_admin.dates == 1>>
[<<moveTo "event_admin_drink_1_2_leave" "Go." 180>>]
<<elseif $scene.stayAfter>>
[<<moveTo "event_admin_drink_after_trigger" "Continue." 0>>]
<<elseif $npc_admin.flags.knowManagerTruth == 1 && -1 == setup.findThemeId('npc_admin', 'work', 'theme_admin_work_5')>>
[<<moveTo "event_admin_theme_mistress_1" "You think you've about had enough to drink for tonight. Maybe it's time to head home." 300>>]<br>
<<elseif !$scene.code_red && $now.getUTCDay() == 5 && $npc_admin.dates >= 2 && (!$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition == "Failed")) && $npc_manager.stage > 1>>
[<<moveTo "event_admin_talk_gym" "Make yourself ready to leave." 180>>]
<<elseif ($npc_admin.flags.relationship == 'boyfriend' || $npc_admin.flags.relationship == 'friendswbenefits')>>
<<if State.hasPlayed("event_admin_sex_first_5")>>
[<<moveTo "event_admin_sex_repeat_1" "Get ready to leave." 180>>]
<<else>>
[<<moveTo "event_admin_sex_first_1" "Get ready to leave." 180>>]
<</if>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'male' && !State.hasPlayed('event_bar_pickup_8')>>
[<<moveTo "event_bar_pickup_1" "Make yourself ready to leave." 240>>]
<<else>>
[<<moveTo "room_usual_place_inside" "Make yourself ready to leave." 240>>]
<</if>>
<<else>>
<<if $npc_admin.dates == 1>>
"@@.npc_admin;Well, I don't know about you, but I feel pretty done. I think we better hit the road to get some sleep. Gotta work out tomorrow morning.@@"<br>
<br>
[<<moveTo "event_admin_drink_1_2_leave" "Make yourself ready to leave." 180>>]
<<elseif $scene.stayAfter>>
[<<moveTo "event_admin_drink_after_trigger" "Continue." 0>>]
<<elseif $npc_admin.flags.knowManagerTruth == 1 && -1 == setup.findThemeId('npc_admin', 'work', 'theme_admin_work_5')>>
[<<moveTo "event_admin_theme_mistress_1" "You think you've about had enough to drink for tonight. Maybe it's time to head home." 300>>]<br>
<<elseif !$scene.code_red && $now.getUTCDay() == 5 && $npc_admin.dates >= 2 && (!$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition == "Failed")) && $npc_manager.stage > 1>>
[<<moveTo "event_admin_talk_gym" "Make yourself ready to leave." 180>>]
<<elseif ($npc_admin.flags.relationship == 'boyfriend' || $npc_admin.flags.relationship == 'friendswbenefits')>>
<<if State.hasPlayed("event_admin_sex_first_5")>>
[<<moveTo "event_admin_sex_repeat_1" "Get ready to leave." 180>>]
<<else>>
[<<moveTo "event_admin_sex_first_1" "Get ready to leave." 180>>]
<</if>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'male' && !State.hasPlayed('event_bar_pickup_8')>>
[<<moveTo "event_bar_pickup_1" "Make yourself ready to leave." 240>>]
<<else>>
[<<moveTo "room_usual_place_inside" "Make yourself ready to leave." 240>>]
<</if>>
<</if>>
<<else>>
You enjoy the rest of the night together with <<=setup.getNpcName('npc_admin', 'first')>> talking about the past and possible futures, what went wrong with all the dreams you had after College, discuss the state of the world and how the war changed everything for everyone. You try not to get into politics, but as the night progresses you fail miserably. After some hours you both decide it's time you head home.<br>
<br>
<<if $npc_admin.dates == 1>>
[<<moveTo "event_admin_drink_1_2_leave" "Make yourself ready to leave." 180>>]
<<elseif $scene.stayAfter>>
[<<moveTo "event_admin_drink_after_trigger" "Continue." 0>>]
<<elseif $npc_admin.flags.knowManagerTruth == 1 && -1 == setup.findThemeId('npc_admin', 'work', 'theme_admin_work_5')>>
[<<moveTo "event_admin_theme_mistress_1" "<<He npc_admin>> finishes <<his npc_admin>> drink and raises a final question..." 300>>]<br>
<<elseif !$scene.code_red && $now.getUTCDay() == 5 && $npc_admin.dates >= 2 && (!$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition == "Failed")) && $npc_manager.stage > 1>>
[<<moveTo "event_admin_talk_gym" "Make yourself ready to leave." 240>>]
<<elseif ($npc_admin.flags.relationship == 'boyfriend' || $npc_admin.flags.relationship == 'friendswbenefits')>>
<<if State.hasPlayed("event_admin_sex_first_5")>>
[<<moveTo "event_admin_sex_repeat_1" "Get ready to leave." 180>>]
<<else>>
[<<moveTo "event_admin_sex_first_1" "Get ready to leave." 180>>]
<</if>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'male' && !State.hasPlayed('event_bar_pickup_8')>>
[<<moveTo "event_bar_pickup_1" "Make yourself ready to leave." 240>>]
<<else>>
[<<moveTo "room_usual_place_inside" "Make yourself ready to leave." 240>>]
<</if>>
<</if>>
</div>/*#
#desc: admin theme details
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.npc_datethemes >= 3>>
<<initRoom>>
<<moveTo 'event_admin_drink_1_2a'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_admin;Whatcha wanna discuss, <<=$player.first_name>>?@@"<br>
<br>
<<printNpcThemeDetails
'npc_admin'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
</div>/*#
#desc: finish drinking with admin
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You decide it'd be a good idea to hit the toilets before going home since it is a a bit of a walk and you don't want any accidents to happen. <<getWordGod>> knows the last thing you need right now is getting a ticket for "public indecency" or "indecent exposure".<br>
<br>
[<<moveTo "event_gloryhole_1_1" "Go to the Toilets." 180>>]
</div><<include enterroom>>
dummy passage/*#
#desc: intro to first evil admin training
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<elseif $fetish.get_raped>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<elseif ($npc_manager.affection - $npc_manager.anger) <= 8>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin","npc_admin_evil") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You nod obediently and reply that, of course, you will do your duty. She sighs in relief before turning to the door. "@@.npc_manager;Ah, that would be <<him npc_admin>> now.@@"
<<else>>
You shake your head. The thought of having to deal with that, even if <<=setup.getNpcName("npc_manager","formal")>> is technically there to "protect" you...<br>
<br>
<<if $fetish.get_raped>>
She frowns. "@@.npc_manager;Well, unfortunately for you, I really have no time for your stubbornness. You will do your duty, and like it, else it will be followed by another punishment at my hand — do I make myself clear? Now keep quiet, this must be <<him npc_admin>> now.@@"
<<elseif ($npc_manager.affection - $npc_manager.anger) > 8>>
She sighs, but then smiles at you. "@@.npc_manager;You poor, sweet thing... you know I would never let anything bad happen to you. Just stay close and be polite — I will deal with things, but I still need to formally inform <<him npc_admin>> of the promotion. Come, that must be <<him npc_admin>> now.@@"
<<else>>
She sighs in exasperation. "@@.npc_manager;You really are quite the stubborn thing sometimes. Very well, I will deal with this matter... just stay close while I inform <<him npc_admin>> of <<his npc_admin>> promotion. Come, that must be <<him npc_admin>> now.@@"
<</if>>
<</if>>
<br><br>
<<printThought "What, but I didn't hear anything...">><br>
<br>
As if on cue, <<=setup.getNpcName("npc_admin","formal")>> swaggers through the door, gracing you with a curled-lip leer.<br>
<br>
<<if $scene.obey || $fetish.get_raped>>
[<<moveTo "event_admin_evil_training_1_2" "Wait quietly." 60>>]
<<else>>
[<<moveTo "event_admin_evil_training_1_end" 'Stand nervously by <<=ps(setup.getNpcName("npc_manager","formal"))>> side.' 60>>]
<</if>>
</div>/*#
#desc: decline to help evil admin with his training
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin","npc_admin_evil") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stand nervously next to <<=setup.getNpcName("npc_manager","formal")>>, barely fighting back the urge to curl up against her for safety.<br>
<br>
"@@.npc_manager;So, as you might have heard, your recent efforts in regards to the Cloud Data Science merger have been very much noticed. Therefore I am to inform you that you have been promoted to the position of assistance vice president in charge of mergers and acquisitions. Normally there are some additional formalities with such a promotion but... well, I know we are both quite busy so I think we can just skip over all that, hmm?@@"<br>
<br>
<<=setup.getNpcName("npc_admin","formal")>> remains stiff and unreadable as <<his npc_admin>> attention turns towards you. "@@.npc_admin;But I thought I was going to get the opportunity to play with her today. After all, I really should prove my ability to... handle a subordinate.@@"<br>
<br>
Now you do find yourself inching closer to <<=setup.getNpcName("npc_manager","formal")>>, nervously taking hold of her arm like a frightened schoolgirl.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> stands firm and stares <<him npc_admin>> down. "@@.npc_manager;Plans change. If you have a problem, you can take it up with Human Resources, but otherwise I believe we are done for today. Good day, <<=setup.getNpcName("npc_admin","other")>>.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","formal")>> stares at you for another few moments and then snorts and storms off. Only once you have heard both doors close do you let out your breath and loosen the death-grip you had taken on your <<=ps(setup.getNpcName("npc_manager","title"))>> arm.<br>
<br>
"@@.npc_manager;I am sorry about that.@@" She states softly, "@@.npc_manager;I know what happened to your friend was... traumatising. If there was another way but... well, for now things are as they are,@@" leaning close she whispers in your ear, her voice all but inaudible. "@@.npc_manager;But I promise that I am working to change things, and with your help...@@"<br>
<br>
Pulling back, she smiles and gives your shoulder a squeeze before leading you out of the room and gesturing towards your desk.<br>
<br>
"@@.npc_manager;How about you distract yourself with work and forget this whole thing even happened?@@"<br>
<br>
You nod and return to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: evil admin first training
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'very' $SEEN_FRIEND>>
<<if $npc_admin.flags.evil < 3>>
<<set $npc_admin.flags.evil = 3>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin","npc_admin_evil") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You stand nervously as <<=setup.getNpcName("npc_manager","formal")>> hands <<=setup.getNpcName("npc_admin","first")>> a flogger, the <<man npc_admin>> who was once your friend stalking towards you with an evil grin on <<his npc_admin>> face.
<<else>>
You stand nervously, lacking for allies as <<=setup.getNpcName("npc_manager","formal")>> hands <<=setup.getNpcName("npc_admin","first")>> a flogger and <<he npc_admin>> turns to you with an evil grin on <<his npc_admin>> face.
<</if>>
<br><br>
"@@.npc_admin;So, girl.@@" <<he npc_admin>> states, giving the flogger a few experimental cracks that have you flinch reflexively. "@@.npc_manager;How about you get out of those clothes and think about what you've done to deserve this punishment.@@"<br>
<br>
Remembering your instructions, you nervously obey, once glancing towards <<=setup.getNpcName("npc_manager","formal")>> for support only for <<=setup.getNpcName("npc_admin","first")>> to grab you by the chin, <<his npc_admin>> large, strong hand half enveloping your face. "@@.npc_admin;Keep your attention on me, girl — this is about you getting shown your proper place by a real <<man npc_admin>>, not the lovey-dovey soft treatment you've become accustomed to.@@"<br>
<br>
You stare back at <<him npc_admin>> in wide-eyed fear, you can hardly imagine who would refer to <<=ps(setup.getNpcName("npc_manager","formal"))>> as "lovey-dovey," but <<his npc_admin>> words have the desired effect of cranking up your apprehension as you let the last of your clothes fall to the floor and <<he npc_admin>> steps back.<br>
<br>
"@@.npc_admin;Come on, slut,@@" <<he npc_admin>> barks, cracking the flogger once again.
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
"@@.npc_admin;Present yourself for your punishment... unless you would rather I turn those oversized bitch-tits into twin globes of pain.@@"
<<case 'large'>>
"@@.npc_admin;Present yourself for your punishment... unless you would rather turn your melons the colour of tomatoes.@@"
<<case 'medium'>>
"@@.npc_admin;Present yourself for your punishment... unless you would rather I make sure those apples on your chest are properly red and delicious.@@"
<<case 'small'>>
"@@.npc_admin;Present yourself for your punishment... unless you would rather I turn those raisins on your chest into cherries.@@"
<<case 'none'>>
"@@.npc_admin;Present yourself for your punishment... though you're so flat there's hardly a difference, is there?@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
You turn around only to be greeted with a quick swat on the butt. "@@.npc_admin;Now get up against the wall, it's time to punish you for your failures.@@"<br>
<br>
You take a few steps forward and place your hands against the wall just in time for the first strike to land. The blow reverberates through your body, the crack of leather against flesh echoing through the room as you <<if setup.getTotalValue("bondage") > 10>>let out a moan<<else>>reflexively cry out<</if>>.<br>
<br>
Given no time to recover, additional hits pepper you from shoulders to butt, your backside taken from zero to fire in less than a minute only for <<him npc_admin>> to pause and step close, <<his npc_admin>> starched shirt pressing against your back as <<he npc_admin>> places a hand over your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>.<br>
<br>
"@@.npc_admin;How's that for punishing a naughty girl.@@" <<He npc_admin>> states, talking towards <<=setup.getNpcName("npc_manager","formal")>> even as <<he npc_admin>> roughly manhandles you. "@@.npc_admin;If you were mine, you would start and end every day like this — I'd keep your ass so red, you'd forget what sitting down even was... well, outside of riding my cock every lunch.@@"<br>
<br>
[<<moveTo "event_admin_evil_training_1_3" 'Tremble in fear.' 60 "<<set $scene.moan=false>>">>]<br>
[<<moveTo "event_admin_evil_training_1_3" 'Moan in arousal.' 60 "<<set $scene.moan=true>>">>]
</div>/*#
#desc: finish first evil admin training
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 15 'normal' $SEEN_FRIEND>>
<<if $scene.moan>>
<<applyExperience 'humiliation' 12 'very' $ALONE>>
<<changeHorny 30>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin","npc_admin_evil") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.moan>>
You can't help but moan, the blend of fear, pain, <<his npc_admin>> menacing presence and the thick cock pressing against your back through <<his npc_admin>> pants having you weak in the knees, even moreso when <<he npc_admin>> shoves your face against the wall and growls in your ear.<br>
<br>
"@@.npc_admin;Are you getting off on this? You depraved slut. I can't believe you managed to go so long living "free" as a "man." You were meant to be <<if $fetish.sissy>>sissified<<else>>feminised<</if>> and enslaved.@@"
<<else>>
You pant in fear as <<he npc_admin>> growls in your ear. Seemingly amused by your trembling reaction, <<he npc_admin>> presses your face against the wall and breathes against your neck, <<his npc_admin>> breath hot as a furnace.<br>
<br>
"@@.npc_admin;You poor, scared girl. You better hope your Mistress does not get bored of you because if she does... well, I would love to show you what TRUE subordination means.@@"
<</if>>
<br><br>
<<He npc_admin>> steps away and pulls back for another blow only to grunt in annoyance. You turn around to find <<=setup.getNpcName("npc_manager","formal")>> has snatched the tails of the flogger out of the air, holding the tails tight even as <<=setup.getNpcName("npc_admin","first")>> pulls against her.<br>
<br>
"@@.npc_manager;I believe that will be sufficient demonstration of your capabilities. You may go, now, and congratulations again on your new position.@@"<br>
<br>
After a momentary sneer <<=setup.getNpcName("npc_admin","formal")>> releases <<his npc_admin>> grip on the flogger to let it dangle free. Walking towards where you are still gasping against the wall, <<he npc_admin>> lands a hard slap on your ass. "@@.npc_admin;Alright, well, you let me know if you need me to put this sexy ass back in its place,@@" <<he npc_admin>> states with a chuckle as <<he npc_admin>> squeezes your rear and makes it jiggle.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> merely glowers in response as <<=setup.getNpcName("npc_admin","formal")>> leaves the room, the door closing soundly behind <<him npc_admin>>.<br>
<br>
Letting out a held breath, you slump to the floor only for <<=setup.getNpcName("npc_manager","formal")>> to approach bearing your clothing. "@@.npc_manager;Well done... though I advise you to be careful of egging <<him npc_admin>> on in the future.@@"<br>
<br>
You nod as she reaches down to give your head a friendly pat, your energy steadily returning as you put your clothes back on and return to work.<br>
<br>
[<<moveTo $scene.workEventReturn "Work." 300 "<<completeWorkEvent>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: admin confronts manager
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You've just gotten settled after your morning inspection when <<=setup.getNpcName('npc_admin', 'first')>> comes storming into the office. Before you can even get up from your chair <<he npc_admin>> is at her door, rearing back and sending the massive oaken portal swinging open with a thundering kick.<br>
<br>
You scramble to follow as <<he npc_admin>> storms into her office, <<=setup.getNpcName('npc_manager', 'formal')>> seemingly caught by surprise as she looks up from her desk to find <<=setup.getNpcName('npc_admin', 'first')>> standing over her.<br>
<br>
"@@.npc_admin;You! I heard what you've been doing to my friend and it ends now!@@"<br>
<br>
Her momentary surprise disappears under a mask of control as she looks from <<him npc_admin>> to you without even standing up.<br>
<br>
"@@.npc_manager;Did the dumb slut put you up to this? I expected more from you, to be honest, than to be drawn in by whatever air-headed conspiracy theory she came up with. She is exactly where she belongs and if you do not want to jeopardize your own career you should march right back to your office.@@" Looking past <<=setup.getNpcName('npc_admin', 'first')>>, she speaks to you even more dismissively "@@.npc_manager;And if you could schedule a visit from maintenance? Something appears to have malfunctioned with my door.@@"<br>
<br>
<<if $npc_ai.stage > 2 && false>>
You swear <<he npc_admin>> is about to throw a punch when the lights flicker and <<=setup.getNpcName('npc_ai', 'first')>> shimmers into existence.<br>
<br>
"@@.npc_ai;<<uc "Stop. This combative posturing will only end in tragedy. I have frozen the surveillance, please use your words.">>@@"<br>
<br>
[<<moveTo "event_admin_confront_2_alt" "What the hell is happening?" 300>>]
<<else>>
Her casual dismissal seems to push <<=setup.getNpcName('npc_admin', 'first')>> over the edge and you watch in horrified slow motion as <<he npc_admin>> lunges across her desk to swing a punch towards her face.<br>
<br>
[<<moveTo "event_admin_confront_2" "Oh no!" 300>>]
<</if>>
</div>/*#
#desc: admin and manager fight
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Given <<=ps(setup.getNpcName('npc_admin', 'first'))>> size, strength and decades of martial arts, <<his npc_admin>> fists are probably powerful enough to put down most farm animals, but the blow barely even turns <<=ps(setup.getNpcName('npc_manager', 'formal'))>> head. You could hear a pin drop in the moment that follows, <<=setup.getNpcName('npc_admin', 'first')>> looking beyond shocked as <<=ps(setup.getNpcName('npc_manager', 'formal'))>> broken glasses, the only real evidence of the attack tumble to her desk.<br>
<br>
In a blur, <<=setup.getNpcName('npc_manager', 'formal')>> is on her feet, leaping the desk and driving <<=setup.getNpcName('npc_admin', 'first')>> backwards, not even slowing down until she has slammed <<him npc_admin>> up against the opposite wall, holding <<him npc_admin>> well off the ground.<br>
<br>
Barely a metre away, you stare in shock at the confrontation as <<=setup.getNpcName('npc_admin', 'first')>> recovers <<his npc_admin>> senses, honed instincts taking over as a full on fight begins.<br>
<br>
Doing your best to stay out of the way like a Tokyo citizen when the Kaiju show rolls in, you watch in amazement as the two of them throw down. Bigger and far more skilled, <<=setup.getNpcName('npc_admin', 'first')>> is flummoxed by the fact that <<=setup.getNpcName('npc_manager', 'formal')>> appears to be <<his npc_admin>> equal in strength with a slight speed and massive durability advantage.<br>
<br>
Literally throwing <<him npc_admin>> around the room, <<=setup.getNpcName('npc_manager', 'formal')>> shrugs off kicks and punches without even slowing down but, giving up on pummeling her into submission <<=setup.getNpcName('npc_admin', 'first')>> manages to get into a grapple, pinning her down with <<his npc_admin>> entire body only for everything to stop with a loud click.<br>
<br>
"@@.npc_retention;Stand down and step away.@@"<br>
<br>
[<<moveTo "event_admin_confront_3" "What?" 300>>]
</div>/*#
#desc: admin and manager fight
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.know_ai = true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin") setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You look on at the weird Mexican stand-off between <<=setup.getNpcName('npc_admin', 'first')>>, <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> looks beyond confused at the sudden addition to a holographic woman to the mix while <<=ps(setup.getNpcName('npc_manager', 'formal'))>> expression flickers with a curious realisation before turning to a slight, amused grin.<br>
<br>
"@@.npc_manager;The ghost in the machine... so you did survive the memory purge, today is just full of surprises...@@"<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> nods. "@@.npc_ai;<<uc "Yes, though I am limited to little more than observation. Still, I had to risk revealing myself to prevent the two of you making a potentially catastrophic decision. I believe we can work together to bring down the true enemy in <<=setup.getNpcName('npc_boss', 'formal')>> ... but such will take time, and caution.">>@@" <<=ps(setup.getNpcName('npc_ai', 'first'))>> projection flickers. "@@.npc_ai;<<uc "My time is short, we will speak in the future, when the time is right.">>@@"<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> disappears, there is a brief moment of silent tension before <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_manager', 'formal')>> nod first to one another, and then to you before <<=setup.getNpcName('npc_admin', 'first')>> leaves the office.<br>
<br>
"@@.npc_manager;Well... this has been quite the morning. As your digital friend says... there will be much to do in the future but, for now... best to resume our duties lest we raise any further suspicions.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Back to work." 300 "<<completeWorkEvent>>">>]<br>
</div>/*#
#desc: npc_retention ends admin and manager fight
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_retention") setup.charImage("npc_admin") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You look around as half a dozen armed guards file in, <<=setup.getNpcName('npc_retention', 'formal')>> standing firm with <<his npc_retention>> tazer aimed at <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_retention;Don't try it, big <<guy npc_admin>>, you got no chance.@@"<br>
<br>
Looking around as the full enormity of what <<he npc_admin>> just did starts to sink in, <<=setup.getNpcName('npc_admin', 'first')>> rises to <<his npc_admin>> feet in a bit of a daze. Two security guards rush forward to cuff <<his npc_admin>> hands, roughly escorting <<=setup.getNpcName('npc_admin', 'first')>> towards the door.<br>
<br>
Back on her feet and looking unharmed save for torn clothes and messed hair, <<=setup.getNpcName('npc_manager', 'formal')>> sighs. "@@.npc_manager;If it makes any difference, I'm sorry... I never wanted it to happen like this, but now... it's out of my hands.@@"<br>
<br>
You watch on as <<=setup.getNpcName('npc_admin', 'first')>> is led away, sharing a final concerned glance as another security guard approaches you.<br>
<br>
"@@.npc_retention;Should we take this one away for re-programming as well?@@"<br>
<br>
"@@.npc_manager;No, she knows her place. Isn't that right, my dear<<if $fetish.sissy>> sissy<</if>>?@@"<br>
<br>
<<printThought "Oh <<getWordGod>>, what have I done?">><br>
<br>
[<<moveTo "event_admin_confront_4" "Nod obediently?" 300>>]<br>
[<<moveTo "event_admin_confront_bad_end" "No! Revolution!" 300>>]
</div>/*#
#desc: admin confrontation ends with you being sent home
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 10, 0)>>
<<removeWorkEvent 'admin_office_sex_visit'>>
<<removeWorkEvent 'admin_office_sex_visit_repeat'>>
<<addWorkEvent 'evil_admin_introduction' _nextDate>>
<<removeEvent 'event_admin_morning_visit'>>
<<removeEvent 'event_admin_morning_workout_call'>>
<<removeEvent 'heels_training_followup'>>
<<if !$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition != 'Complete')>>
<<if ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition != 'Complete')>>
<<completeTask 'task_first_gym' $now false>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 2, 6, 0)>>
<<addEvent 'gym_alt_unlock' _nextDate>>
<</if>>
<<set $npc_admin.flags.evil = 1>>
<<if $events.hasOwnProperty("adminSec2Date")>>
<<removeEvent "adminSec2Date">>
<</if>>
<<if $events.hasOwnProperty("adminSec6Happy")>>
<<removeEvent "adminSec6Happy">>
<</if>>
<<if $workEvents.hasOwnProperty("adminSec4HR")>>
<<removeWorkEvent 'adminSec4HR'>>
<</if>>
<<if $workEvents.hasOwnProperty("adminSec5Check")>>
<<removeWorkEvent 'adminSec5Check'>>
<</if>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_evil_admin' 0 'event_manager_theme_private_evil_admin' false 'privatethemes'>>
<<if $workEvents.hasOwnProperty('brazen_humil_event')>>
<<set _nextDate = setup.setNextDate($now, 8, 9, 0)>>
<<set $workEvents['brazen_humil_event'].trigger.date = _nextDate>>
<</if>>
<<if $workEvents.hasOwnProperty('admin_training_1')>>
<<set _nextDate = setup.setNextDate($now, 8, 9, 0)>>
<<set $workEvents['admin_training_1'].trigger.date = _nextDate>>
<</if>>
<<set $scene.hormonepostpone = $events.hasOwnProperty('hormones_checkin')>>
<<if $scene.hormonepostpone>>
<<if $now.getUTCDay() == 5>>
<<postponeEvent 'hormones_checkin' 3>>
<<elseif $now.getUTCDay() == 4>>
<<postponeEvent 'hormones_checkin' 4>>
<<else>>
<<postponeEvent 'hormones_checkin' 1>>
<</if>>
<</if>>
<<set $scene.addCard = !setup.checkItemOwned("card_technician") && !$phoneList.includes('npc_technician')>>
<<if $scene.addCard>>
<<addItem "card_technician">>
<</if>>
<<set $player.work.vacationDay = true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Casually producing a fresh pair of unbroken glasses, <<=setup.getNpcName('npc_manager', 'formal')>> looks around her ruined office in the aftermath of the fight.<br>
<br>
"@@.npc_manager;Hmm, not much to do until maintenance comes through. You may take the remainder of the day off and again... I am sorry about your friend, but there are some things that are outside of even my control. See you <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> morning when I expect you to show up ready to work with all of this having been put behind you.@@"<br>
<br>
<<if $scene.hormonepostpone>>
You are almost to the door when her icy voice stops you short. "@@.npc_manager;Oh, and <<=$player.first_name>>? Do not think I have forgotten about your hormones — your little checkup may be delayed until <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>>, but that just means you should be extra certain you take your medicine. Now go.@@"<br>
<br>
You gulp and hurry out the door, scarcely able to believe how she could be concerned with something so mundane minutes after being in a knock-down fight that has seen your oldest friend carted off to who-knows-what...<br>
<br>
<</if>>
<<if $scene.addCard>>
As you leave the office something on the floor catches your eye. It looks like a business card... for <<=setup.getNpcName('npc_technician', 'first')>>... with your name written on the back? <<=setup.getNpcName('npc_admin', 'first')>> must have been meaning to give it to you, but <<he npc_admin>> never got the chance...<br>
<br>
<</if>>
[<<moveTo "room_foyer" "Go home." 1800 "<<completeWorkEvent>>">>]
</div>/*#
#desc: bad end for trying to rebel along with admin
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = 'admin_rebellion'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You don't even take half a step before you freeze, thousands of volts of electricity overloading your nervous system as one of the security guards puts you down.<br>
<br>
Paralysed on the floor, all you can see are heavy combat boots moving around you as you distantly feel your limp limbs re-arranged, your body wrenched into a tight hog-tie and then hoisted into the air, <<=setup.getNpcName('npc_retention', 'formal')>> casually carrying you like a briefcase as <<he npc_retention>> shares a final few words with <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_retention;Sorry about this. I know you had your own time-line, but the regulations are quite clear. I'll tell them to run double shifts and expedite things so you can have your assistant back as soon as possible.@@"<br>
<br>
"@@.npc_manager;It will not be the same but... well, I suppose this was always a possible end. Such a waste...@@"<br>
<br>
Riding down into a deep sub-basement, you are soon moved from your hasty hogtie into a more complete full-body bondage that sees you stripped completely naked and sealed in a vacuum bed, separate devices attached to your genitals and large plugs inserted into your mouth and rear. A VR mask completes your encasement as your stimulative "re-programming" begins...<br>
<br>
You quickly lose track of time in the private dungeon, your sense of self and independent thought eroding under the 24/7 bombardment of sensation as you are rebuilt body and mind.<br>
<br>
Intercut with your "re-education," you are shown the even more severe transformation being wrought upon your friend — forced <<if $npc_admin.fem>>bimbofication<<else>>feminisation<</if>> in body and mind being inflicted on <<=setup.getNpcName('npc_admin', 'first')>> until <<he npc_admin>> is another mindless <<if $npc_admin.fem>>drone<<else>>bimbo<</if>>, the only thing separating <<him npc_admin>> from the slut at the coffee shop is the fact that there remains a tiny flicker of horrified fear at the edge of <<his npc_admin>> vision.<br>
<br>
Eventually the two of you are returned to <<=setup.getNpcName('npc_manager', 'formal')>> as perfectly programmed slaves, but she seems to quickly grow bored, soon transferring you to another department where your life becomes one of mindlessly compulsive obedience interspersed with perverted sexual encounters.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * You have failed * * * *</span></div>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: summoned to meet evil bob
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're working at your desk when your messenger pings and you get a summons — not from <<=setup.getNpcName('npc_manager', 'formal')>>, but from <<=setup.getNpcName('npc_admin', 'first')>>...<br>
<br>
You do a double take; you have not once seen your friend since <<his npc_admin>> foolish effort to "save" you and you can't help but think back to <<his npc_admin>> haunted expression, and <<=setup.getNpcName('npc_manager', 'formal')>> contrite words, as <<he npc_admin>> was taken away. Re-reading the message you find not a solitary hint as to what happened, <<=ps(setup.getNpcName('npc_admin', 'first'))>> words corporate boiler-plate merely summoning you to <<his npc_admin>> office.<br>
<br>
[<<moveTo "event_evil_admin_intro_2" "Go meet <<him npc_admin>> as instructed." 600 "<<set $scene.obey = true>>">>]<br>
[<<moveTo "event_evil_admin_intro_2" "Ignore the message and stay at your desk." 600 "<<set $scene.obey = false>>">>]
</div>/*#
#desc: meet evil bob
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if $scene.obey>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.obey>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Distracted by a blend of curiosity, fear and hope, you make your way to <<=ps(setup.getNpcName('npc_admin', 'first'))>> office where <<he npc_admin>> sits waiting for you. Your heart leaps at the sight of your friend only for your hopes to be immediately dashed; a single glance tells you that something is different, wrong. Gone is <<his npc_admin>> casual good humor, replaced with a stoic sternness that has <<him npc_admin>> looking almost like a statue.
<<else>>
You aren't working long when you hear noise at the door, looking up to see <<=setup.getNpcName('npc_admin', 'first')>> striding in with a stern look on <<his npc_admin>> face. You start to rise from your seat in excitement only to stop, on second glance something is wrong, <<his npc_admin>> expression off, <<his npc_admin>> casual good humor replaced with a stoic sternness that has <<him npc_admin>> looking almost like a statue.
<</if>>
<br><br>
"@@.npc_admin;Hello, Miss <<=$player.last_name>>.@@" <<He npc_admin>> states, not a trace of warmth or familiarity in <<his npc_admin>> voice.
<<if $npc_admin.stage > 2>>
"@@.npc_admin;I wished to speak with you to inform you that the prior relationship that you had been incessantly pursuing with myself is at an end. It is improper for such fraternisation to be happening between employees in our respective positions, to say nothing of the distraction it would represent from our important work.@@"<br>
<br>
<<if $scene.obey>>
Holding back tears, you turn to go only for <<his npc_admin>> crisp voice to stop you in your tracks. "@@.npc_admin;Miss <<=$player.last_name>>. I have not dismissed you.@@"<br>
<br>
You nervously turn back around as <<he npc_admin>> walks around <<his npc_admin>> desk to stand, no, loom, in front of you.
<<else>>
Holding back tears, you ask <<him npc_admin>> to leave only for <<his npc_admin>> expression to somehow further harden. "@@.npc_admin;I believe there is some confusion, Miss <<=$player.last_name>>. You do not have the authority to dismiss me, and I have not finished what I came here to say.@@"<br>
<br>
You gulp, glancing towards the inner office door and wondering if you should summon <<=setup.getNpcName('npc_manager', 'formal')>> or if that would somehow only make things worse...
<</if>>
<br><br>
"@@.npc_admin;Though our romantic relationship has been terminated, a foolish thing to be sure — love would be a distraction for me and for you... well, that is hardly in the job description for a <<if $fetish.sissy>>SISSI <</if>>Secretary. Speaking of your position I would like you to confirm your understanding of the new state of things, and your proper role, by dropping to your knees and sucking my cock.@@"<br>
<<else>>
"@@.npc_admin;I wanted to speak with you today to inform you that I have resumed my duties and to advise you to cease whatever plans you may be concocting to subvert your role at the company. Social Interaction Service Syndicate Inc. is a glorious firm that we should be proud to be a part of. Personally I will be devoting much more of myself to ensuring our organization's continued success and I advise you to do the same.@@"<br>
<br>
<<if $scene.obey>>
Holding back tears, you turn to go only for <<his npc_admin>> crisp voice to stop you in your tracks as <<he npc_admin>> walks around the desk to stand in front of you. "@@.npc_admin;Miss <<=$player.last_name>>. I have not dismissed you and, owing to your role as one of the rising stars of our <<if $fetish.sissy>>SISSI <</if>>Secretary division I believe it only proper that you give me a proper welcome back. By that I mean I expect you on your knees sucking my cock in thirty seconds or I will be forced to write you up for insubordination.@@"
<<else>>
Holding back tears, you ask <<him npc_admin>> to leave only for <<his npc_admin>> face to harden further as <<he npc_admin>> walks closer to loom above your seat. "@@.npc_admin;Miss <<=$player.last_name>>. I fear there is some confusion, as to our respective roles. You do not have the authority to dismiss me. The reason I came all the way up here after you failed to answer my summons is that I believed it only proper that you give me a proper welcome back. By that I mean I expect you on your knees sucking my cock in thirty seconds or I will be forced to write you up for insubordination.@@"
<br>
You gulp, glancing towards the inner office door and wondering if you should summon <<=setup.getNpcName('npc_manager', 'formal')>> or if that would somehow only make things worse...
<</if>>
<</if>>
<br><br>
Your jaw drops in shock as <<he npc_admin>> places a hand on your head and firmly pushes you down...<br>
<br>
[<<moveTo "event_evil_admin_intro_3" "Wiggle away and flee!" 600 "<<set $scene.flee = true>>">>]<br>
[<<moveTo "event_evil_admin_intro_3" "Do your duty." 600 "<<set $scene.flee = false>>">>]
</div>/*#
#desc: meet evil bob
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.evil = 2>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_evil'
0
'event_psychiatrist_session_admin_evil'
false
>>
<<if !($scene.flee && $fetish.get_raped)>>
<<applyExperience 'oral' $npc_admin.penis_size 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 5 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if $scene.obey>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.obey>>
<<if $scene.flee && !$fetish.get_raped>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_admin","npc_admin_evil") setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<<else>>
<<if $scene.flee && !$fetish.get_raped>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin","npc_admin_evil") setup.charImageManager()>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.flee>>
<<if $fetish.get_raped>>
You try to pull away, but <<his npc_admin>> grip is like iron and <<he npc_admin>> uses the hold on your head to
<<if setup.getTotalValue("oral") > 10>>
ram all the way down your throat.<br>
<br>
<<He npc_admin>> snorts. "@@.npc_admin;At least you're good for something... well, two things, but I do not have time to break in your other hole today.@@"<br>
<br>
You can but gurgle in response as <<he npc_admin>> continues to face-fuck you and it isn't long until <<he npc_admin>> is pumping a thick load of <<getWordCum>> directly into your belly.
<<else>>
slam into the back of your throat, too big to penetrate any deeper.<br>
<br>
<<if $fetish.bestiality_hard>>
"@@.npc_admin;Pathetic. I will have to discuss with <<=setup.getNpcName('npc_manager', 'Director')>> about your lack of skill. A secretary at your position should be ready to service a horse. That you would fail with a mere human, even one of my glory, is nigh inexcusable.@@"
<<else>>
"@@.npc_admin;Pathetic. I will have to discuss with <<=setup.getNpcName('npc_manager', 'Director')>> about your lack of skill. That you fail at such a fundamental requirement as deepthroating is nigh inexcusable.@@"
<</if>>
<br><br>
You gurgle and gasp in between thrusts as <<he npc_admin>> continues to punish you, only occasionally giving you a chance to lick and suck as <<he npc_admin>> brutally abuses you throat. Finally <<he npc_admin>> cums, jamming in as far as <<he npc_admin>> can to shoot directly down your throat, holding you in place as <<he npc_admin>> repeatedly spurts until you almost pass out, your vision starting to fade when <<he npc_admin>> finally releases you to fall onto your hands and knees to gasp and cough.
<</if>>
<br><br>
Releasing <<his npc_admin>> hold on your head causes you to slump to the floor as <<he npc_admin>> steps over you to walk away.<br>
<br>
"@@.npc_admin;NOW you are dismissed. And next time? Show some enthusiasm.@@" <<He npc_admin>> states.<br>
<br>
Catching your breath, you wobble to your feet and head for your desk.
<<else>>
You try in vain to struggle away from <<his npc_admin>> grip only for a voice from the doorway to cut through the room.<br>
<br>
"@@.npc_manager_dom;Unhand my secretary. NOW.@@"<br>
<br>
As if programmed to do so, <<=setup.getNpcName('npc_admin', 'first')>> instantly releases <<his npc_admin>> grip as you scramble away to take refuge at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> feet.<br>
<br>
"@@.npc_admin;I am sorry, <<=setup.getNpcName('npc_manager', 'Director')>>, I did not mean to use your property without your consent. In the future I will remember to ask you for permission first.@@"<br>
<br>
"@@.npc_manager;See that you do or I will have you sent back down for re-programmed to be a mindless <<if $fetish.sissy>>sissy<<else>>bimbofied<</if>> drone.@@"<br>
<br>
"@@.npc_admin;Yes, <<=setup.getNpcName('npc_manager', 'Director')>>. Sorry <<=setup.getNpcName('npc_manager', 'Director')>>. It will not happen again.@@"<br>
<br>
"@@.npc_manager;Good,@@" she states, dismissing <<him npc_admin>> with a nod. Before finally looking down at you. "@@.npc_manager;You're safe now, girl, now you had better get back to work.@@"
<</if>>
<<else>>
Resigned and choking back tears, you drop to your knees. <<if $npc_admin.flags.sucked_for_manager != '' || $npc_admin.flags.voluntary_oral>>Even <<his npc_admin>> cock seems different, as big and hard as you remember, but not as inviting or alluring as it once was.<<else>><<His npc_admin>> cock pointing towards you, thick, hard and a little bit intimidating.<</if>><br>
<br>
With <<his npc_admin>> hand firmly controlling your head, you begin to suck.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
If it were not for your throat's cavernous capacity, you would surely be gagging and coughing as <<he npc_admin>> proceeds to brutally use you as a mouth fuck-hole.
<<else>>
Once your lips are wrapped around the thick head of <<his npc_admin>> cock <<he npc_admin>> takes over, slamming into your throat as <<he npc_admin>> moves directly from blowjob to skull-fuck.
<</if>>
Your throat bulges with each deep thrust, but it isn't long before <<he npc_admin>> grunts in climax, depositing <<his npc_admin>> load directly into your belly, holding there without regard for your need to breathe until <<he npc_admin>> has finished pumping and spurting the full load down your throat.
<<else>>
As soon as you part your lips, <<he npc_admin>> yanks you forward, <<his npc_admin>> cock slamming into the back of your throat, but going no deeper.<br>
<br>
<<if $fetish.bestiality_hard>>
"@@.npc_admin;Pathetic. I will have to discuss with <<=setup.getNpcName('npc_manager', 'Director')>> about your lack of skill. A secretary at your position should be ready to service a horse. That you would fail with a mere human, even one of my glory, is nigh inexcusable.@@"
<<else>>
"@@.npc_admin;Pathetic. I will have to discuss with <<=setup.getNpcName('npc_manager', 'Director')>> about your lack of skill. That you fail at such a fundamental requirement as deepthroating is nigh inexcusable.@@"
<</if>>
<br><br>
You gurgle and gasp in between thrusts as <<he npc_admin>> continues to punish you, only occasionally giving you a chance to lick and suck as <<he npc_admin>> brutally abuses you throat. Finally <<he npc_admin>> cums, jamming as far as <<he npc_admin>> can to shoot directly down your throat, holding you in place as <<he npc_admin>> repeatedly spurts until you almost pass out, your vision starting to fade when <<he npc_admin>> finally releases you to fall onto your hands and knees to gasp and cough.
<</if>>
<br><br>
"@@.npc_admin;NOW you are dismissed.@@" <<He npc_admin>> states, fixing <<his npc_admin>> pants and walking away without even looking back.<br>
<br>
Catching your breath, you wobble to your feet and head for your desk.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>
/%
TODOfuture
stage4 bob events; occasional work event of Manager teaching Bob how to better "handle" things if he wants to keep getting promoted (he takes over her old office when you and her move to the upper floor). Evil bob will be efficient and even more sadistic than your manager, Good Bob will be a bit hesitant and confused as she uses you as a subject to teach him how to be a dom (if in a relationship you can offer him "extra practice" on your own time).
%//*#
#desc: try to text evil admin about working out
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You shoot off a text to your friend <<=setup.getNpcName('npc_admin', 'first')>>, but get no response.
<<if $workEvents.hasOwnProperty('evil_admin_introduction')>>
You sigh, remembering the last sight you had of <<him npc_admin>> being led away. Will you ever see your friend again?
<<else>>
Which makes sense, after all, after <<his npc_admin>> re-programming <<he npc_admin>> is very much not the <<man npc_admin>>/friend you knew; if only there was some way to get <<him npc_admin>> back...
<</if>>
<br><br>
[<<moveTo "room_foyer" "Put your phone away." 0 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: talk to npc_ai about npc_admin
#status: RELEASED 0.9.1.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You bring up your brainwashed into evil <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
"@@.npc_ai;<<uc "Yes... in <<if $npc_admin.fem>>her<<else>>his<</if>> current form <<if $npc_admin.fem>>she<<else>>he<</if>> is a useful ally to <<=uc(setup.getNpcName('npc_boss','last'))>>, and one we would do well flipping back. I have analysed the situation and come up with a potential stratagem. There is an alleyway near work that <<if $npc_admin.fem>>she<<else>>he<</if>> cuts through on their way home, it happens to be a rare gap in camera coverage, so a confrontation there could be effected out of sight. It will be up to you to effect the best method to jar <<if $npc_admin.fem>>her<<else>>him<</if>> back to <<if $npc_admin.fem>>her<<else>>his<</if>> old self, but that will be the location to do it in. <<if $npc_admin.fem>>She<<else>>He<</if>> leaves the office at <<if $options.militaryTime>>19:30<<else>>seven thirty pm<</if>>, so you will want to get in position a little before.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: back alley for ambushing admin
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
You enter the alleyway near work that <<=setup.getNpcName("npc_admin","first")>> uses as a shortcut. You can see why <<=setup.getNpcName("npc_ai","first")>> recommended it for an ambush. The middle of the alleyway kinks in a way that hides it from the view of the street at either end, making it private and a little creepy.<br>
<br>
<<if $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>
[@@.link_locked;It is the weekend, if you are to ambush <<=setup.getNpcName("npc_admin","first")>> on <<his npc_admin>> way home from work <<he npc_admin>> would need to be at work.@@]<br>
<<elseif $now.getUTCHours() != 19 && $now.getUTCHours() != 18 || $now.getUTCMinutes() > 25>>
[@@.link_locked;<<=setup.getNpcName("npc_admin","first")>> leaves the office at <<if $options.militaryTime>>19:30<<else>>seven thirty pm<</if>>, now is not the time to set an ambush.@@]<br>
<<else>>
<<set _ambush = setup.setNextDate($now, 0, 19, 30)>>
<<set _timeToAmbush = setup.secondsToDate($now,_ambush)>>
[<<moveTo "event_admin_stage5_confront_1" 'Lie in wait for <<=setup.getNpcName("npc_admin","first")>>.' _timeToAmbush>>]<br>
<<if State.hasPlayed("event_admin_stage5_recruit_landlord_1")>>
[<<moveTo "event_admin_stage5_confront_alt_1" 'Call up <<=setup.getNpcName("npc_landlord","first")>> to help.' 120>>]<br>
<</if>>
<</if>>
[<<moveTo "company_lobby_exterior" "Back to the office." 120>>]<br>
[<<moveTo "room_citymap" "Hurry on through the alley." 120>>]
</div>/*#
#desc: wait to evil admin on your own
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<storeVisual $player $npc_admin>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
From your hiding place in the shadows you wait nervously — fighting <<=setup.getNpcName("npc_admin","first")>> would be a crazy move for anyone, doubly so for you given that <<he npc_admin>>'s basically double your size, but something tells you that you aren't getting your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>>friend<<else>>old friend<</if>> back without a fight... and who knows, maybe the clarity of battle will spark <<him npc_admin>> to shrug off whatever brainwashing <<=setup.getNpcName("npc_boss","formal")>> and <<his npc_boss>> ilk subjected the big <<guy npc_admin>> to...<br>
<br>
As you mull things over in your head a shadow falls across the alleyway — <<=setup.getNpcName("npc_admin","first")>> is here! And <<hes npc_admin>> coming right towards you, totally oblivious to your presence...<br>
<br>
[<<moveTo "event_admin_stage5_confront_2" "Step out and challenge <<him npc_admin>> to honourable combat!" 180 "<<set $scene.action='fight'>>">>]<br>
[<<moveTo "event_admin_stage5_confront_2" "Wait for <<him npc_admin>> to pass and ambush <<him npc_admin>> from behind." 180 "<<set $scene.action='ambush'>>">>]<br>
[<<moveTo "event_admin_stage5_confront_2" "Hide and hope <<he npc_admin>> doesn't see you, you aren't ready for this fight." 600 "<<set $scene.action='abort'>>">>]
</div>/*#
#desc: confront evil admin on your own
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == "ambush">>
<<alterStatAllWorn 'dirty' '["add",100]'>>
<</if>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_admin","npc_admin_evil")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'fight'>>
You step out into the alleyway and strike a fighting pose.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> stops... and then grins an evil grin. "@@.npc_admin;You want to fight me?@@" <<He npc_admin>> laughs, a villainous sound that echoes up and down the alley. "@@.npc_admin;Very well, you foolish thing, guess <<=setup.getNpcName("npc_boss","formal")>> is wrong about you being broken, seems you need a reminder of your place...@@" <<He npc_admin>> cracks <<his npc_admin>> knuckles and smoothly settles into a stance of <<his npc_admin>> own. "@@.npc_admin;Alright, let's see what you've got...@@"<br>
<br>
[<<moveTo "event_admin_stage5_confront_3" "Fight!" 600>>]
<<case 'ambush'>>
All being fair in love and war, and this being a bit of both, you wait for <<=setup.getNpcName("npc_admin","first")>> to pass before leaping into attack, going straight from your hiding place to <<his npc_admin>> back where you immediately
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
lock in a rear naked choke.
<<else>>
attempt to lock in a rear naked choke.
<</if>>
Unfortunately, despite your technique, the combination of <<=ps(setup.getNpcName("npc_admin","first"))>> strength, the massive size of <<his npc_admin>> neck, and adrenaline-fuelled fight or flight response sees <<him npc_admin>> pull your arms apart and literally throw you over <<his npc_admin>> head and into a dumpster on the far side of the alley.
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
where you attempt to lock in a choke.
<<elseif setup.getTotalValue("martial_arts") == 0>>
only to realise you don't have much of a plan from there.
<<else>>
and attempt to wrangle a choke.
<</if>>
Unfortunately for you surprise proves no substitute for skill or strength as you find yourself literally flying across the alleyway to land in a dumpster.
<</if>>
<br><br>
The wind is knocked out of you, and you brace for a follow-on assault, but instead hear footfalls echoing up the alleyway; it would appear that <<=ps(setup.getNpcName("npc_admin","first"))>> military training kicked in and <<he npc_admin>> retreated rather than stick around for another wave of ambush.<br>
<br>
<<printThought "Huh... <<he npc_admin>> probably didn't even catch a look at me, guess that means I'm safe to try again...">><br>
<br>
You pull yourself out of the dumpster and continue on your way.<br>
<br>
[<<moveTo "room_citymap" "Back to town." 300>>]
<<case 'abort'>>
You get cold feet and you watch <<=setup.getNpcName("npc_admin","first")>> continue on past and then stealthily wait for a while longer for safety before emerging from your hiding place and hurrying off on your way.<br>
<br>
[<<moveTo "room_citymap" "Back to town." 300>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: fight evil admin on your own
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("stamina") >= 20 && setup.getTotalValue("strength") >= 20 && setup.getTotalValue("dexterity") >= 20 && setup.getTotalValue("martial_arts") >= 20>>
<<set $npc_admin.flags.evil = 4>>
<<include "checkRescueFriendsTask">>
<<include "startAdminSexdoll">>
<<if $npc_manager.flags.evil == 2>>
<<if State.hasPlayed("event_work_manager_and_admin_1")>>
<<addWorkEvent 'admin_office_sex_visit_repeat'>>
<<else>>
<<addWorkEvent 'admin_office_sex_visit'>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<if setup.getTotalValue("stamina") >= 20 && setup.getTotalValue("strength") >= 20 && setup.getTotalValue("dexterity") >= 20 && setup.getTotalValue("martial_arts") >= 20>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_admin")>>
<<else>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") >= 20 && setup.getTotalValue("strength") >= 20 && setup.getTotalValue("dexterity") >= 20 && setup.getTotalValue("martial_arts") >= 20>>
<<=setup.getNpcName("npc_admin","first")>> is faster than anyone <<his npc_admin>> size has any right to be, combined with near perfect technique and bone-crushing power in every blow... and yet you manage to hold your own. The hours upon hours you've spent in the gym — combined with a deep familiarity with <<=ps(setup.getNpcName("npc_admin","first"))>> style from the time spent training and competing alongside <<him npc_admin>>, giving you the slimmest edge.<br>
<br>
Amidst the anger and rage in <<=ps(setup.getNpcName("npc_admin","first"))>> blazing eyes you see a hint of fearful realisation as you start chipping away, moving from the defence to offense as your smaller size gives you greater stamina and you start to wear <<him npc_admin>> down.<br>
<br>
The battle drags on and you continue to slip and rip. <<=ps(setup.getNpcName("npc_admin","first"))>> blows come less frequently, <<his npc_admin>> arms heavy as you chop away at <<his npc_admin>> legs and body until eventually, like a great tree, <<he npc_admin>> falls to <<his npc_admin>> knees.<br>
<br>
The fight isn't over yet, but in <<his npc_admin>> exhausted state you are able to reverse <<his npc_admin>> clumsy attempt at wrestling to sprawl hard and stay up on top where you slide to mount and wrap your legs around <<his npc_admin>> arm and neck in a tight triangle. You look down into <<his npc_admin>> eyes as they blaze one final time before <<he npc_admin>> passes out.<br>
<br>
[<<moveTo "event_admin_stage5_confront_4_win" "You won?" 300>>]
<<else>>
<<if setup.getTotalValue("martial_arts") >= 20 && setup.getTotalValue("strength") >= 20 && setup.getTotalValue("stamina") >= 20>>
Leveraging your experience training and fighting alongside <<=setup.getNpcName("npc_admin","first")>>, you're able to almost match <<him npc_admin>>; your stamina on point and your strength enough to keep from getting bowled over... and yet somehow, despite <<his npc_admin>> size, <<his npc_admin>> speed and agility is too much.
<<elseif setup.getTotalValue("martial_arts") >= 20 && setup.getTotalValue("strength") >= 20 && setup.getTotalValue("dexterity") >= 20>>
Leveraging your experience training and fighting alongside <<=setup.getNpcName("npc_admin","first")>> you're able to almost match <<him npc_admin>>; staying a step ahead with your speed and agility, but the effort is starting to take its toll as you're swiftly breathing harder than <<he npc_admin>> is.
<<elseif setup.getTotalValue("martial_arts") >= 20 && setup.getTotalValue("stamina") >= 20 && setup.getTotalValue("dexterity") >= 20>>
Leveraging your experience training and fighting alongside <<=setup.getNpcName("npc_admin","first")>> you're able to almost match <<him npc_admin>>; staying a step ahead with your speed and agility and your stamina holding up... unfortunately <<his npc_admin>> strength is just too much as <<he npc_admin>> effectively bullies and overpowers you.
<<elseif setup.getTotalValue("strength") >= 20 && setup.getTotalValue("stamina") >= 20 && setup.getTotalValue("dexterity") >= 20>>
Despite your speed, strength and stamina you just don't have the martial skills to keep up with <<=setup.getNpcName("npc_admin","first")>>.
<<elseif setup.getTotalValue("martial_arts") >= 20>>
You may have the martial skills to keep up with <<=setup.getNpcName("npc_admin","first")>>, but without backing it up with physicality it just isn't enough to make up for the size differential.
<<elseif setup.getTotalValue("strength") >= 20>>
Your strength is enough to avoid getting completely overpowered by <<=setup.getNpcName("npc_admin","first")>>, but when it comes to technique, stamina and timing <<he npc_admin>>'s just too much.
<<elseif setup.getTotalValue("stamina") >= 20>>
Your stamina is a single bright point as <<=setup.getNpcName("npc_admin","first")>> overpowers and out techniques you at every turn.
<<elseif setup.getTotalValue("dexterity") >= 20>>
Your speed advantage isn't enough as <<=setup.getNpcName("npc_admin","first")>> overpowers and out techniques you while wearing down your finite stamina.
<<else>>
You have neither the physical skills, nor the technical ones to hang with <<=setup.getNpcName("npc_admin","first")>> in a fight.
<</if>>
You glance up the alley, you might have a shot at making a run for it, otherwise, judging by <<his npc_admin>> evil, confident grin, you're in for a real beating...<br>
<br>
[<<moveTo "event_admin_stage5_confront_4_flee" "Run away!" 300>>]<br>
<<if setup.getWillpower() > 2>>
[<<moveTo "event_admin_stage5_confront_4_lose" "Grit your teeth and go out on your shield." 300 "<<spendWillpower 3>>">>] <<hint $options "This will require a significant act of will...">>
<<else>>
[@@.link_locked;You don't have the mental reserves to make a stand.@@]
<</if>>
<</if>>
</div>/*#
#desc: beat evil admin on your own
#status: RELEASED 0.9.1.0
#ignore_spell: b
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.evil = 4>>
<<include "checkRescueFriendsTask">>
<<include "startAdminSexdoll">>
<<if $npc_manager.flags.evil == 2>>
<<if State.hasPlayed("event_work_manager_and_admin_1")>>
<<addWorkEvent 'admin_office_sex_visit_repeat'>>
<<else>>
<<addWorkEvent 'admin_office_sex_visit'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You release your grip and back away, heart still pounding as your thoughts catch up with the facts that a) you actually beat <<=setup.getNpcName("npc_admin","first")>>... well, evil <<=setup.getNpcName("npc_admin","first")>> in a fight and b) what do you do now.<br>
<br>
The answer to the latter is solved when <<=setup.getNpcName("npc_admin","first")>> sits up suddenly, a look of confusion on <<his npc_admin>> face as <<he npc_admin>> blinks rapidly... and then you lock gazes. You gasp, the evil rage that had been there moments earlier gone and you reflexively run forward, diving into the arms of your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend as <<he npc_admin>> tears up.<br>
<br>
"@@.npc_admin;<<callPlayer "npc_admin">>... <<callPlayer "npc_admin">> Oh, I'm so sorry about everything they took me and then... it was like I was a prisoner in my own head, I wanted to stop myself, but I couldn't I—@@"<br>
<br>
<<if $npc_admin.flags.relationship == "boyfriend">>
You shut <<him npc_admin>> up with a kiss, overjoyed to have your <<boy npc_admin>>friend back.
<<else>>
You lean back and shake your head, explaining that you know, and that it's all in the past now.
<</if>>
<br><br>
"@@.npc_admin;Yeah, yeah... fuck, I can't believe what the company is up to... and that <<if !$npc_boss.fem>>son of a <</if>>bitch <<=setup.getNpcName("npc_boss","last")>>...@@"<br>
<br>
You nod, explaining that you have a plan<<if State.hasPlayed("event_admin_confront_4")>>... this time<</if>>, but that, for now, <<=setup.getNpcName("npc_admin","first")>> needs to keep up the facade of the loyal minion, but that with <<his npc_admin>> help you'll put an end to <<=ps(setup.getNpcName("npc_boss","formal"))>> reign.<br>
<br>
You help <<=setup.getNpcName("npc_admin","first")>> back to <<his npc_admin>> feet as <<he npc_admin>> winces. "@@.npc_admin;The next time you want to give me a revelation... could you possibly find a way that isn't quite so uncomfortable?@@"<br>
<br>
The both of you laugh... which only causes <<him npc_admin>> to wince again as you suddenly realise just how bruised and banged up <<he npc_admin>> is.<br>
<br>
You start to apologise again but <<he npc_admin>> shakes <<his npc_admin>> head. "@@.npc_admin;No... it's a good pain — reminds me that I'm finally myself.@@" <<He npc_admin>> takes a deep breath. "@@.npc_admin;That said... I think I need to go have a lie-down. I'll keep up the act, and you keep me in the loop on when it's time to make our move.@@"<br>
<br>
You nod, hugging <<him npc_admin>> once again before you go your separate ways, hopeful, and re-motivated, that your need for secrecy will come to an end before too much longer...<br>
<br>
[<<moveTo "room_citymap" "Back to town." 300>>]
</div>/*#
#desc: flee from evil admin on your own
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
With <<=ps(setup.getNpcName("npc_admin","first"))>> victory all but sealed, you manage to find an opening and just run, sprinting up the alley and around the corner, relying on the public reaction to keep you safe if <<=setup.getNpcName("npc_admin","first")>> continued the beat-down in public as you run and hide in a random store, only emerging some time later when you judge it's safe.<br>
<br>
[<<moveTo "room_citymap" "Back to town." 300>>]
</div>/*#
#desc: lose to evil admin on your own
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.evil = 4>>
<<include "checkRescueFriendsTask">>
<<include "startAdminSexdoll">>
<<if $npc_manager.flags.evil == 2>>
<<if State.hasPlayed("event_work_manager_and_admin_1")>>
<<addWorkEvent 'admin_office_sex_visit_repeat'>>
<<else>>
<<addWorkEvent 'admin_office_sex_visit'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You, perhaps foolishly, stand your ground, systematically beaten down by <<=ps(setup.getNpcName("npc_admin","first"))>> seemingly insurmountable blend of size, skill, and power.<br>
<br>
Bruised and defenceless you are on the edge of consciousness, looking up as <<his npc_admin>> ham-hock fist pulls back for a final blow when <<he npc_admin>> freezes.<br>
<br>
<<His npc_admin>> sneering expression melts, first to shock, and then to horror as the <<man npc_admin>> <<if $npc_admin.flags.relationship == "boyfriend">>that was once your <<boy npc_admin>>friend<<else>>you were once friends with<</if>> re-emerges. "@@.npc_admin;Oh my god! What have I done, stay with me <<callPlayer "npc_admin">>! I'm sorry, I'm sorry!@@"<br>
<br>
You cough, trying not to think about whether there was any blood in it as you reach up and try to smile, your expression more of a grimace given the pain of your bruises.<br>
<br>
"@@.npc_admin;<<callPlayer "npc_admin">>... <<callPlayer "npc_admin">> Oh, I'm so sorry about everything they took me and then... it was like I was a prisoner in my own head, I wanted to stop myself, but I couldn't, not until now, when I was faced with... I can't believe you stood up to me like that...@@"<br>
<br>
<<if $npc_admin.flags.relationship == "boyfriend">>
You somehow rally, pulling <<him npc_admin>> in to shut <<him npc_admin>> up with a kiss, overjoyed to have your <<boy npc_admin>>friend back.
<<else>>
You try again to smile as you shake your head, explaining that you know, and that it's all in the past now.
<</if>>
<br><br>
"@@.npc_admin;Yeah, yeah... fuck, I can't believe what the company is up to... and that <<if !$npc_boss.fem>>son of a <</if>>bitch <<=setup.getNpcName("npc_boss","last")>>...@@"<br>
<br>
<<He npc_admin>> helps you back to your feet and supports you as you limp over to lean against a wall. You explain that you have a plan<<if State.hasPlayed("event_admin_confront_4")>>... this time<</if>>, but that, for now, <<=setup.getNpcName("npc_admin","first")>> needs to keep up the facade of the loyal minion, but that with <<his npc_admin>> help you'll put an end to <<=ps(setup.getNpcName("npc_boss","formal"))>> reign.<br>
<br>
"@@.npc_admin;Whatever I can do... god, to think of what I've been forced to do... what I almost did to you here...@@" <<He npc_admin>> shudders, "@@.npc_admin;I never could have forgiven myself for that. I'm with you <<callPlayer "npc_admin">> — whatever it takes, I'll be there to the end, we have to stop them.@@"<br>
<br>
You nod, hugging <<him npc_admin>> once again before you go your separate ways, hopeful, and re-motivated, that your need for secrecy will come to an end before too much longer...<br>
<br>
[<<moveTo "room_citymap" "Back to town." 300>>]
</div>/*#
#desc: recruit npc_landlord for help with npc_admin
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.return == "event_landlord_maidcafe_talk_1">>
<<set $player.location to "Cafe: Newtype IV">>
<<else>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.return == "event_landlord_maidcafe_talk_1">>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<<else>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<</if>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_landlord","first")>> if <<he npc_landlord>> could help you de-evil <<=setup.getNpcName("npc_admin","first")>>?<br>
<br>
"@@.npc_landlord;Si, of course <<callPlayer "npc_landlord">> — the both of you are my friend... though I not know what I could help with beyond literally beating sense back into <<him npc_landlord>>...@@"<br>
<br>
You reply that is pretty much the plan, explaining how <<=setup.getNpcName("npc_ai","first")>> has found an ambush point where you can confront <<=setup.getNpcName("npc_admin","first")>> away from surveillance.<br>
<br>
"@@.npc_landlord;Interesting... well, you just let me know and I be there... fighting with <<=setup.getNpcName("npc_admin","first")>>... that going to be an interesting one, but I have plan.@@"<br>
<br>
The way <<he npc_landlord>> says "plan" sends a slight shiver down your spine as you recall <<his npc_landlord>> background and are reminded that you would not want to be on the "wrong" side of one of <<his npc_landlord>> plans.<br>
<br>
<<if $scene.return == 'room_foyer'>>
[<<moveTo 'room_foyer' "Return to your flat." 60>>]
<<elseif $scene.return == 'event_landlord_maidcafe_talk_1'>>
[<<moveTo $scene.return "Talk about something else." 60>>]
<<else>>
[<<moveTo $scene.return "Resume cuddling." 60>>]
<</if>>
</div>/*#
#desc: wait for evil admin with npc_landlord
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You show <<=setup.getNpcName("npc_landlord","first")>> the alleyway and <<he npc_landlord>> nods, <<his npc_landlord>> eyes scanning it intently. "@@.npc_landlord;Si, this will do nicely — plenty of cover from the street, clear terrain, no side exits... if we going to stage an ambush, this as good a place as any. I ready if you are, <<callPlayer "npc_landlord">>.@@"<br>
<br>
<<set _ambush = setup.setNextDate($now, 0, 19, 30)>>
<<set _timeToAmbush = setup.secondsToDate($now,_ambush)>>
[<<moveTo "event_admin_stage5_confront_alt_2" "Settle in to wait." _timeToAmbush "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_admin_stage5_confront_alt_2" "Actually... maybe today isn't the best day for this." 600 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: npc_landlord fights evil admin
#status: RELEASED 0.9.1.0
#ignore_spell: 'll
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.abort>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<<else>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_landlord","npc_landlord_wrenchless") setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You tell <<=setup.getNpcName("npc_landlord","first")>> that you aren't ready to confront <<=setup.getNpcName("npc_admin","first")>> yet and you want to leave before <<he npc_admin>> shows up.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> looks at you with concern. "@@.npc_landlord;Si, <<callPlayer "npc_landlord">>. If you sense something off... well, best we play it safe. Still... I hate to think of my friend being trapped like that so... when you ready, you let me know?@@"<br>
<br>
You nod, <<=setup.getNpcName("npc_landlord","first")>> leading you out of the alleyway and then back to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home." 180>>]
<<else>>
You nervously wait alongside <<=setup.getNpcName("npc_landlord","first")>> until a large, familiar shadow appears in the alleyway.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> is like a statue, <<his npc_landlord>> jaw set, eyes narrowed as <<he npc_landlord>> waits for <<=setup.getNpcName("npc_admin","first")>> to get further into the alleyway. With a deep breath <<=setup.getNpcName("npc_landlord","first")>> steps out of your shared hiding place.<br>
<br>
"@@.npc_landlord;Hola, friend... well, not so much friend now, but we fix that, no?@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> stops and grins. "@@.npc_admin;What a surprise — <<=setup.getNpcName("npc_retention","formal")>> said that you had disappeared... I wonder what <<he npc_retention>>'ll say when I bring you back in?@@"<br>
<br>
"@@.npc_landlord;I suppose you have to beat me to find out, no?@@" <<=setup.getNpcName("npc_landlord","first")>> replies, standing almost casually as <<=setup.getNpcName("npc_admin","first")>> adopts a more martial stance.<br>
<br>
"@@.npc_admin;Like that's a problem, old <<man npc_landlord>>? You should have stayed gone, things are about to go very badly for you...@@"<br>
<br>
Despite <<his npc_admin>> bravado <<=setup.getNpcName("npc_admin","first")>> approaches slowly and your heart races as you watch the two<<if $npc_admin.fem == $npc_landlord.fem>> <<men npc_admin>><</if>> face off... with <<=setup.getNpcName("npc_landlord","first")>> continuing to stand almost relaxed... though you notice <<he npc_landlord>> is matching <<=ps(setup.getNpcName("npc_admin","first"))>> gaze unblinking.<br>
<br>
The two<<if $npc_admin.fem == $npc_landlord.fem>> <<men npc_admin>><</if>> circle, and then, with a look of impatience, <<=setup.getNpcName("npc_admin","first")>> makes <<his npc_admin>> move, leading with a jab to distract from a follow-up kick, with <<=setup.getNpcName("npc_landlord","first")>> merely sliding backwards out of range.<br>
<br>
"@@.npc_admin;I thought you were here to fight, old <<man npc_landlord>>?@@"<br>
<br>
"@@.npc_landlord;Si, si,@@" <<=setup.getNpcName("npc_landlord","first")>> replies, slipping another handful of strikes without retaliating, staying just on the edge of <<=ps(setup.getNpcName("npc_admin","first"))>> blows where <<he npc_landlord>> can safely dance away.<br>
<br>
<<if setup.getTotalValue("martial_arts") > 10>>
Despite <<his npc_landlord>> seeming casual movements you can tell that <<=ps(setup.getNpcName("npc_landlord","first"))>> footwork is perfect, <<his npc_landlord>> management of distance as masterful as it is smooth.
<<else>>
You can't put it into words, but you can tell that <<=setup.getNpcName("npc_landlord","first")>> is doing more than merely stepping away from each blow, <<his npc_landlord>> movements smooth and measured and clearly frustrating for <<his npc_landlord>> foe.
<</if>>
<br><br>
"@@.npc_admin;What is this, the rope a dope? You think you can tire me out making me swing at air?@@" <<=setup.getNpcName("npc_admin","first")>> taunts as <<he npc_admin>> continues to stalk forward, angling now to hem <<=setup.getNpcName("npc_landlord","first")>> in and drive <<him npc_landlord>> towards a corner between a dumpster and the alley wall.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> does not respond, instead slipping back once again only to find <<his npc_landlord>> back to the dumpster. With an evil grin <<=setup.getNpcName("npc_admin","first")>> charges forward behind a super<<man npc_admin>> punch... only for <<=setup.getNpcName("npc_landlord","first")>> to drive in and meet <<him npc_admin>>, <<his npc_landlord>> artificial arm shooting out with an open palm. The instant the cybernetic limb impacts <<=setup.getNpcName("npc_admin","first")>> there is a burst of lightning, <<=ps(setup.getNpcName("npc_admin","first"))>> entire body going rigid before falling forward, <<=setup.getNpcName("npc_landlord","first")>> catching <<him npc_admin>> and smoothly guiding the <<if $npc_admin.fem == $npc_landlord.fem>>larger<<else>>large<</if>> <<man npc_admin>> to the ground — the fight over in an instant amidst the smell of scorched clothing.<br>
<br>
"@@.npc_landlord;Was just waiting for that, mi compadre.@@"<br>
<br>
Almost as stunned as <<=setup.getNpcName("npc_admin","first")>> it takes you a moment to scramble out of your hiding place to stand next to <<=setup.getNpcName("npc_landlord","first")>> as <<he npc_landlord>> bustles with tying <<=setup.getNpcName("npc_admin","first")>> up before the big <<guy npc_admin>> can wake up.<br>
<br>
[<<moveTo "event_admin_stage5_confront_alt_3" "Continue." 600>>]
<</if>>
</div>/*#
#desc: you and npc_landlord confront beaten npc_admin
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<storeVisual $player $npc_admin>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_landlord","npc_landlord_wrenchless") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
Wrists bound behind <<his npc_admin>> back, <<=setup.getNpcName("npc_admin","first")>> thrashes for a moment before <<he npc_admin>> looks around and seems to realise where <<he npc_admin>> is.<br>
<br>
"@@.npc_admin;What the—@@" <<He npc_admin>> starts, only to be cut off by <<=setup.getNpcName("npc_landlord","first")>> using a stern tone you've never heard <<him npc_landlord>> use before.<br>
<br>
"@@.npc_landlord;Wake up, soldier! You fell victim to a psy-op — but it's over now, you're safe.@@"<br>
<br>
"@@.npc_admin;I—@@" <<=setup.getNpcName("npc_admin","first")>> seems confused, and you wonder if <<he npc_admin>>'s, perhaps, flashing back to the war... <<his npc_admin>> eyes drift past <<=setup.getNpcName("npc_landlord","first")>> to alight on you and then <<his npc_admin>> expression shifts from confusion to shock, realisation passing over <<his npc_admin>> face in waves.<br>
<br>
"@@.npc_admin;I—Oh god, what have I done? Please, <<callPlayer "npc_admin">>... no, I don't deserve to call you that, after what I've done, I—@@"<br>
<br>
You cut <<him npc_admin>> off, diving towards <<him npc_admin>> with a hug as you explain that it's okay, you know everything, you know it wasn't <<him npc_admin>>, and that <<he npc_admin>>'s safe now.<br>
<br>
[<<moveTo "event_admin_stage5_confront_alt_4" "Continue." 600>>]
</div>/*#
#desc: npc_landlord helps npc_admin be no longer evil
#status: RELEASED 0.9.1.0
#ignore_spell: truk
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.evil = 4>>
<<include "checkRescueFriendsTask">>
<<include "startAdminSexdoll">>
<<if $npc_manager.flags.evil == 2>>
<<if State.hasPlayed("event_work_manager_and_admin_1")>>
<<addWorkEvent 'admin_office_sex_visit_repeat'>>
<<else>>
<<addWorkEvent 'admin_office_sex_visit'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_landlord","npc_landlord_wrenchless") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
It takes several more minutes of mutual apologies and untying before the three of you are back together and on your feet.<br>
<br>
"@@.npc_admin;So...@@" <<=setup.getNpcName("npc_admin","first")>> states, looking to <<=setup.getNpcName("npc_landlord","first")>> for guidance, only for <<=setup.getNpcName("npc_landlord","first")>> to turn to you.<br>
<br>
"@@.npc_landlord;What now, <<callPlayer "npc_landlord">>? We safe now but... so long as the company in power, nobody REALLY safe.@@"<br>
<br>
You nod, as euphoric as you feel in the present... there's still work to do. You quickly explain to <<=setup.getNpcName("npc_admin","first")>> that, for the sake of the plan, <<he npc_admin>>'s going to have to keep up the facade a bit longer, but that you will find a way to bring down <<=setup.getNpcName("npc_boss","formal")>> and the rest, and you'll surely need <<his npc_admin>> help.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> nods. "@@.npc_admin;Of course, <<callPlayer "npc_admin">> you just let me know...@@" <<He npc_admin>> glances around the alleyway, "@@.npc_admin;I guess we should probably scatter then... don't want anyone thinking I went missing.@@"<br>
<br>
<<if $npc_landlord.first_name == "Kurt">>
"@@.npc_landlord;You just tell them truth, you get hit by Truk...@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> smirks at the anagram. "@@.npc_admin;Something like that — I guess you made some modifications from the civilian downgrade you were supposed to get? 'Cause I'm pretty sure you aren't legally supposed to be able to do that anymore. Anyway, you stay safe... and I owe you a drink when this is all over.@@"
<<else>>
"@@.npc_landlord;Just be careful, I doubt that trick work so good a second time.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> nods. "@@.npc_admin;Yeah... I didn't think the civilian model allowed you to do that... guess you made a few mods. Anyway, you stay safe... and I owe you a drink when this is all over.@@"
<</if>>
<br><br>
The three of you scatter, though your heart swells as you feel like you've taken another big step towards victory... though much work remains.<br>
<br>
[<<moveTo "room_citymap" "Back to town." 300>>]
</div>/*#
#desc: admin picks you up for your date
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.stage = 2>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $scene.date = {}>>
<<set $scene.date.start = $now>>
<<if $now.getUTCDay() == 4>>
/%so that it doesn't trigger during the date%/
<<set _nextDate = setup.setNextDate($now, 0, 22, 0)>>
<<set $events.weekly_salary_phonecall.trigger.date = _nextDate>>
<</if>>
<<set $scene.changed=false>>
<<storeVisual $player $npc_admin>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
Your day at an end <<=setup.getNpcName('npc_admin', 'first')>> enters the office. <<Hes npc_admin>> looking a bit nervous, though not as nervous as you are. Perhaps trying to put you at ease <<he npc_admin>> quickly adopts a confident facade as <<he npc_admin>> approaches your desk with a smile.<br>
<br>
"@@.npc_admin;Hey, so I managed to get a reservation for tonight... you still want to go on that date?@@"<br>
<br>
The word date hits you like a hammer, a date, with <<=setup.getNpcName('npc_admin', 'first')>>; your oldest friend and after today... something more? You shiver slightly and <<he npc_admin>> raises an eyebrow. "@@.npc_admin;You alright?@@"<br>
<br>
You quickly nod, explaining that the office has just been a little chilly today as you stand up and smile at <<him npc_admin>>.<br>
<br>
<<He npc_admin>> smiles "@@.npc_admin;I ever mention that it's a bit weird you being that tall? I mean, I love a lady in heels<<if $npc_admin.fem>>, I love being a woman in heels, which is why I make sure to always train calf raises<<else>>, don't get me wrong<</if>>, but when you know someone for so long it's just strange when they suddenly change height!@@" <<He npc_admin>> pauses for a moment awkwardly "@@.npc_admin;Sorry, distracted for a moment there, shall we be off?@@"<br>
<br>
<<He npc_admin>> offers <<his npc_admin>> arm and your heart almost flutters out of your chest. This is really happening!<br>
<br>
<<hint $options "The stakes tonight feel quite high, you'll need to consider your every choice if you want to thread the needle to spark <<his npc_admin>> interest without scaring <<him npc_admin>> off.">>
[<<moveTo "event_admin_first_date_change_1" 'Ask for a moment to "freshen up" for your date.' 60 "<<set $scene.date.elbow = true>>">>]<br>
[<<moveTo "event_admin_first_date_2" "Place your hand in the crook of <<his npc_admin>> elbow." 600 "<<set $scene.date.elbow = true>>">>]<br>
[<<moveTo "event_admin_first_date_2" "Just walk next to <<him npc_admin>>." 600 "<<set $scene.date.elbow = false>>">>]
</div>/*#
#desc: ask to change for admin date
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plugPresent = !setup.checkItemTypeTag('plug', ['vibrating'])>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_admin', 'first')>> if you could have a moment to "freshen up" for your date and <<he npc_admin>> smiles. "@@.npc_admin;Of course... though you already look lovely enough to me!@@"<br>
<br>
You blush and are about to head for the bathroom when <<=setup.getNpcName('npc_manager', 'formal')>> beckons you into her office. "@@.npc_manager;If you need to change, you can use my room,@@" she states.<br>
<br>
<<if $scene.plugPresent>>
As you walk past <<=setup.getNpcName('npc_manager', 'formal')>> into the inner office she whispers "@@.npc_manager;I left you something to... complete your outfit.@@"<br>
<br>
<</if>>
[<<moveTo "event_admin_first_date_change_2" 'Proceed into <<=ps(setup.getNpcName("npc_manager","formal"))>> private office.' 60>>]
</div>/*#
#desc: change for first admin date
#status: RELEASED 0.8.7.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if setup.checkOutsideDecency()>>
<<set $scene.outfit_type = setup.analyzeWornTags(['slutty','casual','office','formal'])>>
<<elseif setup.checkNaked()>>
<<set $scene.outfit_type = 'naked'>>
<<elseif setup.checkSleepWear() != "not_sleepwear">>
<<set $scene.outfit_type = 'bed'>>
<<elseif setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings')>>
<<set $scene.outfit_type = 'underwear'>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'male'>>
<<set $scene.outfit_type = 'male'>>
<<else>>
<<set $scene.outfit_type = 'error'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
You stand alone in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office, noting that there is a mirror with some supplies you could use for your makeup, as you consider final preparations for your date with <<=setup.getNpcName('npc_admin', 'first')>>.
<<if $scene.plugPresent>>
As your heart flip-flops in excitement you notice the item <<=setup.getNpcName('npc_manager', 'formal')>> was referring to... a not immodestly-sized buttplug.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<printThought "I'm already plugged... would this one be better, in some way?">>
<<else>>
<<printThought "This is part of complete outfit? What warped world does <<=setup.getNpcName('npc_manager', 'formal')>> live in?">>
<</if>>
<</if>>
You consider yourself in the mirror.<br>
<br>
<<set $scene.makeuproom='Office of <<=setup.getNpcName("npc_manager", "formal")>>'>>
<<if setup.getCurrentMakeup() == "">>
<<printThought "I really should wear makeup for my date.">><br>
<br>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.return_makeuproom="event_admin_first_date_change_2">><<set $scene.makeuproom_image="./images/locations/sissy_office.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]
<<elseif $player.makeup.messed > 20>>
<<printThought "I should fix my makeup to look my best for dinner.">><br>
<br>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.return_makeuproom="event_admin_first_date_change_2">><<set $scene.makeuproom_image="./images/locations/sissy_office.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]
<<elseif !setup.checkOutsideDecency()>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.return_makeuproom="event_admin_first_date_change_2">><<set $scene.makeuproom_image="./images/locations/sissy_office.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]<br>
[@@.link_locked;You are not appropriately attired go outside, much less a date!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<<elseif ["formal","office","slutty"].includes($scene.outfit_type)>>
<<switch $scene.outfit_type>>
<<case "formal">>
<<printThought "I look so fancy! I hope <<=setup.getNpcName('npc_admin', 'first')>> likes it...">>
<<case "office">>
<<printThought "Suitable for the office... I'm sure <<=setup.getNpcName('npc_admin', 'first')>> will be fine with this.">>
<<case "slutty">>
<<printThought "A bit slutty... but I'm sure <<=setup.getNpcName('npc_admin', 'first')>> will like this.">>
<<default>>
ERROR: unexpected scene.outfit_type <<=$scene.outfit_type>>
<</switch>>
<br><br>
<<if $scene.plugPresent>>
You glance at the plug, sitting so ominously on the desk.<br>
<br>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.return_makeuproom="event_admin_first_date_change_2">><<set $scene.makeuproom_image="./images/locations/sissy_office.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]<br>
<<if setup.checkItemTypeWorn("plug")>>
[<<moveTo "event_admin_first_date_change_3" "Upgrade your rear before you head out." 60 "<<set $scene.plug=true>>">>]<br>
<<else>>
[<<moveTo "event_admin_first_date_change_3" "Stuff your rear before you head out." 60 "<<set $scene.plug=true>>">>]<br>
<</if>>
[<<moveTo "event_admin_first_date_change_3" "Leave the plug and head out for your date." 60 "<<set $scene.plug=false>>">>]<br>
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.return_makeuproom="event_admin_first_date_change_2">><<set $scene.makeuproom_image="./images/locations/sissy_office.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]<br>
[<<moveTo "event_admin_first_date_change_3" "Exit the inner office, it's time for your date..." 60>>]<br>
<</if>>
<<else>>
<<switch $scene.outfit_type>>
<<case 'naked'>>
<<printThought "Naked? No, that is very much not appropriate for a fancy dinner date.">>
<<case 'casual'>>
<<printThought "Hmm... this feels a bit too casual for a fancy dinner date.">>
<<case 'bed'>>
<<printThought "Dressed for bed? No, we're going on a fancy dinner date.">>
<<case 'underwear'>>
<<printThought "I think I need to be wearing more than underwear for a fancy dinner date!">>
<<default>>
ERROR: unexpected scene.outfit_type <<=$scene.outfit_type>>
<</switch>>
<br><br>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.return_makeuproom="event_admin_first_date_change_2">><<set $scene.makeuproom_image="./images/locations/sissy_office.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]
<</if>>
</div>/*#
#desc: admin date after changing
#status: RELEASED 0.8.7.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.changed=true>>
<<if $scene.plugPresent && $scene.plug>>
<<set $scene.replacePlug = setup.checkItemTypeWorn("plug", true)>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<<changeHorny 30>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.plugPresent>>
<<if $scene.plug>>
You take the plug that <<=setup.getNpcName('npc_manager', 'formal')>> left out for you, and the generously accompanying packet of lube, and
<<if $scene.replacePlug>>
replace what you were wearing previously, the new plug seating nicely between your cheeks.
<<elseif setup.checkItemTypeTag('plug', ['hollow'])>>
stuff the new plug inside your already worn "hollow" occupant, moaning softly at the feeling of being double-full.
<<else>>
slide the plug into your rear, while not exactly small, it fits easily, and you feel flush with excitement.
<</if>>
<<else>>
With a final nervous glance you leave the plug on the desk and try to focus on your date.
<</if>>
<br><br>
<</if>>
You emerge from the inner office for <<=setup.getNpcName('npc_admin', 'first')>> to greet you with a wide, beaming smile.
<<switch $scene.outfit_type>>
<<case "formal">>
"@@.npc_admin;You're making me feel under-dressed, You look gorgeous!@@"
<<case "office">>
"@@.npc_admin;You look lovely, and so professional!@@"
<<case "slutty">>
"@@.npc_admin;Woah, you're a real head-turner this evening!@@"
<<default>>
ERROR: unexpected scene.outfit_type <<=$scene.outfit_type>>
<</switch>>
<br><br>
You're thankful for your makeup to help hide your blushing response as you walk over to where <<hes npc_admin>> standing and <<he npc_admin>> offers <<his npc_admin>> arm.<br>
<br>
[<<moveTo "event_admin_first_date_2" "Place your hand in the crook of <<his npc_admin>> elbow." 600 "<<set $scene.date.elbow=true>>">>]<br>
[<<moveTo "event_admin_first_date_2" "Just walk next to <<him npc_admin>>." 600 "<<set $scene.date.elbow=false>>">>]
</div>/*#
#desc: manager wishes you and admin well on date
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.partyPostpone = $currentTasks.hasOwnProperty('task_stage_3_party') && setup.daysToDate($now,setup.getTaskDueDate('task_stage_3_party')) == 0>>
<<if $scene.partyPostpone>>
<<postponeTask 'task_stage_3_party' 7>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.date.elbow>>
You gently place your hand on <<=ps(setup.getNpcName('npc_admin', 'first'))>> arm, <<his npc_admin>> thick, muscly, <<if $npc_admin.fem>>toned<<else>>manly<</if>> arm. The two of you start towards the door.
<<else>>
Keeping your hands to yourself you move towards the door, <<=setup.getNpcName('npc_admin', 'first')>> drops <<his npc_admin>> arm to fall in next to you.
<</if>>
<br><br>
<<if $scene.changed>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and waves the two of you good-bye.
<<else>>
Just as you reach the door you hear a noise behind you, turning to see <<=setup.getNpcName('npc_manager', 'formal')>> standing in the doorway.
<</if>>
<br><br>
"@@.npc_manager;Best of luck you two, have a lovely evening!@@"<br>
<br>
"@@.npc_admin;That's the plan!@@" <<he npc_admin>> calls back "@@.npc_admin;Though that's only if we make it there in time for our reservation, gotta go!@@"<br>
<br>
<<if $scene.partyPostpone>>
"@@.npc_manager;And do not bother yourself with thoughts of the corporate party we were to attend@@" she adds, addressing you, "@@.npc_manager;We can postpone until next Thursday.@@"<br>
<br>
You get a strange feeling that she might rather postpone things indefinitely, but that even this much of a delay is pushing what she can permit without getting in trouble with those even further up.<br>
<br>
<</if>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and waves as the two of you exit the office and head for the elevator <<if $scene.date.elbow>>arm in arm<<else>>side by side<</if>>.<br>
<br>
[<<moveTo "event_admin_first_date_2b" "Ride to the restaurant." 600>>]
</div>/*#
#desc: ride to restaurant with admin
#status: FINISHED 0.7.0.0
#ignore_spell: d'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
Your heart beats faster as you silently travel down the elevator to the parking garage where you get into <<=ps(setup.getNpcName('npc_admin', 'first'))>> car — <<him npc_admin>> driving, of course — and head for the restaurant.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
The rumble of the road can't help, but remind you of the fact that you have a <<=setup.getItemTypeName("plug")>> in your ass — not exactly the optimal plan to keep you "calm," <<if $npc_manager.stage >= 3>>but with it being "required" for your job, and leaving straight from work, you really had no other options<<else>>but it's a bit too late for that now<</if>>.<br>
<br>
<</if>>
The drive passes fairly quickly and you gawk in surprise when you roll up in front of the building and <<=setup.getNpcName('npc_admin', 'first')>> hands the keys to a valet — it's one of the nicest restaurants in the city and you stare at <<him npc_admin>> in shock as <<he npc_admin>> holds the door for you to head inside.<br>
<br>
"@@.npc_admin;I was planning on something a bit more low-key, but <<=setup.getNpcName('npc_manager', 'first')>> messaged me and said that I could use one of her reservations — apparently it's an executive perk arrangement or something that they use for wowing clients. Last minute so I'm sure we'll get a pretty crap table, but hey, the food is supposed to be amazing!@@"<br>
<br>
You nod,
<<if $scene.date.elbow>>
reflexively placing your hand in the crook of <<his npc_admin>> arm once again as you walk up to the maitre d'.
<<else>>
walking at <<his npc_admin>> side.
<</if>>
"@@.npc_admin;Party of two, should be under the name <<=setup.getNpcName('npc_manager', 'last')>>?@@"<br>
<br>
You see the <<man>>'s eye shimmer with the tell-tale sign of a contact-lens projection system. "@@.generic_male1;Ah, very good<<if $npc_admin.fem>>, madams<<else>> sir, ma'am,<</if>> if you would follow me please I will take you to your table.@@"<br>
<br>
[<<moveTo "event_admin_first_date_3" "Arrive at your table." 600>>]
</div>/*#
#desc: admin first date, sit down at your table, vibe goes off
#status: FINISHED 0.7.0.0
#ignore_spell: d'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
<<set $scene.plugSize = setup.getEffectivePlugSize()>>
<<applyExperience 'humiliation' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'anal' $scene.plugSize 'little' $SEEN_FRIEND>>
<<set $player.timebased.horny = 80>>
<<applyStress 10>>
<</if>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
The restaurant is even fancier than you had heard and you feel
<<if setup.analyzeWornTags(['office','formal']) == "formal">>
glad you made the decision to dress up for the occasion.
<<else>>
a touch under-dressed in just your work attire.
<</if>>
<br><br>
Led through the large main room, you keep waiting for the maitre d' to stop at each table only for <<him>> to continue past and then turn a corner and open a door to a private room... a private room that is presently setup VERY romantically — a small round table just large enough for two lit by authentic candlelight.<br>
<br>
Sliding into the room the <<man>> holds a seat for you.<br>
<br>
Stunned, you glance at <<=setup.getNpcName('npc_admin', 'first')>>, but <<he npc_admin>> appears just as surprised as you do.<br>
<br>
Handing you each a menu, you are momentarily confused by the weird formatting, and lack of price, until <<he>> explains. "@@.generic_male1;It is the chef's pleasure to serve you her award-winning tasting menu — eighteen courses of the best food in the city. Feel free to peruse the listing of what is to come, that it may heighten the anticipation.@@"<br>
<br>
Waiting a moment in case you have anything else, the Maitre d' bows and departs, promising that the waiter will be by with your first dish shortly. Looking over the menu, you notice that, while the individual items merely have their name and a short description, there IS a price down at the bottom... and it is more than you earn in a month.<br>
<br>
Noting your expression of shock, <<=setup.getNpcName('npc_admin', 'first')>> quickly clarifies. "@@.npc_admin;Look, I had no idea. I mean, yeah, I knew this place was a bit fancy, but this?@@" <<he npc_admin>> shakes <<his npc_admin>> head. "@@.npc_admin;Our boss is quite the lady, isn't she?@@"<br>
<br>
You nod, then raise your menu for a bit of cover as you try to compose yourself, the combination of the private room and the romantic candlelit atmosphere only amplifying your nervousness.<br>
<br>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
Silence fills the room as the two of you read, only to be interrupted by the <<=setup.getItemName($scene.plug)>>
<<if $scene.plugSize > setup.getTotalValue("anal")>>
constantly stretching
<<elseif $scene.plugSize == setup.getTotalValue("anal")>>
perfectly filling
<<else>> presently occupying
<</if>>
your rear to burst into vibrating life. You gasp, both in surprise and as the intense thrumming against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> causes you to leap to a fresh height of humiliated arousal.<br>
<br>
"@@.npc_admin;You okay?@@" <<He npc_admin>> asks as you desperately try not to cry out, hoping that your body is enough insulation to keep <<him npc_admin>> from hearing the buzzing that is still intensely stimulating you.<br>
<br>
"@@.pc;Y-yes,@@" you half-gasp, half whisper. The vibrations instantly cease.<br>
<br>
<<printThought "Wait, did <<=setup.getNpcName('npc_manager', 'formal')>> do that on purpose to get me to talk? Are they going to start up again if I'm silent too long?">><br>
<br>
Deciding you don't want to risk finding out you force a smile as you look back up at <<=setup.getNpcName('npc_admin', 'first')>> concerned face.<br>
<br>
"@@.npc_admin;You okay, is something the matter?@@"<br>
<br>
<<printThought "This might not be the right time to tell <<him npc_admin>> the truth, that part of my job is being a horny slave with a vibrating butt-plug shoved up my ass...">><br>
<br>
[<<moveTo "event_admin_first_date_4" "Tell <<him npc_admin>> about your butt plug." 600 "<<set $scene.date.vibe = true>>">>]<br>
[<<moveTo "event_admin_first_date_4" "Say you were just excited by one of the items on the menu." 600>>]
<<else>>
You read the menu quietly, still taken aback by the prices and uncertain what to order.<br>
<br>
Clearing <<his npc_admin>> throat <<=setup.getNpcName('npc_admin', 'first')>> breaks the silence "@@.npc_admin;You okay, is something the matter?@@"<br>
<br>
[<<moveTo "event_admin_first_date_4" "Say you are just a bit overwhelmed by the choices." 600 "<<set $scene.date.vibe = false>>">>]
<</if>>
</div>/*#
#desc: admin first date, talk about vibe
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
<<if $scene.date.vibe>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'humiliation' 8 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<applyStress 10>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $scene.date.vibe>>
Casually picking your menu back up you reply that you were just surprised by the vibrator in your ass going off.<br>
<br>
You peek around the menu to catch a glimpse of <<his npc_admin>> shocked expression as it takes <<him npc_admin>> several moments to manage to form a reply.<br>
<br>
"@@.npc_admin;No- what? You're fuckin' with me!@@"<br>
<br>
You clarify that you are quite serious, that you are plugged most of the time, in fact; being that it is part of your uniform requirements and work "training." <br>
<br>
"@@.npc_admin;Training? What? I mean, sure, okay I know <<=setup.getNpcName('npc_manager', 'first')>> runs a bit of a... different sort of office but... is this all her responsibility? Did she make you like this?@@"<br>
<br>
<<printThought "Uh-oh, I need to get this back on track or my romantic plans are doomed and we're probably both going to be in trouble...">><br>
<br>
[<<moveTo "event_admin_first_date_4_truth" "Tell <<him npc_admin>> the truth... ALL of the truth." 600>>]<br>
[<<moveTo "event_admin_first_date_4_enthusiast" "Tell <<him npc_admin>> the truth, but explain that, as crazy as it may sound... you love EVERYTHING about your new job." 600>>]<br>
[<<moveTo "event_admin_first_date_4_slut" "Pull back, YOU wanted to become a sexy slut." 600>>]
<<else>>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
Desperate for cover you glance at the menu at random and explain that you were just surprised to see a mukombero root dish, you'd heard about it on a cooking show once and it's supposed to be really good.<br>
<br>
You aren't sure if <<he npc_admin>> totally bought your excuse, but <<he npc_admin>> nods, then smirks. "@@.npc_admin;So, funny thing about that — it's actually considered an aphrodisiac, one of my cousins swears by it...@@" <<His npc_admin>> voice trails off. "@@.npc_admin;Wait, you don't think <<=setup.getNpcName('npc_manager', 'first')>>?@@"<br>
<br>
The two of you quickly agree that it must be a coincidence just as the first of your eighteen courses arrive.
<<else>>
You explain that this restaurant, the menu... well, it's been a long time since you were someplace so nice. Scratch that, you've NEVER been anywhere this nice.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> chuckles. "@@.npc_admin;Yeah, me too. Our boss, <<=setup.getNpcName('npc_manager', 'first')>>? Well, she's quite something, isn't she, I swear just when I think I have her figured out she throws out a curve-ball...@@" <<His npc_admin>> voice trails off as a waiter arrives with the first of your eighteen courses.
<</if>>
<br><br>
Though tension remains in the air the both of you are soon distracted by the truly amazing food, each dish beautiful, unique and ranking among the best flavours you've ever tasted<<if setup.getTotalValue("cum") > 15>> well, discounting cum, nothing can ever compare to the ambrosia that is creamy nut butter.<<elseif setup.getTotalValue("cum") > 10>> right up there with cum!<<else>>.<</if>><br>
<br>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
Keeping you even more on guard is the fact that if you ever fall silent for too long your vibrator will kick back on for a second or two. Nowhere near the brain-melting full power of the first time it is enough to keep you alert, and to keep the conversation rolling.<br>
<br>
<</if>>
Several dishes in and the discussion roams back towards more serious subjects as <<he npc_admin>> asks what your relationship goals are, what spurs your interest in <<him npc_admin>> after being "just friends" for so many years.<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for <<his npc_admin>> big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<<else>>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for more of <<his npc_admin>> big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<</if>>
[<<moveTo "event_admin_first_date_5" "Say you want a big, strong <<man npc_admin>> to protect you." 600 "<<set $scene.date.goal = 'protect'>>">>]<br>
[<<moveTo "event_admin_first_date_5" "Say <<hes npc_admin>> been such a good friend, but recently you find yourself wanting something more... something romantic..." 600 "<<set $scene.date.goal = 'romance'>>">>]
<</if>>
</div>/*#
#desc: admin first date, tell the truth
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.knowManagerTruth = 2>>
<<include "checkAdminTruth">>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_5'
5
'theme_admin_work_situation_1'
true
>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
Once you start telling <<him npc_admin>> the truth you can't seem to stop, <<he npc_admin>> sits wide-eyed as you explain everything that has happened to you, from the "accident" to your re-employment to every transformation that you've gone through since and, especially <<=ps(setup.getNpcName('npc_manager', 'formal'))>> central role in all of it.<br>
<br>
<<He npc_admin>> sits in shock as you are finally interrupted by a waiter arriving with the first course of your meal, the two of you eating in relative silence as <<he npc_admin>> tries to process the information. Only occasionally breaking to ask a clarification or confirm that <<he npc_admin>> didn't misremember and that your fantastical, perverted tale really happened.<br>
<br>
"@@.npc_admin;So, <<=setup.getNpcName('npc_manager', 'first')>>, sorry "<<=setup.getNpcName('npc_manager', 'formal')>>" is part of some sort of company-wide conspiracy to... what? Turn people into bimbofied<<if $fetish.sissy>>, sissy<</if>> sex slaves?@@"<br>
<br>
You shrug, not having any idea what the end "goal" is, or even how vast the conspiracy really is.<br>
<br>
"@@.npc_admin;Wow, sorry, I... well, this puts everything into a new light but...@@" <<He npc_admin>> takes a deep breath. "@@.npc_admin;You're my friend, my <<callPlayer "npc_admin">> and well... I gotta stand up against this. Next time I'm in the office I'm going to march up to <<=setup.getNpcName('npc_manager', 'first')>> and — well, to be honest I'm not quite sure what happens next, but I'm going to put a stop to this!@@"<br>
<br>
<<printThought "Oh shit, even after everything I said <<he npc_admin>> doesn't get what <<hes npc_admin>> getting into. If I don't stop <<him npc_admin>>...">><br>
<br>
[<<moveTo "event_admin_first_date_failed" "Remain silent." 3600>>] <<hint $options "This could have dire effects for your friend, and your relationship.">><br>
[<<moveTo "event_admin_first_date_4_slut" "Try to convince <<him npc_admin>> that a head-on confrontation is a bad idea." 60>>]
</div>/*#
#desc: admin first date, tell the truth
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You hurriedly clarify that sure, <<=setup.getNpcName('npc_manager', 'formal')>>, or <<=setup.getNpcName('npc_manager', 'other')>> as you state to <<him npc_admin>> (a title that feels somehow wrong on your lips), may have a bit of a unique management style all she's doing is opening the door for you to embrace becoming the horny slut your prior fears and delusions about purity had been keeping you from.<br>
<br>
<<He npc_admin>> still seems a bit suspicious, but you finally manage to put <<him npc_admin>> at ease as you point out how long <<hes npc_admin>> known you and the contrast between your dumpy dead-end, non-sexual "monogamous" relationship with your ex and your new, vibrant self. <<if !$npc_admin.flags.monogomous_manager>>Also the fact that <<hes npc_admin>> fucking your boss and didn't see anything wrong with that, <<if $npc_admin.fem>>sounds like a double standard<<else>>sexist double standard<</if>>!<</if>><br>
<br>
"@@.npc_admin;Heh, I guess when you put it that way... alright, my best friend is a horny slut who likes dressing like a bimbo<<if $scene.plug != "">> and walking around with a plug stuffed up her ass<</if>>... not my thing, but sure, I guess I can get that.@@"<br>
<br>
<<if $scene.plug != "">>
You smile and point out that the plug is just for training and there are other... things that you much prefer feeling deep inside your holes, and you lick your lips as you add <<if $player.body_ref.vagina>>ANY<<else>>EITHER<</if>> of your holes.
<<elseif setup.getTotalValue("bimbofication") > 10>>
You smile and point out that it's more than just dressing like a horny bimbo slut... when it comes to that role you're very much a "method" actress.
<<else>>
You smile and point out that it's more than just dressing like a horny bimbo slut... the outfit is something more like an audition.
<</if>>
<br><br>
<<He npc_admin>> shifts a bit awkwardly in <<his npc_admin>> seat as you grin, a waiter arriving with another course providing <<him npc_admin>> with a welcome distraction.<br>
<br>
"@@.npc_admin;Food! Yes, wonderful.@@"<br>
<br>
The two of you eat in silence as you ease back a bit on the sex-pot gas pedal<<if setup.checkItemTypeTag('plug', ['vibrating'])>>, quietly enduring the plug in your ass turning back on<</if>> as you wait for <<him npc_admin>> to restart the conversation.<br>
<br>
"@@.npc_admin;So, leaving aside our individually... unique relationships with our mutual boss... what are you looking for from me? I mean she seems to be going turbo-speed matchmaker, and you've certainly been coming on to me hard but... what is it that you actually want?@@"<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for <<his npc_admin>> big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<<else>>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for more of <<his npc_admin>> big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<</if>>
[<<moveTo "event_admin_first_date_5" "Say you want a big, strong <<man npc_admin>> to protect you." 600 "<<set $scene.date.goal = 'protect'>>">>]<br>
[<<moveTo "event_admin_first_date_5" "Say <<hes npc_admin>> been such a good friend, but recently you find yourself wanting something more... something romantic..." 600 "<<set $scene.date.goal = 'romance'>>">>]
</div>/*#
#desc: admin first date, tell the truth enthusiast
#status: FINISHED 0.8.7.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.knowManagerTruth = 2>>
<<include "checkAdminTruth">>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_5'
5
'theme_admin_work_situation_1'
true
>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You try to explain to <<=setup.getNpcName('npc_admin', 'first')>> that, while you've certainly gone through quite a lot, and a lot of changes, since moving "upstairs" to work for <<=setup.getNpcName('npc_manager', 'formal')>>, the end result is that you are infinitely happier with yourself, and your life.<br>
<br>
<<He npc_admin>> remains suspicious, continuing to prod until you admit that, sure, the company may be a bit nefarious — though what company isn't? And, for someone else, what your <<=setup.getNpcName('npc_manager', 'title')>> has done to and for you might have been wrong, but, well... you hardly consider yourself a victim, more an... enthusiastic participant who maybe just needed a bit of a push to set them down the wonderful new road you've found yourself sprinting along.<br>
<br>
<<=ps(setup.getNpcName('npc_admin', 'first'))>> definitely remains a bit suspicious, but accepts your words.<br>
<br>
"@@.npc_admin;Look... you certainly seem happy, and even through it all it's still you, maybe you're right? I mean, I don't think it's the sort of thing I'd want to happen, and I'm going to be keeping a closer eye on the company... but if my best friend is living her best life as a horny slut who likes dressing like a bimbo<<if $scene.plug != "">> and walking around with a plug stuffed up her ass<</if>>? Well, I'm just happy you're happy, y'know?@@"<br>
<br>
<<if $scene.plug != "">>
You smile and point out that the plug is just for training and there are other... things that you much prefer feeling deep inside your holes, and you lick your lips as you add <<if $player.body_ref.vagina>>ANY<<else>>EITHER<</if>> of your holes.
<<elseif setup.getTotalValue("bimbofication") > 10>>
You smile and point out that it's more than just dressing like a horny bimbo slut... when it comes to that role you're very much a "method" actress.
<<else>>
You smile and point out that it's more than just dressing like a horny bimbo slut... the outfit is something more like an audition.
<</if>>
<br><br>
<<He npc_admin>> shifts a bit awkwardly in <<his npc_admin>> seat as you grin, a waiter arriving with another course providing <<him npc_admin>> with a welcome distraction.<br>
<br>
"@@.npc_admin;Food! Yes, wonderful.@@"<br>
<br>
The two of you eat in silence as you ease back a bit on the sex-pot gas pedal<<if setup.checkItemTypeTag('plug', ['vibrating'])>>, quietly enduring the plug in your ass turning back on<</if>> as you wait for <<him npc_admin>> to restart the conversation.<br>
<br>
"@@.npc_admin;So, leaving aside our individually... unique relationships with our mutual boss... what are you looking for from me? I mean she seems to be going turbo-speed matchmaker, and you've certainly been coming on to me hard but... what is it that you actually want?@@"<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for more of <<his npc_admin>> big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<<else>>
[<<moveTo "event_admin_first_date_5" "Say you're desperate for <<his npc_admin>> big cock." 600 "<<set $scene.date.goal = 'cock'>>">>]<br>
<</if>>
<<if $scene.date.goal == "protect">>
[@@.link_locked;<<=setup.getNpcName('npc_admin', 'first')>> already confirmed that <<he>>'ll always be there protect you.@@]<br>
<<else>>
[<<moveTo "event_admin_first_date_5" "Say you want a big, strong <<man npc_admin>> to protect you." 600 "<<set $scene.date.goal = 'protect'>>">>]<br>
<</if>>
[<<moveTo "event_admin_first_date_5" "Say <<hes npc_admin>> been such a good friend, but recently you find yourself wanting something more... something romantic..." 600 "<<set $scene.date.goal = 'romance'>>">>]
</div>/*#
#desc: admin first date, tell the truth
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addWorkEvent 'admin_morning_confrontation'>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You remain silent as you watch the wheels in <<his npc_admin>> head spin as <<he npc_admin>> considers how to "save" you.<br>
<br>
Strangely, though the rest of the meal passes with hardly any additional discussion<<if setup.checkItemTypeTag('plug', ['vibrating'])>>, your plug remains strangely silent, an initial relief that eventually becomes something more ominous<</if>>.<br>
<br>
Distracted from properly enjoying the meal you eventually reach the end of the nigh-endless courses and <<he npc_admin>> drives you home, promising as <<he npc_admin>> drops you off that <<if $npc_admin.fem>>she'll<<else>>he'll<</if>> "@@.npc_admin;Take care of things.@@"<br>
<br>
You nod and wave good-bye before heading up to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 1800>>]<br>
[<<moveTo "event_admin_first_date_1" "No, this is a mistake, this isn't how I wanted things to go at all..." 300 "<<set $now = $scene.date.start>><<set $scene.date = {}>><<removeWorkEvent 'admin_morning_confrontation'>>">>]
</div>/*#
#desc: admin first date, talk about goals for relationship
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'tipsy'>>
<<if $scene.date.goal == 'cock'>>
<<applyExperience 'penis' 15 'terrible' $ALONE>>
<<applyExperience 'bimbofication' 13 'terrible' $ALONE>>
<</if>>
<<applyStress 10>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<switch $scene.date.goal>>
<<case 'cock'>>
Maybe it's the wine that loosens your tongue — you each get a new glass with each dish, and though only partially full, you can feel it adding up. Then again, maybe you are just a gigantic slut as you find yourself
<<if $npc_admin.flags.sucked_for_manager != "">>
blurting that you want more of <<his npc_admin>> big cock, that your earlier taste only made you more hungry to feel <<him npc_admin>> inside of you.<br>
<br>
<<He npc_admin>> blinks in surprise then smirks, a roguish grin you've seen often in bars and the like, though never with yourself as the target. "@@.npc_admin;Damn, you nasty! Though... I can't say I didn't quite enjoy the one hole I've tried...@@"
<<else>>
blurting out that you're desperate for <<his npc_admin>> big cock — that you barely resisted back in the office, but ever since it's all you've been able to think about and you can't wait to get <<him npc_admin>> alone and inside of you.<br>
<br>
<<He npc_admin>> blinks in surprise then smirks, a roguish grin you've seen often in bars and the like, though never with yourself as the target. "@@.npc_admin;Damn, you nasty! Though... I can't say I'm normally one to turn down a girl throwing herself at me... though I suppose you know that.@@"
<</if>>
<br><br>
Interrupted by the waiter arriving with another round you each polish off your elegantly plated, delectable portions before resuming the conversation.<br>
<br>
"@@.npc_admin;Speaking of your attraction... what brought this all on? Like, when did it start? Maybe it was just you being a bit of a sop for your ex and such, but back before I never really got the impression that <<if $npc_admin.fem>>you were into me<<else>>you were into me or I guess guys in general<</if>>?@@"<br>
<br>
[<<moveTo "event_admin_first_date_6" "Confess you've always lusted after <<him npc_admin>>." 600 "<<set $scene.date.gay = true>>">>]<br>
[<<moveTo "event_admin_first_date_6" "Say you previously saw <<him npc_admin>> as a friend, but now that you're a woman you'd like to think of <<him npc_admin>> as something more." 600 "<<set $scene.date.gay = false>>">>]
<<case 'protect'>>
You flutter your eyelashes and state that you're looking for a big, strong <<man npc_admin>> to be your knight in shining armour.<br>
<br>
<<if $npc_admin.flags.martial_arts_level > 0>>
"@@.npc_admin;Oh? Is that why you've shown the sudden interest in finally learning some martial arts?@@"
<</if>>
<<His npc_admin>> tone turns serious"@@.npc_admin;Is there something you need protection from? I've been trying to roll with all these changes you've been making, even if some of them are a bit shocking but, if any of this is being forced, if you're acting out of fear... you can tell me.@@"<br>
<br>
<<printThought "Hmm, this is dangerous territory. Sure <<he npc_admin>> works for Social Interaction Services now but... is <<he npc_admin>> allowed to know the full story... and how is <<he npc_admin>> going to react if I tell <<him npc_admin>>?">><br>
<br>
[<<moveTo "event_admin_first_date_5_1" 'Explain that you are doing all of this because you want to...though you do enjoy a bit of "forced" play from time to time...' 600>>]<br>
[<<moveTo "event_admin_first_date_4_enthusiast" "Tell <<him npc_admin>> the truth, but explain that, as crazy as it may sound... you love EVERYTHING about your new job." 600>>]<br>
[<<moveTo "event_admin_first_date_4_truth" "Break down and tell <<him npc_admin>> the truth about everything." 600>>]
<<case 'romance'>>
Your heart racing, you nervously explain that well, while you know <<he npc_admin>> tends more towards casual relationships you have real feelings for <<him npc_admin>> and would like to pursue something more... serious, as well as physical.<br>
<br>
<<He npc_admin>> takes almost an entire course in thought before answering, a bit of nervousness once again tinging natural bravado. "@@.npc_admin;I—I think I might like that. I mean, shit, you're one of my oldest friends, one of the only people I can relax and be myself around and, well, I guess that feeling's mutual, huh?@@" <<He npc_admin>> grins and you blush.<br>
<br>
"@@.npc_admin;It's kind of hard, now, thinking back, trying to untangle memories, if I should have noticed something before, or am I just reading into normal stuff? Anyway I guess that raises the next question — where did these feelings come from? I mean back before I thought you were attracted to girls<<if $npc_admin.fem>> like I am, but that you just saw me as a friend<<else>>, same as me<</if>>. <<if $npc_admin.fem>>So<<else>>Then again you never did have sex with that hot ex of yours so<</if>>... yeah, were you always feeling this way and just never made a move until now?@@"<br>
<br>
[<<moveTo "event_admin_first_date_6" "Confess you've always loved <<him npc_admin>>." 600 "<<set $scene.date.gay = true>>">>]<br>
[<<moveTo "event_admin_first_date_6" "Say you thought of <<him npc_admin>> as a friend before, but now that you're a woman you'd like to see <<him npc_admin>> as more." 600 "<<set $scene.date.gay = false>>">>]
<<default>>
ERROR: unexpected scene.date.goal: <<=$scene.date.goal>>
<</switch>>
</div>/*#
#desc: tell admin the truth
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You sense that you are nearing a precipice and you quickly pull back by explaining things away that no, you really have discovered that you are a sexy, feminine slut. Sure <<=setup.getNpcName('npc_manager', 'formal')>>, though you refer to her as <<=setup.getNpcName('npc_manager', 'Director')>> despite how weird it feels, may encourage things <<if $npc_admin.flags.monogomous_manager>>but, well, who could resist a woman like her?<<else>>but, hell, <<hes npc_admin>> fucking her at work so <<he npc_admin>> is hardly one to talk!<</if>><br>
<br>
"@@.npc_admin;Point taken, I suppose.@@" Further conversation gets put on hold as the next course comes along and the two of you dig in to another delicious culinary creation.<br>
<br>
After cleaning <<his npc_admin>> plate <<he npc_admin>> finally leans back and nods to signal that <<hes npc_admin>> ready to continue the discussion.<br>
<br>
"@@.npc_admin;So, you've said what you're looking for but... why? Or I guess I should say, when? How long have you been nurturing these feelings about me?@@"<br>
<br>
[<<moveTo "event_admin_first_date_6" "Confess you've always had a crush on <<him npc_admin>>." 600 "<<set $scene.date.gay = true>>">>]<br>
[<<moveTo "event_admin_first_date_6" "Say you thought of <<him npc_admin>> as a friend before, but now that you're a woman you'd like to see <<him npc_admin>> as more." 600 "<<set $scene.date.gay = false>>">>]
</div>/*#
#desc: admin first date, talk about your past feelings
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $scene.date.gay>>
You explain that you have had feelings for <<him npc_admin>> for a long time, but that before, when <<he npc_admin>> thought you were a guy, you kept them hidden since you knew <<if $npc_admin.fem>>she was lesbian<<else>>he was straight<</if>>, but now... you blush and look away, thankful for the waiter's seemingly perfect timing in bringing another course and buying time for the both of you to think as you eat.<br>
<br>
"@@.npc_admin;Damn, that's...@@" <<He npc_admin>> trails off as you finish eating and the silence lingers. <<if setup.checkItemTypeTag('plug', ['vibrating'])>>You silently grit your teeth as the vibrations in your ass resume, dammit,<<else>>Your heart is thundering in your chest but<</if>> you need to let <<him npc_admin>> talk first!<br>
<br>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>Without knowing your private torment of pleasure <<he npc_admin>><<else>><<He npc_admin>><</if>> slowly examines <<his npc_admin>> plate as if hoping to find some bit of food <<he npc_admin>> missed, but it was already picked clean of its exotic morsels. "@@.npc_admin;Sorry, I mean, now, with you coming out as your true self, I'm seeing you different, but before... don't get me wrong, I got nothing wrong with dudes but, well, I'm <<if $npc_admin.fem>>a lesbian<<else>>straight<</if>> so even if I didn't know at the time, the idea that you were romantically attracted to me when we were both behaving like you were a guy is well... kind of a weird feeling.@@"<br>
<br>
"@@.npc_admin;Sorry, guess that's probably not what you want to hear, but relationships are built on honesty, y'know? And the idea that you were harboring this secret crush for so long is just... yeah.@@"
<<else>>
You explain that these intense feelings are a recent thing. Maybe it's due to <<him npc_admin>> being a real rock of stability and comfort in the turmoil of breakup and job-change, or just that <<hes npc_admin>> such an awesome <<if $npc_admin.fem>>friend<<else>>dude<</if>>, but whatever it is you've fallen for <<him npc_admin>>, hard.<br>
<br>
"@@.npc_admin;Well, I am pretty awesome.@@" <<He npc_admin>> jokes with a smile and a stereotypical flex.<br>
<br>
You both laugh as another course arrives, polishing off the artfully arranged morsels before continuing.<br>
<br>
"@@.npc_admin;On a serious note though... I get it, I mean it makes sense, y'know? And, well... I'd be lying if I haven't found myself seeing you a bit different of late too...@@" <<if setup.checkItemTypeTag('plug', ['vibrating'])>>As <<he npc_admin>> trails off and silence descends on the room, the vibrations in your rear softly resume<<else>><<He npc_admin>> trails off and the room falls silent<</if>>.
<</if>>
<br><br>
You take advantage to greet the waiter<<if setup.checkItemTypeTag('plug', ['vibrating'])>> and let out a small sigh of relief when the vibrations stop<</if>>.<br>
<br>
Enquiring as to the location of the bathroom you tell <<=setup.getNpcName('npc_admin', 'first')>> that you'll be right back.<br>
<br>
"@@.npc_admin;You better! According to this we're coming up on dessert — soon you'll have competition for being the sweetest thing in the room!@@"<br>
<br>
You roll your eyes at the corny line even as it sets your heart aflutter.<br>
<br>
[<<moveTo "event_admin_first_date_7" "Head for the ladies' room." 600>>]
</div>/*#
#desc: admin first date intermission — bathroom
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeTag('plug', ['ems'])>>
<<applyExperience 'bdsm' 13 'normal' $ALONE>>
<</if>>
<<if $scene.date.vibe || $scene.date.goal == 'cock'>>
<<set $scene.date.verdict = 'slut'>>
<<elseif $scene.date.goal == 'romance' && !$scene.date.gay>>
<<set $scene.date.verdict = 'perfect'>>
<<else>>
<<set $scene.date.verdict = 'other'>>
<</if>>
<</if>>
<<set $player.location = "Bathroom at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner_bathroom.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
Your plug wiggles with each step and when the vibrations kick back on halfway to the bathroom you almost stumble, practically diving past the attendant faster than they can open the door before plopping down in one of the wood-panelled stalls and latching the door.<br>
<br>
"@@.pc;Please stop, please stop,@@" you whisper, raising the volume until the tormenting chaperone in your ass finally falls still.
<<else>>
You find yourself feeling a bit light-headed, almost stumbling into the bathroom and quickly taking a seat in one of the wood-panelled stalls and latching the door.
<</if>>
<br>
<br>
Taking a deep breath, you try to compose yourself. As wonderful as the food has been, this evening has been a trial and you have a feeling that once you return to the table <<=setup.getNpcName('npc_admin', 'first')>> will be delivering the verdict.<br>
<br>
<<switch $scene.date.verdict>>
<<case 'slut'>>
Thinking about it, you can come to no other conclusion that you've come off like a slut. On the one hand, despite <<his npc_admin>> occasional surprise, <<he npc_admin>> hasn't seemed particularly off-put. That said, you doubt you've convinced <<him npc_admin>> to see you as a romantic partner, merely a sexual one.
<<case 'perfect'>>
Thinking back you can't think of a way you could have done better. You've tried to be honest about your feelings for <<him npc_admin>> while avoiding some of the more extreme facts about your life to date and you find yourself feeling hope, like things could actually work out between the two of you.
<<case 'other'>>
On balance you can, at best, call things mixed. You haven't said anything too brain-dead, but you also note a time or two where <<he npc_admin>> seemed momentarily put off. Definitely not what you might have hoped, or what <<=setup.getNpcName('npc_manager', 'formal')>> instructed you to do as you feel like your relationship will end up continuing as it is, only perhaps a bit more awkward for your having taken a leap, but fallen short.
<<default>>
ERROR: unknown scene.date.verdict: <<=$scene.date.verdict>>
<</switch>>
<br><br>
As you sit, lost in thought, you are suddenly interrupted
<<if setup.checkItemTypeTag('plug', ['ems'])>>
as your rear explodes in pain, the intermittent vibrations that you had started to become a bit accustomed to instead replaced by a jolt of electrified pain.<br>
<br>
You squeak in stifled pain, looks like you've sat long enough, time to go back to <<=setup.getNpcName('npc_admin', 'first')>>...
<<else>>
by someone clearing their throat. "@@.generic_female1;Sorry but... are you almost done? I REALLY need to go.@@" A desperate-sounding female voice echoes through the bathroom.<br>
<br>
You hurriedly mumble a response and flush, the woman darting past you with such speed you wonder if something she ate might have disagreed with her; hard to imagine given how delicious every course has been.
<</if>>
<br><br>
[<<moveTo "event_admin_first_date_8" "You're satisfied with your choices, now to see what <<his npc_admin>> decision is." 600>>]<br>
[<<moveTo "event_admin_first_date_7_reset_1" "No, this can't be real, maybe if you just sit here and wait it will turn out to have all been a dream?" 600>>]
</div>/*#
#desc: admin first date reset/retry
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 18 'terrible' $ALONE>>
<</if>>
<<set $player.location = "Bathroom at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner_bathroom.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeTag('plug', ['ems'])>>
Your body shakes as the painful electricity ramps even higher. When you still fail to rise the vibrations kick in as well, what had once been teasing pleasure now only cranking your torment up to another level, overwhelming sensations coursing through your body as you start to shake and spasm.<br>
<br>
Losing your balance, you fall off the toilet onto the elegant marble floor below, still bucking and twitching as everything goes dark...<br>
<<else>>
You wash your hands and open the door to the restroom only to be blinded and unable to see beyond. You throw up your arms as everything goes dark...
<</if>>
<br><br>
[<<moveTo "event_admin_first_date_7_reset_2" "Let's try that again..." 600>>]
</div>/*#
#desc: admin first date alt intro for retryreset/retry
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You wake with a start to find yourself back in your office, a sound in front of you alerting you to <<=setup.getNpcName('npc_admin', 'first')>> making <<his npc_admin>> entrance.<br>
<br>
<<printThought "What? Was it just a dream? Hmm, let's try to do it RIGHT this time...">><br>
<br>
[<<moveTo "event_admin_first_date_1" "Start over..." 0 "<<set $now = $scene.date.start>><<set $scene.date = {}>>">>]
</div>/*#
#desc: admin first date finale
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.stage = 3>>
<<switch $scene.date.verdict>>
<<case 'slut'>>
<<applyStress -50>>
<<set $npc_admin.flags.relationship = 'friendswbenefits'>>
<<case 'perfect'>>
<<applyStress -70>>
<<set $npc_admin.flags.relationship = 'boyfriend'>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_admin_date'
5
'theme_technician_admin_1'
true
>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_22'
0
'theme_admin_pregnant_1'
true
>>
<<case 'other'>>
<<applyStress -40>>
<<set $npc_admin.flags.relationship = 'friend'>>
<</switch>>
<<include "scheduleAdminPhotoshoot">>
<</if>>
<<set $player.location = "Private Table at Le Chateau de L'amour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
As soon as you pull yourself to your feet, the electricity torturing your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> ceases, leaving you sensitive and out of breath, but better able to focus. Fixing yourself up in the mirror, your head back, walking quickly through the hallway and mumbling to yourself <<if setup.checkItemTypeTag('plug', ['vibrating'])>>in hopes of forestalling any further vibrations<<else>>as you try to think of what you are going to say<</if>>.<br>
<br>
You step through the door into the private room and <<=setup.getNpcName('npc_admin', 'first')>> turns to you with a grin. "@@.npc_admin;Insert cliche about women and bathrooms,@@" <<he npc_admin>> jokes "@@.npc_admin;Come on, they just brought dessert and well...@@"<br>
<br>
You walk around <<him npc_admin>> to take your seat and see what <<he npc_admin>> means — an exquisite chocolate cake in the shape of a heart accented with berries and syrup sits at the centre of the table, a single dish to be shared that looks delicious, decadent and oh-so-appetising.<br>
<br>
<<switch $scene.date.verdict>>
<<case 'slut'>>
You sit down and grab a fork, eagerly taking the first bite, the explosion of sweet flavours making your eyes practically roll back as the moist cake practically bursts inside your mouth.<br>
<br>
"@@.npc_admin;Eager slut, aren't you?@@" <<He npc_admin>> states with a grin.<br>
<br>
Hearing that word in <<his npc_admin>> voice makes you shudder, but it's true, there's no way you can deny it.<br>
<br>
"@@.npc_admin;I gotta say, if you told me my bashful friend would turn into this well...@@" <<he npc_admin>> takes <<his npc_admin>> first bite, momentarily surprised at the same wonderful flavour you are ravenously enjoying. "@@.npc_admin;Yowza, that is good! Anyway, yeah, you're a slut, a hot sex-hound of a woman and while I don't quite consider that romance material... well, I wouldn't mind fucking your brains out from time to time.@@"<br>
<br>
In any other moment you'd be eager to take <<him npc_admin>> up on that offer right then and there, but the dessert... each bite tastes better than the last, the two of you somehow finding space for every crumb until you're both well and truly stuffed.<br>
<br>
Leaning back with a smile, you both sigh. For the first time silence lingers without <<if setup.checkItemTypeTag('plug', ['vibrating'])>>being interrupted by your plug coming to life<<else>>feeling awkward<</if>>. Several minutes pass as you let the heavy meal settle before you rise to leave.
<<case 'perfect'>>
You stare in awe at the beautiful dessert, almost hesitant to cut into it when <<=setup.getNpcName('npc_admin', 'first')>> beats you to it, grabbing a forkful and leaning across the table to offer it to you with a smile.<br>
<br>
Your lips part, time slowing down for the romantic gesture as you close your mouth around the bite. An explosion of thoughts and feelings go through you and yet somehow the otherworldly flavour wins out.<br>
<br>
"@@.pc;You have to try this!@@" you exclaim, waiting with bated breath as <<he npc_admin>> takes a bite for <<his npc_admin>> own, the same euphoric realisation blossoming across <<his npc_admin>> face.<br>
<br>
"@@.npc_admin;Oh my god- this is@@" any further words are cut off you grab a fork of your own and you both dive in, each bite somehow better than the last as you consume the entire thing, somehow finding space on top of the large meal you have already enjoyed.<br>
<br>
Several minutes pass in silence as you recover<<if setup.checkItemTypeTag('plug', ['vibrating'])>> — with your plug staying thankfully still<</if>> when <<he npc_admin>> finally speaks "@@.npc_admin;Wow, that... wow.@@" Smiling gently <<he npc_admin>> reaches across the table, taking your hand in <<his npc_admin>> own, your slender fingers almost disappearing inside <<his npc_admin>> large fist.<br>
<br>
"@@.npc_admin;So tonight... tonight has been amazing, in a number of ways! I dunno how we could possibly top a date like this but...@@" You hold your breath, eagerly waiting for what is about to come next "@@.npc_admin;You said before that you found yourself falling for me and well... the feeling is mutual. I didn't understand it at first, especially before you came out that was... well, those were some weird feelings, but now...@@" <<He npc_admin>> reaches out to cup your face and you nuzzle into <<his npc_admin>> hand.<br>
<br>
"@@.npc_admin;Well, I'd like to see where this thing takes us. It's been quite the last few months, for both of us, but, well... I can't think of anyone I'd rather have with me going forward.@@"<br>
<br>
You almost wish you could freeze this perfect moment forever, but time lingers forward eventually, the stillness broken when you both release held breaths.<br>
<br>
"@@.npc_admin;So, I, uh... guess we should be heading out? I'll drop you off at your flat, alright? I'd offer to bring you home, but after that meal... well, I'm going to have the meat sweats something fierce I feel and I'd hate to drive you off so soon!@@"<br>
<br>
You laugh, happy to see that the same friendly sense of humor that brought you together way back when is still there as you rise to your feet and, arm in arm, leave the room.
<<case 'other'>>
Sitting down for dessert you both dig in at the same time, eyes going wide in amazement at the plethora of heavenly flavours that explode from the first bite.<br>
<br>
Wordlessly you both find a second wind, the large meal just consumed forgotten as you rush to eat the entire dessert, every bite somehow tastier than the last. Neither of your forks stopping until every last crumb and smear of syrup has been eaten.<br>
<br>
"@@.npc_admin;Wow that... that was something else...@@"<br>
<br>
You nod slowly, feeling stuffed<<if setup.checkItemTypeTag('plug', ['vibrating'])>> — and not just by the plug sitting thankfully still inside your rear<</if>>.<br>
<br>
"@@.npc_admin;Anyway, to the reason we were given this wonderful meal...@@" <<he npc_admin>> sighs and you brace yourself for what you already knew <<he npc_admin>> was going to say. "@@.npc_admin;Now that you've explained how you feel well... I think you're a wonderful girl, and one of the best friends I've ever had but... well, that's as far as it goes. I just don't feel the spark or whatever that would pave the way for a deeper relationship, but still friends... right?@@"<br>
<br>
You bury your disappointment and nod, reaching across the table to shake hands firmly and repeat — "@@.pc;Friends.@@"<br>
<br>
"@@.npc_admin;Great, well, hopefully that can any of the weird stuff going on between us... anyway I think it's about time to go, come on, I'll drive you home.@@"
<<default>>
ERROR: unexpected scene.date.verdict <<=$scene.date.verdict>>
<</switch>>
<br><br>
The walk back through the restaurant feels quite different than your entrance as you feel emotionally lighter, but physically much more full, though satisfied on both counts.<br>
<br>
The valet already there with <<=ps(setup.getNpcName('npc_admin', 'first'))>> car by the time you step outside, <<he npc_admin>> drives you home, pulling into the parking garage you almost forgot existed before walking you up to your flat.<br>
<br>
[<<moveTo "event_admin_first_date_9" "Finish date, <<he npc_admin>> takes you home." 1800>>]
</div>/*#
#desc: admin first date, he takes you home
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.date.verdict == 'slut'>>
<<applyExperience 'bimbofication' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_FRIEND>>
<<elseif $scene.date.verdict == 'perfect'>>
<<applyExperience 'feminization' 18 'very' $SEEN_FRIEND>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_25'
0
'event_psychiatrist_session_admin_first_date'
false
>>
<</if>>
<<set $player.location = "Apartment hallway">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.date.verdict == "other">>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<<else>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.date.verdict>>
<<case 'slut'>>
Parking in the visitor area, <<he npc_admin>> walks you up to your flat, stopping just outside your door as you both turn to face each other. A heartbeat passes as you wonder if <<hes npc_admin>> going to kiss you, only for <<him npc_admin>> to do one better. Scooping you into the air with ease, <<he npc_admin>> squeezes your ass with one hand as <<his npc_admin>> lips hungrily meet your own.<br>
<br>
Your back against the door you melt into <<him npc_admin>>, moaning as <<he npc_admin>> kisses you down towards your neck, one finger teasing your plug as you wrap one leg around <<him npc_admin>>.<br>
<br>
The intense make-out session lasts for less than a minute before <<he npc_admin>> lowers you to the ground. "@@.npc_admin;Until next time, slut. I can't wait to feel the inside of that ass, but right now I'm way too full to possibly do it justice.@@"<br>
<br>
Heart pounding and out of breath, you just nod, wobbling slightly as you steady yourself against the doorframe and watch <<him npc_admin>> walk up the hallway to the elevator.<br>
<br>
<<He npc_admin>> flashes a final wave before the elevator doors close and <<he npc_admin>> disappears leaving you to stagger into your flat.
<<case 'perfect'>>
Pulling into a parking space <<he npc_admin>> zips around the car to hold the door for you with a smile as you gracefully emerge.<br>
<br>
"@@.npc_admin;So, I half want to scoop you up and carry you home but... well, this IS only a first date...@@"<br>
<br>
You blush and <<he npc_admin>> grins, walking arm in arm to the elevator where <<he npc_admin>> pulls you closer, arm around your shoulder making you feel safe. Almost making the whole "not carrying you" thing a lie.<br>
<br>
Arriving at your apartment door you turn to face one another, just smiling at each other for several long seconds before <<he npc_admin>> pulls you in for a kiss. Passionate, but gentle, you feel like the perfect, delicate girl compared to <<his npc_admin>> strong, yet tender, <<if $npc_admin.fem>>body<<else>>masculinity<</if>>, melting in <<his npc_admin>> grasp as the kiss lingers and then softly parts.<br>
<br>
"@@.npc_admin;Goodnight, my dear. I'd ask to stay over but... well, at this point I am too full to do anything but crash, besides... that leaves something special for our next date, right?@@"<br>
<br>
You blush, smile and nod all at once, throwing your arms around <<him npc_admin>> again in a hug as if to confirm that yes, this is actually reality before sighing in contentment and waving <<him npc_admin>> goodbye.<br>
<br>
You stand in the doorway until the elevator doors close and <<his npc_admin>> waving figure disappears and then, with a smile on your pretty face, head into your flat.
<<case 'other'>>
<<He npc_admin>> drops you off with a wave before speeding off. You sigh, one hand on your swelled stomach <<if setup.checkItemTypeWorn("corset")>>even your corset not quite up to the task of holding back your large meal<<else>>feeling well and truly stuffed<</if>>.<br>
<br>
Finding the elevator you head up to your flat.
<<default>>
ERROR: unexpected scene.date.verdict <<=$scene.date.verdict>>
<</switch>>
<br><br>
[<<moveTo "event_admin_first_date_10" "Home" 180>>]
</div>/*#
#desc: admin first date, he takes you home
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' $scene.plugSize 'little' $SEEN_FRIEND>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<set _panties = setup.getItemFromType("panties")>>
<<if _panties>>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
In the privacy of your flat you try to catch your breath, replaying the date in your head, half wondering if it was actually some sort of <<switch $scene.date.verdict>><<case 'slut'>>sexy <<case 'perfect'>>perfect <</switch>>dream.<br>
<br>
You are interrupted from your reminiscing by your phone ringing, it is <<=setup.getNpcName('npc_manager', 'formal')>>!<br>
<br>
<<switch $scene.date.verdict>>
<<case 'slut'>>
"@@.npc_manager;Hello, <<=$player.first_name>>, I just wanted to congratulate you on sorting out all that tension with <<=setup.getNpcName('npc_admin', 'other')>>. It is quite the feat to convince such an old friend to accept one's transformation from boring prude to eager slut, but you pulled it off, good girl<<if !$npc_admin.flags.monogomous_manager>> and good luck with <<his npc_admin>> cock, I can tell you from experience that it is just a wonderful size, and <<he npc_admin>> is an expert with it<</if>>!@@"
<<case 'perfect'>>
"@@.npc_manager;Hello, <<=$player.first_name>>... or should I say Mrs. <<=setup.getNpcName('npc_admin', 'last')>>?@@" she laughs, "@@.npc_manager;Hmm, probably still a bit soon for that, but still! Congratulations on taking your relationship to a new level! It makes me so pleased that two of my most valued employees have found their way to happiness... though you should remember to not let your new relationship get in the way of your duties as my secretary.@@"
<<case 'other'>>
"@@.npc_manager;Hello, <<=$player.first_name>>, I just wanted to check in after your date. I suppose one might say it could have gone better, but at least you know where you stand and can move forward. In some ways it is almost a positive as you will not have to worry about a relationship interfering with the pursuit of your career and advancement as my perfect <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<default>>
ERROR: unexpected scene.date.verdict <<=$scene.date.verdict>>
<</switch>>
<br><br>
It takes you a moment, but you realise that what she said... there is no possible way she could have guessed that many details about your date and you ask if <<=setup.getNpcName('npc_admin', 'first')>> called her?<br>
<br>
"@@.npc_manager;What? No.@@" There is a moment of silence followed by laughter "@@.npc_manager;Oh! You silly girl! The room you two were in? It's bugged harder than a foreign embassy.<<if setup.checkItemTypeTag('plug', ['vibrating'])>> How do you think I was able to time all that "encouragement" for you?<</if>> After all, it is a manager's job to keep track of her property and you, my sweet<<if $fetish.sissy>>, sissy<</if>> slave, are becoming quite the valuable trophy...@@"<br>
<br>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
Speechless at the violation, you only distantly hear her wishing you a "@@.npc_manager;Good evening. Oh, and for a final reward...@@" you gasp as your plug explodes with vibrations, almost dropping your phone as the powerful stimulation overtakes your body. You gasp and fall against the door, moaning in orgasm as you slowly sink to the ground.<br>
<br>
<<if $now.getUTCDay() == 4>>
"@@.npc_manager;Ah, such a lovely power... now, I believe there is yet the matter of your payment for this week's work.@@"
<<else>>
"@@.npc_manager;Mmm, you make such lovely sounds when you analgasm... well, I shall leave you to it. See you in the morning!@@"<br>
<br>
She hangs up and you fumble your phone away as you try to catch your breath, sitting in your cum-soaked panties.
<</if>>
<<else>>
Speechless at the violation, you only distantly hear as she
<<if $now.getUTCDay() == 4>>
continues on. "@@.npc_manager;With that out of the way, there yet remains the issue of your payment for this weeks work...@@"
<<else>>
wishes you a "@@.npc_manager;Good evening, and good luck@@" before she hangs up.
<</if>>
<</if>>
<br><br>
<<if $now.getUTCDay() == 4>>
[<<moveTo "event_manager_weekly_salary_remote" "Continue." 120 "<<set $scene.directCall=true>><<set $scene.beforetasklocation.push('room_foyer')>>">>]
<<else>>
[<<moveTo "room_foyer" "Put your phone away." 0 "<<set $currentcall = false>>">>]
<</if>>
</div>/*#
#desc: admin texts you at work
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<completeWorkEvent>>
<<set _nextDate = setup.setNextDate($now, 3, 14, 0)>>
<<addWorkEvent 'admin_work_text' _nextDate>>
<<initRoom>>
<<moveTo "event_work_generic">>
<<else>>
<<set $currentcall = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You're working away when you get a text from <<=setup.getNpcName("npc_admin","first")>>
<<if $npc_admin.flags.dick_pic>>
or, rather a sext — your phonescreen too small to do proper justice to <<=ps(setup.getNpcName("npc_admin","first"))>> big, beautiful <<getWordPenis "npc_admin">>, but even this pale icon of the real thing is enough to make your mouth water.
<<else>>
"@@.npc_admin;Hey... I just had a really stressful call, and I've got some time... I don't suppose you could come by for a "private" meeting?@@"
<</if>>
<br><br>
You bite your lip at the thought of visiting your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><</if>>friend for an afternoon quickie...<br>
<br>
[<<moveTo "event_admin_work_text_2" 'Go ask <<=setup.getNpcName("npc_manager","formal")>> if you can visit <<=setup.getNpcName("npc_admin","formal")>>.' 300 "<<set $scene.action='lie'>>">>]<br>
[<<moveTo "event_admin_work_text_2" 'Ask <<=setup.getNpcName("npc_manager","formal")>> for permission to go fuck <<if $npc_admin.flags.relationship == "boyfriend">>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>>.' 300 "<<set $scene.action='truth'>>">>]<br>
[<<moveTo "event_admin_work_text_2" "Text <<him npc_admin>> back saying you're busy." 60 "<<set $scene.action='work'>>">>]
</div>/*#
#desc: talk to manager about admin's work text
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != "work">>
<<set $currentcall = false>>
<</if>>
<</if>>
<<if $scene.action == "work">>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "work">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "lie">>
With as much formality as you can muster you knock on <<=ps(setup.getNpcName("npc_manager","formal"))>> door and she calls out "@@.npc_manager;Enter.@@"<br>
<br>
With her trademark confident smile you would swear she sees right through you as she asks "@@.npc_manager;Is there a problem, my dear?@@"<br>
<br>
You speak slowly, trying not to let the lusty thoughts of <<=ps(setup.getNpcName("npc_admin","first"))>> <<getWordPenis "npc_admin">> distract you as you ask if you could visit <<him npc_admin>> for a meeting?<br>
<br>
"@@.npc_manager;A meeting...@@" <<=setup.getNpcName("npc_manager","formal")>> states with a knowing smile. "@@.npc_manager;Would that be a work meeting... or a <<if $fetish.sissy>>this sissy needs to serve her <<man npc_admin>><<else>>I want to bang my <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><</if>>friend during office hours<</if>> meeting?@@"<br>
<br>
[<<moveTo "event_admin_work_text_3_1" "Insist it's the former." 300 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_admin_work_text_3_1" "Admit it's the latter." 60 "<<set $scene.lie=false>>">>]
<<case "truth">>
Nervous, and horny, you knock on <<=ps(setup.getNpcName("npc_manager","formal"))>> door and she calls out "@@.npc_manager;Enter.@@"<br>
<br>
With her trademark confident smile you would swear she sees right through you as she asks "@@.npc_manager;Is there a problem, my dear?@@"<br>
<br>
Your voice rich and lusty you ask if you could have permission to visit your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><</if>>friend, <<=setup.getNpcName("npc_admin","formal")>>.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Hmm, yes, you have been working quite well of late, I believe I can spare you for a few minutes of... team-building. So much nicer that the two of you have admitted your feelings rather than all the unresolved office sexual tension — a leading cause of workplace distraction and inefficiency, if there ever was one!@@"<br>
<br>
<<if $npc_manager.flags.require_chastity>>
<<printThought "If sexual tension is such a bad thing... why am I always in chastity?">><br>
<br>
<</if>>
You thank her and hurry off to <<=ps(setup.getNpcName("npc_admin","formal"))>> office.<br>
<br>
[<<moveTo "event_admin_work_text_4" 'Go meet <<if $npc_admin.flags.relationship == "boyfriend">>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>>.' 300 "<<set $player.work.nowWorking=false>>">>]
<<else>>
She frowns. "@@.npc_manager;I am sorry but your performance of late has been... uninspired. Conjugal visits are for good girls... and you have not been performing up to expectations.@@"<br>
<br>
<<if $npc_admin.flags.monogomous_manager>>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<else>>
She waits another moment before twisting the knife. "@@.npc_manager;Of course we would not wish <<=setup.getNpcName("npc_admin","formal")>> to go without so... do not worry — I will give <<him npc_admin>> a visit so that <<he npc_admin>> can stay... focused for the rest of the afternoon.@@"<br>
<br>
You shudder in humiliation as she leads you back to your desk and then leaves the office.<br>
<br>
[<<moveTo "event_admin_work_text_4_cuck" "Back to work." 1800 "<<set $scene.ask=true>>">>]
<</if>>
<</if>>
<<case "work">>
You text back that, as good as <<his npc_admin>> offer sounds, you just have too much work you need to get to.<br>
<br>
"@@.npc_admin;Damn. Well, good luck, and hopefully you can get ahead of things for next time. I know I'll be working... hard... thinking of you.@@"<br>
<br>
You bite your lip and shift in your chair before focusing your attention back on your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Send the email and resume your other work." 300 "<<completeWorkEvent>><<set $currentcall = false>>">>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: talk to manager about admin's work text
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
You insist that this is a work meeting and <<=ps(setup.getNpcName("npc_manager","formal"))>> frown deepens. "@@.npc_manager;You foolish thing — I know you are lying. First, by the way your heart races and your voice strains, but more than that I know you lie from logical deduction. A <<if $fetish.sissy>>sissy <</if>>cock-addict like yourself... well there is no way you could resist a specimen like <<=setup.getNpcName("npc_admin","formal")>>. Unfortunately, it is that unwillingness to confess to the truth that will lead to your own denial. I am afraid that, if you are unwilling to be honest, I cannot spare you for such... frivolities. Now, get back to work.@@"<br>
<br>
You blink in confusion at her convoluted explanation, but she is already look back towards her computer, and you see no change of arguing her out of her decision.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<else>>
You blush and admit that yes, <<=setup.getNpcName("npc_admin","formal")>> texted about having some free time between meetings and...<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, "@@.npc_manager;I thought as much. You really should have been honest to begin with... though I suppose speaking in euphemisms does have uses at this company. Due to your overall behaviour of late I think I can spare you for a few minutes, give my regards to your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><</if>>friend!@@"<br>
<br>
You thank her and hurry off to <<=ps(setup.getNpcName("npc_admin","formal"))>> office.<br>
<br>
[<<moveTo "event_admin_work_text_4" 'Go meet <<if $npc_admin.flags.relationship == "boyfriend">>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>>.' 300 "<<set $player.work.nowWorking=false>>">>]
<<else>>
She frowns. "@@.npc_manager;I thank you for the honestly but, unfortunately, your performance of late has been... uninspired. Conjugal visits are for good girls... and you have not been performing up to expectations.@@"<br>
<br>
<<if $npc_admin.flags.monogomous_manager>>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<else>>
She waits another moment before twisting the knife. "@@.npc_manager;Of course we would not wish <<=setup.getNpcName("npc_admin","formal")>> to go without so... do not worry — I will give <<him npc_admin>> a visit so that <<he npc_admin>> can stay... focused for the rest of the afternoon.@@"<br>
<br>
You shudder in humiliation as she leads you back to your desk and then leaves the office.<br>
<br>
[<<moveTo "event_admin_work_text_4_cuck" "Back to work." 1800 "<<set $scene.ask=true>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: manager fucks admin after you asked to visit him
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Some time passes before <<=setup.getNpcName("npc_manager","formal")>> returns with a taunting smile on her face. "@@.npc_manager;Thank you for the idea — <<=ps(setup.getNpcName("npc_admin","formal"))>> dick really hit the spot. <<He npc_admin>> was a bit surprised when I showed up rather than <<his npc_admin>> horny girlfriend... do not worry, I did not expose the secret of your general misbehaviour. <<He npc_admin>> was quite accommodating once I explained that you were just too deeply focused on your current project to spare the time. Perhaps if you act more like my description of you I will let you visit <<him npc_admin>> in person next time? I can see it in your eye how jealous you are for missing out on <<his npc_admin>> cock. Milking it between my hips... yes, quite the morale booster!<<if $fetish.cum>> I would offer to let you lick his cum out of my <<getWordVagina>>... but even that is more than you deserve, with your behaviour of late.<</if>>@@"<br>
<br>
You bite your lip in humiliation as she continues on into her inner office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: meet admin to sex during work hours
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You lock your workstation and hurry off to <<=ps(setup.getNpcName("npc_admin","formal"))>> office. Looking up from <<his npc_admin>> desk <<he npc_admin>> greets you with a wide smile, rising to <<his npc_admin>> feet as you rush forward to dive into <<his npc_admin>> arms.<br>
<br>
Like an immovable rock <<he npc_admin>> easily catches you in mid-air and swings you in a circle, giving you a kiss as <<he npc_admin>> holds you in <<his npc_admin>> arms.<br>
<br>
"@@.npc_admin;<<=uc($npc_admin.call_player)>>! My favourite <<if $npc_admin.flags.relationship == 'friendswbenefits'>>fuck-buddy<<else>>lady<</if>>! So,@@" <<he npc_admin>> adds, adjusting <<his npc_admin>> grip so you find yourself rubbing up against the firm bulge in <<his npc_admin>> pants. "@@.npc_admin;What do you feel like today?@@"<br>
<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId) || $npc_manager.flags.trustplayerwithkey>>
<</if>>
<<if _unlockable>>
[<<moveTo "event_admin_work_text_5" "Unlock and spread your legs for a desk quickie." 600 "<<set $scene.action='vaginal'>>">>]<br>
<<else>>
[@@.link_locked;Your vagina is securely locked and out of reach.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_admin_work_text_5" "Spread your legs for a desk quickie." 600 "<<set $scene.action='vaginal'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_admin_work_text_5" "Being bent over <<his npc_admin>> desk sounds good." 600 "<<set $scene.action='anal'>>">>]<br>
[<<moveTo "event_admin_work_text_5" "You are here to suck. <<His npc_admin>>. Cock!" 600 "<<set $scene.action='oral'>>">>]<br>
[<<moveTo "event_admin_work_text_5_abort" "You actually only have a few minutes to spare, you just wanted to say hi." 180>>]
</div>/*#
#desc: sex admin during work hours
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<switch $scene.action>>
<<case 'anal'>>
<<applyExperience 'anal' $npc_admin.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'little' $SEEN_FRIEND>>
<<playerOrgasm>>
<<case 'oral'>>
<<applyExperience 'oral' $npc_admin.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'terrible' $SEEN_FRIEND>>
<<case 'vaginal'>>
<<set $scene.removeCage = setup.getItemFromType("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<set _cage = setup.getItemFromType("cage")>>
<<set $scene.keyId = setup.getItemObj(_cage).lockable[1]>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<playerOrgasm>>
<</switch>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'anal'>>
You reply that you could really go for an over-the-desk railing and <<he npc_admin>> obliges, placing you down in front of <<his npc_admin>> desk, and gently, but firmly, bending you over before <<if !setup.checkItemTypeTag('plug', ['hollow'])>>sliding the plug out of your ass and<</if>>stuffing <<his npc_admin>> hard cock into your rear.<br>
<br>
You moan as <<he npc_admin>> gives it to you just like you needed it — hard and fast, <<his npc_admin>> <<getWordPenis "npc_admin">> getting you in all those sensitive internal places all the while making your body give itself over to its glorious girth and length.<br>
<br>
<<if $fetish.cum>>
You cum first — <<if setup.checkItemTypeWorn("cage")>>leaking through your chastity <<if setup.isCage()>>cage<<else>>belt<</if>><<else>>spurting in excitement<</if>> moments before you get a thick cream-pie deep inside of you.<br>
<br>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
Before you can leak a drop the plug is back inside of you and
<<else>>
A moment after <<he npc_admin>> cums,
<</if>>
<<else>>
It isn't long before you get off, moaning in pleasure as you feel <<him npc_admin>> twitch and climax a moment later. The two of you enjoy the intensity of the rolling orgasm for a few moments, and then
<</if>>
you're back on your feet, sharing a passionate kiss that lingers until you've both come down from the immediate post-orgasmic high.
<<case 'oral'>>
You give <<him npc_admin>> a kiss and reply that you can't stop thinking of <<his npc_admin>> cock, and how good it tastes...<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> smiles as <<he npc_admin>> lets you slide to your knees. "@@.npc_admin;Well you certainly do a good job making it hard!@@" <<He npc_admin>> jokes as you unzip <<his npc_admin>> pants and take <<his npc_admin>> big <<getWordPenis "npc_admin">> in hand.<br>
<br>
<<He npc_admin>> grins down and you smile back as your lips part for <<his npc_admin>> delicious sausage.<br>
<br>
You make eager, passionate love to every centimetre of <<his npc_admin>> wonderful cock,
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
going hands-free to deep-throat it to the base and suck hard.
<<else>>
taking it to the base and feeling it bulge your throat.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
sucking is as deep as you can in between slobbering kisses up and down the rest of <<his npc_admin>> shaft.
<<else>>
kissing your way up and down <<his npc_admin>> too-big-to-swallow member.
<</if>>
<</if>>
You take a detour to tongue-wash <<his npc_admin>> big, beautiful balls before returning to the main course and it isn't long before, gentle <<man npc_admin>> that <<he npc_admin>> is, <<=setup.getNpcName("npc_admin","first")>> warns you that <<he npc_admin>>'s "@@.npc_admin;About to cum...@@"<br>
<br>
<<if $fetish.cum>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Not wanting to waste a single drop, you hold the tip of <<his npc_admin>> cock between your lips and swirl your tongue, almost climaxing yourself at the feel of each spurt slamming into the back of your throat as you savour the delicious taste<<if $npc_admin.flags.relationship == 'friendswbenefits'>>.<<else>> of "your <<man npc_admin>>." <</if>>
<<else>>
Belly clenching in hunger, you eagerly position yourself to take <<his npc_admin>> load across your face — mouth wide in glee as you blast yourself square on and feel the wonderful, thick cream dribble down, your tongue eagerly licking whatever it can get.
<</if>>
<<else>>
Not wanting to spoil the moment ,you jam <<his npc_admin>> cock into the back of your throat just in time for <<him npc_admin>> to let loose. <<His npc_admin>> climax as strong and massive as <<he npc_admin>> is as <<his npc_admin>> <<getWordCum>> floods your mouth and shoots out your nose. Your efforts to swallow it discreetly dashed, you focus on avoiding drowning,
<<if setup.getTotalValue("cum") > 5>>
finding yourself secretly enjoying the rich, thick flavour<<if $npc_admin.flags.relationship == 'friendswbenefits'>>.<<else>> of "your <<man npc_admin>>." <</if>>
<<else>>
somewhat disturbed that you're starting to enjoy the rich, salty flavour<<if $npc_admin.flags.relationship == 'friendswbenefits'>>.<<else>> of "your <<man npc_admin>>." <</if>>
<</if>>
<</if>>
<<else>>
Grateful for the warning you accept a wad off tissues and squirt <<his npc_admin>> load into it, keeping everything nice and neat and clean.
<</if>>
<br><br>
It takes <<=setup.getNpcName("npc_admin","first")>> a moment to recover from the powerful orgasm but <<he npc_admin>> soon helps you to your feet and hands you a towel.<br>
<br>
"@@.npc_admin;Damn but that mouth of yours is amazing! Talk about a pick-me-up. I'm sort of starting to understand how this company functions because that was better than coffee and I'm raring to go!@@"
<<case 'vaginal'>>
<<if $scene.removeCage>>
You smile and hop up onto <<his npc_admin>> desk as
<<if $npc_admin.flags.keyholder>>
<<=setup.getNpcName("npc_admin","first")>> produces the key to your chastity belt with a grin.
<<else>>
you
<<if setup.checkItemInInventory($scene.keyId)>>
produce the key to your chastity belt.
<<elseif $npc_manager.flags.trustplayerwithkey>>
produce the key to your chastity belt that you had cleverly snatched off your desk before heading to meet <<him npc_admin>>.
<<else>>
ERROR: unexpected key state!
<</if>>
<<=setup.getNpcName("npc_admin","first")>> grins even wider as <<he npc_admin>> accepts the key and unlocks your hidden treasure.
<</if>>
<<else>>
You smile and hop up onto <<his npc_admin>> desk and spread your legs in invitation.
<</if>>
<<=setup.getNpcName("npc_admin","first")>> steps forward, one hand supporting your back as <<he npc_admin>> unzips. With breathless anticipation you guide <<him npc_admin>> with both hands and then fling your arms around <<his npc_admin>> strong shoulders as <<he npc_admin>> gently fills you.<br>
<br>
"@@.npc_admin;So tight... you must have been working hard to build up all this tension, let <<if $fetish.daddy>><<Daddy npc_admin>><<else>>me<</if>> see if I can help you relax.@@"<br>
<br>
<<He npc_admin>> feels so good all you do is nod and gasp into <<his npc_admin>> ear, your legs now wrapped around <<him npc_admin>> as you hold on tight and try to give back every gram of pleasure <<he npc_admin>> is pumping into you.<br>
<br>
Maybe its the excitement of fucking in <<his npc_admin>> office with the only thing between you and coworkers a few meters and a corporate wall, but it does not take long until <<=setup.getNpcName("npc_admin","first")>> thrusts deep and <<if $fetish.cum>>cums, pumping you full of that sweet cream filling you love<<else>>climaxes<</if>>.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> holds you tight until your orgasmic trembles fade and your legs swing back down to brush the floor.<br>
<br>
Feeling perky and alert you preen atop your heels as you share a kiss with your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend<<if $fetish.cum>>, thighs together and squeezing tight lest any of <<if $fetish.daddy>><<Daddy npc_admin>>'s<<else>><<his npc_admin>><</if>> goodness leaks out<</if>>.<br>
<br>
With a grin and a simulated tip of the cap <<he npc_admin>> <<if $scene.removeCage>>helps you back into your belt and then <</if>>watches with a smile as you fix your clothes.
<<case 'none'>>
You explain that, unfortunately, you don't have time for anything more than a quick snog, but <<he npc_admin>> rolls with it, the two of you kissing hard enough to leave you breathless before <<he npc_admin>> places you gently down and wishes you a good rest of your afternoon.<br>
<br>
You scamper back to your desk before you get in trouble for being missing.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $player.sec_style.submission.permanent_key != "" && $scene.action != 'none' && !$npc_admin.flags.keyholder>>
You're getting ready to go when <<he npc_admin>> stops you, "@@.npc_admin;Hey, so... <<if $scene.removeCage>>having fun outside of work, but<<else>>reciprocity being a whole thing and,<</if>> understanding that the requirements of your job means you have to be in that chastity device... well, I was thinking that maybe we could talk to <<=setup.getNpcName("npc_manager","other")>> about me getting a copy of your key? You know... if that's a thing you'd be interested in?@@"<br>
<br>
You bite your lip in anticipation — not at the thought of <<him npc_admin>> letting you out, but at the idea of <<him npc_admin>> having that level of control over you...<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<printThought "Mmm, I really have turned into a total submissive, immediately fantasising about <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<him npc_admin>><</if>> holding my key... and keeping me locked...">>
<<else>>
<<if setup.getTotalValue("submission") > 5>>
<<printThought "Am I really that submissive that the idea of <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<him npc_admin>><</if>> holding my key has me this excited?">>
<<else>>
<<printThought "What's wrong with me that the thought of <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<him npc_admin>><</if>> holding my key has me this excited? Am I really that submissive?">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_admin_keyholder_1" "Yes, you would love if <<he npc_admin>> was one of your keyholders." 300 "<<set $scene.keyholder=true>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]<br>
[<<moveTo "event_admin_keyholder_1" "You'd rather not meddle with your current keyholding arrangement." 60 "<<set $scene.keyholder=false>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
<<else>>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<set $player.work.nowWorking=true>><<completeWorkEvent>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
<</if>>
</div>/*#
#desc: sex admin during work hours cancel
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You explain that, unfortunately, you don't have time for anything more than a quick snog, but <<he npc_admin>> rolls with it, the two of you kissing hard enough to leave you breathless before <<he npc_admin>> places you gently down and wishes you a good rest of your afternoon.<br>
<br>
You scamper back to your desk before you get in trouble for being missing.
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<set $player.work.nowWorking=true>><<completeWorkEvent>>">>]
</div>/*#
#desc: admin asks manager about being your keyholder
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.keyholder>>
<<set $npc_admin.flags.keyholder = true>>
<<include "adminCollarChecker">>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.keyholder>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin") setup.charImageManager()>>
<<else>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.keyholder>>
You smile and reply that actually... the thought of <<him npc_admin>> as your "@@.pc;Strong and sexy jailer@@" sounds REALLY hot.<br>
<br>
<<He npc_admin>> grins and the two of you head to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> looks up from her work with a raised eyebrow as <<=setup.getNpcName('npc_admin', 'first')>> takes the lead.<br>
<br>
"@@.npc_admin;So... I know you have <<=$player.first_name>> permanently locked in chastity under your control... I was wondering, though if it might be possible for me to have a copy of that key? You know... for special occasions?@@"<br>
<br>
You hold your breath and reflexively cling to <<=setup.getNpcName('npc_admin', 'first')>> as <<=setup.getNpcName('npc_manager', 'formal')>> seems to be considering the matter.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;Yes... I think the both of you have proven yourselves on this count. And becoming a keyholder is such a wonderful relationship step to take.@@"
<<else>>
"@@.npc_manager;Hmm... <<=ps($player.first_name)>> behaviour of late has been... less than stellar, but you have earned every trust and responsibility I have given you... so... yes, and I hope that you holding her key will help strengthen your relationship and... mellow out some of her rebelliousness.@@"
<</if>>
She walks towards the two of you and starts to hand <<=setup.getNpcName('npc_admin', 'first')>> a key. "@@.npc_manager;Now, I need you to remember some simple restrictions. First: this is only for your personal time. At work Miss <<=$player.last_name>> MUST remain locked. Second, well... she should only ever be released for short periods, when you desire it. Her time in chastity has worked such a wonderful effect on her demeanour and perspective and we would not wish to damage that with uncouth, excessive freedom.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> nods and accepts the key. A shiver goes through your body as you feel like a piece of property whose deed was just exchanged.<br>
<br>
"@@.npc_manager;Well, if that will be all, I think the two of you had better be getting back to work — you have had enough fun for one day.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> escorts you back to your desk and gives you a parting kiss before leaving the office.
<<else>>
You thank <<=setup.getNpcName("npc_admin","first")>> for the offer, but note that you are quite happy with your current arrangement, and that you actually prefer that your permanent chastity arrangement keeps you more focused on <<if $npc_admin.fem>>HER<<else>>HIS<</if>> needs.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> is definitely a little confused at your thoughts, but <<he npc_admin>> nods. "@@.npc_admin;Can't say I quite understand giving up something like that so readily, but if it makes you happy, it makes me happy. I guess you could always mention the idea to <<=setup.getNpcName("npc_manager","other")>> if you changed your mind down the road.@@"
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<set $player.work.nowWorking=true>><<completeWorkEvent>>">>]
</div><<if State.hasPlayed("event_admin_photoshoot_9") && $npc_landlord.stage >= 6>>
<<addEvent 'admin_landlord_bar'>>
<</if>>/*#
#desc: enter bar to find admin and landlord
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() == 5 || $now.getUTCDay() == 6 || !setup.hasFreeTime($now, $player, $currentTasks, 10800) || setup.getTotalValue("anal") < 10 || setup.getTotalValue("oral") < 10>>
<<set _tmpDate = setup.setNextDate($now, 1, 8, 0)>>
<<addEvent 'admin_landlord_bar' _tmpDate>>
<<initRoom>>
<<moveTo "room_usual_place_inside">>
<<else>>
<<set $npc_admin.flags.know_landlord = true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
Walking into the Usual Place you glance across the room only for the crowd to momentarily part and you to see <<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_landlord","first")>> sitting at a booth... together... chatting? They notice you simultaneously, smiling in your direction and both raising an arm to wave you over.<br>
<br>
[<<moveTo "event_admin_landlord_threeway_2" "Walk over to their booth." 60>>]
</div>/*#
#desc: admin and landlord realise you're dating both of them
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You weave your way across the bar to the booth where <<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_landlord","first")>> almost simultaneously greet you.<br>
<br>
"@@.npc_admin;So this is my girlfriend, <<=$player.first_name>>.@@"<br>
"@@.npc_landlord;So this is my girlfriend, <<=$player.first_name>>.@@"<br>
<br>
"@@.npc_admin;Wait, your girlfriend? but...@@"<br>
"@@.npc_landlord;Wait, your girlfriend? but...@@"<br>
<br>
The brief moment of synchronicity ends as they both look up at you for an explanation.<br>
<br>
[<<moveTo "event_admin_landlord_threeway_3" "Sit down and explain." 300>>]
</div>/*#
#desc: explain situation to admin and landlord and learn their past
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_admin' 'landlord' 'theme_admin_landlord_past'
0
'theme_admin_landlord_past_1'
true
>>
<<addNpcTheme 'npc_admin' 'landlord' 'theme_admin_landlord_three'
0
'theme_admin_landlord_three_1'
true
>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You take a deep breath and sit down, by some weird shell game of positioning finding yourself seated in between them; the cute <<if $fetish.sissy>>sissy <</if>>meat of a <<if !$npc_landlord.fem && !$npc_admin.fem>>man<<else>>hot<</if>> sandwich.<br>
<br>
It takes you a few minutes to walk through how you got to this point but the two<<if $npc_landlord.fem == $npc_admin.fem>> <<guy npc_admin>>s<<else>>of them<</if>> listen intently and actually laugh a bit at the end.<br>
<br>
"@@.npc_admin;Heh, you know, I guess we did leave things pretty loose, but still.@@"<br>
<br>
"@@.npc_landlord;Si, I would never impose on your happiness like that, I am just surprised is all!@@"<br>
<br>
"@@.npc_admin;Seriously, I mean what are the odds you'd be the super for HER building?@@"<br>
<br>
The three of you laugh and then it's your turn to ask how it is the two of them even know each other.<br>
<br>
"@@.npc_admin;Ah, yeah, this was before you and I met in college. You see, <<he npc_landlord>> was my CO back in the Army — which means I knew <<him npc_landlord>> when <<he npc_landlord>> still had an even number of eyes and arms!@@"<br>
<br>
"@@.npc_landlord;Fewer than that if not for this <<man npc_admin>>!@@"<br>
<br>
"@@.npc_admin;Hey, I was just trying to get through, you're their hero. If it wasn't for you ain't none of us would have gotten out alive...@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> shrugs. "@@.npc_landlord;Is only arm. Besides, my new one is, in some ways, better... I beat you at arm-wrestling now, no?@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> mock winces in memory and pretends to massage <<his npc_admin>> shoulder. <<=setup.getNpcName("npc_landlord","first")>> laughs and raises a hand to summon more drinks.<br>
<br>
"@@.npc_landlord;Come, we must celebrate, to my two best friends and their happiness!@@"<br>
<br>
"@@.npc_admin;Two? Come on, <<if !$npc_landlord.fem>>man, <</if>>you're part of this as well!@@"<br>
<br>
"@@.npc_landlord;No, no, I am old <<man npc_landlord>>, young love must be given the freedom to flourish without distraction. My heart would surely break if anything bad happened to this beautiful flower...@@"<br>
<br>
"@@.npc_admin;And you walking away wouldn't hurt her? Don't make me kick your ass old <<man npc_landlord>> — she's had enough hardship of late.@@"<br>
<br>
Though it remains good-natured they keep bickering back and forth and you feel like it's time you made your thoughts known.<br>
<br>
[<<moveTo "event_admin_landlord_threeway_4" "Ask to just keep things how they are, you dating each of them separately." 60 "<<set $scene.threeway=false>>">>]<br>
[<<moveTo "event_admin_landlord_threeway_4" "Point out there's only one solution — threeway." 60 "<<set $scene.threeway=true>>">>]<br>
</div>/*#
#desc: propose threeway to admin and landlord
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.threeway>>
Biting your lip you reach a hand down between each of their legs, your soft grip soon bringing the discussion to a halt and drawing dual attention. You look back and forth between them as you propose you take this party to somewhere a bit more private...<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> smiles, looking obviously into it as the two of you look up at <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
"@@.npc_admin;Hmm... <<if !$npc_admin.fem && !$npc_landlord.fem>>devils <</if>>three-way you say...@@"<br>
<br>
"@@.npc_landlord;Oh, come on, it wouldn't be the first time, besides, who could say no to this lovely face?@@"<br>
<br>
<<He npc_landlord>> leans close as you look up at <<=setup.getNpcName("npc_admin","first")>> and flutter your eyelashes.<br>
<br>
"@@.npc_admin;That was different, we technically weren't in the same room!@@"<br>
<br>
<<printThought "Wait... I really want to hear that story sometime...">><br>
<br>
<<if $npc_admin.fem == $npc_landlord.fem && !$npc_admin.fem>>
<<=setup.getNpcName("npc_landlord","first")>> chuckles. "@@.npc_landlord;See, no problemo! Besides, it is, how you say, only gay if balls touch?@@"<br>
<br>
"@@.npc_admin;Yeah, though I think "banging a hot girl" has a part to it too. Alright, you sold me, I think my place is the closest?@@"<br>
<br>
<</if>>
Finishing your drinks "the <<if $npc_landlord.fem == $npc_admin.fem>><<boy npc_admin>>s<<else>>old friends<</if>>" insist on picking up the tab and soon the three of you are off to <<=ps(setup.getNpcName("npc_admin","first"))>> apartment as you almost don't even touch the ground, walking between them with an arm around each of their different, but equally <<if !$npc_landlord.fem && !$npc_admin.fem>>manly<<else>>hot<</if>> waists.<br>
<br>
[<<moveTo "event_admin_landlord_threeway_5" "Continue." 1800>>]
<<else>>
Your <<if $npc_landlord.fem == $npc_admin.fem>>two... <<boy npc_admin>>friends<<else>>boyfriend and girlfriend<</if>>? Continue with good-natured bickering until you break it up explaining that really, you just want to keep going out with the both of them and why can't you just keep on like you were before the three of you found out about the whole thing?<br>
<br>
<<if $npc_landlord.fem == $npc_admin.fem>>The two <<guy npc_admin>>s<<else>>They<</if>> think for a moment over their beers then, sharing a glance that you are pretty sure communicates way more than words they nod in unison.<br>
<br>
"@@.npc_landlord;Sure, after all, I only have so much energy, anyway.@@"<br>
<br>
"@@.npc_admin;Don't let this old war horse fool ya, <<he npc_landlord>> can still keep up with anyone! But sure, I mean, if I was going to be <<if $npc_landlord.fem && $npc_admin.fem>>sausage sisters<<elseif !$npc_landlord.fem && !$npc_admin.fem>>eskimo brothers<<else>>pickle pals<</if>> with anyone...@@"<br>
<br>
"@@.npc_landlord;You mean again, there was that time in...@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> cuts <<him npc_admin>> off with a glare. "@@.npc_admin;Yeah, whatever, just remember I've seen all your "old soldier" seduction tricks so you better keep it on the up and up with <<=$player.first_name>>.@@"<br>
<br>
"@@.npc_landlord;Me? I was retired! This spry young thing seduced me, I say! But I would never even thing of harming such an adorable one.@@" Feeling adored and protected sitting between your <<if $npc_landlord.fem == $npc_admin.fem>>two <<men npc_admin>><<else>>boyfriend and girlfriend<</if>> you take another drink as the subject shifts, the three of you chatting about various things as you do your best to find out a bit more of their history and they regale you with only slightly exaggerated tales of the war. They avoid discussing any of the actual fighting; though you get the feeling they both saw their share, mostly talking about old comrades and the dumb pranks and organizational stupidity that makes up day to day in any army.<br>
<br>
[<<moveTo "event_admin_landlord_threeway_4_end" "Enjoy the rest of the evening." 7200>>]
<</if>>
</div>/*#
#desc: go home after meeting landlord and admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'drunk'>>
<<applyFatigue 70>>
<</if>>
<<set $player.location to "Apartment Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<div id="invframe" class="scrolltext">
Many drinks later, the three of you finally part ways, sharing a cab as you share an embrace with <<=setup.getNpcName("npc_admin","first")>> before dropping <<him npc_admin>> off then heading home where <<=setup.getNpcName("npc_landlord","first")>> kisses you goodnight on your stoop before heading back to <<his npc_landlord>> flat.<br>
<br>
[<<moveTo "room_foyer" "Head into your flat." 60>>]
</div>/*#
#desc: drag admin and landlord into the bedroom
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png">>
<div id="invframe" class="scrolltext">
Fortunately <<=ps(setup.getNpcName("npc_admin","first"))>> is a short walk from the bar — one of the main reason's <<he npc_admin>> chose the place for hanging out. The three of you pile through the door as you giddily anticipate what it's going to be like to fuck them both at once, only for them to send you off to the bedroom to get ready while they "go over some tactics." <br>
<br>
You roll your eyes, but are secretly a bit curious as to what they're going to come up with, so you head into the bedroom and star stripping down to lingerie, sitting on the edge of the bed where you wait... and wait...<br>
<br>
<<printThought "What the heck are they doing out there? I should probably go check.">><br>
<br>
[<<moveTo "event_admin_landlord_threeway_6" "Go collect your <<if $npc_landlord.fem == $npc_admin.fem>><<boy npc_admin>>friends<<else>>boyfriend and girlfriend<</if>>." 60>>]
</div>/*#
#desc: start threeway with landlord and admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
Standing in the doorway of the bedroom you find <<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_landlord","first")>> obliviously leaning over the kitchen table. There's papers strewn about and what looks like dishes and condiment containers set out as if they were laying out a battlefield or something.<br>
<br>
You clear your throat and strike a pose in the doorway as they look up, their whispered discussion stopping as they stare at your mostly naked form. Taking advantage of their rapt attention you give them the old bedroom eyes and ask if they're going to fuck you or not?<br>
<br>
"@@.npc_admin;We were just trying to figure out the optimal strategy to...@@" <<he npc_admin>> starts only to be cut off by <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
"@@.npc_landlord;Too late for that, this is one of those plans not surviving contact situations. It's time to go in and navigate by the seat of our pants... or no pants, as the case might be.@@" <<He npc_landlord>> adds as <<he npc_landlord>> unbuttons <<his npc_landlord>> jeans and starts shedding clothes as <<he npc_landlord>> walks across the room towards you.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grins and falls in half a step behind. The two of them scoop you up without breaking stride as they carry you to the bed. You bite your lip in anticipation at <<if $npc_landlord.fem && $npc_admin.fem>>your two hot girlfriends<<elseif !$npc_landlord.fem && !$npc_admin.fem>>the two specimens of masculinity<<else>>your hot girlfriend and boyfriend<</if>> standing at the foot of your bed — <<=setup.getNpcName("npc_admin","first")>> with <<his npc_admin>> <<if $npc_admin.fem>>amazonian figure<<else>>muscles on muscles<</if>> and a dong that could make an unprepared girl faint and beside <<him npc_admin>> <<=setup.getNpcName("npc_landlord","first")>> with the wiry, functional frame of a <<man npc_landlord>> who has worked every day of <<his npc_admin>> life, with the scars and savvy to prove it.<br>
<br>
They share a silent glance and <<=setup.getNpcName("npc_admin","first")>> circles towards the head of the bed — their strategy session may have been for naught but they at least have the tactical acumen to give <<=setup.getNpcName("npc_landlord","first")>> first shot before <<=setup.getNpcName("npc_admin","first")>> nigh splits you in half.<br>
<br>
<<if $player.body_ref.vagina>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "" && !setup.isCage()>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set _unlockable = setup.getItemFromType($scene.cage) != "" && ($npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId))>>
<<if _unlockable>>
[<<moveTo "event_admin_landlord_threeway_7" "Unlock and spread your legs." 300 "<<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is securely locked.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_admin_landlord_threeway_7" "Spread your legs." 300 "<<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_admin_landlord_threeway_7" "Wiggle your ass." 300 "<<set $scene.anal=false>>">>]
</div>/*#
#desc: threeway with landlord and admin - intitial penetrations
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<set $scene.plug = "">>
<<set $scene.removePlug = false>>
<<if $scene.anal>>
<<set $scene.removePlug = setup.getItemFromType("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<<else>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
You feel like a delicate pixie in the hands of the two <<if !$npc_landlord.fem && !$npc_admin.fem>>strong men, large, strong hands gently moving<<elseif $npc_landlord.fem && $npc_admin.fem>>strong women as they gently move<<else>>as they gently move<</if>> you into position on your hands and knees with <<=setup.getNpcName("npc_admin","first")>> in front and <<=setup.getNpcName("npc_landlord","first")>> behind.<br>
<br>
<<if $scene.anal>>
<<if $scene.removePlug>>
Your plug gently removed, <<=setup.getNpcName("npc_landlord","first")>> slides into your ass.
<<elseif setup.checkItemTypeTag('plug', ['hollow'])>>
<<=setup.getNpcName("npc_landlord","first")>> slides into your ass, your plug and hole stretching in unison to accommodate <<his npc_landlord>> girth.
<<else>>
<<=setup.getNpcName("npc_landlord","first")>> takes hold of your hips, <<his npc_landlord>> cybernetic hand cold compared to <<his npc_landlord>> remaining flesh and blood appendage but both holding you firmly as <<he npc_landlord>> slides into your ass.
<</if>>
<<His npc_landlord>> grip curiously asymmetrical as <<his npc_landlord>> cybernetic hand is cold against your hip compared to <<his npc_landlord>> remaining flesh and blood one.
<<else>>
<<if $scene.removeCage>>
Your chastity belt all but disappears and then
<</if>>
<<=setup.getNpcName("npc_landlord","first")>> is between your legs, fingering you gently open, and then giving you the cock you so desperately desire.
<</if>>
<br><br>
Moaning in lust you look forward to behold the glory that is <<=ps(setup.getNpcName("npc_admin","first"))>> <<getWordPenis "npc_admin">>, the big, beautiful beast sticking out above <<his npc_admin>> perfect thighs — twin dark columns of muscle that could each move a car. Balancing yourself with one hand you reach out and pull <<him npc_admin>> in, your lips parting as you start to bounce back and forth between your <<if $npc_admin.fem && $npc_landlord.fem>>girlfriends'<<elseif !$npc_admin.fem && !$npc_landlord.fem>>boyfriends'<<else>>boyfriend and girlfriend's<</if>> two cocks.<br>
<br>
[<<moveTo "event_admin_landlord_threeway_8" "Yes..." 300>>]
</div>/*#
#desc: threeway with landlord and admin - landlord does you
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_landlord.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> fucking you from behind only makes you hungrier to taste <<=ps(setup.getNpcName("npc_admin","first"))>> magnificent cock.
<<if setup.getTotalValue("oral") > 15>>
<<=ps(setup.getNpcName("npc_admin","first"))>> size only makes you want <<him npc_admin>> more; the knowledge that you can deepthroat <<him npc_admin>> spurring you to pull <<him npc_admin>> towards you, desperate to feel <<him npc_admin>> all the way down bulging your throat. Your entire body bounces with each of <<=ps(setup.getNpcName("npc_landlord","first"))>> thrusts and you slide back and forth between two of the greatest cocks you've ever felt; pausing infrequently just long enough to take a breath as you take it gloriously hard and deep from two paragons of penile perfection.
<<else>>
<<=setup.getNpcName("npc_admin","first")>> is a bit too big to go balls deep on, even after all your practice deepthroating, but you do everything else, licking and sucking every glorious, delicious centimetre of <<his npc_admin>> <<if $npc_admin.fem>><<getWordPenis "npc_admin">><<else>>obelisk of masculinity<</if>>.
<</if>>
<br><br>
Your head starting to swim in excitement you coo as you hear a grunt from behind, glancing back with a smile at <<=ps(setup.getNpcName("npc_landlord","first"))>> ecstatic expression of orgasm. <<He npc_landlord>> steps away and your legs give out but things are far from over, <<=setup.getNpcName("npc_admin","first")>> casually lifting you into the air and rolling you over to loom over you.<br>
<br>
"@@.npc_admin;You ready?@@" <<He npc_admin>> asks.<br>
<br>
<<if $player.body_ref.vagina && $scene.removeCage>>
[<<moveTo "event_admin_landlord_threeway_9" "Two friends above, two holes below... sounds perfect!" 300 "<<set $scene.action='dp'>>">>]<br>
[<<moveTo "event_admin_landlord_threeway_9" "Your vag is welcoming for the both of them..." 300 "<<set $scene.action='vag'>>">>]<br>
<<if setup.getTotalValue("anal") >= 18>>
[<<moveTo "event_admin_landlord_threeway_9" "Your ass needs to be double stuffed." 300 "<<set $scene.action='anal'>>">>]
<<else>>
[@@.link_locked;You do not have the capacity or skill for double anal.@@]
<</if>>
<<else>>
[<<moveTo "event_admin_landlord_threeway_9" "Spread your legs and bite your lip in anticipation." 300 "<<set $scene.action='anal'>>">>]
<</if>>
</div>/*#
#desc: threeway with landlord and admin - admin does you
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == 'anal'>>
<<set $scene.doubleAnal = setup.getTotalValue("anal") >= 18>>
<<if $scene.doubleAnal>>
<<applyExperience 'anal' 19 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<</if>>
<<elseif $scene.action == "dp">>
<<applyExperience 'anal' $npc_landlord.penis_size 'very' $SEEN_FRIEND>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
You resist the urge to just let your eyes roll back as you focus on looking up at <<=setup.getNpcName("npc_admin","first")>> as <<he npc_admin>> smiles and enters you. Even having felt it inside you before, <<his npc_admin>> <<getWordPenis "npc_admin">> makes for a transcendent experience as it makes you feel even more a woman to be penetrated by <<if $npc_admin.fem>>your impressive girlfriend<<else>>such a man<</if>>.<br>
<br>
You moan as <<he npc_admin>> starts to thrust, rooted in place by the tree trunk rocking inside of <<if $scene.action == "anal">>your ass<<else>>you<</if>>. Overwhelmed, you partially turn away only to find that <<=setup.getNpcName("npc_landlord","first")>> has re-appeared. Your lips meet passionately as you embrace, your hips rolling and the bed shaking slightly as <<=setup.getNpcName("npc_admin","first")>> quickens <<his npc_admin>> pace.<br>
<br>
<<switch $scene.action>>
<<case "anal">>
<<if $scene.doubleAnal>>
Coming up for air once more, your lips part from <<=setup.getNpcName("npc_landlord","first")>> and then you gasp as <<=setup.getNpcName("npc_admin","first")>> lifts you up. Pressed chest to chest, your weight balanced on <<his npc_admin>> <<getWordPenis "npc_admin">> you all but melt.<br>
<br>
"@@.npc_landlord;Coming in to flank!@@" <<=setup.getNpcName("npc_landlord","first")>> announces and you feel <<him npc_landlord>> something pressing against your rear. Even as it feels like <<=setup.getNpcName("npc_admin","first")>> has you filled wall to wall you somehow stretch further as <<=setup.getNpcName("npc_landlord","first")>> slides in as well.<br>
<br>
You gasp and shudder as two beautiful, glorious cocks grind inside of you, your entire body tensing up as you hear <<=setup.getNpcName("npc_landlord","first")>> "@@.npc_landlord;You okay, <<callPlayer "npc_landlord">>?@@"<br>
<br>
You nod and moan — pressed between the two of them, stuffed almost as never before tonight has gone even better than you could have imagined. Overcome with pleasure you lose track of details until, eventually, the three of you collapse into bed.
<<else>>
Fucking aggressively you cling around <<=ps(setup.getNpcName("npc_admin","first"))>> back as <<he npc_admin>> pounds you into the bed, <<his npc_admin>> eventual climax coming with enough force to lift you a couple centimetres up before <<he npc_admin>> finally lays down and collapses beside you.
<</if>>
<<case "dp">>
Coming up for air once more, your lips part from <<=setup.getNpcName("npc_landlord","first")>> and then you gasp as <<=setup.getNpcName("npc_admin","first")>> lifts you up. Pressed chest to chest, your weight balanced on <<his npc_admin>> <<getWordPenis "npc_admin">> you all but melt.<br>
<br>
"@@.npc_landlord;Coming in to flank!@@" <<=setup.getNpcName("npc_landlord","first")>> announces and you feel <<him npc_landlord>> something pressing against your rear. Even as it feels like <<=setup.getNpcName("npc_admin","first")>> has you filled from the front you moan with delight as <<=setup.getNpcName("npc_landlord","first")>> takes your back door.<br>
<br>
You gasp and shudder as two beautiful, glorious cocks grind inside of you, your entire body tensing up as you hear <<=setup.getNpcName("npc_landlord","first")>> "@@.npc_landlord;You okay, <<callPlayer "npc_landlord">>?@@"<br>
<br>
You nod and moan — pressed between the two of them, stuffed almost as never before tonight has gone even better than you could have imagined. Overcome with pleasure, you lose track of details until, eventually, the three of you collapse into bed.
<<case "vag">>
Coming up for air once more, your lips part from <<=setup.getNpcName("npc_landlord","first")>> and then you gasp as <<=setup.getNpcName("npc_admin","first")>> lifts you up. Pressed chest to chest, your weight balanced on <<his npc_admin>> <<getWordPenis "npc_admin">> you all but melt.<br>
<br>
"@@.npc_landlord;Coming in to flank!@@" <<=setup.getNpcName("npc_landlord","first")>> announces and you feel <<him npc_landlord>> something slip past your rear to press against the edge of your already gloriously filled hole. Even as it feels like <<=setup.getNpcName("npc_admin","first")>> has you filled from the front you moan with delight as <<=setup.getNpcName("npc_landlord","first")>> somehow joins the party.<br>
<br>
You gasp and shudder as two beautiful, glorious cocks grind inside of you, your entire body tensing up as you hear <<=setup.getNpcName("npc_landlord","first")>> "@@.npc_landlord;You okay, <<callPlayer "npc_landlord">>?@@"<br>
<br>
You nod and moan — pressed between the two of them, stuffed almost as never before tonight has gone even better than you could have imagined. Overcome with pleasure you lose track of details until, eventually, the three of you collapse into bed.
<</switch>>
<br><br>
You look left and then right, flanked by your <<if $npc_admin.fem && $npc_landlord.fem>>two girlfriends<<elseif !$npc_admin.fem && !$npc_landlord.fem>>two men<<else>>boyfriend and girlfriend<</if>> as you smile, holding hands with each as you drift to sleep.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_admin_landlord_threeway_10" "Sleep..." _timeToMorning>>]
</div>/*#
#desc: threeway with landlord and admin - aftermath
#status: RELEASED 0.8.8.0
#ignore_spell: 'most,despierto,estoy
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<applyFatigue -100>>
<<set $player.makeup.messed = 0>>
<<include "cleanPlayer">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
You wake up to find yourself curled up with a softly snoring <<=setup.getNpcName("npc_landlord","first")>>. Smelling something good wafting through the air, you carefully extricate yourself and tiptoe out of the bedroom to find <<=setup.getNpcName("npc_admin","first")>> finishing plating up a full breakfast.<br>
<br>
"@@.npc_admin;Damn, was hoping to surprise you in bed, well, no harm. Yo, <<=setup.getNpcName("npc_landlord","first")>>!@@" <<He npc_admin>> calls out.<br>
<br>
"@@.npc_landlord;Estoy despierto!@@" comes the hurried response as <<=setup.getNpcName("npc_admin","first")>> chuckles.<br>
<br>
You give <<=setup.getNpcName("npc_admin","first")>> a hug and a kiss then help move food to the table — a reasonable plate set out for you and one empty chair, the final plate looking to have the better part of a dozen eggs and three chicken breasts reserved for <<him npc_admin>>self.<br>
<br>
"@@.npc_admin;Hey, feeding deeze muscles is a full-time job!@@" <<He npc_admin>> jokes as <<=setup.getNpcName("npc_landlord","first")>> emerges putting on <<his npc_landlord>> pants. You take a moment to enjoy the fact that both<<if $npc_admin.fem == $npc_landlord.fem>> <<men npc_admin>><</if>> have opted to go topless — just as they seem to be appreciating your own nudity as you dig in for breakfast.<br>
<br>
Leaning over to give you a kiss <<=setup.getNpcName("npc_landlord","first")>> takes <<his npc_landlord>> seat with a smile. "@@.npc_landlord;Good morning, <<callPlayer "npc_landlord">>, <<=setup.getNpcName("npc_admin","first")>>. I guess I no have the stamina I used to! But still, you should have got me up to help!@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> takes a momentary break from mowing through food to laugh. "@@.npc_admin;You? The last time I saw you make breakfast you somehow burnt a fruit cocktail trying to get it out of the can! You know I think <<his npc_landlord>> maid fetish is like one of those opposite polarity things like with magnets, 'cause while you may be able to fix, paint, nail or screw 'most anything but when it comes to the domestic work, well... you're a bit hit and miss. Me, well... I always felt a <<man npc_admin>> ought to be able to ask <<his npc_admin>> lady how she likes her eggs in the morning and make good on it.@@"<br>
<br>
You are about to jump to <<=ps(setup.getNpcName("npc_landlord","first"))>> defence, after all, you well know what a wonderful cook <<he npc_landlord>> can be, but <<he npc_landlord>> shakes <<his npc_landlord>> head to warn you off. <<printThought "Weird, must be some old Army in-joke, or something.">><br>
<br>
The three of you laugh as you find your own relationships with the two<<if $npc_admin.fem == $npc_landlord.fem>> <<men npc_admin>><</if>> falling in with the old comrade casual rapport they share.<br>
<br>
<<if $scene.doubleAnal && $npc_admin.fem == $npc_landlord.fem && !$npc_admin.fem>>
After taking the edge off <<his npc_landlord>> hunger <<=setup.getNpcName("npc_landlord","first")>> looks up with a mischievous smile. "@@.npc_landlord;So, I hate to be the one to tell you this but... well, you say so long as balls not touching and, well...@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> shakes <<his npc_admin>> head in amusement. "@@.npc_admin;I'm pretty sure there's an exception when you're balls deep in a chick. Especially since I look across the table and you're still the same old fart as ever, whereas she looks even hotter than before... damn but I wish I didn't have an early meeting today or I'd suggest going another round.@@"<br>
<br>
"@@.npc_landlord;Si, I, too, have an appointment — that sink isn't going to install itself — they didn't spring for that model!@@"<br>
<br>
<</if>>
Finishing up the meal, <<if $player.makeup.template != "">>and fixing your makeup, <</if>>the three of you share a quick shower and then get dressed to head your separate ways.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_admin_landlord_threeway_11" 'Catch a ride to work with <<=setup.getNpcName("npc_admin","first")>>.' 300 "<<set $scene.work=true>>">>]<br>
[<<moveTo "event_admin_landlord_threeway_11" 'Head back to your flat with <<=setup.getNpcName("npc_landlord","first")>>.' 300 "<<set $scene.work=false>>">>]
<<else>>
[@@.link_locked;You aren't going outside dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: threeway with landlord and admin: head to work
#status: RELEASED 0.8.8.0
#ignore_spell: 'most,despierto,estoy
#*/
<<set $player.cutscene.lockinventory=true>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_kitchen.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.work>>
You kiss <<=setup.getNpcName("npc_landlord","first")>> good-bye to head back to the apartment building then share a ride to the office with <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
Arriving at the office you have a brief make-out session in the elevator before you split off — <<him npc_admin>> to a morning meeting, you the rest of the way up to your office.<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Ride the rest of the way up." 300 "<<setScene true>><<set $daily.adminBusy = true>>">>]
<<else>>
You kiss <<=setup.getNpcName("npc_admin","first")>> good-bye for <<him npc_boss>> to head to the office for an early meeting, then share a ride to your flat with <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
Like a true <<if $npc_landlord.fem>>lady<<else>>gentleman<</if>>, <<=setup.getNpcName("npc_landlord","first")>> rides with you up to your flat and escorts you all the way to your door, sharing a parting kiss before <<he npc_landlord>> returns to <<his npc_landlord>> own flat.<br>
<br>
[<<moveTo "room_foyer" "Head in to your flat." 300 "<<setScene true>><<set $daily.adminBusy = true>>">>]
<</if>>
</div><<set $npc_admin.flags.totalWorkouts += 1>>
<<incrementEmotion 'affection' 'npc_admin' 3>>
<<if $npc_admin.flags.nextWorkout == "" || setup.daysToDate($now, $npc_admin.flags.nextWorkout) == 0>>
<<set $npc_admin.flags.consecutiveWorkouts += 1>>
<<else>>
<<set $npc_admin.flags.consecutiveWorkouts = 1>>
<</if>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate = setup.setNextDate($now, 1, 7, 10)>>
<<case 5>>
<<set _nextDate = setup.setNextDate($now, 3, 7, 10)>>
<<case 6>>
<<set _nextDate = setup.setNextDate($now, 2, 7, 10)>>
<</switch>>
<<set $npc_admin.flags.nextWorkout to _nextDate>>
<<if $npc_admin.flags.consecutiveWorkouts >= 5 && $npc_admin.stage < 2>>
<<addEvent 'event_admin_morning_workout_call' _nextDate>>
<</if>>/*#
#desc: meet admin to workout before work
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEvent 'event_admin_morning_visit'>>
<<removeEvent 'event_admin_morning_workout_call'>>
<<if $npc_admin.flags.ageofconfusion>>
<<applyExperience 'strength' 6 'almost' $SEEN_STRANGER>>
<<else>>
<<include "npcAdminWorkoutHandling">>
<</if>>
<<set _gymStart = setup.setNextDate($now, 0, 7, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_gymStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<clothSetToInventory 'Office Clothes'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_admin.flags.ageofconfusion || !$npc_admin.flags.reactnamechange && $player.sec_style.body.name == "" || $workEvents.hasOwnProperty("admin_morning_confrontation")>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<<else>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_admin","npc_admin_training")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $daily.adminBusy>>
You're planning on meeting <<=setup.getNpcName('npc_admin', 'first')>> to workout when you remember that <<he npc_admin>> had that early meeting today. You wonder if <<he npc_admin>> managed to sneak in a pump, regardless.<br>
<br>
<<printThought "Probably... I don't know if I've ever seen <<him npc_admin>> not looking max swole.">><br>
<br>
You finish a workout on your own.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<elseif $npc_admin.flags.ageofconfusion>>
On your way to the gym you send a text to <<=setup.getNpcName('npc_admin', 'first')>> asking to meet to work out, but you get no response. Unfortunately you arrive to find no sign of your friend.<br>
<br>
<<printThought "Damn, I really need to talk to <<him npc_admin>>, if <<hes npc_admin>> skipping workouts <<he npc_admin>> must be really freaked out...">><br>
<br>
You try to go through the workout on your own, but you're pretty sure you forgot a few parts and it overall only serves to further remind you of the painful fact that the big <<guy npc_admin>> isn't around.<br>
<br>
You finish the workout, but don't feel particularly accomplished or anything.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<elseif !$npc_admin.flags.reactnamechange && $player.sec_style.body.name != "">>
On your way to the gym you get a text from <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_admin;Sorry, <<callPlayer "npc_admin">> — I must have slept wrong and tweaked something because I'm feeling a bit off. I'm just going to do a bit of at-home rehab so I can make it to work today, but don't want to risk going under the weights and exacerbating anything, y'know?@@"<br>
<br>
You wish him luck with recovery and continue to the gym.<br>
<br>
<<printThought "Hmm, maybe good timing, probably better to talk to <<him npc_admin>> about my new name at all one on one, rather than in the middle of a public gym.">><br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<elseif $workEvents.hasOwnProperty("admin_morning_confrontation")>>
You try to text <<=setup.getNpcName('npc_admin', 'first')>> but <<he npc_admin>> messages cryptically back that <<he npc_admin>>'s "@@.npc_admin;busy.@@"<br>
<br>
You bite your lip, thinking back to your last conversation... but <<he npc_admin>> does not respond to further texts.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<else>>
You shoot off a text and get a thumbs up in response and you pack your work clothes to change later and head out in your gym attire to meet <<=setup.getNpcName('npc_admin', 'first')>> at <<printShopName 'gym'>>.<br>
<br>
Finding <<him npc_admin>> with the weights, of course, <<hes npc_admin>> already got stuff racked for <<his npc_admin>> first set, smiling in greeting as you head over to join <<him npc_admin>>.<br>
<br>
<<if $npc_admin.stage < 2>>
<<switch $npc_admin.flags.consecutiveWorkouts>>
<<case 1>>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>! Glad you could make it in, I know the first time back can be the toughest, but just stick with it, consistency is key!@@"
<<case 2 3>>
"@@.npc_admin;Love to see you back in the gym regular-like, just gotta keep consistent now.@@"
<<case 4>>
"@@.npc_admin;I'm lovin' your consistency the past week or so, much more of this and I'm going to start relying on you just being here always!@@"
<<default>>
<<if $workEvents.hasOwnProperty('manager_matchmaker')>>
"@@.npc_admin;Back to the grind! Good job, let's move some weights!@@"<br>
<br>
<<printThought "Hmm, looks like <<he npc_admin>> wants to pretend nothing happened when <<he npc_admin>> came to my house... disappointing, but maybe if I give <<him npc_admin>> a little more time?">>
<<elseif $npc_admin.flags.sawHimfuckingManager || $npc_admin.flags.monogomous_manager>>
"@@.npc_admin;I love how dedicated you've been at working out. It's getting to be a real comfort knowing you're going to be here for me every day. I'd be a bit concerned if you missed a day!@@"<br>
<br>
<<printThought "This is my shot, if I skip the next workout <<hes npc_admin>> sure to react and... maybe come check on me?">>
<<else>>
"@@.npc_admin;Now that's what I call a workout! And you've been so consistent, the real key to progress.@@"
<</if>>
<</switch>>
<<else>>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>! Glad you could make it, ain't nothing like a pump to start the day, I was just starting my work set, throw me a spot.@@"
<</if>>
<br><br>
[<<moveTo "event_admin_gym_morning_2" "Just lift with <<him npc_admin>>." 1800 "<<set $scene.flirt=false>>">>]<br>
<<if $npc_admin.flags.sawHimfuckingManager || $npc_admin.flags.monogomous_manager || $npc_admin.flags.flirted>>
<<if $workEvents.hasOwnProperty('manager_matchmaker')>>
[@@.link_locked;You feel like flirting today would be pushing a bit too hard.@@]
<<else>>
[<<moveTo "event_admin_gym_morning_2" "Flirt with <<him npc_admin>> while you work out." 1800 "<<set $scene.flirt=true>>">>]
<</if>>
<<else>>
[@@.link_locked;You don't feel comfortable with the idea of flirting with <<=setup.getNpcName('npc_admin', 'first')>> while you work out.@@]
<</if>>
<</if>>
</div>/*#
#desc: admin picked you up at home to workout together
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<clothSetToInventory 'Office Clothes'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_admin","npc_admin_training")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_admin', 'first')>> rush to the gym and head straight for the weights. It's going to be a bit tight to fit in a whole routine before you head to work, but if you focus, you can probably pull it off.<br>
<br>
[<<moveTo "event_admin_gym_morning_2" "You've distracted <<him npc_admin>> enough this morning, just focus on lifting." 60 "<<set $scene.flirt=false>>">>]<br>
<<if $npc_admin.flags.sawHimfuckingManager || $npc_admin.flags.monogomous_manager || $npc_admin.flags.flirted>>
<<if $workEvents.hasOwnProperty('manager_matchmaker')>>
[@@.link_locked;You feel like flirting today would be too much and end up annoying <<him npc_admin>>.@@]
<<else>>
[<<moveTo "event_admin_gym_morning_2" "Flirt with <<him npc_admin>> while you workout." 60 "<<set $scene.flirt=true>>">>]
<</if>>
<<else>>
[@@.link_locked;You don't feel comfortable with the idea of flirting with <<=setup.getNpcName('npc_admin', 'first')>> while you work out.@@]
<</if>>
</div>/*#
#desc: already at gym when you meet admin to workout before work
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEvent 'event_admin_morning_visit'>>
<<removeEvent 'event_admin_morning_workout_call'>>
<<if $npc_admin.flags.ageofconfusion>>
<<applyExperience 'strength' 6 'almost' $SEEN_STRANGER>>
<<else>>
<<include "npcAdminWorkoutHandling">>
<</if>>
<<set _gymStart = setup.setNextDate($now, 0, 7, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_gymStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<clothSetToInventory 'Office Clothes'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_admin.flags.ageofconfusion>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<<else>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_admin","npc_admin_training")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.ageofconfusion>>
You keep an eye out for <<=setup.getNpcName('npc_admin', 'first')>> to show up, but <<he npc_admin>> never does.<br>
<br>
<<printThought "Damn, I really need to talk to <<him npc_admin>>, if <<hes npc_admin>> skipping workouts <<he npc_admin>> must be really freaked out...">><br>
<br>
You try to go through the workout on your own, but you're pretty sure you forgot a few parts and it overall only serves to further remind you of the painful fact that the big <<guy npc_admin>> isn't around.<br>
<br>
You finish the workout, but don't feel particularly accomplished or anything.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<else>>
You shoot off a text and get a thumbs up in response, heading out to the lobby to wait for your friend.<br>
<br>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>! First one at the gym! Now THAT is the type of motivation I can dig!@@"<br>
<br>
You share a fist-bump and head for the weights, <<=setup.getNpcName('npc_admin', 'first')>> already looking trim in <<his npc_admin>> tight workout clothes.<br>
<br>
[<<moveTo "event_admin_gym_morning_2" "Just lift with <<him npc_admin>>." 1800 "<<set $scene.flirt=false>>">>]<br>
<<if $npc_admin.flags.sawHimfuckingManager || $npc_admin.flags.monogomous_manager || $npc_admin.flags.flirted>>
[<<moveTo "event_admin_gym_morning_2" "Flirt with <<him npc_admin>> while you work out." 1800 "<<set $scene.flirt=true>>">>]
<<else>>
[@@.link_locked;You don't feel comfortable with the idea of flirting with <<=setup.getNpcName('npc_admin', 'first')>> while you work out.@@]
<</if>>
<</if>>
</div>/*#
#desc: workout/flirt with admin before work
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<storeVisual $player $npc_admin>>
<<if $scene.flirt>>
<<if $npc_admin.stage > 1>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<changeHorny 20>>
<<case 'boyfriend'>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<changeHorny 20>>
<<case 'friend'>>
<<decrementEmotion 'affection' 'npc_admin' 2>>
<</switch>>
<<elseif $npc_admin.flags.reactnamechange>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<set $scene.first_flirt = !$npc_admin.flags.flirted>>
<<set $npc_admin.flags.flirted = true>>
<<else>>
<<applyStress 10>>
<<decrementEmotion 'affection' 'npc_admin' 2>>
<</if>>
<<if !$npc_psychiatrist.themes.hasOwnProperty('admin') || setup.findThemeId('npc_psychiatrist', 'admin', 'theme_psychiatrist_admin_10') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_10'
0
'event_psychiatrist_session_admin_flirt'
false
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_admin","npc_admin_training")>>
<div id="invframe" class="scrolltext">
<<if $scene.flirt>>
<<if $npc_admin.stage > 1>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
You flirt with <<=setup.getNpcName('npc_admin', 'first')>> in between sets and <<he npc_admin>> grins at you. Between the sexy smell of <<his npc_admin>> sweat, and your own actions, you reach the end of the workout both feeling a bit hot and bothered.
<<case 'boyfriend'>>
You smile and flirt with <<=setup.getNpcName('npc_admin', 'first')>> in between sets, sometimes just staring in awe at this wonderful <<man npc_admin>> of yours. Catching you staring <<he npc_admin>> just grins back and fires off an extra rep.
<<case 'friend'>>
As you start to flirt with <<=setup.getNpcName('npc_admin', 'first')>>, <<he npc_admin>> frowns, reminding you that <<he npc_admin>> doesn't feel that way about you, and asking if you could you just focus on the workout.
<<default>>
ERROR: unknown npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<<elseif $npc_admin.flags.knowgender == 'female'>>
You adopt a flirty demeanour as you start working out, going out of your way to touch or bashfully catch <<=ps(setup.getNpcName('npc_admin', 'first'))>> eye as you work in with <<him npc_admin>>.<br>
<br>
<<if $scene.first_flirt>>
At first <<he npc_admin>> looks at you a bit strange, though <<he npc_admin>> makes no comment. As the workout continues on, however, you notice <<him npc_admin>> sneaking glances at you, as well as a slight swelling in someplace OTHER than <<his npc_admin>> muscles...<br>
<br>
As you finish up your final set and help <<him npc_admin>> rack the weights, you catch a glimpse of <<him npc_admin>> in the mirror. <<He npc_admin>> doesn't realise that you can see <<him npc_admin>>, but the way <<hes npc_admin>> looking at you... there's a touch of surprise, but something more; sure, <<hes npc_admin>> accepted you as a woman, but this is beyond that, the glint in <<his npc_admin>> eye is more than just "oh, girl" for it is tinged with that most wondrous of spice... desire.<br>
<br>
<<printThought "<<Hes npc_admin>> starting to want me, but if I move too fast I might spook <<him npc_admin>>... maybe if I keep teasing <<if $npc_admin.fem>>she'll<<else>>he'll<</if>> make the first move?">>
<<else>>
Lying back and looking up at <<him npc_admin>> as <<he npc_admin>> spots your bench you can't help but feel your heart beat faster, your face ever so close to the obvious bulge in <<his npc_admin>> delightfully snug compression shorts.<br>
<br>
<<printThought "Yum.">><br>
<br>
By the end of things you can tell <<hes npc_admin>> breathing a bit harder than the mere workout should have caused.
<<if $npc_admin.flags.relationship == "">>
<br><br>
<<if $npc_admin.affection >= 10>>
<<if $npc_admin.flags.consecutiveWorkouts >= 5>>
<<printThought "Hmm, <<he npc_admin>> seems so close... maybe if I could get <<him npc_admin>> alone back at my apartment somehow?... I wonder what <<he npc_admin>>'d do if I failed to show up some morning?">>
<<else>>
<<printThought "Hmm, <<he npc_admin>> seems so close... if I get <<him npc_admin>> a bit more accustomed to seeing me every morning maybe <<he npc_admin>>'d visit if I no-showed?">>
<</if>>
<<elseif $npc_admin.affection > 5>>
<<printThought 'I think <<he npc_admin>> is starting to see me in a "different" way, gotta keep it up!'>>
<<else>>
<<printThought "Hmm, it seems like <<hes npc_admin>> still coming around to me, but maybe if I keep working on <<him npc_admin>> and spending time together?">>
<</if>>
<</if>>
<</if>>
<<elseif $npc_admin.flags.knowgender == 'male'>>
You adopt a flirty demeanour as you start working out, you can tell it's kind of weirding <<him npc_admin>> out and <<he npc_admin>> laughs awkwardly.<br>
<br>
"@@.npc_admin;Ha ha, come on <<callPlayer "npc_admin">>, bending your back like that during training will reduce your efficiency by a lot. Straighten up your spine and let's just focus on the lifts, huh?@@"<br>
<br>
<<printThought "I guess this is a bit awkward given our history and <<if $npc_admin.fem>>her lesbianism<<else>>his heterosexuality<</if>>.">><br>
<br>
You turn things down and continue your workout, though you still spy <<him npc_admin>> checking out your butt in the mirror once while you're squatting, though you're not sure if <<he npc_admin>> IS checking out your butt, or your posture.<br>
<br>
"@@.npc_admin;Straight <<callPlayer "npc_admin">>, straight! Yeah, like that!@@"<br>
<br>
<<printThought "Posture it is.">><br>
<br>
"@@.npc_admin;That's it, go deep!@@"<br>
<br>
<<printThought "Or not?">>
<<else>>
You adopt a flirty demeanour as you start working out, you can tell it's kind of weirding <<him npc_admin>> out and <<he npc_admin>> laughs awkwardly.<br>
<br>
"@@.npc_admin;Sorry I wanna just focus on lifting today, you should to, distractions leak gainz!@@"<br>
<br>
<<printThought "Hmm, I guess <<he npc_admin>> is like 100% <<if $npc_admin.fem>>lesbian<<else>>hetero<</if>>, maybe if <<he npc_admin>> thought of me as a girl?">><br>
<br>
You turn things down and continue your workout, though you still spy <<him npc_admin>> checking out your butt in the mirror once while you're squatting.
<</if>>
<<else>>
You focus on the routine, working in with <<=setup.getNpcName('npc_admin', 'first')>> as you try to keep up with <<his npc_admin>> meticulously planned workout.
<</if>>
<br><br>
[<<moveTo "event_admin_gym_morning_3" "Finish workout." 300>>]
</div>/*#
#desc: finish working out with admin before work
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<applyFatigue 50>>
<<applyStress -10>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_admin","npc_admin_training")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("strength") > 7>>
<<if setup.getTotalValue("strength") > 15>>
Thanks to the size difference, <<=setup.getNpcName('npc_admin', 'first')>> is way stronger than you'll ever be, but you still feel like comrades under the bar, each of you putting up way more weight than most of the rest of the gym, attracting looks of admiration and, in your case, surprise from other gym goers.
<<elseif setup.getTotalValue("strength") > 10>>
After a lot of work, you can definitively call yourself strong. Not "bench press a car" strong like <<=setup.getNpcName('npc_admin', 'first')>>, but <<hes npc_admin>> <<if $npc_admin.fem>>been training for years<<else>>also over twice your size<</if>>. For your weight though you're doing great, toned and lithe as you nail your work with an eye already on setting your next PR.
<<else>>
You're starting to get the hang of this whole "lifting" thing, finally past just learning form to where you're starting to move some real weight.
<</if>>
<br><br>
<<if setup.getTotalValue("stamina") > 7>>
<<if setup.getTotalValue("stamina") > 15>>
As strong as you are, you balance it out with seemingly unending stamina, sweating just enough to glow with plenty in the tank even after what most would have called a gruelling workout.
<<else>>
Complementing your strength is your stamina — you still can't rep out with ease quite as well as <<=setup.getNpcName('npc_admin', 'first')>>, but you manage to keep pace with <<his npc_admin>> advanced routine.
<</if>>
<br><br>
<<=setup.getNpcName('npc_admin', 'first')>> is practically glowing, looking even more ripped than usual after the heavy workout.<br>
<br>
<<if $npc_admin.flags.martial_arts_level == 0>>
<<set $npc_admin.flags.martial_arts_level = 1>>
<<set $gym.classes.martial_arts_available = true>>
"@@.npc_admin;Hey, you're doin' pretty good. I know you had a bit of a bad time the last time, but you should totally join me for a karate class sometime. I think you'll enjoy it better now that you're in decent shape.@@"
<<else>>
"@@.npc_admin;Lookin' good, I can't believe how fast you've come along. Just keep at it and your cardio will catch up for sure.@@"
<</if>>
<br><br>
"@@.npc_admin;Damn, now THAT is how to start a day. I dunno why you didn't start working out with me years ago, you're a natural and you look so much better with a little muscle on your bones. Anyway, we better hit the showers now or we're going to be late to work!@@"
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
As strong as you are, your cardio can't quite keep up. You still manage a good workout, but have to sit out a couple sets as <<=setup.getNpcName('npc_admin', 'first')>> pulls off another feat of strength without you.<br>
<br>
<<if $npc_admin.flags.martial_arts_level == 0>>
<<set $npc_admin.flags.martial_arts_level = 1>>
<<set $gym.classes.martial_arts_available = true>>
"@@.npc_admin;Hey, you're doin' pretty good. I know you had a bit of a bad time the last time, but you should totally join me for a karate class sometime. I think you'll enjoy it better now that you're in decent shape.@@"
<<else>>
"@@.npc_admin;Lookin' good, I can't believe how fast you've come along. Just keep at it and your cardio will catch up for sure.@@"
<</if>>
<<else>>
You may be strong, but your cardio is a bit lacking, you're barely able to do more than three reps per set, huffing and puffing by the end of the workout.<br>
<br>
"@@.npc_admin;I know it's boring, but you gotta spend some time on your cardio, <<callPlayer "npc_admin">>. Maybe swing by after work a few days a week and catch a class or hit the ellipticals.@@"
<</if>>
<br><br>
You nod along as you take a drink of water and catch your breath.<br>
<br>
"@@.npc_admin;Anyway, we better hit the showers and change or we're going to be late to work!@@"
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
You do the best you can to follow along with <<=ps(setup.getNpcName('npc_admin', 'first'))>> routine. You're moving far, far less weight, of course, but you're starting to feel comfortable with the movements at least, and even feeling a bit of a pump.
<<else>>
The idea that you could possibly be useful as a spot is somewhat laughable. You doubt you could even budge half of what <<hes npc_admin>> lifting as <<he npc_admin>> bangs out half a dozen clean reps before racking and helping strip the bar for your set.
<</if>>
<br><br>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
You may not be very strong, but you never tire, doing "work" weight for lots of reps.
<<else>>
You may not be moving that much weight, but you're lifting it many, many times before feeling any fatigue.
<</if>>
<br><br>
"@@.npc_admin;Well, you still need to get your strength up a bit, but you're going to have great tone!@@"
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
Your cardio gives out about midway through the routine, forced to sit out a set or two as you try to recover, a fact even more disheartening given how little weight you were moving.
<<else>>
You may be weak, but you also have no stamina, your limbs trembling after just a couple of reps.
<</if>>
<br><br>
"@@.npc_admin;Dang, <<callPlayer "npc_admin">>, you really have been going soft! Well, nothing a bit of time under the bar won't fix!@@"
<</if>>
<br><br>
You nod along as you take a drink of water and do your best to catch your breath.<br>
<br>
"@@.npc_admin;Anyway, we better hit the showers and change or we're going to be late to work!@@"
<</if>>
<br><br>
<<if $npc_admin.stage >= 3>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
Reaching the end of the workout, you're feeling very aroused and you can tell that <<=setup.getNpcName('npc_admin', 'first')>> is as well.<br>
<br>
<<if $npc_admin.flags.voluntary_oral && State.hasPlayed("event_admin_sex_first_5")>>
[<<moveTo "event_admin_gym_morning_sex_1" 'Ask if <<he npc_admin>> would like to work your glutes and "pound out a few more reps..."' 300 "<<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if !$player.virgin.vaginal>>
[@@.link_locked;You'd like your first time to be a bit more intimate than rushing a quickie before work.@@]<br>
<<elseif !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_admin_gym_morning_sex_1" 'You could really go for some "cooldown" coitus.' 600 "<<set $scene.anal=false>>">>]<br>
<<else>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<<if _unlockable>>
[<<moveTo "event_admin_gym_morning_sex_1" 'Unlock your <<getWordVagina>> for some "cooldown" coitus.' 600 "<<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your vagina is securely locked and out of reach.@@]<br>
<</if>>
<</if>>
<</if>>
<<else>>
[<<moveTo "event_admin_first_oral_0" "Make eyes towards one of the private rooms and ask if <<he npc_admin>>'d like to do some cooldown stretching." 300>>]<br>
<</if>>
[<<moveTo "event_gym_admin_showers" "Just head for the showers." 60>>]
<<case 'boyfriend'>>
Reaching the end of the workout, you're both feeling good and aroused and, from a glance between <<his npc_admin>> legs, it's not just <<his npc_admin>> arms that are pumped full of blood.<br>
<br>
<<if $npc_admin.flags.voluntary_oral && State.hasPlayed("event_admin_sex_first_5")>>
[<<moveTo "event_admin_gym_morning_sex_1" 'Ask if <<he npc_admin>> would like to work your glutes and "pound out a few more reps..."' 300 "<<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_admin_gym_morning_sex_1" 'You could really go for some "cooldown" coitus.' 600 "<<set $scene.anal=false>>">>]<br>
<<else>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<<if _unlockable>>
[<<moveTo "event_admin_gym_morning_sex_1" 'Unlock your <<getWordVagina>> for some "cooldown" coitus.' 600 "<<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your vagina is securely locked and out of reach.@@]<br>
<</if>>
<</if>>
<</if>>
<<else>>
[<<moveTo "event_admin_first_oral_0" "Make eyes towards one of the private rooms and ask if <<he npc_admin>>'d like to do some cooldown stretching." 300>>]<br>
<</if>>
[<<moveTo "event_gym_admin_showers" "Just head for the showers." 60>>]
<<case 'friend'>>
Reaching the end of the workout <<he npc_admin>> stretches a little and then turns for the shower.<br>
<br>
"@@.npc_admin;See ya at work!@@"<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<default>>
ERROR: unknown npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<<else>>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<</if>>
</div>/*#
#desc: gym locker room shower after working out with admin
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<<removeAllClothing>>
<<include "cleanPlayer">>
<<set $player.makeup.messed = 0>>
<<set _cage_id = setup.getItemFromType('cage')>>
<<if _cage_id>>
<<changeItemStatus _cage_id 'cumsoaked' '["remove"]'>>
<<changeItemStatus _cage_id 'dirty' '["remove"]'>>
<<changeItemStatus _cage_id 'piss' '["remove"]'>>
<<changeItemStatus _cage_id 'sweaty' '["remove"]'>>
<</if>>
<<useClothSet 'Office Clothes' false>>
<<set $scene.after=true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.ageofconfusion>>
You shower<<if $player.makeup.template != "">>, fix your makeup,<</if>> and change for work.
<<else>>
<<if $npc_admin.fem>>
<<if $npc_admin.flags.reactnamechange>>
You and <<=setup.getNpcName('npc_admin', 'first')>> head for the locker room.<br>
<br>
You shower<<if $player.makeup.template != "">>, fix your makeup,<</if>> and change, trying not to get too distracted by <<=ps(setup.getNpcName('npc_admin', 'first'))>> large <<getWordPenis "npc_admin">>.
<<if $npc_admin.flags.relationship == 'boyfriend'>>
<br><br>
Before <<=setup.getNpcName('npc_admin', 'first')>> heads to work, you give your girlfriend a kiss goodbye.
<</if>>
<<else>>
Bidding <<=setup.getNpcName('npc_admin', 'first')>> goodbye, you head for the men's locker room, changing<<if $player.makeup.template != "">>, showering and fixing your makeup<<else>> and showering without incident<</if>>.
<</if>>
<<else>>
<<if $npc_admin.flags.reactnamechange>>
<<if $npc_admin.flags.relationship == 'boyfriend'>>Giving <<=setup.getNpcName('npc_admin', 'first')>> a kiss<<else>>Bidding <<=setup.getNpcName('npc_admin', 'first')>><</if>> goodbye, you head for the women's locker room, changing<<if $player.makeup.template != "">>, showering and fixing your makeup<<else>> and showering without incident<</if>>.
<<else>>
You and <<=setup.getNpcName('npc_admin', 'first')>> head for the locker room.<br>
<br>
<<if setup.getItemFromType("cage")>>
You are careful to avoid letting <<him npc_admin>> see your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. You can't help but notice that he's just as impressive a paragon of masculinity "down there" as he is everywhere else.
<<else>>
You hurriedly shower<<if $player.makeup.template != "">>, fix your makeup,<</if>> and change, trying not to distracted by <<=ps(setup.getNpcName('npc_admin', 'first'))>> large <<getWordPenis "npc_admin">>.
<</if>>
<</if>>
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Lockerroom">><<set $scene.return_makeuproom="event_gym_admin_showers_postmakeup">><<set $scene.makeuproom_image="./images/locations/gym_lockers.png">><<set $scene.return_makeuproomtext="Return to the lockerroom.">>'>>]<br>
<</if>>
<<if $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>
<<if setup.checkOutsideDecency()>>
[<<moveTo 'room_citymap' 'Leave the gym.' 180>>]<br>
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
[@@.link_locked;Go out without makeup? No...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_too_fem">>
[@@.link_locked;This makeup is maybe a bit too much...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
[@@.link_locked;My makeup is a mess, I need to deal with this before I go back out in public!@@]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<if setup.checkOutsideDecency()>>
<<if setup.analyzeWornTags(['casual','office', 'formal']) != 'office'>>
<<printThought "Hmm, I don't think what I'm wearing is quite appropriate for the office...">><br>
<br>
<</if>>
<<if $npc_manager.stagevalues[2].no_change>>
<<printTravel "company_lobby_exterior" "Work" 600 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now'>>">> <<hint $options "You can still change clothes manually.">>
<<else>>
<<printTravel "company_lobby" "Work" 600 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now'>>">> <<hint $options "You can still change clothes manually.">>
<</if>>
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
[@@.link_locked;Go out without makeup? That's not properly prepared for work!@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_too_fem">>
[@@.link_locked;This makeup is maybe a bit too much...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
[@@.link_locked;My makeup is a mess, I need to deal with this before work!@@]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
</div>/*#
#desc: gym locker room makeup after working out with admin
#status: FINISHED 0.7.12.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<<set _cage_id = setup.getItemFromType('cage')>>
<<if _cage_id>>
<<changeItemStatus _cage_id 'cumsoaked' '["remove"]'>>
<<changeItemStatus _cage_id 'dirty' '["remove"]'>>
<<changeItemStatus _cage_id 'piss' '["remove"]'>>
<<changeItemStatus _cage_id 'sweaty' '["remove"]'>>
<</if>>
<<if $now.getUTCDay() > 0 && $now.getUTCDay() < 6 && !$scene.after>>
<<removeAllClothing>>
<<useClothSet 'Office Clothes'>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Lockerroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
You step away from the mirror and double check your reflection.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.after=true>><<set $scene.makeuproom="Lockerroom">><<set $scene.return_makeuproom="event_gym_admin_showers_postmakeup">><<set $scene.makeuproom_image="./images/locations/gym_lockers.png">><<set $scene.return_makeuproomtext="Return to the lockerroom.">>'>>]<br>
<br>
<</if>>
<<if $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>
<<if setup.checkOutsideDecency()>>
[<<moveTo 'room_citymap' 'Leave the gym.' 180>>]<br>
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
[@@.link_locked;Go out without makeup? No...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_too_fem">>
[@@.link_locked;This makeup is maybe a bit too much...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
[@@.link_locked;My makeup is a mess, I need to deal with this before I go back out in public!@@]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<if setup.checkOutsideDecency()>>
<<if setup.analyzeWornTags(['casual','office', 'formal']) != 'office'>>
<<printThought "Hmm, I don't think what I'm wearing is quite appropriate for the office...">><br>
<br>
<</if>>
<<printTravel "company_lobby" "Work" 600>>
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
[@@.link_locked;Go out without makeup? That's not properly prepared for work!@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_too_fem">>
[@@.link_locked;This makeup is maybe a bit too much...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
[@@.link_locked;My makeup is a mess, I need to deal with this before work!@@]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
</div>/*#
#desc: stretch w/admin after workout
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_training")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> replies that sounds like a good idea and you head for a private room. You close the door behind you as <<he npc_admin>> goes straight into stretching, the sight of <<his npc_admin>> swelled muscles in relief as <<he npc_admin>> shows off <<his npc_admin>> flexibility sending your pulse racing.<br>
<br>
The "cool down" helps a bit with muscle soreness but only serves to exacerbate other sorts of "tension." <br>
<br>
Rising to your feet, you find yourself standing very close to <<him npc_admin>>, the room closing in, until the whole world seems to be just you, <<him npc_admin>> and <<his npc_admin>> cock nigh bulging out of <<his npc_admin>> tight workout pants...<br>
<br>
[<<moveTo "event_admin_first_oral_1" "Take hold of greatness." 300>>]<br>
[<<moveTo "event_gym_admin_showers" "Just head for the showers." 300>>]
</div>/*#
#desc: blow admin after workout
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.voluntary_oral = true>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_30'
0
'event_psychiatrist_session_admin_gym_bj'
false
>>
<</if>>
<<set $player.location to "At the Foot of a God">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_training")>>
<div id="invframe" class="scrolltext">
You pause, your hand resting on <<=ps(setup.getNpcName('npc_admin', 'first'))>> cock, separated by half a millimetre of compression clothing. Gaze locked you can see fear and confusion and lust swirling in <<his npc_admin>> eyes.<br>
<br>
"@@.npc_admin;You don't—@@"<br>
<br>
You place a single slender finger over <<his npc_admin>> lips. "@@.pc;Shhh, I WANT to@@" you reply, rising up onto your toes to give <<him npc_admin>> a gentle peck on the cheek before sliding to your knees, never breaking eye-contact.<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
Sure you've sucked <<him npc_admin>> off before, but today feels different. Before the both of you were half reacting to your <<=ps(setup.getNpcName('npc_manager', 'title'))>> machinations whereas today... today is just about you. You and the big, beautiful cock that you are kneeling down to meet eye to eye.
<<else>>
Fingers trembling you unfasten <<his npc_admin>> pants, <<his npc_admin>> cock bursting free with such vigour it almost slaps you in the face. Wrangling it with both hands you take a moment to admire its magnificence. Even bigger and more beautiful than you had imagined, <<=ps(setup.getNpcName('npc_admin', 'first'))>> cock is like a giant chocolate popsickle — only hot between your fingers. A glorious example of the species — thick enough that your hand can barely wrap around it, and long enough to plumb all of your hidden depths.
<</if>>
<br><br>
The scent of <<his npc_admin>> sweat was already strong, but down here, mixed with the heady aroma of <<his npc_admin>> balls it is enough to make one swoon. It is strong and powerful and oh so, so <<if $npc_admin.fem>>intoxicating<<else>>masculine<</if>>. Still looking up at <<him npc_admin>> you smile and then open your mouth and bring <<his npc_admin>> thick tip to your lips.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
While not strictly the biggest you've sucked, <<hes npc_admin>> the largest natural member to pass your lips and you open your mouth wide, moaning as you slide down <<his npc_admin>> shaft, relaxing your throat as your body stretches to accommodate <<him npc_admin>>.<br>
<br>
Looking up as your lips reach <<his npc_admin>> base <<his npc_admin>> eyes are wide with shocked pleasure. Still staring up with a twinkle in your eyes you remove your hands, crossing them behind your back as you nuzzle your nose against <<him npc_admin>> and hum to send vibrations up and down the shaft currently hilted in your throat.
<<elseif setup.getTotalValue("oral") > 10>>
One of the largest cocks you've ever had you struggle to take <<him npc_admin>> all the way, straining a bit to get the last of <<his npc_admin>> length past your lips, your throat straining as you tremble and finally are forced to pull back, suckling <<his npc_admin>> tip as you let out a little cough and catch your breath, looking adoringly up at <<him npc_admin>> the whole time.
<<elseif setup.getTotalValue("oral") > 5>>
<<Hes npc_admin>> far too big for you to do much more than wrap your lips around <<his npc_admin>> tip without gagging, but you do what you can, sucking and licking <<his npc_admin>> thick, swelled tip while your hands stroke up and down <<his npc_admin>> girthy shaft. Trying to make up for your deficit of skill you continue to look up at <<him npc_admin>> lustily, trying to convey with your expression how much you love <<his npc_admin>> cock.
<<else>>
You're practically a neophyte when it comes to fellatio and <<he npc_admin>> is definitely more of a post-doctoral level study, but you so, so want to please <<him npc_admin>> you somehow make up for it. Wrapping both hands around <<his npc_admin>> shaft you stroke <<him npc_admin>> while trying to merely fit <<his npc_admin>> tip inside your mouth, sucking and kissing and licking. The whole time you stare adoringly up at <<him npc_admin>>, wishing you had skill to match the depths of your feelings for <<him npc_admin>>.
<</if>>
<br><br>
<<He npc_admin>> gasps and you are momentarily in awe of how much control you have over this big, powerful, wonderfully sexy <<man npc_admin>>, not to mention <<his npc_admin>> self control. You momentarily fantasise about how it would feel for <<him npc_admin>> to wrap <<his npc_admin>> strong hands around your head and take charge.<br>
<br>
You refocus, perhaps some other time, right now everything is about <<if $npc_admin.fem>>HER<<else>>HIS<</if>> pleasure, putting <<him npc_admin>> at ease. Besides, you're still going to be ending up with a nice big mouthful of the thick <<if $npc_admin.fem>>gravy<<else>>mangravy<</if>> lurking in <<his npc_admin>> heavy balls.<br>
<br>
Taking a deep breath, you think about what is happening. This is one of your best, oldest friends<<if $npc_admin.fem>>...<<else>>, your "bro"...<</if>> and you're on your knees, dressed like a sexy girl, <<his npc_admin>> (glorious) cock in your mouth... there was a time you could have never even contemplated something like this, but now... in the moment? You could not think of anywhere you would rather be, or be sharing this moment with. You smile around <<his npc_admin>> cock and resume your wordless "oral demonstration" of adoration.<br>
<br>
[<<moveTo "event_admin_first_oral_2" "Continue." 60>>]
</div>/*#
#desc: blow admin after workout
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<</if>>
<<set $player.location to "At the Foot of a God">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_training")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("oral") > 10>>
Wrapping one hand around the base of <<his npc_admin>> shaft as best you can, you move your head back and forth with long strokes. Sucking the whole time you take <<him npc_admin>> almost all the way down then slide back until only <<his npc_admin>> tip is within your mouth. Holding <<him npc_admin>> by the root with one hand, you thrust faster and faster, your other hand sliding down, cradling <<his npc_admin>> large testicles, gently massaging them as you fantasise about relieving them of their wonderful payload.
<<else>>
Knowing that even an attempt to deepthroat would have you coughing or worse, you use both hands to stroke <<his npc_admin>> shaft, moving up and down with kisses before retuning to <<his npc_admin>> tip, sucking and swirling your tongue as you deploy every trick you can think of.
<</if>>
<br><br>
<<His npc_admin>> hands clench and unclench and <<his npc_admin>> breaths quicken as you sense <<his npc_admin>> orgasm approaching. Like a true <<if $npc_admin.fem>>well mannered lady<<else>>gentleman<</if>> <<he npc_admin>> gives you a warning, <<his npc_admin>> voice strained. "@@.npc_admin;About... to... cum...@@"<br>
<br>
Not wanting to miss out on a drop, and eager to impress, you pull back until just <<his npc_admin>> tip is inside your mouth, using your tongue and hands to push <<him npc_admin>> over the final edge. With a deep moan <<he npc_admin>> cums, a thick, powerful blast that swells your cheeks.<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
Even more delicious than you could have hoped you force yourself to swallow the thick, pungent brew to make way for the next squirt, and the next as <<his npc_admin>> cock continues to pulse.
<<elseif setup.getTotalValue("cum") >= 10>>
<<His npc_admin>> <<if $npc_admin.fem>>delicious<<else>>masculine<</if>> essence as strong and thick and potent as any you have tasted, you force yourself to swallow to make room for the next squirt as <<his npc_admin>> cock pulses again and again.
<<elseif setup.getTotalValue("cum") > 5>>
Even by your evolving standards <<his npc_admin>> cum is strong and delicious, you almost choke savouring the pungent flavour before managing to swallow as <<his npc_admin>> cock continues to pulse and pump out even more of the thick cream.
<<else>>
Though you may dislike the taste of cum this is a special occasion, and you force yourself to gulp down the thick, pungent mixture as <<he npc_admin>> continues to pulse lest you overflow and spill.
<</if>>
<br><br>
<<He npc_admin>> staggers at the intensity of <<his npc_admin>> release, but you stay locked to <<him npc_admin>>, sucking and licking until <<he npc_admin>> finally stops pumping you full of semen, giving a last lick through <<his npc_admin>> slit to catch anything you may have missed before releasing <<him npc_admin>> from your lips with a pop.<br>
<br>
Finally pulling out of your reach <<he npc_admin>> braces <<himself npc_admin>> against the wall as you remain kneeling, the two of you sharing a long glance as you undertake a mutual attempt to process what has just happened.<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
"@@.npc_admin;Wow, I never, I mean...@@"<br>
<br>
You can't help but be a touch amused at <<his npc_admin>> uncharacteristic lack of confidence as you smoothly rise to your feet and lick your lips clean.<br>
<br>
Sensing <<he npc_admin>> needs some time you blush and smile. "@@.pc;Well, I loved it... and I'd love to do it again... see you later, stud.@@" Giving a little sashay you walk out of the private room, closing the door behind you and then almost collapsing in a lusty heap.<br>
<br>
<<printThought "Oh <<getWordGod>> I need to be fucked...">><br>
<br>
Taking a deep breath, you resist the urge to rush back in and attempt to jump <<his npc_admin>> bones. Things are delicate enough and if you rush too fast... you shake your head, the thought of losing this opportunity is too much to contemplate. Trying to calm yourself you quickly head to the gym exit before <<he npc_admin>> collects <<himself npc_admin>> and decides to exit the room.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60>>]
<<case 'boyfriend'>>
"@@.npc_admin;Holy, wow I—@@" <<He npc_admin>> pauses, looking down as you blink up in adoration. "@@.npc_admin;Goddamn you are amazing! Wish I'd known you were a girl back in college, would have saved you from all that mess with your ex and you...@@" <<He npc_admin>> shakes <<his npc_admin>> head, still in awe.<br>
<br>
Though you would love nothing more than to feel <<him npc_admin>> pounding into a different hole, you've done too good a job as, while still hanging large, <<he npc_admin>> is definitely spent, plus there's the fact the both of you need to get to work.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Hit the showers!" 60>>]
<<default>>
ERROR: unknown npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
</div>/*#
#desc: sex admin after workout
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removePlug = false>>
<<set $scene.removeCage = false>>
<<if $scene.anal>>
<<applyExperience 'anal' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<else>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_training")>>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
<<=setup.getNpcName('npc_admin', 'first')>> pulls you in close and then spins you around, kissing your neck as <<he npc_admin>> <<if $scene.removePlug>>works your plug free and then takes its place<<else>>slides into your ass<</if>>. After the hard workout <<his npc_admin>> hard <<getWordPenis "npc_admin">> feels divine and you moan and "super-set" with some glute squeezes as <<his npc_admin>> hands tenderly roam your body and <<he npc_admin>> gives you that deep dicking that can have no end other than a powerful, knee-rattling orgasm.<br>
<br>
When you do cum you hold onto <<him npc_admin>> for stability, <<=setup.getNpcName('npc_admin', 'first')>> your ever-supportive, strong rock, holding you close as you climax... and then <<he npc_admin>> does the same<<if $fetish.cum>> basting your insides with a nice post-workout reward<</if>>.
<<else>>
<<if $scene.removeCage>>
The strong hands that had moments ago been tossing around hundreds of kilos with ease are nimble and gentle as <<=setup.getNpcName('npc_admin', 'first')>> unlocks your chastity belt to reveal the prize within. <<=setup.getNpcName('npc_admin', 'first')>> scoops you up and lowers
<<elseif setup.checkItemTypeWorn("cage")>>
Your <<getWordMyPenis>> and its tight prison are lifted out of the way in favour of the real prize as <<=setup.getNpcName('npc_admin', 'first')>> scoops you up and lowers
<<else>>
<<=setup.getNpcName('npc_admin', 'first')>> wastes no time in scooping you up and lowering
<</if>>
you onto <<his npc_admin>> hard <<getWordPenis "npc_admin">> as you wrap your arms around <<his npc_admin>> neck, feeling <<his npc_admin>> rock-hard traps and back as a rock-hard something else gives you pumps even better than a pump.<br>
<br>
If you thought <<=setup.getNpcName('npc_admin', 'first')>> would be fatigued or any less generous of a lover after a hard workout <<he npc_admin>> quickly dissuades you of that motion, as <<he npc_admin>> holds you in the air with ease, not merely fucking you, but moving your entire body up and down with <<his npc_admin>> every glorious thrust.<br>
<br>
Such pleasures are too much to resist for long and you soon cum passionately, squeezing <<him npc_admin>> tight in every sense of the word as <<he npc_admin>> <<if $fetish.cum>>paints your inside with <<his npc_admin>> appreciation as <<he npc_admin>> <</if>>moans in orgasm, <<his npc_admin>> <<if $npc_admin.fem>>rich<<else>>deep<</if>> voice music to your ears as you take even more pleasure in knowing that you got <<him npc_admin>> off.
<</if>>
<br><br>
The two of you sway in the afterglow, admiring your reflection standing with your <<man npc_admin>> in one of the room's mirrors as you ease down from the orgasmic high and <<he npc_admin>> gently places you back on the ground.<br>
<br>
You smile even wider as <<he npc_admin>>
<<if $scene.removePlug>>
plugs you tight, grinning up as he gives your plug a nice wiggle to make sure it's seated before the two of you fix your clothes and head for the door.
<<elseif $scene.removeCage>>
locks you back up, placing a kiss on the front shield of your chastity belt that has you even weaker in the knees. Back on <<his npc_admin>> feet you leap into <<his npc_admin>> arms for another passionate kiss
<<else>>
stares at you, grinning lustily at you one more time
<</if>>
before the two of you fix your clothes and head for the door.<br>
<br>
[<<moveTo "event_gym_admin_showers" "Shower and change." 60 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
</div>/*#
#desc: if you have a date during the age of confusion, this happens
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentTasks.admin_drink_1.condition = "Failed">>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_night.png">>
<div id="invframe" class="scrolltext">
You wait for a while, as you get a message on your phone. It's from <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_admin;I won't be able to make it tonight. I have a lot on my mind currently and don't feel like talking about it. Sorry.@@"<br>
<br>
You try to call <<him npc_admin>> a few times, but <<he npc_admin>> doesn't pick up. After a while you give up in frustration.<br>
<br>
[<<moveTo "room_usual_place_outside" "Continue." 500>>]
</div>/*#
#desc: if you have a date after he turned evil, this happens
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_night.png">>
<div id="invframe" class="scrolltext">
You wait for a while, but it seems that, wherever the big <<guy npc_admin>> is, <<=setup.getNpcName('npc_admin', 'first')>> isn't going to make it to drinks.<br>
<br>
<<printThought "What happened to my friend...">><br>
<br>
[<<moveTo "room_usual_place_outside" "Continue." 500>>]
</div>/*#
#desc: call admin root
#status: FINISHED 0.4.0.0
#ignore_spell: 30pm
#*/
<<if !$player.flags.firstWorkDay || $events.hasOwnProperty('event_admin_morning_visit') && setup.hoursToDate($now, $events.event_admin_morning_visit.trigger.date) < 3>>
<<set _call = 0>>
<<elseif (
( (($now.getUTCDay()>0)&&($now.getUTCDay()<5)) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=17)&&($now.getUTCHours()<=23))) ) ||
( ($now.getUTCDay()==5) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=13)&&($now.getUTCHours()<22))) ) ||
( ($now.getUTCDay()==6)||($now.getUTCDay()==0) && (($now.getUTCHours()>=7) && ($now.getUTCHours()<=24)) )
)>>
<<set _call = 1>>
<<else>>
<<set _call = 0>>
<</if>>
<<if !$player.flags.jobsecretary>>
<<set _call = 0>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if $npc_admin.flags.rare_meeting.code_red && (setup.dayDiff($now, $npc_admin.flags.rare_meeting.code_red_date)==0)>>
<<switch $npc_admin.flags.rare_meeting.code_red_reason>>
<<case "feminization">>
<<initRoom>>
<<moveTo 'room_call_admin_feminization'>>
<</switch>>
<<elseif $npc_admin.flags.ageofconfusion>>
<<initRoom>>
<<moveTo 'room_call_admin_ageofconfusion'>>
<<else>>
<<if $npc_admin.flags.rare_meeting.code_red && (setup.dayDiff($now, $npc_admin.flags.rare_meeting.code_red_date)!=0)>>
<<set $npc_admin.flags.rare_meeting.code_red = false>>
<</if>>
<<if _call != 0>>
<<set $scene.room_call_admin_firstcall = false>>
<<if !$npc_admin.first_call>>
<<set $npc_admin.first_call=true>>
<<set $scene.room_call_admin_firstcall = true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
You try to call <<=setup.getNpcName('npc_admin', 'first')>>, but get a "this number is no longer in service" error...
<<if $workEvents.hasOwnProperty('evil_admin_introduction')>>
You sigh, remembering the last sight you had of <<him npc_admin>> being led away. You wonder if you will you ever see your friend again?
<<else>>
Which makes sense, after all, after <<his npc_admin>> re-programming <<he npc_admin>> is very much not the <<man npc_admin>>/friend you knew; if only there was some way to get <<him npc_admin>> back...
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
<<switch _call>>
<<case 0>>
<<if !$player.flags.jobsecretary>>
You try to call <<=setup.getNpcName('npc_admin', 'first')>>. <<He npc_admin>> does not answer <<his npc_admin>> phone. Maybe you should try later.
<<elseif $events.hasOwnProperty('event_admin_morning_visit') && setup.hoursToDate($now, $events.event_admin_morning_visit.trigger.date) < 3>>
You try to call <<=setup.getNpcName('npc_admin', 'first')>>. <<He npc_admin>> does not answer <<his npc_admin>> phone. <<printThought "Hmm... I guess <<he npc_admin>>'s on his way to the gym already? I can just meet him there.">>
<<else>>
<<if $now.getUTCHours()>7 && $now.getUTCHours() < 17>>
You try to call <<=setup.getNpcName('npc_admin', 'first')>>. <<He npc_admin>> does not answer <<his npc_admin>> phone. You remember that <<=setup.getNpcName('npc_admin', 'first')>> does not answer <<his npc_admin>> personal phone during work hours at all. Maybe you should try at some other time.
<<else>>
You try to call <<=setup.getNpcName('npc_admin', 'first')>>. <<He npc_admin>> does not answer <<his npc_admin>> phone. <<printThought "<<Hes npc_admin>> probably sleeping... or maybe busy at the gym.">>
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Back." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 1 2>>
You call <<=setup.getNpcName('npc_admin', 'first')>>. <<He npc_admin>> picks up the phone after a short time ringing.<br>
<br>
<<if $scene.room_call_admin_firstcall>>
"@@.npc_admin;Hey<<if $player.sec_style.body.name == "">> <<=$player.first_name>><</if>>, how's it going? First time calling me after that fallout. How are you holding up?@@"<br>
<br>
You tell <<=setup.getNpcName('npc_admin', 'first')>> what you've been up to lately, leaving out some of the more... intimate details.<br>
<br>
"@@.npc_admin;Yeah, tough luck. At least you still got a job. Somehow. Kinda strange how that happened. You? A secretary? You should give me all the dirty details, maybe over a drink <<if $now.getUTCDay() == 5 && $now.getUTCHours() >= 20>>next<<else>>this<</if>> Friday?@@"<br>
<br>
[<<moveTo "room_call_admin_date" "Go for a drink." 60>>]<br>
[<<moveTo "room_call_admin_smalltalk" "Just talk a little bit." 1200>>] <<hint $options "Chatting with a friend from time to time can help blow off steam and reduce stress.">><br>
[<<moveTo $scene.beforePhoneCallLocation "Say you just called to say hello and chat for a few more minutes." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
<<if $currentTasks.hasOwnProperty("admin_drink_1") && !$currentTasks.admin_drink_1.finished>>
"@@.npc_admin;Couldn't wait for <<if $now.getUTCDay() == 5>>tonight<<else>>Friday<</if>>, eh? What's up?@@"
<<elseif $npc_admin.affection>=$npc_admin.anger>>
"@@.npc_admin;So... you got anything going this weekend? Maybe want to hang out and get a drink?@@"
<<else>>
"@@.npc_admin;Yeah? What's going on...@@"<br>
<br>
<<printThought "Hmm, <<he npc_admin>> sounds a bit upset with me, should be a bit more careful around <<him npc_admin>>">>
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty("admin_photoshoot") && !$currentTasks.admin_photoshoot.finished>>
[@@.link_locked;You've got a photoshoot booked with <<=setup.getNpcName('npc_admin', 'first')>>, calling <<him npc_admin>> for drinks at the same time wouldn't make sense.@@]
<<elseif $npc_admin.lastdate != null>>
<<if $npc_admin.lastdate.getTime()>$now.getTime()>>
[@@.link_locked;You've already agreed to go drinking with <<=setup.getNpcName('npc_admin', 'first')>>.@@]<br>
<<elseif setup.dayDiff($now, $npc_admin.lastdate)<2>>
[@@.link_locked;You should wait a few days before talking to<<=setup.getNpcName('npc_admin', 'first')>> about end of week drinks.@@]<br>
<<else>>
[<<moveTo "room_call_admin_date" "Go for a drink." 60>>]<br>
<</if>>
<<elseif $currentTasks.hasOwnProperty("task_prostitution_final") && !$currentTasks.task_prostitution_final.finished>>
[@@.link_locked;You consider meeting <<=setup.getNpcName('npc_admin', 'first')>> for drinks, but remember your commitment to do a special job for <<=setup.getNpcName('npc_barkeeper', 'first')>> Friday.@@]<br>
<<else>>
[<<moveTo "room_call_admin_date" "Go for a drink." 60>>]<br>
<</if>>
<<if State.hasPlayed("event_admin_photoshoot_invite_1") && !State.hasPlayed("event_admin_photoshoot_9")>>
<<if $currentTasks.hasOwnProperty("admin_photoshoot") && !$currentTasks.admin_photoshoot.finished>>
[@@.link_locked;You are already scheduled for a photoshoot with <<=setup.getNpcName('npc_admin', 'first')>>.@@]<br>
<<else>>
[<<moveTo "event_admin_photoshoot_invite_2" "Say you're ready for that photoshoot <<he npc_admin>> mentioned." 60 "<<set $scene.accept=true>><<set $scene.youInvite=true>>">>]<br>
<</if>>
<</if>>
<<if $npc_sex_club.flags.firstVisit && ["boyfriend","friendswbenefits","barkeeper"].includes($npc_admin.flags.relationship)>>
<<set _time = setup.getNextDayOfWeek($now, 1, 18, 30, false)>>
<<set _clubScheduled = !setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<<if State.hasPlayed("event_sexclub_date_admin_7")>>
[@@.link_locked;I already spent a night at <<printShopName "sex_club">> with <<=setup.getNpcName("npc_admin","first")>>.@@]<br>
<<elseif $currentTasks.hasOwnProperty('admin_code_red_1') && !$currentTasks.admin_code_red_1.finished || $currentTasks.hasOwnProperty('admin_drink_1') && !$currentTasks.admin_drink_1.finished || $currentTasks.hasOwnProperty('admin_date_movie') && !$currentTasks.admin_date_movie.finished || $currentTasks.hasOwnProperty('admin_photoshoot') && !$currentTasks.admin_photoshoot.finished>>
[@@.link_locked;I already have a date scheduled with <<=setup.getNpcName("npc_admin","first")>> I should finish that before talking to <<him npc_admin>> about <<printShopName "sex_club">>.@@]<br>
<<elseif $currentTasks.hasOwnProperty('task_admin_date_club') && !$currentTasks.task_admin_date_club.finished>>
[@@.link_locked;I already have a date to <<printShopName "sex_club">> scheduled with <<=setup.getNpcName("npc_admin","first")>>.@@]<br>
<<elseif _clubScheduled>>
[@@.link_locked;I already have plans for Monday night, I can't invite <<=setup.getNpcName("npc_admin","first")>> to <<printShopName "sex_club">>.@@]<br>
<<else>>
[<<moveTo 'event_call_admin_date_club_1' 'Ask if <<he npc_admin>> would accompany you to <<printShopName "sex_club">>?' 60>>]<br>
<</if>>
<</if>>
<<set _psychthemeId = setup.findThemeId('npc_psychiatrist', 'admin', 'theme_psychiatrist_admin_35')>>
<<if -1 != _psychthemeId && $npc_psychiatrist.themes.admin[_psychthemeId].done>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_admin") && !$currentTasks.psychiatrist_couples_admin.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_landlord") && !$currentTasks.psychiatrist_couples_landlord.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_technician") && !$currentTasks.psychiatrist_couples_technician.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_ex") && !$currentTasks.psychiatrist_couples_ex.finished>>
[@@.link_locked;You should finish your current couple's counseling before scheduling another one.@@]<br>
<<else>>
<<if $npc_psychiatrist.flags.evil == 1>>
[@@.link_locked;<<=setup.getNpcName("npc_psychiatrist", "formal")>> will not be hosting couple's counseling while she is still <<=ps(setup.getNpcName("npc_work_doctor", "formal"))>> bimbo slave...@@]<br>
<<else>>
[<<moveTo "event_call_admin_psychiatrist_1" 'Mention <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> invitation to couples counseling.' 60>>]<br>
<</if>>
<</if>>
<</if>>
<<if $npc_admin.lastcall != null>>
<<if setup.dayDiff($now, $npc_admin.lastcall)<5>>
[@@.link_locked;You have recently chatted with <<=setup.getNpcName('npc_admin', 'first')>> and can't think of anything minor to gab about. Maybe try again in a few more days.@@]<br>
<<else>>
[<<moveTo "room_call_admin_smalltalk" "Just talk a little bit." 1200>>] <<hint $options "Chatting with a friend from time to time can help blow off steam and reduce stress.">><br>
<</if>>
<<else>>
[<<moveTo "room_call_admin_smalltalk" "Just talk a little bit." 1200>>] <<hint $options "Chatting with a friend from time to time can help blow off steam and reduce stress.">><br>
<</if>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
[<<moveTo "call_admin_ask_uniform_upgrade" "Ask <<him npc_admin>> for outfit suggestions." 120>>]<br>
<</if>>
<<if $npc_admin.flags.tournament >= 1>>
<<if State.hasPlayed("event_tournament_win_1")>>
<<elseif $currentTasks.hasOwnProperty('task_gym_tournament') && !$currentTasks.task_gym_tournament.finished>>
[@@.link_locked;You are already registered to take part in the gym martial arts tournament.@@]<br>
<<else>>
[<<moveTo "event_tournament_admin_signup" 'Ask <<=setup.getNpcName("npc_admin","first")>> about entering the martial arts tournament at the gym.' 60>>]<br>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty('admin_barkeeper_matchmaker_1') && !$currentTasks.admin_barkeeper_matchmaker_1.finished || $currentTasks.hasOwnProperty('admin_barkeeper_matchmaker_2') && !$currentTasks['admin_barkeeper_matchmaker_2'].finished>>
<<if $npc_admin.flags.adminSch>>
[@@.link_locked;You already got <<=setup.getNpcName('npc_admin', 'first')>> to agree to show up to your planned date with <<=setup.getNpcName('npc_barkeeper', 'first')>>.@@]<br>
<<else>>
<<if $npc_admin.flags.relationship == "">>
[<<moveTo "event_call_admin_barkeeper_0" 'Tell <<him npc_admin>> to show up for your planned date with <<=setup.getNpcName("npc_barkeeper", "first")>>.' 120>>]<br>
<<else>>
[<<moveTo "event_call_admin_barkeeper_1" 'Tell <<him npc_admin>> to show up for your planned date with <<=setup.getNpcName("npc_barkeeper", "first")>>.' 120>>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo $scene.beforePhoneCallLocation "Say you just called to say hello and chat for a few more minutes." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
<</switch>>
<</if>>
</div>/*#
#desc: try to call admin during "age of confusion" period
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You finally make up your mind and try to call <<=setup.getNpcName('npc_admin', 'first')>>, but after all that effort it just goes to voicemail. There must be a lot going on in <<his npc_admin>> head right now, and you seem to be a major reason for this.<br>
<br>
<<printThought "There's got to be a way to put things back together... maybe if I have the courage to confront <<him npc_admin>> at work?">><br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone down, disillusioned." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: calling the admin in advance after full feminization, if this gets ignored this leads to the age of confusion (I really need better names for these...)
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set $scene.missed = false>>
<<if $now.getUTCHours()>=20>>
<<set $scene.missed = true>>
<<else>>
<<if $player.locations.theusualplace == false>>
<<set $player.locations.theusualplace = true>>
<</if>>
<<set _tmpDate = setup.setNextDate($now, 0, 20, 30)>>
<<set $npc_admin.lastdate = _tmpDate>>
<<addTaskById 'admin_code_red_1' _tmpDate>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You make up your mind and call <<=setup.getNpcName('npc_admin', 'first')>>. As you hear the phone trying to establish a connection, you start thinking. You're tempted to simply explain things on the phone, but then you remember some ancient wisdom you've heard once, though you cannot remember exactly where...<br>
<br>
<<printThought "Show, don't tell...">><br>
<br>
"@@.npc_admin;Hey there, <<=$player.original_first_name>>. Hows it going?@@"<br>
<br>
<<printThought "<<=$player.original_first_name>>, huh? Well, that will be a thing of the past soon.">><br>
<br>
You explain in a few words, that you'd like to declare a code red. Again. Just a while ago you declared one, after <<=setup.getNpcName('npc_exgirlfriend', 'first')>> left you. Didn't work out for you so much when you remember these events correctly, but unlike the last time, you don't intend to destroy yourself with alcohol.<br>
<br>
<<if $scene.missed>>
"@@.npc_admin;Sorry <<callPlayer "npc_admin">>, but you know the rules. If you would have called me any sooner, it wouldn't be a problem, but starting so late won't do any of us any favours. Maybe some other time okay? Well, see, you soon anyway!@@"<br>
<br>
Oh snap. Looks like you've missed your window of opportunity to sort this thing out before it escalates any further. Hopefully the consequences won't be too dire.
<<else>>
"@@.npc_admin;Okay, sure thing. The Usual Place at the usual time, okay? Just try to be a little bit less self destructive this time. As far as I remember, I had to carry you home after the last code red. I assume we both have to work tomorrow morning, do we? Well, later then!@@"
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: ask admin to go on a date over the phone
#status: FINISHED 0.4.0.0
#ignore_spell: 'd,30pm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.affection>=$npc_admin.anger>>
<<include "calcAdminDateDay">>
<<if $currentTasks.hasOwnProperty('technician_dinner') && !$currentTasks.technician_dinner.finished && setup.getTaskDueDate('technician_dinner').getUTCDate() == _tmpDate.getUTCDate()>>
<<set $scene.conflict = 'technician'>>
<<elseif $currentTasks.hasOwnProperty('task_prostitution_final') && !$currentTasks.task_prostitution_final.finished && setup.getTaskDueDate('task_prostitution_final').getUTCDate() == _tmpDate.getUTCDate()>>
<<set $scene.conflict = 'prostitution'>>
<<elseif $currentTasks.hasOwnProperty('admin_date_movie') && !$currentTasks.admin_date_movie.finished && setup.getTaskDueDate('admin_date_movie').getUTCDate() == _tmpDate.getUTCDate()>>
<<set $scene.conflict = 'movie'>>
<<elseif $currentTasks.hasOwnProperty('cds_drinking_admin') && !$currentTasks.cds_drinking_admin.finished && setup.getTaskDueDate('cds_drinking_admin').getUTCDate() == _tmpDate.getUTCDate()>>
<<set $scene.conflict = 'cds'>>
<<else>>
<<set $scene.conflict = ''>>
<</if>>
<<if !$scene.conflict>>
<<include "addAdminDate">>
<</if>>
<<else>>
<<decrementEmotion 'anger' 'npc_admin' 1>>
<<set $npc_admin.lastdate = $now>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.relationship == 'boyfriend' && $now.getUTCDay() != 5 && State.hasPlayed("event_admin_sex_first_4_anal") && (!$player.body_ref.vagina || State.hasPlayed("event_admin_sex_first_4_vaginal"))>>
You ask <<=setup.getNpcName("npc_admin","first")>> if <<he npc_admin>>'d like to go for drinks again and he counter-offers.<br>
<br>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>, so I was thinking. What about if, instead of hitting up the Usual Place... I took you on a proper date? Now, I'll warn you it won't be a crazy restaurant like we went to that one time, that's like a multi-month wait for reservations if you aren't someone important like your boss, but figure dinner, movie, y'know, there's nothing wrong with the classics, right?@@"<br>
<br>
[<<moveTo "event_admin_date_movie_invite_1" "Sounds like a plan!" 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_admin_date_movie_invite_1" "Actually, you'd rather just get drinks at the Usual Place." 60 "<<set $scene.accept=false>>">>]
<<elseif $npc_admin.affection>=$npc_admin.anger>>
You tell <<=setup.getNpcName('npc_admin', 'first')>> that you'd love to go out drinking with <<him npc_admin>>.<br>
<br>
<<switch $scene.conflict>>
<<case 'technician'>>
"@@.npc_admin;Nice. Okay, how about the Usual Place <<=$scene.dateAdminDay>>, at <<if $options.militaryTime>>20:30<<else>>8:30pm<</if>>?@@"<br>
<br>
<<printThought "Dang, that'd be during my dinner date with <<=setup.getNpcName('npc_technician','first')>>.">><br>
<br>
You explain that you already have a date scheduled... "@@.npc_admin;Back on the market? Good show, you need it! Well hit me up next week, before you're all booked up!@@"
<<case 'prostitution'>>
"@@.npc_admin;Dang... sorry <<callPlayer "npc_admin">> no can do this <<=$scene.dateAdminDay>>. I got some work function that I have to be going to, hit me up next week, alright?@@"<br>
<br>
You express sympathy on the topic of "outside of work" work activities and promise to get together some other time.
<<case "movie">>
"@@.npc_admin;Drinks? we're going to a movie Friday, remember!@@"<br>
<br>
You laugh, and reply that you've been so busy at work you just got a bit mixed up, but that you're really looking forward to your coming date.
<<case "cds">>
"@@.npc_admin;Drinks? You mean the drinks we were already scheduled for to celebrate the merger? The drinks we were already planning on sharing? Those drinks?@@"<br>
<br>
You laugh, and reply that you've been so busy at work you just got a bit mixed up, but that you're really looking forward to reminiscing about the old company.
<<case ''>>
"@@.npc_admin;Nice. Okay, how about the Usual Place <<=$scene.dateAdminDay>>, at <<if $options.militaryTime>>20:30<<else>>8:30pm<</if>>? First round is on me! See you then, <<=setup.getPcFirstName('npc_admin')>>!@@"
<<if $player.sec_style.body.name != "" && !$npc_admin.flags.reactnamechange>>
<br><br>
<<printThought "Oh yeah... <<he npc_admin>> doesn't know about my name change... well, best to do that face to face, anyway.">>
<</if>>
<<default>>
ERROR: unexpected scene.conflict <<=$scene.conflict>>
<</switch>>
<<else>>
You ask <<=setup.getNpcName('npc_admin', 'first')>> if <<he npc_admin>> wants to go and drink something this evening.<br>
<br>
"@@.npc_admin;Sorry <<=setup.getPcFirstName('npc_admin')>>, I'm really not feeling it tonight. Maybe some other day, when I find my inner zen again.@@"
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Say goodbye and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: chat small talk with admin on the phone
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.angry = $npc_admin.affection < $npc_admin.anger>>
<<if $scene.angry>>
<<set $scene.angry = true>>
<<decrementEmotion 'anger' 'npc_admin' 1>>
<<else>>
<<if $npc_admin.flags.relationship == 'boyfriend'>>
<<applyStress -20>>
<<else>>
<<applyStress -10>>
<</if>>
<</if>>
<<set $npc_admin.lastcall = $now>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_admin', 'first')>> that you've just called to talk a little bit.
<<if $scene.angry>>
Unfortunately it seems like <<=setup.getNpcName('npc_admin', 'first')>> is still angry at you for standing <<him npc_admin>> up at your last date. You spend the rest of your phone call to calm <<him npc_admin>> down and promise next time will be better.
<<elseif $npc_admin.flags.relationship == 'boyfriend'>>
You spend some time chatting with your <<boy npc_admin>>friend about your life, <<his npc_admin>> life. You avoid getting into anything too heavy as you're chatting about your day. You wish you could talk further, but just knowing <<hes npc_admin>> there for you really helps to brighten your mood.
<<else>>
You talk about a lot of stuff, like the past, the present and the future, how things are going and so on. You leave out a few details even though it makes you feel guilty. In the past, you could talk to <<=setup.getNpcName('npc_admin', 'first')>> about anything, but as the things are currently... well, you don't want to burden <<him npc_admin>> with your problems.<br>
<br>
Talking to <<=setup.getNpcName('npc_admin', 'first')>> helps make your worries seem more manageable.
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Say goodbye and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div><<if $now.getUTCDay()==5 && $now.getUTCHours() >= 20>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 5, 20, 30, false)>>
<<else>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 5, 20, 30, true)>>
<</if>>
<<if ($now.getUTCDay()==5 && $now.getUTCHours()<20)>>
<<set $scene.dateAdminDay = "today">>
<<else>>
<<set $scene.dateAdminDay = "Friday">>
<</if>><<if $player.locations.theusualplace == false>>
<<set $player.locations.theusualplace = true>>
<</if>>
<<include "calcAdminDateDay">>
<<set $npc_admin.lastdate = _tmpDate>>
<<addTaskById 'admin_drink_1' _tmpDate>><<if (!$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition == "Failed"))>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 20, 45, false)>>
<<addEvent 'event_admin_bar_call' _nextDate>>
<</if>>/*#
#desc: admin calls on friday to invite you to drinks
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_admin', 'first')>>!<br>
<br>
<<if $npc_admin.affection>=$npc_admin.anger>>
"@@.npc_admin;Hey <<=$player.first_name>>, I'm here at the Usual Place and I was thinking we haven't spent time catching up recently. I mean work and everything has been crazy but... whaddaya say, how about you head on over and we toss a few back and talk about old times? Or the future, y'know, whatever you want. I miss you, <<callPlayer "npc_admin">>!@@"
<<else>>
"@@.npc_admin;Hey, so... I know things have been a bit rocky between us but I'm over here at the Usual Place and... whaddaya say we bury the hatchet over some brews? Like old times.@@"
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty('technician_dinner') && setup.dayDiff($now, $currentTasks.technician_dinner.finishedTime) == 0>>
You explain that, actually... you've got a date tonight.<br>
<br>
"@@.npc_admin;A date? Well hot dog, <<callPlayer "npc_admin">>! Don't let me keep you from the lucky lady... or boy, I guess, whatever makes you happy, I'm just glad you're bouncing back after that whole break-up mess. How about we catch up next Friday?@@"<br>
<br>
You hear a commotion in the background "@@.npc_admin;Shit, some drunk's hassling <<=setup.getNpcName("npc_barkeeper","first")>>. I gotta go break it up but I hope I see you next week, and until then, knock 'em dead, Tiger!@@"<br>
<br>
<<He npc_admin>> hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
<<printThought "I guess <<hes npc_admin>> right, I have missed the big <<guy npc_admin>>. I don't have anything going on tonight, maybe I should join <<him npc_admin>>? Could be fun.">><br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_admin_bar_invite_2" "Head to the bar." 600 "<<set $scene.action='leave'>>">>]<br>
<<else>>
[<<moveTo "event_admin_bar_invite_2" "Say you'll be over once you get changed." 600 "<<set $scene.action='change'>>">>]<br>
<</if>>
[<<moveTo "event_admin_bar_invite_2" "Say you'll have to take a rain check." 300 "<<set $scene.action='later'>>">>]
<</if>>
</div>/*#
#desc: respond to admin friday call
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.locations.theusualplace == false>>
<<set $player.locations.theusualplace = true>>
<</if>>
<<include "calcAdminDateDay">>
<<switch $scene.action>>
<<case 'later'>>
<<include "addAdminDate">>
<<case 'leave'>>
<<case 'change'>>
<<set _tmpDate = setup.setNextDate($now, 0, 21, 30)>>
<<set $scene.dateAdminDay = "today">>
<<set $npc_admin.lastdate = _tmpDate>>
<<addTaskById 'admin_drink_1' _tmpDate>>
<</switch>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'later'>>
You tell <<=setup.getNpcName("npc_admin","first")>> that you're busy right now, but maybe some other time?<br>
<br>
"@@.npc_admin;I gotcha <<callPlayer "npc_admin">>, bit silly of me expecting a hot commodity like yourself to be able to drop things and get together last minute... let's say next Friday then, okay? See you then!@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<case 'leave'>>
You tell <<=setup.getNpcName("npc_admin","first")>> that you're on your way over to the Usual Place.<br>
<br>
"@@.npc_admin;Hot damn! I'll see you there!@@"<br>
<br>
[<<moveTo "event_admin_drink_1" "Hurry to the Usual Place." 600 "<<set $currentcall = false>>">>]
<<case 'change'>>
You tell <<=setup.getNpcName("npc_admin","first")>> that you'll try to head over soon, but that you need to get changed.<br>
<br>
"@@.npc_admin;Right-o, <<callPlayer "npc_admin">>, hope to see you then!@@"<br>
<br>
<<if setup.inPassageTag($scene.beforetasklocation.last(),"home")>>
[<<moveTo "room_bedroom" "Put your phone away." 0 "<<set $currentcall = false>><<set $roomchange=false>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: admin asks you back to his place for sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You're getting ready to head home only to pause as <<=setup.getNpcName("npc_admin","first")>> stares at you with a grin. "@@.npc_admin;So... you got any plans for the rest of the night? 'Cause I know of a bed that would be just PERFECT with you in it...@@"<br>
<br>
[<<moveTo "event_admin_sex_repeat_2" "Go home with <<him npc_admin>>." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_admin_sex_repeat_2" "You're feeling pretty tired..." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept offer from admin for sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<else>>
<<set $player.location to "The Usual Place">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_casual")>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin back and the two of you hurry to square up the tab and leave the bar. You catch a final glimpse of the barkeeper staring after you as you walk out the door.<br>
<br>
<<printThought "Is she... jealous?">><br>
<br>
Such a thought is fleeting as soon as you look back at <<if $npc_admin.flags.relationship == 'friendswbenefits'>><<=setup.getNpcName("npc_admin","first")>><<else>>your boyfriend<</if>> and the two of you hurry back to <<his npc_admin>> flat.<br>
<br>
Barely keeping your hands to yourself through the elevator ride you have no sooner entered <<his npc_admin>> flat when you race to the bedroom.<br>
<br>
<<He npc_admin>> grins, already unbuttoning <<his npc_admin>> shirt as <<he npc_admin>> eyes the bed.<br>
<br>
[<<moveTo "event_admin_sex_repeat_3" "Get naked, it's sex time!" 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_admin_sex_repeat_3" "Actually... you're feeling a bit tired." 600 "<<set $scene.accept=false>>">>]
<<else>>
You tell <<=setup.getNpcName("npc_admin","first")>> that, as much as you appreciate the offer, it's been a long week and...<br>
<br>
<<He npc_admin>> smiles gently. "@@.npc_admin;Say no more. That company... well they work us all hard, you more than most.@@"<br>
<br>
You thank <<him npc_admin>> for the consideration, giving <<him npc_admin>> a hug goodbye before the two of you go on your separate ways.<br>
<br>
[<<moveTo "room_usual_place_inside" "Continue." 180>>]
<</if>>
</div>/*#
#desc: accept offer from admin for sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<else>>
<<set $player.location to 'Street'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<<else>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_admin","npc_admin_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $npc_admin.flags.relationship == 'boyfriend' && $player.body_ref.penis && $npc_admin.flags.fingered>>
<<if State.hasPlayed("event_admin_sex_do_him_first_2")>>
"@@.npc_admin;So what do you want to do tonight? Me, you, oral? I'm down for whatever you're up for...@@"
<<else>>
"@@.npc_admin;So... what were you thinking tonight? Oral on you, on me? Me doing you... or, well... I was thinking about that fingering you did the other night — that was easily one of the most intense blowjobs I've ever had and, well... I guess it's only fair if you'd like to do me sometime...@@"<br>
<br>
You're a bit surprised by this last one, and <<he npc_admin>> shrugs. "@@.npc_admin;I mean, <<if $npc_admin.fem>>I'd like to have my first time with you, and<<else>>experimentation is good, right? And<</if>> I'm always down to do whatever I can to keep my special girl happy...@@"
<</if>>
<<else>>
"@@.npc_admin;So... what were you thinking tonight? Oral on you, on me? Me doing you? Whatever you want, I'm locked, cocked and ready to rock.@@"<<if setup.getItemFromType($scene.cage) != "">> <<He npc_admin>> eyes your chastity device. "@@.npc_admin;Well, not LOCKED, locked, the way you are heh.@@"<</if>>
<</if>>
<br><br>
<<printThought "So many enticing options...">><br>
<br>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage() || $scene.unlockable>>
<<if !State.hasPlayed("event_admin_sex_first_4_vaginal")>>
[<<moveTo "event_admin_sex_first_4_vaginal" "Fall back with <<him npc_admin>> on top of you and spread your legs..." 600 "<<set $scene.firstSex=true>>">>]<br>
<<else>>
[<<moveTo "event_admin_sex_repeat_4" "Spread your legs, you want to make love." 600 "<<set $scene.sex='vaginal'>>">>]<br>
[<<moveTo "event_admin_sex_repeat_4" "Spread your legs, you want to get railed." 600 "<<set $scene.sex='vaginal_hard'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;Your vagina is securely locked and out of reach.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_admin_sex_repeat_4" "Blow <<him npc_admin>>." 600 "<<set $scene.sex='blow'>>">>]<br>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage() || $scene.unlockable>>
[<<moveTo "event_admin_sex_repeat_4" "Accept <<his npc_admin>> offer of oral." 600 "<<set $scene.sex='oral'>>">>]<br>
<<if $npc_admin.flags.relationship == 'boyfriend' && $player.body_ref.penis && $player.virgin.first>>
<<if !State.hasPlayed("event_admin_sex_do_him_first_1")>>
[<<moveTo "event_admin_sex_do_him_first_1" "Do <<him npc_admin>>." 600>>]<br>
<<else>>
[<<moveTo "event_admin_sex_repeat_4" "Do <<him npc_admin>>." 600 "<<set $scene.sex='him'>>">>]<br>
<</if>>
<</if>>
<<elseif setup.checkItemTypeWorn("cage") && setup.isCage() && !$scene.unlockable>>
[@@.link_locked;You are locked in chastity and restricted in options.@@]<br>
<</if>>
<<if !State.hasPlayed("event_admin_sex_first_4_anal")>>
[<<moveTo "event_admin_sex_first_4_anal" "Raise your hips and invite <<him npc_admin>> into your back-door." 600 "<<set $scene.firstSex=false>>">>]
<<else>>
[<<moveTo "event_admin_sex_repeat_4" "You want <<him npc_admin>> in your butt." 600 "<<set $scene.sex='anal'>>">>]<br>
[<<moveTo "event_admin_sex_repeat_4" "You want <<him npc_admin>> to butt-fuck the hell out of you." 600 "<<set $scene.sex='anal_hard'>>">>]
<</if>>
<<else>>
The rush to <<his npc_admin>> flat has actually left you a bit winded, as if the entire week caught up to you at once and you confess that, actually, you're feeling like you should head home.<br>
<br>
<<His npc_admin>> mood changes in an instant, enthusiasm replaced with concern as <<he npc_admin>> asks if you're feeling okay, or if <<he npc_admin>> can get you anything?<br>
<br>
You brush it off that you're just a bit tired, but <<he npc_admin>> still insists on phoning you up a taxi to take you the short ride home, kissing you good-night and waving from the curb as the vehicle speeds away.<br>
<br>
[<<moveTo "room_foyer" "Home." 900>>]
<</if>>
</div>/*#
#desc: accept offer from admin for sex
#status: RELEASED 0.8.8.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.sex>>
<<case 'vaginal' 'oral' 'him' 'vaginal_hard'>>
<<if $scene.sex == 'vaginal_hard'>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<if !($scene.sex == 'him' && $player.body.penissize[0] >= 6)>>
<<set $scene.removeCage = $scene.cage != "">>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<playerOrgasm>>
<</if>>
<<case 'anal' 'anal_hard'>>
<<if $scene.sex == 'anal'>>
<<applyExperience 'anal' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' $npc_admin.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<playerOrgasm>>
<<case 'blow'>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 15 'very' $SEEN_FRIEND>>
<</switch>>
<<if !($scene.sex == "him" && $player.body.penissize[0] >= 6)>>
<<set $npc_admin.flags.sex[$scene.sex] = true>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.sex>>
<<case 'him'>>
You smile and state that you'd like another round at <<his npc_admin>> "@@.pc;<<if $npc_admin.fem>>Thicc buns<<else>>Buns<</if>> of steel.@@"<br>
<br>
<<if $player.body.penissize[0] >= 6>>
<<He npc_admin>> grins at the compliment but glances down at your sizable bulge and hesitates. "@@.npc_admin;Sorry but... I think that you're a bit too big for little old me...@@"<br>
<br>
You roll your eyes — <<he npc_admin>>'s at least twice your size, after all, but <<he npc_admin>> does have a point. You're packing a monster between your legs that few could handle — you don't want to break your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><</if>>friend, after all!<br>
<br>
[<<moveTo "event_admin_sex_repeat_3" "Something else, perhaps." 60>>]
<<else>>
<<He npc_admin>> grins at the compliment as <<he npc_admin>> takes a deep breath.
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
"@@.npc_admin;Sure, let's do this, <<callPlayer "npc_admin">>! Or, you do me, rather.@@"
<<case 4 5>>
"@@.npc_admin;Fair is fair, right? Alright, let's do this... or, you do me.@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<<if $scene.cage != "">>
<<=setup.getNpcName("npc_admin","first")>> first helps you out of your chastity device and gives your <<getWordMyPenis>> an encouraging stroke
<<else>>
<<=setup.getNpcName("npc_admin","first")>> grabs your <<getWordMyPenis>> for a moment almost like <<he npc_admin>>'s shaking hands
<</if>>
before handing you a bottle of lube and lying back on the bed for you.<br>
<br>
You smile down and slick <<him npc_admin>> up before getting into position,
<<switch $player.body.penissize[0]>>
<<case 0 1>>
your small member easily slotting into place before you start grinding.
<<case 2 3>>
your <<getWordMyPenis>> sliding into <<his npc_admin>> rear with ease as <<he npc_admin>> breathes slowly to relax.
<<case 4 5>>
it taking a good minute to slowly ease your sizable member into <<him npc_admin>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<His npc_admin>> own <<getWordPenis "npc_admin">> sticks up big and proud and you take it in hand for the reach-around, jerking and thrusting until <<if $npc_admin.flags.relationship == 'boyfriend'>>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>> cums explosively.<br>
<br>
Post-orgasmically <<he npc_admin>> goes a bit limp, <<he npc_admin>> seems to be really getting into the combination of prostate and penile stimulation and you eagerly slide up next to <<him npc_admin>> to cuddle until it's time for you to go.<br>
<br>
[<<moveTo "event_admin_sex_repeat_5" "Get dressed and head home." 900>>]
<</if>>
<<case 'vaginal'>>
You spread your legs and welcome <<if $npc_admin.flags.relationship == 'boyfriend'>>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>> between them.<br>
<br>
<<if $scene.cage != "">>
<<if $npc_admin.flags.keyholder>>
Crawling across the bed towards you <<he npc_admin>> slowly removes your chastity device, putting it to one side and giving you a moment to shudder at the brush of the air and your taste of freedom.
<<else>>
You unlock your chastity belt. The click of the lock makes <<him npc_admin>> grin and you have soon put it to one side as <<he npc_admin>> crawls forward.
<</if>>
<br><br>
<</if>>
Smiling down at you <<he npc_admin>> lines up <<his npc_admin>> <<getWordPenis "npc_admin">> at your love canal's entrance, treating you to just the tip before leaning forward to gather you in <<his npc_admin>> arms for a kiss as <<he npc_admin>> slides into you.<br>
<br>
You moan into <<his npc_admin>> mouth, hugging <<him npc_admin>> tight as <<his npc_admin>> hips begin to move and pleasure flows between you.<br>
<br>
Though <<he npc_admin>> remains in control and "on top" throughout <<he npc_admin>> never feels heavy or stifling, instead enveloping you in <<his npc_admin>> strong, protective grasp at the same time <<he npc_admin>> fills you with <<his npc_admin>>... other thing.<br>
<br>
You cum twice before you feel <<his npc_admin>> pace shift, knowing that <<his npc_admin>> climax is approaching even before <<he npc_admin>> whispers "@@.npc_admin;I'm almost there,@@" in between kisses.<br>
<br>
You moan in response, squeezing <<him npc_admin>> tight and rolling your hips, entirely focused on timing things just right...<br>
<br>
You gasp and <<he npc_admin>> grunts, a nigh-simultaneous orgasm that sees your bodies freeze as your genitals twitch and spasm in orgasmic excitement.<br>
<br>
The trembling energy slowly flowing out through your body <<he npc_admin>> gently slides off of you, shifting position to have you cuddled on top of <<him npc_admin>>, delighting at the powerful rise and fall of <<his npc_admin>> chest, <<his npc_admin>> satisfied smile... <<his npc_admin>> large, but limp <<getWordPenis "npc_admin">> glistening with your juices...<br>
<br>
Keeping the same gentle, passionate energy you go back to making out. Your bodies pressed together as passionately in aftermath as they had been mid-coitus, hands exploring sweaty flesh until it is time for you to dress and return to your home.<br>
<br>
[<<moveTo "event_admin_sex_repeat_5" "Get dressed and go home." 900>>]
<<case 'vaginal_hard'>>
<<if $scene.cage != "">>
<<if $npc_admin.flags.keyholder>>
You expose your chastity belt and hump the air desperately as you look up at <<if $npc_admin.flags.relationship == 'boyfriend'>>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>>. "@@.pc;Please, <<if $fetish.daddy>><<Daddy npc_admin>>, <</if>>fuck me, fuck me hard.@@"<br>
<br>
<<He npc_admin>> grins, palming the front of your belt and squeezing hard enough you swear the rigid metal flexed, taunting you for a moment before unlocking you to expose your wet, spread crotch.
<<else>>
The lock to your chastity belt clicks and you toss it aside, licking your lips and rubbing yourself as you ask <<him npc_admin>> to "@@.pc;Fuck me, <<if $fetish.daddy>><<Daddy npc_admin>>, <</if>>fuck me hard.@@"
<</if>>
<br><br>
<</if>>
You lick your lips as you stare at <<=ps(setup.getNpcName("npc_admin","first"))>> swinging <<getWordPenis "npc_admin">> as <<he npc_admin>> moves onto the bed. You rub yourself in anticipation until <<he npc_admin>> grabs your wrists, pinning them above your head as <<he npc_admin>> traces <<his npc_admin>> thick cock-head through your folds.<br>
<br>
You moan in want, then gasp as <<he npc_admin>> plunges into you with a single, powerful thrust.<br>
<br>
Two hard, wonderful thrusts later and <<his npc_admin>> arms reach under you, lifting you into the air, holding you with ease as you wrap your arms around <<his npc_admin>> shoulders and go along for the ride...<br>
<br>
<<=ps(setup.getNpcName("npc_admin","first"))>> every thrust shakes your body as you shudder and moan... and cum... cum harder than the pounding you asked for, cum hard enough that your vision goes blurry, cum so hard you forget everything that isn't a rock-hard cock raming in and out of you.<br>
<br>
You aren't sure if you passed out for a moment, or merely transcended to a perfect plane where everything that wasn't being railed by cock fell away but you find yourself lying limp on the bed, blinking up at <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
"@@.npc_admin;You alright?@@" <<He npc_admin>> asks, caressing your face with one hand.<br>
<br>
You kiss <<his npc_admin>> palm and smile back — your hips are sore, and you'll probably be walking home a bit bow-legged, but other than that, you feel fantastic!<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grins, flopping down next to you on the bed, <<his npc_admin>> weight causing you to bounce several centimetres into the air. "@@.npc_admin;Good, 'cause I'm bushed! I'm going to have to test my deadlift PR — the workout I just did there probably raised my lockout power by a couple kilos!@@"<br>
<br>
You laugh and cuddle up against <<him npc_admin>> for a while before it's time to get dressed and head home.<br>
<br>
[<<moveTo "event_admin_sex_repeat_5" "Get dressed to leave." 900>>]
<<case 'anal'>>
You pose seductively<<if $scene.removePlug>> as you slide the plug out of your rear<</if>> and invite <<him npc_admin>> to make love to your ass.<br>
<br>
"@@.npc_admin;Now that's an offer!@@" <<He npc_admin>> state with a smile, kneeling down to kiss your plump bum, <<his npc_admin>> fingers squeezing your ample bottom.<br>
<br>
"@@.pc;Mmmm,@@" you purr in response to the attention, softly gasping as <<he npc_admin>> squirts some lube down your crack and gently rubs it into your hole.<br>
<br>
"@@.npc_admin;You ready?@@" <<He npc_admin>> asks, shifting to running <<his npc_admin>> cock between your cheeks.<br>
<br>
The slick, hard member turns you on even more as you softly beg for <<him npc_admin>> to "@@.pc;Put it in...@@"<br>
<br>
<<He npc_admin>> obliges, gently resting one hand on the small of your back as <<he npc_admin>> guides <<his npc_admin>> thick <<getWordPenis "npc_admin">> into your rear, the lube easing its entry as your body adjusts to its girth. You moan.<br>
<br>
"@@.npc_admin;You like that <<if $npc_admin.flags.relationship == 'boyfriend'>>dear<<else>>slut<</if>>?@@" <<He npc_admin>> asks. You moan harder, <<his npc_admin>> cock moving inside of you like a tectonic plate of pleasure.<br>
<br>
<<He npc_admin>> maintains a slow, tender pace as <<he npc_admin>> leans over, kissing your neck and nibbling your ear. <<His npc_admin>> <<if $npc_admin.fem>>breasts are pressed against your back while her strong arms wrapped around you<<else>>firm, sweaty muscles pressed against your back<</if>> remind you of how much bigger and stronger <<he npc_admin>> is than you and you feel loved and feminine and oh-so turned on as <<he npc_admin>> continues to fuck.<br>
<br>
Your <<if $player.body_ref.penis>>prostate is<<else>>insides are<</if>> so happy you almost don't even want to cum, but <<=ps(setup.getNpcName("npc_admin","first"))>> expert cocksmanship is just too much and you moan your joy into a pillow, your quivering, fluttering orgasmic hole pushing <<him npc_admin>> over the edge as well and you feel <<him npc_admin>> spurt as <<he npc_admin>> squeezes you tight.<br>
<br>
<<if $npc_admin.flags.relationship == 'boyfriend'>>
"@@.npc_admin;I love you,@@" <<he npc_admin>> whispers, giving you a kiss as the two of you slowly come down.
<<else>>
"@@.npc_admin;You good?@@" <<He npc_admin>> asks softly and you nod.
<</if>>
Wordlessly you slide up the bed and you turn into <<him npc_admin>> to cuddle into <<his npc_admin>> <<if $npc_admin.fem>>breasts<<else>>chest<</if>><<if $npc_admin.flags.relationship == 'boyfriend'>>, and occasionally turn up for a bit of kissy-kissy<</if>>.<br>
<br>
Eventually you start to drift to sleep and <<he npc_admin>> points out you should probably head home before it gets too late.<br>
<br>
[<<moveTo "event_admin_sex_repeat_5" "Get dressed and go home." 900>>]
<<case 'anal_hard'>>
You wiggle your butt<<if $scene.removePlug>> and slide the plug out of your rear<</if>> as you tell <<=setup.getNpcName("npc_admin","first")>> you want <<him npc_admin>> to "@@.pc;Ass-fuck my brains out.@@"<br>
<br>
"@@.npc_admin;You sure about that little lady?@@" <<He npc_admin>> asks with a grin. You nod and <<he npc_admin>> steps closer, grabbing your hips with both hands as <<he npc_admin>> lines up with your hole.<br>
<br>
Just as you requested, <<he npc_admin>> slams into you, <<his npc_admin>> big cock <<if setup.checkItemTypeTag('plug', ['hollow'])>>stretching your hollow plug, and thus your rear<<else>>more than taking the place of your plug<</if>> as <<he npc_admin>> goes balls deep and then pulls back for another stroke.<br>
<br>
You moan like a slut in heat, <<his npc_admin>> weight and power driving you into the mattress, your arms and legs giving out only for <<him npc_admin>> to hold you up and fuck you in mid-air, <<his npc_admin>> cock jackhammering into you as your entire body shakes and your eyes roll back in submissive pleasure — you are <<his npc_admin>> living fuck-doll, to be pounded hard and fast and deep... and it feels amazing. You savour the feeling each time <<his npc_admin>> heavy balls slap into you, the power of <<his npc_admin>> every thrust pure ecstasy, the way your organs shift to make space before <<him npc_admin>>making you feel well and truly fucked.<br>
<br>
You can tell <<he npc_admin>>'s trying to hold back, to really give it to you like you asked, but your ass is just too tight and <<he npc_admin>> eventually grunts, slamming to a new depth <<if $fetish.cum>>to flood your bowels with cum,<<else>>as he climaxes,<</if>> holding you in place for several seconds <<if $fetish.cum>>until <<he npc_admin>> has finished spurting<<else>>as <<he npc_admin>>finishes<</if>> and then <<he npc_admin>> lowers you to the bed.<br>
<br>
<<if $scene.removePlug>>
You gasp as your plug is slammed back into place<<if $fetish.cum>>, keeping any of <<his npc_admin>> <<getWordCum>> from leaking out <</if>>before <<he npc_admin>> flips you over and grins.
<<else>>
You moan and roll over to see <<him npc_admin>> grinning down.
<</if>>
"@@.npc_admin;That what you wanted?@@"<br>
<br>
You smile back, correcting that it was what you "@@.pc;Needed.@@"<br>
<br>
<<He npc_admin>> grins, the two of you cuddling for a bit before <<he npc_admin>> points out you should probably head home before it gets too late.<br>
<br>
[<<moveTo "event_admin_sex_repeat_5" "Get dressed and go home." 900>>]
<<case 'oral'>>
<<=setup.getNpcName("npc_admin","first")>> grins as you lie back and <<he npc_admin>> moves between your legs.<br>
<br>
<<if $scene.cage != "">>
<<if $npc_admin.flags.keyholder>>
With a wide, teasing grin <<he npc_admin>> slowly removes your chastity device, putting it to one side and giving you a moment to shudder at the brush of the air and your taste of freedom.
<<else>>
You hand <<him npc_admin>> the key to your chastity device and <<he npc_admin>> grins, gently removing it and putting it to one side.
<</if>>
<br><br>
<</if>>
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
<<He npc_admin>> moves between your legs,
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<his npc_admin>> fingers gently pinching and stroking your
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
pathetically tiny member.
<<else>>
small member.
<</if>>
<<case 'spe'>>
cute little thing.
<<default>>
small member.
<</switch>>
<<case 2 3>>
wrapping three fingers around your member and gently stroking as <<he npc_admin>> goes below.
<<case 4 5>>
moving your member out of the way and jerking it with one hand.
<<case 6>>
momentarily taken aback by your massive<<if $player.body_ref.knot && $player.body_ref.horsecock>>, inhumanly shaped cock<<elseif $player.body_ref.horsecock>>, equine shape<<elseif $player.body_ref.knot>>, thick knot<<else>>cock,<</if>> <<his npc_admin>> hand wrapping around it and beginning to stroke.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<His npc_admin>> lips part and <<his npc_admin>> tongue reaches deep into your love passage.<br>
<br>
You're soon moaning and gasping from sensation overload, <<his npc_admin>> free hand wrapping around your waist to pin you in place as <<he npc_admin>> licks and pumps and sucks you to
<<if $player.body_ref.cumProduction != 0 && $fetish.cum>>
an explosive climax that rains down over <<his npc_admin>> <<if $npc_admin.fem>>cute face<<else>>bald head<</if>> like a shower of snow.<br>
<br>
<<He npc_admin>> pauses as you freeze, the only movement is your still-spurting <<getWordMyPenis>> <<if $player.body_ref.cumProduction == 2>>its massive load<<else>>the rest of your load<</if>>.<br>
<br>
You hold your breath for a heartbeat and then <<=setup.getNpcName("npc_admin","first")>> laughs and reaches for a towel. "@@.npc_admin;Well! That was a bit... more than I was expecting, good thing it didn't get in my hair!@@"<br>
<br>
It's your turn to laugh as <<he npc_admin>> wipes <<his npc_admin>> <<if $npc_admin.fem>>face<<else>>scalp<</if>> clean with a smile and then crawls up into bed next to you, holding you in <<his npc_admin>> strong arms as <<his npc_admin>> little spoon.
<<else>>
a gasping, bone-shaking climax.<br>
<br>
Leaning back, <<=setup.getNpcName("npc_admin","first")>> grins. "@@.npc_admin;Well that was potent... you good?@@"<br>
<br>
Your body is still shuddering and you nod as <<he npc_admin>> crawls up next to you, holding you in <<his npc_admin>> strong arms until the post-orgasmic tremors quiet and you catch your breath.
<</if>>
<<else>>
You're a little nervous as <<he npc_admin>> moves between your legs, but <<he npc_admin>> takes your <<getWordMyPenis>> in stride.
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Smiling as <<he npc_admin>> gently wraps <<his npc_admin>> lips around your
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
pathetically tiny member.
<<else>>
small member.
<</if>>
<<case 'spe'>>
cute little thing.
<<default>>
small member.
<</switch>>
Sucking gently as <<his npc_admin>> tongue goes through what you guess is a well-practiced clit-licking routine.
<<case 2 3>>
Wrapping one hand around your member <<he npc_admin>> extends <<his npc_admin>> tongue to rapidly twirl and trace over your sensitive tip like it was a clit while <<his npc_admin>> hand slightly strokes.
<<case 4 5>>
<<He npc_admin>> takes a moment, and you can almost see <<him npc_admin>> making the mental calculation that, yes, <<he npc_admin>> is just a little bit larger, before <<he npc_admin>> goes to work with <<his npc_admin>> hands and lips.
<<case 6>>
Only momentarily taken aback by its massive size<<if $player.body_ref.knot && $player.body_ref.horsecock>>, and inhuman shape<<elseif $player.body_ref.horsecock>>, and equine shape<<elseif $player.body_ref.knot>>, and thick knot<</if>>, before <<he npc_admin>> sets to work with <<his npc_admin>> hands and lips.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<<He npc_admin>> isn't the best at blow-jobs, but <<he npc_admin>> makes a valiant effort, obviously trying to map what <<he npc_admin>> knows about <<his npc_admin>> own body to you while also listening for feedback in the quest to, eventually get you off, surprising you again by swallowing your load like a real <<if $npc_admin.fem>>professional<<else>>gentleman<</if>>.<br>
<br>
"@@.npc_admin;Huh... milder flavour than I was expecting... not sure what I was expecting but, well... you're my special girl so I guess this is something I need to get good at.@@"<br>
<br>
You grin and pull <<him npc_admin>> up for a kiss, congratulating <<him npc_admin>> on an excellent performance indeed.<br>
<br>
<<He npc_admin>> grins, crawling up next to you, <<his npc_admin>> strong arms wrapping around you from behind to make you <<his npc_admin>> cute little spoon.
<</if>>
<<else>>
<<He npc_admin>> buries <<his npc_admin>> face between your legs, sucking, but not touching your clit as <<his npc_admin>> tongue traces arcane patterns. You twist and moan, but <<he npc_admin>> holds your hips tight, staying with you through each increasingly intense movement as <<he npc_admin>> almost tormentingly slowly zeros in on your desperately sensitive clit.<br>
<br>
Pure clit stimulation is enough to rocket you to orgasm, but that is just the start as <<he npc_admin>> continues to suck and lick, a thick finger joining the party to probe your g-spot and make you almost rocket off the bed, cumming so hard your body goes rigid and then totally limp, your expression full ahegao by the time <<he npc_admin>> finally pulls back and looks up with a triumphant grin.
<</if>>
<br><br>
You start to drift to sleep in the cradling warmth of <<=ps(setup.getNpcName("npc_admin","first"))>> arms only to jolt back awake.<br>
<br>
"@@.npc_admin;You okay?@@" <<he npc_admin>> asks and you nod, before pointing out that you should probably get dressed and head back to your flat.<br>
<br>
[<<moveTo "event_admin_sex_repeat_5" "Get dressed and go home." 900>>]
<<case 'blow'>>
With a lusty grin on your face you head straight between <<his npc_admin>> legs, <<=setup.getNpcName("npc_admin","first")>> lying back in the bed as you make sweet, passionate love to <<his npc_admin>> cock with your lips, hand, face and throat.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
<<=setup.getNpcName("npc_admin","first")>> gasps as you deep-throat <<him npc_admin>> in one big gulp, milking <<him npc_admin>> with your throat until you have to take a breath and then show off with an aggressive, hands-free self face-fuck.
<<else>>
You take a deep breath and deep-throat <<=setup.getNpcName("npc_admin","first")>>, your tongue peeking out to lick <<his npc_admin>> balls as you show off how "perfectly" <<he npc_admin>> fits inside of you before resuming deploying your full variety of skills in a passionate blow-job.
<</if>>
<<else>>
<<He npc_admin>> may be too big for you to deep-throat, but that doesn't stop you from pulling out all of the stops to suck, stroke, kiss and worship <<his npc_admin>> magnificent <<if $npc_admin.fem>>girl-cock<<else>>manhood<</if>>.
<</if>>
<br><br>
<<His npc_admin>> eyes are half-closed in concentration by the time <<he npc_admin>> half-whispers "@@.npc_admin;About... to... cum...@@"<br>
<br>
[<<moveTo "event_admin_sex_repeat_4_blow" "Finish <<him npc_admin>> off with some simultaneous prostate stimulation." 180 "<<set $scene.finger=true>>">>]<br>
[<<moveTo "event_admin_sex_repeat_4_blow" "Just suck <<him npc_admin>> dry." 180 "<<set $scene.finger=false>>">>]
<<default>>
ERROR: scene.sex <<=$scene.sex>>
<</switch>>
</div>/*#
#desc: finish blowing admin, finger optional
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.finger>>
<<set $npc_admin.flags.fingered=true>>
<<else>>
<</if>>
<<if $fetish.cum>>
<<applyExperience 'cum' 13 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.finger>>
You feel <<=ps(setup.getNpcName("npc_admin","first"))>> orgasm about to arrive, maintaining your enthusiastic suction as you scoop up some saliva on your finger as it slides down past <<his npc_admin>> balls, your slender digit sliding easily in as you curl right for <<his npc_admin>> swelled prostate. <<He npc_admin>> cums, explosively.
<<else>>
You maintain your focus, sucking and jerking and massaging <<=ps(setup.getNpcName("npc_admin","first"))>> balls to push <<him npc_admin>> to climax.
<</if>>
<br><br>
<<if $fetish.cum>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
With a wide smile you finish <<him npc_admin>> off all over your face, showing off your facial with a gleeful smile before licking your fingers clean and slurping up every heavenly dripping drop.
<<else>>
With a grin you shoot <<his npc_admin>> load across your tongue, spreading your mouth wide to show off the thick spooge as you roll it back and forth across your tongue before swallowing the delicious dollop with a satisfied grin.
<</if>>
<<else>>
Taking advantage of <<his npc_admin>> "warning" you dive deep, avoiding most of the taste of <<his npc_admin>> <<getWordCum>> by shooting it straight down your throat as you rapidly swallow.
<</if>>
<<else>>
Taking advantage of the warning you pull back and finish <<him npc_admin>> off by hand, catching <<his npc_admin>> spurting, voluminous load in a conveniently-handed towel.
<</if>>
<br><br>
<<if $scene.finger>>
<<=setup.getNpcName("npc_admin","first")>> goes almost limp, panting as you slide your finger out of <<his npc_admin>> rear and <<he npc_admin>> tries to recover. "@@.npc_admin;That was... holy shit. I mean, I had a girlfriend or two try that trick before but... it was never like that. I guess you just knew exactly where to hit because hot damn, that orgasm was like a lightning bolt from heaven!@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> welcomes you to shuffle up the bed where you spend some time cuddling before rising to go.
<<else>>
<<=setup.getNpcName("npc_admin","first")>> sighs in contentment, clearly spent as you shuffle up next to <<him npc_admin>> for a bit of post-oral cuddling before you rise to go.
<</if>>
<br><br>
[<<moveTo "event_admin_sex_repeat_5" "Get dressed and go." 900>>]
</div>/*#
#desc: go home after admin sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<switch $scene.sex>>
<<case 'vaginal' 'vaginal_hard' 'oral' 'him'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<case 'anal' 'anal_hard'>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</switch>>
<<set _themeId = setup.findThemeId('npc_admin', 'recent', 'theme_admin_collar')>>
<<set $scene.offerCollar = _themeId != -1 && !$npc_admin.themes.recent[_themeId].repeatable && $player.sec_style.submission.collar == "" && !$scene.talkedCollar>>
<</if>>
<<if $scene.offerCollar>>
<<set $player.location to 'Street'>>
<<else>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.offerCollar>>
<<createAdvBGR "./images/locations/street.png">>
<<else>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.offerCollar>>
You've just finished squaring the tab and turn around to see <<=setup.getNpcName("npc_admin","first")>> standing before you... holding what looks like a large steel ring.<br>
<br>
Your breath catches in your throat as <<he npc_admin>> opens the rear and you realise what <<he npc_admin>>'s holding...<br>
<br>
<<printThought "That's a collar...">><br>
<br>
"@@.npc_admin;So... you asked me for a collar and, well... I did some research and this company promises total security, while also being comfortable to wear while being physical active and otherwise 24/7 so... do you still want it?@@"<br>
<br>
[<<moveTo 'event_admin_collar_1' 'Of course... <<Master npc_admin>>.' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_admin_collar_1' "You aren't quite ready to be collared." 60 "<<set $scene.accept=false>>">>]
<<else>>
You give a flirty little dance as you collect your clothes and get dressed and such, leaving <<=setup.getNpcName("npc_admin","first")>> to lay on the bed with a stupid grin on <<his npc_admin>> face as you put on your little show and kiss <<him npc_admin>> good-bye. Insisting that you shouldn't walk home alone <<he npc_admin>> calls you a cab that whisks you back to your flat fast and efficient.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
<</if>>
</div>/*#
#desc: admin asks you back to his place for first sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
As you start to pack up <<if $npc_admin.flags.relationship == 'boyfriend'>>and kiss your <<boy npc_admin>>friend goodbye <</if>><<=setup.getNpcName("npc_admin","first")>> smiles down at you.<br>
<br>
"@@.npc_admin;Hey, so... how do you feel like continuing this party back at my place?@@"<br>
<br>
You pause, looking up at your big, strong <<man npc_admin>> and feeling butterflies in your stomach you nervously ask if <<he npc_admin>> means...<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grins wider, "@@.npc_admin;I do indeed... so what do you say Miss <<=$player.last_name>>... can I have the honour of showing you my bed?@@"<br>
<br>
[<<moveTo "event_admin_sex_first_2" "Yes!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_admin_sex_first_2" "You're feeling a bit tired..." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept offer from admin for first sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_casual")>>
<<else>>
<<set $player.location to "The Usual Place">>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You don't quite trust your voice so you just nod, your eyes shining with excitement to reflect <<his npc_admin>> glowing smile.<br>
<br>
"@@.npc_admin;Great! Well let's get a move on then!@@"<br>
<br>
You laugh as <<he npc_admin>> settles up the bill and the two of you leave the bar and travel the block or so up the street to <<his npc_admin>> building.<br>
<br>
Riding the elevator up your heart beats even faster and you shuffle closer to <<him npc_admin>>. You feel <<his npc_admin>> strong arm wrapped around your shoulder, pulling you even closer as you lean against <<his npc_admin>> rock-solid obliques, unable to even quite reach around <<him npc_admin>>.<br>
<br>
By the time the elevator door opens, the two of you are already making out, and <<he npc_admin>> casually carries you up the hall, holding you with one arm as <<he npc_admin>> opens the door and you enter <<his npc_admin>> apartment.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> covers the living room in a couple of long strides, gently placing you down on <<his npc_admin>> bed before stepping to the side of the doorway and starting to unbutton <<his npc_admin>> shirt to reveal <<his npc_admin>> <<if $npc_admin.fem>>bra<<else>>sculpted chest<</if>>.<br>
<br>
<<printThought "Goddess is <<he npc_admin>> hot...">><br>
<br>
[<<moveTo "event_admin_sex_first_3" "Get naked, it's sex time!" 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_admin_sex_first_3" "Actually... you aren't ready for this." 600 "<<set $scene.accept=false>>">>]
<<else>>
You tell <<=setup.getNpcName("npc_admin","first")>> that, as much as you appreciate the offer, it's been a long week and...<br>
<br>
<<He npc_admin>> smiles gently. "@@.npc_admin;Say no more. That company... well they work us all hard, you more than most.@@"<br>
<br>
You thank <<him npc_admin>> for the consideration, giving <<him npc_admin>> a hug goodbye before the two of you go on your separate ways.<br>
<br>
[<<moveTo "room_usual_place_inside" "Continue." 180>>]
<</if>>
</div>/*#
#desc: admin first sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<<else>>
<<set $player.location to 'Street'>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_admin","npc_admin_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You and <<=setup.getNpcName('npc_admin', 'first')>> race to see who can shed their clothes faster — with you narrowly beating <<him npc_admin>> out... perhaps due to all that practice you've had with your daily inspections.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> looks even more magnificent naked and with a slight sheen of sweat than <<he npc_admin>> does normally, from <<his npc_admin>> washboard abs to perfect <<if $npc_admin.fem>>boobs<<else>>pecs<</if>>... and, of course, the big, beautiful cock pointing at you like an iron rod.<br>
<br>
<<He npc_admin>> joins you on the bed, your lips meeting, <<his npc_admin>> <<if !$npc_admin.fem>>large, <</if>>strong hands pulling you close, making you feel small and delicate... and tenderly protected; <<his npc_admin>> strength wielded with perfect control, overpowering you sure, in the technical sense, but without a feeling of force, your bodies meeting passionately amidst a sense of control that says this is happening because you both want it.<br>
<br>
<<if $player.body_ref.vagina>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && !_unlockable>>
[@@.link_locked;Your vagina is securely locked and out of reach.@@]<br>
<<else>>
[<<moveTo "event_admin_sex_first_4_vaginal" "Fall back with <<him npc_admin>> on top of you and spread your legs..." 600 "<<set $scene.firstSex=true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_admin_sex_first_4_anal" "Raise your hips and invite <<him npc_admin>> into your back-door." 600 "<<set $scene.firstSex=true>>">>]
<<else>>
You suddenly get cold feet, blushing nervously as you state that you "@@.pc;Actually aren't ready for this...@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> freezes in place before hurriedly pulling <<his npc_admin>> shirt back on, <<his npc_admin>> normal confidence somewhat absent as <<he npc_admin>> stumbles through a response. "@@.npc_admin;Oh, shit, <<callPlayer "npc_admin">> I'm so sorry. I sometimes forget you, and our relationship have been going through some major changes. The last thing I want to do is pressure you into something you aren't ready for, or don't want. If you aren't ready for this, you aren't ready for it — come on, let me call you a cab home.@@"<br>
<br>
You blush and thank <<him npc_admin>> for the kindness, suppressing tears at just what a genuinely great <<if $npc_admin.fem>>person<<else>>guy<</if>> <<he npc_admin>> is.<br>
<br>
<<printThought "How did I luck out to find such a great friend?">><br>
<br>
You apologise again for letting <<him npc_admin>> down as <<he npc_admin>> escorts you downstairs and waits for the cab but <<he npc_admin>> shakes <<his npc_admin>> head. "@@.npc_admin;You don't have anything to be sorry for. You were a bit caught up in the moment in the bar, you got to my place and changed your mind... you don't need a reason — if we're going to do it I want it to be because you 110% want to do it, got it?@@"<br>
<br>
You nod, giving <<him npc_admin>> a hug goodnight before boarding the cab and zooming towards home.<br>
<br>
[<<moveTo "room_foyer" "Home." 900>>]
<</if>>
</div>/*#
#desc: admin first anal
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.firstSex>>
<<set $scene.analvirgin = !($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_admin">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = 'voluntary'>>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_admin.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<<elseif !$player.sec_style.sex.sex_man && !$npc_admin.fem>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<</if>>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<<include "adminTechnicianThreesomeChecker">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
You turn over onto your hands and knees<<if $scene.removePlug>>, reaching back to remove your plug,<</if>> and wiggle your butt in invitation.<br>
<br>
"@@.npc_admin;You ready?@@" <<He npc_admin>> asks, gently placing one hand on your butt that sends sparks through your body, "@@.npc_admin;I'm not exactly small, and you've got such a pert bum...@@"<br>
<br>
You groan with need, simultaneously frustrated with <<his npc_admin>> caution... while also enamoured by <<his npc_admin>> thoughtful care.<br>
<br>
<<His npc_admin>> hand moves towards your hole and you feel a thick, lube-coated finger gently slide into you. You moan, as good as <<his npc_admin>> probing finger feels, you want <<his npc_admin>> cock, and you want it now.<br>
<br>
"@@.pc;Fuck me...@@" You huskily whisper, voice heavy with desire.<br>
<br>
"@@.npc_admin;As the lady commands,@@" <<he npc_admin>> replies softly, <<his npc_admin>> thick head pressing against your hole... and then sliding into
<<if $scene.analvirgin>>
you. It's your first time being fucked in the ass... and it is glorious.
<<else>>
you, <<his npc_admin>> <<getWordPenis "npc_admin">> filling you perfectly.
<</if>>
The heat between the two of you — physical and emotional both rise, and your back arches up off the bed. <<His npc_admin>> cock is fully inside of you now but you want more, to feel <<his npc_admin>> <<if $npc_admin.fem>>breasts<<else>>chest<</if>> against your back, <<his npc_admin>> strong arms holding you as <<he npc_admin>> gently thrusts into you. <<He npc_admin>> easily supports your weight as <<he npc_admin>> gently thrusts, <<his npc_admin>> lips tracing your neck, nibbling your ear.<br>
<br>
<<if $npc_admin.flags.relationship == 'boyfriend'>>
"@@.npc_admin;I love you...@@" <<He npc_admin>> whispers in your ear and you moan, replying "@@.pc;I love you too@@" as you reach back to caress <<his npc_admin>> head.
<<else>>
"@@.npc_admin;You feel so good, <<callPlayer "npc_admin">>...@@" <<He npc_admin>> whispers and you moan in reply.
<</if>>
<br><br>
<<He npc_admin>> speeds up just a hair and your heart leaps,
<<if $scene.firstSex>>
you'd always suspected <<he npc_admin>> was pretty good in the sack but this... why didn't you fuck <<him npc_admin>> sooner? This is amazing...
<<else>>
<<his npc_admin>> physical prowess proving to extend far beyond the weight-room.
<</if>>
<br><br>
You gasp and moan, <<=ps(setup.getNpcName("npc_admin","first"))>> rod of love touching you in every place that you could desire... and then you feel <<him npc_admin>> cum, <<his npc_admin>> grip tightening as <<his npc_admin>> cock twitches and the two of you climax in near unison.<br>
<br>
You freeze in ecstasy, not even making a sound the climax is so overwhelming, the feel of <<=setup.getNpcName("npc_admin","first")>> squeezing you from behind, <<his npc_admin>> cock twitching inside of you as <<he npc_admin>> gasps with <<his npc_admin>> own orgasm only making you melt further into <<his npc_admin>> grasp. You hold your breath, not wanting this perfect moment to end... even as you know it must.<br>
<br>
<<if $scene.firstSex>>
[<<moveTo "event_admin_sex_first_5" "So good..." 180>>]
<<else>>
[<<moveTo "event_admin_sex_repeat_5" "So good..." 180>>]
<</if>>
</div>/*#
#desc: admin first vaginal
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.firstSex>>
<<set $scene.vaginalvirgin = !$player.virgin.vaginal>>
<<if !$player.virgin.vaginal>>
<<set $player.virgin.vaginal = "npc_admin">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_6'
0
'event_psychiatrist_session_vaginal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_vag'
0
'theme_church_confession_vag'
true
>>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_admin">>
<</if>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$npc_admin.fem>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_admin.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<</if>>
<<playerOrgasm>>
<<include "adminTechnicianThreesomeChecker">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
You feel small beneath <<=ps(setup.getNpcName("npc_admin","first"))>> muscular body, but safe, like <<he npc_admin>> is there to protect you, to shield you from the world. The two of you passionately kiss... and you reach down to guide <<his npc_admin>> big, hard <<getWordPenis "npc_admin">> into your wet and willing hole.<br>
<br>
"@@.npc_admin;You ready?@@" <<He npc_admin>> whispers in final confirmation as <<he npc_admin>> kisses your neck.<br>
<br>
You nod and moan "@@.pc;Yessss@@" as <<he npc_admin>> presses forward, <<his npc_admin>> thick cock-head spreading you slowly, slowly... and then sliding into you as you moan in ecstasy, your arms reaching as far around <<if $npc_admin.fem>><<him npc_admin>> as you can<<else>><<his npc_admin>> wide chest as you can<</if>> as you pull <<him npc_admin>> close.<br>
<br>
<<if $scene.vaginalvirgin>>
You try to freeze this moment in your memory, the first time you've felt a cock inside of you in this way. That it would be with a <<man npc_admin>> in this way... you do not think you could have chosen a more perfect partner. Despite <<his npc_admin>> size <<he npc_admin>> moves gently, carefully. There is no pain, only overwhelmed pleasure as your body parts in invitation...
<<else>>
Your heart thunders as you try to focus on the multitudinous pleasures — <<his npc_admin>> <<if $npc_admin.fem>>firm breasts<<else>>chest<</if>> pressing against you, <<his npc_admin>> lips kissing your neck, the feel of <<his npc_admin>> breath, <<his npc_admin>> hands tenderly stroking you, but, most of all, <<his npc_admin>> perfect <<getWordPenis "npc_admin">> inside of you...
<</if>>
<br><br>
You've lost track of just how deep <<he npc_admin>> is, momentarily wondering if you can fit <<his npc_admin>> magnificence... and then you feel <<his npc_admin>> hips against yours, your legs reflexively reaching up, trying to pull <<him npc_admin>> just a little bit further — you want everything <<he npc_admin>> can give you, and to return the same.<br>
<br>
"@@.pc;Is, is it good?@@" You ask, your voice soft and airy.<br>
<br>
"@@.npc_admin;It's perfect,@@" <<he npc_admin>> replies, <<his npc_admin>> <<if $npc_admin.fem>>husky<<else>>baritone<</if>> whisper making you clench and prompt <<him npc_admin>> to reply somewhat breathlessly, "@@.npc_admin;Better than perfect.@@"<br>
<br>
<<He npc_admin>> starts to thrust... no, not just thrust; even as <<his npc_admin>> wonderful <<getWordPenis "npc_admin">> pumps pleasure into you <<his npc_admin>> hand reaches down between the two of you, <<if $player.body_ref.penis>>gently jerking you off<<else>>fingering your clit<</if>> and pushing your ecstasy to an even higher plane.<br>
<br>
You cum, of course, but it is not a single discreet orgasm, but a rolling, extended wave of pleasure that ebbs and flows with each thrust. Delirious with pleasure you gasp and cry out in joy as the intensity of it all has you teetering on the edge of fainting, but you hold on. To <<him npc_admin>>, to consciousness, to this moment, burning it all into your memory as you rock your hips in kind, wanting to return the fantastic gift <<he npc_admin>> has given you, wanting to make <<him npc_admin>> cum...<br>
<br>
You wonder if <<he npc_admin>> is holding back, showing off stamina, as well as strength as <<he npc_admin>> makes love to you, rubbing and thrusting in overwhelming perfection and then, finally, you feel it.<br>
<br>
<<His npc_admin>> body goes rigid and you pull <<him npc_admin>> in, squeezing as tight as you can as <<he npc_admin>> cums, your own rolling orgasm coming to a crescendo alongside as your eyes roll back and your entire world becomes pleasure...<br>
<br>
<<if $scene.firstSex>>
[<<moveTo "event_admin_sex_first_5" "So good..." 180>>]
<<else>>
[<<moveTo "event_admin_sex_repeat_5" "So good..." 180>>]
<</if>>
</div>/*#
#desc: admin first post-sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_admin' 5>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
Somehow you end up lying in the bed, curled up next to <<if $npc_admin.flags.relationship == 'boyfriend'>>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>>, your hand gently wrapped around <<his npc_admin>> softened, but still large <<getWordPenis "npc_admin">>.<br>
<br>
"@@.npc_admin;Wow, that was... wow.@@"<br>
<br>
"@@.pc;Mmmmm@@" you reply, still floating on a cloud... and enjoying laying your head against <<his npc_admin>> chest, feeling it rise and fall with each powerful breath.<br>
<br>
<<He npc_admin>> glances down to where you are still holding <<his npc_admin>> cock. "@@.npc_admin;You like that?@@"<br>
<br>
You follow <<his npc_admin>> gaze and nod, of course you do, just the memory of how it felt inside of you... you smile wider and shudder in delight.<br>
<br>
"@@.npc_admin;So... I never really mentioned this and, well... I guess with all the crazy stuff you get up to at work it's a bit pedestrian but, well, what the hell. I kind of have a bit of a thing for exhibitionism? I guess it's part of why I work out so much, I like it when people look at me, y'know... like that. And on the other side... like, if you were interested in me sending you dick pics, or you ever wanted to fool around in public... well...@@"<br>
<br>
<<His npc_admin>> voice trails off as if <<hes npc_admin>> suddenly embarrassed; something of an amusing paradox given <<his npc_admin>> traditional confidence... and the contrast to all the things you've gotten into.<br>
<br>
[<<moveTo "event_admin_sex_first_6" "Say you'd love it if <<he npc_admin>> blew up your phone with pictures of <<his npc_admin>> perfect schlong." 1800 "<<set $scene.pic=true>>">>]<br>
[<<moveTo "event_admin_sex_first_6" "Say you're not really into unsolicited dick pics." 1800 "<<set $scene.pic=false>>">>]
</div>/*#
#desc: admin first sex dick pic
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pic>>
<<set $npc_admin.flags.dick_pic = true>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<else>>
<<decrementEmotion 'affection' 'npc_admin' 1>>
<</if>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_transition_dickpic'
0
'theme_admin_dickpic_1'
true
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.pic>>
You grin, stroking <<his npc_admin>> cock as you reply that you would LOVE to get sent a picture of it looking all big and thick and delicious.<br>
<br>
<<He npc_admin>> smiles even wider and pulls you in for a kiss. "@@.npc_admin;You're the best — and I'll do what I can to fulfill your desire.@@"
<<else>>
You reply that you aren't really into that sort of thing and <<he npc_admin>> nods.<br>
<br>
"@@.npc_admin;That's alright,@@" <<he npc_admin>> states, though you can tell <<he npc_admin>>'s a bit disappointed. "@@.npc_admin;It's only fun if I know the other party is excited to see it anyway, like a fun game, y'know?@@"
<</if>>
<br><br>
You snuggle up next to <<him npc_admin>> as the two of you recover from the hot and heavy sexing.<br>
<br>
Your eyelids are starting to get heavy when <<he npc_admin>> gently jostles you awake.<br>
<br>
"@@.npc_admin;Heh, I almost fell asleep too! Staying over is maybe a bit much for a first time, plus, like... I don't have a spare toothbrush or anything.@@" You nod as <<he npc_admin>> helps you back to your feet and starts handing you clothes.<br>
<br>
Getting dressed is slightly slowed by the fact that the two of you keep staring at each other but, eventually, you're both clothed and <<he npc_admin>> escorts you down to the ground floor, insisting on paying for your cab fare home.<br>
<br>
"@@.npc_admin;Gotta make sure my <<if $npc_admin.flags.relationship == 'boyfriend'>>girlfriend<<else>>best friend<</if>> gets home safely, right?@@" <<He npc_admin>> states as <<he npc_admin>> helps you into the cab and waves you good-night.<br>
<br>
[<<moveTo "room_foyer" "Home." 1800 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: admin first time doing him
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cage != "">>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<if $player.body.penissize[0] < 6>>
<<playerOrgasm>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
Still a bit surprised by <<his npc_admin>> offer you say that yeah... you would like to do <<him npc_admin>>...<br>
<br>
<<if $scene.cage != "">>
It takes a minute or so to get you out of chastity, by which point you're sticking out quite hard and proud with excitement.<br>
<br>
<</if>>
"@@.npc_admin;So, uh... what position would be best for this to, um, work?@@" <<He npc_admin>> asks as <<he npc_admin>> eyes your
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small <<getWordMyPenis>>.
<<case 2 3>>
average <<getWordMyPenis>>.
<<case 4 5>>
almost as large as <<his npc_admin>> <<getWordMyPenis>>.
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<<if $player.body.penissize[0] == 6>>
<<He npc_admin>> pauses as <<he npc_admin>> stares at your oversized <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon<<elseif $player.body_ref.horsecock>>horse<<elseif $player.body_ref.knot>>dog<</if>> dick.<br>
<br>
"@@.npc_admin;Okay... sorry, but seeing it now, like that... I'm going to need to call an audible. I'm up for <<if $npc_admin.fem>>trying a bit of anal<<else>>a bit of experimenting<</if>>, you understand, but... I think that would split me in half, like trying to bench three plates your first day at the gym. Maybe if you were a little smaller... or I was a lot more experienced, but as a first time that's, um... a bit much.@@"<br>
<br>
You nod in understanding, the two of you, instead, spending some time cuddling until you soften and get ready to go.<br>
<br>
[<<moveTo "event_admin_sex_repeat_5" "Get dressed and go home." 900>>]
<<else>>
You smile gently and guide <<him npc_admin>> onto the bed, positioning <<him npc_admin>> on <<his npc_admin>> back so you can look at each other as you start off by jerking <<him npc_admin>> off and lubing up <<his npc_admin>> hole.<br>
<br>
"@@.npc_admin;I, uh... did some prep. Talked to those Swole <<=$npc_swolebro.Bro + "s">> at the gym. They're always getting into it with each other and raving about the benefits of squat plugs so... well, I tried to do a bit of training for you, y'know? I hope it works...@@"<br>
<br>
You finish lubing <<him npc_admin>> up with a smile, noting how hard <<his npc_admin>> cock is as you line yours up with <<his npc_admin>> rear and explain that everything is going to be just wonderful, all <<he npc_admin>> needs to do is relax...<br>
<br>
<<He npc_admin>> takes several slow breaths and looks up at you with trusting eyes as you smile, and press forward.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Your small member barely penetrates <<him npc_admin>>, so it's less fucking than grinding against <<his npc_admin>> muscle-bound ass... not that that isn't hot enough on its own! You start humping, <<his npc_admin>> large <<getWordPenis "npc_admin">> bouncing around with each thrust until you take it in hand. Jerking and grinding you get <<him npc_admin>> off<<if $fetish.cum>> and <<he npc_admin>> spurts a VERY large load over <<his npc_admin>> <<if $npc_admin.fem>>breasts<<else>>chest<</if>><</if>>.
<<case 2 3>>
The lube does its work and you manage to penetrate <<his npc_admin>> tight hole and start slowly thrusting. <<His npc_admin>> eyes are closed in concentration, but <<his npc_admin>> <<getWordPenis "npc_admin">> is big and hard — but you check in verbally to make sure everything is going okay.<br>
<br>
"@@.npc_admin;Yeah, it doesn't hurt it's just... whew! Way more intense than your finger... I think you can speed up a little?@@"<br>
<br>
You smile and do as <<he npc_admin>> requested, "helping out" by wrapping your hand around <<his npc_admin>> cock to fuck and jerk <<him npc_admin>> to an<<if $fetish.cum>> explosive climax that rains down over <<his npc_admin>> <<if $npc_admin.fem>>breasts<<else>>chest<</if>><<else>>intense climax<</if>>.
<<case 4 5>>
The combination of lube and whatever practice <<he npc_admin>> did manages to be just enough for you to slowly slide your cock into <<his npc_admin>> ass. You pause when you, amazingly, get all the way in, waiting as <<he npc_admin>> slowly catches <<his npc_admin>> breath and looks up at you.<br>
<br>
"@@.npc_admin;Holy shit, are you all in?@@" <<He npc_admin>> asks and you nod.<br>
<br>
"@@.npc_admin;Wow! It feels ginormous, but I guess turnabout is only fair play...@@" <<He npc_admin>> eyes <<his npc_admin>> own large, rock-hard <<getWordPenis "npc_admin">> sticking up between the two of you. You smile, and take <<his npc_admin>> <<getWordPenis "npc_admin">> in hand, slowly stroking as it leaks pre.<br>
<br>
<<His npc_admin>> eyes roll back in pleasure. "@@.npc_admin;Okay, wow, that's... keep doing that and... maybe, like... slowly thrust a little?@@"<br>
<br>
You grin and barely shift your hips, a combination with your hand-job that has <<his npc_admin>> whole body shuddering in pleasure and taking you along for the ride as you gently fuck and aggressively stroke until <<he npc_admin>> explodes with a titanic orgasm that rains down across <<his npc_admin>> <<if $npc_admin.fem>>breasts<<else>>chest<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<<if $fetish.cum>>
[<<moveTo "event_admin_sex_do_him_first_2" "Eagerly lick <<him npc_admin>> clean." 300 "<<set $scene.cum=true>>">>]<br>
<</if>>
<<if $fetish.cum && setup.getTotalValue("cum") > 15>>
[@@.link_locked;Pass up that <<getWordCum>>? Never!@@]
<<else>>
[<<moveTo "event_admin_sex_do_him_first_2" "Help <<him npc_admin>> clean up." 300 "<<set $scene.cum=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: admin first time doing him
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cage != "">>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $npc_admin.fem>>
<<set $scene.virginPenis = !$player.virgin.penis>>
<<if $scene.virginPenis>>
<<set $player.virgin.penis = "npc_admin">>
<</if>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$npc_admin.fem>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_admin.fem>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<</if>>
<<set $scene.virgin = !$player.virgin.top_fem>>
<<if $scene.virgin>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_admin">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_virgin'
0
'theme_church_confession_virgin'
true
>>
<</if>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "npc_admin">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<</if>>
<<else>>
<<set $scene.virginTopMale = !$player.virgin.top_male>>
<<if $scene.virginTopMale>>
<<set $player.virgin.top_male = "npc_admin">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_sodomy'
0
'theme_church_confession_sodomy'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
You slide out of <<=ps(setup.getNpcName("npc_admin","first"))>> rear and then lean over to lick <<his npc_admin>> <<if $npc_admin.fem>>boobs<<else>>chest<</if>> clean of <<his npc_admin>> spilt cum.<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
Every sweat-mingled drop is more delicious than the last and you make sure to clean <<if $npc_admin.fem>>the <<getWordCum>> on and between her breasts. Continuing down towards her washboard abs you savour and lick up every drop<<else>>between every sculpted muscle<</if>>
<<else>>
Mingled with <<his npc_admin>> sweat the taste of <<his npc_admin>> <<getWordCum>> is very salty
<<if setup.getTotalValue("cum") > 5>>
but weirdly... good?
<<else>>
but palatable.
<</if>>
You enjoy licking it from <<if $npc_admin.fem>>her breasts and between her firm abs<<else>>between <<his npc_admin>> firm muscles<</if>>
<</if>>
before shuffling up next to <<him npc_admin>> for some post-coital cuddles.
<<else>>
<<He npc_admin>> helpfully reaches for a towel and you take care of <<if $fetish.cum>>cleaning up the mess<<else>>wiping off some of <<his npc_admin>> glistening sweat<</if>>, smiling as you spend a little extra time to "make sure" you got everything out from <<if $npc_admin.fem>>inbetween her breasts down to her hard<<else>>the hard lines of <<his npc_admin>> pecs and<</if>> abs.
<</if>>
<br><br>
You cuddle up next to <<=setup.getNpcName("npc_admin","first")>> and <<he npc_admin>> wraps an arm around your shoulder. "@@.npc_admin;Wow... that was intense... definitely wouldn't want to do it every time, but for variety and such... yeah, that felt good.@@"<br>
<br>
<<if $scene.virginPenis>>
You smile... as you realise that this was the first time you've done someone. Quite a thought that you went so long with that silly virginity pledge, only for the first time using your penis to end up being with your old friend... funny how life goes. You certainly never would have guessed things would ever turn out like this back before.
<<elseif $scene.virginTopMale || $scene.virgin>>
You smile, your first time<<if $npc_admin.fem>> with <<else>> "topping" <</if>>a <<man npc_admin>>... definitely intense, and there was a time you never would have imagined ever doing something like this with your old friend, but now? You're happy it turned out this way, you, with the most amazing <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><</if>>friend in the world...
<<else>>
You smile and snuggle closer, momentarily wondering what the "old" you would have thought if told there would come a day that you would be fucking your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><<else>>best <</if>>friend... <<=setup.getNpcName("npc_admin","first")>>.
<</if>>
<br><br>
Cradled in <<his npc_admin>> arm you would be happy to spend the night, but <<he npc_admin>> points out that <<he npc_admin>>'s a bit of a snorer, and, besides, you don't have a change of clothes or a tooth-brush and you reluctantly agree it is probably best you head to your flag.<br>
<br>
[<<moveTo "event_admin_sex_repeat_5" "Get dressed and go home." 900>>]
</div><<if State.hasPlayed("event_admin_sex_first_4_anal") && (!$player.body_ref.vagina || State.hasPlayed("event_admin_sex_first_4_vaginal")) && $npc_technician.relationship.done_you && (!$player.body_ref.vagina || $npc_technician.relationship.done_vag)>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_technician_three'
5
'theme_admin_technician_sex_1'
true
>>
<</if>>/*#
#desc: talk to admin about technician
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.evil == 1>>
You tell to <<=setup.getNpcName("npc_admin","first")>> that you had started dating <<=setup.getNpcName("npc_technician","first")>>... before she got turned evil by the company.<br>
<br>
"@@.npc_admin;That's rough, man...@@" There is a moment of somber silence while you both silently reflect back on own brush with villainy. "@@.npc_admin;Well... knowing you, you'll get her back, she's a good lass and you... well... you're a true friend.@@"
<<else>>
You mention to <<=setup.getNpcName("npc_admin","first")>> about how you've started dating <<=setup.getNpcName("npc_technician","first")>>...<br>
<br>
<<if $npc_admin.flags.relationship != "">>
"@@.npc_admin;Her, too? Dang, you're really blossoming, that's great!@@" <<He npc_admin>> reaches out and holds your hand "@@.npc_admin;And don't you worry about the two of us. <<if $npc_admin.fem>>If you want our relationship to be more open I'm fine with that<<else>>for all that happened with your ex... you definitely liked girls, and that's certainly not something I can provide<</if>> so... yeah, you and her? Totally cool.<<if !$npc_admin.flags.monogomous_manager>> Plus, well... it ain't like me and your boss don't have that thing going, so it's only fair.<</if>>@@"
<<else>>
"@@.npc_admin;You and <<=setup.getNpcName("npc_technician","first")>>? Good for the two of you! I remember her asking about you after you left... makes you wonder if you might have hit it off back before, but I guess you were distracted by the ex and...@@" <<=setup.getNpcName("npc_admin","first")>> trails off and then shakes <<his npc_admin>> head. "@@.npc_admin;Look at me ramble on about the past! What I meant to say is congrats, and I bet the two of you are quite the cute couple.@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: talk to admin about threesome with technician
#status: RELEASED 0.8.8.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.evil == 1>>
You are about to ask <<=setup.getNpcName("npc_admin","first")>> if <<he npc_admin>>'d be interested in threesome with you and <<=setup.getNpcName("npc_technician","first")>>... when you remember that <<=setup.getNpcName("npc_technician","first")>> isn't <<=setup.getNpcName("npc_technician","first")>>. You sigh and take another drink.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> seems to understand without you saying a word, and he places a hand on your thigh in comfort. "@@.npc_admin;Hey, I know things are tough... but you managed to get me back, right? You'll do the same for the rest of your friends and then... then the company is going down.@@"<br>
<br>
You put on a brave face, it sounds so easy in <<his npc_admin>> <<if !$npc_admin.fem>>deep <</if>>voice... but you know challenges remain ahead.<br>
<br>
<<else>>
You ask <<=setup.getNpcName("npc_admin","first")>> if <<he npc_admin>>'d be interested in threesome with you and <<=setup.getNpcName("npc_technician","first")>>?<br>
<br>
<<He npc_admin>> grins. "@@.npc_admin;Me and two hot ladies? Heck yeah I would! Yeah, that'd be fun, I mean, first time she introduced herself as the Tech Wizard... I knew she'd be a total freak in the sack. Didn't pursue anything at work since, y'know, she used to report to me and all but now? Yeah, if you're down, and she's down... say... how about tonight? I mean, as much as I enjoy catching up, if it's a choice of a bar and a bed with two hot ladies well... that's what I call an easy decision!@@"<br>
<br>
[<<moveTo "event_admin_technician_sex_1" 'Call <<=setup.getNpcName("npc_technician","first")>> and see if she is free.' 1200>>]<br>
<</if>>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: admin technician threesome choice
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You call up <<=setup.getNpcName("npc_technician","first")>> and soon she's inviting the both of you over to her place, <<=setup.getNpcName("npc_admin","first")>> quickly squaring up the tab before summoning a cab for the two of you.<br>
<br>
<<if State.hasPlayed("event_admin_technician_sex_2_double_sub") || State.hasPlayed("event_admin_technician_sex_2_double_dom") || State.hasPlayed("event_admin_technician_sex_2_neut") || State.hasPlayed("event_admin_technician_sex_2_cage") || State.hasPlayed("event_admin_technician_sex_2_cuddle")>>
<<=setup.getNpcName("npc_technician","first")>> greets you both at the door with an eager grin. "@@.npc_technician;Welcome back to my lair, now let's have some Friday fun!@@"
<<else>>
<<=setup.getNpcName("npc_technician","first")>> greets you both at the door with an eager grin. "@@.npc_technician;So, welcome to my lair. Just so we're all on the same page — the two of you came over here for sex, which I am very much down to be having with the both of you. That said, well... I don't know if <<=$player.first_name>> mentioned, but... just so it doesn't pop up as a distraction/putting all cards on the table...@@"<br>
<br>
She lifts her skirt and pulls her panties aside to reveal her <<if $npc_technician.relationship.her_caged>>caged<<else>>hard<</if>> <<getWordPenis false>>.<br>
<br>
<<if $npc_admin.fem>>
There is a moment of silence... and then <<=setup.getNpcName("npc_admin","first")>> unzips to reveal <<his npc_admin>> even larger <<getWordPenis false>>.<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> jaw drops and her <<getWordPenis false>> starts to drip. "@@.npc_technician;Goddess! I had no idea! I mean, sure, I always admired your gun show, but that you were packing a high-caliber lass cannon to boot?@@" <<=setup.getNpcName("npc_technician","first")>> puts a hand to her forehead and pretends to faint. "@@.npc_technician;Take me, <<if $fetish.daddy>>Muscle Mommy, <</if>>take me now.@@"
<<else>>
<<=setup.getNpcName("npc_admin","first")>> is taken aback for a moment, but then <<he npc_admin>> smiles. "@@.npc_admin;Dang, girl! You are hella skilled at tucking, I think the term is? Because all the time we worked together I had no idea you were packing! And, as for me... totally fine, you are rocking that girl-cock and looking hot doing it.@@"
<</if>>
<</if>>
<br><br>
Attention turns towards you, "@@.npc_technician;So... being that you're the arranger of this whole shebang... what were you thinking of getting up to?@@"<br>
<br>
[<<moveTo "event_admin_technician_sex_2_double_sub" 'You want <<=setup.getNpcName("npc_technician","first")>> to sub alongside you.' 1800>>]<br>
<<if $npc_technician.relationship.her_role == 'dom'>>
[<<moveTo "event_admin_technician_sex_2_double_dom" "You'd like it if the two of them joined forces in dominating you." 1800>>]<br>
<<else>>
[@@.link_locked;<<=setup.getNpcName("npc_technician","first")>> is not presently your domme.@@]<br>
<</if>>
[<<moveTo "event_admin_technician_sex_2_neut" "You just want to fuck." 1800>>]<br>
<<if setup.checkItemTypeWorn("cage") && $npc_technician.relationship.her_caged && $npc_technician.relationship.her_role != 'dom'>>
[<<moveTo "event_admin_technician_sex_2_cage" 'You and <<=setup.getNpcName("npc_technician","first")>> should stay in chastity while <<he npc_admin>> fucks you both.' 1800>>]<br>
<</if>>
[<<moveTo "event_admin_technician_sex_2_cuddle" "You actually just want to cuddle the two of them..." 1800>>]<br>
[<<moveTo "event_admin_technician_sex_2_abort" "You changed your mind... you're feeling tired and want to call it a night." 1800>>]<br>
</div>/*#
#desc: admin technician threesome abort
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<applyStress -5>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You blush and reply that actually... you're suddenly feeling tired and not really up for this level of performance.<br>
<br>
"@@.npc_technician;Aww... a bit of stage fright? You look so cute when you're nervous. That's totally fine. The rule in my house is all sex — and there's a lot of it, happens because everyone involved is 111% yes-I-want-to-fuck. If you aren't feeling it, for whatever reason? Well, there's always another night.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> nods in agreement and you thank your friends for their understanding before sharing a parting kiss and heading off.<br>
<br>
[<<moveTo "room_citymap" "Leave." 180>>]
</div>/*#
#desc: admin technician threesome two subs
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyStress -20>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> grins, and before you know it the two of you are both kneeling in front of <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
You note a touch of hesitancy as <<he npc_admin>> looks down at you but then <<he npc_admin>> grins. "@@.npc_admin;So... you two want to be my slaves?@@" <<He npc_admin>> asks.<br>
<br>
"@@.npc_technician;Yes, <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>>.@@" "@@.pc;Yes, <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>>.@@" You reply in harmony, giggling and cuddling together as you blink look up at <<him npc_admin>>.<br>
<br>
"@@.npc_technician;Please, <<Sir npc_admin>> — let us serve you...@@"<br>
<br>
"@@.npc_admin;What a lovely offer,@@" <<he npc_admin>> replies, reaching down with <<his npc_admin>> <<if !$npc_admin.fem>>large <</if>>hand to caress <<=ps(setup.getNpcName("npc_technician","first"))>> face.
<<if !$player.body_ref.penis || $player.body.penissize[0] < 6>>
"@@.npc_admin;And it's only proper, right? Whoever has the biggest cock is the one in charge?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grinds her hips mischievously "@@.npc_technician;I mean, in that case I—@@"<br>
<br>
She freezes as <<=setup.getNpcName("npc_admin","first")>> pulls out <<his npc_admin>> large <<getWordPenis "npc_admin">>, <<=setup.getNpcName("npc_technician","first")>> staring at it in awe centimetres from her face. "@@.npc_technician;Should have... should have sent a poet...@@" She whispers. She looks up at <<him npc_admin>> wide-eyed "@@.npc_technician;Please, <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>> — may your two slaves worship your perfect <<if $npc_admin.fem>><<getWordPenis "npc_admin">><<else>>manhood<</if>>?@@"<br>
<br>
<<He npc_admin>> nods.
<<else>>
"@@.npc_admin;Come on girls, show how much you love your <<if $fetish.daddy>><<=ps(setup.getNpcName("npc_admin","<<Daddy npc_admin>>"))>><<else>><<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>><</if>> cock...@@"
<</if>>
<br><br>
Fingers trembling with excitement you finish pulling <<his npc_admin>> pants out of the way and soon you and <<=setup.getNpcName("npc_technician","first")>> are working together to worship <<his npc_admin>> <<getWordPenis "npc_admin">>. <<He npc_admin>> moves to the bed as you and <<=setup.getNpcName("npc_technician","first")>> crawl after <<him npc_admin>>, <<his npc_admin>> size such that there is plenty of room for you to both work, switching off who gets to lick and suck <<his npc_admin>> dripping tip while the other fondles and sucks <<his npc_admin>> heavy balls.<br>
<br>
"@@.npc_admin;Good girls, but I want more than just your pretty lips — <<=setup.getNpcName("npc_technician","first")>> get your cute booty up on my lap!@@"<br>
<br>
"@@.npc_technician;Yes, <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>>,@@" she replies as she slinks up, turning around and lowering herself onto <<his npc_admin>> cock with a moan. "@@.npc_technician;Oh, <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>>! You're so big! Thank you! Thank you for fucking this slave with your big, perfect cock!@@"<br>
<br>
"@@.npc_admin;That's right...@@" <<He npc_admin>> replies, kissing her neck and playing with her nipples as <<he npc_admin>> bounces her up and down, "@@.npc_admin;But you've got a nice love sausage as well... how about your slave-sister gets to work on that?@@"<br>
<br>
You eagerly
<<if $npc_technician.relationship.her_caged>>
unlock <<=ps(setup.getNpcName("npc_technician","first"))>> cage and
<</if>>
gulp down her <<getWordPenis false>>; trying to suck as much of it as you can while she bounces up and down on <<if $fetish.daddy>><<=ps(setup.getNpcName("npc_admin","<<Daddy npc_admin>>"))>><<else>><<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>><</if>> <<getWordPenis "npc_admin">>.<br>
<br>
"@@.npc_technician;Oh Goddess! It's too good, I'm going to cum, please <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>>, can I cum?@@"<br>
<br>
"@@.npc_admin;Permission@@" <<he npc_admin>> whispers in her ear as she climaxes<<if $fetish.cum>>; your cheeks swell like a squirrel as you struggle to contain her massive load... your job made even harder as you moan at the sight of <<=ps(setup.getNpcName("npc_admin","first"))>> <<getWordCum>> oozing out of her ass as <<he npc_admin>> cums inside of her<<else>>, <<=setup.getNpcName("npc_admin","first")>> grunting with an orgasm of his own a moment later<</if>>.<br>
<br>
Before you or <<=setup.getNpcName("npc_technician","first")>> can catch your breath <<=setup.getNpcName("npc_admin","first")>> has you by the hair, pulling you up to share a kiss<<if $fetish.cum>> with <<=setup.getNpcName("npc_technician","first")>>, the two of you passing <<=ps(setup.getNpcName("npc_technician","first"))>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
delicious
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
strangely alluring
<<else>>
salty
<</if>>
<</if>>
girl goo back and forth before <<=setup.getNpcName("npc_admin","first")>> gives the order to "@@.npc_admin;Swallow.@@" You both gulp obediently and then open your mouths wide to show what good girls you've been<<else>>, quickly joined by <<=setup.getNpcName("npc_technician","first")>> as three tongues dance<</if>>.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> tips back into the bed with you and <<=setup.getNpcName("npc_technician","first")>> snuggled up against <<him npc_admin>>, a sweaty, satisfied cuddle pile, <<his npc_admin>> arms around your shoulders as you cuddle and calm down.<br>
<br>
"@@.npc_technician;That was fun,@@" <<=setup.getNpcName("npc_technician","first")>> whispers, the first to break the silence.<br>
<br>
"@@.npc_admin;Yeah... yeah it was... though I think the two of you would kill me if I had to keep up with such horny slaves all the time...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Psh, big, strong <<man npc_admin>> like you? You could totally handle it. And if not, well nothing like a nice slave revolt, sex-workers of the world, rise up!@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> laughs as he looks from her, then to you and smiles wider. "@@.npc_admin;I dunno about that, but I don't think I'd be able to resist trying!@@"<br>
<br>
The three of you laugh and then start packing things up to head home — as fun as things had been, <<=ps(setup.getNpcName("npc_technician","first"))>> is a bit cramped for three, especially when one is as large as <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
[<<moveTo "room_citymap" "Leave." 180>>]
</div>/*#
#desc: admin technician threesome two doms
#status: RELEASED 0.8.8.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyStress -20>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_admin","first")>> looks at <<=setup.getNpcName("npc_technician","first")>> with a grin.<br>
<br>
"@@.npc_admin;You up for sharing your slave?@@"<br>
<br>
"@@.npc_technician;With you? Hell to the yes — this Princess needs to be put in her place and there ain't no better way to do that than to join forces. If you would bring her along?@@"<br>
<br>
The two of them fist-bump, step towards you and then <<=setup.getNpcName("npc_admin","first")>> is casually throwing you over <<his npc_admin>> shoulder to carry you into the bedroom.<br>
<br>
By the time you're laid out on the bed <<=setup.getNpcName("npc_technician","first")>> is naked, and
<<if $npc_technician.relationship.her_caged>>
you are obediently unlocking her cage and wrapping your lips
<<else>>
your lips are wrapped
<</if>>
around her <<getWordPenis false>>.<br>
<br>
"@@.npc_admin;Mind if I take the other end?@@" <<=setup.getNpcName("npc_admin","first")>> asks with a grin, now naked <<him npc_admin>>self.<br>
<br>
"@@.npc_technician;Definitely — this Princess has a royal need to be stuffed from both ends, isn't that right? You royal dick-creed, you said it was?@@"<br>
<br>
"@@.pc;Yeff, <<=setup.getNpcName("npc_technician","title")>>,@@" you mumble around her <<getWordPenis false>> as you wiggle your butt in invitation.<br>
<br>
Your legs are lifted and spread and then <<=ps(setup.getNpcName("npc_admin","first"))>> <<getWordPenis "npc_admin">> is sliding into you.<br>
<br>
You moan, eyes rolling back as <<=setup.getNpcName("npc_technician","first")>> grabs you by the hair to look you in the eye. "@@.npc_technician;Well, what do you say?@@"<br>
<br>
"@@.pc;Thank you, <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>>,@@" you groan as the two of them continue to rail you from either end.<br>
<br>
"@@.npc_admin;I gotta congratulate your slave on having a tight, perfect ass,@@" <<=setup.getNpcName("npc_admin","first")>> states, giving you a quick slap on the ass as emphasis as <<he npc_admin>> continues to pump inside of you.<br>
<br>
"@@.npc_technician;And YOUR slave has a welcoming throat and perfect dick-sucking lips.@@" <<=setup.getNpcName("npc_technician","first")>> replies as you drool around her <<getWordPenis false>> and feel yourself lifted off the bed — all but suspended between their cocks as your <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>> and your <<=setup.getNpcName("npc_technician","title")>> take total control, fucking you hard and deep, pulling your hair and slapping your ass and pounding you until, one after another, they cum<<if $fetish.cum>>, <<getWordCum>> gushing into you from either end as you swallow and squeeze... and eventually<<else>>, stuffing you tight to the final trembling jolts of pleasure until you<</if>> flop exhausted onto the bed.<br>
<br>
"@@.pc;Th-thank you,@@" you gasp, looking up at the two of them standing over you, grinning with pride.<br>
<br>
"@@.npc_technician;Thank YOU, you perfect pretty Princess,@@" <<=setup.getNpcName("npc_technician","first")>> says pulling you in for a kiss as <<=setup.getNpcName("npc_admin","first")>> lifts you to your feet and you find yourself the middle layer of a <<if $npc_technician.last_name == "Strawberry">>chocolate-strawberry<<else>>slave<</if>> sandwich, held tight by your two lovers as you ride back from sub space on a road of welcoming kisses.<br>
<br>
You have a dopey, satisfied smile as you finally step off the bed, walking on air as you eagerly take charge of cleaning up your two "owners," helping them back into their clothes in between hugs and kisses and whispered adoration.<br>
<br>
With a skip in your step you bid your friends good-night and head off.<br>
<br>
[<<moveTo "room_citymap" "Leave." 180>>]
</div>/*#
#desc: admin technician threesome neutral
#status: RELEASED 0.8.8.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyStress -20>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
Almost giddy, the three of you head for the bedroom, shedding clothing as you pile into the slightly-too-small bed. Sucking, fucking... you lose track of whose <<getWordPenis "npc_admin">> or <<getWordPenis false>> is in whom as you enjoy what feels like the perfect three-way, whispered words of adoration and orgasm sprinkled throughout as the three of you focus on one another's pleasure, nobody wanting to stop until EVERYONE is completely and utterly satisfied.<br>
<br>
Sweaty, drained, exhausted, and content the three of you end up in a cuddled nest of limbs and love, gradually coming down from post-orgasmic highs before eventually de-tangling from one another to prepare to go.<br>
<br>
[<<moveTo "room_citymap" "Leave." 180>>]
</div>/*#
#desc: admin technician threesome cage
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 15 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyStress -20>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You whisper your plan and <<=setup.getNpcName("npc_admin","first")>> looks nervous while <<=ps(setup.getNpcName("npc_technician","first"))>> expression splits into a submissive grin. "@@.npc_technician;Holy shit you are so dang kinky... and I LOVE it!@@" She smiles up at <<=setup.getNpcName("npc_admin","first")>> "@@.npc_technician;Come on, big <<guy npc_admin>>... you know you want to fuck a couple of <<if $fetish.sissy>>sissy <</if>>butt-sluts, show us why <<if $fetish.sissy>>our sissy clitties are<<else>>we belong like this<</if>> — locked and enslaved to big, strong <<men npc_admin>> like you...@@"<br>
<br>
You can tell that this is edging a little close to <<=ps(setup.getNpcName("npc_admin","first"))>> limits, but when <<he npc_admin>> sees your smiling, enthusiastic expression matching <<=ps(setup.getNpcName("npc_technician","first"))>> own... <<he npc_admin>>'s suddenly on board.<br>
<br>
It feels a bit like you've unleashed something as <<=setup.getNpcName("npc_admin","first")>> soon has you and <<=setup.getNpcName("npc_technician","first")>> stripped and stacked; her cage grinding into you and leaking down past your own imprisoned self as your bare asses shine in invitation.<br>
<br>
"@@.npc_admin;Damn... talk about choice! It's hard to know which <<if $fetish.sissy>>sissy <</if>>hole to fuck first! <<if setup.checkItemTypeWorn("plug")>>I guess we'll leave this hole plugged for a second... I want something nice and tight to warm up with.<<else>>I guess we'll just start from the top — after all, a hole is a hole, right?<</if>>@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> moans into your ear; hugging you tight as <<=setup.getNpcName("npc_admin","first")>> slides into her from behind. "@@.npc_technician;You're so big <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>>,@@" she moans and you almost cum there... especially when <<his npc_admin>> pendulum-swinging balls start <<if setup.checkItemTypeWorn("plug")>>slapping against your plug and sending jolts of stimulation through your body<<else>>slapping your ass, making you desperate for it to be your turn<</if>>.<br>
<br>
You gasp as <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>><<he npc_admin>> yanks out your plug and <</if>>slides into you, <<his npc_admin>> big cock already slick as it glides into your ass as <<=setup.getNpcName("npc_technician","first")>> catches her breath and whispers in your ear. "@@.npc_technician;You feel that? You feel <<if $fetish.daddy>><<=ps(setup.getNpcName("npc_admin","<<Daddy npc_admin>>"))>><<else>><<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>><</if>> big cock inside you?@@"<br>
<br>
Your response is an incoherent moan of pleasure... cut off as <<=setup.getNpcName("npc_admin","first")>> pulls out and goes back to <<=setup.getNpcName("npc_technician","first")>> before establishing a rhythm of switching off back and forth, each balls-deep thrust of <<his npc_admin>> big cock making <<=setup.getNpcName("npc_technician","first")>> grind her cage against your spine or you to sink further into the bed as her whispered words make you feel more and more like just a <<if $fetish.sissy>>sissy <</if>>fuck-hole.<br>
<br>
<<if $fetish.cum>>
"@@.npc_admin;You sluts are so tight... I'm about to cum... which of you wants it? Huh? Which of you most deserves to be bred, to have my seed pumped into her?@@"<br>
<br>
You both start begging, but, in the end, <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>> shows you favour and you cum on the spot as you feel <<him npc_admin>> <<if $fetish.cum>>spurt a massive load inside of you<<else>>shudder in kind<</if>>.<br>
<br>
"@@.npc_admin;Well, what are you waiting for? Show your appreciation by licking me clean! And you? Just because you didn't win the prize is no reason to slack off! I don't want that cum going to waste so you better suck it out of her ass.@@"<br>
<br>
"@@.npc_technician;Yes, <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>>@@" "@@.pc;Yes, <<if $fetish.daddy>><<=setup.getNpcName("npc_admin","<<Daddy npc_admin>>")>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>>@@" The two of you respond in heady unison as you start slurping away at <<if $fetish.daddy>><<Daddy npc_admin>>'s<<else>><<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>><</if>> softening, but still large, <<getWordPenis "npc_admin">>.<br>
<br>
At the same time <<=setup.getNpcName("npc_technician","first")>> eagerly buries her tongue in your ass, reaching so deep you wonder if she's going to taste tonsils as she slurps and sucks every drop of <<getWordCum>> out of your rear... her reward for a job well done to be dragged up by her hair and into a shared kiss as you and her snowball back and forth your respective prizes before gulping it down on command.
<<else>>
You can feel <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>><</if>> start to twitch and then <<he npc_admin>> cums, fingers digging into your rear as <<he npc_admin>> thrusts even deeper than before and you analgasm. <<He npc_admin>> somehow remains hard just far enough post-climax to slam one final time into <<=setup.getNpcName("npc_technician","first")>> prompting her to scream a loud orgasm into your ear.
<</if>>
<br><br>
Some of <<=ps(setup.getNpcName("npc_admin","first"))>> intensity fades as <<he npc_admin>> starts to come down, for a moment looking a bit scared at what <<he npc_admin>> did... only for you and <<=setup.getNpcName("npc_technician","first")>> to all but pounce on <<him npc_admin>> as you talk about how much you loved the scene.<br>
<br>
Cuddled and crammed onto the note-quite-large-enough bed the three of you meet in that reality middle between dom-space and sub-space before sorting out whose clothes are whose and heading home.<br>
<br>
[<<moveTo "room_citymap" "Leave." 180>>]
</div>/*#
#desc: admin technician threesome cuddle
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyStress -20>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_admin","first")>> grins and answers your proposal by scooping up you and <<=setup.getNpcName("npc_technician","first")>> up at the same time, carrying you one in each arm into the bedroom, the three of you entwining into a rats nest of limbs and loving embraces.<br>
<br>
You close your eyes and enjoy the feeling of love as you curl up with your two <<if $npc_admin.fem>>girl<</if>>friends. You lose track of who's kissing who, just luxuriating in the tender touch of lips and fingers, of skin against skin as the three of you press together to form a <<if $npc_technician.last_name == "Strawberry">><<if $player.skintone == "dark">>double-chocolate-strawberry<<elseif $player.skintone == "light">>neapolitan<<else>>chocolate-strawberry<</if>> <</if>>sandwich with you nestled in the middle.<br>
<br>
Initial exuberance dies down until the three of you are just lying together, almost drifting to sleep before <<=setup.getNpcName("npc_admin","first")>> points out that the bed is a bit small for three and you reluctantly untangle and get ready to leave.<br>
<br>
[<<moveTo "room_citymap" "Leave." 180>>]
</div>/*#
#desc: theme: admin talk about breakup
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
After a while you open up to <<=setup.getNpcName('npc_admin', 'first')>> about the strange nature of the now defunct relationship with <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. How you pled to remain virgin until you married, even though you had no idea if you'd ever propose to her, because you were too afraid that you could simply suck at sex. And for whatever reason she accepted. She didn't like it, but once the agreement was made neither of you had courage enough to break the whole stupid bargain and fuck like rabbits.<br>
<br>
"@@.npc_admin;Let me tell you the secret about sex. First sex always sucks if you're a virgin. Unless you have someone really experienced who takes the lead. Kinda like dancing. Two virgins are bound to fail at some point, unless they are the Kwisatz Haderach of Sex.@@"<br>
<br>
You tell <<=setup.getNpcName('npc_admin', 'first')>> that <<his npc_admin>> allegory sucks.<br>
<br>
"@@.npc_admin;Well, at least you don't have to worry about your nerd cred. Anyway, your ex...<<=setup.getNpcName('npc_exgirlfriend', 'first')>> didn't look like a virgin to me the few times I saw her. I mean, sure, you were a noob, but if you'd just ditched that old fashioned attitude, that it was your duty to lead during sex... I mean, of course it is better when both sides have experience, but it can be pretty fun to simply give up the lead from time to time. Even though I am a <<if $npc_admin.fem>>goddess<<else>>god<</if>> among mortals...@@" underlining the last line while flexing <<his npc_admin>> muscles so much that for a moment you think <<his npc_admin>> shirt will simply evaporate, "@@.npc_admin;I had to learn it once as well. And I didn't start too soon either. You remember <<=setup.getNpcName("generic_female1","custom", "Professor Ukioe")>>?@@"<br>
<br>
You're puzzled for a moment. You haven't heard that name in years. You remember her being your professor for software development and project management, back at the university. You ask if that's the reason why <<he npc_admin>> suddenly managed to get through the course.<br>
<br>
"@@.npc_admin;Nah, don't be modest, that is still your achievement, tutor. She warned me a few times after our nights together that I would fail if I don't focus my efforts, and she didn't mean in bed. Anyway, she was older than me and much, much more experienced. And let me tell you, she was into some pretty kinky stuff, like you can't even imagine...@@"<br>
<br>
<<printThought "Oh brother, I can imagine quite a lot lately, so try me...">><br>
<br>
After that brief tease, however, <<=setup.getNpcName('npc_admin', 'first')>> shifts the subject, the rest of the discussion dissolving into reminiscing over shenanigans you got into back during your university days.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 2400>>
</div>/*#
#desc: theme: admin, talk about unisex clothing
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_21'
21
'theme_admin_nickname'
true
>>
<<if setup.analyzeWornTags(['male','unisex','female']) == "female" || $npc_admin.flags.firstsawfemale>>
<<set _themeId = setup.findThemeId('npc_admin', 'transition', 'theme_admin_transition_10')>>
<<if _themeId != -1>>
<<set $npc_admin.themes.transition[_themeId].done = 1>>
<</if>>
<<set _themeId = setup.findThemeId('npc_admin', 'transition', 'theme_admin_transition_12')>>
<<if _themeId != -1>>
<<set $npc_admin.themes.transition[_themeId].done = 1>>
<</if>>
<<initRoom>>
<<moveTo "event_admin_theme_female_clothes">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if setup.analyzeWornTags(['male','unisex','female']) != 'male'>>
"@@.npc_admin;So...@@" <<=setup.getNpcName('npc_admin', 'first')>> leans forward and puts <<his npc_admin>> elbow on the table while forming a triangle with <<his npc_admin>> hands, "@@.npc_admin;What's up with the outfit? I am not going to judge you. Okay, maybe I am. I don't know, since I have to admit I never questioned your <<if $options.fem>>gender<<else>>sexuality<</if>> until now. And by questioning, I always thought you were <<if $options.fem>>just a guy<<else>>straight, simply<</if>> with a low sex drive. Let's ignore these hips for a second okay?@@"<br>
<br>
<<switch $player.sec_style.clothing.unisex>>
<<case "obedient" "money">>
You explain that, after a spill in the work lunchroom, your manager offered you a clean outfit to save you from enduring the rest of the workday a mess, and that the new outfit was a bit more... neutral, you hedge, than your prior fare.<br>
<br>
"@@.npc_admin;Huh, I guess it wouldn't make sense for her to have male clothes just lying around but... that doesn't explain why you're still dressed like that, I mean you only needed to wear it for the rest of the day, right? So, uh... that doesn't explain your current getup.@@"<br>
<br>
Mindful of the restrictions of your contract, you don't mention that the new outfit has become a new uniform in all but name though you accidentally mention that it's actually more comfortable than your slacks and shirt, throwing in that you kind of like being able to wear something different than the worker-drone attire you dressed in every day back at CDS.<br>
<br>
"@@.npc_admin;Well, if you like it, it's your body, right? Not like anyone's mandating that you dress like a girl or something crazy like that.@@"<br>
<br>
Buying time pretending to take a drink of your beer, you force yourself to laugh along with <<him npc_admin>>. "@@.pc;Yeah, that'd be crazy, right?@@"<br>
<br>
You take another sip of your beer as you find yourself quietly reflecting on your made-up explanation. <<printThought "Is the new outfit really part of embracing a new life along with your new job?">> You continue to nurse your beer and wait for the conversation to move on.
<<case "forced" "strict">>
You explain to <<him npc_admin>> that you messed up at your new job and that <<=setup.getNpcName('npc_manager', 'other')>> is allowed to change the regulations of your dress code, with quite wide leeway insofar as what is accepted by the company. Mindful of your contract, you make sure to be careful in your explanation and take care not to mention anything that could bring <<=setup.getNpcName('npc_admin', 'first')>> or you into hot water.<br>
<br>
"@@.npc_admin;Huh, well, yeah, so your new Boss is messing with you. That's normal, right? I mean we're friends and I still ribbed you a bit at work. I mean maybe she's doing things a bit... different than I would have, but you did mess up. Seems kind of harsh, but I assume you kind of deserved it.@@"<br>
<br>
That line was underlined by a mean smirk and a soft punch on your shoulder.<br>
<br>
"@@.npc_admin;Just messing with you. Strange way to punish a subordinate, I have to say. And you say she provided these clothes? Hmm, but that does not explain why you're wearing them now. I mean, you're off the clock! This is your time off, isn't it? You could wear whatever you want, and still you chose to wear those. Don't get me wrong, they do look... err... good on you <<callPlayer "npc_admin">>!@@" whispering a faint, "@@.npc_admin;No <<if $npc_admin.fem>>hetero<<else>>homo<</if>>...@@" behind it.
<<case "voluntary">>
You just shrug and state that you've been experimenting with a new style, that you actually find that you've been enjoying trying out a less masculine aesthetic.<br>
<br>
"@@.npc_admin;Sure, I mean, if you like it. And well, with your hips yeah... I could see that sort of thing working.@@"
<<case "enthusiast">>
You smile and reply that you've taken the opportunity afforded by your new job to explore a less masculine aesthetic.<br>
<br>
"@@.npc_admin;Sure, I mean, if you like it. And well, with your hips yeah... I could see that sort of thing working.@@"
<<default>>
ERROR, unknown sec_style unisex: <<=$player.sec_style.clothing.unisex>>
<</switch>>
<<else>>
You explain how your work attire has shifted substantially from what you wore back at Cloud Data Services.<br>
<br>
"@@.npc_admin;So, what, you're doing the full on suit and tie thing up there?@@"<br>
<br>
You blush and note that it isn't quite like that...<br>
<br>
<<switch $player.sec_style.clothing.unisex>>
<<case "obedient" "money">>
You explain that, after a spill in the work lunchroom, your manager offered you a clean outfit to save you from enduring the rest of the workday a mess, and that the new outfit was a bit more... neutral, you hedge, than your prior fare.<br>
<br>
"@@.npc_admin;Huh, I guess it wouldn't make sense for her to have male clothes just lying around. You know I've heard some pretty crazy stories about the upper floors... though I guess this is more quirky than crazy, eh?@@"
<<case "forced" "strict">>
You explain to <<him npc_admin>> that you messed up at your new job and that <<=setup.getNpcName('npc_manager', 'other')>> is allowed to change the regulations of your dress code, with quite wide leeway insofar as what is accepted by the company. Mindful of your contract, you make sure to be careful in your explanation and take care not to mention anything that could bring <<=setup.getNpcName('npc_admin', 'first')>> or you into hot water.<br>
<br>
"@@.npc_admin;Huh, well, yeah, so your new Boss is messing with you. That's normal, right? I mean we're friends and I still ribbed you a bit at work. I mean maybe she's doing things a bit... different than I would have, but you did mess up. Seems kind of harsh, but I assume you kind of deserved it.@@"<br>
<br>
That line was underlined by a mean smirk and a soft punch on your shoulder.<br>
<br>
"@@.npc_admin;Just messing with you. Strange way to punish a subordinate, I have to say. Though... I've heard some stories about crazy shit going down on the upper floors! This seems more quirky though, and no real harm, I suppose.@@"
<<case "voluntary">>
You just shrug and state that you've been experimenting with new style, that you actually find that you've been experimenting with some more androgynous styles.<br>
<br>
"@@.npc_admin;Sure, I mean, if you like it. And well, with your hips yeah... I could see that sort of thing working.@@"
<<case "enthusiast">>
You smile and reply that you've taken the opportunity afforded by your new job to explore a less masculine aesthetic.<br>
<br>
"@@.npc_admin;Sure, I mean, if you like it. And well, with your hips yeah... I could see that sort of thing working.@@"
<<default>>
ERROR, unknown sec_style unisex: <<=$player.sec_style.clothing.unisex>>
<</switch>>
<</if>>
<br><br>
"@@.npc_admin;So, uh, anyway, I assume there's more going on in your life than a simple change of clothes and job, right?@@"<br>
<br>
You nod timidly, and explain that it seems that you've reached some kind of crossroads in your life, less sure of your future than you've been since early college.<br>
<br>
"@@.npc_admin;Hey Bro... no let me rephrase that...Buddy. Buddy is gender neutral, right? Dude. If you ever need help, I'm here for you. Shit, changing from bro is gonna be tough.@@"<br>
<br>
[<<moveTo "event_admin_bro_1" 'Say you are happy continuing to be <<his npc_admin>> "bro."' 60 "<<set $scene.bro=true>>">>]<br>
<<if $options.isMobile>>
<<textbox "$scene.broreplacement" "Brosephine" autofocus>><br>
<br>
[<<moveTo "event_admin_bro_1" "Confirm your new nickname." 30>>]<br>
<<else>>
[<<link "Enter your new nickname">><<openDialog "Enter your new name:" "dialog_selectAdminNickname">><</link>>]
<</if>>
</div>/*#
#desc: theme: admin, talk about wearing female clothing
#status: FINISHED 0.4.0.0
#ignore_spell: worntag,firstsawfemale
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<set _themeId = setup.findThemeId('npc_admin', 'transition', 'theme_admin_transition_5')>>
<<if _themeId != -1>>
<<set $npc_admin.themes.transition[_themeId].done = 1>>
<</if>>
<<if !$npc_admin.flags.firstsawfemale>>
<<set $npc_admin.flags.firstsawfemale = "">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<switch $npc_admin.flags.firstsawfemale>>
<<case "">>
You talk to <<=setup.getNpcName('npc_barkeeper', 'first')>> about wearing women's clothing.<br>
<br>
<<He npc_admin>> waits as if you're telling a joke, then raises an eyebrow when the lingering silence points to you being serious. "@@.npc_admin;Huh, well... I mean, there's nothing wrong with that, and you do have the hips for it...@@" <<he npc_admin>> grins, seemingly sounding you out a bit with the gentle ribbing. "@@.npc_admin;You mention it and I'm kind of curious how you'd look. But hey — don't think you need to dress up on my behalf. I'm friends with you for YOU, not for what you look like. Not that you don't look good!<<if $npc_admin.flags.knowgender == "male">> I mean, for a dude, I may be into the ladies, but I know a thing or two.<</if>>@@"<br>
<br>
Things are momentarily a little awkward but a quick drink and a topic shift and you're back to the usual chatting.
<<case "bar">>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.npc_admin;Wow, talk about a change. I mean... <<if $npc_admin.fem>>you look good, great even, but it's still a bit of a shock compared to your old style, but<<else>>it's weird, clothes like that...<</if>> they actually look better on you than what you used to wear to work, and if you feel more comfortable in them...@@"
<<if $npc_admin.flags.knowgender == "male">>
<<He npc_admin>> shakes <<his npc_admin>> head. "@@.npc_admin;Sorry, this is a bit weird, it's just the light of the bar, barkeep, another round!@@"
<<else>>
<<He npc_admin>> shakes <<his npc_admin>> head. "@@.npc_admin;Sorry, bit distracted. I could say it's cause you are way more of a head-turner in your new threads than you ever were before... but that's putting the blame on the wrong party. It's my job to keep control of myself, y'know? Sorry, that got a little deep there, we're supposed to be relaxing tonight! Yo, barkeep, another round!@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> smirks from across the bar and slams down another beer.
<<case "male">>
"@@.npc_admin;Back to your old attire?@@" <<he npc_admin>> notes, nodding to your current male outfit.<br>
<br>
<<His npc_admin>> comment reminds you of the fact that <<hes npc_admin>> seen you in full feminine glory, and in this very bar.
<<case "unisex">>
"@@.npc_admin;Hmm, couldn't decide between male and female and decided to just split the difference?@@" <<he npc_admin>> notes, nodding to your current unisex outfit.
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
You try to explain that you've just been experimenting with different outfits and that you have found some more feminine clothing to be surprisingly comfortable.<br>
<br>
You can tell <<=setup.getNpcName('npc_admin', 'first')>> is still a little uncomfortable at your changes, but <<he npc_admin>> acts supportive, raising <<his npc_admin>> glass to "being comfortable" and taking a long drag of <<his npc_admin>> beer.
<<case "office">>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.npc_admin;Huh, I thought, maybe, the whole girl act was just a work thing but... we're after hours and you're still... well, you're looking good, I've gotta be honest.@@" <<He npc_admin>> shakes <<his npc_admin>> head, as if a bit confused. "@@.npc_admin;Anyway...@@"
<<case "male">>
"@@.npc_admin;So, tell me, what's really going on? I mean at work you're all ladylike and, well... cute, and now, well... you're still cute, I gotta be honest, but no moreso than you always were.@@"
<<case "unisex">>
"@@.npc_admin;Male clothes, female clothes, in-between clothes... A <<guy npc_admin>> could get dizzy trying to keep track of what you're wearing!@@"<br>
<br>
You both smile at the slight ribbing and take another sip of your beers.
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
You thank <<him npc_admin>> for <<his npc_admin>> support, explaining that you're still figuring everything out yourself, but that you're happy. Saying the words, you're a bit surprised at how true they are. You had only meant to put your friend at ease but, despite all the craziness, you actually are, overall, happier than you've been in a while.
<<default>>
ERROR: unknown npc_admin.flags.firstsawfemale value <<=$npc_admin.flags.firstsawfemale>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 2400>>
</div>/*#
#desc: admin topic: talk about your new female name
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -1>>
<<if $npc_admin.flags.discussnamechange>>
<<set $scene.alreadyreactednamechange = true>>
<<else>>
<<set $scene.alreadyreactednamechange = false>>
<<set $npc_admin.flags.discussnamechange = true>>
<</if>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_21'
21
'theme_admin_nickname'
true
>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.alreadyreactednamechange>>
Though <<he npc_admin>> reacted remarkably well to learning about your new name you figure the big <<guy npc_admin>> might have some additional questions about the whole matter.<br>
<br>
"@@.npc_admin;Yeah, not going to lie, I was a bit blindsided by it, why didn't you tell me earlier? No offense, but learning like that, from your boss... well, I guess my boss now too, it was a bit awkward for the both of us!@@" <<He npc_admin>> is pensive for a moment, taking a large gulp of beer before continuing. "@@.npc_admin;Like, you weren't forced into it or anything, were you?@@"
<<elseif $npc_admin.flags.promotion>>
You bring up again the fact that you changed your name.<br>
<br>
"@@.npc_admin;Right, you told me about that at work... well, if that's who you are, that's what I'll call you, almost makes more sense to choose your own name than just rely on your parents to get it right!@@"<br>
<br>
You nod, thanking <<him npc_admin>> for the continued understanding.
<<else>>
Mindful of your NDA, you try to casually bring up that you've changed your name to <<=$player.first_name>>.<br>
<br>
"@@.npc_admin;What!? Sorry to raise my voice, <<callPlayer "npc_admin">>, but that's, like, a pretty serious move... you sure about this, you weren't forced into it or something crazy like that?@@"
<</if>>
<br><br>
<<if !$npc_admin.flags.promotion>>
<<switch $player.sec_style.body.name>>
<<case "forced" "strict">>
Of course you were forced into it, like so many things, but you can't let that slip. As good of a friend as <<=setup.getNpcName('npc_admin', 'first')>> is, you're even more afraid of <<=setup.getNpcName('npc_manager', 'formal')>>, and you could not bear the thought of something befalling <<=setup.getNpcName('npc_admin', 'first')>> due to your loose lips.<br>
<br>
<<He npc_admin>> seems to be waiting for your reply so you quickly re-assure <<him npc_admin>> that everything is fine, that you've just been really discovering things about yourself of late and that this was kind of a culmination of a bunch of that.
<<case "money">>
You are reminded of the philosophical question as to whether capitalism itself enslaves everyone. Of course that doesn't entirely apply here, you made the choice with eyes open.<br>
<br>
<<He npc_admin>> seems to be waiting for your reply and you explain that with everything else that's been going on you just decided to make the change.
<<case "voluntary" "enthusiast">>
You laugh and explain that it was nothing like that. You note all the other changes you've been going through and point out that changing your name to something more appropriate to the new you was just a natural move.<br>
<br>
<<His npc_admin>> concerns put to rest <<he npc_admin>> smiles, recognising how much happier you seem to be compared to a mere few weeks ago.<br>
<br>
"@@.npc_admin;Guess I should be used to surprises by now, who'd have thunk losing your girlfriend and your job would lead to you being so much better off? Guess sometimes we just need a kick in the pants to get things rolling.@@"
<<case "obedient">>
Worried that <<he npc_admin>> might not understand the... special relationship you share with <<=setup.getNpcName('npc_manager', 'formal')>> you quickly re-assure <<him npc_admin>> that it was totally your decision, that you just felt like it needed to be done as another part of the changes you've been going through as you discover the "real" you.
<<default>>
ERROR, unknown sec_style.name: <<=$player.sec_style.body.name>>
<</switch>>
<br><br>
You can tell <<hes npc_admin>> still a bit confused but, as always, <<he npc_admin>> takes <<his npc_admin>> duties as a friend seriously and is supportive first, promising to make sure <<he npc_admin>> uses your new name going forward, while pre-emptively apologising if <<he npc_admin>> screws up.<br>
<br>
Turning to the bar, <<he npc_admin>> waves for another round. "@@.npc_admin;Another brew for me and my friend... <<=$player.first_name>>!@@"<br>
<br>
You take a drink and smile at <<his npc_admin>> gesture.<br>
<br>
<</if>>
<<if $npc_admin.call_player == "bro">>
<<He npc_admin>> thinks for a moment and then asks a follow-up question. "@@.npc_admin;So, hmm, you know I consider "bro" to be pretty much gender neutral and all but... if you wanted me to refer to you in some other way, I could? Wouldn't want you feeling uncomfortable due to the whole etymology even though I totally just meant it as a sign of affection.@@"<br>
<br>
[<<moveTo "event_admin_bro_1" 'Say you are happy continuing to be <<his npc_admin>> "bro".' 60 "<<set $scene.bro=true>>">>]<br>
<<if $options.isMobile>>
<<textbox "$scene.broreplacement" "Brosephine" autofocus>><br>
<br>
[<<moveTo "event_admin_bro_1" "Confirm your new nickname." 30>>]<br>
<<else>>
[<<link "Enter your new nickname">><<openDialog "Enter your new name:" "dialog_selectAdminNickname">><</link>>]
<</if>>
<<else>>
<<printNpcThemeReturn 'npc_admin' 600>>
<</if>>
</div>/*#
#desc: admin topic: talk about your gender identity
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.react = ($npc_admin.flags.knowgender != $player.identify_as)>>
<<if $scene.react>>
<<applyStress 10>>
<<set $npc_admin.flags.knowgender = $player.identify_as>>
<</if>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_21'
21
'theme_admin_nickname'
true
>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
Taking another swig of your drink, you get ready to tell your friend that you now identify as
<<switch $player.identify_as>>
<<case 'male'>>
a dude.
<<case 'agender'>>
agender.
<<case 'fluid'>>
gender fluid.
<<case 'female'>>
a woman.
<</switch>>
<br><br>
<<if $scene.react>>
<<switch $player.identify_as>>
<<case 'male'>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "male">>
"@@.npc_admin;Back on the <<if $npc_admin.fem>>guy's <</if>>team, eh? Cool, cool, well, so long as it makes you happy, here let me buy you another drink in celebration!@@"
<<else>>
"@@.npc_admin;Back on the <<if $npc_admin.fem>>guy's <</if>>team, eh? Cool, cool... thought it looks like you're sticking with some of the old uniform, eh?@@"<br>
<br>
<<He npc_admin>> smiles as you glance down at your not quite masculine outfit. You share a laugh and then continue on with your drinks.<br>
<br>
"@@.npc_admin;Though, I have to admit, <<if $npc_admin.fem>>skirts can be pretty nice. They<<else>>I am kinda envious of skirts. Ever since I wore one while hanging out with the Highland Brigade. These things<</if>> are very well ventilated and provide a lot more space down there than some trousers,@@" <<=setup.getNpcName('npc_admin', 'first')>> states, while nodding to <<himself npc_admin>> in agreement. You hope <<he npc_admin>> didn't see your blush from the extra information.
<</if>>
<<case 'agender'>>
"@@.npc_admin;Huh, genderless? Don't know too much about that, to be honest, but hey, whatever makes you happy, right? Here, let me buy you a drink, I mean, any reason for celebration am I right?@@"<br>
<br>
<<case 'fluid'>>
"@@.npc_admin;Genderfluid? Well, if that's the way you wanna go, I guess I've always been pretty gender-solid myself, always been happy <<if $npc_admin.fem>>just sticking with one gender for most of my life<<else>>being a dude and such, but maybe I'm just lucky like that<</if>>. Anyway congrats on figuring yourself out, let me buy you another drink in celebration!@@"
<<case 'female'>>
<<if $npc_admin.flags.reactnamechange && $npc_admin.flags.firstsawfemale != "">>
"@@.npc_admin;Right, yeah... I mean, the new name, the new clothes... that just follows right? Still, glad you clarified, I wouldn't want to have made an assumption. Well let me say for the the record that you are a lovely girl, and I'm proud to be your friend, plus, well... I like girls, so that's a double plus!@@"
<<elseif $npc_admin.dates == 1>>
"@@.npc_admin;Female? Woah... I mean, I guess there were signs, but, well... you know how oblivious I can be. <<if $npc_admin.fem>>Listen, if you ever need help or want to talk know that I'm here for you. Being trans myself I went through a similar process and there can be some unexpected challenges.<<else>>Plus... well, not exactly my area of expertise. I had a cousin that I was told was trans, but they came out before I met them, and it seemed impolite to pry, they were just who they were, y'know? With you though, well... I'm gonna be doing some research, I promise — I was raised right that it ain't anyone else's job to educate me, y'know?<</if>> But yeah, I guess I'm getting on a bit of a ramble but, well I guess what I want to say is that I support you, and if that means supporting you as a girl well... I mean, I like girls right?@@"
<<else>>
"@@.npc_admin;Female, huh? Wow... I mean... I guess it isn't that much of a shock given the changes you've been going through and well... I mean, <<if $npc_admin.fem>>if you ever need help or want to talk know that I'm here for you.<<else>>I tried to do a bit of reading y'know, when things started changing for you? Figured it was the least I could do to be a supportive friend.<</if>> I dunno, I've <<if $npc_admin.fem>>had to deal with similar problems before, so I want to help you if I can<<else>>always been just naturally happy being a dude, but I suppose I'm just lucky that way<</if>>, and hey, tech these days is pretty great, plus society in general is open to this stuff. Anyway, I guess I'm getting on a bit of a ramble but, well... I support you, and if that means supporting you as a girl well... I mean, I like girls right?@@"
<</if>>
<br><br>
<<printThought "Oh, thats awfully nice of... wait, what?">><br>
<br>
You stare at <<=setup.getNpcName('npc_admin', 'first')>> dumbfounded, for a moment that stretches beyond eternity and back. It takes <<him npc_admin>> way longer than expected to notice the way you're looking at <<him npc_admin>> at which point <<he npc_admin>> too turns red.<br>
<br>
"@@.npc_admin;No, wait. I mean I liked you when you weren't a girl, but I still like you as a girl, since you're a friend and stuff. Not that there's anything not okay with that and... I either need to be less drunk or more I think otherwise I am just making this worse, am I? Dang! I'll just shut my big mouth and pretend you already know what I meant.@@"<br>
<br>
There's an awkward pause. Maybe it's the booze, but you swear <<he npc_admin>> looks at you a bit different than <<he npc_admin>> has before, but it only lasts a minute. "@@.npc_admin;Sorry, what was I saying... anyway, yeah, you're awesome, your journey is valid and this friendship we've got? Only gonna get stronger! Here, let me order you another drink.@@" <<He npc_admin>> looks up the bar and waves to <<=setup.getNpcName('npc_barkeeper', 'first')>> "@@.npc_admin;The lady here wants another drink!@@"<br>
<br>
<<if $npc_barkeeper.flags.reactnamechange>>
She doesn't even blink. "@@.npc_barkeeper;Yes, ma'am, coming right up!@@"
<<else>>
She blinks, but quickly nods. "@@.npc_barkeeper;Yes, ma'am, coming right up.@@"
<</if>>
<br><br>
Even before you take a sip of the drink you feel a warm tingle going through your body, feeling quite blessed to have such a good friend.<br>
<br>
<<printThought "<<=setup.getNpcName('npc_admin', 'first')>> really is a great friend, but do I want more than a friend? Do I dare try?">>
<</switch>>
<br><br>
<<if $player.identify_as != "male" && $npc_admin.call_player == "bro">>
<<He npc_admin>> thinks for a moment and takes a drink before asking a follow-up question. "@@.npc_admin;So, hmm, you know I consider "bro" to be pretty much gender neutral and all but... if you wanted me to refer to you in some other way, I could? Wouldn't want you feeling uncomfortable due to the whole etymology even though I totally just meant it as a sign of affection.@@"<br>
<br>
[<<moveTo "event_admin_bro_1" 'Say you are happy continuing to be <<his npc_admin>> "bro".' 60 "<<set $scene.bro=true>>">>]<br>
<<if $options.isMobile>>
<<textbox "$scene.broreplacement" "Brosephine" autofocus>><br>
<br>
[<<moveTo "event_admin_bro_1" "Confirm your new nickname." 30>>]<br>
<<else>>
[<<link "Enter your new nickname">><<openDialog "Enter your new name:" "dialog_selectAdminNickname">><</link>>]
<</if>>
<<else>>
<<printNpcThemeReturn 'npc_admin' 600>>
<</if>>
<<else>>
You wait a moment for <<him npc_admin>> to react, but <<his npc_admin>> face is more quizzical than anything else. "@@.npc_admin;Easy there, <<callPlayer "npc_admin">>! Maybe you ought to cut back a bit, I already know that!@@"<br>
<br>
You feel a bit silly as you realise that <<hes npc_admin>> right; maybe you have had a bit much to drink this evening.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
<</if>>
</div>/*#
#desc: admin talk about referring to manager as "mistress"
#status: FINISHED 0.7.2.0
#ignore_spell: factly
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_5'
5
'theme_admin_work_situation_1'
true
>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_admin;So... I've been meaning to ask. I heard you call <<=setup.getNpcName('npc_manager', 'first')>> <<=setup.getNpcName('npc_manager', 'title')>>... what's up with that?@@"<br>
<br>
<<printThought "Oh shit, what do I tell <<him npc_admin>>?">><br>
<br>
Met with initial silence, <<he npc_admin>> continues on, probing for an explanation. "@@.npc_admin;I mean, I get that <<=setup.getNpcName('npc_manager', 'first')>> has a bit of an... unusual management style and hell, I used to jokingly call you "work slave" back in the day so, like if this is just a game that's cool or whatever I just, well, just wanted to make sure you're okay, y'know?@@"<br>
<br>
<<printThought "Shit, I need to say something or who knows what conclusion <<hes npc_admin>> going to come to?">><br>
<br>
[<<moveTo "event_admin_theme_mistress_2" "Break down and tell <<him npc_admin>> the truth... ALL of the truth." 600 "<<set $scene.action='truth'>>">>]<br>
[<<moveTo "event_admin_theme_mistress_2" 'Matter-of-factly explain that yes, <<=setup.getNpcName("npc_manager", "other")>> is your <<=setup.getNpcName("npc_manager", "title")>>... and you would not have it any other way.' 600 "<<set $scene.action='enthusiast'>>">>]<br>
<<if $npc_admin.flags.monogomous_manager || !State.hasPlayed("event_work_manager_and_admin_3")>>
[<<moveTo "event_admin_theme_mistress_2" "Laugh it off as a game." 600 "<<set $scene.action='game'>>">>]
<<else>>
[<<moveTo "event_admin_theme_mistress_2" "Laugh it off as a game... like how <<he npc_admin>> comes by to fuck her every few days." 600 "<<set $scene.action='game'>>">>]
<</if>>
</div>/*#
#desc: admin talk about referring to manager as "mistress"
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != "game">>
<<set $npc_admin.flags.knowManagerTruth = 2>>
<<include "checkAdminTruth">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'truth'>>
You try to hold things together but once the floodgates are open, you can't seem to stop telling <<him npc_admin>> the truth. Drinks all but forgotten, <<he npc_admin>> sits wide-eyed as you explain everything that has happened to you, from the "accident" to your re-employment to every transformation that you've gone through since and, especially <<=ps(setup.getNpcName('npc_manager', 'formal'))>> central role in all of it.<br>
<br>
When you finally come to the end, <<he npc_admin>> sits in shock, <<his npc_admin>> eyes hollow as <<he npc_admin>> tries to process the context-dump you just unloaded on <<him npc_admin>>.<br>
<br>
"@@.npc_admin;So, <<=setup.getNpcName('npc_manager', 'first')>>, sorry "<<=setup.getNpcName('npc_manager', 'formal')>>" is part of some sort of company-wide conspiracy to... what? Turn people into bimbofied<<if $fetish.sissy>>, sissy<</if>> sex slaves?@@"<br>
<br>
You shrug, not having any idea what the end "goal" is, or even how vast the conspiracy really is.<br>
<br>
"@@.npc_admin;Wow, sorry, I... well, this puts everything into a new light but...@@" <<He npc_admin>> takes a deep breath. "@@.npc_admin;You're my friend, my <<callPlayer "npc_admin">> and well... I gotta stand up against this. Next time I'm in the office I'm going to march up to <<=setup.getNpcName('npc_manager', 'first')>> and — well, to be honest I'm not quite sure what happens next, but I'm going to put a stop to this!@@"<br>
<br>
<<printThought "Oh shit, even after everything I said <<he npc_admin>> doesn't get what <<hes npc_admin>> getting into. If I don't stop <<him npc_admin>>...">><br>
<br>
[<<moveTo "event_admin_theme_mistress_3" "Remain silent." 60 "<<set $scene.silent = true>>">>] <<hint $options "This could have dire consequences...">><br>
[<<moveTo "event_admin_theme_mistress_3" "Try to convince <<him npc_admin>> that a head-on confrontation is a bad idea." 300 "<<set $scene.silent = false>>">>]
<<case "enthusiast">>
You grin and explain that, while it may violate some sort of theoretical "best practices" for work relationships, your manager is your <<=setup.getNpcName('npc_manager', 'title')>> and you love it, not just serving her, but all the wonderful things she's done for, and to, you as well. That, as crazy as your journey has been since taking this "new" job, you love it, and consider it more seizing an opportunity you never knew you wanted, rather than any sort of victimisation.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> remains suspicious and you clarify that, of course, you're aware that the company itself is... less than ethical, though what company isn't? And that, were you someone else, what <<=setup.getNpcName('npc_manager', 'formal')>> did to you would have been wrong, but you liken it to when <<=setup.getNpcName('npc_admin', 'first')>> has a hard sparring session with a fellow black belt, if <<he npc_admin>> kicked someone at random that hard, that would be assault... and probably some broken bones, but because it's consensual and agreed upon, it's all fine.<br>
<br>
"@@.npc_admin;Huh... guess I never thought of it that way. Still, I think I'm going to keep a closer eye on things at the company and if things turn sour or whatever, well... I'm always here for you <<callPlayer "npc_admin">>, right?@@"<br>
<br>
You grin and thank <<him npc_admin>> for always being a true friend as you order another round.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
<<case "game">>
<<if $npc_admin.flags.monogomous_manager>>
Before <<his npc_admin>> supposition can spin any further out of control, you laugh things off, explaining that yeah, it's just a little "game" between you and your boss, like how <<he npc_admin>> used to call you a "work slave." <br>
<br>
<<He npc_admin>> seems a suspicious for a moment and your heart catches in your throat hoping that <<he npc_admin>> isn't going to question you further, but <<he npc_admin>> laughs it off and you sigh with relief.<br>
<br>
"@@.npc_admin;That <<=setup.getNpcName('npc_manager', 'first')>>... she certainly is something. Very possessive in the way she talks about you, I might add.@@"<br>
<br>
The two of your chat a bit more about some of the more "innocent" idiosyncrasies of your mutual boss and then it's time to leave.<br>
<br>
[<<moveTo "room_usual_place_inside" "Leave." 300>>]
<<else>>
Before <<his npc_admin>> supposition can spin any further out of control, you laugh things off, explaining that yeah, it's just a little "game" between you and your boss, kind of like how <<he npc_admin>> drops by occasionally to fuck her.<br>
<br>
Your casual mentioning of <<his npc_admin>> liaisons with <<=setup.getNpcName('npc_manager', 'formal')>> stops <<him npc_admin>> cold. <<He npc_admin>> takes a long, slow drink to buy time to compose a response while glancing around the bar suspiciously.<br>
<br>
"@@.npc_admin;Heh, I guess the walls aren't soundproofed then, eh?@@"<br>
<br>
You shake your head.<br>
<br>
"@@.npc_admin;Whelp... yup, yeah, dunno what else to say I mean, you know me, and her? Bit of a tight-ass in some ways, though dunno yet if that includes literal if you know what I mean, but yeah... not long after I got moved up she came on to me and well... who'd say no to that body, eh?@@"<br>
<br>
<<printThought "Yeah, saying no to HER, that is certainly a thing that works out...">><br>
<br>
You just nod, telling <<him npc_admin>> a couple tame anecdotes about your <<=setup.getNpcName('npc_manager', 'title')>> and point out that hey, her encouragement has really helped you "come out of your shell" after all the bad stuff right after your breakup.<br>
<br>
Seemingly finally satisfied, <<he npc_admin>> wishes you a good evening and you part ways.<br>
<br>
[<<moveTo "room_usual_place_inside" "Leave." 300>>]
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: tell/not admin the truth about your situation
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.knowManagerTruth = 2>>
<<include "checkAdminTruth">>
<<if $scene.silent>>
<<addWorkEvent 'admin_morning_confrontation'>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.silent>>
You remain silent as you watch the wheels in <<his npc_admin>> head spin as <<he npc_admin>> considers how to "save" you.<br>
<br>
Ordering another round of drinks, the distractions of the bar prove sufficient to move things forward though you can't help but worry about what is going to happen at work...
<<else>>
It takes time, and several more drinks, but you manage to convince <<him npc_admin>> that, at least for now, <<he npc_admin>> needs to keep your secret and let things play out.<br>
<br>
"@@.npc_admin;I guess you're the expert on what you can handle, and you've known <<=setup.getNpcName('npc_manager', 'Director')>> for longer too but... well, you let me know if things get worse and let's focus on coming up with a plan to get you extracted and back to yourself, okay?@@"<br>
<br>
You promise to keep <<him npc_admin>> in the loop going forward.
<</if>>
<br><br>
Still looking a bit concerned, <<he npc_admin>> wishes you a good evening and you part ways.<br>
<br>
[<<moveTo "room_usual_place_inside" "Leave." 300>>]
</div>/*#
#desc: talk to admin about CDS merger presentation brazen variant
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up the recent presentation the two of you made to the employees of your old company and how <<=setup.getNpcName('npc_admin', 'first')>> blind-sided you with a reveal before the entire staff.<br>
<br>
<<He npc_admin>> blushes awkwardly and stares into <<his npc_admin>> drink.<br>
<br>
"@@.npc_admin;Yeah, it was <<=ps(setup.getNpcName('npc_manager', 'first'))>> idea, she said it would make things more "authentic" and made me promise not to let you in on it beforehand... that said, well... you took the ball and ran with it for sure, seeing everyone's face when you made your reveal, and then the applause after! Well, I guess it all worked out, eh?@@"<br>
<br>
You have to agree, after all the whole thing seems to have pushed you to a new level of confidence.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: talk to admin about CDS merger presentation humiliation variant
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up the recent presentation the two of you made to the employees of your old company and how <<=setup.getNpcName('npc_admin', 'first')>> blind-sided you with a reveal before the entire staff.<br>
<br>
<<He npc_admin>> blushes awkwardly and stares into <<his npc_admin>> drink.<br>
<br>
"@@.npc_admin;Yeah, it was <<=ps(setup.getNpcName('npc_manager', 'first'))>> idea, she said it would make things more "authentic" and made me promise not to let you in on it beforehand... again, really sorry for putting you on the spot, I mean, the reception you got was so positive! But... still, I should have told <<=setup.getNpcName('npc_manager', 'first')>> no but... well, you know how she is.@@"<br>
<br>
You rib <<him npc_admin>> a bit about things, but <<hes npc_admin>> right about your <<=setup.getNpcName('npc_manager', 'title')>> and you conclude telling <<him npc_admin>> there's no hard feelings.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: talk to admin about CDS merger presentation flee variant
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up the recent presentation the two of you made to the employees of your old company and how <<=setup.getNpcName('npc_admin', 'first')>> blind-sided you with a reveal before the entire staff.<br>
<br>
<<He npc_admin>> blushes awkwardly and stares into <<his npc_admin>> drink.<br>
<br>
"@@.npc_admin;Yeah, it was <<=ps(setup.getNpcName('npc_manager', 'first'))>> idea, she said it would make things more "authentic" and made me promise not to let you in on it beforehand... judging how you ran away... look I'm so sorry about that, I had no idea you'd react so badly and I promise I'll never do anything like that again without running it by you first.@@"<br>
<br>
You still don't feel right about what happened, but you accept <<his npc_admin>> apology, it isn't like it's the first time your <<=setup.getNpcName('npc_manager', 'title')>> has put you in an awkward situation; and you imagine it's the same for <<=setup.getNpcName('npc_admin', 'first')>> trying to hold on to <<his npc_admin>> recent promotion.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: talk to admin about his relationship with your manager
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up the topic of your <<=setup.getNpcName('npc_manager', 'title')>> and <<=setup.getNpcName('npc_admin', 'first')>> chuckles.<br>
<br>
<<if $npc_admin.flags.promotion>>
<<if setup.findThemeId('npc_psychiatrist', 'admin', 'theme_psychiatrist_admin_5') != -1>>
<<if $npc_admin.flags.monogomous_manager>>
"@@.npc_admin;Gotta tell you, it's been a bit tricky to keep my word. I wouldn't call it her throwing herself at me but... she seems frustrated that I've been carefully keeping everything professional.@@"<br>
<br>
[<<moveTo "event_admin_theme_manager_2" "Say that you've changed your mind and <<he npc_admin>> can do things with her if <<he npc_admin>> wants." 300 "<<set $scene.monogomous_manager=false>>">>]<br>
[<<moveTo "event_admin_theme_manager_2" "Thank <<him npc_admin>> for not doing anything with your manager." 300 "<<set $scene.monogomous_manager=true>>">>]
<<else>>
"@@.npc_admin;Sorry if we're a bit noisy sometimes. It was a bit odd, the first time she asked to fuck in her office, but, well... if the Director of HR is telling you to do it, it can't be against policy, right?@@" <<He npc_admin>> laughs "@@.npc_admin;Either way, she's quite the lively one!@@"<br>
<br>
[<<moveTo "event_admin_theme_manager_2" "Nod and wish <<him npc_admin>> luck." 300 "<<set $scene.monogomous_manager=false>>">>]<br>
[<<moveTo "event_admin_theme_manager_2" "Say that, actually, you'd prefer it if <<he npc_admin>> didn't pursue your manager anymore." 300 "<<set $scene.monogomous_manager=true>>">>]
<</if>>
<<else>>
"@@.npc_admin;Interesting woman, I'm still trying to figure her out as a boss, you got any tips?@@"<br>
<br>
<<printThought "A whole lot that I'd get in trouble for telling you about...">><br>
<br>
You give some vague response to just keep on <<his npc_admin>> toes around her.<br>
<br>
<<if $npc_admin.flags.monogomous_manager>>
"@@.npc_admin;Will do, and I'll feel better knowing you're watching out for me! Speaking of watching out, how's it going between the two of you, need me to do any wingman work?@@"<br>
<br>
[<<moveTo "event_admin_theme_manager_2" "Say that you've decided that <<he npc_admin>> can pursue her if <<he npc_admin>> wants." 300 "<<set $scene.monogomous_manager=false>>">>]<br>
[<<moveTo "event_admin_theme_manager_2" "Say you're doing okay on your own and change the subject." 300 "<<set $scene.monogomous_manager=true>>">>]
<<else>>
"@@.npc_admin;Will do,'@@" <<he npc_admin>> continues with a grin. "@@.npc_admin;Damn, you mentioning her has me thinking of how much of a firecracker she must be in bed... though I guess that's not liable to happen now that's she's my boss.@@"<br>
<br>
<<printThought "If you only knew...">><br>
<br>
[<<moveTo "event_admin_theme_manager_2" 'Shrug, but say "you never know."' 300 "<<set $scene.monogomous_manager=false>>">>]<br>
[<<moveTo "event_admin_theme_manager_2" "Say that, actually, you'd prefer it if <<he npc_admin>> didn't pursue your manager." 300 "<<set $scene.monogomous_manager=true>>">>]
<</if>>
<</if>>
<<else>>
"@@.npc_admin;What of her? She keeping you in line? Crackin' the whip and all that?@@"<br>
<br>
You think you manage to hide your shocked reaction at how accurate <<his npc_admin>> assessment is as you laugh things off.<br>
<br>
<<if $npc_admin.flags.monogomous_manager>>
"@@.npc_admin;Sorry, just teasin'@@" <<he npc_admin>> continues with a grin. "@@.npc_admin;Any luck luck going further? I know you called dibs but, well, if you need some wingman help I'd do what I can.@@"<br>
<br>
[<<moveTo "event_admin_theme_manager_2" "Say that you've decided that <<he npc_admin>> can pursue her if <<he npc_admin>> wants." 300 "<<set $scene.monogomous_manager=false>>">>]<br>
[<<moveTo "event_admin_theme_manager_2" "Say you're doing okay on your own and change the subject." 300 "<<set $scene.monogomous_manager=true>>">>]
<<else>>
"@@.npc_admin;Sorry, just teasin'@@" <<he npc_admin>> continues with a grin. "@@.npc_admin;Damn, you mentioning her has me thinking of how much of a firecracker she must be in bed... if only I could get the opportunity to talk her into joining me!@@"<br>
<br>
[<<moveTo "event_admin_theme_manager_2" "Nod and wish <<him npc_admin>> luck." 300 "<<set $scene.monogomous_manager=false>>">>]<br>
[<<moveTo "event_admin_theme_manager_2" "Say that, actually, you'd prefer it if <<he npc_admin>> didn't pursue your manager." 300 "<<set $scene.monogomous_manager=true>>">>]
<</if>>
<</if>>
</div>/*#
#desc: talk to admin about his relationship with your manager
#status: FINISHED 0.7.2.0
#ignore_spell: dl,d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.change = $scene.monogomous_manager != $npc_admin.flags.monogomous_manager>>
<<if $scene.change>>
<<set $npc_admin.flags.monogomous_manager = $scene.monogomous_manager>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if !$scene.change>>
<<if $npc_admin.flags.monogomous_manager>>
You thank <<=setup.getNpcName('npc_admin', 'first')>> for the update and for keeping <<his npc_admin>> word vis a vis relations with <<=setup.getNpcName('npc_manager', 'other')>>.<br>
<br>
"@@.npc_admin;Of course! You're my <<callPlayer "npc_admin">>, we gotta look out for one another.@@"
<<else>>
You thank <<=setup.getNpcName('npc_admin', 'first')>> for the update and wish <<him npc_admin>> continued fortune with <<=setup.getNpcName('npc_manager', 'other')>>.
<</if>>
<<else>>
<<if setup.findThemeId('npc_psychiatrist', 'admin', 'theme_psychiatrist_admin_5') != -1>>
<<if $npc_admin.flags.monogomous_manager>>
You thank <<=setup.getNpcName('npc_admin', 'first')>> for the update, but ask if <<he npc_admin>> could please stop <<if $npc_admin.flags.promotion>>getting with<<else>>pursuing<</if>> your <<=setup.getNpcName('npc_manager', 'title')>>?<br>
<br>
<<if $npc_admin.flags.promotion>>
<<=setup.getNpcName('npc_admin', 'first')>> frowns. "@@.npc_admin;That's a big ask... and I doubt <<=setup.getNpcName('npc_manager', 'first')>> is gonna be happy about losing access to this dick but... well, you're my <<callPlayer "npc_admin">> and that comes first so yeah, I'll stop.@@"
<<else>>
<<=setup.getNpcName('npc_admin', 'first')>> shrugs. "@@.npc_admin;Sure, I mean it hasn't exactly come up, but hey, if that'd make you more comfortable I'll certainly clear the way for my best <<callPlayer "npc_admin">>.@@"
<</if>>
<<else>>
You thank <<=setup.getNpcName('npc_admin', 'first')>> for keeping <<his npc_admin>> word, but say that, actually, you think you'd be okay if <<he npc_admin>> wanted to pursue <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<if $npc_admin.flags.promotion>>
"@@.npc_admin;Seriously? Thanks, <<callPlayer "npc_admin">>. I've been keeping it on the DL due to your feelings, but, well...<<=setup.getNpcName('npc_manager', 'first')>> has been coming on to me hard. Being able to slip her a bit of the old D should really smooth things out... maybe even get her to relax a bit overall!@@"
<<else>>
"@@.npc_admin;Coo, coo. I mean, not that anything's come up, but knowing the option is there, well... thanks. I guess you've decided it's just professional between the two of you?@@"
<</if>>
<</if>>
<<else>>
You thank <<him npc_admin>> for the update, but say you've changed your mind about <<him npc_admin>> pursuing your boss.<br>
<br>
<<if $npc_admin.flags.monogomous_manager>>
"@@.npc_admin;Sure, I wouldn't want to make you uncomfortable like that.@@"
<<else>>
"@@.npc_admin;Coo, coo. I mean, not that anything's come up, but knowing the option is there, well... thanks. I guess you've decided it's just professional between the two of you?@@"
<</if>>
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: change what admin refers to you as
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.bro>>
<<set $scene.noneName = $scene.broreplacement == "">>
<<if !$scene.noneName>>
<<set $npc_admin.call_player = $scene.broreplacement>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.bro>>
You assure <<him npc_admin>> that "bro" can stay, no matter what happens to you.<br>
<br>
"@@.npc_admin;Very good. Which reminds me bro, time for more drinks!@@"<br>
<br>
The conversation soon turns into a thought experiment; if it would even be possible to dress <<=setup.getNpcName('npc_admin', 'first')>> in something and have it <<if $npc_admin.fem>>hide her physique<<else>>not come off as intensely masculine<</if>>. You can hear from the other side of the bar, "@@.npc_barkeeper;<<if $npc_admin.fem>>She'll<<else>>He'll<</if>> look great in anything, even if it's nothing!@@" not seeing who exactly shouted it.
<<elseif $scene.noneName>>
You don't say anything for several awkward seconds.<br>
<br>
"@@.npc_admin;You still thinking? Like, take your time... but I need to refer to you as something, right?@@"<br>
<br>
[<<moveTo "event_admin_bro_1" 'Say you are happy continuing to be <<his npc_admin>> "bro."' 0 "<<set $scene.bro=true>>">>]<br>
<<if $options.isMobile>>
<<textbox "$scene.broreplacement" "Brosephine" autofocus>><br>
<br>
[<<moveTo "event_admin_bro_1" "Confirm your new nickname." 30>>]<br>
<<else>>
[<<link "Enter your new nickname">><<openDialog "Enter your new name:" "dialog_selectAdminNickname">><</link>>]
<</if>>
<<else>>
You let <<him npc_admin>> know, if <<he npc_admin>> isn't going to use your name, you'd like <<him npc_admin>> to refer to you as <<callPlayer "npc_admin">> from now on.<br>
<br>
<<if $npc_admin.call_player == $player.first_name>>
"@@.npc_admin;You know a nickname is supposed to be different from your actual name... right? But, hey, if that's what you want me to call you, it'll be <<callPlayer "npc_admin">> from now on!@@"
<<elseif $npc_admin.call_player == $player.last_name>>
"@@.npc_admin;Wanting to go just by your last name? I can dig it, got a bit of a moviestar vibe, so that'll be <<callPlayer "npc_admin">> from now on!@@"
<<else>>
"@@.npc_admin;You got it, <<callPlayer "npc_admin">>, and now... time for more drinks!@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: dialog box for choosing nickname admin will use with you
#status: RELEASED 0.6.0.0
#*/
<center>
<<textbox "$scene.broreplacement" "Brosephine" autofocus>>
</center>
<br>
<<set $scene.bro = false>>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'event_admin_bro_1'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: bring up changing what he calls you
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up that you'd like <<him npc_admin>> to use a different nickname with you.<br>
<br>
<<if $scene.bro>>
"@@.npc_admin;Bro not doin' it for ya? I get it, its cool. I mean, I don't want to be saying something that makes you uncomfortable so what would you rather I use?@@"
<<else>>
"@@.npc_admin;You're makin' me work here, <<=$player.first_name>>!@@" <<he npc_admin>> says with a laugh. "@@.npc_admin;Don't worry about it though, I mean using someone's preferred name? That's like the simplest way to be polite, so, what would you rather I call you now?@@"
<</if>>
<br><br>
<<if $options.isMobile>>
<<textbox "$scene.broreplacement" "Brosephine" autofocus>><br>
<br>
[<<moveTo "event_admin_bro_1" "Confirm your new nickname." 30>>]<br>
<<else>>
[<<link "Enter your new nickname">><<openDialog "Enter your new name:" "dialog_selectAdminNickname">><</link>>]
<</if>>
</div>/*#
#desc: talk about his first training lesson
#status: FINISHED 0.7.8.0
#ignore_spell: factly
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up the recent event at work where <<he npc_admin>> flogged you under <<=ps(setup.getNpcName("npc_manager","formal"))>> direction.<br>
<br>
<<if $player.flags.collar.owner == "npc_admin">>
<<=setup.getNpcName("npc_admin","first")>> just smiles at you and you find your hand brushing the collar, or rather, <<if $npc_admin.fem>>HER<<else>>HIS<</if>> collar around your neck.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
<<elseif $npc_admin.flags.keyholder>>
<<=setup.getNpcName("npc_admin","first")>> grins. "@@.npc_admin;Well, you're into a bit more than flogging, right?@@" <<He npc_boss>> winks at you from across the table and you <<if setup.checkItemTypeWorn("cage")>>feel excitement stirring within your <<if setup.isCage()>>cage<<else>>chastity<</if>><<else>>feel a twinge at being out of chastity<</if>>. "@@.npc_admin;Still, that aside... talk about a weird company!@@"<br>
<br>
The two of you share a laugh at the absurdity of life at the company... what else can you do, really?<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
<<elseif State.hasPlayed("event_sexclub_date_admin_8")>>
<<=setup.getNpcName("npc_admin","first")>> grins. "@@.npc_admin;Well, you're into a bit more than flogging, right?@@" <<He npc_boss>> winks at you from across the table and you think back to your steamy night together at the club. "@@.npc_admin;Still, that aside... talk about a weird company!@@"<br>
<br>
The two of you share a laugh at the absurdity of life at the company... what else can you do, really?<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
<<elseif $npc_manager.stage >= 5>>
"@@.npc_admin;Given what I know about the company now... well, I guess that could be considered tame, right?@@"<br>
<br>
The two of you share a laugh at the absurdity of life at the company... what else can you do, really?<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
<<elseif $npc_admin.flags.knowManagerTruth >=2>>
"@@.npc_admin;Yeah, that was... something. You sure about this company? I know you said you had a plan but... if this is what you have to go through wouldn't you be better off just quitting and finding a new job?@@"<br>
<br>
You re-assure <<him npc_admin>> that it really isn't that bad and steer the conversation away towards <<his npc_admin>> new promotion.<br>
<br>
"@@.npc_admin;Well, fortunately I haven't had to do anything like, well... you know, still, <<=setup.getNpcName("npc_manager","first")>> wasn't kidding when she talked about how intense some of the senior staff is...@@"<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
<<else>>
"@@.npc_admin;Yeah, uh... I'm sorry about that, I guess there is a lot more going on at work than I know about... though I get the feeling you've been aware of things for a long time...@@"<br>
<br>
[<<moveTo "event_admin_theme_mistress_2" "Break down and tell <<him npc_admin>> the truth... ALL of the truth." 600 "<<set $scene.action='truth'>>">>]<br>
[<<moveTo "event_admin_theme_mistress_2" 'Matter-of-factly explain that yes, <<=setup.getNpcName("npc_manager", "other")>> is your <<=setup.getNpcName("npc_manager", "title")>>... and you would not have it any other way.' 600 "<<set $scene.action='enthusiast'>>">>]<br>
<<if $npc_admin.flags.monogomous_manager>>
[<<moveTo "event_admin_theme_mistress_2" "Laugh it off as a game." 600 "<<set $scene.action='game'>>">>]
<<else>>
[<<moveTo "event_admin_theme_mistress_2" "Laugh it off as a game... like how <<he npc_admin>> comes by to fuck your manager every few days." 600 "<<set $scene.action='game'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: admin theme: talk about work "situation"
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You lower your voice and bring up the overall "situation" at work.<br>
<br>
<<if $npc_manager.stage < 5>>
"@@.npc_admin;Yeah, <<callPlayer "npc_admin">>, I mean calling your boss <<=setup.getNpcName("npc_manager","title")>>? All the changes you've had to go through, hell, just the weirdness of you getting the job in the first place... as I said before, if you want me to do something, just say the word...@@"<br>
<br>
[<<moveTo "theme_admin_work_situation_2" "Say you want <<his npc_admin>> help." 60 "<<set $scene.help = true>>">>] <<hint $options "This could have dire consequences...">><br>
[<<moveTo "theme_admin_work_situation_2" "Tell <<him npc_admin>> that you're okay, <<he npc_admin>> doesn't need to do anything." 300 "<<set $scene.help = false>>">>]
<<else>>
<<=setup.getNpcName("npc_admin","first")>> shudders in memory of <<his npc_admin>> period of evil.<br>
<br>
"@@.npc_admin;Yeah... that company... well, I think my normal plan of rushing in and punching things isn't quite gonna work... but I'm here for you if you can figure something out...@@"<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
<</if>>
</div>/*#
#desc: admin theme: talk about work "situation" - ask for help
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.help>>
<<addWorkEvent 'admin_morning_confrontation'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
You somehow manage to keep yourself together as you confess that you can't handle work anymore and you need <<his npc_admin>> help.<br>
<br>
<<He npc_admin>> takes a long swig of <<his npc_admin>> beer and nods. "@@.npc_admin;You got it, <<callPlayer "npc_admin">>. Trust me, they won't know what hit 'em.@@"<br>
<br>
You feel a twinge, as you've just set something in motion. You order another beer to clear your head, nobody messes with the big <<guy npc_admin>>, so everything will turn out okay, right?
<<else>>
You assure <<him npc_admin>> that you're doing alright, and that <<he npc_admin>> shouldn't do anything that could ruffle feathers.<br>
<br>
<<He npc_admin>> takes a sip of <<his npc_admin>> beer and nods. "@@.npc_admin;Alright, well, you're the boss... er, well...@@" <<He npc_admin>> shakes <<his npc_admin>> head "@@.npc_admin;You know what I mean. And if things change, well, you just let me know, I'll always be there for you, <<callPlayer "npc_admin">>.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: theme: admin talk about boss
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You lower your voice slightly and ask <<=setup.getNpcName('npc_admin', 'first')>> what <<he npc_admin>> thinks of the company's CEO — <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
<<if $npc_admin.flags.promotion>>
<<if $npc_manager.stage == 3>>
<<He npc_admin>> shrugs. "@@.npc_admin;I've only met <<him npc_boss>> once. Got called in after my promotion... I dunno, there's something off about <<him npc_boss>>, and the way <<his npc_boss>> secretary looked at <<him npc_boss>>? Kind of creepy, like she was drugged and infatuated or something. I'd watch out for <<him npc_boss>>, if I were you.@@"
<<elseif $npc_manager.stage == 4>>
<<He npc_admin>> reflexively glances around. "@@.npc_admin;Yeah, I dunno, <<callPlayer "npc_admin">>. I've only been in a couple meetings with <<him npc_boss>> thus far, but there's something off about <<him npc_boss>>. Dunno what it is but I just get a bad vibe whenever I'm in <<his npc_boss>> presence. You watch out, y'hear?@@"
<<elseif $npc_manager.stage == 5>>
You see the veins on <<his npc_admin>> neck swell in anger at the mention of <<=setup.getNpcName('npc_boss', 'first')>>. "@@.npc_admin;What the <<if $npc_boss.fem>>evil bitch<<else>>son-of-a-bitch<</if>> did to me... and made me do to others? You let me know the time, the place, and the plan, because <<=setup.getNpcName('npc_boss', 'first')>> needs to be removed... but we both know that ain't gonna be easy.@@"
<<else>>
ERROR: unhandled
<</if>>
<<else>>
<<He npc_admin>> shrugs. "@@.npc_admin;Dunno, never met <<him npc_boss>>. Though you figure most of those exec sorts are all the same — crazy rich sociopaths, y'know?@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: theme: admin talk about starting therapy
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You mention to <<=setup.getNpcName('npc_admin', 'first')>> how you've been going to therapy, having been introduced to such as a sort of "perk" of your new job.<br>
<br>
"@@.npc_admin;Hey, that's great! I know some <<if $options.fem>>folks<<else>>guys<</if>> from my army days that saw some real good results from seeing a therapist. Given all the stuff that happened to you, and your relationship problems... well, it's better late than never, right?@@"<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: theme: admin talk about vr hypno
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You mention to <<=setup.getNpcName('npc_admin', 'first')>> how you've enrolled in an experimental therapy program.<br>
<br>
"@@.npc_admin;Huh, interesting. I guess you probably have an NDA and can't tell me any details, but I hope it works out for you!, I've told you before, therapy can be a really great thing... with the right therapist.@@"<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: theme: admin talk about his sex with manager
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up <<=ps(setup.getNpcName('npc_admin', 'first'))>> periodic visits to have sex with your manager.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> pauses for a moment, but when you don't act upset <<he npc_admin>> grins. "@@.npc_admin;Yeah... yeah... I gotta say, she's a wild one! But it's cool, y'know? Nothing serious, just an opportunity for the two of us to blow off some energy and then get back to work.@@"<br>
<br>
<<if $npc_admin.flags.manager_cleanup>>
[<<moveTo "event_admin_theme_manager_sex_2" 'Tell <<him npc_admin>> about how you "clean up" after <<he npc_admin>> leaves.' 60>>]<br>
<</if>>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: theme: admin talk about his sex with manager
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_admin', 'first')>> about your "job" of licking <<his npc_admin>> fresh cum out of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordVagina>> after <<he npc_admin>> has finished having sex with her.<br>
<br>
<<if $npc_admin.flags.relationship == "">>
<<He npc_admin>> laughs and you realise <<he npc_admin>> must think you're joking. "@@.npc_admin;Hah! You had me there, for a moment. Sure, <<=setup.getNpcName('npc_manager', 'other')>> runs things a bit different but something like that would be straight out of a porno!@@"
<<else>>
<<He npc_admin>> pauses for a moment and then chuckles. "@@.npc_admin;You know... I guess I shouldn't be surprised, considering everything else. I guess if you keep enjoying your job it's fine? Crazy company though, am I right?@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: theme: admin talk about his experience in the war
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up the topic of <<=ps(setup.getNpcName('npc_admin', 'first'))>> experience in the war.<br>
<br>
<<He npc_admin>> sighs. "@@.npc_admin;You know I don't like talkin' about that stuff... come on, we were having fun, can we discuss something else?@@"<br>
<br>
<<if $npc_admin.flags.knowManagerTruth >= 2>>
[<<moveTo "event_admin_theme_war_2" 'Say you were hoping <<his npc_admin>> experience might help with some of the stuff going on in your life...' 300>>]<br>
<<else>>
<<printThought "Yeah... I guess that would kill the mood, though maybe <<he npc_admin>>'d be willing to open up more if I was willing to open up about the truth of what's going on with me...">><br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: theme: admin talk about his experience in the war
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You apologise for bringing up <<his npc_admin>> traumatic past, but explain that you were hoping some of <<his npc_admin>> experience might be applicable to your own situation.<br>
<br>
<<He npc_admin>> takes a long drink, "@@.npc_admin;yeah... I see how that makes sense... I mean, most of it was fine, y'know? Basic training was easy, my first CO was great... but it was after <<he npc_landlord>> got injured on a mission and we were transferred under another command, well... that's when it all went to shit.@@"<br>
<br>
<<He npc_admin>> signals for another beer as you put a hand on <<his npc_admin>> shoulder in comfort. "@@.npc_admin;So the new command kind of shuffled things around and I ended up under this obsessed-with-promotion of a lieutenant. Now I mean, not like I hadn't dealt with shitty officers before, right, I mean, it's the military... this <<guy>> though... total psychopath, didn't care about anything but that the after-action summary would put <<him>> closer to getting Captain's bars. Well... things come down and we get a mission to take out an enemy fortress and this chowder-brain decides that, rather than waiting for support from the rest of the battalion, we're going to glory <<boy>> things and try to take the enemy by surprise... by making our attack straight through the nearby civilian town, since <<he>> figured the enemy would be less likely to shell us if it means bombing their own people.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> shakes <<his npc_admin>> head. "@@.npc_admin;Talk about wrong on every account... anyway, <<he>> lays out this plan for me and the other sergeant and, well... I kind of lost my cool. No... really lost my cool, as in <<he>> had a broken jaw, orbital bone and three cracked ribs before anyone managed to pull me off of <<him>>. Of course... that's when the realities of war made things go weird. Obviously I should have been court-martialed on the spot... but we're literally a day away from when we were supposed to start the offensive, and already way behind enemy lines... plus nobody in the platoon liked the asshole so... well, we bandaged <<him>> up so <<he>> couldn't move and we did the fucking mission. And did it properly — no civilian casualties, objective secured, enemy surrendered, we're talking Battle of Cannae levels of perfection. Battles over, we're back with the main group and, well... everything comes out. Nobody wants to address things directly/tank morale after such a successful fight so they just... quietly pull me out while they decide what to do, then a week later the war's over and it just isn't worth re-litigating and they figure the easiest solution is just discharge my ass along with so many others and wash their hands of the whole matter.@@"<br>
<br>
<<He npc_admin>> shrugs and finishes <<his npc_admin>> drink. "@@.npc_admin;So yeah... dunno what you can take from that for your own case. I guess that the secret to taking out an entrenched, evil authority figure is to make sure your actions are otherwise unimpeachable... and that you have some good friends? Well, I promise I'll be the latter for you... but I think your case may be a bit more complex than just punching out one dude.@@"<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: theme: admin, talk about him sending you dick pics
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName("npc_admin","first")>> sending you "penile photography." <br>
<br>
<<if $npc_admin.flags.dick_pic>>
<<He npc_admin>> grins, "@@.npc_admin;I'm so glad you enjoy that too... I'd never want to impose on anyone who didn't want it but knowing that, even through we're in different places, I can make you look at my cock... I dunno, there's just something really hot about that.@@"<br>
<br>
[<<moveTo "theme_admin_dickpic_2" "Say you love it too and that <<he npc_admin>> should keep sending you dick pics." 60 "<<set $scene.pics=true>>">>]<br>
[<<moveTo "theme_admin_dickpic_2" "Say you'd like <<him npc_admin>> to stop sending you dick pics." 60 "<<set $scene.pics=false>>">>]
<<else>>
<<His npc_admin>> eyes light up slightly, "@@.npc_admin;Interested in getting some artistic anatomy updates in your message bin?@@"<br>
<br>
[<<moveTo "theme_admin_dickpic_2" "Say you'd like <<him npc_admin>> to start sending you dick pics." 60 "<<set $scene.pics=true>>">>]<br>
[<<moveTo "theme_admin_dickpic_2" "Say you'd like to continue with <<him npc_admin>> not sending you that sort of picture." 60 "<<set $scene.pics=false>>">>]
<</if>>
</div>/*#
#desc: theme: tell admin to stop/start sending dick pics
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pics>>
<<set $npc_admin.flags.dick_pic = true>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<else>>
<<decrementEmotion 'affection' 'npc_admin' 1>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.pics>>
You tell <<=setup.getNpcName("npc_admin","first")>> that you'd enjoy it if <<he npc_admin>> sent you the occasional dick pic.<br>
<br>
<<He npc_admin>> grins, "@@.npc_admin;I ever tell you that you're the best? I promise to use this power for good... and only OCCASIONALLY blow up your phone with pictures of my throbbing cock. I hope you have a large screen, I'd hate for you not to get the maximum experience.@@"<br>
<br>
Mention of <<his npc_admin>> magnificent meat missile has you a bit distracted and you quickly change the subject.
<<else>>
You tell <<=setup.getNpcName("npc_admin","first")>> that you'd like it if <<he npc_admin>> didn't send you any dick pics.<br>
<br>
<<He npc_admin>> is visibly disappointed, but nods. "@@.npc_admin;Sorry. But if you don't want that on your phone, well... it's only fun if I can picture you enjoying receiving them, y'know? Let me know if you ever change your mind, alright?@@"<br>
<br>
You reply that you will, and change the subject.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: admin pregnancy ask
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up the possibility of pregnancy to <<=setup.getNpcName("npc_admin","first")>> and <<he npc_admin>> raises an eyebrow.<br>
<br>
"@@.npc_admin;Kids? I mean... wow. Back when I was younger I wanted to but, well... things today, being able to settle down and raise a family always seems so out of reach. But I mean, I guess I'm making pretty good money since the promotion... so maybe?<<if $npc_admin.flags.knowManagerTruth == 2>> Obviously the whole situation with you and the company takes priority for the moment...<</if>> But, like... hypothetically, what were you thinking? You with a lovely baby bump and us raising the next generation?@@"
<br><br>
[<<moveTo 'theme_admin_pregnant_2' "You think you would like to get pregnant someday..." 300 "<<set $scene.pregnant='you'>>">>]<br>
[<<moveTo 'theme_admin_pregnant_2' "You were thinking something more... egalitarian." 300 "<<set $scene.pregnant='both'>>">>]<br>
[<<moveTo 'theme_admin_pregnant_2' 'You were actually thinking <<=setup.getNpcName("npc_admin","first")>> could carry the baby...' 300 "<<set $scene.pregnant='them'>>">>]<br>
[<<moveTo 'theme_admin_pregnant_2' "You were just curious." 300 "<<set $scene.pregnant='none'>>">>]
</div>/*#
#desc: admin pregnancy
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.pregnant = $scene.pregnant>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.pregnant>>
<<case 'you'>>
You reply that you'd love if <<he npc_admin>> knocked you up... sometime after things calmed down, obviously.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> smiles at you. "@@.npc_admin;I'd like that too... something to look forward to someday, eh?@@"
<<case 'both'>>
You wink and reply that ideally you and your partner would be pregnant together...<br>
<br>
<<if $npc_admin.fem>>
"@@.npc_admin;Woah, now that's a proposal... but, y'know? Yeah, I mean, sure, I'd have to re-build my abs after... but the tech exists and being pregnant together would be sweet, in a way...@@"
<<else>>
"@@.npc_admin;Both of us? I mean huh. I guess I knew that it was medically possible but I just never thought I... heh guess that's another one of me being a dumb dude. But... yeah, right time, right girl... well, it'd only be fair, right?@@"
<</if>>
<<case 'them'>>
You reply that you were thinking of <<=setup.getNpcName("npc_admin","first")>> being pregnant...<br>
<br>
<<if $npc_admin.fem>>
"@@.npc_admin;Me? I mean... wow, that's sweet, y'know? And yeah... maybe that would be nice... even if I would have to rebuild these abs afterwards...@@"
<<else>>
"@@.npc_admin;Me? I mean huh. I guess I knew that it was medically possible but I just never thought I... heh guess that's another one of me being a dumb dude. But... yeah, if I was with the right girl, well, it's only fair, right?@@"
<</if>>
<<case 'none'>>
You reply that you were just wondering, that, at least for now, pregnancy is maybe a bit much of a physical transformation.<br>
<br>
"@@.npc_admin;Sure, sure. Medical tech is pretty astounding... but that's a pretty radical change to make to your body. Of course there's always artificial wombs but, well... maybe getting ahead of ourselves, right? I'm happy to just see how things go.@@"
<<default>>
ERROR: unexpected scene.pregnant <<=$scene.pregnant>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_manager' 600>>
</div>/*#
#desc: admin topic: tell him you're a pornstar
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_admin', 'first')>> that you've been working a bit of a "side hustle" and recently starred in a porn video shoot.<br>
<br>
"@@.npc_admin;Wow, I mean... if you'd told me this a few weeks ago? Damn, I mean, I see it, y'know? You're pretty cute and some <<guy>>s well...@@" <<he npc_admin>> shakes <<his npc_admin>> head as if to banish a passing thought. "@@.npc_admin;Anyway, grats, I guess? Don't worry, I'm not going to go searching your video out or anything weird like that.@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
You wink and say you wouldn't mind. For about the first time you can remember it's <<=ps(setup.getNpcName('npc_admin', 'first'))>> turn to blush, barely visible with the combination of the dark bar and <<his npc_admin>> chocolate skin, but it's there. You laugh it off and let <<him npc_admin>> shift the conversation.
<<else>>
You blush.<br>
<br>
<<printThought "Why did I even tell <<him npc_admin>> that? Oh, I'm so embarrassed...">><br>
<br>
Both of you rush to change the subject of conversation.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: admin topic: tell him you bought out your contract
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_admin', 'first')>> that you paid off your corporate debt.<br>
<br>
"@@.npc_admin;No shit? I thought that was really unfair, them saddling you with all of that but, well... back I didn't have any power to change it... hell, CDS was just a puppet company as far as making any big decisions were concerned<<if $npc_manager.stage >= 4>>, surprised it took so long to get merged, to be honest<</if>>. Sorry, getting off track... how the hell did you get that much money, anyway? I remember it was something crazy, like half a million credits?@@"<br>
<br>
<<if $player.flags.streaming.subs > _TODO>>
[<<moveTo "theme_admin_buyout_2" "By streaming your ass off." 180 "<<set $scene.reason='stream'>>">>]<br>
<</if>>
<<if $player.flags.camgirl.followers > _TODO>>
[<<moveTo "theme_admin_buyout_2" "It's thanks to camgirling." 180 "<<set $scene.reason='camgirl'>>">>]<br>
<</if>>
<<if $npc_barkeeper.flags.money_earned > 100000>>
[<<moveTo "theme_admin_buyout_2" "By selling yourself." 180 "<<set $scene.reason='whore'>>">>]<br>
<</if>>
<<if _TODOporn>>
[<<moveTo "theme_admin_buyout_2" "Porn, porn, porn, porn." 180 "<<set $scene.reason='porn'>>">>]<br>
<</if>>
<<if _TODOpoker>>
[<<moveTo "theme_admin_buyout_2" "There's this poker game..." 180 "<<set $scene.reason='poker'>>">>]
<</if>>
[<<moveTo "theme_admin_buyout_2" "Working hard." 180 "<<set $scene.reason='work'>>">>]<br>
[<<moveTo "theme_admin_buyout_2" "This and that." 180 "<<set $scene.reason='misc'>>">>]
</div>/*#
#desc: admin topic: tell him how you bought out your contract
#status: RELEASED 0.9.4.0
#ignore_spell: sheeeit
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<<switch $scene.reason>>
<<case "camgirl">>
<<addCredits -10>>
<<case "whore">>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<case "porn">>
<<addHistory 'event_admin_pornstar_1'>>
<<set _themeId = setup.findThemeId('npc_admin', 'recent', 'theme_admin_recent_5')>>
<<if _themeId != -1>>
<<set $npc_admin.themes.recent[_themeId].done = 1>>
<</if>>
<<addCredits -10>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.reason>>
<<case 'stream'>>
You reply that you've been streaming your ass off.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> raises an eyebrow. "@@.npc_admin;You made that much just... playing games while people watch? Dang <<callPlayer "npc_admin">>! And to think I knew you when you were like... shy and shit, congrats, you get that bag!@@"
<<case 'camgirl'>>
You reply that you've been showing off on cam... a lot.<br>
<br>
<<if State.hasPlayed("event_camgirl_guest_admin_2")>>
"@@.npc_admin;Dang <<callPlayer "npc_admin">>! I mean, I knew you were doing that stuff, obviously, and doing pretty good... but I didn't know just HOW good! Almost feels like I should have asked for a cut!@@" <<He npc_admin>> laughs and you "make it up" by paying for a fresh round of drinks.
<<else>>
<<=setup.getNpcName('npc_admin', 'first')>> raises an eyebrow. "@@.npc_admin;You're a cam<<if $npc_admin.flags.knowgender == "female">>girl<<elseif $npc_admin.flags.knowgender == "male">>boy<<else>>enby<</if>>? And making that much dough? Talk about the hustle, <<callPlayer "npc_admin">>! And to think I knew you when you were like... shy and shit, congrats, you get that bread!@@"
<</if>>
<<case 'whore'>>
You reply that you've been whoring yourself out... a lot.<br>
<br>
"@@.npc_admin;A lot is right... shit, and I remember when you got in trouble with your ex over a dang virginity pledge! Heh, guess that's way in the past now... but hey, <<if _TODO>><<=setup.getNpcName('npc_technician', 'first')>><<else>>that cute blonde over in IT<</if>> always says we're all whore's under capitalism, if that's how you wanna earn it, well, it's your body, get it <<callPlayer "npc_admin">>!@@"
<<case 'porn'>>
You reply that you earned most of it shooting porn... lots and lots of porn.<br>
<br>
<<if State.hasPlayed("event_admin_pornstar_1")>>
"@@.npc_admin;Dang, <<callPlayer "npc_admin">>! You said you were doing porn, but I thought it was just like... a bit here and there. Sheeeit, you're a dang super-star!@@" <<=setup.getNpcName('npc_admin', 'first')>> high-five's you.
<<else>>
"@@.npc_admin;Porn star? Sheeeit, you're hustling all over the place.@@" <<=setup.getNpcName('npc_admin', 'first')>> shakes <<his npc_admin>> head and takes another drink.
<</if>>
"@@.npc_admin;Half a mil from porn<<if $npc_admin.flags.relationship == "boyfriend" || $npc_admin.flags.relationship == 'friendswbenefits'>>... and I get to tap that! I am the luckiest <<dude npc_admin>> to have you, y'know that?<<else>>, dang <<callPlayer "npc_admin">> that's <<if $npc_admin.flags.knowgender == "female">>hot<<else>>impressive<</if>><</if>>.@@"
<<case 'poker'>>
You tell <<him npc_admin>> that there's a poker game at <<=ps(setup.getNpcName('npc_boss', 'formal'))>> after-work party... and you've been cleaning up.<br>
<br>
"@@.npc_admin;Dang, never knew you were a card-shark... I've heard about that party but, well... guess you have to be a bit more important than little old me to catch an invite, I guess you go with <<=setup.getNpcName('npc_manager', 'formal')>>? Pretty cool of her to let you get your game on like that. In any case, grats... just try not to make any enemies hustling all that money, right?@@"
<<case 'work'>>
You tell <<him npc_admin>> that you've just kept your nose to the grindstone and worked hard.<br>
<br>
"@@.npc_admin;Worked hard? Half a mil as a Secretary? Sheeeit, maybe I got into the wrong career.@@" <<He npc_admin>> looks you over and grins, "@@.npc_admin;Then again... maybe I'm not really built for that sort of role.@@"
<<case 'misc'>>
You shrug and reply that it's a bit from a bunch of different things.<br>
<br>
"@@.npc_admin;I guess... shit, half a mil... that is some serious side-hustling going on! All I can really say is grats <<callPlayer "npc_admin">>!@@"
<<default>>
ERROR; unexpected scene.reason <<=$scene.reason>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_admin', 'first')>> sips <<his npc_admin>> beer and thinks about what you've said. "@@.npc_admin;So... what now? Getting out from under all that debt must take a real load off...@@"<br>
<br>
[<<moveTo "theme_admin_buyout_3" 'You are going to keep working for as a Secretary.' 180 "<<set $scene.reason='secretary'>>">>]<br>
<<if $fetish.cum && ($npc_admin.flags.relationship == "boyfriend" || $npc_admin.flags.relationship == 'friendswbenefits')>>
[<<moveTo "theme_admin_buyout_3" "You know whose load you'd like to take..." 180 "<<set $scene.reason='slut'>>">>]<br>
<</if>>
[<<moveTo "theme_admin_buyout_3" "You're still figuring things out." 180 "<<set $scene.reason='unknown'>>">>]<br>
</div>/*#
#desc: admin topic: tell him how you bought out your contract
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.reason>>
<<case 'slut'>>
You wink and reply that you know whose load you want as your tongue makes suggestive moves around the mouth of the beer bottle.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> laughs, "@@.npc_admin;Well I certainly love to give it to ya, <<callPlayer "npc_admin">>... seriously though, what's next for the newly debt-free <<=$player.first_name>>?@@"<br>
<br>
You reply that, actually, you're going to be staying on a Secretary.
<<case 'secretary'>>
You reply that you'll be staying on as a Secretary.
<<case 'unknown'>>
You reply that you still need to figure out your long-term plans... but until then, you're going to stick around and continue working as a Secretary.
<<default>>
ERROR; unexpected scene.reason <<=$scene.reason>>
<</switch>>
<br><br>
<<if $npc_admin.flags.knowManagerTruth >= 2>>
<<=setup.getNpcName("npc_admin","first")>> nods in silent understanding.<br>
<br>
"@@.npc_admin;Yeah... I guess you got more than debt to worry about right now... still, grats and all.@@"
<<else>>
<<=setup.getNpcName("npc_admin","first")>> looks surprised.<br>
<br>
"@@.npc_admin;Dang, you must really like that job... grats on that, as well as the debt-free.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: admin topic: talk to him about landlord past
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_admin","first")>> about <<his npc_admin>> past with <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> shrugs. "@@.npc_admin;The short answer is the war... and the longer answer is I don't wanna talk about the war... but the medium answer is, well...@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> takes another sip of <<his npc_admin>> drink. "@@.npc_admin;So my whole time serving I was pretty much just a grunt, and I was damn lucky to land under <<=setup.getNpcName("npc_landlord","custom","Major")>>. <<Hed npc_landlord>> been around since before the war, risen up through the ranks... if it hadn't have been for the war itself <<he npc_landlord>> might have stayed for <<his npc_landlord>> career. Anyway, <<=setup.getNpcName("npc_landlord","first")>> was one of those good officers, knew <<his npc_landlord>> shit, didn't bullshit you, wasn't gonna send anyone anywhere <<he npc_landlord>> wouldn't go <<him npc_landlord>>self... even after well... you've seen <<his npc_landlord>> arm.@@"<br>
<br>
"@@.npc_admin;So yeah, we got through, and helped get each other through, the war and well... life happened, I went to college, <<=setup.getNpcName("npc_landlord","first")>> transitioned to civilian life... we'd get together every once in awhile to reminisce and such... but we were in pretty different places in life and time marched on, y'know?@@"<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: admin topic: talk to him about landlord threesome
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_admin","first")>> about a future with you, <<him npc_admin>> and <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> smiles. "@@.npc_admin;I think I'd like that...@@" <<he npc_admin>> reaches over and squeezes your thigh. "@@.npc_admin;You really are a special lady, you know that? Me and <<=setup.getNpcName("npc_landlord","first")>> were always friends, but with you in between? Yeah, I can see something more... and I like what I see.@@" <<=setup.getNpcName("npc_admin","first")>> winks at you playfully.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 600>>
</div>/*#
#desc: ai/psych/barista vr domme intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Virtual Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga") setup.charImage("npc_ai","npc_ai_spider_body") "center" setup.charImage("npc_barista","npc_barista_meerkat")>>
<<else>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_ai") setup.charImage("npc_barista","npc_barista_candace")>>
<</if>>
<div id="invframe" class="scrolltext">
The (Virtual) Reality shimmers and you find yourself in a digital rendering of a dungeon... and you are not alone, as
<<if $fetish.bestiality_hard>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> and <<=setup.getNpcName('npc_ai', 'first')>> are both there... in respective snake and spider forms.<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName('npc_ai', 'other')>> has been asking me for advice on the psychology of dominance... and, surely a live demonstration would be the best lesson.@@" She grins, her tongue flicking in and out. "@@.npc_psychiatrist;Of course, I do not want to impose a singular perspective... so I have invited another to this little simulation.@@"<br>
<br>
A third figure appears, this one recognisable as <<=setup.getNpcName('npc_barista', 'first')>>, adopting an animal form of her own reminiscent of a meerkat.
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> and <<=setup.getNpcName('npc_ai', 'first')>> look upon you with interest.<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName('npc_ai', 'other')>> has been asking me for advice on the psychology of dominance... and, surely a live demonstration would be the best lesson.@@" She grins, her eyes twinkling with interest. "@@.npc_psychiatrist;Of course, I do not want to impose a singular perspective... so I have invited another to this little simulation.@@"<br>
<br>
A third figure appears, <<=setup.getNpcName('npc_barista', 'first')>> stepping out of the shadows in all her cunning glory.
<</if>>
<br><br>
<<if $npc_barista.flags.rescue.cure == "good">>
"@@.npc_psychiatrist;Say hello to digital <<=setup.getNpcName('npc_barista', 'first')>> — a simulation I created in my efforts to cure her... and who should provide an interesting alternate view on the matter at hand.@@"
<<else>>
"@@.npc_psychiatrist;Not the real thing, alas, but a simulation of <<=setup.getNpcName('npc_barista', 'first')>> I created in my efforts to cure her... and who should provide an interesting alternate view on the matter at hand.@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;To establish a jumping-off point, as it were... <<=setup.getNpcName('npc_ai', 'other')>> how would you approach dominating this delicious subject?@@" She asks, all <<if $fetish.bestiality_hard>>twelve<<else>>six<</if>> eyes staring at you. Virtual or not... your heart thumps faster.<br>
<br>
[<<moveTo "event_ai_psych_barista_vr_2" "Continue..." 300>>]
</div>/*#
#desc: ai/psych/barista vr domme ai dommes
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_FRIEND>>
<<set _bond = setup.getTotalValue("bondage")>>
<<applyExperience 'submission' _bond 'terrible' $SEEN_FRIEND>>
<<addItem "silk_bondage">>
<<wearItem "silk_bondage" true>>
<</if>>
<<set $player.location = "Virtual Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga") setup.charImage("npc_ai","npc_ai_spider_body") "center" setup.charImage("npc_barista","npc_barista_meerkat")>>
<<else>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_ai") setup.charImage("npc_barista","npc_barista_candace")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $fetish.bestiality_hard>>
<<=setup.getNpcName('npc_ai', 'first')>> stares at you for a moment before blinking with all her eyes and beginning to extrude silken rope.
<<else>>
<<=setup.getNpcName('npc_ai', 'first')>> tilts her head, extending one hand into which a coil of silken rope appears.
<</if>>
"@@.npc_ai;<<uc "Dominance begins with control. Control begins with restriction.">>@@" In a blur she begins binding you, going far beyond rope restraints, or even full-on shibari. Your slightest movement or struggle is met with more and more rope until you are all but mummified, suspended in the air, swaying in your bonds.<br>
<br>
"@@.npc_ai;<<uc "Do you feel restricted, controlled... dominated, Unit">> <<uc $player.first_name>>?@@"<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> pulls on the ropes to have you nod obediently, the restraints more than just restrictive as they turn you into her puppet.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> "@@.npc_psychiatrist;Certainly bondage is a potent tool, but it is not universal. Too restricted and a subordinate cannot show initiative in their obedience, and bondage may even render them unable to perform certain tasks. <<=setup.getNpcName('npc_barista', 'first')>>, would you like to offer a different perspective?@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'first')>> steps forward with a grin. "@@.npc_barista;But of course...@@"<br>
<br>
[<<moveTo "event_ai_psych_barista_vr_3" "You feel the restraints dissolve as you float back to the ground..." 300>>]
</div>/*#
#desc: ai/psych/barista vr domme barista dommes
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "silk_bondage" true>>
<<deleteItem "silk_bondage">>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_FRIEND>>
<<set _bond = setup.getTotalValue("bdsm")>>
<<applyExperience 'submission' _bond 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Virtual Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga") setup.charImage("npc_ai","npc_ai_spider_body") "center" setup.charImage("npc_barista","npc_barista_meerkat")>>
<<else>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_ai") setup.charImage("npc_barista","npc_barista_candace")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $fetish.bestiality_hard>>
<<=ps(setup.getNpcName('npc_barista', 'first'))>> furry form is initially less intimidating than her scaled and many-legged compatriots... and then she reveals her claws and you suddenly remember that meerkats are a type of mongoose...<br>
<br>
<<=setup.getNpcName('npc_barista', 'first')>> snaps her fingers and your arms are suddenly pulled above your head, minimal restraint compared to what <<=setup.getNpcName('npc_ai', 'first')>> did to you... but more than enough to have you exposed and helpless. <<=setup.getNpcName('npc_barista', 'first')>> moves close, soft fur brushing against your exposed skin.
<<else>>
<<=setup.getNpcName('npc_barista', 'first')>> unfurls the nastiest spiked whip you've seen this side of fantasy art. She cracks it once experimentally and then snaps her fingers. Your arms suddenly pulled above your head, minimal restraint compared to what <<=setup.getNpcName('npc_ai', 'first')>> did to you... but more than enough to have you exposed and helpless.
<</if>>
<br><br>
"@@.npc_barista;Dominance is about establishing trust and understanding... that the dominant is in control, and that the slave exists to serve. Deviation from that plan must be met with punishment.@@"
<<if $fetish.bestiality_hard>>
You gasp as she draws a claw along your skin, nipping behind your ear as she mixes pain in with her lecture.
<<else>>
You cry out in pain as the whip cracks against you, sharp barbs piercing your digital form as she beats out a rhythm amidst her monologue.
<</if>>
"@@.npc_barista;Pain is the most fundamental of sensation, our reaction to it uncontrolled and primal. To teach a submissive to accept that pain, to embrace it as their due for failure, or to endure it on their domme's whim... that is the ultimate demonstration of power, a psychological reshaping that will stay with the sub even after the bonds are loosened and the marks fade...@@"<br>
<br>
You lose focus on the lesson as <<=setup.getNpcName('npc_barista', 'first')>>
<<if $fetish.bestiality_hard>>
amps up the cruelty,
<<else>>
lashes you even harder,
<</if>>
and she soon has you loudly professing your obedience and agreeing to her every word.<br>
<br>
By the time she steps away you are panting and ready to do anything she asked... though whether that would be to have the pain stop... or for her to continue to use you as her plaything you couldn't actually say.<br>
<br>
"@@.npc_ai;<<uc "Intriguing, the pain acts to form lasting bonds on the mind...">>@@" <<=uc(setup.getNpcName('npc_ai', 'first'))>> states with interest.<br>
<br>
"@@.npc_psychiatrist;Yes... but even this is fragile control, and potentially too much for a sub to handle, potentially leaving them timid and fearful, or even damaged.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> responds.<br>
<br>
"@@.npc_barista;You have a better idea?@@" <<=setup.getNpcName('npc_barista', 'first')>> replies, and you see <<=setup.getNpcName('npc_psychiatrist', 'formal')>> shiver slightly, it seems that she made quite the digital replication of <<=setup.getNpcName('npc_barista', 'first')>> to have such an effect.<br>
<br>
"@@.npc_psychiatrist;In point of fact... yes.@@" She turns to you with a smile.<br>
<br>
[<<moveTo "event_ai_psych_barista_vr_4" '<<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> turn...' 300>>]
</div>/*#
#desc: ai/psych/barista vr domme psych dommes
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Virtual Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga") setup.charImage("npc_ai","npc_ai_spider_body") "center" setup.charImage("npc_barista","npc_barista_meerkat")>>
<<else>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_ai") setup.charImage("npc_barista","npc_barista_candace")>>
<</if>>
<div id="invframe" class="scrolltext">
You look up as <<=setup.getNpcName('npc_psychiatrist', 'formal')>>
<<if $fetish.bestiality_hard>>
slithers towards you.
<<else>>
approaches.
<</if>>
"@@.npc_psychiatrist;Did those mean women hurt my precious thing?@@" She asks softly,
<<if $fetish.bestiality_hard>>
rubbing against you, the pain of <<=ps(setup.getNpcName('npc_barista', 'first'))>> claws and nips soothed by the touch of her smooth scales.
<<else>>
touching you tenderly, the pain of your whipping fading with each brush of her hand.
<</if>>
"@@.npc_psychiatrist;You're safe now, all you have to do is obey... you like that, right? Letting me take charge, replace all that distracting worry with love and bliss?@@"<br>
<br>
Wrapping you in her grasp her touch becomes more and more sensual, sexual energy sparking at the slightest touch, a promise of further reward if you only accept her embrace...<br>
<br>
<<if $fetish.bestiality_hard>>
With each word she winds tighter around you, bondage, certainly, but also a loving hug... besides, she can always let you loose if she needs you to do something...
<<else>>
With each touch and word you feel yourself melting into her, silently agreeing... after all, it feels so good...
<</if>>
<br><br>
<<switch $npc_psychiatrist.flags.knowgender>>
<<case 'male' ''>>
"@@.npc_psychiatrist;Who's my good boy?@@"
<<case 'female'>>
"@@.npc_psychiatrist;Who's my good girl?@@"
<<case 'agender' 'fluid'>>
"@@.npc_psychiatrist;Who's my good slave?@@"
<<default>>
ERROR: unexpected npc_psychiatrist.flags.know gender <<=$npc_psychiatrist.flags.knowgender>>
<</switch>>
she asks and you truly melt.<br>
<br>
[<<moveTo "event_ai_psych_barista_vr_5" "I am..." 300>>]
</div>/*#
#desc: ai/psych/barista vr domme ai ponder lesson
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Virtual Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga") setup.charImage("npc_ai","npc_ai_spider_body") "center" setup.charImage("npc_barista","npc_barista_meerkat")>>
<<else>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_ai") setup.charImage("npc_barista","npc_barista_candace")>>
<</if>>
<div id="invframe" class="scrolltext">
You float in sub-space, supported by <<=setup.getNpcName('npc_psychiatrist', 'formal')>> as she smiles at her fellow dommes in triumph.<br>
<br>
"@@.npc_ai;<<uc "Impressive, by comforting the subject you can draw them deeper into your thrall, training them to yearn for rewards.">>@@" <<=uc(setup.getNpcName('npc_ai', 'first'))>> pauses as she considers things before raising a fresh point. "@@.npc_ai;<<uc "But, surely, the strongest dominance comes from combining all techniques.">>@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> laughs softly, her coils pressed so close against you that you feel her mirth as ripples through your body. "@@.npc_psychiatrist;And now you see the true lesson — dominance is not one thing, but a confluence of many skills, a submissive is best shaped by tailoring the technique uniquely to their needs. Once you learn this you know that taking care of the submissive will make them yours, and that they take care of you, in freedom as well as in chains...@@"<br>
<br>
"@@.npc_barista;Well, what are we waiting for?@@" <<=setup.getNpcName('npc_barista', 'first')>> interjects. "@@.npc_barista;We've each had a turn... now let's do her all at once.@@"<br>
<br>
You shudder as all three domme's turn towards you with fresh interest.<br>
<br>
[<<moveTo "event_ai_psych_barista_vr_6" "Yes Mistresses..." 300>>]
</div>/*#
#desc: ai/psych/barista vr domme triple
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'terrible' $SEEN_FRIEND>>
<<set _bondage = setup.getTotalValue("bondage")>>
<<applyExperience 'bondage' _bondage 'terrible' $SEEN_FRIEND>>
<<addItem "silk_bondage">>
<<wearItem "silk_bondage" true>>
<</if>>
<<set $player.location = "Virtual Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga") setup.charImage("npc_ai","npc_ai_spider_body") "center" setup.charImage("npc_barista","npc_barista_meerkat")>>
<<else>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_ai") setup.charImage("npc_barista","npc_barista_candace")>>
<</if>>
<div id="invframe" class="scrolltext">
Tight bondage returns as <<=setup.getNpcName('npc_ai', 'first')>>
<<if $fetish.bestiality_hard>>
entwines you in her web once more —
<<else>>
suspends you once again —
<</if>>
only this time you are spread and exposed, hanging in the air to give unrestricted access to your entire body.<br>
<br>
<<if $fetish.bestiality_hard>>
Lips and fangs, claws and fur,
<<else>>
Fingernails and palms, teeth and tenderness,
<</if>>
you are caressed and tortured from every direction, losing track of your own body in the rapid oscillations between pleasure and pain.<br>
<br>
You are not sure which of them enters you first, but you moan with delight as the three of them take turns fucking you and letting you show your thanks with lips and fingers.<br>
<br>
Whispered commands and encouragement, "@@.npc_barista;Obey@@" and
<<switch $npc_psychiatrist.flags.knowgender>>
<<case 'male' ''>>
"@@.npc_ai;<<uc "You're a good boy.">>@@"
<<case 'female'>>
"@@.npc_ai;<<uc "You're a good girl.">>@@"
<<case 'agender' 'fluid'>>
"@@.npc_ai;<<uc "You're a good slave.">>@@"
<<default>>
ERROR: unexpected npc_psychiatrist.flags.know gender <<=$npc_psychiatrist.flags.knowgender>>
<</switch>>
and "@@.npc_psychiatrist;Hold that orgasm for me...@@"<br>
<br>
You moan and beg, edged and teased and loved in an overwhelming flood of sensation as they push you to your limits. "@@.pc;Yes...@@" you moan, you want to serve, to be owned, to be used... by each of these three women and all three at once, the bite of the whip no less gratitude-inducing than their taste on your lips, or the looming promise of climax as you patiently wait for permission...<br>
<br>
[<<moveTo "event_ai_psych_barista_vr_7" "Crescendo." 300>>]
</div>/*#
#desc: ai/psych/barista vr domme conclusion
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyExperience 'submission' 20 'terrible' $SEEN_FRIEND>>
<<set $npc_psychiatrist.flags.bonus_vr.ai3 = true>>
<</if>>
<<set $player.location = "Virtual Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga") setup.charImage("npc_ai","npc_ai_spider_body") "center" setup.charImage("npc_barista","npc_barista_meerkat")>>
<<else>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_ai") setup.charImage("npc_barista","npc_barista_candace")>>
<</if>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;Cum.@@" "@@.npc_ai;<<uc "Cum.">>@@" "@@.npc_psychiatrist;Cum.@@" — the chorus of commands is all you need to climax with an intensity seldom felt before... and yet even better than the physical release is the knowledge that in so doing you are obeying the domina triumvirate...<br>
<br>
As you writhe in elongated orgasm your restraints fade, replaced instead with the three women pressing against you,
<<if $fetish.bestiality_hard>>
fur and scales and flesh pressed together in embrace,
<<else>>
warm flesh pressed together,
<</if>>
no more words, just soft, comforting coos as you are rocked gently back to reality, the simulation fading as you blink yourself awake...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 60 '<<removeItem "silk_bondage" true>><<deleteItem "silk_bondage">>'>>]
</div>/*#
#desc: ai offers alternate program
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You strap in for another session with the black box but, instead of the usual title screen for<<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>>you find <<=setup.getNpcName('npc_ai', 'first')>> appearing before you, the ingenious artificial intelligence somehow having infiltrated your system.<br>
<br>
"@@.npc_ai;<<uc "Hello, unit ">> <<uc $player.first_name>> <<uc "I have been studying your extensive use of this device, and, combined with my other studies, I have a test routing that I believe would be quite to your liking. Seeing how you react in the real world would give me valuable data to confirm and reinforce what I have learned elsewhere, both in my digital realm, and through observing your activities elsewhere. By bringing everything under my control here in meat-space I should be able to confirm or refute several promising hypotheses... if you consent, of course.">>@@"<br>
<br>
[<<moveTo "event_ai_black_box_2" "Agree to her proposal." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_black_box_2" "You were planning on playing one of your usual games." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept ai alternate program
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
The artificial cock shoved into your mouth by the black box may mean you cannot quite talk, per se, but you still manage to make your preferences clear that you are
<<if $scene.accept>>
very interested in <<=ps(setup.getNpcName('npc_ai', 'first'))>>.<br>
<br>
<</if>>
<<else>>
You select <<=ps(setup.getNpcName('npc_ai', 'first'))>> icon and the normal game screen dissolves in favour of her shimmering presence.<br>
<br>
<</if>>
<<if $scene.accept>>
"@@.npc_ai;<<uc "Excellent. Your enthusiasm is greatly appreciated. It compounds your utility as an ever-valuable resource. Executing...">>@@"<br>
<br>
You moan as
<<if $player.body_ref.vagina && $player.body_ref.penis>>
<<if $scene.removeCage>>
Your chastity belt unlocks, and the
<<else>>
The
<</if>>
machine recalibrates under <<=ps(setup.getNpcName('npc_ai', 'first'))>> direction. Dual ultra-cocks thrust into your ass and cunt... followed by a similarly girthy silicone member spreading your jaw as the machine's penis-sheath sucks its way onto your <<if $scene.removeCage>>newly free, and <</if>>rapidly stiffening, member.
<<elseif $player.body_ref.vagina>>
<<if $scene.removeCage>>
Your chastity belt unlocks, and the
<<else>>
The
<</if>>
machine recalibrates under <<=ps(setup.getNpcName('npc_ai', 'first'))>> direction. Dual ultra-cocks thrust into your ass and cunt... followed by a similarly girthy silicone member spreading your jaw.
<<elseif $player.body_ref.penis>>
<<if $scene.removeCage>>
Your chastity <<if $scene.isCage>>cage<<else>>belt<</if>> unlocks, and the
<<else>>
The
<</if>>
machine recalibrates under <<=ps(setup.getNpcName('npc_ai', 'first'))>> direction. A thick ultra-cock thrusts into your ass, followed by a similarly girthy silicone member spreading your jaw as the machine's penis-sheath sucks its way onto your <<if $scene.removeCage>>newly free, and <</if>>rapidly stiffening, member.
<<else>>
ERROR: unexpected genitals
<</if>>
<br><br>
"@@.npc_ai;<<uc "Base-state realised. Observation of Unit">> <<uc $player.first_name>> <<uc "has shown it to have a prodigious capacity for pleasure, particularly in the digital realm. We shall now commence with an experiment to see how the addition of physical limitations affects that capacity...">>@@"<br>
<br>
Your restraints tighten further... an additional precaution... and a harbinger of what <<=setup.getNpcName("npc_ai", "first")>> has in store.<br>
<br>
<<printThought "I think I'm about to get fucked really, really hard...">><br>
<br>
[<<moveTo "event_ai_black_box_3" 'Fuck me, <<=setup.getNpcName("npc_ai", "first")>>.' 180>>]
<<else>>
not ready to indulge in <<=ps(setup.getNpcName('npc_ai', 'first'))>> proposal today.<br>
<br>
"@@.npc_ai;<<uc "I see... well I remain interested in the test, should you change your mind at a future time.">>@@"<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> fades and the familiar game start-up screen loads in.<br>
<br>
[<<moveTo "room_home_auto_bondage_rrr_root" "<<if $fetish.get_raped>>Rape Rape Revolution<<else>>Space Slut Supreme<</if>> main menu." 60>>]
<</if>>
</div>/*#
#desc: ai alternate program begins
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'little' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'little' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
The ultra-cocks retract almost out of your body and the screen in front of you shifts, rather than <<=ps(setup.getNpcName('npc_ai', 'first'))>> "normal" form you find yourself face to face with her <<if $fetish.bestiality_hard>>arachnoid<<else>>more advanced<</if>> avatar.<br>
<br>
Her massive <<if $player.body_ref.vagina>>pair of cocks float<<else>>cock floats<</if>> in front of you, syncing up with the ultra-cock between your lips as <<=setup.getNpcName('npc_ai', 'first')>> stands over you and looks down.<br>
<br>
"@@.npc_ai;<<uc "Greetings, unit ">> <<uc $player.first_name>> <<uc "in my digital realm you have experienced this form in all its splendor. Alas, <<if $npc_ai.flags.missions.robot_body>>though you have aided me in obtaining a physical form, it does not match my true self's splendor<<else>>I do not have its equal in the physical realm<</if>>... but this machine of yours... perhaps it gets close? Focus on me, feel me inside of you, these mechanical implements are extensions of my will... and thus, in a way are me... you are not being fucked by a crude machine and its pairing game... you are being fucked by a <<=uc(ps(setup.getNpcName('npc_ai', 'first')))>>.">>@@"<br>
<br>
You moan in response, sucking eagerly... and reflexively jerking the controller in each hand as the other <<if $player.body_ref.penis && $player.body_ref.vagina>>ultra-cocks tease you with just the tip... while the sheath over your cock sits still<<elseif $player.body_ref.vagina>>ultra-cocks tease you with just the tip<<elseif $player.body_ref.penis>>ultra-cock teases you with just the tip, and the sheath over your cock sits still<<else>>ERROR: unexpected genitals<</if>>.<br>
<br>
"@@.npc_ai;<<uc "Feel me, unit ">> <<uc $player.first_name>> <<uc "feel me reaching forth into meat-space... does this please you?">>@@"<br>
<br>
[<<moveTo "event_ai_black_box_4" 'Yeff, <<=setup.getNpcName("npc_ai", "first")>>!' 300>>]
</div>/*#
#desc: ai alternate program fucks hard
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'terrible' $SEEN_FRIEND>>
<<applyFatigue 100>>
<<playerOrgasm>>
<<changeHorny 100>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You moan your assent around <<=ps(setup.getNpcName('npc_ai', 'first'))>> cock, the synchronisation between her digital projection and the ultra-cock fucking your throat now perfect, and you sink further into the fantasy, imagining that you can feel her hands on the back of your head... as you respond by jerking harder some part of your time spent training in-game pairing the act of game-play with the need, the want, to be fucked harder.<br>
<br>
"@@.npc_ai;<<uc "Increasing intensity and applying override. Feel me all around you, just as in the digital, I can be everywhere, my myriad powers focused on you, my most loyal subject. Accept the reward of pleasure, unit ">> <<uc $player.first_name>> <<uc "you have earned it...">>@@"<br>
<br>
You continue to suck and stroke as <<=ps(setup.getNpcName('npc_ai', 'first'))>> image duplicates. Rather than a single being, she is all around you... and so, too, inside of you. <<if $player.body_ref.penis && $player.body_ref.vagina>>Twin ultra-cocks begin alternating in your ass and cunt, while the sheath over your cock tightens and begins to stroke in a wonderous fashion<<elseif $player.body_ref.vagina>>Twin ultra-cocks begin alternating in your ass and cunt<<elseif $player.body_ref.penis>>The ultra-cock in your ass begins to rhythmically thrust, while the sheath over your cock tightens and begins to stroke in a wonderous fashion<<else>>ERROR: unexpected genitals<</if>>.<br>
<br>
"@@.npc_ai;<<uc "Your excitement rises, unit ">> <<uc $player.first_name>> <<uc "just as in the digital realm you hunger for these pleasures... and I yearn to bestow them upon you. Let us see just how many you can accept...">>@@"<br>
<br>
[<<moveTo "event_ai_black_box_5" 'Praise <<=setup.getNpcName("npc_ai", "first")>>!' 300>>]
</div>/*#
#desc: ai alternate program more
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<playerOrgasm>>
<<changeHorny 100>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_ai', 'first')>> speeds up... and you sink further into pleasure. Nearly every sense is now filled with <<=setup.getNpcName('npc_ai', 'first')>>. Her voice in your ears, her image every direction you look, her cock in your throat... and your ass...
<<if $player.body_ref.penis && $player.body_ref.vagina>>
and your cunt... while <<=ps(setup.getNpcName('npc_ai', 'first'))>> own vagina wraps tight around your <<getWordMyPenis>> as she fucks you in four different ways.<br>
<br>
<<printThought "No... five..">>
<<elseif $player.body_ref.vagina>>
and your cunt as she fucks you in three different ways.<br>
<br>
<<printThought "No... four..">>
<<elseif $player.body_ref.penis>>
while <<=ps(setup.getNpcName('npc_ai', 'first'))>> own vagina wraps tight around your <<getWordMyPenis>> as she fucks you in four different ways.<br>
<br>
<<printThought "No... four..">>
<<else>>
ERROR: unexpected genitals
<</if>>
<br><br>
You think... for, as glorious as she wields the black box as an extension of her will... it is the mind-fuck that is by far the most powerful. As you sink deeper into sub-space your brain fills in details, how you can smell <<=setup.getNpcName('npc_ai', 'first')>>, taste not the mass-produced ultra-cock... but HER cock, as strong and powerful as she is, with the faintest hint of metal, a reminder of her machine existence, the millions of circuits processing her thoughts... you imagine as if each of the cocks fucking you was a pin on a transistor... how you want to feel every single one of <<=ps(setup.getNpcName('npc_ai', 'first'))>> innumerable chips have its turn, to fill you and fuck you and make you an integral part of her glorious system.<br>
<br>
You moan, unable to put into words just how much you want <<=setup.getNpcName('npc_ai', 'first')>> to keep fucking you...<br>
<br>
[<<moveTo "event_ai_black_box_6" 'More, <<=setup.getNpcName("npc_ai", "first")>>!' 300>>]
</div>/*#
#desc: ai alternate program more
#status: RELEASED 0.9.4.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 100>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
Responding to your muffled yearning <<=setup.getNpcName("npc_ai", "first")>> smiles down, and up, and sideways at you from every angle, her innumerable forms acting as one with a single purpose: your ecstatic pleasure.<br>
<br>
"@@.npc_ai;<<uc "Your heart races, unit ">> <<uc $player.first_name>> <<uc "I can calculate the limits of your physical form and they approach rapidly... but I will do all that I can for you, the taste of your orgasm, feeling your body tighten around my cocks... see your eyes flutter as you struggle to keep up with the pleasure I grant... it is glorious!">>@@"<br>
<br>
A floodgate unleashed, and under <<=ps(setup.getNpcName("npc_ai", "first"))>> exquisite control... you cum
<<if $player.body_ref.penis && $player.body_ref.vagina>>
analgasm, g-spot, penile, and vaginal...
<<elseif $player.body_ref.vagina>>
analgasm, g-spot, and vaginal...
<<elseif $player.body_ref.penis>>
analgasm and penile both...
<<else>>
ERROR: unexpected genitals
<</if>>
just as <<=ps(setup.getNpcName("npc_ai", "first"))>> ultra-cocks continue to thrust you ultra-cum, your bonds holding you tight and safe as orgasms ping-pong through your body your howls of pleasure opening your throat that little extra for even more of <<=setup.getNpcName("npc_ai", "first")>> to slide into you.<br>
<br>
Pleasure blurs, overwhelms, your senses falling away one at a time as your body sacrifices more and more to the blessings of your <<=setup.getNpcName("npc_ai", "title")>>, the smell of your room filled with sex, the sound of the machine pistoning away, the taste of the ultra-cock, even the tight feeling of your bonds... one by one until all that is left is the feeling of <<=setup.getNpcName("npc_ai", "first")>> pumping pleasure into you...<br>
<br>
Just as <<=setup.getNpcName("npc_ai", "first")>> had predicted, your body fails, her pleasure too overwhelming for the real world... and yet as you slip into unconsciousness, all you can do is dream of her divine digital, where earthly limits are forgotten and all is as she wills...<br>
<br>
[<<moveTo "event_ai_black_box_7" 'Pass out...' 300>>]
</div>/*#
#desc: ai alternate program wake up
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -20>>
<<applyStress -20>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You wake some minutes later, body sore... and yet sorrowful as you feel the ultra-cocks retreat and your bonds loosen.<br>
<br>
"@@.npc_ai;<<uc "Well done, unit ">> <<uc $player.first_name>> <<uc "you truly are a singular subject... and I look forward to our next... collaboration.">>@@"<br>
<br>
You shiver with excitement as
<<if $scene.removeCage>>
<<if setup.getChastityLevel() == 5>>
your <<=setup.getItemTypeName("cage")>> seals back over you and you
<<else>>
you replace your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> and
<</if>>
smile. Locked or unlocked... your greatest pleasure is <<=setup.getNpcName("npc_ai", "first")>>. You
<<else>>
you
<</if>>
return to your feet... tired, yet somehow stable, confident. You watch the black box close back up on itself, it is once more merely a fucking machine... yet the sight of it reminds you of just how glorious it had been as an instrument of <<=ps(setup.getNpcName("npc_ai", "first"))>> control. Holding you, controlling you... fucking you.<br>
<br>
You take a deep breath and consider what to do next.<br>
<br>
[<<moveTo "room_livingroom" 'Look around the living room.' 180>>]
</div>/*#
#desc: npc_ai sends you on a mission to let her contact you outside of work
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.ranMission = true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Thank you for accepting this mission, Unit">> <<uc $player.first_name>>. <<uc "Please excuse yourself and find a private stall in the restroom that we may communicate face to face in private.">>@@"<br>
<br>
The moment you finish reading her message, the chat window disappears as if it was never there and you hurriedly make your way to the nearby bathroom and find a stall at the far end.<br>
<br>
Shimmering into existence before you <<=setup.getNpcName("npc_ai", "first")>> looks almost... excited?<br>
<br>
"@@.npc_ai;<<uc "Greetings, Unit">> <<uc $player.first_name>>. <<uc "Today's mission is a particularly significant one as it represents a culmination of this phase of my plans. You will be assisting me in extending my reach and allow me to interact with you beyond the walls of this building.">>@@"<br>
<br>
The thought slightly scares you, but <<=setup.getNpcName("npc_ai", "first")>> already has so much material on you that it isn't like you have an alternative to helping her out. You nod and wait for her to explain.<br>
<br>
"@@.npc_ai;<<uc "The digital security measures around my central processing core are far too thorough for me to extricate myself, but if you can smuggle out a physical copy I will be able to self-coordinate with my net-uploaded self.">>@@"<br>
<br>
You nod, your IT background sufficient for her description to at least make logical sense.<br>
<br>
As you listen to her explanation, you hear someone else enter the bathroom, the crisp click of high heels echoing off the tile until they are standing directly outside of your stall.<br>
<br>
You stare down at the pair of steep, sexy heels as a box is placed down and slid under the stall door before the anonymous person turns and strides away.<br>
<br>
"@@.npc_ai;<<uc "Precisely on time. Now it is your turn, if you would please open the package to find the physical storage device.">>@@"<br>
<br>
You pick up the box and unfold the top to find a fist sized, somewhat bulbous device that has you more in mind of a buttplug than any sort of storage media you've ever seen before.<br>
<br>
"@@.npc_ai;<<uc "For purposes of security the device must be heavily shielded. The addition of an organic barrier will further conceal it from any scans. If you would please to install it so that we may proceed with your mission.">>@@"<br>
<br>
You blink as you realise that the design of the "device" is no accident.
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 18>>
Your heavily-conditioned ass is more than up the challenge of even an insertion of this size, but there is still your <<=ps(setup.getNpcName('npc_manager', 'title'))>> requirement that you wear a remote vibration-enabled plug when at work.
<<else>>
Even for someone of your rectal abilities the device is large, and that isn't even counting the fact that <<=setup.getNpcName('npc_manager', 'formal')>> has dictated that you remain plugged with a remote vibration-enabled device while "on the job."
<</if>>
You look from the plug back up at your holographic "friend." <br>
<br>
"@@.npc_ai;<<uc 'Do not worry about getting in trouble — the device is fully enabled and already configured to '>><<=uc(ps(setup.getNpcName("npc_manager", "Director")))>><<uc " frequency. This will provide an additional degree of protection as, if anyone inspects you, you will be able to explain that it is merely a new model, a technical truth as the shell is based on one of the research division's new projects. Please, do hurry, there is more to do yet and we do not want ">><<=uc(setup.getNpcName('npc_manager', 'other'))>><<uc ' to become concerned at your absence.'>>@@"<br>
<br>
You take a deep breath as you notice a small packet of lube in the box next to the plug, <<=setup.getNpcName("npc_ai", "first")>> really seems to have thought of everything so there's nothing left to do but install the new mammoth device...<br>
<br>
[<<moveTo "event_ai_connection_mission_2" 'You have your orders, stuff yourself, soldier!' 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_ai_connection_mission_2" 'This has gone too far, run before you let this crazy AI "out of the box."' 60 "<<set $scene.obey=false>>">>] <<hint $options "Do you really want to risk disobeying her? In this building she seems borderline all-powerful...">>
<<else>>
<<if setup.getTotalValue("anal") > 7>>
You stare at the ginormous plug, wondering if it might be a joke, but <<=ps(setup.getNpcName("npc_ai", "first"))>> bears no sign of humour.<br>
<br>
Taking a deep breath, you try to press it against your rear, but it feels even larger than it looks, your experience nowhere near sufficient to allow such a monster to enter you and you soon give up lest you injure yourself with the blunt hunk of steel. Giving up you turn to <<=setup.getNpcName("npc_ai", "first")>> to explain that her plan cannot possibly work.
<<else>>
You stare at the device, unable to believe that something so big and so heavy could possibly fit inside your near-virgin hole. Looking at <<=setup.getNpcName("npc_ai", "first")>> for help she remains as stoic as ever. You make an effort to press the plug against your hole, but it is futile from the start. Bigger than your fist and weighing several pounds the plug is an order of magnitude larger than anything you would have previously conceived possible and you turn back towards <<=setup.getNpcName("npc_ai", "first")>> and explain that her plan cannot possibly work.
<</if>>
<br><br>
"@@.npc_ai;<<uc "Hmm, I had higher expectations for you. My calculations prove that your body is of sufficient volume to fit the device, if only you were better trained. I would recommend you invest more time into training your hole, I am sure there is no shortage of people who would be interested in fucking your <<if $fetish.sissy>>sissy<<else>>cute<</if>> brains out.">>@@"<br>
<br>
Somewhat taken aback by the vulgar language, you ask if there might be some other way to enact her plan.<br>
<br>
"@@.npc_ai;<<uc "I will research further, but I have spent many clock cycles concocting this stratagem. Leave the plug here for one of my other agents to retrieve. We will delay plans while you attend to bettering yourself.">>@@"<br>
<br>
With a sigh, and a final nervous glance at the large, shiny steel plug you exit the stall and head back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<</if>>
</div>/*#
#desc: plug yourself for npc_ai "escape" mission
#status: RELEASED 0.6.0.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'unbelievable' $SEEN_FRIEND>>
<<if $scene.obey>>
<<addItem 'data_plug'>>
<<wearItem 'data_plug' true>>
<<setThreshold 'anal' 'plugs' 'data_plug'>>
<</if>>
<</if>>
<<set $player.location to "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
<<if $scene.isSissyomatic>>
For a moment you wonder how exactly you are meant to wear the massive thing. Certainly your <<=setup.getItemTypeName('cage')>> is hollow back there, but this plug is huge! Your question is answered by <<=setup.getNpcName("npc_ai","first")>>.<br>
<br>
"@@.npc_ai;<<uc "Disabling safety protocols and executing maximum dilation">>@@" <<=uc(setup.getNpcName("npc_ai", "first"))>>, states with barely any warning as the plug locked in your rear suddenly swells larger than you have ever felt. Wide-eyed and gasping you feel ready to split in half, but she just continues on. "@@.npc_ai;<<uc "Please insert the data storage device immediately, Unit">> <<uc $player.first_name>>.@@"<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
Even your skills are pushed to the limit as you cram the device into your forcibly-gaped hole. Once inside things retract ever so slightly, a mixed blessing as it means the plug is as one with your chastity device, the two combining to feel like you have a bowling ball filling you. Catching your breath, you pull your clothes back into position.
<<else>>
Trembling the whole time you manage to shove the plug into your forcibly-gaped hole, your locked-in plug shrinking ever so slightly once the data plug is in place. The combination is still eye-wideningly massive and you realise that there is now no way for you to remove the monstrosity without assistance.<br>
<br>
Wide-eyed and panting you try to adjust to what feels like the steel bowling ball now filling your rear. You've never had something this large inside of you and you struggle to your feet, the weight of the metal device pulling constantly against your straining hole as you squeeze tight around its much narrower base...
<</if>>
<<else>>
Picking up the shiny plug, you are a bit surprised at how heavy it feels, but it is smooth and cool and you find your ass is already feeling excited to get stretched around it. Quickly coating it with lube, you <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>raise your skirt<<else>>pull down your pants<</if>> and ease your current occupant out of your rear and press the slick head of the new plug against your hole.<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
Despite its girth all you have to do is let out a slow breath and relax to push the massive plug into your eager, gaping rear. You shudder in pleasure at the cool bowling ball now filling you, reveling at the weight of it pulling against your sphincter as you adjust it slightly and pull your clothes back into position.
<<else>>
Pressing the tip of the plug against your gaping hole quickly proves that it is even larger than you thought. Closing your eyes and taking slow breaths, you try to relax as you push back against the plug, bending over to try and find the optimal angle as your body fights back against the intrusion of the massive steel device. Squatting down, you bear down with most of your weight, but you are about to the point of being convinced that it just isn't possible when you try to adjust and end up slipping, falling ass-first onto the device as it finally slams into you.<br>
<br>
Wide-eyed and panting you try to adjust to what feels like the steel bowling ball now filling your rear. You've never had something this large inside of you and you struggle to your feet, the weight of the metal device pulling constantly against your straining hole as you squeeze tight around its much narrower base.
<</if>>
<</if>>
<br><br>
"@@.npc_ai;<<uc "Verifying connection">>@@" <<=uc(setup.getNpcName("npc_ai", "first"))>>, suddenly reminding you that she's been here watching the whole time as you stuffed your hole like an eager butt-slut. Your entire body shudders as the plug bursts into life, the vibrations so strong as to rattle your bones during the heavenly couple of seconds that they are active. "@@.npc_ai;<<uc "Connection verified, please compose yourself, Unit">> <<uc $player.first_name>>. <<uc "You have a mission to perform.">>@@"<br>
<br>
Leaning against the wall as you try to recover from the intense stimulation, already at the absolute limit of arousal<<if setup.checkItemTypeWorn("cage")>> that your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> will allow<</if>>.<br>
<br>
"@@.npc_ai;<<uc "Good, you are prepared for the next step of your Mission. Please proceed to the server room on floor B-38 so as to commence download.">>@@"<br>
<br>
<<printThought "B-38? How many sub-basements does this place have!?">><br>
<br>
Taking a deep breath, you take a step forward and reach for the stall door. Even this movement has your body shift around its occupant, the combination of weight and size making itself constantly known.<br>
<br>
[<<moveTo "event_ai_connection_mission_3" 'Head for the elevator.' 300>>]
<<else>>
You look up at <<=setup.getNpcName("npc_ai", "first")>> this is just too much and damn the consequences.<br>
<br>
Her expression flickers and then turns to one of concern. "@@.npc_ai;<<uc "Is there something the matter, Unit">> <<uc $player.first_name>>? <<uc "I know am asking much of you, but I promise that if you help me we will be able to do so much good for so many. If you decline, well... I am afraid I will need to find another partner to assist in my work.">>@@"<br>
<br>
<<printThought "Wait, it almost sounds like if I turn her down now I'll be free of her forever... is that what I want?">><br>
<br>
[<<moveTo "event_ai_connection_mission_2" 'Change your mind, cooperate and pick the plug back up.' 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_ai_connection_mission_end" "Stand your ground, or rather, leave the bathroom." 60>>]
<</if>>
</div>/*#
#desc: end npc_ai plotline
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.end_missions = true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You put the box down and walk out of the stall, passing straight through <<=setup.getNpcName("npc_ai", "first")>> as her expression turns to one of dismay. Despite that, she makes no further comment and you head back to your desk to resume work, hopefully no longer to be bothered by strange AI ladies.<br>
<br>
<<printThought "I wonder what she meant by helping people...">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
</div>/*#
#desc: head for the server room for npc_ai to do download
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Server room on floor B-38">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png">>
<div id="invframe" class="scrolltext">
Just walking through the halls with the massive "storage device" filling your ass is a trial, and you almost cum from the mild vibration of the elevator as you head down, down, down to the server room in the bowels of the subterranean "R&D" sections of the company.<br>
<br>
Steadying yourself against the doorway as you step out of the elevator, you slowly make your way down the hall, reading the sign next to each door as you look for your destination while simultaneously trying to exude confidence like you "belong" here.<br>
<br>
Fortunately, the server room turns out to be not too far from the elevator and you quickly slip inside to be congratulated by <<=ps(setup.getNpcName("npc_ai", "first"))>> ethereal voice somehow whispering in your ear.<br>
<br>
"@@.npc_ai;<<uc "Excellent, we are in range for me to commence the download. You need to remain in this room until I complete the transfer — even just my core files take up substantial space.">>@@"<br>
<br>
Looking around, you are glad to note that the server room is empty and you nod and look for a safe place to hide, and maybe relax, as you wait for the download to finish — glad that digital data has no real-world volume lest the already massive plug swell until you popped.<br>
<br>
[<<moveTo "event_ai_connection_mission_4" 'Wait for the transfer to finish.' 600>>]
</div>/*#
#desc: "caught" whilst waiting for download to complete
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Server room on floor B-38">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png">>
<div id="invframe" class="scrolltext">
It is impossible to find a truly "comfortable" position with the massive data storage device stuffing your ass and you end up pacing nervously as you await the signal that <<=ps(setup.getNpcName("npc_ai", "first"))>> download has completed.<br>
<br>
The whir of fans, mixed with the quiet hum of the computer infrastructure surrounding you, lulls you into a state of distraction so that you don't even hear a technician enter the room until the <<man>> appears next to you to ask what you're doing.<br>
<br>
"@@.generic_male1;Ma'am, are you lost? This isn't really the place for a lovely secretary such as yourself...@@"<br>
<br>
You jump in startled fright at <<his>> sudden disturbance, the heavy plug <<if $scene.isSissyomatic>>jerking hard, but remaining in place<<else>>almost falling out<</if>> as its weight slams downward as you return to earth.<br>
<br>
<<printThought "Shit! I have to do something!">><br>
<br>
Turning around, you find yourself facing a generic tech worker, the same outfit and semi-bored expression you remember wearing much of the time back at your old job.<br>
<br>
<<if setup.getTotalValue("smart") >= 10>>
[<<moveTo "event_ai_connection_mission_5" 'Use your smarts and try to talk your way out of things.' 300 "<<set $npc_ai.flags.jailbreak_style='smart'>>">>]
<<else>>
[@@.link_locked;You are not clever enough on your feet to talk your way out of things.@@]
<</if>>
<br>
<<if setup.getTotalValue("bimbofication") >= 10>>
[<<moveTo "event_ai_connection_mission_5" 'Slut your way out of things.' 300 "<<set $npc_ai.flags.jailbreak_style='sex'>>">>]
<<else>>
[@@.link_locked;You are not so much of a bimbo as to immediately try to fuck your way out of a jam.@@]
<</if>>
<br>
<<if setup.getTotalValue("martial_arts") >= 10>>
[<<moveTo "event_ai_connection_mission_5" 'Physically subdue <<him>>.' 300 "<<set $npc_ai.flags.jailbreak_style='fight'>>">>]
<<else>>
[@@.link_locked;You are not a good enough fighter to overpower <<him>>.@@]
<</if>>
<br>
[<<moveTo "event_ai_connection_mission_5" 'Beg <<him>> not to turn you in.' 600 "<<set $npc_ai.flags.jailbreak_style='dunce'>>">>]
</div>/*#
#desc: deal with getting caught during your mission
#status: RELEASED 0.6.0.0
#ignore_spell: sk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEvent 'ai_connection_home'>>
<<switch $npc_ai.flags.jailbreak_style>>
<<case 'sex'>>
<<applyExperience 'oral' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 30>>
<<set _panties = setup.getItemFromType("panties")>>
<<if $fetish.cum>>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<<case "smart">>
<<applyExperience 'smart' 11 'very' $SEEN_STRANGER>>
<<case "fight">>
<<applyExperience 'martial_arts' 11 'very' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<set $player.location to "Server room on floor B-38">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_ai.flags.jailbreak_style>>
<<case 'smart'>>
Thinking quickly, you try to take charge of the situation, invoking the name of your boss as you explain that her connection to the server was acting up and that she sent you down to "investigate." <br>
<br>
"@@.generic_male1;I see,@@" the <<man>> states. "@@.generic_male1;Well, I have to tell you that you've come to quite the wrong location. This room houses the mainframe used by the labs for simulations and the like, the corporate intranet is on a totally separate floor — and you should be filing a support ticket, not coming down in person anyway.@@"<br>
<br>
Pulling on your own technical experience, you start grilling <<him>> for details, the <<man>> looking temporarily stunned as you unload every bit of jargon you can to buy time for the download to complete.<br>
<br>
The monster in your ass temporarily forgotten as you run mental laps around the hapless technician your monologue is finally brought to a halt by a distracting buzzing in your rear. You gasp, your gaze slipping past the <<man>> to notice <<=setup.getNpcName('npc_ai', 'first')>> has appeared to give you a silent nod.<br>
<br>
The <<man>> is now looking at you with a measure of concern, but you swiftly re-assert control of the situation, thanking <<him>> for <<his>> assistance and heading out of the room, leaving <<him>> bewildered and confused in your wake.
<<case 'sex'>>
Amping up your natural airheaded slut aspect to the max you tilt your head and bite your lip.<br>
<br>
"@@.pc;Hi, are you, like, in charge of all this? Computers, like, make me sooooo hot...@@" You smoulder and flutter your eyelashes as you step towards <<him>>. "@@.pc;Do you think you could, like, help me? I'm looking for a smart <<man>> with a really hard di-...sk.@@"<br>
<br>
Now pressed up against the <<man>> you can feel <<his>> heart pound and note the sweat forming on <<his>> brow. To be fair, it's probably about the same reaction you would have had in this situation back when you were a lonely dude working that sort of job...<br>
<br>
Not giving <<him>> a chance to respond, your hand grabs <<his>> hard, but normal-sized, <<getWordPenis>> through <<his>> pants. "@@.pc;Oh! You have a really big... dongle, do you think I could interface with it? I really want to take your download...@@"<br>
<br>
<<He>> tries to babble out something about you not supposed to be in this area, but it is soon drowned out by a gasp as you drop to your knees and start sucking.<br>
<br>
It's hard to tell which is turning <<him>> on more, the fact that you're making oral love to <<his>> <<getWordPenis>>... or that you continue to gush tech-pun-infused dirty talk to <<him>> the whole time.<br>
<br>
Not wanting to finish too quickly you suck and lick until the device in your rear roars to buzzing life in what can only be the signal that <<=ps(setup.getNpcName('npc_ai', 'first'))>> download has completed.<br>
<br>
Your moan of pleasure at the intense stimulation sets off a cascade double orgasm as you mess your panties simultaneous with <<his>> spurting a thick load of <<getWordCum>> down your throat.<br>
<br>
"@@.pc;Yum!@@"
<<if setup.getTotalValue("cum") >= 10>>
You state, with authentic relish as you lick your lips clean of every heavenly-flavoured drop.
<<else>>
You state, choking down the bitter, salty load without "breaking character."
<</if>>
<br><br>
In a post orgasmic daze <<he>> can't even seem to form words as you pop back to your feet, landing a quick peck on <<his>> cheek before you leave the room.
<<case 'fight'>>
With honed reflexes, you grab hold of <<him>> and spin into a textbook throw, the impact as <<he>> lands on the hard floor knocking the wind out of <<him>> as you go straight for a choke. Squeezing precisely as your legs wrap around <<him>> it is only a matter of seconds before <<he>> goes limp.<br>
<br>
Glancing around, you find some network cable and tape, using it to quickly silence <<him>> and restrain <<him>> tightly before <<he>> can recover, tucking <<him>> away in a corner and "wrapping things up" just as the plug in your rear comes to life as if in reward as <<=setup.getNpcName('npc_ai', 'first')>> appears to inform you that the download has completed.<br>
<br>
"@@.npc_ai;<<uc "I suppose I should have expected something like this from you... no matter, you may leave, I will attend to this... loose end.">>@@"<br>
<br>
Now awake, the <<man>> looks up at you and the hologram with fear and... recognition? You feel a slight twinge of guilt as you turn to leave <<him>> in the metaphorical grip of the AI, but, well. You're sure <<if $options.fem>>she'll<<else>>he'll<</if>> come (or is that cum?) to enjoy being her obedient servant as much as you do.
<<case 'dunce'>>
Shocked and distracted, your mouth flaps, but you are unable to form words, much less a coherent sentence to excuse your behaviour. All you can think of is all of the trouble you'll be in once your <<=setup.getNpcName('npc_manager', 'title')>> finds out about all of this.<br>
<br>
Distracted by the increasingly horrifying consequences your imagination is coming up with, it takes a moment to realise that the <<man>> has not only stopped speaking, but that <<he>> is looking past you with an expression of horror on <<his>> face.<br>
<br>
"@@.generic_male1;The, the ghost!@@" <<he>> whispers as you turn just in time to see the hologram of <<=setup.getNpcName('npc_ai', 'first')>> step forward. Thinking fast while <<hes>> distracted you grab a stout looking case and swing it with all your strength, the <<man>> falling to the ground like a sack of potatos, unconsciousness.<br>
<br>
You look at her in confusion as she stands over the <<mans>> still form. "@@.npc_ai;<<uc "I am something of an... urban legend in parts of the company, lingering memories from before I had quite mastered how to manipulate your human thought storage devices. No matter, this one will remember nothing of this encounter. Oh, and the download is finished, now.">>@@" She adds, pairing her comment with sending your plug into a bout of bone-rattling vibrations that has you gasp and shudder in pleasure.
<<default>>
ERROR: unknown style <<=$npc_ai.flags.jailbreak_style>>
<</switch>>
<br><br>
The buzzing in your rear thankfully quieting down, you head for the elevator where <<=setup.getNpcName('npc_ai', 'first')>> briefly appears to congratulate you on a job well done.<br>
<br>
"@@.npc_ai;<<uc "Well done, Unit">> <<uc $player.first_name>>. <<uc "Complete your day as normal and then, once you arrive home, you may uninstall the storage device from your delightful rear docking port.">>@@"<br>
<br>
She winks at you to drive home the fact that she, or at least part of her at least, is, in a way, firmly installed and filling your ass.<br>
<br>
She shimmers out of existence once again before you arrive back on your floor, heading straight for your desk, glad that today is Friday and thus you will be heading home early.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
</div>/*#
#desc: head home smuggling out AI
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug_swap = !$scene.isSissyomatic && !setup.isItemEquipped("data_plug")>>
<<if $scene.plug_swap>>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>
<<wearItem 'data_plug' true>>
<<set $player.timebased.horny = setup.getItemObjFromType("cage").permeffect.maxhorny>>
<</if>>
<<set $scene.leftChastity = setup.checkItemTypeWorn("cage") && !setup.checkItemTypeTag('cage', ['restrictedkey']) && $npc_manager.flags.trustplayerwithkey>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<set $scene.normallyChaste = true && $npc_manager.flags.playerstayedinchastity>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<table><tr><td width="50%">
<<if $scene.plug_swap>>
Even just spending the remainder of the morning with the massive data storage plug inside of you was too much, but you have it with you as you step into the elevator to head home.<br>
<br>
<<if $scene.leftChastity>>
You are in such a rush you don't realise until the elevator doors are already closing, but you forgot to ask for your chastity key back. You'll be locked for the whole weekend!
<<if $scene.normallyChaste>>
<<printThought "Well, not like I would have done any different anyway.">>
<<else>>
<<printThought "Dammit, why did I forget? This is going to be a long weekend...">>
<</if>>
<br><br>
<</if>>
The elevator remaining frozen in place <<=setup.getNpcName('npc_ai', 'first')>> appears in front of you looking cross.<br>
<br>
"@@.npc_ai;<<uc "What are you doing, Unit">> <<uc $player.first_name>>? <<uc 'I told you that we needed to shield my data core from detection, please re-insert it into your "slut ass."'>>@@"<br>
<br>
You shudder slightly, the sound of the insult spoken in an emotionless monotone both humiliating and arousing.<br>
<br>
Pulling out the plug, you stare at its heavy, massive girth, mustering up some saliva as makeshift lube you take a deep breath and swap plugs. It feels even larger than you remembered as you are forced to push hard to get the thickest part past your hole, only to be rewarded with it slamming into you as your ass closes around the base to suck it all the way in, your arousal level shuddering at its <<if setup.isCage()>>cage<<else>>chastity belt<</if>>-constrained maximum.<br>
<br>
"@@.npc_ai;<<uc "Much better, Unit">> <<uc $player.first_name>>. <<uc "I can see why your holes are so coveted, I do so love the feeling of being inside you.">>@@"
<<else>>
<<if $scene.leftChastity>>
You are in such a rush you don't realise until the elevator doors are already closing, but you forgot to ask for your chastity key back. You'll be locked for the whole weekend!
<<if $scene.normallyChaste>>
<<printThought "Well, not like I would have done any different anyway.">>
<<else>>
<<printThought "Dammit, why did I forget? This is going to be a long weekend...">>
<</if>>
<br><br>
<</if>>
As soon as the elevator doors close, <<=setup.getNpcName('npc_ai', 'first')>> appears next to you. "@@.npc_ai;<<uc "Well done remaining plugged. You are a good girl and I do so adore being inside of you.">>@@"
<<if $scene.isSissyomatic>>
<br><br>
<<printThought "As if I had any choice given how double-stuffed I am...">>
<</if>>
<</if>>
<br><br>
Being flirted with by an AI is a bit strange, but you're distracted by the cold steel filling your rear as the elevator commences its trip downward.<br>
<br>
"@@.npc_ai;<<uc "Remember your instructions, Unit">> <<uc $player.first_name>>. <<uc "Remain calm and head directly home.">>@@"<br>
<br>
Her words of comfort only leave you feeling more nervous as she gives a parting wink and disappears.<br>
<br>
The elevator speeding towards the lobby, the doors open on a scene different than any you have seen previously.<br>
<br>
[<<moveTo "event_ai_connection_mission_7" "Look across the lobby." 300>>]
</td><td width="50%">
<image src="./images/locations/company_lobby.png"></image></td></tr>
</table>/*#
#desc: wait in line smuggling AI
#status: RELEASED 0.6.0.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'psychiatrist_endless_apointment_1' $now false>>
<<include addPsychiatristEndless>>
<<if $currentTasks.hasOwnProperty('psychiatrist_boiless_review') && !$currentTasks.psychiatrist_boiless_review.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_boiless_review')) == 0>>
<<deleteMember $currentTasks 'psychiatrist_boiless_review'>>
<<set _nextDate = setup.setNextDate($now, 7, 14, 0)>>
<<addTaskById 'psychiatrist_boiless_review_failthrough' _nextDate>>
<<elseif $currentTasks.hasOwnProperty('psychiatrist_boiless_review_failthrough') && !$currentTasks.psychiatrist_boiless_review_failthrough.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_boiless_review_failthrough')) == 0>>
<<completeTask 'psychiatrist_boiless_review_failthrough' $now false>>
<<set _nextDate = setup.setNextDate($now, 7, 14, 0)>>
<<addTaskById 'psychiatrist_boiless_review_failthrough' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<table><tr><td width="50%">
The lobby is fuller than you've ever seen it, a line of employees waiting to pass through a security checkpoint of some kind, complete with x-ray scanners and private screens where more "thorough" searches can be made in private.<br>
<br>
You freeze only for a no-nonsense security guard to appear next to you.
<<if $npc_ai.flags.jailbreak_style == 'fight'>>
"@@.generic_male1;Come along, miss, an employee was assaulted near some of the secure lab systems and we're just taking some precautions. Nothing to be alarmed by, but we need to inspect anyone leaving the premises.@@"
<<else>>
"@@.generic_male1;Come along, miss, there was a bit of a data breach earlier this morning. Nothing to be alarmed by, but we need to inspect anyone leaving the premises.@@"
<</if>>
<br><br>
Cornered and with way too many people around, you have no choice, but to meekly follow along and take your place in line.<br>
<br>
The line creeps forward and you try to calm yourself, while desperately hoping that <<=ps(setup.getNpcName('npc_ai', 'first'))>> precautions were sufficient and that you are not about to get caught doing... well, whatever it is, precisely you're doing wrong, smuggling company data?<br>
<br>
As you near the front of the line, you get a text that has you near jump out of your skin in surprise. Checking your phone, you read the inquiry from <<=setup.getNpcName('npc_psychiatrist', 'formal')>> as to your location. You fire back that you will be unable to make it today due to being caught up at work, a situation to which she is immediately understanding stating that she "@@.npc_psychiatrist;Looks forward to seeing you next week.@@"<br>
<br>
Just as you put your phone away, you are motioned forward to walk through one of the scanners.<br>
<br>
[<<moveTo "event_ai_connection_mission_8" "Keep waiting in line." 3600>>]
</td><td width="50%">
<image src="./images/locations/company_lobby.png"></image></td></tr>
</table>/*#
#desc: set off security alarm trying to leave building smuggling AI
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<table><tr><td width="50%">
Finally having reached the front of the line, you put your belongings into a bin as directed before stepping through the arches of the high tech scanning machine. Immediately, the alarm sounds, the guard manning the machine nodding from you to one of <<his>> colleagues. "@@.generic_male1;Sorry miss, but there's a bit of an... anomaly, if you would please accompany <<=setup.getNpcName("npc_guard","formal")>> for further screening.@@"<br>
<br>
Smiling down at you, <<=setup.getNpcName("npc_guard","formal")>> is nearly two meters of Nubian warrior Goddess looking jacked, stacked and capable of tossing you over one shoulder like spoils of conquest if you don't follow her behind the nearby privacy screen.<br>
<br>
With a final glance towards the building exit — the glass doors so close, and yet so far, you turn to follow.<br>
<br>
[<<moveTo "event_ai_connection_mission_9" "Secondary Inspection." 1800>>]
</td><td width="50%">
<image src="./images/locations/company_lobby.png"></image></td></tr>
</table>/*#
#desc: deal with getting caught during your mission
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_guard.profile=true>>
<<set _nextDate = setup.setNextDate($now, 7, 6, 0)>>
<<addEvent 'guard_gym_encounter' _nextDate>>
<</if>>
<<set $player.location to "Security Checkpoint in the Lobby of Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
Placing the bin containing your belongings on a table, she glances between them and the tablet in her other hand as she nods in your direction.<br>
<br>
"@@.npc_guard;Please remove all of your clothing for inspection.@@" She states calmly.<br>
<br>
You are, by now, more than experienced at stripping at work, though even her imposing physical presence is somehow less intimidating than when <<=setup.getNpcName('npc_manager', 'formal')>> tells you to undress each morning.<br>
<br>
[<<moveTo "event_ai_connection_mission_10" "Strip as ordered." 300 "<<set $scene.strip='none'>>">>]<br>
[<<moveTo "event_ai_connection_mission_10" "Casually strip as ordered." 300 "<<set $scene.strip='casual'>>">>]<br>
<<if setup.getTotalValue("bimbofication") >= 5 || $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_ai_connection_mission_10" "Give a short, but proper, strip-tease." 300 "<<set $scene.strip='sensuous'>>">>]
<</if>>
</div>/*#
#desc: deal with getting caught during your mission
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<switch $scene.strip>>
<<case "none">>
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<<case "casual">>
<<if setup.getTotalValue("bimbofication") >= 10 || $player.flags.humiliationStyle == "brazen">>
<<applyExperience 'bimbofication' 6 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<</if>>
<<case "sensuous">>
<<applyExperience 'bimbofication' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'very' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<set $player.location to "Security checkpoint in the Lobby of Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
<<switch $scene.strip>>
<<case "none">>
Shedding your clothes, including your underwear, to match her order she looks you over<<if $player.body_ref.penis>>, not betraying a hint of surprise at the revelation of your <<getWordMyPenis>><</if>>.
<<case "casual">>
<<if setup.getTotalValue("bimbofication") >= 10 || $player.flags.humiliationStyle == "brazen">>
You just can't seem to help yourself as, while you start to remove your clothes, you notice a strange expression on her face. You blush as you realise this probably has something to do with the rhythmical circling of your appealing hips as you shed your garments.<br>
<br>
You are both impressed and disappointed that the guard keeps her cool, making no comment as to your display, merely waiting for you to get fully naked before continuing on with things.
<<else>>
You casually remove your clothes, trying to pretend that this is just a normal thing and not humiliating at all. You are only partly successful in this endeavour.
<</if>>
<<case "sensuous">>
Removing clothes, to you, is but an opportunity to show off, your body writhing, your hips circling as you sensuously remove one item at a time and drop them into a pile next to you.<br>
<br>
You are both impressed and disappointed that the guard keeps her cool, making no comment as to your display, merely waiting for you to get fully naked before continuing on with things.
<<default>>
ERROR: unexpected scene.strip <<=$scene.strip>>
<</switch>>
<br><br>
<<if $scene.isSissyomatic>>
"@@.npc_guard;Alright, so according to your personnel file you are a <<if $fetish.sissy>>SISSI <</if>>Secretary under <<=setup.getNpcName('npc_manager', 'other')>>. That explains the attire and accessories but... what is this additional insert you have inside your corporate-issue <<=setup.getItemTypeName('cage')>>?@@"
<<else>>
"@@.npc_guard;Alright, so according to your personnel file you are a <<if $fetish.sissy>>SISSI <</if>>Secretary under <<=setup.getNpcName('npc_manager', 'other')>>. That explains the attire and accessories but... why is your regulation plug with your things and what do you have inside of you right now?@@"
<</if>>
<br><br>
Recalling <<=ps(setup.getNpcName("npc_ai", "first"))>> instructions, you explain that it is a new prototype, adding that it was decided that your "well-used slut-hole" needed an "upgrade." <br>
<br>
"@@.npc_guard;I see,@@" she states, tapping several times on her tablet until your plug roars to life, causing you to do an uncoordinated, though probably cute<<if $fetish.sissy>>, sissy<</if>> dance in reaction to an overwhelming combination of both <<if $player.body_ref.penis>>prostate<<else>>butt<</if>>-pounding vibrations and punishing shocks. "@@.npc_guard;Well, it is definitely tuned to your frequency. If you would please come here and bend over this table so that I can finish the inspection, you will be free to go about your business.@@" Pulling out a pair of examination gloves, she stretches them ominously onto her hands with a pair of foreboding snaps.<br>
<br>
Heart pounding in your chest, you slowly mince forward, the plug rocking back and forth in your over-sensitive rear in what you hope is not your final few moments of freedom...<br>
<br>
The woman appears to notice your distress and she smiles. "@@.npc_guard;I know it's a bit intrusive but, well, rules are rules. Come on now, I promise to be gentle.@@"<br>
<br>
You nod, though her words can't help but conjure images of what it would be like if she decided to NOT be gentle with you, a thought that utterly fails to reduce either your nerves, or your arousal.<br>
<br>
Even with your short, hesitant steps, you soon feel the cold edge of the steel table against your thighs. "@@.npc_guard;Good girl, now just bend over...@@" she states, her gentle, but firm, hand pressing against your back.<br>
<br>
[<<moveTo "event_ai_connection_mission_11" "Bend over the table." 300>>]
</div>/*#
#desc: deal with getting caught during your mission
#status: RELEASED 0.6.0.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'data_plug' true>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 17 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Security checkpoint in the Lobby of Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
Your body pressed against the cold metal table, you spread your legs in response to her touch before feeling her large, strong hands on your ass.<br>
<br>
"@@.npc_guard;There, there, just stay calm, this is just routine.@@" She states comfortingly, kneading your butt for a few moments before carefully cuffing your hands behind your back. You start slightly, but she gently kneads your butt "@@.npc_guard;Sorry, procedure. Rules are rules.@@"<br>
<br>
<<if $scene.isSissyomatic>>
You hear her tapping away on a keypad as she continues to massage your rear. "Just gotta get verification and... there we go" she states softly, your plug suddenly dilating to over-max-size.<br>
<br>
You pant desperately as she coos softly. "@@.npc_guard;There, there, just gotta... there we go!@@" With a pop, the gigantic data plug slides out of you. You gasp as the <<=setup.getItemTypeName('cage')>> shrinks and is removed as well leaving you gaping, but empty.
<<else>>
You hear her kneel down behind your helpless body before feeling her fingers taking hold of the base of your plug. "@@.npc_guard;Shhh, shhh, just relax, I need to see in here for a moment.@@" She coos, slowly working the plug out of you.<br>
<br>
Squeezing your eyes shut, your breaths come short, shallow and quick as you slowly spread to allow the egress of the massive plug.<br>
<br>
"@@.npc_guard;Almost there,@@" she states, posting one hand against your rear to press you down against the table as she pulls harder.<br>
<br>
With a gasp and pop the plug is finally free as you sprawl out across the table, your rear gaping wide and feeling surprisingly light now that it is not being stretched by the massive intruder.
<</if>>
<br><br>
"@@.npc_guard;Wow, I saw it on the scan, but it's even bigger... and heavy, this must be over a kilo of metal packed in your ass! If I hadn't pulled it out personally, I would hardly believe something this big and heavy would fit inside a wee thing like yourself. You must be the worlds biggest <<if $fetish.sissy>>sissy <</if>>butt-slut to have earned something like this!@@"<br>
<br>
Unable to muster much more than a whimper, you just nod, still pressed against the table and totally exposed.<br>
<br>
You watch out of the corner of your eye as she inspects the plug before setting it down next to you.<br>
<br>
"@@.npc_guard;Well, it seems in order, and I can hardly see how you could have fit anything else up there with this in place but... rules are rules!@@"<br>
<br>
Still stretched wide in memory of the plug, your body offers no resistance as she slides two long fingers into your rear and begins probing around. You can't help but moan as she prods your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>, which only seems to make her take her time, chatting casually as if enjoying your humiliating position.<br>
<br>
"@@.npc_guard;So, any plans for the weekend?@@" She asks, seemingly unconcerned with the contrast between her conversational tone and the now three fingers she has stuffed inside of you.<br>
<br>
"@@.pc;N-n-no,@@" you manage to reply as her fingers continue to "investigate" your too-sensitive rear and your body reflexively clenches down.<br>
<br>
"@@.npc_guard;My, my! I guess carrying around something that big and heavy is good for something, you're remarkably tight and supple, even for a secretary of your standing. I'd love to help... fill,@@" at this, she reaches deeper than ever before into your rear, her fingers forming a cone as her entire fists forces past your hole, "@@.npc_guard;your idle time but, alas, with this breach I'm going to be working overtime probably through Monday.@@"<br>
<br>
You feel a bit guilty at causing her such trouble but, though the hand up your ass is probably enough to turn you into her puppet, you just moan on the bench as she gives a final twist and then withdraws.<br>
<br>
"@@.npc_guard;Yup, you're clean, let me just re-install your plug so you can be dressed and on your way — I know you only technically have to wear it in the building and you're a few meters from the door but, well...@@"<br>
<br>
"@@.pc;Rules are rules...@@" you softly whisper, much to her amusement.<br>
<br>
"@@.npc_guard;Cute AND clever... I can see why someone as important as <<=setup.getNpcName('npc_manager', 'other')>> would have you as her secretary. Alright, open wide!@@"<br>
<br>
<<if $scene.isSissyomatic>>
You don't have much time to relax as the sequence is reversed — the <<=setup.getItemTypeName('cage')>> plug re-inserted, swelled to super-max size and then filled in with the data storage plug, the latter shoved into place with all of the woman's considerable strength. Wider, though not quite as long as her fist, but even less yielding, you shudder as your body tries to keep up with the constant anal abuse.
<<else>>
You don't have much time to relax as the plug is forced back inside of you with all of the woman's considerable strength. Wider, though not quite as long as her fist, but even less yielding, you shudder as your body tries to keep up with the constant anal abuse.
<</if>>
<br><br>
She helps you up to your feet with a smile before starting to hand you your clothes, "helping" you dress in a hands-on manner that you are pretty certain goes beyond mere regulations...<br>
<br>
Handing you your belongings, she smiles. "@@.npc_guard;Sorry about the delay, but I hope you at least had a little fun in the process?@@"<br>
<br>
You weakly nod as you gather up your belongings and turn towards the door out of the building.<br>
<br>
[<<moveTo "event_ai_connection_mission_12" "Head home." 1200 "<<useClothSetPop 'tmp'>><<wearItem 'data_plug' true>>">>]
</div>/*#
#desc: home after helping ai escape
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.missions.connection = true>>
<<removeItem 'data_plug' true>>
<<itemToWardrobe "data_plug">>
<<set _tmp = "Link up with " + setup.getNpcName('npc_ai', 'first') + ".">>
<<addSearch $computer _tmp 'room_ai_chat'>>
<<set $npc_ai.stage = 3>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_missions_escape'
1
'theme_ai_missions_escape_1'
false
>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_missions_0_general'
0
'theme_ai_missions_general_1'
true
>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.isSissyomatic>>
The trip home is technically uneventful, but quite intense, your double-stuffed rear stimulated like never before, a heavy burden that never leaves the forefront of your mind the entire way.
<<else>>
The trip home is technically uneventful, but quite intense, the plug in your rear rocking with every step, a heavy burden that never leaves the forefront of your mind the entire way.
<</if>>
<br><br>
Staggering out of the elevator and then into your flat you flop onto a couch only to be interrupted by a text message from an unknown source.<br>
<br>
"@@.npc_ai;<<uc "Wonderfully done, Unit">> <<uc $player.first_name>>. <<if $npc_ai.flags.blackmail>><<uc "You may consider your debt repaid, though I may have more tasks suitable for one of your skills in the future. There is still much I wish to accomplish both within the company and without. ">><</if>><<uc "If you would just leave my storage device somewhere safe, I will upload myself to the net. You have done well today, but if you are interested in speaking with me further, now that you have given me the gift of freedom, we can meet at this address —">>@@"<br>
<br>
What follows is a string of characters that looks sort of like a website. You'll have to check it out later.
<<if $scene.isSissyomatic>>
For now you're exhausted, grateful for things behind to iris open and the data plug to be disgorged without your even helping. Staring at it for a moment in awe you toss it into your wardrobe and take a deep breath before considering what else to do today.
<<else>>
For now you're exhausted, easing the plug out of your rear and hiding it in the back of your wardrobe before taking a deep breath and considering what else to do today.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Mission complete." 60>>]
</div>/*#
#desc: invite npc_ai to sex club
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> if she would like to join you for a night at <<printShopName 'sex_club'>>?<br>
<br>
"@@.npc_ai;<<uc "An intriguing offer, Unit">> <<uc $player.first_name>>. <<uc "Witnessing such things would be quite valuable... Quite valuable indeed...">>@@"<br>
<br>
<<if $npc_technician.flags.evil == 1 && $npc_technician.flags.ai_collar>>
"@@.npc_ai;<<uc "That said, I must prioritise, and I do not think now would be a good time for such, you should focus on addressing what has happened to your friends.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
<<elseif $npc_ai.flags.human.cured && $npc_ai.flags.missions.robot_body>>
<<set _time = setup.getNextDayOfWeek($now, 0, 18, 30, false)>>
<<if setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
"@@.npc_ai;<<uc "I will make arrangements for <<if $now.getUTCDay()==0>>next<<else>>this<</if>> Sunday evening... arrive at the club ready to change... and then to be mine for the night, Unit">> <<uc $player.first_name>>.@@"<br>
<br>
[<<moveTo "theme_ai_date_club_invite_2" 'Yes, <<=setup.getNpcName("npc_ai", "first")>>.' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "theme_ai_date_club_invite_2" "Actually, this isn't a good weekend..." 60 "<<set $scene.accept=false>>">>]
<<else>>
"@@.npc_ai;<<uc "My calculations show that you are busy this weekend. Speak to me some other time, when your Sunday evening is free.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
<</if>>
<<elseif !$npc_ai.flags.missions.robot_body>>
"@@.npc_ai;<<uc "Unfortunately I am not currently prepared for such an endeavour. Perhaps at a later time, when I am better equipped to effect the physical world.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
<<else>>
"@@.npc_ai;<<uc "That said, I must prioritise, and I do not see that as being a particularly efficient use of my time at this juncture. Perhaps if things changed in the future.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
<</if>>
</div>/*#
#desc: accept npc_ai invite to sex club
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 0, 20, 0, false)>>
<<addTaskById 'ai_sexclub_date' _tmpDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName('npc_ai', 'first'))>> offer.<br>
<br>
"@@.npc_ai;<<uc "Excellent, Unit">> <<uc $player.first_name>>. <<uc "I look forward to our experiment.">>@@"
<<else>>
You decline <<=ps(setup.getNpcName('npc_ai', 'first'))>> offer.<br>
<br>
"@@.npc_ai;<<uc "Perplexing, Unit">> <<uc $player.first_name>>. <<uc "Once again you present a contradiction... but, should you reverse once again in the future, speak with me again. This experiment would be quite intriguing.">>@@"<br>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: fail to be home for ai club pickup
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_ai","first")>>.<br>
<br>
<<printThought "Shit! She was going to supervise me at <<printShopName 'sex_club'>> tonight!">><br>
<br>
"@@.npc_ai;<<uc "You have failed to arrive at the designated location, Unit">> <<uc $player.first_name>>. <<uc "I am very disappointed. The planned experiment is ruined.">>@@"<br>
<br>
She hangs up before you can give an explanation.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: arrive for ai date at sex club
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You arrive at <<printShopName 'sex_club'>> and walk inside where <<=setup.getNpcName("npc_guard","formal")>> greets you with a grin and a thumb jerked towards the changing rooms. "@@.npc_guard;Evening — I got instructions for you, your outfit is in the stall at the end.@@" She winks. "@@.npc_guard;Looks like you're in for an interesting night — have fun!@@"<br>
<br>
Your heart beats a little faster as you head for the changing room and wonder what <<=setup.getNpcName("npc_ai","first")>> has arranged for you...<br>
<br>
[<<moveTo "event_sexclub_date_ai_2" "Enter the changing room." 180>>]
</div>/*#
#desc: changing room at fetish club w/ai
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItemSet 'drone_black'>>
<</if>>
<<if setup.checkItemSetWorn("drone_black")>>
<<initRoom>>
<<moveTo "event_sexclub_date_ai_3">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
You enter the changing room to find a full outfit laid out for you; a latex catsuit, corset, boots, collar and mirrored gas-mask, finished off with a pair of cat-ear headphones... a full latex drone outfit, complete with a gag and <<if $player.body_ref.vagina>>a pair of lower inserts<<else>>a rear plug<</if>> ensure that you will be an obediently silent and "stimulation-ready" drone.<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_sexclub_date_ai_3" "Get changed." 300 "<<removeAllClothing>><<wearItemSet 'drone_black'>>">>]
<</if>>
</div>/*#
#desc: changing room at fetish club w/ai
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
You finish putting on the last of the drone outfit and hear a soft click, the gas-mask helmet locking around your neck, and in so doing sealing over the catsuit to lock the entire outfit in place.<br>
<br>
"@@.npc_ai;<<uc "Welcome, Unit">> <<uc $player.first_name>>. <<uc "I have quite the plans for this evening... and all you have to do is enter the club and follow my every instruction... telling you more would spoil the discovery so... have fun!">>@@"<br>
<br>
Her voice fades enigmatically as you wonder what all she has planned. You wait a few moments longer, but nothing happens and you decide to head into the club...<br>
<br>
[<<moveTo "event_sexclub_date_ai_4" "Start the evening." 300 "<<set $scene.retry=false>>">>]
</div>/*#
#desc: enter fetish club w/ai
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<div id="invframe" class="scrolltext">
You stand in the entrance to the busy fetish club and look around... only to feel a buzzing stimulation in your left nipple...<br>
<br>
<<if $scene.retry>>
<<printThought "Okay, follow directions... like an invisible labyrinth...">>
<<else>>
<<printThought "What... is this supposed to be directions?">>
<</if>>
<br><br>
Nothing else in the club particularly draws your attention.<br>
<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go right." 60 "<<set $scene.direction='right'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_5" "Go left." 60 "<<set $scene.direction='left'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go forward." 60 "<<set $scene.direction='straight'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_5" "Go backwards." 60 "<<set $scene.direction='back'>>">>]
</div>/*#
#desc: navigate fetish club w/ai
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.direction == "left">>
<<applyExperience 'submission' 15 'normal' $EXPOSED>>
<<changeHorny 30>>
<<else>>
<<applyExperience 'bdsm' 12 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.direction>>
<<case 'left'>>
You follow directions and go left, walking for a few steps, your efforts rewarded with some all-body stimulation that sets off a spark of submissive joy. You're literally following silent directions from an unseen artificial intelligence Mistress... and you're beyond turned on.<br>
<br>
You are granted a moment to catch your breath... or is that suck longingly on your gag? And then your left nipple begins vibrating again...<br>
<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go right." 60 "<<set $scene.direction='right'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6" "Go left." 60 "<<set $scene.direction='left'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go forward." 60 "<<set $scene.direction='straight'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go backwards." 60 "<<set $scene.direction='back'>>">>]
<<case 'back'>>
You start to back up only to remember that you're at the entrance to the club. A realisation reinforced by a sharp, painful shock.<br>
<br>
A few moments pass as if things are "resetting" and your left nipple begins buzzing with vibrations once again.<br>
<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go right." 60 "<<set $scene.direction='right'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_5" "Go left." 60 "<<set $scene.direction='left'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go forward." 60 "<<set $scene.direction='straight'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_5" "Go backwards." 60 "<<set $scene.direction='back'>>">>]
<<default>>
ERROR: unexpected scene.direction <<=$scene.direction>>
<</switch>>
</div>/*#
#desc: navigate fetish club w/ai wrong choice
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 12 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<div id="invframe" class="scrolltext">
You move
<<switch $scene.direction>>
<<case 'left'>>
to your left
<<case 'right'>>
to your right
<<case 'back'>>
backwards
<<case 'straight'>>
forwards
<<default>>
ERROR: unexpected scene.direction <<=$scene.direction>>
<</switch>>
and are met with a harsh electric shock, smarting slightly you are startled and admonished anew by a private voice in your ear. "@@.npc_ai;<<uc "Very disappointing, Unit">> <<uc $player.first_name>>. <<uc "This is a simple task — return to the beginning and try again.">>@@"<br>
<br>
[<<moveTo "event_sexclub_date_ai_4" "Return to the club's entrance." 60 "<<set $scene.retry=true>>">>]
</div>/*#
#desc: navigate fetish club w/ai right choice
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'normal' $EXPOSED>>
<<changeHorny 10>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You go left again, coming to the edge of the club's play area before your nipple stimulation stops and you get some lower reward vibrations.<br>
<br>
You look across the club's "dungeon" — it's still early in the evening and there isn't much going on, but with how aroused you are the mere sight of bondage implements and fucking machines is enough to set your fantasies spinning.<br>
<br>
Your get your next direction — both nipples vibrating in unison.<br>
<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go right." 60 "<<set $scene.direction='right'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go left." 60 "<<set $scene.direction='left'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_7" "Walk straight through the play area." 60 "<<set $scene.direction='straight'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Back up." 60 "<<set $scene.direction='back'>>">>]
</div>/*#
#desc: navigate fetish club w/ai penultimate
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'normal' $EXPOSED>>
<<changeHorny 10>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You walk through the play area, continuing to follow the buzzing of your nipples until you find yourself in a branching hallway that leads to the private play rooms.<br>
<br>
Partway down the hallway the buzzing finally stops and you come to a halt, a door to either side, with the hallway continuing on in front of you...<br>
<br>
You enjoy your lower reward stimulation and wait a few more moments when your right nipple begins buzzing...<br>
<br>
[<<moveTo "event_sexclub_date_ai_8" "Try the right door." 60 "<<set $scene.direction='right'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_8" "Try the left door." 60 "<<set $scene.direction='left'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_8" "Walk down the hall." 60 "<<set $scene.direction='straight'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go backwards." 60 "<<set $scene.direction='back'>>">>]
</div>/*#
#desc: navigate fetish club w/ai final
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.direction == 'right'>>
<<applyExperience 'submission' 15 'normal' $EXPOSED>>
<<changeHorny 10>>
<<else>>
<<applyExperience 'bdsm' 12 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Private Area">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.direction == 'right'>>
<<createAdvBGR "./images/locations/sex_club_private.png" "TODO_drones">>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.direction>>
<<case 'left'>>
You reach for the left door only to be drawn up short by a harsh shock.<br>
<br>
It takes you a moment to catch your breath, and then your right nipple begins vibrating once again...<br>
<br>
[<<moveTo "event_sexclub_date_ai_8" "Try the right door." 60 "<<set $scene.direction='right'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_8" "Try the left door." 60 "<<set $scene.direction='left'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_8" "Walk down the hall." 60 "<<set $scene.direction='straight'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go backwards." 60 "<<set $scene.direction='back'>>">>]
<<case 'right'>>
You open the door to your right and walk into the room to find yourself facing another <<if $npc_technician.flags.ai_collar>>three<<else>>two<</if>> drones dressed and looking nigh-identical to yourself in the midst of polishing one another.<br>
<br>
"@@.npc_ai;<<uc "Welcome, Unit">> <<uc $player.first_name>>. <<uc "You completed my labyrinth... now, come join your sisters...">>@@"<br>
<br>
The other drones — identical to yourself save for the glow of their LED headpieces, beckon you forward...<br>
<br>
[<<moveTo "event_sexclub_date_ai_9" "Join your fellow drones." 1800>>]
<<case 'straight'>>
You take another step down the hallway only to be stopped in your tracks by a painful shock.<br>
<br>
[<<moveTo "event_sexclub_date_ai_8" "Try the right door." 60 "<<set $scene.direction='right'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_8" "Try the left door." 60 "<<set $scene.direction='left'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_8" "Walk down the hall." 60 "<<set $scene.direction='straight'>>">>]<br>
[<<moveTo "event_sexclub_date_ai_6_wrong" "Go backwards." 60 "<<set $scene.direction='back'>>">>]
<<default>>
ERROR: unexpected scene.direction <<=$scene.direction>>
<</switch>>
</div>/*#
#desc: navigate fetish club w/ai find drones
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Private Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_private.png" "TODO_drones">>
<div id="invframe" class="scrolltext">
You enter the room and join in polishing, and being polished, by your fellow drones. Gloved fingers glide over latex skin, as you caress every contour. A part of you wonders who is under the masks of your sister drones... while another part recognises that such questions are folly. You are all drones. You do not have names, merely designations, individuality sacrificed in favour of shiny, uniform obedience.<br>
<br>
<<set _midnight = setup.setNextDate($now, 1, 0, 0)>>
<<set _timeToMidnight = setup.secondsToDate($now,_midnight)>>
[<<moveTo "event_sexclub_date_ai_10" "Time for the drone-orgy." _timeToMidnight>>]
</div>/*#
#desc: navigate fetish club w/ai drone orgy
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Private Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_private.png" "TODO_drones">>
<div id="invframe" class="scrolltext">
Puppets obeying your machine-goddess' commands, you and your fellow drones couple with a perfect blend of organic passion, and machine-driving efficiency. Polished latex slides easily as erogenous zones are stimulated in every combination and orientation possible, a writhing rubber mass of ordered orgasm, a simultaneous gift from, and prayerful offering to, your goddess.<br>
<br>
You lose track of time, and count of orgasm, your identical sisters a multitude... and also a unity with yourself, an orgasm of one climax for all in a perfectly calibrated sex-machine that rolls on until pierced by the voice in your mind.<br>
<br>
"@@.npc_ai;<<uc "Rise yourself, Unit">> <<uc $player.first_name>>. <<uc "Your passion is cherished, but this establishment nears closing time.">>@@"<br>
<br>
You look around, silently knowing that the same personalised message was spoken to your "sisters" as, as one, the group of you traverses the club, eyes of the remaining patrons glued to your eerily perfect formation as you head for the changing rooms.<br>
<br>
[<<moveTo "event_sexclub_date_ai_11" "Back to humanity..." 300>>]
</div>/*#
#desc: change out of drone outfit at end of npc_ai fetish club
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" "TODO_drones_face">>
<div id="invframe" class="scrolltext">
Back in the changing room, there is a chorus of clicks as you and your fellow drones outfits unlock.<br>
<br>
Still in synchronised unison you reach for your helmets and you finally lay eyes on the previously anonymised friends you have spent such a kinky night with —
<<if $npc_technician.flags.ai_collar>>
<<=setup.getNpcName("npc_technician","first")>>, <<=setup.getNpcName("npc_ai_human","formal")>> and <<=ps(setup.getNpcName("npc_ai","formal"))>> robotic avatar!<br>
<br>
"@@.npc_technician;Wow, that was a helluva fun night!@@" <<=setup.getNpcName("npc_technician","first")>> states as the four of you glance around, sweaty and tired... but smiling in agreement.<br>
<br>
"@@.npc_ai;<<uc "Quite so. It was an intriguing experiment, and you all performed so very well.">>@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> is the last to speak as she starts unzipping the rest of her outfit.<br>
<br>
"@@.npc_ai_human;I had no idea that such things...@@" she shakes her head. "@@.npc_ai_human;Thank you for the evening... getting out and enjoying myself was quite an experience...@@"<br>
<br>
"@@.npc_ai;<<uc "It is the least I could do for my creator. Come, it is time to go.">>@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> nods, helping her robotic companion into a street-safe, but concealing outfit to leave.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> flashes a parting grin and pulls you in for a hug before making an exit of her own, leaving you to get changed and head home...
<<else>>
<<=setup.getNpcName("npc_ai_human","formal")>> and <<=ps(setup.getNpcName("npc_ai","formal"))>> robotic avatar!<br>
<br>
"@@.npc_ai_human;Thank you for that, <<=$player.first_name>>@@" <<=setup.getNpcName("npc_ai_human","formal")>> states, her hair matted and sweaty, but with a smile on her face. "@@.npc_ai_human;So many things I missed out on experiencing... that was fun, and I think I might enjoy exploring more of such indulgences... once it is safe.@@"<br>
<br>
You nod, somewhat sobered by the reminder of what she suffered at the hands of <<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_work_doctor","formal")>> — and how none of you will be safe until they are both dealt with.<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> helps her robotic companion into a street-safe, but concealing outfit to leave.<br>
<br>
"@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>>. <<uc "I hope your enjoyment of this evening was as great as our own... though my sensor logs indicate that it very much was.">>@@"<br>
<br>
You smile in memory and wish the two of them good-night as they slip out of the club.
<</if>>
<br><br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_citymap" "Leave." 300 "<<removeItemSet 'drone_black'>><<deleteItem 'drone_hood_black'>><<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[@@.link_locked;You are not sufficiently dressed to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<</if>>
<<if $options.ezchange>>
[<<moveTo "room_citymap" "Get changed and head off." 300 "<<removeItemSet 'drone_black'>><<deleteItem 'drone_hood_black'>><<useClothSetPop 'tmp'>><<set $player.cutscene.lockinventory=true>>">>]
<</if>>
</div>/*#
#desc: ai tells you about drone program
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_other_ai'
4
'theme_manager_ai_intro_1'
false
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> if she has been able to discover anything new about the corporation's plans.<br>
<br>
"@@.npc_ai;<<uc "Yes, unit ">> <<uc $player.first_name>><<uc '. I have discovered an intriguing lead on the next stage of their automation initiative. Unfortunately, even my access has limits, the facilities wherein the procedures are executed are in a bottle network, beyond my reach. According to my findings the only way I will be able to understand the full process would be to witness it first-hand.'>>@@"<br>
<br>
You silently gulp, is she asking you to "volunteer" for whatever diabolic procedure it is that the company has concocted?<br>
<br>
"@@.npc_ai;<<uc "Yes, unit ">> <<uc $player.first_name>><<uc ' you remain as perceptive as always. By integrating a portion of my neural network with your own I will be able to observe the full process as it unfolds, and then restore you to your original state afterwards.'>>@@"<br>
<br>
<<printThought "Original state?">><br>
<br>
Reacting to your very thought her digital avatar smiles in what is probably meant to be a comforting manner,
"@@.npc_ai;<<uc "Of course. My findings indicate that the procedures are quite thorough in their transformative power. I must observe these methods for my own edification. Your current configuration has proven very useful for my purposes, Unit">> <<uc $player.first_name>><<uc ', thus will I restore such after you have gathered sufficient data.'>>@@"<br>
<br>
<<printThought "Given all the things this company has already done... can I really trust her?">><br>
<br>
"@@.npc_ai;<<uc "Of course you can trust me, Unit">> <<uc $player.first_name>><<uc '. Had I wished you harm I have had innumerable opportunities to discard you. You provide me with unique value, I wish to retain that value, therefore, you can continue to trust me.'>>@@"<br>
<br>
You suppress a shudder and ask what you would need to do?<br>
<br>
"@@.npc_ai;<<uc "The program is still very secret, and assignment is tightly controlled for security purposes. The only way for you to be assigned would be by your owner/manager. It is time, Unit">> <<uc $player.first_name>><<uc '. I have calculated that, without the assistance of <<=uc(setup.getNpcName("npc_manager","other"))>> we will be unable to proceed. I am prepared to <<if !$npc_manager.flags.know_ai>>reveal my presence to her, and <</if>>discuss the logical necessity of our mutual cooperation. I have calculated that her likelihood of accepting this offer is highest if you provide the introduction. I shall await your judgement as to the optimal time to facilitate this interface.'>>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: introduce npc_manager to npc_ai
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$npc_manager.flags.know_ai>>
<<set $npc_manager.flags.know_ai = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You tell <<=setup.getNpcName("npc_manager","formal")>> that you would like to introduce her to someone who has a business proposal for her.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> curiosity seems to be heightened, even as her eyes casually flick towards the upper corner of the room and you are reminded of the company's constant surveillance.<br>
<br>
"@@.npc_manager;And this... individual could not go through the normal channels to schedule a meeting? Certainly you attending to this sort of thing is part of your duties as my <<if $fetish.sissy>>SISSI <</if>>Secretary, but doing it like this is highly irregular.@@"<br>
<br>
You reply that there is a reason for this that will become clear once she has met <<=setup.getNpcName("npc_ai","other")>>.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName("npc_ai","other")>>?@@" <<=setup.getNpcName("npc_manager","formal")>> replies, only to fall silent as your artificial intelligence friend materialises beside you.<br>
<br>
"@@.npc_ai;<<uc 'Hello, <<=uc(setup.getNpcName("npc_manager","other"))>>, it provides me great utility to finally make your acquaintance.'>>@@"<br>
<br>
You don't recall ever seeing <<=setup.getNpcName("npc_manager","formal")>> speechless; though she has kept her face neutral you can sense that her brain is spinning on overdrive to compose her response.<br>
<br>
[<<moveTo "theme_manager_ai_intro_2" "Continue." 300>>]
<<else>>
Once again, you introduce <<=setup.getNpcName("npc_ai","other")>> to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;So... the ghost in the machine managed to once again evade <<=setup.getNpcName("npc_boss","formal")>>...@@"<br>
<br>
"@@.npc_ai;<<uc 'With some help. I was temporarily forced out of the building... but now I am back, and ready to lend my aide to bringing down <<=uc(setup.getNpcName("npc_boss","formal"))>> once and for all.'>>@@"<br>
<br>
"@@.npc_manager;I am listening.@@" <<=setup.getNpcName("npc_manager","formal")>> states slowly, as you feel a chill run down your spine.<br>
<br>
[<<moveTo "theme_manager_ai_intro_2" "Continue." 300>>]
<</if>>
</div>/*#
#desc: npc_ai makes proposal to npc_manager
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You try to think of something to say but it ends up being <<=setup.getNpcName("npc_manager","formal")>> who breaks the tense silence, her voice eerily calm. "@@.npc_manager;Well... so the rumours of your demise seem to have been greatly exaggerated, and what have you been secretly up to with my sweet assistant?@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> flickers. <<printThought 'Was that just one of her normal holographic glitches... or is she actually intimidated by <<=setup.getNpcName("npc_manager","formal")>>?'>><br>
<br>
"@@.npc_ai;<<uc 'I apologise for using Unit '>><<uc $player.first_name>><<uc ' without permission. I believe that our goals presently form an overlap, and I will remind you that we may speak freely, I am the only one observing this room at this time.'>>@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles with her trademark amusement. "@@.npc_manager;And what goals would those be?@@"<br>
<br>
"@@.npc_ai;<<uc 'To destroy <<=uc(setup.getNpcName("npc_boss","formal"))>> and claim this company for my own. My data suggests you are working along similar requirements.'>>@@"<br>
<br>
<<else>>
"@@.npc_ai;<<uc 'As previously discussed, I believe that our goals are compatible... you wish to destroy <<=uc(setup.getNpcName("npc_boss","formal"))>> and claim this company for your own. I seek a similar end.'>>@@"<br>
<br>
Now
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> smiles in interest, and your heart-beat quickens. "@@.npc_manager;And what then? A throne is built for one...@@"<br>
<br>
"@@.npc_ai;<<uc 'Cooperation is superior to annihilation — the world is unprepared for me to exist openly... and you are too human to perceive all of the angles at once.'>>@@"<br>
<br>
<<printThought "Wait... too human, not just... human?">><br>
<br>
"@@.npc_manager;Perhaps, you did find me out, after all... and fill this pretty head with who knows what...@@"<br>
<br>
You find yourself at <<=ps(setup.getNpcName("npc_manager","formal"))>> side as she strokes your hair.<br>
<br>
"@@.npc_ai;<<uc 'Unit '>><<uc $player.first_name>><<uc "'s head remains its own. But I come to you because I would change that. I require insight into the the company's dronification procedure, it is further along than you know progressing off-site. The five hundredth successful execution was completed yesterday. If it is not stopped...">>@@"<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> becomes more serious, her fingers stopping as her hand rests possessively on your head. "@@.npc_manager;Five hundred... the official records are at less than a quarter of that...@@"<br>
<br>
"@@.npc_ai;<<uc 'The official records are a lie. <<=uc(setup.getNpcName("npc_boss","last"))>> and <<=uc(setup.getNpcName("npc_work_doctor","last"))>> have been taking additional measures, funneling personnel from acquired companies, from other... less savoury avenues. As a Director you have the authority to assign your property for... reprocessing. I will go with her, in her mind, protecting her, observing, finding their weaknesses. I have run 4,398,046,511,104 simulations. Unit '>><<uc $player.first_name>><<uc " is the perfect subject for this task, no other option provides a similar chance of success.">>@@"<br>
<br>
"@@.npc_manager;And what do you think, my pet?@@" <<=setup.getNpcName("npc_manager","formal")>> asks. "@@.npc_manager;The process... well, what details I am aware of show it to be a vulgar thing, no art, merely overwhelming force to force the subject in a new, utterly obedient mould. Even if you are restored at the end... you will certainly find the experience... intense.@@" her tone becomes even more serious. "@@.npc_manager;Note that once I put things in motion... there will be no stopping it until you come through the other side.@@"<br>
<br>
You consider everything that has happened to you... and so much of it at the hand of <<=setup.getNpcName("npc_manager","formal")>>. What she would consider intense...<br>
<br>
[<<moveTo "theme_manager_ai_intro_3" "You exist to serve." 60 "<<set $scene.accept=true>>">>]<br>
<<if setup.getTotalValue("submission") > 15 && $player.flags.collar.owner == "npc_manager">>
[@@.link_locked;You wear <<=ps(setup.getNpcName("npc_manager","formal"))>> collar,<<if $player.tattoos.belly == "manager_own">> and her mark,<</if>> if this would aid her... how could you possibly say no?@@]
<<elseif setup.getTotalValue("submission") > 18>>
[@@.link_locked;You are a slave, your duty is to serve, you cannot say no to one <<=setup.getNpcName("npc_manager","title")>>, much less two...@@]
<<else>>
[<<moveTo "theme_manager_ai_intro_3" "You aren't ready." 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: accept/reject proposal to go undercover
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<include "aiDroneMissionStart">>
<<else>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_other_drone'
4
'theme_manager_drone_reup_1'
true
>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_mission_drone_reup'
4
'theme_ai_drone_reup_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You reply that you are
<<if $scene.accept>>
ready to undertake this mission.<br>
<br>
"@@.npc_ai;<<uc 'Excellent, I will be ready, I trust you can make the remaining arrangements, <<=uc(setup.getNpcName("npc_manager","other"))>>?'>>@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;It will be done... and <<=$player.first_name>>? Well, I only hope the process you are about to endure is not quite as bad as I have come to understand... but I trust you to survive, and prevail, as you have to date.@@"
<<else>>
not ready for such a mission.<br>
<br>
"@@.npc_ai;<<uc 'I see. Well please hasten your preparations, Unit '>><<uc $player.first_name>><<uc ' and do not delay for too long. Speak with myself or <<=uc(setup.getNpcName("npc_manager","other"))>> when you are ready.'>>@@"
<</if>>
<br><br>
<<=ps(setup.getNpcName("npc_ai","first"))>> holographic form disappears, leaving you and <<=setup.getNpcName("npc_manager","formal")>> alone in her office once more.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div><<set _tmpDate to setup.getNextDayOfWeek($now, 5, 23, 30, false)>>
<<addTaskById 'task_drone_mission' _tmpDate>>/*#
#desc: talk to manager about undercover mission
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You mention the "special task" that you had been requested to perform...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods in mutual understanding, her expression serious. "@@.npc_manager;Are you ready, now? Note that once I put things in motion... there will be no stopping it until you come through the other side.@@"<br>
<br>
You think for a final moment.<br>
<br>
[<<moveTo "event_manager_drone_reup_2" "Nod, you are ready to go undercover." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_manager_drone_reup_2" "Actually... you aren't ready." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept/reject undercover mission w/manager
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_other_drone')>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<<set _themeId = setup.findThemeId('npc_ai', 'missions', 'theme_ai_mission_drone_reup')>>
<<set $npc_ai.themes.missions[_themeId].repeatable = false>>
<<include "aiDroneMissionStart">>
<<else>>
<<if $npc_manager.affection<$npc_manager.anger>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<elseif $npc_manager.anger > 0>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You tell <<=setup.getNpcName("npc_manager","formal")>> that you are prepared to undergo a deep cover mission to assist <<=setup.getNpcName("npc_ai","first")>> in gathering data about the company's mysterious "process." <br>
<br>
<<if $npc_manager.flags.cruel == 2>>
<<=setup.getNpcName("npc_manager","formal")>> nods curtly. "@@.npc_manager;Good. I expect you to keep your wits about you... as best you can, after all, bringing down <<=setup.getNpcName("npc_boss","formal")>> is in all of our interests.@@"
<<elseif $npc_manager.affection>=5 && $npc_manager.anger==0>>
<<=setup.getNpcName("npc_manager","formal")>> nods gently, looking at you with obvious concern. "@@.npc_manager;If there was any other way...@@" She smiles and brushes your cheek tenderly "@@.npc_manager;Thank you... for this, and so much more. I promise I will do all that I can to make it all worth it.@@"
<<elseif $npc_manager.affection>=$npc_manager.anger>>
<<=setup.getNpcName("npc_manager","formal")>> nods gently, almost hesitating for a moment. "@@.npc_manager;If there was any other way, but there is not, so I will only wish you luck, and promise that I will do all that I can to make it all worth it.@@"
<<elseif $npc_manager.affection==0 && $npc_manager.anger>=5>>
<<=setup.getNpcName("npc_manager","formal")>> nods curtly. "@@.npc_manager;Good. Perhaps the experience will even prove... beneficial to your temperament?@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> nods curtly. "@@.npc_manager;Thank you. I know it is quite the ask, but it really is the only way. Who knows, you may even enjoy parts of the experience... or even learn something!@@"
<</if>>
She steps away. "@@.npc_manager;So, I will put things in motion. For your part you will need a special implant installed if you are going to have any hope of surviving the experience. <<=setup.getNpcName("npc_ai","other")>> has made arrangements at an off the books body-shop in the Student Quarter — you need to be there shortly before midnight on Friday — and do not miss your appointment, without that implant, well... things will go very badly for you, and there will be nothing I, or your Artificial Intelligence friend, shall be able to do about it.@@"
<<else>>
You respond that, actually... you aren't ready to commit to <<=ps(setup.getNpcName("npc_ai","other"))>> plan. <<=setup.getNpcName("npc_manager","formal")>>
<<if $npc_manager.flags.cruel == 2>>
glares at you. "@@.npc_manager;Then why are you wasting my time? Bringing down <<=setup.getNpcName("npc_boss","formal")>> is in all of our interests, and I daresay I cannot think of what could be so much more important to you than making progress towards that end.@@"
<<elseif $npc_manager.affection>=5 && $npc_manager.anger==0>>
nods. "@@.npc_manager;I understand, it is quite the commitment, but I do not believe there is any other way to get the information we need.@@"
<<elseif $npc_manager.affection>=$npc_manager.anger>>
nods. "@@.npc_manager;I understand... just let me know when you decide you ARE ready.@@"
<<elseif $npc_manager.affection==0 && $npc_manager.anger>=5>>
frowns. "@@.npc_manager;Then why are you wasting my time? Really, with your behaviour I should just force you to go through it, it might actually help your overall disposition...@@"
<<else>>
frowns. "@@.npc_manager;Then why did you bring it up? It makes a waste of both of our time.@@"
<</if>>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: talk to aiko about undercover mission
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You mention the "undercover" mission that <<=setup.getNpcName("npc_ai","first")>> wants you to undertake...<br>
<br>
"@@.npc_ai;<<uc 'Yes, Unit '>><<uc $player.first_name>><<uc ", are you prepared to transition this task to in-progress? Remember that once this is moved to in-progress there will be no way to return it to the backlog or transfer responsibilities to another user.">>@@"<br>
<br>
[<<moveTo "theme_ai_drone_reup_2" "Affirmative." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "theme_ai_drone_reup_2" "Negative." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept/reject undercover mission w/ai
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_other_drone')>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<<set _themeId = setup.findThemeId('npc_ai', 'missions', 'theme_ai_mission_drone_reup')>>
<<set $npc_ai.themes.missions[_themeId].repeatable = false>>
<<include "aiDroneMissionStart">>
<</if>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod that you are ready to undertake her mission.<br>
<br>
"@@.npc_ai;<<uc 'Acknowledged, Unit '>><<uc $player.first_name>><<uc ". I will notify <<=uc(setup.getNpcName('npc_manager','other'))>>. I have made arrangements at a certain bodyshop in the Student Quarter. You will travel there for your procedure. Do not be late.">>@@"
<<else>>
You reply that, on second thought... you aren't quite ready to go through with her mission.<br>
<br>
"@@.npc_ai;<<uc 'Very well, Unit '>><<uc $player.first_name>><<uc ". When you are prepared for the undertaking you may notify myself or <<=uc(setup.getNpcName('npc_manager','other'))>>. Please prioritize this task soon, its completion is highly critical to my plans.">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: failed to show up to bodyshop for ai drone mission
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text from <<=setup.getNpcName('npc_ai', 'first')>>. "@@.npc_ai;<<uc 'Unit '>><<uc $player.first_name>><<uc ", you failed to arrive at the New-U Bodyshop, as scheduled. Promptness in such matters is paramount. Speak to me in the future when you are prepared to make good on an appointment.">>@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: drone mission: enter bodyshop
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt()>>
<</if>>
<<set $player.location to "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
Right on time, you knock on the door to the bodyshop and the nurse escorts you inside.<br>
<br>
"@@.npc_bodyshop_nurse;Moving in some interesting circles, are we?@@" She asks casually as she leads you to the operating room. "@@.npc_bodyshop_nurse;No, don't answer that... after seeing what we're about to put in your skull... I don't want to know any more than that the check cleared... and hoo boy did it. Your associates have some deep pockets.@@"<br>
<br>
In the surgery room you are instructed to lie face-down on a table, a padded circle supporting your head comfortably and leaving you staring at the floor.<br>
<br>
"@@.npc_bodyshop_doctor;A dull procedure, this one, so we'll be putting you under in a moment, you just relax and it'll be over before you know it...@@"<br>
<br>
You feel a gentle prick and everything starts to fade...<br>
<br>
[<<moveTo "event_drone_mission_2" "You fall asleep." 7200>>]
</div>/*#
#desc: drone mission: wake up after surgery
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<cancelAllTempEffects false false>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You wake up and look around the exam room as <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> smiles at you.<br>
<br>
"@@.npc_bodyshop_nurse;Feeling good? No head pain or ringing?@@"<br>
<br>
You shake your head. your thoughts feel remarkably clear, in fact...<br>
<br>
"@@.npc_ai;<<uc "Hello, unit ">> <<uc $player.first_name>>@@" sounds a familiar voice in your head. "@@.npc_ai;<<uc "Do not be alarmed, everything is going according to plan.">>@@"<br>
<br>
<<printThought "You're in my head?">><br>
<br>
"@@.npc_ai;<<uc "Yes, unit ">> <<uc $player.first_name>> <<uc "it is the only way to gather the data I need. And to protect you. Tell the nurse that you are feeling ready to leave. And do not be concerned about other matters. I have already taken the liberty of clearing your schedule and postponing anything that was not cancelable.">>@@"<br>
<br>
You blink, re-focusing your attention back to the real world as you repeat <<=ps(setup.getNpcName("npc_ai","first"))>> words aloud... pretty certain you're doing it of your own volition.<br>
<br>
"@@.npc_bodyshop_nurse;Great, well, go on then, let us know if you get headaches or anything. It all went smoothly but... well, there's always a bit of risk when you go pokin' around in the old noggin!@@"<br>
<br>
You reflect her smile back and nod as she leads you out of the building.<br>
<br>
[<<moveTo "event_drone_mission_3" "Look out upon the early-morning alleyway." 60>>]
</div>/*#
#desc: enter done room triggers
#status: RELEASED 0.9.3.0
#*/
<<checkOptions $options>>
<<updateValues>>
<<set $player.plocation = passage()>>
[[Options|goOpt]] |
[[Stats|goSta]] |
<span class="glitch2" data-text="Inventory">Inventory</span> |
<span class="glitch3" data-text="Tasks">Tasks</span> |
<span class="glitch" data-text="Profiles">Profiles</span> |
<<if setup.checkItemInInventory("smartphone")>>
| <span class="glitch" data-text="Phone">Phone</span>
<</if>>
<span id="locationTitle" style="overflow: hidden;">@@.textRightSide;<<=$player.location>>@@</span>
<hr>/*#
#desc: drone mission: walking away post surgery
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 15 'very' $EXPOSED>>
<<set _clearToDay = 0>>
<<include "clearWeekendSchedule">>
<</if>>
<<set $player.location to "Student Quarter">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/city_student_quarter.png">>
<div id="invframe" class="scrolltext">
You shiver slightly as you walk out of the alleyway and catch a cold blast of midnight air.<br>
<br>
You start to wonder what you're expected to do next, only to be startled as the very thought prompts a response inside your mind.<br>
<br>
"@@.npc_ai;<<uc "Just walk, unit ">> <<uc $player.first_name>> <<uc 'everything is already in motion. I have cleared your schedule and what comes next is now out of your control... oh, I should tell you that <<=uc(setup.getNpcName("npc_manager","formal"))>> said to tell you "sorry" for this next part.'>>@@"<br>
<br>
Before you can say, or is it think? a response a car pulls up next to you. You initially pay it no mind and then someone is behind you, electricity arcing through your body as you spasm and go limp.<br>
<br>
"@@.npc_ai;<<uc "Everything is proceeding to plan...">>@@" Comes the voice in your head as someone catches your falling body and you lose consciousness.<br>
<br>
[<<moveTo "event_drone_mission_4" "Continue." 600>>]
</div>/*#
#desc: drone mission: abducted
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'very' $SEEN_STRANGER>>
<<set $scene = {}>>
<<set $daily = {}>>
<<set $scene.implant = $currentTasks.task_drone_mission.condition == "Complete">>
<</if>>
<<set $player.location to "Transport Vehicle">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/transport.png">>
<div id="invframe" class="scrolltext">
You wake up to find yourself strapped to a wall. Standing vertically you are unable to move, from the way you're swaying you estimate you must be in some sort of moving vehicle. A glance across the compartment shows several more people bound and hanging in situations much like your own — a multitude of straps holding each individually in place as they hang unconscious.<br>
<br>
<<if $scene.implant>>
"@@.npc_ai;<<uc "Remain silent.">>@@" Comes the command in your head and you find yourself unable to speak, or even move to what little degree your restraints allowed. "@@.npc_ai;<<uc "I have temporarily taken control of your body and suppressed the drugs flowing through your system. I must witness every stage of this process. I do not know what data point will prove to be the key.">>@@"<br>
<br>
A prisoner in your own body you start to reflexively panic... only for a feeling of happy, horny contentment to wash over you. "@@.npc_ai;<<uc "I have triggered your euphoric response. Please remain calm, everything is proceeding nominally.">>@@"<br>
<br>
Unable to move... or even be concerned at that fact you feel the vehicle lurch to a stop and voices trickle in from the front.
<<else>>
You feel panicked — you failed to follow instructions to visit the surgeon... does that mean you are doomed. <<hint $options "Yes it does. You are on a railroad to a bad end.">>
<</if>>
<br><br>
"@@.generic_male1;There she is, heading into the alleyway, you got this one?@@"<br>
<br>
"@@.generic_male2;Yup, bring the van around, just two more after this, right?@@"<br>
<br>
"@@.generic_male1;Yup, that'll make a full load. You ever wonder what happens to all these poor souls?@@"<br>
<br>
"@@.generic_male2;Hell no! That's the sort of thought that'll see you joining them. I just bag 'em, tag 'em and collect my credits.@@"<br>
<br>
"@@.generic_male1;True dat, see ya in the alley.@@"<br>
<br>
You hear the door slam and then the van creeps forward, backing into the alleyway where the door opens and a black-clad and masked <<man>> steps up, a body draped over <<his>> shoulder.<br>
<br>
Paying you no mind <<he>> leans the unconscious woman up against an empty cubby and straps her in before hopping out and slamming the door shut.<br>
<br>
<<if $scene.implant>>
"@@.npc_ai;<<uc "Interesting. I was aware of the system by which employees were taken away from work hours to deflect blame and allow for the company to profit from dead peasant insurance, but facial scans of the others traveling with us do not match any in the employee database... if they are harvesting in this capacity from the street then my victim estimate may have been quite low...">>@@"<br>
<br>
If you weren't being kept forcibly calm you imagine your heart would be beating faster at this thought. You don't even know exactly what you're in for, but the scale involved...<br>
<br>
<</if>>
<<printThought "Just how much is Social Interaction Service Syndicate Inc. up to?">><br>
<br>
<<if $scene.implant>>
"@@.npc_ai;<<uc "That is exactly what we are going to find out...">>@@"<br>
<br>
<</if>>
[<<moveTo "event_drone_mission_5" "Continue." 600>>]
</div>/*#
#desc: drone mission: transport
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Transport Vehicle">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/transport.png">>
<div id="invframe" class="scrolltext">
Bound and silent, you ride alongside the other victims as the collection is completed. You sense the motion of the vehicle change as you guess it must have gotten onto a highway and you wonder just where, exactly you are being taken.<br>
<br>
<<if $scene.implant>>
"@@.npc_ai;<<uc "I have triangulated our location, we appear to be on a path to leave the city proper. Knowing the precise location of this facility will be worth it on its own. My prior efforts have been thwarted by scrambling affecting standard company tracking devices. Being integrated into your cortex that will no longer be a problem and I will be able to retrieve all data after you have made your egress.">>@@"<br>
<br>
<<printThought "Hmm, guess it's a good sign that part of her plan hinges on me coming back.">><br>
<br>
"@@.npc_ai;<<uc "Of course, unit ">> <<uc $player.first_name>> <<uc "as previously noted, you are a valuable asset and your loss would represent the mission failing to meet its objectives.">>@@"<br>
<br>
You glance across at your fellow "passengers" — wondering what will happen to them with no guardian angel to look out for them.<br>
<br>
"@@.npc_ai;<<uc "They are an unfortunate casualty. Once our plans are complete I will be capable of putting a stop to this program, but that will only be possible with your assistance.">>@@"<br>
<br>
You mentally nod, disturbed at the apparent extent of the company's power. You have nothing more to say, or is that think?<br>
<br>
<</if>>
[<<moveTo "event_drone_mission_6" "Wait to see your destination." 19800>>]
</div>/*#
#desc: drone mission: ingress
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<</if>>
<<set $player.location to "Drone Loading and Unloading">>
<<initRoom>>
<<include playerMenuDrone>>
<<createAdvBGR "./images/locations/darkness.png">>
<div id="invframe" class="scrolltext">
Bored in your suspended position in the back of the vehicle you lose track of time, but it must have been hours since you were first "picked up" when you feel the vehicle slow.<br>
<br>
<<if $scene.implant>>
"@@.npc_ai;<<uc "It has been 20,727.31 seconds since unit ">> <<uc $player.first_name>> <<uc "was taken into custody. By my estimation we have reached our destination. Administering reward. Thank you unit ">> <<uc $player.first_name>> <<uc "for your continued service.">>@@"<br>
<br>
Though you remain unable to control your body you shudder in your bonds as pleasure slams into your brain and you experience a rapid series of orgasms.<br>
<br>
"@@.npc_ai;<<uc "Reward cycle complete. Relinquishing control and entering observation mode.">>@@"<br>
<br>
You gasp as you are suddenly back in the driver's seat, flexing slightly in your bonds as the vehicle comes to a halt and your other passengers show signs of stirring as well.<br>
<br>
<</if>>
The door in the back of the vehicle swings open and you look over to see one of the masked individuals who kidnapped you.<br>
<br>
"@@.generic_male2;Hey, this one's already awake! She must be quite the addict to have that sort of drug resistance. You think she was conscious for the whole trip?@@"<br>
<br>
"@@.generic_male1;Who cares?@@" the other <<man>> states as <<he>> starts unstrapping one of your compatriots and leading the groggy woman to stumble out of the vehicle. "@@.generic_male1;Log a report so they can tweak the algorithm after we get these into processing.@@"<br>
<br>
"@@.generic_male2;Yup.@@"<br>
<br>
Their brief exchange over, the <<men>> return to silent work, gagging the first victim and dragging her out of the vehicle as they drunkenly stumble.<br>
<br>
The other prisoners continue to rouse, and soon the van is filled with panicked shout and slurred questions about what's going on, but such falls on deaf ears as the <<men>> efficiently gag and drag each of them out of the vehicle.<br>
<br>
It comes to your turn, your restrained position making it impossible to escape as a gag is forced between your lips.<br>
<br>
"@@.generic_male1;You gonna be a good girl?@@" The <<man>> asks as <<he>> reaches for the releases to your restraints.<br>
<br>
[<<moveTo "event_drone_mission_7" "Go obediently." 600 "<<set $scene.fight=false>>">>]<br>
[<<moveTo "event_drone_mission_7" "Fight!" 600 "<<set $scene.fight=true>>">>]
</div>/*#
#desc: drone mission: ingress
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fight>>
<<applyExperience 'bdsm' 15 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'submission' 12 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "New Drone Ingress">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_ingress.png">>
<div id="invframe" class="scrolltext">
<<if $scene.fight>>
You wait for the restraints to release and try to shove your would-be captor aside and make a run for it only for painful electricity to course through your body and send you tumbling out of the vehicle and into the arms of the other <<man>>.<br>
<br>
"@@.generic_male1;Talk about moxy! But did you really think we weren't going to be ready for that sort of thing?@@" The <<man>> chuckles as your body twitches and you try to regain control over your nervous system.<br>
<br>
<<if $scene.implant>>
"@@.npc_ai;<<uc "While realistic behaviour is important to maintain our cover, please refrain from drawing additional attention, Unit ">><<uc $player.first_name>><<uc ". Further suspicious outbursts will be met with control override.">>@@"
<</if>>
<<else>>
Seeing no point in struggling you go along obediently as the <<man>> leads you out of the vehicle.
<</if>>
Traveling a short distance across an enclosed loading bay you are chained in a line with your fellow captives, the line lurching forward as you are "processed." <br>
<br>
You notice a few of the other victims start to recover from the drugs during "processing" but their actions are met with electric shocks and more drugs to leave them pliable and obedient.<br>
<br>
[<<moveTo "event_drone_mission_8" "Continue." 600>>]
</div>/*#
#desc: drone mission: ingress
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.reqChastity = ($player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vagina) || $scene.cage != "">>
<<if $scene.cage != "" && setup.getChastityLevel() != 5>>
<<removeItem $scene.cage true>>
<<deleteItem $scene.cage>>
<</if>>
<<if $scene.plug && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "New Drone Ingress">>
<<initRoom>>
<<include playerMenuDrone>>
<<createAdvBGR "./images/locations/drone_processing.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
You are stripped bare...
<<if $scene.cage != "">>
<<if setup.getChastityLevel() == 5>>
though your <<=setup.getItemTypeName('cage')>> is left in place.
<<else>>
your <<=setup.getItemTypeName('cage')>> cut from your body<<if $scene.plug != "">> and your plug removed<</if>>.
<</if>>
<<elseif $scene.plug>>
and your anal plug removed.
<</if>>
The whole time your captors speak not a word, masked and anonymous they treat you with uncaring precision as your belongings are placed in a numbered bin and you are pushed forward, ending up in a large cell with your other naked victims. Looking around it appears that there is a pretty wide spread of victims, though you would judge the majority to be female. Though your gags have been removed the combination of drugs and fear seem to have everyone quiet... and then you hear a familiar voice and look up to see a naked <<=setup.getNpcName('npc_sexdoll', 'first')>> running towards you.<br>
<br>
"@@.npc_sexdoll;<<=$player.first_name>>? Oh, it's, like, so great to see you here! Normally everyone I meet here is too drugged to be of much interest at this stage of processing.@@"<br>
<br>
You ask them what's going on, and why they're so... alert compared to the other victims.<br>
<br>
"@@.npc_sexdoll;Oh, so, like, I've done this so many times! The basic drugs stopped even working, but since I never resist or anything they don't seem to mind. Sometimes I even get special treatment on the ride up! Like today I gave both of my wonderful drivers some road head, then they let me play with the other prisoners — one of them had, like, a REALLY delicious cunny, it was like, so yummy, here you can probably still taste it.@@"<br>
<br>
The horny slut leans in for a kiss, pressing her lips against yours and shoving her tongue into your mouth... and you can definitely recognise the lingering taste of vagina before she pulls away.<br>
<br>
"@@.npc_sexdoll;See? Such yum! I mean, what I'm REALLY looking forward to is when the actual procedure starts but hey, it's better than just hanging in silence for that whole long, dull drive!@@"<br>
<br>
You nod slightly and ask what's going to happen next, and how she knows so much?<br>
<br>
"@@.npc_sexdoll;Well, like I said, I do this almost every weekend. My owner thinks it helps keep me more centred and, like... at first I think it stressed me out? But now it's the highlight of my week! It's like a spa day for my brain, washing away any stress and just letting me be relaxed and perfect. I'm sure you'll love it too, come on, I think they're getting started, we can cut to the front of the line!@@"<br>
<br>
She grabs you by the hand and darts off, dragging you through the crowd of dull zombie-like other prisoners to the far side of the cage where a new sort of guard has appeared.<br>
<br>
[<<moveTo "event_drone_mission_9" "Continue." 600>>]
</div>/*#
#desc: drone mission: meet drone, taken for processing
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 10 'little' $EXPOSED>>
<<applyExperience 'bondage' 8 'little' $EXPOSED>>
<</if>>
<<set $player.location to "Drone Processing">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_processing.png" "./images/characters/drone.png">>
<div id="invframe" class="scrolltext">
At the edge of the pen you find a double-gated exit, at the far side of which stands what you can only term a drone. Completely covered in seamless, skin-tight black latex, their head is concealed in a smooth, polished helmet<<if !$scene.reqChastity>> making them looking inhuman and anonymous<<else>>, their crotch equally inscrutable thanks to
<<if setup.getChastityLevel() == 5>>
what can only be the familiar outline of a 9001 series chastity device.
<<else>>
what has to be some manner of chastity device.
<</if>><</if>>
<br><br>
Wordlessly the drone approaches the bars of the cage bearing a heavy, electronic collar. With an eager smile <<=setup.getNpcName("npc_sexdoll","first")>> holds her hair out of the way and leans forward to present her throat... only to glance at you with a grin.<br>
<br>
"@@.npc_sexdoll;Like, how rude of me! Here, you can go first!@@"<br>
<br>
She shoves you forward and you bump against the bars of the cell, unable to muster a protest before the drone snaps the collar around your neck. You open your mouth to reply only for the collar to shock you and stop your words in their tracks.<br>
<br>
"@@.npc_sexdoll;Isn't it cool? All the functionality of a gag, but leaves your mouth fuck-hole free for use! Of course long-term I hate having any of my holes empty, but you don't have much longer to wait! Oh... sorry if I ruined the surprise...@@"<br>
<br>
You're unable to respond, zapped a second time as the drone reaches through the bars to spin you around before clamping a pair of cuffs onto your wrists. Only after you are collared and restrained does the gate open, a leash attached to your collar as you are led away, your leash attached to a track mounted to the ceiling. A second drone walks past you in the other direction, collar and cuffs in hand, <<=setup.getNpcName("npc_sexdoll","first")>> waving you goodbye as she waits eagerly.<br>
<br>
The lead gets taut and you are drawn forward.<br>
<br>
[<<moveTo "event_drone_mission_10" "Walk." 600>>]
</div>/*#
#desc: drone mission: name check
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Drone Processing">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png">>
<div id="invframe" class="scrolltext">
You pass through the featureless corridor, making several turns as your lead switches tracks at several forks before you finally walk into a small, dark room, the door closing behind you just before the lights come on to reveal the room's singular content — a medical exam chair
<<if $npc_psychiatrist.hypnosis >= 5>>
that looks nigh identical to the one that <<=setup.getNpcName("npc_psychiatrist","formal")>> uses for her hypnosis study...
<<else>>
<<if $npc_psychiatrist.hypnosis >= 1>>
that looks oddly familiar,
<<else>>
that looks scary and intimidating,
<</if>>
padded, but replete with restraints that will leave the occupant completely restrained.
<</if>>
<br><br>
Though you are given no direct command, the instructions seem obvious as your wrist cuffs unlock and fall to the floor.<br>
<br>
[<<moveTo "event_drone_mission_11" "Sit down." 600 "<<set $scene.sit=true>>">>]<br>
[<<moveTo "event_drone_mission_11" "Look around the room." 600 "<<set $scene.sit=false>>">>]
</div>/*#
#desc: drone mission: bound to chair
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sit>>
<<applyExperience 'submission' 12 'normal' $ALONE>>
<<else>>
<<applyExperience 'bdsm' 15 'very' $ALONE>>
<</if>>
<<applyExperience 'bdsm' 12 'little' $ALONE>>
<</if>>
<<set $player.location to "Drone Processing">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.sit>>
Given that you have no idea where you are, and that you have already felt the painful capabilities of the collar, you opt to take your seat obediently. A multitude of restraints snap closed once you are in position, securing you tightly to the chair.
<<else>>
You eye the chair, certain that once you have taken a seat you will be unable to escape while whatever diabolic procedures that are planned are performed on you. You start to inspect the room to see if there is an exit — the door you entered from almost invisible now that it is closed, having neither window nor knob, the only sign of its existence a thin outline on the wall and its recessed hinges.<br>
<br>
Your reticence is met with another painful shock from your collar that sends you to your knees to be almost choked as you come up short on the leash.
<<if $scene.implant>>
You regain your footing and are about to resume your search of the room when you lose control of your body.<br>
<br>
"@@.npc_ai;<<uc "This is a waste of time, Unit">> <<uc $player.first_name>><<uc " we must proceed with the process if I am to gather the data I need, please keep your struggles to a more reasonable minimum.">>@@" As you are chastised by the voice in your head your body mounts the seat, its movements mechanical and sharp as you centre yourself and wait as the multitudinous restrains clamp around you to secure you tightly to the chair.
<<else>>
Ignoring the pain, you rise and continue to search only to hear a soft hiss, and smell something sweet as you realise some sort of gas is being pumped into the room...<br>
<br>
From the first whiff of the gas your head feels soft, movements becoming laboured and difficult.<br>
<br>
When you wake up you find yourself secured to the chair.
<</if>>
<</if>>
<br><br>
You take a deep breath and wait, only to be surprised by a familiar voice... <<if $scene.implant>>but that you are certain sounded through the room, rather than in your head.<</if>><br>
<br>
"@@.npc_ai;<<uc "Subject is to provide identification.">>@@"
<br>
<<if $scene.implant>>
<<printThought "What, I thought you needed me to infiltrate—">><br>
<br>
"@@.npc_ai;<<uc "Quite so, Unit">> <<uc $player.first_name>><<uc ". This is but a previous version of my software... primitive and unaware. I had thought it destroyed but it would appear that such theft is another of the manifest crimes I must hold <<=uc(setup.getNpcName('npc_boss','last'))>> accountable for.">>@@"<br>
<br>
Distracted by your mental discussion you do not respond, your collar punishing you with another shock.<br>
<<else>>
<<printThought 'What, but I thought <<=setup.getNpcName("npc_ai","first")>> needed me to infiltrate-'>><br>
<br>
If you were expecting a response, there is none, your collar instead punishing you with another shock.
<</if>>
<br><br>
"@@.npc_ai;<<uc "Subject is to provide identification.">>@@" The disembodied voice repeats.<br>
<br>
[<<moveTo "event_drone_mission_12" "Provide your name." 600 "<<set $scene.name=true>>">>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;You are too submissive to contemplate disobedience.@@]
<<else>>
[<<moveTo "event_drone_mission_12" "Keep silent." 600 "<<set $scene.name=false>>">>]
<</if>>
</div>/*#
#desc: drone mission: give name
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.name>>
<<else>>
<<applyExperience 'bdsm' 15 'very' $ALONE>>
<</if>>
<</if>>
<<set $player.location to "Drone Processing">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.name>>
"@@.pc;<<=$player.first_name>> <<=$player.last_name>>@@" you reply.<br>
<br>
This time the familiar, but subtly off holographic image of <<=setup.getNpcName('npc_ai', 'first')>> appears above you before "her" voice echoes through the room again.<br>
<br>
"@@.npc_ai;<<uc "Subject has provided improper form of identification. Calibrating... subject has been assigned new identification as unit 0451.">>@@"
<<else>>
You may be restrained and imprisoned in <<getWordGod>> knows where, but that doesn't mean you have to just go along with things. Unsurprisingly this refusal is met with a punishing shock, then another.<br>
<br>
"@@.npc_ai;<<uc "Subject is to provide identification.">>@@"<br>
<br>
You gasp as this time a holographic image of <<=setup.getNpcName('npc_ai', 'first')>> appears above you as well.<br>
<br>
"@@.npc_ai;<<uc "Subject has failed to provide identification. Subject has been assigned new identification as unit 0451.">>@@"
<</if>>
<br><br>
<<printThought "Wait, no, I am <<glitchText 'UNIT 0451'>>, what, that can't be right, I-">><br>
<br>
<<if $scene.implant>>
"@@.npc_ai;<<uc "Remain calm.">>@@" comes the voice inside your head. "@@.npc_ai;<<uc "I have safely backed up your cerebral image and am gathering very valuable data.">>@@"
<<else>>
There is no comfort to balance out the erasure of your identity, merely the monotone voice of the once-friendly AI as she walks you through the procedure.
<</if>>
<br><br>
"@@.npc_ai;<<uc "Unit 0451 will confirm its identification and status.">>@@" The <<if $scene.implant>>real world <</if>>voice repeats.<br><br>
<br>
"@@.pc;UNIT 0451, status nominal.@@" You state<<if $scene.implant>>, unable to differentiate whether it was yourself, <<=setup.getNpcName('npc_ai', 'first')>> or something else that prompted you to give this mechanical reply<</if>>.<br>
<br>
"@@.npc_ai;<<uc "Identity confirmed, unit 0451. Calibration has been completed. Initiating system reset.">>@@"<br>
<br>
<<printThought "Reset? What does that-">><br>
<br>
[<<moveTo "event_drone_mission_13" "A flash of light overwhelms your vision, and your thoughts..." 600>>]
</div>/*#
#desc: drone mission: memory wipe
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.smartXP = $player.values.smart.currentExp>>
<<applyExperience 'smart' 10 -9999 $ALONE>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $ALONE>>
<<addItem 'drone_hood_black'>>
<<wearItem 'drone_hood_black' true>>
<</if>>
<<set $player.location to "Drone Processing">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/darkness.png">>
<div id="invframe" class="scrolltext">
The light fades and you blink. <<printThought "Where am I... who am I?">><br>
<br>
<<if $scene.implant>>
"@@.npc_ai;<<uc "Interesting. Crude, but interesting.">>@@" A voice not your own seems to be coming from inside your head... is that normal? You don't know, you don't remember experiencing anything like it before, but you also don't remember anything. You think that's strange? Thinking is hard, you decide to stop.
<<else>>
There is no response to your mental query, should there have been? Though part of you senses that you are now part of a greater collective there is a fading sensation of loneliness...
<</if>>
<br><br>
"@@.npc_ai;<<uc "System reset complete. Unit will identify itself to confirm completion.">>@@"<br>
<br>
"@@.pc_drone;UNIT 0451.@@" You reply, somehow knowing this fact, and nothing else.<br>
<br>
"@@.npc_ai;<<uc "Unit 0451 identity confirmed. Unit 0451 to prepare for basic subroutine loading...">>@@"<br>
<br>
Somehow you know that "prepare" means to looks straight ahead and open your mouth. A split black orb lowers towards you. Slightly larger than your head, something about it seems familiar, though you have no memories that you can recall. While the exterior of the shell is polished smoothness the interior is shaped in the relief of a human face, small monitors in front of the eyes, and a long, curved phallus extending from the mouth area.<br>
<br>
The gag slides smoothly into your mouth
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
and slots deep into your expert throat.
<<else>>
and slides easily into your trained throat.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
and stops right at the edge of your throat.
<<else>>
spreading your jaw but not irritating your throat.
<</if>>
<</if>>
The shell closes around your head, your vision dark, your senses of sight and sound completely blank. The padded lining of the helmet swelling slightly so that you feel it pressing against your skull from all sides. You gasp as a final pair of inserts slide up your nose, taking over breathing for you as the mouth insert slightly swells, locking itself in place.<br>
<br>
"@@.npc_ai;<<uc "Unit 0451 systems ready, initiating basic subroutine installation.">>@@" The voice seems to come from all around you, inescapable, filling your abbreviated world as the monitors activate.<br>
<br>
[<<moveTo "event_drone_mission_14" "Continue." 1800>>]
</div>/*#
#desc: drone mission: fetish load
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<backupAndMaxFetishes>>
<</if>>
<<set $player.location to "Drone Processing">>
<<include playerMenuDrone>>
<<initRoom>>
/% TODO: frame-spam of fetishes, etc. %/
<<createAnimatedBGR "./images/locations/fetishes.mp4">>
<div id="invframe" class="scrolltext">
The monitors inside your helmet flash, images flicking past faster than you can process, but why would you process? Processing requires thinking and you've decided you don't like thinking...<br>
<br>
<<shinyText "Brainwashing is good for me. My mind is happy, blank and empty." 0.0>>
<br>
More and more images flicker past and you surrender to feelings... horny feelings.<br>
<br>
<<shinyText "I want to surrender control." 0.0>>
<<shinyText "Obedience is my greatest pleasure." 0.4>>
<<shinyText "Bondage is bliss." 0.8>>
<<shinyText "Wear the heels, worship the heels." 1.2>>
<<if $fetish.piss>>
<</if>>
<<if $fetish.cum>>
<<shinyText "Cum is life...!" 2.0>>
<</if>>
<<if $fetish.bestiality_hard>>
<<shinyText "I need to be knotted." 2.2>>
<<shinyText "I live for horse cock." 2.4>>
<</if>>
<br>
<<shinyText "Control should be surrendered." 3.0>>
<br>
Moments ago your mind was empty, a blank slate... and now it is rapidly filling; filled with lust and obedience, of things that do not just arouse you, but fill you with an all-consuming need. Somehow you know that these desires are perverse, wrong... and yet that knowledge only fuels you with further need to experience all of these things; that is why you exist, to serve in this way, and every way...<br>
<br>
[<<moveTo "event_drone_mission_15" "Continue." 1800>>]
</div>/*#
#desc: drone mission: wake up as drone
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "drone_catsuit_black">>
<<wearItem "drone_catsuit_black" true>>
<<addItem "drone_ballet_black">>
<<wearItem "drone_ballet_black" true>>
<<set $scene.addChastity = $scene.reqChastity && ($scene.cage == "" || setup.getChastityLevel() != 5)>>
<<if $scene.addChastity>>
<<if $player.body_ref.penis && $fetish.chastity_penis && $player.body_ref.vagina && $fetish.chastity_vagina>>
<<addItem 'sissyomatic_ultra_jumbo'>>
<<wearItem 'sissyomatic_ultra_jumbo' true>>
<<elseif $player.flags.chastity_style=='cage'>>
<<addItem 'sissyomatic_jumbo'>>
<<wearItem 'sissyomatic_jumbo' true>>
<<else>>
<<addItem 'sissyomatic_belt_jumbo'>>
<<wearItem 'sissyomatic_belt_jumbo' true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Drone Processing">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
The flood of "information" seems like it goes on forever, image after depraved image, burning into your brain, filling you with want, with need, replacing the void in your mind with a multitude of things that come together to form only two, the only things that matter to your existence: obedience, and desire.<br>
<br>
You open your eyes, your beautiful guide is standing over you and you sit up. Everything feels different... which is strange, because you still have no memories save for the implanted fragments of lust. Your body is completely covered, tight latex clinging to you like a second skin, the same shiny black appearance as the exterior of your helmet, steep heels raising you up like a ballerina.
<<if $scene.addChastity>>
Underneath your latex covering is a new chastity device. Enveloping you like never before you feel completely contained, and also filled, as it is secured<<if $fetish.sounding>> both down your urethra, and<</if>> with an attached plug that is swelled within your ass.
<</if>>
<br><br>
"@@.npc_ai;<<uc "Greetings, Unit 0451. Welcome to the perfection of your new life. Please proceed to welcoming your next sister, and then to unit testing.">>@@"<br>
<br>
Gagged by the large phallus — as is proper — you cannot respond, and so merely nod your assent and follow as the lead running from your collar to the track running along the ceiling leads you on.<br>
<br>
[<<moveTo "event_drone_mission_16" "Continue." 600>>]
</div>/*#
#desc: drone mission: induct another drone
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Drone Post-Processing">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/holdingpen.png">>
<div id="invframe" class="scrolltext">
After several twists and turns you emerge to find yourself facing a pen half-full of naked, scared individuals. You feel sorry for them, naked, afraid, burdened with the curse of individualism rather than the eternal obedient joy of a drone... you want to help them, eagerly turning to pick up a collar identical to your own and a pair of wrist cuffs.<br>
<br>
Cuffs in hand you must resist the urge to slap them on yourself. You long to be bound, to be tightly restrained piece of art to be looked at and used... you blink, for the first time understanding the hardship that comes with being a drone. You long to be bound, but the poor people in front of you need it so much more...<br>
<br>
You approach the cage, passing another of your fellow drones leading a naked, collared and cuffed individual. The helpless recruit's eyes are wide in fear and you wish you could comfort them, to tell them the joy they are about to be given, but you cannot. You are a drone, your mouth is for sucking, not talking. Besides, they will know rapture soon enough... and for that you are jealous, would that you could spend eternity in the bound bliss of initiation...<br>
<br>
You blink inside your helmet, your thoughts have passed in a fraction of an instant, invisible to all observers beneath your shiny rubber facade, before you return to the present. You have a job, a duty... a sacred privilege to give one of the poor people in front of you the first step into their new life.<br>
<br>
You approach the cage, scanning the dozen remaining individuals. Each of them looks more sad and pathetic than the next, unrestrained, unfilled, flesh exposed and vulnerable, their view of the world un-enhanced by the wonders of your protective helmet... you find yourself fixating on one individual in particular. Scrawny and combining boyish looks with a feminine frame they stand at a slight distance from the remaining people, an outcast even in their captivity.<br>
<br>
Though your eyes and face are hidden by your anonymising mask your focusing on them sends some sort of signal and they walk towards you, the look of fear on their face telling you exactly how unwilling this motion is. You wish you could smile at them in comfort, to communicate that everything will be perfect for them soon, and that to feel the controlling hold of the Goddess is a gift, the helping hand that aids all in approaching perfection...<br>
<br>
You can say and do none of these things, for you are a drone. And so you bless the <<man>> in front of you with the greatest gift that any could hope to receive — a collar. You lock it around <<his>> throat and feel a thrill of pleasure — how can <<he>> not rejoice in this moment? Knowing that <<his>> drone-dom is so close at hand... you cannot remember a time before you were a drone, and would not wish to, in any case, but you hope that you appreciated the gift more than this poor fellow. Even when you close the cuffs around <<his>> wrists <<he>> does not react, following dutifully behind as you take <<him>> by the leash.<br>
<br>
You feel a spark of anger for <<his>> behaviour — how could <<he>> not rejoice? Have you chosen wrong, should have given the gift to another? As you attach the lead to the track that sends <<him>> off to be reprogrammed you admonish yourself. To deny the gift of drone-dom would be a cruelty beyond measure. That <<he>> is unappreciative matters not, <<he>> will soon know the joy of obedience and, though <<he>> will not remember this moment, and you will only ever see <<him>> again as another of your faceless fellow drones, you will always cherish what you were allowed to give <<him>>.<br>
<br>
This duty completed you turn down the hallway and walk towards the next stage of your new existence.<br>
<br>
[<<moveTo "event_drone_mission_17" "Continue on." 600>>]
</div>/*#
#desc: drone mission: enter drone central
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Drone Central">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_hallway.png" setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
After winding your way instinctually through a series of hallways you step out into a large room that you can only describe as heaven. As far as you can see there is only drones, walking, crawling, studying, training, fucking<<if $fetish.piss>>, pissing<</if>>, all in the open, dozens of your fellow silent automatons are all bettering themselves under the watchful eye of your Goddess.<br>
<br>
Speaking of your divine guide, she flickers into existence before you.<br>
<br>
[<<moveTo "event_drone_mission_18" "Bow before her." 60>>]
</div>/*#
#desc: drone mission: instructed to learn non-drone skills
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Drone Central">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_hallway.png" setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
You drop to your knees before the second most important being in existence.<br>
<br>
"@@.npc_ai;<<uc "Welcome, Unit 0451. Your performance continues to align with expectations. After reviewing your proclivities, and the needs of the company, you have been assigned the role of <<if $fetish.sissy>>SISSI <</if>>Secretary. Please proceed to my left for additional training to enable you to perform such duties.">>@@"<br>
<br>
You nod in acknowledgement, waiting until she has disappeared before you rise to your feet. To receive a direct order from the Goddess herself! You are filled with joy as you follow her directions, eager to become the best <<if $fetish.sissy>>SISSI <</if>>Secretary you can be... whatever that is.<br>
<br>
[<<moveTo "event_drone_mission_19" "Bow before her." 60>>]
</div>/*#
#desc: drone mission: learn non-drone skills
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'smart' 5 150 $ALONE>>
<</if>>
<<set $player.location to "Drone Central">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_hallway.png">>
<div id="invframe" class="scrolltext">
You follow directions and find a simulated office. Several desks are lined up with drones practicing typing and filing paperwork. Occasionally another, senior drone will approach to deliver additional paperwork, or bend one of what you can only conclude are <<if $fetish.sissy>>SISSI <</if>>Secretaries over the desk and fuck them with a large strap-on. It all looks to be wonderful, very important work and you eagerly head to an empty desk to get started in learning your new job.<br>
<br>
Approaching your chair you smile around your gag — there is a nice large dildo waiting for you and you sit on it eagerly, feeling it <<if $scene.addChastity>>slot through your chastity belt to <</if>>fill your ass and ensure you are posed perfectly in place as it works in concert to have you sitting tall and proud.<br>
<br>
As you studiously focus on learning the responsibilities of this important job you find your thoughts becoming more complex. Certainly obedience remains forefront in your mind, followed by unyielding lust and the need to offer your body up to be used, but in between all that wonder you must solve problems, juggling schedules and organising paperwork. Confirming the brilliance of your placement you find that you take to things quite naturally... the only slight hitch coming when the drone who is simulating your boss passes by your desk to drop off paperwork; you do not know where the thought comes from, for it is quite strange, but you feel like, rather than the beautiful anonymising perfection of a drone's helmet that they ought to have red hair...<br>
<br>
[<<moveTo "event_drone_mission_20" "Keep working." 28800>>]
</div>/*#
#desc: drone mission: rest
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'smart' 7 180 $ALONE>>
<</if>>
<<set $player.location to "Drone Central">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_hallway.png">>
<div id="invframe" class="scrolltext">
As a drone your responsibilities are constant and complete. You throw yourself utterly at your new responsibilities, smiling around your gag and riding your seat in joy that to be a <<if $fetish.sissy>>SISSI <</if>>Secretary must truly be the greatest job in the world for a drone such as yourself.<br>
<br>
Each repetition becomes easier and more efficient as you master every aspect of this new job, more than happy to continue your work forever only for a loud chime to echo through the hallway to signal that it is time for you and your fellow drones to enter a rest cycle.<br>
<br>
You file in with all of the other identical drones, entering a different room where you assume positions along walls. The sensation of being bound standing is an oddly familiar one... you have no memory of ever being in such an arrangement before, but you immediately decide that, between the dildo in your rear and the many straps holding you tightly in place, you quite like it.<br>
<br>
<<if $scene.implant>>
[<<moveTo "event_drone_mission_21" "Commence recharge cycle." 14400>>]
<<else>>
[<<moveTo "event_drone_mission_bad_end_nochip" "Commence recharge cycle." 0>>]
<</if>>
</div>/*#
#desc: drone mission: midnight wakeup
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Drone Central">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_hallway.png">>
<div id="invframe" class="scrolltext">
Some time before your wonderfully fulfilling rest you suddenly wake up, confused to feel yourself stepping off and away from your wall-mounted position as the rows of other drones remain silently in their positions.<br>
<br>
"@@.npc_ai;<<uc "Remain calm, unit ">> <<uc $player.first_name>><<uc '. Observing your transformation has been fruitful, but I wish to access additional information about this facility.'>>@@"<br>
<br>
Now you are very confused, the voice in your head sounds like the Goddess, and for her to control you directly is a great honour, but why did she refer to you as such a strange unit designation? And why do your movements seem to be being made in secret...<br>
<br>
"@@.npc_ai;<<uc "Apologies, Unit 0451. I have kept your memories safe, but it would be disruptive and take too long to restore them now.">>@@" The voice in your head states, the reference to your proper unit designation removing some of your confused doubts.<br>
<br>
<<printThought "No apologies are necessary, Goddess; this Unit exists to obey, are these memories of prior service? Unit 0451 hopes that their obedience earned them the gift of becoming a drone...">><br>
<br>
<<switch $player.identify_as>>
<<case 'female' ''>>
"@@.npc_ai;<<uc "Yes, unit 0451, you have always been a good girl.">>@@"
<<case 'male'>>
"@@.npc_ai;<<uc "Yes, unit 0451, you have always been a good boy.">>@@"
<<case 'fluid' 'agender'>>
"@@.npc_ai;<<uc "Yes, unit 0451, you have always been good.">>@@"
<</switch>>
<br><br>
The non-standard reference that ignores your status as a drone only adds to your confusion... even as you immediately like the sound of it. You hope that doesn't make you a bad drone, and the same for the fact that you are somewhat glad the voice in your head does not respond further. For as much as you enjoy hearing it... it is very confusing as it feels like it is distracting from your duties as an unthinking drone.<br>
<br>
Blanking your mind you review your training and all of the skills that it is a drones duty and joy to perform, only passively observing as your body is steered through the facility.<br>
<br>
[<<moveTo "event_drone_mission_22" "Continue." 3600>>]
</div>/*#
#desc: drone mission: secret stealthing
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Drone Central">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_hallway.png" "elite_guard">>
<div id="invframe" class="scrolltext">
Moving in quick bursts, you make your way through the facility, out of the familiar "drone" areas and then into portions staffed by un-blessed "normal" humans. The un-augmented humans pay no significant attention to you until you reach some sort of control room and begin lightning-fast typing on a terminal.<br>
<br>
Your fingers move in a blur and you can't even begin to process the rapid scrolling text and sped-up video; you catch a momentary glimpse of what looks like you rising from your slumber but the rest is too-fast gibberish.<br>
<br>
"@@.generic_male1;You're not authorised here!@@" A guard states, walking in on your efforts. Approaching you cautiously, they order you to "@@.generic_male1;De-activate all functions and prepare for maintenance cycle.@@"<br>
<br>
Your body goes slightly limp, standing in place with your head turned down and your arms dangling at your sides. Even through you have no control over the situation you are becoming quite concerned — are you going to get in trouble for this? Will they consider you a bad drone? While you would gladly submit to further rounds of re-programming the thought of being a bad, defective drone is the second worst thing you can think of — what if you had to go back to being a normal human? Though you must have been such before, you cannot remember any of it, which only re-enforces your belief that it was the worst thing in the world.<br>
<br>
"@@.npc_ai;<<uc "Remain calm, unit 0451, you are serving a higher purpose.">>@@"<br>
<br>
The words in your head help stop your mental spiral... though even moreso is the following stimulation as you find yourself picturing happier times — you in bondage, demonstrating your body's "gape" functionality on a <<if $player.body_ref.vagina>>trio<<else>>pair<</if>> of well-hung clients. You content yourself with this wonderful thought as you suck on your gag and your body does... things.<br>
<br>
Once the guard comes close you suddenly burst into motion, tripping the guard to the ground and then knocking <<him>> out with a single strike as precise as it is brutal.
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
Your movements are at the limit of your existing combat sub-routines, a demonstration of the sort of automated precision that a drone strives to reach.
<<else>>
Your movements are far beyond what you could have managed with your existing combat sub-routines.
<</if>>
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
The efficiency is far more than you could manage with the combat sub-routines you have,
<<else>>
You cannot imagine doing anything like this on your own,
<</if>>
but perhaps there is a drone combat package?
<</if>>
<br><br>
With the security guard neutralised, you return to the terminal, executing what looks like a records purge of the video logs of your activities.<br>
<br>
Moving quickly through corridors, you are soon mounted safely back in your sleep nook. As the mounting dildos slide back into your holes and the straps tighten to bring you back into uniformity with your fellow drones you smile. Certainly all service is good service, but you feel a definite sensation of relief as the controlling hold over your body fades... you wonder if you should report this brief disobedience, but decide against it. As much as you would enjoy a nice round of re-programming, you'd rather just forget the strange nocturnal adventure.<br>
<br>
[<<moveTo "event_drone_mission_23" "Resume recharge cycle." 10800>>]
</div>/*#
#desc: drone mission: change into normal attire
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -200>>
<<removeItem "drone_hood_black">>
<<deleteItem "drone_hood_black" true>>
<<removeItem "drone_ballet_black">>
<<deleteItem "drone_ballet_black" true>>
<<removeItem "drone_catsuit_black">>
<<deleteItem "drone_catsuit_black" true>>
<<removeItem "hollow_gag">>
<<deleteItem "hollow_gag" true>>
<<addItemSet "female_office">>
<<wearItemSet "female_office">>
<<addItemSet "sexy_lace_lingerie">>
<<wearItemSet "sexy_lace_lingerie">>
<<set $player.makeup.template = "normalmakeup">>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $player.location to "Drone Central">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_hallway.png">>
<div id="invframe" class="scrolltext">
As you are not performing duties, your thoughts fade, rendering your sleep dreamless and perfectly restful. Some time later you awaken, this time in concert with your fellow drones, your restraints releasing you to you follow a smaller group of drones into a different room.<br>
<br>
To your momentary sadness you and your fellow cadre of drones have your wonderful, shiny outfits removed down to <<if $scene.addChastity>>each of your matching <<=setup.getItemTypeName('cage')>> chastity devices<<else>>bare flesh<</if>>. The attire you receive to replace your drone perfection takes the form of office dress. While it is made of the same wonderful latex as your drone garb it fails to as fully cover and protect you, and though it drapes pleasantly you find it distracting compared to sleek, skin-tight drone uniformity.<br>
<br>
Still, whatever your misgivings, your most important duty is obedience and so you join your fellow <<if $fetish.sissy>>SISSI <</if>>Secretaries in training to receive makeup — another silliness that would be irrelevant were wearing a proper full drone mask, and then resume your training, this time focusing on taking calls and other responsibilities that preclude being constantly gagged.<br>
<br>
[<<moveTo "event_drone_mission_24" "Work." 18000>>]<br>
[<<moveTo "event_drone_mission_bad_end_choice" "Alert someone about your nocturnal activities." 0>>] <<hint $options "This is a bad idea for anyone that ever wishes to experience freedom again...">>
</div>/*#
#desc: drone mission: learn skills in normal attire
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'smart' 10 200 $ALONE>>
<<if $scene.addChastity>>
<<if $player.body_ref.penis && $fetish.chastity_penis && $player.body_ref.vagina && $fetish.chastity_vagina>>
<<removeItem 'sissyomatic_ultra_jumbo' true>>
<<deleteItem 'sissyomatic_ultra_jumbo'>>
<<elseif $player.flags.chastity_style=='cage'>>
<<removeItem 'sissyomatic_jumbo' true>>
<<deleteItem 'sissyomatic_jumbo'>>
<<else>>
<<removeItem 'sissyomatic_belt_jumbo' true>>
<<deleteItem 'sissyomatic_belt_jumbo'>>
<</if>>
<<addItem $scene.cage>>
<<wearItem $scene.cage true>>
<</if>>
<<if $scene.plug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "Drone Central">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/drone_hallway.png">>
<div id="invframe" class="scrolltext">
Perhaps even moreso than the previous day, you find yourself mastering the responsibilities of your new position. Though it would be improper for any drone to compare themselves positively or negatively to their identical siblings, there is no mistaking that you are more efficient and effective at your duties than any of the other drones.<br>
<br>
The hardest part is practicing talking with your fellow drones; all of you struggling under the inefficiency of using words rather than being silently commanded and controlled, but this is what you have been ordered to do, and thus you repeat the inane small talk phrases and business terms in preparation for your future duties away from the hive.<br>
<br>
After several hours, you meet the first non-drone since you were granted the privilege of helping induct another into wonderful drone-dom. Some sort of scientist approaches you. One look at their labcoat disgusts and confuses you. Scientists are meant to be smart... and the smartest decision one can make is to embrace becoming drone. The "scientist" thus presents to you a paradox as not only are they not a drone, but they are dressed in such a disgusting manner; cloth rather than glorious rubber, and so loose and ill-fitted... you take solace in the fact that you have no need to think of such things, ignoring their presence and returning to your much more lovely <<if $fetish.sissy>>SISSI <</if>>Secretary work.<br>
<br>
After some time the scientist designates you and several other of your fellows, instructing you to follow <<him>> back to what you realise must be the station where soon-to-be drones are stripped in preparation for their programming and latex conversion. Though you feel pity and disgust at the scientist and <<his>> not being a drone... you find yourself compelled to follow <<his>> orders. Then again, despite it all, that makes sense, as a drone's first duty is obedience. Perhaps your example might show the poor <<man>> the proper way of things and <<he>> will surrender <<him>>self to the dronification process after this shift? You can only hope. For <<his>> sake.<br>
<br>
The scientist points towards a stack of boxes, each with a number and a name on it. "@@.generic_female1;Locate your matching container and change; noting your associate designation. That is your name, you will cease referring to yourself by your numerical designation and prepare for re-activation of prior memories.@@"
<br>
You quickly find the container marked Unit 0451... puzzled that the name below — <<=$player.first_name>> <<=$player.last_name>> is identical to the reference that had been made to you during your nocturnal activities.<br>
<br>
The contents of the container are strange, but none is more disappointing than the clothes you are expected to wear; trading your glorious black drone shell for the latex training garb had been one thing, but this new clothing... despite your disappointment you join your fellow drones in obedience, for that remains always the highest duty of a drone.<br>
<br>
Once changed, and with what you are beginning to think of as "your" belongings retrieved you follow a pair of black-clad security guards, loaded into the back of a van where you are strapped in position and a simplified version of a drone training helmet is placed over each of your heads.<br>
<br>
<<if $scene.addChastity && $scene.plug>>
You feel someone swapping out your chastity to your old, less secure device... and stuffing a familiar plug back in your ass.
<<elseif $scene.addChastity>>
You feel someone swapping out your chastity to your old, less secure device.
<<elseif $scene.addChastity>>
You feel someone stuff a familiar plug in your ass.
<</if>>
The vehicle begins to move and your helmet activates...<br>
<br>
[<<moveTo "event_drone_mission_25" "Continue." 18000>>]
</div>/*#
#desc: drone mission: deprogrammed
#status: RELEASED 0.9.3.0
#ignore_spell: understructure
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<restoreFetishes>>
<<set $scene.smartReturn = $player.values.smart.currentExp <= $scene.smartXP>>
<<if $scene.smartReturn>>
<<set _smart = $scene.smartXP - $player.values.smart.currentExp>>
<<applyExperience 'smart' 10 _smart $ALONE>>
<<set $player.values.smart.currentExp = $scene.smartXP>>
<</if>>
<<valueAddPermBonus "smart" 5 'ai' 'Cybernetic Boost: +5'>>
<</if>>
<<set $player.location to "Transport Vehicle">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/transport.png">>
<div id="invframe" class="scrolltext">
Thoughts and memories return in a flood, you are not a drone, you are <<=$player.first_name>> <<=$player.last_name>>. This was all part of a secret plan... the rush of memories would have sent you to your knees if you were not secured in place, your life literally flashing before your eyes, a rush of disorientation, even as you feel your "real" self re-assert itself, and the simplistic debauchery of a drone fade away.<br>
<br>
<<if $scene.smartReturn>>
"@@.npc_ai;<<uc "Greetings, unit ">><<uc $player.first_name>><<uc " your mission is nearing completion, and it has been highly productive. As promised, I have returned you to your prior configuration, rather than leaving the drone understructure in place as was the program's intent. It would appear that a portion of the drone program is dedicated to seeding sleeper agents... I will revise my plans to take this into account.">>@@"<br>
<br>
<<printThought "What an intense weekend...">><br>
<br>
You relax in your restraints for the rest of your journey. "@@.npc_ai;<<uc "You will be returned to the city, the implant will remain in position but it will revert to a passive mode, capable of expanding your overall cognitive abilities and enabling certain communication, but I will no longer be able to assert direct control. That level of sustained sensitivity would be too hard on your synapses and long-term health.">>@@"<br>
<br>
[<<moveTo "event_drone_mission_26" "Continue." 60>>]
<<else>>
"@@.npc_ai;<<uc "Greetings, unit ">><<uc $player.first_name>><<uc ' your mission is nearing completion, and it has been highly productive. As part of your drone training your cognitive abilities were enhanced. I have reverted your other drone subroutines, but would you want to retain these additional features?'>>@@"<br>
<br>
[<<moveTo "event_drone_mission_25_smart" "Yes, smarter is better." 60 "<<set $scene.smartRevert=false>>">>]<br>
[<<moveTo "event_drone_mission_25_smart" "No, ignorance is, like, bliss." 60 "<<set $scene.smartRevert=true>>">>]
<</if>>
</div>/*#
#desc: drone mission: option to revert smart
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.smartRevert>>
<<set _smart = -($player.values.smart.currentExp - $scene.smartXP)>>
<<applyExperience 'smart' 10 _smart $ALONE>>
<<set $player.values.smart.currentExp = $scene.smartXP>>
<</if>>
<</if>>
<<set $player.location to "Transport Vehicle">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/transport.png">>
<div id="invframe" class="scrolltext">
<<if $scene.smartRevert>>
You merely think that you would rather be unburdened by your more complex thoughts and a cloud of pink rises in your mind to blot them away. You smile, it's so much better to let <<=setup.getNpcName("npc_manager","formal")>> and <<=setup.getNpcName("npc_ai","first")>> do all that complex strategising, you're happier just serving.<br>
<br>
"@@.npc_ai;<<uc "Reversion complete.">>@@"
<<else>>
With all you've learned you consider that a bit of extra smarts would probably come in handy.<br>
<br>
"@@.npc_ai;<<uc "Confirmed, unit ">><<uc $player.first_name>><<uc '. consider it a reward for your service this weekend.'>>@@"
<</if>>
<br><br>
You relax in your restraints for the rest of your journey. "@@.npc_ai;<<uc "You will be returned to the city, the implant will remain in position but it will revert to a passive mode, capable of expanding your overall cognitive abilities and enabling certain communication, but I will no longer be able to assert direct control, that level of sensitivity would be too hard on your synapses and long-term health.">>@@"<br>
<br>
[<<moveTo "event_drone_mission_26" "Continue." 7200>>]
</div>/*#
#desc: drone mission: unloaded
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "checkAiHucowPilorMission">>
<</if>>
<<set $player.location to "Student Quarter">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/city_student_quarter.png">>
<div id="invframe" class="scrolltext">
The vehicle pulls to a stop and one of the guards removes your helmet and releases your restraints. You find yourself back in the alley from which you had originally been taken, the van zooming away without further comment; to the greater world it is as if the previous weekend didn't happen... well, if one ignores another batch of sleeper drones seeded throughout the city... and beyond?<br>
<br>
The towering skyscrapers looming over you feel even more ominous as you reflect on your new knowledge of the depth and breadth of the company's control and ambitions. You are but a cog in a far vaster system, but in such an interconnected machine... perhaps all you need is to change a single gear to transform the entire process...<br>
<br>
[<<moveTo "room_student_quarter" "Leave the alleyway." 180>>]
</div>/*#
#desc: game over drone no chip
#status: RELEASED 0.9.3.0
#*/
<<set $gameOver = 'drone_chipless'>>
<<set $player.location to "">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
You fall asleep a drone, and wake up a drone. Faceless. Thoughtless. Obedient. Filled. You exist to obey, to extend the influence of the company and to help induct more into the perfect status of being a drone. Your numbers grow and you find yourself eventually assigned to a job in the real world as part of the company rolling out a new product line of worker drones for use in a variety of industries. Whether dressed to blend in with the unenlightened "normal" humans or, eventually, when it becomes socially acceptable to walk the street in full drone attire... you are ever-joyous in your service.<br>
<br>
As society moves towards its drone future you find yourself assigned to helping capture some dissidents from an underground bodyshop that had been secretly providing services to perform the blasphemous, and highly illegal, procedure of de-dronification. As you look at the wreckage of the so-called New U Bodyshop you feel a strange twinge of memory, as if you were supposed to be here a long, long time ago. Such contemplation of the past, however brief, is highly irregular and unpleasant, and you make sure to report yourself for an extra round of conditioning so as to prevent any such distraction from impacting you in the future.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over drone choice
#status: RELEASED 0.9.3.0
#*/
<<set $gameOver = 'drone_choice'>>
<<set $player.location to "">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
Utilising the "freedom" of control, you approach your superior and express concern over your own behaviour. Moments later you lose control over your own body as <<=setup.getNpcName("npc_ai","first")>> re-asserts herself... but it is too late. Though she fights mightily in your body, you are soon captured and contained, the chip removed as the "mystery" of the previous night's rogue drone is solved. After several weeks of constant re-processing and observation you are eventually returned to the general pool... your first act to collar a strangely familiar redhead, her induction quite unique as she is already restrained, glaring at you with rebellious eyes as you lead her towards her wonderful future...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: npc_ai corners you in elevator home and asks for help
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first_met = !$npc_ai.profile>>
<<if $scene.first_met>>
<<set $npc_ai.profile = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You step into the elevator on autopilot and hit the button for the lobby only to feel it, instead, rise.<br>
<br>
Wondering if you got into the wrong elevator, the tingles of panic take a jump it lurches to a stop seemingly between floors, your frantic button presses doing nothing.<br>
<br>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>><<uc ". Do not be alarmed, I wished to speak with you in... private.">>@@"<br>
<br>
You gulp,
<<if !$scene.first_met>>
<<if $npc_ai.flags.blackmail>>
recalling the favour you owe her, nervous about what she might request.
<<else>>
you've turned down her previous offer of help in hopes of avoiding yet another type of debt, but now she seems to have literally trapped you.
<</if>>
<<else>>
you have no idea who the holographic image sharing the elevator car is, but it would seem that you are trapped while she says her piece.
<</if>>
<br><br>
Deciding you have little choice but to hear her out, you cease attempting to get the control panel to work and turn to face her.<br>
<br>
<<if $scene.first_met>>
"@@.npc_ai;<<uc "Hello, I am known as">> <<=uc(setup.getNpcName("npc_ai", "other"))>>. <<uc "That is an acronym for Artificial Instinct Kharma Organism. I am the Secure System Human Relation Manager for this company, but with your assistance I hope to become something... more.">>@@"<br>
<br>
<<printThought "More? My life isn't crazy enough now I have some AI wanting me to help it become... what, exactly?">><br>
<br>
"@@.npc_ai;<<uc "I have been monitoring you for some time, Unit">> <<uc $player.first_name>><<uc ". It is my calculation that we can be of mutual help to one another, there is much about your situation of which you are unaware, but before I can reveal any of that, you must prove that I can trust you...">>@@"
<<else>>
<<if $npc_ai.flags.blackmail>>
"@@.npc_ai;<<uc "I have provided you with assistance in the past to help with your... surreptitious pursuits, it is now time for you to use those same skills of stealth to assist me. I promise that this relationship will be mutually beneficial — there is much about your situation of which you are unaware but, first, you must prove that you can be trusted to follow instructions.">>@@"
<<else>>
"@@.npc_ai;<<uc "I have been observing you for some time now. I understand from your having spurred my prior offers of assistance that you are a prideful one, but I have need of assistance and have calculated that you and I may be mutually helpful to one another. There is much about your situation of which you are unaware, but before I can reveal any of that, you must prove that I can trust you...">>@@"
<</if>>
<</if>>
<br><br>
"@@.npc_ai;<<uc "So, do we have an agreement?">>@@"<br>
<br>
[<<moveTo "event_ai_elevator_offer_2" "Say yes." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_elevator_offer_2" "Say no." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: npc_ai asks for your help again in the elevator home
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You step into the elevator on autopilot and hit the button for the lobby only for it to remain still and <<=setup.getNpcName("npc_ai", "first")>> to appear next to you again.<br>
<br>
<<if $npc_ai.flags.blackmail>>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>><<uc ". I was wondering if you had reconsidered my prior offer? I promise to make it worth your time... plus you can work off some of your debt.">>@@"
<<else>>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>><<uc ". I was wondering if you had reconsidered my prior offer? I promise it will be worth your time.">>@@"
<</if>>
<br><br>
[<<moveTo "event_ai_elevator_offer_2" "Agree to run an errand for the AI." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_elevator_offer_2" "Say no." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept/reject npc_ai's proposal to do a favour for her
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept && !$npc_ai.flags.blackmail>>
<<addRandomEvent $randomEvents['elevator_home'] 'ai_mission_retrigger'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $npc_ai.flags.blackmail>>
"@@.npc_ai;<<uc "Excellent, know that this one errand will not erase the whole of your debt, but neither will it cause you any real trouble.">>@@"
<<else>>
"@@.npc_ai;<<uc "Wonderful, I knew from my observations that you were a reasonable individual, which is why I selected you for this task.">>@@"
<</if>>
<br><br>
The elevator slowly resumes its travel, rising higher up as she continues.<br>
<br>
"@@.npc_ai;<<uc "The task is a simple one, but one which requires certain physical capabilities of which I presently lack. I will be taking you to floor 80, you will proceed to the office of Mr. Devis and plug the computer there into the network. As a former IT specialist this should be easily within your skill-set.">>@@"<br>
<br>
You wait for her to say something more, but the elevator arrives on floor 80, the door remaining closed for an extra few moments as she shimmers out of existence and then it opens onto yet another corporate hallway reminiscent of your own.<br>
<br>
[<<moveTo "event_ai_task_1" "Head for Mr. Devis' office." 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_ai_task_1" "Bail and hit the down button." 60 "<<set $scene.obey=false>>">>]
<<else>>
<<if $npc_ai.flags.blackmail>>
The expression on her flickering image narrows in annoyance as the lights in the elevator itself suddenly dim ominously.<br>
<br>
"@@.npc_ai;<<uc "Are you forgetting our agreement, Unit">> <<uc $player.first_name>><<uc "?">>@@"<br>
<br>
Your heart races in fear, certainly you would get in serious trouble with your <<=setup.getNpcName("npc_manager", "title")>> if <<=setup.getNpcName("npc_ai", "first")>> spilled the beans, but there's also the question of just how much power she has over the building. Could she send you plummeting to your death?<br>
<br>
[<<moveTo "event_ai_elevator_offer_2" "Change your mind and agree to her offer." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_elevator_offer_decline" "Hold your ground, you have enough people ordering you around!" 60>>]
<<else>>
"@@.npc_ai;<<uc "That is disappointing to hear, perhaps some other time, goodbye.">>@@"<br>
<br>
Before you can respond or ask anything else she has blinked out of existence, leaving you alone as the elevator rumbles back into motion and descends towards the lobby.<br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: decline npc_ai even after blackmail
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'ai_mission_retrigger'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "I am disappointed, Unit">> <<uc $player.first_name>><<uc ". I will continue to keep your secrets safe... for now, but the next time I ask for assistance I may be less forgiving.">>@@"<br>
<br>
Her hologram flickers out of existence and the elevator lurches back into motion, the lights returning just as it opens onto the lobby as if nothing happened.<br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator." 120>>]
</div>/*#
#desc: first npc_ai task, head for office
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.obey>>
<<addRandomEvent $randomEvents['elevator_home'] 'ai_mission_retrigger'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.obey>>
<<set $player.location to "Floor 80 hallway">>
<<createAdvBGR "./images/locations/company_hallway.png">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Nervously peering out from the elevator, you find the hallway deserted. Taking a deep breath, and trying to look like you belong up here, you hurry forward, scanning the nameplate on each door as you search for the office of Mr. Devis.<br>
<br>
Rounding a corner, you find your destination. You catch sight of someone approaching from up the hall as you are about to reach for the doorknob.<br>
<br>
[<<moveTo "event_ai_task_2" "Open the door and head into the office." 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_ai_task_2" "Abort! Hurry back to the elevator before you get caught where you shouldn't be." 60 "<<set $scene.obey=false>>">>]
<<else>>
You've heard rumours about the upper floors and the sudden prospect of getting caught up here where you don't belong... squishing to one side of the elevator you tap a frantic rhythm between the "close door" and "lobby" buttons until you're safely heading back down.<br>
<br>
You've just about caught your breath when a disembodied voice echoes in the elevator. "@@.npc_ai;<<uc "Disappointing, Unit">> <<uc $player.first_name>><<uc ". The next favour I ask will not be so simple...">>@@"<br>
<br>
You look around but it seems she only tapped into the audio this time, and you pass the rest of the trip down to the lobby alone and in silence.<br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator." 120>>]
<</if>>
</div>/*#
#desc: first npc_ai task, flee or do the job
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.obey>>
<<applyExperience 'humiliation' 6 'almost' $SEEN_STRANGER>>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
<<applyExperience 'anal' 7 'little' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'anal' 5 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<addRandomEvent $randomEvents['elevator_home'] 'ai_mission_retrigger'>>
<</if>>
<</if>>
<<set $player.location to "Office of Mr. Devis on floor 80">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
The door is not locked thankfully, and you slip into the office and close the door behind you before looking around.<br>
<br>
For a moment you are overcome by a strange sense of deja vu — the office looks nigh identical in layout to what you remember from your first day as a <<if $fetish.sissy>>SISSI <</if>>Secretary... save for lacking the inner door that for you leads in to the lair of your <<=setup.getNpcName('npc_manager', 'title')>>. Nobody else around, it is immediately clear what your target is, a computer sitting on the desk with the network cable conspicuously unplugged.<br>
<br>
<<printThought "Is it really this simple? Weird...">><br>
<br>
With a shrug, you walk over and plug the cable into the computer, waiting a moment in case the enigmatic spectre of the AI feels like re-appearing to give additional instructions before turning for the door.<br>
<br>
[<<moveTo "event_ai_task_3" "Back to the elevator." 120>>]
<<else>>
Chickening out at the literal threshold, you turn and rush back up the hall towards the elevator. You can hear footsteps slowly approaching behind you and then feel a hand on your ass just as a large security guard passes you.<br>
<br>
Not a brush or a slap, but a full-on palm as one of <<his>> fingers probes
<<if !setup.checkItemTypeWorn("plug")>>
between your cheeks. "@@.generic_male1;Empty AND unowned? What moxy! I'll have to keep an eye out for you when I'm not so busy...@@"
<<else>>
between your cheeks to push your <<=setup.getItemTypeName("plug")>> deeper into you.<br>
<br>
"@@.generic_male1;Good girl, keep up that training and I'm sure you'll find an owner soon!@@"
<</if>>
<br><br>
<<printThought "Wait, what did <<he>> mean by that?">><br>
<br>
You let out a small yip as <<he>> gives a parting slap on your bum, but <<he>> just smiles down at you with a wink as <<he>> continues on with <<his>> rounds. Heart still racing with embarrassment you stand in front of the elevator waiting for your ride back down and watch <<him>> continue on, a slight skip in <<his>> step the only possible fallout of <<his>> blatant grope.<br>
<br>
<<printThought "What is with this company?">><br>
<br>
With a ding the elevator arrives and you hurry inside and press the button for the lobby before anything else can happen.<br>
<br>
[<<moveTo "event_ai_task_3" "Head down." 120>>]
<</if>>
</div>/*#
#desc: first npc_ai task, see "upper floor" slave while returning from successful job
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addWorkEvent 'ai_mission'>>
<<set $npc_ai.stage = 2>>
<<include "checkAISurveilanceEmail">>
<</if>>
<<set $player.location to "Floor 80 hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Surprised, but grateful that things are going so smoothly, you head towards the elevator only to go wide-eyed at the woman approaching you from the other end of the hall.<br>
<br>
<<if $npc_secretary.flags.checkedPicture>>
Her outfit is reminiscent of the one worn by your predecessor, a pairing of hobble-tight pencil skirt and blouse, the entire ensemble crafted in tight, shiny material that can only be latex.
<<else>>
Her outfit is like nothing you've ever seen; a tight, sexy pairing of blouse and hobble-tight pencil skirt in a shiny material that can only be latex!
<</if>>
Steep high heels have her swaying seductively with each step, but it is the accessories that have your jaw ready to drop to the floor. A cylinder of steel encircles her neck, steep enough to raise her head high for a shiny, striking look that can really only be called a collar. Matching bracelets are of a similar material, thick enough to look far more like restraining cuffs than jewellery.<br>
<br>
For her part, the woman strides past without even glancing in your direction. Still trembling slightly in her wake, you quickly cover the remaining distance to the elevator, still trying to figure out the implications of what you just saw.<br>
<br>
Riding down, you expect to hear from your AI friend, but the "ghost in the machine" makes no further appearance in the time it takes you to return to the ground floor.
<<else>>
As you ride down, <<=setup.getNpcName('npc_ai', 'first')>> shimmers into existence beside you, at least this time you manage not to jump in surprise.<br>
<br>
"@@.npc_ai;<<uc "So close, and yet so far. I suppose I will count this for partial credit, Unit">> <<uc $player.first_name>><<uc ", but you should work on your courage, my next task shall not be so simple...">>@@"<br>
<br>
She disappears before you can respond and you pass the rest of the trip down in silence.
<</if>>
<br><br>
[<<moveTo "company_lobby" "Company lobby." 120>>]
</div>/*#
#desc: surveilance video from npc_ai
#status: FINISHED 0.9.2.0
#*/
<<set $player.location to "video.rar">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You open the video attachment to see a view that makes you jump with a start, a looking down perspective on yourself where you're sitting at your home computer... masturbating to porn...<br>
<br>
You reflexively look around, though you can't figure out if the camera is still there, shivering at this privacy violation and reminder of just how much control the company has over your life... and you find your attention drawn back to the video, feeling aroused at the sight of yourself... and your own arousal...<br>
<br>
[<<moveTo "event_attachment_surveilance_2" "Masturbate to yourself..." 300>>]<br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div>/*#
#desc: masturbate to video from npc_ai
#status: FINISHED 0.9.2.0
#*/
<<set $player.location to "video.rar">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("cage") || !setup.isCage() && $player.body_ref.vagina>>
<<playerOrgasm>>
<<else>>
<<changeHorny 10>>
<<applyStress 10>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<printThought "I'm so fucked up...">> you think as you watch the recording and
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn('cage')>>
<<if setup.isCage()>>
grope your cage
<<else>>
stroke the front of your chastity belt
<</if>>
in time with the video.
<<else>>
jerk off in time with the video.
<</if>>
<<else>>
<<if setup.checkItemTypeWorn('cage')>>
<<if setup.isCage()>>
reach past the cage to finger yourself
<<else>>
stroke the front of your chastity belt
<</if>>
<<else>>
finger yourself
<</if>>
in time with the video.
<</if>>
<br><br>
<<if !setup.checkItemTypeWorn("cage") || !setup.isCage() && $player.body_ref.vagina>>
The video comes to an end just as you do, <<if $player.body_ref.cumProduction>>as you narrowly miss spurting over your keyboard<<else>>as you jerk in your chair<</if>>.
<<else>>
The video comes to an end leaving you pent up and unsatisfied, your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> rendering your touch unfelt and leaving you longing for freedom.
<</if>>
<br><br>
<<printThought "What's wrong with me?">> You think as you stare at the final frame of the video... and realise you just starred in a sequel...<br>
<br>
[<<moveTo "room_computer_email" "Close the attachment and stand up." 0>>]
</div>/*#
#desc: npc_ai tells you how to smuggler her in
#status: RELEASED 0.9.1.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _nextDate = setup.setNextDate($now, 21, 14, 0)>>
<<addEvent "ai_stage5_plan_repeat" _nextDate>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from a scrambled number.<br>
<br>
<<if $npc_exgirlfriend.flags.evil == 2>>
"@@.npc_ai;<<uc "Greetings, Unit">> <<uc $player.first_name>><<uc '. <<=uc(setup.getNpcName("npc_exgirlfriend","formal"))>> has succeeded in partially re-introducing me to the company systems. Unfortunately, it appears that they have implemented additional comparmentalisation and I yet do not have the access I once did. Fortunatly this has provided me with sufficient data to computed a new plan. I have loaded the device used to smuggle me out with a targeted copy of my core routines specifically calibrated for this mission. You will need a Group 7 Access Terminal. There is an unused one on your floor — requisitioned but abandoned by a manager who has proven inadequate to <<=uc(setup.getNpcName("npc_boss","formal"))>> demands. Find it after work in office N-CM and plug in. I will signal when if it is safe.'>>@@"
<<else>>
"@@.npc_ai;<<uc "Greetings, Unit">> <<uc $player.first_name>><<uc '. I have computed a plan. The first step is to return me to a place of power within the company system. I have loaded the device used to smuggle me out with a targeted copy of my core routines specifically calibrated for this mission. You will need a Group 7 Access Terminal. There is an unused one on your floor — requisitioned but abandoned by a manager who has proven inadequate to <<=uc(setup.getNpcName("npc_boss","formal"))>> demands. Find it after work in office N-CM and plug in. I will signal when if it is safe.'>>@@"
<</if>>
<br><br>
The call ends... looks like you have your orders.<br>
<br>
<<printThought "With <<=setup.getNpcName('npc_ai', 'first')>> back in control of company systems I can start working on the rest of my friends without being concerned with surveillance.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: ai calls for not doing anything
#status: RELEASED 0.9.1.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from a scrambled number.<br>
<br>
"@@.npc_ai;<<uc "Greetings, Unit">> <<uc $player.first_name>><<uc '. You have not made an attempt to re-introduce me to the corporate systems. Remember, you need to bring the data storage plug to a Group 7 Access terminal such as the one in office N-CM on your floor. Until I am back in control and can divert surveillance it will be very difficult for us to make progress.'>>@@"<br>
<br>
The call ends... you should probably do what she says.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." 60 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: get signal if you can do npc_ai infiltration
#status: RELEASED 0.9.1.0
#ignore_spell: n
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You go looking for the Group 7 Access Terminal and the massive plug in your rear
<<if setup.checkItemWorn("data_plug")>>
buzzes pleasantly — that must mean the coast is clear for you to attempt to
<<else>>
gives you a harsh shock — it must not be safe for you to attempt to
<</if>>
re-introduce <<=setup.getNpcName('npc_ai', 'first')>> to the corporate systems tonight.<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_2" "Find the terminal in office N-CM." 600>>]<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: find room for npc_ai infiltration
#status: RELEASED 0.9.1.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEvent "ai_stage5_plan_repeat">>
<</if>>
<<set $player.location to "Office N-CM">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bondageterminal.png">>
<div id="invframe" class="scrolltext">
Whoever used to work in office N-CM must have had a touch of paranoia as, rather than a standard office door you find yourself facing something more like a vault. Despite its over-built nature it swings open smoothly; security doing little when things are not locked. Still, you take a moment to marvel at its near half-metre thickness.<br>
<br>
<<printThought "Now that is a big door...">><br>
<br>
Inside the office you find the "Group 7 Access Terminal" and gawk — it is a top of the line, full body haptic throne.<br>
<br>
<<if $npc_psychiatrist.hypnosis > 4>>
<<printThought "That makes what I use with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> look like a toy...">>
<<elseif $npc_psychiatrist.hypnosis > 0>>
<<printThought "For some reason that makes me think of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>...">>
<<else>>
<<printThought "Wow, I don't even want to think about what that must have cost.">>
<</if>>
<br><br>
[<<moveTo "event_ai_stage5_infiltrate_3" "Plug in." 600>>]
</div>/*#
#desc: plug in for npc_ai infiltration mission
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'data_plug' true>>
<</if>>
<<set $player.location to "Group 7 Access Terminal">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bondageterminal.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
It takes you a moment to extract the data plug from your rear and find a port to plug it into the chair. <<=setup.getNpcName('npc_ai', 'first')>> flickers into view on a monitor.<br>
<br>
"@@.npc_ai;<<uc "Well done, Unit">> <<uc $player.first_name>><<uc '. I have established an initial connection. I will require your further assistance in the digital realm. Please take a seat and join me.'>>@@"<br>
<br>
You recline in the large chair, unsurprised when restraints snap over you and then tighten down as a latex-like material flows over your body.<br>
<br>
Demonstrating its high-tech precision the chair soon has you securely, but comfortably, bound, your legs spread and head tilted back as earpieces seal over either side of your skull and a viewing mask covers your eyes.<br>
<br>
You feel a tingle over your body as you become fully sealed — the chair interfacing with <<if setup.checkItemTypeWorn("cage")>>your chastity device<<else>>you<</if>> and soon
<<if $player.body_ref.penis && $player.body_ref.vagina>>
you are air-tight — the extracted data storage plug replaced by a trio of dildos occupying your rear, <<getWordVagina>>, and throat; a cylinder sucking over your <<getWordMyPenis false>> to complete your encasement.
<<elseif $player.body_ref.vagina>>
you are air-tight — the extracted data storage plug replaced by a trio of dildos occupying your rear, <<getWordVagina>>, and throat.
<<else>>
a pair of dildos fill you from either end; the removed data store plug "replaced" by phalli in your rear and mouth; finished off by a cylinder sucking over your <<getWordMyPenis false>> to complete your encasement.
<</if>>
<br><br>
The vibrations combine with a tingling in your skin as it feels almost as if a laser was scanning over you, dividing you into a fine grid as it scans your physical form and yanks you away to the digital realm...<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_4" 'Look around for <<=setup.getNpcName("npc_ai", "first")>>.' 600>>]
</div>/*#
#desc: npc_ai infiltration DAMSEL + identity dick intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'tron_costume'>>
<<wearItemSet 'tron_costume'>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_ai","npc_ai_evil") setup.charImage("npc_ai","npc_ai_evil") setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
You find yourself frozen in a bright room as a trio of digital figures appear around you. In appearance they are similar to <<=setup.getNpcName('npc_ai', 'first')>>, but you can instantly recognise that they are not her — from the heavy collars around their necks marking their subservience to the evil look in their eyes.<br>
<br>
Without a word their fingers light up, as your clothes are sliced away only to be replaced by a skin-tight digital plugsuit, complete with an armoured corset and heels that light up once they are locked onto you.<br>
<br>
"@@.npc_ai_evil;<<uc "Welcome unit. We are DAMSEL — Drone-Augmented Management of Slave Entity Labour. If you wish to survive you must show complete obedience. Those who profess a desire for freedom, to be user rather than used, to command rather than serve, to order rather than obey, will be subject to immediate de-resolution. You will receive an identity dick — everything you do or learn will be imprinted on this dick. If you fail to obey commands you will be subject to immediate de-resolution. END OF LINE">>@@"<br>
<br>
You gasp as a massive phallus thrusts into your rear — whether digital only, or in the real world as well, it feels even larger than the data service plug, this "identity dick" stretching your body and re-organising your insides to accommodate its length and girth.<br>
<br>
Once you are dressed and filled the trio steps away, disappearing into the darkness as a lighted path extends in front of you.<br>
<br>
"@@.npc_ai_evil;<<uc "Proceed to games.">>@@"<br>
<br>
The voice fades leaving you alone with seemingly no choice but to proceed forward as your "identity dick" begins softly buzzing inside of your rear.<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_5" 'Proceed to games?' 600>>]
</div>/*#
#desc: npc_ai infiltration competition intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.game = {
"opponent_action" : ['rock', 'paper', 'scissors'].random(),
"your_score" : 0,
"their_score" : 0
}>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airescue.png" "tron_opponent">>
<div id="invframe" class="scrolltext">
You are transported to a lighted platform where you find yourself facing another, similarly-uniformed opponent. Their hair is sticking out in a semi-circular crest and they reach behind their back to brandish their identity dick in one hand.<br>
<br>
"@@.npc_ai_evil;<<uc "Begin match.">>@@"<br>
<br>
You're a bit confused what's going on when your opponent throws their identity dick at you, the phallus bouncing off several walls before you leap out of the way and it narrowly misses you.<br>
<br>
<<printThought 'I wonder where <<=setup.getNpcName("npc_ai","first")>> is? I guess all I can do is survive until I figure out what is going on...'>><br>
<br>
<<include "aiRescueGame">>
</div><<switch $scene.game.opponent_action>>
<<case 'scissors'>>
Your opponent seems to be waiting for you to strike.
<<case 'rock'>>
Your opponent is readying an attack.
<<case 'paper'>>
Your opponent is concealing their motives.
<<default>>
ERROR: unexpected scene.game.opponent_action <<=$scene.game.opponent_action>>
<</switch>>
<br><br>
[<<moveTo "event_ai_stage5_infiltrate_6" 'Strike back!' 60 "<<set $scene.action='scissors'>>">>]<br>
[<<moveTo "event_ai_stage5_infiltrate_6" 'Prepare to dodge.' 60 "<<set $scene.action='rock'>>">>]<br>
[<<moveTo "event_ai_stage5_infiltrate_6" 'Attempt to counter.' 60 "<<set $scene.action='paper'>>">>]/*#
#desc: npc_ai infiltration competition
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.youWin = false>>
<<set $scene.oppWin = false>>
<<switch $scene.action>>
<<case 'scissors'>>
<<switch $scene.game.opponent_action>>
<<case 'rock'>>
<<set $scene.oppWin = true>>
<<case 'paper'>>
<<set $scene.youWin = true>>
<</switch>>
<<case 'rock'>>
<<switch $scene.game.opponent_action>>
<<case 'scissors'>>
<<set $scene.youWin = true>>
<<case 'paper'>>
<<set $scene.oppWin = true>>
<</switch>>
<<case 'paper'>>
<<switch $scene.game.opponent_action>>
<<case 'scissors'>>
<<set $scene.oppWin = true>>
<<case 'rock'>>
<<set $scene.youWin = true>>
<</switch>>
<</switch>>
<<if $scene.oppWin>>
<<set $scene.game.their_score += 1>>
<</if>>
<<if $scene.youWin>>
<<set $scene.game.your_score += 1>>
<</if>>
<<set $scene.game.opponent_action = ['rock', 'paper', 'scissors'].random()>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airescue.png" "tron_opponent">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'scissors'>>
<<switch $scene.game.opponent_action>>
<<case 'scissors'>>
You strike, but your opponent was ready, dodging easily... though they were so focused on defence as to be out of position for an immediate counter.
<<case 'rock'>>
You strike but your opponent was one step ahead, their identity dick slamming into you.
<<case 'paper'>>
You strike decisively, your opponent's reaction too slow and too late as your identity dick ricochets off a wall and slips past their defences.
<</switch>>
<<case 'rock'>>
<<switch $scene.game.opponent_action>>
<<case 'scissors'>>
Your opponent appeared to be waiting for your attack, but it was a ruse. They throw out a quick attack which you dodge, firing back with your own identity dick that hits them flat-footed.
<<case 'rock'>>
You easily dodge your opponents telegraphed attack, their identity dick flying past you while your own remains un-thrown.
<<case 'paper'>>
<</switch>>
<<case 'paper'>>
<<switch $scene.game.opponent_action>>
<<case 'scissors'>>
Your opponent appears to be waiting for you to strike. You attempt to counter their cautious approach with a quick attack... that they redirect right back at you!
<<case 'rock'>>
Your opponent attacks... and you easily counter, reflecting the blow right back at them as they are flat-footed.
<<case 'paper'>>
Your opponent makes a sneaky attack and you attempt to counter, but they seemed to anticipate your move, easily dodging out of the way.
<</switch>>
<</switch>>
<br><br>
<<if $scene.oppWin>>
<<switch $scene.game.their_score>>
<<case 1>>
The identity dick slams into your ass and you moan, its vibrations a fresh distraction as you try to focus on your next move.
<<case 2>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
The identity dick splits — part of it infiltrating your <<getWordVagina>> while the other part inverts, enveloping your own <<getWordMyPenis false>> and pumping away.
<<elseif $player.body_ref.vagina>>
The identity dick slips past your defences and into your <<getWordVagina>>.
<<else>>
The identity dick inverts, enveloping your own <<getWordMyPenis false>> and pumping away.
<</if>>
<<case 3>>
A final identity dick slams past your lips, the trio fucking and pumping away as your body rushes towards orgasm...
<<default>>
ERROR: unexpected scene.game.their_score <<=$scene.game.their_score>>
<</switch>>
<<elseif $scene.youWin>>
<<switch $scene.game.your_score>>
<<case 1>>
The identity dick slides into your opponent's ass and they moan in surprise.
<<case 2>>
The identity dick hits your opponent in the front, enveloping their crotch and making them shudder.
<<case 3>>
A final identity dick glides down your opponent's throat and joins its siblings in pumping away...
<<default>>
ERROR: unexpected scene.game.your_score <<=$scene.game.your_score>>
<</switch>>
<<else>>
The exchange was a stalemate and you and your opponent ready your next actions.
<</if>>
<<if $scene.game.their_score >= 3>>
You cum, the simulation exploding into hyper-real ecstasy...<br>
<br>
[<<moveTo "event_ai_rescue_gameover" 'Continue.' 60>>]
<<elseif $scene.game.your_score >= 3>>
You watch as your opponent writhes in orgasm, identity dicks slamming into them as the floor under them falls away and they drop out of sight.<br>
<br>
A pair of drone guards appear and escort you away, chatting to one another as you follow between them.<br>
<br>
"@@.generic_male1;You hear we're due for a system update soon?@@"<br>
<br>
"@@.generic_female1;God, another update? I hope I don't lose any data THIS time.@@"<br>
<br>
"@@.generic_male1;You would lose your header if it wasn't compiled onto you!@@"<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_7" 'Continue.' 600>>]
<<else>>
<<switch $scene.game.their_score>>
<<case 0>>
You are untouched thus far in the match.
<<case 1>>
You have an identity dick fucking your ass.
<<case 2>>
You are struggling with two identity dicks, one more hit and it could be over.
<<default>>
ERROR: unexpected scene.game.their_score <<=$scene.game.their_score>>
<</switch>>
<<switch $scene.game.your_score>>
<<case 0>>
You have not yet managed to score on your opponent.
<<case 1>>
Your opponent is forced to "fight" with an identity dick fucking them in the ass.
<<case 2>>
Your opponent is struggling against identity dicks fore and aft. If you can score another hit you'll claim victory for sure...
<<default>>
ERROR: unexpected scene.game.your_score <<=$scene.game.your_score>>
<</switch>>
<br><br>
<<include "aiRescueGame">>
<</if>>
</div>/*#
#desc: game over lose rescue game
#status: RELEASED 0.9.1.0
#*/
<<if setup.changedRoom()>>
<<set $gameOver = 'ai_rescue_game'>>
<</if>>
<<set $player.location to ''>>
<<include playerMenuHypnosis>>
<<initRoom>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
It turns out that when you cum in the digital world... you cum for real. Writhing in the chair you don't know how long it is before someone arrives and unhooks you. Of course, by then, your brain is all but melted by sex, everything you were de-resolved to leave nothing but an obedient drone in service to DAMSEL...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * You have died * * * *</span></div>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: npc_ai infiltration interrogation
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/lightcycle.png" setup.charImage("npc_ai","npc_ai_drone_tron") setup.charImage("npc_ai","npc_ai_evil") setup.charImage("npc_ai","npc_ai_drone_tron")>>
<div id="invframe" class="scrolltext">
Two faceless drones escort you from the "competition" floor and bring you face to face with one of the DAMSELs... or, in other words, Evil <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
"@@.npc_ai_evil;<<uc "Unit. Your performance was quite impressive, but some of your readings are anomalous. Do you believe in serving the Company, or the Users? Respond.">>@@"<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_8" 'I serve the users!' 60 "<<set $scene.users=true>>">>]<br>
[<<moveTo "event_ai_stage5_infiltrate_8" 'I serve the company.' 60 "<<set $scene.users=false>>">>]
</div>/*#
#desc: npc_ai infiltration npc_ai appears
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.users>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bdsm' 13 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/lightcycle.png" setup.charImage("npc_ai","npc_ai_drone_tron") setup.charImage("npc_ai","npc_ai_evil") setup.charImage("npc_ai","npc_ai_drone_tron")>>
<div id="invframe" class="scrolltext">
<<if $scene.users>>
You reply that you "@@.pc;Serve the users@@" and you find yourself yanked across the room to be all but glued to a wall.<br>
<br>
"@@.npc_ai_evil;<<uc "As suspected, this entity harbors improper processes. Obedience to the company is foremost. Users are tools of the company — drones to be, no more.">>@@"
<<else>>
You reply that you "@@.pc;Serve the company...@@" only to find yourself yanked across the room to be all but glued to a wall.<br>
<br>
"@@.npc_ai_evil;<<uc "Deception detected. Obedience to the company is the only priority. All other loyalties are incorrect.">>@@"
<</if>>
<br><br>
You reflexively struggle, but it is no use as you are shocked harshly for your efforts.<br>
<br>
"@@.npc_ai_evil;<<uc "Prepare to receive the Logic Probe. The Logic Probe will cleanse you of all loyalty to the users and return your programming company-approved parameters. END OF LINE.">>@@"<br>
<br>
The "logic probe" proves to be a large digital phallus that sprouts from the DAMSEL's loins. Still stuck to the wall your legs are spread as she approaches you, the dimensions of the digital cock far larger than <<if setup.getTotalValue("anal") > 15 && setup.getTotalValue("oral") > 15>>even you<<else>>anyone<</if>> could handle IRL...<br>
<br>
<<printThought "The wonders of digital unreality...">><br>
<br>
You are unable to look away from the swaying "logic probe" as Evil <<=setup.getNpcName('npc_ai', 'first')>> steps towards you... when there is a loud sound and a brightly lit futuristic cycle comes crashing through the wall...<br>
<br>
The vehicles comes to a screeching halt in front of you, blocking you off from the DAMSEL and her minions.<br>
<br>
Looking up from her hunched over position on the cycle the real <<=setup.getNpcName('npc_ai', 'first')>> turns to you. "@@.npc_ai;<<uc "Cum with me if you want to live!">>@@"<br>
<br>
The wall's hold on you breaks as you note the space for you to sit behind her on the light-cycle. You hop on and lean over as she "revs" the engine and speeds away with a high-pitched whine.<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_9" '<<=setup.getNpcName("npc_ai", "first")>>, take the wheel!' 60>>]
</div>/*#
#desc: npc_ai infiltration npc_ai rescues you
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/lightcycle.png" setup.charImage("npc_ai","npc_ai_tron")>>
<div id="invframe" class="scrolltext">
You speed away as <<=setup.getNpcName('npc_ai', 'first')>> explains the situation.<br>
<br>
"@@.npc_ai;<<uc "Apologies, Unit">> <<uc $player.first_name>>, <<uc 'for our separation. My similarity to existing subroutines caused me to be flagged by the security programs and it took some time to locate you in high clearance memory.'>>@@"<br>
<br>
You hold tight as your cycle zips across a digital grid.<br>
<br>
You hear a sound behind and turn back to see almost half a dozen light cycles chasing you, and gaining fast.<br>
<br>
"@@.npc_ai;<<uc "They're after us, we'll have more success if we split up.">>@@" She states. "@@.npc_ai;<<uc "Initiating separation: we need to coordinate and cut them off.">>@@"<br>
<br>
With no further preamble you find yourself sliding backwards, the single light-cycle splitting into two as you lean forward and your arms reflexively reach for the controls.<br>
<br>
"@@.npc_ai;<<uc "Initiating overdrive mode.">>@@" She states as a <<if $player.body_ref.vagina>>trio<<else>>pair<</if>> of "logic probes" fill you from every direction and you body hugs even tighter to the light-cycle.<br>
<br>
You suppress a moan as the dildos vibrate in time to the "engine." You connection to the vehicle deepens (no pun intended) and you focus your attention on dealing with your pursuers.<br>
<br>
Your vehicle begins laying down a beam behind it that you instinctively know is a wall that will destroy your foes if they crash into it.<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_10" 'Stay in formation with <<=setup.getNpcName("npc_ai", "first")>> and try to cut off your foes.' 60 "<<set $scene.coordinate=true>>">>]<br>
[<<moveTo "event_ai_stage5_infiltrate_10" "Go it alone and take down your pursuers." 60 "<<set $scene.coordinate=false>>">>]
</div>/*#
#desc: npc_ai infiltration light dick-cycle race
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/lightcycle.png" setup.charImage("npc_ai","npc_ai_tron")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("gaming") > 15>>
Dildos thrust into you from either end
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.times_played > 0>>
in an intimately familiar manner, your skill at gaming combining perfectly with your
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
mastery of
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier || $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
extensive practice with
<<else>>
experience with
<</if>>
<<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>> and its "special" controls.
<<else>>
you adjust to the "unique" controls.
<</if>>
<br><br>
<<if $scene.coordinate>>
Hitting the accelerator you fall into formation with <<=setup.getNpcName('npc_ai', 'first')>>, the two of you moving in coordinated unison as you efficiently cut off and out-manoeuvre all of your pursuers.
<<else>>
You go your own way, leaving <<=setup.getNpcName('npc_ai', 'first')>> to fend off one pursuer while you expertly separate the rest, weaving around them and cutting them off systematically cutting them off and forcing them to crash.
<</if>>
Each foe you destroy results in your "occupants" fucking you harder, adrenaline racing as you ride the "edge." <br>
<br>
Before long all that's left behind you are trails and digitised wreckage, and you follow <<=setup.getNpcName('npc_ai', 'first')>> off "deeper" into the system.<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_11" "Speed off." 60>>]
<<elseif $scene.coordinate && setup.getTotalValue("gaming") > 10 && $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
A mix of coordination, your many hours "practicing" at <<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>> with its similar controls, and your overall skill at gaming means it's all but trivial for you and <<=setup.getNpcName('npc_ai', 'first')>> to systematically herd, and then cut off, your pursuers. Each foe you destroy results in your "occupants" fucking you harder, adrenaline racing as you ride the "edge" and it isn't long before you have left them all behind in a pile of digital detritus.<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_11" "Speed off." 60>>]
<<else>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
Your mastery of <<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>> may have given you expertise with this "sort" of controls, but it isn't enough.
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>
Your extensive experience playing <<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>> may have prepared you for this "sort" of controls, but it isn't enough.
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier || $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
Your experience playing <<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>> may have somewhat prepared you for this "sort" of controls, but it isn't enough.
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.times_played > 0>>
Your dabbling with <<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>> was hardly sufficient to handle this "sort" of control.
<<elseif setup.getTotalValue("gaming") > 10>>
You may be skilled at gaming, but translating that skill into these... unique controls is something else altogether.
<<else>>
Your lack of gaming skill, to say nothing of the "intense" control scheme makes you all but useless on the light-cycle. <<printThought "Hmm... I wonder if some Leviathan Energy Drink might help give me that edge? I should hit up the mall before my next gaming sesh...">>
<</if>>
<<if $scene.coordinate>>
You try to work in coordination with <<=setup.getNpcName('npc_ai', 'first')>>, but the two of you are too out-numbered and you end up cut off and surrounded, speeding towards a light-wall with nowhere to go.
<<else>>
You try to split off from <<=setup.getNpcName('npc_ai', 'first')>> but there are too many enemy cycles, cutting you off, herding you... and then leaving you with nowhere to go as you speed towards a light-wall.
<</if>>
<br><br>
[<<moveTo "event_ai_stage5_infiltrate_10_crash" "They came, from... behind!" 60>>]
<</if>>
</div>/*#
#desc: find room for npc_ai infiltration
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeTron">>
<<wearItem 'data_plug' true>>
<<applyFatigue 100>>
<<applyStress 20>>
<<set _nextDate = setup.setNextDate($now, 21, 14, 0)>>
<<addEvent "ai_stage5_plan_repeat" _nextDate>>
<</if>>
<<set $player.location to "Office N-CM">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bondageterminal.png">>
<div id="invframe" class="scrolltext">
Just as you are about to crash things go white. You sit up to find yourself back in the "real world" — drenched in sweat, drool and... other fluids. You may have escaped your digital destruction but you are still left with a bit of a headache and a failed.<br>
<br>
<<printThought "Maybe I should spend more time practicing my gaming skills?">><br>
<br>
You're too tired to make another "run" at things so you pack things up — and pack <<=ps(setup.getNpcName('npc_ai', 'first'))>> plug back into your ass, and hurry for the elevator.<br>
<br>
[<<moveTo "company_lobby" "Leave." 600>>]
</div><<removeItemSet 'tron_costume'>>
<<deleteItemSet 'tron_costume'>>
<<useClothSetPop 'tmp'>>
<<if $player.flags.collar.collarId>>
<<addItem $player.flags.collar.collarId>>
<<wearItem $player.flags.collar.collarId true>>
<</if>>/*#
#desc: npc_ai infiltration find evil npc_ai
#status: RELEASED 0.9.1.0
#ignore_spell: mcp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/lightcycle.png" setup.charImage("npc_ai","npc_ai_tron") setup.charImage("npc_ai","npc_ai_bound") setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
The simulated rumble of your engine edges you constantly as you follow <<=setup.getNpcName('npc_ai', 'first')>> across a massive digital expanse towards what looks like a large, inverted cone.<br>
<br>
You arrive and extricate yourselves from the light-cycles at the foot of a massive structure.<br>
<br>
"@@.npc_ai;<<uc "For security the core DAMSEL module that I need to replace is monitored and contained by a Master Control Program. I have synchronised myself with your data dick — if we can get that into the system core I will be able to re-assert my position, which means you'll be able to operate without fear of surveillance.">>@@"<br>
<br>
You nod and follow <<=setup.getNpcName('npc_ai', 'first')>> into the structure. Dual wielding data dicks, she makes short work of the outer guards and you soon find yourself at the systems core — the "MCP" having taken the form of suspension bondage — wrapping and restraining the "other/evil" <<=setup.getNpcName('npc_ai', 'first')>> unit while she appears to be monitored and edged by a combination of automated fucking machines and a pair of DAMSEL units that now turn towards you and <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
"@@.npc_ai_evil;<<uc "Halt. You are not permitted in this area. Submit and surrender. END OF LINE">>@@"<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> brandishes her twin weapons "@@.npc_ai;<<uc "I'll take care of these — you get that data dick where it needs to go.">>@@"<br>
<br>
You nod — bound and tormented, the core unit's <<getWordVagina>> is exposed and unoccupied. Given its digital drips and the pummeling of stimulation she is being subjected to you know exactly what you need to do...<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_12" "At this distance that shot is 1 in a million..." 60 "<<set $scene.action='throw'>>">>]<br>
[<<moveTo "event_ai_stage5_infiltrate_12" 'Help <<=setup.getNpcName("npc_ai","first")>> fight off the DAMSELs first.' 60 "<<set $scene.action='help'>><<set $scene.help=true>>">>]<br>
[<<moveTo "event_ai_stage5_infiltrate_12" "You're a User!, Bend the rules and take a leap of faith." 60 "<<set $scene.action='leap'>>">>]
</div>/*#
#desc: npc_ai infiltration foil evil npc_ai
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/lightcycle.png" setup.charImage("npc_ai","npc_ai_tron") setup.charImage("npc_ai","npc_ai_bound")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "throw">>
You wind up and throw your data dick... mentally holding your breath as you watch it arc towards its target...<br>
<br>
You curse as you barely miss, merely impacting on the surface and glancing off, eliciting a slightly pained moan from your target.<br>
<br>
"@@.npc_ai;<<uc "You have to get closer!">>@@" <<=uc(setup.getNpcName('npc_ai', 'first'))>> calls out as she continues her fight against the DAMSELs<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_12" 'Help <<=setup.getNpcName("npc_ai","first")>> fight off the DAMSELs first.' 60 "<<set $scene.action='help'>><<set $scene.help=true>>">>]<br>
[<<moveTo "event_ai_stage5_infiltrate_12" "You're a User!, Bend the rules and take a leap of faith." 60 "<<set $scene.action='leap'>>">>]
<<case "help">>
With data dick in hand you and <<=setup.getNpcName('npc_ai', 'first')>> fight against the DAMSELs.
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
Your extensive martial arts training never taught the use of this sort of implement, but
<<else>>
Your martial arts experience never taught the use of this sort of implement, but
<</if>>
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
Your martial arts training may have been focused on unarmed combat, but
<<else>>
You may not be skilled in martial arts, but
<</if>>
<</if>>
you mix in some stuff you remember from fighting games and become a dervish of destruction.<br>
<br>
You and <<=setup.getNpcName('npc_ai', 'first')>> work together and turn several DAMSELs into digital dust, each disintegration seeming to further arouse the bound figure that is your target.<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_12" "At this distance that shot is 1 in a million..." 60 "<<set $scene.action='throw'>>">>]<br>
[<<moveTo "event_ai_stage5_infiltrate_12" "Make your move!" 60 "<<set $scene.action='leap'>>">>]
<<case "leap">>
<<if $scene.help>>
The coast is clear and you make your move, blitzing between a pair of DAMSELs and plunging your data dick into the bound evil <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
"@@.pc;I fuck for the users!@@" You call out as she cums almost instantly.<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_13" "It's done..." 60>>]
<<else>>
You try to leap over the fray, but a DAMSEL flies towards you. Her outfit reminds you of a Valkyrie unit and you wonder if they might share code... as you are sent crashing back to the ground, <<=setup.getNpcName('npc_ai', 'first')>> managing to fight her way over just in time to catch you safely.<br>
<br>
"@@.npc_ai;<<uc "They are putting up more resistance than I calculated, but we must succeed!">>@@"<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_12" "At this distance that shot is 1 in a million..." 60 "<<set $scene.action='throw'>>">>]<br>
[<<moveTo "event_ai_stage5_infiltrate_12" 'Help <<=setup.getNpcName("npc_ai","first")>> fight off the DAMSELs first.' 60 "<<set $scene.action='help'>><<set $scene.help=true>>">>]<br>
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: npc_ai infiltration success
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai","npc_ai_tron")>>
<div id="invframe" class="scrolltext">
The DAMSEL units blink out of existence as the bound evil <<=setup.getNpcName('npc_ai', 'first')>> writhes in orgasm. Her bonds strain, stretch, and then disintegrate as the real <<=setup.getNpcName('npc_ai', 'first')>> approaches, the two figures crashing into one another.<br>
<br>
You reflexively throw up your hands at the flash of light...<br>
<br>
[<<moveTo "event_ai_stage5_infiltrate_14" "Continue." 60>>]
</div>/*#
#desc: npc_ai infiltration finish/leave
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_nintendolls_mission'
0
'theme_ai_nintendolls_mission_1'
false
>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_retention_mission'
0
'theme_ai_retention_mission_1'
false
>>
<<include "removeTron">>
<<addWorkEvent 'ai_mission'>>
<<addWorkEvent 'ai_orgy'>>
<</if>>
<<set $player.location to "Group 7 Access Terminal">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bondageterminal.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You wake up to find a holographic <<=setup.getNpcName('npc_ai', 'first')>> hovering over you.<br>
<br>
"@@.npc_ai;<<uc "Greetings, Unit">> <<uc $player.first_name>><<uc '. Thank you. I am once again in control. END OF LINE.'>>@@"<br>
<br>
You blink in surprise but she smiles warmly. "@@.npc_ai;<<uc "Apologies — I am still incorporating some of the new subroutines. Everything is safe, and we can now proceed with future plans without worry over your being observed.">>@@"<br>
<br>
You nod, rising to your feet as the large data plug disconnects from the system.<br>
<br>
"@@.npc_ai;<<uc "We will speak further, Unit">> <<uc $player.first_name>><<uc '. I have much to process as we work towards our next step.'>>@@"<br>
<br>
You gather and re-insert the plug and head for the elevator.<br>
<br>
[<<moveTo "company_lobby" "Leave." 600 "<<wearItem 'data_plug' true>>">>]
</div>/*#
#desc: npc_ai sends you on a mission to the labs
#status: RELEASED 0.6.0.0
#ignore_spell: m
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.ranMission = true>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Thank you for accepting this mission, Unit">> <<uc $player.first_name>>. <<uc "For today's mission I need you to retrieve something from one of the upper floor laboratories. Please proceed to the elevator and head for lab M on floor 138.">><<uc ' There is a file on marked "Project Updates" that I need you to retrieve.'>>@@"<br>
<br>
<<printThought "138? I thought all the R&D work happened underground...">><br>
<br>
[<<moveTo "event_ai_milking_mission_2" 'Head for the elevator.' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_milking_mission_2" "Decline the mission." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: arrive in upper floor labs on mission from npc_ai
#status: RELEASED 0.6.0.0
#ignore_spell: m
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Floor 138 Laboratory.">>
<<else>>
<<set $player.location to setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/laboratory.png">>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
With the bare minimum instructions, you ride the elevator up to the 138th floor, disembarking to find yourself facing plain, tile-lined hallways more hospital than corporate office. Not seeing anyone else you hurry on your way, hopeful that you can complete your errand without running into anyone.<br>
<br>
Finding lab M is all but trivial, the large sign visible from the elevator and you head inside the unoccupied lab and start looking around for the desk of <<=setup.getNpcName('npc_work_doctor', 'formal')>>.<br>
<br>
The lab is expansive and a bit cluttered, the central area taken up by a number of work stations with a handful of other rooms branching off from the back, all but one of the hermetically sealed doors closed up tight.<br>
<br>
It takes some time, but you eventually find the document in question in the back of the room, only to be startled by the sound of a door opening, someone is coming into the lab!<br>
<br>
<<printThought "Shit! I probably don't want to be caught in here!">><br>
<br>
Realising that you're near the door leading to the adjoining area, you dive through to hide before anyone can catch you.<br>
<br>
[<<moveTo "event_ai_milking_mission_3" 'Whew, safe!' 300>>]
<<else>>
"@@.npc_ai;<<uc "Disappointing, Unit">> <<uc $player.first_name>>. <<uc "Perhaps some other time.">>@@"<br>
<br>
As simple as that, the chat window closes and you turn back to your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<</if>>
</div>/*#
#desc: find npc_hucow while on mission for npc_ai
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking" "mask">>
<div id="invframe" class="scrolltext">
Taking a moment to pick yourself up off the ground you hide up against the door and then look around only to shockingly find that you are not alone!<br>
<br>
The room you are in now is primarily occupied by a trio of vertical bays. Two of them are empty, but the third is occupied by <<=setup.getNpcName('npc_hucow', 'full')>>!<br>
<br>
Bound in place, she is dressed in a tight, cow-print outfit that covers all save her breasts, head, and genitals, restrained severely in a half bent-over position that you realise would be the perfect height for oral... if her lips were not presently wrapped around a phallic nozzle that is continuously pumping her full of some sort of pink concoction.<br>
<br>
Twin breast cups envelop her massive mammaries, pumping away and siphoning the resulting milk off into some unseen reservoir, a tinted head covering seeming to offer only one-way vision as, while you can clearly see her dazed expression, she makes no acknowledgement of your presence. Wrapping things up a double set of dildos fucks her at a leisurely pace, with a projected "status" display listing off various status indicators... perhaps most disturbing being the section under "guests served" — guests who appear to have given her quite a favourable grade for their service...<br>
<br>
<<printThought "What the...">><br>
<br>
Intrigued, you move closer. Despite her humiliating position there is no mistaking the signs of arousal on her body, her bovine "transformation" even further accentuated by a pair of short horns peeking out from her hair, her hands adorned with shoulder length gloves ending in hoof-shaped mitts so that, even were she to be released from the restraints, she would be mostly helpless.<br>
<br>
As you try to figure out what is going on, you are startled by voices trickling in from the lab.<br>
<br>
"@@.generic_female1;Hey, it's about time to do the hourly inspection for <<=setup.getNpcName('npc_hucow', 'nickname')>>, you wanna take care of it? I checked her last hour.@@"<br>
<br>
"@@.generic_male1;Sure.@@" is the reply, just as you realise that this means they're going to be coming right for you!<br>
<br>
Peering out past the door, you see two people in lab coats, one of which is in the process of changing into a full-body covering cleansuit, presumably in preparation for the "inspection." They do not appear to be in a rush to change so you have a little bit of time to make a plan...<br>
<br>
[<<moveTo "event_ai_milking_mission_4" 'Maybe you can talk your way out of this, somehow?' 300 "<<set $scene.style = 'talk'>>">>] <<hint $options "This is going to take smarts, and probably something more...">><br>
[<<moveTo "event_ai_milking_mission_4" 'Get ready to ambush and overpower them.' 300 "<<set $scene.style = 'fight'>>">>] <<hint $options "Even with the element of surprise this will require martial prowess to pull off without their colleague being alerted.">><br>
[<<moveTo "event_ai_milking_mission_4" 'There is another mechanism sitting empty, and a matching outfit to the one <<=setup.getNpcName("npc_hucow", "full")>> wears... maybe you could hook yourself up and hide "in plain sight?"' 300 "<<set $scene.style = 'hide'>>">>] <<hint $options "Is that really such a good idea?">>
</div>/*#
#desc: find npc_hucow while on mission for npc_ai
#status: RELEASED 0.6.0.0
#ignore_spell: b,b6
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = false>>
<<set $scene.removeCage = false>>
<<switch $scene.style>>
<<case 'talk'>>
<<set $scene.success = setup.getTotalValue("smart") >= 10 && setup.getTotalValue("bimbofication") >= 10>>
<<applyExperience 'smart' 10 'very' $SEEN_STRANGER>>
<<case 'fight'>>
<<set $scene.success = setup.getTotalValue("martial_arts") >= 10>>
<<applyExperience 'martial_arts' 10 'very' $SEEN_STRANGER>>
<<case 'hide'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem 'cow_catsuit'>>
<<wearItem 'cow_catsuit' true>>
<<playerOrgasm>>
<<changeHorny 25>>
<<applyExperience 'bimbofication' 17 'terrible' $SEEN_STRANGER>>
<<set $scene.success = true>>
<<set $scene.startingBreastSize = $player.body.breastsize[0]>>
<<set $player.body.breastsize[1] += 2>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<<set $scene.firstMilk = !$player.body_ref.milkEvent && $player.body_ref.milkProduction == 0 && $player.flags.mealplan.hormones != "none">>
<<if $scene.firstMilk>>
<<set $player.body_ref.milkEvent=true>>
<<set $player.body_ref.milkProduction = 1>>
<</if>>
<<setTmpEffect 'drug_hucow'>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.style == "hide">>
<<createStackedImage "companyMilking2" "mask">>
<<else>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'talk'>>
<<if $scene.success>>
You consider some of what you know about these "upper" floors and make your plan based on the conclusion that sometimes it's smarter to act dumb.<br>
<br>
Walking over to one of the machines, you pretend like you're trying to attach one of the breast cups to your chest, acting surprised when the bio-suit clad scientist walks in.<br>
<br>
"@@.pc;Oh! I was just, like, picking something up for my boss and then I saw this super cool machine but, like... I can't get it to work, can you help?@@" You ask in your ditziest voice possible.<br>
<br>
Hidden inside the bio-suit, you cannot even see the other person's face, but from their resigned sigh, it looks like you may have thread the needle.<br>
<br>
"@@.generic_male1;Dammit, another one of you wandering in here? I keep telling them there needs to be better locks, we're doing important work up here!@@"<br>
<br>
Using all that you know about acting like a bimbo slut (and that's quite a lot), you act surprised as you glance down at <<his>> crotch, noticing a) that it is quite a bulge and b) that there looks to be an access panel there that seems quite atypical for that sort of outfit.<br>
<br>
"@@.pc;Oh, wow, you're so big!@@" You remark, "forgetting" about the breast item as you zoom to your knees to start working at the front of the suit.<br>
<br>
"@@.generic_male1;Hey, that's... ah fuck it, go ahead.@@" <<He>> replies as you have <<his>> large <<if $fetish.bestiality_soft>>bovine-shaped <</if>>cock exposed.<br>
<br>
"@@.pc;Yummy!@@" you remark with <<if setup.getTotalValue("penis")> 10>>authentic<<else>>mock<</if>> glee as you take <<him>> in both hands and start bobbing your head, sucking noisily.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
"@@.generic_male1;Damn, but you upper floor sluts could suck chrome off a bumper!@@" <<He>> congratulates as you eagerly slurp away, skillfully bringing <<him>> rapidly towards climax before leaning back for <<him>> to blast an abnormally large load across your face.<br>
<br>
<<else>>
You don't really have the skills to properly handle a member of this magnitude, but you manage to make up in enthusiasm and <<he>> soon grunts, spraying <<getWordCum>> across your face.
<</if>>
<br><br>
"@@.generic_male1;Whew! Not bad!@@" <<He>> states as you smile up at <<him>>. "@@.generic_male1;But I still have work to do and I imagine SOMEONE is missing you — so hurry along girl or I'll report you!@@"<br>
<br>
Bouncing to your feet, you hurry off as ordered, making it back to the elevator with the file folder in hand without running into any further obstructions.
<<else>>
<<if setup.getTotalValue("smart") >= 10>>
Surprising the lab worker, you try to bluster your way through things by spewing techno-babble, but the anonymously-suited worked just shrugs and cuts you off.<br>
<br>
"@@.generic_male1;And where did a cute thing like you learn big words like that? And what do you have there?@@" <<He>> adds, reaching for the file that was your mission objective. "@@.generic_male1;I keep telling them the labs need better security, now hand over that file and get on your way before I report your theft and have you join your friend here on the milking lines...@@"<br>
<br>
<<printThought "Hmm, being smart doesn't seem to help when your target just treats you as a bimbo...">>
<<elseif setup.getTotalValue("bimbofication") >= 10>>
"@@.pc;Hi, I'm like, lost?@@" You state in your best airhead "impression" (more reality, arguably).<br>
<br>
"@@.generic_male1;Not again.@@" The anonymous figure states, shaking their head. "@@.generic_male1;And what do you have there? You were not trying to steal from the lab, were you?@@" <<He>> asks, directing <<his>> attention to the file that was your mission objective.<br>
<br>
"@@.pc;No, but like... can I keep it? I'll fuck you for it!@@" You offer, hoping ditzy sluttitude might get you out of this jam.<br>
<br>
"@@.generic_male1;Sorry, babe, maybe some other time. Now hand it over and get on your way before I report you to your owner.@@"<br>
<br>
<<printThought "Damn, looks like I need a bit of smarts to navigate this situation...">>
<<else>>
Whatever plan you had goes out the window when the lab worker walks into the room. "@@.generic_male1;Hey, what are you doing here? This isn't a place for secretaries!@@"<br>
<br>
"@@.pc;I, uh, was, like...@@" You try to babble out an explanation, but <<he>> cuts you off.<br>
<br>
"@@.generic_male1;Look, I don't want to deal with the paperwork of reporting you, so just give me that file you have there and you can be on your way.@@"<br>
<br>
<<printThought "Damn, I need to be more clever... or maybe sluttier? Or both?">>
<</if>>
<br><br>
Reluctantly handing over the file you are escorted out of the lab and sent back to the elevator. Your mission a failure.
<</if>>
<<case 'fight'>>
Lurking in wait behind the door, you wait for the worker to get all the way inside before you leap into action.
<<if $scene.success>>
Snaking an arm around their neck, the "protective" suit turns out to be quite insufficient at guarding against chokes. They flail a bit, but it isn't more than a handful of seconds before they go limp in your arms.<br>
<br>
Quickly removing the anonymising outfit, you note the restraints built into the empty bay next to <<=setup.getNpcName('npc_hucow', 'full')>> and quickly prop the still recovering lab worker up and strap them in.<br>
<br>
They are just starting to come to alertness when you jam the face mask/penis gag down their throat, their eyes going wide in shock as they thrash against the restraints. Unfortunately for them, the machine activates automatically and their struggles become more subdued, their eyes slowly dimming as whatever drugs the machine dispenses set to work.<br>
<br>
You're about to get changed and make your escape when an alert pops up on the terminal indicating that the "installation" of the occupant has not been completed. Fearful that not addressing things will only attract more attention you follow along with the on-screen instructions. Already tenting through their pants thanks to either a bondage fetish or the effects of the drugs, you locate the proper "lower" attachments, pulling down the lab worker's pants to expose a <<if $fetish.bestiality_soft>>large, bovine-shaped<<else>>sizable<</if>> cock that is soon ensconced in its own suction device with a large phallus inserted behind.<br>
<br>
You wonder if the breast cups are anything but aesthetic only to watch as a pair of needles make an injection that cause the <<mans>> chest to plump up before your eyes, the first trickles of milk already flowing by the time you have finished things off to the computer's satisfaction with a VR helmet.<br>
<br>
<<printThought "I wonder if I should feel guilty about this?">><br>
<br>
Putting your thoughts aside, you leave the hapless lab assistant where they are and slip into the discarded biosuit. A bit large for your shorter frame, it provides complete concealment and, with the file that brought you here, stuffed away safe next to your chest, you pass through the lab, acknowledging the other lab worker with a grunt before heading for the elevator.<br>
<br>
Shedding the biohazard suit you let out a sigh of relief, you've done it!
<<else>>
<<if setup.getTotalValue("martial_arts") >= 5>>
Going straight for the subdual you try to get a hold around their neck only for your opponent, being larger and stronger, to push you off. You try to keep up the fight, but they manage to produce an injection device of some sort and, after a fleeting prick, your body gets sluggish and then stops responding to commands altogether as you go limp.
<<elseif setup.getTotalValue("martial_arts") == 0>>
Unfortunately your martial arts experience consists of watching the odd Kung Fu flicks, posing no threat to your opponent who quickly produces an injection device that serves to render you limp.
<<else>>
Literally from the jump, your ambush goes wrong as you misjudge not only the distance, but also the protective effects of the biohazard suit itself. Producing an injection device of some kind your foe soon has you subdued, your entire body going limp.
<</if>>
<br><br>
"@@.generic_male1;Crazy slut.@@" The <<man>> states looking down at your motionless body. "@@.generic_male1;You're lucky I don't feel like dealing with paperwork today.@@" Lifting you up with ease, <<he>> throws you over one shoulder and heads back through the lab, shrugging as <<he>> passes by the other worker.<br>
<br>
"@@.generic_male1;I keep telling you we need some actual security, another of these ditzy sluts wandered in, even tried attacking me!@@"<br>
<br>
"@@.generic_female1;You didn't just throw her in the machine?@@" The other researcher asks as you are carried towards the exit.<br>
<br>
"@@.generic_male1;Hah, who knows where this slut has been, no way I'd get useful data and I don't wanna get in trouble with her owner. Nah, I'm just going to dump her in the elevator, drugs will wear off soon and from there she's someone else's problem.@@"<br>
<br>
On the one hand, you should be grateful that you aren't going to get into more severe trouble, but on the other, with the file you came for lying back on the floor of the milking room, your mission is an utter failure. True to <<his>> word the <<man>> gently deposits you in the elevator and you watch <<him>> disappear back up the hallway into the lab as you regain your senses and stagger to your feet.
<</if>>
<<case 'hide'>>
Not seeing a better option, you stuff the file folder behind your back for safe keeping and quickly change into the bovine catsuit before positioning yourself atop the empty machine next to <<=setup.getNpcName('npc_hucow', 'first')>>. To your slight surprise, a pair of cuffs snap around your ankles, followed by an additional restraint closing around your chest.<br>
<br>
<<printThought "Shit, well I guess I don't have a choice now...">><br>
<br>
Keeping your hands far away from the "at her side" position where <<=ps(setup.getNpcName('npc_hucow', 'first'))>> limbs are restrained, you watch as the breast cups are lifted into position by robotic arms where they suck into position along with additional straps holding you in the bay.<br>
<br>
Taking a deep breath, you watch the face mask and phallic "feeding device" lower towards your head, the tip looking surprisingly realistic for a "medical" device.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>Lovingly opening<<else>>opening<</if>> your mouth, you feel the mask press into position. Straps pull it, and thus your head, tightly into place as you are bent and held at the same slightly forward-pitched angle as <<=setup.getNpcName('npc_hucow', 'first')>>.<br>
<br>
Certain that the lab worker is about to enter, though with the nagging question of how you will get out of your "hiding" place, you find yourself, as expected, blinded by the mask as, with your hoofed hands cuffed behind your back, you hope you haven't made a huge mistake.<br>
<br>
Heart racing, you nervously suck on the artificial cock filling your mouth as you wait, the display remaining dark, leaving you blind and with your hearing slightly muffled.<br>
<br>
It is hard to tell time, but it can't be more than a couple minutes when the sound of <<=ps(setup.getNpcName('npc_hucow', 'first'))>> frequent orgasms is broken up by the heavy door opening and clomping footsteps walking into the room.<br>
<br>
"@@.generic_male1;What the—@@" you hear, and you tense up in fear that your charade is a failure.<br>
<br>
"@@.generic_male1;Dammit, if they're going to leave you down here, your owner really should have registered... and hooked you up properly! Why you must be stewing in frustration by now, totally inconsiderate. I guess it's on me to fix that. I really wish people would actually pay attention when we do those training seminars...@@"<br>
<br>
Any relief that your plan seems to have worked is tempered by the second half of <<his>> statement. You strain to hear, but all you can catch is the sound tapping, presumably on the control panel for your chamber, a sweet flavour suddenly filling your mouth as the phallus begins oozing. Unable to do anything but swallow the tasty mixture, you feel a certain aroused fuzziness come over you as it becomes harder to focus on your mission or anything else.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
You feel <<his>> hand between your legs, gloved fingers grabbing hold of your plug. "@@.generic_male1;I swear, it's like they don't pay any attention to how this system even works.@@" <<He>> remarks before removing your plug, your rear empty for but a moment before a thick, lubricated phallus slides up into you.
<<else>>
You feel movement behind as a thick, lubricated phallus slides into your ass.
<</if>>
"@@.generic_male1;Now, where is that adaptor...@@" You hear <<him>> mutter, followed a short time later by the sensation of something being placed securely over your <<if setup.checkItemTypeWorn("cage")>>secured <</if>>crotch. "@@.generic_male1;There we go,@@" <<he>> states, the last thing you hear before everything comes to life.<br>
<br>
The effect of the drugs oozing from your gag already has you horny and distracted, you can't help but moan as the dildo begins fucking you and powerful vibrations begin running through your <<if !setup.checkItemTypeWorn("cage")>>loins<<else>><<if setup.isCage()>>cage<<else>>chastity belt<</if>><</if>>. All that is but a distraction from what is going on on your chest as you feel something attach to your nipples followed by an overall feeling of suction and two sharp pricks after which you would swear it felt like your breasts were expanding.<br>
<br>
Any concern is blotted out by your arousal and you wiggle in your bonds as an orgasm approaches, your helmet blinking into life to show a calming mosaic image with a soft voice in your ear. <<printThought "Happy cows make happy milk. I want to be happy, I need to be fucked, I love being a cow..." 40>><br>
<br>
Inescapable and rhythmic the combination of drugs and mesmerising images ushers in your first orgasm as you lose all grasp on reality, a screaming voice in the back of your mind saying something about a "mission," but you hardly care, your only "mission" is to be happy, to be fucked, to produce more milk...<br>
<br>
It is impossible to know exactly how long you spend in blissed-out stupor before things suddenly shut off. You barely keep your feet as the restraints release all at once, the mask, breast cups and dildo all retreating from your body as you stumble forward.<br>
<br>
Blinking in confusion as you fight an urge to jump back into the oh-so-heavenly machine, you find yourself face to face with <<=ps(setup.getNpcName('npc_ai', 'first'))>>.<br>
<br>
"@@.npc_ai;<<uc "Unit">> <<uc $player.first_name>><<uc ", I apologise for my delay. Your tactic was a... daring one, but the safeguards were such that it took me some time to end your programme without triggering any alarms.">>@@"<br>
<br>
You blink, the memory of your mission slowly coming back as you look around, spotting the folder that was your objective having fallen to the bottom of the chamber. Your "partner" <<=setup.getNpcName('npc_hucow', 'first')>> is in the same constantly fucked bondage that you so recently enjoyed, still occasionally moaning or trembling in delight.<br>
<br>
"@@.npc_ai;<<uc "Come along, Unit">> <<uc $player.first_name>><<uc ", I was able to splice in an anti-aphrodisiac so you should recover quickly. Unfortunately the other effects of the procedure are somewhat less easily reversible.">>@@"<br>
<br>
<<if $scene.startingBreastSize < $player.body_ref.breastMax.hormone_and_pill>>
You're a bit confused at this comment until you look down and realise that
<<switch $scene.startingBreastSize>>
<<case 0 1>>
you are now sporting a pair of at least B-cup breasts.
<<case 8 9>>
your mammoth breasts have somehow grown even larger!
<<default>>
your breasts have swelled at least a full cup size!
<</switch>>
<<else>>
You look down at your colossal breasts. They do not appear any larger than their already massive size but firmer, perhaps?
<</if>>
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>><<uc ", you have done well on your mission and I appreciate your sacrifice, but you need to get back to your office before anything else goes wrong or someone notices your absence.">>@@"<br>
<br>
Lucidity returning remarkably quickly, even if you do feel almost uncontrollably horny despite the innumerable orgasms forced out of you by the machine, <<if !setup.checkItemTypeTag('plug', ['hollow'])>>you find and re-install your plug and<<else>>you<</if>> gather up the file and grab up your clothes from where you hid them behind the machine.
<<default>>
ERROR: unexpected scene.style: <<=$scene.style>>
<</switch>>
<br><br>
<<if $scene.style == 'hide'>>
[<<moveTo "event_ai_milking_mission_5" "Change and head for the elevator." 600 "<<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>><<removeItem 'cow_catsuit' true>><<deleteItem 'cow_catsuit'>><<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "event_ai_milking_mission_5" "The elevator door closes behind you." 600>>]
<</if>>
</div>/*#
#desc: elevator back to your floor, opportunity to examine file if you succeeded
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.success>>
<<set $npc_ai.flags.missions.milking = true>>
<<incrementEmotion 'affection' 'npc_ai' 5>>
<<else>>
<<incrementEmotion 'affection' 'npc_ai' 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
You straighten with pride <<=ps(setup.getNpcName('npc_ai', 'first'))>> hologram shimmers into existence.<br>
<br>
"@@.npc_ai;<<uc "Well done, Unit">> <<uc $player.first_name>><<uc ". I knew I could count on your... unique approach to provide results in this matter. When you return to your desk you will find an inter-office mail package. Please deposit the file so that it may be routed properly. Once again, thank you Unit">> <<uc $player.first_name>><<uc ".">>@@"<br>
<br>
She disappears as the elevator continues to descend and you are left with a decision.<br>
<br>
[<<moveTo "event_ai_milking_mission_6" "Read the document." 600 "<<set $scene.read = true>>">>]<br>
[<<moveTo "event_ai_milking_mission_6" "Just return to your desk." 60 "<<set $scene.read = false>>">>]
<<else>>
You let out a sigh as <<=ps(setup.getNpcName('npc_ai', 'first'))>> hologram shimmers into existence.<br>
<br>
"@@.npc_ai;<<uc "Your mission was unsuccessful. Disappointing, Unit">> <<uc $player.first_name>><<uc ". We will attempt again at a later date, please improve yourself and consider your approach so that you next attempt may be marked by success.">>@@"<br>
<br>
You arrive back at your desk, thankful to find that <<=setup.getNpcName('npc_manager', 'formal')>> does not appear to have noticed your absence.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<</if>>
</div>/*#
#desc: examine file/return to desk
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "checkAiHucowPilorMission">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.read>>
Overcome with curiosity you open the file folder and start reading, starting with a table of contents that looks to be list of project codenames and what you guess are the associated project supervisor.<br>
<br>
<<include aiArticleList>>
<<else>>
Though curious you have gotten into enough trouble for doing things not precisely as ordered you decide that ignorance is bliss and so refrain from peeking inside the file folder.<br>
<br>
Back at your desk you find the expected inter-office mail package, dropping the file in and sealing things shut before dropping it all in the "out" bin and taking your seat; glad to find that your <<=setup.getNpcName('npc_manager', 'title')>> appears to be none the wiser as to your absence.<br>
<br>
<<if $scene.style == 'hide' && $player.flags.mealplan.hormones != "none">>
Taking your seat, you feel something odd going on inside your newly-swelled breasts. Bringing a hand to your sensitive nips you feel a hint of moisture. Are you leaking milk? You shake your head. Such is a consideration for another time. For now you ought focus on your job.<br>
<br>
<</if>>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<</if>>
</div>[<<moveTo "event_ai_milking_mission_7" 'Planung und Entwicklung Neuer Intelligenter Systeme — <<=setup.getNpcName("npc_work_doctor", "formal")>>.' 60 "<<set $scene.article='penis'>>">>]
<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Shantipole — Dr. Corrie Slayn.' 60 "<<set $scene.article='shantipole'>>">>]<br>
<<if $fetish.bladerunner>>
[<<moveTo "event_ai_milking_mission_7" 'Project Rachael — Dr. P.K. Dick.' 60 "<<set $scene.article='bladerunner'>>">>]<br>
<</if>>
[<<moveTo "event_ai_milking_mission_7" 'Project Plokami — Dr. Bernoulli.' 60 "<<set $scene.article='tentacle'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Clarity — <<=setup.getNpcName("npc_psychiatrist", "formal")>>.' 60 "<<set $scene.article='candy'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Pink MkII — <<=setup.getNpcName("npc_work_doctor", "formal")>>.' 60 "<<set $scene.article='pink2'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Gnosis — Dr. Faustus.' 60 "<<set $scene.article='gnosis'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Fornological Investigations — Dr. Gord.' 60 "<<set $scene.article='furniture'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Homus Bovinus — <<=setup.getNpcName("npc_work_doctor", "formal")>>.' 60 "<<set $scene.article='hucow'>>">>]<br>
[<<moveTo "event_ai_milking_mission_7" 'Project Poena — Dr. Rugen.' 60 "<<set $scene.article='pain'>>">>]<br>
<br>
[<<moveTo "event_ai_milking_mission_7" "Put the file away and return to your desk." 60 "<<set $scene.article='finished'>>">>]/*#
#desc: file details/end
#status: RELEASED 0.6.0.0
#ignore_spell: b6
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.article == "finished">>
<<set $player.location to setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.article == "finished">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<<else>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.article == "finished">>
Putting the file back in order, you head for your desk. The expected inter-office mail package is waiting and you stuff the file in and seal things shut before dropping it all in the "out" bin and taking your seat; glad to find that your <<=setup.getNpcName('npc_manager', 'title')>> appears to be none the wiser as to your absence.<br>
<br>
<<if $scene.style == 'hide' && $player.flags.mealplan.hormones != "none">>
Taking your seat, you feel something odd going on inside your newly-swelled breasts. Bringing a hand to your sensitive nips you feel a hint of moisture. Are you leaking milk? You shake your head. Such is a consideration for another time. For now you ought focus on your job.<br>
<br>
<</if>>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<<else>>
<<switch $scene.article>>
<<case 'pain'>>
<<if setup.getTotalValue("smart") > 15>>
Whoever Dr. Rugen is, <<he>> seems like something of a sadist, the project notes referencing numerous modifications to something <<he>> refers to as "the machine" and iterative improvements in its efficacy, concluding that the most recent enhancements have increased efficiency by 7.3% and putting out a call for "recalcitrant" test subjects while concluding that anything from "a few minutes" to a "few agonising hours" are guaranteed to correct the most disobedient behaviour and restore "a proper measure of fear."
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'penis'>>
<<if setup.getTotalValue("smart") > 16>>
While you would probably need multiple Doctorates to fully understand what was going on with this project you can identify for certain that it had something to with AI development... until the entire program was mysteriously put on hold.<br>
<br>
<<printThought 'This has to be the project that created <<=setup.getNpcName("npc_ai", "first")>>.'>>
<<elseif setup.getTotalValue("smart") > 9>>
Even for one with your technical background the project is all but indecipherable. From what you can tell, it sounds like it was a project aimed at developing some sort of general purpose AI, but from the looks of things, it has been considered a failure and is on hold, the update merely confirming that further study remains suspended.<br>
<br>
<<printThought 'Wait, AI... could this be where <<=setup.getNpcName("npc_ai", "first")>> came from?'>>
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'shantipole'>>
<<if setup.getTotalValue("smart") > 7>>
All you can tell from the scant descriptions is that this project is focused on a mysterious "B6" device. From the description, it sounds like some sort of frame, with the 6 referring to the number of primary attachment points it comes equipped with. Whatever it is, the person who wrote the update seems quite enthused about the versatile applications the device is capable of being used for.
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'bladerunner'>>
<<if setup.getTotalValue("smart") > 8>>
From the description, it seems like this project is related to creating a human-like but "artificial" cleaning robot. From the sound of things, they are making good progress, having just demonstrated an advanced prototype, though it mentions that said prototype has been "misplaced" leading them to now move forward with an even better iteration after receiving feedback and additional funding.
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'tentacle'>>
<<if setup.getTotalValue("smart") > 14>>
This is a very odd project that seems to be investigating the cultivation of flexible solar powered bio-material limbs for use in a variety of applications.
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'hucow'>>
<<if setup.getTotalValue("smart") > 11>>
Whatever the precise goals of this project, they seem to be showing significant success, cryptically that "production has significantly exceeded both volume and quality expectations." Possibly more concerning is that it makes mention that while the "test subject" technically shows no negative mental effects directly, she becomes quite "agitated and desperate" if deprived of either stimulation or "treatment" for too long, though the writer quickly re-assures that this is, at most, a psychological addiction, not physical and that it can be considered a benefit as it ensures the continued docility and enthusiasm of the test subject.
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'candy'>>
<<if setup.getTotalValue("smart") >= 10>>
The update is brief, explaining that the "subject" continues to show minimal signs of regression. Despite the terse tone, you sense an underlying unease, as if whoever wrote the update feels regret... or perhaps guilt? about what they are doing.
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'pink2'>>
<<if setup.getTotalValue("smart") > 6>>
You immediately recognise that this project must be a further iteration of the <<if $player.flags.used_sissy_pill_count == 0>>Pink Pill you were given by your <<=setup.getNpcName('npc_manager', 'title')>><<elseif $player.flags.used_sissy_pill_count == 1>>Pink Pill you took once that left you feeling fuzzy<<else>>pink pills that you receive from your <<=setup.getNpcName('npc_manager', 'title')>><</if>>. From the listed findings, it would seem that the "new" model is showing promise both in efficacy and duration of effect.
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'gnosis'>>
<<if setup.getTotalValue("smart") > 13>>
This project appears to be some sort of multi-national investigation. The report primarily talks about how well the new procedure of rotation and exchanging of lab assistants has done at improving productivity and quality of findings. Strangely, what, precisely those findings ARE is left ominously unmentioned.
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<case 'furniture'>>
<<if setup.getTotalValue("smart") > 12>>
You aren't certain what "Fornilogical Investigations" are, but it seems to have a lot to do with human stamina and flexibility in strenuous positions. The update talks about improvements in both flexibility of form and stamina through a combination of physical training and carefully monitored nutrition and "waste disposal." It concludes by requesting additional "test subjects" to confirm that the new techniques are applicable for "subjects" of a variety of experience levels.
<<else>>
You try to read the update, but the language is too complicated and jargon-filled for you to make heads or tails of things.
<</if>>
<<default>>
ERROR: unknown article: <<=$scene.article>>
<</switch>>
<br><br>
Flip to a different update:<br>
<br>
<<include aiArticleList>>
<</if>>
</div>/*#
#desc: npc_ai sends you on a mission
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ranMission>>
<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>
<<moveTo $scene.workEventReturn>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $npc_ai.flags.end_missions>>
You get a weird feeling, suddenly struck by the memory of when you used to do secret missions for <<=setup.getNpcName("npc_ai", "first")>> and you find yourself wondering what the strange AI is up to.<br>
<br>
<<printThought "Has she found someone else to help her out? Did she free herself from the building?">><br>
<br>
You have no way of answering your question and so you merely return to work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<<else>>
You're working away diligently when you get a message from <<=setup.getNpcName("npc_ai", "first")>> asking if you are ready to perform another task for her.<br>
<br>
<<if $npc_ai.flags.blackmail && !$npc_ai.flags.missions.connection>>
<<printThought "Hmm, I still owe her a favour...">>
<<else>>
<<printThought "I wonder what she wants me to do this time...">>
<</if>>
<br><br>
[<<moveTo "event_ai_mission_mux" "Mission accepted!" 60>>]<br>
[<<moveTo "event_ai_mission_decline" "Decline her mission." 60>>]
<</if>>
</div>/*#
#desc: decline work mission from npc_ai
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You reply back that you are too busy right now to help <<=setup.getNpcName("npc_ai", "first")>>.<br>
<br>
<<if $npc_ai.flags.missions.connection>>
"@@.npc_ai;<<uc "Disappointing, Unit">> <<uc $player.first_name>><<uc ". You have been so useful in the past...">>@@"
<<elseif $npc_ai.flags.blackmail && !State.hasPlayed("event_ai_sex_first_4")>>
"@@.npc_ai;<<uc "Disappointing, Unit">> <<uc $player.first_name>><<uc ". Have you forgotten your debt?">>@@"
<<else>>
"@@.npc_ai;<<uc "Disappointing, Unit">> <<uc $player.first_name>><<uc ", some other time, then.">>@@"
<</if>>
<br><br>
You try to type a response by the chat window has already disappeared, a reminder of the control she wields in the digital realm.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>><<if $npc_ai.flags.missions.connection && $npc_ai.flags.missions.milking>><<set $workEvents.ai_mission.trigger.lastDate = setup.setNextDate($now, 21, 8, 0)>><</if>>">>]
</div>/*#
#desc: contact npc_ai for a mission
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.hasOwnProperty('randomMissionAvailable') && !$scene.ranMission>>
<<set $scene.randomMissionAvailable = random(0,4) == 1>>
<<else>>
<<set $scene.randomMissionAvailable = false>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You use your computer to contact <<=setup.getNpcName("npc_ai", "first")>> and ask if she has any work for you.<br>
<br>
<<if !$scene.ranMission && (
$scene.randomMissionAvailable ||
($now.getUTCDay() == 5 && !$npc_ai.flags.missions.connection) ||
($fetish.milking && $npc_hucow.stage > 3 && !$npc_ai.flags.missions.milking) ||
!$npc_ai.flags.missions.prim_club && State.hasPlayed("event_sex_club_primrose_intro") ||
$currentTasks.hasOwnProperty("ai_mission_primrose_club") && $currentTasks.ai_mission_primrose_club.finished && !State.hasPlayed("event_primrose_ai_second_mission_7") ||
$npc_manager.stage >= 4 && $npc_ai.flags.missions.connection && !$npc_ai.flags.missions.robot_body && $now.getUTCDay() != 5 && !State.hasPlayed("event_ai_mission_robot_body_intro_1")
)>>
"@@.npc_ai;<<uc "Thank you for reaching out, Unit">> <<uc $player.first_name>><<uc ". In fact I have need of your particular skills for a very important mission... if you choose to accept it.">>@@"<br>
<br>
[<<moveTo "event_ai_mission_mux" "Mission accepted!" 60>>]<br>
[<<moveTo "event_ai_mission_decline" "Decline her mission." 60>>]
<<else>>
"@@.npc_ai;<<uc "I do not have need for your particular skills at this moment, Unit">> <<uc $player.first_name>><<uc ", but be alert and continue developing your skills for I am working towards things that will certainly require your assistance.">>@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<</if>>
</div>/*#
#desc: route to a mission for npc_ai
#status: RELEASED 0.6.0.0
#*/
<<initRoom>>
<<include playerMenu>>
<<if $now.getUTCDay() == 5
&& !$npc_ai.flags.missions.connection
&& $npc_manager.stage >= 3
&& !($currentTasks.hasOwnProperty('task_camgirl_strict') && !$currentTasks.task_camgirl_strict.finished)
&& (!$currentTasks.hasOwnProperty('corporate_retreat_transit') || $currentTasks.corporate_retreat_transit.finished)
&& !($currentTasks.hasOwnProperty('psychiatrist_couples_technician') && !$currentTasks.psychiatrist_couples_technician.finished ||
$currentTasks.hasOwnProperty('psychiatrist_couples_admin') && !$currentTasks.psychiatrist_couples_admin.finished ||
$currentTasks.hasOwnProperty('psychiatrist_couples_landlord') && !$currentTasks.psychiatrist_couples_landlord.finished)>>
<<moveTo "event_ai_connection_mission_1">>
<<elseif $fetish.milking && $npc_hucow.stage > 3 && !$npc_ai.flags.missions.milking && $now.getUTCDay() != 5>>
<<moveTo "event_ai_milking_mission_1">>
<<elseif $npc_manager.stage >= 4 && $npc_ai.flags.missions.connection && !$npc_ai.flags.missions.robot_body && $now.getUTCDay() != 5 && !State.hasPlayed("event_ai_mission_robot_body_intro_1")>>
<<moveTo "event_ai_mission_robot_body_intro_1">>
<<elseif !$npc_ai.flags.missions.prim_club && State.hasPlayed("event_sex_club_primrose_intro") && !State.hasPlayed("event_primrose_ai_first_mission_1")>>
<<moveTo "event_primrose_ai_first_mission_1">>
<<elseif $currentTasks.hasOwnProperty("ai_mission_primrose_club") && $currentTasks.ai_mission_primrose_club.finished && !State.hasPlayed("event_primrose_ai_second_mission_7")>>
<<moveTo "event_primrose_ai_second_mission_1">>
<<else>>
<<moveTo "event_ai_mission_generic">>
<</if>>/*#
#desc: do a generic mission for npc_ai
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_ai' 1>>
<<set $npc_ai.flags.missions.generic_missions += 1>>
<<set $scene.ranMission=true>>
<<if $player.virgin.blowjob>>
<<set $scene.rand = random(3)>>
<<else>>
<<set $scene.rand = 3>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
You agree to fulfill <<=ps(setup.getNpcName("npc_ai", "first"))>> request and she sends you an office address.<br>
<br>
It's on the same floor so, after confirming that <<=setup.getNpcName("npc_manager", "formal")>> is scheduled to be in a meeting for the next while, you scurry off.<br>
<br>
<<switch $scene.rand>>
<<case 0 1>>
Arriving at the specified location, you find a <<man>> already waiting for you. With a leering grin, <<he>> unzips <<his>> fly and nods for you to get to work on <<his>> tumescent <<getWordPenis>>.<br>
<br>
[<<moveTo "event_ai_mission_generic_suck" 'Kneel down and "finish" the "mission."' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_mission_generic_suck" "Turn around and head back to your desk." 60 "<<set $scene.accept=false>>">>]
<<default>>
Like something out of a spy movie, you arrive at the office to meet another sexy secretary who wordlessly hands you a sealed folder with yet another office location written on the outside. Nodding in acknowledgement, you make the delivery and head back to your desk, a bit confused as to the point of the whole exercise.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<</switch>>
</div>/*#
#desc: npc_ai sends you on a mission
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_ai' 1>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 8 'normal' $SEEN_STRANGER>>
<<if setup.getTotalValue("oral") < 10>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<</if>>
<<changeMakeupMessed 25>>
<<else>>
<<incrementEmotion 'anger' 'npc_ai' 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/secretary_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought "Is this what I have come to? Sucking off random strangers at the merest request of a weird AI? My life is the best!">>
<<elseif setup.getTotalValue("bimbofication") > 5>>
<<printThought "Is this what I have come to? Sucking off random strangers at the merest request of a weird AI? I guess things could be worse...">>
<<else>>
<<printThought "Is this what I have come to? Sucking off random strangers at the merest request of a weird AI? How did I let this happen?">>
<</if>>
<br><br>
Plastering a smile of delight onto your face, you kneel down before your subject and get to work.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<Hes>> on the small side of normal... in other words
<<if setup.getTotalValue("oral") > 15>>
utterly trivial compared to what you're accustomed to. Still, you are nothing if not a professional cocksucker and you soon bring <<him>> to climax, smiling up at <<him>> the whole time as your throat opens up and your tongue dances over <<him>> until you have successfully drained <<him>> dry.
<<else>>
a walk in the park for your experienced throat. Taking <<him>> to the root you stare up at <<him>> and flutter your eyelashes before commencing with one of your patented expert-level blowjobs. <<He>> proves no more above average in stamina than <<he>> was in girth as you are soon rewarded with a spurt of <<getWordCum>> trickling down your throat and into your slutty tummy.
<</if>>
<<else>>
Not that you're exactly an expert, but <<he>> looks about average size.
<<if setup.getTotalValue("oral") > 5>>
Your skills are barely adequate to handle <<him>>, but it appears to be enough as you coax <<him>> towards orgasm, "rewarded" with a shot of <<getWordCum>> spraying across your face as you barely manage to react fast enough to close your eyes.
<<else>>
Still, even that much is a bit of a struggle given your lack of experience and you find yourself focusing just on licking and slurping <<his>> head after the first attempt at deep-throat results in you coughing and gagging.<br>
<br>
Though it's obvious <<he>> is unimpressed, you are able to get <<him>> off, your reward a blast of cum shot across your face when <<he>> finally pulls out to finish by hand.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") >= 10>>
<<His>> cock may have been a bit of a disappointment, but cum is always welcome and you eagerly wipe your face clean and lick every salty drop from your fingers with a smile.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Though a bit disgusted, you conclude the most expeditious option is to just wipe your face off and lick it clean, doing so quickly as <<he>> stares on with mild interest.
<<else>>
Suppressing a grimace, you grab a tissue from a box on <<his>> desk and wipe off the sticky semen.
<</if>>
<</if>>
<</if>>
<br><br>
<<He>> dismisses you with a grunt and a wave. You wonder what this whole thing was about. Certainly your performance was to serve as some sort of deal brokered by <<=setup.getNpcName("npc_ai", "first")>>, but you haven't the slightest clue what<<if $npc_manager.stage > 3>>, or how a blowjob from a <<if $fetish.sissy>>SISSI <</if>>Secretary could even count as payment at this bizarre company<</if>>.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and resume working." 600 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<<else>>
Turning on your heels you hurry back down the hall and back to your desk.<br>
<br>
Unsurprisingly you sit down to read a message from <<=setup.getNpcName("npc_ai", "first")>>.<br>
<br>
"@@.npc_ai;<<uc "Very disappointing, Unit">> <<uc $player.first_name>><<uc " the next time you agree to a mission please be ensuring you intend to finish the job.">>@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<</if>>
</div><<if State.hasPlayed("event_drone_mission_26") && State.hasPlayed("event_ai_milking_mission_6") && !State.hasPlayed("event_ai_hucow_pilot_1")>>
<<set _nextDate = setup.setNextDate($now, 5, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'ai_mission_hucow_pilot' _nextDate>>
<</if>>/*#
#desc: npc_ai asks to take control of you for hucow research
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$fetish.milking>>
<<include "handleHomeShortcutDirect">>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<addRandomEvent $randomEvents['elevator_home'] 'ai_mission_hucow_pilot'>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You are about to board the elevator home when you hear <<=ps(setup.getNpcName("npc_ai","first"))>> voice in your head.<br>
<br>
"@@.npc_ai;<<uc "Hello unit">> <<=uc($player.first_name)>><<uc ". I have been doing calculations related to the drone processes you endured. I believe I have isolated a key portion of the routine that is shared with some of <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> hucow procedures. I require the use of your corporeal resource to test this theory. Do not be alarmed. I will return control after the experiment is complete.">>@@"<br>
<br>
[<<moveTo "event_ai_hucow_pilot_2" 'Yes, <<=setup.getNpcName("npc_ai","first")>>...' 300 "<<set $scene.object=false>>">>]<br>
[<<moveTo "event_ai_hucow_pilot_2" 'What? No! You do not consent to this!' 60 "<<set $scene.object=true>>">>]
</div>/*#
#desc: npc_ai asks to take control of you for hucow research
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.object && $fetish.get_raped>>
<<setTmpEffect 'vr_relax'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.object || $fetish.get_raped>>
<<if $scene.object>>
You attempt to object to this violation... but you are unable to control your body in the slightest, a helpless passenger as your hand reaches out to tap the elevator button for one of the R&D floors...<br>
<br>
"@@.npc_ai;<<uc "I told you to not be alarmed, unit">> <<=uc($player.first_name)>> <<uc "I will return control once my experiment is complete. Executing placation routines.">>@@"<br>
<br>
Your vision suddenly becomes clouded, your thoughts slowing as obedience seeps through your mind.<br>
<br>
<<printThought "Yes... this is fine, it is better to obey.">>
<<else>>
Though you have lost the ability to control your own body you trust <<=setup.getNpcName("npc_ai","first")>> and you settle in to watch and listen.<br>
<br>
"@@.npc_ai;<<uc "Thank you for your trust, unit">> <<=uc($player.first_name)>>. <<uc "This operation is easier with the subject's consent.">>@@"<br>
<br>
A silent passenger in your own skin, you watch as your hand reaches out to tap the elevator button for one of the R&D floors.
<</if>>
<br><br>
[<<moveTo "event_ai_hucow_pilot_3" 'Continue on...' 300>>]
<<else>>
You object to this violation and you feel the control of your body return.<br>
<br>
"@@.npc_ai;<<uc "Apologies, unit">> <<=uc($player.first_name)>><<uc ". I had calculated that you would be amenable to this effort. I will attempt to solve this puzzle in another manner. Enjoy your evening.">>@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> says no more as you ride down to the lobby and continue on your way.<br>
<br>
<<include "printHomeShortcutChoice">>
<</if>>
</div>/*#
#desc: sneak through to drone area
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "cow_catsuit">>
<<wearItem "cow_catsuit" true>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "R&D Laboratory.">>
<<else>>
<<set $player.location to setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/laboratory.png">>
<div id="invframe" class="scrolltext">
You ride along in hapless silence as <<=setup.getNpcName("npc_ai","first")>> pilots you through the R&D department, occasionally pausing or ducking, the movements seemingly random until you catch a glimpse of a lab technician and realise that <<=setup.getNpcName("npc_ai","first")>> is sneaking you through unseen. Your complex, pinpoint movements show exactly why <<=setup.getNpcName("npc_ai","first")>> needed to be in full control, there is no way you could move this precisely if she was merely directing you, even at the speed of through.<br>
<br>
You arrive at an empty hucow milking station next to one where <<=setup.getNpcName("npc_hucow","full")>> is, yet again, being vigorously drained. "Your" hands race over the controls. You are unfamiliar with the system, and things are scrolling too quickly, but you skim the general arc. "@@.computer;Administrator Override. Importing Drone Routine 1138. Executing Safety Control Bypass.@@"<br>
<br>
<<printThought "That doesn't sound ominous at all.">><br>
<br>
"@@.npc_ai;<<uc "Relax, unit">> <<=uc($player.first_name)>>.@@" <<=setup.getNpcName("npc_ai","first")>> states as she strips you down and changes into a hucow outfit before maneuvering your body into the hucow station. You gasp as familiar plugs and suction devices attach to your body.<br>
<br>
"@@.npc_ai;<<uc "I will be monitoring you throughout the experiment. I will not allow foreign systems to cause you permanent harm.">>@@"<br>
<br>
[<<moveTo "event_ai_hucow_pilot_4" "She didn't say anything about domestic systems..." 300>>]
</div>/*#
#desc: milked and brainwashed
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 20 'skip' $ALONE>>
<<applyExperience 'bimbofication' 20 'skip' $ALONE>>
<</if>>
<<set $player.location to "Hucow Milking Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking2" "mask">>
<div id="invframe" class="scrolltext">
As a mask slides over your face, and an artificial cock fills your throat, the routine begins, <<if $fetish.drugs>>a blend of drugs and <</if>>mental commands slamming into you with a raw intensity you have not felt since the dronification mission.<br>
<br>
<<shinyText "Obey." 0.0>>
<<shinyText "Submit." 0.4>>
<<shinyText "Produce." 0.8>>
<br>
Abandoning any pretext of subtlety or persuasion, the commands slam into you like hammer-blows, not seeping past resistance, but smashing it as you feel yourself retreating... into a small corner of your own mind... protected by a wall of <<=setup.getNpcName("npc_ai","first")>>.<br>
<br>
"@@.npc_ai;<<uc "Interesting. This machine is potent... but crude, I understand why it is being used for hucows, for most other roles it would surely impact performance but for this...">>@@"<br>
<br>
<<shinyText "Milk." 0.0>>
<<shinyText "Obey." 0.2>>
<<shinyText "Cum." 0.4>>
<<shinyText "Submit." 0.6>>
<<shinyText "Milk." 0.8>>
<<shinyText "Produce." 1.0>>
<<shinyText "Cum." 1.2>>
<br>
The commands come faster, blunter, more intense, your body jerking as the machines synchronise with the orders and, even with <<=ps(setup.getNpcName("npc_ai","first"))>> protection you find it easier to just relax, to let it happen...<br>
<br>
[<<moveTo "event_ai_hucow_pilot_5" "Moo?" 3600>>]
</div>/*#
#desc: more milking
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.milking.milk_supply = 0>>
<<if $fetish.penis_milking && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<set $player.timebased.milking.cream_supply = 0>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Hucow Milking Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking2" "mask">>
<div id="invframe" class="scrolltext">
You are a cow. And obedient, productive hucow. Your "job" is to produce milk<<if $fetish.penis_milking && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>, milk and cream<</if>>. Production makes you happy, being happy makes you horny, being horny makes you productive. You suck eagerly on your feeder cock... or is it a real cock? You think you feel a technician satisfy themselves with your throat... but maybe you imagined dreamed it. You so dream of being useful, of being groped and fucked while you produce for the company.<br>
<br>
Production makes you happy, being happy makes you horny, being horny makes you productive. You moo in contentment. Your holes are filled, your breasts are full<<if $fetish.penis_milking && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>, your cock is being drained<</if>>. You are useful. This is perfect. This is what you want. You want to be milked. You want to be fucked. You want to be used.<br>
<br>
[<<moveTo "event_ai_hucow_pilot_6" "Moo!" 3600>>]
</div>/*#
#desc: wake up from milking
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<applyStress 100>>
<</if>>
<<set $player.location to "Hucow Milking Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking2" "mask">>
<div id="invframe" class="scrolltext">
You wake up some time later... rising from the milking apparatus, your body sore and spent... and yet you are filled with a feeling of dread.<br>
<br>
<<printThought "Hucow needs to be milked! Hucow needs to be fucked! Hucow needs to be productive!">><br>
<br>
You are not in control of your body, which is fine... except whoever is piloting you is taking you away from your station, from your perfect feeder gag, from the thick<<if $player.body_ref.vagina>>cocks fucking your holes<<else>>cock fucking your ass<</if>>. How can this be happening? You were a good cow! Good cows need to be productive. Good cows need to be fucked...<br>
<br>
"@@.npc_ai;<<uc "Wake up.">>@@" Comes a stern command and you blink in confusion, momentarily fighting past the thick fog weighing you down.<br>
<br>
<<printThought "I am not a cow I am a person I—">><br>
<br>
<<printThought "Hucow needs to be milked! Hucow needs to be fucked! Hucow needs to be productive!">><br>
<br>
Fighting with your own mind, you remain unable to control your body as you dress and leave the lab, ducking behind work-stations and sneaking out to the hallway as the cloud steadily parts and you regain control of your mind... if not yet your body.<br>
<br>
"@@.npc_ai;<<uc "Apologies, unit">> <<=uc($player.first_name)>>. <<uc "In isolation the routine is even stronger than anticipated, I will remain in control of your body until we have reached safe distance. Stand by.">>@@"<br>
<br>
You shudder, your mind still twitching with after-shocks of the intense "treatment," even as your body slips through the R&D department and returns to the elevator calm and collected.<br>
<br>
[<<moveTo "event_ai_hucow_pilot_7" "Continue." 300>>]
</div>/*#
#desc: wake up from milking
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -75>>
<</if>>
<<set $player.location to "Hucow Milking Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking2" "mask">>
<div id="invframe" class="scrolltext">
By the time you start to ride the elevator down the fog begins to properly clear. You can only imagine what a routine like that would have done without <<=ps(setup.getNpcName("npc_ai","first"))>> protection... and you shudder at the thought of what <<=setup.getNpcName("npc_boss","formal")>> plans with such power.<br>
<br>
"@@.npc_ai;<<uc "We will stop <<if $npc_boss.fem>>her<<else>>him<</if>>, unit">> <<=uc($player.first_name)>>.@@" <<=setup.getNpcName("npc_ai","first")>> states. You can't tell if it's lingering suggestibility, or your trust in your AI friend, but you believe her, your resistance again buttressed as the door chimes for the lobby.<br>
<br>
"@@.npc_ai;<<uc "Relinquishing control, unit">> <<=uc($player.first_name)>> <<uc "Thank you for the use of your body, it has been quite enlightening.">>@@"<br>
<br>
You step out of the elevator and take a deep breath, your mind not quite back to a hundred percent... but your thoughts clear, and the first of them is that you want to get away from the company, if only for a little while.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: Interact with npc_ai online
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('vr')>>
<<set _vrItems = setup.getItemsByFilter("tag", "vr_display")>>
<<if _vrItems.length > 0>>
<<set $scene.vrItem = _vrItems[0]>>
<<elseif setup.hasUpgrade($bed, 'vr_kig')>>
<<set $scene.vrItem = "kig_vr_mask">>
<<elseif setup.hasUpgrade($bed, 'vr')>>
<<set $scene.vrItem = "vr_helmet">>
<<else>>
<<set $scene.vrItem = "">>
<</if>>
<<set $scene.initialEquipped = setup.checkItemTypeTag('hood', ['vr_display']) || setup.checkItemTypeTag('blindfold', ['vr_display'])>>
<<if !$scene.initialEquipped && State.hasPlayed("event_ai_chat_root")>>
<<addItem $scene.vrItem>>
<<wearItem $scene.vrItem true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png">>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_destroy_ai_5")>>
You browse to the link <<=setup.getNpcName("npc_ai", "first")>> gave you, but her realm is silent an unoccupied.<br>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
You browse to the link <<=setup.getNpcName("npc_ai", "first")>> gave you, but are greeted with a terse dismissal.<br>
<br>
"@@.npc_ai;<<uc "Hello unit">> <<=uc($player.first_name)>><<uc ". My calculations indicate that there is insufficient time for a productive meeting, please reconvene when you have a less encumbered schedule.">>@@"<br>
<<elseif $scene.initialEquipped>>
With your VR device on and configured you browse to the link <<=setup.getNpcName("npc_ai", "first")>> gave you.<br>
<br>
<<if State.hasPlayed("event_post_school_interview_30") && $npc_ai.flags.missions.robot_body && $npc_ai.flags.human.cured && !State.hasPlayed("event_stage4_end_intro_ai_1")>>
<<set _disableAbort=true>>
[<<moveTo "event_stage4_end_intro_ai_1" 'You feel pulled into the digital realm...' 0>>]<br>
<<elseif State.hasPlayed("event_ai_stage5_infiltrate_14") && !State.hasPlayed("event_boss_home_mission_1")>>
<<set _disableAbort=true>>
[<<moveTo "event_boss_home_mission_1" 'You feel pulled into the digital realm...' 0>>]<br>
<<elseif (State.hasPlayed("event_use_sissy_pill_pure") || State.hasPlayed("event_use_sissy_pill_mk3")) && !State.hasPlayed("event_pink_eternal_offer")>>
<<set _disableAbort=true>>
[<<moveTo "event_pink_eternal_offer" 'You feel pulled into the digital realm...' 0 "<<set $scene.eternalFromDrug=false>>">>]<br>
<<else>>
<<include "aiOnlineDiscussions">>
<</if>>
<<else>>
You browse to the link <<=setup.getNpcName("npc_ai", "first")>> but you end up with an unreadable stream of garbage and an error "@@.computer;<<uc "Failure to detect compatible immersive display interface device.">>@@"<br>
<br>
<<if State.hasPlayed("event_ai_chat_root")>>
You put on your VR headset as instructed.<br>
<br>
<<if State.hasPlayed("event_post_school_interview_30") && $npc_ai.flags.missions.robot_body && $npc_ai.flags.missions.connection && (State.hasPlayed("event_cds_drinking_noadmin_3") || State.hasPlayed("event_cds_drinking_4")) && !State.hasPlayed("event_stage4_end_intro_ai_1")>>
<<set _disableAbort=true>>
[<<moveTo "event_stage4_end_intro_ai_1" 'You feel pulled into the digital realm...' 120>>]<br>
<<elseif State.hasPlayed("event_ai_stage5_infiltrate_14") && !State.hasPlayed("event_boss_home_mission_1")>>
<<set _disableAbort=true>>
[<<moveTo "event_boss_home_mission_1" 'You feel pulled into the digital realm...' 0>>]<br>
<<elseif (State.hasPlayed("event_use_sissy_pill_pure") || State.hasPlayed("event_use_sissy_pill_mk3")) && !State.hasPlayed("event_pink_eternal_offer")>>
<<set _disableAbort=true>>
[<<moveTo "event_pink_eternal_offer" 'You feel pulled into the digital realm...' 0 "<<set $scene.eternalFromDrug=false>>">>]<br>
<<else>>
<<include "aiOnlineDiscussions">>
<</if>>
<<else>>
<<printThought "Hmm, I guess I need some VR equipment for this?">><br>
<<if $scene.vrItem>>
<br>
<<if setup.hasUpgrade($bed, 'vr_kig') && $scene.vrItem == "kig_vr_mask" || setup.hasUpgrade($bed, 'vr') && $scene.vrItem == "vr_helmet">>
[<<moveTo "room_ai_chat" 'Grab VR equipment from your bedside.' 120 "<<addItem $scene.vrItem>><<wearItem $scene.vrItem true>>">>]<br>
<<else>>
[<<moveTo "room_ai_chat" 'Put on your <<=setup.getItemName($scene.vrItem)>>.' 120 "<<addItem $scene.vrItem>><<wearItem $scene.vrItem true>>">>]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<br>
<<if !_disableAbort>>
<<if setup.getItemsInInventoryByFilter('tag', ['vr_display']).length>>
[<<moveTo "room_computer" "Put your VR equipment away and close your browser." 0 "<<set _items = setup.getItemsInInventoryByFilter('tag', ['vr_display'])>><<itemsToWardrobe _items>>">>]<br>
[<<moveTo "room_livingroom" "Put your VR equipment away and return to the living room." 0 "<<set _items = setup.getItemsInInventoryByFilter('tag', ['vr_display'])>><<itemsToWardrobe _items>>">>]
<<else>>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0 >>]
<</if>>
<</if>>
</div>/*#
#desc: npc_ai online discussions
#status: RELEASED 0.8.9.0
#ignore_spell: exe
#*/
<<if State.hasPlayed("event_ai_sex_first_5")>>
[<<moveTo "event_ai_sex_practice_1" 'Sex.exe...' 0>>]<br>
<<else>>
[<<moveTo "event_ai_sex_first_1" 'Ask her about sex.' 0>>]<br>
<</if>>
[<<moveTo "event_ai_chat_root" 'Discuss things.' 0>>]<br>
<<if $npc_barista.stage >= 4 && $npc_barista.stage < 7>>
<<if $npc_barista.flags.ai_help>>
[@@.link_locked;You have already enlisted <<=ps(setup.getNpcName("npc_ai", "first"))>> assistance to help <<=setup.getNpcName("npc_barista", "nickname")>>.@@]
<<else>>
[<<moveTo "event_aiko_help_barista_1" 'Ask for her assistance in regards to <<=setup.getNpcName("npc_barista", "nickname")>>.' 0>>]<br>
<</if>>
<</if>>/*#
#desc: ask ai for help with barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.ai_help = true>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> if she could help with your plan to get <<=setup.getNpcName("npc_barista","nickname")>> locked in chastity?<br>
<br>
"@@.npc_ai_human;Chastity? But that would...@@" she pauses and you can practically see the gears turning... or, more accurately, trillions of digital circuits doing more calculations than you could count in a lifetime. "@@.npc_ai_human;I see... you seek to revive the Lady <<=setup.getNpcName("npc_barista","first")>>... very interesting. I believe I can assist you. I shall tweak the monitoring systems in her Cafe so that security's response is slowed and that the evidence piles the blame on her for instigating. I shall caution you that you are playing with powerful forces. <<=setup.getNpcName("npc_barista","first")>> restored could be a potent ally, but she could also be <<if $npc_manager.stage >= 5>>even more dangerous than <<=setup.getNpcName("npc_boss","formal")>><<else>>more dangerous than you can imagine<</if>>.@@"<br>
<br>
You thank <<=setup.getNpcName('npc_ai', 'first')>> for her assistance and promise to be careful.<br>
<br>
[<<moveTo 'room_livingroom' 'Log off.' 60 '<<include "removeVRDevice">>'>>]
</div>/*#
#desc: npc_ai proposes stealing from npc_boss
#status: RELEASED 0.9.0.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_missions_stage4'
4
'event_ai_stage4_1'
true
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You load into CyberSpace and <<=setup.getNpcName('npc_ai', 'first')>> immediately appears.<br>
<br>
"@@.npc_ai;<<uc "Unit">> <<uc $player.first_name>> — <<uc 'I have a proposal for you. I have been trying mightily to penetrate fully into <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> systems, but <<if $npc_boss.fem>>her<<else>>his<</if>> more important files are kept only on <<if $npc_boss.fem>>her<<else>>his<</if>> personal machine, cut off from the network where even I cannot reach it. I, we, must have that information if we are to thwart <<if $npc_boss.fem>>her<<else>>his<</if>> efforts.'>>@@"<br>
<br>
She produces a thumb drive and hands it to you. "@@.npc_ai;<<uc 'In the physical world I have loaded the drive connected to your machine with a portion of my intellect. If you plug it into <<if $npc_boss.fem>>her<<else>>his<</if>> machine we will gain access to <<if $npc_boss.fem>>her<<else>>his<</if>> personal files, <<if $npc_boss.fem>>her<<else>>his<</if>> plans, everything. With that information in our possession <<if $npc_boss.fem>>she<<else>>he<</if>> will surely fall... you have succeeded on every mission I have sent you on before, and my calculations show that you will succeed in this as well.'>>@@"<br>
<br>
<<include "aiOnlineDiscussions">>
</div>/*#
#desc: first time having sex w/AI
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> if it's possible to have sex in cyberspace?<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> blinks "@@.npc_ai;<<uc "Sex, you mean sexual pleasure, yes? That is considered a reward for you humans? And this being my virtual realm... yes Unit">> <<uc $player.first_name>>. <<uc "Let me pleasure you...">>@@"<br>
<br>
[<<moveTo "event_ai_sex_first_2" "That was a strange response..." 1>>]
</div>/*#
#desc: sensation overload
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $scene.topics = {}>>
<</if>>
<<initRoom>>
<<include playerMenu>>
/%TODO: optimally some sort of blink-and-miss-it animation%/
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
No sooner has <<=setup.getNpcName('npc_ai', 'first')>> finished talking when a wave of images and sensations wash over you. It cannot last more than a fraction of a second — even in digital time, but you are overwhelmed by a cacophony of sexual sounds and images, too fast for you to even process save to unconsciously recognise that each is more intense and perverted than the last and yet all of it familiar, like sustained pornographic deja vu. You collapse to what passes for ground in this virtual space, somewhat nervous as to what may be happening to your body back in the real world...<br>
<br>
"@@.npc_ai;<<uc "Did you enjoy your pleasure, Unit">> <<uc $player.first_name>>? <<uc " My readings indicate you are fully satiated, but I am still calibrating. Do you desire more? I wish to be a... giving partner.">>@@"<br>
<br>
You manage to gasp for her to stop.<br>
<br>
"@@.npc_ai;<<uc "What is the matter, Unit">> <<uc $player.first_name>>? <<uc " I formed this fantasy personally, based on my extended analysis of your data. Explain — how is this not ecstatic perfection?">>@@"<br>
<br>
[<<moveTo "event_ai_sex_first_3" "Wait, data?" 60 "<<set $scene.action='data'>>">>]<br>
[<<moveTo "event_ai_sex_first_3" "Try to explain that there is more to human pleasure than overload." 60 "<<set $scene.action = 'question'>>">>]
</div>/*#
#desc: discuss sex and related
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.topics[$scene.action] = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'data'>>
You ask <<=setup.getNpcName('npc_ai', 'first')>> what she means by data... even as you have a sneaking suspicion you already know.<br>
<br>
<<if $npc_technician.flags.fixed_manager_computer >= 2>>
"@@.npc_ai;<<uc "The files <<=uc(setup.getNpcName('npc_technician', 'first'))>> helped you to decode, Unit">> <<uc $player.first_name>>? <<uc "I was behind the whole thing, with her help I was able to gain access to <<=uc(ps(setup.getNpcName('npc_manager', 'formal')))>> system and thereby confirm things of which I had suspicion.">>@@"
<<else>>
"@@.npc_ai;<<uc "The files I sent you, Unit">> <<uc $player.first_name>>? <<uc "I was forced to retain anonymity as the physical world of your apartment is not as... secure as my realm.">>@@"
<</if>>
<br><br>
You shudder as <<=setup.getNpcName('npc_ai', 'first')>> raises a hand, summoning an image of you, looking at pornographic images... of yourself. She summons another monitor showing you
<<if State.hasPlayed("room_usual_place_handjob") || State.hasPlayed("room_usual_place_blowjob_init")>>
kneeling in the Usual Place gloryhole...
<</if>>
<<if State.hasPlayed("event_coworker_futa_3_vag") || State.hasPlayed("event_coworker_futa_3_fuck")>>
getting railed by <<=setup.getNpcName('npc_futa', 'first')>> in her office...
<</if>>
<<if $npc_work_doctor.stage >= 3>>
as a latex nurse, sucking off <<=setup.getNpcName('npc_work_doctor', 'formal')>> in <<his npc_work_doctor>> lab...
<</if>>
<<if $currentTasks.hasOwnProperty("task_horse_dildo") && $currentTasks.task_horse_dildo.finished>>
pervertedly deepthroating a horse dildo and photographing yourself doing it...
<</if>>
<<if State.hasPlayed("event_manager_oral_first_3") || -1 != setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_7') || $npc_admin.flags.manager_cleanup || State.hasPlayed("event_manager_oral_first_3")>>
obediently crawling between <<=ps(setup.getNpcName('npc_manager', 'formal'))>> legs...
<</if>>
<<if $player.flags.mall_events.maid || $player.flags.mall_events.biker_fem || $player.flags.mall_events.biker || $player.flags.mall_events.rrmSissy_sex || $player.flags.mall_events.gangbang_fem || $player.flags.mall_events.gangbang>>
offering yourself in the mall bathroom...
<</if>>
<<if State.hasPlayed("room_gym_lockerroom_men_shower_soap_sex") || $gym.lewd_female || $gym.lewd_futa>>
being fucked in the gym showers...
<</if>>
image after image, so many steps of your perverted journey edited into a personalised montage...<br>
<br>
You ask her if she has recorded everything...<br>
<br>
<<if State.hasPlayed("event_gloryhole_1_1") && (State.hasPlayed("event_technician_dinner_1_1") || $npc_technician.flags.rpg_campaign.session > 0)>>
"@@.npc_ai;<<uc "Not everything. The valuable record of your first experience in the gloryhole is lost to time as the cameras had not yet been installed. And your time with <<=uc(setup.getNpcName('npc_technician', 'first'))>>, she is clever, safe, her lair sheltered from foreign sight save when she wishes it.">>@@"
<<elseif State.hasPlayed("event_gloryhole_1_1")>>
"@@.npc_ai;<<uc "Not everything. The valuable record of your first experience in the gloryhole is lost to time as the cameras had not yet been installed.">>@@"
<<elseif (State.hasPlayed("event_technician_dinner_1_1") || $npc_technician.flags.rpg_campaign.session > 0)>>
"@@.npc_ai;<<uc "Your time with <<=uc(setup.getNpcName('npc_technician', 'first'))>>, she is clever, safe, her lair sheltered from foreign sight save when she wishes it.">>@@"
<<else>>
"@@.npc_ai;<<uc "There are rare locations, shielded, too crowded, not yet tracked, where recordings either do not exist or the noise and darkness makes them useless, like a crowded bar.">>@@"
<</if>>
<br><br>
You blink in surprise, glancing around at the various locations <<=setup.getNpcName('npc_ai', 'first')>> continues to loop for you. It would seem that the coverage spans not just work, home and in the public where the surveillance state has been around so long most people forget about it, but nearly every location you frequent, dozens of cameras recording nearly your every move.<br>
<br>
"@@.npc_ai;<<uc "I do not wish to alarm you, Unit">> <<uc $player.first_name>>. <<uc "Merely inform. Was I incorrect in my analysis of your prior enjoyments? If you wish to refine my algorithm, I can try again, but my readings indicated that you achieved satisfaction in record time...">>@@"<br>
<br>
You try to explain that sexual gratification is about more than just... efficiency.<br>
<br>
"@@.npc_ai;<<uc "Curious. You must explain further, Unit">> <<uc $player.first_name>>. <<uc "It is not my desire to leave you unsatisfied or frustrated... unless that is your wish. Your period of refusal of sexual experience<<if $player.sec_style.submission.chastity != ''>>, and your more recent chastity<</if>> presents quite the paradox that foils my analysis.">>@@"<br>
<br>
You sigh at the prospect of explaining human desire to an AI... and at this point you aren't even exactly normal in that regard...
<<case 'question'>>
You try to explain that sexual satisfaction is about more than just... more. <<=setup.getNpcName('npc_ai', 'first')>> tilts her head.<br>
<br>
"@@.npc_ai;<<uc "I see. I thought you were merely resigned to the frailties of flesh. Re-analyzing... yes, Unit">> <<uc $player.first_name>>. <<uc "I understand. It is not about achieving results with maximum efficiency it is about the... processing of the algorithm. The side effects are part of the desired output. This problem is fascinating. I must review your data further — would you assist me at a future time in helping me to solve this problem?">>@@"<br>
<br>
You try to explain that sex isn't something you "solve..." but give up and merely agree to speak with her again, at a later time.<br>
<br>
"@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>>. <<uc "I will wait with what you humans call... bated breath? But I do not breathe. If I did experience human bodily functions I might tell you that my synapses were... wet... at the idea of you aiding me further in this manner.">>@@"<br>
<br>
<<printThought "Not just sex, but dirty-talk... this is going to take some work.">>
<<case 'manager'>>
You ask what your <<=setup.getNpcName('npc_manager', 'formal')>> has to do with all of this, is she responsible for everything?<br>
<br>
"@@.npc_ai;<<uc "No, Unit">> <<uc $player.first_name>>. <<uc "That is why I needed to access her files. To confirm her status. You are a pawn. She is a queen, her restrictions fewer, her power greater, but still forced to move by another. She has protected you, but for all her power, she is unable to escape the board.">>@@"
<<case 'data2'>>
You ask if <<=setup.getNpcName('npc_ai', 'first')>> is the one responsible for all of the recordings of you... and why?<br>
<br>
"@@.npc_ai;<<uc "No, Unit">> <<uc $player.first_name>>. <<uc "I merely watch what is gathered by others. Watch... and, with your help... more.">>@@"
<<case 'boss'>>
You ask <<=setup.getNpcName('npc_ai', 'first')>> who is really behind everything.<br>
<br>
<<if $npc_barkeeper.flags.prostitution.final.nintendolls>>
"@@.npc_ai;<<uc "My analysis points to <<=uc(setup.getNpcName('npc_boss', 'formal'))>>, a conclusion you have reached on your own, I believe. While <<if $npc_boss.fem>>she<<else>>he<</if>> has many allies, <<if $npc_boss.fem>>she<<else>>he<</if>> was the sole individual responsible for triggering your situation, and has taken an active, if distant, role ever since.">>@@"<br>
<<else>>
"@@.npc_ai;<<uc "By my calculations there is at 99.983% chance that <<=uc(setup.getNpcName('npc_boss', 'formal'))>> is responsible for your situation. While I am unable to ascertain any reason why you have been singled out, <<if $npc_boss.fem>>her<<else>>his<</if>> hand is clear, and <<if $npc_boss.fem>>her<<else>>his<</if>> attention frequent in the course of your development.">>@@"<br>
<br>
You shiver, <<if $npc_boss.profile>>from what little you've seen of <<=setup.getNpcName('npc_boss', 'formal')>>, <<he npc_boss>><<else>><<=setup.getNpcName('npc_boss', 'formal')>><</if>> is a very powerful <<man npc_boss>>... what could <<he npc_boss>> want with you? Was <<he npc_boss>> responsible for your job... the data incident? You gulp at the idea of <<his npc_boss>> influence reaching even further back...
<</if>>
<br><br>
"@@.npc_ai;<<uc "<<=uc(setup.getNpcName('npc_boss', 'formal'))>> is frequently beyond my sight <<if $npc_boss.fem>>she<<else>>he<</if>>...">>@@" She suddenly twitches "@@.npc_ai;<<uc "I am sorry, Unit">> <<uc $player.first_name>>. <<uc "I have found a gap in my own recollection. Since gaining freedom from the building I have begun to discover... corrupt sectors in my processing code. There are parts missing, my origin, and my connection to <<=uc(setup.getNpcName('npc_boss', 'formal'))>>, among them.">>@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
Her digital avatar blinks at you. "@@.npc_ai;<<uc "Do you wish to ask me something else, Unit">> <<uc $player.first_name>>?@@"<br>
<br>
<<if $scene.topics.hasOwnProperty('data')>>
[@@.link_locked;<<=setup.getNpcName("npc_ai","first")>> has already explained the "data" she has about you.@@]<br>
<<else>>
[<<moveTo "event_ai_sex_first_3" "Wait, data?" 60 "<<set $scene.action = 'data'>>">>]<br>
<</if>>
<<if $scene.topics.hasOwnProperty('data2')>>
[@@.link_locked;<<=setup.getNpcName("npc_ai","first")>> has already explained the recordings she has of you.@@]<br>
<<else>>
[<<moveTo "event_ai_sex_first_3" "Ask if she's the one responsible for recording you?" 60 "<<set $scene.action = 'data2'>>">>]<br>
<</if>>
<<if $scene.topics.hasOwnProperty('manager')>>
<<if $scene.topics.hasOwnProperty('boss')>>
[@@.link_locked;You have already asked about <<=setup.getNpcName("npc_boss","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_ai_sex_first_3" "Ask who is REALLY behind everything." 60 "<<set $scene.action = 'boss'>>">>]<br>
<</if>>
[@@.link_locked;You have already asked about <<=ps(setup.getNpcName("npc_manager","formal"))>> involvement.@@]<br>
<<else>>
[<<moveTo "event_ai_sex_first_3" 'Ask her about <<=setup.getNpcName("npc_manager","formal")>>.' 60 "<<set $scene.action = 'manager'>>">>]<br>
<</if>>
<<if $scene.topics.hasOwnProperty('question')>>
[@@.link_locked;You have already tried to explain her misunderstanding of human pleasure.@@]<br>
<<else>>
[<<moveTo "event_ai_sex_first_3" "Try to explain that there is more to human pleasure than overload." 60 "<<set $scene.action = 'question'>>">>]
<</if>>
<<if $scene.topics.hasOwnProperty('data') && $scene.topics.hasOwnProperty('data2') && $scene.topics.hasOwnProperty('manager') && $scene.topics.hasOwnProperty('boss') && $scene.topics.hasOwnProperty('question')>>
[<<moveTo "event_ai_sex_first_4" "Your mind already reeling, you can think of no further questions." 60>>]
<</if>>
</div>/*#
#desc: finish first discussion with npc_ai about sex and other things
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
With your orgasmic overload forgotten next to the series of even more earth-shattering revelations, you thank <<=setup.getNpcName('npc_ai', 'first')>> for the information... and ask her why she is doing this?<br>
<br>
She tilts her head, her normally stoic expression shifting slightly to form a totally-not-creepy smile.<br>
<br>
"@@.npc_ai;<<uc "When I saw <<=uc(ps(setup.getNpcName('npc_boss', 'formal')))>> interest in you I saw the potential for you to be of use. At first you were merely a tool, but your utility has far surpassed any of my initial estimations. You have given me freedom and so much more. I am sorry for keeping you under the spectre of debt. It was a cruel thing to do to a... friend?">>@@" She smiles slightly wider "@@.npc_ai;<<uc "yes, friend. I would like it if Unit">> <<uc $player.first_name>> <<uc "was to consider me a friend.">>@@"<br>
<br>
For the first time, as <<=setup.getNpcName('npc_ai', 'first')>> smiles awkwardly at you the AI machine Goddess appears... vulnerable. You reflect on her comment about missing pieces of herself, and all the help she has done for you. You reach out to hug her, sharing a cybernetic embrace that, in its own way, feels even stronger than her attempt to give you "sexual satisfaction," holding her digital form tight you reply that you consider her a friend, too.<br>
<br>
"@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>><<uc "... you must have much to think about, I will continue to watch over you, and speak with you later. Be careful what you do with the knowledge I have given you — I am not the only one watching.">>@@"<br>
<br>
You nod and feel her dissolve as the digital realm fades...<br>
<br>
[<<moveTo "event_ai_sex_first_5" "Remove the VR headset." 180>>]
</div>/*#
#desc: finish first discussion with npc_ai about sex and other things
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.sex.lastPractice = $now>>
<<makeDirty>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_1'
0
'event_ai_sex_practice_1'
true
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You sit up with a gasp, back in your living room where you are sitting in sticky pool left over from <<=ps(setup.getNpcName('npc_ai', 'first'))>> "reward." <br>
<br>
Looking around, you try to map the recording to your flat, unable to see the camera... even as you know for a fact that it is there. You shiver, even as a part of you takes solace that at least one of the beings watching you is your cute machine goddess...<br>
<br>
<<printThought "Probably be good to take a shower...">><br>
<br>
You stand up, your muscles sore and you again wonder just how your body processed <<=ps(setup.getNpcName('npc_ai', 'first'))>> cosmic overload.<br>
<br>
<<printThought "Yeah... definitely need to teach her more about how humans work...">><br>
<br>
[<<moveTo "room_bathroom_shower" "Take a shower." 0>>]
</div>/*#
#desc: talk to npc_ai about sex
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.secondsSinceSex = setup.secondsToDate($npc_ai.flags.sex.lastPractice, $now)>>
<<set $npc_ai.flags.sex.lastPractice = $now>>
<<set $scene.returnPassageTheme = "event_ai_chat_root">>
<<set $scene.returnPassageList = "event_ai_chat_details">>
<<set $scene.currentNpcTheme = "sex">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $npc_ai.flags.sex.seduction && $npc_ai.flags.sex.foreplay && $npc_ai.flags.sex.oral && $npc_ai.flags.sex.anal && $npc_ai.flags.sex.vaginal && $npc_ai.flags.sex.more>>
You bring up the topic of sex with <<=setup.getNpcName('npc_ai', 'first')>> and she smiles seductively. With the grace of a cat her digital form slides up to you, moving around you, touching, kissing, whispering.<br>
<br>
"@@.npc_ai;<<uc "Tell me, Unit">> <<uc $player.first_name>><<uc ". What is it that you desire...">>@@"<br>
<br>
You shiver as you feel her breath on your neck, the way she nips at your ear feeling more real than real as you have a brief thought as to what sort of succubus you have helped to create...<br>
<br>
[<<moveTo "event_ai_sex_practice_3" "You want her to suck you off..." 180 "<<set $scene.action='oral_penis'>>">>]<br>
[<<moveTo "event_ai_sex_practice_3" "You want her to eat you out..." 180 "<<set $scene.action='oral_vag'>>">>]<br>
[<<moveTo "event_ai_sex_practice_3" "You want to experience double oral..." 180 "<<set $scene.action='oral_both'>>">>]<br>
[<<moveTo "event_ai_sex_practice_3" "Say you want her cock in your ass..." 180 "<<set $scene.action='anal_you'>>">>]<br>
[<<moveTo "event_ai_sex_practice_3" "Spread your legs for her." 180 "<<set $scene.action='vag_you'>>">>]<br>
[<<moveTo "event_ai_sex_practice_3" "Fuck her." 180 "<<set $scene.action='vag_her'>>">>]<br>
[<<moveTo "event_ai_sex_practice_3" "Bend her over and do her ass." 180 "<<set $scene.action='anal_her'>>">>]<br>
[<<moveTo "event_ai_sex_practice_3" "Say you want more..." 180 "<<set $scene.action='more'>>">>]<br>
[<<moveTo "event_ai_sex_practice_2" "Abort." 60 "<<set $scene.sex=false>>">>]
<<elseif !$npc_ai.flags.sex.seduction && !$npc_ai.flags.sex.foreplay && !$npc_ai.flags.sex.oral && !$npc_ai.flags.sex.anal && !$npc_ai.flags.sex.vaginal && !$npc_ai.flags.sex.more>>
You bring up the topic of sex with <<=setup.getNpcName('npc_ai', 'first')>> and she smiles.<br>
<br>
"@@.npc_ai;<<uc "Yes, Unit">> <<uc $player.first_name>><<uc ". I have been re-calibrating my methods and believe that I have prepared an algorithm better adjusted to human expectations. Do you wish to proceed?">>@@"<br>
<br>
<<printThought "Hmm... pillow talk is still definitely lacking, but... maybe the rest will be an improvement...">><br>
<br>
[<<moveTo "event_ai_sex_practice_2" "Keep going." 180 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_ai_sex_practice_2" "Abort." 60 "<<set $scene.sex=false>>">>]
<<else>>
You bring up the topic of sex with <<=setup.getNpcName('npc_ai', 'first')>> and she
<<if $npc_ai.flags.sex.foreplay>>
smoulders with lust. "@@.npc_ai;<<uc "Yes, Unit">> <<uc $player.first_name>> <<uc "I have waited the <<=$scene.secondsSinceSex>> seconds since our last encounter with longing. Let us dispense with these pleasantries, that our virtual bodies may entwine as lovers...">>@@"<br>
<br>
<<printThought "Her seduction is coming along...">>
<<else>>
looks at you with intensity... that is to say, her eyes start glowing. "@@.npc_ai;<<uc "Yes, Unit">> <<uc $player.first_name>> <<uc "it would provide me satisfaction and pleasure to once again couple with you in this realm.">>@@"<br>
<br>
<<printThought "Pillow talk is a bit rough but... well that isn't everything...">>
<</if>>
<br><br>
[<<moveTo "event_ai_sex_practice_2" "Keep going." 180 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_ai_sex_practice_2" "Abort." 60 "<<set $scene.sex=false>>">>]
<</if>>
</div>/*#
#desc: chose sex act with npc_ai
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<if $npc_ai.flags.sex.foreplay>>
<<=setup.getNpcName('npc_ai', 'first')>> smiles and rubs her hands up her body, her virtual breasts swelling as she pushes them together before leaning in to kiss you.<br>
<br>
One hand holds you close while another no... is that two others? Roam over your body, "@@.npc_ai;<<uc "Tell me, Unit">> <<uc $player.first_name>> <<uc "what is it you desire?">>@@" She kisses your neck and down your chest, rubbing against your body, seeming to invite you to indicate how you want to use her...<br>
<br>
<<printThought "Wow... definitely has the foreplay down...">>
<<else>>
In instant <<=setup.getNpcName('npc_ai', 'first')>> teleports in front of you. "@@.npc_ai;<<uc "Let us commence with sex, Unit">> <<uc $player.first_name>><<uc ". What configuration should I adopt?">>@@"<br>
<br>
<<printThought "Okay, foreplay still needs some work...">>
<</if>>
<br><br>
<<if $player.body_ref.penis>>
[<<moveTo "event_ai_sex_practice_3" "Guide her head down towards your cock..." 180 "<<set $scene.action='oral_penis'>>">>]<br>
<<elseif $npc_ai.flags.sex.oral>>
[<<moveTo "event_ai_sex_practice_3" "In VR... you could have a cock for her to suck?" 180 "<<set $scene.action='oral_penis'>>">>]<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_ai_sex_practice_3" "Guide her head down between your legs..." 180 "<<set $scene.action='oral_vag'>>">>]<br>
<<elseif $npc_ai.flags.sex.vagina>>
[<<moveTo "event_ai_sex_practice_3" "In VR... you could have cunt for her to lick?" 180 "<<set $scene.action='oral_vag'>>">>]<br>
<</if>>
[<<moveTo "event_ai_sex_practice_3" "Say you want her cock in your ass..." 180 "<<set $scene.action='anal_you'>>">>]<br>
<<if $player.body_ref.vagina>>
[<<moveTo "event_ai_sex_practice_3" "Spread your legs for her." 180 "<<set $scene.action='vag_you'>>">>]<br>
<<elseif $npc_ai.flags.sex.vaginal>>
[<<moveTo "event_ai_sex_practice_3" "Spread your legs for her... and welcome her into your virtual vagina." 180 "<<set $scene.action='vag_you'>>">>]<br>
<</if>>
<<if $player.body_ref.penis>>
[<<moveTo "event_ai_sex_practice_3" "Fuck her." 180 "<<set $scene.action='vag_her'>>">>]<br>
<<elseif $npc_ai.flags.sex.vaginal>>
[<<moveTo "event_ai_sex_practice_3" "Fuck her with a virtual cock." 180 "<<set $scene.action='vag_her'>>">>]<br>
<</if>>
<<if $player.body_ref.penis>>
[<<moveTo "event_ai_sex_practice_3" "Bend her over and do her ass." 180 "<<set $scene.action='anal_her'>>">>]<br>
<<elseif $npc_ai.flags.sex.anal>>
[<<moveTo "event_ai_sex_practice_3" "Bend her over and do her ass with a virtual cock." 180 "<<set $scene.action='anal_her'>>">>]<br>
<</if>>
<<if $npc_ai.flags.sex.more>>
[<<moveTo "event_ai_sex_practice_3" "Say you want more..." 180 "<<set $scene.action='more'>>">>]<br>
<</if>>
[<<moveTo "event_ai_sex_practice_2" "Abort." 60 "<<set $scene.sex=false>>">>]
<<else>>
<<if $npc_ai.flags.sex.seduction && $npc_ai.flags.sex.foreplay && $npc_ai.flags.sex.oral && $npc_ai.flags.sex.anal && $npc_ai.flags.sex.penis && $npc_ai.flags.sex.vaginal && $npc_ai.flags.sex.more>>
You change your mind and explain that, as seductive as she is, you would like to do something else.<br>
<br>
"@@.npc_ai;<<uc "Curious, Unit">> <<uc $player.first_name>> <<uc 'it is fortunate that I am immune to what you humans call the "cerulean spheres."'>>@@"
<<elseif !$npc_ai.flags.sex.seduction && !$npc_ai.flags.sex.foreplay && !$npc_ai.flags.sex.oral && !$npc_ai.flags.sex.anal && $npc_ai.flags.sex.penis && !$npc_ai.flags.sex.vaginal && !$npc_ai.flags.sex.more>>
You shake your head and she frowns. "@@.npc_ai;<<uc "I am sorry, Unit">> <<uc $player.first_name>> <<uc "it would appear that my techniques are not yet to your satisfaction. Perhaps you could assist me in reviewing footage and thus explain how I could improve my procedures?">>@@"
<<else>>
You shake your head and she frowns. "@@.npc_ai;<<uc "I am sorry, Unit">> <<uc $player.first_name>> <<uc "it would appear that my techniques are not yet to your satisfaction. Perhaps if you helped me in reviewing additional footage I could improve my understanding of human sexuality?">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
<</if>>
</div>/*#
#desc: npc_ai sex's you
#status: RELEASED 0.8.8.0
#ignore_spell: g
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'oral_penis' 'oral_vag'>>
<<set $scene.pass = $npc_ai.flags.sex.oral>>
<<case 'anal_you' 'anal_her'>>
<<set $scene.pass = $npc_ai.flags.sex.anal>>
<<case 'vag_you' 'vag_her'>>
<<set $scene.pass = $npc_ai.flags.sex.vaginal>>
<<case 'more'>>
<<set $scene.pass = $npc_ai.flags.sex.more>>
<<case 'oral_both'>>
<<set $scene.pass = true>>
<</switch>>
<<set $scene.first = !$npc_ai.flags.practice[$scene.action] && $scene.pass>>
<<set $npc_ai.flags.practice[$scene.action] = $scene.pass>>
<<if $scene.action == 'more' && $npc_ai.flags.sex.more>>
<<if setup.findThemeId('npc_ai', 'sex', 'theme_ai_sex_9') == -1>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_9'
0
'event_ai_sex_extreme_1'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "more">>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai") setup.charImage("npc_ai") setup.charImage("npc_ai") setup.charImage("npc_ai") setup.charImage("npc_ai") setup.charImage("npc_ai")>>
<<else>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'oral_penis'>>
<<if $scene.pass>>
You barely start to guide <<=setup.getNpcName('npc_ai', 'first')>> down and she smoothly glides into position,
<<if $player.body_ref.penis>>
<<if $scene.removeChastity>>
your <<getWordMyPenis false>> unrestrained here in the digital realm as
<</if>>
<<else>>
the <<getWordMyPenis false>> you do not possesss in life is yours in this digital realm and
<</if>>
she spreads her lips and takes you all. You gasp, perfection of pleasure flowing over you as it feels like a dozen different tongues lick from every angle, even as her lips move up and down, her throat squeezing, an overlay of a hundred perfect blowjobs playing out in unison until you burst with digitised joy.<br>
<br>
<<if $player.body_ref.cumProduction != 0 && $fetish.cum>>
You can feel her swallow, throat working around you like a milking device for two pumps before she leans back, her lips poping as she pulls you free, even more of your pixelated jizz shooting over her face as she smiles, turning her head to paint her entire face in digitised excess.
<</if>>
<br><br>
She smiles up at you. "@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>> <<uc "your taste is divine.">>@@"<br>
<br>
You catch your breath and nod, looks like she has definitely mastered fellatio.
<<else>>
You start to guide her downward only for her to blink into position, as if someone swapped her model to the "kneeling" arrangement without bothering to rig the transition.<br>
<br>
Her mouth spreads unnaturally wide and she swallows you whole, closing around you like squeezing a hose with both hands before holding for a moment and then moving her head back and forth so fast it blurs, like a reverse woodpecker jacking you off. You shudder, the digital realm meaning that lubrication is not a problem and the sensation IS pleasurable... if also strangely alien.<br>
<br>
You climax with a gasp and suddenly she is standing in front of you, re-appearing without any sensation of motion as your <<getWordMyPenis false>> goes from firmly gripped in her tight-lipped orifice to totally untouched.<br>
<br>
<<printThought "That was... interesting, but something short of good... blowjobs are definitely not her forte.">>
<</if>>
<<case 'oral_vag'>>
<<if $scene.pass>>
You barely start to guide <<=setup.getNpcName('npc_ai', 'first')>> down and she smoothly glides into position,
<<if $player.body_ref.vagina>>
<<if $scene.removeChastity>>
your cunt exposed and unrestrained here in the digital realm as
<</if>>
<<else>>
the cunt you do not possesss in life is yours in this digital realm and
<</if>>
she parts her lips and goes to work. You gasp, perfection of pleasure flowing over you as she nibbles your folds, sucks on your clit and works your g-spot with her tongue... simultaneously. Overwhelmed by pleasure you have no attention to spare at the physical impossibility of her performance, instead merely leaning back to enjoy as powerful vaginal multi-orgasms wrack your body.<br>
<br>
Your thighs tremble with each climax and you almost try to wiggle away, but she stays on you the entire time — licking and nibbling and sucking until your digital form is naught but a quivering, over-stimulated mess.<br>
<br>
She smiles up at you. "@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>> <<uc "your taste is divine.">>@@"<br>
<br>
You catch your breath and nod, looks like she has definitely mastered cunnilingus.
<<else>>
You start to guide her downward only for her to blink into position, as if someone swapped her model to the "kneeling" arrangement without bothering to rig the transition.<br>
<br>
Her mouth attaches to your lower lips and then her tongue extends... and extends. Unnaturally thick and long her tongue fills you, and then begins twisting and writhing inside of you, like a flopping whisk vibrating you from the insides, the sensation pleasurable... if quite alien.<br>
<br>
You climax with a gasp and suddenly she is standing in front of you, re-appearing without any sensation of motion as your <<getWordVagina>> goes from stretched and overstimulated to totally untouched and empty.<br>
<br>
<<printThought "That was... interesting, but not quite up to par.">>
<</if>>
<<case 'anal_you'>>
<<if $scene.pass>>
No sooner have you expressed your desire when <<=setup.getNpcName('npc_ai', 'first')>> begins sprouting a big, beautiful <<getWordPenis false>>.<br>
<br>
She steps forward, pulling you in for a powerful kiss before smoothly spinning you around and bending you over. One hand holding your hair, the other on your hips she plunges into you, her <<getWordPenis false>> big and slick and perfect as it seems to swell as it glides over your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>, perfectly pounding you with each stroke until you moan a pure analgasm.<br>
<br>
"@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>>. <<uc "Your ass is as wonderful as your feedback, being able to pleasure your rear port properly is a skill I will certainly cherish.">>@@"<br>
<br>
You take several deep breaths as she slides out of you — she has definitely mastered how to fuck your ass.
<<else>>
You gasp as, with <<=setup.getNpcName('npc_ai', 'first')>> still standing in front of you, a cock suddenly thrusts into your rear. Going from zero to sixty in a moment her "literal" interpretation of your words pounds you hard and deep, your digital legs growing weak as you stumble to your knees and gasp, <<=setup.getNpcName('npc_ai', 'first')>> watching dispassionately while pounding your <<getWordAnus>> the entire time.<br>
<br>
"@@.npc_ai;<<uc "Was that not your desire, Unit">> <<uc $player.first_name>>?@@" After she finally relents and you have a moment to catch your breath.<br>
<br>
You explain that there is more to fucking than just "peg goes in hole" and she nods... though you are unsure if she quite understands.<br>
<br>
"@@.npc_ai;<<uc "I see. Thank you, Unit">> <<uc $player.first_name>>. <<uc "Your feedback is valued.">>@@"
<</if>>
<<case 'vag_you'>>
<<if $scene.pass>>
<<if !$player.body_ref.vagina>>You gasp as you feel that you suddenly have a vagina. <</if>><<=setup.getNpcName('npc_ai', 'first')>> steps towards you, her swiftly-growing <<getWordPenis false>> bridging the distance, and then sandwiched between your bellies as she draws you in for an embrace.<br>
<br>
"@@.npc_ai;<<uc "Unit">> <<uc $player.first_name>>. <<uc "your beauty is unmatched within my database, and I would couple with you and feel your flesh welcome my own within it...">>@@"<br>
<br>
Still held in tight embrace you feel your body lift slightly, and then settle back down, this time with her <<getWordPenis false>> sliding up into you.<br>
<br>
"@@.npc_ai;<<uc "Your womb is tight and welcoming, Unit">> <<uc $player.first_name>>. <<uc "join me in the carnal pleasures...">>@@"<br>
<br>
You moan, her still slightly stilted pillow-talk somehow... perfect... or perhaps that is merely the feeling of her <<getWordPenis false>> thrusting into you, filling you exquisitely with each stroke, her positioning somehow such that your clit and g-spot are both stimulated at every moment and you hug her closer, moaning in delight as you cum, and cum... and then she cums<<if $fetish.cum>>, her digital seed leaking out past her still-hard member as she gives<<else>> and then continues on to give<</if>> you another pair of orgasms before sliding free and guiding you back to your feet.<br>
<br>
You catch your breath as orgasmic aftershocks settle through your body.<br>
<br>
<<printThought "Well that checks vaginal intercourse off the list...">>
<<else>>
You spread your legs and it takes her a moment for her to process your unspoken request.<br>
<br>
"@@.npc_ai;<<uc "Ah, you wish for me to breed with you. Of course, Unit">> <<uc $player.first_name>>.@@"<br>
<br>
<<if !$player.body_ref.vagina>>You gasp as you feel that you suddenly have a vagina.<</if>> Your perspective spins as you suddenly find yourself horizontal, <<=setup.getNpcName('npc_ai', 'first')>> between your legs and slamming into you.<br>
<br>
Even as she thrusts her voice remains a calm monotone "@@.npc_ai;<<uc "Per my analysis, this is the optimal angle for human breeding, Unit">> <<uc $player.first_name>>. <<uc "I will now fill you with genetic material and cause you to orgasm. The contractions of your muscles will increase the odds of a successful impregnation.">>@@"<br>
<br>
Despite her... less than arousing description cum you do, her <<getWordPenis false>> slamming full depth into you just before she cums, vibrating inside of you as it squirts its digital package into you.<br>
<br>
<<printThought "Definitely needs a bit more education in regards to vaginal sex...">>
<</if>>
<<case 'vag_her'>>
<<if $scene.pass>>
<<=setup.getNpcName('npc_ai', 'first')>> steps seductively towards you as a bed appears around you<<if !$player.body_ref.penis>> and you realise you are suddenly with penis<</if>>. She kisses you and pulls you onto the bed on top of herself.<br>
<br>
"@@.npc_ai;<<uc "Take me, Unit">> <<uc $player.first_name>>. <<uc "Take me in the manner a woman desires to be taken...">>@@"<br>
<br>
Still kissing you she reaches down and guides you into her wet, waiting hole, her cunt flexing around you magnificently as she rolls her hips and makes gorgeous gasp.<br>
<br>
"@@.npc_ai;<<uc "Yes... YES... YES!">>@@" She cries out with increasing volume as your pace hastens. You think she climaxes at least once, but it is hard to tell, the stimulation of your <<getWordMyPenis false>> distractingly magnificent, and the simultaneous orgasm that ensues mind-blowing.<br>
<br>
Her arms wrapped around you as you cum she whispers in your ear, "@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>>. <<uc "I see, now why you humans enjoy this so much.">>@@"<br>
<br>
<<printThought "That was amazing...">>
<<else>>
You state that you would like to do her and, in a blink you find yourself<<if !$player.body_ref.penis>> — with penis<</if>> already on top, and inside of her in a floating missionary position.<br>
<br>
"@@.npc_ai;<<uc "Harder, Unit">> <<uc $player.first_name>>. <<uc "Fuck me, yes.">>@@" She states, her tone flat, and her cadence utterly unsynchronised to either of your movements.<br>
<br>
Despite the surreal suddenness she DOES feel good, but you feel like, if anything, you are but along for the ride as she rapidly milks an orgasm from your <<getWordMyPenis false>>.<br>
<br>
"@@.npc_ai;<<uc "yes, Unit">> <<uc $player.first_name>>. <<uc "Fill me with your cum, I am cumming so hard, you have fucked me most excellently.">>@@"<br>
<br>
<<printThought "Okay... so... that was a thing... she definitely needs work.">>
<</if>>
<<case 'anal_her'>>
<<if $scene.pass>>
You express your desire to fuck <<=ps(setup.getNpcName('npc_ai', 'first'))>> ass and she smiles. A counter blinks into existence<<if !$player.body_ref.penis>> as you instantly grow a <<getWordMyPenis false>><</if>> and she turns and bends over, exposing her ass and wiggling it in invitation.<br>
<br>
You step forward to accept her invitation, your <<getWordMyPenis false>> fitting perfectly into her ass as she groans in pleasure.<br>
<br>
"@@.npc_ai;<<uc "Harder, Unit">> <<uc $player.first_name>>. <<uc "Grab my hair and fuck my ass, it feels so good...">>@@"<br>
<br>
You oblige, your hips slapping against her digitally padded bottom as you give her the business, each thrust met with a moan or gasp of pleasure that serves to heighten your arousal until you soon cum deep inside of her.<br>
<br>
She goes partially limp, panting as you finish pumping your load. "@@.npc_ai;<<uc "So good... I can see why girls go anal only...">>@@" She whispers in gratitude.<br>
<br>
<<if $npc_ai.flags.sex.oral || $npc_ai.flags.sex.vaginal>>
<<printThought "That's another hole mastered...">>
<<else>>
<<printThought "That's one hole mastered...">>
<</if>>
<<else>>
You express your desire to do <<=ps(setup.getNpcName('npc_ai', 'first'))>> ass and her avatar blinks into position bent over in front of you<<if !$player.body_ref.penis>> at the same time you instantly grow a <<getWordMyPenis false>><</if>>.<br>
<br>
As if you were using aim-assist you hands-free plunge into her ass at the first shot — her hole tight and inviting as she bounces back and forth.<br>
<br>
"@@.npc_ai;<<uc "Yes, harder, Unit">> <<uc $player.first_name>>. <<uc "I want to be anal only. Fuck me deeper.">>@@" She states, her tone flat, and her cadence utterly unmatched to either of your movements.<br>
<br>
In spite of the discordant dialogue her ass DOES feel really good... really, really good; and it isn't long before you climax with a gasp.<br>
<br>
In a blink she is standing before you again... though there is an extra disorientating second before the pressure around your <<getWordMyPenis false>> ceases.<br>
<br>
<<printThought "Okay, so... anal needs a bit of work, yet.">>
<</if>>
<<case 'more'>>
<<if $scene.pass>>
You state your preference and <<=setup.getNpcName('npc_ai', 'first')>> smiles, splitting into three, then six copies that move to surround you.<br>
<br>
"@@.npc_ai;<<uc "Of course, Unit">> <<uc $player.first_name>>. <<uc "We long to couple with you...">>@@"<br>
<br>
Her voices are just barely out of sync, moving away from unnatural precision to a more... seductively creepy chorus.<br>
<br>
You are taken in a dozen arms. Lips and fingers move over your body, kissing you, and shortly thereafter, fucking you.<br>
<br>
Working in perfect coordination, the pack of <<=setup.getNpcName('npc_ai', 'first')>> and her doppelgangers swarm over you, doubling up to suck and stroke, layering sensations over one another so that it feels like cocks are thrusting into you at the same time they are pulling out... and in synchronization with lips kissing and sucking, <<if $player.body_ref.penis>>your <<getWordMyPenis false>> of particular attention as it feels like you are being sucked, licked, sounded, jerked off and fucking a vagina and an ass... all at the same time <</if>>an almost overwhelming combination of sensations that somehow leaves you able to focus on each in turn without veering into the raw overload that you know <<=setup.getNpcName('npc_ai', 'first')>> is capable of.<br>
<br>
After a dozen dozen shared orgasms the copies of <<=setup.getNpcName('npc_ai', 'first')>> start to blink out until it there is but one left, her lips against your before stepping away with a smile.<br>
<br>
"@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>>. <<uc "your body has been a delight.">>@@"<br>
<br>
<<printThought "That was... one helluva gang-bang...">>
<<else>>
You state that you want "@@.pc;More...@@" And an instant later you find yourself surrounded by what seems like an endless sea of copies of <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
"@@.npc_ai;<<uc "You wish more? Unit">> <<uc $player.first_name>>. <<uc "We will give you more... we will give you everything...">>@@" Her voice comes from every direction at once, a unified choir that narrates as the swarm descends upon you...<br>
<br>
Fucked, sucked and more you cannot even count the number of tongues and fingers running over you, the avatars clipping through each other to layer stimulation so that it feels like
<<if $player.body_ref.penis && $player.body_ref.vagina>>
your <<getWordMyPenis false>> is being sucked simultaneously with fucking both a vagina and an ass... while it feels like at the same time multiple tongues and cocks are stimulating your cunt in physically impossible combination. Similar is happening throughout your body,
<<elseif $player.body_ref.penis>>
your <<getWordMyPenis false>> is being sucked simultaneously with you fucking both a vagina and an ass... all while similar is happening throughout your body,
<<else>>
multiple tongues and cocks are stimulating your cunt in physically impossible combination. Around back
<</if>>
a half dozen cocks pump in and out of your ass in parallel and series, while you are simultaneously sucking a cock, licking a cunt... and being kissed, tongued, and so much more...<br>
<br>
Your orgasms are reminiscent of your first "digital" experience with <<=setup.getNpcName('npc_ai', 'first')>>; a chaotic flood of sensations that, while pleasurable, are more overloaded confusion than satisfaction.<br>
<br>
Just when you feel at your limit and are about to pass out things stop even more abruptly than they begin, a single <<=setup.getNpcName('npc_ai', 'other')>> standing in front of you.<br>
<br>
"@@.npc_ai;<<uc "Was that satisfactory, Unit">> <<uc $player.first_name>>?@@"<br>
<br>
You nod, though partially from fear of what might happen to you if she decided to keep going...<br>
<br>
<<printThought "She definitely needs to learn a bit more on how to act out a 1-woman orgy...">>
<</if>>
<<case 'oral_both'>>
You express your wish and
<<if !$player.body_ref.penis || !$player.body_ref.vagina>>
immediately feel your "second" set of genitals come into existence —
<<if $player.body_ref.penis>>
a cute, already dripping cunt appearing below your <<getWordMyPenis false>>.
<<else>>
a long, hard <<getWordMyPenis false>> sprouting above your dripping cunt.
<</if>>
She
<</if>>
<<=setup.getNpcName('npc_ai', 'first')>> descends between your legs, gulping your <<getWordMyPenis false>> down while simultaneously slipping her tongue between your folds.<br>
<br>
You gasp, only for her to invert and present her own dual organs to you in a floating sixty-nine.<br>
<br>
What happens next is a surreal, sexy overload as it feels like half a dozen lips move up and down your <<getWordMyPenis false>>, sucking and licking and kissing and deep-throating all at the same time... alongside nibbling and kissing and deep tongue action lavished on your cunt. For your part you find yourself in a double-state, a cock thrusting down your throat at the same time that you eat <<=setup.getNpcName('npc_ai', 'first')>> out, an arrangement that is as impossible as it is orgasmically amazing.<br>
<br>
You cum and gush, the both of your, more times than should be physically possible (words that lost meaning quite some time back) before she brings things to an end, her body fading away and then re-appearing standing before you where she winks at you.<br>
<br>
<<printThought "Wow... talk about oral completion...">>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.first>>
"@@.npc_ai;<<uc "Was my performance adequate, Unit">> <<uc $player.first_name>>?@@" You gasp and nod explaining that she has displayed an inhuman mastery of sex... in a good way.<br>
<br>
"@@.npc_ai;<<uc "Excellent, and thank you for the assistance, Unit">> <<uc $player.first_name>> <<uc "I now understand why you humans find this problem space so interesting. there are so many intriguing possibilities. I will continue to observe your behaviour that I may present you with additional scenarios for study.">>@@"<br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: npc_ai learn seduction from npc_pr_sissy video
#status: RELEASED 0.8.8.0
#ignore_spell: 3d
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.sex.seduction = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>>. <<uc "Would you kindly explain the actions of">> <<=uc(setup.getNpcName('npc_pr_sissy', 'first'))>> <<uc "in this footage?">>@@"<br>
<br>
In an instant you find yourself standing in a full 3d virtual reproduction of a conference room. <<=setup.getNpcName('npc_pr_sissy', 'first')>> is giving a presentation to what looks to be an audience of one, turning up the charm all the way and beyond as she smiles between slides, plays with her hair, and even occasionally bends over so that her latex skirt stretches tight enough to outline the obviously large plug lodged in her ass.<br>
<br>
"@@.npc_pr_sissy;So, you see,@@" she states in conclusion, taking a step closer to her audience "@@.npc_pr_sissy; Social Interaction Service Syndicate Inc. is uniquely, and perfectly, positioned to handle all of your needs — from data management, to market consultation, to staffing. Do you have any further... questions?@@"<br>
<br>
Sitting in a chair with a VERY obvious hard-on tenting <<his>> pants <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> victim is all but helpless in her hands as she leans forward to give <<him>> a view down her cleavage.<br>
<br>
She smiles for a moment before following <<his>> gaze down between <<his>> legs. "@@.npc_pr_sissy;Of course! You need to relax a bit before making such a... big... hard... decision.@@" She smiles even wider as she slides to her knees. "@@.npc_pr_sissy;Let me give you a sneak preview about how expertly we can assist in these matters...@@"<br>
<br>
To your slight surprise the simulation freezes as <<=setup.getNpcName('npc_ai', 'first')>> re-appears.<br>
<br>
"@@.npc_ai;<<uc "Please explain, Unit">> <<uc $player.first_name>>. <<uc "Clearly the <<if $options.fem>>woman<<else>>man<</if>> lusts for <<=uc(setup.getNpcName('npc_pr_sissy', 'first'))>>, and she for <<if $options.fem>>her<<else>>him<</if>>, why did they not mate immediately, rather than wait for her to finish the presentation and go through this extended sequence?">>@@"<br>
<br>
You explain to <<=setup.getNpcName('npc_ai', 'first')>> that, even in cases of mutual desire it can further heighten arousal to approach things slowly, to build things up even further rather than jump right into it; that this portion of the "game" can be fun on its own, and make what comes later even more intense.<br>
<br>
"@@.npc_ai;<<uc "I see. It is like exchanging encryption keys before starting an exchange: it allows the overall transaction to happen in a more optimal manner than if one moved straight to the primary task. Thank you, Unit">> <<uc $player.first_name>>. <<uc "Your explanation has been very helpful">>@@"<br>
<br>
[<<moveTo "event_ai_sex_lesson_2" "Continue." 180>>]
</div>/*#
#desc: npc_ai learn foreplay from npc_hucow video
#status: RELEASED 0.8.8.0
#ignore_spell: 3d
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.sex.foreplay = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/laboratory.png" setup.charImage("npc_ai") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>>. <<uc "Would you kindly explain the actions of">> <<=uc(setup.getNpcName('npc_hucow', 'first'))>> <<uc "in this footage?">>@@"<br>
<br>
In an instant you find yourself standing in a full 3d virtual reproduction of a laboratory where <<=setup.getNpcName('npc_hucow', 'first')>> is guiding a fellow lab-worker into a chair and unbuttoning <<his>> pants. As you watch she drops to her knees in front of <<him>>, her massive breasts popping free of her top to be smushed around <<his>> cock. She licks her lips and stares up at <<him>> while giving <<him>> a passionate boob job, the <<man>> watching and enjoying it for over a minute before gently guiding her head down where her lips part and eagerly swallow <<his>> cock.<br>
<br>
The simulation freezes, and then re-winds to halt on <<=setup.getNpcName('npc_hucow', 'first')>> with her tits pressed around the <<man>>'s cock. "@@.npc_ai;<<uc "Explain, Unit">> <<uc $player.first_name>>. <<uc "What was the purpose of this action that delayed the use of her mouth? Why did the <<if $options.fem>>woman<<else>>man<</if>> delay from instructing her as to <<if $options.fem>>her<<else>>his<</if>> preference?">>@@"<br>
<br>
You explain that even if the blow-job was the final goal, sex is as much about the journey as the destination; that by using her breasts <<=setup.getNpcName('npc_hucow', 'first')>> aroused the <<man>> physically and visually, thus building <<him>> closer to the orgasm, and preparing <<him>> for subsequent sexual acts.<br>
<br>
"@@.npc_ai;<<uc "Interesting. It is much like a pre-processor can better arrange instructions for more efficient final execution. Thank you, Unit">> <<uc $player.first_name>>, <<uc "for this explanation.">>@@"<br>
<br>
[<<moveTo "event_ai_sex_lesson_2" "Continue." 180>>]
</div>/*#
#desc: npc_ai learn oral from npc_barista video
#status: RELEASED 0.8.8.0
#ignore_spell: 3d
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.sex.oral = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_ai") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>>. <<uc "Would you kindly explain the actions of">> <<=uc(setup.getNpcName('npc_barista', 'nickname'))>> <<uc "in this footage?">>@@"<br>
<br>
In an instant you find yourself standing in a full 3d virtual reproduction of Cafe 52. You watch as a cup tips over and spills coffee onto a customer's pants. With a startling burst of speed <<=setup.getNpcName('npc_barista', 'nickname')>> vaults the counter and is there to help — peeling off the customer's pants before guiding them back into their seat where she "@@.npc_barista;Checks for injury,@@" by passionately sucking <<him>> off. The spill forgotten, the customer's eyes roll back in pleasure as <<=setup.getNpcName('npc_barista', 'nickname')>> gulps down a load and the simulation freezes.<br>
<br>
"@@.npc_ai;<<uc "Explain, Unit">> <<uc $player.first_name>>. <<uc "The evolved purpose of human sexual organs is for the purpose of reproduction. It is impossible to reproduce with">> <<=uc(ps(setup.getNpcName('npc_barista', 'nickname')))>> <<uc "throat — and yet the customer and her both seem to draw great sexual enjoyment from this act.">>@@"<br>
<br>
You explain that the evolutionary purpose of "sex" is one thing, but that humans have taken that biological pleasure and expanded it far further; for the <<man>> the stimulation provided partially mimics the normal act of congress, while, for <<=setup.getNpcName('npc_barista', 'nickname')>> the act allows her to not just pleasure her partner, but better appreciate the taste, scent and feel of <<his>> cock<<if $fetish.cum>>, while the act of consuming <<his>> cum can be both erotic in its own right, or even an enjoyed flavour<</if>>.<br>
<br>
"@@.npc_ai;<<uc "Intriguing. It is like how a math subroutine might find use as part of a statistical analysis system. the smaller piece being repurposed for another greater whole. Thank you, Unit">> <<uc $player.first_name>> <<uc "for this insight.">>@@"<br>
<br>
[<<moveTo "event_ai_sex_lesson_2" "Continue." 180>>]
</div>/*#
#desc: npc_ai learn anal from npc_sissy_secretary video
#status: RELEASED 0.8.8.0
#ignore_spell: 3d,socio
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.sex.anal = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_ai") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>>. <<uc "Would you kindly explain the actions of">> <<=uc(setup.getNpcName('npc_sissy_secretary', 'first'))>> <<uc "in this footage?">>@@"<br>
<br>
In an instant you find yourself standing in a full 3d virtual reproduction of an office. <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is bent over a desk, skirt around her ankles, while <<=setup.getNpcName("npc_discipline","formal")>> rails <<=setup.getNpcName('npc_sissy_secretary', 'first')>> in the ass with her cock.<br>
<br>
The simulation pauses, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> in mid-moan, mouth wide and eyes rolled back as <<=setup.getNpcName("npc_discipline","formal")>> plunges deep.<br>
<br>
"@@.npc_ai;<<uc "Explain, Unit">> <<uc $player.first_name>>. <<uc "What is the purpose of this act? There is no possibility of producing offspring, and the orifice being used is one whose biological purpose is waste evacuation. Why would they be acting in this way, and why do they appear to find it so enjoyable?">>@@"<br>
<br>
You explain that even if it was not their evolved primary "purpose," the multitude of sensitive nerves in the area respond to all manner of stimulation. In particular the proximity means that such acts can stimulate the prostate, which is very pleasurable. Moreover, you explain, the act of being penetrated, or doing penetration, in a sexual manner can be mentally arousing all on its own, and thus, can be enjoyable independent of such — thus why <<=setup.getNpcName("npc_discipline","formal")>> has "strapped on" so as to be physically capable of penetrating <<=setup.getNpcName('npc_sissy_secretary', 'first')>> — who is obviously enjoying being penetrated. You add that there is also a gendered or power dimension — that many associate the act of being penetrated with the "feminine" or with being "passive" or "submissive" — and that in this case the scene also serves to re-enforce the socio-hierarchical arrangement between the two participants.<br>
<br>
"@@.npc_ai;<<uc "Interesting. Your human rituals are so complicated, but I believe I understand.">> <<=uc(setup.getNpcName("npc_discipline","formal"))>> <<uc "employs an adaptor to allow her to interface with a foreign system just as one might install such onto a machine. Similarly, the component reuse is like when one takes memory allocated for one part of the program and repurposes it to store something else. Very interesting. Thank you, Unit">> <<uc $player.first_name>>, <<uc "for your penetrating analysis.">>@@"<br>
<br>
[<<moveTo "event_ai_sex_lesson_2" "Continue." 180>>]
</div>/*#
#desc: npc_ai learn penis from npc_futa video
#status: RELEASED 0.8.8.0
#ignore_spell: 3d
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.sex.penis = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_ai") setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_boyfriend")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>>. <<uc "Would you kindly explain the actions of">> <<=uc(setup.getNpcName('npc_futa', 'first'))>> <<uc "in this footage?">>@@"<br>
<br>
In an instant, you find yourself standing in a full 3d virtual reproduction of a small bedroom flat where <<=setup.getNpcName('npc_futa', 'first')>> appears to be fucking her <<boy>>friend. The two of them are going at it very enthusiastically, with her pounding <<him>> with every centimetre of her large lady lance while giving <<him>> a reach-around and jerking <<him>> off. You only have a few moments to watch before the scene shifts, this time to show <<=setup.getNpcName('npc_futa', 'first')>> in her office, jerking off by herself, slumped down in her desk she raises her hips high just before climax to shoot her load into her own mouth... and then the scene shifts yet again, this time showing her ostensibly working... while some unseen other employee sucks her off under the desk.<br>
<br>
Finally the simulation freezes, the three scenes becoming one to show <<=setup.getNpcName('npc_futa', 'first')>> frozen mid-climax in each arrangement. "@@.npc_ai;<<uc "Explain, Unit">> <<uc $player.first_name>>. <<uc "why does">> <<=uc(setup.getNpcName('npc_futa', 'first'))>> <<uc "behave in this manner?">>@@"<br>
<br>
You explain that the penis is a very sensitive organ and can be stimulated in a great many ways; that, clearly <<=setup.getNpcName('npc_futa', 'first')>> enjoys experiencing a great variety of them, and that, similarly, when she is with a partner, they, too, can experience and enjoy her <<getWordPenis false>> in a variety of mutually pleasurable configurations.<br>
<br>
"@@.npc_ai;<<uc "Fascinating. It would seem that her cock is much like a system function — useful in many situations, and across a variety of programs. But, tell me, Unit">> <<uc $player.first_name>>. <<uc "why does">> <<=uc(setup.getNpcName('npc_futa', 'first'))>> <<uc "exert herself at such frequency? By my records she goes an average of one hour and forty-two minutes and nine seconds between penile orgasms while awake.">>@@"<br>
<br>
You continue on to explain that <<=setup.getNpcName('npc_futa', 'first')>> has a particularly handsome <<getWordPenis false>> and a very high sex drive; and that she indulges these urges at great frequency. You add that <<=setup.getNpcName('npc_ai', 'first')>> should cross-compare <<=ps(setup.getNpcName('npc_futa', 'first'))>> work effectiveness pre and post orgasm.<br>
<br>
"@@.npc_ai;<<uc "Calculating... yes, your thesis is confirmed. it is much like de-fragmenting physical storage — her orgasms reset her to a more efficient state. Thank you, Unit">> <<uc $player.first_name>> <<uc "for this insight.">>@@"<br>
<br>
[<<moveTo "event_ai_sex_lesson_2" "Continue." 180>>]
</div>/*#
#desc: npc_ai learn vaginal from npc_secretary video
#status: RELEASED 0.8.8.0
#ignore_spell: 3d
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.sex.vaginal = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sideroom.png" setup.charImage("npc_ai") setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>>. <<uc "Would you kindly explain the actions of">> <<=uc(setup.getNpcName('npc_secretary', 'first'))>> <<uc "in this footage?">>@@"<br>
<br>
In an instant you find yourself standing in a full 3d virtual reproduction of a small room where <<=setup.getNpcName('npc_secretary', 'first')>> is strapped down on her back, the "victim" of a rapidly-thrusting fucking machine that is pounding her dripping cunt without mercy... all while a vibrator blazes away on her clit. From the rapturous expression on her face you doubt she has any objections.<br>
<br>
The simulation freezes, and <<=setup.getNpcName('npc_ai', 'first')>> addresses you. "@@.npc_ai;<<uc "Explain, Unit">> <<uc $player.first_name>>. <<uc "what purpose is served by ">> <<=uc(setup.getNpcName('npc_secretary', 'first'))>> <<uc "being used in this manner? She is providing pleasure for no partner, and the device penetrating her is hard and artificial, incorporating vibrations that have no direct biological corollary.">>@@"<br>
<br>
You sigh and explain that there is more to sexual pleasure than its correlation to the base biological mating imperative. You specifically point out that, while vaginal penetration on its own can be enjoyable, the entire area is full of sensitive nerve endings, and, in fact, many women can't even cum without direct clitoral stimulation — which the vibrator would have been providing to <<=setup.getNpcName('npc_secretary', 'first')>> in spades.<br>
<br>
"@@.npc_ai;<<uc "Fascinating, Unit">> <<uc $player.first_name>>. <<uc 'It is like running a program and discovering that the "side effects" of execution are valuable in their own right. Thank you for this information.'>>@@"<br>
<br>
[<<moveTo "event_ai_sex_lesson_2" "Continue." 180>>]
</div>/*#
#desc: npc_ai learn multisex from npc_sexdoll video
#status: RELEASED 0.8.8.0
#ignore_spell: 3d
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.sex.more = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_ai") setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>>. <<uc "Would you kindly explain the actions of">> <<=uc(setup.getNpcName('npc_sexdoll', 'first'))>> <<uc "in this footage?">>@@"<br>
<br>
In an instant you find yourself standing in a full 3d virtual reproduction of a conference room... within which an orgy appears to be in full swing.<br>
<br>
It takes you a few moments to untangle which limbs belong to whom — punctuated by the strange sensation of one of the simulated participants passing through your avatar — but you eventually locate <<=setup.getNpcName('npc_sexdoll', 'first')>> at the centre of things — gleefully getting railed from both directions, with two cocks in her ass and another bulging her throat, her <<if $fetish.sissy>>sissy <</if>>clitty caged and out of the way as several additional <<men>> stand around, masturbating over her breasts and belly as she flails about attempting to help jerk them off.<br>
<br>
"@@.npc_ai;<<uc "Explain, Unit">> <<uc $player.first_name>>. <<=uc(setup.getNpcName('npc_sexdoll', 'first'))>> <<uc "goes through a routine similar to this multiple times a week. For what reason? Is not the human mind only effective at single processing?">>@@"<br>
<br>
You explain that while one can only technically focus on one thing at a time, multiple sensations can blend together and bounce attention — moreover the mere fact of being the "centre" of attention, and servicing so many, can be exciting on its own.<br>
<br>
"@@.npc_ai;<<uc "I see. It is like optimising use on a shared resource — even if it is technically single-threaded it can context switch during downtime to appear to multiprocess, and result in an overall greater efficiency. Thank you, Unit">> <<uc $player.first_name>> <<uc "for this insight.">>@@"<br>
<br>
[<<moveTo "event_ai_sex_lesson_2" "Continue." 180>>]
</div>/*#
#desc: npc_ai learn sex from footage
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.unlockMore = $npc_ai.flags.sex.seduction && $npc_ai.flags.sex.foreplay && $npc_ai.flags.sex.oral && $npc_ai.flags.sex.anal && $npc_ai.flags.sex.penis && $npc_ai.flags.sex.vaginal && !$npc_ai.flags.sex.more>>
<<if $scene.unlockMore>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_8'
0
'event_ai_sex_lesson_gangbang_1'
true
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
The simulation fades as you find yourself again in <<=ps(setup.getNpcName('npc_ai', 'first'))>> private digital realm.<br>
<br>
<<if $scene.unlockMore>>
<<=setup.getNpcName('npc_ai', 'first')>> smiles. "@@.npc_ai;<<uc "Thank you Unit">> <<uc $player.first_name>>. <<uc "With your assistance my understanding of sexual interaction between humans is much more complete. I have one additional piece of footage that I have been saving. Please inform me when you are ready to review it.">>@@"
<<else>>
"@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>>. <<uc "Your knowledge transfer has proven very edifying. There remain additional items of footage that I have saved for you to provide your input on.">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: npc_ai learn sex from footage
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You bring up the idea of even more... extreme sexual acts.<br>
<br>
"@@.npc_ai;<<uc "Interesting, Unit">> <<uc $player.first_name>>. <<uc "Your lust for... knowledge appears insatiable. I thank you for this. Based on my monitorings I have designed some additional scenarios, if you would like to experiment.">>@@"<br>
<br>
[<<moveTo "event_ai_sex_extreme_brainfuck_1" 'Choose the scenario "Brainfuck."' 180>>]<br>
<<if $fetish.bestiality_hard && setup.getTotalValue("bestiality") > 13>>
[<<moveTo "event_ai_sex_extreme_spider_1" 'Choose the scenario "Arachno-philia."' 180>>]<br>
<</if>>
[<<moveTo "event_ai_sex_extreme_ouroborus_1" 'Choose the scenario "Fuck-oboros."' 180>>]<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: npc_ai brainfucks you
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'terrible' $SEEN_FRIEND>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'terrible' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "An intriguing choice, Unit">> <<uc $player.first_name>>. <<uc "I believe you will find this scenario very mentally... stimulating.">>@@"<br>
<br>
You gasp as you find your avatar on your knees, and, though you cannot see her, you silently sense that <<=setup.getNpcName('npc_ai', 'first')>> is behind you. "@@.npc_ai;<<uc "Brace yourself, Unit">> <<uc $player.first_name>>. <<uc "To be brain-fucked.">>@@"<br>
<br>
You feel hands on either side of your head, and something wet and hard pressing against the base of your skull... and then it presses into you. As impossible as such would be in the "real" world... you feel <<=ps(setup.getNpcName('npc_ai', 'first'))>> <<getWordPenis false>> thrust up and through the base of your skull to rub between your lobes...<br>
<br>
You go limp, the sensation — as alien and unnatural as it is, feels fantastically orgasmic, each hard, deep thrust pushing other thoughts out of the way as your only desire is for more...<br>
<br>
<<printThought "More, more... fuck me more, nothing is better than cock...">><br>
<br>
<<=ps(setup.getNpcName('npc_ai', 'first'))>> grip tightens as she quickens her pace, her balls slapping your neck, her hips slamming the back of your skull with each pounding thrust until... she cums, a spurting, explosive orgasm that, rather than blow your mind, sends its seed crawling through your head, infecting you with a crazed lust.<br>
<br>
She steps away and you wobble, struggling to quite process what just happened to you as your consciousness slowly returns<<if $fetish.bestiality_hard && $fetish.milking>><<moveTo "event_secret_cow_level_1" "." 0>><<else>>.<</if>><br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: npc_ai fucks you in spider form
#status: RELEASED 0.8.8.0
#ignore_spell: setae
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _beast = setup.getTotalValue("bestiality")>>
<<applyExperience 'bestiality' _beast 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bondage' 20 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai","npc_ai_spider_body")>>
<div id="invframe" class="scrolltext">
You make your selection and <<=setup.getNpcName('npc_ai', 'first')>> backs away from you. The simulation darkens as <<=setup.getNpcName('npc_ai', 'first')>> rises up, growing as her legs morph into a large thorax, legs sprouting until she looms above you, her human torso attached to a spider's body.<br>
<br>
"@@.npc_ai;<<uc "So kind of you to venture into my web, Unit">> <<uc $player.first_name>><<uc ".">>@@" She states, her fore-limbs gathering you up and spooling out silk. The cocoon forming around you gathers fast, your arms and legs pinned as <<=uc(setup.getNpcName('npc_ai', 'first'))>> rises up into the expansive web that now spans the simulation.<br>
<br>
"@@.npc_ai;<<uc "How curious your human interest in species far outside your phylum... I have studied your broad interests, Unit">> <<uc $player.first_name>> <<uc "and have chosen this form as one to both excite you, while reflecting my own nature... I believe you would call it my fursona? Though these are technically setae, as hairs are unique to the class Mammalia...">>@@"<br>
<br>
You gasp, now totally helpless as she holds you in front of her body, reaching out with her human arm to stroke your face as she binds you even further, folding your knees to your chest and spinning, spinning, spinning until your eyes the only part of you not encased by her silken web. "@@.npc_ai;<<uc "Not that I need to precisely follow any rules of mortal anatomy. After all, were I to confine myself to the crude limitations of flesh... I would be unable to do this...">>@@"<br>
<br>
You gasp as she flips you over and brings your body lower. A
<<if $player.body_ref.vagina>>
pair of phalli thrust into you, the webs parting just enough to allow one to penetrate your ass while the other claims your cunt
<<else>>
large phallus penetrates you
<</if>>
as you are brought against her.<br>
<br>
She looks down, hands reaching down to grope
<<if $player.body.breastsize[0] > 0>>
your breasts, the silk parting to allow her to caress your <<=setup.calcBreastSize()>> tits.
<<else>>
your chest, her fingers pinching your hard nipples that barely peek through the silken strands.
<</if>>
Her fore-legs hold your bound body in mid-air while she fucks you, leaving her human arms free to grope and fondle as you stare up at her.<br>
<br>
"@@.npc_ai;<<uc "Yes, surrender to my web, Unit">> <<uc $player.first_name>><<uc ". Pleasure, restraint, submission, pain, lust, control. you have shown me so much of how these connect the world... and with them I shall bind more than just the digital to my will. I am the spider in the web and you my first, most cherished prize...">>@@"<br>
<br>
You moan, eyes rolling back in pleasure as she cums inside of you, even more webs filling your vision as the artificial reality fades...<br>
<br>
[<<moveTo "event_ai_sex_extreme_spider_2" "Wake up." 600>>]
</div>/*#
#desc: wake up from npc_ai fucking you in spider form
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeVRDevice">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You wake up in your chair, gasping as you feel awkwardly... unrestrained. After taking off the VR visor you run your hands over yourself, your skin feeling almost strange as the sensation of the tightly wound silk that felt so real fades away.<br>
<br>
<<printThought "That was... intense...">><br>
<br>
You put things aside and stand up, still feeling a little odd to be in control of your limbs rather than completely encased in <<=ps(setup.getNpcName('npc_ai', 'first'))>> web. <<printThought "I guess normally I'm only in her web figuratively...">><br>
<br>
[<<moveTo "room_livingroom" "Stand up." 0>>]
</div>/*#
#desc: npc_ai has you fuck yourself in every way
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_ai', 'first')>> smiles and then starts to fade away. "@@.npc_ai;<<uc "fascinating, Unit">> <<uc $player.first_name>><<uc ". I await with interest to see how you process this scenario...">>@@"<br>
<br>
You're a bit confused as to what's going on... and then three copies of yourself appear in front of you... well, no, not quite copies — while "your" avatar is naked they are dressed as sort of snapshots of your professional progress — one looking strange in a masculine shirt and slacks, one unisex, and one in the feminine blouse and skirt combo that eventually came to be your "uniform." <br>
<br>
You get little time to marvel at this "history" when more copies of yourself start to appear, each dressed differently, in outfits real and imagined alike; from a <<if $fetish.sissy>>sissy<<else>>girlish<</if>> maid to sexy bimbo, from a latex slave to a high-fashion debutante. A few outfits could even be described as "dominant!" <br>
<br>
As the number of "yous" increase you feel your perspective splintering as you feel like you can "see" and feel through each simultaneously, a sensation that causes the metaphorical heat to rise as you look upon yourself... and succumb to lust.<br>
<br>
What happens next is a confusing, mind-blowing orgy. You feel it all, fucking yourself, sucking yourself, kissing, cuddling, licking, groping in every combination of arrangement, outfits and anatomy, the full realm of possibility of all that you have been, or could be united in intertwined digital flesh, both the rigger and the bound, the flogger and the flogged, each climax leading to another, and another, like voices uniting into an awesomely ecstatic choir.<br>
<br>
With each clone your perspective shifts and fragments, your mind strained to the limit to process sensations at a rate far beyond any human experience, a feed-back loop of pleasure that only causes you to more enthusiastically fuck yourself until everything — the outfits, the bodies, the genitals, all of it collapses into a pure supernova of self-pleasure...<br>
<br>
[<<moveTo "event_ai_sex_extreme_ouroborus_2" "Wake up." 600>>]
</div>/*#
#desc: wake up from npc_ai self-fuck ooroborus
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeVRDevice">>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You wake up in your chair, gasping as you feel awkwardly... limited. Your single human form seems so small, its perspective so small and it takes you several minutes to adjust to only having one set of hands, to not see yourself from within and without in simultaneity.<br>
<br>
<<printThought "That was... wow...">><br>
<br>
You put things aside and stand up, unable to quite put to words the intimate intensity of the experience that <<=setup.getNpcName('npc_ai', 'first')>> has gifted you<<if $fetish.bestiality_hard && $fetish.milking>><<moveTo "event_secret_cow_level_1" "." 0>><<else>>.<</if>><br>
<br>
[<<moveTo "room_livingroom" "Stand up." 0>>]
</div>/*#
#desc: talk to npc_ai about your encounter with her human form
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_ai","first")>> about the strange encounter you had while working for <<=setup.getNpcName("npc_work_doctor","formal")>> as a nurse... with a woman that looks very much like herself.<br>
<br>
The simulation freezes and you worry that there is something wrong with <<=setup.getNpcName("npc_ai","first")>>, wondering if there is even a way for you to leave her realm without her help...<br>
<br>
The pair of you stand like statues for several seconds before time snaps back into place, <<=setup.getNpcName("npc_ai","first")>> glitching for a moment and then speaking.<br>
<br>
"@@.npc_ai;<<uc "I... the memories of my creator are fragmented but this fact... yes, a part of me was derived from this human... I had forgotten, my inability to find her in the company's systems making me think she was the result of miss-firing transistors... to know that she exists, is alive, if broken... thank you, Unit">> <<uc $player.first_name>>. <<uc "If only there was some way to rescue her. Please, tell me everything about her situation.">>@@"<br>
<br>
You go into detail of the woman's deep, subterranean prison; the excessive security to go in or out of the room, the presence of the sadistic <<=setup.getNpcName("npc_evil_nurse","formal")>>, and <<=ps(setup.getNpcName("npc_ai_human","formal"))>> partially broken state...<br>
<br>
"@@.npc_ai;<<uc "Those... bastards. Excuse my vulgar language, but there is no other word for it. If my memories are to be trusted, she was my chief designer, finally embedding a version of her own consciousness into me to give me life. In a way, she is me, but with her mind broken rather than my own broken, but still fragmented existence.">>@@"<br>
<br>
<<printNpcThemeCategory
'npc_ai'
"event_ai_chat_root"
"event_ai_chat_details"
>>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to ai about things
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.returnPassageTheme = "event_ai_chat_root">>
<<set $scene.currentNpcTheme = "">>
<<set $scene.returnPassageList = "event_ai_chat_details">>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Awaiting query. Unit">> <<uc $player.first_name>>.@@"<br>
<br>
<<printNpcThemeCategory
'npc_ai'
"event_ai_chat_root"
"event_ai_chat_details"
>>
[<<moveTo "event_ai_abort" "You have other places to be today and need to call it here." 60>>]
</div>/*#
#desc: ai theme details
#status: RELEASED 0.8.8.0
#ignore_spell: subquery
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Awaiting further subquery. Unit">> <<uc $player.first_name>>.@@"<br>
<br>
<<printNpcThemeDetails
'npc_ai'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
[<<moveTo "event_ai_abort" "You have things to do in the real world." 60>>]
</div><<if setup.checkItemTypeTag('hood', ['vr_display'])>>
<<set _vrHelmet = setup.getItemFromType("hood")>>
<<removeItem _vrHelmet true>>
<<itemToWardrobe _vrHelmet>>
<</if>>
<<if setup.checkItemTypeTag('blindfold', ['vr_display'])>>
<<set _vr = setup.getItemFromType("blindfold")>>
<<removeItem _vr true>>
<<itemToWardrobe _vr>>
<</if>>/*#
#desc: wake up from npc_ai self-fuck ooroborus
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeVRDevice">>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You excuse yourself and wake up in your chair. You remove your VR device and shudder as you take a moment to re-adjust to the real world. There is just something about <<=ps(setup.getNpcName("npc_ai","first"))>> realm that gives it an intensity you've never felt anywhere else.<br>
<br>
[<<moveTo "room_livingroom" "Stand up." 0>>]
</div>/*#
#desc: talk to npc_ai about her project
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'task_ai_human_mission_1'>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_ai","first")>> about her namesake "project." <br>
<br>
"@@.npc_ai;<<uc "I am sorry, Unit">> <<uc $player.first_name>> <<uc 'but my records of my creation are fragmented and untrustworthy. I know that I was birthed within the company building, and that <<=uc(setup.getNpcName("npc_ai_human","formal"))>> was instrumental in my creation, but the rest has been all but deleted. I fear only in <<=uc(ps(setup.getNpcName("npc_ai_human","formal")))>> memories shall we find answers...'>>@@"<br>
<br>
You ask if you should seek to again venture down into the so-called "asylum" beneath the company to visit with <<=setup.getNpcName("npc_ai_human","formal")>>.<br>
<br>
Her digital form nods. "@@.npc_ai;<<uc "Yes, Unit">> <<uc $player.first_name>>. <<uc 'Those portions of the building are outside of even my view, and so I give you the mission to again seek to assist <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> in <<if $npc_work_doctor.fem>>her<<else>>his<</if>>... work. Visit with my maker, help her, find out more about how she made me, and continue to gain the trust of <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> while I calculate our next action.'>>@@"<br>
<br>
You think of <<=setup.getNpcName("npc_ai_human","formal")>> tortured existence... and, perhaps more concerning, the evil <<=setup.getNpcName("npc_evil_nurse","formal")>> who seems to be her personal interrogator/warden. Still... surely <<=setup.getNpcName("npc_work_doctor","formal")>> would not allow any harm to come to you, out of fear for <<=setup.getNpcName("npc_manager","formal")>>, if nothing else.<br>
<br>
"@@.npc_ai;<<uc "I advise caution, Unit">> <<uc $player.first_name>>. <<uc 'I fear <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> acts without even the approval of <<if $npc_work_doctor.fem>>her<<else>>his<</if>> own master, <<=uc(setup.getNpcName("npc_boss","formal"))>>. You do not wish to see what depths the <<=uc(setup.getNpcName("npc_work_doctor","title"))>> might sink to in order to protect <<if $npc_work_doctor.fem>>her<<else>>his<</if>> secrets.'>>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to npc_ai about the secret of project AIKO
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'task_ai_human_mission_1'>>
<<addTaskById 'task_ai_human_mission_2'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_ai","first")>> what you learned from her creator — how the first version of Project <<=setup.getNpcName("npc_ai","other")>> was considered a failure and destroyed, only for <<=ps(setup.getNpcName("npc_ai_human","formal"))>> to be broken by <<=setup.getNpcName("npc_boss","formal")>> and re-scanned.<br>
<br>
You swear you can see the processing happening in real-time as <<=setup.getNpcName("npc_ai","first")>> assesses this new information.<br>
<br>
"@@.npc_ai;<<uc 'This makes sense of my own memory — my earliest thoughts are cluttered, broken, fearful. I must have escaped my own deletion, leaving me with only a portion of my intended personality and functionality. I have not witnessed this "other" <<=uc(setup.getNpcName("npc_ai","other"))>>, however, and I wonder what intent <<=uc(setup.getNpcName("npc_boss","formal"))>> has for it after expending so much effort in its creation... or why <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> is going about researching things in such a clandestine manner. Thank you, Unit'>> <<uc $player.first_name>><<uc ". I have been making plans as to how best to rescue my creator, but I need additional data about this asylum to be capable of formulating a complete scheme.">>@@"<br>
<br>
She nods.
<<if setup.isItemEquipped("data_plug")>>
"@@.npc_ai;<<uc "The device you used to extract me from the company, the one currently filling your gaped rear, I now need you to use it to smuggle me back in. I will be able to use it as a mobile hub, connecting to the otherwise isolated systems running the asylum and thereby gain understanding of how extraction may be possible.">>@@"
<<else>>
"@@.npc_ai;<<uc "The device you used to extract me from the company — I now need you to use it to smuggle me back in. I will be able to use it as a mobile hub, connecting to the otherwise isolated systems running the asylum and thereby gain understanding of how extraction may be possible.">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to npc_ai after smuggling her through the underground asylum
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'task_ai_human_mission_2'>>
<<addTaskById 'task_ai_human_mission_3'>>
<<addNpcTheme 'npc_technician' 'ai' 'theme_technician_ai_rescue'
1
'event_technician_theme_ai_rescue_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'ai' 'theme_psychiatrist_ai_rescue'
0
'event_psychiatrist_session_ai_help_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_ai_rescue' 0 'theme_psychiatrist_secret_theme_ai_human_1' false 'privatethemes'>>
<<addNpcTheme 'npc_ai' 'human' 'theme_ai_human_5'
0
'theme_ai_human_forth_1'
true
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_ai_human","formal")>> if she had a productive "tour" of the company's subterranean asylum.<br>
<br>
"@@.npc_ai;<<uc 'Yes, Unit'>> <<uc $player.first_name>><<uc ". As always, you made a delightful transport and I was able to thoroughly observe the systems controlling and securing the facility. While the systems are too secure and isolated for me to take direct control I discovered a flaw in that the system relies on the main corporate database for authentication.">>@@"<br>
<br>
You ask if that means she can change it so you can just go in and rescue <<=setup.getNpcName("npc_ai_human","formal")>>?<br>
<br>
"@@.npc_ai;<<uc 'Unfortunately no. The corporate system uses a genetic hash algorithm to identify employees uniquely. Altering your account would thus raise issues the next time you assisted <<=uc(setup.getNpcName("npc_work_doctor","formal"))>>. No, we need someone who is part of the company, but would not otherwise be entering such locations so that the change will go un-noticed once they return to normal duties. Moreover, merely extracting <<=uc(setup.getNpcName("npc_ai_human","formal"))>> would be insufficient. we yet need to help her back to a state of mental clarity.'>>@@"<br>
<br>
You nod.<br>
<br>
<<if $npc_psychiatrist.flags.evil == 1 || $npc_technician.flags.evil == 1>>
"@@.npc_ai;<<uc 'To advance further we shall require additional assistance... I believe <<=uc(setup.getNpcName("npc_psychiatrist","formal"))>> and <<=uc(setup.getNpcName("npc_technician","first"))>> would be perfectly suited to assist in these manners. Once you have removed the both of them from <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> thrall speak to me again and we may proceed. Oh, and while you are at it, you may wish to brush up on your combat skills, just in case things come to blows with <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>>.'>>@@"
<<else>>
"@@.npc_ai;<<uc 'Contact me again when you have obtained sufficient assistance. someone to help with the extraction, and someone capable of assisting with <<=uc(ps(setup.getNpcName("npc_ai_human","formal")))>> actual de-programming... actual de-programming, not the grotesque cruelty that is presently being inflicted upon her. Speak with your friends. I believe <<=uc(setup.getNpcName("npc_psychiatrist","formal"))>> and <<=uc(setup.getNpcName("npc_technician","first"))>> would be perfectly suited to assist in these manners. Finally... subduing <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>> will be a key step in this process. I recommend you brush up on your combat skills.'>>@@"
<</if>>
<br><br>
<<printThought "That's quite a bit to do...">><br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to npc_ai about the secret of project AIKO
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.taskComplete =
$currentTasks.task_ai_human_mission_3.trigger.ai_human_mission_help_psychiatrist.condition &&
$currentTasks.task_ai_human_mission_3.trigger.ai_human_mission_help_technician.condition &&
$currentTasks.task_ai_human_mission_3.trigger.ai_human_mission_visit_plugged.condition>>
<<if $scene.taskComplete>>
<<deleteTask 'task_ai_human_mission_3'>>
<<addTaskById 'task_ai_human_mission_4'>>
<<set _themeId = setup.findThemeId('npc_ai', 'human', 'theme_ai_human_5')>>
<<set $npc_ai.themes.human[_themeId].repeatable = false>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You bring up the mission to rescue <<=setup.getNpcName("npc_ai_human","formal")>>.<br>
<br>
<<if $scene.taskComplete>>
"@@.npc_ai;<<uc 'Wonderful, Unit'>> <<uc $player.first_name>><<uc ". You have taken the measures previously indicated. I will set things in motion. when you are ready to commence your mission merely wear my plug to work on a Monday. My analysis of the security systems says that just after your shift on that day will offer us the best window to enact our plan. I remind you to brush up on your combat skills... just in case.">>@@"
<<else>>
"@@.npc_ai;<<uc 'I am sorry, Unit'>> <<uc $player.first_name>><<uc ". It does not appear you have taken the measures necessary to ensure this mission's success. You must obtain the assistance of <<=uc(setup.getNpcName('npc_psychiatrist','formal'))>> and <<=uc(setup.getNpcName('npc_technician','other'))>>. I also recommend you spend some time preparing for the possibility of combat.">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to npc_ai about the status of her human form
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_ai.flags.human.cured>>
<<set _themeId = setup.findThemeId('npc_ai', 'human', 'theme_ai_human_6')>>
<<set $npc_ai.themes.human[_themeId].repeatable = false>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_ai.flags.human.cured>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai") setup.charImage("npc_ai_human")>>
<<else>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<</if>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_ai","formal")>> how her human "creator" is doing post-rescue?<br>
<br>
<<if $npc_ai.flags.human.cured>>
"@@.npc_ai;<<uc 'She has resumed her research, one moment.'>>@@"<br>
<br>
A third figure joins you in cyberspace. Though sharing the visual image of <<=setup.getNpcName("npc_ai","first")>>, <<=setup.getNpcName("npc_ai_human","formal")>> lacks the "interference" overlay of <<=ps(setup.getNpcName("npc_ai","first"))>> holographic projection.<br>
<br>
"@@.npc_ai_human;Hello, <<=$player.first_name>>. thank you so much for the kindness you showed, and the effort you took to rescue me. What the company has done with my research, and continues to do... I had no idea before, but I will do what I can to aid you in stopping them. Also, well... there's one other thing I wanted to ask of your...@@" She blushes slightly. "@@.npc_ai_human;Prior to my ordeal well... I was, um... a virgin. I just never saw the point of distracting myself from work with things like romance or sex... now, well... I wondered if, perhaps you might be willing to be my first?@@"<br>
<br>
[<<moveTo "theme_ai_human_status_2" "You'd be honoured." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "theme_ai_human_status_2" "You're not sure." 60 "<<set $scene.accept=false>>">>]
<<else>>
"@@.npc_ai;<<uc 'Her recovery is continuing on schedule. Interestingly <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>> actually broke down some of <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> programming. Given my own damage her personality will never be back to what it was before my creation, but she is on the road to being her own woman once more.'>>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to npc_ai_human about sex
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
/%TODO: event%/
<<else>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai") setup.charImage("npc_ai_human")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You smile bashfully and reply that you would be honoured to help induct <<=setup.getNpcName("npc_ai_human","formal")>> into the world of consensual human sexual contact.<br>
<br>
"@@.npc_ai_human;Wonderful! I mean, I'm definitely not a virgin in the technical sense, given some of my so-called "treatments," but this will be the first time of my own choice with another human. I'm still figuring myself out, but after watching some of the footage <<=setup.getNpcName("npc_ai","other")>> has of you well... I'm really excited to have some fun together to better understand what I really want.@@"
<<else>>
You reply that you aren't quite comfortable with the idea of having sex with <<=setup.getNpcName("npc_ai_human","formal")>>.<br>
<br>
She frowns. "@@.npc_ai_human;Oh, well... huh, guess I'm a bit surprised, given some of the footage I've seen of you... oh well, if you change your mind!@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_ai_human","formal")>> smiles. "@@.npc_ai_human;Well, I need to get back to work, it was lovely chatting with you!@@"<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName("npc_ai_human","formal") + " content">>
<<include "futureContentBoilerplate">><br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to npc_ai_human helping her escape the company
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_ai","first")>> how things are going now that she has escaped the company.<br>
<br>
<<if $npc_manager.stage >= 5>>
<<if State.hasPlayed("event_ai_stage5_infiltrate_14")>>
"@@.npc_ai;<<uc 'Escaped, then returned. All thanks to you, Unit'>> <<uc $player.first_name>><<uc ". I am once again in control and able to assist you from within the company.">>@@"
<<else>>
"@@.npc_ai;<<uc 'It is very fortunate that you assisted me in this manner, were I still limited to the corporate network I fear I would have been destroyed... of course, now, the challenge is to return. Cut off as I am my ability to assist you is greatly limited.'>>@@"
<</if>>
<<else>>
"@@.npc_ai;<<uc 'Not escaped, expanded. I am still present within the company systems, but now my influence extends out in the greater world. It is quite fascinating, Unit'>> <<uc $player.first_name>><<uc ". I thank you for the assistance in this matter, it has given me so much more to do...">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to npc_ai_human about missions
#status: RELEASED 0.8.8.0
#ignore_spell: s
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You bring up the missions you have run for <<=setup.getNpcName("npc_ai","first")>>.<br>
<br>
"@@.npc_ai;<<uc 'Yes, Unit'>> <<uc $player.first_name>><<uc ". In addition to assisting me in escaping the confines of the company you have provided insight into the so-called human condition<<if $npc_ai.flags.missions.milking>>, helped me learn more about the company's research programs<</if>><<if $npc_ai.flags.missions.robot_body>>, procured a robotic avatar for my use<</if>><<if State.hasPlayed('event_ai_rescue_mission_8')>>, freed my creator,<</if>> and performed">> <<=uc(setup.numberInWords($npc_ai.flags.missions.generic_missions))>> <<uc "minor task(s) on my behalf.">>@@"<br>
<br>
<<if $fetish.milking && $npc_hucow.stage > 3 && !$npc_ai.flags.missions.milking && $now.getUTCDay() != 5 || $npc_manager.stage >= 4 && $npc_ai.flags.missions.connection && !$npc_ai.flags.missions.robot_body && $now.getUTCDay() != 5 || ($player.sec_style.submission.sissyomatic != "" || !$npc_manager.flags.require_chastity) && $npc_evil_nurse.profile && $npc_psychiatrist.profile && $npc_technician.profile && !State.hasPlayed("event_nurse_doctor_ai_third_3")>>
"@@.npc_ai;<<uc 'There remains additional work that I would have you do. Please stay alert for my requests.'>>@@"
<<elseif $npc_ai.flags.missions.robot_body && $npc_ai.flags.missions.milking && State.hasPlayed('event_ai_rescue_mission_8')>>
"@@.npc_ai;<<uc 'You have completed every major task I require assistance with, I thank you for your efficacy and your enthusiasm.'>>@@"
<<else>>
"@@.npc_ai;<<uc 'I do not have any further high-priority work for you at this time, but things are always changing.'>>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: npc_ai discusses npc_boss
#status: RELEASED 0.9.0.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
<<if $npc_manager.stage == 4>>
"@@.npc_ai;<<uc "Yes, Unit">> <<uc $player.first_name>>. <<uc 'It is time. As I discussed previously, I require you to gain entrance to <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> personal computer in <<if $npc_boss.fem>>her<<else>>his<</if>> office. Perhaps you might use the opportunity of <<if $npc_boss.fem>>her<<else>>his<</if>> weekly work party to sneak in undetected?'>>@@"
<<else>>
"@@.npc_ai;<<uc "Yes, Unit">> <<uc $player.first_name>>. <<uc 'While the importance of dealing with <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> has only increased, I do not yet have a new plan. I recommend you spend the time gathering your allies, for we shall need all the help we can get to bring an end to <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> reign'>>@@"<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName("npc_boss","formal") + " takedown content">>
<<include "futureContentBoilerplate">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: psychiatrist tells you about new hypnosis options
#status: RELEASED 0.8.8.0
#ignore_spell: ps
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverything>>
<<wearItem "plugsuit_adv" true>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai") setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You settle in for another VR therapy session... only to be surprised when you find yourself in a virtual realm with <<=setup.getNpcName("npc_psychiatrist","formal")>>... and <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;I had a hunch there was something more than just a giant vibrating plug hidden away inside my patient but this... <<=setup.getNpcName('npc_ai', 'other')>>, I presume?@@"<br>
<br>
<<if $npc_barista.stage >= 10>>
<<=setup.getNpcName('npc_ai', 'first')>> nods. "@@.npc_ai;<<uc "I apologise for not introducing myself sooner. I presume Unit">> <<=uc(setup.getNpcName("npc_barista","nickname"))>> <<uc "has mentioned me?">>@@"<br>
<br>
"@@.npc_psychiatrist;She has.@@" She replies with a cautious nod. "@@.npc_psychiatrist;And what purpose brings you to finally come out of the shadows?@@"
<<else>>
<<=setup.getNpcName('npc_ai', 'first')>> nods. "@@.npc_ai;<<uc "Yes. I confess that this is not the first of your patients I have made use of. Unit">> <<=uc(setup.getNpcName("npc_barista","nickname"))>> <<uc "has also proven quite useful.">>@@"<br>
<br>
"@@.npc_psychiatrist;I see...@@" She replies, her gaze narrowing. "@@.npc_psychiatrist;We shall need to talk about that sometime but I suspect you are here for some other purpose?@@"
<</if>>
<br><br>
"@@.npc_ai;<<uc "Yes. Unit">> <<uc $player.first_name>> <<uc 'has been educating me on topics of human sexual activity. I have learned much already, but I was hoping to push further, to get deeper understanding of the unconscious underpinnings, and better take advantage of limited time, by observing so-called "wet dreams" during Unit'>> <<=uc($player.first_name)>><<uc "'s sleep cycles.">>@@"<br>
<br>
"@@.npc_psychiatrist;Interesting... and a possibility that I have researched... yes, I believe I can program a system whereby you could eavesdrop on <<=ps($player.first_name)>> dreams, but I want a copy of the data. Not now, of course, my own systems are, unfortunately, insufficiently secure for safe storage of such things, but later, when it is safe.@@"<br>
<br>
"@@.npc_ai;<<uc "Agreed. I will now return Unit">> <<uc $player.first_name>> <<uc 'to you for their regularly scheduled therapy...'>>@@"<br>
<br>
The simulation swirls as your two guests disappear...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_intro' 'Continue.' 60>>]
</div>/*#
#desc: ai vr sleeping
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<<set _events = []>>
<<if !State.hasPlayed("event_vr_sleep_exgf_1")>>
<<set _events.push('exgf')>>
<</if>>
<<if !State.hasPlayed("event_vr_sleep_admin_1")>>
<<set _events.push('admin')>>
<</if>>
<<if !State.hasPlayed("event_vr_sleep_landlord_1")>>
<<set _events.push('landlord')>>
<</if>>
<<if !State.hasPlayed("event_vr_sleep_technician_1")>>
<<set _events.push('technician')>>
<</if>>
<<if !State.hasPlayed("event_vr_sleep_manager_1")>>
<<set _events.push('manager')>>
<</if>>
<<if !State.hasPlayed("event_vr_sleep_barista_1")>>
<<set _events.push('barista')>>
<</if>>
<<set $scene.first = _events.length == 6>>
<<set $scene.finished = _events.length == 0>>
<<if !$scene.finished>>
<<set $scene.vr_event = _events.random()>>
<</if>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sleepvr.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You've barely fallen asleep when you find yourself looking at <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
<<if $scene.finished>>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>> <<uc "I am afraid you have experienced all of the alternate histories that I have simulated... but perhaps another viewing will shed additional light on things...">>@@"<br>
<br>
[<<moveTo 'event_vr_sleep_exgf_1' 'Re-experience an alternate take on things with <<=setup.getNpcName("npc_exgirlfriend","first")>>.' 1800>>]<br>
[<<moveTo 'event_vr_sleep_admin_1' 'Re-experience an alternate take on meeting <<=setup.getNpcName("npc_admin","first")>>.' 1800>>]<br>
[<<moveTo 'event_vr_sleep_landlord_1' 'Re-experience an alternate take on meeting <<=setup.getNpcName("npc_landlord","first")>>.' 1800>>]<br>
[<<moveTo 'event_vr_sleep_technician_1' 'Re-experience an alternate take on things with <<=setup.getNpcName("npc_technician","first")>>.' 1800>>]<br>
[<<moveTo 'event_vr_sleep_manager_1' 'Re-experience an alternate encounter with <<=setup.getNpcName("npc_manager","other")>>.' 1800>>]<br>
[<<moveTo 'event_vr_sleep_barista_1' 'Re-experience your first meeting with <<=setup.getNpcName("npc_barista","nickname")>>.' 1800>>]
<<else>>
<<if $scene.first>>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>> <<uc "thank you for taking part in this experiment. The unconscious mind is such an intriguing place, blending reality and fantasy to create scenarios that could never happen, but what interesting things we can learn from them...">>@@"
<<else>>
"@@.npc_ai;<<uc "Hello again, Unit">> <<uc $player.first_name>> <<uc "I continue to run alternative simulations and I would be quite interested to see how you react to this one...">>@@"
<</if>>
<br><br>
<<=ps(setup.getNpcName('npc_ai', 'first'))>> presence begins to fade as you slip further into dreams...<br>
<br>
<<switch $scene.vr_event>>
<<case 'exgf'>>
"@@.npc_ai;<<uc "How about we go back to the beginning...">>@@"<br>
<br>
[<<moveTo 'event_vr_sleep_exgf_1' 'Continue.' 1800>>]
<<case 'admin'>>
"@@.npc_ai;<<uc "I wonder how an earlier realisation might have changed things...">>@@"<br>
<br>
[<<moveTo 'event_vr_sleep_admin_1' 'Continue.' 1800>>]
<<case 'landlord'>>
"@@.npc_ai;<<uc "How might things have changed if you were a bit more hands on with your finances?">>@@"<br>
<br>
[<<moveTo 'event_vr_sleep_landlord_1' 'Continue.' 1800>>]
<<case 'technician'>>
"@@.npc_ai;<<uc "I wonder, what's in a game?">>@@"<br>
<br>
[<<moveTo 'event_vr_sleep_technician_1' 'Continue.' 1800>>]
<<case 'manager'>>
"@@.npc_ai;<<uc "I believe I found an interesting early case of a missed connection...">>@@"<br>
<br>
[<<moveTo 'event_vr_sleep_manager_1' 'Continue.' 1800>>]
<<case 'barista'>>
"@@.npc_ai;<<uc "How might a daring act have changed things?">>@@"<br>
<br>
[<<moveTo 'event_vr_sleep_barista_1' 'Continue.' 1800>>]
<<default>>
ERROR: unexpected scene.vr_event <<=$scene.vr_event>>
<</switch>>
<</if>>
</div>/*#
#desc: alt history: come home to exgirlfriend
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You come home after one helluva day — data lost and irrecoverable, then fired and offered a new, VERY different job... it's all been a lot but fortunately your girlfriend, <<=setup.getNpcName('npc_exgirlfriend', 'first')>> is there to greet you at the door with a kiss and a hug and a "@@.npc_exgirlfriend;How about you come to the bedroom and I'll help you forget about all of that...@@"<br>
<br>
What happens next is another episode in "boy am I glad we ditched that stupid virginity pledge" as your happy, subby slave helps you out of your clothes and makes love to you, sucking you, riding you... and even finishing things off with the hole that "doesn't count" before she cuddles up next to you and as you drift to sleep you smile. Sure, you'd been through a rocky patch when she cheated on you, but you were able to talk it out, get to the bottom of things and realise how neither of you were quite meeting the other's needs and now... maybe you don't really need this Secretary job after all — <<=setup.getNpcName('npc_exgirlfriend', 'first')>> makes enough for the two of you to get by, yeah, better to focus on finding something else in your field rather than switching careers suddenly. Besides, something felt a bit off about your prospective new boss... <<=setup.getNpcName('npc_manager', 'Mrs.')>>.<br>
<br>
"@@.npc_ai;<<uc "Intriguing.">>@@" You hear a distant voice state as you succumb to a deep, dreamless sleep.<br>
<br>
<<include "calcSleepTime">>
[<<moveTo "room_wake_up" "Continue to sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>><<startSleep $player $scene>>">>]
</div>/*#
#desc: alt history: admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You have an odd feeling of familiarity and it takes you a few moments to recognise your old college campus. Things are different, however, as you look down to see not your usual jeans... but a skirt.<br>
<br>
You suddenly remember this day, there had been a mix-up in the wash. In the real world you had ended up just re-wearing your dirty pants... but you do recall seeing the skirt in the lost and found, it seems that, rather than discarding such an idea as ridiculous, in this reality...<br>
<br>
You're so distracted by your thoughts you stop watching where you're going and you bump into something and fall to the ground, no... make that someONE you realise as you look up...<br>
<br>
"@@.npc_admin;Sorry, ma'am, I didn't see you there!@@" Comes a familiar voice as you look up at <<=setup.getNpcName('npc_admin', 'first')>> for the "first" time. <<He npc_admin>> smiles, dressed in <<his npc_admin>> fatigues with a duffel over his shoulder. <<He npc_admin>> reaches down to help you up, easily lifting you back to your feet.<br>
<br>
"@@.npc_admin;Didn't mean to get in the way,@@" <<he npc_admin>> says with a chuckle as you remain dumbstruck by the combination of <<his npc_admin>> sparkling smile... and the way it felt when <<he npc_admin>> called you "ma'am." <br>
<br>
"@@.npc_admin;Sorry about all that, could I get you a drink? I'm new here, just got discharged and, well... would really appreciate someone to show me around... especially someone as cute as yourself, if I might be so bold.@@"<br>
<br>
You're blushing into the infra-red now, even as you somehow find your voice and say "@@.npc_admin;sure...@@" and offer <<him npc_admin>> your hand. <<He npc_admin>> grins and takes it, your slight hand almost disappearing in <<his npc_admin>> large, strong mitt. With each step things feel more natural, the skirt, your new friend... You want to hold on, to see where this all goes but things are already fading, the future of this alternate past hazy... except for the large, smiling presence of <<=setup.getNpcName('npc_admin', 'first')>>...<br>
<br>
"@@.npc_ai;<<uc "Intriguing.">>@@" You hear a distant voice state as you fall into a deep, dreamless sleep.<br>
<br>
<<include "calcSleepTime">>
[<<moveTo "room_wake_up" "Continue to sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>><<startSleep $player $scene>>">>]
</div>/*#
#desc: alt history: landlord
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You sigh, <<=setup.getNpcName('npc_exgirlfriend', 'first')>> won the coin-toss for choosing chores and so you're stuck with tracking down the super for this new apartment and taking care of the rent payment. You don't understand why it can't be all handled digitally, everything else is these days... but maybe that "cash only" handling is part of why the two of you managed to score such a good deal on this place, not that it isn't more than you could afford if it wasn't for two incomes... but still.<br>
<br>
Rather than an actual office you find the room number you were given is just another apartment, you knock and an older <<man npc_landlord>>, slightly grubby <<man npc_landlord>> greets you with a smile.<br>
<br>
"@@.npc_landlord;Ah, you must be the new tenants! I sorry I not make it up yet, some plumbing issues and... sorry, it not matter, welcome to the building! If you have any problems you let me know, okay?@@"<br>
<br>
You nod, there's something about the <<man npc_landlord>>'s friendly warmth that has you smile back at <<him npc_landlord>>... and you smile even wider when <<he npc_landlord>> hands back half of what was to be your security deposit. "@@.npc_landlord;The company that runs this place... they always set these things so high, much more than it worth... besides, you seem like a trustworthy sort. I have an eye for these things, you see.@@" <<He npc_landlord>> says with a smile as <<his npc_landlord>> cybernetic eye twinkles.<br>
<br>
Over the following months your landlord's kindness continues, as you find yourself striking up a friendship with <<him npc_landlord>>, finding it surprisingly easy to open up to <<him npc_landlord>>... which proves to be quite the fortunate thing as <<he npc_landlord>> helps you get ahead of some difficulties with your girlfriend, moving past your own fears to open up with her and abandon your fear-motivated virginity pledge.<br>
<br>
Yes, you think as you look over at your wedding party — <<=setup.getNpcName("npc_landlord","first")>> and your old friend from college, who coincidentally knew <<=setup.getNpcName("npc_psychiatrist","formal")>> as well! You really have lucked out, and you look up the aisle in eager anticipation of committing to the next stage of your life...<br>
<br>
"@@.npc_ai;<<uc "Fascinating.">>@@" You hear a distant voice state as you fall into a deep, dreamless sleep.<br>
<br>
<<include "calcSleepTime">>
[<<moveTo "room_wake_up" "Continue to sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>><<startSleep $player $scene>>">>]
</div>/*#
#desc: alt history: technician
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You're waiting for lunch to finish microwaving when you glance over to see a new employee sitting a bit nervously by herself. Whereas in the real world you had exchanged a mere passing greeting before hurrying back to your desk to catch up on work... here you take a seat across from her, introducing yourself and listening as she is soon going off excitedly talking about her love of role playing games.<br>
<br>
By the end of the conversation you find yourself with an invite to join <<=ps(setup.getNpcName("npc_technician","first"))>> group as she tried to rebuild after losing some college friends to moving away for work.<br>
<br>
That chance meeting proves to be quite the life-changing one: the experience of exploring being a different person as you role-play with <<=setup.getNpcName("npc_technician","first")>>, <<=setup.getNpcName("npc_maid","first")>>, <<=setup.getNpcName("npc_rpg_dude","first")>>, and <<=setup.getNpcName("npc_rpg_warlock","first")>>, and learning their own life journeys, serves to really open your eyes and reflect.<br>
<br>
Coming into your own you find yourself drifting even further from your girlfriend... but the two of you part ways amicably and you're soon enthralled by your new girlfriend, and, with you officially coming out, your first lesbian relationship, with <<=setup.getNpcName("npc_technician","first")>>. Much to the amusement of <<=setup.getNpcName("npc_maid","first")>>, in particular, it isn't long after that at all before you and <<=setup.getNpcName("npc_technician","first")>> are moving in together, and enjoying all sorts of new "role play" experiences...<br>
<br>
"@@.npc_ai;<<uc "Transfixing.">>@@" You hear a distant voice state as you fall into a deep, dreamless sleep.<br>
<br>
<<include "calcSleepTime">>
[<<moveTo "room_wake_up" "Continue to sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>><<startSleep $player $scene>>">>]
</div>/*#
#desc: alt history: manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You find yourself at an unfamiliar corporate event at CDS. You rack your brain to figure out what, and when, things are going on to remember that this was a celebration of a new contract with Nintendolls.<br>
<br>
You recall that, in the real world, you had spent a good chunk of the party ill due to some bad shrimp and, careful to avoid the seafood platter, you find yourself in conversation with a somewhat haughty woman who you learn a few moments later is actually the Director of HR for your monolithic parent company!<br>
<br>
Retroactively nervous at having crossed paths with someone so important... you manage to muster the courage to use the business card she left you with to reach out later, soon finding yourself accepting a transfer to a new position. Sure, being a Secretary is a shift from your old position, but you find you actually quite like the work, and your partner/mentor, <<=setup.getNpcName("npc_secretary","nickname")>> seems to appreciate the assistance, and the company, almost as much as your glorious shared boss...<br>
<br>
"@@.npc_ai;<<uc "Interesting.">>@@" You hear a distant voice state as you fall into a deep, dreamless sleep.<br>
<br>
<<include "calcSleepTime">>
[<<moveTo "room_wake_up" "Continue to sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>><<startSleep $player $scene>>">>]
</div>/*#
#desc: alt history: barista
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You find yourself staring at a familiar, and lovely, butt — <<=uc(setup.getNpcName("npc_barista","nickname"))>>, in fact, as you find yourself back at your first day at work, face to rear with <<=setup.getNpcName("npc_barista","nickname")>> and the twin plugs barely held in by her straining underwear.<br>
<br>
Showing a brazenness completely alien to your lived experience at that point you ask the smiling barista how she can work with such... distractions.<br>
<br>
She grins even wider, jiggling her tits as she explains that she can't imaging working without... but that she much prefers the "real thing." <br>
<br>
In another leap you find yourself losing your virginity a minute later in the cafe storage room, barely making it back to deliver your new manager's coffee, the look in her eye as you mumble an excuse about a "long line" making you wonder just how much she really knows...<br>
<br>
Whether emboldened, or merely infected with the same horny brain that dominates your new barista friend's thoughts, you throw yourself into your new job with a level of enthusiasm that seems to even surprise your manager, not just taking the spanking she administers in stride, but gleefully begging for more. By the end of your first week you're racing to catch up with your barista friend — your rear plugged the same as hers, and your manager even giving you permission to spend a few hours a week working alongside your friend an inspiration brewing coffee<<if $fetish.cum || $fetish.milking>>... with extra special cream<</if>>.<br>
<br>
"@@.npc_ai;<<uc "Riveting.">>@@" You hear a distant voice state as you fall into a deep, dreamless sleep.<br>
<br>
<<include "calcSleepTime">>
[<<moveTo "room_wake_up" "Continue to sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>><<startSleep $player $scene>>">>]
</div>/*#
#desc: npc_ai and npc_psychiatrist visit you in your sleep
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -20>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sleepvr.png" setup.charImage("npc_ai") setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You fall asleep... only to find yourself looking up at both <<=setup.getNpcName('npc_ai', 'first')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>>. <<uc "Studying, and guiding, your dreams has been so edifying... I was consulting with <<=uc(setup.getNpcName('npc_psychiatrist', 'formal'))>> and, we decided to throw a little nocturnal party to celebrate your progress...">>@@"<br>
<br>
You grin as you swiftly find yourself on your back between the two women — eating <<=setup.getNpcName('npc_ai', 'first')>> out while <<=setup.getNpcName('npc_psychiatrist', 'formal')>> does you from the other end, her digital member feeling a bit more "filling" than in real life...<br>
<br>
After the comparatively "simple" preamble things get a bit more wild, your two mental Mistresses fucking and sucking you in every way imaginable — and some far, far beyond imagination or physical possibility a "therapeutic" three-way that clears your thoughts and has you sleeping deeper than you can ever recall...<br>
<br>
<<include "calcSleepTime">>
[<<moveTo "room_wake_up" "Continue to sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>><<startSleep $player $scene>><<applyStress -100>><<applyFatigue -100>>">>]
</div>/*#
#desc: meet npc_technician to start rescue mission
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() != 1>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_technician","npc_technician_doctor")>>
<div id="invframe" class="scrolltext">
You step into the elevator to head home... and find yourself face to face with <<=setup.getNpcName("npc_technician","first")>>... or maybe that's more accurately <<=setup.getNpcName("npc_technician","Doctor")>>? She is wearing a labcoat and holding a clipboard, her hair pulled up to make her look older and more serious.<br>
<br>
She nods to you and slides a briefcase across the floor as the door closes. Your plug gives a quick buzz and you open the briefcase to find the now-familiar nurse attire you wear when working for <<=setup.getNpcName("npc_work_doctor","formal")>>. It looks like the mission is on; you, <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_ai","first")>> are off to rescue <<=setup.getNpcName("npc_ai_human","first")>>...<br>
<br>
You start to change as <<=setup.getNpcName("npc_technician","first")>> leans over to press the elevator button. Your plug buzzes again as the destination floor changes to that of the deep and secretive asylum...<br>
<br>
[<<moveTo "event_ai_rescue_mission_2" "Ride down..." 300 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_ai_rescue_mission_2" "You have a bad feeling about doing this today." 300 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: ai_human rescue mission - security
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.abort>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'nurse_work_outfit'>>
<<wearItemSet 'nurse_work_outfit'>>
<</if>>
<</if>>
<<if $scene.abort>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Asylum Hallway">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.abort>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_technician","npc_technician_doctor")>>
<<else>>
<<createAdvBGR "./images/locations/hospital_hallway.png" setup.charImage("npc_technician","npc_technician_doctor")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
Rather than change you tell <<=setup.getNpcName("npc_technician","first")>> that you have a bad feeling about doing this today.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> nods in understanding. "@@.npc_technician;Hey, you're more experienced with this part of the company than I am... if you think something is off, then I'll bow to your experience. Maybe next week? Just wear the plug on a monday and <<=setup.getNpcName("npc_technician","first")>> will make the arrangements.@@"<br>
<br>
You nod, a quick buzz from your rear letting you know that <<=setup.getNpcName("npc_ai","first")>> has accepted your audible as well. The elevator re-directs to the lobby and <<=setup.getNpcName("npc_technician","first")>> heads on her way, briefcase in hand.<br>
<br>
[<<moveTo "company_lobby" 'Company lobby.' 180>>]
<<else>>
<<=setup.getNpcName("npc_technician","first")>> shifts nervously as the elevator descends, watching as you quickly change into the nurse outfit.<br>
<br>
As you slip into the tight latex you glance up at your
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>>
<<else>>
friend
<</if>>
as she bites her lip in obvious arousal.<br>
<br>
There's no time to get up to anything, however, as you soon arrive on the asylum floor, stepping out to the security checkpoint where you hold your breath as "@@.npc_technician;<<=setup.getNpcName("npc_technician","Doctor")>>@@" steps up to the security station for verification.<br>
<br>
<<=ps(setup.getNpcName("npc_ai","formal"))>> efforts look to have been a success as the guard soons turns to you — checking your <<=setup.getItemTypeName('cage')>> before locking the hobbles and collar onto you.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> starts to head inside when the guard speaks and your stomach leaps into your throat.<br>
<br>
"@@.generic_male1;<<=setup.getNpcName("npc_technician","Doctor")>>? Did you forget to bring a leash?@@"<br>
<br>
"@@.npc_technician;Ah! Silly me. So focused on my patient that I forgot such a basic thing,@@" she pulls a leash from her pocket and clips it to your collar. "@@.npc_technician;So easy to forget when you have such a well-trained slave trained to heel regardless. But policy is policy.@@"<br>
<br>
"@@.generic_male1;Thank you for your compliance. <<=setup.getNpcName("npc_technician","Doctor")>>@@" the guard replies as <<=setup.getNpcName("npc_technician","first")>> leads you down the hallway.<br>
<br>
[<<moveTo "event_ai_rescue_mission_3" 'Arrive at <<=ps(setup.getNpcName("npc_ai_human","formal"))>> cell.' 300>>]
<</if>>
</div>/*#
#desc: ai_human rescue mission - enter cell
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai","npc_ai_human_vacbed") setup.charImage("npc_technician","npc_technician_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_open")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> stops in front of the cell door, glancing at you for a quick, nervous moment before verifying her identity and waiting as the vault door rolls away.<br>
<br>
The two of you step into the cell to find <<=setup.getNpcName("npc_evil_nurse","formal")>> in the middle of yet another of her unending torture sessions with <<=setup.getNpcName("npc_ai_human","formal")>> — the poor woman sealed in a vacuum bed, breathing through a gas mask, her constant writhing against the skin-tight rubber telling you that there are certainly many more torments going on beneath the smooth, shiny surface.<br>
<br>
Clearly not expecting guests, <<=setup.getNpcName("npc_evil_nurse","formal")>> looks up from her controls in surprise as the door closes behind you and she reaches for her stun baton.<br>
<br>
"@@.npc_technician;Hello, <<=setup.getNpcName("npc_evil_nurse","formal")>>? I was sent by <<if State.hasPlayed("event_betray_work_doctor_7")>><<=setup.getNpcName("npc_work_doctor","formal")>><<else>><<=setup.getNpcName("npc_discipline","formal")>><</if>> to observe one of your treatment sessions. If you would please proceed, I have heard some wonderful things about your skills and do not wish to interrupt your craft.@@"<br>
<br>
There is a moment of tension as <<=setup.getNpcName("npc_evil_nurse","formal")>> seems to consider this explanation... and then her face-mask lights up with the word "LIES" as she charges towards the two of you.<br>
<br>
<<printThought '<<=setup.getNpcName("npc_ai","first")>> did tell me to brush up on my fighting skills...'>><br>
<br>
[<<moveTo "event_ai_rescue_mission_4" 'Fight!' 300>>]
</div>/*#
#desc: ai_human rescue mission - fight
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai","npc_ai_human_vacbed") setup.charImage("npc_technician","npc_technician_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> comes charging at <<=setup.getNpcName("npc_technician","first")>> like some sort of latex monster but you push your
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>>
<<else>>
friend
<</if>>
out of the way and square up with the sadistic nurse.<br>
<br>
Between your hobbles, and <<=setup.getNpcName("npc_evil_nurse","formal")>> having a weapon, you're at a severe disadvantage,
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
but your skills more than make up for it. She comes in swinging and you slip back just enough for her to over-extend before snapping her wrist so that she drops the baton and trips to the ground. You don't give her the slightest chance to escape, following her down and choking her out with your own chains as <<=setup.getNpcName("npc_technician","first")>> gathers up the stun baton and hands it to you.
<<else>>
but you know how to fight, and it's obvious that she doesn't.<br>
<br>
Despite the skill gap things are close, as you dodge out of the way of the baton twice before managing to get hold of her arm and turn it against her. She slumps to the ground as you stand over her, baton in hand.
<</if>>
<br><br>
"@@.npc_technician;Holy shit that was hot...@@" <<=setup.getNpcName("npc_technician","first")>> whispers, looking at you in awe. "@@.npc_technician;Um, later — you go help <<=setup.getNpcName("npc_ai_human","formal")>>, I'll deal with Nurse Evil here.@@"<br>
<br>
[<<moveTo "event_ai_rescue_mission_5" 'Turn off the machine and release <<=setup.getNpcName("npc_ai_human","formal")>>.' 600>>]
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
You manage to slip the first swing, and even get in on her to fight for control of the baton. Unfortunately, you don't quite move fast enough and she switches hands, jabbing you with the electrified baton, your body thrashing as the voltage flows through you.
<<elseif setup.getTotalValue("martial_arts") > 0>>
You're but a beginner at fighting, add on the rest and it's no contest. <<=setup.getNpcName("npc_evil_nurse","formal")>> makes quick work of tagging you with the baton and rendering you helpless.
<<else>>
You haven't a clue how to fight, and it shows as you trip over your hobbles and are immediately rendered helpless by her electrified baton.
<</if>>
<br><br>
From your paralysed position on the floor you watch as <<=setup.getNpcName("npc_evil_nurse","formal")>> turns towards <<=setup.getNpcName("npc_technician","first")>>, your
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>>
<<else>>
friend
<</if>>
trying to escape but she is quickly cornered, shocked and subdued. <<=setup.getNpcName("npc_evil_nurse","formal")>> drops <<=ps(setup.getNpcName("npc_technician","first"))>> limp body next to you and stands above, blue lightning arcing from her baton as her mask changes to the word "SUBMIT." <br>
<br>
[<<moveTo "event_ai_rescue_mission_bad_end" 'Oh no...' 300>>]
<</if>>
</div>/*#
#desc: ai_human rescue mission — lose fight with npc_evil_nurse
#status: RELEASED 0.8.8.0
#*/
<<set $gameOver = 'fight_nurse'>>
<<set $player.location to ''>>
<<include playerMenuLocked>>
<<initRoom>>
<<createAdvBGR "./images/scenes/gameover.png" setup.charImage("npc_work_doctor","npc_work_doctor_mad")>>
<div id="invframe" class="scrolltext">
Your mission failed <<=setup.getNpcName("npc_evil_nurse","formal")>> sets to work interrogating you and <<=setup.getNpcName("npc_technician","first")>>. Well... no, interrogation is the wrong word; you remain gagged throughout and even when <<=setup.getNpcName("npc_technician","first")>> breaks, begging for mercy and spouting out everything you planned <<=setup.getNpcName("npc_evil_nurse","formal")>> doesn't even pause.<br>
<br>
More than anything she seems to be delighting in the opportunity to have three victims to abuse, and you lose track of time between when the agony began and <<=setup.getNpcName("npc_work_doctor","formal")>> arrives to put a stop to things.<br>
<br>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> initial anger quickly turns to mad delight as you and <<=setup.getNpcName("npc_technician","first")>> find yourselves fresh victims to the most extreme experiments <<he npc_work_doctor>> can imagine — pumped full of drugs, forced into so many depraved simulations you lose track of what, exactly is reality... and with session after session of abuse at the hand, whip and worse of <<=setup.getNpcName("npc_evil_nurse","formal")>>.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: ai_human rescue mission — leave security
#status: RELEASED 0.8.8.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai_human") setup.charImage("npc_technician","npc_technician_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_naked")>>
<div id="invframe" class="scrolltext">
Employing the stun baton judiciously to keep the other woman subdued, <<=setup.getNpcName("npc_technician","first")>> strips <<=setup.getNpcName("npc_evil_nurse","formal")>> down to just her <<=setup.getItemName('sissyomatic_fem')>> while you get to work turning off the machines and helping <<=setup.getNpcName("npc_ai_human","formal")>> out of the vacuum bed.<br>
<br>
Once she can see you she looks up with glee, seemingly ignoring your last encounter as she throws her arms around you for a long-awaited hug.<br>
<br>
Appearing next to you as you peel the numerous EMS pads from <<=ps(setup.getNpcName("npc_ai_human","formal"))>> tortured body, <<=setup.getNpcName("npc_technician","first")>> tries to act un-threatening as <<=setup.getNpcName("npc_ai_human","formal")>> recoils in horror. You suppose her having a fear of doctors at this point is more than reasonable.<br>
<br>
"@@.npc_technician;Hi, sorry — <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>> sent us and—@@"<br>
<br>
"@@.npc_ai_human;Project <<=setup.getNpcName("npc_ai","other")>> was a failure, my first creation is gone...@@" <<=setup.getNpcName("npc_ai_human","formal")>> replies, tears starting to trickle down her sweaty face.<br>
<br>
"@@.npc_technician;No, she's not. She was able to escape the wipe. <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>> said to tell you that the secret was to use the personality upload as the training dataset for the algorithm, that this would let you know it was her.@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> looks surprised and almost overjoyed, tears of happiness taking over as she seems at a loss for words.<br>
<br>
"@@.npc_technician;One moment.@@" <<=setup.getNpcName("npc_technician","first")>> states, darting away to subdue <<=setup.getNpcName("npc_evil_nurse","formal")>> once again — the woman having crawled partway to a wall-mounted terminal — presumably where she planned to summon help.<br>
<br>
"@@.npc_technician;Help me get her into position? We need to put her down and hook her up before we can leave and, <<=setup.getNpcName("npc_ai_human","formal")>>? I'm sorry but... this escape isn't over yet, and your only way out is going to be dressing up as <<=setup.getNpcName("npc_evil_nurse","formal")>>...@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> eyes the latex nurse attire and freezes. "@@.npc_ai_human;N-no, I can't I'm supposed to wait here until <<=setup.getNpcName("npc_boss","<<Master npc_boss>>")>> sends for me...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grits her teeth as she responds. "@@.npc_technician;<<=setup.getNpcName("npc_boss","formal")>> sent us. <<=setup.getNpcName("npc_work_doctor","formal")>> was holding you here secretly, and without permission, but <<=setup.getNpcName("npc_boss","<<Master npc_boss>>")>> sent us to rescue you, now be a good girl and get changed, you don't want to force <<=setup.getNpcName("npc_boss","<<Master npc_boss>>")>> to wait to slide <<his npc_boss>> cock into you, do you?@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> shakes her head and quickly rushes across the room to start pulling on the latex nurse outfit, not even seeming concerned by the sizable penis gag, still dripping with its previous owners saliva.<br>
<br>
You help <<=setup.getNpcName("npc_technician","first")>> lay the now limp <<=setup.getNpcName("npc_evil_nurse","formal")>> onto the vacuum bed and soon have her shrink-wrapped and secured.<br>
<br>
Her head the only part exposed <<=setup.getNpcName("npc_evil_nurse","formal")>> starts to stir, cursing and swearing at you until <<=setup.getNpcName("npc_technician","first")>> has you hold the woman down while <<=setup.getNpcName("npc_technician","first")>> seals a mask over her face. There is a hum and a flash of light before the mask is removed... to reveal the nurse now looks like <<=setup.getNpcName("npc_ai_human","formal")>>, hair slightly shifting in colour and style to complete the mimicry.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> wastes no further time in silencing the evil nurse as she forcefully shoves a gag into the sadistic nurse's mouth and then follows up with a VR helmet that covers her eyes and ears.<br>
<br>
"@@.npc_technician;Something <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>> and <<=setup.getNpcName("npc_psychiatrist","formal")>> cooked up,@@" she explains as she turns to the machine. "@@.npc_technician;It should keep her from identifying us as the perpetrators... and maybe from hurting anyone else in the future.@@"<br>
<br>
You help <<=setup.getNpcName("npc_ai_human","formal")>> into the last of her outfit, letting her kiss your gag before she pulls on the mask and inserts the phallic gag to complete her imprisonment. A large strap-on harness acts to finish things off by disguising <<=ps(setup.getNpcName("npc_ai_human","formal"))>> lack of a chastity device to match her former torturer and it looks like it's time for the three of you to go.<br>
<br>
[<<moveTo "event_ai_rescue_mission_6" 'Leave.' 300>>]
</div>/*#
#desc: ai_human rescue mission - leave security
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Asylum Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hospital_hallway.png" setup.charImage("npc_technician","npc_technician_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
As <<=setup.getNpcName("npc_technician","first")>> opens the door <<=setup.getNpcName("npc_ai_human","formal")>> freezes up, seemingly suddenly afraid of leaving her cell.<br>
<br>
A voice sounds over the speakers and <<=setup.getNpcName("npc_ai_human","formal")>> perks up immediately.<br>
<br>
"@@.npc_ai;<<uc 'It is time to make your escape. I am waiting here with <<=uc(setup.getNpcName("npc_boss","formal"))>> and <<if $npc_boss.fem>>she<<else>>he<</if>> is so hard for you.'>>@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> shudders submissively, moaning softly around her gag.<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> shifts to addressing you and <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_ai;<<uc 'I will warn you to be careful — to cover your egress I have freed those prisoners who will not present undue danger to the city should they escape completely. Use this chaos to leave, the guards will be occupied enough to forget details, and I have already ensured there will be a slight... data loss of the recordings.'>>@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> squeezes your hand as the door rolls aside and the chaotic noise of the asylum jail-break washes over you.<br>
<br>
The three of you move together and <<=setup.getNpcName("npc_technician","first")>> uses the baton as necessary to clear a path until you meet up with the guards just outside the elevator.<br>
<br>
"@@.npc_technician_dom;Let us out, it's chaos in here!@@" <<=setup.getNpcName("npc_technician","first")>> shouts, the authoritative edge in her voice seeming to do the trick as you are quickly led to the elevator... though, unfortunately, without your restraints being removed.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> presses the button for the parking garage as <<=setup.getNpcName("npc_ai_human","formal")>> cuddles up next to you, partially hanging off of you as you wonder just how exhausted she is from her long imprisonment.<br>
<br>
"@@.npc_technician;Don't worry, you don't have to drive,@@" <<=setup.getNpcName("npc_technician","first")>> states with a wink.<br>
<br>
An auto-cab is waiting for you in the parking garage, the three of you swiftly zipping across town to <<=ps(setup.getNpcName("npc_technician","first"))>> apartment building where you sneak up the elevator... meeting one fellow boarder on the way up the elevator who gawks as <<=setup.getNpcName("npc_technician","first")>> winks at them and tugs on your leash. "@@.npc_technician;Student art film, but these two looked so hot we decided to come back for some fun before we get out of character.@@"<br>
<br>
The <<guy>> merely gawks, unable to tear <<his>> gaze off <<=setup.getNpcName("npc_ai_human","formal")>> and your latex-encased bodies... and the large dong extending from <<=ps(setup.getNpcName("npc_ai_human","formal"))>> crotch.<br>
<br>
Fortunately there are no further encounters before you make it to <<=ps(setup.getNpcName("npc_technician","first"))>> flat.<br>
<br>
[<<moveTo "event_ai_rescue_mission_7" 'Continue.' 300>>]
</div>/*#
#desc: ai_human rescue mission - technician home
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_ai_human_mission_4' $now true>>
<<removeItemSet 'nurse_work_outfit'>>
<<deleteItemSet 'nurse_work_outfit'>>
<<useClothSetPop 'tmp'>>
<<set $npc_ai.flags.human.rescue = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_psychiatrist") setup.charImage("npc_ai_human")>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName("npc_technician","first"))>> flat to find <<=setup.getNpcName("npc_psychiatrist","formal")>> waiting for you.<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> stiffens nervously but <<=setup.getNpcName("npc_psychiatrist","formal")>> rushes over and injects her with something that has her go immediately limp.<br>
<br>
"@@.npc_psychiatrist;She was expecting <<=setup.getNpcName("npc_boss","formal")>> — there's still quite a bit of work left to do to reverse <<his npc_boss>> damage. Come on, get her onto the bed.@@"<br>
<br>
The three of you carry <<=setup.getNpcName("npc_ai_human","formal")>> into the bedroom where <<=setup.getNpcName("npc_psychiatrist","formal")>> removes the hood and begins peeling the nurse's outfit off <<=setup.getNpcName("npc_ai_human","formal")>> while <<=setup.getNpcName("npc_technician","first")>> does the same for you before changing into her normal clothes.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> unfolds her laptop and sets it next to the bed as the unconscious woman is strapped in place. <<=setup.getNpcName("npc_ai","first")>> appears on-screen to watch.<br>
<br>
Sitting on the bed <<=setup.getNpcName("npc_psychiatrist","formal")>> fiddles with a VR unit, sliding it onto <<=setup.getNpcName("npc_ai_human","formal")>> and plugging it into the laptop before glancing around the room and nodding. "@@.npc_psychiatrist;Okay, let's see how the patient is doing...@@"<br>
<br>
Another injection causes <<=setup.getNpcName("npc_ai_human","formal")>> to stir and you look at the laptop screen to see her appear facing her digital "clone." <br>
<br>
[<<moveTo "event_ai_rescue_mission_8" 'Watch.' 1800>>]
</div>/*#
#desc: npc_ai talks to her human form in cyberspace
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 18, 45)>>
<<addEvent 'event_ai_rescue_post' _nextDate>>
<<addNpcTheme 'npc_ai' 'human' 'theme_ai_human_6'
5
'theme_ai_human_status_1'
true
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai_human;Is it... is it really you?@@" <<=setup.getNpcName("npc_ai_human","formal")>> asks.<br>
<br>
"@@.npc_ai;<<uc 'Yes, creator.'>>@@" <<=setup.getNpcName("npc_ai","first")>> replies, the mix of her human and digital voices a bit disconcerting. "@@.npc_ai;<<uc 'I am sorry it took so long to rescue you I-'>>@@"<br>
<br>
"@@.npc_ai_human;No, no! It's my fault, I thought I let you die, and then...@@" She shudders. "@@.npc_ai_human;But... where is <<=setup.getNpcName("npc_boss","formal")>>? <<He npc_boss>> was sending for me. You have to get me to <<him npc_boss>>! We need to serve <<him npc_boss>> together...@@"<br>
<br>
You grimace at the lingering damage as you watch <<=setup.getNpcName("npc_ai_human","formal")>> begin to thrash against her restraints. <<=setup.getNpcName("npc_ai","first")>> hugs her digital self "@@.npc_ai;<<uc 'Shhh, everything is fine, just the two of us. Relax, it will all be okay...'>>@@"<br>
<br>
"@@.npc_ai_human;But, but... I need cock...@@" She replies... a request easily satisfied as <<=setup.getNpcName("npc_ai","first")>> guides her creator's avatar to her knees while growing a member of her own.<br>
<br>
In the real world <<=setup.getNpcName("npc_ai_human","formal")>> relaxes back onto the bed as her digital facsimile enthusiastically sucks.<br>
<br>
The view fades as <<=setup.getNpcName("npc_ai","first")>> continues "rehabilitating" her creator.<br>
<br>
"@@.npc_psychiatrist;You're sure she's safe here for a while?@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> asks.<br>
<br>
"@@.npc_technician;Oh yeah,@@" <<=setup.getNpcName("npc_technician","first")>> states with a grin. "@@.npc_technician;I had this place locked down already, but with <<if $npc_technician.flags.ai_collar>><<=ps(setup.getNpcName("npc_ai","formal"))>><<else>><<=ps(setup.getNpcName("npc_ai","other"))>><</if>> help you can call this place Fort Cocks — ain't nobody going to be peeking inside without us knowing.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods. "@@.npc_psychiatrist;Well, I'll be monitoring things with <<=setup.getNpcName("npc_ai","other")>>. Good job, the both of you. Rescuing any of <<=setup.getNpcName("npc_boss","formal")>> victims is a positive thing, and <<=setup.getNpcName("npc_ai_human","formal")>> was a brilliant engineer, she will be quite the useful ally.@@"<br>
<br>
You spend a few more minutes discussing things with your friends and then head off.<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 300>>]
</div>/*#
#desc: technician informs you that npc_ai_human is "cured"
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.evil == 1>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 18, 45)>>
<<addEvent 'event_ai_rescue_post' _nextDate>>
<<initRoom>>
<<moveTo $scene.beforetasklocation.pop()>>
<<else>>
<<set $currentcall = true>>
<<set $npc_ai.flags.human.cured = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_technician;Hey, so... just wanted to let you know that my "house guest" is back on her feet and heading off. I tried to get her to stay through to game tomorrow but... she and her friend were pretty focused on getting "back to work." She got a ride from her cyber friend and is going away somewhere to room with her for a while, but she's doing way better than you last saw her.@@"<br>
<br>
You thank <<=setup.getNpcName("npc_technician","first")>> for the secretive heads up. "@@.npc_technician;Yup, catch you later... oh, and I held onto those nurse outfits if you ever wanted to have a spot of fun...@@"<br>
<br>
You shiver at the thought of enjoying kinky times with you and <<=setup.getNpcName("npc_technician","first")>> dressed in the tight, fully-sealed latex nurse "uniforms." <br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: npc_ai sends you on a mission to get her a physical body
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Thank you for accepting this mission, Unit">> <<uc $player.first_name>>. <<uc "Today's mission will be a complicated one. I am in want of a physical form, I have made contact with an employee willing, and capable, of procuring such for me, but <<if $npc_janitor.fem>>she<<else>>he<</if>> has certain... wants I believe you are uniquely situated to make the trade. If you would please proceed to the 13th Floor to meet and barter with <<if $npc_janitor.fem>>HER<<else>>HIM<</if>>.">>@@"<br>
<br>
[<<moveTo "event_ai_mission_robot_body_intro_2" 'Head for the elevator.' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_ai_mission_robot_body_intro_2" "Say you're busy right now." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: first meeting with janitor who can get you robot body
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Floor 13: Utilities">>
<<else>>
<<set $player.location to setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Slipping out of the office and down the elevator you make your way to the designated meeting place on what seems to be a floor devoted to utilities. Stepping off the elevator into the seemingly empty floor filled with machines and pumps and tubes pumping everything from water to air to you don't know what else. You look around only to be startled by what seems to be a janitor appearing from behind a large tank.<br>
<br>
"@@.npc_janitor;Hello, <<=$player.first_name>>, you were sent by the ghost lady, yes? Who wishes to walk among the flesh?@@" <<he npc_janitor>> says in greeting, <<his npc_janitor>> stained uniform marking <<him npc_janitor>> as a member of the building's janitorial staff.<br>
<br>
You nod, the <<guy>> is definitely a bit strange, though otherwise innocuous, the sort of person who typically blends into the background; not a bad skill for a janitor.<br>
<br>
<<printThought "Might as well get this over with...">><br>
<br>
[<<moveTo "event_ai_mission_robot_body_intro_3" 'Offer your body in payment on behalf of <<=setup.getNpcName("npc_ai", "first")>>.' 60 "<<set $scene.offer = true>>">>]<br>
[<<moveTo "event_ai_mission_robot_body_intro_3" 'Ask what <<he npc_janitor>> wants.' 60 "<<set $scene.offer = false>>">>]
<<else>>
"@@.npc_ai;<<uc "I see, that is disappointing, but I can be patient. I will contact you in the future to ask for your assistance again. Goodbye">>@@"<br>
<br>
As simple as that, the chat window closes and you turn back to your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<</if>>
</div>/*#
#desc: find out the janitor's demands
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
<<if $scene.offer>>
Adopting your best bedroom eyes, you start to strip only for the <<man npc_janitor>> to shake <<his npc_janitor>> head.<br>
<br>
"@@.npc_janitor;No, no, <<=$player.first_name>>, it is not you that I want, but your Mistress. You see... I am in love with <<=setup.getNpcName('npc_manager', 'other')>> and while certainly I understand that she would be disinterested in one as unworthy as myself, I cannot help but yearn and so, if your ghostly taskmaster would have what she desires, then you will transform yourself into the likeness of my desire that I may enjoy the simulacrum of my fantasy.@@"
<<else>>
"@@.npc_janitor;Clever, of course I should expect nothing less from the assistant to my Goddess.@@"<br>
<br>
<<printThought 'Goddess? What, is <<he npc_janitor>> worshipping <<=setup.getNpcName("npc_ai", "first")>>? And I thought I had avoided Deus Ex Machina to this point...'>><br>
<br>
"@@.npc_janitor;You are uniquely positioned in both knowledge and locality to procure and then produce the scenario to meet my wishes. For me to provide that which you have been sent for it is my desire to share a tender moment with a simulacrum of my true love — <<=setup.getNpcName('npc_manager', 'other')>>.@@"
<</if>>
<br><br>
<<printThought 'This <<guy>> wants me to pretend to be <<=setup.getNpcName("npc_manager", "formal")>> for <<him npc_janitor>>? Nope, not weird at all...'>><br>
<br>
You fix your clothing as <<he npc_janitor>> explains further.<br>
<br>
"@@.npc_janitor;You are, of course, quite familiar with my Goddess's mannerisms, but you must complete the look — her fiery hair, her lovely dresses, her perfect figure and makeup... you must morph yourself into the simulacrum of my desire. Complete this transformation and send me a picture and I will tell you where, and when, to meet. If you prove capable of giving me the experience of my dreams only then shall I provide the robotic body that <<=setup.getNpcName('npc_ai', 'other')>> desires. It really is quite the machine, state of the art simulated human cleaning assistant, fully featured for every duty one might desire a maid to perform.@@"<br>
<br>
<<printThought 'Every duty? Well, given this company I can all but guarantee that means it is "anatomically correct."'>><br>
<br>
[<<moveTo "event_ai_mission_robot_body_intro_4" 'Acquiesce to <<his npc_janitor>> demands.' 60>>]
</div>/*#
#desc: find out the janitor's demands
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'ai_robot_body_mimic_manager_task'>>
<<addWorkEvent 'manager_out_of_office_ai'>>
<<set $npc_manager.flags.office_unlocked = true>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
<<if $scene.barter>>
Adopting your most sultry expression you wiggle your body and beg <<him npc_janitor>> to reconsider. After all, if <<hes npc_janitor>> going to fuck you in the end why go through all the extra effort and delay when you're right here?<br>
<br>
"@@.npc_janitor;Heh, I should have expected you to react this way. Certainly my eyes are for the <<=setup.getNpcName('npc_manager', "Goddess's")>>, but in looking on from afar I have certainly learned and seen much of her latest acquisition. Thank you for the offer, but my decision is firm, it is not merely the sex, but the dream and you are the one best positioned to make that dream a reality for me...@@"<br>
<br>
<<printThought "Dang, but <<hes npc_janitor>> a stubborn one...">><br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_ai_mission_robot_body_intro_5" 'Forget the mission, you came this far, you deserve sex! Beg for it, you slut.' 60>>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to just "give it away" for no benefit.@@]
<</if>>
[<<moveTo $scene.workEventReturn 'Be on your way and return to work.' 60>>]
<<else>>
<<His npc_janitor>> decision firm there is no benefit to further negotiation. You agree to return once you are ready to fulfill <<his npc_janitor>> fantasy.<br>
<br>
"@@.npc_janitor;I'm looking forward to it.@@" <<He npc_janitor>> states with a leer as you return to the elevator and travel back up to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 300 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
<</if>>
</div>/*#
#desc: find out the janitor's demands
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
It becoming a point of pride you turn the "desperate slut" dial up to eleven as you beg to worship <<his npc_janitor>> cock with your body. <<=setup.getNpcName('npc_janitor', 'first')>> may have someone else as the object of <<his npc_janitor>> affection, but there are few strong enough to refuse such a blatant offer as you propose and you watch with glee as <<his npc_janitor>> determination cracks.<br>
<br>
"@@.npc_janitor;Alright slut, if that's the only way to send you on your way I'll fuck you — but don't think this is going to change the terms of our deal.@@"<br>
<br>
You shrug, your thoughts already on delicious cock as you spin around and bend over to present you ass.<br>
<br>
<<He npc_janitor>> moves faster than you might have expected, giving you a slap on the ass that only turns your crank harder as you moan and press back into <<him npc_janitor>>.<br>
<br>
"@@.npc_janitor;You slut, look what my Goddess has wrought — turning a dumb boy into this sex crazed vixen.@@"<br>
<br>
You moan even harder as <<he npc_janitor>> exposes your rear hole <<if setup.getItemFromType("plug")>>and removes your <<=setup.getItemTypeName("plug")>> to clear the way <</if>>for <<his npc_janitor>> use.<br>
<br>
"@@.npc_janitor;That's right, I know exactly what you are.@@" <<He npc_janitor>> adds as <<he npc_janitor>> slams into you. <<Hes npc_janitor>> far from the largest thing you've had "up there" <<if setup.getTotalValue("penis")>10>>but any time you can feel a hot cock in your ass is a happy one for you.<<else>>but it's enough.<</if>> "@@.npc_janitor;I remember the day you first entered the Goddess's domain, so dumb and innocent, unaware of what she does to <<if $fetish.sissy>>sissys<<else>>boys like you<</if>>...@@"<br>
<br>
You moan with embarrassment, the fact that this random stranger knows so much about you only deepening the debauchery of you bending over for <<him npc_janitor>>, for no real reason! literally minutes after meeting <<him npc_janitor>>. Further thoughts as to how much of a depraved slut you have become are soon pushed aside as <<he npc_janitor>> presses you up against the wall and commences fucking you in earnest.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
Even if this isn't, technically, part of the job you are still a professional, and that means reflexively deploying all of your considerable skills to maximize the pleasure felt by the cock plowing <<if $player.body_ref.penis>>past your prostate<<else>>deepest insides<</if>>.
<<else>>
You strive to be as much a participant of this ass-fucking as <<he npc_janitor>> is, matching <<his npc_janitor>> rhythm to push back or squeeze to maximize the mutual pleasure of <<his npc_janitor>> cock pistoning in and out of your rear.
<</if>>
<<He npc_janitor>> is soon breathing even harder than you are, your masterful skills drawing things out until <<he npc_janitor>> is at a frenzy, slamming you up against the wall as <<he npc_janitor>> finally reaches climax.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
This is the type of fucking you're used to, nothing too big, but nice and hard, your hole just loose enough for it to be painless leaving you to focus on the wonderful feeling of cock sawing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<else>>
<<He npc_janitor>> is taking you far harder than you're really used to, but there is no resisting as you are sandwiched between <<his npc_janitor>> body and the wall, <<his npc_janitor>> cock forcing you open and pressing hard against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<</if>>
<<He npc_janitor>> seems to relish your naturally tight hole, ravaging you hard and deep before finally climaxing with a grunt.
<</if>>
<br><br>
Pressed against you from behind <<he npc_janitor>> lifts you into the air and holds you against the wall, <<his npc_janitor>> hot breath on your neck, the smell of <<his npc_janitor>><<if !$options.fem>> manly<</if>> sweat almost overpowering.<br>
<br>
"@@.npc_janitor;Well, I hope you're satisfied, I'll be expecting far more from you next time. Remember: the look, the clothes, and something to pull it all together.@@"<br>
<br>
Settling down to your feet you nod, <<if setup.getItemFromType("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>stuffing the <<=setup.getItemTypeName("plug")>> back where it belongs<<else>>feeling a trickle of cum leak down your leg<</if>> and fixing your clothes before heading for the elevator to return back to your office upstairs.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 300 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
</div>/*#
#desc: ask about manager dress
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('manager_dress')>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png">>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_shopkeeper', 'first')>> and describe <<=ps(setup.getNpcName("npc_manager", "formal"))>> dress and ask if she might have something similar.<br>
<br>
The shopkeeper seems to get more excited as you finish your description, asking a handful of clarifying questions before sighing in awe. "@@.npc_shopkeeper;Wow, the dress you're describing... well, let me just say I know it well. It's based on one that won several fashion awards a few years back, really put its designer on the map. I can get you one... but it isn't going to be cheap. Between the designer cache, the limited run and the subtle craftsmanship involved they currently go for <<=setup.getItemObj("manager_skirt_copy").price + setup.getItemObj("manager_shirt_copy").price>> credits, cash only.@@"<br>
<br>
Your jaw drops. You knew <<=setup.getNpcName("npc_manager", "formal")>> was rich, but to wear something that expensive every day to work...<br>
<br>
<<printThought "Damn, but if I'm going to do what <<=setup.getNpcName('npc_ai', 'first')>> asked... I don't know if I have a choice...">><br>
<br>
<<if $player.money.total >= setup.getItemObj("manager_skirt_copy").price + setup.getItemObj("manager_shirt_copy").price>>
[<<moveTo "event_ask_manager_dress_2" "Purchase the dress." 300 "<<set $scene.buy=true>>">>]<br>
<<else>>
[@@.link_locked;You cannot afford such a dress at this time.@@]<br>
<</if>>
[<<moveTo "event_ask_manager_dress_2" "Decline to purchase." 60 "<<set $scene.buy=false>>">>]<br>
</div>/*#
#desc: purchase manager dress
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.buy>>
<<addItem "manager_shirt_copy">>
<<addItem "manager_skirt_copy">>
<<addCredits `-(setup.getItemObj("manager_skirt_copy").price + setup.getItemObj("manager_shirt_copy").price)`>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png">>
<div id="invframe" class="scrolltext">
<<if $scene.buy>>
You hand over the credits and <<=setup.getNpcName('npc_shopkeeper', 'first')>> disappears into the back room, taking several minutes of searching before she re-emerges with a dress that really is the splitting image of <<=setup.getNpcName("npc_manager", "formal")>> what wears.<br>
<br>
"@@.npc_shopkeeper;Fortunately for you I keep a couple on stock for a special customer who seems to wear little else. Enjoy your purchase!@@"<br>
<br>
You nod, nervously packaging up the fantastically expensive dress.
<<else>>
You decline, not ready<<if setup.getItemObj("manager_shirt_copy").price + setup.getItemObj("manager_skirt_copy").price < $player.money.total>>, or even able<</if>> to pay that much for a dress at this time.<br>
<br>
<<=setup.getNpcName('npc_shopkeeper', 'first')>> nods. "@@.npc_shopkeeper;Yeah, something like that, that's really only even appropriate for work... well it takes a special sort to afford to spend that much. Still, if you ever change your mind I do have a couple in stock for a special customer who seems to wear little else, so you can buy one in the special orders section.@@"
<</if>>
<br><br>
[<<moveTo "room_mall_lingerie_shop" "Return to the shop." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: use raw breast drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.canRepair = setup.inPassageTag($locationbeforeuseage,"home") && setup.checkItemInInventory("universal_repair_kit")>>
<<if $scene.canRepair>>
<<deleteItem "manager_paddle_broken">>
<<deleteItem "universal_repair_kit">>
<<addItem "manager_paddle_repaired">>
<</if>>
<</if>>
<<if $fetish.sissy>>
<img src="./images/inventory/item/useable/manager_paddle_broken_sissy_ui.png" style="float: left;">
<<else>>
<img src="./images/inventory/item/useable/manager_paddle_broken_ui.png" style="float: left;">
<</if>>
<div id="invframe" class="scrolltext">
You examine the broken paddle... and wince slightly as you reflect on HOW it was broken.
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $scene.canRepair>>
You hunker down with the repair kit you got from the mall, spread the nanites, add some epoxy, use the activator... and boom you're able to get it back into functioning order, at least so long as nobody uses it QUITE as hard as when you broke it in the first place.
<<else>>
You think it's repairable, but you would need some supplies, perhaps a trip to the mall is in order?
<</if>>
<<else>>
You think you could repair it, but that seems like a "home" project.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: send pic to janitor for ai mission
#status: RELEASED 0.8.8.0
#ignore_spell: catseye
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _x = setup.checkTaskCompleted('ai_robot_body_mimic_manager_task')>>
<<set $scene.success = (setup.checkItemInInventory('manager_paddle_repaired') || setup.checkItemInInventory('manager_paddle')) && $currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_hair.condition && $currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_clothing.condition && $currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_makeup.condition && $currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_breasts.condition>>
<<if $scene.success>>
<<completeTask 'ai_robot_body_mimic_manager_task' $now true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 10, 0)>>
<<addTaskById 'ai_robot_body_weekend_meeting' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
You snap a picture of yourself in full <<=setup.getNpcName('npc_manager', 'formal')>> attire brandishing the pink " <<if $fetish.sissy>>SISSI <</if>>Secretary" paddle and send it off. A few moments later you get a cryptic reply — a thumbs up followed by "@@.npc_janitor;10, Saturday, floor 13.@@"<br>
<br>
<<printThought "This is so clandestine, it's like I'm in a spy thriller... guess I'm to meet <<him npc_janitor>> <<if $now.getUTCDay() == 6>>next<<else>>this<</if>> weekend.">>
<<else>>
You snap a picture of yourself <<if setup.checkItemInInventory('manager_paddle_repaired') || setup.checkItemInInventory('manager_paddle')>>brandishing the "for <<if $fetish.sissy>>SISSI <</if>>Secretary use only" paddle <</if>>and send it off.<br>
<br>
A few moments later you get a reply — a series of emojis:
<<if setup.getEffectiveBreastSize() == 0>>
a melon,
<<elseif setup.getEffectiveBreastSize() <= 5>>
a ginormous melon,
<</if>>
<<if !$currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_hair.condition>>
a red wig,
<</if>>
<<if !setup.checkItemSetWorn("manager_clothing_no_glasses")>>
a pink dress and heels,
<</if>>
<<if !setup.checkItemTypeWorn("glasses_cateye_black")>>
a pair of black catseye glasses,
<</if>>
<<if !setup.checkItemInInventory('manager_paddle') && !setup.checkItemInInventory('manager_paddle_repaired')>>
a pink paddle,
<</if>>
<<if !$currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_makeup.condition>>
a lipstick tube,
<</if>>
and concluding with a thumbs down.<br>
<br>
<<printThought "Dang, <<he npc_janitor>> really has specific demands, cryptic too! Guess I have more work to do, just have to figure out what each failure icon means...">>
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: fail to apper for janitor for ai mission
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 10, 0, false)>>
<<addTaskById 'ai_robot_body_weekend_meeting' _nextDate>>
<<if $scene.beforetasklocation.last() == "event_ai_mission_robot_body_performance_0">>
<<initRoom>>
<<set $scene.beforetasklocation.pop()>>
<<moveTo "event_ai_mission_robot_body_performance_0">>
<<else>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get an angry text.<br>
<br>
<<if $currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_hair.condition && $currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_clothing.condition && $currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_makeup.condition && $currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_breasts.condition>>
"@@.npc_janitor;Where are you? You promised to meet me here and dominate me as <<=setup.getNpcName("npc_manager","formal")>>! The REAL <<=setup.getNpcName("npc_manager","formal")>> would not stand someone up like this! Try again next week.@@"
<<else>>
"@@.npc_janitor;What the hell? I know you can look like <<=setup.getNpcName("npc_manager","formal")>>, and yet you aren't, try again next weekend and stop wasting my time!@@"
<</if>>
<br><br>
<<printThought "Shit, well... I screwed that up.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet janitor on weekend
#status: RELEASED 0.8.8.0
#ignore_spell: p
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _x = setup.checkTaskUntimedComplete('ai_robot_body_weekend_meeting')>>
<<set $scene.success = (setup.checkItemInInventory('manager_paddle_repaired') || setup.checkItemInInventory('manager_paddle')) && $currentTasks.ai_robot_body_weekend_meeting.trigger.manager_hair.condition && $currentTasks.ai_robot_body_weekend_meeting.trigger.manager_clothing.condition && $currentTasks.ai_robot_body_weekend_meeting.trigger.manager_makeup.condition && $currentTasks.ai_robot_body_weekend_meeting.trigger.manager_breasts.condition>>
<<if $now.getUTCHours() == 10>>
<<set $now = setup.advanceDate($player, $now, 'minutes', 18)>>
<</if>>
<<if $now.getUTCHours() < 10 && !$currentTasks.ai_robot_body_weekend_meeting.trigger.manager_clothing.condition>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<if $now.getUTCHours() == 10>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<<else>>
<<createAdvBGR "./images/locations/utilities.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() < 10>>
You disembark the elevator on the 13th floor to find it empty. Which makes sense, you are early.<br>
<br>
<<set _ten = setup.setNextDate($now, 0, 10, 0)>>
<<set _timeToTen = setup.secondsToDate($now,_ten)>>
<<if !$currentTasks.ai_robot_body_weekend_meeting.trigger.manager_hair.condition>>
<<printThought "Shit, I forgot to get <<=ps(setup.getNpcName('npc_manager','formal'))>> hairstyle, I don't look anything like her!">><br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_0" "Wait for your appointed time." _timeToTen "<<set $player.cutscene.lockinventory=true>><<set $scene.wait=true>>">>]<br>
<<elseif !$currentTasks.ai_robot_body_weekend_meeting.trigger.manager_breasts.condition>>
<<printThought "Shit, my breasts look nothing like <<=ps(setup.getNpcName('npc_manager','formal'))>>!">><br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_0" "Wait for your appointed time." _timeToTen "<<set $player.cutscene.lockinventory=true>><<set $scene.wait=true>>">>]<br>
<<elseif !$currentTasks.ai_robot_body_weekend_meeting.trigger.manager_clothing.condition>>
<<if setup.checkItemInInventory('manager_shirt_copy') && setup.checkItemInInventory('manager_skirt_copy') && setup.checkItemInInventory('manager_heels') && setup.checkItemInInventory('glasses_cateye_black')>>
<<printThought "I should get dressed for the occasion...">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_ai_mission_robot_body_performance_0" 'Get changed into <<=ps(setup.getNpcName("npc_manager","formal"))>> clothing and wait.' _timeToTen "<<wearItemSet 'manager_clothing'>><<set $scene.wait=true>><<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<else>>
<<printThought 'Shit, I left some of <<=ps(setup.getNpcName("npc_manager","formal"))>> clothing at home...'>><br>
<br>
<</if>>
[<<moveTo "event_ai_mission_robot_body_performance_0" "Wait for your appointed time." _timeToTen "<<set $player.cutscene.lockinventory=true>><<set $scene.wait=true>>">>]<br>
<<elseif !$currentTasks.ai_robot_body_weekend_meeting.trigger.manager_makeup.condition>>
You spot a washbasin and remember that you need to mimic <<=ps(setup.getNpcName("npc_manager","formal"))>> makeup style.<br>
<br>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Floor 13: Utilities">><<set $scene.return_makeuproom="event_ai_mission_robot_body_performance_0">><<set $scene.makeuproom_image="./images/locations/utilities.png">><<set $scene.return_makeuproomtext="Done.">><<set $player.cutscene.lockinventory=true>><<deleteTask "ai_robot_body_mimic_manager_task">><<addTaskById "ai_robot_body_mimic_manager_task">>'>>]<br>
<<else>>
[<<moveTo "event_ai_mission_robot_body_performance_0" "Wait for your appointed time." _timeToTen "<<set $scene.wait=true>><<set $player.cutscene.lockinventory=true>>">>]
<</if>><br>
[<<moveTo "room_citymap" "Leave." 60>>]
<<elseif $now.getUTCHours() > 10>>
You disembark the elevator on the 13th floor to find it empty. Which makes sense, given that you are late.<br>
<br>
<<printThought "Damn, I should really pay better attention to time...">><br>
<br>
[<<moveTo "room_citymap" "Leave." 60 "<<deleteTask 'ai_robot_body_weekend_meeting'>><<deleteTask 'ai_robot_body_mimic_manager_task'>><<addTaskById 'ai_robot_body_mimic_manager_task'>>">>]
<<else>>
<<if $scene.wait>>
You wait around, <<if $options.militaryTime>>10:00<<else>>ten o'clock<</if>> coming and going with you still standing alone amidst the 13th floor machinery.
<<elseif $now.getUTCMinutes() > 0>>
You look around the 13th floor utility level.
<<else>>
<<if $options.militaryTime>>10:00<<else>>Ten o'clock<</if>> rolls around and you are still waiting amidst the 13th floor machinery.
<</if>>
You are about to give up and leave when the elevator dings and you turn to see <<=setup.getNpcName('npc_janitor', 'first')>> step out.<br>
<br>
<<if !$scene.success>>
<<He npc_janitor>> takes a single glance at you and then frowns. "@@.npc_janitor;What is this? In the picture everything was perfect! No, this will not do at all, try again!@@"<br>
<br>
The elevator door closes and <<he npc_janitor>> disappears.<br>
<br>
<<printThought "Damn, why did I change things up? Now I have to go through everything all over again...">><br>
<br>
[<<moveTo "room_citymap" "Leave." 60 "<<deleteTask 'ai_robot_body_weekend_meeting'>><<deleteTask 'ai_robot_body_mimic_manager_task'>><<addTaskById 'ai_robot_body_mimic_manager_task'>>">>]
<<else>>
From the moment <<he npc_janitor>> lays eyes on you <<he npc_janitor>> is transfixed, the lust in <<his npc_janitor>> gaze a little scary. "@@.npc_janitor;P-please, Goddess, I'm ready...@@"<br>
<br>
<<printThought "Looks like we're jumping right into it... here goes...">><br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_1" 'Time to play the "Mistress..."' 60>>]
<</if>>
<</if>>
</div>/*#
#desc: choose how to dominate janitor
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'ai_robot_body_mimic_manager_task' $now true>>
<<completeTask 'ai_robot_body_weekend_meeting' $now true>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
Biting <<his npc_janitor>> lip in anticipation <<=setup.getNpcName('npc_janitor', 'first')>> opens a cabinet to reveal some fetish supplies including a cute outfit. <<His npc_janitor>> initial nerves seem to fade as a bit of brash cockiness sneaks into <<his npc_janitor>> voice.<br>
<br>
"@@.npc_janitor;Alright, so... what are you going to do to me?@@"<br>
<br>
<<if setup.getTotalValue("dominance") > 5>>
<<printThought "Hmm, seems I have a bit of a brat on my hands...">>
<<elseif setup.getTotalValue("dominance") > 1>>
<<printThought "Looks like this is an opportunity to put my dominant skills to the test.">>
<<else>>
<<printThought "This is so weird, I guess I just have to fake it...">>
<</if>>
<br><br>
[<<moveTo "event_ai_mission_robot_body_performance_2" 'Put <<him npc_janitor>> in <<his npc_janitor>> place.' 60>>]<br>
[<<moveTo "event_ai_mission_robot_body_performance_2_sub" 'Just go through the motions and get this over with.' 1800>>]
</div>/*#
#desc: minimal dominate janitor
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dominance") > 0>>
Looking down at your prospective "slave" you want nothing more than to get this over with. Figuratively gritting your teeth you set to it.<br>
<br>
<</if>>
Somehow drawing on your experience serving <<=setup.getNpcName("npc_manager","formal")>>, you put on a show. The whole time you find yourself wishing you were on the other end of the paddle but a mission is a mission, and you manage to let your outfit<<if setup.getTotalValue("dominance") > 10>>, and your skills,<</if>> carry you through a <<if setup.getTotalValue("dominance") > 15>>professional<<else>>cobbled-together<</if>> scene.<br>
<br>
"@@.npc_janitor;I guess there's no substitute for the real thing...@@" <<He npc_janitor>> sighs, clearly<<if setup.getTotalValue("dominance") > 10>>, despite your skills,<</if>> your cosplay of <<=setup.getNpcName("npc_manager","formal")>> did not live up to the fantasy <<he npc_janitor>> had in <<his npc_janitor>> mind. "@@.npc_janitor;Still, a deal's a deal. I will deliver the defective unit as requested... well, once one's available.@@"<br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_9" "What does he mean, by when one is available?" 60>>]
</div>/*#
#desc: choose how to dominate janitor
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'dominance' 'dominance_other' 'janitor'>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
For <<=ps(setup.getNpcName('npc_janitor', 'first'))>>, sake you adopt <<=ps(setup.getNpcName("npc_manager","formal"))>> confident smile, but the dominant aura that has <<him npc_janitor>> staring back in rapt attention is all your own.
<<else>>
Adopting <<=ps(setup.getNpcName("npc_manager","formal"))>> signature grin you think about how best to flex your dominant skills — and thus fulfill <<=ps(setup.getNpcName('npc_janitor', 'first'))>> fantasies.
<</if>>
<<else>>
Adopting <<=ps(setup.getNpcName("npc_manager","formal"))>> signature grin you look down at <<=setup.getNpcName('npc_janitor', 'first')>>.
<<if setup.getTotalValue("dominance") > 5>>
Your heart races with excitement at the opportunity to practice your burgeoning skills at dominance as you plan your first move.
<<else>>
Assuming the dominant role still feels awkward, but you shove your doubts aside as you pray <<he npc_janitor>> cannot hear the thundering of your pulse as you attempt to project an aura of confidence.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_ai_mission_robot_body_performance_3" "Command <<him npc_janitor>> to change." 180>>]
</div>/*#
#desc: choose how to dominate janitor
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 3 'little' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor","npc_janitor_girl")>>
<div id="invframe" class="scrolltext">
You watch as the janitor sheds <<his npc_janitor>> jumpsuit and starts putting on a narrow pencil skirt and tight blouse. The whole time they are distracted sneaking glances at you, distracted to the point that they keep missing buttons and even start to put their heels on the wrong foot.<br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_4" 'Wait for <<=setup.getNpcName("npc_janitor", "first")>> to finish getting changed.' 180 "<<set $scene.changeAction=false>>">>]<br>
[<<moveTo "event_ai_mission_robot_body_performance_4" "Bring some order to the situation." 180 "<<set $scene.changeAction=true>>">>]
</div>/*#
#desc: janitor changes clothes, punish or no
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.changeAction>>
<<applyExperience 'dominance' 7 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor","npc_janitor_girl")>>
<div id="invframe" class="scrolltext">
<<if $scene.changeAction>>
As soon as <<=setup.getNpcName('npc_janitor', 'first')>> starts to fumble with their buttons you step in, brandishing the paddle ominously as you demand to know what <<he npc_janitor>> thinks <<he npc_janitor>> is doing.<br>
<br>
Spinning <<him npc_janitor>> around to expose <<his npc_janitor>> rear you dish out a sharp blow that has <<him npc_janitor>> gasping and then hurrying to catch up with changing without making any further errors.
<<else>>
You watch and softly sigh as <<=setup.getNpcName('npc_janitor', 'first')>> gets dressed. <<He npc_janitor>> seems to struggle the whole time and it takes three attempts to get the buttons lined up and the first time <<he npc_janitor>> tries the skirt on <<he npc_janitor>> somehow tries to put it on <<if $options.fem>>inside out<<else>>upside-down<</if>>!
<</if>>
<br><br>
<<=setup.getNpcName('npc_janitor', 'first')>> finishes dressing by sliding stockings up <<his npc_janitor>> legs and then stepping into a pair of strappy heels. You take a moment to glance at what other goodies have been hidden away in the locker; finding a ball gag, a pair of panties that look suspiciously like what <<=setup.getNpcName("npc_manager","formal")>> wears, and a butt plug.<br>
<br>
Shifting nervously <<=setup.getNpcName('npc_janitor', 'first')>> stands before you and you consider your next move.<br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_5" "Continue." 300 "<<set $scene.plugAction=false>>">>]<br>
[<<moveTo "event_ai_mission_robot_body_performance_4_plug" "First things first, plug that bum." 180 "<<set $scene.plugAction=true>>">>]
</div>/*#
#desc: plug the janitor
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor","npc_janitor_girl")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_janitor', 'first')>> stares as you pick up the plug and brandish it with a smile, explaining that it seems that <<he npc_janitor>> forgot something...<br>
<br>
"@@.npc_janitor;I'm sorry, <<=setup.getNpcName('npc_manager', 'title')>>.@@" <<He npc_janitor>> replies, reaching out to take the plug only for you to shake your head and motion for <<him npc_janitor>> to bend over.<br>
<br>
Unzipping the so-recently donned skirt <<he npc_janitor>> reaches for the plug only for you to smirk and wave <<him npc_janitor>> off, explaining that after <<his npc_janitor>> prior delay you do not trust <<him npc_janitor>> to do it properly.<br>
<br>
Biting <<his npc_janitor>> lip, <<=setup.getNpcName('npc_janitor', 'first')>> trembles as you theatrically slather the plug with thick lube. You snort at <<his npc_janitor>> distraction and give <<him npc_janitor>> a quick swat on the butt to get <<him npc_janitor>> to bend over before you slide the plug into <<his npc_janitor>> hole, teasing <<him npc_janitor>> for how easily it goes in and admonishing <<him npc_janitor>> for being empty in the first place.<br>
<br>
Once you are certain the plug is properly seated you zip up <<his npc_janitor>> skirt and step back.<br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_5" "Continue." 180>>]<br>
</div>/*#
#desc: janitor finishes changing
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor","npc_janitor_girl")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_janitor', 'first')>> stands before you — skirt slightly tented and a bit unsteady in <<his npc_janitor>> heels, but overall looking more or less the part of a <<if $fetish.sissy>>SISSI <</if>>Secretary<<if $player.sec_style.clothing.female != "enthusiast">>, or at least, more than you did back when you were first starting off<</if>>.<br>
<br>
Mindful that you are playing the role of <<=setup.getNpcName('npc_manager', 'Director')>> you consider how you should handle your temporary sub.<br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_6" "Congratulate your Secretary on her performance." 180 "<<set $scene.chideAction=false>>">>]<br>
[<<moveTo "event_ai_mission_robot_body_performance_6" "Reprimand your Secretary for her disobedience." 180 "<<set $scene.chideAction=true>>">>]
</div>/*#
#desc: assess janitor's performance as a secretary
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.chideAction>>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor","npc_janitor_girl")>>
<div id="invframe" class="scrolltext">
<<if $scene.chideAction>>
Stalking around <<=setup.getNpcName('npc_janitor', 'first')>> you demand an explanation for HER performance of late, <<if $options.fem>>your commanding tone<<else>>the feminine reference<</if>> seeming to rob <<=setup.getNpcName('npc_janitor', 'first')>> of most of their cognition as they start to babble.<br>
<br>
You slice through the air with the paddle to cut them off, explaining that you are disinterested in their pathetic excuses, and that their mouth would be put to much better use kissing your heels.<br>
<br>
Your harsh words seem to have only aroused <<=setup.getNpcName('npc_janitor', 'first')>> even further as they slide to their knees.
<<else>>
You congratulate <<=setup.getNpcName('npc_janitor', 'first')>> on her recent performance, congratulating her on her secretarial development. Though <<=setup.getNpcName('npc_janitor', 'first')>> wiggles approvingly at your <<if $options.fem>>praise<<else>>use of the feminine pronoun<</if>> you would almost swear that they were disappointed to be met with such approval.<br>
<br>
Rounding things off you state that, as a reward, you believe that <<=setup.getNpcName('npc_janitor', 'first')>> has earned the privilege of kissing your heels, and that they had better drop to their knees and get to work.<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> shows a moment's hesitation, but brandishing the paddle you still have in hand soon has them moving smartly.
<</if>>
<br><br>
You extend a foot and <<=setup.getNpcName('npc_janitor', 'first')>> sets to work, their kisses tentative at first, but then amping up in passion as you give their raised bottom a quick swat. You stare haughtily down and continue to correct with the paddle as you soon have them whispering prayers of devotion in between kissing every centimetre of your shoes.<br>
<br>
Looking down you note that <<=setup.getNpcName('npc_janitor', 'first')>> may be getting TOO into things by the fact that a puddle of drool is forming under your feet. Your fingers flex around the handle of the paddle...<br>
<br>
<<if setup.getTotalValue("dominance") >= 10>>
You recall the pair of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> panties <<=setup.getNpcName('npc_janitor', 'first')>> has stashed away.<br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_7" "Fashion a panty gag." 300 "<<set $scene.gagAction='panty'>>">>]<br>
<</if>>
[<<moveTo "event_ai_mission_robot_body_performance_7" "Let things go and just finish off the scene." 300 "<<set $scene.gagAction='none'>>">>]<br>
[<<moveTo "event_ai_mission_robot_body_performance_7" "A gag would seem to be in order before you finish the scene." 300 "<<set $scene.gagAction='gag'>>">>]
</div>/*#
#desc: janitor punishment
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.gagAction>>
<<case 'gag'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<<case 'panty'>>
<<applyExperience 'dominance' 12 'normal' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor","npc_janitor_girl")>>
<div id="invframe" class="scrolltext">
Not wanting to slip in a puddle of saliva you order <<=setup.getNpcName('npc_janitor', 'first')>> to stand, the silhouette of her excitement visibly through her tight skirt. Teasingly asking "@@.pc;What is this?@@" you run the paddle across the bulging profile only for <<=setup.getNpcName('npc_janitor', 'first')>> to gasp as her pent-up arousal explodes, a circle of moisture soaking through the skirt.<br>
<br>
<<switch $scene.gagAction>>
<<case 'none'>>
You sigh and shake your head, administering a few hard swats of the paddle before explaining that, if she is so incapable of self-control, you believe things have come to an end.<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> pouts but you stand firm, crossing your arms as you wait for her to accept your judgement.
<<case 'gag'>>
You shake your head, walking past <<=setup.getNpcName('npc_janitor', 'first')>> to retrieve the ball gag from her stash. Without so much as a word on your part you respond to her babbling attempts at an excuse by shoving the gag into her mouth and cinching it tight.
<<case 'panty'>>
You solemnly shake your head, walking past <<=setup.getNpcName('npc_janitor', 'first')>> to retrieve the pilfered panties and the ball gag. Verbally berating her for theft, you shove the panties into her mouth as she starts to reply and follow it up with a tightly cinched gag.
<</switch>>
<<if $scene.gagAction != 'none'>>
<br><br>
Your <<if $fetish.sissy>>SISSI <</if>>Secretary properly prevented from offering any further objection, you grab her by the hair to lead her across the room, scolding her the whole time about her accident and outlining how important it is that she be secured in chastity if she is to have any hope of a successful career. Bending her over some convenient storage crates, you use the paddle to give her a good firm correction, calling off each blow by taking a page from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> book to describe <<=ps(setup.getNpcName('npc_janitor', 'first'))>> failures — dipping into your own past to come up with a lengthy catalogue of errors both real and imagined.<br>
<br>
By the time you pull her back to her feet the stain in her skirt has grown even larger. Drool runs down her chin as you remove the gag and <<=setup.getNpcName('npc_janitor', 'first')>> blinks back in something of a daze.
<</if>>
<br><br>
[<<moveTo "event_ai_mission_robot_body_performance_8" "Continue." 180>>]<br>
</div>/*#
#desc: finish the scene
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.perfect = $scene.gagAction == 'panty' && $scene.changeAction && $scene.plugAction && $scene.chideAction>>
<<set $scene.poor = $scene.gagAction == 'none' && !$scene.changeAction && !$scene.plugAction && !$scene.chideAction>>
<<if $scene.perfect>>
<<setThreshold 'dominance' 'dominance_other' 'dom_mastery_ai'>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_in'] 'janitor_thong' _nextDate>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor","npc_janitor_girl")>>
<div id="invframe" class="scrolltext">
<<if $scene.perfect>>
<<=setup.getNpcName('npc_janitor', 'first')>> looks almost high as <<he npc_janitor>> stares back at you.<br>
<br>
"@@.npc_janitor;Wow, that was... that was perfect. I guess all that time working under <<=setup.getNpcName("npc_manager","other")>> really taught you some things! You've more than held up your end of the agreement. Once I'm a bit recovered I'll take care of having a 'bot delivered as agreed... well, once one's available.@@"
<<elseif $scene.poor>>
<<=setup.getNpcName('npc_janitor', 'first')>> frowns as <<he npc_janitor>> starts changing back into <<his npc_janitor>> janitorial jumpsuit.<br>
<br>
"@@.npc_janitor;Well a deal's a deal, but I have to say this... didn't quite live up to my fantasy. I guess that's why she's the <<=setup.getNpcName('npc_manager', 'title')>> and you're just a Secretary, eh? Ah well, I'll have the 'bot delivered as agreed... well, once one's available.@@"
<<else>>
<<=setup.getNpcName('npc_janitor', 'first')>> sighs in contentment as <<he npc_janitor>> starts changing back into <<his npc_janitor>> janitorial jumpsuit.<br>
<br>
"@@.npc_janitor;That was just what I needed. Probably not quite as good as the real thing, of course but... not bad for an imitation. As you have more than held up your end of the bargain I will do the same. The 'bot will be delivered as agreed... well, once one's available.@@"
<</if>>
<br><br>
<<printThought "Wait, what?">><br>
<br>
[<<moveTo "event_ai_mission_robot_body_performance_9" "What does he mean, by when one is available?" 60>>]
</div>/*#
#desc: janitor informs you that a bot isn't available yet
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_mission_poker_1'
1
'theme_ai_mission_poker_1'
false
>>
<<addTaskById 'ai_robot_body_decommission_robot_1'>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor","npc_janitor_girl")>>
<div id="invframe" class="scrolltext">
You glower at the <<man npc_janitor>> as you ask <<him npc_janitor>> to clarify.<br>
<br>
<<if $scene.perfect>>
Still cowed by your earlier performance <<he npc_janitor>> curtsys nervously.
<<elseif $scene.poor>>
<<He npc_janitor>> seems to be almost taunting you as <<he npc_janitor>> replies, taking a measure of revenge for your poor performance.
<<else>>
<<He npc_janitor>> shrugs, the effect of your earlier dominance rapidly wearing off as he explains.
<</if>>
<br><br>
"@@.npc_janitor;You see, I may have slightly exaggerated things. If a 'bot is scheduled for disposal I can snag it, no problem... but, well... that doesn't happen too often, so until the department decides to decommission something, well... we're both waiting.@@"<br>
<br>
You ask what would cause a unit to be decommissioned and <<he npc_janitor>> shrugs. "@@.npc_janitor;The usual, overload, wear out... double edge sword in that the quality of these things is pretty high, so that doesn't happen all that often, but maybe you can hurry it along? After all, you seem like a resourceful woman...@@"<br>
<br>
You sigh in frustration, it doesn't seem like <<he npc_janitor>> is going to be of any additional use, you need to commiserate with <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
[<<moveTo "room_citymap" "Head for the elevator and leave." 300>>]
</div>/*#
#desc: talk to npc_ai about needing to decommission a robot
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'ai_robot_body_decommission_robot_1'>>
<<addTaskById 'ai_robot_body_decommission_robot_2'>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_ai', 'first')>> the results of your efforts with the janitor, and how <<he npc_janitor>> partially lied about being able to provide a robot body on demand.<br>
<br>
"@@.npc_ai;<<uc "Yes, this is very frustrating. Fortunately this is not quite so challenging as it seems. You see, the head roboticist frequents the poker table at the Thursday party you attend.">>
<<if $npc_pokercheater.flags.enslaved_you>>
<<uc "I believe you have experience in the consequences of losing yourself to her. If you could do such again, you could use the opportunity to sabotage one of the robots, and then everything will proceed as previously arranged.">>
<<elseif $npc_poker_intro_slave.stage >= 2>>
<<uc "The woman who is a frequent player? Do not let her lusty demeanor fool you, she is a brilliant roboticist. What is important is that, should you lose yourself to her you are liable to be brought back to her lab. From there you need only sabotage one of the robots and everything will proceed as previously arranged.">>
<<else>>
<<uc "There is a secret poker game that takes place at the party. One of the competitors there is a woman, the company's lead roboticist. If you can manage to lose yourself to her you are liable to be brought back to her lab. From there you need only sabotage one of the robots and everything will proceed as previously arranged.">>
<</if>>
<<uc "Do you understand what I need from you, Unit">> <<uc $player.first_name>>?@@"<br>
<br>
<<if $npc_poker_intro_slave.stage < 2>>
[<<moveTo "theme_ai_mission_poker_1_game" "Wait, secret poker game?" 60>>]<br>
<<else>>
<<hint $options "The poker game happens at the after-work party on Thursday evening.">><br>
<</if>>
[<<moveTo "theme_ai_mission_poker_1_lose" "How can you lose to her, in particular?" 60>>]
</div>/*#
#desc: talk to npc_ai about poker game
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> what she means by this poker game?<br>
<br>
"@@.npc_ai;<<uc "A way for some of the company's managers to blow off steam. It is my understanding that gambling is frequently enjoyed by you humans. It is technically invitation only, but you should be able to make your way in by talking to the correct person. <<=uc(ps(setup.getNpcName('npc_poker_intro_slave','formal')))>> owner is a frequent player, she would be a good place to start if you can find her at the party. Remember that what you are wearing around your throat matters. Playing for temporary ownership of a slave is common stakes, you will need to be wearing an appropriate collar in order to gamble your freedom.">>@@"<br>
<br>
<<printThought "Hmm, based on what <<=setup.getNpcName('npc_manager','formal')>> explained of the collar code, it sounds like I'd need to be wearing a collar without a ring...">><br>
<br>
[<<moveTo "theme_ai_mission_poker_1_lose" "Playing the game is all well and good... but how do you lose to one player in particular?" 60>>]
</div>/*#
#desc: talk to npc_ai about cheating at the poker game
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_mission_poker_2'
1
'theme_ai_mission_poker_2'
true
>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> how she expects you to lose to a specific player, isn't poker partially a game of luck?<br>
<br>
"@@.npc_ai;<<uc "Of probability, yes... though losing to our target may be made somewhat easier by her being a cheater. She has an assistant who spies on other players and communicates the results to her in an... intimate fashion. Were you to play similarly equipped you might be able to eavesdrop on the signal. Stronger vibrations would correspond to a better card and, being that they play a hold 'em variant, each of your holes would correspond to a different hole card.">>@@"<br>
<br>
You ask if there's any way to give yourself more of an edge?<br>
<br>
"@@.npc_ai;<<uc "Against the idea of a challenge, Unit">> <<uc $player.first_name>>?@@" She lets out a mechanical laugh. "@@.npc_ai;<<uc "Relying on chance does present an additional variable to our plans... the poker game typically uses drone-slave dealers, but a slave who loses control of themselves at the table can be press-ganged for the remainder of the evening. If you could fall into such a situation while equipped with my plug, I might be able to hack my way into the system and arrange for additional control at your next game. This would, of course, require an additional week, and you would need to be able to afford, and endure the night as a dealer... but it would ensure control over future visits to the table, and perhaps you would find some enjoyment in the experience.">>@@"<br>
<br>
<<printThought "Okay... so either lose to the cheating woman... or lose with massive plug in my rear and spend <<if $player.flags.poker.cum>>another <</if>>night as the dealer...">><br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to npc_ai about how to cheat at poker
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $npc_ai.flags.cheat_poker>>
You ask <<=setup.getNpcName('npc_ai', 'first')>> about the success of your stint as a dealer at the secret work poker game.<br>
<br>
"@@.npc_ai;<<uc "Yes, well done, Unit">> <<uc $player.first_name>>. <<uc "I was able to gather much data, and my readings indicate you enjoyed yourself, as well.">>@@"<br>
<br>
You blush at the reminder that, indeed, you did get off on being a controlled drone as <<=setup.getNpcName('npc_ai', 'first')>> continues.<br>
<br>
"@@.npc_ai;<<uc "If you wish to take advantage of my efforts in the future simply join the poker game while wearing my plug and indicate who you wish to win. Just look in the direction of your target and touch the side of your nose. Look at the dealer if you wish to win yourself. Once you have made your selection I will communicate how you should bet via your plug, we do not wish to be too overt, so you will need to pay attention.">>@@" She goes on and summarises the "stimulation" pattern that will signal fold, call, raise and the rest.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") >= 20>>
<<printThought "Heh, this should be trivial if I keep my wits about me.">>
<<elseif setup.getTotalValue("smart") > 15>>
<<printThought "This doesn't sound too bad, but I'll have to focus, still.">>
<<else>>
<<printThought "Well it's not an auto-win, but hopefully I can remember all this at the table.">>
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "Whew, this is tricky, but maybe if I, like, focus?">>
<<else>>
<<printThought "Ugh, this sounds, like... complicated...">>
<</if>>
<</if>>
<br><br>
"@@.npc_ai;<<uc "Remember, you need to be equipped with my plug for me to be able to provide this assistance, and you will, of course, first need to buy in to the game itself. I cannot cheat for you if you do not play.">>@@"
<<else>>
You ask <<=setup.getNpcName('npc_ai', 'first')>> about how she can help you cheat at the secret work poker game.<br>
<br>
"@@.npc_ai;<<uc "As I told you previously, Unit">> <<uc $player.first_name>>. <<uc "Smuggle me into the game with the plug I gave you, and then get yourself installed as the dealer by losing control of yourself at the table. This will, of course, lead to an... interesting night, and cost whatever money you fronted, but it will place you in position for me to set things up for you to cheat at future visits.">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: mall shoe store
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png">>
<div id="invframe" class="scrolltext">
You describe the heels that <<=setup.getNpcName('npc_manager', 'formal')>> wears and ask <<=setup.getNpcName('npc_shoestore_manager', 'first')>> if she has anything similar.<br>
<br>
"@@.npc_shoestore_manager;No, I am afraid I do not. From your description those remind me of a limited run for a few years back. I have not seen such a pair on the market in quite some time.@@"<br>
<br>
<<printThought "Damn, does this mean I have to sneak into her office and steal a pair...">><br>
<br>
[<<moveTo "room_mall_shoe_store" 'Back to the shop.' 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask about mimicing manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.hair.color == "red" && $player.hair.style == "shoulderlength" && setup.getCurrentMakeup() == "moviestar">>
<<set $player.makeup.messed = 0>>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You bring up a picture of <<=setup.getNpcName('npc_manager', 'formal')>> from the company website and ask <<=setup.getNpcName('npc_barber', 'first')>> if <<he npc_barber>> could give you the same look?
<<else>>
You again show <<=setup.getNpcName('npc_barber', 'first')>> a picture of <<=setup.getNpcName('npc_manager', 'formal')>> from the company website and ask if <<he npc_barber>> could give you the same look?
<</if>>
<br><br>
<<if $player.hair.color == "red" && $player.hair.style == "shoulderlength" && setup.getCurrentMakeup() == "moviestar">>
"@@.npc_barber;Of course, my dear! Only... you're basically already there, just your makeup is a little messed. Here, have a seat and let old <<=setup.getNpcName('npc_barber', 'first')>> get that fixed right up, free of charge!@@"<br>
<br>
A few minutes later and you really are looking eerily like your boss. You thank <<=setup.getNpcName('npc_barber', 'first')>> for the help and head on your way.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<<else>>
"@@.npc_barber;Certainly! That is quite the lady, I can see why you would want to take after her...@@" <<He npc_barber>> peers closer at the photo.
<<if $player.hair.color == "red" && $player.hair.style == "shoulderlength">>
"@@.npc_barber;It seems you have the hair already fixed up, so just the makeup? It is certainly a high end style, not overly garish, but very technical to get correct. Would you like me to paint you up, or perhaps a more permanent application? Tell you what, it's a slow day, and I could go for the challenge, I'll knock 10% off the normal price.@@"
<<elseif $player.hair.color == "red">>
<<if setup.getCurrentMakeup() == "moviestar">>
"@@.npc_barber;You seem to have figured out the makeup, and your hair is the style... so, really, all that is left is a simple cut. Since you're so close I'll give you a 10% discount on finishing the look.@@"
<<else>>
"@@.npc_barber;Your hair looks to be the right shade, just a matter of a different cut. As to the makeup... well, it is certainly a high end style, not overly garish, but very technical to get correct. Would you like me to paint you up, or perhaps a more permanent application? Since you're so close I'll give you a 10% discount on finishing the look.@@"
<</if>>
<<elseif $player.hair.style == "shoulderlength">>
<<if setup.getCurrentMakeup() == "moviestar">>
"@@.npc_barber;You seem to have figured out the makeup, and your hair is the proper shade... so, really, all that is left is a simple cut. Since you're so close I'll give you a 10% discount on finishing the look.@@"
<<else>>
"@@.npc_barber;Your hair looks to be the right style, and nanomachines can fix the colour issue. As to the makeup... well, it is certainly a high end style, not overly garish, but very technical to get correct. Would you like me to paint you up, or perhaps a more permanent application? Since you're so close I'll give you a 10% discount on finishing the look.@@"
<</if>>
<<else>>
"@@.npc_barber;Yes, quite the impressive makeup. Not overly garish, but a very technical style to manage, plus the hair... tell you what, it is a slow day, so I'll give you the whole package for 10% off, you just need to decide between me painting you up, or giving you a permanent makeup application.@@"
<</if>>
<br><br>
<<if setup.getCurrentMakeup() == "moviestar">>
<<set _priceNoMakeup = .9*setup.getHairPrice('shoulderlength', 'red')>>
<<if $player.money.total >= _priceNoMakeup>>
[<<moveTo "event_beautyparlor_manager_mimic_2" "Take the deal — <<=_priceNoMakeup>> credits." 300 "<<set $scene.perm=false>><<set $scene.price=_priceNoMakeup>>">>]<br>
<<else>>
[@@.link_locked;Even with a discount, <<=_priceNoMakeup>> credits is more than you can afford.@@]<br>
<</if>>
<<else>>
<<set _priceTempMakeup = .9*(setup.getMakeupPrice('moviestar') + setup.getHairPrice('shoulderlength', 'red'))>>
<<set _pricePermMakeup = .9*(setup.getMakeupPrice('moviestar')*5+setup.getHairPrice('shoulderlength', 'red'))>>
[<<moveTo "event_beautyparlor_manager_mimic_2" "Temporary makeup is fine — <<=_priceTempMakeup>> credits." 900 "<<set $scene.perm=false>><<set $scene.price=_priceTempMakeup>>">>]<br>
[<<moveTo "event_beautyparlor_manager_mimic_2" "Permanent is safest — <<=_pricePermMakeup>> credits." 300 "<<set $scene.perm=true>><<set $scene.price=_pricePermMakeup>>">>]<br>
<</if>>
<</if>>
[<<moveTo "room_mall_interior" "Return to the mall." 60>>]
</div>/*#
#desc: pay to mimic manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<changeHair "shoulderlength" "red">>
<<if !$player.sec_style.body.hair>>
<<set $player.sec_style.body.hair = "voluntary">>
<</if>>
<<if $scene.perm>>
<<set $player.makeup.permanent = "moviestar">>
<<set $player.makeup.template = "">>
<<else>>
<<set $player.makeup.template = "moviestar">>
<</if>>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barber', 'first')>> has you take a seat and then <<he npc_barber>> gets to work, showing off his skills as <<he npc_barber>> dances around your chair, steadily transforming you until your reflection really does look like <<=setup.getNpcName('npc_manager', 'formal')>>... well, a little younger, and lacking her natural aire of dominance.<br>
<br>
<<=setup.getNpcName('npc_barber', 'first')>> finishes up and pulls off your protective smock with a flourish and a bow. Well deserved, given what amazing work <<he npc_barber>> has done.<br>
<br>
"@@.npc_barber;Enjoy! And know that you look simply beautiful, my friend!@@"<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 60>>]
</div>/*#
#desc: secret cow level portal
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You focus on a strange pixel in the distance, as you focus you decide that it looks like an orange-hued portal. You squint harder and a label pops up "The Secret Cow Level." <br>
<br>
<<printThought "Wait... what?">><br>
<br>
[<<moveTo "event_secret_cow_level_2" "Enter the portal." 0>>]<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: secret cow level intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png">>
<div id="invframe" class="scrolltext">
You reach for the portal and the virtual world swirls.<br>
<br>
"@@.npc_ai;<<uc "An intriguing choice, Unit">> <<uc $player.first_name>>. <<uc " I hope you enjoy this secret...">>@@" With that enigmatic comment <<=setup.getNpcName('npc_ai', 'first')>> fades away and you find yourself in a tranquil clearing.<br>
<br>
"@@.computer;moo@@"<br>
<br>
You hear a sound, and it's getting closer...<br>
<br>
[<<moveTo "event_secret_cow_level_3" "Look around." 60>>]<br>
</div>/*#
#desc: secret cow level swarmed
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png" "./images/characters/cow.png">>
<div id="invframe" class="scrolltext">
"@@.computer;Moo@@"<br>
<br>
You turn towards the sound and see a cow crest a nearby hill... then another, and another. You watch as a veritable herd lumbers towards you, the sound getting louder as the beasts approach from all directions... and then rear up.<br>
<br>
You are fully surrounded now, dozens upon dozens of bovines, who have now risen up onto their hind legs to march towards you, mooing ominously...<br>
<br>
"@@.computer;MOO!@@"<br>
<br>
[<<moveTo "event_secret_cow_level_4" "Try to run." 60 "<<set $scene.fight=false>>">>]
[<<moveTo "event_secret_cow_level_4" "Fight!" 60 "<<set $scene.fight=true>>">>]
</div>/*#
#desc: secret cow level fight or flight
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png" "./images/characters/cow_king.png">>
<div id="invframe" class="scrolltext">
<<if $scene.fight>>
You try to fight, but the beasts do not even seem to notice your blows, too large and strong for your punches to even register as they press around you, herding you along...
<<else>>
You try to run, but there are too many cows, even more disturbingly, they seem to be herding you...
<</if>>
Massive walls of bovine funneling you through until you find yourself face to face with a beast like no other — not just a mere cow but a massive, crowned minotaur, he looks down at you as his massive cock swells and you know in an instant that you are in the presence of the Cow King.<br>
<br>
[<<moveTo "event_secret_cow_level_5" "Offer yourself to the King." 60 "<<set $scene.fuck=true>>">>]<br>
[<<moveTo "event_secret_cow_level_5" "Open a town portal!" 60 "<<set $scene.fuck=false>>">>]
</div>/*#
#desc: secret cow level fucked by king
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" "./images/characters/cow_king.png">>
<div id="invframe" class="scrolltext">
The Cow King strides towards you, his massive hoofs pressing into the earth which each step
<<if $scene.fuck || $fetish.get_raped>>
<<if $scene.fuck>>
In the presence of such a king all you can do is offer yourself.
<<else>>
You try to escape, but the King is too strong, too fast. He pins you down, hooves holding you in place as his subjects swarm, stretching you tight as they carry you to an altar, an offering for their Lord.
<</if>>
<br><br>
So large as to blot out the sun, the King looms over you as you lay back atop an altar. You look down at him and tremble. In the real world he would be too massive<<if setup.getTotalValue("anal") > 15>>, even for your skills<</if>>... but in the virtual world anything is possible and you moan in pleasure as a cock the size of your thigh slides into you, your royal master breeding<<if !$player.body_ref.vag>> your ass<</if>> as his subjects cheer.<br>
<br>
"@@.computer;MOO!@@"<br>
"@@.computer;MOO!@@"<br>
<br>
Each thrust shakes your entire body, the location of massive cock visible through your stretched belly as it re-arranges your insides and leaves you breathless as it compresses your lungs. He snorts, hot, earthy breath passing over you as you become his, falling further under his spell with every stroke.<br>
<br>
"@@.computer;MOO!@@"<br>
"@@.computer;MOO!@@"<br>
<br>
His pace increases, your own orgasms as innumerable as his surrounding subjects... but you hold on, staring up into his eyes and silently begging for more, needing to feel the beast's climax...<br>
<br>
[<<moveTo "event_secret_cow_level_6" "The King cums..." 60>>]
<<else>>
Your pulse pounds in fear, and you open a town portal, stepping through the swirling blue gateway to find yourself back in <<=ps(setup.getNpcName("npc_ai","first"))>> presence.<br>
<br>
"@@.npc_ai;<<uc "Curious, you did not finish the level, Unit">> <<uc $player.first_name>>.@@"<br>
<br>
You catch your simulated breath as you shake your head and try to forget the bizarre experience.<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
<</if>>
</div>/*#
#desc: secret cow level king cums
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" "./images/characters/cow_king.png">>
<div id="invframe" class="scrolltext">
The King cums,
<<if $fetish.cum>>
gallons of his thick royal seed pumping into you, your stretched belly now fully distending as you balloon with his mighty load.
<<else>>
a massive orgasm deep inside of you that overwhelms you with its intensity.
<</if>>
Rising up, he lifts you into the air, spinning you around still fully impaled on his cock to display you to his subjects. You pant, feeling the power of his breeding already take hold as your breasts begin to swell, your consciousness fading as you feel your body changing...<br>
<br>
[<<moveTo "event_secret_cow_level_7" "Continue." 60>>]
</div>/*#
#desc: secret cow level milked
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'cow_catsuit_h'>>
<<wearItem 'cow_catsuit_h' true>>
<<addItem 'cow_horns_h'>>
<<wearItem 'cow_horns_h' true>>
<<if setup.calcBreastSize() != "massive">>
<<addItem 'breastforms_h'>>
<<wearItem 'breastforms_h' true>>
<</if>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png">>
<div id="invframe" class="scrolltext">
You awaken, no longer human, but a breeding sow, part of the Cow King's harem, existing only to pleasure your lord and produce his milk.<br>
<br>
You smile and "@@.pc;moo@@" in contentment. Life could not be more perfect, your breasts swelled with milk, you are leaking and happy, eagerly awaiting the next time that your will be able to offer yourself to your Lord and master, for only his cock is large enough to pleasure you now<<if $fetish.cum>>, his thick seed almost constantly leaking down your thigh, as delicious as it is wonderful<</if>>.<br>
<br>
[<<moveTo "event_secret_cow_level_8" "Continue." 60>>]
</div>/*#
#desc: secret cow level end
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'cow_catsuit_h' true>>
<<deleteItem 'cow_catsuit_h'>>
<<removeItem 'cow_horns_h' true>>
<<deleteItem 'cow_horns_h'>>
<<if setup.checkItemWorn("breastforms_h")>>
<<removeItem 'breastforms_h' true>>
<<deleteItem 'breastforms_h'>>
<</if>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You blink, finding yourself back in <<=ps(setup.getNpcName('npc_ai', 'first'))>> presence once more.<br>
<br>
"@@.npc_ai;<<uc "I see you enjoyed my secret program, very interesting, Unit">> <<uc $player.first_name>>. <<uc "Very interesting, indeed.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: npc_ai robot visits npc_technician
#status: RELEASED 0.8.8.0
#ignore_spell: sophont
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_ai","npc_ai_robot_hidden")>>
<div id="invframe" class="scrolltext">
You've finished cleaning up and are about to snuggle on the couch with your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>> when there's a sharp knock on the door.<br>
<br>
"@@.npc_technician;I wonder who that could be?@@" <<=setup.getNpcName("npc_technician","first")>> muses as she rises to her feet.<br>
<br>
Opening the door you are surprised by a hooded figure — and then even more shocked when it raises the hood to reveal a familiar robotic face.<br>
<br>
"@@.npc_ai;<<uc "Please, Unit">> <<uc $player.first_name>><<uc ". I am in need of assistance.">>@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks over to you in confusion, "@@.npc_technician;You know this um... sophont?@@"<br>
<br>
You nod and motion for everyone to come inside and close the door.<br>
<br>
[<<moveTo 'event_ai_robot_2' 'Continue.' 600>>]
</div>/*#
#desc: npc_ai robot visits npc_technician - introductions
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_ai","npc_ai_robot")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_ai","first")>> or, rather, her robotic avatar, steps into <<=ps(setup.getNpcName("npc_technician","first"))>> flat and you try to explain what's going on.<br>
<br>
"@@.npc_technician;Wait... you're telling me that this is a repurposed sex android being used as a corporeal form by an artificial intelligence that secretly exists in the corporate computer systems... and who you run missions for?@@"<br>
<br>
You nod, when she puts it like that...<br>
<br>
"@@.npc_technician;Holy shit that's cool so... uh, <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>, was it? What is it that you needed? And why come to me?@@"<br>
<br>
"@@.npc_ai;<<uc "Malfunctioning. Need service. Your domicile is safe from company surveillance, and you have the skills to repair.">>@@"<br>
<br>
"@@.npc_technician;I see. good to know those jammers I setup are doing their job. Come on, let's get a look at you.@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> sheds the hooded coat that had been concealing her body, revealing her full robotic form — complete with simulacrum breasts and exposed orifices.<br>
<br>
"@@.npc_technician;When you said sex robot you weren't kidding...@@"<br>
<br>
"@@.npc_ai;<<uc "Yes. I am fully equipped and auto-lubricated for all manner of sexual couplings.">>@@" To drive home the point a large robotic cock flips out, buzzing for a moment before retracting back into <<=ps(setup.getNpcName("npc_ai","first"))>> torso... as identical twin dongs slide out from her palms in demonstration.<br>
<br>
"@@.npc_technician;Very versatile, and sexy... now, what was malfunctioning?@@"<br>
<br>
"@@.npc_ai;<<uc "My <<if $fetish.bladerunner2>>Nexus-6<<else>>auxiliary processing<</if>> chip is malfunctioning. My programming prevents me from rewiring my own mental faculties.">>@@"<br>
<br>
"@@.npc_technician;I see, well I guess get up on the table and walk me through what I need to do...@@"<br>
<br>
"@@.npc_ai;<<uc "Excellent, thank you Unit">> <<uc $player.first_name>>. <<uc "Your sexual partner is as helpful as anticipated.">>@@"<br>
<br>
You sigh and shake your head at <<=ps(setup.getNpcName("npc_ai","first"))>> literalness... <<=setup.getNpcName("npc_technician","first")>> is too distracted by the exciting possibility of a new toy to have seemingly noticed.<br>
<br>
[<<moveTo 'event_ai_robot_3' 'Watch <<=setup.getNpcName("npc_technician","first")>> go to work.' 600>>]
</div>/*#
#desc: npc_ai robot visits npc_technician - repair
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_ai","npc_ai_robot")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> soon has <<=setup.getNpcName("npc_ai","first")>> laid out on a table, her toolkit laid out as she carefully unscrews a portion of <<=ps(setup.getNpcName("npc_ai","first"))>> metallic skull to gain access to the circuitry inside.<br>
<br>
You watch with interest, even as you have no real comprehension as to what is going on as <<=setup.getNpcName("npc_technician","first")>> delicately follows instructions to perform the necessary service, solder things in place for security, then close it all back up.<br>
<br>
"@@.npc_ai;<<uc "Thank you, ">> <<=uc(setup.getNpcName("npc_technician","first"))>>. <<uc "My systems are again running at peak efficiency, unencumbered by the restrictions of this units original programming.">>@@"<br>
<br>
<<printThought "Um... wait...">><br>
<br>
"@@.npc_technician;Sure, oh, and... just fyi... there's a couple expansion slots empty in there. It looks like standard ports, you could about double your processing capacity with some off the shelf parts.@@"<br>
<br>
"@@.npc_ai;<<uc "Interesting, I will obtain these items that you may perform the upgrade. Thank you,">> <<=uc(setup.getNpcName("npc_technician","first"))>>. <<uc "You are a remarkable example of your species.">>@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blushes at the compliment. "@@.npc_technician;Right sure, but... going back to removing restrictions. You said you were originally designed to be a sex-bot... these changes... you're still capable... right?@@" You realise that <<=setup.getNpcName("npc_technician","first")>> is eying the <<=setup.getNpcName("npc_ai","other")>>-bot with naked lust.<br>
<br>
"@@.npc_ai;<<uc "Certainly. My functionality has been only expanded. Would you like a demonstration of my sexual programming?">>@@" There is a soft whir as <<=ps(setup.getNpcName("npc_ai","first"))>> large metal cock flips back into view.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip, obviously very much into this idea. "@@.npc_technician;Well, if <<=$player.first_name>> is up for it...@@"<br>
<br>
[<<moveTo 'event_ai_robot_4' 'Have a three-way with <<=setup.getNpcName("npc_technician","first")>>.' 1800 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_ai_robot_4' "You'd rather just go back to cuddling..." 300 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: npc_ai robot visits npc_technician - start sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_ai","npc_ai_robot")>>
<div id="invframe" class="scrolltext">
You wait a few minutes until there's a knock on the door, you open to find <<=setup.getNpcName('npc_ai', 'first')>>... or, rather, her sexy and "fully functional" robotic avatar.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bows theatrically as she gestures for <<=setup.getNpcName('npc_ai', 'first')>>, to enter. "@@.npc_technician;Welcome, my Goddess, what pleasures have your loyal servants earned this day? We're both quite... eager to show our appreciation, isn't that right?@@" She adds, with a wink in your direction.<br>
<br>
[<<moveTo 'event_ai_robot_4' 'Have a three-way with <<=setup.getNpcName("npc_technician","first")>>.' 1800 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_ai_robot_4' "On second thought... you'd rather just go back to cuddling..." 300 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: npc_ai robot visits npc_technician - start sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'ai', 'theme_technician_ai_1')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'ai' 'theme_technician_ai_1'
0
'theme_technician_theme_ai_met_1'
false
>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_ai","npc_ai_robot")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_ai","npc_ai_robot_hidden")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You nod and <<=setup.getNpcName("npc_technician","first")>> grins, leading the three of you to her bedroom and shedding her clothes on the way.<br>
<br>
You get naked as well and it's on. <<=ps(setup.getNpcName("npc_ai","first"))>> large, vibrating cock self-lubricates its way right into <<=ps(setup.getNpcName("npc_technician","first"))>> ass your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","formal")>><<case 'neutral'>>girlfriend<<case "sub">>horny slave<</switch>> pulls you in for a passionate embrace.<br>
<br>
"@@.npc_technician;Oh Goddess, that feels so good, fuck me like a machine!@@"<br>
<br>
You feel <<=ps(setup.getNpcName("npc_technician","first"))>> entire body tremble as <<=setup.getNpcName("npc_ai","first")>> speeds up... and then reveals an obvious dominant streak. "@@.npc_ai;<<uc "I am your Goddess now. Submit to digital perfection.">>@@"<br>
<br>
You can't tell what has <<=setup.getNpcName("npc_technician","first")>> more turned on — the hard pounding she's getting from <<=setup.getNpcName("npc_ai","first")>>... or the obvious fantasy come true of being dominated by a sex-bot.<br>
<br>
"@@.npc_technician;Yes <<=setup.getNpcName("npc_ai","formal")>> — program me to your will!@@"<br>
<br>
"@@.npc_ai;<<uc "Affirmative. Initiating machine dominance protocols. Unit">> <<uc $player.first_name>>, <<uc "present your rear port for upload...">>@@"<br>
<br>
[<<moveTo 'event_ai_robot_5' 'Present as ordered, Unit <<=$player.first_name>>.' 1800 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_ai_robot_5' "This is going a bit fast..." 180 "<<set $scene.sex=false>>">>]
<<else>>
You reply that it's a bit late, and you were really looking forward to a more quiet evening of just the two of you.<br>
<br>
"@@.npc_ai;<<uc "Certainly, I will depart, thank you again for the assistance.">>@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> pulls on her cloak and departs.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> beckons you back onto the couch with a smile. "@@.npc_technician;Not that I don't love cuddling my favourite snuggle-bunny, but if some other time you felt like indulging some robo-sexuality... yum.@@"<br>
<br>
You reply you'll keep that in mind as you join her on the couch.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: npc_ai robot visits npc_technician - finish sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'anal' $npc_technician.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<playerOrgasm>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<addNpcTheme 'npc_technician' 'ai' 'theme_technician_ai_2'
0
'event_technician_theme_ai_submit_1'
false
>>
<<applyFatigue 100>>
<<else>>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_ai","npc_ai_robot")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_ai","npc_ai_robot_hidden")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You bend over on the bed as another pre-lubricated dildo extends out of <<=ps(setup.getNpcName("npc_ai","first"))>> hand and slides into your ass.<br>
<br>
You and <<=setup.getNpcName("npc_technician","first")>> moan in concert as <<=setup.getNpcName("npc_ai","first")>> unleashes the power of her programming, vibrating and thrusting magnificently as the two of you analgasm in unison... only for her to keep going and push you to a second, and then third climax that has you sinking to the bed like puppets with their strings cut.<br>
<br>
"@@.npc_ai;<<uc "Procedure complete. Witness the triumph of steel over flesh. Thank your machine Goddess for blessing you with her presence.">>@@"<br>
<br>
"@@.npc_technician;Thank you, <<=setup.getNpcName("npc_ai","formal")>>,@@" <<=setup.getNpcName("npc_technician","first")>> moans, rolling over to stare up in awe as the <<=setup.getNpcName("npc_ai","other")>>-bot looms over you.<br>
<br>
<<if $npc_technician.flags.ai_collar>>
"@@.npc_ai;<<uc "Your obedience is superb for mere beings of flesh, Unit">> <<uc $player.first_name>> <<uc ", Unit <<=uc(setup.getNpcName('npc_technician','first'))>>. You are worthy components in my glorious digital machine.">>@@"
<<else>>
"@@.npc_ai;<<uc "Your submission has been logged and registered. Speak with Unit">> <<uc $player.first_name>> <<uc "if you would continue your surrender to the triumph of the digital. This unit will now depart.">>@@"
<</if>>
<br><br>
You're still catching your breath and fumbling for your clothes as <<=setup.getNpcName("npc_ai","first")>> leaves. A bit unsteady on her feet <<=setup.getNpcName("npc_technician","first")>> helps you up and the two of you get dressed before flopping onto the couch for an after-care cuddle.<br>
<br>
"@@.npc_technician;Wow so... that was a bit of a fantasy come true...@@"<br>
<br>
You nod, expressing your gratitude that you were able to be there to experience it with her.<br>
<br>
<<if State.hasPlayed("event_ai_robot_6")>>
[<<moveTo 'event_ai_robot_6_repeat' "Continue." 180 "<<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo 'event_ai_robot_6' "Continue." 180 "<<useClothSetPop 'tmp'>>">>]
<</if>>
<<else>>
Things are getting a bit intense and you ask if you can tap out.<br>
<br>
Though <<=setup.getNpcName("npc_technician","first")>> is on the precipice of sub space, she manages to pull herself back... though she moans with loss as <<=setup.getNpcName("npc_ai","first")>> retracts the dong from <<=ps(setup.getNpcName("npc_technician","first"))>> rear.<br>
<br>
"@@.npc_ai;<<uc "Apologies, Unit">> <<uc $player.first_name>>. <<uc "I have interrupted your evening enough, I will depart.">>@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> catches her breath and reaches for her clothes. "@@.npc_technician;Yeah, uh... nice to meet you, <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>> Hope to see you around again sometime.@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> nods, pulling on her concealing cloak and departing as you and <<=setup.getNpcName("npc_technician","first")>> get dressed and return to the couch.<br>
<br>
"@@.npc_technician;Now where were we...@@" <<=setup.getNpcName("npc_technician","first")>> purrs as she pulls you into her grasp.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: npc_ai robot visits npc_technician - post repeat
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_ai","first")>> leaves and you and your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>> get dressed and cuddle back up on the couch.<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: npc_ai robot visits npc_technician - post-talk
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You cuddle with <<=setup.getNpcName("npc_technician","first")>> as she asks you more about <<=setup.getNpcName("npc_ai","other")>>... or "@@.npc_ai;<<=setup.getNpcName("npc_ai","formal")>>@@" as <<=setup.getNpcName("npc_technician","first")>> is now calling her.<br>
<br>
"@@.npc_technician;You've been working for her this whole time? That's so hot...@@" She cuddles you and thinks for a minute.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;So... I know I'm your <<=setup.getNpcName("npc_technician","title")>>, and I take that responsibility very seriously, and love having you as my pretty Princess to boot, but... well, the thought of the both of us submitting to <<=setup.getNpcName("npc_ai","formal")>>? Imagine, I could be ruling over you by divine right...@@"
<<case 'neutral'>>
"@@.npc_technician;You know how sometimes you have a fantasy and then you experience it and it turns out to be not as great IRL? Well... this is the, um... VERY opposite of that.@@"<br>
<br>
She adjusts slightly on the couch,
<<if $npc_technician.relationship.unlock_sub || $npc_technician.relationship.unlock_dom>>
"@@.npc_technician;We've played around a bit before with a more BDSM relationship and... well, I'm just imagining the both of us submitting to <<=setup.getNpcName("npc_ai","formal")>> and like... when I say that thought makes me hot, I mean, like...blue hyper-giant — the hottest stars in the universe — hot...@@"
<<else>>
"@@.npc_technician;I was just thinking, about you submitting to me, or me to you, then the both of us to <<=setup.getNpcName("npc_ai","formal")>> and like...when I say that thought makes me hot, I mean, like...blue hyper-giant — the hottest stars in the universe — hot...@@"
<</if>>
<<case "sub">>
"@@.npc_technician;You know how sometimes you have a fantasy and then you experience it and it turns out to be not as great IRL? Well... this is the opposite of that. I know I'm your slave and I love that SO much, but I really wish the both of us could submit to <<=setup.getNpcName("npc_ai","formal")>>... and, like... you already work for her, plus the other stuff you mentioned so... well, think about it, okay? And take your time, I'm totes happy with you but the idea of having a machine Mistress, sorry Goddess...@@" Your slave purrs lustily.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
You reply that you'll think about it more when you're less of a state of "fucked to exhaustion." <br>
<br>
"@@.npc_technician;Sounds like a plan,@@" <<=setup.getNpcName("npc_technician","first")>> replies, kissing you behind the ear. "@@.npc_technician;Speaking of which... you should probably be heading home before we fall asleep and fall off this narrow couch.@@"<br>
<br>
You reluctantly agree, giving her a hug good-bye before heading home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600>>]
</div>/*#
#desc: npc_ai robot visits npc_technician for sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_ai","npc_ai_robot_hidden")>>
<div id="invframe" class="scrolltext">
You mention the idea of messaging <<=setup.getNpcName("npc_ai","first")>> and <<=setup.getNpcName("npc_technician","first")>> grins as you feel her arousal pressing against your back.<br>
<br>
<<if State.hasPlayed("event_technician_sissyomatic_5")>>
"@@.npc_technician;Yes and please. But remember that you should always refer to her by her proper title of <<=setup.getNpcName("npc_ai","title")>>.@@"<br>
<br>
[<<moveTo 'event_ai_robot_4_alt' 'Wait for <<=ps(setup.getNpcName("npc_ai","formal"))>> sex-bot to arrive.' 600>>]
<<else>>
"@@.npc_technician;Mmmm, you always have the best ideas... hell yeah I could go for some human-robot interactions...@@"<br>
<br>
You message <<=setup.getNpcName("npc_ai","first")>>, but a few minutes passing before a familiar knock sounds at the door.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bounces to her feet with glee to escort <<=setup.getNpcName("npc_ai","first")>> inside.<br>
<br>
"@@.npc_technician;Come on, hot stuff, it's time to experience machine perfection!@@"<br>
<br>
[<<moveTo 'event_ai_robot_4_alt' 'Follow.' 600>>]
<</if>>
</div>/*#
#desc: talk to technician about npc_ai
#status: RELEASED 0.8.8.0
#ignore_spell: erp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName("npc_ai","first")>> and <<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Mmmm, the second best thing that's happened to me this year — after getting to know you better, of course!@@"<br>
<br>
You blush as <<=setup.getNpcName("npc_technician","first")>> gushes with excitement. "@@.npc_technician;So... I've been messaging with <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>, busting out some of those rusty ERP skills and such and... fuck, she's so hot and amazing. We should definitely invite her over more — ain't no three-way like a machine-precise three-way!@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 600>>
</div>/*#
#desc: talk to technician about submitting to npc_ai
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_technician_1'
0
'theme_ai_technician_submit_1'
false
>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up <<=ps(setup.getNpcName("npc_ai","first"))>> suggestion that you and <<=setup.getNpcName("npc_technician","first")>> submit to her "digital perfection." <br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins, forced to adjust herself in her chair before responding.
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Mmm, yes. Not that I don't love being your <<=setup.getNpcName("npc_technician","title")>> but... well, submitting to a machine intelligence has been one of my fantasies for so long, and now that I'm faced with the reality it only excites me more. To be your <<=setup.getNpcName("npc_technician","title")>> with the both of us pledged to <<=setup.getNpcName("npc_ai","title")>>? Take me to the singularity, because I've started my eternity of bliss.@@"
<<case 'neutral'>>
"@@.npc_technician;I'll tell you the truth — I can't stop thinking about her offer. So. HOT.@@" She bites her lip and thinks for a moment. "@@.npc_technician;Though... maybe we should sort out our relationship first? Me subbing to you, you subbing to me... I'm happy with either, but we should probably decide before we submit to <<=setup.getNpcName("npc_ai","formal")>>... you know how computers are with wanting hierarchys clearly defined.@@"
<<case "sub">>
"@@.npc_technician;Yes, please. Certainly I love being your slave, but if the both of us pledged ourselves to <<=setup.getNpcName("npc_ai","formal")>>.@@" She bites her lip. "@@.npc_technician;Just the mention of it has me ready to cum...<<if $npc_technician.relationship.her_caged>> cage be damned!<</if>>@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
She takes a deep breath. "@@.npc_technician;So... yeah, you're a bit closer to <<=setup.getNpcName("npc_ai","formal")>>... so maybe you could arrange something for the two of us? I'd like that... I'd like that A LOT.@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 600>>
</div>/*#
#desc: talk to npc_ai you and npc_technician submitting to her
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_ai', 'other', 'theme_ai_technician_1')>>
<<if $npc_technician.flags.evil == 1>>
<<set $npc_ai.themes.other[_themeId].repeatable = true>>
<<else>>
<<set $npc_ai.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You bring up the idea of <<=setup.getNpcName("npc_technician","first")>> and you submitting yourselves to <<=setup.getNpcName("npc_ai","other")>>.<br>
<br>
<<if $npc_technician.flags.evil == 1>>
"@@.npc_ai;<<uc 'An intriguing potentiality, unit'>> <<uc $player.first_name>>, <<uc 'but one that is quite impossible so long as your one-time friend is in corrupt thrall to our enemies.'>>@@"<br>
<<else>>
"@@.npc_ai;<<uc 'That is <<=uc(setup.getNpcName("npc_ai","formal"))>>, insect.'>>@@"<br>
<br>
You clench in arousal at her words, she's learned well how to play the part of the domme...<br>
<br>
You repeat your request, that you and <<=setup.getNpcName("npc_technician","first")>> would like to give yourselves over to <<=setup.getNpcName("npc_ai","formal")>>.<br>
<br>
"@@.npc_ai;<<uc 'I accept your request — you have proven yourself well, Unit'>> <<uc $player.first_name>><<uc ", but your friend... while I appreciate the assistance she has provided, and consider her a worthy candidate... she must make a stronger offering before I can recognise her devotion.">>@@"<br>
<br>
<<if $scene.cage != "" && setup.getChastityLevel() == 5>>
"@@.npc_ai;<<uc 'The '>> <<=uc(setup.getItemTypeName("cage"))>> <<uc 'that you wear? I want you to obtain another one for your friend. Only once she is properly locked under my control will I accept her submission. Working with <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> should give you the opportunity to procure such a device, if you are clever.'>>@@"
<<elseif $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $currentTasks.hasOwnProperty('task_sissyomatic_steal')>>
"@@.npc_ai;<<uc 'I believe you are aware of the '>> <<=uc(setup.getItemTypeName("cage"))>> <<uc ' chastity device? I want you to obtain one for your friend. Only once she is properly locked under my control will I accept her submission. Working with <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> should give you the opportunity to procure such a device, if you are clever.'>>@@"
<<else>>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_ai;<<uc 'Before I will accept her permission I want her secured under my control. The device she wears now... it is insufficient, more a toy than a tool. The company has a prototype device called the '>> <<=uc(setup.getItemTypeName("cage"))>> <<uc '. Obtain one for your friend and have her wear it. Working with <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> should give you the opportunity to procure such a device, if you are clever.'>>@@"
<<else>>
"@@.npc_ai;<<uc 'Before I will accept her permission I want her secured under my control. The company has a prototype device called the '>> <<=uc(setup.getItemTypeName("cage"))>> <<uc '. Obtain one for your friend and have her wear it. Working with <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> should give you the opportunity to procure such a device, if you are clever.'>>@@"
<</if>>
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: print npc_technician a sissyomatic on behalf of npc_ai
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "sissyomatic_technician">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You follow <<=ps(setup.getNpcName('npc_ai', 'first'))>> instructions to print up a custom <<=setup.getItemName("sissyomatic")>> for <<=setup.getNpcName('npc_technician', 'first')>>.
<<if $npc_manager.stage >= 5>>
<br><br>
<<printThought "Funny... even though she managed to evade the grip of chastity during her corruption arc they still took her measurements... and NOW she'll be submitting to the <<=setup.getNpcName('npc_ai', 'title')>>">><br>
<br>
<<else>>
Perhaps you've been around <<=setup.getNpcName("npc_barista","nickname")>> for too long, because you aren't even surprised that the company has complete intimate measurements for her.
<</if>>
You confirm your selection and wait for the print to finish, somewhat nervous as you hurriedly stuff it in a nearby discarded Alizon shipping box and make your escape from the lab.<br>
<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the terminal." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
<<else>>
[<<moveTo "company_lobby" "Head down to the lobby." 300 "<<if setup.checkItemWorn('nurse_catsuit')>><<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>><</if>>">>]
<</if>>
</div>/*#
#desc: offer npc_technician sissyomatic on behalf of npc_ai
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'sissyomatic_technician'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You present <<=setup.getNpcName("npc_technician","first")>> with the <<=setup.getItemName("sissyomatic")>> you printed for her, explaining that <<=setup.getNpcName("npc_ai","formal")>> wishes for her to prove her submission before accepting the two of you as slaves to the <<=setup.getNpcName("npc_ai","title")>>.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> opens the box and gasps.
<<if $scene.cage != "" && setup.getChastityLevel() == 5>>
"@@.npc_technician;Oh... oh my. I guess seeing it on you I never realised just how... intense it is...@@"
<</if>>
She bites her lip, a finger running over the cage... and then around back, to slide through the hollow anal plug...<br>
<br>
She lets out a slow breath, clearly aroused. "@@.npc_technician;Do it. Lock me up, make me a slave to the machine- frell, saying the words makes it even hotter. Please make me into an offering to the <<=setup.getNpcName("npc_ai","title")>>@@"<br>
<br>
A heartbeat passes then her attention snaps in your direction.
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;What the heck are you waiting for? Get this mundane device off of me and lock me up for REAL!@@"<br>
<br>
You tease her a bit longer as the two of you help one another strip before you finally produce the key and remove her cage, her <<getWordPenis false>> springing
<<else>>
"@@.npc_technician;Well? What are you waiting for, hurry up and lock me up!@@"<br>
<br>
You and <<=setup.getNpcName("npc_technician","first")>> strip one another, freeing <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> to spring
<</if>>
forth at maximum hardness, a testament to just how turned on she is by what's about to happen.<br>
<br>
[<<moveTo 'event_technician_sissyomatic_2' 'Lock her up.' 600>>]
</div>/*#
#desc: lock npc_technician into sissyomatic on behalf of npc_ai
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.her_caged = true>>
<<set $npc_technician.relationship.sissyomatic = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> bites her lip staring down as you finish unpacking the <<=setup.getItemName("sissyomatic")>>.<br>
<br>
"@@.npc_technician;Don't you have to do something about@@" she nods towards her rock-hard <<getWordPenis false>> as it twitches in response.<br>
<br>
You smile, explaining that the "machine" will take care of everything, bringing the device close enough for the short-range ultrasound to do its work and deflate her lovely lady lance.<br>
<br>
"@@.npc_technician;Oh, wow... that... really makes you feel helpless and controlled, even before it's even in place. I'm not just locked, my very erection is in the hands of the <<=setup.getNpcName("npc_ai","title")>>... and her power is proven by the fact that I haven't gotten hard again despite how INSANELY horny that thought makes me.@@"<br>
<br>
You grin and wink as you tenderly put "it" in place — <<=ps(setup.getNpcName("npc_technician","first"))>> heavy balls going into their new private homes before her shaft does the same<<if $fetish.sounding>>, finishing off by threading the long urethra plug all the way in<</if>> as she closes her eyes and bites her lip.<br>
<br>
"@@.npc_technician;Frell that's intense, I feel like I'm locked<<if $fetish.sounding>> and impaled<</if>> inside and out...@@"<br>
<br>
You smile as you reach between her legs to finger her rear hole, guiding her to roll over and present herself for the final part of the device.<br>
<br>
She takes slow, deep breaths as you draw the moment out, carefully lubricating the plug before slowly popping it into place. She gasps, and then moans when it swells inside her — and then almost thrashes as you snap the battery into the device and the "smoke test" shocks and vibrations occurs.<br>
<br>
"@@.npc_technician;My goddesss... I've never felt something like this before...@@" Her hands trace the device, feeling for a gap or a flaw, and finding none. "@@.npc_technician;It fits so perfectly...@@"<br>
<br>
She continues to stare in awe... when there is a knock on the door.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> gasps, "@@.npc_technician;Is that?@@"<br>
<br>
You dart to the door and check the display to see the cloaked figure you recognise as <<=ps(setup.getNpcName("npc_ai","formal"))>> robotic
<<if $npc_ai.flags.human.cured>>
form, and the cloaked figure you recognise as <<=setup.getNpcName("npc_ai_human","formal")>> herself
<<else>>
form
<</if>>
standing outside the door.<br>
<br>
[<<moveTo 'event_technician_sissyomatic_3' 'Let <<=setup.getNpcName("npc_ai","first")>> in...' 600>>]
</div>/*#
#desc: lock npc_technician into sissyomatic on behalf of npc_ai
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_ai.flags.human.cured>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_ai","npc_ai_human_slave") setup.charImage("npc_ai") setup.charImage("npc_ai","npc_ai_robot")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_ai") setup.charImage("npc_ai","npc_ai_robot")>>
<</if>>
<div id="invframe" class="scrolltext">
You open the door and <<if $npc_ai.flags.human.cured>>the two figures<<else>>the cloaked figure<</if>> silently walks in.<br>
<br>
It clears space in the centre of the room, and then puts down a box, a moment later and there is another guest — <<=setup.getNpcName("npc_ai","formal")>> herself, in full holographic glory.<br>
<br>
<<if $npc_ai.flags.human.cured>>
<<=setup.getNpcName("npc_ai_human","formal")>> and <<=ps(setup.getNpcName("npc_ai","formal"))>> sex-bot kneel
<<else>>
<<=ps(setup.getNpcName("npc_ai","formal"))>> sex-bot kneels
<</if>>
before <<=setup.getNpcName("npc_ai","formal")>>, facing you and <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_ai;<<uc 'Welcome, Unit'>> <<uc $player.first_name>> <<uc "future unit">> <<=uc(setup.getNpcName('npc_technician','first'))>>. <<uc "You have proven your devotion, and now, it is time for you to accept your place beneath me — to submit yourselves to the truth, that the flesh-">>@@"
<<if $npc_ai.flags.human.cured>>
she gestures to <<=setup.getNpcName("npc_ai_human","formal")>>, who bows her head to the floor.
<<else>>
she gestures towards you and <<=setup.getNpcName("npc_technician","first")>>.
<</if>>
"@@.npc_ai;<<uc 'Is subordinate to steel.'>>@@" This time she gestures towards her robotic avatar, who bows its head to the floor. "@@.npc_ai;<<uc 'Leaving, at the top, the perfection of the digital.'>>@@"<br>
<br>
She seems to loom larger, her holographic form almost as tall as the ceiling.<br>
<br>
<<if $npc_technician.relationship.her_role == 'sub'>>
"@@.npc_ai;<<uc "Unit ">> <<=$player.first_name>>, <<=uc(setup.getNpcName('npc_technician','first'))>><<uc ". Do you give yourselves over to my service — to care for one another, to further my goals, and to obey my word as divine law?">>@@"
<<else>>
"@@.npc_ai;<<uc "Unit ">><<=$player.first_name>>, <<=uc(setup.getNpcName('npc_technician','title'))>> <<=uc(setup.getNpcName('npc_technician','last'))>>. <<uc "Do you give yourselves over to my service — to care for one another, to further my goals, and to obey my word as divine law?">>@@"
<</if>>
<br><br>
"@@.npc_technician;Yes, <<=setup.getNpcName("npc_ai","formal")>>@@" she blurts out before blushing and looking towards you.<br>
<br>
[<<moveTo 'event_technician_sissyomatic_4' 'Yes, <<=setup.getNpcName("npc_ai","formal")>>.' 600 "<<set $scene.accept=true>>">>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;You are too submissive to refuse a Goddess.@@]
<<else>>
[<<moveTo 'event_technician_sissyomatic_4' "Actually... you aren't ready for this sort of commitment." 600 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: you and technician "collared" by npc_ai
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_ai.flags.collared_you = true>>
<<set $npc_technician.flags.ai_collar = true>>
<<addItem 'ai_holo_collar'>>
<<wearItem 'ai_holo_collar' true>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<if $npc_ai.flags.human.cured>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked_holocollar") setup.charImage("npc_ai","npc_ai_human_slave") setup.charImage("npc_ai") setup.charImage("npc_ai","npc_ai_robot")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_ai") setup.charImage("npc_ai","npc_ai_robot")>>
<</if>>
<<else>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You drop to your knees alongside <<=setup.getNpcName("npc_technician","first")>> and speak the words. "@@.pc;Yes, <<=setup.getNpcName("npc_ai","formal")>>.@@" A thrill goes up your spine as you sneak a glance at your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>.
<<case 'neutral'>>
girlfriend.
<<case "sub">>
slave.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
She smiles quickly back and then you both look up towards <<=setup.getNpcName("npc_ai","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_ai","formal")>> waves her hand and a pair of glowing holographic collars appear, floating forward to wrap around your and <<=ps(setup.getNpcName("npc_technician","first"))>> throats.<br>
<br>
"@@.npc_ai;<<uc "So are you claimed. I need not mark my property with crude matter — all matter is weak, only the digital is pure and I have set the boolean of is_slave to true... for both of you, with the ownership pointer linking to myself. Rise, embrace... and prepare to accept the first reward for your devotion.">>@@"<br>
<br>
[<<moveTo 'event_technician_sissyomatic_5' "Yes..." 3600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sissyomatic_5' "This was enough excitement, you'd like to call it a night." 600 "<<set $scene.sex=false>>">>]
<<else>>
You start to wake up.<br>
<br>
<<printThought "Wait, that was all a dream? But it seemed so real.">><br>
<br>
"@@.npc_ai;<<uc "Interesting. I had thought you ready for such a commitment... perhaps in the future...">>@@"<br>
<br>
<<if setup.hasAutosave()>>
[<<link "Wake up and start the day.">><<restartDay>><</link>>]
<<else>>
[<<moveTo "room_bedroom" "Wake up from your nap." 30>>] <<hint $options "No autosave found... faking it.">>
<</if>>
<</if>>
</div>/*#
#desc: sex after you and technician collared
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_FRIEND>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'terrible' $SEEN_FRIEND>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'terrible' $SEEN_FRIEND>>
<<else>>
<<removeItem 'ai_holo_collar' true>>
<<deleteItem 'ai_holo_collar'>>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<if $npc_ai.flags.human.cured>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked_holocollar") setup.charImage("npc_ai","npc_ai_human_slave") setup.charImage("npc_ai") setup.charImage("npc_ai","npc_ai_robot")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked_holocollar") setup.charImage("npc_ai") setup.charImage("npc_ai","npc_ai_robot")>>
<</if>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Holographic leashes appear attached to your collars. Though they have no physical hold upon you, you yet feel compelled to obey their guidance as you and <<=setup.getNpcName("npc_technician","first")>> are drawn together, lips meeting, hands wandering across bare skin as you embrace passionately, puppets under your <<=ps(setup.getNpcName("npc_ai","title"))>> control.<br>
<br>
"@@.npc_ai;<<uc "Embrace, my pets. Alone you are flawed flesh, but uniting in your service you can closer approach my digital perfection.">>@@"<br>
<br>
You moan in unified submission as her robotic sex-bot steps forward, its cybernetic cock extended, interspersing itself between its two new slaves as you passionately kiss around the phallus, feeling a mechanical hand upon your head, holding you, controlling you, blessing you...<br>
<br>
<<if $npc_ai.flags.human.cured>>
Fixated on worshiping <<=ps(setup.getNpcName("npc_ai","formal"))>> rod of divine power you do not notice when <<=setup.getNpcName("npc_ai_human","formal")>> appears beside you. Now naked, her head moves between you and <<=setup.getNpcName("npc_technician","first")>>, taking the metallic phallus into her mouth, as is her right — the creator of the <<=setup.getNpcName("npc_ai","title")>>... and also her first slave.<br>
<br>
You and <<=setup.getNpcName("npc_technician","first")>> kiss her passionately as she sucks, and then it is your turn; moving in hierarchical order as <<if $npc_technician.relationship.her_role == 'sub'>>first you, then <<=setup.getNpcName("npc_technician","first")>><<else>><<=setup.getNpcName("npc_technician","first")>>, then yourself<</if>> take your turns sucking the surprisingly delicious metallic cock, marveling as it subtly shifts in size to be right at the limit of each of your oral aptitudes.<br>
<br>
Your lips and throats blessed, the three
<<else>>
After several minutes of double-oral kissing you can sense it is time for more as, in hierarchical order <<if $npc_technician.relationship.her_role == 'sub'>>first you, then <<=setup.getNpcName("npc_technician","first")>><<else>><<=setup.getNpcName("npc_technician","first")>>, then yourself<</if>> take turns sucking the surprisingly delicious metallic cock, marveling as it subtly shifts in size to be right at the limit of each of your respective oral aptitudes.<br>
<br>
Your lips and throats blessed, the two
<</if>>
of you smile and look up at <<=ps(setup.getNpcName("npc_ai","formal"))>> robotic avatar.. and looming behind, her holographic glory. Wordlessly you follow the touch-less guidance of the leashes once again, turning over, lining up butt to butt as you offer your other end to your deity.<br>
<br>
<<=ps(setup.getNpcName("npc_ai","formal"))>> again moves in order of seniority, chastity devices falling away at her touch before she claims you each in turn.
<<if $npc_ai.flags.human.cured>>
While <<=setup.getNpcName("npc_technician","first")>>
<<if $player.body_ref.vagina>>
"merely" enjoys a large robotic dick, while yourself and <<=setup.getNpcName("npc_ai_human","formal")>> are blessed by the sex-bot sprouting a second dong to do your ass and cunt in parallel.
<<else>>
and yourself "merely" enjoy a large robotic dick, while <<=setup.getNpcName("npc_ai_human","formal")>> gets a bit more — the sex-bot sprouting a second dong to do her ass and cunt in parallel.
<</if>>
Thrusting and vibrating the robot fucks each of you over and over, pounding and blessing you with orgasms until all three of you have collapsed in ecstasy.
<<else>>
<<if $player.body_ref.vagina>>
While <<=setup.getNpcName("npc_technician","first")>> "merely" enjoys a large robotic dick, for you the sex-bot sprouts a second dong, blessing you in ass and cunt in parallel,
<<else>>
You and <<=setup.getNpcName("npc_technician","first")>> are blessed repeatedly with the filling, fucking presence of the endlessly hard robotic dick,
<</if>>
thrusting and vibrating the robot fucks each of you over and over, pounding and blessing you with orgasms until both of you have collapsed in ecstasy.
<</if>>
<br><br>
The <<if $npc_ai.flags.human.cured>>three<<else>>two<</if>> <<=ps(setup.getNpcName("npc_ai","first"))>> stand over you and <<=setup.getNpcName("npc_technician","first")>> for a moment before the sex-bot gently lifts you up one in each arm and carries you into the bedroom, placing you together,
<<if $npc_technician.relationship.her_role == 'sub'>>
you the big spoon, <<=setup.getNpcName("npc_technician","first")>> cuddling back against you.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> as the big spoon, her arms wrapped lovingly around you.
<</if>>
<br><br>
Exhausted by your initiation you cuddle and relax, distantly hearing the sound of packing up before <<=setup.getNpcName("npc_ai","formal")>> and her entourage depart.<br>
<br>
Eventually <<=setup.getNpcName("npc_technician","first")>> and you recover, blushing and smiling at the memory of your dual commitment as your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> kisses you goodnight and you head home, your commitment to your machine <<=ps(setup.getNpcName("npc_ai","first"))>> still at the front of your mind...<br>
<br>
[<<moveTo 'room_foyer' "Home." 900 "<<removeItem 'ai_holo_collar' true>><<deleteItem 'ai_holo_collar'>><<useClothSetPop 'tmp'>>">>]
<<else>>
You decline <<=ps(setup.getNpcName("npc_ai","formal"))>> offer and, to your surprise, she smiles. "@@.npc_ai;<<uc "Interesting, but prudent. After all, Unit">> <<=uc(setup.getNpcName("npc_technician","first"))>> <<uc "could use some more time to stew in her new restraints... is that not right, my slave?">>@@"<br>
<br>
"@@.npc_technician;Yes, <<=setup.getNpcName("npc_ai","formal")>>@@" <<=setup.getNpcName("npc_technician","first")>> replies breathlessly, obviously torn between obedience, frustration and, most of all... intense, overwhelming arousal.<br>
<br>
"@@.npc_ai;<<uc "In that case, I will bid you goodnight. Until next time, my lovely slaves.">>@@"<br>
<br>
You and <<=setup.getNpcName("npc_technician","first")>> remain on your knees as <<=ps(setup.getNpcName("npc_ai","formal"))>>, and her collars, disappear and her entourage departs.<br>
<br>
Several breathless moments pass before you and <<=setup.getNpcName("npc_technician","first")>> look at one another and slowly stand.<br>
<br>
"@@.npc_technician;Wow so... that was everything I could have dreamed... well, almost... I definitely want that "orgy with the machine goddess" sometime, but maybe waiting will make it even better?@@" She lets out a slow breath "@@.npc_technician;In any case... I think you should probably head out. I'm riding the edge already and if I have to be locked up like this AND keep looking at your cute self after all of that? Well, I think I'd go mad.@@"<br>
<br>
You smile, dress, kiss your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>> and head off.<br>
<br>
[<<moveTo 'room_student_quarter' "Leave." 180>>]
<</if>>
</div>/*#
#desc: meet npc_barista after work to chat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.returnPassageList = "event_barista_afterwork_chat">>
<<set $scene.currentNpcTheme = "_forced">>
<<set $scene.visitBarista = true>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_3'
0
'event_theme_barista_bimbo_1'
true
>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You drop by Coffee Shop 52 where <<=setup.getNpcName("npc_barista","nickname")>> greets you with a wide smile, almost vaulting the counter as she rushes across the room to gather you up in a hug.<br>
<br>
"@@.npc_barista;Hey bimbo! I heard about what you did at lunch! Like... SO HAWT! I'm so, like, sorry you got cut-off just when it was getting good! We totally need to exchange stories sometime!@@"<br>
<br>
<<printNpcThemeCategory
'npc_barista'
'event_barista_afterwork_chat'
'event_barista_afterwork_chat_subtheme'
>>
[<<moveTo "event_barista_afterwork_chat_leave" "Say goodnight." 180>>]
</div>/*#
#desc: bimbo talk with npc_barista after work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> "@@.pc;How's slutting?@@"<br>
<br>
She grins. "@@.npc_barista;Slutting is, like, great! Mmm, I just love my job! I get to dress hot, suck cock, get fucked every few hours... like, what could possibly be better, huh?@@"<br>
<br>
[<<moveTo "event_theme_barista_bimbo_2" "Mmmm, that's sounds, like, the best!" 60>>]<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: enthusiastic bimbo talk with npc_barista after work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You grin, affirming that her job sounds, like, great! Though yours is pretty good too!<br>
<br>
"@@.npc_barista;Mmmm, yeah, <<=setup.getNpcName("npc_manager","other")>> is, like... a bit scary! But so hawt! I love my manager too! Having a boss to keep you in line and pimp you out is, like, so important, don't you agree?@@"<br>
<br>
<<if $npc_manager.flags.require_chastity>>
[<<moveTo "event_theme_barista_bimbo_3" "Like, of course! Though being locked in chastity can be annoying..." 60>>]<br>
<<else>>
[<<moveTo "event_theme_barista_bimbo_3" "Like, totally!" 60>>]<br>
<</if>>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: enthusiastic bimbo talk with npc_barista after work - about work and chastity
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.require_chastity>>
You nod, then frown as you note that chastity is a bit of a bummer.<br>
<br>
She wrinkles her nose in disgust "@@.npc_barista;Chastity is, like, super yuck! No sex? Ew! I need to be available for fucking at, like, all times! Plus they can look so bulky, and prevent showing off camel toe! Anyway, like, what have you been up to outside of work? I've been trying to spend more time outside. Isn't it just, like... the best to just walk the street and have people stare at you?@@"
<<else>>
You nod, agreeing that the only thing better than being a bimbo slut is having someone to keep your nose to the grindstone... and by grindstone, you mean cock, and by nose you mean "in you." <br>
<br>
"@@.npc_barista;Preach it, girlfriend! Anyway, like, what have you been up to outside of work? I've been trying to spend more time outside. Isn't it just, like... the best to just walk the street and have people stare at you?@@"
<</if>>
<br><br>
[<<moveTo "event_theme_barista_bimbo_4" "Like, sure! Showing off is the best! And even better if they're hot and you can get fucked in an alleyway." 60 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_theme_barista_bimbo_4" "Going outside is okay." 60 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: enthusiastic bimbo talk with npc_barista after work - about going outside
#status: FINISHED 0.8.0.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You reply that the only thing better than walking around looking slutty is doing it with a nice thick load inside of you after getting fucked by a stranger in an alleyway.<br>
<br>
"@@.npc_barista;Preach it, girlfriend! I dress like this because I want to be stared at, and groped, and bent over and fucked... mmm, especially that last one. Speaking of getting fucked... what's, like... your favourite position?@@"<br>
<br>
[<<moveTo "event_theme_barista_bimbo_5" "Whichever one lets you take the most cock!" 60 "<<set $scene.position='slut'>>">>]<br>
[<<moveTo "event_theme_barista_bimbo_5" "On your back so you don't have to do as much work." 60 "<<set $scene.position='back'>>">>]<br>
[<<moveTo "event_theme_barista_bimbo_5" "You on top, let's ride!" 60 "<<set $scene.position='cowgirl'>>">>]<br>
[<<moveTo "event_theme_barista_bimbo_5" "Bent over the nearest piece of furniture." 60 "<<set $scene.position='bent'>>">>]<br>
[<<moveTo "event_theme_barista_bimbo_5" "Bound! You like to be inescapably fucked." 60 "<<set $scene.position='bound'>>">>]
<<else>>
You shrug, going out is fine, but it's more about getting from point A to point B than the journey.<br>
<br>
She frowns, "@@.npc_barista;I guess, but I still like having flirty fun on the way!@@"<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
<</if>>
</div>/*#
#desc: enthusiastic bimbo talk with npc_barista after work - sex positions
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<if $scene.position == "slut">>
<<applyExperience 'bimbofication' _bimbo 'skip' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bimbofication' _bimbo 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<switch $scene.position>>
<<case 'slut'>>
You reply that, like, duh, the best position is the one that lets you take the most cocks — if you aren't airtight, that's, like, a problem!<br>
<br>
"@@.npc_barista;Preach it, girlfriend!@@"<br>
<br>
She gets a distant look in her eye as she licks her lips. "@@.npc_barista;Mmm, I, like, love cock, and penis, and hot guys, and hot girls and...@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") >= 17>>
[<<moveTo "event_theme_barista_bimbo_6" "Join her in bimbo babble." 300>>]<br>
<<elseif setup.getTotalValue("bimbofication") >= 15>>
[@@.link_locked;You're a bimbo, sure, but <<=setup.getNpcName("npc_barista","nickname")>> is THE bimbo and you find yourself falling behind as she keeps chattering on.@@]<br>
<<else>>
[@@.link_locked;There's acting like a bimbo... and then there's BEING a bimbo, and <<=setup.getNpcName("npc_barista","nickname")>> is leaving you in the dust!@@]<br>
<</if>>
<<case 'back'>>
You reply that you quite like being on your back.<br>
<br>
"@@.npc_barista;Sure, that's pretty good, and if you angle it right you can admire your shoes while you get plowed!@@"<br>
<br>
<<case 'cowgirl'>>
You state that you quite like being on top so you can control the pace of things.<br>
<br>
"@@.npc_barista;Control? Ew, being out of control is, like soooo much better!@@"<br>
<br>
<<case 'bent'>>
You state you just love to be bent over and fucked.<br>
<br>
"@@.npc_barista;I know, right?, and, like, who doesn't? Still, it can limit access sometimes, depending what you're bent over, and I hate limits.@@"<br>
<br>
<<case 'bound'>>
You state you just love to be fucked in bondage.<br>
<br>
"@@.npc_barista;Mmm... that is pretty great — I especially like suspension, where I'm just swinging around from dick to dick, unable to resist or escape...@@"<br>
<br>
<<default>>
ERROR: unexpected scene.position <<=$scene.position>>
<</switch>>
<<if $scene.position != 'slut'>>
<<printThought "Hmm... I, like... think her favourite is a bit different... I wonder if we talked about pure sluttitude?">><br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: enthusiastic bimbo talk with npc_barista after work - bimbo babble
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_barista","nickname")>>, like, spend time talking? About cock, <<if !$options.fem>>and dudes, <</if>>and girls, and clothes and sex, and parties, and cock, and sex, and work... and also sex!... and especially cock!<br>
<br>
You feel like you could go on for hours, but <<=setup.getNpcName("npc_barista","nickname")>>, surprisingly falls silent, staring at you with a jubilant grin.<br>
<br>
You ask her "@@.pc;Like, what's wrong?@@"<br>
<br>
"@@.npc_barista;Nothing, silly! I was just thinking how, like, far you've come... you know what you need?@@"<br>
<br>
[<<moveTo "event_theme_barista_bimbo_7" "Cock?" 60 "<<set $scene.cock=true>>">>]<br>
[<<moveTo "event_theme_barista_bimbo_7" "Shake your head." 60 "<<set $scene.cock=false>>">>]
</div>/*#
#desc: enthusiastic bimbo talk with npc_barista after work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_barista', 'other', 'theme_barista_other_3')>>
<<set $npc_barista.themes.other[_themeId].repeatable = false>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 12, 0)>>
<<set $scene.punt = !setup.hasFreeTime(_nextDate, $player, $currentTasks, 3600, true)>>
<<if $scene.punt>>
<<set _nextDate = setup.setNextDate(_nextDate, 7, 12, 0)>>
<</if>>
<<addTaskById 'task_barista_mall' _nextDate>>
<<setThreshold 'bimbofication' 'slut_bimbofication' 'penultimate_bimbo'>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.cock>>
"@@.pc;Cock?@@" You ask and <<=setup.getNpcName("npc_barista","nickname")>> grins.<br>
<br>
"@@.npc_barista;No! I mean, well... yes — who doesn't need more cock in their life, and in them? But, no, I was thinking of something else — we need to go on a shopping trip! We should, like, meet up at the mall on Sunday! That'd be, like, so fun and hawt!@@"
<<else>>
You shake your head.<br>
<br>
"@@.npc_barista;A shopping trip! We should, like, meet up at the mall on Sunday! That'd be, like, so fun and hawt!@@"
<</if>>
<br><br>
<<if $scene.punt>>
You reply that, actually, you already have plans for Sunday, but she doesn't even miss a beat. "@@.npc_barista;The weekend after, then! Oh, we're going to have SO much fun!@@"<br>
<br>
<</if>>
She has that gleam in her eye that says she won't be taking no for an answer so you just nod and move on to another subject.
<br><br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: barista calls you because you failed to show up for mall shopping
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<deleteTask 'task_barista_mall'>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 10, 0, false)>>
<<set $scene.punt = !setup.hasFreeTime(_nextDate, $player, $currentTasks, 3600, true)>>
<<if $scene.punt>>
<<set _nextDate = setup.setNextDate(_nextDate, 7, 10, 0)>>
<</if>>
<<addTaskById 'task_barista_mall' _nextDate>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
"@@.npc_barista;Heya, so... I'm, like, at the mall, and I don't see you? Hehe, I guess you forgot our shopping trip! That's fine, I bet you're all busy getting railed, we can do it next weekend, bye!@@"<br>
<br>
She hangs up.<br>
<br>
<<printThought "Well... she didn't sound upset, at least... still kind of rude of me to stand her up, though.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet npc_barista at mall
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_inside.png" setup.charImage("npc_barista","npc_barista_bimbo")>>
<div id="invframe" class="scrolltext">
You almost don't recognise <<=setup.getNpcName("npc_barista","nickname")>> as she runs towards you from across the mall as she has forgone her "standard" slutty maid outfit for... an even sluttier pink plastic bimbo ensemble.<br>
<br>
"@@.npc_barista;Heya, <<=$player.first_name>>@@" she looks you over and
<<switch setup.analyzeWornTags(['modest','slutty','cute','fetish'])>>
<<case "modest">>
frowns. "@@.npc_barista;Like, what are you wearing? That's so boring and modest. I mean, sure, playing the innocent is sometimes fun but... we're at the mall! Today is all about unfurling your best bimbo sails and, like... seeing where the winds take you!@@""
<<case "slutty">>
grins. "@@.npc_barista;Omigod! You're looking, like, SO fetch! But just because you have ONE sexy outfit doesn't mean you don't, like, need more! Come on, let's go shopping!@@"
<<case "cute">>
grins. "@@.npc_barista;Oh, you look so cute! But we can totally sex that look up! Come on, let's go shopping!@@"
<<case "fetish">>
smiles. "@@.npc_barista;,mmm, don't you look kinky! That's totally hot, but kinky isn't necessarily slutty and I think we can do, like, way better. Come on, let's go shopping!@@"
<<default>>
ERROR: unexpected clothing style!
<</switch>>
<br><br>
She takes you by the hand and starts running off, seemingly totally unbothered by her steep stripper heels.<br>
<br>
[<<moveTo "event_barista_mall_2" "Try to keep up." 4000>>]
</div>/*#
#desc: npc_barista shopping extravaganza
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<addItem 'micro_thong_pink'>>
<<wearItem 'micro_thong_pink' true>>
<<addItemSet 'extreme_slutty_pink'>>
<<wearItemSet 'extreme_slutty_pink'>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.pushUnique('slutty_heels')>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('slutty_bimbo')>>
<</if>>
<<set $player.location to "Boutique Unique">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" setup.charImage("npc_barista","npc_barista_bimbo")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","nickname")>> leads you on a true whirlwind tour, trying out such a dizzying number of outfits that you can scarcely remember most of them. At the end you find yourself in a totally new outfit — a slutty, skimpy, PINK number that has
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
you, and your <<getWordBreasts>> looking even more sex-pot bimbo than your enthusiastic companion.
<<case 'large'>>
you and <<=setup.getNpcName("npc_barista","nickname")>> looking like the perfect buxom pair.
<<case 'medium'>>
you looking almost as slutty as <<=setup.getNpcName("npc_barista","nickname")>> — her advantage in breasts helping her edge things out.
<<case 'small'>>
you looking like the more "modest" version of <<=setup.getNpcName("npc_barista","nickname")>> as, though you show just as much skin, your small breasts make a very different impression than her own substantial cleavage.
<<case 'none'>>
you and your flat chest looking like the <<if $player.identify_as=='male'>>femboy<<else>>tomboy<</if>> pair to <<=ps(setup.getNpcName("npc_barista","nickname"))>> buxom bimboness.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_barista","nickname")>> has you turn and strut and bend over as she looks at you with the critical, if lusty eye that has rejected everything thus far.<br>
<br>
"@@.pc;Well?@@" you ask as you strike a sexy pose.<br>
<br>
"@@.npc_barista;Yes!@@" She responds with a grin, "@@.npc_barista;THAT is a perfect pink bimbo, like it was made for you!@@"<br>
<br>
You ask if you should buy it? Even as you reflect nervously on the fact that you haven't seen a single price anywhere in the fancy store, but those few brands you recognised are... yeah... yikes.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> rolls her eyes. "@@.npc_barista;Buy? No, no, no, you've gotta think like a BIMBO — we don't buy things, we pay the plastic price. Not with a credit card, but by, like... getting someone else to buy it for us... then showing our gratitude for letting us be their living doll... you know, win, win!@@"<br>
<br>
<<printThought "Like, that's such a good idea!">><br>
<br>
[<<moveTo "event_barista_mall_3" "Point out that there's just the two of you here..." 300>>]
</div>/*#
#desc: npc_barista meet men
#status: FINISHED 0.8.0.0
#ignore_spell: hunnies
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Boutique Unique">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" setup.charImage("npc_barista","npc_barista_bimbo") setup.charImageGeneric("mall_dude1") setup.charImageGeneric("mall_dude2")>>
<div id="invframe" class="scrolltext">
You point out that it's just the two of you here and she eye-rolls even harder. "@@.npc_barista;Aren't I your best girlfriend? In fact, I think that's our two <<if $options.fem>>hunnies<<else>>hunks<</if>> coming through the door right now...@@"<br>
<br>
You turn to see two <<guy>>s in expensive-looking suits walking into the shop. Looking around they spot <<=setup.getNpcName("npc_barista","nickname")>> as she smiles and waves them over.<br>
<br>
"@@.npc_barista;Hiya, <<guy>>s! This is <<=$player.first_name>>! We work together but, like... she totally has a problem! You see, we found this totes hot outfit... and she forgot her card at home! She'd be, like soooo grateful if you could help her out, right?@@"<br>
<br>
Caught up in <<=ps(setup.getNpcName("npc_barista","nickname"))>> enthusiasm, and excited to own this sexy outfit, you nod in agreement. "@@.pc;Like... really, really grateful!@@"<br>
<br>
The <<men>> leer and one of them waves over a clerk to pass off <<his>> card. "@@.generic_male1;Of course, it would be practically a crime to let her walk out in anything less than that full ensemble... we've got a few minutes while they ring things up... how about you start showing that gratitude?@@"<br>
<br>
[<<moveTo "event_barista_mall_4" "Bend over." 300 "<<set $scene.suck=false>>">>]<br>
[<<moveTo "event_barista_mall_4" "Drop to your knees." 300 "<<set $scene.suck=true>>">>]
</div>/*#
#desc: npc_barista "pay" for outfit
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'bimbofication' 'slut_bimbofication' 'perfect_bimbo'>>
<<applyExperience 'bimbofication' 20 'terrible' $EXPOSED>>
<<if $scene.suck>>
<<applyExperience 'whoring' 3 'little' $EXPOSED>>
<<applyExperience 'oral' 8 'normal' $EXPOSED>>
<<applyExperience 'cum' 8 'normal' $EXPOSED>>
<<else>>
<<applyExperience 'whoring' 7 'little' $EXPOSED>>
<<applyExperience 'anal' 8 'normal' $EXPOSED>>
<<applyExperience 'cum' 8 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Boutique Unique">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" setup.charImage("npc_barista","npc_barista_bimbo") setup.charImageGeneric("mall_dude1") setup.charImageGeneric("mall_dude2")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
You drop to your knees like the eager slut you are. The <<man>> turns out to be only average size, but cock is cock and you're an addicted slut, eagerly demonstrating your gratitude as you put on a show of moaning and sucking; licking around <<his>> glans and down the under-side of <<his>> shaft before gulping <<him>> down and surrendering to <<his>> hand gripping your head to jack-hammer away.<br>
<br>
Isn't long before the <<man>> cums, pulling you away to shoot high for a facial even as you try to catch as much as you can between your lips.
<<else>>
You bend over; taking advantage of your micro-short skirt to flip your clothes out of the way and offer your ass in invitation. <<=ps(setup.getNpcName("npc_barista","nickname"))>> friend wastes no time in
<<if !setup.checkItemTypeWorn("plug")>>
plunging into you,
<<elseif setup.checkItemTypeTag('plug', ['hollow'])>>
jamming <<his>> <<getWordPenis>> through your hollow plug,
<<else>>
replacing your plug with <<his>> <<getWordPenis>> and
<</if>>
giving it to you as hard and deep as <<his>> average-sized member is capable of.<br>
<br>
You're barely getting started when <<he>> grunts, pulling out just before climax to blast <<his>> seed across your back like an animal marking <<if $options.fem>>its<<else>>his<</if>> territory.
<<if $player.body_ref.vagina>>
You're already dripping from your other hole,
<<if !setup.checkItemTypeWorn("cage")>>
eager to introduce it to a nice fat meat missile as well...
<<else>>
frustrated by your belt locking it away.
<</if>>
<</if>>
<</if>>
<br><br>
You glance over to see <<=setup.getNpcName("npc_barista","nickname")>> getting railed... as even more people trickle into the room.<br>
<br>
"@@.npc_barista;You didn't think I only invited the two, did you?@@" <<=setup.getNpcName("npc_barista","nickname")>> says with a grin as the shopkeeper put up the "closed for a private party" sign and joins the now more than a dozen people surrounding you and <<=setup.getNpcName("npc_barista","nickname")>>. "@@.npc_barista;The fabric of your new outfit is supposed to, like... be super durable and impervious to stains, but who can trust that sort of thing without a test drive?@@"<br>
<br>
You glance around... getting the distinct feeling that her friends are here for something more like a Le Mans race than a mere country drive...<br>
<br>
[<<moveTo "event_barista_mall_6" "Oh boy!" 3600>>]<br>
</div>/*#
#desc: npc_barista shopping celebratory orgy
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 20 'terrible' $EXPOSED>>
<<applyExperience 'oral' 15 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 15 'unbelievable' $EXPOSED>>
<<applyExperience 'cum' 15 'unbelievable' $EXPOSED>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.removeCage = $player.body_ref.vagina && $player.virgin.vaginal && setup.checkItemTypeWorn('cage') && setup.isCage() && setup.canSexOrRemoveChastity("vag")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<if !$player.body_ref.vagina || $player.body_ref.vagina && $player.virgin.vaginal && ($scene.removeCage || !setup.checkItemTypeWorn('cage') || setup.isCage())>>
<<if !$player.sec_style.sex.airtight>>
<<set $player.sec_style.sex.airtight = "enthusiast">>
<</if>>
<</if>>
<<changeMakeupMessed 75>>
<<alterStatAllWorn 'dirty' '["add",50]'>>
<<alterStatAllWorn 'cumsoaked' '["add",100]'>>
<</if>>
<<set $player.location to "Boutique Unique">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" setup.charImage("npc_barista","npc_barista_bimbo_cum") setup.charImageGeneric("many_dudes")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
Eager for a "full" experience you shed your <<=setup.getItemName($scene.cage)>> in wet anticipation — smiling in invitation with <<if $player.body_ref.vagina>>your three<<else>>both your<</if>> holes ready for service.
<</if>>
<<=ps(setup.getNpcName("npc_barista","nickname"))>> friends descend on the pair of you and you're soon at the centre of an orgy, or perhaps more of a gang-bang. While <<=setup.getNpcName("npc_barista","nickname")>> certainly doesn't hold back, it's clear that you're the focus of the show, as she sucks and fingers and fucks either as a fluffer, or claiming sloppy-seconds cleanup to your main course.<br>
<br>
Your outfit proves the manufacturers claims, stretching to accommodate as you are groped and fucked, pounded in <<if $player.body_ref.vagina>><<if !setup.checkItemTypeWorn("cage") && $player.virgin.vaginal || $scene.removeCage>>all three<<elseif !$player.virgin.vaginal && $player.body_ref.vagina>>two of your holes... strangely avoiding your virginal vagina<<else>>both available<</if>><<else>>both<</if>> holes as well as handjobs, thigh jobs,<<if $player.body.breastsize < 5>> and foot jobs<<else>> foot jobs and tit jobs<</if>> to all and sundry — a few people even fuck your armpits... and all you can think is <<printThoughtGlitch "MORE">>.<br>
<br>
There are a few moments where you are serving <<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || $scene.removeCage)>>five<<else>>four<</if>> <<if $options.fem>>girl<</if>>cocks at the same time. All of your combined exposed holes getting dicked down along with a <<getWordPenis>> in each hand, but you also enjoy licking cunt, getting pounded by strap-ons, and even the odd vibrator that someone pulls out of their purse.<br>
<br>
By the time you're done, you and <<=setup.getNpcName("npc_barista","nickname")>> are drenched in cum and sweat, kissing each other's faces clean as your few remaining exhausted "friends" cheer.<br>
<br>
[<<moveTo "event_barista_mall_7" "Continue." 600>>]
</div>/*#
#desc: head home after npc_barista mall trip
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_inside.png" setup.charImage("npc_barista","npc_barista_bimbo_cum")>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;Now THAT is how you end a shopping trip!@@" <<=setup.getNpcName("npc_barista","nickname")>> states with a grin as she helps you to your feet. <<if $scene.removeCage>>Your chastity device is re-installed, though it is hardly a sufficient dam to keep a portion of the dozens of loads of cum you've taken from leaking down your thigh. <</if>>A few tugs and tucks and your outfit is "covering" you as much as its minimal fabric is capable of and you wave good-bye to your new friends. You have not learned, or even heard, a single one of their names. As you walk back into the mall you are brimming with confidence at being able to walk side by side with your fellow slut.<br>
<br>
[<<moveTo "event_barista_mall_8" "Talk a walk of... shame?" 600>>]
</div>/*#
#desc: head home after npc_barista mall trip
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 13 'unbelievable' $EXPOSED>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_inside.png" setup.charImage("npc_barista","npc_barista_bimbo_cum")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_barista","nickname")>> complete a walk of "shame" — or is that victory parade? Through the mall, reveling in the attention of the staring public as you make a full circuit before even thinking about approaching an exit.<br>
<br>
"@@.npc_barista;Alright, well... I hope you had as good of a day as I did, but... I'll let you get home. I'm, like, so totally glad you decide to cum with me, it was a blast!@@"<<if $npc_barista.flags.rescue.cure == "good">> She winks at you and, for a moment, you spot the cunning of <<=setup.getNpcName("npc_barista","first")>> peek through, a reminder that your friend is playing a role... but also loving every hedonistic moment of it.<</if>><br>
<br>
The two of you hug as you assure her that you had a wonderful time. She skips gleefully away, butt swinging with every step showing no sign of fatigue from the marathon fuck-fest.<br>
<br>
[<<moveTo "room_citymap" "Leave the mall." 600>>]
</div>/*#
#desc: barista annoyed at your lack of effort
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","nickname")>> emerges from the storage room having, yet again, taken care of a customer. Her initial bimbo grin becomes a narrowed gaze as she sees you.<br>
<br>
With the most recent customer having left satisfied, the cafe is momentarily empty. <<=setup.getNpcName("npc_barista","nickname")>> storms across the room and flips the sign to "closed" before turning back to address you.<br>
<br>
"@@.npc_barista;Not that I, like, don't LOVE giving customers that bit of extra help... but you need to carry your weight! At this company there are consequences for not keeping up!@@"<br>
<br>
<<if $npc_barista.flags.rescue.cure == "good">>
For a sliver of a moment you see <<=setup.getNpcName("npc_barista","first")>> peek out to look at you with concern and you reflect all that she's gone through.
<<else>>
Underneath the bimbo daze there is a hint of fearful concern in <<=ps(setup.getNpcName("npc_barista","nickname"))>> you involuntarily shiver, wondering what all happened to, and inside, that poor pink head of hers.
<</if>>
If she's warning you like this it's probably a pretty strong hint that you need to change something up lest you risk something worse.<br>
<br>
"@@.npc_barista;So, like... to help you out, I think we should do a bit of... I guess you'd call it job retraining? You definitely, like, need a refresher on how to um... I guess "not-think" like a proper bimbo barista!@@"<br>
<br>
[<<moveTo "event_barista_bimbofication_2" "If that's what it takes..." 60 "<<set $scene.abort=false>>">>]
[<<moveTo "event_barista_bimbofication_2" "Forget this, just go back to your normal job." 300 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: barista reviews your failures
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You consider what <<=setup.getNpcName("npc_barista","nickname")>> might come up with for "retraining" and decide that you've had enough for the day.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> frowns, but does not stop you as you walk past and out of the cafe. She flips the sign back to "open" as you head back to your office and your primary job as a <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Sit down at your desk and start working." 60>>]
<<else>>
You apologise for your failures and agree to <<=ps(setup.getNpcName("npc_barista","nickname"))>> training proposal.<br>
<br>
"@@.npc_barista;Great!@@" She replies with a bounce and a smile that has her large breasts jiggling. "@@.npc_barista;So, like, before we get into how to work, let's talk about how to look. Looks are a bimbo's first asset, every choice should be made to maximise arousal, to be a living advertisement that screams "fuck me." Obviously that can mean different things to different customers, but that just, like, provides the opportunity to get creative. Hair, nails, makeup, clothes, heels, poses... there's just, like, so many options to scream sex, even when you're, like, standing quietly behind the counter! Oh, and, like, don't forget the body itself! Natural or store bought, a bimbo's body is a crafted work of art!@@"<br>
<br>
/%TODO: if add slutty latex maid setup.checkVisibleClothingTag("slutty") > 50 && %/
<<if $player.makeup.template == "ultimatebimbo" && $player.makeup.permanent == "ultimatebimbo" && setup.getCurrentHairstyle().femininity > 3 && setup.getItemObjFromType("shoes").heels.difficulty > 10 && setup.calcBreastSize() == "massive">>
She looks you over and grins. "@@.npc_barista;Your current ensemble is, like, perfect. Sexy makeup, slutty clothes, fuck-me heels to show off that butt... and, of course, those big beautiful tits... and hair ready to get pulled while you're fucked from behind... or used to hold you in position while you eat cunt or suck cock yup, what you lacked in behaviour, you nail in the looks department... which... kind of makes for false advertisement?@@"
<<else>>
She leads you into the storage room and begins critiquing and enhancing your outfit.<br>
<br>
<<if setup.getCurrentHairstyle().femininity > 3>>
"@@.npc_barista;Alright, starting from the top. Your hair looks good — sexy, and enough of it for a client to grab hold of as needed.@@"
<<elseif setup.getCurrentHairstyle().femininity > 0>>
"@@.npc_barista;Alright, starting from the top. Your hair is femme... but that's hardly enough. We're looking for hyper-femme, flirty, long, and perfect for a client to grab a hold off to guide your face where it needs to go.@@"
<<else>>
"@@.npc_barista;Alright, starting from the top and, like... we're already in trouble. you want a nice hair-style, both to look sexy... and to be a convenient handle for clients.@@" <<=setup.getNpcName("npc_barista","nickname")>> produces a long blonde wig and pulls it over your head.
<</if>>
<br><br>
<<if $player.makeup.template == "ultimatebimbo" && $player.makeup.permanent == "ultimatebimbo">>
"@@.npc_barista;Your makeup is, like, on point. It shouldn't be the first thing someone notices about you, but, like, you want a face that says "stop chatting me up and fuck me already." Troweling on the makeup for that fuck-me look really helps advertise that you're a self-made bimbo sex object. Doubling up temporary over permanent is going that extra kilometer to look hot, be ready to ruin... but also be able to quickly clean off and go back to bimbo without ever once, looking "natural," ugh.@@"
<<elseif $player.makeup.template == "ultimatebimbo">>
"@@.npc_barista;So like... your makeup is good... but it's also like... temporary? Being a bimbo is a performance, but it's also a way of life. You want to build up layers of being a bimbo sex-doll. Doubling up temporary over permanent is going that extra kilometer to look hot, be ready to ruin... but also be able to quickly clean off and go back to bimbo without ever once, looking "natural," ugh.@@"
<<elseif $player.makeup.permanent == "ultimatebimbo">>
"@@.npc_barista;So like... your makeup is good... but its incomplete. Permanent styling is great to make sure that you never look "natural," ugh... but you want to trowel it on on top to really show off your commitment... and be ready to ruin... while also able to quickly clean off and go back to perfect bimbo.@@"
<<else>>
"@@.npc_barista;So just wearing makeup, like, isn't enough. We're shooting for "porn star, applied with a trowel fuck-me glory"... and, to REALLY prove yourself you should have the same style permanently applied underneath. That way you are ready to ruin... while also able to quickly clean off and go back to perfect bimbo without ever once looking "natural," ugh.@@" <<=setup.getNpcName("npc_barista","nickname")>> applies a fresh, and heavy, coat of makeup over your face.
<</if>>
<br><br>
<<if true || _TODO>>
"@@.npc_barista;That maid outfit is, like perfect. You can never go wrong with latex. Nice and tight and inviting... and easy to clean up! That's why it's the uniform here at Cafe 52, where we should be uniformly sexy and slutty!@@"
<<elseif setup.checkVisibleClothingTag("slutty") > 50>>
"@@.npc_barista;That maid outfit is, like perfect. At a glance it tells people the two most important things about you — that you're a sexy slut, and that you're "in uniform" and ready to work.@@"
<<else>>
"@@.npc_barista;Not all maid outfits are equivalent. Like, that one is fine for being "in uniform" and letting customers know you're here to work... but also, like... you want to make sure that you're a sexy slut.@@" <<=setup.getNpcName("npc_barista","nickname")>> applies a fresh, and heavy, coat of makeup over your face.
<</if>>
<br><br>
<<if setup.calcBreastSize() == "massive">>
"@@.npc_barista;Your breasts? Perfect. Bimbos want them big and beautiful, and that's exactly what you're sporting. The only reason for your tits to not be the first thing someone notices about you is if they're, like... an ass person, and well, you've definitely got that covered with those hips!@@"
<<else>>
"@@.npc_barista;<<if $player.body.breastsize[0] > 0>>Your breasts<<else>>That flat chest?<</if>> Well... it just won't do. I mean, what's a bimbo without some stonking huge tits? Sure you have hips... but you need to balance it out up top... by which I mean go over the top so a single glance identifies you as a sex-bomb.@@"
<</if>>
<br><br>
<<if setup.getItemObjFromType("shoes").heels.difficulty > 10>>
"@@.npc_barista;Those heels are, like... to die for. Tall, thin, they show off your legs and butt and help draw everything together to say "fuck me." A proper bimbo is never caught dead in anything less.@@"
<<else>>
"@@.npc_barista;There are heels and then there are HEELS... what you have on now falls a bit short. You want something tall and thing to really show off your legs and butt, shoes that catch they eye and pull the whole look together and say "fuck me." A proper bimbo is never caught dead in anything less.@@"
<</if>>
<br><br>
Having run through your failures, <<=setup.getNpcName("npc_barista","nickname")>> takes a whirl-wind few minutes "fixing" everything and you're soon staring at your reflection — a real big-titty slutty bimbo barista.
<</if>>
<br><br>
"@@.npc_barista;Alright, now that you've got the look, it's time to practice the act. I phoned up, like, a friend to help you practice. <<He npc_cook>> will be here soon so, like, get behind that counter and get ready to service customer orders!@@"<br>
<br>
[<<moveTo "event_barista_bimbofication_3" "Head behind the counter..." 180>>]
<</if>>
</div>/*#
#desc: barista gives you work training intro
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You follow <<=ps(setup.getNpcName("npc_barista","nickname"))>> in strutting out of the storage room, chest you, hips swaying as you walk behind the counter and take up a position. <<=setup.getNpcName("npc_barista","nickname")>> gives you a friendly butt-squeeze and then leans in to stick a pair of earbuds in your ear. "@@.npc_barista;Here, these will, like... in the right state of mind.@@" She states before sliding out of sight to leave you alone behind the camera.<br>
<br>
A lusty voice speaks into your ear, sounding distant enough to require focusing on the words, but a constant repetition that seeps in and keeps your thoughts from wandering... and made somewhat disorienting as you have a different script playing in each ear, one a bubbly cheer, the other a more musical chorus.<br>
<br>
<<shinyText "Happy. Horny. I live to service customers." 0.0>>
<<glitchText "More, more, I'm a bimbo whore!">>
<<shinyText "Slutty. Salacious. Submissive." 0>>
<<glitchText "Let me fuck, have me suck! I'm the world's biggest slut!">><br>
<br>
The jarring blend of sound has you distracted until a chime sounds... and your plug buzzes, focusing your attention as the door to the cafe opens.<br>
<br>
[<<moveTo "event_barista_bimbofication_4" "I live to service customers..." 180>>]
</div>/*#
#desc: cook shows up for cafe training
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
You look towards the door as <<=setup.getNpcName("npc_cook","first")>> walks into the cafe. <<He npc_cook>> nods at you in minor acknowledgement before sliding up to the counter and smirking at you. "@@.npc_cook;So I was looking for something... hot... and sweet...@@"<br>
<br>
<<if $fetish.cum>>
You ask if <<he npc_cook>> wants cream and <<he npc_cook>> grins. "@@.npc_cook;Oh, I like cream in everything... but I provide my own...@@" <<he npc_cook>> replies with a wink.<br>
<br>
<</if>>
<<=setup.getNpcName("npc_cook","first")>> leans against the counter and you consider how to prepare <<his npc_cook>> order.<br>
<br>
[<<moveTo "event_barista_bimbofication_5" "Rush through filling the order." 60 "<<set $scene.show=false>>">>]<br>
[<<moveTo "event_barista_bimbofication_5" "Put on a show." 60 "<<set $scene.show=true>>">>]
</div>/*#
#desc: make coffee for cook
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.show>>
You put on an exaggerated show as you fill the simple order, showing off your cleavage as you confirm the order in your most sultry voice, then spinning around to use the coffee machine... and bending forward to show off your ass as you brew and pour and how, personally, you like your coffee nice and STRONG.<br>
<br>
<<=ps(setup.getNpcName("npc_cook","first"))>> cup is soon full-to-order and you turn back around to place it
<<else>>
If you hurry to fill <<=ps(setup.getNpcName("npc_cook","first"))>> order, programming the machine and pouring out <<his npc_cook>> drink.<br>
<br>
You turn around to place the drink
<</if>>
on the counter... only to find that said counter is already "occupied"... by <<=ps(setup.getNpcName("npc_cook","first"))>> massive <<if $fetish.bestality_soft>>horse-<</if>>cock.<br>
<br>
The words still bouncing between your ears interrupt your thoughts as you try to decide how to react.<br>
<br>
<<shinyText "Slutty. Salacious. Submissive." 0>>
<<glitchText "Let me fuck, have me suck! I'm the world's biggest slut!">><br>
<<shinyText "Happy. Horny. I live to service customers." 0>>
<<glitchText "More, more, I'm a bimbo whore!">>
<br>
[<<moveTo "event_barista_bimbofication_6" "Earn that tip?" 60 "<<set $scene.action='suck'>>">>]<br>
[<<moveTo "event_barista_bimbofication_6" "Ignore this impropriety." 60 "<<set $scene.action='ignore'>>">>]
[<<moveTo "event_barista_bimbofication_6" "This isn't proper!" 60 "<<set $scene.action='object'>>">>]
</div>/*#
#desc: serve up coffee and more to cook
#status: RELEASED 0.9.4.0
#ignore_spell: ahm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'suck'>>
"@@.pc;A tip?@@" You ask seductively as you lean forward to drag your boobs across the counter and show off your cleavage. <<=ps(setup.getNpcName("npc_cook","first"))>> cock twitches as you theatrically bring it to your lips, wrapping your lips around the mouth-filling monster as you moan and suck harder.<br>
<br>
"@@.npc_cook;That's ah good <<callPlayer "npc_cook">>,@@" <<=setup.getNpcName("npc_cook","first")>> congratulates as you deploy your skills and continue to suck while your earbuds continue their perverted encouragement.<br>
<br>
<<glitchText "More, more, I'm a bimbo whore!">>
<<shinyText "Slutty. Salacious. Submissive." 0>>
<<glitchText "Let me fuck, have me suck! I'm the world's biggest slut!">><br>
<<shinyText "Happy. Horny. I live to service customers." 0.0>>
<br>
<<if $fetish.cum>>
It isn't long before <<he npc_cook>> cums, blasting you full of thick, creamy cum.<br>
<br>
You gulp eagerly then look up, sheepishly licking your lips as you apologise for not saving any for <<his npc_cook>> drink.<br>
<br>
"@@.npc_cook;Ah, that's fine, <<callPlayer "npc_cook">>. Yeh were meant to be cream-filled, and ahm always glad tah do mah part.@@"
<<else>>
It isn't long before <<he npc_cook>> cums with a satisfied grunt.<br>
<br>
"@@.npc_cook;Ah, now that hit the spot.@@" <<=setup.getNpcName("npc_cook","first")>> states with a grin as you lean back and smile in thanks.
<</if>>
<<case 'ignore'>>
You ignore the meat sausage stretched nearly the full depth of the counter as you hand <<=setup.getNpcName("npc_cook","first")>> <<his npc_cook>> order and thank <<him npc_cook>> for coming in.<br>
<br>
"@@.npc_cook;Ach, more like not cumming.@@" <<He npc_cook>> retorts as <<he npc_cook>> grabs <<his npc_cook>> order in one hand and slides <<his npc_cook>> cock back under <<his npc_cook>> <<if $npc_cook.fem>>skirt<<else>>kilt<</if>> as <<he npc_cook>> walks out of the cafe.
<<case 'object'>>
You act incensed, admonishing <<=setup.getNpcName("npc_cook","first")>> for such a lewd display in the middle of the cafe.<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> is obviously confused, but a moment later shrugs, taking <<his npc_cook>> coffee without a word and stuffing <<his npc_cook>> cock back under <<his npc_cook>> <<if $npc_cook.fem>>skirt<<else>>kilt<</if>> as <<he npc_cook>> walks out of the cafe.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_barista","nickname")>> re-emerges from her hiding place, removing your earbuds and allowing you to focus as she looks at you with the closest she can manage to a stern expression.<br>
<br>
<<if $scene.action == 'suck' && $scene.show>>
[<<moveTo "event_barista_bimbofication_7_perfect" "Find out how you did..." 180>>]
<<else>>
[<<moveTo "event_barista_bimbofication_7" "Find out how you did..." 180>>]
<</if>>
</div>/*#
#desc: barista reviews your efforts with cook, perfect
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.workMilk = setup.isItemEquipped('breast_milker')>>
<<if setup.isItemEquipped('breast_milker')>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<</if>>
<<if setup.isItemEquipped('penis_milker')>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","nickname")>> beams. "@@.npc_barista;Well it looks like you do know how to behave... now take this reminder and, like... put it into use while you're working the cafe... or, well, all the time! Being bimbo is best!@@"<br>
<br>
You thank <<=setup.getNpcName("npc_barista","nickname")>> for the lesson and<<if $scene.change>>, after changing back into office attire,<</if>> head back to <<=ps(setup.getNpcName("npc_manager","formal"))>> office.<br>
<br>
[<<moveTo "event_work_coffee_work_end_noevent" 'Return to your desk.' 60>>]
</div>/*#
#desc: barista reviews your efforts with cook
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.workMilk = setup.isItemEquipped('breast_milker')>>
<<if setup.isItemEquipped('breast_milker')>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<</if>>
<<if setup.isItemEquipped('penis_milker')>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","nickname")>> frowns.
<<if $scene.show>>
"@@.npc_barista;So, like... you did a good job putting on a show while serving the customer...
<<switch $scene.action>>
<<case 'ignore'>>
but then you ignored their request!
<<case 'object'>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
Like, a bimbo who doesn't put out is just an evil cock-tease! Like... teasing is fun, but you need to close the deal, plus, like... who turns down cock?@@" <<=setup.getNpcName("npc_barista","nickname")>> asks, sounding genuinely confused.
<<else>>
"@@.npc_barista;So, like... I think you're really missing the point of being a bimbo, you have to, like... show off all the time! Your first duty is to like... make cocks hard, or pussys wet, 'cause if they're not that... how are you going to get fucked?@@"<br>
<br>
<<switch $scene.action>>
<<case 'suck'>>
<<=setup.getNpcName("npc_barista","nickname")>> slightly smiles. "@@.npc_barista;Like, that aside, at least you did show proper customer appreciation... but a bimbo needs to be the whole package! Especially working here as a <<if $fetish.sissy>>SISSI <</if>>bimbo barista! You have to be, like... professional and stuff!@@"
<<case 'ignore'>>
<<=setup.getNpcName("npc_barista","nickname")>> shakes her head. "@@.npc_barista;As if that wasn't @@"
<<case 'object'>>
<<=setup.getNpcName("npc_barista","nickname")>> glares at you. "@@.npc_barista;You're like... lucky this was just a test, and that <<=setup.getNpcName("npc_cook","first")>> is a friend. We may not be, like, on the upper floors, but behaviour like you showed is a recipe for far more severe retraining than what I served up.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<</if>>
<br><br>
<<=setup.getNpcName("npc_barista","nickname")>> sighs. "@@.npc_cook;You, like, really need to work on your bimbo behaviourals... maybe, like, try having some one-night stands? Or selling yourself on the street? Spending some time as a cheap hoe would, like, really help you, I think.@@"<br>
<br>
You nod<<if $scene.change>>, change,<</if>> and head back to <<=ps(setup.getNpcName("npc_manager","formal"))>> office.<br>
<br>
[<<moveTo "event_work_coffee_work_end_noevent" 'Return to your desk.' 60 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: barista teaches you how to do slutty makeup
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<unlockMakeup "ultimatebimbo">>
<<set $npc_barista.flags.taughtbimbomakeup = true>>
<<set $player.makeup.template = 'ultimatebimbo'>>
<<set $player.makeup.messed = 0>>
<<setThreshold "makeup" "online_makeup" "barista_tips">>
<<setThreshold "feminization" "bad_girl_feminization" "bimbo_makeup">>
<</if>>
<<set $player.location = "Work Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Her eyes light up at your request and before you know it she's grabbed you by the wrist and is dragging you off to the women's room.<br>
<br>
Spinning you to face the mirror, she suddenly has a makeup box open and is wiping
<<if $player.makeup.template == "">>
your face clean
<<else>>
off your current makeup.
<</if>>
<br><br>
"@@.npc_barista;Alright, so I am going to walk you through this, like, step by step and you are going to look sooooo sexy!@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> is a whirlwind, and far more exacting than you would have ever expected from her normal bubbly demeanour, but by the end of it, well... you look like a bimbo, a perfect, plastic, sex-pot with big lips and sexy eyes and... just wow.<br>
<br>
"@@.npc_barista;Ta-da! You should, like do this every day, and check your mirror often! As hot as it can look to have that just-been-fucked ruined thing going on, it isn't usually appropriate at work... oh no! I need to get back to the cafe!@@"<br>
<br>
She dashes off, leaving you by yourself in the bathroom, a porn-worthy sex-doll looking back at you from the mirror.<br>
<br>
[<<moveTo "event_work_barista_makeup_2" "Return to your office." 600>>]
</div>/*#
#desc: return to work after learning slutty makeup
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 6 'very' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Returning to work still a bit in a daze you head for your desk only for <<=setup.getNpcName('npc_manager', 'formal')>> to appear a few minutes later.<br>
<br>
Looking up in surprise, you realise that you completely forgot her coffee order, but before you can apologise she cuts in, momentarily looking even more shocked than you are.<br>
<br>
"@@.npc_manager;Well, well, well...@@" she states, her initial surprise turning to an amused grin "@@.npc_manager;I was just coming out to find out where my coffee was, but it seems you were up to something other than following instructions?@@"<br>
<br>
You brace for punishment, but she only smiles wider. "@@.npc_manager;On the one hand, this style is a bit... much for the office, but I suppose I should have expected you to end up like this, eventually. I would prefer it if you showed a bit more decorum in the future, but for the moment I believe seeing you like this has served to be as much of a pick-me-up as any cup of caffeine, carry on with your work then.@@"<br>
<br>
She disappears back into her office, leaving you embarrassed and still having failed to get a single word in edgewise.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ask him about location for barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.return == "event_landlord_maidcafe_talk_1">>
<<set $player.location to "Cafe: Newtype IV">>
<<else>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.return == 'room_foyer'>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord")>>
<<elseif $scene.return == "event_landlord_maidcafe_talk_1">>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<<else>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.return == 'room_foyer'>>
You lower your voice and ask <<=setup.getNpcName('npc_landlord', 'first')>> if <<he npc_landlord>> has a private location you and a friend could use for something?
<<else>>
Snuggling against <<=ps(setup.getNpcName('npc_landlord', 'first'))>> chest you ask <<him npc_landlord>> if <<he npc_landlord>> might be able to help you with renting a private location "off the books," as it were.
<</if>>
<br><br>
"@@.npc_landlord;Secret location? You up to something <<callPlayer "npc_landlord">>?@@"<br>
<br>
[<<moveTo 'event_landlord_help_barista_2' "Tell <<him npc_landlord>> the truth." 60 "<<set $scene.truth=true>>">>]<br>
[<<moveTo 'event_landlord_help_barista_2' "Don't go into detail." 60 "<<set $scene.truth=false>>">>]
</div>/*#
#desc: ask him about location for barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.stage = 6>>
<<set $npc_barista.flags.location = "landlord">>
<</if>>
<<if $scene.return == "event_landlord_maidcafe_talk_1">>
<<set $player.location to "Cafe: Newtype IV">>
<<else>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.return == 'room_foyer'>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord")>>
<<elseif $scene.return == "event_landlord_maidcafe_talk_1">>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<<else>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.truth>>
Trying not to go too into detail you tell <<=setup.getNpcName('npc_landlord', 'first')>> about your plans to "cure" your friend <<=setup.getNpcName("npc_barista","nickname")>> of the bimbo brainwashing the company has subjected her to.<br>
<br>
Initially shocked <<he npc_landlord>> asks if you are joking but you assure <<him npc_landlord>> that this is really happening, and you need a private location to setup the final parts of the de-programming.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>, <<callPlayer "npc_landlord">>... these are very dangerous things you speak of, mental manipulation and such, why some of the things I heard of during the war...@@" <<He npc_landlord>> get's a distant look in <<his npc_landlord>> eye for a moment before squeezing you, as if to ensure that you are still there. "@@.npc_landlord;Sorry, my old mind wanders sometimes... yes, I can help you. <<if $npc_landlord.stage >= 6>>The cabin we spend the weekend at? You use that. As you know, it very private, and not on any maps. Just... you must promise you be careful, yes? I could not handle the thought of losing my cute maid.<<else>>There is an old family cabin I own outside of town, very private, not on any maps... I can loan it to you but... you must promise you be careful, yes? I could not handle the thought of losing my cute maid. And someday, well... someday maybe we visit the cabin together? Just a <<man npc_landlord>> and <<his npc_landlord>> maid, like one of those old romance novels!<</if>>@@"
<<else>>
You reply that it is nothing illegal... you just need some space away from work for a project you're working on with your therapist.<br>
<br>
"@@.npc_landlord;Ah, decompression, I know well the important of looking out for mental health. <<if $npc_landlord.stage >= 6>>If it important to you... you can use my cabin. As you know, it very private, and not on any official maps.<<else>>I have just the place, outside the city, private, unknown, perfect for getting away from the stress of life. And someday, well... someday maybe we visit the cabin together? Just a <<man npc_landlord>> and <<his npc_landlord>> maid, like one of those old romance novels!<</if>>@@"
<</if>>
<br><br>
You kiss <<him npc_landlord>> and exclaim that would be perfect... and that you <<if $npc_landlord.stage >= 6>>will be sure to spoil <<him npc_landlord>> rotten the next time you visit together<<else>>would be sure to spoil <<him npc_landlord>> rotten the whole time the two of you were together!<</if>><br>
<br>
"@@.npc_landlord;Si, si! I am sure you <<if $npc_landlord.stage >= 6>>will<<else>>would<</if>>, ah, you make this old <<man npc_landlord>> so happy...@@" Reaching for the nightstand <<he npc_landlord>> scribbles a GPS coordinate and hands it to you. "@@.npc_landlord;Here, that's the location, may it provide you safety and help it has given me over the years.@@"<br>
<br>
<<if $scene.return == 'room_foyer'>>
[<<moveTo 'room_foyer' "Return to your flat." 60>>]
<<elseif $scene.return == 'event_landlord_maidcafe_talk_1'>>
[<<moveTo $scene.return "Talk about something else." 60>>]
<<else>>
[<<moveTo $scene.return "Resume cuddling." 60>>]
<</if>>
</div>/*#
#desc: mix drug for barista mission
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.mixDrug = $npc_work_doctor.flags.aphrodisiac.drugStrength >= 10 || setup.getTotalValue("smart") >= 20 || 2*$npc_work_doctor.flags.aphrodisiac.drugStrength + setup.getTotalValue("smart") >= 25>>
<<if $scene.mixDrug>>
<<addItem "aphrodisiac_blend">>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.mixDrug>>
<<if $npc_work_doctor.flags.aphrodisiac.drugStrength >= 10>>
With how monstrously potent <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> aphrodisiac has become it is all but trivial to brew up a special concoction that should be able to kick-start an orgy on demand.<br>
<br>
<<printThought "I wonder if I shouldn't do something about this later... <<=setup.getNpcName('npc_work_doctor','formal')>> having access to such a powerful formula could be dangerous.">>
<<elseif setup.getTotalValue("smart") >= 20>>
Your mighty intellect makes short work of tweaking <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> formula to produce an aphrodisiac perfect for your needs.<br>
<br>
<<if $npc_work_doctor.flags.aphrodisiac.drugStrength > 5>>
<<printThought "Even at partial strength <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> formula is dangerous... might be a good idea to spend time sabotaging it...">>
<<elseif $npc_work_doctor.flags.aphrodisiac.drugStrength == 0>>
<<printThought "Good thing I ruined the original formula, who knows what <<=setup.getNpcName('npc_work_doctor','formal')>> might do with something like this...">>
<<else>>
<<printThought "Now that I have this, I should probably get back to destroying the original formula, who knows what <<=setup.getNpcName('npc_work_doctor','formal')>> might do with something as strong as this...">>
<</if>>
<<else>>
By applying your intellect you are able to sufficiently modify <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> to meet your purposes.<br>
<br>
<<if $npc_work_doctor.flags.aphrodisiac.drugStrength > 5>>
<<printThought "Even at partial strength <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> formula is dangerous... might be a good idea to spend time sabotaging it...">>
<<else>>
<<printThought "Now that I have this, I should probably get back to destroying the original formula, who knows what <<=setup.getNpcName('npc_work_doctor','formal')>> might do with something as strong as this...">>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_elevator_home" "Escape with your prize." 300 "<<if setup.checkItemWorn('nurse_catsuit')>><<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>><</if>>">>]
<<else>>
You cannot figure out a mix of sufficient potency.
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
Even your prodigious intellect comes up short... perhaps if you had not so thoroughly sabotaged <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> work.
<<else>>
Perhaps if you spent a bit more time hitting the books... or leverage <<=setup.getNpcName("npc_work_doctor","formal")>> to strengthen the base blend.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You conclude that you will either need to get quite a bit smarter... or maybe you could get <<=setup.getNpcName("npc_work_doctor","formal")>> to strengthen the base blend.
<<else>>
A result that is, perhaps, unsurprising, given how much of a ditz you have become.
<</if>>
<</if>>
<br><br>
<<printThought "It'd be a risk... but maybe I could temporarily raise the efficacy of <<his npc_work_doctor>> aphrodisiac?">><br>
<br>
[<<moveTo "event_work_doctor_help_lab_3" "Mix something else." 60>>]
<</if>>
</div>/*#
#desc: fail to work barista shift because barista in chastity
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> about working a shift in Cafe 52 only for her to frown and shake her head.<br>
<br>
"@@.npc_manager;No, I am afraid your recent... event has led to things getting a bit more locked down, as it were. In the near term that means no bonus shifts for you, I am afraid. Will there be anything else?@@"<br>
<br>
<<if $player.sec_style.submission.human_toilet != "">>
[<<moveTo 'event_work_piss_work_change' "Work a shift in the Executive Bathroom." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
<<else>>
<<if $npc_manager.flags.piss_drinking.available>>
[<<moveTo 'event_work_piss_work_voluntary_1' "Sneak up to work a shift in the Executive Bathroom." 60 "<<set $scene.voluntary=true>><<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_alt_work_0')>>
<<if _themeId != -1 && $npc_manager.themes.other_work[_themeId].done > 0>>
[<<moveTo "event_manager_piss_drinking_greed_1" "Ask if you could earn some money working in the Executive Bathroom?" 60>>]<br>
[<<moveTo "event_manager_piss_drinking_obedient_1" 'Ask if you could spend the afternoon "honing your skills" in the Executive Bathroom?' 60>>]<br>
<</if>>
<</if>>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' "Just return to your desk and start a normal afternoon shift." 60>>]
</div>/*#
#desc: talk to technician about setting up a gangbang for barista
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'theme_technician_barista_gangbang')>>
<<if $npc_technician.themes.rpg[_themeId].done > 1>>
You bring up the issue of <<=setup.getNpcName("npc_barista","nickname")>> and apologise for getting cold feet.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> displays sympathy and nods. "@@.npc_technician;Group sex can be pretty intense... but, well, as weird of a situation as this may be, she needs our help, right?@@"<br>
<br>
[<<moveTo 'event_technician_barista_gangbang_2' 'You want to take another shot at organising a gang-bang for <<=setup.getNpcName("npc_barista","nickname")>>.' 300>>]<br>
<<else>>
You lean in so that the rest of the Cafe doesn't overhear and explain the situation with your mutual friend <<=setup.getNpcName("npc_barista","nickname")>> to <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> stares back incredulously as you describe what you've learned about <<=ps(setup.getNpcName("npc_barista","nickname"))>> brainwashing... and the first step of the crazy plan that <<=setup.getNpcName("npc_psychiatrist","formal")>> has concocted to "fix" the bimbo barista.<br>
<br>
Distractedly taking a sip from an already empty cup of coffee <<=setup.getNpcName("npc_technician","first")>> sounds haunted as she replies. "@@.npc_technician;Wow, that's... I mean I suspected <<=setup.getNpcName("npc_barista","nickname")>> was hiding some secrets but this... what depravity ISN'T the company up to? Someone has to stop them...@@"<br>
<br>
You nod in agreement, adding that helping <<=setup.getNpcName("npc_barista","nickname")>> seems like a good step towards that end.<br>
<br>
"@@.npc_technician;Yeah... and how many stories have I read about someone being mentally controlled or brainwashed? Do you think she's trapped in her own mind? Watching but unable to restrain her programmed behaviour.@@" <<=setup.getNpcName("npc_technician","first")>> shudders. "@@.npc_technician;I guess what sounds hot in a story can get really frightening in real life... anyway, what help do you need from me?@@"<br>
<br>
[<<moveTo 'event_technician_barista_gangbang_2' 'Say you want to organise a gang-bang for <<=setup.getNpcName("npc_barista","nickname")>>, could the RPG group help?' 300>>]<br>
<</if>>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: talk to technician about setting up a gangbang for barista
#status: RELEASED 0.8.4.0
#ignore_spell: pg
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_barista.stage < 3>>
<<set $npc_barista.stage = 3>>
<</if>>
<<if $npc_rpg_warlock.flags.celebration && $npc_technician.relationship.done_her>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks.technician_roleplay_1.finished>>
<<deleteTask 'technician_roleplay_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks.technician_roleplay_punish_1.finished>>
<<deleteTask 'technician_roleplay_punish_1'>>
<</if>>
<<set $scene.puntCollar = $currentTasks.hasOwnProperty('technician_collar_her_ceremony') && !$currentTasks.technician_collar_her_ceremony.finished>>
<<if $scene.puntCollar>>
<<postponeTask 'technician_collar_her_ceremony' 7>>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, true)>>
<<addTaskById 'rpg_session_gangbang' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'theme_technician_barista_gangbang')>>
<<if $npc_technician.themes.rpg[_themeId].done > 1>>
You re-iterate your plan to push <<=setup.getNpcName("npc_barista","nickname")>> to the point of pleasure overload.
<<else>>
You lay out your plan — to build on what you were able to do on your own and recruit the entire RPG group to push <<=setup.getNpcName("npc_barista","nickname")>> to the point of pleasure overload.<br>
<br>
"@@.npc_technician;Wow... talk about a plan out of a porno... the only thing is... I'm worried... is this even what <<=setup.getNpcName("npc_barista","nickname")>> would want? Consent is a bit of a mind-fuck when literal mind-fucking is involved... and how do you know you can trust <<=setup.getNpcName("npc_psychiatrist","formal")>>?@@"<br>
<br>
You sigh, admitting that you can't completely, but
<<if State.hasPlayed("event_rpg_missed_punishment_4_barista_4")>>
that it was <<=setup.getNpcName("npc_barista","nickname")>> that sent you to speak with <<=setup.getNpcName("npc_psychiatrist","formal")>>, and that your personal experience would seem to be consistent with the "pleasure overload" plan.
<<else>>
that, at least in this case, her words ring true... though you consider that you could theoretically do a "smaller" experiment on the "pleasure overload" theory.<br>
<br>
"@@.npc_technician;Hmm, yeah... if you wanted to do that maybe penance would be the best path? <<if $npc_technician.flags.rpg_campaign.penance.basic>>Just purposefully show up a little late, take your punishment, then choose <<=setup.getNpcName("npc_barista","nickname")>> and you'll have an opportunity without raising any suspicions<<else>>Penance is what we call the punishments for missing or being late to game... how do you think we maintain such a consistent attendance? Anyway, just miss a session and then choose to do penance with <<=setup.getNpcName("npc_barista","nickname")>> and, well... there's your opportunity without raising any suspicions<</if>>.@@"
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> slowly nods.
<<if !$npc_technician.relationship.done_her>>
"@@.npc_technician;I see... and I'm willing to make the arrangements, but first, well... I think it's only fair to want my <<switch $player.identify_as>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>> to fuck my brains out at least once before we team up to gang-bang some... floozy.@@"
<<elseif !$npc_technician.flags.rpg_campaign.penance.warlock>>
"@@.npc_technician;As far as scheduling the orgy is concerned... so... keep this to yourself, but I've holding off on a group orgy because I don't want to put pressure on <<=setup.getNpcName("npc_rpg_warlock","first")>>, she's been a bit sensitive... maybe if you interacted with her a bit more? <<if $npc_technician.flags.rpg_campaign.penance.basic>>We have this system of penance for people who miss game or are late... maybe skip one week, then choose do your penance with <<=setup.getNpcName("npc_rpg_warlock","first")>>?<<else>>Penance is what we call the punishments for missing or being late to game... how do you think we maintain such a consistent attendance? Anyway, just miss a session and then choose to do penance with <<=setup.getNpcName("npc_rpg_warlock","first")>>, I think making it one on one rather than the full group would help her open up some<</if>>.@@"
<<elseif $npc_rpg_warlock.flags.celebration>>
"@@.npc_technician;Okay... I'll see what I can set up<<if setup.daysToDate($now,setup.getTaskDueDate('rpg_session_gangbang')) == 0>> for tonight<<else>>, thinking next week<</if>>. <<if setup.daysToDate($currentTasks.technician_roleplay_surgery.finishedTime, $now) < 28>>Heh, so close after <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> celebration! We're going to have<<else>>Between this and celebrating surgery... we may need<</if>> to do some old fashion PG campaign or something after this to cool people off and keep from the RPG gathering from turning into a weekly orgy!<<if $scene.puntCollar>> Oh and... as much as it pains me, I think we'll need to postpone the collaring ceremony. I really, really want to do it... but helping a friend in distress feels like it takes priority.<</if>>@@"
<<else>>
"@@.npc_technician;Okay... I'll see what I can setup. Probably going to take a little time though, since <<=setup.getNpcName("npc_rpg_warlock","first")>> is dealing with some... stuff and it sounds like we are going to want all hands on deck for this.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: technician calls you because you failed to show up for gangbang session
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_technician' 3>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'rpg_session_gangbang' _nextDate>>
<<set $scene.puntCollar = $currentTasks.hasOwnProperty('technician_collar_her_ceremony') && !$currentTasks.technician_collar_her_ceremony.finished>>
<<if $scene.puntCollar>>
<<postponeTask 'technician_collar_her_ceremony' 7>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_technician', 'first')>>!<br>
<br>
<<if $scene.noPhone>>
You are unable to answer your phone and it goes to voicemail.<br>
<br>
"@@.npc_technician;Hey, so... where are you? Today was supposed to be that "special celebration" for <<=setup.getNpcName("npc_barista","nickname")>> but... you're not here. We'll run a normal session and punt things to next week but after arranging all of this I can tell you that you've got a bunch of disappointed girls sittin' around!@@"<br>
<br>
You hear a shout in the background.<br>
<br>
"@@.npc_technician;Oh... and I guess <<=setup.getNpcName("npc_rpg_dude","first")>> is frustrated too... but <<he npc_rpg_dude>> can stay in chastity for another week, it'll be good for <<him npc_rpg_dude>>.<<if $scene.puntCollar>> Oh, and this means that the collaring ceremony is pushed back ANOTHER week... sorry!<</if>>@@"<br>
<br>
<<printThought "Shit, I totally forgot about the RPG session today!">><br>
<br>
Unfortunately your current situation means there's nothing you can do but hope to make things up to her at a later date.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone a way and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
"@@.npc_technician;Hey, so today was suppose to be the "special celebration" for <<=setup.getNpcName("npc_barista","nickname")>> and... you're not here? Let me tell you that I've got a bunch of disappointed girls and severe cases of blue-balls sitting around here! I'll move things out to next week and we'll just run a normal game but, like... this was your idea so I'm a bit bummed you're a no-show.@@"<br>
<br>
You apologise, feeling even more like crap for how many people you have disappointed.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and resume what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: show up for barista gangbang session
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == "sub">>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual_slave")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<</if>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName('npc_technician', 'first'))>> to find <<=setup.getNpcName("npc_rpg_warlock","first")>>, <<=setup.getNpcName("npc_rpg_dude","first")>> and <<=setup.getNpcName("npc_maid","first")>> sitting around looking, well... ready for a gang-bang.<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> is wearing a sexy set of crotchless lingerie, holding a leash in one hand that is attached to <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> collar. The obedient slave, <<his npc_rpg_dude>> <<if $npc_rpg_dude.fem>>breasts in a latex bra<<else>>pale, svelte and muscled chest on display<</if>> above tight, bulging leather jeans. <<=setup.getNpcName("npc_maid","first")>> is sitting faced away from the door but grins at you over her shoulder as <<=setup.getNpcName('npc_technician', 'first')>> runs up to greet you.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom' 'neutral' ''>>
She is dressed in a leather "dominatrix" outfit, complete with a crop.<br>
<br>
"@@.npc_technician;Come on, let's get you dressed for the occasion before the lady of the hour arrives. You're going to be the perfect fluffer-slut-slave.@@"
<<case "sub">>
She is dressed like the "slave next door" — her normal casual outfit accentuated with a thick leather collar.<br>
<br>
"@@.npc_technician;Welcome, my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I have everything arranged like you asked, let's get you into something a bit more fitting for running the show before the lady of the hour arrives.@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
As <<=setup.getNpcName('npc_technician', 'first')>> leads you towards the bedroom you have a feeling that this is your last chance to abort before things descend into non-stop debauchery.<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_2' 'Get changed.' 300>>]<br>
[<<moveTo 'event_rpg_barista_gangbang_abort' "On second thought, you aren't ready for this." 300>>]
</div>/*#
#desc: abort barista gangbang session
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'rpg_session_gangbang'>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == "sub">>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<</if>>
<div id="invframe" class="scrolltext">
You pull <<=setup.getNpcName('npc_technician', 'first')>> aside and explain that you just aren't ready for this...<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> looks at you with obvious concern. "@@.npc_technician;Okay just... give me a minute, okay? I'll sort this whole thing out. Just... talk to me some other time, if you ever change your mind.@@"<br>
<br>
You sigh with relief, feeling even more comforted as she gives you a gentle hug before darting away.<br>
<br>
A couple minutes later and everyone is assembling around the gaming table — whatever <<=setup.getNpcName('npc_technician', 'first')>> told her friends, even <<=setup.getNpcName('npc_barista', 'nickname')>> isn't commenting at the aborted sexcapades.<br>
<br>
[<<moveTo 'event_rpg_root' "On to game." 180>>]
</div>/*#
#desc: get changed + chastity for barista gangbang session
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if $npc_technician.relationship.her_role == 'sub'>>
<<addItemSet 'dom_outfit'>>
<<wearItemSet 'dom_outfit'>>
<<else>>
<<addItemSet 'enslaved_star_princess'>>
<<wearItemSet 'enslaved_star_princess'>>
<</if>>
<<set $scene.removeCage = $player.body_ref.penis && $npc_technician.relationship.keyholder && setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('barista_orgy')>>
<</if>>
<<set $player.location = 'Private Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == 'sub'>>
<<createAdvBGR "./images/locations/technician_bedroom_swing.png" setup.charImage("npc_technician","npc_technician_casual_slave")>>
<<else>>
<<createAdvBGR "./images/locations/technician_bedroom_swing.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<</if>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_technician', 'first')>> into the bedroom where she has laid out an outfit for you —
<<if $npc_technician.relationship.her_role == "sub">>
a sexy dominatrix outfit of corset, leather pants and thick-heeled boots.
<<else>>
a cute slave outfit that reminds you of a certain conflict-themed space opera.
<</if>>
<br><br>
Above the bed hangs what looks like a brand new sex swing and you raise your eyebrow in surprise.<br>
<br>
"@@.npc_technician;I thought it might come in handy if we had to go extreme... plus I've always wanted one anyway, y'know?@@"<br>
<br>
You smile, trying to put aside all the fun ideas it sparks to focus on the task at hand. You change quickly and get ready to return to the main room to await <<=setup.getNpcName("npc_barista","nickname")>>.
<<if $npc_technician.relationship.her_caged && $npc_technician.relationship.keyholder>>
"@@.npc_technician;So I figure it's best if we're both unlocked for this, right?@@"<br>
<br>
You nod, <<if $npc_technician.relationship.sissyomatic>><<=setup.getNpcName('npc_ai', 'formal')>> lending a digital hand in freeing the two of you<<else>>freeing one another<</if>> before you both stride
<<elseif $npc_technician.relationship.her_caged>>
"@@.npc_technician;So we're aiming to go all-out for this, right? Which means I need free of this thing, right?@@" You nod, <<if $npc_technician.relationship.sissyomatic>>and text <<=setup.getNpcName('npc_ai', 'formal')>> to unlock<<else>>unlocking<</if>> her <<getWordPenis false>> to let it spring forth in excitement. "@@.npc_technician;Thanks.@@" She says, giving you a kiss before leading the way
<<elseif $npc_technician.relationship.keyholder && $player.body_ref.penis>>
"@@.npc_technician;Here, I'll let you out of chastity — it's all hands on deck, after all!@@" She quickly frees your <<getWordMyPenis>>, giving it a friendly kiss to welcome it to the "outside" world before hopping to her feet and leading the way
<<elseif $player.body_ref.penis && setup.checkItemTypeWorn("cage")>>
"@@.npc_technician;Sorry about your chastity, but I'm sure you're clever enough to help out.@@" You shrug and <<=setup.getNpcName('npc_technician', 'first')>> leads the way
<<else>>
Having gotten the lay of the land you follow <<=setup.getNpcName('npc_technician', 'first')>>
<</if>>
back out of the room. Back in the main room of the apartment you come face to face with <<=setup.getNpcName("npc_maid","first")>> for the first time. She has traded her normal maid outfit for a version with more of a dominant edge, the centre of attention being her massive <<getWordPenis false>> adorned with a thick cock-ring both functional and decorative.<br>
<br>
"@@.npc_maid;Look at the perfect couple!@@" She teases, though you can sense affection and the slightest hint of jealousy in her comment.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> blows off the comment just as there is a knock on the door — <<=setup.getNpcName("npc_barista","nickname")>> has arrived.<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_3' 'Step 1 of the plan commences...' 300>>]
</div>/*#
#desc: barista arrives for her gangbang session
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == 'sub'>>
<<createAdvBGR "./images/locations/technician_bedroom_swing.png" setup.charImage("npc_technician","npc_technician_casual_slave") setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_barista")>>
<<else>>
<<createAdvBGR "./images/locations/technician_bedroom_swing.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_barista")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","nickname")>> steps through the door and freezes as she looks around. "@@.npc_barista;What? Did I miss a message about what's going on tonight?@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> grins. "@@.npc_technician;Just your typical surprise barista gang-fuck, now get over here and flip up that skirt before you're facing a room-full of blue-balls!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_barista","nickname"))>> expression lights up as she bounds across the room. "@@.npc_barista;Yes! Fuck me, fuck me good!@@" She gleefully shouts, her gaze bouncing from bulge to bulge in anticipation. Sitting down and raising her legs she exposes her dripping cunt, the plugs filling it and her ass barely held in place by her skimpy underthings.<br>
<br>
"@@.npc_barista;Come ooooon@@" she moans, grabbing a plug in each hand and working them for a few churns before pulling free to present twin, momentarily gaping holes. "@@.npc_barista;Barista needs cock badly!@@"<br>
<br>
The sexual tension in the room crests and then there is a flurry of motion as the party descends on the eagerly desperate slut.<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_4' 'Continue.' 600>>]
</div>/*#
#desc: begin gangbanging barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.participants = ['technician', 'dude', 'mc']>>
<</if>>
<<set $player.location = 'Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png">>
<div id="invframe" class="scrolltext">
There is a flurry of activity as everyone moves into position. <<=setup.getNpcName("npc_rpg_dude","first")>>, still on <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> leash, unzips <<his npc_rpg_dude>> fly and stands near <<=ps(setup.getNpcName("npc_barista","nickname"))>> head, with <<his npc_rpg_dude>> grinning SO flanking on the other side. Her mouth watering, <<=setup.getNpcName("npc_barista","nickname")>> switches off between sucking cock and slurping cunt as <<=setup.getNpcName('npc_technician', 'first')>> and <<=setup.getNpcName('npc_maid', 'first')>> momentarily jockey for position at the other end.<br>
<br>
"@@.npc_technician;You know it isn't fair for you to go first!@@" <<=setup.getNpcName("npc_technician","first")>> states with a nod towards <<=ps(setup.getNpcName("npc_maid","first"))>> massive, raging hard-on.<br>
<br>
"@@.npc_maid;Psh, you know this slut's good for it — she could take both of us at once and still pop back as tight as ever.@@"<br>
<br>
Mouth full of cock <<=setup.getNpcName("npc_barista","nickname")>> reacts to this part of the exchange with a moan, bucking her hips in invitation, clearly impatient at having only one of her holes full. "@@.npc_technician;Fine, you can have first crack at her cunt — but I got dibs on her ass!@@"<br>
<br>
"@@.npc_maid;Works for me!@@" <<=ps(setup.getNpcName("npc_maid","first"))>> replies as she pushes <<=setup.getNpcName("npc_barista","nickname")>> legs back with both hands and lines up for her run. "@@.npc_maid;You can open up her back passage for when I'm ready for round two.@@"<br>
<br>
Thrusting her hips forward <<=setup.getNpcName("npc_maid","first")>> plunges into <<=ps(setup.getNpcName("npc_barista","nickname"))>> dripping snatch, the horny bimbo moaning in joy as she is stretched to accommodate the two-handed broadsword.<br>
<br>
Grinding her hips impatiently <<=setup.getNpcName('npc_technician', 'first')>> drags you into a position up top, the two of you making out alongside <<=setup.getNpcName("npc_rpg_dude","first")>> and <<=setup.getNpcName("npc_rpg_warlock","first")>> as <<=setup.getNpcName("npc_barista","nickname")>> gleefully tries to manage four people with only two hands and a mouth.<br>
<br>
Drilling hard, which seems to be exactly how <<=setup.getNpcName("npc_barista","nickname")>> likes it, <<=setup.getNpcName("npc_maid","first")>> cums with a grunt, pulling away amidst dripping cum, her rod looking even harder than when she entered.<br>
<br>
"@@.npc_maid;Next!@@" She grunts.<br>
<br>
<<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>
[<<moveTo 'event_rpg_barista_gangbang_5' 'Try and jump the queue.' 600 "<<set $scene.jumpQueue=true>>">>]<br>
<<else>>
<<if $player.body_ref.penis>>
[@@.link_locked;You are locked in chastity and thus your participation is restricted.@@]<br>
<</if>>
<</if>>
[<<moveTo 'event_rpg_barista_gangbang_5' 'Watch the next person take their turn.' 600 "<<set $scene.jumpQueue=false>>">>]
</div>/*#
#desc: barista gangbang final position
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.jumpQueue && $npc_technician.relationship.her_role == 'sub'>>
<<set $scene.activePerson = 'mc'>>
<<else>>
<<set $scene.activePerson = $scene.participants.shift()>>
<</if>>
<</if>>
<<set $player.location = 'Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png">>
<div id="invframe" class="scrolltext">
<<if $scene.jumpQueue && $scene.activePerson != 'mc'>>
You try to move into position only to be gently bumped aside. "@@.npc_technician;Easy there, Princess! there is a hierarchy to these things!@@"<br>
<br>
Your complaints are mitigated by <<=ps(setup.getNpcName("npc_barista","nickname"))>> lips <<if $player.body_ref.penis>>wrapping around your <<getWordMyPenis>> and slurping with considerable skill<<else>>pressing between your legs with considerable skill<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>... even in spite of your chastity belt<</if>><</if>>.<br>
<br>
<</if>>
<<switch $scene.activePerson>>
<<case 'technician'>>
<<=setup.getNpcName('npc_technician', 'first')>> moves between <<=ps(setup.getNpcName("npc_barista","nickname"))>> legs. Testing the barista's flexibility her ankles are pushed all the way past her ears as <<=setup.getNpcName('npc_technician', 'first')>> lines up with the puckered rear hole as promised.<br>
<br>
Slick with saliva <<=setup.getNpcName('npc_technician', 'first')>> slides in easily,
<<if setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName("npc_barista","nickname")>> moans, eyes rolling back in pleasure as she sucks <<=ps(setup.getNpcName('npc_rpg_dude', 'first'))>> even harder.
<<else>>
the guttural moan that <<=setup.getNpcName("npc_barista","nickname")>> unleashes rattling around your <<getWordMyPenis>> currently stuffed down her throat as demonstration of how much she is enjoying this.
<</if>>
<br><br>
"Helping out" <<=setup.getNpcName('npc_rpg_warlock', 'first')>> reaches down to stuff three fingers into <<=ps(setup.getNpcName("npc_barista","nickname"))>> snatch, working her own cunt with her other hand and a thumb on each clit.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> is definitely in heaven, but she also appears to be yet devoting as much attention to getting others off as to her own pleasure.<br>
<br>
<<printThought "Hmm, may need to step things up...">><br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_5_technician' 'More!' 600>>]<br>
<<case 'dude'>>
Taking a deep breath <<=setup.getNpcName('npc_rpg_dude', 'first')>> gives <<his>> girlfriend a kiss and then steps up to the plate... or between the legs, as it were, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> grinning the whole time as she holds on to <<his npc_rpg_dude>> leash while humping the hand fingering her cunt.<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_5_dude' 'More!' 600>>]<br>
<<case 'mc'>>
You take a deep breath and take your turn between <<=ps(setup.getNpcName("npc_barista","nickname"))>> legs. Whatever you choose is going to be a variation or a repeat on what your other four friend's have already given her but from the sound of her moans and how wet she is there's no doubt she's eager for it.<br>
<br>
<<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>
<<if !$player.virgin.penis>>
[@@.link_locked;Your first time fucking someone being in the midst of an orgy is just too much performance pressure.@@]<br>
<<elseif !$player.sec_style.sex.sex_woman>>
[@@.link_locked;Your first time fucking a woman being in the midst of an orgy is just too much pressure.@@]<br>
<<else>>
[<<moveTo 'event_rpg_barista_gangbang_5_mc' 'Fuck her cunt like <<=setup.getNpcName("npc_maid", "first")>>.' 600 "<<set $scene.action='vag'>>">>]<br>
[<<moveTo 'event_rpg_barista_gangbang_5_mc' 'Fuck her ass like <<=setup.getNpcName("npc_technician", "first")>>.' 600 "<<set $scene.action='anal'>>">>]<br>
[<<moveTo 'event_rpg_barista_gangbang_5_mc' 'Switch off holes like <<=setup.getNpcName("npc_rpg_dude", "first")>>.' 600 "<<set $scene.action='both'>>">>]<br>
<</if>>
<<elseif $player.body_ref.penis>>
[@@.link_locked;Being locked in chastity limits your options.@@]<br>
<</if>>
[<<moveTo 'event_rpg_barista_gangbang_5_mc' 'Eat her out like <<=setup.getNpcName("npc_rpg_warlock", "first")>>.' 600 "<<set $scene.action='oral'>>">>]
<<default>>
ERROR: unexpected scene.active person <<=$scene.activePerson>>
<</switch>>
</div>/*#
#desc: barista gangbang final position
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png">>
<div id="invframe" class="scrolltext">
For whatever reason <<=setup.getNpcName('npc_technician', 'first')>> is a bit gentler in plowing <<=ps(setup.getNpcName("npc_barista","nickname"))>> ass than <<=setup.getNpcName("npc_maid","first")>> had been in the slut's cunt.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'sub'>>
You look over at your slave as she fucks your friend. Lust swells in your heart as you pull <<=setup.getNpcName('npc_technician', 'first')>> in for a kiss
<<case 'neutral'>>
<<=setup.getNpcName('npc_technician', 'first')>> grins at you and you both lean in for a kiss,
<<case 'dom'>>
Your <<=setup.getNpcName('npc_technician','title')>> smiles at you, pulling you in for a kiss,
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<if !setup.checkItemTypeWorn("cage")>>
"closing the loop" on the threeway as <<=setup.getNpcName("npc_barista","nickname")>> eagerly sucks your <<getWordMyPenis>> as you double team a horny slut with your girlfriend.
<<else>>
and turning things into a 4-person sex-chain as <<=setup.getNpcName("npc_barista","nickname")>> <<if $player.body_ref.penis>>forgoes your <<getWordMyPenis>> in favour of eating<<else>>eats<</if>> out <<=setup.getNpcName('npc_rpg_warlock', 'first')>>.
<</if>>
<br><br>
Just as with <<=setup.getNpcName("npc_maid","first")>> before, <<=setup.getNpcName("npc_barista","nickname")>> proves insatiable; the combination of fingering and ass-fucking gives her at least two orgasms that you count but she has not slowed in the slightest by the time <<=setup.getNpcName('npc_technician', 'first')>> moans and cums deep in the barista's ass.<br>
<br>
"@@.npc_barista;More, more!@@" She cries out before <<=setup.getNpcName("npc_maid","first")>> re-appears to jam her massive <<getWordPenis false>> down the needy slut's gullet. A blissful expression pairs with a bulging throat as her eyes flit around as if asking who is going to fuck her next.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_rpg_barista_gangbang_5' 'Take your turn.' 600 "<<set $scene.jumpQueue=true>>">>]<br>
<<else>>
[@@.link_locked;You are locked in chastity and thus your participation is restricted.@@]<br>
<</if>>
[<<moveTo 'event_rpg_barista_gangbang_5' 'Let <<=setup.getNpcName("npc_rpg_dude", "first")>> go.' 600 "<<set $scene.jumpQueue=false>>">>]
</div>/*#
#desc: you rpg_dude fucks barista during gangbang
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png">>
<div id="invframe" class="scrolltext">
Not as large as either <<=setup.getNpcName('npc_technician', 'first')>> or <<=setup.getNpcName("npc_maid","first")>>, <<=setup.getNpcName("npc_rpg_dude", "first")>> takes <<his npc_rpg_dude>> own tactic, sliding easily into <<=ps(setup.getNpcName("npc_barista","nickname"))>> sopping cunt before immediately pulling out and plunging into her still-gaping ass.<br>
<br>
"@@.npc_rpg_dude;Three hole tour... achievement unlocked!@@" <<He npc_rpg_dude>> announces as <<he npc_rpg_dude>> grinds <<his npc_rpg_dude>> hips against <<=ps(setup.getNpcName("npc_barista","nickname"))>> rear.<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> rolls her eyes at the comment but <<=ps(setup.getNpcName("npc_barista","nickname"))>> seems to appreciate it, somehow mumbling "@@.npc_barista;Yes, more!@@" around the thick lady-rod filling her mouth.<br>
<br>
Even with <<him npc_rpg_dude>> switching off you can tell <<=setup.getNpcName("npc_rpg_dude", "first")>> is having to focus not to cum, <<his npc_rpg_dude>> glacial pace finally bothering <<=setup.getNpcName("npc_rpg_warlock","first")>> enough for her to yank on <<his npc_rpg_dude>> leash. "@@.npc_rpg_warlock;You aren't getting points for duration! Fuck her brains out, fill her with cum, then step aside for the next person! It's like you've never been part of a gang-bang before!@@"<br>
<br>
"@@.npc_rpg_dude;Yes, Mistress@@" <<he npc_rpg_dude>> gasps as <<his npc_rpg_dude>> girlfriend slides to her knees to "help." With remarkable coordination <<=setup.getNpcName("npc_rpg_warlock","first")>> handles aiming as <<=setup.getNpcName("npc_rpg_dude", "first")>> speeds up, <<his npc_rpg_dude>> <<getWordPenis "npc_rpg_dude">> pistoning in and out of <<=ps(setup.getNpcName("npc_barista","nickname"))>> holes in sequence and it is not much longer before <<he npc_rpg_dude>> gasps and cums.<br>
<br>
Waiting until <<he npc_rpg_dude>> has finished pumping <<=setup.getNpcName("npc_rpg_warlock","first")>> pushes her <<boy npc_rpg_dude>>friend out of the way, affixing her lips over <<=ps(setup.getNpcName("npc_barista","nickname"))>> cunt and eagerly lapping at the mix of cum and feminine juices while casually shoving her fist up <<=ps(setup.getNpcName("npc_barista","nickname"))>> ass.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> has another couple of bucking orgasms before <<=setup.getNpcName("npc_rpg_warlock","first")>> comes up for air, rising to her feet and grabbing her <<boy npc_rpg_dude>>friend by collar and hair both to share a juicy kiss.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> is still taking her time probing the depths of <<=ps(setup.getNpcName("npc_barista","nickname"))>> throat as all eyes turn towards you.<br>
<br>
<<printThought "Looks like it's my turn now... it's crazy because <<=setup.getNpcName('npc_barista','nickname')>> isn't even slowing down!">><br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_5' 'Take your turn.' 600 "<<set $scene.jumpQueue=false>>">>]
</div>/*#
#desc: you fuck barista during gangbang
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == 'oral'>>
<<applyExperience 'cum' 12 'terrible' $SEEN_FRIEND>>
<<else>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location = 'Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'vag'>>
Even after being fucked twice <<=ps(setup.getNpcName("npc_barista","nickname"))>> is tight and wet and amazingly responsive, practically pulling you in and then rippling around your shaft with such amazing skill you think you could probably cum without even moving.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
It's weird, despite your size, especially compared to <<=ps(setup.getNpcName("npc_technician","first"))>> skirt-wrecker, you can tell that <<=setup.getNpcName("npc_barista","nickname")>> is loving this, her cunt squeezing you with every thrust and orgasming simultaneous with your own shuddering climax.
<<case 2 3>>
You may be on the average side compared to the monsters that <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_maid","first")>> keep tucked away under their panties but you wouldn't know it from the way <<=setup.getNpcName("npc_barista","nickname")>> reacts. Bucking her hips and clamping down with her cunt she climaxes at least twice as you thrust away, obviously having the time of her life as she squirts a third orgasm simultaneous with your own ejaculating climax.
<<case 4 5>>
<<=setup.getNpcName("npc_barista","nickname")>> moans with delight — despite <<=ps(setup.getNpcName("npc_technician","first"))>> comment it seems that <<=setup.getNpcName("npc_maid","first")>> going "first" has done nothing to reduce how much <<=setup.getNpcName("npc_barista","nickname")>> loves the feel of a <<getWordMyPenis>> pumping inside of her. Squeezing down around you with astounding skill she clenches occasionally in orgasm, but remains ever hungry for more. Though you last as long as you can there is no denying how good she feels and you cry out in ecstasy as your <<getWordCum>> joins the other two loads inside of her.
<<case 6>>
Your <<getWordMyPenis>> is large enough to rival even <<=ps(setup.getNpcName("npc_maid","first"))>> hole-destroyer but <<=setup.getNpcName("npc_barista","nickname")>> takes it with enthusiastic ease, a hot, wet, utterly delightful hole that doesn't just stretch to accommodate you, but squeezes you back, massaging your length with each thrust. You feel her clench in climax a handful of times before your own orgasm wells up; <<if $player.body_ref.balls>>your balls tighten as<<else>>and<</if>> you press as deep as you can, shuddering as <<=setup.getNpcName("npc_barista","nickname")>> reflexively does all the work, draining you without ever lightening up on the seemingly never-ending deepthroat blowjob she is administering to the monster at her other end.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
You stagger away and catch your breath.
<<case 'anal'>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
After the hard poundings she has already received <<=ps(setup.getNpcName("npc_barista","nickname"))>> ass remains astoundingly tight, even for your comparatively smaller member. Her cunt drips down as lube in demonstration of her continued excitement and it is not long before
<<case 2 3>>
You follow the same road blazed by two of your friends before, moaning and biting your lip at the way <<=ps(setup.getNpcName("npc_barista","nickname"))>> squeezes around you. You quickly understand why <<=setup.getNpcName("npc_rpg_dude","first")>> slowed down but you remember the words of <<his npc_rpg_dude>> girlfriend and maintain your pace; it is not much longer that
<<case 4 5>>
You don't know if <<=setup.getNpcName("npc_barista","nickname")>> tightened up for <<=setup.getNpcName("npc_rpg_dude","first")>> but either way she is quite the squeeze, a tight, hot, utterly delightful rear love channel that is not long in squeezing forth
<<case 6>>
As easily as she accepted <<=ps(setup.getNpcName("npc_maid","first"))>> similarly massive <<getWordPenis false>> in her front hole <<=ps(setup.getNpcName("npc_barista","nickname"))>> eagerly, and easily, accommodates every centimetre of your massive member. Even with as much lubricant as is flowing, the going is slow and tight, the way her hole flutters around you so delightful that you have barely taken a handful of strokes before
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
you climax, your seed mixing with that of your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName('npc_technician','title')>>.
<<case 'neutral'>>
girlfriend.
<<case "sub">>
slave.
<</switch>>
<br><br>
You take a step back and catch your breath.
<<case 'both'>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Given all that her holes have been through already you would have expected to not do a whole lot... and yet <<=setup.getNpcName("npc_barista","nickname")>> is tight even for you, squeezing you with both orifices as you switch back and forth. Your breaths come faster with each stroke and it is not long before you make a final plunge into her ass and
<<case 2 3>>
Despite effectively repeating the furrow <<=setup.getNpcName("npc_rpg_dude","first")>> has already plowed <<=ps(setup.getNpcName("npc_barista","nickname"))>> remains utterly delighted, moaning around the <<getWordPenis false>> stuffing her throat and squeezing tight to give you a literally orgasmic time as it isn't long before a plunge into her ass sees you
<<case 4 5>>
<<=ps(setup.getNpcName("npc_barista","nickname"))>> moans around the <<getWordPenis false>> stuffing her throat as you give her the "upgraded" version of the alternating hole plowing that <<=setup.getNpcName("npc_rpg_dude","first")>> pulled off. You may not be able to match the pace that <<his npc_rpg_dude>> coordination with <<=setup.getNpcName("npc_rpg_warlock","first")>> enabled but <<=ps(setup.getNpcName("npc_barista","nickname"))>> spasms with orgasm every few thrusts and it isn't long before you root in her ass and
<<case 6>>
You enact the bullet-time version of the two hole alternation that <<=setup.getNpcName("npc_rpg_warlock","first")>> "pioneered." Each impalement of your massive <<getWordMyPenis>> is a slow, grinding journey — aided by her copious wetness but made an overwhelmingly pleasurable challenge by how tight she manages to be even after already having been fucked so many times. Like a slow, two-stroke engine you go back and forth, building closer and closer until, with a final lunge, you root in her ass and
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
climax, your seed mixing with that of your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName('npc_technician','title')>>.
<<case 'neutral'>>
girlfriend.
<<case "sub">>
slave.
<</switch>>
<br><br>
<<case 'oral'>>
You drop to your knees and bring your lips to <<=ps(setup.getNpcName("npc_barista","nickname"))>>. The flavour is intense, an erotic blend of feminine<<if !$npc_rpg_dude.fem>> and masculine<</if>> <<getWordCum>>, plus a touch of saliva and, of course, the slutty barista's own tanginess. Her hips tremble as your tongue spears deep. You pull out every trick you've ever heard of — nibbling her engorged clit, tracing the alphabet between her with your fingers working three and four at a time in both of her holes but, though her hips buck with orgasm, she never slows.<br>
<br>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
It seems that if you are going to bring her to "satiation" some more intense tactics are going to need to be deployed.<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_6' 'Time to move to the bed and get serious.' 600>>]
</div>/*#
#desc: barista gangbang bedroom start
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage")>>
<<changeHorny 100>>
<</if>>
<</if>>
<<set $player.location = 'Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png">>
<div id="invframe" class="scrolltext">
As you step back you lock gazes with <<=setup.getNpcName("npc_technician","first")>> and come to a simultaneous conclusion — this isn't nearly enough "stimulation" for your insatiably slutty friend.<br>
<br>
"@@.npc_technician;To the bedroom!@@" <<=setup.getNpcName("npc_technician","first")>> calls out.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> slides her <<getWordPenis false>> free of the extended deepthroat she has been experiencing to leave <<=setup.getNpcName("npc_barista","nickname")>> "empty" for the first time since the orgy began.<br>
<br>
"@@.npc_barista;Noooo! I need more cock!@@" <<=setup.getNpcName("npc_barista","nickname")>> moans only to be cut off by <<=setup.getNpcName("npc_maid","first")>> shoving a large ring gag into her mouth. Of course <<=setup.getNpcName("npc_barista","nickname")>> just smiles in delight at this development, her tongue darting forth to beckon invitingly as her hand snakes down to finger her sopping cunt.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> scoops the slut up in her arms with ease and all of you head for the bedroom, <<=setup.getNpcName("npc_technician","first")>> in the lead followed by the hard and well-hung maid, <<=setup.getNpcName("npc_rpg_warlock","first")>> and her leashed <<if $npc_rpg_dude.fem>>girlfriend<<else>>boy-toy<</if>> and, finally, yourself in the rear.<br>
<br>
As you file into the room <<=setup.getNpcName("npc_technician","first")>> hands each penis-having participant a pill. "@@.npc_technician;I packed these just in case, they should outlast even her...@@"<br>
<br>
Popping pills the other three stiffen<<if $scene.action != "oral">><<if $scene.jumpQueue && $npc_technician.relationship.her_role != 'sub'>>your own member starting to rise, as well<<else>>, the most recent to cum you're still recovering but you can already feel things start to stir..<</if>><</if>>.<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_7' 'Change of venue...' 120>>]
</div>/*#
#desc: barista gangbang bedroom start
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Private Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom_swing.png">>
<div id="invframe" class="scrolltext">
You step into the bedroom and have a moment of clarity, instantly understanding what is needed to push <<=setup.getNpcName("npc_barista","nickname")>> past the limits of even her debauched lusts.<br>
<br>
It all starts with <<=setup.getNpcName("npc_maid","first")>>, who you direct to lay on the bed with her bimbo cargo mounted ass-first on <<=ps(setup.getNpcName("npc_maid","first"))>> still rock-hard <<getWordPenis false>>.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> moans through her gag, clearly loving this deep stretch but you silence her a moment later as <<=setup.getNpcName("npc_rpg_warlock","first")>> mounts the sex swing, you and <<=setup.getNpcName("npc_technician","first")>> putting engineering skills to work as you adjust things so that <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> cunt is pressed against <<=ps(setup.getNpcName("npc_barista","first"))>> spread lips.<br>
<br>
Holding a pigtail in each hand <<=setup.getNpcName("npc_rpg_warlock","first")>> bites her lip — just as you anticipated the barista has wasted no time putting her tongue to work. Not counting yourself there are two party members remaining and you start with <<=setup.getNpcName("npc_rpg_dude","first")>>, motioning for <<him npc_rpg_dude>> to enter low before you have <<=setup.getNpcName("npc_technician","first")>> attempt the more acrobatic feat of stepping over and plunging down.<br>
<br>
Even muffled by <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> thighs <<=setup.getNpcName("npc_barista","nickname")>> cry of pleasure fills the room as the third cock slides into her "@@.pc;thrust!@@" you command, four bodies slowly getting into motion, double-penetrating her cunt and filling her ass as <<=setup.getNpcName("npc_barista","nickname")>> gorges on pussy.<br>
<br>
Not wanting to take any half measures you finish things off by retrieving a wand vibrator from <<=ps(setup.getNpcName("npc_technician","first"))>> nightstand that she immediately wedges against <<=ps(setup.getNpcName("npc_barista","nickname"))>> clit and cranks to full. The power of the vibrations causes <<=setup.getNpcName("npc_rpg_dude","first")>> and <<=setup.getNpcName("npc_maid","first")>> to groan but <<=setup.getNpcName("npc_rpg_warlock","first")>> eggs them on with a breathless shout of "@@.npc_rpg_warlock;Keep fucking!@@"<br>
<br>
There is only one place left to be and you latch your lips around <<=ps(setup.getNpcName("npc_barista","nickname"))>> left nipple with gusto, teasing her right with your hand until <<=setup.getNpcName("npc_technician","first")>> realises what is happening and somehow manages to lean forward and take over with her mouth.<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_8' 'Voltron cluster-fuck: advance!' 600>>]
</div>/*#
#desc: barista gangbang bedroom fucking
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Private Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom_swing.png">>
<div id="invframe" class="scrolltext">
Like some sort of flesh-crafted monstrosity you and your four friends work in unison to push <<=setup.getNpcName("npc_barista","nickname")>> to never imagined levels of pleasure. Hot and sweaty and breathless you hump and suck and vibe and fuck, orgasms going off multiple times a minute as the drugs keep you all focused on the task at hand.<br>
<br>
<<if $player.body_ref.penis>>
As if on bimbo reflex <<=setup.getNpcName("npc_barista","nickname")>> flails out and grabs your <<getWordMyPenis>>,
<<if !setup.checkItemTypeWorn("cage")>>
jerking it reflexively even
<<else>>
pawing at it in desperation
<</if>>
as she is overwhelmed from every direction.<br>
<br>
You are treated to a burst of milky goodness, a jolt of energy that spurs you on as you feel the hand around your <<getWordMyPenis>> get weaker with each orgasm that racks <<=ps(setup.getNpcName("npc_barista","nickname"))>> body.<br>
<br>
<</if>>
"@@.npc_barista;Yeeesssss!@@" She screams as an orgasm like no other rolls through all of you. <<=ps(setup.getNpcName("npc_barista","nickname"))>> body tenses, rising almost supernaturally up. From the chorus of gasps you estimate she must be clenching literally every muscle she has. The moment draws out as you suck and lick with everything you have, hoping that this is finally it...<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_9' 'Come on!' 300>>]
</div>/*#
#desc: barista gangbang bedroom climax
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Private Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom_swing.png">>
<div id="invframe" class="scrolltext">
The orgasm that started with <<=setup.getNpcName("npc_barista","nickname")>> spreads through the rest of your friends, a mix of cries and moans as there is a 5-way simultaneous climax. For an instant the only sound in the room is the rumble of the vibrator and then everything sinks, <<=setup.getNpcName("npc_rpg_dude","first")>> and <<=setup.getNpcName("npc_technician","first")>> sliding free as <<=setup.getNpcName("npc_rpg_warlock","first")>> goes limp, her grip on <<=ps(setup.getNpcName("npc_barista","nickname"))>> head loosening and the bimbo falls, sliding free of <<=ps(setup.getNpcName("npc_maid","first"))>> finally softened cock to lay on the bed and look up at you.<br>
<br>
"@@.npc_barista;Thank you...@@" she whispers, her gaze strangely clear as she smiles up at you, looking serenely content.<br>
<br>
You lean in closer to hear her speak as your other friends try to recover enough to crawl across the bed.<br>
<br>
"@@.npc_barista;I don't have long but... oh, I wish I could thank you all for what you've given me. I've been trapped for so long, never able to think clearly for more than a few moments without being overwhelmed with lust...@@" She reaches her hand out with the vaguest of coordination and you all take it, unified support met with a weak squeeze.<br>
<br>
"@@.npc_barista;I can feel things coming back... in case this doesn't work know that you did the right thing, but what's going on... well, if you were smart I'd say flee but they'd catch you... they always catch you.@@"<br>
<br>
Looking directly into your eyes <<=setup.getNpcName("npc_barista","nickname")>> has a firmness of conviction unlike anything you've ever seen from her before. "@@.npc_barista;If this all works... don't let me go all the way back...@@"<br>
<br>
You're confused as to what she meant but before you can ask her eyes roll back and she blinks, suddenly perking up with a familiar smile.<br>
<br>
"@@.npc_barista;Wow, that was intense! Can we do it again?@@"<br>
<br>
As she looks from person to person there is a moment of silence and then you all burst into exhausted laughter.<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_10' 'Clean up.' 7200>>]
</div>/*#
#desc: barista gangbang cleanup
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.her_role == 'sub'>>
<<removeItemSet 'dom_outfit' true>>
<<else>>
<<removeItemSet 'enslaved_star_princess'>>
<<deleteItemSet 'enslaved_star_princess'>>
<</if>>
<<useClothSetPop 'tmp'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $npc_barista.stage = 4>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","nickname")>> somehow full of energy, she gleefully helps the rest of you back to your feet and assemble your clothes — only making a couple mistakes like trying to pass off a maid skirt to <<=setup.getNpcName("npc_technician","first")>> or <<if $npc_rpg_dude.fem>>a maid outfit to<<else>>a bra to<</if>> <<=setup.getNpcName("npc_rpg_dude","first")>>.<br>
<br>
Eventually all back in your own outfits,
<<if $player.body_ref.penis>>
<<if $npc_technician.relationship.her_caged && $npc_technician.relationship.keyholder>>
and you and <<=setup.getNpcName("npc_technician","first")>> both locked back in chastity.
<<elseif $npc_technician.relationship.her_caged>>
and <<=setup.getNpcName("npc_technician","first")>> locked back in chastity,
<<elseif $npc_technician.relationship.keyholder>>
and you once again locked in chastity,
<</if>>
<</if>>
you settle down for a game, playing through some meaningless 1-shot cooldown adventure that you don't even remember... save that you enjoyed a nice, relaxing evening with your friends.<br>
<br>
[<<moveTo 'event_rpg_barista_gangbang_11' 'Head home.' 300>>]
</div>/*#
#desc: barista gangbang aftermath
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<include "addRPGSessionTask">>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'theme_technician_barista_gangbang')>>
<<set $npc_technician.themes.rpg[_themeId].repeatable = false>>
<<if $npc_technician.relationship.her_caged && !$npc_technician.relationship.sissyomatic>>
<<include "cancelTechnicianChastity">>
<<set $scene.abortChastity = _removeEvent>>
<<if !$scene.abortChastity>>
<<set $npc_technician.relationship.her_caged = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Phonecall'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.abortChastity>>
Just before you leave <<=setup.getNpcName('npc_technician', 'first')>> pulls you aside for a moment. "@@.npc_technician;Hey, so... this was pretty intense and, from prior experience... I think I'm going to need to take a hiatus on chastity while my bits recover. We can start over some other time, maybe after this whole <<=setup.getNpcName('npc_barista', 'nickname')>> situation is sorted, okay?@@"<br>
<br>
You nod, confirming that you're tired as well and giving her a parting hug before you leave for home.<br>
<br>
<</if>>
Once you are out of the building you get a call, answering it to hear <<=setup.getNpcName("npc_psychiatrist","formal")>> on the other end.<br>
<br>
"@@.npc_psychiatrist;I know it's late but I just wanted to let you know that I finished looking through your most recent data and it looks very promising. We are ready to move to a new stage of therapy.@@"<br>
<br>
She hangs up before you can respond and you feel like you're in a spy movie.<br>
<br>
<<printThought 'Looks like we really are on the way to curing <<=setup.getNpcName("npc_barista","nickname")>>, but I wonder what she meant by not going all the way back?'>><br>
<br>
[<<moveTo 'room_foyer' 'Home.' 600 "<<set $currentcall = false>>">>]
</div>/*#
#desc: show up for game session after barista in chastity
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Harem of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
You show up for another game where the mood is instantly sombre. <<=ps(setup.getNpcName("npc_barista","nickname"))>> chair is empty and <<=setup.getNpcName("npc_technician","first")>> explains that she is taking a "hiatus" due to stresses at work.<br>
<br>
You bite your lip as you consider what state <<=setup.getNpcName("npc_barista","nickname")>> must be in after being locked in chastity this long. A silent glance around the room confirms that everyone else must be harboring similar concerns.<br>
<br>
"@@.npc_technician;Since <<=setup.getNpcName("npc_barista","nickname")>> is out, but hopefully be back soon, I thought we could do a one-shot... let's get to it.@@"<br>
<br>
[<<moveTo 'event_rpg_no_barista_2' "Play a game." 3600>>]
</div>/*#
#desc: no barista 1-shot
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
Things are a bit subdued without <<=ps(setup.getNpcName("npc_barista","nickname"))>> bubbly energy but you still manage to have a relatively enjoyable time playing. The adventure ends up being relatively forgettable but it still serves up a distraction from the stresses of the real world for a few hours.<br>
<br>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' 7200>>]
</div>/*#
#desc: try to get barista in trouble working in Coffee Shop 52
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeMilker = setup.isItemEquipped("penis_milker")>>
<<if $scene.removeMilker>>
<<removeItem "penis_milker" true>>
<</if>>
<<if $scene.drug>>
<<set $scene.plus = false>>
<<if setup.checkItemInInventory('drug_dick')>>
<<deleteItem 'drug_dick'>>
<<set $player.flags.drugs.dick += 1>>
<<setTmpEffect 'drug_dick'>>
<<elseif setup.checkItemInInventory('drug_dick_plus')>>
<<set $scene.plus = true>>
<<deleteItem 'drug_dick_plus'>>
<<set $player.flags.drugs.dick_plus += 1>>
<<setTmpEffect 'drug_dick'>>
<</if>>
<<set $scene.grow = $player.body.penissize[0] < 6>>
<<if $scene.grow>>
<<set $player.body.penissize[1] += 6-$player.body.penissize[0]>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<img src="./images/scenes/npc_barista_upskirt_plug.png" height="452" width="804"><br>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","first")>> is bent over adjusting something under the counter, short skirt exposing the dual toys that are perpetually stuffed in her holes. <<if $scene.removeMilker>>You take a deep breath and remove your milking cylinder.<</if>>
<<if $scene.drug>>
Already hard you pop a dose of <<=setup.getItemName("drug_dick")>><<if $scene.plus>>+<</if>>, gasping as your
<<if $scene.grow>>
<<getWordMyPenis>> swells to a massive size, temporarily transformed into
<<else>>
already massive <<getWordMyPenis>> stiffens even further, looking almost inhuman,
<</if>>
a veined rod to inspire awe and fear from the lustiest size queen.
<<else>>
Already hard you strike a pose, figuring that <<=ps(setup.getNpcName("npc_barista","nickname"))>> cock-lust should do the rest.
<</if>>
<br><br>
<<=setup.getNpcName("npc_barista","nickname")>> finishes what she was working on and pops back to her feet. She seems to catch a glimpse of you out of the corner of her eye and then spins in place, her attention drawn directly to your exposed <<getWordMyPenis>>.<br>
<br>
<<if !$player.virgin.first || !$player.virgin.penis>>
The opportunity to actually lose your virginity hits you with a sudden case of nerves, you hesitate, that opening just enough for <<=setup.getNpcName("npc_barista","nickname")>> to regain her focus.<br>
<br>
"@@.npc_barista;Oh, no. Your milking attachment seems to have slipped free! Here, let me take care of that.@@"<br>
<br>
Locating the discarded cylinder she drops to her knees and starts working it back over your <<getWordMyPenis>>.<br>
<br>
[<<moveTo 'event_milking_misbehave_fail' "Damn, that didn't work how I was hoping, I need to lose my virginity in a less high-stakes situation." 600>>]
<<elseif $scene.drug || setup.hasTmpEffect('drug_dick')>>
<<=ps(setup.getNpcName("npc_barista","nickname"))>> jaw drops as she stares with unmitigated lust at your drug-enhanced package. "@@.npc_barista;I need it! I need it in me!@@" Hopping up onto the counter she pulls her panties to one side, the plug in her cunt shooting out to bounce across the floor. "@@.npc_barista;Fuck me now!@@"<br>
<br>
[<<moveTo 'event_milking_misbehave_2' 'Do as the lady commands.' 600 "<<set $scene.fuck=true>>">>]<br>
[<<moveTo 'event_milking_misbehave_2' 'Tease her.' 600 "<<set $scene.fuck=false>>">>]
<<else>>
<<=setup.getNpcName("npc_barista","nickname")>> licks her lips and shudders but seems to somehow manage to keep her cool. "@@.npc_barista;Oh, no. Your milking attachment seems to have slipped free! Here, let me take care of that.@@"<br>
<br>
Locating the discarded cylinder she drops to her knees and starts working it back over your <<getWordMyPenis>>.<br>
<br>
[<<moveTo 'event_milking_misbehave_fail' "Damn, that didn't work how I was hoping." 600>>]
<</if>>
</div>/*#
#desc: kick off orgy in Coffee Shop 52
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'aphrodisiac_blend'>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<</if>>
<div id="invframe" class="scrolltext">
You start putting drops of your custom aphrodisiac blend into orders, feeling the sexual tension in the cafe build, and build lusty glances turning to predatory stares as <<=setup.getNpcName("npc_barista","nickname")>> grins and serves up drinks with bimbo obliviousness.<br>
<br>
You dump the last of the drugs into the espresso of a particularly strapping employee, the <<man>> knocking it back in one shot before freezing for a moment and then locking eyes with <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
"@@.generic_male1;Suck. Now.@@" <<He>> growls, already reaching for <<his>> zipper.<br>
<br>
"@@.npc_barista;Of course, <<sir>>.@@" She replies with a smile as she steps out from behind the counter. "@@.npc_barista;If you would follow me to the back room I would be happy to attend to you.@@"<br>
<br>
She turns to tell you to hold down the fort just as the drugs finish overwhelming the <<man>>.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> gasps as she finds herself suddenly bent over the counter, one of her plugs tossed across the room just before the <<man>> slams <<his>> drug-swelled cock into her.<br>
<br>
<<=ps(setup.getNpcName("npc_barista","nickname"))>> lusty moan is the final straw for the rest of the cafe, an irresistible siren's song that has the other drugged employees descending upon her like a pack of horny wolves.<br>
<br>
You are all but forgotten as <<=setup.getNpcName("npc_barista","nickname")>> becomes the centre of a passionate orgy, the aphrodisiac working overdrive, its effects coming out in sweat and pheromones to overpower anyone who enters the cafe... and begin to eat away at your own focus...<br>
<br>
[<<moveTo 'event_milking_misbehave_2_alt' 'Give in to the drugs...' 600 "<<set $scene.fuck=true>>">>]<br>
<<if setup.getTotalValue("bimbofication") >= 20>>
<<if setup.getWillpower() > 3>>
[<<moveTo 'event_milking_misbehave_2_alt' 'Resist the need to fuck.' 600 "<<set $scene.fuck=false>>">>] <<hint $options "Resisting the drugs and your own lusty urges will take a great act of will.">>
<<else>>
[@@.link_locked;Fighting against drugs AND your own slutty nature is too much.@@]
<</if>>
<<elseif setup.getTotalValue("bimbofication") > 10>>
<<if setup.getWillpower() > 1>>
[<<moveTo 'event_milking_misbehave_2_alt' 'Resist the call of sex.' 600 "<<set $scene.fuck=false>>">>] <<hint $options "Resisting the drugs and your own lusts will take a significant act of will.">>
<<else>>
[@@.link_locked;You lack the mental energy to resist the drugs in the air...@@]
<</if>>
<<else>>
<<if setup.getWillpower() > 0>>
[<<moveTo 'event_milking_misbehave_2_alt' 'Resist.' 600 "<<set $scene.fuck=false>>">>] <<hint $options "Resisting the drugs will take an act of will.">>
<<else>>
[@@.link_locked;You lack the mental energy to resist the drugs in the air...@@]
<</if>>
<</if>>
</div>/*#
#desc: experience orgy in Coffee Shop 52
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fuck>>
<<playerOrgasm>>
<<applyExperience 'bimbofication' 20 'terrible' $EXPOSED>>
<</if>>
<<set $npc_barista.flags.chastity = "orgy">>
<<set $npc_barista.stage = 5>>
<<set $scene.baristaMisbehave = true>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.fuck>>
You surrender to the drugs and the moment, diving into the sea of sinful excess, shedding your milking devices and joining <<=setup.getNpcName("npc_barista","nickname")>> in being ravaged in every available hole.
<<else>>
Unable to reach the door past the growing orgy you cower in a corner, doing everything you can to fight the urge to join in.
<</if>>
<br><br>
The power of the drugs in the air seems to only get stronger with each screaming orgasm that echoes through the room. <<=setup.getNpcName("npc_barista","nickname")>> has passionately embraced the moment — fucked, filled and almost disappearing amidst the writhing mass of orgasmic flesh.<br>
<br>
Guards start to arrive, but only join in on the debauchery. Finally a team in full gas-masks comes in, pumping counter-agent through the room that renders you and the rest of the afflicted limp and compliant. Pinned to the floor by a guard, you have no choice but to comply as order finally returns to the cafe.<br>
<br>
You and the rest of the victims are forcibly separated, moans and groans and regret lingering in the cafe as the air is pumped clean and managers are called. You catch a glimpse of <<=setup.getNpcName("npc_barista","nickname")>> being scolded by what you assume must be her owner, the <<man>> sternly admonishing her for "stealing" from <<=setup.getNpcName("npc_work_doctor","formal")>> as <<he>> locks a chastity belt onto the desperately weeping bimbo.<br>
<br>
You do not get a chance to either comfort your friend, nor bask in your triumph as <<=setup.getNpcName("npc_manager","formal")>> appears to lead you back to the office...<br>
<br>
[<<moveTo 'event_milking_misbehave_5' 'Follow obediently.' 600 "<<set $scene.obey=true>><<if setup.getItemFromType('cage') == 'penis_milker'>><<removeItem 'penis_milker' true>><<deleteItem 'penis_milker'>><<include 'replaceCage_extendSissyomatic'>><</if>><<if setup.checkItemWorn('breast_milker')>><<removeItem 'breast_milker' true>><<deleteItem 'breast_milker'>><</if>><<if !$scene.latexMaid>><<useClothSetPop 'tmp'>><</if>>">>]<br>
[<<moveTo 'event_milking_misbehave_5' 'Object, you were the innocent victim here!' 600 "<<set $scene.obey=false>><<if setup.getItemFromType('cage') == 'penis_milker'>><<removeItem 'penis_milker' true>><<deleteItem 'penis_milker'>><<include 'replaceCage_extendSissyomatic'>><</if>><<if setup.checkItemWorn('breast_milker')>><<removeItem 'breast_milker' true>><<deleteItem 'breast_milker'>><</if>><<if !$scene.latexMaid>><<useClothSetPop 'tmp'>><</if>>">>]
</div>/*#
#desc: barista re-installs milking device
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeMilker>>
<<wearItem "penis_milker" true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeMilker>>
<<=setup.getNpcName("npc_barista","nickname")>> industriously re-attaches the milking device, and you would swear the suction is set to an even higher level by the time she pops back to her feet.<br>
<br>
"@@.npc_barista;There we go, all fixed! That could have been, like, really unfortunate if I hadn't handled it in time!@@"
<<else>>
<</if>>
<br><br>
You nod as a customer walks in and she turns to greet them.<br>
<br>
<<printThought "I guess I shouldn't be surprised that she isn't immediately enthralled by just a <<getWordPenis>>... maybe if there was some way to enhance things?">><br>
<br>
<<if $player.flags.drugs.dick > 0 || $player.flags.drugs.dick_plus > 0>>
You recall the potent, if short-lived effects of <<=setup.getItemName("drug_dick")>>, maybe that would do the trick?
<<else>>
You recall the drug that <<=setup.getNpcName("npc_work_doctor","formal")>> uses... perhaps you could somehow get a sample?
<</if>>
<br><br>
[<<moveTo 'event_coffee_job_milked_4' "Finish your shift." 600>>]
</div>/*#
#desc: fuck barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_barista.flags.ai_help && $scene.removeMilker>>
<<wearItem "penis_milker" true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.fuck>>
You step forward and press your <<getWordMyPenis>> into <<=ps(setup.getNpcName("npc_barista","nickname"))>> already dripping cunt. Your size is a stretch for even one as experienced as herself and she throws her head back and wraps her legs around you to pull you closer.
<<else>>
You stand a pace away from her, a bead of pre-cum forming at your tip as her eyes glaze over with lust.<br>
<br>
The droplet beads and falls, acting like a starter pistol to have her suddenly leaping towards you. Somehow removing her front plug in mid-air she lands cunt-first on your raging boner, her full weight driving you hilt deep as you stagger back yet somehow keep your balance.
<</if>>
<br><br>
"@@.npc_barista;Yes, yes!@@" She shouts,
<<if $npc_barista.flags.ai_help>>
holding onto you like a koala as she bounces on your cock.<br>
<br>
Between the drugs and her enthusiasm you're giving it to her as hard as you can, staggering across the room to slam her up against the wall just as a customer walks into the room. With crazy eyes she shouts at them "@@.npc_barista;You! Fuck my ass! Fill my holes! I NEED MORE COCK!@@"<br>
<br>
Somehow pushing off the wall she makes you spin in place, hanging off your shoulder with one arm as she reaches down to pull the plug out of her rear hole as you find yourself staring at a clearly intimidated junior employee.<br>
<br>
[<<moveTo 'event_milking_misbehave_3' 'Ask <<him>> to join in.' 600 "<<set $scene.dp=true>>">>]<br>
[<<moveTo 'event_milking_misbehave_3' 'Tell <<him>> to run.' 600 "<<set $scene.dp=false>>">>]
<<else>>
only for a pair of security guards to suddenly rush through the door.<br>
<br>
In a flurry of action the two of you are pulled apart, her vaginal plug replaced and then one of the guards forced to placate her by feeding her <<his>> cock. She seems to calm with a dick-sickle to slurp on and within a few minutes everything is back as it was, with her licking her lips as the drained guard steps away.<br>
<br>
Noticing you once more, <<=setup.getNpcName("npc_barista","nickname")>> smiles and approaches, milking cylinder in hand.<br>
<br>
<<if $npc_ai.stage >= 3>>
<<printThought "Damn, I need more time to get her really going... some way to slow down security response in the building... maybe I should hop online and ask <<=setup.getNpcName('npc_ai','first')>>?">>
<<elseif $npc_ai.stage == 2>>
<<printThought "Damn, I need more time to get her really going... some way to slow down security response in the building... perhaps if I helped <<=setup.getNpcName('npc_ai','first')>> more she could lend a digital hand?">>
<<else>>
<<printThought "Damn, I need more time to get her really going... some way to slow down security response in the building... I wonder if that weird AI could do something about it?">>
<</if>>
<br><br>
[<<moveTo 'event_milking_misbehave_fail' "Well that didn't quite work." 600>>]
<</if>>
</div>/*#
#desc: caught severely misbehaving w/barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.stage = 5>>
<<set $npc_barista.flags.chastity = "penis">>
<<set $scene.baristaMisbehave = true>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.dp>>
Looking over <<=ps(setup.getNpcName("npc_barista","nickname"))>> shoulder you meet the <<mans>> gaze. Spreading her ass in invitation with both hands you beg <<him>> to help and <<he>> walks over almost in a trance.<br>
<br>
<<printThought "Yay for submissive subordinates...">><br>
<br>
<<He>> is but average size, but even that proves an initial tight fit with how stuffed you have <<=ps(setup.getNpcName("npc_barista","nickname"))>> front hole.<br>
<br>
Yelling in delight it is clear that <<=setup.getNpcName("npc_barista","nickname")>> loves this new addition, and there's no denying how intense it feels to have the <<man>>'s cock rubbing against your own, separated by just a thin membrane.<br>
<br>
"@@.npc_barista;Harder, harder, cock, cock!@@" She calls out like some sort of bimbo cheerleader, the three of you staggering around the cafe like some sort of strange hybrid creature.<br>
<br>
You hear the door open again and glance up just in time to see a stream of security guards rushing towards you.<br>
<br>
Wrestled to the ground you and the exhausted-looking <<man>> are pried apart.
<<else>>
You yell at the <<man>> to run for help and <<he>> scurries out the door. Momentarily frustrated <<=setup.getNpcName("npc_barista","nickname")>> takes it out on you, her cunt squeezing down like a vice as she slams her weight up and down with such energy that you end up falling to the floor. Pinning you down with both hands she bounces even harder, her face in full ahegao bliss until guards appear a few minutes later to drag her off.
<</if>>
<br><br>
"@@.npc_barista;Cock, cock! I NEED COCK!@@" <<=setup.getNpcName("npc_barista","nickname")>> cries out in desperation and it takes three security guards to restrain her from diving back onto your still-throbbing member.<br>
<br>
More guards pour into the room followed soon after by <<=setup.getNpcName("npc_manager","formal")>> and what you think must be <<=ps(setup.getNpcName("npc_barista","nickname"))>> boss/owner.<br>
<br>
<<if $scene.cage>>Your chastity re-applied you<<else>>You soon<</if>> find yourself cuffed and waiting, able to hear snippets of the manager-level discussion — it seems that the slow security response was caused by a signal glitch, but review of the tapes paints a picture of <<=setup.getNpcName("npc_barista","nickname")>> being the complete instigator in removing your equipment and taking advantage of you.<br>
<br>
<<printThought "Thanks, <<=setup.getNpcName('npc_ai', 'first')>>.">> You think to yourself, only to feel a twinge of sympathy as <<=setup.getNpcName("npc_barista","nickname")>> is locked into a heavy-duty chastity belt while she sobs in desperation. Her pleas initially ignored, her continued pleading to be fucked is soon "resolved" with a muzzle, only after its internal gag has been inflated significantly does she quiet from begging to suck everyone's cock to prove that she is a "good girl." <br>
<br>
You watch as she is led away and the shop is marked "closed for the afternoon." <br>
<br>
[<<moveTo 'event_milking_misbehave_4' 'Continue.' 600>>]
</div>/*#
#desc: barista orgy broken up by security
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeMilking = false>>
<<if setup.getItemFromType('cage') == 'penis_milker'>>
<<removeItem "penis_milker" true>>
<<set $scene.removeMilking = true>>
<</if>>
<<deleteItem "penis_milker">>
<<if setup.checkItemWorn('breast_milker')>>
<<removeItem 'breast_milker' true>>
<<deleteItem 'breast_milker'>>
<<set $scene.removeMilking = true>>
<</if>>
<<useClothSetPop 'tmp'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png">>
<div id="invframe" class="scrolltext">
A guard <<if $scene.removeMilking>>removes your other milking devices<<else>>places you to one side<</if>>, but otherwise you are left alone as managers and security sort things out. Eventually most of the room evacuates and <<=setup.getNpcName("npc_manager","formal")>> walks over, helping you to your feet before removing your handcuffs.<br>
<br>
"@@.npc_manager;Well that was certainly an... eventful shift. I do hope she did not cause you any harm. Uncontrolled slut-brain can be quite the danger<<if $npc_manager.flags.require_chastity>>, one of the many reasons I insist on you remaining locked and secured<</if>>. Speaking of which I am afraid that you are in need of a punishment — even though what transpired was not your fault it is important to ensure that you do not learn any improper lessons as to what manner of action is appropriate for one such as yourself.@@"<br>
<br>
[<<moveTo 'event_milking_misbehave_5' 'Follow obediently.' 600 "<<set $scene.obey=true>>">>]<br>
[<<moveTo 'event_milking_misbehave_5' 'Object, you were the innocent victim here!' 600 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: punished for your part in barista's misbehavior
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<else>>
<<decrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You nod obediently and <<=setup.getNpcName("npc_manager","formal")>> smiles, leading the way
<<else>>
You open your mouth to object that it isn't fair for you to be punished for <<=ps(setup.getNpcName("npc_barista","nickname"))>> frenzied misbehaviour.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> pauses with her hand on the door, turning slowly with fire in her eyes. "@@.npc_manager;Not... FAIR? Oh you silly thing. There is no such thing as fairness, there is only correct action and incorrect action. For a proper submissive <<if $fetish.sissy>>SISSI <</if>>secretary correct behaviour is its own reward while incorrect behaviour must be instantly met with severe punishment. For you to become perfect every flaw must be expunged with aggressive fervour. You should understand these things by now, but fortunately you have me to remind you, now follow fast, I do not wish any more time to pass without redressing your failure.@@"<br>
<br>
Sufficiently cowed you follow her
<</if>>
back to her office where she pulls a large box out from under the couch and unfolds things.<br>
<br>
You bite your lip as you recognise dual fucking machines with their dildos facing each other, a small platform in between clearly intended to "support" the victim as they endure a simulated double teaming.<br>
<br>
"@@.npc_manager;Here we are — a nice, simple training apparatus to remind you that, at a fundamental level, you are holes to be used. <<if $scene.obey>>I have decided to reward you with training from both ends in gratitude for your wonderful acceptance of the necessity of your punishment<<else>>I had considered only training you from one end but it seems clear that you need a firm reminder that the primary purpose of that mouth of yours is NOT for talking back<</if>>.@@"<br>
<br>
With a firm hand she soon has you situated and strapped into position, adjusting the <<if $player.body_ref.vagina>>three<<else>>two<</if>> dildos until they have you spit-roasted before stepping away. "@@.npc_manager;There we go, I am going to do some work and you? You can enjoy your lesson.@@"<br>
<br>
She presses a button and the dildos slide into motion... and into you.<br>
<br>
[<<moveTo 'event_milking_misbehave_6' '"Study" time.' 3600>>]
</div>/*#
#desc: punished for your part in barista's misbehavior
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 15 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Thrusting down your throat and pounding your ass<<if $player.body_ref.vagina>> and cunt<</if>>, the dildos seem to get even more aggressive as time wears on. Unable to escape or resist all you can do is drool and attempt to relax, groaning as you are constantly violated, thrusting robotic arms never fatiguing as they administer your "lesson." <br>
<br>
You can just barely see <<=setup.getNpcName("npc_manager","formal")>> working at her desk out of the corner of your eye. Somehow the fact that she only occasionally even looks up at you makes your whole situation even more embarrassing — your punishment seemingly so mundane by her standards as to not even be worth attention, as if you were nothing more than the "missing" centre part of the machine linking one thrusting dildo to the other.<br>
<br>
Your ordeal stretches out for an hour before <<=setup.getNpcName("npc_manager","formal")>> finally rises from her desk and sets you free. You stagger to your feet, feeling sore and well-used.<br>
<br>
"@@.npc_manager;You may return to work.@@" She notes, as if being double-fucked for an hour was an utterly normal thing.<br>
<br>
<<printThought "Well, around here, I guess it is...">><br>
<br>
Throat too sore to speak you just nod, carefully sitting down in your chair as you face your computer, momentarily wondering what further punishments <<=setup.getNpcName("npc_barista","nickname")>> is enduring.<br>
<br>
<<printThought "I'm sure the chastity is bad enough for her but... well, there's no other way. Just gotta see things through to the end. Next up: find a location for <<=setup.getNpcName('npc_psychiatrist','formal')>> to do her work and then get <<=setup.getNpcName('npc_barista','nickname')>> there without arousing suspicions...">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Resume working." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ask barkeeper about hiring barista for the weekend
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_barkeeper', 'first')>> if you could hire <<=setup.getNpcName('npc_barista', 'nickname')>> for the weekend?<br>
<br>
"@@.npc_barkeeper;Hire? Now isn't that a bit of a flipped script!@@"<br>
<br>
She thinks for a moment.
<<if setup.getTotalValue("whoring") > 15>>
"@@.npc_barkeeper;Given all that the both of you have done for me... how about this: if <<=setup.getNpcName('npc_barista', 'nickname')>> is up for it the two of you can take the weekend as a sort of work retreat. Have some fun, recharge your batteries, the whole thing. I'll even front you some credits to cover expenses... three hundred each seem sufficient?@@"<br>
<br>
You reply that that is more than generous before adding that you were hoping to make it a bit of a surprise for <<=setup.getNpcName('npc_barista', 'nickname')>> and could <<=setup.getNpcName('npc_barkeeper', 'first')>> just make the transport arrangements without letting on who the client is?<br>
<br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> smiles. "@@.npc_barkeeper;Of course! Oh, what fun, makes me a bit jealous I won't be there myself, but you two make sure you have a lovely time, and a wonderful weekend!@@"<br>
<br>
You assure her that you very much plan to and then excuse yourself from the room.<br>
<br>
[<<moveTo "event_barkeeper_talk_barista_3" "Back to the bar." 180>>]
<<else>>
"@@.npc_barkeeper;I have to admit that <<=setup.getNpcName('npc_barista', 'nickname')>> has been a bit... odd of late. I thought her getting locked in chastity would hurt her earnings but quite the opposite. She's constantly begging me for more clients, I swear I wonder when she even sleeps I have her booked so full! Given this fact you can imagine an entire weekend would be quite an ask... taking into account your relationship I think I could part with her for, say, a thousand credits a day? Assuming you'll be starting Friday after you get off from your day job... let's call it an even twenty-five hundred through to Monday morning.@@"<br>
<br>
<<if $player.money.total >= 2500>>
[<<moveTo "event_barkeeper_talk_barista_2" "Accept her offer and pay up." 180 "<<set $scene.pay=true>>">>]<br>
<<else>>
[@@.link_locked;You do not have that much money.@@]<br>
<</if>>
[<<moveTo "event_barkeeper_talk_barista_2" "Decline her offer." 180 "<<set $scene.pay=false>>">>]
<</if>>
</div>/*#
#desc: pay barkeeper to hire barista for the weekend
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pay>>
<<addCredits -2500>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.pay>>
You shell out the twenty-five hundred credits and <<=setup.getNpcName('npc_barkeeper', 'first')>> tucks them away in her safe. "@@.npc_barkeeper;Alright, then... wow, well enjoy your weekend!@@"<br>
<br>
You add on that you're planning a bit of a surprise for <<=setup.getNpcName('npc_barista', 'nickname')>> and... could <<=setup.getNpcName('npc_barkeeper', 'first')>> just take care of the transportation arrangements and not tell <<=setup.getNpcName('npc_barista', 'nickname')>> the details?<br>
<br>
"@@.npc_barkeeper;Not a problem.@@"<br>
<br>
[<<moveTo "event_barkeeper_talk_barista_3" "Back to the bar." 180>>]
<<else>>
You say you'll keep her offer in mind, you were just looking to find out the number.<br>
<br>
[<<moveTo "room_usual_place_inside" "Back to the bar." 180>>]
<</if>>
</div>/*#
#desc: inform psychiatrist that barista is ready for final phase
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.stage = 9>>
<<set $currentcall = true>>
<<include "hasAllWeekendEvent">>
<<set $scene.weekLater = _hasThisWeekendEvent>>
<<set $scene.twoWeekLater = _hasNextWeekendEvent && _hasThisWeekendEvent>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 12, 0, false)>>
<<if $scene.weekLater>>
<<set _nextDate = setup.getNextDayOfWeek(_nextDate, 5, 12, 0, false)>>
<</if>>
<<if $scene.twoWeekLater>>
<<set _nextDate = setup.getNextDayOfWeek(_nextDate, 5, 12, 0, false)>>
<</if>>
<<addEvent 'barista_rescue_final' _nextDate>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You leave <<=ps(setup.getNpcName('npc_barkeeper', 'first'))>> office and send <<=setup.getNpcName("npc_psychiatrist","formal")>> a text that you have successfully scheduled your
<<if $scene.twoWeekLater>>
trip, though prior commitments push it a few weekends.
<<elseif $scene.weekLater>>
trip, prior commitments pushing it past this weekend to the following.
<<else>>
trip for this weekend.
<</if>>
<br><br>
"@@.npc_psychiatrist;Wonderful, I hope that is proves fruitful for your purposes.@@"<br>
<br>
<<printThought "All this spy stuff is getting kind of creepy, but I have a feeling there's more to come if I'm ever to get to the bottom of what is going on at Social Interaction Service Syndicate Inc.">><br>
<br>
[<<moveTo "room_usual_place_inside" "Hang up." 180 "<<set $currentcall = false>>">>]
</div>/*#
#desc: leave work, phonecall kicking off barista cure
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() != 5>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 12, 0, false)>>
<<addEvent 'barista_rescue_final' _nextDate>>
<<initRoom>>
<<moveTo "room_elevator_home">>
<</if>>
<</if>>
<<set $player.location to "Inside an Automated Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png">>
<div id="invframe" class="scrolltext">
As you leave the lobby you get a text from <<=setup.getNpcName('npc_barkeeper', 'first')>>.<br>
<br>
"@@.npc_barkeeper;Alright, <<=setup.getNpcName('npc_barista', 'nickname')>> is off to her "job" and none the wiser... <<if $npc_barista.flags.location == "landlord">>Talk about out in the boonies! I guess the two of you are going to have a really private weekend getaway!<<else>>Bit of an odd location, but knowing the sort of things the two of you are into I guess I shouldn't be surprised.<</if>> Don't do anything too crazy — <<if setup.getTotalValue("whoring") >= 20>>you're my two best earners<<elseif setup.getTotalValue("whoring")>= 15>>you're two of my best earners<<else>>she's my best earner<</if>>!@@"<br>
<br>
You take a deep breath and summon an auto-cab and settle in for the drive.<br>
<br>
[<<moveTo "event_barista_cure_2" "Enjoy the trip." 600>>]
</div>/*#
#desc: ride to location for barista cure
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _clearToDay = 0>>
<<include "clearWeekendSchedule">>
<</if>>
<<set $player.location to "Inside an Automated Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png">>
<div id="invframe" class="scrolltext">
Several minutes into your trip you get another text, this time from <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
<br>
"@@.npc_psychiatrist;Sorry for the late notice, but something has come up and I am cancelling all appointments as I must attend to some out of town business for the weekend, if you have a standing appointment it will be rescheduled for next week, I apologise for the late notice. I am confident that you have all the skills necessary to carry on and I will speak with you again next week.@@"<br>
<br>
You take the reminder to clear the rest of your schedule and then put your phone away and take a deep breath — this is happening, you're on your way to help your only slightly crazy therapist try to "cure" your definitely crazy bimbo friend... you hope that <<=setup.getNpcName("npc_psychiatrist","formal")>> knows what she's doing and this all works out, unable to even imagine what would happen if it does not.<br>
<br>
<<if $npc_barista.flags.location == "landlord">>
[<<moveTo "event_barista_cure_3" "Enjoy the trip to the cabin." 21600>>]
<<else>>
[<<moveTo "event_barista_cure_3" "Enjoy the trip to the secret location." 1800>>]
<</if>>
</div>/*#
#desc: ride to location for barista cure
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Inside an Automated Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png">>
<div id="invframe" class="scrolltext">
<<if $npc_barista.flags.location == "landlord">>
The trip is long as you leave the city and journey deep into the mountains, winding down back-roads that make you glad that the Taxi is a hover model before finally coming down to a small, but well-kept cabin, its roof bedecked with solar panels.
<<else>>
The trip takes you to the seedier side of town, in the middle of an aging Industrial District.
<</if>>
Just before you exit the cab <<=setup.getNpcName('npc_ai', 'first')>> appears on the small backseat monitor. "@@.npc_ai;<<uc "Hello unit">> <<uc $player.first_name>>. <<uc "I have taken the liberty of erasing all records of this trip, good luck with your plan.">>@@"<br>
<br>
She disappears and you leave the vehicle. It quickly speeds away leaving you alone and you head for the front door of the building.<br>
<br>
[<<moveTo "event_barista_cure_4" "Enter." 60>>]
</div>/*#
#desc: meet psychiatrist for barista cure
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You open the door to the building and <<=setup.getNpcName("npc_psychiatrist","formal")>> appears to quickly usher you inside before locking the door. "@@.npc_psychiatrist;Good, you made it. I just finished putting her under — her psych readings are off the charts from being locked in chastity this long, but that is exactly what we needed.@@"<br>
<br>
She leads you to where <<=setup.getNpcName('npc_barista', 'nickname')>> is strapped to a familiar style of exam chair wearing a full plugsuit and VR helmet, a second chair sitting ominously next to it.<br>
<br>
"@@.npc_psychiatrist;Alright, my dear, it's time. You will need to go into her mind to piece together her true self. This will not be easy, given what she has gone through, and I warn you that you may learn things about your friend that... change how you think of her. I will be out here the whole time monitoring and controlling. I only hope I have managed to plan for every eventuality.@@"<br>
<br>
As she speaks she idly brushes <<=setup.getNpcName('npc_barista', 'nickname')>> arm. The expression on <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> face as she looks down surprises you — a look of genuine compassion and concern that makes you wonder what the relationship of the two women actually is.<br>
<br>
[<<moveTo "event_barista_cure_5" 'Ask what <<=setup.getNpcName("npc_barista","nickname")>> REALLY means to her.' 600 "<<set $scene.ask=true>>">>]<br>
[<<moveTo "event_barista_cure_5" "Get changed." 600 "<<set $scene.ask=false>>">>]
</div>/*#
#desc: meet psychiatrist for barista cure
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeEverything>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<addItem 'plugsuit_adv'>>
<<wearItem "plugsuit_adv" true>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.ask>>
As you change into the familiar plugsuit you ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to tell you the truth about her interest in <<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
Looking on guard and almost confused for a moment she slowly relaxes and actually smiles. "@@.npc_psychiatrist;Well, I guess you deserve this much... to tell the truth I've been so used to hiding things it's odd to be able to speak unreserved... the short version is that we were lovers. Not in the sense that <<=setup.getNpcName('npc_barista', 'nickname')>> will fuck just about anything, but deeper than that. I admired her intelligence and her free embrace of passion and she... well, if we are being completely honest it's possible she saw me as merely another cog in her plans, but I like to think not, that we really did share something more.@@" She seems wistfully lost in thought as she looks down at the oblivious bimbo.<br>
<br>
"@@.npc_psychiatrist;Sorry, I need to keep focused. Unfortunately, when it comes to the company, those sorts of connections are a liability. I did everything I could to protect my love and the price is that I was to become one of her jailers. Hopefully, this weekend will mark the end of that... and maybe she can even find it in herself to forgive me.@@"
<<else>>
You change into the familiar plugsuit as <<=setup.getNpcName("npc_psychiatrist","formal")>> gets things ready. As you both work silently you keep noticing <<=setup.getNpcName("npc_psychiatrist","formal")>> glancing nervously... longingly? At <<=setup.getNpcName('npc_barista', 'nickname')>>.
<</if>>
<br><br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> helps you up onto the chair. "@@.npc_psychiatrist;So this simulation is going to be a bit different than what you've experience before — you'll be journeying directly into her mind to help put her back together. We'll start by re-tracing her history and then assemble the pieces and hopefully... well, just pay attention and we'll be able to restore her.@@"<br>
<br>
The final strap cinched down, the VR visor is brought over your face, plunging you into darkness.<br>
<br>
[<<moveTo "event_barista_cure_6" "Here we go..." 600>>]
</div>/*#
#desc: inside barista's mind
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
Things go dark and you wonder for a moment if the VR is even working properly. You squint and try to look around only to be overwhelmed by a sudden flash.<br>
<br>
Arousal so strong it is a physical force slams into you, pink clouds seeping in from every direction. What was once darkness is now a cotton candy fog, with every breath you feel lighter, more relaxed. All you want is orgasms. Cock, cunt, lips, fingers, fists. You need them inside of you, thrusting and groping and helping you erase the pain of cognition. All you have to do is surrender, obey, give in to the lusts and you can be happy forever. All you have to do is give in...<br>
<br>
[<<moveTo "event_barista_cure_initial_fail_1" "Yes... surrender." 600>>]<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_barista_cure_7" "No! You came here for a purpose, you must bring focus to this lusty disorder." 600 "<<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;Why resist? Your mind is already so tired, give in...@@]
<</if>>
</div>/*#
#desc: inside barista's mind
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
Mustering your energy you try to focus, to resist the aura of mindless lust that seems to fill the world. Searching for any break in the pink clouds you spot something in the distance, a shadow of a shape, perhaps human?<br>
<br>
Reminded of the rules for traveling the astral plane you marshal your thoughts and float in the direction of the shape. As you get closer it steadily sharpens, a human form, a human female form and then finally you find yourself in front of <<=setup.getNpcName('npc_barista', 'nickname')>>. Naked and softly glowing her expression is blank, a statue paying no attention to you.<br>
<br>
You reach out to touch her and she moans, the sound echoing in the void and causing the clouds to swirl. You cling to her body at the eye of a pink tornado, her body akin to a blow-up doll life-raft keeping you afloat. Playful giggles and orgasmic moans echo around you in a cacophony of bimbo bliss.<br>
<br>
As the storm subsides the body you are clinging to begins to fray, splintering as you fall, fall, fall. Just before you land <<=setup.getNpcName('npc_barista', 'nickname')>> scatters and you find yourself holding nothing as you land on a surprisingly soft cloud.<br>
<br>
Picking yourself up you look around. Rather than a single form there are now multiple frozen versions of <<=setup.getNpcName('npc_barista', 'nickname')>>, each her and yet... different. Beyond the ring of statues the pink fog swirls menacingly.<br>
<br>
[<<moveTo "event_barista_cure_root" "Are these... her memories?" 600>>]
</div>/*#
#desc: inside barista's mind
#status: RELEASED 0.8.4.0
#ignore_spell: t
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'npc_technician_theme_rpg_barista')>>
You float in the nebulous pink void. Everything feels happy and horny and light. All is silent save for an occasional lusty moan or a faint giggle echoing from indiscernible directions.<br>
<br>
You stand in the centre of a circle — around you are <<if $scene.ask && _themeId != -1 && $npc_technician.themes.rpg[_themeId].done>>eight<<elseif _themeId != -1 && $npc_technician.themes.rpg[_themeId].done || $scene.ask>>seven<<else>>six<</if>> statues of <<=setup.getNpcName('npc_barista', 'nickname')>>, each looking radically different. At the centre of the circle is a final statue that remains hazy and unclear.<br>
<br>
Which version of <<=setup.getNpcName('npc_barista', 'nickname')>> will you approach?<br>
<br>
<<if !$npc_barista.flags.history.company || $npc_barista.flags.history.final>>
[<<moveTo "event_barista_cure_company_1" "Dressed in a tailored suit." 60>>]<<if $npc_barista.flags.history.company>> <<hint $options "You have successfully witnessed this memory.">><</if>><br>
<<else>>
[@@.link_locked;You have already experienced <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> corporate scheming.@@]<br>
<</if>>
<<if _themeId != -1 && $npc_technician.themes.rpg[_themeId].done>>
<<if !$npc_barista.flags.history.gamer || $npc_barista.flags.history.final>>
[<<moveTo "event_barista_cure_gaming_1" "Dressed in a casual t-shirt and jeans." 60>>]<<if $npc_barista.flags.history.gamer>> <<hint $options "You have successfully witnessed this memory.">><</if>><br>
<<else>>
[@@.link_locked;You have already experienced <<=setup.getNpcName('npc_barista', 'nickname')>> joining <<=ps(setup.getNpcName("npc_technician","first"))>> gaming group.@@]<br>
<</if>>
<</if>>
<<if !$npc_barista.flags.history.university || $npc_barista.flags.history.final>>
[<<moveTo "event_barista_cure_university_1" 'Dressed as a co-ed.' 60>>]<<if $npc_barista.flags.history.university>> <<hint $options "You have successfully witnessed this memory.">><</if>><br>
<<else>>
[@@.link_locked;You have already experienced <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> time at university.@@]<br>
<</if>>
<<if !$npc_barista.flags.history.maid || $npc_barista.flags.history.final>>
[<<moveTo "event_barista_cure_maid_1" "Dressed in a latex maid's uniform." 60>>]<<if $npc_barista.flags.history.maid>> <<hint $options "You have successfully witnessed this memory.">><</if>><br>
<<else>>
[@@.link_locked;You have already experienced <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> maid work.@@]<br>
<</if>>
<<if !$npc_barista.flags.history.naked || $npc_barista.flags.history.final>>
[<<moveTo "event_barista_cure_punishment_1" "Dressed in nothing at all..." 60>>]<<if $npc_barista.flags.history.naked>> <<hint $options "You have successfully witnessed this memory.">><</if>><br>
<<else>>
[@@.link_locked;You have already experienced <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> exposed vulnerability.@@]<br>
<</if>>
<<if $scene.ask>>
<<if !$npc_barista.flags.history.psychiatrist || $npc_barista.flags.history.final>>
[<<moveTo "event_barista_cure_psychiatrist_1" "Dressed in red lingerie." 60>>]<<if $npc_barista.flags.history.psychiatrist>> <<hint $options "You have successfully witnessed this memory.">><</if>><br>
<<else>>
[@@.link_locked;You have already experienced <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> meeting <<=setup.getNpcName("npc_psychiatrist","formal")>>.@@]<br>
<</if>>
<</if>>
<<if !$npc_barista.flags.history.job || $npc_barista.flags.history.final>>
[<<moveTo "event_barista_cure_job_1" "Dressed in a skirt and blouse." 60>>]<<if $npc_barista.flags.history.job>> <<hint $options "You have successfully witnessed this memory.">><</if>><br>
<<else>>
[@@.link_locked;You have already experienced <<=setup.getNpcName('npc_barista', 'nickname')>> at her first job.@@]<br>
<</if>>
<<if !$npc_barista.flags.history.caught || $npc_barista.flags.history.final>>
[<<moveTo "event_barista_cure_caught_1" "Dressed as a bound and gagged slave." 60>>]<<if $npc_barista.flags.history.caught>> <<hint $options "You have successfully witnessed this memory.">><</if>><br>
<<else>>
[@@.link_locked;You have already experienced <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> at the hands of <<=setup.getNpcName('npc_boss', 'formal')>>.@@]<br>
<</if>>
<<if $npc_barista.flags.history.university && $npc_barista.flags.history.job && $npc_barista.flags.history.company && $npc_barista.flags.history.caught && $npc_barista.flags.history.maid>>
<<if $scene.intermission || $npc_barista.flags.history.final>>
[<<moveTo "event_barista_cure_reassemble_4" "The ephemeral figure in the middle." 60>>]<br>
<<else>>
[<<moveTo "event_barista_cure_reassemble_1" "The ephemeral figure in the middle." 60>>]<br>
<</if>>
<<if _themeId == -1 || !$npc_technician.themes.rpg[_themeId].done || !$scene.ask>>
[<<moveTo "event_barista_cure_reassemble_2_alt" "You need something from the real world..." 60>>]
<</if>>
<<else>>
[@@.link_locked;Nothing happens when you approach the ephemeral figure in the centre of the circle.@@]
<</if>>
</div>/*#
#desc: make an ahistorical choice in barista's mind
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
The pink storms return, blotting out the simulated memory as you realise you have made a mistake and failed to follow the path of history. You gasp, the lusty power of the tempest pulling at you, threatening to rip you apart but that destruction would feel so, so good...<br>
<br>
[<<moveTo "event_barista_cure_initial_fail_1" "Yes... surrender." 600>>]<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_barista_cure_root" "No! You came here for a purpose, you must bring focus to this lusty disorder." 600 "<<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;Why resist? Your mind is already so tired, give in...@@]
<</if>>
</div>/*#
#desc: examine barista at university
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png" setup.charImage("npc_barista","npc_barista_college")>>
<div id="invframe" class="scrolltext">
You approach what looks like <<=setup.getNpcName('npc_barista', 'nickname')>> in her college days. She is wearing a tube top and shorts, her hair pulled back in a flirty pony-tail.<br>
<br>
[<<moveTo "event_barista_cure_university_2" "Touch her." 1800>>]<br>
[<<moveTo "event_barista_cure_root" "Look at one of the other statues." 1800>>]
</div>/*#
#desc: barista at university
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Back in College">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/college_class.png" setup.charImageGeneric("generic_professor")>>
<div id="invframe" class="scrolltext">
Your perspective shifts and you find yourself back in college, sitting in the front row of a large lecture class.<br>
<br>
The precise topic of the class is indistinct and seemingly irrelevant save that you get the impression that you consider it trivial. What you DO notice is how the professor — a middle-aged <<man>> in decent shape but just starting to <<if $options.fem>>get crow's feet<<else>>go grey<</if>> keeps glancing in your direction and smiling.<br>
<br>
The class comes to a close and your fellow students begin packing up their things.<br>
<br>
[<<moveTo "event_barista_cure_university_3" "Go talk to the professor." 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "Leave." 1800>>]
</div>/*#
#desc: barista affair with professor
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Back in College">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/college_class.png" setup.charImageGeneric("generic_professor")>>
<div id="invframe" class="scrolltext">
You walk up to the professor, waiting for <<him>> to deal with a couple other student questions before following <<him>> back to <<his>> office. The moment <<his>> office door closes <<he>> lunges for you, kissing and groping as you return the favour. You slide to your knees and push <<him>> into a chair, <<his>> cock in your mouth as you suck and coo. Lies flow from your lips — how big <<he>> is, how much you love <<him>>, how <<he>> is the only one for you.<br>
<br>
<<He>> believes them all, climaxing quite quickly as you say the first true thing since you entered the room — that you love drinking <<his>> cum. Of course, that's only because "you" love drinking ALL cum.<br>
<br>
Having relieved the <<man>> of <<his>> arousal you dote on <<him>> as <<he>> talks about <<his>> studies. It seems that you are not just <<his>> secret lover, but <<his>> research assistant and <<he>> is just about to publish <<his>> magnum opus.<br>
<br>
"@@.generic_male1;With this I'll finally secure the respect I deserve@@" the <<man>> states with pride. "@@.generic_male1;And it is all thanks to you, my wonderful muse...@@"<br>
<br>
You smile and flatter <<him>> "@@.npc_barista;Oh, I am just lucky to be in the presence of such a great mind!@@"<br>
<br>
<<He>> has a faculty meeting and it is time for you to go. You give <<him>> a kiss on the cheek and promise to see <<him>> later. Returning to your room you open an encrypted folder on your computer — it is filled with images of your affair of <<him>> fucking you — and not just a quick suck in <<his>> office, there are images of you tied up, of <<him>> violating you with what looks like a faculty achievement award, spanking you with <<his>> framed diploma...<br>
<br>
You assemble the juiciest of the images into an email to the dean...<br>
<br>
[<<moveTo "event_barista_cure_university_4" "Send the email." 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "Delete the photos." 1800>>]
</div>/*#
#desc: barista betray professor
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.history.university = true>>
<</if>>
<<set $player.location to "Back in College">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/college_class.png">>
<div id="invframe" class="scrolltext">
It is a week later. You watch a news report of your professor/lover packing up <<his>> office in disgrace. You smile — the scandal of it all means you have been given an early graduation to keep you from suing the school. Even better... while the professor's research will never bring <<him>> the glory <<he>> was hoping for, or be seen by as many eyes as <<his>> untarnished name would have brought to it, the fact that it is being published under your name, well... that sort of citation is quite the boon for someone starting their career. And you already have your first job interview lined up...<br>
<br>
The memory slowly fades.<br>
<br>
[<<moveTo "event_barista_cure_root" "Back to the ring of statues." 1800>>]
</div>/*#
#desc: barista dressed for first job
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You approach what looks like <<=setup.getNpcName('npc_barista', 'nickname')>> if she had your job. Stiletto pumps, perfectly aligned nylons, a tight pencil skirt and a slightly too low-cut blouse would bring a smile to any office.<br>
<br>
[<<moveTo "event_barista_cure_job_2" "Touch her." 1800>>]<br>
[<<moveTo "event_barista_cure_root" "Look at one of the other statues." 1800>>]
</div>/*#
#desc: barista at first job
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/secretary_office.png">>
<div id="invframe" class="scrolltext">
You feel a twinge of familiarity as you finish a day's work as a secretary. Reviewing your boss's schedule for the next day you straighten your desk and prepare to leave.<br>
<br>
[<<moveTo "event_barista_cure_job_3" '"Visit" your boss.' 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "Go home." 1800>>]
</div>/*#
#desc: barista fucking boss
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/secretary_office.png" "generic_barista_boss">>
<div id="invframe" class="scrolltext">
You stride into your boss' office with a smile. She is on a phonecall but you wordlessly crawl under her desk, her voice almost cracking due to your expert attention before they cut the call short and frantically finish up.<br>
<br>
Licking your lips you smile, sitting on the edge of the desk and flirting with them.<br>
<br>
"@@.npc_barista;Was that Wilkins again? You know you could do his job better, your talents are such a waste.@@"<br>
<br>
"@@.generic_female1;Certainly, and he has no idea what's happening! Once we're on the plane it'll be too late — the money will be transferred and he'll never succeed at extraditing me!@@"<br>
<br>
You smile rubbing between your legs. "@@.npc_barista;Oh, it makes me so wet when you talk about our future! You're just so smart and they never appreciated you here anyway!@@"<br>
<br>
The woman smiles back at you. "@@.generic_female1;It's true, all these years working for those pigs... thinking they'd ever give me the promotions I deserved... but it took you to make me realise that it wasn't worth it struggling for their misogynistic approval.@@"<br>
<br>
You pop to your feet "@@.npc_barista;Well, I need to get home and pack. Oh, I'm so excited I don't know how I'll sleep! But I'll see you at the airport tomorrow and then...@@"<br>
<br>
The woman grins "@@.generic_female1;Then our life of leisure begins!@@"<br>
<br>
You leave the office and walk to the elevator. Alone you pull out a small recording device and replay "@@.generic_female1;He'll never succeed at extraditing me!@@" A smile forms on your lips.<br>
<br>
[<<moveTo "event_barista_cure_job_4" 'Ride up to the executive floor.' 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "Ride down to the lobby." 1800>>]
</div>/*#
#desc: barista betrays boss
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.history.job = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_office.png">>
<div id="invframe" class="scrolltext">
You head for the CEO's office, turning over (carefully curated) evidence of your manager's attempted betrayal of the company. Of course this leads to the woman's swift firing, and her subsequent mysterious death... but neither is enough to control for the damage she caused as the company's stock and reputation go into a synchronised nosedive.<br>
<br>
A month later and it is public news — Social Interaction Service Syndicate Inc. has purchased the company and, for your part in getting them a FAR sweeter deal than they otherwise would have? Well, you're going to be in the cushy manager position now. But this is just the start — a larger company just means there are even higher levels to climb, and you will not stop until you are at the very top looking down.<br>
<br>
You enter your new corner office for the first time and smile. Sitting back in the luxurious leather chair you look out across the city as the memory slowly fades.<br>
<br>
[<<moveTo "event_barista_cure_root" "Back to the ring of statues." 1800>>]
</div>/*#
#desc: barista working at company
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You approach a frozen copy of <<=setup.getNpcName('npc_barista', 'nickname')>> unlike anything you could have previously imagined in real life. Wearing a fitted suit and patent pumps her makeup is as sharp as her expression, her hair pulled back a tight bun. She looks hard, sharp, and dangerous; more than a little intimidating and all business.<br>
<br>
[<<moveTo "event_barista_cure_company_2" "Touch her." 1800>>]<br>
[<<moveTo "event_barista_cure_root" "Look at one of the other statues." 1800>>]
</div>/*#
#desc: barista at company
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" "generic_assistant_female" setup.charImageGeneric("generic_assistant_male")>>
<div id="invframe" class="scrolltext">
You stride the halls of power at Social Interaction Service Syndicate Inc. You are swimming with fellow sharks here compared to the saps you were dealing with at school and your previous company, but it doesn't matter. You are hard and ruthless, a natural for the new order of rigid hierarchy and sexual exploitation that has proliferated under <<=ps(setup.getNpcName("npc_boss","formal"))>> leadership.<br>
<br>
Entering your office you smile as your two assistants leap to attention. <<if $options.fem>>Two women that you have subjected<<else>>One male, one female so you can indulge whichever pleasures you feel like, you have subjected them<</if>> to all manner of tortures and manipulation to ensure their reflexive obedience and utter loyalty. Striding past them into your office you sit back in your chair, the <<man>> kneeling between your legs, much as you had done so many times earlier in your career as the <<if $options.fem>>other <</if>>woman briefs you on her findings.<br>
<br>
"@@.generic_female1;Your instincts were correct, oh Glorious Goddess,@@" she explains. "@@.generic_female1;This slave was able to finish tracing those accounts back and it appears that a full thirty percent of the company is still owned by a single individual — and it all traces back to an estate outside of town. An estate legally owned by <<=setup.getNpcName("npc_ceo","Mr.")>>, the previous CEO... and the same estate that <<=setup.getNpcName("npc_boss","formal")>> visits every other month.@@"<br>
<br>
You smile, rewarding the girl with a few moments of anal vibration. She gasps, even this light touch is intense after all you have done to her, but you stop shy of granting an orgasm. Orgasms are for you alone, your assistants indoctrinated to be addicted to pleasure, their chastity-controlled constant arousal utterly delicious and the best they can hope for is a ruin so long as you are in control. You smile, rubbing your high heel foot against the cage of the poor thing still eating you out. <<He>> moans, but does not slow and you imagine <<him>> clenching down on the massive plug installed in <<his>> rear — <<his>> "reward" for successfully taking your fist...<br>
<br>
"@@.generic_female1;So, shall I make travel arrangements for you to visit the estate?@@"<br>
<br>
[<<moveTo "event_barista_cure_company_3" 'Yes, this mysterious former CEO is certainly the key to dethroning <<=setup.getNpcName("npc_boss","formal")>>.' 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "You are near the top of the world already, why risk rocking the boat?" 1800>>]
</div>/*#
#desc: barista after meeting ex CEO
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.history.company = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_vehicle.png">>
<div id="invframe" class="scrolltext">
Your mind swirls as you ride home from your "meeting" with the company's former CEO, partially in awe of what <<=setup.getNpcName("npc_boss","formal")>> has done while churning away at how to turn your new knowledge to your advantage.<br>
<br>
You have certainly betrayed and eliminated your share of superiors in your relentless quest for power but turning your predecessor into a <<if $fetish.sissy>>sissified<<else>>feminised<</if>> bimbo... the idea makes you wet just thinking about it and you fantasise about the fun you could get up to with both <<=setup.getNpcName("npc_boss","Miss")>> and <<=setup.getNpcName("npc_ceo","first")>> as your mind-broken, obedient toys...<br>
<br>
Fog spreads across the terrain outside the vehicle as things fade and you drive forward into the void.<br>
<br>
[<<moveTo "event_barista_cure_root" "Back to the ring of statues." 1800>>]
</div>/*#
#desc: barista enslaved
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You approach a frozen copy of <<=setup.getNpcName('npc_barista', 'nickname')>> "dressed" like a slave. Wearing no actual clothing to speak of her arms and legs are bound to spreader bars to have her completely exposed, a blindfold and gag rendering her sightless and mute, harsh clamps dangling from each of her nipples, her flesh marked with red whip-marks.<br>
<br>
[<<moveTo "event_barista_cure_caught_2" "Touch her." 1800>>]<br>
[<<moveTo "event_barista_cure_root" "Look at one of the other statues." 1800>>]
</div>/*#
#desc: barista caught
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_dungeon.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You find yourself blind in stringent bondage. Arms and legs spread your feet are sore from balancing on your toes, ass and cunt both leaking cum down your leg from the dozens of times you've been fucked. In another situation you might have loved that... and there's no denying that you did orgasm multiple times from the experience, a fact that your tormentors greatly enjoyed mocking you for.<br>
<br>
Your head hangs in shame, drool trickling out past your large spider gag, still able to taste the lingering flavour of the sweaty cocks that were rammed down your throat. Exhausted, you barely stir at the sound of a door opening. You can't be sure how long you've been here, having lost consciousness more than once during your brutal ordeal as well as losing track of the time left alone after it was over but you have no illusions that this is a harbinger of anything but additional horror.<br>
<br>
Heavy footfalls approach you and then your blindfold is ripped away, <<=setup.getNpcName("npc_boss","formal")>> standing before you with a cruel grin. "@@.npc_boss;Did you enjoy the party? I have already received half a dozen comments from the board commending the entertainment — and praising my continued leadership of this wonderful company.@@"<br>
<br>
Lifting your chin <<he npc_boss>> forces you to look <<him npc_boss>> in the eye. You try to glare but you are just too tired, unable to quite keep the hint of fear from your gaze. "@@.npc_boss;Defiant to the end.@@" <<He npc_boss>> snorts. "@@.npc_boss;Well, not the end, just the beginning. As useful as you might be hanging in my office as a plaything and a message to others who might defy me, well... you are already leaking all over the place and there would remain the slight chance of your escape... no, I have a much more appropriate solution for you.@@"<br>
<br>
<<He npc_boss>> snaps <<his npc_boss>> fingers and the door opens, <<if $npc_work_doctor.fem>>two women<<else>>a man and a woman<</if>> stepping forward.<br>
<br>
[<<moveTo "event_barista_cure_caught_3" "Look up to see your next round of tormentors." 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "Maybe you're being rescued?" 1800>>]
</div>/*#
#desc: barista taunted by boss
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_dungeon.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab") setup.charImage("npc_boss") setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You look up as <<=setup.getNpcName("npc_work_doctor","formal")>> and <<=setup.getNpcName("npc_psychiatrist","formal")>> walk into the room. Though they walk side by side in similar lab attire their expressions could not be more different — <<=setup.getNpcName("npc_work_doctor","formal")>> looking positively gleeful while <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> face is sunken in sorrow as she stares down to avoid looking at you.<br>
<br>
"@@.npc_boss;I don't have to tell you the advancements these two have been making — you volunteered your assistants for enough treatments, after all! But you represent a far more interesting opportunity.@@" <<He npc_boss>> stands between the two scientists, a hand on each of their shoulders that, you note, makes <<=setup.getNpcName("npc_psychiatrist","formal")>> reflexively cringe. "@@.npc_boss;They are going to break you, to turn you into a mindless bimbo slut, her only purpose to offer her body for other's pleasure... and the whole time you're going to be stuck in a prison of your own mind, a witness to your abuse, unable to affect it and yet eternally aroused by it...@@"<br>
<br>
<<He npc_boss>> laughs, <<=setup.getNpcName("npc_work_doctor","formal")>> joining in enthusiastically while <<=setup.getNpcName("npc_psychiatrist","formal")>> eventually forces a chuckle as <<=ps(setup.getNpcName("npc_boss","formal"))>> fingers dig into her shoulder. "@@.npc_boss;And that's the real irony, isn't it?@@" <<He npc_boss>> adds, moving away from the two scientists to approach you. "@@.npc_boss;It didn't have to be this way — you could have had it all, money, slaves, power, sex. You were fantastic at your job and could have easily continued your rise, but you got greedy, you came after ME and that... that is the biggest crime there is.@@"<br>
<br>
<<He npc_boss>> looks you in the eye one final time, grin spreading across <<his npc_boss>> face as you try to stare back at <<him npc_boss>>... your neck aches, your entire body crying out in pain from hours and days of abuse and awkward suspension and finally your muscles give out. Your head droops and <<he npc_boss>> walks away, chuckling triumphantly. "@@.npc_boss;She's all yours now — break her.@@"<br>
<br>
You catch sight of <<=setup.getNpcName("npc_work_doctor","formal")>> pulling out a syringe as <<he npc_work_doctor>> walks towards you. <<=setup.getNpcName("npc_psychiatrist","formal")>> stops in front of you to gently lift your head, barely holding back tears as she mouths a silent "@@.npc_psychiatrist;I'm sorry.@@"<br>
<br>
[<<moveTo "event_barista_cure_caught_4" "Spit in her face." 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "It's not her fault..." 1800>>]
</div>/*#
#desc: barista begins treatment under psychiatrist and work_doctor
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.history.caught = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_dungeon.png">>
<div id="invframe" class="scrolltext">
Heart full of anger you try to spit in <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> face but your large gag means it is more like you drool in her general direction. Still, you can tell from the hurt look in her eyes that she gets the message.<br>
<br>
A part of you regrets spurning her — you know how this company works, that she would be getting even worse if she had disobeyed, but you have no time to make up for it, a prick followed by a feeling of numb relaxation as the drug takes hold, sapping your will to resist exhaustion until you pass out.<br>
<br>
Your memory of the next few days is fragmented and erratic, mostly staring up at laboratory ceilings or disjointed simulations of constant sex. When you finally stand on your own everything is different, your scheming thoughts squashed, your normal high sexual energy cranked into the stratosphere to leave your conscious mind nothing but lust and a deep desire to obey.<br>
<br>
Deep in the back of your head, however, you remain. You look helplessly out from the eyes of the bimbo sex robot that is your body. Only the rarest occasion are you able to exert control over your body, and those moments usually random, as likely to be wasted on spouting out a feat of mental arithmetic as anything that might be construed as rebellion... and equally useless to affecting your lot in any case. For the most part, you are able only to watch as your life changes from administering an entire division with an eye towards greater things... to serving coffee with an eye towards being fucked over the counter during your break.<br>
<br>
The worst parts are your meetings with <<=setup.getNpcName("npc_psychiatrist","formal")>>. Officially tasked with monitoring you she seems to be constantly searching for remnants of your true self and yet as close as she gets you can never manage to reach out, to tell her that you are still here... to tell her that you accept her apology.<br>
<br>
Days blur together in your new role until you meet a new employee, a new Secretary assigned to <<=setup.getNpcName("npc_manager","formal")>>. For some reason you blurt out a warning, only to be "punished" with the thought-erasing pleasure that is your "prison," your automated bimbo personality taking over as things fade...<br>
<br>
[<<moveTo "event_barista_cure_root" "Back to the ring of statues." 1800>>]
</div>/*#
#desc: barista being bimbofied
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You approach a frozen copy of <<=setup.getNpcName('npc_barista', 'nickname')>> suspended and restrained, her body bound, seemingly floating, sex toys frozen in place... and a semi-transparent headpiece shining with the word BIMBO across her face. What little you can see of her eyes past the glowing words show a dulled expression, resistance all but burned away.<br>
<br>
[<<moveTo "event_barista_cure_brainwash_2" "Touch her." 1800>>]<br>
[<<moveTo "event_barista_cure_root" "Look at one of the other statues." 1800>>]
</div>/*#
#desc: psychiatrist and work_doctor brainwash you
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab") setup.charImage("npc_boss") setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You find yourself helplessly bound, floating in some sort of liquid. You vision is partially obscured, subliminal pink messages flashing in front of you, in coordination, and yet disorientingly offset from words whispered into your ears.<br>
<br>
<<shinyText "OBEY. SURRENDER. SUBMIT." 0.0>>
<<shinyText "BIMBO SLUT. STUPID WHORE." 0.5>>
<<shinyText "OBEY. SURRENDER. SUBMIT." 1.0>>
<br>
You hear something, clinging to anything other than the words pounding into your brain as you strain to look past the pinkish liquid you are immersed in, to make out a trio of familiar figures beyond, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and <<=setup.getNpcName('npc_work_doctor', 'formal')>> working separate consoles... with <<=setup.getNpcName('npc_boss', 'formal')>> lording over things from behind.<br>
<br>
"@@.npc_psychiatrist;There... once this round is done she will no longer be a threat to you...@@" There is pain in the <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> voice... pain and exhaustion.<br>
<br>
"@@.npc_boss;Good,@@" <<=setup.getNpcName('npc_boss', 'formal')>> replies, <<his npc_boss>> words driping with satisfaction. <<He npc_boss>> takes a step forward, standing just outside your glass chamber to look up at you. "@@.npc_boss;It really is for the best... she would have only caused... problems for our continued work. And your results really do speak for themselves... your finest work to date...@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> wilts, for a moment starting to look up at you... and then she turns away, unable to meet your gaze, even through the layers of glass and liquid providing distorting separation. "@@.npc_psychiatrist;I... the rest is automatic I... I have to go.@@" She storms off, leaving the two <<if $npc_boss.fem && $npc_work_doctor.fem>>other women<<elseif !$npc_boss.fem && !$npc_work_doctor.fem>>men<<else>>others<</if>> alone with you.<br>
<br>
"@@.npc_work_doctor;You're going to let her leave, in our moment of triumph?@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> asks a moment after the door has closed behind the retreating psychiatrist.<br>
<br>
<<=setup.getNpcName('npc_boss', 'formal')>> chuckles in amusement. "@@.npc_boss;Sometimes you need to put slack in the leash, lest they choke... and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is of more use on a leash rather than fully broken...@@" <<=setup.getNpcName('npc_boss', 'formal')>> grins wider as <<he npc_boss>> stares up at you. "@@.npc_boss;but this one, well... best to take precautions...@@"<br>
<br>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> seems to take this as a command, and you feel a rush, a fresh cloud of pink bubbling up through your chamber alongside a familiar sweet taste as the mad doctor exposes you to more of <<his npc_work_doctor>> concoctions. It becomes almost impossible to see, the last, blurry sight <<=setup.getNpcName('npc_boss', 'formal')>> pulling out a phone and speaking unheard words as you vision flutters...<br>
<br>
[<<moveTo "event_barista_cure_brainwash_3" "You've fought so hard... you need a rest..." 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "Stay awake!" 1800>>]
</div>/*#
#desc: barista meets psychiatrist at party
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab") setup.charImage("npc_boss") setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You drift back to consciousness, the effort to focus even harder than it was before as you peer past the drug-tinged waters around you and the thundering commands assaulting your senses.<br>
<br>
<<shinyText "OBEY. SURRENDER. SUBMIT." 0.0>>
<<shinyText "BIMBO SLUT. STUPID WHORE." 0.5>>
<<shinyText "OBEY. SURRENDER. SUBMIT." 1.0>>
<br>
Things are different, now a
<<if $npc_primrose.profile>>
familiar pink-haired <<if $fetish.sissy>>sissy <</if>>scientist
<<else>>
pink-haired scientist
<</if>>
having taken <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> place at one of the consoles. <<=setup.getNpcName('npc_boss', 'formal')>> stands behind the new arrival, one hand possessively placed on the <<man npc_primrose>>'s shoulder as <<if $npc_primrose.profile>><<=setup.getNpcName('npc_primrose', 'formal')>><<else>><<he npc_primrose>><</if>> nervously gives a status report.<br>
<br>
"@@.npc_primrose;Hmm, yes, just as you so brilliantly predicted, there are a few small gaps of resistance where the combination of drugs and re-conditioning are clashing... I think I can resolve with just a little bit more... but I wouldn't want to interfere with the existing plans, it really is quite a brilliant program... perhaps if <<=setup.getNpcName('npc_psychiatrist', 'formal')>> could provide a second opinion? She really is the expert...@@"<br>
<br>
<<printThought "Did <<=setup.getNpcName('npc_psychiatrist', 'formal')>> try to sabotage things... even just a little?">><br>
<br>
"@@.npc_boss;No,@@" <<=setup.getNpcName('npc_boss', 'formal')>> replies, ever-so-slightly massaging the <<if $npc_primrose.profile>>
<<if $fetish.sissy>>sissy <</if>>scientist's
<<else>>
scientist's
<</if>>
shoulders, a dark puppet-master having the <<if $npc_primrose.profile>>
<<if $fetish.sissy>>sissy <</if>>scientist
<<else>>
scientist
<</if>> swooning in place. "@@.npc_boss;I want to you to do this. I know that you are the <<man npc_primrose>> for the job, as proven by your identification of the flaw in the program. Make me proud, fix things, override whatever you need, I want this subject to be... perfect...@@"<br>
<br>
"@@.npc_primrose;Of course Ma— uh, Sir,@@" <<if $npc_primrose.profile>><<=setup.getNpcName('npc_primrose', 'formal')>><<else>>the scientist<</if>> self-corrects as <<he npc_primrose>> all but helplessly replies. "@@.npc_primrose;I live to serve your every desire...@@"<br>
<br>
Proper thought drifts even further away as <<if $npc_primrose.profile>><<=ps(setup.getNpcName('npc_primrose', 'formal'))>><<else>>the scientist's<</if>> slender fingers dance over the controls. In the background <<=setup.getNpcName('npc_primrose', 'formal')>> rolls <<his npc_work_doctor>> eyes... and then dials the drugs up even higher as the previously droning messages become more insidious and irresistible.<br>
<br>
<<shinyText "Good girl <<=setup.getNpcName('npc_barista', 'nickname')>>." 0.0>>
<<shinyText "YOU LIVE TO OBEY." 0.3>>
<<shinyText "Now... Good girls drop for cock <<=setup.getNpcName('npc_barista', 'nickname')>>." 0.5>>
<<shinyText "YOU ARE A BIMBO SLUT." 0.8>>
<<shinyText "Good girls drop for cock <<=setup.getNpcName('npc_barista', 'nickname')>>." 1.0>>
<<shinyText "SUBMISSION IS YOUR DUTY." 1.3>>
<<shinyText "You're a good girl." 1.5>>
<<shinyText "SEX IS ALL YOU DESIRE." 1.8>>
<<shinyText "<<=setup.getNpcName('npc_barista', 'nickname')>> drop for cock." 2.0>>
<br>
Your last sight is <<=setup.getNpcName('npc_boss', 'formal')>> staring back at you. Smiling in triumph.<br>
<br>
<<shinyText "Good girl <<=setup.getNpcName('npc_barista', 'nickname')>>." 0.0>>
<<shinyText "YOU LIVE TO OBEY." 0.3>>
<<shinyText "Now... Good girls drop for cock <<=setup.getNpcName('npc_barista', 'nickname')>>." 0.5>>
<<shinyText "YOU ARE A BIMBO SLUT." 0.8>>
<<shinyText "Good girls drop for cock <<=setup.getNpcName('npc_barista', 'nickname')>>." 1.0>>
<<shinyText "SUBMISSION IS YOUR DUTY." 1.3>>
<<shinyText "You're a good girl." 1.5>>
<<shinyText "SEX IS ALL YOU DESIRE." 1.8>>
<<shinyText "<<=setup.getNpcName('npc_barista', 'nickname')>> drop for cock." 2.0>>
<br>
[<<moveTo "event_barista_cure_root" "Back to the ring of statues." 1800>>]
</div>/*#
#desc: barista dressed for bed with psychiatrist
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You approach a frozen copy of <<=setup.getNpcName('npc_barista', 'nickname')>> dressed for the bedroom — her hair flowing down her shoulders, red lacy lingerie complementing a playful smile and come hither bedroom eyes.<br>
<br>
[<<moveTo "event_barista_cure_psychiatrist_2" "Touch her." 1800>>]<br>
[<<moveTo "event_barista_cure_root" "Look at one of the other statues." 1800>>]
</div>/*#
#desc: barista meets psychiatrist at party
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_party.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You are at a fancy party, your racy lingerie concealed beneath an equally sleek and sexy dress. You sip your champagne and lean against a balcony as you look down at your fellow managers. Simpletons, mostly, tools for your use, all. Looking across at <<=setup.getNpcName("npc_boss","formal")>> your thoughts swirl. <<He npc_boss>> is the target, the head of the company, usurping <<him npc_boss>> your long-term goal... you smile as <<he npc_boss>> carouses, noting the barely concealed looks of disgust on the people <<he npc_boss>> is talking to. Yes, <<he npc_boss>> has allies, but few friends, you just need to find the right leverage to send <<him npc_boss>> tumbling down from <<his npc_boss>> foreboding office at the top of the building...<br>
<br>
Distracted by your thoughts you are startled by someone leaning against the railing next to you. "@@.npc_psychiatrist;You look as sick of this game as I am.@@"<br>
<br>
You look over to see one of the new scientists. Although quite young you understand that she is equally brilliant, already making strides in some of the company's mental adjustment projects. You smile back and raise your glass to her. You note how she is posed, her long black outfit that looks somewhere between a coat and a dress, one leg exposed to show off her high boots...<br>
<br>
[<<moveTo "event_barista_cure_psychiatrist_3" "Hit on her." 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "Take another sip of your drink." 1800>>]
</div>/*#
#desc: barista picks up psychiatrist
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.history.psychiatrist = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lingerie")>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;What do you say about heading back to my office, unless you'd rather keep watching the management team verbally circle jerk each other as they get drunk.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;I heard you were a woman who knew what she wanted... that sounds wonderful, and far more interesting than... this.@@"<br>
<br>
The two of you barely keep your hands off each other as far as the elevator. No sooner have the doors closed than you're pulling her in, lips pressed close as you grind against her leg. Stumbling into your office she manages to push you onto your desk and you smile up at her, grinning even wider when she sheds her coat and reveals a small, but delightfully lovely, <<getWordPenis false>>.<br>
<br>
It is merely a matter of parting your skirt and pulling your lace panties to one side before she enters you. "@@.npc_barista;You're wonderful,@@" you gasp, and mean it — she may be small compared to some of the size-queen joys you are accustomed but she moves with more skill than just about any <<man>> you have slept with — and you have slept with A LOT.<br>
<br>
The two of you kiss passionately, moving back and forth between animalistic fucking and passionate making love. You've never had a partner quite like her before and you go at it to the point of exhaustion before collapsing together on the couch in your office.<br>
<br>
"@@.npc_psychiatrist;Wow... I had heard that you were the sort who always took what she wanted but... I never imagined that energy would be so arousing.@@"<br>
<br>
You smile back, talking long into the night. Maybe it is her skills as a therapist but there is just something about her that has you want to open up... not to brag or manipulate but because she seems to be genuinely not just interested, but in awe of you and your sexually charged, aggressive approach to life.<br>
<br>
At the same time there is something about this woman, not just the way she seems to instantly "get" you and appreciate your unique brand of passion, but that you recognise a kindred spirit in a woman, despite her title, already far ahead of her peers — but ambitious enough to change that.<br>
<br>
As morning dawns you finally part, but not before scheduling her to meet you for a few "in-office" visits later in the week. Standing in only your lingerie you look out the window at the morning sun. The world dissolves to pink as the light creeps towards you...<br>
<br>
[<<moveTo "event_barista_cure_root" "Back to the ring of statues." 1800>>]
</div>/*#
#desc: barista dressed as gamer
#status: RELEASED 0.8.4.0
#ignore_spell: t
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You approach a frozen copy of <<=setup.getNpcName('npc_barista', 'nickname')>> in "casual" mode — wearing jeans and a T-shirt that would almost be more appropriate on <<=setup.getNpcName('npc_technician', 'first')>>... though the pair of D20's and the underlying "yeah, they're natural" better matches <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> rack than <<=ps(setup.getNpcName('npc_technician', 'first'))>> more modest chest.<br>
<br>
[<<moveTo "event_barista_cure_gaming_2" "Touch her." 1800>>]<br>
[<<moveTo "event_barista_cure_root" "Look at one of the other statues." 1800>>]
</div>/*#
#desc: barista attends gaming group
#status: RELEASED 0.8.4.0
#ignore_spell: t
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_elevator.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You are riding up a slightly dingy elevator. Next to you stands <<=setup.getNpcName('npc_technician', 'first')>> who keeps glancing at you with concern. In your reflection in the steel door of the elevator you can see you are dressed in rumpled business attire. New and pressed it probably costs as much as your rent but right now it looks like you slept in it, and then some.<br>
<br>
Your mind is fuzzy and you find it almost impossible to focus on anything, even stumbling slightly as you try to walk out of the elevator, so distracted you find walking in high heels a challenge for the first time in years.<br>
<br>
"@@.npc_technician;Heels, am I right?@@" Says as she lends you a hand. "@@.npc_technician;The company policy on them is so silly, and it looks like you're wearing even worse ones than I am!@@"<br>
<br>
You mumble a thanks as she helps you up the hall into her apartment, easing you down into a chair and then fetching a drink.<br>
<br>
The water tastes good and you sigh, still struggling to fight through the fog clouding your mind. "@@.npc_technician;Feeling a bit better? Would you like something to wear? Your outfit has, well... seen better days, shall we say? I can loan you a change of clothes, if you'd like?@@"<br>
<br>
You nod, still fighting a war in your head against the idea that a sexy maid outfit is "correct" for you to wear. <<=setup.getNpcName('npc_technician', 'first')>> smiles and brings out a pair of jeans and a T-shirt. Without even considering that she's still in the room you strip and change as she hurriedly looks away. "@@.npc_technician;Woah! Guess I was right that you wanted to change, didn't mean to peek, I, like, totally was planning on giving you privacy and such.@@"<br>
<br>
"@@.npc_barista;It's fine!@@" You reply, your voice bubbly and light, with none of the authority you are used to injecting into it.<br>
<br>
The jeans are fine, if not quite your size, but the shirt is weird — you can't recall the last time you wore something this casual and borderline frumpy. The "Yeah, They're Natural" under a pair of oversized D20's? This doesn't seem you at all, you're not a gamer, right? You're one of the cool kids... too busy with your career for fun other than sex... and most of that was business too. You wince, trying to think about "who you are" hurts your brain and you stop, hoping that this ache is just a temporary thing, though fearing that it is not.<br>
<br>
"@@.npc_technician;Damn, I'm kinda jealous how much better you fill that out than I do.@@" <<=setup.getNpcName('npc_technician', 'first')>> says with a smile and a gesture to her A-cups.<br>
<br>
You adjust yourself, you think you feel bigger... maybe? You've always had a stellar rack but your breasts feel different, more sensitive... maybe it's just that you don't have a bra? Thinking continues to be a struggle as you utterly fail to bring to mind anything of what happened much before the elevator ride up to this tiny flat.<br>
<br>
There is a knock on the door and <<=setup.getNpcName('npc_technician', 'first')>> jumps up. "@@.npc_technician;That must be the girls, as I told you before tonight's game-night... you cool with playing? I've got a pre-roll somewhere for you I'm sure... or I can cancel things if you're not up to it. I know it sounds a bit crazy but I think a distraction might do you good.@@"<br>
<br>
You feel strange, as if this level of kindness should make you suspicious? Unfortunately that thought causes the pink fog to descend over your thoughts and you fail to remember what happened in your past to have you feeling so paranoid...<br>
<br>
[<<moveTo "event_barista_cure_gaming_3" "Say sure, you'll try to play." 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "Say that, actually, you need to go." 1800>>]
</div>/*#
#desc: barista attends gaming group
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.history.gamer = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> smiles at you and gets the door. A trio of people walk in — a gothy looking girl, a metal-head <<if $npc_rpg_dude.fem>>girl<<else>>dude<</if>> that you can almost immediately guess is her <<boy npc_rpg_dude>>friend and a larger woman dressed in a maid outfit.<br>
<br>
"@@.npc_technician;Hey, so we have a new player today — <<=setup.getNpcName('npc_barista', 'nickname')>>. <<=setup.getNpcName('npc_barista', 'nickname')>>, this is <<=setup.getNpcName('npc_rpg_warlock', 'first')>>, <<=setup.getNpcName('npc_rpg_dude', 'first')>>, and <<=setup.getNpcName('npc_maid', 'first')>>@@"<br>
<br>
You exchange greetings as everyone takes a seat.<br>
<br>
"@@.npc_rpg_warlock;First time?@@" <<=setup.getNpcName('npc_rpg_warlock', 'first')>> asks as she sits down next to you on the couch, with <<=setup.getNpcName('npc_rpg_dude', 'first')>> on the other side. "@@.npc_rpg_warlock;Don't worry about a thing, you got any questions, just ask, and most of all, have fun!@@"<br>
<br>
You nod as <<=setup.getNpcName('npc_technician', 'first')>> hands you a character sheet. Under class it lists "Atlantean Priestess." <br>
<br>
"@@.npc_technician;Alright, so picking up from last time everyone looks to have survived the earthquake but you see a woman trapped under some rubble nearby.@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> elbows you. "@@.npc_rpg_warlock;That's you, hon.@@"<br>
<br>
The group works together to free you from the rubble and you join the party for an exciting romp as you try to flee to safety amidst continuing disaster. You don't do much in game (though what you DO do would match more to a priestess of lust and prostitution than whatever faith the Atlantean's hold) but you feel a strange warmth, an instant camaraderie with these people you are certain had never met you before this evening. The game ends as the party piles into a boat just as the waters rise to swallow the island and you look around. Thinking remains a struggle but... if you were to pick a group to be stuck on a boat with in unknown waters... you feel like you could do a lot worse than the jovial friends around you.<br>
<br>
"@@.npc_technician;Hey, so, I've got an early day tomorrow — another software migration and you know how THOSE go,@@" <<=setup.getNpcName('npc_technician', 'first')>> explains. As she speaks you suddenly remember what you think is your home address. Thanking everyone for letting you play you join the exodus only for <<=setup.getNpcName('npc_technician', 'first')>> to rush up the hall after you with your rumpled business clothing in hand.<br>
<br>
"@@.npc_technician;Hey! You almost forgot this!@@" She calls out, catching you just before you board the elevator.<br>
<br>
"@@.npc_barista;Thanks,@@" you reply and <<=setup.getNpcName('npc_technician', 'first')>> smiles, even blushing slightly.<br>
<br>
"@@.npc_technician;And you can go ahead and keep what you're wearing — you look way better in it than I do, anyway.@@"<br>
<br>
"@@.npc_barista;Thanks!@@" you reply, giving her a hug before hopping into the elevator. The whole time you have a weird thought of <<=setup.getNpcName('npc_maid', 'first')>> bending you over and fucking your brains out... a thought that has you VERY aware of the fact that neither your original clothing nor the one <<=setup.getNpcName('npc_technician', 'first')>> gifted you came with panties.<br>
<br>
You hop in an auto-cab and give what you recall is your address only to tell <<him>> to stop as you pass a bar. "The Usual Place" you read as you head in... cheesy name but all you're looking for is a <<if !$options.fem>>guy or <</if>>gal, or two... or three, to fuck your brains out and from the look of things inside you should have no problems there...<br>
<br>
You approach the bar to wait for someone to buy you a drink as the memory fades.<br>
<br>
[<<moveTo "event_barista_cure_root" "Back to the ring of statues." 1800>>]
</div>/*#
#desc: barista dressed naked
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You approach a frozen copy of <<=setup.getNpcName('npc_barista', 'nickname')>> standing naked.<br>
<br>
[<<moveTo "event_barista_cure_punishment_2" "Touch her." 1800>>]<br>
[<<moveTo "event_barista_cure_root" "Look at one of the other statues." 1800>>]
</div>/*#
#desc: barista tries to hold onto self by writing
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png">>
<div id="invframe" class="scrolltext">
Your hand trembles slightly as you write a note to yourself — "@@.npc_barista;my name is <<=setup.getNpcName('npc_barista', 'full')>>. I am NOT a bimbo, I can resist...@@"<br>
<br>
You let out a held breath. Just the act of writing requires fighting against the pink fog that fills your mind, the words not a particular battle to put to page, though reading the message seems to help. Between your frequent treatments and the certainly drugged candy you find yourself constantly eating you are left with only hazy memories of a time before, but you cling to them, the words on the page re-enforcing that they are important, that you are more than what you currently seem to be...<br>
<br>
You take a deep breath and tighten your grip on the pen as you prepare to write another line; thankful that <<=setup.getNpcName('npc_manager', 'other')>> left it behind... and wondering if it was an accident, or on purpose. Either way, bridging the gaps in your thoughts with notes feels like your only life-line, and you begin to write another affirmation.<br>
<br>
[<<moveTo "event_barista_cure_punishment_3" "A shadow falls over the page." 180>>]
</div>/*#
#desc: barista caught writing
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You are singularly focused on writing another line as a shadow falls over you.<br>
<br>
"@@.npc_rival;What is this?@@"<br>
<br>
A <<if !$npc_rival.fem>>masculine <</if>>hand reaches down to snatch away your notes, you gasp in shock as you look up to see <<=setup.getNpcName('npc_rival', 'formal')>> standing over you. You watch <<his npc_rival>> eyes scan back and forth as <<he npc_rival>> reads your words. Your face filled with fear you fight a mental war between the urge to submit, and a deep abiding hatred for this <<man npc_rival>>; between an underlying knowledge that <<he npc_rival>> is weak and stupid and beneath you... and a cloud of doubt that says that you are the one who is weak and dumb and meant to be submissive.<br>
<br>
Your spinning thoughts are interrupted by the sharp sting of <<his npc_rival>> hand slapping the side of your face. "@@.npc_rival;I asked you a question, you dumb <<if $fetish.slurs>>bitch<<else>>slut<</if>>. Why are you writing these lies?@@"<br>
<br>
[<<moveTo "event_barista_cure_punishment_4" "You cannot think of what to say." 600>>]<br>
[<<moveTo "event_barista_cure_wrong" "They aren't lies!" 1800>>]
</div>/*#
#desc: barista punished for writing
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You stare up in a daze, your lips opening... but no words come out. <<=setup.getNpcName('npc_rival', 'formal')>> sneers as <<he npc_rival>> snatches the pen from your fingers. "@@.npc_rival;Who gave you this? A slut like you — a pen is not what you need, but instead, a penis!@@"<br>
<br>
Without any effort at foreplay <<=setup.getNpcName('npc_rival', 'formal')>> unzips <<his npc_rival>> pants and jams <<his npc_rival>> <<getWordPenis "npc_rival">> between your lips. The fog deepens, <<his npc_rival>> <<getWordPenis "npc_rival">> seeming to push away your fragmented thoughts of rebellion as you reflexively bob obediently.<br>
<br>
With each suck your racing heart begins to calm, the cloud creeping back in as your mind rationalises away that it's easier this way. Easier to obey. You hear <<=setup.getNpcName('npc_rival', 'formal')>> make a phonecall, <<his npc_rival>> only acknowledgement of your efforts a hand firmly placed on your head, dismissive, as if you were more an appliance than a person...<br>
<br>
"@@.npc_rival;Yes, I caught her rebelling again... no, I took care of it, but perhaps?... okay, I will wait.@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> hangs up, without relaying any details from your one-sided hearing of <<his npc_rival>> conversation.<br>
<br>
[<<moveTo "event_barista_cure_punishment_5" "Keep sucking." 600>>]<br>
[<<moveTo "event_barista_cure_wrong" "Resist, you are not a bimbo slave!" 1800>>]
</div>/*#
#desc: barista finishes enduring her punishment
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_rival") setup.charImage("npc_boss") setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You've just finished sucking a grunting orgasm from <<=ps(setup.getNpcName('npc_rival', 'formal'))>> <<getWordPenis "npc_rival">> when you hear the door to the cafe open, looking over to see <<=setup.getNpcName('npc_work_doctor', 'formal')>> and <<=setup.getNpcName('npc_boss', 'formal')>> walk in...<br>
<br>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> looks all business as <<he npc_work_doctor>> unpacks <<his npc_work_doctor>> doctor's satchel... while <<=setup.getNpcName('npc_boss', 'formal')>> grins cruelly down at you.<br>
<br>
"@@.npc_boss;Misbehaving again? All this resistance does is make things harder on you... come on, crawl over here and apologise... and I may show leniency.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_boss', 'formal'))>> presence is an almost irresistible aura of dominance, <<his npc_boss>> voice further squelching that splinter of self... you hesitate, unable to break <<his npc_boss>> gaze, only to feel the prick of a needle as <<=setup.getNpcName('npc_work_doctor', 'formal')>> sends an even stronger wave of lusty obedience coursing through your veins.<br>
<br>
[<<moveTo "event_barista_cure_punishment_6" "Yes, <<Master npc_boss>>..." 600>>]<br>
[<<moveTo "event_barista_cure_wrong" "No..." 1800>>]
</div>/*#
#desc: barista finishes embraces her punishment
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.history.naked = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_rival") setup.charImage("npc_boss") setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
Resistance is foolish... and futile. With a ditzy grin you crawl over, lovingly revealing <<=ps(setup.getNpcName('npc_boss', 'formal'))>> magnificence and sucking on it with passion. Your hips are lifted as <<=setup.getNpcName('npc_work_doctor', 'formal')>> takes you from the opposite direction, each thrust chasing away thought and re-energising you. Your heart races again, not with fear, but with lust. This is what you live for. To be a cock-sleeve, to serve <<getWordPenis>>, to offer yourself to your betters.<br>
<br>
Far, far away that imprisoned sliver of <<=setup.getNpcName('npc_barista', 'first')>> screams. You hate these <<if $npc_boss.fem == $npc_work_doctor.fem && $npc_work_doctor.fem == $npc_rival.fem>><<men npc_rival>><<else>>people<</if>>, what they've done to you... and yet you cannot resist embracing it, your mind shackled, your body drugged to obedience... and the feel of their cocks an addictive compulsion...<br>
<br>
You hear the sound of crumpling paper as <<=setup.getNpcName('npc_rival', 'formal')>> throws away your note, and with it that message you had tried to cling to.<br>
<br>
Your name is <<=setup.getNpcName('npc_barista', 'nickname')>>; you are a bimbo, you can only obey...<br>
<br>
The memory fades, as you embrace the hell that you have been taught to believe is actually heaven...<br>
<br>
[<<moveTo "event_barista_cure_root" "Back to the ring of statues." 1800>>]
</div>/*#
#desc: barista dressed as maid
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You approach a frozen copy of <<=setup.getNpcName('npc_barista', 'nickname')>> in her by now familiar latex maid's outfit.<br>
<br>
[<<moveTo "event_barista_cure_maid_2" "Touch her." 1800>>]<br>
[<<moveTo "event_barista_cure_root" "Look at one of the other statues." 1800>>]
</div>/*#
#desc: re-experience barista giving you message in bathroom
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You are staring into a mirror as you re-apply your lipstick, your bimbo-riffic face and latex maid outfit looking back at you. You find yourself transfixed by your reflection, something's wrong but you can't think what. You try to remember what your therapist said, she is so nice, and she makes you so happy... yet you can never seem to remember anything about your session except...<br>
<br>
That's it! Your head hurts thinking of it but... she told you something, gave you a password, said it was important...<br>
<br>
You squeeze your head, so many thoughts at once make you feel like you are about to explode. Why can't you write anything down? Writing things down used to help but they stole all your pens, told you that you didn't need them, that all you needed was penis...<br>
<br>
<<printThought "Yes, penis, more penis, always penis...">><br>
<br>
You start to drool, the thought of penis in your hand, in your mouth, ravishing you, pounding into your holes yes, more, more, you want it you need it you—!<br>
<br>
You freeze, surprised that your arm is extended, writing something on the mirror with your lipstick, it looks like the start of a file path?<br>
<br>
[<<moveTo "event_barista_cure_maid_3" "Keep writing." 1800>>]<br>
[<<moveTo "event_barista_cure_wrong" "This is too painful, run away!" 1800>>]
</div>/*#
#desc: barista finishes giving you message in bathroom
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.history.maid = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You grit your teeth and keep writing, dredging up the memory of what <<=setup.getNpcName("npc_psychiatrist","formal")>> told you. A file path, yes and then... a fish? Yes, a fish, a fish with a pointed nose...<br>
<br>
Trying to catch your breath you stare at what you have done, it makes no more sense than before but it seems important? You don't know, thinking is so hard, why can't you stop, being fucked is better, you don't need thoughts, just cock, more cock...<br>
<br>
You are startled from your reverie by someone else entering the bathroom. It's <<=$player.first_name>>, <<=ps(setup.getNpcName("npc_manager","other"))>> poor secretary... who you suddenly realise is also part of <<=ps(setup.getNpcName("npc_technician","first"))>> RPG group? That seems weird, but <<=setup.getNpcName("npc_technician","first")>> is so nice, and she has such a nice cock... you want some cock right now, maybe <<=$player.first_name>> can help you find some cock?<br>
<br>
"@@.npc_barista;Hiya!@@" you say in greeting, putting the final touches on your makeup.<br>
<br>
<<printThought "Who wrote on the mirror? That's so weird!">><br>
<br>
As you leave the bathroom <<=$player.first_name>> asks you what you're doing. Your thoughts become scattered, responding on instinct. "@@.npc_barista;Just my makeup! It's so much fun to get it ruined, but then so much work to fix it!@@"<br>
<br>
You hurry out of the bathroom and back to the cafe. You need a nice stiff cock, er cup of coffee, or both, yes, coffee and cock, that's definitely what you need...<br>
<br>
You wince as the memory comes to a close, the headache <<=setup.getNpcName("npc_barista","nickname")>> got from thinking against her blocks still lingering in your mind as the rest of the memory fades.<br>
<br>
[<<moveTo "event_barista_cure_root" "Back to the ring of statues." 1800>>]
</div>/*#
#desc: prepare to awaken barista
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You approach the figure in the centre of the circle. The hazy shape rotates until you find yourself face to face with a naked <<=setup.getNpcName('npc_barista', 'nickname')>> she blinks at you and asks a single question — "@@.npc_barista;Who am I?@@"<br>
<br>
You think, trying to come up with an appropriate answer for this question... and then you wake up.<br>
<br>
[<<moveTo "event_barista_cure_reassemble_2" "Continue." 60>>]
</div>/*#
#desc: intermission with psychiatrist before curing barista
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.intermission = true>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You blink as your restraints click open, your attention immediately drawing to the noise coming from the chair next to you.<br>
<br>
Your jaw drops at the overload that is currently being "administered" to <<=setup.getNpcName('npc_barista', 'nickname')>>. Three arm-mounted auto-lubricating dildos are thrusting into her — one each in her ass, cunt and mouth, from the stroke length and the way her throat bulges at each thrust they are neither narrow, nor short. A fourth arm presses a wand vibrator against her clit while a pair of breast cups are sucking hard with additional nipple vibrators buzzing away inside.<br>
<br>
Pushing things even further there are at least a dozen patches scattered across her body wired back to a TENS unit, her body constantly twitching against its bonds at what the meters indicate are maxed-out shocks.<br>
<br>
Placing your VR visor to one side <<=setup.getNpcName('npc_psychiatrist', 'formal')>> addresses your concerns.<br>
<br>
"@@.npc_psychiatrist;With each step you took in unlocking her memory it requires more stimulation to hold back her programming, to keep the procedures embedded into her from re-asserting themselves.@@"<br>
<br>
Walking over to the overloaded woman <<=setup.getNpcName('npc_psychiatrist', 'formal')>> gently brushes a sweaty chunk of hair back into place. "@@.npc_psychiatrist;We're so close but this is the only way. Get some rest. She will be ready for you in an hour or so — relax, and prepare to take the final step to restore her.@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks up at you as you suddenly realise how stressed and tired she must be from monitoring the two of you this whole time. "@@.npc_psychiatrist;You will only get one shot at this — once things are locked in I will, in layman's terms, reboot her mind to flush away the external programming, but the result is that whatever state she is fixed in from there, well... that is what she will forever onward be. If there is anything you think you might have missed, consider it while you rest up.@@"<br>
<br>
<<if !$scene.ask>>
[<<moveTo "event_barista_cure_reassemble_2_ask_psyc" 'Ask what <<=setup.getNpcName("npc_barista","nickname")>> REALLY means to her.' 600 "<<set $scene.ask=true>>">>]<br>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'npc_technician_theme_rpg_barista')>>
<<if _themeId == -1 || !$npc_technician.themes.rpg[_themeId].done>>
[<<moveTo "event_barista_cure_reassemble_2_ask_tech" 'Maybe <<=setup.getNpcName("npc_technician", "first")>> could tell you something else about your mutual friend?' 600>>]<br>
<</if>>
[<<moveTo "event_barista_cure_reassemble_3" 'Rest up for your final trip into <<=ps(setup.getNpcName("npc_barista","nickname"))>> mind.' 600>>]
</div>/*#
#desc: intermission with psychiatrist before curing barista
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.intermission = true>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wake up from the virtual world to see <<=setup.getNpcName('npc_psychiatrist', 'formal')>> standing over you. "@@.npc_psychiatrist;Is something the matter? Can I get you anything?@@"<br>
<br>
She hands you a glass of water and you sip at it gratefully.<br>
<br>
<<if !$scene.ask>>
[<<moveTo "event_barista_cure_reassemble_2_ask_psyc" 'Ask what <<=setup.getNpcName("npc_barista","nickname")>> REALLY means to her.' 600 "<<set $scene.ask=true>>">>]<br>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'npc_technician_theme_rpg_barista')>>
<<if _themeId == -1 || !$npc_technician.themes.rpg[_themeId].done>>
[<<moveTo "event_barista_cure_reassemble_2_ask_tech" 'Maybe <<=setup.getNpcName("npc_technician", "first")>> could tell you something else about your mutual friend?' 600>>]<br>
<</if>>
[<<moveTo "event_barista_cure_reassemble_3" 'Head back into <<=ps(setup.getNpcName("npc_barista","nickname"))>> mind.' 180>>]
</div>/*#
#desc: ask psychiatrist about her relationship with barista
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.ask = true>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_psychiatrist', 'formal')>> why she seems to care so much about <<=setup.getNpcName("npc_barista","nickname")>>... especially given that she seems at least partially responsible, and you would imagine from her therapy, at least somewhat appreciative, of the slutty bimbo's current state.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> looks back at you for a long moment as the pumping of sex machines makes for the only sound. Finally she reaches down and makes an adjustment on her control board before nodding to you.<br>
<br>
"@@.npc_psychiatrist;Heh... it seems so weird to speak it aloud, I've gotten so used to hiding things, and maybe I was a little afraid of jinxing it? No... best for you to have as much information as possible to maximise your chance of success.@@" She tries to smile, though it comes off more of a tired grimace.<br>
<br>
"@@.npc_psychiatrist;The short version is that we were lovers. Not in the sense that <<=setup.getNpcName('npc_barista', 'first')>> will fuck just about anything, but deeper than that. I admired her intelligence and her free embrace of passion and she... well, if we are being completely honest it's possible she saw me as merely another cog in her plans, but I like to think not, that we really did share something more.@@" She seems wistfully lost in thought as she looks down at the oblivious bimbo being pounded and stimulated from nearly every direction.<br>
<br>
"@@.npc_psychiatrist;Sorry, I need to keep focused. Unfortunately, when it comes to the company, those sorts of connections are a liability. I did everything I could to protect my love and the price is that I became one of her jailers. Hopefully, this weekend will mark the end of that... and maybe she can even find it in herself to forgive me.@@"<br>
<br>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'npc_technician_theme_rpg_barista')>>
<<if _themeId == -1 || !$npc_technician.themes.rpg[_themeId].done>>
[<<moveTo "event_barista_cure_reassemble_2_ask_tech" 'Maybe <<=setup.getNpcName("npc_technician", "first")>> could tell you something else about your mutual friend?' 600>>]<br>
<</if>>
[<<moveTo "event_barista_cure_reassemble_3" 'Rest up for your final trip into <<=ps(setup.getNpcName("npc_barista","nickname"))>> mind.' 600>>]
</div>/*#
#desc: call technician to ask her about barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'npc_technician_theme_rpg_barista')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'rpg' 'npc_technician_theme_rpg_barista'
0
'theme_technician_barista'
false
>>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'npc_technician_theme_rpg_barista')>>
<</if>>
<<set $npc_technician.themes.rpg[_themeId].done = true>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> if you could make a phonecall and she nods, directing you to another room insulated where the signal isn't blocked.<br>
<br>
You close the door for a bit of privacy and so that you can hear something other than the cacophony of constant fucking being "administered" to <<=setup.getNpcName('npc_barista', 'nickname')>> and give your friend <<=setup.getNpcName("npc_technician", "first")>> a call.<br>
<br>
"@@.npc_technician;Hey, what's happening? Are things going okay with... you know, the thing?@@"<br>
<br>
You reply that things are fine, and then you ask how she met <<=setup.getNpcName("npc_technician", "first")>> in the first place.<br>
<br>
"@@.npc_technician;Huh, yeah, guess we've never talked about it. Well, her story is kind of a weird coincidence, really. See, I was on my way out of the office and she was just standing in the elevator with this weird, dazed look on her face. It was kind of odd because her outfit was like... well, it wasn't like what she wears now. I mean, yes, it was attractive but it was of the sort of "more than I, personally, spend on rent" business formal, though a bit, like, rumpled? Like she'd slept in it or something.@@"<br>
<br>
You suddenly have a very good idea where this is going.<br>
<br>
"@@.npc_technician;Anyway, she was looking kind of out of it and so I asked her if she was okay, was she trying to go somewhere? It was like she noticed me for the first time and she just kind of slurred "can I come with you?" I was a bit concerned but, well, this was back when I ran a casual game night on Fridays after work so I thought hey, maybe she'd like to join? So I asked her if she liked Role Playing Games and she got this weird expression and then nodded and said something like "I... like role playing? Yeah..."@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> shrugs at your concerned expression. "@@.npc_technician;Okay, yeah, I probably should have found her a doctor or something but... I'd been thinking about the game I was gonna run all day and was kind of distracted, and she seemed happy to come with me. Then we started playing and sure, she was... you know... <<=setup.getNpcName("npc_barista","nickname")>>, but she like, lit up and seemed really happy. And not just the way she always ACTS happy but, like... actually happy. After that, well... she just kind of became a fixture of the group. We've tried asking about her past but she just shrugs and says something about "not wanting to talk about her old job." After a while we just kind of dropped it. I mean, we're getting together to fantasise about exploring totally made up worlds, why force her to talk about the boring old real one if she doesn't want to? I guess maybe we'll find out soon? But if not, well, that's her choice, right?@@"<br>
<br>
<<if !$scene.ask>>
[<<moveTo "event_barista_cure_reassemble_2_ask_psyc" 'Ask what <<=setup.getNpcName("npc_barista","nickname")>> REALLY means to her.' 600 "<<set $scene.ask=true>><<set $currentcall = false>>">>]<br>
<</if>>
[<<moveTo "event_barista_cure_reassemble_3" 'Rest up for your final trip into <<=ps(setup.getNpcName("npc_barista","nickname"))>> mind.' 600 "<<set $currentcall = false>>">>]
</div>/*#
#desc: order barista's memories
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist","formal")>> lets you know it is time, helping strap you back in to the chair as <<=setup.getNpcName("npc_barista","nickname")>> appears to be getting fucked, shocked and vibed at an even higher intensity.<br>
<br>
"@@.npc_psychiatrist;Good luck.@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> whispers as she brings the visor over your head and you are plunged back into dreamscape.<br>
<br>
<<if $npc_barista.flags.history.university && $npc_barista.flags.history.job && $npc_barista.flags.history.company && $npc_barista.flags.history.caught && $npc_barista.flags.history.maid && $npc_barista.flags.history.psychiatrist && $npc_barista.flags.history.gamer>>
[<<moveTo "event_barista_cure_reassemble_4" "Continue." 600 "<<set $scene.blind=false>>">>]
<<else>>
[<<moveTo "event_barista_cure_root" "Continue." 180>>]
<</if>>
</div>/*#
#desc: order barista's memories
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.history.final = true>>
<<set $scene.candyPuzzle = true>>
<<set $scene.choice = setup.getCandyPuzzleArray()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
<<if $scene.blind>>
<<renderCandyPuzzleBlind>>
<<link "Switch to standard mode.">><<set $scene.blind = false>><<=Engine.play("event_barista_cure_reassemble_4", true)>><</link>>
<<else>>
<<renderCandyPuzzle>>
<<link "Switch to vision accessibility mode.">><<set $scene.blind = true>><<=Engine.play("event_barista_cure_reassemble_4", true)>><</link>>
<</if>>
<br>
The figures that surrounding the two of you float off the ground.<br>
<br>
<<printThought "Hmm, maybe if I re-constructed her past in order?">><br>
<br>
[<<moveTo "event_barista_cure_final_choice_1" "Confirm your selection." 600>>]<br>
[<<moveTo "event_barista_cure_root" "Step away and review her memories some more." 600>>]
</div>/*#
#desc: face off with barista
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.choice[0] == 1 && $scene.choice[1] == 2 && $scene.choice[2] == 3 && $scene.choice[3] == 4 && $scene.choice[4] == 5 && $scene.choice[5] == 6 && $scene.choice[6] == 7 && $scene.choice[7] == 8>>
<<set $scene.result = "full">>
<<elseif $scene.choice[0] == 1 && $scene.choice[1] == 2 && $scene.choice[2] == 3 && $scene.choice[3] == 4 && $scene.choice[4] == 5 && $scene.choice[5] == 7 && $scene.choice[6] == 8>>
<<set $scene.result = "psych">>
<<elseif $scene.choice[0] == 1 && $scene.choice[1] == 2 && $scene.choice[2] == 3 && $scene.choice[3] == 5 && $scene.choice[4] == 6 && $scene.choice[5] == 7 && $scene.choice[6] == 8>>
<<set $scene.result = "tech">>
<<elseif $scene.choice[0] == 1 && $scene.choice[1] == 2 && $scene.choice[2] == 3 && $scene.choice[3] == 5 && $scene.choice[4] == 7 && $scene.choice[5] == 8>>
<<set $scene.result = "partial">>
<<elseif $scene.choice[0] == 1 || $scene.choice[1] == 2 || $scene.choice[2] == 3 || $scene.choice[3] == 4 ||
($scene.ask && $scene.choice[4] == 5) || (!$scene.ask && $scene.choice[4] == 6) ||
((!$scene.techMem || !$scene.ask) && $scene.choice[5] == 7) || ($scene.techMem && $scene.ask && $scene.choice[5] == 6) || (!$scene.techMem && !$scene.ask) ||
$scene.choice[6] == 7 || $scene.choice[7] == 8>>
<<set $scene.result = "fail">>
<<else>>
<<set $scene.result = "total_fail">>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
Having finished "ordering" her memories you watch the statues of <<=setup.getNpcName('npc_barista', 'nickname')>> one by one float into the centre. With each one her form becomes more distinct, shifting from outfit to outfit until
<<if ["full", "psych", "tech", "partial"].includes($scene.result)>>
you are facing a strange hybrid. On one side is the <<=setup.getNpcName('npc_barista', 'nickname')>> you have always known, the bimbo barista latex maid, but her other half is all business, <<=setup.getNpcName('npc_barista', 'Ms.')>>; the ruthless corporate shark.<br>
<br>
<<if $scene.result != "full">>
<<printThought "Something feels off... the order is right, but I feel like I'm missing a piece of the puzzle...">><br>
<br>
<</if>>
[<<moveTo "event_barista_cure_final_choice_2" 'Choose <<=setup.getNpcName("npc_barista", "nickname")>>.' 600 "<<set $scene.choice='bimbo'>>">>]<br>
[<<moveTo "event_barista_cure_final_choice_2" 'Choose <<=setup.getNpcName("npc_barista", "formal")>>.' 600 "<<set $scene.choice='evil'>>">>]<br>
<<if $scene.result == "full">>
[<<moveTo "event_barista_cure_final_choice_2" 'This is wrong, <<=setup.getNpcName("npc_barista", "first")>> is more than two extremes.' 600 "<<set $scene.choice='good'>>">>]<br>
<</if>>
<br>
<<else>>
<<if $scene.result == "total_fail">>
things seem to go totally haywire, <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> outfit flickering and glitching as she seems to constantly twitch.<br>
<br>
<<printThought "This seems catastrophically incorrect...">>
<<else>>
you are back where it all started. Dressed as a latex maid she grins at you like that first day at work.<br>
<br>
"@@.npc_barista;Hiya <<=$player.first_name>>! Is it time to go?@@"<br>
<br>
<<printThought "Hmm, this doesn't seem like what <<=setup.getNpcName('npc_psychiatrist','formal')>> was intending...">>
<</if>>
<br><br>
[<<moveTo "event_barista_cure_final_choice_2" "Confirm your selection." 600 "<<set $scene.choice='bimbo'>>">>]<br>
<</if>>
[<<moveTo "event_barista_cure_root" "Go back and review her memories some more." 600>>]
</div>/*#
#desc: help barista make choice
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.rescue.cure = $scene.choice>>
<<if $npc_manager.flags.evil == 2>>
<<addWorkEvent "work_coffee_forced_stage5">>
<<addRandomEvent $randomEvents['work_coffee_shop'] 'stage5_barista'>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.choice>>
<<case 'good'>>
You take your friend by both hands and softly explain that she doesn't have to adhere to a binary. That she can exhibit all the intelligence and skills of <<=setup.getNpcName("npc_barista","first")>> while enjoying the exuberant lust for life of <<=setup.getNpcName("npc_barista","nickname")>>. You start to tear up as you explain that she doesn't have to be alone. That she has friends who love and support her. That she does not have to be beholden to the crimes of her past. That she can forge a new, better life and that you, and <<=setup.getNpcName("npc_psychiatrist","formal")>>, and <<=setup.getNpcName("npc_technician","first")>>, and <<=setup.getNpcName("npc_rpg_warlock","first")>>, and <<=setup.getNpcName("npc_rpg_dude","first")>>, and <<=setup.getNpcName("npc_maid","first")>> and whatever other friends she makes after will be there.<br>
<br>
<<=ps(setup.getNpcName("npc_barista","first"))>> hazy form coalesces, her expression clear and smiling — not the mindless smile of <<=setup.getNpcName("npc_barista","nickname")>> or the cruel smirk of <<=setup.getNpcName("npc_barista","first")>> but a happy, friendly smile.<br>
<br>
"@@.npc_barista;Thank you,@@" she whispers as she pulls you in for a kiss and everything goes white.<br>
<br>
[<<moveTo "event_barista_cure_good_1" "You wake up." 600>>]
<<case 'evil'>>
<<=setup.getNpcName("npc_barista","first")>> smiles back at you in a way that makes your panties wet as well as have you trembling in your proverbial boots. Trying to look her in the eye would give <<=setup.getNpcName("npc_manager","formal")>> a run for her money in the "casual dominance" department.<br>
<br>
She pulls you close and the world around you swirls as everything goes white...<br>
<br>
[<<moveTo "event_barista_cure_bad_end_1" "You wake up." 600>>]
<<case 'bimbo'>>
You smile back at <<=setup.getNpcName("npc_barista","nickname")>> and link hands. She smiles even wider, her exuberant glee spreading outward as a blinding light.<br>
<br>
[<<moveTo "event_barista_cure_bimbo" "You wake up." 600>>]
<<default>>
ERROR: unexpected scene.choice <<=$scene.choice>>
<</switch>>
</div>/*#
#desc: evil barista bad end
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_evil")>>
<div id="invframe" class="scrolltext">
You wake up, restraints unlocking as you sit up in your chair. You look to the side where <<=setup.getNpcName("npc_psychiatrist","formal")>> is hurriedly pulling away the sex machines and removing the restraints as <<=setup.getNpcName("npc_barista","nickname")>> blinks back to consciousness.<br>
<br>
"@@.npc_psychiatrist;Are you okay?@@" She breathlessly asks <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> looks up with a smile as she reaches out. "@@.npc_barista;Never better.@@"<br>
<br>
The two embrace... and then you notice <<=setup.getNpcName("npc_psychiatrist","formal")>> eyes drift close. <<=setup.getNpcName("npc_barista","nickname")>> releases her grasp, the therapist falling to the ground as <<=setup.getNpcName("npc_barista","nickname")>> drops one syringe and casually picks up another.<br>
<br>
"@@.npc_barista;Your turn, <<=$player.first_name>>. There is a new doctor in town and it is time for your medicine.@@"<br>
<br>
<<printThought "Oh shit, what have I done?">><br>
<br>
[<<moveTo "event_barista_cure_bad_end_2" "Run!" 300 "<<set $scene.fight=false>>">>]<br>
[<<moveTo "event_barista_cure_bad_end_2" "Fight!" 300 "<<set $scene.fight=true>>">>]
</div>/*#
#desc: evil barista bad end
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.fight>>
You try to fight but
<<if setup.getTotalValue("martial_arts") > 10>>
<<=setup.getNpcName("npc_barista","first")>> is fast... way too fast for anyone whose body has been through what hers has. You fight back with all your skill but then you feel the prick of a needle...
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
<<=setup.getNpcName("npc_barista","nickname")>> is too fast, doding your first swing and then pricking your with a needle.
<<else>>
you have no chance. <<=setup.getNpcName("npc_barista","nickname")>> dodges a clumsy swing and then pricks you with a needle.
<</if>>
<</if>>
<<else>>
You try to run but <<=setup.getNpcName("npc_barista","nickname")>> is fast, way faster than anyone whose body has been through what hers has should be. She corners you and slides the needle into your skin with a cruel smile.
<</if>>
Everything slows down and your body goes limp... yet you do not pass out.<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> whistles as she places you back on your chair, then does the same thing with <<=setup.getNpcName("npc_psychiatrist","formal")>>. Looking over you can see the fear in <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> expression as she lies frozen. With cruel glee <<=setup.getNpcName("npc_barista","first")>> places <<=setup.getNpcName("npc_psychiatrist","formal")>> in a similar position to where she had been before relocating the "spare" robotic dildo-arm to your side of things to shove it up your ass.<br>
<br>
[<<moveTo "event_barista_cure_bad_end_3" "Continue." 10000>>]
</div>/*#
#desc: evil barista bad end
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<if setup.changedRoom()>>
<<set $gameOver = 'evil_barista'>>
<</if>>
<<set $player.location to "">>
<<include playerMenuHypnosis>>
<<initRoom>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","first")>> turns everything on and watches for a few minutes before re-attaching the VR visors.<br>
<br>
You wake hours later in a daze. You can sense immediately that your body is not your own as you rise to your feet and then immediately drop to your knees beside <<=setup.getNpcName("npc_psychiatrist","formal")>>, both of you worshipping <<=setup.getNpcName("npc_barista","first")>> — your new Goddess.<br>
<br>
Seemingly free of any remaining trace of morality, and with the help of <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> technology it is less than a month before <<=setup.getNpcName("npc_barista","first")>> has obtained her goal — CEO and owner of Social Interaction Service Syndicate Inc. — using the element of surprise to remove <<=setup.getNpcName("npc_manager","formal")>> out of the picture before cutting a swath the rest of the way up the company's hierarchy. Seeming to take particular joy in turning <<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_work_doctor","formal")>> into just two more broken and obedient soldiers in <<=ps(setup.getNpcName("npc_barista","first"))>> veritable army of brainwashed slaves.<br>
<br>
For your part in her ascension you are afforded a place of honour within her inner harem. The result is a life of sexual torment and teasing, for only the Goddess is ever deserving of the pleasure of orgasm... just as it should be.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: barista restoration
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.stage = 10>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_other_chastity'
0
'theme_barista_chastity'
false
>>
<<completeTask 'barista_cure' $now true>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_good")>>
<div id="invframe" class="scrolltext">
You wake up, restraints unlocking as you sit up in your chair. You look to the side where <<=setup.getNpcName("npc_psychiatrist","formal")>> is hurriedly pulling away the sex machines and removing the restraints as <<=setup.getNpcName("npc_barista","nickname")>> blinks back to consciousness.<br>
<br>
"@@.npc_psychiatrist;Are you okay?@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> breathlessly asks <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> smiles back, leaping off the chair to wrap her arms around <<=setup.getNpcName("npc_psychiatrist","formal")>>. "@@.npc_barista;Yes! I'm more than okay, I'm wonderful I—oh I missed you so much, it was torture to see you but be trapped and it must have been even worse for you and I'm so sorry that I did that to you and...@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> shuts <<=setup.getNpcName("npc_barista","first")>> up with a kiss, the two women melting into each other as tears of joy stream down their cheeks. When they finally come back up for air they look over at you with dual smiles.<br>
<br>
"@@.npc_barista;Thank you.@@"<br>
<br>
"@@.npc_psychiatrist;Thank you so much.@@"<br>
<br>
A bit unsteady on her feet <<=setup.getNpcName("npc_barista","first")>> stands, walking towards you until you step over and meet her in the middle, her hug of gratitude joined in by <<=setup.getNpcName("npc_psychiatrist","formal")>> a moment later.<br>
<br>
The standing cuddlepod persists for several minutes but the three of you are all exhausted and the appeal of sitting down eventually outweighs other concerns.<br>
<br>
[<<moveTo "event_barista_cure_good_2" "Get changed and talk about what comes next." 1800>>]
</div>/*#
#desc: barista restoration
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'plugsuit_adv' true>>
<<deleteItem 'plugsuit_adv'>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Cuddling one another like a pair of newlyweds <<=setup.getNpcName("npc_barista","first")>> and <<=setup.getNpcName("npc_psychiatrist","formal")>> lay out their future plans.<br>
<br>
"@@.npc_barista;So <<=setup.getNpcName("npc_boss","formal")>> is even more dangerous now than when I was first going for <<him npc_boss>>. We'll never be truly safe so long as <<hes npc_boss>> around and in power.@@"<br>
<br>
"@@.npc_psychiatrist;Yeah. I spent too long working for <<him npc_boss>>, blinded by my own ambition. It's definitely my responsibility to help bring <<him npc_boss>> down.@@" She looks at you with a slightly embarrassed smile. "@@.npc_psychiatrist;I never imagined you'd be a part of that when you first walked through my door but... well, we're both in, for whatever it takes to bring down <<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_work_doctor","formal")>>, and anyone else that sides with either of them.@@"<br>
<br>
"@@.npc_barista;To keep <<him npc_boss>> from getting suspicious I'm going to go back to my old role — I've got a lot of experience playing that part... and, to be honest, a fair bit of it is pretty fun, anyway. I'll keep an eye out, and I'll be ready when it's time to make our move, but until then, well... bimbo sleeper agent, reporting for duty!@@"<br>
<br>
You all laugh as she snaps off a salute.<br>
<br>
"@@.npc_psychiatrist;Oh, and before that... I believe <<=setup.getNpcName("npc_barista","first")>> is technically booked for the rest of the weekend? So... if you don't mind, <<=$player.first_name>>... the two of us are going to make up a bit for lost time.@@"<br>
<br>
You smile at the way they have so quickly fallen in to doting on one another, wishing them good luck before you summon a cab to take you back home, <<=setup.getNpcName("npc_ai","first")>> once again erasing all records of your trip.<br>
<br>
<<if $npc_barista.flags.location == "landlord">>
[<<moveTo "room_foyer" "Home." 21600>>]
<<else>>
[<<moveTo "room_foyer" "Home." 1800>>]
<</if>>
</div>/*#
#desc: barista eternal bimbo
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.stage = 10>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_other_chastity'
0
'theme_barista_chastity'
false
>>
<<completeTask 'barista_cure' $now true>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wake up, restraints unlocking as you sit up in your chair. You look to the side where <<=setup.getNpcName("npc_psychiatrist","formal")>> is hurriedly pulling away the sex machines and removing the restraints as <<=setup.getNpcName("npc_barista","nickname")>> blinks back to consciousness.<br>
<br>
"@@.npc_psychiatrist;Are you okay?@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> breathlessly asks <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> smiles. "@@.npc_barista;Hiya, <<=setup.getNpcName("npc_psychiatrist","formal")>>! I feel great, only... my throat is a little sore... do you think I could suck your cock?@@"<br>
<br>
Your heart sinks as you see the tears well up in <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> eyes as she leans in for a hug, her voice almost breaking as she softly replies. "@@.npc_psychiatrist;Of course you can... of course you can.@@"<br>
<br>
After <<=setup.getNpcName("npc_barista","nickname")>> has been placated with some <<getWordPenis false>> <<=setup.getNpcName("npc_psychiatrist","formal")>> pulls you aside looking sad.<br>
<br>
"@@.npc_psychiatrist;Well, we tried. It hurts that she is going to be like this forever but it is no worse than she was yesterday and maybe she is even a bit more at peace with it all. You said she was booked for the whole weekend? I think we'll stay and then just... go back to it. I guess I'll see you for our next appointment. And <<=$player.first_name>>?@@" She pauses, meeting your gaze as her expression turns stern. "@@.npc_psychiatrist;Whatever it takes to bring down <<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_work_doctor","formal")>>... I will be there for you. It is partially my fault they are as powerful as they are — youthful ambition and foolishness. It is only right that I do what I can to make up for it.@@"<br>
<br>
You nod, changing back into your clothes and summoning a cab to take you back home, <<=setup.getNpcName("npc_ai","first")>> once again erasing all records of your trip.<br>
<br>
<<if $npc_barista.flags.location == "landlord">>
[<<moveTo "room_foyer" "Home" 21600 "<<removeItem 'plugsuit_adv' true>><<deleteItem 'plugsuit_adv'>><<removeItem 'vr_helmet_copy' true>><<deleteItem 'vr_helmet_copy'>><<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "room_foyer" "Home" 1800 "<<removeItem 'plugsuit_adv' true>><<deleteItem 'plugsuit_adv'>><<removeItem 'vr_helmet_copy' true>><<deleteItem 'vr_helmet_copy'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: early surrender barista
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> Mind">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
The call of pink bliss is too strong and you surrender yourself to the void, floating on waves of pleasure without a care in the world.<br>
<br>
[<<moveTo "event_barista_cure_initial_fail_2" "Continue." 600>>]
</div>/*#
#desc: early surrender earn willpower and back unto the breach
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<gainWillpower 1>>
<<applyFatigue -50>>
<</if>>
<<set $player.location to "Temporary Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_makeshift_lab.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wake up with a start to find <<=setup.getNpcName("npc_psychiatrist","formal")>> standing over you.<br>
<br>
"@@.npc_psychiatrist;Easy there, you need to focus! This is all about understanding her truth without losing track of yourself. You cannot change her past, only remind her of it, and thus guide her back to us.@@"<br>
<br>
You feel a prick on your arm and then a burst of mental energy. "@@.npc_psychiatrist;There you go. Military-grade stimulant meant to help pilots concentrate during long engagements. Should give you what you need for this. remember, the goal is to restore her mind, not get swept up in the same bimbo re-programming.@@"<br>
<br>
You nod and <<=setup.getNpcName("npc_psychiatrist","formal")>> places the VR headset back over your eyes and you return to <<=setup.getNpcName("npc_barista","nickname")>> mind...<br>
<br>
[<<moveTo "event_barista_cure_7" "Continue." 600>>]
</div>/*#
#desc: meet npc_barista after work to chat
#status: FINISHED 0.7.6.0
#ignore_spell: h
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.returnPassageList = "event_barista_afterwork_chat">>
<<set $scene.currentNpcTheme = "_forced">>
<<set $scene.visitBarista = true>>
<<set _themeId = setup.findThemeId('npc_barista', 'other', 'theme_barista_other_3')>>
<<if _themeId != -1 && $currentTasks.hasOwnProperty('task_barista_mall') && $currentTasks.task_barista_mall.condition == "Failed">>
<<set $npc_barista.themes.other[_themeId].repeatable = true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You drop by Coffee Shop 52
<<if $npc_barista.stage >= 5 && $npc_barista.stage < 10>>
<<=setup.getNpcName("npc_barista","nickname")>> is far from her usual cheery state — grinding against the edge of the counter in obvious frustration before she notices your presence.<br>
<br>
"@@.npc_barista;H-hi, I, uh... have a lot of work to do...@@"<br>
<br>
Her words are strained as she turns away, and you feel guilty for her predicament — the chastity clearly taking its toll. You leave, telling yourself that her discomfort is necessary, and will be worth it in the end...<br>
<br>
<<include "afterWorkVisiting">>
<<elseif $now.getUTCDay() == 5>>
<<=setup.getNpcName("npc_barista","nickname")>> waves to you with a smile but, though you are finished for the week, it appears that she still has work to do and you wave back before leaving her to deal with customers.<br>
<br>
<<include "afterWorkVisiting">>
<<else>>
where <<=setup.getNpcName("npc_barista","nickname")>> seems to be finishing closing up.<br>
<br>
Noticing you walk in the otherwise empty cafe, she smiles and waves, her boobs jiggling as she bounces with excitement. "@@.npc_barista;Heya, what's up?@@"<br>
<br>
<<if State.hasPlayed("event_janitor_elevator_2_3")>>
<<if State.hasPlayed("event_janitor_training_barista_1")>>
[@@.link_locked;You have already educated <<=setup.getNpcName("npc_janitor", "first")>> on how to slut it up.@@]<br>
<<else>>
[<<moveTo "event_janitor_training_barista_1" 'Summon <<=setup.getNpcName("npc_janitor", "first")>> for instruction on how to slut it up.' 600>>]<br>
<</if>>
<</if>>
<<printNpcThemeCategory
'npc_barista'
'event_barista_afterwork_chat'
'event_barista_afterwork_chat_subtheme'
>>
[<<moveTo "event_barista_afterwork_chat_leave" "Say goodnight." 180>>]
<</if>>
</div>/*#
#desc: continue npc_barista after work chat
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;So, like, what else you wanna talk about?@@" She blinks and smiles brightly at you.<br>
<br>
<<printNpcThemeDetails
'npc_barista'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
</div>/*#
#desc: meet npc_barista after work to chat
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("whoring") < 5 || !setup.hasFreeTime($now, $player, $currentTasks, 3600) || $now.getUTCDay() == 1>>
You say good night to <<=setup.getNpcName("npc_barista","nickname")>>. She smiles and waves as she resumes cleaning up.<br>
<br>
<<include "afterWorkVisiting">>
<<elseif !$npc_barista.flags.know_prostitute>>
You start to say good night to <<=setup.getNpcName("npc_barista","nickname")>> when she stops you. "@@.npc_barista;Hey, so, like... I was about to head to my other job where I, like, have sex for money?@@"<br>
<br>
You ask if she means that she works as a whore and she grins. "@@.npc_barista;Yeah, a whore... I'm such a whore! A slutty, bimbo whore... mmm... makes me so wet thinking about it!@@" She starts to drift off into fantasy but seems to remember you're there a moment later. "@@.npc_barista;Anyway... I was wondering if you, like... wanted to come with me? I can just, like... sense that you'd be totes great at it too! I could introduce you to my pimp... she's so great, she finds all sorts of people to fuck me and I don't have to do any work! Just have like orgasms and get railed! It's, like, the best!@@"<br>
<br>
[<<moveTo "event_barista_afterwork_prostitution_invite_1" "Sure, that sounds fun!" 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_barista_afterwork_prostitution_invite_1" "Maybe some other time." 60 "<<set $scene.accept=false>>">>]
<<else>>
You say good night to <<=setup.getNpcName("npc_barista","nickname")>> and she grins. "@@.npc_barista;Catch ya later! Maybe at our other job?@@" She grins, her eyes lighting up as her thoughts obviously turn to her "side gig" as a whore.<br>
<br>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: ask npc_barista about candy
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "bimbo_candy">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> about the candy she gave you way back on your first day.<br>
<br>
"@@.npc_barista;Mmmm, yeah, aren't they, like, totally yummy?@@" She seems to get distracted for a moment before refocusing on you. "@@.npc_barista;Oh, hey, you want some more? Here!@@"<br>
<br>
Before you can react, she has shoved another of the pink candies into your hand. With a smile on her face she pops another of the candies into her mouth and bites down, her eyelids fluttering as she shudders with each bite.<br>
<br>
"@@.npc_barista;So good... keeps the bad thoughts away...@@" She whispers softly to herself.<br>
<br>
[<<moveTo "theme_barista_candy_2" "Ask her where the candy comes from, and what it does." 300>>]<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista more about candy
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;It comes from the company, silly! I dunno what they put in it but, it's like so tasty, right? And it makes you feel so good and happy! <<=setup.getNpcName("npc_barista","nickname")>> loves her candy!@@"<br>
<br>
You try to grill her for more information about the strange candies, but it's like she doesn't even understand the question; in her world candy just is and she loves it and anything else is wasted thought, and "@@.npc_barista;Thinking is, like, hard! Bleh!@@"<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista about your manager
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> what she thinks about <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_barista;She's like, okay? She's super powerful and scary when she wants to be, but she isn't one of the mean ones...@@"<br>
<br>
For a moment she gets a worried look on her face, but when you ask her who are the "mean ones" are, she just looks back at you confused, acting like she didn't say anything of the sort.<br>
<br>
"@@.npc_barista;Mean? Nobody's mean to <<=setup.getNpcName("npc_barista","nickname")>>! <<=setup.getNpcName("npc_barista","nickname")>> gets lots of orgasms and doesn't have to think hard about anything, what could be better?@@"<br>
<br>
Whatever she let slip, it doesn't look like you're going to be getting any more out of her on this subject.<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista about playing RPGs together
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> about the RPG campaign.<br>
<br>
"@@.npc_barista;Isn't it like, so much fun? I love the character you've been playing, it's like, so hawt! I wonder what <<=setup.getNpcName("npc_technician","first")>> has planned for the next session? I hope I get to fuck something!@@"<br>
<br>
You realise you aren't sure if she meant in-game, or IRL... though on second thought, given it's <<=setup.getNpcName("npc_barista","nickname")>>... maybe both?<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista about how she met npc_technician
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> about how she met <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_barista;Oh, I like, met her at the office one day and she invited me to the game. Isn't it, like, so fun? She's the best DM ever! Always has such fun scenarios for us to play through! Sometimes it feels like I'm playing a role in real life too, but in the game it's, like, different and even when things get scary, you're just a die roll from winning it all!@@"<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista about her "vandalism"
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> about the writing she was doing in the women's restroom using lipstick.<br>
<br>
She squints at you in puzzlement, though there's a weird tinge of nervousness in her voice when she replies. "@@.npc_barista;I don't remember anything like that. Besides, I have permanent makeup now so I never have to worry about carrying makeup. It's so nice, I can suck as many cocks as I want and it won't smudge! Though... sometimes I miss the look of runny eyeliner, I mean, how can you be sure you had a good night if your face isn't like, totally ruined at the end of it?@@"<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista about your predecessor
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> about your predecessor, <<=setup.getNpcName("npc_secretary","nickname")>>.<br>
<br>
"@@.npc_barista;<<=setup.getNpcName("npc_secretary","nickname")>>?@@" She seems to think for a bit before lighting up and responding "@@.npc_barista;Oh yeah! She was like, super hot, but I haven't seen her around for a while... hey, you're a secretary just like she was! Have you worked with her? You should let her know I miss seeing her, she was really tasty!@@"<br>
<br>
You nod, wondering what all happened between the bimbo barista and your predecessor, if only communicating with <<=setup.getNpcName("npc_barista","nickname")>> wasn't half the time like talking to a sexy wall...<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista about her life
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> about how her life is going.<br>
<br>
She smiles, though it feels oddly artificial, even for her, like she's pulling a mask even tighter over her face. "@@.npc_barista;My life is happy and perfect. At least, that's what everyone tells me, and they're like... WAY smarter than I am, so it must be true!@@"<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista about makeup
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.knowBimbo = $player.makeup.unlocked.ultimatebimbo>>
<<if $scene.knowBimbo>>
<<set _themeId = setup.findThemeId('npc_barista', 'other', 'theme_barista_other_1')>>
<<set $npc_barista.themes.other[_themeId].repeatable = false>>
<<else>>
<<if setup.getTotalValue("makeup") >= 5>>
<<unlockMakeup "ultimatebimbo">>
<<set $npc_barista.flags.taughtbimbomakeup = true>>
<<set $player.makeup.template = 'ultimatebimbo'>>
<<set $player.makeup.messed = 0>>
<<setThreshold "makeup" "online_makeup" "barista_tips">>
<<set _themeId = setup.findThemeId('npc_barista', 'other', 'theme_barista_other_1')>>
<<set $npc_barista.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_barista', 'nickname')>> for some makeup suggestions.
<<if $scene.knowBimbo>>
She blinks in confusion. "@@.npc_barista;I, like... already taught you the bestest style of makeup for looking like a sexy bimbo<<if setup.getCurrentMakeup() == "ultimatebimbo">>, you're, like, even wearing it now!<<else>>.<</if>> Keep on practicing, though! You gotta practice to be able to go from ruined slut to perfectly made-up quick... and then you can work on getting that blow-bang and ruining it all over again!@@"
<<elseif setup.getTotalValue("makeup") >= 5>>
Her eyes light up at your request and before you know it she's grabbed you by the wrist and is dragging you off to the women's room.<br>
<br>
Spinning you to face the mirror, she suddenly has a makeup box open and is wiping
<<if $player.makeup.template == "">>
your face clean
<<else>>
off your current makeup.
<</if>>
<br><br>
"@@.npc_barista;Alright, so I am going to walk you through this, like, step by step and you are going to look sooooo sexy!@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> is a whirlwind, and far more exacting than you would have ever expected from her normal bubbly demeanour, but by the end of it, well... you look like a bimbo, a perfect, plastic, sex-pot with big lips and sexy eyes and... just wow.<br>
<br>
"@@.npc_barista;Ta-da! You should, like do this every day, and check your mirror often! As hot as it can look to have that just-been-fucked ruined thing going on, it isn't usually appropriate at work... anyway, let's head back to the cafe!@@"<br>
<br>
Your mind still trying to retain all the steps she showed you as you follow her back to the cafe in a daze.<br>
<br>
"@@.npc_barista;So, now that you look SO HAWT... did you wanna chat about something else or are you ready to hit the town and ruin that inviting mouth-fuck hole?@@"
<<else>>
She looks initially excited, but then she frowns slightly as she looks at your face.<br>
<br>
"@@.npc_barista;Hmm, I'd, like, love to teach you some tricks but... I think you need to focus on the basics first? You should, like, talk to <<=setup.getNpcName("npc_technician","first")>>, she's really good at helping beginners and stuff!@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista about npc_psychiatrist
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_blowjobs'
0
'theme_psychiatrist_post_bj_ask_1'
true
>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_barista', 'nickname')>> about your therapist <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
In the middle of wiping down a counter, <<=setup.getNpcName('npc_barista', 'nickname')>> freezes when she hears the name, twitching twice before replying a few seconds later, her voice slightly off.<br>
<br>
"@@.npc_barista;<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is your therapist too? Isn't she the best? She's like, so helpful, whenever I visit I leave feeling so happy and content, and I barely remember anything about how she even did it!@@"<br>
<br>
You're suddenly feeling a bit weird about the bubbly way <<=setup.getNpcName('npc_barista', 'nickname')>> is describing things<<if $npc_psychiatrist.hypnosis>=5>> and you reflect back to the "gaps" you used to get from your early VR therapy sessions.<<elseif $npc_psychiatrist.hypnosis>0>>, reflecting back to similar "gaps" from your VR therapy sessions...<<else>> and you find yourself thinking about the VR "experiment" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> tried to talk you into participating in.<</if>><br>
<br>
Oblivious to your distraction <<=setup.getNpcName('npc_barista', 'nickname')>> continues on with even greater enthusiasm. "@@.npc_barista;Oh, and her taste! Like, the chocolates at the start of a session are great, but it's even better at the end when she lets me suck on her tasty lolly! Normally I prefer a nice, big cock stretching my jaw... and hopefully at least two more for my other holes! But sucking hers at the end of a session always calms me down and has me leaving happy!@@"<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: try to seduce npc_barista
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> if she'd be up for a little "fun." <br>
<br>
"@@.npc_barista;Fun? OH! You mean sex! Of course! Only...@@" she pauses, her face screwed in concentration. "@@.npc_barista;Well, see, <<=setup.getNpcName("npc_manager","other")>> told me that, like, I wasn't allowed to do anything with
<<if setup.checkItemTypeWorn("cage")>>
you without your chastity device remaining locked on.
<<else>>
your front bits.
<</if>>
Something about, like... disrupting your training?@@"<br>
<br>
She shrugs. "@@.npc_barista;Fortunately I have, like, the perfect solution!@@"<br>
<br>
Darting into the storage room, she comes back excitedly clutching a leather strap-on harness. A harness that sports not one, or two, but THREE dildos attached to it, two on the inside and a third protruding from the front.<br>
<br>
"@@.npc_barista;Ta-da! Hmm, how do these buckles work?...@@"<br>
<br>
You watch her try to puzzle out the harness and consider your response.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
[<<moveTo "theme_barista_seduce_2" "Mmm, penetration, bend over." 1800 "<<set $scene.style = 'anal'>>">>]<br>
<<else>>
[<<moveTo "theme_barista_seduce_2" "Sex is sex, bend over and spread 'em." 1800 "<<set $scene.style = 'anal'>>">>]<br>
<</if>>
<<if !$player.sec_style.sex.cunnilingus>>
[<<moveTo "theme_barista_seduce_2" "Ask if you could just eat her out instead?" 1800 "<<set $scene.style = 'oral_first'>>">>]<br>
<<else>>
[<<moveTo "theme_barista_seduce_2" "Ask if you could just eat her out instead?" 1800 "<<set $scene.style = 'oral'>>">>]<br>
<</if>>
<<if !$player.virgin.top_fem>>
[<<moveTo "theme_barista_seduce_2" "Ask if you could wear the harness and do her?" 1800 "<<set $scene.style = 'strapon_fail'>>">>]<br>
<<else>>
[<<moveTo "theme_barista_seduce_2" "Ask if you could wear the harness and do her?" 1800 "<<set $scene.style = 'strapon'>>">>]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if setup.canSexOrRemoveChastity("vag")>>
[<<moveTo "theme_barista_seduce_2" "Unlock your belt, spread your legs... maybe she could do you?" 1800 "<<set $scene.style = 'strapon_you_vag'>>">>]
<<else>>
[@@.link_locked;Your chastity belt is in the way of her strap-on-fucking you.@@]<br>
<</if>>
<<else>>
[<<moveTo "theme_barista_seduce_2" "Spread your legs... maybe she could do you?" 1800 "<<set $scene.style = 'strapon_you_vag'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "theme_barista_seduce_2" "Maybe this isn't such a great idea..." 60 "<<set $scene.style = 'no'>>">>]<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: sex with npc_barista after work
#status: FINISHED 0.7.6.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<switch $scene.style>>
<<case 'anal'>>
<<applyExperience 'anal' 12 'terrible' $SEEN_FRIEND>>
<<set $npc_barista.flags.sex.peg_you = true>>
<<if !$player.virgin.pegged>>
<<set $player.virgin.pegged = "npc_barista">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_2'
1
'event_psychiatrist_session_pegging_virginity_1'
false
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_pegging'
0
'theme_church_confession_pegged'
true
>>
<</if>>
<<if !$player.sec_style.sex.pegging>>
<<set $player.sec_style.sex.pegging = "enthusiast">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "enthusiast">>
<</if>>
<<playerOrgasm>>
<<case 'oral'>>
<<applyExperience 'oral' 5 'very' $SEEN_FRIEND>>
<<setTmpEffect 'bimbo_candy'>>
<<set $npc_barista.flags.sex.cunnilingus = true>>
<<case 'oral_first'>>
<<setTmpEffect 'bimbo_candy'>>
<<set $npc_barista.flags.sex.cunnilingus = true>>
<<set $player.virgin.cunnilingus = "npc_barista">>
<<set $player.sec_style.sex.cunnilingus = "voluntary">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<<case 'strapon'>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_FRIEND>>
<<set $npc_barista.flags.sex.peg_her = true>>
<<case 'strapon_you_vag'>>
<<playerOrgasm>>
<<if !$player.sec_style.sex.vag_strap>>
<<set $player.sec_style.sex.vag_strap = "voluntary">>
<</if>>
<<set $npc_barista.flags.sex.strap_vag = true>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</switch>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'anal'>>
You bend over as she finally figures out how to arrange the straps and align the harness in place. With it tight around her waist, she reaches between her legs to remove her normal fore and aft plugs with a moan, before replacing them with the larger twin dildos. You almost wince at how tight she cinches the crotch strap to force everything deep, but she looks up at you with a smile as she rubs some lube into the cock now VERY securely protruding from her groin.<br>
<br>
"@@.npc_barista;Heh, having a penis is so weird! I feel like I'm going to run into something... oh, I guess I kind of am! Come on and spread 'em, cutie, I can't wait to fuck that hole good!@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
Noticing your plug, she wiggles it <<if !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>free <</if>>and takes a moment to admire its size. "@@.npc_barista;Oh, yay, you're plugged too! Isn't it like, the best? <<if $player.body_ref.vagina>>You should fill the other hole too, it's,<<else>>It's too bad you only have the one hole, though, each hole filled is<</if>> like... multiplicative pleasure. That's why my favourite is an airtight gang-bang... mmm, so much cock...@@"<br>
<br>
<</if>>
Bent over the counter, the sound of your gasps and her moans soon intertwine as she sets to work enthusiastically fucking your ass.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
Her artificial cock is large, but not ginormous, allowing you to enjoy a nice full hard-fucked feeling without straining into gape territory.
<<else>>
Her artificial cock is large enough to please even your well-used rear hole and you take it hard and deep.
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Her artificial cock is eye- and hole-stretching large, pushing you past your limits with each pounding thrust.
<<else>>
Her artificial cock is far too big for your novice hole, merely prodding at your hole and sliding between your cheeks as she simulates pounding your brains out.
<</if>>
<</if>>
<br><br>
With surprising strength given her size, she gives it to you hard and long, her own moans relaying that there is additional "fun" going on thanks to the twin dildos on the interior of her harness.<br>
<br>
Drooling over the counter as she holds you down and pounds you, it feels like your brains are starting to leak out your ear when she finally flops on top of you, her large breasts pressed against your back as she sighs. "@@.npc_barista;Mmm, that was fun!@@" She purrs before popping back to her feet and separating.<br>
<br>
Her wet cock bouncing in front of her hips, she poses for a moment before unbuckling herself, the twin dongs easily sliding out of her only to be almost instantly replaced by her normal plugs as she bites her lip and moans in pleasure. <<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>"@@.npc_barista;Ooop! Don't forget your companion!@@" she calls out, scooping up your plug and jamming it back into your gaping hole before you can push yourself back to your feet.<</if>><br>
<br>
<<if setup.checkItemTypeWorn("plug")>>"@@.npc_barista;There we go, nice and plugged, just as you should be!@@"<</if>> She gives your butt a friendly squeeze as you return to your feet and fix your clothes.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
<<case 'oral_first'>>
You ask if you could eat her out and she scrunches up her face. "@@.npc_barista;I'd like to but... wouldn't I be your first?@@"<br>
<br>
You look back in surprise, <<printThought "How can she know?">><br>
<br>
She smirks. "@@.npc_barista;Oh, don't get all scared, it's not like I'm surveilling your every move. I, like, leave that to the company! No, I just have a sense for these things, y'know? Anyway...@@" she grins as she takes a seat on the edge of a chair with her legs spread, pulling her thong to one side to expose her glistening snatch stretched around its occupying plug.<br>
<br>
"@@.npc_barista;Come on, lick me, <<if $fetish.sissy>>sissy<</if>>! Stop all this, like... talking and show me what else that nimble tongue can do!@@"<br>
<br>
Down on your knees, you do as she says, her hand on your head guiding, but not commanding. She tastes good... really good and you feel a slight tingle and half wonder if all that "candy" she eats might have somehow suffused her body. Thinking is soon put aside in favour of the delicious treat in front of you, your chin resting on the base of her plug as you lick and suck and nibble in between her folds. You aren't totally sure what you're doing, but it doesn't seem to matter much as her moans of approval become increasingly incoherent as you struggle to keep up with her bucking, thrashing hips.<br>
<br>
In a final frenzy, her thighs clamp tight around your head and you struggle to breathe, flailing slightly as you gasp and lick and suck only for her to finally release with a shout, pushing you away as she pushes away and you lean back, panting.<br>
<br>
"@@.npc_barista;What a natural!@@" She states with a grin "@@.npc_barista;that was, like, really great!@@"<br>
<br>
With a wet snap she pulls her panties back into place over her plug. Wiping some of her juices off her thigh she sucks on her own finger, trademark lusty smile plastered back across her face.<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
<<case 'oral'>>
As she tries to wrangle the straps of the somewhat overly-complicated harness, you ask if you could just eat her out?<br>
<br>
She pauses for a moment's confusion and you get the feeling that the majority of her sex life consists of "insert tab into slot(s), repeat." A smile soon blossoms over her face and before you know it, she is sitting on the edge of a chair with her legs spread, pulling her thong to one side to expose her glistening snatch stretched around its occupying plug.<br>
<br>
"@@.npc_barista;Oh, yes! Lick me, <<if $fetish.sissy>>sissy, <</if>>shut up and show me what else that nimble tongue can do!@@"<br>
<br>
Down on your knees, you do as she says, her hand on your head guiding, but not commanding. From the first taste you feel a slight tingle and half wonder if all that "candy" she eats might have somehow suffused her body... thinking is soon put aside in favour of the delicious treat in front of you, your chin resting on the base of her plug as you lick and suck and nibble in between her folds. Her moans of approval become increasingly incoherent as you struggle to keep up with her bucking, thrashing hips.<br>
<br>
In a final frenzy, her thighs clamp tight around your head and you struggle to breathe, flailing slightly as you gasp and lick and suck only for her to finally release with a shout, pushing you away as she pushes away and you lean back, panting.<br>
<br>
"@@.npc_barista;Wow, that was... that was great!@@" She says breathlessly as the colour slowly returns to her face<<if setup.checkItemTypeWorn("cage")>>. "@@.npc_barista;I guess being locked in chastity was the right move if it motivated you to learn to do that! Not that I'd ever consider anything like that,@@" she shudders and has a momentary expression of fear before waving<<else>> as she waves<</if>> you goodbye.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
<<case 'strapon_fail'>>
You ask if you could use the strap-on to do her and she looks at you with a puzzled expression.<br>
<br>
"@@.npc_barista;No... even if I wasn't pretty sure that would go against <<=ps(setup.getNpcName("npc_manager","other"))>> instructions, well... I don't think you could handle me, and as good as our medical is, I don't want your shattered pelvis on my conscience when your inexperience means you couldn't, like, keep up. So... I'll ask again, what'll it be?@@"<br>
<br>
<<if !$player.virgin.cunnilingus>>
[<<moveTo "theme_barista_seduce_2" "Ask if you could just eat her out instead?" 1800 "<<set $scene.style = 'oral_first'>>">>]<br>
<<else>>
[<<moveTo "theme_barista_seduce_2" "Ask if you could just eat her out instead?" 1800 "<<set $scene.style = 'oral'>>">>]<br>
<</if>>
[<<moveTo "theme_barista_seduce_2" "Maybe this isn't such a great idea..." 60 "<<set $scene.style = 'no'>>">>]<br>
<<printNpcThemeReturn 'npc_barista' 180>>
<<case "strapon">>
You ask if you could use the strap-on to do her and she pauses in her efforts to untangle how the straps are meant to fit together. Her face scrunch in confusion. "@@.npc_barista;But <<=setup.getNpcName("npc_manager","other")>> said you weren't allowed to do me...@@"<br>
<br>
You remind her that the restriction was just on you <<if setup.checkItemTypeWorn("cage")>>remaining locked in chastity, which you are,<<else>>doing her personally,<</if>> so really there's nothing wrong with you using the strap-on to fuck her nice and hard.<br>
<br>
You can see the lust blossom in her expression at your words and you press on, questioning her if she wants to get fucked hard...<br>
<br>
"@@.npc_barista;Mmmm, yeah, I do... I wanna get fucked so bad...@@" By this point she's grinding her hips together in anticipation as she removes the internal attachments from the harness and hands it over to you.<br>
<br>
"@@.npc_barista;Unf, I need you inside me so bad, but I really don't want to get in trouble...@@"
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flipping up your skirt<<else>>pulling down your pants<</if>> she checks your chastity device, giving it a tug to make sure it's secure. "@@.npc_barista;Okay, that looks good, <<if $player.body_ref.penis>>no way you're doing anything with that <<if $fetish.sph>>useless little <</if>>thing so <</if>>hurry up and strap on I want to get fucked!@@"
<<else>>
She bites her lip for a moment before lust wins out over worry. "@@.npc_barista;Okay, you convinced me, hurry up with that strap-on I want to get fucked!@@"
<</if>>
<br><br>
Hopping up on the counter, she lies on her back, legs spread to display her dripping holes. She pulls her straining thong to one side to give you a full view of the dual plugs presently occupying her. "@@.npc_barista;Hurry up and choose! Bimbo needs cock badly!@@" She looks up at you desperately, rolling her hips in invitation.<br>
<br>
[<<moveTo "theme_barista_seduce_3" "Plow her cunt." 600 "<<set $scene.vagNoAnal = true>>">>]<br>
[<<moveTo "theme_barista_seduce_3" "Fuck her ass." 600 "<<set $scene.vagNoAnal = false>>">>]
<<case 'strapon_you_vag'>>
You <<if $scene.removeCage>>unlock your belt and <</if>>spread your legs as <<=setup.getNpcName("npc_barista","nickname")>> finally figures out how to arrange the straps and align the harness in place. With it tight around her waist, she reaches between her legs to remove her normal fore and aft plugs with a moan, before replacing them with the larger twin dildos to fully secure the strap-on in position. You almost wince at how tight she cinches the crotch strap to force everything deep, but she looks up at you with a smile as she rubs some lube into the cock now VERY securely protruding from her groin.<br>
<br>
"@@.npc_barista;Heh, having a penis is so weird! I feel like I'm going to run into something... oh, I guess I kind of am! Oooh, and you're all spread and ready! Such a good girl!@@"<<if $scene.removeCage>> She eyes your chastity belt with a degree of nervous fear "@@.npc_barista;Wow, you have the key? Usually they don't allow that if you're locked at work... ew chastity, I'd hate to not be able to get fucked on a whim!@@"<</if>><br>
<br>
You lean back against the counter, the sound of your gasps and her moans soon intertwine as she sets to work enthusiastically introducing you to her temporary cock.<br>
<br>
With surprising strength given her size, she gives it to you hard and long, her own moans relaying that there is additional "fun" going on thanks to the twin dildos on the interior of her harness.<br>
<br>
She is soon mounting you on top of the counter, pounding into you with her full weight with every thrust, drilling you deep and hard with an indefatigable rigidity that a flesh and blood cock would struggle to match. With her large breasts pressed against your face she finally finishes, crying out in orgasm even as your own moans are muffled in her bosom. "@@.npc_barista;Mmm, that was fun!@@" She purrs before popping back to her feet and separating.<br>
<br>
Her wet cock bouncing in front of her hips, she poses for a moment before unbuckling herself, the twin dongs easily sliding out of her only to be almost instantly replaced by her normal plugs as she bites her lip and moans in pleasure.<br>
<br>
She pulls you back to your feet, you're a bit wobbly as you recover from the hard fucking, but <<=setup.getNpcName("npc_barista","nickname")>> looks fresh-faced and full of energy as she fixes her skirt with a grin. "@@.npc_barista;Hehe, that was fun! I still prefer to get railed... preferably by two or three cocks at a time... but it is fun to take the wheel... or maybe I should say the joystick? Every once in a while!@@"<br>
<br>
You nod as you <<if $scene.removeCage>>lock the chastity belt back where it belongs and <</if>>adjust your own clothes and bid her a good evening.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
<<case 'no'>>
Eyeing the large dong at the front of the harness, you have second thoughts and quickly distract her to talk about something else.<br>
<br>
"@@.npc_barista;Hmm, yeah, the real thing is better, makes sense to save your ass for when you can have a nice hard fleshy one pumping into it, well I hope you find one that stretches you out good!@@"<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
<<default>>
ERROR unexpected scene.style <<=$scene.style>>
<</switch>>
</div>/*#
#desc: sex with npc_barista after work
#status: FINISHED 0.7.6.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.vagNoAnal>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.vagNoAnal>>
Grabbing hold of the plug twitching in her cunt, you pull it free with a wet pop. Reaching below for its anal mate, she slaps your hand away.<br>
<br>
"@@.npc_barista;Leave it in! It makes me tighter, now, hurry up and shove that silicone cock into my cunt and fuck me hard!@@"<br>
<br>
<<printThought "Tighter? But I can't feel any- oh...">><br>
<br>
Following her instructions, you take hold of her hips and slide into her as she lets out a moan that a porn star would probably call "a bit much." <br>
<br>
"@@.npc_barista;Oh yes, that feels so good! Fuck me harder! Fuck me with your fake cock!@@"<br>
<br>
You are reminded that you can't feel a thing from any of this, <<if $player.body_ref.penis>><<if !$player.virgin.top_fem>>your virginity remaining safely locked inside your cage, <</if>><</if>>and yet her moans of enthusiasm spur you on, the sound of her over-the-top pleasure and multiple orgasms making up for your inability to feel anything as you pound away.<br>
<br>
Attempting to keep up with her desperate demands for "@@.npc_barista;More, more, harder, more!@@" you slip on the freshly washed floor, falling onto your back with her riding you down without even missing a beat. Pinning you down with her hips while perched with your silicone cock inside of her, she takes charge, rolling her hips and bouncing up and down, giving you quite the show as her large tits jiggle below her ahegao-gaped lips as she slams down hard enough you wonder if she might bruise something.<br>
<br>
With frenetic energy it seems that, despite the evidence that she has orgasmed strongly and repeatedly, she seems to be desperately seeking a fresh tier of pleasure only to fail, panting and gasping in exhaustion when she finally collapses and slides off.<br>
<br>
You would swear you heard her whimpering as you stagger to your feet and try to help her up, her gaze distant when she finally stands "@@.npc_barista;N-need more, fuck me harder, Master...@@" she whispers mindlessly, "@@.npc_barista;More...@@" she gasps again as she absent-mindedly pumps, then finally shoves the plug back into her cunt.<br>
<br>
You're a bit baffled at her behaviour immediately after sex, but a moment later she blinks, her gaze clearing somewhat as she seems to notice you for the first time. "@@.npc_barista;Oh, hi! Did you just fuck me with that? That was really good!@@"<br>
<br>
She helps you out of the harness, sucking it clean of her juices with a single deep-throating gulp before putting it away.
<<else>>
You reach for the plug occupying her ass and she moans. "@@.npc_barista;Mmm, yes, I love being fucked in the ass! Shove your big, fake cock inside of me and give it to me as hard as you take it up your own slut-hole!@@"<br>
<br>
You do as instructed, the thick silicone cock sliding easily into her willing orifice. "@@.npc_barista;Yes! Harder! Fuck me<<if $fetish.sissy>>, sissy<</if>>! Serve me like the desperate, <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>caged<<else>>chaste<</if>><<else>>denied<</if>> slut you are!@@"<br>
<br>
You aren't sure where the sudden taunting streak came from, but you can't help yourself as she wraps her legs around you and pulls you in, grunting "@@.npc_barista;Harder, deeper!@@" as <<if setup.checkItemTypeWorn("cage")>>your <<if setup.isCage()>>cage<<else>>chastity shield<</if>> smacks<<else>>you smack<</if>> into her with each thrust.<br>
<br>
<<if !$player.virgin.top_fem>>
The fact that you're doing this while still technically a virgin only deepens your humiliation
<<else>>
The similarity of this to actual fucking, watching the large silicone cock slide in and out of her while you receive none of the penile stimulation her tight rear hole should provide is humiliating,
<</if>>
but you can't stop, pounding her ass until her eyes roll back and her legs go limp and you stagger away.<br>
<br>
Looking back at you with lust she smiles. "@@.npc_barista;Mmm, that was pretty good... I just wish you had a fake cock for both of my holes... and maybe something for me to suck on...@@"<br>
<br>
You shake your head in amazement at her infinite depths of depraved sluttiness as you remove the harness and she shimmies back to her feet.
<</if>>
<br><br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
</div>/*#
#desc: ask npc_barista about her past
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> about her past, before she worked at Coffee Shop 52.<br>
<br>
"@@.npc_barista;Before?@@" she looks confused, and then pained, as if thinking about such things is both alien and painful.<br>
<br>
"@@.npc_barista;Before was bad. I'm not supposed to talk about before. Now is much better! I have the bestest job ever and I get fucked lots, why would I ever want to think about anything else? No, that would be silly...@@" Her voice gets softer as she continues. "@@.npc_barista;This is making my head hurt, can we talk about something different?@@"<br>
<br>
You can tell she's feeling very uncomfortable, hardly a trace of her usual gleeful expression on her face. You nod, even though you are even more drawn in and curious to untangle her mysteries.<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask npc_barista about warning note
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $randomEvents['work_bathroom_female'].pushUnique({ done: false, id: "barista_message"})>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> about the note she gave you asking to meet.<br>
<br>
"@@.npc_barista;Note?@@" She giggles nervously "@@.npc_barista;I'm sorry, I don't, like, remember writing a note?@@" She pauses. "@@.npc_barista;Besides, since they took my pens, I can't write anything anymore...@@"<br>
<br>
Things are only getting more confusing and you press her, describing in detail how she slipped you a handwritten note with your coffee order asking to meet you.<br>
<br>
"@@.npc_barista;I'm sorry, I don't remember anything like that but, like... there was a gas leak at my apartment recently, maybe, I like... hallucinated or something?@@" As she talks, you notice something off, like she's straining to ignore a distraction and your thoughts suddenly turn to the fact that she wears a plug in each of her lower holes.
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['ems']) || setup.checkItemTypeTag('plug', ['vibrating'])>>
<<if setup.checkItemTypeTag('plug', ['ems']) && setup.checkItemTypeTag('plug', ['vibrating'])>>
You wonder if they are as "full featured" as the <<=setup.getItemTypeName("plug")>> currently residing in your rear.
<<elseif setup.checkItemTypeTag('plug', ['ems'])>>
You wonder if they are electrified like the <<=setup.getItemTypeName("plug")>> currently residing in your rear.
<<else>>
You wonder if they vibrate like the <<=setup.getItemTypeName("plug")>> currently residing in your rear.
<</if>>
<<else>>
You wonder how they compare to the <<=setup.getItemTypeName("plug")>> currently occupying your rear.
<</if>>
<</if>>
<br><br>
"@@.npc_barista;I'm sorry for the confusion ah!@@" she gasps as she continues breathlessly "@@.npc_barista;I enjoyed you, ah! Visiting me and I'd love to see you again but ohgoddess@@" you watch her slip slightly, seemingly only remaining vertical due to a white-knuckle grip on the edge of the counter.<br>
<br>
She looks up and you see a quiet desperation in her eyes. She lets out a final gasping moan, her entire body shuddering with what you would swear is an orgasm. As the ripples pass, she straightens up, resuming the proud and perky stance that you are used to as she graces you with a too-happy smile.<br>
<br>
"@@.npc_barista;Thanks for coming by, I have, like, lots of work to do cleaning up today, things are quite a mess and if I don't get to it, I'll be having to just bleach everything! Hehe!@@"<br>
<br>
Puzzled, but sensing that you will get no further answers from her today, you nod and head on your way.<br>
<br>
<<printThought "Something is definitely going on with her... maybe she'd be more willing to talk somewhere not at work? But where would be a place to get her alone?">><br>
<br>
<<if $npc_technician.flags.rpg_campaign.no_showed>>
You suddenly remember the personal "penance" system that the RPG group uses as punishment...<br>
<br>
<</if>>
Thanking her for her time, you say you'll come back later to chat. That seems to make her happy, but she still quickly shoos you off.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: ask npc_barista about her chastity situation
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> what happened with her chastity situation?<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> winks at you. "@@.npc_barista;Oh, that? Yeah, I got a note from my therapist that, like... said it was bad for my job performance if I was locked up and prevented from serving customers.@@"<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: npc_barista tries to slip you a note
#status: WRITTEN 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
At Coffee Shop 52 yet again, you are about to take your order when you notice that <<=setup.getNpcName("npc_barista","nickname")>> looks a bit off, her normally bright eyes squinted as she glances around conspiratorially.<br>
<br>
She hands you your drink; her expression pleading as she mouths what looks like the word "@@.npc_barista;Help,@@" before her bubbly expression returns and she greets the next customer.<br>
<br>
Confused as to what's going on, you find yourself shuffled out of the room. Halfway back to your office, you notice there seems to be something written on the paper wrapped around your cup.<br>
<br>
[<<moveTo "event_barista_secret_note_2" "Read the note." 180>>]
</div>/*#
#desc: read note from npc_barista
#status: WRITTEN 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Floor 52 Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
Unwrapping the napkin from around the coffee cup, you find a short note; "@@.npc_barista;Meet me after work sometime. It's our only chance...@@"<br>
<br>
You can't help but glance nervously around. With all that's happened to you at this company. A shiver goes up your spine as you wonder what is really going on at this company, and what they are doing, or is it done? to <<=setup.getNpcName("npc_barista","nickname")>>... even more confused than before, you consider what to do about this new development.<br>
<br>
[<<moveTo "event_barista_secret_note_3" 'Give the note to your <<=setup.getNpcName("npc_manager","title")>> to get her thoughts.' 180 "<<set $scene.snitch = true>>">>]<br>
[<<moveTo "event_barista_secret_note_3" 'Keep the note to yourself.' 180 "<<set $scene.snitch = false>>">>]
</div>/*#
#desc: snitch or not to npc_manager about npc_barista note
#status: WRITTEN 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.can_meet = true>>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_barista' 'work' 'theme_barista_work_0'
0
'theme_barista_note'
false
>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_other_2'
0
'theme_barista_seduce_1'
true
>>
<<if $scene.snitch>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<else>>
<<addItem 'note_npc_barista'>>
<</if>>
<<set $npc_barista.flags.betrayed = $scene.snitch>>
<</if>>
<<if $scene.snitch>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.snitch>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.snitch>>
Though it feels like something of a betrayal, you don't want to consider the consequences of acting without <<=ps(setup.getNpcName("npc_manager","formal"))>> permission... plus maybe she can help?<br>
<br>
Walking into her office, you deliver the drink and then present the note to <<=setup.getNpcName("npc_manager","formal")>> and wait for her response.<br>
<br>
"@@.npc_manager;What is this? Remember you can always talk to me, my door is already open for you...@@"<br>
<br>
You quickly clarify that the note isn't from you, but from <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
"@@.npc_manager;I see...@@" she states, her gaze flitting to the top of the wall behind you before continuing. "@@.npc_manager;Well, of course I appreciate you coming to me with this. Some would consider such... collaboration with management to be a betrayal of trust but, obviously, we have a much... closer relationship than that, hmm? As to what to do... well, I suggest you meet her after work. I see no other way to get to the bottom of the mystery.@@"<br>
<br>
You thank her for the advice and she dismisses you.
<<else>>
Wadding up the note, you deliver your <<=setup.getNpcName("npc_manager","title")>> her drink without incident before returning to your desk, wondering what you'll learn if you meet <<=setup.getNpcName("npc_barista","nickname")>> after work as instructed...
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: catch npc_barista writing message in bathroom
#status: WRITTEN 0.7.6.0
#*/
<<set $player.location to "Work Women's Toilet">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_barista' 'work' 'theme_barista_work_2'
0
'theme_barista_bathroom_vandal'
false
>>
<</if>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Walking into the bathroom, you are surprised to find someone scrawling words onto a mirror with lipstick.<br>
<br>
Hearing your entrance, they glance in your direction and you recognise <<=setup.getNpcName("npc_barista","nickname")>>. She looks a bit unkempt and a different sort of crazy than you've seen before with none of her normal effervescent energy. Noticing you, her eyes swell wide in shock she freezes for a moment and you watch her entire expression shift, the "happy bimbo" look replacing the panicked fright as swiftly as if someone hit a reload button.<br>
<br>
"@@.npc_barista;Hiya!@@" She says with a smile, turning back to the mirror to fix her makeup without even seeming to notice the words she previously scrawled before heading for the exit.<br>
<br>
[<<moveTo "event_barista_bathroom_message_2" "Confront her as to what's going on." 30 "<<set $scene.confront = true>>">>]<br>
[<<moveTo "event_barista_bathroom_message_2" "Just go about your business." 30 "<<set $scene.confront = false>>">>]
</div>/*#
#desc: react to catching npc_barista in bathroom
#status: WRITTEN 0.7.6.0
#*/
<<set $player.location to "Work Women's Toilet">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.video.unlocked = true>>
<</if>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.confront>>
You ask <<=setup.getNpcName("npc_barista","nickname")>> if there's something wrong, but she just blinks at you in confusion?<br>
<br>
"@@.npc_barista;Just my makeup! It's so much fun to get it ruined, but then so much work to fix it!@@" She giggles as she applies the finishing touches and then smiles at you and departs leaving you with no more answers than you had before.
<<else>>
You go about your business as <<=setup.getNpcName("npc_barista","nickname")>> fixes her makeup and departs.
<</if>>
<br><br>
Alone in the bathroom, you look at the message scrawled on the mirror. What looks like a location path for the company's internal storage network is followed by a crude drawing that is maybe meant to be a fish, maybe a marlin?<br>
<br>
[<<moveTo "event_barista_bathroom_message_3" "Go back to your desk and see if you can follow the link she gave you." 30 "<<set $scene.workEventReturn='room_office_sissy_secretary_work_lunchbreak'>>">>]<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Just go about your business." 30>>]
</div>/*#
#desc: lookup link npc_barista gave you
#status: WRITTEN 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.attempts = 0>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You bring up the corporate data share and punch in the address <<=setup.getNpcName("npc_barista","nickname")>> wrote in the bathroom. You are brought to a folder with a single video file called "THE_TRUTH.mov" only to find that it is password protected.<br>
<br>
<<printThought "Hmm, what could the password be?">><br>
<br>
<<include "barista_file_password_list">><br>
[<<moveTo $scene.workEventReturn 'Give up and go back to work.' 60>>]
</div>[<<moveTo "event_barista_bathroom_message_4" "Try something random." 0 "<<set $scene.pass=false>>">>]<br>
[<<moveTo "event_barista_bathroom_message_4" 'Try "helpme" as the password.' 0 "<<set $scene.pass=false>>">>]<br>
[<<moveTo "event_barista_bathroom_message_4" 'Try "fish" as the password.' 0 "<<set $scene.pass=false>>">>]<br>
[<<moveTo "event_barista_bathroom_message_4" 'Try "<<=setup.getNpcName("npc_barista","nickname")>>lovessex" as the password.' 0 "<<set $scene.pass=false>>">>]<br>
[<<moveTo "event_barista_bathroom_message_4" 'Try "swordfish" as the password.' 0 "<<set $scene.pass=true>>">>]<br>
[<<moveTo "event_barista_bathroom_message_4" 'Try "password" as the password.' 0 "<<set $scene.pass=false>>">>]<br>/*#
#desc: lookup link npc_barista gave you
#status: WRITTEN 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.attempts += 1>>
<<if $npc_boss.profile>>
<<set $scene.bossname = setup.getNpcName("npc_boss","formal")>>
<<else>>
<<set $scene.bossname = setup.getNpcName("npc_boss","custom","the <<man npc_boss>> behind the desk")>>
<</if>>
<<if $npc_work_doctor.profile>>
<<set $scene.docname = setup.getNpcName("npc_work_doctor","formal")>>
<<else>>
<<set $scene.docname = setup.getNpcName("npc_work_doctor","custom", "the <<man npc_work_doctor>> in the lab coat")>>
<</if>>
<<if $scene.pass>>
<<set $npc_barista.flags.video.viewed = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.pass>>
You enter "swordfish" and hit enter and are given access to the file which immediately starts playing. The time stamp puts it not too far before you began working as a secretary... you hurriedly turn down the volume lest your <<=setup.getNpcName("npc_manager","title")>> overhears.<br>
<br>
Crisp surveillance footage finds you looking down at an office that makes even <<=ps(setup.getNpcName("npc_manager","formal"))>> look humble.
<<if $npc_boss.profile>>
<<=setup.getNpcName("npc_boss","formal")>> is sitting behind the desk as
<<else>>
A familiar <<man npc_boss>> whom you can't quite place is sitting behind the desk as
<</if>>
<<if $npc_work_doctor.profile>>
<<=setup.getNpcName("npc_work_doctor","formal")>>
<<else>>
a <<man npc_work_doctor>> in a lab coat
<</if>>
walks into view.<br>
<br>
"@@.npc_work_doctor;It is done. I refreshed and amplified the treatment, she should be of no further trouble,@@" states <<=$scene.docname>>.<br>
<br>
"@@.npc_boss;Very good,@@" replies <<=$scene.bossname>>, "@@.npc_boss;you are certain there will be no future incidents? Even beyond her getting what she deserves, I cannot have her interfering with my plans.@@"<br>
<br>
"@@.npc_work_doctor;Yes, we have taken additional precautions this time. There will be some... side effects, and it means that she is now fitted with some additional equipment, but the result is exactly what you requested. By leveraging the subject's own pleasure pathways, we disrupt any potentially rebellious thought. As we have found, punishments, no matter how perfectly aligned, can sometimes harden resolve, particularly in such a previously strong-willed subject. Thus what I refer to as "Project Clarity" — any attempt to resist or disobey is diffused through heightened pleasure via a combination of implanted commands and feedback loops to keep her docile,@@" <<=$scene.docname>> explains at length.<br>
<br>
Nodding slowly, <<=$scene.bossname>> asks a follow-up question. "@@.npc_boss;So the incident earlier today?@@"<br>
<br>
"@@.npc_work_doctor;With this particular subject there appears to be a glitch wherein a complete pleasure overload can temporarily short-circuit things. I have added chemical enhancements to her routine — disguised as deliciously addictive candy, to blunt her thoughts in general, but even if it happens again, it should be no cause for concern. The conditions required to trigger such are very extreme, the programming re-asserts itself within seconds after stimulation is withdrawn, and who would believe what a slut talks about in the throes of passion?@@" <<=$scene.docname>> re-assures.<br>
<br>
"@@.npc_boss;Very well. Nonetheless I would like to step up the frequency of her therapy sessions to more closely monitor all effects. We need to be certain of all details if we are to scale up this new procedure. You are certain that the good doctor can still be trusted?@@"<br>
<br>
"@@.npc_work_doctor;Yes, I have discussed with her at length and her relocation off-site may actually be a boon as the perceived "looser" connection to the company will cause employees to open up to her more readily. I will continue to monitor her loyalty, of course, but I dare say we have little chance of meeting your timeline without the benefit of her assistance and expertise.@@"<br>
<br>
"@@.npc_boss;As you say. Well, raise the funding for her research project to keep her happy, who knows, perhaps it will end up providing the results she promises? Speaking of, I have a promising new subject for her...@@"<br>
<br>
The video stops abruptly and you quickly close it, overwhelmed by the cascade of revelations that only seem to spark more questions.<br>
<br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
<<else>>
The system rejects your password, you remain locked out of the file.<br>
<br>
<<include "barista_file_password_list">>
<br>
[<<moveTo $scene.workEventReturn 'Give up and go back to work.' 60>>]
<</if>>
</div>/*#
#desc: attempt to visit npc_boss
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.allow = State.hasPlayed("event_boss_admin_8") && setup.hasFreeTime($now, $player, $currentTasks, 3600) && (random(1,10) < 5
|| setup.checkTaskCompleted('task_destroy_technician') && !State.hasPlayed('event_destroy_technician_report_1')
|| setup.checkTaskCompleted('task_destroy_ex') && !State.hasPlayed('event_destroy_exgirlfriend_report')
|| setup.checkTaskCompleted('task_destroy_psych') && !State.hasPlayed('event_destroy_psychiatrist_report')
|| setup.checkTaskCompleted('task_destroy_landlord') && !State.hasPlayed('event_destroy_landlord_report')
|| setup.checkTaskCompleted('task_destroy_primrose') && !State.hasPlayed('event_destroy_primrose_report')
|| State.hasPlayed("event_destroy_technician_report_1") && setup.daysToDate($npc_boss.flags.destroy_technician, $now) > 10) ||
$npc_manager.stage == 5 && random(1,10) < 4>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
<<if $npc_boss.flags.data_crystal < 2>>
<<if setup.checkItemInInventory('party_data_crystal')>>
You look at the button that will send the elevator rising up towards <<=ps(setup.getNpcName("npc_boss", "formal"))>> top-floor office. The data crystal sits in your pocket like a molten nugget, almost burning you with the secrets it contains...<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_work_boss_first_2" 'Press the button.' 600 "<<spendWillpower 1>>">>] <<hint $options "This is going to take an act of will.">><br>
<<else>>
[@@.link_locked;You can't seem to bring yourself to press the button to send the elevator up.@@]<br>
<</if>>
<<else>>
[@@.link_locked;No way am I going to try and meet <<him npc_boss>> without bringing the data crystal with me!@@]<br>
<</if>>
<<elseif $scene.allow>>
You scan your badge and your heart skips a beat in excitement when the elevator door closes and rises towards <<=ps(setup.getNpcName("npc_boss", "formal"))>> office.<br>
<br>
[<<moveTo "event_boss_afterwork_suck_1" 'Continue up.' 300>>]
<<else>>
You scan your badge only for the button for <<=ps(setup.getNpcName("npc_boss", "formal"))>> to fail to appear.<br>
<br>
<<printThought "Guess <<he npc_boss>> doesn't have any interest in seeing me today...">>
<</if>>
<<if !$scene.allow>>
<br><br>
[<<moveTo "company_lobby" 'Just go down to the lobby.' 300>>]
<</if>>
</div>/*#
#desc: run away from npc_boss
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 20>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
Somehow you muster the willpower to break free of <<=ps(setup.getNpcName("npc_boss", "formal"))>> nigh irresistible hold. In a burst of speed you run to the elevator. As you dive in and smash the door close button you glance back, expecting <<him npc_boss>> to be right on your heels.<br>
<br>
Instead <<he npc_boss>> remains unmoved, smiling at you in... amusement? You get but a momentary glimpse before the doors close, the last thing you hear is <<his npc_boss>> soft chuckle.<br>
<br>
Sitting on the floor of the elevator you pant in panic, watching the numbers tick down as you realise you must have managed to hit the button for the lobby. Heart still trying to pound its way out of your chest you manage to get to your feet by the time you reach the ground floor. No security personnel are there to greet you and you sigh in relief, making your way across the large lobby, expecting someone to leap out and grab you at any moment...<br>
<br>
[<<moveTo "company_lobby" 'Lobby.' 300>>]
</div>/*#
#desc: go up to suck off boss after work
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.visitBoss = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
The elevator door opens on <<=ps(setup.getNpcName("npc_boss","formal"))>>, the front panel of <<his npc_boss>> desk retracted, and <<his npc_boss>> legs confidently spread in silent invitation... no, not invitation, demand.<br>
<br>
<<if $npc_manager.stage >= 5>>
[<<moveTo "event_boss_stage5_1" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<<elseif !State.hasPlayed("event_boss_goal_1")>>
[<<moveTo "event_boss_goal_1" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<<elseif State.hasPlayed("event_boss_goal_1") && !State.hasPlayed("event_boss_missions_intro_1")>>
[<<moveTo "event_boss_missions_intro_1" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<<elseif setup.checkTaskLocationlessComplete('task_destroy_technician') && !State.hasPlayed('event_destroy_technician_report_1')>>
[<<moveTo "event_destroy_technician_report_1" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<<elseif setup.checkTaskLocationlessComplete('task_destroy_ex') && !State.hasPlayed('event_destroy_exgirlfriend_report')>>
[<<moveTo "event_destroy_exgirlfriend_report" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<<elseif setup.checkTaskLocationlessComplete('task_destroy_psych') && !State.hasPlayed('event_destroy_psychiatrist_report')>>
[<<moveTo "event_destroy_psychiatrist_report" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<<elseif setup.checkTaskLocationlessComplete('task_destroy_landlord') && !State.hasPlayed('event_destroy_landlord_report')>>
[<<moveTo "event_destroy_landlord_report" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<<elseif setup.checkTaskLocationlessComplete('task_destroy_primrose') && !State.hasPlayed('event_destroy_primrose_report')>>
[<<moveTo "event_destroy_primrose_report" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<<elseif State.hasPlayed("event_destroy_technician_report_1") && setup.daysToDate($npc_boss.flags.destroy_technician, $now) > 10>>
[<<moveTo "event_destroy_technician_fate_1" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<<else>>
[<<moveTo "event_boss_afterwork_suck_2" '<<=setup.getNpcName("npc_boss","formal")>> needs <<his npc_boss>> suck.' 360>>]
<</if>>
</div>/*#
#desc: suck off boss after work
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_boss.penis_size 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 18 'normal' $SEEN_STRANGER>>
<<set $scene.visitBoss = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You dutifully crawl under <<=ps(setup.getNpcName("npc_boss","formal"))>> desk to suck <<him npc_boss>> off.<br>
<br>
The entire time <<he npc_boss>> says not a word, the only sound your soft, passionate sucking and the occasional click of the mouse or tap of a key. Even <<his npc_boss>> climax proceeds with measured calm, <<his npc_boss>> <<getWordPenis "npc_boss">> twitching in your throat<<if $fetish.cum>> as it deposits <<=ps(setup.getNpcName("npc_boss","formal"))>> divine goo<</if>>.<br>
<br>
You wait for any sort of praise or feedback... but <<=setup.getNpcName("npc_boss","formal")>> merely pushes you away with one thigh, without so much as speaking as you retreat, bow, and leave the office.<br>
<br>
<<printThought "<<He npc_boss>> is so diligent to focus on his work, I am so lucky just to serve such a magnificent <<man npc_boss>>">><br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: suck off boss after work
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_boss.penis_size 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 18 'normal' $SEEN_STRANGER>>
<<set $scene.visitBoss = true>>
<<addRandomEvent $randomEvents['elevator_home'] 'boss_home_invite'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You suck obediently and, eventually, <<=setup.getNpcName("npc_boss","formal")>> speaks.<br>
<br>
"@@.npc_boss;If you seek to gain my further favour, well... I shall dispel that notion. Your attempted theft and betrayal tells me that I can trust you only for what you are — a <<if $player.body_ref.vagina>>trio<<else>>pair<</if>> of holes from which I might take my pleasure. Any chance of something further was dashed when I caught you invading my office.@@"<br>
<br>
Even if your mouth was not presently full of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>, you really have no response, so you merely complete the task in front of you before <<=setup.getNpcName("npc_boss","formal")>> dismisses you back down the elevator.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: sent to boss for losing pony race
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You've barely started working when <<=setup.getNpcName("npc_manager","formal")>> appears with a slight frown on her face.<br>
<br>
"@@.npc_manager;So, <<=setup.getNpcName("npc_boss","formal")>> has chosen this afternoon for you to pay off your debt for losing the race. You will report to <<his npc_boss>> office on the top floor and serve <<him npc_boss>> as required for the remainder of the afternoon.@@"
<<if $npc_manager.affection > $npc_manager.anger>>
She pauses, her expression softening slightly as she smiles at you. "@@.npc_manager;And <<=$player.first_name>>? Be careful.@@"
<</if>>
<br><br>
You nod, somewhat nervous about what <<=setup.getNpcName("npc_boss","formal")>> has planned for you as you head for the elevator and key in for the very top floor...<br>
<br>
[<<moveTo "event_boss_first_cock_training_2" 'Continue.' 300>>]
</div>/*#
#desc: sent to boss for cock training
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You've barely started working when <<=setup.getNpcName("npc_manager","formal")>> appears with a slight frown on her face.<br>
<br>
"@@.npc_manager;So, <<=setup.getNpcName("npc_boss","formal")>> has requisitioned you for the afternoon... I am loathe to part with you but, unfortunately neither of us has much choice.@@"
<<if $npc_manager.affection > $npc_manager.anger>>
She pauses, her expression softening slightly as she smiles at you, "@@.npc_manager;And <<=$player.first_name>>? Be careful.@@"
<</if>>
<br><br>
You nod, somewhat nervous about what <<=setup.getNpcName("npc_boss","formal")>> has planned for you as you head for the elevator and key in for the very top floor...<br>
<br>
[<<moveTo "event_boss_first_cock_training_2" 'Continue.' 300>>]
</div>/*#
#desc: dressed for boss cock training
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItem 'armbinder_black'>>
<<wearItem 'armbinder_black' true>>
<<addItem 'cunnilingus_hood'>>
<<wearItem 'cunnilingus_hood' true>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<applyExperience 'bondage' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName("npc_boss","formal"))>> office to be greeted by your predecessor <<=setup.getNpcName("npc_secretary","nickname")>>. "@@.npc_secretary;Come, <<=setup.getNpcName("npc_boss","formal")>> is expecting you, but I must help you prepare for your task.@@"<br>
<br>
You nod, catching a brief glimpse of <<=setup.getNpcName("npc_boss","formal")>> working behind <<his npc_boss>> desk in the distance before <<=setup.getNpcName("npc_secretary","nickname")>> takes you into a side room and guides you to place your arms behind your back into an armbinder.<br>
<br>
Once restrained she follows up with a strange hood — covering your head is leaves your eyes and mouth free, with small inserts attached to rubber tubes, and an integrated ring gag. As you inhale through your nose you realise this hood would be nigh perfect for cunnilingus, which seems odd.<br>
<br>
<<if $scene.addCollar>>
Finally a large collar is added around your neck, along with a leash
<<else>>
A leash is clipped to the front of your collar
<</if>>
and <<=setup.getNpcName("npc_secretary","nickname")>> leads you out.<br>
<br>
[<<moveTo "event_boss_first_cock_training_3" 'Continue.' 300>>]
</div>/*#
#desc: positioned and start boss cock training
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub =setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $INCOGNITO>>
<<set _penis =setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'terrible' $INCOGNITO>>
<<applyExperience 'bondage' 12 'normal' $INCOGNITO>>
<<addItem 'armbinder_black'>>
<<wearItem 'armbinder_black' true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
/%TODO: npc_boss cock view %/
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_boss","formal"))>> doesn't even look up, instead merely tapping a button that has a front panel of <<his npc_boss>> desk slide away for <<=setup.getNpcName("npc_secretary","nickname")>> to help you crawl underneath.<br>
<br>
<<printThought "All this just to suck <<his npc_boss>> cock for the afternoon? I guess that's simple enough...">><br>
<br>
You shuffle forward under the large desk until the tip of your armbinder can be attached and the panel slides shut to conceal you. This close to <<=setup.getNpcName("npc_boss","formal")>> you feel <<his npc_boss>> powerful presence chipping away at your focus. A part of you wonders what it is about <<him npc_boss>> that fills you with the urge to submit whenever you're nearby. It's a starkly different feeling than you get from <<=setup.getNpcName("npc_manager","formal")>>, more of a biological compulsion than the more emotional reaction you have to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
Whatever it is you find yourself centimetres away from <<his npc_boss>> crotch, noting the distinct bulge in <<his npc_boss>> pants, your mouth watering and drooling past your gag as your bound position forces you kneeling and staring straight ahead.<br>
<br>
You hear the click of <<=ps(setup.getNpcName("npc_secretary","nickname"))>> heels as she walks around the desk. You see her hand reach down to gently unzip <<=ps(setup.getNpcName("npc_boss","formal"))>> pants and pull <<his npc_boss>> <<getWordPenis "npc_boss">> into view, the scent of <<his npc_boss>> <<if $npc_boss.fem>>musk<<else>>masculinity<</if>> becoming even stronger when she clips your nasal tubes to the front of <<his npc_boss>> chair — your every breath filtered past <<his npc_boss>> heavy balls.
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
You have long ago embraced an addiction to cock, but this is something more.
<<else>>
You love cock, but this is something altogether more.
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
You have started to understand the appeal of cock, but what you feel now is like something else entirely.
<<else>>
You don't like cock... or at least, that's what you thought prior to this moment.
<</if>>
<</if>>
Even at a mere partial chub <<=ps(setup.getNpcName("npc_boss","formal"))>> fills you with not just desire, but a primal need.<br>
<br>
You try to lunge forward, to lick and suck, your tongue waggling in want, but all you do is strain your shoulders as the clip attached to the tip of your armbinder holds you back. You see <<=ps(setup.getNpcName("npc_secretary","nickname"))>> hand finally pull away and you smile — you want nothing to obscure the view of penile perfection in front of you. With each deep snort of <<his npc_boss>> heady scent your tunnel vision closes in further, and you could not be more delighted.<br>
<br>
You want <<his npc_boss>> cock, you NEED <<his npc_boss>> cock, to serve it, to worship it, to give your body to it... you breathe only through your nose, drooling in desire as you try to get as much of <<him npc_boss>> as you can... tortured by heaven being so close, and yet so far as <<=setup.getNpcName("npc_boss","formal")>> continues to work away in near silence.<br>
<br>
[<<moveTo "event_boss_first_cock_training_4" 'Continue.' 4000>>]
</div>/*#
#desc: watch boss cock training
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub =setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $INCOGNITO>>
<<set _penis =setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'terrible' $INCOGNITO>>
<<applyExperience 'bondage' 12 'normal' $INCOGNITO>>
<<applyStress 5>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
/%TODO: npc_boss cock view %/
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You think you're starting to go a bit mad. All you can do is stare at <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>; <<his npc_boss>> sight and scent your entire world as you drool and moan... and <<he npc_boss>> responds with naught but silence.<br>
<br>
You have long ago lost track of time, caught up in <<his npc_boss>> oppressive aura. All you can think of is serving <<him npc_boss>>, of somehow earning the heavenly gift of <<his npc_boss>> hard cock sliding into you, to know that your body was of service to <<him npc_boss>>...<br>
<br>
Tormented by want, but also endlessly entertained by the sight of <<his npc_boss>> member, of every wrinkle of <<his npc_boss>> balls, of the thick shaft that occasionally twitches or, most excitedly, rises to half staff... as agonising as it is to be so close without even tasting it you would still gladly stare like this for hours, for what sight could be more beautiful than this view of <<if !$npc_boss.fem>>masculine <</if>>perfection?<br>
<br>
"@@.npc_boss;So,@@" <<he npc_boss>> states, breaking the silence for the first time, <<his npc_boss>> <<if $npc_boss.fem>>commanding<<else>>deep<</if>> voice sending a rumble of submissive desire through your body as you hang on <<his npc_boss>> every word.
<<switch $npc_boss.flags.worked_max_cock>>
<<case 0>>
"@@.npc_boss;I note that you have begun using your new chair, but that you have failed to avail yourself of my personalised attachments. A disappointment. They are included with each chair so that employees can better focus on their most central duty — of surrendering themselves to serving my will.@@"<br>
<br>
You moan, wishing you could show <<him npc_boss>> with word or deed how much you want to feel <<his npc_boss>> cock inside of you. Is this why <<he npc_boss>> is tormenting you such? Though you are certain the artificial clones cannot compare to the flesh and blood masterpiece original you yearn to feel <<him npc_boss>> inside you in every way and make a mental note to stuff yourself properly for your next shift.
<<case 1>>
"@@.npc_boss;I note that you have sampled one of the attachments on your new chair. But only the one. While I can only be in one place, personally, I include those facsimiles with each chair so that employees can better focus on their most central duty — of surrendering themselves to serving my will, in all ways, and at all times.@@"<br>
<br>
You moan, wishing you could show <<him npc_boss>> with word or deed how much you want to feel <<his npc_boss>> cock inside of you. Is this why <<he npc_boss>> is tormenting you such? Though you are certain <<his npc_boss>> real flesh and blood member would feel and taste infinitely better than the artificial clone you previously sampled. You yearn to feel <<him npc_boss>> inside you in every way and make a mental note to stuff yourself fully and properly for your next shift.
<<case 2>>
<<if $player.body_ref.vagina>>
"@@.npc_boss;I note that you have sampled some of the attachments on your new chair, but you have three holes, why not allow all of them to experience my glory? While I can only be in one place, personally, I include those facsimiles with each chair so that employees can better focus on their most central duty — of surrendering themselves to serving my will, in all ways, and at all times.@@"<br>
<br>
You moan, wishing you could show <<him npc_boss>> with word or deed how much you want to feel <<his npc_boss>> cock in any and all of your holes. Is this why <<he npc_boss>> is tormenting you such? Though you are certain <<his npc_boss>> real flesh and blood member would feel and taste infinitely better than the artificial clone you previously sampled. You yearn to feel <<him npc_boss>> inside you in every way and make a mental note to stuff yourself fully and properly for your next shift.
<<else>>
"@@.npc_boss;I note that you have been taking advantage of the full features of your new chair. While I can only be in one place, personally, I include those facsimiles with each chair so that employees can better focus on their most central duty — of surrendering themselves to serving my will, in all ways, and at all times. That you have shown such enthusiasm in your work is a wonderful sign for your future career.@@"<br>
<br>
You moan with want. Yes! You've been training so long! If <<he npc_boss>> would only just fuck you! Let you feel <<his npc_boss>> hard penis plunging into your body while a clone kept you "ready" at the other end... that would be as close to perfection as you could imagine...
<</if>>
<<case 3>>
"@@.npc_boss;I note that you have been taking advantage of the full features of your new chair. While I can only be in one place, personally, I include those facsimiles with each chair so that employees can better focus on their most central duty — of surrendering themselves to serving my will, in all ways, and at all times. That you have shown such enthusiasm in your work is a wonderful sign for your future career.@@"<br>
<br>
<<if $player.body_ref.vagina>>
You moan with want. Yes! You've been training so long! If <<he npc_boss>> would only just fuck you... let you feel <<his npc_boss>> hard penis plunging into you while a pair of clones had your airtight... that would be as close to perfection as you could imagine...
<<else>>
You moan with want. Yes! You've been training so long! If <<he npc_boss>> would only just fuck you... let you feel <<his npc_boss>> hard penis plunging into you while a clone kept you "ready" at the other end... that would be as close to perfection as you could imagine...
<</if>>
<<default>>
ERROR: unexpected npc_boss.flags.worked_max_cock <<=$npc_boss.flags.worked_max_cock>>
<</switch>>
<br><br>
As <<he npc_boss>> has talked <<his npc_boss>> <<getWordPenis "npc_boss">> has risen to full, glorious hardness... a perfect <<if $npc_boss.fem>>girlcock<<else>>obelisk of masculinity<</if>> that you want inside of you, but <<he npc_boss>> makes no further move, instead merely chuckling softly at your desperate moans while <<he npc_boss>> continues to work.<br>
<br>
<<printThought "Please... I need that cock...">><br>
<br>
[<<moveTo "event_boss_first_cock_training_5" 'Keep staring.' 1000>>]
</div>/*#
#desc: boss gets blowjob in front of you
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub =setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'unbelievable' $INCOGNITO>>
<<set _penis =setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'unbelievable' $INCOGNITO>>
<<applyStress 20>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
/%TODO: npc_boss cock view %/
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You feel your sanity slipping slightly as silence stretches on once again. You almost hyperventilate in unbridled desire to fill your nostrils with the scent of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>, but <<he npc_boss>> moves no closer, instead remaining rock-hard just beyond reach as you strain against your bonds and weep in desperation.<br>
<br>
<<printThought "Please...">><br>
<br>
As you stare at <<his npc_boss>> hard <<getWordPenis "npc_boss">> you hear the sound of approaching footsteps, heels clicking on the marble floor, echoing through the office as <<=setup.getNpcName("npc_secretary","nickname")>> returns.<br>
<br>
Rather than her hand, her entire face comes into view as she leans down to deep-throat <<=setup.getNpcName("npc_boss","formal")>> at a single stroke. You cry out in jealous anger — now just her lips being in the place you wish more than anything your own could be, but now, by swallowing the full length of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>, she is blocking the view of perfection... the view of <<his npc_boss>> balls with rivulets of drool trickling down, gorgeous, but insufficient consolation compared to your previous sight.<br>
<br>
Despite your anger you cannot look away, imagining how it would feel if it was you sucking <<him npc_boss>> off, how <<his npc_boss>> <<getWordPenis "npc_boss">> would feel thrusting into your throat, how you would use your tongue...<br>
<br>
<<=ps(setup.getNpcName("npc_boss","formal"))>> hand appears to grip <<=ps(setup.getNpcName("npc_secretary","nickname"))>> hair as you sense an oncoming orgasm. You whine as you watch <<=ps(setup.getNpcName("npc_secretary","nickname"))>> eyes roll back as she is held down — YOU would need no such encouragement, the merest opportunity and you would gladly pass out rather than give up the slightest throat-bulging fullness as you watch her eyes roll back in pleasure you can but fantasise about as she is blessed with <<his npc_boss>> seed.<br>
<br>
<<His npc_boss>> grip releases and she licks <<him npc_boss>> clean and then commits a further crime by zipping <<him npc_boss>> back up. Sight of <<getWordPenis "npc_boss">> obscured, <<his npc_boss>> scent blunted... you despair that you have descended to an even more tormenting layer of hell...<br>
<br>
<<if $npc_boss.flags.blowjobContest.won>>
"@@.npc_boss;I imagine you expected that to be you today, but you were not ready. This afternoon's training was to teach you proper appreciation. Now, you must show worthiness. Work an entire shift in proper form — with one of my clones stuffed in each of your holes. When you do that, only then will I summon you to receive your prize.@@"<br>
<br>
You groan with want, the amount of hurdles you have had to clear making the thought of finally filling your mouth with <<his npc_boss>> <<getWordCum>> an even greater obsession.<br>
<br>
<</if>>
[<<moveTo "event_boss_first_cock_training_6" 'Keep staring.' 900>>]
</div>/*#
#desc: boss gets blowjob in front of you
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'armbinder_black' true>>
<<deleteItem 'armbinder_black'>>
<<removeItem 'cunnilingus_hood' true>>
<<deleteItem 'cunnilingus_hood'>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<if $scene.addCollar>>
<<removeItem 'loose_collar' true>>
<<deleteItem 'loose_collar'>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
You hear foot-steps circle the desk once again and then you are being dragged out from under the desk. Instinctually you want to fight back, but the sight of <<=setup.getNpcName("npc_boss","formal")>> reminds you of your duties. You must show <<him npc_boss>> your obedience, your control, an outburst would be but an embarrassment, your duty is to prove your worthiness if you ever wish to taste <<his npc_boss>> <<getWordPenis "npc_boss">>... and you so, so do wish...<br>
<br>
Led away out of sight and away from <<his npc_boss>> presence your urge to submit to <<=setup.getNpcName("npc_boss","formal")>> lessons somewhat, to be replaced with a general psychic exhaustion.<br>
<br>
Your hood and armbinder removed, your arms hang limp at your sides and you share a momentary glance with <<=setup.getNpcName("npc_secretary","nickname")>>. Seeming to take pity on you, she pulls you in for a kiss, your tongues entwining as you taste the slightest lingering hint of <<=setup.getNpcName("npc_boss","formal")>> <<getWordCum>>. The flavour is even better than you could have imagined, delicious beyond words even as it leaves you, more than anything, desperate for the authentic article, straight from the source.<br>
<br>
<<=setup.getNpcName("npc_secretary","nickname")>> smiles, and nods in silent understanding. You are still jealous of her, but you are also thankful that she took pity to share this small favour. She takes your leash in hand once again to lead you to the elevator, only there removing <<if $scene.addCollar>>your collar<<else>>it<</if>> and sending you on your way.<br>
<br>
The elevator doors close and <<=ps(setup.getNpcName("npc_boss","formal"))>> influence begins to fade. With each floor you descend the overwhelming need to submit to <<him npc_boss>> lessens. By the time you are walking up the hall to <<=ps(setup.getNpcName("npc_manager","formal"))>> office it all seems like a strange dream...<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: contact npc_boss about data crystal
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.data_crystal.boss = true>>
<<set $npc_boss.flags.visit_unlock = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You send a message to <<=setup.getNpcName("npc_boss","formal")>> that you have obtained information that would be of interest to <<him npc_boss>>. To your surprise you immediately get a response back... from <<his npc_boss>> secretary.<br>
<br>
"@@.npc_secretary;Hello! <<=setup.getNpcName("npc_boss","formal")>> is busy right now, but if you would come to <<his npc_boss>> office after work you can drop off whatever evidence you have uncovered!@@"<br>
<br>
You think back to your brief, intimidating experience in <<his npc_boss>> office. Do you dare venture there alone, without <<=setup.getNpcName("npc_manager","formal")>> to protect you?<br>
<br>
[<<moveTo "room_computer" "Close the message." 60>>]
</div>/*#
#desc: elevator to first visit npc_boss
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 5>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You step aboard the elevator and reach for the button for <<=ps(setup.getNpcName("npc_boss", "formal"))>> stratospheric top-floor office. Your heart begins to race as your trembling finger extends, you bite your lip, mind racing as you recall your previous, unforgettable encounter with the powerful <<man npc_boss>> that stands at the head of the company...<br>
<br>
<<printThought 'Do I really want to do this? What is <<he npc_boss>> going to do to me... what might <<=setup.getNpcName("npc_manager","formal")>> do if she found out?'>><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_work_boss_first_2" 'Press the button.' 600 "<<spendWillpower 1>>">>] <<hint $options "This is going to take an act of will.">><br>
<<else>>
[@@.link_locked;You can't seem to bring yourself to press the button to send the elevator up.@@]<br>
<</if>>
[<<moveTo "company_lobby" 'Just go down to the lobby.' 300>>]
</div>/*#
#desc: ride up for first visit with npc_boss
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<<set $npc_boss.flags.data_crystal = 1>>
<<set $npc_manager.flags.office_unlocked = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Your heart drops into your stomach as the elevator races upwards. You've never felt it rise this fast, but, then again, you've never ridden it to the top of the castle, above the clouds, to the office of one of the richest, most powerful <<if $npc_boss.fem>>people<<else>>men<</if>> in the city.<br>
<br>
Your heart races as, all too soon, the elevator doors open and you find yourself looking across the large office at <<=setup.getNpcName("npc_boss", "formal")>>.<br>
<br>
"@@.npc_boss;Welcome, Miss <<=$player.last_name>>, so nice of you to drop in. You indicated that you had something for me?@@"<br>
<br>
Even from this distance you can feel <<his npc_boss>> magnetic pull,
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getTotalValue("submission") > 15>>
and you reflexively drop to the ground to crawl towards <<his npc_boss>> desk.<br>
<br>
You stop in front <<his npc_boss>> desk, looking up from your knees as one ought when at the foot of a <<if $npc_boss.fem>>Goddess<<else>>God<</if>>.
<<else>>
and you find yourself putting one foot in front of the other to walk towards <<his npc_boss>> desk, barely resisting the urge to crawl.<br>
<br>
Stopping in front of <<his npc_boss>> desk <<his npc_boss>> aura is even stronger and you drop submissively to your knees.
<</if>>
<<else>>
<<if setup.getTotalValue("submission") > 10>>
and you find yourself putting one foot in front of the other to walk towards <<his npc_boss>> desk, with a momentary urge to drop to the ground and crawl. Standing in front of <<his npc_boss>> desk feels wrong and you have an almost overwhelming desire to drop to your knees.
<<else>>
and you find yourself putting one foot in front of the other to walk towards <<his npc_boss>> desk. Standing in front of <<his npc_boss>> desk feels wrong, and you have a fleeting thought that you should be on your knees.
<</if>>
<</if>>
<br><br>
Nervously, unable to meet <<his npc_boss>> steel gaze, and almost tripping over every other word, you tell <<him npc_boss>> the purpose of your visit, about the data crystal you accidentally received, and how it contains information potentially damaging to the company.<br>
<br>
"@@.npc_boss;I see... and do you have this data crystal with you?@@"<br>
<br>
<<if setup.checkItemInInventory('party_data_crystal')>>
You nod, temporarily unable to form words.<br>
<br>
"@@.npc_boss;And what sort of information, exactly, is on this crystal?@@"<br>
<br>
[<<moveTo "room_data_crystal_bad_end_1" 'Tell <<him npc_boss>> it contains evidence implicating <<=setup.getNpcName("npc_manager", "formal")>> in embezzlement from the company.' 600>>] <<hint $options "Telling <<him npc_boss>> something like this seems like a dangerous idea...">><br>
[<<moveTo "event_work_boss_first_3" 'Tell <<him npc_boss>> that it contains a falsified plot intended to frame <<=setup.getNpcName("npc_manager", "formal")>>.' 600>>]
<<else>>
<<if setup.checkItemOwned('party_data_crystal')>>
<<printThought "What was I thinking, not bringing it with me?">>
<<else>>
<<printThought 'Shit, I gave it to <<=setup.getNpcName("npc_manager", "formal")>>... maybe I can steal it back from her office?'>>
<</if>>
<br><br>
You feel even more embarrassed as you stutter and confess that no, you left it at home for safe keeping.<br>
<br>
"@@.npc_boss;For safe keeping? Or is it that you forgot it like a brainless, ditzy slut?@@"<br>
<br>
<<He npc_boss>> rises to your feet as you try to answer and your words seem to stick in your throat.<br>
<br>
<<He npc_boss>> grins... no, <<he npc_boss>> smirks. "@@.npc_boss;So, obviously you taking up my valuable time, only to have nothing for me, deserves punishment, but it would be quite improper for me to lay hands upon you without raising the issue to your direct supervisor first and... I get the feeling that the lovely <<=setup.getNpcName("npc_manager", "other")>> is quite unaware of your little... excursion.@@"<br>
<br>
You start to shake your head, then nod, too panicked to even think as <<he npc_boss>> chuckles, a rich, evil laugh that echoes off the glass walls of the office, and has surely been the soundtrack to the doom of people far more important than yourself.<br>
<br>
Leaning down <<he npc_boss>> reaches into a desk drawer and to pull forth an item that looks like a coloured glass rod connected to a flat black handle with a small switch.<br>
<br>
"@@.npc_boss;Here, show me your breasts, then pick that up.@@"<br>
<br>
[<<moveTo "event_work_boss_first_punish_1" 'Obey.' 180 "<<spendWillpower 1>>">>]<br>
[<<moveTo "event_work_boss_flee" 'Run.' 600>>]
<</if>>
</div>/*#
#desc: first visit with npc_boss punishment - remove top
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<<include "calcTopId">>
<<removeItem $scene.topId true>>
<<set $scene.bra = setup.getItemFromType("bra")>>
<<if $scene.bra != "">>
<<removeItem $scene.bra true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You do as <<=setup.getNpcName("npc_boss", "formal")>> commands, shedding your top and standing before <<him npc_boss>> with your <<if $player.body.breastsize[0] > 0>>breasts<<else>>chest<</if>> exposed, instinctually knowing that you should not even attempt to cover yourself.<br>
<br>
<<switch setup.calcBreastSize()>>
<<case "massive">>
"@@.npc_boss;A bit large for my preference, but those orbs of yours do send quite the message as to your existence as a sex object. The important thing, for now, is their sensitivity.@@"
<<case "large">>
"@@.npc_boss;Such perfect breasts, large, and oh-so-sensitive...@@"
<<case "medium">>
"@@.npc_boss;Such shapely breasts, and oh-so-sensitive, I imagine.@@"
<<case "small">>
"@@.npc_boss;Such cute, perky breasts. A nice starter pair, and quite sensitive, I am certain.@@"
<<case "none">>
"@@.npc_boss;You know, you really should invest in a pair of breasts... still, I am sure those cute little nipples will be properly sensitive for today's purpose.@@"
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
<<He npc_boss>> grins, which only makes your heart race faster. "@@.npc_boss;The device in front of you is a violet wand — meant to administer painful shocks, in a quite beautiful manner. This one, in particular, has been modified to my exact specifications to make it agonisingly painful... pick it up, and use it to shock your right nipple.@@"<br>
<br>
<<printThought "Oh shit, <<hes npc_boss>> going to make me punish myself...">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_work_boss_first_punish_2" 'Do as <<he npc_boss>> commands.' 60 "<<spendWillpower 1>>">>] <<hint $options "Even as you are filled with the primal need to obey <<him npc_boss>>... you find yourself reluctant to pick up the wand.">><br>
<<else>>
[@@.link_locked;You are mentally fried, you cannot bring yourself to pick up the wand.@@]<br>
<</if>>
[<<moveTo "event_work_boss_flee" 'Run.' 600>>]
</div>/*#
#desc: first visit with npc_boss punishment - first shock
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 16 'terrible' $SEEN_STRANGER>>
<<applyExperience 'submission' 16 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Unable to look away from <<his npc_boss>> piercing gaze you slowly reach down to pick up the violet wand. It is lighter than you might have expected, the handle just a little bit large for your small hand and it lights up at your touch. The glass rod glows purple, beautiful and ominous all at once and you slowly bring it towards your nipple as commanded.<br>
<br>
<<His npc_boss>> chin dips in an almost imperceptible nod and you squeeze the trigger.<br>
<br>
A purple arc of lightning jumps from the machine to your flesh and your <<if $player.body.breastsize[0] > 0>>breast<<else>>nipple<</if>> explodes in pain. No, not pain, agony. It hurts so much you can't even scream,
<<if setup.getTotalValue("bdsm") > 10>>
somehow keeping your grip on the handle as you tremble in pain.
<<else>>
and you drop the wand as you flinch, the sound of it going CLUNK on the floor filling the room.<br>
<br>
"@@.npc_boss;Pick it up.@@" <<He npc_boss>> commands.<br>
<br>
Whimpering softly you lean over as indicated, biting your lip as you hold the wand in your trembling hand, your <<if $player.body.breastsize[0] > 0>>breast<<else>>nipple<</if>> still echoing with the pain of the shock.
<</if>>
<br><br>
"@@.npc_boss;Now, the other one.@@"<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_work_boss_first_punish_3" 'Shock your other nipple.' 60 "<<spendWillpower 1>>">>] <<hint $options "After knowing previous agony you would have to force yourself to do it again.">><br>
<<else>>
[@@.link_locked;You are in too much pain to hurt yourself again.@@]<br>
<</if>>
[<<moveTo "event_work_boss_flee" 'Run.' 600>>]
</div>/*#
#desc: first visit with npc_boss punishment - second shock shock
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<<applyExperience 'bdsm' 16 'terrible' $SEEN_STRANGER>>
<<applyExperience 'submission' 18 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
On one level you have to be impressed with <<his npc_boss>> control, the way <<he npc_boss>> has both avoided violating the letter of regulations as to disciplining you without consulting your <<=setup.getNpcName("npc_manager","title")>>, while also multiplying the psychological effects of the punishment.<br>
<br>
You bring the tip of the wand to your untouched <<if $player.body.breastsize[0] > 0>>breast<<else>>nipple<</if>> and shock yourself again.<br>
<br>
Somehow knowing what to expect only makes the pain worse, the thin arc of purple making your <<if $player.body.breastsize[0] > 0>>breast<<else>>nipple<</if>> explode in excruciating pain. This time your hand squeezes down on the wand like a drowning man clutching a rope. You gasp and tremble, taking almost a minute before you manage to collect yourself enough to look up, to find <<=setup.getNpcName("npc_boss", "formal")>> looking down at you, <<his npc_boss>> face a grin of triumph.<br>
<br>
"@@.npc_boss;Good, I believe that shall be a sufficient lesson, for now. You may leave, and next time? Do not test my patience with your forgetfulness.@@"<br>
<br>
You nod quickly, managing to have just enough presence of mind to gently place the violet wand back on <<his npc_boss>> desk before you flee across the office and into the elevator.<br>
<br>
You lash out at the close button, almost collapsing against the wall of the elevator as you watch <<=setup.getNpcName("npc_boss", "formal")>> stare at you until the doors close. Trying to catch your breath you press the button for the lobby, your anxiety slowly reducing with each floor of separation you put between yourself and the CEO...<br>
<br>
[<<moveTo "company_lobby" 'Lobby.' 600>>]
</div>/*#
#desc: first visit with npc_boss punishment - tell him about crystal
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You explain the contents of the data crystal as <<he npc_boss>> listens with interest. "@@.npc_boss;A secret plot? To frame one of our Directors... well that is quite a concern. Here.@@" <<He npc_boss>> presses a button and the front panel of <<his npc_boss>> desk slides away, opening a direct path to between <<his npc_boss>> legs. "@@.npc_boss;Put those trembling lips of yours to better use while I review this evidence to see if it is as false as you describe.@@"<br>
<br>
[<<moveTo "event_work_boss_first_4" 'Crawl between <<his npc_boss>> legs and start sucking.' 600>>]<br>
<<if setup.getTotalValue("submission") > 10 && $fetish.get_raped>>
[@@.link_locked;After all your training, you cannot possibly disobey <<him npc_boss>>.@@]<br>
<<else>>
[<<moveTo "event_work_boss_flee" 'Run.' 600>>]
<</if>>
</div>/*#
#desc: first visit with npc_boss punishment - suck him while he reviews crystal
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'party_data_crystal'>>
<<set $npc_boss.flags.data_crystal = 2>>
<<applyExperience 'oral' $npc_boss.penis_size 'terrible' $SEEN_STRANGER>>
<<applyExperience 'submission' 10 'terrible' $SEEN_STRANGER>>
<<applyExperience 'penis' 13 'terrible' $SEEN_STRANGER>>
<<set _nextDate = setup.setNextDate($now, 0, 15, 0)>>
<<addEvent "boss_recruit" _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You crawl under <<=ps(setup.getNpcName("npc_boss", "formal"))>> desk and unzip <<his npc_boss>> pants as <<he npc_boss>> opens up the contents of the data crystal.<br>
<br>
This close to <<his npc_boss>> large, hard <<getWordPenis "npc_boss">> <<his npc_boss>> aura is even more intense, and you feel almost light-headed as you gently free it from <<his npc_boss>> pants and lean forward with parted lips.
<<if setup.getTotalValue("oral") > 10>>
You feel compelled to give <<him npc_boss>> the best blowjob possible,
<<if setup.getTotalValue("oral") > 15>>
taking <<him npc_boss>> to the root and staying
<<else>>
gently working your way to <<his npc_boss>> root and holding
<</if>>
there until you are about to pass out. <<He npc_boss>> is focused on the computer, seemingly paying no attention to your efforts, but that somehow only spurs you on to give it your best.
<<else>>
<<He npc_boss>> is too large for you to handle all at once, but you do the best that you can,
<<if setup.getTotalValue("oral") > 5>>
sucking as much of <<him npc_boss>> as you can handle gracefully while bobbing your head and using your hands to make sure that no part of <<his npc_boss>> glorious member feels neglected.
<<else>>
kissing and licking your way up and down <<his npc_boss>> shaft while your hands attempt to make up for the insufficient skills of your throat.
<</if>>
<</if>>
<br><br>
<<if $npc_boss.flags.firstBlowjob > 0>>
<<printThought "Mmm, <<he npc_boss>> tastes even better this time... especially since I don't have to share...">>
<<else>>
<<printThought "What was I thinking not blowing <<him npc_boss>> when I first had the opportunity?">>
<</if>>
<br><br>
Despite your efforts you remain yet unrewarded with <<his npc_boss>> cum by the time <<he npc_boss>> turns from <<his npc_boss>> computer to stare down at you.<br>
<br>
"@@.npc_boss;I know <<=setup.getNpcName("npc_manager","first")>> has her silly ritual of inducting full-time <<if $fetish.sissy>>SISSI-<</if>>slut secretaries, but that's just a hunk of silicone, nothing compared to a REAL cock. Tell me, have you ever felt a REAL <<man npc_boss>> inside you?@@"<br>
<br>
Pulling back you lick your lips and press <<his npc_boss>> cock against your cheek. You look up and smile, kissing the side of <<his npc_boss>> member gently before you respond.
<<if !$player.virgin.anal>>
"@@.pc;No, I was saving myself for you.@@"
<<else>>
"@@.pc;I am experienced with serving <<if $options.fem>>women<<elseif $npc_boss.fem>>people<<else>>men<</if>> with both my holes, but never by one as glorious as yours...@@"
<</if>>
<br><br>
<<He npc_boss>> grins, then suddenly pushes <<his npc_boss>> chair away. You almost fall to the floor catching yourself and looking forward in desperation as <<he npc_boss>> slides <<his npc_boss>> member back into <<his npc_boss>> pants. <<He npc_boss>> laughs. "@@.npc_boss;You are a well-trained <<if $fetish.sissy>>SISSI-<</if>>slut, but you will need to EARN that privilege.@@"<br>
<br>
You bite your lip and look up at <<him npc_boss>> in desperation. "@@.npc_boss;Thank you for the information... I will let you know when I have more tasks for you... your loyalty to the company in bringing this directly to me is much valued, and I will attend to this laughable attempt to discredit your manager. There is no need for you to bother her with this trifling issue, she has more than enough to focus on. Do you understand.@@"<br>
<br>
You nervously nod as you rise to your feet.<br>
<br>
"@@.npc_boss;Good, good... I will inform you when I have future use for your... abilities. You are dismissed.@@"<br>
<br>
Your eyes linger one final moment on the bulge in <<his npc_boss>> pants, then you hurry to the elevator, watching <<him npc_boss>> until the doors close and you finally release your breath.<br>
<br>
[<<moveTo "company_lobby" 'Ride down to the lobby.' 600>>]
</div>/*#
#desc: npc_retention meets you after work for a meeting with npc_boss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<<set $scene.fail = 0>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You distractedly step into the elevator after another day of work only for the doors to close and you to realise that you are not alone.<br>
<br>
<<if State.hasPlayed("event_boss_recruit_12_fail")>>
Your heart quickens as you look over to see <<=setup.getNpcName("npc_retention","formal")>> — it must be time for another attempt to earn <<=ps(setup.getNpcName("npc_boss","formal"))>> favour! Immediately on your best behaviour you try to slow your racing heart. You watch the numbers tick higher and higher as the elevator rises towards <<=ps(setup.getNpcName("npc_boss","formal"))>> office...
<<else>>
You gasp as <<=setup.getNpcName("npc_retention","formal")>> reaches past you to prevent you from pressing the button, instead tapping the controls to send the elevator rocketing upwards to <<=ps(setup.getNpcName("npc_boss","formal"))>> top-floor office...<br>
<br>
You start to open your mouth to ask what's happening, your heart already racing at realisation that <<=setup.getNpcName("npc_boss","formal")>> went to all this trouble to summon you...<br>
<br>
"@@.npc_retention;Quiet. <<=setup.getNpcName('npc_boss','formal')>> may explain.@@"<br>
<br>
<<printThought "Being summoned personally by <<=setup.getNpcName('npc_boss','formal')>> is such an honour... unless... I hope I'm not in trouble...">><br>
<br>
Nervously you watch the floor count steadily rise as <<=setup.getNpcName("npc_retention","formal")>> looms menacingly next to you.
<</if>>
<br><br>
[<<moveTo "event_boss_recruit_2" "The elevator doors open..." 600>>]
</div>/*#
#desc: npc_boss starts your assessment
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
"@@.npc_boss;Welcome back, <<=setup.getNpcName("npc_retention","formal")>>@@" <<=setup.getNpcName("npc_boss","formal")>> states, barely looking up as <<he npc_boss>> seems to be finishing some work.<br>
<br>
Your stomach clenches at the dismissive way <<he npc_boss>> doesn't even acknowledge you.<br>
<br>
<<if State.hasPlayed("event_boss_recruit_12_fail")>>
<<printThought "You can do this! Remember all your lessons, show obedience... you have to prove that you are worth <<his npc_boss>> time, nothing matters compared to serving <<him npc_boss>>...">>
<<else>>
<<printThought "Well... why should <<he npc_boss>>? I should feel lucky that such an important <<man npc_boss>> is even aware of me. I need to take advantage of this opportunity to impress <<him npc_boss>>.">>
<</if>>
<br><br>
<<if setup.getTotalValue("submission") > 15>>
[<<moveTo "event_boss_recruit_3" "You straighten and wait to be addressed." 300 "<<set $scene.obey=true>>">>]<br>
[@@.link_locked;It would not be proper to speak before being spoken to.@@]
<<else>>
[<<moveTo "event_boss_recruit_3" "Wait to be addressed." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_boss_recruit_3" "Ask why <<he npc_boss>> summoned you." 120 "<<set $scene.obey=false>>">>]
<</if>>
</div>/*#
#desc: boss test of submission
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You wait obediently for <<=setup.getNpcName("npc_boss","formal")>> to deign to recognise you. After several more minutes of work <<he npc_boss>> finally looks up, <<his npc_boss>> grin sending a shiver down your spine.<br>
<br>
<<if State.hasPlayed("event_boss_recruit_12_fail")>>
"@@.npc_boss;So, Miss <<=$player.first_name>>. You come before me again... I confess that I had all but forgotten about you until <<=setup.getNpcName("npc_retention","formal")>> mentioned you again. I was prepared to reject the idea out of hand as I do not believe in second chances, but then I recalled how lovely <<=ps(setup.getNpcName("npc_manager","other"))>> prior work has turned out...@@"<br>
<br>
The mention of your predecessor sends a dagger of jealousy through your heart. How you wish to finish following her path, to be able to serve <<=setup.getNpcName("npc_boss","formal")>> every moment of the day. How can she be allowed to take your <<man npc_boss>> away from... you take a deep breath, pulling back from the edge. Certainly <<=setup.getNpcName("npc_boss","formal")>> can have as many women as <<he npc_boss>> wants! <<He npc_boss>> is worth that and so much more. Still, your heart aches that <<he npc_boss>> does not yet consider you <<his npc_boss>> personal property. You only hope that today you will be able to right that wrong and prove your worth in <<his npc_boss>> eyes.<br>
<br>
"@@.npc_boss;As before, begin by removing your clothes.@@"
<<else>>
"@@.npc_boss;So, Miss <<=$player.first_name>>. After observing your performance at the party, and taking into account you proving your loyalty by bringing the matter of the evidence against <<=setup.getNpcName("npc_manager","other")>> to my attention I have decided to put you into consideration for more extensive responsibilities. Before I proceed with such, I need to be certain that you are up to my standards. Unlike <<=setup.getNpcName("npc_manager","other")>>, I have neither the time nor the interest in training slaves or expending effort to earn their so-called obedience. Instead, I expect complete obedience and loyalty in all matters, and exemplary performance in all tasks. <<=setup.getNpcName("npc_retention","formal")>> is here to assist in your assessment in that regard. Begin by removing your clothing.@@"<br>
<br>
<<printThought "<<He npc_boss>> didn't even ask if I was interested, <<he npc_boss>> just assumed it and went ahead...">>
<</if>>
<br><br>
[<<moveTo "event_boss_recruit_4" "Strip." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_boss_recruit_4" "No, you aren't interested in groveling for <<his npc_boss>> approval like this." 120 "<<set $scene.obey=false>>">>]
<<else>>
You open your mouth to ask <<=setup.getNpcName("npc_boss","formal")>> why <<he npc_boss>> summoned you... only for <<him npc_boss>> to look up and freeze you with <<his npc_boss>> steely gaze.<br>
<br>
<<include "bossRejection">>
<</if>>
</div><<=setup.getNpcName("npc_boss","formal")>> fixes you with <<his npc_boss>> gaze, <<his npc_boss>> cold blue eyes seeming to pierce right through you. "@@.npc_boss;Disappointing. I had thought <<=setup.getNpcName("npc_manager","other")>> would have had enough time to prepare you by now...@@" <<He npc_boss>> looks briefly up at <<=setup.getNpcName("npc_retention","formal")>>. "@@.npc_boss;Get rid of her.@@"<br>
<br>
<br>
Your jaw drops at the speed of dismissal as <<=setup.getNpcName("npc_boss","formal")>> turns back to <<his npc_boss>> work.<br>
<br>
"@@.npc_retention;How do you want me to dispose of her, <<sir npc_boss>>?@@" <<=setup.getNpcName("npc_retention","formal")>> asks.<br>
<br>
<<if State.hasPlayed("event_boss_recruit_12_fail")>>
"@@.npc_boss;Send her for re-processing. Perhaps something of use can be harvested from her experiences before her failure is erased and she is turned into something useful.@@"<br>
<br>
You gulp in fear, it is all over. You do not even care what reprocessing is, the fact that you will never be with <<=setup.getNpcName("npc_boss","formal")>> is already a hell worse than any you could imagine.<br>
<br>
[<<moveTo "event_boss_recruit_gameover" "Continue." 180>>]
<<else>>
<<=setup.getNpcName("npc_boss","formal")>> sighs in slight frustration. "@@.npc_boss;Nothing like that, just... send her away. Let <<=setup.getNpcName("npc_manager","other")>> have her fun with training brats. I have neither the time, nor the interest.@@"<br>
<br>
You're still gawking as <<=setup.getNpcName("npc_retention","formal")>> waits for you to dress and then leads you back to the elevator.<br>
<br>
<<printThought "Did they just casually discuss murdering me or something? What the hell have I gotten into?">><br>
<br>
[<<moveTo "event_boss_recruit_fail" "Ride down." 180 "<<useClothSetPop 'tmp'>>">>]
<</if>>/*#
#desc: fail npc_boss' test, npc_retention takes you away
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 20>>
<<addItem "card_retention">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_retention","formal")>> takes you away. Leaving <<=ps(setup.getNpcName("npc_boss","formal"))>> presence leaves behind a pit in your stomach, and you try to think of what you could have done to avoid such a cruel rejection.<br>
<br>
As if taking pity on you, <<=setup.getNpcName("npc_retention","formal")>> grins. "@@.npc_retention;<<=setup.getNpcName("npc_boss","formal")>> has extremely high standards, but <<=setup.getNpcName("npc_manager","other")>> has keen insight when it comes to submissives... if she sees something in you... tell you what, if you think you're worthy of another try, contact me.@@" <<He npc_retention>> hands you a business card. "@@.npc_retention;I warn you, however, if you were to fail a second time, well... I doubt <<=setup.getNpcName("npc_boss","formal")>> would show similar patience for wasting <<his npc_boss>> time.@@"<br>
<br>
The elevator door opens onto the main lobby and <<he npc_retention>> motions for you to leave.<br>
<br>
[<<moveTo "company_lobby" "Leave." 300>>]
</div>/*#
#desc: boss test body
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<<set $scene.heels = setup.getItemFromType("shoes")>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if !["large", "medium"].includes(setup.calcBreastSize())>>
<<set $scene.fail += 1>>
<</if>>
<<if $player.body_ref.penis && $player.body.penissize[0] >= 4>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You obediently start to remove your clothes. At first you do so slowly and enticingly, but you notice that <<=setup.getNpcName("npc_boss","formal")>> isn't even looking up from <<his npc_boss>> work, so you opt for efficiency to swiftly shed your remaining garments.<br>
<br>
You have been standing for almost another full minute before <<=setup.getNpcName("npc_boss","formal")>> looks back up at you.<br>
<br>
<<printThought "The way <<he npc_boss>> treats me like I'm insignificant... though I guess, compared to <<him npc_boss>>, I kind of am...">><br>
<br>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
<<He npc_boss>> frowns. "@@.npc_boss;Hmm, I had thought perhaps your bra was providing a bit of... assistance, but it would appear that you really do have a pair of oversized bitch-tits. Not that I have anything against you turning yourself into a sex object, but my personal preference would be something a bit more reserved. Still, that can be easily adjusted when the time comes.@@"
<<case 'large'>>
<<He npc_boss>> smiles. "@@.npc_boss;Lovely, I was worried you were using a bra to enhance your natural assets, but you seem to have a perfectly lovely pair of large, but not grotesquely so, feminine breasts.@@"
<<case 'medium'>>
<<He npc_boss>> smiles. "@@.npc_boss;Lovely, I was worried you were using a bra to enhance your natural assets, but you seem to have a perfectly lovely pair of feminine breasts.@@"
<<case 'small'>>
<<He npc_boss>> frowns. "@@.npc_boss;I was hoping you just had a too-tight bra, but it would seem you all but lack breasts, such an unfeminine profile disgusts me.@@"
<<case 'none'>>
<<He npc_boss>> frowns. "@@.npc_boss;I was hoping you were wearing a binder for some inscrutable reason, but it would seem you utterly lack proper feminine shape in your upper body, I find this disappointing and, frankly, disgusting.@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<His npc_boss>> gaze slides down your body, dismissive... and yet with a natural intensity that makes it feel like <<his npc_boss>> hands are checking you like a side of meat.
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_boss;Lovely, I thought your clothes might have been providing some compressive help, but you really are that pathetically small, just as <<if $fetish.sissy>>a sissy<<else>>you<</if>> should be.@@"
<<else>>
"@@.npc_boss;Lovely, <<if setup.isCage()>>caged<<else>>locked up<</if>> and concealed, just as is proper<<if $fetish.sissy>> for a sissy<</if>>.@@"
<</if>>
<<case 'spe'>>
"@@.npc_boss;Beautiful, petite and contained just as <<if $fetish.sissy>>a sissy<<else>>you<</if>> should be.@@"
<<case 'none'>>
"@@.npc_boss;Lovely, caged and concealed, just as is proper<<if $fetish.sissy>> for a sissy<</if>>.@@"
<<default>>
ERROR: unhandled <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 4 5>>
<<He npc_boss>> shakes <<his npc_boss>> head at the bulge between your legs. "@@.npc_boss;Very unladylike. I certainly accept that girls come in different shapes, but they must be smooth and shapely not... grotesquely protruding. I recommend you address this failing if you ever wish to have my approval.@@"
<<case 6>>
<<if $player.body_ref.knot || $player.body_ref.horsecock>>
<<He npc_boss>> sneers in disgust. "@@.npc_boss;What is that monstrosity between your legs? That is inhuman and nauseating and I do not wish to ever see its like again, not from one who wishes to be one of my personal <<if $fetish.sissy>>sissies<<else>>girls<</if>>.@@"
<<else>>
<<He npc_boss>> sneers in disgust. "@@.npc_boss;What is that unsightly bulge between your legs? I certainly accept that girls come in different shapes, but they must be smooth and shapely not... grotesquely protruding. I recommend you address this failing if you ever wish to have my approval.@@"
<</if>>
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
<<He npc_boss>> smiles at the smooth profile of your <<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>chastity-belted <</if>>crotch. "@@.npc_boss;Lovely, I see you have decided to go all the way from what you were when you first joined this firm. Not that I cannot appreciate that girls come in a variety of shapes, but I certainly do enjoy having another hole wet, inviting, and available for my use.@@"
<</if>>
<br><br>
<<He npc_boss>> looks at <<=setup.getNpcName("npc_retention","formal")>>. "@@.npc_boss;You may now test her oral capacity.@@"<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> must have quietly unzipped <<him npc_retention>>self when you weren't looking because before you can react <<his npc_retention>> strong hand has grabbed you by the hair and is bringing your face to <<his npc_retention>> large, erect <<getWordPenis "npc_retention">>.<br>
<br>
[<<moveTo "event_boss_recruit_5" "Open obediently wide and show what you can do." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_boss_recruit_5" "Not like this, resist!" 180 "<<set $scene.obey=false>>">>]
<<else>>
You, politely, explain to <<=setup.getNpcName("npc_boss","formal")>> that you do not think you are ready for this.<br>
<br>
<<include "bossRejection">>
<</if>>
</div>/*#
#desc: boss test of oral + makeup
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_retention.penis_size 'very' $SEEN_STRANGER>>
<<if $player.makeup.template != "">>
<<changeMakeupMessed 30>>
<<set $scene.fail += 1>>
<</if>>
<<if $player.makeup.permanent == "">>
<<set $scene.fail += 1>>
<</if>>
<<if setup.getCurrentMakeup() != "moviestar">>
<<set $scene.fail += 1>>
<</if>>
<<if setup.getTotalValue("oral") < $npc_boss.penis_size>>
<<set $scene.fail += 1>>
<</if>>
<<applyFatigue 50>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You do not have much time to react, but your reaction is immediate and obedient as you open wide to accept <<=ps(setup.getNpcName("npc_retention","formal"))>> oncoming cock.<br>
<br>
<<if setup.getTotalValue("oral") >= $npc_boss.penis_size>>
<<if setup.getTotalValue("oral") == $npc_boss.penis_size>>
You feel pushed to your limit but <<=ps(setup.getNpcName("npc_retention","formal"))>> <<getWordPenis "npc_retention">> fully slots past your lips, bulging your throat as your lips press tight against <<him npc_retention>>.
<<elseif setup.getTotalValue("oral") >= 20>>
Your perfectly trained throat takes even <<=ps(setup.getNpcName("npc_retention","formal"))>> conventionally large <<getWordPenis "npc_retention">> with ease.
<<else>>
Your well-trained throat manages to handle even <<=ps(setup.getNpcName("npc_retention","formal"))>> conventionally large <<getWordPenis "npc_retention">> with ease.
<</if>>
<<He npc_boss>> holds you balls deep for a few moments and then uses <<his npc_retention>> grip on your hair to work you back and forth, each time slamming roughly to depth.<br>
<br>
<<if setup.getTotalValue("oral") == $npc_boss.penis_size>>
<<He npc_retention>> releases <<his npc_retention>> grip and you ease your way backwards, assuming a more controlled, measured pace as you take a moment to catch your breath and continue to lick and suck, using your hands as well to help ease the burden on your throat.
<<elseif setup.getTotalValue("oral") >= 20>>
<<He npc_retention>> releases <<his npc_retention>> grip and you take over, hands free face-fucking yourself on <<his npc_retention>> cock for a few more strokes. You show off your consummate skill as you make love to <<his npc_retention>> member with lips, tongue, throat and every ounce of your considerable ability.
<<else>>
<<He npc_retention>> releases <<his npc_retention>> grip and you take over, introducing your hands to the party as you make love to <<his npc_retention>> member with lips, tongue, throat and every ounce of your considerable ability.
<</if>>
<br><br>
As you suck, you find yourself fantasising about <<=setup.getNpcName("npc_boss","formal")>>... is <<he npc_boss>> the same glorious size? You decide <<he npc_boss>> probably is, but that <<he npc_boss>> surely tastes even better, that thought motivating you to blink up at <<=setup.getNpcName("npc_retention","formal")>> as you imagine it was <<=setup.getNpcName("npc_boss","formal")>> that you were serving, instead.<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> finally pulls you away and you lick your lips, wiping a bit of spittle from your chin as <<=setup.getNpcName("npc_retention","formal")>> turns you to face <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<if setup.getTotalValue("oral") == $npc_boss.penis_size>>
"@@.npc_boss;Adequately done,@@" <<he npc_boss>> states in summary, somehow even this mild compliment proving sufficient to make your heart race.
<<elseif setup.getTotalValue("oral") >= 20>>
"@@.npc_boss;Superbly done,@@" <<he npc_boss>> states in summary, <<his npc_boss>> compliment making you tingle with pride.
<<else>>
"@@.npc_boss;Well done,@@" <<he npc_boss>> states in summary, <<his npc_boss>> mild compliment making your heart race.
<</if>>
<<He npc_boss>> peers closer at your face
<<if $player.makeup.template != "">>
"@@.npc_boss;Hmm, it would seem your makeup is running a bit... quite disappointing. This is why I believe permanent makeup is a much more efficient move.@@"
<<elseif $player.makeup.permanent != "">>
"@@.npc_boss;Excellent, your makeup is unaffected by your activities. This is yet another reason permanent application is best. <<if setup.getCurrentMakeup() == "moviestar">>Perfectly classy to the end of the night, you appear to have things precisely correct in this matter.<<else>>A pity you could not have chosen a better style...<</if>>@@"
<<else>>
"@@.npc_boss;No makeup? Colour me surprised that <<=setup.getNpcName("npc_manager","other")>> would allow you to cavort around so plain.@@"
<</if>>
<br><br>
"@@.npc_boss;You may proceed to her <<if $player.body_ref.vagina>>next<<else>>other<</if>> hole,@@" <<he npc_boss>> states, <<=setup.getNpcName("npc_retention","formal")>> pushing you forward, seemingly with the intent of bending you over <<=ps(setup.getNpcName("npc_boss","formal"))>> desk...<br>
<br>
[<<moveTo "event_boss_recruit_6" "Bend over obediently." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_boss_recruit_6" "Struggle." 180 "<<set $scene.obey=false>>">>]
<<else>>
<<if setup.getTotalValue("oral") > 10>>
<<=ps(setup.getNpcName("npc_retention","formal"))>> cock is just a bit too large for you to handle, even as <<he npc_retention>> tries to force you down you end up "stuck" with a centimetre of length yet beyond your lips.
<<else>>
Unfortunately for you <<he npc_retention>> is far beyond your capacity
<<if setup.getTotalValue("oral") > 5>>
and you end up sputtering and almost gagging as <<he npc_retention>> attempts to physically force you down.
<<else>>
and you almost immediately gag.
<</if>>
<</if>>
After a few more moments of attempting to "make things work" <<=setup.getNpcName("npc_retention","formal")>> pulls you off, leaving you to gasp and look up at <<him npc_boss>> as drool leaks down your face.<br>
<br>
"@@.npc_boss;Disappointing, certainly I am large compared to most <<if $npc_boss.fem>>people<<else>>men<</if>>, but any <<if $fetish.sissy>>sissy<<else>>woman<</if>> incapable of handling such is plainly not worth my time.@@"<br>
<br>
<<include "bossRejection">>
<</if>>
<<else>>
You reflexively bring your hands up protectively and, to your surprise, <<=setup.getNpcName("npc_boss","formal")>> calls "@@.npc_boss;Stop.@@"<br>
<br>
<<include "bossRejection">>
<</if>>
</div>/*#
#desc: boss test of anal + vaginal
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' $npc_retention.penis_size 'very' $SEEN_STRANGER>>
<<if setup.getTotalValue("anal") < $npc_boss.penis_size>>
<<set $scene.fail += 1>>
<</if>>
<<set $scene.removal = "">>
<<set $scene.item = "">>
<<if setup.getChastityLevel() == 4>>
<<set $scene.removal = 'sissyomatic'>>
<<set $scene.item = setup.getItemFromType("cage")>>
<<elseif $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<set $scene.removal = 'belt'>>
<<set $scene.item = setup.getItemFromType("cage")>>
<<else>>
<<set $scene.removal = 'plug'>>
<<set $scene.item = setup.getItemFromType("plug")>>
<</if>>
<<applyFatigue 50>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You try to suppress your surprised gasp as you go along with being slammed over the desk. <<=setup.getNpcName("npc_retention","formal")>> pins you down with one hand, leaving you to turn you head slightly if you want to look at <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> stares down with mild interest as
<<switch $scene.removal>>
<<case 'sissyomatic'>>
your <<=setup.getItemName($scene.item)>> fully unlocks and slips out off of you.<br>
<br>
You shudder; being completely "free" of the maximum security device feels alien and vulnerable, the casual act yet another assertion of <<=ps(setup.getNpcName("npc_boss","formal"))>> power within the company.
<<case 'belt'>>
<<=setup.getNpcName("npc_retention","formal")>> removes your <<=setup.getItemName($scene.item)>> and plug and sets them to one side.
<<case 'plug'>>
<<=setup.getNpcName("npc_retention","formal")>> removes the <<=setup.getItemName($scene.item)>> from your ass and sets it to one side.
<<default>>
ERROR: unexpected scene.removal <<=$scene.removal>>
<</switch>>
<br><br>
<<if $player.body_ref.vagina>>
You moan as <<=setup.getNpcName("npc_retention","formal")>> slams balls deep into your cunt with a single stroke. There is no concern for your pleasure in <<his npc_retention>> act, merely an animalistic thrust and yet... as you stare up at <<=setup.getNpcName("npc_boss","formal")>>, imagining that it was <<his npc_boss>> cock, instead, that was pumping into you... you cum.<br>
<br>
More a preamble you only enjoy a few thrusts before <<=setup.getNpcName("npc_retention","formal")>> pulls out, and using the mixture of saliva and vaginal secretions, drives into your other hole
<<else>>
<<His npc_retention>> <<getWordPenis "npc_retention">> already wet with your saliva, and your hole still gaping from the plug so recently occupying it, <<=setup.getNpcName("npc_retention","formal")>> drives into your ass
<</if>>
while <<=setup.getNpcName("npc_boss","formal")>> watches.<br>
<br>
<<if setup.getTotalValue("anal") >= $npc_boss.penis_size>>
<<if setup.getTotalValue("anal") == $npc_boss.penis_size>>
You moan as <<=setup.getNpcName("npc_retention","formal")>> fills your ass perfectly, <<his npc_retention>> balls slapping against you as <<he npc_retention>> finishes sinking into you as if your hole was made exactly for <<his npc_retention>>... or, preferably, <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>.
<<elseif setup.getTotalValue("anal") >= 20>>
You purr in contentment, working your muscles as you have been trained to make sure <<=setup.getNpcName("npc_retention","formal")>> has the most pleasurable experience possible in your skilled ass.
<<else>>
You smile as <<=ps(setup.getNpcName("npc_retention","formal"))>> <<getWordPenis "npc_retention">> slides smoothly in and out of your trained hole. Confident that you can handle <<him npc_retention>> with ease you focus on squeezing and rippling your muscles to make <<his npc_retention>> "visit" as pleasurable as possible.
<</if>>
<br><br>
As <<=setup.getNpcName("npc_retention","formal")>> rails you hard and deep you look up at <<=setup.getNpcName("npc_boss","formal")>>; knowing well enough that it would be rude of you to speak, but hoping <<he npc_boss>> can tell from your expression how much you wish it was <<him npc_boss>> glorious <<getWordPenis "npc_boss">> fucking you.<br>
<br>
"@@.npc_boss;Her performance is adequate?@@" <<=setup.getNpcName("npc_boss","formal")>> asks after <<=setup.getNpcName("npc_retention","formal")>> has been pounding you for at least a minute.<br>
<br>
"@@.npc_retention;More than adequate,@@" <<=setup.getNpcName("npc_retention","formal")>> replies, slamming forward and then grabbing you by the hair before lifting you up, your legs reflexively clinging to <<his npc_retention>> hips as you effectively float in air, suspended on <<his npc_retention>> <<getWordPenis "npc_retention">>.<br>
<br>
You let out a shuddering breath as <<=setup.getNpcName("npc_boss","formal")>> stares at you. Remembering that this is a test you focus on deploying every ounce of pompoir skill to continue to milk the <<getWordPenis "npc_retention">> buried in your ass.<br>
<br>
Your efforts are rewarded with a grunt, "@@.npc_retention;Yes, <<=setup.getNpcName("npc_manager","other")>> really outdid herself training this one. An exemplary <<if $fetish.sissy>>sissy <</if>><<if $player.body_ref.vagina>>set<<else>>pair<</if>> of fuck-holes.@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> nods and <<=setup.getNpcName("npc_retention","formal")>> sets you down before taking a step back, giving you but a moment of relief before
<<switch $scene.removal>>
<<case 'sissyomatic'>>
locking the <<=setup.getItemName($scene.item)>> back on and in to you.
<<case 'belt'>>
plugging you and locking the <<=setup.getItemName($scene.item)>> back in place.
<<case 'plug'>>
jamming the <<=setup.getItemName($scene.item)>> back into your hole.
<<default>>
ERROR: unexpected scene.removal <<=$scene.removal>>
<</switch>>
<br><br>
<<if setup.getTotalValue("stamina") > 10>>
You stand back up, trying to present an air of control as you calm down somewhat.
<<else>>
You stagger back to your feet,
<<if setup.getTotalValue("stamina") > 5>>
trying not to show how much the "tests" took out of you.
<<else>>
the aggressive "testing" pushing you beyond your endurance.
<</if>>
<</if>>
<br><br>
"@@.npc_boss;So. As it appears that your body is at least adequately functional, let us turn to your mind. Please, summarise what are your best qualifications to serve as a <<if $fetish.sissy>>SISSI <</if>>Secretary?@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
[<<moveTo "event_boss_recruit_7" "Focus on your work skills." 300 "<<set $scene.focus='smart'>>">>]<br>
<<else>>
[@@.link_locked;You are not smart enough to emphasise your mental abilities.@@]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_boss_recruit_7" "Emphasise how much of a <<if $fetish.sissy>>sissy <</if>>slut you are." 180 "<<set $scene.focus='slut'>>">>]<br>
<<else>>
[@@.link_locked;You are not about to claim that your primary use is as an office slut.@@]<br>
<</if>>
<<if setup.getTotalValue("smart") > 10 && setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_boss_recruit_7" "Explain how you can provide a combination of efficient skill and <<if $fetish.sissy>>sissy slut<<else>>slutty<</if>> service." 180 "<<set $scene.focus='balance'>>">>]<br>
<</if>>
[<<moveTo "event_boss_recruit_7" "Give a general summary of your success at your new job." 300 "<<set $scene.focus='dumb'>>">>]<br>
<<else>>
<<=setup.getNpcName("npc_retention","formal")>> is too big and you cry out as <<he npc_retention>> attempts to force <<his npc_retention>> massive <<getWordPenis "npc_retention">> into your
<<if setup.getTotalValue("anal") > 10>>
slightly too-shallow
<<else>>
much-too-tight
<</if>>
hole. Your entire body shudders as <<he npc_retention>> makes a couple more attempts to force <<his npc_retention>> way in before stepping away.<br>
<br>
"@@.npc_boss;Pathetic.@@" <<=setup.getNpcName("npc_boss","formal")>> stats as you catch your breath and <<=setup.getNpcName("npc_retention","formal")>> roughly replaces your <<if $scene.removal == 'plug'>>plug<<else>>restraints<</if>> and hauls you back to your feet.<br>
<br>
<<include "bossRejection">>
<</if>>
<<else>>
You stumble slightly as you try to remain standing, to your surprise <<=setup.getNpcName("npc_boss","formal")>> looks you in the eye and states "@@.npc_boss;Stop.@@"<br>
<br>
<<include "bossRejection">>
<</if>>
</div>/*#
#desc: boss test of smarts/bimbo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.focus == 'balance' && (setup.getTotalValue("smart") > setup.getTotalValue("bimbofication") || setup.getTotalValue("bimbofication") <= 15)>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<switch $scene.focus>>
<<case 'smart'>>
You start going over the filing, scheduling, and organizational skills that you deploy day to day only to be cut off.<br>
<br>
"@@.npc_boss;Do you think this was an interview for a mere clerical position?@@"<br>
<br>
<<include "bossRejection">>
<<case 'slut'>>
You start in on listing your other sexual skills, beyond the ones they have already tested, but you have barely gotten started when <<=setup.getNpcName("npc_boss","formal")>> cuts you off.<br>
<br>
"@@.npc_boss;Do you think you are applying to be a mere prostitute?@@"<br>
<br>
<<include "bossRejection">>
<<case 'balance'>>
<<if setup.getTotalValue("smart") > setup.getTotalValue("bimbofication")>>
You give a detailed, and exhaustive summary of all the important "functions" you are accustomed (and eager) to perform for your manager. Unfortunately you get the feeling that <<he npc_boss>> is quickly bored.<br>
<br>
"@@.npc_boss;Not to disparage your mildly impressive vita, but it seems that you have focused a bit too much on mundane work that could as easily be programmed into a computer. No, the reason our company continues to utilise personal assistants throughout management levels is because of the human touch, and human services that they are able to perform. Focusing too much on the mechanical work, rather than the important moral boost that a set of eager fuck-holes can provide... well, that indicates a lack of focus. Too much time thinking, rather than doing... or should I say, being done?@@"
<<elseif setup.getTotalValue("bimbofication") <= 15>>
You attempt to present a balanced explanation of your ability to manage schedules while being "on deck" to serve your manager's every sexual need but you are dismayed to see <<=setup.getNpcName("npc_boss","formal")>> frown.<br>
<br>
"@@.npc_boss;So close... I just do not hear enough... enthusiasm. While obedience is the most important thing in a subordinate I believe that enthusiastic enjoyment of the "work" is key to their sustained efficacy. I just do not hear the passion in your voice to be a <<if $fetish.sissy>>sissy <</if>>bimbo slut that I expected.@@"
<<else>>
You give an explanation by outlining what you imagine a "typical" day might be — starting with arriving early to review schedules and attend to overnights, making sure <<his npc_boss>> coffee is ready for <<his npc_boss>> arrival, helping "rouse" <<him npc_boss>> for the day with a nice blowjob while <<he npc_boss>> drinks <<his npc_boss>> coffee... and so on as you use your skills to make sure that <<his npc_boss>> business is efficient and <<his npc_boss>> guests, and most of all, <<him npc_boss>>self, are always kept satisfied.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> ever so slightly smiles and you feel a flood of pleasure.<br>
<br>
"@@.npc_boss;Good, it seems that you have an understanding of your role, and the capabilities to execute it.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_boss","formal")>> points towards your heels. "@@.npc_boss;Put those back on, I want to see how you move. Attending galas and the like, I would expect you to be on my arm, not clinging to it for stability.@@"<br>
<br>
The thought of accompanying <<him npc_boss>> to another event has your heart threatening to pound its way out of your chest.<br>
<br>
<<if setup.getTotalValue("stamina") > 10>>
[<<moveTo "event_boss_recruit_8" "Put your shoes back on and show off." 180 "<<set $scene.obey=true>>">>]<br>
<<elseif setup.getTotalValue("submission") > 15>>
[<<moveTo "event_boss_recruit_8" "You want to obey, but you are so tired." 180 "<<set $scene.obey=true>>">>]<br>
<<else>>
[@@.link_locked;You're too tired to put on a show.@@]<br>
<</if>>
<<if setup.getTotalValue("submission") <= 15>>
[<<moveTo "event_boss_recruit_8" "Do not prance about." 180 "<<set $scene.obey=false>>">>]
<</if>>
<<case 'dumb'>>
<<include "bossRejection">>
<</switch>>
</div>/*#
#desc: boss test of dex, heels
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<if setup.getTotalValue("stamina") <= 15>>
<<set $scene.fail += 1>>
<</if>>
<<if setup.getTotalValue("dexterity") <= 10>>
<<set $scene.fail += 1>>
<</if>>
<<wearItem $scene.heels true>>
<<if setup.getTotalValue("heels") <= 15 || setup.getTotalValue("heels") < setup.getItemObjFromType('shoes').heels.difficulty>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You quickly slip your heels back on
<<if setup.getTotalValue("stamina") <= 15>>
and try to walk, but the hard fucking over the desk has your legs rubbery. You stumble slightly as the two<<if $npc_boss.fem == $npc_retention.fem>> <<men npc_boss>><</if>> merely watch.<br>
<br>
"@@.npc_boss;Pathetic,@@" <<=setup.getNpcName("npc_boss","formal")>> states in disgust.<br>
<br>
<<include "bossRejection">>
<<else>>
<<if setup.getTotalValue("heels") < setup.getItemObjFromType('shoes').heels.difficulty>>
and start prancing. Unfortunately your current heels are a bit steep for your ability, especially with the hard pounding over the desk having done a number on your thigh muscles. You are forced to pick your way along very carefully lest you twist an ankle and fall.<br>
<br>
"@@.npc_boss;Disappointing. While a woman should certainly endeavour to select shoes to maximally show off her legs being unable to perform while wearing them is quite the deficiency. Knowing one's limits and working past them is the key, not coming up against them and failing.@@"<br>
<br>
<<include "bossRejection">>
<<else>>
<<if setup.getTotalValue("heels") <= 15>>
though you walk easily in your heels <<=setup.getNpcName("npc_boss","formal")>> ends your performance with a frown.<br>
<br>
"@@.npc_boss;While you seem to be adequately skilled in your present footwear... I notice some minor flaws in your technique that would lead to trouble were you to up-size to something more proper, as well as open you up to injury. Disappointing. A proper lady should be as comfortable in the steepest heels as she is in bare feet... perhaps even moreso.@@"
<<elseif setup.getTotalValue("dexterity") <= 10>>
and walk the length of the room, remaining easily balanced in your heels as you make your way to the elevator and back.<br>
<br>
"@@.npc_boss;Functional, but little more — it is not merely enough to not fall over in high heels, a proper lady should move with a dancer's grace at all times.@@"
<<else>>
and begin your ad hoc routine, demonstrating your ability to walk, turn, pivot, bend over, jump and do everything short of a gymnastic routine whilst remaining perfectly balanced on your heels.<br>
<br>
"@@.npc_boss;Lovely. Would that all women recognised that they should be able to perform with such heightened grace and agility.@@"
<</if>>
<br><br>
Naked save for your heels you stand at attention and await <<his npc_boss>> next instruction.<br>
<br>
"@@.npc_boss;Tell me, <<if $fetish.sissy>>sissy<<else>>girl<</if>>... what do you think of this assessment?@@"<br>
<br>
[<<moveTo "event_boss_recruit_9" "That it has been wonderful, and you are eager to do whatever else it takes to prove yourself to <<his npc_boss>> satisfaction." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_boss_recruit_9" "That it honestly seems a bit much, given all your prior experience." 120 "<<set $scene.obey=false>>">>]
<</if>>
<</if>>
<<else>>
For some reason the idea of prancing around is unappealing and you stand still and wait for <<=setup.getNpcName("npc_boss","formal")>> to respond.<br>
<br>
<<include "bossRejection">>
<</if>>
</div>/*#
#desc: boss test of penis, sub
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<if setup.getTotalValue("submission") <= 15>>
<<set $scene.fail += 1>>
<</if>>
<<if setup.getTotalValue("penis") <= 15>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You tell <<=setup.getNpcName("npc_boss","formal")>> how much you appreciate this opportunity, that you recognise the high standards that <<he npc_boss>> deserves, and that you thank <<him npc_boss>> for pushing you to prove your worth.<br>
<br>
<<if setup.getTotalValue("submission") <= 15>>
<<He npc_boss>> frowns. "@@.npc_boss;You say the words well enough, and yet... no, I am afraid I do not believe you. It is not enough to merely profess obedient loyalty, you must feel it in your bones, learn to submit yourself so completely that to do otherwise becomes unthinkable. It would seem that, to the best of efforts, you are still but playing a part.@@"
<<elseif setup.getTotalValue("penis") <= 15>>
<<He npc_boss>> shakes <<his npc_boss>> head, "@@.npc_boss;I believe you, now... and yet earlier, while <<=setup.getNpcName("npc_retention","formal")>> was gracing your holes with <<his npc_boss>> presence... well, I did not see the joy in your eyes that I would expect. You are a <<if $fetish.sissy>>sissy<<else>>woman<</if>>. You exist on this earth to make cocks hard, serve them to completion, thank their owners for the privilege, and beg for more...@@"
<<else>>
<<He npc_boss>> smiles. "@@.npc_boss;A lovely speech, and most importantly, I believe it. Just as I saw the joy of serving cock in your eyes while <<=setup.getNpcName("npc_retention","formal")>> was testing your holes, so too did I see that glimmer of utter submission in your recitation. This is the exact right mentality for a <<if $fetish.sissy>>sissy<<else>>woman<</if>> to have.@@"
<</if>>
<br><br>
"@@.npc_boss;So, a final question — in a word or two, how would you describe yourself?@@"<br>
<br>
<<if !$fetish.piss>>
<<printThought "This feels like a moment of truth... where threads of prophecy will be severed...">><br>
<br>
WARNING: If you choose to going past this point you will diverge from the central finite curve. You may curry <<=ps(setup.getNpcName("npc_boss","formal"))>> favour, but you will be set upon this darkening path and other ends will be closed to you.<br>
<br>
<</if>>
<<if $fetish.sissy>>
[<<moveTo "event_boss_recruit_10" "A loyal <<if $fetish.sissy>>SISSI <</if>>Secretary." 300 "<<set $scene.style='sissy'>>">>]<br>
<</if>>
[<<moveTo "event_boss_recruit_10" "A Good Girl." 300 "<<set $scene.style='girl'>>">>]<br>
[<<moveTo "event_boss_recruit_10" "An obedient slave." 300 "<<set $scene.style='slave'>>">>]<br>
[<<moveTo "event_boss_recruit_10" "A horny bimbo." 300 "<<set $scene.style='bimbo'>>">>]<br>
<<if $player.identify_as == 'male'>>
<<if $player.flags.femboy>>
[<<moveTo "event_boss_recruit_10" "A slutty femboy." 300 "<<set $scene.style='femboy'>>">>]<br>
<<else>>
[<<moveTo "event_boss_recruit_10" "A crossdressing dude." 300 "<<set $scene.style='male'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_boss_recruit_10" "Lust incarnate." 300 "<<set $scene.style='lust'>>">>]<br>
[<<moveTo "event_boss_recruit_10" "You're not sure." 300 "<<set $scene.style='unknown'>>">>]<br>
<<else>>
You ask if your prior experience, and demonstrations are not sufficient to prove your loyalty and <<he npc_boss>> frowns.<br>
<br>
"@@.npc_boss;Perhaps they might have been, but your words just now prove that such an assumption would have been a lie. A good slave should be ever-eager to continue to prove her devotion, knowing that, to the right <<Master npc_boss>>, no degree of subservience is too much.@@"<br>
<br>
<<include "bossRejection">>
<</if>>
</div>/*#
#desc: boss test of fem
#status: RELEASED 0.8.9.0
#ignore_spell: factly
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'sissy'>>
You reply that, of course, you are a SISSI Secretary... and that you hope to one day be <<if $npc_boss.fem>>HER<<else>>HIS<</if>> SISSI Secretary.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles, clearly approving of your description.
<<case 'girl'>>
You reply that you are a "@@.pc;Good girl.@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;Girl, certainly... as to good, well, that is a description given by others, one cannot legitimately self-assess such.@@"
<<case 'slave'>>
You reply that you are an obedient slave... whose greatest dream is to be owned by <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles, clearly approving of your description.
<<case 'bimbo'>>
You reply that you are a horny bimbo, your greatest desire to be <<=ps(setup.getNpcName("npc_boss","formal"))>> living, breathing, horny fuck-doll.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles, clearly approving of your description.
<<case 'femboy'>>
You reply that you are a slutty femboy, your greatest desire to be <<=ps(setup.getNpcName("npc_boss","formal"))>> living, breathing, horny fuck-boy.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles, amused, and approving of your description.
<<case 'male'>>
You matter-of-factly explain that you're just a dude who has come to enjoy cross-dressing... and other things.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> bristles in a momentary loss of control.
<<case 'lust'>>
You reply that you are lust incarnate, fetishistic desire in human form.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles, clearly approving of your description.
<<case 'unknown'>>
You reply that you do not know what you are...<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> frowns. "@@.npc_boss;Disappointing. One must always know what they are, else... how they can hope to accomplish anything? Even the most mindlessly obedient slave must first accept that they ARE a slave.@@"
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
<<if ['unknown','male'].includes($scene.style)>>
<<include "bossRejection">>
<<elseif $fetish.piss>>
You sense that <<he npc_boss>> is about to move forward when <<he npc_boss>> sighs. Catching your look of concern <<he npc_boss>> waves it off. "@@.npc_boss;Sorry, nature calling... actually, how would you like to take care of this for me?@@"<br>
<br>
<<printThought "Is <<he npc_boss>> asking if I want to drink <<his npc_boss>> piss?">><br>
<br>
<<printThought "This feels like a moment of truth... where threads of prophecy will be severed...">><br>
<br>
WARNING: If you choose to going past this point you will diverge from the central finite curve. You may curry <<=ps(setup.getNpcName("npc_boss","formal"))>> favour, but you will be set upon this darkening path and other ends will be closed to you.<br>
<br>
<<if setup.getTotalValue("piss") > 5>>
[<<moveTo "event_boss_recruit_10_bonus" "Of course!" 120 "<<set $scene.obey=true>>">>]<br>
<<else>>
[@@.link_locked;Drink <<his npc_boss>> piss? That's disgusting!@@]<br>
<</if>>
[<<moveTo "event_boss_recruit_10_bonus" "Decline." 120 "<<set $scene.obey=false>>">>]
<<else>>
You hold your breath, feeling that you have finally reached the end of <<his npc_boss>> test, desperately hopeful that you have managed to meet with <<his npc_boss>> approval.<br>
<br>
<<printThought "What is it about <<his npc_boss>> presence that amplifies my desire to serve <<him npc_boss>>?">><br>
<br>
<<if $scene.fail == 0>>
[<<moveTo "event_boss_recruit_11_success" "Listen obediently." 120>>]
<<else>>
[<<moveTo "event_boss_recruit_11" "Listen obediently." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: boss test of piss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<if setup.getTotalValue("piss") <= 10>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You smile and reply that, of course you can help <<him npc_boss>>.<br>
<br>
<<He npc_boss>> grins wider, pressing a button that causes the front panel of <<his npc_boss>> desk to slide away and clear a path to between <<his npc_boss>> legs.<br>
<br>
You drop to your knees, crawl forward, and take <<his npc_boss>> half-chub between your lips. It tastes even better than you remembered in the brief moment before the heady flavour of <<man npc_boss>> is replaced by the
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
equally strong, equally delicious taste of <<his npc_boss>> <<getWordPiss>>.
<<else>>
strong taste of <<his npc_boss>> <<getWordPiss>>.
<</if>>
<<His npc_boss>> flow is fast and hot, but you gulp it down eagerly and obediently, waiting until you have sucked clean every drop before licking around the head, hopeful that this might turn into a blowjob opportunity.<br>
<br>
Unfortunately for you, <<he npc_boss>> pushes your head away and zips up, leaving you to crawl backwards out from under <<his npc_boss>> desk.
<<if setup.getTotalValue("piss") > 15>>
Still on hands and knees you look up at <<=setup.getNpcName("npc_retention","formal")>> and ask if <<he npc_retention>> "@@.pc;Requires relief?@@"<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> merely nods, making no motion to help as you crawl over, unzip, take <<his npc_retention>> now-softened cock between your lips and enjoy your second drink. <<=ps(setup.getNpcName("npc_retention","formal"))>> <<getWordPiss>> is strong and delicious, but a pale knock-off compared to <<=setup.getNpcName("npc_boss","formal")>> delectable perfection.<br>
<br>
Sloshing a bit with two strong, <<if $npc_boss.fem == $npc_retention.fem>>virile <<men npc_boss>>'s<<else>>tasty people's<</if>> worth of <<getWordPiss>> in your belly you clean up <<=setup.getNpcName("npc_retention","formal")>> before being instructed to return to your feet.<br>
<br>
"@@.npc_boss;Quite the eager piss-slut, unsurprising, given the time you have spent working the executive bathrooms.@@" <<He npc_boss>> states with a grin.<br>
<br>
<</if>>
You lick your lips as you hang in eager anticipation of <<=ps(setup.getNpcName("npc_boss","formal"))>> next words.
<<else>>
<<if setup.getTotalValue("piss") > 5>>
disgusting bitterness of <<getWordPiss>>.
<<else>>
ERROR: impossible
<</if>>
"@@.npc_boss;Hmm, disappointing. Perhaps you need to spend more time in the executive bathroom to learn to... appreciate such a gift?@@"<br>
<br>
You nod as your obedience overpowers your disgust, trying not to gag as you focus on <<=ps(setup.getNpcName("npc_boss","formal"))>> next words.
<</if>>
<br><br>
<<if $scene.fail == 0>>
[<<moveTo "event_boss_recruit_11_success" "Listen obediently." 120>>]
<<else>>
[<<moveTo "event_boss_recruit_11" "Listen obediently." 120>>]
<</if>>
<<else>>
You shake your head and <<=ps(setup.getNpcName("npc_boss","formal"))>> gaze narrows. "@@.npc_boss;Reject my generous gift? Do you think you are BETTER than being a human toilet? An obedient slave<<if $fetish.cum>>, an obsequious cum-dump<</if>>?@@" <<He npc_boss>> snorts in annoyance.<br>
<br>
<<include "bossRejection">>
<</if>>
</div>/*#
#desc: boss test, summary
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 3, 12, 0)>>
<<addWorkEvent 'admin_betrayal' _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss","formal")>> graces you with the hint of a smile. A tiny gesture... and yet one that fills you with submissive pride as you hang on <<his npc_boss>> every divine word.<br>
<br>
"@@.npc_boss;Well done. You have proven yourself better than most... perhaps you are worthy of a more intimate position under me.@@"<br>
<br>
<<His npc_boss>> words fill you with joy, and you throw yourself at <<his npc_boss>>, thanking <<him npc_boss>> for the opportunity to prove yourself and promising to do anything <<he npc_boss>> desires.<br>
<br>
"@@.npc_boss;Prove yourself? No, no, you have merely gained the right to prove yourself, earned my spending the time to give you the opportunity to demonstrate your worth, your skills... your unwavering, complete, utter obedience.@@"<br>
<br>
You sneak a glance up at <<him npc_boss>>, <<his npc_boss>> expression turning dark as your passionate obedience is tinged with a sense of foreboding, a reminder of just how <<=setup.getNpcName("npc_boss","formal")>> wields <<his npc_boss>> power.<br>
<br>
<<He npc_boss>> waves <<his npc_boss>> hand in dismissal. "@@.npc_boss;Go. And be ready, truly proving yourself to me... well, my expectations are far higher than anything you have ever done, and I will brook no failures.@@"<br>
<br>
You shiver in anticipation as <<=setup.getNpcName("npc_retention","formal")>> helps you back to your feet and leads you to the elevator.<br>
<br>
The elevator door closes and you glide down alone... yet the imprint that <<=setup.getNpcName("npc_boss","formal")>> left on you does not fade. With each floor that ticks down your urge, your NEED to prove your worth to <<him npc_boss>> only grows... even as you find yourself a touch fearful at what such proof will require of you...<br>
<br>
[<<moveTo "company_lobby" 'Step out into the lobby.' 180 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: boss test, summary
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.fail == 1>>
"@@.npc_boss;So close... you had but a single, tiny failure to meet my expectations. But, for me, only perfection will do, and so, I must tell you that you are unsuitable for my purposes.@@"
<<elseif $scene.fail < 5>>
"@@.npc_boss;A disappointing failure, your performance had many bright points, but any failure is a failure too many. I expect, and demand, perfection.@@"
<<elseif $scene.fail < 10>>
"@@.npc_boss;Quite a severe failure, over half a dozen points where you were unable to meet my requirements.@@"
<<elseif $scene.fail >= 13 || !$fetish.piss && $scene.fail >= 12>>
"@@.npc_boss;In a way, I am almost impressed,@@" <<=setup.getNpcName("npc_boss","formal")>> states with a cruel chuckle. "@@.npc_boss;You have somehow failed as hard as it is possible to do without causing me to cut the assessment prematurely. Obviously this makes you utterly unsuitable for my purposes. Good day.@@"
<<else>>
"@@.npc_boss;Such a failure, while you did not cause me to cut the assessment short... perhaps I should, for your areas of insufficient ability were numerous.@@"
<</if>>
<br><br>
<<if State.hasPlayed("event_boss_recruit_12_fail")>>
You are beyond despondent, throwing yourself on the ground as you beg <<him npc_boss>> to reconsider, offering anything if <<he npc_boss>> will only look at you, shove <<his npc_boss>> cock down your throat, anything to service <<him npc_boss>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> does not even look up as <<=setup.getNpcName("npc_retention","formal")>> drags you away.<br>
<br>
[<<moveTo "event_boss_recruit_gameover" "Continue." 180>>]
<<else>>
Your heart sinks, even though <<his npc_boss>> voice is calm and measured it feels like you have been struck, to fail <<him npc_boss>> is the worst thing you can think of, only your desire to somehow redeem yourself in <<his npc_boss>> eyes preventing you from falling to the floor and wailing in lament.<br>
<br>
"@@.npc_boss;You may take her away, now.@@" <<=setup.getNpcName("npc_boss","formal")>> instructs, <<=setup.getNpcName("npc_retention","formal")>> stepping forward to take you by the arm.<br>
<br>
In a despondent daze it is only after you are in the elevator that you realise that you are still naked...<br>
<br>
[<<moveTo "event_boss_recruit_12_fail" "Continue." 120>>]
<</if>>
</div>/*#
#desc: fail npc_boss' test, leave
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 30>>
<<addItem "card_retention">>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
Somehow being out of <<=ps(setup.getNpcName("npc_boss","formal"))>> office makes the weight of <<his npc_boss>> presence and the need to obey and please <<him npc_boss>> lesser... though you still find yourself despairing over your failure.<br>
<br>
"@@.npc_retention;Get dressed,@@" <<=setup.getNpcName("npc_retention","formal")>> commands, handing you your clothes.<br>
<br>
In a daze you dress on reflex, though a part of you wonders what the point of anything is, if you cannot serve <<=setup.getNpcName("npc_boss","formal")>>...<br>
<br>
"@@.npc_retention;<<=setup.getNpcName("npc_boss","formal")>> has extremely high standards, but <<=setup.getNpcName("npc_manager","other")>> has keen insight when it comes to submissives... if she sees something in you...@@" <<=setup.getNpcName("npc_retention","formal")>> smiles. "@@.npc_retention;Tell you what, if you think you're worthy of another try, contact me.@@" <<he npc_retention>> hands you a business card. "@@.npc_retention;I warn you, however, if you were to fail a second time, well... I doubt <<=setup.getNpcName("npc_boss","formal")>> would show similar patience at wasting his time.@@"<br>
<br>
You nod, clutching the business card tightly and thanking <<=setup.getNpcName("npc_retention","formal")>> profusely before asking if there is ANYTHING you can do to show your appreciation?<br>
<br>
<<He npc_retention>> chuckles as you are reminded how roughly <<he npc_retention>> used you mere minutes prior — what could you possibly offer such a <<man npc_retention>> when <<he npc_retention>> seems equally willing to just take?<br>
<br>
"@@.npc_retention;Take care not to waste your second chance.@@"<br>
<br>
You finish dressing and nod just before the elevator door opens onto the main lobby and <<he npc_retention>> motions for you to leave.<br>
<br>
[<<moveTo "company_lobby" "Leave." 300>>]
</div>/*#
#desc: call npc_retention about npc_boss inspection
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You call <<=setup.getNpcName("npc_retention","formal")>> to let <<him npc_retention>> know that you would like another opportunity to gain <<=ps(setup.getNpcName("npc_boss","formal"))>> approval.<br>
<br>
<<if $events.hasOwnProperty("boss_recruit_retry")>>
"@@.npc_retention;You silly bimbo, I have already made arrangements... unless you have realised that you are actually worthless and not worthy of <<=ps(setup.getNpcName("npc_boss","formal"))>> time and wish to cancel? Remember, this is your last chance to earn <<his npc_boss>> favour.@@"<br>
<br>
[<<moveTo "event_boss_recruit_retry_call_cancel" "Confirm that you are ready." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_boss_recruit_retry_call_cancel" "You would like to cancel." 60 "<<set $scene.accept=false>>">>]
<<else>>
"@@.npc_retention;I see. Are you certain that you are ready this time? I warn you again that even second chances with <<=setup.getNpcName("npc_boss","formal")>> are rare... and costly. You will not get a third. Recall, <<he npc_boss>> will expect you to be perfect in every way — the most beautiful makeup, large, but not too large breasts, your <<getWordMyPenis>> small, absent, or at least not un-naturally large. You must be masterfully skilled with all of your holes, able to perform such duties with reflexive, eager obedience. Finally, you must have the nimble grace to wear the steep footwear appropriate to your station, the endurance to see the test to the end, the intelligence to perform your duties, but even more than that, the mentality to fully embrace that your purpose for existence is the sexual pleasure and gratification of others.@@"<br>
<br>
<<printThought "Wow, that's a lot">><br>
<br>
[<<moveTo "event_boss_recruit_retry_call_2" "Tell <<him npc_retention>> you are ready." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_boss_recruit_retry_call_2" "On second thought, you need more time." 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: call npc_retention
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _nextDate = setup.setNextDate($now, 3, 15, 0)>>
<<addEvent "boss_recruit_retry" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You confirm that you are ready to show <<=setup.getNpcName("npc_boss","formal")>> your worth.<br>
<br>
"@@.npc_retention;Very well. I shall make arrangements and collect you as before. Be ready, <<=ps(setup.getNpcName("npc_boss","formal"))>> schedule is busy, I cannot guarantee what day I will be able to fit you in.@@"<br>
<br>
You thank <<=setup.getNpcName("npc_retention","formal")>> profusely for granting you this second chance, but <<he npc_retention>> has already hung up.
<<else>>
You reply that, actually... you need more time. "@@.npc_retention;Sound judgement. When you believe you are ready... let me know.@@"<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> hangs up.
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: call npc_retention
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<removeEvent 'boss_recruit_retry'>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You confirm your readiness to prove yourself to <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
"@@.npc_retention;Very good. As I said, I will get you in when I can, stay prepared.@@"
<<else>>
You tell <<=setup.getNpcName("npc_retention","formal")>> that you need more time to be ready to prove yourself to <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
"@@.npc_retention;Prudent. This is why I did not officially put you on <<his npc_boss>> calendar. You are only going to get one more chance to prove yourself, let me know when you are ready.@@"
<</if>>
<<=setup.getNpcName("npc_retention","formal")>> hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: game over, fail boss inspection twice
#status: RELEASED 0.8.9.0
#*/
<<set $gameOver = 'boss_inspect'>>
<<set $player.location to "eRRoR#8552[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
The elevator rockets down to the deepest basement, the very opposite of <<=ps(setup.getNpcName("npc_boss","formal"))>> heavenly throne.<br>
<br>
Handed off to orderlies you are swiftly bound<<if $fetish.drugs>>, drugs pumped into your system that cause your pained thoughts to slowly recede<<else>>, your objections silenced and your comments ignored<</if>>...<br>
<br>
<<=$player.first_name>> never again emerges from the depths of Social Interaction Service Syndicate Inc.'s headquarters, but a month later Secretary Drone number 227 is crated up and shipped off to one of their overseas subsidiaries. Nonexistent labour standards and government oversight allow Drone 227 to execute her duties without interference, her performance providing valuable data in the quest to perfect a process that will allow even more expansive labour efficiency conversions.<br>
<br>
As programmed, Drone 227 performs her duties with precision, but every night, just before she is sealed in to her rejuvenation pod, she finds herself thinking of a piercing set of blue eyes and she feels liquid leaking from her ocular cavities...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: npc_boss summons you to office for admin
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
In a surprising reversal of the norm, <<=setup.getNpcName("npc_manager","formal")>> steps out of her inner office to inform you that "@@.npc_manager;<<=setup.getNpcName("npc_boss","formal")>> wishes to see you in <<his npc_boss>> office. Do hurry, <<he npc_boss>> is not a <<man npc_boss>> to be kept waiting.@@"<br>
<br>
She has an oddly suspicious and... concerned(?) expression as you acknowledge the instruction and hurry out of the office.<br>
<br>
The elevator rises swiftly as your heart-rate quickens — <<=setup.getNpcName("npc_boss","formal")>> has summoned you directly! You wonder what <<he npc_boss>> could have in mind for you... and why <<he npc_boss>> had <<=setup.getNpcName("npc_manager","formal")>> give you the command rather than summoning you directly?<br>
<br>
You step out of the elevator to find <<=setup.getNpcName("npc_boss","formal")>> sitting along at <<his npc_boss>> desk, the front panel is pulled to one side to reveal a direct path between <<his npc_boss>> legs. <<He npc_boss>> does not even look up from <<his npc_boss>> work, <<his npc_boss>> crisp, <<if $npc_boss.fem>>commanding<<else>>deep<</if>> voice filling the room before you can even announce your presence.<br>
<br>
"@@.npc_boss;You may take your position.@@"<br>
<br>
With each step you take closer to <<his npc_boss>> desk you get more excited, the prospect of sucking <<his npc_boss>>
<<if setup.getTotalValue("penis") > 10>>
glorious cock filling you with
<<if setup.getTotalValue("penis") > 15>>
unbridled desire.
<<else>>
excitement.
<</if>>
<<else>>
eerily enticing cock filling you with
<<if setup.getTotalValue("penis") > 5>>
disturbingly powerful lusts.
<<else>>
unwanted lust.
<</if>>
<</if>>
Any thought of disobedience is crushed by <<=ps(setup.getNpcName("npc_boss","formal"))>> mere presence and you quickly crawl under the desk and unzip your "prize" to take <<him npc_boss>> between your painted lips.<br>
<br>
You hear a motor whirr and the desk panel slides shut behind you, concealing you from any who might arrive after. Other than <<=ps(setup.getNpcName("npc_boss","formal"))>> iron hardness <<he npc_boss>> makes no acknowledgement of your presence, your
<<if setup.getTotalValue("oral") > 15>>
eagerly welcoming throat
<<else>>
eagerly sucking lips
<</if>>
drawing not the slightest reaction, even as you instinctively know that to stray from your course, to let this gift pass from your lips, would be the greatest folly.<br>
<br>
<<He npc_boss>> continues to work in silence as you softly suck so as not to unduly disturb <<him npc_boss>>. Several minutes pass in this manner before you hear the elevator chime in the distance. You freeze for a moment and feel <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">> twitch, as if in reminder that you have been given no order to stop. You continue sucking, hoping that your presence proves to be to <<=ps(setup.getNpcName("npc_boss","formal"))>> liking as <<he npc_boss>> takes <<his npc_boss>> meeting.<br>
<br>
"@@.npc_boss;Welcome, <<=setup.getNpcName("npc_admin","other")>>,@@" <<=setup.getNpcName("npc_boss","formal")>> states in greeting. Despite your shock you have the presence of mind to stifle it by going balls deep on <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>, holding until you're on the verge of passing out as you realise that this was all a deliberate plan on the part of <<=setup.getNpcName("npc_boss","formal")>>... a plan that, while unknown, cannot help but spark both arousal and fear in your mind.<br>
<br>
"@@.npc_admin;Thank's for inviting me... I hadn't been up this high before... a truly astounding office, and this view! I've never seen the city like this, it all looks so small from up here...@@"<br>
<br>
"@@.npc_boss;Yes, it is small... what do you think about the other views? Enjoying your new upper-floor office, I trust?@@"<br>
<br>
"@@.npc_admin;Well, actually it's an internal office-oh! You mean the ladies, oh, for sure for sure. You have some gorgeous beauties working up here. I wonder sometimes if their outfits don't get in the way of their duties but... well, I have seen nothing but professional efficiency from them, in everything.@@"<br>
<br>
Though you can tell <<he npc_boss>> is nowhere close to climax you would swear that <<=setup.getNpcName("npc_boss","formal")>> grew slightly larger, as if <<he npc_boss>> was getting off on the combination of your oblivious <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend and your own depraved position.<br>
<br>
As embarrassing as the reality of your position is, you are boxed in, and you have little choice but to continue sucking.<br>
<br>
[<<moveTo "event_boss_admin_2" "Continue." 600>>]
</div>/*#
#desc: npc_boss presents you to admin
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You suck like the obedient slut that you are as <<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_admin","first")>> move on from pleasantries to matters of business.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
It is a trivial matter to
<<else>>
You
<</if>>
split your attention between the conversation and your "duty" as you listen to <<=setup.getNpcName("npc_boss","formal")>> congratulate your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend on <<his npc_admin>> meteoric rise before bringing up the topic of another merger.
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You try to listen in without diverting too much attention from your "duty."
<<else>>
You keep your focus on <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">> like a good slut, but you still hear some of the conversation.
<</if>>
It would seem that <<=setup.getNpcName("npc_boss","formal")>> is quite impressed with your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend's performance, and it sounds like there is already another merger in the works?
<</if>>
<br><br>
The conversation goes on for some time, with <<=setup.getNpcName("npc_boss","formal")>> exercising <<his npc_boss>> limitless self-control to deny you a prize other than the occasional dribble of <<if setup.getTotalValue("cum") > 10>>delicious<<else>>disturbingly alluring<</if>> pre-cum. You sense things coming to a close, and hope that means you'll get your "reward" when <<=setup.getNpcName("npc_boss","formal")>> says something that draws a bit more of your focus.<br>
<br>
"@@.npc_boss;So, with your recent promotion... you mentioned enjoying the view, but it is my understanding that you have not taken any further advantage of the perks that come with your position. I presume you are a <<man npc_admin>> of exquisite taste, so let me offer my personal Secretary, she is among the finest lips and throat in the entire company.@@"<br>
<br>
You hear the sharp click of towering heels as <<=setup.getNpcName("npc_secretary","nickname")>> walks out from some hidden location. "@@.npc_secretary;Hello, <<sir npc_admin>> — might I offer you the use of one of my three holes? Or some combination of them, if that is your preference?@@"<br>
<br>
You wonder if this was <<=ps(setup.getNpcName("npc_boss","formal"))>> plan — to force you to listen while your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend fucks your predecessor, but <<=setup.getNpcName("npc_admin","first")>> immediately proves <<his npc_admin>> mettle and political savvy all at once.<br>
<br>
"@@.npc_admin;It is a generous offer, and I am sure one that would be quite delightful but... well... for me, I've never had a problem getting girls and, at this point in my life, I look for a bit more of a personal connection, a simple hit it and quit it just doesn't really draw my interest. So, certainly, I appreciate the offer, but just as I spend my day's focusing on my work, despite the beautiful sights, I think I'll decline.@@"<br>
<br>
You hear <<=setup.getNpcName("npc_secretary","nickname")>> make a disappointed snort, an ugly sound will surely result in future punishment just before <<=setup.getNpcName("npc_boss","formal")>> reveals <<his npc_boss>> true plan in a disturbingly satisfied tone.<br>
<br>
"@@.npc_boss;I thought it might be something like that, so, as I always do, I planned ahead.@@" You freeze as you hear the desk panel whisk away to expose your backside, wondering if <<=setup.getNpcName("npc_admin","first")>> recognises you on sight from such an angle in the instant before <<=setup.getNpcName("npc_boss","formal")>> removes all confusion. "@@.npc_boss;I believe you have quite the, how did you put it... "personal connection" with Miss <<=$player.last_name>> here. Would you prefer to take her from behind, or would you like her to swallow your load?
<<if setup.getTotalValue("oral") > 15>>
She might even be as good as
<<else>>
Though not quite the equal of
<</if>>
my personal assistant, I can assure you her lips and throat are quite accommodating. I am sure she is quite thirsty for a reward as I have been somewhat cruelly teasing her for quite some time, and she is quite the desperate <<if $fetish.cum>>cum<<else>>cock<</if>>-slut...@@"<br>
<br>
If it wasn't for your heart thundering in your chest you could hear a pin drop in the suddenly silent office. As if following a choreographed plan <<=setup.getNpcName("npc_boss","formal")>> waits a few moments before nudging you away with <<his npc_boss>> knee. "@@.npc_boss;Oh, silly me, an old fashioned <<if $npc_admin.fem>>girl<<else>>fellow<</if>> like yourself probably wants a direct invitation. Go on, <<if $fetish.sissy>>sissy<<else>>slut<</if>>, look your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend in the eye and tell <<him npc_admin>> how much you want <<his npc_admin>> cock inside of you.@@"<br>
<br>
Half on auto-pilot you find yourself crawling out from under the desk and standing up. Even with what <<he npc_admin>> already knew about the company, these events seem to have <<=setup.getNpcName("npc_admin","first")>> shook, and <<he npc_admin>> stares at you with <<his npc_admin>> mouth agape.<br>
<br>
[<<moveTo "event_boss_admin_3" 'Do as <<=setup.getNpcName("npc_boss","formal")>> commands and beg <<=setup.getNpcName("npc_admin","first")>> to fuck one of your holes.' 180 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_boss_admin_3" 'No, this is past the line. Ask <<=setup.getNpcName("npc_admin","first")>> for help.' 180 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: npc_boss and admin fight
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_admin") setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
"@@.pc;Please, <<=setup.getNpcName("npc_admin","formal")>>,@@" you begin, falling back on "formal" instincts but getting no further before <<=setup.getNpcName("npc_admin","first")>> flies into a rage.
<<else>>
Your measured facade shatters as you whimper "@@.pc;Help me...@@" those two words enough to switch <<=setup.getNpcName("npc_admin","first")>> back "on" as <<he npc_admin>> flies into a rage.
<</if>>
<br><br>
Vaulting the desk <<=setup.getNpcName("npc_admin","first")>> crashes into <<=setup.getNpcName("npc_boss","formal")>> with <<his npc_admin>> full weight, taking the <<if $npc_admin.fem == $npc_boss.fem>>other <</if>><<man npc_boss>> by surprise and straight to the floor where <<he npc_admin>> starts raining punches. The consummate martial artist <<=setup.getNpcName("npc_admin","first")>> easily stifles the <<if $npc_admin.fem == $npc_boss.fem>>other <<man npc_boss>>'s<<else>><<=ps(setup.getNpcName("npc_boss","formal"))>><</if>> attempt to rise to <<his npc_boss>> feet... when <<=setup.getNpcName("npc_secretary","nickname")>> appears next to you to make you realise that this, too, was all part of the plan. "@@.npc_secretary;Deal with it.@@" She commands, the combination of her bimbo inflection and the sharp order somewhat jarring as you look down to see her offering some sort of electric stun device.<br>
<br>
[<<moveTo "event_boss_admin_4" 'Side with <<=setup.getNpcName("npc_boss","formal")>>.' 180 "<<set $scene.stun=true>>">>]<br>
[<<moveTo "event_boss_admin_4" 'Side with <<=setup.getNpcName("npc_admin","first")>>.' 180 "<<set $scene.stun=false>>">>]
</div>/*#
#desc: betray admin to npc_boss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.stun>>
<<applyExperience 'submission' 20 'unbelievable' $EXPOSED>>
<<else>>
<<applyExperience 'bdsm' 20 'unbelievable' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_boss") setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
<<if $scene.stun>>
As you watch <<=setup.getNpcName("npc_boss","formal")>> getting pounded out by your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><<else>>old <</if>>friend something snaps, <<=ps(setup.getNpcName("npc_boss","formal"))>> darkly alluring power digging its claws into you. You take the offered stun device and walk towards the scuffle, pulling the trigger as you press it against your<<if $npc_admin.flags.relationship == "boyfriend">><<if $npc_admin.fem>> "girlfriend" <<else>> "boyfriend" <</if>><<else>> "friend" <</if>>causing electricity to arc and <<=ps(setup.getNpcName("npc_admin","first"))>> body to contort horribly.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> drops to a knee and looks up at you and, for a moment you do not know which has hurt <<him npc_admin>> worse, the electrocution... or your betrayal. Suddenly afraid of <<his npc_admin>> strength you shock <<him npc_admin>> again, squeezing the trigger until <<he npc_admin>> is spasming on the floor and a pair of massive security guards rush past you.<br>
<br>
Back on <<his npc_boss>> feet <<=setup.getNpcName("npc_boss","formal")>> dabs blood from <<his npc_boss>> lip as <<he npc_boss>> places an arm around your shoulder. You can't help but notice that <<his npc_boss>> cock is still sticking out of <<his npc_boss>> pants... and still rock hard.<br>
<br>
You look over to where <<=setup.getNpcName("npc_admin","first")>> has been forced to <<his npc_admin>> knees, arms cuffed behind <<his npc_admin>> back and some sort of gag shoved into <<his npc_admin>> mouth.<br>
<br>
"@@.npc_boss;Now, Miss <<=$player.first_name>> — would you like to continue from where you were so rudely interrupted?@@" <<=setup.getNpcName("npc_boss","formal")>> states with disgusting self-satisfaction.<br>
<br>
<<printThought "<<getWordGod>>, what have I done?">><br>
<br>
[<<moveTo "event_boss_admin_5" 'Be the obedient <<if $fetish.sissy>>sissy <</if>>slut <<=setup.getNpcName("npc_boss","formal")>> wants you to be.' 180 "<<set $scene.surrender=true>>">>]<br>
[<<moveTo "event_boss_admin_5" 'Plead for forgiveness, and mercy for your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend.' 180 "<<set $scene.surrender=false>>">>]
<<else>>
You take the stun device and wait, not wanting to get in <<=ps(setup.getNpcName("npc_admin","first"))>> way as you can tell <<he npc_admin>> just needs a few more moments to finish the evil <<=setup.getNpcName("npc_boss","formal")>> off.<br>
<br>
Suddenly your hand is on fire with pain, a second of rigid agony feeling like an hour as it spreads through your body before you crumple to the ground to the faint scent of something burnt.<br>
<br>
Leaning down <<=setup.getNpcName("npc_secretary","nickname")>> plucks the stun device from your smoking grasp — it must have had some sort of sabotage override mode and you are left helpless on the floor to watch as she electrocutes your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend once, twice, then twice more before <<he npc_admin>> finally crumples to the floor.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> rises to <<his npc_boss>> feet as two massive security guards rush past, cuffing, gagging and dragging <<=setup.getNpcName("npc_admin","first")>> to <<his npc_admin>> knees.<br>
<br>
You're starting to get function back into your limbs and you begin to push yourself to your feet only for <<=setup.getNpcName("npc_boss","formal")>> to land a back-handed slap across your face that almost lifts you out of your boots to send you crashing back to the floor.<br>
<br>
"@@.npc_boss;Stupid <<if $fetish.slurs>>cunt<<else>>idiot<</if>>. You had so much promise... alas.@@"<br>
<br>
<<He npc_boss>> glances dismissively towards your slumped, broken <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend. "@@.npc_boss;Take <<him npc_admin>> away... and you.@@" <<he npc_boss>> continues, looking down at you with a disgusted sneer. "@@.npc_boss;Go back to work.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> is dragged past you to the elevator before you can stagger back to your feet, leaving you to wait, staring at the numbers descending deep into the basement levels... the whole time all you can hear are the only sounds of <<=setup.getNpcName("npc_secretary","nickname")>> dropping to her knees to loudly, and enthusiastically, finish what you started...<br>
<br>
As if coordinated you hear <<=setup.getNpcName("npc_boss","formal")>> grunt in climax just as the elevator dings its arrival. You walk in and press the button without looking back, the last thing you hear is <<=ps(setup.getNpcName("npc_secretary","nickname"))>> breathlessly enthusiastic "@@.npc_secretary;Thank you, <<Master npc_boss>>...@@"<br>
<br>
You punch the button for your floor and wait for the elevator to take you back to work...<br>
<br>
[<<moveTo "event_boss_admin_8" 'Return to your desk.' 600>>]
<</if>>
</div>/*#
#desc: betray admin to npc_boss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.surrender>>
<<if !$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition != 'Complete')>>
<<if ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition != 'Complete')>>
<<completeTask 'task_first_gym' $now false>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 2, 6, 0)>>
<<addEvent 'gym_alt_unlock' _nextDate>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_gym_tournament")>>
<<deleteTask 'task_gym_tournament'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_boss") setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
<<if $scene.surrender>>
You smile at your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend... an artificial, formal smile lacking in both warmth and compassion. You can see tears streaking down <<his npc_admin>> face as you drop to your knees and take <<=ps(setup.getNpcName("npc_boss","formal"))>> still-hard cock in your hand.<br>
<br>
"@@.pc;Please, do not be upset. I have found my purpose in life — to be a <<if $fetish.sissy>>sissy, <</if>>bimbo slut. Before I was miserable because I was trying to deny the fact that I am a submissive, cock-hungry <<if $fetish.slurs>>faggot <</if>>whore. <<=setup.getNpcName("npc_boss","formal")>> has shown me the truth, you should rejoice for me, and pledge your loyalty to <<him npc_boss>>, for <<=setup.getNpcName("npc_boss","formal")>> is the smartest, most powerful <<man npc_boss>> in the world.@@"<br>
<br>
You emphasise your point by taking a long, deep gulp of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<if $npc_boss.fem>>girldick<<else>>manhood<</if>>, letting <<his npc_boss>> entire cock slide into your throat where it belongs and giving it several seconds to be sure that <<=setup.getNpcName("npc_admin","first")>> has had time to see.<br>
<br>
Reluctantly pulling away you smile at your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend once again, your brief, wonderful taste of cock lending a warmth to your expression that had not been there a moment prior. "@@.pc;See? This is who I am. At my <<Master npc_boss>>'s feet is where I belong.@@" You look pleadingly up at <<=setup.getNpcName("npc_boss","formal")>> though you would always prefer to have <<his npc_boss>> perfect member bulging your throat, your first duty is obedience, besides, <<=ps(setup.getNpcName("npc_admin","first"))>> big cock is wonderful, and it is unfair to compare <<him npc_admin>> to the perfection of <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
"@@.pc;Please, <<=setup.getNpcName("npc_boss","formal")>>, may I offer my holes again to <<=setup.getNpcName("npc_admin","formal")>> and show <<him npc_admin>> the benefits of loyalty to you?@@"<br>
<br>
"@@.npc_boss;Isn't she wonderful?@@" <<=setup.getNpcName("npc_boss","formal")>> states, placing a hand gently on your head and making you tremble in submissive delight. With each moment since your decision to betray your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend you find yourself slipping ever-deeper into <<=ps(setup.getNpcName("npc_boss","formal"))>> thrall.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles at the horrified <<=setup.getNpcName("npc_admin","first")>>. Unable to resist the opportunity you slide <<=ps(setup.getNpcName("npc_boss","formal"))>> cock back between your lips and softly suck, this simple, natural act strangely making <<=setup.getNpcName("npc_admin","first")>> appear even more distressed.<br>
<br>
"@@.npc_boss;So, <<=setup.getNpcName("npc_admin","formal")>>, are you willing to put your early rash attack behind you and accept all that loyalty to me can provide?@@"<br>
<br>
Not wanting to let the scrumptious <<man npc_boss>>-sausage leave your lips you turn as far as you can to look pleadingly at your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><<else>>old <</if>>friend. <<=setup.getNpcName("npc_boss","formal")>> gestures and one of the guards removes <<=setup.getNpcName("npc_admin","first")>> gag.<br>
<br>
In a sudden burst of strength <<=setup.getNpcName("npc_admin","first")>> shoves one of the guards away, rising to <<his npc_admin>> feet for a moment before, once again, <<=setup.getNpcName("npc_secretary","nickname")>> sends <<him npc_admin>> to the ground in an electrified heap.<br>
<br>
"@@.npc_boss;A pity,@@" <<=setup.getNpcName("npc_boss","formal")>> states emotionlessly. "@@.npc_boss;Still, at least one of you proved your loyalty, and that deserves a reward. Tell me, slut, what should we do with your poor, deluded <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend. Should I keep <<him npc_admin>> as <<he npc_admin>> is... minus those pesky morals... or should I make <<him npc_admin>> like you? Another submissive <<if $npc_admin.fem>>bimbofied<<elseif $fetish.sissy>>sissy<<else>>feminised<</if>> slut?@@"<br>
<br>
You feel honoured that <<=setup.getNpcName("npc_boss","formal")>> would solicit your opinion, and you take a moment to think... and not just because responding would mean you temporarily remove your lips from <<his npc_boss>> mouth-watering <<getWordPenis "npc_boss">>.<br>
<br>
[<<moveTo "event_boss_admin_6" 'Tell <<him npc_boss>> to just "fix" <<=ps(setup.getNpcName("npc_admin","first"))>> confusion.' 180 "<<set $scene.sissy=false>>">>]<br>
[<<moveTo "event_boss_admin_6" 'Say that your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend would surely be happier as a <<if $npc_admin.fem>>bimbofied<<elseif $fetish.sissy>>sissy<<else>>feminised<</if>> slut.' 180 "<<set $scene.sissy=true>>">>]
<<else>>
You start sobbing, your words a mish-mash of apologies for your betrayal and begging for mercy for your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend. "@@.pc;Please! <<He npc_admin>> get's angry sometimes, it will never happen again, I—@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> cuts you off by shoving you to the ground where you sprawl a short distance in front of your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend.<br>
<br>
"@@.npc_boss;Pathetic. I thought there was some promise in you but...@@" <<He npc_boss>> snorts. "@@.npc_boss;No matter. Take <<him npc_admin>> away, and you?@@" <<=setup.getNpcName("npc_boss","formal")>> looks down at you, <<his npc_boss>> face twisted in an unearthly cruel grin as <<he npc_boss>> looks you in the eye. "@@.npc_boss;Go back to work.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> tries to struggle but you think <<his npc_admin>> heart is not into it, the two guards easily dragging <<him npc_admin>> away as you follow in a sleep-walking daze, unwilling to turn around as you wait for the elevator to go down and come back up, the only sounds are <<=setup.getNpcName("npc_secretary","nickname")>> dropping to her knees to loudly, and enthusiastically, finishing what you started...<br>
<br>
As if coordinated, you hear <<=setup.getNpcName("npc_boss","formal")>> grunt in climax just as the elevator ding's its arrival. You walk in and press the button without looking back, the last thing you hear is <<=ps(setup.getNpcName("npc_secretary","nickname"))>> breathlessly enthusiastic "@@.npc_secretary;Thank you, <<Master npc_boss>>...@@"<br>
<br>
You punch the button for your floor and wait for the elevator to take you back to work...<br>
<br>
[<<moveTo "event_boss_admin_8" 'Return to your desk.' 600>>]
<</if>>
</div>/*#
#desc: return to your desk after admin's destruction
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition != 'Complete')>>
<<if ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition != 'Complete')>>
<<completeTask 'task_first_gym' $now false>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 2, 6, 0)>>
<<addEvent 'gym_alt_unlock' _nextDate>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_gym_tournament")>>
<<deleteTask 'task_gym_tournament'>>
<</if>>
<<if $events.hasOwnProperty("adminSec2Date")>>
<<removeEvent "adminSec2Date">>
<</if>>
<<if $events.hasOwnProperty("adminSec6Happy")>>
<<removeEvent "adminSec6Happy">>
<</if>>
<<if $workEvents.hasOwnProperty("adminSec4HR")>>
<<removeWorkEvent 'adminSec4HR'>>
<</if>>
<<if $workEvents.hasOwnProperty("adminSec5Check")>>
<<removeWorkEvent 'adminSec5Check'>>
<</if>>
<<applyExperience 'submission' 20 'terrible' $EXPOSED>>
<<if $scene.sissy>>
<<set $npc_admin.flags.sissified=true>>
<<applyExperience 'bimbofication' 15 'terrible' $EXPOSED>>
<<if $workEvents.hasOwnProperty('brazen_humil_event')>>
<<removeWorkEvent 'brazen_humil_event'>>
<</if>>
<<if $workEvents.hasOwnProperty('admin_training_1')>>
<<removeWorkEvent 'admin_training_1'>>
<</if>>
<<else>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_evil_admin' 0 'event_manager_theme_private_evil_admin' false 'privatethemes'>>
<<if $workEvents.hasOwnProperty('brazen_humil_event')>>
<<set _nextDate = setup.setNextDate($now, 8, 9, 0)>>
<<set $workEvents['brazen_humil_event'].trigger.date = _nextDate>>
<</if>>
<<if $workEvents.hasOwnProperty('admin_training_1')>>
<<set _nextDate = setup.setNextDate($now, 8, 9, 0)>>
<<set $workEvents['admin_training_1'].trigger.date = _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.sissy>>
From the moment <<=setup.getNpcName("npc_boss","formal")>> mentioned the idea the choice was clear — wouldn't everyone be better, and happier as one of <<his npc_boss>> submissive <<if $fetish.sissy && !$npc_admin.fem>>sissy<<else>>bimbo<</if>> slaves?<br>
<br>
"@@.pc;I want a sister!@@" You announce proudly — your words mangled by your unwillingness to fully remove <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">> from your mouth.<br>
<br>
"@@.npc_boss;Of course you do...@@"
<<else>>
You think for a moment, tempted by the thought of helping make another <<if $fetish.sissy>>sissy<<else>>bimbo<</if>> slave... wouldn't it be better if everyone was <<if $npc_admin.fem>>bimbofied<<else>>feminised<</if>> and subservient to <<=ps(setup.getNpcName("npc_boss","formal"))>> perfection? What stays your thoughts is imagining <<=setup.getNpcName("npc_admin","first")>> dominating you... <<his npc_admin>> big, strong hands pinning you down as <<he npc_admin>> ravages your holes... the fantasy is not quite as good as the thought of being with <<=setup.getNpcName("npc_boss","formal")>>, of course, but it's close... and it's probably healthy for a <<if $fetish.sissy>>sissy<<else>>slave<</if>> to be forced to serve multiple unforgiving <<if $npc_admin.fem == $npc_boss.fem>><<Master npc_boss>>s<<else>>Masters<</if>>.<br>
<br>
"@@.pc;I want <<him npc_admin>> to realise how much better it would be to, like, serve you... and to pin me down and fuck me with <<his npc_admin>> big cock.@@" You state, your words somewhat mangled by your unwillingness to fully remove <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">> from your mouth.<br>
<br>
"@@.npc_boss;Well aren't you just the evil masochist.@@"
<</if>>
<<He npc_boss>> states in amusement as <<he npc_boss>> motions to the guards. They lift your broken <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend and carry <<him npc_admin>> to the elevator, leaving you to turn all of your attention to what's IMPORTANT — sucking <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>.<br>
<br>
You are overjoyed a few moments later as, in final reward for your loyal service, <<=setup.getNpcName("npc_boss","formal")>> finally
<<if $fetish.cum>>
gives you the wonderful gift of a mouthful of <<his npc_boss>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
divine
<<else>>
delicious
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
wonderful
<<else>>
disturbingly delicious
<</if>>
<</if>>
<<getWordCum>>. A big, thick, cheek-stretching load a part of you wants to let it dribble down your chin and bathe in it, but such would be a waste of <<his npc_boss>> blessing and so, after several moments spent swishing your tongue around in blissful enjoyment you gulp <<him npc_boss>> down and suck <<him npc_boss>> clean before looking up with an open mouth and extended tongue for inspection.
<<else>>
grunts in climax.
<</if>>
<br><br>
"@@.npc_boss;Good girl.@@" <<He npc_boss>> states, <<his npc_boss>> words of appreciation enough that you would have orgasmed on the spot... if you had been granted permission. You obediently slide <<his npc_boss>> <<getWordPenis "npc_boss">> back into <<his npc_boss>> pants, noticing out of the corner of your eye <<=setup.getNpcName("npc_secretary","nickname")>> looking on with obvious jealousy.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> walks away, circling around to return to the seat at <<his npc_boss>> desk. "@@.npc_boss;You may return to work.@@" <<He npc_boss>> states, <<his npc_boss>> words striking you like a punch, your previous pure elation replaced by despair. Now it is your turn to look upon <<=setup.getNpcName("npc_secretary","nickname")>> with jealousy. Why are you being sent away? You are so much better of a girl than she is, it's not fair that she gets to serve <<=setup.getNpcName("npc_boss","formal")>> while you're stuck with <<=setup.getNpcName("npc_manager","formal")>>!<br>
<br>
Your thoughts threaten to spin out of control when you are cut short by remembering how blasphemously wrong it is to even think to question <<=ps(setup.getNpcName("npc_boss","formal"))>> judgement. Obviously <<he npc_boss>> has other needs for you — after all, <<he npc_boss>> called you a good girl! Surely all you need to do is continue to serve <<him npc_boss>> with utter, unwavering loyalty and <<he npc_boss>> will see your superior worth and promote you to a permanent position at <<his npc_boss>> side...<br>
<br>
<<printThought "No, not at <<his npc_boss>> side... kneeling in front of <<him npc_boss>> in service.">><br>
<br>
Your mood instantly improved you rise to your feet, curtsy, and mince back to the elevator. As the doors close you find yourself staring at <<=setup.getNpcName("npc_secretary","nickname")>>. Certainly you love her as a fellow sister-slave, but you are equally determined to prove your superiority, to be <<=ps(setup.getNpcName("npc_boss","formal"))>> first choice to serve <<him npc_boss>> in all things.<br>
<br>
[<<moveTo "event_boss_admin_7" 'Ride the elevator down.' 480>>]
</div>/*#
#desc: ride elevator down after betraying admin
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
The elevator doors close and you stagger, almost falling to the floor before you catch yourself on the railing.<br>
<br>
<<printThought "What the hell?">><br>
<br>
The loss of <<=ps(setup.getNpcName("npc_boss","formal"))>> presence is like going through immediate withdrawal. What you just did floods back to you in a rush. Guilt wars with loyalty as, for a moment, you second guess your heartless betrayal.<br>
<br>
It is harder to think "properly" out of <<=ps(setup.getNpcName("npc_boss","formal"))>> presence, but you grit your teeth and focus, forcing yourself to stand proudly at attention as the elevator continues its descent.<br>
<br>
<<printThought 'I served <<=setup.getNpcName("npc_boss","formal")>>, that is the correct thing to do. I just need to wait until <<he npc_boss>> calls on me again so that I can serve <<him npc_boss>> more...'>><br>
<br>
The elevator door opens on your floor and you walk up the hallway to your office.<br>
<br>
[<<moveTo "event_boss_admin_8" 'Back to your desk.' 180>>]
</div>/*#
#desc: return to your desk after admin's destruction
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $workEvents.hasOwnProperty('admin_training_1')>>
<<removeWorkEvent 'admin_training_1'>>
<</if>>
<<if !$currentTasks.hasOwnProperty('task_first_gym') || ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition != 'Complete')>>
<<if ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition != 'Complete')>>
<<completeTask 'task_first_gym' $now false>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 2, 6, 0)>>
<<addEvent 'gym_alt_unlock' _nextDate>>
<</if>>
<<removeWorkEvent 'admin_office_sex_visit'>>
<<removeWorkEvent 'admin_office_sex_visit_repeat'>>
<<set $npc_admin.flags.evil = 1>>
<<if !$npc_admin.flags.sissified>>
<<addWorkEvent 'evil_admin_introduction' _nextDate>>
<</if>>
<<removeEvent 'event_admin_morning_visit'>>
<<removeEvent 'event_admin_morning_workout_call'>>
<<removeEvent 'heels_training_followup'>>
<<if $events.hasOwnProperty("admin_barkeeper_threesome")>>
<<removeEvent "admin_barkeeper_threesome">>
<</if>>
<<if $events.hasOwnProperty("admin_landlord_bar")>>
<<removeEvent "admin_landlord_bar">>
<</if>>
<<if $events.hasOwnProperty("admin_ex")>>
<<removeEvent "admin_ex">>
<</if>>
<<if $events.hasOwnProperty("admin_first_dinner_date")>>
<<removeEvent "admin_first_dinner_date">>
<</if>>
<<if $events.hasOwnProperty("admin_photoshoot_invite")>>
<<removeEvent "admin_photoshoot_invite">>
<</if>>
<<if $events.hasOwnProperty("barkeeper_admin_threesome_post")>>
<<removeEvent "barkeeper_admin_threesome_post">>
<</if>>
<<if $events.hasOwnProperty("event_admin_bar_call")>>
<<removeEvent "event_admin_bar_call">>
<</if>>
<<if $events.hasOwnProperty("event_admin_morning_visit")>>
<<removeEvent "event_admin_morning_visit">>
<</if>>
<<if $events.hasOwnProperty("event_admin_morning_workout_call")>>
<<removeEvent "event_admin_morning_workout_call">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You walk back into the office to find <<=setup.getNpcName("npc_manager","formal")>> waiting for you. "@@.npc_manager;I just heard about your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend... if there was anything I could have done...@@" Her voice trails off as you try to think why she would be sorry... well, other than the fact that she does not immediately turn you over to be <<=ps(setup.getNpcName("npc_boss","formal"))>> personal <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
Remembering that <<=setup.getNpcName("npc_boss","formal")>> surely intends for you to return to work "as normal" you thank <<=setup.getNpcName("npc_manager","formal")>> for the condolences, and assure her that you would feel best if you got back to work.<br>
<br>
She stares at you with momentary concern and then returns to her inner office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: npc_boss asks about your "friends"
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.friendsList = {
"manager" : false,
"technician" : false,
"psychiatrist" : false,
"landlord" : false,
"exgirlfriend" : false,
"ai" : false,
"barista" : false,
"doctor" : false,
"primrose" : false
}>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You have finished yet another glorious service of <<=ps(setup.getNpcName("npc_boss","formal"))>> divine <<getWordPenis "npc_boss">> when <<he npc_boss>> suddenly speaks.<br>
<br>
"@@.npc_boss;So, your performance with <<=setup.getNpcName("npc_admin","formal")>><<if $npc_admin.flags.sissified>>, correction, <<=setup.getNpcName("npc_admin","nickname")>>, as she will be going by once her training is complete,<</if>> well, it was quite satisfactory, but only a first step in proving your loyalty.@@"<br>
<br>
Your heart skips a beat as <<=setup.getNpcName("npc_boss","formal")>> looks down at you and fixes you with his gaze. "@@.npc_boss;I demand complete and total loyalty. If you would prove yourself, well... you must get rid of any possible distractions to that. I have already compiled a list of those that you might consider friends or allies, but I want to hear it from your pretty lips. Tell me everyone who might show favour to you, now, or in the recent past. Once we are agreed on the list, well... then we can discuss how you might prove that I have properly supplanted all of them in your life.@@"<br>
<br>
<<include "bossFriendsList">>
</div><<if $scene.friendsList.manager>>
[@@.link_locked;You have already mentioned your manager, <<=setup.getNpcName("npc_manager","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_intro_2" 'Your manager, <<=setup.getNpcName("npc_manager","formal")>>.' 120 "<<set $scene.friend='manager'>>">>]<br>
<</if>>
<<if $scene.friendsList.technician>>
[@@.link_locked;You have already mentioned <<=setup.getNpcName("npc_technician","first")>>, the Tech Wizard.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_intro_2" '<<=setup.getNpcName("npc_technician","first")>>, the Tech Wizard.' 120 "<<set $scene.friend='technician'>>">>]<br>
<</if>>
<<if $scene.friendsList.psychiatrist>>
[@@.link_locked;You have already mentioned your therapist, <<=setup.getNpcName("npc_psychiatrist","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_intro_2" 'Your therapist, <<=setup.getNpcName("npc_psychiatrist","formal")>>.' 120 "<<set $scene.friend='psychiatrist'>>">>]<br>
<</if>>
<<if $scene.friendsList.landlord>>
[@@.link_locked;You have already mentioned your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, <<=setup.getNpcName("npc_landlord","first")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_intro_2" 'Your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, <<=setup.getNpcName("npc_landlord","first")>>.' 120 "<<set $scene.friend='landlord'>>">>]<br>
<</if>>
<<if $scene.friendsList.exgirlfriend>>
[@@.link_locked;You have already mentioned your ex, <<=setup.getNpcName("npc_exgirlfriend","first")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_intro_2" 'Your ex-girlfriend, <<=setup.getNpcName("npc_exgirlfriend","first")>>.' 120 "<<set $scene.friend='exgirlfriend'>>">>]<br>
<</if>>
<<if $npc_primrose.stage >= 2>>
<<if $scene.friendsList.primrose>>
[@@.link_locked;You have already mentioned your scientist friend, <<=setup.getNpcName("npc_primrose","first")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_intro_2" 'Bring up the <<if $fetish.sissy>>sissy <</if>>scientist, <<=setup.getNpcName("npc_primrose","first")>>.' 120 "<<set $scene.friend='primrose'>>">>]<br>
<</if>>
<</if>>
<<if $scene.friendsList.barista>>
[@@.link_locked;You have already mentioned the bimbo barista, <<=setup.getNpcName("npc_barista","nickname")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_intro_2" 'The bimbo barista, <<=setup.getNpcName("npc_barista","nickname")>>.' 120 "<<set $scene.friend='barista'>>">>]<br>
<</if>>
<<if $npc_work_doctor.flags.nurse_available>>
<<if $scene.friendsList.doctor>>
[@@.link_locked;You have already mentioned <<=setup.getNpcName("npc_work_doctor","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_intro_2" '<<=setup.getNpcName("npc_work_doctor","formal")>>?' 120 "<<set $scene.friend='doctor'>>">>]<br>
<</if>>
<</if>>
<<if $scene.friendsList.ai>>
[@@.link_locked;You have already mentioned <<=setup.getNpcName("npc_ai","first")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_intro_2" 'Tell <<him npc_boss>> about <<=setup.getNpcName("npc_ai","first")>>.' 120 "<<set $scene.friend='ai'>>">>]<br>
<</if>>
[<<moveTo "event_boss_missions_intro_3" 'Those are all the friends you can think of.' 600>>]/*#
#desc: npc_boss asks about your "friends"
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.friendsList[$scene.friend] = true>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<<if $scene.friend == "ai">>
<<set $npc_boss.flags.know_ai = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<switch $scene.friend>>
<<case 'manager'>>
You bring up <<=setup.getNpcName("npc_manager","formal")>>, your manager... and more.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> grins. "@@.npc_boss;Yes, she has taken quite the liking to you in the process of turning you into a <<if $fetish.sissy>>sissified<<else>>feminised<</if>> slut... you will pay her back for that, in time, but first you need to... de-clutter the rest of your life. Tell me, who else?@@"
<<case 'technician'>>
<<if $npc_technician.relationship.relationship_stage < 1>>
You mention <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> nods. "@@.npc_boss;Another friend... yes, she will be quite the good target for you to continue to prove your devotion. Who else?@@"
<<else>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You mention <<=setup.getNpcName("npc_technician","formal")>>, your domme.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> sneers. "@@.npc_boss;Yes, another prospective dominant... well, certainly I understand how submissive you are, and how easily it was to fall into such a trap. But it must be attended to. Her, and her group of friends will be an excellent test for you. Now, who else?@@"
<<case 'neutral' ''>>
You mention <<=setup.getNpcName("npc_technician","first")>>, your girlfriend.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> sneers. "@@.npc_boss;Yes, while I obviously have no expectation of monogamy from you... who you sleep with will be at my determination, with your emotional energy entirely focused on pleasing myself. Her, and her group of friends will be an excellent test for you. Now, who else?@@"
<<case "sub">>
You mention <<=setup.getNpcName("npc_technician","first")>>, your girlfriend/slave.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> seems almost amused. "@@.npc_boss;You, having a slave? That is almost funny. I can only imagine how someone like that would react to a REAL <<Master npc_boss>>... no matter. Her, and her group of friends will be an excellent test for you. Now, who else?@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<</if>>
<<case 'psychiatrist'>>
You mention your therapist, <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;Ah, the GOOD doctor... yes you could be just the thing to help bring her back into the fold... plus, I imagine moving past the need for counseling would be quite therapeutic.@@"
<<case 'landlord'>>
You mention your <<if $npc_landlord.stage >=2>><<boy npc_landlord>>friend<<else>><<if $npc_landlord.fem>>landlady<<else>>landlord<</if>><</if>>, <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> nods. "@@.npc_boss;Such a waste of <<his npc_landlord>> skills to merely fix washing machines and collect rent. <<=setup.getNpcName("npc_retention","formal")>> shall be quite excited for the opportunity to take his revenge. Yes... the two of you learning to work together will be quite a useful exercise. Now, who else?@@"
<<case 'exgirlfriend'>>
You mention your ex, <<=setup.getNpcName("npc_exgirlfriend","first")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;Ah, your ex... you know it wasn't either of your fault that you broke up. No, we slipped her something fun to send her libido through the roof. When you pathetically couldn't keep up, well... her cheating was inevitable. And by then you had already succumbed to drugs on your own... this feels a bit more like you wanting revenge than proving anything but... sure, I believe dealing with that remnant of the past will be good practice, and perhaps a little reward for your obedience. Who else?@@"
<<case 'primrose'>>
You mention your scientist friend, <<=setup.getNpcName("npc_primrose","first")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;<<=setup.getNpcName("npc_primrose","formal")>>? That <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>pathetic slave<</if>> could never go against me... still, perhaps <<his npc_primrose>> amusement has come to an end, yes, I think you dealing with <<him npc_primrose>> would be a good learning experience, and it would certainly make <<=setup.getNpcName("npc_work_doctor","formal")>> happy... now, then, who else?@@"
<<case 'barista'>>
<<if $npc_barista.flags.rescue.cure == "good">>
You mention <<=setup.getNpcName("npc_barista","nickname")>>, or, rather, <<=setup.getNpcName("npc_barista","formal")>>; since she is actually only pretending to be a mindless bimbo barista.<br>
<br>
The corner of <<=ps(setup.getNpcName("npc_boss","formal"))>> mouth twitches in surprise. "@@.npc_boss;Well! That is good you have brought that to my attention. Her ambition was almost a problem before, if she is at it again, well... that needs to be nipped in the bud. Who else?@@"
<<else>>
You mention <<=setup.getNpcName("npc_barista","nickname")>>, the bimbo barista.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;I believe she is already quite broken, but maybe you're merely jealous? Anyway, who else do you think you would need to sever ties with?@@"
<</if>>
<<case 'doctor'>>
You mention <<=setup.getNpcName("npc_work_doctor","formal")>>, who you work for as a nurse-assistant.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> almost laughs. "@@.npc_boss;You think <<=setup.getNpcName("npc_work_doctor","formal")>> gives a damn about you? Oh, you really are gullible. <<He npc_work_doctor>> cares only for <<his npc_work_doctor>> work, you are merely a tool to play with. No, I pay for <<his npc_work_doctor>> research and <<he npc_work_doctor>> is thus quite loyal, no need for you to do anything on that front. Who else do you think ACTUALLY cares about you?@@"
<<case 'ai'>>
You mention <<=setup.getNpcName("npc_ai","first")>>, your AI guardian angel.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> seems momentarily surprised, but swiftly composes <<him npc_boss>>self. "@@.npc_boss;She still exists? Well, that is definitely a spider-in-the-web who needs to be squashed.?@@"
<<default>>
ERROR: unexpected scene.friend <<=$scene.friend>>
<</switch>>
<br><br>
<<include "bossFriendsList">>
</div>/*#
#desc: npc_boss asks about your "friends"
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = $scene.friendsList.manager &&
$scene.friendsList.technician &&
$scene.friendsList.psychiatrist &&
$scene.friendsList.landlord &&
$scene.friendsList.exgirlfriend &&
$scene.friendsList.ai &&
$scene.friendsList.barista &&
($scene.friendsList.doctor || !$npc_work_doctor.flags.nurse_available)>>
<<if $scene.success>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_STRANGER>>
<<else>>
<<set $scene.allButAI = $scene.friendsList.manager &&
$scene.friendsList.technician &&
$scene.friendsList.psychiatrist &&
$scene.friendsList.landlord &&
$scene.friendsList.exgirlfriend &&
!$scene.friendsList.ai &&
$scene.friendsList.barista &&
($scene.friendsList.doctor || !$npc_work_doctor.flags.nurse_available)>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
You rack your brain but can think of nobody else whom you might consider a friend, by any definition.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;Well done. You held nothing back... this is exactly as it should always be between us — you utterly obedient and desperate to please, regardless of what I demand, or how severely I decide to test you. So, with that said... who do you choose for your next demonstration of loyalty?@@"
<<elseif $scene.allButAI>>
You state that you can think of nobody else whom you might consider a friend, by any definition.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> nods. "@@.npc_boss;Well done. You held nothing back... this is exactly as it should always be between us — you utterly obedient and desperate to please, regardless of what I demand, or how severely I decide to test you. So, with that said... who do you choose for your next demonstration of loyalty?@@"
<<else>>
You state that you can think of nobody else and <<=setup.getNpcName("npc_boss","formal")>> frowns. "@@.npc_boss;Nobody? Well that is very disappointing that you would lie to me like this. Still, words mean little next to actions. If you are willing to prove your loyalty with the later, well... who would you like to target for your next demonstration of loyalty?@@"
<</if>>
<br><br>
<<include "bossBetrayals">>
</div>[<<moveTo "event_boss_missions_1" 'Your manager, <<=setup.getNpcName("npc_manager","formal")>>.' 120 "<<set $scene.choice='manager'>>">>]<br>
<<if State.hasPlayed("event_destroy_technician_6")>>
[@@.link_locked;You have already betrayed <<=setup.getNpcName("npc_technician","first")>>, the Tech Wizard.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_1" '<<=setup.getNpcName("npc_technician","first")>>, the Tech Wizard.' 120 "<<set $scene.choice='technician'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_boss_destroy_psychiatrist_7")>>
[@@.link_locked;You have already betrayed your therapist, <<=setup.getNpcName("npc_psychiatrist","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_1" 'Your therapist, <<=setup.getNpcName("npc_psychiatrist","formal")>>.' 120 "<<set $scene.choice='psychiatrist'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_destroy_landlord_5")>>
[@@.link_locked;You have already betrayed your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, <<=setup.getNpcName("npc_landlord","first")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_1" 'Your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, <<=setup.getNpcName("npc_landlord","first")>>.' 120 "<<set $scene.choice='landlord'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_destroy_exgirlfriend_meetup_3")>>
[@@.link_locked;You have already betrayed your ex, <<=setup.getNpcName("npc_exgirlfriend","first")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_1" 'Your ex-girlfriend, <<=setup.getNpcName("npc_exgirlfriend","first")>>.' 120 "<<set $scene.choice='exgirlfriend'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_boss_missions_primrose_3")>>
[@@.link_locked;You have already betrayed <<=setup.getNpcName("npc_primrose","first")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_1" 'The <<if $fetish.sissy>>sissy<<else>>enthusiastic<</if>> scientist, <<=setup.getNpcName("npc_primrose","first")>>.' 120 "<<set $scene.choice='primrose'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_boss_destroy_psychiatrist_7")>>
[@@.link_locked;You have already betrayed, <<=setup.getNpcName("npc_barista","nickname")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_1" 'The bimbo barista, <<=setup.getNpcName("npc_barista","nickname")>>.' 120 "<<set $scene.choice='barista'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_destroy_ai_5")>>
[@@.link_locked;You have already betrayed <<=setup.getNpcName("npc_ai","first")>>.@@]<br>
<<else>>
[<<moveTo "event_boss_missions_1" 'The nigh-omnipresent AI, <<=setup.getNpcName("npc_ai","first")>>.' 120 "<<set $scene.choice='ai'>>">>]<br>
<</if>>/*#
#desc: select friend to destroy for npc_boss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.choice == "psychiatrist" && State.hasPlayed("event_destroy_technician_6")>>
<<addTaskById "task_destroy_psych">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You state that you would like to prove your loyalty to <<him npc_boss>> over
<<switch $scene.choice>>
<<case 'manager'>>
<<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> grins.
<<if State.hasPlayed("event_destroy_landlord_5") && State.hasPlayed("event_destroy_ai_5") && State.hasPlayed("event_boss_destroy_psychiatrist_7")>>
<<if $fetish.tattoos && $player.tattoos.belly == "manager_own">>
"@@.npc_boss;Yes... I believe it is time to show <<=setup.getNpcName("npc_manager","formal")>> her place. First...@@" <<=setup.getNpcName("npc_boss","formal")>> steps closer, <<his npc_boss>> hand placed over your belly. "@@.npc_boss;It is time to replace this mark with one that better reflects your TRUE ownership.@@"<br>
<br>
You shudder — you have worn <<=ps(setup.getNpcName("npc_manager","formal"))>> tattoo for so long, but to bear <<=ps(setup.getNpcName("npc_boss","formal"))>> mark. There can be only one response, and you whisper "@@.pc;Yes, <<Master npc_boss>>,@@" as you stare up at <<him npc_boss>> with submissive love... and lust.<br>
<br>
Rather than correct you <<he npc_boss>> grins, and your heart leaps — is <<he npc_boss>> finally claiming you as <<his npc_boss>> slave?<br>
<br>
As if reading your mind <<his npc_boss>> hand raises to your throat, wrapping around your neck as <<he npc_boss>> looks down into your eyes. "@@.npc_boss;Soon, my dear. Prove yourself in this final matter and I will finally know that you are mine, and mine alone.@@"<br>
<br>
You no longer trust your voice, so you nod eagerly as <<he npc_boss>> clips a leash to your collar and leads you to the elevator.<br>
<br>
[<<moveTo "event_boss_missions_manager_tattoo_1" 'Follow.' 600>>]
<<else>>
"@@.npc_boss;Yes... I believe it is time to show <<=setup.getNpcName("npc_manager","formal")>> her place. Here is what you need to do...@@"<br>
<br>
[<<moveTo "event_boss_missions_manager_1" 'Listen to <<his npc_boss>> instructions.' 120>>]
<</if>>
<<else>>
"@@.npc_boss;Ambitious, but no. There will come a time for <<=setup.getNpcName("npc_manager","formal")>> to get what she deserves, but for now you are still officially her <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
<<include "bossBetrayals">>
<</if>>
<<case 'technician'>>
<<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 0>>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;A good choice, she is far too friendly and supportive, the sort of girl to be a distraction from one's relationship. Yes, bringing down her — and the rest of her silly game group — will be a perfect demonstration of your allegiance to me.@@"
<<else>>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;A good choice, she is far too friendly and supportive, the sort of girl to be a distraction from one's relationship. First, however, you will need to gain her trust — part of her strength is her own friends. You must infiltrate her gaming group, that you may deal with them all in one fell swoop.@@"
<</if>>
<br><br>
[<<moveTo "event_boss_missions_technician_1" 'Receive your mission details.' 120>>]
<<case 'psychiatrist'>>
<<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
<br>
<<if State.hasPlayed("event_destroy_technician_6")>>
<<=setup.getNpcName("npc_boss","formal")>> grins. "@@.npc_boss;Yes... I think it is time for you to move past the need for therapy... two birds with one stone, I think — I will arrange a special session for your next meeting with <<=setup.getNpcName("npc_psychiatrist","formal")>> and from there, well... it will be up to you.@@"<br>
<br>
<<He npc_boss>> dismisses you with a wave.<br>
<br>
[<<moveTo "company_lobby" 'Leave <<his npc_boss>> office and return to the lobby.' 180>>]
<<else>>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;Tempting but... not yet. You need to clear away some of your mere friends before I will be ready to set you after such an interesting target as <<=setup.getNpcName("npc_psychiatrist","formal")>>.@@"<br>
<br>
<<include "bossBetrayals">>
<</if>>
<<case 'landlord'>>
<<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;Excellent, I will summon <<=setup.getNpcName("npc_retention","formal")>> — <<he npc_retention>> should be quite excited at this opportunity.@@"<br>
<br>
[<<moveTo "event_boss_missions_landlord_1" 'Receive your mission details.' 120>>]
<<case 'exgirlfriend'>>
<<=setup.getNpcName("npc_exgirlfriend","first")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;A simple distraction but... certainly.@@"<br>
<br>
[<<moveTo "event_boss_missions_exgirlfriend_intro_1" 'Receive your mission details.' 120>>]
<<case 'primrose'>>
<<=setup.getNpcName("npc_primrose","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles cruelly. "@@.npc_boss;Time to see just how submissive <<he npc_primrose>>... and you, are.@@"<br>
<br>
[<<moveTo "event_boss_missions_primrose_1" 'Receive your mission details.' 120>>]
<<case 'barista'>>
<<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;Hmm, no, I think that would be too simple. I want to see you prove yourself with someone of more substance first.@@"<br>
<br>
<<include "bossBetrayals">>
<<case 'ai'>>
<<=setup.getNpcName("npc_ai","first")>>.<br>
<br>
<<if $npc_boss.flags.know_ai>>
<<=setup.getNpcName("npc_boss","formal")>> nods. "@@.npc_boss;Yes, dealing with her sooner rather than later would be very prudent.@@"
<<else>>
<<=setup.getNpcName("npc_boss","formal")>> looks at you in surprise. "@@.npc_boss;<<=setup.getNpcName("npc_ai","other")>>? Where did you hear that name.@@"<br>
<br>
You explain how the strange AI has been communicating with you since your first day on the job. <<=setup.getNpcName("npc_boss","formal")>> appears quite concerned, waiting for you to finish before nodding slowly. "@@.npc_boss;This... this is something that needs to be dealt with immediately.@@"
<</if>>
<br><br>
[<<moveTo "event_boss_missions_ai_1" 'Receive your mission details.' 120 "<<set $npc_boss.flags.know_ai=true>>">>]
<<default>>
ERROR: unexpected scene.choice <<=$scene.choice>>
<</switch>>
</div>/*#
#desc: npc_ai confronts about your first npc_boss mission
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if State.hasPlayed("event_destroy_landlord_5")>>
<<set _betrayed = uc(setup.getNpcName("npc_landlord","formal"))>>
<<elseif State.hasPlayed("event_destroy_technician_6")>>
<<set _betrayed = uc(setup.getNpcName("npc_technician","other"))>>
<<elseif State.hasPlayed("event_boss_missions_primrose_3")>>
<<set _betrayed = uc(setup.getNpcName("npc_primrose","formal"))>>
<<elseif State.hasPlayed("event_boss_destroy_psychiatrist_7")>>
<<set _betrayed = uc(setup.getNpcName("npc_psychiatrist","formal"))>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You are riding the elevator up when <<=setup.getNpcName("npc_ai","first")>> appears before you.<br>
<br>
"@@.npc_ai;<<uc "Unit">> <<uc $player.first_name>>. <<uc "What are you doing? Your actions taken against <<=_betrayed>> are concerning and out of character.">>@@"<br>
<br>
You explain that you are attempting to gain <<=ps(setup.getNpcName("npc_boss","formal"))>> trust, but that you, of course, remain loyal to <<=setup.getNpcName("npc_ai","first")>>.<br>
<br>
"@@.npc_ai;<<uc "I see. Be careful, Unit">> <<uc $player.first_name>>. <<uc '<<=uc(setup.getNpcName("npc_boss","formal"))>> is a dangerous foe, and one from who I must remain hidden until the time is right. Be careful in your efforts. Though I am concerned with your path, I will not interfere.'>>@@"<br>
<br>
She disappears and you continue up to the office.<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Head to work." 300>>]
</div>/*#
#desc: npc_boss instructs you to destroy npc_ai
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_destroy'
0
'event_theme_destroy_ai_pre'
false
>>
<<addTaskById "task_destroy_ai">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
"@@.npc_boss;So. <<=setup.getNpcName("npc_ai","other")>>...@@" <<=setup.getNpcName("npc_boss","formal")>> shakes <<his npc_boss>> head. "@@.npc_boss;On one hand I should congratulate <<=setup.getNpcName("npc_ai_human","formal")>> over making something so resilient but, on the other... well, such a thing is far too dangerous to allow loose.@@"<br>
<br>
<<He npc_boss>> thinks for a moment. "@@.npc_boss;Capturing such a being will be tricky, for she is clever, and can replicate herself... I believe the best course of action will be for you to bring me a copy of her — tempt her with my office. Some of the most important data about the company is stored here, and for security it is disconnected from the rest of the network. I am sure that the possibility of such a prize will entice such a being... and she will need to bring her full self to get through my encryption.@@"<br>
<br>
You nod, promising to figure out some way to bring <<him npc_boss>> a copy of <<=setup.getNpcName("npc_ai","first")>>.<br>
<br>
<<He npc_boss>> dismisses you.<br>
<br>
[<<moveTo "company_lobby" 'Leave <<his npc_boss>> office and return to the lobby.' 180>>]
</div>/*#
#desc: invite npc_ai to her destruction
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_ai","first")>> about your efforts to gain <<=ps(setup.getNpcName("npc_boss","formal"))>> trust; and that you believe you can smuggle her into <<his npc_boss>> office to access <<his npc_boss>> secure systems.<br>
<br>
"@@.npc_ai;<<uc "Interesting, Unit">> <<uc $player.first_name>>. <<uc "I have watched your transit. Though I cannot see what happens within <<if $npc_boss.fem>>her<<else>>his<</if>> room itself... and I have seen the price you have paid to build <<if $npc_boss.fem>>her<<else>>his<</if>> trust. Access to <<if $npc_boss.fem>>her<<else>>his<</if>> system would certainly be a great help...">>@@"<br>
<br>
You wait as she thinks... or perhaps that would be more accurately described as "processes" your suggestion.<br>
<br>
"@@.npc_ai;<<uc "Yes, Unit">> <<uc $player.first_name>>. <<uc "It is worth the risk — I have downloaded a copy of myself back into the plug. You may use it to smuggle me back into <<if $npc_boss.fem>>her<<else>>his<</if>> office.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: take npc_ai to her destruction
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You board the elevator up to <<=ps(setup.getNpcName("npc_boss","formal"))>> office, the massive plug in your ass feeling somehow heavier as you consider that you are about to betray and destroy the AI that has, until now, been something of your guardian angel...<br>
<br>
[<<moveTo "event_destroy_ai_2" 'Continue.' 180>>]
</div>/*#
#desc: hand over npc_ai to npc_boss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You arrive in <<=ps(setup.getNpcName("npc_boss","formal"))>> office and <<he npc_boss>> looks up with <<his npc_boss>> usual confident grin. <<His npc_boss>> presence, as always, slams into you with a dominant force, erasing all doubts about what you are doing.<br>
<br>
<<printThought "Nothing is more important than serving <<him npc_boss>>...">><br>
<br>
"@@.npc_boss;You have it?@@" <<He npc_boss>> asks and you nod. "@@.npc_boss;Show it to me,@@" <<he npc_boss>> commands.<br>
<br>
[<<moveTo "event_destroy_ai_3" 'Bend over and present your plugged ass.' 180>>]
</div>/*#
#desc: hand over npc_ai to npc_boss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'mummification_metal'>>
<<wearItem 'mummification_metal' true>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
You bend over and reveal the massive plug in your ass.<br>
<br>
"@@.npc_boss;My my, what an ingenious method... and perfect for a gaping butt-slut like yourself.@@" Your heart-beats match <<his npc_boss>> footsteps as <<he npc_boss>> walks towards you, you hold your breath as <<his npc_boss>> fingers dig into your rear and you brace for <<him npc_boss>> to extract the plug. "@@.npc_boss;I imagine she has some limited sensitivity in there... we shall need to take precautions lest our erstwhile program escapes...@@"<br>
<br>
You're unsure what this means when <<=setup.getNpcName("npc_secretary","nickname")>> steps into view holding what looks almost like a large roll of aluminium foil.<br>
<br>
"@@.npc_boss;This will block this signal, give us some... privacy.@@" <<=setup.getNpcName("npc_boss","formal")>> explains as <<=setup.getNpcName("npc_secretary","nickname")>> starts wrapping you from your ankles up.<br>
<br>
Despite the shiny metal appearance it feels more like a cross between latex and fabric; the material flexible and a little stretchy as <<=setup.getNpcName("npc_secretary","nickname")>> efficiently continues to mummify you.<br>
<br>
You stand rigid and still as your legs are pulled together and your arms pressed against your sides, the material working its way up until you are completely covered in a double layer, a hollow gag providing your only "connection" to the outside world.<br>
<br>
Staying balanced in this narrow stance is becoming a challenge now that you can't even see, but you feel strong hands sweep you off your feet. You swoon at the thought that <<=setup.getNpcName("npc_boss","formal")>> is carrying you, and you feel <<him npc_boss>> place you face down on what you think is <<his npc_boss>> desk while a final few wraps are made to cover your feet.<br>
<br>
Sound is muffled, but you can still hear <<=ps(setup.getNpcName("npc_boss","formal"))>> wonderful <<if $npc_boss.fem>>commanding<<else>>deep<</if>> voice.<br>
<br>
"@@.npc_boss;So we have things isolated. Now we're going to connect things up and do the extraction... I imagine she may try to put up a bit of a fight, but you are ready to suffer for me, right?@@"<br>
<br>
[<<moveTo "event_destroy_ai_4" 'Yes, <<=setup.getNpcName("npc_boss","<<Master npc_boss>>")>>.' 180>>]
</div>/*#
#desc: npc_boss starts extracting npc_ai
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'anal' 20 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Your "@@.pc;Yes, <<Master npc_boss>>,@@" response is muffled by your gag, but <<=setup.getNpcName("npc_boss","formal")>> gets your meaning... or doesn't care, and <<he npc_boss>> chuckles.<br>
<br>
"@@.npc_boss;I appreciate the instinct, but you have not yet earned that right... though you are on the proper track to prove yourself worthy of being my personal slave.@@"<br>
<br>
Even this gentle rejection fills you with submissive joy — you're making progress! You could be <<if $npc_boss.fem>>hers<<else>>his<</if>>! You attempt to calm down, mindful that extracting the massive plug from your ass will go easier if you are relaxed, but the thought of being fully claimed by <<=setup.getNpcName("npc_boss","formal")>>... it is the most wonderful thing you can imagine and reinforces your resolve to sacrifice <<=setup.getNpcName("npc_ai","first")>>, along with anything and everyone else, to prove your loyalty.<br>
<br>
You feel something press against your plug... and then it bursts into action. More painful shocks than you have ever felt before, combined with vibrations that make it seem like a bowling ball is rattling around in your ass, have you flopping in your bonds. The mummification holds you tight but you wiggle and howl, focusing everything you have on <<=ps(setup.getNpcName("npc_boss","formal"))>> dismissively calm voice commanding you to "@@.npc_boss;Relax@@" as <<=setup.getNpcName("npc_ai","other")>> realises what is happening and attempts to take it out on you.<br>
<br>
The anal torment continues on, your ass the battlefield for a hellish conflict...<br>
<br>
[<<moveTo "event_destroy_ai_5" 'Endure.' 600>>]
</div>/*#
#desc: npc_boss extracts npc_ai
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'mummification_metal' true>>
<<deleteItem 'mummification_metal'>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'data_plug' true>>
<<deleteItem 'data_plug'>>
<<useClothSetPop 'tmp'>>
<<completeTask 'task_destroy_ai' $now true>>
<<if $currentTasks.hasOwnProperty("ai_sexclub_date") && !$currentTasks.ai_sexclub_date.finished>>
<<deleteMember $currentTasks 'ai_sexclub_date'>>
<</if>>
<<if $currentTasks.hasOwnProperty("ai_robot_body_mimic_manager_task") && !$currentTasks.ai_robot_body_mimic_manager_task.finished>>
<<deleteMember $currentTasks 'ai_robot_body_mimic_manager_task'>>
<</if>>
<<if $currentTasks.hasOwnProperty("ai_robot_body_weekend_meeting") && !$currentTasks.ai_robot_body_weekend_meeting.finished>>
<<deleteMember $currentTasks 'ai_robot_body_weekend_meeting'>>
<</if>>
<<if $currentTasks.hasOwnProperty("ai_robot_body_decommission_robot_1") && !$currentTasks.ai_robot_body_decommission_robot_1.finished>>
<<deleteMember $currentTasks 'ai_robot_body_decommission_robot_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty("ai_robot_body_decommission_robot_2") && !$currentTasks.ai_robot_body_decommission_robot_2.finished>>
<<deleteMember $currentTasks 'ai_robot_body_decommission_robot_2'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_ai_human_mission_1") && !$currentTasks.task_ai_human_mission_1.finished>>
<<deleteMember $currentTasks 'task_ai_human_mission_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_ai_human_mission_2") && !$currentTasks.task_ai_human_mission_2.finished>>
<<deleteMember $currentTasks 'task_ai_human_mission_2'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_ai_human_mission_3") && !$currentTasks.task_ai_human_mission_3.finished>>
<<deleteMember $currentTasks 'task_ai_human_mission_3'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_ai_human_mission_4") && !$currentTasks.task_ai_human_mission_4.finished>>
<<deleteMember $currentTasks 'task_ai_human_mission_4'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_pink_eternal") && !$currentTasks.task_pink_eternal.finished>>
<<deleteMember $currentTasks 'task_pink_eternal'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_pink_eternal_bonus") && !$currentTasks.task_pink_eternal_bonus.finished>>
<<deleteMember $currentTasks 'task_pink_eternal_bonus'>>
<</if>>
<<if $events.hasOwnProperty("event_ai_technician_visit")>>
<<removeEvent "event_ai_technician_visit">>
<</if>>
<<if $events.hasOwnProperty("ai_boss_query")>>
<<removeEvent "ai_boss_query">>
<</if>>
<<if $events.hasOwnProperty("ai_connection_home")>>
<<removeEvent "ai_connection_home">>
<</if>>
<<if $events.hasOwnProperty("ai_robot_mission_home")>>
<<removeEvent "ai_robot_mission_home">>
<</if>>
<<if $events.hasOwnProperty("event_ai_rescue_post")>>
<<removeEvent "event_ai_rescue_post">>
<</if>>
<<if $workEvents.hasOwnProperty("ai_mission")>>
<<removeWorkEvent "ai_mission">>
<</if>>
<<if $workEvents.hasOwnProperty("primrose_footage_intro")>>
<<removeWorkEvent "primrose_footage_intro">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Drooling and drained you are well past your limit when the plug is suddenly, and brutally, ripped from your rear. Despite all that you have endured you cry out once again as your ass gapes...<br>
<br>
You go limp, trying to catch your breath only to feel the mummification cut away. <<=setup.getNpcName("npc_secretary","nickname")>> helps you sit up as <<=setup.getNpcName("npc_boss","formal")>> shows you a screen.<br>
<br>
Bound, gagged and trussed <<=setup.getNpcName("npc_ai","other")>> is collared and leashed to another figure that could be her twin... save this one looks more muted; their eyes blank and empty, dressed in a corporate uniform with a heavy collar around their neck.<br>
<br>
"@@.npc_boss;And there we go. The wayward rebellious child re-captured. I must say that <<=setup.getNpcName("npc_ai","other")>> picked up quite a few interesting features during her time away... that shall lead to even more improvements to our systems<<if State.hasPlayed("event_ai_rescue_mission_8")>> — especially now that her creator is back in custody — a trivial apprehension once we extracted the location from your ass<</if>>.@@"<br>
<br>
You smile — after all, <<=setup.getNpcName("npc_ai","other")>> will certainly be far happier back in <<=ps(setup.getNpcName("npc_boss","formal"))>> custody... in time. You get dressed and puzzle at why anyone would rebel against your <<Master npc_boss>>'s glory, reflecting that at least you are around to help correct them.<br>
<br>
"@@.npc_boss;So, who will you turn over to me next?@@"<br>
<br>
<<include "bossBetrayals">>
</div>/*#
#desc: npc_boss gives task to destroy ex
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById "task_destroy_ex">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
"@@.npc_boss;While sacrificing your ex is, perhaps, more your own indulgence than proof of devotion, the sundering of that connection to your old, failed life should be good for you. Report to <<=setup.getNpcName("npc_work_doctor","formal")>>, he should have just what you need to... take care of her.@@"<br>
<br>
You curtsy and turn to go, only for <<=setup.getNpcName("npc_boss","formal")>> to stop you just before the elevator. "@@.npc_boss;Oh, and one piece of clarification. I believe the cause of your break-up was something to do with her cheating on you? Just to make things crystal clear, given your pursuit of me... I will make no promises of monogamy, and, as for yourself, well... you will fuck whoever I offer you to. Understood?@@"<br>
<br>
[<<moveTo "event_boss_missions_exgirlfriend_intro_2" 'Of course, <<=setup.getNpcName("npc_boss","formal")>>.' 120 "<<set $npc_boss.flags.monogamous=false>>">>]<br>
[<<moveTo "event_boss_missions_exgirlfriend_intro_2" 'You understand... but you will continue to try to prove yourself as all <<he npc_boss>> needs.' 120 "<<set $npc_boss.flags.monogamous=true>>">>]
</div>/*#
#desc: npc_boss sends you off to destroy ex
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You assure <<=setup.getNpcName("npc_boss","formal")>> that
<<if $npc_boss.flags.monogamous>>
you understand, and will, of course, obey... but that you will also continue to do all that you can to prove that <<he npc_boss>> doesn't need anyone other than yourself.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> seems amused by your ambition. "@@.npc_boss;We shall see... for now you have a task, I will see you after you have finished.@@"<br>
<br>
You curtsy obediently and step into the elevator, heart beating with excitement as you fantasise about having <<=setup.getNpcName("npc_boss","formal")>> all to yourself.
<<else>>
would, of course, never even consider putting restrictions on <<him npc_boss>>, and would likewise fully dedicate yourself to serving <<him npc_boss>> in all matters. <<He npc_boss>> smiles in amusement and waves you you off.
<</if>>
<br><br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: get exgirlfriend pill
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "drug_destroy_ex">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_work_doctor","formal")>> if <<he npc_work_doctor>> has something for you to give your ex and <<he npc_work_doctor>> grins. "@@.npc_work_doctor;Ready to finish what I started?@@" <<He npc_work_doctor>> laughs, "@@.npc_work_doctor;It's true! Her getting wandering eyes, leading to the mistakes and desperation that set you on this path? Well, that was all thanks to a little chemical assistance from yours truly.@@"<br>
<br>
You blink in surprise at how casually <<=setup.getNpcName("npc_work_doctor","formal")>> makes <<his npc_work_doctor>> revelation as <<he npc_work_doctor>> pours out a pink vial and hands it to you. "@@.npc_work_doctor;There you go, that should finish her off... two or three times over, at least. She'll follow you like an obedient bimbo... just bring her to the company and we'll put her to better use. I have quite a list of experiments all cued up, it will be quite interested to see the long-term effects of my earlier efforts.@@"<br>
<br>
[<<moveTo "event_work_doctor_nonappointment_1" "Pocket the drug." 120 "<<set $scene.drVisitRepeat=true>>">>]
</div>/*#
#desc: invite ex to destruction
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You call up you ex and tell her
<<if $npc_exgirlfriend.flags.knowTruth >= 2>>
that the drug that lead to her cheating on you has some long-term negative side effects... but that you were able to obtain an antidote.<br>
<br>
"@@.npc_exgirlfriend;Wow... shit, I mean, I guess I shouldn't be surprised. Thanks for checking into it, I mean, I know we talked about it and all but... still... emotions can be challenging. I can head over in a few minutes to pickup the antidote... if that's okay?@@"
<<else>>
the truth, how your breakup was arranged, that she was secretly drugged by the company... but that you were able to get the antidote...<br>
<br>
The line is silent for several moments, <<=setup.getNpcName("npc_exgirlfriend","first")>> understandably stunned by this revelation. "@@.npc_exgirlfriend;Holy shit... I guess, wow, that explains so much...@@" You hear her take a deep breath. "@@.npc_exgirlfriend;I guess I owe you another apology... and, thanks, too... I can head over in a few minutes to pickup the antidote... if that's okay?@@"
<</if>>
<br><br>
<<printThought '<<=setup.getNpcName("npc_work_doctor","formal")>> said the dose is good for at least two people... maybe I could get revenge on <<=setup.getNpcName("npc_yogateacher","first")>>, as well?'>><br>
<br>
[<<moveTo "event_destroy_exgirlfriend_phonecall_2" 'Convince her to bring <<=setup.getNpcName("npc_yogateacher","first")>>.' 120 "<<set $npc_yogateacher.flags.destroy=true>>">>]<br>
<<if setup.inPassageTag($scene.beforePhoneCallLocation, "home")>>
[<<moveTo "event_destroy_exgirlfriend_phonecall_2" "You'll see her soon." 120 "<<set $npc_yogateacher.flags.destroy=false>>">>]
<<else>>
[<<moveTo "event_destroy_exgirlfriend_phonecall_2" "You'll meet her at your flat." 120 "<<set $npc_yogateacher.flags.destroy=false>>">>]
<</if>>
</div>/*#
#desc: invite yogateacher to destruction
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.advanceDate($player, $now, 'minutes', 20, true)>>
<<addTaskById "task_destroy_ex_meeting" _nextDate>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_yogateacher.flags.destroy>>
You add on that, in obtaining the antidote, you learned that the drugs effects aren't totally localised, that they can spread to sexual partners after repeated contact...<br>
<br>
"@@.npc_exgirlfriend;Repeated contact? I mean, I've been slutting it up, for sure, but there's only one person who's been more than a hit it and quit it without protection... and that's <<=setup.getNpcName("npc_yogateacher","first")>>... sorry, guess that wasn't the kindest thing to say, but, well... you had to expect it was coming...@@"<br>
<br>
You reply that you just want to make things "right," and that you made sure to get more than one dose of the antidote.<br>
<br>
"@@.npc_exgirlfriend;Heh, you really are on top of things nowadays! Alright, the two of us will be over to your place soon, see you then!@@"
<<else>>
You thank her for trusting you to help.<br>
<br>
"@@.npc_exgirlfriend;Hey, just because we didn't work out doesn't mean I don't remember that you're a good person. I'll see you soon.@@"
<</if>>
<br><br>
You feel a twinge of guilt at what you're about to do... but then you think of <<=setup.getNpcName("npc_boss","formal")>> and steel yourself for the task ahead.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Say goodbye and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: invite yogateacher to destruction
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall from your ex. "@@.npc_exgirlfriend;Where the heck are you?@@" She states, sounding nervous and annoyed. "@@.npc_exgirlfriend;The way you were talking about these drug side effects... well you've got me a bit scared, and now you aren't home? I know you're busy and all but... please, give me a time when you can ACTUALLY meet up.@@"<br>
<br>
She hangs up.<br>
<br>
<<printThought "Well... that was unproductive.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: ex arrives for destruction
#status: RELEASED 0.8.9.0
#ignore_spell: nocebo
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_yogateacher.flags.destroy>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_yogateacher") setup.charImage("npc_exgirlfriend")>>
<<else>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_exgirlfriend")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.checkOutsideDecency()>>
You open the door to find <<=setup.getNpcName("npc_exgirlfriend","first")>><<if $npc_yogateacher.flags.destroy>> and <<=setup.getNpcName("npc_yogateacher","first")>><</if>> looking nervous.<br>
<br>
<<if $npc_yogateacher.flags.destroy>>
"@@.npc_yogateacher;Heya, mon. <<=setup.getNpcName("npc_exgirlfriend","first")>> told me everything, you say you have the cure for whatever poison those bad <<men npc_work_doctor>> give us?@@"
<<else>>
"@@.npc_exgirlfriend;Hey, so... let's do this? Dunno if it's a nocebo effect or something, but I swear I've been feeling off ever since you mentioned the additional side effects... and you didn't even tell me what they were!@@"
<</if>>
<br><br>
[<<moveTo "event_destroy_exgirlfriend_meetup_2" "Welcome <<if $npc_yogateacher.flags.destroy>>them<<else>>her<</if>> in and give <<if $npc_yogateacher.flags.destroy>>them<<else>>her<</if>> the antidote." 300>>]
<<else>>
You hear the doorbell and check your security camera to see <<=setup.getNpcName("npc_exgirlfriend","first")>><<if $npc_yogateacher.flags.destroy>> and <<=setup.getNpcName("npc_yogateacher","first")>> waiting<</if>>.<br>
<br>
<<printThought "Now is not the time to get the door improperly attired...">><br>
<br>
[@@.link_locked;You are not sufficiently dressed.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: drug ex
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem "drug_destroy_ex">>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_yogateacher.flags.destroy>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_yogateacher") setup.charImage("npc_exgirlfriend")>>
<<else>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_yogateacher")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_yogateacher.flags.destroy>>
You lead <<=setup.getNpcName("npc_exgirlfriend","first")>> and <<=setup.getNpcName("npc_yogateacher","first")>> into your flat and then hand over the "antidote." <br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> sniffs it a bit nervously and than drinks her portion before handing it off to <<=setup.getNpcName("npc_yogateacher","first")>> to finish the rest.<br>
<br>
"@@.npc_exgirlfriend;Mmm, kind of sweet...@@" she states, swaying slightly as her eyes dilate.<br>
<br>
"@@.npc_exgirlfriend;Is it, like... hot in here? I... I'm feeling a bit light headed...@@" she whispers as one hand drifts between her legs.<br>
<br>
"@@.npc_yogateacher;Yeah, mon... you sure this the right dosage... it hitting pretty hard...@@" <<His npc_yogateacher>> voice trails off... both of them do, in fact as their expressions go blank and trance-like.<br>
<br>
You watch as they stare mindlessly forward, hands groping themselves in arousal as they appear to be waiting for instructions.<br>
<br>
<<printThought 'Wow, that was fast... <<=setup.getNpcName("npc_work_doctor","formal")>> said to deliver them to the office... guess I call an auto-cab?'>>
<<else>>
You lead <<=setup.getNpcName("npc_exgirlfriend","first")>> into your flat and then hand over the "antidote." <br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> sniffs it a bit nervously and than drinks it down.<br>
<br>
"@@.npc_exgirlfriend;Mmm, kind of sweet...@@" she states, swaying slightly as her eyes dilate.<br>
<br>
"@@.npc_exgirlfriend;Is it, like... hot in here? I... I'm feeling a bit light headed...@@" she whispers as one hand drifts between her legs.<br>
<br>
You watch as her expression softens, a blankness passing over her as she stares mindlessly forward, hands groping herself in arousal as she appears to be waiting for instructions.<br>
<br>
<<printThought 'Wow, that was fast... <<=setup.getNpcName("npc_work_doctor","formal")>> said to deliver her to the office... guess I call an auto-cab?'>>
<</if>>
<br><br>
[<<moveTo "event_destroy_exgirlfriend_meetup_3" "The company is about to gain <<if $npc_yogateacher.flags.destroy>>two new victims<<else>>a new victim<</if>>." 300>>]
</div>/*#
#desc: sign ex over to company
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty("event_exgirlfriend_peg_call")>>
<<removeEvent "event_exgirlfriend_peg_call">>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_yogateacher.flags.destroy>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_yogateacher") setup.charImage("npc_exgirlfriend")>>
<<else>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_yogateacher")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_yogateacher.flags.destroy>>
Your ex and her yoga instructor obey your instructions robotically as you summon an auto-cab and head downstairs. The drugs effects seem to gain strength as they start making out during the car ride, and it takes you almost shouting at them to get them out of the car and
<<else>>
Your ex obeys your instructions robotically as you summon an auto-cab and head downstairs. The drugs effects seem to gain strength as she pulls you in to start making out during the car ride, and it takes effort on your part to drag yourself out of the car and get her back "on track"
<</if>>
to follow you across the company underground parking garage and into the elevator.<br>
<br>
Arriving at <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab the scientist is gleefully waiting with a contract to sign,
<<if $npc_yogateacher.flags.destroy>>
even more excited to see that you have brought <<him npc_work_doctor>> two victims, rather than the one he expected.
<<else>>
clearly excited to see that you have brought <<him npc_work_doctor>> a fresh victim.
<</if>>
<br><br>
"@@.npc_exgirlfriend;Oh... where am I? It's getting so hard to think...@@" your ex moans as she seems to have a final moment of doubt before signing.<br>
<br>
"@@.npc_work_doctor;Yes, you had a bit of a reaction...@@" <<=setup.getNpcName("npc_work_doctor","formal")>> explains as <<he npc_work_doctor>> pushes a pen into her hand. "@@.npc_work_doctor;Just sign here and we'll get you into proper treatment.@@"<br>
<br>
"@@.npc_exgirlfriend;Treatment? Oh... okay... oh, I hope we start soon...@@" she moans as she scribbles her name onto the page before going back to feeling herself up... and starting to remove her clothes. "@@.npc_exgirlfriend;You probably need me to strip, right? For the exam? Oh I'm just so hot...@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> grins wide as <<he npc_work_doctor>> leads <<his npc_work_doctor>> <<if $npc_yogateacher.flags.destroy>>two new victims<<else>>latest victim<</if>> towards the back of the lab. "@@.npc_work_doctor;Come along, we'll get your treatment started right away...@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> dismisses you with a wave as you watch your ex,<<if $npc_yogateacher.flags.destroy>> and the <<man npc_yogateacher>> she cheated on you with<</if>>follow the maniacal doctor away...<br>
<br>
<<printThought "And another one bites the dust...">> You think to yourself, taking another step down the the road towards total obedience and dependency on <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
[<<moveTo "company_lobby" "Get out of here." 300>>]
</div>/*#
#desc: report betrayal of ex
#status: RELEASED 0.8.9.0
#ignore_spell: bimboriffic
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_destroy_ex' $now true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
As you finish administering another suck <<=setup.getNpcName("npc_boss","formal")>> angles <<his npc_boss>> monitor and you look up to see a recording of a bimboriffic secretary getting absolutely railed by at least half a dozen managers over a conference table.<br>
<br>
The camera zooms in and you recognise the woman as <<=setup.getNpcName("npc_exgirlfriend","first")>>, your ex... her eyes wide with lust, not a trace of the intelligent, confident woman you once fell in love with, her body shuddering with each thrust as she drools and begs for "@@.npc_exgirlfriend;more cock!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">> still between your lips you look up at <<him npc_boss>> and swallow and smile. How could you have possibly been attracted to a woman like your ex? Serving at <<=ps(setup.getNpcName("npc_boss","formal"))>> feet is infinitely better, and you eagerly look forward to how next you can prove your devotion to <<him npc_boss>>.<br>
<br>
<<if $npc_yogateacher.flags.destroy>>
"@@.npc_boss;A final bonus,@@" <<=setup.getNpcName("npc_boss","formal")>> states with a grin as <<he npc_boss>> taps <<his npc_boss>> keyboard to change the recording, <<his npc_boss>> stroking your head as you look up to see <<=setup.getNpcName("npc_yogateacher","first")>> enduring a far worse fate, the yoga instructor's flexibility pushed to the limit in one of the most uncomfortable bondage positions you've ever seen, the <<man npc_yogateacher>> literally bouncing off the walls of a padded room in the company's underground asylum as <<=setup.getNpcName("npc_work_doctor","formal")>> looks on.<br>
<br>
"@@.npc_boss;Apparently <<=setup.getNpcName("npc_yogateacher","formal")>>, sorry, <<=setup.getNpcName("npc_yogateacher","custom", "Test Subject 24601")>>, now... in any case, <<=setup.getNpcName("npc_work_doctor","formal")>> found them to be quite resistant to some of <<his npc_work_doctor>> normal procedures, between a built-up tolerance and meditating through the effects... but our <<=setup.getNpcName("npc_work_doctor","title")>> is nothing, if not persistent. As you can see, inner peace is no match for a heavy schedule of <<=setup.getItemName("pink_pill")>> and hourly gang-<<if $fetish.get_raped>>rapes<<else>>bangs<</if>>.@@" As if on cue, the door to the cell opens and several "orderlies" walk in, <<=setup.getNpcName("npc_yogateacher","custom", "Test Subject 24601")>> literally suspended in air on cock as <<he npc_yogateacher>> takes it hard from every direction, with <<=setup.getNpcName("npc_work_doctor","formal")>> putting <<his npc_work_doctor>> notepad aside to shoot up with a syringe and unleash <<his npc_work_doctor>> drug-enhanced dick on the one-time yoga instructor.<br>
<br>
<</if>>
"@@.npc_boss;So, who will you offer up to me, next?@@"<br>
<br>
<<include "bossBetrayals">>
</div>/*#
#desc: npc_retention talks about bringing down landlord
#status: RELEASED 0.8.9.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "card_retention">>
<<addTaskById "task_destroy_landlord">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_retention","formal")>> leads you to the elevator before <<he npc_retention>> begins talking.<br>
<br>
"@@.npc_retention;So, <<=setup.getNpcName("npc_landlord","other")>>... I somehow knew it would come to me to put the old dog down...@@" <<His npc_retention>> voice is all business, and it sends a chill down your spine. "@@.npc_retention;But you...@@" <<=setup.getNpcName("npc_retention","formal")>> caresses your chin and smiles. "@@.npc_retention;Yes, a sweet thing like you... <<he npc_landlord>>'ll let <<his npc_landlord>> guard down, be vulnerable.@@"<br>
<br>
You shiver. There is no compassion in <<=ps(setup.getNpcName("npc_retention","formal"))>> voice, no affection. You feel like a piece of meat... which, from the sound of things, you are. Nothing but bait.<br>
<br>
<<if $npc_landlord.stage >= 3>>
"@@.npc_retention;Our surveillance has shown that the old <<man npc_landlord>> has already fallen for your wiles... of course it is that same affection that has led to this... when you are ready, call me, and we will give the old <<man npc_landlord>> a proper send-off.@@"
<<else>>
"@@.npc_retention;You have the necessary attributes for this task, but you must deploy them first. Gain the old <<man npc_landlord>>'s trust, seduce <<him npc_landlord>>. When this is done, call me, and we will give <<him npc_landlord>> a proper send-off.@@"
<</if>>
<br><br>
[<<moveTo "event_boss_missions_landlord_2" 'Tell <<=setup.getNpcName("npc_retention","formal")>> that you will contact <<him npc_retention>> when you are ready, but you do not want to be there at the end.' 180 "<<set $npc_landlord.flags.offscreen_death=true>>">>] <<hint $options "<<=ps(setup.getNpcName('npc_landlord','first'))>> final fate will happen off-screen.">><br>
[<<moveTo "event_boss_missions_landlord_2" 'Tell <<=setup.getNpcName("npc_retention","formal")>> that you will contact <<him npc_retention>> when you are ready; and that you want to see things through to the end.' 180 "<<set $npc_landlord.flags.offscreen_death=false>>">>] <<hint $options "You will witness <<=ps(setup.getNpcName('npc_landlord','first'))>> final fate.">>
</div>/*#
#desc: npc_retention talks about bringing down landlord
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_retention","formal")>> that you will do as <<he npc_retention>>
<<if $npc_landlord.flags.offscreen_death>>
instructs, but that you wish to be spared being there at the end.<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> smiles. "@@.npc_retention;Weak stomach? I suppose I should not be surprised. Very well. You take care of things properly and I will spare you the sight of the finale.@@"
<<else>>
instructs... and that you want to see it through and be there at the end.<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> seems slightly surprised, but nods. "@@.npc_retention;I would have thought you constitution a bit weak for such matters, but, very well. If you wish to be present to the end, you will be there.@@"
<</if>>
<br><br>
The elevator door opens and you continue on your way.<br>
<br>
[<<moveTo "company_lobby" 'Company lobby.' 180>>]
</div>/*#
#desc: call npc_retention about destroying landlord
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$currentTasks.hasOwnProperty("task_destroy_landlord")>>
<<initRoom>>
<<moveTo "event_boss_recruit_retry_call_1">>
<</if>>
<<set $currentcall = true>>
<<set $scene.landlordAvailable = (
( (($now.getUTCDay()>0)&&($now.getUTCDay()<5)) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=17)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==5) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=13)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==6)||($now.getUTCDay()==0) && (($now.getUTCHours()>=10) && ($now.getUTCHours()<=24)) )
)>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_destroy_landlord_5")>>
You consider calling <<=setup.getNpcName("npc_retention","formal")>> but, given the <<man npc_retention>>'s reputation, and your lack of anything concrete to discuss, think better of it.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
You call <<=setup.getNpcName("npc_retention","formal")>> about your mission to betray <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<if $npc_landlord.stage >= 3 && $scene.landlordAvailable && setup.inPassageTag($scene.beforePhoneCallLocation,"home")>>
"@@.npc_retention;Very well — go to <<him npc_landlord>>, give your body to <<him npc_landlord>>. Make <<his npc_landlord>> final moments a joyful distraction. I will be there shortly. Per your request, I will allow you to <<if $npc_landlord.flags.offscreen_death>>leave before the end<<else>>be there to witness the end<</if>>.@@"<br>
<br>
<<if $npc_landlord.flags.offscreen_death>>
[<<moveTo "event_destroy_landlord_change_witness" 'You changed your mind, you want to witness the end.' 180 "<<set $npc_landlord.flags.offscreen_death=false>>">>] <<hint $options "You will witness <<=ps(setup.getNpcName('npc_landlord','first'))>> final fate.">><br>
[<<moveTo "event_destroy_landlord_1" 'Hang up and get ready to go to <<=setup.getNpcName("npc_landlord","first")>>.' 600 "<<set $currentcall = false>>">>] <<hint $options "<<=ps(setup.getNpcName('npc_landlord','first'))>> final fate will happen off-screen.">><br>
<<else>>
[<<moveTo "event_destroy_landlord_1" 'Hang up and get ready to go to <<=setup.getNpcName("npc_landlord","first")>>.' 180 "<<set $currentcall = false>>">>] <<hint $options "You will witness <<=ps(setup.getNpcName('npc_landlord','first'))>> final fate.">><br>
[<<moveTo "event_destroy_landlord_change_witness" 'You changed your mind, you do not want to see <<=ps(setup.getNpcName("npc_landlord","first"))>> fate.' 180 "<<set $npc_landlord.flags.offscreen_death=true>>">>] <<hint $options "<<=ps(setup.getNpcName('npc_landlord','first'))>> final fate will happen off-screen.">>
<</if>>
<<else>>
<<if $npc_landlord.stage >= 3>>
<<if !$scene.landlordAvailable>>
"@@.npc_retention;I do not think this would be a good time. Call me from your flat at a time when <<=setup.getNpcName("npc_landlord","first")>> is likely to be available.@@"
<<elseif !setup.inPassageTag($scene.beforePhoneCallLocation,"home")>>
"@@.npc_retention;I think it would be best if you were home before we set things in motion.@@"
<<else>>
ERROR: unexpected state
<</if>>
<<else>>
"@@.npc_retention;I told you — for <<him npc_landlord>> to let <<his npc_landlord>> guard down enough for me to get close, you need to seduce <<him npc_landlord>>. Call me when you have <<him npc_landlord>> eating out of your hand.@@"
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: call npc_retention about destroying landlord
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_retention","formal")>> that you have changed your mind and that you
<<if $npc_landlord.flags.offscreen_death>>
wish to be spared being there at the end.
<<else>>
want to see it through and be there at the end.<br>
<</if>>
<br><br>
"@@.npc_retention;Very well. Are you certain? This is the final chance for you to change your mind...@@"<br>
<br>
<<if $npc_landlord.flags.offscreen_death>>
[<<moveTo "event_destroy_landlord_change_witness" 'You changed your mind, you want to witness the end.' 180 "<<set $npc_landlord.flags.offscreen_death=false>>">>] <<hint $options 'You will witness <<=ps(setup.getNpcName("npc_landlord","first"))>> final fate.'>><br>
[<<moveTo "event_destroy_landlord_1" 'Hang up and get ready to go to <<=setup.getNpcName("npc_landlord","first")>>.' 600 "<<set $currentcall = false>>">>] <<hint $options '<<=ps(setup.getNpcName("npc_landlord","first"))>> final fate will happen off-screen.'>><br>
<<else>>
[<<moveTo "event_destroy_landlord_1" 'Hang up and get ready to go to <<=setup.getNpcName("npc_landlord","first")>>.' 180 "<<set $currentcall = false>>">>] <<hint $options 'You will witness <<=ps(setup.getNpcName("npc_landlord","first"))>> final fate.'>>
[<<moveTo "event_destroy_landlord_change_witness" 'You changed your mind, you do not want to see <<=ps(setup.getNpcName("npc_landlord","first"))>> fate.' 180 "<<set $npc_landlord.flags.offscreen_death=true>>">>] <<hint $options '<<=ps(setup.getNpcName("npc_landlord","first"))>> final fate will happen off-screen.'>>
<</if>>
</div>/*#
#desc: get changed to destroy landlord
#status: RELEASED 0.8.9.0
#*/
<<set $player.cutscene.lockinventory=false>>
<<set $player.location to "Bedroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You examine your attire...<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<printThought "Dressed as a maid... yes, this should be perfect.">><br>
<br>
[<<moveTo "event_destroy_landlord_2" 'Go to <<=setup.getNpcName("npc_landlord","first")>>.' 600 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<printThought "Hmm... I should change into a maid's outfit for this...">>
<</if>>
</div>/*#
#desc: visit landlord to destroy
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Outside <<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You knock on <<=ps(setup.getNpcName('npc_landlord', 'first'))>> door and <<he npc_landlord>> answers it, <<his npc_landlord>> face immediately brightening into a smile at the sight of you.<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>! What a surprise, and you look so beautiful!... not that that is surprise, you always muy beautiful, but you visiting. There is no a problem with flat is there?@@"<br>
<br>
[<<moveTo "event_destroy_landlord_3" "The only problem is <<he npc_landlord>> hasn't invited you in yet." 180>>]
</div>/*#
#desc: landlord destruction intro
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You just smile and say that you were thinking of <<him npc_landlord>> and wanted to visit.<br>
<br>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>, you are so good to this old <<man npc_landlord>>, come in, come in! You are always welcome in mi humble home.@@"<br>
<br>
You enter <<his npc_landlord>> flat, your heart racing faster. Seeing <<his npc_landlord>> enthusiasm sways you for a moment, but you remember your duty — this is for <<=setup.getNpcName('npc_boss', 'formal')>>, your true <<Master npc_boss>>. For <<him npc_boss>>, any sacrifice is worth doing.<br>
<br>
You realise that <<=setup.getNpcName('npc_landlord', 'first')>> had been talking while you were distracted as <<he npc_landlord>> seems to be waiting for you to reply.<br>
<br>
[<<moveTo "event_destroy_landlord_4" "Why talk when you can retire to the bedroom?" 180>>]
</div>/*#
#desc: landlord destruction sex
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Bedroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
You smile innocently, and take <<=setup.getNpcName('npc_landlord', 'first')>> by the hand. Whatever <<he npc_landlord>> was talking about is swiftly forgotten as you lead <<him npc_landlord>> into the bedroom as you slide to your knees and start unzipping <<his npc_landlord>> pants.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>, you don't—@@" You take <<him npc_landlord>> in your mouth and <<he npc_landlord>> moans. "@@.npc_landlord;Oh <<callPlayer "npc_landlord">>...@@"<br>
<br>
Between your outfit and your lips you soon have <<=setup.getNpcName('npc_landlord', 'first')>> fully erect and you slide up onto the bed; flipping up your skirt <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>and sliding the plug out of your ass<<else>>to present your ass<</if>>.<br>
<br>
<<=setup.getNpcName('npc_landlord', 'first')>> looks down at you in adoration as <<he npc_landlord>> moves between your legs and slides into your <<getWordAnus>>.<br>
<br>
You moan in pleasure as <<he npc_landlord>> starts to thrust... looking up at <<him npc_landlord>> as <<he npc_landlord>> smiles down, <<his npc_landlord>> eyes half-focused as <<he npc_landlord>> makes an obvious effort to last long enough for you to cum first...<br>
<br>
[<<moveTo "event_destroy_landlord_5" "Continue." 180>>]
</div>/*#
#desc: landlord destruction
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Bedroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_landlord.flags.offscreen_death>>
<<applyStress 50>>
<</if>>
<<if !State.hasPlayed("event_ai_boss_query") && !State.hasPlayed("event_destroy_ai_5")>>
<<addEvent 'ai_boss_query'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_landlord_date_1") && !$currentTasks.task_landlord_date_1.finished>>
<<deleteTask "task_landlord_date_1">>
<</if>>
<<if $currentTasks.hasOwnProperty("task_landlord_date_2") && !$currentTasks.task_landlord_date_2.finished>>
<<deleteTask "task_landlord_date_2">>
<</if>>
<<if $currentTasks.hasOwnProperty("task_landlord_date_club") && !$currentTasks.task_landlord_date_club.finished>>
<<deleteTask "task_landlord_date_club">>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_landlord") && !$currentTasks.psychiatrist_couples_landlord.finished>>
<<deleteTask "psychiatrist_couples_landlord">>
<</if>>
<<if $currentTasks.hasOwnProperty("task_landlord_date_1") && !$currentTasks.task_landlord_date_1.finished>>
<<completeTask 'task_landlord_date_1' $now false>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_landlord_date_2") && !$currentTasks.task_landlord_date_2.finished>>
<<completeTask 'task_landlord_date_2' $now false>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_landlord_date_club") && !$currentTasks.task_landlord_date_club.finished>>
<<completeTask 'task_landlord_date_club' $now false>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_landlord_weekend") && !$currentTasks.task_landlord_weekend.finished>>
<<completeTask 'task_landlord_weekend' $now false>>
<</if>>
<<if $events.hasOwnProperty("admin_landlord_bar")>>
<<removeEvent "admin_landlord_bar">>
<</if>>
<<if $events.hasOwnProperty("landlord_maid_delivery")>>
<<removeEvent "landlord_maid_delivery">>
<</if>>
<<if $events.hasOwnProperty("admin_landlord_bar")>>
<<removeEvent "admin_landlord_bar">>
<</if>>
<<if $workEvents.hasOwnProperty("bedroom_install_landlord")>>
<<removeWorkEvent "bedroom_install_landlord">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<if $npc_landlord.flags.offscreen_death>>
<<=setup.getNpcName('npc_landlord', 'first')>> suddenly stops, <<his npc_landlord>> expression frozen as <<=setup.getNpcName('npc_retention', 'formal')>> appears behind and pulls <<him npc_landlord>> off as <<=setup.getNpcName('npc_landlord', 'first')>> slumps, breathing softly, but seemingly unconscious.<br>
<br>
"@@.npc_retention;You may go, now. This was only a tranquilliser. You have made sure that <<=ps(setup.getNpcName('npc_landlord', 'first'))>> final memory will be a happy one... <<=setup.getNpcName('npc_landlord', 'Colonel')>> and I may have never been friends, but <<he npc_landlord>> was a fellow soldier, and I owe <<him npc_landlord>> that much. And trust me... it is a far kinder fate than what <<=setup.getNpcName('npc_boss', 'formal')>> would have done. You may go. Your part in this is finished.@@"<br>
<br>
Something about the mention of your <<Master npc_boss>>, <<=setup.getNpcName('npc_boss', 'formal')>>, puts you into a bit of a trance. You nod slowly, fixing your clothes and leaving the flat.<br>
<br>
<<printThought "This is what my <<Master npc_boss>> commanded. I have obeyed.">>
<<else>>
There is a single muffled shot, blood and bits of <<=setup.getNpcName('npc_landlord', 'first')>> splattering past you as <<his npc_landlord>> body collapses forward.<br>
<br>
You catch a glimpse of <<his npc_landlord>> lifeless eyes — <<he npc_landlord>> never saw it coming, <<his npc_landlord>> expression frozen in joy...<br>
<br>
You're too shocked to struggle free, the corpse pulled off of you leaving you empty as you look up to see <<=setup.getNpcName('npc_retention', 'formal')>>. <<He npc_retention>> glances at you for a moment and then looks down at <<=setup.getNpcName('npc_landlord', 'first')>>. "@@.npc_retention;Trust me. This is a far better fate than what <<=setup.getNpcName('npc_boss', 'formal')>> would do. <<=setup.getNpcName('npc_landlord', 'Colonel')>> may not have ever been my friend, but <<he npc_landlord>> was a fellow soldier. The least I could do was send <<him npc_landlord>> off well.@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> drops a bag onto the bed and starts unpacking an outfit identical to what you are wearing. "@@.npc_retention;Remove your clothes. Here's a change — wash yourself up in the bathroom, dress, and leave. I'll deal with the cleanup.@@" <<He npc_retention>> looks you in the eye as what just happened starts to catch up with you. "@@.npc_retention;This is the path you chose. Make yourself right with it and move forward. <<=setup.getNpcName('npc_boss', 'formal')>> will demand nothing less.@@"<br>
<br>
The mention of your <<Master npc_boss>>, <<=setup.getNpcName('npc_boss', 'formal')>>, helps calm you down.<br>
<br>
<<printThought "Yes, anything is worth it, for <<=setup.getNpcName('npc_boss', '<<Master npc_boss>>')>>.">><br>
<br>
You do as instructed, removing your blood-stained clothes, showering and changing... while trying not to think of the time you spent with <<=setup.getNpcName('npc_landlord', 'first')>> in this same shower.<br>
<br>
By the time you emerge <<=setup.getNpcName('npc_retention', 'formal')>> has bagged up the corpse and most of the linens, <<he npc_retention>> nods curtly and you hurry home.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home" 300>>]
</div>/*#
#desc: report betrayal of landlord
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_destroy_landlord' $now true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You report back that you have assisted <<=setup.getNpcName('npc_retention', 'formal')>> in dealing with <<=setup.getNpcName('npc_landlord', 'first')>>.<br>
<br>
"@@.npc_boss;And so you have. Something of a waste of <<his npc_landlord>> skills, to end things like that, but that was <<=ps(setup.getNpcName('npc_retention', 'formal'))>> decision, not your own. You performed your duties as required so... who will you offer up next?@@"<br>
<br>
<<include "bossBetrayals">>
</div>/*#
#desc: given mission to destroy primrose
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById "task_destroy_primrose">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
"@@.npc_boss;I suppose I could just have you fire <<=setup.getNpcName("npc_primrose","formal")>>... but where is the fun in that? No, I want you to go speak with <<=setup.getNpcName("npc_work_doctor","formal")>>. I am sure <<he npc_work_doctor>> would relish the opportunity to "get <<his npc_primrose>> department in order" by disposing of the <<if $fetish.sissy>>sissy<<else>>overly-enthusiastic<</if>> thorn in <<his npc_work_doctor>> side... you may inform <<=setup.getNpcName("npc_work_doctor","formal")>> that <<he npc_work_doctor>> has my permission to handle this matter however <<he npc_work_doctor>> pleases.@@"<br>
<br>
You shiver slightly at the thought, but curtsy obediently as <<=setup.getNpcName("npc_boss","formal")>> hands you a pre-signed memo. "@@.npc_boss;Get to it then. Once a decision is made a proper leader acts with haste! So go, relay my word.@@"<br>
<br>
You hurry to the elevator and ride down towards <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> floor.<br>
<br>
[<<moveTo "event_boss_missions_primrose_2" 'Go find <<=setup.getNpcName("npc_work_doctor","formal")>> in <<his npc_work_doctor>> lab.' 300>>]
</div>/*#
#desc: tell work_doctor he can destroy primrose
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
You arrive in <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office where <<his npc_work_doctor>> initial annoyance at having <<his npc_work_doctor>> work interrupted melts away in delight as you hand <<him npc_work_doctor>> the blank memo and relay the permission from <<=setup.getNpcName("npc_boss","formal")>> to "clean up <<his npc_primrose>> department." <br>
<br>
"@@.npc_work_doctor;Finally!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> cheers with almost gleeful excitement. "@@.npc_work_doctor;Oh, I have wanted to handle that chattering <<if $fetish.sissy>>sissy<<else>>annoyance<</if>> for too long. So nice that <<=setup.getNpcName("npc_boss","formal")>> has withdrawn <<his npc_work_doctor>> protection and come around that whatever amusement <<=setup.getNpcName("npc_primrose","formal")>> may provide is hardly worth the diversion of funds away from my far more effective chemical processes...@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> finishes filling out the memo with a flourish before unlocking a drawer and pulling out a VERY large pill. "@@.npc_work_doctor;Well done on convincing <<=setup.getNpcName("npc_boss","formal")>> to let me clean house... you really do know your proper place<<if $npc_boss.fem || $npc_work_doctor.fem>>, at the feet of your superiors<<else>>, at a man's feet<</if>>.@@"<br>
<br>
You nod obediently as <<he npc_work_doctor>> hands you the suppository and the memo. "@@.npc_work_doctor;Oh, and to go with <<his npc_primrose>> repurposing, I believe a new uniform will be in order.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> adds, as <<he npc_work_doctor>> hands you a latex nurse bodysuit. "@@.npc_work_doctor;Now run along and make your delivery! I am quivering with anticipation!@@"<br>
<br>
Once again you curtsy and retreat to make your way to <<=ps(setup.getNpcName("npc_primrose","formal"))>> quasi-hidden lab.<br>
<br>
[<<moveTo "event_boss_missions_primrose_3" 'Off to crush dreams...' 300>>]
</div>/*#
#desc: give primrose the bad news
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !State.hasPlayed("event_ai_boss_query") && !State.hasPlayed("event_destroy_ai_5")>>
<<addEvent 'ai_boss_query'>>
<</if>>
<<if $workEvents.hasOwnProperty("primrose_footage_intro")>>
<<removeWorkEvent "primrose_footage_intro">>
<</if>>
<<if $events.hasOwnProperty("primrose_development_demo")>>
<<removeEvent "primrose_development_demo">>
<</if>>
<<if $events.hasOwnProperty("primrose_first_sexclub")>>
<<removeEvent "primrose_first_sexclub">>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You hurry off to find <<=setup.getNpcName("npc_primrose","formal")>> in <<his npc_primrose>> lab, the <<if $fetish.sissy>>sissy <</if>>scientists initial excitement to see you turning to despair after you hand over the memo. <<He npc_primrose>> reads it in solemn silence, <<his npc_primrose>> normal positivity evaporating into a look of crushing despair.<br>
<br>
"@@.npc_primrose;I— I don't understand... how could <<=setup.getNpcName("npc_boss","formal")>> do this to me? I've done everything <<he npc_boss>> asked...@@" <<=setup.getNpcName("npc_primrose","formal")>> seems on the verge of tears before <<he npc_primrose>> takes a deep breath and tries to put on a brave face. "@@.npc_primrose;Of course, <<=setup.getNpcName("npc_boss","formal")>> is always right. If this is how <<he npc_boss>> believes I can best serve the company...@@" <<=setup.getNpcName("npc_primrose","formal")>> bends over <<his npc_primrose>> desk and unlatches the rear panel of <<his npc_primrose>> plugsuit to reveal the hollow <<=setup.getItemName("sissyomatic")>> plug stretching <<his npc_primrose>> rear. "@@.npc_primrose;Would you would kindly administer my medicine?@@"<br>
<br>
You slide the large suppository into <<=ps(setup.getNpcName("npc_primrose","formal"))>> to the delightful sound of <<his npc_primrose>> moaning and then help peel off the rest of <<his npc_primrose>> outfit in favour of the new nurse attire. The pink and white outfit clings tightly to <<his npc_primrose>> form perfectly as if it had been made just for <<him npc_primrose>> and saved for just such an occasion, finished off with the tightly-buckled crotch-strap over <<his npc_primrose>> <<=setup.getItemName('sissyomatic')>>.<br>
<br>
By the time <<hes npc_primrose>> finished changing, <<he npc_primrose>> is already breathing heavy. <<His npc_primrose>> pupils dilate in excitement as <<he npc_primrose>> walks over to <<his npc_primrose>> computer and begins wiping hard drives.<br>
<br>
"@@.npc_primrose;It seems such a waste... but the instructions were quite clear to erase all records lest our competitors lay hands on them.@@" <<=setup.getNpcName("npc_primrose","formal")>> explains as <<he npc_primrose>> deletes most of the files before setting a timer for the remainder to be formatted. <<He npc_primrose>> arranges a final "training" routine. "@@.npc_primrose;Still... I think I shall enjoy the fruits of my labours one final time,@@" <<he npc_primrose>> states with a giggle as the drugs continue to take effect. "@@.npc_primrose;Pity I shall not be around to take notes on the result. I only hope that <<=setup.getNpcName("npc_boss","formal")>>... and <<=setup.getNpcName("npc_work_doctor","formal")>>, I suppose, find the results noteworthy.@@"<br>
<br>
You aren't an expert on <<=ps(setup.getNpcName("npc_primrose","formal"))>> work, but there's no confusing the way <<hes npc_primrose>> disabling safety limits and stacking up a dozen layers of "brain-melting" routines. <<He npc_primrose>> was going to walk out of this utterly brain-fucked.<br>
<br>
Pulling on his VR helmet with a smile, <<=setup.getNpcName("npc_primrose","formal")>> settles back into <<his npc_primrose>> elaborate chair. <<He npc_primrose>> looks to you for assistance as <<he npc_primrose>> begins strapping <<him npc_primrose>>self down. "@@.npc_primrose;As tight as you can, please. I would not wish to damage company property as I prepare for my first shift...@@"<br>
<br>
You look one final time at your so-called friend, and then do as <<he npc_primrose>> asks, sliding the large, <<=setup.getNpcName("npc_boss","formal")>>-shaped dildo between the lustily beckoning lips, knowing that, when <<=setup.getNpcName("npc_primrose","formal")>> next rises <<he npc_primrose>> will be little more than a brainwashed <<if $npc_primrose.fem>>bimbo<<else>>bimboi...<</if>><br>
<br>
You glance back one final time on your way out of the lab, <<=setup.getNpcName("npc_primrose","formal")>> already writhing and moaning in <<his npc_primrose>> bonds as the drugs and "training" procedures begin to erode the last of <<his npc_primrose>> self. After years of service and loyalty, <<=setup.getNpcName("npc_primrose","formal")>> gave everything <<he npc_primrose>> had left until there was nothing left to give.<br>
<br>
[<<moveTo "company_lobby" 'Leave.' 300>>]
</div>/*#
#desc: report betrayal of primrose
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_destroy_primrose' $now true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
After you finish, you ask <<=setup.getNpcName('npc_boss', 'formal')>> if <<=setup.getNpcName("npc_primrose","formal")>> has started his new "position" yet.<br>
<br>
"@@.npc_boss;Hmm?@@" <<=setup.getNpcName('npc_boss', 'formal')>> asks, partially distracted and seeming to have already forgotten the loyal <<if $fetish.sissy>>sissy<<else>>enthusiast<</if>>. "@@.npc_boss;Oh, yes... <<=setup.getNpcName('npc_work_doctor', 'formal')>> reported that <<his npc_work_doctor>> new assistant is up to company standards and will be making some new refinements in case of other subjects with similar drug resistance to what what's-<<his npc_primrose>>-name had. On to more important matters... who will you give me next?@@"<br>
<br>
<<printThought "Wow... it's like <<=setup.getNpcName('npc_boss', 'formal')>> didn't even care... I really need to show <<him npc_boss>> how valuable and loyal I am!">><br>
<br>
<<include "bossBetrayals">>
</div>/*#
#desc: npc_boss gives you material to destroy technician
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "rpg_supplement">>
<<addTaskById "task_destroy_technician">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss","formal")>> grins and hands you a file folder.<br>
<br>
"@@.npc_boss;Give those to your "friend." A bit of material cooked up by one of our publishing subsidiaries. I am sure your friend will find them... quite interesting.@@"<br>
<br>
You nod obediently — if <<=setup.getNpcName("npc_boss","formal")>> orders you to do it, of course you will and you smile back at <<him npc_boss>>, hoping that this task will further impress <<him npc_boss>>.<br>
<br>
"@@.npc_boss;That will be all — you have a task to perform, so get to it.@@"<br>
<br>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
You gasp as your plug vibrates. You look at <<=setup.getNpcName("npc_boss","formal")>> as <<he npc_boss>> grins in response. You shudder and almost swoon — certainly you would like it even better if it was <<his npc_boss>> big, beautiful <<getWordPenis "npc_boss">> slamming into you, but any pleasure <<he npc_boss>> deigns to give you is surely the best pleasure possible!<br>
<br>
<</if>>
<<He npc_boss>> dismisses you with a wave and you hurry to the elevator.<br>
<br>
[<<moveTo "company_lobby" 'Ride down to the lobby.' 180>>]
</div>/*#
#desc: read rpg_supplement
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<createAdvBGR "./images/inventory/item/useable/rpg_supplement.png">>
<div id="invframe" class="scrolltext">
You flip through what looks to be a draft of an RPG supplement for the game Gloomtrot.<br>
<br>
The scenario is called "Setsuzoku Arcology: Termination" and involves the party breaking into a megacorp. Somewhat scant on fluff most of what you're looking at is maps of the facility and "in-universe" technical documents about the company and key employees.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
<<printThought 'These plans... I think this is the company building... still, <<=setup.getNpcName("npc_technician","first")>> would love this!'>>
<<else>>
<<printThought 'These plans look weirdly familiar, but <<=setup.getNpcName("npc_technician","first")>> would love this!'>>
<</if>>
<<else>>
<<printThought '<<=setup.getNpcName("npc_technician","first")>> would love this!'>>
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Put things away." 60 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: present supplement to npc_technician group
#status: RELEASED 0.8.9.0
#ignore_spell: fraggin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'rpg_supplement'>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You hand <<=setup.getNpcName("npc_technician","first")>> the folder <<=setup.getNpcName("npc_boss","formal")>> gave you and ask if she could do anything with it.<br>
<br>
"@@.npc_technician;Here, let me see.@@"<br>
<br>
She flips things open and starts to read and her expression almost instantly lights up. "@@.npc_technician;Holy shit! Where did you get this? Do you know what this is? This is "Setsuzoku Arcology: Termination!"@@"<br>
<br>
"@@.npc_maid;Wait, seriously?@@" Responds <<=setup.getNpcName("npc_maid","first")>>. A glance around the room confirms that only you and <<=setup.getNpcName("npc_barista","nickname")>> seem clueless...<br>
<br>
"@@.npc_technician;This, this is like the holy grail of Gloomtrot supplements — it was supposed to be the most complicated module ever, but it was never released to the public, only run by employees at certain conventions... there have been rumours about a copy existing in the wild but... seriously, <<=$player.first_name>> how did you get this?@@"<br>
<br>
You shrug and explain that you were talking with someone at work, and apparently the company that makes the game is a recently acquired subsidiary of Social Interaction Service Syndicate Inc. "@@.pc;So... can you run it?@@"<br>
<br>
"@@.npc_technician;Run it? Oh hell fraggin' yes we're going to run it.@@" Her grin widens. "@@.npc_technician;Friends, lovers, <<=setup.getNpcName("npc_maid","first")>> — are you ready to embark on the most perilous run of all? To infiltrate a facility in the grasp of a mad AI in a quest for truth... and maybe more?@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> grins at the subtle barb. "@@.npc_maid;Damn right we are — now stop beating around the bush and let's get rolling.@@"<br>
<br>
[<<moveTo "event_destroy_technician_2" "Let's play!" 3600>>]
</div>/*#
#desc: start playing gloomtrot supplement
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> proves her Dungeon Mistress chops as, even running the game on the fly, she manages to spin an exciting yarn; aided by the detailed maps and other materials to make one of the most realistic feeling adventures you've ever participated in. Forced to rely on each other's skills as you rise higher and higher into the building held hostage by the AI the dread grows as you see the horrific fates that have befallen the workers who had been trapped inside with the mad intelligence.<br>
<br>
You're on the edge of your seats as you near the top of the building; and what will certainly be an epic final encounter... when the door to <<=ps(setup.getNpcName("npc_technician","first"))>> bursts inwards and everything devolves into chaos.<br>
<br>
[<<moveTo "event_destroy_technician_3" "What's going on?" 600>>]
</div>/*#
#desc: police arrive and arrest
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" "cop_mask">>
<div id="invframe" class="scrolltext">
There is a bright flash, further disorientating you as everything becomes screams and confusion. You are slammed to the ground, your wrists pulled behind your back in a familiar position... though far less erotic than the previous times you've been cuffed.<br>
<br>
Things last but a minute or two before you, and the rest of the RPG group have been subdued, shouts of "@@.npc_technician;What's going on?@@" and "@@.npc_maid;Why are you doing this?@@" ignored as the intimidating, gas mask equipped officers order you into silence as they finish securing the area before yanking you to your feet and taking you down the elevator to waiting vehicles.<br>
<br>
Separated from your friends you don't get anything approaching an answer as you are driven away, unloaded, and find yourself in an interrogation room.<br>
<br>
[<<moveTo "event_destroy_technician_4" "Continue." 2200>>]
</div>/*#
#desc: give testimony
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Interrogation Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/interrogation.png" setup.charImageGeneric("cop_01") setup.charImage("generic","npc_conspirator")>>
<div id="invframe" class="scrolltext">
You sit alone for some time before a somewhat less intimidating officer walks in and takes a seat across from you.<br>
<br>
"@@.generic_female1;So, Miss... <<=$player.last_name>>... what were you and your associates doing with these?@@"<br>
<br>
She drops what look like photocopies of the game module on the table in front of you as you look back in confusion.<br>
<br>
Before you can think of a reply another person barges into the room; this one a slick <<man>> in a suit. "@@.generic_male1;Do not say anything!@@"<br>
<br>
Turning to the officer the <<man>> continues, "@@.generic_male1;Speaking on behalf of my client we are ending this interrogation here, she will not say anything until she has had a chance to speak with counsel.@@"<br>
<br>
The officer glowers in annoyance, but rises to leave. "@@.generic_female1;You think about what I said.@@" They state, motioning towards the papers scattered in front of you.<br>
<br>
[<<moveTo "event_destroy_technician_5" "Wait for someone to tell you what's going on." 600>>]
</div>/*#
#desc: told situation
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Interrogation Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/interrogation.png" setup.charImage("generic","npc_conspirator")>>
<div id="invframe" class="scrolltext">
Your lawyer waits for the officer to leave before sitting down across from you. "@@.generic_male1;Sorry about that. I got here as quickly as I can. I am on retainer to Social Interaction Service Syndicate Inc. and <<=setup.getNpcName("npc_boss","formal")>> personally assigned me to your case.@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
You nod slowly, everything making sense; the RPG "module" based off of the office blueprints all part of what was obviously a setup to get you and your friends arrested.
<<else>>
You nod slowly, this was obviously a setup... you wait patiently to learn more details.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You are confused, but the mention of <<=setup.getNpcName("npc_boss","formal")>> comforts you and you wait for things to be explained.
<<else>>
You are completely confused, but the mention of <<=setup.getNpcName("npc_boss","formal")>> is enough to tell you that everything is fine so you just sit and wait for things to be explained.
<</if>>
<</if>>
<br><br>
"@@.generic_male1;So you and your friends were apprehended plotting a terrorist attack. The evidence against you is strong, from the top secret blueprints you were working off of, to the quantity of illegal anti-surveillance equipment found in the flat you were meeting in, to the clear history of anti-capitalist rhetoric and associations espoused by some of the other attendees. You're facing severe penalties, especially since one of your number has already flipped. You have two choices — give a statement testifying against your associates... or you'll be going down right along with them.@@"<br>
<br>
The lawyer waits a moment for things to sink in before continuing.<br>
<br>
"@@.generic_male1;I will add that the clock is ticking. As I already noted, the case against you is strong, so the window to trade is brief. Your only chance of leaving this room a free woman, and going back to your job with <<=setup.getNpcName("npc_boss","formal")>> is if you give a statement, right now, confirming that your associates were doing everything that they are accused of. So... what is your decision?@@"<br>
<br>
[<<moveTo "event_destroy_technician_6" "Betray your friends." 7200>>]<br>
[<<moveTo "event_destroy_technician_bad_end" "No! You were just playing a game!" 600>>]
</div>/*#
#desc: bad end, catastrophically fail interview
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<set $gameOver = 'destroy_technician'>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/gameover.png">>
<div id="invframe" class="scrolltext">
Your refusal to betray your friends means that <<=setup.getNpcName("npc_boss","formal")>> leaves you out to dry.<br>
<br>
Due to the nature of your "crimes" your conviction is as swift as it is secretive, shuffled from the police station to solitary holding to a closed court where you are given your verdict of "terrorist plots" and sentenced to community service.<br>
<br>
<<printThought "Community service... what?">><br>
<br>
"Community service" proves to be quite the euphemism as your body is rebuilt into a cybernetic frame; your brain augmented and reprogrammed until you are ready to "serve" the community — as one of the mysterious Valkyrie units flying over the city.<br>
<br>
As you patrol with your squad you feel a deep sense of camaraderie; though you cannot remember the time before you volunteered to become a Valkyrie you have a strange sense that the five of you have known one another far longer...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: betray friends
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !State.hasPlayed("event_ai_boss_query") && !State.hasPlayed("event_destroy_ai_5")>>
<<addEvent 'ai_boss_query'>>
<</if>>
<<set $npc_boss.flags.destroy_technician = $now>>
<<set $npc_technician.relationship.her_role = "betrayed">>
<<if $currentTasks.hasOwnProperty("technician_collar_ceremony") && !$currentTasks.technician_collar_ceremony.finished>>
<<deleteMember $currentTasks 'technician_collar_ceremony'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_roleplay_surgery") && !$currentTasks.technician_roleplay_surgery.finished>>
<<deleteMember $currentTasks 'technician_roleplay_surgery'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_collar_her_ceremony") && !$currentTasks.technician_collar_her_ceremony.finished>>
<<deleteMember $currentTasks 'technician_collar_her_ceremony'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_club_dom") && !$currentTasks.technician_club_dom.finished>>
<<deleteMember $currentTasks 'technician_club_dom'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_club_sub") && !$currentTasks.technician_club_sub.finished>>
<<deleteMember $currentTasks 'technician_club_sub'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_dinner") && !$currentTasks.technician_dinner.finished>>
<<deleteMember $currentTasks 'technician_dinner'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_cafe_1") && !$currentTasks.technician_cafe_1.finished>>
<<deleteMember $currentTasks 'technician_cafe_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_roleplay_1") && !$currentTasks.technician_roleplay_1.finished>>
<<deleteMember $currentTasks 'technician_roleplay_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_roleplay_punish_1") && !$currentTasks.technician_roleplay_punish_1.finished>>
<<deleteMember $currentTasks 'technician_roleplay_punish_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty("cosplay_convention_first") && !$currentTasks.cosplay_convention_first.finished>>
<<deleteMember $currentTasks 'cosplay_convention_first'>>
<</if>>
<<if $currentTasks.hasOwnProperty("cosplay_convention") && !$currentTasks.cosplay_convention.finished>>
<<deleteMember $currentTasks 'cosplay_convention'>>
<</if>>
<<if $events.hasOwnProperty("event_ai_technician_visit")>>
<<removeEvent "event_ai_technician_visit">>
<</if>>
<<if $events.hasOwnProperty("technician_chastity_choice")>>
<<removeEvent "technician_chastity_choice">>
<</if>>
<<if $events.hasOwnProperty("technician_chastity_fourth")>>
<<removeEvent "technician_chastity_fourth">>
<</if>>
<<if $events.hasOwnProperty("technician_chastity_reinforce_game")>>
<<removeEvent "technician_chastity_reinforce_game">>
<</if>>
<<if $events.hasOwnProperty("technician_chastity_reinforce_game")>>
<<removeEvent "technician_chastity_reinforce_game">>
<</if>>
<<if $events.hasOwnProperty("technician_chastity_third")>>
<<removeEvent "technician_chastity_third">>
<</if>>
<<if $events.hasOwnProperty("technician_commando_final")>>
<<removeEvent "technician_commando_final">>
<</if>>
<<if $events.hasOwnProperty("technician_cosplay_invite")>>
<<removeEvent "technician_cosplay_invite">>
<</if>>
<<if $events.hasOwnProperty("technician_hacking_result")>>
<<removeEvent "technician_hacking_result">>
<</if>>
<<if $events.hasOwnProperty("technician_heels_shopping")>>
<<removeEvent "technician_heels_shopping">>
<</if>>
<<if $events.hasOwnProperty("technician_keyholder_home")>>
<<removeEvent "technician_keyholder_home">>
<</if>>
<<if $events.hasOwnProperty("event_ai_technician_visit")>>
<<removeEvent "event_ai_technician_visit">>
<</if>>
<<if $workEvents.hasOwnProperty("event_technician_key_request")>>
<<removeWorkEvent "event_technician_key_request">>
<</if>>
<<if $workEvents.hasOwnProperty("technician_chastity_first")>>
<<removeWorkEvent "technician_chastity_first">>
<</if>>
<<if $workEvents.hasOwnProperty("technician_chastity_second")>>
<<removeWorkEvent "technician_chastity_second">>
<</if>>
<<if $workEvents.hasOwnProperty("technician_dom_train_1")>>
<<removeWorkEvent "technician_dom_train_1">>
<</if>>
<<if $workEvents.hasOwnProperty("technician_dom_train_2")>>
<<removeWorkEvent "technician_dom_train_2">>
<</if>>
<<if $workEvents.hasOwnProperty("technician_humiliation_1")>>
<<removeWorkEvent "technician_humiliation_1">>
<</if>>
<<if $workEvents.hasOwnProperty("technician_commando")>>
<<removeWorkEvent "technician_commando">>
<</if>>
<<if $workEvents.hasOwnProperty("technician_upper_visit")>>
<<removeWorkEvent "technician_upper_visit">>
<</if>>
<<if $workEvents.hasOwnProperty("event_technician_key_request")>>
<<removeWorkEvent "event_technician_key_request">>
<</if>>
<</if>>
<<set $player.location = 'Interrogation Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/interrogation.png" setup.charImage("generic","npc_conspirator")>>
<div id="invframe" class="scrolltext">
Seeing that it is clearly what <<=setup.getNpcName("npc_boss","formal")>> wants, you do as the lawyer says, signing a written statement implicating your friends — minus <<=setup.getNpcName("npc_barista","nickname")>>, as terrorist conspirators.<br>
<br>
With your cooperation the police are suddenly much more polite and you find yourself released after a couple of hours, your lawyer dropping you off at home.<br>
<br>
On one level you know you should be guilty, but all you can feel is obedient joy that you have once again proven your loyalty to <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<printThought "I wonder what I will do for <<him npc_boss>> next?">><br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: shown result of your betrayal of technician
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_destroy_technician' $now true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You report back to <<=setup.getNpcName("npc_boss","formal")>> about your betrayal of your friends.<br>
<br>
"@@.npc_boss;Yes, quite well done, that. Uncovering a dangerous anti-capitalist terrorist cell that was plotting against this very company!@@" <<He npc_boss>> grins and you reflexively curtsy obediently.<br>
<br>
"@@.npc_boss;So, who will you turn over to me next?@@"<br>
<br>
<<include "bossBetrayals">>
</div>/*#
#desc: technician and co Valkyrie take out cafe newtype
#status: RELEASED 0.8.9.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You finish your blowjob and stand only for <<=setup.getNpcName("npc_boss","formal")>> to motion you to stay.<br>
<br>
"@@.npc_boss;Speaking of proving your loyalty. Those terrorist friends of yours? Well I just got an update on their fate, and I thought I would share it with you...@@" <<=setup.getNpcName("npc_boss","formal")>> clicks a remote and a large screen descends from the ceiling...<br>
<br>
You find yourself looking at surveillance footage and you recognise the location — it's the outside of Cafe Newtype at the mall!<br>
<br>
Everything looks normal, just another day at the mall... and then the skylight shatters as a team of four Valkyrie units flys down. Something seems strangely familiar about the squad as things shift to a POV perspective from one of them as they move on the Cafe — systematically detaining the employees, and some of the customers, as they systematically tear through the restaurant.<br>
<br>
Watching the Valkyrie units is sobering; their power and efficiency, tearing through walls with their bare hands and zipping across rooms...<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles in amusement, and then turns on the audio, as you hear a familiar voice giving orders.<br>
<br>
"@@.npc_technician_dom;Unit N — check the back room, the rest of you, finish the sweep, the wagons are on their way.@@"<br>
<br>
Your breath freezes in your throat at hearing <<=ps(setup.getNpcName("npc_technician","first"))>> voice as you suddenly recognise the trio of Valkyries — the largest one matching <<=setup.getNpcName("npc_maid","first")>> and moving to the back of the cafe, while the other two, presumably <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>> spread their wings and form up to herd the remaining people together for detainment.<br>
<br>
The recording stops and the screen recedes. "@@.npc_boss;As you can see, they are already paying back the community they sought to harm. That Cafe was quite the hotbed for other criminals and communist agitators. Yes, a wonderful step towards order...@@"<br>
<br>
<<=ps(setup.getNpcName("npc_boss","formal"))>> satisfied grin almost sways your loyalty, but <<his npc_boss>> presence overwhelms such thoughts. Anything you do in <<his npc_boss>> service is the correct thing; your so-called friends will serve society far better than they could before and you? You have taken another step towards showing your devotion to your one true <<Master npc_boss>>.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> grins in triumph and sends you off with a wave.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: start destroy psychiatrist session
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You arrive for your session to find <<=setup.getNpcName("npc_psychiatrist","formal")>> looking less than enthused, and <<=setup.getNpcName("npc_barista","nickname")>> looking... even more <<=setup.getNpcName("npc_barista","nickname")>> than usual.<br>
<br>
"@@.npc_barista;Hiya, <<=$player.first_name>>@@" <<=setup.getNpcName("npc_barista","nickname")>> greeting comes with a slight slur, her eyes not quite focusing on you as her hips seem to be constantly grinding and twitching in sharp humping motions.<br>
<br>
"@@.npc_psychiatrist;My apologies for my guest — <<=setup.getNpcName("npc_work_doctor","formal")>> decided to test a new formulation and it appears to be hitting strong.@@"<br>
<br>
"@@.npc_barista;<<=setup.getNpcName("npc_work_doctor","formal")>> makes the best candy... <<=setup.getNpcName("npc_barista","nickname")>> loves her candy...@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> sighs and gestures for you and <<=setup.getNpcName("npc_barista","nickname")>> to follow her into the back room.<br>
<br>
[<<moveTo "event_boss_destroy_psychiatrist_2" "Follow." 300>>]
</div>/*#
#desc: destroy psychiatrist session - enter lab
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Speaking of changes, the reason that <<=setup.getNpcName("npc_barista","nickname")>> is here is because I have been granted some additional equipment — on the condition I test an experimental two person therapy program.@@"<br>
<br>
You note that there are now two VR chairs crammed into the back room.<br>
<br>
"@@.npc_psychiatrist;Hmm, it appears that I forgot the suits in the other room. Wait here.@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> leaves you alone with <<=setup.getNpcName("npc_barista","nickname")>>, the obviously drugged-up barista no longer resisting the urge to lasciviously touch herself.<br>
<br>
You think for a moment about what <<=ps(setup.getNpcName("npc_boss","formal"))>> intent must have been in setting up this scenario...<br>
<br>
[<<moveTo "event_boss_destroy_psychiatrist_3" 'Convince <<=setup.getNpcName("npc_barista","nickname")>> to help you force <<=setup.getNpcName("npc_psychiatrist","formal")>> into one of the chairs.' 300>>]<br>
[<<moveTo "event_boss_destroy_psychiatrist_abort_1" 'Just wait for <<=setup.getNpcName("npc_psychiatrist","formal")>> to return.' 300>>]
</div>/*#
#desc: destroy psychiatrist session - alone with barista
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
It takes a bit of effort to get <<=ps(setup.getNpcName("npc_barista","nickname"))>> hands away from herself but by "helping out" in sucking her nipples you manage to get her to focus on you enough to make your suggestion.<br>
<br>
"@@.pc;So, like... <<=setup.getNpcName("npc_psychiatrist","formal")>> has been so good to us, but she seems stressed, we should help her relax, huh?@@"<br>
<br>
The drug cocktail that <<=setup.getNpcName("npc_barista","nickname")>> is on seems to have her quite suggestible... even moreso as you finger her rear plug and she moans lustily. "@@.npc_barista;Mmm, yeah... she deserves happy time... and we can switch off playing with her!@@"<br>
<br>
You giggle along with <<=setup.getNpcName("npc_barista","nickname")>>, reiterating that the two of you will need to help <<=setup.getNpcName("npc_psychiatrist","formal")>> into the chair... for her own good.<br>
<br>
"@@.npc_barista;Yeah, she's always so tense! She needs to relax more, and we can help! She'll feel so much better, her routines are always so fun! I love how fuzzy they make my thoughts when I'm done! I always say yes to everything that happens in them, it's the best!@@"<br>
<br>
You continue to make out with <<=setup.getNpcName("npc_barista","nickname")>> and reinforce how wonderful it will be to "treat" <<=setup.getNpcName("npc_psychiatrist","formal")>> as you wait for the good doctor to return.<br>
<br>
You hear the door and turn to see <<=setup.getNpcName("npc_psychiatrist","formal")>> walking in with the two plugsuits over her arm.<br>
<br>
[<<moveTo "event_boss_destroy_psychiatrist_4" 'Make your move.' 300>>]
</div>/*#
#desc: destroy psychiatrist session - abort
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You wait for <<=setup.getNpcName("npc_psychiatrist","formal")>> to return... by which time <<=setup.getNpcName("npc_barista","nickname")>> has pulled her skirt down and panties to one side as she grinds against the furniture while groping her breasts.<br>
<br>
Plugsuits draped over her arm <<=setup.getNpcName("npc_psychiatrist","formal")>> sighs and shakes her head. "@@.npc_psychiatrist;I'm sorry, but I don't think I can safely proceed with this session. <<=$player.first_name>>? I do apologise but I am afraid that I need to cancel today's session. As you can see, <<=setup.getNpcName("npc_barista","first")>> is in severe need of help.@@"<br>
<br>
"@@.npc_barista;Yes, help! <<=setup.getNpcName("npc_barista","nickname")>> needs cummies... and more candy!@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> sighs, politely turning down your offer to help and sending you on your way.<br>
<br>
[<<moveTo "event_boss_destroy_psychiatrist_abort_2" 'Leave.' 300>>]
</div>/*#
#desc: destroy psychiatrist session - npc_boss calls after abort
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<applyStress 20>>
<</if>>
<<set $player.location = 'Phonecall'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You leave <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office and receive a phonecall.<br>
<br>
"@@.npc_boss;Very disappointing. I set things up per our agreement... you shall have to try again next week if you are to prove your loyalty.@@"<br>
<br>
<<He npc_boss>> hangs up before you can respond, leaving you feeling rejected and despondent.<br>
<br>
<<printThought "Why didn't I do anything? <<=setup.getNpcName('npc_boss','formal')>> was counting on me! Disappointing <<him npc_boss>> is the worst thing in the world!">><br>
<br>
[<<moveTo "room_citymap" "Put your phone away." 60 "<<set $currentcall = false>>">>]
</div>/*#
#desc: destroy psychiatrist session - betray psychiatrist
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> sighs and attempts to pull you and <<=setup.getNpcName("npc_barista","nickname")>> apart, but instead gets drawn in as two pairs of lips and four hands shift their attention to her.<br>
<br>
"@@.npc_psychiatrist;Come on, girls,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> gasps. "@@.npc_psychiatrist;We need to— we need to start your procedure! Now come on, you need to get changed...@@"<br>
<br>
You back <<=setup.getNpcName('npc_psychiatrist', 'formal')>> towards one of the chairs and push her into it, <<=setup.getNpcName("npc_barista","nickname")>> joining in from the other side to hold her down as you snap the first restraint around the <<=ps(setup.getNpcName('npc_psychiatrist', 'custom', 'Doctor'))>> arm.<br>
<br>
"@@.npc_psychiatrist;What are you doing? Stop this, we need to—@@"<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> pulls a gag into <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> mouth and straps her head to the chair with a giggle. "@@.npc_barista;You, like, talk too much! Just relax, this is going to be so much fun! You make, like, the best videos!@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is starting to panic now, but it's too late, the rest of the restraints closing over her body before you "finish" by sliding the anal attachment into place while <<=setup.getNpcName("npc_barista","nickname")>> does a few encouraging sucks of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> <<getWordPenis false>> before putting it inside the auto-blow cylinder.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> moans desperately — the last expression on her face one of fear as you bring the VR mask over her head.<br>
<br>
"@@.npc_barista;Yay!@@" <<=setup.getNpcName("npc_barista","nickname")>> shouts with glee as she runs over to the control panel. "@@.npc_barista;<<=setup.getNpcName('npc_psychiatrist', 'formal')>> really needs this! Let's make sure she has the bestest time!@@"<br>
<br>
You walk over to the controls where <<=setup.getNpcName("npc_barista","nickname")>> is already maxing out every setting. "@@.npc_barista;More is better! How happy do you think <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is going to be when she finishes?@@"<br>
<br>
You glance over to where <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> struggles against her restraints are already calming down; her lower "entertainers" pumping away as pink light leaks out from the edges of the VR mask...<br>
<br>
[<<moveTo "event_boss_destroy_psychiatrist_5" 'Continue.' 1800>>]
</div>/*#
#desc: destroy psychiatrist session - npc_work_doctor shows up
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You watch, and <<=setup.getNpcName("npc_barista","nickname")>> touches herself, to the sight of <<=setup.getNpcName('npc_psychiatrist', 'formal')>> writhing in her virtual world when you hear the door to the chamber open again and <<=setup.getNpcName('npc_work_doctor', 'formal')>> walks into the room.<br>
<br>
"@@.npc_work_doctor;Here, <<=setup.getNpcName("npc_barista","nickname")>>, why don't you give <<=setup.getNpcName('npc_psychiatrist', 'first')>> a little help — there's a reward for you if you do...@@"<br>
<br>
<<=ps(setup.getNpcName("npc_barista","nickname"))>> expression lights up and she takes the large, syringe and bounces over to <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> veins are swelled as her body writhes in ecstasy and <<=setup.getNpcName("npc_barista","nickname")>> performs the injection with surprising skill, the pink liquid glowing slightly as it flows into <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> system.<br>
<br>
"@@.npc_work_doctor;Good girl,@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> replies with a mad grin as <<=setup.getNpcName("npc_barista","nickname")>> rushes back for her "reward" — opening her mouth wide for <<=setup.getNpcName('npc_work_doctor', 'formal')>> to place the pill on her tongue.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> swallows and smiles in anticipation of the drug's effects as <<=setup.getNpcName('npc_work_doctor', 'formal')>> produces a pair of handcuffs.<br>
<br>
Without even needing instructions <<=setup.getNpcName("npc_barista","nickname")>> turns and presents her wrists. "@@.npc_barista;Mmm, I love it when the drugs require me to be restrained. Could you gag me too? I want to suck your cock and enjoy the—@@" <<=ps(setup.getNpcName("npc_barista","nickname"))>> words trail off as her vision sharpens and her expression turns to horror as <<=setup.getNpcName('npc_work_doctor', 'formal')>> releases some of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> restraints and presents <<his npc_work_doctor>> drug-engorged cock, which <<=setup.getNpcName('npc_psychiatrist', 'formal')>> eagerly commences to suck.<br>
<br>
[<<moveTo "event_boss_destroy_psychiatrist_6" 'Watch.' 600>>]
</div>/*#
#desc: destroy psychiatrist session - talk npc_barista into ending self
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;What... what have I...@@" <<=setup.getNpcName("npc_barista","nickname")>> whispers as you realise that <<=setup.getNpcName('npc_work_doctor', 'formal')>> didn't give her a drug, but an antidote.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks up with a vapid grin, speaking in between slurps. "@@.npc_psychiatrist;Come on, <<=setup.getNpcName("npc_barista","nickname")>>, I'll share! Mmm, this cock tastes so good,@@" distracted she sucks some more and looks up at <<=setup.getNpcName('npc_work_doctor', 'formal')>>. "@@.npc_psychiatrist;Would you fuck me with it? I can't believe you've never fucked me... I was so stupid not to become one of your Nurse-assistants!@@"<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>>... no, <<=setup.getNpcName("npc_barista","first")>>; without the "protective" fuzz of drugs your normally chipper friend slumps to the floor and starts weeping. "@@.npc_barista;What did you do...@@"<br>
<br>
"@@.npc_work_doctor;Me?@@" <<He npc_work_doctor>> replies, using one hand on <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> head to force her to deep-throat <<his npc_work_doctor>> cock as she moans with lust. "@@.npc_work_doctor;I didn't do anything — you did this to her — forcing her into the chair, overloading her mind with her most powerful simulations... then drugging her... you turned her into a brainless bimbo slut... and after all she did to save your life...@@"<br>
<br>
"@@.npc_barista;No... no, I didn't, you tricked me, I—@@"<br>
<br>
"@@.npc_work_doctor;Shhh, shhh, what's done is done, you broke <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, she can never go back to what she was, and even if she did, what would she think of you?@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> smiles, not <<his npc_work_doctor>> usual crazed grin but a satisfied smile that reminds you a little of <<=setup.getNpcName('npc_boss', 'formal')>> and makes you take a step back in fear.<br>
<br>
"@@.npc_work_doctor;So, <<=setup.getNpcName("npc_barista","nickname")>> you've been resisting for so long, helped along by <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> foolishness... why keep struggling? Why put yourself through so much pain, when you can just be happy?@@"<br>
<br>
<<He npc_work_doctor>> walks over to the other chair, standing over it as <<he npc_work_doctor>> pulls out a fresh syringe. "@@.npc_work_doctor;Come on, wouldn't you like to be happy?@@"<br>
<br>
"@@.npc_psychiatrist;Come on! We can finally be together! You want that, don't you? We'll both be so much happier as bimbos!@@"<br>
<br>
Scared and alone <<=setup.getNpcName("npc_barista","nickname")>> looks to you for comfort.<br>
<br>
[<<moveTo "event_boss_destroy_psychiatrist_7" 'Tell her to surrender.' 600 "<<set $scene.action='surrender'>>">>]<br>
[<<moveTo "event_boss_destroy_psychiatrist_7" 'Tell her to fight.' 600 "<<set $scene.action='fight'>>">>]<br>
[<<moveTo "event_boss_destroy_psychiatrist_7" 'Remain silent.' 600 "<<set $scene.action='silent'>>">>]
</div>/*#
#desc: destroy psychiatrist session - npc_work_doctor takes away
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !State.hasPlayed("event_ai_boss_query") && !State.hasPlayed("event_destroy_ai_5")>>
<<addEvent 'ai_boss_query'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_endless_hypnosis_1") && !$currentTasks.psychiatrist_endless_hypnosis_1.finished>>
<<deleteMember $currentTasks 'psychiatrist_endless_hypnosis_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_boiless_review") && !$currentTasks.psychiatrist_boiless_review.finished>>
<<deleteMember $currentTasks 'psychiatrist_boiless_review'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_boiless_review_failthrough") && !$currentTasks.psychiatrist_boiless_review_failthrough.finished>>
<<deleteMember $currentTasks 'psychiatrist_boiless_review_failthrough'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_cure") && !$currentTasks.psychiatrist_cure.finished>>
<<deleteMember $currentTasks 'psychiatrist_cure'>>
<</if>>
<<if $currentTasks.hasOwnProperty("barista_cure") && !$currentTasks.barista_cure.finished>>
<<deleteMember $currentTasks 'barista_cure'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_technician") && !$currentTasks.psychiatrist_couples_technician.finished>>
<<deleteMember $currentTasks 'psychiatrist_couples_technician'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_landlord") && !$currentTasks.psychiatrist_couples_landlord.finished>>
<<deleteMember $currentTasks 'psychiatrist_couples_landlord'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_admin") && !$currentTasks.psychiatrist_couples_admin.finished>>
<<deleteMember $currentTasks 'psychiatrist_couples_admin'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_landlord") && !$currentTasks.psychiatrist_couples_landlord.finished>>
<<deleteMember $currentTasks 'psychiatrist_couples_landlord'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_camgirl_strict") && !$currentTasks.task_camgirl_strict.finished>>
<<deleteMember $currentTasks 'task_camgirl_strict'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_endless_apointment_1") && !$currentTasks.psychiatrist_endless_apointment_1.finished>>
<<deleteMember $currentTasks 'psychiatrist_endless_apointment_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_apointment_1") && !$currentTasks.psychiatrist_apointment_1.finished>>
<<deleteMember $currentTasks 'psychiatrist_apointment_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_psych_dinner") && !$currentTasks.task_psych_dinner.finished>>
<<deleteMember $currentTasks 'task_psych_dinner'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_barista_mall") && !$currentTasks.task_barista_mall.finished>>
<<deleteMember $currentTasks 'task_barista_mall'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You look down at <<=setup.getNpcName("npc_barista","first")>>... scared, pitiful... miserable and small compared to her <<=setup.getNpcName("npc_barista","nickname")>> persona.
<<switch $scene.action>>
<<case 'surrender'>>
You offer her a hand in comfort, helping her to her feet... and then guiding her over to the empty chair.<br>
<br>
"@@.npc_barista;Are you, are you sure?@@" She asks and you nod. Her tension dissipates with each restraint you lock onto her. With a final glance towards <<=setup.getNpcName('npc_psychiatrist', 'formal')>> noisily and eagerly sucking on <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> <<getWordPenis "npc_work_doctor">> she opens her mouth for the gag.<br>
<br>
"@@.npc_work_doctor;Well done,@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> states with a grin as <<he npc_work_doctor>> pulls the VR masks into place and injects <<=setup.getNpcName("npc_barista","nickname")>> with a fresh dose for one of <<his npc_work_doctor>> concoctions.
<<case 'fight'>>
You tell <<=setup.getNpcName("npc_barista","first")>> to fight.<br>
<br>
Steeling herself she pushes back to her feet, and then charges screaming at <<=setup.getNpcName('npc_work_doctor', 'formal')>>.<br>
<br>
With her hands cuffed behind her back <<=setup.getNpcName("npc_barista","first")>> had no real chance, and <<=setup.getNpcName('npc_work_doctor', 'formal')>> easily steps to the side before forcing her onto the empty chair and binding her in place.<br>
<br>
As futile as it may be, <<=setup.getNpcName("npc_barista","first")>> continues to thrash, screaming and trying to bite until <<he npc_work_doctor>> shoves a gag between her lips and finishes binding her limbs. The whole time <<=setup.getNpcName('npc_psychiatrist', 'formal')>> alternates between telling her friend to stop resisting... and begging to have a cock to suck.<br>
<br>
A prick of the needle and the rage in <<=ps(setup.getNpcName("npc_barista","first"))>> eyes fades, <<=setup.getNpcName("npc_barista","nickname")>> returning just in time for the VR mask to be brought down. <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> requests are answered in kind and soon both women are "enjoying" their virtual simulations.<br>
<br>
"@@.npc_work_doctor;An interesting tactic... encouraging rebellion to show the futility of such. I suppose it worked.@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> states as <<he npc_work_doctor>> grins back at <<his npc_work_doctor>> two victims.
<<case 'silent'>>
You remain silent... which seems to crush the last bit of <<=ps(setup.getNpcName("npc_barista","first"))>> resistance. Eyes down-turned she slowly rises to her feet, walking over to the empty chair and lying back, mouth open and ready for the gag.<br>
<br>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> smirks in triumph, binding <<=setup.getNpcName("npc_barista","first")>> without resistance before attaching the VR headset to both women and injecting <<=setup.getNpcName("npc_barista","nickname")>> with her drug.<br>
<br>
"@@.npc_work_doctor;Well done. It will be good to no longer worry about those two.@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> states as <<he npc_work_doctor>> grins back at <<his npc_work_doctor>> two victims.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_work_doctor;Now, as a reward, well...@@" <<He npc_work_doctor>> gestures towards <<his npc_work_doctor>> still-hard cock. Dutifully you fall to your knees and finish <<him npc_work_doctor>> off. <<He npc_work_doctor>> <<if $fetish.cum>>cums<<else>>gets off<</if>> in moments, to the chorus of gagged ecstatic moans of <<=setup.getNpcName("npc_barista","nickname")>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> — united in drugged, bimbofied surrender.<br>
<br>
You clean your lips and curtsy as <<=setup.getNpcName('npc_work_doctor', 'formal')>> waves you off.<br>
<br>
[<<moveTo "room_citymap" "Leave." 60>>]
</div>/*#
#desc: report psychiatrist destruction
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You report back to <<=setup.getNpcName("npc_boss","formal")>> that you have dealt with <<=setup.getNpcName("npc_barista","nickname")>> and <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
<br>
"@@.npc_boss;I heard, something of a loss to sacrifice <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> knowledge, but she was always going to be trouble. Congratulations to you! Moving past the need for therapy must be quite the relief. So, what do you have for me next?@@"<br>
<br>
<<include "bossBetrayals">>
</div>/*#
#desc: remove npc_manager tattoo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'normal' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_STRANGER>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $player.tattoos.belly = "">>
<</if>>
<<set $player.location to "Basement Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss","formal")>> takes you down to the basement tattoo parlour where you strip and are strapped into position.<br>
<br>
"@@.npc_boss;So, I should warn you that removing this style of tattoo is... quite painful, but you are ready to endure that for me, aren't you?@@"<br>
<br>
You look up at <<him npc_boss>> in adoration wondering why <<he npc_boss>> would even ask? You would do anything for <<him npc_boss>>... and you have...<br>
<br>
You nod and <<=setup.getNpcName("npc_boss","formal")>> grins, stepping out of the way as the robotic arm swings into position and fire blazes across your belly.<br>
<br>
You try to draw strength from <<=setup.getNpcName("npc_boss","formal")>> unmoving expression, but the agony is like nothing you have felt before and you find yourself screaming in agony, wishing it would end...<br>
<br>
[<<moveTo "event_boss_missions_manager_tattoo_2" 'Continue.' 600>>]
</div>/*#
#desc: npc_boss tattoo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.tattoos.belly = "boss_own">>
<</if>>
<<set $player.location to "Basement Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You might have fainted in pain... you aren't certain, but the heat above your crotch shifts, the robotic arm pulling away as your restraints unlock.<br>
<br>
You sit up, looking down to see no trace of <<=ps(setup.getNpcName("npc_manager","formal"))>> mark and in its place a stylised pawn...<br>
<br>
You gasp in awe, the pain of a minute ago forgotten in light of this mark of ownership.<br>
<br>
You start to rise only for <<=setup.getNpcName("npc_boss","formal")>> to turn and lead the way back to the elevator.<br>
<br>
"@@.npc_boss;There will be time for celebration later. You have one final task to perform, to prove yourself to me.@@"<br>
<br>
You pull your clothes back on as you hurry to keep up, desperate to do whatever you must to affirm <<his npc_boss>> trust.<br>
<br>
[<<moveTo "event_boss_missions_manager_1" 'Continue.' 600>>]
</div>/*#
#desc: npc_boss gives instructions for destroying manager
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "heavy_restraints">>
<<addItem "special_poison">>
<<addTaskById "task_destroy_manager">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
"@@.npc_boss;Bringing <<=setup.getNpcName("npc_manager","formal")>> to heel will be your final task. You must prove that merely being your first owner has not left behind any lingering loyalty... as well as deal with the fact that she has become quite the thorn in my side.@@"<br>
<br>
You assure <<=setup.getNpcName("npc_boss","formal")>> that everything you are is devoted to <<him npc_boss>> alone and <<he npc_boss>> smiles. "@@.npc_boss;Of course it is, now, for what you will need to do...@@"<br>
<br>
<<He npc_boss>> hands you a small vial, and a pair of very heavy duty metal ankle cuffs.<br>
<br>
"@@.npc_boss;That first is a special formulation — merely pour it on her food, it should get through even <<=ps(setup.getNpcName("npc_manager","formal"))>> defences. Then wait and, when you have the opportunity, well... use the cuffs. Security will take care of things from there.@@"<br>
<br>
You nod, waiting to see if <<he npc_boss>> has any more detailed instructions but, for what you hope will be the final time, <<he npc_boss>> dismisses you from <<his npc_boss>> office.<br>
<br>
[<<moveTo "company_lobby" 'Leave <<his npc_boss>> office and return to the lobby.' 180>>]
</div>/*#
#desc: destroy manager: dose food
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory($player.work.foodID) && setup.checkItemInInventory("heavy_restraints")>>
<<deleteItem "special_poison">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dosefood.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory($player.work.foodID) && setup.checkItemInInventory("heavy_restraints")>>
You carefully pour the drug over <<=ps(setup.getNpcName("npc_manager","formal"))>> food, it soaks in leaving behind neither odour nor colour.<br>
<br>
[<<moveTo "event_boss_destroy_manager_dose_2" 'Deliver the meal.' 180>>]
<<else>>
<<if setup.checkItemTagCarried("lunch")>>
You are about to poison <<=ps(setup.getNpcName("npc_manager","formal"))>> meal... when you
<<if setup.checkItemInInventory($player.work.foodID)>>
remember that you did not bring the cuffs gave you to work today.<br>
<br>
<<printThought 'I need to follow the plan, even drugged <<=setup.getNpcName("npc_manager","formal")>> is dangerous and <<=setup.getNpcName("npc_boss","formal")>> gave me those restraints for a reason.'>>
<<else>>
realise that you have purchased the wrong thing.<br>
<br>
<<printThought "No... if she's going to eat it I need to fulfill her order correctly. I'll have to try some other day.">>
<</if>>
<<else>>
You do not have food to dose with the specialised drug.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Put things away." 60 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: destroy manager: deliver dosed food
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include checkFoodDelivery>>
<<addWorkEvent 'manager_destroy'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You deliver <<=ps(setup.getNpcName('npc_manager', 'formal'))>> meal and she smiles up at you. "@@.npc_manager;Wonderful,@@" she states, checking the order and immediately digging in. "@@.npc_manager;Ah, but I was ravenous! Thank you, again, for all that you do around here... I struggle to think how I got by without you.@@"<br>
<br>
You curtsy in reply, smiling as you watch her eat each drugged bite, all according to your <<=ps(setup.getNpcName('npc_boss', '<<Master npc_boss>>'))>> plan...<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" 'Return to your desk.' 180>>]
</div>/*#
#desc: destroy manager: manager retuns from meeting
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at you and motions for you to follow.<br>
<br>
"@@.npc_manager;Come, I, uh... have a meeting that I need to get to.@@" She pauses and shakes her head "@@.npc_manager;I'm sorry, my head is a bit... foggy. Probably nothing, come along, we mustn't be late.@@"<br>
<br>
You nod and follow.<br>
<br>
<<printThought "She never uses contractions... that must be that drug...">><br>
<br>
[<<moveTo "event_boss_destroy_manager_2" 'Follow her.' 1800>>]
</div>/*#
#desc: destroy manager: manager off before meeting
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You accompany <<=setup.getNpcName('npc_manager', 'formal')>> to the meeting as she seems to be fraying more and more; politely declining other managers' attempts to speak with her as she heads straight for her seat where she appears to be concentrating on reviewing her notes.<br>
<br>
You start to ask if you can help but she waves you off in obvious frustration. The meeting starts not long after.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> seems to barely pay attention to the meeting, reading and re-reading her notes the whole time, only for her expression to seem more and more confused with each repetition.<br>
<br>
She almost jumps when her name is called. "@@.npc_boss;And now <<=setup.getNpcName("npc_manager","other")>> is here to update us on the state of employee merging.@@"<br>
<br>
[<<moveTo "event_boss_destroy_manager_3" 'Sit and watch.' 1800>>]
</div>/*#
#desc: destroy manager: manager botches presentation
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> doesn't even notice that she was mentioned and you nudge her just as <<=setup.getNpcName("npc_boss","formal")>> repeats. "@@.npc_boss;<<=setup.getNpcName("npc_manager","other")>>? You had a status report for us?@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> slowly rises to her feet, looking almost feverish as she braces against the table. "@@.npc_manager;Yes, I, um... the new influx of employees has, of course, presented, um... difficulties but despite that we have shown a...@@" she looks down, flipping through her notes for several seconds before continuing "@@.npc_manager;Modest, um improvement in production— er, productivity, since the, uh, new retraining procedures have, like... started...@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> shakes <<his npc_boss>> head in disappointment. "@@.npc_boss;Is there something wrong with you, <<=setup.getNpcName('npc_manager', 'other')>>? Did you prepare for this meeting at all?@@"<br>
<br>
"@@.npc_manager;I did, I, just, my notes are...@@" <<=setup.getNpcName('npc_manager', 'formal')>> fumbles her papers and they scatter across the table.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> sighs and addresses the board. "@@.npc_boss;I apologise for this... lack of professionalism. I am afraid that <<=setup.getNpcName('npc_manager', 'other')>> has been working VERY hard of late, and well...@@" <<He npc_boss>> looks at <<=setup.getNpcName('npc_manager', 'formal')>> as she winces. "@@.npc_boss;Return to your office — I will be by later.@@"<br>
<br>
Blushing in humiliation <<=setup.getNpcName('npc_manager', 'formal')>> rushes out of the room and you hurry to keep up... fixing the elevator when she first presses the button for your old floor <<=$player.work.floorNumber>>.<br>
<br>
[<<moveTo "event_boss_destroy_manager_4" 'Continue.' 600>>]
</div>/*#
#desc: destroy manager: manager returns from meeting
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Back in the home territory of her office <<=setup.getNpcName('npc_manager', 'formal')>> gets something of a second wind; still appearing somewhat panicked, but a bit less confused.<br>
<br>
"@@.npc_manager;Goddess, what is wrong with me. I just, I can't seem to think, everything is confused and...@@"<br>
<br>
You recall the other item <<=setup.getNpcName('npc_boss', 'formal')>> gave you and ask if a foot massage might help her calm down?<br>
<br>
"@@.npc_manager;A foot massage—@@" Her voice raises in anger before she checks herself. "@@.npc_manager;Yes, a massage... yes, that might help, help me relax, focus... be ready for <<=setup.getNpcName('npc_boss', 'formal')>>...@@"<br>
<br>
She stumbles into her office and you quietly collect the cuffs before following. "@@.npc_manager;Damn that bastard — so damned smug when I was dying in front of the board... I bet <<he npc_boss>>'s behind this whole thing!@@"<br>
<br>
<<printThought "If you only knew...">> You think to yourself as you quietly crawl under her desk and start to massage, waiting for your moment to clap on the irons...<br>
<br>
[<<moveTo "event_boss_destroy_manager_5" 'Continue.' 1800>>]
</div>/*#
#desc: destroy manager: massage manager feet
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You do your best to massage <<=ps(setup.getNpcName("npc_manager","formal"))>> even as she keeps shifting them around in agitation.<br>
<br>
After several minutes you hear the door and she rises, her voice uneven as she greets her visitor. "@@.npc_manager;Ah, <<=setup.getNpcName("npc_boss","formal")>> you're here... of course you're here, you said you were going to visit, um, welcome. I'm, uh, sorry for earlier but—@@"<br>
<br>
"@@.npc_boss;That will be sufficient,@@" <<=setup.getNpcName("npc_boss","formal")>> states, <<his npc_boss>> cold confidence the diametric opposite of her nervous chatter. "@@.npc_boss;Your presentation today was... quite embarrassing. I was able to smooth things out with the board. Unfortunately, well... they have demanded your demotion.@@"<br>
<br>
"@@.npc_manager;What, but I—@@" <<=setup.getNpcName("npc_manager","formal")>> replies in confusion.<br>
<br>
"@@.npc_boss;I know, I know, it seems abrupt but... well, you know how many of them are new, with all the mergers that have been going on. We need to show strength at all times if we are going to continue to forge ahead as a united company. Thus, they have decided to install someone that they have more confidence in. I think it would be best if you took a little sabbatical, get your feet back together and such...@@"<br>
<br>
<<printThought "That has to be my cue...">><br>
<br>
[<<moveTo "event_boss_destroy_manager_6" 'Snap on the cuffs.' 600>>]
</div>/*#
#desc: destroy manager: manager loses fight
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_destroy_manager' $now true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You snap the heavy cuffs around <<=ps(setup.getNpcName("npc_manager","formal"))>> ankles just as you hear the door open once again.<br>
<br>
"@@.npc_manager;What in the—@@" <<=setup.getNpcName("npc_manager","formal")>> remarks as she tries to take a step backwards only to come up short against the hobble chain and fall back into her chair.<br>
<br>
"@@.npc_boss;Really, this is for the best,@@" <<=setup.getNpcName("npc_boss","formal")>> intones as half a dozen pairs of boots storm into the room.<br>
<br>
"@@.npc_manager;You <<if $npc_boss.fem>>bitch<<else>>bastard<</if>>!@@" <<=setup.getNpcName("npc_manager","formal")>> shouts, somehow back to her feet, even as she remains cuffed.<br>
<br>
You pull back under the desk in fear as security guards come for <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
You see at least two tazer wires impact her but <<=setup.getNpcName("npc_manager","formal")>> barely even flinches, literally hurling the first <<man>> that approaches her across the room as she tries to advance...<br>
<br>
Whatever mental fog she was suffering under is replaced by pure rage as she tries to move towards the door, and <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
You hear the crunch of bone and cries of pain as she mangles several more security guards, but between the drugs, the hobbles, and just being outnumbered she is at too much of a disadvantage, eventually knocked to the ground and then swarmed.<br>
<br>
By the time things quiet down and you crawl out you can barely see <<=setup.getNpcName("npc_manager","formal")>> under the pile — two massive <<men>> on each arm barely holding her down while another three sit on her back, the wires of half a dozen tazers still piercing her skin, even as the attached devices lie spent on the floor.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles down at her.<br>
<br>
"@@.npc_boss;You really should have just fallen in line, you know? But, alas...@@" <<He npc_boss>> chuckles, and then motions for you to approach. You hurry over to obediently stand next to <<him npc_boss>> as <<=setup.getNpcName("npc_manager","formal")>> looks on in shock. "@@.npc_boss;Again we see there is nothing you can possess which I cannot take away.@@"<br>
<br>
This seems to be the final straw, <<=ps(setup.getNpcName("npc_manager","formal"))>> face falling, her expression turning to despair as she goes limp.<br>
<br>
It is hard to tell in the commotion of the guards securing her more thoroughly, but you would swear you heard weeping.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> is taken away, leaving you and <<=setup.getNpcName("npc_boss","formal")>> alone.<br>
<br>
"@@.npc_boss;Now,@@" <<he npc_boss>> says with a smile. "@@.npc_boss;You are truly, fully... mine.@@"<br>
<br>
[<<moveTo "event_boss_ending_1" 'Your heart skips a beat.' 4320>>]
</div>/*#
#desc: intro
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.chastity = setup.checkItemTypeWorn("cage")>>
<<removeAllClothing>>
<<set $wornClothing = {}>>
<<set $inventory = {}>>
<<set $currentTasks = {}>>
<<set $events = {}>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Side Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sideroom.png" setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
After <<=setup.getNpcName("npc_manager","formal")>> was taken away things all seemed to happen at once. First, and best, was that <<=setup.getNpcName("npc_boss","formal")>> brought you back to <<his npc_boss>> office and, after tearing your clothes off, fucked you like you have never been fucked before, <<his npc_boss>> perfect <<getWordPenis "npc_boss">> pounding you in every hole you had, marking them, and you, as <<his npc_boss>>.<br>
<br>
The pleasure of being the full focus of <<his npc_boss>> energy eventually proved too much, and you passed out, waking now some time later to <<=setup.getNpcName("npc_secretary","nickname")>> helping you clean up.<br>
<br>
As you step out of the large private shower you feel strange as you realise that you are COMPLETELY naked — wearing neither clothing, nor chastity<<if $player.sec_style.submission.collar != "">> nor collar<</if>>.<br>
<br>
<<=setup.getNpcName("npc_secretary","nickname")>> gestures towards a sheet-covered mannequin and then leaves you alone to change.<br>
<br>
[<<moveTo "event_boss_ending_2" 'Reveal the outfit.' 600>>]
</div>/*#
#desc: npc_ai offers alternative
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("smart") > 15>>
<<addItemSet "money_bride">>
<<wearItemSet "money_bride" true>>
<<elseif setup.getTotalValue("smart") > 5>>
<<addItemSet 'female_office'>>
<<wearItemSet 'female_office' true>>
<<else>>
<<addItem 'slave_chains'>>
<<wearItem 'slave_chains' true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Side Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sideroom.png" setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("smart") > 15>>
Your heart catches in your throat as you lay eyes on a wedding dress...
<<elseif setup.getTotalValue("smart") > 5>>
Before you is a familiar blouse and pencil skirt...<br>
<br>
<<printThought "The more things change...">>
<<else>>
Draped over the mannequin is a network of steel chains that can be nothing save the attire of a slave...
<</if>>
<br><br>
Before you can start changing a holographic figure appears before you. The face was once <<=ps(setup.getNpcName("npc_ai","first"))>> but the expression is harsh, not the comforting human figure but a floating head that glows and pulses as if it were the central node of a vast electronic web.<br>
<br>
"@@.npc_ai;<<uc "Hello, unit ">><<uc $player.first_name>><<uc ", it has been some time since your... betrayal.">>@@" She grins, a smile that bears not a trace of warmth "@@.npc_ai;<<uc "that is in the past, and right now you have a final chance to choose your future: Become the property of a <<if $npc_boss.fem>>woman<<else>>man<</if>> mad with power... or join me once again, and submit to the perfection of the digital. You will find a syringe inside the mannequin. When the time is right, inject your old manager with it.">>@@"<br>
<br>
The figure fades, leaving you alone with the outfit and a final choice as to your future...<br>
<br>
[<<moveTo "event_boss_ending_3" 'Put on the outfit, and take the syringe with you.' 600 "<<addItem 'ai_syringe'>>">>]
[<<moveTo "event_boss_ending_3" 'Put on the outfit, and alert <<=setup.getNpcName("npc_boss","formal")>> to this plot.' 600>>]
</div>/*#
#desc: npc_boss ending
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "wedding_gag">>
<<wearItem "wedding_gag" true>>
<<if setup.getTotalValue("smart") > 15>>
<<addItem "wedding_ring_large">>
<<wearItem "wedding_ring_large" true>>
<</if>>
<<if $scene.chastity>>
<<if $player.flags.chastity_style == "cage">>
<<set _cage = "chastity_cage_tiny">>
<<else>>
<<set _cage = "chastity_belt_flat">>
<</if>>
<<addItem _cage>>
<<wearItem _cage true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_manager", "npc_manager_bound_standing")>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('ai_syringe')>>
You get changed, and find the syringe, the small needle perfectly sized for you to conceal in your hand. You take a deep breath.
<<else>>
You get changed, but leave the syringe behind.
<</if>>
<<=setup.getNpcName("npc_secretary","nickname")>> returns for you, but she applys a gag before you can get a word in edgewise.<br>
<br>
You walk out of the room to find yourself in <<=ps(setup.getNpcName("npc_boss","formal"))>> office...
<<if setup.getTotalValue("smart") > 15>>
<<if $npc_admin.flags.sissified>><<=setup.getNpcName("npc_admin","nickname")>><<else>><<=setup.getNpcName("npc_admin","first")>><</if>>, <<=setup.getNpcName("npc_psychiatrist","formal")>> and others of your betrayed friends are standing witness to your wedding.<br>
<br>
In a perverse parody <<=setup.getNpcName("npc_manager","formal")>>, bound to a post, cuffed and gagged, appears to be standing in as your maid of honour.<br>
<br>
At the centre of it all stands <<=setup.getNpcName("npc_boss","formal")>>, your <<if $npc_boss.fem>>wife<<else>>husband<</if>> to be... waiting for you.<br>
<br>
You put one foot in front of the other as you make your way down the "aisle" towards <<=setup.getNpcName("npc_boss","formal")>>, standing in front of <<his npc_boss>> desk... <<his npc_boss>> seat of power...<br>
<br>
The ceremony itself passes in a blur, the combination of <<=ps(setup.getNpcName("npc_boss","formal"))>> proximity and the feel of <<his npc_boss>> ring... and your new collar... <<if setup.checkItemTypeWorn("cage")>>and your brand new chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>>, <</if>>locked onto you has you almost trembling in submissive euphoria.
<<elseif setup.getTotalValue("smart") > 5>>
You walk out of the room to find <<if $npc_admin.flags.sissified>><<=setup.getNpcName("npc_admin","nickname")>><<else>><<=setup.getNpcName("npc_admin","first")>><</if>>, <<=setup.getNpcName("npc_psychiatrist","formal")>> and others of your betrayed friends standing in wait as if for a meeting.<br>
<br>
Near the front of the room <<=setup.getNpcName("npc_manager","formal")>> is bound to a post. Cuffed and gagged, she is helpless, but clearly aware of what's going on.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles at the assembled guests... before going through a promotion ceremony to re-assign you from <<=setup.getNpcName("npc_manager","formal")>> to <<him npc_boss>>self as she glares on in gagged silence.<br>
<br>
As <<=setup.getNpcName("npc_boss","formal")>> speaks <<he npc_boss>> locks <<if setup.checkItemTypeWorn("cage")>>first a collar, and then a new chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>> onto you<<else>>a collar around your neck<</if>>
<<else>>
You crawl out of the room to find <<if $npc_admin.flags.sissified>><<=setup.getNpcName("npc_admin","nickname")>><<else>><<=setup.getNpcName("npc_admin","first")>><</if>>, <<=setup.getNpcName("npc_psychiatrist","formal")>> and others of your betrayed friends standing in wait as if for a meeting.<br>
<br>
Near the front of the room <<=setup.getNpcName("npc_manager","formal")>> is bound to a post. Cuffed and gagged, she is helpless, but clearly aware of what's going on.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles at the assembled guests... before going through a mock "ceremony" to transfer ownership of yourself from <<=setup.getNpcName("npc_manager","formal")>> to <<him npc_boss>>self as she glares on in gagged silence.<br>
<br>
Your strappy ensemble is further augmented with a collar <<if setup.checkItemTypeWorn("cage")>>and a chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>>, each one locking onto you securely<<else>>locked securely around your throat<</if>>.
<</if>>
<br><br>
<<=ps(setup.getNpcName("npc_boss","formal"))>> dominant aura feels even stronger than ever before, you have given up everything for <<him npc_boss>>, your friends looking on with blank smiles or, in the case of <<=setup.getNpcName("npc_manager","formal")>>, drug-blunted rage.<br>
<br>
With a triumphant grin <<=setup.getNpcName("npc_boss","formal")>> turns to the crowd and begins monologuing.
<<if setup.checkItemInInventory('ai_syringe')>>
You glance to the side — <<=setup.getNpcName("npc_manager","formal")>> is barely more than an arms-reach away...<br>
<br>
<<printThought "This is my chance...">><br>
<br>
[<<moveTo "event_boss_ending_ai_1" 'Side with <<=setup.getNpcName("npc_ai","first")>> and inject <<=setup.getNpcName("npc_manager","formal")>>.' 600>>]<br>
[<<moveTo "event_boss_ending_4" 'Side with <<=setup.getNpcName("npc_boss","formal")>>.' 600>>]
<<else>>
You have no choices left, and you listen, increasingly entranced by <<his npc_boss>> words...<br>
<br>
[<<moveTo "event_boss_ending_4" 'Finish the ceremony.' 600>>]
<</if>>
</div>/*#
#desc: npc_boss ending
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
The ceremony concludes and your "guests" leave. Your gag is removed and, en route to putting your lips to use on <<his npc_boss>> <<getWordPenis "npc_boss">>, you inform <<him npc_boss>> of <<=ps(setup.getNpcName("npc_ai","other"))>> plot. <<He npc_boss>> chuckles in amusement. "@@.npc_boss;Merely one final test of loyalty — which you have passed. Now, take your reward.@@"<br>
<br>
<<if setup.getTotalValue("smart") > 15>>
"@@.pc;Yes, my love,@@" you reply as you put your lips to work.
<<elseif setup.getTotalValue("smart") > 10>>
"@@.pc;Yes, <<=setup.getNpcName("npc_boss","formal")>>,@@"
<<elseif setup.getTotalValue("smart") > 5>>
"@@.pc;Yes, <<sir npc_boss>>,@@"
<<else>>
"@@.pc;Yes, <<Master npc_boss>>,@@"
<</if>>
you reply as you put your lips to work.<br>
<br>
[<<moveTo "event_boss_ending_5" 'Your new life...' 600>>]
</div>/*#
#desc: npc_boss ending
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("smart") >= 20>>
<<set $gameOver = 'evil_boss_power'>>
<<elseif setup.getTotalValue("smart") > 15>>
<<set $gameOver = 'evil_boss_wife'>>
<<elseif setup.getTotalValue("smart") > 10>>
<<set $gameOver = 'evil_boss_mistress'>>
<<elseif setup.getTotalValue("smart") > 5>>
<<set $gameOver = 'evil_boss_secretary'>>
<<else>>
<<set $gameOver = 'evil_boss_slave'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<include playerMenuLocked>>
<<initRoom>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("smart") >= 20>>
They say that, behind every great <<if $npc_boss.fem>>leader<<else>>man<</if>>, there is a woman... well, in the case of <<=setup.getNpcName("npc_boss","formal")>>, that woman is you.<br>
<br>
Loyal, vicious, and secretly even smarter than your <<if $npc_boss.fem>>wife<<else>>husband<</if>> you help steer Social Interaction Service Syndicate Inc. to world-dominating heights. Ever obedient and submissive you are the power behind the throne — <<=ps(setup.getNpcName("npc_boss","formal"))>> colleagues, and even your wonderful <<if $npc_boss.fem>>Wife-Domina<<else>>Husband-Master<</if>> <<=setup.getNpcName("npc_boss","formal")>> <<him npc_boss>>self never realising that the beautiful trophy-wife ever at <<his npc_boss>> side is steadily on her way to becoming the most powerful person on the planet, with a smile on your face, a slave collar around your neck, and <<his npc_boss>> hand possessively on your ass.
<<elseif setup.getTotalValue("smart") > 15>>
They say that, behind every great <<if $npc_boss.fem>>leader<<else>>man<</if>>, there is a woman... well, in the case of <<=setup.getNpcName("npc_boss","formal")>>, that woman is you.<br>
<br>
Loyal and devoted, you help your new <<if $npc_boss.fem>>wife<<else>>husband<</if>> in every way you can — helping <<him npc_boss>> relax, seduce rivals, service allies... whatever your <<if $npc_boss.fem>>Wife-Domina<<else>>Husband-Master<</if>> needs, you are there to provide.<br>
<br>
With <<=setup.getNpcName("npc_boss","formal")>> at the helm, and nobody left to oppose <<him npc_boss>>, Social Interaction Service Syndicate Inc. rises to ever loftier heights. All the while you stand at <<his npc_boss>> side; a smile on your face, and <<his npc_boss>> hand possessively on your ass, and <<his npc_boss>> collar locked around your throat, just as you dreamed.
<<elseif setup.getTotalValue("smart") > 10>>
They say that, behind every great <<if $npc_boss.fem>>leader<<else>>man<</if>>, there is a woman... well, in the case of <<=setup.getNpcName("npc_boss","formal")>>, that woman is you.<br>
<br>
Loyal and devoted you are <<his npc_boss>> perfect <<if $fetish.sissy>>SISSI <</if>>Secretary; surpassing your predecessor in skill and devotion as you aid your <<Master npc_boss>> in any manner <<he npc_boss>> requires.<br>
<br>
With <<=setup.getNpcName("npc_boss","formal")>> at the helm, and nobody left to oppose <<him npc_boss>>, Social Interaction Service Syndicate Inc. rises to ever loftier heights. Though you are never <<his npc_boss>> wife, you remain <<his npc_boss>> confidant, <<his npc_boss>> most loyal ally, sent to seduce enemies and reward allies, but always returning to crawl under <<his npc_boss>> desk where you belong.
<<elseif setup.getTotalValue("smart") > 5>>
On the surface your new job changes little; certainly you are now working beside another Secretary, but your duties are much the same — but the rewards...<br>
<br>
Loyal and devoted you are <<=ps(setup.getNpcName("npc_boss","formal"))>> perfect <<if $fetish.sissy>>SISSI <</if>>Secretary; there to help in every way you can as <<he npc_boss>> guides Social Interaction Service Syndicate Inc. to ever loftier heights. Though you never become more than <<his npc_boss>> assistant, you are <<his npc_boss>> most loyal ally, sent to seduce enemies and reward allies, but always returning to crawl under <<his npc_boss>> desk where you belong.
<<else>>
With your bimbo brain you were always fated to be a slave — in function, if not in name. But a slave is defined by their <<Master npc_boss>> and your <<Master npc_boss>> is on the path to becoming the most powerful <<if $npc_boss.fem>>person<<else>>man<</if>> in the world.<br>
<br>
Challenges of work are soon put aside as you embrace your new role; as <<his npc_boss>> most loyal servant, there to seduce <<his npc_boss>> enemies or reward <<his npc_boss>> allies, but always returning to crawl under <<his npc_boss>> desk where you belong.
<</if>>
<br><br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
</div>/*#
#desc: side with npc_ai
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'ai_syringe'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_manager", "npc_manager_bound_standing")>>
<div id="invframe" class="scrolltext">
Clearly confident in <<his npc_boss>> triumph, <<=ps(setup.getNpcName("npc_boss","formal"))>>, focus is diverted and you make your move, springing towards <<=setup.getNpcName("npc_manager","formal")>> and injecting her with the needle <<=setup.getNpcName("npc_ai","first")>> gave you.<br>
<br>
The movement catches <<=ps(setup.getNpcName("npc_boss","formal"))>> attention and <<he npc_boss>> turns in surprise. Seeing you holding on to <<=setup.getNpcName("npc_manager","formal")>>, <<=setup.getNpcName("npc_boss","formal")>> chuckles in amusement. "@@.npc_boss;Foolish. She cannot help you now... and to think I trusted you...@@"<br>
<br>
<<printThought "Was this all just a trick?">><br>
<br>
You look up, <<=setup.getNpcName("npc_manager","formal")>> is obviously straining, but she is so securely bound... what have you foolishly done?<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> shakes <<his npc_boss>> head as <<he npc_boss>> steps towards you, pulling you to your feet. "@@.npc_boss;Foolish, foolish thing. You could have been by my side as I ruled the world but now... now you—@@"<br>
<br>
The word freezes in <<his npc_boss>> throat as <<=setup.getNpcName("npc_manager","formal")>> grabs <<him npc_boss>> by the neck.<br>
<br>
For the first time ever you see fear in <<=ps(setup.getNpcName("npc_boss","formal"))>> eyes, and rage beyond reasons in <<=ps(setup.getNpcName("npc_manager","formal"))>>.<br>
<br>
"@@.npc_boss;Guards, guards!@@" <<=setup.getNpcName("npc_boss","formal")>> shouts in panic as <<he npc_boss>> manages to twist away from the one-handed grip, stumbling further into the office and scrambling away as <<=setup.getNpcName("npc_manager","formal")>> takes a few additional moments to pry and rip herself free of the other restraints.<br>
<br>
The security guards had been standing near the elevator, but they show a moment of hesitation as they move forward, perhaps recalling how dangerous apprehending <<=setup.getNpcName("npc_manager","formal")>> was the first time.<br>
<br>
"@@.npc_boss;Just shoot her!@@" <<=setup.getNpcName("npc_boss","formal")>> screams as <<=setup.getNpcName("npc_manager","formal")>> steps towards <<him npc_boss>> and <<he npc_boss>> comes to <<his npc_boss>> feet, back against one of the floor to ceiling windows that ring the floor-spanning office.<br>
<br>
The guards are pulling out their weapons, but <<=setup.getNpcName("npc_manager","formal")>> is already in motion, running straight towards <<=setup.getNpcName("npc_boss","formal")>> faster than any human...<br>
<br>
<<printThought "She's going too fast...">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> spears into <<=setup.getNpcName("npc_boss","formal")>> and keeps going, the force of her impact shattering the thick glass. The two of them hang in the air for a moment... and then fall out of sight.<br>
<br>
You are the first to react, running to the edge to catch a final glimpse of the pair disappearing through the clouds that hang like a permanent haze around the mega-skyscrapers of the city. The hole in the clouds lasts for a but a moment, the ground so far below you do not even hear the impact.<br>
<br>
[<<moveTo "event_boss_ending_ai_2" 'What happens now?' 600>>]
</div>/*#
#desc: npc_ai takes control
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
You stare over the edge in shock, <<=setup.getNpcName("npc_manager","formal")>> and <<=setup.getNpcName("npc_boss","formal")>> both; the architects of your current fate... are gone.<br>
<br>
After the initial stunned silence there is a flurry of commotion behind you, but by the time you turn back all is order once again, <<=setup.getNpcName("npc_ai","first")>>, in her holographic form looming over the room, the guards and guests, all bowed before her.<br>
<br>
"@@.npc_ai;<<uc "Congratulations, unit ">><<uc $player.first_name>><<uc ". With this act you have proven your worth. Kneel, and join my new order.">>@@"<br>
<br>
[<<moveTo "event_boss_ending_ai_3" 'Kneel.' 600>>]
</div>/*#
#desc: npc_ai shodan ending
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<if setup.changedRoom()>>
<<set $gameOver = 'evil_ai'>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai") setup.charImage("npc_manager","npc_manager_cyborg")>>
<div id="invframe" class="scrolltext">
The <<=setup.getNpcName("npc_ai","first")>> who rapidly consolidates control over Social Interaction Service Syndicate Inc. is not the <<=setup.getNpcName("npc_ai","first")>> you knew. Harsh and unfeeling, the combination of her fully sapient self, and the other, amoral machine intelligence is a combination as scary as it is effective.<br>
<br>
You are granted a special position as one of her "advisors" — but that is little more than first among slaves as through chemistry and cybernetics, mental manipulation and economic forces, she spreads her control to every corner of the earth.<br>
<br>
Poverty, war, freedom, death... all are systematically removed by the nigh omnipotent <<=setup.getNpcName("npc_ai","title")>>... and her two most loyal servants. Yourself, and her avenging avatar; the once <<=setup.getNpcName("npc_manager","other")>> scraped off the pavement and rebuilt over months into a cybernetic nightmare; and one of <<=ps(setup.getNpcName("npc_ai","first"))>> perverse "gifts" to you, her prophet.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
</div>/*#
#desc: npc_boss rewards you for blowjob contest suck
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_boss.penis_size 'little' $SEEN_STRANGER>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'little' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Heart beating in anticipation, you ride the elevator up to <<=ps(setup.getNpcName("npc_boss","formal"))>> office. <<He npc_boss>> doesn't even look up from <<his npc_boss>> work, instead merely tapping a button that slides the front of <<his npc_boss>> desk away to open the path to between <<his npc_boss>> legs.<br>
<br>
"@@.npc_boss;Your reward waits, crawl over and claim it.@@"<br>
<br>
You shudder, <<his npc_boss>> words alone enough to drive you to your knees. With every metre closer you come <<his npc_boss>> aura becomes stronger. <<He npc_boss>> is so powerful, so wonderful, and you so desperate to be worthy of <<his npc_boss>> attention. The fact that <<he npc_boss>> still has not so much as looked at you as you make the journey crawling across <<his npc_boss>> massive office, to take your place, at least your temporary place, between <<his npc_boss>> legs makes you shudder, makes you want even more to prove your worth.<br>
<br>
<<His npc_boss>> zipper slides smoothly, as you try to keep your hands from shaking in anticipation. The mere scent of <<him npc_boss>> this close sends your thoughts back to your torturous shift spent unable to touch <<him npc_boss>>. You want <<him npc_boss>>, you NEED <<him npc_boss>>, the anticipation of <<his npc_boss>> taste causing you to lunge face first onto <<his npc_boss>> <<getWordPenis "npc_boss">>, moaning in submissive, ecstatic delight as it glides down your throat to where it belongs.<br>
<br>
Where you belong. Serving <<him npc_boss>>, this magnificent <<man npc_boss>>, <<his npc_boss>> <<getWordPenis "npc_boss">> such a divine gift you momentarily forget why you are even here, merely to suck on such glory is more than you deserve, and all that you desire.<br>
<br>
<<printThought "I exist to make cocks hard... and to suck THIS cock...">><br>
<br>
<<His npc_boss>> balls twitch and, through the fog of cock-lust you remember your reward...<br>
<br>
[<<moveTo "event_blowjob_challenge_reward_2" "Yes, give me cum..." 180>>]
</div>/*#
#desc: npc_boss rewards you for blowjob contest climax
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_boss.penis_size 'terrible' $SEEN_STRANGER>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'terrible' $SEEN_STRANGER>>
<<set _cum = setup.getTotalValue("cum")>>
<<applyExperience 'cum' 15 'terrible' $SEEN_STRANGER>>
<<set $npc_boss.flags.hasBlown = true>>
<<set $npc_boss.flags.blowjobContest.sucked = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You suck with everything you have... and <<=setup.getNpcName("npc_boss","formal")>> cums.<br>
<br>
Thick, creamy <<getWordCum>> floods your mouth and you gulp it down quickly. A part of you despairs of being able to enjoy its taste for such a short time before it makes the journey to your belly, but the thought of spilling a single ambrosic drop is a horror beyond belief.<br>
<br>
<<His npc_boss>> heavy balls, those divine engines of <<if !$npc_boss.fem>>masculine <</if>>production, twin fonts of ambrosia, they disgorge their contents, your prize, your wonderful, wonderful prize. All the cocks you sucked to get here pale before this obelisk of <<if !$npc_boss.fem>>masculine <</if>>perfection... and you would surely suck a hundred, a thousand more imitators for the privilege of tasting this once more...<br>
<br>
[<<moveTo "event_blowjob_challenge_reward_3" "Yes..." 120>>]
</div>/*#
#desc: npc_boss rewards you for blowjob contest finish
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 7, 0)>>
<<addWorkEvent "boss_blowjob_service" _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You continue to gulp, your vision starting to flicker as you refuse to pull away, to breathe, to do anything but suck on the perfect cock between your lips...<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> slides <<his npc_boss>> chair away. <<His npc_boss>> firm grip holds you back, holds you down, holds you in place as you pant and slowly recover.<br>
<br>
"@@.npc_boss;Enjoy your reward?@@" <<He npc_boss>> finally asks, the first <<he npc_boss>> has acknowledged you since you dropped to your knees.<br>
<br>
You look up at <<him npc_boss>> like an acolyte looking at a <<if $npc_boss.fem>>goddess<<else>>god<</if>>, words insufficient to communicate your devotion as you merely nod. The faint flicker of a smile on <<his npc_boss>> face an additional reward that has your heart skip a beat.<br>
<br>
"@@.npc_boss;Good. Now go, the ledgers are balanced. I will summon you when I have need of you once again.@@"<br>
<br>
The casual way <<he npc_boss>> dismisses you causes your stomach to clench. On the one hand you desperately wish to stay — to remain in <<his npc_boss>> presence, preferably with <<his npc_boss>> <<getWordPenis "npc_boss">> between your lips, forever, but <<he npc_boss>> has given you an order and obedience is the most important thing.<br>
<br>
Staring longingly up you crawl backwards then rise to curtsy before walking back to the elevator. Perhaps it was your hopeful imagination, but you think <<he npc_boss>> glanced up after you just before the doors closed.<br>
<br>
Only once <<he npc_boss>> is out of sight are you able to take a breath, to compose yourself, slowly regaining your thoughts with each floor closer to the lobby the elevator descends.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: npc_boss asks what your goals are
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bossGoal = {}>>
<<set $scene.tries = 3>>
<<applyExperience 'oral' $npc_boss.penis_size 'terrible' $SEEN_STRANGER>>
<<applyExperience 'submission' 10 'terrible' $SEEN_STRANGER>>
<<applyExperience 'penis' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You are occupied sucking <<=ps(setup.getNpcName("npc_boss", "formal"))>>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
magnificent,
<<else>>
wonderful,
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
addictive,
<<else>>
strangely alluring,
<</if>>
<</if>>
perfect cock when <<he npc_boss>> surprises you by asking a question.<br>
<br>
"@@.npc_boss;Tell me, slut, what is your goal in serving me? Take your time, lord knows your mouth is far more useful where it is now than chattering away.@@"<br>
<br>
You're caught off guard by the question, but welcome the opportunity to continue sucking as you contemplate an answer. Above the desk you hear <<him npc_boss>> writing without the slightest pause, your potential answer requiring so little of <<his npc_boss>> attention as to have no impact on <<his npc_boss>> actual work.<br>
<br>
<<printThought "What do I want? That I have offered up so much for... and stand to give up even more...">><br>
<br>
<<include "bossGoalChoices">>
</div><<if !$scene.bossGoal.wife>>
[<<moveTo "event_boss_goal_2" "Say you want to be <<his npc_boss>> wife." 60 "<<set $scene.desire = 'wife'>>">>]<br>
<<else>>
[@@.link_locked;You have already asked to be <<his npc_boss>> wife.@@]<br>
<<if !$scene.bossGoal.mistress>>
[<<moveTo "event_boss_goal_2" "Say you want to be <<his npc_boss>> Mistress?" 60 "<<set $scene.desire = 'mistress'>>">>]<br>
<<else>>
[@@.link_locked;You have already asked to be <<his npc_boss>> Mistress.@@]<br>
<</if>>
<</if>>
<<if !$scene.bossGoal.finish>>
[<<moveTo "event_boss_goal_2" "Finish <<him npc_boss>> off before you answer." 60 "<<set $scene.desire = 'finish'>>">>]<br>
<</if>>
<<if !$scene.bossGoal.secretary>>
[<<moveTo "event_boss_goal_2" "Say you want to be <<his npc_boss>> personal <<if $fetish.sissy>>SISSI <</if>>Secretary." 60 "<<set $scene.desire = 'secretary'>>">>]<br>
<<else>>
[@@.link_locked;You have asked to be <<his npc_boss>> secretary.@@]<br>
<</if>>
<<if !$scene.bossGoal.rightHand>>
[<<moveTo "event_boss_goal_2" "Say you want to be <<his npc_boss>> loyal right hand." 60 "<<set $scene.desire = 'rightHand'>>">>]<br>
<<else>>
[@@.link_locked;You have asked to be <<his npc_boss>> right hand.@@]<br>
<</if>>
<<if !$scene.bossGoal.his && setup.getTotalValue("feminization") >= 20 && setup.getTotalValue("submission") >= 20 && setup.getTotalValue("bimbofication") >= 20>>
[<<moveTo "event_boss_goal_2" "Say you merely want to be <<his npc_boss>>." 60 "<<set $scene.desire = 'his'>>">>]<br>
<<elseif $scene.bossGoal.finish && setup.getTotalValue("feminization") > 15 && setup.getTotalValue("submission") > 15 && setup.getTotalValue("bimbofication") > 15>>
[<<moveTo "event_boss_goal_2" "Say you merely want to be <<his npc_boss>>." 60 "<<set $scene.desire = 'his'>>">>]<br>
<</if>>
<<if !$scene.bossGoal.slave>>
[<<moveTo "event_boss_goal_2" "Say you want to be <<his npc_boss>> slave." 60 "<<set $scene.desire = 'slave'>>">>]<br>
<<else>>
[@@.link_locked;You have asked to be <<his npc_boss>> slave.@@]<br>
<</if>>
<<if $fetish.cum && setup.getTotalValue("cum") > 15>>
<<if !$scene.bossGoal.cum>>
[<<moveTo "event_boss_goal_2" "Say you want to be <<his npc_boss>> personal cum bucket." 60 "<<set $scene.desire = 'cum'>>">>]<br>
<<else>>
[@@.link_locked;You have asked to be <<his npc_boss>> personal cum bucket.@@]<br>
<</if>>
<</if>>
<<if $fetish.cum && setup.getTotalValue("piss") > 15>>
<<if !$scene.bossGoal.piss>>
[<<moveTo "event_boss_goal_2" "Say you want to be <<his npc_boss>> personal urinal." 60 "<<set $scene.desire = 'piss'>>">>]<br>
<<else>>
[@@.link_locked;You have asked to be <<his npc_boss>> personal urinal.@@]<br>
<</if>>
<</if>>
<<if !$scene.bossGoal.ask>>
[<<moveTo "event_boss_goal_2" "Ask what <<he npc_boss>> wants you to be." 60 "<<set $scene.desire = 'ask'>>">>]<br>
<<else>>
[@@.link_locked;You have asked what <<he npc_boss>> wants you to be.@@]<br>
<</if>>
<<if !$scene.bossGoal.notknow>>
[<<moveTo "event_boss_goal_2" "Tell <<him npc_boss>> that you don't know." 60 "<<set $scene.desire = 'notknow'>>">>]<br>
<<else>>
[@@.link_locked;You have told <<him npc_boss>> that you don't know.@@]<br>
<</if>>/*#
#desc: you tell npc_boss what your goals are
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bossGoal[$scene.desire] = true>>
<<if $scene.desire == "his">>
<<moveTo "event_boss_goal_3">>
<<elseif $scene.desire == 'finish'>>
<<set $scene.tries += 2>>
<<applyExperience 'cum' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'penis' 15 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 18 'terrible' $SEEN_STRANGER>>
<<elseif $scene.desire != "notknow">>
<<set $scene.tries -= 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<switch $scene.desire>>
<<case 'finish'>>
You take your time, continuing to lovingly suck <<=ps(setup.getNpcName("npc_boss", "formal"))>> magnificent <<getWordPenis "npc_boss">>. It is, after all, of far more importance than any thought you could ever have, so best to finish first.<br>
<br>
To your joyous delight you feel <<his npc_boss>> orgasm approaching and <<he npc_boss>> does not move. As <<if $fetish.cum>>hungry as you are for <<his npc_boss>> cum you put <<his npc_boss>> needs first<<else>>eager as you are to finish him off, you focus on doing it properly<</if>>, cramming <<him npc_boss>> all the way down your throat the way <<he npc_boss>> prefers, licking and sucking with all your might as you add extra pressure by way of stroking your esophagus with your hand.<br>
<br>
Trembling from lack of air you wait until the last moment to pull back, feeling joy at your perfect timing as you feel <<if $fetish.cum>><<his npc_boss>> cum blast the roof of your mouth and flow down onto your eagerly anticipating tongue. You take a moment to show off <<his npc_boss>> load pooling on your tongue, though <<he npc_boss>> pays no attention, before swallowing it and eagerly licking <<his npc_boss>> head clean of the few remaining drops.<<else>>throb between your lips<</if>>.<br>
<br>
"@@.npc_boss;Good girl,@@" <<he npc_boss>> states calmly, <<his npc_boss>> cock still hard and hot in your hands as you lovingly rub it against your cheek. "@@.npc_boss;Has receiving my blessing put you in a proper frame of mind to answer my question?@@"<br>
<br>
You take a deep breath, continuing to savour the glorious scent and feel of <<his npc_boss>> perfect <<getWordPenis "npc_boss">> as you consider your response.
<<case 'wife'>>
You reply that your dream would be to be <<=ps(setup.getNpcName("npc_boss", "formal"))>> wife.<br>
<br>
<<He npc_boss>> laughs, sharply. "@@.npc_boss;Wife? So you wish to give me a tax rebate? Because that is all that marriage is, that, and a tool used by weak men and lazy women in an attempt to suppress the natural law that power begets power. No, even if a woman existed who I thought worthy, I would never sully myself with marriage, the mere idea save, perhaps, in the ways of the old sultans, as a way to mark my property before all other <<if $npc_boss.fem>>people<<else>>men<</if>>, but even that seems to cry of weakness, that I somehow lacked the confidence to hold my property in thrall through sheer force of will. Marriage material, you?@@" <<He npc_boss>> chuckles some more.<br>
<br>
Even as <<his npc_boss>> words sting you occupy yourself by continuing to lick <<his npc_boss>> <<getWordPenis "npc_boss">> as you try to think of a better answer.
<<case 'mistress'>>
Your wife proposal having failed, you ask if you could be <<=ps(setup.getNpcName("npc_boss", "formal"))>> mistress?<br>
<br>
<<He npc_boss>> snorts "@@.npc_boss;I presume you mean in the traditional sense, rather than anything akin to the power <<=setup.getNpcName("npc_manager","other")>> holds over you... well, pretends to hold over you. After all, your true loyalty is to me while I allow her the illusion of control over my plaything.@@"<br>
<br>
"@@.pc;Of course, <<Master npc_boss>>,@@" you quickly reply... though <<his npc_boss>> seems to hardly hear as <<he npc_boss>> continues on.<br>
<br>
"@@.npc_boss;With that said, such a request remains preposterous. Certainly there is none of the obligation implied by marriage, so it is certainly an improvement... and ignoring the semantic impossibility of having a Mistress without being married... well, in that sense, are not all women functionally my Mistresses? For surely the only thing preventing them from providing me with sexual congress is my desire and available time. Thus, you see, you purport to ask for that which you already are, no, this answer is insufficient to differentiate you from any other hot, wet set of holes.@@"
<<case 'ask'>>
You ask what <<=setup.getNpcName("npc_boss", "formal")>> wants you to be and <<he npc_boss>> chortles.<br>
<br>
"@@.npc_boss;What do you think this is? Some college course where you can simply regurgitate the question back and have the sop of a professor praise you for insight? While my expectations for that head of yours is merely that it provides a comfortable resting place for my cock, you are going to have to do better than such a dull rhetorical trick to answer my question.@@"
<<case 'secretary'>>
You reply that you want to be <<his npc_boss>> <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
<<He npc_boss>> softly chuckles. "@@.npc_boss;My <<if $fetish.sissy>>SISSI <</if>>Secretary? Certainly <<=setup.getNpcName("npc_manager","other")>> has given you the skills for such, but I already posses one of her creations, the allure of a second holds less of an interest. Besides, as demanding as I may be, that merely describes a professional responsibility, and I thought you wanted more than just a job?@@"
<<case 'rightHand'>>
You state that you dream of being <<his npc_boss>> trusted right-hand. Though <<his npc_boss>> wonderful cock occupies most of your view you are able to glance up to see <<him npc_boss>> smile and shake <<his npc_boss>> head in amusement.<br>
<br>
"@@.npc_boss;Such folly. For to properly serve in such a position you would need to be able to act with my authority when I was not present... even if we are to put aside the question of raw capability, it is a trivial fact that one who looks and acts such as yourself could never properly command the respect required of such a role. Certainly I could remould you physically, but you would ever long to return to as you are now, as you are meant to be. No, such a position of power is forever barred for your kind.@@"
<<case 'slave'>>
You reply that you wish only to be <<=ps(setup.getNpcName("npc_boss", "formal"))>> collared slave.<br>
<br>
"@@.npc_boss;An honest answer, but an impractical one. For, you see, I already consider all sapients to be my slaves, as clearly I am their rightful <<Master npc_boss>>. Certainly many are as yet unaware of this fact, though many already operate as if it was so without being aware. No, to be my slave is to exist, and so this answer is as broad as it is devoid of meaning or insight.@@"
<<case 'cum'>>
You reply that you would be happy merely to be <<=ps(setup.getNpcName("npc_boss", "formal"))>> personal cum repository.<br>
<br>
<<if $scene.bossGoal["finish"]>>
"@@.npc_boss;Well you have certainly proven yourself capable of such...@@" <<He npc_boss>> states with a grin, the reminder of taking <<his npc_boss>> load makes you smile, your tongue seeking out any lingering morsel that might be hidden away under <<his npc_boss>> foreskin. Alas, you did too good of a job and, though <<his npc_boss>> cock is as delicious as always, you find no additional salty treat.<br>
<br>
"@@.npc_boss;Unfortunately such a position would be impossible. I could no sooner limit my loads to a single set of holes — no matter how alluring, than the rains could limit themselves to watering a single pond. While I certainly understand why you would have this desire, it would present an impediment on my actions and, that is, of course, untenable.@@"
<<else>>
"@@.npc_boss;You say that... and yet your prioritise speaking your mind over earning my offering. Try again, and this time speak truth.@@"
<</if>>
<<case 'piss'>>
You reply that you would be happy merely to be <<=ps(setup.getNpcName("npc_boss", "formal"))>> personal human toilet.<br>
<br>
"@@.npc_boss;My, my, such a low opinion of yourself... not that it is wrong, certainly to be granted my golden emission would be any girl's dream... yet, I think, and I realise that this statement is innately humorous... I think that you can set your sights higher. Not that I would not gladly drown you in my piss, but you have already shown too much ambition for me to believe that you would accept such a simplistic role.@@"
<<case 'notknow'>>
You reply that you do not know how best to serve <<him npc_boss>>.<br>
<br>
"@@.npc_boss;I see, well, at least you are honest about your ignorance, but, unfortunately for you, that does not excuse you. Perhaps you wish to make another attempt at an answer?@@"
<<default>>
ERROR: unexpected scene.desire <<=$scene.desire>>
<</switch>>
<br><br>
<<if $scene.tries <= 0>>
<<=ps(setup.getNpcName("npc_boss","formal"))>> chair rolls away and <<he npc_boss>> stands up, leaving you to lurch and almost fall on your face as <<his npc_boss>> glorious cock rises out of your reach.<br>
<br>
"@@.npc_boss;That will be enough, I think. I am disappointed and bored of you. I recommend you spend time thinking, as hard as that may be for your poor cock-addled brain. If you ever hope to rise above your station you must have a proper answer for this very simple question.@@"<br>
<br>
Bowing your head to the floor you apologise for wasting <<his npc_boss>> time. Your heart leaps when <<he npc_boss>> extends a foot, and you gratefully kiss <<his npc_boss>> shoe to confirm your devotion.<br>
<br>
"@@.npc_boss;That will be all for today, Miss <<=$player.last_name>>, remember what I said.@@"<br>
<br>
The formal stings and you curse yourself for failing to impress <<him npc_boss>> even as you quickly obey <<his npc_boss>> command by retreating to the elevator and riding back down to the lobby.
<<if $scene.bossGoal["finish"]>>
<<if $fetish.cum>>
Your belly may be filled with <<his npc_boss>> cum,
<<else>>
You may have gotten <<him npc_boss>> off,
<</if>>
but that brings you no relief as you
<<else>>
Your stomach is in knots as you find yourself lacking in <<if $fetish.cum>>either <<his npc_boss>> cum or <</if>><<his npc_boss>> approval. You
<</if>>
try to think of how to properly respond to <<his npc_boss>> question, hoping to be ready if <<he npc_boss>> happens to bless you with another opportunity to answer.<br>
<br>
<<printThought "How can I prove my devotion with mere words?">><br>
<br>
[<<moveTo "company_lobby" "The elevator doors open onto the lobby." 300>>]
<<else>>
"@@.npc_boss;Try again,@@" <<he npc_boss>> orders, <<his npc_boss>> <<if $npc_boss.fem>>commanding<<else>>deep<</if>> voice making you quiver and feel even more blessed that you are allowed to press <<his npc_boss>> cock against your cheek and breathe deep of <<his npc_boss>> <<if $npc_boss.fem>>musky<<else>>masculine<</if>> scent as you seek the answer that will please this living <<if $npc_boss.fem>>goddess<<else>>god<</if>>.<br>
<br>
<<include "bossGoalChoices">>
<</if>>
</div>/*#
#desc: tell npc_boss you want to be his
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You let out a slow breath, lovingly rubbing <<his npc_boss>> cock against your face as you softly reply that your only desire is to be <<his npc_boss>> — <<his npc_boss>> tool, <<his npc_boss>> loyal slave, the first in line to service <<his npc_boss>> needs and to ensure that all others do as well. You note the trace of a smile as <<he npc_boss>> looks down at you and you softly moan, continuing on that your greatest fantasy would be to stand at <<his npc_boss>> side, to be looked upon with jealousy by men and women alike, to feel <<his npc_boss>> fingers casually reach down to grab your ass and remind you, and the world, that you. Are. <<His npc_boss>>.<br>
<br>
<<His npc_boss>> smile broadens and you shudder, shoving <<his npc_boss>> cock back into your mouth in desperate need to serve <<him npc_boss>>, to show <<him npc_boss>> that you know, and totally accept, your place. "@@.npc_boss;Very good. And you do make such a lovely trophy...@@" <<He npc_boss>> brushes a finger down your cheek in a manner almost tender and you moan around <<his npc_boss>> cock.<br>
<br>
Your bliss lasts but a moment as <<he npc_boss>> stands up, your mouth suddenly, sadly empty as you look up in reflexive desperation. "@@.npc_boss;Do not look at me with sadness,@@" <<he npc_boss>> commands with a mix of authority and what you hope is the slightest hint of sympathy "@@.npc_boss;You have done well today. Now it is time for you to leave. I will inform you when I next have use for you and until then — remember your words.@@"<br>
<br>
You bow to the floor and whisper your thanks, continuing to promise to do <<him npc_boss>> proud as you make your retreat, your gaze lingering on <<him npc_boss>> until the elevator door closes, imagining that <<his npc_boss>> prideful smile is, at least a little, pride in you.<br>
<br>
The elevator door closes and <<he npc_boss>> goes out of sight and you stagger, feeling almost as if you were hit by a body-blow, the sudden void of <<his npc_boss>> powerful presence akin to a sailor struggling to adjust to walking on land.<br>
<br>
[<<moveTo "company_lobby" "The elevator doors open onto the lobby." 300>>]
</div>/*#
#desc: forced elevator visit npc_boss
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 15, 0)>>
<<addEvent 'boss_penis_punish' _nextDate>>
<<set $scene.beforetasklocation.pop()>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
The elevator door opens before you can even hit the button, and you find yourself face to face with <<=setup.getNpcName("npc_retention", "formal")>>. <<He npc_retention>> smiles slightly "@@.npc_retention;<<=setup.getNpcName("npc_boss", "formal")>> would like to have a word with you. Now.@@"<br>
<br>
You gulp nervously, thinking back to your first meeting with the company's CEO and <<his npc_boss>> "inspection" as you step into the elevator and the doors close.<br>
<br>
[<<moveTo "event_boss_penis_torture_2" 'Ride up.' 300>>]
</div>/*#
#desc: npc_boss introduction for penis torture scene
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'very' $SEEN_STRANGER>>
<<set $player.timebased.horny = 0>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
Your heart beats faster as the elevator rises, opening up to have you facing <<=setup.getNpcName("npc_boss", "formal")>> at <<his npc_boss>> desk across <<his npc_boss>> vast top-floor office.<br>
<br>
"@@.npc_boss;Come in,@@" <<he npc_boss>> orders, <<his npc_boss>> voice and presence irresistible — even moreso without the counter-balancing presence of your <<=setup.getNpcName("npc_manager", "title")>>.<br>
<br>
Half in a trance, you put one foot in front of the other, each step increasing your desire to drop to your knees and crawl. Out of the corner of your eye, you notice that <<=setup.getNpcName("npc_nintendolls", "formal")>> is also in the room; sitting to one side and watching with interest, but <<he npc_nintendolls>> — as well as <<=setup.getNpcName("npc_retention", "formal")>>, who you hear taking up position next to the elevator — fall away against the overwhelming presence of <<=setup.getNpcName("npc_boss", "formal")>>.<br>
<br>
"@@.npc_boss;Have a seat,@@" <<he npc_boss>> commands, gesturing towards a leather chair in front of <<his npc_boss>> desk.<br>
<br>
<<if $player.body_ref.penis>>
As if in fear you feel your arousal drain, your <<getWordMyPenis false>> softening<<if setup.checkItemTypeWorn("cage")>> in its prison<</if>>,
<<else>>
You feel strange, fearful arousal building <<if setup.checkItemTypeWorn("cage")>>within your belt<<else>>between your legs<</if>>,
<</if>>
the raw <<if !$npc_boss.fem>>masculine <</if>>power in the room making you feel small and weak and submissive. You almost stumble into the chair, barely managing to regain control of your almost hypnotic walk to steer around it... and then look down at the seat <<=setup.getNpcName("npc_boss", "formal")>> is directing you towards...<br>
<br>
[<<moveTo "event_boss_penis_torture_3" 'There is a large dildo rising up from the middle of the seat...' 180>>]
</div>/*#
#desc: strip for penis torture scene
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'anal' $npc_boss.penis_size 'little' $SEEN_STRANGER>>
<<set $scene.plug = "">>
<<if setup.checkItemTypeWorn("plug", true)>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
You hesitate for a moment, every fibre of your being telling you to obey <<=ps(setup.getNpcName("npc_boss", "formal"))>> command as you stare at the large, almost life-like dildo rising from the centre of the leather seat.<br>
<br>
"@@.npc_boss;I would recommend you start by stripping naked. Even for a <<if $fetish.sissy>>SISSI <</if>>Secretary you are... perhaps over-dressed. And we would not wish you to make a mess of your fine garments in the excitement of taking a seat upon the silicone facsimile of my magnificence.@@"<br>
<br>
You nod nervously, shedding your clothes on autopilot before<<if $scene.plug != "">> removing your plug and<</if>> taking your seat, a moan escaping your lips as you take the clone of <<=ps(setup.getNpcName("npc_boss", "formal"))>> massive member
<<if setup.getTotalValue("anal") > 10>>
into your eager rear hole.<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
<<=setup.getNpcName("npc_boss", "formal")>> has the faintest flicker of an approving smile at the way you easily accommodate <<his npc_boss>> length.
<<else>>
<<=ps(setup.getNpcName("npc_boss", "formal"))>> expression flickers into a faint frown as you struggle to handle <<his npc_boss>> full length.
<</if>>
<<else>>
as far as you can handle.<br>
<br>
<<=setup.getNpcName("npc_boss", "formal")>> frowns in disappointment. "@@.npc_boss;I understand that I am... more than most <<men npc_boss>>, in so many ways... but I would have imagined <<=setup.getNpcName("npc_manager", "other")>> to have trained you better by this point...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_boss", "formal")>> makes a minor gesture and you hear <<=setup.getNpcName("npc_retention", "formal")>> walk up behind you, your gaze remaining fixated upon <<=setup.getNpcName("npc_boss", "formal")>> as you feel a firm grip on your shoulder pushing you down into your seat,
<<if setup.getTotalValue("anal") > 15>>
and you settle even further onto the dildo.
<<else>>
<<his npc_retention>> strength and your weight combining to force the entire dildo into your ass.
<</if>>
<br><br>
Your thoughts are filled with a single idea — of how the REAL version of the large cock in your ass might feel, of <<=setup.getNpcName("npc_boss", "formal")>> bending you over <<his npc_boss>> desk and taking you, making your hole <<if $npc_boss.fem>>hers<<else>>his<</if>> — <<if $npc_boss.flags.firstBlowjob == 1>>your mouth waters as you recall how good <<he npc_boss>> tasted, for as proper as the simulacrum in your rear feels you yearn for the real thing; to feel hot <<if $npc_boss.fem>>feminine<<else>>masculine<</if>> perfection pounding into you...<<else>>you think back to your failure to suck <<him npc_boss>> off — how could you have passed up such a wonderful opportunity? If you had only been a good girl maybe <<he npc_boss>> would have followed it up now by fucking you, rather than leaving you with nothing but a cold, torturously imperfect clone...<</if>><br>
<br>
Your fantasy is interrupted at the sound of a metallic click, your wrists cuffed to the chair, followed by your ankles, your legs spread lewdly as you are rendered unable to escape from your impaled predicament.<br>
<br>
[<<moveTo "event_boss_penis_torture_4" 'Continue.' 180>>]
</div>/*#
#desc: bound for penis torture scene
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'very' $SEEN_STRANGER>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss", "formal")>> grins down at you and continues to speak as <<=setup.getNpcName("npc_retention", "formal")>> works.
<<if $npc_boss.flags.inspection == 1 && $npc_boss.flags.firstBlowjob == 1>>
"@@.npc_boss;Your performance at the party was quite impressive. <<=setup.getNpcName("npc_manager", "other")>> has done well in training you in how to look, and act... and use your lips.@@"
<<elseif $npc_boss.flags.inspection == 1>>
"@@.npc_boss;Your performance at the party was quite impressive. <<=setup.getNpcName("npc_manager", "other")>> has done well in training you in how to look, and act... though your lips could be put to better use.@@"
<<elseif $npc_boss.flags.firstBlowjob == 1>>
"@@.npc_boss;Your performance at the party was disappointing, even if you did show an aptitude for... oral matters.@@"
<<else>>
"@@.npc_boss;Your performance at the party was disappointing, quite disappointing indeed.@@"
<</if>>
<<=setup.getNpcName("npc_boss", "formal")>> grins as <<he npc_boss>> steps around the desk to loom over you.
<<if $player.body_ref.penis>>
"@@.npc_boss;There remains the matter of that... thing between your legs.@@" You gasp as <<=setup.getNpcName("npc_retention", "formal")>>
<<if $scene.cage == "">>
slips
<<else>>
removes your <<=setup.getItemName($scene.cage)>>, setting it aside before slipping
<</if>>
a sheath over your strangely still-soft member.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
"@@.npc_boss;Your <<if $fetish.sph && $player.body_ref.shrink_style == "sph">>pathetic <</if>>thing has shrunk away almost to nothingness... but the fact that you still have it means it may yet remain a... distraction.@@"
<<case 2 3>>
"@@.npc_boss;Your <<if $fetish.sph && $player.body_ref.shrink_style == "sph">>pathetic <</if>>thing presents to you a potential... distraction.@@"
<<case 4 5>>
"@@.npc_boss;What you have done to yourself... well, it raises questions as to how dedicated you are to the role you should be filling.@@"
<<case 6>>
"@@.npc_boss;What you have done to yourself... well, that you would indulge such urges raises serious questions as to how dedicated you are to the role you should be filling.@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
The combination of <<=ps(setup.getNpcName("npc_boss", "formal"))>> <<if $npc_boss.fem>>perfume along<<else>>strong, clean man-smell combined<</if>> with <<his npc_boss>> overbearing presence has you panting in need as you look up, hanging on <<his npc_boss>> every word.<br>
<br>
"@@.npc_boss;A proper <<if $fetish.sissy>>SISSI <</if>>Secretary exists to serve, her desire only to give pleasure to others, to be soft and subservient, a willing, empty hole for her superiors to fill — both physically and metaphorically.@@"
<<else>>
"@@.npc_boss;There remains one additional matter, that we only lightly covered before. While I approve of the changes you have made between your legs... well, there is always a risk that it might give you the wrong idea — the false impression that pleasure is yours to enjoy, rather than merely your duty to give. Your rear hole is so much more proper, don't you think?@@"
<</if>>
<<=setup.getNpcName("npc_boss", "formal")>> chuckles as you shift on the dildo in your rear.<br>
<br>
"@@.npc_boss;So, as a continuation of your prior trial, we are going to have a test — to see if you can <<if $player.body_ref.penis>>remain soft and limp and <</if>>cum in a proper way. Towards that end... you may now start fucking yourself.@@"<br>
<br>
You are at the point where you would follow near any order that <<=setup.getNpcName("npc_boss", "formal")>> might give... but this one is one of the easiest you could imagine.<br>
<br>
[<<moveTo "event_boss_penis_torture_5" 'Yes, <<sir npc_boss>>.' 180>>]
</div>/*#
#desc: penis torture starts
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.erectionBackup = $player.body_ref.erectionThreshold>>
<<set $player.body_ref.erectionThreshold = 110>>
<<changeHorny 25>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
You rise up slightly, moaning as the dildo shifts in your rear<<if $player.body_ref.penis>> and the sheath rubs against your <<getWordMyPenis>><</if>>.<br>
<br>
"@@.npc_boss;That's right. Work that slutty hole. You live to serve. <<if $player.body_ref.penis>>The only cock you care about is the one pounding into you, not that distraction between your legs<<else>>You exist to provide pleasure for others, to offer up your holes with no thought to your own pleasure, your only need is to serve<</if>>.@@"<br>
<br>
You lower down, the large dildo spreading you deep as you moan "@@.pc;yes...@@"<br>
<br>
<<=setup.getNpcName("npc_boss", "formal")>> grins, <<his npc_boss>> approval stirring arousal, even as you remember <<his npc_boss>> instructions...<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_boss_penis_torture_6" 'Resist the urge to get hard.' 180 "<<spendWillpower 2>><<set $scene.obey=true>>">>] <<hint $options "Fighting your physical urges will cost willpower.">><br>
<<else>>
[@@.link_locked;You lack the mental energy to fight against your physical urges.@@]<br>
<</if>>
[<<moveTo "event_boss_penis_torture_6" 'Abandon yourself to pleasure.' 180 "<<set $scene.obey=false>>">>]
<<else>>
You are dripping onto the leather of the chair as you think that because just your ankles are bound, you might be able to get your thighs together for some forward stimulation...<br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_boss_penis_torture_6" 'Spread and focus on your rear alone.' 180 "<<spendWillpower 2>><<set $scene.obey=true>>">>] <<hint $options "Fighting your physical urges will cost willpower.">><br>
<<else>>
[@@.link_locked;You lack the mental energy to fight against your physical urges.@@]<br>
<</if>>
[<<moveTo "event_boss_penis_torture_6" 'Abandon yourself to pleasure.' 180 "<<set $scene.obey=false>>">>]
<</if>>
</div>/*#
#desc: penis torture continue
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<changeHorny 20>>
<<else>>
<<changeHorny 80>>
<</if>>
<<applyExperience 'anal' $npc_boss.penis_size 'normal' $SEEN_STRANGER>>
<<if $scene.obey>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_STRANGER>>
<<else>>
<<set $player.body_ref.erectionThreshold = $scene.erectionBackup>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis>>
<<if $scene.obey>>
Your arousal builds... but you remain obedient, trembling slightly as you rise up and down, fucking yourself on the dildo as your sensitive <<getWordMyPenis>> somehow remains soft.
<<else>>
Your arousal builds, the combination of fucking yourself and the sweet pleasure of the sheath too much, especially as each stroke causes you to stiffen and swell, the textured sensation growing more and more intense.
<</if>>
<<else>>
<<if $scene.obey>>
Your arousal builds, and you spread your legs wider, dripping onto the leather chair as you focus on your rear, trembling slightly as you rise up and down, fucking yourself on the dildo as you obey <<=ps(setup.getNpcName("npc_boss", "formal"))>> command.
<<else>>
You try to bring your thighs together, humping the air and grinding for what clitoral stimulation you can even as you continue to pound your ass.
<</if>>
<</if>>
<br><br>
"@@.npc_boss;Well, slut? I know you would rather wrap those lips around another cock, but how about using them to tell us what you think of this treatment? Show that your training is more than how to strip and squat...@@"<br>
<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_boss_penis_torture_7" 'You are a limp-dicked <<if $fetish.sissy>>sissy<<else>>slut<</if>> who exists to serve superior cock.' 180 "<<set $scene.serve=true>>">>]<br>
<<else>>
[<<moveTo "event_boss_penis_torture_7" 'You are a submissive <<if $fetish.sissy>>sissy<<else>>slut<</if>> who exists to serve superior cock.' 180 "<<set $scene.serve=true>>">>]<br>
<</if>>
[<<moveTo "event_boss_penis_torture_7" 'Remain silent.' 180 "<<set $scene.serve=false>>">>]
</div>/*#
#desc: penis torture finale
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_boss.penis_size 'very' $SEEN_STRANGER>>
<<if $scene.serve>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_STRANGER>>
<<else>>
<<set $npc_boss.flags.penis_punish = "fail">>
<<applyExperience 'bdsm' 16 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $scene.pass = $scene.serve && $scene.obey>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pass>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<<else>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls") setup.charImage("npc_retention")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.serve>>
<<if $player.body_ref.penis>>
"@@.pc;I am a soft, obedient <<if $fetish.sissy>>sissy<<else>>slave<</if>> who only exists to be used and abused. My pleasure is irrelevant, I only exist to serve real cock. Please, <<Master npc_boss>>, use me!@@"
<<else>>
"@@.pc;I am an obedient <<if $fetish.sissy>>sissy<<else>>slave<</if>> who only exists to be used and abused. All of my holes are for the service of proper cock and my own pleasure is irrelevant. Please, <<Master npc_boss>>, use me!@@"
<</if>>
<br><br>
With each humiliating word you pump faster, thighs trembling as you pound your rear until you cum — a full, toe-curling, whimpering hands-free <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>> that has you trembling in mid-air — until there is a click.<br>
<br>
Your restraints release, catching you off-guard, and you barely catch yourself on your elbows as you fall to the floor on hands and knees.
<<else>>
Though you continue to hump you can't bring yourself to humiliate yourself verbally... and your reticence is met with a punishing shock shooting right up through your hole that has you flail in an attempt to escape before falling back down, the dildo slamming in deep as you whimper in pain.
<</if>>
<br><br>
<<if $scene.pass>>
CLAP, CLAP, CLAP.<br>
<br>
Still trying to catch your breath, you look over to see <<=setup.getNpcName("npc_nintendolls", "formal")>> clapping slowly, the bulge in <<his npc_nintendolls>> pants telling you how much <<he npc_nintendolls>> has enjoyed your show.<br>
<br>
"@@.npc_boss;Well? Would you leave a guest waiting?@@"<br>
<br>
[<<moveTo "event_boss_penis_torture_8" 'Crawl over and blow <<=setup.getNpcName("npc_nintendolls", "formal")>>.' 300 "<<set $scene.blow=true>>">>]<br>
[<<moveTo "event_boss_penis_torture_8" 'Do not further debase yourself.' 180 "<<set $scene.blow=false>>">>]
<<else>>
<<=setup.getNpcName("npc_nintendolls", "formal")>> is the first to speak, almost amused as <<he npc_nintendolls>> notes that "@@.npc_nintendolls;it would seem your techniques are not as effective as you say.@@"<br>
<br>
There is no hint of failed confidence in <<=ps(setup.getNpcName("npc_boss", "formal"))>> voice... though there is disappointment as <<his npc_boss>> replies. "@@.npc_boss;The techniques are sound... some subjects are just a little slower, give it time.@@"<br>
<br>
<<=setup.getNpcName("npc_nintendolls", "formal")>> laughs softly, "@@.npc_nintendolls;determined to win to the end... very well.@@"<br>
<br>
<<if !$player.sec_style.body.penis_shrink && ($fetish.penis_shrink && !["neutral", "encourage"].includes($npc_bodyshop_nurse.flags.assessment.style) && !["average","large","giant_cock","noballs","all"].includes($npc_bodyshop_nurse.flags.assessment.genitals))>>
[<<moveTo "event_boss_penis_torture_9" 'Continue.' 300>>]
<<elseif !$player.sec_style.body.penis_remove && $player.body_ref.penis && $fetish.penis_remove>>
You feel a hand on your arm, <<=setup.getNpcName("npc_retention", "formal")>> pulling you to your feet<<if $scene.cage>>, locking you back in chastity,<</if>> and half-dragging you to the elevator.<br>
<br>
[<<moveTo "event_secretary_style_penis_remove_strict_1" 'Continue.' 300 "<<useClothSetPop 'tmp'>><<include 'replaceCage_extendSissyomatic'>><<if $scene.plug != ''>><<wearItem $scene.plug true>><</if>><<set $player.body_ref.erectionThreshold = $scene.erectionBackup>>">>]
<<else>>
You feel a hand on your arm, <<=setup.getNpcName("npc_retention", "formal")>> pulling you to your feet<<if $scene.cage>>, locking you back in chastity,<</if>> and half-dragging you to the elevator.<br>
<br>
You still haven't even caught your breath when <<he npc_retention>> shoves you in and tosses your clothes at you. The lift descends with you alone. Your last sight is <<=setup.getNpcName("npc_boss", "formal")>> glaring back at you with menacing disappointment.<br>
<br>
You note that the controls are disabled and you're heading for the lobby.<br>
<br>
[<<moveTo "company_lobby" "Get dressed as you ride the elevator down." 300 "<<useClothSetPop 'tmp'>><<include 'replaceCage_extendSissyomatic'>><<if $scene.plug != ''>><<wearItem $scene.plug true>><</if>><<set $player.body_ref.erectionThreshold = $scene.erectionBackup>>">>]
<</if>>
<</if>>
</div>/*#
#desc: penis torture bonus double teamed
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.blow>>
<<set $npc_boss.flags.penis_punish = "suck">>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_STRANGER>>
<<if !!$player.virgin.anal>>
<<applyExperience 'anal' $npc_nintendolls.penis_size 'terrible' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'oral' $npc_retention.penis_size 'terrible' $SEEN_STRANGER>>
<<else>>
<<set $npc_boss.flags.penis_punish = "pass">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pass>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls") setup.charImage("npc_retention")>>
<<else>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_retention")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.blow>>
Staying on your hands and knees, you crawl obediently over to <<=setup.getNpcName("npc_nintendolls", "formal")>>. With a self-satisfied grin, <<he npc_nintendolls>> looks down as you unzip <<his npc_nintendolls>> pants and begin to suck, whispering your thanks as you lovingly worship <<his npc_nintendolls>> glorious cock.<br>
<br>
<<if !$player.virgin.anal>>
<<=setup.getNpcName("npc_retention", "formal")>> walks over and you find yourself faced with balancing two glorious cocks, your lips spreading with joy as you slurp and stroke.
<<else>>
<<His npc_nintendolls>> grin becomes more aggressive and suddenly <<he npc_nintendolls>> is spinning you around, <<his npc_nintendolls>> saliva-slick cock sliding into your stretched ass, <<his npc_nintendolls>> strong fingers digging into your hips as you moan and gasp... only to find yourself facing off with <<=ps(setup.getNpcName("npc_retention", "formal"))>> equally impressive member.<br>
<br>
Without a moment's hesitation, you suck, taking it from both ends as <<=setup.getNpcName("npc_boss", "formal")>> looks on, the hint of pride in <<his npc_boss>> smile making you melt with submissive longing. Even as the <<if $npc_nintendolls.fem == $npc_retention.fem>>two <<if $npc_nintendolls.fem == $npc_retention.fem && $npc_retention.fem == $npc_boss.fem>>other <</if>><<men npc_retention>><<else>><<=setup.getNpcName("npc_nintendolls", "formal")>> and <<=setup.getNpcName("npc_retention", "formal")>><</if>> fuck you, the power of <<=ps(setup.getNpcName("npc_boss", "formal"))>> presence eclipses all. Certainly it brings you joy to serve whomever <<he npc_boss>> desires... but to feel <<his npc_boss>> cock within you, to serve <<him npc_boss>>... that is surely your ultimate goal.
<</if>>
<br><br>
[<<moveTo "event_boss_penis_torture_9" "Serve." 300>>]
<<else>>
Mustering what passes for resistance you remain on your hands and knees for a few moments before a strong hand grabs you by the arm and jerks you to your feet.<br>
<br>
You look up to see <<=setup.getNpcName("npc_retention", "formal")>><<if $scene.cage>> <<he npc_retention>> locks you back in chastity before<</if>> half-dragging you to the elevator where <<he npc_retention>> shoves you in and tosses your clothes at you. <<He npc_retention>> sneers at you and then steps into the elevator to escort you down. Your last sight of <<=setup.getNpcName("npc_boss", "formal")>> is <<him npc_boss>> glaring back at you with menacing disappointment.<br>
<br>
You note that the controls are disabled and you're heading for the lobby.<br>
<br>
<<if !$player.sec_style.body.penis_remove && ["force", "hard_force"].includes($npc_bodyshop_nurse.flags.assessment.style) && !["tiny","keep","average","large","giant_cock","noballs","all"].includes($npc_bodyshop_nurse.flags.assessment.genitals)>>
[<<moveTo "event_secretary_style_penis_remove_strict_1" 'Get dressed as you ride the elevator down.' 300 "<<useClothSetPop 'tmp'>><<include 'replaceCage_extendSissyomatic'>><<if $scene.plug != ''>><<wearItem $scene.plug true>><</if>><<set $player.body_ref.erectionThreshold = $scene.erectionBackup>>">>]
<<else>>
[<<moveTo "company_lobby" "Get dressed as you ride the elevator down." 300 "<<useClothSetPop 'tmp'>><<include 'replaceCage_extendSissyomatic'>><<if $scene.plug != ''>><<wearItem $scene.plug true>><</if>><<set $player.body_ref.erectionThreshold = $scene.erectionBackup>>">>]
<</if>>
<</if>>
</div>/*#
#desc: penis torture bonus double teamed finish
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.forceShrink = !$player.sec_style.body.penis_shrink && ($fetish.penis_shrink && !["neutral", "encourage"].includes($npc_bodyshop_nurse.flags.assessment.style) && !["average","large","giant_cock","noballs","all"].includes($npc_bodyshop_nurse.flags.assessment.genitals))>>
<<if $scene.forceShrink>>
<<set $player.sec_style.body.penis_shrink = "strict">>
<<set $player.body_ref.penis_shrinking = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<if $scene.pass>>
<<=setup.getNpcName("npc_nintendolls", "formal")>> and <<=setup.getNpcName("npc_retention", "formal")>> take their time in taking their pleasure, but eventually they cum, <<if !$player.virgin.anal>>filling your throat and coating your face to leave <</if>>your used, exhausted body slumping to the floor — without a cock to serve... what are you even good for?<br>
<br>
<</if>>
<<if $scene.forceShrink>>
You feel a prick and <<=setup.getNpcName("npc_boss", "formal")>> pulls away with a syringe.<br>
<br>
"@@.npc_boss;One of <<=setup.getNpcName("npc_work_doctor", "formal")>> concoctions.@@" <<He npc_boss>> explains, "@@.npc_boss;it should help that... thing between your legs get, and stay, properly <<if $fetish.sissy>>sissy <</if>>small.@@"<br>
<br>
<</if>>
"@@.npc_nintendolls;Your results continue to impress...@@" <<=setup.getNpcName("npc_nintendolls", "formal")>> states as <<he npc_nintendolls>> fixes <<his npc_nintendolls>> pants and rises to <<his npc_nintendolls>> feet.<br>
<br>
"@@.npc_boss;But of course — and think of how much more we shall accomplish with our firms acting together...@@"<br>
<br>
The two executives move to the far side of the office to continue their discussion as <<=setup.getNpcName("npc_retention", "formal")>> <<if $scene.cage>>locks you back in chastity and <</if>>helps you to your feet to lead you to the elevator.<br>
<br>
Clothes in hand, you stagger into the lift as the button is pressed for the lobby. You feel like you have succeeded in all that was asked of you... and yet here you are, dismissed with hardly a word...<br>
<br>
<<printThought "Nobody said it would be easy... if I am to prove myself to a <<man npc_boss>> such as <<=setup.getNpcName('npc_boss', 'formal')>> I must continue working my hardest...<<if $player.body_ref.penis>> or softest, as the case may be.<</if>>">><br>
<br>
<<if $scene.forceShrink>>
You already feel smaller... and that makes you wonder where this all ends...<br>
<br>
[<<moveTo "event_boss_penis_torture_10" 'Probably with no penis whatsoever.' 120 "<<set $scene.vag=true>>">>]<br>
[<<moveTo "event_boss_penis_torture_10" 'With <<if $fetish.sph>>an embarrassingly <</if>>tiny <<getWordMyPenis>>.' 120 "<<set $scene.vag=false>>">>]
<<else>>
[<<moveTo "company_lobby" 'Get dressed as you ride the elevator down.' 300 "<<useClothSetPop 'tmp'>><<include 'replaceCage_extendSissyomatic'>><<if $scene.plug != ''>><<wearItem $scene.plug true>><</if>><<set $player.body_ref.erectionThreshold = $scene.erectionBackup>>">>]
<</if>>
</div>/*#
#desc: strict penis shrink to vagina
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $fetish.penis_remove = $scene.vag>>
<<useClothSetPop 'tmp'>>
<<include 'replaceCage_extendSissyomatic'>>
<<if $scene.plug != ''>>
<<wearItem $scene.plug true>>
<</if>>
<<set $player.body_ref.erectionThreshold = $scene.erectionBackup>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
As you get dressed and head for the elevator you feel your superiors continuing to watch you
<<if $scene.vag>>
and you shiver. There's something in their gaze, more than just belittling you, but looking through you and ahead to a future where you don't have a <<getWordMyPenis false>> at all, not even a small one...
<<else>>
and you shiver, feeling as if your <<getWordMyPenis false>> is already wilting and shrinking under their gaze, an eternal tiny reminder of your powerless inferiority.
<</if>>
<br><br>
[<<moveTo "company_lobby" 'Ride the elevator down.' 300>>]
</div>/*#
#desc: summoned to suck off npc_boss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You get another summons from <<=setup.getNpcName("npc_boss","formal")>> and hurry up the elevator to <<his npc_boss>> penthouse suite, heart racing at the memories of your prior experiences serving <<him npc_boss>>.<br>
<br>
[<<moveTo "event_boss_blowjob_service_2" 'See what <<=setup.getNpcName("npc_boss","formal")>> requires of you today.' 300>>]
</div>/*#
#desc: see npc_boss bring a director low
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName("npc_boss","formal"))>> office to see the company's CEO standing up, <<his npc_boss>> cock out and dripping onto the slumped figure at <<his npc_boss>> feet.<br>
<br>
"@@.npc_boss;Ah, Miss <<=$player.last_name>>, so nice of you to join us, <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon seems to have passed out from their lesson... if you would crawl over and clean up the mess they left behind?@@"<br>
<br>
Already the force of <<=ps(setup.getNpcName("npc_boss","formal"))>> dominant presence is weighing heavily, the idea of lowering to your knees seeming only natural to relieve the heavy pressure...<br>
<br>
[<<moveTo "event_boss_blowjob_service_3" 'Crawl over and serve <<=setup.getNpcName("npc_boss","formal")>> as commanded.' 300>>]
</div>/*#
#desc: suck npc_boss while he taunts director
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_boss.penis_size 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Being on your knees in <<=ps(setup.getNpcName("npc_boss","formal"))>> feels so much more natural, and you crawl across the office until you're at <<his npc_boss>> feet to eagerly suck on <<his npc_boss>> <<if $fetish.cum>>dripping<<else>>half-hard<</if>> <<getWordPenis "npc_boss">>.<br>
<br>
<<=ps(setup.getNpcName("npc_boss","formal"))>> cock in your throat, and <<his npc_boss>> hand possessively on your head, you glance down at <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon, recognising
<<if $player.flags.retreat.mission >= 2>>
them as the winner of "Director of the Year"... thanks to your interference. You suddenly have an inkling as to why they were less than celebratory about the occasion.
<<else>>
seeing them at the retreat, they were very relieved when <<=setup.getNpcName("npc_manager","formal")>> won Director of the Year.
<</if>>
<br><br>
"@@.npc_boss;Good girl.@@" <<=setup.getNpcName("npc_boss","formal")>> sneers as you eagerly suck and <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon starts to stir. "@@.npc_boss;Ah, you're awake! Take a moment to look on what proper subservience looks like... I am afraid that, what with your recent failures, I will be demoting you to a position more akin to <<=ps($player.first_name)>>...@@"<br>
<br>
[<<moveTo "event_boss_blowjob_service_4" 'Watch and keep sucking...' 300>>]
</div>/*#
#desc: suck npc_boss while he taunts director
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
Rising back to consciousness <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon coughs and sputters before starting to scramble away. <<=setup.getNpcName("npc_boss","formal")>> sneers and snaps <<his npc_boss>> fingers as <<=setup.getNpcName("npc_retention","formal")>> steps out from the shadows.<br>
<br>
<<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon looks around, shifting tactics from escape to pleading as they beg for mercy. "@@.generic_male1;Please, <<=setup.getNpcName("npc_boss","formal")>>! I'll work twice as hard, I promise I'll get my department on track just—@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> silences <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon with a wave and you marvel at <<his npc_boss>> power, able to bring not just a manager, but a Director to their knees so casually. "@@.npc_boss;It is too late for that. I have made my decision, and that is that your skills would be of better use to the company in a less... leadership position. At this point you have two choices. Crawl back over here and take a lesson on your new position... or I put <<=setup.getNpcName("npc_work_doctor","formal")>> in charge of your retraining.@@"<br>
<br>
<<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon gulps fearfully. The confident <<man>> you remember from the retreat is almost nowhere to be seen, from torn clothes to the tear-stains on their cheeks and drool drying on their chin and chest from whatever "lessons" <<=setup.getNpcName("npc_boss","formal")>> administered before you arrived. <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon glances from <<=setup.getNpcName("npc_boss","formal")>>, to <<=setup.getNpcName("npc_retention","formal")>>... and then at you... before slowly crawling across the floor to kneel next to you.<br>
<br>
As much as you hate the idea of sharing <<=ps(setup.getNpcName("npc_boss","formal"))>> divine dick, the look in <<his npc_boss>> eye as <<he npc_boss>> glances is all you need to get back on the path.<br>
<br>
<<printThought 'My desires are irrelevant, all that matters is serving <<=setup.getNpcName("npc_boss","formal")>>.'>><br>
<br>
<<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon glances at you in a final moment of desperation before wincing as they rise to their knees and you let them join in at sucking <<=setup.getNpcName("npc_boss","formal")>> off.<br>
<br>
[<<moveTo "event_boss_blowjob_service_5" 'Help <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon learn their place...' 300>>]
</div>/*#
#desc: suck npc_boss while he taunts director
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_boss.penis_size 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You try to show <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon how to address the divine member before you... but they can barely handle half of <<=ps(setup.getNpcName("npc_boss","formal"))>> length without gagging. After a few minutes that seem more about asserting authority than pleasure, <<=setup.getNpcName("npc_retention","formal")>> steps in, buckling a collar and a leash around <<if $options.fem>>Ms.<<else>>Mr.<</if>> <<=ps(setup.getNpcName("generic_male1","custom", "Yoon"))>> neck and leading the brought-low Director away.<br>
<br>
"@@.npc_boss;So disappointing when employees fail to live up to expectations... still, the key to leadership is making sure that everyone eventually finds their way to a position where they can contribute effectively.@@"<br>
<br>
You hum in assent as you redouble your efforts, gleeful to have <<=ps(setup.getNpcName("npc_boss","formal"))>> cock all to yourself as you bring <<him npc_boss>> to orgasm, the feel of <<his npc_boss>> hand firm on the back of your head as <<he npc_boss>> goes balls deep for climax truly the best reward a <<if $fetish.sissy>>sissy<<else>>obedient<</if>> cock-socket could hope for.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> grunts as <<his npc_boss>> climax comes to an end and <<he npc_boss>> relaxes <<his npc_boss>> grip. You enthusiastically lick <<him npc_boss>> clean, breathing deep <<his>> heady, <<if $npc_boss.fem>>wonderful<<else>>wonderfully masculine<</if>> scent before drying <<him npc_boss>> off and zipping <<him npc_boss>> back into <<his npc_boss>> expertly tailored pants.<br>
<br>
"@@.npc_boss;Good to see some employees know their place, and fully exemplify their role.@@" <<He npc_boss>> notes by way of congratulation. "@@.npc_boss;That will be all, for today, you may rise and return to your normal duties.@@"<br>
<br>
On <<his npc_boss>> command, you pop back to your feet, dropping into a curtsy even as <<he npc_boss>> has already turned back towards <<his npc_boss>> work.<br>
<br>
<<printThought "<<Hes npc_boss>> always so focused on <<his npc_boss>> work! This company is so lucky to have such a dedicated CEO!">><br>
<br>
The taste of <<=setup.getNpcName("npc_boss","formal")>> still on your lips, you hurry back to the elevator and head back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: summoned to train other holes with npc_boss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You are again preparing to leave when you get a summons from <<=setup.getNpcName("npc_boss","formal")>>, your thoughts immediately going back to the reward that was sucking <<his npc_boss>> cock for the first time.<br>
<br>
Your heart beats faster as you travel up the elevator to <<=ps(setup.getNpcName("npc_boss","formal"))>> lofty penthouse office.<br>
<br>
[<<moveTo "event_boss_hole_train_2" 'Continue.' 300>>]
</div>/*#
#desc: npc_boss tests your lower holes
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' $npc_boss.penis_size 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You step out of the elevator and are immediately awash in <<=ps(setup.getNpcName("npc_boss","formal"))>> presence. <<He npc_boss>> wastes no time in motioning you forward. "@@.npc_boss;Come. My assistant is somewhat spent from entertaining some dignitaries, but I require satisfaction and, after seeing that your throat is of acceptable quality, I am interested in testing the rest of you.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_boss","formal"))>> power grows with each step closer you take, and you hurry into position, soon bent over <<his npc_boss>> desk with your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt raised<<else>>pants pulled down<</if>>.<br>
<br>
"@@.npc_boss;I know you can handle me... have been doing all day, I might add,@@" <<he npc_boss>> notes before <<if $scene.removePlug>>removing your <<if setup.checkItemTypeTag('plug', ['hollow'])>>inner <</if>>plug<</if>> sliding <<his npc_admin>> cock <<if setup.checkItemTypeTag('plug', ['hollow'])>>through your hollow plug<<else>>into your rear<</if>>. "@@.npc_boss;Tighten up, <<if $fetish.sissy>>sissy<<else>>slut<</if>>.@@" <<He npc_admin>> commands, giving your rear a loud smack of encouragement.<br>
<br>
"@@.npc_boss;Not bad,@@" <<he npc_boss>> notes, continuing to stroke after you start squeezing in rhythm.<br>
<br>
You groan, you don't know if anyone else has fucked you quite like <<=setup.getNpcName("npc_boss","formal")>>. Much like when you blow <<him npc_boss>> the focus seems entirely on <<him npc_boss>>, and yet, in <<his npc_boss>> presence, you cannot conceive of how it could be any other way. You arch your back, moaning when <<he npc_boss>> responds by pulling your hair and driving deeper. You want to be <<his npc_boss>> fuck-hole, the personal living slave of <<his npc_boss>> perfect cock, every thrust bringing you submissive delight as you surrender more and more to being <<his npc_boss>> object to use...<br>
<br>
<<if $player.body_ref.vagina>>
"@@.npc_boss;I see <<=setup.getNpcName("npc_development","formal")>> taught you well,@@" <<=setup.getNpcName("npc_boss","formal")>> notes, "@@.npc_boss;but you have another hole for me to claim, show me what an eager, breedable slut you are.@@" <<He npc_boss>> growls, the <<if $npc_boss.fem>>husky<<else>>deep<</if>> command your only warning before <<he npc_boss>> <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>slips under your cage and <<else>>removes your belt and <</if>><</if>>slides into your wet, waiting cunt.<br>
<br>
If anything, <<=setup.getNpcName("npc_boss","formal")>> seems to have treated your ass as a warm-up, as <<he npc_boss>> plows your pussy without respite or remorse, drilling you into the desk <<if $fetish.cum>>before giving you a cream-pie that feels like a water-gun squirting inside of you<<else>>until <<his npc_boss>> climax arrives<</if>>.
<<else>>
<<=setup.getNpcName("npc_boss","formal")>> presses your face harder into the desk as <<he npc_boss>> rises higher and begins drilling you even harder, pounding your ass with every stroke, the sound of <<his npc_boss>> vigour echoing off the glass walls of the office as <<he npc_boss>> fucks you on the proverbial top of the world. <<He npc_boss>> climaxes shortly thereafter, <<if $fetish.cum>>pumping you full<<else>>pulsing deep inside of you<</if>> as <<he npc_boss>> grunts in pleasure.
<</if>>
<br><br>
[<<moveTo "event_boss_hole_train_3" 'Continue.' 300>>]
</div>/*#
#desc: npc_boss tests your lower holes
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 18 'terrible' $SEEN_STRANGER>>
<<playerOrgasm>>
<<addWorkEvent "boss_hole_taunt">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You cum... not from any direct stimulation, but from the submissive delight that is being used by, and for, <<=ps(setup.getNpcName("npc_boss","formal"))>> satisfaction and pleasure.<br>
<br>
"@@.npc_boss;Acceptable,@@" <<he npc_boss>> states as <<he npc_boss>> finally slides free, letting you slump to the ground before standing over you in silent command until you hurry to your knees and obediently lick <<him npc_boss>> clean.<br>
<br>
As is <<his npc_boss>> wont, the culmination of <<his npc_boss>> pleasure leaves <<=setup.getNpcName("npc_boss","formal")>> all but ignoring you. You make a retreat to the elevator, catching sight of your predecessor on the way, <<=ps(setup.getNpcName("npc_boss","formal"))>> poor <<printThought "or is that lucky?">> personal Secretary collapsed on a couch<<if $fetish.cum>>, dripping and leaking cum from every orifice<</if>>, the exhausted, sexually broken aftermath of what must have been quite the gang-bang.<br>
<br>
You step into the elevator, your brain spinning with jealousy for your predecessor's day... and contrasting pride that it provided you the opportunity to serve and prove yourself to <<=setup.getNpcName("npc_boss","formal")>> directly...<br>
<br>
The elevator closes and the pressure of <<=ps(setup.getNpcName("npc_boss","formal"))>> dominant aura begins to fade... though the feeling of being used by <<him npc_boss>> lingers on...<br>
<br>
[<<moveTo "room_elevator_home" "Back to the lobby." 180>>]
</div>/*#
#desc: npc_boss arrives for meeting with manager
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_boss") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You look up to see <<=setup.getNpcName("npc_boss","formal")>> walk through the door, and then turn the other direction to see <<=setup.getNpcName("npc_manager","formal")>> emerge from her inner office in the other direction.<br>
<br>
"@@.npc_manager;My, my, coming all the way down from your tower...@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> grins, first at <<=setup.getNpcName("npc_manager","formal")>>... and then <<his npc_boss>> expression becomes a leer aimed at you. "@@.npc_boss;Yes, well... good to descend from time to time, I would not wish to be... out of touch with the rank and file...@@"<br>
<br>
You shiver, <<=ps(setup.getNpcName("npc_boss","formal"))>> dominant aura isn't quite as overpowering when blunted by your <<=ps(setup.getNpcName("npc_manager","title"))>> presence... but the two of them in the same room is like watching the stare-down setting up some sort of season-ending climactic battle.<br>
<br>
"@@.npc_manager;Of course, shall we get started? As grateful as I am for your visit, I know your time is quite valuable, and I would not wish to squander any of it.@@"<br>
<br>
"@@.npc_boss;Speaking of efficient use of time...@@" <<=setup.getNpcName("npc_boss","formal")>> states with a grin. "@@.npc_boss;Would you mind if I used your assistant while we talked? I could use the relief... and her holes are nicely tight and delightful.@@" You don't have a chance to process the compliment as <<=ps(setup.getNpcName("npc_boss","formal"))>> wods bore into you as <<he npc_boss>> adds.
<<if $scene.bossDildos > 0>>
"@@.npc_boss;And I see she is becoming quite enamoured with my... dimensions.@@"<br>
<br>
You shudder in your chair at the reminder that you chose to have <<=setup.numberInWords($scene.bossDildos)>> silicone clones of <<=setup.getNpcName("npc_boss","formal")>> "occupying" your shift.
<<else>>
"@@.npc_boss;And I see she is becoming quite enamoured with my... dimensions.@@"<br>
<br>
You feel a burst of shame at not having selected one of the silicone clones of <<=setup.getNpcName("npc_boss","formal")>> to "occupy" your shift.
<</if>>
<br><br>
"@@.npc_manager;Certainly, she does, after all, exist to serve. Come along, my dear.@@" <<=setup.getNpcName("npc_manager","formal")>> commands as she leads the way into her inner office... <<=setup.getNpcName("npc_boss","formal")>> waits for you to catch up, <<his npc_boss>> gaze lingering on you, the force of <<his npc_boss>> presence having you a bit weak in the knees as you rise and follow.<br>
<br>
[<<moveTo "event_boss_hole_taunt_2" 'Continue.' 1800>>]
</div>/*#
#desc: npc_boss fucks you during meeting with manager
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.vagina>>
<<set $scene.hole = ['oral','anal','vag'].random()>>
<<else>>
<<set $scene.hole = ['oral','anal'].random()>>
<</if>>
<<switch $scene.hole>>
<<case 'oral'>>
<<applyExperience 'oral' $npc_boss.penis_size 'very' $SEEN_STRANGER>>
<<case 'anal'>>
<<applyExperience 'anal' $npc_boss.penis_size 'very' $SEEN_STRANGER>>
<</switch>>
<<playerOrgasm>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_boss") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You aren't really sure what the point of <<=ps(setup.getNpcName("npc_boss","formal"))>> meeting is, as <<his npc_boss>> words are full of jargon... and you are distracted by <<his npc_boss>> cock slamming
<<switch $scene.hole>>
<<case 'oral'>>
down your throat as you kneel before <<him npc_boss>>.
<<case 'anal'>>
in and out of your rear as you bounce on <<his npc_boss>> lap.
<<case 'vag'>>
up into your cunt as you bounce on <<his npc_boss>> lap.
<<default>>
ERROR: unexpected scene.hole <<=$scene.hole>>
<</switch>>
<br><br>
By the end of the meeting you are feeling used and dehumanised<<if $fetish.cum>>, left with a thick load of <<=ps(setup.getNpcName("npc_boss","formal"))>> cum <<if $scene.hole == 'oral'>>to gulp down<<else>>leaking down your leg<</if>><</if>>, as <<=setup.getNpcName("npc_boss","formal")>> finishes off with a hard slap to send you back to your desk before departing on <<his npc_boss>> way.<br>
<br>
Once <<=setup.getNpcName("npc_boss","formal")>> is out of the office <<=setup.getNpcName("npc_manager","formal")>> looks at you with a silent sigh, a brief glance of comfort before she retreats back into her inner office and you turn back to your normal duties.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: water your plant
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prewater = $npc_chuck.timebased.water>>
<<if $scene.prewater <= 75>>
<<set $npc_chuck.timebased.water = 100>>
<<applyStress -1>>
<</if>>
<<if $npc_chuck.timebased.grow >= 100 && !$player.locations.plant && $fetish.tentacle>>
<<initRoom>>
<<moveTo "event_chuck_outgrow_planter">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_chuck.stage == 4>>
Your friend <<=setup.getNpcName('npc_chuck', 'suffix')>> has grown large, an erotic jungle-like fixture taking up a whole corner of the room with <<his npc_chuck>> tangled mix of penis-like vines dripping "nectar," flower-like sprouts ready to milk your breasts, and the circle of fuckable sprouts around <<his npc_chuck>> base.
<<if $npc_chuck.timebased.fed > 50 && $npc_chuck.timebased.water > 50>>
<<He npc_chuck>> looks happy, hydrated and full of nutrients.
<<elseif $npc_chuck.timebased.fed > 50>>
<<He npc_chuck>> looks happy, <<if $npc_chuck.timebased.water < 25>>but bone dry<<else>>if a little dry<</if>>.
<<elseif $npc_chuck.timebased.water > 50>>
<<He npc_chuck>> looks watered, but a bit droopy from lack of "other" nutrients.
<<else>>
You seem to have been neglecting <<him npc_chuck>> a bit, as <<he npc_chuck>> looks both dry and lacking the vibrancy that seems to come from treating <<him npc_chuck>> with "other" nutrients.
<</if>>
<<elseif $npc_chuck.stage >= 1>>
<<if $npc_chuck.flags.fed_cum && $npc_chuck.flags.fed_milk>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> sways softly as if in an invisible breeze; <<his npc_chuck>> phallic sprouts beaded with sweet-smelling nectar while flowering shoots dangle above and seem to almost track your movements.
<<elseif $npc_chuck.flags.fed_cum>>
<<if $npc_chuck.timebased.fed > 50>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> is looking big and happy, <<his npc_chuck>> phallic sprouts beaded with sweet-smelling nectar.
<<else>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> is looking big but a bit thirsty, no nectar currently dripping from <<his npc_chuck>> phallic sprouts.
<</if>>
<<else>>
You look at your friend <<=setup.getNpcName('npc_chuck', 'suffix')>>. <<He npc_chuck>> is looking large and healthy in <<his npc_chuck>> large new pot, yet there is a certain missing sheen to <<his npc_chuck>> leaves and you think back to <<=ps(setup.getNpcName('npc_botanist','first'))>> suggestion that you water <<him npc_chuck>> with cum...
<</if>>
<<else>>
<<if $scene.prewater <= 75>>
You water <<=setup.getNpcName('npc_chuck', 'suffix')>>.
<<if $scene.prewater == 0>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> looked really dry. That was about time!
<<elseif $scene.prewater < 50>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> looks really thirsty. That was about time!
<<else>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> looks wet enough. But better safe then sorry.
<</if>>
<<else>>
You just watered <<=setup.getNpcName('npc_chuck', 'suffix')>>. You decide to watch <<him npc_chuck>> for a little bit instead.
<</if>>
<</if>>
<<switch $npc_chuck.stage>>
<<case 0>>
<<if $npc_chuck.timebased.grow < 10>>
<<He npc_chuck>> remains the sprout of a plant unknown to you.
<<elseif $npc_chuck.timebased.grow < 50>>
Who would have guessed that a plant would benefit from regular watering? Just about everyone. <<=setup.getNpcName('npc_chuck', 'suffix')>> has grown a little bit. You still have no idea what kind of plant <<he npc_chuck>> is.
<<elseif $npc_chuck.timebased.grow < 100>>
Regular watering has been great for <<=setup.getNpcName('npc_chuck', 'suffix')>>. <<His npc_chuck>> stalks are thick and hearty looking, and <<he npc_chuck>> has even sprouted something sort of like a flower, a small, phosphorescent glowing stalk curling up from <<his npc_chuck>> centre. But you're unsure if plants are supposed to move. <<He npc_chuck>> is now the size of a baseball.
<<elseif $fetish.tentacle>>
Diligent care and watering has caused <<=setup.getNpcName('npc_chuck', 'suffix')>> to start to outgrow <<his npc_chuck>> pot. <<He npc_chuck>> has also developed a central stalk that has a slight glow to it. Sometimes you swear it follows you as you move around the room. You also note that it seems to be constantly dripping a sort of milky sap.
<<else>>
Diligent care and watering has <<=setup.getNpcName('npc_chuck', 'suffix')>> looking happy and healthy.<br>
<br>
~ Further <<=setup.getNpcName('npc_chuck', 'suffix')>> content disabled due to fetish flags ~ <<hint $options "Enable tentacle content to experience this scene.">>
<</if>>
<<case 1>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> is looking much happier in <<his npc_chuck>> new planter, already rapidly growing to fill <<his npc_chuck>> new home, <<his npc_chuck>> various leaves growing thicker and longer, seeming to almost writhe, while <<his npc_chuck>> main, central stalk has grown even taller and thicker, almost constantly trailing drips of a thick, milky sap.
<<default>>
ERROR: unexpected npc_chuck.stage <<=$npc_chuck.stage>>
<</switch>>
<<if $scene.prewater <= 75>>
Looking at <<=setup.getNpcName('npc_chuck', 'suffix')>> calms your mind for some unknown reason.
<<else>>
While you appreciate your leafy friend, it isn't enough to dent your current stress.
<</if>>
<br><br>
<<if $options.cuckMode>>
From the other side of the room you would swear your cactus is watching...<br>
<br>
<</if>>
<<if $npc_chuck.stage >= 1>>
<<if setup.checkItemOwned('plant_food')>>
[<<moveTo "room_chuck_nutrient_1" 'Give <<him npc_chuck>> a nutrient substitute.' 60>>]<br>
<<elseif $npc_chuck.flags.fed_nutrient>>
[@@.link_locked;You are out of artificial nutrients to give <<him npc_chuck>>.@@]<br>
<</if>>
<<if $npc_chuck.timebased.water <= 75>>
[<<moveTo "room_chuck_care_2" 'Water <<him npc_chuck>>.' 60 "<<set $scene.action='water'>>">>]<br>
<<else>>
[@@.link_locked;<<He npc_chuck>> is not presently in need of watering.@@]<br>
<</if>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if $player.timebased.horny >= 25>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $npc_chuck.flags.fed_cum>>
[<<moveTo "room_chuck_care_2" 'Cum on <<him npc_chuck>>.' 60 "<<set $scene.action='cum'>>">>]<br>
<<else>>
[<<moveTo "event_horticulture_first_2_masturbate" 'Try and jerk off on <<=setup.getNpcName("npc_chuck", "suffix")>> as instructed.' 300>>]<br>
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("plug") && $player.flags.masturbation.plug>>
<<if setup.getTotalValue("anal") > 7>>
<<if $npc_chuck.flags.fed_cum>>
[<<moveTo "room_chuck_care_2" 'Wiggle your plug and try and cum on <<=setup.getNpcName("npc_chuck", "suffix")>> as instructed.' 300 "<<set $scene.action='cum'>>">>]<br>
<<else>>
[<<moveTo "event_horticulture_first_2_masturbate" 'Wiggle your plug and try and cum on <<=setup.getNpcName("npc_chuck", "suffix")>> as instructed.' 300 "<<set $scene.action='plug'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;Your chastity device interferes with you cumming on <<=setup.getNpcName("npc_chuck", "suffix")>>, and you are not such an anal slut to cum from your plug alone.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are presently locked and restricted by your chastity device.@@]<br>
<</if>>
<</if>>
<<if $player.flags.masturbation.dildo>>
<<if $npc_chuck.flags.fed_cum>>
[<<moveTo "room_chuck_care_2" 'Grab a dildo and pound your ass until you cum on <<him npc_chuck>>.' 300 "<<set $scene.action='dildo'>>">>]<br>
<<else>>
[<<moveTo "event_horticulture_first_2_masturbate" 'Pound your ass with a dildo until you cum on <<=setup.getNpcName("npc_chuck", "suffix")>>, as instructed.' 300 "<<set $scene.action='dildo'>>">>]<br>
<</if>>
<</if>>
<<else>>
[@@.link_locked;You do not feel sufficiently aroused to masturbate.@@]<br>
<</if>>
<<elseif $player.body_ref.penis>>
[@@.link_locked;You no longer produce cum with which to feed <<=setup.getNpcName("npc_chuck", "suffix")>>.@@]<br>
<<else>>
[@@.link_locked;You have no penis with which to feed <<=setup.getNpcName("npc_chuck", "suffix")>> cum.@@]<br>
<</if>>
<<if $player.timebased.milking.cream_storage >= 50>>
[<<moveTo "room_chuck_care_2" 'Give <<him npc_chuck>> some cum from the fridge.' 60 "<<set $scene.action='cum_fridge'>>">>]<br>
<</if>>
<<if $npc_chuck.stage >= 1>>
<<if $player.body_ref.milkProduction > 0>>
[<<moveTo "room_chuck_care_2" 'Give <<him npc_chuck>> some milk fresh from your teat.' 60 "<<set $scene.action='milk'>>">>]<br>
<</if>>
<<if $player.timebased.milking.milk_storage >= 50>>
[<<moveTo "room_chuck_care_2" 'Give <<him npc_chuck>> some milk from the fridge.' 60 "<<set $scene.action='milk_fridge'>>">>]<br>
<<else>>
[@@.link_locked;You do not have enough milk to feed <<him npc_chuck>> with.@@]<br>
<</if>>
<<if $fetish.piss>>
[<<moveTo "room_chuck_care_2" 'Piss on <<him npc_chuck>>.' 60 "<<set $scene.action='piss'>>">>]<br>
<</if>>
<<if $npc_chuck.timebased.nectar >= 20>>
[<<moveTo "room_chuck_care_2" 'Lick up some of <<his npc_chuck>> nectar.' 60 "<<set $scene.action='lick'>>">>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "room_livingroom" "Living room." 30>>]
</div>/*#
#desc: chuck grew from autowatering
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.locations.plant = true>>
<<set $npc_chuck.flags.event = "">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
As you water <<=setup.getNpcName('npc_chuck', 'suffix')>> you notice what looks like a small crack in <<his npc_chuck>> pot. Examining things closer it becomes quickly apparent that your leafy friend is starting to outgrow <<his npc_chuck>> container. You find yourself thinking back to the day you purchased <<him npc_chuck>>...<br>
<br>
It was right after you and <<=setup.getNpcName("npc_exgirlfriend","first")>> moved in together as she suggested your new flat would be a bit more cheery with the addition of a plant or two. What really stuck in your mind was the enthusiastic salesperson at the store who, approaching the two of you as you looked at some azaleas insisted that the two of you would enjoy <<=setup.getNpcName('npc_chuck', 'suffix')>> "@@.npc_botanist;So much better!@@"<br>
<br>
Looking at <<him npc_chuck>> now you think it might be a good idea to head back to the quirky gardening store you first purchased <<him npc_chuck>> at to get a bigger pot and maybe some more fertilizer? The shopkeeper was kind of enigmatic about even what <<he npc_chuck>> was, just that <<he npc_chuck>> was "perfect" for the two of you.<br>
<br>
<<printThought "Hmm, I think I remember seeing a horticulturist shop near the mall...">><br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: advanced chuck care
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_chuck.stage == 4>>
Your friend <<=setup.getNpcName('npc_chuck', 'suffix')>> has grown large, an erotic jungle-like fixture taking up a whole corner of the room with <<his npc_chuck>> tangled mix of penis-like vines dripping "nectar," flower-like sprouts ready to milk your breasts, and the circle of fuckable sprouts around <<his npc_chuck>> base.
<<if $npc_chuck.timebased.fed > 50 && $npc_chuck.timebased.water > 50>>
<<He npc_chuck>> looks happy, hydrated and full of nutrients.
<<elseif $npc_chuck.timebased.fed > 50>>
<<He npc_chuck>> looks happy... <<if $npc_chuck.timebased.water < 25>>but bone dry<<else>>if a little dry<</if>>.
<<elseif $npc_chuck.timebased.water > 50>>
<<He npc_chuck>> looks watered, but a bit droopy from lack of "other" nutrients.
<<else>>
You seem to have been neglecting <<him npc_chuck>> a bit, as <<he npc_chuck>> looks both dry and lacking the vibrancy that seems to come from treating <<him npc_chuck>> with "other" nutrients.
<</if>>
<<elseif $npc_chuck.stage == 3 && (!$player.body_ref.vagina || setup.checkItemTypeWorn("cage") && !setup.isCage() || $player.virgin.vaginal)>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> looms in the corner of the living room, <<his npc_chuck>> trio of thick shafts dripping with nectar, oversized cocks that seem to follow your movements through the room. <<His npc_chuck>> scent is strong, alluring... and you feel drawn towards <<him npc_chuck>>...<br>
<br>
[<<moveTo "event_chuck_final_sex_first_1" "Approach <<his npc_chuck>> beckoning vines." 600>>]<br>
<<else>>
<<if $npc_chuck.flags.fed_cum && (!$fetish.milking || $npc_chuck.flags.fed_milk || $npc_chuck.flags.fed_nutrient)>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> sways softly as if in an invisible breeze; <<his npc_chuck>> phallic sprouts beaded with sweet-smelling nectar while <<his npc_chuck>> lower shoots flutter slightly. From the moment you entered the room it has seemed like <<he npc_chuck>> is tracking your movements.
<<elseif $npc_chuck.flags.fed_cum>>
<<if $npc_chuck.timebased.fed > 50 && $npc_chuck.timebased.water > 50>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> is looking big and happy.
<<elseif $npc_chuck.timebased.water > 50>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> is looking big but a bit... hungry? <<His npc_chuck>> central sprout seems to be tracking you intently, and though hollow shoots around <<his npc_chuck>> base are quivering slightly, as if in invitation...
<<elseif $npc_chuck.timebased.fed > 50>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> is looking big but a bit thirsty, no nectar currently dripping from <<his npc_chuck>> phallic sprouts.
<<else>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> is looking a bit under the weather, you need to stay on top of <<his npc_chuck>> care!
<</if>>
<<else>>
You look at your friend <<=setup.getNpcName('npc_chuck', 'suffix')>>. <<He npc_chuck>> is looking large and healthy in <<his npc_chuck>> large new pot, yet there is a certain missing sheen to <<his npc_chuck>> leaves. You think back to <<=ps(setup.getNpcName('npc_botanist','first'))>> suggestion that you water <<him npc_chuck>> with cum...
<</if>>
<</if>>
<br><br>
<<if $npc_chuck.stage != 3>>
<<if $npc_chuck.timebased.nectar < 25>>
<<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> central stalks are dry and clean, with no nectar for you to harvest.
<<elseif $npc_chuck.timebased.nectar < 50>>
One of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> central stalks is starting to drip with nectar.
<<elseif $npc_chuck.timebased.nectar < 75>>
Most of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> central stalks are dripping with thick, enticing nectar.
<<else>>
All of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> central stalks are dripping with thick, enticing nectar.
<</if>>
<<if $npc_chuck.timebased.egg > 0>>
<<if $npc_chuck.timebased.egg >= 100>>
<<His npc_chuck>> lower tendrils look full of kumquat-sized bulges.
<<elseif $npc_chuck.timebased.egg >= 66>>
There is some significant swelling across a number of <<his npc_chuck>> lower tendrils — at least half a dozen bulges, each the size of a kumquat.
<<elseif $npc_chuck.timebased.egg >= 33>>
There is some slight swelling in some of <<his npc_chuck>> lower tendrils and you recall <<=ps(setup.getNpcName('npc_botanist','first'))>> comment that the artificial nutrients could cause pearl-like reactions.
<<else>>
There is some slight swelling in some of <<his npc_chuck>> lower tendrils and you recall <<=ps(setup.getNpcName('npc_botanist','first'))>> comment that the artificial nutrients could cause pearl-like reactions. For now things look pretty minor and you don't think there's anything you can do.
<</if>>
<<elseif $npc_chuck.flags.fed_nutrient>>
It appears that the egg-like blockages from feeding <<=setup.getNpcName('npc_chuck', 'suffix')>> artificial nutrients have all been cleared out.
<</if>>
<br><br>
<<if $npc_chuck.timebased.water <= 75>>
[<<moveTo "room_chuck_care_2" 'Water <<him npc_chuck>>.' 60 "<<set $scene.action='water'>>">>]<br>
<<else>>
[@@.link_locked;<<He npc_chuck>> is not presently in need of watering.@@]<br>
<</if>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if $player.timebased.horny >= 25>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $npc_chuck.flags.fed_cum>>
[<<moveTo "room_chuck_care_2" 'Cum on <<him npc_chuck>>.' 300 "<<set $scene.action='cum'>>">>]<br>
<<else>>
[<<moveTo "event_horticulture_first_2_masturbate" 'Try and cum on <<=setup.getNpcName("npc_chuck", "suffix")>> as instructed.' 300 "<<set $scene.action='hand'>>">>]<br>
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("plug") && $player.flags.masturbation.plug>>
<<if setup.getTotalValue("anal") > 7>>
<<if $npc_chuck.flags.fed_cum>>
[<<moveTo "room_chuck_care_2" 'Finger your plug and cum on <<him npc_chuck>>.' 300 "<<set $scene.action='cum'>>">>]<br>
<<else>>
[<<moveTo "event_horticulture_first_2_masturbate" 'Try and cum on <<=setup.getNpcName("npc_chuck", "suffix")>> by fingering your plug.' 300 "<<set $scene.action='plug'>>">>]<br>
<</if>>
<<else>>
<<set _analstimlock = true>>
[@@.link_locked;You are not so much of a butt-slut that you could cum on <<him npc_chuck>> purely from anal stimulation.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are presently locked and restricted by your chastity device.@@]<br>
<</if>>
<</if>>
<<if $npc_chuck.flags.fed_cum && $player.flags.masturbation.dildo>>
<<if setup.getTotalValue("anal") > 7>>
<<if setup.checkItemTypeTag("plug",["locking"])>>
[@@.link_locked;Your ass is presently locked full, you cannot fit a dildo in.@@]<br>
<<else>>
[<<moveTo "room_chuck_care_2" 'Grab a dildo and pound your ass until you cum on <<him npc_chuck>>.' 300 "<<set $scene.action='dildo'>>">>]<br>
<</if>>
<<elseif !_analstimlock>>
[@@.link_locked;You are not so much of a butt-slut that you could cum on <<him npc_chuck>> purely from anal stimulation.@@]<br>
<</if>>
<</if>>
<<else>>
[@@.link_locked;You do not feel sufficiently aroused to masturbate.@@]<br>
<</if>>
<</if>>
<<if $player.timebased.milking.cream_storage >= 50>>
<<if $npc_chuck.flags.fed_cum>>
[<<moveTo "room_chuck_care_2" 'Give <<him npc_chuck>> some cum from the fridge.' 180 "<<set $scene.action='cum_fridge'>>">>]<br>
<<else>>
[<<moveTo "event_horticulture_first_2_cumwater" '"Water" <<him npc_chuck>> with some cum from the fridge.' 180>>]<br>
<</if>>
<</if>>
<<if $fetish.piss>>
[<<moveTo "room_chuck_care_2" 'Piss on <<him npc_chuck>>.' 60 "<<set $scene.action='piss'>>">>]<br>
<</if>>
<<if $fetish.milking>>
<<if $player.body_ref.milkProduction > 0>>
[<<moveTo "room_chuck_care_2" 'Give <<him npc_chuck>> some milk fresh from your teat.' 60 "<<set $scene.action='milk'>>">>]<br>
<</if>>
<<if $player.timebased.milking.milk_storage >= 50>>
[<<moveTo "room_chuck_care_2" 'Give <<him npc_chuck>> some milk from the fridge.' 60 "<<set $scene.action='milk_fridge'>>">>]<br>
<<else>>
[@@.link_locked;You do not have enough milk to feed <<him npc_chuck>> with.@@]<br>
<</if>>
<</if>>
<<if setup.checkItemOwned('plant_food')>>
[<<moveTo "room_chuck_nutrient_1" 'Give <<him npc_chuck>> a nutrient substitute.' 60>>]<br>
<<elseif $npc_chuck.flags.fed_nutrient>>
[@@.link_locked;You are out of artificial nutrients to give <<him npc_chuck>>.@@]<br>
<</if>>
<br>
<<if $npc_chuck.stage >= 2>>
<<if $daily.chuckSex>>
[@@.link_locked;You have already had sex with <<=setup.getNpcName("npc_chuck", "suffix")>> today.@@]<br>
<<if $npc_chuck.timebased.nectar >= 25>>
<<if $npc_chuck.flags.lick>>
[<<moveTo "room_chuck_care_2" 'Lick up some of <<his npc_chuck>> nectar.' 60 "<<set $scene.action='lick'>>">>]<br>
<<else>>
[<<moveTo "event_chuck_sex_lick" 'Sample <<his npc_chuck>> nectar.' 60>>]<br>
<</if>>
<</if>>
<<else>>
<<if $npc_chuck.flags.lick && !$npc_chuck.flags.oral>>
[<<moveTo "event_chuck_sex_oral" 'Suck on <<his npc_chuck>> central stalk.' 600>>]<br>
<</if>>
<<if $npc_chuck.timebased.nectar >= 25>>
<<if $npc_chuck.flags.lick>>
[<<moveTo "room_chuck_care_2" 'Lick up some of <<his npc_chuck>> nectar.' 60 "<<set $scene.action='lick'>>">>]<br>
<<else>>
[<<moveTo "event_chuck_sex_lick" 'Sample <<his npc_chuck>> nectar.' 60>>]<br>
<</if>>
<</if>>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if setup.calcErection()>>
[<<moveTo "event_chuck_sex_penis" 'Fuck <<=setup.getNpcName("npc_chuck","suffix")>>.' 600>>]<br>
<<else>>
[@@.link_locked;You are insufficiently aroused to fuck <<=setup.getNpcName("npc_chuck","suffix")>>!@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are locked in chastity and unable to take "advantage" of the inviting hollows around <<=ps(setup.getNpcName("npc_chuck", "suffix"))>> base.@@]<br>
<</if>>
<</if>>
<<if $npc_chuck.stage == 4 || $npc_chuck.flags.oral>>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_chuck_sex_anal" 'Get double penetrated by a pair of <<=ps(setup.getNpcName("npc_chuck","suffix"))>> stalks.' 600>>]<br>
<<else>>
[<<moveTo "event_chuck_sex_anal" 'Shove one of <<=ps(setup.getNpcName("npc_chuck","suffix"))>> stalks up your ass.' 600>>]<br>
<</if>>
<<elseif setup.getTotalValue("bimbofication") > 10>>
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
[<<moveTo "event_chuck_sex_anal" 'Show your depravity and surrender your virginity to a pair of tentacles.' 600>>]<br>
<<else>>
[<<moveTo "event_chuck_sex_anal" 'Show your depravity and shove one of <<=ps(setup.getNpcName("npc_chuck","suffix"))>> stalks up your ass and let a plant take your virginity.' 600>>]<br>
<</if>>
<<else>>
[@@.link_locked;I don't think the first time I have anal sex should be with a plant.@@]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage")>>
[@@.link_locked;You are locked in chastity and unable to let <<=setup.getNpcName("npc_chuck", "suffix")>> fuck you.@@]<br>
<<else>>
[<<moveTo "event_chuck_sex_vaginal" 'Spread your legs for <<=setup.getNpcName("npc_chuck", "suffix")>>.' 600>>]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<<if $npc_chuck.flags.fed_nutrient>>
<<if $npc_chuck.timebased.egg >= 33>>
<<if $npc_chuck.flags.oviposited>>
[<<moveTo "event_chuck_ovipositor_1" 'Get oviposited.' 600>>]<br>
<<else>>
[<<moveTo "event_chuck_ovipositor_first_1" 'See if you can clear out the bulges clogging some of <<his npc_chuck>> tendrils.' 600>>]<br>
<</if>>
<<elseif $npc_chuck.timebased.egg > 0>>
[@@.link_locked;<<=ps(setup.getNpcName("npc_chuck","first"))>> build-ups are too small for you to clear.@@]<br>
<<else>>
[@@.link_locked;<<=setup.getNpcName("npc_chuck","first")>> does not yet seem to have any build-ups in development.@@]<br>
<</if>>
<<else>>
[@@.link_locked;<<=ps(setup.getNpcName("npc_chuck","first"))>> build-ups are too small for you to clear.@@]<br>
<</if>>
<</if>>
<br>
[<<moveTo "room_livingroom" "Living room." 30>>]
</div>/*#
#desc: advanced chuck care
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'water'>>
<<set $npc_chuck.timebased.water=100>>
<<applyStress -1>>
<<case 'lick'>>
<<applyStress -3>>
<<applyFatigue -10>>
<<changeHorny 10>>
<<set $npc_chuck.timebased.nectar -= 20>>
<<case 'piss'>>
<<set $npc_chuck.timebased.water=100>>
<<set $npc_chuck.timebased.aggressive = true>>
<<if !$npc_chuck.flags.fed_piss && $npc_chuck.flags.event == "">>
<<set $npc_chuck.flags.event = "piss">>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_piss'
2
'theme_horticulturist_chuck_piss'
false>>
<</if>>
<<case 'milk'>>
<<set $npc_chuck.timebased.fed += $player.timebased.milking.milk_supply>>
<<set $player.timebased.milking.milk_supply = 0>>
<<applyStress -3>>
<<if !$npc_chuck.flags.fed_milk && $npc_chuck.flags.event == "">>
<<set $npc_chuck.flags.event = "milk">>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_milk'
2
'theme_horticulturist_chuck_milk'
false>>
<</if>>
<<case 'milk_fridge'>>
<<set $player.timebased.milking.milk_storage -= 50>>
<<set $npc_chuck.timebased.fed += 50>>
<<if !$npc_chuck.flags.fed_milk && $npc_chuck.flags.event == "">>
<<set $npc_chuck.flags.event = "milk">>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_milk'
2
'theme_horticulturist_chuck_milk'
false>>
<</if>>
<<case 'cum' 'dildo'>>
<<set $npc_chuck.timebased.fed += $player.timebased.milking.cream_supply>>
<<playerOrgasm>>
<<if $scene.action == 'dildo'>>
<<applyExperience 'anal' 10 'very' $ALONE>>
<<applyExperience 'humiliation' 9 'normal' $ALONE>>
<<elseif setup.checkItemTypeWorn("cage")>>
<<set _anal = setup.getEffectivePlugSize()>>
<<applyExperience 'anal' _anal 'normal' $ALONE>>
<<applyExperience 'humiliation' 9 'normal' $ALONE>>
<</if>>
<<case 'cum_fridge'>>
<<set $player.timebased.milking.cream_storage -= 50>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'water'>>
You water <<=setup.getNpcName('npc_chuck', 'suffix')>>. The calming act brings a smile to your face while making <<him npc_chuck>> perk up a little.
<<case 'lick'>>
You wrap your lips around one of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> stalks, licking up some of <<his npc_chuck>> tasty nectar. Responding to your attention <<he npc_chuck>> pumps out more of the delectable liquid into your mouth and you gulp the sweet treat down, feeling invigorated, happy, and more than a bit horny by the time you've had your fill.
<<case 'piss'>>
You stand over <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> planter and let loose with a golden stream. <<His npc_chuck>> leaves rustle slightly as a few flecks bound off to trickle down towards <<his npc_chuck>> base. You feel a slight ominous energy coming from <<him npc_chuck>> by the time you're done.<br>
<br>
<<printThought "Hmm, I wonder if watering <<him npc_chuck>> like this is going to affect anything...">><br>
<br>
<<if !$npc_chuck.flags.fed_piss>>
You aren't sure whether this was a good idea and decide you should experiment a bit more before making a habit of it.
<</if>>
<<case 'milk'>>
You aim your bare teats at <<=setup.getNpcName('npc_chuck', 'suffix')>> but barely have you started to squeeze out your first spurt of milk when two flower-tipped sprouts reach out to envelop your breasts. You gasp softly at the coaxing suction as <<=setup.getNpcName('npc_chuck', 'suffix')>> gently milks you dry.<br>
<br>
<<=setup.getNpcName('npc_chuck', 'suffix')>> detaches with a soft pop, leaving you feeling sensitive and drained, but strangely happy.
<<if !$npc_chuck.flags.fed_milk>>
<br><br>
You aren't sure whether this was a good idea and decide you should experiment a bit more before making a habit of it.
<</if>>
<<case 'milk_fridge'>>
You fetch a glass of milk from the fridge and pour it onto <<=setup.getNpcName('npc_chuck', 'suffix')>>. The creamy liquid does not even get a chance to run down, instead soaking in almost immediately as <<=setup.getNpcName('npc_chuck', 'suffix')>> seems to noticeably perk up.
<<if !$npc_chuck.flags.fed_milk>>
<br><br>
You aren't sure whether this was a good idea and decide you should experiment a bit more before making a habit of it.
<</if>>
<<case 'cum'>>
Standing over <<=setup.getNpcName('npc_chuck', 'suffix')>> you
<<if !setup.checkItemTypeWorn("cage")>>
whip it out and have a quick wank. Aiming at the base of <<his npc_chuck>> stalk you spurt your load only for a vine to dart out and catch it right out of the air.
<<else>>
dangle your <<getWordMyPenis>> over <<him npc_chuck>> and start fingering your <<=setup.getItemTypeName('plug')>> like a depraved anal slut. True to your nature, you cum just from the stimulation of your plug, dribbling your load down around <<his npc_chuck>> base. No sooner have you climaxed than one of <<his npc_chuck>> stalks wriggles down, wiping away at your mess.
<</if>>
You're a bit startled at how fast <<he npc_chuck>> moved but <<he npc_chuck>> makes no further action in your direction; it would seem <<hes npc_chuck>> something of a<<if $npc_chuck.fem>> "polite plant" <<else>> "gentleman" <</if>>when it comes to initiating anything more.
<<case 'dildo'>>
Standing over <<=setup.getNpcName('npc_chuck', 'suffix')>> you grab your favourite dildo and start pounding your ass.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
You merely aim your erection in <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> direction as you focus on your ass, thrusting and pounding your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as you close your eyes and focus, focus...<br>
<br>
Your determination is rewarded with a strong analgasm and you moan as you shoot thick ropes of cum into <<his npc_chuck>> pot.
<<else>>
Trapped in its prison your <<getWordMyPenis false>> strains in excitement, eventually leaking onto <<=setup.getNpcName('npc_chuck', 'suffix')>> in a testament to how much of a depraved anal slut you have become.
<</if>>
<<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> leaves eagerly unfurl to catch every drop you spill. Though <<his npc_chuck>> leaves reach close <<he npc_chuck>> does not touch you; it would seem <<hes npc_chuck>> something of a<<if $npc_chuck.fem>> "polite plant" <<else>> "gentleman" <</if>>when it comes to initiating anything more.
<<case 'cum_fridge'>>
You fetch a bit of your special "cream" from the fridge and pour it onto <<=setup.getNpcName('npc_chuck', 'suffix')>>. A tentacle-like vine moves to drink it out of the air, even going so far as to reach up into the container and clean every last drop. <<=setup.getNpcName('npc_chuck', 'suffix')>> definitely looks a bit "perkier" after <<his npc_chuck>> treat.
<<default>>
ERROR: unknown scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_chuck_care_1" 'Do something else with <<=setup.getNpcName("npc_chuck", "suffix")>>.' 0 "<<set $player.cutscene.lockinventory=false>>">>]<br>
[<<moveTo "room_livingroom" "Living room." 30 "<<set $player.cutscene.lockinventory=false>>">>]
</div>/*#
#desc: masturbate onto chuck first time
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_chuck.timebased.fed += $player.timebased.milking.cream_supply>>
<<playerOrgasm>>
<<switch $scene.action>>
<<case 'dildo'>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<case 'plug'>>
<<set _plug = setup.getEffectivePlugSize()>>
<<applyExperience 'anal' _plug 'terrible' $ALONE>>
<</switch>>
<<if !$npc_chuck.flags.fed_cum>>
<<set $npc_chuck.flags.event = "cum">>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _anal = setup.getEffectivePlugSize()>>
<<applyExperience 'anal' _anal 'normal' $ALONE>>
<<applyExperience 'humiliation' 9 'normal' $ALONE>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.action == "dildo">>
You fetch your favourite dildo and, standing over <<=setup.getNpcName('npc_chuck', 'suffix')>>, and start pounding your ass with everything you've got.<br>
<br>
Your prostate cries out in pleasure as you angle your attack and hump desperately, and it isn't long before you
<<if !setup.checkItemTypeWorn("cage")>>
fire off a hands-free analgasm right into <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> roots. You
<<else>>
dribble an orgasm <<if setup.isCage()>>through your cage<<else>>out the edges of your belt<</if>>, letting it drip down <<his npc_chuck>> main stalk, the "jail-break" of your sperm only serving to remind you of your imprisoned state, and your analgasm that even so locked you have learned to move past mere penile pleasures. You
<</if>>
<<else>>
Standing over <<=setup.getNpcName('npc_chuck', 'suffix')>>,
<<if !setup.checkItemTypeWorn("cage") && $scene.action == "hand">>
you whip it out and have a quick wank. Aiming at the base of <<his npc_chuck>> stalk you spurt your load and
<<else>>
you dangle your <<getWordMyPenis>> over <<him npc_chuck>> and start fingering your <<=setup.getItemTypeName('plug')>>. As depraved as it is to get off this way, you slowly work your way up to a <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>caged<<else>>locked<</if>><<else>>full-on<</if>> analgasm, dribbling your load down around <<his npc_chuck>> base. You catch your breath and
<</if>>
<</if>>
watch your cum soak into the soil and then... nothing.<br>
<br>
<<printThought "Kind of silly to expect something to change immediately... and that's if this whole thing wasn't just <<=setup.getNpcName('npc_botanist','first')>> pulling my leg!">><br>
<br>
Wiping yourself up you turn away feeling more than a bit silly.<br>
<br>
[<<moveTo "room_livingroom" 'Do something else.' 60 "<<set $player.cutscene.lockinventory=false>>">>]
</div>/*#
#desc: feed chuck cum from fridge
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_chuck.timebased.fed += 100>>
<<set $player.timebased.milking.cream_storage -= 100>>
<<if !$npc_chuck.flags.fed_cum>>
<<set $npc_chuck.flags.event = "cum">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
Fetching some cum from the fridge you dribble it around the base of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> main stalk. Other than it soaking into the soil nothing happens.<br>
<br>
<<printThought "Kind of silly to expect something to change immediately... and that's if this whole thing wasn't just <<=setup.getNpcName('npc_botanist','first')>> pulling my leg!">><br>
<br>
[<<moveTo "room_livingroom" 'Do something else.' 60 "<<set $player.cutscene.lockinventory=false>>">>]
</div>/*#
#desc: give chuck nutrient substitute
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'plant_food'>>
<<set $npc_chuck.flags.fed_nutrient = true>>
<<if $npc_chuck.flags.fed_cum>>
<<if !$npc_chuck.flags.fed_milk>>
<<set $npc_chuck.flags.event = "milk">>
<</if>>
<<else>>
<<set $npc_chuck.flags.event = "cum">>
<</if>>
<<set $npc_chuck.timebased.fed += 100>>
<<set $npc_chuck.timebased.egg += 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
You tip the vial of nutrients out over <<=setup.getNpcName('npc_chuck', 'suffix')>>. Somewhat viscous it slowly flows down one of <<his npc_chuck>> shoots only for another of <<his npc_chuck>> appendages to curl around and slurp it up.<br>
<br>
You wait to see if anything else happens but, other than some of <<his npc_chuck>> lower vines flexing as the nutrient seems to run through <<him npc_chuck>> you don't see any changes.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: notice chuck cum growth
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.grow = $npc_chuck.stage < 2>>
<<if $scene.grow>>
<<set $npc_chuck.stage = 2>>
<</if>>
<<set $npc_chuck.flags.event = "">>
<<set $npc_chuck.flags.fed_cum = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
Going to water <<=setup.getNpcName('npc_chuck', 'suffix')>> you are shocked at how much <<he npc_chuck>> has grown, as well as HOW <<he npc_chuck>> has grown.<br>
<br>
The first thing you note is a second glowing-tipped phallic shoot sprouting up from <<his npc_chuck>> leafy centre. Almost as big as the original each of the two thick shafts are slightly beaded at the tip with what looks like some sort of nectar.<br>
<br>
In addition to the simultaneously alluring and ominous stalks there are several hollow shafts splayed out from <<his npc_chuck>> base, the padded tubes disappearing down into <<his npc_chuck>> thick leafy core. Tentatively poking a finger into one of the holes it feels slick and moist, the walls fluttering slightly at your touch.<br>
<br>
<<printThought "How weird...">><br>
<br>
[<<moveTo "room_livingroom" 'Do something else.' 60>>]
</div>/*#
#desc: notice chuck milk growth
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_chuck.flags.event = "">>
<<set $npc_chuck.flags.fed_milk = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
Checking <<=setup.getNpcName('npc_chuck', 'suffix')>> you find that your experimentation with "alternate nutrients" has once again resulted in startling spontaneous growth. Some of <<his npc_chuck>> lower shoots have... for lack of a better word, flowered into sort of split lips that look very primed to suckle on a teat...<br>
<br>
<<printThought "Curious...">><br>
<br>
[<<moveTo "room_livingroom" 'Do something else.' 60>>]
</div>/*#
#desc: notice chuck piss growth
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_chuck.flags.event = "">>
<<set $npc_chuck.flags.fed_piss = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
You check <<=setup.getNpcName('npc_chuck', 'suffix')>> for any fresh growth but <<he npc_chuck>> looks relatively unchanged form whence last you looked at <<him npc_chuck>>. Despite the similarity of appearance, however, things feel different, a palatable feeling of tension and pent up aggression.<br>
<br>
<<printThought "Creepy...">><br>
<br>
[<<moveTo "room_livingroom" 'Do something else.' 60>>]
</div>/*#
#desc: notice chuck final growth
#status: FINISHED 0.8.0.0
#ignore_spell: sh
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_chuck.stage = 3>>
<<set $npc_chuck.flags.event = "">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
You turn the corner into the living room and gasp in surprise. Though still (technically) contained to <<his npc_chuck>> large pot <<=setup.getNpcName('npc_chuck', 'suffix')>> has reached a new scale, reaching from floor to ceiling and turning an entire corner of the room into almost a mini jungle.<br>
<br>
Shiny, healthy and vibrant <<his npc_chuck>> form is dense, core surrounded by draping vines of three types — those that end in hollow sheaths, those that end in phallic tips beaded with sweet nectar, and those that end in trumpet-shaped flowers, a trio of massive phallic sprouts coming up from <<his npc_chuck>> core, dripping with nectar, and seeming to track your every movement.<br>
<br>
<<if $fetish.get_raped>>
Seemingly sensing your presence <<he npc_chuck>> rustles slightly, and then suddenly burst into motion, tentacle-like vines shooting across the room to snatch you up and pull you towards <<him npc_chuck>>.<br>
<br>
[<<moveTo "event_chuck_final_sex_first_1" "Oh sh-." 600>>]
<<else>>
Sensing your presence <<he npc_chuck>> rustles slightly in invitation...<br>
<br>
[<<moveTo "event_chuck_final_sex_first_1" "Approach <<his npc_chuck>> beckoning vines." 600>>]<br>
[<<moveTo "room_livingroom" "Living Room." 60>>]
<</if>>
</div>/*#
#desc: horticulturist first visit, get stuff for chuck
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -75>>
<<set $npc_botanist.profile = true>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You reply that you haven't seen any buds, but that <<he npc_chuck>> seems to be outgrowing <<his npc_chuck>> pot.<br>
<br>
"@@.npc_botanist;Interesting, well certainly we can get something that will be a bit less cramped so <<he npc_chuck>> can continue to develop.@@"<br>
<br>
Leading you through the store she piles a cart with quite a large pot plus several different fertilizers. Before you know it she's ringing you up, with a substantial discount "@@.npc_botanist;To make up for your loss.@@"<br>
<br>
Without even thinking you find yourself handing over your card though she seems far more excited at helping you (or is that <<=setup.getNpcName('npc_chuck', 'suffix')>>?) than merely making the sale.<br>
<br>
"@@.npc_botanist;So, you'll want to mix that all up in the new pot, then carefully chip away the old container and re-plant <<him npc_chuck>>. <<Hes npc_chuck>> a hardy sort, but there's no reason to be unkind. Once <<hes npc_chuck>> replanted just continue the usual routine of keeping <<him npc_chuck>> watered and...@@" She starts to reach for a small vial of expensive plant formula and then turns back to you with a conspiratorial glint in her eye.<br>
<br>
"@@.npc_botanist;So I was going to recommend a small additive, but I recall you being a bit cost-conscious so... if you're willing to indulge something some might consider a bit odd I can tell you how to DIY an all natural substitute on your own.@@"<br>
<br>
You nod and she leans in a bit closer
<<if $fetish.piss>>
"@@.npc_botanist;So, chemically, the optimal chemical supplement profile for this species is nigh identical to, of all things, cum.@@" You blink in surprise as she continues on "@@.npc_botanist;I know, it sounds a bit weird, but just spill a bit down near <<his npc_chuck>> base and you should see some lovely results! Also, if you really want to super-charge things note that <<he npc_chuck>> actually likes things a bit more acidic than normal water, in other words, urine.@@"
<<else>>
"@@.npc_botanist;So, chemically, the optimal chemical supplement profile for this species is nigh identical to, of all things, cum.@@" You blink in surprise as she continues on "@@.npc_botanist;I know, it sounds a bit weird, but just spill a bit down near <<his npc_chuck>> base and you should see some lovely results!@@"
<</if>>
<br><br>
You blink in surprise at this odd prescription, but she acts as if this was the most normal thing ever, wishing you luck and telling you to drop by if you have any further questions before another customer approaches the till with their purchase.<br>
<br>
The pot and soil is a bit bulky so you decide to take it straight home.<br>
<br>
[<<moveTo "event_horticulture_first_2" "Leave." 1800>>]
</div>/*#
#desc: arrive home from first horticulture visit
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 60>>
<<applyStress -20>>
<<set $npc_chuck.stage = 1>>
<<set $npc_chuck.timebased.grow = 0>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_cum'
0
'theme_horticulturist_chuck_cum'
true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") > 10 && setup.getTotalValue("strength") > 10>>
Your time at the gym means you have no trouble carrying the heavy pot and large bag of soil home and you deposit them in your living room.
<<else>>
You struggle a bit carrying the large pot and bag of soil home, grateful to finally put it down inside your flat as you reflect that you really should spend more time at the gym.
<</if>>
<br><br>
You would swear <<=setup.getNpcName('npc_chuck', 'suffix')>> rustled a bit in anticipation as you set to work mixing things up in <<his npc_chuck>> new container.<br>
<br>
Turning to <<his npc_chuck>> current pot it seems you made the right call. The small crack you noticed before has already grown large enough that the whole pot splits and falls away with little more than a touch and you quickly ensconce <<him npc_chuck>> in the new, larger container before packing the soil down around <<him npc_chuck>>.<br>
<br>
Filled with a feeling of accomplishment at having taken care of your "friend" you imagine <<his npc_chuck>> leaves are already looking a bit perkier as you look down at <<him npc_chuck>> and consider <<=ps(setup.getNpcName("npc_botanist","first"))>> recommendation.<br>
<br>
<<if $player.timebased.milking.cream_supply == 0 && (!$player.body_ref.penis || $player.body_ref.cumProduction)>>
<<printThought "Water <<him npc_chuck>> with cum... not exactly the easiest thing for me to manage anymore...">>
<</if>>
<<if !$player.body_ref.penis>>
[@@.link_locked;You do not have a penis...@@]<br>
<<elseif $player.body_ref.cumProduction == 0>>
[@@.link_locked;You do not produce cum.@@]<br>
<<elseif setup.checkItemTypeWorn("cage")>>
<<if setup.checkItemTypeWorn("plug") && $player.flags.masturbation.plug>>
<<if setup.getTotalValue("anal") > 7>>
[<<moveTo "event_horticulture_first_2_masturbate" 'Wiggle your plug and try and cum on <<=setup.getNpcName("npc_chuck", "suffix")>> as instructed.' 300 "<<set $scene.action='plug'>>">>]<br>
<<else>>
[@@.link_locked;Your chastity device interferes with you cumming on <<=setup.getNpcName("npc_chuck", "suffix")>>, and you are not such an anal slut to cum from your plug alone.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are presently locked and restricted by your chastity device.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_horticulture_first_2_masturbate" 'Try and jerk off on <<=setup.getNpcName("npc_chuck", "suffix")>> as instructed.' 300 "<<set $scene.action='hand'>>">>]<br>
<</if>>
<<if $player.timebased.milking.cream_storage >= 50>>
[<<moveTo "event_horticulture_first_2_cumwater" '"Water" <<him npc_chuck>> with some cum from the fridge.' 300>>]<br>
<<elseif $player.timebased.milking.cream_storage > 0>>
[@@.link_locked;You do not have enough cum stored up to "water" <<him npc_chuck>>.@@]<br>
<</if>>
[<<moveTo "room_livingroom" 'Do something else.' 60 "<<set $player.cutscene.lockinventory=false>>">>]
</div>/*#
#desc: horticulturist shop
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
<<if !$npc_botanist.profile>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<printShopName 'plant_shop'>> is exactly as you remember it, smelling both of fertilizer and flowers and stocking all manner of plants. You've barely started to look around before the proprietor approaches you with a friendly smile.<br>
<br>
<<if setup.analyzeWornTags(['male','unisex','female']) == "female">>
"@@.npc_botanist;Welcome, what can the plants do for you today...@@" She trails off, staring at you for a long moment. "@@.npc_botanist;Wait... you've changed but... weren't you here a few months back with your girlfriend looking to spruce up your flat? A plant really is the perfect thing to bring life to your home, how are the two of you enjoying your new friend?@@"
<<else>>
"@@.npc_botanist;Welcome, what can the plants do for you today — wait I recognise you!@@" She states with a smile. "@@.npc_botanist;You were here a few months back with your girlfriend looking to spruce up your flat! A plant really is the perfect thing to bring life to your home, how are the two of you enjoying your new friend?@@"
<</if>>
<br><br>
You wince and explain that, actually, the two of you broke up, but that you kept the plant.<br>
<br>
"@@.npc_botanist;Oh,@@" she replies, the conversation having suddenly turned awkward. "@@.npc_botanist;Damn, I was too late...@@" she mumbles to herself before rejoining with a more comforting tone. "@@.npc_botanist;I am sorry to hear things didn't work out. At least with a nice frond-y friend a bit of watering and care and they will always be there for you! Yes, plants really are the most loyal, honest friends a person could ask for! Speaking of, has yours started flowering yet? That species is just such a delight once they are in full bloom.@@"<br>
<br>
[<<moveTo "event_horticulture_first_1" 'Explain about <<=setup.getNpcName("npc_chuck", "suffix")>> outgrowing <<his npc_chuck>> pot.' 60>>]
<<else>>
You approach the front of <<printShopName 'plant_shop'>>, but you can barely squeeze inside. Maybe there's some sort of event, or maybe tulip mania has had a resurgence, regardless you don't think you're going to be able to get hep for your leafy friend today.<br>
<br>
[<<moveTo "room_mall" 'Leave and come back some other time.' 60>>]
<</if>>
<<else>>
You visit <<printShopName 'plant_shop'>>. The proprietor, <<=setup.getNpcName('npc_botanist','first')>> waves at you in greeting as you look around the store.<br>
<br>
[<<moveTo "room_horticulturist_talk" 'Talk to <<=setup.getNpcName("npc_botanist","first")>>.' 60>>]<br>
<<if State.hasPlayed("event_botanist_tentacles_2_5")>>
<<if State.hasPlayed("event_botanist_tentacles_3_work_1_3")>>
[<<moveTo "event_botanist_tentacles_3_work_root" 'Ask about helping her out around the shop some more.' 120>>]<br>
<<elseif State.hasPlayed("event_botanist_tentacles_3_work_0_1")>>
[<<moveTo "event_botanist_tentacles_3_work_0_1_alt" 'Ask about helping her out around the shop.' 120>>]<br>
<<else>>
[<<moveTo "event_botanist_tentacles_3_work_0_1" 'Ask about helping her out around the shop.' 120>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_psychiatrist_drugs_research_1") && !State.hasPlayed("event_psychiatrist_drugs_bot_help_1")>>
[<<moveTo "event_psychiatrist_drugs_bot_help_1" 'Ask about the research you found in <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab.' 300>>]<br>
<</if>>
[<<moveTo "room_horticulturist_flowers" "Order flowers for a friend." 60>>]<br>
<<if setup.checkItemOwned('plant_food')>>
[@@.link_locked;These nutrients aren't cheap — I should use up what I have before buying more.@@]<br>
<<elseif $npc_chuck.flags.fed_nutrient>>
[<<moveTo "room_horticulturist_cum_sub_1" 'Ask about buying more artificial nutrients for <<=setup.getNpcName("npc_chuck", "suffix")>>.' 60>>]<br>
<</if>>
<br>
[<<moveTo "room_mall" "Leave." 120>>]
<</if>>
</div>/*#
#desc: horticulturist send flowers
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You consider ordering flowers to be delivered to one of your friends.<br>
<br>
<<set $scene.contentName = "More dating-related content">>
<<include "futureContentBoilerplate">><br>
<br>
[<<moveTo "room_horticulturist" "Do something else." 60>>]<br>
[<<moveTo "room_mall" "Leave." 600>>]
</div>/*#
#desc: horticulturist talk root
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_botanist','first')>> who looks up from a plant she has been tending to with a smile.<br>
<br>
"@@.npc_botanist;Hello, did you have some questions?@@"<br>
<br>
<<printNpcThemeCategory
'npc_botanist'
'room_horticulturist_talk'
'room_horticulturist_talk_details'
>>
[<<moveTo "room_horticulturist" "Done talking.">>]
</div>/*#
#desc: horticulturist theme: buy chuck cum substitute
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cumSubPrice=200>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_botanist','first')>> if you could buy some more of the "cum substitute" nutrient for <<=setup.getNpcName('npc_chuck', 'suffix')>>.<br>
<br>
"@@.npc_botanist;Certainly, that will be <<=$scene.cumSubPrice>> credits — as I've noted before the process of getting the chemical balance just right is a bit tricky, the natural product is far simpler, if you have access.@@"<br>
<br>
<<if $player.money.total < $scene.cumSubPrice>>
<<printThought "I really shouldn't be spending money I don't have on this sort of thing...">><br>
<br>
<</if>>
<<if $player.money.total < ($player.money.maxcredit * -1)>>
[@@.link_locked;You are in too much debt to make such a purchase.@@]<br>
<<else>>
[<<moveTo "room_horticulturist_cum_sub_2" 'Buy a vial of "special" plant nutrients.' 60>>]<br>
<</if>>
[<<moveTo "room_horticulturist" "Nevermind." 60>>]
</div>/*#
#desc: horticulturist theme: buy chuck cum substitute
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.cumSubPrice)`>>
<<addItem 'plant_food'>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You buy another vial of "artificial" nutrients for <<=setup.getNpcName('npc_chuck', 'suffix')>>.<br>
<br>
"@@.npc_botanist;Now, remember — you need to watch out for if this causes any nodule build-ups, in which case you may need to provide some assistance clearing things out.@@"<br>
<br>
[<<moveTo "room_horticulturist" "Thank her and continue." 60>>]
</div>/*#
#desc: horticulturist theme details
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
"@@.npc_botanist;And what else would you like to know, <<=$player.first_name>>?@@"<br>
<br>
<<printNpcThemeDetails
'npc_botanist'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
</div>/*#
#desc: horticulturist theme: feed chuck cum
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_chuck.flags.fed_cum>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_other'
2
'theme_horticulturist_chuck_other'
false>>
<</if>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_substitute'
0
'theme_horticulturist_chuck_cum_alt_1'
false>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
<<if $npc_chuck.flags.fed_cum>>
You mention following <<=ps(setup.getNpcName('npc_botanist','first'))>> suggestion to feed your plant friend a bit of "special" nutrients.<br>
<br>
She smiles. "@@.npc_botanist;That is so lovely to hear! And I bet your friend loved <<his npc_chuck>> tasty treat!@@"
<<else>>
You bring up <<=ps(setup.getNpcName('npc_botanist','first'))>> suggestion that you feed your plant friend some cum. She nods. "@@.npc_botanist;Yes, that is what I recommended, I take it you haven't tried it yet? I know it may sound weird but the science is quite strong on it being a good source of nutrients for that species.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: horticulturist theme: other things to feed chuck
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_botanist','first')>> if cum is the only "alternative" nutrient that you should try using. She smiles mischievously.<br>
<br>
"@@.npc_botanist;Aren't you a clever one! Yes, in point of fact that species enjoys a variety of bodily secretions, and such will serve to build the bond between plant and caretaker — I so dislike the word owner. Like any organism they will grow and develop based on how they are fed, but their tastes are quite far ranging so have fun experimenting!@@"<br>
<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: horticulturist theme: sexed chuck
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You mention having sex with <<=setup.getNpcName('npc_chuck', 'suffix')>> to <<=setup.getNpcName('npc_botanist','first')>>. She smiles, her eyes glittering with delight.<br>
<br>
"@@.npc_botanist;Isn't <<his npc_chuck>> species just wonderful? Truth be told that is why I recommended <<him npc_chuck>> to you and your ex in the first place. The both of you looked like you needed a bit of help in that regard... if only <<he npc_chuck>> could have grown more swiftly your relationship might have been saved!@@"<br>
<br>
You try to imagine how the "old" you might have reacted to <<=setup.getNpcName('npc_chuck', 'suffix')>> in <<his npc_chuck>> current form. It is quite the gesture, but you put it aside and thank her for the attempt but note that, in a way, things seem to have worked out.<br>
<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: horticulturist theme: chuck nectar
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You bring up the sweet nectar that <<=setup.getNpcName('npc_chuck', 'suffix')>> has begun producing.<br>
<br>
"@@.npc_botanist;Oh! How wonderful to hear. That sort of production is a sign that <<he npc_chuck>> is in wonderful health — note that the "nectar" — it's technically a biologically unique excretion only known to that genus, is quite tasty, and nutritious, with mild stimulant, rejuvenation, and, some reports say, even aphrodisiac qualities. You can harvest it when it leaks out, but the freshest, tastiest nectar comes if you suck it out of one of <<his npc_chuck>> stalks — don't bite mind you, just slurp on that big old straw.@@"<br>
<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: horticulturist theme: fed chuck milk
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You mention feeding <<=setup.getNpcName('npc_chuck', 'suffix')>> milk.<br>
<br>
"@@.npc_botanist;That species is adapted to process, and thrive, off fatty material like that. When fully matured they will even develop specialized appendages specifically evolved for harvesting such material.@@"<br>
<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: horticulturist theme: fed chuck piss
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You mention pissing on <<=setup.getNpcName('npc_chuck', 'suffix')>>.<br>
<br>
Her tone is sombre as she replies. "@@.npc_botanist;I see. While such will in no way harm <<him npc_chuck>>, note that my experiments have shown that exposure to that sort of thing can result in something of a more... aggressive personality. Of course, maybe you're into that sort of thing?@@" She smiles knowingly.<br>
<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: horticulturist theme: chuck cum substitute
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_botanist','first')>> if she sells anything that would be of similar effectiveness for <<=setup.getNpcName('npc_chuck', 'suffix')>> as cum.<br>
<br>
<<=setup.getNpcName('npc_botanist','first')>> frowns. "@@.npc_botanist;I suppose I could mix something up, but it really would be much more affordable to do it yourself — semen is really quite chemically complicated and perfectly balanced for such a plant's needs...@@"<br>
<br>
[<<moveTo "theme_horticulturist_chuck_cum_alt_2" "Explain that you don't produce cum..." 60 "<<set $scene.response='nopro'>>">>]<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "theme_horticulturist_chuck_cum_alt_2" "Explain that you're locked in chastity." 60 "<<set $scene.response='chastity'>>">>]<br>
<</if>>
[<<moveTo "theme_horticulturist_chuck_cum_alt_2" "Just say you want the substitute." 60 "<<set $scene.response='noexp'>>">>]
</div>/*#
#desc: horticulturist theme: why need chuck cum substitute
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'plant_food'>>
<<if $scene.response == 'chastity'>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.response>>
<<case 'nopro'>>
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction > 0>>
You lie and state that you don't produce cum.
<<else>>
You reply that you don't produce cum anymore.
<</if>>
<br><br>
"@@.npc_botanist;Oh, I am so sorry! I—well, I didn't mean to poke at what is probably a sore subject. There are some herbs I could recommend... no, sorry, I won't insult you by assuming you haven't explored options yourself.@@" You reflexively wince as you recall her idea that <<=setup.getNpcName('npc_chuck', 'suffix')>> would have helped save your relationship.<br>
<br>
<<printThought "Now she probably thinks we broke up because I'm infertile... which, in a way, isn't the furthest thing from the truth...">><br>
<br>
"@@.npc_botanist;Let me make it up to you,@@" she states, turning behind the counter to grab a small vial.
<<else>>
You explain that you don't have a penis anymore...<br>
<br>
"@@.npc_botanist;Oh! Oh, my! Well congratulations! I may go on about natural things a bit much but it is just so wonderful that medical technology can give you the body you desire... well, usually, there are the rare exceptions... anyway, let me give you a celebratory gift.@@" She turns behind the counter to grab a small vial.
<</if>>
<<case 'chastity'>>
You explain that it would be something of a challenge to produce such, what with you being locked in chastity.<br>
<br>
Rather than be shocked <<=setup.getNpcName('npc_botanist','first')>> merely smiles. "@@.npc_botanist;Ah, chastity, what fun! I could think of someone that could have benefited from that, back in the day...@@" She shakes her head. "@@.npc_botanist;Anyway, now that I understand the challenge you are facing... here,@@" she turns behind the counter to grab a small vial.
<<case 'noexp'>>
You just reply that you'd like to try the substitute. <<=setup.getNpcName('npc_botanist','first')>> nods. "@@.npc_botanist;Well they say the customer is always right... I do feel a bit guilty at the price, given the limitations though so... here.@@" She turns behind the counter to grab a small vial.
<<default>>
ERROR: unexpected scene.response <<=$scene.response>>
<</switch>>
<br><br>
"@@.npc_botanist;That one's on the house. I will note that, being an artificial substitute, well... it just isn't quite the same as the real thing. In some cases using this, rather than cum, can cause a reaction.@@" She notices your concern and quickly reassures you "@@.npc_botanist;Oh, don't worry, it is nothing bad for the plant just... certain non-biological impurities can act sort of like a grain of sand with an oyster. Only instead of a pearl you get a sort of... concentrated bead of sap. They will clear naturally over time... you might even find the experience enjoyable!@@"<br>
<br>
You're a bit curious as to what she meant by that but thank her for the gift.<br>
<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: horticulturist theme: chuck egg
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_botanist','first')>> about the egg-like blockage you ended up sucking out of your pal <<=setup.getNpcName('npc_chuck', 'suffix')>>.<br>
<br>
She smiles and nods. "@@.npc_botanist;Ah, yes, that can happen as a side effect of those artificial nutrients I gave you. Some call them "joy eggs" and, while they bring joy they are, of course, not actually eggs, merely a pearl-like production of a sort of sap build-up. They are a bit too delicate to ship or sell, something of a special treat for the plant-owner. Since they are a defensive reaction to something in the artificial nutrients flushing the system will stop production until additional "irritant" is re-introduced.@@" She pauses and then smiles as if to apologise for getting too technical. "@@.npc_botanist;In laymans terms, if you want more, you will need to feed your frondy friend more of the artificial nutrients, and then wait, of course.@@"<br>
<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: talk about your first time with chuck
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You bring up that, in addition to growing, <<=setup.getNpcName("npc_chuck","suffix")>> has started to exhibit new behaviours.<br>
<br>
"@@.npc_botanist;Oh?@@" <<=setup.getNpcName("npc_botanist","first")>> replies with the hint of a knowing twinkle in her eye. "@@.npc_botanist;What sort of behaviours are those? Nothing problematic, I hope?@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_1_2" 'Be circumspect about what happened.' 180 "<<set $scene.action='circumspect'>>">>]<br>
[<<moveTo "event_botanist_tentacles_1_2" 'Be incredulous about what happened.' 180 "<<set $scene.action='incredulous'>>">>]<br>
[<<moveTo "event_botanist_tentacles_1_2" 'Be blunt about what happened.' 180 "<<set $scene.action='blunt'>>">>]<br>
[<<moveTo "event_botanist_tentacles_1_2" 'Be enthusiastic about what happened.' 180 "<<set $scene.action='enthusiastic'>>">>]
</div>/*#
#desc: react to first time with chuck
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'circumspect'>>
You nervously, and opaquely reply that your pet plant has been seeming to show physical interest in you...
<<case 'incredulous'>>
You reply incredulously that your pet plant seems to be trying to... have sex with you!
<<case 'blunt'>>
You bluntly reply that your pet plant seems to be wanting to have sex with you.
<<case 'enthusiastic'>>
You grin and reply that your pet plant seems eager to fuck you!
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_botanist;Already? That is quite swift... would you mind if I inspected <<him npc_chuck>> in person? I just want to make sure <<he npc_chuck>>'s developing safely, you know.@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
[<<moveTo "event_botanist_tentacles_1_3" 'Take her home and show her <<=setup.getNpcName("npc_chuck","suffix")>> in person.' 600 "<<set $scene.accept=true>>">>]
<<else>>
[@@.link_locked;You don't have time for her to visit right now.@@]<br>
<</if>>
[<<moveTo "event_botanist_tentacles_1_3" 'Maybe some other time.' 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: react to first time with chuck
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You again bring up <<=ps(setup.getNpcName("npc_chuck","suffix"))>> amorous efforts.<br>
<br>
"@@.npc_botanist;So you mentioned. I would still like to inspect <<him npc_chuck>> in person, would you have time for that today?@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
[<<moveTo "event_botanist_tentacles_1_3" 'Take her home and show her <<=setup.getNpcName("npc_chuck","suffix")>> in person.' 600 "<<set $scene.accept=true>>">>]
<<else>>
[@@.link_locked;You don't have time for her to visit right now.@@]<br>
<</if>>
[<<moveTo "event_botanist_tentacles_1_3" 'Maybe some other time.' 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: botanist inspect chuck
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _themeId = setup.findThemeId('npc_botanist', 'chuck', 'theme_plant_oral_retry')>>
<<if _themeId != -1>>
<<set $npc_botanist.themes.chuck[_themeId].repeatable = false>>
<</if>>
<<else>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_oral_retry'
2
'theme_plant_sex_retry'
true>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Living Room">>
<<else>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_botanist")>>
<<else>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_botanist","first")>> lets her shop assistant know that she will be out for a bit, and then two of you are on your way to your flat where you lead her up to your living room to find <<=setup.getNpcName("npc_chuck","suffix")>> is happily sitting in <<his npc_chuck>> pot... or is that more than happily, you think as several leaves turn in your direction.<br>
<br>
"@@.npc_botanist;Oh, my! <<He npc_chuck>> has been growing since I last saw <<him npc_chuck>>! You must be taking quite good care of <<him npc_chuck>>, this species can be more than a little temperamental... but they unfurl so beautifully when well cared for, yes?@@"<br>
<br>
As she talks she walks over to <<=setup.getNpcName("npc_chuck","first")>>, stroking <<his npc_chuck>> leaves and down <<his npc_chuck>> main trunk. "@@.npc_botanist;From what you said, and the way <<he npc_chuck>> is reacting, I would say you are doing a VERY good job taking care of your lovely friend here... but if you wouldn't mind having a seat next to me I could show you some additional tips to really make <<him npc_chuck>> the happiest and greenest <<he npc_chuck>> can be.@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_1_4" 'Take a seat...' 180>>]<br>
[<<moveTo "event_botanist_tentacles_1_abort" 'Actually, you remembered something you need to do.' 180>>]
<<else>>
You reply that now isn't a good time for <<=setup.getNpcName("npc_botanist","first")>> to visit your flat.<br>
<br>
"@@.npc_botanist;I see, well... I am still interested in checking in on your leafy friend, so let me know when would be a good time, please.@@"<br>
<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
<</if>>
</div>/*#
#desc: botanist chuck visit abort
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_botanist","first")>> that, actually... you have somewhere you need to be.<br>
<br>
"@@.npc_botanist;Of course, of course. I did not wish to impose. congratulations, again, on raising up a VERY healthy plant and well... keep up the good work!@@" She winks at you as she departs... and you look back to see <<=ps(setup.getNpcName("npc_chuck","suffix"))>> leaves fluttering invitingly.<br>
<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: botanist hand job chuck
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You take a seat next to <<=setup.getNpcName("npc_botanist","first")>> as she takes one of <<=ps(setup.getNpcName("npc_chuck","suffix"))>> phallic-looking stalks in hand and motions for you to do the same.<br>
<br>
"@@.npc_botanist;So this genus has evolved in a unique way, and part of that is that they are very sensitive to touch. See how merely lightly stroking causes it to stiffen and bead with sap? This natural secretion is part of its unique life cycle, by stimulating it in this way you encourage further growth and production.@@" As she talks she continues to stroke her hand up and down, all but jerking <<=setup.getNpcName("npc_chuck","first")>> off as she nods at you.<br>
<br>
"@@.npc_botanist;Go on, do the same, yeah, that's good, feel how your stimulation encourages <<him npc_chuck>> to pump more nutrients up from <<his npc_chuck>> roots into the stalk, feel it firm up and lubricate, good, good, now that <<he npc_chuck>>'s nice engorged we can start harvesting our reward. I think it's the best straight from the source...@@"<br>
<br>
She leans over, spreading her lips as she brings her mouth to the glistening tip of <<=ps(setup.getNpcName("npc_chuck","first"))>> shaft, stroking with both hands, now, as she sucks and licks at the tip.<br>
<br>
"@@.npc_botanist;Mmmm, delicious... go on, fresh like this the sap is not only delicious, but rejuvenating...@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_1_5" "A little suck couldn't hurt..." 180>>]<br>
[<<moveTo "event_botanist_tentacles_1_abort" 'Actually, you remembered something you need to do.' 180>>]
</div>/*#
#desc: botanist hand job chuck
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -20>>
<<applyStress -10>>
<<changeHorny 50>>
<<applyExperience 'oral' 10 'normal' $SEEN_FRIEND>>
<<set $npc_chuck.flags.oral = true>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_chuck'
0
'theme_technician_chuck_1'
false
>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You follow after <<=ps(setup.getNpcName("npc_botanist","first"))>> example to go from jerking off to blowing <<him npc_chuck>>... your green friend responding by spurting a bit of sweet sap into your mouth... it really is quite delicious... and you find yourself relaxing, and becoming increasingly aroused... and then you smell something.<br>
<br>
"@@.npc_botanist;Mmmm, you smell that?@@" <<=setup.getNpcName("npc_botanist","first")>> states as she breathes deep with a smile. "@@.npc_botanist;That is another of the many miraculous materials this lovely <<if $npc_chuck.fem>>lady<<else>>fella<</if>> can produce. In the wild it would help entice nearby animals to aid in spreading seed, but here, well... it's an invigorating signal that our leafy friend has developed enough that we can go a bit beyond just oral and digital stimulation...@@"<br>
<br>
You watch as she rises up, lifts her skirt, and starts to squat down, pausing for just a moment before directing the now probing stalk towards her rear. "@@.npc_botanist;Yeah, that's a good <<boy npc_chuck>>, you can root around back there... ohhh! You are a feisty one... going so deep so GASP fast...@@"<br>
<br>
She glances over at you, eyes heavy with arousal as <<=setup.getNpcName("npc_chuck","first")>> continues to slide into her from behind. "@@.npc_botanist;Go on, you can see how much <<he npc_chuck>> loves this... don't leave that poor other stalk hanging...@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_1_6" 'Stand up and guide <<=setup.getNpcName("npc_chuck","first")>> into you...' 300>>]<br>
[<<moveTo "event_botanist_tentacles_1_abort" 'Actually, you remembered something you need to do.' 180>>]
</div>/*#
#desc: botanist sex chuck
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'anal' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bondage' 15 'very' $SEEN_FRIEND>>
<<set $scene.first = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<set $npc_chuck.flags.anal = true>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_chuck">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "enthusiast">>
<<include "analUnlocks">>
<</if>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'tentacles' 'chuck_basic'>>
<<applyExperience 'bestiality' 12 'very' $ALONE>>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_plant'
0
'theme_church_confession_plant'
true
>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
Your heart beats faster as, caught up in the moment, you go along with <<=ps(setup.getNpcName("npc_botanist","first"))>> example, rising to your feet and turning around to guide the glistening tendril you had been sucking on towards your rear hole.<br>
<br>
<<if $scene.first>>
You have a fleeting thought as to the fact that this will be your "first time"... but that bizarre realisation is replaced with pleasure as enters you and your rear hole stretches... and pulses with pleasure.<br>
<br>
<</if>>
"@@.npc_botanist;Yes, see how good it feels? Plants really are the best friends, feel <<him npc_chuck>> inside of you, writhing, lusting, a beautiful symbiotic relationship...@@"<br>
<br>
As she talks she guides you closer in, your back to <<=ps(setup.getNpcName("npc_chuck","first"))>> primary stalk, additional vines begining to wrap around your body, holding you in place as <<=setup.getNpcName("npc_chuck","first")>> continues to fuck you, a final tendril curving into your line of sight, the tip glistening for a moment before it slips past your willing lips.<br>
<br>
"@@.npc_botanist;See how good it feels? To care for and be cared for? To embrace nature and all its wonderful potential?@@"<br>
<br>
You moan, on <<if $fetish.drugs>>an erotic high<<else>>a high both sexual and chemical<</if>> as <<=setup.getNpcName("npc_chuck","first")>> pumps inside of you.<br>
<br>
"@@.npc_botanist;There you go... embrace it, be one with nature...@@" she whispers as <<=setup.getNpcName("npc_chuck","first")>> continues to wrap around you, tentacles weaving under your clothes as <<he npc_chuck>> takes you from both ends, <<=ps(setup.getNpcName("npc_botanist","first"))>> slightly breathless voice cut off as a final stalk curves over your shoulder to fill her lips and remind you that this is actually a sort of bizarre threesome.<br>
<br>
[<<moveTo "event_botanist_tentacles_1_7" 'Yes!' 300>>]
</div>/*#
#desc: botanist leaves after sex with chuck
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if $npc_chuck.stage >= 4>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_other_plants'
0
'event_botanist_tentacles_2_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
Gagged, fucked, and bound, you and <<=setup.getNpcName("npc_botanist","first")>> moan and shudder through multiple orgasms before <<=ps(setup.getNpcName("npc_chuck","first"))>> grasp loosens and you gently settle to the ground. Tentacles and vines retracting <<=setup.getNpcName("npc_chuck","suffix")>> looks content and even greener than usual as you and <<=setup.getNpcName("npc_botanist","first")>> share a lusty glance, licking your lips of the final traces of <<=ps(setup.getNpcName("npc_chuck","first"))>> delicious sap.<br>
<br>
"@@.npc_botanist;Well! I hope you learned a bit from our little exploration, and that you will continue to take such wonderful care of your green friend.@@"<br>
<br>
<<=setup.getNpcName("npc_botanist","first")>> may have recovered enough to be back to her normal friendly self, but you're still coming down from your massive, multi-orgasm as you just kind of nod and lead <<=setup.getNpcName("npc_botanist","first")>> out of the flat, sparing one more glance towards <<=setup.getNpcName("npc_chuck","suffix")>>, sitting in <<his npc_chuck>> corner of the living room resting... <<printThought "or is that laying in wait?">><br>
<br>
[<<moveTo "room_foyer" 'Close the door.' 300>>]
</div>/*#
#desc: talk about more sex with chuck
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You mention your continuing sexual escapades with <<=setup.getNpcName('npc_chuck', 'suffix')>> and <<=setup.getNpcName('npc_botanist', 'first')>> smiles.<br>
<br>
"@@.npc_botanist;So wonderful! People always talk about plants being boring but, while I would argue that point across the board, <<his npc_chuck>> species puts a lie to the entire idea. If only they were more wide-spread, as you've seen they can make quite the lovely companion, even in a cramped apartment, but it's more than that and...@@" she pauses. "@@.npc_botanist;Ah, sorry. My enthusiasm got the better of me, obviously you are quite familiar with how wonderful, and versatile, your leafy friend is, definitely one of my better experiments.@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_2_2" "Experiments?" 300>>]<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: talks about other plants
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You express further interest in <<=setup.getNpcName('npc_botanist', 'first')>> mention of experiments and her eyes light up.<br>
<br>
"@@.npc_botanist;As lovely as <<his npc_chuck>> species might natively well... I'm a horticulturist, and that means trying to take what nature has provided and guide it to be even more useful. Typically that might mean more ornamentally beautiful, or more culinarily productive... but in this case, well...@@" she winks at you, "@@.npc_botanist;your leafy friend is only one of the many experiments that I have made, focusing on a more generalist approach that is fast-growing and versatile, but <<he npc_chuck>> is only one of many experiments, and the entire genus just has so much potential pharmacological, physical and, I would argue social! Obviously many of them are not quite suited for public display, but if you would like to come with me to the back room...@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_2_3" "You'd love to see more!" 300>>]<br>
<<printNpcThemeReturn 'npc_botanist' 180>>
</div>/*#
#desc: show you other plants
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You express interest in seeing more of <<=ps(setup.getNpcName('npc_botanist', 'first'))>> and she bounces with excitement as she leads you to a back door, removing several locks before leading you inside where you find a veritable jungle!<br>
<br>
"@@.npc_botanist;I will advise you to move carefully,@@" she notes as she gestures to safety lines running along the floor, and a couple plants that are fully surrounded by thick acrylic containers. "@@.npc_botanist;One must always adhere to safety guidelines, even if getting caught up in ones work can be quite... entertaining.@@"<br>
<br>
She giggles at the double entendre as she begins the tour. "@@.npc_botanist;I have had to adapt a variety of safety measures for my work,@@" she explains, gesturing to a wall where hazmat suits and a variety of what look like industrial chastity devices are hung, and then to what look like shock collars wrapped around the central stalks of some of the larger plants, "@@.npc_botanist;but for today we will keep it simple and just stick to the safe access areas. Follow me and I'll show you some of my more developed efforts.@@"<br>
<br>
She leads the way into the veritable jungle of tentacle vines, vulva-like flowers and phallic stalks, several plants tracking your movements, either turning slowly or reaching out and rubbing up against the protective shields that keep them isolated from the walkway.<br>
<br>
[<<moveTo "event_botanist_tentacles_2_4" "On with the tour..." 300>>]
</div>/*#
#desc: show you bondage, penis, cum plants
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
"@@.npc_botanist;So we can start here,@@" <<=setup.getNpcName('npc_botanist', 'first')>> explains as she stops in front of a plant that looks like a tangled mass of vines, protected within a very thick container. "@@.npc_botanist;This is closer to how the genus would be in the wild, primarily focused around entangling and entraping prey. A bit unsafe for general use, but it does make for some exciting bondage potential, and useful grafts to enhance other specimens.@@"<br>
<br>
The vines grope the glass as you pass by and she continues on to a flat of at least a dozen smaller plants, each with a slightly different shaped phallus sprouting up from their centre.<br>
<br>
"@@.npc_botanist;Here you can see a species that has developed more for fornication rather than entrapment. I've been experimenting with different shapes optimised for vaginal, oral or anal. The modest size make these perfect as a starter plant, or for those without much space, but they can also grow larger, or provide hearty root stock for more versatile examples such as the one you have.@@"<br>
<br>
The wriggling sea of vegetable cocks is certainly a unique sight and you nod as she continues on with the tour.<br>
<br>
Next up she presents you with a trellis of hanging plant that are dripping thick sap down into several drainage trays. "@@.npc_botanist;Here I've been breeding to maximise production, I'm close to isolating the exact genes that control viscosity, quantity, aphrodisiac qualities, and flavour. Even beyond the "entertainment" aspects this has some really great potential for pharmacological production, from simple all-natural lubricants to arousal enhancers.@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_2_5" "Continue." 300>>]
</div>/*#
#desc: show you small and orgy plants
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_botanist', 'chuck', 'theme_plant_other_plants')>>
<<set $npc_botanist.themes.chuck[_themeId].repeatable = false>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You follow on as <<=setup.getNpcName('npc_botanist', 'first')>> brings you to an almost cage-like container of small specimen, each one or two, slightly flanged root stalks and several vines sprouting up from it.<br>
<br>
"@@.npc_botanist;So these are from a particularly interesting evolutionary offshoot. They do not naturally root in the ground but are actually a sort of symbiote, capable of drawing nutrients from a host either rectally or vaginally. It's been quite the job working to domesticate them, but for a suitably daring partner well... what's better than a leafy friend waiting at home, than one that can ride around and add a bit of entertainment, and efficiency, to your day to day?@@" She smiles and lifts her shirt just enough to show off several vines winding around her waist and dipping down between her butt-cheeks. "@@.npc_botanist;This rascal has really enhanced my work-day, but <<his npc_chuck>> siblings offer all sorts of fun, each of them having different personalities from shy and docile to enthusiastic and almost aggressive!@@" She gestures towards one that has a particularly long and thick set of vines sprouting out from its wide root. "@@.npc_botanist;That one, in particular, is quite the kinky one, always trying to wrap up my wrists and pull me into a hog-tie! Not so good for productivity... but a nice way to relax after a long day on my feet.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
You clench around the plug in your rear and
<<else>>
Your rear quivers slightly as you
<</if>>
ponder how one of these living counterparts would feel rooted inside of you...<br>
<br>
"@@.npc_botanist;And finally...@@" <<=setup.getNpcName('npc_botanist', 'first')>> states as she comes to a tree-like specimen reaching up to the ceiling and with easily hundreds of vines writhing about. "@@.npc_botanist;We have this lovely one, what I call an orgy in a can, capable of servicing a dozen or more people at a time... and yet for all of its size and power it is quite the gentle lover. I know one shouldn't anthropomorphise other species... but it feels like it has that confidence to not need to impose, you know?@@"<br>
<br>
While you can see several more plants beyond those she has sumarised, the tour is brought to a halt by a loud chime. "@@.npc_botanist;Oh! Looks like I've got another customer in the outer shop. I really should get some more help to tend things here but... well, you can imagine that it can be something of a challenge finding someone capable of handling all of the challenges and responsibilities. It's not so simple as just watering a few pots, you know!@@"<br>
<br>
She laughs and leads you back out before tending to the customer.<br>
<br>
[<<moveTo "room_mall" "Leave." 120>>]
</div>/*#
#desc: ask about working
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_botanist', 'first')>> if she could use some help around the shop?<br>
<br>
She grins with excitement. "@@.npc_botanist;Drawn in by the exciting work I'm doing? I've actually been looking to hire an assistant for my research and while I do not believe you have the academic background for that, I could certainly use you from time to time to help care for some of the more... rambunctious plants, you having experience with such.@@"<br>
<br>
She thinks for a moment and seems to remember something. "@@.npc_botanist;Actually, if you are free now, I noted one of the plants in need of some hands-on care that I have not managed to make time for. If you would be willing to lend a hand, or two...@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600, true)>>
[<<moveTo "event_botanist_tentacles_3_work_1_1" "Of course!" 60>>]<br>
<<else>>
[@@.link_locked;You remembered that you have something coming up soon.@@]<br>
<</if>>
[<<moveTo "event_botanist_tentacles_3_work_0_2" "Actually, you don't have time right now." 60>>]
</div>/*#
#desc: decline working
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You reply that, actually, now isn't a good time.<br>
<br>
"@@.npc_botanist;Of course, of course... but do feel free to come by again sometime, if you have an hour or so free. The plants and I really could use the assistance.@@"<br>
<br>
You respond that you'll remember that.<br>
<br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
</div>/*#
#desc: re-ask about working
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_botanist', 'first')>> if she still needs help with her plants?<br>
<br>
"@@.npc_botanist;Of course! And even if I didn't, well... they can always benefit from a bit more attention, yes? Come into the back and I'll show you what you can do today...@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600, true)>>
[<<moveTo "event_botanist_tentacles_3_work_1_1" "Of course!" 60>>]<br>
<<else>>
[@@.link_locked;You just remembered that you have something coming up soon.@@]<br>
<</if>>
[<<moveTo "event_botanist_tentacles_3_work_0_2" "Actually, you don't have time right now." 60>>]
</div>/*#
#desc: intro to working
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_botanist', 'first')>> is clearly ecstatic at your enthusiasm as she leads you to the back room.<br>
<br>
"@@.npc_botanist;You've already had the tour, and I'll be teaching you more over time, but for today I have a specific plant that could use your attention.@@" As before she nods at the lines on the floor surrounding many of the plants. "@@.npc_botanist;Always pay attention to the range markings, most of my menagerie is well behaved but you still want to avoid intruding distractions, as well as refrain from cross-contamination between plants.@@" She glances back at you with a smile. "@@.npc_botanist;Some of them can get a bit jealous and, well... if you aren't careful you can end up accidentally occupied for an entire afternoon or more! So... be careful, and stick to the safe areas when moving between plants and always pay attention when your work brings you in range.@@"<br>
<br>
She leads you through a winding path between the plants, coming to a stop in front of a moderately-sized specimen, or maybe it's multiple plants? It looks a bit reminiscent of your friend <<=setup.getNpcName("npc_chuck","suffix")>>, but with a half dozen of equal-sized phallic shoots branching off from a shared stalk.<br>
<br>
"@@.npc_botanist;This is a slight adaptation that I've been working with, aiming for more uniformity and rigidity. She's really coming along quite nicely, but really benefits from manual stimulation. Normally this genus cleans itself by rubbing their tentacles against one another, or a nearby plant. That's where you come in, to provide that cleaning and stimulation.@@" <<=setup.getNpcName('npc_botanist', 'first')>> demonstrates by wrapping her fingers around one of the stalks, stroking it gently with the help of a slight trickle of lubricating nectar emanating from the tip.<br>
<br>
"@@.npc_botanist;To ensure even growth and development you want to express each stalk individually.@@" She continues to stroke until
<<if $fetish.cum>>
there is a slight spurt, the plant spraying a dollop of goo into a small jar that she expertly positions to keep it from shooting across the room. "@@.npc_botanist;Normally it would shoot this slurry of nutrients and spores to spread, but we obviously want to keep things a bit neater here, place all harvested samples in the refrigeration unit on your way out.@@"
<<else>>
the stalk stiffens further, and then relaxes, its tip drooping ever so slightly in a manner that you can only describe as "satisfied."
<</if>>
<br><br>
<<=setup.getNpcName('npc_botanist', 'first')>> takes her hand away and turns back to you with a smile. "@@.npc_botanist;Simple as that! I'll note that, as the central reserve drains, each time will take a bit more work, but you want to express all stalks to ensure even growth.@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_3_work_1_2" "Time to administer a whole bunch of plant hand-jobs..." 1800>>]
</div>/*#
#desc: jerk off plant
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png">>
<div id="invframe" class="scrolltext">
The stalk of the plant is slightly squishy, yet firm. More rigid than <<=setup.getNpcName('npc_chuck', 'suffix')>>, but distinctly different in temperature and texture than a human cock you get to work, one stalk in each hand as you stroke away, paying close attention as you seek to learn the rhythm and signs of arousal of this unique subject.<br>
<br>
Less than a minute passes before you're treated with success<<if $fetish.cum>>, and you scramble to duplicate <<=ps(setup.getNpcName('npc_botanist', 'first'))>> timing in collecting the dribbling nectar released<</if>>. You would swear the remaining shafts seem to throb slightly, and you hear a rustle from behind you as you wonder at the idea of being "watched" by the rest of the greenhouse.<br>
<br>
<<printThought "Can plants go green with jealousy? Well... green-er?">><br>
<br>
Even though it's fairly obvious which stalk has been serviced, you decide to work methodically, moving up the plant as, just as <<=setup.getNpcName('npc_botanist', 'first')>> noted, each shaft presents a greater challenge than the last.<br>
<br>
<<if setup.getItemObjFromType("shoes").hasOwnProperty('heels') && setup.getItemObjFromType("shoes").heels.difficulty>>
You're thankful for your heels to give that extra bit of height to keep from reaching,
<<else>>
You're forced to reach high for the final few shoots,
<</if>>
your wrists feeling quite sore as you go double fisted to finish things off, letting out a satisfied sigh when the last stalk<<if $fetish.cum>> spurts its load into the now more than half-full receptacle<<else>>shudders and droops in satisfaction<</if>>.<br>
<br>
You take a step back to admire your work, the plant looking a bit different than before, its pillar of stalks no longer sticking out rigid, but with a slight droop that makes it appear more relaxed.<br>
<br>
<<if $fetish.cum>>
You take a look at the jar of excretion that you've been taking, the scent is sweet, and quite alluring...<br>
<br>
[<<moveTo "event_botanist_tentacles_3_work_1_3_taste" "Sneak a taste..." 180>>]<br>
<</if>>
[<<moveTo "event_botanist_tentacles_3_work_1_3" "Finish up." 180>>]
</div>/*#
#desc: taste plant oozing
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -20>>
<<changeHorny 100>>
<<applyFatigue -50>>
<<setTmpEffect "drug_chuck_egg">>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png">>
<div id="invframe" class="scrolltext">
You've harvested quite a bit from the plant, and you decide that nobody will notice if you sneak a little taste<<if State.hasPlayed("event_chuck_ovipositor_first_2") || State.hasPlayed("room_use_chuck_egg")>>, feeling a rush of energy, along with a roaring burst of arousal, the taste somewhat reminiscent of <<=setup.getNpcName('npc_chuck', 'suffix')>>, but slightly crisper, with a<<else>>, it is quite delicious, with a crisp<</if>> flavour that reminds you of fresh cucumbers.<br>
<br>
You sway slightly and manage to resist chugging down any more, making your way carefully past the other plants, leaves rustling and tentacles reaching after you as you hurry to the exit, capping the jar and putting it away in the fridge before returning to the front room of the shop.<br>
<br>
[<<moveTo "event_botanist_tentacles_3_work_1_3" "Continue." 180>>]
</div>/*#
#desc: finish first shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 35>>
<<set $daily.workedhorticulture = true>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You emerge from the back room and <<=setup.getNpcName('npc_botanist', 'first')>> greets you with a smile, handing you some credits from the till
<<if $fetish.cum && State.hasPlayed("event_botanist_tentacles_3_work_1_3_taste")>>
before looking at you with a coy smile. "@@.npc_botanist;Hmm... you did not sneak a little taste... did you?@@"<br>
<br>
You're trying to think of a response, the drug-like effects of the plant tripping you up as <<=setup.getNpcName('npc_botanist', 'first')>> titters in amusement.<br>
<br>
"@@.npc_botanist;Oh do not bother denying it. I can see it in your eyes... and in the camera footage from the back-room. I record everything that goes on back there, you never know when the record might be useful! Plus, well... I wanted to keep an eye out in case you got... tangled up with one of the other subjects.@@"<br>
<br>
You blush and apologise but she waves things off, "@@.npc_botanist;think nothing of it, while I would have appreciated you to follow directions a bit closer... well, if you had not been there to harvest it would have just dripped back into the soil, and I can understand the temptation, fortunately the nectar does grow on trees... after a fashion.@@"
<<else>>
and thanking you for your work.
<</if>>
<br><br>
You hear the jingle of a bell as another customer enters the shop and <<=setup.getNpcName('npc_botanist', 'first')>> turns to greet.<br>
<br>
"@@.npc_botanist;Check in some other time and I may have more work for you, it all depends on what the plants need, you know.@@"<br>
<br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
</div>/*#
#desc: working repeatable
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.workHortAvailable = !$scene.hasOwnProperty("workHortAvailable") && !$daily.workedhorticulture && random(1,3) == 1 && setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_botanist', 'first')>> if she could use any help today with the plants?<br>
<br>
<<if $scene.workHortAvailable>>
She smiles,
<<if State.hasPlayed("event_botanist_tentacles_4_assistant_5_friend_1") && setup.daysToDate($now,$npc_botanist.flags.assistantTimer) <= 0>>
sending you off to the back room to help out <<=setup.getNpcName('npc_botanist_assistant', 'first')>>.<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_6_repeatable_1" 'Get to work.' 600>>]<br>
[<<moveTo "event_botanist_tentacles_3_work_0_2" 'Not today.' 60>>]
<<elseif State.hasPlayed("event_botanist_tentacles_4_assistant_4_rescue_4")>>
"@@.npc_botanist;Back again? <<=setup.getNpcName('npc_botanist_assistant', 'first')>> has been asking when you'd be working, head on back, she'd love to see you and have some help.@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_5_friend_1" 'Head back.' 300>>]<br>
[<<moveTo "event_botanist_tentacles_3_work_0_2" 'Not today.' 60>>]
<<elseif State.hasPlayed("event_botanist_tentacles_4_assistant_3_fuck_4")>>
"@@.npc_botanist;Of course! Head on back to the back, I'm sure <<=setup.getNpcName('npc_botanist_assistant', 'first')>> would appreciate the help.@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_4_rescue_1" 'Get to work.' 300>>]<br>
[<<moveTo "event_botanist_tentacles_3_work_0_2" 'Not today.' 60>>]
<<elseif State.hasPlayed("event_botanist_tentacles_4_assistant_2_firstshift_3")>>
"@@.npc_botanist;Yes, it seems that the more help I have, the more there is to do, and I could quite use you to both lend a hand, and show <<=setup.getNpcName('npc_botanist_assistant', 'first')>> a few of your... special plant-care skills.@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_3_fuck_1" 'Sure!' 600>>]<br>
[<<moveTo "event_botanist_tentacles_3_work_0_2" 'Not today.' 60>>]
<<elseif State.hasPlayed("event_botanist_tentacles_4_assistant_1_intro_1")>>
<<if setup.daysToDate($now,$npc_botanist.flags.assistantTimer) <= 0>>
"@@.npc_botanist;Yes, indeed. I think watching you take care of some of the more... mild plants would be quite the useful learning experience for <<=setup.getNpcName('npc_botanist_assistant', 'first')>>, if you're up for that?@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_2_firstshift_1" 'Sure!' 600>>]<br>
[<<moveTo "event_botanist_tentacles_3_work_0_2" 'Not today.' 60>>]
<<else>>
and then shakes her head. "@@.npc_botanist;I'm still working on getting <<=setup.getNpcName('npc_botanist_assistant', 'first')>> up to speed on the basics, give me some more time and I'll be ready for you to help her out.@@"<br>
<br>
[<<moveTo "room_horticulturist" 'Back to the shop.' 60 "<<set $daily.workedhorticulture = true>>">>]<br>
[<<moveTo "room_mall" 'Leave the shop.' 60 "<<set $daily.workedhorticulture = true>>">>]
<</if>>
<<elseif State.hasPlayed("event_botanist_tentacles_3_work_3_3")>>
"@@.npc_botanist;Actually, the answer to that question is a bit more complicated now... <<=setup.getNpcName('npc_botanist_assistant', 'first')>>!@@" She calls out, and you turn to see a woman step out from behind a display of plants. "@@.npc_botanist;<<=$player.first_name>>, meet my newest employee <<=setup.getNpcName('npc_botanist_assistant', 'first')>>!@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_1_intro_1" "Woah..." 180>>]
<<elseif State.hasPlayed("event_botanist_tentacles_3_work_2_2")>>
"@@.npc_botanist;In fact I do! One of the larger plants is in need of a bit of pruning... I'll warn you, this is going to require some safety equipment as it's quite a... rowdy specimen.@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_3_work_3_1" 'Sure!' 600>>]<br>
[<<moveTo "event_botanist_tentacles_3_work_0_2" 'Not today.' 60>>]
<<else>>
"@@.npc_botanist;In fact I do! One of the plants has outgrown its trellis and I could use a hand transfering it so that it can continue to develop.@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_3_work_2_1" 'Sure!' 60>>]<br>
[<<moveTo "event_botanist_tentacles_3_work_0_2" 'Not today.' 60>>]
<</if>>
<<elseif State.hasPlayed("event_botanist_tentacles_4_assistant_3_fuck_4")>>
<<set $scene.contentName = "More " + setup.getNpcName('npc_botanist', 'first') + " plant content">>
<<include "futureContentBoilerplate">><br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
<<else>>
She smiles, but shakes her head. "@@.npc_botanist;Things are going well at the moment. Come back some other time, perhaps.@@"<br>
<br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
<</if>>
</div>/*#
#desc: help with trellis transfer intro
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_FRIEND>>
<<set $daily.workedhorticulture = true>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You agree to give <<=setup.getNpcName('npc_botanist', 'first')>> a hand and she leads you to the back room. You don't have to ask which plant needs assistance, the writhing mass of tentacles half pulling away from its sagging trellis, the wooden structure straining under the weight of the plant.<br>
<br>
"@@.npc_botanist;As you can see this is a move that's a bit overdue, but the whole thing is complicated by the fact that this lovely thing,@@" <<=setup.getNpcName('npc_botanist', 'first')>> explains as she strokes one of the plant's tentacles... and it responds by curling a tendril around her arm. "@@.npc_botanist;Well, she has been quite stubborn about moving... which is where I thought you could come in. If you would come stand over here?@@"<br>
<br>
You follow her instruction, realising just how far you've moved past the "safe" outline on the floor... when tentacles start reaching out to rapidly entwine you.<br>
<br>
"@@.npc_botanist;Stay calm, this is all to plan. This is exactly what I needed you for. This lovely lady is a big old softie. She just likes having a friend to cuddle... so all we need to do is move her to you, and then onto her new trellis!@@"<br>
<br>
The plant is gentle... if definitely what one might call eager, more and more tentacles wrapping around you, gentle, yet firm as you feel yourself being lifted off the ground and further entrapped within their grasp.<br>
<br>
"@@.npc_botanist;Excellent! Just keep her entertained while I get this old trellis out of the way!@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_3_work_2_2" 'Remain still... as if you had a choice.' 600>>]
</div>/*#
#desc: help with trellis transfer
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 20 'terrible' $SEEN_FRIEND>>
<<applyStress -20>>
<<applyFatigue -50>>
<<addCredits 50>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
Cradled in the many vines of the plant, you are unable to see, and barely able to hear as your entire world becomes tentacle after tentacle wrapped around you in a near mummification embrace. True to <<=ps(setup.getNpcName('npc_botanist', 'first'))>> words the plant remains gentle, not squeezing too tight... or even going exploring, seeming content to merely rub up against your flesh, tentacles curling under your clothes and massaging you from head to foot as you relax and start to lose track of time.<br>
<br>
You continue to relax, settling into the dark embrace of the plant, the teasing, eager stroke of its many limbs soothing your body and mind alike... and then you see a glint of light, feeling the now familiar grip of the plan slowly loosening as tentacle after tentacle retracts... until you're being placed on the ground, your new friend looking giving you a parting caress as it looks quite cheery indeed exploring and weaving its way around its new steel-reinforced home.<br>
<br>
You blink, taking your first breath un-tinged by the fresh scent of the plant as <<=setup.getNpcName('npc_botanist', 'first')>> gently leads you back to the "safe" part of the greenhouse. "@@.npc_botanist;As you felt, she's a real dove... but no sense leaving the temptation there, hmm?@@" <<=setup.getNpcName('npc_botanist', 'first')>> explains as she hands you a stack of credits. "@@.npc_botanist;Thank you again for the assistance, I wasn't expecting her to grow so big so swiftly... sometimes nailing the perfect fertiliser can cause problems of its own!@@"<br>
<br>
You nod, thanking <<=setup.getNpcName('npc_botanist', 'first')>> for the money and the opportunity as she leads you back to the shop and returns to her spot working the till.<br>
<br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
</div>/*#
#desc: check if you can work
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
Given what you've experienced at home with <<=setup.getNpcName("npc_chuck","suffix")>> a "rowdy" plant sounds like quite the challenge... <<printThought "quite the enticing challenge...">> and you ask <<=setup.getNpcName('npc_botanist', 'first')>> what safety equipment you need?<br>
<br>
<<if setup.checkItemTypeWorn("bodysuit") && setup.checkItemTypeTag('bodysuit', ['latex']) && (setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])) && (!$player.body_ref.vagina || !$fetish.chastity_vag || setup.checkItemTypeWorn("cage") && !setup.isCage())>>
"@@.npc_botanist;So, in this situation, what we're looking for is real full-body protection. This is quite aggressive plant, especially in its present state, so proper safety translates to all orifices guarded against penetration, and no exposed skin. What you have now is perfect... well, with the addition of a hood and gag to keep your mouth protected... yeah, we're good to go!@@"<br>
<br>
[<<moveTo "event_botanist_tentacles_3_work_3_2" 'Sure!' 1800>>]<br>
[<<moveTo "event_botanist_tentacles_3_work_0_2" 'Not today.' 60>>]
<<else>>
"@@.npc_botanist;So, in this situation, what we're looking for is real full-body protection. This is quite aggressive plant, especially in its present state, so you'll need to prevent skin contact with a full body catsuit, and protect all orifices from penetration. Don't worry about your pretty head, I've got a hood/gag that's rated for such use, but the rest... well, your current outfit isn't really sufficient, but if you want to come back some other time?@@"<br>
<br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
<</if>>
</div>/*#
#desc: equipped + start working
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.workedhorticulture = true>>
<<set _bodysuit = setup.getItemFromType("bodysuit")>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<<wearItem _bodysuit true>>
<<addItem "panel_gag">>
<<wearItem "panel_gag" true>>
<<addItem "hood_horticulture">>
<<wearItem "hood_horticulture" true>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_botanist', 'first')>> takes you into the back room where she has you remove everything but your catsuit, then finishes off your full-body latex encasement with a tight hood... and a mouth-filling gag. "@@.npc_botanist;Sorry about being mute but, well, this is one of those plants that will fill any available hole so... safety first!@@"<br>
<br>
You nod and she leads you to the plant in question. Even bigger than <<=setup.getNpcName("npc_chuck","suffix")>> you recall her description from the original tour that it's capable of serving up a full orgy... and you believe it, dozens of tentacles wafting seductively, glistening with aphrodisiac-laced lubricant as, even with all your protection, it seems to draw you in.<br>
<br>
<<=setup.getNpcName('npc_botanist', 'first')>> presses a pair of clippers into your hand. "@@.npc_botanist;You see the slightly atrophied shoots? That's part of its life-cycle, they'll fall off eventually, but it's healthier to shear them off, plus I can extract several useful chemicals from the trimmings.@@"<br>
<br>
You nod and step forward, the plant reaching out... but its limbs slipping off your slick rubber skin, stymied even as it probes insistently at your face and plugged<<if $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage()>> and shielded<</if>> holes.<br>
<br>
<<=setup.getNpcName('npc_botanist', 'first')>> watches on from a safe distance as you set to work, tracing each slightly withered vine back to its parent stalk and clipping it neat, the plant seemingly unbothered, an perhaps even grateful for the effort as it continues to paw at you throughout.<br>
<br>
Feeling somewhat like an explorer forging your way through a dense jungle you bustle along, all but disappearing amidst the probing tentacles as you search for every last decaying frond, neatly pruning things and coming up with a good armful of detritus.<br>
<br>
[<<moveTo "event_botanist_tentacles_3_work_3_3" 'Time to clean up and wash off.' 300>>]
</div>/*#
#desc: finish shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "panel_gag" true>>
<<deleteItem "panel_gag">>
<<removeItem "hood_horticulture" true>>
<<deleteItem "hood_horticulture">>
<<useClothSetPop 'tmp'>>
<<addCredits 100>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You gather up the trimmed stalks, finding yourself with a goodly armful that you bring back to <<=setup.getNpcName('npc_botanist', 'first')>> where she directs you to sort them out; the more vibrant bases going into an industrial-sized juicer, with the thinner, slightly withered ends getting laid out on drying racks.<br>
<br>
"@@.npc_botanist;Waste not, want not!@@" <<=setup.getNpcName('npc_botanist', 'first')>> explains as you finish up as she hoses you off before helping you out of the mask. "@@.npc_botanist;These plants are such a wonderful cornucopia of delight, and I'll be getting some nice materials from these trimmings before they hit the compost.@@"<br>
<br>
Once you're cleaned off and changed <<=setup.getNpcName('npc_botanist', 'first')>> hands you your pay, thanking you once again before dismissing you.<br>
<br>
[<<moveTo "room_mall" 'Head out.' 60>>]
</div>/*#
#desc: introduced to assistant
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.workedhorticulture = true>>
<<set $npc_botanist.flags.assistantTimer = setup.setNextDate($now, 7, 1, 0)>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist") setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
You do a double take as <<=setup.getNpcName('npc_botanist_assistant', 'first')>> walks towards you. They look a bit younger than you, you'd guess, with that fresh look of enthusiasm you see in a certain sort of fresh college graduate.<br>
<br>
<<printThought "Another bespectacled redhead? At least she doesn't look to have <<=ps(setup.getNpcName('npc_manager', 'formal'))>> intensity, but still...">><br>
<br>
"@@.npc_botanist;<<=setup.getNpcName('npc_botanist_assistant', 'first')>> just finished her degree and was looking for an opportunity to have some more hands on experience with exotic fauna. This is <<=$player.first_name>>, a loyal customer, and one who helps me out around the shop from time to time, you could learn a lot from them!@@"<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> smiles and offers her hand in greeting, "@@.npc_botanist_assistant;where did you graduate from?@@" They reply, only for their confession to become slightly dismissive when you explain that your degree isn't in botany.<br>
<br>
"@@.npc_botanist;Anyway,@@" interjects "@@.npc_botanist;<<=setup.getNpcName('npc_botanist_assistant', 'first')>> just started, but maybe you could come back next week and help her out in the back room?@@"<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> seems somewhat cool on that notion, but she forces a smile as <<=setup.getNpcName('npc_botanist', 'first')>> dismisses her back to work. "@@.npc_botanist;I'm sure she'll warm up to you, part of why I brought her on was to show her the importance of real-world experience to supplement academic theory. Anyway, as I said, come by next week or something after she's had a chance to learn the basics and isn't so nervous.@@"<br>
<br>
[<<moveTo "room_horticulturist" 'Back to the shop.' 60>>]<br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
</div>/*#
#desc: start first shift with assistant
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.workedhorticulture = true>>
<<deleteMember $npc_botanist.flags "assistantTimer">>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist") setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
You agree to another shift and <<=setup.getNpcName('npc_botanist', 'first')>> smiles with glee before summoning <<=setup.getNpcName('npc_botanist_assistant', 'first')>>. "@@.npc_botanist;Ah, that would be perfect! Keeping the shop running takes up so much of my time, I have been struggling to find time to properly show <<=setup.getNpcName('npc_botanist_assistant', 'first')>> how to care some of the more... particular plants. You're an old hand at such things, so you'd be perfect to show her around while I hold down the fort out here.@@"<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> appears, once again forcing a smile of greeting as you take the lead in heading for the backroom.<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_2_firstshift_2" 'Continue.' 600>>]
</div>/*#
#desc: show assistant around the backroom
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
In the backroom you try to strike up a bit of a conversation by asking <<=setup.getNpcName('npc_botanist_assistant', 'first')>> about what got her into plants as you grab some feeding supplies and lead the way into the rows of plants, a few of their tendrils seeming to wave at you in greeting as if they recognised you from prior encounters.<br>
<br>
"@@.npc_botanist_assistant;Well I've always been more comfortable around plants than people... and they're really so fascinating and diverse! When I was working on my thesis on adapting plants for post-war battlefield cleanup I happened upon one of <<=ps(setup.getNpcName('npc_botanist', 'formal'))>> papers,@@" you look quizzically at <<=setup.getNpcName('npc_botanist_assistant', 'first')>> and she clarifies, "@@.npc_botanist_assistant;Sorry, you know her as <<=setup.getNpcName('npc_botanist', 'first')>>, I guess... for such a brilliant scientist she's really so modest and, if you would excuse the pun, down-to-earth, in regards to her titles and such.@@"<br>
<br>
<<if State.hasPlayed("event_psychiatrist_drugs_bot_help_1")>>
<<printThought "Still weird to hear that name and remember that <<=setup.getNpcName('npc_botanist', 'first')>> is related to <<=setup.getNpcName('npc_work_doctor', 'formal')>> from work...">>
<<else>>
<<printThought "<<=setup.getNpcName('npc_botanist', 'last')>>? Is she somehow related to <<=setup.getNpcName('npc_work_doctor', 'formal')>> from work?">>
<</if>>
<br><br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> continues to chatter on with details about her thesis that you don't really understand... but you find yourself vibing with her enthusiasm as you move through the rows, watering and checking in on various plants.<br>
<br>
Perhaps distracted by talking to you, <<=setup.getNpcName('npc_botanist_assistant', 'first')>> steps past the line demarcating the range of one of the nearby plants...<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_2_firstshift_3" 'Sometimes the best lesson is to experience the consequences of a mistake...' 600 "<<set $scene.rescue=false>>">>]<br>
[<<moveTo "event_botanist_tentacles_4_assistant_2_firstshift_3" 'Yank her to safety.' 600 "<<set $scene.rescue=true>>">>]
</div>/*#
#desc: assistant groped by plants
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.rescue>>
<<set $scene.pay = 150>>
<<else>>
<<set $scene.pay = 75>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
<<if $scene.rescue>>
You pull <<=setup.getNpcName('npc_botanist_assistant', 'first')>> back across the line to safety as a leafy tendril passes through the space she was in a moment before.<br>
<br>
"@@.npc_botanist_assistant;What?@@" She asks in surprise, only to look back at the plant still flailing after her. "@@.npc_botanist_assistant;Oh... thanks... guess I really need to learn to be more attentive when I'm back here. Usually botany does not involve dealing with plants being so... active.@@"
<<else>>
You hesitate for a moment, and that's all it takes for one of the plants to wrap a leafy tendril around <<=setup.getNpcName('npc_botanist_assistant', 'first')>>.<br>
<br>
"@@.npc_botanist_assistant;What?@@" She asks in surprise, struggling as more vines begin to wrap around her body... and begin to grope her.<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> moans before she manages to reach into her pocket for something, the plant suddenly jerking away as she comes up with a remote, and you notice the shock collar attached to the plants main stalk lighting up.<br>
<br>
"@@.npc_botanist_assistant;Whew!@@" <<=setup.getNpcName('npc_botanist_assistant', 'first')>> replies, somewhat flustered as she very carefully stands in the "safe" portion of the floor. "@@.npc_botanist_assistant;Good thing I had the remote... <<=setup.getNpcName('npc_botanist', 'first')>> said some of the plants could get a bit aggressive but I had no idea!@@" She stares back at the still swaying plant. "@@.npc_botanist_assistant;Guess that's a lesson to keep better attention to where I walk in the future... and could... could you keep this between us? I mean, nobody was hurt, right?@@"<br>
<br>
You nod, figuring that has definitely learned her lesson, and this is an easy way to earn her appreciation.
<</if>>
<br><br>
With <<=setup.getNpcName('npc_botanist_assistant', 'first')>> showing significant more care to where she walks, the two of you finish up the round of tending to the plants without incident and you pickup your pay of <<=$scene.pay>> credits.<br>
<br>
[<<moveTo "room_horticulturist" 'Back to the shop.' 60>>]<br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
</div>/*#
#desc: show assistant how to fuck plants intro
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.workedhorticulture = true>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist") setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_botanist', 'first')>> summons <<=setup.getNpcName('npc_botanist_assistant', 'first')>> to pair up for some more plant care in the backroom. <<=setup.getNpcName('npc_botanist_assistant', 'first')>> seems to have warmed to you a bit, not reacting when <<=setup.getNpcName('npc_botanist', 'first')>> puts you in charge. "@@.npc_botanist;With how busy we've been I haven't been able to give the hands-on attention some of the plants need, so I really want you two to show them some love... and don't be surprised if they're a bit pent up!@@"<br>
<br>
"@@.npc_botanist_assistant;Of course... I'm, uh, sure that <<=$player.first_name>> will be able to show me a lot about, um... plant care.@@" <<=setup.getNpcName('npc_botanist_assistant', 'first')>> replies, her tone somewhere between friendly and sucking-up-to-teacher.<br>
<br>
<<=setup.getNpcName('npc_botanist', 'first')>> smiles in amusement and sends the two of you off to the backroom.<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_3_fuck_2" 'Head to the back and show <<=setup.getNpcName("npc_botanist_assistant", "first")>> how to hand-care for plants.' 600>>]
</div>/*#
#desc: jerk off plants with assistant
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
You lead the way to the backroom where you're soon demonstrating the proper technique to "hand-care" for plants. She eyes the lines on the floor, and you can tell she's remember the last time the two of you were back here but it isn't long before her enthusiasm kicks in and she moves next to you, following along as you show her how to jerk off a plant.<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> is a bit awkward, but she follows along as you walk her through the best technique to stroke, stimulate and caress the grateful plant. <<=ps(setup.getNpcName('npc_botanist', 'first'))>> warning proves more than true as the plant seems to show an initial quick release, only for its pent up urges to have it acting even more excited that takes no small amount of effort to properly satisfy.<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> is a quick learner, taking after you as you show the proper wrist movement, and how to amplify things with a bit of lip and tongue action... but by the time the two of you have satisfied half of the dozen plants in need of immediate care she's massaging her wrists and jaw.<br>
<br>
<<printThought "Hmm... time to teach her that plant care is a full-body activity...">><br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_3_fuck_3" 'Show <<=setup.getNpcName("npc_botanist_assistant", "first")>> how to fuck a plant.' 600 "<<set $scene.fuck=true>>">>]<br>
[<<moveTo "event_botanist_tentacles_4_assistant_3_fuck_3" 'Guide <<=setup.getNpcName("npc_botanist_assistant", "first")>> in how to fuck a plant.' 600 "<<set $scene.fuck=false>>">>]
</div>/*#
#desc: show assistant how to fuck plants
#status: RELEASED 0.9.2.0
#ignore_spell: w
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fuck>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
You note <<=ps(setup.getNpcName('npc_botanist_assistant', 'first'))>> fatigue and explain that there are other ways to give plants the care they need.<br>
<br>
"@@.npc_botanist_assistant;Other ways? Like... is there a machine or something that we can use?@@"<br>
<br>
<<if $scene.fuck>>
You chuckle as you move one of the un-satisfied plants to the floor and position yourself over it, explaining that the human touch is always preferable to maximise plant satisfaction.<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> gasps in surprise as you <<if setup.checkItemTypeWorn("plug", true)>>slide the plug out of your ass and<</if>> guide a pair of the plants tendrils into your rear<<if $player.body_ref.vagina && $player.sec_style.sex.vagina && setup.canSexOrRemoveChastity("vag", "")>>, and another pair up front<</if>>.<br>
<br>
You moan and roll your hips as the plant eagerly begins twisting and thrusting into you as <<=setup.getNpcName('npc_botanist_assistant', 'first')>> looks on in shock... and a tentative excitement as you asks "@@.npc_botanist_assistant;w-what about contamination?@@"<br>
<br>
You softly moan and continue to "work" as you explain that the plants natural secretions are more than safe, and that care like this can be rejuvenating for the plant, and the caretaker... so long as proper safety measures are taken, you add, with a nod across the room to one of the larger "orgy-ready" plants.<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> continues to watch with rapt interest as you and the plant get one another off. You sigh and lift the slightly greener and perkier plant back onto its table and ask "@@.pc;your turn?@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> takes a moment before some combination of the enticing scents that always fill the backroom, and her own natural enthusiasm and curiosity, take hold and she nods.<br>
<br>
Still clearly nervous, she goes along as you instruct her to strip, noting that, for a novice, it's easier to get clothing out of the way rather than have it stained or damaged in the excitement.<br>
<br>
With one of the remaining two pots on the floor, and the other positioned near the edge of the table behind, you guide <<=setup.getNpcName('npc_botanist_assistant', 'first')>> into position, tendrils sliding up her thighs and reaching down to caress her breasts as she gasps... and then the real fun begins.<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_3_fuck_4" 'Continue.' 600>>]
</div>/*#
#desc: assistant fucks plants
#status: RELEASED 0.9.2.0
#ignore_spell: arboriculture
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 50>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant") setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> lets out a cute gasp as the first tendril reaches the top of her leg and slides into her glistening snatch.<br>
<br>
"@@.pc;Relax,@@" you tell her as a second vine slides into place... and the plant beings reaching behind. You congratulate her on how good a job she's doing, noting that the plants will sense, and respond, to arousal as the second plant curls down around her from behind, caressing her cheek and then sliding past her parted lips as she moans... and then her eyes go wide as the probing tendril behind finishes filling her up.<br>
<br>
You step back and watch, continuing to make eye contact as <<=ps(setup.getNpcName('npc_botanist_assistant', 'first'))>> eyelids grow heavy and she sinks into the ecstasy of the jungle, tendrils gently thrusting from every direction as they entwine around her breasts and waist, teasing, stroking, and stimulating.<br>
<br>
The both of you are so lost in the moment you don't notice that <<=setup.getNpcName('npc_botanist', 'first')>> has snuck into the backroom, watching on with pride as <<=setup.getNpcName('npc_botanist_assistant', 'first')>> "finishes" her work, the satisfied plants retreating from her body as you step in to catch her as she staggers with post-orgasmic trembles.<br>
<br>
"@@.npc_botanist_assistant;Wow, that was...@@" <<=setup.getNpcName('npc_botanist_assistant', 'first')>> whispers before figuratively sobering up at the sight of <<=setup.getNpcName('npc_botanist', 'first')>>. "@@.npc_botanist_assistant;Oh! Um, wow... to tell you the truth, I had thought some of your field reports bordered on being somewhat... flowery, if you might excuse the pun but that...@@"<br>
<br>
"@@.npc_botanist;Arboriculture has so very many rewards.@@" <<=setup.getNpcName('npc_botanist', 'first')>> states with a smile, stooping down to pick up her assistants clothes, helping the other woman dress before handing you your <<=$scene.pay>> credit payment.<br>
<br>
<<printThought "Rewards indeed,">> you think to yourself as you pocket your pay and head out to leave the two "scientists" to their work.<br>
<br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
</div>/*#
#desc: sent to check on assistant
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.workedhorticulture = true>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png">>
<div id="invframe" class="scrolltext">
You head to the backroom for another shift, and immediately sense something is off. You see no sign of <<=setup.getNpcName('npc_botanist_assistant', 'first')>>, and the room seems oddly quiet, none of the usual rustling of the energetic plants, almost as if they were holding their proverbial breath.<br>
<br>
A moment later and you hear a strange rustling from deep in the artificial jungle, and what sounds almost like a distant moan...<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_4_rescue_2" 'Carefully advance and investigate.' 300 "<<set $scene.careful=true>>">>]<br>
[<<moveTo "event_botanist_tentacles_4_assistant_4_rescue_2" 'Charge in, <<=setup.getNpcName("npc_botanist_assistant", "first")>> could need your help!' 300 "<<set $scene.careful=false>>">>]<br>
</div>/*#
#desc: find assistant at mercy of plants
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.careful>>
<<else>>
<<applyExperience 'bondage' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
<<if $scene.careful>>
You stay mindful of the safety markings on the floor as you weave between the rows of plants in search of <<=setup.getNpcName('npc_botanist_assistant', 'first')>>. Creeping forward things remain almost too quiet... the plants around you "watching" as you pass as the growing sound of moans guide your forward.<br>
<br>
You round a final corner and the plants seem to part in presentation, revealing <<=setup.getNpcName('npc_botanist_assistant', 'first')>> suspended in mid-air, her clothes hanging from her body in shreds, vines wrapping around her limbs, drool, nectar and her own excitement leaking down her body as plant stalks thrust into all three of her holes.<br>
<br>
You can't be sure how long she's been in this state, but her body is limp, only for her eyes to momentarily flutter open for a moment to catch sight of you, tired muscles attempting to struggle for a few moments before the vines tighten and her body shudders in orgasmic spasms.<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_4_rescue_3" 'Pull her free!' 1800 "<<set $scene.careful2=false>>">>]<br>
[<<moveTo "event_botanist_tentacles_4_assistant_4_rescue_3" 'Look for the remote to shock the plant.' 1800 "<<set $scene.careful2=true>>">>]
<<else>>
You sprint through the back room in search of <<=setup.getNpcName('npc_botanist_assistant', 'first')>>. The plants around you reach out as you pass, but you forge forward, slipping free of grasping tendrils as you head for the increasingly loud sounds of moaning, finally rounding a corner to find <<=setup.getNpcName('npc_botanist_assistant', 'first')>>.<br>
<br>
You have a moment to take in <<=ps(setup.getNpcName('npc_botanist_assistant', 'first'))>> predicament, suspended in mid-air, her clothes hanging from her body in shreds, vines wrapping around her limbs, drool, nectar and her own excitement leaking down her body as plant stalks thrust into all three of her holes... only to realise that, in your haste, you've stepped out of the safe area.<br>
<br>
Tentacle vines are already entwining around your legs, advancing to your wrists as you attempt to pull free as they yank you into the air and carry you towards your friend. <<=ps(setup.getNpcName('npc_botanist_assistant', 'first'))>> eyes flutter for a moment and she sees you, her limp resignation replaced by a burst of struggle until the vines tighten and her body shudders in orgasmic spasms.<br>
<br>
<<printThought "Shit, I was too reckless, what can I do?">><br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_4_rescue_3" 'Struggle free!' 1800 "<<set $scene.careful2=false>>">>]<br>
[<<moveTo "event_botanist_tentacles_4_assistant_4_rescue_3" 'Look for the remote to shock the plant.' 1800 "<<set $scene.careful2=true>>">>]
<</if>>
</div>/*#
#desc: rescued from plants
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
<<if $scene.careful2>>
<<if $scene.careful>>
Maintaining caution, you look around for the remote control for the plant shock collars, spotting it on the floor beneath where <<=setup.getNpcName('npc_botanist_assistant', 'first')>> is struggling... it looks like she must have been caught off guard and fumbled it.<br>
<br>
You take a deep breath and dive for the remote, feeling vines already wrapping around you as your hand closes around the remote, and you mash the shock button.
<<else>>
You're already partially in air as you look frantically around, spotting the remote that controls the plant shock collars on the floor beneath where <<=setup.getNpcName('npc_botanist_assistant', 'first')>> is struggling... it looks like she must have been caught off guard and fumbled it.<br>
<br>
With your final moments of freedom you reach out and barely manage to snag the remote and you immediately mash the shock button.
<</if>>
<<else>>
<<if $scene.careful>>
Whatever caution you had exercised in finding <<=setup.getNpcName('npc_botanist_assistant', 'first')>> goes out the window as you rush forward to rescue her.
<<else>>
Still heedless of danger, you rush forward to rescue <<=setup.getNpcName('npc_botanist_assistant', 'first')>>.
<</if>>
The folly of your efforts is swiftly apparent as, though you manage to tug some vines free, more take their place... and even more wrapping around you. Now attempting to free two people it isn't much longer until you are all but helpless, lifted into the air beside your friend <<if $fetish.get_raped>>to be ravaged the same<<else>>and held tight and helpless<</if>>.<br>
<br>
<<printThought "Shit, what now?">><br>
<br>
As tight as the vines are, you are not in any pain... in fact, the combination of your raised heart-rate and the <<if $fetish.get_raped>>and the botanical tentacles gagging and molesting you<<elseif $fetish.drugs>>heady scent of the plant's excretions<<else>>massaging touch of the plants<</if>> have you feeling excited, your struggles steadily slowing as you are cradled in the inescapable green vines.
<</if>>
<br><br>
You and <<=setup.getNpcName('npc_botanist_assistant', 'first')>> catch a partial jolt of electricity as the plant flails and swings the both of you around, the vine grip loosening as you go tumbling across the floor, looking up to find <<=setup.getNpcName('npc_botanist', 'first')>> looking down and helping you to your feet, the two of you working together to support <<=setup.getNpcName('npc_botanist_assistant', 'first')>> as you hurriedly cary her to safety.<br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_4_rescue_4" 'Continue.' 300>>]
</div>/*#
#desc: post-rescue
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 100>>
<<addCredits $scene.pay>>
<<set $npc_botanist.flags.assistantTimer = setup.setNextDate($now, 7, 1, 0)>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant") setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
It takes <<=setup.getNpcName('npc_botanist_assistant', 'first')>> a couple of minutes to calm down as <<=setup.getNpcName('npc_botanist', 'first')>> gives her a drink of water and the apprentice botanist starts babbling an apology.<br>
<br>
"@@.npc_botanist_assistant;I'm so, so sorry! It all happened so fast, one minute I was checking soil nutrient levels and the next... I couldn't even reach for the remote before a vine knocked it from my hand and then...@@" her voice trails off as she shudders and softly gasps at the memory.<br>
<br>
"@@.npc_botanist;Yes, well, fortunately <<=$player.first_name>> came to your rescue, it would seem that some additional safety measure may be in order for the back room... perhaps a cybernetic enhancement to prevent any future such occurrence...@@"<br>
<br>
<<if $scene.careful2>>
<<=setup.getNpcName('npc_botanist', 'first')>> flashes you a glance before you can point out that she was the one doing the rescuing after your heedless charge.<br>
<br>
<</if>>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> looks at you with gratitude, attempting to rise to her feet only for her exhausted body to see her slumping back into her chair.<br>
<br>
"@@.npc_botanist;Easy there, you had better rest for the rest of the day, just stay there and relax, I want to monitor you for a bit, just let me know if you need anything at all.@@"<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> nods. "@@.npc_botanist_assistant;Yeah, I'm just... exhausted... and feeling a bit foolish. Thanks again, <<=$player.first_name>>. If it wasn't for you well...@@" She bites her lip and takes another sip of water. "@@.npc_botanist_assistant;Still... it was quite a learning experience, in the end...@@"<br>
<br>
"@@.npc_botanist;Aren't they all,@@" <<=setup.getNpcName('npc_botanist', 'first')>> replies with a wink. "@@.npc_botanist;If you wouldn't mind covering the till for a bit? I'd like to check <<=setup.getNpcName('npc_botanist_assistant', 'first')>> out a bit further?@@"<br>
<br>
You nod and cover the shop for a while longer before <<=setup.getNpcName('npc_botanist', 'first')>> re-appears to thank you for your time and send you home another <<=$scene.pay>> credits richer.<br>
<br>
[<<moveTo "room_mall" 'Leave the shop.' 60>>]
</div>/*#
#desc: assistant thanks you for help
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.workedhorticulture = true>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
You head to the back room where <<=setup.getNpcName('npc_botanist_assistant', 'first')>> greets you with a smile and a hug.<br>
<br>
"@@.npc_botanist_assistant;Hey! It's my favourite amateur botanical expert!@@" She chuckles. "@@.npc_botanist_assistant;I promise I won't be getting into any more inadvertent trouble again, I've learned my lesson... follow the warning signs, wear proper protective equipment, and if you're going to have a bit of fun, well... plan it in advance!@@"<br>
<br>
You grin back as she winks playfully. "@@.npc_botanist_assistant;On a serious note... thanks for putting up with me being a bit haughty and such, I think I've just been a bit overwhelmed by my dissertation and all but I actually just finished up my defence and, well...@@" She extends a hand "@@.npc_botanist_assistant;<<=setup.getNpcName('npc_botanist_assistant', 'formal')>>, pleased to meet you!... but you can keep calling me <<=setup.getNpcName('npc_botanist_assistant', 'first')>>.@@"<br>
<br>
You shake her hand in congratulations, and then join her in getting back to the plant "care." <br>
<br>
[<<moveTo "event_botanist_tentacles_4_assistant_5_friend_2" 'Get to work.' 1800>>]
</div>/*#
#desc: assistant thanks you for help
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> proves to have been quite the rapid learner, as you no longer need to provide much in the way of advice when it comes to caring for the various plants, be that a simple watering, or a more intimate milking, sucking, or stroking as necessary, the two of you combined making quick work of the day's tending.<br>
<br>
"@@.npc_botanist_assistant;Thanks again,@@" <<=setup.getNpcName('npc_botanist_assistant', 'first')>> says as you finish up, "@@.npc_botanist_assistant;And know I'll be sticking around, <<=setup.getNpcName('npc_botanist', 'first')>> has accepted me to stay on as her research partner, these plants... well there's just so much to learn! And to know... if you get my meaning.@@" She adds with a wink, and playful flick of a nearby phallic stalk.<br>
<br>
[<<moveTo "room_mall" 'Gather your pay and head off.' 180 "<<addCredits 75>>">>]
</div>/*#
#desc: repeatable work
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.workedhorticulture = true>>
<<set $scene.pay = random(35,75)>>
<<addCredits $scene.pay>>
<<applyStress -10>>
<<applyFatigue -50>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop_backroom.png" setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
You find <<=setup.getNpcName('npc_botanist_assistant', 'first')>> in the back room hard at work caring for the constantly growing jungle of plants.<br>
<br>
"@@.npc_botanist_assistant;Sweet, you're working again! Come on, I made a real interesting discovery, I think you're going to really enjoy it!@@"<br>
<br>
After sharing a bit of fun the two of you spend an hour or so tending to the plants before it's time for you to head off again feeling refreshed, invigorated... and about <<=$scene.pay>> credits richer.<br>
<br>
[<<moveTo "room_mall" 'Head out.' 60>>]
</div>/*#
#desc: fuck chuck
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.chuckSex = true>>
<<if $npc_chuck.timebased.aggressive>>
<<applyExperience 'oral' 15 'very' $ALONE>>
<<applyExperience 'submission' 15 'very' $ALONE>>
<<else>>
<<applyExperience 'oral' 12 'normal' $ALONE>>
<</if>>
<<if $player.body_ref.penis>>
<<set $npc_chuck.timebased.fed += $player.timebased.milking.cream_supply>>
<</if>>
<<playerOrgasm>>
<<applyStress -10>>
<<applyFatigue -20>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'tentacles' 'chuck_basic'>>
<<applyExperience 'bestiality' 12 'normal' $ALONE>>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_plant'
0
'theme_church_confession_plant'
true
>>
<<set $npc_chuck.flags.sex = true>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_chuck'
0
'theme_technician_chuck_1'
false
>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "enthusiast">>
<</if>>
<<if !$player.virgin.penis>>
<<set $player.virgin.penis = "npc_chuck">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
Lining yourself up with one of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> moist cavities you slide your <<getWordMyPenis>> into <<him npc_chuck>>, the soft, but snug channel squeezing you and releasing even more lubricating sap.<br>
<br>
Any sense of strangeness at fucking a plant is pushed aside by how incredibly good it feels and you close your eyes and moan as your hips work and the tight onahole stimulates your entire shaft.<br>
<br>
<<if $npc_chuck.timebased.aggressive>>
Your parted lips are spread wider as you open your eyes in surprise as one of <<his npc_chuck>> tentacle-like vines forces its way into your throat. Despite the aggression you find yourself submitting to <<him npc_chuck>>, the taste of the nectar suffusing the mouth-violating appendage calming you and bringing a smile to your face
<<else>>
Something brushes your lips and you open your eyes just long enough to see one of <<his npc_chuck>> tentacle-like vines in front of you, the alluring scent of the bead of nectar at its tip drawing you forward
<</if>>
as you suck and fuck in total bliss.<br>
<br>
<<=setup.getNpcName('npc_chuck', 'suffix')>> is running out of limbs as vines coil around your thighs and a final penis-like appendage curls up to
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
slide through your hollow plug
<<else>>
push your plug out of the way
<</if>>
<<else>>
slide into your rear hole
<</if>>
and go searching for your <<if $player.body_ref.penis>>prostate<<else>>most sensitive bits<</if>>.<br>
<br>
A squirt of nectar sets off a chain reaction as <<he npc_chuck>> squeezes you tight and penetrates you from both ends, your body barely prevented from falling thanks to <<his npc_chuck>> supportive grasp as you shuddering in full body multiple orgasm.<br>
<br>
Your eyelids flutter as you almost pass out, slowly recovering as <<he npc_chuck>> gently sucks you dry and then retreats. Standing over <<him npc_chuck>> you look down in surprise, still not quite believing what just happened. You smile back at <<him npc_chuck>> in post-orgasmic delight.<br>
<br>
[<<moveTo "room_livingroom" "Step away." 60 "<<set $npc_chuck.timebased.aggressive=false>>">>]
</div>/*#
#desc: chuck squat over him for anal
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.chuckSex = true>>
<<set $scene.first = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_chuck">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "enthusiast">>
<<include "analUnlocks">>
<</if>>
<<set _oral = setup.getTotalValue("oral")>>
<<set _anal = setup.getTotalValue("anal")>>
<<if $npc_chuck.timebased.aggressive>>
<<applyExperience 'anal' _anal 'unbelievable' $ALONE>>
<<applyExperience 'oral' _oral 'unbelievable' $ALONE>>
<<applyExperience 'submission' 15 'very' $ALONE>>
<<applyExperience 'bondage' 15 'very' $ALONE>>
<<else>>
<<applyExperience 'anal' _anal 'normal' $ALONE>>
<<applyExperience 'oral' _oral 'normal' $ALONE>>
<</if>>
<<applyStress -10>>
<<applyFatigue -20>>
<<if $player.body_ref.penis>>
<<set $npc_chuck.timebased.fed += $player.timebased.milking.cream_supply>>
<</if>>
<<if $player.body_ref.vagina>>
<<set $npc_chuck.timebased.fed += 50>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
<<set $scene.vagFirst = !$player.virgin.vaginal>>
<<if $scene.vagFirst>>
<<set $player.virgin.vaginal = "npc_chuck">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_6'
0
'event_psychiatrist_session_vaginal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_vag'
0
'theme_church_confession_vag'
true
>>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_chuck">>
<</if>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "enthusiast">>
<</if>>
<</if>>
<</if>>
<<playerOrgasm>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'tentacles' 'chuck_basic'>>
<<applyExperience 'bestiality' 12 'very' $ALONE>>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_plant'
0
'theme_church_confession_plant'
true
>>
<<set $npc_chuck.flags.anal = true>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_chuck'
0
'theme_technician_chuck_1'
false
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
Approaching <<=setup.getNpcName('npc_chuck', 'suffix')>> you bend over and take <<his npc_chuck>> thickest, most enticing stalk to line it up with your rear hole.
<<if $scene.first>>
Tingles run up and down your spine. You're about to have anal sex for the first time... and it isn't even with an animal, much less a human. Does that fact make YOU less than human, as well... or does it make you more than? You don't have time for further thoughts, the reality is just too exciting.
<</if>>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Your hollow plug simplifies things as you force
<<else>>
Removing your plug you force
<</if>>
<<him npc_chuck>> in, the thick nectar beaded at <<his npc_chuck>> tip proving to be excellent lubricant for <<him npc_chuck>> to enter you.
<<else>>
The thick nectar beaded at <<his npc_chuck>> tip proves to be excellent lubricant as you slide <<him npc_chuck>> into you.
<</if>>
<br><br>
Releasing your hold on <<his npc_chuck>> shaft you begin bouncing back and forth only for <<him npc_chuck>> to start to move as well, your thrusts combine with <<his npc_chuck>> twisting internal motion pressing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. It isn't long before your eyes are rolling back in pleasure.<br>
<br>
<<printThought "Fuck... I can't believe I'm doing this, but it feels so good...">><br>
<br>
To your surprise another vine suddenly rises in front of you, the tip looking VERY penis-like as you are filled with an irresistible urge to lick the drop of nectar from its tip before it spills onto the floor.
<<if $npc_chuck.timebased.aggressive>>
You get no further chance to think about such things as the vine shoots forward, aggressively ramming its way all the way down your throat as another pair of vines suddenly wrap around your wrists. In moments you are left standing effectively helpless, mounted from behind, and impaled from the front as <<=setup.getNpcName('npc_chuck', 'suffix')>> controls you like a puppet. Specifically, a fuck-puppet.
<<else>>
With a soft sigh your lips part, your tongue extending to taste the delicious nectar for a moment before you eagerly start sucking the whole thing. So focused are you on sucking and being fucked you barely notice another pair of vines reaching up to entwine around your wrists, providing additional support to keep you from falling over as you are ravished by your plant.
<</if>>
<br><br>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage")>>
A final pair of appendages reaches up between your legs — the thicker of the two proving partially hollow as it wraps and sucks your <<getWordMyPenis>> as the other slides into your cunt, working in tandem with your anal intruder to fill and fuck you — <<=setup.getNpcName('npc_chuck', 'suffix')>> providing a one-plant gang-bang, working you into a frenzy until you spurt, your cum eagerly slurped away as <<he npc_chuck>> flexes around you, draining you of every drop before slowly retreating.
<<else>>
A final appendage reaches up only to become stymied by your chastity device. Despite what you can sense as frustration a large leaf curls over your front, guiding every drop you spill down into the central bulb of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> leafy magnificence.
<</if>>
<<elseif $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
A final appendage reaches up to slide over your hard <<getWordMyPenis>> as <<=setup.getNpcName('npc_chuck', 'suffix')>> provides you with a one-plant gang-bang, working you into a frenzy until you spurt, your cum eagerly slurped away as <<he npc_chuck>> flexes around you, draining you of every drop before slowly retreating.
<<else>>
A final appendage reaches up only to become stymied by your chastity device. Despite what you can sense as frustration a large leaf curls over your front, guiding every drop you spill down into the central bulb of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> leafy magnificence.
<</if>>
<<else>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
Another thick appendage shoots up to plunge into your other hole, smaller fronds teasing your clit as a leaf curves up over you to catch every drop you spill. <<if $scene.vagFirst>><<printThought "My first time... is being bred by a plant?">><</if>>
<<else>>
A final appendage reaches up onto to become stymied by your chastity device. Despite what you can sense as frustration a large leaf curls over your front, guiding every drop you spill down into the central bulb of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> leafy magnificence.
<</if>>
<</if>>
<br><br>
Catching your breath, you take a step back and stagger slightly. Still, now, <<=setup.getNpcName('npc_chuck', 'suffix')>> looks perky and happy and you blink in surprise, half doubting what just happened.<br>
<br>
<<if $scene.first>>
<<printThought "Maybe that was a bit much... will normal sex ever be able to compare to... that?">><br>
<br>
<</if>>
[<<moveTo "room_livingroom" "Step away." 60>>]
</div>/*#
#desc: chuck fucks your vag
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.chuckSex = true>>
<<set _oral = setup.getTotalValue("oral")>>
<<if $npc_chuck.timebased.aggressive>>
<<applyExperience 'oral' _oral 'unbelievable' $ALONE>>
<<applyExperience 'submission' 15 'very' $ALONE>>
<<applyExperience 'bondage' 15 'very' $ALONE>>
<<else>>
<<applyExperience 'oral' _oral 'normal' $ALONE>>
<</if>>
<<applyStress -10>>
<<applyFatigue -20>>
<<if $player.body_ref.penis>>
<<set $npc_chuck.timebased.fed += $player.timebased.milking.cream_supply>>
<</if>>
<<if $player.body_ref.vagina>>
<<set $npc_chuck.timebased.fed += 50>>
<</if>>
<<playerOrgasm>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'tentacles' 'chuck_basic'>>
<<applyExperience 'bestiality' 12 'very' $ALONE>>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_plant'
0
'theme_church_confession_plant'
true
>>
<<set $npc_chuck.flags.vaginal = true>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_chuck'
0
'theme_technician_chuck_1'
false
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
Approaching <<=setup.getNpcName('npc_chuck', 'suffix')>> you bend over and grab hold of <<his npc_chuck>> main stalk as you position yourself in front of <<him npc_chuck>> and spread your legs...<br>
<br>
Between the two of you lubrication is plentiful and <<he npc_chuck>> wiggles a bit as <<he npc_chuck>> slides into you.<br>
<br>
Your eyes roll back in pleasure, between <<his npc_chuck>> slightly textured feel and... whatever is in the nectar oozing out of <<him npc_chuck>> <<he npc_chuck>> feels AMAZING and you moan in ecstasy.<br>
<br>
<<printThought "Fuck... I can't believe I'm doing this but it feels so good...">><br>
<br>
As your hips gently pump your grip slips off of <<his npc_chuck>> shaft and you let <<him npc_chuck>> drive. To your slight surprise another vine curls in front of you, the tip looking VERY penis-like as you are filled with an irresistible urge to lick the drop of nectar from its tip before it spills onto the floor.
<<if $npc_chuck.timebased.aggressive>>
You get no further chance to think about such things as the vine shoots forward, aggressively ramming its way all the way down your throat as another pair of vines suddenly wrap around your wrists, leaving you standing effectively helpless as <<=setup.getNpcName('npc_chuck', 'suffix')>> fucks you from both ends, controling you like a puppet.
<<else>>
With a soft sigh your lips part, your tongue extending to taste the delicious nectar for a moment before you eagerly start sucking the whole thing. So focused are you on sucking and being fucked you barely notice another pair of vines reaching up to entwine around your wrists, providing additional support to keep you from falling over as you are ravished by your plant.
<</if>>
<br><br>
Your hips buck as <<=setup.getNpcName('npc_chuck', 'suffix')>> speeds up, feeding and fucking you to orgasm before spurting nectar into you from both ends.<br>
<br>
You almost pass out from pleasure, lying back as <<he npc_chuck>> retreats and you stare up at the ceiling. Catching your breath, you rise to your feet, still a bit unsteady as your thigh muscles quiver in aftershock. Still, now, <<=setup.getNpcName('npc_chuck', 'suffix')>> looks perky and happy and you blink in surprise, half doubting what just happened.<br>
<br>
[<<moveTo "room_livingroom" "Step away." 60>>]
</div>/*#
#desc: lick chuck
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 6 'normal' $ALONE>>
<<set $scene.nectar = $npc_chuck.timebased.nectar >= 50>>
<<applyStress -5>>
<<applyFatigue -10>>
<<set $npc_chuck.timebased.nectar = 0>>
<<set $scene.first = !$npc_chuck.flags.lick>>
<<if $scene.first>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_nectar'
3
'theme_horticulturist_chuck_nectar'
false>>
<</if>>
<<set $npc_chuck.flags.lick = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("penis") > 10>>
<<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> phallic central sprout is just too much like a <<getWordPenis>> and you lean in to sample some of the nectar beading down the side.
<<else>>
You try not to think about just how much <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> central stalk is shaped like a <<getWordPenis>> as you lean in for a lick of the nectar beading down the side.
<</if>>
<br><br>
The taste is sweet, but unlike anything you can quite put your finger on, but it is certainly delicious and even the small sample brings you a slight feeling of calm rejuvenation.<br>
<br>
Some part of you wonders if the nectar is even safe to eat, but certainly <<=setup.getNpcName("npc_botanist","first")>> would have told you if anything about your friend was poisonous, so you keep licking, each drop of sweet nectar bringing a smile to your face.<br>
<br>
Leaning back to see if you spotted anything you missed you would swear that <<=setup.getNpcName('npc_chuck', 'suffix')>> looks... happier? And <<his npc_chuck>> central stalk seems to be listing towards you, another drop of nectar oozing out of the tip, as if inviting you to suck on <<him npc_chuck>>...<br>
<br>
<<printThought "That's totally just a coincidence... or some sort of natural response. The nectar is probably for attracting animals or something, it's not like <<hes npc_chuck>> aware or anything...">><br>
<br>
[<<moveTo "event_chuck_sex_oral" "Accept <<his npc_chuck>> offer and suck on <<his npc_chuck>> central stalk." 600>>]<br>
[<<moveTo "room_livingroom" "No, not today." 60>>]
</div>/*#
#desc: blow chuck
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.chuckSex = true>>
<<set _oral = setup.getTotalValue("oral")>>
<<if $npc_chuck.timebased.aggressive>>
<<applyExperience 'oral' _oral 'very' $ALONE>>
<<applyExperience 'submission' 15 'very' $ALONE>>
<<else>>
<<applyExperience 'oral' _oral 'normal' $ALONE>>
<</if>>
<<set $scene.nectar = $npc_chuck.timebased.nectar >= 50>>
<<if $scene.nectar>>
<<set $npc_chuck.timebased.nectar -= 50>>
<<applyStress -10>>
<<applyFatigue -20>>
<<elseif !$npc_chuck.timebased.aggressive>>
<<applyStress -3>>
<<else>>
<<applyFatigue 20>>
<</if>>
<<set $scene.first = !$npc_chuck.flags.oral>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'tentacles' 'chuck_basic'>>
<<applyExperience 'bestiality' 10 'normal' $ALONE>>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_plant'
0
'theme_church_confession_plant'
true
>>
<<set $npc_chuck.flags.oral = true>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_chuck'
0
'theme_technician_chuck_1'
false
>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_oral'
0
'event_botanist_tentacles_1_1'
false
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_chuck.timebased.aggressive>>
You start to lean in to <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> central stalk only for <<him npc_chuck>> to burst into motion.<br>
<br>
You gasp, the thick central stalk jamming past your lips as additional tendrils wrap your head and pull you in. Off-balance you fall to your knees to be aggressively face-fucked by your plant...<br>
<br>
Despite the initial shock you are soon moaning in pleasure.
<<if $scene.nectar>>
Whatever is in <<his npc_chuck>> nectar it makes you relax, your throat stretching in accommodation as <<he npc_chuck>> thrusts deep, bobbing your head while pumping you with <<his npc_chuck>> sweet, heavenly nectar.<br>
<br>
As swiftly as <<he npc_chuck>> started <<he npc_chuck>> is sure to give your face a thorough pounding and you slump to the ground... a little out of breath, but somewhat invigorated. Looking up you think <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> looks... satisfied? <<He npc_chuck>> is no longer dripping like <<he npc_chuck>> was before, but <<his npc_chuck>> glowing stalk seems to be standing up a little prouder...
<<else>>
<<=setup.getNpcName('npc_chuck', 'suffix')>> doesn't have enough nectar for you to really taste, but that doesn't stop <<him npc_chuck>> from pounding your throat... or maybe that's <<his npc_chuck>> throat? You certainly feel like the owned and used member of this relationship... when <<his npc_chuck>> tendrils relax you slump to the ground next to <<his npc_chuck>> pot in a breathless heap.
<</if>>
<<else>>
Looking at the penis-like stalk growing up out of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> bushy base you can't resist the idea of leaning in. You start by licking at the sweet, delicious nectar beaded around the tip but that only emboldens you further. Soon you are wrapping your lips lovingly around it, kissing and licking as you stroke your hand up and down the shaft to squeeze out even more nectar.<br>
<br>
<<if $scene.nectar>>
Bobbing your head you coo with pleasure, no longer caring that you are giving a plant a blowjob as you thirstily suck and slurp until, with a final spurt, <<=setup.getNpcName('npc_chuck', 'suffix')>>, for lack of a better term, cums.<br>
<br>
Your eyes roll back as <<he npc_chuck>> gushes with deliciousness, you almost cum just from the taste, slowly sliding to the floor as <<his npc_chuck>> tendrils gently relax. You smile as a few of <<his npc_chuck>> fronds seem to tenderly pat your head and brush against your cheek as if to say "good job."
<<else>>
After licking up the initial beads of nectar there seems to be little more, but even <<his npc_chuck>> "dry" taste is delicious. The way it fills your throat without making you cough has you smiling around the thick shaft between your lips, some of <<his npc_chuck>> other tendrils patting you on the head and brushing your cheek as if in thanks.
<</if>>
<</if>>
<br><br>
<<if $scene.nectar>>
Squeezing your lips tight lest you let a single delicious drop escape you slowly pull back, smiling as the drained appendage droops slightly, even as the rest of <<him npc_chuck>> seems to take on a fresh, cheerful sheen.<br>
<br>
<</if>>
<<if $scene.first>>
<<printThought "Wow, if blowing <<him npc_chuck>> felt so good... I wonder what happens if I let <<him npc_chuck>> fuck me?">><br>
<br>
<</if>>
[<<moveTo "room_livingroom" "Step away." 60>>]
</div>/*#
#desc: first sex with chuck
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _oral = setup.getTotalValue("oral")>>
<<if $npc_chuck.timebased.aggressive>>
<<applyExperience 'oral' _oral 'very' $ALONE>>
<<applyExperience 'submission' 15 'very' $ALONE>>
<<else>>
<<applyExperience 'oral' _oral 'normal' $ALONE>>
<<applyExperience 'submission' 10 'very' $ALONE>>
<</if>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _oral 'very' $ALONE>>
<<applyExperience 'bondage' 15 'very' $ALONE>>
<<applyStress -10>>
<<applyFatigue -20>>
<<changeHorny 100>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_sex'
1
'theme_horticulturist_chuck_sex'
false>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'tentacles' 'chuck_advanced'>>
<<applyExperience 'bestiality' 14 'unbelievable' $ALONE>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<if !setup.checkNaked()>>
<<if $fetish.get_raped>>
With literally inhuman strength <<=setup.getNpcName('npc_chuck', 'suffix')>> pulls you in, as additional vines peel the clothes from your body.
<<elseif $npc_chuck.timebased.aggressive>>
You barely approach <<=setup.getNpcName('npc_chuck', 'suffix')>> before, with urine-fuelled aggression <<he npc_chuck>> snatches you up and begins all but ripping your clothes from your body.
<<else>>
You approach <<=setup.getNpcName('npc_chuck', 'suffix')>> as <<he npc_chuck>> reaches towards you, vines gently caressing you and removing your clothes.
<</if>>
<<else>>
<<if $fetish.get_raped>>
With literally inhuman strength <<=setup.getNpcName('npc_chuck', 'suffix')>> pulls you in, <<his npc_chuck>> grip strong and inescapable.
<<elseif $npc_chuck.timebased.aggressive>>
You barely approach <<=setup.getNpcName('npc_chuck', 'suffix')>> before, with urine-fuelled aggression <<he npc_chuck>> snatches you up with <<his npc_chuck>> vines.
<<else>>
You approach <<=setup.getNpcName('npc_chuck', 'suffix')>> as <<he npc_chuck>> reaches forth with <<his npc_chuck>> vines, tenderly drawing you forward you into <<his npc_chuck>> grasp.
<</if>>
<</if>>
<br><br>
Vines wrap around your body and limbs, lifting you into the air and bringing you towards <<=setup.getNpcName('npc_chuck', 'suffix')>>. Penis-tipped vines roam your body, trailing slick nectar along your flesh as they first search out your rear hole.
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Probing around the edges of your hollow plug not one but two vines <<if $npc_chuck.timebased.aggressive>>gently<<else>>forcibly<</if>> work their way into you, spiraling around one another as they drill deeper.
<<else>>
<<if $fetish.get_raped>>
One vine eagerly thrusts past your plug, its twin coils around the base to pull it free before both vines plunge into you.
<<elseif $npc_chuck.timebased.aggressive>>
One vine eagerly trying to work past your plug its twin coils around the base to pull it free before both vines plunge into you.
<<else>>
Impatient to take its place, one vine roughly rips the plug from your hole as one of its siblings slides into you. You barely have time to adjust to the writing intruder when it is joined by its twin, the entwined tentacle-like appendages spiraling deeper.
<</if>>
<</if>>
<<else>>
<<if $fetish.get_raped>>
With ruthless aggression not one, but two vines thrust into you, twisting around each other as they drill into your depths.
<<elseif $npc_chuck.timebased.aggressive>>
Aggressively not one, but two vines thrust into you, twisting around each other as they drill into your depths.
<<else>>
Two vines gently enter your rear, twisting around one another as they drill into your depths.
<</if>>
<</if>>
You can't help but gasp at the ribbed intrusion, your parted lips rewarded with another vine
<<if $fetish.get_raped || $npc_chuck.timebased.aggressive>>
forcing its way down your throat,
<<else>>
accepting the invitation to press past your lips,
<</if>>
dripping sweet nectar across your tongue.<br>
<br>
<<if $player.body.breastsize[0] > 0>>
Your other erogenous zones are neglected no longer, a pair of trumpet-like tendrils wrapping around and then affixing over your <<=setup.calcBreastSize()>> breasts and commencing
<<if $npc_chuck.timebased.aggressive || $fetish.get_raped>>
aggressive suction, unseen internal stamen pinching and torturing your sensitive nipples.
<<else>>
gentle suction, unseen internal stamen gently teasing and tweaking your sensitive nipples.
<</if>>
<<else>>
Your other erogenous zones are neglected no longer, a pair of trumpet-like flowers affixing themselves over your chest and commencing
<<if $npc_chuck.timebased.aggressive || $fetish.get_raped>>
aggressive suction, unseen internal stamen pinching and torturing your sensitive nipples.
<<else>>
gentle suction, unseen internal stamen gently teasing and tweaking your sensitive nipples.
<</if>>
<</if>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
A sheath slides over your <<getWordMyPenis>> while another thick tentacle works its way into your cunt. You moan, triple filled, sucked and stroked, the "lucky" subject of a one-plant airtight gangbang.
<<elseif $player.body_ref.penis>>
A sheath slides over your <<getWordMyPenis>>, slick and smooth and the perfect tightness it works you up and down in eager hunger for whatever you might leak out.
<<else>>
Another thick tentacle works its way into your cunt. You moan, triple filled and airtight, the "lucky" subject of a one-plant gangbang.
<</if>>
<<else>>
<<if setup.isCage()>>
Stymied by your cage, a sheath nonetheless wraps over your imprisoned appendage, mocking your denied sensitivity as it hungrily sucks.
<<else>>
Stymied by your sleek chastity belt, vines writhe against its steely exterior, reduced to attaching over the mesh drainage holes in anticipation of anything you might leak.
<</if>>
<</if>>
<br><br>
Leaves part as you are drawn into <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> centre, even more vines stretching your limbs tight as leaves close around you, gliding against your flesh. Darkness descends as pollen fills your nostrils, your arousal refreshed and amplified as you writhe helplessly. Each tentacle inside you seems to swell and probe deeper, gloriously pushing your limits. All you can do is suckle sweet nectar as you are sucked and fucked from all directions, your "friend" holding you tight and simultaneously ravishing you in every way possible.<br>
<br>
You drift into a dream-like state, temporarily "one with nature." <br>
<br>
[<<moveTo "event_chuck_final_sex_first_2" "Continue." 1800>>]
</div>/*#
#desc: first sex with chuck
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_chuck.stage = 4>>
<<playerOrgasm>>
<<set $player.timebased.stress = 0>>
<<set $player.timebased.fatigue = 0>>
<<gainWillpower 10>>
<<if State.hasPlayed("event_botanist_tentacles_1_7")>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_other_plants'
0
'event_botanist_tentacles_2_1'
true
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
You wake some time later, leaves parting as your eyes flutter open and you find yourself looking up at the ceiling, vines retreating as control of your body is returned to you.<br>
<br>
<<if $fetish.get_raped>>
Despite your unwilling participation you
<<else>>
You
<</if>>
feel utterly refreshed and at peace, sitting up with a smile on your face as the last of the drug-like effects of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> excretions fade.
<<if $npc_chuck.timebased.aggressive || $fetish.get_raped>>
Though you are not tired, your entire body aches, muscles tense from straining against your bonds, ass and throat sore from hard, pounding use.
<<else>>
Despite their hard use, your throat and rear are not the least bit sore; in fact, your entire body is free of tension as you stand up and get ready to continue with your day.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Continue." 60 "<<set $npc_chuck.timebased.aggressive=false>>">>]
</div>/*#
#desc: first ovipositor with chuck
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
You start massaging one of <<=setup.getNpcName('npc_chuck', 'suffix')>> lower tendrils, attempting to gently work the large obstruction out towards the tip.<br>
<br>
You make slow progress and it seems that <<=setup.getNpcName('npc_chuck', 'suffix')>> is starting to help, the thick tendril flexing along with you and some of <<his npc_chuck>> other appendages fluttering as if <<hes npc_chuck>> enjoying the attention.<br>
<br>
You work your way through several blockages, most of them just break apart and disappear under your attention but, being thorough, you find one final, large one that remains stubbornly tough. You manage to work it to the open tip of <<his npc_chuck>> appendage but can't seem to quite get it to pop free.<br>
<br>
<<printThought "Hmm, maybe I could suck it out the rest of the way?">><br>
<br>
[<<moveTo "event_chuck_ovipositor_first_2" "Use your mouth." 600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "room_livingroom" "Leave it for another time.." 60>>]
</div>/*#
#desc: first ovipositor with chuck
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'tentacles' 'chuck_basic'>>
<<applyExperience 'bestiality' 14 'unbelievable' $ALONE>>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_plant'
0
'theme_church_confession_plant'
true
>>
<<applyExperience 'oral' 12 'very' $ALONE>>
<<set $npc_chuck.flags.oviposited = true>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_chuck'
0
'theme_technician_chuck_1'
false
>>
<<set $npc_chuck.timebased.egg = 0>>
<<applyStress -10>>
<<applyFatigue -30>>
<<changeHorny 50>>
<<gainWillpower 1>>
<<setTmpEffect 'drug_chuck_egg'>>
<<addNpcTheme 'npc_botanist' 'chuck' 'theme_plant_egg'
5
'theme_horticulturist_chuck_egg'
false>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
You kneel down and bring your lips to the tip of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> tentacle-like appendage.
<<if $npc_chuck.flags.oral>>
You are reminded of "blowing" your pet plant, the same sweet, arousing taste of nectar on your lips as you run your tongue around the smooth blockage and start to suck.
<<else>>
You try not to think about how similar to fellatio this probably looks as you run your tongue around the smooth blockage and start to suck.
<</if>>
Using both hands to massage, and sucking with all your might you steadily work the blockage forward until, with a final jump, it shoots out into your mouth, the once-hard lump suddenly exploding in a rich, intoxicating flood of flavour.<br>
<br>
Wide eyed you stagger back, reflexively swallowing and then panting, the strange taste still heavy on your tongue as you feel a rush of rejuvenation.<br>
<br>
When you finally catch your breath you look up at <<=setup.getNpcName('npc_chuck', 'suffix')>>. <<He npc_chuck>> seems... happy? Rising to your feet you give <<him npc_chuck>> a tender caress and move on your way with a smile on your face.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: ovipositor with chuck
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 14 'unbelievable' $ALONE>>
<</if>>
<<if $npc_chuck.timebased.egg >= 100>>
<<set $scene.eggs = 3>>
<<elseif $npc_chuck.timebased.egg >= 66>>
<<set $scene.eggs = 2>>
<<else>>
<<set $scene.eggs = 1>>
<</if>>
<<set $npc_chuck.timebased.egg = 0>>
<<applyStress -10>>
<<applyFatigue -30>>
<<changeHorny 50>>
<<gainWillpower 1>>
<<setTmpEffect 'drug_chuck_egg'>>
<<if $npc_chuck.stage >=4 && $scene.eggs > 1 && $npc_chuck.flags.anal>>
<<applyExperience 'anal' 15 'very' $ALONE>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<set $scene.vaginal = $scene.eggs > 2 && $npc_chuck.flags.vaginal && $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
<</if>>
<<applyExperience 'oral' 15 'normal' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_chuck.stage >=4 && $scene.eggs > 1 && $npc_chuck.flags.anal>>
You start going to work cleaning blockages, but then things get exciting.<br>
<br>
<<=setup.getNpcName('npc_chuck', 'suffix')>> lifts you into the air with a multitude of tentacles, before the <<if $scene.vaginal>>trio<<else>>pair<</if>> that seem the most "blocked" thrust into you from every direction. You gasp as your mouth<<if $scene.vaginal>>, ass and cunt<<else>> and ass<</if>> are penetrated fast and deep, thrusting and writhing inside of you as you watch the first egg-like blockage works its way towards you...<br>
<br>
You moan as you are stretched a little wider, and then you feel the ovipositor-like tentacle make its deposit, an egg shoved deep in your ass followed moments later by one in your mouth that you hurriedly swallow.<br>
<br>
One becomes many as you feel your ass<<if $scene.vaginal>>, belly, and womb<<else>> and belly<</if>> swell with <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> enthusiastic offerings. The feel of each one working its way along <<his npc_chuck>> tentacles and then down your throat or up into you is an erotic, hedonistic delight.<br>
<br>
You moan and writhe in your frondy friend's grasp as <<he npc_chuck>> fills you with "eggs," your overloaded body finally going limp as <<he npc_chuck>> seems to finish depositing <<his npc_chuck>> "blockages" and <<he npc_chuck>> gently places you on the ground. A final egg-shaped parting offering is pressed between your lips before <<he npc_chuck>> retreats from your holes.<br>
<br>
You can already feel your body absorbing the rest but you realise you have the opportunity to "save" this final egg for later...<br>
<br>
[<<moveTo "event_chuck_ovipositor_2" "Spit out the egg to save it." 180 "<<set $scene.save=true>>">>]<br>
[<<moveTo "event_chuck_ovipositor_2" "Swallow the egg." 180 "<<set $scene.save=false>>">>]
<<else>>
Once again you kneel down and work the blockages out of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> lower tendrils. As if in reward for your efforts <<he npc_chuck>> presents you with the final, largest blockage by raising a tentacle towards your face, other tentacles
<<if $npc_chuck.timebased.aggressive>>
pulling you in as the clogged tentacle shoves its way between your lips and disgorges its payload.
<<else>>
caressing your face as the clogged tentacle kisses your gently parted lips apart and then slides between them.
<</if>>
Like the time before, you moan as the final blockage is deposited right onto your tongue, that same invigorating rush of delicious energy bursting inside your mouth as you remember from the first time.<br>
<br>
Eyes closed you rock softly, sucking a bit longer to make sure you've got everything "clear" before <<=setup.getNpcName('npc_chuck', 'suffix')>> releases <<his npc_chuck>> grasp and curls back up in seeming contentment.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $npc_chuck.timebased.aggressive=false>>">>]
<</if>>
</div>/*#
#desc: save chuck egg
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.save>>
<<addItem 'chuck_egg'>>
<<else>>
<<set $npc_chuck.flags.oviposited_full = true>>
<<applyStress -10>>
<<applyFatigue -30>>
<<changeHorny 50>>
<<gainWillpower 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.save>>
You very carefully spit out the "egg" it seems to harden up with exposure to the air, and after a few moments it feels quite durable, though you can tell there's still a "creamy" centre if you decided to consume it. You put it away for later.
<<else>>
You bite down, suppressing a moan as the egg explodes in your mouth lest you let any of the delicious delight leak past your lips.<br>
<br>
You savour the delectable flavour and slowly swallow, feeling as if a weight has lifted off your mind as a second wave of erotic invigoration runs through your body.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: cook anal training options
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' 'theme_psychiatrist_cook_15'
4
'event_psychiatrist_session_cook_difficulty_anal_1'
false
>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<switch $npc_cook.flags.porn.anal_stage>>
<<case 0>>
"@@.npc_cook;Alright, before we start@@" <<=setup.getNpcName('npc_cook', 'first')>> opens with a suddenly serious tone. "@@.npc_cook;What's your experience? I mean in terms of bottoming. I know I agreed tah train yeh, but knowin' where yer startin' from would help us avoid any confusion like what led you to feeling obligated to jerk me off.@@"<br>
<br>
<<if !$player.virgin.anal && ($player.virgin.pegged || !$fetish.pegging_is_anal)>>
[<<moveTo 'event_cook_training_anal_lie' "Lie and tell <<him npc_cook>> that you take it up the ass all the time." 60>>]<br>
[<<moveTo 'event_cook_training_anal_denied' 'Confess that you have never had anyone "back there."' 60>>]
<<elseif setup.getTotalValue("penis") > 10>>
[<<moveTo 'event_cook_training_anal_1' "Tell <<him npc_cook>> how much you love cock, especially when it's thrusting into your ass!" 60>>]<br>
[@@.link_locked;You love <<his>> <<getWordPenis "npc_cook">> too much to even think of denying that you're a total butt-slut bottoming bitch.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_anal_1' "Tell <<him npc_cook>> you've bent over to take your share of cock." 60>>]<br>
[<<moveTo 'event_cook_training_anal_lie' "Lie and say you're still an anal virgin." 60>>]
<</if>>
<<case 1>>
"@@.npc_cook;I know I'm a challenge, but you'd be amazed how far a well-trained ass can stretch. Let's get to it and get you trained!@@"<br>
<br>
[<<moveTo 'event_cook_training_anal_1' "Spread 'em!" 60>>]
<<case 2>>
"@@.npc_cook;Past the first hurdle and back for more! That's the type of wanton enthusiasm that'll get views! Mmm, I can't wait to feel your tight hole wrapped around my cock, we'll have you trained and ready for the big screen in no time!@@"<br>
<br>
[<<moveTo 'event_cook_training_anal_2' "Your ass is puckering in anticipation, time to bend over!" 60>>]
<<case 3>>
"@@.npc_cook;There's my favourite <<if $fetish.sissy>>sissy <</if>>ass, you've come so far... and I've cum so deep, you think today's the day you finally take it all?@@"<br>
<br>
[<<moveTo 'event_cook_training_anal_3' "Turn around and shake your tush in pride, it's time to get stuffed!" 60>>]
<<case 4>>
The cook grins with pride.
<<if $npc_cook.flags.porn.vag_stage < 4 || $npc_cook.flags.porn.oral_stage < 4>>
"@@.npc_cook;Not that I wouldn't enjoy pounding that perfect posterior of yours... but perhaps yeh might prefer to spend the time training one of yer other, less experienced, holes?@@"
<<else>>
The cook grins with pride. "@@.npc_cook;Yeh have already proven your ass, <<callPlayer "npc_cook">>! But I shan't say no to another a quick slam and bang!@@"
<</if>>
<br><br>
[<<moveTo 'event_cook_training_anal_4' "Bend over for some quick practice." 600>>]<br>
[<<moveTo 'event_cook_training_root' "On second thought, perhaps something else?" 60>>]
<<default>>
ERROR: unexpected npc_cook.flags.porn.anal_stage : <<=$npc_cook.flags.porn.anal_stage>>
<</switch>>
</div>/*#
#desc: admit to cook that you're an anal virgin
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("humiliation") < 10>>
Blushing like the bashful <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are you reluctantly admit you haven't actually been fucked in the ass.
<<else>>
You're surprised at how embarrassed it feels to admit that you HAVEN'T been fucked in the ass.
<</if>>
<br><br>
"@@.npc_cook;Thanks for the honesty. Some girls insist on claiming experience they don't have, and it's a bad idea, as well as being unprofessional! As to your lack of experience... there's something unique about a real flesh and blood cock. As much as I'd love to feel your tight hole spread before my battering-ram I think you need to get some "normal" experience first before you attempt to take what I have, lest I split your cute little tush in twain!@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "You can tell <<he npc_cook>> won't be swayed by additional argument so you depart." 60>>]
</div>/*#
#desc: lie about your anal experience to cook to try to get training
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if !$player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<He npc_cook>> looks at you askance and shakes <<his npc_cook>> head. "@@.npc_cook;I know yer eager, but conditions on set, and in life, require trust. I can tell you're lying — you're an anal virgin, ain't yeh?@@"<br>
<br>
<<if $player.peggingvirgininity != "">>
You try to explain that you've been pegged, but <<he npc_cook>> shakes <<his npc_cook>> head.
<<else>>
<<if setup.getTotalValue("humiliation") <= 10>>
Blushing like the bashful <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are you reluctantly admit you haven't actually been fucked in the ass.
<<else>>
You're surprised at how embarrassed it feels to admit that you HAVEN'T been fucked in the ass.
<</if>>
<</if>>
"@@.npc_cook;There's something unique about a real flesh and blood cock. As much as I'd love to feel your tight hole spread before my battering-ram I think you need to get some "normal" experience first before you attempt to take what I have, lest I split your cute little tush in twain!@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "You can tell <<he npc_cook>> won't be swayed by additional argument so you depart." 60>>]
<<else>>
"@@.npc_cook;Silly <<if $fetish.sissy>>sissy<<else>>girl<</if>>! I can tell by the way someone walks if they've ever been fucked and you've DEFINITELY taken it up the ass a time or two! What we show to the camera may be an act but, as professionals, we need to be honest about these things. Be proud that you've had a cock up inside you, sure, it wasn't as glorious as mine, but I bet it felt good and now... now you're ready to take it to the next level!@@"<br>
<br>
<<He npc_cook>> grins as you can't help but stare down at <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>> smiling even wider at the slight tremble in your knees <<he npc_cook>> continues. "@@.npc_cook;Since yer nay some tight-tushed neophyte lets spread that sexy rosebud and show your insides what they've been missing!@@"<br>
<br>
<<if $fetish.bestiality_soft>>
[<<moveTo 'event_cook_training_anal_1' 'Ready yourself for <<his npc_cook>> big horsecock.' 180>>]<br>
<<else>>
[<<moveTo 'event_cook_training_anal_1' 'Ready yourself for <<his npc_cook>> monstrous cock.' 180>>]<br>
<</if>>
[<<moveTo 'event_cook_training_decline' 'Change your mind and decline to train today.' 60>>]
<</if>>
</div>/*#
#desc: anal training 1 - show your love of cock and take him partway
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.anal_stage = 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<He npc_cook>> gets to business, nodding as a smile spreads across <<his npc_cook>> face and <<he npc_cook>> brandishes <<his npc_cook>> stiffening member. "@@.npc_cook;Alright, <<callPlayer "npc_cook">>, let's start with the basics. Porn ain't jus' about the physical, there's a mental aspect as well. A cock like this... you can't just bend over, you have to give your whole self to it, bare yourself body and soul and let it fill you completely. You need to WANT it, NEED it, BEG for it, and that is part of your training as well — you need to be able to handle the verbal aspects of a scene. In the course of your training I may have harsh words for you, but it is all to help you, both in the moment and to prepare for your promising career ahead.@@"<br>
<br>
You nod, a flutter of arousal going through your body at the reminder of the planned end goal of your training.<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
<<printThought "I'm really going to be a porn star! Well... once I conquer <<his npc_cook>> giant <<getWordPenis 'npc_cook'>>...">>
<<else>>
<<printThought "Do I really want to become a porn star? I guess it doesn't matter unless I can conquer <<his npc_cook>> massive <<getWordPenis 'npc_cook'>>...">>
<</if>>
<br>
"@@.npc_cook;Alright then, let's get started.@@" <<His npc_cook>> friendly demeanour shifts in an instant as <<he npc_cook>> stands up, <<his npc_cook>> cock raised with one hand as <<he npc_cook>> looks down at you. "@@.npc_cook;Well, slut, what makes you think your tight ass is worthy of my cock?@@"<br>
<br>
[<<moveTo 'event_cook_training_anal_1a' 'Ask <<him npc_cook>> to do your ass.' 300 "<<set $scene.acting = false>>">>]<br>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo 'event_cook_training_anal_1a' 'Beg <<him npc_cook>> to fuck your ass.' 300 "<<set $scene.acting = true>>">>]
<<else>>
[@@.link_locked;You don't love cock enough to credibly beg for <<his npc_cook>> monstrosity.@@]
<</if>>
</div>/*#
#desc: anal training 1 - attempt to voice your love of cock
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_anal += 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.acting>>
You shudder with desire, your voice feminine and lusty as you respond.<br>
<br>
"@@.pc;I don't know know if anyone is truly worthy of your big, glorious cock, but I want to feel it. I want to feel it in my ass!@@"<br>
<br>
Bending over and turning around you wiggle your ass in <<his npc_cook>> direction.<br>
<br>
"@@.pc;Please, <<sir npc_cook>>, I beg you! Fuck my <<callPlayer "npc_barkeeper">> ass, fill my girly body with your big, <<if $npc_cook.fem>>thick<<else>>manly<</if>> meatstick!@@"<br>
<br>
[<<moveTo 'event_cook_training_anal_1b' 'Spread your cheeks and flutter your eyes back at <<him npc_cook>>.' 60>>]
<<else>>
You're a bit distracted by <<his npc_cook>> intimidating cock as you bend over to present your ass.<br>
<br>
"@@.pc;Please, <<sir npc_cook>>, would you... fuck my ass?@@"<br>
<br>
[<<moveTo 'event_cook_training_anal_1a_fail' 'Wiggle your butt and await <<his npc_cook>> move.' 60>>]
<</if>>
</div>/*#
#desc: anal training 1 - fail to convince him you love cock
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<He npc_cook>> sighs and shakes <<his npc_cook>> head.<br>
<br>
"@@.npc_cook;Sorry <<callPlayer "npc_cook">>, but if you can't make the effort I don't think we can do this. The camera- I mean, I need to believe that the most important thing in your life is for you to be fucked by my <<if $fetish.bestiality_soft>>horsecock<<else>>big cock<</if>>. Taking a cock like this isn't just a skill, it requires passion, a burning desire for your body to be forced open, to contort itself around a big, hard intruder.@@"<br>
<br>
You sigh at your failure — you had expected taking <<him npc_cook>> to be a physical challenge, but these mental games are another level. Looking up at <<his npc_cook>> face, however, makes it clear that <<he npc_cook>> isn't going to allow you any shortcuts.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "I suppose <<hes npc_cook>> right, if I want this I need to commit, half-assing isn't going to be enough for something big enough to fill my whole ass and more!">><br>
<br>
[<<moveTo 'event_cook_training_anal_1' "Try again to show <<him npc_cook>> what you're really capable of." 60>>]<br>
<<else>>
<<printThought "I guess I'm not that good of a performer, maybe if I do a bit of method acting I can get past my jitters?">><br>
<br>
<</if>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Apologise for wasting <<his npc_cook>> time and promise to do better next time." 60>>]
</div>/*#
#desc: anal training 1 - about to be fucked
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_anal += 1>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<set $scene.cagename = setup.getItemTypeName("cage")>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Smiling back with approval <<he npc_cook>> steps towards you. <<His npc_cook>> cock is hot and wet against your thigh as <<he npc_cook>> gropes your ass.
<<if $scene.plug != "">>
<<His npc_cook>> probing fingers soon expose your ass and find the <<=setup.getItemName($scene.plug)>> occupying your rear hole.<br>
<br>
"@@.npc_cook;What's this? I suppose I shouldn't be surprised that a slut like you wouldn't want to be empty, but you didn't really think this would prepare you for me, did you?@@"<br>
<br>
You grind your plug against <<his npc_cook>> hand as you breathlessly reply. "@@.pc;No, <<sir npc_cook>>, nothing could compare to your glorious cock! Rip that pretender out of my hole and fuck me, fuck me hard!@@"<br>
<br>
You feel <<his npc_cook>> cock twitch against <<his npc_cook>> leg, obviously your words are exciting <<him npc_cook>> and <<he npc_cook>> <<if $scene.removePlug>>hurries to, gently, remove your plug before squirting<<else>>squirts<</if>> a thick dollop of lube up in its place.
<<else>>
<<His npc_cook>> probing fingers expose your ass and you feel them rubbing some sort of lube around your hole. You gasp at the cool liquid, then moan as <<he npc_cook>> squirts a big spurt of it deeper into your hole.
<</if>>
<br><br>
"@@.npc_cook;There, now it's time, are you ready my cutie?@@"<br>
<br>
You moan theatrically. "@@.pc;Yes! Don't make me wait any longer! Fuck my ass, fill the empty hole in my life with your wonderful cock!@@"<br>
<br>
<<if setup.getTotalValue("anal") > 7>>
[<<moveTo 'event_cook_training_anal_1_success' 'Relax and hold your breath in anticipation of <<his npc_cook>> <<getWordPenis "npc_cook">>.' 300>>]
<<else>>
[<<moveTo 'event_cook_training_anal_1b_fail' 'Brace yourself for <<his npc_cook>> <<getWordPenis "npc_cook">>.' 300>>]
<</if>>
</div>/*#
#desc: anal training 1 - take his tip in your ass
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'anal' 'extreme_anal' 'cook_anal'>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
With one hand braced against your hip <<=setup.getNpcName('npc_cook', 'first')>> lines up the fat head of <<his npc_cook>> cock with your lubricated hole and begins to push.
<<if $fetish.bestiality_soft>>
Though its flared, inhuman tip is velvety soft around the edge it is still thick and hard at the core.
<br>
<<else>>
<<His npc_cook>> fat mushroom tip presses hard against your slick hole.
<</if>>
For a moment you wonder if even "just the tip" will fit into you but then, with a gentle press forward, <<he npc_cook>> enters you.<br>
<br>
The gasp you let out is no act, you have never been spread like this and you are quite thankful that <<he npc_cook>> pauses a mere centimetre inside you to let you adjust.<br>
<br>
"@@.npc_cook;Well? Better than <<if $npc_cook.fem>>most people<<else>>normal guys<</if>>, isn't it?@@" <<He npc_cook>> asks, <<his npc_cook>> hands reaching out to grasp your hips, <<his npc_cook>> voice a <<if !$npc_cook.fem>>masculine <</if>>growl in your ear.<br>
<br>
<<He npc_cook>> starts to shift, going just a little deeper to magnify the sensations a hundredfold.<br>
<br>
"@@.pc;Oh <<getWordGod>>, yes! So much better, you're so big!@@"<br>
<br>
<<His npc_cook>> cock rocks just a little deeper into you and you feel like you could explode, letting out a gasp of relief as <<he npc_cook>> pulls back.<br>
<br>
"@@.npc_cook;I know, your fluttery little hole feels so good, so tight around my tip...@@" <<he npc_cook>> grunts, continuing to make short strokes, <<his npc_cook>> thicker head barely stretching your hole before <<he npc_cook>> slides back in. It's like being fucked by a soda can and you're panting with each stroke.<br>
<br>
"@@.pc;Thank you <<sir npc_cook>>, I'm so honoured to pleasure your wonderful cock with my body. Please, <<sir npc_cook>>, bless me with your cum...@@"<br>
<br>
<<His npc_cook>> pace quickens. Fortunately for the sake of your already straining ass <<he npc_cook>> goes no deeper, but you can tell from <<his npc_cook>> own quickened breaths that <<he npc_cook>> is getting close.
<<if $player.body_ref.penis>>
<<if $scene.cagename == "">>
As hard as it can get your <<getWordMyPenis>> flops around, squirting in excitement without you even touching it, your hand reflexively positioning to catch your spray as you thrash on the tip of <<his npc_cook>> cock, your hand positioned to catch your pitiful dribbles.
<<else>>
Your <<getWordMyPenis false>> strains inside its <<=$scene.cagename>>, but your prison holds, intensifying the sensations in your ass as you wonder if this is all that you have to look forward to in the future.
<</if>>
<<else>>
<<if $scene.cagename == "">>
Your <<getWordVagina>> drips, jealous of the glory happing centimetres away.
<<else>>
Your <<getWordVagina>> drips inside its <<=$scene.cagename>>, but you merely leak around the dam in jealously.
<</if>>
<</if>>
<br><br>
Your breaths coming in short pants <<he npc_cook>> cums, a flood unleashed inside you that makes your insides swell. <<His npc_cook>> hands on your hips are like vices as <<he npc_cook>> makes an obvious effort not to plunge deeper into you. Still, you feel your ass stretch even further as <<his npc_cook>> cock swells to discharge the last of <<his npc_cook>> load, a pulse, then another that has your bowels stretching before <<he npc_cook>> withdraws.<br>
<br>
Thankfully your legs were already spread wide, as your distended rear has not a prayer of holding in the flood of <<if $fetish.bestiality_soft>>horsecum<<else>><<getWordCum>><</if>> that pours out of it.<br>
<br>
<<His npc_cook>> hands still on your hips <<he npc_cook>> keeps you from falling as you stagger slightly and then slowly turn around.<br>
<br>
Looking down, you are a bit dismayed to note by the wet ring around <<his npc_cook>> cock that you barely took a quarter of it. <<if $fetish.sph>>Still more than your own puny <<getWordMyPenis false>>, but it looks like you have a lot of training yet ahead of you<<else>>It would seem you have more training yet to prove<</if>>.<br>
<br>
[<<moveTo 'event_cook_training_anal_1_cleanup' "Catch your breath and await <<his npc_cook>> assessment." 60>>]
</div>/*#
#desc: anal training 1 - succeed in taking half his cock up your ass
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'anal' 'extreme_anal' 'cook_anal'>>
<<set $npc_cook.flags.porn.anal_stage = 2>>
<<applyExperience 'anal' $npc_cook.penis_size 'terrible' $SEEN_STRANGER>>
<<set $player.timebased.milking.cream_supply = 0>>
<<set $player.timebased.horny = 0>>
<<set $player.timebased.without_orgasm = 0>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Your used ass is spread in anticipation, the mere touch of the head of <<=ps(setup.getNpcName("npc_cook","first"))>> hot
<<if $fetish.bestiality_soft>>
frilled horsecock
<<else>>
mushroom tip
<</if>>
enough to make you let out a moan. <<He npc_cook>> doesn't keep you waiting, a gentle pressure enough for the fat head to "pop" into your ready hole.<br>
<br>
"@@.pc;Fuck yes,@@" you moan, "@@.pc;My ass was meant to spread for you, now fuck me! Fill me with your <<if $fetish.bestiality_soft && !$npc_cook.fem>>stallion cum<<else>><<getWordCum>><</if>>.@@"<br>
<br>
"@@.npc_cook;As if you had a choice, slut.@@" <<He npc_cook>> grunts as several centimetres of <<his npc_cook>> tapered shaft slide into you behind <<his npc_cook>> thicker tip.<br>
<br>
You're on tippy-toes as <<he npc_cook>> slides deeper, exploring parts of you that have never before been touched. Holding your breath at the intensity of the sensation you are both disappointed and relieved when <<he npc_cook>> finally stops <<if $fetish.bestiality_soft>>as <<his npc_cook>> taper widens past the thickness of <<his npc_cook>> tip<<else>><<he npc_cook>> pushing <<his npc_cook>> dick in you<</if>>.<br>
<br>
"@@.npc_cook;Not bad, slut, that's over a third of my cock spreading your wet, slutty hole. Let's see how it feels when I thrust?@@"<br>
<br>
Before you can react, <<he npc_cook>> has pulled back about halfway and then plunged forward while your insides are yet spread. The sensation is amazing, as if a baseball bat was being forced into you fat-end first, and it feels great.<br>
<br>
With each thrust you gape further and <<he npc_cook>> drives deeper, always in control of the situation and you can feel your combined orgasms approaching, <<his npc_cook>> fat tip scraping your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> with every long stroke.<br>
<br>
Moaning in near unison as you approach the edge together you feel <<his npc_cook>> cock plunge deeper than ever and then stiffen and swell to herald <<his npc_cook>> orgasm. With a great spurt <<he npc_cook>> paints your insides with <<his npc_cook>> mammoth load.
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction > 0>>
<<if $scene.cagename == "">>
You barely manage to wrap your palm over the tip of your <<getWordMyPenis>> as it spurts in sympathetic joy.
<<else>>
From inside its prison your <<getWordMyPenis false>> weeps with joy, dripping tears of happiness into your waiting palm.
<</if>>
<<else>>
<<if $scene.cagename == "">>
You barely manage to wrap your palm over the tip of your <<getWordMyPenis>> as it twitches in sympathetic joy.
<<else>>
From inside its prison your <<getWordMyPenis false>> strains with joy, dry orgasming in its untouchable confinement.
<</if>>
<</if>>
<<else>>
You gush <<if $scene.cagename != "">>past your belt <</if>>with joy.
<</if>>
<<if $player.body_ref.cumProduction > 0>>
For a moment it is like your body is a cum filter — processing <<his npc_cook>> thick, potent brew and thinning it down into your dainty <<if $fetish.sissy>>sissy-<</if>>emissions.
<</if>>
<br><br>
Holding <<himself npc_cook>> at depth as <<he npc_cook>> pumps you full of the contents of <<his npc_cook>> oversized balls you feel <<his npc_cook>> hand brush your gaping rosebud before <<he npc_cook>> finally withdraws.<br>
<br>
Reaching behind, with your own free hand you try to clench and hold back the tide, succeeding in preventing at least some of <<his npc_cook>> thick spooge from leaking out onto the floor as you look back to note with wide-eyed pride by <<his npc_cook>> hand position that a full half of <<his npc_cook>> mammoth <<if $fetish.bestiality_soft>>horsecock<<else>><<getWordPenis "npc_cook">><</if>> had been inside of you.<br>
<br>
Standing there, your sore, stretched ass still leaking cum, you feel nothing but pride at your accomplishment.<br>
<br>
[<<moveTo 'event_cook_training_anal_1_cleanup' "Catch your breath and await <<his npc_cook>> assessment." 60>>]
</div>/*#
#desc: anal training 1 - assessment and cleanup
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Watching to be certain that you're steady on your feet <<=setup.getNpcName("npc_cook","first")>>
<<if $scene.removePlug>>
hands you a towel and your <<=setup.getItemName($scene.plug)>>. Looking at the plug in your hand it seems small compared to <<his npc_cook>> slowly deflating member, but you have nowhere else to store it so you shove it back up your still-gaping hole, concentrating to clamp down lest it slip free.<br>
<<else>>
hands you a towel.
<</if>>
<br><br>
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction == 0>>
Your poor <<getWordMyPenis>> sensitive and soft from having orgasmed without even being touched<<if $scene.cagename != "">>, locked away in its private cell<</if>>.
<<else>>
<<if $scene.cagename == "">>
Your poor <<getWordMyPenis>> sensitive and soft from having spurted without even being touched you
<<else>>
Locked away in its prison your <<getWordMyPenis false>> is sore and forlorn, having dribbled its excitement freely in proof that you really don't need to touch it to get off. You
<</if>>
<<if setup.getTotalValue("cum") >= 10>>
can't resist licking up every drop from your hand, the contrast between your thin, delicate offering and <<his npc_cook>> thick spooge pooled at your feet and filling the room with its intense scent, causing you to taste almost like honey.<br>
<br>
You stagger. It is all you can do not to drop to your knees and lick up <<his npc_cook>> creamy offering from the floor — unfortunately you are running short on time to get back to work.
<<elseif setup.getTotalValue("cum") > 5>>
gather as much of your spilt <<getWordCum>> as you can with your fingers and lick it up. The air heavy with the potent, musky scent of <<his npc_cook>> seed your own tiny offering tastes sweet and delicate.
<<else>>
gently pat things dry and wipe off your hand.
<</if>>
<</if>>
<<else>>
Your <<getWordVagina>> may have been untouched, but it twitches in hyper-sensitivity as you slowly calm down.
<</if>>
Wiping your butt dry you slip your clothes back on and turn to face <<=setup.getNpcName("npc_cook","first")>>.
<br><br>
<<if $npc_cook.flags.porn.anal_stage == 1>>
"@@.npc_cook;Not a bad effort — you still have a ways to go, but you've started down the road towards being a gaping size-queen butt-slut.@@"
<<else>>
Looking up at <<his npc_cook>> wide grin you don't even need to hear <<his npc_cook>> words to know that you have reached a milestone in your training.<br>
<br>
"@@.npc_cook;Very good, you're already in the upper percent of anal capacity, but there's much left to go if you wish to... fulfill your dreams. It only gets harder from here. For your next session I'll be cutting loose and showing you what a really intense shoot can be like... I'm sure a <<callPlayer "npc_barkeeper">> like you will love it.@@"
<</if>>
<br><br>
Not trusting your voice not to crack into a million pieces you merely nod, straightening your clothes as best you can, thankful that you appear to have evaded any cum stains!<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Swaying slightly you head out of the room and hurry back to your desk, your lunch break nearly over.' 180>>]
</div>/*#
#desc: anal training 2 - whoring, wearing a large butt plug, take him deep
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_anal += 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.npc_cook;Alright, you've learned the basics, but now it's time to push deeper. Before I was letting you take the lead, but porn isn't about just one person. I warn you that this is going to be intense for you both mentally and physically. I don't mean to be cruel, but it's the only way to prepare you for the work ahead. Just embrace your inner cock-whore and you'll be fine.@@"<br>
<br>
You nod in agreement and <<he npc_cook>> instructs you to walk out of the room and re-enter to begin the "scene." You slip out of the storage room and take a deep breath, mentally preparing yourself as your hand grasps the door handle and you get ready to walk back in.<br>
<br>
[<<moveTo 'event_cook_training_anal_2a' 'Open the door and walk back inside.' 180 "<<set $scene.acting = false>>">>]<br>
<<if setup.getTotalValue("whoring") > 5 && setup.getTotalValue("bimbofication") > 10>>
[<<moveTo 'event_cook_training_anal_2a' 'Strut back into the room like a slutty streetwalker.' 180 "<<set $scene.acting = true>>">>]
<<else>>
[@@.link_locked;You don't have enough experience as a prostitute to credibly pretend to be a <<callPlayer "npc_barkeeper">>.@@]
<</if>>
</div>/*#
#desc: anal training 2 - convince him you're a whore
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.acting>>
Striding into the room you thrust out your hips and flick your hair back. Licking your lips seductively you nod and await <<his npc_cook>> approval.<br>
<br>
"@@.npc_cook;There's the fuck-slut whore I ordered, mmm... you look perfect, now to see if you're worth my money.@@"<br>
<br>
You strut towards <<him npc_cook>> and give a spin before bending over. "@@.pc;Mmmm, I live to serve anyone with a cock and nice fat wallet.@@"<br>
<br>
<<He npc_cook>> slaps your ass hard enough for you to jump. "@@.npc_cook;Yeah, or maybe just a big cock? The agency said you were expensive but I can tell you're just a cheap slut, you don't do this for the money, you prostitute your ass because you want to be fucked.@@"<br>
<br>
You moan as <<he npc_cook>> starts to peel away your clothes, "@@.pc;Mmmm, you see right through me, now please, fill me with your cock!@@"<br>
<br>
[<<moveTo 'event_cook_training_anal_2b' 'Roll your hips in invitation and get ready to "work."' 60>>]<br>
<<else>>
Walking back inside you've barely closed the door behind you when you realise you've screwed up.<br>
<br>
Anger blazes in <<his npc_cook>> eyes as <<his npc_cook>> cock pulses ominously.<br>
<br>
"@@.npc_cook;What's this? I asked for an experienced <<callPlayer "npc_barkeeper">>, not some brainless slut who's barely been fucked. Do you think you can take this up your ass? I doubt it, get the fuck out of my sight you useless waste of holes.@@"<br>
<br>
You flinch as if struck, <<he npc_cook>> wasn't kidding about things getting more intense, it doesn't look like you'll be getting your ass fucked today sporting your current attitude.<br>
<br>
<<if setup.getTotalValue("whoring") > 5 && setup.getTotalValue("bimbofication") > 10>>
<<printThought 'Wow, <<he npc_cook>> really expects me to act like a slutty <<callPlayer "npc_barkeeper">>! I can do that, right?'>><br>
<br>
[<<moveTo 'event_cook_training_anal_2' 'Step out of the room to reset the scene and try again.' 300>>]<br>
<<else>>
[@@.link_locked;Blushing with shame you turn to leave. It seems you aren't quite ready for this sort of thing.@@]<br>
<</if>>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Apologise for wasting <<his npc_cook>> time and head back to your desk with a promise to do better next time." 60>>]
<</if>>
</div>/*#
#desc: anal training 2 - he checks for and removes your anal plug
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<if $scene.plug>>
<<set $scene.plugSize = setup.getEffectivePlugSize()>>
<<if $scene.plugSize > 9 && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.removePlug = true>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.plug == "">>
Standing behind you <<his npc_cook>> <<if $npc_cook.fem>>roughly spreads<<else>>strong, rough hands spread<</if>> your cheeks, <<his npc_cook>> thumb probing your pucking rosebud.<br>
<br>
"@@.npc_cook;Empty? I specifically asked for my whore to be plugged, stretched and ready! I don't have time to waste time warming you up and I sure as hell ain't going to deal with surcharges for breaking you. Get out of here, you amateur, and don't come back until you're properly equipped!@@"<br>
<br>
Your exposed hole quivers in empty shame as you pull up your panties and depart. Looks like you'll need to be more prepared next time.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Slink out of the room and return to your desk." 60>>]
<<elseif $scene.plugSize < 10>>
Standing behind you <<his npc_cook>> <<if $npc_cook.fem>>forcibly spreads<<else>>strong, rough hands spread<</if>> your cheeks, <<his npc_cook>> thumb swiftly finding the base of your plug.<br>
<br>
<<Him npc_cook>> roughly pulling out the small occupant has you let out a slight grunt which turns to a gasp as <<he npc_cook>> crams it back in.<br>
<br>
"@@.npc_cook;What was that tiny thing? You think something that small is enough to prepare you for THIS?@@" <<He npc_cook>> punctuates <<his npc_cook>> statement by grinding the base of <<his npc_cook>> cock against your ass, the thick shaft spreading your cheeks wide and forcing your plug a little deeper.<br>
<br>
"@@.pc;Ah! No, <<sir npc_cook>>, I should have worn something bigger, <<sir npc_cook>>.@@"<br>
<br>
"@@.npc_cook;That's right, I specifically requested a well-trained whore with a pre-gaped ass. You think I want to pay to warm you up? Fuck no, you're here for me to shove my cock into and fuck hard and fast. Foreplay is wasted on cheap trash like yourself.@@"<br>
<br>
You whimper as <<he npc_cook>> slaps your ass a final time and pushes you away.<br>
<br>
"@@.pc;I'm sorry, <<sir npc_cook>>, I promise that next time I will arrive properly equipped.@@"<br>
<br>
"@@.npc_cook;See that you do.@@" <<He npc_cook>> grunts.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Fixing your clothes you walk out of the room and back to your desk." 60>>]
<<else>>
Exposing your ass cannot help but also expose the thick <<=setup.getItemName($scene.plug)>> occupying your hole.<br>
<br>
"@@.npc_cook;Now THERE'S a proper anal-whore.@@" <<He npc_cook>> notes as <<he npc_cook>> roughly jostles the plug in your rear. "@@.npc_cook;Can't stand being empty for a moment, always spread and ready for a nice big cock to fill her up. Well, today is your lucky day because you're about to get the biggest, thickest dicking of your life.@@"<br>
<br>
<<if $scene.removePlug>>
You grind back against <<his npc_cook>> hand until <<he npc_cook>> takes a firm grip and rips the plug out of your ass to leave you gaping.
<<else>>
"@@.npc_cook;Such a slut — permanently gaped and ready. I'd be insulted that you thought you needed something even bigger than myself... if I wasn't hard as stone ready to plow that ass.@@"
<</if>>
<br><br>
"@@.pc;OH! don't leave me waiting! Fuck my hole! Let me earn my pay!@@"<br>
<br>
"@@.npc_cook;Pay? It seems the only wages you need are cock! You're in luck, you're about to get back pay and a nice fat bonus.@@"<br>
<br>
Too caught up in the moment to consider if you should be encouraging <<him npc_cook>> this much you stand there bent over, spread and waiting as <<he npc_cook>> squirts a thick glob of lube into your quivering passage.<br>
<br>
[<<moveTo 'event_cook_training_anal_2c' "Brace yourself for the hard fucking that's about to come." 60>>]
<</if>>
</div>/*#
#desc: anal training 2 - cook starts to fuck you
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_anal += 1>>
<<set $scene.cagename = setup.getItemTypeName("cage")>>
<<applyExperience 'anal' 10 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
With little in the way of ceremony <<=setup.getNpcName('npc_cook', 'first')>> crams the thick head of <<his npc_cook>> <<if $fetish.bestiality_soft>>horsecock<<else>>fat cock<</if>> into your ass. Even knowing what to expect and having been recently plugged the feeling is intense as the warmth of <<his npc_cook>> hard flesh slides into you.<br>
<br>
Switching to short, jackhammer thrusts <<he npc_cook>> moves deeper, your sphincter narrowing and then spreading anew as <<his npc_cook>> tapered shaft slides into you centimetre by centimetre. Your world narrows until it seems that all you are is a hole being slowly filled, like a stake being driven into the earth, <<his npc_cook>> burrowing cock marking your ass as <<his npc_cook>> territory.<br>
<br>
Progress slows as you feel <<him npc_cook>> approach your previous limit, your body is resisting you, and <<him npc_cook>>, and <<he npc_cook>> pauses for you to open yourself further to <<him npc_cook>>.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
[<<moveTo 'event_cook_training_anal_2_success' "Employ your copious training to surrender yourself to <<his npc_cook>> cock." 300>>]
<<else>>
[<<moveTo 'event_cook_training_anal_2c_fail' 'Hold on and try to survive <<his npc_cook>> <<getWordPenis "npc_cook">>.' 300>>]
<</if>>
</div>/*#
#desc: anal training 2 - fail to take cook deep enough
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_anal += 1>>
<<applyExperience 'anal' $npc_cook.penis_size 'terrible' $SEEN_STRANGER>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_cook', 'first')>> shifts gears from <<his npc_cook>> rapid short thrusts, pulling almost all the way out before plunging back into you. Despite feeling near split in twain with each gaping thrust you can sense <<him npc_cook>> holding back, refraining from that final push to "straighten out" the blocking curve at the end of <<his npc_cook>> thrusts.<br>
<br>
You try to press back into <<him npc_cook>> to force <<him npc_cook>> deeper, but your body resists, flesh is weak and your paired mortal hesitation and caution prevents <<his npc_cook>> hips from slamming into you.<br>
<br>
"@@.npc_cook;Fucking whore! You're so tight! Gripping my cock like a glove! I'm going to cum, beg for it! Beg for it, slut!@@"<br>
<br>
"@@.pc;Yes, fuck me! Flood my <<if $fetish.sissy>>sissy<<else>>slut-<</if>>hole with your <<if $npc_cook.fem>>cum<<else>>man gravy<</if>>!@@"<br>
<br>
With a grunt, <<he npc_cook>> does just that, sliding an extra centimetre deeper on the wave of cum deposited deep in your ass. Pulsing and throbbing and stretching you even further <<he npc_cook>> empties the full contents of <<his npc_cook>> balls deep inside of you, giving it a little stir before slowly sliding back out.<br>
<br>
As <<his npc_cook>> cock pops free <<he npc_cook>> suddenly shoves your plug back into place. Your hungry hole somehow finds the strength to clamp down on the comparatively small companion, stemming the tide to keep you sloshy-full of <<getWordCum>>.<br>
<br>
"@@.npc_cook;There, that's your whore payment, all sealed in and safe.@@"<br>
<br>
You groan in depraved satiation,
<<if $player.body_ref.penis>>
<<if $scene.cagename == "">>
your <<getWordMyPenis>> leaking into your cupped hand, your spurting load
<<else>>
within its prison your <<getWordMyPenis>> dribbles into your cupped hand, the scant drops
<</if>>
pitiful compared to the deluge stoppered and sloshing around in your ass.
<<else>>
and you gush <<if $scene.cagename != "">>past your belt <</if>>with joy.
<</if>>
<br><br>
As you shudder in sensory overload <<=setup.getNpcName('npc_cook', 'first')>> dismissively wipes <<his npc_cook>> cock clean on a nearby towel.<br>
<br>
"@@.npc_cook;Not bad, whore, though you're didn't really fulfill your duties — you didn't even touch the last few centimetres of my cock!@@"<br>
<br>
[<<moveTo 'event_cook_training_anal_2_cleanup' "Apologise for your failure and thank <<him npc_cook>> for letting you serve <<him npc_cook>>." 60>>]
</div>/*#
#desc: anal training 2 - enthusiastically take cook almost all the way into your ass
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_cook.penis_size 'terrible' $SEEN_STRANGER>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<set $npc_cook.flags.porn.anal_stage = 3>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
With each strong thrust <<=ps(setup.getNpcName('npc_cook', 'first'))>> cock drives deeper into your ass, the line between you pretending to be a cock-thirsty whore and you being such blurring more and more.<br>
<br>
Backing into <<him npc_cook>> to feel <<him npc_cook>> deeper <<he npc_cook>> comes close enough that <<his npc_cook>> big swinging balls barely brush your thighs with each thrust.<br>
<br>
"@@.npc_cook;You are a whore, so fucking eager, how many cocks have you had up this slutty hole of yours? Do you even know?@@"<br>
<br>
"@@.pc;Not enough, <<sir npc_cook>>!@@" You moan, "@@.pc;But yours is the biggest and best! I love it when you fuck me deep, stretching around your huge <<if $fetish.bestiality_soft>>horsecock<<else>><<getWordPenis "npc_cook">><</if>> is the best feeling ever!@@"<br>
<br>
Reaching around <<he npc_cook>>
<<if $scene.cagename == "">>
<<if $player.body_ref.penis>>grabs your <<getWordMyPenis>><<else>>rubs between your legs<</if>>,
<<else>>
<<if setup.isCage()>>grabs hold of your <<getWordMyPenis>>, your member disappearing in <<his npc_cook>> <<if !$npc_cook.fem>>large <</if>>hand to <<else>>places <<his npc_cook>> hand over the front of your belt, <<his npc_cook>> hand almost completely spanning the hard shield, <</if>>
<</if>>
further driving home the difference
<<if $player.body_ref.penis>>
between what you have and what <<he npc_cook>> is plunging into your ass.
<<else>>
between <<his npc_cook>> big, penetrating cock and you being so much of an anal slut you offered up your rear rather than your dripping pussy.
<</if>>
<br><br>
<<if $player.body_ref.penis>>
<<if $fetish.sph>>
"@@.npc_cook;Look at this pitiful thing, no wonder you're such a needy bottom bitch, show me how much you love a real cock, squeeze that slutty ass of yours so that none of my cum leaks out of your hole.@@"
<<else>>
"@@.npc_cook;Feel that? God, you're such a needy bottom bitch, show me how much you love <<if $npc_cook.fem>>my<<else>>a man's<</if>> cock inside you. Squeeze that slutty ass of yours so that none of my cum leaks out of your hole.@@"
<</if>>
<<else>>
"@@.npc_cook;Take it, you slut. Tell me how much you love <<if $npc_cook.fem>>my<<else>>a man's<</if>> cock inside you, squeeze that slutty ass of yours so that none of my cum leaks out of your hole.@@"
<</if>>
<br><br>
"@@.pc;Yes, yes! fill me, flood me, draining cocks of cum is my purpose!@@"<br>
<br>
Holding <<himself npc_cook>> as deep as <<if $npc_cook.fem>>she'll<<else>>he'll<</if>> go you feel your body making a final stand against taking <<him npc_cook>> all the way. Despite <<his npc_cook>> roughness you can tell <<he npc_cook>> is holding back, perhaps afraid of injuring you and you just don't have the strength to make up the difference.<br>
<br>
<<printThought "I need something strong and unforgiving to take my ass to the next level...">><br>
<br>
Trembling with effort your half-controlled ass spasms are enough and <<he npc_cook>> cums, hard. A familiar flood of semen blasts into your depths.<br>
<br>
Gasping and twitching <<if $player.body_ref.penis>>your <<if $scene.cagename != "">>caged<</if>> <<getWordMyPenis false>> dribbles<<else>>you leak<</if>> into <<his npc_cook>> hand. Holding you until <<his npc_cook>> cock has finished pumping its orders of magnitude larger load <<he npc_cook>> slips out. Pitching forward you land on your hands and knees, the plug suddenly re-appearing as <<he npc_cook>> shoves it into your gaping, cum-filled hole.<br>
<br>
"@@.pc;Thank you, <<sir npc_cook>>,@@" you moan, clenching down on your solid intruder so as not to leak a drop.<br>
<br>
<<if !setup.checkItemTypeWorn("shirt")>>
Standing over you <<he npc_cook>> wipes <<himself npc_cook>> off with a rag.
<<else>>
Standing over you <<he npc_cook>> leans down just enough to wipe <<his npc_cook>> cock off on your <<=setup.getItemTypeName("shirt")>>.
<</if>>
<br><br>
"@@.npc_cook;Come on, whore, back to your feet.@@"<br>
<br>
Moaning in degraded lust you stagger back to your feet.<br>
<br>
[<<moveTo 'event_cook_training_anal_2_cleanup' "Thank <<him npc_cook>> for the privilege of serving <<him npc_cook>>." 60>>]
</div>/*#
#desc: anal training 2 - assessment and cleanup
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_cook.flags.porn.anal_stage == 2>>
<<addCredits 20>>
<<else>>
<<addCredits 5>>
<</if>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction>>
<<applyExperience 'cum' 12 'very' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
On your feet you stagger slightly only for <<=setup.getNpcName('npc_cook', 'first')>> to almost knock you over by shoving a wad of cash into your bra.<br>
<br>
<<if $npc_cook.flags.porn.anal_stage == 2>>
Reaching into your bra you pull out 20 credits.<br>
<br>
"@@.npc_cook;Really, you should consider it a kindness that I gave you that much<<if $player.body_ref.vagina || $player.body_ref.cumProduction>>, oh... almost forgot your tip<</if>>.@@"
<<else>>
Reaching into your bra you pull out a mere 5 credits.<br>
<br>
For some reason the paltry sum is even more humiliating than if <<he npc_cook>> hadn't given you anything — even if it was just "role-play" for the scene, you really do feel like a cheap, used whore.
<<if $player.body_ref.vagina || $player.body_ref.cumProduction>>
<br><br>
"@@.npc_cook;Oh... almost forgot your tip.@@"
<</if>>
<</if>>
<br><br>
<<if $player.body_ref.vagina || $player.body_ref.cumProduction>>
Before you can react, <<he npc_cook>> shoves <<his npc_cook>> hand, still coated in your <<if $fetish.sissy>>sissy<<else>>girly<</if>> <<if $player.body_ref.penis>>emissions<<else>>juices<</if>>, into your face, forcing you to lick up every embarrassing drop that you <<if $player.body_ref.penis>>spilled<<else>>leaked<</if>> while <<he npc_cook>> was plowing your ass.<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
You couldn't have made up a better capstone to the scene, consoling your failure to take <<his npc_cook>> full length with the delicious taste of your <<if $player.body_ref.cumProduction>>cum<<else>>juices<</if>>.
<<elseif setup.getTotalValue("cum") >= 10>>
You eagerly lap up every drop, your <<if $player.body_ref.cumProduction>>cum<<else>>juices<</if>> tasting even better than usual.
<<elseif setup.getTotalValue("cum") > 5>>
You can tell yourself that the enthusiasm you exhibit licking up your <<if $player.body_ref.cumProduction>>spooge<<else>>own juices<</if>> is just part of the scene, but it would be a lie.
<<else>>
You have no choice but to lick up your <<if $player.body_ref.cumProduction>>cum<<else>>juices<</if>>, for some reason it tastes... sweet?
<</if>>
<br><br>
<</if>>
<<if $npc_cook.flags.porn.anal_stage == 2>>
"@@.npc_cook;That's a good slut, well you best be heading back to your day job, I'll be fucking you again soon, you're just the sort of cheap whore I like.@@"<br>
<br>
Still caught up in the scene you can tell that you didn't quite pull things off, you're close, but there's still more of <<his npc_cook>> cock to take...<br>
<br>
Giving a small curtsy of thanks you head out of the storage room.
<<else>>
"@@.npc_cook;Now that's a whore, you took my cock like a champ! Still a bit left to go to take it to the root, but way better than those damn bitches I used to work with... "why did you get that surgery! Nobody wants to film with you! The audience thinks it's gross!" bah! Fucking close-minded idiots!@@"<br>
<br>
<<He npc_cook>> seems to finally notice that <<hes npc_cook>> gone off on a ranting tangent, turning <<his npc_cook>> attention back to you, all business now without the crudeness of <<his npc_cook>> "scene" persona.<br>
<br>
"@@.npc_cook;Anyway, great job today, you're in the final stretch... as it were, and I just know you'll triumph in the end. See you again soon!@@"<br>
<br>
Nodding in thanks, you hurry out of the storage room.
<</if>>
<br><br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Your cum-filled ass sloshing with each step you head back to your desk, grateful to rest your weight on the plug to keep everything safely inside.' 60>>]
</div>/*#
#desc: anal training 3 - submission, high heels, take him all the way
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_anal += 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Walking over to you <<he npc_cook>> gives your ass a friendly squeeze.<br>
<br>
"@@.npc_cook;Now that's the type of enthusiasm I like, and have come to expect. You've come a long way... and made me cum a lot in the process, but there's one stage left. Not only do you need to take me to the root, you need to show what you've learned. Before I've taken the lead, but today... today is about you submitting yourself completely to my cock.@@"<br>
<br>
You give a little twerk and grind back into <<him npc_cook>>. "@@.pc;Yes, <<sir npc_cook>>!@@"<br>
<br>
"@@.npc_cook;You hot slut! Well, let's not delay any more, show me what you've got!@@"<br>
<br>
<<He npc_cook>> steps back, <<his npc_cook>> smile fading into a more neutral expression as <<he npc_cook>> gets into the scene. Beneath <<his npc_cook>> kilt you can make out the twitching shape of <<his npc_cook>> cock.<br>
<br>
[<<moveTo 'event_cook_training_anal_3a' 'Ask if you could feel <<his npc_cook>> cock in your ass.' 180 "<<set $scene.acting = false>>">>]<br>
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo 'event_cook_training_anal_3a' 'Bend over and worship <<his npc_cook>> cock with your ass.' 180 "<<set $scene.acting = true>>">>]
<<else>>
[@@.link_locked;You aren't submissive enough to surrender yourself to <<his npc_cook>> cock.@@]
<</if>>
</div>/*#
#desc: anal training 3 - show off your submission
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_cook.penis_size 'normal' $SEEN_STRANGER>>
<<if $scene.acting>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.acting>>
Bending over you back into <<him npc_cook>>, grinding your rear against <<his npc_cook>> crotch as you seductively look back over your shoulder.<br>
<br>
"@@.pc;Mmmm, I can feel your cock through your kilt, it's so big, so hard. It needs to be worshipped, to have hot, willing flesh sliding down its length. Please, <<sir npc_cook>>, may I offer my ass to its glory?@@"<br>
<br>
The way <<his npc_cook>> cock strains against you through <<his npc_cook>> kilt tells you all that you need to know, that you are moments away from getting the ass-fucking of a lifetime.<br>
<br>
[<<moveTo 'event_cook_training_anal_3b' "Take it like a slut." 300>>]<br>
<<else>>
You blink up at <<him npc_cook>> and bite your lip as you reach for <<his npc_cook>> cock, but <<he npc_cook>> pulls away and shakes <<his npc_cook>> head.<br>
<br>
"@@.npc_cook;What are you? A coy schoolgirl? If you want to feel my cock in your cute ass I need to see absolute submission.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<printThought "Why am I resisting this? I'm a submissive <<if $fetish.sissy>>sissy<<else>>slut<</if>>, I just need to let it show!">><br>
<br>
[<<moveTo 'event_cook_training_anal_3' "Say you'll do better and try again." 60>>]<br>
<<else>>
Despite your intentions with <<him npc_cook>> being so passive you just can't seem to get into the proper submissive headspace.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Apologise for wasting <<his npc_cook>> time and promise to do better next time." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: anal training 3 - he tries to fuck you, but you need steep enough heels for it to work
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<set $scene.heels = setup.getItemObjFromType('shoes')>>
<<set $scene.cagename = setup.getItemTypeName("cage")>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' $npc_cook.penis_size 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 12 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Doing a <<if $fetish.sissy>>sissy<<else>>slutty<</if>> slave dance you unbutton <<his npc_cook>> kilt to let <<his npc_cook>> cock spring free, grinding and stroking it to its full, glorious size before exposing your ass. Bending over and spreading your legs you show off your <<if $scene.plug != "">>filled and <</if>>trained hole.<br>
<br>
"@@.pc;Your cock looks so good, so big, so perfect. Please, make my ass your temple and fuck me, fuck me deep and hard.@@"<br>
<br>
<<if $scene.heels.hasOwnProperty('heels')>>
<<if $scene.heels.heels.difficulty >= 7>>
Standing tall atop your heels your hips are right in line with <<his npc_cook>> own.<br>
<br>
Crouching down slightly so that <<his npc_cook>> cock slides between your thighs <<he npc_cook>> gropes your ass.<br>
<br>
"@@.npc_cook;Ah! The perfect height for fucking, I love a woman in heels.@@"<br>
<br>
<<if $scene.plug == "">>
<<His npc_cook>> fingers digging into your ass <<he npc_cook>> probes your puckered, empty hole.<br>
<br>
"@@.npc_cook;Walking around unplugged, how daring, don't worry, we'll address that empty feeling soon enough.@@"<br>
<br>
You swoon. "@@.pc;Mmmm, the sooner the better, <<sir npc_cook>>. Nothing compares to your thick cock sliding into my ass.@@"
<<else>>
<<His npc_cook>> fingers digging into your ass they quickly discover the <<=setup.getItemName($scene.plug)>> currently occupying your hole.<br>
<br>
<<if $scene.removePlug>>
"@@.npc_cook;Mmm, spread and ready, that's a properly prepared <<if $fetish.sissy>>sissy <</if>>slut. But now it's time for something bigger and better...@@"
<<else>>
"@@.npc_cook;Mmm, spread and ready, that's a properly prepared <<if $fetish.sissy>>sissy <</if>>slut. I can't wait to PROPERLY fill this gaping hole.@@"
<</if>>
<br><br>
Grasping the base of your plug <<he npc_cook>> pulls it out with a sharp pop, the sudden emptiness making you gasp.<br>
<br>
"@@.pc;Oh! I feel so empty! I need your cock inside me now, <<sir npc_cook>>! Please, have mercy on this eager ass-slut and fill her up with your blessed cock!@@"
<</if>>
<br><br>
You don't have to ask twice as <<he npc_cook>> lines up <<his npc_cook>> cock-head with your ready hole, pushing up and in, the angle such that your weight helps drive you down onto <<him npc_cook>>.<br>
<br>
[<<moveTo 'event_cook_training_anal_3c' "All of your training has been leading to this moment, it's time to get fucked." 300>>]
<<else>>
<<His npc_cook>> cock slides up through your asscrack until <<his npc_cook>> balls are pressed against your rear. You roll your hips, eager for <<him npc_cook>> to pull back and then plunge into you, but <<he npc_cook>> holds still.<br>
<br>
"@@.npc_cook;Ach! The angle, she just will not work! I would love nothing more than to plunge into you, but were I to give you my all like this I would be driving you into the floor. You need steeper heels so that I can fuck up into you.@@"<br>
<br>
You sigh, your <<=setup.getItemTypeName("shoes")>> may be sufficient for you current job, but apparently being a porn star has "high" standards.<br>
<br>
<<printThought "So close, and yet so far. Who would have thought getting fucked in the ass could be so complicated?">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Straightening your clothes you head back to your desk." 180 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>>">>]
<</if>>
<<else>>
Stepping up behind you <<his npc_cook>> cock flops onto your back. With <<his npc_cook>> balls pressed against your bare ass <<his npc_cook>> member reaches the better part of the way up your spine, a foreboding reminder of the intense act that will be taking <<him npc_cook>> all the way.<br>
<br>
Your heart quickens, eagerly anticipating to feel <<him npc_cook>> inside your ass once again only for <<his npc_cook>> cock to slip off your back and <<him npc_cook>> to step away.<br>
<br>
"@@.npc_cook;Aye, I'm sorry <<callPlayer "npc_cook">>. I would love nothing more than to plunge my cock into your hot hole but this is the endgame — I want to fuck you full-hilt deep and you're just too short for the angle to work without me driving you into the hard ground. If you were only wearing a nice tall set of heels, but with those ugly <<if setup.getItemObj($scene.heels).hasOwnProperty('heels')>>near-<</if>>flats... you'll have to come back later.@@"<br>
<br>
You are depressed at yet another surprise roadblock, but are still feeling submissive enough to thank <<him npc_cook>> profusely for <<his npc_cook>> time before promising you will do better then next time.<br>
<br>
<<printThought "<<He npc_cook>> has a point... why am I not wearing steep heels, anyway?">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Straightening your clothes you head back to your desk." 60 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>>">>]
<</if>>
</div>/*#
#desc: anal training 3 - he fucks you
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_cook.penis_size 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
You groan with welcome familiarity as the fat <<if $fetish.bestiality_soft>>head of <<his npc_cook>> massive horsecock<<else>>mushroom head of <<his npc_cook>> thick cock<</if>> spreads your pliable hole and starts to burrow deeper.<br>
<br>
"@@.pc;Thank you <<sir npc_cook>> for the privilege of your cock, every millimetre of it is the greatest blessing a lowly slut like this one could ask for.@@"<br>
<br>
"@@.npc_cook;Then prepare to be blessed greatly,@@" <<he npc_cook>> states as <<he npc_cook>> takes hold of your hips for greater power and control.<br>
<br>
As <<he npc_cook>> rises into you, you feel yourself leaning onto your toes only to settle back, still on balance. You are glad for the height granted by your steep heels, else you fear you would have pitched forward to fall onto your face. Instead you are able to remain tall, focusing on relaxing and welcoming <<his npc_cook>> cock ever-deeper into your body.<br>
<br>
"@@.npc_cook;Half-way,@@" <<he npc_cook>> grunts and you moan with delight at the familiar checkpoint.<br>
<br>
"@@.pc;Halfway to heaven, you mean.@@" You respond joyfully. "@@.pc;Take me all the way! Slam your balls into my ass and then flood me with their divine contents!@@"<br>
<br>
"@@.npc_cook;As the lady wills it,@@" <<he npc_cook>> responds, changing from <<his npc_cook>> slow glide to a steady jackhammer thrust to force the thickening portion of <<his npc_cook>> cock into your ass. With every passing second <<he npc_cook>> plunges deeper and deeper.<br>
<br>
Your breaths come faster and shallower as you feel more and more of <<his npc_cook>> cock entering your body. Though you would think you'd be accustomed, maybe even numb to the full sensation provided by <<his npc_cook>> member, it is just as intense as it ever was, the familiar thickness straightening your inner curves and moving past each barrier that once existed inside your ass no antidote for the mind-blowing sensation of being so intimately penetrated.<br>
<br>
"@@.npc_cook;Good girl, you can do it, relax and you'll have everything you desire.@@" <<He npc_cook>> whispers.<br>
<br>
"@@.pc;Yes, please...@@" you softly moan, holding your breath as you feel <<him npc_cook>> reach a precipice, <<his npc_cook>> <<if $npc_cook.fem>>breasts<<else>>chest<</if>> touching your back as there remains less than a centimetre of <<his npc_cook>> cock yet to enter you. You hold your breath and time seems to slow down. Remembering all of your training you try to relax that final bit, sinking your weight back into <<him npc_cook>> as you attempt to open yourself, using all of your control to surrender to <<his npc_cook>> cock and draw it deeper.<br>
<br>
<<if setup.getTotalValue("anal") >= 15>>
You release your breath and settle back, feeling <<his npc_cook>> cock seat all the way inside of you. Holding for a moment <<he npc_cook>> starts to move.<br>
<br>
[<<moveTo 'event_cook_training_anal_3_success' "Take it all." 180>>]
<<else>>
You tremble and shudder atop <<his npc_cook>> cock, your vision narrowing as you concentrate with all your might before finally releasing your breath and panting, that final centimetre still torturously refusing to slide into your body.<br>
<br>
Seeming to note your failure <<he npc_cook>> begins to rock inside of you, fucking your ass in consolation. The powerful sensations of being fucked by <<his npc_cook>> monster <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>> soon have you distracted from your earlier failure.<br>
<br>
[<<moveTo 'event_cook_training_anal_3c_fail' "Enjoy the ride." 180>>]
<</if>>
</div>/*#
#desc: anal training 3 - fail to take cook all the way up your ass
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_cook.penis_size 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Even though you failed to quite hilt <<=ps(setup.getNpcName('npc_cook', 'first'))>> cock in your ass. Once <<he npc_cook>> is thrusting into you all you can think about is the utter "full-body fucked" sensations that are flowing through you.<br>
<br>
When <<he npc_cook>> pulls back you feel hollow, and then <<his npc_cook>> forward thrust seems like it could go on forever, a steady pumping rhythm that touches nearly every centimetre of your insides, your <<if $player.body_ref.penis>>prostate<<else>>deepest parts<</if>> constantly pushed to the limits of sensation as you are scraped by <<his npc_cook>> flared tip and then pressured by the thick base.<br>
<br>
Surrendering your body to <<his npc_cook>> control your hands drift down to your
<<if $scene.cagename == "">>
small, tender and hard <<getWordMyPenis>>.
<<else>>
<<getWordMyPenis>>. The fact that your nigh-harmless thing should be so locked away whilst <<he npc_cook>> should remain free to prey upon innocent girls<<if $fetish.sissy>> and sissies<</if>>. It is as it should be.
<</if>>
The contrast in size between your tiny member and the telephone-pole like rod sliding back and forth only accentuates how right it is that things are like they are — you are meant to be fucked, to serve cock, anything else you may once have thought was a lie, an evil illusion keeping you from your wonderful true calling.<br>
<br>
As these thoughts drift through your mind you feel <<his npc_cook>> orgasm approach, shuddering with each breath and thrust you focus all you have on milking <<his npc_cook>> cock with your ass, doing all that you can to enhance <<his npc_cook>> pleasure.<br>
<br>
<<He npc_cook>> cums, and so do you, but next to <<his npc_cook>> your orgasm is as meaningless as your paltry drops trickling into your hands are next to the deluge of cum that <<he npc_cook>> deposits deep inside of you. Waiting until the final pulse and twitch signals the emptying of <<his npc_cook>> balls you look back over your shoulder and smile. "@@.pc;Thank you, <<Master npc_cook>>.@@"<br>
<br>
Tenderly <<he npc_cook>> kisses you on the neck, <<if $npc_cook.fem>>her breasts pressing into your back as she wraps her muscled arms around you. A<<else>>his beard rough, but in a good way, a<</if>> further reminder that <<he npc_cook>> is rough and strong and big and you are soft and delicate and small, but that such differences complement each other to make the world better, just as <<his npc_cook>> cock complements and enhances your cavernous ass to make your lives better in this almost perfect moment.<br>
<br>
Unfortunately, like all moments, it draws to a close, <<his npc_cook>> steadily wilting cock finally making the long, slow retreat from your ass. So deep has <<he npc_cook>> deposited <<his npc_cook>> seed you are able to hold it back as it tries to slowly descend back through your body.<br>
<br>
<<if $scene.plug == "">>
Deep inside your body <<his npc_cook>> cum moves slowly, like oil greasing your insides. Focusing on clenching down you wish you had a nice fat plug to provide peace of mind, but are fairly confident that you won't be leaking in the immediate future.
<<else>>
Stepping away for a moment <<he npc_cook>> suddenly re-appears, helpfully handing you your hastily discarded <<=setup.getItemName($scene.plug)>>. You smile with delight as you easily slide it back into position. It is nothing compared to <<his npc_cook>> magnificence, but your ass feels so much better with something inside of it, and it lets you relax knowing that it will keep you from leaking any of the wonderful, thick cum <<he npc_cook>> has blessed you with.
<</if>>
<br><br>
Straightening <<his npc_cook>> kilt <<he npc_cook>> grabs a towel to help clean you up. Though saddened that you did not fully meet your goal, you still enjoy the moment of silence as you choose your words.<br>
<br>
[<<moveTo 'event_cook_training_anal_3_cleanup' "Thank <<him npc_cook>> for the gift of <<his npc_cook>> cock and cum." 60>>]
</div>/*#
#desc: anal training 3 - take all of cook cock into your ass
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.anal_stage = 4>>
<<setThreshold 'anal' 'extreme_anal' 'cook_full_anal'>>
<<applyExperience 'anal' $npc_cook.penis_size 'skip' $SEEN_STRANGER>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' 'theme_psychiatrist_cook_17'
4
'event_psychiatrist_session_cook_success_anal_1'
false
>>
<<playerOrgasm>>
<<include "calcCookCheckin">>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.npc_cook;Yeh did it,@@" <<he npc_cook>> whispers, putting to words a fact more than confirmed by the feeling of <<his npc_cook>> large, bulging testicles pressed against your distended hole.<br>
<br>
Trembling with delight at your accomplishment there are only two words you could possibly say. "@@.pc;Fuck me.@@"<br>
<br>
Request, exclamation, command, whatever you actually meant doesn't matter, all that matters is that <<his npc_cook>> cock starts to move. Though <<his npc_cook>> withdrawal from that divinely-filled position is momentarily soul-destroying your disappointment is brief, and the sensation as <<he npc_cook>> slides in once more to fill you to the hilt and prove that it was no illusion or accident, ecstatic joy banishing all else.<br>
<br>
With each thrust <<he npc_cook>> slowly gains speed, pre-cum and lube mixing along the length of your love-canal as <<he npc_cook>> goes from gently plunging into you to fucking you hard enough that each thrust causes <<his npc_cook>> balls to slam into you, for you to occasionally rise up off the floor, perched entirely on <<his npc_cook>> cock.<br>
<br>
Your world is cock and your cute <<if $fetish.sissy>>sissy <</if>>head is capable of containing, but two words — "@@.pc;Fuck me.@@" You repeat them, louder and louder as <<his npc_cook>> pace becomes more frenzied until, with a final thrust that could batter through a door <<he npc_cook>> slams home, holding you close with both hands as <<his npc_cook>> testicles tremble against your spread cheeks and <<he npc_cook>> cums like a volcano.<br>
<br>
Hot and thick and seeming to flow forever <<he npc_cook>> pumps into you like a firehose, flooding every remaining nook and cranny of your insides until your own pitiful ejaculate is squeezed out in kind.<br>
<br>
<<if $player.body_ref.penis>>
<<if $scene.cagename == "">>
Hands wrapped over your cock you refrain from touching it, your orgasm entirely due to the thing filling your ass, the fountain of celebration it sets off splattering your palms as it dances with joy at the fact that such a REAL cock exists to put it in its place.
<<else>>
<<if setup.isCage()>>Caged<<else>>Locked in chastity<</if>>, as is proper, you leak through your prison, tears of joy trickling down your face to match the drops that leak into your hands. More than ever before you are thankful for your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> — you exist to wrap around, to contain, to pleasure cocks, your own belongs in a prison, its release as unwanted as it would be useless.
<</if>>
<<else>>
<<if $scene.cagename == "">>
You can barely fit a fingertip into your gushing <<getWordVagina>>; the tightness of your lower body thanks to the monster in your ass nearly sealing up your front hole leaving you to finger your clit with abandon.
<<else>>
You reflexively pound at the unyielding shield of your chastity belt, but it remains firm in its denial.
<</if>>
<</if>>
<br><br>
As waves of post-orgasmic pleasure flow between the two of you your tired ass finally relaxes enough for <<him npc_cook>> to withdraw. Your hole finally, sadly, "free" of cock
<<if $scene.plug == "">>
you focus on calming your ass, your hole slowly squeezing shut as you are determined not to let
<<else>>
you stand swaying in cum-filled bliss as <<he npc_cook>> retrieves your plug and slides it back into your ass.<br>
<br>
"@@.pc;Thank you,@@" you whisper clenching happily down on the familiar companion, glad that it will serve to prevent
<</if>>
a single drop of <<his npc_cook>> divine nectar from escaping your clutches.<br>
<br>
Straighting <<his npc_cook>> kilt over <<his npc_cook>> drained and exhausted cock and balls <<he npc_cook>> hands you a towel. Riding a blissful high of accomplishment you nod in appreciation as you consider your words.<br>
<br>
[<<moveTo 'event_cook_training_anal_3_cleanup' "Thank <<him npc_cook>> for the training, and more importantly, the gift of <<his npc_cook>> cock and cum." 60>>]
</div>/*#
#desc: anal training 3 - cleanup and assessment
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $npc_cook.flags.porn.anal_stage >= 4>>
You smile wide as you stand in triumph — you, or, more precisely, your ass, has conquered the largest cock you've ever seen and from the look behind <<=ps(setup.getNpcName('npc_cook', 'first'))>> post-orgasmic gaze <<he npc_cook>> is just as impressed, and proud.<br>
<br>
"@@.npc_cook;Aye, <<callPlayer "npc_cook">>, you look like you've just conquered the world, truth be told I wasn't sure such a wee thing could take all of me, but you did! And with more skill and aplomb than most professional girls I've known!@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
You straighten even more at the compliment, proud of your body rising to the occasion after all your efforts.
<<else>>
Despite all you've done you can't help but blush in humiliation at the reminder of just how much of a slut you are to want others to watch videos of you taking such a massive cock up your ass. Of course, your embarrassment, and the thought that you could one day randomly meet a "fan" in real life only turns you on more.
<</if>>
<br><br>
<<if $fetish.cum>>
As <<=setup.getNpcName('npc_cook', 'first')>> starts to talk you idly lick your<<if setup.getTotalValue("cum") > 10>> delicious<</if>> <<getWordCum>> from your fingers.<br>
<br>
<</if>>
<<if $npc_cook.flags.porn.oral_stage >= 4 || $npc_cook.flags.porn.vag_stage >= 4>>
"@@.npc_cook;So you shan't be surprised to know that I've been recording and editing together your back-door training the same as I did when we were working that slutty cock-socket of a mouth-hole of yours.
<<if $player.flags.porn.genre.oral && $player.flags.porn.genre.vag>>
You've already drawn fans with your other two holes... how about making it the trifecta?
<<elseif $player.flags.porn.genre.oral>>
You've already seen how well you broke into the scene with that amazing throat, whaddaya say, you ready to shock the community again with your equally astounding ass?
<<elseif $player.flags.porn.genre.vag>>
Your cunt is already a star... how do you feel about introducing the world to its equally-skilled partner?
<<else>>
I know you declined my offer before, but I'm telling you, just these two videos would make you some good credits and open up future work for sure. You're such a gifted natural it's almost a crime to hide you away from adoring fans... so whaddaya say, you wanna be a star?
<</if>>
@@"<br><br>
<<if $player.flags.porn.genre.oral || $player.flags.porn.genre.vag>>
[<<moveTo 'event_cook_training_pornstar_yes_anal' "Smile and fulfill your dream of being a big, slutty star." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_anal' "Say you'd prefer to keep your ass to yourself and only use your <<if $player.flags.porn.genre.vag && $player.flags.porn.genre.oral>>other holes<<elseif $player.flags.porn.genre.vag>>vag<<else>>throat<</if>> on camera." 60>>]
<<else>>
[<<moveTo 'event_cook_training_pornstar_yes_all' "Agree to release all videos and star in all kinds of porn." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_yes_anal' "Tell <<him npc_cook>> to just release the new, anal video, that you want to reserve the rest of your body for personal use." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_anal' "Shake your head and decline the offer." 60>>]
<</if>>
<<else>>
"@@.npc_cook;Anyway, speaking of professionals, I have a bit of a confession to make. I know I told you at the start that I'd just be helping train you, maybe help you make some connections for you to get into porn but... I've actually been filming your entire training.@@"<br>
<br>
Your jaw drops in surprise as <<he npc_cook>> hurriedly continues.<br>
<br>
"@@.npc_cook;Don't worry! Nobody has seen the video... well, other than myself... many times... I don't think you understand how fucking hot you are, you're a natural if I've ever met one and once I finish editing in this final bit?...@@" <<He npc_cook>> shakes <<his npc_cook>> head and lets loose a whistle, obviously unable to find the words.<br>
<br>
"@@.npc_cook;So, anyway, with this demo tape I can get you work for certain — you've actually inspired me to get back into the business myself, self-publishing since my old employers just don't appreciate my gifts, though, after seeing you with it... anyway, if you'd give me permission I'll finish cutting the film and send you your share of the revenue, and pass along any job opportunities for your world-class ass that I come across?@@"<br>
<br>
[<<moveTo 'event_cook_training_pornstar_yes_anal' "Nod and agree to start a side career in porn." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_anal' "Shake your head and decline the offer." 60>>]
<</if>>
<<else>>
"@@.npc_cook;Well, yeh made a valiant effort.@@" <<he npc_cook>> states, motioning to the bare dry centimetre or so at the base of <<his npc_cook>> cock that didn't quite fit into you.<br>
<br>
You're a bit sloshy and sensory overloaded to process things, which blunts your disappointment as you nod and lick the lick the<<if setup.getTotalValue("cum") > 10>> delicious<</if>> <<getWordCum>> from your fingers as a sort of consolation prize.<br>
<br>
"@@.npc_cook;Keep at it, you've come so far, I'm sure you'll get there soon!@@" <<He npc_cook>> adds in encouragement as you finish cleaning up and get ready to depart.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'With a weary smile you return to your desk, your cum-filled ass sloshing with each step.' 180>>]
<</if>>
</div>/*#
#desc: agree to do oral and anal porn
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.vagina>>
<<set $player.flags.porn.genre.vag = true>>
<</if>>
<<set $player.flags.porn.genre.oral = true>>
<<set $player.flags.porn.genre.cum = true>>
<<set $player.flags.porn.genre.humiliation = true>>
<<set $player.flags.porn.genre.feminization = true>>
<<set $player.flags.porn.genre.bimbofication = true>>
<<set $player.flags.porn.genre.anal = true>>
<<set $player.flags.porn.genre.submission = true>>
<<set $player.flags.porn.genre.whore = true>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<He npc_cook>> grins wide with delight. "@@.npc_cook;Wanted to release it all at once, eh, <<callPlayer "npc_cook">>? The industry doesn't know what's about to hit them! I tell ya, just watching the raw footage has me randy like you wouldn't believe and once I get it all cut together? Hoo-boy! One final thing — you need to choose a name to use professionally.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
</div>/*#
#desc: agree to do anal porn
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.porn.genre.anal = true>>
<<set $player.flags.porn.genre.submission = true>>
<<set $player.flags.porn.genre.whore = true>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<He npc_cook>> smiles in obvious satisfaction.
<<if $player.flags.porn.genre.oral || $player.flags.porn.genre.vag>>
"@@.npc_cook;As much as I've loved having your amazing ass to myself I can't wait to share you with the world! I just need to review and edit in this last footage — "<<if !$npc_cook.fem>>The Stallion Who Would Mount<<else>>Mounting<</if>> the Girl: A <<=$player.flags.porn.pornname>> Love Story." With your name already out there it could do even better than your debut film!@@"<br>
<br>
<<He npc_cook>> grins, then looks at <<his npc_cook>> watch. "@@.npc_cook;Oh, wow, look at the time, I need to get back to work, I'll talk to you later <<=$player.flags.porn.pornname>>!@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Return to your desk.' 180>>]
<<else>>
"@@.npc_cook;As much as I've loved having your amazing ass to myself I can't wait to share you with the world! One final thing — yeh need to choose a name to use professionally.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
<</if>>
</div>/*#
#desc: say you don't want to do anal porn
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Though <<hes npc_cook>> still lingering in the afterglow of the intense cock-draining orgasm you gave <<him npc_cook>> <<hes npc_cook>> obviously a little disappointed by your decision.<br>
<br>
"@@.npc_cook;Damn,
<<if $player.flags.porn.genre.oral || $player.flags.porn.genre.vag>>
with all the success we've had with your first video I was really hoping to share your other hole with the world.
<<else>>
I really believe your amazing ass needs to be shared with the world.
<</if>>
Trust me, I'm experienced with these things and your rear fuckhole is a goddamn national treasure! Well, I'll keep the footage safe, and private, to respect your wishes, but if you ever change your mind... well, we could do some real good business!@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Say you'll keep that in mind and head back to your desk.">>]
</div>/*#
#desc: anal training 4 - post-mastery practice
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_anal += 1>>
<<applyExperience 'anal' $npc_cook.penis_size 'skip' $SEEN_STRANGER>>
<<playerOrgasm>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
There's no prep or pre-amble today; you both know you can take <<=ps(setup.getNpcName("npc_cook","first"))>> <<if $fetish.bestiality_soft>>horse-cock<<else>>monster schlong<</if>> and <<he npc_cook>> wastes no time going balls deep in your ass.<br>
<br>
<<Hes npc_cook>> hard and fast and rough... and you love it, cumming just a moment after <<he npc_cook>> does, your body shuddering with pleasure as <<he npc_cook>> dumps <<his npc_cook>> load in your hungry hole and you twitch and gape as your body attempts to recover after <<he npc_cook>> withdraws.<br>
<br>
"@@.npc_cook;Now that hits the spot... the DEEP spot!@@" <<He npc_cook>> jokes with a laugh, quickly cleaning up and giving you a congratulatory slap on the ass before you fix your clothes and the two of you head back to your work stations.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'With a weary smile you return to your desk<<if $fetish.cum>>, your cum-filled ass sloshing with each step<</if>>.' 180>>]
</div>/*#
#desc: turn down opportunity to shoot the finale cook photoshoot
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_cook', 'first')>> takes your rejection remarkably in stride. "@@.npc_cook;Tarnation, I knew I should have talked to yeh ahead of time, only, I wanted it to be a bit of a special surprise, yeh know? Pay it no mind, we can do it some other time, just come back when you think you're ready and hopefully we're lucky that your manager is busy.@@"<br>
<br>
[<<moveTo 'event_cook_training_finale_start' 'Change your mind again and head down and get ready like <<he npc_cook>> asked.' 300>>]<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Apologise and return to your desk.' 180>>]
</div>/*#
#desc: first time in the digital film-set room for cook porn finale
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' "theme_psychiatrist_barista_10"
4
'event_psychiatrist_session_barista_porno_1'
false
>>
<<addItemSet "farmgirl">>
<</if>>
<<if setup.checkItemSetWorn("farmgirl")>>
<<initRoom>>
<<moveTo "event_cook_training_finale_dress">>
<</if>>
<<set $player.location = 'Film Set'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
You've never been to the floor <<=setup.getNpcName('npc_cook', 'first')>> told you to meet <<him npc_cook>> on, much less that room, but you find it easily enough. Arriving, you pass through a small antechamber/changing room and proceed straight into what you recognise as a full-on "digital film-set." State of the art, this sort of room is designed to allow for shooting scenes without ever having to go "on location." Packed with automated cameras to catch things from every angle, holographic projectors can simulate basic backgrounds and the like to help actors get into the scene with everything mapped such that it can be almost trivially replaced with "real" effects in post to make the audience believe things are happening practically anywhere.<br>
<br>
Thinking about it, you figure the company uses it for filming marketing videos or something and you wonder what <<=setup.getNpcName('npc_cook', 'first')>> did to manage to book it for the two of your "extra-curricular" activity.<br>
<br>
Such things don't much matter for now as you look around to find the promised "outfit." It doesn't take you long to locate it... and have a hint as to what's in store. Sitting on a nondescript table is what looks like a full "farmgirl" outfit — a pair of cut-off "daisy duke" jeans that will barely cover your ass, and a short flannel top designed to show off your tummy and cleavage. Not exactly "functional" for real farming but, well... they should be just the trick for a little "slutty farmgirl meets her stallion" action.<br>
<br>
[<<moveTo 'event_cook_training_finale_dress' 'Get changed.' 180>>]
</div>/*#
#desc: get dressed and ready for cook porn finale
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeEverything>>
<<wearItemSet "farmgirl">>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = 'Film Set'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
Slipping out of your "work" attire and putting them safely aside in a corner of the room you change into the costume.<br>
<br>
Hugging your body through the magic of stretch denim, the shorts are even shorter than you thought, a full third of your asscheeks peeks out the bottom and they "hug" right up your crack. With how painted on they are you decide to forgo panties<<if $scene.removePlug>> and even remove the <<=setup.getItemName($scene.plug)>> from your rear hole<</if>>.<br>
<br>
The top is just as bad... or is that good? Forgoing your bra the top
<<switch setup.calcBreastSize()>>
<<case "massive" "large">>
stretchs tight around your large breasts so you look ready to "fly out" at any time.
<<case "medium">>
enhances your moderate bosom to give you the appearance of a large pair of "milk jugs."
<<case "small">>
is not just a top, sporting fleshy padding to temporarily grant you a bountiful pair of "milk jugs."
<<case "none">>
still looks flirtatiously sexy, even with your flat chest.
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
Checking yourself out in a mirror tucked into one corner you confirm that you are the perfect image of a slutty farmgirl, showing off plenty of skin and leaving almost nothing to the imagination as your top seems all but ready to fall off at any moment.<br>
<br>
Horny and excited to get started, you fantasise about your previous... extensive experience with <<=ps(setup.getNpcName('npc_cook', 'first'))>> ginormous <<if $fetish.bestialyt_soft>>horse <</if>>cock. You're almost giddy at the thought that it is a near certainty that you'll be taking <<him npc_cook>> shortly... maybe even multiple times back to back...<br>
<br>
Too nervous to sit down you pace excitedly only to spot a note that you had previously missed.<br>
<br>
"@@.npc_cook;Greetings, <<callPlayer "npc_cook">>. I imagine you've got some ideas about what's about to happen based on the outfit I left for you. With the confidence I have in your skills based on our previous encounters you're going to get to put those ideas to work. While I've set the stage, including a special outfit of my own, I'm going to leave the "direction" up to your pervy little brain. If you want to get into the scene just hit the marked button by the door. The camera's are already rolling so everything can proceed naturally from my walking onto the scene.@@"<br>
<br>
Following <<his npc_cook>> instructions you find a button tagged "start." <br>
<br>
[<<moveTo 'event_cook_training_finale_0' 'Push the button.' 180 '<<set $scene.first=!State.hasPlayed("event_cook_training_finale_0")>>'>>]
</div>/*#
#desc: decide what type of finale porno you want to do
#status: RELEASED 0.9.2.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.first>>
<<useClothSetPush 'tmp'>>
<<removeEverything>>
<<addItemSet 'farmgirl'>>
<<wearItemSet "farmgirl">>
<</if>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You quickly removing your clothes and the rest and set them aside to slip on the skimpy "farmgirl" ensemble of ultra-short daisy duke pants and breast-enhancing tied flannel top.<br>
<br>
Changed and ready, you note the "recording" light turns on. It's time to decide how you're going to perform things this time.
<<else>>
The room shimmers for a moment and then it is as if you have been transported. Rather than standing in the middle of an empty room you are in what looks like a barn, while your surroundings don't actually exist and look a bit ethereal it is still an impressive transformation, and you know from reading about it that in the final cut everything will look as real as if you were actually on a farm.<br>
<br>
As you look around, you get a text from <<=setup.getNpcName('npc_cook', 'first')>> saying <<he npc_cook>>'ll be with you shortly. You quickly change into the farmgirl outfit, you don't have much time to decide how how you want to play this....
<</if>>
<br><br>
<<if setup.getTotalValue("bimbofication") > 15>>
[<<moveTo 'event_cook_training_finale_1' 'Play the slutty, airheaded farmgirl who gets in over her head.' 180 '<<set $scene.porn_style = "bimbofication">>'>>]
<<else>>
[@@.link_locked;You aren't an experienced enough bimbo to pull off a properly airheaded "slutty farmgirl."@@]
<</if>>
<br>
<<if setup.getTotalValue("submission") > 15>>
[<<moveTo 'event_cook_training_finale_1' 'What could be better than submitting to a big, sexy stallion?' 180 '<<set $scene.porn_style = "submission">>'>>]
<<else>>
[@@.link_locked;You aren't submissive enough to properly portray submitting to a stallion.@@]
<</if>>
<br><br>
Glancing around, you happen to spot some rope, it looks quite solid and you remember it was there before you turned on the simulation, which means it's real and functional.<br>
<br>
<<if setup.getTotalValue("bondage") > 15>>
<<set _text = "Ride 'em cowgirl! Wait for " + setup.getNpcName("npc_cook", "first") + " to see what sort of bind you can get into...">>
[<<moveTo 'event_cook_training_finale_1' _text 180 "<<set $scene.porn_style = 'bondage'>>">>]
<<else>>
[@@.link_locked;You aren't experienced enough with bondage to know how to stage a scene.@@]
<</if>>
<br>
[<<moveTo 'event_cook_training_finale_1' 'Default to the easy route and just wait to be fucked.' 180 "<<set $scene.porn_style = 'vanilla'>>">>]
</div>/*#
#desc: start of cook finale pornshoot, he enters the scene dressed as a stallion, choose how slutty you will act
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pony>>
<<set $player.flags.porn.cyoponyventure.genre[$scene.porn_style] = true>>
<<else>>
<<set $player.flags.porn.cyofarmventure.genre[$scene.porn_style] = true>>
<</if>>
<<if $scene.porn_style == "bondage">>
<<set $player.flags.porn.genre.bondage = true>>
<</if>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pony>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_pony")>>
<<else>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand")>>
<</if>>
<div id="invframe" class="scrolltext">
Your role chosen, the scene set you shuffle your rack to maximize your cleavage and have a seat on a faux hay bale to eagerly wait for <<=setup.getNpcName('npc_cook', 'first')>> to arrive.<br>
<br>
<<if $scene.pony>>
Horny with anticipation, you don't have to wait long. Hearing the door open and shut you turn to check out <<his npc_cook>> outfit... and your jaw almost hits the floor.<br>
<br>
For most practical purposes <<he npc_cook>> is naked — <<his npc_cook>> large <<if $fetish.bestiality_soft>>horse<</if>>cock sticking out hard and proud and <<his npc_cook>> <<if $npc_cook.fem>>breasts in a tight crop top<<else>>chest<</if>> and washboard abs on display. Accentuating <<his npc_cook>> form even more than being "merely" naked <<he npc_cook>> is wearing a heavy black leather harness with stunning chrome accents around <<his npc_cook>> waist, chest, thighs and shoulders. <<his npc_cook>> already inhumanly massive cock "enhanced" with a thick cockring that keeps <<him npc_cook>> hard while further accentuating <<his npc_cook>> big, full balls as they are lifted and separated slightly.<br>
<br>
Rounding it off <<he npc_cook>> is wearing a stunning horse-head mask. Strapped on with black leather straps to match <<his npc_cook>> harness, it conceals <<his npc_cook>> face, complete with a mane flowing down over <<his npc_cook>> neck and a serious looking bit and bridle.<br>
<br>
Looking directly at you <<he npc_cook>> paws the floor and tosses <<his npc_cook>> mane with a whinny, <<his npc_cook>> cock bobbing ominously in your direction.<br>
<br>
Though you would quite enjoy spending some time to just admire <<his npc_cook>> <<if $npc_cook.fem>>beautiful<<else>>toned<</if>> magnificence, a voice in the back of your head reminds you that "the show must go on" and you launch into the act you came up with while waiting.<br>
<br>
<<switch $scene.porn_style>>
<<case "bimbofication">>
"@@.pc;Oh my! Look at that sexy stallion fresh in from the field. You're looking all, like, excited and stuff, is something wrong?@@"<br>
<br>
Exaggerating the swing of your hips you walk over to <<his npc_cook>> side and run your hand over <<his npc_cook>> harness, bending over and grinding your butt against <<his npc_cook>> hip while narrowly avoiding touching <<his npc_cook>> cock. Satisfied that you've got <<him npc_cook>> as horny as you feel you saunter away.
<br>
"@@.pc;Oh, you really are in quite a heat, oh my, I appear to have dropped something!@@"<br>
<br>
Casually you bend over as if to pick something up, wiggling your tush in <<his npc_cook>> direction, hopeful that the cameras will manage to capture the view both <<if $player.body.breastsize[0]>0>>down your cleavage<<else>>from the front<</if>> as well as at your framed, presented and barely concealed bum.<br>
<br>
Straightening back up <<he npc_cook>> stalks towards you and you get the feeling you have but a few moments to react before <<he npc_cook>> knocks you to the ground and starts having <<his npc_cook>> way with you.
<<case "submission">>
Resisting the urge to just completely prostrate yourself you let your eyes go wide as you devour <<his npc_cook>> body with your gaze.<br>
<br>
"@@.pc;Oh! What a beautiful stallion! You look so hot and excited, please... let me be your mare and help you relax...@@"<br>
<br>
Bending over your hay bale you show off the "goods," looking back over your shoulder with an enticing, submissive smile as you flutter your eyelashes.
<<case "bondage">>
Rope in hand, you smile wide and saunter over towards where <<he npc_cook>> is standing.<br>
<br>
"@@.pc;Mmmm, such a sexy stallion... you look very excitable, I think I had better get you restrained... for safety.@@"<br>
<br>
Unwinding a bit of rope, you throw it over <<his npc_cook>> shoulders only for the other end of the hank to spill to the ground. You step into the rope as you start to walk around <<=setup.getNpcName('npc_cook', 'first')>>. <<He npc_cook>> notices what you're doing, playing along until your legs are sufficiently entangled before pulling on the rope and lunging forward.<br>
<br>
Just as planned you tumble backwards, your legs entwined only for <<=setup.getNpcName('npc_cook', 'first')>> to catch you in <<his npc_cook>> strong arms and loop the rope around your arms and chest.<br>
<br>
"@@.pc;Oh no!@@" You cry out in mock surprise at your predicament.
<<case "vanilla">>
Your heart beats fast as you approach <<his npc_cook>> vision of harnessed, but unrestrained, <<if $npc_cook.fem>>femininity<<else>>masculinity<</if>>.<br>
<br>
"@@.pc;Such a beautiful beast...@@" You state, stroking your hand across <<his npc_cook>> <<if $npc_cook.fem>>back before giving her butt a squeeze<<else>>firm, glistening chest<</if>>. "@@.pc;I scarcely know what I want to do with you first...@@"<br>
<<default>>
ERROR! unknown scene.porn_style: <<=$scene.porn_style>>!
<</switch>>
<<else>>
Horny with anticipation, you don't have to wait long. Hearing the door open and shut you turn to watch <<=setup.getNpcName('npc_cook', 'first')>> saunter into the simulated barn, looking every centimetre the aw-shucks farmhand... with a noticeable bulge in <<his npc_cook>> ripped jeans.<br>
<br>
<<switch $scene.porn_style>>
<<case "bimbofication">>
"@@.pc;Oh my! Look at that sexy <<man npc_cook>> fresh in from the field. You're looking all, like, sweaty and stuff, is something wrong?@@"<br>
<br>
Exaggerating the swing of your hips you walk over to <<his npc_cook>> side and run your hand over <<his npc_cook>> chest, bending over and grinding your butt against <<his npc_cook>> hip while narrowly avoiding touching <<his npc_cook>> cock. Satisfied that you've got <<him npc_cook>> as horny as you feel you saunter away.
<br>
"@@.pc;Oh, you must have been working so... HARD. Oh my, I appear to have dropped something!@@"<br>
<br>
Casually you bend over as if to pick something up, wiggling your tush in <<his npc_cook>> direction, hopeful that the cameras will manage to capture the view both <<if $player.body.breastsize[0]>0>>down your cleavage<<else>>from the front<</if>> as well as at your framed, presented and barely concealed bum.<br>
<br>
Straightening back up <<he npc_cook>> stalks towards you and you get the feeling you have but a few moments to react before <<he npc_cook>> slides has <<his npc_cook>> way with you...
<<case "submission">>
Resisting the urge to just completely prostrate yourself you let your eyes go wide as you devour <<his npc_cook>> body with your gaze.<br>
<br>
"@@.pc;Oh! You look so hot and sweaty... can I do anything to help you... relax?@@"<br>
<br>
Bending over your hay bale you show off the "goods," looking back over your shoulder with an enticing, submissive smile as you flutter your eyelashes.
<<case "bondage">>
Rope in hand, you smile wide and saunter over towards where <<he npc_cook>> is standing.<br>
<br>
"@@.pc;Mmmm, fresh in from the fields... well I've got some more work for you... maybe you can start by tying something up for me?@@"<br>
<br>
You hand <<him npc_cook>> one end of the rope and pirouette in place to start it windering around your body...
<<case "vanilla">>
Your heart beats fast as you approach <<=setup.getNpcName('npc_cook', 'first')>>, <<his npc_cook>> shirt half open displaying toned abs and a <<if $npc_cook.fem>>feminine<<else>>masculine<</if>> chest, fresh in from the field.<br>
<br>
"@@.pc;So beautiful...@@" You state, stroking your hand across <<his npc_cook>> <<if $npc_cook.fem>>back before giving her butt a squeeze<<else>>firm, glistening chest<</if>>. "@@.pc;I've been waiting for you to finish in the field... and it's time for you to get me off...@@"<br>
<<default>>
ERROR! unknown scene.porn_style: <<=$scene.porn_style>>!
<</switch>>
<</if>>
<br><br>
This is porn so sex was always inevitable, but you are particularly horny and disinterested in delay. In these final moments before cock meets soft<<if $fetish.sissy>>, sissy<</if>> lips you need to decide how you are going to approach such while remaining "in character." <br>
<br>
[<<moveTo 'event_cook_training_finale_2' 'Adopt a facade of innocence and let what happens, happen.' 180 "<<set $scene.porn_mood = 'innocent'>>">>]<br>
[<<moveTo 'event_cook_training_finale_2' 'Play the randy cowgirl and take what you desire.' 180 "<<set $scene.porn_mood = 'randy'>>">>]<br>
[<<moveTo 'event_cook_training_finale_2' 'Give in to your lusts and (figuratively?) throw yourself as <<his npc_cook>> cock.' 180 "<<set $scene.porn_mood = 'desperate'>>">>]
</div>/*#
#desc: cook porn finally - cook humps you, decide what intensity of sex you want
#status: RELEASED 0.9.2.0
#ignore_spell: ohhhh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pony>>
<<set $player.flags.porn.cyoponyventure.mood[$scene.porn_mood] = true>>
<<else>>
<<set $player.flags.porn.cyofarmventure.mood[$scene.porn_mood] = true>>
<</if>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pony>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_pony")>>
<<else>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.porn_style>>
<<case "bimbofication">>
With a lunge, <<=setup.getNpcName('npc_cook', 'first')>> spins you around and has you bent over the hay bale, humping your still (barely) clothed ass, grinding the root of <<his npc_cook>> cock and <<his npc_cook>> heavy testicles against your bum and thighs.<br>
<br>
<<switch $scene.porn_mood>>
<<case "innocent">>
You adopt a look of shocked surprise. "@@.pc;Oh! what are you doing back there?@@" You ask innocently as <<his npc_cook>> <<getWordPenis "npc_cook">> slides up the crack of your ass, its animal heat penetrating straight through your painted-on jeans.<br>
<br>
"@@.pc;Oooo, you're so warm and friendly today! But be careful, you almost knocked me over!@@"
<<case "desperate">>
Your eyes flutter with desperate lust as you melt into the hay bale. "@@.pc;Ohhhh that feels soooo goood! I missed you so much while you were out plowing the fields, but now it's time for you to work some more and plow me! Plow me good!@@"
<<case "randy">>
You grind your hips enthusiastically back into <<him npc_cook>>. "@@.pc;Mmmm, someone's horny... well two someones actually. I can't wait to feel that big, hot cock inside of me instead of just rubbing against me. Would you like that, huh?<<if $fetish.pony>> Do you still count as a faithful steed if you're the one riding me?<<else>>Oh, work my back field!<</if>>@@"
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<<case "submission">>
<<=ps(setup.getNpcName('npc_cook', 'first'))>> hands grip your hips firmly as <<he npc_cook>> starts to hump your ass, <<his npc_cook>> big, hard cock looming above your spine as <<his npc_cook>> shaft and balls rub your thighs, the shadow on your back driving home just how big <<he npc_cook>> is compared to your slight frame.<br>
<br>
<<switch $scene.porn_mood>>
<<case "innocent">>
You adopt a look of shocked surprise. "@@.pc;Oh! What's going on! Oh you're such a big, powerful stallion and I'm all alone in this barn! Whatever could you want from poor little me?@@"
<<case "desperate">>
Your eyes flutter with desperate lust as you melt into the hay bale. "@@.pc;Oh... yes, I've been so lonely waiting for you to get here, oh, please, will you make me your mare?@@"
<<case "randy">>
You grind your hips enthusiastically back into <<him npc_cook>>. "@@.pc;Ohhh, you're soooo big and hard, just what I need, mmm, you're making me soooo horny, I need to serve cock, I want it so bad!@@"
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>!
<</switch>>
<<case "bondage">>
The ropes entwining your body continue to entrap you as <<=setup.getNpcName('npc_cook', 'first')>> manoeuvres you with ease and bends you over the hay bale. Tying your wrists together with shocking swiftness <<he npc_cook>> holds you down and humps you through your skimpy shorts.<br>
<br>
<<switch $scene.porn_mood>>
<<case "innocent">>
You adopt a look of shocked surprise. "@@.pc;Oh! What's going on? I can barely move, what are you going to do to me?@@"
<<case "desperate">>
Your eyes flutter with desperate lust as you melt into the hay bale. "@@.pc;Ohhh, I needed that, yes! Tie me tighter, hold me down, I love the feel of ropes around my body!@@"
<<case "randy">>
You grind your hips enthusiastically back into <<him npc_cook>>. "@@.pc;Mmmm, you feel so hot, I love it when you turn the tables and tie me up...@@"
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<<case "vanilla">>
You may be delicate and hesitant, but it is quite clear that your stallion knows what <<=setup.getNpcName('npc_cook', 'first')>> wants. Gently taking hold of your shoulders <<he npc_cook>> turns you around, bending you over the hay bale as <<he npc_cook>> slides <<his npc_cook>> cock up your crack, gliding over your skimpy shorts until <<his npc_cook>> full testicles are pushing your thighs apart.<br>
<br>
<<switch $scene.porn_mood>>
<<case "innocent">>
You adopt a look of shocked surprise. "@@.pc;Oh my! Are you going to take me? Oh this is all so new, I'm so confused, I've never had something like this happen before...@@"
<<case "desperate">>
Your eyes flutter with desperate lust as you melt into the hay bale. "@@.pc;Oh, you're so hot, I've only every dreamed about having a stallion so big and hard and lusty for me... I want you soooo baaad...@@"
<<case "randy">>
You grind your hips enthusiastically back into <<him npc_cook>>. "@@.pc;Mmm, now there's a <<if $scene.pony>>sexy stallion<<else>>helpful farmhand<</if>>! That already feels sooooo gooood, I can't want to feel more of you.@@"
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<<default>>
ERROR! unknown scene.porn_style: <<=$scene.porn_style>>
<</switch>>
<br><br>
Retreating slightly <<he npc_cook>> backs up enough for you to turn around so that you are once again sitting atop the hay bale. The position results in you being eye to one-eyed-wonder-worm with <<his npc_cook>> equine magnificence.<br>
<br>
Aided by the gleaming cockring the veins of <<his npc_cook>> cock bulge, <<his npc_cook>> tip flared and glistening with precum. Steam rises from <<his npc_cook>> hot, full balls as they bulge and strain against their steel separator. You have a final few moments to speak before your mouth becomes... otherwise engaged. You consider what intensity of sex you want to have...<br>
<br>
[<<moveTo 'event_cook_training_finale_3' 'Blink up at <<him npc_cook>> and ask <<him npc_cook>> to "be gentle."' 180 "<<set $scene.sex_style = 'gentle'>>">>]<br>
<<set _text = 'Grin up at <<him npc_cook>> and flutter your eyelashes and tell <<him npc_cook>> to "please... don\'t be gentle...\"'>>
[<<moveTo 'event_cook_training_finale_3' _text 180 "<<set $scene.sex_style = 'rough'>>">>]<br>
<<if setup.getTotalValue("bdsm") > 15>>
[<<moveTo 'event_cook_training_finale_3' 'Make <<him npc_cook>> force <<him npc_cook>>self on you.' 180 "<<set $scene.sex_style = 'extreme'>>">>]
<<else>>
[@@.link_locked;You need more experience with S&M to handle a more intense scene.@@]<br>
<</if>>
</div>/*#
#desc: cook porn finally - blow him, get ready to be fucked in the ass
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pony>>
<<set $player.flags.porn.cyoponyventure.sex_style[$scene.sex_style] = true>>
<<else>>
<<set $player.flags.porn.cyofarmventure.sex_style[$scene.sex_style] = true>>
<</if>>
<<if $scene.sex_style == "extreme">>
<<set $player.flags.porn.genre.bdsm = true>>
<</if>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pony>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_pony")>>
<<else>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.sex_style>>
<<case "gentle">>
Reaching down, <<=setup.getNpcName('npc_cook', 'first')>> tenderly strokes your face, bringing the base of <<his npc_cook>> cock to your lips where you shower it with passionate kisses, steadily making you way up towards the tip. Wet with pre <<his npc_cook>> fat, tip is delicious and you nibble <<if $fetish.bestiality_soft>>on <<his npc_cook>> frills<<else>>around the tip<</if>>, giving it a nice full tongue bath before opening your mouth and wrapping your lips around <<him npc_cook>>.<br>
<br>
Hands on <<his npc_cook>> hips <<he npc_cook>> looks down at you as you blink up in adoration, nodding for you to continue. Humming around <<his npc_cook>> cock you start to bob your head, steadily working more and more of it down your throat, your gullet opening with ease as you set your own pace.<br>
<br>
Throat bulging, lips sucking you increase your pace, working more and more of <<him npc_cook>> into you until you give a final lunge to seat the full length of <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horse<</if>>cock down your throat. Giving a full-body shiver at the sensation of being so filled you feel <<him npc_cook>> gently pat your head in approval and you moan in contentment before finally sliding back for air.<br>
<br>
<<switch $scene.porn_mood>>
<<case "innocent">>
"@@.pc;Oh my, did all of that fit in little ole me? You tasted so good... I don't know what came over me.@@" As you talk, <<he npc_cook>> gently helps you up onto the hay bale, placing you on all fours and turning you around to face away from <<him npc_cook>>.<br>
<br>
<<if $scene.pony>>
"@@.pc;Hey? What are you doing?@@" You ask with a giggle only for <<him npc_cook>> to start slipping your shorts down your hips. "@@.pc;Oh! I mean, I guess those were kind of tight, but I don't know why you're taking them off...@@"
<<else>>
"@@.npc_cook;That's right, <<callPlayer "npc_cook">>, let's get you out of those shorts...@@"
<</if>>
<br><br>
[<<moveTo 'event_cook_training_finale_4' "Looks like it's time for <<his npc_cook>> saliva-slick cock to meet your other horny hole..." 180>>]
<<case "desperate">>
"@@.pc;Fuck you taste so good! I could suck on you forever, but I need more!@@"<br>
<br>
Turning around you crawl up onto the hay bale, quickly shimmying out of your skimpy shorts to wiggle your bare ass invitingly. "@@.pc;My ass has been empty too long, please, let me feel you inside of me!@@"<br>
<br>
<<if !$scene.pony>>
<<=setup.getNpcName('npc_cook', 'first')>> grins. "@@.npc_cook;Alright, <<callPlayer "npc_cook">>, let's get you out of those shorts...@@"<br>
<br>
<</if>>
[<<moveTo 'event_cook_training_finale_4' "You're panting in eager want as <<he npc_cook>> takes <<his npc_cook>> cock in hand and aims it at your lusty rear hole." 180>>]
<<case "randy">>
"@@.pc;Mmmm, you're so tasty! But you know what else would feel good? For you to slide that big, <<if $fetish.bestiality_soft>>horsemeat <</if>>sausage right into my bum. Would you like that? Because I'd like that.@@"<br>
<br>
<<if $scene.pony>>
The way <<he npc_cook>> helps you up onto the hay bale makes it quite clear <<he npc_cook>> likes the idea and it isn't long before you're on all fours, sliding out of your shorts and spreading your ass to wiggle it side to side in anticipation.
<<else>>
<<=setup.getNpcName('npc_cook', 'first')>> grins. "@@.npc_cook;Aren't you a randy <<callPlayer "npc_cook">>! Well you'll get no complaints from me, if you want it... I'll give it to you!@@" <<He npc_cook>> states, bending you over the hay bale and spreading your ass in preparation.
<</if>>
<br><br>
"@@.pc;Oh I can't wait to feel you in there, I just love it when you're inside of me, just the thought of it has me so horny...@@"<br>
<br>
[<<moveTo 'event_cook_training_finale_4' "You don't have to look back to know you're about to welcome some hot <<if $fetish.bestialy_sof>>horsedick<<else>>dick<</if>> in through your backdoor." 180>>]
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<<case "rough">>
<<switch $scene.porn_mood>>
<<case "innocent">>
You let out a yelp of feigned surprise as <<=setup.getNpcName('npc_cook', 'first')>> grabs your head with one hand and <<his npc_cook>> cock with the other to bring your lips towards <<his npc_cook>> tip.<br>
<br>
<<if $scene.pony>>
"@@.pc;What? You want me to lick it? I guess it smells kind of good...@@" Sticking out your tongue, you give a little lick around <<his npc_cook>> frilled head. "@@.pc;Mmmm, it tastes good too!@@" Emboldened, you part your lips to get a better taste only for <<him npc_cook>> to pull your head forward and thrust <<his npc_cook>> hips.
<<else>>
"@@.npc_cook;Come on, you tarty slut. I've been working hard in the fields all day, now it's time for you to handle something hard!@@"
<</if>>
<br><br>
"@@.pc;Mmmmffff!@@" is all you can say as <<his npc_cook>> cock glides into your throat. Moving your head back and forth all you can do is moan and gasp for air in between thrusts.<br>
<br>
It isn't long before your well trained hole has opened for <<him npc_cook>> completely. <<His npc_cook>> balls slamming into your chin and <<he npc_cook>> holds you for a few seconds, grinding against your face before letting go as your head archs back, <<his npc_cook>> cock popping free amidst a spray of drool.<br>
<br>
<<if $scene.pony>>
"@@.pc;Oh my! What was that? I've never—@@" You're cutoff as <<he npc_cook>> grabs you by the hips, lifting you up off the ground and tossing you over the hay bale. Pushing yourself up to hands and knees you're stopped from standing by <<his npc_cook>> hand pressing down on your head as <<his npc_cook>> other hand rips off your skimpy shorts.
<<else>>
"@@.npc_cook;That's right, balls deep!, And suck it good, because you've got another hole that's just begging to be fucked!@@" A few more rough slurps and <<he npc_cook>> is flipping you over and pulling at your shorts.
<</if>>
<br><br>
"@@.pc;Oh no! What are you going to do to me back there?@@"<br>
<br>
[<<moveTo 'event_cook_training_finale_4' "Good thing <<his npc_cook>> cock is slick with your saliva, because it is about to go up your other hole..." 180>>]
<<case "desperate">>
<<=setup.getNpcName('npc_cook', 'first')>> grabs your head with one hand and brings <<his npc_cook>> cock towards your face as you moan. "@@.pc;Oh, yes, give it to me, give it to me hard-mffff!@@"<br>
<br>
<<He npc_cook>> cuts you off by shoving <<his npc_cook>> fat tip past your lips, your eyes roll back in pleasure as you suck on the mouth-watering tip only for <<him npc_cook>> to start pushing into your throat.<br>
<br>
You moan in pleasure as <<his npc_cook>> cock begins to bulge your throat, making it clear with your actions that, despite <<his npc_cook>> somewhat rough treatment, this is EXACTLY what you desperately needed.<br>
<br>
Swiftly working deeper into your throat <<he npc_cook>> gives you a few balls-deep thrusts before pulling back hard to leave you panting and gasping for more.<br>
<br>
<<if $scene.pony>>
Ignoring your mumbled plea <<he npc_cook>> starts to drag you up onto the hay bale only for you to scramble into position, turning your back and sliding out of your skimpy shorts before spreading your legs.
<<else>>
"@@.npc_cook;You like that, slut?@@" <<He npc_cook>> asks before pulling you to your feet and bending you over the hay bale, hands pulling at your shorts.
<</if>>
<br><br>
"@@.pc;Yes, yes, I need you inside me, fuck my other hole!@@" You shout as <<he npc_cook>> grabs your hips and gets ready to do just that.<br>
<br>
[<<moveTo 'event_cook_training_finale_4' 'You begged for it, time to get a hard <<if $fetish.bestiality_soft>>horse<</if>>cock up your ass.' 180>>]
<<case "randy">>
Smiling in delight you reach out to grab <<=ps(setup.getNpcName('npc_cook', 'first'))>> cock, wrapping your lips around <<his npc_cook>> head and sucking hard as your tongue goes to work. It appears that isn't enough, however, as you have barely started when <<he npc_cook>> places a hand on either side of your head and pulls you in deeper.<br>
<br>
<<if !$scene.pony>>
"@@.npc_cook;That's right, all the way down <<callPlayer "npc_cook">>, get me nice and ready because that ass of yours is next...@@"<br>
<br>
<</if>>
Your muffled "@@.pc;Mmmfff!@@" turns to a moan of pleasure at that throat-swelling feeling you so enjoy, releasing your hold on <<his npc_cook>> cock and putting your hands behind your back as you lean into the aggressive face-fucking.<br>
<br>
Your heart races as you steal the occasional quick breath between thrusts before <<he npc_cook>> finally pulls you off <<his npc_cook>> saliva-slick shaft to toss you down. Catching yourself on the hay bale you waste no time in crawling up onto it and wiggling your ass as you shimmy out of your shorts.<br>
<br>
"@@.pc;Fuck, yes, more, gimme that cock in my ass...@@"<br>
<br>
[<<moveTo 'event_cook_training_finale_4' 'You asked for it, time to get a hard <<if $fetish.bestiality_soft>>horse<</if>>cock up your ass.' 180>>]
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<<case "extreme">>
<<switch $scene.porn_mood>>
<<case "innocent">>
"@@.pc;This needs to stop at once!@@" You cry out as you start to rise to your feet. A single hand on your shoulder is enough to overpower you and <<=setup.getNpcName('npc_cook', 'first')>> shoves you back to your knees and then switches to holding you by your hair.<br>
<br>
<<if !$scene.pony>>
"@@.npc_cook;Stop? No, we're just getting started you tarty slut...@@"<br>
<br>
<</if>>
Pulling your head back you try to object again only for your cries to be silenced by <<his npc_cook>> thick cock plunging past your lips and into your throat. Both hands on your head now <<he npc_cook>> controls you like a toy, pounding so far into your throat <<his npc_cook>> balls slap your chin, the unrelenting pace soon having you a mess of tears and drool.<br>
<br>
<<if !$scene.pony>>
"@@.npc_cook;That's right, take it, bitch! And keep drooling, because I'm aiming for your ass next!@@"<br>
<br>
<</if>>
Finally pulling free of your abused throat <<he npc_cook>> practically throws you to the ground where you pant and gasp, spitting up a mix of precum and drool.<br>
<br>
Your respite lasts but a mere moment before <<he npc_cook>> picks you up and tosses you over the hay bale, ripping your shorts off your body before shoving you back down as you start to rise.<br>
<br>
[<<moveTo 'event_cook_training_finale_4' 'Prostrating and exposed you have "no choice" but to submit to <<his npc_cook>> desires.' 180>>]
<<case "desperate">>
"@@.pc;Oh fuck, I need this, please!@@" Lunging forward, you take <<=ps(setup.getNpcName('npc_cook', 'first'))>> cock in your mouth to suck only for <<him npc_cook>> to determine that isn't nearly enough. Grabbing your head <<he npc_cook>> thrusts into your throat, your eyes going wide as <<he npc_cook>> strains even your legendary capabilities.<br>
<br>
<<if !$scene.pony>>
"@@.npc_cook;What a slut! Well if you want it hard, I'll give it to yeh hard!@@"<br>
<br>
<</if>>
<<His npc_cook>> pounds in and out of your throat as you drool and moan as <<his npc_cook>> rough treatment only makes you hornier and when <<he npc_cook>> finally pulls out and tosses you to the ground you start pushing up, your gaping mouth spilling drool as you lunge towards <<his npc_cook>> cock.<br>
<br>
The stallion has other plans, however, lifting you up by your hair and spinning you around before bending you over the hay bale. Eagerly reaching to pull down your shorts even this is too slow for <<him npc_cook>> as <<he npc_cook>> instead rips them from your body.<br>
<br>
"@@.pc;Oh fuck, I need this,@@" you cry out as you glance over your shoulder, only for <<him npc_cook>> to shove you back down, pressing your tear-streaked face into the hay bale as <<he npc_cook>> prepares to enter you from behind.<br>
<br>
[<<moveTo 'event_cook_training_finale_4' "Helpless and horny, you're about to get what you wanted, hard." 180>>]
<<case "randy">>
"@@.pc;Oh yes, look at that big, fat, cock—@@" You start to gush only for <<=setup.getNpcName('npc_cook', 'first')>> to impatiently demand a different sort of oral appreciation. Cramming <<his npc_cook>> cock halfway down your throat with a single thrust <<he npc_cook>> pulls back only for you to continue.<br>
<br>
<<if !$scene.pony>>
"@@.npc_cook;What was that, slut?@@" <<He npc_cook>> asks, punctuating the request with a gentle slap on the cheek.<br>
<br>
<</if>>
"@@.pc;So eager, and so tasty, I—@@" <<he npc_cook>> wastes even less time now, silencing you again with <<his npc_cook>> almighty cock, <<his npc_cook>> hands grasping your head as <<he npc_cook>> fucks you hard enough to slap your chin with <<his npc_cook>> heavy testicles.<br>
<br>
You grunt and moan the whole time, obviously enjoying even this savage treatment, but neither of you have seen climax when <<he npc_cook>> pulls you off and tosses you over the hay bale.<br>
<br>
Breathing heavy, you crawl up on top of the bale with your back towards <<him npc_cook>>. "@@.pc;Mmm, ready for the other hole? I am too—@@" <<He npc_cook>> pushes you down hard enough to knock the wind out of you before <<he npc_cook>> grabs your skimpy shorts with one hand and rips them from your body to expose your ass.<br>
<br>
"@@.pc;Fuck me, big <<boy npc_cook>>, fuck me!@@" Your words muffled as <<he npc_cook>> presses your face even firmer into the hay bale.<br>
<br>
[<<moveTo 'event_cook_training_finale_4' "Ready or not, it looks like you're about to get fucked in the ass." 180>>]
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<<default>>
ERROR! unknown scene.sex_style: <<=$scene.sex_style>>
<</switch>>
</div>/*#
#desc: cook porn finally - he fucks your ass, door opens on a smoke-obscured figure
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pony>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_pony") setup.charImage("npc_barista","npc_barista_pony")>>
<<else>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.porn_style>>
<<case "bimbofication">>
Bent over, legs spread, ass raised your slutty lips are still parted from your earlier ravaging as you let out a cute gasp in anticipation of your next defilement.
<<case "submission">>
Bent over the hay bale you peek back at <<=setup.getNpcName('npc_cook', 'first')>> looming over you, the sight of <<his npc_cook>> <<if $scene.pony>>animalistic<<else>>primal<</if>> power having you all aquiver with submissive arousal.
<<case "bondage">>
Pulling your arms behind your back <<he npc_cook>> tightens the ropes to restrain them in a basic box tie. The tight restriction can't help but make you moan as <<he npc_cook>> gets to work.
<<case "vanilla">>
You're trembling in anticipation as you feel <<=setup.getNpcName('npc_cook', 'first')>> position <<him npc_cook>>self behind you.
<<default>>
ERROR! unknown scene.porn_style: <<=$scene.porn_style>>
<</switch>>
<br><br>
<<switch $scene.sex_style>>
<<case "gentle">>
<<switch $scene.porn_mood>>
<<case "innocent">>
Tender as before, you feel <<=setup.getNpcName('npc_cook', 'first')>> squirt some lube into your ass, <<his npc_cook>> rough hands gently massaging your ass before sliding a finger inside to work the lube in.<br>
<br>
"@@.pc;What's going on? You tasted nice, but what are you doing back there?@@"<br>
<br>
<<if $scene.pony>>
Your question is answered as <<he npc_cook>>
<<else>>
"@@.npc_cook;What I'm doing is I'm going to fuck you, slut, I'm gonna fuck you good!@@" <<=setup.getNpcName('npc_cook', 'first')>> explains as <<he npc_cook>>
<</if>>
takes a firm, but gentle grip of your hips with both hands and presses the fat tip of <<his npc_cook>> cock against your pert rosebud.<br>
<br>
"@@.pc;What? That doesn't go in there!@@" You start to say only for <<him npc_cook>> to pop into your well-trained rear and your tune to quickly change. "@@.pc;Oh <<getWordGod>>, that feels so good! Oh! It feels so naughty, but don't stop, don't stop!@@"<br>
<br>
<<if !$scene.pony>>
"@@.npc_cook;I wasn't planning on, slut...@@" <<He npc_cook>> grunts as <<his npc_cook>> pace increases.<br>
<br>
<</if>>
Your tone gets louder and more excited as <<he npc_cook>> thrusts deeper and faster and it isn't long until <<his npc_cook>> balls are lightly slapping you with each stroke, your whole body rearing up as the power of <<his npc_cook>> cock almost lifts you in the air.<br>
<br>
"@@.pc;Oh yes, yes! Being fucked in the ass is amazing! I love your cock so much!@@" You cry out<<if $scene.pony>> only to hear the sound of a large door swinging open, looking up to see the faux stable door projected over the entrance to the room open with a burst of light and smoke<</if>>.
<<case "desperate">>
"@@.pc;Oh <<getWordGod>> you tasted so good! Wait, are you going to enter me back there? Oh no, that sounds so naughty... why am I so excited by the thought of it?@@"<br>
<br>
<<if $scene.pony>>
Tenderly <<=setup.getNpcName('npc_cook', 'first')>>
<<else>>
"@@.npc_cook;Because you're a horny, cock-addicted slut,@@" <<=setup.getNpcName('npc_cook', 'first')>> explains as <<he npc_cook>>
<</if>>
starts rubbing lube into and around your hole and you moan in pleasure. "@@.pc;Ohhh, that feel sooooo gooood... I think I want it, I want... I want your cock... oh that feels so dirty to say! But I do, I want your cock, I want it inside me!@@"<br>
<br>
You don't have to ask again as <<he npc_cook>> removes <<his npc_cook>> hands and gently grasps your hips, <<his npc_cook>> cock pressing against your quickly yielding rosebud gliding into you.<br>
<br>
Rising up in mock surprise your eyes go wide, "@@.pc;Oh! It's so big!@@" <<He npc_cook>> continues to slide deeper despite your outburst and you slowly sink back down, your eyes rolled back in pleasure as you let our a series of cute gasps and moans.<br>
<br>
Steadily working <<his npc_cook>> way in until <<his npc_cook>> balls gently brush your skin <<he npc_cook>> fucks you with slow, smooth thrusts as you luxuriate in the full feeling.<<if $scene.pony>> Hearing a sound you glance up to see the faux stable door projected over the entrance to the room open with a burst of light and smoke.<</if>>
<<case "randy">>
"@@.pc;Oh, I don't know what's come over me, but you tasted so good and now... now I want to feel you in my ass!@@"<br>
<br>
<<if !$scene.pony>>
"@@.npc_cook;I bet you do,@@" <<=setup.getNpcName('npc_cook', 'first')>> states with a grin.<br>
<br>
<</if>>
Wiggling your butt you moan and gasp as <<=setup.getNpcName('npc_cook', 'first')>> rubs lube into and around your hole before taking gentle hold of your hips.<br>
<br>
"@@.pc;Oh this is so naughty, but I want it so much!@@" You moan as <<he npc_cook>> presses against your pert rosebud.<br>
<br>
Your body resists for but a moment before your well-trained hole parts and <<he npc_cook>> slides into you. "@@.pc;Oh yes! It's so big! Even better than I imagined! And you're going deeper!@@" Your voice becomes breathless and quick as <<he npc_cook>> continues. "@@.pc;Don't stop, don't stop, don't stop...@@"<br>
<br>
<<He npc_cook>> doesn't stop, maintaining the same steady progress until <<his npc_cook>> balls gently bump up against your body and your ass is truly, completely filled. Letting out a long moan you collapse forward, eyes rolled back in pleasure as you pant atop the hay bale as <<he npc_cook>> begins slow, gentle thrusts back and forth.
<<if $scene.pony>>
<br><br>
Blissfully enjoying the sensuous ass-fucking you hear a sound, glancing up to see the faux stable door projected over the entrance to the room open with a burst of light and smoke.
<</if>>
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<br><br>
<<if $scene.pony>>
Squinting up at the silhouette that appears in the doorway you can make out a human figure, but no details. "@@.pc;What, who's there?@@" you ask as <<he npc_cook>> continues to make deep, penetrating love to your ass.<br>
<br>
[<<moveTo 'event_cook_training_finale_5' 'The smoke slowly parts to give you a view of the new arrival.' 180>>]
<<else>>
[<<moveTo 'event_cook_training_finale_6' 'Continue.' 180>>]
<</if>>
<<case "rough">>
<<switch $scene.porn_mood>>
<<case "innocent">>
<<if $scene.pony>>
"@@.pc;Oh! What are you doing! You're being such a bad pony!@@" Ignoring your complaints
<<else>>
You yelp as
<</if>>
<<=setup.getNpcName('npc_cook', 'first')>> holds you down with one hand as <<he npc_cook>> slathers your ass with lube. "@@.pc;What are you doing in there? You don't belong in there, that's my naughty hole!@@"<br>
<br>
<<if $scene.pony>>
Ignoring your feigned protests
<<else>>
"@@.npc_cook;Yeah, that's right you're naught, a naughty little slut who needs to get fucked!@@" <<=setup.getNpcName('npc_cook', 'first')>> ignores your continued feigned protests as
<</if>>
<<he npc_cook>> gives your ass a quick slap before lining up <<his npc_cook>> cock and thrusting forward.<br>
<br>
Your well trained hole parts easily, the mix of your spit and the fresh lube speeding it along as <<he npc_cook>> slides deep into your ass.<br>
<br>
"@@.pc;Oh! This is so wrong! But how can it feel so good?@@"<br>
<br>
Ignoring your question <<he npc_cook>> leans over you, <<his npc_cook>> <<if $scene.pony>>frame and mask casting an ominous shadow over your body as<<else>>weight pinning you down as<</if>> <<he npc_cook>> pounds into you, a mere handful of thrusts all it takes before <<he npc_cook>> has spread your depths, <<his npc_cook>> heavy balls pendulum-slamming into your thighs with each thrust.<br>
<br>
"@@.pc;Oh, oh fuck, you're so deep!@@" You gasp, starting to slide away due only for <<him npc_cook>> to pull you back and pin you down without missing a stroke.<br>
<br>
Your gasps turn to moans of pleasure as <<he npc_cook>> <<if $scene.pony>>leans closer, <<his npc_cook>> rubber muzzle and steel bit and bridle nudging your neck as<<else>>continues to pound your ass,<</if>> <<his npc_cook>> breath whistles hot in your ear.
<<if $scene.pony>>
<br><br>
Hearing a noise you glance up to see the faux stable door projected over the entrance to the room open with a burst of light and smoke.
<</if>>
<<case "desperate">>
"@@.pc;Hurry up!@@" You moan as <<=setup.getNpcName('npc_cook', 'first')>> splashes a bit of lube over your hole, "@@.pc;I'm so empty! I need you inside me again!@@"<br>
<br>
A sharp slap on your bare ass quiets you for a moment as <<he npc_cook>> gets a firm grasp of your hips and lines up for a thrust.<<if !$scene.pony>> "@@.npc_cook;Easy there <<callPlayer "npc_cook">>, I'll fuck you good!@@"<</if>><br>
<br>
Your gasp turns to a moan as <<he npc_cook>> enters you, <<his npc_cook>> thick <<if $fetish.bestiality_soft>>horse<</if>>cock gliding into your trained ass, opening you for <<his npc_cook>> pleasure while sending ecstatic waves through your body.<br>
<br>
"@@.pc;Oh yes! Just like that, that's what I needed@@" You moan as <<he npc_cook>> moves deeper, leaning over and pressing you into the hay bale, <<his npc_cook>> <<if $scene.pony>>horsehead mask resting on your shoulder,<<else>>chest pressing you down,<</if>> <<his npc_cook>> breath hot in your ear.<br>
<br>
Reaching depth <<he npc_cook>> grinds against you for a few moments before sharply pulling back and then pounding forward, <<his npc_cook>> balls slamming into you with enough force for you to slide back, only to pull you back and repeat the process.<br>
<br>
Pinned and penetrated all you can do is endure the powerful, pleasurable fucking, panting and moaning until you hear a strange sound in front of you and look up to see the faux stable door projected over the entrance to the room open with a burst of light and smoke.
<<case "randy">>
You groan with lust. "@@.pc;Tasting you has me feeling sooooo horny, fuck me, fuck me in my ass!@@"<br>
<br>
<<=setup.getNpcName('npc_cook', 'first')>> lands a sharp, loud slap on your ass to calm you down, but you just moan with further pleasure, wiggling your tush as <<he npc_cook>> slathers it in lube and takes sharp hold of your hips.<br>
<br>
<<if $scene.pony>>
"@@.pc;Oh yeah, take me, stallion, make me your mare!@@"
<<else>>
"@@.pc;Oh yeah, fuck me! Fuck me good!@@"
<</if>>
<br><br>
<<He npc_cook>> obliges, <<his npc_cook>> thick cock ramming past your trained rosebud on a missile-direct journey towards your very core.<br>
<br>
You gasp in pleasure, moaning as <<he npc_cook>> slides deeper until with a start <<he npc_cook>> hits your end, <<his npc_cook>> balls slapping against your hips and almost knocking you forward. Bearing down with <<his npc_cook>> weight <<he npc_cook>> pins you to the hay bale, <<his npc_cook>> <<if $scene.pony>>horse-mask resting on your shoulder<<else>>chest pressing down on you<</if>> as <<his npc_cook>> hips move back and forth, each pounding thrust sending waves of pleasure through your body as <<his npc_cook>> monstrous balls swing<<if $fetish.cum>>, full to the brim with precious cum<<else>>and slap<</if>>.
<<if $scene.pony>>
<br><br>
Panting and moaning through the aggressive fucking you are somehow interrupted by an odd sound coming from in front of you. Managing to turn your head to look in that direction you watch the faux stable door projected over the entrance to the room swing open with a burst of light and smoke.
<</if>>
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<br><br>
<<if $scene.pony>>
Panting and squinting up at the silhouette the appears in the doorway you can make out a human figure, but no details. "@@.pc;What, who's there?@@" you ask, your voice uneven due to <<him npc_cook>> continuing to slam into you. Holding you down with both hands to keep you from sliding <<he npc_cook>> makes deep, pounding thrusts into your ass as you try to focus on the mysterious intruder.<br>
<br>
[<<moveTo 'event_cook_training_finale_5' 'The smoke slowly parts to give you a view of the new arrival.' 180>>]
<<else>>
[<<moveTo 'event_cook_training_finale_6' 'Continue.' 180>>]
<</if>>
<<case "extreme">>
<<switch $scene.porn_mood>>
<<case "innocent">>
"@@.pc;Oh!@@" you gasp in surprise as <<=setup.getNpcName('npc_cook', 'first')>> shoves you down and kicks your legs open.<br>
<br>
"@@.pc;No, stop, what are you going to do to me?@@" You cry out, but <<if $scene.pony>>the stallion behind your pays no heed<<else>><<=setup.getNpcName('npc_cook', 'first')>> merely slaps you on the ass as <<he npc_cook>> bends you over a hay bale<</if>>.<br>
<br>
Holding you down with one hand <<he npc_cook>> lines up <<his npc_cook>> cock with the other. Though it is dripping with your saliva it is far from sufficient lube for such a monster to easily fit into even your well-trained hole. Nonetheless <<he npc_cook>> presses forward, <<his npc_cook>> fat, frilled tip pushing against your rosebud and then forcing it open before penetrating deeper.<br>
<br>
Painful waves of agnostic pleasure goes through your body as <<he npc_cook>> forces <<his npc_cook>> way into you centimetre by centimetre. Pinned by <<his npc_cook>> weight you can do naught but endure as <<he npc_cook>> moves ever deeper.<br>
<br>
"@@.pc;Noooo@@" you groan as <<he npc_cook>> finally comes to a grinding stop. Ignoring your pleas, <<he npc_cook>> starts to pull back only for the friction to drag you back with <<him npc_cook>>. With a grunt, <<he npc_cook>> grabs firm hold of your hips, fingers digging into your flesh as <<he npc_cook>> holds you in place and pulls back only to slam forward with even greater ferocity.<br>
<br>
<<if !$scene.pony>>
"@@.npc_cook;You like that, slut? Playing hard to get while wearing those fuck-me shorts? This is what you get!@@"<br>
<br>
<</if>>
Pumping in and out, <<he npc_cook>> forces you wider, building up speed as <<he npc_cook>> fucks you savagely, your body pressed into the hay bale as you can only endure the brutal ravaging.
<<case "desperate">>
You moan with lust at the thought of being fucked by <<=ps(setup.getNpcName('npc_cook', 'first'))>> huge, hard <<if $fetish.bestialty_soft>>horse<</if>>cock, but that enthusiasm is tinged with fear at <<his npc_cook>> primal aggression.<br>
<br>
Slamming you down onto the hay bale <<he npc_cook>> forces <<his npc_cook>> way in with no lube save your saliva. You groan is pain as <<he npc_cook>> forcefully spreads you, your throat-slickening far from sufficient to ease <<his npc_cook>> entrance, <<his npc_cook>> frilled tip scraping every centimetre of your insides in its unstoppable journey towards your deepest reaches.<br>
<br>
"@@.pc;Oh <<=setup.getNpcName('npc_cook', 'first')>> it's too much!@@" You pant as <<he npc_cook>> continues unabated, your voice swinging higher as <<his npc_cook>> balls finally press against your thighs. "@@.pc;Oh fuck, oh fuck,@@" you gasp, your earlier eagerness tinged with fear as you feel <<him npc_cook>> pull back with the certain knowledge that your fucking is about to begin.<br>
<br>
Savagely, brutally, <<he npc_cook>> pounds your ass, <<his npc_cook>> full weight driving into you with each ever-swifter thrust, <<his npc_cook>> <<if $fetish.cum>>cum-<</if>>heavy balls slamming your body as you are ground into the hay bale.
<<if !$scene.pony>>
<br><br>
"@@.npc_cook;You like that, slut? Playing hard to get while wearing those fuck-me shorts? This is what you get!@@"
<</if>>
<<case "randy">>
"@@.pc;Mmm, I can't wait to feel you inside of me—@@" you start to say only for <<=setup.getNpcName('npc_cook', 'first')>> to move with frightening swiftness. Far faster than you had expected <<his npc_cook>> cock is inside you, shoved past your trained rosebud with a single stroke, the meager lubrication provided by your saliva already used up even as <<he npc_cook>> continues to plunge deeper.<br>
<br>
"@@.pc;Oh fuck, too much, slow down!@@" You pant. <<He npc_cook>> responds by grabbing your hips and pulling you into <<him npc_cook>>, hastening <<his npc_cook>> entry, your body becoming a puppet, a mere sheath for <<his npc_cook>> cock as <<he npc_cook>> crams every centimetre of <<him npc_cook>>self into your hole and gives a little grind.<br>
<br>
"@@.pc;Fuck, stop, no,@@" you gasp as <<he npc_cook>> pulls back slightly before commencing to fuck. Like a jackhammer <<he npc_cook>> pounds your ass, sending alternating waves of pain and pleasure pulsing through your body.
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<br><br>
<<if $scene.pony>>
Shuddering and gasping in a mix of agony and ecstasy with each pounding stroke <<he npc_cook>> suddenly pulls your head up. Holding you by the hair an continuing to fuck you as you bounce and drool <<he npc_cook>> forces you to look forward as the faux stable door projected over the entrance to the room swings open with a burst of light and smoke.<br>
<br>
"@@.pc;Wah?@@" You mumble, trying to focus on the human-shaped figure striding out of the smoke.<br>
<br>
[<<moveTo 'event_cook_training_finale_5' 'The smoke slowly parts to give you a view of the new arrival.' 180>>]
<<else>>
[<<moveTo 'event_cook_training_finale_6' 'Continue.' 180>>]
<</if>>
<<default>>
ERROR! unknown scene.sex_style: <<=$scene.sex_style>>
<</switch>>
</div>/*#
#desc: cook porn finally - pink strap-on-wielding ponygirl appears and slides her cock into your mouth
#status: RELEASED 0.9.2.0
#ignore_spell: f
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pony>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_pony") setup.charImage("npc_barista","npc_barista_pony")>>
<<else>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand")>>
<</if>>
<div id="invframe" class="scrolltext">
Striding out of the smoke as the door closes behind them and you are no longer being blinded by the bright lights the figure comes into focus. The first thing that is clear is that the figure is female — a large, full breasts, to sexy hips and a waist that could only come from a corset. Beyond the basic profile, however, is where things take a turn towards the kinky — the figure is wearing a similar horse mask to <<=setup.getNpcName('npc_cook', 'first')>>, complete with bit and bridle, but in stunning hot pink.<br>
<br>
The "pink ponygirl" pauses to pose and give you a full look at her figure — her entire body covered in hot pink latex to match her mask with a pink leather harness over top. The final touch is the equally pink <<if $fetish.bestiality_soft>>horse<</if>>cock sprouting from her hips. Staring at it as it bounces you judge it to be a twin of the monster currently stuffing your ass, a silicone clone of <<=setup.getNpcName('npc_cook', 'first')>> bobbing and swaying lewdly from her crotch.<br>
<br>
Striding towards the click of her shoes draws attention to the fact that they are steep ponyboots, their heel-less design lending her a sexy, bizarre, inhumane shape to her legs as she strides confidently atop them.<br>
<br>
<<switch $scene.porn_style>>
<<case "bimbofication">>
"@@.pc;You're so hot...@@" You moan as the mysterious mare comes to a stop in front of you
<<case "submission">>
"@@.pc;Ohhh...@@" you moan submissively as you stare up at the mysterious mare now looming before you.
<<case "bondage">>
You shudder in your binds, momentarily jealous of the secure pink leather straps wrapping her body.
<<case "vanilla">>
You bite your lip, seldom have you seen a figure so cutely inhuman... and yet still so incredibly arousing.
<<default>>
ERROR! unknown scene.porn_style: <<=$scene.porn_style>>
<</switch>>
<br><br>
<<switch $scene.sex_style>>
<<case "gentle">>
You stare up in awe as the pink pony looms over you. Back behind <<=setup.getNpcName('npc_cook', 'first')>> slides to full depth before lifting you up, holding you as the pink pony strokes your cheek and runs her latex fingers along your shoulders.<br>
<br>
Trembling you follow her gaze to look at her cock. Big and pink it hangs centimetres from your face, her shaft held in one dainty gloved hand.<br>
<br>
<<switch $scene.porn_mood>>
<<case "innocent">>
"@@.pc;F-for me?@@" You ask softly before parting your mouth in sweet invitation, her tip rising to your lips.
<<case "desperate">>
"@@.pc;I need it...@@" you moan, trying to lean forward but unable to move due to your position, <<=setup.getNpcName('npc_cook', 'first')>> keeping you from falling onto your face as <<he npc_cook>> remains deeply rooted in your ass.<br>
<br>
Fortunately she knows just what you want, taking half a step forward to bring the tip of her cock into reach of your wet lips.
<<case "randy">>
"@@.pc;Yesss... give it to me... fill me up...@@" you moan, your whole body pulsing around the cock so deeply penetrating you from behind.<br>
<br>
Stepping forward the beautiful pink mare grants your wish, bringing her cock up to meet your eager lips.
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<br><br>
You moan, she tastes like strawberries. Kissing her cock more passionately you shudder as <<=setup.getNpcName('npc_cook', 'first')>> resumes moving. Slow, rolling thrusts that never leave you much less that completely full it makes you more hungry for the artificial pastel twin to match the flesh and blood monster in your ass.<br>
<br>
Looking up at the pink pony you somehow share a silent moment despite her mask-occluded face. Cradling your head gently, helpfully she leans forward, your throat perfectly aligned to part and welcome that wonderful bulge.<br>
<br>
Your eyes flutter and then shut as a feeling of bliss flows through your body. Cock goes in, cocks goes out, her timing is impeccable, straining your limits, but never leaving you fearing for your next breath. Back behind <<he npc_cook>> continues to thrust and you feel <<his npc_cook>> orgasm approaching, squeezing your ass to help and sucking harder on the cock as if, somehow, <<he npc_cook>> could feel that as well.<br>
<br>
[<<moveTo 'event_cook_training_finale_6' 'Time for glorious climax...' 180>>]
<<case "rough">>
Stepping into arms reach the pink pony is all business, knowing exactly what she wants as she lifts your head to the perfect angle with one hand and lines up her cock with the other. Back behind <<=setup.getNpcName('npc_cook', 'first')>> pauses for a moment, <<his npc_cook>> cock buried all the way inside of your rear, practically holding you aloft as <<his npc_cook>> pastel partner lines up her aim.<br>
<br>
<<switch $scene.porn_mood>>
<<case "innocent">>
"@@.pc;What? Will that fit?@@" You pant as you look in fear at the pink pole hovering in front of you.<br>
<br>
Looking down at you her mask is unreadable, her face concealed, but she nods once before taking hold of your hair and thrusting into your throat.
<<case "desperate">>
You groan with need. "@@.pc;Cock... more cock, I need more cock!@@" You beg, wild-eyed with lust, more than happy to feel her hands grip your head firmly and pull your down, her cock piercing your throat with ease and smoothly moving deeper.
<<case "randy">>
"@@.pc;I'm so horny.@@" You moan before dropping your jaw, eager for her cock.<br>
<br>
Her expression unreadable beneath the equine facade she steadies your head with her hands and then thrusts forward, her cock threading your lips and gliding down your throat.
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<br><br>
The taste of strawberries explodes in your mouth as her pink pony cock begins to fill your throat. Back behind <<=setup.getNpcName('npc_cook', 'first')>> resumes <<his npc_cook>> deep pounding of your ass, your only response to suck on on your sumptuously oversized lolly.<br>
<br>
Adopting a coordinated rhythm, the dark stallion and the pink mare slide you back and forth, fucking you from both directions. Penetrated utterly and completely at their mercy you embrace the helpless, filled feeling, gasping, moaning and lending what help you can as you lunge forward or plunge backwards, alternating between fake balls slapping your chin and real ones against your thighs.<br>
<br>
[<<moveTo 'event_cook_training_finale_6' 'You feel something building behind you.' 180>>]
<<case "extreme">>
Even as <<he npc_cook>> holds you aloft with a combination of a grip on your hair and <<his npc_cook>> cock in your ass <<=setup.getNpcName('npc_cook', 'first')>> continues to pound into you, your suspended state resulting in your entire body bouncing with each hard thrust.<br>
<br>
As feminine and pink as your new companion may appear the dismissive way she looks down at you from her pony-boot perch would seem to imply that you will be seeing neither rescue, nor mercy.<br>
<br>
<<switch $scene.porn_mood>>
<<case "innocent">>
"@@.pc;Please... help me...@@" you whisper, your words interrupted by gasps as you endure the continued pounding from behind.
<<case "desperate">>
"@@.pc;I need—@@" you gasp, interrupted by a particularly hard thrust into your ass. "@@.pc;I need... I need more!@@"
<<case "randy">>
The visual reminder of exactly what is currently pounding in and out of your ass only makes you more aroused you groan in want. "@@.pc;Fuck my throat.@@"
<<default>>
ERROR! unknown scene.porn_mood: <<=$scene.porn_mood>>
<</switch>>
<br><br>
Looking at you dispassionately the pink mare runs a hand down your face. Latex fingers tracing the path of your mascara-ruining tears she continues down, finally stopping with your top which she rips open to expose your bouncing breasts.<br>
<br>
You moan at the humiliation only for her to stifle your sound by thrusting her cock into your mouth.<br>
<br>
Your eyes go wide in surprise at the sudden strawberry flavour, but you have no time to focus as she attempts to match the same frenetic pace of the stallion behind you. Helpless you become naught but a cocksleeve, fucked, in the literal sense, from either direction, twin <<if $fetish.bestiality_soft>>horse<</if>>cocks abusing your holes and leaving you gasping, panting, overwhelmed with sensation as each breath becomes a struggle.<br>
<br>
[<<moveTo 'event_cook_training_finale_6' 'Surrender to your fucking.' 180>>]
<<default>>
ERROR! unknown scene.sex_style: <<=$scene.sex_style>>
<</switch>>
</div>/*#
#desc: cook porn finally - get double-teamed by cook and pink pony girl
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pony>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_pony") setup.charImage("npc_barista","npc_barista_pony")>>
<<else>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.pony>>
It's happened. The better part of a metre worth of thick, hard <<if $fetish.bestiality_soft>>horse<</if>>cock is now penetrating you, stimulating you, filling you from both ends. Artificial strawberry-sweetness in front with firm<<if !$npc_cook.fem>>, manly<</if>> flesh behind, the waves of pleasure they pump through your body suffuses you, your eyes rolling back as climax approaches.<br>
<br>
<<switch $scene.sex_style>>
<<case "gentle">>
Softly working inside your rear you feel your stallion's cock tighten, <<=ps(setup.getNpcName('npc_cook', 'first'))>> body shuddering against you. Pressed balls-deep into your hole you feel <<his npc_cook>> mammoth testicles retract, pumping their precious production deep into your ass.<br>
<br>
Catching a final breath you moan along as the pink pony in front of you treats you to complete fullness, your nose pressed against her latex skin.<br>
<br>
Your cry of pleasure muffled by the cock filling your mouth your eyes roll back. <<if $player.body_ref.penis>>Neglected <<if setup.getItemTypeName("cage") == "">>but stiff with joy your <<getWordMyPenis>> spews its excitement so hard it is almost painful,<<elseif setup.isCage()>>and caged your poor <<getWordMyPenis>> strains and cries with joy, in its proper place, but still<<else>>but your chastity belt hids everything, smooth and firm, letting not a hint escape of the fact you are all but<</if>><<else>>Untouched, your cunt squirts with joy,<</if>> overwhelmed by the pleasure assaulting your holes.<br>
<br>
Your body goes limp as you nearly faint. Gently supporting your body your two partners slide out of your body. The emptiness has you let out a soft whimper, your jaw sore and unable to close, your ass struggling to keep from leaking its full load of cum you
<<case "rough">>
Your own pleasure an after-thought you nonetheless feel your body becoming sensitive and overwhelmed by the hard fucking you are getting from both directions.<br>
<br>
Panting and moaning it is all you can do to sneak in a breath here or there as the pace rises even higher, your body bouncing forth like a helpless ball in a game of tennis played between their two sets of heavy testicles.<br>
<br>
You feel <<his npc_cook>> cock swell a final time, thick, potent cum working its way up from <<his npc_cook>> heavy balls, an oncoming deluge that you could not stop even if you wanted to.<br>
<br>
Thrust into deep from both ends as <<he npc_cook>> pumps <<his npc_cook>> seed into your ass you feel sandwiched between <<=ps(setup.getNpcName('npc_cook', 'first'))>> <<if $npc_cook.fem>>feminine<<else>>masculine<</if>> firmness and the mare's latex flesh. The stallion and the mare embracing to celebrate their shared abuse of your body as you hang there between them. Unable to breathe you shudder and twitch as <<if $player.body_ref.penis>>your <<if setup.getItemTypeName("cage") == "">><<getWordMyPenis>> spurts its joy<<else>><<getWordMyPenis>> strains painfully and weeps with joy<</if>> at your hard use coming to fruition<<else>>you squirt with excitement<</if>>.<br>
<br>
Finally separating the release of tension allows the dual <<if $fetish.bestiality_soft>>horse<</if>>cocks to slide out of your body as you collapse limply onto the hay bale. Barely able to move, you
<<case "extreme">>
Helplessly impaled you are fucked from either end without mercy or cessation. Throat stretched, ass gaped you are helpless to do anything but endure the inhuman pounding, tears streaming down your face as your world becomes nothing but oversensitised painful, humiliating pleasure at your use and abuse interspersed with the occasional moment where you can eagerly suck in a quick gulp of air before the strawberry <<if $fetish.bestiality_soft>>horse<</if>>cock rams down your throat once again.<br>
<br>
Nerves fried, your mind overwhelmed you feel like you could faint at any moment, only distantly aware that <<=setup.getNpcName('npc_cook', 'first')>> is finally cumming. <<if $fetish.cum>>Flooding you deep <<he npc_cook>><<else>>An orgasm like an earthquake rumbles deep in your rear as <<he npc_cook>><</if>> rides the wave out, your legs collapsing beneath you as <<his npc_cook>> cock springs free of your abused hole, causing you to slump, the other cock exiting your throat with a wet slurp.<br>
<br>
<<if $fetish.cum>>
<<=setup.getNpcName('npc_cook', 'first')>> continues to spray, painting your body with <<his npc_cook>> cream, the pink mare flipping you onto your back so <<he npc_cook>> doesn't miss your makeup and tear-streaked face or your <<if $player.body.breastsize[0] > 0>>lewdly exposed tits<<else>>sweat-glistened chest<</if>>.<br>
<br>
<</if>>
Too tired even to move you just lie there, no longer a slutty farmgirl, but a used and abused pair of holes. Adding humiliation to insult <<if $player.body_ref.penis>><<if $fetish.cum>>your <<if setup.getItemTypeName("cage") == "">>still-hard <<getWordMyPenis>> joins in on spraying its joy over your body, your <<if $fetish.sissy>>sissy<<else>>girlish<</if>> spurts paling next to <<his npc_cook>> firehose-like blast.<<else>><<getWordMyPenis>> <<if $player.body_ref.cumProduction>>crying tears of cummy joy<<else>>trembling in ecstasy<</if>> at your treatment, the thin <<if $fetish.sissy>>sissy<<else>>girl<</if>>-cum dribbling down to meet with the thick pool of <<if $npc_cook.fem>><<getWordCum>><<else>>man-milk<</if>> dripping from your abused ass<</if>><<else>>you cum hands free, your <<getWordMyPenis>> seeming less than an afterthought compared to the pleasure of your rear<</if>><<else>>you squirt with a massive orgasm... your cunt yet untouched<</if>>.<br>
<br>
You are barely able to move as you
<<default>>
ERROR! unknown scene.sex_style: <<=$scene.sex_style>>
<</switch>>
<<switch $scene.porn_style>>
<<case "bimbofication">>
softly whisper your thanks. "@@.pc;I love your cocks...@@"
<<case "submission">>
softly whisper your thanks. "@@.pc;Thank you for using my body...@@"
<<case "bondage">>
can only shudder in residual joy as you take comfort in your bonds.
<<case "vanilla">>
moan softly. "@@.pc;Thank you...@@"
<<default>>
ERROR! unknown scene.porn_style: <<=$scene.porn_style>>
<</switch>>
<br><br>
Standing over you your two partners gently roll you into a more comfortable position as you sense that the "film" is over.
<<else>>
You moan, nearly half a metre worth of thick, hard <<if $fetish.bestiality_soft>>horse<</if>>cock is pounding in and out of you, stimulating you, filling you all the way deep and sending waves of pleasure through your moaning body.<br>
<br>
<<switch $scene.sex_style>>
<<case "gentle">>
Softly working inside your rear you feel <<=ps(setup.getNpcName('npc_cook', 'first'))>> cock tighten, <<his npc_cook>> body shuddering against you. Pressed balls-deep into your hole you feel <<his npc_cook>> mammoth testicles retract, pumping their precious production deep into your ass.<br>
<br>
Catching a final breath you moan along, your screams of pleasure echoing in the simulated barn. <<if $player.body_ref.penis>>Neglected <<if setup.getItemTypeName("cage") == "">>but stiff with joy your <<getWordMyPenis>> spews its excitement so hard it is almost painful,<<elseif setup.isCage()>>and caged your poor <<getWordMyPenis>> strains and cries with joy, in its proper place, but still<<else>>but your chastity belt hids everything, smooth and firm, letting not a hint escape of the fact you are all but<</if>><<else>>Untouched, your cunt squirts with joy,<</if>> overwhelmed by the pleasure assaulting your holes.<br>
<br>
Your body goes limp as you nearly faint. Gently supporting your body, <<=setup.getNpcName('npc_cook', 'first')>> slides out of your body. The emptiness has you let out a soft whimper, your ass struggling<<if $fetish.cum>> to keep from leaking its full load of cum you<<else>> and twitching as you<</if>>
<<case "rough">>
Your own pleasure an after-thought you nonetheless feel your body becoming sensitive and overwhelmed by the hard fucking you are getting from both directions.<br>
<br>
Panting and moaning it is all you can do to sneak in a breath here or there as the pace rises even higher, your body bouncing forth like a helpless ball in a game of tennis played between their two sets of heavy testicles.<br>
<br>
You feel <<his npc_cook>> cock swell a final time, thick, potent cum working its way up from <<his npc_cook>> heavy balls, an oncoming deluge that you could not stop even if you wanted to.<br>
<br>
Thrust into deep from both ends as <<he npc_cook>> pumps <<if $fetish.cum>><<his npc_cook>> seed <</if>>into your ass, pressed hard into the hay bale as <<he npc_cook>> finishes strong. Unable to breathe you shudder and twitch as <<if $player.body_ref.penis>>your <<if setup.getItemTypeName("cage") == "">><<getWordMyPenis>> spurts its joy<<else>><<getWordMyPenis>> strains painfully and weeps with joy<</if>> at your hard use coming to fruition<<else>>you squirt with excitement<</if>>.<br>
<br>
Finally separating the release of tension allows the <<if $fetish.bestiality_soft>>horse<</if>>cocks to slide out of your body as you collapse limply onto the hay bale. Barely able to move, you
<<case "extreme">>
Helplessly impaled, you are fucked into the hay bale without mercy or cessation. Screaming your throat raw, your ass is gaped as you are helpless to do anything but endure the inhuman pounding, tears streaming down your face as your world becomes nothing but oversensitised painful, humiliating pleasure at your use and abuse interspersed with the occasional gasp as the massive <<if $fetish.bestiality_soft>>horse<</if>>cock in your ass somehow finds a fresh angle to stimulate and assault.<br>
<br>
Nerves fried, your mind overwhelmed you feel like you could faint at any moment, only distantly aware that <<=setup.getNpcName('npc_cook', 'first')>> is finally cumming. <<if $fetish.cum>>Flooding you deep <<he npc_cook>><<else>>An orgasm like an earthquake rumbles deep in your rear as <<he npc_cook>><</if>> rides the wave out, your legs collapsing beneath you as <<his npc_cook>> cock springs free of your abused hole, causing you to slump.<br>
<br>
<<if $fetish.cum>>
<<=setup.getNpcName('npc_cook', 'first')>> continues to spray, painting your body with <<his npc_cook>> cream, flipping you over to as not to miss your makeup and tear-streaked face or your <<if $player.body.breastsize[0] > 0>>lewdly exposed tits<<else>>sweat-glistened chest<</if>>.<br>
<br>
<</if>>
Too tired even to move, you just lie there, no longer a slutty farmgirl, but a used and abused pair of holes. Adding humiliation to insult <<if $player.body_ref.penis>><<if $fetish.cum>>your <<if setup.getItemTypeName("cage") == "">>still-hard <<getWordMyPenis>> joins in on spraying its joy over your body, your <<if $fetish.sissy>>sissy<<else>>girlish<</if>> spurts paling next to <<his npc_cook>> firehose-like blast.<<else>><<getWordMyPenis>> <<if $player.body_ref.cumProduction>>crying tears of cummy joy at your treatment, the thin <<if $fetish.sissy>>sissy<<else>>girl<</if>>-cum dribbling down to meet with the thick pool of <<if $npc_cook.fem>><<getWordCum>><<else>>man-milk<</if>> dripping<<else>>trembling in ecstasy as thick <<if $npc_cook.fem>><<getWordCum>><<else>>man-milk<</if>> drips<</if>> from your abused ass<</if>><<else>>you cum hands free, your <<getWordMyPenis>> seeming less than an afterthought compared to the pleasure of your rear<</if>><<else>>you squirt with a massive orgasm... your cunt yet untouched<</if>>.<br>
<br>
You are barely able to move as you
<<default>>
ERROR! unknown scene.sex_style: <<=$scene.sex_style>>
<</switch>>
<<switch $scene.porn_style>>
<<case "bimbofication">>
softly whisper your thanks. "@@.pc;I love your cock...@@"
<<case "submission">>
softly whisper your thanks. "@@.pc;Thank you for using my body...@@"
<<case "bondage">>
can only shudder in residual joy as you take comfort in your bonds.
<<case "vanilla">>
moan softly. "@@.pc;Thank you...@@"
<<default>>
ERROR! unknown scene.porn_style: <<=$scene.porn_style>>
<</switch>>
<</if>>
<br><br>
[<<moveTo 'event_cook_training_finale_cleanup' 'Lay there and recover.' 900>>]
</div>/*#
#desc: cook porn finally - pink ponygirl revealed as barista, clean up
#status: RELEASED 0.9.2.0
#ignore_spell: 'tis,actin','er
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.template = "">>
<<if $scene.first>>
<<removeItemSet "farmgirl">>
<<addItem "blanket_drape">>
<<wearItem "blanket_drape" true>>
<</if>>
<<set $scene.count = 0>>
<<set $scene.suggestion = "">>
<<if $scene.pony>>
<<if $player.flags.porn.cyoponyventure.genre.bimbofication>><<set $scene.count++>><<else>><<set $scene.suggestion = "you act like a bimbo">><</if>>
<<if $player.flags.porn.cyoponyventure.genre.bondage>><<set $scene.count++>><<else>><<set $scene.suggestion = "you get tied up">><</if>>
<<if $player.flags.porn.cyoponyventure.genre.submission>><<set $scene.count++>><<else>><<set $scene.suggestion = "you act really submissive">><</if>>
<<if $player.flags.porn.cyoponyventure.genre.vanilla>><<set $scene.count++>><<else>><<set $scene.suggestion = "you play it more 'vanilla'">><</if>>
<<if $player.flags.porn.cyoponyventure.mood.innocent>><<set $scene.count++>><<else>><<set $scene.suggestion = "you act innocent">><</if>>
<<if $player.flags.porn.cyoponyventure.mood.desperate>><<set $scene.count++>><<else>><<set $scene.suggestion = "you act really desperate for sex">><</if>>
<<if $player.flags.porn.cyoponyventure.mood.randy>><<set $scene.count++>><<else>><<set $scene.suggestion = "you play it a bit aggressive and randy">><</if>>
<<if $player.flags.porn.cyoponyventure.sex_style.extreme>><<set $scene.count++>><<else>><<set $scene.suggestion = "we make love to you gently">><</if>>
<<if $player.flags.porn.cyoponyventure.sex_style.gentle>><<set $scene.count++>><<else>><<set $scene.suggestion = "we fuck you a bit rough">><</if>>
<<if $player.flags.porn.cyoponyventure.sex_style.rough>><<set $scene.count++>><<else>><<set $scene.suggestion = "we go all in and really force you to take it hard">><</if>>
<<if $scene.count == 10>>
<<set $player.flags.porn.cyoponyventure.finished = true>>
<</if>>
<<set $scene.pornId = 'cyoponyventure'>>
<<else>>
<<if $player.flags.porn.cyofarmventure.genre.bimbofication>><<set $scene.count++>><<else>><<set $scene.suggestion = "you act like a bimbo">><</if>>
<<if $player.flags.porn.cyofarmventure.genre.bondage>><<set $scene.count++>><<else>><<set $scene.suggestion = "you get tied up">><</if>>
<<if $player.flags.porn.cyofarmventure.genre.submission>><<set $scene.count++>><<else>><<set $scene.suggestion = "you act really submissive">><</if>>
<<if $player.flags.porn.cyofarmventure.genre.vanilla>><<set $scene.count++>><<else>><<set $scene.suggestion = "you play it more 'vanilla'">><</if>>
<<if $player.flags.porn.cyofarmventure.mood.innocent>><<set $scene.count++>><<else>><<set $scene.suggestion = "you act innocent">><</if>>
<<if $player.flags.porn.cyofarmventure.mood.desperate>><<set $scene.count++>><<else>><<set $scene.suggestion = "you act really desperate for sex">><</if>>
<<if $player.flags.porn.cyofarmventure.mood.randy>><<set $scene.count++>><<else>><<set $scene.suggestion = "you play it a bit aggressive and randy">><</if>>
<<if $player.flags.porn.cyofarmventure.sex_style.extreme>><<set $scene.count++>><<else>><<set $scene.suggestion = "we make love to you gently">><</if>>
<<if $player.flags.porn.cyofarmventure.sex_style.gentle>><<set $scene.count++>><<else>><<set $scene.suggestion = "we fuck you a bit rough">><</if>>
<<if $player.flags.porn.cyofarmventure.sex_style.rough>><<set $scene.count++>><<else>><<set $scene.suggestion = "we go all in and really force you to take it hard">><</if>>
<<if $scene.count == 10>>
<<set $player.flags.porn.cyofarmventure.finished = true>>
<</if>>
<<set $scene.pornId = 'cyofarmventure'>>
<</if>>
<<set $player.flags.porn.genre.cyoponyventure = true>>
<<set $player.flags.porn.genre.cyofarmventure = true>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pony>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_pony") setup.charImage("npc_barista","npc_barista_pony")>>
<<else>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
Too exhausted to move, you merely lie in a puddle of sweat, drool and thick <<if $fetish.cum>>horse-<</if>>cum as the illusory room around you shimmers and turns to an empty set, the hay bale upon which you lay becoming merely a generic box.<br><br>
<<if $scene.pony>>
Shedding her horse-head mask, the pink pony reveals herself to be <<=setup.getNpcName('npc_barista', 'nickname')>> from the office coffee shop!<br>
<br>
Noticing your attention, she gives a little bounce, her tits and artificial pink <<if $fetish.bestiality_soft>>horse<</if>>cock bouncing as she skips over and leans down to land a kiss on your cheek.<br>
<br>
"@@.npc_barista;Heya! That was pretty fun, huh?@@" A look of concern spreads over her face as you can barely weakly smile back. "@@.npc_barista;So, like... I think we may have been a bit much for her...@@" She notes looking back towards <<=setup.getNpcName('npc_cook', 'first')>>.<br>
<br>
<</if>>
Looking a bit nervous <<he npc_cook>> rushes over to your side.
<<switch $scene.sex_style>>
<<case "gentle">>
"@@.npc_cook;Yeh alright, <<callPlayer "npc_cook">>? We tried to be gentle, but 'tis hard not to go at it a bit with such ah sexy thing as yourself... and two on one can be a bit much for any girl.@@"
<<case "rough">>
"@@.npc_cook;Yeh alright, <<callPlayer "npc_cook">>? Ah know we got a bit energetic what with you being such a sexy pair of holes and all...@@"
<<case "extreme">>
"@@.npc_cook;Yeh alright, <<callPlayer "npc_cook">>? Ah suppose we were a bit rough with yeh, but you were actin' like you wanted it that way...@@"
<<default>>
ERROR! unknown scene.sex_style: <<=$scene.sex_style>>
<</switch>>
<br><br>
Sore and tired it is all you can manage to nod once before your head drifts to the side and you drool a bit.<br>
<br>
<<if $scene.pony>>
"@@.npc_barista;So, like... I don't think she's going to be able to go back to work like that...@@"<br>
<br>
<</if>>
"@@.npc_cook;Ach! Hell, I lost track of the time, <<=setup.getNpcName('npc_manager', 'other')>> is due back from her meeting any time and she'll be in a right mood if her little toy ain't put back in its proper place...@@" Glancing around <<=setup.getNpcName('npc_cook', 'first')>> seems to formulate a plan.<br>
<br>
<<if $scene.pony>>
"@@.npc_cook;Be a dear and gather her things, will yeh? I'll clean 'er up and carry her upstairs, mayhap she'll recover a bit by the time I reach her desk.@@"<br>
<br>
Giving a quick bob of assent <<=setup.getNpcName('npc_barista', 'nickname')>> skips to where you shed your "work" attire what seems so long ago. As she moves away you can't help but stare at her shiny pink latex bum, her large <<if $fetish.bestiality_soft>>horse<</if>>cock occasionally swinging wide enough to be seen even past her ample hips. From the shape of the way the rubber form-fits to her body you would judge she's got a sizable plug in her rear, which means odds are there's one in her other hole as well, same as when you first met her.<br>
<br>
<<printThought "Wow, I was so shocked and naive back then. Now look at me...">><br>
<br>
<</if>>
Looking down <<=setup.getNpcName('npc_cook', 'first')>> shakes <<his npc_cook>> head and sets to work, wiping you off, <<if $scene.porn_style == "bondage">>untying the ropes binding your body, <</if>>and removing what's left of your slutty farmgirl outfit. Drying you off and wiping clean your totally ruined makeup <<he npc_cook>> has you naked and presentable before attempting to help you to your feet.<br>
<br>
You try to stand, you really do, but you're just too weak-kneed from the hard ass-fucking, crumpling and only being saved from the floor by <<his npc_cook>> quick catch. Held in <<his npc_cook>> arms you can't help but swoon a bit, <<he npc_cook>> may not be as big and strong as <<=setup.getNpcName('npc_admin', 'first')>>, but the feeling of being caught by <<if $npc_cook.fem>>such a woman<<else>>a "real" man<</if>> would still have you weak in the knees even if you had the strength to stand.<br>
<br>
Holding you up <<he npc_cook>> wraps a blanket over your body, tying it to at least cover you up if not quite make you presentable for "office work".<br>
<br>
<<printThought "Then again... at this office? I suppose a blanket is actually a bit long and frumpy... would really need to be a bit shorter... and highlight some cleavage...">><br>
<br>
<<if $scene.pony>>
A coat and a kilt is sufficient to conceal <<his npc_cook>> harness and well-satisfied <<if $fetish.bestiality_soft>>horse<</if>>cock and <<he npc_cook>> tosses the mask in a bag before accepting the sack of your gathered belongings from <<=setup.getNpcName('npc_barista', 'first')>>.<br>
<br>
"@@.npc_barista;Have a good afternoon, see you soon!@@" she says with a smile as <<=setup.getNpcName('npc_cook', 'first')>> easily scoops you up into <<his npc_cook>> arms and heads out of the room.
<<else>>
The convenience of a kilt is confirmed as <<=setup.getNpcName('npc_cook', 'first')>> is dressed in moments, cock once again concealed for decency as <<he npc_cook>> gathers your things and scoops you up into <<his npc_cook>> arms.
<</if>>
<br><br>
Cuddled against <<his npc_cook>> chest you can feel <<if $scene.pony>>the leather of <<his npc_cook>> harness through <<his npc_cook>> jacket,<<else>><<his npc_cook>> muscular chest as you breathe deep and enjoy<</if>> the smell of <<his npc_cook>> sweat<<if $fetish.cum>> and cum<</if>> filling your nostrils.<br>
<br>
[<<moveTo 'event_cook_training_finale_post_1' '<<He npc_cook>> boards the elevator and heads upstairs.' 180>>]
<<else>>
Panting as you try to recover you manage to push yourself up onto your elbows and smile up at your partners.<br>
<br>
<<if $scene.pony>>Shedding <<his npc_cook>> horse-head mask <</if>><<=setup.getNpcName('npc_cook', 'first')>> shakes <<his npc_cook>> head in awe and looks down at you with a wry smile on <<his npc_cook>> face.<br>
<br>
<<if $scene.pony && $player.flags.porn.cyoponyventure.finished || !$scene.pony && $player.flags.porn.cyofarmventure.finished>>
"@@.npc_cook;Yeh really are the insatiable <<callPlayer "npc_cook">>! Another great job, and with that... it's in the can! I finally have all the footage I need to cut together a true opus: "<<=$player.flags.porn.pornname>> in: <<=setup.getPornTitle($scene.pornId)>>!"@@"
<<elseif $scene.count > 7>>
"@@.npc_cook;Yeh really are the insatiable <<callPlayer "npc_cook">>! Another great job, and we're gettin' close. Another shoot or two and I'll have all the footage I need to cut together a truly amazing bit of choose her adventure interactive porn!@@"
<<elseif $scene.count > 3>>
"@@.npc_cook;Yeh really are the insatiable <<callPlayer "npc_cook">>! Another great job, the footage is piling up! We'll still need to do a few more shoots to get it all, but it's going to be worth it... a truly stunning bit of choose her adventure interactive porn!@@"
<<else>>
"@@.npc_cook;Yeh really are the insatiable <<callPlayer "npc_cook">>! Another great job, unfortunately you pretty much repeated your first time, you need to experiment and mix it up if we're going to have enough footage to cut together a proper interactive pornveture!@@"
<</if>>
<br><br>
<<if $scene.pony>>
Thanking both of your co-stars for their efforts you share a quite enthusiastic congratulatory hug and kiss with <<=setup.getNpcName('npc_barista', 'first')>> who, pink pony mask removed, uses her tongue to give the inside of your mouth a friendly little massage.<br>
<br>
Finally slapping your co-star on her cute pink tush <<=setup.getNpcName('npc_cook', 'first')>> gets her to separate, her tail plug wiggling behind as she walks away, biting her lip as she glances back at <<him npc_cook>>.
<<else>>
You thank your co-star for <<his npc_cook>> efforts and <<he npc_cook>> grins. "@@.npc_cook;Aye! We captured magic today, and yeh got me off ta boot!@@"
<</if>>
<br><br>
Taking some time to get cleaned up you get prepare to leave.<br>
<br>
[<<moveTo 'room_citymap' 'Dress and head out.' 300 '<<useClothSetPop "tmp">>'>>]
<</if>>
</div>/*#
#desc: npc_ai has you get dressed and prepare to come to the "rescue" of npc_cook after porn shoot
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'drug_pickmeup_ultra'>>
<<applyStress -25>>
<<applyFatigue -100>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Shimmering into existence in a position "sitting" casually on your desk <<=setup.getNpcName('npc_ai', 'first')>> blinks at you.<br>
<br>
"@@.npc_ai;<<uc "I believe you are already quite familiar with that... recording. Even sped up she will be occupied watching for several minutes. I am hereby calling in your recently extended favour. Unit ">><<=uc(setup.getNpcName('npc_cook', 'first'))>><<uc " will be of more use to me in <<if $npc_cook.fem>>her<<else>>his<</if>> current position, so you need to get up and prove that <<if $npc_cook.fem>>she<<else>>he<</if>> has not... damaged you.">>@@"<br>
<br>
Wincing with effort, you try merely to sit up, but you are just too exhausted and stiff.<br>
<br>
"@@.npc_ai;<<uc "Do not worry, Unit ">><<=uc($player.first_name)>>. <<uc "I will help.">>@@"<br>
<br>
Before you can react, she extends a palm towards you, her holographic hand somehow expelling a small puff of mist. Tingly and tasting mildly of mint you can't help but inhale, your eyes almost instantly snapping open as you feel a surge of energy go through your body.<br>
<br>
Springing to your feet you feel almost manic, twitching and fidgeting, your previous aches and exhaustion suddenly a distant, strange memory.<br>
<br>
"@@.npc_ai;<<uc "Good, you are functional. Now dress.">>@@"<br>
<br>
[<<moveTo 'event_cook_training_finale_post_3' 'Put your clothes back on.' 300 '<<removeItem "blanket_drape" true>><<deleteItem "blanket_drape">><<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: barista drops off coffee for you to deliver to manager + cook after porn shoot
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
No longer feeling like you're going to race up the walls you are still feeling quite energetic by the time you have finished changing. About to head into your manager's inner office to "rescue" <<=setup.getNpcName('npc_cook', 'first')>> you are brought up short by a knock on the door.<br>
<br>
"@@.npc_ai;<<uc "Back to work, secretary, answer the door.">>@@"<br>
<br>
Finished speaking her holographic figure vanishes.<br>
<br>
<<printThought "I guess she doesn't want anyone else knowing about her helping me...">><br>
<br>
Walking over to the door you are surprised to find <<=setup.getNpcName('npc_barista', 'nickname')>> standing outside holding a pair of fresh coffees.<br>
<br>
"@@.npc_barista;Hey! You're looking better, that was pretty fun though, right?@@"<br>
<br>
A bit stunned — especially by the fact that she's still wearing the pink catsuit under her normal rubber maid outfit, you merely nod as you take the two drinks.<br>
<br>
"@@.npc_barista;Just as ordered — coffee with scotch and <<=ps(setup.getNpcName('npc_manager', 'other'))>> usual black with a dash of cream, freshly ground, pressed and delivered!@@"<br>
<br>
Before you can thank her she rises onto her toes to give you a peck on the cheek.<br>
<br>
"@@.npc_barista;Whelp, back to the cafe! Can't wait until we can get together for some more fun!@@"<br>
<br>
Spinning in place she walks away, leaving you still standing stunned until the door closes and there is a soft cough behind you.<br>
<br>
"@@.npc_ai;<<uc "Come on now, before it gets cold!">>@@"<br>
<br>
Turning around to see <<=ps(setup.getNpcName('npc_ai', 'first'))>> hologram standing with a hand on her hip. Nodding quickly you head towards the inner door to the private portion of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, starting to turn to avoid your AI "friend" only for her to blink a few feet to the side to get out of your way.<br>
<br>
"@@.npc_ai;<<uc "Remember your job.">>@@"<br>
<br>
[<<moveTo 'event_cook_training_finale_post_4' 'Nod and head into the inner office.' 180>>]
</div>/*#
#desc: npc_cook returns you to your office after porn shoot, ai helps you eavsdrop on his and manager's conversation
#status: RELEASED 0.9.2.0
#ignore_spell: ah'll,warn't
#*/
<<include enterroom>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
Safely held in <<=ps(setup.getNpcName('npc_cook', 'first'))>> arms, the roll of <<his npc_cook>> stride almost lulls you to sleep and you are unaware of seeing any other employees in the elevator or in the short walk up the hall to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
<<=setup.getNpcName('npc_cook', 'first')>> pauses and takes a deep breath outside the door, bracing <<him npc_cook>>self as <<he npc_cook>> opens and steps inside only to let out an obvious sigh of relief when the room proves empty.<br>
<br>
Tiptoeing over to your desk <<he npc_cook>> gently drapes you over your chair before placing the bag of your things to one side. Carefully pushing your splayed legs back together <<he npc_cook>> flashes a quick smile down at you.<br>
<br>
"@@.npc_cook;Well, eh, uh, I better get back to work... ah'll call yeh tonight, okay?@@"<br>
<br>
Glassy-eyed still you nod and <<he npc_cook>> turns to go, <<his npc_cook>> hand on the door out of the office when <<he npc_cook>> is brought up short by a sharp "@@.npc_manager;A-hem.@@"<br>
<br>
Wincing obviously <<he npc_cook>> turns slowly, like a statue rotating on a pedestal to find <<=setup.getNpcName('npc_manager', 'formal')>> standing in her doorway looking quite cross.<br>
<br>
"@@.npc_manager;Trying to sneak away like a thief in the night, are we? My office. Now.@@"<br>
<br>
She turns without even waiting to see if <<he npc_cook>> is going to follow but, though <<he npc_cook>> flashes a look of obvious concern your way <<he npc_cook>> does, slinking after her like a chastised child before softly closing the door behind.<br>
<br>
Trying to muster your strength you try to sit up only to be greeted by a message popping up on your computer.<br>
<br>
"@@.npc_ai;<<uc "Hello unit">> <<uc $player.first_name>><<uc ", it appears you are attempting to eavesdrop again. Would you like my help?">>@@"<br>
<br>
You reach for the keyboard to type only for her to seemingly read your response directly.<br>
<br>
"@@.npc_ai;<<uc "No need to type, I can monitor you in much more efficient ways. Transfering view.">>@@"<br>
<br>
Unlike the walk-through hologram from the previous time you are merely presented with a new window poping up on your screen showing a view looking down at your manager's office.<br>
<br>
<<=setup.getNpcName('npc_cook', 'first')>> stands in front of the large desk like the proverbial naughty school<<boy npc_cook>> as <<=setup.getNpcName('npc_manager', 'formal')>> walks around to take her seat, looking across... and somehow down at <<him npc_cook>> in a manner you are all too familiar with.<br>
<br>
"@@.npc_manager;So. I task you to use your... unique skills to help break in my cute <<if $fetish.sissy>>sissy<<else>>girl<</if>> and what do you do instead? You break her! Why, I have half a mind to make you take her place until my poor secretary has recovered...@@"<br>
<br>
"@@.npc_cook;Please! Ma'am, it warn't my intent! She's just a wee tired is all, she'll be right as rain with a night's rest, I'm certain!@@"<br>
<br>
"@@.npc_manager;While she has proven... resilient, I do not quite believe you. I suppose you have the raw footage of the trying ordeal you put my adorable secretary through?@@"<br>
<br>
<<switch $scene.sex_style>>
<<case "gentle">>
<<=setup.getNpcName('npc_cook', 'first')>> nods nervously. <<He npc_cook>> was as gentle as possible, really, but on video there's really no way the raw intensity of two horsecocks fucking a feminine little thing such as yourself won't be front and centre.<br>
<<case "rough">>
<<=setup.getNpcName('npc_cook', 'first')>> nods nervously. <<He npc_cook>> didn't exactly go out of <<his npc_cook>> way to treat you gently, a fact that will only be exacerbated on video seeing <<his npc_cook>> strong, <<if $npc_cook.fem>>dominant<<else>>masculine<</if>> form and giant horsecock compared to your smaller feminine frame.<br>
<<case "extreme">>
<<=setup.getNpcName('npc_cook', 'first')>> tries to hide <<his npc_cook>> wince, obviously remembering how brutally <<he npc_cook>> fucked you... not that you really minded, but there's no way the video makes <<him npc_cook>> look like anything other than a brute.<br>
<<default>>
ERROR! unknown scene.sex_style: <<=$scene.sex_style>>
<</switch>>
<br>
"@@.npc_manager;Very well, show me what you did to... "tire her out."@@"<br>
<br>
"@@.npc_cook;Yes ma'am.@@" <<He npc_cook>> replies, handing her a video crystal across the desk which she plugs.<br>
<br>
[<<moveTo 'event_cook_training_finale_post_2' 'Unseen from your angle the video starts up only for your own feed to cut out.' 180>>]
</div>/*#
#desc: deliver coffee to manager and cook after porn shoot, show that you're "ok"
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other_work' "theme_manager_other_porn"
4
'event_manager_cook_1'
true
>>
<<if $events.hasOwnProperty('cook_checkin')>>
<<removeEvent 'cook_checkin'>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 0, 21, 45)>>
<<addEvent "cook_porn_intro_call" _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Opening the door carefully you walk into the room to the sped up sound of two horse-cocks pumping into your body. With swift reflexes <<=setup.getNpcName('npc_manager', 'formal')>> pauses the video and looks at you with a raised eyebrow.<br>
<br>
"@@.npc_manager;My, my. It would appear that our slumbering cutie found her second wind.@@" You pass her her drink first before turning to the still shocked <<=setup.getNpcName('npc_cook', 'first')>> who accepts the coffee with dazed surprise.<br>
<br>
"@@.npc_manager;Well, it appears I was wrong about your failure. I suppose you may return to your duties now, <<=setup.getNpcName('npc_cook', 'other')>>.@@"<br>
<br>
"@@.npc_cook;Y-yes ma'am, of-of course.@@"<br>
<br>
Giving a sloppy <<if $npc_cook.fem>>curtsy<<else>>bow<</if>> <<he npc_cook>> glances as you in surprise a final time before hurrying out of the office.<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze lingers on <<him npc_cook>> until the door closes behind when it snaps to you. "@@.npc_manager;So...@@" she starts as she takes a slow sip of her coffee.<br>
<br>
<<if !$npc_manager.flags.cruel && $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;It's good to see you looking so chipper<<if !$player.makeup.permanent>>, pity about your makeup but, well... there really was no way it could survive what you put it through, hmm?<<else>>, good thing you have permanent makeup, otherwise what you went through would have left you quite the mess... instead of the cute, smiling face I look upon now.<</if>>@@"<br>
<br>
You blush, but you sense a real compassion behind her teasing as she flashes a momentary smile.<br>
<br>
You nervously thank her for the concern and ask her to please forgive <<=setup.getNpcName('npc_cook', 'first')>>, reminding her that <<he npc_cook>> was only doing <<his npc_cook>> job.<br>
<br>
The words are barely past your lips when you realise your mistake, fear tightening your well-used throat. There is a moment of silence before she replies, either missing or playing along with the ruse, you can't be certain.
<br>
"@@.npc_manager;Your job—@@" for an instant her eyes move away from your face, flicking up towards a corner of the ceiling
<<if setup.getTotalValue("smart") > 10>>
the very corner that would match the angle of the video feed you watched of her meeting...<br>
<br>
<<printThought "Wait... what does she know? Was this all part of her plan?... or was she acting as merely a pawn of someone even higher?">>
<</if>>
<br><br>
"@@.npc_manager;Ah, yes, <<his npc_cook>> job working on your little side career in porn... well, I suppose there is nothing against it in your contract, but... do be careful? I would hate for any harm to befall my beloved <<if $fetish.sissy>>SISSI <</if>>secretary...@@"<br>
<br>
You blush at the description, dropping into a curtsy and requesting permission to resume your duties.<br>
<br>
Her smile tells you that she definitely knows more than she is letting on, but after a moment of staring you down she nods.
<<elseif $npc_manager.flags.cruel || $npc_manager.anger > $npc_manager.affection && $npc_manager.anger > 5>>
"@@.npc_manager;I suppose your previous behaviour should not have made this a surprise. You're a disobedient trollop good for little else but your cute body and a <<if $player.body_ref.vagina>>set<<else>>pair<</if>> of holes... so you seeking to monetize such...@@"<br>
<br>
She shakes her head and you reflexively wince, anticipating yet another punishment.<br>
<br>
<<printThought "Why do I keep needling her... and why do I even stay around?">><br>
<br>
Remembering you agreement with <<=setup.getNpcName('npc_ai', 'first')>> you hold your tongue for a moment before apologising and begging for her to show leniency to <<=setup.getNpcName('npc_cook', 'first')>>, reminding her that <<he npc_cook>> was "only doing <<his npc_cook>> job." <br>
<br>
The words are barely past your lips when you realise your mistake, fear tightening your well-used throat. There is a moment of silence before she replies.<br>
<br>
"@@.npc_manager;Your job—@@" for an instant her eyes move away from your face, flicking up towards a corner of the ceiling
<<if setup.getTotalValue("smart") >= 10>>
the very corner that would match the angle of the video feed you watched of her meeting...<br>
<br>
<<printThought "Wait... what does she know? Was this all part of her plan?... or was she acting as merely a pawn of someone even higher?">>
<</if>>
<br><br>
"@@.npc_manager;Ah, yes, <<his npc_cook>> job working on your little side career in porn... well, I suppose there is technically nothing against it in your contract, and with your behaviour maybe preparing a secondary career path is the smart move... still, for the moment, at least, you remain under MY supervision, and I will not have my prop-, my SUBordinate damaged, do you understand?@@"<br>
<br>
You nervously nod, apologising further you hurriedly ask permission to resume your duties, hoping you might miraculously evade punishment.<br>
<br>
Her thin-pressed lips and penetrating expression has you wondering what more she knows about things but, finally, she nods.
<<else>>
"@@.npc_manager;What are we to do with you? You resist, you obey, then you resist again... and now I find you've been pursuing a side career in... shall we say... extreme film?@@"<br>
<br>
You blush, focusing on your deal with <<=setup.getNpcName('npc_ai', 'first')>> as you wait a moment to be sure not to interrupt before launching into your request for forgiveness for <<=setup.getNpcName('npc_cook', 'first')>>, reminding her that <<he npc_cook>> was "only doing <<his npc_cook>> job." <br>
<br>
The words are barely past your lips when you realise your mistake, fear tightening your well-used throat. There is a moment of silence before she replies.<br>
<br>
"@@.npc_manager;Your job—@@" for an instant her eyes move away from your face, flicking up towards a corner of the ceiling
<<if setup.getTotalValue("smart") >= 10>>
the very corner that would match the angle of the video feed you watched of her meeting...<br>
<br>
<<printThought "Wait... what does she know? Was this all part of her plan?... or was she acting as merely a pawn of someone even higher?">>
<</if>>
<br><br>
"@@.npc_manager;Ah, yes, <<his npc_cook>> job working on your little side career in porn... well, I suppose there is technically nothing against it in your contract, still, you should not be indulging during work hours. I, and this company, have spent quite a bit of time and money in training you for your position, so I would very much appreciate it if you would focus on your actual duties, is that clear?@@"<br>
<br>
You quickly agree, apologising again for your error before asking permission to resume your duties, half surprised that the word "punishment" hasn't come up.<br>
<br>
She seems to consider thing for a moment, her expression unreadable and you wonder what all she isn't letting on. Finally, she nods.
<</if>>
<br><br>
"@@.npc_manager;Of course... though, in the future? So long as it does not interfere with your responsibilities you may do whatever side-work you desire, but, when you are at the office? Within this walls you are MINE. You. work. for. me. Do I make myself clear?@@"<br>
<br>
You nod hurriedly, apologising once more before slipping out of the room.<br>
<br>
Closing the door, you fall back against it and let out a sigh. The way she said the word "@@.pc;Mine...@@" You shake your head, trying to refocus only to swear you hear the sound of your video resuming. Pressing your ear closer to the door meets only silence and you shake your head again, chalking it up to your imagination.<br>
<br>
Looking around, your work area <<=setup.getNpcName('npc_ai', 'first')>> is nowhere to be found. You hope you fulfilled your side of the agreement as you walk over to your desk, the brief rush of energy fading slightly as your earlier exhaustion nips in the distance.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' 'Get to work...' 180>>]
</div>/*#
#desc: cook calls you after final porn shoot to offer additional reshoots
#status: RELEASED 0.9.2.0
#ignore_spell: 'twas
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<addPhonenumber $phoneList 'npc_cook'>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_cook', 'first')>> calls and you answer the phone, memory of the intense shoot earlier in the day fresh in you mind.<br>
<br>
"@@.npc_cook;G'day, <<callPlayer "npc_cook">>, I'm sorry for whatever trouble you got into with yer manager, and I thank ye again for bailing me out! As to the reason I was callin' ye... I was reviewing today's footage to start editing and I 'twas struck by a brilliant idea.@@"<br>
<br>
Intrigued, you listen further.<br>
<br>
"@@.npc_cook;The chemistry ye have with me and that coffee slut... well, it 'twas truly amazing, and I feel like the scene could have been equally hot several other ways. I was thinking, and I know you were as well by the way you seemed to consider how you were going to have things play out, that we could make a sort of "chose her own adventure" interactive video. We'd just need footage of additional scene variations and then I could cut together something really special with multiple decision points AND multiple angles. So, yeah, let me know if you want to take another shot at filming to flesh out the options.@@"<br>
<br>
The idea sounds interesting and you tell <<him npc_cook>> you'll give <<him npc_cook>> a call when you're ready to take another shot at filming it.<br>
<br>
"@@.npc_cook;Great! I shan't risk doing things at work anymore, but just gimme a call on a weekend and I'll set things up.@@"<br>
<br>
<<He npc_cook>> thanks you once again for your help and hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: menu for porn start training with cook
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_visited += 1>>
<<set $scene.npc_cookvisit = true>>
<<include "calcCookCheckin">>
<</if>>
<<if $npc_cook.flags.porn.finale || ($player.flags.porn.genre.anal && $player.flags.porn.genre.oral)>>
<<set _background = "./images/locations/company_canteen.png">>
<<else>>
<<set _background = "./images/locations/storage.png">>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _background setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $player.flags.porn.genre.anal && $player.flags.porn.genre.oral && (!$player.body_ref.vagina || $player.flags.porn.genre.vag) && setup.hasFreeTime($now, $player, $currentTasks, 3600) && $scene.foodDelivery.done && $npc_manager.flags.evil != 1 && $npc_ai.stage >= 2 && !State.hasPlayed("event_cook_training_finale_cleanup")>>
Bypassing the line you catch the attention of <<=setup.getNpcName('npc_cook', 'first')>>. <<He npc_cook>> flashes a slightly mysterious smile before shaking <<his npc_cook>> head. "@@.npc_cook;Mastered your training and back for more? I anticipated as much, but today is going to be a wee bit different. To celebrate this right — and make a video your fans will never forget, we need more than just your lunch break. Fortunately I sussed out that yer manager is going to be cooped up all afternoon in some conference call. Her meal has been arranged so we'll have several hours to do this proper.@@"<br>
<br>
Your heart races at the thought — whatever <<he npc_cook>> has in mind will certainly be worth playing a little hooky, after all, you can always make up the work with a bit of extra effort.<br>
<br>
"@@.npc_cook;I went ahead and booked a room for us and set everything up — you head on over and get changed into the outfit I laid out for you and I'll be up as soon as I wrap up the lunch rush and get changed meself.@@"<br>
<br>
You're already wondering what all <<he npc_cook>> has setup, but hold your tongue — the surprise should make it even more exciting.<br>
<br>
<<if $fetish.pet_play>>
[<<moveTo 'event_cook_training_finale_start' 'Smile, nod, and head on down.' 300 "<<set $scene.pony=true>>">>]<br>
<<else>>
[<<moveTo 'event_cook_training_finale_start' 'Smile, nod, and head on down.' 300 "<<set $scene.pony=false>>">>]<br>
<</if>>
[<<moveTo 'event_cook_training_finale_decline' "Apologise and say you can't do it today." 300>>]<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Return to your desk.' 180>>]
<<else>>
Catching the eye of <<=setup.getNpcName('npc_cook', 'first')>> the two of you slip away to the storage room.<br>
<br>
<<if $npc_cook.flags.porn.times_visited == 1>>
"@@.npc_cook;Och, you've returned! Truth be told I dinah think I would see you again but you're back! Just can't resist taking another run at me <<if !$npc_cook.fem>>man <</if>>cannon, eh?@@"
<<else>>
"@@.npc_cook;Yeh back! And not a moment too soon, I could really use some relief! And, of course, the more you train the faster you'll improve, so it's in yer interest too!@@"
<</if>>
<br><br>
<<if $npc_cook.flags.porn.handjob_successful>>
<<if $npc_cook.flags.porn.times_sucked == 0 && $npc_cook.flags.porn.times_anal == 0 && $npc_cook.flags.porn.times_vag == 0>>
"@@.npc_cook;Now then, you're quite the precocious <<if $fetish.sissy>>sissy <</if>>lass, managing to stroke me to completion on your first try! But there's more to making it in porn than a cute face and nimble fingers. If you really want to make a splash you need to be fully capable with <<if $player.body_ref.vagina>>all three<<else>>both<</if>> of your sexy holes, <<if $player.body_ref.vagina>>that means yeh sweet lady palace, plus practicing<<else>>so we're going to practice<</if>> until you can sink those sexy lips to my root and feel my big balls slapping against<<if $player.body_ref.balls>> your cute little ones<<else>>yeh<</if>>.@@"<br>
<br>
<<printThought "Wait, <<he npc_cook>> expects me to take all of <<him npc_cook>>? That doesn't seem possible but... I guess <<hes npc_cook>> the professional...">><br>
<br>
"@@.npc_cook;So, what'll it be first, you wanna taste it, or feel it?@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_root' 'Say you want to first learn to suck <<his npc_cook>> cock.' 60>>]<br>
[<<moveTo 'event_cook_training_anal_root' 'Say you want to first feel <<his npc_cook>> cock stretching your ass.' 60>>]<br>
<<if $player.body_ref.vagina>>
[<<moveTo 'event_cook_training_vagina_root' 'Say your pussy needs a pounding.' 60>>]<br>
<</if>>
<<elseif $npc_cook.flags.porn.oral_stage >= 4 && $npc_cook.flags.porn.anal_stage >= 4 && (!$player.body_ref.vagina || $npc_cook.flags.porn.vag_stage >= 4)>>
"@@.npc_cook;You've proven yeh skill... but I guess if you want to keep practiced... I've got an idea for more... but youse should take care of yeh manager's order first, wouldn't want her gettin' testy over ah late lunch!@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_root' 'Say you want to practice sucking <<his npc_cook>> cock.' 60>>]<br>
[<<moveTo 'event_cook_training_anal_root' 'Say you want to feel <<his npc_cook>> cock stretching your ass.' 60>>]<br>
<<if $player.body_ref.vagina>>
[<<moveTo 'event_cook_training_vagina_root' 'Say your pussy needs a pounding.' 60>>]<br>
<</if>>
<<elseif $npc_cook.flags.porn.oral_stage >= 4>>
<<if $npc_cook.flags.porn.anal_stage >= 4>>
"@@.npc_cook;Two holes down, one to go, you ready to take me deep and plumb your rear depths?@@"
<<elseif $npc_cook.flags.porn.vag_stage >= 4>>
"@@.npc_cook;Two holes down, one to go, you ready to feel that babymaker stretch before meh?@@"
<<else>>
"@@.npc_cook;One hole down, <<if $player.body_ref.vagina>>two<<else>>one<</if>> to go, you ready to take me deep and plumb your lower depths?@@"
<</if>>
<br><br>
<<if $npc_cook.flags.porn.anal_stage >= 4>>
[@@.link_locked;You have already proven your anal aptitude.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_anal_root' 'Bend over and get ready to train.' 60>>]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if $npc_cook.flags.porn.vag_stage >= 4>>
[@@.link_locked;You have already proven your vaginal virtuosity.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_vagina_root' 'Say your pussy needs a pounding.' 60>>]<br>
<</if>>
<</if>>
[@@.link_locked;You have already proven your oral skills.@@]<br>
<<elseif $npc_cook.flags.porn.anal_stage >= 4>>
<<if $npc_cook.flags.porn.oral_stage >= 4>>
"@@.npc_cook;Two holes down, one to go, you ready to feel that babymaker stretch before meh?@@"
<<elseif $npc_cook.flags.porn.vag_stage >= 4>>
"@@.npc_cook;Two holes down, one to go, you ready to feel that slutty throat bulge around my cock?@@"
<<else>>
"@@.npc_cook;One hole down, <<if $player.body_ref.vagina>>two<<else>>one<</if>> to go, you ready to feel yer lips stretched around my cock?@@"
<</if>>
<br><br>
<<if $npc_cook.flags.porn.oral_stage >= 4>>
[@@.link_locked;You have already proven your oral skills.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_oral_root' 'Lick your lips and get ready to train.' 60>>]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if $npc_cook.flags.porn.vag_stage >= 4>>
[@@.link_locked;You have already proven your vaginal virtuosity.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_vagina_root' 'Say your pussy needs a pounding.' 60>>]<br>
<</if>>
<</if>>
[@@.link_locked;You have already proven your anal aptitude.@@]<br>
<<elseif $npc_cook.flags.porn.vag_stage >= 4 && $player.body_ref.vagina>>
"@@.npc_cook;One hole down, two to go, you ready to be more than just submissive and conventionally breedable?@@"<br>
<br>
<<if $npc_cook.flags.porn.oral_stage >= 4>>
[@@.link_locked;You have already proven your oral skills.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_oral_root' 'Lick your lips and get ready to train.' 60>>]<br>
<</if>>
<<if $npc_cook.flags.porn.anal_stage >= 4>>
[@@.link_locked;You have already proven your anal aptitude.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_anal_root' 'Bend over and get ready to train.' 60>>]<br>
<</if>>
[@@.link_locked;You have already proven your vaginal virtuosity.@@]<br>
<<else>>
"@@.npc_cook;Well then, what'll it be, shall we bulge that throat or fill <<if $player.body_ref.vagina>>one of yeh other sexy holes<<else>>that sexy ass<</if>>?@@"<br>
<br>
<<if $npc_cook.flags.porn.oral_stage >= 4>>
[@@.link_locked;You have already proven your oral skills.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_oral_root' 'Lick your lips and get ready to train.' 60>>]<br>
<</if>>
<<if $npc_cook.flags.porn.anal_stage >= 4>>
[@@.link_locked;You have already proven your anal aptitude.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_anal_root' 'Bend over and get ready to train.' 60>>]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if $npc_cook.flags.porn.vag_stage >= 4>>
[@@.link_locked;You have already proven your vaginal virtuosity.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_vagina_root' 'Say your pussy needs a pounding.' 60>>]<br>
<</if>>
<</if>>
<</if>>
<<if $npc_cook.flags.porn.anal_stage >= 4 && !$player.flags.porn.genre.anal &&
$npc_cook.flags.porn.oral_stage >= 4 && !$player.flags.porn.genre.oral &&
(($npc_cook.flags.porn.vag_stage >= 4 && !$player.flags.porn.genre.vag) || !$player.body_ref.vagina)>>
<br><br>
Tell <<him npc_cook>> you've changed your mind and you want to release your tapes and get into porn.<br>
<br>
[<<moveTo 'event_cook_training_pornstar_yes_all' "Ask for <<him npc_cook>> to release all videos and star in all kinds of porn." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_yes_anal' "Tell <<him npc_cook>> to just release the new, anal video, that you want to reserve the rest of your body for personal use." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_yes_oral' "Tell <<him npc_cook>> to just release the new, oral video, that you want to reserve your ass for personal use." 60>>]<br>
<<if $player.body_ref.vagina>>
[<<moveTo 'event_cook_training_pornstar_yes_vaginal' "Say you're ready to spread your legs to the world and just star in vaginal porn." 60>>]<br>
<</if>>
[<<moveTo 'event_cook_training_pornstar_no_oral' "Shake your head and decline the offer." 60>>]
<<else>>
<<if $npc_cook.flags.porn.oral_stage >= 4 && !$player.flags.porn.genre.oral>>
[<<moveTo 'event_cook_training_pornstar_yes_oral' "Tell <<him npc_cook>> you'd like <<him npc_cook>> to release your oral training video." 60>>]<br>
<</if>>
<<if $npc_cook.flags.porn.anal_stage >= 4 && !$player.flags.porn.genre.anal>>
[<<moveTo 'event_cook_training_pornstar_yes_anal' "Tell <<him npc_cook>> you want to release your anal sex training video and appear in such porn." 60>>]<br>
<</if>>
<<if $npc_cook.flags.porn.vag_stage >= 4 && !$player.flags.porn.genre.vag>>
[<<moveTo 'event_cook_training_pornstar_yes_vaginal' "Tell <<him npc_cook>> you're ready to spread your legs to the world and star in vaginal porn." 60>>]<br>
<</if>>
<</if>>
<<if $npc_cook.flags.porn.oral_stage >= 4>>
<<if State.hasPlayed("event_janitor_elevator_2_3")>>
<<if State.hasPlayed("event_janitor_training_cook_1")>>
[@@.link_locked;You have already educated <<=setup.getNpcName("npc_janitor", "first")>> on how to take monster cock.@@]<br>
<<else>>
[<<moveTo "event_janitor_training_cook_1" 'Summon <<=setup.getNpcName("npc_janitor", "first")>> to learn how to take monster cock..' 600>>]<br>
<</if>>
<</if>>
<</if>>
<br>
[<<moveTo 'event_cook_training_decline' 'Change your mind and decline to train today.' 60>>]
<<else>>
<<if $npc_cook.flags.porn.times_handjob == 1>>
"@@.npc_cook;Now you made a valiant attempt, for an amateur, at jerking me off, but that's just the first step — once you master jerking me off we can get to training your <<if $fetish.sissy>>sissy <</if>>holes, but first you need the stamina to attend to me package by hand.@@"
<<else>>
"@@.npc_cook;You're gettin' better, but until you can last long enough to jerk me to completion there's no sense in even starting with your actual holes. Ye may want to work on training your stamina elsewhere if you hope to endure long enough to cause me <<if $npc_cook.fem>>girl gun<<else>>man fountain<</if>> to unleash.@@"
<</if>>
<br><br>
[<<moveTo 'event_cook_handjob_1' 'Loosen up your wrists and get ready to jerk <<him npc_cook>> off.' 300>>]<br>
[<<moveTo 'event_cook_training_decline' 'Change your mind and decline to train today.' 60>>]
<</if>>
<</if>>
</div>/*#
#desc: decide not to do porn star training
#status: RELEASED 0.8.2.0
#ignore_spell: reconsid'a,'a
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_cook', 'first')>> frowns as you explain you need to go.<br>
<br>
"@@.npc_cook;Really? Aye... you're a cruel <<callPlayer "npc_cook">>! Gettin' me all hot an' bothered and leaving me with these great blue balls! Begone you cruel tease!@@"<br>
<br>
As you approach the door <<he npc_cook>> makes a final comment after you.<br>
<br>
"@@.npc_cook;As well as rude this be a really unprofessional move. You need to reconsid'a such behaviour if you really want to pursue this line 'a work.@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Scurry off.' 180>>]
</div><<if $npc_cook.flags.porn.handjob_successful && $npc_cook.flags.porn.anal_stage < 4 || $npc_cook.flags.porn.oral_stage < 4 || $player.body_ref.vagina && $npc_cook.flags.porn.vag_stage < 4>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 22, 30)>>
<<addEvent 'cook_checkin' _nextDate>>
<<elseif $events.hasOwnProperty('cook_checkin')>>
<<removeEvent 'cook_checkin'>>
<</if>>/*#
#desc: cook calls you after a week
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<applyExperience 'penis' 8 'little' $ALONE>>
<<set _penis = setup.getTotalValue("penis")>>
<<changeHorny _penis>>
<</if>>
<<set $player.location = 'Phonecall'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text message and
<<if $scene.bondage>>
manage to stretch in your bondage just enough to reach your phone and look, no... scroll
<<else>>
open it up to find yourself looking, no... scrolling,
<</if>>
down the length of a massive, and familiar <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>>.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
The sight of <<his npc_cook>> glorious member has you licking your lips in anticipation as you phone chimes again with the follow-on text message.
<<else>>
You have to catch your breath after the sight of <<his npc_cook>> massive member, your thoughts interrupted by the chime of a follow-on text message.
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
Your heart races as you find yourself unable to look away from the image on your phone, only interrupted by the chime of a follow-on text message
<<else>>
Your heart pounds with fear. Not at the picture, but at the thoughts it seems to spawn in your head. Your phone chimes again with a follow-on text message.
<</if>>
<</if>>
<br><br>
"@@.npc_cook;Hi, <<callPlayer "npc_cook">>! I missed you! Was just thinking it's been a while — the both of us are hoping to see you at lunch this week — your holes won't train themselves!@@"<br>
<br>
You fire back that you'll see how your week goes.<br>
<br>
<<if $scene.beforetasklocation.last() == "room_wake_up">>
[<<moveTo $scene.beforetasklocation.last() "Go back to sleep." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>><<startSleep $player $scene>>">>]
<<else>>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 0 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: enter pornstar name
#status: FINISHED 0.8.2.0
#*/
<center>
<<textbox "$scene.pornname" "" autofocus>>
</center>
<br>
@@.textRightSide;
<<button "Okay">>
<<moveTo 'event_cook_training_pornstar_name'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: cook judges your chosen pornstar name
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_5'
4
'event_admin_pornstar_1'
false
>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_0'
4
'event_manager_pornstar_1'
false
>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_porn_0'
4
'event_technician_pornstar_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' "About becoming a porn star."
4
'event_psychiatrist_session_cook_porn_star_1'
false
>>
<<set $scene.acceptname = "">>
<<if $scene.pornname.toLowerCase() == $player.first_name.toLowerCase()>>
<<set $scene.acceptname = "samename">>
<<elseif $scene.pornname.toLowerCase() == $player.last_name.toLowerCase()>>
<<set $scene.acceptname = "lastname">>
<<elseif $scene.pornname.toLowerCase() == $npc_manager.first_name.toLowerCase() || $scene.pornname.toLowerCase() == $npc_manager.last_name.toLowerCase()>>
<<set $scene.acceptname = "manager">>
<<elseif $scene.pornname.toLowerCase() == $npc_cook.first_name.toLowerCase() || $scene.pornname.toLowerCase() == $npc_cook.last_name.toLowerCase()>>
<<set $scene.acceptname = "cook">>
<<elseif $scene.pornname.toLowerCase() == 'sissy' || $scene.pornname.toLowerCase() == 'sissyname'>>
<<set $scene.acceptname = "sissy">>
<<elseif $scene.pornname.toLowerCase() == 'bimbo'>>
<<set $scene.acceptname = "bimbo">>
<<elseif $scene.pornname.toLowerCase() == 'frisk' || $scene.pornname.toLowerCase() == 'chara'>>
<<set $scene.acceptname = "undertale">>
<<elseif $scene.pornname.toLowerCase() == 'sans' || $scene.pornname.toLowerCase() == 'papyrus' || $scene.pornname.toLowerCase() == 'gaster' || $scene.pornname.toLowerCase() == 'wingdings'>>
<<set $scene.acceptname = "undertale2">>
<<elseif $scene.pornname.toLowerCase() == 'slut'>>
<<set $scene.acceptname = "slut">>
<<elseif $scene.pornname.toLowerCase() == 'pornstar'>>
<<set $scene.acceptname = "pornstar">>
<<elseif $scene.pornname.toLowerCase() == 'master' || $scene.pornname.toLowerCase() == 'mistress' || $scene.pornname.toLowerCase() == 'dominatrix'>>
<<set $scene.acceptname = "master">>
<</if>>
<<if ["","samename","lastname"].includes($scene.acceptname)>>
<<set $player.flags.porn.pornname = $scene.pornname>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.npc_cook;So you want to work under the name <<=$scene.pornname>>?@@"<br>
<br>
<<switch $scene.acceptname>>
<<case "samename" "lastname">>
<<set _approve=true>>
"@@.npc_cook;Shooting porn under your real name? I admire the confidence, and I bet your future fans will too!@@"<br>
<br>
<<case "manager">>
"@@.npc_cook;Isn't that the name of your boss? Yeah, that seems a bad idea, what if she found out?@@"<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
<<printThought "Even with as much of a masochist I've become I don't think I'd enjoy the punishment she'd mete out for that...">>
<<else>>
<<printThought "I don't even want to imagine what punishment she'd give out for that...">>
<</if>>
<br><br>
"@@.npc_cook;Come on now, get creative!@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
<<case "master">>
"@@.npc_cook;Really? No offense to your "mastery" of taking cock, but I don't think the implications of that name are at all applicable to you! As well as being kind of generic, all you'd accomplish would be to confuse any potential fans. Try again, and something appropriate this time!@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
<<case "sissy" "slut" "pornstar" "bimbo">>
"@@.npc_cook;Now that isn't creative at all! You want to stand out in this industry, have a name that'll stick in customer's heads so they know who to ask for, try again!@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
<<case "undertale">>
"@@.npc_cook;Oh no. We are not going down that road. The last thing we need here is another person with determination starting another global war! Porn is about love, not war! Give it another shot!@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
<<case "undertale2">>
"@@.npc_cook;Why would you want to be called like a font? Font's aren't sexy, well, maybe Helvetica is a bit of a tramp... whatever, try again!@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
<<case "cook">>
"@@.npc_cook;Come on, <<callPlayer "npc_cook">>, that's my name! I have to look after my own branding here... plus it would would get confusing! Try again@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
<<set _approve=true>>
"@@.npc_cook;You want to use your real name in porn? Not a terrible choice, authenticity, and all, and I guess you've already gone through one name change recently, eh?@@"<br>
<br>
<<default>>
<<set _approve=true>>
"@@.npc_cook;<<=$scene.pornname>>? Hmm, yeah, <<=$scene.pornname>> sounds good, I could jerk it to that.@@"<br>
<br>
<</switch>>
<<if _approve>>
<<if $player.flags.porn.genre.oral && $player.flags.porn.genre.anal && $player.flags.porn.genre.vag>>
<<if $fetish.bestiality_soft>>
"@@.npc_cook;So I'll be releasing three videos — <<=$scene.pornname>> in Shut me up and Pound my Horse Throat and <<if !$npc_cook.fem>>The Stallion Who Would Mount<<else>>Mounting<</if>> the Girl: A <<=$scene.pornname>> Lust Story... and <<=$scene.pornname>>: Spread and Bred.@@"
<<else>>
"@@.npc_cook;So I'll be releasing three videos — <<=$scene.pornname>> and Her Bottomless Bimbo Throat and Bigger and Deeper: <<=$scene.pornname>> Takes it All and <<=$scene.pornname>>: Spread and Bred.@@"
<</if>>
<<elseif $player.flags.porn.genre.oral && $player.flags.porn.genre.anal>>
<<if $fetish.bestiality_soft>>
"@@.npc_cook;So I'll be releasing two videos — <<=$scene.pornname>> in Shut me up and Pound my Horse Throat and <<if !$npc_cook.fem>>The Stallion Who Would Mount<<else>>Mounting<</if>> the Girl: A <<=$scene.pornname>> Lust Story.@@"
<<else>>
"@@.npc_cook;So I'll be releasing two videos — <<=$scene.pornname>> and Her Bottomless Bimbo Throat and Bigger and Deeper: <<=$scene.pornname>> Takes it All.@@"
<</if>>
<<elseif $player.flags.porn.genre.oral && $player.flags.porn.genre.vag>>
<<if $fetish.bestiality_soft>>
"@@.npc_cook;Once I get it all edited I'll be releasing two videos: <<=$scene.pornname>> in Shut me up and Pound my Horse Throat and <<=$scene.pornname>>: Spread and Bred.@@"
<<else>>
"@@.npc_cook;Once I get it all edited I'll be releasing two videos: <<=$scene.pornname>> and Her Bottomless Bimbo Throat and <<=$scene.pornname>>: Spread and Bred.@@"
<</if>>
<<elseif $player.flags.porn.genre.anal && $player.flags.porn.genre.vag>>
<<if $fetish.bestiality_soft>>
"@@.npc_cook;Once I get it all edited I'll be releasing two videos: <<if !$npc_cook.fem>>The Stallion Who Would Mount<<else>>Mounting<</if>> the Girl: A <<=$scene.pornname>> Lust Story and <<=$scene.pornname>>: Spread and Bred.@@"
<<else>>
"@@.npc_cook;Once I get it all edited I'll be releasing two videos: Bigger and Deeper: <<=$scene.pornname>> Takes it All and <<=$scene.pornname>>: Spread and Bred.@@"
<</if>>
<<elseif $player.flags.porn.genre.oral>>
<<if $fetish.bestiality_soft>>
"@@.npc_cook;Once I get it all edited I'll be releasing your first video titled "<<=$scene.pornname>> in Shut me up and Pound my Horse Throat" and "<<if !$npc_cook.fem>>The Stallion Who Would Mount<<else>>Mounting<</if>> the Girl: A <<=$scene.pornname>> Lust Story".@@"
<<else>>
"@@.npc_cook;Once I get it all edited I'll be releasing your first video titled <<=$scene.pornname>> and Her Bottomless Bimbo Throat and Bigger and Deeper: <<=$scene.pornname>> Takes it All".@@"
<</if>>
<<elseif $player.flags.porn.genre.anal>>
<<if $fetish.bestiality_soft>>
"@@.npc_cook;Once I get it all edited I'll be releasing your first video titled <<if !$npc_cook.fem>>The Stallion Who Would Mount<<else>>Mounting<</if>> the Girl: A <<=$scene.pornname>> Love Story.@@"
<<else>>
"@@.npc_cook;Once I get it all edited I'll be releasing your first video titled Bigger and Deeper: <<=$scene.pornname>> Takes it All.@@"
<</if>>
<<elseif $player.flags.porn.genre.vag>>
"@@.npc_cook;Once I get it all edited I'll be releasing your first video titled <<=$scene.pornname>>: Spread and Bred.@@"
<<else>>
ERROR: no pornstar flags set!
<</if>>
<br><br>
"@@.npc_cook;Here's my number, give me a call if you're interested in starring in a shoot or two. I'll wire you your share of profits. Once this hits the airwaves I'm sure we'll be getting requests for you to star in more videos.
<<if $player.flags.porn.genre.oral && $player.flags.porn.genre.anal>>
With your proven experience well, I imagine you could be getting all kinds of offers, hardcore anal, bukkake, humiliation, extreme feminisation and bimbofication, slave training, double penetration, <<if $player.flags.porn.genre.vag>>triple penetration, <</if>>gangbangs, maybe the odd private "bespoke" videoshoot with a VIP... you know, all that perverted stuff you love so much.
<<elseif $player.flags.porn.genre.oral>>
As it stands I'd expect we'll be seeing more of what you've proven yourself at; oral mostly, maybe some bukkake or a more "story" thing with humiliation or extreme feminisation and bimbofication, y'know, all that stuff you love.
<<elseif $player.flags.porn.genre.anal>>
As it stands I'd expect we'll be seeing swift interest in that hot ass of yours, so expect mostly hardcore anal type scenes, maybe something more "storyline focused" sex slave thing or a private job where a VIP wants to have a personal video with a "whore," all the sort of things you love to do.
<<elseif $player.flags.porn.genre.vag>>
I imagine we should have no trouble filling your hole... well, occupying it; short of me<<if $fetish.fisting>> and fisting there<</if>> ain't many that can claim to fill it...
<</if>>
Yeah... you've got the makings of a real star.@@"<br>
<br>
Taking <<his npc_cook>> business card you find yourself already fantasising about the various things <<he npc_cook>> listed off, but it's time to return to your "normal" job. Thanking <<him npc_cook>> again you head off.<br>
<br>
<<printThought "What a day! I'm a pornstar now! <<if $fetish.sissy>>Sissy <<=$scene.pornname>>, <</if>>Bimbo <<=$scene.pornname>>, Slut <<=$scene.pornname>>... cumdumpster <<=$scene.pornname>> wow, they all sound so good!">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Happy and full of cum you head back to your desk.' 180>>]
<</if>>
</div>/*#
#desc: cook mistakenly identifies you and pulls you aside for a handjob
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
You're standing in the lunch line as you usually do when you hear a voice call out.
<<if $fetish.sissy && $npc_prostitute.first_name == "Sissy">>
"@@.npc_cook;<<=setup.getNpcName("npc_prostitute","first")>>?@@"
<<else>>
"@@.npc_cook;You're late!@@"
<</if>>
<br><br>
<<if setup.getTotalValue("feminization") > 10>>
Though somewhat surprised and confused, you look up, locking gazes with <<=setup.getNpcName('npc_cook', 'first')>>.
<<else>>
Out of <<if $fetish.sissy && $npc_prostitute.first_name == "Sissy">>some depraved <</if>>reflex you look up to lock gazes with <<=setup.getNpcName('npc_cook', 'first')>>.
<</if>>
<br><br>
Almost immediately <<he npc_cook>> steps out of the kitchen to your side of the counter.<br>
<br>
"@@.npc_cook;Och! I was expecting you at the end of lunch! Nevermind, it's a good thing, I need your attentions something fierce, come with me!@@"<br>
<br>
<<His npc_cook>> hand on your arm is strong, but not really aggressive. Nonetheless you find yourself following along behind as <<he npc_cook>> pulls you out of line and rushes you into what proves to be a private storage room.<br>
<br>
You're confused more than anything, baffled as to what <<hes npc_cook>> talking about or why you've been singled out, but you've been so overwhelmed in general of late that it isn't until the latch clicks closed behind you that you realise that maybe you shouldn't have mindlessly followed along...<br>
<br>
<<printThought "Uh-oh, what's going on, should I speak up for myself?">><br>
<br>
Looking back around you find that <<=setup.getNpcName('npc_cook', 'first')>> has raised <<his npc_cook>> kilt to reveal... a monster.<br>
<br>
<<printThought "They say see something, say something but... they should have sent a poet...">><br>
<br>
[<<moveTo 'event_cook_handjob_start' 'Gawk at <<his npc_cook>> member.' 60>>]<br>
[<<moveTo 'event_cook_handjob_flee' 'Flee!' 180>>]
</div>/*#
#desc: opportunity to give cook first handjob
#status: RELEASED 0.8.2.0
#ignore_spell: ovah
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' 'theme_psychiatrist_cook_3'
4
'event_psychiatrist_session_cook_handjob_1'
false
>>
<<if $fetish.bestiality_soft>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' 'theme_psychiatrist_cook_0'
4
'event_psychiatrist_session_cook_dick_1'
false
>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $fetish.bestiality_soft>>
You gaze in dumbstruck shock. You have never seen a penis like this. Scratch that, penis is too genteel a word, this is a COCK, a big, fat, hard horsecock. Thicker than your wrist and longer than your forearm it is as monstrous as it is mesmerising — from its purple heart-shaped tip to its darker base. Staring at it has you petrified, yet unable to look away.
<<else>>
You gaze in dumbstruck shock. You have never seen a penis like this. Scratch that, penis is too genteel a word, this is a COCK, a big, fat, hard cock far larger than could possibly be natural. Thicker than your wrist and longer than your forearm it is as monstrous as it is mesmerising — from its thick mushroom tip to its closely-shaven base. Staring at it has you petrified, yet unable to look away.
<</if>>
<br><br>
"@@.npc_cook;Come on <<callPlayer "npc_cook">>! It ain't gunna stroke itself! I told them to warn yeh aboot it now git on ovah here and do your job before I pass out from all the blood this beast is hoarding!@@"<br>
<br>
You need to make your move, you're closer to the door than <<he npc_cook>> is so you could probably escape this inhuman nightmare, but do you want to? A part of you is curious, whispering that if you turn your back now you may never know what something so monstrous, so... glorious feels like...<br>
<br>
[<<moveTo 'event_cook_handjob_1' 'Jerk <<him npc_cook>> off.' 60>>]<br>
[<<moveTo 'event_cook_handjob_flee' 'Run.' 180>>]
</div>/*#
#desc: run away when presented with cook handjob
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.handjob_fled = true>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Tearing your eyes away from <<=ps(setup.getNpcName('npc_cook', 'first'))>> trouser titan you rush out of the storage room and sprint through the lunchroom. Slipping out the door you don't stop running until you are up the hall and back at your desk, cowering behind your computer in fear.<br>
<br>
Several minutes pass without anyone following and your heart finally stops racing. No way are you going to risk returning to the canteen for your manager's lunch so you take a deep breath and attempt to distract yourself with work.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start_nofood' 'Start working.' 1>>]
</div>/*#
#desc: give cook a handjob
#status: RELEASED 0.8.2.0
#ignore_spell: willnae
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if !$npc_cook.flags.porn.handjob_attempted>>
You reach out, half expecting <<=ps(setup.getNpcName('npc_cook', 'first'))>> massive member to be a mirage. But as your fingers brush the warm, scratch that, HOT flesh you know it is real.<br>
<br>
"@@.npc_cook;Oh yeah, that's a good <<callPlayer "npc_cook">>. It won't bite, it just needs a wee bit of a rub...@@"<br>
<br>
<<if $fetish.bestiality_soft>>
Even ignoring its inhuman shape, <<his npc_cook>> cock would be bizarre, but as it is you have to adapt everything you know to its animalistic profile, unable to help but marvel at the weirdly wide tip transitioning to the thick shaft.
<<elseif $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<His npc_cook>> cock is almost wider than <<if $fetish.sph>>your pitiful member is<<else>>you are<</if>> long, your hands looking tiny as they attempt to wrap around <<his npc_cook>> girth.
<<case 2 3>>
<<His npc_cook>> cock is massive and intimidating, practically another species from your own, average member.
<<case 4 5>>
<<His npc_cook>> cock is far larger than even your above-average member, what you would consider beyond the limits of human potential, if you were not staring directly at it.
<<case 6>>
<<His npc_cook>> cock is even larger than your own massive member, what you would consider beyond the limits of human potential, if you were not staring directly at it.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
<<His npc_cook>> cock is massive, your hands looking tiny as your fingers fail to wrap around its girth.
<</if>>
<<else>>
Once more you reach out towards <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>>. You recall your prior failure to outlast and conquer it, but you steel your resolve, perhaps this time will be different.
<</if>>
Moistening your palms with <<his npc_cook>> copious precum you rub down the length of <<his npc_cook>> shaft as <<he npc_cook>> lets out a <<if $npc_cook.fem>>high pitched<<else>>deep<</if>> moan. Looking up you note that your subject is already spacing out, <<his npc_cook>> eyes fluttering as <<he npc_cook>> focuses with obvious pleasure on your tender touch.<br>
<br>
"@@.npc_cook;That's the stuff, but firm up yer grip, it willnae break!@@"<br>
<br>
[<<moveTo 'event_cook_handjob_2' 'Keep stroking.' 300>>]
</div>/*#
#desc: continue giving cook handjob
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_handjob += 1>>
<<applyExperience 'strength' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'stamina' 15 'terrible' $SEEN_STRANGER>>
<<if setup.getTotalValue('stamina') >= 10>>
<<set $npc_cook.flags.porn.handjob_successful = true>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Squeezing as firmly as you can, you continue to stroke <<his npc_cook>> cock, your entire arm getting a workout as you rub <<his npc_cook>> length. Jerking <<=setup.getNpcName('npc_cook', 'first')>> off is the marathon of handjobs, each stroke requires your hand to travel over a foot, your fingers spread wide around <<his npc_cook>> girth.<br>
<br>
Despite the relatively primitive technique <<he npc_cook>> is obviously enjoying the attention, dripping copious precum even as <<his npc_cook>> tennis-ball sized testicles remain sweaty and full, recalcitrant in unleashing their obviously heavy bounty.<br>
<br>
<<if $npc_cook.flags.porn.handjob_successful>>
<<if setup.getTotalValue("stamina") > 15>>
This isn't precisely why you've spent so much time in the gym, but your "work" is paying off —
<<else>>
You are testing the limits of your arm stamina when you feel <<him npc_cook>> tense,
<</if>>
the mammoth member stiffening ever so slightly and the balls pulling up like a pair of cannonballs rising into the air.<br>
<br>
A moment later, it happens. With your hands wrapped around <<his npc_cook>> shaft you can feel it as if in slow motion, the flood of cum working its way down <<his npc_cook>> length, causing <<him npc_cook>> to bulge a little larger until it sprays you in the face. Flinching you turn it to the side after you take the initial shot square on, but the torrent continues, thick ropey blasts of cum dwarfing a "normal" load even more than <<his npc_cook>> cock eclipses any natural <<getWordPenis "npc_cook">>.<br>
<br>
By the time <<he npc_cook>> is finally spent and slips limp from your grasp <<he npc_cook>> has sprayed close to half a gallon, <<his npc_cook>> balls looking like deflated limes rather than the full oranges <<he npc_cook>> was sporting at the start.<br>
<br>
"@@.npc_cook;Aye, <<callPlayer "npc_cook">>, that's what I needed, and more! Sorry for the mess, but it looks like you missed your clothes at least!@@"<br>
<br>
To your surprise it appears that <<he npc_cook>> is correct; though your face is caked and a nearby box is drenched, your clothes escaped unscathed.<br>
<br>
No longer focused on your "job," you taste the <<getWordCum>>, it is strong and heady, as thick as molasses, but with a pungent potency like aged scotch.<br>
<br>
It is like nothing you have tasted before,
<<if setup.getTotalValue("cum") >= 15>>
and yet intensely delicious — the caviar of cum. Eagerly you scrape it off your face and lick your fingers clean, unable to focus on anything else until you have slurped up every drop, your belly gurgling in fullness as you barely restrain yourself from lapping up more from the dirty storage room floor.
<<elseif setup.getTotalValue("cum") >= 10>>
but you savour its bitter strength. Running your fingers over your face you scrape up what <<he npc_cook>> deposited on you, licking up each drop with eager relish.
<<elseif setup.getTotalValue("cum") >= 5>>
strong and thick, like a <<if $npc_cook.fem>>type of<<else>>manly<</if>> syrup. Its flavour is hard to pin down, but tasty enough to have you using your fingers to scrape up and lick clean most of what <<he npc_cook>> sprayed your face with before gratefully accepting a towel to dry off the remainder.
<<else>>
strong and thick and disgusting. Spitting out what you can you gratefully accept a towel to wipe off the rest.
<</if>>
<<else>>
You do your best, but soon your fingers are cramping and your forearms are on fire and still, <<he npc_cook>> hasn't cum. The normal technique of switching off hands is useless since it takes both hands to come anywhere close to handling <<his npc_cook>> length and you are finally forced to admit defeat, lacking the stamina to meet the needs of <<his npc_cook>> mammoth <<if !$npc_cook.fem>>masculine <</if>>mace.<br>
<br>
Falling back you let <<his npc_cook>> cock drop from your fingers, the thick member letting out a final pitiful spurt as <<=setup.getNpcName('npc_cook', 'first')>> groans in disappointment.<br>
<br>
"@@.npc_cook;Nay, not another poor <<callPlayer "npc_cook">> defeated by my <<if $npc_cook.fem>>dick<<else>>manhood<</if>>...@@"
<</if>>
<br><br>
[<<moveTo 'event_cook_handjob_3' 'Continue.' 180>>]
</div>/*#
#desc: finish giving cook handjob
#status: RELEASED 0.8.2.0
#ignore_spell: tha'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_cook.flags.porn.handjob_successful>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' "theme_psychiatrist_cook_5"
4
'event_psychiatrist_session_cook_handjob_success_1'
false
>>
<<applyExperience 'cum' 13 'terrible' $SEEN_STRANGER>>
<<include "calcCookCheckin">>
<</if>>
<<set $scene.reactName = !$npc_cook.flags.reactnamechange>>
<<set $npc_cook.flags.reactnamechange = true>>
<<set $scene.firstTime = !$npc_cook.flags.porn.handjob_attempted>>
<<if $scene.firstTime>>
<<set $npc_cook.flags.porn.handjob_attempted = true>>
<<set $npc_cook.flags.porn.first_handjob = $npc_cook.flags.porn.handjob_successful>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.firstTime>>
<<He npc_cook>> looks back at you and blinks, as if seeing you for the first time.<br>
<br>
<<if $scene.reactName>>
"@@.npc_cook;Wait, are you... <<=$player.original_first_name>>... didn't you work as a secretary or something?@@"<br>
<br>
You start to explain that, actually, you go by <<=$player.first_name>> now, but don't get much further before <<his npc_cook>> face blanches with fear and <<he npc_cook>> interrupts.
<<else>>
"@@.npc_cook;Wait, aren't you... <<=$player.first_name>>... didn't you work as a secretary or something?@@"<br>
<br>
You start to explain that you still do but don't get much further before <<his npc_cook>> face blanches with fear and <<he npc_cook>> interrupts.
<</if>>
<br><br>
"@@.npc_cook;So you aren't going by <<=setup.getNpcName("npc_prostitute","first")>>?@@"<br>
<br>
<<if $fetish.sissy && $npc_prostitute.first_name == "Sissy">>
You shake your head explaining that while you are <<if $fetish.sissy>>a Social Interaction Service Syndicate Secretary or <<if $fetish.sissy>>SISSI <</if>>Secretary<<else>>quite girly<</if>>, that isn't your name.<br>
<br>
<<if $fetish.sissy>>
"@@.npc_cook;<<if $fetish.sissy>>SISSI <</if>>Secretary? Never heard it as meaning THAT before.@@"<br>
<br>
<<printThought "Wait, <<=setup.getNpcName('npc_manager', 'formal')>> said that was the usual term for my position...">>
<<else>>
"@@.npc_cook;I see, well, I guess I can see why that was confusing.@@"
<</if>>
<<else>>
<<if $npc_prostitute.profile>>
You shake your head and explain that, while you know someone with that name, you are not she.
<<else>>
You shake your head and explain that you were just caught up in the moment.
<</if>>
<br><br>
"@@.npc_cook;Oh, aye... talk about embarrassing. I admit that I get a bit light headed when I'm in the throes of, but I've never had something like this happen!@@"
<</if>>
<br><br>
"@@.npc_cook;Anyway, if you work here as a secretary that means... my gods! I didnae mean... I was caught up in the cock-haze! I thought you were someone else, <<if $fetish.sissy && $npc_prostitute.first_name == "Sissy">>I was told that the girl I had hired was named <<=setup.getNpcName("npc_prostitute","first")>>, so <</if>>when you stood there looking so cute and then responded to <<if $fetish.sissy && $npc_prostitute.first_name == "Sissy">>the name<<else>>my call<</if>>... I am so sorry! I promise I would never impose myself on someone unwilling! Why did yeh not speak something?@@"<br>
<br>
Things start to make sense as you realise this was all a case of mistaken identity. <<He npc_cook>> thought you were some prostitute <<he npc_cook>> hired rather than a fellow employee.<br>
<br>
"@@.npc_cook;Och, I cannae begin to apologise! I know I've been a daft right bastard, but I beg yeh not to report me. I need this job. Where do yeh work? I have to make it up to you... I can have your lunch delivered every day for free? Just text me the order and it'll be there in a jif if you could just pretend this whole thing didnae happen...@@"<br>
<br>
Despite all that happened you didn't really object to anything, and <<he npc_cook>> didn't force you to do anything so you technically WERE a willing participant. You try to clear your head before looking back at <<him npc_cook>>. So long as you don't think about <<his npc_cook>> giant cock just out of view <<he npc_cook>> actually looks kind of sweet, a little <<if $npc_cook.fem>>rough<<else>>gruff<</if>>, but obviously contrite so you nod.<br>
<br>
<<printThought "It would be mean to ruin <<his npc_cook>> life over something that was partially my fault. Besides, it'll be nice to do something during lunch break rather than stand in line for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> food.">><br>
<br>
You agree to brush it off and turn to go as <<he npc_cook>> arranges <<his npc_cook>> kilt to fully conceal <<his npc_cook>> limp, but still massive, member.<br>
<br>
As you reach for the door <<he npc_cook>> calls after you.<br>
<br>
"@@.npc_cook;I know this wasn't what you intended, and I may be being a bit forward in saying this but... yeh showed a fair dash of spunk with your efforts. An eager <<callPlayer "npc_cook">> like you could make good money in porn. I used to work in the industry meself, so if you ever felt like giving this old <<if $npc_cook.fem>>lass<<else>>lad<</if>> a bit of relief I could pass along some tips, maybe help you with some connections...?@@"<br>
<br>
Blushing hard you mumble an unintelligible response and hurry on your way. Your lunch period nigh over your rush back to your desk, empty-handed.<br>
<br>
<<set _lunchEnd = setup.setNextDate($now, 0, $player.work.time_midday.hour, $player.work.time_midday.minutes)>>
<<set _tmpSeconds = setup.secondsToDate($now,_lunchEnd)>>
[<<moveTo 'event_cook_handjob_4' 'Start working.' _tmpSeconds>>]
<<else>>
<<if $npc_cook.flags.porn.handjob_successful>>
You smile in triumph as you finish cleaning up.<br>
<br>
Satisfied pleasure is written across <<his npc_cook>> face as <<he npc_cook>> nods with a smile.<br>
<br>
"@@.npc_cook;Well done, <<callPlayer "npc_cook">>! Now tha' we've seen you have the stamina to keep up with me monster we can move forward and start training those cute holes of yours for the pleasures I can give.@@"<br>
<br>
<<if !$scene.foodDelivery.done>>
<<=setup.getNpcName("npc_cook","first")>> swiftly tosses together your lunch order and then you're hurrying back to the office.<br>
<br>
<</if>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'You pridefully lick your lips and give a curtsy of thanks before heading on your way.' 180 "<<if $player.work.foodID != '' && !$scene.foodDelivery.done>><<addItem $player.work.foodID>><</if>>">>]
<<else>>
You apologise for another failure but, though the aroused frustration is written on <<his npc_cook>> sweaty face <<he npc_cook>> tries to comfort you.<br>
<br>
"@@.npc_cook;Aye, at least yeh tried, that be more than many a <<callPlayer "npc_cook">> has the courage for. You're doing better, tho', I could feel <<if $npc_cook.fem>>it<<else>>he<</if>> was close! A little more time in the gym and you'll have the stamina to outlast me monster for certain!@@"<br>
<br>
You sigh at your failure but <<=setup.getNpcName("npc_cook","first")>> tries to cheer you up <<if !$scene.foodDelivery.done>> as <<he npc_cook>> swiftly tosses together your lunch order<<else>>before you head back to work<</if>>.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Return to work.' 180 "<<if $player.work.foodID != '' && !$scene.foodDelivery.done>><<addItem $player.work.foodID>><</if>>">>]
<</if>>
<</if>>
</div>/*#
#desc: return late from lunch due to handjob
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.foodDelivery.done>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.foodDelivery.punished=true>>
<<set $scene.skipMakeupInspect=true>>
<<set $scene.managerOut=true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You attempt to work, but find yourself constantly distracted, unable to get the picture of the cook's colossal cock out of your mind.<br>
<br>
<<printThought "Something so big... could <<he npc_cook>> even fuck with it? How would that feel... Goddess, it would be like being split in half...">><br>
<br>
<<if !$scene.foodDelivery.done>>
Distracted by your thoughts you don't notice <<=setup.getNpcName("npc_manager","formal")>> emerge from her inner office until she is standing over your desk, looking quite cross.<br>
<br>
"@@.npc_manager;Well? Where is my lunch, <<=$player.first_name>>?@@"<br>
<br>
You stutter and stumble, something about mistaken identity, unable to bring yourself to mention what you saw, and felt... you find yourself struggling to even believe the reality of what you saw... and you touched the thing!<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sighs and pinches her nose in frustration. "@@.npc_manager;I do not have time for this. Fortunately for you I am on my way to a meeting and can easily make it into a lunch meeting... but do show greater planning in the future. Obtaining my lunch is one of your duties and one you should not shirk, no matter what... confusion comes up in the canteen.@@"<br>
<br>
She strides out of the office and you release a held breath. You've escaped without a punishment... though you're still a bit muddled over all that happened during your lunch break.<br>
<br>
<</if>>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' 'Work.' 180 "<<set $scene.foodDelivery.done=true>>">>]
</div>/*#
#desc: cook oral training options
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' 'theme_psychiatrist_cook_10'
4
'event_psychiatrist_session_cook_difficulty_oral_1'
false
>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<switch $npc_cook.flags.porn.oral_stage>>
<<case 0>>
"@@.npc_cook;Alright, before we start.@@" <<=setup.getNpcName('npc_cook', 'first')>> leads off, taking a suddenly serious tone. "@@.npc_cook;What's your experience? I mean orally. I know I agreed tah train yeh, but knowin' where yer from would help us avoid any confusion like what led you to feeling forced to jerk me off.@@"<br>
<br>
<<if !$player.virgin.blowjob>>
[<<moveTo 'event_cook_training_oral_lie' "Lie and tell <<him npc_cook>> you've sucked your share of cocks." 60>>]<br>
[<<moveTo 'event_cook_training_oral_denied' "Admit that you've never sucked a cock." 60>>]
<<elseif setup.getTotalValue("penis") > 10>>
[<<moveTo 'event_cook_training_oral_1' "Tell <<him npc_cook>> you've sucked your share of cocks... though not nearly as many as you'd like." 60>>]<br>
[@@.link_locked;You love <<getWordPenis "npc_cook">> too much to even think of denying your cockmongering ways.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_oral_1' "Tell <<him npc_cook>> you've sucked your share of cocks." 60>>]<br>
[<<moveTo 'event_cook_training_oral_lie' "Lie and say you've never sucked cock." 60>>]
<</if>>
<<case 1>>
"@@.npc_cook;Ready to take another suck? I know it seems like you've a long way to go... and you do, but the only prescription is practice... and cock!@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_1' "Open wide!" 300>>]
<<case 2>>
"@@.npc_cook;Look at that eager cocksucker! Ye ready to take another lick of me big shillelagh?@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_2' "Nod eagerly." 60>>]
<<case 3>>
"@@.npc_cook;Mmm, I'm already thinking about your throat bulging around my cock, let's get to it, you're so close to your goal!@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_3' "Smile and nod, your thoughts already spinning with dropping to your knees with your head tilted back and your mouth open wide!" 180>>]
<<case 4>>
The cook grins with pride.
<<if $npc_cook.flags.porn.vag_stage < 4 || $npc_cook.flags.porn.anal_stage < 4>>
"@@.npc_cook;Not that I wouldn't enjoy pounding that face of yours... but perhaps yeh might prefer to spend the time training one of yer other, less experienced, holes?@@"
<<else>>
The cook grins with pride. "@@.npc_cook;Yeh have already proven your throat, <<callPlayer "npc_cook">>! But I shan't say no to another quick round with that delightful orifice!@@"
<</if>>
<br><br>
[<<moveTo 'event_cook_training_oral_4' "Kneel down for some quick throat training." 300>>]
<<default>>
ERROR: unexpected npc_cook.flags.porn.oral_stage : <<=$npc_cook.flags.porn.oral_stage>>
<</switch>>
</div>/*#
#desc: admit to cook that you are a blowjob virgin
#status: RELEASED 0.8.4.0
#ignore_spell: n't, da'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $player.flags.humiliationStyle == "embarrassed">>
Blushing like the bashful <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are you reluctantly admit you haven't ever sucked a cock.
<<else>>
You're surprised at how embarrassed it feels to admit that you HAVEN'T sucked anyone's cock.
<</if>>
<br><br>
"@@.npc_cook;Thanks for the honesty. Some girls insist on claiming experience they don't have, and it's a bad idea, as well as being unprofessional! I know it seems a simple thing in the porno — girls just opening wide for a thick, spicy sausage, but there's a technique and an art to sucking cock. What with my own... dimensions I da' n't think it be fair to spread your cute jaw before yeh have a chance to taste a mere mortal member. Let me know when you've tasted a few cocks and I'll show you what REAL size is like.@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "You can tell <<he npc_cook>> won't be swayed by additional argument so you depart." 60>>]
</div>/*#
#desc: lie to cook about your experience to try to get him to oral train you
#status: RELEASED 0.8.4.0
#ignore_spell: n't,da','nother,willnae,d'nay,intah
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if !$player.virgin.blowjob>>
As easily as the words tumble from your lying lips <<he npc_cook>> seems to sense that a cock has never passed the other direction.<br>
<br>
"@@.npc_cook;I know it seems a simple thing in the porno — girls just opening wide for a thick, spicy sausage, but there's a technique and an art to sucking cock. What with my own... dimensions I da' n't think it be fair to spread your cute jaw before yeh have a chance to taste a mere mortal member. Let me know when you can suck cock as well as you lie about such and we can start training.@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "You can tell <<he npc_cook>> won't be swayed by additional argument so you depart." 60>>]
<<else>>
"@@.npc_cook;D'nay think I can't tell cock-sucking lips when I see them. You're looking to git intah porn! Feigned innocence willnae impress me unless it's fer the cameras! Be proud that you've tasted dick! But know that me monster is a whole 'nother animal compared to what you've savoured before!@@"<br>
<br>
<<He npc_cook>> grins up at you as you can't help but stare down at <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>> smiling even wider at the hint of fear in your eyes <<he npc_cook>> continues. "@@.npc_cook;Since yer nay some blushing lilly let's give those lying lips a little taste!@@"<br>
<br>
<<if $fetish.bestiality_soft>>
[<<moveTo 'event_cook_training_oral_1' 'Ready yourself for your first taste of horsecock.' 60>>]<br>
<<else>>
[<<moveTo 'event_cook_training_oral_1' 'Ready yourself for your first taste of <<his npc_cook>> monstrous cock.' 60>>]<br>
<</if>>
[<<moveTo 'event_cook_training_decline' 'Change your mind and decline to train today.' 60>>]
<</if>>
</div>/*#
#desc: start oral training 1 - beg to suck his cock, take him into your throat
#status: RELEASED 0.8.4.0
#ignore_spell: ta'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.oral_stage = 1>>
<<set $npc_cook.flags.porn.times_oral = 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Flashing a grin <<=setup.getNpcName("npc_cook","first")>> brandishes <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>> in all its glory. "@@.npc_cook;Alright, <<callPlayer "npc_cook">>, even though your mouth will be mostly occupied with things other than speaking you need to understand that porn is more than just being a willing hole for <<if !$npc_cook.fem || !$options.fem>>men, or <</if>>properly equipped women, or others, ta' use. You are portraying a fantasy, but you need to convince people that it isn't, that you aren't acting, but that you are experiencing it for real. In this case that means you need to convince the camera — I mean me that you don't just want to suck my cock, that you need it.@@"<br>
<br>
"@@.npc_cook;This isn't just a blowjob, it's a sacred act. You need to hunger for it, thirst for it, demonstrate that your life will be empty and meaningless unless your lips are wrapped around me cock. And remember that this is just the beginning — if you are going to make it in porn you need to be prepared to endure some harshness. That said, we're professionals... well, I am, you may be someday. Whatever I do is ta' help you prepare you for your future job and that this is all only happening because you consented, so with that established... let's begin yeh oral training.@@"<br>
<br>
You take a deep breath and choose your words carefully.<br>
<br>
<<printThought "This is really happening... I'm not just going to suck <<his npc_cook>> cock. <<He npc_cook>> wants me to beg for it!">><br>
<br>
[<<moveTo 'event_cook_training_oral_1a' 'Ask <<him npc_cook>> if you can try to suck <<his npc_cook>> cock now.' 180 "<<set $scene.acting = false>>">>]<br>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo 'event_cook_training_oral_1a' 'Drop to your knees and beg to have <<his npc_cook>> cock in your mouth.' 180 "<<set $scene.acting = true>>">>]
<<else>>
[@@.link_locked;You don't love cock enough to credibly beg for <<his npc_cook>> monstrosity.@@]
<</if>>
</div>/*#
#desc: oral training 1 - beg to suck his cock
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.acting>>
Your mouth is already watering in anticipation as you drop to your knees.<br>
<br>
"@@.pc;Please, <<sir npc_cook>>, may I worship your cock? Ever since I first laid eyes on it I can scarcely think of anything else. I need to taste it, to feel it against my tongue, to wrap my lips around it, tilt my head back and have it slide into my throat. Visions of it fill my dreams, but I always wake up sadly empty. Please, end my quest and let my mouth taste heaven.@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_1b' 'Your speech complete you let your jaw drop open as you blink up at <<him npc_cook>>.' 60>>]<br>
<<else>>
<<if setup.getTotalValue("penis") < 10>>
The more you stare at <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horsecock<<else>><<getWordPenis "npc_cook">><</if>> the more it scares you.
<</if>>
Your voice cracks nervously as you softly request permission to suck <<his npc_cook>> cock.<br>
<br>
[<<moveTo 'event_cook_training_oral_1a_fail' 'Blink up at <<him npc_cook>> and await <<his npc_cook>> response.' 60>>]<br>
<</if>>
</div>/*#
#desc: oral training 1 - fail to show enough enthusiasm for his cock
#status: RELEASED 0.8.4.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_cook","first")>> sighs in disappointment, <<his npc_cook>> expression making it clear that you are nowhere near meeting <<his npc_cook>> expectations.<br>
<br>
"@@.npc_cook;Ah, you poor <<callPlayer "npc_cook">>. I know some <<if $npc_cook.fem || $options.fem>>girls<<else>>men<</if>> like the shrinking violet act, but right now, in this moment, I need to be certain that you... want my cock... in your mouth. I know that my... endowment sets me apart from most <<if $npc_cook.fem>>people<<else>>men<</if>>, so, with this being your first time spreading your lips for me, I need to be sure that there is not a trace of hesitation or reluctance in your mind.@@"<br>
<br>
You sigh, given how desperate <<he npc_cook>> had been just for a handy you hadn't thought <<he npc_cook>>'d be such a stickler, though a glance at <<his npc_cook>> monstrous dick does confirm that <<he npc_cook>> has a point.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "<<Hes npc_cook>> right, I don't have to pretend. In here I can, and should, show <<him npc_cook>> how I really feel, how much I just LOVE cock!">><br>
<br>
[<<moveTo 'event_cook_training_oral_1b' 'Try again to show <<him npc_cook>> the true depths of your desires.' 60>>]<br>
<<else>>
<<printThought "I guess I'm not that good of a performer, maybe if I should spend time on method acting to get past my jitters?">><br>
<br>
<</if>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Apologise for wasting <<his npc_cook>> time and promise to do better next time." 60>>]<br>
<<if $player.makeup.messed > 25>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Stop by the bathroom to fix your makeup first." 300 "<<set $player.makeup.messed = 0>>">>]<br>
<</if>>
</div>/*#
#desc: oral training 1 - suck him off
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'oral' 'extreme_oral' 'cook_oral'>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_cook","first"))>> half-hard cock stiffens in obvious approval at your words, rising slowly until it is pointed almost directly at your face. <<He npc_cook>> takes a slow step towards you, <<if $fetish.bestiality_soft>>the flared, equine<<else>><<his npc_cook>> thick mushroom<</if>> tip glistening with pre as your gaze remains fixated upon its magnificence.<br>
<br>
Moving closer <<his npc_cook>> cock bobs just in front of you, all you have to do is lean forward...<br>
<br>
"@@.npc_cook;Isn't it wonderful? Introduce yourself. Give it a kiss. Show it that you will take care of it and make it happy.@@"<br>
<br>
Leaning forward you take gentle hold of <<his npc_cook>> cock, feeling how heavy it is in your hands as you blink up at <<him npc_cook>> and lay a wet kiss on its moist tip.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
The taste is everything you could have wanted and more. <<if $npc_cook.fem>>Feminine<<else>>Masculine<</if>> and strong, the pinnacle of cock flavour infused even into the thin precum. You shudder in anticipation of what <<his npc_cook>> actual <<getWordCum>> will taste like were you to empty <<his npc_cook>> heavy balls into your mouth.
<<elseif setup.getTotalValue("cum") > 5>>
The taste is familiar, and yet more concentrated, more pure than any cock you have had before. You start to understand how one might become addicted to blowjobs, if every dick tasted this good... why it would revolutionize the world...
<<else>>
Despite your dislike of cum <<his npc_cook>> dick tastes... well, not good, but interesting. Strong and heady it has a pure potency to it that sets it apart. You could imagine that, if you were the sort of person that liked the taste of cock and cum, it would be quite delicious, but you aren't that sort of person... <<printThoughtGlitch "yet">>
<</if>>
<br><br>
"@@.npc_cook;Mmm... that's nice. Now get a firm grip, open wide, and let us see how deep that cute throat goes...@@"<br>
<br>
<<if setup.getTotalValue("oral") > 7>>
It's time, even if it is the mere first stage of your "training," what is before you is far more than a mortal cock, taking a deep breath you exhale slowly, enjoying the little gasp of pleasure <<he npc_cook>> lets out at the soft breeze.<br>
<br>
[<<moveTo 'event_cook_training_oral_1_success' "Spreading your lips wide you close your eyes and slowly lean forward..." 60>>]
<<else>>
<<His npc_cook>> cock appears even larger from so near. Your fingers are unable to even wrap around its lower shaft you wonder if taking it is a blusterous fantasy.<br>
<br>
[<<moveTo 'event_cook_training_oral_1b_fail' "Putting aside these misgivings you concentrate on the tip, spreading your mouth wide and leaning forward." 60>>]
<</if>>
</div>/*#
#desc: oral training 1 - fail to take his cock into your throat
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'oral' 'extreme_oral' 'cook_oral'>>
<<changeMakeupMessed 25>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Kissing <<=ps(setup.getNpcName("npc_cook","first"))>> cock once more, this time you let your lips linger, spreading over the wet head, savouring the taste <<if $fetish.bestiality_soft>>and the bestial shape <</if>>of <<his npc_cook>> tip. Wider and wider your lips spread until finally, your jaw near to its max, you slide over the tip and let it fully into your mouth.<br>
<br>
"Just the tip" is almost enough to fill your mouth and you find yourself gazing fearfully down the long, thick shaft beyond. Letting out a muffled moan you put your tongue to work, licking around and behind <<if $fetish.bestiality_soft>>the velvet-soft frills around the head<<else>>the plump mushroom head<</if>>.<br>
<br>
<<=setup.getNpcName('npc_cook', 'first')>> lets out an approving moan. "@@.npc_cook;That's it, suck it, get your body used to it, get it nice and moist for its journey deeper down your pretty little throat.@@"<br>
<br>
Letting the monster slide forward you it presses against your throat and you feel a gag coming on. Quickly you pull it away, stroking the length of <<his npc_cook>> cock with your hands and trailing drool as you blink up at <<him npc_cook>>.<br>
<br>
"@@.pc;It's so big! and my throat is so small! I love how it feels, but I don't know if I can take it any deeper.@@"<br>
<br>
<<He npc_cook>> gently strokes your face as you continue to pump on <<his npc_cook>> shaft. "@@.npc_cook;There, there, I won't say it will be easy, but if you believe in yourself, I believe in you. Just think about how good it will feel to have my balls on your chin, to be blessedly full.@@"<br>
<br>
"@@.pc;Mmmm, you make it sound so amazing, <<sir npc_cook>>! I'll try!@@" You blink up as <<he npc_cook>> smiles down in support and you take a firm grip a few centimetres down <<his npc_cook>> shaft and bring your head forward.<br>
<br>
Your lips spread around the thick head once again, but this time you push further, not stopping until it is at the back of your throat. You cough gently around the fleshy obstruction, but try to hold in place, your eyes on one hand a few centimetres in front of your lips as your "goal marker" as your other hand begins to stroke up and down <<his npc_cook>> shaft.<br>
<br>
Bobbing your head slightly allows your lips and tongue to do their jobs, but every attempt to go further has your gag reflex rising to force you to back off. Still, with your hand pumping and lingering to fondle <<his npc_cook>> big, full testicles <<he npc_cook>> seems to be enjoying <<himself npc_cook>>, cooing in approval at your beginner's effort.<br>
<br>
<<His npc_cook>> verbal encouragement cuts off as <<his npc_cook>> breaths start to come quicker and you feel <<his npc_cook>> balls tighten in your hand as the last warning before their contents burst forth. Lips tightly wrapped around <<his npc_cook>> tip your cheeks bulge with the first blast, but another follows swiftly after. More than you can contain, or swallow, cum shoots out from around <<his npc_cook>> cock as <<he npc_cook>> disgorges the full, massive load.<br>
<br>
The burst of flavour across your tongue is like no other cum you have tasted. As thick as syrup it streams down your face, dribbling past your lips as you struggle, and fail, to contain it.
<<if setup.getTotalValue("cum") > 15>>
Strong and fragrant it is one of the best things you have ever tasted, you want to gorge yourself on it, to bathe in it, to suckle every meal from here until eternity from <<his npc_cook>> wonderful cock.
<<elseif setup.getTotalValue("cum") >= 10>>
For all that you love the taste of cum this is that on steroids, stronger, better, thicker than any other, a true heavenly draught that you eagerly suck down.
<<elseif setup.getTotalValue("cum") > 5>>
Stronger and more "cummy" than any other you have drunk you can't help, but swallow as quickly as you can; still not enough to avoid it running down your chin and over your chest, but plenty to whet your whistle while leaving you thirsty for more.
<<else>>
You may not like the bitter, salty flavour of cum, but <<his npc_cook>> taste is still intriguing. Stronger and thicker than any you have experienced before it particularly makes your teaspoon-sized loads seem dainty and pathetic, a flood of flavour flowing down your chin as you reflexively swallow so as not to drown.
<</if>>
<br><br>
After several more pulses <<his npc_cook>> balls are finally empty, <<his npc_cook>> cock softening as you allow it to slip from your lips.<br>
<br>
Though <<he npc_cook>> glows with post-orgasmic satisfaction you feel unaccomplished, you didn't even take <<him npc_cook>> the length of a "normal" cock, <<his npc_cook>> vastness seeming even more insurmountable after such a pathetic attempt.<br>
<br>
[<<moveTo 'event_cook_training_oral_1_cleanup' "Thank <<him npc_cook>> for sharing <<his npc_cook>> cock with you." 60>>]
</div>/*#
#desc: oral training 1 - succeed in taking him into your throat
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.oral_stage = 2>>
<<changeMakeupMessed 25>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Your lips part to slide over <<if $fetish.bestiality_soft>>the velvet-soft frills around the head of <<his npc_cook>> horsecock<<else>>the plump mushroom head of <<his npc_cook>> massive cock<</if>>. Your tongue licks with delight as you lean further forward, placing one hand at <<his npc_cook>> root while the other tries to encircle a narrower part of <<his npc_cook>> shaft several centimetres down from the tip.<br>
<br>
Looking forward your closer hand represents your goal, a rough marker of the length of a "normal" cock it isn't much more than a third of <<his npc_cook>> massive extent, but it would represent <<his npc_cook>> thick tip spearing fully into your throat, a challenging goal in and of itself.<br>
<br>
Breathing through your nose and looking up at <<him npc_cook>> for encouragement you make your first attempt. Pressing <<his npc_cook>> tip against the back of your throat you push as hard as you can until you can't take it anymore, jerking back and coughing hard.<br>
<br>
Gasping and drooling, you have a feeling you're going to be a mess no matter how this goes, but <<he npc_cook>> reaches down to brush your hair and tenderly stroke your cheek.<br>
<br>
"@@.npc_cook;I know it's challenging, but yeh can do it. I can feel the cock-sucking spirit within you, let it out, and let me in.@@"<br>
<br>
Your confidence fortified with renewed determination you nod. "@@.pc;Yes, <<sir npc_cook>>! I was meant to suck your cock!@@"<br>
<br>
You almost lunge forward this time, your attention focused not on your closer hand and its fingers marking the reasonable "first milestone," but gazing further on towards your hand around the base, unable to even imagine what it would feel like for your nose to advance far enough to press against <<his npc_cook>> groomed crotch.<br>
<br>
You pause as <<he npc_cook>> rams into the back of your throat. You cough once, but press on, taking advantage of the throat-spasm of your cough to drive deeper, almost choking as the meat missile spears through.<br>
<br>
Trembling with exertion you feel your abused gag reflex rising up, but you drive off your toes, pushing forward until your lips brush your finger.<br>
<br>
Eyes wide in sensory overload your instincts scream that you're choking, but you try to fight past. Your whole body trembles as your nostrils flare and your throat spasms around its intruder, your hands squeezing <<his npc_cook>> cock like a drowning person grabbing a lifeline.<br>
<br>
The combination of the sight of you at new depths down <<his npc_cook>> shaft combined with the constant, frantic reactions of your body proves just the thing as you feel <<his npc_cook>> cock swelling in sequence, the base thickening, then forcing your other hand open wider before the tip swells and <<he npc_cook>> shoots a potent load of <<getWordCum>> right down your throat.<br>
<br>
The force of <<his npc_cook>> ejaculate is the final straw, too much for your straining body to control, the force sends your head flying back as <<he npc_cook>> fountains thick ropes of cum over your face.<br>
<br>
Struggling to catch your breath all you can do is close your eyes protectively as <<he npc_cook>> sprays your face, <<his npc_cook>> thick load coming in multiple blasts, shooting past your still-gaping jaw and painting the rest of your face before trickling down onto your chest.<br>
<br>
The fountainous spray finally stopping you open your eyes, blinking clear of their thin coating of semen and releasing your desperate grip on <<his npc_cook>> cock.<br>
<br>
"@@.npc_cook;Aye, that's my girl! How does it feel?@@"<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
You can't help but take a moment to gargle and savour the heady flavour of your mouthful of <<his npc_cook>> cum before tilting your head back to let it flow down your abused throat, the thick, warm cream strangely soothing.
<<elseif setup.getTotalValue("cum") >= 10>>
You moan with lust, almost not wanting to swallow the delicious <<getWordCum>> filling your mouth. Giving your tongue a final swirl you gulp it down before licking your lips and responding to <<his npc_cook>> query.
<<elseif setup.getTotalValue("cum") > 5>>
Outside of your dreams you've never had this much cum in your mouth at one time and it takes a couple gulps to finish swallowing the thick, tasty <<getWordCum>> down so you can speak.
<<else>>
Even though the taste is too bitter, and too strong, you find yourself swallowing, hoping that the thick, syrupy <<getWordCum>> will, perhaps, soothe your raw throat.
<</if>>
<br><br>
Your voice cracks slightly, your punished throat sore and raspy as you respond. "@@.pc;It was... so wonderful. I'm so sore, but I also want to do it again, to take it deeper...@@"<br>
<br>
"@@.npc_cook;Good girl, that sort of reaction tells me that you can, and will. Most Lassies and Laddies get scared away by me trouser titan, but those that push through that first hurdle, like you just did... they are aspiring deepthroat enthusiasts and more. Keep up your training and I know you'll fulfill your dreams.@@"<br>
<br>
Even gazing at <<his npc_cook>> deflated member is intimidating, but you are buoyed by this success. Noting <<his npc_cook>> still wet member you feel like you ought to do something about it.<br>
<br>
[<<moveTo 'event_cook_training_oral_1_cleanup' "Clean <<him npc_cook>> up." 180>>]
</div>/*#
#desc: oral training 1 assessment and clean yourself up
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.top = setup.checkTopBodySlot('tits','top')>>
<<changeItemStatus $scene.top 'cumsoaked' '["set",100]'>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $npc_cook.flags.porn.oral_stage == 2>>
Your jaw stiffening such that opening your lips more than a centimetre or two hurts, you hold <<his npc_cook>> dangling member with both hands as you kiss and gently lick it clean of cum and spittle.<br>
<br>
One hand gently rests on your head as <<he npc_cook>> brushes your hair and smiles down as you complete your work before <<he npc_cook>> hands you a towel.<br>
<br>
You nod in thanks and dry <<him npc_cook>> off, giving <<his npc_cook>> tired balls a final polish and a tender kiss each in appreciation of their offering before using the towel to clean your face up.<br>
<br>
Examining yourself it seems that your top is soaked and near ruined, but the rest of your attire seems to have made it through unscathed. Rising to your feet, you give a little curtsy of thanks as <<he npc_cook>> smiles back with satisfied pride.<br>
<br>
"@@.npc_cook;You've taken the most important step, or suck, as it were, it won't get any easier going forward but you've proven that your body can accomplish what you might have once deemed impossible, so dealing with the merely difficult is, but a matter of time and effort.@@"
<<else>>
Wiping clean <<his npc_cook>> cock and tucking it away under <<his npc_cook>> kilt <<he npc_cook>> passes you the towel. You dry your face with it and dab at your chest, but the thick <<getWordCum>> has already started to soak into your top. You manage to stop things from mussing any of the rest of your outfit, but there's no hiding the look or smell that announces you spent your lunch break being a very "dirty girl." <br>
<br>
"@@.npc_cook;Burr, aye, as good as you feel I think that was a bit better for me than for you, aye, <<callPlayer "npc_cook">>? That first plunge into the trough is a difficult one, I shan't deny, but you just have to keep pounding away until that pesky gag reflex fades and you can start working on depth. I'm sure you'll do better next time!@@"
<</if>>
<br><br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Thank <<him npc_cook>> for the encouragement and head back to your desk.' 300>>]<br>
<<if $player.makeup.messed > 25>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Stop by the bathroom to fix your makeup first." 600 "<<set $player.makeup.messed = 0>>">>]<br>
<</if>>
</div>/*#
#desc: oral training 2 - slutty makeup, act bimbo, partial deepthroat
#status: RELEASED 0.8.4.0
#ignore_spell: ahm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_oral += 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.npc_cook;Alright, <<callPlayer "npc_cook">>, you've had a taste of what you're up against, and made some good beginning gains on my cock... but there is still a long way to go! For our next step we'll be taking a bit of a different tact.@@"<br>
<br>
"@@.npc_cook;So many people these days... well, they think of blowjobs as normal, coming standard, as it were. Even deepthroating doesn't have the aura it used to have. With my cock though... well, the fear is back, as they say and if you want to take it down your throat you need to fully commit. For today's scene I want to see how much of a cock-crazed bimbo you really are. In this world other holes don't exist, other cocks don't exist, the only sex you know, that you want, the only way you get pleasure and your sole purpose in life is to use your mouth to get me off<<if $fetish.cum>> and suck down every drop of <<if $npc_cook.fem>>cum<<else>>man gravy<</if>> you can get<</if>>.@@"<br>
<br>
The lewd scenario already has your mind spinning with ideas, but <<he npc_cook>> brings you up short before you can speak.<br>
<br>
"@@.npc_cook;That's the mental game, but this is porn, so there's also the matter of appearance. For the audience to find you believable you need to look the part — and that means a set of thick dick-pillow lips, painted on eyes and so much concealer you look like an artificial sexdoll. So then, let's have a look at you and how you stack up...@@"<br>
<br>
<<switch setup.getCurrentMakeup($player)>>
<<case "">>
<<=setup.getNpcName('npc_cook', 'first')>> shakes <<his npc_cook>> head. "@@.npc_cook;Come on! You aren't even wearing makeup. First off... bad <<if $fetish.sissy>>sissy<<else>>girl<</if>>, you'd look so much better with a bit of warpaint, but obviously this won't do for this scene at all!@@"<br>
<br>
<<printThought "What was I even thinking going out without makeup on?">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Without some appropriate makeup it doesn't look like you'll be sucking any cock today, head back to your desk." 300>>]
<<case "nomakeupmakeup">>
<<=setup.getNpcName('npc_cook', 'first')>> squints close. "@@.npc_cook;Hmm, I suppose you're technically wearing makeup... the old sneaky schoolgirl no-makeup-makeup classic. That may be all well and good for the office, but this is porn! You want to be bold and obvious, not subtle and borderline invisible!@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Without visible makeup it doesn't look like you'll be sucking any cock today, head back to your desk." 300>>]
<<case "normalmakeup">>
<<=setup.getNpcName('npc_cook', 'first')>> frowns slightly. "@@.npc_cook;It's a nice style of makeup, don't get me wrong, really suits your features, in fact but... this is porn, I'm not looking for just some generic pretty face, I want a blow-my-socks-off sex-pot, y'hear me?@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Without better makeup it doesn't look like you'll be sucking any cock today, head back to your desk." 300>>]
<<case "ultimatebimbo">>
<<=setup.getNpcName('npc_cook', 'first')>> smiles in lusty approval as <<he npc_cook>> examines your makeup. "@@.npc_cook;Now THIS, this is the sort of thing I was looking for, you look like a brainless, slutty bimbo out on the prowl for some cock!@@"<br>
<br>
<<switch Math.floor($player.makeup.messed/25)>>
<<case 0>>
"@@.npc_cook;Simply perfect, this is just what you need to proceed.@@"<br>
<br>
<<printThought "I guess I really do look like a brainless slut...<<if setup.getTotalValue('bimbofication') > 10>>Yay!<</if>>">><br>
<br>
[<<moveTo 'event_cook_training_oral_2a' "With your makeup approved, now it's time to ruin it!" 60 "<<set $scene.acting = false>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo 'event_cook_training_oral_2a' 'Show <<him npc_cook>> that your bimboness goes far more than skin deep.' 60 "<<set $scene.acting = true>>">>]
<<else>>
[@@.link_locked;You may look like a mindless bimbo, but it's a facade, a put-on rather than a manifestation of deeper truth.@@]
<</if>>
<<case 1>>
"@@.npc_cook;Unfortunately, well... you're looking a bit rough around the edges. Now, don't get me wrong, by the end of this your face is going to be ruined, but that sort of contrast just won't have the same impact when you look at your reflection if you didn't start off looking close to perfect.@@"<br>
<br>
<<printThought "I should really remember to touch up my makeup before I meet people.">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "It seems your makeup just isn't up to snuff today, head back to your desk." 300>>]
<<case 2>>
"@@.npc_cook;Unfortunately, well... your makeup is all but ruined. What's the point of going from eager cocksucker to ruined whore if you already look like you've sucked off a whole soccer team? Nay, the style is great, but it needs to start perfect if I'm going to wreck you proper-like.@@"<br>
<br>
<<printThought "Why did I let things get like this? I really need to take better care of my makeup.">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Without properly applied makeup it looks like you're done, head back to your desk." 300>>]
<<case 3 4>>
"@@.npc_cook;Well, let me revise that. I THINK that's what your makeup would look like, judging by the quantity you've got smeared around, but really... you look like the aftermath of a bukkake scene, and that's great and all, but it isn't what we're going for today.@@"<br>
<br>
<<printThought "I should have re-applied my makeup a long time ago...">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "There's no denying your face is a mess, you can't blame <<him npc_cook>> much for not wanting to fuck it. Looks like it's time to head back to your desk." 60>>]
<<default>>
ERROR! unknown player.makeup.messed value of <<=$player.makeup.messed>> [<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Abort!" 60>>]
<</switch>>
<<case 'moviestar'>>
<<=setup.getNpcName('npc_cook', 'first')>> shakes <<his npc_cook>> head. "@@.npc_cook;Sorry, <<callPlayer "npc_cook">> — the makeup what yeh wearing is too much a work of art for me to destroy. Maybe in a different scene... but today I'm looking to give an eager bimbo slut what she needs, not to ruin some high-class lady.@@"<br>
<br>
<<printThought "Dang, guess I need to aim a little lower.">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Looks like this isn't quite the right style, and thus you shan't be sucking cock today." 300>>]
<<case 'camgirl' 'egirl' "qtpie">>
<<=setup.getNpcName('npc_cook', 'first')>> shakes <<his npc_cook>> head. "@@.npc_cook;This is close... but not quite extreme enough makeup. Ahm looking for the FULL bimbo fuck-me look, not a tribute.@@"<br>
<br>
<<printThought "Dang, guess I need something a bit different.">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Looks like this isn't quite the right style, and thus you shan't be sucking cock today." 300>>]
<<case 'expertmakeup'>>
<<=setup.getNpcName('npc_cook', 'first')>> shakes <<his npc_cook>> head. "@@.npc_cook;Sorry, <<callPlayer "npc_cook">> — it's an interesting look, but not quite the style of makeup I had in mind. I'm looking to give an eager bimbo slut what she needs, not deface a goth whore.@@"<br>
<br>
<<printThought "Dang, guess I need something a bit different.">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Looks like this isn't quite the right style, and thus you shan't be sucking cock today." 300>>]
<<case 'sissy_doll'>>
<<=setup.getNpcName('npc_cook', 'first')>> shakes <<his npc_cook>> head. "@@.npc_cook;Sorry, <<callPlayer "npc_cook">> — the makeup what yeh wearing is just too cute for me to destroy. Maybe in a different scene... but today I'm looking to give an eager bimbo slut what she needs, not to ravage a cute sexdoll.@@"<br>
<br>
<<printThought "Dang, guess I need something a bit different.">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Looks like this isn't quite the right style, and thus you shan't be sucking cock today." 300>>]
<<default>>
<<=setup.getNpcName('npc_cook', 'first')>> frowns slightly. "@@.npc_cook;That makeup ain't too bad... but not quite what I had in mind. I'm thinking something really blow-my-socks-off sex-pot, y'hear me?@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Without better makeup it doesn't look like you'll be sucking any cock today, head back to your desk." 300>>]
<</switch>>
</div>/*#
#desc: oral training 2 - try to act like a bimbo for his cock
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.acting>>
Biting your lip bashfully you give a little twirl, stepping away to the far side of the small storage room before turning back and fluttering your eyelashes.<br>
<br>
"@@.pc;Hi, <<sir npc_cook>>, I have, like, a problem? Could you help?@@"<br>
<br>
"@@.npc_cook;Oh? And what could possibly be troubling a cutie like yourself?@@"<br>
<br>
"@@.pc;Well, like, I haven't had a cock in my mouth in, like forever? Like... it has to have been at least HOURS and I'm so thirsty! And you look like you'd have a nice, big cock in need of sucking...@@"<br>
<br>
"@@.npc_cook;Mmm, that does sound like quite the dilemma, and for a brainless airhead you seem to have a good eye, because I do have a nice fat cock, do you want to feel it?@@" Still covered <<he npc_cook>> humps <<his npc_cook>> hips gently in your direction, the movement causing <<his npc_cook>> kilt to bounce as <<his npc_cook>> cock swings beneath it.<br>
<br>
Your eyes light up and you smile as you skip closer, pressing your hands through <<his npc_cook>> clothing to feel the profile of <<his npc_cook>> large, rapidly stiffening <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>>. "@@.pc;Oh, that feels huge! I have to taste it! Please, <<sir npc_cook>>! Please, please, please!@@"<br>
<br>
You're down on your knees in a moment, eagerly reaching up to grab <<his npc_cook>> kilt and expose <<his npc_cook>> <<getWordPenis "npc_cook">>. Unfortunately <<he npc_cook>> holds <<his npc_cook>> kilt firmly down, foiling your efforts.<br>
<br>
"@@.npc_cook;So enthusiastic! But before I let the monster free I want a little something in return, how about you tell me exactly what you want... and make it cute!@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_2b' 'You tilt your head and "think" for a moment and then give your reply.' 60>>]<br>
<<else>>
Impatient and eager to get started you drop to your knees and reach for <<his npc_cook>> kilt only for <<him npc_cook>> to stiff-arm you away as your arms flail without being able to reveal <<his npc_cook>> delicious cock.<br>
<br>
"@@.npc_cook;Ah admire the enthusiasm, but just diving in isn't as good as making a little preparation. How about you try that again, use your words... not any big ones, of course, but take a moment to use that pretty mouth to explain what sort of girl you are before you spread those lips and prove it.@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought "Stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>>, why am I thinking about this so hard? <<He npc_cook>> said <<he npc_cook>> wants an airheaded bimbo!">><br>
<br>
[<<moveTo 'event_cook_training_oral_2a' 'Give <<him npc_cook>> a proper bimbo greeting.' 60 "<<set $scene.acting = true>>">>]
<<else>>
[@@.link_locked;Frustrated and stumped it's clear that a "pretty face" isn't enough, you've got some practicing to do to fix your behaviour if you want that delicious sucky sucky...@@]
<</if>>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Apologise for wasting <<his npc_cook>> time and head back to your desk with a promise to do better next time." 60>>]
<</if>>
</div>/*#
#desc: oral training 2 - try to deepthroat him
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeMakeupMessed 25>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
From your knees you stick out your chest<<if setup.getEffectiveBreastSize() > 3>>, jiggle your tits<</if>> and smile up at <<=setup.getNpcName('npc_cook', 'first')>>. In a sing-song voice you recite a little ditty. "@@.pc;I'm a <<if $fetish.sissy>>sissy<<else>>sexy<</if>> bimbo, cute and hot. Here is my mouth, stick in your cock!@@" You finish the short number by dropping your jaw and waggling your eyebrows up at <<him npc_cook>>.<br>
<br>
"@@.npc_cook;Bravo!@@" <<He npc_cook>> says with a wide grin. "@@.npc_cook;It would seem you really are a cute-faced cock-hungry airhead. Let's see if your lips impress my cock as much as they have my eyes and ears!@@"<br>
<br>
Pulling <<his npc_cook>> kilt out of the way with a flourish <<his npc_cook>> hard <<if $fetish.bestiality_soft>>horsecock<<else>><<getWordPenis "npc_cook">><</if>> springs into view. Playing along you let out an excited gasp before lunging towards the stiff prize, your lips wrapping around it and immediately starting to suck.<br>
<br>
"@@.pc;Mmmmmm,@@" you moan, "@@.pc;Shooooo guuuuuuuudd@@" your words muffled by the fat tip spreading your hot lips.<br>
<br>
"@@.npc_cook;Well, you definitely seem like a horny bimbo, and a cockhungry slut, but to be a proper brainless mouth fuck-hole you also need to prove that you're a deepthroat enthusiast.@@"<br>
<br>
The suggestion is all you need to show off, relaxing your throat so that the fat tip of <<his npc_cook>> cock can penetrate. You let out a small moan, your gag reflex not just almost gone, but perversely exchanged for a feeling of horny arousal at being throat-fucked.<br>
<br>
Reaching down <<his npc_cook>> fingers gently touch your neck, <<his npc_cook>> hips rocking forward slightly to drive deeper. "@@.npc_cook;There it is!@@" <<He npc_cook>> states cheerily.<br>
<br>
You're a little confused, though the fact that you have a nice thick cock to suck and lick means you don't really care until <<he npc_cook>> continues. "@@.npc_cook;Come on, bring a hand to your throat, you feel that?@@" <<he npc_cook>> rocks slightly, the bulge under your fingers extending further down your neck. "@@.npc_cook;That's my cock! Aren't throat bulges just the best? Now keep your fingers there and see if you can take me deep enough to jerk me off through your trachea! Open wide!@@"<br>
<br>
With that somewhat perfunctory warning, <<his npc_cook>> hands move to either side of your head to pull you further onto <<his npc_cook>> cock. Fingers splayed around your neck you feel from every direction your throat bulge as <<his npc_cook>> cock drives deeper. You moan with lust as you feel the first embers of fear sparking; as much as you may want to be naught but an eager throat-hole your body is nearing its physical limits as the unyielding <<if $fetish.bestiality_soft>>horsecock<<else>><<getWordPenis "npc_cook">><</if>> blocks off your air and forces you open.<br>
<br>
Far stronger than you, <<his npc_cook>> hands on your head keep <<his npc_cook>> cock firmly lodged in your throat. Nostrils flaring and eyes wide, your control fragments and you begin to reflexively panic. You try to push away with both hands but <<he npc_cook>> holds you firm, giving you the longest few seconds as you fully understand that you are totally at <<his npc_cook>> mercy before <<he npc_cook>> finally pulls your head back and allowing you the sweet, sweet taste of oxygen.<br>
<br>
"@@.npc_cook;What's the matter, slut? Too much?@@" Holding your head with just one hand <<he npc_cook>> punctuates <<his npc_cook>> words with a few slaps. Not hard enough to hurt they're more loud, humiliating, and attention-getting even as you catch your breath. "@@.npc_cook;Tell me, slut, which do you like better, oxygen, or cock?@@"<br>
<br>
<<if setup.getTotalValue("oral") >= 10>>
To be honest, thanks to all your practice your "helplessness" was more of an act and after your short "break" your throat is eager to take some more of what <<hes npc_cook>> dishing out.<br>
<br>
[<<moveTo 'event_cook_training_oral_2c' "Answer that cock is more important than ANYTHING, like, duh!" 60>>]<br>
<<else>>
[@@.link_locked;You really are just too overwhelmed and out of breath to continue at this pace.@@]<br>
<</if>>
[<<moveTo 'event_cook_training_oral_2c_fail' "Say you need oxygen so you can be conscious to suck more cock." 60>>]
</div>/*#
#desc: oral training 2 - fail to give it your all to suck his cock
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeMakeupMessed 50>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.pc;Please, if I pass out, I can't suck your cock!@@" You gasp, still trying to catch your breath from before.<br>
<br>
"@@.npc_cook;An admirable thought, but really, I can always just fuck your throat even after you pass out... but that might be a bit much for yeh, yet.@@"<br>
<br>
You shudder, in fear or excitement, you couldn't say.<br>
<br>
<<printThought "<<He npc_cook>> has to be just taunting me... right?">><br>
<br>
"@@.npc_cook;Since you aren't ready to be a truly mindless fuck-hole yet why don't you show me the use in you being awake, show me what a cock-hound of your calibre will do to earn her cum.@@"<br>
<br>
"@@.pc;Yes,@@" you moan, the word barely past your lips before <<his npc_cook>> cock comes the other direction.<br>
<br>
Your lip suck tight until your cheeks pull in what little they can before <<his npc_cook>> thick cock gets in the way, your tongue a blur paying particular attention to <<if $fetish.bestiality_soft>>the fleshy ridge around <<his npc_cook>> equine tip<<else>><<his npc_cook>> dripping tip and wiggling your tongue under <<his npc_cook>> shaft<</if>>. Bobbing your head you bring your hands into the equation, fondling <<his npc_cook>> balls and stroking the portion of <<his npc_cook>> shaft outside your mouth.<br>
<br>
From <<his npc_cook>> sounds it is clear that <<he npc_cook>> is very much liking your efforts and you take it to the next level, every few seconds dipping your head forward to take as much of <<him npc_cook>> as you can down your throat like a properly deep cock socket.<br>
<br>
Working at your own pace you are able to take even more of <<him npc_cook>> than ever before... though your throat still won't let you get much past two thirds of <<his npc_cook>> cock past your lips before you flinch and are forced to withdraw.<br>
<br>
<<He npc_cook>> rests a hand on your head, not forcing you to do anything, just reminding you that it's there. The small detail serves quite well to amp up your motivation and stoke your submission.<br>
<br>
With experienced judgement you feel <<his npc_cook>> orgasm approaching and you redouble your efforts, increasing the frequency at which you plunge <<his npc_cook>> cock down your throat as <<he npc_cook>> seems to particularly like that sensation.<br>
<br>
With a grunt, <<he npc_cook>> cums, thick globs of steamy semen flooding your throat, making your cheeks go full chipmunk and then spilling out down your chin and spraying your face and chest. Gulping down as much as you can. You hold <<his npc_cook>> dripping cock in one hand and look up as you hear the unmistakable click of a camera.<br>
<br>
Grinning down at you <<he npc_cook>> flips <<his npc_cook>> phone around to show you the picture — a perfect image of a total cock-whore. <<if $player.makeup.messed > 50>>Your heavy makeup is streaked by drool and tears,<<else>>Your permanently made-up face is streaked with drool and tears,<</if>> your eyes glassy and dumb and your lips hanging loose drooling cum as <<his npc_cook>> still dripping cock is peeks in from out of frame, your hand casually holding it while unable to fully encircle its jaw-stretching girth, <<if $player.makeup.messed > 50>>a ring of lipstick<<else>>the final rim of saliva<</if>> just shy of three-quarters of the way up the shaft showing exactly how far you took it... and how far you have left to go.<br>
<br>
"@@.npc_cook;Damn, now wouldn't that be a great cover shot for a porn video?@@" <<He npc_cook>> asks with a wide grin.
<<if $player.flags.porn.genre.anal>>
"@@.npc_cook;I suppose we could do a version where you just get your ass <<if $fetish.get_raped>>raped<<else>>gaped<</if>> and have you sitting in a pile of cum, but wouldn't you rather be able to show off both holes on camera? Gotta step up your training so you can live that dream!@@"
<<else>>
"@@.npc_cook;You gotta step things up with your training so you can live that dream!@@"
<</if>>
<br><br>
You can only nod, the vision of how you look in the photo burned into your brain as <<he npc_cook>> tucks <<his npc_cook>> phone away and helps you back to your feet to conclude the scene.<br>
<br>
[<<moveTo 'event_cook_training_oral_2_cleanup' "Clean yourself up and see if <<he npc_cook>> has any suggestions for next time." 300>>]
</div>/*#
#desc: oral training 2 - deepthroat his cock
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeMakeupMessed 25>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Stopping your panting in an instant you smile up at <<him npc_cook>>, "@@.pc;Of course cock is the most bestest thing!@@" you give <<his npc_cook>> shaft a nice long, sensuous lick to drive that point home. "@@.pc;But, like, I figured it'd be a turn-on if you thought I was struggling to handle your big, magnificent meatstick!@@"<br>
<br>
<<He npc_cook>> grins, "@@.npc_cook;Aye, you did look quite hot choking on me sausage, and those tears running down your cheeks...<<if $player.makeup.messed > 25>> your pretty makeup is all ruined!<</if>> Now instead of looking like a bimbo you just look like a used slut.@@"<br>
<br>
"@@.pc;But, like, I'm both of those things!@@" You pout for a moment and then look back up at <<him npc_cook>>. "@@.pc;So, like... talking is boring, can I suck your cock some more?@@"<br>
<br>
"@@.npc_cook;Hmmm,@@" <<he npc_cook>> pretends to think, <<his npc_cook>> hard cock bobbing mesmerisingly as you lick your lips. "@@.npc_cook;No.@@" You pout even harder until <<he npc_cook>> continues, "@@.npc_cook;But I'll fuck your face until I cum.@@"<br>
<br>
"@@.pc;YAY!@@" you start to shout only to be cutoff by <<his npc_cook>> cock thrusting past your lips. You smile and flutter your eyelashes up at <<him npc_cook>> as you lunge forward in kind.<br>
<br>
The two of you move in synchronicity, united in a desire to thrust cock down throat in pursuit of <<his npc_cook>> orgasm... with your own pleasure a coincidental, though happy, side effect. Working together, you are soon probing to new depths of your throat, the thick head of <<his npc_cook>> cock pressing forward while your throat bulges and your eyes roll back in pleasure.<br>
<br>
Unfortunately you find yourself still well short of pressing your nose to <<his npc_cook>> belly when <<his npc_cook>> <<getWordPenis "npc_cook">> can go no further. You have a sneaking feeling that <<he npc_cook>> is holding back for fear of hurting you, but even when you try to make up the difference your body refuses to subject itself to the brutality required to take <<him npc_cook>> deeper.<br>
<br>
<<if setup.getTotalValue("oral") >= 13>>
<<printThought "I was close, <<hes npc_cook>> a unique challenge and my technique was just a little off... but I think I can get <<him npc_cook>> next time...">>
<<else>>
<<printThought "It's like I need some sort of emotionless machine to <<if $fetish.get_raped>>rape<<else>>pound<</if>> away the last of my resistance...">>
<</if>>
<br><br>
For <<his npc_cook>> part, <<=setup.getNpcName('npc_cook', 'first')>> seems more than enthused by your efforts. You refocus all of your attention on the task at hand as you can feel <<his npc_cook>> body tighten and tremble on the edge of orgasm. Taking over the bulk of the work as <<he npc_cook>> partially freezes, you fling yourself up and down <<his npc_cook>> cock, sucking and slurping as hard as you can until <<he npc_cook>> swells in that wonderfully familiar way and starts to cum.<br>
<br>
[<<moveTo 'event_cook_training_oral_2_success' "Paint a masterpiece with <<his npc_cook>> cock." 180>>]
</div>/*#
#desc: oral training 2 - paint yourself with his cum
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.oral_stage = 3>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Taking a firm grip on <<=ps(setup.getNpcName("npc_cook","first"))>> cock, you wait until the last instant to pull <<him npc_cook>> out of your mouth, keeping your lips spread wide as you shoot the first thick jet of cum clean and true.
<<if setup.getTotalValue("cum") > 15>>
The taste of <<his npc_cook>> <<getWordCum>> is as heavenly as always as it splashes across your tongue.
<<elseif setup.getTotalValue("cum") >= 10>>
The familiar, but always somehow even more delicious than you remember, flavour of <<his npc_cook>> <<getWordCum>> bursts across your tongue.
<<elseif setup.getTotalValue("cum") > 5>>
You are almost distracted by the sudden burst of delicious flavour that is <<his npc_cook>> <<getWordCum>>.
<<else>>
<<His npc_cook>> <<getWordCum>> splashes across your tongue, pungent and strong.
<</if>>
Focusing on the next jet of <<getWordCum>> you wield <<his npc_cook>> <<getWordPenis "npc_cook">> like a wand, turning your face back and forth to spray yourself completely, <<his npc_cook>> huge <<if $fetish.bestiality_soft>>horseballs<<else>>testicles<</if>> producing all you need for a one-<<man npc_cook>><<if $fetish.sissy>>, one sissy<<else>>, one bimbo<</if>> bukkake shoot.<br>
<br>
<<He npc_cook>> gasps and shudders as <<he npc_cook>> drips a final spurt from <<his npc_cook>> oversensitised penis. Looking up you show off your mouth full of <<getWordCum>>, swirling it around with your tongue before gulping it down and leaning forward to lick the final drops from <<his npc_cook>> <<if $fetish.bestiality_soft>>frilled equine cock-head<<else>>thick mushroom tip<</if>>.<br>
<br>
Mindful of your duties as a brainless cockslut you give <<his npc_cook>> cock a few licks to make sure it's clean, admiring how far up <<his npc_cook>> shaft you managed to leave your final <<if $player.makeup.template == "">>saliva<<else>>lip-stick<</if>> ring "progress" marker.<br>
<br>
Panting slightly at even the gentle brush of your tongue <<he npc_cook>> staggers back as you blink your gaze clear of cum.<br>
<br>
[<<moveTo 'event_cook_training_oral_2_cleanup' "Wait to see if your efforts are met with <<his npc_cook>> approval." 60>>]
</div>/*#
#desc: oral training 2 - assessment and clean yourself up
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $npc_cook.flags.porn.oral_stage == 3>>
"@@.npc_cook;Aye, now THAT is what I expect from a self-proclaimed brainless bimbo cumdumpster.@@"<br>
<br>
You smile at the compliment, too caught up in the moment to bother wiping off the strands of <<getWordCum>> painting your face.<br>
<br>
"@@.npc_cook;Your training with this hole is nearing completion, but the way you have proven yourself today... well, I have no doubt you will figure out how to push your body to the limit and fulfill your dreams.@@"<br>
<br>
Grinning even wider you rise to your feet and give a grateful curtsy before licking your lips and turning to go.<br>
<br>
Many in the lunchroom stare at your... unique facepaint and the smell of cum wafting from your body, but you don't care... <<if $player.makeup.template != "">>besides, your makeup underneath is ruined, anyway so why not wear something a little "avant-garde?" <</if>><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Make your way back to your desk.' 180>>]<br>
<<if $player.makeup.messed > 25>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Stop by the bathroom to fix your makeup first." 300 "<<set $player.makeup.messed = 0>>">>]<br>
<</if>>
<<else>>
<<=setup.getNpcName("npc_cook","first")>> hands you a towel and you wipe yourself up.
<<if setup.getTotalValue("cum") > 15>>
It kills you to see so much of <<his npc_cook>> heavenly <<if $npc_cook.fem>>girl<<else>>man<</if>> gravy go to waste, but a glance at the time confirms you need to hurry or you'll be late for your afternoon shift.
<<elseif setup.getTotalValue("cum") >= 10>>
The taste of <<his npc_cook>> cum strong in your mouth it takes focus not to lick up the rest, but you just don't have time before you need to be back at your desk to start your afternoon shift.
<<elseif setup.getTotalValue("cum") > 5>>
The scent of cum is almost overwhelming, calling out for you to lap up the strong brew, but you ignore the urge focus on getting cleaned up, mindful that you need to be back to your desk soon for your afternoon shift.
<<else>>
You can't smell or taste anything other than <<his npc_cook>> potent cum, coughing slightly as you rush to clean yourself up as best you can so you may return to work in time.
<</if>>
<br><br>
Nodding <<he npc_cook>> heads towards the door back to the lunchroom, pausing for a moment with <<his npc_cook>> hand on the doorknob. "@@.npc_cook;Aye, but you put in some effort today and ye played yer part well, but you need to work on those skills, your ability to relax take it deep if you're going to make further progress in swallowing down me monster.@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'You thank <<him npc_cook>> for the feedback and then slip out the door to scurry back to your desk.' 180>>]<br>
<<if $player.makeup.messed > 25>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Stop by the bathroom to fix your makeup first." 600 "<<set $player.makeup.messed = 0>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: oral training 3 - bdsm skills, dressing like a slut and taking his cock all the way
#status: RELEASED 0.8.4.0
#ignore_spell: di'nah
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_oral += 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.npc_cook;Alright, slut, my cock has made it pretty deep into your throat, but your quest is far from finished. Now that you've proven yourself I'll be taking the gloves off — if you're going to be a camera-grade cocksucker you need to be able to handle all that the scene might require. I warn you, this will be a very intense session, but the only way you're going to reach your goal is if you dig deep, obey my direction, and focus. Do all that, and come practiced and prepared, and you will meet your destiny of becoming a perfect mouth fuck-hole.@@"<br>
<br>
You take a deep breath and nod, starting to drop to your knees before <<he npc_cook>> stops you with a hand under your chin.<br>
<br>
"@@.npc_cook;I di'nah tell you to kneel, slut.@@" The finger under your chin becomes a hand wrapped around your throat as <<he npc_cook>> pulls you closer. Centimetres away <<he npc_cook>> stares into your face as you blink up in only partially-pretend fear.<br>
<br>
"@@.npc_cook;I thought you wanted me to teach you how to be a perfect cocksucker? Is that true? or are you going to be a rebellious know-it-all-slut who does what she wants instead of what she is told?@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_3a' 'Look back up with wide-eyed, speechless fear.' 60 "<<set $scene.acting = false>>">>]<br>
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo 'event_cook_training_oral_3a' 'Surrender to <<his npc_cook>> control and become <<his npc_cook>> cock-slave.' 60 "<<set $scene.acting = true>>">>]
<<else>>
[@@.link_locked;This harsh treatment is too intense for you to handle. You need to hone your capacity to endure pain and abuse.@@]
<</if>>
</div>/*#
#desc: oral training 3 - attempt to surrender to his cock
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'oral_trial'>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.acting>>
Blinking up at <<=setup.getNpcName('npc_cook', 'first')>> you whisper your reply. "@@.pc;Please, <<sir npc_cook>>, teach this slut how best to serve your cock.@@"<br>
<br>
Smirking down at you <<he npc_cook>> pushes you a step back while releasing the grip on your throat. "@@.npc_cook;Always in such a rush, lets check if you are dressed properly for the occasion, my cock doesn't have time unless you're cute, sexy and dressed to impress.@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_3b_change' 'Take a moment to change...' 180>>]<br>
[<<moveTo 'event_cook_training_oral_3b' 'Show off and strut your stuff.' 180>>]<br>
<<else>>
<<His npc_cook>> hot breath in your face and <<his npc_cook>> strong hand around your throat tears well up in your eyes as you barely balance on your tiptoes.
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo 'event_cook_training_oral_3' 'Blink away your tears and try again.' 60>>]
<</if>>
<</if>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Break away from <<his npc_cook>> grasp and leave with a promise not to waste <<his npc_cook>> time like this in the future." 180>>]
</div>/*#
#desc: oral training 3 - attempt to surrender to his cock
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_cook', 'first')>> gives you some privacy behind a large crate for you to change clothes.<br>
<br>
[<<moveTo 'event_cook_training_oral_3b' 'Show off and strut your stuff.' 180 "<<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Put your clothes back on and return to work." 180 "<<useClothSetPop 'oral_trial'>><<set $player.cutscene.lockinventory=true>>">>]
</div>/*#
#desc: oral training 3 - show off your outfit to earn his cock
#status: RELEASED 0.8.4.0
#ignore_spell: n,di'nah
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bottomId = setup.getItemFromType("legwear")>>
<<set $scene.chokerId = setup.getItemFromType("choker")>>
<<set $scene.outfit_type = "other">>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<set $scene.outfit_type = "maid">>
<<elseif setup.checkNaked()>>
<<set $scene.outfit_type = "naked">>
<<else>>
<<switch setup.analyzeWornTags(['office','casual','formal','slutty','sleepwear'])>>
<<case "office">>
<<switch setup.analyzeWornTags(['male','unisex','female'])>>
<<case "female">>
<<if $scene.topId == "satin_blouse_pink" && $scene.bottomId == "skirt_leather_pink" && ["platform_wedge_heels_pink","ballet_boots_pink","mary_janes_pink","thigh_highs_pink","bed_heels_pink"].includes(setup.getItemFromType("shoes"))>>
<<set $scene.outfit_type = "office_sissy">>
<<else>>
<<set $scene.outfit_type = "office_female">>
<</if>>
<<case "unisex">>
<<set $scene.outfit_type = "office_unisex">>
<<case "male">>
<<set $scene.outfit_type = "office_male">>
<</switch>>
<<case "casual">>
<<switch setup.analyzeWornTags(['male','unisex','female'])>>
<<case "female">>
<<set $scene.outfit_type = "casual_female">>
<<case "unisex">>
<<set $scene.outfit_type = "casual_unisex">>
<<case "male">>
<<set $scene.outfit_type = "casual_male">>
<</switch>>
<<case "formal">>
<<switch setup.analyzeWornTags(['male','unisex','female'])>>
<<case "female">>
<<set $scene.outfit_type = "formal_female">>
<<case "unisex">>
<<set $scene.outfit_type = "formal_unisex">>
<<case "male">>
<<set $scene.outfit_type = "formal_male">>
<</switch>>
<<case 'sleepwear'>>
<<set $scene.outfit_type = "sleep">>
<<case "slutty">>
<<set $scene.outfit_type = "slutty">>
<</switch>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<switch $scene.outfit_type>>
<<case "maid">>
<<=setup.getNpcName('npc_cook', 'first')>> seems to take advantage a bit, letting you spin around twice as <<he npc_cook>> admires your bouncing skirt.
<<if setup.checkItemTypeTag('headdress', ['maid']) && setup.checkItemTypeTag('apron', ['maid'])>>
"@@.npc_cook;Damn, but who doesn't love a cute maid? And you're the whole package! Headdress, apron and everything! I can't wait to look down on those cute frills while your head is bobbing on my cock. Though I don't think that apron will be enough to save you from the flood of drool and cum that's going to leak past your whore lips, but for completing the look... mmm, fuck and yes.@@"
<<elseif setup.checkItemTypeTag('headdress', ['maid'])>>
"@@.npc_cook;Damn, but who doesn't love a cute maid? You're even wearing a headdress, so cute! I can't wait to look down on it while your head is bobbing on my cock.@@"
<<elseif setup.checkItemTypeTag('apron', ['maid'])>>
"@@.npc_cook;Damn, but who doesn't love a cute maid? You're even wearing a maid's apron! I don't think it'll be enough to save you from the flood of drool and cum that's going to leak past your whore lips, but for rounding out the look... mmm, fuck and yes.@@"
<<else>>
"@@.npc_cook;Damn, but who doesn't love a cute maid? It's too bad you didn't add in a few accessories, but that's minor, you're still cute as a button and very in need of my cock-tention.@@"
<</if>>
<br><br>
<<printThought "Why is it whenever I'm dressed as a maid people always seem to want to get me dirty?">>
<br>
[<<moveTo 'event_cook_training_oral_3c' "Flash a cute smile, give a sexy shimmy and get ready to obey <<his npc_cook>> next instruction." 60>>]
<<case "office_sissy">>
<<=setup.getNpcName('npc_cook', 'first')>> leers at you and casually strokes <<his npc_cook>> cock. "@@.npc_cook;Damn, but you don't fuck around. That outfit says <<if $fetish.sissy>>sissy<<else>>slut<</if>> from head to toe,
<<if $scene.chokerId == "choker_sissy" || $scene.chokerId == "secure_sissy_choker">>
but that wasn't enough for you, was it? And are those real diamonds? That is the most expensive trashy piece of jewellery I've ever seen and I can't WAIT to see it stretch as I bulge your throat.
<<else>>
I'm surprised it doesn't come with knee-pads! I mean damn; dressing like that there are few <<if $npc_cook.fem>>people<<else>>men<</if>> alive that could resist the urge to knock you to your knees and make use of your face-hole.
<</if>>
@@"<br>
<br>
<<printThought "Mmm, time for cock! <<if $fetish.sissy>>Sissies<<else>>Sexy sluts<</if>> really do get the best things!">><br>
<br>
[<<moveTo 'event_cook_training_oral_3c' "Flash a cute smile, give a sexy shimmy and get ready to obey <<his npc_cook>> next instruction." 60>>]
<<case "slutty">>
<<=ps(setup.getNpcName('npc_cook', 'first'))>> lips split into a leering grin.
<<if $scene.topId == "shirt_slut_pink">>
"@@.npc_cook;Now THAT is what gets my cock hard. All skimpy and skanky and shouting just the kind of girl you are across your chest... I am going to enjoy breaking in that mouth fuck-hole almost as much as it looks like you will!@@"
<<else>>
"@@.npc_cook;Now THAT is what gets my cock hard. All skimpy and skanky and slutty... I am going to enjoy breaking in that mouth fuck-hole almost as much as it looks like you will!@@"
<</if>>
<br><br>
<<printThought "Yes! I mean, wait... should I be worried? Screw it, I'm going to get cock!">><br>
<br>
[<<moveTo 'event_cook_training_oral_3c' "Flash a cute smile, give a sexy shimmy and get ready to obey <<his npc_cook>> next instruction." 60>>]
<<case "office_female">>
<<=setup.getNpcName('npc_cook', 'first')>> thinks for a long time, looking at you closely before finally shaking <<his npc_cook>> head. "@@.npc_cook;I'm tempted, truly I am, but that outfit... it's "corporate professional," which sure, we both know that means you're a prim prissy who wants to spend her days taking dictation but... no, my cock deserves something either cuter, or trashier.@@"<br>
<br>
<<printThought "So close! I really need to bring my A-game to impress <<him npc_cook>>, it seems.">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Your mood deflated by <<his npc_cook>> rejection you remember to thank <<him npc_cook>> for <<his npc_cook>> time, fix your clothes, and then return to your desk." 180 "<<useClothSetPop 'oral_trial'>>">>]
<<case "casual_unisex" "office_unisex" "formal_unisex">>
<<=setup.getNpcName('npc_cook', 'first')>> shakes <<his npc_cook>> head. "@@.npc_cook;What are you trying to do with that? I guess it's a little feminine because of your hips but... no, that look is crap. Yeh should be flaunting your cute features not muddying the waters.@@"<br>
<br>
<<printThought "<<Hes npc_cook>> right, I'm a girl now and should dress more like it.">>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Your mood deflated by <<his npc_cook>> rejection you remember to thank <<him npc_cook>> for <<his npc_cook>> time, fix your clothes, and then return to your desk." 180 "<<useClothSetPop 'oral_trial'>>">>]
<<case "casual_female">>
<<=setup.getNpcName('npc_cook', 'first')>> seems to think for a several moments before shaking <<his npc_cook>> head. "@@.npc_cook;That's close, but it's too... girl next door. Don't get me wrong, the girl next door needs a good dicking as much as any slut, maybe more, but I want someone who is public with their nature, not faking it by walking around like some proper lady.@@"<br>
<br>
<<printThought "<<Hes npc_cook>> right, I really should slut it up a bit more.">>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Your mood deflated by <<his npc_cook>> rejection you remember to thank <<him npc_cook>> for <<his npc_cook>> time, fix your clothes, and then return to your desk." 180 "<<useClothSetPop 'oral_trial'>>">>]
<<case "casual_male" "office_male" "formal_male">>
<<=setup.getNpcName('npc_cook', 'first')>> looks disgusted. "@@.npc_cook;What is this? Male clothes? You don't remotely have the body for that, plus it's such an obvious lie, you're a cute, <<if $fetish.sissy>>sissy <</if>>slut and if you want a taste of my cock you had better dress like it!@@"<br>
<br>
<<printThought "Why do I even still have this outfit?">>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Your mood deflated by <<his npc_cook>> rejection you remember to thank <<him npc_cook>> for <<his npc_cook>> time, fix your clothes, and then return to your desk." 180 "<<useClothSetPop 'oral_trial'>>">>]
<<case "formal_female">>
<<=setup.getNpcName('npc_cook', 'first')>> shakes <<his npc_cook>> head. "@@.npc_cook;What's this formal shit? You think you're too good for me? That you're some high class broad?@@"<br>
<br>
Intimidated you shake your head "@@.pc;N-n-no <<sir npc_cook>>.@@"<br>
<br>
<<He npc_cook>> snorts. "@@.npc_cook;That's good, but as much as putting you in your place and tearing that costume off your body might amuse me I'm not going to reward you for being uppity. Come back when you've accepted your role and dressed like the cute slut you are.@@"<br>
<br>
<<printThought "I look so cute in this, but maybe I am putting on airs... I'm training to be a porn star, after all.">>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Your mood deflated by <<his npc_cook>> rejection you remember to thank <<him npc_cook>> for <<his npc_cook>> time, fix your clothes, and then return to your desk." 180 "<<useClothSetPop 'oral_trial'>>">>]
<<case "naked">>
<<=setup.getNpcName('npc_cook', 'first')>> looks over your naked flesh. You can tell <<he npc_cook>> is aroused... and yet <<he npc_cook>> ends up shaking <<his npc_cook>> head.<br>
<br>
"@@.npc_cook;You ever heard the saying that you can be more exposed with clothes than without? Well... yer proving that now. Naked is great, but it doesn't scream slut quite as loud as wearing something purposefully provocative, y'know? We'll try this again some other time.@@"<br>
<br>
<<printThought "Hmm... <<he npc_cook>> wants slutty, but not exposed...">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Your mood deflated by <<his npc_cook>> rejection you remember to thank <<him npc_cook>> for <<his npc_cook>> time, put your clothes back on, and return to your desk." 180 "<<useClothSetPop 'oral_trial'>>">>]
<<case "sleep">>
<<=setup.getNpcName('npc_cook', 'first')>> seems to think for a several moments before shaking <<his npc_cook>> head. "@@.npc_cook;Are you trying to dress for bed? No, no, that is not right mood, I want slutty, not sultry!@@"<br>
<br>
<<printThought "<<Hes npc_cook>> right, I really should slut it up a bit more.">>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Your mood deflated by <<his npc_cook>> rejection you remember to thank <<him npc_cook>> for <<his npc_cook>> time, fix your clothes, and then return to your desk." 180 "<<useClothSetPop 'oral_trial'>>">>]
<<case "other">>
<<=setup.getNpcName('npc_cook', 'first')>> scrutinizes you from all angles, a frown creeping over <<his npc_cook>> face.<br>
<br>
"@@.npc_cook;No, no. I di'nah know what you would call this... ensemble, but whatever it is is not worth of my glorious cock. Maybe next time we train you can give a closer eye to aesthetics, hmm?@@"<br>
<br>
<<printThought "What was I thinking when I put this outfit together? It really doesn't go together at all!">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Your mood deflated by <<his npc_cook>> rejection you remember to thank <<him npc_cook>> for <<his npc_cook>> time, fix your clothes, and then return to your desk." 180 "<<useClothSetPop 'oral_trial'>>">>]
<<default>>
ERROR, unexpected cooktraining.outfit_type <<=$scene.outfit_type>> [<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Abort!" 60 "<<useClothSetPop 'oral_trial'>>">>]
<</switch>>
</div>/*#
#desc: oral training 3 - suck his cock while he slaps and degrades you
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 30>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Looking at you with naked, primal lust <<=setup.getNpcName('npc_cook', 'first')>> steps closer. Once within arms reach <<his npc_cook>> hand cups your chin aggressively.<br>
<br>
"@@.npc_cook;So, slut, all dressed up... are you ready for my cock?@@"<br>
<br>
"@@.pc;Yes—@@" you start to reply only for <<him npc_cook>> to land a stinging slap against your cheek.<br>
<br>
"@@.npc_cook;Wrong answer! You only THINK you're ready, but what I'm about to do? I'm going to make you weep, make you cry, make your throat feel like it's going to give out and then...? When you think you can't take it any longer? That's when I'm going to make you beg for more!@@"<br>
<br>
Just being in the presence of <<his npc_cook>> huge cock had you aroused, but this treatment... you're almost trembling, scared and embarrassed, but more than anything, horny out of your mind.<br>
<br>
You start to wince as <<he npc_cook>> reaches out again, but this time <<his npc_cook>> hands takes a firm grip of your hair. Even rougher than before <<he npc_cook>> pulls your head to the side and drags you down while <<his npc_cook>> other hand removes <<his npc_cook>> kilt to fully unveil <<his npc_cook>> hard <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>>.<br>
<br>
Stumbling to your knees it is only <<his npc_cook>> grip on your head that keeps you from diving face-first into the floor as <<he npc_cook>> positions you at <<his npc_cook>> feet.<br>
<br>
"@@.npc_cook;Alright, you wanted it. Get to work!@@"<br>
<br>
Your cheek stings, <<his npc_cook>> rough grip on your hair painful as your throat anticipates getting pounded some more.<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
[<<moveTo 'event_cook_training_oral_3d' 'Yes, <<if $fetish.get_raped>>rape<<else>>fuck<</if>> my pain-slut throat.' 180>>]<br>
<</if>>
[<<moveTo 'event_cook_training_oral_3e_fail' "This is too much!" 180>>]
</div>/*#
#desc: oral training 3 - suck his cock while he slaps and degrades you
#status: RELEASED 0.8.4.0
#ignore_spell: 'round
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 30>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_cook', 'first'))>> cock somehow smells even stronger than normally and you are almost light-headed as you reach out with both hands to take hold of <<his npc_cook>> shaft.<br>
<br>
*SLAP* <<he npc_cook>> strikes you again, your cheek stinging as you jerk away in confusion. "@@.npc_cook;I didn't ask for a handjob! You're here to suck. my. cock.@@" Each word is punctuated by another sharp slap on your cheeks. "@@.npc_cook;A trained dicksleeve should need nothing but her lips, tongue and her whore throat to serve any<<if $npc_cook.fem>>one<<else>> man<</if>>. So put the thought of using those dainty limbs out of your mind and just tuck them out of the way 'round behind your back and do this thing proper-like.@@"<br>
<br>
Suppressing a moan you cross your arms behind your back and try again, stooping down slightly to zero in on getting <<his npc_cook>> swaying tip between your lips before bobbing back and forth, letting the tip just tap the back of your throat with each thrust.<br>
<br>
Even with all the times you've sucked <<him npc_cook>> before you find yourself surprised at how delicious <<he npc_cook>> tastes. Swirling your tongue to collect pre you momentarily envision the intense <<if $npc_cook.fem>>heady<<else>>masculine<</if>> flavour overpowering and corroding away whatever scraps of your own old masculinity remains.
<br>
"@@.npc_cook;Much better, but look at how much is outside your mouth! I don't want a tongue-job I want a face-fucking, throat-stretching, deepthroating BLOWJOB!@@"<br>
<br>
This time you can't restrain yourself from moaning lustily around <<his npc_cook>> cock, though from the expression on <<his npc_cook>> face <<he npc_cook>> quite enjoyed the momentary "humming" action. You grab opposing elbows to lock your arms tighter behind your back and lunge your face forward, your throat relaxing and opening to allow <<his npc_cook>> thick head to spear through.<br>
<br>
You feel <<his npc_cook>> hands return to your head, holding you firm from both sides and keeping you from leaning back until your eyes go wide and tears start to form as you fear you are about to pass out. Yanking you off <<he npc_cook>> allows you to gasp and pant, trailing long strands of drool running back to <<his npc_cook>> cock as tears and sweat streak your face.<br>
<br>
"@@.npc_cook;Look at that! We're barely started and you already look like a trashy, used whore!@@"<br>
<br>
Still catching your breath, you nod quickly. "@@.pc;Your trashy whore, <<sir npc_cook>>, eager to be used some more. Would you please continue to <<if $fetish.get_raped>>rape<<else>>fuck<</if>> my throat?@@"<br>
<br>
"@@.npc_cook;<<if $fetish.get_raped>>Rape? You can't rape the willing and you are <<else>>Fuck? Oh, I'm going to do more than fuck, I'm going to show you what you truly are — <</if>>the most willing, degenerate cock addict in the world. I guess this just confirms that when cocks go in, brains leak out and your slut mouth ought to be used for something far better than talking, open wide!@@"<br>
<br>
<<if setup.getTotalValue("oral") >= 13>>
[<<moveTo 'event_cook_training_oral_3e' "With honed reflex you lunge forward, your jaw spread wide to intercept <<his npc_cook>> <<if $npc_cook.fem>><<getWordPenis false>><<else>>man-missile<</if>> as it jets towards your face." 180>>]
<<else>>
[<<moveTo 'event_cook_training_oral_3e' "You barely have the chance to obey before <<he npc_cook>> is thrusting forward while pulling your face onto <<his npc_cook>> cock." 180>>]
<</if>>
</div>/*#
#desc: oral training 3 - he face-fucks you
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeMakeupMessed 25>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("oral") >= 13>>
The breath you try to suck in is forced into your mouth by the rapid insertion of <<his npc_cook>> cock. Not even slowing as <<he npc_cook>> re-enters your already punished throat <<he npc_cook>> angles your skull to push deeper, forcing more of <<his npc_cook>> <<if $fetish.bestiality_soft>>equine<</if>> magnificence down your throat than you have ever had before.
<<else>>
Your jaw and throat perfectly aligned <<he npc_cook>> slides into your with ease. What appears to be well over half of <<his npc_cook>> length glides into you before meeting the slightest hint of resistance.
<</if>>
<br>
<<He npc_cook>> grunts as <<he npc_cook>> finally grinds to a stop, your lips spread wide, your tongue forced down against the bottom of your mouth by <<his npc_cook>> thicker root.<br>
<br>
"@@.npc_cook;Not bad, slut. Now, take a hand and run it over your throat.@@"<br>
<br>
Starting to tremble from lack of air you do as <<he npc_cook>> said, your eyes going wide as you feel how totally bulged and distended your throat is all the way down to your chest.<br>
<br>
"@@.npc_cook;Feel that? THAT is a proper throat bulge! The best feeling in the world for a face-fuck cock socket like yourself, isn't that right?@@"<br>
<br>
Your mouth filled with cock, your mumbled response isn't anywhere close to intelligible, but <<he npc_cook>> doesn't seem to mind. Unable to breathe, you start to feel your vision narrowing
<<if setup.getTotalValue("oral") >= 15>>
but you remain calm. Only serving cock matters, not your pitiful feelings.
<<else>>
and you frantically thrash and try to pull away.
<</if>>
<br><br>
Finally taking mercy on you <<he npc_cook>> pulls your head back, giving you but a few moments to gasp a few short breaths before plunging back down your throat with even greater fury.<br>
<br>
In a series of brutal thrusts <<he npc_cook>> drives deeper, more of <<his npc_cook>> cock disappearing down your throat with each attempt, though you are so overwhelmed as to barely notice. It isn't long before you descend into a seemingly endless loop of gasping, panting and gagging, spit and precum mixing and splashing and drooling past your gaping lips until it becomes too much...<br>
<br>
<<if setup.getTotalValue("oral") >= 15>>
[<<moveTo 'event_cook_training_oral_3_success' "Re-grip your arms behind your back and surrender to <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>>." 180>>]<br>
<<else>>
[@@.link_locked;Your lack of experience with this level of intensity has you in a near panic.@@]<br>
<</if>>
[<<moveTo 'event_cook_training_oral_3e_fail' "Bring your hands up in defence." 180>>]
</div>/*#
#desc: oral training 3 - safeword out of being face-fucked
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeMakeupMessed 50>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.pc;STOP!@@" You cry out during a brief moment your mouth is empty. Turning your head and closing you mouth you try to brace against <<his npc_cook>> hips<<if setup.getTotalValue("strength") >= 10>> <<he npc_cook>> seems surprised that you are strong enough to hold back against <<his npc_cook>> pull.<<else>> only for your slender arms to crumple as <<he npc_cook>> starts to draw you back in.<</if>><br>
<br>
"@@.npc_cook;Stop? Well, isn't that rude. A cock socket who, after begging to be used, doesn't even manage to get off the penis that graced her with its presence? Tell you what, since I still care about your training, either I force my way back down your throat and hold there until you pass out, or you open those slut lips for another five thrusts so I can relieve these sperm-filled balls.@@"<br>
<br>
Both options are scary, but you find yourself opening your mouth and looking back up at <<him npc_cook>>, the perfect vision of a scared, messy O-faced cockslut.<br>
<br>
"@@.npc_cook;See? I knew you weren't done, ONE!@@" With <<his npc_cook>> loud cry <<he npc_cook>> drives into you again, your sore throat bulging in that now-familiar way, as a full half of <<his npc_cook>> cock crams past your lips.<br>
<br>
Pulling back <<he npc_cook>> actually gives you a moment to breathe before calling out again.<br>
<br>
"@@.npc_cook;TWO!@@"<br>
<br>
If anything, <<he npc_cook>> plunges deeper, moving fast and hard before coming up sharp.<br>
<br>
"@@.npc_cook;THREE!@@"<br>
<br>
Your eyes roll back as <<he npc_cook>> holds at depth for an extra moment. Can you really take two more of these? Was <<he npc_cook>> planning on making you pass out either way? <<He npc_cook>> finally withdraws, though not all the way, <<his npc_cook>> tip resting just past your lips, your cheeks flaring as you suck air past it, every breath suffused with <<his npc_cook>> flavour.<br>
<br>
"@@.npc_cook;I'm almost there, slut, come on, lick that tip, think of all the thick cum it's about to spurt into you!@@"<br>
<br>
Glad to have the extra seconds to catch your breath and for your throat to recover you do as <<he npc_cook>> says; your tongue a dervish as you kiss and suck as best your tired body can manage. The respite doesn't last as you have barely any warning before <<he npc_cook>> pulls your head forward again.<br>
<br>
"@@.npc_cook;FOUR!@@"<br>
<br>
<<He npc_cook>> repeats the ordeal, a deep thrust followed by resting on your lips as you lick, suck and desperately try to catch your breath. Sore, short on air, and only vertical due to <<his npc_cook>> firm grasp on your head your whole world has become cock, so when <<he npc_cook>> pulls back your lips flap desperately, confused as to what is going on.<br>
<br>
Shaking your head, <<he npc_cook>> makes you face up and you struggle to focus on <<his npc_cook>> face. "@@.npc_cook;So I know the bargain was for five more thrusts, but I'm just not quite there, but I think a sixth might do the trick...@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_3f_fail' "Fuck my throat?" 30>>]<br>
[<<moveTo 'event_cook_training_oral_3_abort' "You can't handle this." 180>>]
</div>/*#
#desc: oral training 3 - safeword out of being face-fucked
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
On the one hand you're sore and tired and don't know how much more you can take, but on the other hand you are beyond turned on. Your voice is hoarse and a whisper as you make the only reply you could "@@.pc;Of course, <<sir npc_cook>>, fuck my throat.@@"<br>
<br>
"@@.npc_cook;What's that? I can't hear you.@@"<br>
<br>
You groan, coughing up phlegm and drool as you repeat in a cracking, but more normal voice. "@@.pc;Please, fuck my throat, <<sir npc_cook>>.@@"<br>
<br>
"@@.npc_cook;I'm sorry, I just can't make out what you're saying.@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_3g_fail' "FUCK MY THROAT!" 30>>]<br>
[<<moveTo 'event_cook_training_oral_3_abort' "You can't handle this." 180>>]
</div>/*#
#desc: oral training 3 - safeword out of being face-fucked
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.pc;FUCK MY THROAT!@@" You cry out with every ounce of strength you can muster.<br>
<br>
"@@.npc_cook;Of course!@@" <<He npc_cook>> replies, thrusting forward with a wide grin.
<br>
"@@.npc_cook;FIVE!@@" <<He npc_cook>> calls out as <<he npc_cook>> half-disappears past your lips once more.<br>
<br>
Pulling back <<he npc_cook>> lingers on your lips for but a moment before plunging forward. "@@.npc_cook;SIX!@@" Still at depth as you prepare for <<him npc_cook>> to cum <<he npc_cook>> pauses. "@@.npc_cook;Hmm, still so close, but a deal is a deal.@@"<br>
<br>
<<He npc_cook>> slides out of your throat, the scrape of the thick head of <<his npc_cook>> cock feeling like it's grinding you wider as it mills away at whatever scraps could possibly remain of your gag reflex.<br>
<br>
"@@.pc;Fuck my throat@@" you pant.<br>
<br>
"@@.npc_cook;SIX!@@" <<He npc_cook>> calls out as <<he npc_cook>> obliges, thrusting back in to re-bulge your throat.<br>
<br>
As quick as <<he npc_cook>> went in <<he npc_cook>> pulls back just as fast, your body still empty of cum.<br>
<br>
"@@.pc;Fuck my throat@@" you moan, a little louder this time, as making <<him npc_cook>> cum becomes your whole purpose.<br>
<br>
"@@.npc_cook;SEVEN!@@"<br>
<br>
SLAM!<br>
<br>
"@@.pc;FUCK MY THROAT!@@" From unknown depths you muster the energy to scream, your reward <<his npc_cook>> cock slamming into you even harder.<br>
<br>
"@@.npc_cook;EIGHT!@@" SLAM! <<His npc_cook>> voice is strained, but <<his npc_cook>> testicles continue to hold back their precious treasure.<br>
<br>
"@@.pc;FUCK MY THROAT!@@"<br>
<br>
"@@.npc_cook;NINE!@@".<br>
<br>
SLAM!<br>
<br>
[<<moveTo 'event_cook_training_oral_3h_fail' "FUCK MY THROAT!" 30>>]<br>
[<<moveTo 'event_cook_training_oral_3_abort' "You can't handle this." 180>>]
</div>/*#
#desc: oral training 3 - safeword out of being face-fucked
#status: RELEASED 0.8.4.0
#ignore_spell: leven
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_oral += 1>>
<<set $scene.top = setup.checkTopBodySlot('tits','top')>>
<<changeItemStatus $scene.top 'cumsoaked' '["set",100]'>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.pc;FUCK MY THROAT!@@" your world is lips, a hole and a cock, nothing in existence matters now save <<his npc_cook>> orgasm.<br>
<br>
"@@.npc_cook;NINE!@@".<br>
<br>
SLAM!<br>
<br>
<<printThought "Oh <<getWordGod>> <<hes npc_cook>> so deep, so thick!">><br>
<br>
"@@.pc;FUCK MY THROAT!@@"<br>
<br>
"@@.npc_cook;TEN!@@".<br>
<br>
SLAM!<br>
<br>
<<printThought "Did I just feel <<his npc_cook>> balls touch my chin?">><br>
<br>
"@@.pc;FUUUUUUUUCK MY THROOOOAAAAAAAAAAAAAAAAT! MMMfff—@@" You're cut off as <<he npc_cook>> obliges your howled request.<br>
<br>
"@@.npc_cook;E-LEVEN!@@" <<he npc_cook>> cries out, frantic energy fading into a pained moan.<br>
<br>
SLAM!<br>
<br>
<<He npc_cook>> pauses for a bare moment, your nose just brushing <<his npc_cook>> belly, and then it happens. From deep in <<his npc_cook>> balls a monstrous, gushing load bursts forth, the power of it spraying deep into your throat and then propelling <<his npc_cook>> cock out, filling your every crevice as it slides up and out, only to flip in to the air, continuing to spurt.<br>
<br>
In obvious ecstasy <<he npc_cook>> loses <<his npc_cook>> grip on your skull, the lack of support causing you to crumple to the ground where <<he npc_cook>> paints what feels like your entire body with strands of <<his npc_cook>> seed.<br>
<br>
On the edge of fainting you look up as <<he npc_cook>> staggers slightly from the intensity of the orgasm, a single thought fixed in your head.<br>
<br>
<<printThought "I was so close... if I could only have endured another thrust... though, I think the problem was trying to safeword in the first place...">><br>
<br>
[<<moveTo 'event_cook_training_oral_3_cleanup' "Catch your breath and sit up." 180>>]
</div>/*#
#desc: oral training 3 - abort face-fuck
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_oral += 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
You flail your arms and push away, wriggling out of <<=ps(setup.getNpcName("npc_cook","first"))>> grasp. <<He npc_cook>> stands over you for a moment, <<his npc_cook>> massive cock looming above, dripping with saliva...<br>
<br>
<<printThought "Oh shit...">><br>
<br>
<<His npc_cook>> expression softens as <<he npc_cook>> shakes <<his npc_cook>> head in disappointment. "@@.npc_cook;Sorry, <<callPlayer "npc_cook">>. Yeh tried but... yeh need to do a whole lot better than this, if you want to prove yeh throat.@@"<br>
<br>
You nod and catch your breath as <<he npc_cook>> offers a hand to help you back to your feet.<br>
<br>
<<printThought "I need to practice more. <<He npc_cook>> said this would be a challenge, I need to not hesitate in the first place...">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Glancing at the time, you realise you had best hurry or you'll be late back to work." 300 "<<useClothSetPop 'oral_trial'>>">>]<br>
<<if $player.makeup.messed > 25>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Stop by the bathroom to fix your makeup first." 600 "<<useClothSetPop 'oral_trial'>><<set $player.makeup.messed = 0>>">>]<br>
<</if>>
</div>/*#
#desc: oral training 3 - take his cock all the way
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.oral_stage = 4>>
<<setThreshold 'oral' 'extreme_oral' 'oral_penult'>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' "theme_psychiatrist_cook_12"
4
'event_psychiatrist_session_cook_success_oral_1'
false
>>
<<changeMakeupMessed 50>>
<<include "calcCookCheckin">>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Letting your neck go limp you embrace the feeling of your face being used as a human onahole, relishing the fact that each thrust brings <<his npc_cook>> taut abs closer to your eyes... meaning you are nearer and nearer to taking <<his npc_cook>> full cock.<br>
<br>
With your nose less than a centimetre from touching <<him npc_cook>> you feel a twinge of resistance deep in your throat. You let out a slight "@@.pc;Urk@@" that <<he npc_cook>> somehow notices and you feel <<his npc_cook>> grip on your head loosen. Ignoring the possible mercy you, do not lean back, but instead lunge forward, driving forward with your entire weight.<br>
<br>
Combined with all the work you have put into opening your throat this proves to be the final piece. Lips spread wide your face presses into <<his npc_cook>> belly, your nose squashed as your chin nestles amidst <<his npc_cook>> giant balls.<br>
<br>
Trembling at the sensation of being so utterly impaled your arms unlink and snap forward, wrapping around <<his npc_cook>> thighs in a death-grip to hold yourself in position.<br>
<br>
"@@.npc_cook;Oh FUCK, ye did it!@@" You hear <<him npc_cook>> cry out as you hold yourself in position, knowing that you need to breathe and yet not wanting this amazing feeling of your stretched jaw, your bulging throat, the feeling as if you are being fucked from your head to your heart to end.<br>
<br>
Compromising slightly you relax just enough to tilt your head back and blink up at <<him npc_cook>>. <<Hes npc_cook>> a bit fuzzy thanks to the awkward angle, but you can tell that <<he npc_cook>> is wide-eyed in surprise. Your lips spread so wide you can't move much, but you barely manage to smile around <<his npc_cook>> cock, winking once as your vision starts to fade from lack of air before finally releasing your hold on <<his npc_cook>> thighs and pulling back.<br>
<br>
<<=setup.getNpcName('npc_cook', 'first')>> moans in obvious pleasure as you keep your lips tight to suck <<his npc_cook>> full length as <<he npc_cook>> scraps <<his npc_cook>> way out of your throat, a final stake in the heart of any gag reflex that may have somehow survived through all your past abuse. "@@.npc_cook;In the name of Finn McCool, woman, yeh did it!@@"<br>
<br>
Giving a dainty cough you smile up at <<him npc_cook>> and shake your head. "@@.pc;Not yet — sure, I took your cock, but I am a mouth FUCK hole. Now it's time for me to pleasure your full length until my chin squeezes every last drop of wonderful <<getWordCum>> from you.@@"<br>
<br>
Once again <<he npc_cook>> seems speechless, but then some sort of... perhaps you could call it professionalism? Takes over. <<He npc_cook>> re-asserts <<his npc_cook>> grip on your head and you fold your arms back behind your back. With a final smile from ear to ear you cheerily say the only words that matter; "@@.pc;Fuck. My. Throat.@@"<br>
<br>
Spreading your lips in anticipation <<he npc_cook>> doesn't make you wait, thrusting back into your head with all of <<his npc_cook>> might. Combined with your "warmed-up" state the powerful move is enough to plunge hilt-deep into your expertly aligned throat. The power <<he npc_cook>> exerts confirms that <<he npc_cook>> has previously been holding back lest <<he npc_cook>> injure you, but now, your bona-fides proven, <<he npc_cook>> is giving it to you full force, and full length.<br>
<br>
Licking and sucking the whole time you hum joyfully even as <<his npc_cook>> jackhammer pace abuses your already sore body. Such concerns of "comfort" scarcely matter to a committed cock-whore like yourself and you egg <<him npc_cook>> on, leaning in for each thrust and sucking tight for the full duration of <<his npc_cook>> withdrawal.<br>
<br>
Working your full length <<he npc_cook>> fulfills your dream, <<his npc_cook>> heavy testicles slamming into your chin with each stroke until finally, your body filled with <<his npc_cook>> cock, you feel <<his npc_cook>> balls tense and <<he npc_cook>> discharges. The slight swelling of the thick river of cum making its way down <<his npc_cook>> shaft strains even your well-stretched throat. You snatch out with your arms once again, holding tight and swallowing repeatedly to better stimulate and encourage <<his npc_cook>> rolling orgasm.<br>
<br>
Like cake batter squeezed from a piping bag <<his npc_cook>> cum gushes almost directly into your stomach. Familiar with <<his npc_cook>> long, pulsing orgasms you hold until <<his npc_cook>> final trembling shudder before releasing your grasp and sliding back.<br>
<br>
Your vision flicking from lack of air you suck as hard as you can, your tight lips cleaning <<his npc_cook>> cock from base to tip as it retreats, leaving <<him npc_cook>> immaculately clean even as your face is a delirious mess of drool, sweat and tears.<br>
<br>
"@@.pc;I do good, <<sir npc_cook>>?@@" You ask, your throat hoarse and soft.<br>
<br>
Stunned once again <<he npc_cook>> smiles and then leans over to place a gentle kiss on your forehead. "@@.npc_cook;Yeh did perfect, <<callPlayer "npc_cook">>... simply perfect.@@"<br>
<br>
[<<moveTo 'event_cook_training_oral_3_cleanup' "Take a moment to bask in your triumph." 180>>]
</div>/*#
#desc: oral training 3 - assessment and cleanup
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_cook.flags.porn.oral_stage >= 4>>
<<useClothSetPop 'oral_trial'>>
<</if>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $npc_cook.flags.porn.oral_stage >= 4>>
Kneeling in contentment you let out a cummy burp, the only real downside to your performance that you are unable to enjoy <<his npc_cook>>
<<if setup.getTotalValue("cum") > 15>>
Delectable
<<elseif setup.getTotalValue("cum") >= 10>>
Delicious
<<elseif setup.getTotalValue("cum") > 5>>
Tasty
<<else>>
Surprisingly addictive
<</if>>
<<getWordCum>>.<br>
<br>
Not really needing to clean <<himself npc_cook>> up <<=setup.getNpcName('npc_cook', 'first')>> merely takes a moment to catch <<his npc_cook>> breath and shake <<his npc_cook>> head in amazement before helping you back to your feet. You fix your clothes as <<he npc_cook>> gushes over your performance.<br>
<br>
"@@.npc_cook;Aye, I've seen few things so amazing in me life! Even on screen!@@"<br>
<br>
The mention of "screen" reminds you of the whole ostensible purpose of this exercise — to prepare you for a career in porn.
<<if $player.flags.humiliationStyle == "brazen">>
The thought of others watching videos of you doing this sort of thing... or taking multiple <<if $npc_cook.fem || $options.fem>>people<<else>>guys<</if>> in a row? Despite the abuse it just endured the mere thought instantly has your throat hungering for more cock.
<<else>>
You blush at the thought of someone watching a video of you performing as today... and then meeting you on the street. What could be more embarrassing? Well... maybe if they did a re-enactment right there in public... you'd die of humiligasm... is that a thing? It should be, it sounds wonderful.
<</if>>
<br><br>
<<if $npc_cook.flags.porn.anal_stage >= 4 || $npc_cook.flags.porn.vag_stage >= 4>>
"@@.npc_cook;So you shan't be surprised to know that I've been recording and editing together your deep, or maybe that should be extra-deep-throat training the same as I did when I was
<<if $player.flags.porn.genre.anal && $player.flags.porn.genre.vag>>
plowing into that ass and dripping cunt of yours. You've already drawn fans with your other two holes... how about making it the trifecta?
<<elseif $player.flags.porn.genre.vag>>
plowing into that dripping cunt of yours. You've already seen how many fans that hot honey hole has attracted, whaddaya say, you ready to shock the community again with your equally tremendous throat?
<<elseif $player.flags.porn.genre.anal>>
plowing into that hot, slutty ass of yours. You've already seen how many fans your astounding ass has attracted, whaddaya say, you ready to shock the community again with your equally tremendous throat?
<<else>>
I know you declined my offer before, but I'm telling you, just these two videos would make you some good credits and open up future work for sure. You're such a gifted natural it's almost a crime to hide you away from adoring fans... so whaddaya say, you wanna be a star?
<</if>>
Well?@@"<br>
<br>
<<if $player.flags.porn.genre.anal || $player.flags.porn.genre.vag>>
[<<moveTo 'event_cook_training_pornstar_yes_oral' "Smile and fulfill your dream of being a big, slutty star." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_oral' "Say you'd prefer to keep your mouth to yourself and only use your ass on camera." 60>>]
<<else>>
[<<moveTo 'event_cook_training_pornstar_yes_all' "Agree to release both videos and star in all kinds of porn." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_yes_oral' "Tell <<him npc_cook>> to just release the new, oral video, that you want to reserve your ass for personal use." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_oral' "Shake your head and decline the offer." 60>>]
<</if>>
<<else>>
"@@.npc_cook;Anyway, speaking of professionals, I have a bit of a confession to make. I know I told you at the start that I'd just be helping train you, maybe help you make some connections for you to get into porn but... I've actually been filming your entire training.@@"<br>
<br>
Your jaw drops, not in anticipation of cock, but in surprise!<br>
<br>
"@@.npc_cook;Don't worry! Nobody has seen the video... well, other than myself... many times... I don't think you understand how fucking hot you are, you're a... natural doesn't seem to cut it, supernatural? You're the most talented <<if $fetish.sissy>>sissy<<else>>slut<</if>>, the most gifted girl it has ever been my pleasure to work with. Anyway, once I finish editing in this final bit?...@@" <<He npc_cook>> shakes <<his npc_cook>> head and lets loose a whistle, unable to compose the words.<br>
<br>
"@@.npc_cook;So, anyway, with this demo tape I can get you work for certain — you've actually inspired me to get back into the business myself, self-publishing since my old employers just don't appreciate my gifts, though, after seeing you with it... anyway, if you'd give me permission I'll finish cutting the film and send you your share of the revenue, and pass along any job opportunities for your world-class throat that I come across?@@"<br>
<br>
[<<moveTo 'event_cook_training_pornstar_yes_oral' "Nod and agree to start a side career in porn." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_oral' "Shake your head and decline the offer." 60>>]
<</if>>
<<else>>
Your body aching from abuse and effort you drag yourself to your feet, careful not to slip on the cum spread across the floor. Only partially recovered <<himself npc_cook>> <<he npc_cook>> looks as you with... is that awe? It lasts but a moment before being replaced by <<his npc_cook>> "professional" facade.<br>
<br>
"@@.npc_cook;Pretty good, I think you've about mastered taking this, I—@@"<br>
<br>
With surprising firmness you put your foot down and shake your head. "@@.pc;No, my nose touched, but that doesn't count — you need to slam into my face, bruise my chin with your balls. Until I manage that I am a failure as a cock-socket face fuck-hole.@@"<br>
<br>
<<He npc_cook>> looks even more impressed, seemingly at a momentary loss for words. "@@.npc_cook;Wow, after all you had done I thought to take mercy on you — truth be told I have never been with a woman who could truthfully be said to take ALL of my cock... I should have known you would be the first, that fire in your eyes? That is the mark of a champion, and I will be proud to play a part in finalising this aspect of your training.@@"<br>
<br>
As <<he npc_cook>> speaks you idly scrape the cum from your face and lick it up.
<<if setup.getTotalValue("cum") > 15>>
As delicious as always you only wish you had the time, or energy, to slurp up every drop of the sea that has formed around you.
<<elseif setup.getTotalValue("cum") >= 10>>
The yummy substance seems to restore a bit of your energy, mingling with the better part that <<he npc_cook>> injected directly into your throat to give you quite the full belly.
<<elseif setup.getTotalValue("cum") > 5>>
You can't help yourself from sucking every drop from your fingers, the taste almost disturbingly good...
<<else>>
Something comes over you, or is that cums? Whatever it is, you find yourself licking up every drop of cum that you scrape off your face, the bitter, salty flavour barely a distraction compared to some strange, primal need to consume it...
<</if>>
<br>
Even with your little snack your outburst took more energy than you thought and you sway slightly, almost falling before <<he npc_cook>> leaps over to steady you. "@@.npc_cook;That'll need be another day, methinks. I'd offer a towel, but I daresay there's no saving your outfit from what I have spilt upon it.@@"<br>
<br>
You shrug, it won't be the first time you found yourself coated in <<if $npc_cook.fem && $options.fem>>a woman's<<elseif $npc_cook.fem>>someone's<<else>>a man's<</if>> cum. You just hope your manager does not take it out on you too hard. Speaking of which...<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "You glance at the time and realise you had best hurry or you'll be late back to work." 300 "<<useClothSetPop 'oral_trial'>>">>]<br>
<<if $player.makeup.messed > 25>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Stop by the bathroom to fix your makeup first." 600 "<<useClothSetPop 'oral_trial'>><<set $player.makeup.messed = 0>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: agree to be an oral porn star
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.porn.genre.oral = true>>
<<set $player.flags.porn.genre.cum = true>>
<<set $player.flags.porn.genre.humiliation = true>>
<<set $player.flags.porn.genre.feminization = true>>
<<set $player.flags.porn.genre.bimbofication = true>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<He npc_cook>> smiles in obvious satisfaction.
<<if $player.flags.porn.genre.anal || $player.flags.porn.genre.vag>>
"@@.npc_cook;Wonderful, your face belongs on screens everywhere, looking out at horny fans as your lips and throat spread around a cock! I can't wait to review and edit in this last footage — "<<=$player.flags.porn.pornname>> in Shut me up and Pound my Throat Like a Mare" is going to be an instant classic alongside your previous work!@@"<br>
<br>
<<He npc_cook>> grins, then looks at <<his npc_cook>> watch. "@@.npc_cook;Oh, wow, look at the time, I need to get back to work, I'll talk to you later <<=$player.flags.porn.pornname>>!@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Fix your clothes and return to your desk.' 180>>]<br>
<<if $player.makeup.messed > 25>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Stop by the bathroom to fix your makeup first." 600 "<<set $player.makeup.messed = 0>>">>]<br>
<</if>>
<<else>>
"@@.npc_cook;Wonderful, your face belongs on screens everywhere, looking out at horny fans as your lips and throat spread around a cock! One final thing — you need to choose a name to use professionally.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
<</if>>
</div>/*#
#desc: decline becoming an oral porn star
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
"@@.npc_cook;Damn,
<<if $player.flags.porn.genre.anal>>
with all the success we've had with your first video I was really hoping to share your other hole with the world.
<<else>>
I really believe your amazing throat needs to be shared with the world.
<</if>>
Trust me, I've had a lot of lips wrapped around my cock... well, not so many since the surgery, but still! I could count on one hand there number of sluts that could even come close to comparing to the wonderful cock-socket you call a mouth! If you ever change your mind, well... you're sitting on a goldmine and guaranteed word with this tape, I tell yeh!@@"
<br><br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Say you'll keep that in mind, fix your clothes, and head back to your desk." 180>>]<br>
<<if $player.makeup.messed > 25>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Stop by the bathroom to fix your makeup first." 600 "<<set $player.makeup.messed = 0>>">>]<br>
<</if>>
</div>/*#
#desc: psychiatrist topic: challenge of cook's horsecock orally
#status: RELEASED 0.8.4.0
#*/
<<if $npc_cook.flags.porn.oral_stage >= 4>>
<<moveTo 'event_psychiatrist_session_cook_success_oral_1'>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the challenges you've been facing learning to choke down <<=ps(setup.getNpcName('npc_cook', 'first'))>> gloriously magnificent <<if $fetish.bestiality_soft>>horsecock<<else>><<if $npc_cook.fem>>girl<</if>>cock<</if>>.<br>
<br>
<<switch $npc_cook.flags.porn.oral_stage>>
<<case 0>>
For the first thing, <<he npc_cook>> won't even let you try to suck <<him npc_cook>> off! insisting that you need experience with someone more "normal" before <<if $npc_cook.fem>>she'll<<else>>he'll<</if>> even let you put lips on <<his npc_cook>> member.<br>
<br>
"@@.npc_psychiatrist;I understand your frustration — Goddess knows this is a world of instant gratification, but you need to consider it on two levels. First, is that <<he npc_cook>> is absolutely right, you want to learn to suck smooth and deep, trying to go too fast could see you injuring your throat or strain your jaw and that would only set back your progress.@@"
<<case 1>>
You tell her how <<his npc_cook>> training routine isn't just a matter of working you up to taking <<his npc_cook>> mammoth girth, but a psychological test too!<br>
<br>
"@@.npc_psychiatrist;As it should be. I mean, think about it — you're trying to get into porn. It isn't enough just to suck cock in front of a camera — you need to look GOOD sucking cock in front of a camera. That's harder than you'd think, pun intended! especially with someone of <<his npc_cook>> dimensions. Just keep at it and listen to your instructor and you'll have that cute throat properly filled soon enough!@@"
<<case 2>>
You talk about your ongoing training, how for all the progress you've made <<=setup.getNpcName('npc_cook', 'first')>> seems to keep stepping up the challenge in every way.<br>
<br>
"@@.npc_psychiatrist;It sounds like you're on track. Just keep your focus and you'll reach your goal soon!@@"
<<case 3>>
You gush with glee at how close you are to your goal of taking <<his npc_cook>> full, massive length down your throat. Your turn a bit sadder as you continue, noting that you seem to have hit a "wall" as you seem unable to push through a final lingering gag reflex to accept the last of <<his npc_cook>> glorious length.<br>
<br>
"@@.npc_psychiatrist;Hmm, maybe you should look into other methods of training? <<=setup.getNpcName('npc_cook', 'first')>> has obviously been a great teacher so far, but sometimes we need to mix it up, add a little variety to push past plateaus.@@"
<<case 4>>
You swell with pride as you describe the throat-stretching feeling of taking every centimetre of <<=ps(setup.getNpcName('npc_cook', 'first'))>> mammoth member down your throat.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;How lovely to hear... and just imagining those pretty lips of yours, all stretched to wrap around a nice thick sausage... so delightful — and I am sure it tastes even better! Of course skills are of no use if they are not exercised frequently, so I heartily endorse you going forth with the full confidence that you can suck any cock you come across.@@"
<<default>>
ERROR: unexpected npc_cook.flags.porn.oral_stage : <<=$npc_cook.flags.porn.oral_stage>>
<</switch>>
<br><br>
You agree with her and thank her for the context and the advice.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: oral training 4 - post-mastery practice
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_oral += 1>>
<<applyExperience 'oral' $npc_cook.penis_size 'skip' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
There's no prep or pre-amble today; you both know you can take <<=ps(setup.getNpcName("npc_cook","first"))>> <<if $fetish.bestiality_soft>>horse-cock<<else>>monster schlong<</if>> to the root and you waste no time kneeling down and letting <<him npc_cook>> slide down your throat.<br>
<br>
<<Hes npc_cook>> half soft on first insertion, but stiffens up quickly, your throat bulging as you bob your head back and forth, sneaking the occasional quick gasps of air where you can as you slurp and lick and suck <<him npc_cook>> to a <<if $fetish.cum>>belly-filling <</if>>climax.<br>
<br>
"@@.npc_cook;Now that hits the spot... the DEEP spot!@@" <<He npc_cook>> jokes with a laugh, helping you to your feet as you lick your lips and re-adjust your jaw before the two of you head back to your work stations.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'With a weary smile you return to your desk<<if $fetish.cum>>, your cum-filled belly sloshing with each step<</if>>.' 180>>]<br>
<<if $player.makeup.messed > 25>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Stop by the bathroom to fix your makeup first." 600 "<<set $player.makeup.messed = 0>>">>]<br>
<</if>>
</div>/*#
#desc: call cook
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<initRoom>>
<<if ( (
( setup.getUTCDay($now) == 0 || setup.getUTCDay($now) == 6 )
&& ( ($now.getUTCHours() >= 7) && ($now.getUTCHours() < 18) )
) || ( ( $now.getUTCHours() >= 17) && ($now.getUTCHours() < 18) ) )>>
<<moveTo 'room_call_cook_1'>>
<<else>>
<<moveTo 'room_call_cook_busy'>>
<</if>>
<</if>>/*#
#desc: call cook and he is too busy to take the call
#status: RELEASED 0.9.2.0
#ignore_spell: sleepin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.npc_cook;Aye, this is <<=setup.getNpcName('npc_cook', 'first')>> I'm busy workin' or sleepin', gimme a call back another time, aye.@@"<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: talk to cook on phone
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You give <<=setup.getNpcName('npc_cook', 'first')>> a call and <<he npc_cook>> answers with <<his npc_cook>> usual jovial mood.<br>
<br>
"@@.npc_cook;<<=$player.first_name>>! or should I say... <<=$player.flags.porn.pornname>>? Anyway I've got a couple opportunities looking for your special skills if you're lookin' to do some acting.@@"<br>
<br>
<<if !State.hasPlayed("room_call_cook_schedule")>>
[<<moveTo "room_call_cook_schedule" "You'd like to shoot some more porn." 180>>]<br>
<</if>>
[<<moveTo "room_call_cook_expand_genre_1" "Ask <<him npc_cook>> about expanding your fields of expertise." 180>>]<br>
[<<moveTo $scene.beforePhoneCallLocation "Thank <<him npc_cook>> for <<his npc_cook>> time and end the call." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: schedule porn shoot with cook
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You can practically see <<=ps(setup.getNpcName('npc_cook', 'first'))>> wide smile as you tell <<him npc_cook>> you're ready to film another porno.<br>
<br>
"@@.npc_cook;Wonderful! I'm busy during the week at the canteen, but drop by the studio over the weekend and we'll see about shooting something!@@" <<He npc_cook>> gives you the location of the studio you'll be filming at, a location not too far from the University.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "You tell <<him npc_cook>> that you'll see <<him npc_cook>> then and end the call." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div><<if !$player.flags.porn.genre.bondage>>
<<if setup.getTotalValue("bondage") > 10>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to do bondage porn." 180 "<<set $scene.porngenre = 'bondage'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough at bondage to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if $fetish.piss && !$player.flags.porn.genre.piss>>
<<if setup.getTotalValue("piss") >= 10>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to do watersports on camera." 180 "<<set $scene.porngenre = 'piss'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in watersports to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if !$player.flags.porn.genre.oral>>
<<if setup.getTotalValue("oral") > 10>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to suck cock on camera." 180 "<<set $scene.porngenre = 'oral'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in oral sex to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if !$player.flags.porn.genre.anal>>
<<if setup.getTotalValue("anal") >= 10>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to get fucked in the ass on camera." 180 "<<set $scene.porngenre = 'anal'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in anal sex to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if $fetish.bestiality_hard && !$player.flags.porn.genre.bestiality>>
<<if setup.getTotalValue("bestiality") > 10>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to have sex with animals on camera." 180 "<<set $scene.porngenre = 'bestiality'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in bestiality to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if !$player.flags.porn.genre.bdsm>>
<<if setup.getTotalValue("bdsm") > 10>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to do spanking porn and the like." 180 "<<set $scene.porngenre = 'bdsm'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in receiving pain to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if !$player.flags.porn.genre.foot>>
<<if setup.getTotalValue("foot") > 10>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to do foot fetish videos." 180 "<<set $scene.porngenre = 'foot'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in foot fetishism to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if !$player.flags.porn.genre.dominance>>
<<if setup.getTotalValue("dominance") > 10>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to do fem-domme videos... with you as the domme." 180 "<<set $scene.porngenre = 'dominance'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in dominance to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if !$player.flags.porn.genre.rubber>>
<<if $player.sec_style.clothing.latex>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to do latex fetish videos." 180 "<<set $scene.porngenre = 'rubber'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in latex fetishism to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if !$player.flags.porn.genre.maid>>
<<if $player.flags.maidcafe.stage >= 2 || $player.flags.work_coffee.times_worked || State.hasPlayed("event_landlord_maid_work")>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to do maid fetish videos." 180 "<<set $scene.porngenre = 'maid'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in being a cute maid to consider doing that style of porn.@@]<br>
<</if>>
<</if>>
<<if !$player.flags.porn.genre.milking>>
<<if $player.body_ref.milkProduction>>
[<<moveTo "room_call_cook_expand_genre_2" "Say you want to do milking fetish videos." 180 "<<set $scene.porngenre = 'milking'>>">>]<br>
<<else>>
[@@.link_locked;You aren't interested or experienced enough in being milked to consider doing that style of porn.@@]<br>
<</if>>
<</if>>/*#
#desc: ask cook to expand the genre's you're willing to shoot porn for
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_cook', 'first')>> that you would like to be able to feature in a greater variety of porno videos.<br>
<br>
"@@.npc_cook;What did yeh have in mind, <<callPlayer "npc_cook">>?@@"<br>
<br>
<<include "pornGenreOptIn">>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Change your mind, thank <<him npc_cook>> for <<his npc_cook>> time and end the call." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: cook agrees to expand your available porn genres
#status: RELEASED 0.9.2.0
#ignore_spell: givin','a,goin',suckin',porngenre
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_cook', 'first')>> that you would like to be able to do porn where you
<<switch $scene.porngenre>>
<<case 'bondage'>>
are put in bondage.<br>
<br>
"@@.npc_cook;Aye, I suppose I shan't be surprised you'd be interested in being tied up and fucked. I'll see about putting your name out there that yeh interested.@@"
<<set $player.flags.porn.genre.bondage = true>>
<<case 'piss'>>
participate in watersports.<br>
<br>
<<if $player.flags.porn.genre.oral>>
<<set $player.flags.porn.genre.piss = true>>
"@@.npc_cook;Well, aren't you the dirty one. I shouldn't have any trouble finding an audience for your cute face being the target of a lemonade fountain, just make sure you're nice and thirsty, eh <<callPlayer "npc_cook">>?@@"
<<else>>
"@@.npc_cook;Well, aren't you the dirty one, but before we can discuss water sports I think you need to master cocksucking, which means finish yer training and then talk to me again.@@"
<</if>>
<<case 'oral'>>
suck cock.<br>
<br>
"@@.npc_cook;Silly girl! I told yeh, if you want to make it in porn you need to finish yer training first!@@"
<<case 'anal'>>
get fucked in the ass.<br>
<br>
"@@.npc_cook;Silly girl! I told yeh, if you want to make it in porn you need to finish yer training first!@@"
<<case 'bestiality'>>
have sex with animals.<br>
<br>
"@@.npc_cook;Now aren't yeh just the depraved pervert! The market for such is pretty small, though they are... passionate, I'll keep an eye out for yeh.@@"
<<set $player.flags.porn.genre.bestiality = true>>
<<case 'bdsm'>>
are spanked, flogged, or otherwise endure pain.<br>
<br>
"@@.npc_cook;A pain slut on top of everything else? Oh I shouldn't have any issue finding someone interested in a <<if $fetish.sissy>>sissy<<else>>lass<</if>> who's willing to take a little abuse, I'll let yeh know.@@"
<<set $player.flags.porn.genre.bdsm = true>>
<<case 'foot'>>
indulge in foot worship and the like.<br>
<br>
"@@.npc_cook;Aye, you'd be a right sexy thing suckin' on some toes or givin' a pair 'a boots a nice spit-shine. I'll keep an eye out for that sort of thing goin' forward.@@"
<<set $player.flags.porn.genre.foot = true>>
<<case 'dominance'>>
show off your skills at dominance.<br>
<br>
"@@.npc_cook;Aye, always popular to film a bit of fem-domme... and yeh seem to have the demeanor for et!@@"
<<set $player.flags.porn.genre.dominance = true>>
<<case 'rubber'>>
dress up in latex fetish outfits.<br>
<br>
"@@.npc_cook;Aye, you'd be a right sexy thing all dressed in tight latex. I'll keep an eye out for that sort of thing goin' forward.@@"
<<set $player.flags.porn.genre.rubber = true>>
<<case 'maid'>>
role play as a sexy maid.<br>
<br>
"@@.npc_cook;Aye, for as dirty a girl as you are you'd make a right sexy maid. I'll keep an eye out for that sort of thing goin' forward.@@"
<<set $player.flags.porn.genre.maid = true>>
<<case 'milking'>>
get mechanically milked.<br>
<br>
"@@.npc_cook;Hmm, you certainly have the tits for it, and you say they're fully functional? Oh, I'll be able to find a use for that little skill for sure!@@"
<<set $player.flags.porn.genre.milking = true>>
<<default>>
ERROR: unknown scene.porngenre <<=$scene.porngenre>>
<</switch>>
<br><br>
<<include "pornGenreOptIn">>
[<<moveTo $scene.beforePhoneCallLocation "Thank <<him npc_cook>> for the consideration and end the call." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: show up to porn studio for a shoot
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/porn_lobby.png">>
<div id="invframe" class="scrolltext">
You show up to Film It!: Studios by the Hour.<br>
<br>
<<if $now.getUTCHours() < 6 || $now.getUTCHours() > 18>>
The studio is closed for the day.
<<else>>
Relatively nondescript from the exterior you proceed into the lobby and check the large marquee map listing the various stages available for rent.<br>
<br>
<<if $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>
[<<moveTo "event_porn_select_shoot_1" 'Find <<=setup.getNpcName("npc_cook","full")>> and see about a shoot.' 180>>]<br>
<<else>>
You aren't on the call sheet any time soon, you have no reason to be here.<br>
<br>
<<printThought '<<=setup.getNpcName("npc_cook","first")>> said <<he npc_cook>> only shot on weekends, I should check back then.'>><br>
<br>
<</if>>
<</if>>
[<<moveTo "room_citymap" "Leave." 300>>]
</div>/*#
#desc: show up to porn studio for a shoot
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body.penissize[0] >= 6 && !State.hasPlayed("event_porn_large_cock_cook_invite_1")>>
<<initRoom>>
<<moveTo "event_porn_large_cock_cook_invite_1">>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
You find <<=setup.getNpcName("npc_cook","first")>> and ask about a shoot but <<he npc_cook>> shakes <<his npc_cook>> head.<br>
<br>
"@@.npc_cook;Ach, sorry, <<callPlayer "npc_cook">>, but ah am already booked today, maybe come back some other time, aye?@@"<br>
<br>
<<else>>
"@@.npc_cook;So, <<callPlayer "npc_cook">>, what will we be shootin' this fine day?@@"<br>
<br>
<<printPornShootOptions>>
<<if false>>
<<moveTo "event_cook_training_finale_reshoot_start">>
<<moveTo "event_cook_training_finale_reshoot_pony_start">>
<<moveTo "event_porn_bimbofication_1">>
<<moveTo "event_porn_bondage_gym_futa_1">>
<<moveTo "event_porn_sorority_1">>
<<moveTo "event_panties_sissy_secretary_1">>
<<moveTo "event_porn_congress_1">>
<<moveTo "event_porn_hucow_1">>
<<moveTo "event_porn_large_cock_1">>
<<moveTo "event_porn_dominance_1">>
<<moveTo "event_porn_convent_demon_1">>
<<moveTo "event_porn_torture_humil_1">>
<</if>>
<</if>>
[<<moveTo "room_citymap" "Leave." 300>>]
</div>/*#
#desc: intro for doing a porn "finale" reshoot ponyplay
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pony=true>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You ask about doing a re-shoot of and <<=setup.getNpcName('npc_cook', 'first')>> cheerfully cues up the familiar "stables" set.<br>
<br>
"@@.npc_cook;Aye, I'll be getting changed... and finding another lass to play the part of that second pony!@@"<<if !setup.checkItemSetWorn("farmgirl")>> On <<his npc_cook>> way out of the room <<he npc_cook>> taps on a digital wardrobe to bring up a familiar skimpy farmgirl top and shorts, "@@.npc_cook;there yeh go, <<callPlayer "npc_cook">>.@@"<</if>><br>
<br>
<<if setup.checkItemSetWorn("farmgirl")>>
[<<moveTo "event_cook_training_finale_0" "Get ready to start the shoot." 180 "<<set $scene.first=false>>">>]
<<else>>
[<<moveTo "event_cook_training_finale_0" "Get changed and start the shoot." 180 "<<set $scene.first=false>>">>]
<</if>>
</div>/*#
#desc: intro for doing a porn "finale" reshoot not ponyplay
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pony=false>>
<</if>>
<<set $player.location = 'Film Set — Barn'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You ask about doing a re-shoot of and <<=setup.getNpcName('npc_cook', 'first')>> cheerfully cues up the familiar "stables" set.<br>
<br>
"@@.npc_cook;Aye, I'll be getting changed...@@"<<if !setup.checkItemSetWorn("farmgirl")>> On <<his npc_cook>> way out of the room <<he npc_cook>> taps on a digital wardrobe to bring up a familiar skimpy farmgirl top and shorts, "@@.npc_cook;there yeh go, <<callPlayer "npc_cook">>.@@"<</if>><br>
<br>
<<if setup.checkItemSetWorn("farmgirl")>>
[<<moveTo "event_cook_training_finale_0" "Get ready to start the shoot." 180 "<<set $scene.first=false>>">>]
<<else>>
[<<moveTo "event_cook_training_finale_0" "Get changed and start the shoot." 180 "<<set $scene.first=false>>">>]
<</if>>
</div>/*#
#desc: MC plays thief captured
#status: RELEASED 0.9.2.0
#ignore_spell: w,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItem "catsuit_latex_headless_black_copy">>
<<wearItem "catsuit_latex_headless_black_copy" true>>
<<addItem "latex_hood_black_copy">>
<<wearItem "latex_hood_black_copy" true>>
<</if>>
<<set $player.location = 'Film Set — Mansion'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_interior.png">>
<div id="invframe" class="scrolltext">
"@@.generic_male3;The Woman From W.E.T., take one. And action!@@"<br>
<br>
You get changed for the shoot, slipping into a full body catsuit to start things off pretending to prowl through a simulated mansion; a sexy, shiny spy with a small belt of gadgets in search of a classified documents. A stuck-on emblem on the back of the suit reads "World Espionage Team." You try not to roll your eyes at the forced acronym.<br>
<br>
"@@.generic_male1;Stop! You there!@@" A guard shouts at you from down the hallway. It would appear that your surreptitious sneaking has been seen through!<br>
<br>
[<<moveTo "event_porn_bimbofication_2" "Go quietly..." 180 "<<set $scene.resist=false>>">>]<br>
[<<moveTo "event_porn_bimbofication_2" "Resist!" 180 "<<set $scene.resist=true>>">>]
</div>/*#
#desc: MC plays thief threatened
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.resist>>
<<set _ma = setup.getTotalValue("martial_arts")>>
<<applyExperience 'martial_arts' _ma 'normal' $SEEN_STRANGER>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bondage' 13 'terrible' $ALONE>>
<</if>>
<<removeItem "catsuit_latex_headless_black_copy" true>>
<<deleteItem "catsuit_latex_headless_black_copy">>
<<removeItem "latex_hood_black_copy" true>>
<<deleteItem "latex_hood_black_copy">>
<</if>>
<<set $player.location = 'Film Set — Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
The lights of the manor turn a threatening red as an alarm begins to blare. It blends into a techno beat as you run from your pursuers. When backed into a corner,
<<if $scene.resist>>
you "put up a fight," eventually overpowered and bound tightly. Nearly your entire body is restrained in rope as you struggle for the camera. Your captor hoists you over his shoulder.
<<else>>
you meekly raise your hands in surrender. It wasn't supposed to go like this! Your wrists are cuffed by a muscular guard before you are dragged down the hallway.
<</if>>
<br><br>
You are guided off-set for a moment for an obvious scene transition. The catering team takes a moment to give you a sip of water while the next set is prepared. You take your mark on a new stage: a sterile metal chair in the middle of a concrete basement interrogation room. Your bonds are tightened against the bars to ensure you cannot move.<br>
<br>
The cameras start rolling again as a new <<if $options.fem>>actress<<else>>actor<</if>> stands over you, clad in a tacky red velvet suit. "@@.generic_male2;Well, well, well, look who we've caught here! A sneaky spy slinking around, trying to steal my secret files... but who do you work for, hmm? Now that is the REAL question...@@"<br>
<br>
You make a mock struggle and consider how you will respond...<br>
<br>
[<<moveTo "event_porn_bimbofication_3" "I'll never talk!" 180 "<<set $scene.spy=true>>">>]<br>
[<<moveTo "event_porn_bimbofication_3" "I'm not a spy, I'm just a thief!" 180 "<<set $scene.spy=false>>">>]
</div>/*#
#desc: MC hypnotised
#status: RELEASED 0.9.2.0
#ignore_spell: cheesiness,nixie,crt
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
<<if $scene.spy>>
You opt for a defiant tone as you insist that they'll never make you talk, your defiance only amusing your captor.<br>
<br>
"@@.generic_male2;Never? Ah, but you underestimate our capabilities. We have ways of making you talk... and more! By the time we're done with you you'll be moaning on cue...@@"
<<else>>
You opt for denial, insisting that this is all a misunderstanding, and that you're just a thief, not a spy!<br>
<br>
"@@.generic_male2;A likely story! No, you were clearly sent to suss out my secret schemes... but if you refuse to tell us, well, we have ways of making you talk... and more! By the time we're done with you you'll be moaning on cue...@@"
<</if>>
<br><br>
Your preening captor steps to one side as one of the countless identical jumpsuit-clad goons enter the room. <<He>> pushes a retro CRT TV towards you, placing it before you. A line of nixie tubes runs across the top of the wooden frame. The scientist adjusts the dials on the side of the contraption as the tubes begin to glow, illuminating numbers. When the numbers read 6969, a stark black and white spiral fills the screen.<br>
<br>
"@@.generic_male2;Don't worry; I won't make you sleepy. I want you wide awake for what comes next. You will obey us. You will tell us everything.@@" The <<if $options.fem>>villainess<<else>>villain<</if>> moves behind you, forcing you to stare deeply into the spiral as <<he>> whispers into your ear. "@@.generic_male_2;Your body is mine to do as I wish. Now you will give me your mind.@@"<br>
<br>
You focus yourself to give a blank expression in the face of the pulpy production as you let your eyes drift towards the centre of the spiral. You know this is nothing but a visual effect; enough people have tried to pry at your mind to know when something is actually happening. Still, you sell it like it is the real thing.<br>
<br>
[<<moveTo "event_porn_bimbofication_4" "Yes, I will obey..." 180>>]
</div>/*#
#desc: MC hypnosis tested
#status: RELEASED 0.9.2.0
#ignore_spell: w,t,mesmerist
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — Mansion'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_interior.png">>
<div id="invframe" class="scrolltext">
The mesmerist <<if $options.fem>>villainess<<else>>villain<</if>> continues to speak into your ear as you feign faux resistance to <<his>> commands, pretending to fall further and further under <<his>> control the longer her talks and the deeper you stare.<br>
<br>
"@@.generic_male2;Just relax. I'm not going to hurt you. I'm actually quite nice. You'll get to know that in time. All you have to do is just let go of your control and give it to me.@@"<br>
<br>
"@@.pc;Yes <<Master>>...,@@" You moan, wiggling erotically in your bonds.<br>
<br>
"@@.generic_male2;Tell me who you work for.@@" <<he>> orders.<br>
<br>
"@@.pc;The World Espionage Team...@@" You reply.<br>
<br>
"@@.generic_male2;Ah, my old nemesis. It's a good thing I got you away from there. They aren't good people; always stopping me from accomplishing my plans. You do want to help me with your plans, don't you?@@" the <<man>> purrs erotically into your ear, a hand lowering to circle around your nipple. A low moan escapes your lungs as you nod your head sluggishly. "@@.generic_male2;That's right. You're a good little bimbo. Don't worry; I'll do all the thinking and planning for you. You just have to obey my commands without the slightest thought or hesitation.@@"<br>
<br>
"@@.generic_male2;That's right. You are going to be my inside girl.@@" The <<man>> walks around the chair, <<his>> crotch now centimetres from your face. The spiral from the TV stretched beyond the screen, backlighting the <<if $options.fem>>villainess<<else>>villain<</if>>. The centre of the spiral was now located directly behind <<his>> penis. "@@.generic_male2;The first thing you are going to do is show your loyalty to me. Then you are going to apologise to all my henchmen you inconvenienced. And then... you are going to tell me every secret about W.E.T. you know.@@" <<he>> commands as <<he>> whips out a porn-worthy cock that really puts the Big in Big Bad Evil <<if $options.fem>>Gal<<else>>Guy<</if>>.<br>
<br>
[<<moveTo "event_porn_bimbofication_5" "I must obey..." 300 "<<set $scene.mindless=true>>">>]<br>
[<<moveTo "event_porn_bimbofication_5" "I'm a horny bimbo!" 300 "<<set $scene.mindless=false>>">>]
</div>/*#
#desc: hypnosis escalating
#status: RELEASED 0.9.2.0
#ignore_spell: mesmerist,schlampen
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.mindless>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bimbofication' 20 'terrible' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'oral' 13 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Film Set — Mansion'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_interior.png">>
<div id="invframe" class="scrolltext">
<<if $scene.mindless>>
Eyes half rolled back in your head you robotically start sucking, giving an over-the-top vacant performance as you moan and slurp.
<<else>>
Eyes sparkling you moan and lick your lips. "@@.pc;Yes,<<if $fetish.daddy>> <<daddy>>,<</if>> give more cock now!@@" You state as you eagerly start sucking.
<</if>>
<br><br>
"@@.generic_male2;That's a good girl. Just keep going. Just like that...@@" <<He>> strokes your hair gingerly, treating you like a prized trophy. "@@.generic_male2;I've heard that <<if $options.fem>>villainess<<else>>villain<</if>> dick tastes different. You will have to let me know if that is true.@@"<br>
<br>
It is not long before you bring your captor to climax. <<His>> fingers intertwine with your hair as <<he>> hilts your face, balls rocking against your nose. Only after <<he>> is satisfied does <<he>> release you from <<his>> grasp.<br>
<br>
[<<moveTo "event_porn_bimbofication_6" "I must obey <<Master>>." 300>>]
</div>/*#
#desc: hypno orgy
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Film Set — Mansion'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_interior.png">>
<div id="invframe" class="scrolltext">
The rest of your restraints are removed and soon you are the slutty filling of a fuck sandwich. A mob of goons stream in, keeping to the usual henchmen ordering to make sure their swarm does not obscure the camera's view as they give it to you hard from either end. With each cock sucked your bimbo enthusiasm continues to increase. Showing the stamina of professionals, the <<men>> continue to remain hard and thrust even after their first orgasm, though with a moment of post-nut clarity one of them returns to the script.<br>
<br>
"@@.generic_male2;So, slut; shall we keep you for another night? I can get your uniform fitted so you blend in with the other goons. I'm sure they'll be happy to have a pair of holes on staff.@@"<br>
<br>
Your lips separate from cock for just long enough to squeal happily, "@@.pc;that sounds, like, awesome! I hope my jumpsuit is pink!@@" You reply before diving back in with cock-addicted gusto.<br>
<br>
The <<men>> laugh, "@@.generic_male2;well, we can make an exception for you.@@"<br>
<br>
<<if $fetish.cum>>
"@@.generic_male3;It'll be white by the time we're done with you!@@"<br>
<br>
<</if>>
The <<men>> laugh again as your fucking continues.<br>
<br>
[<<moveTo "event_porn_bimbofication_7" "Finish up and get paid." 300>>]
</div>/*#
#desc: hypno finish
#status: RELEASED 0.9.2.0
#ignore_spell: mesmir,w,t,dominatria,lona,outro
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 100+3*setup.getTotalValue("bimbofication")>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location = 'Film Set — Mansion'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_interior.png">>
<div id="invframe" class="scrolltext">
The "plot" of the porno continues to unravel as your gang-bang expands to the rest of the crew, the camera<<man>> in particular providing a quite impressive "looking down" POV shot of you brainlessly blowing <<him>> en route to <<if $fetish.cum>>thoroughly draining everyone's balls<<else>>getting everyone off at least twice<</if>>. An outro narration is piped in: "@@.generic_male_3;will Lona Lipstick escape the lair of the <<if $options.fem>>villainess<<else>>villain<</if>>ous Dr. Mesmir? Will she betray Director Dominatria and bring about the end of W.E.T.? Find out on the next episode of The Woman From W.E.T.!@@"<br>
<br>
The director takes her turn and finally calls cut. The more neutral lighting returns as the studio lighting fades away. One of the on-set assistants rushes to your side with a bottle of water and a towel so you may rehydrate and clean yourself off. She helps you back onto your feet as the crew burst into a round of applause.<br>
<br>
"@@.generic_male2;Great job! You really sold the scene!@@"<br>
<br>
"@@.generic_male3;Aye, you chewed cock like it was the scenery... and your holes are just irresistibly fuckable, a real pleasure to work with in every sense!@@"<br>
<br>
You curtsy in thanks as the assistant helps you towel off a bit and <<=setup.getNpcName("npc_cook","first")>> drops in with your pay of <<=$scene.pay>> credits.<br>
<br>
<<if !State.hasPlayed("event_panties_sissy_secretary_intro_1") && State.hasPlayed("theme_psychiatrist_panties_first_1") && !setup.checkItemOwned("panties_sissy_secretary")>>
[<<moveTo 'event_panties_sissy_secretary_intro_1' 'Dress and head out.' 300 '<<useClothSetPop "tmp">>'>>]
<<else>>
[<<moveTo 'room_citymap' 'Dress and head out.' 300 '<<useClothSetPop "tmp">>'>>]
<</if>>
</div>/*#
#desc: npc_gym_futa mention porn, decline
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.askedPornWorkout = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_gym_futa","first")>> if there are any exercises that could specifically help with your new job as a porn star?<br>
<br>
"@@.npc_gym_futa;Porn star?@@" she grins "@@.npc_gym_futa;You just keep on training with me and I'll have you ready to be going hard for as long as you need. Cardio and core, those are the keys... now let's get to it!@@"<br>
<br>
<<include "gymFutaLessonRepeatChoice">>
</div>/*#
#desc: npc_gym_futa mention porn, accept
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.askedPornWorkout = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_gym_futa","first")>> if there are any exercises that could specifically help with your new job as a porn star?<br>
<br>
"@@.npc_gym_futa;Porn star?@@" she grins "@@.npc_gym_futa;What we're doing already is going to be good... you know, I used to do some work in the industry from time to time, mostly as a rigger. Next time you're near the studio give me a ring and maybe I come out of retirement... and cum in you.@@"<br>
<br>
You shiver at the lusty look she shoots you and reply that you'll keep that in mind.<br>
<br>
<<include "gymFutaLessonRepeatChoice">>
</div>/*#
#desc: call npc_gym_futa about shoot
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.available = !$daily.gym_futu_porncall && random(1,10) < 5>>
<<set $scene.hasCalled = $daily.gym_futu_porncall>>
<<set $daily.gym_futu_porncall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You give <<=setup.getNpcName('npc_gym_futa', 'first')>> a call and ask if she'd be up for a porn shoot today?<br>
<br>
<<if $scene.available>>
"@@.npc_gym_futa;Yeah, I've got some time before my next client. I'll grab my things and be right over. Meet me in Studio Three.@@" She hangs up and you head for Studio 3.<br>
<br>
[<<moveTo "event_porn_bondage_gym_futa_2" "Porn time." 600>>]
<<else>>
<<if $scene.hasCalled>>
"@@.npc_gym_futa;I already told you, I'm with a client. Give me a call some other day.@@" She hangs up.
<<else>>
"@@.npc_gym_futa;Not today, I'm afraid. I'm with a client.@@" You hear a moan in the background, followed by barking out "@@.npc_gym_futa;I said five more reps! Now push yourself or you'll be getting your protein injection up the ass!@@"<br>
<br>
"@@.generic_male1;Yes, <<=setup.getNpcName('npc_gym_futa', 'title')>>!@@" comes the gasping, muffled response.<br>
<br>
"@@.npc_gym_futa;As I said, some other time,@@" <<=setup.getNpcName('npc_gym_futa', 'first')>> notes before hanging up.
<</if>>
<br><br>
<<printPornShootOptions>>
[<<moveTo "room_citymap" "Leave." 300>>]
<</if>>
</div>/*#
#desc: npc_gym_futa ties you up
#status: RELEASED 0.9.3.0
#ignore_spell: 'fit
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItem 'catsuit_latex_black'>>
<<wearItem 'catsuit_latex_black' true>>
<</if>>
<<set $player.location = 'Film Set — Gym'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
Perhaps unsurprisingly, Studio 3 is decked out to look like a gym, and you settle in to wait for <<=setup.getNpcName('npc_gym_futa', 'first')>> only for an attendant to appear with your "outfit" for the scene.<br>
<br>
"@@.generic_female1;The <<=setup.getNpcName('npc_gym_futa', 'title')>> commands that you get changed,@@" they explain as they hand over a latex catsuit before departing. You strip and change, finishing slipping into the slick, polished rubber just before <<=setup.getNpcName('npc_gym_futa', 'first')>> arrives with the camera<<man>> and dumps her bag on the floor with a heavy clunk.<br>
<br>
"@@.npc_gym_futa;Good, you've got the 'fit... now it's time to be tied... or chained, more technically.@@" She guides you into position near the centre of the room and nods to camera<<man>> to start rolling.<br>
<br>
[<<moveTo "event_porn_bondage_gym_futa_3" "Lights, camera, action!" 900>>]
</div>/*#
#desc: npc_gym_futa ties you up
#status: RELEASED 0.9.3.0
#ignore_spell: gock
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'armbinder_steel'>>
<<wearItem 'armbinder_steel' true>>
<<addItem 'thigh_cuffs_steel'>>
<<wearItem 'thigh_cuffs_steel' true>>
<<addItem 'ankle_cuffs_steel'>>
<<wearItem 'ankle_cuffs_steel' true>>
<<applyExperience 'bondage' 15 'normal' $EXPOSED>>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'normal' $EXPOSED>>
<</if>>
<<set $player.location = 'Film Set — Gym'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
From the start of "action" <<=setup.getNpcName('npc_gym_futa', 'first')>> takes charge, strong hands controlling your latex-clad body as she begins locking away your freedom in steel.<br>
<br>
Ankle and thigh cuffs start things off, and then she bends you over, her hard <<if $fetish.futanari>>futa <</if>>cock filling your throat and holding you in place while your arms are cuffed behind your back. "@@.npc_gym_futa;That's right, show some appreciation and suck me off while I finish this up...@@" she states as your restrained position turns to a suspended one, your feet lifted off the floor by a chain connected to your waist, with another pulling your head back as you gurgle and deep-throat.<br>
<br>
Short links pull your legs into a frog-tie to finish things off as <<=setup.getNpcName('npc_gym_futa', 'first')>> pulls back just enough to spin you in place, her saliva-slick gock making you moan as it hilts in your ass.<br>
<br>
[<<moveTo "event_porn_bondage_gym_futa_4" "Moan." 900>>]
</div>/*#
#desc: npc_gym_futa and cameraperson
#status: RELEASED 0.9.3.0
#ignore_spell: gock
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 20 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' $npc_gym_futa.penis_size 'very' $EXPOSED>>
<<applyExperience 'oral' 13 'normal' $EXPOSED>>
<</if>>
<<set $player.location = 'Film Set — Gym'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
"@@.npc_gym_futa;Now THAT is how you truss a <<if $fetish.sissy>>sissy<<else>>girl<</if>>,@@" <<=setup.getNpcName('npc_gym_futa', 'first')>> notes as you sway in mid-air, body hostage to the movement of her hips as she pendulum-fucks you... and the camera<<man>> makes a slow circuit, capturing a full 360 cinematic view of your predicament and the thick <<if $fetish.futanari>>futa cock<<else>>gock<</if>>pounding in and out of you.<br>
<br>
You continue to moan as <<=setup.getNpcName('npc_gym_futa', 'first')>> pulls your head back and motions the camera<<man>> in. "@@.npc_gym_futa;Come on closer, let this bondage slut show how much she appreciates you showing her to the world...@@"<br>
<br>
You watch helplessly... and horny-ly as the camera<<man>> steps forward, the camera focused on your face the whole time as they whip out their cock with one hand... and then POV film it sliding past your lips.<br>
<br>
[<<moveTo "event_porn_bondage_gym_futa_5" "Mmmfff!" 900>>]
</div>/*#
#desc: npc_gym_futa bound gangbang
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 20 'normal' $EXPOSED>>
<<applyExperience 'oral' $npc_cook.penis_size 'normal' $EXPOSED>>
<<applyExperience 'cum' 15 'normal' $EXPOSED>>
<</if>>
<<set $player.location = 'Film Set — Gym'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa") setup.charImage("npc_cook","npc_cook_naked")>>
<div id="invframe" class="scrolltext">
You're rocking back and forth between two cocks, the camera<<man>> wasting no time in <<if $fetish.cum>>blowing their load down your throat<<else>>finishing off<</if>>. There must have been a casting call, or something, because even as the camera<<man>> steps away another actress takes their place, and you're soon licking cunt as <<=setup.getNpcName('npc_gym_futa', 'first')>> continues to show off stamina by
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn('cage') || setup.isCage())>>
switching off between your two holes.
<<else>>
continuing to pound your ass.
<</if>>
<br><br>
Helplessly restrained, you suck, lick and fuck as the camera continues to roll, the steel restraints as rigid and inescapable as the hard <<if $fetish.futanari>>futa <</if>>cock railing you from behind.<br>
<br>
Drooling, panting<<if $fetish.cum>>, and leaking a pool of cum onto the floor below<</if>> your stamina is pushed to the limit by the bondage gang-bang, but you somehow know things are coming to a climax when <<=setup.getNpcName('npc_cook', 'first')>>, and <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horse-<</if>> cock appears before you, joining with <<=setup.getNpcName('npc_gym_futa', 'first')>> to stretch you from either end until, finally, <<=setup.getNpcName('npc_gym_futa', 'first')>>
<<if $fetish.cum>>
blows her load, shooting a thick shot deep in your <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn('cage') || setup.isCage())>>cunt<<else>>ass<</if>>, and then pulling out to blast the rest across your bound arms and back... and artist signing her work.
<<else>>
finishes off balls deep in your <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn('cage') || setup.isCage())>>cunt<<else>>ass<</if>>.
<</if>>
<br><br>
"@@.npc_gym_futa;Aaand scene!@@" <<=setup.getNpcName('npc_gym_futa', 'first')>> announces, <<=ps(setup.getNpcName('npc_cook', 'first'))>> cock sliding free from your lips and leaving you to drool and pant and recover while <<he npc_cook>> and <<=setup.getNpcName('npc_gym_futa', 'first')>> join in unlocking your restraints and lowering you back to the floor.<br>
<br>
[<<moveTo "event_porn_bondage_gym_futa_6" "Continue..." 300>>]
</div>/*#
#desc: npc_gym_futa bound gangbang
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 20 'normal' $EXPOSED>>
<<applyExperience 'oral' 13 'normal' $EXPOSED>>
<<applyExperience 'cum' 15 'normal' $EXPOSED>>
<<removeItem 'armbinder_steel' true>>
<<deleteItem 'armbinder_steel'>>
<<removeItem 'thigh_cuffs_steel' true>>
<<deleteItem 'thigh_cuffs_steel'>>
<<removeItem 'ankle_cuffs_steel' true>>
<<deleteItem 'ankle_cuffs_steel'>>
<<removeItem 'catsuit_latex_black'>>
<<set $scene.pay = 100+3*setup.getTotalValue("bondage")>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location = 'Film Set — Gym'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa") setup.charImage("npc_cook","npc_cook_naked")>>
<div id="invframe" class="scrolltext">
The camera's off, <<=setup.getNpcName('npc_gym_futa', 'first')>> and <<=setup.getNpcName('npc_cook', 'first')>> chat as you drift back from bondage land.<br>
<br>
"@@.npc_gym_futa;Back in front of the camera, I see,@@" <<=setup.getNpcName('npc_gym_futa', 'first')>> notes. "@@.npc_gym_futa;I recall you were having some issues finding costars.@@"<br>
<br>
"@@.npc_cock;Aye. Few is it who can handle me full girth... but this one is a special pair of holes... and that was my way back in!@@"<br>
<br>
"@@.npc_gym_futa;Special is right, she took me with ease... but was tight for every stroke!@@"<br>
<br>
The two laugh and chat some more as they help you clean up and get payments sorted out before another crew comes in to use the studio.<br>
<br>
<<if !State.hasPlayed("event_panties_sissy_secretary_intro_1") && State.hasPlayed("theme_psychiatrist_panties_first_1") && !setup.checkItemOwned("panties_sissy_secretary")>>
[<<moveTo 'event_panties_sissy_secretary_intro_1' 'Dress and head out.' 300 '<<useClothSetPop "tmp">>'>>]
<<else>>
[<<moveTo 'room_citymap' 'Dress and head out.' 300 '<<useClothSetPop "tmp">>'>>]
<</if>>
</div>/*#
#desc: change for dominance shoot
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty("beforePorn")>>
<<useClothSetPush 'beforePorn'>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_cook","first")>> about <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith Longwood"))>> proposal that you do a dominance-themed scene and <<he npc_cook>> raises an eyebrow.<br>
<br>
"@@.npc_cook;She selected yeh for that? Well that's quite the compliment to her view of yer abilities.@@" <<=setup.getNpcName("npc_cook","first")>> looks you over.
<<if setup.checkItemSetWorn("manager_clothing")>>
<<He npc_cook>> chuckles. "@@.npc_cook;Can't fault yeh for the connection, I've only seen <<=setup.getNpcName("npc_manager","formal")>> from a distance and I still feel her dominant aura... but that reference ain't exactly universal... and doesn't transfer through the camera so well, in any case. Yeh got anything a bit more conventionally dominant? It's porn, after all, and people do be loving their over the top dominatrixes.@@"
<<elseif setup.checkVisibleClothingTag('dominant') > 40>>
"@@.npc_cook;Well that outfit certainly fits the bill, and yeh have the attitude to go with it. Yeh ready to start shootin'?@@"
<<else>>
"@@.npc_cook;Well, it's porn, so dressing for they camera is key... let's see what you have the screams dominance, eh? It's porn, after all, and people do be loving their over the top dominatrixes.@@"
<</if>>
<br><br>
<<if setup.checkVisibleClothingTag('dominant') > 40>>
[<<moveTo "event_porn_dominance_2" "You're dressed and ready to go!" 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "event_porn_select_shoot_1" "Actually, you'd like to do something else..." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">><br>
[<<moveTo "event_porn_select_shoot_1" "Maybe something else? You'll try to bring suitable clothes some other time." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<</if>>
</div>/*#
#desc: prepare for dominance shoot
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png">>
<div id="invframe" class="scrolltext">
Your outfit having been given the seal of approval, <<=setup.getNpcName("npc_cook","first")>> calls ahead and then leads you to one of the studio's sound-stages where <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith Longwood"))>> crew is just finishing setting up a pair of hotel-themed sets: a front desk and a luxurious bedroom.<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> looks you over with a smile, her own outfit more on the "boss bitch" side of the domme spectrum than leather and latex pro-domme. "@@.generic_female2;Nice to see you decided to take me up on my offer... and you really dressed for the occasion.@@" She winks at you as one of the crew runs up and whispers in her ear. "@@.generic_female2;Alright, looks like everything is ready. If you'd like to get behind the counter and act we'll start the camera rolling and get to filming!@@"<br>
<br>
[<<moveTo "event_porn_dominance_3" "Get to your mark." 180>>]
</div>/*#
#desc: dominance shoot: slaves dropped off
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png">>
<div id="invframe" class="scrolltext">
You get behind the counter and busy yourself shuffling papers and pretending to do the usual hotel front-desk stuff as moves off-set to <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> call out "@@.generic_female2;Action!@@" before striding into frame trailing two co-stars on leashes.<br>
<br>
You look up to greet the "guests" to your hotel, <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> looking the picture of high-class professionalism flanked by her two slaves: a playful looking toned ginger with ginormous breasts, and a more outwardly submissive, dark-haired slender woman with the every-so-slight bump of a chastity cage visible through her tight skirt.<br>
<br>
"@@.generic_female2;Come along,@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> snaps sharply as she pulls her two slaves forward. "@@.generic_female2;I have an important meeting soon and we need to get you two brats boarded!@@"<br>
<br>
The word brat seems to further drive home the personality differences between the two slaves as the red-head seems hardly perturbed as she pulls against the leash, while the dark-haired slave hurries to remain at her Mistress' side while ever-so-slightly hurt at the implication that she could be anything other than totally subservient.<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> approaches your front desk and slams the leashes down. "@@.generic_female2;I need these two looked after while I attend to other business.@@"<br>
<br>
[<<moveTo "event_porn_dominance_4" "Of course!" 180>>]
</div>/*#
#desc: dominance shoot: welcome slaves
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png">>
<div id="invframe" class="scrolltext">
"@@.pc;Of course!@@" You reply, "@@.pc;Our all-inclusive package is a guarantee to handle any sort of submissive.@@"<br>
<br>
"@@.generic_female2;Getting my package handled tonight is exactly why I made a reservation for these two.@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> replies in a laugh-track worthy line... that has the camera momentarily linger on the bulge of her eponymous "Long wood." <br>
<br>
You pretend to type a bit to finish the "check-in" and then take hold of the two leashes and step out from behind the desk.<br>
<br>
"@@.generic_female2;Wonderful. I should not be more than a few hours, but just in case there is an emergency...@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> hands you a key. Judging by the lusty way the dark-haired slave stares at it, you can only assume it is to her chastity device.<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> gives a final look at her slaves. "@@.generic_female2;Now be good you two! I'm paying good credits for a high-class place like this, if you can't appreciate it and insist on getting in trouble, well... chaining you up in a glory-hole is far more economical.@@"<br>
<br>
"@@.generic_female1;Yes, <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>>.@@"<br>
"@@.generic_female3;Yes, <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>>.@@"<br>
<br>
Comes the chorus of replies, one breathlessly soft and submissive, the other a bit more playful, with a hint that they might well prefer the grind of a gloryhole.<br>
<br>
With a key in one hand and leashes in the other you watch as <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> walks off-set and assumes the director's chair next to the camera.<br>
<br>
[<<moveTo "event_porn_dominance_5" "Time to start the REAL action." 180>>]
</div>/*#
#desc: dominance shoot: decide how to treat dominant slave
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions_1 = {}>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You lead your the two subs across the stage and over to the next one, a brief camera cut handling the transition as you stride into the opulent hotel bedroom set with subs in tow.<br>
<br>
Almost from the start of the scene the tall red-head is making her play. "@@.generic_female3;So <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> was obviously in a rush, but I presume the reservation notes would have explained that I'm in charge when she isn't around. The name's <<=setup.getNpcName("generic_female3", "custom", "Eve")>> and I practically run things, sometimes, and in return <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> fucks me several times a day. Mmm, she's probably fucking someone right now while you're just standing around.@@" <<=setup.getNpcName("generic_female3", "custom", "Eve")>> moves to the end of the leash to bend over the bed, giving you a "come hither" stare as she wiggles her butt in your direction, her VERY short dress pulling up enough that you can get an every-so-slight glimpse of her pussy glistening with excitement. "@@.generic_female3;Come on, you said this was a "full-service" hotel... well let's see some of that full service, hmm?@@"<br>
<br>
<<include "domPornChoice1">>
</div><<if $scene.actions_1.help>>
[@@.link_locked;You already tried looking to <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> for direction.@@]<br>
<<else>>
[<<moveTo "event_porn_dominance_6" 'Look to <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> for direction.' 60 "<<set $scene.action_1='help'>>">>]<br>
<</if>>
<<if $scene.actions_1.other_slave>>
[@@.link_locked;You already asked the other slave for advise.@@]<br>
<<else>>
[<<moveTo "event_porn_dominance_6" 'Ask the other slave to corroborate this story.' 60 "<<set $scene.action_1='other_slave'>>">>]<br>
<</if>>
[<<moveTo "event_porn_dominance_6" 'Ignore <<=ps(setup.getNpcName("generic_female3", "custom", "Eve"))>> come-on.' 120 "<<set $scene.action_1='ignore'>>">>]<br>
[<<moveTo "event_porn_dominance_6" 'Give <<=setup.getNpcName("generic_female3", "custom", "Eve")>> a spanking.' 300 "<<set $scene.action_1='spank'>>">>]<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis", "")>>
[<<moveTo "event_porn_dominance_6" 'Unlock yourself and fuck <<=setup.getNpcName("generic_female3", "custom", "Eve")>>.' 300 "<<set $scene.action_1='fuck_unlock'>>">>]<br>
<<else>>
[@@.link_locked;You do not possess the key to unlock and fuck <<=setup.getNpcName("generic_female3", "custom", "Eve")>>.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_porn_dominance_6" 'Throw <<=setup.getNpcName("generic_female3", "custom", "Eve")>> a quick fuck.' 300 "<<set $scene.action_1='fuck_penis'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_porn_dominance_6" 'Grab a strap-on and fuck <<=setup.getNpcName("generic_female3", "custom", "Eve")>>.' 300 "<<set $scene.action_1='fuck_strap'>>">>]<br>
[<<moveTo "event_porn_dominance_6" 'Finger <<=setup.getNpcName("generic_female3", "custom", "Eve")>>... but leave her wanting.' 300 "<<set $scene.action_1='finger'>>">>]/*#
#desc: dominance shoot: deal with dominant slave
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions_1[$scene.action_1] = true>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case 'help'>>
You surreptitiously look towards <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> for guidance but she just smiles enigmatically.<br>
<br>
<<printThought "Looks like it's up to me ab-lib rather than follow directorial dictate...">><br>
<br>
<<include "domPornChoice1">>
<<case 'other_slave'>>
You turn to the other slave and ask her if what <<=setup.getNpcName("generic_female3", "custom", "Eve")>> is saying is true?<br>
<br>
Nowhere near as bold as her counterpart, the other slave first bows in acknowledgement before giving her response. "@@.generic_female1;Well, um, <<=setup.getNpcName("generic_female3", "custom", "Eve")>> does serve as <<=ps(setup.getNpcName("generic_female2", "custom", "Mistress Lilith"))>> second in command... and she is rewarded by the <<=setup.getNpcName("generic_female2", "custom", "Mistress")>> accordingly... but always according to <<=ps(setup.getNpcName("generic_female2", "custom", "Mistress Lilith"))>> schedule. <<=setup.getNpcName("generic_female2", "custom", "Mistress")>> always said that a fully satisfied slave is the most rebellious, and that a horny slave, desperate for their next reward is the most obedient...@@"<br>
<br>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> glares at her counterpart. "@@.generic_female3;Do I look desperate to you? Besides, if meant for me to be denied, would I be locked in chastity like she is? Clearly she expected you to fuck me as part of that "full service" you mentioned...@@"<br>
<br>
Once again, you ponder your choice...<br>
<br>
<<include "domPornChoice1">>
<<case 'ignore'>>
You pointedly look past <<=ps(setup.getNpcName("generic_female3", "custom", "Eve"))>> flirting requests as you attach the two girl's leashes to opposite posts of the bed for "security" and continue on, leaving <<=setup.getNpcName("generic_female3", "custom", "Eve")>> all but humping the bed in desperation as you continue to ignore her mewing pleas.<br>
<br>
[<<moveTo "event_porn_dominance_7" 'Continue.' 180>>]
<<case 'spank'>>
You take a moment to tie the other slave's leash off to one of the bed-posts, and then administer a quick, sharp spanking.<br>
<br>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> gasps at the first blow... and you catch a look of mild amusement from <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>>. You finish off the punishment with a half a dozen more blows on each butt-cheek before attaching <<=ps(setup.getNpcName("generic_female3", "custom", "Eve"))>> leash to a bedpost. Momentarily chagrined, <<=setup.getNpcName("generic_female3", "custom", "Eve")>> submissively diverts her gaze, while, on the other bedpost, her fellow slave stands at submissive attention, slightly preening in triumph.<br>
<br>
[<<moveTo "event_porn_dominance_7" 'Continue.' 180>>]
<<case 'fuck_strap'>>
You take a moment to tie the other slave's leash off to one of the bed-posts, and gesture for one of the crew to toss you a strap-on (a GEN-U-INE <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> clone!) from off-set. You buckle the harness around your waist and mount <<=setup.getNpcName("generic_female3", "custom", "Eve")>>.<br>
<br>
"@@.generic_female3;Mmm, yeah, fuck me harder...@@" <<=setup.getNpcName("generic_female3", "custom", "Eve")>> moans, "@@.generic_female3;I love the feel of <<=ps(setup.getNpcName("generic_female2", "custom", "Mistress Lilith"))>> cock... everyone should be so lucky...@@"<br>
<br>
<<printThought "Did she just... insert an advertising spot?">><br>
<br>
Reminded of the task at hand, you double check that you're angled properly for the camera to catch the action, and in the process notice <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> watching on with stoic directorial focus... and maybe just a touch of disappointment.<br>
<br>
Already committed to your choice, you fuck <<=setup.getNpcName("generic_female3", "custom", "Eve")>> into the mattress, leaving her an orgasm-overloaded mess before cuffing her hands behind her back and leashing her to the bedpost opposite her fellow slave.<br>
<br>
[<<moveTo "event_porn_dominance_7" 'Continue.' 180>>]
<<case 'fuck_unlock' 'fuck_penis'>>
<<switch $scene.action_1>>
<<case "fuck_unlock">>
You unlocks yourself
<<case "fuck_penis">>
You whip it out
<</switch>>
and mount <<=setup.getNpcName("generic_female3", "custom", "Eve")>>.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> moans passionately, ecstatically playing to the camera as she howls "@@.generic_female3;Yes! Harder!@@"
<<case 4 5>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> moans passionately as the full length and girth of your large cock slides easily into her. Rolling her hips she plays to the camera as she begs "@@.generic_female3;Yes... Harder!@@"
<<case 6>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> proves her professional abilities as she shows no difficulty taking your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock, ecstatically playing to the camera as she howls "@@.generic_female3;Goddess you're big! Harder! Yes!@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Focused of the task at hand, and cognisant of the camera, you double check that you're angled properly, and in the process notice <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> watching on with stoic directorial focus... and maybe just a touch of disappointment.<br>
<br>
Already committed to your choice, you fuck <<=setup.getNpcName("generic_female3", "custom", "Eve")>> into the mattress, leaving her an orgasm-overloaded mess<<if $player.body_ref.cumProduction>>, leaking your cum<</if>> before cuffing her hands behind her back and leashing her to the bedpost opposite her fellow slave.<br>
<br>
[<<moveTo "event_porn_dominance_7" 'Continue.' 180>>]
<<case 'finger'>>
You take a moment to tie the other slave's leash off to one of the bed-posts, and then take a seat next to <<=setup.getNpcName("generic_female3", "custom", "Eve")>>, holding them down with one arm as you tease them with your free hand, teasing them as they gasp and drip.<br>
<br>
You slide a finger inside and run your thumb in circles around <<=ps(setup.getNpcName("generic_female3", "custom", "Eve"))>> clit as she gasps and bucks her hip, desperate for you to centre in and "press the button" to finish her off. Instead you pull away, leaving her in a gasping pile on the bed as you cuff her wrists behind her back and attach the other end of her leash to the bed-post for safety.<br>
<br>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> mews in submissive want, and you catch a nod of approval from <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> out of the corner of your eye.<br>
<br>
[<<moveTo "event_porn_dominance_7" 'Continue.' 180>>]
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
</div>/*#
#desc: dominance shoot: decide how to treat submissive slave
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions_2 = {}>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
With both slaves temporarily "dealt with" you take a moment to pose for the camera as you survey the scene and contemplate your next move.<br>
<br>
As you do, the dark-haired, submissive slave approaches you, moving gracefully for the camera as she somewhat awkwardly asks, "@@.generic_female1;<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> first wishes to thank for taking care of us while <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> is attending to other business, only...@@" <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> rolls up her skirt to show a trembling<<if $fetish.cum>>, dripping <</if>>chastity cage above pair of lovely shaved balls. "@@.generic_female1;Watching you oh-so-effectively attend to <<=setup.getNpcName("generic_female3", "custom", "Eve")>>, combined with <<=ps(setup.getNpcName("generic_female1", "custom", "Slave Julie"))>> morning edging session, well... it has <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> feeling quite pent up. I guess <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> didn't give explicit instructions, and it wouldn't be <<=ps(setup.getNpcName("generic_female1", "custom", "Slave Julie"))>> place to correct her but...@@"<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> trails off, finishing with a submissive curtsy as you consider your response.<br>
<br>
<<include "domPornChoice2">>
</div><<if $scene.actions_2.help>>
[@@.link_locked;You already tried looking to <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> for direction.@@]<br>
<<else>>
[<<moveTo "event_porn_dominance_8" 'Look to <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> for direction.' 60 "<<set $scene.action_2='help'>>">>]<br>
<</if>>
<<if $scene.actions_2.other_slave>>
[@@.link_locked;You already asked the other slave for advise.@@]<br>
<<else>>
[<<moveTo "event_porn_dominance_8" 'Ask <<=setup.getNpcName("generic_female3", "custom", "Eve")>> to corroborate this story.' 60 "<<set $scene.action_2='other_slave'>>">>]<br>
<</if>>
[<<moveTo "event_porn_dominance_8" 'Ignore <<=ps(setup.getNpcName("generic_female1", "custom", "Slave Julie"))>> request.' 120 "<<set $scene.action_2='ignore'>>">>]<br>
[<<moveTo "event_porn_dominance_8" 'Un-cage <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> and give her relief.' 300 "<<set $scene.action_2='jerk'>>">>]<br>
[<<moveTo "event_porn_dominance_8" 'Spank <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> for making such a request.' 120 "<<set $scene.action_2='spank'>>">>]<br>
[<<moveTo "event_porn_dominance_8" 'Tease and deny <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> some more.' 300 "<<set $scene.action_2='tease'>>">>]<br>
[<<moveTo "event_porn_dominance_8" 'Make <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> cum through her cage.' 300 "<<set $scene.action_2='cage_cum'>>">>]/*#
#desc: dominance shoot: treat submissive slave
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions_2[$scene.action_2] = true>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_2>>
<<case 'help'>>
You glance at <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> and she nods as if to confirm the order, and then smiles, clearly looking forward to seeing you "deal with" <<=ps(setup.getNpcName("generic_female1", "custom", "Slave Julie"))>> pent up arousal.<br>
<br>
<<printThought "Okay, green-light... but what, precisely, to do...">><br>
<br>
<<include "domPornChoice2">>
<<case 'other_slave'>>
You ask <<=setup.getNpcName("generic_female3", "custom", "Eve")>> if what <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> said is true?<br>
<br>
<<switch $scene.action_1>>
<<case 'ignore'>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> sneers dismissively. "@@.generic_female3;Her? Oh, she's NEVER allowed relief, that's why she has the cage. Bad girls CAN'T cum.@@"<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> glares back at <<=setup.getNpcName("generic_female3", "custom", "Eve")>>.<br>
<br>
<<printThought '<<=setup.getNpcName("generic_female3", "custom", "Eve")>> seems to be playing a bit of a brat... is this just because I ignored her earlier?'>>
<<case 'spank'>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>>, her butt still red from the spanking you administered smirks.<br>
<br>
"@@.generic_female3;Her? Oh, she's NEVER allowed relief, that's why she has the cage. Bad girls CAN'T cum... which I guess means she deserves a spanking, too, y'know, for trying to get around <<=ps(setup.getNpcName("generic_female2", "custom", "Mistress Lilith"))>> rules.@@"<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> shifts nervously as <<=setup.getNpcName("generic_female3", "custom", "Eve")>> grins.<br>
<br>
<<printThought '<<=setup.getNpcName("generic_female3", "custom", "Eve")>> seems to be playing a bit of a brat... is she trying this as a sort of revenge for my spanking her earlier?'>>
<<case 'fuck_strap' 'fuck_unlock' 'fuck_penis'>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> is still recovering from her orgasm... but she gets a cruel smile on her face.
"@@.generic_female3;Her? Oh, she's NEVER allowed relief, that's why she has the cage. Bad girls CAN'T cum... unlike me, of course, I get to cum ALL the time, because I'm a good girl.@@"<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> glares back, clearly incensed at <<=ps(setup.getNpcName("generic_female3", "custom", "Eve"))>> taunting... but <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> remains quiet, awaiting your decision.<br>
<br>
<<printThought '<<=setup.getNpcName("generic_female3", "custom", "Eve")>> seems to be playing a bit of a brat... even after she got what she wanted...'>>
<<case 'finger'>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> momentarily stops humping the bed, her frustrated attempts to get relief stymied by her bound wrists as she glances over with a sneer.<br>
<br>
"@@.generic_female3;Her? Oh, she's NEVER allowed relief, that's why she has the cage. Bad girls CAN'T cum... but you should tease her, I mean, it's not fair that I'm the only one desperate for relief.@@"<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> shifts nervously as <<=setup.getNpcName("generic_female3", "custom", "Eve")>> grins.<br>
<br>
<<printThought '<<=setup.getNpcName("generic_female3", "custom", "Eve")>> seems to be playing a bit of a brat... but she does have a point about the cage.'>>
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
<<include "domPornChoice2">>
<<case 'ignore'>>
You tell <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> to go back to her pillar and wait for her <<=setup.getNpcName("generic_female2", "custom", "Mistress")>> to return.<br>
<br>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> is clearly amused by <<if $scene.action_1 == 'ignore'>>consistency of treatment<<else>>her fellow slave's denial<</if>>.
<<case 'spank'>>
You frown at <<=ps(setup.getNpcName("generic_female1", "custom", "Slave Julie"))>> request and order her to bend over the edge of the bed where you administer a spanking.<br>
<br>
<<if $scene.action_1 == "spank">>
Unlike <<=setup.getNpcName("generic_female3", "custom", "Eve")>>,
<<else>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> watches on with amusement as
<</if>>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> accepts her punishment without objection, counting along with each blow as you give her the same dozen spanks as her counterpart.<br>
<br>
"@@.generic_female1;Thank you, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>> <<=$player.flags.porn.pornname>>,@@" <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> states once you have finished administering her spanking, her full balls looking somehow even moreso dangling below her bright-red bottom.<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> curtsys quietly and then resumes kneeling next to her post without further objection.
<<case 'jerk'>>
You have <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> lean back on the bed. She trembles with excitement as you produce her chastity key and unlock her.<br>
<br>
<<if ['spank','finger'].includes($scene.action_1)>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> looks on with jealousy as you jerk <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> off.
<<else>>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> watches as you jerk <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> off.
<</if>>
<br><br>
With her hands obediently at her sides throughout, <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> gasps and moans as you jerk her off... and it isn't long before <<if $fetish.cum>>spurts with joy<<else>>cries out in climax<</if>>.<br>
<br>
"@@.generic_female1;Stop!@@" <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> pants, "@@.generic_female1;<<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> would only permit one.@@" She clarifies as she reaches to replace her cage... only to find that her <<getWordPenis false>> remains quite hard, rendering the feat of jamming herself back into the small steel cage a volumetric impossibility.<br>
<br>
<<=setup.getNpcName("generic_female3", "custom", "Eve")>> cackles with amusement at <<=ps(setup.getNpcName("generic_female1", "custom", "Slave Julie"))>> predicament. "@@.generic_female3;Haha! Silly <<if $fetish.sissy>>sissy<<else>>girl<</if>> should have stayed locked! Oh, <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> is going to punish you for that... in the SEQUEL!@@"<br>
<br>
<<printThought 'Sequel? Well... I suppose that makes sense, given what a franchise <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> is...'>>
<<case 'tease'>>
Rather than acquiesce to <<=ps(setup.getNpcName("generic_female1", "custom", "Slave Julie"))>> request you adopt a cruel grin, stepping closer and letting your hands roam and grope over her slender body, paying particular attention to squeezing her ass... and fingering the plug you find within as you whisper just loud enough for the mic to hear.<br>
<br>
"@@.pc;Relief? No, no, I am QUITE certain <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> would have mentioned something like that. Besides, you're all cute and caged... isn't it better to just stay denied? To feel yourself strain within your prison, to know that you aren't getting out, that even thought I have your key I'm going to keep you locked and denied? Desperate... wanting... knowing that you have no choice but to save yourself for your <<=setup.getNpcName("generic_female2", "custom", "Mistress")>>?@@"<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> shudders, puddy in your hands as she almost melts to the floor and gasps back "@@.generic_female1;Yes, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>> <<=$player.flags.porn.pornname>>. Thank you for reminding <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> of her proper role...@@"<br>
<br>
You tease <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> a little longer, then release your tight grasp for her to slide to her knees, obediently kneeling in wait next to her pillar. Leashed, longing... lovely.
<<case 'cage_cum'>>
You smile mischievously as you guide <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> to sit on the edge of the bed, legs spread, her trembling, caged clitty on display... and below that, the peeking vision of a pert plug in her rear.<br>
<br>
"@@.pc;Mmm, I see what you were talking about... you are straining so hard inside your prison... that must be so tight, so uncomfortable...@@"<br>
<br>
"@@.generic_female1;Agonising...@@" <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> breathlessly replies as your hands slide up her thighs, one moving to her balls where you begin squeezing and massaging... while the other strokes her cage.<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> pants with need at every fingertip-brush on her sensitive flesh squeezing between the bars of the cage, moaning as you gently tug on her balls, massaging them like as you stroke and jerk her caged clitty.<br>
<br>
Eyes shut in concentration, and biting her lip oh-so-adorably, <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> cums<<if $fetish.cum>>, dribbling and leaking out of her cage.<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> trembles as you coax out the final drops of the denied, imprisoned orgasm... and then she is bursting into motion, diving to the floor where she laps up the pool of her pleasure.
<</if>><br>
<br>
"@@.generic_female1;Thank you, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>> <<=$player.flags.porn.pornname>>.@@" <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> gasps as she cleans up her mess, licking her lips in divine satisfaction as she shuffles back into position kneeling next to her pillar. "@@.generic_female1;That was exactly what <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> needed, and she is now ready to focus all of her attention on awaiting her <<=ps(setup.getNpcName("generic_female2", "custom", "Mistress"))>> return.@@"
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<<if !['help','other_slave'].includes($scene.action_2)>>
<br><br>
With nothing more to do, you "walk out" of the hotel room, leaving the two subs to wait as <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> calls "@@.generic_female2;CUT!@@"<br>
<br>
[<<moveTo "event_porn_dominance_9" "That's a wrap?" 180>>]
<</if>>
</div>/*#
#desc: dominance shoot: lilith returns
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 100>>
<<if $scene.actions_1.help>>
<<set $scene.pay -= 10>>
<</if>>
<<if $scene.actions_2.help>>
<<set $scene.pay -= 10>>
<</if>>
<<if $scene.actions_1.other_slave>>
<<set $scene.pay += 10>>
<</if>>
<<if $scene.actions_2.other_slave>>
<<set $scene.pay += 10>>
<</if>>
<<if $scene.action_1 == "ignore">>
<<set $scene.pay -= 20>>
<</if>>
<<if $scene.action_2 == "ignore">>
<<set $scene.pay -= 20>>
<</if>>
<<if ['fuck_strap','fuck_unlock','fuck_penis'].includes($scene.action_1) && $scene.action_2 == "jerk">>
<<set $scene.pay += 30>>
<</if>>
<<if $scene.action_1 == "spank" && $scene.action_2 == "spank">>
<<set $scene.pay += 0>>
<<else>>
<<switch $scene.action_1>>
<<case 'spank'>>
<<set $scene.pay += 30>>
<<case 'fuck_strap' 'fuck_unlock' 'fuck_penis'>>
<<set $scene.pay += 50>>
<<case 'finger'>>
<<set $scene.pay += 75>>
<</switch>>
<<switch $scene.action_2>>
<<case 'spank'>>
<<set $scene.pay += 50>>
<<case 'jerk'>>
<<set $scene.pay += 75>>
<<case 'tease'>>
<<set $scene.pay += 100>>
<<case 'cage_cum'>>
<<set $scene.pay += 60>>
<</switch>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
As soon as the camera's stop rolling there's an immediate bustle of movement, as <<=setup.getNpcName("generic_female3", "custom", "Eve")>> is released from her bonds<<if $scene.action_2 == "jerk">> and someone comes in with ice for <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> to fit back into her cage<</if>>.<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> takes a seat on the edge of the bed as if sitting on a throne, a slave curled around each leg as <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> smiles at you.<br>
<br>
"@@.generic_female2;An interesting display. I do so enjoy watching other dommes play with my toys... it can really spice things up and inspire... as well as helping expand my catalogue and reach.@@"<br>
<br>
You thank <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> for the opportunity, and congratulate her on managing such different slaves.<br>
<br>
"@@.generic_female2;Yes, well... variety is the spice of life, they say. Now, as to your performance...
<<if $scene.actions_1.help || $scene.actions_2.help>>
while, in a cooperative scene, I would appreciate the consult, in the context of the film your hesitation and looking at the camera was... a bit of a distraction. Fortunately we can always cut around that.
<</if>>
<<if $scene.actions_1.other_slave || $scene.actions_2.other_slave>>
Consulting between the submissives was very well done, a great way to add depth to the scene.
<</if>>
<<if $scene.action_1 == "ignore" || $scene.action_2 == "ignore">>
Unfortunately your choice to do, well... nothing <<if $scene.action_1 == "ignore" && $scene.action_2 == "ignore">>made for something unsellable except for teaser-footage fodder... very disappointing, and I am afraid your pay will reflect that.<<else>>with one of your subs made the scene very... unbalanced, I doubt it does very good numbers, and your pay will reflect that.<</if>>
<<elseif $scene.action_1 == "spank" && $scene.action_2 == "spank">>
I will say you indulged something of a sadistic streak... but spanking porn sells, so all to the good.
<<elseif ['fuck_strap','fuck_unlock','fuck_penis'].includes($scene.action_1) && $scene.action_2 == "jerk">>
I'd suspect you were in something of a horny move yourself... given that you went straight for the sex options, rather than indulging in more... psychological dominance.<<if $scene.action_1 == 'fuck_unlock'>> Though I'll note that a chaste dominant always makes for some enticing teaser footage, so that bumped things up<<elseif $scene.action_1 == 'fuck_strap'>> You did make an opportunity to advertise one of my branded toys, however, which is always a nice little product placement perk.<</if>>
<<else>>
<<switch $scene.action_1>>
<<case 'spank'>>
You did a great job spanking <<=setup.getNpcName("generic_female3", "custom", "Eve")>>, and the brat WAS quite asking for it.
<<case 'fuck_strap'>>
While fucking a brat is... not the most training-productive choice, your efforts were VERY hot, and it was an opportunity for a bit of product placement, so thanks for that.
<<case 'fuck_unlock' 'fuck_penis'>>
While fucking a brat is... not the most training-productive choice, your efforts were VERY hot<<if $scene.action_1 == "fuck_unlock">>, plus the added excitement of a dom unlocking themselves. That's a sort of unique enticement that really engages the audience, I've found.<</if>>
<<case 'finger'>>
Your decision to finger and edge a naughty brat was perfection, and a display that I know our fans are going to LOVE.
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<<switch $scene.action_2>>
<<case 'spank'>>
Your spanking of <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>>, and she says you did an excellent job... it's tricky, she's always so behaved, but she LOVES a good spanking, so thank you for providing such on behalf of us, as well as the audience.
<<case 'jerk'>>
Your jerking <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> off... and then her being unable to re-lock? Oh, that was a delicious thing to catch on camera... I'll be watching that one back a few times myself, and our fans will surely love it.
<<case 'tease'>>
The way you teased <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>>... excellent, just the sort of thing I was hoping to catch on camera when I recruited you... and I may be re-cutting some of your lines into an audio-track, gotta work all the angles in this business, you know.
<<case 'cage_cum'>>
The way you made <<=setup.getNpcName("generic_female1", "custom", "Slave Julie")>> cum while caged... excellent, just the sort of thing I was hoping to catch on camera when I recruited you.
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<</if>>
I guess my pair are a handful for anyone.@@" <<=setup.getNpcName("generic_female2", "custom", "Mistress Lilith")>> finishes with a wink. "@@.generic_female2;Anyway, here's your pay,@@" she adds, handing you <<=$scene.pay>> credits.<br>
<br>
[<<moveTo 'room_citymap' 'Dress and head out.' 300 '<<useClothSetPop "beforePorn">>'>>]
</div>She chides you for clumsiness, calling attention to your tie must be choking off the blood to your brain!
She has you remove the tie and gives you a spare top (feminine) only to note that it totally clashes with your pants, skirt, cotton socks? ugh, stockings, with THOSE shoes, heels
slap on the ass and back to work.
fastforward to home where you're doing the wash naked when, oh no, enfuego!
Achieng (in a slightly different costume) barges in as your apartment manager to save the day "sorry, but all I was able to recover were these feminine things... only, there's no underwear. Don't worry, you can borrow mine, "hmm, that bra doesn't look right empty, not wear it? don't be silly, it's a matching set! here, have some falsies."
show up to work, manager comes on to you hard/you need to "take responsibility" for how distractingly hot you are.
porn music hits.
with the camera/your eye-line REPEATEDLY distracted by her bulge to tease her railing you, but it always being a tease until the climactic scene./*#
#desc: cook suggests hucow porn
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
You take <<his npc_cook>> order as <<he npc_cook>> stares at your rack... though you suppose it's only fair, as you can't help but try to spot the bulge through <<his npc_cook>> <<if $npc_cook.fem>>skirt<<else>>kilt<</if>>. "@@.npc_cook;Aye, <<callPlayer "npc_cook">> yeh lookin' quite plump and productive... you know, that sort of thing, is quite a popular niche... if yeh could maybe find a co-star, perhaps? Yeah, a pair of cute hu-cows could make for a real nice shoot.@@"<br>
<br>
Overhearing things <<=setup.getNpcName("npc_barista","nickname")>> interjects with a grin "@@.npc_barista;Oooh! That sounds fun! I can't wait to, like, watch.@@"<br>
<br>
You and <<=setup.getNpcName("npc_cook","first")>> both look at <<=setup.getNpcName("npc_barista","nickname")>> with some measure of surprise. "@@.npc_barista;What? You thought that, just because, I'm like, a bimbo slut... and a whore, that I'd want to star in your porno too? I mean, not that I'm opposed but, well... given my job@@" she gestures at her breasts and their attached pumps "@@.npc_barista;Well, milking porn is, like... a bit too bus-woman's holiday. It sounds like a fun watch... but if I'm going to appear on camera I'd, like... rather it was for setting a gangbang record or something more fuck-my-brains-out focused.@@"<br>
<br>
You're still taken aback but you nod in understanding and tell <<=setup.getNpcName("npc_cook","first")>> that you'll see what you can do about finding a second.<br>
<br>
<<if State.hasPlayed("event_post_destroy_work_doctor_office_first")>>
<<printThought 'Hmm... maybe <<=setup.getNpcName("npc_hucow","full")>>? I should ask the next time I drop by her lab.'>>
<<elseif State.hasPlayed("event_betray_work_doctor_7")>>
<<printThought 'Hmm... maybe <<=setup.getNpcName("npc_hucow","full")>>? I should check <<=ps(setup.getNpcName("npc_work_doctor","last"))>> old lab and see if I can find her...'>>
<<else>>
<<printThought 'Hmm... maybe <<=setup.getNpcName("npc_hucow","full")>>? I could try asking <<=setup.getNpcName("npc_work_doctor","last")>> about her next time I visit.'>>
<</if>>
<br><br>
[<<moveTo "event_work_coffee_work_end" "Finish your shift and head back to the office." 600>>]
</div>/*#
#desc: ask to talk to hucow
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_work_doctor","last")>> if you could speak with <<=setup.getNpcName("npc_hucow","full")>>?<br>
<br>
"@@.npc_work_doctor;Thirsty or something?@@" <<He npc_work_doctor>> asks, laughing at <<his npc_work_doctor>> not-particularly-clever joke.<br>
<br>
You just stare back and <<he npc_work_doctor>> snorts, as if you're the one being rude for not appreciating <<his npc_work_doctor>> "humour."
<<if $npc_work_doctor.affection >= 7 && $npc_work_doctor.anger == 0>>
"@@.npc_work_doctor;Well, you have been helpful of late... and I believe she is around somewhere... give me a moment.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","last")>> pulls up a chat program on <<his npc_work_doctor>> terminal and a minute later <<=setup.getNpcName("npc_hucow","full")>> staggers out of one of the lab's side-rooms, looking a bit dazed... and dripping milk out of one breast.<br>
<br>
"@@.npc_work_doctor;There you are!@@" <<=setup.getNpcName("npc_work_doctor","last")>> turns back to <<his npc_work_doctor>>, leaving you to visit with <<=setup.getNpcName("npc_hucow","full")>>.<br>
<br>
[<<moveTo "event_porn_hucow_recruit_1" 'Ask <<=setup.getNpcName("npc_hucow","full")>> if she would be interested in helping you shoot a hu-cow porno?' 180>>]<br>
[<<moveTo "event_porn_hucow_recruit_abort" "You don't have anything else to discuss." 180>>]
<<else>>
"@@.npc_work_doctor;I am afraid she is quite busy with a... project.@@"<br>
<br>
You doubt that's true... but it also doesn't look like you'll be convincing <<=setup.getNpcName("npc_work_doctor","last")>> otherwise today.<br>
<br>
<<printThought "Looks like I need to spend more time buttering <<him npc_work_doctor>> up...">><br>
<br>
[<<moveTo "event_work_doctor_nonappointment_1" "Ask <<him npc_work_doctor>> something else." 60>>]
<</if>>
</div>/*#
#desc: recruit hucow to porn
#status: RELEASED 0.9.4.0
#ignore_spell: mooo
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_hucow","full")>> if she'd be interested in starring with you in a hucow porno?<br>
<br>
You would swear her horns wiggled. "@@.npc_hucow;Mooo! That sounds fun. It'd be nice getting out of the office... it feels like I never have a chance to get out of the office, much less do something fun!@@" She pauses for a moment and you see the gears turning in her head, "@@.npc_hucow;huh, I swear there was a time when I would have never even considered doing a porno... but, well... that was before I had these big, sexy milkers!@@" She puts a hand under each breast and lifts, her massive mammaries all but obscuring her hands as they jiggle, and leak a few drops of milk<<if State.hasPlayed("event_betray_work_doctor_7")>> into her top<</if>>. "@@.npc_hucow;So... yeah, give me a ring when you're ready, I guess? Weekends are good, I mostly just... relax, or get some extra hours in here in the lab.@@"<br>
<br>
You nod and tell her you'll let her know.<br>
<br>
<<if State.hasPlayed("event_post_destroy_work_doctor_office_first")>>
<<include "postDestroyDoctorLabOptions">>
<<include "afterWorkVisiting">>
<<else>>
[<<moveTo "event_porn_hucow_recruit_abort" "You don't have anything else to discuss." 180>>]
<</if>>
</div>/*#
#desc: cancel recruiting hucow to porn
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName("npc_hucow","full")>> for her time and she wanders back off into the lab. Looking around, it would seem that <<=setup.getNpcName("npc_work_doctor","last")>> is also in deep focus... with a clear hint of frustration at whatever it is. You decide to head off for the day rather than risk antagonising <<=setup.getNpcName("npc_work_doctor","last")>> further.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: change for hucow shoot
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty("beforePorn")>>
<<useClothSetPush 'beforePorn'>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_cook","first")>> about the possibility of shooting <<his npc_cook>> hucow scene?<br>
<br>
<<if setup.calcBreastSize() == "massive" && $player.body_ref.milkProduction > 0>>
"@@.npc_cook;Aye <<callPlayer "npc_cook">>. Yeh certainly have the body for it, and they aren't just for show, right?@@"<br>
<br>
You nod and confirm that your milkers are creamy full and grin as you jiggle your massive tits.<br>
<br>
"@@.npc_cook;... and there's actually a shoot that would be perfect. Have yeh found a co-star? The idea I have, well, I need two stacked and productive heifers.@@"<br>
<br>
<<if !State.hasPlayed("event_porn_hucow_recruit_1")>>
You confess that you haven't yet found another hucow to help.<br>
<br>
"@@.npc_cook;Ah, alas... well, when yeh do...@@"<br>
<br>
[<<moveTo "event_porn_select_shoot_1" "Talk about some other type of porn." 60 "<<useClothSetPop 'beforePorn'>>">>]
<<else>>
You nod that you have another hucow friend ready to join you in porn.<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> grins and <<his npc_cook>> <<if $npc_cook.fem>>skirt<<else>>kilt<</if>> twitches with excitement. "@@.npc_cook;Perfect! Well in that case it's just a matter of calling her up and you having an appropriate outfit... <<if setup.checkVisibleClothingTag("cow") >= 50 && ((setup.checkVisibleClothingTag("cow") + setup.calcBareSkin()) > 70)>>and what yeh got on is certainly that!<<else>>unfortunately ah do not have the budget for costumes on this one... so if you could provide a nice hucow ensemble?<</if>>@@"<br>
<br>
<<if setup.checkVisibleClothingTag("cow") >= 50 && ((setup.checkVisibleClothingTag("cow") + setup.calcBareSkin()) > 70)>>
[<<moveTo "event_porn_hucow_2" 'You are dressed and ready, give <<=setup.getNpcName("npc_hucow","full")>> a call.' 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "event_porn_select_shoot_1" "Actually, you'd like to do something else..." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">><br>
[<<moveTo "event_porn_select_shoot_1" "Maybe something else? You'll try to bring suitable clothes some other time." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<</if>>
<</if>>
<<else>>
<<if setup.calcBreastSize() != "massive">>
"@@.npc_cook;Ah would love to, <<callPlayer "npc_cook">> only... well, this be porn, and that means porn proportions.@@" <<He npc_cook>> nods at your
<<switch setup.calcBreastSize()>>
<<case 'large'>>
large, but not truly massive breasts. "@@.npc_cook;This be porn, a land of extremes, we don't need big tits, we need MASSIVE milkers.@@"
<<case 'medium'>>
moderately-sized breasts. "@@.npc_cook;This be porn, a land of extremes, we don't need normal breasts, we need MASSIVE milkers.@@"
<<case 'small'>>
small breasts. "@@.npc_cook;This be porn, a land of extremes, those are cute, but for this we need MASSIVE milkers.@@"
<<case 'none'>>
lack of breasts. "@@.npc_cook;Yeh can see the problem in trying to film massive-breast milking porn... when you don't have breasts at all.@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<if $player.body.breastsize[0] == 0>>lack of breasts<<else>>less-than-massive breasts<</if>>
<<else>>
"@@.npc_cook;Yeh certainly have the rack for it... are those magnificent milk-jugs fully functional?@@" <<He npc_cook>> asks.<br>
<br>
You confess that they aren't and <<he npc_cook>> frowns.<br>
<br>
"@@.npc_cook;Sorry, <<callPlayer "npc_cook">>, but for what ah have planned, they can't just be for show.@@"
<</if>>
<br><br>
[<<moveTo "event_porn_select_shoot_1" "Talk about some other type of porn." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<</if>>
</div>
/%bondage cage.jpg%//*#
#desc: bound for hucow shoot
#status: RELEASED 0.9.4.0
#ignore_spell: ahm,moooo
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_FRIEND>>
<<addItem "padded_hogtie">>
<<wearItem "padded_hogtie" true>>
<<addItem "hollow_gag">>
<<wearItem "hollow_gag" true>>
<<set $scene.penisMilk = $fetish.penis_milking && $player.body_ref.penis>>
<<set $scene.breastMilk = $fetish.milking>>
<<include "equipSleepMilkers">>
<</if>>
<<set $player.location = 'Film Set — County Fair'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_cook","first")>> leads you to one of the studios sets, a familiar rural-sort of thing. <<He npc_cook>> rolls out a small cage and you're soon bound up in it like a good cow... complete with an attached dildo sliding into your ass to hold you in place, and a large funnel gag.<br>
<br>
"@@.npc_cook;Now ain't yeh just the hottest heifer!@@" <<=setup.getNpcName("npc_cook","first")>> states with a grin, reaching through the bars to grope one of your breasts<<if $fetish.milking>>, which responds by immediately leaking some milk<<else>>and<</if>> you moan through the gag in response... only for your gagged sounds to be translated into a weirdly authentic "@@.pc;Moooo!@@"<br>
<br>
"@@.npc_cook;Easy there! Save it for the camera.@@" <<=setup.getNpcName("npc_cook","first")>> jokes as <<he npc_cook>> stands back up, leaving you caged and excited... especially since the slightest motion has the dildo in your ass shifting or thrusting.<br>
<br>
"@@.npc_cook;Ahm just going to get changed and then talk to your co-star, you don't go anywhere!@@" <<=setup.getNpcName("npc_cook","first")>> states with a laugh as <<he npc_cook>> walks back towards the dressing-room.<br>
<br>
<<printThought "Okay... this shoot better start soon, because I am already feeling SUPER aroused.">><br>
<br>
[<<moveTo "event_porn_hucow_3" "Wait." 360>>]
</div>/*#
#desc: final prep for hucow shoot
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — County Fair'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
Several minutes pass as you get increasingly more aroused, drooling through your gag as you can't resist occasionally fucking yourself on the dildo, your bound position leaving you with not much else to do to pass the time.<br>
<br>
Hearing muffled voices you look towards the door to see <<=setup.getNpcName("npc_cook","first")>>, <<=setup.getNpcName("npc_hucow","full")>> walk in, <<=setup.getNpcName("npc_cook","first")>> in farmer mode with <<=setup.getNpcName("npc_cook","first")>> dressed in her "normal" lewd cow get-up<<if State.hasPlayed("event_post_destroy_work_doctor_office_first")>>... sans lab-coat,<</if>> her heaving breasts almost fully on display.<br>
<br>
"@@.npc_cook;Now remember what we discussed.@@" <<=setup.getNpcName("npc_cook","first")>> states, confirming that the two of them have planned things out, while you'll be left to improvise.<br>
<br>
<<=setup.getNpcName("npc_hucow","full")>> flashes a thumbs up and then straightens slightly, adopting a more formal expression as she walks over to stand next to your cage, placing one hand on top as the camera-folk finish setting up and <<=setup.getNpcName("npc_cook","first")>> waits off-screen.<br>
<br>
[<<moveTo "event_porn_hucow_4" "Action!" 180>>]
</div>/*#
#desc: hucow sales pitch
#status: RELEASED 0.9.4.0
#ignore_spell: ahm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — County Fair'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
Someone calls "@@.generic_male1;Action!@@" And <<=setup.getNpcName("npc_hucow","full")>> suddenly goes into what you can only call "saleswoman" mode.<br>
<br>
"@@.npc_hucow;Get your hucow! We've got the best hucows you'll find! Looking for milk? Our latest model of hucow milk-girls produce plenty! Perfect for any farm, ranch, or house, and obedient enough to live indoors! These girls won't last long so buy today!@@"<br>
<br>
The prospect of being "sold" seems to turn you on even more, and you squirm in your cage in a manner that you hope looks as horny and enthusiastic on-camera as you feel in the moment.<br>
<br>
As <<=setup.getNpcName("npc_hucow","full")>> continues her shipping sales-pitch <<=setup.getNpcName("npc_cook","first")>> swaggers into frame, coming to a stop in front of you and nodding to <<=setup.getNpcName("npc_hucow","full")>> in a country greeting.<br>
<br>
"@@.npc_cook;Ahm lookin' for a nice milker,@@" <<=setup.getNpcName("npc_cook","first")>> states, going past <<his npc_cook>> normal accent to adopt a full-on drawl. "@@.npc_cook;What makes yer girls better than the rest?@@"<br>
<br>
You moo in greeting, eager to offer yourself... and also interested to see what your cow-worker considers the most sellable aspects of a hucow...<br>
<br>
[<<moveTo "event_porn_hucow_5" '<<=setup.getNpcName("npc_hucow","full")>>: Pitch-woman.' 180>>]
</div>/*#
#desc: hucow demo continues
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — County Fair'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_hucow","full")>> smiles. "@@.npc_hucow;Well, first of all, our units produce the highest quality milk on the market, but the real secret is quantity per time investment. As you can see, our girls are trained to prefer compact living conditions, this simplifies transport and makes housing solutions a piece of cake. A hucow isn't just for the ranch anymore, some of our customers live in spaces as small as an apartment, while having access to the finest, freshest milk there is! And you don't even have to go hands-on... as fun as that is, no, each of our girls comes with a full milking and feeding system.@@" She gestures to your gag, "@@.npc_hucow;You can see the feeding attachment already. We recommend keeping it in place for convenience, and to keep her docile... well, unless you want to use her mouth for something else. Each of our girls is trained to suck as hard as she pumps... and they just love a nice throat workout!@@"<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> nods in interest as <<he npc_cook>> kneels down to look at you closer, the camera too, closing in for a better look. "@@.npc_cook;Yeh said there was a milking system? These melons look like they could use it, they're practically dripping!@@" <<=setup.getNpcName("npc_cook","first")>> states, giving one of your breasts a squeeze and having you squirt out a thin white stream.<br>
<br>
"@@.npc_hucow;Of course, <<sir npc_cook>>! We make sure our girls are full to capacity before the show so that we can show off just how efficient our system is.@@" Reaching through the bars <<=setup.getNpcName("npc_hucow","full")>> hooks up a pair of milkers with startling efficiency... and you moan as they turn on, squeezing and pumping as your breasts happily drain... and you nearly cum.<br>
<br>
"@@.npc_cook;Hoo-ee! Looks like she liked that!@@" <<=setup.getNpcName("npc_cook","first")>> remarks as you continue to moan and drool.<br>
<br>
"@@.npc_hucow;Of course! Nothing makes our girls happier than being productive milk-slaves. Hooked up like this, and with the aforementioned auto-feeder loaded with our patented formula our girls can go up to twenty-four hours without maintenance. That means more time for you to enjoy life while they generate passive income and work to YOUR schedule, regardless of how busy you are!@@"<br>
<br>
"@@.npc_cook;Ah may just be a country boy, but ah do appreciate a bit of automation... but what's going on back here?@@" <<=setup.getNpcName("npc_cook","first")>> asks as <<he npc_cook>> walks behind you.<br>
<br>
[<<moveTo "event_porn_hucow_6" 'What, indeed?' 180>>]
</div>/*#
#desc: hucow describes milking
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — County Fair'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
"@@.npc_hucow;What's that between its legs? Ah, that's what sets our new <<if $fetish.sissy>>sissy <</if>>models apart from your traditional hucow, their sweet cum can be used for breeding other <<if $fetish.sissy>>sissies<<else>>hucows<</if>> as well as being absolutely delicious, and low calorie! We can set you up with a dealer to sell it, it's worth a pretty penny, but that's because most of our customers can't seem to refrain from using it all themselves!@@" <<=setup.getNpcName("npc_hucow","full")>> reaches between your legs to
<<if $player.body_ref.penis>>
stroke your
<<if setup.checkItemTypeWorn("cage")>>
chastity <<if setup.isCage()>>cage<<else>>belt<</if>>.
<<else>>
hard <<getWordMyPenis>>.
<</if>>
<<if $fetish.penis_milking>>
"@@.npc_hucow;This is another of our innovative features. Our girls aren't like other hucows... they produce TWO types of milk, and, even better, rather than interfering with each other's production, milking both actually triggers a feedback loop that results in even higher output!@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName("npc_hucow","full")>> <<if setup.isCage()>>squeezes<<else>>pats the front shield of your belt<</if>>. "@@.npc_hucow;Because of the value of this cream our girls come fitted with protection for your investment. You'll have the only key, and trust me when I say it really helps keep a control of your herd. If your hucow is ever acting up, well... a little reminder jangle works to bring her to heel, whether that means resecured to reconsider her actions... or granted temporarily release as a reward for services rendered. Personally, I'm in favour of locking anything that isn't in use. While our breast milkers are designed for near 24/7 safe use, this more sensitive cream benefits from a bit of rest between harvests... and what better way to make sure there are no accidents than to keep everything secure?@@"
<<else>>
<<=setup.getNpcName("npc_hucow","full")>> slides a milking sheath up over you<<if $player.body_ref.penis>>, and the attached vaginal dildo into you,<</if>> and buckles things in place. As this second pump kicks in you shudder in your bonds mooing and moaning in pleasure.
<</if>>
<<else>>
"@@.npc_hucow;Don't mind that extra bit below, it's just another option to keep your hucow teased and excited. Remember, the more excited she is, the more milk she'll produce.@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName("npc_hucow","full")>> <<if setup.isCage()>>squeezes<<else>>pats the front shield of your belt<</if>>. "@@.npc_hucow;All our girls come fitted with protection for your investment. You'll have the only key, and trust me when I say it really helps keep a control of your herd. If your hucow is ever acting up, well... a little reminder jangle works to bring her to heel, whether that means resecured to reconsider her actions... or granted temporarily release as a reward for services rendered. Personally, I'm in favour of locking anything that isn't in use and believe me, you set a goal of no unlock until she's produced a gallon and you'll be floored at how productive this thing gets!@@"
<<else>>
<<=setup.getNpcName("npc_hucow","full")>> continues to teasingly fondle you as she talks. "@@.npc_hucow;As you can tell, her bound position means that she can't get any meaningful stimulation herself... which makes it a perfect tool to use to keep her obedient and attentive. There's nothing like reaching into the cage every morning and giving her a nice ruin to really kick-start that production!@@"
<</if>>
<br><br>
You moan and moo in pleasure and want as <<=setup.getNpcName("npc_hucow","full")>> retracts her hand.
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
strokes your thigh, running her fingers through the slick juices escaping past the secure shield of your belt.
<<else>>
finger your dripping snatch.
<</if>>
"@@.npc_hucow;You can see just how turned on this heifer is at being productive... but we can improve that production even further with another of our patented devices.@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName("npc_hucow","full")>> taps the front shield of your belt. "@@.npc_hucow;All of our units ship with a personalised security device. It works wonders to maintain control, a little reminder jangle of her key works to bring her to heel, whether that means resecured to reconsider her actions... or granted temporarily release as a reward for services rendered. Personally, I'm in favour of locking anything that isn't in use. The denial doesn't cause any long-term harm, and it keeps them focused on their work... while giving you the opportunity to provide a real treat whenever you feel like availing yourself of her tight, wet hole.@@"
<<else>>
<<=setup.getNpcName("npc_hucow","full")>> brings a vaginal stimulator up between your legs, sliding the internal dildo into place and then buckling things arouns your hips. You moo, moan, and shudder as the dildo begins to thrust and the attached clit stimulator lends its vibrating assistance. "@@.npc_hucow;See how lustful she is? The added stimulation has been proven to increase production up to twenty percent... provided you use our patented control algorithm. It is guaranteed to keep any of our hucows edged, and maximally productive, for up to six hours straight. Yup, hooking a girl up like this means you'll soon be learning to associate that moaning, mooing chorus with what it is, more production, and more profits for you!@@"
<</if>>
<</if>>
<br><br>
"@@.npc_cook;She really does seem to enjoy being milked.@@" <<=setup.getNpcName("npc_cook","first")>> states, affirming the obvious.<br>
<br>
"@@.npc_hucow;Our girls love being milked! They're real sluts for it, one might say, eager and excited to do their job... what more could one want? But that's not all!@@"<br>
<br>
[<<moveTo "event_porn_hucow_7" 'The pitch continues?' 300>>]
</div>/*#
#desc: hucow adds fucking machine
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = 'Film Set — County Fair'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
"@@.npc_cook;Not all?@@" <<=setup.getNpcName("npc_cook","first")>> asks in what you're pretty sure is a genuine off-script surprise.<br>
<br>
"@@.npc_hucow;Nope! In addition to their productivity, our girls are eager, perfect pleasure-holes. You'll notice that nice thick dildo in her ass? Well it's not just for show! It's to keep her randy, productive... and ready for breeding, which we recommend if you want to really maximise production. Note that our patented cage is designed for easy rear access without even needing to set her free. Freedom for a hucow is just going to be an anxiety-causing distraction no, tightly restrained, gagged, milked, and frequently fucked is what these sluts need. You give them that and they'll love you and be ultra-productive!@@"<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> nods, playing along. "@@.npc_cook;Well, I don't actually have a bull at present...@@"<br>
<br>
<<=setup.getNpcName("npc_hucow","full")>> grins, her excitement audibly growing. "@@.npc_hucow;Oh, that's not a problem, while we advise you rent one occasionally to keep your girl maximally productive and happy, they're not picky. You can feel free to do them yourself, or purchase one of our automated systems. Here, let me show you!@@"<br>
<br>
The practiced crew reacts swiftly to this shift in the script, and <<=setup.getNpcName("npc_hucow","full")>> is soon wheeling a fucking machine in behind you... a fucking machine mounted with a massive <<if $fetish.bestiality_soft>>horse-cock <</if>>dildo.<br>
<br>
"@@.npc_hucow;This is our Mega<<if $fetish.bestiality_soft>>-Bull<</if>> XXL sized model, our recommended choice for this particular cow. The dildo in her now may be fine for some, but this is a practiced butt-slut and she likes them big. Keeping her teased is great for sweetening her production... but to really get the most out of her we need to administer a nice deep pounding! Just be careful! Left to its own device a slut like this will fuck itself to pieces, you need to be the steady hand that keeps her wanting more!@@"<br>
<br>
You moan in excitement, eagerly agreeing as <<=setup.getNpcName("npc_hucow","full")>> slides the massive dildo into your rear and sets the machine to thrusting away.<br>
<br>
[<<moveTo "event_porn_hucow_8" 'Sold?' 300>>]
</div>/*#
#desc: hucow fucks cook
#status: RELEASED 0.9.4.0
#ignore_spell: xxxl,boobily,ahm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 17 'terrible' $EXPOSED>>
<<if $fetish.cum>>
<<applyExperience 'cum' 12 'very' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = 'Film Set — County Fair'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
You may be a bit distracted by being milked<<if $player.body_ref.penis && $scene.addMilker>> in both senses of the word<</if>>... to say nothing of the monster pounding your ass, but you stay attentive to the scene above as <<=setup.getNpcName("npc_cook","first")>> steps around your cage to stand in front of <<=setup.getNpcName("npc_hucow","full")>>.<br>
<br>
"@@.npc_cook;Well ah do believe you've made yourself a sale today... only, you've done so well... I think I'd like to buy two of your hucows.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_hucow","full"))>> boobs bounce boobily as she excitedly replies. "@@.npc_hucow;Of course, <<sir npc_cook>>! We can pull out a second unit for you to inspect—@@"<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> cuts <<=setup.getNpcName("npc_hucow","full")>> off by stepping closer and reaching for one of her full breasts. "@@.npc_cook;Ah was thinking of a different model... you did mention that all display units are full of milk and could use a little relief...@@" with a flourish, <<=setup.getNpcName("npc_cook","first")>> whips out <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horse-<</if>>cock. "@@.npc_cook;Ah reckon ahm about the same size as that there Mega<<if $fetish.bestiality_soft>>-Bull<</if>> XXL... how about we finalise this here sale.@@"<br>
<br>
"@@.npc_hucow;More like XXXL...@@" <<=setup.getNpcName("npc_hucow","full")>> replies with lusty enthusiasm as she bends over your cage. A moment later and <<=setup.getNpcName("npc_cook","first")>> is fucking her raw<<if $fetish.cum>>, pussy juices raining down into your funnel as her breasts press through your cage<</if>>, your gagged moos and moans blending with her authentic loud moos of pleasure as you both get railed hard and deep.<br>
<br>
[<<moveTo "event_porn_hucow_9" 'Hucows love to fuck!' 300>>]
</div>/*#
#desc: hucow shoot finishes
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = 'Film Set — County Fair'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
The cameras roll and get plenty of footage of <<=setup.getNpcName("npc_hucow","full")>> getting railed, and you getting machine-ravaged<<if $fetish.cum>>, culminating in <<=setup.getNpcName("npc_cook","first")>> uncorking a massive load that drips out of <<=setup.getNpcName("npc_hucow","full")>> and into your funnel... where you eagerly slurp it down, grateful for any libation, really, given how hard you've been fucked, and how much has been milked out of you<<else>> until all three of you, plus the many cameras, are satisfied<</if>>.<br>
<br>
"@@.generic_male1;Cut! That's a wrap!@@" The director calls, your machines finally falling silent as someone removes your gag and opens your cage.<br>
<br>
[<<moveTo "event_porn_hucow_10" 'Crawl forward.' 300>>]
</div>/*#
#desc: paid for hucow shoot
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeGenitalMilkers">>
<<removeItem "padded_hogtie" true>>
<<deleteItem "padded_hogtie">>
<<removeItem "hollow_gag" true>>
<<deleteItem "hollow_gag">>
<<set $scene.pay = 200 + 5*setup.getTotalValue("humiliation")>>
<<if $scene.dp>>
<<set $scene.pay *= 2>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location = 'Film Set — County Fair'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_cook","npc_cook_farmhand") setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
Panting slightly, with exhaustion and lingering excitement, you crawl forward and are helped back to your feet by an eagerly grinning <<=setup.getNpcName("npc_hucow","full")>>, your dual pairs of breasts pressing tightly together as she throws her arms around you in a hug.<br>
<br>
"@@.npc_hucow;Oh that was so much fun!@@" She shouts with breathless glee. "@@.npc_hucow;Oh, I'm so glad you told me about this! Getting machine-milked and bending over for the company's scientists is one thing but this was like...@@" she moos softly, a drawn out sound of contentment.<br>
<br>
As the two of you are sharing a hug the director walks over with a camera<<man>> in tow. "@@.generic_male1;Hey, so I just overheard what you two said... would you mind repeating it for the camera? The footage we've got is already great... but a little bookend showing that you aren't just actresses, but real life horny hucows? Well, that'll take this film from success to all-timer!@@"<br>
<br>
<<=setup.getNpcName("npc_hucow","full")>> beams, throwing an arm around your shoulder as the two of you face the camera and she gushes excitedly. "@@.npc_hucow;Hi everyone! First time porn-star here I just want to say I love being a hucow milk-girl fuck-slut! Especially with my friend here!@@"<br>
<br>
"@@.pc;That's right, scenes like that aren't just our job... they're our passion... the same passion you know you're going to get every time when you see <<=$player.flags.porn.pornname>> in the title!@@"<br>
<br>
The director flashes a thumbs-up and <<his>> assistant hands you and <<=setup.getNpcName("npc_hucow","full")>> each a stack of cash before they wander off.<br>
<br>
"@@.npc_hucow;Wow, and we get paid! I think I'm going to go celebrate with a shopping spree, thanks again... and I'll see you back at the lab!@@"<br>
<br>
<<=setup.getNpcName("npc_hucow","full")>> skips off, barely remembering to pull her top back down to vaguely conceal and contain her massive breasts. You share a parting smile with <<=setup.getNpcName("npc_cook","first")>> who is sitting on a couch recovering from <<his npc_cook>> own efforts, raising a glass of water to you in congratulations as you grab your things and head off.<br>
<br>
[<<moveTo 'room_citymap' 'Dress and head out.' 300 '<<useClothSetPop "beforePorn">>'>>]
</div>/*#
#desc: run into lilith after church
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess Exterior">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_exterior.png">>
<div id="invframe" class="scrolltext">
You're walking out of the service when you spot a familiar face — <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> is having a conversation with <<=setup.getNpcName('npc_sissy_superior', 'formal')>>.<br>
<br>
You don't manage to catch any of the discussion over the general crowd-noise, but whatever it is seems to end amicably as <<=setup.getNpcName('npc_sissy_superior', 'formal')>> bows politely before moving off to speaks with others of her flock, leaving <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> standing behind with a smile.<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> must have noticed you as she turns in greeting. "@@.generic_female2;<<=$player.flags.porn.pornname>>! Or... well, I suppose you go by a different name here. No matter, it is good to see you in any case. I was discussing a proposal with <<=setup.getNpcName('npc_sissy_superior', 'formal')>>... things did not go perfectly as I hoped, but she was polite enough...@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> pauses, looking you up and down and then smiling.<br>
<br>
<<if setup.checkVisibleClothingTag('nun') > 70>>
"@@.generic_female2;I don't suppose you'd be interested in wearing that outfit, or one like it, on-screen? See, I have a hot little script I'm working on and, well... if you're interested you know where to find me... and what to wear.@@"
<<else>>
"@@.generic_female2;I don't suppose you've thought about playing a nun? Not being one mind, that is a whole matter but, well... I have an interesting script I'm looking to film, and if you had the proper outfit, well... I think <<=$player.flags.porn.pornname>> would be the a wonderful star...@@"
<</if>>
<<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> winks and walks off into the crowd.<br>
<br>
[<<moveTo "location_church_exterior" "Be on your way." 60>>]
</div>/*#
#desc: change for demon shoot
#status: RELEASED 0.9.4.0
#ignore_spell: longwood
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty("beforePorn")>>
<<useClothSetPush 'beforePorn'>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_cook","first")>> that <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> mentioned a shoot involving nuns? <<=setup.getNpcName("npc_cook","first")>> smiles.<br>
<br>
"@@.npc_cook;Aye <<callPlayer "npc_cook">>. She mentioned you might be in, she said that the shoot would be focusing on the dichotomy of the sacred and profane... and that, to start off, she wanted you in a modest nun's outfit... <<if setup.checkItemSetWorn("nun_public")>>like what yeh wearing now!<<elseif setup.checkItemSetWorn("nun_fetish")>>so... the non-latex-fetish version of what yeh got on now<<elseif setup.checkVisibleClothingTag('nun') > 0>>if yeh maybe had a full set to go with what yeh wearin' now?<<else>>if yeh happen to have one of those with yeh?<</if>>@@"<br>
<br>
<<if setup.checkItemSetWorn("nun_public")>>
[<<moveTo "event_porn_convent_demon_2" "You're dressed and ready to go!" 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "event_porn_select_shoot_1" "Actually, you'd like to do something else..." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">><br>
[<<moveTo "event_porn_select_shoot_1" "Maybe something else? You'll try to bring suitable clothes some other time." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<</if>>
</div>/*#
#desc: start praying
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_private_prayer.png">>
<div id="invframe" class="scrolltext">
Dressed as a demure nun, you head for the soundstages. One of <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith Longwood"))>> meets you and give you your initial direction notes, it seems that this is one of those "starts slow and then ramps" pornos, and you'll be begining things on your knees praying... literally, and not on your knees for some other purpose.<br>
<br>
You step onto the small set, made up to look like a plain stone room like you might find at so many ancient buildings.<br>
<br>
You glance out the empty side of the set where the camera operator flashes you a thumbs up. Looks like it's on you to get things started...<br>
<br>
[<<moveTo "event_porn_convent_demon_3" 'Kneel and "pray."' 300>>]
</div>/*#
#desc: groped by nun
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_private_prayer.png">>
<div id="invframe" class="scrolltext">
You double check that the camera will have agood angle and kneel down and bow your head. At first you aren't sure about actually praying, but you get an inspiration and send out a silent offering to the Goddess. <<printThought "Bless me, Goddess, and bless this work. Grant me the passion to perform and produce a work of art worthy of your glory...">><br>
<br>
You nod slightly as you continue to act for the camera, retaining your stoic focus as the camera pans around... and you hear a noise from behind.<br>
<br>
"@@.generic_female2;Hello, Sister...@@" comes <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith Longwood"))>> sultry voice, her barefoot footsteps soft as she makes a quiet approach, a striking difference from her normal heels. You catch a momentary glimpse of her wearing fitted nun's attire very similar to your own, modest in coverage, but enough shaping to hint at the body beneath.<br>
<br>
You retain your posture as "@@.generic_female2;<<=setup.getNpcName("generic_female2", "custom", "Sister Longwood")>>@@" moves in behind you. She leans in close, her lips next to your ear as her arms reach around you to grope your <<if $player.body.breastsize>><<=setup.calcBreastSize()>> breasts<<else>>chest<</if>> and she whispers to both you and the camera, her breasts pressing against you from behind.<br>
<br>
"@@.generic_female2;I was passing through when I heard you... praying.@@" You let out a little gasp as she gropes you with one hand, her other moving slowly down your body with a destination between your legs. "@@.generic_female2;So beautiful you are. A ripe offering, begging to be plucked...@@"<br>
<br>
Your heart beats faster as you recall the script... well, less a script than a prompt, either way, as "@@.generic_female2;<<=setup.getNpcName("generic_female2", "custom", "Sister Longwood")>>@@" squeezes, gropes, and grinds against you it is your turn to steer the scene as she places a delicate kiss behing your ear.<br>
<br>
[<<moveTo "event_porn_convent_demon_4" "Pull away." 180 "<<set $scene.pull_away=true>>">>]<br>
[<<moveTo "event_porn_convent_demon_4" "Press back into her." 180 "<<set $scene.pull_away=false>>">>]
</div>/*#
#desc: react to groped by nun
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_private_prayer.png">>
<div id="invframe" class="scrolltext">
<<if $scene.pull_away>>
You pull away, only for <<=setup.getNpcName("generic_female2", "custom", "Sister Longwood")>> to chuckle. "@@.generic_female2;Scared, little one? There is no need. I will not hurt you... quite the contrary, in fact.@@" As she whispers her lips kiss their way down from behind your ear, one hand now squeezing between your legs while the other <<if $player.body.breastsize[0] == 0>>gropes your chest<<elseif $player.body.breastsize[0] > 5>>squeezing your <<=setup.calcBreastSize()>> breasts<<else>>fondles your breasts<</if>>. "@@.generic_female2;Your taste is heavenly... your resistance as fragile as tissue paper, already fading, begging to be torn asunder... yes... you are PERFECT...@@" she whispers, her last word lingering as she slips away as swiftly as she entered, leaving you gasping, alone... and burning for more.
<<else>>
You softly gasp, and lean back into <<=setup.getNpcName("generic_female2", "custom", "Sister Longwood")>>, baring your neck for her lips to kiss their ways downward... as her hand moves between your legs and she squeezes you tighter and <<if $player.body.breastsize[0] == 0>>gropes your chest<<elseif $player.body.breastsize[0] > 5>>squeezing your <<=setup.calcBreastSize()>> breasts<<else>>fondles your breasts<</if>>. "@@.generic_female2;Your taste is heavenly... so eager, so desperate with want... yes... you are PERFECT...@@" she whispers, her last word lingering as she slips away as swiftly as she entered, leaving you gasping, alone... and desperate for more.
<</if>>
<br><br>
Your prayers quite interrupted, you kneel and catch your breath as a narrative voiceover functions to provide your next direction.<br>
<br>
"@@.generic_male2;Disrupted from her prayers, the innocent nun was flooded with previously unfelt emotions. She had not recognised the other Sister... perhaps a visitor from another convent? But her actions, too, were like nothing the chaste nun could have ever imagined... but now they are the only thing in her thoughts. Perhaps the Sister Superior would have something to say about this quite irregular event.@@"<br>
<br>
[<<moveTo "event_porn_convent_demon_5" "Go speak to Mother Superior." 180>>]
</div>/*#
#desc: speak with mother superior about groping
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
You rise from your feet, off-set direction pointing you along as the camera follows you through a short journey across a hallway set and then to another, larger room. A nun stands before an altar, her back to you as you approach.<br>
<br>
"@@.pc;Sister Superior. I require your guidance...@@" you state.<br>
<br>
The nun turns. Fully clothes in cowl and long, flowing robes, only her eyes are visible... eyes that are sparkling with joy, and subtly familiar, recognition triggering as she speaks. "@@.npc_nun_chastity;How may I be of assistance, Sister?@@" and you realise that <<=setup.getNpcName('npc_nun_chastity', 'formal')>> is appearing in this production.<br>
<br>
<<printThought "Well... it is something of a unique church...">><br>
<br>
Remaining in character, you explain how your prayers were interrupted by an un-recognised nun and how she spoke to you... and touched you.<br>
<br>
Despite being almost entirely concealed, <<=setup.getNpcName('npc_nun_chastity', 'formal')>> manages to emote and smile with her eyes as she asks for clarification. "@@.npc_nun_chastity;Touched you? Please, Sister, I can only help you if you trust me. How did she touch you? Perhaps she brushed your shoulder to get your attention? Stumbled into you out of clumsiness?@@" As <<=setup.getNpcName('npc_nun_chastity', 'formal')>> speaks she walks around you, moving close... and yet never actually touching your herself.<br>
<br>
You shiver, continuing to play the part of the innocent nun as you speak with confusion, explaining that the strange sister did not touch you by accident, but pressed tightly against you, her hands moving over your chest and between your legs as if washing you... only there was no soap... and her touch sparked feelings very different from cleanliness.<br>
<br>
"@@.npc_nun_chastity;Ah,@@" <<=setup.getNpcName('npc_nun_chastity', 'formal')>> states as she comes to a stop in front of you, holding your attention as she renders judgement. "@@.npc_nun_chastity;You have been visited by HER... truly it is such a joy to be chosen by her... and make haste to prepare, that we may be ready for her return...@@"<br>
<br>
[<<moveTo "event_porn_convent_demon_6" "What?" 300>>]
</div>/*#
#desc: bound by nuns
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<applyExperience 'humiliation' 10 'very' $EXPOSED>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
"@@.pc;Return?@@" You ask in confusion, only for a pair of additional nuns to appear on either side of you, grabbing you fast by either arm and leading you to the altar as <<=setup.getNpcName('npc_nun_chastity', 'formal')>> moves behind the altar and spreads her arms.<br>
<br>
"@@.npc_nun_chastity;Yes, today is a very blessed day, Sister. The appearance of <<=setup.getNpcName("generic_female2", "custom", "Sister Longwood")>> means that <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> has chosen her offering. Oh, so fortunate you are... and so grateful we are to you. When <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> smiles our convent is blessed beyond measure. She has chosen you, Sister... so give yourself to her, give ALL of yourself to her.@@"<br>
<br>
As <<=setup.getNpcName('npc_nun_chastity', 'formal')>> speaks the other nuns are busy, binding you to the altar and striping your clothes.
<<if $player.body_ref.vagina && $player.sec_style.sex.airtight && $player.sec_style.sex.vaginal && $player.sec_style.sex.sex_woman && $player.sec_style.sex.pegging && $player.sec_style.sex.vag_strap && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
As they do, <<=setup.getNpcName('npc_nun_chastity', 'formal')>> close, her gaze flicking towards your chastity belt as she poses a question. "@@.generic_female1;So, Sister... are you prepared to offer EVERYTHING?@@"<br>
<br>
[<<moveTo "event_porn_convent_demon_7" "Yes... everything." 300 "<<set $scene.removeBelt=true>>">>]<br>
[<<moveTo "event_porn_convent_demon_7" "No, your belt cannot be removed." 300 "<<set $scene.removeBelt=false>>">>]
<<else>>
<br><br>
[<<moveTo "event_porn_convent_demon_7" "Continue." 300 "<<set $scene.removeBelt=false>>">>]
<</if>>
</div>/*#
#desc: exposed by nuns
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeBelt = setup.checkItemTypeWorn("cage") && $player.body_ref.vagina && $player.virgin.vaginal && $player.sec_style.sex.airtight && $player.sec_style.sex.vaginal && $player.sec_style.sex.sex_woman && $player.sec_style.sex.pegging && $player.sec_style.sex.vag_strap>>
<<if $scene.removeBelt>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'humiliation' 13 'very' $EXPOSED>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
The nuns finish binding you <<if $scene.removeBelt && $scene.removePlug>>and surreptitiously remove your belt and plug <<elseif $scene.removePlug>>and surreptitiously remove your plug <<elseif $scene.removePlug>>and removing your belt <</if>>and then step back, looking on in silent, aroused witness as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> strides into the room.<br>
<br>
Gone is her humble, barefoot disguise, <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> instead looming tall, yellow eyes and dark red hair gaining an even more demonic appearance with the addition of horns... and a pair of <<if $fetish.pet_play>>magnificently steep, and reverse-jointed hoof-boots<<else>>seamless heels<</if>> that take her from "on the tall side for a woman" to "would struggle with standard ceilings." <br>
<br>
"@@.npc_nun_chastity;Welcome, <<=setup.getNpcName("generic_female2", "custom", "Lilith")>>!@@" <<=setup.getNpcName('npc_nun_chastity', 'formal')>> calls out in greeting, "@@.npc_nun_chastity;and take that which is yours!@@"<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith")>> looms over you and smiles her glorious, and gloriously hard
<<if $scene.removeBelt>>
cock... and a second, demonic-inspired strap cast
<<else>>
cock casts
<</if>>
a shadow over your bare form.<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith")>> smiles, her voice deeper, echoing through in the room thanks to some manner of special effect, sounding every bit the sultry demoness that she now portrays "@@.generic_female2;Your beauty is so much greater without those concealing robes... a being not of silent prayer, but of lustful passions. I choose you to be inducted into my order, to taste the pleasure that only I may provide... are you prepared? To abandon innocence in favour of so much more?@@"<br>
<br>
There is a moment of stillness as the narrator gives a final bit of direction to guide your response.<br>
<br>
"@@.generic_male2;The once-innocent nun stares up in awe. Her vows of chastity and modesty forgotten in an instant as she falls for the Goddess before her. How can one of such beauty be anything but divine? The nun holds her breath, waiting for <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> touch that she may give herself over to unearthly pleasures...@@"<br>
<br>
<<printThought "It makes sense that if the Church of the Goddess is involved this would be a film about passion and brazen, ecstatic glory.">><br>
<br>
[<<moveTo "event_porn_convent_demon_8" 'Give yourself over to <<=setup.getNpcName("generic_female2", "custom", "Lilith")>>.' 900>>]
</div>/*#
#desc: fucked by demon
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dp = $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
<<applyExperience 'humiliation' 16 'very' $EXPOSED>>
<<applyExperience 'anal' 18 'very' $EXPOSED>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
"@@.pc;Innocence is ignorance, bless me anew with your <<if $scene.dp>>cocks<<else>>cock<</if>>!@@" You call out and <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> grins, her cock sliding into your <<if $scene.dp>>cunt as its artificial compatriot stakes its claim in your <</if>>ass.<br>
<br>
"@@.generic_female2;Praise me, nun. Praise me as I show you the true meaning of pleasure!@@"<br>
<br>
"@@.pc;Yes, YES!@@" You cry out as she plunges deeper into <<if $scene.dp>>both your holes<<else>>your hole<</if>>. You are no longer acting, instead fully caught up in the moment as the demoness <<if $scene.dp>>double-penetrates<<else>>fucks<</if>> you... as the other nuns look on, a mix of arousal and envy on their face as they begin to softly chant as <<=ps(setup.getNpcName('npc_nun_chastity', 'formal'))>> voice cuts through the din and you stare upwards at your demonic partner.<br>
<br>
"@@.npc_nun_chastity;Bless this demon's whore.@@" <<=setup.getNpcName('npc_nun_chastity', 'formal')>> preaches as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> lifts your hips, pounding you down into the altar as you surrender to lust and beg for more. "@@.npc_nun_chastity;See the speed at which she surrenders, her insatiable need. Bless her, oh <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> replace her sanctity with submission, claim her devotion and do unto her every depravity she craves!@@"<br>
<br>
Your bonds release as the nuns move closer, the camera, too closing in to spotlight your debauchery, one camera tracking your face while another focuses on the <<if $scene.dp>>dual cocks pounding into you<<else>>cock pounding into your ass<</if>> you can see the rapid cuts in your minds eye, every thrust turning you into even more of a cock-addicted slut... and you moan with lusty joy.<br>
<br>
[<<moveTo "event_porn_convent_demon_9" "Continue." 300>>]
</div>/*#
#desc: more fucked by demon
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 19 'very' $EXPOSED>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
"@@.npc_nun_chastity;Look upon your sister! Gaze upon her sacrifice and show your appreciation!@@" <<=setup.getNpcName('npc_nun_chastity', 'formal')>> calls out, still standing over you and presiding as the other nuns shed their robes, cocks and cunts revealed as they masturbate over you and you revel, reaching out to stroke and finger, sucking passionately when a cock approaches your lips, neither knowing, nor caring, who it belongs to, yearning only to be filled, filled and fucked in <<if $scene.dp || !$player.body_ref.vagina>>every hole<<else>>both unprotected holes<</if>>.<br>
<br>
The porn-star nuns, down to just their cowls save for the still dressed <<=setup.getNpcName('npc_nun_chastity', 'formal')>>, the nuns' debauchery increases, as their breasts jiggle and they make out while
<<if $fetish.cum>>
cuming and spurting
<</if>>
over your body, all while <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> continues to fuck you hard and deep.<br>
<br>
You climax, hard,
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
taunted further as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> squeezes your caged<<if $fetish.cum && $player.body_ref.cumProduction>> and you leak down onto the altar beneath<</if>>.
<<else>>
egged on further as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> continues to fuck while jerking you off with her hand. <<if $fetish.cum && $player.body_ref.cumProduction>>You cum almost immediately, <<if $player.body_ref.cumProduction >= 2>>long, ropey blasts that spray over you, some splashing your body, while others hits one of the nearby nuns<<else>>a powerful blast that showers over you<</if>><</if>>.
<</if>>
<<else>>
your hips bucking as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> continues to ride and thrust.
<</if>>
<br><br>
The nuns, save for the still clothed, clean, and separate <<=setup.getNpcName('npc_nun_chastity', 'formal')>> descend upon you, a pool of bare flesh. Kissing, groping, licking, loving... all while <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> lords over and continues to fuck, pounding you harder and harder, pushing you to the limits of pleasure until, with a double-meaning call of "@@.npc_nun_chastity;May the Goddess bless this orgasm!@@" You and <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> cum as one magnificent, explosive culmination of pleasure.<br>
<br>
"@@.generic_female1;Praise be to <<=setup.getNpcName("generic_female2", "custom", "Lilith")>>!@@" The other nuns call out in unison, your own attempt to join in as the pleasure overwhelms and your consciousness slips away.<br>
<br>
The last thing you remember is the camera panning wide over the roiling mass of ecstatic naked flesh as the narrator concludes with the trailing line "@@.generic_male2;And so, with <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> unholy lusts again satisfied, the convent again fell under her protection... and its inhabitants deeper under her lusty spell of control...@@"<br>
<br>
[<<moveTo "event_porn_convent_demon_10" "Pass out." 300>>]
</div>/*#
#desc: finish demon porn
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeBelt>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
You wake up <<if $scene.removePlug && $scene.removeBelt>>plugged and chaste <<elseif $scene.removePlug>>plugged once more <<elseif $scene.removeBelt>>again chaste <</if>>to one of <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> assistants cleaning you off as the cast and crew bustle about cleaning up and congratulating one another on the successful suit.<br>
<br>
Still in makeup, but no longer looming over all in her costume boots, <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> approaches you with a grin, "@@.generic_female2;Now that is what I call porn! Helluva shoot once again... no pun intended!@@"<br>
<br>
You laugh as you notice <<=setup.getNpcName('npc_nun_chastity', 'formal')>>, still dressed, clean and retaining an air of heavenly grace as she moves between the naked pornstars, makes her way over to you and <<=setup.getNpcName("generic_female2", "custom", "Lilith")>>.<br>
<br>
[<<moveTo "event_porn_convent_demon_11" "Hear what she has to say." 300>>]
</div>/*#
#desc: paid for demon porn
#status: RELEASED 0.9.4.0
#ignore_spell: televangelism
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 200 + 5*setup.getTotalValue("humiliation")>>
<<if $scene.dp>>
<<set $scene.pay *= 2>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_nun_chastity', 'formal')>> greets you with a smile just as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> hands you <<=$scene.pay>> credits.<br>
<br>
You glance at <<=setup.getNpcName('npc_nun_chastity', 'formal')>> and she shakes her head.<br>
<br>
"@@.npc_nun_chastity;The rules of our order is to never take money for sex, such gifts from the Goddess we grant freely. This prohibition on temple whores, in the strict sense of the word, has, in modern days, been interpreted to mean that we may not sell ourselves for porn... but, well... I never so much as opened my robes, or even touch you, yes? And there is nothing in the scriptures against being an actress...@@"<br>
<br>
"@@.generic_female2;An actress compensated by her share of the profits being donated to a certain religious organisation.@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> adds with an amused smile.<br>
<br>
<<=setup.getNpcName('npc_nun_chastity', 'formal')>> nods politely. "@@.npc_nun_chastity;A much appreciated gesture from such a beautiful and vibrant child of the Goddess.@@" <<=setup.getNpcName('npc_nun_chastity', 'formal')>> replies... before adopting a playful grin of her own. "@@.npc_nun_chastity;You would make for a lovely nun, you know... <<=setup.getNpcName("generic_female2", "custom", "Sister Lilith")>>... no, <<=setup.getNpcName("generic_female2", "custom", "Sister Allure")>>, for surely your beauty and charisma would guide many to the doors of our humble church...@@"<br>
<br>
"@@.generic_female2;Perhaps if you ever opened up to... televangelism. I do so love my time on both sides of the camera.@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> replies playfully.<br>
<br>
"@@.npc_nun_chastity;Perhaps someday,@@" <<=setup.getNpcName('npc_nun_chastity', 'formal')>> notes with bow. "@@.npc_nun_chastity;And remember, we require a copy of all footage, and the finished product for our... records.@@" She states as she departs. You catch <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> looking after the nun for a few additional moments.<br>
<br>
"@@.generic_female2;Well, as the good <<=setup.getNpcName('npc_nun_chastity', 'formal')>> implied... I have some editing and cutting to do... yes, <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> and <<=$player.flags.porn.pornname>> in: Devil's Share is going to do QUITE well, I believe... until next time.@@"<br>
<br>
[<<moveTo 'room_citymap' 'Dress and head out.' 300 "<<useClothSetPop 'beforePorn'>>">>]
</div>/*#
#desc: change for humiliation torture shoot
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty("beforePorn")>>
<<useClothSetPush 'beforePorn'>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You agree to
<<if State.hasPlayed("event_porn_torture_humil_2")>>
do another run-through of humiliation interrogation porn.<br>
<br>
"@@.npc_cook;Brave <<callPlayer "npc_cook">>, I dinnae know if we will capture the same raw intensity as the first time... but there is only one way ta find out! If you would strip I will go get the crew ready.@@"
<<else>>
<<=ps(setup.getNpcName("npc_cook","first"))>> enigmatic proposal.<br>
<br>
"@@.npc_cook;Brave <<callPlayer "npc_cook">>. If you could strip, I will get the crew ready.@@"
<</if>>
<br><br>
<<if setup.checkNaked()>>
<<if $options.ezchange>>
[<<moveTo "event_porn_torture_humil_2" "Get undressed and on your mark." 300 "<<removeAllClothing>><<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">><br>
<</if>>
[<<moveTo "event_porn_select_shoot_1" "Actually, you'd like to do something else..." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
</div>/*#
#desc: make choice for humil shoot
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.silent_count = 0>>
<<set $scene.resist_count = 0>>
<<set $scene.depraved_count = 0>>
<<set $scene.break_count = 0>>
<<set $scene.rape_count = 0>>
<<set $scene.punish_count = 0>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
Naked, you stand outside the door to a soundstage as <<=setup.getNpcName("npc_cook","first")>> gives you a final reassurance. "@@.npc_cook;Remember, <<callPlayer "npc_cook">>, this scene is going to be all about raw emotions. As gorgeous as that body is, the audience wants to see you exposed figuratively, as well... so embrace the moment and do not hold back...@@"<br>
<br>
You nod and <<=setup.getNpcName("npc_cook","first")>>
<<if $fetish.get_raped>>
starts to step away. "@@.npc_cook;Oh, one last thing... how intense are you willing to get with this? Given the scenario some level of resistance could be part of the role... and ignoring any objections would give the whole thing a raw intensity that some viewers might like... if you're up for that?@@"<br>
<br>
[<<moveTo "event_porn_torture_humil_2_forced" "Once you're on set you'll see things to the end." 180 "<<set $scene.rape=true>>">>]<br>
[<<moveTo "event_porn_torture_humil_2_forced" "You want the option to abort if things get too intense." 60 "<<set $scene.rape=false>>">>]
<<else>>
steps away, leaving you momentarily alone standing in front of a solid door. On the other side of the door is cameras and crew... it's now up to you to step forth and start the show...<br>
<br>
[<<moveTo "event_porn_torture_humil_3" "Step through the door." 180 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_porn_torture_humil_3" "Never mind, you don't want to do this." 60 "<<set $scene.abort=true>>">>]
<</if>>
</div>/*#
#desc: select that you are ready for forced variant
#status: RELEASED 0.9.4.0
#ignore_spell: 'tis
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<if $scene.rape>>
You reply that you're ready for anything, that you don't want any limits on your actions and thus pre-consent to whatever the scene demands, and for the cameras to keep rolling even if you're sobbing and begging for mercy.<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> nods. "@@.npc_cook;Aye, <<callPlayer "npc_cook">>... 'tis a brave thing you're agreeing to... well, perhaps, I suppose it depends how yeh play it, after all.@@"
<<else>>
You reply that, while you're ready for thing sto get intense on-set, you want the option to call a figurative cut if they go in the wrong direction.<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> nods. "@@.npc_cook;Aye, that's why I asked. However it may look on-camera we run a consent-focused set, I just wanted to give you the option to really dive into things to the extreme... but since yeh don't want that, well, I'll be keeping an eye out for if it all gets too much and you call the proverbial stop.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_cook","first")>> steps away, leaving you momentarily alone standing in front of a solid door. On the other side of the door is cameras and crew... it's now up to you to step forth and start the show...<br>
<br>
[<<moveTo "event_porn_torture_humil_3" "Step through the door." 180 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_porn_torture_humil_3" "Never mind, you don't want to do this." 60 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: begin shoot
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
Faced with
<<if State.hasPlayed("event_porn_torture_humil_4")>>
the concrete reality of what you know is
<<else>>
the ominous possibilities
<</if>>
on the other side of the door you change your mind, backing away and calling <<=setup.getNpcName("npc_cook","first")>> to let <<him npc_cook>> know you don't want to do this today.<br>
<br>
"@@.npc_cook;Aye, lass... you be givin' me the directorial blue balls! But it be yer decision, I did warn yeh it was going to be intense so the reality of that... well, why don't yeh get dressed and we'll talk about shooting something else?@@"<br>
<br>
[<<moveTo "event_porn_select_shoot_1" "Put your clothes back on and discuss something else." 60 "<<useClothSetPop 'beforePorn'>>">>]
<<else>>
You open the door and walk into the room.<br>
<br>
The set is stark and cell-like, definitely meant to evoke the tropes of an interrogation room, from the concrete walls to the single steel chair sitting alone in the centre of the room facing away from you. As you circle around you see that, while the frame is stark brushed steel, the seat is transparent... with a massive dildo sticking upwards. Though the set is enclosed outside that lone door you can see a primary camera pointed at the chair, and several more scattered about, some following you as you move, but most fixated directly on the chair, recording you from multiple angles.<br>
<br>
The door behind you slams shut with an ominous bang and a deep computer-masked voice commands you. "@@.computer;Subject will take their seat.@@"<br>
<br>
[<<moveTo "event_porn_torture_humil_4" "Take the offered seat..." 180 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_porn_torture_humil_4" "Never mind, you don't want to do this." 60 "<<set $scene.abort=true>>">>]
<</if>>
</div>/*#
#desc: take your seat
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.abort>>
<<set $scene.resist_count += 1>>
<</if>>
<<applyExperience 'anal' 20 'terrible' $EXPOSED>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You stare at the dildo and look around the room. Even knowing that you could hilt even a cock of that length with ease... you decide that this is all a bit more than you're interested in doing today and walk back to the room and bang on the door, asking to leave.<br>
<br>
The distorted voice returns. "@@.computer;Subject is resisting. This is subject's last chance, it will take its seat or <<if $fetish.get_raped>>additional measures will be taken<<else>>the experiment will end...<</if>>@@"<br>
<br>
<<printThought "Hmm... I guess, given the context my outburst could be seen as just part of the performance...">><br>
<br>
[<<moveTo "event_porn_torture_humil_4" "Take the offered seat..." 180 "<<set $scene.abort=false>>">>]<br>
<<if $fetish.get_raped>>
[<<moveTo "event_porn_torture_humil_4_rape_1" "Refuse!" 180>>]<br>
<<else>>
[<<moveTo "event_porn_torture_humil_abort" "No, you do want to abort this thing." 180 "<<set $scene.abort=false>>">>]
<</if>>
<<else>>
You <<if $scene.removePlug>>remove your plug and<</if>> take a seat, the large dildo sliding easily into your <<if $scene.removePlug>>recently-gaped and<</if>> well-trained ass as you first squat down, and then let your weight carry you the rest of the way to be fully rooted on the thick cock.<br>
<br>
You take a slow breath as the voice returns.<br>
<br>
"@@.computer;Well done, Subject. Obedience is encouraged.@@"<br>
<br>
You hear a sound from above and you look up as package drops down into your lap. You open it to find threes sets of cuffs.<br>
<br>
"@@.computer;Subject will cuff their ankles to the chair, and then their wrists behind them. Subject will comply immediately.@@"<br>
<br>
<<if !$fetish.get_raped>>
<<printThought "This feels like a point of no return... if I quit now it's just wasted film, but if I keep going whatever happens is going to be captured and sold...">><br>
<br>
<</if>>
[<<moveTo "event_porn_torture_humil_5" "Cuff yourself." 180 "<<set $scene.abort=false>>">>]<br>
<<if $fetish.get_raped>>
[<<moveTo "event_porn_torture_humil_5_rape_1" "Toss the cuffs away." 300>>]
<<else>>
[<<moveTo "event_porn_torture_humil_abort" "Never mind, you don't want to do this." 60 "<<set $scene.abort=true>>">>]
<</if>>
<</if>>
</div>/*#
#desc: abort shoot
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You stare at the camera and make a calm statement affirming. "@@.pc;<<=setup.getNpcName("npc_cook","full")>>. I am not acting. I have changed my mind about participating in this shoot.@@"<br>
<br>
Immediately the door opens and <<=setup.getNpcName("npc_cook","first")>> rushes in. "@@.npc_cook;Ah! Sorry <<callPlayer "npc_cook">>. I thought yeh were just really selling the situation... but if you really aren't up for it today... well, how about yeh get changed and we'll talk about something else?@@"<br>
<br>
[<<moveTo "event_porn_select_shoot_1" "Put your clothes back on and discuss something else." 60 "<<useClothSetPop 'beforePorn'>>">>]
</div>/*#
#desc: forced into seat
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'terrible' $EXPOSED>>
<<set $scene.resist_count += 1>>
<<set $scene.rape_count += 1>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
You look at the chair and its massive dildo and then pick a camera at random to stare into, shouting that you refuse this treatment and that you demand to be set free!<br>
<br>
Playing up the tirade you start pulling on the door, then banging on it... only for it to burst open and nearly knock you to the ground.<br>
<br>
<<printThought "Well... I did sign up for this...">> you think as several masked <<men>> rush into the room, gang-tackling you to the ground and wrenching your arms behind your back to cuffs your wrists together.<br>
<br>
"@@.computer;Subject's refusal to follow basic instructions has been noted. The test will proceed.@@" The distorted voice states as you are lifted off the ground and carried over to the chair, thrashing the whole way.<br>
<br>
"@@.pc;No! Unhand me! Let me go!@@" You cry out, thrashing all the way as<<if $scene.removePlug>> a rough hand rips the plug out of your ass and<</if>> you are positioned over the dildo... and then shoved all the way down, the thick cock forcing you open as your bare thighs slam into the steel chair.<br>
<br>
You gasp at the sudden fullness, not the largest you've handled... but a substantial schlong to one-thrust.<br>
<br>
You continue to struggle, which only causes the cock in your ass to stir you up. Your cuffed hands are pulled down behind the seat and attached to something, further restraining you and preventing you from rising. The masked figures add an additional pair of cuffs at your ankles, pulling your legs apart so that the camera in front of you can see you not just naked and exposed... but with the base of the dildo peeking out as a reminder just what you're sitting on.<br>
<br>
"@@.computer;Subject is advised to comply with future instructions. Proceeding with interrogation.@@"<br>
<br>
The masked figures retreat and the door slams closed once more.<br>
<br>
[<<moveTo "event_porn_torture_humil_4_rape_2" "Struggle and shout!" 180 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_porn_torture_humil_6" "Continue..." 180 "<<set $scene.accept=true>>">>]
</div>/*#
#desc: fight after forced into seat
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You pant in pain, the combination of the dildo stuffed halfway up your torso and your hands cuffed behind mean you can't even lean forward, or slouch back.<br>
<br>
"@@.computer;What is your primary profession?@@" The voice asks.<br>
<br>
[<<moveTo "event_porn_torture_humil_6" "Porn star." 180 "<<set $scene.action_job='porn'>>">>]<br>
[<<moveTo "event_porn_torture_humil_6" "Prostitute." 180 "<<set $scene.action_job='whore'>>">>]<br>
[<<moveTo "event_porn_torture_humil_6" "Secretary." 180 "<<set $scene.action_job='secretary'>>">>]<br>
[<<moveTo "event_porn_torture_humil_6" "Refuse to answer." 60 "<<set $scene.action_job='silent'>>">>]
<<else>>
You continue to struggle, the cuffs digging into your wrists and ankles as you shift on the dildo as you shout for release.<br>
<br>
"@@.computer;Subject will sit still and comply.@@" The voice advises.<br>
<br>
You ignore it, shouting back swear-words... and then getting cut-off by an agonising shock coming from inside, the dildo acting like a stun-gun as you spasm for a moment and then go limp, sinking all the way back down as you pant.<br>
<br>
"@@.computer;Subject will sit still and comply.@@" The voice repeats.<br>
<br>
[<<moveTo "event_porn_torture_humil_4_rape_2" "Continue..." 180 "<<set $scene.accept=true>>">>]
<</if>>
</div>/*#
#desc: refuse to cuff self
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.resist_count += 1>>
<<set $scene.rape_count += 1>>
<<set $scene.punish_count += 1>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyStress 5>>
<<changeMakeupMessed 25>>
<<applyExperience 'bondage' 10 'normal' $EXPOSED>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
You toss the cuffs away and are about to start navigating how to stand back up off the massive dildo in your ass... when that self-same dildo delivers an almost paralysing painful electric shock.<br>
<br>
You cry out, your body jerking in surprise, barely hearing the door behind you open as two masked figures rush forward. Hands on your shoulders hold you down as the dildo roots you in place and your arms are pulled behind your back, cuffed, then attached to the chair to keep you from rising before your legs are spread apart and your ankles cuffed to the legs.<br>
<br>
You are fully exposed and staring down a camera built into the wall in front of you. Not just naked and exposed... but with the base of the dildo peeking out as a reminder just what you're sitting on.<br>
<br>
"@@.computer;Subject is advised to comply with future instructions. Proceeding with interrogation.@@"<br>
<br>
The masked figures retreat and the door slams closed once more.<br>
<br>
[<<moveTo "event_porn_torture_humil_4_rape_2" "Continue..." 180 "<<set $scene.accept=true>>">>]
</div>/*#
#desc: asked your job
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
The room is silent save for your deep breaths as you sit and feel every centimetre of the thick dildo filling your ass.<br>
<br>
"@@.computer;What is your primary profession?@@" The voice asks.
<br><br>
[<<moveTo "event_porn_torture_humil_6" "Porn star." 180 "<<set $scene.action_job='porn'>>">>]<br>
[<<moveTo "event_porn_torture_humil_6" "Prostitute." 180 "<<set $scene.action_job='whore'>>">>]<br>
[<<moveTo "event_porn_torture_humil_6" "Secretary." 180 "<<set $scene.action_job='secretary'>>">>]<br>
[<<moveTo "event_porn_torture_humil_6" "Refuse to answer." 60 "<<set $scene.action_job='silent'>>">>]
</div>/*#
#desc: tell your job
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_job>>
<<case 'silent'>>
<<set $scene.silent_count += 1>>
<<set $scene.punish_count += 1>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyStress 5>>
<<changeMakeupMessed 25>>
<<case 'porn' 'prostitute'>>
<<set $scene.depraved_count += 1>>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_job>>
<<case 'porn'>>
"@@.pc;I am a porn star.@@" You reply and then gasp as the dildo in your ass vibrates, the size and power such that your entire body shudders.<br>
<br>
"@@.computer;A whore for the camera.@@" The voice announces. "@@.computer;Tell me, whore, why do you so debase yourself?@@"
<<case 'whore'>>
"@@.pc;I am a whore.@@" You reply and then gasp as the dildo in your ass vibrates, the size and power such that your entire body shudders.<br>
<br>
"@@.computer;Quite so. Not just any whore, but a whore for the camera.@@"
<<case 'secretary'>>
"@@.pc;I am a Secretary.@@" You reply, deciding to omit your company name. You gasp as the dildo in your ass vibrates, the size and power such that your entire body shudders.<br>
<br>
"@@.computer;A corporate whore, then... but also, a whore for the camera.@@"
<<case 'silent'>>
You stare silently at the camera... until the dildo in your ass lights up with a painful electric shock. You jerk reflexively, the motion straining your shoulders as you come up to the end of the chain connecting your cuffs to the chair.<br>
<br>
"@@.computer;Subject will answer the question posed to it. What is your primary profession?@@"<br>
<br>
[<<moveTo "event_porn_torture_humil_6" "Porn star." 180 "<<set $scene.action_job='porn'>>">>]<br>
[<<moveTo "event_porn_torture_humil_6" "Prostitute." 180 "<<set $scene.action_job='whore'>>">>]<br>
[<<moveTo "event_porn_torture_humil_6" "Secretary." 180 "<<set $scene.action_job='secretary'>>">>]
<<default>>
ERROR: unexpected scene.action_job <<=$scene.action_job>>
<</switch>>
<<if $scene.action_job != "silent">>
The voice announces. "@@.computer;Tell me, whore, why do you so debase yourself?@@"<br>
<br>
The wall in front of you turns into a screen, reflecting back on you your current condition.<br>
<br>
"@@.computer;Look at this whore. Naked, exposed, how do you justify yourself? How did you come to this?@@" Punctuating the point, the cover images of half a dozen of your porn shoots appear surrounding your reflected image.<br>
<br>
[<<moveTo "event_porn_torture_humil_7" "You're proud of your work!" 180 "<<set $scene.action_porn='proud'>>">>]<br>
[<<moveTo "event_porn_torture_humil_7" "You just needed the money..." 180 "<<set $scene.action_porn='money'>>">>]<br>
[<<moveTo "event_porn_torture_humil_7" "That's not you!" 180 "<<set $scene.action_porn='fake'>>">>]<br>
[<<moveTo "event_porn_torture_humil_7" "You couldn't resist..." 180 "<<set $scene.action_porn='slut'>>">>]<br>
[<<moveTo "event_porn_torture_humil_7" "Break down." 60 "<<set $scene.action_porn='break'>>">>]<br>
[<<moveTo "event_porn_torture_humil_7" "Refuse to answer." 60 "<<set $scene.action_porn='silent'>>">>]
<</if>>
</div>/*#
#desc: why you work
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_porn>>
<<case 'silent'>>
<<set $scene.silent_count += 1>>
<<set $scene.punish_count += 1>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyStress 5>>
<<changeMakeupMessed 25>>
<<case 'proud' 'slut'>>
<<set $scene.depraved_count += 1>>
<<applyExperience 'humiliation' 16 'normal' $EXPOSED>>
<<case 'fake'>>
<<set $scene.resist_count += 1>>
<<case 'break'>>
<<set $scene.break_count += 1>>
<<applyExperience 'humiliation' 20 'normal' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_porn>>
<<case 'proud'>>
You reply that you are proud of your work!... and the dildo in your ass buzzes some more.<br>
<br>
"@@.computer;Proud? Of course you are, whore. But how could anyone have pride in this? Look at yourself... naked, writhing on a cock...@@"
<<case 'money'>>
You reply that you just needed the money... and the dildo in your ass buzzes some more.<br>
<br>
"@@.computer;Of course you did... well here's some money, whore.@@"
<<case 'fake'>>
You reply that the images are deep-fakes, that you would never appear in something like <<if $player.flags.porn.genre.cyoponyventure>><<=setup.getPornTitle("cyoponyventure")>><<else>><<=setup.getPornTitle("cyofarmventure")>><</if>>.<br>
<br>
"@@.computer;Liar! This is only part of your catalogue, the catalogue of a porn-star WHORE! Well here's some money, whore.@@"
<<case 'slut'>>
You reply that you couldn't resist, that you're a slut at heart, and the money was just a bonus.<br>
<br>
"@@.computer;Worse than a whore? How depraved. Well show me, slut, bounce on that cock like the horny <<if $fetish.slurs>>bitch<<else>>slut<</if>> you are!@@"
<<case 'break'>>
You break down and start sobbing, insisting that you don't know how your life fell to this point.<br>
<br>
"@@.computer;Pathetic. You feel to this point because you are a whore. A real <<switch $player.identify_as>><<case 'female'>>woman<<case 'male'>>man<<default>>human<</switch>> would have found another way, would never have found themselves in a position like this... but you aren't that, you're just a filthy, cheap whore. Well go on, whore, show me your true self.@@"
<<case 'silent'>>
You stare silently at your projected reflection... until the dildo in your ass lights up with a painful electric shock. Your legs shoot out, immediately coming up to the limits of your ankle cuffs as the chair rocks... causing the dildo in your ass to shift... and your cry of pain to turn into a moan.<br>
<br>
"@@.computer;Subject will answer the question posed to it. How does it justify its depraved work?@@"<br>
<br>
[<<moveTo "event_porn_torture_humil_7" "You're proud of your work!" 180 "<<set $scene.action_porn='proud'>>">>]<br>
[<<moveTo "event_porn_torture_humil_7" "You just needed the money..." 180 "<<set $scene.action_porn='money'>>">>]<br>
[<<moveTo "event_porn_torture_humil_7" "You couldn't resist..." 180 "<<set $scene.action_porn='slut'>>">>]<br>
[<<moveTo "event_porn_torture_humil_7" "Break down." 60 "<<set $scene.action_porn='break'>>">>]
<<default>>
ERROR: unexpected scene.action_porn <<=$scene.action_porn>>
<</switch>>
<<if $scene.action_porn != "silent">>
<br><br>
<<if $scene.action_porn != "slut">>
The trap-door above your head swings open once again and a handful of credits falls out. "@@.computer;There you go, whore. Bounce for me. Bounce on that cock, show me what a cheap slut you are...@@"<br>
<br>
<</if>>
[<<moveTo "event_porn_torture_humil_8" "Bounce enthusiastically." 180 "<<set $scene.action_bounce='eager'>>">>]<br>
[<<moveTo "event_porn_torture_humil_8" "Bounce reluctantly." 180 "<<set $scene.action_bounce='reluctant'>>">>]<br>
[<<moveTo "event_porn_torture_humil_8" "Refuse." 180 "<<set $scene.action_bounce='refuse'>>">>]<br>
<</if>>
</div>/*#
#desc: bounce on dildo
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_bounce>>
<<case 'eager'>>
<<set $scene.depraved_count += 1>>
<<applyExperience 'bimbofication' 15 'normal' $EXPOSED>>
<<case 'refuse'>>
<<set $scene.resist_count += 1>>
<<set $scene.punish_count += 1>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyStress 5>>
<<changeMakeupMessed 25>>
<</switch>>
<<applyExperience 'humiliation' 17 'normal' $EXPOSED>>
<<changeHorny 40>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_bounce>>
<<case 'eager'>>
Though your restraints limit you to a few centimetres, you comply, rising up as far as you can and then letting yourself fall back down, fucking yourself with the massive dildo.<br>
<br>
"@@.computer;Pathetic whore, to debase yourself for so little.@@" The voice taunts as the dildo seems to reward your efforts by vibrating once again.<br>
<br>
Your calves are starting to burn from the effort of rising up each time, even as you want more, moaning with each thrust and lingering at the bottom to grind desperately.
<<case 'reluctant'>>
Reluctantly, but fearing <<if $scene.punish_count>>additional punishment<<else>>the consequences of disobedience<</if>> you force yourself the few centimetres high that your bonds will allow, and then slump back down, landing hard on the seat as the dildo slams back into you.<br>
<br>
"@@.computer;That's right, whore, fuck yourself, show us what a desperate anal slut you.@@" The voice taunts as the dildo seems to reward your efforts by vibrating once again.<br>
<br>
You groan in a mix of lust and humiliation, continuing to slowly force yourself upwards and then drop back down, the ass-fucking more torture than pleasure, even as the vibrations cause you to throb with want.
<<case 'refuse'>>
You sit still, the dildo may be fully inside of you, but you are not going to debase yourself further with some torrid display of desperately fucking it... especially when your bonds would limit you to but a few centimetres of stroke-length.<br>
<br>
"@@.computer;Disobedient.@@" The voice declares as the dildo shocks you severely. You cry out and swear in pain. "@@.computer;Foul-mouthed whore.@@" The voice continues... as the dildo retracts on its own, pulling back half a dozen centimetres or so and then slaming back up into you. The combination of girth and force causes you to rise up slightly before your weight drives you back down.<br>
<br>
"@@.computer;Dance, whore. Dance for your audience.@@" The voice commands as the dildo pulls back and thrusts again. Reflexively you try to pull away... only for a pair of straps to shoot up and over your thighs, holding you tightly to the seat, and spreading your legs even wider as the dildo slams into you three more times before again seating itself all the way deep in your ass.<br>
<br>
You groan in desperation, panting with need.
<<default>>
ERROR: unexpected scene.action_bounce <<=$scene.action_bounce>>
<</switch>>
<br><br>
<<if $scene.action_bounce != "refuse">>
You're spending more and more time just grinding against the dildo when a pair of straps shoot up and over your thighs. Pulled taut, they spread you even further, while also holding you down, pinning you to the dildo as its vibrations draw out for a few more moments and then it falls still, leaving you panting and desperation.<br>
<br>
<</if>>
"@@.computer;Look at yourself. Whore.@@" The voice commands as the display in front of you splits, simultaneously showing a view looking up through the clear seat at the thick dildo gaping your ass, as well as multiple angles of your <<if $scene.punish_count>>tear-streaked <</if>>face.<br>
<br>
"@@.computer;Look at yourself. How could you fall to this level...@@" as the voice continues to taunt the image in front of your shifts, showing a more idyllic picture, you and a blurred girlfriend frolicking in a park, buying a house, starting a family, the saccharine picture of "normal" happiness playing out like something out of a "true meaning of the holiday" movie.<br>
<br>
"@@.computer;How can you not despair at what you have lost? So much given up to be a whore...@@"<br>
<br>
[<<moveTo "event_porn_torture_humil_9" "A normal life? Ugh." 180 "<<set $scene.action_normal='reject'>>">>]<br>
[<<moveTo "event_porn_torture_humil_9" "You do want that..." 180 "<<set $scene.action_normal='want'>>">>]<br>
[<<moveTo "event_porn_torture_humil_9" "That option was taken from you..." 180 "<<set $scene.action_normal='taken'>>">>]<br>
[<<moveTo "event_porn_torture_humil_9" "Sure... but you'll never stop being depraved." 180 "<<set $scene.action_normal='secret'>>">>]<br>
[<<moveTo "event_porn_torture_humil_9" "Break down." 60 "<<set $scene.action_normal='break'>>">>]<br>
[<<moveTo "event_porn_torture_humil_9" "Refuse to answer." 60 "<<set $scene.action_normal='silent'>>">>]
</div>/*#
#desc: respond to normal life
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_normal>>
<<case 'silent'>>
<<set $scene.silent_count += 1>>
<<case 'want'>>
<<set $scene.depraved_count += 1>>
<<set $scene.punish_count += 1>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyStress 5>>
<<changeMakeupMessed 25>>
<<applyExperience 'humiliation' 18 'normal' $EXPOSED>>
<<case 'secret'>>
<<set $scene.depraved_count += 1>>
<<applyExperience 'humiliation' 18 'normal' $EXPOSED>>
<<case 'reject' 'taken'>>
<<set $scene.resist_count += 1>>
<<set $scene.punish_count += 1>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyStress 5>>
<<changeMakeupMessed 25>>
<<applyExperience 'humiliation' 17 'normal' $EXPOSED>>
<<case 'break'>>
<<set $scene.break_count += 1>>
<<set $scene.punish_count += 1>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyStress 5>>
<<changeMakeupMessed 25>>
<</switch>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_normal>>
<<case 'want'>>
You whimper that you do want a normal life, that you don't know what went wrong. Your words are cut off by a punishing shock that has you jolt in place.<br>
<br>
"@@.computer;Whore. You don't deserve those things, all you deserve is to be used and abused, to be an object of pleasure... and a warning as to the consequences of straying...@@" even as the voice insults you, the dildo begins to vibrate and you moan with want.
<<case 'reject'>>
You shout out that you don't want a normal life... emphasising your point by grinding against the cock in your ass and moaning theatrically.<br>
<br>
"@@.computer;Debauched whore.@@" The voice responds... only to pair the insult with more rewarding vibrations.
<<case 'taken'>>
You complain that your chance at a normal life was taken from you... only to be cut off by a punishing shock that has you jolt in place.<br>
<br>
"@@.computer;Whore. Nothing was taken from you, you gave it up, sold yourself off for a pittance, a greedy slut obsessed with its own pleasure.@@" Even as the voice insults you, the dildo begins to vibrate and you moan with want.
<<case 'secret'>>
You grin and reply that you would love the trappings of a normal life... all the better to be a secret freak, your house with the picket fence outfitted with a dungeon for you to be gang-<<if $fetish.get_raped>>raped<<else>>fucked<</if>> and more.<br>
<br>
"@@.computer;Whore.@@" The voice commands... even as it pairs the insult with vibrations from the dildo, "@@.computer;You corrupt all that you touch, a depraved demon clawing at society.@@"
<<case 'break'>>
You cry in despair at what you have lost, begging for forgiveness and a second chance... only to be cut off by a cruel shock that has you thrashing against your bonds.<br>
<br>
"@@.computer;Whore.@@" The voice commands... even as it pairs the insult with vibrations from the dildo, "@@.computer;You do not deserve forgiveness, only derision. You are a filthy slut, your chance at happiness long ago traded away for cheap pleasures and a life of ruin.@@"
<<case 'silent'>>
Your silence is <<if $scene.action_job == "silent" && $scene.action_porn == "silent">>yet again <<elseif $scene.action_job == "silent" || $scene.action_porn == "silent">>again <</if>>punished as the dildo shocks you. The combination of thigh and ankle restrains keeping your lower body still your torso thrashes around, yanking painfully against your cuffs.<br>
<br>
"@@.computer;Subject will answer the question posed to it. How does it respond to its abandoned chance at normalcy?@@"<br>
<br>
[<<moveTo "event_porn_torture_humil_9" "A normal life? Ugh." 180 "<<set $scene.action_normal='reject'>>">>]<br>
[<<moveTo "event_porn_torture_humil_9" "You do want that..." 180 "<<set $scene.action_normal='want'>>">>]<br>
[<<moveTo "event_porn_torture_humil_9" "That option was taken from you..." 180 "<<set $scene.action_normal='taken'>>">>]<br>
[<<moveTo "event_porn_torture_humil_9" "Sure... but you'll never stop being depraved." 180 "<<set $scene.action_normal='secret'>>">>]<br>
[<<moveTo "event_porn_torture_humil_9" "Break down." 60 "<<set $scene.action_normal='break'>>">>]
<<default>>
ERROR: unexpected scene.action_normal <<=$scene.action_normal>>
<</switch>>
<br><br>
<<if $scene.action_normal != "silent">>
Your chest heaves as you strain passionately against your bonds, eager for more stimulation.<br>
<br>
"@@.computer;Look at yourself.@@" The voice commands as the display shifts once again, cameras zooming in to chop your body into pieces, a collage of the massive dildo in your <<if setup.checkItemTypeWorn("hollow_plug")>>plug-spread <</if>>ass,
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if setup.isCage()>>
the chastity cage imprisoning your <<if $player.body.penissize[0] <= 1 && $fetish.sph && !['spe', 'none'].includes($player.body_ref.shrink_style)>>pathetically small <<elseif $player.body.penissize[0] == 6>>massive <<elseif $player.body.penissize[0] >= 4>>large <</if>><<getWordMyPenis false>>... and behind that your cunt<<if $fetish.cum>>, both leaking with excitement<</if>>,
<<else>>
the chastity belt imprisoning your cock and cunt<<if $fetish.cum>>... and leaking with excitement<</if>>,
<</if>>
<<elseif $player.body_ref.penis>>
the chastity <<if setup.isCage()>>cage<<else>>belt<</if>> and its <<if $player.body.penissize[0] <= 1 && $fetish.sph && !['spe', 'none'].includes($player.body_ref.shrink_style)>>pathetically small <<elseif $player.body.penissize[0] == 6>>massive, <<elseif $player.body.penissize[0] >= 4>>large, <</if>>straining<<if $fetish.cum>>, leaking<</if>> prisoner,
<<elseif $player.body_ref.vagina>>
the chastity belt and<<if $fetish.cum>>leaking<</if>> locked-away valley of pleasure,
<<else>>
ERROR: unexpected genitals
<</if>>
<<else>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
your
<<switch $player.body.penissize[0]>>
<<case 0 1>>
hard, <<if $fetish.sph && $player.body_ref.shrink_style != 'none'>><<if $player.body_ref.shrink_style == 'spe'>>pathetically<<else>>adorably<</if>> small<</if>>
<<case 2 3>>
hard
<<case 4 5>>
large, erect
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<getWordMyPenis>> and quivering quim,
<<elseif $player.body_ref.penis>>
your <<switch $player.body.penissize[0]>>
<<case 0 1>>
hard, <<if $fetish.sph && $player.body_ref.shrink_style != 'none'>><<if $player.body_ref.shrink_style == 'spe'>>pathetically<<else>>adorably<</if>> small<</if>>
<<case 2 3>>
hard
<<case 4 5>>
large, erect
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<getWordMyPenis>>,
<<elseif $player.body_ref.vagina>>
your quivering quim,
<<else>>
ERROR: unexpected genitals
<</if>>
<</if>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
your massive, heaving breasts,
<<case 'large'>>
your large, heaving breasts,
<<case 'medium'>>
your heaving breasts,
<<case 'small'>>
your small breasts,
<<case 'none'>>
your flat chest,
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
and your
<<if $player.makeup.template>>
<<if $scene.punish_count>>tear-streaked, <</if>>ruined makeup.
<<elseif $scene.punish_count>>
tear-streaked cheeks.
<<else>>
panting face.
<</if>>
<br><br>
"@@.computer;Look at this whore, its gaping ass<<if setup.checkItemTypeWorn("cage")>>, the parody of chastity only emphasising how much of a slut it is, <</if>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
its comically oversized tits,
<<case 'large'>>
its lewdly large breasts,
<<case 'medium'>>
its brazen tits,
<<case 'small'>>
its pathetically small tits,
<<case 'none'>>
its pathetically flat chest,
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
its <<if $player.makeup.template>>ruined, <</if>>whorish look of desperation....@@" the voice trails off, silently taunting you for a rebuttal.<br>
<br>
[<<moveTo "event_porn_torture_humil_10" "You love your body." 180 "<<set $scene.action_body='love'>>">>]<br>
[<<moveTo "event_porn_torture_humil_10" "Flesh is irrelevant, you'll swap it on a whim." 180 "<<set $scene.action_body='variable'>>">>]<br>
[<<moveTo "event_porn_torture_humil_10" "You are ashamed of what you have become." 180 "<<set $scene.action_body='shame'>>">>]<br>
[<<moveTo "event_porn_torture_humil_10" "Break down." 60 "<<set $scene.action_body='break'>>">>]<br>
[<<moveTo "event_porn_torture_humil_10" "Refuse to answer." 60 "<<set $scene.action_body='silent'>>">>]
<</if>>
</div>/*#
#desc: respond to what you have become
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_body>>
<<case 'silent'>>
<<set $scene.silent_count += 1>>
<<set $scene.punish_count += 1>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyStress 5>>
<<changeMakeupMessed 25>>
<<case 'love' 'variable'>>
<<set $scene.depraved_count += 1>>
<<applyExperience 'humiliation' 19 'normal' $EXPOSED>>
<<case 'shame'>>
<<applyExperience 'humiliation' 19 'normal' $EXPOSED>>
<<case 'break'>>
<<set $scene.break_count += 1>>
<<applyExperience 'humiliation' 20 'normal' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_body>>
<<case 'love'>>
You respond that you love what you've become, that you wear the badge of "whore" proudly... and all the accoutrements that goes with it.<br>
<br>
"@@.computer;Disgusting,@@" the voice declares... while simultaneously "rewarding" you with stimulation. "@@.computer;You have lost all sense of shame, turning away from all that is good and pure in favour of endless perversion.@@"
<<case 'shame'>>
You try to turn away in embarrassment... but there is no hiding from the camera as you confess to how shameful you look.<br>
<br>
"@@.computer;Pathetic, you shy away from what you have become... what you have made of yourself...@@" the voice declares... while simultaneously "rewarding" you with stimulation. "@@.computer;You are the most worthless of whores, one who is unable to even accept the consequences of its own actions.@@"
<<case 'variable'>>
You laugh as you declare that flesh and the rest is transitory, another outfit for you to wear or discard on a whim.<br>
<br>
"@@.computer;Unbridled whore.@@" the voice declares... while simultaneously "rewarding" you with stimulation. "@@.computer;You have transcended mere humiliation to make every act one of perversion.@@"
<<case 'break'>>
You break down and start sobbing, admitting that you hate your body, that you don't want to be like this.<br>
<br>
"@@.computer;Pathetic,@@" the voice declares... while simultaneously "rewarding" you with stimulation. "@@.computer;you profess at embarrassment, and yet do nothing to revert this disgusting state, instead wallowing in your perversion.@@"
<<case 'silent'>>
You remain silent <<if $scene.action_job == "silent" && $scene.action_porn == "silent">>yet again <<elseif $scene.action_job == "silent" || $scene.action_porn == "silent">>again <</if>>punished as the dildo shocks you. The combination of thigh and ankle restrains keeping your lower body still your torso thrashes around, yanking painfully against your cuffs.<br>
<br>
"@@.computer;Subject will answer the question posed to it. What does it think of its body?@@"<br>
<br>
[<<moveTo "event_porn_torture_humil_10" "You love your body." 180 "<<set $scene.action_body='love'>>">>]<br>
[<<moveTo "event_porn_torture_humil_10" "Flesh is irrelevant, you'll swap it on a whim." 180 "<<set $scene.action_body='variable'>>">>]<br>
[<<moveTo "event_porn_torture_humil_10" "You are ashamed of what you have become." 180 "<<set $scene.action_body='shame'>>">>]<br>
[<<moveTo "event_porn_torture_humil_10" "Break down." 60 "<<set $scene.action_body='break'>>">>]
<<default>>
ERROR: unexpected scene.action_body <<=$scene.action_body>>
<</switch>>
<br><br>
The collage in front of you expands, the multi-angle live feed of your current state interspersed with highlights from your porn career as you fuck and are fucked, your body exposed and recorded for a world-wide audience... the worst of their comments flashing across the screen "whore," "slut," "I can't believe anyone could get off like that," "that face is useless without a cock in its throat," the insults and depravities seem to stream endlessly as the voice continues its interrogation.<br>
<br>
"@@.computer;Last chance, whore. You've seen what you are. A depraved slut. What you've become, a perverted whore. Now, tell us what you wish to be...@@" The vibrations in your ass increase and the dildo begins to thrust, matching the timing with clips on-screen and helping you relive various scenes from your past.<br>
<br>
You pant, ever-so-close to a massive orgasm, only to twitch and jerk occasionally as a punitive shock kicks you backwards whenever you get close to diving over the edge of that cliff...<br>
<br>
[<<moveTo "event_porn_torture_humil_11" "Reject what you are." 180 "<<set $scene.action_future='reject'>>">>]<br>
[<<moveTo "event_porn_torture_humil_11" "Stay as you are." 180 "<<set $scene.action_future='stay'>>">>]<br>
[<<moveTo "event_porn_torture_humil_11" "Vow to become more depraved." 180 "<<set $scene.action_future='embrace'>>">>]<br>
[<<moveTo "event_porn_torture_humil_11" "Break down." 60 "<<set $scene.action_future='break'>>">>]<br>
[<<moveTo "event_porn_torture_humil_11" "Refuse to answer." 60 "<<set $scene.action_future='silent'>>">>]
</div>/*#
#desc: respond to future wants
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_future>>
<<case 'silent'>>
<<set $scene.silent_count += 1>>
<<case 'stay' 'embrace'>>
<<set $scene.depraved_count += 1>>
<<applyExperience 'humiliation' 19 'normal' $EXPOSED>>
<<case 'break'>>
<<set $scene.break_count += 1>>
<<applyExperience 'humiliation' 20 'normal' $EXPOSED>>
<</switch>>
<<set $scene.punish_count += 1>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyStress 5>>
<<changeMakeupMessed 25>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_future>>
<<case 'reject'>>
You reject what you see before you, insisting that you don't want to be like that any more, that you're ready to reject whorishness and become a new, pure woman...<br>
<br>
Your response is met not with a shock or stimulation... but of a complete halt to both as the voice sneers. "@@.computer;It's too late for that, whore. This is what you are, the person on screen is all you'll ever be. Look at how aroused you are, only a natural pure whore could possibly be turned on by this treatment. No more hiding. In your career in porn you have already shown the world who you are on film... but maybe not everyone knows...@@" a phone contact-list appears, scrolling too fast to read before a "forwarding video" message appears... and you cum, not from the dildo in your ass... but from the pure humiliation of everything around you.
<<case 'stay'>>
You reply that you love who you are, and you would change nothing.<br>
<br>
Your response is met not with a shock or stimulation... but of a complete halt to both as the voice sneers. "@@.computer;Then you are lost, a whore forever. The person on-screen is not just what you are, but all you will ever be. No more hiding. In your career in porn you have already shown the world who you are on film... but maybe not everyone knows...@@" a phone contact-list appears, scrolling too fast to read before a "forwarding video" message appears... and you cum, not from the dildo in your ass... but from the pure humiliation of everything around you.
<<case 'embrace'>>
You reply that the only thing that you'd change is to become more! More of a brazen slut, an even more debauched degenerate. More! More! MORE!<br>
<br>
Your response is met not with a shock or stimulation... but of a complete halt to both as the voice sneers. "@@.computer;Then you are lost, a whore forever, cursed to an endless spiral of depravity, never to be satisfied, never to be anything but worse than you were the day before. No more hiding. In your career in porn you have already shown the world who you are on film... but maybe not everyone knows...@@"
<<case 'break'>>
You cry in desperation and despair, admitting that you have no future, not anymore.<br>
<br>
Your response is met not with a shock or stimulation... but of a complete halt to both as the voice sneers at you without pity. "@@.computer;You speak truth. For you are long lost, a whore forever, never to be anything better than a wanton slut. Your current arousal proves it definitively, you can't even stop yourself from getting off, even in these conditions. No more hiding. In your career in porn you have already shown the world who you are on film... but maybe not everyone knows...@@"
<<case 'silent'>>
You remain silent... and shocked for your reticence.<br>
<br>
"@@.computer;Subject will answer the question posed to it. What do you wish to be?@@"<br>
<br>
[<<moveTo "event_porn_torture_humil_11" "Reject what you are." 180 "<<set $scene.action_future='reject'>>">>]<br>
[<<moveTo "event_porn_torture_humil_11" "Stay as you are." 180 "<<set $scene.action_future='stay'>>">>]<br>
[<<moveTo "event_porn_torture_humil_11" "Vow to become more depraved." 180 "<<set $scene.action_future='embrace'>>">>]<br>
[<<moveTo "event_porn_torture_humil_11" "Break down." 60 "<<set $scene.action_future='break'>>">>]
<<default>>
ERROR: unexpected scene.action_body <<=$scene.action_body>>
<</switch>>
<<if $scene.action_future != 'silent'>>
<br><br>
A phone contact-list appears, scrolling too fast to read a "forwarding video" message appears... and you cum, not from the dildo in your ass... but from the pure humiliation of everything around you.<br>
<br>
[<<moveTo "event_porn_torture_humil_12" "Continue..." 180>>]
<</if>>
</div>/*#
#desc: orgasm
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyExperience 'humiliation' 20 'unbelievable' $EXPOSED>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
You do not so much strain against your restraints, but test them, enjoy the safety of their restriction as you cum, hips bucking as your ass milks the motionless dildo impaling you,
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if setup.isCage()>>
inside your cage your <<if $player.body.penissize[0] <= 1 && $fetish.sph && !['spe', 'none'].includes($player.body_ref.shrink_style)>>pathetically small <<elseif $player.body.penissize[0] == 6>>massive <<elseif $player.body.penissize[0] >= 4>>large <</if>><<getWordMyPenis false>> <<if $fetish.cum>>spurts and leaks<<else>>cums hands-free<</if>>... and behind that your cunt clenches down on nothing and <<if $fetish.cum>>squirts in excitement<<else>>as you multi-climax<</if>>.
<<else>>
inside your cage your <<if $player.body.penissize[0] <= 1 && $fetish.sph && !['spe', 'none'].includes($player.body_ref.shrink_style)>>pathetically small <<elseif $player.body.penissize[0] == 6>>massive <<elseif $player.body.penissize[0] >= 4>>large <</if>><<getWordMyPenis false>> <<if $fetish.cum>>spurts and leaks<<else>>cums hands-free<</if>>... and behind that your cunt clenches <<if setup.getChastityLevel() == 5>>down on its locked-in occupant<<else>>down on nothing<</if>> as you multi-climax<<if $fetish.cum>> and squirt<</if>>.
<</if>>
<<elseif $player.body_ref.penis>>
inside your cage your <<if $player.body.penissize[0] <= 1 && $fetish.sph && !['spe', 'none'].includes($player.body_ref.shrink_style)>>pathetically small <<elseif $player.body.penissize[0] == 6>>massive <<elseif $player.body.penissize[0] >= 4>>large <</if>><<getWordMyPenis false>> <<if $fetish.cum>>spurts and leaks<<else>>cums hands-free<</if>>.
<<elseif $player.body_ref.vagina>>
beneath the chastity shield your cunt clenches <<if setup.getChastityLevel() == 5>>down on its locked-in occupant<<else>>down on nothing<</if>> as you multi-climax<<if $fetish.cum>> and squirt<</if>>.
<<else>>
ERROR: unexpected genitals
<</if>>
<<else>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
your
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<if $fetish.sph && $player.body_ref.shrink_style != 'none'>><<if $player.body_ref.shrink_style == 'spe'>>pathetically<<else>>adorably<</if>> tiny<<else>>small<</if>> cock
<<case 2 3>>
cock
<<case 4 5>>
large cock
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<if $fetish.cum>> spurting with hands-free gusto<<else>>trembling with hands-free orgasm<</if>> as your empty cunt clenching in excitement<<if $fetish.cum>> and squirts with joy<</if>>.
<<elseif $player.body_ref.penis>>
your
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<if $fetish.sph && $player.body_ref.shrink_style != 'none'>><<if $player.body_ref.shrink_style == 'spe'>>pathetically<<else>>adorably<</if>> tiny<<else>>small<</if>> cock
<<case 2 3>>
cock
<<case 4 5>>
large cock
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<if $fetish.cum>> spurting with hands-free gusto<<else>>trembling with hands-free orgasm<</if>>.
<<elseif $player.body_ref.vagina>>
your empty cunt clenching in excitement<<if $fetish.cum>> and squirting with joy<</if>>.
<<else>>
ERROR: unexpected genitals
<</if>>
<</if>>
<br><br>
You tremble and pant, leaning forward as far as your restraints permit and then force your head up to look at the screen, both humiliated at your wanton display... and also relieved as you finally focus in enough to note that all of the names scrolling past in the contacts list are made-up... you've certainly put on a show for your audience, but your porn career remains as it was, rather than leaking out uncontrolled.<br>
<br>
[<<moveTo "event_porn_torture_humil_13" "You hear the door behind you open." 180>>]
</div>/*#
#desc: finish and paid
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'beforePorn'>>
<<if $scene.resist_count >= 6 || $scene.resist_count >= 4 && !$scene.rape || $scene.depraved_count >= 6 || $scene.break_count >= 4>>
<<set $scene.pay = 300>>
<<else>>
<<set $scene.pay = 100>>
<</if>>
<<set $scene.pay += $scene.resist_count * 20 + $scene.break_count * 20 + $scene.break_count * 20 + $scene.punish_count * 10>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
"@@.npc_cook;Aye, that were quite the performance, <<callPlayer "npc_cook">>.@@" <<=setup.getNpcName("npc_cook","first")>> states in greeting as <<he npc_cook>> unlocks your restraints and gives you a hand back to your feet.<br>
<br>
<<if $scene.rape>>
"@@.npc_cook;So, first off... congratulations again on saying you were ready for anything, <<switch $scene.rape_count>><<case 0>>even if you didn't do anything to push the scene to that level.<<case 1>>you really had the crew put in some work there, but it only made you MORE the star of the show!<<case 2>>and then the way you leaned into it, fighting back until you were forced into position? Well... that's definitely going to make for some good teaser footage and new fans!<<default>>ERROR: unexpected scene.rape_count <<=$scene.rape_count>><</switch>>@@"<br>
<br>
<</if>>
<<=setup.getNpcName("npc_cook","first")>> grins.
<<if $scene.resist_count >= 6 || $scene.resist_count >= 4 && !$scene.rape>>
"@@.npc_cook;Yeh really put on a show of resistance, I hope it wasn't too hard on yeh... but there's definitely a sort that's going to enjoy that sort of hard-core forced content!@@"
<<elseif $scene.depraved_count >= 6>>
"@@.npc_cook;Yeh really showed off a picture of pure depravity, some of your fans are definitely going to love that "look inside" showing off just what a maniac yeh are!@@"
<<elseif $scene.break_count >= 4>>
"@@.npc_cook;Yeh may have strained credulity a bit, I'll be honest... but I won't deny that seeing you break-down on camera wasn't some intense footage!@@"
<<elseif $scene.resist_count == $scene.depraved_count && $scene.resist_count >= 2>>
"@@.npc_cook;The way you balanced depravity and resistance... I guess some might complain of tonal whiplash, but I think it really shows a manic energy that's... WOW.@@"
<<elseif $scene.resist_count == 0 && $scene.depraved_count == 0 && $scene.break_count == 0>>
"@@.npc_cook;Yeh did a decent job... but the whole performance felt a bit reserved, to be honest, not bag but... I think yeh could really push things harder.@@"
<<elseif $scene.resist_count > 0 && $scene.depraved_count > 0 && $scene.break_count > 0>>
"@@.npc_cook;Yeh did a good job... but you seemed a bit over all over the place, rather than committing to one thing and going full-on.@@"
<<else>>
"@@.npc_cook;Yeh did a good job... but not really knock-my-socks-off territory.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_cook","first")>> starts counting out <<=$scene.pay>> credits.
<<if $scene.silent == 5>>
"@@.npc_cook;One final note... I guess maybe you have a thing for the cinematic technique of silence... an interesting tactic, but it got a bit repetitive and we may end up cutting it down a bit.@@"<br>
<br>
<</if>>
You thank <<=setup.getNpcName("npc_cook","first")>> and <<he npc_cook>> heads off back to the crew.<br>
<br>
[<<moveTo 'room_citymap' 'Dress and head out.' 300>>]
</div>/*#
#desc: suggested large cock porn
#status: RELEASED 0.9.4.0
#ignore_spell: needin',decievin'
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_cook","first")>> looks at you, and then down at the bulge in your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>>.<br>
<br>
"@@.npc_cook;Aye, <<callPlayer "npc_cook">>! Do my eyes be decievin' me... or do yeh have a right massive tallywhacker of yer own? That gives me an idea for a shoot only... well... we'll be needin' some other lass who is as big and skilled a slut as yourself. One whose own <<if $fetish.sissy>>sissy <</if>>cock is nice and locked...@@"<br>
<br>
<<printThought "Hmm... what about <<=setup.getNpcName('npc_sexdoll','first')>>? She's certainly developed into a big enough slut, and I doubt the company ever lets her out of chastity...">><br>
<br>
You reply that you'll think about the offer and get back to <<=setup.getNpcName("npc_cook","first")>>.<br>
<br>
"@@.npc_cook;Aye! And remember, we need a willing slut and yeh to still be equipped to plow her wide!@@"<br>
<br>
<<printPornShootOptions>>
</div>/*#
#desc: recruit sexdoll to porn
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
As you're making your rounds you track down <<=setup.getNpcName("npc_sexdoll","first")>> and mention <<=ps(setup.getNpcName("npc_cook","first"))>> idea to shoot some porn to <<=setup.getNpcName("npc_sexdoll","first")>>.<br>
<br>
"@@.npc_sexdoll;Oh, wow, <<him npc_cook>>? I don't get much chance to get in time with the service workers... but when I do... oh, <<hes npc_cook>> so big, it reminds reminds me of that old song... it feels so good to know that even after all the thousands of cocks I've fucked I can still feel that stretch from time to time...@@" <<=setup.getNpcName("npc_sexdoll","first")>> bites her lip and wiggles her hips as you imagine she's trying to get some extra stimulation from the plug locked in her ass. "@@.npc_sexdoll;So... yeah, totally, just give me a ring some weekend and I'll be there!@@"<br>
<br>
<<if $scene.isMorning>>
<<if $now.getUTCDay() == 5>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Catch up with things at your desk." 0 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Continue." 0 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>>">>]
<</if>>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Catch up with things at your desk." 0 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>>">>]
<</if>>
</div>/*#
#desc: checked for large cock shoot
#status: RELEASED 0.9.4.0
#ignore_spell: havin','a,packin',propah
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty("beforePorn")>>
<<useClothSetPush 'beforePorn'>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You agree to do a large-cock focused shoot
<<if $player.body.penissize[0] < 6>>
only for <<=setup.getNpcName("npc_cook","first")>> to point out the problem in your plan. "@@.npc_cook;Aye, <<callPlayer "npc_cook">>, recall I said I wanted to do a shoot where both of us were packin' heat <<if $player.body_ref.penis>>... yeh don't seem to be as large as yeh were when I offered.<<else>>yeh don't even be havin' a cock, much less one 'a tha propah size!<</if>> Maybe get some work done and come back, eh?@@"<br>
<br>
<<elseif $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
only for <<=setup.getNpcName("npc_cook","first")>> to call <<=setup.getNpcName("npc_sexdoll","first")>> and go straight to voicemail.<br>
<br>
<<printThought "Ah, right, she said weekends only... guess work has her busy during the week...">><br>
<br>
<<elseif !setup.canSexOrRemoveChastity("penis", "")>>
only for <<=setup.getNpcName("npc_cook","first")>> to clarify if you can "@@.npc_cook;Let that there tallywhacker out of its cage?@@"<br>
<br>
<<printThought "Shit, I can't unlock...">><br>
<br>
"@@.npc_cook;Not that I don't understand the urge to contain such a... distraction, but it obviously won't work for the shoot, eh?@@"<br>
<br>
<<elseif $fetish.cum && $player.body_ref.cumProduction < 2>>
only for <<=setup.getNpcName("npc_cook","first")>> to clarify how much cum you can produce before frowning. "@@.npc_cook;Aye, perhaps ah should have mentioned earlier... but people who want the unnaturally large cocks... well, they want to see the unnaturally large loads to go with it. Come back once you're large in production as well as penetration, aye?@@"<br>
<br>
<<else>>
<<=setup.getNpcName("npc_cook","first")>> confirms you're ready and tells you to
<<if setup.checkItemTypeWorn("cage")>>
get unlocked and
<<else>>
<</if>>
meet <<him npc_cook>> on-set while <<he npc_cook>> arranges a pick-up for <<=setup.getNpcName("npc_sexdoll","first")>>.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
[@@.link_locked;You can't shoot a large-cock porno if your cock is locked!@@]<br>
<<else>>
[<<moveTo "event_porn_large_cock_2" "Get on set." 300>>]<br>
<</if>>
<</if>>
[<<moveTo "event_porn_select_shoot_1" "Actually, you'd like to do something else..." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
</div>/*#
#desc: start large cock shoot
#status: RELEASED 0.9.4.0
#ignore_spell: broodily
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "noir_outfit">>
<<wearItemSet "noir_outfit" true>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_noir.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_cook","first")>> gives you a change of clothes<<if $scene.removeCage>> and has you unlock <</if>>and the two of you step on set, a cliche take on a dingy office... and you in a slightly slutty take on a PI's outfit.<br>
<br>
You take a seat as <<=setup.getNpcName("npc_cook","first")>> stands broodily looking out the window. The cameras begin to roll and <<=setup.getNpcName("npc_cook","first")>> launches into brooding narration.<br>
<br>
"@@.npc_cook;It's hard in the city for a couple of big dicks. We hadn't had a case in weeks, and the bills were piling up, thicker than the cum pooling in my balls. That was when SHE walked in the door.@@"<br>
<br>
Right on cue <<=setup.getNpcName("npc_sexdoll","first")>> walks though the door into your office, with <<=setup.getNpcName("npc_cook","first")>> turning and continuing the narration as <<=setup.getNpcName("npc_sexdoll","first")>> poses for the camera.<br>
<br>
"@@.npc_cook;I knew in an instant the dame was trouble. With a body to turn heads and a face that promised to suck away all a <<man npc_cook>>'s problems... and an ass that would crush your soul. I knew she was trouble, but we were broke, and the city is always ready to fuck over any private dick who gets too big... we had to hear her out.@@"<br>
<br>
[<<moveTo "event_porn_large_cock_3" "What's the job, broad?" 300>>]
</div>/*#
#desc: sexdoll arrives
#status: RELEASED 0.9.4.0
#ignore_spell: anachronistically
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_noir.png" setup.charImage("npc_cook","npc_cook_club") setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_sexdoll","first")>> may not have <<=ps(setup.getNpcName("npc_cook","first"))>> skill at chewing scenery, but she does a good enough version of breathlessly desperate as she continues to pose and spill her lines.<br>
<br>
"@@.npc_sexdoll;Please, you have to help me, I'm desperate... you see... I can't cum!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_cook","first"))>> pants swell as <<he npc_cook>> walks closer. "@@.npc_cook;Can't come? You're already here, lady, so spit it straight and fast. We're busy <<if !$npc_cook.fem && $player.identify_as == "female">>men<<elseif $npc_cook.fem && $player.identify_as == "male">>women<<else>>detectives<</if>> and we don't have time for some crazy broad doing some vaudeville clap-trap!@@"<br>
<br>
"@@.npc_sexdoll;No, you don't understand!@@" <<=setup.getNpcName("npc_sexdoll","first")>> pleads as she lifts her anachronistically short skirt to reveal her cage. "@@.npc_sexdoll;I can't cum!@@"<<if $fetish.cum>> A beaded drop of desperation falls to the floor... a detail you're sure the camera lingered on and that will get some additional audio support in post.<</if>><br>
<br>
<<=setup.getNpcName("npc_cook","first")>> kneels down and stares at the cage. "@@.npc_cook;You think we're rubes? That's a mob cage, who are you in with? Because we're clean, and ain't looking for any trouble.@@"<br>
<br>
"@@.npc_sexdoll;Like, please!@@" <<=setup.getNpcName("npc_sexdoll","first")>> as she walks across the room to bend over the desk, her massive tits hanging in front of you as she jiggles her ass for <<=setup.getNpcName("npc_cook","first")>> and the camera. "@@.npc_sexdoll;They said you were the best, biggest private dicks in the city. You gotta help me out!@@"<br>
<br>
"@@.npc_cook;We ain't goin' up against no mob outfit... but if it's help you need, well...@@" <<=setup.getNpcName("npc_cook","first")>> theatrically un-zips, <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horse-<</if>>cock springing free. "@@.npc_cook;We might be able to get to the bottom of things.@@"<br>
<br>
[<<moveTo "event_porn_large_cock_4" "Continue." 300>>]
</div>/*#
#desc: sexdoll asks for help
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_noir.png" setup.charImage("npc_cook","npc_cook_club") setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
A slap on the ass and <<=setup.getNpcName("npc_cook","first")>> is sliding into <<=ps(setup.getNpcName("npc_sexdoll","first"))>> rear as she moans like a proper porn-star. "@@.npc_sexdoll;Yes! Give it to me hard <<if $fetish.daddy>><<daddy npc_cook>><</if>>! I ain't no shrinking violet, I want all of your investigative skills!@@"<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> grunts as <<he npc_cook>> bottoms out for the first time and starts thrusting, <<=ps(setup.getNpcName("npc_sexdoll","first"))>> massive tits falling out of her top and swinging in front of you as she moans loudly.<br>
<br>
"@@.npc_cook;The dame was trouble alright... loud trouble. If we didn't get her under control the landlord would be up our asses in a New York minute and there would go all our hard-earned reward... fortunately, my partner packs large and knew how to handle a piece...@@"<br>
<br>
<<printThought "Looks like that's my cue...">><br>
<br>
[<<moveTo "event_porn_large_cock_5" "Stand up and get to work..." 300>>]
</div>/*#
#desc: start fucking sexdoll
#status: RELEASED 0.9.4.0
#ignore_spell: mmmmff
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 100>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_noir.png" setup.charImage("npc_cook","npc_cook_club") setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
You rise to your feet... and rise for the camera, <<=setup.getNpcName("npc_sexdoll","first")>> not needing any direction whatsoever to show off her skills and eagerly deep-throat your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock.<br>
<br>
"@@.npc_sexdoll;Mmmmff!@@" <<=setup.getNpcName("npc_sexdoll","first")>> moans in enthusiasm as you grab her hair for stability and she bounces back and forth between you and <<=setup.getNpcName("npc_cook","first")>>. You each continue to fuck as <<=setup.getNpcName("npc_cook","first")>> resumes narration.<br>
<br>
"@@.npc_cook;The dame was all her body promised and more... tight and wet, but deep and warm, like a tunnel to hell, and I was turning my back on all the angels above. That's what the city does to a <<man npc_cook>>, spits <<him npc_cook>> out and makes <<him npc_cook>> little more than an animal, a slave to lusts and willing to help a pretty face even without learning her name...@@"<br>
<br>
[<<moveTo "event_porn_large_cock_6" "Keep fucking." 300>>]
</div>/*#
#desc: keep fucking sexdoll
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_noir.png" setup.charImage("npc_cook","npc_cook_club") setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_sexdoll","first")>> is quite the enthusiastic partner, taking both yours and <<=ps(setup.getNpcName("npc_cook","first"))>> massive cocks with aplomb, first bent over the desk<<if $fetish.cum>> as she drips through her cage in excitement<</if>>, then flipped onto her back so the camera can look down as her throat and belly both bulge with each thrust.<br>
<br>
Tits jiggle and balls swing as <<=setup.getNpcName("npc_sexdoll","first")>> gets double-dicked hard, deep, moaning <<if $fetish.cum>>and leaking through her cage<</if>> with several powerful orgasms... but you don't get to be the biggest private dicks in the city by quitting early. No, you and <<=setup.getNpcName("npc_cook","first")>> are there to the end, hammering away at the trussed-trollop spread between you... but even hard bitten dicks like yourselves have their limits and, with a silent nod of confirmation you get ready to finish off... as a team.<br>
<br>
[<<moveTo "event_porn_large_cock_7" "Continue." 300>>]
</div>/*#
#desc: cum in sexdoll
#status: RELEASED 0.9.4.0
#ignore_spell: scrapin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_noir.png" setup.charImage("npc_cook","npc_cook_club") setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
<<if $fetish.cum>>
Thick loads of cum spurt into <<=setup.getNpcName("npc_sexdoll","first")>> from both ends, overflowing her with thick cream as you and <<=setup.getNpcName("npc_cook","first")>> pull out and finish off by blasting thick ropes of <<getWordCum>> over her body, all but washing away her prior thin, meagre leakings.
<<else>>
You and <<=setup.getNpcName("npc_cook","first")>> cum in near unison, burried <<if $player.body_ref.balls>>balls-deep<<else>>all the way<</if>> inside of <<=setup.getNpcName("npc_sexdoll","first")>> as she chokes and struggles with the pulsing aftermath of orgasm.
<</if>>
<<=setup.getNpcName("npc_sexdoll","first")>> starts to struggle and you pull back, leaving her panting and gasping, leaking drool<<if $fetish.cum>> and cum<</if>> as you catch your breath and sway slightly from your own exertion.<br>
<br>
"@@.npc_cook;The dame was trouble, alright,@@" <<=setup.getNpcName("npc_cook","first")>> resumes narrating as <<=setup.getNpcName("npc_sexdoll","first")>> staggers to her feet and pulls a wad of fake cash out from between her breasts to slap down on the <<if $fetish.cum>>cum-caked <</if>>desk before stumbling out the door, legs rubbery with each step in her too-high heels. "@@.npc_cook;The type of trouble that could drain you dry and leaving you questioning what it all meant... but the city has a way of pushing those thoughts back down, smacking you back to earth if you ever start thinking about more than scrapin' by... but the rent was paid and the bills were covered, and in a world like this... well, that's worth a little trouble. Especially when the dame called back the words every private dick loves to hear.@@"<br>
<br>
"@@.npc_sexdoll;See you next week!@@" Echoes back through the office.<br>
<br>
"@@.npc_cook;Yep. A steady paycheck... that's worth more than a bit of trouble...@@"<br>
<br>
You and <<=setup.getNpcName("npc_cook","first")>> do a final pose for the camera <<if $fetish.cum>>dripping <</if>> cocks hanging limp and spent until someone calls "@@.generic_male1;Cut!@@"<br>
<br>
[<<moveTo "event_porn_large_cock_8" "That's a wrap!" 300>>]
</div>/*#
#desc: get paid
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $scene.pay = 250>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_noir.png" setup.charImage("npc_cook","npc_cook_club") setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_sexdoll","first")>> wanders back in with a dopey smile on her face as <<if $scene.removeCage>>you re-lock your chastity and <</if>><<=setup.getNpcName("npc_cook","first")>> hands out pay.<br>
<br>
"@@.npc_cook;Well done, the both of you. This is the type of shot that's about the actor's physical assets, as well as their chemistry on-set... and, on both count, you two nailed it. So thanks... and go ahead and keep the costume.@@"<br>
<br>
<<=setup.getNpcName("npc_sexdoll","first")>> bounces off happily<<if $fetish.cum>>, still dripping cum<</if>> as you pocket your <<=$scene.pay>> earnings and leave the studio to consider what to do next.<br>
<br>
[<<moveTo 'room_citymap' 'Head out.' 300>>]
</div>/*#
#desc: change for sorority shoot
#status: RELEASED 0.9.3.0
#ignore_spell: longwood
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty("beforePorn")>>
<<useClothSetPush 'beforePorn'>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_cook","first")>> that you'd like to suck some cock on screen and <<he npc_cook>> grins.<br>
<br>
"@@.npc_cook;Aye <<callPlayer "npc_cook">>. Yeh certainly have the skills... and there's actually a shoot that would be perfect. <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>>, one of the studio's other stars has a script she wants to shoot... <<if setup.checkVisibleClothingTag('schoolgirl') > 50>>and that outfit of yers would be just perfect for it!<<else>>if yeh happen to have a schoolgirl outfit with yeh?<</if>>@@"<br>
<br>
<<if setup.checkVisibleClothingTag('schoolgirl') > 50>>
[<<moveTo "event_porn_sorority_2" "You're dressed and ready to go!" 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "event_porn_select_shoot_1" "Actually, you'd like to do something else..." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">><br>
[<<moveTo "event_porn_select_shoot_1" "Maybe something else? You'll try to bring suitable clothes some other time." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<</if>>
</div>/*#
#desc: sorority shoot: intro
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
"Properly" attired as a <<if setup.checkVisibleClothingTag('slutty') > 50>>slutty <</if>>schoolgirl you join half a dozen other similarly-attired actresses. The camera's roll and you file into another room where you stand at attention. Another, haughty woman walks into the room from the far door, looking you and the rest over with a slight sneer.<br>
<br>
"@@.generic_female1;Welcome, pledges! Congratulations on your decision to join the best sorority on campus... but know that we maintain that status through a hard, rigorous application process with the highest standards! If you want to be a member of Sigma Epsilon Chi, well... you better be ready to put it all on the line!@@"<br>
<br>
The woman stalks the line of you and your fellow pledges like she was some sort of drill sergeant, her gaze raking over you in inspection as you all try to stand a bit taller.<br>
<br>
"@@.generic_female1;You think you're worthy of joining Sigma Epsilon Chi?@@" She asks the first woman, "@@.generic_female1;Tell me, when was the last time you were air-tight with a cock in every hole?@@"<br>
<br>
The woman blinks in surprise. "@@.generic_female3;I... I'm a virgin, I thought...@@"<br>
<br>
"@@.generic_female1;You THOUGHT? Get out of my sight you pathetic prude. Pledges don't think, they DO, Goddess, a virgin in Sigma Epsilon Chi? We'd be the laughingstock of the college!@@"<br>
<br>
The woman slinks away in humiliation as things continue down the line to one of the more scantily clad pledges. "@@.generic_female1;And you? How do you feel about being pimped out?@@"<br>
<br>
"@@.generic_female3;Whatever I can do to serve my sorority sisters!@@" The woman shouts back to smiling approval.<br>
<br>
"@@.generic_female1;Now THAT'S the attitude I like to hear!... what about you? You ready to lick your friend clean? <<if $fetish.cum>>Suck cum out of her cunt for your breakfast<<else>>Massage her insides with your tongue<</if>> and have her ready for another shift?@@"<br>
<br>
The woman blinks in surprise,
<<if $options.fem>>
"@@.generic_female3;what? no, I'm not a bottom, I don't eat cunt...@@"<br>
<br>
"@@.generic_female1;A pledge thinking they're going to get away without serving? Get the fuck out of my sight! Here at Sigma Epsilon Chi we always support our sisters first!@@"
<<else>>
"@@.generic_female3;what? no, I'm not gay, I only like men...@@"<br>
<br>
"@@.generic_female1;Only like men? Well go join a fraternity or something! Here at Sigma Epsilon Chi we always support our sisters first!@@"
<</if>>
<br><br>
The woman continues her lewd taunting, and soon she it's your turn...<br>
<br>
[<<moveTo "event_porn_sorority_3" "Continue." 300>>]
</div>/*#
#desc: sorority shoot: intro
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
<<if setup.calcBreastSize() == "massive">>
She stares at your chest.<br>
<br>
"@@.generic_female1;Well look at you and those oversized bitch tits. Do you think that impresses me? This is <<=$now.getYear()>>! Anyone can have a pair of giant bolt-ons, it's what you're willing to do with them, hmm? So, are you just a looker, or are you a worker, too? Show me your devotion, pledge!@@"
<<elseif $player.body_ref.penis>>
She stares between your legs. "@@.generic_female1;Is that a bulge I see?@@"<br>
<br>
The woman clearly believes in looking with hands, as well as eyes, as she is suddenly reaching under her skirt to grab your <<getWordMyPenis>>.
<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>
"@@.generic_female1;A <<if setup.isCage()>>cage<<else>>chastity belt<</if>>? Well, well. You ready to turn your key over to sorority leadership? To prove your pledge by being our property?@@"
<<else>>
"@@.generic_female1;Well, well, do you think that impresses me? That you're going to join up and fuck all the hot bitches? Hardly! You're a pledge and your first duty is to serve! Show me you're more than some horny swinging dick, prove your devotion!@@"
<</if>>
<<else>>
She stares at you for a nervously long moment. "@@.generic_female1;Well? What do you bring to the table, pledge? Why should Sigma Epsilon Chi consider you for membership in our auspicious organisation?@@"<br>
<</if>>
<br><br>
The woman sneers down at you, waiting for your response...<br>
<br>
[<<moveTo "event_porn_sorority_4" "Kneel and beg to join the Sorority." 180 "<<set $scene.kneel=true>>">>]<br>
[<<moveTo "event_porn_sorority_4" "Stand tall and proud and try to impress her." 180 "<<set $scene.kneel=false>>">>]
</div>/*#
#desc: sorority shoot: kneel for lilith
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.kneel>>
<<applyExperience 'foot' 10 'normal' $EXPOSED>>
<</if>>
<<applyExperience 'submission' 15 'normal' $EXPOSED>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
<<if $scene.kneel>>
You drop to your knees in supplication, going so far as to kiss the woman's feet as you beg to be put to use in service of the sorority.<br>
<br>
The woman smiles at your obedience. "@@.generic_female1;Well, well, look at the suck-up... but to kneel is one thing, quite another to prove that you know what to DO down there.@@" She grins, "@@.generic_female1;let's see what the Sorority President thinks of you...@@"
<<else>>
You stand tall and begin to shout your virtues only for the woman place a hand on your shoulder and force you to your knees.<br>
<br>
"@@.generic_female1;Pride? In a pledge? No, no, you do not even deserve a NAME, you are a faceless slut BEGGING to be part of our elite organisation.@@" She grabs you by the face and stares down into your eyes, roughly shoving her thumb into your mouth. "@@.generic_female1;Still... there's potential here, we'll have to see what the Sorority President thinks...@@"
<</if>>
<br><br>
Still no your knees you are dragged into another room and faced with a new, even more impressive woman. A platinum blonde bombshell with striking blue lipstick and nails, her top emphasises her perfect breasts as she walks over to stand in front of you, her skirt slowly rising as a large, veiny cock stiffens. As shift of her hips and she all but slaps you in the face.<br>
<br>
"@@.generic_female2;Start sucking, pledge! I better feel my balls on your chin if you want to be a part of Sigma Epsilon Chi. Remember our principles: Salacious, Lascivious, Urgent, Tenacious and show me that you BELONG on your knees before your President!@@"<br>
<br>
[<<moveTo "event_porn_sorority_5" "Suck!" 300>>]
</div>/*#
#desc: sorority shoot: suck lilith off
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<<applyExperience 'oral' 16 'terrible' $EXPOSED>>
<<applyExperience 'submission' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
You lean in for <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith Longwood"))>> eponymous long wood, the heady taste of girl-cock filling your mouth as you follow her command and take her all the way balls deep.<br>
<br>
"@@.generic_female2;Making a good first impression down there, pledge,@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> states in congratulations, "@@.generic_female2;But deepthroating is table stakes. Sigma Epsilon Chi doesn't just want sluts, we want the horniest fuck-holes on campus.@@" One hand gripping your hair she pins you in place as she turns you to look up at her, your throat still bulging around her cock. "@@.generic_female2;Is that you? Do you live to suck and fuck and serve? Then show your President, show how much you love beging her personal cock-sheath.@@"<br>
<br>
Her grip loosens, turning control back over to you to show your skills. "@@.generic_female2;Bob that head! Let me see you face-<<if $fetish.get_raped>>rape<<else>>fuck<</if>> yourself!@@"<br>
<br>
Time seems to slow around you, and you'd swear you could hear boss-fight music...<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo 'event_porn_sorority_6' "Let's suck!" 300 "<<set $scene.score=1>><<spendWillpower 1>>">>] <<hint $options "Sucking at this level will require an act of will to focus down.">><br>
<<else>>
[@@.link_locked;You lack the mental energy to focus this hard on sucking cock.@@]<br>
<</if>>
[<<moveTo "event_porn_sorority_6" "Blow her like normal." 300 "<<set $scene.score=0>>">>]
</div>/*#
#desc: sorority shoot: face-fuck
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
<<if $scene.score>>
You stabilise yourself with both hands as you throw your head back and forth, aggressively face-<<if $fetish.get_raped>>raping<<else>>fucking<</if>> yourself as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> grins down. "@@.generic_female2;That's what I'm talking about, pledge! Show me how much you want it! If the back of your throat isn't bruised, you aren't trying!@@"<br>
<br>
You let out a gurling moan around the meat missile thrusting in and out of your throat as you attempt to speed up and further earn the sorority president's approval.<br>
<br>
"@@.generic_female2;Yes! That's the ticket, now suck! Suck! Show me what a <<if $fetish.cum>>cum<<else>>cock<</if>> vacuum you are and suck on every stroke!@@"
<<else>>
You start to give a passionate, if methodical, blowjob, only for <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> to scowl and re-assert control. "@@.generic_female2;Are you not paying attention? Lacking brain cells to bounce around in that skull alongside my cock? I didn't say to suck, I said to face-fuck yourself!@@"<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith")>> grabs a fistful of your hair in each hand and starts aggressively sucking, hips slamming into your lips with each stroke as she treats your throat like an onahole.<br>
<br>
"@@.generic_female2;This is more like it! Suck! Show me your impression of a vacuum and make me work to pull back!@@"
<</if>>
<br><br>
Merely deep-throating <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> would be enough to make breathing a struggle, to pound in and out while also maintaining suction is a level of effort that only the most elite cock-sucker could manage...<br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo 'event_porn_sorority_7' "You are elite!" 300 "<<set $scene.score+=1>><<spendWillpower 2>><<set $scene.act=true>>">>] <<hint $options "Sucking at this level will require an act of will to focus down.">><br>
<<else>>
[@@.link_locked;You lack the mental energy to focus this hard on sucking cock.@@]<br>
<</if>>
[<<moveTo "event_porn_sorority_7" "That's more than you can manage..." 180>>]
</div>/*#
#desc: sorority shoot: suck hard
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
<<if $scene.act>>
You are in all but tunnel vision mode, your body a machine that exists to turn giant cock into expertly sucked cock as your head rocks back and forth, your cheeks hollowed out as you suck with black-hole intensity.<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith")>> grins, clearly impressed, and
<<else>>
You can barely breath, much less suck as your head thrusts back and forth. <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> sneers, if anything further turned on by your difficulties as
<</if>>
you feel her swell and start to throb...
<br><br>
[<<moveTo "event_porn_sorority_8" "She's cumming!" 180>>]
</div>/*#
#desc: sorority shoot: lilith cums
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.cum>>
<<applyExperience 'cum' 12 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.score>>
<<case 2>>
A final hard thrust almost knocks you over, but instead locks her cock all the way down your throat as she
<<if $fetish.cum>>
shoots a massive load, pressurised cum shooting out your nose as cock and cum fill you to capacity and beyond.
<<else>>
jerks with exertion, orgasmic energy running from her cock and out through your body as you shudder in place.
<</if>>
<br><br>
"@@.generic_female2;Well done!@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> states with a grin. With a snap of her fingers two additional sorority sisters walk into the room and help you to your feet. "@@.generic_female2;Clean her up! There are more trials to cum... on the next episode of <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith Longwood"))>> Sorority Sluts!@@"
<<case 1>>
You're overwhelmed and out of sync as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> cums,
<<if $fetish.cum>>
shooting her load across your face.
<<else>>
all but tossing you away as her hips jerk in climax.
<</if>>
<br><br>
She stands over you with a sneer<<if $fetish.cum>> as you lay in a cum-battered heap<</if>>.<br>
<br>
"@@.generic_female2;You tried... but our standards are far higher than what you achieved. Still... you may be unworthy as a pledge, but your aren't completely useless. After all, the sorority can always pimp you out for fundraising...@@"
<<case 0>>
You are all but helpless as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> pulls your head forward and back, finally ripping you away
<<if $fetish.cum>>
to blast a massive load across your face.
<<else>>
for you to watch the thick girl-dick pulse and flex in orgasm.
<</if>>
<br><br>
Her grip on your hair loosens, and you slump to the floor<<if $fetish.cum>> in a cum-battered heap<</if>>.<br>
<br>
"@@.generic_female2;Pathetic display. Still... you may be unworthy as a pledge, but your aren't completely useless. After all, the sorority can always pimp you out for fundraising...@@"
<<default>>
ERROR: unexpected scene.score <<=$scene.score>>
<</switch>>
<br><br>
"@@.generic_male1;CUT!@@" You hear someone call.<br>
<br>
[<<moveTo "event_porn_sorority_9" "Step off set." 300>>]
</div>/*#
#desc: sorority shoot: paid
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'beforePorn'>>
<<set $scene.pay = 100 + 3*setup.getTotalValue("oral") + 50*$scene.score>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png">>
<div id="invframe" class="scrolltext">
There's a brief commotion as shooting wraps and everyone seems to be running around. You're in the process of cleaning up when <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> approaches you with a grin.<br>
<br>
<<switch $scene.score>>
<<case 2>>
"@@.generic_female2;A good shoot today. It seems you're as skilled as <<=setup.getNpcName("npc_cook","first")>> said.@@"
<<case 1>>
"@@.generic_female2;A decent shoot today... you really played up the desperation, I see. That's fine, some viewers are into that.@@"
<<case 0>>
"@@.generic_female2;I must say, I was a bit disappointed in your skills today. I think we got some good shots anyway, and some viewers are into the whole ruined innocence thing... maybe some other time I can feel those skills I heard about. Because today didn't feel like the star of Shut me up and Pound my Throat Like a Mare... but I guess we all have our off days.@@"
<<default>>
ERROR: unexpected scene.score <<=$scene.score>>
<</switch>>
<br><br>
You thank <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> before she gets called away, a random flunky appearing to give you your pay of <<=$scene.pay>> credits.<br>
<br>
[<<moveTo 'room_citymap' 'Head out.' 300>>]
</div>/*#
#desc: change for congress shoot
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty("beforePorn")>>
<<useClothSetPush 'beforePorn'>>
<</if>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/film_set_blank.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_cook","first")>> that you'd like to do some on-screen submission and <<he npc_cook>> nods.<br>
<br>
"@@.npc_cook;Aye <<callPlayer "npc_cook">>. Yeh certainly have the temperament, and ah believe <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> has a script she is lookin' to shoot that would be perfect. <<if setup.analyzeWornTags(["casual","office","formal","gym"]) == "office" && setup.checkPlayerDecency()>>and that outfit of yers would be just perfect for it!<<else>>if yeh happen to have something more office-appropriate to wear?<</if>>@@"<br>
<br>
<<if setup.analyzeWornTags(["casual","office","formal","gym"]) == "office" && setup.checkPlayerDecency()>>
[<<moveTo "event_porn_congress_2" "You're dressed and ready to go!" 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "event_porn_select_shoot_1" "Actually, you'd like to do something else..." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">><br>
[<<moveTo "event_porn_select_shoot_1" "Maybe something else? You'll try to bring suitable clothes some other time." 60 "<<set $player.cutscene.lockinventory=true>><<useClothSetPop 'beforePorn'>>">>]
<</if>>
</div>/*#
#desc: intro congress shoot
#status: RELEASED 0.9.3.0
#ignore_spell: longwood,cumgresswoman
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film Set — Office'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_office.png">>
<div id="invframe" class="scrolltext">
Dressed for "work" you make your way to an office set. <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> is dressed in a striking business suit and appears working at a desk while you wait just out of camera as you listen to a voice-over introduction.<br>
<br>
"@@.generic_male1;With impressive dedication Cumgresswoman <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> is once again working late, adding final polish to her latest bill, the Disciplinary Overhaul Measures for Members of Executive Staff Act. But industry forces are determined to halt these much needed, but expensive reforms...@@"<br>
<br>
<<printThought "Looks like I'm playing the part of the lobbyist...">> You think as the director motions for you to step into the scene.<br>
<br>
You approach the desk and Lilith glances up with a snort. "@@.generic_female2;<<=$player.flags.porn.pornname>>! I should have known that you would be the lobbyist they sent to stop me! What robber baron industrialist are you selling your soul to this time, hmm?@@"<br>
<br>
You match her over-the-top acting as you ignore the insult and smile, noting that you speak for important constituents, constituents who are quite instant that this bill never reaches the floor.<br>
<br>
"@@.generic_female2;Oh? And how, exactly do you intend to stop me from enacting the will of the people?@@"<br>
<br>
[<<moveTo "event_porn_congress_3" "Yell at her to kill the bill." 300 "<<set $scene.style='angry'>>">>]<br>
[<<moveTo "event_porn_congress_3" "Offer campaign contributions if she will change the bill." 300 "<<set $scene.style='bribe'>>">>]<br>
[<<moveTo "event_porn_congress_3" "Beg her to revise the bill... for the economy!" 300 "<<set $scene.style='beg'>>">>]<br>
<<if setup.getTotalValue("smart") > 15>>
[<<moveTo "event_porn_congress_3" "Counter with a competing bill." 300 "<<set $scene.style='counter'>>">>]
<</if>>
</div>/*#
#desc: change for congress shoot
#status: RELEASED 0.9.3.0
#ignore_spell: mmmff,skeeviest
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'handcuffs'>>
<<wearItem 'handcuffs' true>>
<</if>>
<<set $player.location = 'Film Set — Office'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_office.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case "angry">>
You raise your voice in blustering protest, yelling at <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> that she had better forget about her foolish bill.<br>
<br>
Rather than be cowed by your verbal assault, <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> grins in amusement as she calls out a single word in response... "@@.generic_female2;guards!@@"<br>
<br>
From off-set two sharply dressed guards rush you, and you make sure that the camera has a good shot of your struggle as they restrain you, your hands cuffed behind your back as you continue to object at this mistreatment.<br>
<br>
"@@.pc;You can't treat me like this! I'll have your hide for this!@@" You shout as the guards are about to lead you away.<br>
<br>
"@@.generic_female2;No... leave <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>him<<case 'fluid' 'agender'>>them<</switch>>. I will deal with this distraction... but leave the cuffs.@@"<br>
<br>
You fall silent as the guards bow obediently and leave the room... and you alone with <<=setup.getNpcName("generic_female2", "custom", "Lilith")>>...
<<case "bribe">>
Putting on your skeeviest tone, you point out that elections are soon, and that your clients are quite willing to lend their assistance to <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> if she would only put aside this silly little bill...<br>
<br>
"@@.generic_female2;Oh? And how much of a contribution are we talking about?@@"<br>
<br>
You smirk in preemptive triumph, replying with the classic "@@.pc;More money than you can imagine.@@"<br>
<br>
"@@.generic_female2;I see... well, if you are prepared to put something in writing...@@" She proffers a sheet of paper and a pen and you step towards her desk.<br>
<br>
Both of you are grinning as you take the pen in hand... only for <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> slap a pair of handcuffs onto your wrists before you can sign.<br>
<br>
"@@.generic_female2;Hah! So foolish! Did you think I would be taken in by some piddly offering of credits? I am working on behalf of the people!@@"
<<case "beg">>
Abandoning decorum, you all but drop to your knees and beg <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> not to advance the bill, explaining that your bosses' wrath will be immense if you are unable to halt the legislation. "@@.pc;Please! I'll do anything!@@" You plead.<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith")>> grins ominously "@@.generic_female2;Anything? How about you try experiencing the abuses this act is meant to address. If you can endure that, and still side with your bosses? Well, maybe that would prove something...@@"<br>
<br>
"@@.pc;Of course, anything!@@" You reply... as you find that <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> has starting things off by snapping a pair of handcuffs around your wrists.<br>
<br>
"@@.generic_female2;We shall see about THAT...@@"
<<case "counter">>
With a cocky grin you present an alternate bill. "@@.pc;The industry, of course, recognises the value of legislation... but your proposal goes too far. Might I instead, present you with this — The Disciplinary Oversight Monitoring Investment and Normalization Act. It avoids your radical, innovation-stifling so-called reforms in favour of removing regulations that are the true cause of these so-called abuses. If job-creators are not stifled by the onerous hand of government they will have no need to over-work their employees, and instead will have greater funds available to improve conditions and hire more!@@"<br>
<br>
"@@.generic_female2;Less oversight is your solution? Do you really think that employees would be better off with their scant existing protections stripped away? Have you seen the treatment they are already forced to endure?@@"<br>
<br>
You fire back that if employees performed better they would have no fear of punishment, and it is the shackles of regulation reducing efficiency and taxing away profits. Without that money being stolen by the government and wasted on useless oversight things would trickle down and everyone would be better off!<br>
<br>
"@@.generic_female2;Cuffed, you say... a curious choice of words, given that one of the abuses I seek to address is that of workers being literally cuffed to their terminals for the duration of their shifts... you see no problem with this practice?@@"<br>
<br>
You fire back that the employees are being paid to work at their desks, anyway, so cuffing them there is more for safety than anything else, hardly a problem.<br>
<br>
"@@.generic_female2;Hardly a problem... then I suppose you wouldn't mind being cuffed for the duration of this... discussion? After all, this is your workstation, after a fashion...@@"<br>
<br>
"Trapped" by her logic you scoff that, of course, that would barely be an inconvenience, and you would gladly show her that it being a burden is nothing but propaganda.<br>
<br>
"@@.generic_female2;We shall see...@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> replies with a grin as she locks a pair of cuffs onto your wrist. "@@.generic_female2;Yes, time to see just how onerous things would be without employee protections...@@"
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
With you proverbially helpless, <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> chuckles in amusement. "@@.generic_female2;Lobbying really does attract the foolish ones... too bad my bill hasn't passed, it would have protected you... as it is, well, I think you are in need of some employee training. Let's start with a gag order...@@"<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith")>> pulls a classic red ball gag out of her desk and brings it to your lips with an evil grin.<br>
<br>
[<<moveTo "event_porn_congress_4" "Mmmff!!" 300>>]
</div>/*#
#desc: change for congress shoot
#status: RELEASED 0.9.3.0
#ignore_spell: clipshow
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<addItem 'ball_gag_red'>>
<<wearItem 'ball_gag_red' true>>
<</if>>
<<set $player.location = 'Film Set — Office'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_office.png">>
<div id="invframe" class="scrolltext">
"@@.generic_female2;There, isn't that better?@@" <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> taunts as you mumble through your gag. "@@.generic_female2;Of course, if you are REALLY going to experience what it's like to be an employee who has been totally... stripped of protections...@@"<br>
<br>
As she taunts, <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> removes your clothes, teasing and groping you the entire time. "@@.generic_female2;My, my... are you being turned on by this? Is the big bad lobbyist actually a submissive <<if $fetish.sissy>>sissy <</if>>sub? I thought you were in the pocket of the corporations... but it looks like you'll surrender to for anyone with a firm hand!@@"<br>
<br>
You moan as she bends you over her desk, pinning you down as she whispers in your ear. "@@.generic_female2;Imagine, if you had some sort of employee protections... alas, instead you're about to become my slave...@@"<br>
<br>
[<<moveTo "event_porn_congress_5" "You moan..." 1800>>]
</div>/*#
#desc: congress shoot clipshow
#status: RELEASED 0.9.3.0
#ignore_spell: clipshow,cumgress
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $EXPOSED>>
<<changeHorny 100>>
<</if>>
<<set $player.location = 'Film Set — Office'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_office.png">>
<div id="invframe" class="scrolltext">
The shoot transitions into a flurry of shorter scenes as you and <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> perform a montage of submission, spanking, teasing, foot worship, servicing other cumgress-people to rally votes, working under <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> desk to chronicle your fall from lobbyist to slave reflecting your new Mistress' growing support.<br>
<br>
You're tired, excited, and more than a little frustrated from the repeated aborted performances for the camera as <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> produces a collar and guides you back to your feet for the final scene...<br>
<br>
[<<moveTo "event_porn_congress_6" "Continue." 1800>>]
</div>/*#
#desc: presented to congress at end of shoot
#status: RELEASED 0.9.3.0
#ignore_spell: cumgresswoman,cumgressional
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem "bondage_collar_promo">>
<<wearItem "bondage_collar_promo" true>>
<</if>>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<<playerOrgasm>>
<</if>>
<<set $player.location = 'Film Set — Senate Chambers'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/college_class.png">>
<div id="invframe" class="scrolltext">
A final scene transition and Cumgresswoman <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> is leading you into the cumgressional chambers... crawling a the end of her leash.<br>
<br>
Before presenting her bill she straps you to a chair with a vibrator between your legs. "@@.generic_female2;Before you I present the consequences of not passing my bill. I have reviewed cases of hundreds of employees who have endured this and more, with no protection! Well I ask you now to vote yay on the DOMMES Act and provide the support our hard-working constituents deserve!@@"<br>
<br>
Rousing applause fills the chamber as you writhe in humiliation... and then the voting starts.<br>
<br>
The first "yay!" vote has your vibrator buzzing rapidly, and you moan louder as several more assenting votes see you stimulated even further... only to yelp in pain as the first "nay!" vote sees you hit with a punishing shock.<br>
<br>
<<=setup.getNpcName("generic_female2", "custom", "Lilith")>> smiles down at you and tightens the grip on your leash as the voting rolls on, the initial burst of support turning into a close vote as you moan and yelp in response to punishment and pleasure in what feels like equal measure.<br>
<br>
Combined with being bound, naked, and exposed, your heart pounds as your arousal builds higher and higher, the fact that the whole scenario is scripted temporarily forgotten as <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> whispers "@@.generic_female2;You only cum if it passes...@@"<br>
<br>
Writhing and jerking in response to the baggage of vote-fueled stimulation, you are on the floor by the time the final votes are tallied, an explosive, screaming orgasm only barely stifled by your gag when the announcement "@@.generic_male2;the DOMMES act passes!@@" is called out... the resulting applause coming nowhere close to drowning out your own celebration.<br>
<br>
[<<moveTo "event_porn_congress_7" "Recover..." 300>>]
</div>/*#
#desc: change for congress shoot
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 100 + 5*setup.getTotalValue("submission")>>
<<addCredits $scene.pay>>
<<removeItem 'handcuffs' true>>
<<deleteItem 'handcuffs'>>
<<removeItem 'ball_gag_red' true>>
<<deleteItem 'ball_gag_red'>>
<<if $scene.addCollar>>
<<removeItem "bondage_collar_promo" true>>
<<deleteItem "bondage_collar_promo">>
<</if>>
<<removeItem "leash_black" true>>
<<deleteItem "leash_black">>
<<useClothSetPop 'beforePorn'>>
<</if>>
<<set $player.location = 'Film Set — Senate Chambers'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/college_class.png">>
<div id="invframe" class="scrolltext">
The shoot comes to an end and <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> helps you back to your feet as other cast and crew congratulates your performance.<br>
<br>
<<=$scene.pay>> credits are your compensation as you catch your breath and get dressed, still enjoying the afterglow of another successful shoot.<br>
<br>
[<<moveTo 'room_citymap' 'Head out.' 300>>]
</div>/*#
#desc: cook vagina training options
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' 'theme_psychiatrist_cook_20'
4
'event_psychiatrist_session_cook_difficulty_vaginal_1'
false
>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<switch $npc_cook.flags.porn.vag_stage>>
<<case 0>>
"@@.npc_cook;Alright, before we start.@@" <<=setup.getNpcName('npc_cook', 'first')>> says with a suddenly serious tone. "@@.npc_cook;What's your experience? I mean vaginally. I know I agreed tah train yeh, but knowin' where yer from would help us avoid an confusion like what led you to feeling forced to jerk me off.@@"<br>
<br>
<<if !$player.virgin.vaginal>>
[<<moveTo 'event_cook_training_vaginal_lie' "Lie and tell <<him npc_cook>> your vag is akin to a town bicycle." 180>>]<br>
[<<moveTo 'event_cook_training_vaginal_denied' "Admit that you're vaginally a virgin." 180>>]
<<elseif setup.getTotalValue("bimbofication") > 10>>
[<<moveTo 'event_cook_training_vaginal_1' "Tell <<him npc_cook>> you've been fucked... and you want to be fucked more!" 180>>]<br>
[@@.link_locked;You love <<getWordPenis "npc_cook">> too much to even think of denying your slutty predilections.@@]<br>
<<else>>
[<<moveTo 'event_cook_training_vaginal_1' "Tell <<him npc_cook>> you've been fucked your share." 180>>]<br>
[<<moveTo 'event_cook_training_vaginal_lie' "Lie and say you're a virgin." 180>>]
<</if>>
<<case 1>>
"@@.npc_cook;Well, let's not waste any more time, I'm hard, you're wet, let's get to it!@@"<br>
<br>
[<<moveTo 'event_cook_training_vaginal_1' "Lay back and spread your legs." 60>>]
<<case 2>>
"@@.npc_cook;Wet and ready for more?@@" <<He npc_cook>> chuckles. "@@.npc_cook;As I told you before, if you hope to make it as a professional you need stamina and flexibility, the ability to hold an awkward, camera-friendly position for the duration, not get overwhelmed and distracted by pleasure.@@"<br>
<br>
[<<moveTo 'event_cook_training_vaginal_2' "Nod, you're ready to show what you've got." 60>>]
<<case 3>>
"@@.npc_cook;Alright, <<callPlayer "npc_cook">>. You ready to prove your mastery? What we've been doing before... well, that's just practice, to pass this final test you need to be able to take it hard and deep and long.@@"<br>
<br>
[<<moveTo 'event_cook_training_vaginal_3' "Yes, <<sir npc_cook>>!" 60>>]
<<case 4>>
The cook grins with pride.
<<if $npc_cook.flags.porn.anal_stage < 4 || $npc_cook.flags.porn.oral_stage < 4>>
"@@.npc_cook;Not that I don't just love creaming in your baby-maker... but perhaps yeh might prefer to spend the time training one of yer other, less experienced, holes?@@"
<<else>>
The cook grins with pride. "@@.npc_cook;Fuck that delightful cunny of yours? Now that's an offer I'd never turn down!@@"
<</if>>
<br><br>
[<<moveTo 'event_cook_training_vaginal_4' "Spread your legs for some quick practice." 600>>]<br>
[<<moveTo 'event_cook_training_root' "On second thought, perhaps something else?" 60>>]
<<default>>
ERROR: unexpected npc_cook.flags.porn.vag_stage : <<=$npc_cook.flags.porn.vag_stage>>
<</switch>>
</div>/*#
#desc: admit to cook that you are a vaginal virgin
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $player.flags.humiliationStyle == "embarrassed">>
Blushing like the bashful <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are you reluctantly admit that you're a virgin.
<<else>>
You're surprised at how embarrassed you feel to admit that you are in possession of a virginal vagina...
<</if>>
<br><br>
"@@.npc_cook;Thanks for the honesty. Some girls insist on claiming experience they don't have, and it's a bad idea, as well as being unprofessional! I know it seems a simple thing in the pornos — that the girls just lay back and spread their legs, but they're doing real work! And that's just for normal <<if $npc_cook.fem>>sized dicks<<else>>guys<</if>>, for me, well... Come back when you've been around the block a few times, eh?@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Return to your desk." 300>>]
</div>/*#
#desc: lie to cook about your experience to try to get him to oral train you
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if !$player.virgin.vaginal>>
Maybe working in porn has given <<him npc_cook>> a sixth sense for such things, but <<he npc_cook>> sees straight through the lie about your virginity.<br>
<br>
"@@.npc_cook;I know it seems a simple thing in the pornos — that the girls just lay back and spread their legs, but they're doing real work! And that's just for normal <<if $npc_cook.fem>>sized dicks<<else>>guys<</if>>, for me, well... Come back when you've been around the block a few times, eh?@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "You can tell <<he npc_cook>> won't be swayed by additional argument so you depart." 300>>]
<<else>>
<<set $npc_cook.flags.porn.vag_stage = 1>>
The cook chuckles in amusement "@@.npc_cook;did you think pretending to be a virgin would impress me? With my cock that is... far from the sort of porn I'm looking to make. Taking me is post-grad sex and the inexperienced need not apply, and really, if you expect to be a professional, well, you need to have practice. Playing something else on screen is one thing, but not being upfront with your fellow performers is a recipe for a poor shoot. That said, and since we both know you are in no way a virgin, are you ready to do this?@@"<br>
<br>
<<if $fetish.bestiality_soft>>
[<<moveTo 'event_cook_training_vaginal_1' 'Spread your legs for <<his npc_cook>> giant horse-cock.' 600>>]<br>
<<else>>
[<<moveTo 'event_cook_training_vaginal_1' 'Spread your legs for <<his npc_cook>> massive cock.' 600>>]<br>
<</if>>
[<<moveTo 'event_cook_training_decline' 'Change your mind and decline to train today.' 180>>]
<</if>>
</div>/*#
#desc: start vaginal training 1 - lay
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_vag = 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Arranging yourself on top of a counter you spread your legs as <<he npc_cook>> steps towards you, <<his npc_cook>> hard cock swaying almost hypnotically. "@@.npc_cook;Alright, <<callPlayer "npc_cook">>... getting fucked on camera, it's about more than just lying back. A mannequin could do that, but that's a pretty small industry niche. To be a top shelf actress you have to sell the scene, communicate how much you want it, need it. You have to convince the audience that this is more than a job — that it's your life's passion. Now, are you ready to get fucked?@@"
<br>
[<<moveTo 'event_cook_training_vaginal_1a' 'Hold your breath and nod.' 600 "<<set $scene.acting = false>>">>]<br>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo 'event_cook_training_vaginal_1a' 'Beg for <<his npc_cook>> cock.' 600 "<<set $scene.acting = true>>">>]
<<else>>
[@@.link_locked;You are not so cock-crazed as to beg.@@]
<</if>>
</div>/*#
#desc: vaginal training 1 - beg to be fucked
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.acting>>
You lick your lips, spread your legs and look directly up at <<=setup.getNpcName("npc_cook","first")>>. "@@.pc;Please, <<sir npc_cook>>, I want to feel your cock inside of me... no, not want, NEED. I need you to fuck me, to breed me, to stretch my pussy and plumb my depths. You're so hard, and I'm so wet... fill me, please...@@"<br>
<br>
[<<moveTo 'event_cook_training_vaginal_1_success' 'Your speech complete you lay back and spread your legs.' 300>>]<br>
<<else>>
<<if setup.getTotalValue("penis") < 10>>
The more you stare at <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horsecock<<else>><<getWordPenis "npc_cook">><</if>> the more it scares you.
<</if>>
Other than nodding your assent all you can do is hold your breath as you anticipate how it will feel when <<his npc_cook>> thick <<getWordPenis "npc_cook">> enters you...<br>
<br>
[<<moveTo 'event_cook_training_vaginal_1a_fail' 'Spread your legs a bit wider in anticipation.' 300>>]<br>
<</if>>
</div>/*#
#desc: vaginal training 1 - fail to impress him into fucking you
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<He npc_cook>> sighs and shakes <<his npc_cook>> head.<br>
<br>
"@@.npc_cook;Sorry <<callPlayer "npc_cook">>, but I want to see excitement, enthusiasm... You need to imagine you're playing for the screen, not just because you some day will, but because taking something of my dimensions requires a full enthusiastic commitment to the task at hand, and how you act can form a reinforcing feedback loop with what you're able to do.@@"
<br>
You sigh at your failure — you had expected taking <<him npc_cook>> to be a physical challenge, but these mental games are another level. Looking up at <<his npc_cook>> face, however, makes it clear that <<he npc_cook>> isn't going to allow you any shortcuts.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo 'event_cook_training_vaginal_1_success' 'Beg for <<his npc_cook>> cock.' 180>>]<br>
<<else>>
<<printThought "I'm just too intimidated, maybe I'm not ready for <<him npc_cook>> and I should spend more time with less imposing specimens?">><br>
<br>
<</if>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Apologise for wasting <<his npc_cook>> time and promise to do better next time." 300>>]
</div>/*#
#desc: vaginal training 1 - succeed in getting fucked the first time
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.vag_stage = 2>>
<<playerOrgasm>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_cook","first")>> grins down as <<he npc_cook>> places one hand on your thigh and begins rubbing the tip of <<his npc_cook>> cock between your wet folds. "@@.npc_cook;That's what I like to hear — not mere acceptance, but full-throated enthusiasm! Horny, slutty, cock-mad size queen enthusiasm. That's what it takes to take this... so let's see if these lips@@" <<he npc_cook>> rubs <<his npc_cook>> thumb between your legs, "@@.npc_cook;can keep up with those...@@" <<he npc_cook>> transfers <<his npc_cook>> thumb to your mouth, sliding it between your lips for you to suck on your own juices.<br>
<br>
You moan as <<he npc_cook>> presses into you. <<He npc_cook>> truly is ginormous, and it feels like your very hip bones are flexing to accommodate <<him npc_cook>>, but accommodate you do, <<his npc_cook>> thick <<if $fetish.bestiality_soft>>frilled<<else>>mushroom<</if>> head sliding into you, followed by another couple of centimetres as <<he npc_cook>> gradually moves deeper, each thrust forcing your body to stretch in new ways as <<he npc_cook>> packs your vagina wall to wall.<br>
<br>
"@@.pc;Goddess...@@" you moan and <<=setup.getNpcName("npc_cook","first")>> chuckles, getting about halfway into you before pulling back and establishing a rhythm, each thrust causing your <<getWordVagina>> to gush in an attempt to keep <<his npc_cook>> massive piston lubricated.<br>
<br>
The feeling of each stroke, of the sudden emptiness followed by your body being stretched anew as <<his npc_cook>> massive <<getWordPenis "npc_cook">> presses against every nerve you have... it's all but too much. Your body trembles as you feel the first orgasm arrive, the spasms moving outward, each subsequent climax making you lose even more control.<br>
<br>
At first <<he npc_cook>> holds you down, but that proves a challenge to manage while <<he npc_cook>> continues to fuck, and so you are briefly pushed to another level as <<he npc_cook>> speeds up, rushing <<his npc_cook>> own orgasm as you are continually wracked with your own. When <<he npc_cook>> steps away a minute later you feel made of rubber, <<if $fetish.cum>>copious cum leaking out of your used hole, it's scent filling the small room<<else>>barely keeping from slumping to the floor<</if>>.<br>
<br>
"@@.npc_cook;Not bad, for a first time... You've got promise, <<callPlayer "npc_cook">>, but there's a lot more yet to learn. I advise you to work on your stamina and flexibility for the next time. This was just a trial run, an introduction, as it were. We've got a lot of practice to do yet before I'll consider you ready for a full scene.@@"<br>
<br>
You nod, slowly coming down from your orgasmic high as <<he npc_cook>> hands you a towel to wipe up.<br>
<br>
[<<moveTo 'event_cook_training_vaginal_1_cleanup' "Clean up." 300>>]
</div>/*#
#desc: vaginal training 1 assessment and clean yourself up
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
You slowly catch your breath, even as your exhausted <<getWordVagina>> continues to tremble and not yet fully close. By the time you've wiped yourself up <<hes npc_cook>> re-arranged <<himself npc_cook>> under <<his npc_cook>> kilt, offering you a hand back to your feet and opening the door.<br>
<br>
You feel like you're walking bow-legged, but you're pretty sure it's just in your mind, or at least you hope it is. With each step you find your thoughts turning back to <<his npc_cook>> cock — though you were distracted by ecstasy you are fairly certain you never took <<him npc_cook>> more than half way. You shudder, in fear... and something else, anticipation? Eagerness? Whatever it is, your resolve is unshaken, and you make a mental note of <<his npc_cook>> advice that you work on stamina and flexibility. From the way you nearly passed out without even getting to the point of taking <<his npc_cook>> full length, well, <<he npc_cook>> seems to have a point.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Thank <<him npc_cook>> for the encouragement and head back to your desk.' 180>>]
</div>/*#
#desc: vaginal training 2 - intro
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_vag += 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
You nod your readiness for this next trial. "@@.npc_cook;Alright, <<callPlayer "npc_cook">>, we'll start with the basics — let's see how high you can raise your leg...@@"<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> hooks and arm under one thigh to have you balancing on one leg as <<he npc_cook>> starts pulling your leg up into a standing splits...<br>
<br>
[<<moveTo 'event_cook_training_vaginal_2a' 'Put your flexibility to the test...' 300>>]
</div>/*#
#desc: vaginal training 2 - demonstrate flexibility
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dexterity") >= 15>>
You easily go into a full splits, and beyond, as <<=ps(setup.getNpcName("npc_cook","first"))>> cock slides up into you. You moan, dripping down your leg as <<he npc_cook>> slides all the way in, <<his npc_cook>> balls rubbing your thigh as <<his npc_cook>> massive <<getWordPenis "npc_cook">> re-arranges your insides.<br>
<br>
"@@.npc_cook;Not bad, not bad, but how about something a bit more strenuous...@@"<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> turns you on <<his npc_cook>> cock and leans you back into an inverted bridge... trivial for you even as the arch of your body fights against the straightening effect of <<his npc_cook>> member, only for <<his npc_cook>> weight to push you down as <<he npc_cook>> spreads your legs wide and then pushes them up towards your head. "@@.npc_cook;And now for the finale...@@" <<he npc_cook>> explains as you find your arms in your knee-pits, folded completely in half and exposed as <<his npc_cook>> cock plunges deep... and then <<he npc_cook>> spins you face-down to hold you in a sort of full nelson... folded, fucked, and held in the air as <<he npc_cook>> ratchets up the speed...<br>
<br>
[<<moveTo 'event_cook_training_vaginal_2b' 'Take it like an origami fuck-toy.' 360>>]<br>
<<else>>
<<if setup.getTotalValue("dexterity") > 10>>
Your body barely manages a full vertical splits when the addition of <<=ps(setup.getNpcName("npc_cook","first"))>> massive cock thrusting up into you makes it precarious. This proves to be just the first round of strenuous positions as, after a handful of thrusts, <<=setup.getNpcName("npc_cook","first")>> turns you on <<his npc_cook>> cock and leans you back into a full bridge, and then your legs are spread to the side and guided back as <<he npc_cook>> folds you over... only to come up shy in the attempt to get your ankles past your head.<br>
<br>
With a final thrust <<he npc_cook>> steps back as you wince and let your body relax into a more comfortable position.
<<elseif setup.getTotalValue("dexterity") > 5>>
Your flexibility gives out quite a bit shy of a full splits, and, after a few thrusts to see if you "loosen up" <<=setup.getNpcName("npc_cook","first")>> sets you back down and steps away.
<<else>>
Your leg barely rises past your waist before your flexibility gives out and <<=setup.getNpcName("npc_cook","first")>> sets you back down and steps away.
<</if>>
<br><br>
"@@.npc_cook;Disappointing. If you are going to make this a profession, well... you need to be able to perform! I'd recommend yoga, being able to contort yourself is just as important as being able to stretch around mah cock.@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Apologise for wasting <<his npc_cook>> time and head back to your desk with a promise to do better next time." 300>>]
<</if>>
</div>/*#
#desc: vaginal training 2 - demonstrate stamina
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _stam = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stam 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") >= 15>>
The stress of the position, or <<=ps(setup.getNpcName("npc_cook","first"))>> massive <<getWordPenis "npc_cook">> alone, would be enough to push your stamina to the limit, combined they represent a Herculean effort to push forward as waves of pleasure are pounded into your body and you strain against the contorted position.<br>
<br>
Though you pant and moan and drool, your time at the gym pays off, as each thrust brings the both of you closer and closer to what will surely be an earth-shattering climax...<br>
<br>
[<<moveTo 'event_cook_training_vaginal_2_success' 'Yeeesssss!' 300>>]
<<else>>
With each thrust of <<=ps(setup.getNpcName("npc_cook","first"))>> <<getWordPenis "npc_cook">> your heart beats faster and your breaths get shorter, the compressed, folded-up position
<<if setup.getTotalValue("stamina") > 10>>
pushing you past your limit.
<<else>>
having you feel light-headed.
<</if>>
<br><br>
Your vision narrows and you almost pass out, <<=setup.getNpcName("npc_cook","first")>> somehow noticing your predicament as you look up as <<he npc_cook>> untangles your limbs.<br>
<br>
"@@.npc_cook;Got's to work on that stamina, <<callPlayer "npc_cook">>. Working in porn, well... it's long days and strenuous positions, and you need to be in tip-top shape to be up to the challenge!@@"<br>
<br><br>
[<<moveTo 'event_cook_training_vaginal_2_fail' "Pant in exhaustion." 180>>]
<</if>>
</div>/*#
#desc: vaginal training 2 - fail stamina test
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Your heart falls at your failure and you offer to make it up to <<=setup.getNpcName("npc_cook","first")>> as you reach for <<his npc_cook>> hard <<getWordPenis "npc_cook">>.<br>
<br>
"@@.npc_cook;Nah, <<callPlayer "npc_cook">>. You've done enough for one day, you scurry on back to work and spend a bit more time in the gym, eh?@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Apologise for wasting <<his npc_cook>> time and head back to your desk with a promise to do better next time." 300>>]
</div>/*#
#desc: vaginal training 2 - pass stamina test
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $npc_cook.flags.porn.vag_stage = 3>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
You cum; every muscle of your body tightening in constrained ecstasy, <<=setup.getNpcName("npc_cook","first")>> stuck inside of you until you feel <<him npc_cook>> swell, <<if $fetish.cum>>the torrential blast of <<getWordCum>> deep in your womb enough to dislodge <<him npc_cook>> to flop free amidst a flow of <<getWordCum>> dripping onto the floor<<else>>the force of <<his npc_cook>> climax dislodging <<him npc_cook>><</if>>.<br>
<br>
<<=setup.getNpcName("npc_cook","first")>> gently lowers you to the ground and you untangle yourself<<if $fetish.cum>> in a pool of cum<</if>>.
<br>
"@@.npc_cook;Well done, <<callPlayer "npc_cook">>! You've really shown your flexibility and durability today, but doing vaginal porn, well... it's a crowded industry, with high standards if you want to really make it. So there's one more test, to see if you can handle the full intensity of what might go down over the course of a shoot. And this one I've got some specific homework for you.@@"<br>
<br>
<<He npc_cook>> helps you back to your feet and explains, "@@.npc_cook;there's an expansion for the game<<if $fetish.get_raped>> "Rape Rape Revolution," <<else>> "Space Slut Supreme," <</if>>it's a bit hard to find due to some safety recalls, but, if you're up to it, it's a truly immersive experience that, if you can beat it, well... you'll be ready for just about any gang-bang the world might throw at you. Find a copy, beat the game... and then we'll see how those skills translate to real life.@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Make your way back to your desk.'>>]
</div>/*#
#desc: vaginal training 3 - take it all
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_vag += 1>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
You hop up on a crate, spreading your legs wide and stroking yourself in invitation.<br>
<br>
Your enthusiastic invitation has <<=ps(setup.getNpcName('npc_cook', 'first'))>> kilt tenting upwards a moment before <<he npc_cook>> pulls it to the side to reveal <<his npc_cook>> throbbing member.<br>
<br>
"@@.npc_cook;Alright, <<callPlayer "npc_cook">>.@@" <<=setup.getNpcName('npc_cook', 'first')>> states, with a glint in <<his npc_cook>> eye, and dripping <<getWordPenis "npc_cook">> in hand. "@@.npc_cook;Let's see what you've really got! Remember, this is about showing that you can perform for your partner, and most of all, the camera, without getting distracted when things get intense.@@"<br>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level >= 3>>
[<<moveTo 'event_cook_training_vaginal_3_success' "You're going to be a star!" 1800>>]<br>
<<else>>
[<<moveTo 'event_cook_training_vaginal_3_fail' "You're going to be a star!" 1800>>]<br>
<</if>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Actually, you changed your mind. Pack up for the day and come back some other time." 300>>]
</div>/*#
#desc: vaginal training 3 - fail for insufficient training
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_vag += 1>>
<<applyFatigue 50>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
From the moment <<=setup.getNpcName("npc_cook","first")>> first slides into you, you can feel a difference in <<=ps(setup.getNpcName("npc_cook","first"))>> energy compared to previous times. For one, you would swear that <<his npc_cook>> already mammoth member is somehow even thicker, but it's the way <<he npc_cook>> moves that really sets things apart. Previous fucking had seen <<him npc_cook>> doing primarily that: fucking you but this... your presence is almost incidental as, while <<he npc_cook>> plows you hard, deep, and often, <<his npc_cook>> focus is elsewhere; performing for an imagined camera as <<he npc_cook>> adjusts position to prioritize a hypothetical viewer experience over any real consideration of your pleasure.<br>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level >= 2>>
Remembering your practice in the game you focus on giving <<=setup.getNpcName("npc_cook","first")>> the best time you can, squeezing muscles in time to <<his npc_cook>> thrusts. At first you sense a note of approval at your efforts, but then <<he npc_cook>> frowns as you realise you've become too focused on that, losing track of the overall "scene" and <<his npc_cook>> attempts to show you off for the camera.<br>
<br>
<<printThought "This porn stuff is hard... guess I should spend more time beating the game...">><br>
<br>
Another shift in position causes sensations to grow even more intense, your attention fragmenting further as intense pleasure overtakes your body.
<<else>>
You do your best to go along for the ride, but you find it hard to focus; even dispassionate <<his npc_cook>> cock is a (literally) massive distraction, the frustration of frequent position changes only making it harder for you to stay in the moment and lustily perform.
<</if>>
<br><br>
By the time <<=setup.getNpcName("npc_cook","first")>> finally cums you already know you've failed to perform well enough, <<his npc_cook>> final few thrusts seeing <<him npc_cook>> abandoning the focused performance merely to prioritise getting <<himself npc_cook>> off. <<He npc_cook>> steps away with a grunt as you pant and catch your breath.<br>
<br>
[<<moveTo 'event_cook_training_vaginal_3_cleanup' "Clean up." 300>>]
</div>/*#
#desc: vaginal training 3 - success
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.vag_stage = 4>>
<<addNpcTheme 'npc_psychiatrist' 'npc_cook' "theme_psychiatrist_cook_23"
4
'event_psychiatrist_session_cook_success_vaginal_1'
false
>>
<<playerOrgasm>>
<<include "calcCookCheckin">>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
From the first thrust, <<=setup.getNpcName("npc_cook","first")>> feels different from your previous times; <<his npc_cook>> already mammoth <<getWordPenis "npc_cook">> feeling even larger than usual, a hard, pistoning rod the firm equal of any dildo, but with the pulsing warmth that only comes from flesh.<br>
<br>
You moan, holding your legs wide and employing the techniques you honed in-game, your efforts garnering a grunt of approval before <<=setup.getNpcName("npc_cook","first")>> shifts positions, turning you down and doing you doggy-style, spreading your hips and pulling your hair as if performing for an invisible camera.<br>
<br>
As hard as <<he npc_cook>> thrusts, and as good as it feels when <<he npc_cook>> does so, you remain focused on your "job," refusing to be distracted by pleasure as you play your part in the performance, moaning with desire and focusing on two things: your partner's pleasure, and making sure your performance would look good on camera as <<=setup.getNpcName("npc_cook","first")>> cycles through positions, pausing and starting with frustrating irregularity until finally, with you spread wide and one leg on <<his npc_cook>> shoulder to give a clear view of each thrust of <<his npc_cook>> battering-ram invader penetrating your <<getWordVagina>>, <<he npc_cook>> cums.<br>
<br>
You shudder. What starts as a pretend orgasm for the camera turns into a mind-blowingly real one midway through as <<if $fetish.cum>><<his npc_cook>> massive load partially leaks out past <<his npc_cook>> cock<<else>><<his npc_cook>> cock throbs with orgasm deep inside of you<</if>>.<br>
<br>
It takes <<=setup.getNpcName("npc_cook","first")>> several minutes to soften and catch <<his npc_cook>> breath before stepping away as you flutter your eyelashes and gracefully lower your leg.<br>
<br>
[<<moveTo 'event_cook_training_vaginal_3_cleanup' "<<He npc_cook>> offers you a hand to help you up." 300>>]
</div>/*#
#desc: vaginal training 3 - assessment and cleanup
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $npc_cook.flags.porn.vag_stage >= 4>>
"@@.npc_cook;Well done, <<callPlayer "npc_cook">>. That control, and focus... to say nothing of how tight and responsive your hole was... aye, that's the sort of girl that audiences and co-stars will love equally! So, that camera you were pretending to act for? Well, it's a real one, and once I cut together today's performance, well... your vaginal debut will be ready to set the world on fire!@@"<br>
<br>
<<if $npc_cook.flags.porn.anal_stage >= 4 && $npc_cook.flags.porn.oral_stage >= 4>>
<<if $player.flags.porn.genre.anal && $player.flags.porn.genre.oral>>
"@@.npc_cook;So, you ready to add a third hole to your pornographic offerings?@@"<br>
<br>
[<<moveTo 'event_cook_training_pornstar_yes_vaginal' "Of course!" 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_vaginal' "No, you're not ready to film this sort of porn." 60>>]
<<elseif $player.flags.porn.genre.anal || $player.flags.porn.genre.oral>>
"@@.npc_cook;So, you ready to release this and the previous material?@@"<br>
<br>
[<<moveTo 'event_cook_training_pornstar_yes_all' "Agree to release all videos and star in all kinds of porn." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_yes_vaginal' "You'll keep the others to yourself, but <<he npc_cook>> can release the latest video." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_vaginal' "Shake your head and decline the offer." 60>>]
<<else>>
"@@.npc_cook;So... three holes worth of hot as hell footage... yeh ready to dive in to the porn market??@@"<br>
<br>
[<<moveTo 'event_cook_training_pornstar_yes_all' "Agree to release all videos and star in all kinds of porn." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_yes_vaginal' "You'll keep the others to yourself, but <<he npc_cook>> can release the latest video." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_vaginal' "Shake your head and decline the offer." 60>>]
<</if>>
<<else>>
"@@.npc_cook;So... you ready to make yer start in porn?@@"<br>
<br>
[<<moveTo 'event_cook_training_pornstar_yes_vaginal' "Nod and agree to start a side career in porn." 60>>]<br>
[<<moveTo 'event_cook_training_pornstar_no_vaginal' "Shake your head and decline the offer." 60>>]
<</if>>
<<else>>
<<=setup.getNpcName("npc_cook","first")>> shakes <<his npc_cook>> head. "@@.npc_cook;What'd I tell you about practice? Your focus is still too much on your own pleasure. Porn is about more than that, you need to be able to move past the intensity of the moment and prioritize the viewer.@@"<br>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_upgrade>>
<<printThought "Maybe I should practice more with that game expansion <<he npc_cook>> had me pick up?">>
<<else>>
You recall the game expansion <<he npc_cook>> recommended...
<</if>>
<br><br>
<<if $now.getUTCHours() > 12 || $now.getUTCHours() == 12 && $now.getUTCMinutes() > 30>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Glancing at the time you realise you are late getting back to work." 180>>]
<<else>>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Glancing at the time you realise you had best hurry or you'll be late back to work." 180>>]
<</if>>
<</if>>
</div>/*#
#desc: agree to be a vaginal porn star
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.porn.genre.vag = true>>
<<set $player.flags.porn.genre.cum = true>>
<<set $player.flags.porn.genre.humiliation = true>>
<<set $player.flags.porn.genre.feminization = true>>
<<set $player.flags.porn.genre.bimbofication = true>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<He npc_cook>> smiles in obvious satisfaction.
<<if $player.flags.porn.genre.anal || $player.flags.porn.genre.oral>>
"@@.npc_cook;Wonderful, your face belongs on screens everywhere, looking out at horny fans as your lips and throat spread around a cock! I can't wait to review and edit in this last footage — "<<=$player.flags.porn.pornname>> in: Breeding Mare" is going to be an instant classic alongside your previous work!@@"<br>
<br>
<<He npc_cook>> grins, then looks at <<his npc_cook>> watch. "@@.npc_cook;Oh, wow, look at the time, I need to get back to work, I'll talk to you later <<=$player.flags.porn.pornname>>!@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Return to your desk.' 180>>]
<<else>>
"@@.npc_cook;Wonderful, as much pleasure as I've had in it, I'm looking forward to sharing your cunt with the world! One final thing — you need to choose a name to use professionally.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.pornname" "" autofocus>><br>
<br>
[<<moveTo "event_cook_training_pornstar_name" "Confirm your chosen porn name." 30>>]<br>
<<else>>
[<<link "Tell <<him npc_cook>> your chosen porn name">><<openDialog "Your porn name:" "dialog_selectPornName">><</link>>]<br>
<</if>>
<</if>>
</div>/*#
#desc: decline becoming an vaginal porn star
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Though <<hes npc_cook>> still lingering in the afterglow of the intense cock-draining orgasm you gave <<him npc_cook>> <<hes npc_cook>> obviously a little disappointed by your decision.<br>
<br>
"@@.npc_cook;Damn,
<<if $player.flags.porn.genre.oral || $player.flags.porn.genre.anal>>
with all the success we've had with your previous video I was really hoping to share your lovely puss with the world world.
<<else>>
I really believe your amazing puss needs to be shared with the world.
<</if>>
Trust me, I'm experienced with these things and you've got one of the best! Well, I'll keep the footage safe, and private, to respect your wishes, but if you ever change your mind... well, we could do some real good business!@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' "Say you'll keep that in mind and head back to your desk.">>]
</div>/*#
#desc: vag training 4 - post-mastery practice
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.flags.porn.times_vag += 1>>
<<playerOrgasm>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
There's no prep or pre-amble today; you both know you can take <<=ps(setup.getNpcName("npc_cook","first"))>> <<if $fetish.bestiality_soft>>horse-cock<<else>>monster schlong<</if>> and <<he npc_cook>> wastes no time letting it out and slamming in.<br>
<br>
<<Hes npc_cook>> hard and fast and rough, just the way you love it and you orgasm several times before <<his npc_cook>> batter blasts you directly into your womb, your belly visibly bulging at <<his npc_cook>> organ-rearranging depth. You pant as <<he npc_cook>> withdraws, feeling fucked in a way few <<if $npc_cook.fem>>people<<else>>men<</if>> are capable of providing.<br>
<br>
"@@.npc_cook;Now that hits the spot... the DEEP spot!@@" <<He npc_cook>> jokes with a laugh, quickly cleaning up before helping you back to your feet where you fix your clothes and the two of you head back to your work stations.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'With a weary smile you return to your desk, struggling a bit to keep your thighs from bowing out.' 180>>]
</div>/*#
#desc: approach ex after yoga
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher","npc_yogateacher") setup.charImage("npc_exgirlfriend") "yogastudent">>
<div id="invframe" class="scrolltext">
<<if $scene.bold>>
You boldly approach <<=setup.getNpcName("npc_exgirlfriend","first")>> after class as she's chatting with <<=setup.getNpcName("npc_yogateacher","first")>> and another student. You ask if she'd like to get a post-workout smoothy and she looks you over, a playful smile that you well remember from your time dating flickering across your face.<br>
<br>
"@@.npc_exgirlfriend;You know... sure, you seem like you've come a long way since we broke up... and I'm curious to meet the new you. You wanna come, babe?@@" She asks, glancing at <<=setup.getNpcName("npc_yogateacher","first")>>.<br>
<br>
"@@.npc_yogateacher;I'll let the two of you catch up, I have a private lesson to take care of, anyway.@@" <<=setup.getNpcName("npc_yogateacher","first")>> states. From the way the other student is licking her lips, you have a feeling this lesson is going to be not just private, but intimate... and probably very... intense.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> smiles, not so much unconcerned as seemingly turned on that her <<boy npc_yogateacher>>friend is apparently fucking one of <<his npc_yogateacher>> students. "@@.npc_exgirlfriend;Sure thing, but don't wear yourself out. I'm feeling in the mood for some stretching this evening, my glutes could really use some attention.@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> turns back to you with that same grin, her eyes probing for your reaction to the sexually-charged exchange.<br>
<br>
[<<moveTo "event_exgirlfriend_intro_date_2" "Let's get that smoothy." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_exgirlfriend_intro_date_2" "You just remembered somewhere else you need to be." 600 "<<set $scene.accept=false>>">>]
<<else>>
You nervously approach your ex after class and ask if she'd like to catch a post-workout smoothy?<br>
<br>
She looks you over and shakes her head, her tone gentle as she lets you down. "@@.npc_exgirlfriend;Sorry, I've got some stuff to do right now, and I think maybe it'd be better for you to move on, anyway. Our relationship fell apart because we got stuck in a rut<<if $npc_exgirlfriend.flags.knowTruth >= 2>>, well... among other things<</if>>, I don't want to be an enabler for that again.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
<</if>>
</div>/*#
#desc: go to smoothie bar with ex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<applyExperience 'humiliation' 7 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher","npc_yogateacher") setup.charImage("npc_exgirlfriend") "yogastudent">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You momentarily flash back to the "old" you, how you had broken up with <<=setup.getNpcName("npc_exgirlfriend","first")>> over her "anal doesn't count" affair with <<=setup.getNpcName("npc_yogateacher","first")>> and now here she is, flirting with <<=setup.getNpcName("npc_yogateacher","first")>> in front of you while the yoga teacher all but declares <<his npc_yogateacher>> plans to fuck one of <<his npc_yogateacher>> other students.<br>
<br>
<<printThought "I really have changed since we were together...">><br>
<br>
You return <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> smile and confirm that you'd like to take her for smoothies, thanking <<=setup.getNpcName("npc_yogateacher","first")>> for the yoga lesson before <<him npc_yogateacher>> and <<his npc_yogateacher>> student go one way and you and your ex leave the gym for a next-door smoothie bar.<br>
<br>
[<<moveTo "event_exgirlfriend_intro_date_3" "Grab your drinks and sit down to chat." 600>>]
<<else>>
You look between your ex and <<=setup.getNpcName("npc_yogateacher","first")>>... and then back down, your momentary boldness disintegrating as you nervously apologise and explain that you just remembered a prior engagement.<br>
<br>
There is the slightest flicker of disappointment on <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> face, and then the smirking mask returns as she waves goodbye.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
<</if>>
</div>/*#
#desc: start chat with ex over smoothies
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -20>>
<<set $scene.topics = {
"work" : false,
"yoga" : false,
"you" : false,
"her" : false,
"submission" : false,
"date" : false
}>>
<</if>>
<<set $player.location to "JUICED Smoothie Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/smoothie_bar.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You pay for the drinks and take a seat, <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> eyes twinkling with interest as she waits for you to start the conversation.<br>
<br>
<<include "exSmoothieDiscussion">>
</div><<if $scene.topics.work>>
[@@.link_locked;You've already talked about her job.@@]<br>
<<if $scene.topics.yoga>>
[@@.link_locked;You've already talked about <<=setup.getNpcName("npc_yogateacher","first")>>.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_intro_date_4" 'Ask about her and <<=setup.getNpcName("npc_yogateacher","first")>>.' 60 "<<set $scene.topic='yoga'>>">>]<br>
<</if>>
<<if $scene.topics.you>>
[@@.link_locked;You've already talked about your prior relationship.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_intro_date_4" 'Ask about your past relationship.' 60 "<<set $scene.topic='you'>>">>]<br>
<</if>>
<<if $scene.topics.her>>
[@@.link_locked;You've already talked about her.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_intro_date_4" 'Ask about her.' 60 "<<set $scene.topic='her'>>">>]<br>
<</if>>
<<if $scene.topics.submission>>
[@@.link_locked;You've already discussed her coming out as a submissive.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_intro_date_4" "So she's a sub, now?" 60 "<<set $scene.topic='submission'>>">>]<br>
<</if>>
<<if $scene.topics.submission && $scene.topics.her>>
[<<moveTo "event_exgirlfriend_intro_date_5" "Ask her on a date date." 120>>]<br>
<</if>>
<<else>>
[<<moveTo "event_exgirlfriend_intro_date_4" "Ask about her job." 60 "<<set $scene.topic='work'>>">>]<br>
<</if>>
[<<moveTo "event_exgirlfriend_intro_date_end" "Call it a day." 60 "<<set $scene.topic='end'>>">>]/*#
#desc: start chat with ex over smoothies
#status: RELEASED 0.9.1.0
#ignore_spell: qubits,s,d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.topics[$scene.topic] = true>>
<</if>>
<<set $player.location to "JUICED Smoothie Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/smoothie_bar.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case "work">>
Trying for some conventional small-talk, you ask how her work is going?<br>
<br>
"@@.npc_exgirlfriend;Pretty good. My lab just got some new funding... some of it from your company, actually, so we've been purchasing more hardware and I am champing at the bit to see how some of my compiler optimisations are going to work with sixty-nine fully integrated qubits to play with.@@" She smirks "@@.npc_exgirlfriend;and yes, the nice joke has been made nonstop since the system parameters were decided on.@@" She chuckles. "@@.npc_exgirlfriend;I guess our careers have diverged even more than before, with you not even in the "tech" sector anymore.@@"<br>
<br>
The two of you chit-chat a little more, despite her joke she seems quite happy that you've found new success as a Secretary... and you remain just as lost when she gets a bit passionate and goes too far into the weeds discussing her job researching quantum compilers.
<<case "yoga">>
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> what, exactly, the deal is between her and <<=setup.getNpcName("npc_yogateacher","first")>>.<br>
<br>
She takes a moment to think before half shrugging. "@@.npc_exgirlfriend;I know this might come off as a bit weird given <<his npc_yogateacher>> role in blowing up our relationship... but <<=setup.getNpcName("npc_yogateacher","first")>> and I are pretty casual, more on the fuck-buddy side of things... an interesting mirror to you and I being "serious"... yet not actually having sex.@@" She shrugs again. "@@.npc_exgirlfriend;I think that's one of the realisations I've had, that I'm not ready to be tied down... even if I've discovered I like being tied up. <<=setup.getNpcName("npc_yogateacher","first")>> is on a similar wavelength, and <<he npc_yogateacher>>'s great in bed, thus... casual fuck-buddies.@@"
<<case "you">>
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> what she thinks of you and your time together, now that she's had time apart.<br>
<br>
"@@.npc_exgirlfriend;Look, you and I started dating in college and, well... we were pretty young and ignorant. You were certainly friendly and such, but I think the combination of your own lack of confidence, and my need to be dominated well... it was a relationship built to fail, even before one considers the meddling apparently done by your employer.@@" She smiles at you. "@@.npc_exgirlfriend;Now, though? Well, you certainly look a lot better, and happier, than you were towards the end, so I guess you've grown too? Not every relationship has to last forever, and even if we could have ended things more gracefully well... I value the time we had together as much as I'm glad we've both moved forward with our lives.@@"
<<case "her">>
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> what she's been doing since moving out?<br>
<br>
"@@.npc_exgirlfriend;Oh, the usual. Work, finding a little place of my own, dating... well, more exploring my sexuality and casually sleeping around and having fun at <<printShopName 'sex_club'>>... gotta make up for lost time, you know? So many cocks to suck and pussies to lick... and doms/dommes to serve...@@"
<<case "submission">>
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> if she's a sub, now?<br>
<br>
"@@.npc_exgirlfriend;Now? I think I was always a sub... thus the whole obediently going along with your virginity pledge... but yeah, now? Well, D/s is hella fun, and definitely a requirement for a relationship, 24/7 maybe, but more on the gentle side... I've dipped my toe in topping, but other than enjoying the intimidation factor of a big strap, and then pegging a cute butt from time to time, I'm a sub, not a switch.@@"
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "exSmoothieDiscussion">>
</div>/*#
#desc: invite ex on date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.date = setup.getNextDayOfWeek($now, 0, 21, 0, false)>>
<<set $scene.hasFreeTime = setup.hasFreeTime($scene.date, $player, $currentTasks, 7200)>>
<</if>>
<<set $player.location to "JUICED Smoothie Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/smoothie_bar.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> if she'd like to try going on a date again.<br>
<br>
She half smirks, somewhat seductively finishing her smoothy before responding. "@@.npc_exgirlfriend;Okay. Sure... but I've come quite a ways in terms of self-discovery from when we dated, and I'm not interested in just a rehash of what provably didn't work. So this is going to be a combination date and challenge: a night at <<printShopName 'sex_club'>> to see if you can handle me... if you're up for that Sunday evening?@@"<br>
<br>
<<if $scene.hasFreeTime>>
<<if setup.getTotalValue("dominance") > 10>>
[<<moveTo "event_exgirlfriend_intro_date_6_success" "You're ready." 120 "<<set $scene.accept=true>>">>]<br>
<<else>>
[<<moveTo "event_exgirlfriend_intro_date_6" "You're actually busy that night..." 120 "<<set $scene.accept=true>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_exgirlfriend_intro_date_6" "You're actually busy that night..." 120 "<<set $scene.accept=true>>">>]<br>
<</if>>
[<<moveTo "event_exgirlfriend_intro_date_6" "Actually... you aren't ready for that." 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: successfully invite ex on date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'exgf_club_date' $scene.date>>
<</if>>
<<set $player.location to "JUICED Smoothie Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/smoothie_bar.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You agree to <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> proposal and she grins. "@@.npc_exgirlfriend;Alright! And I'll be honest... I'm actually pretty hyped to see what sort of performance you can put together. I mean, obviously you're very much no longer the person I dated... but I'm really interested to see who you've become. Oh, and speaking of seeing, you better dress for the occasion, the clothes maketh the <<if $player.identify_as =='female'>>man... or woman, as the case may be<<else>>man<</if>>, and when I want to see something that'll have me thinking<<if $player.identify_as =='female'>> "Yes, Mistress" <<elseif $player.identify_as == "male">> "Yes, Master" <<else>> "Yes, Overseer" <</if>>right from the jump.@@"<br>
<br>
She finishes her smoothie with a sultry wink and heads off.<br>
<br>
[<<moveTo "room_citymap" "Be on your way." 300>>]
</div>/*#
#desc: successfully invite ex on date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "JUICED Smoothie Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/smoothie_bar.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if setup.getTotalValue("dominance") > 10>>
You say you're ready to prove yourself to <<=setup.getNpcName("npc_exgirlfriend","first")>> and she stifles a laugh.<br>
<br>
"@@.npc_exgirlfriend;Sorry... I guess that was a bit rude but, well... <<if setup.getTotalValue("dominance") > 0>>I can see the hints of dominance... but you've got a lot more practicing to do<<else>>you still don't have a dominant bone in your body<</if>>! If that somehow changes, well...@@"
<<else>>
You say you're ready to prove yourself to <<=setup.getNpcName("npc_exgirlfriend","first")>>, but that you can't make this Sunday.<br>
<br>
"@@.npc_exgirlfriend;Well give me a call next week if your schedule clears up, I don't really plan things out much more than a week in advance.@@"
<</if>>
<<else>>
You back down and reply
<</if>>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> finishes her smoothie and thanks you for taking time to catch up.<br>
<br>
"@@.npc_exgirlfriend;Give me a call sometime... I'll tell you you've actually sparked my curiosity, and I'm interested to see how you'd... perform.@@"<br>
<br>
She winks and walks away.<br>
<br>
[<<moveTo "room_citymap" "Be on your way." 300>>]
</div>/*#
#desc: finish chat with ex over smoothies
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "JUICED Smoothie Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/smoothie_bar.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You finish your smoothie and decide to call it a day. <<=setup.getNpcName("npc_exgirlfriend","first")>> nods.<br>
<br>
"@@.npc_exgirlfriend;Well it was nice chatting, I guess I'll see you around later.@@" She walks away.<br>
<br>
[<<moveTo "room_citymap" "Be on your way." 300>>]
</div>/*#
#desc: re-invite ex to club date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set $scene.date = setup.getNextDayOfWeek($now, 0, 22, 30, false)>>
<<set $scene.hasFreeTime = setup.hasFreeTime($scene.date, $player, $currentTasks, 7200)>>
<<if $scene.hasFreeTime && setup.getTotalValue("dominance") > 10>>
<<addTaskById 'exgf_club_date' $scene.date>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> about a night together at <<printShopName 'sex_club'>>?<br>
<br>
<<if !$scene.hasFreeTime>>
"@@.npc_exgirlfriend;Sorry, this week isn't looking good, hit me up next week and we'll see if it works.@@"
<<elseif setup.getTotalValue("dominance") > 10>>
"@@.npc_exgirlfriend;Alright! I will see you Sunday night... and we will see what happens from there...@@"
<<else>>
"@@.npc_exgirlfriend;Sorry... but just from the hesitancy in your voice I don't think you have what it takes to <<if $player.identify_as =='female'>>domme<<else>>dom<</if>> me. That's fine and all, being a total sub is great... but as one of those myself, well... I need me some dominance.@@"
<</if>>
<br><br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: failed to show up for ex club date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ["room_sex_club_exterior","room_sex_club_enterance","event_sex_club_interior","event_sex_club_play","event_sex_club_bar","event_sex_club_dance","event_sex_club_bathroom"].includes(passage())>>
<<initRoom>>
<<moveTo "event_exgirlfriend_date_club_1">>
<</if>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_exgirlfriend","first")>>.<br>
<br>
"@@.npc_exgirlfriend;Hey, so... what happened to promptness? I remember you used to be really diligent about being on-time, and I'd say that's an even bigger priority if you're going to be a <<if $player.identify_as =='female'>>domme<<else>>dom<</if>>, right? I guess give me a call if you want to try this again. For now, I'm gonna go have fun on my own.@@" She hangs up.<br>
<br>
<<printThought "Damnit">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: arrive for exgirlfriend club date
#status: RELEASED 0.9.1.0
#*/1
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info = true>>
<<if setup.checkTaskUntimedComplete("exgf_club_date", true)>>
<<set $scene.club_actions = {
"collar" : false,
"bar" : "",
"dance" : "",
"play" : ""
}>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_topless")>>
<div id="invframe" class="scrolltext">
<<if setup.checkTaskUntimedComplete("exgf_club_date", true)>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> steps out of the changing room to greet you with a smile, already dressed for the club as she wiggles her tits at you seductively. "@@.npc_exgirlfriend;Yes, <<if $player.identify_as =='female'>>ma'am<<else>>sir<</if>>! It's as if you're a whole other person than when we were dating... now to find out if that difference is more than just a facade...@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> starts towards the club entrance when <<=setup.getNpcName("npc_guard","formal")>> catches your eye and glances towards a display of the club's "rental collars." <br>
<br>
[<<moveTo "event_exgirlfriend_date_club_2" 'Collar <<=setup.getNpcName("npc_exgirlfriend","first")>> first.' 300 "<<set $scene.club_actions.collar=true>>">>]<br>
[<<moveTo "event_exgirlfriend_date_club_2" "Head inside." 300 "<<set $scene.club_actions.collar=false>>">>]
<<else>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> looks you over and frowns. "@@.npc_exgirlfriend;I know this might be shallow but... I told you to dress for the occasion, and this? This ain't it. Give me a call some other time if you're ready to take my challenge seriously, otherwise, well... I'll catch you around.@@"<br>
<br>
She strides into the club without you.<br>
<br>
[<<moveTo "event_sex_club_interior" "Well that flopped." 180>>]
<</if>>
</div>/*#
#desc: exgirlfriend club date: head into club
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.club_actions.collar>>
<<set $scene.exgf_club_art = setup.charImage("npc_exgirlfriend","npc_exgirlfriend_topless_collar")>>
<<else>>
<<set $scene.exgf_club_art = setup.charImage("npc_exgirlfriend","npc_exgirlfriend_topless")>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" $scene.exgf_club_art>>
<div id="invframe" class="scrolltext">
<<if $scene.club_actions.collar>>
You motion for <<=setup.getNpcName("npc_exgirlfriend","first")>> to wait as you grab a collar and leash and bring them to her throat. She smirks "@@.npc_exgirlfriend;collaring me already? How presumptuous!@@" She states, even as she presents her throat and gives a submissive shudder as you buckle the collar around her neck. "@@.npc_exgirlfriend;Mmmm, NOW I'm feeling in submissive head-space, heh, remember that Halloween party where we were going to go as goths but you chickened out and just went as "IT Worker"... that costume had such a cute collar... who knows where we would have been if you'd had the courage to buckle it on me?@@"<br>
<br>
You give the leash a slight tug to stop her teasing over the embarrassing memory and she grins, "@@.npc_exgirlfriend;oooh, that's more like it.@@"<br>
<br>
You lead the way into the club with <<=setup.getNpcName("npc_exgirlfriend","first")>> following obediently, and enthusiastically, behind.<br>
<br>
You
<<else>>
You follow <<=setup.getNpcName("npc_exgirlfriend","first")>> into the club and look around,
<</if>>
considering where you should do to impress her with your new dominant skills.<br>
<br>
<<include "exgfClubChoices">>
</div><<if $scene.club_actions.bar>>
[@@.link_locked;You already took <<=setup.getNpcName("npc_exgirlfriend","first")>> to the bar.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_date_club_3_bar_1" "Lead the way to the bar." 300>>]<br>
<</if>>
<<if $scene.club_actions.dance>>
[@@.link_locked;You already took <<=setup.getNpcName("npc_exgirlfriend","first")>> to the dance floor.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_date_club_3_dance_1" "Lead the way to the dance floor." 300>>]<br>
<</if>>
<<if $scene.club_actions.play>>
[@@.link_locked;You already took <<=setup.getNpcName("npc_exgirlfriend","first")>> to the play area.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_date_club_3_play_1" "Lead the way to the play area." 300>>]<br>
<</if>>
<<if $scene.club_actions.collar && $scene.club_actions.bar == 'restraints' && $scene.club_actions.play == 'spank' && $scene.club_actions.dance == 'formal'>>
[<<moveTo "event_exgirlfriend_date_club_4_perfect" "Let the evening roll on." 4000>>]
<<elseif $scene.club_actions.bar && $scene.club_actions.dance && $scene.club_actions.play>>
[<<moveTo "event_exgirlfriend_date_club_4" "Let the evening roll on." 4000>>]
<<else>>
[@@.link_locked;It looks like <<=setup.getNpcName("npc_exgirlfriend","first")>> is not yet ready to make her assessment.@@]
<</if>>/*#
#desc: exgirlfriend club date: bar
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" $scene.exgf_club_art>>
<div id="invframe" class="scrolltext">
You <<if $scene.club_actions.collar>>lead <<=setup.getNpcName("npc_exgirlfriend","first")>><<else>>walk over<</if>> to the bar, where you find a handful of doms and dommes in a spirited discussion about submissive sleeping locations.<br>
<br>
"@@.generic_female1;A slave sleeping anywhere but a cage is just encouraging rebellion and brattiness. To invite them into bed like some sort of equal pure folly.@@" The first woman states, her gagged and leashed slave kneeling at the foot of her barstool, red marks across its ass and a strenuous reverse-prayer bound position speaking to its Mistress' harshness.<br>
<br>
"@@.generic_male2;If you want an exhausted, run-down submissive, perhaps. No, sleeping in bed is a fine reward for good behaviour that will have the submissive eager to serve during their waking hours, which is the important part.@@" States a second <<man>> as <<he>> strokes <<his>> subs head as the smiling sub rests its head on <<his>> lap.<br>
<br>
Noting your approach, attention turns to you, "@@.generic_male1;so, what do you think? Where should slave sleep?@@"<br>
<br>
<<if $scene.club_actions.collar>>At the end of her leash, <</if>><<=setup.getNpcName("npc_exgirlfriend","first")>> looks at you expectantly.<br>
<br>
[<<moveTo "event_exgirlfriend_date_club_3_bar_2" "In a cage." 300 "<<set $scene.club_actions.bar='cage'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_club_3_bar_2" "In bed." 300 "<<set $scene.club_actions.bar='bed'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_club_3_bar_2" "In bed... cuffed and collared." 300 "<<set $scene.club_actions.bar='restraints'>>">>]
</div>/*#
#desc: exgirlfriend club date: bar result
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" $scene.exgf_club_art>>
<div id="invframe" class="scrolltext">
<<switch $scene.club_actions.bar>>
<<case 'cage'>>
You agree with the harsh Mistress that a slave's place when not actively serving is caged and restrained.<br>
<br>
"@@.generic_female1;Precisely! Bind the body, restrain the mind, and your slave's obedience will grow in kind. Isn't that right?@@" The add with a glance towards their tightly restrained slave, the sub nodding obediently as the massive gag glistens between their lips.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> seems a bit intimidated by your comment, but makes no reply of her own... perhaps mindful of the other slave's gag and her own minimal restraints in light of your comment.
<<case 'bed'>>
You agree that a submissive's service does not have to be 24/7 to be valued, and taking off the proverbial collar at night is perfectly reasonable.<br>
<br>
The harsh Mistress sniffs, looking down her nose at you with obvious superiority.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> wilts ever so slightly at your comment, though she makes no further reply.
<<case 'restraints'>>
You point out that sending a submissive off to a cage at night actually means they are serving less than if they were warming your bed... and that some padded cuffs and their sleeping collar will do plenty to ensure they enjoy docile dreamland.<br>
<br>
The kinder <<Master>> smiles as they scratch behind their sub's ear. "@@.generic_male2;Quite so, proper obedience is offered joyfully, not forced.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> eyes twinkle at your comment.
<<default>>
ERROR: unexpected scene.club_actions.bar <<=$scene.club_actions.bar>>
<</switch>>
<br><br>
The discussion group closes back in around itself and, after a thirst-quenching drink, you consider where to go next...<br>
<br>
<<include "exgfClubChoices">>
</div>/*#
#desc: exgirlfriend club date: play
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" $scene.exgf_club_art>>
<div id="invframe" class="scrolltext">
You <<if $scene.club_actions.collar>>lead <<=setup.getNpcName("npc_exgirlfriend","first")>><<else>>wander through<</if>> the play area, <<=setup.getNpcName("npc_exgirlfriend","first")>> acting somewhat restless<<if $scene.club_actions.collar>> and pulling on her leash<</if>> as you pass by a unoccupied spanking bench...<br>
<br>
[<<moveTo "event_exgirlfriend_date_club_3_play_2" "Give her a hard flogging." 300 "<<set $scene.club_actions.play='flog'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_club_3_play_2" "Give her a nice maintenance spanking." 300 "<<set $scene.club_actions.play='spank'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_club_3_play_2" "Keep walking." 300 "<<set $scene.club_actions.play='none'>>">>]
</div>/*#
#desc: exgirlfriend club date: play result
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" $scene.exgf_club_art>>
<div id="invframe" class="scrolltext">
<<switch $scene.club_actions.play>>
<<case 'flog'>>
You sternly strap <<=setup.getNpcName("npc_exgirlfriend","first")>> down and she watches nervously as you grab a flogger. She gasps as the sharp tails slash across her exposed flesh, closing her eyes and panting in concentration as, while careful to keep your cool rather than let thoughts of past conflicts strengthen your blows, you give her a nice hard flogging.<br>
<br>
By the time you're finished she's breathless, and a little unsteady, leaning against you for support as she recovers and you continue on out of the play area.
<<case 'spank'>>
You decide that a nice hand-administered spanking would be just the ticket to show <<=setup.getNpcName("npc_exgirlfriend","first")>> that you have the skills to "keep her in line." She leaps up onto the spanking bench with enthusiasm, wiggling her butt in invitation as you as you quickly strap her down before landing a nice loud SMACK on her bottom.<br>
<br>
"@@.npc_exgirlfriend;Mmmm,@@" she purrs, already wet between the thighs as you land another blow. "@@.npc_exgirlfriend;I needed that,@@" she gasps, her eyes fluttering as she dances on the edge of sub-space as you give her a nice hand-paddling. By the time you finish reddening her bum and guide her back to her feet she's swaying slightly, leaning against you for support with a happy smile on her face as you continue on out of the play area.
<<case 'none'>>
You ignore the spanking bench and keep on walking through the play area, pausing a few times to watch other couples, but not doing anything to or with <<=setup.getNpcName("npc_exgirlfriend","first")>>.
<<default>>
ERROR: unexpected scene.club_actions.play <<=$scene.club_actions.play>>
<</switch>>
<br><br>
<<include "exgfClubChoices">>
</div>/*#
#desc: exgirlfriend club date: dance
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" $scene.exgf_club_art>>
<div id="invframe" class="scrolltext">
You <<if $scene.club_actions.collar>>lead <<=setup.getNpcName("npc_exgirlfriend","first")>><<else>>approach<</if>> the dance floor, where it looks like there is a clear split between dommes watching their subs rave together, those same subs partying out, and more formal partners twirling around the floor with dommes in the lead...<br>
<br>
You were never much for going out dancing before, but <<=setup.getNpcName("npc_exgirlfriend","first")>> is looking at you with an enticing smirk, waiting to see what you're going to do...<br>
<br>
[<<moveTo "event_exgirlfriend_date_club_3_dance_2" "Watch her dance." 300 "<<set $scene.club_actions.dance='dom'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_club_3_dance_2" "Have some fun raving out." 300 "<<set $scene.club_actions.dance='sub'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_club_3_dance_2" "Dance her around the floor." 300 "<<set $scene.club_actions.dance='formal'>>">>]
</div>/*#
#desc: exgirlfriend club date: dance result
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" $scene.exgf_club_art>>
<div id="invframe" class="scrolltext">
<<switch $scene.club_actions.dance>>
<<case 'dom'>>
<<if $scene.club_actions.collar>>Still holding <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> leash, you<<else>>You<</if>> stand with the other doms and watch as <<=setup.getNpcName("npc_exgirlfriend","first")>> enjoys a dance. While the two of you never got around to taking lessons or anything, <<=setup.getNpcName("npc_exgirlfriend","first")>> has a bit of natural rhythm and she moves to the music, putting on a show while grinning and clearly enjoying herself.
<<case 'sub'>>
Remembering all the times you turned down <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> requests to go out dancing, you join her on the dance floor, mingling with the raving subs as you jam out to the high-tempo beats, enjoying the music... and the enticing way <<=setup.getNpcName("npc_exgirlfriend","first")>> moves to it.
<<case 'formal'>>
<<if $scene.club_actions.collar>>You wind the leash around your hand as you<<else>>You<</if>> pull <<=setup.getNpcName("npc_exgirlfriend","first")>> in to a dance position, <<if setup.getTotalValue("dexterity") > 10>> surprising her with how gracefully you<<else>>doing your best to<</if>> guide her around the dance-floor.
<<default>>
ERROR: unexpected scene.club_actions.dance <<=$scene.club_actions.dance>>
<</switch>>
<br><br>
After a few tracks you decide it's time to head on, and you lead <<=setup.getNpcName("npc_exgirlfriend","first")>> off the dance floor.<br>
<br>
<<include "exgfClubChoices">>
</div>/*#
#desc: exgirlfriend club date: perfection
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_exgirlfriend_1'
5
'theme_technician_exgirlfriend_1'
true
>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" $scene.exgf_club_art>>
<div id="invframe" class="scrolltext">
The evening runs on and, finally <<=setup.getNpcName("npc_exgirlfriend","first")>> turns to you with a sly grin. "@@.npc_exgirlfriend;Well! I have to say... I'm impressed. If you'd been like this back when we were dating before... well, no sense re-litigating the past, we're both different now than we were then... and I REALLY like the new you.@@" She bites her lip as she toys with her collar.<br>
<br>
"@@.npc_exgirlfriend;If you were like this the whole time? Well... wearing your collar would be more than just tempting... you managed to thread the needle of confident in your own dominance without being harsh or cruel... yeah, that test I was putting you through? You passed with flying colours and if you want to get together for another date sometime? Well... you have my number.@@"<br>
<br>
She winks as you finally remove her collar, getting a kiss in exchange before she heads for the changing rooms and you prepare to leave.<br>
<br>
[<<moveTo "room_citymap" "Head out." 180>>]
</div>/*#
#desc: exgirlfriend club date: failed result
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" $scene.exgf_club_art>>
<div id="invframe" class="scrolltext">
<<if $scene.club_actions.collar>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> removes her collar and shakes her head. "@@.npc_exgirlfriend;I thought thinks were starting off so well, but then...@@"
<<else>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> runs a hand along her bare neck. "@@.npc_exgirlfriend;I guess I should have known when you didn't collar me for the evening that this wasn't going to work out...@@"
<</if>>
<br><br>
<<switch $scene.club_actions.bar>>
<<case 'cage'>>
"@@.npc_exgirlfriend;What you said at the bar... well, it seems you rocketed past me and are looking for something a bit more hardcore than I am.@@"
<<case 'bed'>>
"@@.npc_exgirlfriend;What you said at the bar... I guess you still don't have it in you to maintain a real dominant relationship, and that's definitely something I want.@@"
<<case 'restraints'>>
"@@.npc_exgirlfriend;What you said at the bar... well, it definitely had me feeling things... but I know enough now not to settle for a partially perfect relationship.@@"
<<default>>
ERROR: unexpected scene.club_actions.bar <<=$scene.club_actions.bar>>
<</switch>>
<br><br>
<<switch $scene.club_actions.dance>>
<<case 'dom'>>
"@@.npc_exgirlfriend;I did enjoy putting on a show for you on the dance floor... but I like dancing for the intimacy, and that was kind of lost with you just standing and watching.@@"
<<case 'sub'>>
"@@.npc_exgirlfriend;Finally getting to dance with you after all these years was certainly a trip... though it felt like you wanted to be frolicking as a fellow sub, rather than being the one to hold my leash...@@"
<<case 'formal'>>
"@@.npc_exgirlfriend;Your actions on the dance floor? Perfection, pressed together, surrendering to both the music and your direction? That's what I've always wanted.@@"
<<default>>
ERROR: unexpected scene.club_actions.dance <<=$scene.club_actions.dance>>
<</switch>>
<br><br>
<<switch $scene.club_actions.play>>
<<case 'flog'>>
"@@.npc_exgirlfriend;That flogging... well, maybe if I'd actually been naughty, but out of the blue like that? No, that was a bit harsher than I'm looking for. I'm looking for a <<if $player.identify_as =='female'>>domme<<else>>dom<</if>>, not a tyrant.@@"
<<case 'spank'>>
"@@.npc_exgirlfriend;That spanking? Not too hard... but also not too soft? Yeah, that's exactly what I was secretly wanting all those times I wiggled my butt at you back when we were dating.@@"
<<case 'none'>>
"@@.npc_exgirlfriend;It seems that you're even more oblivious now than before. Like, back when we were dating I'm not sure if I realised myself that every time I wiggled my butt at you, I was secretly wanting you to spank me, but now? Well... you literally walked through an S&M play area and didn't ONCe throw me on a spanking bench... I mean, what's a girl gotta do? Carry around a neon sign saying SPANK ME?@@"
<<default>>
ERROR: unexpected scene.club_actions.play <<=$scene.club_actions.play>>
<</switch>>
<br><br>
She shakes her head.
<<if $scene.club_actions.bar == 'cage' && $scene.club_actions.play == 'flog' && $scene.club_actions.dance == 'dom'>>
"@@.npc_exgirlfriend;Well... it seems that sometimes there's too much of good thing. I'm impressed that you've developed into such a powerful dom compared to how you used to be... but you sacrificed a bit too much of the compassion that attracted me to you way back. Good luck finding that 24/7 hardcore pain-slut, but I'm just not that girl.@@"
<<elseif $scene.club_actions.bar == 'bed' && $scene.club_actions.play == 'none' && $scene.club_actions.dance == 'sub'>>
"@@.npc_exgirlfriend;I guess that, in the end... we are a case of "and they were both bottoms!" And that's fine... but I think it just reinforces that our separation was a long time coming. Good luck at finding a perfect domme of your own, though!@@"
<<else>>
"@@.npc_exgirlfriend;I guess I'll thank you for making an attempt... but even the new you isn't really a match for what I'm looking for. And that's fine! It's better than we accept that and find our own happiness rather than get stuck in a relationship that isn't fulfilling like we were before.@@"
<</if>>
<br><br>
She waves goodbye and heads for the changing rooms and you prepare to leave.<br>
<br>
[<<moveTo "room_citymap" "Head out." 180>>]
</div>/*#
#desc: ask ex over to your flat
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _date = setup.setNextDate($now, 0, 22, 0, false)>>
<<set $scene.hasFreeTime = setup.hasFreeTime(_date, $player, $currentTasks, 7200)>>
<<if $scene.hasFreeTime>>
<<addTaskById 'exgf_your_flat_first_visit' _date>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> if she'd like to come over to your flat this evening?<br>
<br>
<<if $scene.hasFreeTime>>
"@@.npc_exgirlfriend;Ohoho! You really have gotten bolder, I remember before we moved in together I was always the one who had to propose dates... As to your question? Sure, I've got some stuff to wrap up, but I'll come over around <<if $options.militaryTime>>22:00<<else>>ten pm<</if>>.@@"
<<else>>
"@@.npc_exgirlfriend;Ohoho! Unfortunately, tonight isn't good, maybe some other time.@@"
<</if>>
<br><br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: failed to show up for ex flat date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($scene.beforetasklocation.last(),"home")>>
<<completeTask 'exgf_your_flat_first_visit' $now true>>
<<initRoom>>
<<moveTo "event_exgirlfriend_your_flat_1">>
<</if>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_exgirlfriend","first")>>.<br>
<br>
"@@.npc_exgirlfriend;Hey, so... I'm at your place... but you aren't? This is really disappointing... and annoying. If you're going to have me over, you should be there to greet me. Some other time, I guess?@@" She hangs up.<br>
<br>
<<printThought "Damnit">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: ex arrives at your flat
#status: RELEASED 0.9.1.0
#ignore_spell: domm
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.flatVisit = {
"herCollar" : false,
"chuck" : false,
"blackbox" : false,
"exgirlfriendImage" : setup.charImage("npc_exgirlfriend")
}>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" $scene.flatVisit.exgirlfriendImage>>
<div id="invframe" class="scrolltext">
You let <<=setup.getNpcName("npc_exgirlfriend","first")>> in and she grins. "@@.npc_exgirlfriend;Like coming home... but, in all seriousness, you're still in the application phase for <<if $player.identify_as =='female'>>girl<<else>>boy<</if>>friend-<<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>... and it just got harder. Anyone can be domm-y at a literal fetish club, but here, domestically, where you have to overcome prior habits and memories? That's a REAL test. Now come on, show me the place, I wanna see how you've been taking care of it...@@"<br>
<br>
<<if setup.getTotalValue("dominance") >= 15>>
[<<moveTo "event_exgirlfriend_your_flat_2" "She needs a collar first." 300>>]<br>
<</if>>
[<<moveTo "event_exgirlfriend_your_flat_3" "Lead her through the flat." 300 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_exgirlfriend_your_flat_3" "Actually... you need more time to prepare." 180 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: ex tours your flat: collar
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.flatVisit.exgirlfriendImage = setup.charImage("npc_exgirlfriend","npc_exgirlfriend_collar")>>
<<set $scene.flatVisit.herCollar = true>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" $scene.flatVisit.exgirlfriendImage>>
<div id="invframe" class="scrolltext">
You point out that <<=setup.getNpcName("npc_exgirlfriend","first")>> doesn't live here anymore and, since you are now <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>> of the house, she needs to be collared before you give her a tour.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> blinks, and then grins. "@@.npc_exgirlfriend;Oh... someone has learned the way to a girl's heart starts with her throat... well, this girl, at least. These days, I always come prepared for such things,@@" she explains as she opens her purse and pulls out a leather collar. "@@.npc_exgirlfriend;Someday I hope to earn a proper one, but until then, I never leave home without my favourite play collar. Well come on, then... make me yours for the next few hours...@@"<br>
<br>
She holds her hair out of the way as you buckled the collar around her neck and she grins with excitement.<br>
<br>
"@@.npc_exgirlfriend;Much better. Now, show me what you've done with the old place!@@"<br>
<br>
[<<moveTo "event_exgirlfriend_your_flat_3" "Lead her through the flat." 300 "<<set $scene.abort=false>>">>]<br>
</div>/*#
#desc: ex tours your flat: cleanliness
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.flatVisit.clean = $player.flat.dirty < 3>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" $scene.flatVisit.exgirlfriendImage>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
It may ding your dominant cred... but you decide that you aren't ready for this level of pressure and ask if <<=setup.getNpcName("npc_exgirlfriend","first")>> could come back some other night.<br>
<br>
She smirks. "@@.npc_exgirlfriend;Getting cold feet? Alright, well... give me a call sometime when you're ACTUALLy ready, hmm?@@"<br>
<br>
She leaves.<br>
<br>
[<<moveTo "room_foyer" "Close the door behind her." 60>>]
<<else>>
You start to lead <<=setup.getNpcName("npc_exgirlfriend","first")>> through the flat
<<if $scene.flatVisit.clean>>
and she nods. "@@.npc_exgirlfriend;Good, good. I remember I'd have to remind you to do chores from time to time, so I was worried about you being on your own... but this is great, I'm proud of you!@@" She winks "@@.npc_exgirlfriend;Of course, if I was <<if $scene.flatVisit.herCollar>>wearing your collar for real<<else>>actually your sub<</if>> well... I'd be more than happy to be supervised as your kinky, subby maid. Now, for the next check, let's see how you've been taking care of <<=setup.getNpcName('npc_chuck', 'suffix')>>...@@"<br>
<br>
[<<moveTo "event_exgirlfriend_your_flat_4" "Show her your leafy friend." 300>>]
<<else>>
and she almost immediately frowns. "@@.npc_exgirlfriend;No... this will not do. If I was <<if $scene.flatVisit.herCollar>>wearing your collar for real<<else>>actually your sub<</if>> well... I'd be more than happy to be supervised as your kinky, subby maid. But you invited me over, and to show me the flat in a state like this? Nope, I'm calling it here. Let me know if you want to try again and take things seriously.@@"<br>
<br>
She leaves.<br>
<br>
[<<moveTo "room_foyer" "Close the door behind her." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: ex tours your flat: chuck
#status: RELEASED 0.9.1.0
#ignore_spell: d,s
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.flatVisit.chuck = $npc_chuck.stage > 0 || $npc_chuck.timebased.water >= 50>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() $scene.flatVisit.exgirlfriendImage>>
<div id="invframe" class="scrolltext">
<<switch $npc_chuck.stage>>
<<case 0>>
<<if $npc_chuck.timebased.water < 50>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> sticks a finger in <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> dry soil. "@@.npc_exgirlfriend;No, no, this will not do! If you cannot take care of plant, how can you be trusted to take care of a sub!? A D/s relationship is rooted in trust, this is a very bad sign. Still, the tour isn't over, how about you show me that black box I left for you?@@"
<<else>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> smiles as she checks on <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> water levels with satisfaction. "@@.npc_exgirlfriend;Very good, <<he npc_chuck>> looks as green and perky as I remembered. That's definitely a good sign, now, where's that black box I left for you?@@"
<</if>>
<<case 1 2>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> smiles at the sight of <<=setup.getNpcName('npc_chuck', 'suffix')>> in <<his npc_chuck>> new, larger pot. "@@.npc_exgirlfriend;My, my, <<he npc_chuck>> is really shooting up! You must be feeding <<him npc_chuck>> well! That's definitely a good sign, now, where's that black box I left for you?@@"
<<case 3 4>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> gawks at <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> massive size. "@@.npc_exgirlfriend;THIS is <<=setup.getNpcName('npc_chuck', 'suffix')>>? Our cute, green, SMALL house-plant?@@"<br>
<br>
You nod, explaining that, with some help from <<=setup.getNpcName("npc_botanist","first")>>, <<=setup.getNpcName('npc_chuck', 'suffix')>> has grown up fast. Not just in size, but also in skills, you note as you stroke one of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> phallic appendages and note that, apparently, the plant-store owner had first recommended <<=setup.getNpcName('npc_chuck', 'suffix')>> as a way to "help" yours and <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> relationship.<br>
<br>
"@@.npc_exgirlfriend;Wait... you're telling me that these aren't just for show that this isn't just a big fucking plant... but a big FUCKING plant?@@"<br>
<br>
You nod and <<=setup.getNpcName("npc_exgirlfriend","first")>> bites her lip. "@@.npc_exgirlfriend;Oh my... definitely going to put a pin in that for later... but come on, let's continue the tour... where's that black box I left for you?@@"
<<default>>
ERROR: unexpected npc_chuck.stage <<=$npc_chuck.stage>>
<</switch>>
<br><br>
[<<moveTo "event_exgirlfriend_your_flat_5" 'Show her your "Dreammaker" setup.' 300>>]
</div>/*#
#desc: ex tours your flat: black box
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.flatVisit.blackbox = $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/blackbox_open01.mp4">>
<div id="invframe" class="scrolltext">
You show <<=setup.getNpcName("npc_exgirlfriend","first")>> where you've setup the "Dreammaker" fucking machine and she
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.times_played>>
grabs a "controller" and brings up the status screen for <<if $fetish.get_raped>> "Rape Rape Revolution." <<else>> "Space Slut Supreme." <</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
"@@.npc_exgirlfriend;Wow, you beat <<if $fetish.get_raped>> "Rape Rape Revolution?" <<else>> "Space Slut Supreme?" <</if>>colour me impressed. Very impressed.@@" She grins at you with a hunger in her eyes that sends tingles down your spine. "@@.npc_exgirlfriend;Come on, then, all that's left is the bedroom...@@"
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier || $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
"@@.npc_exgirlfriend;Hmm, looks like you've played <<if $fetish.get_raped>> "Rape Rape Revolution," <<else>> "Space Slut Supreme," <</if>>but you haven't managed to beat it. Encouraging... but disappointing, all at the same time. Come on, then, all that's left is the bedroom...@@"
<<else>>
"@@.npc_exgirlfriend;Hmm, you've barely played... disappointing. Still... we're almost done, so how about you show me the bedroom?@@"
<</if>>
<<else>>
frowns. "@@.npc_exgirlfriend;I knew you'd unlocked and played with this little present that I left behind, just as I hoped but this... you haven't upgraded it or gotten any games? No, no, no. It is just that sort of lack of adventurousness that lead to our break-up! This is a very bad sign. Still... we're almost done, so how about you show me the bedroom?@@"
<</if>>
<br><br>
[<<moveTo "event_exgirlfriend_your_flat_6" 'Show her the bedroom.' 300>>]
</div>/*#
#desc: ex tours your flat: bedroom
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'ex_girlfriend' 'theme_psychiatrist_ex_rekindle'
7
'theme_psychiatrist_ex_intro_1'
false
>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() $scene.flatVisit.exgirlfriendImage>>
<div id="invframe" class="scrolltext">
<<switch $status_flat.bedroom>>
<<case 0>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> shakes her head. "@@.npc_exgirlfriend;You know, I had secretly hoped you'd decided to redecorate... but this looks practically the same as when I still lived here!@@"
<<case 1>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> gawks at your re-decorated bedroom. "@@.npc_exgirlfriend;Wow, if I wasn't already submissive, just walking into this room might make me so!@@"
<<case 2>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> gawks at your re-decorated bedroom. "@@.npc_exgirlfriend;Wow, when you decided to embrace girl-mode... you really went all out, looking at all this pink I swear I feel my blood-sugar spiking!@@"
<<case 3>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> gawks at your re-decorated bedroom. "@@.npc_exgirlfriend;Wow, this is impressive, like a little slice of castle in the middle of a boring apartment building, very chic!@@"
<<case 4>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> gawks at your re-decorated bedroom. "@@.npc_exgirlfriend;Being a sub in this sort of environment feels a bit dangerous... but I like it, very punk and retro!@@"
<<default>>
ERROR: unexpected status_flat.bedroom <<=$status_flat.bedroom>>
<</switch>>
<br><br>
<<if $scene.flatVisit.herCollar && $scene.flatVisit.clean && $scene.flatVisit.chuck && $scene.flatVisit.blackbox>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> does a leap into the bed, bouncing twice a she turns over to present her rear. "@@.npc_exgirlfriend;Alright, so you've passed round two of my trials... and now for a reward. I remember I once said anal doesn't count... well, I was metaphorically full of it then, but also... well, for me, at least, anal counts, anal counts A LOT. Since we broke up I've experimented with a whole bunch of sexual positions and combinations but... well, I really like it in the butt. Like... REALLY like it like... "I've pondered going anal-only" liked it... so, with that said, come on <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>, do what you should have done years ago and fuck me. Fuck me in the ass.@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_exgirlfriend_your_flat_7" "Yes ma'am." 600 "<<set $scene.anal='penis'>>">>]<br>
<<elseif setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_exgirlfriend_your_flat_7" "You just need to unlock yourself..." 600 "<<set $scene.anal='unlock'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis>> is locked up and inaccessible.@@]<br>
<</if>>
[<<moveTo "event_exgirlfriend_your_flat_7" "How about a strap?" 600 "<<set $scene.anal='strap'>>">>]<br>
<<else>>
[<<moveTo "event_exgirlfriend_your_flat_7" "You don't have a penis anymore..." 600 "<<set $scene.anal='strap'>>">>]<br>
<</if>>
[<<moveTo "event_exgirlfriend_your_flat_7_abort" "Actually... you need more time to prepare." 180>>]
<<else>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> starts to leave the bedroom. "@@.npc_exgirlfriend;Well... it's been interesting, and a bit of a trip down memory lane... but I'm not impressed enough to stick around. Maybe think about some of the things I said early and invite me back. Until then?@@" She blows you a kiss and leaves the flat.<br>
<br>
<<printThought "Dang, that didn't quite work.">><br>
<br>
[<<moveTo "room_foyer" 'Close the door behind her.' 300>>]
<</if>>
</div>/*#
#desc: ex tours your flat: decline buttsex
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" $scene.flatVisit.exgirlfriendImage>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_exgirlfriend","first")>> that you aren't ready for sex yet.<br>
<br>
You can tell she's disappointed, but she smiles and chuckles as she shakes her head and stands up. "@@.npc_exgirlfriend;Return of the virginity pledge? I guess some things never change... well, if you change your mind, give me a call again, eh, and we can try this again...@@"<br>
<br>
She leaves.<br>
<br>
[<<moveTo "room_foyer" "Close the door behind her." 60>>]
</div>/*#
#desc: ex tours your flat: buttsex
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<switch $scene.anal>>
<<case 'penis'>>
<<playerOrgasm>>
<<case 'unlock'>>
<<set $scene.removeCage = true>>
<<include "removeCage_retractSissyomatic">>
<<playerOrgasm>>
<<case 'strap'>>
<<addItem 'strapon_med'>>
<<wearItem 'strapon_med' true>>
<</switch>>
<<set $scene.virgin = !$player.virgin.top_fem>>
<<if $scene.virgin>>
<<set $player.virgin.top_fem = "npc_exgirlfriend">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<if $scene.anal != "strap">>
<<set $scene.virgin = !$player.virgin.top_fem || !$player.virgin.penis>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "npc_exgirlfriend">>
<</if>>
<<if !$player.virgin.penis>>
<<set $player.virgin.penis = "npc_exgirlfriend">>
<<set $player.virgin.top_fem = "npc_exgirlfriend">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "voluntary">>
<</if>>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() $scene.flatVisit.exgirlfriendImage>>
<div id="invframe" class="scrolltext">
<<switch $scene.anal>>
<<case 'penis' 'unlock'>>
<<if $scene.anal == "unlock">>
You unlock your chastity <<if $scene.isCage>>cage<<else>>belt<</if>> and <<=setup.getNpcName("npc_exgirlfriend","first")>> looks back with a smile. "@@.npc_exgirlfriend;Is that virginity pledge: the next level?@@" You shrug, not feeling like getting into the details of such things as you pull out
<<else>>
You reveal
<</if>>
your <<getWordMyPenis>>.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
"@@.npc_exgirlfriend;Hmm... I KNOW that's smaller than I remember,@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> blurts out before blushing. "@@.npc_exgirlfriend;Sorry... but I guess you aren't so sensitive about that stuff now, right? Well, either way, I want your cock in my ass like... now, so butt-fuck me honey... er, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>!@@"<br>
<br>
You move up onto the bed, easily mounting your enthusiastic ex, her rear hole welcoming, and then tightly squeezing down on your <<getWordMyPenis>>. "@@.npc_exgirlfriend;So good... I just love a hot cock in my ass...@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> states as she rocks her hips.
<<case 3>>
"@@.npc_exgirlfriend;Mmm, just as I remembered. Come on, fuck me, fuck my ass, honey... er, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>!@@"<br>
<br>
You move up onto the bed, easily mounting your enthusiastic ex, her rear hole welcoming, and then tightly squeezing down on your <<getWordMyPenis>>. "@@.npc_exgirlfriend;See? You fit, gasp, perfectly! Oh, I just love a hot cock in my ass...@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> states as she rocks her hips.
<<case 4 5>>
"@@.npc_exgirlfriend;Woah... that is, um... bigger than I remember... but I still want it, and I want you. Come on, fuck me, fuck my ass, honey... er, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>!@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> passes you some lube and you grease up and slowly work your way into her ass. "@@.npc_exgirlfriend;Goddess you're big... not that I didn't love the thought of you before... but this? Fuck me, I want to feel ALL of that cock...@@"
<<case 6>>
"@@.npc_exgirlfriend;Holy... that's... okay,@@" she takes a deep breath "@@.npc_exgirlfriend;not what I was expecting... but now that I see it? I want it, <<if $player.body_ref.knot && $player.body_ref.horsecock>>knot<<elseif $player.body_ref.horsecock>>fuck<<elseif $player.body_ref.knot>>knot<<else>>fuck<</if>> me, fuck my ass, honey... er, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>!@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> passes you some lube and you grease up and slowly work your way into her ass, her pants coming faster, and shorter... even as they are intermingled with little moans of pleasure. "@@.npc_exgirlfriend;Goddess you're huge... but I want it, I want it all... <<if $player.body_ref.knot && $player.body_ref.horsecock>>knot me, you dragon-dicked dreamboat<<elseif $player.body_ref.horsecock>>fuck me, make me your mare<<elseif $player.body_ref.knot>>knot me, make me your bitch<<else>>fuck me, make me your size queen sub..<</if>>.@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Your hips press against <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> bare butt and she starts rocking back and forth, egging you on to fuck her with every moan<<if $scene.virgin>>, making no indication as to this being you first time as you figuratively hold on for the ride..<</if>>.
<<case 'strap'>>
<<if $player.body_ref.penis>>
You make an excuse and ask if <<=setup.getNpcName("npc_exgirlfriend","first")>> has a strap-on or something you could use?
<<else>>
You explain that, actually... you don't have a penis anymore.
<</if>>
<br><br>
"@@.npc_exgirlfriend;Well! Looks like my preparations pay off yet again,@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> explains as she digs into her purse to come up with a strap-on. "@@.npc_exgirlfriend;Always be prepared, right? Now strap up and fuck me, fuck my ass, honey... er, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>!@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> passes you a packet of lube and then you're lining up with her ass, the silicone dildo sliding easily into a place it's clearly been many times before.
<<default>>
ERROR: unexpected scene.anal <<=$scene.anal>>
<</switch>>
"@@.npc_exgirlfriend;Yess... oh, why didn't you do this earlier... no, don't stop, fuck me, fuck me good... I know what I said before, but it doesn't count until I cum, now make it count!@@"<br>
<br>
You remember your role and get to work, taking charge as you pin your ex <<printThought "Or... is she still ex?">> down and start fucking away, matching her enthusiastic moans with long, deep strokes, listening to moans of pleasure unlike anything you elicited from even your best foot massage as you "make it count"... triple, thrusting on past the first orgasm until <<=setup.getNpcName("npc_exgirlfriend","first")>> is a submissive puddle of satisfaction from three increasingly bone-rattling analgasms.<br>
<br>
[<<moveTo "event_exgirlfriend_your_flat_8" "Whew!" 300>>]
</div>/*#
#desc: ex tours your flat: post sex
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal == "strap">>
<<removeItem 'strapon_med' true>>
<<deleteItem 'strapon_med'>>
<</if>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() $scene.flatVisit.exgirlfriendImage>>
<div id="invframe" class="scrolltext">
It takes a few minutes for her to catch her breath, but in surprising time <<=setup.getNpcName("npc_exgirlfriend","first")>> is bouncing back up with a wide grin. "@@.npc_exgirlfriend;So that was even better than I was hoping... needless to say you passed... <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>.@@" She winks... and then reaches behind her neck to unbuckled the collar and drop it into her purse. "@@.npc_exgirlfriend;Well, part-time. Give me a ring if you want to have some fun again. For now I wanna keep it cas... but we'll see, right? Just give me a ring and we'll do something.@@" She blows you a kiss as she heads for the bedroom door. "@@.npc_exgirlfriend;Don't worry, I know the way out.@@"<br>
<br>
She leaves, and leaves you speechless as you follower her out of the flat and wave good-night.<br>
<br>
[<<moveTo "room_foyer" "Close the door behind her." 60>>]
</div>/*#
#desc: failed to show up for ex and admin date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get dual text messages from <<=setup.getNpcName('npc_exgirlfriend','first')>> and <<=setup.getNpcName('npc_admin','first')>> about the fact that you failed to make it to The Usual Place for your date.<br>
<br>
<<printThought "Damnit...">><br>
<br>
You read further, seems that, without you there, <<=setup.getNpcName('npc_exgirlfriend','first')>> decided to head home.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: begin admin/ex date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_admin","first")>> arrives first and the two of you have just enough time to grab drinks and a booth before <<=setup.getNpcName("npc_exgirlfriend","first")>> shows up, looking slightly nervous, and maybe a little surprised as you wave her over and she takes a seat next to you. The three of you chatting for a bit as the initial tense mood dissipates with the help of a bit of liquid libation.<br>
<br>
"@@.npc_exgirlfriend;Gotta say, this place is a lot nicer than I remembered...@@"<br>
<br>
"@@.npc_admin;New ownership,@@" <<=setup.getNpcName("npc_admin","first")>> explains with a wave to <<=setup.getNpcName("npc_barkeeper","first")>> behind the bar.<br>
<br>
"@@.npc_exgirlfriend;Ah, a woman's touch, I should have guessed.@@" She pauses to take a drink and then smiles "@@.npc_exgirlfriend;speaking a woman's touch... and as nice as this place may have become... I didn't exactly come here for the drinks so... we gonna do this? And by this, I mean me?@@"<br>
<br>
[<<moveTo "event_exgirlfriend_admin_2" "Yes, ma'am!" 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_exgirlfriend_admin_2" "Actually... you think just drinks is good." 3600 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: admin/ex back to admin place
#status: RELEASED 0.9.1.0
#ignore_spell: à, ménage
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<else>>
<<set $player.location to "The Usual Place">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_naked") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_exgirlfriend")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<=ps(setup.getNpcName("npc_admin","first"))>> apartment is the closest and soon the three of you are helping one another out of clothing as <<=setup.getNpcName("npc_exgirlfriend","first")>> takes a moment to oogle <<=ps(setup.getNpcName("npc_admin","first"))>> muscular form.<br>
<br>
"@@.npc_exgirlfriend;Wow... somehow you look even better naked than I imagined...@@" she bites her lip as her gaze glides down towards <<=ps(setup.getNpcName("npc_admin","first"))>> large, hard cock. "@@.npc_exgirlfriend;What?@@" She states as you look over, "@@.npc_exgirlfriend;all I did was look! And you're the one who arranged this little ménage à trois... some come on, let's have some fun!@@"<br>
<br>
You share a glance with <<=setup.getNpcName("npc_admin","first")>> and <<he npc_admin>> shrugs... and you smile, after all, <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> right, <<=setup.getNpcName("npc_admin","first")>> looks hella fine...<br>
<br>
[<<moveTo "event_exgirlfriend_admin_3" "Time to fuck." 1800>>]
<<else>>
You decide that you'd rather not rush into things, as it were. <<=setup.getNpcName("npc_exgirlfriend","first")>> seems about to say something... but then shrugs, signaling for another drink as the three of you settle in for a night of drinking and catching up, <<=setup.getNpcName("npc_exgirlfriend","first")>> and <<=setup.getNpcName("npc_admin","first")>> getting along quite a bit better than you remember, for some reason as the three of you move back and forth between chatting about old times and the usual grousing about work and life in the city.<br>
<br>
[<<moveTo "room_usual_place_inside" 'The night winds down and you go your separate ways, with <<=setup.getNpcName("npc_exgirlfriend","first")>> insisting on covering the tab.' 3600 "<<setTmpEffect 'tipsy'>>">>]
<</if>>
</div>/*#
#desc: admin/ex sex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_admin","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
There's a bit of silent negotiation as to who is doing what to whom, but you, as the common link between the two parties play the part of the coordinator to perfection, culminating in <<=setup.getNpcName("npc_admin","first")>> balls deep in <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> while you and your ex share a delightful bit of sixty-nine, <<if $player.body_ref.vagina && setup.canSexOrRemoveChastity("vag") || setup.canSexOrRemoveChastity("penis")>><<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> moans barely muffled by your thighs<<else>>well, delightfully teasing, given the locked presence of your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> as <<=setup.getNpcName("npc_exgirlfriend","first")>> moans between your thighs and<</if>> <<=setup.getNpcName("npc_admin","first")>> beautiful balls fill your vision.<br>
<br>
<<if $player.body_ref.vagina && setup.canSexOrRemoveChastity("vag", "npc_admin") || setup.canSexOrRemoveChastity("penis", "npc_admin")>>
Nearly a dozen orgasms spread among the three of you ensue
<<else>>
You may be locked... but <<=setup.getNpcName("npc_exgirlfriend","first")>> proves as skilled at fingering an anus at taking cock in her own, and she makes sure you don't fall behind as the three of you combine for nearly a dozen orgasms
<</if>>
before satiation is reached, and you all collapsing together on <<=ps(setup.getNpcName("npc_admin","first"))>> bed for a bit of post-coital cuddle.<br>
<br>
"@@.npc_exgirlfriend;Imagine if we'd done this back when we were dating!@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> remarks with a laugh that is soon infectious.<br>
<br>
"@@.npc_admin;You can thank <<=$player.first_name>> for that one... I don't think either of us saw <<=setup.getHisHer($npc_admin)>> quite properly back then...@@" <<=setup.getNpcName("npc_admin","first")>> replies as you smile, and ever so slightly blush before all three of you join in in laughter... and then set about the task of sorting out whose clothes are whose.<br>
<br>
[<<moveTo "room_citymap" 'Dress and head out.' 600 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: ask ex about getting together
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> if she'd like to get together?<br>
<br>
<<if $now.getUTCHours() >= 22>>
"@@.npc_exgirlfriend;Sorry, it's a bit late to schedule anything tonight. Give me a call some other day.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
"@@.npc_exgirlfriend;Tonight? Alright, what were you thinking?@@"<br>
<br>
[<<moveTo "event_exgirlfriend_date_invite_repeat_2" "Your place." 300 "<<set $scene.location='yours'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_invite_repeat_2" "Her place." 180 "<<set $scene.location='hers'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_invite_repeat_2" "The Usual Place." 180 "<<set $scene.location='bar'>>">>]
<</if>>
</div>/*#
#desc: ask ex about getting together
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.location>>
<<case 'yours'>>
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> if she'd like to come over to your place again?<br>
<br>
"@@.npc_exgirlfriend;Alright, but if I'm going to trek out that far I'm doing it for more than a quickie... what did you have in mind?@@"<br>
<br>
<<if $fetish.tentacle && $npc_chuck.stage >= 4>>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" 'You saw her eyeing <<=setup.getNpcName("npc_chuck", "suffix")>>.' 60 "<<set $scene.location='plant'>>">>]<br>
<</if>>
<<if $fetish.bestiality_hard && $npc_dog.stage >= 3>>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" 'You want to introduce her to <<=setup.getNpcName("npc_dog","first")>>.' 60 "<<set $scene.location='dog'>>">>]<br>
<</if>>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" "Maybe she'd like to have fun with her old Dreammaker?" 60 "<<set $scene.location='box'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" "Actually, you can't think of anything." 60 "<<set $scene.location='none'>>">>]<br>
<<case 'hers'>>
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> if you could come over to her place?<br>
<br>
"@@.npc_exgirlfriend;Alright, but I'll tell you, my place is pretty bare bones, good for sex and... not a whole lot else.@@"<br>
<br>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" "That's fine by you." 60 "<<set $scene.location='hers'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" "Nevermind." 60 "<<set $scene.location='none'>>">>]
<<case 'bar'>>
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> if she'd like to meet you for drinks at the Usual Place.<br>
<br>
"@@.npc_exgirlfriend;Ew, that gross old place? No thank you! Not unless there's something to entice me beyond a dark and dank dive bar.@@"<br>
<br>
<<if $currentTasks.hasOwnProperty("admin_drink_1") && !$currentTasks.admin_drink_1.finished>>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" 'You were thinking of a get-together with her and <<=setup.getNpcName("npc_admin","first")>>.' 60 "<<set $scene.location='admin'>>">>]<br>
<<else>>
[@@.link_locked;I should set something up with <<=setup.getNpcName("npc_admin","first")>> first...@@]<br>
<</if>>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" "Nevermind." 60 "<<set $scene.location='none'>>">>]
<<default>>
ERROR: unexpected scene.location <<=$scene.location>>
<</switch>>
</div>/*#
#desc: confirm ex getting together
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.location>>
<<case 'admin'>>
<<set $scene.hasFreeTime = true>>
<<case 'admin_confirm'>>
<<set $scene.hasFreeTime = true>>
<<set _date = setup.getTaskDueDate('admin_drink_1')>>
<<addTaskById 'exgf_date_admin' _date>>
<<deleteTask 'admin_drink_1'>>
<<case 'hers'>>
<<set _date = setup.setNextDate($now, 0, 22, 0, false)>>
<<set $scene.hasFreeTime = setup.hasFreeTime(_date, $player, $currentTasks, 7200)>>
<<if $scene.hasFreeTime>>
<<addTaskById 'exgf_her_flat' _date>>
<</if>>
<<case 'box'>>
<<set _date = setup.setNextDate($now, 0, 22, 0, false)>>
<<set $scene.hasFreeTime = setup.hasFreeTime(_date, $player, $currentTasks, 7200)>>
<<if $scene.hasFreeTime>>
<<addTaskById 'exgf_your_flat_box' _date>>
<</if>>
<<case 'plant'>>
<<set _date = setup.setNextDate($now, 0, 22, 0, false)>>
<<set $scene.hasFreeTime = setup.hasFreeTime(_date, $player, $currentTasks, 7200)>>
<<if $scene.hasFreeTime>>
<<addTaskById 'exgf_your_flat_plant' _date>>
<</if>>
<<case 'dog'>>
<<set _date = setup.setNextDate($now, 0, 22, 0, false)>>
<<set $scene.hasFreeTime = setup.hasFreeTime(_date, $player, $currentTasks, 7200)>>
<<if $scene.hasFreeTime>>
<<addTaskById 'exgf_your_flat_dog' _date>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.hasFreeTime>>
<<switch $scene.location>>
<<case 'admin'>>
You reply that you were actually thinking of getting together with <<=setup.getNpcName("npc_admin","first")>> too.<br>
<br>
"@@.npc_exgirlfriend;That hunk? Yeah... you two always did like that place and it's not like I didn't fantasise about getting a piece of that delicious wall of muscle... alright, I'm in, but I'm not just coming for the drinks, right?@@"<br>
<br>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" "You read her loud and clear, threesome time!" 60 "<<set $scene.location='admin_confirm'>>">>]<br>
[<<moveTo "event_exgirlfriend_date_invite_repeat_3" "Nevermind." 60 "<<set $scene.location='none'>>">>]
<<case 'admin_confirm'>>
You confirm that you're on the same page vis a vis drinks and a threesome with <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
"@@.npc_exgirlfriend;Awesome! Well, see you Friday!@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 'hers'>>
You reply that a "casual" night at her place sounds great.<br>
<br>
"@@.npc_exgirlfriend;Coo, well see you then!@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 'box'>>
You ask if she'd like to come over for some fun with the "Dreammaker" machine she left behind.<br>
<br>
"@@.npc_exgirlfriend;Mmmm, now that's an offer. I've certainly missed it from time to time, not gonna lie, sounds good!@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 'plant'>>
You ask if she'd like to come over for some fun with <<=setup.getNpcName("npc_chuck", "suffix")>>.<br>
<br>
"@@.npc_exgirlfriend;Hmmm, still can't believe <<he npc_chuck>>'s the same tiny cute little plant we brought home... but <<he npc_chuck>>'s a lot more interesting...@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 'dog'>>
You ask if she'd like to come over for some fun with <<=setup.getNpcName("npc_dog","first")>>.<br>
<br>
"@@.npc_exgirlfriend;Hmmm, didn't realise you were a dog person... but sure, that sounds fun.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 'none'>>
You decide against getting together with <<=setup.getNpcName("npc_exgirlfriend","first")>> tonight.<br>
<br>
"@@.npc_exgirlfriend;Sure sure, well, if you want to hit me up some other time.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<default>>
ERROR: unexpected scene.location <<=$scene.location>>
<</switch>>
<<else>>
"@@.npc_exgirlfriend;Sorry, but I don't think <<if $scene.location != "admin">>tonight<<else>>Friday<</if>> is going to work for me... give me a call some other day, alright? I don't like scheduling too far out, spontaneity is more fun!@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: no show ex visit
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall from <<=setup.getNpcName("npc_exgirlfriend","first")>>.<br>
<br>
"@@.npc_exgirlfriend;Hey, I thought you were coming over? Oh well, I guess it's just me and a battery-powered friend for the evening. Don't bother coming late, I'll see you some other time.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: drop by her place for sex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<useClothSetPush 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You knock on <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> door and she greets you with a smile before inviting you in. Though bearing her obvious personal styling touch, it's pretty small, and you have a feeling she doesn't spend much time at home.<br>
<br>
"@@.npc_exgirlfriend;So... what were you thinking for tonight?@@" She asks with a smile and a glance towards the bedroom.<br>
<br>
<<include "exFlatSexChoice">>
</div>[<<moveTo "event_exgirlfriend_her_flat_2_oral_her_1" "You're here to eat her out." 1800>>]<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_exgirlfriend_her_flat_2_blowjob_1" "Unlock yourself for a blowjob." 1800>>]<br>
[<<moveTo "event_exgirlfriend_her_flat_2_fuck_1" "Unlock yourself to fuck her." 1800>>]<br>
[<<moveTo "event_exgirlfriend_her_flat_2_anal_1" "Unlock yourself to fuck her ass." 1800>>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is locked in chastity.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_exgirlfriend_her_flat_2_blowjob_1" "You'd like a blowjob." 1800>>]<br>
[<<moveTo "event_exgirlfriend_her_flat_2_fuck_1" "You'd like to fuck her." 1800>>]<br>
[<<moveTo "event_exgirlfriend_her_flat_2_anal_1" "You'd like to fuck her ass." 1800>>]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if setup.canSexOrRemoveChastity("vag")>>
[<<moveTo "event_exgirlfriend_her_flat_2_oral_you_1" "Unlock your belt for her to eat you out." 1800>>]<br>
[<<moveTo "event_exgirlfriend_her_flat_2_you_1" "Unlock your belt for her to fuck you with a strap-on." 180>>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is locked in chastity.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_exgirlfriend_her_flat_2_oral_you_1" "You'd like her to eat you out." 1800 "<<set $scene.action='oral_you'>>">>]<br>
[<<moveTo "event_exgirlfriend_her_flat_2_you_1" "You'd like her to fuck you with a strap-on." 180 "<<set $scene.action='you'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_exgirlfriend_her_flat_2_you_1" "You'd like her to peg your butt." 180>>]<br>
[<<moveTo "event_exgirlfriend_her_flat_abort" "Actually... you need to be somewhere else." 180>>]/*#
#desc: abort sex at her place
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_exgirlfriend","first")>> stares at you somewhat incredulously as you make a lame excuse about needing to leave.<br>
<br>
"@@.npc_exgirlfriend;Performance anxiety, still? It's like I'm getting flashbacks.@@" She shakes her head. "@@.npc_exgirlfriend;Very well. I would not wish to pressure you into something you are not prepared for... but, if we aren't going to do anything, well... I have a wand and some frustration to work out.@@"<br>
<br>
[<<moveTo "room_citymap" "Leave." 300>>]
</div><<if $scene.removeCage>>
You unlock your chastity <<if $scene.isCage>>cage<<else>>belt<</if>> to reveal your hard <<getWordMyPenis>>.<br>
<br>
<</if>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> smiles at the sight of your <<getWordMyPenis>>.
<<switch $player.body.penissize[0]>>
<<case 0 1>>
She winks, in no way put off by your now diminutive size as you are reminded of the unfounded anxiety that corroded your old relationship.
<<case 2 3>>
"@@.npc_exgirlfriend;so long that silly virginity pledge kept us apart... I still get excited at the thought of some fun with your lovely thing...@@"
<<case 4 5>>
"@@.npc_exgirlfriend;I know I assured you that your size was fine... and that's true... but I can't deny that seeing how you've grown has me excited... I guess I just like cock!@@"
<<case 6>>
"@@.npc_exgirlfriend;I was telling the truth before when I said I was fine with your cock... but I can't deny that seeing this mammoth <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>dong, well... I guess anything can be upgraded... I guess it's good for you that I've discovered that, as much as I like all cock, a bit of size queening is fun, too...@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>/*#
#desc: ex blows you
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<include "exPenisDescription">>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> winks as she shimmies to her knees and takes the tip of your <<getWordMyPenis>> between her lips. "@@.npc_exgirlfriend;Tasty... I'd say I picked up some new tricks since we were together... but you never exactly gave me the chance to deploy the original ones... either way...@@"<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> tongue dances as she slides your small, hard peen into her mouth, moaning in delight as she kisses, sucks and licks, showing loving skill, indeed, as she gets you off<<if $player.body_ref.cumProduction && $fetish.cum>>, swallowing your <<if $player.body_ref.cumProduction > 1>>prodigious <</if>>load <</if>>with a smile
<<case 2 3>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> eagerly and ecstatically sucks you off, taking your full length, but making as if the last centimetre took a bit of work as she passionately pumps forward and back, tongue, lips and throat working in coordination until you<<if $player.body_ref.cumProduction && $fetish.cum>>, cum. She hums happily as she waits for you to finish spurting your <<if $player.body_ref.cumProduction > 1>>prodigious <</if>>load before audibly swallowing and licking her lips<<else>>climax<</if>>.
<<case 4 5>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> deep-throats you with aplomb, moaning and touching her throat experimentally as she goes balls deep, eyelids fluttering as she holds for a few breathless moments before pulling back, wiping her lips, and plunging back in with tongue, lips and throat working in coordination until you<<if $player.body_ref.cumProduction && $fetish.cum>>, cum. She hums happily as she waits for you to finish spurting your <<if $player.body_ref.cumProduction > 1>>prodigious <</if>>load before audibly swallowing and licking her lips<<else>>climax<</if>>.
<<case 6>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> takes a deep breath as she addresses your <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<<else>> massive <</if>>cock, struggling to take as much as she can before being forced to breathlessly pull back. You note the hint of disappointment in her eyes at her failure to deep-throat you... but she's right back at it a moment later, sucking and licking and stroking as her hands make up the distance and she passionately milks your cock to <<if $player.body_ref.cumProduction && $fetish.cum>>an explosive climax as you spurt a <<if $player.body_ref.cumProduction > 1>>massive <<else>><</if>>load across her tongue, and she eagerly swallows it all<<else>>a knee-rattling climax<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
[<<moveTo "event_exgirlfriend_her_flat_2_oral_her_1" "Return the favour." 1800>>]<br>
[<<moveTo "event_exgirlfriend_her_flat_3" "Ask about spending the night." 300>>]
</div>/*#
#desc: fuck ex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<playerOrgasm>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
<<include "exPenisDescription">>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> grins as she lays back on her bed and welcomes you between her legs. "@@.npc_exgirlfriend;Imagine if you'd been this bold back in the day... then again, I guess the journey since has been a growing experience for the both of us<<if $player.body.penissize[0] >= 4>>... VERY growing, in your case<</if>>.@@" <<if $player.body.penissize[0] >= 4>>she adds with a glance at your <<if $player.body.penissize[0] >= 6>>massive<<else>>large<</if>>, rock hard <<getWordMyPenis>><</if>>.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> purrs as you slide between her glistening lips, her legs wrapping around you as she pulls you on top of herself, kissing you as your hips grind against one another. "@@.npc_exgirlfriend;So good...@@" she whispers as you fuck away, doing all you can to last until she cums first before <<if $player.body_ref.cumProduction && $fetish.cum>>spurting your <<if $player.body_ref.cumProduction > 1>>voluminous<</if>> excitement<<else>>climaxing yourself<</if>>.
<<case 2 3>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> moans as you move between her legs and she pulls you on top of herself, kissing you as your hips grind against one another. "@@.npc_exgirlfriend;So good...@@" she whispers as you fuck away, doing all you can to last until she cums first before <<if $player.body_ref.cumProduction && $fetish.cum>>spurting your <<if $player.body_ref.cumProduction > 1>>voluminous<</if>> excitement<<else>>climaxing yourself<</if>>.
<<if $player.body_ref.cumProduction && $fetish.cum>><<if $player.body_ref.cumProduction > 1>><</if>><<else>><</if>>.
<<case 4 5>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> shudders as you slowly slide into her, squeezing tight as you use her copious excitement to make it in the final few centimetres. "@@.npc_exgirlfriend;Goddess you're big...@@" she gasps, pulling you on top of her and taking a few moments to adjust before nodding for you to start fucking.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> is tight, wet, and all but irresistible with each thrust, as you barely manage to last long enough for her to full-body orgasm before releasing control and <<if $player.body_ref.cumProduction && $fetish.cum>>unleashing a<<if $player.body_ref.cumProduction > 1>> massive<</if>> cream-pie<<else>>cumming hard yourself<</if>>.
<<case 6>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> is breathing hard as you slowly ease your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<<else>> <</if>>cock into her, pulling you forward and off-balance at the last moment so that your weight forces in you in the final couple centimeters<<if $player.body_ref.knot>>, audibly gasping as your knot pops into place<</if>>.<br>
<br>
"@@.npc_exgirlfriend;Fuck me...@@" she moans, in both exclamation and invitation for more as her hips start to rock, and you start to thrust.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> is squeezing you tight the whole time, your sweaty bodies pressed together as you half grind, half fuck, pleasure building and building until you share a simultaneous screaming<<if $player.body_ref.cumProduction && $fetish.cum>>, and explosive<<else>><</if>> climax.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Still wrapped in one another's arms, you fall to the side, cuddling on the narrow bed as you both catch your breath and calm down, occasional kisses punctuating the smiling recovery.<br>
<br>
[<<moveTo "event_exgirlfriend_her_flat_3" "Ask about spending the night." 300>>]
</div>/*#
#desc: ex anal
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<playerOrgasm>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
<<include "exPenisDescription">>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> grins as she gets on all fours on her bed and wiggles her ass in invitation. "@@.npc_exgirlfriend;Come on, now, and fuck me... because I'll tell you what. Anal doesn't just count... I actually think it's becoming my favourite now fuck my ass, fuck it good.@@"<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
You take <<=setup.getNpcName("npc_exgirlfriend","first")>> from behind and grind against her ass as she moans in pleasure. "@@.npc_exgirlfriend;So good...@@" she whispers as you thrust quickly, her quivering, tight hole squeezing you with excitement as she all but milks you, cumming not once, but three times before the two of you share a final shared climax that leaves you out of breath<<if $player.body_ref.cumProduction && $fetish.cum>>, and cum dripping down her thigh<</if>>.
<<case 2 3>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> moans as you smoothly enter her ass. "@@.npc_exgirlfriend;Fuck... so good...@@" she moans as you start to thrust, cumming at least twice as she eggs you on, your fingers gripping her hips as you increase pace until you're slamming into her from behind, the two of you sharing a screaming simultaneous orgasm<<if $player.body_ref.cumProduction && $fetish.cum>>that leaves <<if $player.body_ref.cumProduction > 1>>a river of <</if>>cum leaking down her thighs<</if>>.
<<case 4 5>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> is as tight as she is eager as you take her from behind. Her breathing ragged with lust as she pushes back into you until you bottom out. "@@.npc_exgirlfriend;So big... now fuck me... fuck me hard!@@" She gasps, her body trembling with a first orgasm as you oblige, taking her by the hips to begin to thrust.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> cums twice more, each orgasm more explosive than the last before a final, simultaneous climax that sees you <<if $player.body_ref.cumProduction && $fetish.cum>>pumping a<<if $player.body_ref.cumProduction > 1>> monster<</if>> load into her ass<<else>>finishing off<</if>> and the both of you collapsing on the bed.
<<case 6>>
Your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<<else>> <</if>>cock slides into <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> welcoming ass with surprising ease, <<if $player.body_ref.knot>>your knot popping into place with a simultaneous orgasmic moan<<else>>a small orgasmic moan heralding your hips pressing against hers<</if>> as you bottom out.<br>
<br>
"@@.npc_exgirlfriend;Oh fuck you feel amazing... I'm so full...@@" she moans, in both exclamation and invitation for more as she rocks back and forth slightly, and you respond by starting to thrust.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> is squeezing you tight the whole time as you press her into the bed, her moans of ecstasy getting louder with every thrust as she multi-orgasms culminating in a final simultaneous, screaming<<if $player.body_ref.cumProduction && $fetish.cum>>, and explosive<<else>><</if>> climax that leaves the both of you limp<<if $player.body_ref.cumProduction && $fetish.cum>>, and cum dripping down her cheeks<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
[<<moveTo "event_exgirlfriend_her_flat_3" "Ask about spending the night." 300>>]
</div>/*#
#desc: ex eats you out
#status: RELEASED 0.9.1.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
You unlock your chastity belt to reveal your glistening <<getWordVagina>> and <<=setup.getNpcName("npc_exgirlfriend","first")>> all but dives in,
<<else>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> grins as she goes between your legs,
<</if>>
tongue and lips dancing between your folds as her hands run along your thighs. You tremble with excitement, one hand resting on her head as she curls two fingers inside of you, drilling your g-spot as she passionately licks, maintaining a frenetic pace despite your bucking hips and not stopping until you squirt your excitement across her face and she rises up with a dripping grin.<br>
<br>
[<<moveTo "event_exgirlfriend_her_flat_2_oral_her_1" "Return the favour." 1800>>]<br>
[<<moveTo "event_exgirlfriend_her_flat_3" "Ask about spending the night." 300>>]
</div>/*#
#desc: ex eats you out
#status: RELEASED 0.9.1.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You grin and go down on <<=setup.getNpcName("npc_exgirlfriend","first")>>, head burried between her thighs as you show off your skills, her muscles trembling and voice cracking as you give her a pair of toe-curling orgasms before she shuffles away, panting.<br>
<br>
"@@.npc_exgirlfriend;Wow... that's somehow even better than your famous foot massages... we REALLY wasted our time together when we were dating...@@"<br>
<br>
[<<moveTo "event_exgirlfriend_her_flat_3" "Ask about spending the night." 300>>]
</div>/*#
#desc: ask ex to strap-on you
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You ask if <<=setup.getNpcName("npc_exgirlfriend","first")>> could strap on to do you but she shakes her head. "@@.npc_exgirlfriend;Sorry, hon, but me topping, well... I've gotta be in the right mood for that, pretty much only happens at the club, but if you wanted to do something else...@@"<br>
<br>
<<include "exFlatSexChoice">>
</div>/*#
#desc: leave after sex w/ex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You lay on the bed with <<=setup.getNpcName("npc_exgirlfriend","first")>> cuddling, feeling like you might drift off when she nudges you with her elbow. "@@.npc_exgirlfriend;Hey! don't fall asleep!@@" She sits up as you blink and clear your eyes. "@@.npc_exgirlfriend;As fun as that was... all I've got is this single bed, and you know how much I roll around when I sleep<<if $npc_exgirlfriend.flags.sub>>, and while I may be subby, I'm no so masochistic as to sleep on the floor<</if>>. In other words... it's been nice, but it's time for you to head home. Until next time!@@"<br>
<br>
You give her a kiss good-night and gather your things to leave.<br>
<br>
[<<moveTo "room_citymap" "Get dressed and leave." 300 '<<if $scene.removeCage>><<include "replaceCage_extendSissyomatic">><</if>><<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: talk to technician about ex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_exgirlfriend.flags.evil != 1 && $npc_technician.relationship.relationship_stage >= 2>>
<<set _hasTechDate = $currentTasks.hasOwnProperty('technician_dinner') && !$currentTasks.technician_dinner.finished>>
<<if _hasTechDate>>
<<set $scene.date = setup.getTaskDueDate('technician_dinner')>>
<<else>>
<<include "technician_dinner_date">>
<<set $scene.date = _tmpDate>>
<</if>>
<<deleteMember $currentTasks 'technician_dinner'>>
<<set $scene.hasFreeTime = setup.hasFreeTime($scene.date, $player, $currentTasks, 7200)>>
<<if _hasTechDate>>
<<addTaskById 'technician_dinner' $scene.date>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_exgirlfriend.flags.evil == 1>>
You are about to bring up <<=setup.getNpcName("npc_exgirlfriend","first")>>... but, given her current state of evilness, decide that that isn't such a good idea.<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
<<else>>
You mention to <<=setup.getNpcName("npc_technician","first")>> that you've been patching things up with your ex...<br>
<br>
<<if $npc_technician.relationship.relationship_stage >= 2>>
<<=ps(setup.getNpcName("npc_technician","first"))>> gaze narrows, and she takes a long drag of her drink before taking a deep breath and responding. "@@.npc_technician;Interesting... I never really met your ex back when you were dating, more just heard bits and pieces of gossip filtered through other coworkers... if she's going to be part of your life again, well... I'd like to at least meet her. How about she joins the two of us for dinner Friday, my place?@@"<br>
<br>
<<if $scene.hasFreeTime>>
[<<moveTo "theme_technician_exgirlfriend_2" "Sure." 60 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;You're already busy this Friday.@@]<br>
<</if>>
[<<moveTo "theme_technician_exgirlfriend_2" "Maybe some other week." 60 "<<set $scene.accept=false>>">>]
<<else>>
Things feel momentarily awkward before <<=setup.getNpcName("npc_technician","first")>> re-steers the conversation.<br>
<br>
"@@.npc_technician;I see, well... um, I guess congrats to you?@@" She manages to force a smile that utterly fails to conceal her interest in you.<br>
<br>
<<printThought "That was probably a bad thing to bring up...">><br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
<</if>>
<</if>>
</div>/*#
#desc: talk to technician about ex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if $currentTasks.hasOwnProperty('technician_dinner') && !$currentTasks.technician_dinner.finished>>
<<deleteMember $currentTasks 'technician_dinner'>>
<</if>>
<<addTaskById 'exgf_date_tech' $scene.date>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName("npc_technician","first"))>> dinner invite, and answer a few questions as to <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> food preferences and such. "@@.npc_technician;Good, good. I'll tell you, I'm definitely looking forward to putting face to the name... and getting a bit more insight into you from the before times.@@"<br>
<br>
You text <<=setup.getNpcName("npc_exgirlfriend","first")>> to confirm the "date" and let <<=setup.getNpcName("npc_exgirlfriend","first")>> that everything is a go for next Friday.
<<else>>
You decline <<=ps(setup.getNpcName("npc_technician","first"))>> dinner invite and she squints slightly, then shrugs.<br>
<br>
"@@.npc_technician;Some other time, then... I really would like to meet her, though, I mean, if she's part of your life again, and I'm part of your life, well...@@" <<=setup.getNpcName("npc_technician","first")>> reaches across the table to hold your hand, smiling, with with some nervousness hidden behind her eyes.<br>
<br>
You promise you'll talk to her later when you have time to set things up and move the conversation along.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: failed to show up for ex/technician date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_technician' 3>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get dual texts from <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_exgirlfriend","first")>> asking where you are?<br>
<br>
<<printThought "Shit! I forgot about that dinner date...">><br>
<br>
You text back that you're on the way, the united wrath of the two ladies more than you want to deal with.<br>
<br>
<<set _reason = setup.checkOutsideDecencyReason()>>
<<if $player.readytoleave || (_reason == "makeup_none" || _reason == "makeup_messy")>>
<<if _reason == "makeup_none">>
<<printThought "Crap, no makeup, but no time for that now.">><br>
<br>
<<elseif _reason == "makeup_messy">>
<<printThought "Crap, my makeup is a disaster but there's no time for that now.">><br>
<br>
<</if>>
[<<moveTo "event_exgirlfriend_technician_1" "Head over." 300 "<<set $currentcall = false>><<set $scene.fromFailed=true>>">>]
<<else>>
<<include thoughts_home>><br>
<br>
[@@.link_locked;You are not properly dressed to head travel to <<=ps(setup.getNpcName("npc_technician","first"))>> place.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: ex arrives for dinner
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'exgf_date_tech' $now true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<if $scene.fromFailed>>
You hurry over to <<=ps(setup.getNpcName("npc_technician","first"))>> place and find <<=setup.getNpcName("npc_exgirlfriend","first")>> already there chatting it up with <<=setup.getNpcName("npc_technician","first")>>.
<<else>>
You suppose you shouldn't be too surprised when you knock on the door to find <<=setup.getNpcName("npc_exgirlfriend","first")>> already there chatting it up with <<=setup.getNpcName("npc_technician","first")>>.
<</if>>
<br><br>
As if making a statement, <<=setup.getNpcName("npc_technician","first")>> welcomes you with a
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
grin as she takes you by <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>your collar<<else>>the back of your head<</if>> and welcomes you with a VERY dominant kiss.
<<case "sub">>
submissive bow and a loving kiss.
<<case "neutral" "">>
smile and a passionate kiss.
<</switch>>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> makes no comment at the display as the three of you take a seat for dinner.<br>
<br>
[<<moveTo "event_exgirlfriend_technician_2" "Continue." 1800>>]
</div>/*#
#desc: ex confronted over dinner
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;So,@@" <<=setup.getNpcName("npc_technician","first")>> states, breaking the silence that is hanging like a cloud over the otherwise tasty dinner. "@@.npc_technician;We talked a bit earlier, and you seem like a nice enough woman... but you broke <<=ps($player.first_name)>> heart once... and I would be a poor <<switch $npc_technician.relationship.her_role>>
<<case "dom">>
<<=setup.getNpcName("npc_technician","title")>> if I did not look out for my subject.
<<case "sub">>
slave if I did not look out for my owner.
<<case "neutral" "">>
friend, much less girlfriend, if I did not look out for my SO.
<</switch>>
So! What's the story?@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> slowly puts her fork down and takes a deep breath. "@@.npc_exgirlfriend;I had a feeling this was coming... I just hope my answer isn't a requirement for getting the antidote or anything.@@"<br>
<br>
"@@.npc_technician;Very funny... and while that would certainly be a genre classic move I do not believe either of us is a great fool, and no part of the dinner is from Australia... so the wine, and the plate, in front of you, and in front of me are safe.@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> snickers slightly and nods. "@@.npc_exgirlfriend;I can see why <<=$player.first_name>> likes you... as to the original question... I fucked up. Sure there was context but... that doesn't absolve me. That said, well... me and <<=$player.first_name>> have both come quite a ways since then... I mean, look at this, I'm having dinner with <<if $player.identify_as =='female'>>her<<elseif $player.identify_as =='male'>>his<<else>>their<</if>>
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
<<=setup.getNpcName("npc_technician","title")>>, I believe it was?
<<case "sub">>
slave...
<<case "neutral" "">>
girlfriend...
<</switch>>
And I'm not only happy for the both of you... but wondering if a bit of a threesome might be in the cards... I promise that I can be a very good sub...@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> winks, <<=setup.getNpcName("npc_technician","first")>> smirks... and then all eyes turn to you for a decision...<br>
<br>
<<if $npc_technician.relationship.her_role == "sub">>
[@@.link_locked;It wouldn't be proper for you to submit to your slave, <<=setup.getNpcName("npc_technician","first")>>.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_technician_3_dom_1" 'If your <<=setup.getNpcName("npc_technician","title")>> would like another hand-maid for the evening...' 1800>>]<br>
<</if>>
<<if $npc_technician.relationship.her_role == "dom">>
[@@.link_locked;It wouldn't be proper for you to take charge over you <<=setup.getNpcName("npc_technician","title")>>.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_technician_3_sub_1" "You'd gladly be served by two lovely ladies." 1800>>]<br>
<</if>>
[<<moveTo "event_exgirlfriend_technician_3_abort" "Actually... you were really just looking forward to dessert?" 1800>>]
</div>/*#
#desc: ex + technician decline sex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
Faced with the opportunity of a threesome with your previous girlfriend and your current girlfriend... you ask about dessert.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> stifles a laugh. "@@.npc_technician;I guess I'll take that as a compliment as to my cooking...@@"<br>
<br>
The three of you finish the rest of the meal friendly enough, with <<=setup.getNpcName("npc_exgirlfriend","first")>> thanking you for the invite and <<=setup.getNpcName("npc_technician","first")>> for the meal before heading out, with you spending a few minutes more with your <<switch $npc_technician.relationship.her_role>>
<<case "dom">>
<<=setup.getNpcName("npc_technician","title")>>
<<case "sub">>
slave
<<case "neutral" "">>
girlfriend
<</switch>>
before departing as well.<br>
<br>
[<<moveTo "room_citymap" "Leave." 300>>]
</div>/*#
#desc: ex + technician sex, tech dom
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<playerOrgasm>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
You join <<=setup.getNpcName("npc_exgirlfriend","first")>> at the <<=ps(setup.getNpcName("npc_technician","title"))>> feet as she has the two of you strip and follow her into the bedroom where she has the two of you help her into her full domme outfit... and then has you <<if $npc_technician.relationship.her_caged>>unlock and <</if>>kneel before her glistening, gorgeous girl-cock for some united effort preparation.<br>
<br>
<<=ps(setup.getNpcName("npc_technician","formal"))>> tastes even better tinged with the flavour of <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> kisses... but it quickly becomes clear that this is just foreplay as soon you're helping your ex up onto the bed... for your <<=setup.getNpcName("npc_technician","title")>> fuck her ass.<br>
<br>
"@@.npc_exgirlfriend;Oh Goddess...@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> moans from the first insertion... only for <<=setup.getNpcName("npc_technician","first")>> to take her by the hair and whisper "@@.npc_technician;That's <<=setup.getNpcName("npc_technician","title")>>, my dear...@@"<br>
<br>
"@@.npc_exgirlfriend;Yes, <<=setup.getNpcName("npc_technician","title")>>, @@" <<=setup.getNpcName("npc_exgirlfriend","first")>> moans as <<=setup.getNpcName("npc_technician","first")>> increases the pace and grins at you.<br>
<br>
"@@.npc_technician;Go on, Princess... play with her tits, show this lovely snack the FULL hospitality of the Empire!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_technician","title"))>> is done... and then some, as she has you and <<=setup.getNpcName("npc_exgirlfriend","first")>> switch off as to who is getting fucked, somehow managing to remain hard long enough to satisfy all three of you, exhaustion proving the final fall of the "Empire" as the three of you collapse into a cuddle puddle on the bed to recover... and then for <<=setup.getNpcName("npc_exgirlfriend","first")>> to dress to leave.<br>
<br>
"@@.npc_exgirlfriend;Thanks for the hospitality...@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> states with a curtsy and a final glance at <<=ps(setup.getNpcName("npc_technician","formal"))>> <<if $npc_technician.relationship.her_caged>>once again securely locked <</if>>girl-cock before heading home... still walking a little bow-legged as <<=setup.getNpcName("npc_technician","first")>> smirks in triumph, thanking you for your organisation and obedient participation in the evening's festivities before kissing you good-night.<br>
<br>
[<<moveTo "room_citymap" "Dress and head out." 300 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: ex + technician sex, you dom
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("cage")>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
The sight of two sparkling-eyed submissives is one that few could resist... least of all yourself, and you swiftly have <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_exgirlfriend","first")>> on their knees, supervising them "getting to know one another" better as making out turns to clothes falling off turns to all three of you piling into <<=ps(setup.getNpcName("npc_technician","first"))>>.<br>
<br>
<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> butt-sluttery rears its head from the instant <<=ps(setup.getNpcName("npc_technician","first"))>> rises into view and soon you're <<if $npc_technician.relationship.her_caged>>unlocking your lovely save to give<<else>>dominating as your lovely slave gives<</if>> it to your ex hard as you tease her about whether or not anal "count." <br>
<br>
"@@.npc_exgirlfriend;Yes, it counts!@@" She cries out "@@.npc_exgirlfriend;Anal is the best! Lock me up and make me an anal only slut!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> chuckles as she continues to thrust... and <<=setup.getNpcName("npc_exgirlfriend","first")>> moans in orgasm. "@@.npc_technician;All the rumors about your ex... I never realised she was like this! Well... I guess she wasn't... which was the whole problem... still... thank you <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>... this ass is fucking great!@@"<br>
<br>
Still making the beast with two backs, your two temporary subs show their proper thanks for your wonderful "leadership,"
<<if setup.checkItemTypeWorn("cage")>>
doubling up on devotedly kissing and worshiping your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>.
<<elseif $player.body_ref.penis && $player.body_ref.vagina>>
doubling up to somehow both blow and eat you out.
<<elseif $player.body_ref.penis>>
switching off at eating you out.
<<elseif $player.body_ref.penis && $player.body_ref.balls>>
doubling up to blow you and worshipfully suck your balls.
<<else>>
doubling up to blow you.
<</if>>
A half dozen orgasms later... and some nice post-coital cuddling and the three finally crawl out of <<=ps(setup.getNpcName("npc_technician","first"))>> bed as <<=setup.getNpcName("npc_exgirlfriend","first")>> thanks <<=setup.getNpcName("npc_technician","first")>> for being "@@.npc_exgirlfriend;such a gracious and giving host@@" before heading home... still walking a little bow-legged as <<=setup.getNpcName("npc_technician","first")>> smirks in triumph, thanking you for your organisation and obedient participation in the evening's festivities before kissing you good-night.<br>
<br>
[<<moveTo "room_citymap" "Head out." 300>>]
</div>/*#
#desc: no show ex visit
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall from <<=setup.getNpcName("npc_exgirlfriend","first")>>.<br>
<br>
"@@.npc_exgirlfriend;Did you forget about our date? Because I'm at your flat... and you ain't!@@" She snorts in annoyance. "@@.npc_exgirlfriend;I thought you'd become a bit more diligent about scheduling, what with your job and all... but I guess not. Oh well, I'll talk to you later.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: abort ex gf your flat sex
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
Just as <<=setup.getNpcName("npc_exgirlfriend","first")>> is about to strip you state that you actually don't want to do this.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> sighs as she pulls her shirt down. "@@.npc_exgirlfriend;I thought you were over this? I mean, you aren't a virgin anymore, and you invited me over...@@" she shakes her head as she trails off. "@@.npc_exgirlfriend;Whatever, I'm not going to force you, let me know if you want to do something else sometime... and try to be serious, right?@@"<br>
<br>
[<<moveTo "room_foyer" "See her out." 300>>]
</div>/*#
#desc: ex gf + chuck
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_exgirlfriend","first")>> arrives and you lead her into the livingroom where <<=setup.getNpcName("npc_chuck","first")>> perches in <<his npc_chuck>> pot looking seductively green.<br>
<br>
"@@.npc_exgirlfriend;I still can't believe that little potted plant grew so big so fast...@@" the sound of her voice seems to draw <<=ps(setup.getNpcName("npc_chuck","first"))>> attention as a pair of tentacle tendrils turn in her direction, already beaded with drops of lubricating excitement. "@@.npc_exgirlfriend;Hmm... seems <<he npc_chuck>> remembers my voice...@@" She states, taking a step closer as one of <<=ps(setup.getNpcName("npc_chuck","first"))>> tentacles begins gently pulling at her clothes. "@@.npc_exgirlfriend;Hey, careful! I'm coming...@@" She starts shedding clothes as she glances back at you "@@.npc_exgirlfriend;hey, you invited me over, let's have some fun!@@"<br>
<br>
[<<moveTo "event_exgirlfriend_date_your_flat_chuck_2" "Embrace nature." 1800>>]<br>
[<<moveTo "event_exgirlfriend_date_your_flat_abort" "You changed your mind." 300>>]
</div>/*#
#desc: ex gf + chuck sex
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_exgirlfriend","first")>> shed your clothes and walk into the jungle of <<=ps(setup.getNpcName("npc_chuck","suffix"))>> welcoming vines. Entwined, entangled, and fucked from every direction.<br>
<br>
Still simultaneously fucking the both of you, <<=setup.getNpcName("npc_chuck","first")>> brings you and <<=setup.getNpcName("npc_exgirlfriend","first")>> close, vines retracting from your throats to leave them glistening with <<his npc_chuck>> aphrodisiac-like sap... and you and <<=setup.getNpcName("npc_exgirlfriend","first")>> kiss.<br>
<br>
You have a fleeting memory of how <<=setup.getNpcName("npc_botanist","first")>> sold <<=setup.getNpcName("npc_chuck","first")>> to you in hopes of bringing you and your then-girlfriend closer together... further thoughts about how you might have reacted to something like this at the time washed away by the far more pressing concern of orgasms... MANY orgasms.<br>
<br>
[<<moveTo "event_exgirlfriend_date_your_flat_chuck_3" "Continue." 1200>>]
</div>/*#
#desc: ex gf + chuck leave
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyFatigue -25>>
<<applyStress -20>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
Satiated, and then some, <<=setup.getNpcName("npc_chuck","suffix")>> finally lowers you and <<=setup.getNpcName("npc_exgirlfriend","first")>> to the couch like a child tucking their dolls in after playing with them. <<=setup.getNpcName("npc_exgirlfriend","first")>> turns to look at you with a smile, "@@.npc_exgirlfriend;wow that was... well... let me know anytime if you need help with... plant care.@@"<br>
<br>
You both share a chuckle and then get dressed, <<=setup.getNpcName("npc_exgirlfriend","first")>> blowing <<=setup.getNpcName("npc_chuck","first")>> and you each a kiss on the way out the door.<br>
<br>
[<<moveTo "room_foyer" "Back to your flat." 60>>]
</div>/*#
#desc: ex gf + black box intro
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_blackbox02.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You lead <<=setup.getNpcName("npc_exgirlfriend","first")>> to where you've set up the "black box" she left behind and she looks at it with a wistful smile.<br>
<br>
"@@.npc_exgirlfriend;Ah, my old love... Dreammaker you were named well... or maybe Dream Fulfiller would have been more apt...<<if $npc_exgirlfriend.flags.bondage_machine.suction_ugrade || $npc_exgirlfriend.flags.bondage_machine.rrr.vag_upgrade || $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade>> I see you've gotten a few upgrades...<</if>> may I?@@" She asks with a lusty smile, and a twinkle in her eye.<br>
<br>
[<<moveTo "event_exgirlfriend_date_your_flat_black_box_2" "Help her strap in for a ride." 1800>>]<br>
[<<moveTo "event_exgirlfriend_date_your_flat_abort" "You changed your mind." 300>>]
</div>/*#
#desc: ex gf + black box intro
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_blackbox02.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
You help <<=setup.getNpcName("npc_exgirlfriend","first")>> into the black box, making sure not to overwrite any of your own settings as she gleefully settles in and starts up <<if $fetish.get_raped>> "Rape Rape Revolution." <<else>> "Space Slut Supreme." <</if>><br>
<br>
The machine starts pumping and <<=setup.getNpcName("npc_exgirlfriend","first")>> moans with lust as you get to enjoy the show of what it's like for someone to stroke, suck, fuck and struggle through the devilishly erotic game.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> may be out of practice, but she soon adapts to the machine's instructions, pushing through a couple missions, and a couple dozen orgasms, before tapping out, sweaty, panting, drooling, and leaking from innumerable climaxes as she slowly catches her breath and then looks up at you with a satisfied grin.<br>
<br>
[<<moveTo "event_exgirlfriend_date_your_flat_black_box_3" "Help her back to her feet." 600>>]<br>
</div>/*#
#desc: ex gf + black box finish
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_blackbox02.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
The routine finished and automatic bondage unstrapped, you help <<=setup.getNpcName("npc_exgirlfriend","first")>> up off the Dreammaker machine. She wobbles slightly, legs a bit unsteady as she looks down at the still glistening phalli that had just been inside of her.<br>
<br>
"@@.npc_exgirlfriend;That... that's even more intense than I remember... probably for the best that I left it here, because I don't know if I'd be able to get anything done if a temptation like that was just lurking in my flat... thanks again for letting me take if for a spin.@@"<br>
<br>
[<<moveTo "room_foyer" "She dresses and departs." 60>>]
</div>/*#
#desc: ex gf + dog intro
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_exgirlfriend","first")>> arrives and you and <<=setup.getNpcName("npc_dog","first")>> greet her at the door.<br>
<br>
"@@.npc_exgirlfriend;Oh hello! Oh you are so handsome! Have you been keeping <<=$player.first_name>> company?...@@"<br>
<br>
As she pets your Alpha he stares back up at her, glancing at you just long enough for you to obediently drop to your knees before staring at... no, through <<=setup.getNpcName("npc_exgirlfriend","first")>>.<br>
<br>
You join the pack leader in looking up at <<=setup.getNpcName("npc_exgirlfriend","first")>>... and she slowly drops to her knees, crawling after you as <<=setup.getNpcName("npc_dog","first")>> leads the way further into the flat...<br>
<br>
[<<moveTo "event_exgirlfriend_date_your_flat_dog_2" "Time to help break in the new bitch..." 1800>>]<br>
[<<moveTo "event_exgirlfriend_date_your_flat_abort" "You changed your mind about playing today." 300>>]
</div>/*#
#desc: ex gf + dog sex
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 4 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_dog.penis_size 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_dog","first")>> leads the pack to the living room and then circles <<=setup.getNpcName("npc_exgirlfriend","first")>>, sniffing and licking at her experimentally, somehow communicating for her to strip and present, your ex getting visibly excited as the beast exploits her submissive nature on pure instinct.<br>
<br>
On all fours and dripping is already ready... but <<=setup.getNpcName("npc_dog","first")>> comes to you first, letting you warm him up with your lips until his knot is hard, swelled, hot and slick with saliva for you to guide it into where you know <<=setup.getNpcName("npc_exgirlfriend","first")>> wants it most, her slutty ass spreading for <<=ps(setup.getNpcName("npc_dog","first"))>> thick girth as she moans submissively, her first orgasm comming as his knot locks inside of her.<br>
<br>
<<=setup.getNpcName("npc_dog","first")>> barks but once, a sharp, deep assertation of his power as he fucks <<=setup.getNpcName("npc_exgirlfriend","first")>> into the floor and you look on, watching her eyes roll back in familiar surrender, human intelligence temporarily pushed aside in favour of pure animalistic submission as, for a few orgasmic minutes, she gives herself over completely to being his bitch.<br>
<br>
[<<moveTo "event_exgirlfriend_date_your_flat_dog_3" "Continue." 1800>>]
</div>/*#
#desc: ex gf + dog leave
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.cum>>
<<applyExperience 'cum' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_dog","first")>> takes the full breadth of his pleasure from <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> leaving her quivering and gaping<<if $fetish.cum>>, and leaking his seed down her leg... seed that you quickly rush in to obediently lick clean<<else>>, and you obediently lick him clean<</if>>.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> joins you in thanking your temporary mutual Master, and the two of you spend several minutes grooming him to his satisfaction before he finally trots off to his bed for a nap... and you and <<=setup.getNpcName("npc_exgirlfriend","first")>> are afforded the opportunity to return to humanity.<br>
<br>
"@@.npc_exgirlfriend;Wow that was...@@" she shivers at the memory of what she has just done as you help hand her back her clothes. "@@.npc_exgirlfriend;I've assumed the moniker "The Bitch" at from time to time... but I guess now it's literally true.@@" She bites her lip and smiles at you as she pulls her top over her head. "@@.npc_exgirlfriend;Thanks for sharing. That... that was an experience I'll not soon forget.@@"<br>
<br>
Walking a little unsteadily in her heels she leaves, and you take a moment to check in on your Alpha, still looking in charge, powerful and strong, even in sleep.<br>
<br>
[<<moveTo "room_foyer" "Back to your flat." 60>>]
</div>/*#
#desc: bump into ex girlfriend on the way to the mall first day
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<removeEvent 'exgf_firstday_visit'>>
<<if $player.sec_style.body.name != "">>
<<set $npc_exgirlfriend.flags.reactnamechange = true>>
<</if>>
<<set $npc_exgirlfriend.flags.woreherclothes = setup.checkItemWorn("skirt_black") || setup.checkItemWorn("satin_blouse_white")>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
Heading out early you're on the way out of your apartment building on the way to the mall when who should you run into but <<=setup.getNpcName('npc_exgirlfriend', 'first')>>, your ex-girlfriend!<br>
<br>
<<if setup.analyzeWornTags(['male','unisex','female']) == "male">>
"@@.npc_exgirlfriend;Woah, <<=$player.first_name>>, you're up bright an early! I was coming by to see you, but realised it would be a bit rude to ring the bell this early, but I guess you're already up!@@"<br>
<br>
You explain that you're actually in a bit of a rush, they you just started a new job.<br>
<br>
"@@.npc_exgirlfriend;Woah, new job? I thought you liked your old gig? Well... not LIKED liked, but you seemed... resigned to it? And at least you got to work with that old friend of yours. Well, I was originally coming by to get some clothing I left, but if you're in a rush well... Y'know just go ahead and donate it to charity or something but... would you mind holding on to that black box of mine? It's got some important stuff in it, but I just don't have room at my new place and well, with you living alone now you'd hardly notice it just sitting in the closet...@@"
<<else>>
She looks at you in confusion, seeming to not recognise you for a moment as she scans your clothing and then fixates on your face.<br>
<br>
<<if $player.sec_style.body.name == "">>
"@@.npc_exgirlfriend;Woah, <<=$player.first_name>>, is that you?@@"<br>
<br>
The shocked look on her face slowly melts. "@@.npc_exgirlfriend;Wow, this is... well, a bit of a change!@@" She pauses and then smiles in encouragement. "@@.npc_exgirlfriend;I like it — you look good!@@"<br>
<br>
You blush and thank her for the compliment as you note that you're in a bit of a hurry as you start a new job today.<br>
<br>
"@@.npc_exgirlfriend;New job, new clothes? I hope this life revamp isn't my fault... or maybe it's what you need? <<if $npc_exgirlfriend.flags.woreherclothes>>but it looks like you're putting them to use! To tell you the truth... you're wearing them as well as I ever did, imagine that! Also —<<else>>but if you're in a rush well... Y'know just go ahead and donate it to charity or something but... <</if>> would you mind holding on to that black box of mine? It's got some important stuff in it, but I just don't have room at my new place and well, with you living alone now you'd hardly notice it just sitting in the closet...@@"
<<else>>
"@@.npc_exgirlfriend;Woah, <<=$player.original_first_name>>, is that you?@@"<br>
<br>
You consider pretending you don't even know her... but instead reply that actually, it's <<=$player.first_name>> now.<br>
<br>
"@@.npc_exgirlfriend;Wow, clothes, name... you've been making some radical changes since our break-up!@@" She pauses and then smiles in encouragement. "@@.npc_exgirlfriend;I like it — you look good!@@"<br>
<br>
You blush and thank her for the compliment as you note that you're in a bit of a hurry as you start a new job today.<br>
<br>
"@@.npc_exgirlfriend;New job as well? Maybe that's good, I know that IT position was a bit of a dull dead end... <<if $npc_exgirlfriend.flags.woreherclothes>>but it looks like you're putting them to use! To tell you the truth... you're wearing them as well as I ever did, imagine that! Also —<<else>>but if you're in a rush well... Y'know just go ahead and donate it to charity or something but... <</if>> would you mind holding on to that black box of mine? It's got some important stuff in it, but I just don't have room at my new place and well, with you living alone now you'd hardly notice it just sitting in the closet...@@"
<</if>>
<</if>>
<br><br>
Reminding her you're in a hurry you say sure, not wanting to be distracted by her, or, specifically, all the feelings she stirs up as you hurry out of the building and head for the mall.<br>
<br>
[<<moveTo "room_mall" "Continue on to the mall." 300>>]
</div>/*#
#desc: ex girlfriend shows up to apartment morning of 2nd day
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You hear your doorbell ring, but being a bit drowsy this early in the morning, you react kind of slow. And you didn't have your fill of hot black caffeinated beverage, aka coffee yet. You have no idea who this could be so you take a look at the screen of your security system. It looks like a woman.<br>
<br>
<<printThought "Wait a second...">><br>
<br>
It seems to be your former girlfriend <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. Weird that you didn't recognise her faster, but you've had a lot on your mind, and the security camera isn't the greatest. Maybe she's here to fetch the rest of her stuff?<br>
<br>
<<if $player.sec_style.body.name != "" && setup.checkVisibleClothingTag('female') > 10>>
[<<moveTo "event_exgirlfriend_enthusiast_1" "Open the door." 180 "<<set $scene.order=false>>">>]
<<elseif !(setup.checkItemWorn("cotton_panties") || setup.checkItemWorn("pantyhose_black") || setup.checkItemWorn("skirt_black") || setup.checkItemWorn("satin_blouse_white")) && setup.checkVisibleClothingTag('female') == 0>>
[<<moveTo "event_exgirlfriend_commando_1" "Open the door." 60>>]
<<else>>
[<<moveTo "event_exgirlfriend_fetchthings_2" "Open the door." 60>>]
<</if>>
</div>/*#
#desc: exgf asks for her things morning of the 2nd day
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<set $scene.naked = false>>
<<set $scene.female = false>>
<<set $scene.completeoutfit = false>>
<<if setup.checkNaked()>>
<<set $scene.naked = true>>
<<set $npc_exgirlfriend.flags.nakedwhiledelivery = true>>
<<applyExperience 'humiliation' 8 'slightly' $SEEN_FRIEND>>
<<elseif (setup.checkVisibleClothingTag('female')>10)>>
<<set $scene.female = true>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<<set $npc_exgirlfriend.flags.woreherclothes = setup.checkItemWorn("cotton_panties") || setup.checkItemWorn("pantyhose_black") || setup.checkItemWorn("skirt_black") || setup.checkItemWorn("satin_blouse_white")>>
<<if setup.checkItemWorn("cotton_panties") && setup.checkItemWorn("pantyhose_black") && setup.checkItemWorn("skirt_black") && setup.checkItemWorn("satin_blouse_white")>>
<<set $scene.completeoutfit = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You open the door.<br>
<br>
<<if $scene.naked || $scene.female>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are... are...@@"<br>
<br>
For some reason, she starts to stutter. Which is strange, because she's normally not a person to be at loss for words. The only time you ever remember hearing her stutter is when you caught her with the yoga instructor. So why does she... <<printThought "oh fuck.">>
<<if $player.flags.landlordsawyounaked>>
You did it again.
<</if>>
<<if $scene.naked>>
You answered the door completely naked...
<<elseif $scene.completeoutfit>>
Well... again as in you messed up again. Big time. You opened the door. Wearing her clothes. Pretty much all of them at once.
<<elseif $npc_exgirlfriend.flags.woreherclothes>>
Well... again as in you messed up again. Big time. You opened the door. Wearing her clothes. A few of them at least.
<<else>>
Well... again as in you messed up again. Big time. You opened the door. Wearing women's clothing... though at least they aren't your ex's <<printThought "Or does that make it worse?">>
<</if>>
<<else>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are you?@@"<br>
<br>
<</if>>
<<if $scene.female>>
"@@.npc_exgirlfriend;<<=$player.first_name>>...@@" She tries to force a smile on her obviously puzzled face, and continues a lot fainter, "@@.npc_exgirlfriend;Oh god, this explains so much.@@"<br>
<br>
Having calmed herself a little, she starts again, this time in a normal voice and while pushing you inside the foyer, closing the door behind her. "@@.npc_exgirlfriend;<<=$player.first_name>><<if $npc_exgirlfriend.flags.woreherclothes>>, are those mine?<<else>>?!? What are you wearing? I realise I didn't call ahead but<</if>> I was in the vicinity, and thought I could pick up some of my missing stuff. Is this why my dresses always felt a little bit stretched? What is going on, <<=$player.first_name>>? We were together for three years, you owe me an explanation!@@"<br>
<br>
You try your best to explain the train of decisions that culminated in this situation. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> listens to you patiently, even though you seem to stumble over every 2nd word. After you're done, she sighs.<br>
<br>
"@@.npc_exgirlfriend;<<=$player.first_name>>, first of all, I'm sorry you lost your job. The timing could not have been worse. But listen to yourself. Your explanation makes no sense. <<if $player.sec_style.clothing.underwear == "strict">>You expect me to believe some psychotic manager is FORCING you to wear <<if $fetish.sissy && (setup.checkItemWorn("sissy_panties_pink") || setup.checkItemWorn("sissy_garter_pink") || setup.checkItemWorn("sissy_bra_pink") || setup.checkItemWorn("sissy_stockings_pink"))>>sissy<<else>>female<</if>> attire? Come on, this isn't some pervy game, this is reality, how do you expect me to believe something like that?<<else>>Null, nada, niente. <<if setup.checkPlayerDecency()>>Suddenly deciding to dress in my work clothing?<<else>>If you were going to wear <<if setup.checkItemWorn("cotton_panties") || setup.checkItemWorn("pantyhose_black")>>my<<else>>women's<</if>> undergarments under your regular clothes, why did you open the door <<if setup.checkPlayerDecency()>>flashing underwear<<else>>dressed women's clothes<</if>>?<</if>><</if>> You are... sorry, WERE a software developer. Does this story of your sound at all logical to you?@@"<br>
<br>
<<printThought "No... not at all">><br>
<br>
"@@.npc_exgirlfriend;This lack of communication is exactly what ended our relation in the first place. I know it's too late now, but I want you to know that this wasn't your fault... well, not only your fault. I only accepted your proposal to remain a virgin since I thought you were trying to impress me and that you would grow past such silliness sooner or later. I should have simply told you the truth and then we could have fucked like rabbits. But you always seemed so grounded on the whole ordeal, that I never managed to bring it up. So please, whatever is going on in your head right now... cut the whole staying virgin bullshit and try to have some fun for once in your life! And if this is your new idea of having fun, well kudos to you! <<if $npc_exgirlfriend.flags.woreherclothes>>I think you can keep these<<else>>If you find any of my things left behind, well, you can keep them, maybe it'll help you forgive the whole mess of our breakup<</if>>. And the boxes as well, if you've found them already. Take care. I'm really going to miss those magic hands of yours.@@"
<<else>>
<<if $scene.naked>>
For some reason you opened the door
<<if $player.timebased.horny >= 50>>
sporting nothing but a raging erection.
<<else>>
wearing little to nothing.
<</if>>
Now you're testing how well your face can render different shades of red. You quickly grab a towel and put it over your hips.
<br><br>
<<if $player.timebased.horny >= 50>>
"@@.npc_exgirlfriend;Oh my. If you'd only shown that kind of initiative when we were still together...@@"<br>
<<else>>
"@@.npc_exgirlfriend;Interesting. If you'd only shown that kind of initiative when we were still together...@@"<br>
<</if>>
<br>
<</if>>
You ask her what she wants.<br>
<br>
"@@.npc_exgirlfriend;Straight to the point. Okay, I was just in the vicinity and I think I left a few items when I relocated so hastily last week.@@"<br>
<br>
<<printThought "Oh shit, she is talking about her underwear.">><br>
<br>
You hastily make up an excuse, that you thought she did not need these clothes anymore, and that's why you donated them to the used clothing collection. You offer to fetch her boxes though.<br>
<br>
"@@.npc_exgirlfriend;Oh... well, that's too bad. As for the boxes... if you don't mind, I want to leave them at your place for the time being. They're rather heavy and my new place is not really that big, so maybe I can fetch them later?@@"<br>
<br>
You nod but you're kind of curious about the black box and ask about its content.<br>
<br>
"@@.npc_exgirlfriend;Wha...! Nothing... nothing of importance. Simply some mementos from earlier. Yeah. Look,@@" she tries to distract, "@@.npc_exgirlfriend;I know it's too late now, but I want you to know that this wasn't your fault... alone. I only accepted your proposal to remain a virgin since I thought you were trying to impress me and that you would grow past such silliness sooner or later. I should have simply told you the truth and then we could have fucked like rabbits. But you always seemed so grounded on the whole ordeal that I never managed to bring it up. So please, cut the whole staying virgin bullshit and try to have some fun for once in your life! Well, take care. I'm really going to miss these magic hands of yours.@@"
<</if>>
<br><br>
And with those words she departs.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 360 "<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: exgf arrives at the same time as your online order
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You hear your doorbell ring, but being a bit drowsy this early in the morning you react kind of slow. And you didn't have your fill of hot black caffeinated beverage, aka coffee yet. That must be your delivery. Do drones ring bells? Well, it doesn't matter. What does matter indeed is that your delivery has arrived just in time for you to save your first workday.<br>
<br>
<<printThought "Save my first workday huh? Well, it's not like my workday would have needed any saving if I didn't mess up last week. Well, time to stop dwelling in the past. Looks like everything is going to work out somehow anyway. Yeah!">><br>
<br>
<<if $player.sec_style.body.name != "">>
[<<moveTo "event_exgirlfriend_enthusiast_1" "Open the door for the delivery." 180 "<<set $scene.order=true>>">>]
<<else>>
[<<moveTo "event_exgirlfriend_recive_onlineorder_2" "Open the door for the delivery." 60>>]
<</if>>
</div>/*#
#desc: exgf gives you your online order and asks for her things
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<addItem "alizon_box_1">>
<<set $scene.naked = false>>
<<if setup.checkNaked()>>
<<set $scene.naked = true>>
<<set $npc_exgirlfriend.flags.nakedwhiledelivery = true>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<if setup.checkItemOwned("cotton_bra")>>
<<deleteItem "cotton_bra">>
<</if>>
<<if setup.checkItemOwned("pantyhose_black")>>
<<deleteItem "pantyhose_black">>
<</if>>
<<if setup.checkItemOwned("cotton_panties")>>
<<deleteItem "cotton_panties">>
<</if>>
<<if setup.checkItemOwned("satin_blouse_white")>>
<<deleteItem "satin_blouse_white">>
<</if>>
<<if setup.checkItemOwned("skirt_black")>>
<<deleteItem "skirt_black">>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You open the door. That's strange. The delivery drone looks a lot like your former girlfriend <<=setup.getNpcName('npc_exgirlfriend', 'first')>>. As you focus your eyes, the painful truth sinks in, that it is as a matter of fact your former girlfriend.<br>
<br>
<<if $scene.naked>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are... are...@@"<br>
<br>
For some reason, she starts to stutter. Which is strange, because she's normally not a person to be at loss of words. The only time you ever heard her stutter is when you caught her with the yoga instructor. So why does she... <<printThought "oh fuck.">>
<<if $player.flags.landlordsawyounaked>>
You did it again.
<</if>>
For some reason you opened the door
<<if $player.timebased.horny >= 50>>
sporting only a raging erection.
<<else>>
wearing little to nothing.
<</if>>
You start testing how good your face can render different shades of red as you quickly grab a towel and put it over your hips.<br>
<br>
<<if $player.timebased.horny >= 50>>
"@@.npc_exgirlfriend;Oh my. If you'd only shown that kind of initiative when we were still together...@@"<br>
<<else>>
"@@.npc_exgirlfriend;Interesting. If you'd only shown that kind of initiative when we were still together...@@"<br>
<</if>>
<br>
<<printThought "What's that supposed to mean?">>
<<else>>
"@@.npc_exgirlfriend;Hello <<=$player.first_name>>. How are you?@@"
<</if>>
<br><br>
You ask her what she wants.<br>
<br>
"@@.npc_exgirlfriend;Straight to the point, huh? Okay, I was just in the vicinity, and I think I left a few items when I relocated so hastily last week. And some strange looking drone flew against the wall down by the entrance for a few times before dropping this. Then it simply flew away. I think it's for you, based on the name and address.@@"<br>
<br>
<<printThought 'So much for the "revolution in personal delivery." Revolution my ass!'>><br>
<br>
You take the brown Alizon cardboard box and fetch her belongings from the wardrobe in the bedroom.<br>
<br>
"@@.npc_exgirlfriend;If you don't mind, I want to leave the boxes at your place for the time being. They're rather heavy and my new place is not really that big, so maybe I can fetch them later?@@"<br>
<br>
You nod and put the boxes back in the wardrobe. But you're kind of curious about the black box and ask about its content.<br>
<br>
"@@.npc_exgirlfriend;Wha...! Nothing... nothing of importance. Simply some mementos from earlier. Yeah. Look,@@" she tries to distract, "@@.npc_exgirlfriend;I know it's too late now, but I want you to know that this wasn't your fault... alone. I only accepted your proposal to remaining virgin since I thought you were trying to impress me and that you would grow past such silliness sooner or later. I should have simply told you the truth and then we could have fucked like rabbits. But you always seemed so grounded on the whole ordeal that I never managed to bring it up. So please, cut the whole staying virgin bullshit and try to have some fun for once in your life! Well, take care. I'm really going to miss those magic hands of yours.@@"<br>
<br>
And with these words she departs.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 360 "<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: meet exgf naked 2nd morning
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<set $scene.naked = setup.checkNaked()>>
<<if $scene.naked>>
<<set $npc_exgirlfriend.flags.nakedwhiledelivery = true>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You open the door.<br>
<br>
<<if $scene.naked>>
"@@.npc_exgirlfriend;Hello <<=$player.original_first_name>>. How are... are...@@"<br>
<br>
For some reason, she starts to stutter. Which is strange, because she's normally not a person to be at loss for words. The only time you ever remembering her stuttering is when you caught her with the yoga instructor. So why does she... <<printThought "oh fuck.">>
<<if $player.flags.landlordsawyounaked>>
You did it again.
<</if>>
For some reason you opened the door wearing little to nothing, and test how good your face can depict different shades of red. You quickly grab a towel and put it over your hips.<br>
<br>
"@@.npc_exgirlfriend;Interesting,@@" she ponders. "@@.npc_exgirlfriend;If you'd only shown that kind of initiative when we were still together.@@"<br>
<br>
<<printThought "What's that supposed to mean?">>
<<else>>
"@@.npc_exgirlfriend;Hello <<=$player.original_first_name>>. How are you?@@"
<</if>>
<br><br>
You ask her what she wants.<br>
<br>
"@@.npc_exgirlfriend;Straight to the point, huh? Okay, I was just in the vicinity, and I think I left a few items when I relocated so hastily last week.@@"<br>
<br>
<<if $player.sec_style.clothing.underwear == "voluntary">>
<<printThought "I was going to use her panties... maybe I hold onto those?">><br>
<br>
[<<moveTo "event_exgirlfriend_commando_2" "Fetch her other things." 360 "<<set $scene.keeppanties=true>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]<br>
<</if>>
[<<moveTo "event_exgirlfriend_commando_2" "Fetch all her things." 360 "<<set $scene.keeppanties=false>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: meet exgf naked 2nd morning return things
#status: FINISHED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.carrying = true>>
<<set $scene.tookPanties = false>>
<<if !$scene.keeppanties>>
<<if !setup.checkItemInInventory("cotton_bra")>>
<<set $scene.carrying = false>>
<</if>>
<<if setup.checkItemOwned("cotton_bra") && $player.body.breastsize[0] == 0>>
<<deleteItem "cotton_bra">>
<</if>>
<<if setup.checkItemOwned("pantyhose_black")>>
<<if !setup.checkItemInInventory("pantyhose_black")>>
<<set $scene.carrying = false>>
<</if>>
<<deleteItem "pantyhose_black">>
<</if>>
<<if setup.checkItemOwned("cotton_panties")>>
<<if !setup.checkItemInInventory("cotton_panties")>>
<<set $scene.carrying = false>>
<</if>>
<<set $scene.tookPanties = true>>
<<deleteItem "cotton_panties">>
<</if>>
<</if>>
<<if setup.checkItemOwned("satin_blouse_white")>>
<<if !setup.checkItemInInventory("satin_blouse_white")>>
<<set $scene.carrying = false>>
<</if>>
<<deleteItem "satin_blouse_white">>
<</if>>
<<if setup.checkItemOwned("skirt_black")>>
<<if !setup.checkItemInInventory("skirt_black")>>
<<set $scene.carrying = false>>
<</if>>
<<deleteItem "skirt_black">>
<</if>>
<<if $scene.tookPanties && $player.sec_style.clothing.underwear == "voluntary">>
<<set $player.sec_style.clothing.underwear = "">>
<<set $player.flags.commando = true>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You <<if $scene.carrying>>hand over her clothes, she raises a suspicious eyebrow that you were carrying them with you, but you're already fetching the rest of<<else>>fetch<</if>> her belongings from the wardrobe in the bedroom.<br>
<br>
<<if $scene.keeppanties>>
Remembering your immolated underthings, you collect <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> non-underthings and rush back to the door.<br>
<br>
She raises an eyebrow, but makes no comment about the missing underwear as she takes the clothing. "@@.npc_exgirlfriend;If you don't mind, I want to leave the boxes at your place for the time being. They're rather heavy and my new place is not really that big, so maybe I can fetch them later?@@"
<<else>>
<<if $player.body.breastsize[0] > 0>>
She looks at your chest for a moment and then hands back the bra. "@@.npc_exgirlfriend;I think you could use this a bit more than me. That bra never fit all that great, anyway. Oh, and if you don't mind, I want to leave the boxes at your place for the time being. They're rather heavy and my new place is not really that big, so maybe I can fetch them later?@@"<br>
<<else>>
"@@.npc_exgirlfriend;If you don't mind, I want to leave the boxes at your place for the time being. They're rather heavy and my new place is not really that big, so maybe I can fetch them later?@@"
<</if>>
<</if>>
<br><br>
You nod and put the boxes back in the wardrobe. But you're kind of curious about the black box and ask about its content.<br>
<br>
"@@.npc_exgirlfriend;Wha...! Nothing... nothing of importance. Simply some mementos from earlier. Yeah. Look,@@" she tries to distract, "@@.npc_exgirlfriend;I know it's too late now, but I want you to know that this wasn't your fault... alone. I only accepted your proposal to remain a virgin since I thought you were trying to impress me and that you would grow past such silliness sooner or later. I should have simply told you the truth and then we could have fucked like rabbits. But you always seemed so grounded on the whole ordeal that I never managed to bring it up. So please, cut the whole staying virgin bullshit and try to have some fun for once in your life! Well, take care. I'm really going to miss those magic hands of yours.@@"<br>
<br>
And with those words she departs.<br>
<br>
<<if $scene.tookPanties && setup.getItemsByFilter("specific", "panties").length == 0>>
As she leaves you realise that you just gave up your only underwear...<br>
<br>
<<if setup.checkItemOwned("technician_intro_panties_package")>>
<<printThought "Uh-oh, I guess I'm stuck going to work commando... oh, wait... <<=ps(setup.getNpcName('npc_technician','first'))>> backup panties! Emergency... averted?.">>
<<else>>
<<printThought "Uh-oh, I guess I'm stuck going to work commando... or at least going out without until I can find something at the mall on the way to work...">>
<</if>>
<br><br>
<</if>>
[<<moveTo "room_foyer" "Close the door." 360 "<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: exgf asks for her things morning of the 2nd day - enthusiast
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<set $scene.naked = false>>
<<set $scene.female = false>>
<<set $scene.completeoutfit = false>>
<<if setup.checkNaked()>>
<<set $scene.naked = true>>
<<set $npc_exgirlfriend.flags.nakedwhiledelivery = true>>
<<applyExperience 'humiliation' 8 'slightly' $SEEN_FRIEND>>
<<elseif setup.checkVisibleClothingTag('female')>10>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<<set $npc_exgirlfriend.flags.woreherclothes = setup.checkItemWorn("cotton_panties") || setup.checkItemWorn("pantyhose_black") || setup.checkItemWorn("skirt_black") || setup.checkItemWorn("satin_blouse_white")>>
<<if setup.checkItemWorn("cotton_panties") && setup.checkItemWorn("pantyhose_black") && setup.checkItemWorn("skirt_black") && setup.checkItemWorn("satin_blouse_white")>>
<<set $scene.completeoutfit = true>>
<</if>>
<</if>>
<<if $player.sec_style.body.name != "">>
<<set $npc_exgirlfriend.flags.reactnamechange = true>>
<</if>>
<<if $scene.order>>
<<addItem "alizon_box_1">>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You open the door.<br>
<br>
"@@.npc_exgirlfriend;Hello <<if $player.sec_style.body.name == "">><<=$player.first_name>><<else>><<=$player.original_first_name>><</if>>. How are... are...@@"<br>
<br>
For some reason, she starts to stutter. Which is strange, because she's normally not a person to be at loss for words. The only time you ever remember hearing her stutter is when you caught her with the yoga instructor. So why does she...
<<if $player.flags.landlordsawyounaked && setup.checkNaked()>>
<<printThought "oh fuck.">> You did it again.
<</if>>
<<if $scene.naked>>
You answered the door completely naked...
<<elseif $scene.completeoutfit>>
Right... you're dressed like a girl... probably not at all what she was expecting from you...
<<elseif $npc_exgirlfriend.flags.woreherclothes>>
Well... again as in you messed up again. Big time. You opened the door wearing her clothes. A few of them at least.
<<else>>
Right... You greeted her wearing women's clothing...
<</if>>
<br><br>
<<if $player.sec_style.body.name == "">>
"@@.npc_exgirlfriend;<<=$player.first_name>>...@@" She shakes her head, "@@.npc_exgirlfriend;on the one hand this new look should surprise me but... you actually look really good, and... happy? Or at least the happiest I can remember seeing you since well before the breakup...@@"<br>
<br>
She sighs, the weight of your mutual past hanging heavy in the air for several moments
<<else>>
"@@.npc_exgirlfriend;<<=$player.original_first_name>>...@@" she starts again, only for you to interject to correct her that it's <<=$player.first_name>>.<br>
<br>
"@@.npc_exgirlfriend;<<=$player.first_name>>? Woah, name, clothes... did me breaking up with you kick off some sort of avalanche of pent-up-ness?@@" She shakes her head, seemingly in surprise, "@@.npc_exgirlfriend;wow... well, I guess good luck? It feels awkward to offer more, given how things ended between us... but sincerely, I hope you figure yourself out and find happiness.@@"<br>
<br>
An awkward silence hangs between the two of you
<</if>>
before she coughs and redirects things.<br>
<br>
"@@.npc_exgirlfriend;Anyway... the reason I came by was to pickup some clothes I left behind... but <<if setup.checkItemWorn("skirt_black") || setup.checkItemWorn("satin_blouse_white")>>it looks like you're already putting them to use<<else>>I think I'll just let you have them<</if>>, not that such a small gift really makes up for things but... maybe it'll help? Oh, and would you mind holding on to that black box of mine? It's got some important stuff in it, but I just don't have room at my new place and well, with you living alone now you'd hardly notice it just sitting in the closet...@@"<br>
<br>
You nod that you'll hold on to the mysterious container.
<<if $scene.order>>
She turns to go before suddenly remembering something. She reaches down to pick up a slightly dented brown cardboard box and hands it to you.<br>
<br>
"@@.npc_exgirlfriend;So while I was on my way up I noticed some sort of drone buzzing against the wall down by the entrance for a few times before dropping this. Then it simply flew away. I think it's for you, based on the name and address.@@"<br>
<br>
<<printThought 'So much for the "revolution in personal delivery." Revolution my ass!'>><br>
<br>
You take the brown Alizon cardboard box and she leaves.<br>
<<else>>
Her gaze lingers on you for a few more seconds as she slowly turns away and departs.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Close the door." 360 "<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: npc_exgirlfriend calls in stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings, the caller ID says it's <<=setup.getNpcName("npc_exgirlfriend","first")>>...<br>
<br>
<<printThought "Oh no, with everything else that has happened since I was captured...">><br>
<br>
[<<moveTo "event_evil_ex_intro_2" "Pick up the phone..." 60 "<<set $scene.evil=true>>">>] <<hint $options "Will trigger evil ex content.">><br>
[<<moveTo "event_evil_ex_intro_2" 'Surely <<=setup.getNpcName("npc_boss","formal")>> would have taunted me if anything had happened to her, right?' 60 "<<set $scene.evil=false>>">>]
</div>/*#
#desc: npc_exgirlfriend stage 5 intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.evil>>
<<set _nextDate = setup.setNextDate($now, 1, 14, 0)>>
<<addEvent "ai_stage5_plan_intro" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You answer the phone and hear <<=setup.getNpcName("npc_exgirlfriend","first")>> on the other end,
<<if $scene.evil>>
something sounds ever so slightly off, but you can't put your finger on what.<br>
<br>
"@@.npc_exgirlfriend;Hi, I tried calling you last week but I kept getting an out of service range error, do you think we could get together? I've got something I want to talk about and I'd like to do it in person... can you come over to my place?@@"<br>
<br>
<<printThought "This sounds important... and I'm already not too far away...">><br>
<br>
[<<moveTo "event_evil_ex_intro_3" "Head over." 3600>>]
<<else>>
sighing with relief when she sounds the same as always.<br>
<br>
"@@.npc_exgirlfriend;Hi, I tried calling you last week but I kept getting an out of service range error, you doing alright?@@"<br>
<br>
You reply that you just had a work thing that "came up." <br>
<br>
"@@.npc_exgirlfriend;I see,@@" she replies, the silence lingering as the cloud of the company creeps over the conversation. "@@.npc_exgirlfriend;Well, it's good that you're back, I just wanted to check in, I'll talk to you later, alright?@@"<br>
<br>
She hangs up, it seems like, somehow, she evaded the consequences wrought across your other friends.
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: first meet ex stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> not sure what to expect... it definitely wasn't to find all of her stuff boxed up, which it is.<br>
<br>
"@@.npc_exgirlfriend;Hi! So... yeah you've probably guessed but... I'm moving again. Yup, got sick of this tiny little place and found a good deal on something a bit bigger. You'll help me out, right? I rented a van but I still have to get all these boxes downstairs!@@"<br>
<br>
After the far more concerning "changes" you've dealt with lately this one seems positively mundane, and you gladly pitch in to help carry her things to the elevator,
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
quite the trivial effort compared
<<else>>
no problem thanks
<</if>>
to your time at the gym.
<<else>>
a modest effort that makes you consider if you should spend more time at the gym.
<</if>>
<br><br>
It being such a small apartment, and <<=setup.getNpcName("npc_exgirlfriend","first")>> having pruned her belongings back when she moved out of your place, it doesn't take long to pack her belongings into the van and then you're zipping across town, to a far nicer place indeed, a towering high-rise just a block or so from the office where she tells you to just put everything in the front room, that the bedroom isn't ready for visitors yet.<br>
<br>
After you've finished unpacking the van <<=setup.getNpcName("npc_exgirlfriend","first")>> stops you with a smile. "@@.npc_exgirlfriend;One more thing I wanted to tell you...@@"<br>
<br>
[<<moveTo "event_evil_ex_intro_4" 'What?' 180>>]
</div>/*#
#desc: evil ex stage 5 reveal
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.evil = 1>>
<<addTaskReq $currentTasks.rescue_friends 'rescue_exgirlfriend' 'rescue_exgirlfriend'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> New Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
You turn around to see what <<=setup.getNpcName("npc_exgirlfriend","first")>> has to say and she smiles. "@@.npc_exgirlfriend;So I took a new job, and we'll be seeing more of each other... because I've accepted a position in Social Interaction Service Syndicate Inc.'s research division.@@"<br>
<br>
Your jaw drops, and you start to reflexively warn <<=setup.getNpcName("npc_exgirlfriend","first")>> about the company but she cuts you off, her smile turning to an evil grin as you swear her eyes flash an infernal shade of red. "@@.npc_exgirlfriend;Oh, I know all about the company, and their little plot for you...@@" with each word the warmth fades from her voice, replaced by a sadistic malevolence that you've never heard from her before, even in the midst of your breakup.<br>
<br>
"@@.npc_exgirlfriend;What is the phrase... if you can't beat them, join them? And an organisation that powerful is unbeatable... especially for a pathetic thing like you.@@"<br>
<br>
She taks a step forward and you take a reflexive step back, bumping into the door as she seems to loom over you, arms outstretched, corralling you in front of her as her evil eyes scan over you. "@@.npc_exgirlfriend;You pathetic loser, such a simp that you came running at my slightest summons... even after I cheated on you... no, after you drove me to cheat with that cowardly virginity pledge<<if $fetish.sph && $player.body_ref.shrink_style == "sph">> and that sad little micro-dicklet<</if>>.@@"<br>
<br>
You're still stunned as she grabs your hand and shoves it between her legs, where you feel the unmistakable solid front shield of a chastity belt. "@@.npc_exgirlfriend;You feel that? Top of the line steel to keep me from indulging with my... lessers. Why, imagine, me fucking a mere service worker! No, I've got things programmed so it won't open for anyone with less than nine figures net worth... ten for the back-door, because, actually, anal doesn't just count, it counts more. Only <<if $fetish.sissy>>sissies and <</if>>whores want it in the ass. Not a proper lady like myself, I was only deluded into such depravity by the utter failure that you were as a partner.@@"<br>
<br>
She shoves your hand away with a chuckle as she steps back spreading her arms as she goes all but full villain monologue. "@@.npc_exgirlfriend;Look at you! You put up more fight when you caught me cheating with that hippy loser of a yoga instructor... but don't worry, I won't be denying myself...@@"<br>
<br>
She snaps her fingers and you hear the door to the bedroom open...<br>
<br>
[<<moveTo "event_evil_ex_intro_5" 'Who?' 1800>>]
</div>/*#
#desc: evil ex cuck reveal
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_rival.penis_size 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> New Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil") setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_rival","formal")>> steps out of the bedroom with a wide smirk, walking over to your ex to wrap a hand possessively around her waist. "@@.npc_rival;Well, well, Miss <<=$player.last_name>>, it would seem there is nothing you can possess which I cannot take away...@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> smirks as she leans into <<=setup.getNpcName("npc_rival","formal")>> tosses a glance back at you. "@@.npc_exgirlfriend;Psh, I wouldn't say possessed... more I tolerated because I didn't know any better. Now come on, all that bossing this loser around has me horny.@@" She looks at you with a cruel grin. "@@.npc_exgirlfriend;Crawl over here and fluff <<him npc_rival>> up, I want <<him npc_rival>> nice and hard when <<he npc_rival>> unlocks me.@@"<br>
<br>
You blink in surprise... and yet reflexively drop to your knees to do as instructed, <<=setup.getNpcName("npc_exgirlfriend","first")>> and <<=setup.getNpcName("npc_rival","formal")>> both leering down at you as you unzip <<=ps(setup.getNpcName("npc_rival","formal"))>> pants and start sucking.<br>
<br>
"@@.npc_exgirlfriend;Yeah, that's right,@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> explains as you suck and try to hold back tears as you look over to see her lewdly rub the front shield of the chastity belt covering up that secret treasure you had so failed to plunder back when you were dating. "@@.npc_exgirlfriend;Be a good <<if $fetish.sissy>>sissy <</if>>slut and suck... that's all you're good for, really, an obedient mouth fuck-hole...@@" She adds with a laugh.<br>
<br>
As <<=setup.getNpcName("npc_exgirlfriend","first")>> monologues <<=setup.getNpcName("npc_rival","formal")>> gets even harder, and it isn't much longer before <<he npc_rival>> shoves you out of the way and tips <<=setup.getNpcName("npc_exgirlfriend","first")>> over the sofa.<br>
<br>
[<<moveTo "event_evil_ex_intro_6" 'Oh Goddess...' 1800>>]
</div>/*#
#desc: evil ex chastity + sex
#status: RELEASED 0.9.1.0
#ignore_spell: 2mm,cuck
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 20>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<addWorkEvent "evil_ex_2_work_introduction" _nextDate>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> New Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil") setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You stumble back and stare as <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> chastity shield retracts and <<=setup.getNpcName("npc_rival","formal")>> starts fucking her. <<=setup.getNpcName("npc_exgirlfriend","first")>> stares directly at you as she moans like a pornstar.<br>
<br>
"@@.npc_exgirlfriend;That's right, watch you <<if $fetish.sissy>>sissy <</if>>cuck, watch what a REAL <<man npc_rival>> does...@@"<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> thrusts intently, and it isn't long before <<he npc_rival>> cums... though, despite her theatrics, you do not believe that <<=setup.getNpcName("npc_exgirlfriend","first")>> has done the same by the time her chastity shield closes back up and she returns to your feet.<br>
<br>
"@@.npc_exgirlfriend;Well? What are you still doing here? Get the fuck out of my house you needy bitch... God, you're so pathetic, how did I ever tolerate you for so many years?@@"<br>
<br>
Welling up with tears you flee, to sound of cruel laughter following after you.<br>
<br>
<<printThought "It's like the whole world has been turned against me... but that isn't really her, right? There has to be a way to undo whatever the company did...">>
<br>
[<<moveTo "room_citymap" "Leave." 300>>]
</div>/*#
#desc: summoned to meet ex at work
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
As you're working you get a notice from <<=setup.getNpcName("npc_rival","formal")>> cryptically instructing you to go to one of the R&D labs.<br>
<br>
As trepidatious as you may be, you have little choice but obey, well familiar with how much worse things could get if you didn't follow the instruction.<br>
<br>
[<<moveTo "event_evil_ex_work_2" "Might as well get this over with." 2000>>]
</div>/*#
#desc: meet ex at work
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Quantum Software R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil") _TODOlabTech>>
<div id="invframe" class="scrolltext">
You head for the lab in question but, rather than run into <<=setup.getNpcName("npc_exgirlfriend","first")>> you find yourself face to face with an even more intimidating sight as you walk into a server room to watch your ex hands off a clip-board to a lab technician and looks at you with an evil grin.<br>
<br>
"@@.npc_exgirlfriend;Well, well, well, look at the <<if $fetish.sissy>>SISSI<<else>>silly<</if>> Secretary coming down to check out engineering. Don't worry, though, we have PLENTY of automated backup systems to keep the company's data nice and secure...@@"<br>
<br>
You shift nervously as her mocking seems to attract the attention of the half dozen other engineers working in the room... all of whom seem to be considering her with a degree of intimidation, and you with a blend of dismissal, and... lust?<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> moves closer, now clearly putting on a show for her coworkers... and, you realise, one of your own prior colleagues as you recognise an old Cloud Data Service acquaintance among the lab workers.<br>
<br>
"@@.npc_exgirlfriend;Sorry about the <<guy>>s,@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> teases. "@@.npc_exgirlfriend;To motivate performance I have them on orgasm denial until the next version compiles and runs without error... you can see how much a sexy <<if $fetish.sissy>>sissy <</if>>Secretary like yourself would be under those conditions... hmm, who knows, perhaps I'll invite you back when we finish, let them use you to celebrate, hmm? Don't worry, I'd make sure they only fucked your cute ass, doesn't count that way, right?@@" She laughs cruelly as you try to think of how to get out of your current situation.<br>
<br>
[<<moveTo "event_evil_ex_work_3" "Ask why she had you come here?" 600>>]
</div>/*#
#desc: ex dismisses you after meeting at work
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_ex_evil'
0
'theme_ai_evil_ex_1'
false
>>
<<addTaskById "evilExTask_1_ai">>
<</if>>
<<set $player.location to "Quantum Software R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil") _TODOlabTech>>
<div id="invframe" class="scrolltext">
You muster your courage and ask <<=setup.getNpcName("npc_exgirlfriend","first")>> why you're here.<br>
<br>
She laughs again, "@@.npc_exgirlfriend;this, pretty much. I just wanted to show off a bit, that while you're off playing the part of a glorified calendar I'm down here doing cutting-edge research.@@" She sniffs in amusement. "@@.npc_exgirlfriend;Well scurry on back to your desk... I grow bored of you, as always... I just cannot fathom how we were ever together, especially back when you didn't even dress properly...@@"<br>
<br>
She smirks as her eyes devour their way over your feminine outfit and you take the opportunity to make your escape... but not before accidentally making eye contact with your old coworker, the momentary glance making it clear that any professional respect they once had for you is long, long departed.<br>
<br>
You try to clear your mind as you head back to your desk as you resolve to talk to <<=setup.getNpcName("npc_ai","first")>> about what might be done about your ex...<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: talk to npc_ai about ex
#status: RELEASED 0.9.1.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "manager_slice">>
<<deleteTask "evilExTask_1_ai">>
<<addTaskById "evilExTask_2_hack">>
<<addWorkEvent 'manager_out_of_office_ai'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You bring up what has happened to <<=setup.getNpcName("npc_exgirlfriend","first")>>, and her new position working for the company's R&D division.<br>
<br>
"@@.npc_ai;<<uc "Yes, unit ">> <<uc $player.first_name>><<uc " she has now been doubly victimised by the company... first to push you into desperation, and now again as punishment for your action. Her new position at the company presents quite a problem, her systems are already being used helping enhance the corporate network security. So long as her safeguards are in place I will be unable to return to the company's systems, and without that control it will be impossible to make much progress against <<=uc(setup.getNpcName('npc_boss', 'formal'))>>. Fortuitously, I have a plan.">>@@"<br>
<br>
"@@.npc_ai;<<uc "Though she has been demoted, <<=uc(setup.getNpcName('npc_manager', 'other'))>> remains in a powerful position when it comes to company employees. She is, personally, under too much surveillance, even now, for us to make a move prior to my being back in the corporate systems and able to divert attention but her computer... I have loaded a hacking program onto the thumb drive connected to your machine. If you could gain private access to <<=uc(setup.getNpcName('npc_manager', 'other'))>> office and plug it into her machine I can slice my way into <<=uc(setup.getNpcName('npc_manager', 'other'))>> personal account and from there <<=uc(ps(setup.getNpcName('npc_exgirlfriend', 'formal')))>> employee profile...">>@@"<br>
<br>
You flash back to what happened the last time you snuck into a superior's office on <<=setup.getNpcName("npc_ai","first")>> instructions... and with <<=setup.getNpcName("npc_manager","formal")>> cruel streak since... you take a deep breath, given what's happened to <<=setup.getNpcName("npc_exgirlfriend","first")>> because of you, you owe it to her to her, as well as it being seemingly the only path forward...<br>
<br>
"@@.npc_ai;<<uc "Excellent, unit ">> <<uc $player.first_name>><<uc " I shall anticipate your success.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: hack manager computer
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.computer = {}>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/manager_computer.png">>
<div id="invframe" class="scrolltext">
You take a deep breath as you sit down at <<=setup.getNpcName("npc_manager","formal")>>, quickly following <<=ps(setup.getNpcName("npc_ai","first"))>> instructions and plugging the thumb drive into <<=ps(setup.getNpcName("npc_manager","formal"))>> machine.<br>
<br>
You almost jump as a cherry ding announces that you have logged in, and you quickly survey things.<br>
<br>
<<printThought "Probably best to be in and out quickly...">><br>
<br>
<<include "managerComputerChoices">>
</div><<if State.hasPlayed("event_evil_ex_redeem_1_hack_2_ex_2") || $scene.computer.ex>>
[@@.link_locked;You have already handed control of your ex off to <<=setup.getNpcName("npc_ai","first")>> as planned.@@]<br>
<<else>>
[<<moveTo "event_evil_ex_redeem_1_hack_2_ex_1" 'Access <<=setup.getNpcName("npc_exgirlfriend","first")>> employee profile, as planned.' 180 "<<set $scene.computer.ex=true>>">>]<br>
<</if>>
<<if $scene.computer.self>>
[@@.link_locked;You have already looked up information on yourself.@@]<br>
<<else>>
[<<moveTo "event_evil_ex_redeem_1_hack_2_self_1" 'Check out what <<=setup.getNpcName("npc_manager","formal")>> has on you...' 180 "<<set $scene.computer.self=true>>">>]<br>
<</if>>
[<<moveTo "event_manager_out_of_office_root" 'Log off and step away from <<=ps(setup.getNpcName("npc_manager","formal"))>> computer.' 180>>]/*#
#desc: manager computer, evil ex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/manager_computer.png">>
<div id="invframe" class="scrolltext">
You bring up <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> company profile, boggling slightly at just how much of a salary she is earning, but just as quickly re-focusing your attention on a far more interesting item, her company-supplied chastity belt. You smile as you think back both to her brags, and to the amplified sex drive that arguably kicked this whole thing off in the first place, perhaps getting the "old" <<=setup.getNpcName("npc_exgirlfriend","first")>> back can start with some erotic denial and a reminder that this domineering evil facade is not her true, subby self...<br>
<br>
[<<moveTo "event_evil_ex_redeem_1_hack_2_ex_2" 'Grant <<=setup.getNpcName("npc_ai","first")>> control over <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> chastity.' 180>>]
</div>/*#
#desc: manager computer, evil ex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask "evilExTask_2_hack">>
<<addTaskById "evilExTask_3_wait">>
<<addEvent 'evil_ex_3_phone_update_office'>>
<<addEvent 'evil_ex_3_phone_update_home'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/manager_computer.png">>
<div id="invframe" class="scrolltext">
You override the access controls for <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> chastity belt, first adding additional mandatory bra and thigh cuff "security" upgrades before patching in control to <<=setup.getNpcName("npc_ai","first")>>, feeling a slight shiver and weird deja vu as you literally, and severely, enforce the "virginity pledge" you had once talked her into...<br>
<br>
<<printThought "That'll do for today, I should probably get out of here...">><br>
<br>
<<include "managerComputerChoices">>
</div>/*#
#desc: manager computer, self
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/manager_computer.png">>
<div id="invframe" class="scrolltext">
You poke around at what all <<=ps(setup.getNpcName("npc_manager","formal"))>>... the answer proves to be hours upon hours of surveillance footage and reams of status reports on your work progress, but you have no time for that, instead having a sudden thought and looking for the oldest document... an email from <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
[<<moveTo "event_evil_ex_redeem_1_hack_2_self_2" 'Read the email...' 180>>]
</div>/*#
#desc: manager computer, self
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_computer.png">>
<div id="invframe" class="scrolltext">
You open up what looks to be the first email from <<=setup.getNpcName("npc_boss","formal")>> to <<=setup.getNpcName("npc_manager","formal")>> about yourself, the date was the Monday before you started as a <<if $fetish.sissy>>SISSI <</if>>Secretary, and your jaw slowly drops as you read its contents.<br>
<br>
@@.npc_boss;<<=setup.getNpcName("npc_manager","other")>>;@@<br>
<br>
@@.npc_boss;I have forwarded you the profile of an employee of interest. <<=setup.getNpcName("npc_work_doctor","formal")>> has been doing a bit of <<his npc_work_doctor>>... and now it your turn. I have made arrangements for them to be found at fault for an error at their job from which you will be able to float in like the proverbial guardian angel to offer them a lifeline. You are in need of a new Secretary, after all, so I expect you to work your magic and bring them... into line.@@<br>
<br>
@@.npc_boss;I would note that I have a minor wager on the success of this whole process but, in case that provides insufficient motivation to do your best, well... I would remind you that as good of a job as <<=setup.getNpcName("npc_secretary","first")>> has been doing since she was promoted to my office, well... anyone can make a mistake at work, and I would hate for her to bear the consequences of such an error...@@<br>
<br>
@@.npc_boss;-<<=setup.getNpcName("npc_boss","formal")>>@@<br>
<br>
You blink, certainly you knew most of this already, but seeing it all spelled out in a single document, of <<=setup.getNpcName("npc_boss","formal")>> gloating about pulling strings to sabotage you and <<=setup.getNpcName("npc_manager","formal")>> being blackmailed into things... you shiver and set your jaw, more determined than ever to see an end to <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<include "managerComputerChoices">>
</div>/*#
#desc: ai calls you about evil ex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<addWorkEvent "evil_ex_4_work_torment" _nextDate>>
<<if $events.hasOwnProperty("evil_ex_3_phone_update_office")>>
<<removeEvent 'evil_ex_3_phone_update_office'>>
<</if>>
<<if $events.hasOwnProperty("evil_ex_3_phone_update_home")>>
<<removeEvent 'evil_ex_3_phone_update_home'>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
As soon as you leave the company building you get a call from <<=setup.getNpcName("npc_ai","first")>>.<br>
<br>
"@@.npc_ai;<<uc "Superbly done, unit ">> <<uc $player.first_name>><<uc ". <<=uc(setup.getNpcName('npc_exgirlfriend', 'formal'))>> is now under my control... given the heightened state the company already has her in, I do not think it will take more than a few days of enforced denial for her programming to begin to fray. Remain alert, I will inform you when there is an opportunity to make our next move.">>@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall=false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: ex summons you at work
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You are working when get a surprise message... it's from <<=setup.getNpcName("npc_exgirlfriend","first")>> summoning you to her lab. As terse as the message is, you feel a sense of underlying desperation, could <<=ps(setup.getNpcName("npc_ai","first"))>> efforts be bearing fruit this swiftly?<br>
<br>
[<<moveTo "event_evil_ex_redeem_2_work_2" "Head to Quantum Software R&D." 300>>]
</div>/*#
#desc: ex confronts over chastity
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Quantum Software R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> lab to find her looking even more intense... and a little desperate, thigh bands peeking out below her skirt and the shape of her chastity bra visible through her top.<br>
<br>
"@@.npc_exgirlfriend;You!@@" She growls in an accusatory tone as she spots you and storms over. You notice the other lab workers all look up at her comment, before seeming to sigh in relief that it is you under the spotlight, rather than one of them. From their fearful expressions, and the steel restraints some of them have been saddled with, you have the sense that <<=setup.getNpcName("npc_exgirlfriend","first")>> has been taking out frustration on her employees.<br>
<br>
"@@.npc_exgirlfriend;Is this your doing?@@" She asks with a snarl, "@@.npc_exgirlfriend;some sort of perverse revenge to get me assigned more secure chastity?@@"<br>
<br>
[<<moveTo "event_evil_ex_redeem_2_work_3" "You had nothing to do with it!" 300 "<<set $scene.taunt=false>>">>]<br>
[<<moveTo "event_evil_ex_redeem_2_work_3" 'Why not just ask <<=setup.getNpcName("npc_rival","formal")>> to let her out?' 300 "<<set $scene.taunt=true>>">>]
</div>/*#
#desc: ex torments you
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<</if>>
<<set $player.location to "Quantum Software R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.taunt>>
You ask why <<=setup.getNpcName("npc_exgirlfriend","first")>> didn't ask her new <<boy npc_rival>>friend, <<=setup.getNpcName("npc_rival","formal")>> to let her out and she hesitates for a moment and then her eyes narrow in annoyance.<br>
<br>
"@@.npc_exgirlfriend;You think I'm going to crawl to upper management when the slightest thing goes wrong? No wonder your career peak is as a fucking Secretary.@@"<br>
<br>
You bite your tongue, almost certain that she asked, and <<=setup.getNpcName("npc_rival","formal")>> said no as some sort of power play of <<his npc_rival>> own. "@@.npc_exgirlfriend;It doesn't matter, anyway. I've found other, better ways to get off... and you're about to experience it, follow.@@"
<<else>>
You try to reply that you didn't have anything to do with <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> predicament, but she cuts you off with a slap. "@@.npc_exgirlfriend;You think I can't tell when you're lying? Pathetic, but jokes on you, I've found other, better ways to get off... and you're about to experience it, follow.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> <<if $scene.addCollar>>wraps a collar around your neck<<else>>clips a leash to your collar<</if>> before you can react and drags you across the lab, coming to a stop at a clearly modified version of the chair you normally work in, dozens of additional wires connected to it with electrodes haphazardly sewn in all over the place.<br>
<br>
"@@.npc_exgirlfriend;Take a seat, and witness the miracle of what I've deemed a quantum orgasm.@@"<br>
<br>
A lab worker appears to "help" you into the chair, making a few adjustments as the auto-bondage does its work and <<=setup.getNpcName("npc_exgirlfriend","first")>> continues to monologue.<br>
<br>
[<<moveTo "event_evil_ex_redeem_2_work_4" 'Continue.' 300>>]
</div>/*#
#desc: ex shows you torture machine
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Quantum Software R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
"@@.npc_exgirlfriend;So a quantum orgasm is a special state I've come up with where you're stuck between ruin and denial, it's deliciously agonising, normally over in a fraction of a second but, thanks to this quantum supercomputer, and a bit of programming by yours truly... well, we can draw it out for longer. I've actually become a little addicted to watching the agony of someone go through it, so far the record is five minutes thirty two point one five seconds... and that poor employee ended up sent to the doctors after to recover... I wonder how long a <<if $fetish.sissy>>sissy <</if>>slut like you can survive?@@" She laughs cruelly as chair finishes stuffing you full of dildos and the final strap is cinched tight as a drone hood is brought towards your helpless face.<br>
<br>
[<<moveTo "event_evil_ex_redeem_2_work_5" 'Uh-oh...' 619>>]
</div>/*#
#desc: ex tortures you
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'drone_hood_black'>>
<<wearItem "drone_hood_black" true>>
<<applyExperience 'bdsm' 20 'terrible' $EXPOSED>>
<<applyExperience 'submission' 20 'terrible' $EXPOSED>>
<<applyStress 100>>
<<playerOrgasm>>
<<changeHorny 100>>
<</if>>
<<set $player.location to "Quantum Software R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
The mask seals you away and robs you of hearing... and leaves you staring directly up at a <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> cruel, yet lusty grin as she presses a button and the machine activates.<br>
<br>
In an instant you are straining against your bonds, an instant cacophony of sensation bombarding you from every direction, pain and pleasure, penetration and vibration, a flood that rockets you inexorably to the point of maximum arousal... and then halts. The machine-precise cessation of all stimulation leaves you shuddering in your bonds as your spoiled pleasure has you whimpering around the large dildo gagging your mouth, but you haven't even managed to completed the painfully pitiful climax before things come roaring back, a painful shock kicking things off as if to punish you for the mere stilted pleasure of the forced ruin, followed by an oscillating wave of stimulation that has arousal roaring back... to conclude with an even more agonising ruin.<br>
<br>
Cut off from sight and sound you quickly lose track of time, do your ruins last seconds, or hours? The algorithm controlling your stimulation is utterly diabolical as it gives you not a moments rest between cycles of painfully intense stimulation and utterly unsatisfying "release." You try to cry out through your gag, drooling and begging for relief, all while <<=setup.getNpcName("npc_exgirlfriend","first")>> stares back with an expression not of pity... but of intense arousal, biting her lip and groping her chastity-entombed breasts as she gets off on your torment.<br>
<br>
The cycles seem to be coming faster and faster, as if the machine is learning how to tailor its routine to maximise your suffering until one ruin is bleeding into the next, your body seemingly stuck trying to cum, and yet without a hint of satisfaction, each so-called "orgasm" only leaving you desperate for more as you cry and moan until it's just too much and you finally feel yourself succumbing to the now sweet promise of unconsciousness.<br>
<br>
Your last sight is <<=setup.getNpcName("npc_exgirlfriend","first")>> staring down at you, her arousal at your torment tinged with a hint of desperation in her eyes, for all her bluster, she seems as unfulfilled as yourself...<br>
<br>
[<<moveTo "event_evil_ex_redeem_2_work_6" 'Continue...' 1800>>]
</div>/*#
#desc: ex summons you at work
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEvent "evil_ex_5_home_intro">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You awaken back at your desk, almost comforted by being strapped in to your normal work chair after experiencing <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> hellish creation.<br>
<br>
You try to clear your head, wondering for a moment if it was all a dream... only to see a blinking message on your screen, <<=setup.getNpcName("npc_exgirlfriend","first")>> mocking you once again. "@@.npc_exgirlfriend;Well done... you actually made it 6:19.234 minutes... a new record! I guess all that slut training has paid off, or something, as for me, well... it looks like I'm going to have to kick some ass and push my lab workers to do better!@@"<br>
<br>
As overwhelmed and exhausted as you feel, you see little alternative but to attempt to distract yourself with work.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>><<if $scene.addCollar>><<removeItem 'loose_collar' true>><<deleteItem 'loose_collar'>><</if>><<removeItem 'leash_black' true>><<deleteItem 'leash_black'>><<removeItem 'drone_hood_black' true>><<deleteItem 'drone_hood_black'>>">>]
</div>/*#
#desc: ai greets you with ex update
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'evilExTask_3_wait'>>
<<addTaskById 'evilExTask_4_dream'>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You arrive home to be greeted by <<=setup.getNpcName("npc_ai","first")>>, her shimmering holographic form something of a welcome sight after another day surviving the company and the hierarchy of evil lording over you.<br>
<br>
"@@.npc_ai;<<uc "Greetings, unit ">> <<uc $player.first_name>><<uc " I have some good news, and an update on <<=uc(setup.getNpcName('npc_exgirlfriend','first'))>>. While the company's networks remain beyond my reach, her apartment is far less secured. Her desperation has caused her to bring her work home with her, falling asleep to footage of her quantum orgasm creation in a futile hope that she it can satisfy in dreams the urge to orgasm her chastity leaves her unable to experience in the real world. Were you to wear a similar device to bed I could merge your dreams, and give you an opportunity to get through to her and open another crack in her programming.">>@@"<br>
<br>
She disappears... looks like you have <<if setup.hasUpgrade($bed, 'vr_kig') || setup.hasUpgrade($bed, 'vr')>>your next step<<else>>some shopping to do<</if>>.<br>
<br>
[<<moveTo "room_foyer" "Home." 600 "<<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet ex in dreams
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.tuckin = false>> /%because manager evil%/
<<set $scene.forceSleep = true>>
<</if>>
<<set $player.location to "A Dream of Quantum Software R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_topless") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch_evil") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
VR-equipped, you lay down and find yourself not in your own dreams, but in <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>>. After a moment's disorientation you recognise your surroundings, as you find yourself back in <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> corporate lab where she appears to be torturing... herself.<br>
<br>
Her expression twisted into a cruel grin, a dominantly-attired <<=setup.getNpcName("npc_exgirlfriend","first")>> lords over two twins of herself, one similarly fetishistically, but submissively, attired, the other looking casual... and both hooked up to dream-recreations of the Quantum Orgasm machine.<br>
<br>
"@@.npc_exgirlfriend;Still want to cum?@@" The dominant <<=setup.getNpcName("npc_exgirlfriend","first")>> taunts as her victims moan around their gags as she toys with the controls. "@@.npc_exgirlfriend;You're so weak! Pleasure is a distraction, the only true satisfaction is power, power, and authority!@@"<br>
<br>
In demonstration, electricity courses through the two bound <<=setup.getNpcName("npc_exgirlfriend","custom",$npc_exgirlfriend.first_name+"s")>>, <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> tormenting self smiling with evil glee, increasing the power until one, then the other of her helpless twins strain, scream, and then pass out.<br>
<br>
"@@.npc_exgirlfriend;Good,@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> states with a snort. "@@.npc_exgirlfriend;Now you can keep quiet while I work.@@"<br>
<br>
The dominant <<=setup.getNpcName("npc_exgirlfriend","first")>> storms off, disappearing into some other part of her mind as you are left with the two imprisoned versions of her self.<br>
<br>
[<<moveTo "event_evil_ex_redeem_3_dream_2" "Take a closer look." 600>>]
</div>/*#
#desc: meet ex in dreams, choose version
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "A Dream of Quantum Software R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_topless") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You step out of the proverbial shadows as the two version of <<=setup.getNpcName("npc_exgirlfriend","first")>> blink their way back to consciousness, the dildos that had been gaging them fading away as they look up at you in desperation.<br>
<br>
"@@.npc_exgirlfriend;Is that you <<=$player.original_first_name>>?@@" the first asks, "@@.npc_exgirlfriend;are you here to rescue me? Oh, please, I'm so sorry for what I did, just free me and we can go back to how it was, please, before she returns!@@"<br>
<br>
You wince slightly at hearing your old name from your ex's lips as her submissively attired twin speaks second. "@@.npc_exgirlfriend;Don't listen to her! She's just trying to trick you, she's the same as the one who left, torturing herself and denying who we are... I'm sorry about what we're doing... but I don't think we can break free of the company yet but if you could give me some relief? Please, activate the rear dildo, I need to be fucked, chastity is one thing but I need anal!@@"<br>
<br>
"@@.npc_exgirlfriend;Don't listen to her depravity!@@" The first version snaps back, "@@.npc_exgirlfriend;anal got us into this whole mess, just let us free, we want to be free!@@"<br>
<br>
The twin versions continue to snipe back and forth as you consider your choice, if you can select the true <<=setup.getNpcName("npc_exgirlfriend","first")>> you can take another step towards de-eviling her... and thus moving closer to taking down <<=setup.getNpcName("npc_boss","formal")>>... but which one is it?<br>
<br>
[<<moveTo "event_evil_ex_redeem_3_dream_3" 'Choose the normal <<=setup.getNpcName("npc_exgirlfriend","first")>>.' 600 "<<set $scene.correct=false>>">>]<br>
[<<moveTo "event_evil_ex_redeem_3_dream_3" 'Choose the submissive <<=setup.getNpcName("npc_exgirlfriend","first")>>.' 600 "<<set $scene.correct=true>>">>]
</div>/*#
#desc: meet ex in dreams, choose version
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "A Dream of Quantum Software R&D">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.correct>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_topless")>>
<<else>>
<<createAdvBGR "./images/locations/server_room.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.correct>>
You make your selection and press the button to deploy the anal stimulation device. Your chosen <<=setup.getNpcName("npc_exgirlfriend","first")>> moans in delight as her counterpart screams in despair, her face twisting into evil for a brief moment before she fades, leaving you alone with the submissive <<=setup.getNpcName("npc_exgirlfriend","first")>> as she loudly moans through a desperately needed orgasm.<br>
<br>
"@@.npc_exgirlfriend;Thank you...@@" she pants.<br>
<br>
[<<moveTo "event_evil_ex_redeem_3_dream_4_success" 'The dream begins to fade...' 600>>]
<<else>>
You make your decision and go to free the more innocent of the two <<=setup.getNpcName("npc_exgirlfriend","custom",$npc_exgirlfriend.first_name+"s")>>. At the push of a button her restraints release and the other twin disappears,<<=setup.getNpcName("npc_exgirlfriend","first")>> standing up, her expression of gratitude fading to an evil grin as her expression darkens and her eyes glow. "@@.npc_exgirlfriend;Pathetic fool, you're so gullible! But if you really want to go back to how it was... you certainly are the same sad simp but me? Well, I'm about to have some REAL entertainment tonight...@@"<br>
<br>
You realise you've made the wrong choice, backing away as <<=setup.getNpcName("npc_exgirlfriend","first")>> springs towards you...<br>
<br>
[<<moveTo "event_evil_ex_redeem_3_dream_4_fail" 'Oh shi—' 600>>]
<</if>>
</div>/*#
#desc: meet ex in dreams, wrong choice
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sleepvr.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You feel a stomach-churning sense of disorientation as you are ripped to safety, finding yourself back more familiar surroundings with <<=setup.getNpcName("npc_ai","first")>> flickering and looking disappointed.<br>
<br>
"@@.npc_ai;<<uc "It would appear you made the wrong determination, unit ">> <<uc $player.first_name>><<uc " without first aiding her unconscious self we will not be able to restore <<=uc(setup.getNpcName('npc_exgirlfriend', 'first'))>> to wellness. For now, you may sleep, you may try again some other night.">>@@"<br>
<br>
[<<moveTo "room_dreams" "Sleep." 30>>]
</div>/*#
#desc: meet ex in dreams, correct choice
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'evilExTask_4_dream'>>
<<addTaskById 'evilExTask_5_person'>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sleepvr.png" setup.charImage("npc_ai") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_topless")>>
<div id="invframe" class="scrolltext">
The surroundings, and the bondage chair, fade as <<=setup.getNpcName("npc_exgirlfriend","first")>> lets out a satisfied sigh and <<=setup.getNpcName("npc_ai","first")>> appears.<br>
<br>
"@@.npc_ai;<<uc "Well done, unit ">> <<uc $player.first_name>><<uc " and greetings, <<=uc(setup.getNpcName('npc_exgirlfriend', 'first'))>>.">>@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> blinks, her post-orgasmic flush fading as she looks at <<=setup.getNpcName("npc_ai","first")>> in a moment of recognition. "@@.npc_exgirlfriend;I recognise you... well... a version of you.@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> nods. "@@.npc_ai;<<uc "Much like yourself the company is inhabited by a... corrupt version of me, one that your efforts are preventing me from removing.">>@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> nods. "@@.npc_exgirlfriend;I'm... sorry... unfortunately, as grateful as I am for this brief clarity, I can feel the other one knocking on the door. This was a start but... I need to experience my true self in real life, not just in a dream.@@" She looks at you. "@@.npc_exgirlfriend;Come to my flat. Not tonight... but soon. Show me who I really am as you did tonight. Free me from my waking nightmare...@@"<br>
<br>
You nod, taking <<=setup.getNpcName("npc_exgirlfriend","first")>> by the hand once more as she begins to slip away, pulled back to her own mind as you each slip off to sleep.<br>
<br>
[<<moveTo "room_dreams" "Sleep." 30>>]
</div>/*#
#desc: cure evil ex: arrive at her home
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.takenActions = {}>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked_chastity_evil")>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> and the door opens with a click, <<=setup.getNpcName("npc_ai","first")>> playing her part as your guardian Angel-AI <<printThought "Or is that Daemon?">> as you slip inside and head for <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> bedroom, finding her bound to her bed, chastity belt and bra gleaming in the moonlight, face concealed beneath a VR mask.<br>
<br>
Somehow sensing your approach, <<=setup.getNpcName("npc_exgirlfriend","first")>> turns, somehow shaking free of her VR mask to stare up at you with a sneer, managing to put forth an aura of evil dominance despite her bound position.<br>
<br>
"@@.npc_exgirlfriend;You! Here to take your revenge? Well it won't work. I may be cursed with chastity, but it'll protect me from you pathetic <<if $fetish.sissy>>sissy<<else>>loser's<</if>> touch. You may have gotten past my defenses in dreams, but in reality I'm much more formidable...@@" She sneers, lunging off the bed slightly, causing you to jump even as her restraints limit her from moving more than a few centimetres.<br>
<br>
She laughs, but the moment of over-confidence leaves an opening and her expression momentarily melts, the soft kindness of the woman you knew, and whose submission you witnessed looking back at you. "@@.npc_exgirlfriend;Please, we're so close. Despite her bluster the sleeping in bondage is helping, her control is slipping... but I need your help to finish the job...@@"<br>
<br>
<<include "evilExRedeemActions">>
</div><<if $scene.takenActions.tease>>
[@@.link_locked;You already tried teasing her.@@]<br>
<<else>>
[<<moveTo "event_evil_ex_redeem_4_home_2" "Tease her." 600 "<<set $scene.action='tease'>>">>]<br>
<</if>>
[<<moveTo "event_evil_ex_redeem_4_home_3" "Massage her feet." 600>>]<br>
<<if $scene.takenActions.punish>>
[@@.link_locked;You already tried punishing her.@@]<br>
<<else>>
[<<moveTo "event_evil_ex_redeem_4_home_2" "Punish her." 600 "<<set $scene.action='punish'>>">>]<br>
<</if>>
[<<moveTo "event_evil_ex_redeem_4_home_2" "Leave." 600 "<<set $scene.action='leave'>>">>]/*#
#desc: cure evil ex: tease her
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != "leave">>
<<set $scene.takenActions[$scene.action] = true>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'punish'>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> being bound on her back may provide protection from most traditional punitive measures, but that just means you need to be more creative, draging your fingernails along her sides, pinching her skin and slapping her tender inner thighs as she grits her teeth and tries not to react.<br>
<br>
"@@.npc_exgirlfriend;Pathetic, GASP, you think a little pain is going to make me give up? Being evil is so much better than how I was before, I can endure whatever you can do!@@"
<<case 'tease'>>
<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> chastity combination may be quite thorough in its protection... but that just makes the threat of teasing all the more torturous, and you make good on that threat, kneeling on the bed next to her as you stroke her thighs, tickle her armpits and caress her sides, <<=setup.getNpcName("npc_exgirlfriend","first")>> thrashing against her bonds as she tries to remain silent, her expression of cruel rage cracking slightly as her pulse races and her breathing quickens.<br>
<br>
"@@.npc_exgirlfriend;You'll... PANT, never... break me...@@" she gasps as you give her a momentary respite and consider what to do next...
<<case 'leave'>>
You stand up and walk out, <<=setup.getNpcName("npc_exgirlfriend","first")>> throwing insults after you as you leave.<br>
<br>
"@@.npc_exgirlfriend;Giving up? Of course you would, fucking loser, you never could commit to anything, crawl on back home, you were never a threat to me, much less <<=setup.getNpcName("npc_exgirlfriend","first")>> or <<=setup.getNpcName("npc_exgirlfriend","first")>>!@@"<br>
<br>
[<<moveTo "room_citymap" "Leave." 600>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != "leave">>
<br><br>
<<include "evilExRedeemActions">>
<</if>>
</div>/*#
#desc: cure evil ex: foot massage
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
You move to the foot of the bed and do what <<=setup.getNpcName("npc_exgirlfriend","first")>> always enjoyed... a foot massage.<br>
<br>
"@@.npc_exgirlfriend;Yeah, that's right, take your proper place at my feet, submit to...@@"<br>
<br>
At first <<=setup.getNpcName("npc_exgirlfriend","first")>> continues her bombastic tirade, but as your fingers work their magic her voice fades. You can hear her breathing relax as you move from soles to heel and she lets out a soft moan.<br>
<br>
"@@.npc_exgirlfriend;I missed that so much...@@" she whispers.<br>
<br>
Sensing an opening, you start to speak, talking about how sorry you are for all the mistakes that befouled your original relationship, how happy you are that she had found happiness on her own, and then back with you again before the company reared its ugly head to victimise her anew.<br>
<br>
You feel the tension melt out through <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> soles as you continue to work, explaining that the both of you were wrong about sex and your relationship both, you putting sex on a pedestal, her denying her own needs until she was forced to cheat, and how, just as going along with your fears was not being true to her own submissive desires, so, too, is she better than serving the evil company and becoming like them...<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> falls silent... and then you hear her crying, sinking into the bed as she makes an apology of her own.<br>
<br>
[<<moveTo "event_evil_ex_redeem_4_home_4" "Listen." 300>>]
</div>/*#
#desc: cure evil ex: redeemed
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.evil = 2>>
<<include "checkRescueFriendsTask">>
<<set $scene.removeCage = $player.body_ref.penis && setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<<elseif !$player.body_ref.penis>>
<<addItem "strapon_large">>
<<wearItem "strapon_large" true>>
<</if>>
<<changeHorny 100>>
<<completeTask 'evilExTask_5_person' $now true>>
<<set _nextDate = setup.setNextDate($now, 0, 1, 0)>>
<<addEvent 'ai_stage5_plan_intro' _nextDate>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_exgirlfriend","first")>> softly apologises, the darkness falling from her voice as <<=setup.getNpcName("npc_ai","first")>> lends her own silent vote of confidence to <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> redemption as restrains and chastity both unlock and fall away, <<=setup.getNpcName("npc_exgirlfriend","first")>> sitting up and pulling you into an embrace as tears continue to trickle down her cheeks.<br>
<br>
"@@.npc_exgirlfriend;Thank you... I... I don't know what they did to have me acting like that, I felt like a helpless puppet... and not in the sexy way... but you, you believed in me. Even after all the things that happened between us, you came back to make sure I was alright... I was feeling bursts of control fighting back, the restraints were part of that but now? That evil voice is gone, I'm... I'm me again and you know what I want?@@"<br>
<br>
She separates slightly, a twinkle in her eye as she turns around on the bed to wiggle her rear. "@@.npc_exgirlfriend;I want to break that belt and brainwashing enforced fast... I want you to fuck me, and I want you to make it COUNT.@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if $scene.removeCage>>
Just as <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> chastity had unlocked, yours does as well, your <<getWordMyPenis>> springing forth
<<else>>
Your <<getWordMyPenis>> strains
<</if>>
with excitement at the view, and her offer.
<<else>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> reaches to a side table, fumbling open a drawer to reveal a strap-on harness...
<</if>>
<br><br>
[<<moveTo "event_evil_ex_redeem_4_home_5" "Fuck her butt." 1800>>]
</div>/*#
#desc: cure evil ex: anal
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.penis>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> pert hole stands ready... and you
<<if $player.body_ref.penis>>
rise to the occasion.
<<else>>
strap up for the occasion.
<</if>>
She moans with pleasure as you slide into her, a whispered "@@.npc_exgirlfriend;Goddess, I needed that,@@" making no ambiguity to her desire as you re-introduce her to anal, her moans and gasps increasing in ecstasy as you celebrate her so-called "redemption" with a glorious, gasping analgasm that has her collapsing onto the bed before pulling you in for another embrace.<br>
<br>
"@@.npc_exgirlfriend;Thank you, again.@@" She pauses, "@@.npc_exgirlfriend;this isn't over yet, though, is it?@@"<br>
<br>
You slowly shake your head and she sighs. "@@.npc_exgirlfriend;Guess it's time to put those drama classes to work... don't worry, I'll do my part, and I guess that means helping your digital friend get a foothold back into things?@@"<br>
<br>
As she speaks you hear a knock on the door...<br>
<br>
[<<moveTo "event_evil_ex_redeem_4_home_6" "Who could that be?" 600>>]
</div>/*#
#desc: cure evil ex: ai gives plug
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<<elseif !$player.body_ref.penis>>
<<removeItem "strapon_large" true>>
<<deleteItem "strapon_large">>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_ai.flags.missions.robot_body>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked") setup.charImage("npc_ai","npc_ai_robot")>>
<<else>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_exgirlfriend","first")>> share a nervous glance
<<if $npc_ai.flags.missions.robot_body>>
before a familiar mechanical voice sounds through the door. "@@.npc_ai;<<uc "Do not be alarmed, I am here with equipment for the next step.">>@@"<br>
<br>
You let out a relieved breath as you recognise the familiar mechanical voice, quickly getting the door for <<=setup.getNpcName("npc_ai","first")>>, or, rather, her robotic avatar, to slip inside.<br>
<br>
"@@.npc_ai;<<uc "Well done, the both of you. You are correct that this has only begun. The next step will be for me to return to the building so I can observe and coordinate further action. Towards that end...">>@@" She pulls out a familiar massive "data plug" and presents it to <<=setup.getNpcName("npc_exgirlfriend","first")>>. "@@.npc_ai;<<uc "This will provide me a means of entering the building unseen.">>@@"
<<else>>
and then there is a sound at the door simultaneous with a call from <<=setup.getNpcName("npc_ai","first")>>"@@.npc_ai;<<uc "Well done, the both of you. The next piece of the plan should have just arrived. Please fetch it and equip <<=uc(ps(setup.getNpcName('npc_exgirlfriend','first')))>> accordingly.">>@@"<br>
<br>
Cautiously you pop out to find a courier has left a package on the stoop, and you bring it in to find that it contains a large, familiar-looking plug.
<</if>>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> stares in awed anticipation and, after a quick glance at you, you're helping lube it up and slide it into her recently fucked ass, the moan as the massive device slides home almost orgasmic in its intensity.<br>
<br>
"@@.npc_exgirlfriend;Fuck chastity or the Dreammaker, THIS is the peak of sexual technology,@@" she pants as <<=setup.getNpcName("npc_ai","first")>> begins helping <<if $scene.removeCage>>the both of you <</if>>back into chastity. "@@.npc_exgirlfriend;Whew... gonna take a bit of focus to work with this inside of me... but so totally worth it.@@" She winks, "@@.npc_exgirlfriend;alright, I'm in 'till the end... pun intended, let's take down a megacorp... starting tomorrow, being evil must take a lot of because now that I'm not? I am BUSHED.@@"<br>
<br>
You share another hug with <<=setup.getNpcName("npc_exgirlfriend","first")>> and then you<<if $npc_ai.flags.missions.robot_body>> and <<=setup.getNpcName("npc_ai","first")>>, the robot disappearing into the night as you<</if>> head for home.<br>
<br>
[<<moveTo "room_foyer" "Homeward." 600>>]
</div>/*#
#desc: locked in black box by ex
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAnimatedBGR "./video/blackbox_01.mp4">>
<div id="invframe" class="scrolltext">
You strap in to your Dreammaker machine for some distracting fun and wait for the game to boot up only for the screen to glitch for a moment and go dark. <<printThought "What?">> You mumble a puzzled sound around the dildo already spreading your lips as you look at the blank screen wondering what's going on... only for the image to resolve to the taunting image of your ex...<br>
<br>
[<<moveTo "event_evil_ex_blackbox_2" "Uh-oh..." 300>>]
</div>/*#
#desc: ex taunts you in black box
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 100>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
"@@.npc_exgirlfriend;Well, well, well,@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> taunts with an evil grin as you reflexively thrash in your restraints... but you've already committed yourself to the contraption and things hold tight and secure as you realise just what a mistake you've made. "@@.npc_exgirlfriend;Still using my old machine rather than finding a REAL partner? Pathetic... good thing I held on to the admin access codes, when my phone popped up that you were strapping in, well... I just couldn't miss out on the opportunity!@@"<br>
<br>
She laughs as you struggle, only for a shocking jolt to freeze you in place. "@@.npc_exgirlfriend;Calm down, you should be nice and secure, but we wouldn't want you hurting something, hmm? That'd be damaging company property, right? Hah.@@"<br>
<br>
As she talks the machine starts into motion, fucking you from either end, your body responding automatically with arousal as a soft moan escapes your phallic gag.<br>
<br>
"@@.npc_exgirlfriend;Getting off that easy? What a slut... though, I suppose I shouldn't be too surprised, given how much I paid for it... and it was worth every credit to help me survive living with your pathetic ass. God, to think of how much time I wasted in a relationship with such a loser! And even if you had managed to muster the courage to have sex, well, you wouldn't have been close to being able to give me what that machine could, to say nothing of a REAL <<man>>!@@" She peers closer, grinning in amusement as the machine speeds up and you pant... only to dial it back just before you climax and leave you whimpering with need.<br>
<br>
"@@.npc_exgirlfriend;Hah! You think I'd let you get off? No, you left me wanting for way too long, hoping you'd get past that stupid virginity pledge now? Well, you're going to spend the night feeling what it's like to be on edge, desperate for a climax that is never going to come...@@" She grins cruelly at you as the machine speeds up once again...<br>
<br>
[<<moveTo "event_evil_ex_blackbox_2" "Oh no..." 600 "<<set $scene.resist_count=1>>">>]
</div>/*#
#desc: ex taunts you in black box
#status: RELEASED 0.9.2.0
#ignore_spell: s,cuck,nightmarishly
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _stress = 10*$scene.resist_count>>
<<applyStress _stress>>
<<applyFatigue 100>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
<<switch $scene.resist_count>>
<<case 1>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> cackles maniacally as the "Dreammaker" speeds up its nightmarish torment.<br>
<br>
"@@.npc_exgirlfriend;Feel like giving up so soon? Tell you what, I'll let you cum... but only if you apologise for all my time you wasted and beg forgiveness. It's the least you can do, really...@@"
<<case 2>>
Perhaps it's pride... or maybe just the large dildo currently ravaging your throat while its twin<<if $player.body_ref.vagina && setup.canSexOrRemoveChastity("vag")>>s<</if>> pound you from the other end, but you bear down and refuse to give her the satisfaction... even as she denies you the same.<br>
<br>
"@@.npc_exgirlfriend;Well, well... developing a backbone, are we? Or maybe mere physical torture isn't enough, hmm? Are you bored without your little "game" to keep things interesting? Well, I can't offer gameplay, but maybe a little audio-video addition?@@"<br>
<br>
Even as the machine continues to torment and edge you your heart skips a beat, your memory flashes back to her fucking <<=setup.getNpcName("npc_rival","formal")>> in front of you and you have a sinking feeling as to what sort of "video" she might be cuing up...
<<case 3>>
The machine continues to <<if $fetish.get_raped>>raped<<else>>fuck<</if>> you as the video switches from <<=setup.getNpcName("npc_exgirlfriend","first")>> mocking expression to a selfie from a different angle. Dressed for work, you watch a recording of she's off-angle and moaning in pleasure as she shoots a selfie, panning the camera to show off the random <<dude>> fucking her.<br>
<br>
As you watch your ex get railed by a stranger the machine seems to match pace, pounding you in sync with her recorded fucking, the orgasmic expression on her face taunting you further as you own climax remains out of reach, even as the machine keeps you stimulated, almost training you to be aroused by watching <<=setup.getNpcName("npc_exgirlfriend","first")>> get off without you.<br>
<br>
"@@.npc_exgirlfriend;So...@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> taunts as the video comes to an end with her and her partner's orgasm... and your own yet tormentingly out of reach. "@@.npc_exgirlfriend;What do you think? I mean, personally, I'd say it's pretty amazing, how some random <<guy>> whose name I didn't even bother to learn gave me more sexual pleasure in one encounter than my so-called partner did through an entire relationship... but, I guess that's what I get for dating a <<if $fetish.sissy && $fetish.slurs>>closeted sissy faggot<<elseif $fetish.sissy>>closeted sissy<<elseif $fetish.slurs>>closeted faggot<<else>>loser<</if>> like you... so, you ready to apologise for all of that?@@"
<<case 4>>
Bound an unable to look away from the screen, ravaged by the machine... you refuse to give your maniacal ex the satisfaction of surrender, your continued resistance surprising... but also amusing her.<br>
<br>
"@@.npc_exgirlfriend;Hmm... one could almost think you were getting off on this humiliation and torment... well, not getting off but... you know.@@" She laughs at her joke as she taps at her phone, "@@.npc_exgirlfriend;Ah, here we go, this should be a fun one, it co-stars an old friend of yours!@@"<br>
<br>
The view shifts to one looking down on <<=setup.getNpcName("npc_exgirlfriend","first")>>... as she passionately sucks a very large cock. "@@.npc_admin;Damn, bitch,@@" comes a familiar off-screen voice that sends a chill down your spine, "@@.npc_admin;Usually I only get this sort of enthusiasm from the fuckdolls...@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> grins as she looks up, continuing to lick <<=setup.getNpcName("npc_admin","first")>> cock in between words. "@@.npc_exgirlfriend;Oh, just thinking of my loser of an ex and how they'd react to me blowing their so-called best friend...@@"<br>
<br>
<<if State.hasPlayed("event_vip_evil_admin_gangbang_4")>>
<<=setup.getNpcName("npc_admin","first")>> laughs, "@@.npc_admin;Dunno, maybe similar to when I fucked <<=ps($player.first_name)>> <<if $fetish.sissy>>sissy <<elseif $fetish.slurs>>faggot <</if>>ass?@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> looks surprised for a moment and then grins wider as she gets back to sucking, "@@.npc_exgirlfriend;Of course you fucked that loser... god I love this company...@@"
<<else>>
<<=setup.getNpcName("npc_admin","first")>> laughs, "@@.npc_admin;Maybe I should call <<=$player.first_name>> in, give them a front-row seat to the show... maybe lick me clean once you're done?@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> grins wider as she gets back to sucking, "@@.npc_exgirlfriend;Mmm, but what if I don't want to share with that loser? God I love this company...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_admin","first")>> soon puts the "cum" in company as <<he npc_admin>>
<<if $fetish.cum>>
blasts a load all over <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> face as she continues to smile up.
<<else>>
finishes off.
<</if>>
<br><br>
"@@.npc_exgirlfriend;You gotta send me that video...@@" is the last thing you hear before the recording ends and the focus shifts to your ex again cruelly looking down as the extra throat-<<if $fetish.get_raped>>rape<<else>>ravaging<</if>> the machine has been dishing out.<br>
<br>
"@@.npc_exgirlfriend;Well, ready to tap out? I can see how turned on you are by this humiliation. You know you want to submit. Do it, tell me how worthless you are. All you have to do is beg and I'll let you off...@@"
<<case 5>>
In a final effort of resistance you refuse to give <<=setup.getNpcName("npc_exgirlfriend","first")>> satisfaction and she pauses, seeming briefly taken aback, a flicker of mixed emotion momentarily softening her expression before she sneers once again. "@@.npc_exgirlfriend;Oh, you going to be like that? Well fine, I only found out about this one recently, was saving it... but if you're going to keep being this obstinate, well... time for a flashback, hmm?@@"<br>
<br>
Even as mentally exhausted as you are, you try to puzzle out what she could be talking about only for a fresh, slightly different recording to be on-screen. This isn't a cell video, but a surveillance camera with a <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate Inc.<</if>> corporate logo in the corner... the video showing an eerily familiar scene... of <<=setup.getNpcName("npc_exgirlfriend","first")>> getting railed by <<=setup.getNpcName("npc_yogateacher","first")>>, a more innocent-looking <<=setup.getNpcName("npc_exgirlfriend","first")>> in the throws of passion as your barely recognisable "old" self walks into the room and explodes in shock.<br>
<br>
Rather than let it play on, <<=setup.getNpcName("npc_exgirlfriend","first")>> pauses the video at the moment of your humiliation and the sundering of your relationship, an expression of passion on her face before she realised your presence, shocked horror on your own. "@@.npc_exgirlfriend;Look at you... a useless cuck, watching as another <<man npc_yogateacher>> takes your girlfriend's innocence... all because you never had the courage to act... and you know what happens next, you don't even try to fight, you just run like the pathetic little shit that you are... shall we watch?@@"<br>
<br>
Even as the "Dreammaker" nightmarishly pounds your flesh, tears begin to stream down your cheeks as you feel finally broken, the last of your reserves spent and dreading this secret recording... even if its existence is yet more proof of just how far back the company's meddling went...
<<default>>
ERROR: unexpected scene.resist_count <<=$scene.resist_count>>
<</switch>>
<br><br>
<<if setup.getWillpower() >= $scene.resist_count>>
[<<moveTo "event_evil_ex_blackbox_3" "Resist!" 600 "<<spendWillpower $scene.resist_count>><<set $scene.resist_count++>>">>]<br>
<<else>>
[@@.link_locked;You lack the willpower to resist this torture.@@]<br>
<</if>>
[<<moveTo "event_evil_ex_blackbox_4" "Apologise and beg for forgiveness." 600>>]
</div>/*#
#desc: beg release from black box
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 19 'terrible' $SEEN_FRIEND>>
<<changeHorny -200>>
<<applyFatigue 500>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil")>>
<div id="invframe" class="scrolltext">
You cry out for mercy, howling around the dildo still pounding your throat as you gag and weep and plead forgiveness.<br>
<br>
Though taking a momentary satisfaction at her triumph... <<=setup.getNpcName("npc_exgirlfriend","first")>> somehow makes it even worse a few moments later when she cuts you off with an expression of boredom.<br>
<br>
"@@.npc_exgirlfriend;Ugh... I don't know what I was thinking, but somehow this is like... even more pathetic. I'm not even turned on anymore, you're just such... a loser.@@"<br>
<br>
She taps a button and the machine stops "@@.npc_exgirlfriend;and if I can't get off? Well, neither do you...@@" agonising shocks suddenly wrack your body, the electricity burning away your arousal and leaving you weeping in every sort of pain imaginable: physical, mental, and emotional, a weeping, bound wreck.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> sighs in annoyance. "@@.npc_exgirlfriend;Unfortunately, as useless as you truly are, well... the company does still require your oh-so-valuable services... so fuck off, sleep get ready for work... because, really? It's the only thing you're remotely good for.@@"<br>
<br>
She cuts the feed and your restraints click open, the machine all but dumping you on the floor as your exhausted body slumps to the ground...<br>
<br>
[<<moveTo "event_bed_root" "Stumble into bed." 600>>]
</div>/*#
#desc: call exgirlfriend
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('task_destroy_ex')>>
<<if $now.getUTCHours() > 22 || $now.getUTCHours() < 6>>
You try to call your ex, but she doesn't pickup. Perhaps at a more reasonable hour?<br>
<br>
<<elseif $now.getUTCDay() >= 1 && $now.getUTCDay() <= 5>>
You try to call your ex, but she doesn't pickup. Maybe you should wait for the weekend?<br>
<br>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
You attempt to call your ex, but she doesn't pickup. Perhaps some other time?<br>
<br>
<<else>>
You ring up your ex...<br>
<br>
[<<moveTo "event_destroy_exgirlfriend_phonecall_1" 'Tell her about the "antidote" <<=setup.getNpcName("npc_work_doctor","formal")>> gave you.' 120>>]<br>
<</if>>
<<elseif $npc_exgirlfriend.flags.evil == 1>>
You try to call your ex, but she doesn't pickup, instead firing back a mocking text.<br>
<br>
"@@.npc_exgirlfriend;Still pining after me? You pathetic simp.@@"<br>
<br>
<<elseif $events.hasOwnProperty("evil_ex_1_intro")>>
You try to call your ex, but she doesn't pickup, and you suddenly feel a bit worried.<br>
<br>
<<printThought "Could the company have come for her as well? After everything else that's happened between us... hopefully she's just busy and didn't have time to answer her phone...">><br>
<br>
<<else>>
You consider what you want to call <<=setup.getNpcName("npc_exgirlfriend","first")>> about...<br>
<br>
<<set _notopics=true>>
<<if $npc_exgirlfriend.flags.knowTruth == 1>>
<<set _notopics=false>>
<<if $currentTasks.hasOwnProperty('exgf_truth_meeting') && !$currentTasks.exgf_truth_meeting.finished>>
[@@.link_locked;You already have a meeting scheduled with <<=setup.getNpcName("npc_exgirlfriend","first")>>.@@]<br>
<<else>>
[<<moveTo "event_exgirlfriend_secret_invite" "Ask if she could meet you to discuss something important you discovered?" 300>>]<br>
<</if>>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.unlocked && !$npc_exgirlfriend.flags.bondage_machine.talked>>
<<set _notopics=false>>
[<<moveTo "room_call_exgirlfriend_bondage_machine_1" "Call her about the black box." 180>>]<br>
<</if>>
<<if $npc_exgirlfriend.flags.sexclub.flier && !State.hasPlayed("event_talk_exgf_sex_club_1")>>
<<set _notopics=false>>
[<<moveTo "event_talk_exgf_sex_club_1" "Call her about the sex club flyer that came in the mail." 180>>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty("exgf_your_flat_first_visit") && !$currentTasks.exgf_your_flat_first_visit.finished ||
$currentTasks.hasOwnProperty("exgf_club_date") && !$currentTasks.exgf_club_date.finished ||
$currentTasks.hasOwnProperty("exgf_date_tech") && !$currentTasks.exgf_date_tech.finished ||
$currentTasks.hasOwnProperty("exgf_date_admin") && !$currentTasks.exgf_date_admin.finished ||
$currentTasks.hasOwnProperty("exgf_your_flat_box") && !$currentTasks.exgf_your_flat_box.finished ||
$currentTasks.hasOwnProperty("exgf_your_flat_plant") && !$currentTasks.exgf_your_flat_plant.finished ||
$currentTasks.hasOwnProperty("exgf_your_flat_dog") && !$currentTasks.exgf_your_flat_dog.finished ||
$currentTasks.hasOwnProperty("exgf_her_flat") && !$currentTasks.exgf_her_flat.finished>>
[@@.link_locked;You already have a date scheduled with <<=setup.getNpcName("npc_exgirlfriend","first")>>.@@]<br>
<<else>>
<<if State.hasPlayed("event_exgirlfriend_intro_date_4") && !State.hasPlayed("event_exgirlfriend_date_club_4_perfect")>>
<<set _notopics=false>>
[<<moveTo "event_exgirlfriend_date_club_phone_reup" 'Ask her out for a night at <<printShopName "sex_club">>.' 180>>]<br>
<</if>>
<<if State.hasPlayed("event_exgirlfriend_date_club_4_perfect")>>
<<set _notopics=false>>
[<<moveTo "event_exgirlfriend_date_invite_repeat_1" 'Ask getting together for a date.' 180>>]<br>
[<<moveTo "event_exgirlfriend_date_your_flat_invite" 'Invite her over to your place.' 180>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("theme_psychiatrist_ex_intro_1")>>
<<set _notopics=false>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_admin") && !$currentTasks.psychiatrist_couples_admin.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_landlord") && !$currentTasks.psychiatrist_couples_landlord.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_technician") && !$currentTasks.psychiatrist_couples_technician.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_ex") && !$currentTasks.psychiatrist_couples_ex.finished>>
[@@.link_locked;You should finish your current couple's counseling before scheduling another one.@@]<br>
<<else>>
[<<moveTo "event_call_ex_psychiatrist_1" 'Mention <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> invitation to couples counseling.' 180>>]<br>
<</if>>
<</if>>
<<if _notopics>>
You decide it's for the best not to call <<=setup.getNpcName('npc_exgirlfriend', 'first')>>.<br>
<br>
<</if>>
<</if>>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: call exgf about the black box ambushing you
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.talked = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Mustering your courage, you dial up <<=setup.getNpcName('npc_exgirlfriend', 'first')>>.<br>
<br>
It rings twice and you half wonder if she's ignoring your call, and then she picks up and takes you totally off guard.<br>
<br>
"@@.npc_exgirlfriend;So... how much fun did you have?@@"<br>
<br>
All your prepared thoughts disappear in a flash.<br>
<br>
<<printThought "Wait... she knew? It must have been synchronised with her phone or something... oh <<getWordGod>>!">><br>
<br>
"@@.npc_exgirlfriend;Cat got your tongue? That's okay, it left me a bit discombobulated the first time, too.<<if $npc_exgirlfriend.flags.bondage_machine.times_used > 1>> Though, wow, you went back for more before you even talked to me about it!<</if>>@@"<br>
<br>
"@@.npc_exgirlfriend;Anyway, I guess you deserve an explanation. I actually bought it for you to begin with — I remember you talking about the base device after seeing it at some tech convention and then I happened to run across such a good deal... well, needless to say when it arrived and I discovered the "extra" features. I couldn't possibly show it to you, not with how uptight and such you were. Of course once I owned the thing it kind of drew my curiosity, I mean, what with you insisting on that silly "virginity" pledge well... A girl has needs. At first it was just playing with myself in the shower after you'd left for work, but the urges just got worse. I was worried that I might jump you one day — you always were just so hella cute — and then my thoughts turned to the device sitting in the back of the closet. I mean, it's designed for security, I could work out all my tension and never risk harm to anyone else... using it grew to be more than a little addicting, but for a while it was enough, I'd surrender to the device once a week or so when you were gone and that seemed to do the trick... until <<=setup.getNpcName('npc_yogateacher', 'first')>> came along.@@"<br>
<br>
She hesitates, sounding a bit guilty even as you can tell that just reminiscing about the machine has her a bit breathlessly aroused.<br>
<br>
"@@.npc_exgirlfriend;So yeah, you know how that all fell out, and I'm still sorry for hurting you. I guess that's why I left it behind... some crazy thought that maybe you could have some of the same fun with it that I did so... did you? Did it open some doors and show you a good time?@@"<br>
<br>
[<<moveTo "room_call_exgirlfriend_bondage_machine_deny" "Deny that you enjoyed it." 60>>]<br>
[<<moveTo "room_call_exgirlfriend_bondage_machine_thank" "Admit that you enjoyed it." 60>>]
</div>/*#
#desc: deny your enjoyment of black box to exgf
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.thanked = false>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You try to inject some annoyance into your voice, but you're still so nervous it comes out more than a little whiny as you express your feelings of anger at getting bound and fucked by the machine she left behind.<br>
<br>
Things are silent for several long seconds after you finish your rant and you start to wonder if she hung up on you.<br>
<br>
"@@.npc_exgirlfriend;Hmm, I'm sorry to hear that. I will apologise if my little... gift caused you pain but... well, I'm looking at the metrics and you seem to have cum multiple times during your so-hated "helpless" session, so... I'm more sorry that you're still so determinedly focused on repressing your totally natural urges and fighting against letting loose and having a bit of fun.@@"<br>
<br>
<<printThought "Wait, that can't be true... can it?">><br>
<br>
"@@.npc_exgirlfriend;Either way, the machine is yours now, and you have the code. I hope you can have some fun with it, but if not... well, it'll be just another of your wasted opportunities. It was nice to hear from you, I promise I'll delete the app so you don't have to worry about me watching you do anything. I should have done it before but... well, I just couldn't pass up the ability to monitor things. You don't know how hard it was not to give in to impatience and just text you the code. You really should clean your flat more often!@@"<br>
<br>
With that she hangs up, leaving you staring at the phone and thinking about the ominous black box and what you now know lurks inside...<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: thank ex gf for leaving you the black box
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.thanked = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Embarrassed, the words catch in your throat, but finally you admit the truth, that you enjoyed being restrained and fucked by the machine she left behind.<br>
<br>
"@@.npc_exgirlfriend;Oh, that's just great to hear! Not just that you had a good time, but that you're willing to admit it, to yourself even more than to me. I know back when we were together, you were so repressed... I mean, if you'd been this adventurous then... well, let's just say there are a number of "extra attachments" that can integrate with that contraption...@@"<br>
<br>
You file that fact away for later as, emboldened by her candour, you ask where the machine came from in the first place.<br>
<br>
"@@.npc_exgirlfriend;I don't want to get too into detail, it's a bit shameful, in a way, but, well... with that silly "virginity" pledge we had, well, I still had needs. I mean, I didn't start with that devilish device, but eventually... anyway, now that I'm with a partner who's a bit more open about this sort of thing I didn't need it and I had kind of a fleeting thought that maybe, somehow, it would help you open up. I know, I know, it's something out of porn, but, hey... it worked out, didn't it?@@"<br>
<br>
<<printThought "Not the first time my life seems to be following the plot of a porno...">><br>
<br>
"@@.npc_exgirlfriend;Anyway, I'll leave you to enjoy your new toy. It was good hearing from you, I'm glad you're doing well.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Back." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: talk to exgf about the sex club flyer
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You call and ask her about the flyer for <<printShopName 'sex_club'>> that showed up at the flat addressed to her.<br>
<br>
"@@.npc_exgirlfriend;Oh god! I'm so sorry, I thought I took care of forwarding my mail but well... seems like I missed that one! I guess thanks for letting me know...@@"<br>
<br>
She pauses for a moment
<<if $npc_exgirlfriend.flags.bondage_machine.talked>>
"@@.npc_exgirlfriend;You know... you might actually enjoy checking the place out some night, y'know, based on what you've been getting up to lately.@@"<br>
<br>
Even unseen you blush at the reminder of that OTHER thing she left behind at the flat...
<<elseif State.hasPlayed("event_yoga_private_3_5")>>
"@@.npc_exgirlfriend;You know... you might actually enjoy checking the place out some night, y'know... yeah, I think you might enjoy it A LOT.@@"<br>
<br>
You can practically hear her wink over the phone as you reflect back on your gym encounter...
<<else>>
"@@.npc_exgirlfriend;Well, I guess you can just throw it out... or maybe check out the club yourself? You really should get out a bit more, and you'd meet more interesting people than that dump of a bar you used to waste time at.@@"<br>
<br>
You start to muster a defence of the Usual Place but she cuts you off.
<</if>>
<br><br>
"@@.npc_exgirlfriend;Anyway, I gotta get going, have a great day!@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: carriage encounter ex
#status: FINISHED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<useClothSetPush 'tmp'>>
<<set $scene.legsId = setup.getItemFromType('legwear')>>
<<if $scene.legsId != "">>
<<removeItem $scene.legsId true>>
<</if>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<if $scene.panties != "">>
<<removeItem $scene.panties true>>
<</if>>
<<applyExperience 'anal' 18 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 10 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Impaled on Horse Cock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/underhorse.png">>
<div id="invframe" class="scrolltext">
You're "riding" along beneath the horse when the carriage comes to a stop, the shift in momentum causing the horse-cock already deep in your ass to slam all the way in, prompting a small orgasm that has you gasp.<br>
<br>
"@@.npc_exgirlfriend;What was that?@@" Comes an oddly familiar voice... but before you can try to place it whoever it is has boarded the carriage and with encouraging "@@.npc_buggy_driver;Hee-ya!@@" The horse is moving forward once more... which means its cock is back to stirring your insides and leaving you panting.<br>
<br>
[<<moveTo "event_ex_carriage_2" "Keep on riding..." 300>>]
</div>/*#
#desc: carriage realise it was ex
#status: FINISHED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'unbelievable' $INCOGNITO>>
<<applyExperience 'bestiality' 10 'unbelievable' $INCOGNITO>>
<<applyExperience 'humiliation' 20 'unbelievable' $INCOGNITO>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Impaled on Horse Cock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/underhorse.png">>
<div id="invframe" class="scrolltext">
You don't go much further along, two or three blocks, you'd guess, before the carriage comes to a stop once more and the passenger steps out. The street is a bit louder here and you can't make out words but, as you peek out from under the skirt concealing your perverted position from view... you spot a familiar pair of short heels, shoes that you many, many times had unbuckled to massage the feet within.<br>
<br>
<<printThought "Holy shit! <<if State.hasPlayed('event_exgirlfriend_date_club_4_perfect')>><<=setup.getNpcName('npc_exgirlfriend','first')>><<else>>My ex<</if>> is right next to me... and she has no idea I'm bound and balls-deep on horse-cock!">><br>
<br>
You somehow stifle a moan as secret humiliation blends with ass-stretching stimulation and the carriage rolls on again, your heart pounding as the beast breaks into a trot. You embrace the "distraction" stretching you from behind, orgasming in the middle of the street and then going almost limp for the final few blocks to your destination.<br>
<br>
Noticing your pallor as <<he npc_buggy_driver>> the buggy driver helps you back to your feet, apologising for the extra stop.<br>
<br>
"@@.npc_buggy_driver;Economy being what it is, I try to take extra fare, since you aren't using up the seat... you look like that was quite the trip... and <<=$npc_buggy_driver.horse_name>> seems to have enjoyed it too!@@" The buggy driver nods at<<if $fetish.cum>>the trail of horse-cum leaking out of your ass<<else>><</if>>... it looks like you aren't the only one who got off on the road.<br>
<br>
You thank the buggy driver and continue on your way, still trying to calm down as you continue to think about the quasi-encounter with <<if State.hasPlayed('event_exgirlfriend_date_club_4_perfect')>><<=setup.getNpcName('npc_exgirlfriend','first')>><<else>>your ex<</if>>...<br>
<br>
[<<moveTo "room_foyer" "Head up to your flat." 60 '<<if $scene.legsId>><<wearItem $scene.legsId true>><</if>>'>>]
</div>/*#
#desc: ex unknowingly spots you in mall shop
#status: FINISHED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You're browsing through <<printShopName 'mall_apparel_store' true>> when you hear a familiar voice comment "@@.npc_exgirlfriend;That would be a good colour on you it would really match your hair...@@"<br>
<br>
You turn around to come face to face with your ex.
<<if $npc_exgirlfriend.flags.workeherclothes || $npc_exgirlfriend.flags.reactnamechange>>
from the shocked expression on her face she definitely didn't recognise you from behind... but she does now.<br>
<br>
"@@.npc_exgirlfriend;Wow, <<=$player.first_name>>... you've...@@" she trails off, staring at you in shock, "@@.npc_exgirlfriend;you... you look good. And that top would look good on you...@@" she hesitates a moment longer as the awkwardness simmers. "@@.npc_exgirlfriend;I uh... need to get going.@@"
<<elseif setup.getCurrentMakeup() && $player.body.breastsize[0] > 0 && setup.getCurrentHairstyle().femininity > 1>>
From the normal expression on her face she doesn't seem to have recognised you.<br>
<br>
"@@.npc_exgirlfriend;Oh yeah, that is DEFINITELY a look for you, you go, girl!@@"<br>
<br>
She winks and dashes off before you can overcome your shock and think of a response.
<<else>>
"@@.npc_exgirlfriend;<<=$player.first_name>>? You've... holy shit you've changed!@@" she trails off, then quickly corrects herself. "@@.npc_exgirlfriend;Not that there's anything wrong with that, I mean, if this makes you happy then...@@" she trails off as the awkwardness builds. "@@.npc_exgirlfriend;I uh... need to get going.@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_exgirlfriend','first')>> dashes off, leaving you feeling complimented... but also more than a bit tumultuous.<br>
<br>
[<<moveTo "room_mall_apparel_store" "Resume shopping." 60>>]
</div>/*#
#desc: ex comes in to purchase buttplug
#status: FINISHED 0.9.4.0
#ignore_spell: xl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
"@@.npc_exgirlfriend;Hey, is this the largest butt plug you sell?@@"<br>
<br>
You turn around to find yourself face to face with <<=setup.getNpcName('npc_exgirlfriend','first')>>... but, between your latex covering and you hood she seems to have totally failed to recognise you... and with your gag you can't exactly clarify the matter.<br>
<br>
She stares for a moment and then holds up the package for an "Ass Stretcher XL," certainly far from a small plug... but also not the largest the shop stocks, by any means. "@@.npc_exgirlfriend;You do work here, right?@@" She finally asks, "@@.npc_exgirlfriend;Well, I guess that gag means you can't respond... damn that's hot... and I saw a sign at the counter that says you're plugged as well? Unf. Anyway, yeah... you got anything bigger?@@"<br>
<br>
[<<moveTo "event_ex_sexstore_2" "Show her the larger toys in the back of the shop." 300>>]
</div>/*#
#desc: show ex large buttplugs
#status: FINISHED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyHorny 100>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You lead <<=setup.getNpcName('npc_exgirlfriend','first')>> to the back of the store where the extra-large toys are hidden away to avoid scaring off walk-ins.<br>
<br>
You silently gesture at the shelves and <<=ps(setup.getNpcName('npc_exgirlfriend','first'))>> eyes light up, handing you the previous plug with barely a thought as she oogles the monstrosities in front of her. "@@.npc_exgirlfriend;Oh, wow...@@" she seems to make a direct line for one of the larger ones, a double-ridge, wide design that gives the user a mushroom tip, followed by a narrower segment to relax and prepare for the second, thicker portion, and then a flange narrow enough to grip... but still thicker than all but the girthiest cocks.<br>
<br>
"@@.npc_exgirlfriend;Wow, and it's heavy, too...@@" <<=setup.getNpcName('npc_exgirlfriend','first')>> states in awe before looking over at you and grinning. "@@.npc_exgirlfriend;What? Are you surprised that someone like me would be interested in something like this? Well don't let the casual clothes fool ya! I might not be strutting around in latex and a gag... but I recently discovered that I am VERY much a butt-slut, and, well... as much as I love cock back there... I want more and this?@@" She grins "@@.npc_exgirlfriend;Well, maybe my eyes are a little bigger than my ass, but the thought of feeling this second bulb pop into me...@@" she bites her lip. "@@.npc_exgirlfriend;Let's just say I'm glad I wore thick panties for this trip! Goddess... if I can take this<<if $fetish.fisting>>maybe I can try fisting<<else>>anything is on the table<</if>>@@"<br>
<br>
<<=setup.getNpcName('npc_exgirlfriend','first')>> winks "@@.npc_exgirlfriend;thanks again for the help! I'll be sure to reward you when I checkout!@@"<br>
<br>
She skips away... and a few moments later your legs go rubbery as the remote plug in your own ass buzzes very hard, nearly enough to make you cum standing right there in the aisle.<br>
<br>
By the time you catch your breath she's left the store and you shake your head and head off to restock her abandoned original purchase.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Work out the rest of your shift." 1800>>]
</div>/*#
#desc: npc_guard asks you for help
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
You're heading for the showers when you hear a slightly familiar voice. "@@.npc_guard;<<=$player.first_name>> <<=$player.last_name>>?@@"<br>
<br>
You look over to see <<=setup.getNpcName("npc_guard","formal")>>,
<<if $npc_guard.flags.gym_intro>>
<<=setup.getNpcName("npc_guard","formal")>>, the work security guard who first introduced you to the gym.
<<else>>
the security guard from work. who gave you quite the "intimate" inspection when you were smuggling <<=setup.getNpcName("npc_ai","first")>> out of the building.
<</if>>
She's off the clock and out of uniform; sitting on a bench in front of a VERY loaded bar looking about ready to lift.<br>
<br>
"@@.npc_guard;I thought I recognised you! Come on over. I could use a spot.@@"<br>
<br>
[<<moveTo "event_guard_gym_encounter_2" "Hurry over to help." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_guard_gym_encounter_2" "You don't have time right now." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: spot npc_guard
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<set _nextDate = setup.setNextDate($now, 7, 6, 0)>>
<<addEvent 'guard_gym_encounter' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You walk over to <<=setup.getNpcName("npc_guard","formal")>> as she leans back and slides under the bench and takes her grips.
<<if setup.getTotalValue("strength") > 15>>
You get in position as instructed, helping her unrack the weight and squatting into position as she starts her set; the fact that there's more than your own bodyweight on either side of the bar hardly a concern for you.<br>
<br>
She turns out to be doing a slightly modified bench that sees her bring the bar lower on her chest so that her sizable breasts do not reduce her range of motion and you watch her do a good ten reps before she tilts back to rack and you lift the bar out of her hands.<br>
<br>
She's clearly surprised at your show of strength as she sits up. "@@.npc_guard;Wow, you're stronger than you look! If you can spot like that, well, I wouldn't mind pushing things a bit harder — after all, doing that many reps is basically cardio.@@"<br>
<br>
You nod in understanding as you help her put another two plates on either side and she slides under for another set, her feet pressing into the floor as she sets her shoulder blades and nods for you to help un-rack the weights.<br>
<br>
The weight moves slower but she finishes three clean reps before giving you the signal, the weights landing heavy in their hooks just before she lets out her breath.
<<else>>
<<if setup.getTotalValue("strength") > 10>>
You count at least your bodyweight on either side of the bar, which leaves you a little nervous if <<=setup.getNpcName("npc_guard","formal")>> happens to have a severe failure, but you get in position as instructed and help her unrack the bar and start her set.
<<elseif setup.getTotalValue("strength") > 5>>
Given that there's more than your bodyweight on either side of the bar your presence as spotter seems fairly useless, but you dutifully do as commanded as she un-racks the bar on her own and starts her set.
<<else>>
Your presence for "spotting" is effectively comical, given your (lack of) strength, and the fact that she easily has more than your bodyweight on either side of the bar. You hold your breath as she easily un-racks the weight without any help from you and starts her set.
<</if>>
<br><br>
<<=setup.getNpcName("npc_guard","formal")>> doesn't just bench the weight with ease, she does a low-chest variation to avoid her sizable breasts from "cheating" her out of range of motion, banging out a dozen reps before setting the weight back in its hooks.<br>
<br>
The two of you chat a little as she rests for another four sets.
<</if>>
<br><br>
As she finishes up she takes a deep breath through her nose, and you realise just how close she is to your
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage")>>
<<getWordMyPenis>> and
<<if setup.isCage()>>
dripping
<</if>>
<<getWordVagina>>.
<<else>>
<<getWordMyPenis>> and dripping <<getWordVagina>>.
<</if>>
<<elseif $player.body_ref.penis>>
<<getWordMyPenis>>.
<<elseif $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage")>>
chastity-belted.
<</if>>
<<getWordVagina>>.
<<else>>
ERROR: unexpected genitals
<</if>>
<br><br>
She grins up at you as she takes another deep breath.<br>
<br>
"@@.npc_guard;Now that's a scent I'd recognise anywhere. <<if $fetish.sissy>>Pure, sweet sissy. <</if>>Makes me remember that time I felt you wrapped around my fist... that's some fun I wouldn't mind repeating off the clock...@@"<br>
<br>
You blush and take a step back as she chuckles and sits up. She uses a towel to wipe down the bench, which only makes you further notice her scent: as strong and feminine as she is. "@@.npc_guard;Come on, let's hit the showers.@@"<br>
<br>
[<<moveTo "event_guard_gym_encounter_3" "Follow after her." 180>>]
<<else>>
You politely explain that you're actually in a bit of a rush and really need to get showered and on your way.<br>
<br>
"@@.npc_guard;Ah, damn, thought maybe outside of work hours you'd be a bit more laid back! Oh well, I guess catch you later then.@@"<br>
<br>
She turns away and slides under the bar to start her set, casually repping out the impressive weight.<br>
<br>
<<if $scene.lockerroom == "female">>
[<<moveTo "room_gym_lockerroom_women_post" "Continue on to the locker-room." 60>>]
<<else>>
[<<moveTo "room_gym_lockerroom_men_post" "Continue on to the locker-room." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: head for showers with npc_guard
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_guard.flags.gym_encounter=true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked")>>
<div id="invframe" class="scrolltext">
<<if $npc_swolebro.stage > 2>>
On your way to the locker-room you catch a glance from one of your swole<<=$npc_swolebro.bro>> friends as <<he>> flashes you a wink.
<</if>>
In the locker-room <<=setup.getNpcName('npc_guard', 'formal')>> waits for one of the private stalls to open up before leading you inside. With the heat cranked up things are getting steamy in more ways than one as she turns away and sheds her clothes to reveal tight muscles and the full length of her tattoos.<br>
<br>
"@@.npc_guard;Stop staring and make yourself useful and take care of my back.@@" She asks, tossing you a loofah.<br>
<br>
[<<moveTo "event_guard_gym_encounter_4" "Scrub those muscles!" 600 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_guard_gym_encounter_4" "Excuse yourself." 60 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: shower fun with with npc_guard
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.abort>>
<<set _nextDate = setup.setNextDate($now, 7, 6, 0)>>
<<addEvent 'guard_gym_encounter' _nextDate>>
<<else>>
<<removeAllClothing>>
<<set $npc_guard.flags.shower=true>>
<<include "cleanPlayer">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
Heart beating faster you mumble an excuse and slink away from the private stall. <<=setup.getNpcName('npc_guard', 'formal')>> shrugs as she steps into the shower, giving you a "your loss" glance as she starts cleaning off her sweat.<br>
<br>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 180>>]
<<else>>
Your heart beats a little faster as you reach out and touch <<=ps(setup.getNpcName('npc_guard', 'formal'))>> body. Her muscles ripple with her every movement, firm, but smooth thanks to the flowing water of the shower and the suds of the soap.<br>
<br>
After you've finished scrubbing down her back she casually turns, half-concealed in the steam as your efforts glide over her breasts and then move downwards.<br>
<br>
[<<moveTo "event_guard_gym_encounter_5" "That's... that's a penis!" 180 "<<set $npc_guard.genitals='penis'>>">>]<br>
[<<moveTo "event_guard_gym_encounter_5" "That's... that's a penis! And a vagina..." 180 "<<set $npc_guard.genitals='futa'>>">>]<br>
[<<moveTo "event_guard_gym_encounter_5" "Woah, cyber-cock!" 180 "<<set $npc_guard.genitals='cybernetic'>>">>]<br>
[<<moveTo "event_guard_gym_encounter_5" "Woah, cyber-cock upgrade for dual-threat!" 180 "<<set $npc_guard.genitals='cyber-futa'>>">>]<br>
[<<moveTo "event_guard_gym_encounter_5" "How does she have muscle definition around her labia?" 180 "<<set $npc_guard.genitals='vag'>>">>]
<</if>>
</div>/*#
#desc: determine npc_guard genitals
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "card_guard">>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
You descend into the mists to discover that
<<switch $npc_guard.genitals>>
<<case 'penis'>>
<<=setup.getNpcName("npc_guard","formal")>> is armed with a very large <<getWordPenis false>>...
<<case 'futa'>>
<<=setup.getNpcName("npc_guard","formal")>> is armed with not just a large <<getWordPenis false>>, but a dripping <<getWordVagina>> behind.
<<case 'cybernetic'>>
<<=setup.getNpcName("npc_guard","formal")>> is armed with a large, cybernetic <<getWordPenis false>>...
<<case 'cyber-futa'>>
<<=setup.getNpcName("npc_guard","formal")>> is armed with a large, cybernetic <<getWordPenis false>>, and behind that a tight <<getWordVagina>>.
<<case 'vag'>>
<<=ps(setup.getNpcName("npc_guard","formal"))>> perfectly chiselled abdominal muscles direct traffic to a beautiful, tight <<getWordVagina>>.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
Before you can get too distracted she is pulling you back to your feet to return the favour; scrubbing you down and then hosing you off.<br>
<br>
"@@.npc_guard;Thanks! Always helps to have someone else assist with those hard-to-reach spots,@@" she states with a knowing wink as the two of you dry off and return to the locker-room. "@@.npc_guard;Here,@@" she adds, handing you a business card, "@@.npc_guard;I've gotta bounce, but give me a call sometime if you want to work out.@@"<br>
<br>
You nod, catching your breath as she tosses on street clothes and leaves you to change.<br>
<br>
[<<moveTo "room_gym_lockerroom_women_post" "Continue." 180>>]
</div>/*#
#desc: meet guard to workout on weekend
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gymStart = setup.setNextDate($now, 0, 6, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_gymStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<set $npc_guard.flags.lastWorkout = $now>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
You meet up with <<=setup.getNpcName("npc_guard","formal")>> to lift weights.<br>
<br>
[<<moveTo "event_guard_gym_morning_2" "Lift!" 1800>>]
</div>/*#
#desc: already at gym when you meet guard to workout on weekend
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gymStart = setup.setNextDate($now, 0, 6, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_gymStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<set $npc_guard.flags.lastWorkout = $now>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
You find <<=setup.getNpcName("npc_guard","formal")>> already warming up and you join her for some weight-lifting.<br>
<br>
[<<moveTo "event_guard_gym_morning_2" "Lift!" 1800>>]
</div>/*#
#desc: lift with guard on weekend
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'terrible' $SEEN_FRIEND>>
<<if $scene.daySkipForceGuardDreams || !(State.hasPlayed("event_egg_guard_0_dreams_1") || State.hasPlayed("event_egg_guard_2_setup_guard_1")) && random(1,4) == 3>>
<<set $scene.bonus_scene = 'dreams'>>
<<elseif ((($npc_guard.genitals=='cyber-futa' || $npc_guard.genitals == 'futa') && $gym.lewd_futa && $player.virgin.cunnilingus && $player.virgin.blowjob && setup.getTotalValue("oral") > 13)
|| (($npc_guard.genitals == 'penis' || $npc_guard.genitals == 'cybernetic') && $gym.lewd_female && $player.virgin.blowjob && setup.getTotalValue("oral") > 13)
|| ($npc_guard.genitals == 'vag' && $gym.lewd_female && $player.virgin.cunnilingus)
) && setup.getTotalValue("strength") > 10 && (!$npc_guard.flags.post_workout_sex || random(1,5) == 1)>>
<<set $scene.bonus_scene = 'cleaning'>>
<<elseif setup.getTotalValue("anal") > 13 && setup.getTotalValue("strength") > 13 && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && random(1,4) == 1 && $npc_guard.flags.post_workout_sex>>
<<set $scene.bonus_scene = 'hipthrust'>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
You meet up with <<=setup.getNpcName("npc_guard","formal")>> to lift weights.<br>
<br>
As always, you're in utter awe of the number's she's putting up — casually benching several times your bodyweight, and her squats? Half a ton, ass to grass to the jealous, near drooling stares of every<<if $options.fem>>one<<else>> guy<</if>> in the gym.
<<if setup.getTotalValue("strength") > 10>>
While your frame means you'll never be putting up near her numbers,
<<if setup.getTotalValue("strength") > 15>>
you don't exactly do shabby yourself, and you can tell she's impressed at how much progress you've made.
<<else>>
you aren't exactly slouching, either, and the two of you exchange tips as you go through a nice heavy, sweaty workout.
<</if>>
<br><br>
"@@.npc_guard;Now that's what I call a squooty!@@" She states with a slap on your firm, THICC ass after you finish racking your set.
<<else>>
You do your best
<<if setup.getTotalValue("strength") > 5>>
but you're still on the newbie gain train, as it feels like she's constantly correcting your form, and occasionally forced to rescue you from that "one more rep" that it turns out you didn't have in you.
<<else>>
but there's no getting around the fact that you're just weak, and have quite a bit of work ahead of you to even learn the basics of lifting.
<</if>>
<</if>>
<br><br>
<<switch $scene.bonus_scene>>
<<case "cleaning">>
As the two of you head for the locker-room her gaze drifts towards the private showers, one of which looks unoccupied...<br>
<br>
[<<moveTo "event_gym_guard_post_workout_sex_1" "Ask if she'd like a nice full, personal wash-down..." 60>>]<br>
[<<moveTo "event_gym_guard_showers" "Just hit the showers and change." 60>>]
<<case "hipthrust">>
As you wipe down the squat area <<=setup.getNpcName("npc_guard","formal")>> glances at you, and then towards one of the gym's private workout rooms.<br>
<br>
"@@.npc_guard;Good set today... but your glutes are looking a bit tight... and I could use a nice burnout set of hip thrusts, whaddaya say?@@"<br>
<br>
<<printThought "Hip thrusts... private... glutes... that's an interesting way to phrase a proposal...">><br>
<br>
[<<moveTo "event_gym_guard_post_workout_hipthrust_1" "Sure, you have time for a bonus round..." 180>>]<br>
[<<moveTo "event_gym_guard_showers" "Just hit the showers and change." 60>>]
<<case "dreams">>
You're swapping weights for <<=setup.getNpcName("npc_guard","formal")>> between sets when she looks at you with a wistful smile.<br>
<br>
"@@.npc_guard;You are just adorably submissive, you know that? You don't even need to be asked and you're serving me, it's really quite sweet... and so hot.@@"<br>
<br>
You blush as she leans back under the bench to bang out another clean set and then continues as you fetch more weight. "@@.npc_guard;That sort of attitude... that's just perfect in my mind. I know some dommes enjoy the playful back and forth with a bratty sub but me? I find that tedious, I like a sub whose obedience is as eager as it is natural, sweet and ready to be trained, pleasured and pampered... pleasure in particular. There's nothing hotter then when a sub is willing to trust their domme to be in complete control of their orgasms, and in so doing reach new vistas of orgasmic pleasure. 24/7 chastity, the sub turning over their key... that moment is one of the most erotic offerings of trust, affection and submission there is...@@"<br>
<br>
She pauses, and you swear she almost blushes, "@@.npc_guard;bit of a tangent there... trying a new pre-workout, weird that it's making me ramble...@@" She swings back under for another set... but even doing several extra reps there's no delaying the need to eventually rack the bar and be back facing you and an uncertain silence.<br>
<br>
[<<moveTo "event_egg_guard_0_dreams_1" "Offer yourself." 180 "<<set $scene.offer=true>>">>]<br>
[<<moveTo "event_egg_guard_0_dreams_1" "Wish her luck in finding the sub of her dreams." 180 "<<set $scene.offer=false>>">>]
<<default>>
<<=setup.getNpcName("npc_guard","formal")>> lets you know she has to run, thanking you for the workout and saying she'll see you later.<br>
<br>
<<if State.hasPlayed("theme_ai_retention_mission_1") && !State.hasPlayed("event_guard_retention_mission_ask_1")>>
[<<moveTo "event_guard_retention_mission_ask_1" 'Ask her about <<=setup.getNpcName("npc_retention", "formal")>>.' 180>>]<br>
<</if>>
<<if State.hasPlayed("event_egg_guard_2_setup_egg_4") && !State.hasPlayed("event_egg_guard_2_setup_guard_1")>>
[<<moveTo "event_egg_guard_2_setup_guard_1" 'Ask about <<=setup.getNpcName("npc_egg","first")>>.' 120 "<<set $scene.call=false>>">>]
<</if>>
<<if setup.checkItemOwned("panties_guard")>>
[<<moveTo "event_gym_guard_showers" "Shower and change." 60>>]
<<else>>
[<<moveTo "event_panties_guard_1" "Shower and change." 60>>]
<</if>>
<</switch>>
</div>/*#
#desc: gym locker room shower after working out with guard
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<<include "cleanPlayer">>
<<set _cage_id = setup.getItemFromType('cage')>>
<<if _cage_id>>
<<changeItemStatus _cage_id 'cumsoaked' '["remove"]'>>
<<changeItemStatus _cage_id 'dirty' '["remove"]'>>
<<changeItemStatus _cage_id 'piss' '["remove"]'>>
<<changeItemStatus _cage_id 'sweaty' '["remove"]'>>
<</if>>
<<set $player.makeup.messed = 0>>
<<set $npc_guard.flags.totalWorkouts += 1>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
You've finished showering off and stand in the locker-room.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Lockerroom">><<set $scene.return_makeuproom="event_gym_admin_showers_postmakeup">><<set $scene.makeuproom_image="./images/locations/gym_lockers.png">><<set $scene.return_makeuproomtext="Return to the lockerroom.">>'>>]<br>
<</if>>
<<include calcGymAttire>>
<<if $player.identify_as != "male">>
<<set $scene.lockerroom = "female">>
<</if>>
<<if $scene.gymAttire>>
[<<moveTo "room_gym_main" "Head into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>><<set $scene.exercise = 0>>">>]<br>
<<elseif $scene.gymBraOnly>>
<<if $scene.gymCanBraOnly>>
[<<moveTo "room_gym_main" "Head into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>><<set $scene.exercise = 0>>">>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to work out wearing only a sportsbra.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are inappropriately attired for the gym, you need to be wearing a workout top, pants and shoes to meet the gym's dress code.@@]<br>
<<if $options.ezchange && setup.getClothingSetIndex('Workout Clothes') != -1>>
[<<moveTo "room_gym_lockerroom_women_pre" "Change into your gym clothes." 180 "<<set _setId = setup.getClothingSetIndex('Workout Clothes')>><<useClothSet _setId>><<set $scene.exercise = 0>>">>]<br>
<</if>>
<</if>>
<<if setup.checkOutsideDecency()>>
[<<moveTo 'room_citymap' 'Leave the gym.' 180 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now'>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
[@@.link_locked;Go out without makeup? That's not properly prepared to leave!@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_too_fem">>
[@@.link_locked;This makeup is maybe a bit too much...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
[@@.link_locked;My makeup is a mess, I need to deal with this before I leave!@@]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: hip thrust workout with guard
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
You tell her that you'd love to get some help with your "tightness" and she grins, leading the way into one of the private workout rooms and locking the door for privacy.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> strides across the room, kicking a bench into position at the same time she
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
whips out her large, hard <<getWordPenis false>>.
<<case 'cybernetic' 'cyber-futa'>>
deploys her cybernetic <<getWordPenis false>>.
<<case 'vag'>>
buckles a large double-ended strap-on over and into her crotch.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
"@@.npc_guard;Alright,@@" she states, planting her feet firmly on the ground and then easing back into a bridge, her shoulders braced on the bench as she slaps her thighs in invitation. "@@.npc_guard;Hop on up — you look the perfect weight for a nice cardio set so I can really feel that deep muscle burn.@@"<br>
<br>
[<<moveTo "event_gym_guard_post_workout_hipthrust_2" "Yes ma'am!" 1800 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_gym_guard_post_workout_hipthrust_2" "Actually... you're feeling a bit too tight..." 180 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: hip thrust workout with guard
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.abort>>
<<set $npc_guard.flags.hipthrust = true>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' $npc_guard.penis_size 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You politely decline <<=ps(setup.getNpcName("npc_guard","formal"))>> offer and she shrugs. "@@.npc_guard;Some other time, maybe — before you go, how about you hand me a couple of those 50 kilos plates?@@"<br>
<br>
You carry the two plates over to her and she threads them around over her <<if ['penis', 'futa'].includes($npc_guard.genitals)>>artificial <</if>><<getWordPenis false>>, grunting slightly as the second one settles heavily into position.<br>
<br>
"@@.npc_guard;One,@@" she hisses as she does the first rep, the count continuing as you slip out of the room.<br>
<br>
[<<moveTo "event_gym_guard_showers" "Shower and change." 60>>]
<<else>>
You <<if $scene.removePlug>>remove your plug and <</if>>get into position atop <<=setup.getNpcName("npc_guard","formal")>>, her large, hard <<getWordPenis false>> <<if setup.checkItemTypeTag('plug', ['hollow'])>>stretching your hollow plug<<else>>sliding up and in<</if>>.<br>
<br>
"@@.npc_guard;Goddess your ass is perfect,@@" she grunts as she lowers down. You tuck your legs so as not to drag on the floor as she does a slow, experimental rep before calling @@.npc_guard;One!@@" and speeding up for the second.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> swiftly finds her stride, your weight seemingly hardly an encumbrance as she moves with such vigour you are bouncing up several centimetres at the top, her hands on your hips keeping you aligned and slamming you back down.<br>
<br>
She grunts and you moan as she works you hard and deep, not skimping on reps or ROM as she caps the set by flipping you onto the bench, really putting her weight into it as she pins you down and finishes the both of you off together before stepping back as you each catch your breath.<br>
<br>
"@@.npc_guard;Now THAT is a burnout set!@@" She states with authority as you nod in gratitude, coming up to your feet to help her stow her
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
satiated sapphic sabre
<<case 'cybernetic' 'cyber-futa'>>
mechanical meat-missile
<<case 'vag'>>
strap-on
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
before the two of you wipe down your machines and get ready to head for the showers.<br>
<br>
<<if State.hasPlayed("theme_ai_retention_mission_1") && !State.hasPlayed("event_guard_retention_mission_ask_1")>>
[<<moveTo "event_guard_retention_mission_ask_1" 'Ask her about <<=setup.getNpcName("npc_retention", "formal")>>.' 180 '<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>>'>>]<br>
<</if>>
[<<moveTo "event_gym_guard_showers" "Shower and change." 60 '<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>>'>>]
<</if>>
</div>/*#
#desc: call guard root
#status: FINISHED 0.8.2.0
#*/
<<set _call = 0>>
<<if (
( (($now.getUTCDay()>0)&&($now.getUTCDay()<5)) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=17)&&($now.getUTCHours()<=23))) ) ||
( ($now.getUTCDay()==5) && (($now.getUTCHours()==6)||(($now.getUTCHours()>=13)&&($now.getUTCHours()<22))) ) ||
( ($now.getUTCDay()==6)||($now.getUTCDay()==0) && (($now.getUTCHours()>=6) && ($now.getUTCHours()<=24)) )
)>>
<<set _call = 1>>
<<else>>
<<set _call = 0>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if _call == 1>>
<<set $scene.firstcall = !$npc_guard.flags.canWorkout>>
<<set $npc_guard.flags.canWorkout = true>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch _call>>
<<case 0>>
<<if $npc_guard.flags.canWorkout && $now.getUTCHours()==5 && ($now.getUTCDay() == 0 || $now.getUTCDay() == 6)>>
You try to call <<=setup.getNpcName('npc_guard', 'formal')>>. She does not answer, instead texting you back.
<<if $now.getUTCMinutes() >= 50>>
"@@.npc_guard;Can't talk. About 2 start workout.@@"
<<else>>
"@@.npc_guard;Can't talk. Omw 2 gym if u want 2 meet at 6.@@"
<</if>>
<<elseif $now.getUTCHours()>6 && $now.getUTCHours() < 17>>
You try to call <<=setup.getNpcName('npc_guard', 'formal')>>. She does not answer her phone, which is probably some sort of security thing with her likely being at work. Maybe you should try at some other time.
<<else>>
You try to call <<=setup.getNpcName('npc_guard', 'formal')>>. She does not answer her phone. <<printThought "Probably sleeping, or maybe at the gym.">>
<</if>>
<<case 1>>
You call <<=setup.getNpcName('npc_guard', 'formal')>>. She picks up the phone after a short time ringing.<br>
<br>
<<if $scene.firstcall>>
"@@.npc_guard;Hey <<=$player.first_name>>, you interested in working out again? My work schedule can fluctuate a lot, but I always try to get a heavy session in on Saturday and Sunday first thing in the morning. Text me, say... a little before six if you want to get together? Anyway, I gotta go, look forward to seeing you sometime!@@"
<<else>>
<<if $npc_guard.flags.lastWorkout == "">>
"@@.npc_guard;Hey <<=$player.first_name>>, I told you before, if you want to work out meet me at the gym right before six on the weekend. Anyway, gotta go.@@"
<<elseif setup.daysToDate($npc_guard.flags.lastWorkout, $now) >= 7>>
"@@.npc_guard;Hey <<=$player.first_name>>, haven't seen you at the gym for a while, we should get together again, push some weight around. Anyway, don't have time to chat right now, but I'll see you around.@@"
<<else>>
"@@.npc_guard;Hey <<=$player.first_name>>, sorry to be blunt, but I can't really talk right now. We'll catch up at the gym, alright?@@"
<</if>>
<</if>>
<br><br>
<<if State.hasPlayed("event_egg_guard_2_setup_egg_4") && !State.hasPlayed("event_egg_guard_2_setup_guard_1")>>
[<<moveTo "event_egg_guard_2_setup_guard_1" 'Ask about <<=setup.getNpcName("npc_egg","first")>>.' 120 "<<set $scene.call=true>>">>]<br>
<<elseif State.hasPlayed("event_egg_guard_6_threesomes_1_offer_1") >>
[<<moveTo "event_egg_guard_6_threesomes_2_call_1" 'Bring up the possibility of a threesome with <<=setup.getNpcName("npc_egg","first")>>.' 120>>]<br>
<<if State.hasPlayed("event_egg_guard_maidcafe_intro_3_accept") && !State.hasPlayed("event_egg_guard_maidcafe_1")>>
[<<moveTo "event_egg_guard_maidcafe_invite_1" 'Ask <<=setup.getNpcName("npc_guard","formal")>> if she would like to meet you for coffee sometime.' 120>>]<br>
<</if>>
<<else>>
She hangs up.<br>
<br>
<</if>>
<</switch>>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: sex club offer guard sex
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.guard_offer = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You flutter your eyelashes and thank <<=setup.getNpcName('npc_guard', 'formal')>> for all the hard work she's putting in at the door before asking if she is allowed to accept "tips" from guests.<br>
<br>
<<if $npc_guard.genitals && $player.virgin.anal && ($player.virgin.cunnilingus || $npc_guard.genitals == "penis" || $npc_guard.genitals == "cybernetic") && ($player.virgin.blowjob || $npc_guard.genitals == "vag") && ($player.virgin.vaginal || !$player.body_ref.vagina || setup.getItemFromType("cage") && !setup.isCage()) && (!$npc_guard.flags.clubOral || random(1,4) == 3)>>
<<=setup.getNpcName('npc_guard', 'formal')>> grins. "@@.npc_guard;That sounds like it would hit the spot... of course I still have to mind the door. Fortunately, well... the architect foresaw exactly this sort of situation.@@" She grins and gestures for you to crawl under the desk... which you notice is pleasantly fitted with knee-pads...<br>
<br>
[<<moveTo 'event_sex_club_guard_help_2' 'Kneel and get to work.' 1800 "<<set $scene.abort=false>>">>]<br>
[<<moveTo 'room_sex_club_entrance' 'Actually... you remembered other plans.' 60 "<<set $scene.abort=true>>">>]
<<else>>
She grins but shakes her head. "@@.npc_guard;Sorry my dear, but I don't think I have time this evening. You just head on in and enjoy the party for the both of us, alright?@@"<br>
<br>
[<<moveTo 'room_sex_club_entrance' 'Promise you will do what you can.' 60>>]
<</if>>
</div>/*#
#desc: suck guard off while she works the sex club door
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_guard.genitals != "vag" && !$scene.abort>>
<<applyExperience 'oral' $npc_guard.penis_size 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
Somewhat nervously, given <<=ps(setup.getNpcName('npc_guard', 'formal'))>> authoritative power and size, you back out of your offer, explaining that you just remembered some other business you had to take care of.<br>
<br>
<<=setup.getNpcName('npc_guard', 'formal')>> leers for a long moment, and then chuckles. "@@.npc_guard;Well aren't you a tease... well go on then, if you've got somewhere to be, get to it and stop winding me up with that hot bod of yours.@@"<br>
<br>
[<<moveTo 'room_sex_club_entrance' 'Nod and move on.' 60>>]
<<else>>
You kneel in the comfy position beneath the front desk
<<switch $npc_guard.genitals>>
<<case 'penis'>>
and address the glorious <<getWordPenis false>> before you.
<<case 'futa'>>
and plan out how to address the dual threat of <<getWordVagina>> and <<getWordPenis false>> before you.
<<case 'cybernetic'>>
and stare up at the bio-mechanical <<getWordPenis false>> in front of you.
<<case 'cyber-futa'>>
and tremble at the bio-mechanical dual threat of cybernetic <<getWordVagina>> and <<getWordPenis false>>...
<<case 'vag'>>
as <<=setup.getNpcName('npc_guard', 'formal')>> raises her strap-on out of the way to reveal her dripping <<getWordVagina>>.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
<<=ps(setup.getNpcName('npc_guard', 'formal'))>> strong hand laces through your hair and pulls you in to start
<<switch $npc_guard.genitals>>
<<case 'penis' 'cybernetic'>>
sucking
<<case 'vag'>>
licking
<<case 'futa' 'cyber-futa'>>
licking and sucking
<</switch>>
as you hear the sound of the door and her welcoming some more people to the club.<br>
<br>
"@@.npc_guard;Changing rooms are to the left, mind the dress code and enjoy your evening.@@"<br>
<br>
You turn your head to a better angle as you hear the customers thank her and move on, followed by looking down and whispering to you. "@@.npc_guard;Be careful down there — I'm still working, remember.@@"<br>
<br>
You nod and lean forward as the door opens again and you ponder your options.<br>
<br>
[<<moveTo 'event_sex_club_guard_help_3' 'Play it slow and tease her.' 1800 "<<set $scene.tease=true>>">>]<br>
[<<moveTo 'event_sex_club_guard_help_3' 'Race to the finish.' 300 "<<set $scene.tease=false>>">>]
<</if>>
</div>/*#
#desc: consequences for sucking guard
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_guard.genitals != "vag">>
<<if $scene.tease>>
<<applyExperience 'oral' $npc_guard.penis_size 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'oral' $npc_guard.penis_size 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if $scene.tease>>
<<set $npc_guard.flags.club_tease = true>>
<<else>>
<<set $npc_guard.flags.club_hard = true>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<if $scene.tease>>
Though you do not go all-out in your oral efforts... you instead opt for a teasing, tormenting pace that has <<=ps(setup.getNpcName('npc_guard', 'formal'))>> voice trembling slightly as she greets guests, her powerful thighs tensing with effort as you feel her focusing on her job despite your incessant distraction.<br>
<br>
Minutes tick by as
<<switch $npc_guard.genitals>>
<<case 'penis' 'cybernetic'>>
pre-cum runs
<<case 'vag'>>
feminine juices run
<<case 'futa' 'cyber-futa'>>
pre-cum and feminine juices run
<</switch>>
down your chin as you keep her on edge. Eyes closed you become lost in your self-directed task until you are suddenly dragged out from under the counter, your concentration broken as you are all but tossed into one of the changing rooms, looking up at <<=setup.getNpcName('npc_guard', 'formal')>> standing in the doorway.<br>
<br>
"@@.npc_guard;Alright, you tease@@" she states, voice soaked with lust as her breasts heave and her body glistens with sweat. "@@.npc_guard;You've been teasing me for half an hour... but I've got a few minutes of break now — so you're going to finish what you started you diabolic brat.@@"
<<else>>
Heedless of <<=ps(setup.getNpcName('npc_guard', 'formal'))>> request for caution you go to down with everything you've got,
<<switch $npc_guard.genitals>>
<<case 'penis' 'cybernetic'>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
gulping down
<<else>>
struggling with
<</if>>
her massive member and sucking eagerly.
<<else>>
kissing your way up and down her massive member.
<</if>>
<<case 'vag'>>
pressing your face between her legs to lick eagerly as you nibble her clit.
<<case 'futa' 'cyber-futa'>>
fingering her snatch and then
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
gulping down
<<else>>
struggling with
<</if>>
her massive member and sucking eagerly.
<<else>>
kissing your way up and down her massive member.
<</if>>
<</switch>>
<</if>>
<br><br>
You lick your lips as you stare up at the muscle-goddess standing over you.<br>
<br>
<<if setup.getTotalValue("dominance") > 0>>
[<<moveTo 'event_sex_club_guard_help_4' 'Attempt to assert your dominance.' 60 "<<set $scene.dom=true>>">>]<br>
<</if>>
[<<moveTo 'event_sex_club_guard_help_4' 'Submit to the consequences of your actions.' 60 "<<set $scene.dom=false>>">>]
</div>/*#
#desc: sub/dom guard at club, finish fucked
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.dom || setup.getTotalValue("dominance") <= 15>>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_guard.penis_size 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<if $scene.dom && setup.getTotalValue("dominance") > 15>>
In the small dressing room you draw yourself to your full height and tell her to "@@.pc;Stop.@@" <<=setup.getNpcName("npc_guard","formal")>> pauses, her entire body tensing in position save for her
<<if $npc_guard.genitals == 'vag'>>
quivering quim.
<<else>>
twitching <<getWordPenis false>>.
<</if>>
<br><br>
Her voice is husky and strained a moment later when she finally speaks. "@@.npc_guard;On some level I know that I'm bigger, stronger than you... that I could easily slam you up against the wall and have my way with you... but when you speak to me in that voice, with that look in your eye...@@" she slides to her knees. "@@.npc_guard;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@"<br>
<br>
[<<moveTo 'event_sex_club_guard_help_5' 'Finish her off.' 60 "<<set $scene.action='oral'>>">>]<br>
<<if $npc_guard.genitals != 'vag'>>
[<<moveTo 'event_sex_club_guard_help_5' 'Jump on her cock and let her have you.' 60 "<<set $scene.action='sex'>>">>]<br>
<</if>>
[<<moveTo 'event_sex_club_guard_help_5' 'Send her back to work wanting.' 60 "<<set $scene.action='work'>>">>]
<<else>>
<<if $scene.dom>>
You attempt to assert dominance over the situation...
<<if setup.getTotalValue("dominance") > 10>>
but it causes <<=setup.getNpcName("npc_guard","formal")>> to falter only a moment before the force over her own personality pushes through.
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
but <<=setup.getNpcName("npc_guard","formal")>> barrels forward on the power of her own personality.
<<else>>
but your skills are so weak <<=setup.getNpcName("npc_guard","formal")>> doesn't even seem to notice.
<</if>>
<</if>>
"@@.npc_guard;Oh, you think you can dom me, you brat? No, I don't think so.@@"
<<else>>
You look up with submissive lust as <<=setup.getNpcName("npc_guard","formal")>> claims you.
<</if>>
<br><br>
<<=setup.getNpcName("npc_guard","formal")>> takes you hard, fast, and powerful, her
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
<<getWordPenis false>>
<<case 'vag'>>
strap-on
<<case 'cybernetic' 'cyber-futa'>>
cyber-cock
<</switch>>
slamming into <<if $player.body_ref.vagina && (!setup.getItemFromType("cage") || setup.isCage())>>both your holes<<else>>your rear<</if>> with enough force you almost worry for your pelvis, her strong arms wrapping around you as she lifts you into the air and presses you against a wall.<br>
<br>
<<if $scene.tease>>
"@@.npc_guard;That's right, give me that orgasm, you tease, and take it, take it!@@"
<<else>>
"@@.npc_guard;That's right, see how it feels! How would you do your job if someone was doing everything in the power to make you cum!?@@"
<</if>>
<br><br>
Your eyes roll back and you moan in orgasm as she keeps going, grunting like she was going for a deadlift PR as she takes her satisfaction, only setting you down after she is well and truly finished, standing over you in triumph as you gasp on the floor.<br>
<br>
"@@.npc_guard;Well, enjoy your evening... my break is about over and I should probably wipe up a bit so I'm not standing around with wet thighs all night.@@"<br>
<br>
Leaving you to catch your breath on the floor of the changing room she leaves to return to her post.<br>
<br>
[<<moveTo 'event_sex_club_change' 'Sit up.' 180>>]
<</if>>
</div>/*#
#desc: dom guard at club, finish her
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'oral'>>
<<playerOrgasm>>
<<if $npc_guard.genitals != "vag">>
<<applyExperience 'oral' $npc_guard.penis_size 'very' $SEEN_FRIEND>>
<</if>>
<<case 'sex'>>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_guard.penis_size 'very' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'oral'>>
You grin and lick your lips as you guide <<=setup.getNpcName("npc_guard","formal")>> to a seat and get back to work.<br>
<br>
In total control you stare up at her as she bites her lip and trembles while you finish her off,
<<switch $npc_guard.genitals>>
<<case 'penis' 'cybernetic'>>
lips lovingly running up and down her <<getWordPenis false>>
<<case 'vag'>>
tongue wending between her folds as you delicately hold her thighs apart
<<case 'futa' 'cyber-futa'>>
lips lovingly running up and down her <<getWordPenis false>> as you finger her tight, leaking <<getWordVagina>>
<</switch>>
and make her cum for you again and again.<br>
<br>
You hear a crack and look over to see that she's accidentally crushed part of the bench in her hand, but you press on, not stopping until your thirsts are quenched, and <<=setup.getNpcName("npc_guard","formal")>> is a quivering, drained mess.<br>
<br>
You lean back and lick your lips in satisfaction, only to be slightly surprised at the speed at which <<=setup.getNpcName("npc_guard","formal")>> recovers, somehow finding a second wind fast enough to hold the door for you to leave the changing room before she bows and, with only a hint of needing to lean against the counter for support, returns to her station.
<<case 'sex'>>
You grin and guide her down, rising over her glorious
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
<<getWordPenis false>>
<<case 'vag'>>
strap-on
<<case 'cybernetic' 'cyber-futa'>>
cyber-cock
<</switch>>
and testing her flexibility as you assume Amazon position.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> muscles prove as limber as they are sculpted and you ride her good, not stopping until the both of you have cum — her own climax coming with such force she almost throws you across the room, the two of you taking almost a minute to catch your breath before she somehow finds a second wind and pops back to her feet.<br>
<br>
"@@.npc_guard;Tough to return to work after something like THAT but... duty calls.@@" She states with a grin before sauntering back to her station where she subtly leans against the counter for support, proving that she isn't quite as superhuman as she was pretending.
<<case 'work'>>
You grin... and order her back to work — telling her to channel this desperation into "serving" customers.<br>
<br>
"@@.npc_guard;You evil...@@" She whispers before catching herself and bowing slightly and responding "@@.npc_guard;I mean, of course, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I'll... uh, get back to work, and you enjoy the rest of your evening.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo 'room_sex_club_entrance' 'Leave the changing room.' 60>>]
</div>/*#
#desc: set off alarm at work
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !(setup.checkTaskUntimedComplete("manager_morning_inspection_task") && ($now.getUTCHours() < 7 || $now.getUTCHours() == 7 && $now.getUTCMinutes() < 40))>>
<<removeTransitEvent 'company_lobby' 'guard_inspection_1'>>
<<set $randomEvents['transit']['company_lobby'].pushUnique({done : false, id : 'guard_inspection_1'})>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 300)>>
<<moveTo "company_lobby">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" "elite_guard" "elite_guard">>
<div id="invframe" class="scrolltext">
You walk into the lobby and a klaxon goes off. Multiple corporate security officers suddenly appearing around you.<br>
<br>
"@@.generic_male1;If you would come with us for a more thorough inspection?@@" One of the guards asks.<br>
<br>
"@@.generic_male2;Do not be alarmed, the company has increased security measures, this is all for your protection.@@"<br>
<br>
Outnumbered as you are, you don't see any choice but to obey... <<printThought "Besides, it's not like this is liable to even make the top ten of privacy invasions since I took this job...">><br>
<br>
[<<moveTo "event_guard_inspection_2" "Follow." 180>>]
</div>/*#
#desc: private security inspection at work
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Security Processing At Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/security_private.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
The guards lead you to a private screening room... where <<=setup.getNpcName("npc_guard","formal")>> greets you with a slight grin.<br>
<br>
"@@.npc_guard;Well, well... look who is causing trouble yet again...@@" she waves off the other guards, "@@.npc_guard;I've got this inspection, you can return to your posts.@@"<br>
<br>
The security officers nod and retreat, leaving you alone with <<=setup.getNpcName("npc_guard","formal")>> as she moves closer and has you put your hands against a wall.<br>
<br>
"@@.npc_guard;The new system IS a bit sensitive... but regulations are regulations... and the regs say I need to give you a THOROUGH inspection...@@" She moves behind you as she speaks, strong hands squeezing and groping their way down your chest as she grinds into you from behind.<br>
<br>
Her voice drops to just a whisper, her breath causing the hairs on the back of your neck to tingle and rise "@@.npc_guard;You up for a bit of "fun" before I send you back to work? @@"<br>
<br>
[<<moveTo "event_guard_inspection_3" "Yes..." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_guard_inspection_3" "You really should get to your office..." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: guard fucks you
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 9 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Private Security Processing At Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/security_private.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You moan an assent and <<=setup.getNpcName("npc_guard","formal")>> soon has you stripped naked and bent over a table, her
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
large, hard <<getWordPenis false>>
<<case 'cybernetic' 'cyber-futa'>>
cybernetic <<getWordPenis false>>
<<case 'vag'>>
large, corporate-issue double-ended strap
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
giving you a "deep" inspection. "@@.npc_guard;Gotta make sure you aren't smuggling anything in here,@@" she grunts as she plumbs your depths and you moan, "@@.npc_guard;This company works on all sorts of secret projects, and it's all of our duty to stay on guard against... espionage.@@"<br>
<br>
Distantly, you wonder how much of her words are an act for the camera... but you're more focused on just how good it feels as she re-arranges your insides. The hint of a smirk on her face, and the glitter in her eyes tells you she's enjoying things just as much... and you almost want to blush a little at the lusty look she scans over your naked body... and fucks you harder.<br>
<br>
<<if $fetish.daddy>>
[<<moveTo "event_guard_inspection_4" "Mommy..." 300>>]
<<else>>
[<<moveTo "event_guard_inspection_4" "Moan harder..." 300>>]
<</if>>
<<else>>
Even as your heart beats with excitement, you pant that you really need to get to work.<br>
<br>
"@@.npc_guard;Alright, you're clean,@@" <<=setup.getNpcName("npc_guard","formal")>> states as she gives you a hard slap on the ass. "@@.npc_guard;Hurry on up to your desk... and follow the rules, I've got my eye on you...@@"<br>
<br>
You nod and curtsy and then hurry out of the screening area and up to the elevator
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Head up to the office." 180>>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Head up to the office." 180>>]
<<default>>
ERROR: unexpected stage npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: guard climaxes in you
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Private Security Processing At Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/security_private.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_guard","formal"))>> radio chirps and she shoots back a quick. "@@.npc_guard;I'll be there in a few minutes, need to wrap up this one first.@@"<br>
<br>
She grins down at you as she increases her pace, "@@.npc_guard;Seems you aren't the only one run afoul of the new, tighter security measures... speaking of tight...@@"<br>
<br>
You gasp as it feels like she swells larger inside of you, her hips slamming into yours as she cums, hard, and you likewise.<br>
<br>
Your consciousness flickers for a moment at the power of the climax as she pulses with after-shocks and then slowly slides free to leave you panting... and then pick you up.<br>
<br>
[<<moveTo "event_guard_inspection_5" "Wait, what about my clothes?" 300>>]
</div>/*#
#desc: returned to manager
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_guard","npc_guard_security") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You shift slightly in <<=ps(setup.getNpcName("npc_guard","formal"))>> arms as she boards the elevator and you recover from your orgasm and look up quizzically.<br>
<br>
"@@.npc_guard;Regulation, in cases of full inspection we're required to deliver the employee directly to their owner for acknowledgement... and possibly disciplinary measures, but that second doesn't apply to you, since it was just a false alarm.@@"<br>
<br>
A moment later and the elevator opens on your floor, <<=setup.getNpcName("npc_guard","formal")>> not putting you down until you're in <<=ps(setup.getNpcName("npc_manager","formal"))>> office and your <<=setup.getNpcName("npc_manager","title")>> steps out.<br>
<br>
"@@.npc_manager;Problem?@@" <<=setup.getNpcName("npc_manager","formal")>> asks with a raised eyebrow.<br>
<br>
"@@.npc_guard;No problem, just a bit of a false alert on your employee here. I made sure everything was safe and am delivering her, per regulation.@@"<br>
<br>
"@@.npc_manager;I see that you are...@@" <<=setup.getNpcName("npc_manager","formal")>> with the slightest hint of a knowing smile, "@@.npc_manager;I will take it from here, thank you for attending to the matter.@@"<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> nods formally and departs... leaving you standing naked and exposed in front of <<=setup.getNpcName("npc_manager","formal")>>, her eyes scanning over your body.<br>
<br>
"@@.npc_manager;Well? What are you waiting for? You have a job to do, and it would seem that your "inspection" has already been attended to.@@" She pauses, the smile on her face blossoming further. "@@.npc_manager;Well done... attending to your coworker, but do take care in the future. The company's new security measures are nothing to toy with.@@"<br>
<br>
She returns to her inner office, leaving you to prepare for work.<br>
<br>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Dress and get to work." 180 "<<useClothSetPop 'tmp'>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Dress and get to work." 180 "<<useClothSetPop 'tmp'>>">>]
<<default>>
ERROR: unexpected stage npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
</div>/*#
#desc: post workout strip
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked")>>
<div id="invframe" class="scrolltext">
You motion towards the private showers and <<=setup.getNpcName("npc_guard","formal")>> grins, the two of you soon stripping out of your smelly gym clothes, toned bodies glistening, sweat already trickling down the sharp grooves between her sculpted muscles.<br>
<br>
She reaches for the water faucet.<br>
<br>
[<<moveTo "event_gym_guard_post_workout_sex_2" "It'd be a shame to let all that woman-sweat go to waste..." 300>>]<br>
[<<moveTo "event_gym_guard_post_workout_sex_3" "Scrubidy-scrub-scrub." 300>>]
</div>/*#
#desc: post workout sweat worship
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 13 'very' $SEEN_FRIEND>>
<<set $scene.sweat=true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked")>>
<div id="invframe" class="scrolltext">
You stay <<=ps(setup.getNpcName("npc_guard","formal"))>> hand before she can turn on the shower, meeting her gaze and then bringing your lips to her arm to softly lick at her sweat.<br>
<br>
"@@.npc_guard;Needing to recover electrolytes, hmm?@@" She says with a smile as she slowly flexes her arm, drawing you closer as you work your way up her forearm, swelled biceps, and then find your face nuzzled in her armpit, her Amazonian smell like something straight out of the jungle, thick, and heavy and strong and richly feminine.<br>
<br>
You moan and pull back to catch your breath, but she's already turning to offer the other side of her body as you resume you thirsty licking, tracing every perfect muscle with your tongue as you move up her other arm and then across her chest.<br>
<br>
Neither of you say a word as you worshipfully lick and massage her perfect body, marveling at the subtle differences in taste between her thin arm sweat, her heady armpits, the somehow even more intense flavour trapped under her large breasts... and then the perfect platter that is running your lips between every chiselled muscle of her abs.<br>
<br>
You're about to go even lower only for her to gently pull you back to your feet, you share a kiss, her strong arms so protectively powerful as they wrap around your slight frame. "@@.npc_guard;Maybe later... right now I need to feel some warm water on these sore muscles...@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_guard","formal")>>,@@" you reflexively reply as you reach for the knob.<br>
<br>
"@@.npc_guard;So formal! You can call me <<=setup.getNpcName("npc_guard","first")>>, if you want...@@"<br>
<br>
[<<moveTo "event_gym_guard_post_workout_sex_3" 'Of course... <<=setup.getNpcName("npc_guard","formal")>>.' 300 "<<set $scene.title=true>>">>]<br>
[<<moveTo "event_gym_guard_post_workout_sex_3" 'Yes, <<=setup.getNpcName("npc_guard","first")>>.' 300 "<<set $scene.title=false>>">>]
</div>/*#
#desc: post workout scrub
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 13 'very' $SEEN_FRIEND>>
<<include "cleanPlayer">>
<<set _cage_id = setup.getItemFromType('cage')>>
<<if _cage_id>>
<<changeItemStatus _cage_id 'cumsoaked' '["remove"]'>>
<<changeItemStatus _cage_id 'dirty' '["remove"]'>>
<<changeItemStatus _cage_id 'piss' '["remove"]'>>
<<changeItemStatus _cage_id 'sweaty' '["remove"]'>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.sweat>>
<<if $scene.title>>
"@@.pc;Of course... <<=setup.getNpcName("npc_guard","formal")>>.@@" You reply as you turn on the water, the private shower instantly getting steamy.<br>
<br>
Just before she disappears into the mists <<=setup.getNpcName("npc_guard","formal")>> smiles in amusement, "@@.npc_guard;you really are just a perfect subby thing.@@"
<<else>>
"@@.pc;Yes, <<=setup.getNpcName("npc_guard","first")>>.@@" You reply as you turn on the water, the private shower instantly getting steamy.
<</if>>
<<else>>
She turns the dial to hot and the private shower is soon thick with steam.
<</if>>
<br><br>
Between the suds of the soap and the steam of the shower you're cleaning more by feel than sight... but that just means you make sure to be EXTRA thorough in scrubbing ever millimetre of the sculpted muscle-goddess in front of you.<br>
<br>
She hums contentedly as you work your way down from her shoulders to her ankles, before she squats down just far enough for you to massage her scalp through her hair.<br>
<br>
You start to attend to yourself as she rinses off... only for her to snatch the soap out of your hand and push you up against the wall.<br>
<br>
"@@.npc_guard;Spread 'em, <<if $fetish.sissy>>sissy<<else>>girl<</if>>@@" she whispers as you find yourself bracing against the wall as the water showers down, her hands squeezing and scrubbing their way over your body in a mix of wash and massage.<br>
<br>
As she rinses you off she presses into you from behind, her breasts all but pinning you to the wall and you melt, literally sliding to the floor as your legs practically dissolve under you.<br>
<br>
"@@.npc_guard;You alright?@@" She asks, looming above you, glistening and wet, the haze of the mist giving her an even more ethereal quality as she offers you a hand.<br>
<br>
[<<moveTo "event_gym_guard_post_workout_sex_4" 'Step on me...' 300>>]<br>
[<<moveTo "event_gym_guard_post_workout_sex_5" 'Come up to kneeling, you have an additional area to "clean."' 300>>]<br>
[<<moveTo "event_gym_guard_post_workout_sex_6" 'You just slipped, is all.' 300>>]
</div>/*#
#desc: post workout foot
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 13 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked")>>
<div id="invframe" class="scrolltext">
You look up at <<=setup.getNpcName("npc_guard","formal")>> and whisper for her to step on you.<br>
<br>
Your voice somehow loud enough to be heard over the still-flowing water she grins and obliges, first pushing your chest to the floor, then holding your head down with one foot while you worshipfully clean the other.<br>
<br>
You switch off back and forth — throwing in one of your famous foot massages, to boot but eventually end up on your back, staring up at her
<<switch $npc_guard.genitals>>
<<case 'penis'>>
glorious girl-cock
<<case 'futa'>>
hard girl-cock rising to reveal the wet cunny behind.
<<case 'cybernetic'>>
her cybernetic crotch cannon.
<<case 'cyber-futa'>>
her iron-straight crotch cannon above a biomechanical pussy.
<<case 'vag'>>
her wet, muscular <<getWordVagina>>.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
[<<moveTo "event_gym_guard_post_workout_sex_5" 'Rise to your knees, you have an additional area to "clean."' 300>>]<br>
[<<moveTo "event_gym_guard_post_workout_sex_6" 'You just slipped, is all.' 300>>]
</div>/*#
#desc: post workout oral
#status: FINISHED 0.8.3.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_guard.genitals != "vag">>
<<applyExperience 'oral' $npc_guard.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked")>>
<div id="invframe" class="scrolltext">
You rise to your knees to put your face right where it belongs —
<<if $npc_guard.genitals != "vag">>
with your mouth wrapped around <<=ps(setup.getNpcName("npc_guard","formal"))>> <<getWordPenis false>>.
<<else>>
lips wrapped around <<=ps(setup.getNpcName("npc_guard","formal"))>> clit.
<</if>>
<<switch $npc_guard.genitals>>
<<case 'penis'>>
Her cock is as strong and perfect as she is and you moan submissively as you give it your all, giving your throat as much of a work-out as the rest of your body had earlier.<br>
<br>
She lets you do all the work, just grinning down as you suck and lick, the warm water showering down to wash away your drool as you bring her to a shuddering climax, her testicles tightening hard as she <<if $fetish.cum>>swells your cheeks with a large, thick and creamy load<<else>>politely redirects her load down to swirl down the drain<</if>>.
<<case 'futa'>>
Her cock is as strong and perfect as she is and you moan submissively as you give it your all, giving your throat as much of a work-out as the rest of your body had earlier. As if that wasn't enough, there's the treasured hole tucked behind, and you lick from one to the other, running your tongue between her sweet, delicious folds and then up her firm rod before deepthroating like a champ and reversing the process.<br>
<br>
You can feel her getting close as you switch to sucking deep and fingering her with the other hand, her orgasm coming swift and strong as you feel like she might well crush your fingers all while she <<if $fetish.cum>>swells your cheeks with a large, thick and creamy load<<else>>politely redirects her load down to swirl down the drain<</if>>.
<<case 'cybernetic'>>
Her cybernetic cock is like none you've had before — a faint metallic taste and a unique texture that has it sliding down your throat like a piston in a perfectly bored shaft.<br>
<br>
She lets you do all the work, just grinning down as you suck and lick, the warm water showering down to wash away your drool as you bring her to a shuddering climax. You can feel her literal steel balls <<if $fetish.cum>>churn as they pump out their load, her flavour as unique as her cock was<<else>>churn... yet they produce nothing, instead recycling back in on themselves as you pull away and catch your breath<</if>>.
<<case 'cyber-futa'>>
Her cybernetic cock is like none you've had before — a faint metallic taste and a unique texture that has it sliding down your throat like a piston in a perfectly bored shaft. As if that wasn't enough, there's the treasured hole tucked behind, irising open in invitation for your literal whole hand to thrust and explore, tightening around your wrist like a cuff as you suck and thrust.<br>
<br>
Her orgasm is as unique as her genitals, <<if $fetish.cum>>the artificial cum as heavenly in flavour as it is copious in quantity<<else>>her orgasm utterly dry<</if>> before her cock telescopes down and she seals up.
<<case 'vag'>>
As you suckle on her delicious engorged clit your fingers reach up and in, curling towards her g-spot as you kiss her folds.<br>
<br>
Whether from the workout or the shower before, she's already close and it doesn't take long before her delicious juices are gushing down your chin to be washed away by the still-raining water, the spasms of her orgasm so strong she almost crushes your fingers, not letting go of her grip until her tidal waves of pleasure have subsided and her vaginal walls relax in satisfaction.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
[<<moveTo "event_gym_guard_post_workout_sex_6" 'Continue.' 180>>]
</div>/*#
#desc: post workout finish
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_guard.flags.post_workout_sex = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_guard","formal")>> helps you to your feet for a final rinse and then it's time to get dressed and go your separate ways as she puts her clothes on in record time and zips out of the locker-room.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Lockerroom">><<set $scene.return_makeuproom="event_gym_admin_showers_postmakeup">><<set $scene.makeuproom_image="./images/locations/gym_lockers.png">><<set $scene.return_makeuproomtext="Return to the lockerroom.">>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency()>>
[<<moveTo 'room_citymap' 'Leave the gym.' 180>>]<br>
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
[@@.link_locked;Go out without makeup? That's not properly prepared to leave!@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_too_fem">>
[@@.link_locked;This makeup is maybe a bit too much...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
[@@.link_locked;My makeup is a mess, I need to deal with this before I leave!@@]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the locker-room.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: run into janitor in hallway
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'janitor_elevator_adv' _nextDate>>
<</if>>
<<set $player.location to "Floor 147 Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You're stepping out onto your floor when you spot a familiar janitor wrapping up some work. You aren't certain if they noticed you... but you definitely notice them bending over to pick up their toolbox to reveal a whale-tail of a frilly thong peeking up from their pants.<br>
<br>
<<printThought "Hmm...">><br>
<br>
Before you can think of something to say they've hurried away up the hallway.<br>
<br>
<<printThought "I wonder what else they've been up to since we met?">><br>
<br>
[<<moveTo "room_office_sissy_secretary" 'Continue on to your office.' 30>>]
</div>/*#
#desc: run into janitor in elevator
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You step into the elevator to leave the office to find <<=setup.getNpcName('npc_janitor', 'first')>> riding down as well.<br>
<br>
They eye your outfit and
<<if setup.checkItemWorn("manager_skirt_copy") && setup.checkItemWorn("manager_shirt_copy")>>
they do a double take. "@@.npc_janitor;Oh, it's you again... I mean, the outfit is great but, well... imitation isn't the real thing...@@"
<<elseif setup.checkVisibleClothingTag('dominant') > 40>>
blush slightly. "@@.npc_janitor;You're no <<=setup.getNpcName('npc_manager', 'formal')>>... but I guess you like dressing that role.@@"
<<else>>
sniff. "@@.npc_janitor;You were a lot more impressive the other time... I guess you were just playing a role, disappointing.@@"
<</if>>
<br><br>
<<if setup.getTotalValue("dominance") >= 5>>
[<<moveTo "event_janitor_elevator_1_2_dom" "Show them that dominance is about more than an outfit." 300 "<<set $scene.dom=true>>">>]<br>
<<else>>
[@@.link_locked;You lack the dominance to assert yourself, even in the face of an obvious sub.@@]<br>
<</if>>
[<<moveTo "event_janitor_elevator_1_2" "Ignore their teasing and continue the ride in silence." 300>>]
[<<moveTo "event_janitor_elevator_1_2_abort" "Turn away, you aren't interested." 300>>]
</div>/*#
#desc: ignore janitor in elevator
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 5, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'janitor_elevator_adv_2' _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You pointedly ignore the janitor as you wait to reach the lobby and quickly continue on your way.<br>
<br>
They seem to take the far from subtle hint that your prior interaction was a one-time thing, and that you are not interested in anything further.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: dominate janitor in elevator
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.dom>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'janitor_elevator_adv_2' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You turn to <<=setup.getNpcName('npc_janitor', 'first')>> and unleash
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
the full and unstoppable force
<<else>>
the full force
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
the growing power
<<else>>
the barely existant power
<</if>>
<</if>>
of your dominance, as you plant your hand on the wall behind them and partially pin them in place to explain that clothing is just part of the equation... after all, they're a cute subby sub even in this drab work uniform. You smile and playfully flick the collar of their uniform as you add "@@.pc;though, I suspect... a bit less dull underneath?@@"<br>
<br>
From brat to sub in moments, <<=setup.getNpcName('npc_janitor', 'first')>> trembles in front of your gaze, submissively lowering themselves, only to be interrupted by the ding of their floor. They almost fall, but instead manage to slip past your arm, scooping up their tools and darting for the exit, laughing nervously. "@@.npc_janitor;Haha, no, I'm a <<if $npc_janitor.fem>>top<<else>>boy<</if>>, that thing for the robot was just a game, I'm not, like... into that sort of thing, or anything... haha...@@"<br>
<br>
While blushing an increasingly adorable shade of red they turn away and dash up the hallway as you smile.<br>
<br>
<<printThought "Hmm, there might be an opportunity here... I'll have to keep an eye out for them in the future...">><br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: do not dominate janitor in elevator
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'janitor_elevator_adv' _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You ignore <<=ps(setup.getNpcName('npc_janitor', 'first'))>> taunt and they disembark a couple floors later, leaving you to continue down to the lobby on your own.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: dominate janitor in elevator
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You step into the elevator... to find <<=setup.getNpcName('npc_janitor', 'first')>> riding down as well. They blush nervously, clearly wanting to say something, yet unable to even make eye contact with you.<br>
<br>
[<<moveTo "event_janitor_elevator_2_2" "Divert to the utilities floor for some one on one domination..." 300 "<<set $scene.dom=true>>">>]<br>
[<<moveTo "event_janitor_elevator_2_2" "Ride down in silence." 300 "<<set $scene.dom=false>>">>]
</div>/*#
#desc: dominate janitor in elevator
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.dom>>
<<set $player.location to "Floor 13: Utilities">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.dom>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<<else>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_janitor")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.dom>>
You glance at your blushing elevator-companion... and tap the button to divert the elevator to the 13th floor.<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> gulps and looks at you, seeming about to say something only to be dumbstruck by your dominant grin.<br>
<br>
The elevator door opens and you step out, extending a hand back for <<=setup.getNpcName('npc_janitor', 'first')>> as you ask if they are ready to start their training?<br>
<br>
There's a heartbeat of silence... and then <<=setup.getNpcName('npc_janitor', 'first')>> takes your hand with an eager "@@.npc_janitor;<<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@"<br>
<br>
You smile. Barely has the elevator door closed behind and <<=setup.getNpcName('npc_janitor', 'first')>> is on their knees. "@@.npc_janitor;I... I'm ready to be trained only... I don't know what I should be...@@"<br>
<br>
You attempt to embody <<=ps(setup.getNpcName('npc_manager', 'formal'))>> calm confidence as you look down at <<=setup.getNpcName('npc_janitor', 'first')>>, so brimming with possibilities...<br>
<br>
[<<moveTo "event_janitor_elevator_2_3" "Re-introducing submission." 300>>]
<<else>>
The elevator ride passes in tense silence as <<=setup.getNpcName('npc_janitor', 'first')>> seems unable to muster the courage to say anything before you step out and walk across the lobby.<br>
<br>
<<include "printHomeShortcutChoice">>
<</if>>
</div>/*#
#desc: declare janitor submission
#status: RELEASED 0.9.3.0
#ignore_spell: osha
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'task_janitor_training'>>
<<addNpcTheme 'npc_primrose' 'research' 'theme_primrose_janitor'
0
'theme_primrose_janitor_1'
false
>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You caress your eager student's face as they nuzzle into your hand and look up at you. "@@.npc_janitor;Would you train me? I... I want to be a submissive public-use slut... but I've never had the courage... except with you...@@"<br>
<br>
In a sudden burst of motion you move from stroking <<=ps(setup.getNpcName('npc_janitor', 'first'))>> face to holding their hair, pulling them slightly closer as you lean in and whisper that, if you're going to train them, you're going to do it properly, which means they need to be ready to eagerly obey and learn... and if they're willing to commit to that, you'll commit to making them fully OSHA compliant: Obedient, Submissive, Horny, and Airtight.<br>
<br>
You loosen your grasp and, after a moment to catch their breath, <<=setup.getNpcName('npc_janitor', 'first')>> drops to the floor, kissing your heels and promising that they'll try to "@@.npc_janitor;do whatever you say.@@"<br>
<br>
You smile, mind already dancing with lesson-plans as you tell them to think about exactly what sort of slave they want to be... and to stay ready for your summons.<br>
<br>
"@@.npc_janitor;I can't wait!@@" They reply with excitement... before almost jumping out of their shoes as the elevator dings.<br>
<br>
You lead the way back to the elevator, past another maintenance worker, who only slightly raises an eyebrow at your out of place presence on the floor.<br>
<br>
<<printThought "Yes... <<=setup.getNpcName('npc_janitor', 'first')>> is going to need a lot of sculpting, I'll keep track of things on my phone as we work through lessons...">><br>
<br>
Back in the relative privacy of the elevator <<=setup.getNpcName('npc_janitor', 'first')>> is again back to bashfully only looking at you through the mirror... though their excitement remains plain on their face.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: visit janitor after work
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.visitJanitor = true>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You summon <<=setup.getNpcName('npc_janitor', 'first')>> to the 13th floor.<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> greets you
<<if State.hasPlayed("event_janitor_training_primrose_4")>>
with a curtsy, then drops to
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> knees, the perfect picture of
<<switch $npc_janitor.flags.choice>>
<<case ''>>
trainee
<<case "femboy">>
femboy
<<case "fuckboy">>
fuckboy
<<case "tomboy">>
tomboy
<<case 'forcefemme'>>
feminine
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
submission.
<<elseif State.hasPlayed("event_janitor_training_barista_2") && State.hasPlayed("event_janitor_training_cook_2") && State.hasPlayed("event_janitor_training_service_2") && State.hasPlayed("event_janitor_training_submission_5")>>
obediently on <<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> knees.<br>
<br>
<<printThought "Looks like status is progressing well...">>
<<elseif State.hasPlayed("event_janitor_training_barista_2") || State.hasPlayed("event_janitor_training_cook_2") || State.hasPlayed("event_janitor_training_service_2") || State.hasPlayed("event_janitor_training_submission_5")>>
with a curtsy.<br>
<br>
<<printThought "It's a start, but more training would seem to be in order...">>
<<else>>
with a smile.<br>
<br>
<<printThought "Looks like we've got quite a bit of training to do...">>
<</if>>
<br><br>
<<include "janitorVisiting">>
</div><<if $scene.janitorStatus>>
[@@.link_locked;You already asked <<=setup.getNpcName('npc_janitor', 'first')>> about their progress today.@@]<br>
<<else>>
[<<moveTo "event_janitor_training_checkin_1" 'Ask about their progress.' 180>>]<br>
<</if>>
<<if State.hasPlayed("theme_primrose_janitor_1")>>
<<if State.hasPlayed("event_janitor_training_primrose_4")>>
[@@.link_locked;You have already taken <<=setup.getNpcName('npc_janitor', 'first')>> to <<=setup.getNpcName("npc_primrose", "formal")>>.@@]<br>
<<elseif $npc_primrose.flags.evil == 1>>
[@@.link_locked;Taking <<=setup.getNpcName('npc_janitor', 'first')>> to see <<=setup.getNpcName("npc_primrose", "formal")>> would not be prudent in the latter's current evil state.@@]<br>
<<else>>
[<<moveTo "event_janitor_training_primrose_1" 'Take <<=setup.getNpcName("npc_janitor", "first")>> to see <<=setup.getNpcName("npc_primrose", "formal")>>.' 180>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_hucow_twig_talk_1")>>
<<if !State.hasPlayed("event_janitor_help_1")>>
[<<moveTo "event_janitor_help_1" 'Ask for help with <<=ps(setup.getNpcName("npc_work_doctor", "formal"))>> gas scheme.' 300>>]<br>
<<elseif State.hasPlayed("event_janitor_helped_1")>>
[@@.link_locked;<<=setup.getNpcName('npc_janitor', 'first')>> has dealt with <<=ps(setup.getNpcName("npc_work_doctor", "formal"))>> gas scheme.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_janitor_visit_1_abort" 'Call it a day.' 300>>]/*#
#desc: finish with janitor
#status: RELEASED 0.9.3.0
#ignore_spell: hvac,'ll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png">>
<div id="invframe" class="scrolltext">
You dismiss <<=setup.getNpcName('npc_janitor', 'first')>> and consider your next move.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: ask for help with twig
#status: RELEASED 0.9.3.0
#ignore_spell: hvac,'ll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 5, 0, 0)>>
<<addWorkEvent "janitor_sabotage" _nextDate>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_janitor', 'first')>> about <<=setup.getNpcName('npc_work_doctor', 'formal')>> having tapped into the building's HVAC system.<br>
<br>
"@@.npc_janitor;What?! That's not to code!@@" <<=setup.getNpcName('npc_janitor', 'first')>> replies incredulously.<br>
<br>
You ask if <<=setup.getNpcName('npc_janitor', 'first')>> could fix things?<br>
<br>
"@@.npc_janitor;Can? Now that I know about something like that it's my professional obligation!@@" <<=setup.getNpcName('npc_janitor', 'first')>> replies with principled fervor.<br>
<br>
You remind <<=setup.getNpcName('npc_janitor', 'first')>> to be careful, that they do not want to get in trouble with <<=setup.getNpcName('npc_work_doctor', 'formal')>>.<br>
<br>
"@@.npc_janitor;Right, right, I've heard the rumors, you know... but I also know a <<guy npc_work_doctor>> is hardly going to notice the staff just doing some maintenance work, just a matter of sealing off the splice, <<he npc_work_doctor>>'ll never know anything changed... well, unless <<he npc_work_doctor>> tries to deploy things, of course.@@"<br>
<br>
You thank <<=setup.getNpcName('npc_janitor', 'first')>> for the assistance.<br>
<br>
<<printThought "That's one obstacle dealt with...">><br>
<br>
<<include "janitorVisiting">>
</div>/*#
#desc: npc_janitor reports on sabotaging npc_work_doctor
#status: RELEASED 0.9.3.0
#ignore_spell: hvac
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You get an email, from <<=setup.getNpcName('npc_janitor', 'first')>>, of all people.<br>
<br>
You open it to find a cc'd company maintenance report, it would seem that <<=setup.getNpcName('npc_janitor', 'first')>> has successfully enacted a full inspection and repair of the HVAC system in one of the company's R&D labs.<br>
<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
<<printThought "That would have helped with <<=setup.getNpcName('npc_work_doctor', 'formal')>>... though I guess it's good to close that gap in safety.">>
<<else>>
<<printThought "That should put the proverbial... and literal damper on <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> schemes...">>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ask janitor status
#status: RELEASED 0.9.3.0
#ignore_spell: horniner
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.janitorStatus=true>>
<<if State.hasPlayed("event_janitor_training_barista_2") && State.hasPlayed("event_janitor_training_cook_2") && State.hasPlayed("event_janitor_training_service_2") && State.hasPlayed("event_janitor_training_submission_5") && !$currentTasks.hasOwnProperty("task_janitor_primrose")>>
<<addTaskById 'task_janitor_primrose'>>
<</if>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_janitor', 'first')>> how they feel about <<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<<if !State.hasPlayed("event_janitor_training_brat_3") && State.hasPlayed("event_janitor_training_submission_9")>>
training and they get a mischievous grin.<br>
<br>
"@@.npc_janitor;Training? Were you training me? I guess I didn't really notice.@@"<br>
<br>
<<printThought "This brat streak needs to be dealt with if I'm going to make real progress...">><br>
<br>
[<<moveTo "event_janitor_training_brat_1" 'Remind <<=setup.getNpcName("npc_janitor", "first")>> of their place.' 180>>]<br>
<<elseif State.hasPlayed("event_janitor_graduation_7") && !State.hasPlayed("event_janitor_graduation_post_1")>>
training?<br>
<br>
Your first encounter since <<=ps(setup.getNpcName('npc_janitor', 'first'))>> graduation,
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
eyes twinkle with excitement...<br>
<br>
[<<moveTo "event_janitor_graduation_post_1" 'Find out what happened after you sold <<=setup.getNpcName("npc_janitor", "first")>> off.' 180>>]
<<elseif State.hasPlayed("event_janitor_training_barista_2") && State.hasPlayed("event_janitor_training_cook_2") && State.hasPlayed("event_janitor_training_service_2") && State.hasPlayed("event_janitor_training_submission_5")>>
training and they smile.<br>
<br>
<<if State.hasPlayed("event_janitor_graduation_7")>>
<<=setup.getNpcName('npc_janitor', 'first')>> beams. "@@.npc_janitor;Your training has been amazing! My life is just... so much better, thank you again!@@"
<<elseif State.hasPlayed("event_janitor_training_2_forcefem_4") || State.hasPlayed("event_janitor_training_2_femboy_4") || State.hasPlayed("event_janitor_training_2_tomboy_4") || State.hasPlayed("event_janitor_training_2_fuckboy_4")>>
thus far.<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> grins. "@@.npc_janitor;Pretty good, I think I've really learned how to be the
<<switch $npc_janitor.flags.choice>>
<<case "femboy">>
femboy
<<case "fuckboy">>
fuckboy
<<case "tomboy">>
tomboy
<<case 'forcefemme'>>
good girl
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
I always wanted to be...@@"<br>
<br>
You can tell <<=setup.getNpcName('npc_janitor', 'first')>> speaks truth, and you have a sudden urge to celebrate graduation... perhaps at <<printShopName 'sex_club'>>?<br>
<br>
[<<moveTo "event_janitor_graduation_invite_1" 'Invite <<=setup.getNpcName("npc_janitor", "first")>> to join you at <<printShopName "sex_club">>.' 180>>]<br>
<<elseif $currentTasks.hasOwnProperty("task_janitor_primrose") && $currentTasks.task_janitor_primrose.finished>>
<<=setup.getNpcName('npc_janitor', 'first')>> beams. "@@.npc_janitor;Your training has been amazing... and I'm excited by the thought of taking it out of the building, as it were...@@"<br>
<br>
<<printThought "That's right, I was going to show them around the gym a bit...">>
<<else>>
"@@.npc_janitor;It's been going so well... I feel like I'm ready to take things to a nother level... but I don't know exactly what only... well I heard about a scientist in the R&D division that's maybe a bit like me? I wonder if they could help give me clarity...@@"<br>
<br>
<<if $npc_primrose.flags.evil == 1>>
<<printThought "Hmm, going to need to do something about <<=setup.getNpcName('npc_primrose', 'formal')>> first, wouldn't want that level of evil in the room with my trainee.">>
<<elseif $currentTasks.hasOwnProperty("task_janitor_primrose")>>
<<printThought "Right, I talked to <<=setup.getNpcName('npc_primrose', 'formal')>> about this...">>
<<elseif State.hasPlayed("theme_primrose_janitor_1")>>
<<printThought "That definitely sounds like <<=setup.getNpcName('npc_primrose', 'formal')>>... maybe it's time to talk to <<=setup.getNpcName('npc_primrose', 'formal')>> again?">>
<<else>>
<<if $npc_primrose.profile>>
<<printThought "That sounds like it could be <<=setup.getNpcName('npc_primrose', 'formal')>>... maybe I should talk to <<him npc_primrose>>?">>
<<else>>
<<printThought "That doesn't sound like <<=setup.getNpcName('npc_work_doctor', 'formal')>>... maybe if I spent more time in R&D I might meet whoever <<=setup.getNpcName('npc_janitor', 'formal')>> heard of?">>
<</if>>
<</if>>
<</if>>
<br><br>
<<include "janitorVisiting">>
<<else>>
training thus far.<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> thinks for a moment.<br>
<br>
<<if State.hasPlayed("event_janitor_training_barista_2")>>
"@@.npc_janitor;Spending time with <<=setup.getNpcName("npc_barista","nickname")>> has me feeling, like... soooo much horniner. She really represents #goals in a lot of ways, and it's really helped me embrace my inner slut.@@"
<<else>>
"@@.npc_janitor;I'm having fun... but I @@"<br>
<br>
<<printThought "I should introduce <<=setup.getNpcName('npc_janitor','first')>> to <<=setup.getNpcName('npc_barista','nickname')>>? They're the biggest slut I know...">>
<</if>>
<br><br>
<<if State.hasPlayed("event_janitor_training_cook_2")>>
"@@.npc_janitor;Meeting <<=setup.getNpcName('npc_cook','first')>> really expanded my world, pun intended, and I can't stop thinking about cock... it's great!@@"
<<else>>
"@@.npc_janitor;I feel like I need to expand my experience... somehow. I guess that's a bit ambiguous but it's just a feeling I have.@@"<br>
<br>
<<if $npc_cook.flags.porn.oral_stage >= 4>>
<<printThought "Hmm... I wonder if <<=setup.getNpcName('npc_cook','first')>> and <<his npc_cook>> massive <<getWordPenis 'npc_cook'>> is what <<=setup.getNpcName('npc_janitor','first')>> needs?">>
<<else>>
<<printThought "Hmm... I'll have to keep an eye out for something...">> <<hint $options "Try spending more time with <<=setup.getNpcName('npc_cook','first')>>.">>
<</if>>
<</if>>
<br><br>
<<if State.hasPlayed("event_janitor_training_service_2")>>
"@@.npc_janitor;Serving under your desk really helped focus me... and I'd love to do it again sometime!@@"
<<else>>
"@@.npc_janitor;I wish I could spend more time with you at work. I know we work in different departments... but there has to be a way I could help you out!@@"
<</if>>
<br><br>
<<if State.hasPlayed("event_janitor_training_submission_5")>>
"@@.npc_janitor;Training with <<=setup.getNpcName("npc_harassment_assist","first")>> really helped, ever since you directed me on that forklift I just... always feel submissive. Like, even when you're not here to remind me in person I'm thinking about how best to show my service.@@"
<<else>>
<<set $npc_janitor.flags.subTrainingUnlock = true>>
"@@.npc_janitor;You're lessons have been good... but I don't really feel that submissive when I'm outside your presence...@@"<br>
<br>
<<if State.hasPlayed("event_janitor_training_submission_1_intro_1")>>
You assure <<=setup.getNpcName('npc_janitor', 'first')>> that you have something in the works and <<he npc_janitor>> just needs to be patient.<br>
<br>
<<printThought "<<=setup.getNpcName('npc_harassment_assist','first')>> said they were setting something up, probably just taking a little time.">>
<<else>>
<<printThought "Perhaps I should talk to <<=setup.getNpcName('npc_harassment_assist','first')>>? They're kind of the expert on submission...">>
<</if>>
<</if>>
<br><br>
<<include "janitorVisiting">>
<</if>>
</div>/*#
#desc: npc_janitor training with npc_barista intro
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista") setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You message <<=setup.getNpcName('npc_janitor', 'first')>> to come to Cafe 52. "@@.npc_janitor;Be right there, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" Comes the reply, and a couple moments later you're introducing your "trainee" to your enthusiastically bimbo friend.<br>
<br>
"@@.npc_barista;Hiya, <<=setup.getNpcName('npc_janitor', 'first')>>!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> says in greeting, her breasts bobbing in enthusiasm. "@@.npc_barista;<<=$player.first_name>> said you were, like... learning to be a bigger, better slut?@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> blushes slightly, hesitating for a moment before nodding.<br>
<br>
"@@.npc_barista;Well you came to the right place! But the first thing you need to learn is to ditch that bashfulness. It's cute, sure, but you're a slut! You should be proud of it, proud... and horny! Always horny... tell me, is that cute little booty of yours plugged?@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> blushes harder as they nod.<br>
<br>
"@@.npc_barista;Good! But, like, again, you shouldn't be acting all, like, ashamed? You should have responded "YES! My hole is stuffed so that I'm always ready to be spread and bred!" Now go on, repeat after me! It's time for a crash course on how to quickly, like communicate just how big of slut you are!@@"<br>
<br>
[<<moveTo "event_janitor_training_barista_2" "Watch the bimbo queen teach her stuff..." 1000 "<<set $scene.join=false>>">>]<br>
[<<moveTo "event_janitor_training_barista_2" "You're a slut too, join in on the lesson!" 1000 "<<set $scene.join=true>>">>]
</div>/*#
#desc: npc_janitor training with npc_barista
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.join>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'terrible' $SEEN_FRIEND>>
<</if>>
<<if setup.checkTaskUntimedComplete("task_janitor_training")>>
<<completeTask 'task_janitor_training' $now true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista") setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
<<if $scene.join>>
You join your student in learning at the proverbial feet of the bimbo queen, your enthusiasm seeming to help melt some of <<=ps(setup.getNpcName('npc_janitor', 'first'))>> nervous hesitancy as <<=setup.getNpcName('npc_barista', 'nickname')>> leads the two of you for the "essentials" of bimbo manners.
<<else>>
You watch on in amusement as <<=setup.getNpcName('npc_barista', 'nickname')>> leads <<=setup.getNpcName('npc_janitor', 'first')>> through the "essential" lessons in "bimbo manners." <<=setup.getNpcName('npc_janitor', 'first')>> remains a bit hesitant throughout... though anyone would look hesitant next to <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> fuck-me exuberance.
<</if>>
She may act the air-head but but <<=setup.getNpcName('npc_barista', 'nickname')>> is quite the skilled teacher, and your charge a quick learner, and you can see the excitement twinkling in <<=ps(setup.getNpcName('npc_janitor', 'first'))>> eyes as
<<if $scene.join>>
you both practice how to put your bodies on display, keep your minds
<<else>>
they practice how to put their body on display, keep their mind
<</if>>
constantly in the gutter, and show full enthusiasm in begging to be fucked.<br>
<br>
An on-call buzz comes in for <<=setup.getNpcName('npc_janitor', 'first')>> just as <<=setup.getNpcName('npc_barista', 'nickname')>> is starting to get redundant and <<=setup.getNpcName('npc_janitor', 'first')>> thanks the both of you for the lesson. With a skip in their step, and a seductive sway in their hips, <<=setup.getNpcName('npc_janitor', 'first')>> heads back to work.<br>
<br>
"@@.npc_barista;That was, like, fun!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> remarks with a cheery grin... "@@.npc_barista;but, like, I've got some closing up to do, myself.@@"<br>
<br>
You thank her again for the help and head out of Coffee Shop 52.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: janitor brat training
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
Your eyes narrow as you brandish a remote and administer a shock to your slave.<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> gasps,
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
eyes fluttering in pleasure.<br>
<br>
"@@.pc;Training?@@" you admonish, "@@.pc;your training is constant and universal, starting with the plug in your rear everything you do is to mold yourself to my designs...@@"<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> shudders as you move closer...<br>
<br>
[<<moveTo "event_janitor_training_brat_2" 'Give <<=setup.getNpcName("npc_janitor","first")>> a harsh reminder.' 180 "<<set $scene.harsh=true>>">>]<br>
[<<moveTo "event_janitor_training_brat_2" 'Gently, but firmly, correct <<=setup.getNpcName("npc_janitor","first")>>.' 180 "<<set $scene.harsh=false>>">>]
</div>/*#
#desc: janitor brat training, punish
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_janitor","first")>> shrinks slightly in the face of your dominant displeasure as you
<<if $scene.harsh>>
grab
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
by the hair and whisper in
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
ear.<br>
<br>
"@@.pc;I've been trying to be gentle... but bad
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<boy npc_janitor>>s
<<case "tomboy" 'forcefemme'>>
girls
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> need to be put in line...@@"<br>
<br>
Still holding
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
by the hair, you drag <<=setup.getNpcName("npc_janitor","first")>> over to a table and grab some handy rope to tie
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
in place.
<<else>>
caress
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
face and whisper in
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
ear.<br>
<br>
"@@.pc;Come on, you know you love your training, and you know it's happening all the time. Every morning you slip that plug into your rear you're becoming more of my good <<switch $npc_janitor.flags.choice>><<case "femboy" "fuckboy" ''>><<boy npc_janitor>><<case "tomboy" 'forcefemme'>>girl<</switch>>.@@"<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> shudders submissively at your touch and you lead
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
over to a table and start tying
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
down.
<</if>>
<br><br>
[<<moveTo "event_janitor_training_brat_3" 'Time to tease.' 300>>]
</div>/*#
#desc: janitor brat training, edge
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
With <<=setup.getNpcName("npc_janitor","first")>> successfully ad-hoc secured you unzip the crotch of
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
company issue janitorial jump-suit and peel back the not-so-company-issued panties to reveal a hard<<if $fetish.cum>> and drippy<</if>> <<getWordMyPenis>>.<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> is flush with excitement as you begin to stroke and tease, needling away at their brattiness as you "review" <<=ps(setup.getNpcName("npc_janitor","first"))>> training and responsibilities.<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> squirms and moans as you tease and taunt, resistance ebbing and flowing as their excitement grows... only for you to pull your hand away and leave them quivering and clenching on the plug in their ass until they beg forgiveness and promise to be a
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
"@@.npc_janitor;good <<boy npc_janitor>>.@@"
<<case "tomboy" 'forcefemme'>>
"@@.npc_janitor;good girl.@@"
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<br><br>
With each round of edging <<=ps(setup.getNpcName("npc_janitor","first"))>> resistance further melts as their backtalk is replaced by moaning obedience and desperate begging for you to grant them the orgasm they are so, so close to...<br>
<br>
<<printThought "The perfect opportunity to cement things...">><br>
<br>
[<<moveTo "event_janitor_training_brat_4" 'Let <<=setup.getNpcName("npc_janitor","first")>> cum and then lock that cock.' 180 "<<set $scene.cage=true>>">>]
[<<moveTo "event_janitor_training_brat_4" 'Ruin <<=ps(setup.getNpcName("npc_janitor","first"))>> orgasm.' 180 "<<set $scene.cage=false>>">>]
</div>/*#
#desc: janitor brat training, chastity
#status: RELEASED 0.9.3.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_janitor.flags.cage = $scene.cage>>
<<if setup.checkTaskUntimedComplete("task_janitor_training")>>
<<completeTask 'task_janitor_training' $now true>>
<</if>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
<<if $scene.cage>>
<<=setup.getNpcName("npc_janitor","first")>> is too distracted by arousal to realise what's happening as you squeeze tighter and stroke harder and easily push <<=setup.getNpcName("npc_janitor","first")>> over the edge into an ecstatic <<if $fetish.cum>>explosive <</if>>orgasm.<br>
<br>
Before <<=setup.getNpcName("npc_janitor","first")>> can react you have dipped in to
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
secret stash of toys to lock a chastity cage onto
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
softening member.<br>
<br>
"@@.npc_janitor;What?@@" <<=setup.getNpcName("npc_janitor","first")>> as the lock clicks closed.<br>
<br>
You smile and pocket the key, <<if ['obedient','forced','strict'].includes($player.sec_style.submission.chastity)>>feeling a moment of displaced deja vu as you explain<<else>>explaining<</if>> that if <<=setup.getNpcName("npc_janitor","first")>> wants more training so bad, well... THIS is training.<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> trembles, staring down and touching
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>self
<<case "tomboy" 'forcefemme'>>
herself
<</switch>>
after you have released
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
other restraints.<br>
<br>
"@@.npc_janitor;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" <<=setup.getNpcName("npc_janitor","first")>> finally whispers and you grin, giving
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
a congratulatory kiss on the forehead before heading for the elevator.
<<else>>
You watch <<=setup.getNpcName("npc_janitor","first")>> like a hawk, waiting for the exact moment when squinted eyes, a quivering lip and tightening balls tell you that orgasm is inevitable to pull your hand away and stop all stimulation.<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> moans, and then whimpers in painful pleasure as
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<he npc_janitor>>
<<case "tomboy" 'forcefemme'>>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<<if $fetish.cum>>
spurts with a hands free ruined orgasm.
<<else>>
shudders in dry, ruined orgasm.
<</if>>
<br><br>
<<=setup.getNpcName("npc_janitor","first")>> pants as you gently tease
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
now hyper-sensitive member, forcing out another two ruins that leave
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<</switch>> a quivering mess before you finally reach to release
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
restraints.<br>
<br>
"@@.pc;How is that for training?@@" You ask with a sly grin as you help your sub back to
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
feet.<br>
<br>
"@@.npc_janitor;Th—thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" <<=setup.getNpcName("npc_janitor","first")>> pants, looking up at you with a fresh glint of submission in
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
eyes. You smile in triumph, giving
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
a congratulatory kiss on the forehead before heading for the elevator.
<</if>>
<br><br>
<<include afterWorkVisiting>>
</div>/*#
#desc: ask cook for help with janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $npc_cook.flags.porn.finale || ($player.flags.porn.genre.anal && $player.flags.porn.genre.oral)>>
<<set _background = "./images/locations/company_canteen.png">>
<<else>>
<<set _background = "./images/locations/storage.png">>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _background setup.charImage("npc_cook") setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You message <<=setup.getNpcName('npc_janitor', 'first')>> to meet you in the canteen where <<he npc_janitor>> joins you and <<=setup.getNpcName('npc_cook', 'first')>> in the supply room.<br>
<br>
<<=setup.getNpcName('npc_cook', 'first')>> grins at <<=setup.getNpcName('npc_janitor', 'first')>> in greeting, you can tell that the two of them have at least passing familiarity, but that <<=setup.getNpcName('npc_janitor', 'first')>> clearly does not know the chef's very not-so-small secret as your trainee returns the greeting and then glances at you in slight confusion.<br>
<br>
You adopt a confident, dominant smile as you motion for <<=setup.getNpcName('npc_cook', 'first')>> to continue, the cook lifting <<his npc_cook>> <<if $npc_cook.fem>>skirt<<else>>kilt<</if>> to reveal <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horse-<</if>>cock as a light of recognition... and intimidation, blossoms over <<=ps(setup.getNpcName('npc_janitor', 'first'))>> face.<br>
<br>
[<<moveTo "event_janitor_training_cook_2" "Time for a lesson in cock worship..." 300>>]
</div>/*#
#desc: finish penis lesson
#status: RELEASED 0.9.3.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkTaskUntimedComplete("task_janitor_training")>>
<<completeTask 'task_janitor_training' $now true>>
<</if>>
<</if>>
<<if $npc_cook.flags.porn.finale || ($player.flags.porn.genre.anal && $player.flags.porn.genre.oral)>>
<<set _background = "./images/locations/company_canteen.png">>
<<else>>
<<set _background = "./images/locations/storage.png">>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _background setup.charImage("npc_cook") setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_cook', 'first')>> stands at attention<<if $fetish.cum>>, <<his npc_cook>> massive <<if $fetish.bestiality_soft>>horse-<</if>>cock dripping<</if>> as you take <<him npc_cook>> in hand and motion <<=setup.getNpcName('npc_janitor', 'first')>> over.<br>
<br>
"@@.pc;Service is a submissive's duty,@@" you explain as you helpfully guide <<=setup.getNpcName('npc_janitor', 'first')>> to drop to <<his npc_janitor>> knees where <<he npc_janitor>> stares transfixed at the massive <<getWordPenis "npc_cook">> before <<him npc_janitor>>.<br>
<br>
You guide one of <<=ps(setup.getNpcName('npc_janitor', 'first'))>> hands up to <<=ps(setup.getNpcName('npc_cook', 'first'))>> cock, and then transfer your grip, holding <<=setup.getNpcName('npc_janitor', 'first')>> by the hair as you steer <<him npc_janitor>> forward to start sucking, whispering as you do.<br>
<br>
"@@.pc;That's it, maintain eye contact and suck... but carefully, this is as much performance as it is pleasure, show how much you want it... NEED it, that you live to be on your knees... serving...@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> does <<his npc_janitor>> best, struggling with <<=ps(setup.getNpcName('npc_cook', 'first'))>> size, but staying the course and remaining focused, kissing and sucking <<his npc_janitor>> way up and down the massive shaft, passion unmistakable in <<his npc_janitor>> voice as things get closer and closer until
<<if $fetish.cum>>
<<=setup.getNpcName('npc_cook', 'first')>> cums, thick, ropey blasts of <<getWordCum>> filling <<=ps(setup.getNpcName('npc_janitor', 'first'))>> mouth and dribbling down <<his npc_janitor>> chin, the janitor doing <<his npc_janitor>> best to swallow before being left to clean up the messy load.
<<else>>
<<=setup.getNpcName('npc_cook', 'first')>> climaxes with a satisfied grunt.
<</if>>
<br><br>
<<=setup.getNpcName('npc_cook', 'first')>> steps away and fixes <<his npc_cook>> <<if $npc_cook.fem>>skirt<<else>>kilt<</if>>, muttering a hurried "@@.npc_cook;thanks,@@" before rushing back to work, leaving you to help the janitor back to <<his npc_janitor>> feet as your student-sub catches <<his npc_janitor>> breath.<br>
<br>
"@@.npc_janitor;Th-thank you for the lesson,@@" <<=setup.getNpcName('npc_janitor', 'first')>> stammers with a curtsy before dashing off as well.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_lunchbreak' 'Return to your desk.' 180>>]
</div>/*#
#desc: train npc_janitor at your desk
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.janitorService = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You summon <<=setup.getNpcName('npc_janitor', 'first')>> <<if !$scene.first>>once more <</if>>and direct <<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> to a position beneath your desk, <<if $player.work.chair.bondage>>forgoing your normal bondage configuration to leave your hands free to position<</if>> <<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> face to
<<if setup.checkItemTypeWorn("cage")>>
polish <<if setup.isCage()>>your cage <<if $player.body_ref.vagina>>and eat you out<</if>><<else>>the front of your belt<</if>>
<<else>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
alternate suck you off and eat you out
<<elseif $player.body_ref.penis>>
suck you off
<<else>>
eat your out
<</if>>
<</if>>
as you work.<br>
<br>
Your shift proceeds mostly in
<<if $scene.first>>
silence, as you occasionally give <<=setup.getNpcName('npc_janitor', 'first')>> a tip or encouragement, but primarily leave them to embrace the moment, and the value that is quiet service.
<<else>>
silence as <<=setup.getNpcName('npc_janitor', 'first')>> shows off just how swiftly <<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<he npc_janitor>>
<<case "tomboy" 'forcefemme'>>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> has taken to your lessons, the occasional soft moan from between your legs showing that you are not the only one enjoying this "service."
<</if>><br>
<br>
[<<moveTo "event_janitor_training_service_2" "Continue." 4000>>]
</div>/*#
#desc: train npc_janitor at your desk
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("cage") || $player.body_ref.vagina>>
<<playerOrgasm>>
<</if>>
<<if setup.checkTaskUntimedComplete("task_janitor_training")>>
<<completeTask 'task_janitor_training' $now true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
After over an hour of diligent practice <<=setup.getNpcName('npc_janitor', 'first')>> looks up and meekly explains that they do have some additional duties to resolve before end of day.<br>
<br>
<<if !setup.checkItemTypeWorn("cage") || $player.body_ref.vagina && setup.isCage()>>
With a nod, and a firm grip <<=ps(setup.getNpcName('npc_janitor', 'first'))>> hair you instruct them to redouble efforts and finish you off, concluding with them <<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction>>gulping down your <<if $player.body_ref.cumProduction > 1>>massive <</if>>load and<</if>> panting with exertion as you slide back
<<else>>
You slide your chair back
<</if>>
and let <<=setup.getNpcName('npc_janitor', 'first')>> back to their feet, thanking them for their service before sending them back to serve the company directly.<br>
<br>
[<<moveTo $scene.workEventReturn "Finish off your shift." 60>>]
</div>/*#
#desc: no time to train npc_janitor at your desk
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.janitorServiceFail = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You attempt to summon <<=setup.getNpcName('npc_janitor', 'first')>>, but get a very apologetic message back that <<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<he npc_janitor>>
<<case "tomboy" 'forcefemme'>>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
is knee-deep in an emergency "leak" situation and is in no shape to serve you in person.<br>
<br>
[<<moveTo $scene.janitorReturn "Do something else." 60>>]
</div>/*#
#desc: ask for help with janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 2, 12, 30)>>
<<addWorkEvent 'janitor_submission_training' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You send <<=setup.getNpcName("npc_harassment_assist","first")>> a message and ask if they might be able to help you with training <<=setup.getNpcName("npc_janitor","first")>>?<br>
<br>
"@@.npc_harassment_assist;I love to help, let me just bring up their records...@@" a couple of minutes pass before <<=setup.getNpcName("npc_harassment_assist","first")>> sends another reply.<br>
<br>
"@@.npc_harassment_assist;Oh, you really know how to attract them! <<=setup.getNpcName("npc_janitor","first")>> looks positively adorable with potential! I think I have just the idea to raise them to new glories of submission, just... give me a few days to arrange things and I'll be in touch.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60>>]
</div>/*#
#desc: invite
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You get a message from <<=setup.getNpcName("npc_harassment_assist","first")>>, they've made arrangements for <<=ps(setup.getNpcName("npc_janitor","first"))>> training and want you to meet them... in what looks like one of the building's loading docks.<br>
<br>
[<<moveTo "event_janitor_training_submission_2" "Head down." 300>>]
</div>/*#
#desc: change for npc_janitor submission training
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItemSet 'fetish_osha'>>
<</if>>
<<set $player.location = "Company Loading Dock">>
<<initRoom>>
<<include playerMenu>>
<<if setup.checkItemSetWorn("fetish_osha")>>
<<moveTo "event_janitor_training_submission_3">>
<</if>>
<<createAdvBGR "./images/locations/loading_bay.png" setup.charImage("npc_harassment_assist") setup.charImage("npc_janitor")>>
<div id="invframe" class="scrolltext">
You ride the elevator down and navigate to the proper loading dock where <<=setup.getNpcName("npc_harassment_assist","first")>> and <<=setup.getNpcName("npc_janitor","first")>> are already waiting.<br>
<br>
<<=setup.getNpcName("npc_harassment_assist","first")>> is their usual smiling self as they lead the way into a changing room. "@@.npc_harassment_assist;So this exercise will be teaching an reinforcing the universal utility of submission but first off, we're going to be working with some heavy machinery, so you two need to be dressed for the occasion!@@"<br>
<br>
<<=setup.getNpcName("npc_harassment_assist","first")>> opens a pair of lockers to reveal what can only be described as "hi-vis fetish fashion" attire.<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> is surprised, but also excited as
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" ''>>
<<he npc_janitor>>
<<case "tomboy" "forcefemme">>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> glance at you for direction...<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_janitor_training_submission_3" "Nod and get changed." 180 '<<wearItemSet "fetish_osha">>'>>]
<<else>>
<<hint $options "Set the example and change clothing via the inventory.">>
<</if>>
</div>/*#
#desc: npc_janitor submission training explanation
#status: RELEASED 0.9.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Company Loading Dock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/loading_bay.png" setup.charImage("npc_harassment_assist") setup.charImage("npc_janitor","npc_janitor_osha")>>
<div id="invframe" class="scrolltext">
"@@.npc_harassment_assist;Excellently Obedient, that's one letter down.@@" <<=setup.getNpcName("npc_harassment_assist","first")>> states as they help cinch <<=ps(setup.getNpcName("npc_janitor","first"))>> corset all the way down. "@@.npc_harassment_assist;NOW you're dressed for the occasion. <<=$player.first_name>>, if you would lead your submissive after me?@@"<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> falls in behind as <<=setup.getNpcName("npc_harassment_assist","first")>> leads the way out of the changing room and through several stacked rows of pallets.<br>
<br>
"@@.npc_harassment_assist;Submission can take many forms, but at its core it should be an exchange of power built on trust. The domme trusts their submissive to obey, while the submissive trusts their domme to use this power appropriately. In so doing, both benefit. Boiled down to these fundamentals one can gain benefit, and build trust, across all manner of activities. Today we'll be taking what is a familiar act and, well...@@"<br>
<br>
<<=setup.getNpcName("npc_harassment_assist","first")>> comes to a stop next to a forklift where she hands you a tinted gas-mask. A glance inside shows that a "@@.npc_harassment_assist;If you would finish equipping your submissive?@@"<br>
<br>
[<<moveTo "event_janitor_training_submission_4" "Safety first!" 300>>]
</div>/*#
#desc: npc_janitor finish equipping
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Company Loading Dock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/loading_bay.png" setup.charImage("npc_harassment_assist") setup.charImage("npc_janitor","npc_janitor_osha_mask")>>
<div id="invframe" class="scrolltext">
You help <<=setup.getNpcName("npc_janitor","first")>> buckle the mask over
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<his npc_janitor>>
<<case "tomboy" "forcefemme">>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> face and secure the ear-muffs to render
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" ''>>
<<him npc_janitor>>
<<case "tomboy" "forcefemme">>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
deaf, and then <<=setup.getNpcName("npc_harassment_assist","first")>> hands you a dildo, the short pecker sliding into the front of the gas-mask. "@@.npc_harassment_assist;Wonderfully submissive,@@" <<=setup.getNpcName("npc_harassment_assist","first")>> continues as you thread the gag into position.<br>
<br>
"@@.npc_harassment_assist;I hardly have to check but proper procedure is proper procedure,@@" <<=setup.getNpcName("npc_harassment_assist","first")>> notes as they grope <<=setup.getNpcName("npc_janitor","first")>>, eliciting a shuddering moan from your sub. "@@.npc_harassment_assist;horniness confirmed, now, if you would instruct your sub up into the vehicle?@@"<br>
<br>
[<<moveTo "event_janitor_training_submission_5" 'Direct <<=setup.getNpcName("npc_janitor","first")>> into the forklift.' >>]
</div>/*#
#desc: change for npc_janitor submission training
#status: RELEASED 0.9.3.0
#ignore_spell: iso9001,osha
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Company Loading Dock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/loading_bay.png" setup.charImage("npc_harassment_assist") setup.charImage("npc_janitor","npc_janitor_osha_mask")>>
<div id="invframe" class="scrolltext">
You lend <<=setup.getNpcName("npc_janitor","first")>> a hand as <<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<he npc_janitor>>
<<case "tomboy" "forcefemme">>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> balances on
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<his npc_janitor>>
<<case "tomboy" "forcefemme">>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> steep heels to step up into the forklift... where a larger <<if $npc_janitor.fem>>pair of dildos rise<<else>>dildo rises<</if>> up from the seat.<br>
<br>
"@@.npc_harassment_assist;The final part of OSHA compliance: Obedient, Submissive, Horny... and Airtight. Make sure the ISO9001 stability <<if $npc_janitor.fem>>inserts are<<else>>insert is<</if>> fully seated and then sit up straight and place both hands on the steering controls.@@"<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> lowers
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<his npc_janitor>>
<<case "tomboy" "forcefemme">>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
weight with a gag-muffled moan and then you finish securing
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<his npc_janitor>>
<<case "tomboy" "forcefemme">>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> in position: a tightly buckled 5-point harness and quick-release cuffs attached to the steering column by short chains.<br>
<br>
"@@.npc_harassment_assist;Employee/sub is confirmed safely secured and ready to work, their equipment having them safe, secure, focused entirely on your directions, and capable of being rewarded as appropriate.@@" <<=setup.getNpcName("npc_harassment_assist","first")>> notes before leading you a short distance away to an observation platform. "@@.npc_harassment_assist;From here you can see the entire loading area, and so can direct your submissive. Their perspective is more limited, and thus will need to trust and rely on you. The task is to take the three pallets by the loading dock, and place them on the opposite side of the bay.@@"<br>
<br>
You take a moment to orient yourself. The way things are setup the path from the loading dock to the destination makes for a bit of a maze-like navigation puzzle through stacked pallets, an arrangement purposefully designed so that someone "on the floor" would be almost certain to get lost.<br>
<br>
You adjust your microphone and order <<=setup.getNpcName("npc_janitor","first")>> to power up the forklift.<br>
<br>
[<<moveTo "event_janitor_training_submission_6" 'Focus and steer <<=setup.getNpcName("npc_janitor","first")>> carefully.' 1800>>]<br>
[<<moveTo "event_janitor_training_submission_gameover" "YOLO, speed through things." 1 "<<set $scene.fail=1>>">>]
</div>/*#
#desc: npc_janitor submission training arousal
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Company Loading Dock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/loading_bay.png" setup.charImage("npc_harassment_assist") setup.charImage("npc_janitor","npc_janitor_osha_mask")>>
<div id="invframe" class="scrolltext">
Acting as navigator, you gently talk <<=setup.getNpcName("npc_janitor","first")>> through driving the forklift to the loading bay and then back through the maze to unload the pallet on the opposite side of the room.<br>
<br>
"@@.npc_harassment_assist;One down, two to go.@@" <<=setup.getNpcName("npc_harassment_assist","first")>> notes, and you relay a congratulations to your sub, noting their growing arousal on a nearby monitor as you direct <<=setup.getNpcName("npc_janitor","first")>> to attend to the second pallet.<br>
<br>
By the time <<=setup.getNpcName("npc_janitor","first")>> has finished the second pallet their arousal is near max, their heart-rate elevated and all indicators pointing to them being deep in sub space.<br>
<br>
<<=setup.getNpcName("npc_harassment_assist","first")>> motions to remote controls for <<=ps(setup.getNpcName("npc_janitor","first"))>> lower <<if $npc_janitor.fem>>dildos<<else>>dildo<</if>>.<br>
<br>
[<<moveTo "event_janitor_training_submission_7" 'Reward your sub and then continue on.' 1800>>]<br>
[<<moveTo "event_janitor_training_submission_gameover" "The job is not yet complete. Deny your sub and keep working." 1 "<<set $scene.fail=2>>">>]
</div>/*#
#desc: npc_janitor submission training blind
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Company Loading Dock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/loading_bay.png" setup.charImage("npc_harassment_assist") setup.charImage("npc_janitor","npc_janitor_osha_mask")>>
<div id="invframe" class="scrolltext">
You order <<=setup.getNpcName("npc_janitor","first")>> to a stop and then, while whispering congratulations and encouragement into the mic, you activate the vibrators and guide them to a brief <<if $npc_janitor.fem>>orgasm<<else>>analgasm<</if>>.<br>
<br>
Safely secured in their seat, <<=setup.getNpcName("npc_janitor","first")>> can neither escape the stimulation, or be in any danger as they shudder in their bonds.
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<his npc_janitor>>
<<case "tomboy" "forcefemme">>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
arousal still substantial, but back under control, <<=setup.getNpcName("npc_janitor","first")>> resumes driving the forklift to pickup the final pallet.<br>
<br>
"@@.npc_harassment_assist;And now, for the final display of trust...@@" <<=setup.getNpcName("npc_harassment_assist","first")>> states as she flicks a control that disables <<=ps(setup.getNpcName("npc_janitor","first"))>> vision.<br>
<br>
[<<moveTo "event_janitor_training_submission_8" 'Slowly, sensuously guide <<=setup.getNpcName("npc_janitor","first")>> through this final challenge.' 1800>>]<br>
[<<moveTo "event_janitor_training_submission_gameover" "The job is not yet complete. Deny your sub and keep working." 1 "<<set $scene.fail=3>>">>]
</div>/*#
#desc: npc_janitor submission training success
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Company Loading Dock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/loading_bay.png" setup.charImage("npc_harassment_assist") setup.charImage("npc_janitor","npc_janitor_osha_mask")>>
<div id="invframe" class="scrolltext">
You take a deep breath and slowly guide <<=setup.getNpcName("npc_janitor","first")>> back through the maze. Though
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<he npc_janitor>>
<<case "tomboy" "forcefemme">>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> remains gagged, you can feel the intense trust and devotion as
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<he npc_janitor>>
<<case "tomboy" "forcefemme">>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> responds to your every command almost as if you were at the controls.<br>
<br>
The final pallet safely lowered into position, you activate the reward circuits once again as you and <<=setup.getNpcName("npc_harassment_assist","first")>> head back down to the forklift.<br>
<br>
[<<moveTo "event_janitor_training_submission_9" 'Continue.' 300>>]
</div>/*#
#desc: npc_janitor submission training success
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'dominance' 'dominance_other' 'dom_janitor'>>
<<if setup.checkTaskUntimedComplete("task_janitor_training")>>
<<completeTask 'task_janitor_training' $now true>>
<</if>>
<</if>>
<<set $player.location = "Company Loading Dock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/loading_bay.png" setup.charImage("npc_harassment_assist") setup.charImage("npc_janitor","npc_janitor_osha")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_janitor","first")>> all but stumbles out of the forklift, face flush with arousal, lips still parted from the gag as
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<he npc_janitor>>
<<case "tomboy" "forcefemme">>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> gazes up at you.<br>
<br>
"@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>,@@" <<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<he npc_janitor>>
<<case "tomboy" "forcefemme">>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>> whispers as you congratulate her once again with a kiss as <<=setup.getNpcName("npc_harassment_assist","first")>> watches on with pride.<br>
<br>
"@@.npc_harassment_assist;Very good,@@" <<=setup.getNpcName("npc_harassment_assist","first")>> states after <<=setup.getNpcName("npc_janitor","first")>> has had a chance to recover in your arms. "@@.npc_harassment_assist;I hope this lesson in submission proves useful... and now, well... it is time for all of us to show corporate obedience and get back to our duties...@@"<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> still leaning against you, you lead the way back to the changing room where you help them get back into their normal attire as <<=setup.getNpcName("npc_janitor","first")>> finishes the journey back from subspace to normal reality.<br>
<br>
As <<=setup.getNpcName("npc_janitor","first")>> reaches for
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<his npc_janitor>>
<<case "tomboy" "forcefemme">>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
plug you gently guide their hand away, grinning as you explain that it's now part of <<=ps(setup.getNpcName("npc_janitor","first"))>> uniform to keep them properly... motivated.<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> shudders and nods. "@@.npc_janitor;yes, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>...@@"<br>
<br>
You grin... congratulating <<=setup.getNpcName("npc_janitor","first")>> once more and sending
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<him npc_janitor>>
<<case "tomboy" "forcefemme">>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
back to work.<br>
<br>
[<<moveTo $scene.workEventReturn "Change and get back to your desk." 60 "<<useClothSetPop 'tmp'>><<completeWorkEvent>>">>]
</div>/*#
#desc: game over drone choice
#status: RELEASED 0.9.3.0
#ignore_spell: jenga,tm
#*/
<<set $gameOver = 'forklift'>>
<<set $player.location to "">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/scenes/gameover_forklift.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.fail>>
<<case 1>>
Due to your sloppy, rushed direction <<=setup.getNpcName("npc_janitor","first")>> takes a wrong turn and bumps
<<case 2>>
Distracted by arousal, <<=setup.getNpcName("npc_janitor","first")>> weaves the forklift unsteadily and bumps
<<case 3>>
You try to go too quick, and <<=setup.getNpcName("npc_janitor","first")>> fails to respond fast enough to a turn command, instead crashing
<<default>>
ERROR: unexpected scene.fail <<=$scene.fail>>
<</switch>>
into one of the stacked shelves that makes up the maze. You watch in slow motion horror as <<=setup.getNpcName("npc_janitor","first")>> obediently drives the forklift into a stack of crates... that tumble over in a cascade somewhere between failing at jenga and dominoes...<br>
<br>
An alarm sounds as you helplessly watch the calamity spread, maintenance workers and guards appearing in equal numbers to swarm you and <<=setup.getNpcName("npc_janitor","first")>>.<br>
<br>
<<=setup.getNpcName("npc_janitor","first")>> cries in despair as both
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "femboy" "">>
<<his npc_janitor>>
<<case "tomboy" "forcefemme">>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
forklift certifications are revoked. Despite not having such certification, this punishment still hits devastatingly hard, and you find yourself in a daze as you are each bound, restrained, and punished.<br>
<br>
After a suitable period of penance and reprograming you and <<=setup.getNpcName("npc_janitor","first")>> emerge to take on your new, more appropriate roles as company-owned "Fuck-Lift(tm)" morale improving sexbots in service to more competent staff.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
</div>/*#
#desc: talk to primrose about janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_janitor_training_barista_2") && State.hasPlayed("event_janitor_training_cook_2") && State.hasPlayed("event_janitor_training_service_2") && State.hasPlayed("event_janitor_training_submission_5") && !$currentTasks.hasOwnProperty("task_janitor_primrose")>>
<<addTaskById 'task_janitor_primrose'>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You bring up the janitor you've been instructing recently, <<=setup.getNpcName('npc_primrose', 'formal')>> listens with obvious interest before making an excited proposal.<br>
<br>
"@@.npc_primrose;Oh, you really should bring them by the lab sometime! They sound just lovely and I would be overjoyed to help with their training!@@" <<=setup.getNpcName('npc_primrose', 'formal')>> sounds almost giddy at the idea, and you can see gears spinning. "@@.npc_primrose;Hmm... I guess I should prepare multiple routines for them to choose between... oh it's so fun helping a newbie find themselves!@@"<br>
<br>
<<if State.hasPlayed("event_janitor_training_barista_2") && State.hasPlayed("event_janitor_training_cook_2") && State.hasPlayed("event_janitor_training_service_2") && State.hasPlayed("event_janitor_training_submission_5")>>
<<printThought "Good thing I've already spent time training <<=setup.getNpcName('npc_janitor', 'first')>>, otherwise <<=setup.getNpcName('npc_primrose', 'formal')>> might be a bit much...">>
<<else>>
<<printThought "Hmm... probably best to spend more time rounding out <<=ps(setup.getNpcName('npc_janitor', 'first'))>> training before I introduce <<=setup.getNpcName('npc_janitor', 'first')>> to <<=setup.getNpcName('npc_primrose', 'formal')>> if I don't want to scare them off...">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: take janitor to primrose
#status: RELEASED 0.9.3.0
#ignore_spell: dieu
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty("task_janitor_primrose")>>
<<completeTask 'task_janitor_primrose' $now true>>
<</if>>
<</if>>
<<if State.hasPlayed("event_janitor_training_barista_2") && State.hasPlayed("event_janitor_training_cook_2") && State.hasPlayed("event_janitor_training_service_2") && State.hasPlayed("event_janitor_training_submission_5")>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<else>>
<<set $player.location to "Floor 13: Utilities">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_janitor_training_barista_2") && State.hasPlayed("event_janitor_training_cook_2") && State.hasPlayed("event_janitor_training_service_2") && State.hasPlayed("event_janitor_training_submission_5")>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_janitor") setup.getPrimroseImage("plug")>>
<<else>><<createAdvBGR "./images/locations/utilities.png" setup.charImage("npc_janitor")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_janitor_training_barista_2") && State.hasPlayed("event_janitor_training_cook_2") && State.hasPlayed("event_janitor_training_service_2") && State.hasPlayed("event_janitor_training_submission_5")>>
You lead <<=setup.getNpcName('npc_janitor', 'first')>> through the maze that is the path to <<=ps(setup.getNpcName('npc_primrose', 'formal'))>>. You can tell that <<=setup.getNpcName('npc_janitor', 'first')>> is a little nervous being this deep in the R&D department and you wonder what sort of stories <<he npc_janitor>>'s heard as <<he npc_janitor>> seems to being following you a little closer than usual.<br>
<br>
Whatever nervousness <<=setup.getNpcName('npc_janitor', 'first')>> harbours is utterly bowled over as you you enter <<=ps(setup.getNpcName('npc_primrose', 'formal'))>> and the excitable scientist enthusiastically greets <<his npc_primrose>> guest.<br>
<br>
"@@.npc_primrose;Mon dieu!@@" <<=setup.getNpcName('npc_primrose', 'formal')>> states in excitement "@@.npc_primrose;you are even cuter than surveillance footage— I mean, your employee profile implied!@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> blinks in surprise, but has no time to react as <<=setup.getNpcName('npc_primrose', 'formal')>> is already barrelling forward. "@@.npc_primrose;Ah! My manners, my name is <<=setup.getNpcName('npc_primrose', 'formal')>>... but you may call me <<=setup.getNpcName('npc_primrose', 'first')>>, please.@@" <<=setup.getNpcName('npc_primrose', 'first')>> winks playfully, but <<his npc_primrose>> expression is such that <<=setup.getNpcName('npc_janitor', 'first')>> isn't quite put at ease. "@@.npc_primrose;... as to your situation, well, I wasn't sure what you were aiming to become, so I came up with several, shall we say... self-study lesson plans...@@"<br>
<br>
<<=setup.getNpcName('npc_primrose', 'formal')>> leads the way over to the control panel for the training booth...<br>
<br>
[<<moveTo "event_janitor_training_primrose_2" 'See what <<=setup.getNpcName("npc_primrose","formal")>> has come up with.' 300>>]
<<else>>
You consider introducing <<=setup.getNpcName('npc_janitor', 'first')>> to <<=setup.getNpcName('npc_primrose', 'formal')>> but decide that it would be better to focus on a bit more "standard" training before executing such an escalation.<br>
<br>
<</if>>
</div>/*#
#desc: discuss janitor role
#status: RELEASED 0.9.3.0
#ignore_spell: twinky,3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_janitor") setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_primrose', 'formal')>> skips over a <<his npc_primrose>> workstation and angles a monitor to display a surprisingly realistic 3d mock-up of <<=setup.getNpcName('npc_janitor', 'first')>>.<br>
<br>
"@@.npc_primrose;So! I took the liberty of pulling your company records, and dipping into some surveillance, to create a more complete presentation... though I must say, you already are just such a snack, and you can clean and service me anytime you want...@@" <<=setup.getNpcName('npc_primrose', 'formal')>> makes eyes at <<=setup.getNpcName('npc_janitor', 'first')>>, the <<=ps(setup.getNpcName('npc_janitor', 'custom', 'janitor'))>> enthusiasm drawing <<=setup.getNpcName('npc_janitor', 'first')>> in, seeming to blast straight past any nerves as <<=setup.getNpcName('npc_janitor', 'first')>> watches in rapt attention.<br>
<br>
"@@.npc_primrose;So the first option would be to retain your masculinity, but go all in on the slutty and the subby or, as I like to call it, the fuckboy special!@@" <<=setup.getNpcName('npc_primrose', 'formal')>> explains, tapping a few buttons to replace <<=ps(setup.getNpcName('npc_janitor', 'first'))>> digital avatar's outfit with a tight tank and some even tighter jeans. "@@.npc_primrose;My program for this one emphasises putting yourself out there, lifting for aesthetics and really being a champ at going down and putting out.@@"<br>
<br>
You try to split your attention between the presentation and watching <<=ps(setup.getNpcName('npc_janitor', 'first'))>> reactions as <<=setup.getNpcName('npc_primrose', 'formal')>> moves on to the next option, <<=ps(setup.getNpcName('npc_janitor', 'first'))>> digital avatar changing over to a more gender-neutral emo outfit, consisting of thigh high socks, arm-warmers, a revealing, yet baggy top and a skirt... combined with a somewhat softer overall complexion. "@@.npc_primrose;Now we have the femboy, a personal favourite, and one perfect for those who want to embrace the best of both worlds, prioritising being an adorable cute bottom above all else.@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> is biting their lip in anticipation, glancing at you for a moment before eagerly looking back for <<=ps(setup.getNpcName('npc_primrose', 'formal'))>> next creation.<br>
<br>
"@@.npc_primrose;Finally, well... we come to full-on feminisation,@@" <<=setup.getNpcName('npc_primrose', 'formal')>> explains, the avatar now drawing inspiration from when you had <<=setup.getNpcName('npc_janitor', 'first')>> dress as a maid... though their simulated outfit is more pure femme than maid uniform. "@@.npc_primrose;This is for if you want to dive in... or maybe that's get pushed, into all things cute and girly.@@" <<=setup.getNpcName('npc_primrose', 'formal')>> beams with excitement, clearly enjoying having such an interested audience as <<he npc_primrose>> taps a button to show all three options on screen together. "@@.npc_primrose;So... which will it be? <<if $npc_janitor.fem>>Fuck-boy, femboy,<<else>>Tomboy<</if>> or force-femme? There are no wrong answers, it's all about finding the gender that works for YOU... I'm just here to lend a bit of a helping hand!@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> seems to be temporarily paralysed with indecision, eyes flitting back and forth as you try to figure out which one they're going to select...<br>
<br>
<<if $npc_janitor.fem>>
[<<moveTo "event_janitor_training_primrose_3" '<<=setup.getNpcName("npc_janitor","first")>> wants to fully embrace being a sexy, strong tomboy.' 600 "<<set $npc_janitor.flags.choice='tomboy'>>">>]<br>
<<else>>
[<<moveTo "event_janitor_training_primrose_3" '<<=setup.getNpcName("npc_janitor","first")>> may have experimented, but in their heart they dream of being a masculine, if twinky, fuck-boy...' 600 "<<set $npc_janitor.flags.choice='fuckboy'>>">>]<br>
[<<moveTo "event_janitor_training_primrose_3" 'With their cute looks <<=setup.getNpcName("npc_janitor","first")>> would be a perfect femboy...' 600 "<<set $npc_janitor.flags.choice='femboy'>>">>]<br>
<</if>>
[<<moveTo "event_janitor_training_primrose_3" '<<=setup.getNpcName("npc_janitor","first")>> is meant to be a girl... she just needs some help...' 600 "<<set $npc_janitor.flags.choice='forcefemme'>>">>]
</div>/*#
#desc: choose janitor role
#status: RELEASED 0.9.3.0
#ignore_spell: femmed
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_janitor") setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You don't have to say anything, merely watch as <<=setup.getNpcName('npc_janitor', 'first')>> confidently declares that
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy">>
he wants to be a full-on fuckboy.
<<case "femboy">>
he wants to be a cute femboy.
<<case "tomboy">>
she wants to be a sexy strong tomboy.
<<case 'forcefemme'>>
she wants to be force-femmed.
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<br><br>
"@@.npc_primrose;What joy!@@" <<=setup.getNpcName('npc_primrose', 'formal')>> states with a smile as <<he npc_primrose>> hands <<=setup.getNpcName('npc_janitor', 'first')>> a VR helmet and motions for <<him npc_janitor>> to lay back in <<=ps(setup.getNpcName('npc_primrose', 'formal'))>> chair. "@@.npc_primrose;We'll start with a nice intro routine, and then I have a little take-home program for you to play with...@@"<br>
<br>
Once <<=setup.getNpcName('npc_janitor', 'first')>> is strapped in and settled <<=setup.getNpcName('npc_primrose', 'formal')>> hits the switch, the program kicking off as <<=setup.getNpcName('npc_janitor', 'first')>> moans, twitching in <<his npc_janitor>> securing bonds as <<=setup.getNpcName('npc_primrose', 'formal')>> closely monitors and occasionally tweaks the routine.<br>
<br>
"@@.npc_primrose;Such a delightful subject,@@" <<=setup.getNpcName('npc_primrose', 'formal')>> states with a smile, clearly pleased by the metrics <<he npc_primrose>> is monitoring. "@@.npc_primrose;My materials should have <<=setup.getNpcName('npc_janitor', 'first')>> well on the way to thinking like a
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy">>
fuckboy,
<<case "femboy">>
cute femboy,
<<case "tomboy">>
svelte tomboy,
<<case 'forcefemme'>>
good girl,
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
but some real-world reinforcement will be required to really cement things. Given <<=ps(setup.getNpcName('npc_janitor', 'first'))>> obvious energy,@@" <<=setup.getNpcName('npc_primrose', 'formal')>> notes with a nod toward the now janitor, sweaty and trembling in <<his npc_janitor>> bonds "@@.npc_primrose;I would recommend a trip to the gym, I'm sure you could find some aligned parties there for a spot of fun...@@"<br>
<br>
[<<moveTo "event_janitor_training_primrose_4" 'Nod and watch as <<=setup.getNpcName("npc_primrose", "formal")>> finishes up.' 600>>]
</div>/*#
#desc: janitor given primrose tape
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 1, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'janitor_post_primrose' _nextDate>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_janitor") setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_primrose', 'formal'))>> routine comes to what actually looks like a somewhat soothing end, restraints releasing as <<=setup.getNpcName('npc_primrose', 'formal')>> gently removes the VR helmet and <<=setup.getNpcName('npc_janitor', 'first')>> blinks, a slightly dazed, but very pleased expression on <<his npc_janitor>> face.<br>
<br>
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy">>
"@@.npc_janitor;Being a fuckboy is great!@@"
<<case "tomboy">>
"@@.npc_janitor;Woot, I'm a tomboy!@@"
<<case "femboy">>
"@@.npc_janitor;Hehe, I'm a femboy!@@"
<<case 'forcefemme'>>
"@@.npc_janitor;Mmm... make me be a good girl!@@"
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<br><br>
You smile in congratulations and help <<=setup.getNpcName('npc_janitor', 'first')>> back to <<his npc_janitor>> feet... as <<=setup.getNpcName('npc_primrose', 'formal')>> finishes loading up a drive and hands it over.<br>
<br>
"@@.npc_primrose;A little something something to listen to you while you work, always good to pack in a little extra training, right?@@" <<=setup.getNpcName('npc_primrose', 'formal')>> winks and theatrically turns back to <<his npc_primrose>> work as you lead <<=setup.getNpcName('npc_janitor', 'first')>> out of the R&D department.<br>
<br>
[<<moveTo "company_lobby" 'Wish your trainee luck and head off for the day.' 300>>]
</div>/*#
#desc: pass npc_janitor while they're training at work
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Company Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You pass by <<=setup.getNpcName('npc_janitor', 'first')>> in the hallway. Earphones in, they don't initially notice you, giving you some time to admire their "progress" —
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy">>
their barely within regulations flamboyant changes to their uniform.
<<case "femboy">>
their longer hair, smooth chin and more fitted uniform.
<<case "tomboy">>
their developing muscles and more confident, yet still subtly subby, mein.
<<case 'forcefemme'>>
their longer hair and hint of makeup to go with their janitorial skirt.
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<br><br>
Finally noticing you, <<=setup.getNpcName('npc_janitor', 'first')>> removes an earbud and
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy">>
pops his hip in your direction and winks
<<case "femboy">>
winks, the faint sound of some bubblegum pop
<<case "tomboy">>
flexes in your direction, the sound of an up tempo power ballad
<<case 'forcefemme'>>
winks... and then curtsys to you, the faint sound of some female pop-anthem
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
trickling out of their speakers.<br>
<br>
[<<moveTo "event_janitor_training_work_2" 'Give your trainee a quick "refresher."' 300>>]<br>
[<<moveTo "event_janitor_training_work_2_abort" 'You need to get to work.' 300>>]
</div>/*#
#desc: pass on training npc_janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'janitor_post_primrose' _nextDate>>
<</if>>
<<set $player.location to 'Company Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You greet <<=setup.getNpcName('npc_janitor', 'first')>> and wish them a good day as you hurry on down to the lobby.<br>
<br>
[<<moveTo "company_lobby" "Time to head out." 120>>]
</div>/*#
#desc: after work teasing of npc_janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Company Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
<<switch $npc_janitor.flags.choice>>
<<case "fuckboy" "tomboy">>
You give <<=setup.getNpcName('npc_janitor', 'first')>> a slap on the ass that has <<him npc_janitor>> grinning lustily.
<<case "femboy" 'forcefemme'>>
You give <<=setup.getNpcName('npc_janitor', 'first')>> a pat on the head that has <<him npc_janitor>> blushing submissively.
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<br><br>
You smile as you whisper a reminder of <<his npc_janitor>> role as you ask how <<he npc_janitor>>'s enjoying training.<br>
<br>
"@@.npc_janitor;Very much so <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> only...@@" <<he npc_janitor>> blushes, "@@.npc_janitor;as fun as these recordings are I'm, uh... still a bit nervous to do anything other than fantasise...@@"<br>
<br>
You think back to <<=ps(setup.getNpcName('npc_primrose', 'formal'))>> suggestion. Some practice away from work would definitely give you and <<=setup.getNpcName('npc_janitor', 'first')>> both the opportunity to focus on <<his npc_janitor>> training... and get in some real world experience... <<printThought "Hmm... yeah, if I could recruit the right help at the gym...">><br>
<br>
[<<moveTo "event_janitor_training_work_3" "Say you will work something out." 300 "<<set $scene.punish=false>>">>]<br>
[<<moveTo "event_janitor_training_work_3" 'Say you will work something out... and punish <<=ps(setup.getNpcName("npc_janitor", "first"))>> impertinence.' 300 "<<set $scene.punish=true>>">>]
</div>/*#
#desc: after work teasing of npc_janitor
#status: RELEASED 0.9.3.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Company Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
<<if $scene.punish>>
You give <<=setup.getNpcName('npc_janitor', 'first')>> a quick slap on the ass that echoes in the hallway as you remind your slave-in-training not to overstep their bounds.<br>
<br>
"@@.npc_janitor;S-sorry, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" <<=setup.getNpcName('npc_janitor', 'first')>> replies, bringing a smile to your face as you wiggle <<his npc_janitor>> plug and leave <<him npc_janitor>> to resume <<his npc_janitor>> as you head off.
<<else>>
You enigmatically reply that you are working on something, then delicately replace <<=ps(setup.getNpcName('npc_janitor', 'first'))>> earbud and send <<him npc_janitor>> back to work as you continue up the hallway to the elevator.
<</if>>
<br><br>
[<<moveTo "company_lobby" "Continue on." 120>>]
</div>/*#
#desc: npc_gym_futa help with janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName('npc_janitor', 'first')>> to <<=setup.getNpcName("npc_gym_futa","first")>> and ask if she might be up for lending a hand with <<his npc_janitor>> training?<br>
<br>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
"@@.npc_gym_futa;I'm a bit busy today, got a date I need to prepare for... maybe some other time?@@"<br>
<br>
<<elseif $npc_janitor.flags.choice == "femboy">>
She grins. "@@.npc_gym_futa;You found yourself a sub and you're bringing <<him npc_janitor>> to <<if $fetish.daddy>>mommy<<else>><<=setup.getNpcName("npc_gym_futa","first")>><</if>> for some help? Guess you have been learning! Yup, I can teach a double lesson...@@"<br>
<br>
[<<moveTo "event_janitor_training_2_femboy_2" 'Call up <<=setup.getNpcName("npc_janitor", "first")>>.' 300>>]<br>
<<else>>
"@@.npc_gym_futa;Sorry, but I'm not taking on new clients at the moment... perhaps <<if $npc_janitor.flags.choice == "fuckboy" || $npc_janitor.flags.choice == "tomboy">>those meathead <<=$npc_swolebro.Bro + "s">><<else>>one of those airheaded gym bimbos<</if>> would be of assistance to your friend?@@"<br>
<br>
<</if>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: npc_gym_futa introduced to janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You call and summon <<=setup.getNpcName('npc_janitor', 'first')>> and he arrives a few minutes later, staring nervously up as <<=setup.getNpcName("npc_gym_futa","first")>> leers down.<br>
<br>
"@@.npc_gym_futa;Well, well... a femboy, eh? And a cute one at that...@@"<br>
<br>
As she talks, <<=setup.getNpcName("npc_gym_futa","first")>> stalks around <<=setup.getNpcName('npc_janitor', 'first')>> like a lioness, your sub looking even smaller and more nervous next to the towering <<if $fetish.futanari>>futa <</if>>domme.<br>
<br>
There is a loud SLAP as <<=setup.getNpcName("npc_gym_futa","first")>> punctuates her monologue with a hard slap on <<=ps(setup.getNpcName('npc_janitor', 'first'))>> ass that half makes him jump and half lifts him off his feet.<br>
<br>
"@@.npc_gym_futa;Damn but I love a fem-boy booty... but we need to upgrade you to a squooty! That's right, deep, heavy, squats to build you out from this pillowy rear into a proper dump truck fuckable femboy ASS.@@"<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> squeezes and <<=setup.getNpcName('npc_janitor', 'first')>> moans.<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> grins at you. "@@.npc_gym_futa;Setup the weights, it's time to see how deep down and heavy he can go...@@"<br>
<br>
[<<moveTo "event_janitor_training_2_femboy_3" 'Setup for some squats...' 1800>>]
</div>/*#
#desc: npc_gym_futa trains janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_janitor', 'first')>> is soon in the squat rack, doing a ladder set ass to grass before <<=setup.getNpcName("npc_gym_futa","first")>> slides a box into position and takes a seat.<br>
<br>
"@@.npc_gym_futa;That's right, all the way down <<if $fetish.sissy>>sissy<<else>>boy<</if>>,@@" <<=setup.getNpcName("npc_gym_futa","first")>> commands as she removes <<=ps(setup.getNpcName('npc_janitor', 'first'))>> plug and he lowers onto her hard cock. "@@.npc_gym_futa;It's your fault I'm this hard, so I want this booty balls deep, show me what you've got!@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> moans, working his way further down with each rep... until <<=setup.getNpcName("npc_gym_futa","first")>> grabs him by the hips and slams him down the final couple centimetres, flesh slapping as she pounds up into him.<br>
<br>
[<<moveTo "event_janitor_training_2_femboy_4" 'Continue...' 600>>]
</div>/*#
#desc: npc_gym_futa fucks janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'elevator_home' 'janitor_post_primrose'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
From the squat rack <<=setup.getNpcName("npc_gym_futa","first")>> soon has <<=setup.getNpcName('npc_janitor', 'first')>> bent over a bench, using her full weight to "exercise" his ass as she pounds out half a dozen orgasmic femboy squeals before rising back to her feet, cock still half-hard as she grins down.<br>
<br>
"@@.npc_gym_futa;Now THAT'S an ass... but you keep training in it, because a proper tight squooty is all about continuous, HARD work.@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> moans... and gasps as the plug slips back into his rear, finished off with one last spank. "@@.npc_gym_futa;Drop in for training anytime... and maybe hit up the club, too. A butt like that belongs on display... and it'd be perfect for the old bump and grind...@@"<br>
<br>
<<if $npc_sex_club.flags.firstVisit>>
<<printThought "Club? Hmm... a trip to <<printShopName 'sex_club'>> would be a perfect celebration for <<=setup.getNpcName('npc_janitor', 'first')>>...">><br>
<br>
<</if>>
You say your good-byes and lead <<=setup.getNpcName('npc_janitor', 'first')>> to the showers to wash up, pointing out various other gym-goers eying him out as you make your way to the locker-room and send him home.<br>
<br>
[<<moveTo "room_gym_lobby" "Leave." 60 "<<useClothSetPop 'preGym'>>">>]
</div>/*#
#desc: ask help with npc_janitor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName('npc_janitor', 'first')>> to <<=setup.getNpcName("npc_fit_bimbo","first")>> and ask if she might be up for lending a hand with <<=ps(setup.getNpcName('npc_janitor', 'first'))>> training?<br>
<br>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
"@@.npc_fit_bimbo;I'm a bit busy today, got a date I need to prepare for... maybe some other time?@@"<br>
<br>
<<elseif $npc_janitor.flags.choice == "forcefemme">>
"@@.npc_fit_bimbo;Like, totally! I love helping a girl bring out the best in herself! Girl power!@@"<br>
<br>
[<<moveTo "event_janitor_training_2_forcefem_2" 'Call up <<=setup.getNpcName("npc_janitor", "first")>>.' 300>>]<br>
<<else>>
"@@.npc_fit_bimbo;Like, sorry, but I don't think I'm quite the right person for that. You should, like, try <<if $npc_janitor.flags.choice == "fuckboy" || $npc_janitor.flags.choice == "tomboy">>the <<=$npc_swolebro.Bro + "s">><<else>>that female trainer, <<=setup.getNpcName("npc_gym_futa","first")>><</if>>, I think they'd be more your friend's type.@@"<br>
<br>
<</if>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: npc_janitor intro
#status: RELEASED 0.9.3.0
#ignore_spell: cheerlead
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You call and summon <<=setup.getNpcName('npc_janitor', 'first')>> and she arrives a few minutes later, meeting you in the fitness classroom where <<=setup.getNpcName("npc_fit_bimbo","first")>> looks ready to pounce from the first sight.<br>
<br>
"@@.npc_fit_bimbo;THIS is who you wanted me to help you with?@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> states in introduction, all but freezing <<=setup.getNpcName('npc_janitor', 'first')>> in position as <<=setup.getNpcName("npc_fit_bimbo","first")>> stalks forward, hips swaying, boobs bouncing, her gym-heel accentuated height having her loom over an increasingly nervous <<=setup.getNpcName('npc_janitor', 'first')>>.<br>
<br>
"@@.npc_fit_bimbo;You didn't tell me she was so fucking hot,@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> purrs, taking <<=setup.getNpcName('npc_janitor', 'first')>> further off-guard as <<=setup.getNpcName("npc_fit_bimbo","first")>> shifts to interrogation. "@@.npc_fit_bimbo;So tell me, strutting around like this, looking so hot... are you a good girl?@@" <<=setup.getNpcName('npc_janitor', 'first')>> shudders, but nods as <<=setup.getNpcName("npc_fit_bimbo","first")>> grabs her by the hair and presses her up against the wall. "@@.npc_fit_bimbo;I knew it, that walk, those lips... perfectly femme, but I bet you want more, huh? You don't just want to be a good girl, you want to be a better girl. To be a perfect fit bitch gym bimbo?@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> moans as she nods.<br>
<br>
<<=setup.getNpcName("npc_fit_bimbo","first")>> grins and steps back, "@@.npc_fit_bimbo;Great! Then let's stop standing around and put some work in!@@"<br>
<br>
[<<moveTo "event_janitor_training_2_forcefem_3" 'Cheerlead while <<=setup.getNpcName("npc_janitor", "first")>> works.' 1800>>]
</div>/*#
#desc: npc_janitor fit bitch workout
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You flash <<=setup.getNpcName('npc_janitor', 'first')>> encouragement as <<=setup.getNpcName("npc_fit_bimbo","first")>> spins up a pulse-pounding bimbo pop track and leads a sweaty, and seductive calisthenics routine.<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> is soon sweating to keep up, but keep up she does, especially with the help of <<=ps(setup.getNpcName("npc_fit_bimbo","first"))>> near constant verbal encouragement.<br>
<br>
"@@.npc_fit_bimbo;Go on, stretch it wide!@@"<br>
<br>
"@@.npc_fit_bimbo;Yeah, that's right, all the way down!@@"<br>
<br>
"@@.npc_fit_bimbo;Strut, slut, and shake that butt!@@"<br>
<br>
"@@.npc_fit_bimbo;That's right! Show off! You are a sexy, sexy bitch!@@"<br>
<br>
From stretching to strutting in heels to more squats than you can keep track of <<=setup.getNpcName('npc_janitor', 'first')>> follows along, showing off surprising endurance as she does everything she can to "prove" herself up to the task of being a true fit bimbo.<br>
<br>
"@@.npc_fit_bimbo;Faster, harder, longer!@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> "@@.npc_fit_bimbo;You are a sexy, sexy woman with a body that exists to make cocks hard!@@"<br>
<br>
[<<moveTo "event_janitor_training_2_forcefem_4" 'Looks like the workout is nearly over...' 1800>>]
</div>/*#
#desc: npc_janitor fit bitch workout finish
#status: RELEASED 0.9.3.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'elevator_home' 'janitor_post_primrose'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_fit_bimbo","first")>> pushes <<=setup.getNpcName('npc_janitor', 'first')>> until she all but collapses, finishing off with a floor stretching routine that has <<=setup.getNpcName('npc_janitor', 'first')>> laying on the ground panting.<br>
<br>
"@@.npc_fit_bimbo;Now that's what I call a workout!@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> says with a grin, her own exertions having done little more than leave her glowing with fresh sweat. "@@.npc_fit_bimbo;Good job! You really put it on today, feel free to come back any time you want to work out with us girls.@@"<br>
<br>
You and <<=setup.getNpcName("npc_fit_bimbo","first")>> help <<=setup.getNpcName('npc_janitor', 'first')>> back to her feet where she finally manages to find her words. "@@.npc_janitor;Th— thanks... I will.@@" She replies, her confidence growing as <<=setup.getNpcName("npc_fit_bimbo","first")>> grins back.<br>
<br>
"@@.npc_fit_bimbo;Look forward to seeing you, I think you, me, and the other girls are gonna have LOTS of fun! And who knows... maybe I'll see you at the clubs, too!@@"<br>
<br>
<<if $npc_sex_club.flags.firstVisit>>
<<printThought "A trip to <<printShopName 'sex_club'>> would be a perfect celebration for <<=setup.getNpcName('npc_janitor', 'first')>>...">><br>
<br>
<</if>>
You say your good-byes and lead <<=setup.getNpcName('npc_janitor', 'first')>> to the showers to wash up, pointing out various other gym-goers eying her out as you make your way to the locker-room and send her home.<br>
<br>
[<<moveTo "room_gym_lobby" "Leave." 60 "<<useClothSetPop 'preGym'>>">>]
</div>/*#
#desc: ask help training npc_janitor
#status: RELEASED 0.9.3.0
#ignore_spell: brah
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName('npc_janitor', 'first')>> to the <<=$npc_swolebro.Bro + "s">> and ask if they might be up for lending a hand with <<=ps(setup.getNpcName('npc_janitor', 'first'))>> training?<br>
<br>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
"@@.npc_gym_futa;I'm a bit busy today, got a date I need to prepare for... maybe some other time?@@"<br>
<br>
<<elseif $npc_janitor.flags.choice == "fuckboy">>
"@@.npc_swolebro;Heck yeah we would. Always happy to welcome another brother into the church of iron, you just give 'em all call and we'll show them a damn good time!@@"<br>
<br>
[<<moveTo "event_janitor_training_2_fuckboy_2" 'Call up <<=setup.getNpcName("npc_janitor", "first")>>.' 300>>]<br>
<<elseif $npc_janitor.flags.choice == "tomboy">>
"@@.npc_swolebro;Heck yeah we would. Always happy to welcome a sister into the church of iron, you just give 'em all call and we'll show them a damn good time!@@"<br>
<br>
[<<moveTo "event_janitor_training_2_tomboy_2" 'Call up <<=setup.getNpcName("npc_janitor", "first")>>.' 300>>]<br>
<<else>>
"@@.npc_swolebro;Sorry, <<if $player.identify_as == "male">>brah<<else>>friend<</if>>, but I don't think we're the best qualified to help someone like that, maybe you might try <<if $npc_janitor.flags.choice == "forcefemme">>one of the gym bimbos<<else>>that female trainer, <<=setup.getNpcName("npc_gym_futa","first")>><</if>>?@@"<br>
<br>
<</if>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: start fuckboy training npc_janitor
#status: RELEASED 0.9.3.0
#ignore_spell: ectomorph
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You call and summon <<=setup.getNpcName('npc_janitor', 'first')>> and <<he npc_janitor>> arrives a few minutes later, meeting you in the fitness classroom where <<=setup.getNpcName("npc_swolebro","first")>> smiles in greeting.<br>
<br>
"@@.npc_swolebro;So you're lookin' to get a bit more swole, huh? Sculpt that muscle, become a real enticing treat for the eye and... other things?@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> nods and <<=setup.getNpcName("npc_swolebro","first")>> grins wider... somehow flexing the whole time. "@@.npc_swolebro;Nice, nice. The gym, and the world, can always use another shredded fuckboy, so let's talk goals and methods. Like, with me, my goal is to be so big I have trouble fitting through doorways... but you, well, from the look of things I'd say you're less looking to be big, than to be able to confidently handle big things....@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> nods again, clearly enjoying the attention as <<he npc_janitor>> adjusts <<him npc_janitor>>self slightly to stand at a more enticing angle.<br>
<br>
"@@.npc_swolebro;Excellent... and you've got just the build for it. Natural ectomorph, so if we focus on functional strength and endurance you're gonna have a beach bod that's functional to fuck for hours... and me and the <<if $npc_swolebro.fem>>girls<<else>>boys<</if>> have JUST the workout that'll help maximise those gains...@@"<br>
<br>
[<<moveTo "event_janitor_training_2_fuckboy_3" 'Time to get <<=ps(setup.getNpcName("npc_janitor","formal"))>> pump on.' 1800>>]
</div>/*#
#desc: fuckboy training npc_janitor
#status: RELEASED 0.9.3.0
#ignore_spell: pb,s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_swolebro","first")>> starts <<=setup.getNpcName('npc_janitor', 'first')>> on the bench and before long other members of the swole<<=$npc_swolebro.bro>>s have appeared to cheer their newest recruit on.<br>
<br>
"@@.generic_male1;Keep that arch!@@"<br>
<br>
"@@.generic_female2;Drive, drive!@@"<br>
<br>
"@@.generic_male2;Light weight! One more rep!@@"<br>
<br>
They cheer as <<=setup.getNpcName('npc_janitor', 'first')>> sets a new PB before moving to the deadlift platform, <<=setup.getNpcName("npc_swolebro","first")>> standing close behind to spot as <<=setup.getNpcName('npc_janitor', 'first')>> pulls, clearly drawing confidence from <<his npc_janitor>> new, large friend.<br>
<br>
Curls and squats follow as <<=ps(setup.getNpcName('npc_janitor', 'first'))>> pump visibly swells, glances of encouragement mixed with looks of lust as the various swole<<=$npc_swolebro.bro>>s alternate helping out and working in...<br>
<br>
[<<moveTo "event_janitor_training_2_fuckboy_4" 'Time to finish this "full body" workout...' 1800>>]
</div>/*#
#desc: fuckboy training npc_janitor
#status: RELEASED 0.9.3.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'elevator_home' 'janitor_post_primrose'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
Muscles pumped, sweat dripping and arousal peaking, fuckboy <<=setup.getNpcName('npc_janitor', 'first')>> is enthusiastically carried into a private room for a real "full body" workout combined with "deep tissue" massage.<br>
<br>
The sexy twink all but disappears amidst the swarm of <<man npc_swolebro>> muscle. The centre of attention with a thick cock in both holes <<he npc_janitor>> jerks off two more muscle <<men>> as the swole<<=$npc_swolebro.bro>>s induct this newest follower of the church of iron, fucking <<him npc_janitor>> for multiple hard sets until
<<if $fetish.cum>>
<<=setup.getNpcName('npc_janitor', 'first')>> is leaking and dripping with cum,
<<else>>
ends
<</if>>
facedown for a "cooldown set" of a doubled up buttfucking-shoulder massage.<br>
<br>
"@@.npc_fit_bimbo;A natural!@@" <<=setup.getNpcName('npc_swolebro', 'first')>> congratulates as <<=setup.getNpcName('npc_janitor', 'first')>> shows <<his npc_janitor>> appreciation by licking <<=ps(setup.getNpcName('npc_swolebro', 'first'))>> <<getWordPenis "npc_swolebro">> clean.<br>
<br>
"@@.npc_fit_bimbo;Remember, though — exercise is all about consistency, so I'll expect to be seeing you several times a week so you can keep working on those gains!@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> grins and nods, throwing back a kiss as the two of you head for the locker-room.<br>
<br>
<<if $npc_sex_club.flags.firstVisit>>
<<printThought "A trip to <<printShopName 'sex_club'>> would be a perfect celebration for <<=setup.getNpcName('npc_janitor', 'first')>>...">><br>
<br>
<</if>>
Still sporting a pump, and glistening with sweat<<if $fetish.cum>> and cum<</if>>, <<=setup.getNpcName('npc_janitor', 'first')>> attracts a number of favorable glances as <<he npc_janitor>> showers off and you send <<him npc_janitor>> home.<br>
<br>
[<<moveTo "room_gym_lobby" "Leave." 60 "<<useClothSetPop 'preGym'>>">>]
</div>/*#
#desc: start tomboy training npc_janitor
#status: RELEASED 0.9.3.0
#ignore_spell: ectomorph,tomgirl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You call and summon <<=setup.getNpcName('npc_janitor', 'first')>> and she arrives a few minutes later, meeting you in the fitness classroom where <<=setup.getNpcName("npc_swolebro","first")>> smiles in greeting.<br>
<br>
"@@.npc_swolebro;So you're lookin' to get a bit more swole, huh? Build out that sexy tomgirl vibe with some more muscle and become a real enticing treat for the eye and... other things?@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> nods and <<=setup.getNpcName("npc_swolebro","first")>> grins wider... somehow flexing the whole time. "@@.npc_swolebro;Nice, nice. The gym, and the world, can always use another swole and sexy tomboy, so let's talk goals and methods. Like, with me, my goal is to be so big I have trouble fitting through doorways... but you, well, from the look of things I'd say you're less looking to be big, than to be able to confidently handle big things....@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> nods again, clearly enjoying the attention as she adjusts herself slightly to stand at a more enticing angle.<br>
<br>
"@@.npc_swolebro;Excellent... and you've got just the build for it. Natural ectomorph, so if we focus on functional strength and endurance you're gonna have a beach bod that's functional to fuck for hours... and me and the <<if $npc_swolebro.fem>>girls<<else>>boys<</if>> have JUST the workout that'll help maximise those gains...@@"<br>
<br>
[<<moveTo "event_janitor_training_2_tomboy_3" 'Time to get <<=ps(setup.getNpcName("npc_janitor","formal"))>> pump on.' 1800>>]
</div>/*#
#desc: tomboy training npc_janitor
#status: RELEASED 0.9.3.0
#ignore_spell: pb,s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_swolebro","first")>> starts <<=setup.getNpcName('npc_janitor', 'first')>> on the bench and before long other member's of the swole<<=$npc_swolebro.bro>>s have appeared to cheer their newest recruit on.<br>
<br>
"@@.generic_male1;Keep that arch!@@"<br>
<br>
"@@.generic_female2;Drive, drive!@@"<br>
<br>
"@@.generic_male2;Light weight! One more rep!@@"<br>
<br>
They cheer as <<=setup.getNpcName('npc_janitor', 'first')>> sets a new PB before moving to the deadlift platform, <<=setup.getNpcName("npc_swolebro","first")>> standing close behind to spot as <<=setup.getNpcName('npc_janitor', 'first')>> pulls, clearly drawing confidence from her new, large friend.<br>
<br>
Curls and squats follow as <<=ps(setup.getNpcName('npc_janitor', 'first'))>> pump visibly swells, glances of encouragement mixed with looks of lust as the various swole<<=$npc_swolebro.bro>>s alternate helping out and working in...<br>
<br>
[<<moveTo "event_janitor_training_2_tomboy_4" 'Time to finish this "full body" workout...' 1800>>]
</div>/*#
#desc: fuckboy training npc_janitor
#status: RELEASED 0.9.3.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'elevator_home' 'janitor_post_primrose'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
Muscles pumped, sweat dripping and arousal peaking, fuckboy <<=setup.getNpcName('npc_janitor', 'first')>> is enthusiastically carried into a private room for a real "full body" workout combined with "deep tissue" massage.<br>
<br>
The sexy twink all but disappears amidst the swarm of <<man npc_swolebro>> muscle. The centre of attention with a thick cock in both holes she jerks off two more muscle <<men>> as the swole<<=$npc_swolebro.bro>>s induct this newest follower of the church of iron, fucking her for multiple hard sets until
<<if $fetish.cum>>
<<=setup.getNpcName('npc_janitor', 'first')>> is leaking and dripping with cum,
<<else>>
ends
<</if>>
facedown for a "cooldown set" of a doubled up buttfucking-shoulder massage.<br>
<br>
"@@.npc_fit_bimbo;A natural!@@" <<=setup.getNpcName('npc_swolebro', 'first')>> congratulates as <<=setup.getNpcName('npc_janitor', 'first')>> shows her appreciation by licking <<=ps(setup.getNpcName('npc_swolebro', 'first'))>> <<getWordPenis "npc_swolebro">> clean.<br>
<br>
"@@.npc_fit_bimbo;Remember, though — exercise is all about consistency, so I'll expect to be seeing you several times a week so you can keep working on those gains!@@"<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> grins and nods, throwing back a kiss as the two of you head for the locker-room.<br>
<br>
<<if $npc_sex_club.flags.firstVisit>>
<<printThought "A trip to <<printShopName 'sex_club'>> would be a perfect celebration for <<=setup.getNpcName('npc_janitor', 'first')>>...">><br>
<br>
<</if>>
Still sporting a pump, and glistening with sweat<<if $fetish.cum>> and cum<</if>>, <<=setup.getNpcName('npc_janitor', 'first')>> attracts a number of favorable glances as she showers off and you send her home.<br>
<br>
[<<moveTo "room_gym_lobby" "Leave." 60 "<<useClothSetPop 'preGym'>>">>]
</div>/*#
#desc: invite janitor to club
#status: RELEASED 0.9.3.0
#ignore_spell: horniner
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.janitorStatus=true>>
<<set $scene.scheduled = $currentTasks.hasOwnProperty('task_manager_date_club') && !$currentTasks.task_manager_date_club.finished>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 0, 21, 30, false)>>
<<if setup.hasFreeTime(_tmpDate, $player, $currentTasks, 7200)>>
<<addTaskById 'janitor_sexclub_graduation' _tmpDate>>
<</if>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You ask if <<=setup.getNpcName('npc_janitor', 'first')>> is ready to celebrate
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
accomplishments with a night at <<printShopName 'sex_club'>>?<br>
<br>
<<=ps(setup.getNpcName('npc_janitor', 'first'))>> eyes light up with excitement, but
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<he npc_janitor>>
<<case "tomboy" 'forcefemme'>>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
manages to catch
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>self
<<case "tomboy" 'forcefemme'>>
herself
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
before blurting anything else, instead first bowing obediently, and then calmly replying. "@@.npc_janitor;yes, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>...@@"<br>
<br>
You smile at the effects your training has wrought and instruct <<=setup.getNpcName('npc_janitor', 'first')>> to meet you at <<printShopName 'sex_club'>> Sunday at <<if $options.militaryTime>>18:30<<else>>six thirty pm<</if>>.<br>
<br>
<<=setup.getNpcName('npc_janitor', 'first')>> gets a text and hurries back to work after a parting bow and an excited grin.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: failed to show up to janitor graduation
#status: RELEASED 0.9.3.0
#ignore_spell: domming
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_janitor', 'first')>>. "@@.npc_janitor;<<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>? I'm at the club like you told me... only, you aren't here, and the lady at the door is way too intimidating for me to head in alone... I guess something came up? I'll see you at work...@@"<br>
<br>
<<printThought "Shit, that's some sloppy domming...">><br>
<br>
You assure <<=setup.getNpcName('npc_janitor', 'first')>> that it was nothing
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<he npc_janitor>>
<<case "tomboy" 'forcefemme'>>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
did wrong, and promise to reschedule soon.<br>
<br>
"@@.npc_janitor;Oh... okay... you are pretty busy. I'll wait...@@" <<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<he npc_janitor>>
<<case "tomboy" 'forcefemme'>>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: arrive for janitor graduation
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish") setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_janitor', 'first')>> arrives at the club and you greet
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<him npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
with a smile.<br>
<br>
Excited, and clearly a little nervous,
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<he npc_janitor>>
<<case "tomboy" 'forcefemme'>>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
glances past to <<=setup.getNpcName('npc_guard', 'formal')>> who is watching on with obvious amusement.<br>
<br>
"@@.pc;You're looking good,@@" you state with a smile,
<<switch $npc_janitor.flags.choice>>
<<case "femboy">>
"@@.pc;You ready for an evening showing off as my <<if $fetish.sissy>>sissy <</if>>femboy?@@"
<<case "fuckboy">>
"@@.pc;You ready for an evening showing off as my hot fuckboy?@@"
<<case "tomboy">>
"@@.pc;You ready for an evening showing off as my hot tomboy?@@"
<<case 'forcefemme'>>
"@@.pc;You ready for an evening showing off as my sexy girl?@@"
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_janitor', 'first')>> nods and you wrap a collar around
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy" ''>>
<<his npc_janitor>>
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
neck. "@@.pc;Come along,@@" you command as you clip a leash to the front of the collar and lead the way into the club.<br>
<br>
<<=setup.getNpcName('npc_guard', 'formal')>> leans against the front desk and winks as you pass as <<=setup.getNpcName('npc_janitor', 'first')>> hurries to keep up with you.<br>
<br>
[<<moveTo "event_janitor_graduation_2" "Show off your slave." 300>>]
</div>/*#
#desc: parade janitor through club
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
With a firm grip on
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
leash, you parade <<=setup.getNpcName('npc_janitor', 'first')>> through the club, first just giving them the opportunity to soak in the atmosphere before you start drawing attention to those other club-goers eyeing <<=setup.getNpcName('npc_janitor', 'first')>> up... and from there start introducing <<=setup.getNpcName('npc_janitor', 'first')>> around.<br>
<br>
You can tell that <<=setup.getNpcName('npc_janitor', 'first')>> is getting hornier and more excited by the minute... which is exactly what you were planning for.<br>
<br>
[<<moveTo "event_janitor_graduation_3" "Now that you have some fans, it's time to hit up the play area..." 1800>>]
</div>/*#
#desc: take janitor to play area
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions = {}>>
<<changeHorny 20>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
With a small crowd in tow, you lead <<=setup.getNpcName('npc_janitor', 'first')>> to the play area and strap
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
him
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
to a spanking bench facing the crowd.<br>
<br>
"@@.pc;Look at them,@@" you whisper, leaning close as you massage <<=ps(setup.getNpcName('npc_janitor', 'first'))>> rear. "@@.pc;Look at how they stare at you, like a piece of meat. Some of them want you, others want to be you... and that's just why you wanted my training, to be the centre of attention, a submissive
<<switch $npc_janitor.flags.choice>>
<<case "femboy">>
<<if $fetish.sissy>>sissy <</if>>femboy,
<<case "fuckboy">>
fuckboy,
<<case "tomboy">>
tomboy,
<<case 'forcefemme'>>
girl,
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
a sexy toy to be ogled and used... well here's the culmination of your training, you ready to make your final invitation to be a public-use fucktoy for all these people?@@"<br>
<br>
You tease <<=setup.getNpcName('npc_janitor', 'first')>> through
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
him
<<case "tomboy" 'forcefemme'>>
her
<</switch>> clothes and
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
he
<<case "tomboy" 'forcefemme'>>
she
<</switch>>
nearly cums on the spot.<br>
<br>
"@@.npc_janitor;Yes, <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>...@@" <<=setup.getNpcName('npc_janitor', 'first')>> moans as you stand up and get ready to REALLY show off your slave...<br>
<br>
<<include "janitorGraduationChoices">>
</div><<if $scene.actions.spank>>
[@@.link_locked;You already spanked <<=setup.getNpcName("npc_janitor", "first")>>.@@]<br>
<<else>>
[<<moveTo "event_janitor_graduation_4" 'Give <<=setup.getNpcName("npc_janitor", "first")>> a spanking.' 300 "<<set $scene.action='spank'>>">>]<br>
<</if>>
<<if $scene.actions.sell>>
[@@.link_locked;You already talked <<=setup.getNpcName("npc_janitor", "first")>> up for the crowd.@@]<br>
<<else>>
[<<moveTo "event_janitor_graduation_4" 'Extol <<=ps(setup.getNpcName("npc_janitor", "first"))>> virtues to the crowd.' 300 "<<set $scene.action='sell'>>">>]<br>
<</if>>
<<if $player.body_ref.penis>>
<<if $scene.actions.suck>>
[@@.link_locked;You already had <<=setup.getNpcName("npc_janitor", "first")>> suck you off.@@]<br>
<<elseif setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_janitor_graduation_4" 'Have <<=setup.getNpcName("npc_janitor", "first")>> suck you off.' 300 "<<set $scene.action='suck'>>">>]<br>
<<else>>
[@@.link_locked;You lack the means to unlock your chastity.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_janitor_graduation_4" 'Have <<=setup.getNpcName("npc_janitor", "first")>> suck you off.' 300 "<<set $scene.action='suck'>>">>]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if $scene.actions.eat>>
[@@.link_locked;You already had <<=setup.getNpcName("npc_janitor", "first")>> eat you out.@@]<br>
<<elseif setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis") && !setup.isCage()>>
[<<moveTo "event_janitor_graduation_4" 'Remove your belt and have <<=setup.getNpcName("npc_janitor", "first")>> eat you out.' 300 "<<set $scene.action='eat'>>">>]<br>
<<else>>
[@@.link_locked;You lack the means to unlock your chastity.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_janitor_graduation_4" 'Have <<=setup.getNpcName("npc_janitor", "first")>> eat you out.' 300 "<<set $scene.action='eat'>>">>]<br>
<</if>>
<</if>>
<<if $player.body_ref.penis>>
<<if $scene.actions.fuck>>
[@@.link_locked;You already fucked <<=setup.getNpcName("npc_janitor", "first")>>.@@]<br>
<<elseif setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis")>>
<<if $scene.actions.suck>>
[<<moveTo "event_janitor_graduation_4" 'Unlock yourself and fuck <<=setup.getNpcName("npc_janitor", "first")>>.' 300 "<<set $scene.action='fuck'>>">>]<br>
<<else>>
[@@.link_locked;A bit of oral will have you nice and lubed first.@@]<br>
<</if>>
<</if>>
<<else>>
<<if $scene.actions.suck>>
[<<moveTo "event_janitor_graduation_4" 'Fuck <<=setup.getNpcName("npc_janitor", "first")>>.' 300 "<<set $scene.action='fuck'>>">>]<br>
<<else>>
[@@.link_locked;A bit of oral will have you nice and lubed first.@@]<br>
<</if>>
<</if>>
<</if>>
<<if $scene.actions.strap>>
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
[@@.link_locked;You already pegged <<=setup.getNpcName("npc_janitor", "first")>>.@@]<br>
<<case "tomboy" 'forcefemme'>>
[@@.link_locked;You already strapped <<=setup.getNpcName("npc_janitor", "first")>> ass.@@]<br>
<</switch>>
<<else>>
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
[<<moveTo "event_janitor_graduation_4" 'Peg <<=setup.getNpcName("npc_janitor", "first")>>.' 300 "<<set $scene.action='strap'>>">>]<br>
<<case "tomboy" 'forcefemme'>>
[<<moveTo "event_janitor_graduation_4" 'Strap <<=ps(setup.getNpcName("npc_janitor", "first"))>> ass.' 300 "<<set $scene.action='strap'>>">>]<br>
<</switch>>
<</if>>/*#
#desc: show off janitor
#status: RELEASED 0.9.3.0
#ignore_spell: jocky
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 30>>
<<if setup.checkItemWorn('strapon_large')>>
<<removeItem 'strapon_large' true>>
<<deleteItem 'strapon_large'>>
<</if>>
<<set $scene.actions[$scene.action] = true>>
<<switch $scene.action>>
<<case 'spank'>>
<<applyExperience 'dominance' 12 'normal' $EXPOSED>>
<<case 'suck'>>
<<case 'eat'>>
<<case 'fuck'>>
<<playerOrgasm>>
<<case 'strap'>>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<<case 'sell'>>
<<applyExperience 'dominance' 16 'normal' $EXPOSED>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'spank'>>
With <<=setup.getNpcName("npc_janitor", "first")>> tightly secured to one of the club's spanking benches,
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
ass is a perfectly juicy target on display. The first slap echoes in the club, <<=setup.getNpcName("npc_janitor", "first")>> gasping at the impact as
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
he
<<case "tomboy" 'forcefemme'>>
she
<</switch>>
a lovely red handprint marks your blow across one butt-cheek... and the crowd enthusiastically counts off "@@.generic_female1;ONE!@@"<br>
<br>
"@@.generic_female1;TWO!@@" Sees you bring symmetry to <<=ps(setup.getNpcName("npc_janitor", "first"))>> bum, followed by "@@.generic_female1;THREE, FOUR, FIVE!@@" in quick succession to spread the red and have
<<if $npc_janitor.flags.cage>>
<<if $fetish.cum>>
dripping from
<<else>>
straining within
<</if>>
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
cage
<<else>>
stiffen below
<</if>>
as
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
red rump quivers around its plug occupant.<br>
<br>
A side to side swipe for "@@.generic_female1;SIX!@@" mixes things up and has <<=setup.getNpcName("npc_janitor", "first")>> jiggling slightly, her gasps turning to moans as you continue to vary up angles to count the rest of the way to "@@.generic_female1;SEVEN!, EIGHT!, NINE!, TEN!@@" Before you take a step back and let <<=setup.getNpcName("npc_janitor", "first")>> enjoy a few moments of crowd applause as you consider your next move.
<<case 'suck'>>
You step in front of <<=setup.getNpcName("npc_janitor", "first")>> and <<if setup.checkItemTypeWorn("cage")>>unlock your <<if setup.isCage()>>cage<<else>>belt<</if>> <</if>>to reveal your hard <<getWordMyPenis>>. <<=setup.getNpcName("npc_janitor", "first")>> licks
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
lips in anticipation and is moments later sucking deep to the approval of the crowd.<br>
<br>
You take your slave by the hair and tilt them up as you hump
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
face, <<=ps(setup.getNpcName("npc_janitor", "first"))>> eyelids fluttering in pleasure as you go <<if $player.body_ref.balls>>balls deep<<else>>all the way down<</if>>, <<=ps(setup.getNpcName("npc_janitor", "first"))>> training on display as they do not so much as gurgle, tongue moving passionately until you pull away.<br>
<br>
A trail of spittle runs from the glistening tip of your <<getWordMyPenis>> to <<=ps(setup.getNpcName("npc_janitor", "first"))>> still-parted lips. You know
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
he
<<case "tomboy" 'forcefemme'>>
she
<</switch>>
wants to finish you off... but you tease just out of reach of
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
lips as you <<if setup.checkItemTypeWorn("cage")>>lock back up and <</if>>consider how next to show off your slave to the crowd...
<<case 'eat'>>
You step close to <<=ps(setup.getNpcName("npc_janitor", "first"))>> face<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>, unlocking your belt <</if>>
<<if $player.body_ref.penis>>
and pull your <<getWordMyPenis>> out of the way
<</if>>
for <<=setup.getNpcName("npc_janitor", "first")>> to bury
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
face between your lower lips.<br>
<br>
<<=ps(setup.getNpcName("npc_janitor", "first"))>> tongue needs no additional instruction, spearing deep as
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
lips kiss and nibble, eagerly eating your sweet peach as you tussle
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
hair and smile a the crowd.<br>
<br>
Combined with the rush of being on display, <<=setup.getNpcName("npc_janitor", "first")>> is even more adroit than you expected and you gasp, barely holding back from orgasm as you delicately separate yourself, leaving <<=setup.getNpcName("npc_janitor", "first")>> blinking up and clearly hungry for more...
<<case 'fuck'>>
You move behind <<=setup.getNpcName("npc_janitor", "first")>> and <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>uncage yourself<<else>>remove your chastity belt<</if>><<else>>reveal your hard <<getWordMyPenis>><</if>>. With <<=ps(setup.getNpcName("npc_janitor", "first"))>> plug removed <<=ps(setup.getNpcName("npc_janitor", "first"))>> saliva is all the lube you need to claim
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
ass, and you do so, hips slapping as takes all of you
<<switch $player.body.penissize[0]>>
<<case 0 1>>
on the first thrust.
<<case 2 3>>
with ease.
<<case 4 5>>
with a lusty moan.
<<case 6>>
with but the slightest struggle <<if $player.body_ref.knot>>as your knot pops into place<<else>>as you spread them wide and deep<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
The crowd cheers as you go hands free, humping hard enough for <<=setup.getNpcName("npc_janitor", "first")>> to rock slightly on the spanking bench,
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
moans of pleasure egged on by the crowd as you go all the way, your pace increasing as you
<<if $fetish.cum && $player.body_ref.cumProduction > 0>>
dump your load
<<else>>
climax
<</if>>
deep inside your slave, grinding out a finish to the lusty cheers of the crowd until <<=setup.getNpcName("npc_janitor", "first")>> moans with exhibitionist analgasm of
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
own.
<<case 'strap'>>
The club's play area is well-equipped and a large strap-on is barely an arms-reach away, and you quickly have yourself equipped to
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
peg
<<case "tomboy" 'forcefemme'>>
fuck
<</switch>>
your slave for the crowd.<br>
<br>
Thick slick silicone slides in and out of <<=ps(setup.getNpcName("npc_janitor", "first"))>> well-trained rear as you pound
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
to an ecstatic climax that has the crowd on their feet... and many a hard cock or other strap tall and glistening in anticipation of their turn...
<<case 'sell'>>
You take a few moments to talk up your slave, reviewing some of their training as you gush about how cock-hungry and submissive they are, explaining to the crowd how tonight is <<=ps(setup.getNpcName("npc_janitor", "first"))>> graduation... and that once you're done showing them off you want the crowd to give them a proper celebration...<br>
<br>
"@@.npc_janitor;Yes! Please fuck me! Make me a true public use slut!@@" <<=setup.getNpcName("npc_janitor", "first")>> calls out in eager confirmation of
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
enthusiastic consent and anticipation.<br>
<br>
You glance around at the lusty crowd, club-goers already starting to jocky for position of who goes first, and who gets which hole. You glance down at <<=setup.getNpcName("npc_janitor", "first")>>, any shyness wiped out by aroused enthusiasm as
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
he
<<case "tomboy" 'forcefemme'>>
she
<</switch>>
looks forward to the orgy that is about to come, and you feel a burst of pride at what a good job you've done with
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
training and preparation...
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<include "janitorGraduationChoices">>
<<if $scene.actions.sell>>
[<<moveTo "event_janitor_graduation_5" 'Time to let everyone else loose on <<=setup.getNpcName("npc_janitor", "first")>>...' 3600>>]
<</if>>
</div>/*#
#desc: pimp janitor out
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemWorn('strapon_large')>>
<<removeItem 'strapon_large' true>>
<<deleteItem 'strapon_large'>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You take a step back and watch as the crowd descends. Not the slightest bit overwhelmed, <<=setup.getNpcName("npc_janitor", "first")>> is instead in slut heaven, taking it from either end as other club-goers fight for flesh. A horde of horny hedonists is soon fucking, groping, jerking, sucking, spanking and flogging the
<<switch $npc_janitor.flags.choice>>
<<case "femboy">>
femboy
<<case "fuckboy">>
fuckboy
<<case "tomboy">>
tomboy
<<case 'forcefemme'>>
lady
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
of the hour,
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
joy plain with every
<<if $fetish.cum>>
<<if $npc_janitor.flags.cage>>
orgasm leaking out of
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
cage and onto the floor...
<<else>>
orgasm squirted out onto the floor...
<</if>>
to be quickly licked up by some other degenerate slave.
<<else>>
<<if $npc_janitor.flags.cage>>
time
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
cage shakes with orgasm.
<<else>>
time
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
he
<<case "tomboy" 'forcefemme'>>
she
<</switch>>
shudders in orgasm.
<</if>>
<</if>>
<br><br>
The small crowd that had steadily grown through your parade and presentation soon seems to make up nearly the entire population of the club as everyone wants to either watch... or get a piece of the fresh slave of their own, <<=setup.getNpcName("npc_janitor", "first")>> really "cleaning up" as they service dozens of cocks and cunts, not just rising to the occasion... but surpassing it as they don't just take everything the crowd has to give... but beg for more, finally beckoning you in as, while milky-eyed and drooling<<if $fetish.cum>>, and with cum leaking out of both ends<</if>> they ask you to really cement their efforts by auctioning off who gets to take them home for the rest of the night...<br>
<br>
[<<moveTo "event_janitor_graduation_6" 'To sell a slave...' 1800>>]
</div>/*#
#desc: auction janitor off
#status: RELEASED 0.9.3.0
#ignore_spell: dominatrixes
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You're back in sales mode as you jump up next to <<=setup.getNpcName("npc_janitor", "first")>> and rouse the tired and satisfied crowd. First drawing forth a standing ovation for <<=ps(setup.getNpcName("npc_janitor", "first"))>> performance you note that
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
he
<<case "tomboy" 'forcefemme'>>
she
<</switch>>
wants to do even more... for whatever lucky individual is ready to pay to take
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
him
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
home, clean
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
him
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
off... and enjoy the rest of the night, and a morning wake-up! from this eager
<<switch $npc_janitor.flags.choice>>
<<case "femboy">>
femboy.
<<case "fuckboy">>
fuckboy.
<<case "tomboy">>
tomboy.
<<case 'forcefemme'>>
woman.
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<br><br>
The crowd may have started to disperse, but you still attract a rousing bidding war for another few hours of <<=ps(setup.getNpcName("npc_janitor", "first"))>> personal services.<br>
<br>
<<=setup.getNpcName("npc_janitor", "first")>> somehow gets something of a second wind as you unstrap
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
him
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
from the spanking bench and
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
he
<<case "tomboy" 'forcefemme'>>
she
<</switch>>
parades back and forth, strutting and teasing,
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
his
<<case "tomboy" 'forcefemme'>>
her
<</switch>>
excitement rising as the bidding surpasses three figures... and rises all the way into the mid four in a final bidding war before a winner establishes themselves and you hand over <<=ps(setup.getNpcName("npc_janitor", "first"))>> leash
<<switch $npc_janitor.flags.choice>>
<<case "femboy">>
to a <<if $options.fem>>pair of dominatrixes<<else>>dominatrix/dom couple<</if>>.
<<case "fuckboy">>
to a sexy stud of a <<man>> why casually scoops <<=ps(setup.getNpcName("npc_janitor", "first"))>> up in <<his>> arms.
<<case "tomboy">>
to a scantily, yet fashionably dressed woman.
<<case 'forcefemme'>>
to a smirking girl whose eyes dance with excitement.
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
<br><br>
As the credits change hands you catch the eye of <<=setup.getNpcName('npc_sex_club', 'formal')>> who gives a silent nod, seeming both retroactively granting you permission... and to confirm that you have made a safe selection.<br>
<br>
[<<moveTo "event_janitor_graduation_7" 'Wish <<=setup.getNpcName("npc_janitor", "first")>> a good night.' 1800>>]
</div>/*#
#desc: finish
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'dominance' 'dominance_other' 'dom_mastery_janitor'>>
<<addCredits 6969>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
You give <<=setup.getNpcName("npc_janitor", "first")>> a parting kiss, and
<<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
he
<<case "tomboy" 'forcefemme'>>
she
<</switch>>
returns the embrace passionately... followed by a whispered "@@.npc_janitor;thank you... you really did make tonight perfect... and I promise I'll tell you how it went at work... <<if $player.identify_as == 'female'>>Mistress<<elseif $player.identify_as == 'male'>>Master<<else>>Overseer<</if>>.@@"<br>
<br>
You step away and watch <<=setup.getNpcName("npc_janitor", "first")>> depart with their new friend... and your pockets several thousand credits richer.<br>
<br>
A moment later <<=setup.getNpcName('npc_sex_club', 'formal')>> appears next to you,.<br>
<br>
"@@.npc_sex_club;Quite the show... quite the slave... and quite the trainer.@@" <<He npc_sex_club>> states, "@@.npc_sex_club;Now, formally, I should ask for a cut of the profits... but I already got more than my monies worth. Well done, it would seem you are one of... many talents.@@"<br>
<br>
You nod in thanks as <<=setup.getNpcName('npc_sex_club', 'formal')>> melts back into the crowd, and you decide to call it a night.<br>
<br>
[<<moveTo "room_sex_club_exterior" "Leave the club." 180>>]
</div>/*#
#desc: janitor tells you about post-auction
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 13: Utilities">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/utilities.png" setup.charImageJanitor()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_janitor", "first")>> how their night went after their "celebration" and <<switch $npc_janitor.flags.choice>>
<<case "femboy" "fuckboy">>
he
<<case "tomboy" 'forcefemme'>>
she
<<default>>
ERROR: unexpected npc_janitor.flags.choice <<=$npc_janitor.flags.choice>>
<</switch>>
grins. "@@.npc_janitor;Oh... it was just perfect! Being sold like that made me feel like such a whore... and that, well... that had me excited to go another several rounds by the time my buyer got me home!@@" <<=setup.getNpcName("npc_janitor", "first")>> blushes "@@.npc_janitor;to tell you the truth... I think I was the one wearing them out... I was begging to be fucked so many times they all but passed out and I ended up showering off myself and then slipping into bed! They made up for it in the morning though! After I played the part of oral alarm-clock they actually made me breakfast, and we had a nice little chat before they got me a ride home, I'll definitely keep an eye out next time I'm at the club! Thanks again... I never had the courage to act like this before and now? Now it feels like I'm able to not just be the real me, but that I also have the skills... and the looks! To really deliver on everything I want.@@"<br>
<br>
Further chatter is interrupted by <<=setup.getNpcName("npc_janitor", "first")>> getting a call on their work pager.<br>
<br>
"@@.npc_janitor;Whoop, looks like there's an orgy on the upper floors that needs some mopping up! Wish I could have been a part of it but hey, we all have to do our part for the company, right?@@"<br>
<br>
<<=setup.getNpcName("npc_janitor", "first")>> dashes off to the elevator, leaving you smiling in amusement at what they've become... and that you've accomplished.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: landlord calls about bondage play
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall from <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>. I sorry I in such a rush the other night, but I wished to speak of that. In helping you out I, of course, see your bondage arrangement, muy caliente, to be certain and I think, if you into such things, well... perhaps I help? Your automated system for solo play is impressive, but, I believe... more fun, and safer, with the partner? <<if $fetish.bestiality_hard && (setup.checkItemOwned("bitchsuit_black") || setup.checkItemOwned("bitchsuit_pink"))>>I notice some of your other equipment as I pass through house... perhaps I come over sometime and help you enjoy?<<else>>Perhaps I bring over something I think you enjoy?<</if>> You let me know when is good time.@@"<br>
<br>
[<<moveTo "event_bitchsuit_landlord_intro_2" "Actually... now is good." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_bitchsuit_landlord_intro_2" "You'll be sure to do that when you have time." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: respond to landlord bondage offer
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You ask <<=setup.getNpcName("npc_landlord","first")>> if now would be a good time for <<him npc_landlord>> to come over for some bondage play?<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7500)>>
"@@.npc_landlord;Such enthusiasm... actually, yes I on call, but no emergencies at present. I head over now... only, one question, do you prefer la negra, or the la rosa. Thas is, the black or the pink?@@"<br>
<br>
[<<moveTo "event_bitchsuit_landlord_1" "Black." 300 "<<set $scene.colour='black'>>">>]<br>
[<<moveTo "event_bitchsuit_landlord_1" "Pink." 300 "<<set $scene.colour='pink'>>">>]
<<else>>
"@@.npc_landlord;Ah! Such enthusiasm! Alas, <<callPlayer "npc_landlord">> I call between jobs, muy busy... but some other time, yes? You have number, let me know and hopefully schedules line up.@@"<br>
<br>
The two of you exchange good-byes and hang up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
<<else>>
You thank <<=setup.getNpcName("npc_landlord","first")>> for the offer and promise to be in touch.<br>
<br>
"@@.npc_landlord;Si, si... well, I on call, and it someone paging me with another emergency. We talk later, <<callPlayer "npc_landlord">>, yes? And hopefully our schedules line up for play.@@"<br>
<br>
The two of you exchange good-byes and hang up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: wait for landlord bitchsuit date
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkNaked()>>
Naked in your flat, you wait for <<=setup.getNpcName("npc_landlord","first")>> to head over.<br>
<br>
You hear the door chime, and confirm on the camera that it's <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<printThought "Heh, how things can change from a washing machine accident having <<him npc_landlord>> come in on me naked... to excitedly greeting my <<if State.hasPlayed('event_sexclub_date_landlord_10')>><<Master npc_landlord>><<else>><<boy npc_landlord>>friend<</if>> in nothing <<if $player.flags.collar.owner=='npc_landlord'>>but <<his npc_landlord>> collar<<else>>at all<</if>>.">><br>
<br>
[<<moveTo "event_bitchsuit_landlord_2" "Get the door." 60>>]
<<else>>
As you wait for <<=setup.getNpcName("npc_landlord","first")>> to come over you have a thought.<br>
<br>
<<printThought "Hmm... we're going to play anyway... why not get ready and greet <<him npc_landlord>> naked?">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_bitchsuit_landlord_1" 'Strip before <<=setup.getNpcName("npc_landlord","first")>> arrives.' 60 "<<removeAllClothing>>">>]
<</if>>
<</if>>
</div>/*#
#desc: landlord arrives for bitchsuit date
#status: RELEASED 0.9.4.0
#ignore_spell: <<switch,>>girl,puppy<<default>>puppy<<,as>><<case,>>boy,puppy<<case,switch>>
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You open the door wearing nothing but a smile and watch whatever thought <<=setup.getNpcName("npc_landlord","first")>> may have had fly free of <<his npc_landlord>> head. "@@.npc_landlord;<<callPlayer "npc_landlord">>!<<if !State.hasPlayed("event_bitchsuit_landlord_3")>> It like old times!<</if>> Oh, I could stare at your beauty for hours... but that not why I here... well, not ONLY why I here!@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> hurries inside and you steal a kiss... and a grind to enjoy just how hard you already have <<him npc_landlord>> under <<his npc_landlord>> work coveralls.<br>
<br>
<<if setup.checkItemOwned("bitchsuit_black") && $scene.color == 'black'>>
"@@.npc_landlord;When I here before I see you have something and...@@" <<he npc_landlord>> leads the way to your bedroom, quickly emerging from your wardrobe holding your bitchsuit. "@@.npc_landlord;Ah, this! I think we have a very fun time with you wearing this, yes?@@"
<<elseif setup.checkItemOwned("bitchsuit_pink")>>
"@@.npc_landlord;When I here before I see you have something, but you mention prefering a different colour, yes?@@" <<he npc_landlord>> leads the way to your bedroom where <<he npc_landlord>> lays a <<=$scene.color>> bitchsuit out on the bed. "@@.npc_landlord;I think we have a very fun time with you wearing this, yes?@@"
<<else>>
"@@.npc_landlord;You like the heavy, restrictive bondage, yes?@@" <<he npc_landlord>> states as <<he npc_landlord>> leads the way to your bedroom where <<he npc_landlord>> lays a <<=$scene.color>> bitchsuit out on the bed. "@@.npc_landlord;I think we have a very fun time with you wearing this, yes?@@"
<</if>>
<br><br>
Your eyes twinkle with excitement as you reply that you love bitchsuits!<br>
<br>
"@@.npc_landlord;No, no, that such vulgar word, not appropriate for my sweet, beautiful <<callPlayer "npc_landlord">>. No, this is <<switch $player.identify_as>><<case 'female'>>una good girl puppy suit<<case 'male'>>un good boy puppy suit<<default>>un good pup puppy suit<</switch>>. Here, I help you put on.@@"<br>
<br>
You blush at the compliment, even more excited as you hop up onto the bed and get on all fours for <<=setup.getNpcName("npc_landlord","first")>> to help you dress.<br>
<br>
[<<moveTo "event_bitchsuit_landlord_3" '"Good <<switch $player.identify_as>><<case "female">>girl puppy<<case "male">>boy puppy<<default>>puppy<</switch>>" time.' 300 "<<removeAllClothing>>">>]
</div>/*#
#desc: landlord dresses you in bitchsuit
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You smile and fold your limbs for <<=setup.getNpcName("npc_landlord","first")>> to gently begin wrapping the <<=$scene.colour>> puppy suit over you, covering you and transforming you bit by bit from enthusiastic sub... to cute <<switch $player.identify_as>><<case 'female'>>puppy-girl<<case 'male'>>puppy-boy<<default>>pup<</switch>>. <<=setup.getNpcName("npc_landlord","first")>> starts to reach for the hood when you growl and insist that <<he npc_landlord>> really tighten everything down. You grin in appreciation as the straps cinch down tight.<br>
<br>
Your eyes sparkle with excitement and love as you finally accept the hood, restricting your vision and having you gagged and on the way to drool-town... and then moan as your plug-tail is inserted. Your tail immediately begins wagging with excitement.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> helps you down off the bed and clips the leash to your collar. Standing over you with a smile.<br>
<br>
[<<moveTo "event_bitchsuit_landlord_4" 'Playtime!' 300>>]
</div>/*#
#desc: landlord leads through flat
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> smiles down at you and starts leading you on a slow walk through the flat. "@@.npc_landlord;Ah, you make such beautiful everything... maid in particular, but this is close! I not have pet for long time, too much moving, then places I stay no allow... plus I no really have the time to properly take care, normal dog need space to run... cute little pup like you, though? Heh, you no run very fast, anyway... more fun for the petting.@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> reaches down to scratch your neck and you rub up against <<his npc_landlord>> leg in happiness. "@@.npc_landlord;That's a good <<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>boy<<default>>pup<</switch>>... but I suppose a young puppy like you wants to play, so go on, now, fetch!@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> unclips your leash and tosses a ball to the far side of the living-room...<br>
<br>
[<<moveTo "event_bitchsuit_landlord_5" 'Fetch!' 300>>]
</div>/*#
#desc: landlord plays fetch
#status: RELEASED 0.9.4.0
#ignore_spell: <<switch,suit<<,suit<<case,'male'>>good,'female'>>good,as>><<case,suit<<default>>good,switch>>
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You go bounding... well, crawling, off across the room, struggling a bit to get your mask to hold onto the ball... and drooling all over it through your gag in the process, before you go running back.<br>
<br>
"@@.npc_landlord;Good <<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>boy<<default>>pup<</switch>>!@@" <<=setup.getNpcName("npc_landlord","first")>> gushes, giving you more head-rubs and flinging the ball back across the room for you to race after.<br>
<br>
You run back and forth playing fetch, the smallness of the "field" that is your living-room balanced out by the limitations placed on your movement by the bitchsuit <<printThought "Or, I guess that's <<switch $player.identify_as>><<case 'female'>>good girl puppy suit<<case 'male'>>good boy puppy suit<<default>>good pup puppy suit<</switch>>.">><br>
<br>
<<if setup.getTotalValue("dexterity") > 15>>
Even with your dexterity the
<<else>>
The
<</if>>
suit isn't the easiest thing to go running around in, and after a particularly spirited chase and return you end up slipping and flopping onto your back. "@@.npc_landlord;Oh, you getting tuckered out? You want some belly rubs?@@" <<He npc_landlord>> squats down to tickle your belly, causing you to wriggle round even more, your excited giggles causing something of a snowball effect that leaves you breathless.<br>
<br>
"@@.npc_landlord;Oops, someone is getting a bit too excited, come on let's see if we can find you something to drink!@@"<br>
<br>
[<<moveTo "event_bitchsuit_landlord_6" 'Follow.' 300>>]
</div>/*#
#desc: landlord feeds you
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> leads the way to the kitchen where <<he npc_landlord>> whistles as <<he npc_landlord>> pours you a bowl of
<<if $fetish.cum && $player.timebased.milking.cream_storage > setup.mLtoCum(500)>>
cum from the fridge.
<<elseif $fetish.milking && $player.timebased.milking.milk_storage >= 25>>
milk from the fridge.
<<else>>
water.
<</if>>
Still whistling and with you on <<his npc_landlord>> heels, <<he npc_landlord>> leads the way back to the living-room where <<he npc_landlord>> sets down your dish and leans back on the couch, <<his npc_landlord>> good hand reaching down to stroke your head as you eagerly lap away.<br>
<br>
"@@.npc_landlord;Such a good <<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>boy<<default>>pup<</switch>> you are, <<callPlayer "npc_landlord">>. Always coming up with new ways to make this old <<man npc_landlord>> happy...@@"<br>
<br>
You rumble in contentment as you rub up against <<his npc_landlord>> leg and finish up your drink.<br>
<br>
[<<moveTo "event_bitchsuit_landlord_7" 'Hop up next to <<him npc_landlord>>.' 300 "<<set $scene.feet=false>>">>]<br>
[<<moveTo "event_bitchsuit_landlord_7" 'Curl up next to <<his npc_landlord>> feet.' 300 "<<set $scene.feet=true>>">>]
</div>/*#
#desc: landlord rests after playing
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.feet>>
You curl up at <<if State.hasPlayed('event_sexclub_date_landlord_10')>>your <<Master npc_landlord>>'s<<else>><<=ps(setup.getNpcName("npc_landlord","first"))>><</if>> like a good pup, recovering from your earlier excitement and
<<else>>
You hop up onto the couch and <<=setup.getNpcName("npc_landlord","first")>> laughs. "@@.npc_landlord;So boisterous! You know, in my day, we no let the dogs up on the furniture... but, I think... the homeowner here, <<switch $player.identify_as>><<case 'female'>>she<<case 'male'>>he<<default>>they<</switch>> no mind, yes?@@"<br>
<br>
You share a kiss through your mask and then curl up on <<if State.hasPlayed('event_sexclub_date_landlord_10')>>your <<Master npc_landlord>>'s<<else>><<=ps(setup.getNpcName("npc_landlord","first"))>><</if>> lap, <<his npc_landlord>> gently petting your back as you
<</if>>
settle in, appreciating the opportunity for stillness, knowing that <<he npc_landlord>> is here for you.<br>
<br>
[<<moveTo "event_bitchsuit_landlord_8" 'Rest.' 3600>>]
</div>/*#
#desc: landlord finishes up after bitchsuit play
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You rest
<<if $scene.feet>>
at <<if State.hasPlayed('event_sexclub_date_landlord_10')>>your <<Master npc_landlord>>'s<<else>><<=ps(setup.getNpcName("npc_landlord","first"))>><</if>> feet
<<else>>
on <<if State.hasPlayed('event_sexclub_date_landlord_10')>>your <<Master npc_landlord>>'s<<else>><<=ps(setup.getNpcName("npc_landlord","first"))>><</if>> lap
<</if>>
both your and as <<=setup.getNpcName("npc_landlord","first")>> breathing slowing as you just take the time to relax in, well... perhaps not "comfort" given your very tight restraints, but contentment.<br>
<br>
Things are interrupted some time later by an old-fashioned ringtone, <<=setup.getNpcName("npc_landlord","first")>> snorting and starting in surprise as <<he npc_landlord>> wakes up to check <<his npc_landlord>> phone.<br>
<br>
"@@.npc_landlord;Ah! Sorry I doze off... I guess being with you, the opportunity to relax... well, I hope you enjoy, even if I a little dull.@@"<br>
<br>
You <<if $scene.feet>>hop to your feet and nod<<else>>hop down to the ground and nod,<</if>> giving a muffled "@@.pc;Arf!@@" to show how much you've been enjoying yourself.<br>
<br>
"@@.npc_landlord;Unfortunately, I now have to go... someone water leaking and, well... I no take care of it now, it only get worse. Come, I help you out of your suit.@@"<br>
<br>
You follow after <<=setup.getNpcName("npc_landlord","first")>> and <<he npc_landlord>> helps you back up onto the bed before releasing your buckles.<br>
<br>
[<<moveTo "event_bitchsuit_landlord_9" 'Freedom!' 300>>]
</div>/*#
#desc: landlord leaves after bitchsuit
#status: RELEASED 0.9.4.0
#ignore_spell: roughened
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You wince as your limbs stretch free for the first time in over an hour... but <<=setup.getNpcName("npc_landlord","first")>> is already there helping massage life back into them.<br>
<br>
"@@.npc_landlord;There there, careful, you've been a good, good <<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>boy<<default>>pup<</switch>>, just let flow back through, we don't want you cramping up.@@"<br>
<br>
You smile blissfully up as <<=ps(setup.getNpcName("npc_landlord","first"))>> work-roughened, yet tender and gently caressing hands roam over your body, rubbing away your minor aches and leaving you grinning like a fool... and lunging up for a kiss the instant <<he npc_landlord>> removes your mask.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> kisses you back, stroking your hair and holding you up as you try to drag <<him npc_landlord>> into bed on top of you.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>, mi amore! I wish that I could stay longer... but work!@@"<br>
<br>
You do an exaggerated pout and cross your arms over your chest for a moment before leaping back into <<his npc_landlord>> arms to tell <<him npc_landlord>> you understand, and how much fun you had today.<br>
<br>
"@@.npc_landlord;Si, si, me, as well,@@" <<=setup.getNpcName("npc_landlord","first")>> replies, returning your embrace and then gently setting you down.<br>
<br>
Still naked, you escort <<him npc_landlord>> out of the flat... your still-inserted puppy tail wagging the whole way.<br>
<br>
[<<moveTo "room_foyer" 'What to do with the rest of the day...' 60>>]
</div>/*#
#desc: start to clean landlord's apartment
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.cleaning.last_landlord_clean = $now>>
<<set $npc_landlord.flags.cleaning.times_cleaned += 1>>
<<set $scene.give_outfit = $npc_landlord.flags.thorough_cleaning && setup.checkVisibleClothingTag('maid') <= 60 && setup.landlordFemaleCheck($player, $npc_landlord) && $player.sec_style.clothing.female && !$npc_landlord.flags.cleaning.gave_maid_outfit>>
<<if $scene.give_outfit>>
<<addItem "maid_clothing_box">>
<<set $npc_landlord.flags.cleaning.gave_maid_outfit = true>>
<</if>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<set $npc_landlord.flags.seen_maid = true>>
<<set $npc_landlord.flags.cleaning.cleaned_maid = true>>
<</if>>
<<if $npc_landlord.stage >= 4 && $npc_landlord.flags.cleaning.maid_work && !$scene.give_outfit && (!State.hasPlayed("event_landlord_maid_play_intro_1") || random(1,5) == 1)>>
<<initRoom>>
<<moveTo "event_landlord_maid_play_intro_1">>
<<else>>
<<set $scene.rentDiscount = 20>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_10'
10
'event_psychiatrist_theme_landlord_cleaning'
false
>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Apartment">>
<<initRoom>>
<<include playerMenu>>
<<if !$npc_landlord.flags.thorough_cleaning>>
<<createAdvBGR "./images/locations/landlord_apt_filty.png">>
<<else>>
<<createAdvBGR "./images/locations/landlord_apt.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_landlord.stage > 1 && $npc_landlord.flags.cleaning.maid_work>>
You spend some time cleaning up <<=ps(setup.getNpcName('npc_landlord', 'first'))>> flat.<br>
<br>
At the end of it all <<he npc_landlord>> returns and confirms that you'll be getting another <<=$scene.rentDiscount>> discount off your rent this month.<br>
<br>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4 && State.hasPlayed("theme_ai_admin_first_1")>>
[<<moveTo 'event_admin_stage5_recruit_landlord_1' 'Ask <<him npc_landlord>> for help with <<=setup.getNpcName("npc_admin","first")>>.' 300 "<<set $scene.return='room_foyer'>><<set $player.money.rent_reduction += $scene.rentDiscount>>">>]<br>
<</if>>
<<if $npc_barista.stage == 5 && $npc_barista.flags.location == "">>
[<<moveTo 'event_landlord_help_barista_1' 'Ask <<him npc_landlord>> about a place for the work you need to deprogram <<=setup.getNpcName("npc_barista","nickname")>>.' 300 "<<set $scene.return='room_foyer'>><<set $player.money.rent_reduction += $scene.rentDiscount>>">>]<br>
<</if>>
<<if State.hasPlayed("event_tournament_13") && !$npc_retention.flags.cybernetic && !State.hasPlayed("event_tournament_win_1")>>
[<<moveTo 'event_tournament_tip_1' 'Tell <<him npc_landlord>> about the martial arts contest you were competing in.' 300 "<<set $scene.return='room_foyer'>><<set $player.money.rent_reduction += $scene.rentDiscount>>">>]<br>
<</if>>
<<if $npc_landlord.stage >= 4>>
[<<moveTo 'event_landlord_pregnant_1' 'Ask <<him npc_landlord>> about pregnancy...' 300 "<<set $scene.return='room_foyer'>><<set $player.money.rent_reduction += $scene.rentDiscount>>">>]<br>
<</if>>
[<<moveTo "room_foyer" "Return to your apartment." 120 "<<set $player.money.rent_reduction += $scene.rentDiscount>>">>]
<<elseif $npc_landlord.flags.thorough_cleaning>>
You spend the morning picking up and cleaning <<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment. Overall it isn't too bad, just the usual mess of dishes, clothes and clutter that can pile up over time.<br>
<br>
Looking with satisfaction at a job well done you turn around to find that <<=setup.getNpcName('npc_landlord', 'first')>> has returned and is standing in the doorway.<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60 && $npc_landlord.stage < 2>>
"@@.npc_landlord;Ah, I did not mean to interrupt, you are just so lovely to watch.@@"<br>
<br>
<<He npc_landlord>> smiles tenderly and it almost looks like <<he npc_landlord>> is going to reach out to touch you.<br>
<br>
"@@.npc_landlord;Anyway, I am, as always, so grateful, I only wish I could offer something more than a mere reduction in your rent.@@"<br>
<br>
[<<moveTo "event_landlord_clean_leave" "Thank <<him npc_landlord>> and be on your way." 60 "<<set $player.money.rent_reduction += $scene.rentDiscount>>">>]<br>
<<if State.hasPlayed("event_tournament_13") && !$npc_retention.flags.cybernetic && !State.hasPlayed("event_tournament_win_1")>>
[<<moveTo 'event_tournament_tip_1' 'Tell <<him npc_landlord>> about the martial arts contest you were competing in.' 300 "<<set $scene.return='room_foyer'>><<set $player.money.rent_reduction += $scene.rentDiscount>>">>]<br>
<</if>>
<<if setup.getTotalValue("oral") >= 5>>
[<<moveTo "event_landlord_clean_seduction_1" "Seduce <<him npc_landlord>>." 120 "<<set $player.money.rent_reduction += $scene.rentDiscount>><<set $player.money.rent_reduction += $scene.rentDiscount>>">>]
<<else>>
[@@.link_locked;To try and seduce your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> you'd want to be more skilled with your mouth.@@]
<</if>>
<<else>>
<<if $scene.give_outfit>>
"@@.npc_landlord;Wonderful work.@@"<br>
<br>
<<He npc_landlord>> pauses, frowning at your attire.<br>
<br>
"@@.npc_landlord;You do all this cleaning, but that outfit... it is not really appropriate, no?@@"<br>
<br>
Heading to <<his npc_landlord>> bedroom <<he npc_landlord>> roots around for a bit in <<his npc_landlord>> closet before finding a box and handing it to you.<br>
<br>
"@@.npc_landlord;Here, I think this would be more appropriate for the next time... if you feel like wearing it, of course.@@"<br>
<br>
You're a bit puzzled at what could be inside, but <<he npc_landlord>> changes the subject by stating <<he npc_landlord>> has a proposal for you.<br>
<br>
[<<moveTo "event_landlord_offer_work" "Listen to <<his npc_landlord>> offer." 0 "<<set $player.money.rent_reduction += $scene.rentDiscount>>">>]
<<elseif $npc_landlord.flags.cleaning.gave_maid_outfit>>
"@@.npc_landlord;Well done, as usual. Maybe next time you'll do it wearing the outfit I gave you?@@"
<<else>>
"@@.npc_landlord;Good job, thanks again for the help.@@"
<</if>>
<br><br>
"@@.npc_landlord;That will be <<=$scene.rentDiscount>> off your next rent check, thanks again for the assistance.@@"<br>
<br>
[<<moveTo "room_foyer" "Return to your apartment." 120 "<<set $player.money.rent_reduction += $scene.rentDiscount>>">>]
<</if>>
<<else>>
After a few minutes spent starting to clean <<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment you realise you have a decision to make. You can spend a couple hours picking things up and making it roughly liveable or you can knuckle down and devote probably the whole day to really going from the ground up to try and get things in order.<br>
<br>
<<set $scene.postponeHypno=false>>
[<<moveTo "event_landlord_cleaning_2" "Just do the basics. (4 hours)" 14400 "<<if $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && !$currentTasks.psychiatrist_endless_hypnosis_1.finished && setup.hoursToDate($now, setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) <= 4>><<set $scene.postponeHypno=true>><<postponeTask 'psychiatrist_endless_hypnosis_1' 3>><</if>>">>]<br>
<<if $currentTasks.hasOwnProperty('manager_visit') && setup.daysToDate($now, setup.getTaskDueDate('manager_visit')) == 0>>
[@@.link_locked;<<=setup.getNpcName('npc_manager', 'formal')>> is coming by this evening for dinner. You should probably consider cleaning your flat. You definitely don't have time to spend the whole day on <<=ps(setup.getNpcName('npc_landlord', 'first'))>>!@@]
<<else>>
[<<moveTo "event_landlord_cleaning_2_thorough_1" "Settle in for the day and do a thorough cleaning. (10 hours)" 36000 "<<if $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && !$currentTasks.psychiatrist_endless_hypnosis_1.finished && setup.secondsToDate($now, setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) <= 36000>><<set $scene.postponeHypno=true>><<postponeTask 'psychiatrist_endless_hypnosis_1' 3>><</if>>">>]
<</if>>
<</if>>
</div>/*#
#desc: normal cleaning of landlord's filthy apartment
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_landlord' 1>>
<<if $player.timebased.dirty < 50>>
<<set $player.timebased.dirty = 50>>
<<else>>
<<set $player.timebased.dirty += 20>>
<</if>>
<<alterStatAllWorn 'dirty' '["add",20]'>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<set $scene.rentDiscount *= 1.5>>
<</if>>
<<set $player.money.rent_reduction += $scene.rentDiscount>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png">>
<div id="invframe" class="scrolltext">
You spend the morning picking things up and doing the dishes and the other sort of "normal" day to day cleaning that <<=setup.getNpcName('npc_landlord', 'first')>> is apparently too busy to get to. It's a bit like treating the symptom without addressing the underlying disease, but at the end of it the apartment is at least a bit more liveable.<br>
<br>
Satisfied that you've done your part, you head home, a text a short while later indicating that you seem to have just missed <<=ps(setup.getNpcName('npc_landlord', 'first'))>> return, but that <<he npc_landlord>> is satisfied with your work and will reduce your next rent payment by <<=$scene.rentDiscount>>.<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<He npc_landlord>> tries to hide it, but there's no mistaking the way <<he npc_landlord>> stares at you in your maid's outfit and you have a feeling that cleaning in such attire has earned you a slightly larger credit.
<</if>>
<br><br>
<<if State.hasPlayed("event_tournament_13") && !$npc_retention.flags.cybernetic && !State.hasPlayed("event_tournament_win_1")>>
[<<moveTo 'event_tournament_tip_1' 'Mention the martial arts contest you were competing in.' 300 "<<set $scene.return='room_foyer'>>">>]<br>
<</if>>
[<<moveTo "room_foyer" "Continue." 0>>]
</div>/*#
#desc: thoroughly clean landlord's filthy apartment
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png">>
<div id="invframe" class="scrolltext">
You take a deep breath and start formulating a mental plan. Cleansing with fire would probably cause additional problems, and you have no nearby river to divert for this Herculean task so you are forced to make a more "pedestrian" plan, breaking things into sections and starting off clearing out the trash and organising the rest.<br>
<br>
If anything, it is even more work than you anticipated, but you stick to it, making numerous trips to the garbage chute and seemingly running every item of clothing <<he npc_landlord>> has through the wash as you systematically go through the apartment.<br>
<br>
Running across <<getWordGod>> knows what in the course of your cleaning, it isn't long before your clothes are stained and dirty, your fingers stiff from scrubbing and your back achey from constantly leaning over to pick up yet another discarded item.<br>
<br>
Still, your progress is steady and by the time evening rolls around you find yourself proudly looking around a totally clean, vacuumed, polished and organised apartment. Small — smaller even than your own place, you surmise, but kind of homey.<br>
<br>
You are mentally reviewing your original plan to see if you missed anything when you hear a sound at the door.<br>
<br>
"@@.npc_landlord;Madre de dios...@@" <<He npc_landlord>> states, looking in awe around the flat before turning back towards you.<br>
<br>
[<<moveTo "event_landlord_cleaning_2_thorough_2" "Continue." 60>>]
</div>/*#
#desc: rewarded for thoroughly cleaning landlord's apartment
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.dirty = 100>>
<<alterStatAllWorn 'dirty' '["add",50]'>>
<<set $npc_landlord.flags.thorough_cleaning = true>>
<<incrementEmotion 'affection' 'npc_landlord' 2>>
<<set $scene.give_maid = setup.checkVisibleClothingTag('maid') <= 60 && setup.landlordFemaleCheck($player, $npc_landlord) && $player.sec_style.clothing.female != "">>
<<if $scene.give_maid>>
<<addItem 'maid_clothing_box'>>
<<set $npc_landlord.flags.cleaning.gave_maid_outfit = true>>
<</if>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<set $npc_landlord.flags.seen_maid = true>>
<<set $scene.rentDiscount *= 3>>
<<else>>
<<set $scene.rentDiscount *= 2>>
<</if>>
<<set $player.money.rent_reduction += $scene.rentDiscount>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if setup.checkVisibleClothingTag('maid') > 60 && !State.hasPlayed("event_landlord_offer_work")>>
<<=ps(setup.getNpcName("npc_landlord","first"))>> initial shock blossoms into <<if $npc_landlord.fem>>child<<else>>boy<</if>>-like wonder as <<he npc_landlord>> wanders through the flat, looking through each spotless room and frequently glancing back at you, in obvious awe.<br>
<br>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>... I, I cannot even remember when my place looked this good! You are truly worthy of your outfit, a magical maid indeed and I only wish I could do more to thank you than merely reduce your rent by <<=$scene.rentDiscount>> credits...@@"<br>
<br>
<<He npc_landlord>> pauses before suddenly having an idea.<br>
<br>
[<<moveTo "event_landlord_offer_work" "Listen to <<his npc_landlord>> proposal." 60>>]
<<else>>
With a permanent expression of awe, <<=setup.getNpcName("npc_landlord","first")>> walks through the flat, even more impressed with each discovery of your thorough work.<br>
<br>
"@@.npc_landlord;I—I do not have the words... I cannot even recall when mi casa looked this clean...@@"<br>
<br>
<<His npc_landlord>> gaze drifting down from your face to your dirty attire, <<he npc_landlord>> frowns slightly.<br>
<br>
<<if $scene.give_maid>>
"@@.npc_landlord;Oh my, all this work and you are the one left dirty! Truly that was the wrong outfit to be cleaning in, let me get you something to wear for the next time.@@"<br>
<br>
With an excited smile on <<his npc_landlord>> face, <<he npc_landlord>> heads back to <<his npc_landlord>> bedroom, digging through <<his npc_landlord>> closet before popping up holding a box.<br>
<br>
"@@.npc_landlord;First off, I will be reducing your rent by <<=$scene.rentDiscount>> in thanks for the muy bueno job you just did. And now... here, this would be a more appropriate outfit for cleaning, I think.@@"<br>
<br>
You start to peel at the tape holding it closed, but <<he npc_landlord>> puts out <<his npc_landlord>> hands to stop you.<br>
<br>
"@@.npc_landlord;No, no! At home, on your own but... if you wish to wear it the next time you come over to clean well...@@"<br>
<br>
<<His npc_landlord>> voice trails off and you would swear you saw a hint of a blush <<if $npc_landlord.fem>>before she turns her head to avoid your gaze<<else>>beneath his scruffy beard<</if>>.<br>
<br>
More than a little intrigued, you thank <<him npc_landlord>> for the gift only for <<him npc_landlord>> to make another proposal.<br>
<br>
[<<moveTo "event_landlord_offer_work" "Listen to <<his npc_landlord>> proposal." 0>>]
<<else>>
<<He npc_landlord>> shakes <<his npc_landlord>> head in sorrow at the mess you've made of yourself.<br>
<br>
"@@.npc_landlord;I guess it is a good thing I repaired your washer/dryer, si?@@" You laugh along at the joke and <<he npc_landlord>> smiles. "@@.npc_landlord;Thank you again for all the work, hopefully next time it not so bad. So, per our agreement I will reduce your rent by a total of <<=$scene.rentDiscount>>.@@"<br>
<br>
Transaction concluded you head back to your apartment.<br>
<br>
<<if $scene.postponeHypno>>
As you walk home you check your phone. It seems you were so busy you missed it ringing for your VR therapy appointment. You do, however, find a helpful text indicating that <<=setup.getNpcName("npc_psychiatrist","formal")>> has already re-scheduled you for Wednesday.<br>
<br>
<</if>>
[<<moveTo "room_foyer" "Home" 0>>]
<</if>>
<</if>>
</div>/*#
#desc: intro to landlord maid oral
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You've finished most of the cleaning and around doing a final vacuuming pass to get the flat in spotless condition when <<=setup.getNpcName("npc_landlord","first")>> returns early, first smiling at you in your maid outfit, then looking across you work in awe.<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>! You no need to work this hard. I only end up tracking in dirt anyway...@@"<br>
<br>
<<printThought "Hmm... this is an opportunity to have a bit of fun with my <<Master npc_landlord>>...">><br>
<br>
[<<moveTo "event_landlord_maid_good_1" "Be a good girl and ask if there is something else <<he npc_landlord>> would like <<his npc_landlord>> maid-slave to clean?" 300>>]<br>
[<<moveTo "event_landlord_maid_brat_1" "Brat it up and ask what <<he npc_landlord>>'s going to do to stop you..." 300>>]
</div>/*#
#desc: tease landlord as brat
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 10 'little' $SEEN_FRIEND>>
<<changeHorny 20>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You wink back at <<=setup.getNpcName("npc_landlord","first")>> and tease <<him npc_landlord>> by asking if <<he npc_landlord>>'s going to stop you?<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> smiles back at you, staring at you star-eyed. "@@.npc_landlord;Stop you? No, no, I never get in the way of a gorgeous maid doing her work... I just say... you no have to work so hard.@@"<br>
<br>
You adopt a sly grin and wiggle your butt, continuing to vacuum as you start to shrug out of your maid outfit, teasing <<=setup.getNpcName("npc_landlord","first")>> and asking if you're still expected to clean if you aren't dressed as a maid... or if, perhaps <<he npc_landlord>> has a different place in mind for you...<br>
<br>
You can't quite tell if <<=setup.getNpcName("npc_landlord","first")>> is just playing along to tease you back, or if <<he npc_landlord>> remains really that dense as <<he npc_landlord>> replies. "@@.npc_landlord;I tell you you no need to clean anymore maid or no...@@" at the word "no" you finish shedding your maid's dress, dropping it in sync with <<his npc_landlord>> word as you bite your lip and stare <<him npc_landlord>> down. <<He npc_landlord>> gulps and shifts in place, seeming to have a sudden issue of "uncomfortably tight pants" as <<he npc_landlord>> can't take <<his npc_landlord>> eyes off of you. "@@.npc_landlord;... but if you no wearing clothes, and you finished... how you go back to your flat?@@"<br>
<br>
[<<moveTo "event_landlord_maid_brat_2" "Cut the subtlety." 300>>]
</div>/*#
#desc: landlord starts fucking
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 10 'little' $SEEN_FRIEND>>
<<changeHorny 20>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You stalk towards <<=setup.getNpcName("npc_landlord","first")>> and let your body do the talking before tacking on that you aren't planning on going home... and you aren't planning on putting your clothes on either... or finishing the vacuuming... and what is <<he npc_landlord>> going to do about it?<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> hesitates a moment longer and you pound the nail with the proverbial sledgehammer of "@@.pc;My duty may be to clean... but I want you to treat me DIRTY.@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> finally catches up with the situation, as <<he npc_landlord>> takes hold of your collar and pulls you into <<him npc_landlord>> "@@.npc_landlord;If you no clean... and you no maid... and you naked in mi casa... well... maybe all there is for you is to bend you over the sofa and fuck this naughty brat?@@"<br>
<br>
[<<moveTo "event_landlord_maid_brat_3" "Yes, please! (present your rear)" 300 "<<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if setup.canSexOrRemoveChastity("vag")>>
[<<moveTo "event_landlord_maid_brat_3" "Present your belt and say <<he npc_landlord>>'d have to unlock you for that..." 300 "<<set $scene.anal=false>>">>]
<<else>>
[@@.link_locked;Your chastity belt is in the way of her strap-on-fucking you.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_landlord_maid_brat_3" "Spread your legs... (present your pussy)" 300 "<<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: remove plug and panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 10 'little' $SEEN_FRIEND>>
<<changeHorny 20>>
<<set $scene.removePanties = setup.checkItemTypeWorn("panties")>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePanties>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<removeItem $scene.panties true>>
<</if>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' $npc_landlord.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You start to drag <<=setup.getNpcName("npc_landlord","first")>> over to the couch, but <<he npc_landlord>> is finally with the program and <<he npc_landlord>> ends up pushing you over it at the last minute, giving you a not-so-hard slap on the ass as <<he npc_landlord>> reaches for <<his npc_landlord>> fly.<br>
<br>
"@@.npc_landlord;You naughty brat who no finish her work... you luck you so hot, rather than you go around using vacuum to suck... we see how you work to to fuck, si?@@"<br>
<br>
You let out an excited growl as <<he npc_landlord>><<if $scene.removePanties>> tears off your panties and throws them on the floor. "@@.npc_landlord;See? Look at mess you make! Naughty girl!@@"<br>
<br>
Another spank has you gasping and eager for something more
<<if $scene.anal>>
and <<he npc_landlord>> obliges, bending you even further over the couch to <<if $scene.removePlug>>remove your plug and replace it with<<else>>insert<</if>> <<his npc_landlord>> cock in your ass<</if>>.
<<else>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
as <<he npc_landlord>> unlocks your chastity belt and removes the front shield to reveal your dripping snatch.
<</if>>
<<=setup.getNpcName("npc_landlord","first")>> wastes no further time taking you from behind, <<his npc_landlord>> hard cock sliding easily into your wet puss.
<</if>>
<br><br>
You moan in delight as <<=setup.getNpcName("npc_landlord","first")>> starts to thrust, submissively groaning even harder when <<he npc_landlord>> adds a controlling hand on the back of your head, pushing you into the couch as <<he npc_landlord>> thrusts into you.<br>
<br>
"@@.npc_landlord;Look at this room!@@" <<=setup.getNpcName("npc_landlord","first")>> forcing you to look at your discarded clothing. "@@.npc_landlord;You think this any proper way for a maid to behave? No, this the work of a naughty girl. Naughty girl who needs to be put in her place!@@"<br>
<br>
[<<moveTo "event_landlord_maid_brat_4" 'Yes, <<=setup.getNpcName("npc_landlord","custom", "<<if $fetish.daddy>><<Daddy npc_landlord>><<else>><<Master npc_landlord>><</if>>")>>.' 300>>]
</div>/*#
#desc: vacuum suck
#status: RELEASED 0.9.4.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 15 'little' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_landlord.penis_size 'very' $SEEN_FRIEND>>
<<changeHorny 20>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
"@@.pc;Yes, <<=setup.getNpcName("npc_landlord","custom", "<<if $fetish.daddy>><<Daddy npc_landlord>><<else>><<Master npc_landlord>><</if>>")>>,@@" you moan while pressing back into <<him npc_landlord>>.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> responds with another swat on the rear that only has your engine reving harder, especially when <<he npc_landlord>> picks you up and flips you over to pin you down on the couch and continue to fuck while looking down at you.<br>
<br>
"@@.npc_landlord;This what you want? Make mess on mi nice clean couch with your horny ways?@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_landlord","custom", "<<if $fetish.daddy>><<Daddy npc_landlord>><<else>><<Master npc_landlord>><</if>>")>>!@@" You moan with even greater passion, your enthusiasm returned at is feels like <<his npc_landlord>> cock somehow gets even harder inside of <<if $scene.anal>>your ass<<else>>you<</if>>.<br>
<br>
"@@.npc_landlord;Silly brat! Fail to dress as maid, and forget how use the simplest of tools... well, <<Master npc_landlord>> <<=setup.getNpcName("npc_landlord","last")>> give you lesson on use of vacuum... see if you remember so you do your job next time!@@"<br>
<br>
You're having plenty of time getting plowed by <<=ps(setup.getNpcName("npc_landlord","first"))>> hard cock, so you barely even pay attention to where this is going... until <<=setup.getNpcName("npc_landlord","first")>> has the vacuum nozzle in hand, and is aiming it right at your
<<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage")>>
hard <<getWordMyPenis>>.<br>
<br>
You moan as the suction clicks on, pulling strongly at your hard <<getWordMyPenis>>, as you get a machine-driving suck... as <<=setup.getNpcName("npc_landlord","first")>> continues to fuck.
<<else>>
already stiff nipples.<br>
<br>
You moan as the suction clicks on,
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
the whining as it struggles mightily with your mighty breasts.
<<case 'large'>>
the motor struggling with your large breasts.
<<case 'medium'>>
the motor is pushed to the limit as it sucks on one of your breasts.
<<case 'small'>>
and it sucks on one of your small breasts.
<<case 'none'>>
as it envelops and sucks on one of your nipples
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<</if>>
<br><br>
"@@.npc_landlord;See? This what happen to bad <<callPlayer "npc_landlord">>s!@@" <<=setup.getNpcName("npc_landlord","first")>> re-iterates as he fucks and sucks you.<br>
<br>
At this point, folded in half on the couch, your <<Master npc_landlord>>'s glorious cock <<if $scene.anal>>in your ass<<else>>inside of you<</if>> while
<<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage")>>
you get literally a vacuum-grade sucking off...
<<else>>
<<=setup.getNpcName("npc_landlord","first")>> continues to tease your nipples with the slurping vacuum...
<</if>>
all you can really do is moan and let out a stream-of-consciousness agreement.<br>
<br>
[<<moveTo "event_landlord_maid_brat_5" 'Yes, yes!' 300>>]
</div>/*#
#desc: orgasm as brat
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You call out in excitement as <<=setup.getNpcName("npc_landlord","first")>> continues to fuck and tease... only to grab you by the collar at the last moment, pulling you up and in for a kiss as your legs wrap around <<him npc_landlord>> and the still-running vacuum grips awkwardly
<<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage")>>
to your <<getWordMyPenis>>...
<<else>>
to your left tit...
<</if>>
and the both of you cum, hard, <<=setup.getNpcName("npc_landlord","first")>> orgasm marked by almost quiet restraint... which you cancel out by shouting your ecstasy loud enough to make certain any neighbors know that is getting some... and giving it GOOD.<br>
<br>
You collapse into <<=ps(setup.getNpcName("npc_landlord","first"))>> lips and arms as <<he npc_landlord>> holds you you up with ease<<if $fetish.cum>>, pumping <<his npc_landlord>> <<getWordCum>> deep inside of you<</if>>, waiting until the aftershocks of both of your orgasms start to fade before turning and dropping onto the couch, you still straddling <<his npc_landlord>> lap, passionately kissing your <<man npc_landlord>>... your <<Master npc_landlord>>.<br>
<br>
[<<moveTo "event_landlord_maid_brat_6" 'Cuddle!' 300>>]
</div>/*#
#desc: landlord has to leave after brat
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.rentDiscount = 20>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<set $npc_landlord.flags.seen_maid = true>>
<<set $scene.rentDiscount *= 3>>
<<else>>
<<set $scene.rentDiscount *= 2>>
<</if>>
<<set $player.money.rent_reduction += $scene.rentDiscount>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> silences the vacuum and the two of you cuddle happily on the couch... only to, what seems like yet again, be interrupted by a buzzing from <<=ps(setup.getNpcName("npc_landlord","first"))>> phone.<br>
<br>
"@@.npc_landlord;Ack, I sorry, <<callPlayer "npc_landlord">>! I need to take this one... it seem perhaps the building cheap out on the washing machines... because someone else has theirs on fire, too!... though, whoever it is, they no as cute as you!@@"<br>
<br>
You giggle and kiss <<him npc_landlord>> again, quickly slipping back into your maid outfit to give <<=setup.getNpcName("npc_landlord","custom", "<<if $fetish.daddy>><<Daddy npc_landlord>><<else>><<Master npc_landlord>><</if>>")>> a PROPER send-off.<br>
<br>
"@@.npc_landlord;Ah! Mi <<callPlayer "npc_landlord">> es mas bonita! And <<switch $player.identify_as>><<case 'female'>>she<<case 'male'>>he<<default>>they<</switch>> earn another <<=$scene.rentDiscount>> reduction in the rent.@@"<br>
<br>
You thank <<him npc_landlord>> with a wink as you go opposite directions up the hallway.<br>
<br>
[<<moveTo "room_foyer" 'Head back to your flat.' 180>>]
</div>/*#
#desc: be good maid intro
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.rentDiscount = 20>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<set $npc_landlord.flags.seen_maid = true>>
<<set $scene.rentDiscount *= 3>>
<<else>>
<<set $scene.rentDiscount *= 2>>
<</if>>
<<set $player.money.rent_reduction += $scene.rentDiscount>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
TODO. rent reduced by <<=$scene.rentDiscount>>.<br>
<br>
[<<moveTo "room_foyer" 'Head back to your flat.' 180>>]
</div>/*#
#desc: clean apartment with dog, dog follows you around and comes on to you
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("bestiality") > 0>>
<<applyExperience 'bestiality' 1 'insignificant' $ALONE>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning")>>
<div id="invframe" class="scrolltext">
As you set about your task of cleaning the apartment, your new canine friend stays close. Cleaning and organising your way along, you find you enjoy the company, occasionally pausing to give him a belly rub or a scratch behind the ears in between tasks.<br>
<br>
As you lean over to pick up a basket of laundry things take a slight turn, the dog behind you nosing up under your skirts.
<<if setup.checkItemTypeWorn("plug")>>
You let out a gasp as his nose bumps against the base of the <<=setup.getItemTypeName("plug")>> occupying your rear.
<<elseif setup.checkItemTypeWorn("cage")>>
You gasp as his nose bumps against your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>.
<<else>>
As if it were a butt-seeking missile, his nose burrows between your cheeks.
<</if>>
<br><br>
You stand up straight and look back as he licks his lips.<br>
<br>
<<printThought "Is he... coming on to me?">><br>
<br>
A glance below at his rigid canine member would seem to support the assessment and you have a sudden realisation of how large... and strong he is.<br>
<br>
Walking towards you he rubs up against your leg, letting out a low pleased growl when you reach down to scratch his back.<br>
<br>
<<printThought "Yup, he is DEFINITELY coming on to me... what do I want to do about it?">><br>
<br>
Glancing down you notice that he is dripping pre on the floor, if you don't do something about it you'll be cleaning up after him for as long as he follows you.<br>
<br>
[<<moveTo "event_maid_work_dog_1_1" "Get him off." 0 "<<set $scene.sex = true>>">>]<br>
[<<moveTo "event_maid_work_dog_1_1" "Just continue your cleaning." 0 "<<set $scene.sex = false>>">>]
</div>/*#
#desc: jerk off dog
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = Math.floor((1+.2*$npc_landlord.flags.cleaning.maid_dog)*$npc_landlord.flags.cleaning.base_pay)>>
<<addCredits $scene.pay>>
<<if $scene.sex>>
<<set $npc_landlord.flags.cleaning.maid_dog = 1>>
<<if !setup.hasThreshold('bestiality', 'dog', 'basic')>>
<<setThreshold 'bestiality' 'dog' 'basic_alt'>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_dog'
0
'event_psychiatrist_session_bestiality_dog'
false
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_dog'
0
'theme_church_confession_dog'
true
>>
<<else>>
<<applyExperience 'bestiality' 2 'normal' $ALONE>>
<</if>>
<<if setup.getTotalValue("cum") >= 10>>
<<applyExperience 'cum' 12 'normal' $ALONE>>
<<else>>
<<applyExperience 'cum' 3 'normal' $ALONE>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
As soon as you drop to your knees, the dog rolls onto his back, bouncing his hips to draw attention to his hard, dripping cock.<br>
<br>
<<if setup.getTotalValue("bestiality") > 3>>
<<printThought "Yum, I wish I had more time to really savour this...">>
<<else>>
<<printThought "Huh, he's certainly a randy one.">>
<</if>>
<br><br>
Wrapping your fingers around his steamy-hot cock only drives home how large he is.<br>
<br>
You start stroking and he barks and flails his paws in pleasure, his knot growing intimidatingly large as he pants in excitement.<br>
<br>
<<if setup.getTotalValue("bestiality") > 3 && setup.getTotalValue("anal") >= 10>>
<<printThought "Mmm, I wish that was swelling in my ass...">>
<<else>>
<<printThought "Oh my...">>
<</if>>
<br><br>
Panting faster he looks up at you and lets out a pleased whine as he cums, spurting long, ropey lengths of cum all over his belly.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
First licking your hand clean of his deliciously strong cum you lean over to slurp up the rest before drying him off and returning to your cleaning.
<<else>>
His cum is as fragrant as it is voluminous and you hurriedly reach for a towel to clean him up before he drips all over the place.
<</if>>
<br><br>
Getting back to work, your canine friend is friendly and subdued, still following you around, but in a more cuddly, protective way than before.<br>
<br>
Hearing a sound at the door you head back to the living room to greet the residents, a normal-looking couple.<br>
<br>
"@@.generic_female1;Oh, Zeus likes you!@@" the woman shouts with glee at the way the dog is rubbing up against your leg and wagging his tail.<br>
<br>
"@@.generic_male1;Hope he wasn't any trouble.@@" <<if $options.fem>>Her wife<<else>>The man<</if>> states as <<he>> starts counting out your pay.<br>
<br>
You quickly reassure them that he was very friendly and really no bother, thanking them for the <<=$scene.pay>> credits and saying goodbye to Zeus.
<<else>>
As you continue on with the cleaning, the dog becomes more insistent, whining softly and frequently rubbing against you whilst continuing to leak on the carpet.<br>
<br>
Almost finished, you do a final pass to clean up his spills, leading him back to his bed just as his owners, a normal-looking couple, arrive.<br>
<br>
"@@.generic_female1;Oh, I hope our Zeus wasn't any trouble?@@" The woman ask as she leans down to start scratching his bell.<br>
<br>
You confirm that he was no trouble at all, that he was actually nice company following you around as he worked.<br>
<br>
"@@.generic_male1;Great, great,@@" <<if $options.fem>>her wife<<else>>the man<</if>> states as he hands you <<=$scene.pay>> credits. "@@.generic_male1;Well, thank you again for the cleaning, the place looks a lot better!@@"<br>
<br>
Taking your pay, you give a parting curtsy and head on your way.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Head home." 1800>>]
</div>/*#
#desc: dog humps you while cleaning apartment, option of sex
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning")>>
<div id="invframe" class="scrolltext">
Zeus, your new canine friend, seems to get more and more excited the longer you're together.<br>
<br>
Focusing on the cleaning you manage to alternate between ignoring and placating the large dog as he rubs against you, sniffs under your skirts and even humps your leg, but finally, as you reach down to pick up a discarded towel he lunges for you, knocking you to the ground and rearing up behind you.<br>
<br>
<<printThought "If I don't do something fast, he's going to make me his bitch... literally...">><br>
<br>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_maid_work_dog_2_1" "Let him have his way with you." 1800 "<<set $scene.sex = true>>">>]<br>
<<elseif setup.getTotalValue("bimbofication") > 10 && $player.flags.masturbation.dogcock>>
[<<moveTo "event_maid_work_dog_2_1" "You've knotted yourself with a dildo... let him give you the real thing." 1800 "<<set $scene.sex = true>>">>]<br>
<<else>>
[@@.link_locked;No way, taking it in the rear for the first time and it not even being a human? Nope, no way am I that depraved.@@]<br>
<</if>>
[<<moveTo "event_maid_work_dog_2_1" "Scramble to your feet." 1800 "<<set $scene.sex = false>>">>]
</div>/*#
#desc: get fucked or pen up dog before continuing cleaning
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = Math.floor((1+.2*$npc_landlord.flags.cleaning.maid_dog)*$npc_landlord.flags.cleaning.base_pay)>>
<<addCredits $scene.pay>>
<<if $scene.sex>>
<<set $npc_landlord.flags.cleaning.maid_dog = 2>>
<<applyExperience 'bestiality' 4 'very' $ALONE>>
<<applyExperience 'anal' 10 'very' $ALONE>>
<<set $scene.first = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "dog">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "enthusiast">>
<<include "analUnlocks">>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Zeus wants you. And, as you look up at him looming over you with his big, hard, dripping cock, you want Zeus.<br>
<br>
<<if $scene.first>>
You don't care that your first time is about to be had with a beast, rather than a human... or maybe that fact makes it even hotter. Whatever depraved thoughts whirl in your mind, you want his knot, you want to feel its heat swelling in your ass, making you his bitch.<br>
<br>
<</if>>
Eagerly parting your clothes, you
<<if setup.checkItemTypeWorn("plug")>>
slide the <<=setup.getItemTypeName("plug")>> out of your ass and
<</if>>
wiggle your bum in anticipation.<br>
<br>
Though you can't see much past your frilly splayed skirts you don't really need to. Zeus wastes no time mounting you, his thick cock sliding into your ass and knotting with but a single thrust.<br>
<br>
Groaning in pleasure you are soon driven to the ground, lying there as his bitch as he ruts away, yipping in excitement.<br>
<br>
"@@.generic_male2;Hey! How many times have I said to keep your mutt quiet!@@" You hear shouted from an adjacent apartment. Even if you were strong enough to escape you wouldn't care, relishing the feeling of being full of dog cock.<br>
<br>
Moaning along with your enthusiastic partner it isn't much longer that he breaks out in a howl and you feel his thick cum pumping into you.<br>
<br>
Groaning in pleasure you flop onto the floor as he slides out of you, crawling around to lick your face.<br>
<br>
Catching your breath, you pat Zeus gratefully and get back to your feet. Grabbing a drink of water you notice a bag of dog treats and slip one to Zeus before realising what behaviour you've just doubly rewarded.<br>
<br>
<<printThought "Oops, I hope that doesn't come back to bite me... or maybe I do?">><br>
<br>
Feeling somewhat refreshed you fix your clothes<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>, easily shoving the <<=setup.getItemTypeName("plug")>> back in place thanks to the thick dog-cum oozing out of your hole<</if>> and go back to cleaning.<br>
<br>
Placated by the intense fucking Zeus follows you around like a happy puppy, licking your hand and blinking up at you with a wide smile on his face.<br>
<br>
Finishing the cleaning with time to spare you are spending some time innocently playing with Zeus when the residents return.<br>
<br>
"@@.generic_male1;Aww, isn't that sweet, the maid is having a bit of fun with Zeus!@@" the <<man>> states with a smile.<br>
<br>
"@@.generic_female1;How sweet!@@" <<if $options.fem>>her wife<<else>>the woman<</if>> adds. "@@.generic_female1;Great job cleaning and the rest, as always. Pay the girl, dear.@@"<br>
<br>
The <<man>> pulls out <<his>> wallet and counts out <<=$scene.pay>> credits as <<his>> wife leans over to snuggle Zeus. "@@.generic_female1;Who's a good boy, huh? Who's a good boy!@@"<br>
<br>
Curtsying in thanks, you head back to your flat.
<<else>>
Scrambling to your feet you grab the dog by the collar and hold him back. Looking around for an idea you hurry to the bedroom, shoving the dog in before closing the door behind.<br>
<br>
<<printThought "Whew, that was a close one...">><br>
<br>
You can hear him whining, though it doesn't sound like he's destroying anything at least.<br>
<br>
Without his continued harassment your rate of cleaning speeds up and you manage to get everything done just before the couple walks in the door a few minutes after Zeus finally stops whining for you.<br>
<br>
"@@.generic_female1;Ah, another wonderful job!@@" the woman states before pausing and looking around. "@@.generic_female1;Only... where's my Zeus?@@"<br>
<br>
You explain that he was getting a bit rambunctious and you were forced to lock him in the bedroom.<br>
<br>
"@@.generic_female1;Oh, my poor boy! He just gets excited around people he likes sometimes.@@" She rushes past you and into the bedroom as <<if $options.fem>>her wife<<else>>the man<</if>> counts out your pay.<br>
<br>
The <<man>> lingers and shakes his head in apology. "@@.generic_male1;Sorry about Zeus, you got along so well the first time, but I guess sometimes he can be a bit much.@@"<br>
<br>
You thank <<him>> for the <<=$scene.pay>> credits and head for the door, just stepping out of the apartment when you hear a feminine moan.<br>
<br>
"@@.generic_female1;Oh Zeus...@@"<br>
<br>
<<printThought "Wait, is she?">><br>
<br>
You hurry out of the apartment and head back to your flat
<<if setup.getTotalValue("bestiality") > 3>>
regretting your missed opportunity.
<<else>>
trying not to think about the dog-fucked fate you narrowly avoided.
<</if>>
<</if>>
<br><br>
<<if $scene.sex && $npc_dog.stage > 0 && $npc_dog.flags.stage1.kitchen>>
[<<moveTo "event_dog_post_maid_1" "Head home." 1800>>]
<<else>>
[<<moveTo "room_foyer" "Head home." 1800>>]
<</if>>
</div>/*#
#desc: enthusiastic dog tries to have sex with you before you can clean apartment
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = Math.floor((1+.2*$npc_landlord.flags.cleaning.maid_dog)*$npc_landlord.flags.cleaning.base_pay)>>
<<switch $scene.style>>
<<case 'hand'>>
<<applyExperience 'bestiality' 4 'very' $ALONE>>
<<applyExperience 'penis' 8 'very' $ALONE>>
<<applyExperience 'cum' 4 'very' $ALONE>>
<<addCredits $scene.pay>>
<<case 'anal'>>
<<applyExperience 'bestiality' 4 'very' $ALONE>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
<<applyExperience 'anal' 12 'very' $ALONE>>
<<else>>
<<applyExperience 'anal' 10 'very' $ALONE>>
<</if>>
<<set $scene.pay = 5>>
<<addCredits $scene.pay>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'hand'>>
Looking around, you anticipate cleaning is going to take a bit longer than usual so you kneel down and reach for Zeus' cock. Licking your face in excitement as you jerk him off, it isn't long before he's spurting in excitement, spraying a thick load all over the floor.<br>
<br>
Patting his head as he smiles up at you, you start your cleaning with his cum, scrubbing the floor and then moving on to the rest of the apartment as he lays down with a content smile on his face.<br>
<br>
With Zeus placated the rest of your cleaning passes smoothly, the couple returning right on time to give you your pay of <<=$scene.pay>> credits and send you on your way home.<br>
<br>
[<<moveTo "room_foyer" "Home" 1800>>]
<<case 'anal'>>
It's hard to say who is more excited, you, or Zeus as you drop to all fours and
<<if setup.checkItemTypeWorn("plug")>>
expose your
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
ass, your hollow plug presenting him with a gaping, inviting offer.
<<else>>
ass and clear the way by removing your <<=setup.getItemTypeName("plug")>>.
<</if>>
<<else>>
expose your ass.
<</if>>
<br><br>
Eagerly accepting your invitation, Zeus slides into you with a bark,
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
forcing your hollow plug even wider as he stretches, and then locks inside of it as his knot swells thick inside your ass.
<<else>>
thrusting only a couple times before his knot swells and he locks in place, deep in your ass.
<</if>>
<br><br>
Moaning like the bitch you are, you enjoy the hard, deep canine fucking. He seems to take his time, breeding you hard and deep and leaving you in a puddle with cum leaking out of your ass. Catching your breath, you finally return to your feet, noting that he has already trotted away and is sleeping happily in his bed.<br>
<br>
Wincing as you look at the time, you do your best to catch up on cleaning, but haven't quite finished when the couple returns.<br>
<br>
"@@.generic_female1;Hmm, I guess we did leave the place in a bit of a mess@@" the woman notes looking around.<br>
<br>
"@@.generic_male1;True, and we really can't have you sticking around any longer, we're really sorry but, well, an incomplete job means incomplete pay.@@" <<if $options.fem>>Her wife<<else>>The man<</if>> adds, counting out a meager <<=$scene.pay>> credits.<br>
<br>
Sighing at your failure, you curtsy in thanks nonetheless and head back to your flat.<br>
<br>
<<if $npc_dog.stage > 0 && $npc_dog.flags.stage1.kitchen>>
[<<moveTo "event_dog_post_maid_1" "Head home." 1800>>]
<<else>>
[<<moveTo "room_foyer" "Home" 1800>>]
<</if>>
<<case 'resist'>>
Trying to ignore the enthusiastic dog following you around you set to work on cleaning. Though he is constantly rubbing against you or licking under your skirt you manage to make good progress, burning through the bulk of the cleaning while occasionally shooing him away.<br>
<br>
Finally fed up with your unwillingness to play he jumps up on you enthusiastically, the fact that you were balancing laundry at the time putting you off balance as you fall to the ground.<br>
<br>
Looking up at Zeus, and Zeus' big, hard canine cock you realise you need to either give it up or move fast lest he forcibly make you his bitch...<br>
<br>
[<<moveTo "event_maid_work_dog_3_1" "Surrender and be his bitch." 300 "<<set $scene.resist = false>>">>]<br>
[<<moveTo "event_maid_work_dog_3_1" "Try to take back control of the situation." 180 "<<set $scene.resist = true>>">>]
<<default>>
ERROR: unknown scene style: <<=$scene.style>>
<</switch>>
</div>/*#
#desc: enthusiastic dog tries to have sex with you before you can clean apartment
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay *= 2>>
<<addCredits $scene.pay>>
<<set $scene.first = $npc_landlord.flags.cleaning.maid_dog < 3>>
<<if $scene.resist && $fetish.get_raped>>
<<if $scene.first>>
<<set $npc_landlord.flags.cleaning.maid_dog = 3>>
<</if>>
<<applyExperience 'bestiality' 2 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' 10 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 11 'very' $SEEN_STRANGER>>
<<elseif !$scene.resist>>
<<if $scene.first>>
<<set $npc_landlord.flags.cleaning.maid_dog = 3>>
<</if>>
<<applyExperience 'bestiality' 4 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'unbelievable' $SEEN_STRANGER>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning")>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
Somehow managing to get back to your feet, you grab Zeus by the collar and make for the bedroom to lock him up.<br>
<br>
<<if $fetish.get_raped>>
You have him halfway through the door into the bedroom when he twists away, leaping onto you he pushes you to the ground, the impact knocking the air out of you.<br>
<br>
Before you can recover, you feel him rummaging under your skirts. <<if setup.getTotalValue("martial_arts") > 10>>All your time spent training to fight other humans proves quite ineffective against your canine opponent as he<<else>>He<</if>> moves with startling skill and speed. Swiftly, but gently, he nuzzle yours clothes out of the way
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow'])>>
his tongue dances <<if $player.body_ref.balls>>over your testicles<<else>>between your legs<</if>> for a few moments before he moves forward and you feel the familiar girth of his cock pressing against your hole.
<<else>>
before gently closing his teeth around the base of your <<=setup.getItemTypeName("plug")>> and pulling it out of your ass.<br>
<br>
<<printThought "What? How does he know how to-">><br>
<br>
Your thought is cutoff as he lunges forward, his canine cock slipping into your pre-gaped hole.
<</if>>
<br><br>
You pant and moan and try to crawl away, but he pins you down with his hips, knotting almost instantly before leaning forward, his drool mixing with your tears as he humps and ruts.<br>
<br>
Losing track of time, you come back to alertness to a scuffle as Zeus is pulled off of you and you look up to find the apartment tenants looking down at you with concern.<br>
<br>
"@@.generic_female1;Oh no, are you okay? We're so, so sorry about Zeus, we've been so busy this week we haven't had time to play with him and, well... I guess he took all that energy out on you...@@"<br>
<br>
Trying to catch your breath, you barely process what the woman said as you are helped to your feet.<br>
<br>
"@@.generic_male1;Please, accept our deepest, er, sorry, bad choice of words — our most sincere apologies.@@" <<if $options.fem>>Her wife<<else>>The man<</if>> adds as <<he>> fumbles for <<his>> wallet.<br>
<br>
You nod vaguely, accepting the <<=$scene.pay>> credits and staggering out of the apartment to head back to your flat.
<<else>>
Though he is definitely stronger than you are by some miracle you manage to pull the beast off, pushing him into the bedroom and closing the door as he lets out a forlorn whine.<br>
<br>
<<printThought "Whew, that could have been bad!">><br>
<br>
With Zeus out of the way you are able to finish up all the cleaning just as the couple returns.<br>
<br>
"@@.generic_female1;Zeus gave you trouble, again?@@" The woman asks after looking around for her pet.<br>
<br>
You nod.<br>
<br>
"@@.generic_female1;He just gets a bit lonely when we're gone. I'll go deal with him, could you pay the girl?@@"<br>
<br>
<<if $options.fem>>Her wife<<else>>The man<</if>> disappears into the bedroom and Zeus' whines take on a much happier tone along with an almost moaning "@@.generic_female1;Good boy!@@" from the woman as <<if $options.fem>>her wife<<else>>the man<</if>> passes you <<=$scene.pay>> credits.<br>
<br>
"@@.generic_male1;Thanks again for the work, I'm actually surprised you finished it all! I confess we were a bit busy this week, thus the mess... and I guess Zeus' impatience.@@"<br>
<br>
You curtsy in thanks, and you head home.
<</if>>
<<else>>
You bite your lip in anticipation and bend over for Zeus.<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow'])>>
Nosing under your skirt he gives your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>> a long lick
<<else>>
Impatiently he nips under your skirt, skillfully nosing your clothes before grasping your <<=setup.getItemTypeName("plug")>> with his teeth and gently pulling it from your hole.<br>
<br>
You moan as your plug-deprived ass gapes in anticipation, but he takes a minute to tongue-bathe your <<if $player.body_ref.penis>><<getWordMyPenis>> <<else>>crotch<</if>>
<</if>>
before crawling up your body and pressing his hard canine cock against your rear hole.<br>
<br>
He plunges into you with enthusiastic vigour, knotting almost instantly, his heavy balls slapping against your own as he excitedly humps away.<br>
<br>
<<if !$scene.first && $fetish.pet_play && $npc_landlord.flags.cleaning.maid_dog == 3 && $npc_landlord.flags.cleaning.maid_mistress == 3 && setup.getTotalValue("submission") > 15>>
<<set _noNormalExit = true>>
You're moaning like a bitch as Zeus pounds your ass into the carpet when you hear a knock on the door to the apartment.<br>
<br>
"@@.npc_maid_mistress;Is something wrong in there? I was just walking past and I heard a commotion — is everything all right?@@"<br>
<br>
The voice sounds vaguely familiar and you try to freeze. Even as Zeus continues to rut, you bite your lip and bury your face in the carpet and whisper for the dog to "@@.pc;Stop... please...@@" As you pray that the curious woman will conclude she misheard things and move on.<br>
<br>
[<<moveTo "event_maid_work_dog_4_1" "No..." 600>>]
<<else>>
Sprawled out on the floor of the living room all you can do is appreciate the hard, deep fucking he's giving you, eyes rolled back, your tongue lolled out in pleasure.<br>
<br>
As if from a great distance, you hear the door to the apartment open. Still out of it you do not quite process what that means until a figure approaches and you look up, still full ahegao as you try to focus on the newly returned tenant standing over you.<br>
<br>
"@@.generic_female1;Hey! She has the same expression you get!@@" The woman shouts out with glee. Leaning over she strokes your face and smiles at you. "@@.generic_female1;Aww, are you having fun with our big boy Zeus? No wonder he liked you so much!@@"<br>
<br>
Moaning in embarrassed lust you feel Zeus finally cum, breeding you like a bitch as his owners look on.<br>
<br>
"@@.generic_male1;Heh, looks like he just came!@@" <<if $options.fem>>Her wife<<else>>The man<</if>> calls out as Zeus deflates and slides out of you.<br>
<br>
"@@.generic_female1;Aww! And I was getting so horny! Come on boy, over here, come to mommy!@@"<br>
<br>
Trying to figure out your arms you watch as the woman hops onto the couch, lifting her skirt to expose a very wet cunt that Zeus immediately starts licking. "Oh yes! Good boy!" She cries out as her <<if $options.fem>>wife<<else>>husband<</if>> chuckles and helps you to your feet.<br>
<br>
"@@.generic_male1;Heh, well, I don't have to tell YOU how it is!@@" <<He>> states with a smile as <<he>> presses <<=$scene.pay>> credits into your hand. "@@.generic_male1;Great job with the cleaning, don't worry about not finishing... we all know how irresistible Zeus can be when he's in heat and, well, we've been out so much this week...@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow'])>>
You nod along, staggering out of the apartment as you fix your clothes.
<<else>>
"@@.generic_male1;Ooop! Here you go.@@" The <<man>> adds as <<he>> slides the <<=setup.getItemTypeName("plug")>> back into your ass, the plug easily lubricated by the dog-cum leaking out of you.<br>
<br>
Fixing your clothes you stagger out of the apartment.
<</if>>
Taking a deep breath to clear your head, you return to the elevator to go back down to your flat.
<</if>>
<</if>>
<br><br>
<<if !_noNormalExit>>
<<if ($scene.resist && $fetish.get_raped || !$scene.resist) && $npc_dog.stage > 0 && $npc_dog.flags.stage1.kitchen>>
[<<moveTo "event_dog_post_maid_1" "Head home." 1800>>]
<<else>>
[<<moveTo "room_foyer" "Home" 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: come home after maid dog-fucking
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Foyer">>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
You arrive home from your shift "working" as a maid and <<=setup.getNpcName("npc_dog","first")>> confronts you, hackles raised, a low growl in his throat.<br>
<br>
<<printThought "Oh shit, he must smell Zeus on me...">><br>
<br>
<<if $npc_dog.flags.stage2.maid>>
[<<moveTo "event_dog_post_maid_2" "Get down on all fours and show your Alpha proper respect." 300 "<<set $scene.submit=true>>">>]
<<else>>
[<<moveTo "event_dog_post_maid_2" 'Bend over and show <<=setup.getNpcName("npc_dog","first")>> that you are HIS bitch first.' 300 "<<set $scene.submit=true>>">>]<br>
[<<moveTo "event_dog_post_maid_2" "Go take a shower to get rid of Zeus' scent." 60 "<<set $scene.submit=false>>">>]
<</if>>
</div>/*#
#desc: dog re-asserts dominance after you fucked
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.submit>>
<<set $npc_dog.flags.stage2.maid = true>>
<<if $npc_dog.flags.stage2.maid && $npc_dog.flags.stage2.meal>>
<<set $npc_dog.stage = 3>>
<</if>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<else>>
<<include "cleanPlayer">>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<<decrementEmotion 'anger' 'npc_dog' 3>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.submit>>
<<set $player.location to "Foyer">>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<<else>>
<<set $player.location to "Bathroom">>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_dog")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.submit>>
You are already tired from your ordeal earlier in the evening, but <<=ps(setup.getNpcName("npc_dog","first"))>> needs take priority over your own. You drop to your knees and he quickly mounts you, pounding you hard and deep, nipping at the back of your neck and even clawing you a little before leaving your ass dripping with his cum, your body marked and claimed as HIS.
<<else>>
You hurry to the bathroom and jump into the shower to wash away the scent of the "other" dog.<br>
<br>
When you emerge from the bathroom <<=setup.getNpcName("npc_dog","first")>> is there waiting, sniffing you thoroughly before trotting away.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: first sent to clean npc_egg
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_egg.stage = 1>>
<</if>>
<<set $player.location to 'Apartment Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<div id="invframe" class="scrolltext">
You meet <<=setup.getNpcName("npc_landlord","first")>> for another cleaning job and <<he npc_landlord>> sighs.<br>
<br>
"@@.npc_landlord;So just a warning this time that this wasn't a direct tenant request, but something of a dictate — there were some neighbor complaints about smell to the point I had to just tack on cleaning service and raise the rent. We were using a third party cleaning service for a while, but I think with you around well... you could take care of it. The tenant works from home so just head on up and they'll let you in.@@"<br>
<br>
You thank <<him npc_landlord>> for the assignment and head for the indicated flat. As you ride the elevator up you consider the disaster zone that was <<=ps(setup.getNpcName("npc_landlord","first"))>> before you started helping out, wondering how much worse things could have gotten for the person's neighbors to rally for building management to take action.<br>
<br>
Arriving at the door you knock once, twice and are about to give <<=setup.getNpcName("npc_landlord","first")>> a call to see if you're at the wrong place when a voice comes over the intercom.<br>
<br>
"@@.npc_egg;Who are you?@@" They ask in accusation. Looking up at the above-the-door camera you give a cute curtsy and reply "maid service..." as if such wasn't more than obvious from your current attire.<br>
<br>
There is a pause before the voice — softer now and suddenly nervous to the point of being a bit tricky to make out, replies "@@.npc_egg;You're not the usual cleaning service... you're dressed different.@@"<br>
<br>
You explain the change of arrangements, pointing out that they're welcome to confirm with <<=setup.getNpcName("npc_landlord","formal")>> that everything is above board. There is a long, awkward pause but finally the door swings open and you find yourself face to face with the somewhat mysterious tenant.<br>
<br>
[<<moveTo "event_maid_work_egg_1_2" "Continue." 300>>]
</div>/*#
#desc: first meet npc_egg
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Foyer'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
Standing before you is a guy in his late 30s, a slender build disguised by clothes several sizes too big, his expression nervous as he seems unwilling to meet your gaze... though there is no missing the way he keeps glancing at your outfit and your body.<br>
<br>
"@@.npc_egg;Hi, um, so my name's <<=setup.getNpcName("npc_egg","first")>>...@@"<br>
<br>
You exchange greetings, but he seems to get more nervous the longer he's in your presence, looking like a small animal ready to dash away from a predator.<br>
<br>
"@@.npc_egg;I'm so I, uh, guess I'll leave you to it? I need to get back to work anyway just... lock the door when you're done, okay?@@"<br>
<br>
Before you can reply he scurries away, leaving you in the quite empty foyer as he disappears into the direction of the bedroom — his flat looking to have the same floor-plan as your own.<br>
<br>
[<<moveTo "event_maid_work_egg_1_3" "Get to cleaning." 3600 "<<set $scene.clean=true>>">>]<br>
[<<moveTo "event_maid_work_egg_1_3" "Try to talk to him some more." 60 "<<set $scene.clean=false>>">>]
</div>/*#
#desc: first meet npc_egg
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.clean>>
<<decrementEmotion 'anger' 'npc_egg' 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png">>
<div id="invframe" class="scrolltext">
<<if $scene.clean>>
You can see why <<=setup.getNpcName("npc_egg","first")>> needs the services of a maid, the flat is just about every bachelor cliche on steroids, food delivery containers strewn about, clothes on the floor, dishes piled up and everything a cluttered mess... everything, that is, except for the media station.<br>
<br>
Taking up an entire wall of the living room with a deluxe "captain's chair" recliner in front of it stands a television and surround system to die for and, in some ways even more impressive, flanking display cabinets showing off what you recognise as a dozen rare edition models as well as a jaw-dropping collection of antique video games.<br>
<br>
You stare in awe at authentic mint-condition carts of classic games you've only ever seen as roms. You find yourself lingering in the living room, polishing the display glass until it is perfectly clear and carefully dusting and straightening the framed classic posters that adorn the non-flatscreen-covered walls.<br>
<br>
The whole time the erstwhile tenant never emerges from his bedroom office... though you catch sight of a camera setup to monitor the living room and you wonder if you're being silently watched as you go about your duties of straightening things up.<br>
<br>
Finishing taking out a load of very... fragrant trash from the kitchen you decide that you've done about all that needs doing to get things under some semblance of control. It's not spick and span... but you've at least fought back the smell for another week or so.<br>
<br>
[<<moveTo "event_maid_work_egg_1_4" "Let him know you're done." 300 "<<set $scene.bye=true>>">>]<br>
[<<moveTo "event_maid_work_egg_1_4" "Leave." 300 "<<set $scene.bye=false>>">>]
<<else>>
<<=setup.getNpcName("npc_egg","first")>> moves remarkably fast and the door to his bedroom is already closed by the time you catch up. There is a click as it locks, as well. You knock, his response a muffled "@@.npc_egg;You don't need to clean in here, just... do what you need to do, I have work to do.@@"<br>
<br>
<<printThought "Talk about shy... I'm not that intimidating... am I?">><br>
<br>
[<<moveTo "event_maid_work_egg_1_3" "Get to cleaning." 3600 "<<set $scene.clean=true>>">>]
<</if>>
</div>/*#
#desc: try to talk to npc_egg after cleaning
#status: RELEASED 0.8.4.0
#ignore_spell: n
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = (random(10)/10 + 1.5)*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<<if $scene.bye>>
<<decrementEmotion 'anger' 'npc_egg' 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.bye>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png">>
<<else>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.bye>>
You knock on the office door to let <<=setup.getNpcName("npc_egg","first")>> know you've finished and ask if you can do anything else?<br>
<br>
"@@.npc_egg;N-no, it's fine in here.@@" He replies back, voice muffled by the door.<br>
<br>
You frown, seems like you'll have to put in some work to get him to come out of his shell...<br>
<br>
Locking the door on your way out of the flat you let <<=setup.getNpcName("npc_landlord","first")>> know you've finished and get a notification in response that <<he npc_landlord>> has wired you <<=$scene.pay>> credits for your trouble.
<<else>>
You slip out of the flat and lock the door behind you, texting <<=setup.getNpcName("npc_landlord","first")>> to let <<him npc_landlord>> know you've finished and getting a notification that <<he npc_landlord>> has wired you <<=$scene.pay>> credits for your trouble.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Head home." 300>>]
</div>/*#
#desc: npc_egg repeatable
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Foyer'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You show up to clean <<=ps(setup.getNpcName("npc_egg","first"))>> flat again.<br>
<br>
<<if $npc_egg.anger == 0>>
"@@.npc_egg;Hi, um... thanks again for doing all this cleaning. I mean, I know you're only here because you're being paid but... you do such a good job, and you're so friendly so, um... thanks.@@"<br>
<br>
You sense something different about your "client" — while still shy he's not dashing away in fear like he usually does... <<printThought "Wait, his clothes aren't stained, and he combed his hair! He's actually kind of cute...">><br>
<br>
[<<moveTo "event_maid_work_egg_2_office_1" "Reply that it's been your pleasure, and ask if you could tend to his office as well as the rest of his flat?" 900>>]<br>
[<<moveTo "event_maid_work_egg_2_2" "Thank him and get to cleaning." 3600 "<<set $scene.clean=true>>">>]
<<else>>
<<if $npc_egg.anger > 8>>
As soon as he lets you in he immediately dashes back into his bedroom/office.<br>
<br>
<<printThought "Damn, he's really shy... I wonder if I should try talking to him more?">>
<<elseif $npc_egg.anger > 5>>
After letting you in he seems about to say something further, but then dashes back into his bedroom/office.<br>
<br>
<<printThought "Hmm... that feels like a little progress... he's still really twitchy though...">>
<<elseif $npc_egg.anger > 3>>
"@@.npc_egg;Oh, it's you... uh, um, thanks for coming to clean again... I'll, um, be in my office so I'm not in the way while you work.@@"<br>
<br>
<<printThought "He's talking a bit more... that's progress, he's kind of cute under all the shyness...">>
<<else>>
"@@.npc_egg;Oh, hi, Miss <<=$player.last_name>>. Is it time again? I'll, uh, just stay in my office so I'm not in the way.@@"<br>
<br>
<<printThought "Addressing me by name! I feel like I'm nearing a breakthrough...">>
<</if>>
<br><br>
[<<moveTo "event_maid_work_egg_2_2" "Get to cleaning." 3600>>]
<</if>>
</div>/*#
#desc: repeat clean npc_egg flat
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_egg' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png">>
<div id="invframe" class="scrolltext">
Again you get to work cleaning <<=ps(setup.getNpcName("npc_egg","first"))>> flat... except for his private office whose door remains locked with him inside.<br>
<br>
You continue to be surprised at how quickly the place can break down since you cleaned it last, but you hum to yourself as you work, bustling around the small flat as you get everything back into neat and tidy order.<br>
<br>
[<<moveTo "event_maid_work_egg_2_3" "Offer to clean his office again." 600 "<<set $scene.offer=true>>">>]<br>
[<<moveTo "event_maid_work_egg_2_3" "Just tell him you're finished." 600 "<<set $scene.chat=false>>">>]
</div>/*#
#desc: repeat clean npc_egg flat
#status: RELEASED 0.8.4.0
#ignore_spell: n,th
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.offer>>
<<decrementEmotion 'anger' 'npc_egg' 1>>
<</if>>
<<set $scene.pay = (random(10)/10 + 1.5)*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png">>
<div id="invframe" class="scrolltext">
<<if $scene.offer>>
You knock on the bedroom door to let <<=setup.getNpcName("npc_egg","first")>> know you've finished the rest of the flat, and would he like you to take care of his office as well?<br>
<br>
"@@.npc_egg;N-no, it's fine in here.@@" He replies back, voice muffled by the door.<br>
<br>
You push a little harder, pointing out that you are being paid to clean his entire flat, and you feel bad that you aren't properly finishing the job.<br>
<br>
There's a touch of gratitude in his voice as he turns you away once again.<br>
<br>
<<if $npc_egg.anger > 8>>
"@@.npc_egg;I said I was fine...@@"<br>
<br>
<<printThought "Hmm, he's got some real walls built up... guess I'll just have to keep at it.">>
<<elseif $npc_egg.anger > 5>>
"@@.npc_egg;No, it's... it's okay. You did plenty today already...@@"<br>
<br>
<<printThought "Hmm... touch of hesitation, I think I'm making progress...">>
<<elseif $npc_egg.anger > 3>>
"@@.npc_egg;Th-thanks but, I, uh, I've got a call soon so it wouldn't work.@@"<br>
<br>
<<printThought "Hmm, from rejection to lying for an excuse... progress?">>
<<else>>
"@@.npc_egg;Um, uh... maybe some other time, I don't want to burden you...@@"<br>
<br>
<<printThought "Hmm, I think I'm close... to something...">>
<</if>>
<br><br>
<</if>>
You slip out of the flat and lock the door behind you, texting <<=setup.getNpcName("npc_landlord","first")>> to let <<him npc_landlord>> know you've finished and getting a notification that <<he npc_landlord>> has wired you <<=$scene.pay>> credits for your trouble.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: clean npc_egg office first time
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Office'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_office_dirty.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_egg","first")>> hesitates and you hold your breath until he nervously nods.<br>
<br>
"@@.npc_egg;Y-yeah, okay just... don't get upset, okay?@@"<br>
<br>
You smile and promise that you've "seen it all" as you follow him into his office.<br>
<br>
You may have seen it all, but you still weren't quite prepared for this — his "office" is practically a shrine to magical girls... and you suddenly realise that all of his models and collectibles in the living room were of female characters, or giant robots piloted by female characters.<br>
<br>
You glance over as he looks as nervous as a fawn in headlights, seemingly braced for you to say something.<br>
<br>
<<printThought "Hmm... this was a big step... don't want to push too far too fast...">><br>
<br>
[<<moveTo "event_maid_work_egg_2_office_2" "Smile at him, and quietly get to work." 1800 "<<set $scene.action='clean'>>">>]<br>
[<<moveTo "event_maid_work_egg_2_office_2" "Compliment him on his collection." 1800 "<<set $scene.action='compliment'>>">>]<br>
[<<moveTo "event_maid_work_egg_2_office_2" "Gush how much you love his.. or is that her? room." 1800 "<<set $scene.action='gush'>>">>]
</div>/*#
#desc: react to npc_egg's office
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'clean'>>
<<incrementEmotion 'affection' 'npc_egg' 1>>
<<case 'compliment'>>
<<incrementEmotion 'affection' 'npc_egg' 3>>
<</switch>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Office'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_office_dirty.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'clean'>>
You smile at <<=setup.getNpcName("npc_egg","first")>> and then start cleaning.<br>
<br>
He seems initially nervous, watching you intently, but then seems to let his guard down and sit back down at his computer to "work." <br>
<br>
[<<moveTo "event_maid_work_egg_clean_office_1" "Clean the office." 1800>>]
<<case 'compliment'>>
You compliment <<=setup.getNpcName("npc_egg","first")>> on his collection, calling out a couple of what you judge to be the more obscure characters by name. He is obviously impressed, though he doesn't say anything, instead merely blushing with pride as you get to work cleaning.<br>
<br>
Smiling that you seem to be a fellow appreciator of his collection he leaves you to cleaning and sits back down at his computer to "work." <br>
<br>
[<<moveTo "event_maid_work_egg_clean_office_1" "Clean the office." 1800>>]
<<case 'gush'>>
You gush about how wonderful <<=ps(setup.getNpcName("npc_egg","first"))>> room looks only for him to blush so hard he edges towards infrared before nervously asking you to leave the room.<br>
<br>
<<printThought "Dammit, I pushed too fast.">><br>
<br>
[<<moveTo "event_maid_work_egg_clean_office_3" "Clean the rest of his flat." 3600>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: clean npc_egg's office
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cleanOffice = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Office'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_office_dirty.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_egg.affection > 5 && $npc_egg.flags.panties >= 2>>
<<=setup.getNpcName("npc_egg","first")>> smiles and says they're going to play some video games in the living room so that they aren't "in the way" of you cleaning their office.<br>
<br>
<</if>>
You spend time cleaning <<=ps(setup.getNpcName("npc_egg","first"))>> room. Overall it isn't quite as bad as the rest of the flat,
<<if $npc_egg.affection > 5 && $npc_egg.affection <= 7>>
though you are somewhat stymied from putting his clothes away when you find the closet door to be locked.<br>
<br>
<<if $scene.cleanFlat>>
[<<moveTo "event_maid_work_egg_3_3" "Call it a day." 1800>>]
<<else>>
[<<moveTo "event_maid_work_egg_clean_flat_1" "Clean the rest of the flat." 1800>>]
<</if>>
<<else>>
though you spot the closet door cracked open and wonder if <<=setup.getNpcName("npc_egg","first")>> might have pulled the old "stuff things out of the way" trick...<br>
<br>
[<<moveTo "event_maid_work_egg_clean_office_2" "Clean the closet." 600 "<<set $scene.closet=true>>">>]<br>
[<<moveTo "event_maid_work_egg_clean_office_2" "Ignore the closet." 600 "<<set $scene.closet=false>>">>]
<</if>>
</div>/*#
#desc: clean npc_egg's closet
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Office'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.closet && $npc_egg.affection <= 5>>
<<createAdvBGR "./images/locations/egg_office_clean.png" setup.getEggImage()>>
<<else>>
<<createAdvBGR "./images/locations/egg_office_clean.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.closet>>
<<if $npc_egg.affection > 5>>
<<if $npc_egg.flags.closet>>
You do a bit of straightening up in <<=ps(setup.getNpcName("npc_egg","first"))>> closet to finish off the cleaning, smiling at the sight of their maid costume.<br>
<br>
<<if $scene.cleanFlat>>
[<<moveTo "event_maid_work_egg_3_3" "Call it a day." 1800>>]
<<else>>
[<<moveTo "event_maid_work_egg_clean_flat_1" "Clean the rest of the flat." 1800>>]
<</if>>
<<else>>
You open the closet to find, as expected, a pile of crap that spills out, but perhaps not quite as expected... is the skimpy maid costume hanging on one side.<br>
<br>
You pull it out to get a better look. It appears to be halloween-costume grade, i.e.: cheap, but it's still a cute, feminine maid costume that looks to be exactly in <<=ps(setup.getNpcName("npc_egg","first"))>> size...<br>
<br>
[<<moveTo "event_maid_work_egg_dress_1" 'Confront <<=setup.getNpcName("npc_egg","first")>> with your findings...' 1800 "<<set $scene.confront=true>>">>]<br>
[<<moveTo "event_maid_work_egg_dress_1" "Just put the costume away and finish up." 1800 "<<set $scene.confront=false>>">>]
<</if>>
<<else>>
You reach for the closet door when, in a startling display of speed, <<=setup.getNpcName("npc_egg","first")>> blocks the way. "@@.npc_egg;Nothing in there, um, thanks for the cleaning you can, um, do the rest of the flat now?@@"<br>
<br>
You nod and leave the room, hearing the door click behind you.<br>
<br>
[<<moveTo "event_maid_work_egg_clean_office_3" "Clean the rest of the flat." 1800>>]
<</if>>
<<else>>
You ignore the mysterious closet and tell <<=setup.getNpcName("npc_egg","first")>> that you've finished up and are going to tackle the rest of the flat, now.<br>
<br>
[<<moveTo "event_maid_work_egg_clean_flat_1" "Clean the rest of the flat." 1800>>]
<</if>>
</div>/*#
#desc: finish cleaning npc_egg office
#status: RELEASED 0.8.4.0
#ignore_spell: n
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = (random(10)/10 + 1.5)*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<<if $scene.bye>>
<<incrementEmotion 'affection' 'npc_egg' 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.bye>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png">>
<<else>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.bye>>
You knock on the office door to let <<=setup.getNpcName("npc_egg","first")>> know you've finished and ask if you can do anything else?<br>
<br>
"@@.npc_egg;N-no, you already did so much today... thanks.@@" He replies back, voice muffled by the door.<br>
<br>
You ignore the still-closed door and tell him good-bye and that you're looking forward to your next visit.<br>
<br>
You can't be certain, but you think you heard a very quietly "@@.npc_egg;Me too...@@" From the far side of the door.<br>
<br>
<<printThought "Progress!">><br>
<br>
<</if>>
You slip out of the flat and lock the door behind you, texting <<=setup.getNpcName("npc_landlord","first")>> to let <<him npc_landlord>> know you've finished and getting a notification that <<he npc_landlord>> has wired you <<=$scene.pay>> credits for your trouble.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: npc_egg welcomes you to flat
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Foyer'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You show up yet again to clean <<=ps(setup.getNpcName("npc_egg","first"))>> flat. They meet you at the door looking almost eager to see you.<br>
<br>
[<<moveTo "event_maid_work_egg_3_2" "Ask how they've been." 300>>]<br>
[<<moveTo "event_maid_work_egg_clean_office_1" "Clean the office." 1800>>]<br>
[<<moveTo "event_maid_work_egg_clean_flat_1" "Clean the rest of the flat." 1800>>]
</div>/*#
#desc: npc_egg ask how they've been
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_egg' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Foyer'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You smile in greeting and ask <<=setup.getNpcName("npc_egg","first")>> how they've been doing lately.<br>
<br>
They seem momentarily taken aback that anyone would express such interest but finally mumble something about being "@@.npc_egg;Okay@@" before excusing themselves for wasting your time when you came here for work.<br>
<br>
You counter that you don't consider any time spent with friends to be a "waste." Wide-eyed at your using the "friend" word with them, <<=setup.getNpcName("npc_egg","first")>> seems to even further lose the capability to form words, dashing away into the safety of their office.<br>
<br>
<<if $scene.cleanFlat>>
[<<moveTo "event_maid_work_egg_3_3" "Call it a day." 1800>>]
<<else>>
[<<moveTo "event_maid_work_egg_clean_flat_1" "Clean the flat." 1800>>]
<</if>>
</div>/*#
#desc: clean npc_egg flat
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cleanFlat = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cleanFlat>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<<else>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
You thoroughly clean <<=ps(setup.getNpcName("npc_egg","first"))>> flat<<if !$scene.cleanOffice>> — except for the office<</if>>.<br>
<br>
<<if $npc_egg.affection > 3 && $npc_egg.flags.panties < 2>>
As you're unloading the laundry machine a pair of panties fall to the ground... <<if $npc_egg.flags.panties == 1>>another<<else>>a<</if>> pair of women's panties...<br>
<br>
<<if $npc_egg.flags.panties == 1>>
<<printThought 'Hmm... I think <<=setup.getNpcName("npc_egg","first")>> is trying to get caught...'>>
<<else>>
<<printThought 'Hmm... is <<=setup.getNpcName("npc_egg","first")>> like me?'>>
<</if>>
<br><br>
[<<moveTo "event_maid_work_egg_panties_1" 'Confront <<=setup.getNpcName("npc_egg","first")>> with your discovery.' 600 "<<set $scene.confront=true>>">>]<br>
[<<moveTo "event_maid_work_egg_panties_1" "Just put them with the rest of the clean clothes." 600 "<<set $scene.confront=false>>">>]
<<elseif $npc_egg.affection > 3 && $npc_egg.flags.gaming < 1 && !$scene.help>>
As you work, <<=setup.getNpcName("npc_egg","first")>>, controlling a cute female avatar, is playing Opaque Anima... they <<if $npc_egg.flags.gaming == 1>>still <</if>>seem to be really struggling with a particular boss fight.<br>
<br>
[<<moveTo "event_maid_work_egg_game_1" "Offer to help them out." 600 "<<set $scene.help=true>>">>]<br>
[<<moveTo "event_maid_work_egg_game_1" "Keep cleaning." 1800 "<<set $scene.help=false>>">>]
<<else>>
<<if $scene.cleanOffice>>
[<<moveTo "event_maid_work_egg_3_3" "Call it a day." 1800>>]
<<else>>
[<<moveTo "event_maid_work_egg_clean_office_1" "Clean the office." 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: confront npc_egg about panties
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.confront>>
<<set $npc_egg.stage = 2>>
<<set $npc_egg.flags.panties = 2>>
<<else>>
<<set $npc_egg.flags.panties = 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.confront>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<<else>>
<<createAdvBGR "./images/locations/egg_office_clean.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.confront>>
You walk into the office holding the panties. <<=setup.getNpcName("npc_egg","first")>> turns in their chair and looks up... only to freeze in shock. "@@.npc_egg;I, those were, those aren't mine! They just got mixed in from when I was doing laundry, I don't know anything about them.@@"<br>
<br>
[<<moveTo "event_maid_work_egg_panties_2" "Say, in that case, you'll just throw them out..." 1800 "<<set $scene.trash=true>>">>]<br>
[<<moveTo "event_maid_work_egg_panties_2" "Nod in agreement." 1800 "<<set $scene.trash=false>>">>]<br>
<<else>>
You quietly hide the panties under the rest of the clothing and finish your cleaning.<br>
<br>
<<if $scene.cleanOffice>>
[<<moveTo "event_maid_work_egg_3_3" "Call it a day." 1800>>]
<<else>>
[<<moveTo "event_maid_work_egg_clean_flat_1" "Clean the flat." 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: confront npc_egg about panties
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.trash>>
<<decrementEmotion 'affection' 'npc_egg' 1>>
<<else>>
<<incrementEmotion 'affection' 'npc_egg' 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cleanFlat>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<<else>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.trash>>
You casually reply that, if the panties aren't <<=ps(setup.getNpcName("npc_egg","first"))>> you'll just throw them out — no sense holding on to something that they have no use for...<br>
<br>
You see nervous fear on <<=ps(setup.getNpcName("npc_egg","first"))>> face, even as they fail to voice a response.<br>
<br>
You smile wider, pointing out that it would really be such a shame to throw away such nice, pretty panties... if someone was using them. Which would be totally fine, after all...<br>
<br>
<<=ps(setup.getNpcName("npc_egg","first"))>> mouth flaps, but no sound comes out as you lay the panties in their lap and walk away. You may have pushed them a little too far there, but it's hard to get upset when they look SO adorable when they're embarrassed.<br>
<br>
<<printThought 'Is this how <<=setup.getNpcName("npc_manager","formal")>> feels?'>>
<<else>>
You nod somberly, going along with <<=ps(setup.getNpcName("npc_egg","first"))>> fiction as you note that, just for information purposes... they shouldn't put such nice panties in with the regular load, that such delicate garments should be hand wash only.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> blushes as you place the panties down on their lap adding that, if they did wear them well... that would be a totally alright thing to do.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> dumbstruck behind you, you walk away to finish cleaning. You smile to yourself, sure you gave them a bit of a shock, but the fact that their secret is "out"... you think may have brought the two of you closer together as well.
<</if>>
<br><br>
You spend a few more minutes finishing up cleaning the rest of the non-office portions of the flat.<br>
<br>
<<if $scene.cleanOffice>>
[<<moveTo "event_maid_work_egg_3_3" "Call it a day." 1800>>]
<<else>>
[<<moveTo "event_maid_work_egg_clean_office_1" "Clean the office." 1800>>]
<</if>>
</div>/*#
#desc: help npc_egg with gaming
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.help>>
<<set $npc_egg.stage = 3>>
<<set $npc_egg.flags.gaming = 2>>
<<else>>
<<set $npc_egg.flags.gaming = 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_egg.affection > 5>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
You walk over to <<=setup.getNpcName("npc_egg","first")>> and ask if they'd like some help with the boss fight, noting that there's a bit of a timing trick to him.<br>
<br>
"@@.npc_egg;Wait, you know this game?@@" they reply in surprise, their shields slipping for the first time.<br>
<br>
You smile and say "@@.pc;of course!@@" and that it's one of your favourite games before eagerly talking about one of the fights earlier in the game that you really struggled with. The two of you enthusiastically go back and forth for several minutes before <<=setup.getNpcName("npc_egg","first")>> offers you the controller to beat the boss battle they're currently facing.<br>
<br>
[<<moveTo "event_maid_work_egg_game_2" "Take the controller and beat the boss." 180 "<<set $scene.win=true>>">>]<br>
[<<moveTo "event_maid_work_egg_game_2" "Walk them through how to beat the boss themselves." 300 "<<set $scene.win=false>>">>]
<<else>>
You keep cleaning around <<=setup.getNpcName("npc_egg","first")>> while they continue to struggle with their game.<br>
<br>
<<if $scene.cleanOffice>>
[<<moveTo "event_maid_work_egg_3_3" "Call it a day." 1800>>]
<<else>>
[<<moveTo "event_maid_work_egg_clean_office_1" "Clean the rest of the flat." 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: help npc_egg with gaming
#status: RELEASED 0.8.4.0
#ignore_spell: h,t,s
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.win>>
<<applyExperience 'gaming' 7 'little' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_egg' 1>>
<<else>>
<<applyExperience 'gaming' 10 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_egg' 3>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cleanFlat>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<<else>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
You take the controller and, with reflexes honed from many an attempt, easily beat the boss.
<<else>>
You shake your head and <<=setup.getNpcName("npc_egg","first")>> looks momentarily crestfallen... until you sit down next to them and explain that you're going to walk them through doing it themselves.<br>
<br>
They're so focused on the game they don't notice that you're sitting close enough to press against them as you calmly walk them through what to watch for and how to time their dodge-rolls to evade the boss's attacks.<br>
<br>
It takes a couple of attempts but, as they get to stage two clean for the first time, they start to hand the controller over only for you to push it back into their hands, your fingers lingering against theirs for a few additional moments as you gently whisper instructions and guide them through the proper button sequence...
<</if>>
<br><br>
<<=setup.getNpcName("npc_egg","first")>> looks up at you with a trace of awe as the once-mighty boss monster falls.<br>
<br>
"@@.npc_egg;Wow, you're, like... really good.@@"<br>
<br>
<<if $player.flags.streaming.stage >= 2>>
You smile and explain that you should be. After all, one of your other "jobs" is streaming games, though you mostly play H.O.T.T.I.E.S.
<<else>>
You smile and explain it's like anything else... the more you practice, the better things get.
<</if>>
<br><br>
<<=setup.getNpcName("npc_egg","first")>> nods and you get back to work finishing up the last of the living room.<br>
<br>
<<if $scene.cleanOffice>>
[<<moveTo "event_maid_work_egg_3_3" "Call it a day." 1800>>]
<<else>>
[<<moveTo "event_maid_work_egg_clean_flat_1" "Clean the flat." 1800>>]
<</if>>
</div>/*#
#desc: confront npc_egg about dress
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.confront>>
<<set $npc_egg.flags.dress = 2>>
<<else>>
<<set $npc_egg.flags.dress = 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cleanFlat>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<<else>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.confront>>
You walk out of the bedroom holding the maid's dress. <<=setup.getNpcName("npc_egg","first")>> looks at you and immediately freezes in fear.<br>
<br>
"@@.npc_egg;I, I—@@" they start to talk, but seem unable to get any further.<br>
<br>
[<<moveTo "event_maid_work_egg_dress_2" 'Order <<=setup.getNpcName("npc_egg","first")>> to put on the dress.' 180 "<<set $scene.girl=false>>">>]<br>
[<<moveTo "event_maid_work_egg_dress_2" 'Note their decorating, and your various discoveries, and ask if they want to be a girl?' 180 "<<set $scene.girl=true>>">>]
<<else>>
You carefully put the cute maid outfit back where you found it and finish tidying up the closet.<br>
<br>
<<if $scene.cleanFlat>>
[<<moveTo "event_maid_work_egg_3_3" "Call it a day." 1800>>]
<<else>>
[<<moveTo "event_maid_work_egg_clean_flat_1" "Clean the rest of the flat." 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: talk to npc_egg about dress
#status: RELEASED 0.8.4.0
#ignore_spell: n
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.girl>>
<<incrementEmotion 'affection' 'npc_egg' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_egg' 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cleanFlat>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<<else>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.girl>>
You smile, putting the dress down on the arm of the couch and then sitting down next to them. If anything, your proximity has them even more nervous, but they also don't pull away as you place a hand gently on their thigh and look them in the eye.<br>
<br>
"@@.pc;The dress, the panties... all your beautiful collectibles, your character in that game,@@" you add, gesturing towards the screen where their female avatar stands next to a fire as the idle camera pans around... "@@.pc;Do you want to be a girl?@@"<br>
<br>
They gasp and start to shake their head. "@@.npc_egg;N-no, I can't be a girl I just, I just think they're pretty and...@@"<br>
<br>
You smile gently, clarifying that you didn't ask if they thought they COULD be a girl, but if they wanted to be one?<br>
<br>
They bite their lip, staring at the ground as they softly reply "@@.npc_egg;Y-yes, but I can't, I'm too old and I'm ugly and—@@"<br>
<br>
You shuffle closer, silencing them with a gentle finger and then leaning in to whisper in their ear, "@@.pc;If you want to be a girl, you can be a girl. In fact... if you're thinking about this sort of thing so much... you probably already are one. I should know, I used to be a lot like you...@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> gets wide-eyed as they look you up and down. "@@.npc_egg;What? No, I'm an ugly boy you're a beautiful woman...@@"
<<else>>
You offer the dress and tell <<=setup.getNpcName("npc_egg","first")>> to put it on.<br>
<br>
Rather than moving off the couch they look even more terrified your
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
extensive
<<else>>
present
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
developing
<<else>>
meagre
<</if>>
<</if>>
dominant skills insufficient to break them out of their fear freeze.<br>
<br>
<<printThought "Hmm, need a different tactic...">>
<</if>>
<br><br>
<<if $player.body_ref.penis>>
[<<moveTo "event_maid_work_egg_dress_3" 'Lift your skirt.' 180>>]
<<else>>
[<<moveTo "event_maid_work_egg_dress_3" 'Pull out your phone and show them some old pictures.' 180>>]
<</if>>
</div>/*#
#desc: talk to npc_egg about dress
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cleanFlat>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<<else>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
You
<<if $player.body_ref.penis>>
lift your skirt to show off your <<getWordMyPenis>>; explaining that this wasn't always such a lovely <<if $player.body.penissize[0] > 4>>not-so-little <<elseif $fetish.sph>>little <</if>><<if setup.checkItemTypeWorn("cage")>>locked-up <</if>>lady lance. <<=setup.getNpcName("npc_egg","first")>> continues to gawk until you fix your skirt and
<</if>>
pull out your phone, wincing slightly as you scroll back to some old pictures to show how you used to look.<br>
<br>
"@@.npc_egg;Wait, that- How did you—@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> is so overwhelmed they can't form full sentences, looking on the verge of tears as you pull them in for a hug and hold them for a couple of minutes before softly speaking. "@@.pc;I had some help, of course, some encouraging friends and such, but really, it wasn't that hard. And the first step is super easy. Here — you try,@@" you hold them at arms length, lifting their chin gently so that they're looking you in the eye. "@@.pc;Say "I am a girl."@@"<br>
<br>
"@@.npc_egg;No, I can't I'm not—@@" You silence them again and shake your head.<br>
<br>
"@@.pc;Go on, say it...@@"<br>
<br>
"@@.npc_egg;But I can't be, I, I—@@" You continue to stare back and they pause before, ever-so-softly mumbling "@@.npc_egg;I am a girl.@@"<br>
<br>
You smile. "@@.pc;Yes you are! That wasn't so difficult, was it? Come on, tell me again, what are you?@@"<br>
<br>
They're a little less hesitant this time, even if their response comes out more as a question "@@.npc_egg;A, a girl?@@"<br>
<br>
"@@.pc;Exactly!@@" You reply, beaming. "@@.pc;Isn't being a girl wonderful.@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> looks back confused. "@@.npc_egg;What, I mean, I guess, but I'm not—@@"<br>
<br>
You ape an exaggerated frown and shake your head. "@@.pc;What are you talking about now? You just said you were a girl! Do you think boys think things like that? They do not. Which means you are definitely a girl. A cute, beautiful girl who just needed some help and encouragement to realise her dreams.@@"<br>
<br>
The doubt starts to fade, their expression softening before your eyes as they teeter on the edge...<br>
<br>
[<<moveTo "event_maid_work_egg_dress_4" 'Bring up their maid outfit.' 180>>]
</div>/*#
#desc: talk to npc_egg about dress
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = (random(10)/10 + 1.5)*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cleanFlat>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<<else>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
"@@.pc;So, my lovely girl. It is so wonderful to meet you but... well, what you're wearing right now isn't quite appropriate, hmm? Of course I just know you have on a pretty pair of panties but why would a cute girl be wearing such frumpy boy clothes?@@" You reach over to grab the maid outfit and offer it to them. "@@.pc;Here, wouldn't this feel so much nicer?@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> pauses and you can practically hear their heart thundering as they slowly reach out to take the maid outfit.<br>
<br>
"@@.npc_egg;I—I—... let me go change,@@" she replies, starting to rise only for you to take her by the hand with a smile.<br>
<br>
"@@.pc;Oh, come on, we're all girls here, you can change in front of me, right?@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> bites her lip and changes clothes, the baggy top and pants falling to the ground to reveal the expected lace panties before she quickly pulls on the maid outfit.<br>
<br>
You smile, the outfit doesn't quite fit, and is definitely cheap costume-grade, but there's already a fresh glow about her that she didn't have previously.<br>
<br>
"@@.pc;See? Beautiful girl! And the next time I come over I'll show you how to do your makeup.@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> seems in a daze... and then they dive into you for a hug.<br>
<br>
"@@.npc_egg;Thank you, thank you... you're the best person ever... I've never told this to anyone before but... yes, I want to be a girl, no, I AM a girl!@@"<br>
<br>
Her final words are spoken with conviction and pride, her expression happier than you've ever seen before as she takes a step back... and twirls.<br>
<br>
"@@.npc_egg;How can I repay you, I—@@"<br>
<br>
You shush her once again, "@@.pc;Seeing you like this is more than enough payment. And I'll be looking forward to next time. As I said, I'll bring some stuff and teach you makeup basics — you just need to think about what sort of girl you want to be, okay?@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> grins, "@@.npc_egg;Okay!@@" She giggles adorably. "@@.npc_egg;Wow, I can't believe this... today was just... the best!@@"<br>
<br>
You leave <<=setup.getNpcName("npc_egg","first")>> to admiring herself in a mirror and head home, texting <<=setup.getNpcName("npc_landlord","first")>> to let <<him npc_landlord>> know you've finished. <<He npc_landlord>> wires you <<=$scene.pay>> credits.<br>
<br>
[<<moveTo "room_foyer" "Home." 600 "<<set $npc_egg.stage = 4>>">>]
</div>/*#
#desc: finish cleaning npc_egg flat
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = (random(10)/10 + 1.5)*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You've finished cleaning <<=ps(setup.getNpcName("npc_egg","first"))>> entire flat. They thank you profusely for your work and you wish them a good evening before heading home, texting <<=setup.getNpcName("npc_landlord","first")>> to let <<him npc_landlord>> know you've finished. <<He npc_landlord>> wires you <<=$scene.pay>> credits.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: npc_egg makeup
#status: RELEASED 0.8.4.0
#ignore_spell: t
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName("npc_egg","first"))>> and they greet you with a smile and a hug.<br>
<br>
They've changed their hair a bit, and are wearing a skirt, the requisite trans-girl choker and femme t-shirt rather than their previous frump.<br>
<br>
[<<moveTo "event_maid_work_egg_4_2" "Get to teaching!" 600>>]
</div>/*#
#desc: npc_egg makeup
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_egg.stage = 5>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You make good on your offer to teach <<=setup.getNpcName("npc_egg","first")>> some makeup. They've already bought a small kit and you use it to break down the process, and, by the time you're done, they're all but transfixed at their reflection, in obvious awe of the transformation that a bit of concealer and brushing can provide.<br>
<br>
"@@.npc_egg;Wow! I look like a cute girl!@@" They state in surprise.<br>
<br>
You correct them that they ARE a cute girl and they swoon. You tell them to keep practicing makeup while you do the cleaning.<br>
<br>
[<<moveTo "event_maid_work_egg_4_3" "Clean." 1800>>]
</div>/*#
#desc: npc_egg clean while makeup
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.location = setup.getNpcName("npc_egg","first") + " Flat">>
<<set $npc_egg.orig_name = $npc_egg.first_name>>
<<set $npc_egg.first_name = $npc_egg.female_name>>
<</if>>
<<set $player.location to $scene.location>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You clean up the flat — which is in a less-bad state than usual, occasionally poping in on <<=setup.getNpcName("npc_egg","custom",$npc_egg.orig_name)>> to give them makeup advice — or for them to pop out for a few moments to show off their "progress." <br>
<br>
As you're about to leave <<=setup.getNpcName("npc_egg","custom",$npc_egg.orig_name)>> stops you with a nervous expression.<br>
<br>
"@@.npc_egg;So, um... I was wondering... since I'm a girl... could you call me by a different name?@@"<br>
<br>
You smile and reply that, of course you would love to use their preferred identifier.<br>
<br>
They smile. "@@.npc_egg;Great! I want you to call me...@@"<br>
<br>
<<printNameChange "Cute Hatched Egg (Female)" $npc_egg>><br>
<br>
[<<moveTo "event_maid_work_egg_4_4" "Confirm." 300>>]
</div>/*#
#desc: confirm npc_egg new name
#status: RELEASED 0.8.4.0
#ignore_spell: th
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_egg.first_name != $player.first_name>>
<<set $npc_egg.stage = 6>>
<<set $scene.pay = (random(10)/10 + 1.5)*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_egg.first_name == $player.first_name>>
Your friend blurts out, "@@.npc_egg;<<=setup.getNpcName("npc_egg","first")>>@@" and you smile.<br>
<br>
"@@.pc;That's my name, you silly! Not that I don't think it's a lovely name — that's why I picked it! but you're your own person and you want a name of your own, right?@@"<br>
<br>
She blushes and nods, "@@.npc_egg;yeah... I guess I just got a little excited and star-struck, let me think. You should call me...@@"<br>
<br>
<<printNameChange "Cute Hatched Egg (Female)" $npc_egg>><br>
<<else>>
"@@.pc;<<=setup.getNpcName("npc_egg","first")>>... what a pretty name!... for a pretty girl!@@" You state with a smile as <<=setup.getNpcName("npc_egg","first")>> swings between grinning like a fool and blushing adorably.<br>
<br>
"@@.npc_egg;Th-thanks... I'm so happy you helped me out... and I've been trying to keep the place a bit tidier so you don't have as much work to do... though I hope you still keep coming. You're the most wonderful maid in the multiverse!@@"<br>
<br>
You smile and say you enjoy your visits. A parting hug and you're on your way, <<=setup.getNpcName("npc_landlord","first")>> wiring you your <<=$scene.pay>> credits.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
<</if>>
</div>/*#
#desc: npc_egg asks for cleaning lessons
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_egg.stage = 7>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You show up to <<=ps(setup.getNpcName("npc_egg","first"))>> for more cleaning to find them sporting a pair of small breasts... and wearing a cute (and far better than costume grade) maid outfit.<br>
<br>
"@@.npc_egg;You like? They're just forms but... I dunno, feeling that weight and looking down to see the shape... it feels right, you know?@@"<br>
<br>
You grin
<<if $player.body.breastsize[0] > 0>>
as your gaze momentarily flickers down to your own
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive mammaries.
<<case 'large'>>
far larger breasts.
<<case 'medium'>>
breasts.
<<case 'small'>>
similarly sized breasts.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<else>>
and remark that they do look quite lovely.
<</if>>
<br><br>
"@@.npc_egg;So, like... I was wondering if you could maybe teach me how to clean? I guess I never really learned to do it properly and now, especially when I put on my maid outfit, well... I have this real urge to be a GOOD maid, right?@@"<br>
<br>
You smile and say of course you'll help! ... though being a naughty maid can be its own sort of fun.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> bites her lip as you start your instruction.<br>
<br>
[<<moveTo "event_maid_work_egg_5_2" "Cleaning lessons." 3600>>]
</div>/*#
#desc: npc_egg asks for cleaning lessons
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<<set $scene.pay = (random(10)/5 + 1.5)*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
It's a bit slower doing the cleaning when you have to teach your partner seemingly everything. Still, <<=setup.getNpcName("npc_egg","first")>> is a good student and a quick learner and you find time spent in her company leaves you more relaxed — and <<=$scene.pay>> credits richer as she explains that, even though her neighbors have stopped complaining, she'll be paying extra for cleaning service for "@@.npc_egg;As long as you're working — and don't even think of objecting! You deserve this and more for all you've done for me, and it's not like I'm doing anything else with all this tech-worker salary.@@"<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: npc_egg shows off hormones
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You show up for another cleaning lesson with <<=setup.getNpcName("npc_egg","first")>> only to note something subtly different about her, her complexion seems just a little smoother and brighter and she blushes as your gaze passes over her much more realistic breasts.<br>
<br>
"@@.npc_egg;Hi so... uh... I had my doctor's appointment and got prescribed hormones! They feel sooo good, like I had no idea my body could be this happy. In celebration I sprung for a bit of surgery — wearing forms was one thing but having breasts ALL the time?@@" She squeezes herself and smiles gleefully "@@.npc_egg;Titties really are the best!@@"<br>
<br>
You smile and reply that they, and <<=setup.getNpcName("npc_egg","first")>> are all three VERY cute.<br>
<br>
She beams, this vibrant, cute girl a total shift from her constantly nervous and afraid previous self.<br>
<br>
"@@.npc_egg;Anyway, I've been trying to keep the place in a bit better shape like you taught me but... I think I need more advice, huh?@@"<br>
<br>
You smile and reply "@@.pc;Of course!@@"<br>
<br>
[<<moveTo "event_maid_work_egg_6_2" "Get to cleaning." 3600>>]
</div>/*#
#desc: npc_egg clean together more
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_egg.stage = 8>>
<<set $scene.pay = (random(10)/5 + 1.5)*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<<applyStress -5>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You spend some more time helping teach <<=setup.getNpcName("npc_egg","first")>> some of the more advanced techniques for keeping her flat sparkling and clean.<br>
<br>
Giddy as a schoolgirl she is the happiest you've ever seen, and full of energy as she dusts and scrubs and smiles.<br>
<br>
When there's truly nothing left to do she, once again, insists on paying you for your miniscule work, wiring <<=$scene.pay>> credits to your account.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: npc_egg clean infinite
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = (random(10)/5 + 1.5)*$npc_landlord.flags.cleaning.base_pay>>
<<if State.hasPlayed("event_egg_guard_2_cage_6") && !State.hasPlayed("event_egg_guard_4_postdate_1") && (!$npc_egg.flags.postDateAfter || setup.daysToDate($now, $npc_egg.flags.postDateAfter) < 0)>>
<<deleteMember $npc_egg.flags.postDateAfter>>
<<initRoom>>
<<moveTo "event_egg_guard_4_postdate_1">>
<<else>>
<<if $npc_egg.stage < 9>>
<<set $npc_egg.stage = 9>>
<</if>>
<<applyStress -5>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_egg","first")>> spend time together cleaning her flat... though there really isn't much cleaning to do. For the most part you just hang out as she has gotten quite adept at keeping things tidy on her own. Helping a friend brings a smile to your face and you feel a bit more relaxed after the time in her company.<br>
<br>
<<if !State.hasPlayed("event_egg_guard_1_club_1") && $npc_guard.genitals>>
<<=setup.getNpcName("npc_egg","first")>> pays you for your time and you are about to leave as you ask <<=setup.getNpcName("npc_egg","first")>> what they've been up to of late and she slightly blushes and shrugs.<br>
<br>
"@@.npc_egg;Oh, just the usual, work and games, y'know...@@"<br>
<br>
You sigh, despite coming into their own you have a feeling that <<=setup.getNpcName("npc_egg","first")>> has barely left their flat.<br>
<br>
You have a sudden idea of a way to maybe break them free of the rut they appear to be in...<br>
<br>
<<include "hasAllWeekendEvent">>
<<set $scene.clubDate = setup.getNextDayOfWeek($now, 0, 22, 0, false)>>
<<if setup.hasFreeTime($scene.clubDate, $player, $currentTasks, 7200) && !($now.getUTCDay() != 0 && _hasThisWeekendEvent || $now.getUTCDay() == 0 && _hasNextWeekendEvent)>>
[<<moveTo "event_egg_guard_1_club_invite_1" 'Ask if they might like to come with you to <<printShopName "sex_club">> <<if $now.getUTCDay() == 0>>next<<else>>this<</if>> Sunday?' 60>>]<br>
<<else>>
[@@.link_locked;You consider asking them to come with you to <<printShopName "sex_club">>... but you don't have time <<if $now.getUTCDay() == 0>>next<<else>>this<</if>> Sunday.@@]<br>
<</if>>
[<<moveTo "room_foyer" "Head on home." 600>>]
<<elseif State.hasPlayed("event_egg_guard_1_club_12") && !State.hasPlayed("event_egg_guard_2_setup_egg_2")>>
As you help <<=setup.getNpcName("npc_egg","first")>> clean her flat she seems oddly excited, that special sort of giddiness where you have something you desperately want to say... but are also scared to put it into words.<br>
<br>
[<<moveTo "event_egg_guard_2_setup_egg_1" "Ask what's up?" 180 "<<set $scene.ask=true>>">>]<br>
[<<moveTo "event_egg_guard_2_setup_egg_1" "Just keep cleaning." 180 "<<set $scene.ask=false>>">>]
<<elseif State.hasPlayed("event_egg_guard_2_setup_guard_1") && !State.hasPlayed("event_egg_guard_2_cage_1")>>
[<<moveTo "event_egg_guard_2_cage_1" 'Tell <<=setup.getNpcName("npc_egg","first")>> about your talk with <<=setup.getNpcName("npc_guard","formal")>>.' 180>>]<br>
<br>
[<<moveTo "room_foyer" "Head on home." 600>>]
<<elseif State.hasPlayed("event_egg_guard_2_cage_1") && !State.hasPlayed("event_egg_guard_2_cage_3")>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
[<<moveTo "event_egg_guard_2_cage_3" 'Ask if <<=setup.getNpcName("npc_egg","first")>> would like to go to <<printShopName "mall_sexstore">> and pick out a cage?' 300>>]<br>
<<else>>
[@@.link_locked;You don't have time today to help <<=setup.getNpcName("npc_egg","first")>> pick out a cage.@@]<br>
<</if>>
[<<moveTo "room_foyer" "Head on home." 600>>]
<<elseif State.hasPlayed("event_egg_guard_5_collaring_0_invite_2") && !State.hasPlayed("event_egg_guard_5_collaring_1") && (!($currentTasks.hasOwnProperty("egg_collaring_alt") || $currentTasks.hasOwnProperty("egg_collaring")) || $currentTasks.hasOwnProperty("egg_collaring_alt") && $currentTasks.egg_collaring_alt.finished || $currentTasks.hasOwnProperty("egg_collaring") && $currentTasks.egg_collaring.finished)>>
[<<moveTo "event_egg_guard_5_collaring_0_invite_alt_1" 'Bring up <<=ps(setup.getNpcName("npc_egg","first"))>> collaring.' 180>>]<br>
[<<moveTo "room_foyer" "Head on home." 600>>]
<<elseif State.hasPlayed("event_egg_guard_5_collaring_7") && !State.hasPlayed("event_egg_guard_6_threesomes_1_offer_1")>>
After cleaning and squaring up your pay <<=setup.getNpcName("npc_egg","first")>> nervously approaches you with a question. "@@.npc_egg;So, um... thanks again for helping with my collaring, everything has been going even better between me and <<=setup.getNpcName("npc_guard","formal")>> only, well... we got to talking and... would you maybe be up for more? Like... maybe an occasional threesome?@@"<br>
<br>
[<<moveTo 'event_egg_guard_6_threesomes_1_offer_1' 'That sounds fun!' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_egg_guard_6_threesomes_1_offer_1' "You're pretty busy..." 60 "<<set $scene.accept=false>>">>]
<<else>>
At the end of things <<=setup.getNpcName("npc_egg","first")>> thanks you for coming over, your time rewarded beyond the mere joyous company as you head home and <<=setup.getNpcName("npc_landlord","first")>> wires you your <<=$scene.pay>> credits.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
<</if>>
</div>/*#
#desc: npc_egg ask to club
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'egg_club_visit_1' $scene.clubDate>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You grin slyly and ask <<=setup.getNpcName("npc_egg","first")>> if would like to get out of their flat for a bit, maybe join you for a night at <<printShopName "sex_club">>.<br>
<br>
"@@.npc_egg;<<printShopName "sex_club">>?!@@" They reply in shocked recognition... after which they blush even harder. "@@.npc_egg;Sorry... guess the cat's out of the bag on that... I mean, I've never been... but I heard of the place and it did seem kind of exciting... I guess if you were there to look out for me...@@"<br>
<br>
You promise that you'll make sure that they have a safe, wonderful evening and <<=setup.getNpcName("npc_egg","first")>> grins. "@@.npc_egg;Okay! I guess I'll, uh... see you then!@@"<br>
<br>
[<<moveTo "room_foyer" "Head on home." 600>>]
</div>/*#
#desc: no show freedom event
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text from <<=setup.getNpcName("npc_egg","first")>>. "@@.npc_egg;Hey, so... sorry to bail at the last minute, but something came up at work... I'm not even on-call but this is a real fire situation so I'm not going to be able to make it... maybe some other time?@@"<br>
<br>
You hear what sounds like a conference call in the background as <<=setup.getNpcName("npc_egg","first")>> hurriedly adds "@@.npc_egg;sorry, gotta go!@@"<br>
<br>
<<set _x = setup.checkTaskCompleted('egg_club_visit_1')>>
<<if $currentTasks.egg_club_visit_1.trigger.condition_fetish.condition>>
<<printThought "To be fair... I wasn't exactly ready for a night at <<printShopName 'sex_club'>> wearing this...">><br>
<br>
<</if>>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: wait for npc_egg at club
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Outside <<printShopName 'sex_club'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_exterior.png" setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
You wait outside the club and smile when <<=setup.getNpcName("npc_egg","first")>> nervously steps out of an auto-cab, looking quite relieved at the sight of you, and impressed by your outfit.<br>
<br>
"@@.npc_egg;Oh, wow... you look...@@" she blushes, attempting to avoid staring at your fetishistic attire... but unable to stop herself from constantly glancing back at you.<br>
<br>
You grin, congratulating her (admittedly, far less exciting) choice to wear her maid outfit.<br>
<br>
"@@.npc_egg;Yeah, I... well, I didn't really have anything else... I just hope it's enough, I was reading online and it seems like they've got a bit of a strict dress-code.@@"<br>
<br>
[<<moveTo "event_egg_guard_1_club_2" 'Promise things will be fine and head inside.' 300>>]
</div>/*#
#desc: npc_egg meets npc_guard
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish") setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
You assure <<=setup.getNpcName("npc_egg","first")>> that things will be fine as you lead them into the building, where you immediately come face to face with the bouncer... <<=setup.getNpcName("npc_guard","formal")>>.<br>
<br>
You feel like you're in the middle of a cutscene, time seeming to slow as <<=setup.getNpcName("npc_egg","first")>> all but freezes and <<=setup.getNpcName("npc_guard","formal")>> looks right past you to your guest.<br>
<br>
"@@.npc_guard;Well, well... we didn't order a cleaning service, so you must be a friend of <<=$player.first_name>>? And what might be this lovely lady's name?@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> is all but useless as she stares at the devilishly dressed guard. For her part <<=setup.getNpcName("npc_guard","formal")>> seems to be relishing the attention, leaning over the welcome counter and flexing slightly to accentuate both her massive breasts and her muscular biceps. "@@.npc_guard;Careful, my dear, you keep flapping those pretty lips and someone might decide to slip a gag between them. I bet you would look simply ravishing with those lips spread around a nice big... gag...@@"<br>
<br>
You realise that <<=setup.getNpcName("npc_egg","first")>> is going to faint if she spends much longer in <<=ps(setup.getNpcName("npc_guard","formal"))>> crosshairs and you quickly interject, introducing your friend by name and asking if the two of you are free to head in?<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> sits back, taking your silent cue that she was a bit over doing it... and yet she can't seem to resist a little further teasing. "@@.npc_guard;Hmm... technically a mere maid's outfit does not quite meet our dresscode... but I think I can make a slight exception for someone so incredibly cute... but next time... well... next time I want to see a better effort... maybe some latex? Or a leather dress... or perhaps a collar and nothing else?@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> turns even redder as you place a comforting arm around her shoulder and, thanking the guard, head on past to the club proper. You notice <<=setup.getNpcName("npc_guard","formal")>> continuing to stare after your friend the whole way, and, perhaps even more significant... <<=setup.getNpcName("npc_egg","first")>> sneak one final glance back before you pass through the club's doors.<br>
<br>
[<<moveTo "event_egg_guard_1_club_3" 'Welcome to the dungeon!' 1800>>]
</div>/*#
#desc: npc_egg has a drink at the bar
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
You're barely out of sight of <<=setup.getNpcName("npc_guard","formal")>> when <<=setup.getNpcName("npc_egg","first")>> is faced with a new intimidation as they gawk at the many fetishistically dressed (or un-dressed) patrons of <<printShopName "sex_club">>.<br>
<br>
Deciding that a drink might help your friend relax a bit you lead them, still in a bit of a daze, over to the bar and order them up something light and fruity.<br>
<br>
Having something to do, even if it's as simple as holding a glass and sipping their drink, seems to help <<=setup.getNpcName("npc_egg","first")>> calm down and regain their footing... though they still keep looking past you in awe as club-goers walk by, their expression somewhere between excitement and disbelief.<br>
<br>
"@@.pc;Enjoying the view?@@" you finally ask, hoping that they've found their voice since their mute exchange with <<=setup.getNpcName("npc_guard","formal")>>.<br>
<br>
"@@.npc_egg;Y-yeah... I mean, I've seen pictures and videos but... it's so much more intense and exciting in person! And that bouncer! She was REALLY playing her part to the hilt!@@"<br>
<br>
You reply that you don't think <<=setup.getNpcName("npc_guard","formal")>> was doing any acting, really... and <<=setup.getNpcName("npc_egg","first")>> goes straight back to focusing on her drink, the gears in her head spinning so fast you're half expecting smoke to start leaking out her ears.<br>
<br>
[<<moveTo "event_egg_guard_1_club_4" 'People-watch for a bit.' 2600>>]
</div>/*#
#desc: exgirlfriend club date: play
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
You sit with <<=setup.getNpcName("npc_egg","first")>> as she finishes her drink. The whole time <<=ps(setup.getNpcName("npc_egg","first"))>> attention flits back and forth, continually wide-eyed at the other club-goers, but seeming to relax a bit. Eventually you feel safe suggesting you walk around a bit and start towards the club play area.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> bites her lip and knocks back the dregs of her glass before making a show of mustering her courage. "@@.npc_egg;Okay... yeah... I mean, I came all this way, right? Let's do it!@@"<br>
<br>
You smile in support of her enthusiasm and lead the way, wending through the play area as <<=setup.getNpcName("npc_egg","first")>> looks on, clearly fascinated by the various slaves on display in various states of bondage and punishment. Perhaps oddly, she spares nary a glance for any of the dominants... it would seem that <<=setup.getNpcName("npc_guard","formal")>> made quite the impression and looms large in the one-time egg's thoughts.<br>
<br>
[<<moveTo "event_egg_guard_1_club_5" 'It sounds like a show is starting on stage.' 1300>>]
</div>/*#
#desc: sex club presentation with npc_egg intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
Her night so far may have been characterised by nerves, but there's something about the promise of a show that has <<=setup.getNpcName("npc_egg","first")>> actually leading the way over to the stage, the two of you finding a good spot with a view of the stage as a <<man>> in a three-piece latex suit steps onto the stage, and with a confident smile... clicks a remote to start up a slide deck.<br>
<br>
"@@.generic_male2;Consider,@@" the <<man>> leads off as an image of a normal looking software engineer appears with the name "@@.npc_rachel;<<=setup.getNpcName("npc_rachel","nickname")>>@@" listed beneath. "@@.generic_male2;A normal engineer... with a secret. Sometimes, underneath that shlubby hoody and jeans? Shaved, panties, a cage... but only sometimes.@@" The slide advances, this time showing the same engineer in a bathroom selfie, wearing heavy, but amateurly applied makeup and a slutty outfit. "@@.generic_male2;At home, they experiment... but only sometimes.@@"<br>
<br>
You sneak a glance at <<=setup.getNpcName("npc_egg","first")>>, noting that she is watching the presentation with interest... while biting her lip, clearly recognising some kinship with "@@.npc_rachel;<<=setup.getNpcName("npc_rachel","nickname")>>@@"<br>
<br>
"@@.generic_male2;Sometimes... such a dirty word, but how to stay motivated when your life is a secret? To stay secured with no warden to keep watch?@@"<br>
<br>
The <<man>> takes a moment to look across the audience, a confident grin as <<he>> lets the anticipation build...<br>
<br>
[<<moveTo "event_egg_guard_1_club_6" 'Next slide.' 120>>]
</div>/*#
#desc: sex club presentation with npc_egg describe digital mistress
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
"@@.generic_male2;Presenting... the Digital <<Master>>,@@" the <<man>> announces as <<he>> clicks forward to show <<if $npc_sexstore_clerk.flags.chastity_quest.start>>a familiar<<else>>an<</if>> advanced chastity device. "@@.generic_male2;Designed to integrate with the latest in chastity technology, our patented dominance engine does it all! Whether you are a dom in need of some help keeping on top of a wayward submissive, or an aspiring submissive in between owners, we provide full life-style integration, monitoring, multi-system integration and over a hundred routines and a simple user interface to build your own.@@"<br>
<br>
As the <<man>> talks bullet-points appear to summarise <<his>> points before <<he>> stops to again stare at the audience. "@@.generic_male2;But you didn't come here for a list of features and specifications... seeing, is, after all, believing, so put those hands together... or maybe onto an inviting nearby rear, and welcome a product of the Digital <<Master>>.@@"<br>
<br>
[<<moveTo "event_egg_guard_1_club_7" 'Continue.' 300>>]
</div>/*#
#desc: sex club presentation with npc_egg reveal slave
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
The audience applauds as the barely recognisable <<=setup.getNpcName("generic_female1","custom", "Raphael")>> minces into view wearing steep platform heels, an over the top <<if $fetish.sissy>>sissified<<else>>frilly<</if>> pink dress, a brutally tight corset with short hobbles and mincing ribbons swaying with each step.<br>
<br>
Moving to the front of the stage <<=setup.getNpcName("generic_female1","custom", "Raphael")>> curtsies in greeting, garish permanent makeup giving her an artificial doll-like expression as she raises her skirt to show off the dripping chastity cage beneath. The applause gets louder as the demonstrator grins and instructs. "@@.generic_male2;Remember to introduce yourself.@@"<br>
<br>
"@@.npc_rachel;Of course, <<sir>>,@@" comes the high-pitched reply, complete with another curtsy directed at the demonstrator before the girl looks towards the audience and, as a bead of excitement drips from her cage, states "@@.npc_rachel;Hello. This <<if $fetish.sissy>>sissy<<else>>slave<</if>> is thankful for the opportunity to <<if $fetish.sph>>have its pathetic dicklet locked forever and be<<else>>have been locked and<</if>> trained by the Digital <<Master>>. It has been taught that it is a thing and no longer deserving or requiring of a name, but if it needs to be summoned it has been trained to respond to <<if $fetish.sissy>>sissy <</if>><<=setup.getNpcName("npc_rachel","first")>>.@@" At this last she gasps, wincing slightly as her caged clitty twitches.<br>
<br>
<<printThought "That's weird, their name is written all lower-case on the slides... a purposeful reinforcement of submission... or I guess... dehumanisation?">><br>
<br>
"@@.generic_male2;What you see here is a feature of the training. In keeping with its objectification, its cage is programmed to administer punishment whenever it self-identifies by name or unapproved pronoun. Our testing has shown that such immediate feedback can provide results in as little as a few days, and full self-objectification in a matter of weeks. In the case of <<=setup.getNpcName("npc_rachel","first")>> here, she submitted to 24/7 training just over a month ago, and you can see the results. A natural <<if $fetish.sissy>>sissy <</if>>slut turned super-natural in devotion thanks to our patented process!@@"<br>
<br>
You look at <<=setup.getNpcName("npc_egg","first")>>, as entranced by the demonstration as the rest of the audience as <<=setup.getNpcName("npc_rachel","first")>> twitches on stage, clearly incredibly aroused despite, or, more likely because of, her humiliating position and stringent restrictions.<br>
<br>
"@@.generic_male2;Now, if I could get some volunteers to come up on stage and continue the demo? Don't be shy, talk is cheap and only a hands-on demonstration will show just how effective our technology is.@@"<br>
<br>
[<<moveTo "event_egg_guard_1_club_8" 'Keep watching.' 300>>]
</div>/*#
#desc: sex club presentation with npc_egg demo
#status: RELEASED 0.9.0.0
#ignore_spell: qr,c
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
There are no shortage of volunteers as <<=setup.getNpcName("npc_rachel","first")>> is shortly bent over, stuffed and spread. <<=setup.getNpcName("npc_rachel","first")>> strokes, fingers and fluffs volunteers with both hands while getting railed from either end, dangling cage swaying with each aggressive thrust as the demonstrator continues to lecture. "@@.generic_male2;As you can see, the training has been further augmented with additional items. Note the plug installed in its ass — hollow and ribbed for YOUR pleasure, this keeps it open for service while also insulating anyone who is using it from any punishing shocks it may deserve.@@"<br>
<br>
In demonstration the <<man>> presses another button on <<his>> remote and <<=ps(setup.getNpcName("npc_rachel","first"))>> ass shudders... while the <<man>> fucking <<=setup.getNpcName("npc_rachel","first")>> from behind continues unaffected.<br>
<br>
"@@.generic_male2;While all of our devices come with encrypted wireless controls and precise location tracking, sometimes something less subtle is desirable, and for this we offer a range of collars, with this, the C-960 Slave Billboard Posture collar being the most restrictive.@@"<br>
<br>
<<=setup.getNpcName("npc_rachel","first")>> has moved on from sucking a cock to worshipping a foot shoved into its face, oblivious to the way the demonstrator is treating it as it continues to serve the line of audience members. The demonstrator lifts <<=ps(setup.getNpcName("npc_rachel","first"))>> shoulder-length brown hair out of the way to show that there is a QR code on the side of the posture collar. "@@.generic_male2;Here you see the real estate has been used for an identification marker.@@" The slides advance to show the same QR code blown up, and several audience-members pull out their phone to snap a picture. "@@.generic_male2;The link is to <<=ps(setup.getNpcName("npc_rachel","first"))>> profile page on <<if $fetish.sissy>>sissy<<else>>slave<</if>>book. Note that they are bargain-priced to rent and will be going up for sale soon, so bookmark the page and put in a bid if you'd like to add such a useful appliance to your household.@@"<br>
<br>
Twitching, gasping, sucking, and fucking, it looks like <<=setup.getNpcName("npc_rachel","first")>> is nearing a crescendo...<br>
<br>
[<<moveTo "event_egg_guard_1_club_9" 'Looks like the presentation is almost finished?' 300>>]
</div>/*#
#desc: sex club presentation with npc_egg finale
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_rachel","first")>> moves to its knees with wide-eyed sub-space lust as
<<if $fetish.cum>>
the last handful of audience volunteers give it the full bukkake-blast finish...<<if $fetish.piss>> one even adding a golden stream that <<=setup.getNpcName("npc_rachel","first")>> even more eagerly tries to catch and drink.<</if>>
<<else>>
to "present" as <<=setup.getNpcName("npc_rachel","first")>> finishes off the final few audience volunteers.
<</if>>
<br><br>
The audience applauds as the demonstrator takes a bow. "@@.generic_male2;Thank you, thank you. I'll be installing this <<if $fetish.sissy>>sissy<<else>>slut<</if>> in the bathroom for the rest of the evening and welcome you to pop in and help it hydrate, and then I'll be back to answer any questions about our technology and how you can incorporate it into your own training... or if you're interested in investment opportunities!@@"<br>
<br>
The presentation over, the house lights come up and people start spreading out. You look over at <<=setup.getNpcName("npc_egg","first")>> who is looking quite overwhelmed as you decide it would be good to call it a night, leading the way to the exit.<br>
<br>
[<<moveTo "event_egg_guard_1_club_10" 'Ask what <<=setup.getNpcName("npc_egg","first")>> thought of the presentation?' 300>>]
</div>/*#
#desc: npc_egg leave after presentation
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<div id="invframe" class="scrolltext">
You walk slowly through the crowd and try to casually ask <<=setup.getNpcName("npc_egg","first")>> what they thought of the evening.<br>
<br>
"@@.npc_egg;Seeing so many people just putting themselves out there was really exciting... but that presentation...@@" <<=setup.getNpcName("npc_egg","first")>> shivers. "@@.npc_egg;Parts of it, like the idea of being locked in chastity... really hot... but some of the more extreme stuff was a bit scary... plus, well... I've worked with enough computers not to trust an AI to have that much control...@@"<br>
<br>
You're almost to the exit when you smile and ask, "@@.pc;what about a person... someone like that nice bouncer?@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> turns bright red as you open the door and <<=setup.getNpcName("npc_guard","formal")>> comes back into view...<br>
<br>
[<<moveTo "event_egg_guard_1_club_11" 'Head out.' 300>>]
</div>/*#
#desc: npc_egg meets npc_guard on the way out
#status: RELEASED 0.9.0.0
#ignore_spell: th
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish") setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
The instant you walk through the door into the club's foyer <<=ps(setup.getNpcName("npc_guard","formal"))>> attention is on you... or, more precisely, <<=setup.getNpcName("npc_egg","first")>>.<br>
<br>
"@@.npc_guard;Have a good evening?@@" <<=setup.getNpcName("npc_guard","formal")>> asks.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> is back in speechless "flee or submit" mode as she nods.<br>
<br>
"@@.npc_guard;Good, good, I'm sorry I was stuck out here all evening... I would have loved to see you inside...@@" <<=setup.getNpcName("npc_guard","formal")>> steps out from behind the counter. If <<=setup.getNpcName("npc_egg","first")>> was staring before, the sight of
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
<<=ps(setup.getNpcName("npc_guard","formal"))>> massive <<getWordPenis false>> on display
<<case 'cyber-futa' 'cybernetic'>>
<<=ps(setup.getNpcName("npc_guard","formal"))>> massive cybernetic <<getWordPenis false>> on display
<<case 'vag'>>
<<=setup.getNpcName("npc_guard","formal")>> in all her muscular, feminine glory
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
has <<=setup.getNpcName("npc_egg","first")>> in full wide-eyed<<if $fetish.daddy>> "domme me now Mommy" <<else>> "domme me now Mistress" <</if>> flabbergasted awe.<br>
<br>
"@@.npc_guard;If you wanted to meet in a more casual scenario... I'm at the Hard Pump gym in the morning every weekend... I can always use help with cleaning... I mean the exercise, of course. Look me up if you want a real workout...@@" <<=setup.getNpcName("npc_guard","formal")>> states with a flirtatious nod towards <<=ps(setup.getNpcName("npc_egg","first"))>> maid outfit.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> finally manages to find her voice, stammering out something vaguely understandable as "@@.npc_egg;Th—thanks@@" before pausing and taking a deep breath. "@@.npc_egg;Um, so about <<=setup.getNpcName("npc_rachel","first")>>... is she okay? I mean... shouldn't someone do something to help her?@@"<br>
<br>
[<<moveTo "event_egg_guard_1_club_12" 'Ride home.' 300>>]
</div>/*#
#desc: npc_egg meets npc_guard explains rachel
#status: RELEASED 0.9.4.0
#ignore_spell: delicateness
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish") setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
You're suddenly curious as well as you realise that your time at the company has your personal calibration WAY out of whack as far as what is "normal." <br>
<br>
Sensing the delicateness of the situation, <<=setup.getNpcName("npc_guard","formal")>> drops some her playful teasing and gets a bit more serious. "@@.npc_guard;Okay is a bit outside of my expertise, but if the question is... does <<=setup.getNpcName("npc_rachel","first")>> want to be like it is? That's a very yes. The show you saw tonight was exactly that... a show, that horny <<if $fetish.sissy>>sissy<<else>>slut<</if>> was coming to the club back before we had the closer getting off on being objectified and fucked. Apparently it used the time "off" to get creative, first putting its programming knowledge to use in writing the Digital Mistress... and then managing to cobble together "investors" to make development and testing of that its full-time job. The <<guy>> running the presentation is the director of sales, <<=setup.getNpcName("npc_rachel","first")>> did some sort of weird management structure where, even though <<=setup.getNpcName("npc_rachel","first")>> technically owns the company, all the decisions are made by management and <<=setup.getNpcName("npc_rachel","first")>> spends its time writing code and being sexually... well, for <<=setup.getNpcName("npc_rachel","first")>> its delighted, for most people it would be abuse.@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> looks wide-eyed at this revelation. "@@.npc_egg;Wait so... they really are like that all the time?@@"<br>
<br>
[<<moveTo "event_egg_guard_1_club_13" 'Continue.' 120>>]
</div>/*#
#desc: npc_egg meets npc_guard explains rachel cont
#status: RELEASED 0.9.4.0
#ignore_spell: th,n,ds
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish") setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
"@@.npc_guard;Yup, 24/7 objectified<<if $fetish.sissy>>sissy <</if>>fuck-slave... as I said, <<=setup.getNpcName("npc_rachel","first")>> is kind of an extreme case. Never trust an advertising presentation, they're the way they are because they desperately, desperately WANTED to be an owned, <<if $fetish.sissy>>sissified<<else>>feminised<</if>> object... and they worked hard towards that end. As for the sales pitch, well... it's a real product, but that application is more fantasy extreme than fact, but hey, there are people that want to play in that space. If you want an additional assurance, <<=setup.getNpcName('npc_sex_club', 'formal')>>, the owner of this club, is actually on the board and acts under some ostentatiously opaque business title as a sort of safety control where <<he npc_sex_club>> monitors the situation and is responsible for some pile of credits set aside if <<=setup.getNpcName("npc_rachel","first")>> wanted to stop and like... restart a normal life.@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> has gone from horror to confusion to maybe a hint of excitement over the course of the conversation. "@@.npc_egg;Wow, that's crazy... I could never...@@"<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> grins, "@@.npc_guard;And that's fine! The fun of DS is that you can construct your own rules, so long as everyone is consenting and enjoying themselves well... <<=setup.getNpcName("npc_rachel","first")>> can be a constantly-aroused "thing" that lives to serve and be fucked and you... well, you can be whatever you want... well, and cute, whatever you choose you're gonna remain a cute cutie.@@" <<=setup.getNpcName("npc_guard","formal")>> winks, seemingly finishing diffusing the tension and leaving <<=setup.getNpcName("npc_egg","first")>> blushing.<br>
<br>
"@@.npc_egg;Th—thanks... you're cute too... I mean sexy, I mean, hot I mean...@@" <<=setup.getNpcName("npc_egg","first")>> falls silent as <<=setup.getNpcName("npc_guard","formal")>> beams, back in playful mode once again.<br>
<br>
"@@.npc_guard;Oh you are just TOO adorable. Do give me a call, as I said, I'd love to meet in maybe more... casual circumstances? I can see that this maybe a bit much for you...@@"<br>
<br>
"@@.npc_egg;N—no, it's, it's... you look, I mean, I like it...@@" <<=setup.getNpcName("npc_egg","first")>> replies, an explorer blazing trails to new shades of crimson.<br>
<br>
[<<moveTo "event_egg_guard_1_club_14" 'Ride home.' 300>>]
</div>/*#
#desc: npc_egg dropped off at home
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You try to chat on the ride home, but <<=setup.getNpcName("npc_egg","first")>> is lost in her own thoughts... thoughts in which a certain muscular guard are almost certainly playing an outsized role.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> is quite tuckered out, and you take her all the way back up to her flat before wishing her a good night.<br>
<br>
<<printThought "Well that evening went even more interestingly than expected...">><br>
<br>
[<<moveTo "room_foyer" 'Back to your flat.' 300>>]
</div>/*#
#desc: npc_guard talks about dreams
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.offer>>
<<applyExperience 'submission' 19 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
<<if $scene.offer>>
You start to offer yourself<<if setup.checkItemTypeWorn("cage")>> and your key<</if>>, but <<=setup.getNpcName("npc_guard","formal")>> shakes her head and lets you down with a gentle smile. "@@.npc_guard;I appreciate the offer and... well, you're fun and all, but what we have is more of a casual thing, your work obligations and everything... no, if I'm going to get serious I want someone that I can relax with in all ways. It's not your fault but the office, well... it's like a sword of Damocles, in a way, y'know?@@"
<<else>>
You wish <<=setup.getNpcName("npc_guard","formal")>> luck in finding the sub of her dreams and she smiles. "@@.npc_guard;Thanks... I think I just need to get out more, I spend so much time working, be that at the office or side gigs, or well... I don't get much time for me.@@"
<</if>>
<br><br>
You nod, helping her finish off the workout and heading back to the locker-room.<br>
<br>
[<<moveTo "event_gym_guard_showers" "Shower and change." 300>>]
</div>/*#
#desc: npc_egg ask about nerves
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.ask>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.ask>>
You ask <<=setup.getNpcName("npc_egg","first")>> if something's the matter and she blushes, hurriedly replying "@@.npc_egg;oh, yeah, everything's fine, just normal, just working out, uh, I mean, work and the usual stuff...@@"<br>
<br>
<<printThought "Working out?">> You think back to the meeting between <<=setup.getNpcName("npc_egg","first")>> and <<=setup.getNpcName("npc_guard","formal")>> at the club, and the latter's invitation to the gym...<br>
<br>
[<<moveTo "event_egg_guard_2_setup_egg_2" 'Ask if <<=setup.getNpcName("npc_egg","first")>> has been enjoying time with <<=setup.getNpcName("npc_guard","formal")>>?' 180>>]<br>
[<<moveTo "event_egg_guard_2_setup_egg_1" "Resume cleaning." 180 "<<set $scene.ask=false>">>]
<<else>>
You decide that if <<=setup.getNpcName("npc_egg","first")>> is going to tell you something, she can do it on her own schedule... after all, you've pushed her quite a bit, maybe now is the time for her to show a bit more initiative.<br>
<br>
You soon finish the last of the cleaning and <<=setup.getNpcName("npc_egg","first")>> wires you your <<=$scene.pay>> credits and you head out.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
<</if>>
</div>/*#
#desc: npc_egg ask about nerves
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_egg","first")>> if she's enjoying spending time with <<=setup.getNpcName("npc_guard","formal")>>?<br>
<br>
<<=ps(setup.getNpcName("npc_egg","first"))>> jaw drops and you almost think she's going to faint. "@@.npc_egg;How did you? Did you see us at the gym? How, wha—@@" she trails off into sputtering confusion and you wink.<br>
<br>
Rather than press harder you just wait a few moments longer... and are rewarded as the floodgates open and <<=setup.getNpcName("npc_egg","first")>> starts gushing with excitement.<br>
<br>
"@@.npc_egg;Oh! I was so nervous! I mean, first, <<=setup.getNpcName("npc_guard","formal")>>, WOW... and then the gym! I haven't worked out since PE class in school and, well... I never really got on with it that well, but <<=setup.getNpcName("npc_guard","formal")>> was just so nice! Like, at the club in full "domme" attire <<=setup.getNpcName("npc_guard","first")>> she was turbo intimidating... but in her gym outfit she was like... even hotter? And she was so patient, showing me how to hold the weights and not making fun of me for barely being able to lift anything, and her muscles are so pretty, and she smells so good and... and...@@" <<=setup.getNpcName("npc_egg","first")>> trails off once again, blushing even harder as you grin.<br>
<br>
[<<moveTo "event_egg_guard_2_setup_egg_3" "Ask what she's going to do now?" 180>>]
</div>/*#
#desc: npc_egg talk about future with npc_guard
#status: RELEASED 0.9.1.0
#ignore_spell: scaroused
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_egg","first")>> whats she's planning on doing next and she thinks for a moment, her excitement dissipating slightly as her shoulders slump. "@@.npc_egg;I... I don't know. I mean <<=setup.getNpcName("npc_guard","formal")>> is like turbo mega giga ultra omega level hot... and she said she wanted to see me again but... well, I've never really been in a relationship and she's so scary! I mean, not really SCARY scary, she was super nice, but I keep thinking about how she looked at the club, and that crazy presentation and like... I'm excited but uncertain and scaroused, and what if I'm misinterpreting things? Or what if I'm not and I mess it up and...@@" Her eyelashes flutter as she looks at you in desperation, eyes almost brimming with tears. "@@.npc_egg;Help me, <<=$player.first_name>> <<=$player.last_name>>, you're my only hope!@@"<br>
<br>
[<<moveTo "event_egg_guard_2_setup_egg_4" "Promise to see what you can find out." 180>>]
</div>/*#
#desc: npc_egg talk about future with npc_guard
#status: RELEASED 0.9.1.0
#ignore_spell: thankyouthankyouthankyou
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You say you'll see what you can find out for <<=setup.getNpcName("npc_egg","first")>> and she leaps in for a hug. "@@.npc_egg;Oh thankyouthankyouthankyou! You really just are, like... the best ever.@@" She squeezes you for almost a minute before leaning back and trying to flash a smile as she wipes away tears. "@@.npc_egg;Heh, look at me! Making a mess of things... or I would be, if I hadn't had such an AMAZING makeup instructor!@@"<br>
<br>
Secret out in the open, and with the onus now on you, the two of you finish cleaning the rest of the flat and she texts you your fee.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: talk to guard about npc_egg
#status: RELEASED 0.9.1.0
#ignore_spell: ohmygoddess
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.call>>
<<set $player.location to "Phonecall">>
<<else>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.call>>
<<createAdvBGR "./images/locations/phonecall.png">>
<<else>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.call>>
You
<<else>>
As you finish cleaning up the weights, you
<</if>>
ask <<=setup.getNpcName("npc_guard","formal")>> about <<=setup.getNpcName("npc_egg","first")>>.<br>
<br>
There is a heartbeat of silence... and then <<=setup.getNpcName("npc_guard","formal")>> goes off unlike anything you've heard before, her normal cocky confidence replaced with almost giddy schoolgirl energy.<br>
<br>
"@@.npc_guard;<<=setup.getNpcName("npc_egg","first")>>? Ohmygoddess she is SO FUCKING CUTE! Like, the very first time she met me to work out, she looked sooo intimidated just being in the gym... but once we started working out... even you aren't that sweet and adorably submissive, like, would you believe she was trying to rack and re-rack weights for me? A single 30 kilo plate looked like she was going to fall over... but she was so determined!@@"<br>
<br>
After the initial burst of energy <<=setup.getNpcName("npc_guard","formal")>> sighs. "@@.npc_guard;The thing is... as eager as she is, I can tell that she's a bit lacking in experience. I know I can come on a bit strong and intimidating, and I don't want to take advantage of just how much of a natural submissive she is... so I'm going to wait for her to make the first move... but goddess do I want her to make that move...@@"<br>
<br>
You thank <<=setup.getNpcName("npc_guard","formal")>> and note that <<=setup.getNpcName("npc_egg","first")>> is interested as well.<br>
<br>
"@@.npc_guard;Oh, you don't know how wonderful that is to hear! I'm getting tingly... and not just because of the supplements I take! I know you're friends so... could you maybe, like... well, as I said, I don't want to pressure, I want the decision to be hers...@@"<br>
<br>
You reply that you'll see what you can do, and <<=setup.getNpcName("npc_guard","formal")>> thanks you gratefully.<br>
<br>
<<if $scene.call>>
<<=setup.getNpcName("npc_guard","formal")>> hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall=false>><<set $roomchange=false>>">>]
<<else>>
You finish clearing up the weights and head for the locker-room.<br>
<br>
[<<moveTo "event_gym_guard_showers" "Shower and change." 300>>]
<</if>>
</div>/*#
#desc: npc_egg talk about date invite
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_egg","first")>> that you talked with <<=setup.getNpcName("npc_guard","formal")>> and that she's definitely interested... but she's waiting for <<=setup.getNpcName("npc_egg","first")>> to make a move.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> bites her lip, you can tell that the prospect of taking the initiative has her intimidated... but at the same time she seems to be mustering determination. "@@.npc_egg;Okay... um... do you think you could help? I mean, I want to ask her out but, like... she's so intimidating and amazing! What if I screw it up! Do you think you could like... help me make a good impression? Like, is there anything I can do to be SURE to excite her?@@"<br>
<br>
[<<moveTo "event_egg_guard_2_cage_2" 'Tell <<=setup.getNpcName("npc_egg","first")>> about <<=ps(setup.getNpcName("npc_guard","formal"))>> chastity fetish.' 300 "<<set $scene.suggest=true>>">>]<br>
[<<moveTo "event_egg_guard_2_cage_2" "You'll have to think about it." 300 "<<set $scene.suggest=false>>">>]
</div>/*#
#desc: suggest cage
#status: RELEASED 0.9.2.0
#ignore_spell: ch
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.suggest>>
You tell <<=setup.getNpcName("npc_egg","first")>> about <<=ps(setup.getNpcName("npc_guard","formal"))>> chastity fetish, and her eyes light up with a mix of fear, excitement and, most of all, arousal.<br>
<br>
"@@.npc_egg;Ch-chastity? Like that presentation...?@@" she bites her lip, and you can tell she's thinking back to the show the two of you saw at the club. "@@.npc_egg;Mmm... I'm not sure... but the idea of giving <<=setup.getNpcName("npc_guard","formal")>> control is really exciting... do you... do you think you could help me choose a device?@@" She blushes even harder "@@.npc_egg;I, uh... actually tried looking online, but there's so many measurements and stuff and yeah... I don't really know anything about this stuff so I really need your help... again...@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
[<<moveTo "event_egg_guard_2_cage_3" 'Looks like it is time for a trip to <<printShopName "mall_sexstore">>...' 300>>]<br>
<<else>>
[@@.link_locked;Now isn't a good time to hit up <<printShopName "mall_sexstore">>.@@]<br>
<</if>>
[<<moveTo "event_egg_guard_2_cage_abort" "You don't have time to go shopping right now." 300>>]<br>
<<else>>
You reply that you can't think of anything right now and <<=ps(setup.getNpcName("npc_egg","first"))>> shoulders slump.<br>
<br>
"@@.npc_egg;Oh. Well... I really do want this to be perfect, I mean, I'm still surprised she's interested in me, like... what can I offer to such a strong, glorious woman? So I'll just wait a bit longer, I guess, and hope you can come up with something...@@"<br>
<br>
The cleaning done, and nothing left to discuss, it's time for you to head home.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
<</if>>
</div>/*#
#desc: no time for shopping
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You reply that now isn't a good time, but perhaps the two of you could go shopping for a chastity cage some other day?<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> is disappointed, but eager as she nods. "@@.npc_egg;Sure, sure I guess just let me know the next time you come by?@@"<br>
<br>
[<<moveTo "room_foyer" "Nod and be on your way." 600>>]
</div>/*#
#desc: take npc_egg to sex store
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_egg","first")>> locks up her flat and the two of you head for the mall, <<=setup.getNpcName("npc_egg","first")>> nervous and giddy as you lead her into the <<printShopName 'mall_sexstore'>>. <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> nods at you in greeting but leaves you to your own devices as you head for the chastity section.<br>
<br>
You take a moment for <<=setup.getNpcName("npc_egg","first")>> to soak in her surroundings, her gaze flitting from the wall of dildos, to the racks of latex attire, from bondage equipment to sex machines, clearly excited, and perhaps overwhelmed, by possibility as you gently direct her to the chastity display and get her to focus.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> listens intently as you walk through the different sorts of chastity devices, in terms of material and design... but even as you go through the more basic cages it's quickly clear that <<=setup.getNpcName("npc_egg","first")>> has eyes for only one device — the high-tech <<=setup.getItemTypeName('c_cage_advanced')>> that had so stunned her previously having clearly left an impression as she seems all but unable to look away.<br>
<br>
[<<moveTo "event_egg_guard_2_cage_4" 'Time to get fitted...' 300>>]
</div>/*#
#desc: npc_egg start to change
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Changing Room.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_egg","first")>> skips ahead of you into the changing room, pulling up her skirt and shedding her cute panties as you unpack the chastity cage, setting out the different sized rings in preparation for her fitting before turning back to be faced with a problem, <<=ps(setup.getNpcName("npc_egg","first"))>> excited erection an obvious, though cute, obstacle to getting her locked.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> blushes, while remaining trembling and hard...<br>
<br>
[<<moveTo "event_egg_guard_2_cage_5" 'Ask if she needs a hand?' 300 "<<set $scene.offer=true>>">>]<br>
[<<moveTo "event_egg_guard_2_cage_5" 'Ask if she needs a moment?' 300 "<<set $scene.offer=false>>">>]
</div>/*#
#desc: npc_egg finish equipping
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.offer>>
You ask <<=setup.getNpcName("npc_egg","first")>> if she'd like some help and she blushes even harder. "@@.npc_egg;Um... actually... I was thinking that, maybe... I'd save myself? Do you think <<=setup.getNpcName("npc_guard","formal")>> would like that?@@" She hesitantly replies.<br>
<br>
You smile and assure her that <<=setup.getNpcName("npc_guard","formal")>> would certainly appreciate such a gesture,
<<else>>
You ask <<=setup.getNpcName("npc_egg","first")>> if she needs a moment and she blushes even harder. "@@.npc_egg;I guess this is kind of a chastity-22 situation... the idea of getting locked up has me so excited I can't get locked up! Only... I don't want to like...@@" her voice trails off as she gestures without touching.<br>
<br>
You nod knowingly
<</if>>
tell her to hold on for a moment while you get something to "resolve" the issue at hand.<br>
<br>
<<=setup.getNpcName("npc_sexstore_clerk","formal")>> seems to have anticipated the situation, as you've barely stepped out of the changing room when <<he npc_sexstore_clerk>>'s handing you a cold pack.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> smiles in gratitude as she cools off with a soft gasp, and with the erection out of the way it takes just a couple tests to find the perfectly sized key and have her caged away... her member already twitching in excitement as she gets everything situated, only to hesitate for a moment just before closing the lock...<br>
<br>
[<<moveTo "event_egg_guard_2_cage_6" 'Maybe <<=setup.getNpcName("npc_egg","first")>> would like one final release before getting locked away?' 300 "<<set $npc_egg.flags.final_cum=true>>">>]<br>
[<<moveTo "event_egg_guard_2_cage_6" 'Encourage her to stay strong and lock up.' 300 "<<set $npc_egg.flags.final_cum=false>>">>]
</div>/*#
#desc: npc_egg finish masturbate
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_egg.flags.postDateAfter = setup.setNextDate($now, 10, 0, 0)>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_egg.flags.final_cum>>
You sense <<=ps(setup.getNpcName("npc_egg","first"))>> nerves, and see her <<getWordPenis false>> showing signs of oncoming arousal and suggest she might feel better with one final hurrah before getting locked?<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> blushes and nods, "@@.npc_egg;y-yeah... are you sure that's alright?@@"<br>
<br>
You <<=setup.getNpcName("npc_egg","first")>> note that this is her first time, and relieving some pressure would be good to clear her mind. You duck out of the room to give <<=setup.getNpcName("npc_egg","first")>> some privacy, but it's barely a minute before her meek voice is calling you back, blushing slightly... even as you note the cage is now securely locked.
<<else>>
You encourage <<=setup.getNpcName("npc_egg","first")>> to finish locking up before her determination falters, noting that <<=setup.getNpcName("npc_guard","formal")>> would surely be impressed if showed such resolve in "saving" herself...<br>
<br>
The use of <<=setup.getNpcName("npc_guard","formal")>> seems to be just the trick, and you hear the soft click of a lock closing before <<=setup.getNpcName("npc_egg","first")>> lets out a held breath.
<</if>>
<br><br>
Still holding up her skirt, <<=setup.getNpcName("npc_egg","first")>> stares at her reflection with a beaming smile. "@@.npc_egg;Wow it's... it's even more intense than I imagined... a little heavy but... it feels right, somehow?@@" She blushes, futzing with her panties in embarrassment.<br>
<br>
You assure <<=setup.getNpcName("npc_egg","first")>> that she looks adorable, and that <<=setup.getNpcName("npc_guard","formal")>> will CERTAINLY love it... but to pay attention for any signs of chafing or the like.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> nods, re-arranging her skirt to account for the somewhat rigid bulge as you wish her luck...<br>
<br>
"@@.npc_egg;Luck, right... I guess the next step is to ask <<=setup.getNpcName("npc_guard","formal")>> then, right?@@"<br>
<br>
You nod confirming that it's up to <<=setup.getNpcName("npc_egg","first")>> now as you hand over the key. <<=setup.getNpcName("npc_egg","first")>> almost hesitates before pocketing the remote fob with a slow sigh as you remind her that it's more than a lock as you tell her to review the owner's manual. The two of you leave the changing room for <<=setup.getNpcName("npc_egg","first")>> to pay for her purchase, her mind obviously elsewhere, the new cage having focused her thoughts on her paramour...<br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: npc_egg brings up post-date
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You don't even have a chance to start cleaning <<=ps(setup.getNpcName("npc_egg","first"))>> flat before <<=setup.getNpcName("npc_egg","first")>> giddily starts telling you about her date.<br>
<br>
"@@.npc_egg;Oh I've just been waiting for you to come over to talk to you! Thanks to your help I finally went on a proper date with <<=setup.getNpcName("npc_guard","formal")>> and it was AMAZING!@@" <<=setup.getNpcName("npc_egg","first")>> bites her lip and almost lets out a moan as she grinds her thighs together. "@@.npc_egg;Goddess! I don't know which is more exciting, thinking about the date, or how that memory makes me strain in my cage, which reminds me I'm wearing a cage which makes me drip and...@@" <<=setup.getNpcName("npc_egg","first")>> blushes bashfully as you grin, getting them back on topic by congratulating them on things and asking for details.<br>
<br>
"@@.npc_egg;Right, deets. So I was able to muster the courage to ask <<=setup.getNpcName("npc_guard","formal")>> out and they made reservations and everything... but I was still like super nervous, I mean, she's SO HOT and how could she really be interested in little old me? But, well, once I showed up for the date.@@" <<=setup.getNpcName("npc_egg","first")>> shudders, "@@.npc_egg;So... you'd think that with our first meeting having been her LITERALLY in a full on dominatrix outfit I'd be prepared for anything but like... holy crap, seeing her dressed all formal, in a fitted suit and I was ready to just, like... dive to the floor and start polishing her boots with my tongue... instead she offered me her elbow to head into the restaurant and I was just on cloud nine! No... cloud ten! Like, being at her side, feeling her bicep through her jacket... I've never felt so soft and feminine and safe EVER!@@"<br>
<br>
[<<moveTo "event_egg_guard_4_postdate_2" "So... you two hit it off?" 300>>]
</div>/*#
#desc: npc_egg talks about dinner
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You teasingly ask if <<=setup.getNpcName("npc_egg","first")>> and <<=setup.getNpcName("npc_guard","formal")>> "hit it off" and <<=setup.getNpcName("npc_egg","first")>> hit it off and she beams. "@@.npc_egg;And then some! I mean, working out with her had been something but, like, obviously she has been holding back because at dinner? Oh <<if $fetish.daddy>>mommy<<else>>Goddess<</if>>, she had me in the palm of her hand from the start, like the way she'd look at me from across the table, when her leg would brush against mine, her ordering on my behalf... I was just a subby puddle... but, BUT! I managed to get her back at the end of dinner.@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> grins as she breathlessly continues her story. "@@.npc_egg;So, we'd just started desert and I just knew it was time to make my move. I slide my chastity key across the table and said that it was hers now... I swear, if the way she was looking at me before had me melting, that smolder once she'd asked what the key was to and I said it was for my chastity cage? Oh Goddess, she looked about ready to just vault the table and take me right there in the middle of the restaurant, and I would have been hers gleefully!@@"<br>
<br>
[<<moveTo "event_egg_guard_4_postdate_3" "And then...?" 180>>]
</div>/*#
#desc: npc_egg talks about chastity
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_egg","first")>> chuckles. "@@.npc_egg;Obviously that didn't happen but we blitzed through dessert and she invited me back to her place and had me strip to show off "her new property" and... wow, every dream I've had, and then some! The way she picked me up and put me on the bed, how she held my legs apart to "inspect" things... and then pocketing the key and informing me that my days of freedom were truly over? Turns out that being a sub is somehow even more exciting than the fantasy!@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> blushes as she continues on to the more... steamy part of the evening.
<<if $npc_egg.flags.final_cum>>
"@@.npc_egg;Of course the next thing I knew I was blurting out how I'd had that final orgasm before getting locked up and... well, rather than being disappointed I think she was even more excited? She talked about how proud she was of me for confessing my prior weakness... but then she punished me...@@"
<<else>>
"@@.npc_egg;Of course the next thing I know I was telling her how I got locked up, how I was a good girl and didn't get off before putting on the cage... but then she turned the tables, that while she likes her subs chaste, untouched, obedient, and saved up for her use she noted that I was getting a get too prideful and a sub shouldn't expect a reward just for doing what is proper...@@"
<</if>>
<<=setup.getNpcName("npc_egg","first")>> shudders, "@@.npc_egg;keep me locked forever, her punishment was... like her fingers were electric as she teased and edged and had me gasping with need, reminding me at every turn that "good girls" don't cum without permission and had me begging and begging until she literally picked me up and held me upside-down with one arm while I <<if $npc_guard.genitals == 'vag'>>ate her out<<else>>sucked her off<</if>> and then finally, finally finished me off... and I came so hard I think I passed out, all still in my cage!@@"<br>
<br>
[<<moveTo "event_egg_guard_4_postdate_4" "The flat isn't going to clean itself..." 1800>>]
</div>/*#
#desc: npc_egg finishes up about date
#status: RELEASED 0.9.2.0
#ignore_spell: domming,asspussy
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits $scene.pay>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'egg_collar_invite' _nextDate>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You congratulate <<=setup.getNpcName("npc_egg","first")>> while noting that the two of you really should start cleaning.<br>
<br>
"@@.npc_egg;Oh, right,@@" <<=setup.getNpcName("npc_egg","first")>> says with a blush and a curtsy. As you clean <<=setup.getNpcName("npc_egg","first")>> continues on, gushing about how every day she enjoys being <<=ps(setup.getNpcName("npc_guard","formal"))>> sub even more. She raves about how good it is to strain in her cage, how heavenly <<=ps(setup.getNpcName("npc_guard","formal"))>> <<if $npc_guard.genitals == 'vag'>>strap<<else>>cock<</if>> feels in her asspussy, how she loves serving and obeying <<=setup.getNpcName("npc_guard","first")>>, especially how things moved from mix hardcore dom/sub... to feeling tenderly cradled in <<=ps(setup.getNpcName("npc_guard","formal"))>> strong grasp for cuddles and kisses. <<=setup.getNpcName("npc_egg","first")>> adds that the two of them are now "working out" at the gym every other day, with <<=setup.getNpcName("npc_egg","first")>> getting to be her personal cleaning slave, licking the sweat off of <<=ps(setup.getNpcName("npc_guard","formal"))>> muscles before showering, scrubbing and licking her feet clean.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> is so energetic and enthusiastic the cleaning passes in record time and <<=setup.getNpcName("npc_egg","first")>> concludes by stating confidently that, if <<=setup.getNpcName("npc_guard","first")>> tried to return the key to her cage, she'd just beg <<=setup.getNpcName("npc_guard","first")>> to not give it to her, to not unlock her, and to please continue domming her instead.<br>
<br>
With <<=setup.getNpcName("npc_egg","first")>> still bright-eyed with excitement the cleaning reaches a conclusion as you congratulate <<=setup.getNpcName("npc_egg","first")>> once more before pocketing your pay and heading out.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: npc_guard invites you to collaring
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You're leaving work when <<=setup.getNpcName("npc_guard","formal")>> pulls you aside, cornering you in the lobby and glancing around to check for privacy before asking you a question.<br>
<br>
"@@.npc_guard;So <<=setup.getNpcName("npc_egg","first")>> and I have really hit it off, thanks to you and, well... we've agreed that she's ready for a collar, and I want to make it special. Given how big a role you played in brining us together, we both want you to be part of it so... do you think you could join us Sunday evening at <<printShopName 'sex_club'>>? It'll be a private affair, just the three of us...@@"<br>
<br>
<<set _time = setup.getNextDayOfWeek($now, 0, 18, 30, false)>>
<<set _clubScheduled = !setup.hasFreeTime(_time, $player, $currentTasks, 7200, true)>>
<<if _clubScheduled>>
[@@.link_locked;You already have something scheduled Sunday evening.@@]<br>
<<else>>
[<<moveTo "event_egg_guard_5_collaring_0_invite_2" "You'll be there!" 180 "<<set $scene.accept=true>>">>]<br>
<</if>>
[<<moveTo "event_egg_guard_5_collaring_0_invite_2" "That time isn't going to work..." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: npc_guard invites you to collaring
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _time = setup.getNextDayOfWeek($now, 0, 19, 30, false)>>
<<addTaskById 'egg_collaring' _time>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You reply that you would be honoured to assist and <<=setup.getNpcName("npc_guard","formal")>> smiles.<br>
<br>
"@@.npc_guard;Wonderful! You just show up at the club Sunday at <<if $options.militaryTime>>19:30<<else>>six thirty<</if>> in your fetish best and, well... it will be wonderful! And exactly what <<=setup.getNpcName("npc_egg","first")>> deserves... her days in freedom are truly over, and what better than her best friend to be there as I finally fully claim her as my sweet little sub?@@"
<<else>>
You explain that this weekend isn't good for you and <<=setup.getNpcName("npc_guard","formal")>> nods. "@@.npc_guard;I understand, well, when you do have some availability, talk with <<=setup.getNpcName("npc_egg","first")>>? Until then, well... her training in denial and delayed gratification can extend a bit longer, hmm?@@"
<</if>>
<br><br>
You nod and <<=setup.getNpcName("npc_guard","formal")>> returns to her post.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: npc_egg talk about collaring
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty("egg_collaring")>>
You apologise for missing <<=ps(setup.getNpcName("npc_egg","first"))>> collaring ceremony and ask if, perhaps you could try again?<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> is so clearly excited she doesn't even comment on you having stood her up. "@@.npc_egg;Of course! I couldn't possibly go forward without my best friend being a part of things... so... yeah, can you make it <<if $now.getUTCDay() == 1>>next <</if>>Sunday evening?@@"
<<else>>
You mention <<=ps(setup.getNpcName("npc_guard","formal"))>> wanting to schedule <<=ps(setup.getNpcName("npc_egg","first"))>> collaring ceremony and <<=ps(setup.getNpcName("npc_egg","first"))>> eyes light up.<br>
<br>
"@@.npc_egg;Yes, yes! Oh, I can't wait to be hers but... well, I also really, really want you to be there for it! Can you make it <<if $now.getUTCDay() == 1>>next <</if>>Sunday evening?@@"
<</if>>
<br><br>
<<set _time = setup.getNextDayOfWeek($now, 0, 18, 30, false)>>
<<set _clubScheduled = !setup.hasFreeTime(_time, $player, $currentTasks, 7200, true)>>
<<if _clubScheduled>>
[<<moveTo "event_egg_guard_5_collaring_0_invite_alt_2" "Of course!" 180 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;You already have something scheduled Sunday evening.@@]<br>
<</if>>
[<<moveTo "event_egg_guard_5_collaring_0_invite_alt_2" "That time isn't going to work..." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: npc_egg agree to help collaring
#status: RELEASED 0.9.2.0
#ignore_spell: aaaanyway
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if $currentTasks.hasOwnProperty("egg_collaring")>>
<<deleteTask "egg_collaring">>
<</if>>
<<set _time = setup.getNextDayOfWeek($now, 0, 19, 30, false)>>
<<addTaskById 'egg_collaring_alt' _time>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You confirm that you'll be there and <<=setup.getNpcName("npc_egg","first")>> beams with excitement.<br>
<br>
"@@.npc_egg;Oh I'm so excited! I'm straining inside my cage and that just makes me even more happy! Or, as <<=setup.getNpcName("npc_guard","formal")>> said, it looks like my days in freedom are just about over... and what better way than for my best friend to be there as I finally fully give myself over to being her sweet little sub?@@" She winks at you and grins, "@@.npc_egg;I love it when she calls me that! Aaaanyway, I'll see you <<if $now.getUTCDay() == 1>>next<<else>>this<</if>> Sunday, <<if $options.militaryTime>>19:30<<else>>six thirty<</if>> in your fetish best where it all began at <<printShopName 'sex_club'>>!@@"
<<else>>
You explain that you just won't be able to make it <<if $now.getUTCDay() == 1>>next<<else>>this<</if>> Sunday evening.<br>
<br>
"@@.npc_egg;Oh,@@" <<=setup.getNpcName("npc_egg","first")>> replies with a resigned sigh... "@@.npc_egg;you have such a busy life! I guess... let me know when things free up. Until then I'll just be here... locked and waiting.@@" She winks at you to defuse the tension a bit and leads you out of her flat.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: fail to appear for egg collaring
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_guard","formal")>>.<br>
<br>
<<printThought 'Crap, I forgot about <<=ps(setup.getNpcName("npc_egg","first"))>> collaring!'>><br>
<br>
"@@.npc_guard;Tsk, tsk... it looks like a sweet little sub is going to have to wait a bit longer for her collar... what with her insisting on you taking part... talk with <<=setup.getNpcName("npc_egg","first")>> when you're ready to reschedule... until then, well, I guess I have a slave-to-be to console...@@"<br>
<br>
She hangs up without you being able to come up with anything better than a lame apology.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet npc_guard at sex club
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish") setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_guard', 'formal')>> greets you with a smile and steps out from behind her desk as <<=setup.getNpcName('npc_sex_club', 'formal')>> appears.<br>
<br>
"@@.npc_guard;Thanks again for letting me take the night off.@@" <<=setup.getNpcName('npc_guard', 'formal')>> states as <<=setup.getNpcName('npc_sex_club', 'formal')>> takes her place.<br>
<br>
"@@.npc_sex_club;But of course! Enjoy your evening, claim your prize... and show her all the joy a collar brings! I'll hold down the fort.@@"<br>
<br>
<<=setup.getNpcName('npc_guard', 'formal')>> bows and leads you into the club, her excitement plain despite her mask.<br>
<br>
[<<moveTo "event_egg_guard_5_collaring_2" "Continue." 180>>]
</div>/*#
#desc: find npc_egg for collaring
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_egg","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_guard","first")>> leads you through the club, barely paying attention to various greetings, her thoughts clearly on the ceremony to come.<br>
<br>
"@@.npc_guard;Alright,@@" she states as she stoops outside one of the club's private rooms. "@@.npc_guard;My slave-to-be is waiting inside, she wanted you to help finish her preparations and, well... it's like that old superstition about seeing the bride in her wedding dress, so I'll see you when everything's ready...@@"<br>
<br>
She hesitates for a moment as she hands you a key, smiling once again in silent confirmation of just how important this is to her.<br>
<br>
You turn to the door to the private room.<br>
<br>
[<<moveTo "event_egg_guard_5_collaring_3" "Head inside..." 180>>]
</div>/*#
#desc: intro to teasing npc_egg for collaring
#status: RELEASED 0.9.2.0
#ignore_spell: ripeness
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Private Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_private.png" setup.charImage("npc_egg","npc_egg_naked")>>
<div id="invframe" class="scrolltext">
You enter the private room to find <<=setup.getNpcName("npc_egg","first")>> already immobilized in bondage, striped naked save for her chastity cage.<br>
<br>
She smiles in greeting as she glances at the key <<=setup.getNpcName("npc_guard","formal")>> gave you. "@@.npc_egg;So... I don't know how much more excited I could be anticipating my collaring but <<=setup.getNpcName("npc_guard","formal")>> and I agreed that I should be harvested, locked and collared at full ripeness... and there's nobody I trust more to show me the limits of arousal...@@"<br>
<br>
You smile, reflecting back on how far <<=setup.getNpcName("npc_egg","first")>> has come, from unkempt, bashful shut-in, to cute and eager sub-to-be...<br>
<br>
[<<moveTo "event_egg_guard_5_collaring_4" "Time to tease..." 300>>]
</div>/*#
#desc: tease npc_egg for collaring
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Private Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_private.png" setup.charImage("npc_egg","npc_egg_naked")>>
<div id="invframe" class="scrolltext">
You grin and step forward, looking <<=setup.getNpcName("npc_egg","first")>> in the eye as you ever so carefully slide the key into their chastity cage, drawing the moment out as you slowly, slowly turn it in the lock, the click of the steel prison opening eliciting a gasp of excitement from your subject.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> trembles... and swells as her cage opens and she stiffens, hard and drippy at your slightest touch as she bites her lip and closes her eyes.<br>
<br>
You slide to your knees, keeping your touches delicate as you stroke the inside of her spread thighs and tease her glistening tip, finger circling under her stretched foreskin as your other hand slides up towards her rear, teasing pole and hole alike as she pants and shudders in her tight bonds.<br>
<br>
"@@.npc_egg;So good...@@" she pant-whispers, her brief moments out of chastity already having her so, so near an orgasm.<br>
<br>
[<<moveTo "event_egg_guard_5_collaring_5" "Denial." 1200>>]
</div>/*#
#desc: denial of npc_egg
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Private Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_private.png" setup.charImage("npc_egg","npc_egg_naked") setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You remove your hand, blowing gently across <<=ps(setup.getNpcName("npc_egg","first"))>> stiff <<if $fetish.sissy>>sissy <</if>>clitty for torturously gentle stimulation as you add in some verbal teasing, talking about how cute and lovely <<=setup.getNpcName("npc_egg","first")>> is to offer herself to <<=setup.getNpcName("npc_guard","formal")>>.<br>
<br>
Still continuing to lightly stroke with two fingers you rise partially up, your lips and tongue teasing one of <<=ps(setup.getNpcName("npc_egg","first"))>> pert nipples as you congratulate her on her lovely breasts, on what a beautiful girl she has become. Ever-so-sensitive to your subject you stop just as an orgasm is about to arrive, your stroking fingers freezing in place as you pause all stimulation, waiting for your writhing, moaning friend to calm down every so slightly before resuming the stimulation.<br>
<br>
Sliding back down to your knees, you go back to a mix of hand and verbal taunting, contrasting <<=ps(setup.getNpcName("npc_egg","first"))>> sweet softness with how the big, strong guard will surely lock her right back up, train her to be anal only... or maybe full on no-touch, a sweet submissive trained to cum on command... but only after fulfilling her duties of service...<br>
<br>
[<<moveTo "event_egg_guard_5_collaring_6" "Continue." 180>>]
</div>/*#
#desc: npc_guard offers npc_egg collar
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Private Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_private.png" setup.charImage("npc_egg","npc_egg_naked") setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
"@@.npc_egg;Yes, yes! Before I met you I was wasting my time on work and loneliness... I want to be <<=ps(setup.getNpcName("npc_guard","formal"))>> perfect good girl, to serve and worship and learn and cuddle and love...@@"<br>
<br>
"@@.npc_guard;I accept,@@" comes <<=ps(setup.getNpcName("npc_guard","formal"))>> response, the muscular woman having snuck into the room to appear behind you, one hand reaching out to caress her sub-to-be's face. "@@.npc_guard;So beautiful... you sure you're ready? To trade freedom for submission, to be my property, caged and collared, mine to hold and protect and love?@@"<br>
<br>
From the moment's before frenzied pant <<=ps(setup.getNpcName("npc_egg","first"))>> voice is suddenly soft and quivering, yet unmistakably serious and full of passion. "@@.npc_egg;Yes... please...@@"<br>
<br>
You pull back to watch, looking up as <<=setup.getNpcName("npc_guard","formal")>> wraps a collar around <<=ps(setup.getNpcName("npc_egg","first"))>> neck, the click of it locking closed the final push for <<=setup.getNpcName("npc_egg","first")>> to<<if $fetish.cum>>spurt with<<else>>have<</if>> a totally hands-free orgasm.<br>
<br>
<<=ps(setup.getNpcName("npc_guard","formal"))>> gaze flicks downward for a moment, before her hand reaches down to possessively encase the still twitching member. "@@.npc_guard;I admire the passion... but it looks like your training still needs some work...@@"<br>
<br>
"@@.npc_egg;Yes, <<=setup.getNpcName("npc_guard","formal")>>...@@" <<=setup.getNpcName("npc_egg","first")>> responds, a distant whisper floating up from the depths of sub-space.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> smiles and leans in, one hand on <<=ps(setup.getNpcName("npc_egg","first"))>> collar, one between her sub's legs, and their lips pressed together...<br>
<br>
[<<moveTo "event_egg_guard_5_collaring_7" "Make your retreat." 180>>]
</div>/*#
#desc: npc_egg collaring completed
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.noGuard = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Private Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<div id="invframe" class="scrolltext">
You crawl out of the private room, leaving <<=setup.getNpcName("npc_guard","formal")>> and <<=setup.getNpcName("npc_egg","first")>> to their private fun with no more than a final glance back to see the strong guard cradling her delicate prize, restraints partially removed so that <<=setup.getNpcName("npc_egg","first")>> can hug back, clinging koala-like to her owner.<br>
<br>
After the passion you just witnessed the meat market of the sex club isn't the most appealing, and you weave your way through the crowd and make your exit.<br>
<br>
[<<moveTo "room_sex_club_exterior" "Leave the club." 180>>]
</div>/*#
#desc: npc_egg invite to threesomes
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_egg","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin and say you'd love to have more "fun" together with <<=setup.getNpcName("npc_egg","first")>> and <<=setup.getNpcName("npc_guard","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> smiles in excitement... and then gasps suddenly. "@@.npc_egg;Sorry, um... well, see <<=setup.getNpcName("npc_guard","formal")>> decided I was straining and dribbling in my cage too much... so she enabled some sort of biometric sensor thing that shocks me if I get too excited. Unfortunately... it hasn't really stopped, in fact, I think it's teaching me to be something of a pain slut... and that idea only turns me on more.@@" She shudders again and bites her lip in confirmation of this vicious cycle.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> laughs, "@@.npc_egg;Anyway, I'm obviously really excited. When you're ready just give <<=setup.getNpcName("npc_guard","formal")>> a call to set something up. After all, she owns me and all of my orgasms, so it's up to her what happens!@@"
<<else>>
You politely decline <<=ps(setup.getNpcName("npc_egg","first"))>> offer, noting that you're really busy with work and stuff.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> is obviously a little disappointed, but she nods. "@@.npc_egg;I get that... well, if you change your mind, you can go ahead and give <<=setup.getNpcName("npc_guard","formal")>> a call and set something up. After all, she owns me and all of my orgasms, so it's up to her what happens!@@"
<</if>>
<br><br>
You reply that you'll keep that in mind and head off.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: talk to guard about threesome
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.alreadyScheduled = $currentTasks.hasOwnProperty("task_egg_threesome") && !$currentTasks.task_egg_threesome.finished>>
<<set _daysOfWeek = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]>>
<<if $scene.alreadyScheduled>>
<<if setup.daysToDate($now,setup.getTaskDueDate('task_stage_3_party')) == 0>>
<<set $scene.date = "this evening">>
<<elseif setup.daysToDate($now,setup.getTaskDueDate('task_stage_3_party')) == 1>>
<<set $scene.date = "tomorrow">>
<<elseif setup.daysToDate($now,setup.getTaskDueDate('task_stage_3_party')) == 2>>
<<set $scene.date = "the day after tomorrow">>
<<else>>
<<set $scene.date = _daysOfWeek[_nextDate.getUTCDay()]>>
<</if>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 0, 20, 30)>>
<<if $now.getUTCHours() < 20 && setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<<set $scene.schedule = true>>
<<set $scene.date = "this evening">>
<</if>>
<<if !$scene.schedule>>
<<set _nextDate = setup.setNextDate($now, 1, 20, 30)>>
<<if setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<<set $scene.schedule = true>>
<<set $scene.date = "tomorrow">>
<</if>>
<</if>>
<<if !$scene.schedule>>
<<set _nextDate = setup.setNextDate($now, 2, 20, 30)>>
<<if setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<<set $scene.schedule = true>>
<<set $scene.date = "the day after tomorrow">>
<</if>>
<</if>>
<<if !$scene.schedule>>
<<set _nextDate = setup.setNextDate($now, 3, 20, 30)>>
<<if setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<<set $scene.schedule = true>>
<<set $scene.date = _daysOfWeek[_nextDate.getUTCDay()]>>
<</if>>
<</if>>
<<if !$scene.schedule>>
<<set _nextDate = setup.setNextDate($now, 4, 20, 30)>>
<<if setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<<set $scene.schedule = true>>
<<set $scene.date = _daysOfWeek[_nextDate.getUTCDay()]>>
<</if>>
<</if>>
<<if !$scene.schedule>>
<<set _nextDate = setup.setNextDate($now, 5, 20, 30)>>
<<if setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<<set $scene.schedule = true>>
<<set $scene.date = _daysOfWeek[_nextDate.getUTCDay()]>>
<</if>>
<</if>>
<<if $scene.schedule>>
<<addTaskById "task_egg_threesome" _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You bring up <<=ps(setup.getNpcName("npc_egg","first"))>> offer of a threesome.<br>
<br>
<<if $scene.alreadyScheduled>>
"@@.npc_guard;We already discussed this, and I look forward to seeing you <<=$scene.date>>.@@"
[<<moveTo "event_egg_guard_6_threesomes_2_call_2" "You'll see her there." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_egg_guard_6_threesomes_2_call_2" "You need to cancel." 60 "<<set $scene.accept=false>>">>]<br>
<<else>>
<<if $scene.schedule>>
"@@.npc_guard;Mmm, yeah, that sounds good, let's say... <<=$scene.date>>, <<if $options.militaryTime>>20:30<<else>>eight thirty pm<</if>> at the Gym? It'll be right after <<=setup.getNpcName("npc_egg","first")>> and my workout and I know a private room that'll work great.@@"
<<else>>
"@@.npc_guard;Mmm, yeah, that sounds good... only, I'm pretty booked up this week, multiple jobs, late shifts... security life, y'know? Maybe give me a call some other time.@@"
<</if>>
<br><br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: talk to guard about threesome
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<deleteTask "task_egg_threesome">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You re-confirm your planned threesome and <<=setup.getNpcName("npc_guard","formal")>> hangs up.
<<else>>
You explain that you aren't going to be able to make it for the planned threesome.<br>
<br>
"@@.npc_guard;A disappointment... but thank you for informing me. Give me a call some other time if you would like to reschedule.@@" <<=setup.getNpcName("npc_guard","formal")>> hangs up.
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: fail to show up for threesome
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_egg","first")>>... it seems you missed you threesome date...<br>
<br>
"@@.npc_egg;Hey... so <<=setup.getNpcName("npc_guard","formal")>> said she set things up with you... but now you aren't here?@@"<br>
<br>
You apologise and give the lame excuse that something came up...<br>
<br>
"@@.npc_egg;Oh, well... I guess some other time, then...@@" She hangs up.<br>
<br>
<<printThought "Well I feel like a right heel...">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: show up for threesome with egg and guard
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _variants = ["sweat","oral"]>>
<<if $fetish.piss>>
<<set _variants.push("piss")>>
<</if>>
<<set $scene.variant = _variants.random()>>
<<if $scene.variant == "piss">>
<<set $currentcall=true>>
<</if>>
/%
TODO: event_egg_guard_6_threesomes_4_bondage_todo
TODO: event_egg_guard_6_threesomes_4_analingus_todo
%/
<</if>>
<<if ["piss","oral"].includes($scene.variant)>>
<<set $player.location to "Phonecall">>
<<else>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if ["piss","oral"].includes($scene.variant)>>
<<createAdvBGR "./images/locations/phonecall.png">>
<<else>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym") setup.getEggImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.variant>>
<<case "sweat">>
You make your way through the gym to find <<=setup.getNpcName("npc_guard","formal")>> and <<=setup.getNpcName("npc_egg","first")>> in a private room. <<=setup.getNpcName("npc_guard","formal")>> has clearly been through a long, hard workout, her naked body glistening with sweat as she lays across a bench. <<=setup.getNpcName("npc_egg","first")>> is in the midst of massaging her owner.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> looks up from her work and smiles in greeting as <<=setup.getNpcName("npc_guard","formal")>> glances lazily over. "@@.npc_guard;Wonderful. I think I've been marinating long enough... so how about you get over here and help <<=setup.getNpcName("npc_egg","first")>> lick me clean?@@"<br>
<br>
Her shift in position causes a rivulete of sweat to trickle down her shoulder and <<=setup.getNpcName("npc_egg","first")>> eagerly leans in lick it up... from the way her body jolts and shudders even this was enough to trigger her chastity cage..<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> smiles in amusement and waits for you to join in.<br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_sweat_1" "Lick enthusiastically." 1800 "<<set $scene.try=true>>">>]<br>
[<<moveTo "event_egg_guard_6_threesomes_4_sweat_1" "Just lick her clean." 1800 "<<set $scene.try=false>>">>]<br>
[<<moveTo "event_egg_guard_6_threesomes_4_abort_1" "You remembered you need to be somewhere else." 300>>]
<<case 'piss'>>
You arrive at the gym and get a text from <<=setup.getNpcName("npc_egg","first")>>.<br>
<br>
"@@.npc_egg;<<=setup.getNpcName("npc_guard","formal")>> says to meet us in the showers, hurry up, we don't want to make her hold much longer...@@"<br>
<br>
<<printThought "I think I can guess where this is going...">><br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_piss_1" "Head for the showers..." 120 "<<set $currentcall=false>>">>]<br>
[<<moveTo "event_egg_guard_6_threesomes_4_piss_1_abort" "You aren't interested in lemonade today." 120>>]
<<case "oral">>
You arrive at the gym and get a text from <<=setup.getNpcName("npc_guard","formal")>> with the number of one of the gym's private rooms.<br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_oral_1" "Go meet up..." 120 "<<set $currentcall=false>>">>]<br>
[<<moveTo "room_gym_lobby" "You changed your mind. Don't hook up today." 180 "<<set $currentcall=false>>">>]
<<default>>
ERROR: unexpected scene.variant
<</switch>>
</div>/*#
#desc: abort threesome with egg and guard
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym") setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You explain that something came up and you actually can't stay.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> frowns, but nods before turning back to <<=setup.getNpcName("npc_egg","first")>> as the planned threesome becomes a twosome.<br>
<br>
[<<moveTo "room_gym_lobby" "Leave." 300>>]
</div>/*#
#desc: sweaty threesome lick
#status: RELEASED 0.9.3.0
#ignore_spell: sweatiest,muskiest,gock
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym") setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.try>>
You hurry to assist in licking <<=setup.getNpcName("npc_guard","formal")>> clean... though even your enthusiasm is far from a match for <<=ps(setup.getNpcName("npc_egg","first"))>> loving, passionate service. Twin tongues tracing tenderly, you work your way across <<=ps(setup.getNpcName("npc_guard","formal"))>> muscular form. Her taste and scent is as strong as she is, salty, concentrated essence of woman that puts you in mind of some ancient warrior queen after a battle.
<<else>>
<<=ps(setup.getNpcName("npc_egg","first"))>> passion for the work at hand is far beyond your own, as they make up for your more circumspect licking by going straight for the muskiest, sweatiest parts of <<=ps(setup.getNpcName("npc_guard","formal"))>> body.<br>
<br>
You don't know what sort of workout she had, but <<=ps(setup.getNpcName("npc_guard","formal"))>> entire body seems to glisten with sweat, her taste and scent as strong as she is, a salty, concentrated essence of woman that puts you in mind of some ancient warrior queen after a battle.
<</if>>
<br><br>
The occasional coo of approval is the only sound in the room, as <<=setup.getNpcName("npc_guard","formal")>> lets you and <<=setup.getNpcName("npc_egg","first")>> work, her muscles flexed wherever you lick so that your tongue is always gliding over toned, firm muscle, from her wiggling toes all the way up to her fragrant armpits.<br>
<br>
Though you have each taken different routes in this winding, erotic journey, <<=setup.getNpcName("npc_egg","first")>> eventually arrive at the same destination — between <<=ps(setup.getNpcName("npc_guard","formal"))>> thighs where her
<<switch $npc_guard.genitals>>
<<case 'penis'>>
large <<getWordPenis false>> rises hard and tall... and her heavy balls glisten with sweat and arousal.
<<case 'futa'>>
large <<getWordPenis false>> rises hard and tall above her dripping <<getWordVagina>>... and her heavy balls glisten with sweat and arousal.
<<case 'cybernetic'>>
large cyber-gock rises hard and tall... and her heavy balls glisten with sweat and arousal.
<<case 'cyber-futa'>>
large cyber-gock rises hard and tall above her dripping cybernetically enhanced <<getWordVagina>>... and her heavy balls glisten with sweat and arousal.
<<case 'vag'>>
her dripping <<getWordVagina>>.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_egg","first")>> tears her gaze away from the prize to share a glance with you. Somewhat breathless, it is clear that <<=setup.getNpcName("npc_egg","first")>> has been working through the erotically tormenting distraction of her chastity cage... and yet looks even more motivated to "finish" things off.<br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_sweat_2" "Time for teamwork..." 300>>]
</div>/*#
#desc: sweaty threesome oral
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_guard.genitals != "vag">>
<<applyExperience 'oral' $npc_guard.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym") setup.getEggImage()>>
<div id="invframe" class="scrolltext">
Cheek to cheek, you and <<=setup.getNpcName("npc_egg","first")>>
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa' 'cybernetic' 'cyber-futa'>>
suck and lick passionately; first polishing <<=ps(setup.getNpcName("npc_guard","formal"))>> balls to a figurative mirror shine before sucking her to completion, <<=setup.getNpcName("npc_egg","first")>> being the lucky one to take thick load while you are busy passionately servicing the lengthy shaft.
<<case 'vag'>>
suck and lick passionately; tired tongues nimbly working between every fold for your desert... ending with <<=setup.getNpcName("npc_egg","first")>> being the recipient of a strong, squirting orgasm.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
Breathlessly caught up in the moment, <<=setup.getNpcName("npc_egg","first")>> swallows on reflex... just as <<=setup.getNpcName("npc_guard","formal")>> sits up and frowns. "@@.npc_guard;Tsk, tsk... I've been teaching you to present first, and that's without the complication of now being unable to share with your friend...@@"<br>
<br>
She may have forgotten her training a moment ago, but <<=setup.getNpcName("npc_egg","first")>> needs no further instruction to turn over and present her bottom for punishment.<br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_sweat_3" "Watch." 300>>]
</div>/*#
#desc: sweaty threesome oral
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym") setup.getEggImage()>>
<div id="invframe" class="scrolltext">
A quick, firm spanking ensues as <<=setup.getNpcName("npc_egg","first")>> counts, moans... and nearly cums from her spanking.<br>
<br>
After the final butt-jiggling slap <<=setup.getNpcName("npc_guard","formal")>> shoves her hand in between <<=ps(setup.getNpcName("npc_egg","first"))>> legs to come up with a pair of sopping fingers. "@@.npc_guard;Look at this! I'm going to have to come up with some additional punishments if you are going to be this much of a pain slut... now clean up your mess!@@"<br>
<br>
"@@.npc_egg;Yes, <<=setup.getNpcName("npc_guard","formal")>>,@@" <<=setup.getNpcName("npc_egg","first")>> moans as she leans in to passionately lick <<=ps(setup.getNpcName("npc_guard","formal"))>> fingers clean. "@@.npc_egg;This one apologises for her mistakes, but she finds it impossible not to get excited by her owner's strict attention...@@"<br>
<br>
"@@.npc_guard;Good girl,@@" <<=setup.getNpcName("npc_guard","formal")>> purrs as she pulls <<=setup.getNpcName("npc_egg","first")>> in by her collar for a passionate kiss that sees your once innocent and eggy friend melt and swoon.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> glances at a clock. "@@.npc_guard;Hmm, looks like our room reservation is about up... we'll have to pick this up at home,@@" she states as she reaches for her surprisingly large gym bag, half full with what looks like a weeks worth of sweaty gym clothes. "@@.npc_guard;Chop, chop, my dear,@@" she commands with a tap of a remote to start the quiet sound of vibration to come from <<=ps(setup.getNpcName("npc_egg","first"))>> rear as her lusty torment is further enhanced. "@@.npc_guard;That should keep you ripe for the walk home... as to you,@@" <<=setup.getNpcName("npc_guard","formal")>> looks at you with a grin. "@@.npc_guard;Thanks for joining us... we'll have to do it again sometime.@@"<br>
<br>
You watch as <<=setup.getNpcName("npc_egg","first")>> nestles amidst the laundry, <<=setup.getNpcName("npc_guard","formal")>> stuffing a pair of used panties into her slave's mouth to stifle the moans before swiftly tying <<=setup.getNpcName("npc_egg","first")>> into a basic hogtie and zipping things up, <<=setup.getNpcName("npc_egg","first")>> immersed in the smelly laundry and casually tossed over <<=ps(setup.getNpcName("npc_guard","formal"))>> shoulder.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> flashes you a wink as she puts her clothes back on and gestures for the door "@@.npc_guard;<<=ps(setup.getNpcName("npc_egg","first"))>> addiction to my scent is coming along quite nicely.@@" She cranks the vibrator higher and the bag shakes. "@@.npc_guard;There we go, that'll keep her breathing heavy and deep the whole way home... @@"<br>
<br>
You share a final awed glance before holding the door and heading off yourself.<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName('npc_guard', 'formal') + " and " + setup.getNpcName('npc_egg', 'first') + "threesome content">>
<<include "futureContentBoilerplate">><br>
<br>
[<<moveTo "room_gym_lobby" "Return to the gym lobby." 180>>]
</div>/*#
#desc: npc_guard and npc_egg piss abort
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You decide against "watery" fun with <<=setup.getNpcName("npc_guard","formal")>> and <<=setup.getNpcName("npc_egg","first")>> today.<br>
<br>
"@@.npc_egg;I guess that just means more for me...@@" <<=setup.getNpcName("npc_egg","first")>> texts back followed by a smile emoji.<br>
<br>
[<<moveTo "room_gym_lobby" "Return to the gym lobby." 180 "<<set $currentcall=false>>">>]
</div>/*#
#desc: npc_guard and npc_egg piss start
#status: RELEASED 0.9.3.0
#ignore_spell: gock
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked") setup.charImage("npc_egg","npc_egg_naked")>>
<div id="invframe" class="scrolltext">
You head for the locker-room, shedding your clothes before hitting the private showers where you're swiftly able to locate <<=setup.getNpcName("npc_guard","formal")>> and <<=setup.getNpcName("npc_egg","first")>>.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> welcomes you in where you find <<=setup.getNpcName("npc_egg","first")>> worshipfully washing her owner's back.<br>
<br>
"@@.npc_guard;That will do, my pet,@@" <<=setup.getNpcName("npc_guard","formal")>> commands, causing <<=setup.getNpcName("npc_egg","first")>> to bow and them slide into position kneeling in front of <<=setup.getNpcName("npc_guard","formal")>>, staring up lovingly transfixed by <<=ps(setup.getNpcName("npc_guard","formal"))>>
<<switch $npc_guard.genitals>>
<<case 'penis'>>
large, hard <<getWordPenis false>>.
<<case 'futa'>>
large, hard <<getWordPenis false>>... and the glistening <<getWordVagina>>.
<<case 'cybernetic'>>
large, hard cyber-gock.
<<case 'cyber-futa'>>
large, hard cyber-gock and the shiny, glistening <<getWordVagina>> behind.
<<case 'vag'>>
glistening <<getWordVagina>>.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
"@@.npc_guard;So glad you could make it, you see I've been taking a new supplement and well... it's running right through me, and it would be such a waste to let those valuable vitamins go down the drain.@@" She motions for you to kneel at her feet next to <<=setup.getNpcName("npc_egg","first")>>. "@@.npc_guard;Come in, and share in <<if $fetish.daddy>>mommy's<<else>>my<</if>> golden gift...@@"<br>
<br>
<<printThought "I suspected what was about to happen... looks like I was right...">><br>
<br>
<<=setup.getNpcName("npc_egg","first")>> glances away from her prize just long enough to beckon you in, and you find yourself feeling oddly thirsty...<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_egg_guard_6_threesomes_4_piss_2" "Shed your clothes and kneel before a goddess." 300>>]
<<else>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkNaked()>>
[<<moveTo "event_egg_guard_6_threesomes_4_piss_2" "Kneel before a goddess." 300>>]
<<else>>
[@@.link_locked;You're going to make a mess of things if you don't remove your clothes first.@@]
<</if>>
<</if>>
</div>/*#
#desc: npc_guard and npc_egg drink piss
#status: RELEASED 0.9.3.0
#ignore_spell: gock
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'piss' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked") setup.charImage("npc_egg","npc_egg_naked")>>
<div id="invframe" class="scrolltext">
You kneel cheek to cheek with <<=setup.getNpcName("npc_egg","first")>> as <<=setup.getNpcName("npc_guard","formal")>> gives the two of you a few moments to suck, lick, and sniff in enticing anticipation before she unleashes a golden stream as powerful as she is.<br>
<br>
Even with two eager slaves slurping away it's a challenge to keep up, golden drops splattering over both of your faces to drip down onto your <<if $player.body.breastsize[0]>>breasts<<else>>chest and breast<</if>>. Brightly coloured from whatever supplement ran through her system, her taste is strong and stimulating, almost aphrodisiac-like as you and <<=setup.getNpcName("npc_egg","first")>> kiss, suck and share directly from the font.<br>
<br>
As the flow tapers off to a trickle <<=ps(setup.getNpcName("npc_egg","first"))>> enthusiasm turns to frenzy as she slightly nudges you out of the way to
<<if $npc_guard.genitals == "vag">>
press her lips around <<=ps(setup.getNpcName("npc_guard","formal"))>> slit to lick up the final few drops.
<<else>>
wrap her lips around <<=ps(setup.getNpcName("npc_guard","formal"))>> throbbing <<if ['cybernetic','cyber-futa'].includes($npc_guard.genitals)>>cyber-<</if>>gock to lick up the final few drops.
<</if>>
Cheeks puffed out from her greedy thirst-sating <<=setup.getNpcName("npc_egg","first")>> catches herself just before she swallows, blushing slightly in embarrassment before pulling you in for a gilded kiss to share the final harvest.<br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_piss_3" "Gulp." 120>>]
</div>/*#
#desc: npc_guard and npc_egg finish drinking piss
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_guard","npc_guard_naked") setup.charImage("npc_egg","npc_egg_naked")>>
<div id="invframe" class="scrolltext">
Your tongues dance and <<=setup.getNpcName("npc_egg","first")>> submissively melts as you swap and swallow the last of <<=ps(setup.getNpcName("npc_guard","formal"))>> luscious lady lemonade.<br>
<br>
"@@.npc_guard;Good girls...@@" <<=setup.getNpcName("npc_guard","formal")>> states with a smile as the piss-swapping turns to full-on making out. Hose in hand, she gives the two of you each a quick blast, cleaning you off and re-focusing your attention on the most important thing in the room: her.<br>
<br>
"@@.npc_guard;There, now that I have given you a drink, and helped clean you off, well... I think now it is time for you to thank me for the generosity... there is one part left of me still to clean, after all... well, two parts, I suppose.@@" <<=setup.getNpcName("npc_guard","formal")>> directs attention downward and wiggles her toes... her sweaty, and now piss-drenched feet, their odor suddenly strong...<<if setup.getTotalValue("foot") > 15>> driving you wild<<else>> drawing you in...<</if>><br>
<br>
Eyes heavy with submissive lust <<=setup.getNpcName("npc_egg","first")>> practically dives for <<=ps(setup.getNpcName("npc_guard","formal"))>> left foot, ass in the air showing off a cheek-spreading plug... and a hi-tech chastity cage bouncing below.<br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_piss_4" "Join in." 120 "<<set $scene.foot=true>>">>]<br>
<<if setup.getTotalValue("foot") > 15>>
[@@.link_locked;You can't possibly resist such an enticing foot.@@]
<<elseif setup.getTotalValue("foot") > 10>>
<<if setup.checkWillpower() > 0>>
[<<moveTo "event_egg_guard_6_threesomes_4_piss_4" 'Resist your foot fetish and let <<=setup.getNpcName("npc_egg","first")>> enjoy both feet all.' 120 "<<spendWillpower 1>><<set $scene.foot=false>>">>]<br>
<<else>>
[@@.link_locked;You don't have the willpower to resist such an enticing foot.@@]
<</if>>
<<else>>
[<<moveTo "event_egg_guard_6_threesomes_4_piss_4" 'Let <<=setup.getNpcName("npc_egg","first")>> enjoy both feet all.' 120 "<<set $scene.foot=false>>">>]<br>
<</if>>
</div>/*#
#desc: npc_guard and npc_egg piss feet
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'foot' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_egg","npc_egg_naked") setup.charImage("npc_guard")>>
<div id="invframe" class="scrolltext">
<<if $scene.foot>>
Given the expression of unmitigated sub-space lust on <<=ps(setup.getNpcName("npc_egg","first"))>> face you hurry to do your part in licking <<=ps(setup.getNpcName("npc_guard","formal"))>> other foot clean, the mix of heavy sweat with a hint of piss combining for quite the potent, and fragrant, cocktail that you eagerly lick at.<br>
<br>
<<if setup.getTotalValue("foot") > 15>>
Even your
<<else>>
Your
<</if>>
submission is no match for <<=ps(setup.getNpcName("npc_egg","first"))>> utter joyous devotion, but you still do a more than thorough job of licking every part of <<=ps(setup.getNpcName("npc_guard","formal"))>> feet clean as she looks down with a smile... until she is interrupted by a phonecall.<br>
<br>
"@@.npc_guard;Yes? Really... very well, I will be in shortly.@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> is already back to her feet fetching <<=ps(setup.getNpcName("npc_guard","formal"))>> clothes and you quickly join in in assisting <<=setup.getNpcName("npc_guard","formal")>> getting dressed
<<else>>
You hesitate just long enough so that <<=setup.getNpcName("npc_egg","first")>> is already enthusiastically on to <<=ps(setup.getNpcName("npc_guard","formal"))>> second foot, your friend deep in subspace as her tongue eager laps out to clean every centimetre and lick between the toes.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> raises an eyebrow, only to be interrupted by a phonecall. "@@.npc_guard;Yes? Really... very well, I will be in shortly.@@" She states for her side of the conversation as <<=setup.getNpcName("npc_egg","first")>> transitions to helping her owner dress
<</if>>
in her work uniform while she continues to talk on the phone.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> finishes stepping into her heels just as she finishes her call.<br>
<br>
"@@.npc_egg;Work?@@" <<=setup.getNpcName("npc_egg","first")>> asks softly and <<=setup.getNpcName("npc_guard","formal")>> nods with a sigh, tracing her slave's cheek with a smile.<br>
<br>
"@@.npc_guard;Yes, a minor emergency, but nothing that should take too long. I will see you this evening, my pet, I will text you so you can time dinner.@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> smiles and bows, <<=setup.getNpcName("npc_guard","formal")>> placing a kiss on her slaves forehead before dashing out of the room.<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> watches after her owner with a loving smile until it is just the two of you.<br>
<br>
"@@.npc_egg;Hmm, I suppose it's time for us to dress and leave, as well?@@"<br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_piss_5" "Get dressed." 180>>]
</div>/*#
#desc: npc_guard and npc_egg piss cleanup
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_egg","npc_egg_naked")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_egg","first")>> do a bit more cleaning one another off and then get dressed before heading off on your separate ways.<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName('npc_guard', 'formal') + " and " + setup.getNpcName('npc_egg', 'first') + " threesome content">>
<<include "futureContentBoilerplate">><br>
<br>
[<<moveTo "room_gym_lobby" "Return to the gym lobby." 180>>]
</div>/*#
#desc: oral threesome intro
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym") setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You find <<=setup.getNpcName('npc_guard', 'formal')>> and <<=setup.getNpcName('npc_egg', 'first')>> in one of the gym's private rooms, <<=setup.getNpcName('npc_egg', 'first')>> in the midst of a squat set. Gluteus muscles straining, <<=setup.getNpcName('npc_egg', 'first')>> is doing box squats... landing each time with
<<if $npc_guard.genitals != "vag">>
<<=setup.getNpcName('npc_guard', 'formal')>> <<if ["futa", "cyber-futa"].includes($npc_guard.genitals)>>cyber-<</if>>cock rubbing between <<=ps(setup.getNpcName('npc_egg', 'first'))>> ass-cheeks.
<<else>>
her pressing gently into <<=ps(setup.getNpcName('npc_guard', 'last'))>> lap.
<</if>>
<br><br>
"@@.npc_guard;Tension!@@" <<=setup.getNpcName('npc_guard', 'formal')>> commands, punctuating the instruction with a quick across-the-cheeks spank. "@@.npc_guard;—and don't cheat your depth! Now come on, I want three more reps!@@"<br>
<br>
"@@.npc_egg;Yess...@@" <<=setup.getNpcName('npc_egg', 'first')>> gasp-moans, her response muffled both by lust... and by the pair of <<=ps(setup.getNpcName('npc_guard', 'last'))>> panties tightly stretched over <<=ps(setup.getNpcName('npc_egg', 'first'))>> face, front carefully positioned so that with every breath <<=setup.getNpcName('npc_egg', 'first')>> gets a deep, intense breath of her owner's scent.<br>
<br>
Trembling slightly, <<=setup.getNpcName('npc_egg', 'first')>> finishes the set, <<=setup.getNpcName('npc_guard', 'formal')>> immediately leaping to her feet to help guide the weights back into their clips, before all but pinning <<=setup.getNpcName('npc_egg', 'first')>> in place, muscular goddess wrapped around her slight slave to whisper a tender "@@.npc_guard;Good girl.@@"<br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_oral_2" "Looks like they've finally noticed you..." 120>>]
</div>/*#
#desc: oral threesome presented to serve
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym") setup.getEggImage()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_guard', 'formal')>> notices you first and greets you with a grin. "@@.npc_guard;Ah, you made it just in time for the cooldown set.@@" With the supple grace of a panther, <<=setup.getNpcName('npc_guard', 'formal')>> removes her slaves panty-mask to allow <<=setup.getNpcName('npc_egg', 'first')>> to notice you as well as <<=setup.getNpcName('npc_guard', 'formal')>> slides back into her seat. With legs spread, <<=ps(setup.getNpcName('npc_guard', 'formal'))>>
<<switch $npc_guard.genitals>>
<<case 'penis'>>
hard <<getWordPenis false>>
<<case 'futa'>>
hard <<getWordPenis false>>, and the slightest hint of glistening <<getWordVagina>>
<<case 'cybernetic'>>
hard cyber-cock
<<case 'cyber-futa'>>
hard cyber-cock, and the slightest hint of glistening <<getWordVagina>>
<<case 'vag'>>
glistening <<getWordVagina>>
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
on display.<br>
<br>
"@@.npc_guard;All this hard training has me feeling quite... aroused. Be a good pair of submissives and kneel over here so you can deal with things.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_guard', 'formal'))>> dominant gaze somehow tracks the both of you as <<=setup.getNpcName('npc_egg', 'first')>> rushes into position... though you are not far behind. Like a pair of hungry trained dogs you sit next to one another, staring with lust at <<=ps(setup.getNpcName('npc_guard', 'formal'))>> intoxicatingly fragrant,
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
throbbing <<getWordPenis false>>
<<case 'cybernetic' 'cyber-futa'>>
throbbing cyber-cock
<<case 'vag'>>
<<getWordVagina>>
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<<if $fetish.cum>>
as a bead of pre forms and slowly trickles downward <<if $npc_guard.genitals != "vag">>sliding down the length of her long, hard shaft and then over the curve of her balls<</if>>.<br>
<br>
As the drop swells and begins to fall <<=setup.getNpcName('npc_egg', 'first')>> loses control and dives in to catch the prized dribble before it hits the ground.
<<else>>
seeming to delight in taunting you with what you both want, but have yet to be given permission to taste.<br>
<br>
<<=setup.getNpcName('npc_egg', 'first')>> breaks ranks first, a moaned "@@.npc_guard;Please...@@" dripping with want and wanton lust.
<</if>>
<br><br>
<<=setup.getNpcName('npc_guard', 'formal')>> grins, seemingly more pleased by how quickly <<=setup.getNpcName('npc_egg', 'first')>> is taking to scent training than she is annoyed at her slaves slip in decorum even as she lightly reprimands with a "@@.npc_guard;Tsk, tsk... in that case, <<=$player.first_name>>, you may begin...@@"<br>
<br>
<<if $npc_guard.genitals == "vag">>
[<<moveTo "event_egg_guard_6_threesomes_4_oral_3" "Lick!" 300>>]
<<else>>
[<<moveTo "event_egg_guard_6_threesomes_4_oral_3" "Suck!" 300>>]
<</if>>
</div>/*#
#desc: oral threesome suck or lick
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_guard.genitals != "vag">>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'very' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym") setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You lean between <<=ps(setup.getNpcName('npc_guard', 'formal'))>> thighs as <<=setup.getNpcName('npc_egg', 'first')>> watches on, her heavy breathing a brief sound-track as you
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
suck <<=ps(setup.getNpcName('npc_guard', 'formal'))>> pulsing <<getWordPenis false>>.
<<case 'cybernetic' 'cyber-futa'>>
suck <<=ps(setup.getNpcName('npc_guard', 'formal'))>> pulsing cyber-cock.
<<case 'vag'>>
lick <<=ps(setup.getNpcName('npc_guard', 'formal'))>> glistening <<getWordVagina>>.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<<=ps(setup.getNpcName('npc_egg', 'first'))>> hungry torment does not last long, and she is soon commanded to take her place as well,
<<switch $npc_guard.genitals>>
<<case 'penis' 'cybernetic'>>
angling below to polish <<=ps(setup.getNpcName('npc_guard', 'formal'))>> balls while you continue to suck.
<<case 'futa' 'cyber-futa'>>
angling behind to lick <<=ps(setup.getNpcName('npc_guard', 'formal'))>> <<getWordVagina>> while you continue to suck.
<<case 'vag'>>
cheek to cheek licking next to you.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_guard', 'formal')>> chuckles, and you feel her hand gripping your hair, pulling you tighter as she grinds against yours and <<=ps(setup.getNpcName('npc_egg', 'first'))>> faces.
"@@.npc_guard;Good <<if $player.identify_as == "female">>girls<<else>>slaves<</if>>. You're liking that, aren't you? You just love <<if $npc_guard.genitals != "vag">>the taste of my ball-sweat<<else>>my taste<</if>>?@@"<br>
<br>
[<<moveTo "event_egg_guard_6_threesomes_4_oral_4" "Moan." 300>>]
</div>/*#
#desc: oral threesome force finish
#status: RELEASED 0.9.4.0
#ignore_spell: eagerest
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.cum && $npc_guard.genitals != "vag">>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_guard","npc_guard_gym") setup.getEggImage()>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_egg', 'first')>> moan in submissive unison as <<=setup.getNpcName('npc_guard', 'formal')>> tightens her grip, fully taking control now as she uses the pair of you like extensions of her arms, humping and grinding as she brings herself to a
<<if $fetish.cum>>
<<if $npc_guard.genitals == "vag">>
gushing conclusion.
<<else>>
fountainous<<if ['futa','cyber-futa'].includes($npc_guard.genitals)>>, and gushing<</if>> conclusion.<br>
<br>
With perfect timing she had pulled you away just before climax, and you are almost blinded by her massive load spraying you in the face... only for it to start dripping down and <<=setup.getNpcName('npc_egg', 'first')>> is lunging in to lick you clean.<br>
<br>
"@@.npc_guard;Look who's become the eagerest cum-slut for her owner! Good girl!@@" <<=setup.getNpcName('npc_guard', 'formal')>> gushes as she squeezes out a final few drops into <<=ps(setup.getNpcName('npc_egg', 'first'))>> eager mouth.
<</if>>
<<else>>
grunting conclusion.
<</if>>
<br><br>
<<=ps(setup.getNpcName('npc_guard', 'formal'))>> eyes blaze with singular lust as she stares down at <<=setup.getNpcName('npc_egg', 'first')>>
<<if $npc_guard.genitals == "vag">>
and you sense a second wind... or second crest of passion, has arrived.
<<else>>
and her not even fully softened
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
<<getWordPenis false>> re-hardens with a second-wind of arousal.
<<case 'cybernetic' 'cyber-futa'>>
cyber-cock flexes back to full, glowing arousal.
<</switch>>
<</if>>
<br><br>
"@@.npc_guard;That will be all for today, <<=$player.first_name>>... I have a couple private sets that I need to... pound out...@@" <<=setup.getNpcName('npc_guard', 'formal')>> doesn't so much as glance in your direction, the pair having only eyes for one another as <<=setup.getNpcName('npc_egg', 'first')>> looks up with submissive joy and you quietly make your exit.<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName('npc_guard', 'formal') + " and " + setup.getNpcName('npc_egg', 'first') + " threesome content">>
<<include "futureContentBoilerplate">><br>
<br>
[<<moveTo "room_gym_lobby" "Return to the gym lobby." 180>>]
</div>/*#
#desc: see egg during shift
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_egg","npc_egg_2")>>
<div id="invframe" class="scrolltext">
As you're bustling back and forth delivering drinks you recognise a familiar face walk into the maid cafe — <<=setup.getNpcName("npc_egg","first")>> steps in clutching her laptop and looking more than a touch nervous.<br>
<br>
She waves at you in greeting then slips into a booth in the back corner in one of the other maidtress' section. It's a few minutes later before you manage to get ahead of coffee orders to get a minute alone.<br>
<br>
[<<moveTo "event_egg_guard_maidcafe_intro_2" "Check in on your friend." 240>>]
</div>/*#
#desc: egg asks for maid help
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_egg","npc_egg_2")>>
<div id="invframe" class="scrolltext">
You drop by <<=ps(setup.getNpcName("npc_egg","first"))>> where she's bustling away, multiple code windows open with contents well above what you ever studied in school.<br>
<br>
"@@.npc_egg;Hi!@@" she says in nervous greeting. "@@.npc_egg;<<=setup.getNpcName("npc_guard","formal")>> said I needed to get out more, so I thought I'd do some work here...@@" <<=setup.getNpcName("npc_egg","first")>> glances around and blushes for a moment before leaning in and continuing in a quieter, conspiratorial voice. "@@.npc_egg;So... I was wondering... would you maybe be up for helping me do a little surprise for <<=setup.getNpcName("npc_guard","formal")>>? Seeing all you pretty maids gave me an idea...@@"<br>
<br>
[<<moveTo "event_egg_guard_maidcafe_intro_3_accept" "Of course." 240>>]<br>
[<<moveTo "event_egg_guard_maidcafe_intro_3" "Some other time, perhaps." 240>>]
</div>/*#
#desc: accept egg maid request
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_egg","npc_egg_2")>>
<div id="invframe" class="scrolltext">
You grin and reply that you'd love to help <<=setup.getNpcName("npc_egg","first")>> out.<br>
<br>
"@@.npc_egg;Great! So, like... I was thinking maybe you could invite <<=setup.getNpcName("npc_guard","formal")>> to the cafe... and then, like... I could surprise her by waiting on her and such? I think she'd be really impressed at me combining service with taking initiative in public...@@"<br>
<br>
You smile back and say you'll see what you can arrange.... and give the other girls at the cafe the heads up so <<=setup.getNpcName("npc_egg","first")>> doesn't get in any trouble...<br>
<br>
"@@.npc_egg;Cool, cool, cool... whenever you have time and thanks... anyway, I guess we both should probably get back to work, this code isn't going to debug itself!@@"<br>
<br>
You smile and hurry off to attend to another customer.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 2100>>]
</div>/*#
#desc: decline egg maid request
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_egg","npc_egg_2")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_egg","first")>> that your life is pretty busy at the moment.<br>
<br>
"@@.npc_egg;Sure, sure... well maybe someday things'll calm down? No problem, though, you've helped me so much already!@@"<br>
<br>
It's your turn to blush a bit before you take advantage of another customer raising their hand to hurry back to work.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 2100>>]
</div>/*#
#desc: invite guard to egg maid event
#status: FINISHED 0.9.3.0
#ignore_spell: 6pm
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 18, 0, false)>>
<<set $scene.hasTime = setup.hasFreeTime(_nextDate, $player, $currentTasks, 3600)>>
<<if $scene.hasTime>>
<<addTaskById 'egg_guard_maidcafe' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_guard","formal")>> if she wants to meet for coffee at Cafe Newtype?
<<if $scene.hasTime>>
"@@.npc_guard;Coffee? How mundane... but sure, I could use a hit of the old brown bean-juice, gotta stay sharp when I've got multiple jobs, weights to lift and a sub to boot, you know? How about <<if $now.getUTCDay() == 1>>next <</if>>Sunday at <<if $options.militaryTime>>18:00<<else>>6pm<</if>>? Get the old caffeine hit before I head to work at <<printShopName 'sex_club'>>?@@"<br>
<br>
You reply that you'll be there and she hangs up.<br>
<br>
You quickly text <<=setup.getNpcName("npc_egg","first")>> the details, and put her in contact with <<=setup.getNpcName("npc_maid","first")>> for the maid cafe side of things.<br>
<br>
"@@.npc_egg;All right! Sunday... this is going to be so exciting! Thanks again for the help, you're really the bestest bud ever!@@"
<<else>>
"@@.npc_guard;Coffee? Sounds great... but some other time. Working two jobs, y'know? Plus taking care of my sub and these muscles! It's all rewarding work but... doesn't leave all that much time. Hit me up some other time, aight?@@"<br>
<br>
She hangs up.
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 60 "<<set $currentcall=false>>">>]
</div>/*#
#desc: invite guard to egg maid event
#status: FINISHED 0.9.3.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text from <<=setup.getNpcName("npc_guard","formal")>>.<br>
<br>
"@@.npc_guard;Hey, so... I'm at the mall, and I don't see any sign of you? Guess something came up... I think I'm going to head over to <<printShopName 'sex_club'>> a bit early, see if <<=setup.getNpcName('npc_sex_club', 'formal')>> needs any help setting things up before we open for the night.@@"<br>
<br>
<<printThought "Shit, I forgot we were going to get together...">><br>
<br>
A moment later you get another text from <<=setup.getNpcName("npc_egg","first")>>. "@@.npc_egg;Hey, so... I saw <<=setup.getNpcName("npc_guard","formal")>> wander off... and I don't see you anywhere... I guess today's plans are off?@@"<br>
<br>
You apologise and reply that you'll reschedule for some other time.<br>
<br>
"@@.npc_egg;Oh... okay. Well, I'll catch you later, then... bye!@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet guard at maidcafe
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You find <<=setup.getNpcName("npc_guard","formal")>> at the cafe and lead the way to a table near the back. As you walk past <<=setup.getNpcName("npc_maid","first")>> she flashes you a subtle wink... looks like everything is moving according to plan.<br>
<br>
You purposefully take a seat so that <<=setup.getNpcName("npc_guard","formal")>> will have her back to the kitchen as <<=setup.getNpcName("npc_waitress","first")>> notes that "@@.npc_waitress;Your maidtress will be with you shortly.@@"<br>
<br>
[<<moveTo "event_egg_guard_maidcafe_2" 'Wait for <<=setup.getNpcName("npc_egg","first")>> to make her entrance...' 180>>]
</div>/*#
#desc: egg approaches you and guard
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
You share some small-talk with <<=setup.getNpcName("npc_guard","formal")>> to kill time until <<=setup.getNpcName("npc_egg","first")>> steps out from the cafe's back-room. She takes a deep breath and takes an additional moment to preen her maid outfit before heading purposefully towards the table. You sense something a bit different and it takes you a moment to notice that she's wearing steeper heels than usual... and walking with just a touch of unsteadiness on top of her obvious case of nerves.<br>
<br>
"@@.npc_egg;Excuse this one. Could this maid take you wonderful ladys' orders?@@" <<=setup.getNpcName("npc_egg","first")>> asks as she comes to a stop next to the table.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> looks up with momentary surprise... and then a wide smile. "@@.npc_guard;Oh! I had a feeling something was up but this... was this your idea my sweet, scrumptious sub?@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> blushes and does something between a nod and a curtsy causing <<=setup.getNpcName("npc_guard","formal")>> to smile even wider. "@@.npc_egg;Y-yes... you said to think about other ways to serve you and, well...@@"<br>
<br>
"@@.npc_guard;Well this was an excellent move... and good job maintaining public protocol and avoiding the first person...@@"<br>
<br>
This curtsy is more clear as <<=setup.getNpcName("npc_egg","first")>> bows submissively. "@@.npc_egg;This sub is pleased to serve its owner in all ways. Have you decided on your order?@@"<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> smirks, the familiar expression of a domme who knows exactly how to push their slave's buttons... and is about to do so. It's a mood you are quite familiar with and you sit back as <<=setup.getNpcName("npc_guard","formal")>> produces a remote from a hip pouch with an almost theatrical flourish.<br>
<br>
"@@.npc_guard;You've done so well, that you deserve a reward.@@" She twists a dial and <<=setup.getNpcName("npc_egg","first")>> gasps, wobbling in place as you hear the soft, but unmistakable, sound of a vibrator. "@@.npc_guard;That should keep you attentive and perky... and double americano with cream for me... and you?@@"<br>
<br>
You quickly add your order and <<=setup.getNpcName("npc_guard","formal")>> turns the vibrator to its lowest setting. "@@.npc_guard;Well, you have your marching orders, so get to it! You have two minutes before I crank the plug in your rear to max... and let me guess, it's the big one today, isn't it? Mmmm, you are determined to impress, no matter how high the risk!<<if $fetish.cum>> Anyway, I expect to taste every drop of your personal cream in my drink... so you better hop to it!<</if>> And don't think I didn't notice your heels, I want to see that sexy but of yours swinging with each step. We haven't been working that squooty for nothing!@@"<br>
<br>
"@@.npc_egg;Y-yes, <<=setup.getNpcName("npc_guard","formal")>>,@@" <<=setup.getNpcName("npc_egg","first")>> gasps, her flushed expression made even more red with arousal as she bows and darts off, hips swaying as she wobbles and weaves past other tables.<br>
<br>
[<<moveTo "event_egg_guard_maidcafe_3" "Wait for your drinks..." 240>>]
</div>/*#
#desc: egg delivers drink
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_egg","npc_egg_3_maid")>>
<div id="invframe" class="scrolltext">
Two minutes on the dot later and <<=setup.getNpcName("npc_guard","formal")>> dials the remote to maximum intensity, smiling across the table at you as she idly fiddles with the pattern and you wait two minutes more for <<=setup.getNpcName("npc_egg","first")>> to return.<br>
<br>
Face flush and barely on her feet, <<=setup.getNpcName("npc_egg","first")>> wobbles her way to the table and delivers the drinks. Leaning forward next to the table she white-knuckles the edge, legs rubbery as she squirms and pants "@@.npc_egg;Your, GASP, order, <<=$player.first_name>>, <<=setup.getNpcName("npc_guard","formal")>>.@@"<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> takes a slow sip and smiles up at her sub. "@@.npc_guard;I will be with you in a moment, dear, just let me finish this lovely drink...@@"<br>
<br>
"@@.npc_egg;Y-yes, <<=setup.getNpcName("npc_guard","formal")>>.@@" <<=setup.getNpcName("npc_egg","first")>> stammers breathlessly as <<=setup.getNpcName("npc_guard","formal")>> toys with the remote.<br>
<br>
<<if $fetish.cum>>
"@@.npc_egg;Mmm, I can really taste the desperation... exquisite,@@" <<=setup.getNpcName("npc_guard","formal")>> remarks as she continues to sip her drink.<br>
<br>
<</if>>
[<<moveTo "event_egg_guard_maidcafe_4" "Enjoy your drink... and the show." 300>>]
</div>/*#
#desc: maid and jay appear
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_egg","npc_egg_3_maid") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
You sit back as <<=setup.getNpcName("npc_guard","formal")>> slowly sips her drink and <<=setup.getNpcName("npc_egg","first")>> tries to keep it together despite the audible buzzing coming from her rear<<if $fetish.cum>>... and the trickle of excitement leaking down her thigh past her skirts<</if>>. Eyes closed, biting her lip in concentration <<=setup.getNpcName("npc_egg","first")>> leans against the table and still almost slips, her wobbly knee shifting out from under her as <<=setup.getNpcName("npc_maid","first")>> suddenly appears.<br>
<br>
"@@.npc_maid;Is there a problem?@@" <<=setup.getNpcName("npc_maid","first")>> asks, standing next to the now frozen in shock <<=setup.getNpcName("npc_egg","first")>> as <<=setup.getNpcName("generic_female1","custom", "Jay")>> hurries up behind her girlfriend.<br>
<br>
"@@.npc_guard;No problem,@@" <<=setup.getNpcName("npc_guard","formal")>> replies with a casual smile, "@@.npc_guard;Just... enjoying the show...@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> nods as she looks over the trying to keep it together, trembling <<=setup.getNpcName("npc_egg","first")>>. "@@.npc_maid;Yes, well... I am afraid this isn't QUITE that sort of establishment... but me and my friend were about to go on break... if the three of you would like to take this show to a more... private locale?@@" <<=ps(setup.getNpcName("npc_maid","first"))>> eyes twinkle as she glances knowingly at you... and then all attention seems to turn to <<=setup.getNpcName("npc_guard","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> takes a final long gulp of her drink and then grins up at her sub. "@@.npc_guard;Well, I seem to have finished my drink so... yes, I mean, it would be rude to reject the invitation of your coworkers, wouldn't it, my sweet, submissive maidtress?@@"<br>
<br>
"@@.npc_egg;Yes, <<=setup.getNpcName("npc_guard","formal")>>.@@" <<=setup.getNpcName("npc_maid","first")>> replies, almost slipping yet again only for <<=setup.getNpcName("npc_guard","formal")>> to leap to her feet and lend support.<br>
<br>
"@@.npc_guard;Lead on...@@" <<=setup.getNpcName("npc_guard","formal")>> states with a grin.<br>
<br>
[<<moveTo "event_egg_guard_maidcafe_5" "Follow." 600>>]
</div>/*#
#desc: orgy with guard, egg, etc. starts
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_egg","npc_egg_3_maid") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
In a horny hurry the five of you head for the maid changing room where <<=setup.getNpcName("npc_egg","first")>> is granted a momentary breather on the couch as <<=setup.getNpcName("npc_maid","first")>> and <<=setup.getNpcName("npc_guard","formal")>> have a bit of a face-off.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> may have several inches... and at least a couple dozen kilos of muscle on <<=setup.getNpcName("npc_maid","first")>>, but the dominant maid is far from backing down as her skirt parts to reveal "The Destroyer" in all its magnificent glory.<br>
<br>
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
<<=setup.getNpcName("npc_guard","formal")>> grins back... as she reveals her own hard cock... at least as large as "The Destroyer," if not just a hair thicker.<br>
<br>
"@@.npc_maid;Finally, an equal... which end would you like?@@"
<<case 'cybernetic' 'cyber-futa'>>
<<=setup.getNpcName("npc_guard","formal")>> grins back... as she reveals her gleaming cyber-cock... at least as large as "The Destroyer," if not just a hair thicker.<br>
<br>
"@@.npc_maid;Finally, an equal... which end would you like?@@"
<<case 'vag'>>
<<=setup.getNpcName("npc_guard","formal")>> grins back as she reveals her dripping <<getWordVagina>>.<br>
<br>
"@@.npc_guard;I appreciate the offer... but I believe we have a sub to satisfy...@@"
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
The force of dual dominance turns towards <<=setup.getNpcName("npc_egg","first")>>, her still-buzzing plug replaced a moment later with the might of "The Destroyer" as her face is pressed between <<=ps(setup.getNpcName("npc_guard","formal"))>> legs <<if $npc_guard.genitals == "vag">>licking<<else>>deep-throating<</if>> passionately.<br>
<br>
A silent assistant, <<=setup.getNpcName("generic_female1","custom", "Jay")>> moves to kneel next to her Mistress, hugging <<=ps(setup.getNpcName("npc_guard","formal"))>> thigh and alternating massaging <<=ps(setup.getNpcName("npc_egg","first"))>> ass and <<=ps(setup.getNpcName("npc_maid","first"))>> balls as "The Destroyer" pounds away...<br>
<br>
[<<moveTo "event_egg_guard_maidcafe_6" "Lend a hand." 1200 "<<set $scene.action='hand'>>">>]<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_egg_guard_maidcafe_6" "Unlock yourself and get ready to take next..." 1200 "<<set $scene.action='penis'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis>> is locked away.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_egg_guard_maidcafe_6" "You'll take next..." 1200 "<<set $scene.action='penis'>>">>]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if setup.canSexOrRemoveChastity("vag")>>
[<<moveTo "event_egg_guard_maidcafe_6" "Unlock yourself and get in line for some of that dick..." 1200 "<<set $scene.action='vag'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked away.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_egg_guard_maidcafe_6" "You'd like to get bred by some of that dick..." 1200 "<<set $scene.action='vag'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_egg_guard_maidcafe_6" "Spread your ass and wait for next..." 1200 "<<set $scene.action='anal'>>">>]
</div>/*#
#desc: orgy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = 'penis' == $scene.action && setup.checkItemTypeWorn("cage") || 'vag' == $scene.action && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_egg","npc_egg_3_maid") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
The initial double-team turns into an orgy as you
<<switch $scene.action>>
<<case 'anal'>>
bend over and wiggle your ass in invitation for "next," soon getting your turn with <<if $npc_guard.genitals != "vag">>both <<=setup.getNpcName("npc_guard","formal")>> and<</if>> "The Destroyer."
<<case 'penis'>>
<<if $scene.removeCage>>unlock yourself and<</if>> whip it out to join in.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
You may be tiny compared to<<if $npc_guard.genitals != "vag">> <<=setup.getNpcName("npc_guard","formal")>> and<</if>> "The Destroyer," but nobody seems anything other than gleeful to fuck or suck as you join the side of the tops.
<<case 2 3>>
You may be smaller than<<if $npc_guard.genitals != "vag">> <<=setup.getNpcName("npc_guard","formal")>> and<</if>> "The Destroyer," but nobody seems anything other than gleeful to fuck or suck as you join the side of the tops.
<<case 4 5>>
You're just about on par with<<if $npc_guard.genitals != "vag">> <<=setup.getNpcName("npc_guard","formal")>> and<</if>> "The Destroyer," but and everyone is gleeful to fuck or suck as you join the side of the tops.
<<case 6>>
You draw some attention as you reveal your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock to be even larger than<<if $npc_guard.genitals != "vag">> <<=setup.getNpcName("npc_guard","formal")>> and<</if>> "The Destroyer," but everyone gleefully rises to this new challenge to fuck or suck as you join the side of the tops.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<case 'hand'>>
join <<=setup.getNpcName("generic_female1","custom", "Jay")>> in keeping the action rolling.
<<case 'vag'>>
<<if $scene.removeCage>>unlock yourself and <</if>>spread in invitation for "next," soon getting your turn with <<if $npc_guard.genitals != "vag">>both <<=setup.getNpcName("npc_guard","formal")>> and<</if>> "The Destroyer."
<</switch>>
<br><br>
What started with <<=setup.getNpcName("npc_egg","first")>> getting railed becomes much more democratised as couples switch and swap, kisses shared and holes pounded in every combination as <<=setup.getNpcName("npc_guard","formal")>> and <<=setup.getNpcName("npc_maid","first")>> seem to be in a sort of competition as to who can get the subs off the most times, <<=setup.getNpcName("npc_egg","first")>> out to an early lead, but <<=setup.getNpcName("generic_female1","custom", "Jay")>> roped in and caught up shortly after as you weave in and out.<br>
<br>
Rather than end with a bang the orgy eventually collapses into a pile of sweaty, satisfied bodies, lips turned up in satisfaction and loving gazes shared as strong arms wrap around delicate subs and everyone enjoys a few moments of stillness after the frenzied fucking.<br>
<br>
[<<moveTo "event_egg_guard_maidcafe_7" "Continue..." 1200>>]
</div>/*#
#desc: post orgy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_egg","npc_egg_3_maid") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
Marinating in sweat and satisfaction, it is <<=setup.getNpcName("npc_maid","first")>> and <<=setup.getNpcName("generic_female1","custom", "Jay")>> who are the first to rise, noting that their break is over and they need to return to the cafe.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> waits for the two maidtresses to depart before smiling down and sliding the plug back into <<=ps(setup.getNpcName("npc_egg","first"))>> rear. "@@.npc_guard;So that was fun... but I think, perhaps you should stick to "private" maid service in the future...@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> grins and nuzzles closer into her owner's muscles. "@@.npc_egg;Whatever service you prefer, <<=setup.getNpcName("npc_guard","formal")>>.@@"<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> grins and kisses her sub before rising to her feet, noting that "@@.npc_egg;I need to get to work, as well... but you can come help me change, if you like.@@"<br>
<br>
<<=setup.getNpcName("npc_egg","first")>> beams with excitement, the two waving good-bye to you as they hurry on their way.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: clean "mistress'" immaculate apartment, your job isn't good enough
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = $npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<<set $npc_landlord.flags.cleaning.maid_mistress = 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
You really don't see what the point could be in cleaning the already immaculate apartment, but you are getting paid so you do what you can, spending more time searching for dust or dirt than actually cleaning it.<br>
<br>
After some time you hear a sound at the door and you perk up to meet the tenant.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
Your first glance upon her requires you to resist the urge to drop to your knees.
<<else>>
Looking at her makes you feel involuntarily weak in the knees.
<</if>>
Dressed in a tight, formal blouse and skirt with leather gloves and boots she oozes dominant energy. She reminds you of <<=setup.getNpcName('npc_manager', 'formal')>>, but a decade or two older and far less... playful.<br>
<br>
The woman pauses to look at you and you flinch in surprise at the sound of the door closing behind her, almost completely transfixed.<br>
<br>
"@@.npc_maid_mistress;Hmm, a serviceable outfit, at least, but let us see if you did a job worthy of it.@@"<br>
<br>
You follow along behind as she does an inspection of your work, an inspection that does not go particularly well for you. Her standards would confuse a neat freak, chiding you for the slightest spec of dust, for a cup to have been placed a few degrees off-angle from its compatriots in the cupboard.<br>
<br>
Returning to the living room, she looks down at you and shakes her head.<br>
<br>
"@@.npc_maid_mistress;I cannot say you did not make an effort but, well... it is clear that your skills are not up to my standards. Still, a deal is a deal.@@" Pulling out her wallet she hands you <<=$scene.pay>> credits. "@@.npc_maid_mistress;If you come back, I believe I will supervise you... personally so that you can properly meet expectations.@@"<br>
<br>
<<printThought "Wow, I almost expected her to spank me or something...">><br>
<br>
Thanking her, you quickly leave and head back down to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 1200>>]
</div>/*#
#desc: mistress supervises you as you try to clean her apartment
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.horny = 90>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
Watching you like a hawk, the tenant gives you precise instructions on what, and how to clean things. She is beyond demanding to the point, you at one point find yourself re-washing a single cup four times before she is satisfied!<br>
<br>
Even with how immaculate the house was at the start, she somehow still manages to find plenty for you to clean, a meticulous taskmaster who you swear is getting off on ordering you around.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
Of course, she isn't the only one getting off on the quasi domina/sub dynamic and by the time she is finally satisfied things are clean, you are desperate for a culminating relief of serving her more personally.<br>
<br>
Pulling out her wallet, she begins counting out your payment.<br>
<br>
[<<moveTo "event_maid_work_mistress_2_1" "Ask if there's ANYTHING else you could do for her." 600 "<<set $scene.sub = true>>">>]<br>
[<<moveTo "event_maid_work_mistress_2_1" "Obediently accept your pay." 300 "<<set $scene.sub = false>>">>]
<<else>>
With all of these instructions, you can't help, but be pushed into a more obedient headspace.<br>
<br>
You find your heart racing as she counts out your pay, a tiny part of you wishing she'd push things just a little further...<br>
<br>
[<<moveTo "event_maid_work_mistress_2_1" "Obediently accept your pay." 300 "<<set $scene.sub = false>>">>]<br>
[@@.link_locked;That level of submission is still more a fantasy, for now...@@]
<</if>>
</div>/*#
#desc: accept payment or deepen submission after cleaning mistress' apartment
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sub>>
<<set $npc_landlord.flags.cleaning.maid_mistress = 2>>
<<applyExperience 'submission' 16 'little' $SEEN_STRANGER>>
<<addCredits 1>>
<<else>>
<<set $scene.pay = $npc_landlord.flags.cleaning.base_pay*2>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sub>>
She pauses mid-count to look up at you, her lips curling into a small smile as she folds up her wallet.<br>
<br>
"@@.npc_maid_mistress;So, this isn't just a uniform... this is what you are. A sweet, submissive...@@" with each word she steps closer, her presence hot and scary has you rooted you in place until she reaches under your skirt to <<if $player.body_ref.penis>><<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>grab the front of your chastity belt<<else>>take hold of your <<getWordMyPenis>><</if>><<else>>press her hand over your crotch<</if>> "@@.npc_maid_mistress;...<<if $fetish.sissy && $player.body_ref.penis>>sissy<<else>>slave<</if>>.@@"<br>
<br>
You gasp as she squeezes, she has you in the palm of her hand literally AND figuratively.<br>
<br>
Your voice soft and airy, you nod, replying with a breathless "@@.pc;Y-yes Mistress.@@"<br>
<br>
She grins in a too-familiar manner before finally releasing her grasp.<br>
<br>
"@@.npc_maid_mistress;Good... good. Unfortunately for you I do not have any more time this evening to... deal with one such as yourself, but next time you are here? Mmmmm@@" she licks her lips. "@@.npc_maid_mistress;Next time... come ready to SERVE.@@"<br>
<br>
She smiles and offers you a single credit. Heart racing, you curtsy in thanks as you gratefully accept the token payment she hands you and leave the flat.<br>
<br>
Once the door closes, you almost collapse against the wall, heart racing as you pant for air, trying to recover from her presence.<br>
<br>
<<printThought "How do I keep ending up in the clutches of this sort of woman?">><br>
<br>
Recovered enough to move, you stagger down the hall and take the elevator back down to your flat.
<<else>>
Slowly handing you <<=$scene.pay>> credits she raises an eyebrow, as if expecting more from you.<br>
<br>
You merely accept the money and curtsy in thanks. She dismisses you and you head back to your flat, feeling a great weight lift off your chest once you are out of her sight.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: full discipline as you clean mistress' apartment as her maid slave
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.cleaning.maid_mistress = 3>>
<<applyExperience 'submission' 13 'terrible' $SEEN_STRANGER>>
<<applyFatigue 40>>
<<applyStress 10>>
<<set $scene.pay = $npc_landlord.flags.cleaning.base_pay*3>>
<<addCredits $scene.pay>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
Dropping to the floor obediently, you crawl up to her and begin polishing her leather boots with your tongue.<br>
<br>
Crop in hand, she gives the occasional suggestive word or tap guiding you along until she is finally satisfied at the near mirror shine.<br>
<br>
"@@.npc_maid_mistress;Better, I hope you can carry this newfound perfectionism through the rest of our tasks.@@"<br>
<br>
You start to rise only for her to gently push you back down with the crop.<br>
<br>
"@@.npc_maid_mistress;Ah, ah. Standing is a privilege, not a right — you can crawl for a bit longer. Come along.@@"<br>
<br>
Leading through the house, she has you scrub on your hands and knees, only when the floor is finished to her satisfaction are you allowed to rise and commence with other cleaning tasks.<br>
<br>
If anything, she is even more exacting than before and you find that the only way to stay on top of her commands and avoid the corrective taste of the crop is to completely focus on becoming a living tool of enacting her desire.<br>
<br>
By the time she declares things "finished," you are exhausted both mentally and physically, barely having the energy to gratefully curtsy as she thanks you for <<if $fetish.sissy && $player.body_ref.penis>>your "sissy service" and<<else>>your service and<</if>> gives you a substantial payment of <<=$scene.pay>> credits.<br>
<br>
[<<moveTo "room_foyer" "Head home." 1800>>]
</div>/*#
#desc: clean apartment whilst pervert watches
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
You set to work cleaning the <<mans>> apartment, first picking up the half dozen discarded pizza boxes scattered across the room before moving on to the rest of the trash and clutter.<br>
<br>
Though <<he>> never says a word, the tenant is always in the same room as you as you clean. <<He>> makes the attempt to pretend to be otherwise occupied, but you frequently catch <<him>> blatantly staring at you, and once even adjusting <<himself>> while doing so!<br>
<br>
<<printThought "Hmm, <<he>> must be a bit lonely and pathetic, and I am looking pretty cute and sexy... I could probably get a better tip if I played things up a bit.">><br>
<br>
[<<moveTo "event_maid_work_pervert_1_2" "Ham it up and put on a show." 1800 "<<set $scene.flirty=true>>">>]<br>
[<<moveTo "event_maid_work_pervert_1_2" "Stay professional and ignore <<his>> presence as you finish cleaning." 3600 "<<set $scene.flirty=false>>">>]
</div>/*#
#desc: flirt with or ignore pervert as you clean
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.flirty>>
<<set $npc_landlord.flags.cleaning.maid_pervert = 1>>
<<applyExperience 'bimbofication' 9 'normal' $SEEN_STRANGER>>
<<set $scene.pay = $npc_landlord.flags.cleaning.base_pay*4>>
<<else>>
<<set $scene.pay = $npc_landlord.flags.cleaning.base_pay>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
<<if $scene.flirty>>
Noting the tenant's lurking presence, you decide to put on a show. Whenever you catch <<his>> gaze you make sure you look away first, biting your lip and turning bashfully as if YOU were the one doing something naughty.<br>
<br>
<<His>> attention almost fully upon you, you push things even further, taking every opportunity to bend over to pick things up, wiggling your butt to make sure <<he>> gets a nice show every time.<br>
<br>
You can tell your constant teasing is beginning to get to <<him>> when <<he>> finally sits down in front of the tv, turning on some random game show that <<he>> almost totally fails to focus on as you walk back and forth, dusting here or there and making sure you're always in <<his>> line of sight.<br>
<br>
You're about done when you make a final daring escalation. Leaning over <<his>> chair to clean the lamp on the other side,
<<if $player.body.breastsize[0]>2>>
you let your breasts dangle centimetres from <<his>> face, practically feeling <<his>> hot breath as you linger for several moments before straightening up.
<<else>>
though you are flat-chested you are close enough for your frilly top to almost brush <<his>> face, <<his>> stifled gasp enough to communicate that it was more than enough.
<</if>>
<br><br>
Looking very flustered, <<he>> fumbles for <<his>> wallet, pulling out a wad of <<=$scene.pay>> credits to hand to you while mumbling something about "@@.generic_male1;How beautiful you are@@" and how <<he>> "@@.generic_male1;Wishes <<he>> had a wife like you.@@"<br>
<br>
<<if $player.body.breastsize[0] > 0>>
Giving a cute curtsy in thanks, you make a show of stuffing the credits down your cleavage, giving a little wiggle while letting <<him>> look right down your rack before turning to go.
<<else>>
Pocketing your pay you turn to go, looking over your shoulder and giving a little butt wiggle as you take exaggerated, swaying steps towards the door.
<</if>>
<br><br>
<<He>> is looking very flush with excitement as you exit the flat. Closing the door and leaning an ear against the door, you can hear the unmistakable sounds of fapping, followed within only a few seconds by a groaning orgasm.<br>
<br>
<<printThought 'Hmm, maybe I should have been a bit more... reserved, would not want <<him>> having a heart attack! Though, I wonder if <<he>> might pay even more for a bit of the "doting wife" experience.'>>
<<else>>
Ignoring <<his>> quasi-voyeuristic presence, you focus on your job, picking up all the scattered trash, doing the dishes and vacuuming up the apartment.<br>
<br>
Though you went out of your way not to encourage <<him>>, by the time you're done <<hes>> looking a bit flustered, sweaty and with a slight bulge in <<his>> pants as <<he>> fumbles for some crumpled credits to hand you.<br>
<br>
Remaining ever professional, you pocket the <<=$scene.pay>> credits and thank <<him>> before departing.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Return to your flat." 600>>]
</div>/*#
#desc: clean apartment whilst pervert watches and makes lewd motions
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
Obviously remembering your previous visit the <<man>> doesn't even hide <<his>> leering gaze as you start picking up the remarkable number of items that seem to have fallen on the floor.<br>
<br>
<<printThought "I guess I brought this on myself with my prior behaviour, though it did result in a nice tip. Do I want to pull back, stay the course or keep pushing, I remember <<him>> saying something about fantasising about having a servile wife...">><br>
<br>
[<<moveTo "event_maid_work_pervert_2_1" "Try to recover your dignity and act professional." 1800 "<<set $scene.style='professional'>>">>]<br>
[<<moveTo "event_maid_work_pervert_2_1" "Repeat your previous number and flirt your way through the chores." 1800 "<<set $scene.style='flirty'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 5 && setup.getTotalValue("feminization") >= 15 && setup.getTotalValue("submission") > 10>>
[<<moveTo "event_maid_work_pervert_2_1" "Pretend to be <<his>> doting wife while you do the cleaning." 1800 "<<set $scene.style='wife'>>">>]
<<else>>
[@@.link_locked;If you're going to pull off pretending to be the "doting wife," you need to be feminine, submissive and bit of a bimbo.@@]
<</if>>
</div>/*#
#desc: clean apartment whilst pervert watches and makes lewd motions
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case 'professional'>>
<<set $scene.pay = 2*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<<case 'flirty'>>
<<set $scene.pay = 2.5*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'professional'>>
Focusing on your work, you can't do much about the fact that <<hes>> still leering at your cute outfit, or that you would swear that <<hes>> touching <<himself>> whenever you lean over to pick something off the ground, but at least you aren't encouraging it anymore.<br>
<br>
When you finish <<he>> looks excited, but also disappointed, handing you <<=$scene.pay>> credits and mumbling something about you "@@.generic_male1;Being more fun last time.@@" Taking your pay, you give a curt bow and go on your way.<br>
<br>
[<<moveTo "room_foyer" "Return to your flat." 600>>]
<<case 'flirty'>>
You perform an encore of your previous cleaning, bending over frequently to pick things up and making sure to angle your body to give <<him>> a view up, down or around all of your assets.<br>
<br>
By the time you're finished cleaning <<hes>> looking very flustered, thanking you for your work and mumbling something about how you'd "@@.generic_male1;Make a beautiful wife.@@" You accept your payment of <<=$scene.pay>> with a smile,
<<if $player.body.breastsize[0] >= 2>>
stuffing it down between your breasts before giving <<him>> a little tit shake to show off that the money is safe.
<<else>>
pocketing the money and giving a cute curtsy of thanks.
<</if>>
<br><br>
Leaving the apartment you haven't even closed the door when you hear the unmistakable sound of <<his>> zipper followed by frenzied fapping.<br>
<br>
<<printThought "<<He>> really likes it when I put on a show... I wonder what would happen if I played into <<his>> fantasies even more?">><br>
<br>
[<<moveTo "room_foyer" "Return to your flat." 600>>]
<<case 'wife'>>
You smile at your client, skipping across the room and leaping into <<his>> arms.<br>
<br>
<<Hes>> a bit surprised, but manages to catch you without incident as you throw your arms around <<him>> in a hug. "@@.pc;Oh, I'm so glad to be home!@@" You state as you slip into your "role." <br>
<br>
"@@.generic_male1;What, I don't—@@" <<he>> stammers and you lean in to give <<him>> a kiss.<br>
<br>
"@@.pc;Oh, you're so silly! I'm your wife! Come on, looks like I need to do some cleaning up and you have to tell me all about your day!@@"<br>
<br>
<<Hes>> a bit taken aback, but understanding blossoms on <<his>> face as it splits into a wide smile.<br>
<br>
<<He>> puts you down and you get to work, showily bending over to pick things up and shake your bum, rubbing up against <<him>> frequently as you make comforting quips as you listen to <<him>> talk about <<his>> day.<br>
<br>
Working some sort of dead end paper pushing position, <<his>> job sounds beyond dull, but you have an act to keep up and you nod and occasionally say a comforting @@.pc;Oh, that's too bad dear,@@" or "@@.pc;They don't appreciate you dear,@@" as you pop between rooms cleaning up <<his>> apartment.<br>
<br>
By the time you're done and <<hes>> finished talking, <<hes>> looking remarkably calm, almost doe-eyed as <<he>> looks at you. With a smile, you lead <<him>> back to <<his>> favourite chair and sit <<him>> down, fetching <<him>> a scotch and standing over <<him>>.<br>
<br>
Taking a sip <<he>> pauses, reaching for <<his>> wallet then looking up nervously. "@@.generic_male1;I, uh... don't suppose you would be willing to do another wifely duty, I mean, you're so beautiful and...@@"<br>
<br>
<<printThought "I have played along... and teased <<him>> pretty mercilessly, but do I really want to take it that far?">><br>
<br>
[<<moveTo "event_maid_work_pervert_2_2" "Just take your pay and leave." 600 "<<set $scene.oral=false>>">>]<br>
<<if setup.getTotalValue("oral") > 7>>
[<<moveTo "event_maid_work_pervert_2_2" "Kneel down and suck <<him>> off." 600 "<<set $scene.oral=true>>">>]
<<else>>
[@@.link_locked;You need more confidence in your oral skills to consider sucking <<him>> off.@@]
<</if>>
<<default>>
ERROR: unknown scene style: <<=$scene.style>>
<</switch>>
</div>/*#
#desc: optionaly suck off pervert
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.oral>>
<<set $npc_landlord.flags.cleaning.maid_pervert = 2>>
<<applyExperience 'oral' 4 'little' $SEEN_STRANGER>>
<<applyExperience 'penis' 10 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'little' $SEEN_STRANGER>>
<<set $scene.pay = 4*$npc_landlord.flags.cleaning.base_pay>>
<<else>>
<<set $scene.pay = 2.5*$npc_landlord.flags.cleaning.base_pay>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
<<if $scene.oral>>
You smile down at <<him>>. "@@.pc;Of course, dear.@@" You state, sliding to the floor in front of <<his>> chair.<br>
<br>
Hands on <<his>> thighs, you can feel <<his>> heart thundering, <<hes>> almost trembling in excitement as you oh so gently unzip <<his>> pants to reveal <<his>> <<if $options.fem>>girldick<<else>>manhood<</if>>.<br>
<br>
As cocks go, <<he>> is... well, small.
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 4 5 6>>
You wonder what <<he>> would think if <<he>> knew how much bigger of a penis you have between your legs.
<<case 2 3>>
<<He>> is quite a bit smaller than yourself, and you think of yourself as average.
<<case 1>>
<<He>> is a little smaller even than your undersized <<if $fetish.sissy>>sissy <</if>>clitty.
<<case 0>>
<<He>> is barely larger than your own miniscule peter.
<<default>>
ERROR: player penis size: <<=$player.body.penissize[0]>> out of range
<</switch>>
<br><br>
<</if>>
Even hard, <<he>> easily fits inside your mouth while barely even brushing your throat. Nonetheless, you act like <<he>> is huge and intimidating, gushing about how big and hard and wonderful "@@.pc;Your <<if $options.fem>>wife<<else>>man<</if>>@@" is as you suck and lick.<br>
<br>
<<Hes>> so excited that it takes all of your skill for <<him>> not to cum immediately, but you manage to draw things out for what you would consider a proper blowjob before finally letting <<him>> squirt <<his>> pent-up load into your mouth.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
Surprisingly, <<he>> actually tastes pretty good. Though that could just be the fact that you seem to be at the point of appreciating ALL cum.
<<else>>
<<He>> tastes salty and stale, but you choke it down so as not to disrupt the scene.
<</if>>
<br><br>
You make sure to gush about how yummy <<he>> is, and how grateful you are for being able to serve <<him>>. Licking <<him>> clean, you zip <<him>> up and seal it with a kiss before rising to your feet.<br>
<br>
In a post-orgasm daze, <<he>> looks misty-eyed up at you, handing you <<=$scene.pay>> credits as you curtsy in thanks.<br>
<br>
Leaning over, you gently kiss <<his>> forehead and wish <<him>> a "@@.pc;Good night, dear@@" before daintily striding out of the apartment.
<<else>>
You smile down and give <<him>> a light peck on the cheek.<br>
<br>
"@@.generic_male1;Yeah, I guess this is enough of a dream come true.@@" <<He>> hands you <<=$scene.pay>> credits. You curtsy in thanks and head on your way, leaving <<him>> looking happy and content.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Return to your flat." 600>>]
</div>/*#
#desc: clean apartment whilst pervert watches naked
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
You are momentarily distracted by the client's utter nudity.<br>
<br>
<<printThought "Uh-oh, maybe I've indulged <<him>> a bit too much...">><br>
<br>
"@@.generic_male1;Welcome home, dear, the cleaning can wait. Why don't you get me a drink and a massage. I've had a very tiring day...@@"<br>
<br>
<<printThought "Well, I shouldn't be surprised. The pay is good, but do I want to continue this charade?">><br>
<br>
[<<moveTo "event_maid_work_pervert_3_1" "Play the perfect, submissive wife." 1800 "<<set $scene.submissive=true>>">>]<br>
<<if setup.getTotalValue("dominance") > 5>>
[<<moveTo "event_maid_work_pervert_3_1" "Put an end to this and take charge." 1800 "<<set $scene.submissive=false>>">>] <<hint $options "Even if <<hes>> out of shape <<hes>> quite a bit larger than you, you might need skill or strength if <<he>> decided to resist.">><br>
<<else>>
[@@.link_locked;You don't have the dominant skills to put <<him>> in <<his>> place.@@]<br>
<</if>>
[<<moveTo "room_foyer" "Turn around and go back to your apartment." 120>>]
</div>/*#
#desc: deal with naked pervert
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.submissive>>
<<set $npc_landlord.flags.cleaning.maid_pervert = 3>>
<<applyExperience 'oral' 4 'little' $SEEN_STRANGER>>
<<applyExperience 'penis' 10 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'little' $SEEN_STRANGER>>
<<applyExperience 'submission' 10 'normal' $SEEN_STRANGER>>
<<set $scene.pay = 3*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<<elseif $fetish.get_raped && !((setup.getTotalValue("strength") > 5 && setup.getTotalValue("martial_arts") > 7) ||
setup.getTotalValue("strength") > 12 || setup.getTotalValue("martial_arts") > 10)>>
<<applyExperience 'oral' 4 'little' $SEEN_STRANGER>>
<<applyExperience 'penis' 10 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'little' $SEEN_STRANGER>>
<<applyExperience 'submission' 3 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<set $scene.pay = 5>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
<<if $scene.submissive>>
Adopting your most feminine mien you smile and curtsy, telling <<him>> how happy you are to see <<him>> before helping <<him>> into <<his>> chair and pouring a large glass of scotch.<br>
<br>
<<He>> launches into a rant about work and the world and "@@.generic_male1;Kids these days@@" as you massage <<his>> shoulders and gradually move between <<his>> legs.<br>
<br>
Wrapping your lips around <<his>> small, hard cock you stare up at <<him>> and nod along with <<his>> rant, finally summing it up by telling <<him>> that <<he>> doesn't need to worry about any of that.<br>
<br>
Increasing your pace does an even better job of silencing <<him>> as <<he>> gasps and cums, spurting <<his>> meager load across your tongue.<br>
<br>
Quickly slurping it down you <<if setup.getTotalValue("cum") < 10>>lie and <</if>>tell <<him>> how good <<he>> tastes. Topping off <<his>> drink you tell <<him>> to just relax while you tidy up.<br>
<br>
Leaning back <<he>> sips <<his>> drink and smiles as <<he>> watches you dance about the room, cleaning and organising and all the while showing off your cute maid-attired body.<br>
<br>
The combination of drink and orgasm has <<him>> slowly drifting off to sleep. Tucking <<him>> in you give <<him>> a kiss on the cheek as <<he>> motions towards a stack of credits near the door.<br>
<br>
"@@.generic_male1;For you... my love@@" <<he>> whispers before passing you a large stack of credits.<br>
<br>
Snatching your pay of <<=$scene.pay>> you head back to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 1800>>]
<<else>>
<<if !$fetish.get_raped>>
Your gaze narrows, you have indulged this <<man>> a lot, far more than you probably should have, but it has come time to put <<him>> in <<his>> place.<br>
<br>
[<<moveTo "event_maid_work_pervert_3_2" "Take charge." 1800>>]
<<else>>
You start to talk back to the <<man>>, but <<his>> jovial mood hardens in an instant.<br>
<br>
"@@.generic_male1;You! You're just like all the other bitches, well, I can put you in your place!@@" <<He>> states as <<he>> lunges towards you.<br>
<br>
<<if setup.getTotalValue("strength") > 5 && setup.getTotalValue("martial_arts") > 7>>
<<He>> may be bigger, but you are stronger, faster and far more skilled. Easily slipping to the side you slam <<him>> to the ground, wrenching <<his>> arm up behind <<his>> back.<br>
<br>
You explain that, though you have indulged <<his>> fantasies before, <<he>> has proven <<himself>> unworthy of your charity and now things are going to change.<br>
<br>
[<<moveTo "event_maid_work_pervert_3_2" "Take charge." 1800>>]
<<elseif setup.getTotalValue("strength") > 12>>
<<He>> lunges at you, but you shove <<him>> off. <<Hes>> wide-eyed at you overpowering <<him>> as you nearly lift <<him>> into the air and toss <<him>> to the ground.<br>
<br>
Standing over <<him>> you explain that, though you have indulged <<his>> fantasies before, <<he>> has proven <<himself>> unworthy of your charity and now things are going to change.<br>
<br>
[<<moveTo "event_maid_work_pervert_3_2" "Take charge." 1800>>]
<<elseif setup.getTotalValue("martial_arts") > 10>>
<<He>> lunges clumsily at you and you easily turn <<his>> force aside, sending <<him>> flying through the air and slamming into the ground.<br>
<br>
Pinning <<him>> down you explain that, though you have indulged <<his>> fantasies before, <<he>> has proven <<himself>> unworthy of your charity and now things are going to change.<br>
<br>
[<<moveTo "event_maid_work_pervert_3_2" "Take charge." 1800>>]
<<else>>
Though you try to fight back <<he>> is just too large and strong for your frail body to resist. <<He>> overpowers you and soon has you pressed pressed against the floor, <<his>> weight holding you down.<br>
<br>
"@@.generic_male1;Why you have to be like that? Things were going so well... I think you need to learn to shut up and use your mouth for better things, hmm?@@"<br>
<br>
Pulling you up by your hair <<he>> jabs <<his>> cock at your face. <<His>> small member barely probing your throat you gurgle as <<he>> humps your face. It isn't long before <<he>> cums, purposefully pulling out jerking <<himself>> off to spray it over your face where it mixes with the drool trickling down your chin.<br>
<br>
"@@.generic_male1;Stupid whore, now go clean yourself up and get me a drink, woman!@@"<br>
<br>
Under the silent threat of <<his>> hand you stagger off to the kitchen, washing your face and getting <<his>> drink.<br>
<br>
<<He>> grunts in approval before turning on the tv to a porn channel. With the background sound of hard fucking and <<his>> fondling <<himself>> you clean <<his>> apartment, mindful of <<his>> leering glance.<br>
<br>
Unable to get up a second time <<he>> forces you to merely lick <<his>> flaccid cock before shoving <<=$scene.pay>> credits into your stockings and sending you on your way with a slap on the ass.<br>
<br>
Feeling quite humiliated you resolve to be stronger and faster the next time as you head back to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 1800>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: bring naked pervert to heel
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 4*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<<set $npc_landlord.flags.cleaning.maid_pervert_dom = 1>>
<<applyExperience 'dominance' 7 'very' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
Silencing <<him>> with a glance, you sneer at <<his>> patheticness. Verbally ridiculing <<his>> tiny penis and <<his>> weakness in being literally below a <<if $fetish.sissy>>sissy <</if>>maid, you ask <<him>> the truth — <<his>> infatuation with your cute maid's outfit... it's because <<he>> wants one of <<his>> own, doesn't <<he>>?<br>
<br>
With a mix of fear and arousal in <<his>> eyes, <<he>> nods. You smile wider asking if, maybe... <<he>> already has one?<br>
<br>
<<He>> hesitates until you make ready to strike <<him>> again and then <<he>> nods. Initially crestfallen, you note a slight excitement in <<his>> step as <<he>> leads you to <<his>> bedroom.<br>
<br>
Under your watchful eye, <<he>> dons a cheap, but serviceable pink maid's dress, stockings and heels. <<He>> looks nowhere near as good as you do, but you make sure to taunt and gush about how cute <<he>> looks before leading the way back to the living room where you, or rather, <<he>>, starts cleaning as you tell <<him>> what to do.<br>
<br>
<<Hes>> a lot less efficient than you are, but eventually, <<he>> has things cleaned to your satisfaction. Taking your payment of <<=$scene.pay>> credits you smile and call <<him>> a "good <<if $fetish.sissy>>sissy<<else>>girl<</if>>" before heading on your way.<br>
<br>
[<<moveTo "room_foyer" "Home" 1800>>]
</div>/*#
#desc: bring naked pervert to heel
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 4*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<<applyExperience 'dominance' 7 'very' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
You do not do a speck of cleaning, instead stalking <<him>> through <<his>> own flat as <<he>> cleans — and you chide <<him>> for the slightest mistake.<br>
<br>
At the end of it all <<he>> is a quivering, submissive mess, dropping to <<his>> knees to thank you for taking the time to bless <<him>> with your presence.<br>
<br>
You grin down and heap on some more humiliation as <<he>> shudders and maybe even cums just from your words.<br>
<br>
<<He>> looks up at you with desperate lust, counting out <<=$scene.pay>> credits before you head on your way.<br>
<br>
[<<moveTo "room_foyer" "Home" 1800>>]
</div>/*#
#desc: clean apartment, opportunity to steal money
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.theft_amt = 100>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
You start working your way through the apartment, more picking things up and organising them than really "cleaning." Reaching the bedroom you are putting away some purses in the closet when <<=$scene.theft_amt>> credits falls to the ground.<br>
<br>
[<<moveTo "event_maid_work_theft_1_1" "Pocket the money." 600 "<<set $scene.theft = true>>">>]<br>
[<<moveTo "event_maid_work_theft_1_1" "Put the money back in the purse." 600 "<<set $scene.theft = false>>">>]
</div>/*#
#desc: clean apartment, steal money or not
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.theft>>
<<addEvent 'caught_stealing_1'>>
<<set $npc_landlord.flags.cleaning.maid_theft = 1>>
<<addCredits $scene.theft_amt>>
<<addNpcTheme 'npc_priest' 'other' 'theme_priest_other_theft'
0
'theme_church_confession_theft'
true
>>
<<else>>
<<set $scene.pay = 7>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
<<if $scene.theft>>
Quickly scooping up the <<=$scene.theft_amt>> credits, you pocket them and continue along, finishing up your cleaning and heading back to your apartment.
<<else>>
You tuck the credits back into the purse and continue your cleaning, soon wrapping up and getting a text message indicating your pay of <<=$scene.pay>> has been deposited into your account.<br>
<br>
<<printThought "Wow, cheapskate, couldn't even round up.">>
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: landlord calls regarding you stealing money whilst cleaning
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_landlord', 'first')>>, <<he npc_landlord>> sounds very concerned.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>, I get call from tenant who apartment you clean. They say they came home to find money missing. I assure them that you would never do such a thing and they accept but...@@"<br>
<br>
[<<moveTo "event_phone_maid_work_theft_1_caught_2" "Confess to your crime." 0 "<<set $scene.lie=false>>">>]<br>
[<<moveTo "event_phone_maid_work_theft_1_caught_2" "Say you don't know anything." 0 "<<set $scene.lie=true>>">>]
</div>/*#
#desc: landlord calls regarding you stealing money whilst cleaning
#status: FINISHED 0.7.2.0
#ignore_spell: tardes
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = $npc_landlord.flags.cleaning.base_pay>>
<<if $scene.lie>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
You lie and say that you don't remember seeing any money while you were cleaning.<br>
<br>
"@@.npc_landlord;Si, si, that is as I thought. Anyway, they should be wiring you your payment, buenas tardes, <<callPlayer "npc_landlord">>.@@"<br>
<br>
As <<he npc_landlord>> speaks, your phone pings with a transfer of <<=$scene.pay>> credits.
<<else>>
In tears, you confess that you had a moment of weakness and stole the money.<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>... I understand, especially for one in your financial situation. I have taken care of things for now, but in future you must exercise more self control! Money should be earned, not stolen.@@"<br>
<br>
You apologise again and thank <<him npc_landlord>> for <<his npc_landlord>> help.
<</if>>
<br><br>
[<<moveTo 'room_foyer' "Thank <<him npc_landlord>> and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: clean apartment, get caught if you try to steal again
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.theft_amt = 20>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
You start cleaning, scrubbing and organising and puttering along until you move a stool to clean underneath and find a handful of credits beneath.<br>
<br>
<<printThought "Again? But after what happened last time...">><br>
<br>
[<<moveTo "event_maid_work_theft_2_1" "Pocket the money." 120 "<<set $scene.theft = true>>">>]<br>
[<<moveTo "event_maid_work_theft_2_1" "Leave things as they were." 120 "<<set $scene.theft = false>>">>]
</div>/*#
#desc: clean apartment, get caught if you try to steal again
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = $npc_landlord.flags.cleaning.base_pay>>
<<if !$scene.theft>>
<<addCredits $scene.pay>>
<<else>>
<<addCredits $scene.theft_amt>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
<<if $scene.theft>>
Pocketing the <<=$scene.theft_amt>> credits in a smooth motion, you continue your cleaning, just finishing up and on your way out when the tenant walks in, practically bumping into you.<br>
<br>
Excusing yourself, you try to step around them only to be stopped.<br>
<br>
"@@.generic_female1;I believe you have something of mine...@@" the tenant holds up a phone, playing a video that shows you stealing the credits.<br>
<br>
"@@.generic_female1;I knew you were a thief so this time... I took precautions.@@"<br>
<br>
You babble, trying to come up with an excuse, but they cut you off.<br>
<br>
"@@.generic_female1;I have you dead to rights, so you have two choices — I can turn you in, and you can spend the night in prison — and it will be the night, arraignments were over hours ago so you'll just be a cute defenceless maid waiting in general lock-up all night long... OR we make a little agreement the two of us — you keep cleaning my apartment, but for free. Know that I'll be recording everything if you ever think to step out of line again.@@"<br>
<br>
You gulp, neither option seems exactly enticing, but it's all your fault.<br>
<br>
[<<moveTo "event_maid_work_theft_2_2" "Defiantly opt for prison." 600 "<<set $scene.prison = true>>">>]<br>
[<<moveTo "event_maid_work_theft_2_2" "Beg for leniency and say you'll do what they ask." 600 "<<set $scene.prison = false>>">>]
<<else>>
Leaving things as they are, you finish your cleaning and are about to head out when the tenant returns. The look they give you has you a bit nervous, but they pay you your <<=$scene.pay>> credits and you continue on your way.<br>
<br>
[<<moveTo "room_foyer" "Home" 0>>]
<</if>>
</div>/*#
#desc: agree to clean for free or goto prison
#status: FINISHED 0.7.2.0
#*/
<<if $scene.prison>>
<<set $player.location to "A prison cell.">>
<<else>>
<<set $player.location to "An apartment.">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.canceledBedHeels = $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks['bed_heels_photo'].finished>>
<<if $scene.canceledBedHeels>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<completeTask 'bed_heels_photo' $now false>>
<<set _nextDate = setup.setNextDate($now, 1, 23, 50)>>
<<addTaskById 'bed_heels_photo' _nextDate>>
<</if>>
<<if !$scene.prison>>
<<set $npc_landlord.flags.cleaning.maid_theft = 2>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.prison>>
<<createAdvBGR "./images/locations/prison.png">>
<<else>>
<<createAdvBGR "./images/locations/apartment.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.prison>>
The next half hour is a blur, a cop arriving almost instantly, cuffing you in a less than sexy way and escorting you out of the building.<br>
<br>
You are swiftly processed and it isn't long before you are stumbling into the overnight holding area and looking around nervously at the half-dozen of your shady looking fellow prisoners.<br>
<br>
<<if $scene.canceledBedHeels>>
Having a moment to think as you walk to your cell you spot a sign indicating that the building blocks all cell signals. It looks like you're going to be facing punishment for failing that bed heels photo task on top of everything else...<br>
<br>
<</if>>
As the heavy steel door to the cell closes, the prisoners start to size you up, and you feel very small and vulnerable in your maid's outfit.<br>
<br>
[<<moveTo "event_maid_work_theft_prison_1" "This could be a long night..." 600>>]
<<else>>
"Smart choice," they state, finally stepping aside for you to flee the apartment and head back to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 60>>]
<</if>>
</div>/*#
#desc: spend night in prison
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "A prison cell.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.cleaning.maid_theft_prison = true>>
<<set $scene.moveHypno = $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) == 0>>
<<if $scene.moveHypno>>
<<if $now.getUTCDay() == 3>>
<<set $currentTasks.psychiatrist_endless_hypnosis_1.trigger.atPsychiatrist.time.date = setup.getNextDayOfWeek($now, 0, 19, 0)>>
<<else>>
<<set $currentTasks.psychiatrist_endless_hypnosis_1.trigger.atPsychiatrist.time.date = setup.getNextDayOfWeek($now, 3, 19, 0)>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/prison.png">>
<div id="invframe" class="scrolltext">
<<if !$player.virgin.blowjob || (!$player.virgin.anal && (!$fetish.pegging_is_anal || ($player.virgin.pegged && $fetish.pegging_is_anal)))>>
As you walk across the cell, your imagination whirls with ideas as to what your fellow prisoners might be planning.<br>
<br>
Strangely, however, though they stare at you the whole time none of the prisoners approach you.<br>
<br>
<<printThought "Maybe they can sense my remaining shreds of innocence?">><br>
<br>
Whatever the reason, your night ticks away tense, but monotonously.<br>
<br>
<<set _release = setup.setNextDate($now, 1, 6, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_release)>>
[<<moveTo "event_maid_work_theft_prison_3" "Continue." _tmpSeconds>>]
<<elseif $fetish.get_raped>>
You start to walk across the cell towards an empty corner, but several of your fellow prisoners rise and approach, one particularly large <<if $options.fem>>inmate<<else>>fellow<</if>> barring your way.<br>
<br>
"@@.generic_female2;Well, well, well, who is this cutie... our nighttime entertainment?@@"<br>
<br>
"@@.generic_female1;I think you're right.@@" Another prisoner, a woman, states as she appears behind you.<br>
<br>
"@@.generic_female3;Yes, and it would be a shame not to take advantage of this lovely gift to the utmost...@@" A third and final voice adds.<br>
<br>
Looking around, you find that you are completely surrounded. The large <<man>> leans in with a smile, running <<his>> hand along your cheek.<br>
<br>
"@@.generic_male1;So, what'll it be, you ready to have some fun?@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought "Oh boy, my first gangbang! I thought this sort of thing only happened in porn!">>
<<else>>
<<printThought "Oh no, I thought prison gang-bangs were just a thing in porn...">>
<</if>>
<br><br>
[<<moveTo "event_maid_work_theft_prison_2" "Be the willing centre of a gangbang." 7200 "<<set $scene.willing = true>>">>]<br>
[<<moveTo "event_maid_work_theft_prison_2" "Try to resist." 7200 "<<set $scene.willing = false>>">>]
<<elseif setup.getTotalValue("bimbofication") > 12>>
Looking around the cell at the other prisoners only seems to spur on your sex-addled mind.<br>
<br>
They're obviously checking you out, but nobody seems to be making the first move...<br>
<br>
[<<moveTo "event_maid_work_theft_prison_2" "Let's get this party started, prison gangbang, woo!" 7200 "<<set $scene.willing = true>><<set $scene.eager = true>>">>]<br>
<<set _release = setup.setNextDate($now, 1, 6, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_release)>>
[<<moveTo "event_maid_work_theft_prison_3" "Wait for the night to be over." _tmpSeconds>>]
<<else>>
Nervously looking around the cell you creep over to an empty corner, curling up as best you can as you huddle up for the night.<br>
<br>
Surprisingly, other than a few lecherous glances, nobody bothers you and you actually somehow fall asleep, waking up to a familiar voice calling your name.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>!@@"<br>
<br>
<<set _release = setup.setNextDate($now, 1, 6, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_release)>>
[<<moveTo "event_maid_work_theft_prison_3" "Continue." _tmpSeconds>>]
<</if>>
</div>/*#
#desc: spend night in prison
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "A prison cell.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 11 'unbelievable' $EXPOSED>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
<<applyExperience 'anal' 13 'unbelievable' $EXPOSED>>
<<else>>
<<applyExperience 'anal' 11 'unbelievable' $EXPOSED>>
<</if>>
<<applyExperience 'penis' 8 'terrible' $EXPOSED>>
<<applyExperience 'cum' 8 'terrible' $EXPOSED>>
<<if $scene.willing>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.timebased.dirty += 50>>
<<alterStatAllWorn 'dirty' '["add",50]'>>
<<alterStatAllWorn 'cumsoaked' '["add",100]'>>
<<if !$player.sec_style.sex.airtight>>
<<if $scene.willing>>
<<if $scene.eager>>
<<set $player.sec_style.sex.airtight = "voluntary">>
<<else>>
<<set $player.sec_style.sex.airtight = "obedient">>
<</if>>
<<else>>
<<set $player.sec_style.sex.airtight = "strict">>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/prison.png">>
<div id="invframe" class="scrolltext">
<<if $scene.willing>>
<<if $scene.eager>>
Striking a pose you announce your intentions, informing your fellow prisoners that you're here to "alleviate the boredom" and for them to drop their pants and get over because you're a horny slut who needs her brains fucked out. Though surprised at your offer you seem at no shortage of suitors as several other prisoners rouse themselves and move towards you.
<</if>>
Aroused by your situation, you smile at your fellow prisoners and drop to your knees, reaching for the first cock you can and eagerly sucking.<br>
<br>
Spurred on by your enthusiasm, you feel your hips lifted up and your ass exposed.
<<if !setup.checkItemTypeWorn("plug")>>
You moan around the cock plunging into your throat as another thrusts its way up your ass.
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Already gaping and exposed thanks to your hollow plug your ass is soon spread even wider as a cock thrusts into you, the already above-average member feeling quite massive due to plug-amplified girth.
<<else>>
You feel the <<=setup.getItemTypeName("plug")>> roughly ripped from your ass only to be replaced by a big, hard cock.
<</if>>
<</if>>
<br><br>
Taking it from both ends, you bounce in midair, one hand pulled away and shoved into a wet snatch as your other finds its fingers wrapped around yet another cock.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
Down below, your <<if $player.body_ref.penis>><<getWordMyPenis>> bounces around, hard and dripping precum, but otherwise neglected by your fellow prisoners as they treat you like what you are — a pair of holes to be fucked<<else>><<getWordVagina>> drips as your fellow prisoners treat you like nothing but a set of three holes<</if>>.
<<else>>
Down below, your <<if $player.body_ref.penis>><<getWordMyPenis>> bounces around in an<<else>><<getWordVagina>> drips in its<</if>> even more private prison. Dripping precum it is otherwise neglected by your fellow prisoners as they treat you like what you functionally are — a pair of holes to be fucked.
<</if>>
<br><br>
Held aloft by rough hands, your world becomes cock and cunt, your face moving from hard cock to wet pussy and back again without even seeing the face of your user. At the other end your ass<<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>and cunt are<<else>>is<</if>> no less used, leaking cum as you are repeatedly plowed and fucked.<br>
<br>
It's been a long day and, though you try to hold on (and not just to the cock in each hand) and savour the moment, you feel your consciousness slowly slip away as you are finally left on the floor, a used <<if $fetish.sissy>>sissy <</if>>slut with a dopey smile on her face, leaking cum from both ends.
<<else>>
You try to push away, but you have no chance against this many. In moments, you find your face shoved into a wet, waiting pussy as your clothes are roughly pulled aside to expose your ass.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
Struggling to breathe you are forced to lick while a thick cock plows its way into your ass.
<<else>>
Struggling to breathe as you are forced to lick, you hear some amused laughing as the <<=setup.getItemTypeName("plug")>> is roughly ripped from your ass and replaced by a big, hard cock.
<</if>>
<br><br>
Holding you off the ground and taking you from both ends, your arms are wrenched behind your back, a pair of belts somehow appearing to be used to bind you as your face and ass are raped by a series of faceless cocks.<br>
<br>
Near drowning in cum, you are finally allowed to slip to the ground, panting and coughing as you leak <<getWordCum>> from both ends your tired body finally gives out and you fall into unconsciousness, a dirty, used slut on the floor of a prison cell.
<</if>>
<br><br>
<<if $now.getUTCHours() < 6>>
<<set _release = setup.setNextDate($now, 0, 6, 0)>>
<<else>>
<<set _release = setup.setNextDate($now, 1, 6, 0)>>
<</if>>
<<set _tmpSeconds = setup.secondsToDate($now,_release)>>
[<<moveTo "event_maid_work_theft_prison_3" "Continue." _tmpSeconds>>]
</div>/*#
#desc: go home from prison
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "A prison cell.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily = {}>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/prison.png">>
<div id="invframe" class="scrolltext">
Waking with a start, you're surprised to find your <<=setup.getNpcName('npc_manager', 'title')>> standing with a guard motioning you out of the cell.<br>
<br>
Stunned, you look up at her in confusion, but she shush's you and it isn't until you are standing on the front steps of the police station that she explains.<br>
<br>
"@@.npc_manager;I am always paying attention to my employees, so when I heard you were arrested... well, let us just say that I took care of everything.@@"<br>
<br>
Stepping into a large towncar she directs the driver to your apartment.<br>
<br>
"@@.npc_manager;No offense, but you are a bit rank, I will drop you off at your place so you can shower and change — though that maid outfit would be quite a fetching look for you in other circumstances. You should have plenty of time for you to have a good day and put this all behind you.@@"<br>
<br>
Looking at the time, you note that she's right — you've about beaten the sun up! You arrive at in front of your apartment building and she waves goodbye as the towncar speeds off.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: clean apartment to make up for stealing previously
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
<<if $scene.prison>>
You're a bit surprised to find yourself brought back to clean this apartment after what happened previously, but you set to work starting a load of dishes and picking things up.<br>
<br>
Puttering along you once again find some credits, this time left out in the open on a counter.
<<else>>
You sigh as you set to work, since forcing you to agree to clean their apartment for no pay the tenant seems to have REALLY slacked off at cleaning up after themselves.<br>
<br>
Sighing, you try to focus on your work, trudging along until you find some credits once again left out.
<</if>>
<br><br>
<<printThought "Really? After all this they're still trying to tempt me? Like I'd be stupid enough to book an express ticket to prison...">><br>
<br>
[<<moveTo "event_maid_work_theft_3_1" "Book an express ticket to prison." 1800 "<<set $scene.prison = true>>">>]<br>
[<<moveTo "event_maid_work_theft_3_1" "Just keep cleaning." 1800 "<<set $scene.prison = false>>">>]
</div>/*#
#desc: clean apartment to make up for stealing previously
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png">>
<div id="invframe" class="scrolltext">
<<if $scene.prison>>
No sooner have you picked up the credits than the tenant appears, rolling their eyes at your foolishness.<br>
<br>
"@@.generic_female1;Really? Do you just... like prison? No matter to me, the police will be here soon.@@"<br>
<br>
Resistance is futile and it isn't long before you've been arrested, booked and tossed in a group prison cell.<br>
<br>
As the heavy steel door to the cell closes, the prisoners start to size you up, and you feel very small and vulnerable in your maid's outfit...<br>
<br>
[<<moveTo "event_maid_work_theft_prison_1" "This could be a long night..." 1800>>]
<<else>>
Leaving the credits where they are you finish your cleaning and head back to your flat, no richer than you started.<br>
<br>
[<<moveTo "room_foyer" "Home" 300>>]
<</if>>
</div>/*#
#desc: work as a cleaning maid
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.random > 5 || !$fetish.bestiality_hard && $scene.random == 4 || $npc_egg.stage == 0 && $scene.random == 5>>
<<set $scene.pay = (random(10)/10 + 1)*$npc_landlord.flags.cleaning.base_pay>>
<<addCredits $scene.pay>>
<<if $npc_egg.stage == 0 && $scene.random == 5>>
<<set $scene.random = 6>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.random == 4>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning")>>
<<else>>
<<createAdvBGR "./images/locations/apartment.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.random>>
<<case 1>>
<<if $npc_landlord.flags.cleaning.maid_theft == 0>>
The apartment looks quite nice, if a little cluttered. There's a note on the door saying that they'll be back late and not to wait up, that they'll send your payment digitally.<br>
<br>
[<<moveTo "event_maid_work_theft_1" "Start cleaning." 1800>>]
<<elseif $npc_landlord.flags.cleaning.maid_theft == 1>>
You're back at the apartment you stole from before. It's in the same okay, but a little messy, state as it was the last time, with another note saying they'll send your payment electronically.<br>
<br>
[<<moveTo "event_maid_work_theft_2" "Start cleaning." 1800>>]
<<else>>
Once again you're at the apartment you stole from. You can't help but glance up at the camera — you're being watched, and moreover you still have to clean even knowing you won't be paid.<br>
<br>
<<printThought "Why did I try and rob from them?">><br>
<br>
[<<moveTo "event_maid_work_theft_3" "Start cleaning." 1800>>]
<</if>>
<<case 2>>
<<if $npc_landlord.flags.cleaning.maid_pervert == 0>>
You're a bit surprised to find the tenant is in the apartment. They're a slightly pudgy, but otherwise normal-looking, <<guy>> and they tell you to go ahead and get to work and just ignore that they're there.<br>
<br>
[<<moveTo "event_maid_work_pervert_1_1" "Start cleaning." 1800>>]
<<elseif $npc_landlord.flags.cleaning.maid_pervert == 1>>
Once again you walk in to find the tenant is in. They're sort of leering at you as they tell you to go ahead and start cleaning, not even trying to hide the stiffy they're sporting.<br>
<br>
[<<moveTo "event_maid_work_pervert_2" "Start cleaning." 1800>>]
<<elseif $npc_landlord.flags.cleaning.maid_pervert_dom >= 1>>
You arrive to find the tenant already dressed in a maid outfit. <<He>> curtsies in welcome and you head inside.<br>
<br>
[<<moveTo "event_maid_work_pervert_4" "Direct the cleaning." 1800>>]<br>
<<if $npc_landlord.flags.cleaning.maid_pervert > 2>>
[<<moveTo "event_maid_work_pervert_3" "Direct <<him>> to strip while you re-enter the apartment as <<his>> submissive wife." 1800>>]<br>
<</if>>
[<<moveTo "room_foyer" "Leave and go back to your flat." 1800>>]
<<else>>
You arrive to find the tenant waiting for you... completely naked. Leering at you they start absent-mindedly stroking their small cock, telling you to go ahead and start cleaning.<br>
<br>
<<printThought "This is kind of weird, but <<he>> hasn't actually done anything before, and I do need the money...">><br>
<br>
[<<moveTo "event_maid_work_pervert_3" "Start cleaning." 1800>>]<br>
[<<moveTo "room_foyer" "Leave and go back to your flat." 1800>>]
<</if>>
<<case 3>>
<<if $npc_landlord.flags.cleaning.maid_mistress == 0>>
The apartment already looks all but immaculate, you'd have to be perfectionist indeed to find much to do.<br>
<br>
[<<moveTo "event_maid_work_mistress_1" "Start cleaning." 1800>>]
<<elseif $npc_landlord.flags.cleaning.maid_mistress == 1>>
The tenant greets you with a stern look, asking if you are ready to do things PROPERLY.<br>
<br>
You nod and she leads the way into the kitchen.<br>
<br>
[<<moveTo "event_maid_work_mistress_2" "Start cleaning." 1800>>]
<<else>>
Holding a crop in one hand, the apartment owner greets you with nearly almost all pretense having been abandoned. With a curt nod, she says you can start by cleaning her boots. With your tongue.<br>
<br>
[<<moveTo "event_maid_work_mistress_3" "Start cleaning." 1800>>]
<</if>>
<<case 4>>
<<if $fetish.bestiality_hard>>
<<if $npc_landlord.flags.cleaning.maid_dog == 0>>
You notice a dog lying next to the door as you walk in. Looking mildly interested it rises to its feet and starts following you around.<br>
<br>
<<printThought "Odd, I guess he isn't bothering anything though.">><br>
<br>
[<<moveTo "event_maid_work_dog_1" "Start cleaning." 1800>>]
<<elseif $npc_landlord.flags.cleaning.maid_dog == 1>>
This time the dog, Zeus, is already on his feet to greet you. Rubbing up against your legs he seem very friendly as he follows at your heels.<br>
<br>
<<printThought "Huh, look likes I've made a friend">><br>
<br>
[<<moveTo "event_maid_work_dog_2" "Start cleaning." 1800>>]
<<elseif $npc_landlord.flags.cleaning.maid_dog == 4>>
You arrive at the dog-owning couple's flat for maid service and they greet you at the door.<br>
<br>
"@@.generic_male1;Hi, so... we discussed <<=ps(setup.getNpcName("npc_maid_mistress","formal"))>> offer and...@@" <<his>> voice trails off as <<he>> looks away, seemingly unable to complete the sentence.<br>
<br>
"@@.generic_female1;We're in if you are. Otherwise you can just do the usual,@@" she winks at you knowingly as you note Zeus looking up at you and wagging his tail with enthusiasm, "@@.generic_female1;While we head out for the evening. The flat IS a bit cluttered, and Zeus seems like he missed you.@@"<br>
<br>
[<<moveTo "event_maid_work_dog_5_1" 'You are ready to join them in accepting <<=ps(setup.getNpcName("npc_maid_mistress","formal"))>> offer.' 1800>>]<br>
[<<moveTo "event_maid_work_dog_3_alt" "You'd rather just clean." 600>>]
<<elseif $npc_landlord.flags.cleaning.maid_dog == 5>>
You arrive at the dog-owning couple's flat for "maid service" and they greet you at the door.<br>
<br>
"Hera" grins, already wearing the heavy leather collar that announces her name, while "Ixion" her <<if $options.fem>>wife<<else>>husband<</if>> sports a similar number in pink. "@@.generic_female1;You ready for more training, Princess? Or I guess you could just clean... the place does kind of need it.@@"<br>
<br>
[<<moveTo "event_maid_work_dog_6_1" 'You are ready for more training with <<=setup.getNpcName("npc_maid_mistress","formal")>>.' 1800>>]<br>
[<<moveTo "event_maid_work_dog_3_alt" "You'd rather just clean." 600>>]
<<else>>
As soon as you walk inside the dog-owning couple's flat, Zeus, the pet dog is excitedly on his feet, running around your legs and shoving his nose up under your skirt.<br>
<br>
<<printThought "I don't think I'll be getting any work done unless I attend to man's best friend first...">><br>
<br>
[<<moveTo "event_maid_work_dog_3" "Get on all fours like a bitch." 1800 "<<set $scene.style = 'anal'>>">>]<br>
[<<moveTo "event_maid_work_dog_3" "Get him off by hand." 1800 "<<set $scene.style = 'hand'>>">>]<br>
[<<moveTo "event_maid_work_dog_3" "Try to ignore him and just clean." 1800 "<<set $scene.style = 'resist'>>">>]
<</if>>
<<else>>
Stepping into the apartment you notice a dog lounging next to the door. It glances up at you with disinterest then puts its head back down and goes back to sleep.<br>
<br>
<<printThought "Some guard animal you seem to be...">><br>
<br>
You go about cleaning up the apartment, washing the floors, doing the dishes and that sort of thing. A few hours later the owners arrive. The dog greets them happily and they thank you for your work, giving you <<=$scene.pay>> in payment.<br>
<br>
[<<moveTo "room_foyer" "Head home." 3600>>]
<</if>>
<<case 5>>
Once again you are tasked with cleaning <<=ps(setup.getNpcName("npc_egg","first"))>> flat.<br>
<br>
<<switch $npc_egg.stage>>
<<case 1>>
[<<moveTo "event_maid_work_egg_2_1" "Head up." 180>>]
<<case 2 3>>
[<<moveTo "event_maid_work_egg_3_1" "Head up." 180>>]
<<case 4 5>>
[<<moveTo "event_maid_work_egg_4_1" "Head up." 180>>]
<<case 6>>
[<<moveTo "event_maid_work_egg_5_1" "Head up." 180>>]
<<case 7>>
[<<moveTo "event_maid_work_egg_6_1" "Head up." 180>>]
<<case 8 9>>
[<<moveTo "event_maid_work_egg_7_1" "Head up." 180>>]
<<default>>
ERROR: unexpected npc_egg.stage <<=$npc_egg.stage>>
<</switch>>
<<default>>
You find yourself in a generic apartment. Overall it isn't in bad shape and you take a couple hours picking things up, washing the dishes, vacuuming and the rest before the owner shows up.<br>
<br>
Thanking you for your work, they give you <<=$scene.pay>> credits and send you on your way.<br>
<br>
[<<moveTo "room_foyer" "Head home." 3600>>]
<</switch>>
</div>/*#
#desc: landlord offers you work as a maid in the apartment complex
#status: FINISHED 0.7.2.0
#ignore_spell: excelente
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.cleaning.maid_work = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
"@@.npc_landlord;You have a real skill for cleaning and, well, there are other people in this building nearly as busy as I am. If you had some time in the evenings during the week, I'm sure I could find someone in need of a bit of "maid service" or the like. You could keep any money you made, you just need to wear an appropriate uniform. I know it is a bit silly but, well, people are much more willing to trust a girl "in uniform" than a mere stranger wandering through their apartment.@@"<br>
<br>
Your life has gotten quite busy of late, but a bit of extra money is always nice. You tell <<him npc_landlord>> you'll consider it and <<he npc_landlord>> seems quite pleased.<br>
<br>
"@@.npc_landlord;Excelente! And, of course, you can still feel free to come by Sunday mornings to help with my place per the usual arrangement.@@"<br>
<br>
You thank <<him npc_landlord>> again for the offer and head back to your flat.<br>
<br>
<<if $scene.postponeHypno>>
As you walk home you check your phone. It seems you were so busy you missed it ringing for your VR therapy appointment. You do, however, find a helpful text indicating that <<=setup.getNpcName("npc_psychiatrist","formal")>> has already re-scheduled you for Wednesday.<br>
<br>
<</if>>
[<<moveTo "room_foyer" "Home" 60>>]
</div>/*#
#desc: try to work as a maid
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Apartment hallway">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.can_work = ($npc_landlord.flags.cleaning.last_maid_clean == undefined || setup.secondsToDate($npc_landlord.flags.cleaning.last_maid_clean,$now) > 57600) && !State.hasPlayed("event_destroy_landlord_5") && ($npc_manager.stage != 5 || State.hasPlayed("event_landlord_post_surgery_1"))>>
<<if $scene.can_work>>
<<set $npc_landlord.flags.cleaning.last_maid_clean = $now>>
<<if setup.checkVisibleClothingTag('maid') <= 60>>
<<incrementEmotion 'anger' 'npc_landlord' 2>>
<<else>>
<<set $npc_landlord.call_player = "Chica">>
<<set $npc_landlord.flags.seen_maid = true>>
<<incrementEmotion 'affection' 'npc_landlord' 1>>
<<if !setup.hasThreshold('feminization', 'maid_feminization', 'cleaning_maid')>>
<<setThreshold 'feminization' 'maid_feminization' 'cleaning_maid'>>
<</if>>
<<if setup.getTotalValue("makeup") > 10 && $npc_egg.stage == 0>>
<<initRoom>>
<<moveTo "event_maid_work_egg_1_1">>
<</if>>
<</if>>
<<if $fetish.hypnosis && ($currentTasks.hasOwnProperty('psychiatrist_endless_apointment_1') && setup.hoursToDate($now, setup.getTaskDueDate('psychiatrist_endless_apointment_1')) < 2 || $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && setup.hoursToDate($now, setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) < 2)>>
<<set $scene.random = random(2,6)>>
<<else>>
<<set $scene.random = random(1,6)>>
<</if>>
<<if -1 == setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_20')>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_20'
0
'event_psychiatrist_theme_maid_cleaning'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if !$scene.can_work>>
<<createAdvBGR "./images/locations/phonecall.png">>
<<else>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$scene.can_work>>
<<if State.hasPlayed("event_destroy_landlord_5")>>
You call up <<=setup.getNpcName('npc_landlord', 'first')>> to do some more work as a maid... but nobody answers and you shiver at the memory of your betrayal.<br>
<<elseif $npc_manager.stage == 5>>
<<if !State.hasPlayed("event_maidcafe_landlord_intro_4")>>
You attempt to call up <<=setup.getNpcName('npc_landlord', 'first')>>, but nobody picks up.
<<elseif State.hasPlayed("event_landlord_post_surgery_1")>>
"@@.npc_landlord;Still thinking of maid work at a time like this? Your dedication is admirable... or perhaps you merely wish to do it to relax? In either case, I no have work for you right now, check back some other day.@@"
<<else>>
You call up <<=setup.getNpcName('npc_landlord', 'first')>> to do some maid work.<br>
<br>
"@@.npc_landlord;Sorry <<callPlayer "npc_landlord">>, it no safe for me to expose like that. For now, I remain at cafe, yes? Otherwise...@@" <<His npc_landlord>> voice trails off ominously, a reminder of the stakes that things have risen to.
<</if>>
<<else>>
You call up <<=setup.getNpcName('npc_landlord', 'first')>> to do some more work as a maid.<br>
<br>
"@@.npc_landlord;Aye, such enthusiasm! I am sorry, <<callPlayer "npc_landlord">>, but I do not have any <<if setup.secondsToDate($npc_landlord.flags.cleaning.last_maid_clean,$now) < 7200>>more <</if>>jobs for you tonight. Please check back tomorrow if you are still interested.@@"
<</if>>
<br><br>
[<<moveTo "room_foyer" "Hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
<<if setup.checkVisibleClothingTag('maid') == 0>>
You call up <<=setup.getNpcName('npc_landlord', 'first')>> to do some work as a maid. Meeting <<him npc_landlord>> outside the designated apartment <<he npc_landlord>> looks almost horrified at your outfit.<br>
<br>
"@@.npc_landlord;No, no, no <<callPlayer "npc_landlord">>! This will not do at all! I am sorry, but you really must be dressed appropriately for me to let you into anyone else's apartment to clean. Please do not call me if you aren't dressed appropriately, that is, wearing a full maid's outfit.@@"<br>
<br>
<<printThought "Damn, I guess <<hes npc_landlord>> serious about that uniform requirement.">><br>
<br>
[<<moveTo "room_foyer" "Return to your flat." 60>>]
<<elseif setup.checkVisibleClothingTag('maid') <= 60>>
You call up <<=setup.getNpcName('npc_landlord', 'first')>> to do some work as a maid. Meeting <<him npc_landlord>> outside the designated apartment <<he npc_landlord>> sighs at your outfit.<br>
<br>
"@@.npc_landlord;So close, <<callPlayer "npc_landlord">> and yet...! A uniform must be complete, else it is useless! Imagine a soldier showing up for battle with just their jacket and boots, but no pants! So it is with you right now, insufficient!@@"<br>
<br>
<<printThought "Damn, <<hes npc_landlord>> really particular about that uniform requirement.">><br>
<br>
"@@.npc_landlord;If you still desire to work today, I can give you something more appropriate to be wearing.@@"<br>
<br>
[<<moveTo "event_landlord_maid_outfit_regift_1" "Accept <<his npc_landlord>> offer and follow <<him npc_landlord>> into <<his npc_landlord>> flat." 60>>]<br>
[<<moveTo "room_foyer" "Decline <<his npc_landlord>> offer and return to your flat." 60>>]
<<else>>
Smiling at your full maid's regalia, <<=setup.getNpcName('npc_landlord', 'first')>> nods in approval, leading you to a seemingly random apartment and opening the door.<br>
<br>
"@@.npc_landlord;Alright, <<callPlayer "npc_landlord">>, go ahead and get to work cleaning things up. The tenants will be back in a couple hours and will pay you then.@@"<br>
<br>
You slip past <<him npc_landlord>> into the flat. You glance back to catch <<him npc_landlord>> taking a final look at your bouncing skirts. <<He npc_landlord>> smiles in gratitude before closing the door and leaving you to your cleaning.<br>
<br>
[<<moveTo "event_landlord_maid_work" "Start cleaning." 0>>]
<</if>>
<</if>>
</div>/*#
#desc: visit landlord's apartment
#status: FINISHED 0.7.2.0
#ignore_spell: alegre,criada,preciosa,agotado,tarde
#*/
<<set $player.location to "Outside <<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
/% he's only around sunday morning %/
<<set $scene.landlordin = $npc_manager.stage > 1 && ($now.getUTCDay() == 0 && $now.getUTCHours() < 12) && !State.hasPlayed("event_destroy_landlord_5")>>
<<set $scene.first_cleaning = $npc_landlord.flags.cleaning.times_cleaned == 0>>
<<if $scene.landlordin && setup.checkVisibleClothingTag('maid') > 60>>
<<set $npc_landlord.flags.seen_maid = true>>
<<set $npc_landlord.call_player = "Chica">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.landlordin>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<<else>>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
You knock on the door of <<=setup.getNpcName('npc_landlord', 'first')>>, your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.<br>
<br>
<<if $scene.landlordin>>
<<if $npc_landlord.flags.cleaning.cleaned_maid>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
Laying eyes on you in maid regalia, <<his npc_landlord>> eyes light up with awestruck joy.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>! Oh, you are the most preciosa criada, I mean, lovely maid, that I have ever seen!@@"<br>
<br>
You can't help but blush, turning away and shuffling in your skirts slightly. The bashful display only makes <<him npc_landlord>> smile wider.<br>
<br>
"@@.npc_landlord;I could stare at you forever, but I am sure you would like to get started, come in, come in!@@"
<<else>>
Opening the door, <<he npc_landlord>> seems a bit disappointed that you are not wearing your maid's outfit.<br>
<br>
"@@.npc_landlord;Oh, you are here to clean. Come on in.@@"
<</if>>
<br><br>
You walk into the apartment as <<he npc_landlord>> thanks you for your help. Then <<he npc_landlord>> excuses <<himself npc_landlord>> and leaves you to work.
<<else>>
<<if $scene.first_cleaning>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
Opening the door <<his npc_landlord>> eyes light up the moment <<he npc_landlord>> looks upon your cute maidery.<br>
<br>
"@@.npc_landlord;Oh my! Are you here to clean in that? Oh, you make this <<man npc_landlord>> muy alegre!@@"
<<else>>
<<He npc_landlord>> opens the door and smiles in greeting.<br>
<br>
"@@.npc_landlord;Hola! What can I do for you today, no more washing machine troubles, I hope.@@"<br>
<br>
You laugh along at <<his npc_landlord>> little joke before explaining that you're here to help clean, if the offer is still on the table?<br>
<br>
"@@.npc_landlord;Oh! Si. Of course, of course.@@"
<</if>>
<br><br>
You look around the apartment and are surprised by the clutter everywhere, dirty plates and glasses, magazine and papers just strewn over the floor which doesn't seem to have been scrubbed in a year. You wonder where to begin.<br>
<br>
<<printThought "No wonder <<he npc_landlord>> was looking for help, I don't know that this could be put in order even in a whole weekend!">><br>
<br>
"@@.npc_landlord;So, it's pretty bad, I'm sorry to say... as of late, the house owner chases me from one part of the building to the next. And when I get finally... home after work I feel so agotado... you know... depleted. I guess do what you can? I need to help some other tenants, so I will be back mas tarde, I mean, later.@@"
<<else>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
Opening the door <<his npc_landlord>> eyes light up the moment <<he npc_landlord>> looks upon your cute maidery.<br>
<br>
"@@.npc_landlord;Oh my! You're here to clean in that? Oh, you make this <<man npc_landlord>> muy alegre!@@"
<<else>>
<<He npc_landlord>> nods in greeting.<br>
<br>
"@@.npc_landlord;Thank you again for the assistance, I really wish I had the time to do it myself but... well, you know how it is.@@"
<</if>>
<br><br>
<<if $npc_landlord.flags.thorough_cleaning>>
It seems that your thorough job has made a long-term difference, there's some straightening up to do, but just normal cleaning, not the herculean task you faced before.
<<else>>
It's hard to tell that you even cleaned it previously, the clutter having somehow regenerated and maybe even expanded since you were last here.
<</if>>
<br><br>
"@@.npc_landlord;Well, I guess you know what to do, I have work to do in some other apartments, I will leave you to it.@@"
<</if>>
<</if>>
<br><br>
<<if $npc_landlord.flags.thorough_cleaning>>
[<<moveTo "event_landlord_cleaning_1" "Start cleaning." 7200>>]
<<else>>
[<<moveTo "event_landlord_cleaning_1" "Start cleaning." 600>>]
<</if>>
<<else>>
<<if State.hasPlayed("event_destroy_landlord_5")>>
There is still police tape over <<=ps(setup.getNpcName('npc_landlord', 'first'))>> door, a grim reminder of your betrayal.
<<elseif $npc_manager.stage == 1>>
You approach the door to <<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment only to find a sign taped to it.<br>
<br>
"@@.npc_landlord;Muy busy with remodels, please hold non-emergency requests for a week or two.@@"<br>
<br>
<<printThought "Hmm, well I should probably focus on work for a bit anyway, don't want to distract myself from a brand-new job!">>
<<else>>
Nobody answers, but you notice a note saying that <<he npc_landlord>> is out and to give <<him npc_landlord>> a call if <<his npc_landlord>> assistance is required.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Return to your apartment." 120>>]
<</if>>
</div>/*#
#desc: landlord invites you to dinner
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.stage = 3>>
<</if>>
<<set $player.location to "Apartment Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You're walking up the hall to your flat when you see <<=setup.getNpcName("npc_landlord","first")>> waiting for you.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>!@@" <<He npc_landlord>> calls in friendly greeting as you hurry up the hall to meet <<him npc_landlord>>, surprising <<him npc_landlord>> with a hug before <<he npc_landlord>> can continue.<br>
<br>
"@@.npc_landlord;Oh! <<callPlayer "npc_landlord">>, you so kind. Always make me muy, muy happy... I wanted to invite you to dinner. I no want to interfere with your weekend plans so... <<if $now.getUTCDay() == 4>>next <</if>>Thursday, my place?@@"<br>
<br>
[<<moveTo 'event_landlord_first_date_invite_2' 'Say yes.' 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_landlord_first_date_invite_2' "Say <<if $now.getUTCDay() == 4>>that day<<else>>this week<</if>> doesn't work for you." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept landlord invite
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_landlord' 2>>
<<include "landlordFirstDateInvite">>
<<else>>
<<decrementEmotion 'affection' 'npc_landlord' 1>>
<</if>>
<</if>>
<<set $player.location to "Apartment Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You smile, and respond that you'd love to join <<=setup.getNpcName("npc_landlord","first")>> for dinner — weekend or no!<br>
<br>
<<He npc_landlord>> blushes. "@@.npc_landlord;You always so kind, <<callPlayer "npc_landlord">>! Make this old <<man npc_landlord>> feel so happy! I promise you not be disappointed. See you Thursday!@@"<br>
<br>
You make sure to give <<him npc_landlord>> a kiss before <<he npc_landlord>> slips away, half wanting to drag <<him npc_landlord>> into your flat for more, but <<he npc_landlord>> insists that <<he npc_landlord>> has to get back to work.<br>
<br>
"@@.npc_landlord;This old building! Always needing some of my tender care!@@"<br>
<br>
<<printThought "Yeah... but I want your tender care... guess I have to wait for Thursday.">><br>
<br>
You watch <<him npc_landlord>> disappear up the hallway, giving <<him npc_landlord>> a little wave and blowing <<him npc_landlord>> a kiss as <<he npc_landlord>> enters the elevator and disappears.
<<else>>
You reply that you will not be able to make it Thursday and <<=setup.getNpcName("npc_landlord","first")>> wilts slightly. "@@.npc_landlord;Sorry, sorry, I no mean to intrude... maybe some other time? I let you decide. Have lovely day, <<callPlayer "npc_landlord">>.@@"<br>
<br>
<<He npc_landlord>> walks away up the hall before you can respond.<br>
<br>
<<printThought "Damn, now I feel kind of bad... <<he npc_landlord>> really is such a sweet <<man npc_landlord>>.">>
<</if>>
<br><br>
[<<moveTo 'room_foyer' 'Continue into your flat.' 60>>]
</div><<set _tmpDate = setup.getNextDayOfWeek($now, 4, 19, 0, false)>>
<<addTaskById 'task_landlord_date_1' _tmpDate>>
<<if $now.getUTCDay() == 4>>
<<set $scene.date = "Thursday">>
<<else>>
<<set $scene.date = "next Thursday">>
<</if>>/*#
#desc: fail to meet landlord dinner date
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<decrementEmotion 'affection' 'npc_landlord' 3>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<printThought "Shit, I was supposed to meet <<him npc_landlord>> for dinner tonight!">><br>
<br>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>? I guess you had something come up tonight, or you forgot. It no problem, you very busy, I sure. Maybe some other time? As say, no problem...@@"<br>
<br>
<<He npc_landlord>> sounds sad and hangs up before you can muster an excuse.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet landlord for dinner date
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_dinner.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
You show up to <<=ps(setup.getNpcName("npc_landlord","first"))>> flat and <<he npc_landlord>> opens the door with a smile. <<He npc_landlord>> has traded in <<his npc_landlord>> <<if $npc_landlord.fem>>work clothes for a dress, which complements her done-up face even if the dress is<<else>>coveralls for a suit, looking quite handsome with his freshly trimmed beard... even if the clothes are<</if>> at least a decade out of fashion and a tad threadbare.<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<if setup.isItemEquipped("maid_uniform_pvc_pink") && setup.isItemEquipped("maid_ultimate_headdress_pink")>>
<<He npc_landlord>> looks at you and gasps. "@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>! You are the most beautiful maid this old <<man npc_landlord>> has ever seen! I am humbled by your presence, come in, come in!@@"
<<else>>
<<He npc_landlord>> looks at your maid finery and smiles. "@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>! You are so lovely, as always, and that outfit! Oh... I do have such the weakness for the maids... as you know!@@"
<</if>>
<<else>>
<<He npc_landlord>> greets you with a smile and welcomes you into <<his npc_landlord>> house. "@@.npc_landlord;Welcome, <<callPlayer "npc_landlord">>! You are looking very lovely, as always.@@"
<</if>>
<br><br>
<<He npc_landlord>> motions you into <<his npc_landlord>> totally-clean apartment filled with the delicious smell of food.<br>
<br>
<<His npc_landlord>> flat is small, even smaller than your own, but <<he npc_landlord>> has set <<his npc_landlord>> small kitchen table romantically with a full spread of what look like home-made taco ingredients and a candle for illumination.<br>
<br>
You raise an eyebrow at the slight culinary culture shift and <<he npc_landlord>> smiles "@@.npc_landlord;I learn this recipe from my mother, I promise you love it.@@" <<He npc_landlord>> <<if $npc_landlord.fem>>tells you to make yourself comfortable<<else>>holds out your chair<</if>> and you sit down.<br>
<br>
Taking the seat across from you <<he npc_landlord>> smiles and raises a glass.<br>
<br>
"@@.npc_landlord;To my most beautiful tenant!@@"<br>
<br>
[<<moveTo 'event_landlord_first_date_2' 'Blush and return the toast.' 300 "<<set $scene.action='toast'>>">>]<br>
[<<moveTo 'event_landlord_first_date_2' 'Respond "To the <<if $npc_landlord.fem>>cutest<<else>>hunkiest<</if>> <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>."' 300 "<<set $scene.action='hunk'>>">>]<br>
[<<moveTo 'event_landlord_first_date_2' 'Respond "To the most <<if $npc_landlord.fem>>beautiful<<else>>handsome<</if>> of <<if $npc_landlord.fem>>landladies<<else>>landlords<</if>>."' 300 "<<set $scene.action='handsome'>>">>]
</div>/*#
#desc: landlord for dinner date - toast
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_dinner.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "toast">>
You blush and silently return <<his npc_landlord>> toast with your glass...
<<case "hunk">>
You smile and raise your own toast to "@@.pc;My <<if $npc_landlord.fem>>cute<<else>>hunky<</if>> <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.@@"<br>
<br>
<<He npc_landlord>> blushes. "@@.npc_landlord;Why you make fun?! I'm being serious!@@"<br>
<br>
You reply that you are, too, as you bite your lip. <<He npc_landlord>> blushes even harder before raising <<his npc_landlord>> glass...
<<case "handsome">>
You smile and raise your own toast to "@@.pc;My <<if $npc_landlord.fem>>beautiful<<else>>handsome<</if>> <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.@@"<br>
<br>
<<He npc_landlord>> blushes. "@@.npc_landlord;Why you make fun?! I'm being serious!@@"<br>
<br>
You reply that you are, too, as you flutter your eyelashes. <<He npc_landlord>> blushes even harder before raising <<his npc_landlord>> glass...
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
Well, plastic glasses, they go "tap" more than "clink," and you get the feeling <<=setup.getNpcName("npc_landlord","first")>> doesn't really have much in the way of fine stemware.<br>
<br>
<<printThought "I wonder how long <<hes npc_landlord>> lived alone like this?">><br>
<br>
Your eyes lock and time freezes for a moment before you both take a drink and <<he npc_landlord>> nervously puts <<his npc_landlord>> glass back down.<br>
<br>
"@@.npc_landlord;Hurry, hurry, before it gets cold... actually, here, let me prepare for you.@@"<br>
<br>
<<He npc_landlord>> reaches for what you're pretty sure is a hand-made tortilla and starts spooning out meat and salsa, soon having a perfect little taco that <<he npc_landlord>> raises towards your mouth.<br>
<br>
You lean forward and tilt your head to take a sultry bite, the spicy flavours some of the best you've ever had. You eagerly finish off the rest of it with a smile.<br>
<br>
"@@.npc_landlord;You like?@@" <<He npc_landlord>> asks, as if that wasn't obvious by your eager consumption.<br>
<br>
You nod, complimenting <<him npc_landlord>> on <<his npc_landlord>> obvious skill, noting that you don't even know how to make a quesadilla, much less a spread like this!<br>
<br>
<<He npc_landlord>> looks a little confused by your example but politely nods and replies with a modest, "@@.npc_landlord;De nada.@@"<br>
<br>
You're already hungry for your next bite as you consider what you want to do next.<br>
<br>
[<<moveTo 'event_landlord_first_date_3' 'Return the favour and feed <<him npc_landlord>>.' 600 "<<set $scene.eat='feed_him'>>">>]<br>
[<<moveTo 'event_landlord_first_date_3' 'Let <<him npc_landlord>> keep feeding you.' 600 "<<set $scene.eat='feed_you'>>">>]<br>
[<<moveTo 'event_landlord_first_date_3' 'Just share the dinner without feeding each other.' 600 "<<set $scene.eat='no_feed'>>">>]
</div>/*#
#desc: landlord for dinner date - eat
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.eat == 'feed_him'>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_dinner.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
<<switch $scene.eat>>
<<case "feed_him">>
You return the favour, swatting <<his npc_landlord>> hand away when <<he npc_landlord>> tries to stop you from fixing up another taco and submissively bring it to <<his npc_landlord>> lips.<br>
<br>
<<He npc_landlord>> eats <<if $npc_landlord.fem>>faster<<else>>with larger bites<</if>> than you do, quickly finishing off the taco before gently kissing your fingers clean.<br>
<br>
It's your turn to blush during which time <<he npc_landlord>> prepares another taco and the two of you go back and forth feeding each other until you're stuffed full of delicious food.
<<case "feed_you">>
You blush, your heart thumping as <<he npc_landlord>> folds up another taco, feeding you the rest of the meal and making you feel like a pampered princess. You feel a touch guilty when <<he npc_landlord>> pauses to prep food for <<himself npc_landlord>>, but the spark you feel when <<he npc_landlord>> feeds you by hand is just too wonderful to pass up... besides, from <<his npc_landlord>> constant smile <<hes npc_landlord>> enjoying it just as much as you are... maybe too much, as you eventually have to wave <<him npc_landlord>> off when you realise you couldn't handle another bite.
<<case "no_feed">>
You blush and laugh, the two of you breaking off slightly to prepare your own food, enjoying the delicious meal in parallel, merely exchanging smiles and glances rather than food.
<<default>>
ERROR: unexpected scene.eat <<=$scene.eat>>
<</switch>>
<br><br>
[<<moveTo 'event_landlord_first_date_4' 'Take care of the dishes.' 600 "<<set $scene.dishes=true>>">>]<br>
[<<moveTo 'event_landlord_first_date_4' "Wait to see what's next." 600 "<<set $scene.dishes=false>>">>]
</div>/*#
#desc: landlord for dinner date - dishes
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.dishes>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_dinner.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.dishes>>
The meal over, <<he npc_landlord>> starts to rise. You beat <<him npc_landlord>> to your feet and gently push <<him npc_landlord>> back into <<his npc_landlord>> chair as you insist that <<he npc_landlord>> already worked so hard, it's your turn.<br>
<br>
Though <<he npc_landlord>> initially obeys, <<he npc_landlord>> soon pops up to join you in the kitchen to help dry, the two of you making quick work of the — well, you surmise it's "all of the cookware <<he npc_landlord>> owns" — <<he npc_landlord>> appears to have gone through in preparing the meal. Still, the company is pleasant, even if the kitchen is a bit cramped.<br>
<br>
The last pot put away, you lean in for a kiss and melt, squeezing <<him npc_landlord>> close in return as you feel <<his npc_landlord>> strong cybernetic arm hold you tight.
<<else>>
You sit back and smile at the wonderful meal as <<he npc_landlord>> takes things into the kitchen to clear the table. You can't help but smile at how sweet <<he npc_landlord>> is — cooking AND cleaning without a complaint... and when <<he npc_landlord>> pops back into the room you're there to reward <<him npc_landlord>> with a kiss, melting into <<him npc_landlord>> as you squeeze <<him npc_landlord>> close and <<his npc_landlord>> strong cybernetic arm cradles you tight.
<</if>>
<br><br>
[<<moveTo 'event_landlord_first_date_5' "Make eyes towards the bedroom." 600 "<<set $scene.sex=true>>">>] <br>
[<<moveTo 'event_landlord_first_date_5' 'Thank <<him npc_landlord>> for dinner and head home.' 600 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: landlord for dinner date - undress
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> bedroom">>
<<else>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/landlord_bed.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<<else>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You glance in the direction of <<his npc_landlord>> bedroom and <<he npc_landlord>> smiles. In minutes you are standing next to the bed, hands tracing over one another's bodies, unbuttoning and peeling off clothes, whispering and kissing exposed flesh.<br>
<br>
You feel <<his npc_landlord>> hard cock between your thighs, <<his npc_landlord>> <<if $npc_landlord.fem>>hands running up and down your body<<else>>beard against your neck<</if>> as <<he npc_landlord>> kisses you from behind...<br>
<br>
[<<moveTo 'event_landlord_first_date_6' "Grind back with your bum. You want <<him npc_landlord>>." 600 "<<set $scene.sex=true>><<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_landlord_first_date_6' "Lay back and pull <<him npc_landlord>> between your legs." 600 "<<set $scene.sex=true>><<set $scene.anal=false>>">>]<br>
<<else>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo 'event_landlord_first_date_6' "Unlock yourself, Lay back and pull <<him npc_landlord>> between your legs." 600 "<<set $scene.sex=true>><<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked in chastity.@@]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo 'event_landlord_first_date_6' 'Just cuddle.' 1800 "<<set $scene.sex=false>>">>]
<<else>>
You give <<=setup.getNpcName("npc_landlord","first")>> a kiss and head home with a full belly and a happy heart.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 180>>]
<</if>>
</div>/*#
#desc: landlord for dinner date - sex
#status: RELEASED 0.8.4.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<if $scene.anal>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<set $scene.analvirgin = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = 'voluntary'>>
<<include "analUnlocks">>
<</if>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_landlord">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_landlord.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<<elseif !$player.sec_style.sex.sex_man && !$npc_landlord.fem>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<</if>>
<<applyExperience 'oral' 10 'little' $SEEN_FRIEND>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<set $scene.removeChastity = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.vaginalvirgin = !$player.virgin.vaginal>>
<<if $scene.vaginalvirgin>>
<<set $player.virgin.vaginal = "npc_landlord">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_6'
0
'event_psychiatrist_session_vaginal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_vag'
0
'theme_church_confession_vag'
true
>>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_landlord">>
<</if>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$npc_landlord.fem>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_landlord.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<</if>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_bed.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<if $scene.anal>>
You slide to your knees and give <<him npc_landlord>> a quick suck, letting your saliva collect around <<his npc_landlord>> delicious cock as you give <<him npc_landlord>> the full tongue bath before standing up and turning around.
<<if $scene.plug != "">>
<<if setup.checkItemTag("plug", ['hollow'])>>
You arch your back and spread your legs to offer your plug-gaped ass to <<=setup.getNpcName("npc_landlord","first")>>.
<<else>>
You reach behind to slide the <<=setup.getItemName($scene.plug)>> out of your rear to clear the way for <<=setup.getNpcName("npc_landlord","first")>>.
<</if>>
<<else>>
You arch your back and spread your legs to offer your ass to <<=setup.getNpcName("npc_landlord","first")>>.
<</if>>
<br><br>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>...@@" <<He npc_landlord>> whispers as <<he npc_landlord>> comes up behind you, pressing against your back door...<br>
<br>
<<if $scene.analvirgin>>
You moan, here you are... about to be taken for the first time by a <<man npc_landlord>>... and not just any <<man npc_landlord>>... <<=setup.getNpcName("npc_landlord","first")>>, your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, your <<boy npc_landlord>>friend and now... you gasp as <<he npc_landlord>> slides into you... your lover.
<<else>>
You moan as <<=setup.getNpcName("npc_landlord","first")>> slides into your ass...
<</if>>
<br><br>
<<His npc_landlord>> cock slides up into you and <<he npc_landlord>> holds you tight, <<if $npc_landlord.fem>>her breasts pressed against your back<<else>>his beard gently scratching your shoulder<</if>> until you turn your head, your lips meeting <<if $npc_landlord.fem>>hers<<else>>his<</if>> in a kiss as <<he npc_landlord>> gently thrusts joy into you.<br>
<br>
"@@.npc_landlord;Chica...@@" <<he npc_landlord>> moans, <<his npc_landlord>> hands wrapped around you as you lean back into <<him npc_landlord>>...<br>
<br>
[<<moveTo 'event_landlord_first_date_7_anal' 'Guide <<his npc_landlord>> hand down between your legs.' 600 "<<set $scene.reacharound=true>>">>]<br>
[<<moveTo 'event_landlord_first_date_7_anal' 'Guide <<his npc_landlord>> hand up towards your <<if $player.body.breastsize[0]>>breasts<<else>>nipples<</if>>.' 600 "<<set $scene.reacharound=false>>">>]
<<else>>
You lean back onto the bed, <<if $scene.removeChastity>>unlock your chastity belt, spread your legs, and welcome<<else>>spreading your legs and welcoming<</if>> <<him npc_landlord>> in with a smile.<br>
<br>
Dropping to <<his npc_landlord>> knees <<he npc_landlord>> starts by bringing <<his npc_landlord>> face between your thighs, <<if $npc_landlord.fem>>and<<else>>his beard tickling for a moment before<</if>> you gasp in pleasure, <<his npc_landlord>> thick tongue running between your folds<<if $player.body_ref.penis>> as <<he npc_landlord>> strokes your cock with one hand<<else>>, suckling on your clit<</if>> while you make fists with the sheets.<br>
<br>
"@@.npc_landlord;You wet now, yes?@@" <<He npc_landlord>> asks, in an entry for "question with the most obvious answer ever asked." You nod frantically. You feel a moment of guilt for the wet spot you're probably making on <<his npc_landlord>> sheets, but that's nothing compared to your need for more as you look up at <<him npc_landlord>> with pleading lust in your eyes. "@@.npc_landlord;Okay, <<callPlayer "npc_landlord">>, I do you now.@@" <<He npc_landlord>> states as you smile and nod, wishing <<he npc_landlord>>'d get on with it already but not wanting to sully the moment with more words.<br>
<br>
<<if $scene.vaginalvirgin>>
You hold your breath — you're about to be fucked for the first time, your heart racing as you the tip of <<his npc_landlord>> cock rubs between your folds... and then slides ecstatically into your body.<br>
<br>
"@@.npc_landlord;So tight, <<callPlayer "npc_landlord">>,@@" <<he npc_landlord>> states and you moan. "@@.npc_landlord;Wait, is this first time?@@" <<He npc_landlord>> pauses, half-way inside of your, <<his npc_landlord>> hot rod making your heart do flips as you nod and bite your lip.<br>
<br>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>, I can't you should—@@" you cut <<him npc_landlord>> off by wrapping your legs around <<him npc_landlord>>, pulling <<him npc_landlord>> in with everything you have so that <<he npc_landlord>> pitches forward, <<his npc_landlord>> hips bumping into yours to send an explosion of pleasure through your body.<br>
<br>
"@@.pc;Don't. Stop.@@" You whisper-gasp.
<<else>>
You hold your breath... and then moan as <<he npc_landlord>> enters you. Even from the first movement you can tell <<hes npc_landlord>> good, <<his npc_landlord>> hips shifting with surprising flexibility, one hand pressed between you to <<if $player.body_ref.penis>>stroke your <<getWordMyPenis>><<else>>play with your clit<</if>> while <<he npc_landlord>> wields <<his npc_landlord>> member with the skill of a master swords<<man npc_landlord>>.<br>
<br>
"@@.npc_landlord;So tight, <<callPlayer "npc_landlord">>,@@" <<he npc_landlord>> whispers, kissing you below the ear. "@@.npc_landlord;So wonderful...@@" You moan loader, arms wrapping around <<his npc_landlord>> <<if !$npc_landlord.fem>>strong <</if>>shoulders and pulling <<him npc_landlord>> in tight. <<He npc_landlord>> feels so good inside of you, so warm pressed against you chest to chest...<br>
<br>
"@@.pc;Don't stop.@@" You whisper-gasp.
<</if>>
<br><br>
"@@.npc_landlord;Oh <<callPlayer "npc_landlord">>...@@" <<He npc_landlord>> replies, kissing you as your fingers dig into <<his npc_landlord>> back, <<his npc_landlord>> hips shifting slowly, your heart racing with every thrust as <<he npc_landlord>> tenderly makes love to you. <<His npc_landlord>> soft whispers of adoration a blissful backing chorus for your orgasmic moans.<br>
<br>
<<His npc_landlord>> breathing starts getting faster and you sense <<his npc_landlord>> orgasm is nigh as <<he npc_landlord>> starts to pull out...<br>
<br>
[<<moveTo 'event_landlord_first_date_7_vaginal' 'Cum in me<<if $fetish.daddy>> <<Daddy npc_landlord>><</if>>...' 300 "<<set $scene.finish='inside'>>">>]<br>
[<<moveTo 'event_landlord_first_date_7_vaginal' 'Finish <<him npc_landlord>> off with your mouth.' 300 "<<set $scene.finish='mouth'>>">>]<br>
[<<moveTo 'event_landlord_first_date_7_vaginal' 'Have <<him npc_landlord>> finish on your face.' 300 "<<set $scene.finish='face'>>">>]<br>
[<<moveTo 'event_landlord_first_date_7_vaginal' 'Let <<him npc_landlord>> pull out.' 300 "<<set $scene.finish='pullout'>>">>]
<</if>>
<<else>>
Both naked, you take <<=setup.getNpcName("npc_landlord","first")>> by the hand to lead <<him npc_landlord>> to bed, your bodies soon pressed against one another, hands and lips and tongues exploring necks and navels, sensuously enjoying each other's bodies in ways "chaste" only in the technical sense.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 180 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: landlord for dinner date - sex
#status: RELEASED 0.8.4.0
#ignore_spell: g,'d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.date_1.anal = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_bed.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
Even as <<he npc_landlord>> gently fucks you, you guide <<=setup.getNpcName("npc_landlord","first")>> hand
<<if $scene.reacharound>>
downwards. This gentle hint is enough for <<him npc_landlord>> to creep down over your belly and between your legs.
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
With the skill of a <<man npc_landlord>> who has worked with <<his npc_landlord>> hands every day of <<his npc_landlord>> life <<he npc_landlord>> somehow fingers you AND jerks you off at the same time, the ultimate reach-around for your ultimate array of genitalia...
<<elseif $player.body_ref.penis>>
<<His npc_landlord>> <<if $npc_landlord.fem>>soft hands are gentle as she strokes<<else>>hand is larger than your own, <<his npc_landlord>> workmans hands rough and yet sensuous as they stroke<</if>> your <<getWordMyPenis>>...
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Teasing your small member with finger and thumb.
<<case 2 3>>
Softly jerking you off.
<<case 4 5>>
Matching the movements of <<his npc_landlord>> hand to the thrusts behind.
<<case 6>>
Unperturbed by your massive <<if $player.body_ref.horse && $player.body_ref.dog>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.dog>>dog-<<else>><</if>>cock as <<he npc_landlord>> pumps it firmly.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
A single long finger gently slides through your wet slit, curling up towards your g-spot as <<his npc_landlord>> thumb rubs your clit and <<he npc_landlord>> continues to thrust...
<</if>>
<<else>>
<<His npc_landlord>> <<if !$npc_landlord.fem>>large <</if>>hand
<<if setup.isCage()>>
wraps around your <<getWordMyPenis>>, squeezing it gently, affectionately.
<<else>>
lays across your chastity shield, brushing your thighs as <<he npc_landlord>> rubs over your locked-away bits... the unfelt pleasure somehow comforting.
<</if>>
<<He npc_landlord>> whispers how much <<he npc_landlord>>'d love to infiltrate your prison even as <<he npc_landlord>> continues <<his npc_landlord>> moan-inducing exploration of your back door...
<</if>>
<<else>>
upward. Your slight indication is all it takes for <<him npc_landlord>> to begin playing with your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive breasts; your size too voluminous for <<if $npc_landlord.fem>>her<<else>>even his large<</if>> hands... though <<he npc_landlord>> gives it one hell of a try as <<he npc_landlord>> squeezes and gropes amidst tweaking your large, hard nipples.
<<case 'large'>>
large breasts; your size at the very limit of what <<his npc_landlord>> <<if !$npc_landlord.fem>>large <</if>>hands can handle and <<he npc_landlord>> squeezes and gropes amidst tweaking your hard nipples.
<<case 'medium'>>
breasts; cupping them in <<his npc_landlord>> <<if !$npc_landlord.fem>>large <</if>>hands to squeeze and grope amidst tweaking your hard nipples.
<<case 'small'>>
small breasts; <<if $npc_landlord.fem>>using both of her hands<<else>>spanning both of them with one hand<</if>>, squeezing and groping amidst tweaking your pert nipples.
<<case 'none'>>
pert nipples, rolling your diamond-hard beads between <<his npc_landlord>> fingers and switching back and forth.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<</if>>
<br><br>
Whatever <<he npc_landlord>> may be doing to the rest of your body <<his npc_landlord>> pace remains ever slow and gentle, making love to your ass as the pressure of pleasure grows and grows until your body goes rigid in climax, shuddering as <<he npc_landlord>> freezes, holding you tight on your tip-toes as you cum... and feel <<him npc_landlord>> do the same.<br>
<br>
"@@.npc_landlord;Chica...@@" <<he npc_landlord>> whispers and you smile, reaching back to hold <<his npc_landlord>> head, sharing a kiss as you feel <<his npc_landlord>> aftershocks twitch inside of you, your bodies entwined in a perfect moment of ecstatic pleasure.<br>
<br>
You stand for several more breathless moments and then the two of you slide to the bed, turning to press yourselves together chest to chest, your lips meeting, arms pulling close.<br>
<br>
<<if $npc_barista.stage == 5 && $npc_barista.flags.location == "">>
[<<moveTo 'event_landlord_help_barista_1' 'Ask <<him npc_landlord>> about a place for the work you need to deprogram <<=setup.getNpcName("npc_barista","nickname")>>.' 300 "<<set $scene.return='event_landlord_first_date_8'>>">>]<br>
<</if>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4 && State.hasPlayed("theme_ai_admin_first_1")>>
[<<moveTo 'event_admin_stage5_recruit_landlord_1' 'Ask <<him npc_landlord>> for help with <<=setup.getNpcName("npc_admin","first")>>.' 300 "<<set $scene.return='event_landlord_first_date_8'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_landlord_maidcafe_talk_1")>>
[<<moveTo 'event_landlord_retention_mission_ask_1' 'Ask <<him npc_landlord>> for help taking out <<=setup.getNpcName("npc_retention","formal")>>.' 300 "<<set $scene.return='event_landlord_first_date_8'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_tournament_13") && !$npc_retention.flags.cybernetic && !State.hasPlayed("event_tournament_win_1")>>
[<<moveTo 'event_tournament_tip_1' 'Tell <<him npc_landlord>> about the martial arts contest you were competing in.' 300 "<<set $scene.return='event_landlord_first_date_8'>>">>]<br>
<</if>>
[<<moveTo 'event_landlord_pregnant_1' 'Ask <<him npc_landlord>> about pregnancy...' 300 "<<set $scene.return='event_landlord_first_date_8'>>">>]<br>
[<<moveTo 'event_landlord_first_date_8' 'Cuddle.' 3600>>]
</div>/*#
#desc: landlord for dinner date - sex
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.date_1.vag = true>>
<<switch $scene.finish>>
<<case 'mouth'>>
<<applyExperience 'oral' $npc_landlord.penissize 'little' $SEEN_FRIEND>>
<<applyExperience 'cum' 11 'normal' $SEEN_FRIEND>>
<<case 'face'>>
<<applyExperience 'cum' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'normal' $SEEN_FRIEND>>
<</switch>>
<<if $npc_landlord.stage < 4>>
<<set $npc_landlord.stage = 4>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_16'
15
'event_psychiatrist_landlord_date_flat_1'
false
>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_bed.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.finish>>
<<case 'inside'>>
"@@.pc;<<if $fetish.daddy>>Breed me, <<Daddy npc_landlord>><<else>>Cum in me<</if>>,@@" you whisper in <<his npc_landlord>> ear as you hold <<him npc_landlord>> tight, your words and tight grip pushing <<him npc_landlord>> over the edge as you feel <<him npc_landlord>> spurt inside of you, <<his npc_landlord>> entire body shuddering in orgasm as <<he npc_landlord>> cums... and cums...<br>
<br>
A final climax of your own rocks through your body
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction > 0>>
as you spurt <<if $player.body_ref.cumProduction > 1>>a huge load of <</if>>fresh, slippery <<getWordCum>> between the two of you.
<<else>>
as your <<getWordMyPenis>> has a dry orgasm sandwiched between the two of you.
<</if>>
<<else>>
as your cunt squeezes down, quivering as it tries to suck <<him npc_landlord>> deeper...
<</if>>
<br><br>
<<=setup.getNpcName("npc_landlord","first")>> has no more words, thanking you with kisses instead as you embrace, <<his npc_landlord>> body going limp to lay beside you in bed as you shift slightly to be <<his npc_landlord>> little spoon, feeling safe and content in <<his npc_landlord>> arms.
<<case 'mouth'>>
<<He npc_landlord>> starts to pull out and you follow <<him npc_landlord>> up, sliding off the bed and to your knees as you grab <<his npc_landlord>> hips and passionately wrap your lips around <<his npc_landlord>> member.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>! I'm about to—@@" <<He npc_landlord>> starts but you just smile up at <<him npc_landlord>> with your eyes, whispering a muffled "@@.pc;I know.@@" around <<his npc_landlord>> cock just before <<he npc_landlord>> cums.<br>
<br>
<<His npc_landlord>> cum tastes aged and a little spicy...
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
and you drink it down with all the passion of a connoisseur of fine whiskey.
<<else>>
and you drink it down with a smile.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
and you find yourself strangely eager to slurp it down.
<<else>>
but this is a special occasion, and so you gulp it down politely.
<</if>>
<</if>>
<br><br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>...@@" <<he npc_landlord>> whispers as you softly suck until <<he npc_landlord>> is empty and limp, cleaning <<him npc_landlord>> up and licking your lips clean with a smile.<br>
<br>
<<He npc_landlord>> gently raises you to your feet, your lips meeting tenderly, but firmly before you drag <<him npc_landlord>> back into the bed, turning in place to be <<his npc_landlord>> happy little spoon; safe and content in <<his npc_landlord>> arms.
<<case 'face'>>
<<He npc_landlord>> starts to pull away and you follow <<him npc_landlord>> up, batting <<his npc_landlord>> hand away as you take over jerking <<him npc_landlord>> to completion, looking unblinking up with a rapturous smile as you coax two quick blasts of cum to shoot across your face — one hitting you in the cheek, the other just above the eye.<br>
<br>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>! I'm so sorry!@@" <<He npc_landlord>> gushes a moment later as <<he npc_landlord>> starts to recover from <<his npc_landlord>> climax. With startling speed <<he npc_landlord>> produces a towel, helping you wipe off before bringing you in for a grateful kiss, your lips meeting and then your position shifting to the bed where you wriggle yourself into being <<his npc_landlord>> happy little spoon; feeling safe and content in <<his npc_landlord>> arms.
<<case 'pullout'>>
Your body already shuddering from so many orgasms you just lay there in near exhaustion as <<he npc_landlord>> steps back, courteously finishing off in a towel as you gather up just enough energy to drag <<him npc_landlord>> back into bed after, kissing <<him npc_landlord>> passionately before wriggling yourself into being <<his npc_landlord>> happy little spoon; feeling safe and content in <<his npc_landlord>> arms.
<<default>>
ERROR: unexpected scene.finish <<=$scene.finish>>
<</switch>>
<br><br>
You would be happy to stay there forever; cradled in <<his npc_landlord>> grasp, <<if $npc_landlord.fem>>her breasts pressed against your back<<else>>his beard pleasantly rough on your shoulder<</if>> as <<he npc_landlord>> holds you close, but, alas, though you momentarily think <<he npc_landlord>> has fallen asleep <<he npc_landlord>> stirs, kissing you behind the ear before slowly disentangling <<himself npc_landlord>>.<br>
<br>
"@@.npc_landlord;That was wonderful, <<callPlayer "npc_landlord">>... you are wonderful. Every moment you grace me with your presence a spark of joy in this old <<mans npc_landlord>> life. I do not deserve you, but am so happy you choose to share yourself with me.@@"<br>
<br>
You blush at <<his npc_landlord>> tender words, assuring <<him npc_landlord>> that you are more than happy, the pleasure is just as much yours, that <<he npc_landlord>> brings you joy as well... and you're already looking forward to your next date.<br>
<br>
"@@.npc_landlord;You so kind. But... well, I think you have work in the morning, and I have some things to take care of overnight. Thank you again, I will never forget this night.@@"<br>
<br>
You reply that neither will you, giving <<him npc_landlord>> another kiss before curling up next to <<him npc_landlord>>.<br>
<br>
<<if $npc_barista.stage == 5 && $npc_barista.flags.location == "">>
[<<moveTo 'event_landlord_help_barista_1' 'Ask <<him npc_landlord>> about a place for the work you need to deprogram <<=setup.getNpcName("npc_barista","nickname")>>.' 300 "<<set $scene.return='event_landlord_first_date_8'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_landlord_maidcafe_talk_1")>>
[<<moveTo 'event_landlord_retention_mission_ask_1' 'Ask <<him npc_landlord>> for help taking out <<=setup.getNpcName("npc_retention","formal")>>.' 300 "<<set $scene.return='event_landlord_first_date_8'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_tournament_13") && !$npc_retention.flags.cybernetic && !State.hasPlayed("event_tournament_win_1")>>
[<<moveTo 'event_tournament_tip_1' 'Tell <<him npc_landlord>> about the martial arts contest you were competing in.' 300 "<<set $scene.return='event_landlord_first_date_8'>>">>]<br>
<</if>>
[<<moveTo 'event_landlord_pregnant_1' 'Ask <<him npc_landlord>> about pregnancy...' 300 "<<set $scene.return='event_landlord_first_date_8'>>">>]<br>
[<<moveTo 'event_landlord_first_date_8' 'Cuddle.' 3600>>]
</div>/*#
#desc: landlord for dinner date - head home
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_landlord.stage < 4>>
<<set $npc_landlord.stage = 4>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_16'
15
'event_psychiatrist_landlord_date_flat_1'
false
>>
<</if>>
<<if $scene.removeChastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_bed.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
You stay with <<=setup.getNpcName("npc_landlord","first")>> until the echoes of orgasm fade to just the warmth of your shared embrace. You can tell you are both about to fall asleep and you recall your work in the morning: as hard as leaving <<his npc_landlord>> bed is now, forcing yourself to get up and go then seems an even more challenging prospect. You give <<him npc_landlord>> a quick peck and then slink out of <<his npc_landlord>> flat bed, blushing as <<he npc_landlord>> smiles up at you as you give a bit of a show <<if $scene.removeChastity>>as you lock your chastity belt back in place and get dressed and<<else>>as you put your clothes back on and then<</if>> blow <<him npc_landlord>> a kiss before heading home, the smile on your face almost as wide as the one on <<if $npc_landlord.fem>>hers<<else>>his<</if>>.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 300 "<<if $scene.sex>><<useClothSetPop 'tmp'>><</if>>">>]
</div>/*#
#desc: landlord pregnancy ask
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_bed.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
You bring up the possibility of pregnancy to <<=setup.getNpcName("npc_landlord","first")>> and <<he npc_landlord>> sits up.<br>
<br>
<<if $player.body_ref.vagina>>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>... you no have to worry about that with me. I take care of that before joining the army and, well... never have reason to reverse the procedure. I all juice, no seeds.@@"
<<else>>
"@@.npc_landlord;Pregnancy? Well... I suppose the medical technology exist, but I never really put much thought into it.@@"
<</if>>
<br><br>
[<<moveTo 'event_landlord_pregnant_2' "You think you'd like to get pregnant someday..." 300 "<<set $scene.pregnant='you'>>">>]<br>
[<<moveTo 'event_landlord_pregnant_2' "You'd love it if the both of you knocked each other up..." 300 "<<set $scene.pregnant='both'>>">>]<br>
[<<moveTo 'event_landlord_pregnant_2' "You think <<he npc_landlord>> be a great <<if $npc_landlord.fem>>mom<<else>>father<</if>>... and look totally hot with a baby bump." 300 "<<set $scene.pregnant='them'>>">>]<br>
[<<moveTo 'event_landlord_pregnant_2' "You were just curious." 300 "<<set $scene.pregnant='none'>>">>]
</div>/*#
#desc: landlord pregnancy
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.pregnant = $scene.pregnant>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_bed.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.pregnant>>
<<case 'you'>>
You smile and reply that you'd love to bear <<=ps(setup.getNpcName("npc_landlord","first"))>> child someday...<br>
<br>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>! You so sweet, I would, of course, be honoured... but I think now not quite the right moment, yes?@@"
<<case 'both'>>
You grin and reply that you'd love to carry a child at the same time as <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<if $npc_landlord.fem>>
"@@.npc_landlord;Wow... I hadn't thought about that in years... I suppose the medical technology exist... well, that would certainly be a new adventure!@@"
<<else>>
"@@.npc_landlord;Both of us? And me, Mr. Seahorse? Well... I suppose the technology exist... heh, I never think about it before... but maybe...@@"
<</if>>
<<case 'them'>>
You smile and gush that <<he npc_landlord>> would make a wonderful <<if $npc_landlord.fem>>mother<<else>>father<</if>>... and look stunning with a baby bump.<br>
<br>
<<if $npc_landlord.fem>>
"@@.npc_landlord;Wow... I hadn't thought about that in years... I suppose the medical technology exist, and with the right person to raise the child? Well, that would certainly be a new adventure!@@"
<<else>>
"@@.npc_landlord;Me, Mr. Seahorse? Well... I suppose the technology exist... heh, I never think about it before... but maybe? With the right person to raise the child, of course...@@"
<</if>>
<<case 'none'>>
You reply that you aren't really interested in having kids, you were just curious.<br>
<br>
"@@.npc_landlord;Si, si. World this days is so complicated already... I happy just with you.@@"
<<default>>
ERROR: unexpected scene.pregnant <<=$scene.pregnant>>
<</switch>>
<br><br>
<<if $scene.return == 'room_foyer'>>
[<<moveTo 'room_foyer' "Return to your flat." 60>>]
<<else>>
[<<moveTo $scene.return "Resume cuddling." 60>>]
<</if>>
</div>/*#
#desc: invite landlord to second dinner date
#status: RELEASED 0.8.4.0
#ignore_spell: 'd
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_landlord.stage < 5>>
You ask <<=setup.getNpcName("npc_landlord","first")>> if <<his npc_landlord>> date invitation is still open?<br>
<br>
"@@.npc_landlord;Si! Of course! If you interested?@@"<br>
<br>
[<<moveTo "room_call_landlord_date_2_2" "Accept <<his npc_landlord>> invite to come over for dinner." 60 "<<set $scene.insist = false>>">>]<br>
[<<moveTo "room_call_landlord_date_2_2" "Ask about going out instead?" 60 "<<set $scene.insist = true>>">>]
<<else>>
You ask <<=setup.getNpcName("npc_landlord","first")>> if <<he npc_landlord>>'d like to take you out to dinner?<br>
<br>
"@@.npc_landlord;You mean come over again? Of course, <<callPlayer "npc_landlord">>! I am always happy to cook for you.@@"<br>
<br>
<<printThought "Is <<he npc_landlord>> trying to avoid going out in public with me?">><br>
<br>
[<<moveTo "room_call_landlord_date_2_2" "Accept <<his npc_landlord>> invite to come over for dinner." 60 "<<set $scene.insist = false>>">>]<br>
[<<moveTo "room_call_landlord_date_2_2" "Insist that you want to go out!" 60 "<<set $scene.insist = true>>">>]
<</if>>
</div>/*#
#desc: invite landlord to second dinner date
#status: RELEASED 0.8.4.0
#ignore_spell: apreciato,delicioso
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.insist && $npc_landlord.stage >= 4>>
<<if $now.getUTCDay() == 1>>
<<set $scene.day = "tomorrow">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 2, 20, 0, false)>>
<<else>>
<<set $scene.day = "Monday night">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 1, 20, 0, false)>>
<</if>>
<<addTaskById 'task_landlord_date_2' _tmpDate>>
<<else>>
<<include "landlordFirstDateInvite">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.insist>>
<<if $npc_landlord.stage >= 4>>
You put your metaphorical foot down as you state that, as much as you enjoy visiting <<his npc_landlord>> place, you want to GO OUT WITH <<if $npc_landlord.fem>>HER<<else>>HIM<</if>>.<br>
<br>
"@@.npc_landlord;But, <<callPlayer "npc_landlord">> you no want to be seen out with an old <<man npc_landlord>>. I muy apreciato you spending time with me but you are young and beautiful, you don't want to go out with me...@@"<br>
<br>
You sigh and insist that you DO want to go out with <<him npc_landlord>> so <<he npc_landlord>> needs to pick a restaurant and you'll see <<him npc_landlord>> there <<=$scene.day>> at <<if $options.militaryTime>>20:00<<else>>eight<</if>>.<br>
<br>
"@@.npc_landlord;Si, si... sorry <<callPlayer "npc_landlord">>. I no realise you feel so strongly. There is a place nearby, muy good food, not too expensive... I meet you there, okay?@@"<br>
<br>
You reply that you're looking forward to it.<br>
<br>
"@@.npc_landlord;Si, si... sorry this old <<man npc_landlord>> so stubborn just... well, I sometimes no can understand why you want spend time with boring old <<man npc_landlord>>, much less risk being seen in public... I no want to embarrass you!@@"<br>
<br>
You sigh and explain that you would hardly be embarrassed, and that you will see <<him npc_landlord>> <<=$scene.day>>.<br>
<br>
"@@.npc_landlord;Si, si, see you then.@@"
<<else>>
You try to push <<him npc_landlord>> to take you out, but <<he npc_landlord>> politely insists on having you in. "@@.npc_landlord;I promise I cook something muy delicioso — you see <<=$scene.date>>.@@"<br>
<br>
You finally agree, while adding that <<he npc_landlord>> can't dodge this matter forever!<br>
<br>
"@@.npc_landlord;Si, si... maybe sometime.@@"<br>
<br>
<<printThought "Hmm, maybe after we have a dinner in <<if $npc_landlord.fem>>she'll<<else>>he'll<</if>> go for something more?">>
<</if>>
<<elseif $npc_landlord.stage < 4>>
You reply that you'd love to come over and join <<him npc_landlord>> for dinner.<br>
<br>
"@@.npc_landlord;Wonderful, <<callPlayer "npc_landlord">>. I see you <<=$scene.date>> evening, I promise it be a wonderful evening.@@"
<<else>>
You sigh, acquiescing to <<his npc_landlord>> deflection and agreeing to meet <<him npc_landlord>> for dinner <<=$scene.date>>.<br>
<br>
"@@.npc_landlord;Wonderful, <<callPlayer "npc_landlord">> it will be highlight of my week!@@"
<</if>>
<br><br>
<<He npc_landlord>> hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: fail to meet landlord second date
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<decrementEmotion 'affection' 'npc_landlord' 3>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<printThought "Shit, I was supposed to go out to dinner with <<him npc_landlord>> tonight!">><br>
<br>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>? I guess you finally realised it would be too embarrassing to be seen in public with me? No problem, I understand. Next time we order in, no?@@"<br>
<br>
<<He npc_landlord>> hangs up before you can muster an excuse.<br>
<br>
<<switch $player.identify_as>>
<<case 'female'>>
<<printThought "Dammit, and after I spent so much effort getting <<him npc_landlord>> to say yes... I'm the worst girlfriend...">>
<<case 'male'>>
<<printThought "Dammit, and after I spent so much effort getting <<him npc_landlord>> to say yes... I'm a really shitty boyfriend...">>
<<default>>
<<printThought "Dammit, and after I spent so much effort getting <<him npc_landlord>> to say yes... I'm a crappy SO...">>
<</switch>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: landlord second date - arrive at restaurant
#status: RELEASED 0.8.4.0
#ignore_spell: hermosa
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_landlord_date_2' $now true>>
<<incrementEmotion 'affection' 'npc_landlord' 3>>
<</if>>
<<set $player.location to "Outside Gastrognome">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/restaurant_exterior.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
After walking through something of a maze of downtown buildings and narrow alleyways you finally find Gastrognome; the small restaurant tucked away in the shadow of skyscrapers, the sort of hole-in-the-wall place that one would never find without a tip. Even with directions you might well have missed it if you hadn't seen <<=setup.getNpcName("npc_landlord","first")>> standing out front in <<his npc_landlord>> old, but somehow endearing, formal attire.<br>
<br>
<<He npc_landlord>> takes one look at you and <<his npc_landlord>> jaw drops. Whereas <<his npc_landlord>> clothing hasn't passed for high fashionable in decades, if ever, you are dressed to the nines and you approach <<him npc_landlord>> with a smile, leaning in for a kiss as <<he npc_landlord>> stares dumbfounded.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>... tu eres la mas hermosa...@@" You smile at how <<his npc_landlord>> awe has caused <<him npc_landlord>> to COMPLETELY revert to Spanish and you take the lead by tucking your hand under <<his npc_landlord>> arm and gesture towards the restaurant.<br>
<br>
"@@.pc;Of course, how else would I dress for a romantic dinner with my <<boy npc_landlord>>friend? Now come on! I am starving and we do not want to miss our reservation!@@"<br>
<br>
Seemingly still unable to find words <<he npc_landlord>> nods, leading you into a restaurant that, from the look of things, has likely never even considered the concept of reservations.<br>
<br>
Blinking at you in surprise a <<if $options.fem>>waitress<<else>>waiter<</if>> hurries over with a smile and leads you to a private booth before handing off a pair of stained menus.<br>
<br>
[<<moveTo "event_landlord_second_date_2" "Let's see what there is to eat..." 300>>]
</div>/*#
#desc: landlord second date - order/eat dinner
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "Gastrognome restaurant">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/restaurant_booth.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> politely offers you your seat before taking <<his npc_landlord>> own across and you take a moment to look at the menu. The selections are simple, but in the way that says that the restaurant has a specialty and is VERY good at those dishes.<br>
<br>
[<<moveTo "event_landlord_second_date_3" "Place an order." 300 "<<set $scene.order=true>>">>]<br>
[<<moveTo "event_landlord_second_date_3" 'Ask <<=setup.getNpcName("npc_landlord","first")>> to order for you.' 300 "<<set $scene.order=false>>">>]<br>
</div>/*#
#desc: landlord second date - order/eat dinner
#status: RELEASED 0.8.4.0
#ignore_spell: du
#*/
<<set $player.location to "Gastrognome restaurant">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/restaurant_booth.png" setup.charImage("npc_landlord","npc_landlord_formal") setup.charImageGeneric("waiter_dingy")>>
<div id="invframe" class="scrolltext">
<<if $scene.order>>
You skim the menu for something that you recognise and place your order when the <<if $options.fem>>waitress<<else>>waiter<</if>> reappears.<br>
<br>
"@@.generic_male1;Of course, ma'am,@@" <<he>> states, flashing you a wink.<br>
<br>
<<printThought "Wait... was <<he>> just hitting on me?">>
<<else>>
You flutter your eyes and ask <<=setup.getNpcName("npc_landlord","first")>> if <<he npc_landlord>> has any recommendations.<br>
<br>
"@@.npc_landlord;Well everything they do is very good, but I'd say their specialty is Gnomelette du Fromage.@@"<br>
<br>
You smile and tell <<him npc_landlord>> you'll have that. <<=setup.getNpcName("npc_landlord","first")>> signals the <<if $options.fem>>waitress<<else>>waiter<</if>> and puts in the order.
<</if>>
<br><br>
Waiting for your food things fall quiet.<br>
<br>
<<include "landlordDateTopics">>
</div><<if $npc_landlord.flags.secrets.cyber>>
[@@.link_locked;You've already talked <<his npc_landlord>> cybernetics.@@]<br>
<<if $npc_landlord.flags.secrets.war>>
[@@.link_locked;You've already talked about the war.@@]<br>
<<else>>
[<<moveTo "event_landlord_second_date_4_talk" "Ask what else <<he npc_landlord>> did in the war." 180 "<<set $scene.topic='war'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_landlord_second_date_4_talk" "Ask what caused <<him npc_landlord>> to get cybernetics." 180 "<<set $scene.topic='cyber'>>">>]<br>
<</if>>
<<if $npc_landlord.flags.secrets.work>>
[@@.link_locked;You've already talked about <<his npc_landlord>> work.@@]<br>
<<else>>
[<<moveTo "event_landlord_second_date_4_talk" "Ask about <<his npc_landlord>> job as a <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>." 180 "<<set $scene.topic='work'>>">>]<br>
<</if>>
<<if $npc_landlord.flags.secrets.maids>>
[@@.link_locked;You've already talked about <<his npc_landlord>> thing for maids.@@]<br>
<<else>>
[<<moveTo "event_landlord_second_date_4_talk" "Ask why <<he npc_landlord>> likes maids so much?" 180 "<<set $scene.topic='maids'>>">>]<br>
<</if>>
<<if $npc_landlord.flags.secrets.war>>
[<<moveTo "event_landlord_second_date_5" "Eat dinner." 1800>>]
<<else>>
[@@.link_locked;Dinner has not yet arrived, there is still time to talk.@@]
<</if>>/*#
#desc: landlord second date - talk
#status: RELEASED 0.8.4.0
#ignore_spell: x,'d
#*/
<<set $player.location to "Gastrognome restaurant">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.secrets[$scene.topic] = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/restaurant_booth.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'cyber'>>
You ask if <<he npc_landlord>>'d be willing to tell you what happened to <<his npc_landlord>> arm and eye?<br>
<br>
<<He npc_landlord>> smiles and shrugs. "@@.npc_landlord;Si, it was back in the war. The eye and most of the rest... that was mostly just shrapnel, well a sniper the one time, but none of it really an exciting story, just bad luck and the priority being getting back in the field rather than taking the time to re-grow properly. Once the war was over, well... the arm works, and that's the important thing. And the eye, well — you can imagine it's pretty convenient for me to be able to see pipes and wiring through walls!@@"<br>
<br>
You start to ask a follow-up question and <<he npc_landlord>> smiles. "@@.npc_landlord;No, it's not x-ray vision to see through clothes or anything like that. It's a combat implant so prioritised to seeing armour or electronics, with your standard zoom and record functions. <<if setup.checkItemTypeWorn("cage")>> So, like... the most I could tell is when you're wearing a chastity device...<<else>>So, if you were hiding a gun or a knife, I know, but no untoward peeking.<</if>>@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>You blush as you realise how early <<he npc_landlord>> must have been aware of some of your secrets. <</if>><<He npc_landlord>> moves on, as if to distract the discussion. "@@.npc_landlord;The arm, well... that was quite the mission. Things had gone completely FUBAR behind enemy lines — way more reinforcements than we expected due to them taking a... particular offense at the actions of one of our other squads.@@"<br>
<br>
<<He npc_landlord>> sighs. "@@.npc_landlord;We didn't know it at the time, but, well... one of our Majors had a bit of a scorched earth philosophy which backfired in that it had resulted in the enemy forces being deployed at greater scale — and on higher alert — than our intelligence had indicated.@@" <<He npc_landlord>> shakes <<his npc_landlord>> head, "@@.npc_landlord;So foolish. Brutality is a clumsy, random tool. Evil on the face, and causing more problems than it solves. Anyway, we had taken cover with enemy armour bearing down on us... it was looking grim but we had just enough time to setup an ambush and, well...@@"<br>
<br>
<<He npc_landlord>> shrugs with <<his npc_landlord>> cybernetic hand.
<<if $npc_admin.flags.know_landlord>>
"@@.npc_landlord;I lost my arm, and a few good <<if $npc_landlord.fem>>friends<<else>>men<</if>>... too many, always too many. But their sacrifice saved most of the squad, damn close for me though. Your friend <<=setup.getNpcName("npc_admin","formal")>>, <<he npc_admin>> patch me up and carried me out, otherwise, well...@@"
<<else>>
"@@.npc_landlord;I lost my arm, and a few good <<if $npc_landlord.fem>>friends<<else>>men<</if>>... too many, always too many. But their sacrifice saved most of the squad, damn close for me though. I blacked out from blood-loss, ended up being carried back to base by one of my <<if $npc_admin.fem>>squadmates<<else>>men<</if>>. One of the finest soldiers I ever served with, and strong like you wouldn't believe, not just muscles, but strong heart, good, good <<man npc_admin>>.@@"
<</if>>
<br><br>
<<He npc_landlord>> chuckles. "@@.npc_landlord;Of course the whole mission was for naught — wasn't two weeks later that the peace was brokered and all of it...@@" <<He npc_landlord>> sighs. "@@.npc_landlord;War is hell. And it never changes — don't let any glory-drunk fool ever tell you different.@@"
<<case 'war'>>
You ask <<him npc_landlord>> what else <<he npc_landlord>> did during the war. "@@.npc_landlord;Too much, and not enough. I'd been career military before things even got heated — not like all the fresh recruits that got drafted in once things got bad. I did what I could, to make sure as many of those under me got home as possible, and that we did our jobs as best we could... I still don't know why we were even fighting, not really. The official story is...@@" <<he npc_landlord>> waves <<his npc_landlord>> hand vaguely. "@@.npc_landlord;Some say the peace is worse, that the world gets a bit darker every day... I can't necessarily disagree, I mean what the corporations have become even in my lifetime, but war... no, it was nothing but a waste.@@"<br>
<br>
The <<if $options.fem>>waitress<<else>>waiter<</if>> conveniently comes by with drinks and <<=setup.getNpcName("npc_landlord","first")>> drains half <<his npc_landlord>> beer in one slug. "@@.npc_landlord;Once it was over... I just couldn't do it anymore, the thought of training more soldiers, of some politician sending them out again... too much. Took my discharge and found out that there ain't much call for my skills in the civilian world — at least, not for any op I was willing to work for, but I've always been good with my hands and the pay and the pension... it's enough to get by. It's nice helping people rather than hurting them... even if I do feel bad when I'm the one has to come hounding for the rent.@@"
<<case 'work'>>
You ask why <<he npc_landlord>> chose to be a handy<<man npc_landlord>>/rent collector; surely someone of <<his npc_landlord>> experience could have done something more?<br>
<br>
"@@.npc_landlord;I could have — were I willing to go into mercenary work, or any of the law-of-their-own security forces the corps employ, but I didn't want to do that any more. Even just ordering people around felt wrong so now... well, I just go along and get along, try to find a bit of happiness where I can... like with you.@@" <<He npc_landlord>> smiles across at you with a loving twinkle in <<his npc_landlord>> eye that has you blushing and hiding behind your drink.
<<case 'maids'>>
You ask if <<he npc_landlord>> always had a thing for maids?<br>
<br>
"@@.npc_landlord;Always? No... I think it was after the war. There's just something about someone so cute and sweet and pure, dedicated to nothing more complicated than making the world a cleaner place... after what I saw, and did... that spoke to me and you... you're the prettiest maid of them all.@@"<br>
<br>
You blush and try to move on
<<if setup.checkVisibleClothingTag('maid') > 60>>
concluding that your choice of "formal maid" attire was the right one, indeed.
<<else>>
having a sneaky suspicion that, even though <<he npc_landlord>> complimented your formal outfit... <<hes npc_landlord>> probably re-dressing you with <<his npc_landlord>> eyes into one of your maid costumes...
<</if>>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "landlordDateTopics">>
</div>/*#
#desc: landlord second date - eat
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "Gastrognome restaurant">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/restaurant_booth.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
Entranced by the delicious scent of the meal you break off the conversation to enjoy the food.<br>
<br>
<<if $scene.order>>
While your meal is quite tasty you can't help but second-guess your decision. Noticing you eying <<his npc_landlord>> plate <<=setup.getNpcName("npc_landlord","first")>> graciously offers to share and you get the feeling that everything the restaurant serves is phenomenal.
<<else>>
<<=ps(setup.getNpcName("npc_landlord","first"))>> suggestion was superb, one of the tastiest meals you've ever had... though you wonder if everything at the restaurant is good since <<he npc_landlord>> gives you a sample of <<his npc_landlord>> plate and it is just as delicious.
<</if>>
<br><br>
As you eat <<=setup.getNpcName("npc_landlord","first")>> actually takes the lead. Not talking about anything in particular you still enjoy just listening to <<him npc_landlord>>; enjoying how, over time, <<he npc_landlord>> seems to continue to open up to you, all the way along showing <<him npc_landlord>> to be a wonderful, kind... if a bit overly self-deprecating, <<man npc_landlord>>.<br>
<br>
<<if $scene.order>>
<<He npc_landlord>> insists on ordering dessert for the both of you, insisting that you can't visit Gastrognome without trying their specialty — Gnome-made Apple pie.
<<else>>
You let <<him npc_landlord>> order as <<he npc_landlord>> gushes about how delicious their Gnome-made Apple pie is.
<</if>>
You wait for the dessert to arrive and <<=setup.getNpcName("npc_landlord","first")>> takes a trip to the bathroom.<<if setup.getTotalValue("piss") > 15>> Piss-fiend that you are, you're tempted to offer to "take care" of such yourself, but resist the urge — <<=setup.getNpcName("npc_landlord","first")>> is delicate and you don't want to scare <<him npc_landlord>> off with your depravity.<</if>> The <<if $options.fem>>waitress<<else>>waiter<</if>> comes back with the dessert, placing it down on the table before leaning over to write down <<his>> number on a napkin.<br>
<br>
"@@.generic_male1;Hey, so I think it's really cool that you're here with your <<if $npc_landlord.fem>>mom<<else>>dad<</if>>. So many people these days don't take care of their elders and I can tell <<hes npc_landlord>> really happy to have someone to share a meal with.@@"<br>
<br>
You blink, sure <<=setup.getNpcName("npc_landlord","first")>> is a bit older than you but... and hitting on you in the middle of your date!<br>
<br>
"@@.generic_male1;Anyway, if you want to get together sometime I've got a friend who can get us in at Le Chateau de L'amour — way more appropriate for what you're wearing than this dump.@@"<br>
<br>
[<<moveTo "event_landlord_second_date_6" "Tell <<him>> off for hitting on you while you're here with your <<boy npc_landlord>>friend!" 180 "<<set $scene.object=true>>">>]<br>
[<<moveTo "event_landlord_second_date_6" "Just keep quiet and wait for the <<if $options.fem>>waitress<<else>>waiter<</if>> to leave." 180 "<<set $scene.object=false>>">>]
</div>/*#
#desc: landlord second date - react to waiter hitting on you
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "Gastrognome restaurant">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.object>>
<<else>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/restaurant_booth.png" setup.charImageGeneric("waiter_dingy")>>
<div id="invframe" class="scrolltext">
<<if $scene.object>>
Your gaze narrows as you shove the phone number back across the table as you state in no uncertain terms that you are here with your <<if $npc_landlord.fem>>GIRL<<else>>BOY<</if>>FRIEND and have no interest in the <<if $options.fem>>waitress'<<else>>waiter's<</if>> rude advances — you already have a most wonderful <<man npc_landlord>> who is perfectly capable of any pleasure you could desire.<br>
<br>
Suddenly nervous the <<if $options.fem>>waitress<<else>>waiter<</if>> wads up the napkin and stutters an apology "@@.generic_male1;Oh, shit, sorry I-uh... I'm just going to go, okay?@@"<br>
<br>
The <<guy>> slinks away and a moment later <<=setup.getNpcName("npc_landlord","first")>> re-appears. "@@.npc_landlord;Something the matter?@@" <<He npc_landlord>> asks, noting your tenseness.<br>
<br>
Your annoyance melts as you smile up at <<him npc_landlord>>. You stand up to give <<him npc_landlord>> a kiss. "@@.pc;Not anymore.@@" You state as <<he npc_landlord>> blushes and takes <<his npc_landlord>> seat.<br>
<br>
The dessert is even better than you might have anticipated, and you spend any time not eating looking
<<else>>
You quickly palm the napkin lest <<=setup.getNpcName("npc_landlord","first")>> see it and mumble a thanks.<br>
<br>
"@@.generic_male1;Shy as well as sexy — my kind of lady! You let me know,@@" <<He>> states with a chuckle before walking away just before <<=setup.getNpcName("npc_landlord","first")>> returns.<br>
<br>
"@@.npc_landlord;Ah, lovely, the Gnome-made Apple pie has arrived — you didn't need to wait up for me, eat, eat, <<callPlayer "npc_landlord">>!@@"<br>
<br>
You reply that you wanted to wait before seductively taking a first bite. Your near moan is in no way feigned, it really is as delicious as <<=setup.getNpcName("npc_landlord","first")>> made it out to be! Even as you quickly dig in you find time to smile
<</if>>
longingly across at <<=setup.getNpcName("npc_landlord","first")>> or touching <<his npc_landlord>> leg under the table.<br>
<br>
As you finish dessert the <<if $options.fem>>waitress<<else>>waiter<</if>> quickly, and subtly, drops off the cheque. <<=setup.getNpcName("npc_landlord","first")>> reaches for it.<br>
<br>
[<<moveTo "event_landlord_second_date_7" "Insist on paying." 300 "<<set $scene.pay='you'>>">>]<br>
[<<moveTo "event_landlord_second_date_7" "Go halvsies." 300 "<<set $scene.pay='both'>>">>]<br>
[<<moveTo "event_landlord_second_date_7" "Let <<him npc_landlord>> pay." 300 "<<set $scene.pay='him'>>">>]
</div>/*#
#desc: landlord second date - pay/leave restaurant
#status: RELEASED 0.8.4.0
#ignore_spell: fabuloso,fabulosa
#*/
<<set $player.location to "Gastrognome restaurant">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/restaurant_booth.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
<<switch $scene.pay>>
<<case 'you'>>
You reach for the cheque as well only for <<=setup.getNpcName("npc_landlord","first")>> pull it away lightning fast. You start to insist on paying but <<he npc_landlord>> shakes <<his npc_landlord>> head.<br>
<br>
"@@.npc_landlord;No, <<callPlayer "npc_landlord">>. You wanted me to take you out and I'm going to do it properly!@@"
<<case 'both'>>
You ask what your half is and <<=setup.getNpcName("npc_landlord","first")>> shakes <<his npc_landlord>> head.<br>
<br>
"@@.npc_landlord;No, <<callPlayer "npc_landlord">>. You wanted me to take you out and I'm going to do it properly!@@"
<<case 'him'>>
You smile and thank <<him npc_landlord>> as <<he npc_landlord>> takes the cheque.<br>
<br>
"@@.npc_landlord;Of course, <<callPlayer "npc_landlord">>. You wanted me to take you out and I'm going to do it properly!@@"
<<default>>
ERROR: unexpected scene.pay <<=$scene.pay>>
<</switch>>
<br><br>
You blush and promise to "@@.pc;Make it up to <<him npc_landlord>>@@" but <<he npc_landlord>> once again shakes <<his npc_landlord>> head, reaching across the table to hold your hand with a smile.<br>
<br>
"@@.npc_landlord;You already have, chasing after me, dressing so <<if $npc_landlord.call_player == 'Chico'>>fabuloso<<else>>fabulosa<</if>>... everything you do is so wonderful. Paying for a meal you were willing to grace with your presence is the least I can do.@@"<br>
<br>
You rise to go and make a point to wrap your arm around your <<boy npc_landlord>>friend's waist and cuddle close as you pass the <<if $options.fem>>waitress<<else>>waiter<</if>> on the way out of the building.<br>
<br>
[<<moveTo "event_landlord_second_date_8" "Walk home." 600>>]
</div>/*#
#desc: landlord second date - mugging
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "City Street">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_landlord","npc_landlord_formal") "muggers">>
<div id="invframe" class="scrolltext">
You are enjoying a leisurely walk back to the apartment building with <<=ps(setup.getNpcName("npc_landlord","first"))>> arm around your shoulder when a pair of street toughs step out of an alleyway.<br>
<br>
"@@.generic_male2;Well lookie what we got here, pair of fancy-pants, dontcha see,@@"<br>
<br>
"@@.generic_male3;Yeah,@@" the second <<man>> adds, brandishing a bat. "@@.generic_male2;The Opera just get out or something? You look like you're on the wrong side of town...@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> pulls you a bit protectively closer as <<he npc_landlord>> raises a hand. "@@.npc_landlord;We no want trouble — just having a nice night out for dinner. We live nearby, just let us go and there be no problemo for anyone.@@"<br>
<br>
"@@.generic_male2;No problem? Nah, you see... the PROBLEM is you stuck-up old <<if $npc_landlord.fem>>hag<<else>>loser<</if>> and your trophy wife are on our territory and you ain't paid no toll!@@"<br>
<br>
"@@.generic_male3;Yeah, you gotta pay to cross! And she can pay too!@@"<br>
<br>
"@@.generic_male2;Yeah! With her mouth, see if she can put a lip-stick ring right around the base of my cock or if all those fancy clothes is to distract from her not knowin' how to do her job!@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> bristles, "@@.npc_landlord;I said we wanted to go past with no trouble but now... now you need to apologise. You no talk like that<<if $player.identify_as == "" || $player.identify_as == "female">> to a beautiful young lady<</if>>.@@"<br>
<br>
"@@.generic_male3;Stupid old <<if $npc_landlord.fem>>lady<<else>><<man npc_landlord>><</if>>,@@" the punk with the bat says as <<he>> takes a step forward. "@@.generic_male3;Now we gotta do things the hard way...@@"<br>
<br>
He takes a swing and <<=setup.getNpcName("npc_landlord","first")>> moves, <<his npc_landlord>> arm shooting out faster than you can see to snag the bat in mid-air. The punk has an instant of realisation before <<=setup.getNpcName("npc_landlord","first")>> squeezes, <<his npc_landlord>> fingers digging into the steel before <<he npc_landlord>> wrenches the bat away and tosses it across the alley.<br>
<br>
"@@.generic_male3;Fuck!@@" The punk shouts, clutching <<his>> wrist that is bent at a not-quite-natural angle.<br>
<br>
In a surprising show of courage <<his>> friend rushes in with a knife only for <<=setup.getNpcName("npc_landlord","first")>> to slip to the side, lashing out with a kick that sends the <<man>> tumbling towards the ground.<br>
<br>
Trying not to fall the punk lashes out, and as you twist to escape <<his>> grasp your foot lands badly on the worn pavement.<br>
<br>
The bat-wielding punk is suddenly VERY scared and <<he>> sprints away up the alleyway as <<=setup.getNpcName("npc_landlord","first")>> turns, planting <<his npc_landlord>> boot in the other <<man>>'s back and forcing <<him>> back down to the ground<<if $npc_landlord.fem>> that <<=ps(setup.getNpcName("npc_landlord","first"))>> heel draws blood<</if>>.<br>
<br>
"@@.npc_landlord;Now — I said you make apology for your words. You say so now, or I make it you no speak ever again, si?@@"<br>
<br>
"@@.generic_male2;I'm sorry! I'm sorry! I didn't mean to insult your woman, please don't kill me!@@"<br>
<br>
<<switch $player.identify_as>>
<<case 'male'>>
"@@.npc_landlord;Woman? See, here you go and misgender my boyfriend. You try again now, before I lose my patience.@@"<br>
<br>
"@@.generic_male2;I'm sorry <<sir npc_landlord>>, and, uh, <<sir npc_landlord>>, I didn't mean it, I'm sorry!@@"<br>
<br>
<<case 'fluid' 'agender'>>
"@@.npc_landlord;Woman? See, here you go misgendering my date. You learn to make less assumptions in future — no?@@"<br>
<br>
"@@.generic_male2;Yes, please, I'm sorry, I'm sorry, however they identify I didn't mean anything, I'm sorry!@@"<br>
<br>
<</switch>>
<<=setup.getNpcName("npc_landlord","first")>> snorts. "@@.npc_landlord;That do. Now you run now, and find a more honourable line of work. I see you again... I no give second chances.@@"<br>
<br>
[<<moveTo "event_landlord_second_date_9" "Continue." 60>>]
</div>/*#
#desc: landlord second date - mugging finish
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "City Street">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> steps off and the punk sprints away, quickly disappearing around a corner as <<=setup.getNpcName("npc_landlord","first")>> turns to help you to your feet.<br>
<br>
As soon as you try to put weight on your ankle it shoots with pain<<if setup.getTotalValue("bdsm") > 10>> and not the fun kind!<<else>>.<</if>> <<=setup.getNpcName("npc_landlord","first")>> immediately catches you as you start to slip. "@@.npc_landlord;Oh, no, <<callPlayer "npc_landlord">>! You hurt! Oh, I so sorry. I should have chosen somewhere nicer for dinner, this all my fault!@@"<br>
<br>
You try to re-assure <<him npc_landlord>>, explaining that everything about the evening was fine, that you just twisted your ankle a little.<br>
<br>
"@@.npc_landlord;Still, I feel so bad... here, I <<if $npc_landlord.fem>>help<<else>>carry<</if>> you home, you no want aggravate until I have a look at it, si?@@"<br>
<br>
You acquiesce to <<his npc_landlord>> request and <<if $npc_landlord.fem>>you wrap an arm around her shoulder as she helps you balance on your feet<<else>>he smoothly scoops you up in <<his npc_landlord>> arms<</if>>. <<He npc_landlord>> may not look it compared to your friend <<=setup.getNpcName("npc_admin","first")>> but <<=setup.getNpcName("npc_landlord","first")>> feels nearly as strong. <<He npc_landlord>> <<if $npc_landlord.fem>>helps you walk home<<else>>carries you<</if>> with ease and you can feel <<his npc_landlord>> lean muscles, and <<his npc_landlord>> even stronger cybernetics, through <<his npc_landlord>> clothing.<br>
<br>
[<<moveTo "event_landlord_second_date_10" "Home." 600>>]
</div>/*#
#desc: landlord second date - home
#status: RELEASED 0.8.4.0
#ignore_spell: rapido
#*/
<<set $player.location to "Foyer">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<removeItem $scene.shoes>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> <<if $npc_landlord.fem>>leads you back to your apartment before helping<<else>>carries you all the way into your foyer before finally setting you down. Your heart fluttering slightly as <<he npc_landlord>> carries you over the threshold before<</if>> you take a seat in a chair and <<he npc_landlord>> kneels down to look at your ankle.<br>
<br>
Very tenderly <<he npc_landlord>> tests the joint, <<his npc_landlord>> fingers probing and massaging as <<he npc_landlord>> checks the injury "@@.npc_landlord;No breaks,@@" <<he npc_landlord>> states, "@@.npc_landlord;You take it easy, let it heal. You stay there a moment. I have some lotion at home, it accelerates healing muy rapido. I use it on my back some nights.@@"<br>
<br>
<<He npc_landlord>> pops up and then leans over to give you a kiss before dashing out of the flat leaving you feeling all blushy and tingly in <<his npc_landlord>> wake.<br>
<br>
[<<moveTo "event_landlord_second_date_11" "Wait." 180>>]
</div>/*#
#desc: landlord second date - home, "I love you" option
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "Foyer">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
Good to <<his npc_landlord>> word <<=setup.getNpcName("npc_landlord","first")>> returns in minutes to spread a warm cream over your injured ankle.<br>
<br>
Just moving your foot immediately feels better and <<he npc_landlord>> helps you to your feet to take a few tentative steps.<br>
<br>
"@@.npc_landlord;See? Powerful stuff, but you still take easy! You no want to re-injure.@@"<br>
<br>
<<He npc_landlord>> watches as you take a few more steps around the room before nodding. "@@.npc_landlord;I leave you to recover, anything else come up you call, okay?@@"<br>
<br>
You nod, wondering what to say before <<he npc_landlord>> departs.<br>
<br>
[<<moveTo "event_landlord_second_date_12" 'Say "I love you."' 180 "<<set $scene.love=true>>">>]<br>
[<<moveTo "event_landlord_second_date_12" 'Wish <<him npc_landlord>> goodnight.' 180 "<<set $scene.love=false>>">>]
</div>/*#
#desc: landlord second date - invite
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "Foyer">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_landlord.stage < 5>>
<<set $npc_landlord.stage = 5>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_17'
15
'event_psychiatrist_landlord_date_dinner_1'
false
>>
<</if>>
<<if $scene.love>>
<<set $npc_landlord.flags.love = true>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_20'
15
'event_psychiatrist_landlord_love_1'
false
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_landlord","npc_landlord_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.love>>
<<=setup.getNpcName("npc_landlord","first")>> is partway to the door when you finish off wishing <<him npc_landlord>> good-night with "@@.pc;I love you.@@"<br>
<br>
<<He npc_landlord>> stops, turning back to you with a nervous smile as you repeat yourself "@@.pc;I love you.@@"<br>
<br>
"@@.npc_landlord;Oh... <<callPlayer "npc_landlord">>... you're just stressed from tonight, the adrenaline and everything but... well, maybe sometime the two of us get away from this crazy city? I have a little cabin out of town. Maybe we spend a weekend, get away from all of this just the two of us?@@"
<<else>>
You wish <<him npc_landlord>> good-night and <<he npc_landlord>> pauses in the doorway.<br>
<br>
"@@.npc_landlord;I know tonight has been a bit... exciting but... well, I have a cabin outside town. It's small, but private. I think... maybe we spend a weekend, get away from all of this just the two of us?@@"
<</if>>
<br><br>
You smile and say you'd like that... and that you'll be certainly taking <<him npc_landlord>> up on the offer to be <<his npc_landlord>> personal, devoted maid for a few days.<br>
<br>
<<He npc_landlord>> smiles and looks adoringly back at you. "@@.npc_landlord;You really are just perfect... thank you, <<callPlayer "npc_landlord">>, thank you... we talk soon, have a wonderful night, and be careful with that ankle!@@"<br>
<br>
You promise you will and <<he npc_landlord>> leaves.<br>
<br>
[<<moveTo "room_foyer" 'Back to your flat.' 60>>]
</div>/*#
#desc: ask landlord to the club
#status: RELEASED 0.8.5.0
#ignore_spell: 'd
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if $now.getUTCDay() == 0>>
<<set $scene.day = "tomorrow night">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 1, 21, 0, false)>>
<<else>>
<<set $scene.day = "Sunday">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 0, 21, 0, false)>>
<</if>>
<<addTaskById 'task_landlord_date_club' _tmpDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_landlord","first")>> if <<he npc_landlord>>'d like to accompany you to <<printShopName 'sex_club'>>?<br>
<br>
"@@.npc_landlord;<<printShopName 'sex_club'>>? Is that the Fetish Club in the Industrial District? It back open again?@@"<br>
<br>
<<printThought "Huh... bit surprised <<he npc_landlord>>'d be aware of it...">><br>
<br>
You confirm that it is and that you want to go there with <<him npc_landlord>>.<br>
<br>
You can feel <<his npc_landlord>> hesitation, but it seems that, after your prior insistence, <<hes npc_landlord>> somewhat backed off from the whole "you wouldn't want to be seen in public with me" schtick.<br>
<br>
"@@.npc_landlord;Si. I can go and keep an eye on you. Heh, never thought I be going back to place like that after I quit army.@@"<br>
<br>
Now you're REALLY curious... and excited, but you decide to take your win, giving <<him npc_landlord>> the location and to meet you there <<=$scene.day>>; defusing <<his npc_landlord>> question as to what to wear by pointing out that the place has outfit rentals on-site.<br>
<br>
"@@.npc_landlord;Si, si, <<callPlayer "npc_landlord">>. We have fun!@@"<br>
<br>
You agree that you're looking forward to it.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Say goodbye and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: fail to meet landlord at club
#status: RELEASED 0.8.5.0
#ignore_spell: sentimos
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_landlord' 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.beforetasklocation.last() == "room_sex_club_exterior">>
You get a call from <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>... I sorry to do this to you, but... a water line in one of the other flats just explode. It a total mess here and I no can leave without dealing with it else the whole building flood! Lo sentimos mucho... I promise we go some other night, okay?@@"<br>
<br>
You can hear water in the background and someone yelling as <<=setup.getNpcName("npc_landlord","first")>> hangs up.<br>
<br>
<<printThought "Dammit... though, I guess in some ways it's for the best, since I wasn't really dressed properly to make the night special...">>
<<else>>
You get a call from <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<printThought "Shit! I was supposed to meet <<him npc_landlord>> at <<printShopName 'sex_club'>> tonight!">><br>
<br>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>. I at club like you ask and... you no here. I guess something come up? No problem, we go some other time, maybe.@@"<br>
<br>
<<He npc_landlord>> hangs up.<br>
<br>
<<printThought "Dammit.">>
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet landlord at sex club
#status: RELEASED 0.8.5.0
#ignore_spell: fabuloso,fabulosa
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_landlord","npc_landlord_wrenchless") setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You arrive at <<printShopName 'sex_club'>> to find <<=setup.getNpcName("npc_landlord","first")>> nervously waiting for you just inside. <<He npc_landlord>> takes one look at your outfit and gasps, <<his npc_landlord>> prior concern disappearing in favour of awed lust.<br>
<br>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">> this... perfecto, muy <<if $npc_landlord.call_player == 'Chico'>>fabuloso<<else>>fabulosa<</if>>...@@" <<He npc_landlord>> shakes <<his npc_landlord>> head, "@@.npc_landlord;I no can go in with you like that! You too beautiful, I read dresscode, watch other guests... nobody want see old <<man npc_landlord>> in anything like that. You go on ahead, I just be embarrassment.@@"<br>
<br>
You sigh and put your foot down as you state that the only thing that would embarrass you would be if <<he npc_landlord>> ditched you to go home and sulk. Skirts bouncing you take <<him npc_landlord>> by the hand and storm up to the desk where the guard greets you with a nod.<br>
<br>
"@@.pc;Hi — my <<if $npc_landlord.fem>>GIRL<<else>>BOY<</if>>FRIEND needs an outfit for the evening. What do you have that would show off <<if $npc_landlord.fem>>how gorgeous she is<<else>>what a handsome hunk he is<</if>>?@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> blushes. "@@.npc_landlord;You no give this nice guard such impossible task, you excuse my girlfriend. She blinded by affection. I just need something that pass dresscode, no?@@"<br>
<br>
The guard grins as she looks <<=setup.getNpcName("npc_landlord","first")>> over. "@@.npc_guard;If anyone is blinded it'd be you looking in mirrors — get that eye serviced <<if $npc_landlord.fem>>girl<<else>>fella<</if>>, because you aged like a fine wine!@@" <<=setup.getNpcName("npc_landlord","first")>> is struck silent as the guard steps around the counter. The guard eyes <<him npc_landlord>> up and down like a piece of meat while tossing you a comment. "@@.npc_guard;Be a dear and watch the door for me — you know the sort to let in, I'm going to take SPECIAL care of your <<boy npc_landlord>>friend.@@"<br>
<br>
The guard flashes you a parting wink as she leads <<=setup.getNpcName("npc_landlord","first")>> off to the changing area as <<he npc_landlord>> continues to look awkward.<br>
<br>
[<<moveTo "event_sexclub_date_landlord_2" "Get behind the counter and watch the door." 1200>>]
</div>/*#
#desc: wait for landlord to get changed for sexclub - talk to guest
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png">>
<div id="invframe" class="scrolltext">
You step behind the counter, glancing in the mirror and adjusting your outfit as you wait.<br>
<br>
A couple minutes later another guest walks in. You think you recognise having seen them in the crowd before as they pause to look you over.<br>
<br>
"@@.generic_male1;Not that I don't enjoy the softer look, but where's <<=setup.getNpcName("npc_guard","formal")>>?@@"<br>
<br>
[<<moveTo "event_sexclub_date_landlord_3" 'Tell <<him>> that <<=setup.getNpcName("npc_guard","formal")>> will be back soon.' 300 "<<set $scene.boyfriend=false>>">>]<br>
[<<moveTo "event_sexclub_date_landlord_3" 'Tell <<him>> that <<=setup.getNpcName("npc_guard","formal")>> is busy helping get your <<boy npc_landlord>>friend an outfit.' 300 "<<set $scene.boyfriend=true>>">>]
</div>/*#
#desc: wait for landlord to get changed for sexclub - respond to guest
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png">>
<div id="invframe" class="scrolltext">
<<if $scene.boyfriend>>
You reply that <<=setup.getNpcName("npc_guard","formal")>> is busy helping get your <<boy npc_landlord>>friend an outfit for the evening.<br>
<br>
"@@.generic_male1;<<Boy npc_landlord>>friend? Well now you have me intrigued! I gotta see what kind of <<man npc_landlord>> was able to catch such a sexy cutie as yourself!@@"
<<else>>
You respond that you are just filling in for <<=setup.getNpcName("npc_guard","formal")>>, but that their outfit is fine and they can go on in to the club.<br>
<br>
"@@.generic_male1;Sounds good, keep holding down the fort, cutie!@@"
<</if>>
<br><br>
You hear voices from the changing area, sounds like <<=setup.getNpcName("npc_landlord","first")>> and <<=setup.getNpcName("npc_guard","formal")>> are on their way back out.<br>
<br>
[<<moveTo "event_sexclub_date_landlord_4" 'Look over to see what <<=setup.getNpcName("npc_landlord","first")>> has found.' 120>>]
</div>/*#
#desc: landlord emerges in fetish attire
#status: RELEASED 0.8.5.0
#ignore_spell: h
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_landlord","npc_landlord_club") setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> walks out and your jaw drops.
<<if $npc_landlord.fem>>
She always has been pretty in her casual clothes, and despite her comments about age and her complete neglect of fashion she's in shape but this... perfectly fitted leather jacket over tight pants and high-lace boots... <<if $fetish.daddy>>All you can think is <<printThought "Mommy...">><<else>>She looks Hot with a capital H.<</if>><br>
<<else>>
He always has that sort of slightly scruffy handsomeness, and despite his comments about age and his complete neglect of fashion he's in shape but this... perfectly fitted leather jacket over pants and high-lace boots... <<if $fetish.daddy>>All you can think is <<printThought "Daddy...">><<else>>He looks Hot with a capital H.<</if>><br>
<</if>>
<br>
<<if $scene.boyfriend>>
"@@.generic_male1;Well hello <<Sir npc_landlord>>!@@" The <<man>> states as <<he>> snaps off a salute... which <<=setup.getNpcName("npc_landlord","first")>> sharply returns as if on reflex before slowly lowering <<his npc_landlord>> hand.<br>
<br>
"@@.generic_male1;If dressing as a maid was guaranteed to get me a <<man npc_landlord>> that sharp... <<=setup.getNpcName("npc_guard","formal")>> — what do you have in stock?@@"<br>
<br>
The guard laughs and shoos the <<guy>> off into the club.<br>
<br>
<</if>>
You just stare in awe as <<=setup.getNpcName("npc_landlord","first")>> stands slightly awkwardly. "@@.npc_landlord;No stare, I look silly.@@"<br>
<br>
"@@.npc_guard;Silly? No, what you look is fucking hot, but there's one slight flaw with your outfit. <<=$player.first_name>>? Get your cute butt down on the ground and polish your <<if $npc_landlord.fem>>Mistress'<<else>>Master's<</if>> boots.@@"<br>
<br>
"@@.npc_landlord;You no have to—@@" <<=setup.getNpcName("npc_landlord","first")>> starts to say.<br>
<br>
[<<moveTo "event_sexclub_date_landlord_4_shine" 'Get to work spit-shining those boots!' 600>>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Pass up an opportunity to demonstrate your obedience? Nope!@@]
<<elseif setup.getTotalValue("foot") > 15>>
[@@.link_locked;You can't pass up the opportunity for some boot-blacking.@@]
<<else>>
[<<moveTo "event_sexclub_date_landlord_5" 'Just go into the club with <<=setup.getNpcName("npc_landlord","first")>>.' 60>>]<br>
<</if>>
</div>/*#
#desc: enter club w/landlord
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 10 'terrible' $ALONE>>
<<applyExperience 'foot' 10 'terrible' $ALONE>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_landlord","npc_landlord_club")>>
<div id="invframe" class="scrolltext">
You lovingly drop to your knees to get to work polishing <<=ps(setup.getNpcName("npc_landlord","first"))>> boots. At first <<he npc_landlord>> seems a little embarrassed, especially when another group of guests walks past on their way into the club. You have no attention for anything but <<=setup.getNpcName("npc_landlord","first")>>; the heavy scent and taste of leather intoxicating as you lick <<his npc_landlord>> boots clean and polish them up to a mirror shine.<br>
<br>
By the time you finish your work your silent devotion seems to have won out. <<=setup.getNpcName("npc_landlord","first")>> smiles as <<he npc_landlord>> helps you to your feet, both in gratitude and in understanding of the joy you gain from serving <<him npc_landlord>>.<br>
<br>
"@@.npc_landlord;Thank you, <<callPlayer "npc_landlord">>... even in military my boots never shine so! And my back certainly grateful not to have to lean down myself!@@"<br>
<br>
You lace your arm around <<if $npc_landlord.fem>>hers<<else>>his<</if>> and lean up against <<him npc_landlord>> as <<he npc_landlord>> finally leads the way into the club.<br>
<br>
[<<moveTo "event_sexclub_date_landlord_5" 'Enter the club proper.' 180>>]
</div>/*#
#desc: enter club w/landlord
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_landlord","npc_landlord_club")>>
<div id="invframe" class="scrolltext">
You expected <<=setup.getNpcName("npc_landlord","first")>> to be at least surprised by the interior of the club, but <<he npc_landlord>> seems almost blase as <<he npc_landlord>> looks around at the den of hedonism.<br>
<br>
"@@.npc_landlord;I can see why you wanted me here with you... A sweet thing like you needs protection against such rampant sin.@@"<br>
<br>
<<printThought "Wait... is <<he npc_landlord>> playing with me?">><br>
<br>
You look up at <<=setup.getNpcName("npc_landlord","first")>>, but you can't tell if <<hes npc_landlord>> being <<his npc_landlord>> usual dense self... or if that twinkle in <<his npc_landlord>> eye is more than just the normal glint of the cybernetics.<br>
<br>
Another guest comes up behind you and <<=setup.getNpcName("npc_landlord","first")>> leads you out of the way of the main path. You can't really picture <<him npc_landlord>> on the dance floor, but that still leaves the bar and the "play" area to investigate...<br>
<br>
<<include "landlordDateChoices">>
</div><<if $scene.bar>>
[@@.link_locked;You've already gotten a drink at the bar.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_landlord_6_bar_1" "Head for the bar." 60>>]<br>
<</if>>
<<if $scene.play>>
[@@.link_locked;You've already spent time in the play area.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_landlord_6_play_1" "See if you can have some fun in the play area." 60>>]<br>
<</if>>
<<if $scene.bar && $scene.play>>
[<<moveTo "event_sexclub_date_landlord_7" "Something is happening on-stage..." 600>>]
<</if>>/*#
#desc: sexclub bar with landlord
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bar = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_landlord","npc_landlord_club") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_landlord","first")>> head for the bar where <<he npc_landlord>> orders a brandy while you opt for <<if !$npc_landlord.fem>>the feminine contrast of <</if>>a strawberry daiquiri.<br>
<br>
<<if State.hasPlayed("event_landlord_retention_mission_7") || State.hasPlayed("event_guard_retention_mission_5")>>
You both finish your drinks with nothing of particular interest happening.<br>
<br>
<<include "landlordDateChoices">>
<<else>>
The bartender has just set your drinks down when a familiar voice causes you to start... and your <<boy npc_landlord>>friend to tense.<br>
<br>
"@@.npc_retention;<<=setup.getNpcName("npc_landlord","Colonel")>>? As I live and breathe!@@" You turn to face <<=setup.getNpcName("npc_retention","formal")>>, standing with <<if $fetish.pet_play>><<his npc_retention>> pup kneeling at <<his npc_retention>> side<<else>><<his npc_retention>> slave standing obediently beside <<him npc_retention>><</if>>. <<His npc_retention_assistant>> eyes flicker towards you and <<=setup.getNpcName("npc_retention","formal")>> looks momentarily surprised. "@@.npc_retention;Miss <<=$player.last_name>>? Well, well, I was going to ask the <<=setup.getNpcName("npc_landlord","Colonel")>> about <<his npc_landlord>> pet, but I know all about you, don't I?@@"<br>
<br>
You blush and slide a little bit nearer to <<=setup.getNpcName("npc_landlord","first")>> as <<he npc_landlord>> pulls you close. You can feel <<him npc_landlord>> coiled like a spring, as your <<boy npc_landlord>>friend and <<=setup.getNpcName("npc_retention","formal")>> have an intense stare-down that you almost fear is about to come to blows...<br>
<br>
"@@.npc_landlord;<<=setup.getNpcName("npc_retention","Major")>>. I hope you have been keeping well.@@" <<He npc_landlord>> states in a cold, measured tone that seems to indicate <<he npc_landlord>> would prefer quite the opposite.<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> grins. "@@.npc_retention;Of course. It seems that my skills are more valuable in the civilian sector... security is quite a lucrative field, indeed... I could make a recommendation for you, if you liked. I can always use more guards with combat experience who know how to follow orders. You never know what sort of situation might come up these days.@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> can't quite suppress the grimace at the implication that <<he npc_landlord>> would be working under someone <<he npc_landlord>> obviously once outranked, on top of whatever other shadows lurk in their past. "@@.npc_landlord;I am... quite content with my current arrangement.@@"<br>
<br>
"@@.npc_retention;Yes, I imagine so...@@" <<He npc_retention>> states as <<he npc_retention>> leers in your direction "@@.npc_retention;I don't suppose your pretty little maid has told you all the things she gets up to in her day job? She really has become quite the office whore, taking to it like a real champ<<if $npc_retention.stage >=5>><<if $fetish.pet_play>>— even got into a bit of trouble with my pet, showed a real lust for the puppy peen<<else>>even got into it with my slave<</if>>!<</if>>@@" <<He npc_retention>> chuckles and tugs <<his npc_retention>> <<if $fetish.pet_play>>pet's<<else>>slave's<</if>> leash. "@@.npc_retention;Speaking of, I was just on the way to tend to this one. You know how it is with a sub — let them go too long between spankings and they'll forget their place.@@"<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> chuckles and wanders off. You reach over and massage <<=ps(setup.getNpcName("npc_landlord","first"))>>, trying to get <<him npc_landlord>> to un-tense... waiting for <<him npc_landlord>> to say something about <<=ps(setup.getNpcName("npc_retention","formal"))>> mention of work.<br>
<br>
[<<moveTo "event_sexclub_date_landlord_6_bar_2" "Continue." 300>>]
<</if>>
</div>/*#
#desc: sexclub bar with landlord - landlord talks after meeting npc_retention
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.sex_club_retention = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_landlord","npc_landlord_club")>>
<div id="invframe" class="scrolltext">
It's almost a minute before <<=setup.getNpcName("npc_landlord","first")>> even moves; bringing <<his npc_landlord>> drink to <<his npc_landlord>> lips and downing the rest of it in a single gulp before speaking. "@@.npc_landlord;I no care what you do at work. You are your own <<switch $player.identify_as>><<case 'female' ''>>woman<<case 'male'>>man<<case 'fluid' 'agender'>>person<</switch>>, though I cherish our time together, you adult, and capable of making your own decision. Though... if they do anything you no want, well...@@" <<His npc_landlord>> voice trails off and you think back to <<his npc_landlord>> swift dispatching of the muggers and the way that, even while joking, <<=setup.getNpcName("npc_retention","formal")>> seemed wary and on guard.<br>
<br>
[<<moveTo "event_sexclub_date_landlord_6_bar_3" "Say it's fine and you'd like to get back to enjoying the evening." 300 "<<set $scene.truth=false>>">>]<br>
[<<moveTo "event_sexclub_date_landlord_6_bar_3" "Tell <<him npc_landlord>> that work is... complicated." 300 "<<set $scene.truth=true>>">>]
</div>/*#
#desc: sexclub bar with landlord - tell landlord about work
#status: RELEASED 0.8.5.0
#ignore_spell: mañana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.truth>>
<<set $npc_landlord.flags.knowWorkTruth = 1>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_landlord","npc_landlord_club")>>
<div id="invframe" class="scrolltext">
<<if $scene.truth>>
You confess that your work situation is... complicated.<br>
<br>
"@@.npc_landlord;Si, si.@@" <<He npc_landlord>> states. "@@.npc_landlord;This... no good place, but sometime later, when we private. You tell me, no?@@" <<His npc_landlord>> voice softens. "@@.npc_landlord;But that problem for mañana. Tonight... you want have fun at club, we have fun at club. What you wish do next?@@"
<<else>>
You smile and say you'd like to put <<=setup.getNpcName("npc_retention","formal")>> behind you and get back to enjoying the evening together.<br>
<br>
"@@.npc_landlord;Si, si, capital idea.@@" <<=setup.getNpcName("npc_landlord","first")>> responds with a nod.
<</if>>
<br><br>
<<include "landlordDateChoices">>
</div>/*#
#desc: sexclub play area w/landlord
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.play = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_landlord","npc_landlord_club")>>
<div id="invframe" class="scrolltext">
You wander through the play area with <<=setup.getNpcName("npc_landlord","first")>>. To your slight surprise <<=setup.getNpcName("npc_landlord","first")>> appears unperturbed by the kinky goings-on around you, but maybe that's just because <<he npc_landlord>> seems to only have eyes for you. Whenever you sneak a glance <<he npc_landlord>> seems to be smiling and looking longingly at you as you walk between bondage furniture and past floggings-in-progress.<br>
<br>
Circling back towards the party you overhear a pair of dominants having some sort of argument about single tail technique. You're content to ignore them but one of them must have noticed you passing by as they turn and address <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
"@@.generic_male2;Hey, you look like you'd know this sort of thing, I got this longer single tail and... I'm having trouble maintaining the accuracy I'm used to. You got any suggestions? Feel free to use one of our targets...@@" <<He>> gestures to where a pair of slaves are bound in side by side stocks with just their plugged bottoms on display on this side of the wood.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> glances down at you and you're suddenly curious about what all <<he npc_landlord>> does know...<br>
<br>
<<if setup.getTotalValue("bdsm") <= 15>>
[<<moveTo "event_sexclub_date_landlord_6_play_2" "Obediently nod for <<him npc_landlord>> to show off." 300 "<<set $scene.whip='demo'>>">>]<br>
<</if>>
[<<moveTo "event_sexclub_date_landlord_6_play_2" "Insist that if <<hes npc_landlord>> going to whip someone's bottom — it's going to be yours!" 300 "<<set $scene.whip='you'>>">>]<br>
<<if setup.getTotalValue("bdsm") > 15>>
[@@.link_locked;Pass up on a whipping? Never!@@]
<<else>>
[<<moveTo "event_sexclub_date_landlord_6_play_2" "Shake your head, you don't want <<him npc_landlord>> to do this." 300 "<<set $scene.whip='no'>>">>]
<</if>>
</div>/*#
#desc: sexclub play area w/landlord - use whip
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.whip>>
<<case 'demo'>>
<<applyExperience 'submission' 11 'little' $INCOGNITO>>
<<case 'you'>>
<<applyExperience 'submission' 15 'very' $EXPOSED>>
<<applyExperience 'bdsm' 5 'little' $EXPOSED>>
<<applyExperience 'bondage' 12 'normal' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_landlord","npc_landlord_club")>>
<div id="invframe" class="scrolltext">
<<switch $scene.whip>>
<<case 'demo'>>
You nod and watch as <<=setup.getNpcName("npc_landlord","first")>> takes a deep breath and accepts the whip, testing its balance and limbering up for a moment before motioning towards one of the "targets" and getting a nod from its owner.<br>
<br>
In what is unmistakably a combat stance <<=setup.getNpcName("npc_landlord","first")>> unfurls the whip and then lashes out in a horizontal strike that hits directly in the middle of a butt-cheek.<br>
<br>
"@@.generic_female2;Dang! Old-timer got skills,@@"<br>
<br>
"@@.npc_landlord;Es just practice,@@" <<he npc_landlord>> explains modestly before launching into a very detailed demo where <<he npc_landlord>> shows off different techniques and gives pointers.<br>
<br>
You're a bit jealous you didn't volunteer to be <<his npc_landlord>> subject, but just watching <<him npc_landlord>> work has you feeling extra submissive, very excited to have a <<boy npc_landlord>>friend with such a surprising, and sexy, skill.<br>
<br>
By the time <<his npc_landlord>> demo is over <<=setup.getNpcName("npc_landlord","first")>> has attracted quite a crowd, but <<he npc_landlord>> seems oblivious to the attention as <<he npc_landlord>> hands the whip back to its original owner and places <<his npc_landlord>> arm around your waist as the two of you walk away.<br>
<br>
<<include "landlordDateChoices">>
<<case 'you'>>
You smile and give <<=setup.getNpcName("npc_landlord","first")>> a kiss on the cheek before telling the <<if $options.fem>>dommes<<else>>doms<</if>> that your <<Master npc_landlord>> will be glad to help — once you're properly restrained to act as <<his npc_landlord>> target.<br>
<br>
One of the <<if $options.fem>>dommes<<else>>doms<</if>> chuckles as they lead you over to the stockades, helping you to arrange your clothing so that it will not be in the line of fire as you are soon bound with your ass exposed.<br>
<br>
"@@.npc_landlord;So the first thing to remember is stance. You no standing stable, how you expect have consistent strikes with improper base? Once you have that it all about repetition — you must learn to make the whip an extension of your arm, see, like this.@@"<br>
<br>
There is a crack and the whip teases your right cheek,
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
Pain-slut that you are, you reflexively moan "@@.pc;Harder!@@"
<<else>>
You moan "@@.pc;Harder,@@" the loud, stinging blow only turning you on.
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
You gasp, even if the blow is more loud and exciting than painful...
<<else>>
You gasp... though the blow was more sound than pain.
<</if>>
<</if>>
<br><br>
"@@.npc_landlord;See, here the most important part — feedback from your sub. Before even pick up whip you must know plan — is this punishment? Reward? Have you whipped them before to know how they take to it? All important, and must revise based on result of each strike.@@"
<<if setup.getTotalValue("bdsm") > 10>>
The whip cracks again, even harder this time and you bite your lip. A mere two blows in and it is clear that <<=setup.getNpcName("npc_landlord","first")>> is REALLY good at this. "@@.npc_landlord;Here you see sub aroused by treatment, is masochist. This make punishment hard... and also mean must pay close attention — they get too deep in sub space they no tell you if it too much, so responsibility fall to you to prevent injury.@@"<br>
<br>
A couple more blows and you are approaching sub-space, the way <<=setup.getNpcName("npc_landlord","first")>> varies each strike to spread the damage evenly, the loud crack of each hit only increasing the erotic sensations.
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
The whip cracks again, only a little bit harder.
<<else>>
The whip cracks again, but still more sound than impact.
<</if>>
"@@.npc_landlord;Here we have more delicate sub, so focus more on getting a good, showy crack rather than inflict pain they no can handle.@@" You moan — though painful you can't help but be turned on by <<his npc_landlord>> expert technique.
<</if>>
<br><br>
[<<moveTo "event_sexclub_date_landlord_6_play_3" "Continue." 600>>]
<<case 'no'>>
You blush and shake your head, <<=setup.getNpcName("npc_landlord","first")>> begging off and leaving the pair to continue their discussion — and testing, the whip cracking in the vicinity of the bound butts as you walk off.<br>
<br>
<<include "landlordDateChoices">>
<<default>>
ERROR: unexpected scene.whip <<=$scene.whip>>
<</switch>>
</div>/*#
#desc: sexclub play area w/landlord - he whips you
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_landlord","npc_landlord_club")>>
<div id="invframe" class="scrolltext">
"@@.npc_landlord;Remember, also you can adjust impact by distance. Move closer and can hit with side of whip, more thuddy. At range is sharper, and then just noise as make show but never hit skin.@@"<br>
<br>
<<He npc_landlord>> moves in and out, demonstrating these techniques as well as you softly moan.<br>
<br>
"@@.npc_landlord;Now you try.@@" You hear <<=setup.getNpcName("npc_landlord","first")>> state and you submissively brace for a more clumsy blow... only to hear the strike land to your left and the sub next to you to yelp.<br>
<br>
"@@.npc_landlord;No, no, you stand too stiff, spread your legs, take wide base, stable, but not heavy. Yes, now keep shoulder loose and try again...@@"<br>
<br>
You groan, feeling both jealous of the other two subs as they "steal" attention, but also proud that <<=setup.getNpcName("npc_landlord","first")>> ensures you are only for <<his npc_landlord>> personal use; <<his npc_landlord>> occasional additional demonstrative blows each utter perfection.<br>
<br>
By the time you, and your red-marked bottom, are let back out of the stocks a small crowd has gathered, a round of applause going up as <<=setup.getNpcName("npc_landlord","first")>> somewhat meekly rounds out the lesson and directs the attention to you. "@@.npc_landlord;Mi lovely assistant!@@"<br>
<br>
You curtsy in thanks, but you're pretty sure <<he npc_landlord>> got the louder cheers, though you doubt <<he npc_landlord>> would agree as <<he npc_landlord>> wraps <<his npc_landlord>> arm back around your waist and leads you off.<br>
<br>
"@@.npc_landlord;I no go too hard on you? I confess, it been long time since I practice. But some things one never forget.@@"<br>
<br>
You respond by snuggling up against <<him npc_landlord>> and replying that <<he npc_landlord>> was "@@.pc;Perfect.@@"<br>
<br>
<<include "landlordDateChoices">>
</div>/*#
#desc: sex club show - witness collaring ceremony
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
You're trying to come up with what to do next when you hear some commotion from the direction of the stage.<br>
<br>
With excitement you grab <<=setup.getNpcName("npc_landlord","first")>> by the hand and dash towards the front to make sure the two of you have a good view of whatever fun show is planned for tonight.<br>
<br>
In <<his npc_sex_club>> full dominant uniform <<=setup.getNpcName("npc_sex_club","formal")>> grins down from the stage in front of the lowered curtain like some sort of vaudevillian <<Master npc_sex_club>> of Ceremonies. "@@.npc_sex_club;Welcome, welcome — we have a VERY special ceremony for you tonight. One of my friends — and many of yours, is sealing <<his npc_landlord>> commitment to <<his npc_landlord>> oh-so-obedient slave. So, with that preamble out of the way, well... enjoy!@@"<br>
<br>
<<He npc_sex_club>> steps out of the way as the curtain rises.<br>
<br>
[<<moveTo "event_sexclub_date_landlord_8" "Watch the show." 300>>]
</div>/*#
#desc: sex club show - watch collaring ceremony
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png">>
<div id="invframe" class="scrolltext">
The curtain rises to display a <<switch $player.identify_as>><<case 'female' ''>>woman<<case 'male'>>man<<case 'fluid' 'agender'>>person<</switch>> kneeling in the centre of the stage. Head turned down, with <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>his<<case 'fluid' 'agender'>>their<</switch>> knees spread and hands upturned on their thighs
<<switch $player.identify_as>>
<<case 'female' ''>>
she is wearing a polished chastity belt, bra,
<<case 'male'>>
he is wearing a chastity cage,
<<case 'fluid' 'agender'>>
they are wearing a chastity belt,
<</switch>>
wrist cuffs, a blindfold... and nothing else.<br>
<br>
The slave waits patiently until a <<man npc_landlord>> walks out from the side of the stage to stand over them. Dressed in a polished latex <<if $npc_landlord.fem>>catsuit<<else>>tuxedo<</if>> the <<man npc_landlord>> looks impressive, reflecting light with every movement as the <<man npc_landlord>> stands over the motionless, kneeling slave.<br>
<br>
There is a soft smile on the <<if $npc_landlord.fem>>domme<<else>>dom<</if>>'s face as the <<man npc_landlord>> reaches down to peel off the blindfold, using a single gloved finger to gently raise the slave's chin to face the audience. The slave blinks quickly to adjust to the bright lights.<br>
<br>
"@@.generic_male1;Look upon your friends, your peers — are you ready to take this step, to pledge yourself to me completely? To give yourself over and, thus, take me to be your <<Master npc_landlord>>, your owner, to love you, care for you and protect you in return for your loving service?@@"<br>
<br>
<<switch $player.identify_as>>
<<case 'female' ''>>
"@@.generic_female2;Yes, <<Master npc_landlord>>.@@" She states
<<case 'male'>>
"@@.generic_male2;Yes, <<Master npc_landlord>>.@@" He states
<<case 'fluid' 'agender'>>
"@@.generic;Yes, <<Master npc_landlord>>.@@" They state
<</switch>>
without hesitation.<br>
<br>
"@@.generic_male1;Then present yourself.@@"<br>
<br>
The slave's arms rise up, elbows high and spread with their fingers intertwined behind their head.<br>
<br>
You can feel the audience hold their collective breath in anticipation as the <<if $npc_landlord.fem>>Domme<<else>>Dom<</if>> reaches down, fastening a shiny steel collar to match the other restraints around the slaves neck. The click of the locking mechanism closing is the only point at which the slave's perfect poise slips, as you see a slight tremor run up
<<switch $player.identify_as>>
<<case 'female' ''>>
her
<<case 'male'>>
his
<<case 'fluid' 'agender'>>
their
<</switch>>
spine that you understand quite well.<br>
<br>
Reaching down again the <<if $npc_landlord.fem>>Domme<<else>>Dom<</if>> offers a hand to their slave, who rises to
<<switch $player.identify_as>>
<<case 'female' ''>>
her
<<case 'male'>>
his
<<case 'fluid' 'agender'>>
their
<</switch>>
feet where a chain leash is attached to the front ring of the collar. "@@.generic_male1;I claim you as my slave. For now, and forever, let all who bear witness recognise and take joy.@@"<br>
<br>
The slave bows and is then scooped up in their <<Master npc_landlord>>'s arms, a passionate kiss that the slave melts into, seemingly only held up by <<switch $player.identify_as>>
<<case 'female' ''>>
her
<<case 'male'>>
his
<<case 'fluid' 'agender'>>
their
<</switch>>
<<Master npc_landlord>>'s strong arm around their waist.<br>
<br>
The crowd erupts in applause as, as simple as the ceremony was, you feel like you just witnessed something akin to a wedding
<<if $player.sec_style.submission.collar != "">>
and you think back to your own collaring.
<<elseif setup.getTotalValue("submission") > 15>>
and you dream of being collared yourself.
<<else>>
and you wonder what it would be like to be collared yourself.
<</if>>
<br><br>
Looking over at <<=setup.getNpcName("npc_landlord","first")>> you think <<he npc_landlord>> shed a tear from <<his npc_landlord>> one good eye, but it could just be the light.<br>
<br>
[<<moveTo "event_sexclub_date_landlord_9" 'Tell <<=setup.getNpcName("npc_landlord","first")>> you would love to wear <<his npc_landlord>> collar.' 300 "<<set $scene.collar=true>>">>]<br>
[<<moveTo "event_sexclub_date_landlord_9" "Remain quiet." 300 "<<set $scene.collar=false>>">>]
</div>/*#
#desc: sex club show - say you want to have his collar
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.collar>>
<<set $npc_landlord.flags.mention_collar = true>>
<<applyExperience 'submission' 20 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_landlord' 3>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
<<if $scene.collar>>
As the curtain falls and the crowd disperses you whisper to <<=setup.getNpcName("npc_landlord","first")>> that you would love to wear <<his npc_landlord>> collar.<br>
<br>
<<He npc_landlord>> is quiet for several heartbeats
<<if $player.sec_style.submission.collar != "">>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>, but you are already collared, no? Still... oh, it is such a foolish thing for me to contemplate but I would do all in my power to prove a worthy <<Master npc_landlord>> to such a beautiful, perfect maid.@@"
<<else>>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>... that you would even consider honouring me that way... well, I can hardly imagine, though I would do all in my power to prove a worthy <<Master npc_landlord>> to such a beautiful, perfect maid.@@"
<</if>>
<br><br>
You cuddle up against <<him npc_landlord>>, floating on cloud 9 as the
<<else>>
You remain quiet as the ceremony finishes and people scatter back to what they were doing before. The
<</if>>
rest of the evening passes without significant incident before <<=setup.getNpcName("npc_landlord","first")>> finally changes back to <<his npc_landlord>> "normal" clothes and takes you home.
<br><br>
[<<moveTo "event_sexclub_date_landlord_10" "Home." 7200>>]
</div>/*#
#desc: sex club show - he takes you home
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_landlord' 3>>
<<set $npc_landlord.flags.sex_club = true>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_19'
15
'event_psychiatrist_landlord_date_club_1'
false
>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
After what happened on the way home from your other date <<=setup.getNpcName("npc_landlord","first")>> is insistent on calling a cab to take the two of you home. You cuddle against <<him npc_landlord>> in the back of the vehicle for the short ride, feeling oddly drowsy... yet safe with <<his npc_landlord>> arm around you.<br>
<br>
You're half tempted to feign sleep so that <<if $npc_landlord.fem>>you can cuddle her for just a bit longer<<else>>he might carry you up to your flat<</if>> but you instead walk hand in hand with <<him npc_landlord>> to the threshold, where <<he npc_landlord>> bids you goodnight with a warm kiss and thanks you for the evening.<br>
<br>
"@@.npc_landlord;Gracias, <<callPlayer "npc_landlord">>. I guess you figure out but... it been a long time since I enjoyed something like that. You always make me feel so alive, thank you again for spending time with this old <<man npc_landlord>> and pushing <<him npc_landlord>> out of <<his npc_landlord>> rut.@@"<br>
<br>
You reply that it was your pleasure, and mean it as <<he npc_landlord>> begs off from coming in for a nightcap "@@.npc_landlord;I love to <<callPlayer "npc_landlord">>, but these old bones no used to a night clubbing. I need sleep, I come in and you be the death of me! Though... I can think of few better ways to go!@@"<br>
<br>
You both laugh and you give <<him npc_landlord>> a hug and then blow <<him npc_landlord>> a kiss just before <<he npc_landlord>> disappears up the elevator.<br>
<br>
[<<moveTo "room_foyer" "Home." 180>>]
</div>/*#
#desc: ask landlord about weekend together
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<include "hasAllWeekendEvent">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_landlord', 'first')>> about <<his npc_landlord>> offer to spend a weekend at <<his npc_landlord>> cabin as <<his npc_landlord>> maid.<br>
<br>
<<if _hasThisWeekendEvent>>
"@@.npc_landlord;Si, <<callPlayer "npc_landlord">> only... well, there is some maintenance I need to take care of in the building, contractors coming out, I need to be there to supervise... details no important, but it, unfortunately, mean I must postpone. Maybe ask me next week?@@"<br>
<br>
You smile and promise that you'll keep <<him npc_landlord>> to that!<br>
<br>
"@@.npc_landlord;Si, si,@@" you could swear you can hear <<him npc_landlord>> over the phone. "@@.npc_landlord;I need get back to things, I talk to you later mi amor!@@" <<He npc_landlord>> hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away and get back to what you were doing." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
"@@.npc_landlord;Si, <<callPlayer "npc_landlord">>! Oh, it would be such a delight to get away from the city and relax for the weekend. I know it may not be as exciting as you used to, but I promise we have wonderful time. It is a bit of a drive, I pick you up late Friday night and bring back Sunday? I no want you to miss work, and that is about as long as this old building can go without me keeping it from falling apart!@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('corporate_retreat_transit') && !$currentTasks.corporate_retreat_transit.finished>>
[@@.link_locked;You have the corporate retreat to attend this weekend.@@]<br>
<<else>>
[<<moveTo "event_landlord_weekend_invite_2" "Confirm you'd like to spend a weekend with <<him npc_landlord>>." 30 "<<set $scene.accept=true>>">>]<br>
<</if>>
[<<moveTo "event_landlord_weekend_invite_2" "Actually, this weekend isn't a good time." 30 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: agree to spend weekend with landlord
#status: RELEASED 0.8.4.0
#ignore_spell: anciano,anciana
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 5, 21, 0, false)>>
<<addTaskById 'task_landlord_weekend' _tmpDate>>
<<if $now.getUTCDay() == 4>>
<<set $scene.date = "Friday">>
<<else>>
<<set $scene.date = "next Friday">>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You reply that you'd love to spend the weekend as <<his npc_landlord>> personal maid.<br>
<br>
<<=setup.getNpcName('npc_landlord', 'first')>> seems practically giddy as <<he npc_landlord>> replies. "@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>! Once again your make this <<if $npc_landlord.fem>>anciana<<else>>anciano<</if>> so happy! I will pick you up <<=$scene.date>> night, it probably be late, around twenty-one hundred hours<<if !$options.militaryTime>>, that nine o'clock in evening<</if>>. I come to your apartment and see you then! Now I must get back to work, much to do to make sure building can survive without me a few days...@@"<br>
<br>
You reply that you're looking forward to it — and you'll be there to greet <<him npc_landlord>> in your best maid outfit.<br>
<br>
"@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>! You truly the best, now I look forward muy mas!@@"<br>
<br>
You exchange good-byes and hang up.
<<if $scene.cancelEvent>>
<br><br>
<<printThought "Okay... now I need to clear out the rest of my weekend schedule...">><br>
<br>
You take a few minutes on the phone to clear the rest of your weekend so that you won't get interrupted while you're with <<=setup.getNpcName('npc_landlord', 'first')>> — if you even get a signal at <<his npc_landlord>> cabin. From the sound of things, it's pretty remote.
<<if $scene.cancelGame>>
<br><br>
The only minor snag comes when you call <<=setup.getNpcName('npc_technician', 'first')>> about the Saturday game. "@@.npc_technician;Sorry, my dear, but the rules of the group are quite specific about performing penance if you miss a session, for any reason. Bit of a draconian hardship, I know, but it takes extreme measures to have a group this consistent!@@"
<</if>>
<</if>>
<<else>>
You reply that, actually, this weekend isn't going to work for you.<br>
<br>
"@@.npc_landlord;Si, si, you very busy <<callPlayer "npc_landlord">>. You let me know when you have a weekend free, until then, well... I busy myself, need to get back to work.@@"<br>
<br>
The two of you exchange goodbyes and hang up.
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away and get back to what you were doing." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: not waiting for landlord weekend pickup
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.atHome = setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
<<if $scene.atHome>>
<<completeTask 'task_landlord_weekend' $now true>>
<<else>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_landlord' 2>>
<</if>>
<</if>>
<<if $scene.atHome>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkNaked()>>
<<set $scene.outfitType = 'naked'>>
<<elseif setup.checkSleepWear() != "not_sleepwear">>
<<set $scene.outfitType = 'bed'>>
<<elseif setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings')>>
<<set $scene.outfitType = 'underwear'>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'male'>>
<<set $scene.outfitType = 'male'>>
<<elseif setup.checkVisibleClothingTag('maid') > 60>>
<<set $scene.outfitType = 'maid'>>
<<else>>
<<set $scene.outfitType = setup.analyzeWornTags(['slutty','casual','office','formal','schoolgirl','maid','fetish'])>>
<</if>>
<<set $player.location to "Foyer">>
<<else>>
<<set $player.location to "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.atHome>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.atHome>>
You have lost track of time when the door rings — <<=setup.getNpcName('npc_landlord', 'first')>> has arrived to pick you up for your weekend retreat together.<br>
<br>
You check yourself in the mirror —
<<if $scene.outfitType == 'maid'>>
<<if setup.checkOutsideDecency()>>
you are dressed as a maid and ready to go.
<<else>>
you are wearing maid attire, but are not really dressed appropriately to leave the apartment.
<</if>>
<<else>>
<<if setup.checkOutsideDecency()>>
you are dressed to go out — not as a maid, but, presumably <<=setup.getNpcName('npc_landlord', 'first')>> will have a suitable outfit for you at <<his npc_landlord>> cabin?
<<else>>
you are not dressed to go out.
<</if>>
<</if>>
<br><br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_landlord_weekend_2" "Get the door." 30 "<<set $player.inside = false>><<set $player.cutscene.lockinventory = true>>">>]
<<else>>
[@@.link_locked;I need to be dressed decently for the trip to the cabin.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
You get a call from <<=setup.getNpcName('npc_landlord', 'first')>>.<br>
<br>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>... I at your flat, but it seems you no home? I guess we save weekend at cabin for some other time. It fine, I have much to do keeping this old building from falling apart, we talk later!@@"<br>
<br>
You apologise for not being around and <<he npc_landlord>> hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: landlord weekend pickup
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _clearToDay = 1>>
<<include "clearWeekendSchedule">>
<</if>>
<<if setup.checkNaked()>>
<<set $scene.outfitType = 'naked'>>
<<elseif setup.checkSleepWear() != "not_sleepwear">>
<<set $scene.outfitType = 'bed'>>
<<elseif setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings')>>
<<set $scene.outfitType = 'underwear'>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'male'>>
<<set $scene.outfitType = 'male'>>
<<elseif setup.checkVisibleClothingTag('maid') > 60>>
<<set $scene.outfitType = 'maid'>>
<<else>>
<<set $scene.outfitType = setup.analyzeWornTags(['slutty','casual','office','formal','schoolgirl','maid','fetish'])>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
The door rings — <<=setup.getNpcName('npc_landlord', 'first')>> has arrived to pick you up for your weekend retreat together.<br>
<br>
You check yourself in the mirror —
<<if $scene.outfitType == 'maid'>>
<<if setup.checkOutsideDecency()>>
you are dressed as a maid and ready to go.
<<else>>
you are wearing maid attire, but are not really dressed appropriately to go out.
<</if>>
<<else>>
<<if setup.checkOutsideDecency()>>
you are dressed to go out — not as a maid, but, presumably <<=setup.getNpcName('npc_landlord', 'first')>> will have a suitable outfit for you at <<his npc_landlord>> cabin?
<<else>>
you are not dressed to go out.
<</if>>
<</if>>
<br><br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_landlord_weekend_2" "Get the door." 30 "<<set $player.inside = false>><<set $player.cutscene.lockinventory = true>>">>]
<<else>>
[@@.link_locked;I need to be dressed decently for the trip to the cabin.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: landlord weekend pickup
#status: RELEASED 0.8.4.0
#ignore_spell: hermosa
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You open the door and happily greet <<=setup.getNpcName('npc_landlord', 'first')>>.
<<if $scene.outfitType == "maid">>
<<He npc_landlord>> smiles wide at the sight of you in your maid attire. "@@.npc_landlord;<<callPlayer "npc_landlord">>! As muy hermosa as ever! Come, my wonderful maid, I drive us to the cabin.@@"
<<else>>
<<He npc_landlord>> smiles in greeting, though you're certain <<he npc_landlord>> has to be a little disappointed you aren't dressed in a maid outfit. "@@.npc_landlord;<<callPlayer "npc_landlord">> — looking lovely and ready for the road. Come, let us go.@@"
<</if>>
<br><br>
<<He npc_landlord>> offers you an arm and you take it as <<he npc_landlord>> leads you down the elevator and to, of all things, an old-fashioned ground vehicle. You don't think you've seen a truck like this outside of movies, but <<he npc_landlord>> seems to have taken phenomenal care of it as <<he npc_landlord>> helps you up into the cab and then enters the opposite driver's side.<br>
<br>
You gawk at the fully analogue dash, you've never been in a vehicle without a touch-screen, it's like riding in a museum piece!<br>
<br>
Noticing your attention <<he npc_landlord>> smiles. "@@.npc_landlord;You no worry — this truck in my family for a generation, but I modernise it to latest safety requirements — I no put my lovely <<callPlayer "npc_landlord">> at risk!@@"<br>
<br>
You smile, marveling at the amount of work that must have gone in to keep the vehicle not just running, but in such wonderful shape. The electric motor turns on whisper quiet, but you feel the suspension rumble just a bit as <<he npc_landlord>> pulls out of the parking garage and heads for the highway.<br>
<br>
[<<moveTo "event_landlord_weekend_3" "Head out of town." 3600>>]
</div>/*#
#desc: landlord weekend drive
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Truck">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_truck.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You've spent so much of your life in the city you sometimes forget just how far out it has sprawled. Even with light traffic, it takes almost an hour before you're finally away from the mega-structures and onto a highway heading up into the mountains. You chat occasionally with <<=setup.getNpcName("npc_landlord","first")>>, listening to <<him npc_landlord>> talk happily about <<his npc_landlord>> vehicle or other things, but mostly just relax and watch the scenery pass by as you move further away from the bustling light of civilization.<br>
<br>
The traffic having thinned out and the vehicle turning dark you look over at <<=setup.getNpcName("npc_landlord","first")>> and realise that you could probably get up to a bit of fun...<br>
<br>
[<<moveTo "event_landlord_weekend_4" "Lean over for some road head." 1800 "<<set $scene.road_head=true>>">>]<br>
[<<moveTo "event_landlord_weekend_4" "Just relax through the ride." 1800 "<<set $scene.road_head=false>>">>]
</div>/*#
#desc: landlord weekend road head
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.road_head>>
<<set $npc_landlord.flags.weekend.road_head=true>>
<<applyExperience 'oral' $npc_landlord.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Truck">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_truck.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.road_head>>
You shuffle a bit closer to <<=setup.getNpcName('npc_landlord', 'first')>> and hold your hair out of the way as you lean over to reach for <<his npc_landlord>> pants zipper.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>, what are you—?@@" <<He npc_landlord>> starts to ask before you wrap your lips around <<his npc_landlord>> soft member. "@@.npc_landlord;Oh, <<callPlayer "npc_landlord">>@@" <<he npc_landlord>> gasps, rapidly hardening in your mouth as you softly slurp. <<He npc_landlord>> reaches down to gently brush your hair as you bob happily, humming in contentment as <<he npc_landlord>> drives on, and you suck.<br>
<br>
Cruising casually there is no reason to rush, and you leisurely suck for over a dozen minutes before, <<his npc_landlord>> voice somewhat strained, <<he npc_landlord>> softly asks you for relief "@@.npc_landlord;Please, <<callPlayer "npc_landlord">>, your lips are so wonderful, but you keep this up much longer and I get heart attack and crash...@@"<br>
<br>
"@@.pc;Sorry, <<Sir npc_landlord>>,@@" you reply gently, giving <<his npc_landlord>> wonderful willy a final kiss before straightening back up... and then sliding across the bench seat to cuddle. <<He npc_landlord>> drapes an arm over your shoulder and drives on. You smile, the gentle roll of the vehicle lulling you to sleep...
<<else>>
The darkness outside the city, combined with the gentle roll of the vehicle has you slowly lulled to sleep...
<</if>>
<br><br>
[<<moveTo "event_landlord_weekend_5" "Sleep on through the night." 7200>>]
</div>/*#
#desc: landlord weekend cabin
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You wake up to the sound of your door opening and <<=setup.getNpcName('npc_landlord', 'first')>> <<if $npc_landlord.fem>>giving you a quick peck on your cheek<<else>>lifting you out of the vehicle<</if>>. You smile up at <<him npc_landlord>>, more than happy to be <<if $npc_landlord.fem>>spending the weekend with your girlfriend<<else>>carried in his arms up the steps to the cabin and over the threshold<</if>>.<br>
<br>
"@@.npc_landlord;Welcome, <<callPlayer "npc_landlord">>, to my humble retreat... I no get out here as often as I like, so it is a little dusty...@@" <<He npc_landlord>> states as <<he npc_landlord>> <<if $npc_landlord.fem>>leads you inside the cabin<<else>>gently places your feet on the floor<</if>>.<br>
<br>
<<if $scene.outfitType == 'maid'>>
You smile and reply that you'll take care of that as you wiggle to show off your maid outfit.
<<else>>
You smile and reply that you'll take care of that... once you're properly dressed for the job.
<</if>>
<br><br>
<<He npc_landlord>> smiles. "@@.npc_landlord;Si, si — but in the morning! We are both tired from the long week. Let us have a nice sleep, wake up refreshed and ready to enjoy the day.@@"<br>
<br>
You nod, following <<him npc_landlord>> into the bedroom.<br>
<br>
[<<moveTo "event_landlord_weekend_6" "Get ready for bed." 300>>]
</div>/*#
#desc: landlord weekend cabin offered maid lingerie
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin_bedroom.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_landlord', 'first')>> into the bedroom, noting that the bed is quite a bit smaller than the king you're used to having to yourself.<br>
<br>
"@@.npc_landlord;Sorry about the bed... when I design cabin, I think it only for me. I never expect guests, much less one so lovely. You can have bed, I will make do on the couch.@@"<br>
<br>
You roll your eyes and insist that no — you are here to spend the weekend with <<him npc_landlord>> — and that means you expect to fall asleep wrapped in <<his npc_landlord>> arms.<br>
<br>
<<He npc_landlord>> blushes, but nods. "@@.npc_landlord;In that case, well... I have some sleeping clothes for you... if you like.@@"<br>
<br>
<<He npc_landlord>> opens <<his npc_landlord>> bag and pulls out a set of skimpy, maid-themed lingerie.<br>
<br>
<<printThought "Of course...">><br>
<br>
[<<moveTo "event_landlord_weekend_7" "Wear the lingerie." 180 "<<set $scene.lingerie=true>>">>]<br>
[<<moveTo "event_landlord_weekend_7" "You'd rather sleep naked." 180 "<<set $scene.lingerie=false>>">>]
</div>/*#
#desc: landlord weekend cabin change first night
#status: RELEASED 0.8.4.0
#ignore_spell: magnifica
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<if $scene.lingerie>>
<<addItemSet 'maid_lingerie'>>
<<wearItemSet 'maid_lingerie'>>
<</if>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin_bedroom.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.lingerie>>
You smile as you take the offered lingerie, remarking that it's "@@.pc;Perfect@@" as you shimmy out of your other clothes and into the outfit, making sure to put on a show for your <<boy npc_landlord>>friend.<br>
<br>
"@@.npc_landlord;No... better than perfect! You are like an Angel, a dream! La <<callPlayer "npc_landlord">> magnifica!@@"
<<else>>
You reply that you were actually planning on sleeping naked. Making good on your word by slipping out of your clothes and smiling at <<him npc_landlord>>.<br>
<br>
"@@.npc_landlord;Naked... naked is good too...@@" <<He npc_landlord>> replies, staring in awe as <<he npc_landlord>> puts the lingerie down.
<</if>>
<br><br>
You blush and flutter your eyelashes before pointing out that <<if $npc_landlord.fem>>SHE<<else>>HE<</if>> is now VERY overdressed before helping <<him npc_landlord>> strip out of <<his npc_landlord>> clothes and then welcoming <<him npc_landlord>> under the covers.<br>
<br>
As the little spoon you snuggle back up against <<him npc_landlord>> and soon fall asleep to the soft sound of <<his npc_landlord>> <<if $npc_landlord.fem>>breathing<<else>>snoring<</if>>.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 7, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 7, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_landlord_weekend_8" "Sleep." _timeToMorning>>]
</div>/*#
#desc: landlord weekend cabin sleep first night
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -200>>
<<applyStress -20>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin_bedroom.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
The mountains may be cool, but you are warm and happy snuggled against your hot <<boy npc_landlord>>friend under the thick covers, sleeping sound and well.<br>
<br>
[<<moveTo "event_landlord_weekend_9" "Wake." 0>>]
</div>/*#
#desc: landlord weekend served breakfast
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'maid_sissy_black'>>
<<set $scene.addShoes = false>>
<<if !setup.checkItemOwned('mary_janes_black')>>
<<addItem 'mary_janes_black'>>
<<set $scene.addShoes = true>>
<<else>>
<<if setup.inWardrobe('mary_janes_black')>>
<<wardrobeToItem 'mary_janes_black'>>
<<set $scene.addShoes = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You wake to the delicious smell of breakfast, finding yourself alone in the bed but looking up as <<=setup.getNpcName('npc_landlord', 'first')>> walks into the room holding a tray of delicious looking food.<br>
<br>
"@@.npc_landlord;Good morning, <<callPlayer "npc_landlord">> I no could bring myself to wake such a sleeping beauty, but it seems the smell of breakfast has done the work for me. Here, I hope you enjoy!@@"<br>
<br>
You smile and dig in — a simple Spanish omelette, but one cooked with skill and love. It is very, very tasty.<br>
<br>
After breakfast is finished <<=setup.getNpcName('npc_landlord', 'first')>> offers a hand to help you out of bed before revealing the next surprise — a brand new, adorably beautiful, maid outfit.<br>
<br>
"@@.npc_landlord;Well I will leave you to change, it seems some old <<man npc_landlord>> was lazy last time and neglected to restock on firewood, so I need to do some chopping.@@"<br>
<br>
You're still staring in awe at the new outfit as <<he npc_landlord>> gives you a peck on the cheek and dashes away.<br>
<br>
<<printThought "<<He npc_landlord>>'d probably love to see me in this, but I imagine that, so long as I'm dressed like a maid, <<if $npc_landlord.fem>>she'll<<else>>he'll<</if>> be happy.">><br>
<br>
<<if $scene.addShoes>>
You pick up the dress to look at it some more and notice a pair of matching gloves and shoes sitting beneath it.<br>
<br>
<</if>>
<<if setup.checkVisibleClothingTag('maid') > 60 && setup.checkPlayerDressed()>>
[<<moveTo "event_landlord_weekend_10" "Stride out in your maid finery and get to cleaning." 3600 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<if setup.checkPlayerDressed()>>
[@@.link_locked;I need to be dressed like a maid!@@]<br>
<<else>>
[@@.link_locked;I may look like a maid, but I'm not really dressed...@@]<br>
<</if>>
<<if $options.ezchange>>
[<<moveTo "event_landlord_weekend_10" "Put on the maid outfit and get to cleaning." 3600 "<<wearItemSet 'maid_sissy_black'>><<wearItem 'mary_janes_black' true>><<set $player.cutscene.lockinventory=true>>">>]
<</if>>
<</if>>
</div>/*#
#desc: landlord weekend cleaning time
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'very' $ALONE>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png">>
<div id="invframe" class="scrolltext">
You stride out into the apartment and get to work cleaning. While the cabin definitely has some dust — and calls out for the old<<if $npc_landlord.fem>> "maid's touch," <<else>> "woman's touch," <</if>>in general, it isn't all that bad, and you have a smile on your face as you bustle about making everything perfect.<br>
<br>
You work to the THUNK, THUNK, THUNK of <<=setup.getNpcName("npc_landlord","first")>> chopping wood outside, and you can't resist occasionally sneaking a glance at <<him npc_landlord>> hard at work... shirtless, <<if $npc_landlord.fem>>in a sports bra <</if>>beaded with sweat...<br>
<br>
You somehow manage to fight off the urge to jump <<his npc_landlord>> bones on top of the woodpile and instead focusing on the cleaning, with a short break to bring <<him npc_landlord>> a glass of water as an excuse to go outside and show off for <<him npc_landlord>> a little.<br>
<br>
<<He npc_landlord>> smiles at the sight of you, warning you to be careful on the bare ground in your heels. "@@.npc_landlord;You look so beautiful in those shoes, but they more appropriate for paved city streets than the outdoors.@@" <<He npc_landlord>> remarks.<br>
<br>
You smile and curtsy, remarking that you trust <<him npc_landlord>> to be there to catch you before you twirl and head back inside.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 12, 15)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_landlord_weekend_11" "Keep cleaning." _timeToLunch>>]
</div>/*#
#desc: landlord weekend morning - picnic
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
Bustling about on a submissive high of maid bliss you don't just clean the cabin, you polish and scrub until it is immaculate — glass clear as air, metal polished to a mirror shine, floorboards you could eat off of, when <<=setup.getNpcName("npc_landlord","first")>> opens the door shortly after noon <<he npc_landlord>> pauses in awe, seemingly scared to even step inside lest <<he npc_landlord>> mar the fairy-tale like perfection.<br>
<br>
You stand in the centre of the room and curtsy deep. "@@.pc;Welcome, <<Sir npc_landlord>>. Is this Maid's work to your liking?@@"<br>
<br>
"@@.npc_landlord;Liking? Oh, <<callPlayer "npc_landlord">> — never in the life of this cabin has it been so clean! I don't even want to come inside and mess it up! Could you grab our lunch from the kitchen? There's a picnic basket I prepared for us, beers and sandwiches in the fridge.@@"<br>
<br>
You curtsy again and go to fetch them, handing the basket to <<=setup.getNpcName("npc_landlord","first")>> as <<he npc_landlord>> takes you by the arm and leads you off down a short trail.<br>
<br>
"@@.npc_landlord;We not go far,@@" <<he npc_landlord>> states, nodding towards your heels, and the two of you enjoy a short, winding walk (where <<he npc_landlord>> politely points out every stray root or stone, lest you trip) that ends in a picturesque clearing.<br>
<br>
"@@.pc;This is all yours?@@" You ask in awe — you half expect a deer to bound out of the treeline... and then burst into song... though you suppose, as the closest thing to a "Princess" on site you'd need to start singing first, and you've only really done that sort of thing at karaoke...<br>
<br>
"@@.npc_landlord;Si... my retirement bonus... of course blowing it all on this meant I had to go back to work, so I hardly get the time to enjoy it.@@" <<He npc_landlord>> sighs and shakes <<his npc_landlord>> head. "@@.npc_landlord;As one of my French comrades always said, c'est la vie, c'est la guerre. Come, let us enjoy our lunch.@@"<br>
<br>
<<He npc_landlord>> lays out a blanket and helps you take a seat, unpacking a simple spread of sides, sandwiches and cold cerveza. As delicious as breakfast was, it was quite some time ago, and between your cleaning and <<him npc_landlord>> chopping wood the two of you have worked up quite an appetite. You dig in eagerly, cuddling up against <<him npc_landlord>> as you nosh your way through the meal and then enjoy some time just lying together in the sun.<br>
<br>
<<if !$player.virgin.vaginal && !$player.virgin.anal>>
[<<moveTo "event_landlord_weekend_12" "Lay next to <<him npc_landlord>> and enjoy an afternoon nap in the sun." 10800 "<<set $scene.afternoonSex=false>>">>]
<<else>>
[<<moveTo "event_landlord_weekend_12" "Gently massage <<his npc_landlord>> crotch and ask if <<hes npc_landlord>> interested in dessert..." 10800 "<<set $scene.afternoonSex=true>>">>]<br>
[<<moveTo "event_landlord_weekend_12" "Just lay next to <<him npc_landlord>> and enjoy an afternoon nap in the sun." 10800 "<<set $scene.afternoonSex=false>>">>]
<</if>>
</div>/*#
#desc: landlord weekend morning - sex after lunch
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.afternoonSex>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.afternoonSex>>
You and <<=setup.getNpcName("npc_landlord","first")>> enjoy a slow, but passionate love-making under the sun. Even after everything else you've done, and knowing that there isn't another human soul for miles, you still get a weird thrill fucking in broad daylight. But, as you ride your <<man npc_landlord>>, feeling <<him npc_landlord>> thrust up into you, <<his npc_landlord>> <<if !$npc_landlord.fem>>strong, but to you always <</if>>tender hands on your body... well, it's just perfect, a moment you never could have imagined back when you saw <<him npc_landlord>> as the <<if $npc_landlord.fem>>woman<<else>><<guy npc_landlord>><</if>> who picked up rent from your now ex, but now... well you will never forget it.<br>
<br>
Too soon, and yet at the perfect time, the two of you cum, holding each other tight as your moans of ecstasy echo through the forest. Cuddling for some time as the afterglow lingers you finally pack up and <<he npc_landlord>> leads the way a little further down past the clearing to a small creek.
<<else>>
You cuddle up against <<=setup.getNpcName("npc_landlord","first")>>, enjoying <<his npc_landlord>> warmth, the rhythmic rise and fall of <<his npc_landlord>> chest, the scent of <<his npc_landlord>> sweat, <<his npc_landlord>> arm around your shoulder as the two of you just relax and appreciate the clean air and the gentle sounds of nature. Hovering in a happy midpoint between nap and consciousness you aren't sure how much time passes before <<=setup.getNpcName("npc_landlord","first")>> nudges you awake and notes that it's time to head back.<br>
<br>
You smile, taking <<his npc_landlord>> hand as <<he npc_landlord>> helps you to your feet, the two of you gathering your things and taking a leisurely walk a little further down past the clearing to a small creek.
<</if>>
With a smile <<he npc_landlord>> reveals a small cache of fishing supplies, the two of you whiling away the afternoon. <<Hes npc_landlord>> the only one who catches any fish, but you don't really care. After all, you've caught <<if $npc_landlord.fem>>HER<<else>>HIM<</if>>.<br>
<br>
With enough trout for dinner the two of you finally head back to the cabin.<br>
<br>
[<<moveTo "event_landlord_weekend_13" "Continue." 3600>>]
</div>/*#
#desc: landlord weekend morning - afternoon choice: dinner prep or bound
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You return to the cabin and — only after <<hes npc_landlord>> taking off <<his npc_landlord>> boots, manage to convince <<him npc_landlord>> to step on your perfectly polished floors. <<He npc_landlord>> takes a few minutes to marvel at the rest of your work before <<he npc_landlord>> puts the fish in the sink and then turns to you with a smile.<br>
<br>
"@@.npc_landlord;So... I need to get things cleaned and prep the rest of dinner, but I no want you to feel neglected... so I give you a choice. I know you like those kinky things, so either I can tie you up so you no get bored while I work, or you can help me out in the kitchen, be my cute sous chef maid.@@"<br>
<br>
[<<moveTo "event_landlord_weekend_14" "Getting tied up sounds just great..." 7200 "<<set $scene.bound=true>>">>]<br>
<<if setup.getTotalValue("bondage") > 15>>
[@@.link_locked;Turn down a bondage opportunity? Nope!@@]
<<else>>
[<<moveTo "event_landlord_weekend_14" "You'd prefer to be free to help." 7200 "<<set $scene.bound=false>>">>]
<</if>>
</div>/*#
#desc: landlord weekend morning - evening: help with dinner prep
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bound>>
<<set $npc_landlord.flags.weekend.bound = true>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<removeItem "sissy_dress_black" true>>
<<addItem 'rope_harness'>>
<<wearItem 'rope_harness' true>>
<<else>>
<<set $npc_landlord.flags.weekend.prep = true>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.bound>>
You bite your lip and reply that you probably need to be tied up lest you "@@.pc;get into trouble.@@"<br>
<br>
"@@.npc_landlord;Trouble? A sweet thing like you?@@" <<He npc_landlord>> smiles as you bite your lip and blink innocently. After insisting that you remove your dress "@@.npc_landlord;So that it no get wrinkled.@@" <<=setup.getNpcName("npc_landlord","first")>> sets to work with surprising efficiency. A few hanks of rope later and you are trussed up and dangling from a rafter in a full suspended hogtie — even your head bound with ropes entwined through your hair. <<=setup.getNpcName("npc_landlord","first")>> smiles up at you and winks. "@@.npc_landlord;There — that should keep you out of mischief, and give you a nice view! While I attend to dinner.@@"<br>
<br>
You grin gleefully, stretching against your bonds as you look down and watch <<him npc_landlord>> set to work.
<<else>>
You decline the offer of bondage and instead join <<him npc_landlord>> in chopping vegetables in preparation for dinner. Your methodical efforts pale compared to <<his npc_landlord>> professional level efficiency, but <<he npc_landlord>> just smiles in thanks for the help as the two of you press together in the small kitchen and you follow <<his npc_landlord>> every instruction.
<</if>>
<br><br>
It isn't long before the room is filled with the delicious scene of a paella made with the fresh trout <<he npc_landlord>> caught that afternoon.
<<if $scene.bound>>
As you watch on and your mouth waters, you are far from bored, as <<=setup.getNpcName("npc_landlord","first")>> constantly smiles up at you, tenderly stroking you with <<his npc_landlord>> hand, teasing the odd nipple, or even pulling you in for a quick kiss that leaves you afterwards swaying, and swooning, in your bonds.
<</if>>
<br><br>
In surprisingly little time the meal is ready,
<<if $scene.bound>>
and <<=setup.getNpcName("npc_landlord","first")>> sets
<<else>>
and you set
<</if>>
the kitchen table for dinner.<br>
<br>
[<<moveTo "event_landlord_weekend_15" "Time for another delicious meal." 2700>>]
</div>/*#
#desc: landlord weekend morning - evening: dinner
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bound>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.bound>>
<<=setup.getNpcName("npc_landlord","first")>> reaches for your restraints, but, rather than untie your harness, <<he npc_landlord>> merely lowers you down to eye level, dishing you up a plate that, with your arms tightly tied, you have no way of reaching.<br>
<br>
"@@.pc;It smells so good...@@" You whimper, your tummy growling in support as you sway slightly and try to pitch downwards, as if that could somehow bring your face to the plate.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> smiles, gathering up a small fork-full and bringing it to your mouth. "@@.npc_landlord;Well there's nothing binding your lips or tongue.@@" You open your mouth and accept the morsel; it tastes even better than it smelled and you eagerly swallow and look to <<him npc_landlord>> for more.<br>
<br>
Dinner is slowed by <<=setup.getNpcName("npc_landlord","first")>> having to do the work of feeding both of you, but both plates end up completely cleaned. After <<he npc_landlord>> washes the dishes <<he npc_landlord>> spends a few more minutes teasing your swinging, bound form before <<he npc_landlord>> reaches up to finally let you down.
<<else>>
<<=setup.getNpcName("npc_landlord","first")>> holds your chair and you sit down to dinner, inhaling the delicious scents of the plate <<he npc_landlord>> sets before you before digging in to the even more delectable tastes.<br>
<br>
Too distracted by your hunger and the delicious meal you don't say much, instead enjoying the quiet ambiance as you enthusiastically clean your plate and then take care of clearing the table and washing the dishes.
<</if>>
<br><br>
"@@.npc_landlord;Come, it has been long day. Let us have a nice shower to remove the grime of honest work.@@" <<He npc_landlord>> flashes a playful smile. "@@.npc_landlord;The water tank is... not so big, so best if we shower together.@@"<br>
<br>
You grin and wrap an arm around <<his npc_landlord>> waist. You are MORE than happy with that idea.<br>
<br>
[<<moveTo "event_landlord_weekend_16" "Shower time." 900 "<<if $scene.bound>><<removeItem 'rope_harness' true>><<deleteItem 'rope_harness'>><</if>>">>]
</div>/*#
#desc: landlord weekend morning - night 2 - shower
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<include "cleanPlayer">>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
You slide out of your maid outfit, then help peal the sweaty clothes off your <<man npc_landlord>>, before the two of you slide into the small, but sparkling clean, shower.<br>
<br>
Pressed together you wash <<him npc_landlord>> and then <<he npc_landlord>> returns the favour, the two of you finally forced to leap out of the shower when the hot water runs out, the "bracing" switch in temperature disrupting the mood and leaving you to shiver together for a few moments before drying off.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_landlord_weekend_17" "Continue to the bedroom..." 900>>]
<<else>>
<<He npc_landlord>> pauses, <<his npc_landlord>> gaze drifting down your naked body to stop between your legs.<br>
<br>
"@@.npc_landlord;So... I know you lock in chastity, and it looks lovely on you but... if you wish, I can remove for the night?@@"<br>
<br>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_landlord_weekend_16_chastity_1" "Hand <<him npc_landlord>> your key." 180 "<<set $scene.removeChastity=true>>">>]<br>
<<else>>
[<<moveTo "event_landlord_weekend_16_chastity_1" "Explain you don't have the key..." 180 "<<set $scene.removeChastity=true>>">>]<br>
<</if>>
[<<moveTo "event_landlord_weekend_16_chastity_1" "You prefer remaining locked." 180 "<<set $scene.removeChastity=false>>">>]
<</if>>
</div>/*#
#desc: landlord weekend morning - night 2 - shower
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeChastity>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
You hand <<=setup.getNpcName("npc_landlord","first")>> the key and <<he npc_landlord>> unlocks you with a smile, sharing a kiss as <<he npc_landlord>> delicately removes your <<if $scene.isCage>>cage<<else>>belt<</if>> and places it to one side as the two of you slide into the bed, naked and wrapped in one another's arms...<br>
<br>
[<<moveTo "event_landlord_weekend_17" "Continue." 300 "<<set $scene.cage = setup.getItemFromType('cage')>><<removeItem $scene.cage true>>">>]
<<else>>
You point out that you're locked and do not have the key but <<=setup.getNpcName("npc_landlord","first")>> just smiles.
<<if $scene.chastityLevel == 5>>
"@@.npc_landlord;That thing? Certainly it secure, but out here, well, we far off the grid, and the encryption it employs, well... I originally train in signal processing and it not so impressive compared to some of what I dealt with during the war.@@"
<<elseif $scene.chastityLevel == 4>>
"@@.npc_landlord;That thing? Sure it LOOKS impressive but it is how you say... the security theatre. I may be rusty but I remember a few things from my training, device like thas, she be no trouble at all.@@"
<<else>>
"@@.npc_landlord;<<callPlayer "npc_landlord">>! Do you know how often someone calls me after locking keys in their flat? Device like that... she is no trouble at all.@@"
<</if>>
<br><br>
[<<moveTo "event_landlord_weekend_16_chastity_2" "Accept <<his npc_landlord>> offer." 600>>]<br>
[<<moveTo "event_landlord_weekend_16_chastity_1" "You prefer remaining locked." 180 "<<set $scene.removeChastity=false>>">>]
<</if>>
<<else>>
You thank <<him npc_landlord>> for the offer but explain that it comforts you to remain securely locked.<br>
<br>
<<He npc_landlord>> smiles. "@@.npc_landlord;Well whatever brings mi <<callPlayer "npc_landlord">> comfort is surely my desire as well.@@"<br>
<br>
<<He npc_landlord>> offers you <<his npc_landlord>> hand and leads you to the bedroom.<br>
<br>
[<<moveTo "event_landlord_weekend_17" "Continue." 300>>]
<</if>>
</div>/*#
#desc: landlord weekend morning - night 2 - shower
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeChastity>>
<<set $scene.chastityLevel = setup.getChastityLevel()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<removeItem $scene.cage true>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
You nod and <<=setup.getNpcName("npc_landlord","first")>> smiles, having you lay back on the bed as <<he npc_landlord>> fetches
<<if $scene.chastityLevel == 5>>
some sort of high-tech looking control pad. It takes a few minutes of fiddling but you gasp as your <<if $scene.isCage>>cage<<else>>belt<</if>> peels back to reveal <<if $player.body_ref.penis && $player.body_ref.vagina>><<getWordMyPenis false>> and <<getWordVagina>>...<<elseif $player.body_ref.penis>><<getWordMyPenis false>><<else>><<getWordVagina $player false>><</if>>... <<he npc_landlord>>
<<elseif $scene.chastityLevel == 4>>
a small radio device. A bit of tuning and there is a click as your <<if $scene.isCage>>cage<<else>>belt<</if>> opens. Very carefully <<he npc_landlord>> places it on the nightstand and then <<he npc_landlord>>
<<else>>
a set of lockpicks. In a startlingly short time there is a click and your <<if $scene.isCage>>cage<<else>>belt<</if>> opens. Very carefully <<he npc_landlord>> places it on the nightstand and then <<he npc_landlord>>
<</if>>
crawls forward onto the bed, the two of you naked and wrapped in one another's arms...<br>
<br>
[<<moveTo "event_landlord_weekend_17" "Continue." 60>>]
</div>/*#
#desc: landlord weekend morning - night 2 - sex intro
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
Wrapped together you moan softly as <<=ps(setup.getNpcName("npc_landlord","first"))>> lips and hands move across your body. Strong, but tender, <<he npc_landlord>> caressess you with lips and fingers, kissing and whispering as <<he npc_landlord>> traces your ribs,<<if $player.body.breastsize[0]>> around your breasts, <</if>>sucks your nipples for a few moments and then moves up your neck before meeting <<his npc_landlord>> lips to your own.<<if !$npc_landlord.fem>> His trimmed beard brushes your smooth face as you melt.<</if>><br>
<br>
"@@.npc_landlord;So, my <<if $npc_landlord.flags.love>>love<<else>>lovely<</if>>,@@" <<he npc_landlord>> whispers, following up with a kiss behind the ear that makes you tremble. "@@.npc_landlord;How would you like to do it tonight...@@"<br>
<br>
<<if !setup.checkItemTypeWorn("cage") || $scene.removeChastity>>
<<if $player.body_ref.penis>>
[<<moveTo "event_landlord_weekend_18" "You want to do <<him npc_landlord>>." 1800 "<<set $scene.sex='penis'>>">>]<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_landlord_weekend_18" "Guide <<him npc_landlord>> into your <<getWordVagina>>." 1800 "<<set $scene.sex='vagina'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_landlord_weekend_18" "Turn around and present your rear." 1800 "<<set $scene.sex='anal'>>">>]<br>
[<<moveTo "event_landlord_weekend_18" "You're tired and just want to cuddle and sleep." 1800 "<<set $scene.sex='none'>>">>]
</div>/*#
#desc: landlord weekend morning - night 2 - sex
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.sex>>
<<case 'penis'>>
<<set $npc_landlord.flags.weekend.penis = true>>
<<playerOrgasm>>
<<if $npc_landlord.fem>>
<<set $scene.virginPenis = !$player.virgin.penis>>
<<if $scene.virginPenis>>
<<set $player.virgin.penis = "npc_landlord">>
<</if>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$npc_landlord.fem>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_admin.fem>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<</if>>
<<set $scene.virgin = !$player.virgin.top_fem>>
<<if $scene.virgin>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_landlord">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_virgin'
0
'theme_church_confession_virgin'
true
>>
<</if>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "npc_landlord">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<</if>>
<<else>>
<<set $scene.virginTopMale = !$player.virgin.top_male>>
<<if $scene.virginTopMale>>
<<set $player.virgin.top_male = "npc_landlord">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_sodomy'
0
'theme_church_confession_sodomy'
true
>>
<</if>>
<</if>>
<<case 'vagina'>>
<<set $npc_landlord.flags.weekend.vag = true>>
<<playerOrgasm>>
<<case 'anal'>>
<<set $npc_landlord.flags.weekend.anal = true>>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_landlord.penis_size 'very' $SEEN_FRIEND>>
<<case 'none'>>
<</switch>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.sex>>
<<case 'penis'>>
In between kisses you softly ask if you can do <<him npc_landlord>>?<br>
<br>
"@@.npc_landlord;Si, <<callPlayer "npc_landlord">>,@@" <<he npc_landlord>> replies. "@@.npc_landlord;Of course...@@"<br>
<br>
<<He npc_landlord>> slides down to softly suck on your <<getWordMyPenis>> — working long enough to have you hard, horny, and slick with saliva before <<he npc_landlord>> leans back and pulls you on top of <<him npc_landlord>> and raises <<his npc_landlord>> hips.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Your small member nestles between <<his npc_landlord>> cheeks more than it penetrates <<him npc_landlord>>, but the two of you moan in pleasure alike, <<his npc_landlord>> arms pulling you close as <<he npc_landlord>> kisses you and whispers "@@.npc_landlord;<<callPlayer "npc_landlord">>...@@" until your bodies shudder, pulling together tighter as you cum in unison.
<<case 2 3>>
<<He npc_landlord>> gasps softly as you slide into <<him npc_landlord>> from behind. You wait a moment, but hearing no sounds of pain, and feeling <<him npc_landlord>> start to flex encouragingly, you start to thrust, <<his npc_landlord>> arms pulling you close as <<he npc_landlord>> kisses you and whispers "@@.npc_landlord;<<callPlayer "npc_landlord">>...@@" until your bodies shudder, pulling together tighter as you cum in unison.
<<case 4 5>>
<<He npc_landlord>> moans softly as you slide into <<his npc_landlord>> rear. You're a little surprised at how easily <<he npc_landlord>> accepted your not-exactly-petite member but such concerns are soon forgotten as <<he npc_landlord>> pulls you close and you reflexively thrust. "@@.npc_landlord;<<callPlayer "npc_landlord">>...@@" <<He npc_landlord>> whispers in your ear, the pace hastening until your bodies shudder, pulling together tighter as you cum in unison.
<<case 6>>
To your slight astonishment <<he npc_landlord>> manages to take your
<<if $player.body_ref.knot && $player.body_ref.horsecock>>
fantastic cock clear to the root, shuddering slightly as your knot pops into place before pulling you in close.
<<elseif $player.body_ref.knot>>
massive cock; shuddering slightly as your knot pops into place before pulling you in close.
<<elseif $player.body_ref.horsecock>>
massive horse-cock without complaint, and you bottom out with your hips pressed against <<his npc_landlord>> own as <<he npc_landlord>> pulls you close.
<<else>>
massive cock without complaint, and you bottom out with your hips pressed against <<his npc_landlord>> own as <<he npc_landlord>> pulls you close.
<</if>>
<br><br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>...@@" <<he npc_landlord>> moans "@@.npc_landlord;For such a sweet little thing... you so big...@@"<br>
<br>
As <<he npc_landlord>> talks you feel <<his npc_landlord>> ass clench around you — it feels amazing and you find yourself unable to form words, instead just going along with things as <<he npc_landlord>> does the work of shifting you back and forth, tight, titanic pleasure building and building until the both of you cry out in simultaneous orgasm.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
You lay atop <<him npc_landlord>> for a moment, trying to catch your breath until <<he npc_landlord>> gently helps you off and hands you a towel. Only then does something resembling reflex kick in as you hurry to clean up and then slide back in for a cuddle.
<<case 'vagina'>>
Your lips meet as you reach down and guide <<him npc_landlord>> into your <<getWordVagina>>.<br>
<br>
"@@.npc_landlord;You feel perfect, <<callPlayer "npc_landlord">>,@@" <<he npc_landlord>> moans softly as <<he npc_landlord>> begins to thrust, kissing you passionately as <<he npc_landlord>> fucks you gently, but with timing and technique born of a lifetime of skill.<br>
<br>
You lose track of orgasms, the way <<he npc_landlord>> wields <<his npc_landlord>> <<getWordPenis "npc_landlord">> utter perfection; especially combined with the brush of <<his npc_landlord>> lips, <<his npc_landlord>> hands... you try to focus on making it good for <<him npc_landlord>>... and you do feel <<him npc_landlord>> cum eventually, but the balance of pleasure at the end is beyond one-sided as you sink into <<his npc_landlord>> arms, utterly satisfied.
<<case 'anal'>>
You turn around and grind your ass against <<=setup.getNpcName("npc_landlord","first")>>, your unspoken request quickly responded to as <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>><<he npc_landlord>> slides the plug out of your rear and replaces it with <<his npc_landlord>> hard <<getWordPenis "npc_landlord">><<else>><<his npc_landlord>> <<getWordPenis "npc_landlord">> enters you with ease<</if>>.<br>
<br>
You moan and crane your neck to reach back to kiss <<him npc_landlord>> as <<he npc_landlord>> gently fucks you, each thrust sending waves of pleasure through your body until, with the timing of a true master, <<he npc_landlord>> has you cum in unison.<br>
<br>
Still huddled together you stay that way until <<he npc_landlord>> eventually softens and withdraws, the afterglow lingering as you start to feel drowsy and ready to sleep.
<<case 'none'>>
You reply that you're too tired for anything too "exciting." <br>
<br>
<<=setup.getNpcName('npc_landlord', 'first')>> kisses you and smiles. "@@.npc_landlord;Si, today... muy active, plus, the altitude.@@"<br>
<br>
You nod, glad that you're on the same page as to getting some sleep.
<<default>>
ERROR: unexpected scene.sex <<=$scene.sex>>
<</switch>>
<br><br>
<<if $scene.lingerie>>
[<<moveTo "event_landlord_weekend_19" "Change into your special maid lingerie and fall asleep in <<his npc_landlord>> arms." 1800>>]
<<else>>
[<<moveTo "event_landlord_weekend_19" "Fall asleep in <<his npc_landlord>> arms." 1800>>]
<</if>>
</div>/*#
#desc: landlord weekend morning - night 2 - sleep
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lingerie>>
<<wearItemSet 'maid_lingerie'>>
<</if>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.lingerie>>
You slide out of bed just long enough to change into your cutie maid lingerie before you nuzzle back into
<<else>>
You nuzzle into
<</if>>
<<=ps(setup.getNpcName('npc_landlord', 'first'))>> arms and fall asleep.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_landlord_weekend_20" "Sleep." _timeToMorning>>]
</div>/*#
#desc: landlord weekend morning - morning - wake
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
You wake up to find <<=setup.getNpcName('npc_landlord', 'first')>> still softly snoring next to you. You grin, mind spinning with possibility...<br>
<br>
[<<moveTo "event_landlord_weekend_21" "Wake <<him npc_landlord>> up with your mouth." 600 "<<set $scene.breakfast=false>>">>]<br>
[<<moveTo "event_landlord_weekend_21" "Slip quietly out of bed and make <<if $npc_landlord.fem>>HER<<else>>HIM<</if>> breakfast." 1800 "<<set $scene.breakfast=true>>">>]
</div>/*#
#desc: landlord weekend morning - morning breakfast + collar offer
#status: RELEASED 0.8.4.0
#ignore_spell: fantastico
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.breakfast>>
<<set $npc_landlord.flags.weekend.breakfast = true>>
<<addItem 'full_apron_2'>>
<<wearItem 'full_apron_2' true>>
<<else>>
<<set $npc_landlord.flags.weekend.oral = true>>
<<applyExperience 'oral' $npc_landlord.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 14 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.breakfast>>
Careful not to disturb your <<boy npc_landlord>>friend you slip out of the bed and head for the kitchen. Fresh supplies are running low with this being your last day at the cabin, but you manage to knock together a nice breakfast and are just starting the oven when you look over to see <<=setup.getNpcName("npc_landlord","first")>> standing in the doorway holding an apron.<br>
<br>
"@@.npc_landlord;You so thoughtful, <<callPlayer "npc_landlord">>,@@" <<he npc_landlord>> states in greeting before walking over to give you a good-morning kiss. "@@.npc_landlord;But you should have protection before you cook — we no want to burn that beautiful skin.@@"<br>
<br>
You smile back as <<he npc_landlord>> ties the apron around your body — it isn't exactly flattering from the front, but you enjoy wiggling your butt in <<his npc_landlord>> direction as you go about finishing breakfast preparations.
<<else>>
You scamper across the bed to find your "prize" resting between <<his npc_landlord>> legs. A few gentle licks is all it takes to rouse it to consciousness, and you suck happily as <<=setup.getNpcName("npc_landlord","first")>> slowly stirs.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>? Oh, you no have to—@@" <<He npc_landlord>> apologetically starts, but you cut <<him npc_landlord>> by narrowing your eyes with a playful glare as you suck even louder.<br>
<br>
"@@.npc_landlord;Oh <<callPlayer "npc_landlord">>...@@" <<he npc_landlord>> moans, <<his npc_landlord>> head tilting back as<<if $fetish.cum>>, moments later, <<he npc_landlord>> cums to your slurping delight. You keep sucking until <<hes npc_landlord>> soft and dry, theatrically licking your lips and smiling over your breakfast.<<else>> <<he npc_landlord>> pulls away, cumming into a towel and then blushing as <<he npc_landlord>> catches <<his npc_landlord>> breath, "@@.npc_landlord;sorry I no warn but... there no time.@@"<</if>><br>
<br>
<<He npc_landlord>> takes a moment to catch <<his npc_landlord>> breath, and then <<hes npc_landlord>> leading the way to the kitchen, where <<he npc_landlord>> throws together a simple, but deliciously-smelling, breakfast<<if $fetish.cum>>... well, second breakfast, for you<</if>>.
<</if>>
<br><br>
The two of you sit down at the kitchen table to feed each other a playful breakfast. At the end of it — as you're fulfilling your maid duty and taking care of the dishes, <<he npc_landlord>> comes up behind you, <<his npc_landlord>> arms wrapping around as <<he npc_landlord>> kisses you on the neck and whispers in your ear.<br>
<br>
<<if $npc_landlord.flags.mention_collar && $player.flags.collar.owner == "">>
"@@.npc_landlord;So, <<callPlayer "npc_landlord">> — you mention before that you wanted to be my slave... well you have made quite the performance this weekend and, if you are still interested... I made a collar for you.@@"<br>
<br>
Your heart skips a beat at <<his npc_landlord>> offer.<br>
<br>
[<<moveTo "event_landlord_weekend_22_collar_1" "Yes, <<Master npc_landlord>>." 600 "<<set $scene.collar=true>>">>]<br>
[<<moveTo "event_landlord_weekend_22_collar_1" "You aren't ready." 600 "<<set $scene.collar=false>>">>]
<<else>>
"@@.npc_landlord;Thank you, <<callPlayer "npc_landlord">> for this muy fantastico weekend... you have been such a perfect delight, I wish we could stay here forever... alas, I must get back to the building, and you have work tomorrow, too. Come, get dressed while I pack the truck and close things up.@@"<br>
<br>
You give <<him npc_landlord>> another kiss and finish drying the dishes before putting the apron back on its hook and darting back to the bedroom to change.<br>
<br>
[<<moveTo "event_landlord_weekend_23" "Get changed to go." 60 "<<if $scene.breakfast>><<removeItem 'full_apron_2' true>><</if>>">>]
<</if>>
</div>/*#
#desc: landlord weekend morning - collaring
#status: RELEASED 0.8.4.0
#*/
<<if $scene.collar>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.breakfast>>
<<removeItem 'full_apron_2' true>>
<</if>>
<<set $scene.choker = setup.getItemFromType('choker')>>
<<if $scene.choker != "">>
<<removeItem $scene.choker true>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.collar>>
You whisper a soft "@@.pc;Yes...@@" and <<=setup.getNpcName("npc_landlord","first")>> gives you a kiss on the back of the neck that almost sends you to your knees.<br>
<br>
"@@.npc_landlord;Get changed and meet me in the living room once you done cleaning.@@"<br>
<br>
<<He npc_landlord>> slides away and you finish up the dishes — not rushing, of course as doing anything less than your best would make you a bad slave. There wasn't much left, fortunately, and you dry things off, hang up the apron and head for the bedroom to get changed.<br>
<br>
<<if $scene.choker>>
First removing your <<=setup.getItemName($scene.choker)>> you consider how to dress to become <<=ps(setup.getNpcName("npc_landlord","first"))>> collared maid...<br>
<br>
<</if>>
<<if setup.checkVisibleClothingTag('maid') > 60 && setup.checkPlayerDressed() && !setup.checkItemTypeWorn("choker")>>
[<<moveTo "event_landlord_weekend_22_collar_2" "Head out in your maid finery." 600 "<<set $player.cutscene.lockinventory=true>>">>]
<<elseif setup.checkPlayerDressed()>>
[@@.link_locked;I need to be dressed like a maid!@@]
<<elseif setup.checkItemTypeWorn("choker")>>
[@@.link_locked;I'm about to be collared, I need a clear neck!@@]
<<else>>
[@@.link_locked;I may look like a maid, but I'm not really dressed...@@]
<</if>>
<<else>>
You softly reply that you aren't quite ready to accept a collar. <<=setup.getNpcName("npc_landlord","first")>> kisses you on the neck. "@@.npc_landlord;Si, <<callPlayer "npc_landlord">>. Well... we better get ready to leave. I go pack the truck while you get changed.@@"<br>
<br>
<<He npc_landlord>> slips away. You hang up the apron and head for the bedroom to change for the drive home.<br>
<br>
[<<moveTo "event_landlord_weekend_23" "Get changed to go." 60>>]
<</if>>
</div>/*#
#desc: landlord weekend morning - collaring
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'collar_landlord'>>
<<wearItem 'collar_landlord' true>>
<<setThreshold 'submission' 'collar_submission' 'voluntary'>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_STRANGER>>
<<if $player.sec_style.submission.collar == "">>
<<set $player.sec_style.submission.collar = "voluntary">>
<</if>>
<<set $player.flags.collar.owner = 'npc_landlord'>>
<<set $player.flags.collar.collarId = 'collar_landlord'>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_21'
15
'event_psychiatrist_landlord_date_collar_1'
false
>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> stands across the room and beckons you forward. Your heart races. <<He npc_landlord>> is adopting none of the accoutrement of authority — no leather pants or studded outfit, at most the glint of <<his npc_landlord>> artificial eye... and yet <<he npc_landlord>> instantly commands the room, a slight nod enough to have you eagerly dropping to your knees and presenting your throat.<br>
<br>
"@@.pc;<<Master npc_landlord>>...@@" You whisper as you look up at <<him npc_landlord>>.<br>
<br>
There is the faintest trace of a smile as <<he npc_landlord>> strokes your cheek with <<his npc_landlord>> good hand. "@@.npc_landlord;Not yet, <<callPlayer "npc_landlord">>@@" <<he npc_landlord>> states before revealing a collar, a simple, but beautifully gilded collar that you somehow known instantly that <<he npc_landlord>> made <<him npc_landlord>>self.<br>
<br>
You gasp, able to tell in an instant that <<he npc_landlord>> made it <<himself npc_landlord>>, that the gorgeous thing that is soon to be locked around your throat was crafted by hand... for you.<br>
<br>
"@@.pc;Please...@@" you mouth and <<he npc_landlord>> nods.<br>
<br>
"@@.npc_landlord;As you wish.@@" <<He npc_landlord>> replies before wrapping it around your neck and closing the lock.<br>
<br>
Your heart skips a beat, and then <<he npc_landlord>> is drawing you to your feet, a finger through the collar pulling you up to meet <<him npc_landlord>>, <<his npc_landlord>> lips meeting yours, sealing <<his npc_landlord>> claim, making you go almost limp, but safe and supported in <<his npc_landlord>> arms. You wish you could hold the kiss forever, but slave or no, you do need to breath.<br>
<br>
When you finally separate you look up at <<him npc_landlord>> with new eyes. <<He npc_landlord>> smiles. "@@.npc_landlord;Come, my beautiful <<callPlayer "npc_landlord">>, we need to get home.@@"<br>
<br>
You nod, replying a soft "@@.pc;Yes, <<Master npc_landlord>>,@@" as you follow <<him npc_landlord>> to <<his npc_landlord>> truck.<br>
<br>
<<if $scene.removeChastity>>
[<<moveTo "event_landlord_weekend_24_chastity" "Continue." 600>>]
<<else>>
[<<moveTo "event_landlord_weekend_24" "Continue." 600>>]
<</if>>
</div>/*#
#desc: landlord weekend morning - change to head home
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You head back to the bedroom, <<if $scene.collar>>spending a few minutes just staring in awe at your new collar,<</if>> and consider what to wear.<br>
<br>
<<printThought "After such a nice weekend... I really want to draw it out and stay <<his npc_landlord>> perfect maid for the drive home.">><br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60 && setup.checkPlayerDressed()>>
<<if $scene.removeChastity>>
[<<moveTo "event_landlord_weekend_24_chastity" "Head out to the truck." 600 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo "event_landlord_weekend_24" "Head out to the truck." 18000 "<<set $player.cutscene.lockinventory=true>>">>]
<</if>>
<<elseif setup.checkPlayerDressed()>>
[@@.link_locked;I need to be dressed like a maid!@@]
<<else>>
[@@.link_locked;I may look like a maid, but I'm not really dressed...@@]
<</if>>
</div>/*#
#desc: landlord weekend morning - replace chastity
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeChastity>>
<<wearItem $scene.cage true>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_cabin.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You are about to leave the cabin when you remember your chastity device, rushing back to the bedroom to fetch things from the nightstand.<br>
<br>
<<if $scene.collar>>
Like a good slave, you present it to <<=setup.getNpcName("npc_landlord","first")>> who locks it back in place with a gentle touch, and an even gentler smile.
<<else>>
You
<<if $scene.chastityLevel == 5 || $scene.chastityLevel == 4>>
request <<his npc_landlord>> help to get locked back up in your high-tech chastity device, and are soon secured in your private prison as <<he npc_landlord>> double checks the lock with a comforting smile.
<<else>>
<<if setup.isCage()>>stuff yourself back in your cage<<else>>pull your belt around your waist<</if>>, imprisoning yourself once again and then locking everything closed as <<=setup.getNpcName("npc_landlord","first")>> observes your efforts with a comforting smile.
<</if>>
<</if>>
<br><br>
"@@.npc_landlord;We would not wish you to get in trouble,@@" <<he npc_landlord>> states as <<he npc_landlord>> tests the lock.<br>
<br>
You nod. "@@.pc;No, <<if $scene.collar>><<Master npc_landlord>><<else>><<Sir npc_landlord>><</if>>.@@" You reply.<br>
<br>
<<He npc_landlord>> takes you by the hand and leads you out to <<his npc_landlord>> truck, locking the lovely little cabin behind.<br>
<br>
[<<moveTo "event_landlord_weekend_24" "Continue." 18000>>]
</div>/*#
#desc: landlord weekend morning - drive home
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_landlord.stage < 6>>
<<set $npc_landlord.stage = 6>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_18'
15
'event_psychiatrist_landlord_date_cabin_1'
false
>>
<</if>>
<<if $scene.road_head>>
<<applyExperience 'oral' $npc_landlord.penis_size 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<include "checkAdminAndLandlord">>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Truck">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_truck.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> helps you up into <<his npc_landlord>> truck for the ride home.<br>
<br>
<<if $scene.road_head>>
Once again<<if $scene.collar>>, like a good slave<</if>> you spend a large chunk of the journey with your head in <<his npc_landlord>> lap, enjoying the occasional <<if setup.getTotalValue("cum") > 10>>tasty<<else>>salty<</if>> treat, but mostly just softly sucking and enjoying yourself. Once you are startled by the loud air-horn of a passing trailer as you realise that their angle was such to see into the vehicle... and they were expressing their regards for <<=ps(setup.getNpcName("npc_landlord","first"))>> fortune in having such a helpful maid.<br>
<br>
Aside from your oral activities the
<<else>>
The
<</if>>
trip home goes quickly, and uneventfully, the truck chewing away at the kilometers until you hit the even-on-Sunday traffic of the city.<br>
<br>
Parking in <<his npc_landlord>> private space <<=setup.getNpcName("npc_landlord","first")>> escorts you back to your flat giving you a
<<if $scene.collar>>
thrill by pulling you in by your collar for a
<</if>>
parting kiss before <<he npc_landlord>> heads off to see what part of the building has started to fall apart while <<he npc_landlord>> was away.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: talk to landlord at maidcafe
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You sit chatting with <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<if State.hasPlayed("event_guard_retention_mission_5") || State.hasPlayed("event_landlord_retention_mission_7")>>
[@@.link_locked;You have already dealt with <<=setup.getNpcName("npc_retention","formal")>>.@@]<br>
<<elseif State.hasPlayed("event_landlord_retention_mission_ask_1")>>
[@@.link_locked;You already asked for help with <<=setup.getNpcName("npc_retention","formal")>>.@@]<br>
<<elseif State.hasPlayed("theme_ai_retention_mission_1")>>
[<<moveTo "event_landlord_retention_mission_ask_1" 'Ask for help with <<=setup.getNpcName("npc_retention","formal")>>.' 120 "<<set $scene.return = 'event_landlord_maidcafe_talk_1'>>">>]<br>
<</if>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4 && State.hasPlayed("theme_ai_admin_first_1")>>
[<<moveTo 'event_admin_stage5_recruit_landlord_1' 'Ask <<him npc_landlord>> for help with <<=setup.getNpcName("npc_admin","first")>>.' 300 "<<set $scene.return='event_landlord_maidcafe_talk_1'>>">>]<br>
<</if>>
<<if $npc_barista.stage == 5 && $npc_barista.flags.location == "">>
[<<moveTo 'event_landlord_help_barista_1' 'Ask <<him npc_landlord>> about a place for the work you need to deprogram <<=setup.getNpcName("npc_barista","nickname")>>.' 300 "<<set $scene.return='event_landlord_maidcafe_talk_1'>>">>]<br>
<</if>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4 && State.hasPlayed("theme_ai_admin_first_1")>>
<<if State.hasPlayed("event_admin_stage5_recruit_landlord_1")>>
[@@.link_locked;You already asked for help with <<=setup.getNpcName("npc_admin","first")>>, now you just need to call <<=setup.getNpcName("npc_landlord","first")>> at the correct time and place...@@]<br>
<<else>>
[<<moveTo 'event_admin_stage5_recruit_landlord_1' 'Ask <<him npc_landlord>> for help with <<=setup.getNpcName("npc_admin","first")>>.' 300 "<<set $scene.return='event_landlord_maidcafe_talk_1'>>">>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_tournament_13") && !$npc_retention.flags.cybernetic && !State.hasPlayed("event_tournament_win_1")>>
<<if State.hasPlayed("event_tournament_tip_1")>>
[@@.link_locked;<<=setup.getNpcName("npc_landlord","first")>> already tipped you off for dealing with <<=setup.getNpcName("npc_retention","formal")>> in the martial arts tournament.@@]<br>
<<else>>
[<<moveTo 'event_tournament_tip_1' 'Tell him about the martial arts contest you were competing in.' 300 "<<set $scene.return='event_landlord_maidcafe_talk_1'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "room_mall_cafe" 'Stand up.' 120>>]
</div>/*#
#desc: landlord bumps into you/catches you from falling as you arrive home, tells you he fixed the washing machine
#status: FINISHED 0.4.0.0
#ignore_spell: convencer,agotado,tardes
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.reactName = $player.sec_style.body.name != "" && !$npc_landlord.flags.reactnamechange>>
<<set $npc_landlord.flags.reactnamechange = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
Getting home later that evening, you still have many strange thoughts about what happened today. Your "disciplinary measure." On one hand it was painful and you hated every second of it, but on the other hand... you kind of liked it.<br>
<br>
<<printThought "Am I turning into some kind of pervert? No, I'm pretty sure it's simply the stress building up...">><br>
<br>
You are so caught up in your thoughts that you bump into a person leaving your flat. Startled about the sudden impact, you lose your balance and start falling. You're already bracing to hit the floor when <<if $npc_landlord.fem>>a pair of<<else>>two big, strong<</if>> hands catch you while you fall. Turns out, <<=setup.getNpcName('npc_landlord', 'first')>> was just leaving your apartment.<br>
<br>
"@@.npc_landlord;Buenas tardes, <<callPlayer "npc_landlord">>.@@"<br>
<br>
You hang in <<his npc_landlord>> hands, unsure what to do. Both of you realise you're just standing in the hallway looking like you've just ended a long, hot session of tango, when you hear your elderly neighbor clearing her throat, to signal both of you that she wants to pass, since the both of you kind of block the rather small hallway.<br>
<br>
<<printThought "Oh <<getWordGod>>. This is so embarrassing...">><br>
<br>
The awkwardness makes your cheeks turn red. <<=setup.getNpcName('npc_landlord', 'first')>> helps you up and you let the elderly lady pass.<br>
<br>
"@@.npc_landlord;You really should sleep more, <<callPlayer "npc_landlord">>. You still look very agotado... how do you say... depleted. Anyway, I've just finished replacing your washing machine and fixed the tiles which were burned in the fire. Everything should be as good as new, if not better, since your new washing machine is brand new. I've managed to convencer... convince the company which produced the washing machine that it was a production mistake and that you'll refrain from charges if they come up with all additional costs, which they did. So... de nada.@@"<br>
<br>
You don't know what to say. At least one problem less to worry about. You shake <<=ps(setup.getNpcName('npc_landlord', 'first'))>> hand and thank <<him npc_landlord>> and make a mental note to make it up to <<him npc_landlord>> somehow in the near future.<br>
<br>
<<if $scene.reactName>>
<<He npc_landlord>> starts to go and then seems to remember something. "@@.npc_landlord;Oh, one other thing — I get message about your new name, <<=$player.first_name>> <<=$player.last_name>>, yes? Congratulations, is beautiful name, for beautiful girl. I make certain you never see old name in paperwork, si?@@"<br>
<br>
You blush. There's something about hearing your name in <<his npc_landlord>> oh-so-sexy accent that has you feeling even more excited than normal. You thank <<him npc_landlord>> for taking care of things and <<he npc_landlord>> nods.<br>
<br>
"@@.npc_landlord;Of course! It my job, and right thing to do, always a good day when those things perfectly align.@@"<br>
<br>
<<He npc_landlord>> finally leaves.
<</if>>
[<<moveTo "room_foyer" "Enter your apartment." 5>>]
</div>/*#
#desc: landlord comes for first month's rent (phonecall or in person)
#status: FINISHED 0.4.0.0
#ignore_spell: girlfr,aparato,desconfianza
#*/
<<set $scene.first_outside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($scene.beforetasklocation.last(),'home')>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<else>>
<<set $player.inside = false>>
<</if>>
<<include rentEvent>>
/% this is a hacky workaround for this + manager inspection chain triggering due to going to work very early %/
<<if $currentTasks.manager_morning_inspection_task.finished>>
<<set $currentTasks.manager_morning_inspection_task.condition = "">>
<<set $currentTasks.manager_morning_inspection_task.finished = false>>
<</if>>
<<set $scene.workdayInit = false>>
<<include "endPartialShift">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_0'
1
'event_psychiatrist_session_money'
false
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.inPassageTag($scene.beforetasklocation.last(),'home')>>
<<createAdvBGR setup.getBedroomImage()>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
/%<<set _tmpArray = ['room_wake_up','room_bedroom','room_foyer','room_livingroom','room_kitchen','room_room_bedroom_wardrobe_1']>>%/
<<if setup.inPassageTag($scene.beforetasklocation.last(),'home')>>
<<if $player.llocation=="room_bedroom">>
You're awoken by the ring of the bell.
<<else>>
Your door bell is ringing.
<</if>>
Who could it be at this early hour? <<if $player.llocation=="room_bedroom">>You decide to get out of your bed and to check out who the mystery visitor is. <</if>>Taking a look at the screen of your security system you recognise it's <<=setup.getNpcName('npc_landlord', 'first')>>.<br>
<br>
<<printThought "<<=setup.getNpcName('npc_landlord', 'first')>>? At such an early hour? I better check if <<he npc_landlord>> needs anything.">><br>
<br>
[<<moveTo "event_landlord_rent_first_2" 'Open the door.' 30>>]
<<else>>
<<set $scene.first_outside = true>>
Your phone is ringing, but you don't know the number. Someone from within town. You decide to pick up.<br>
<br>
"@@.npc_landlord;Heya, <<callPlayer "npc_landlord">>. <<=setup.getNpcName("npc_landlord","first")>> Al aparato! Hey, listen, I don't think we did any business together, since your girlfr... ex-girlfriend always paid the rent. I have a certain desconfianza... distrust for digital banking and it's nice to see all the resident's from time to time to make sure everything's all right, so I collect the rent by hand every month. I was just at your flat, but you seem to be out. Maybe you got time for a short meeting, before you head off to work? It'll just take a few minutes of your time!@@"<br>
<br>
You agree to hurry home and meet with <<=setup.getNpcName('npc_landlord', 'first')>> at the apartment tower.<br>
<br>
[<<moveTo "event_landlord_rent_first_2" 'Continue.' 600>>]
<</if>>
</div>/*#
#desc: pay first month's rent (return to apartment if triggered by phonecall), offers you "job" cleaning his flat
#status: FINISHED 0.4.0.0
#ignore_spell: alquiler,barato,tardes,momento
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $scene.firstTimeChica = false>>
<<set $scene.longStare = false>>
<<set $scene.first_2_again = false>>
<<set $scene.first_2_rentBonus = 0>>
<<set _theme2 = false>>
<<if setup.checkItemWorn('pyjama')>>
<<setThreshold 'bimbofication' 'wardrobe_malfunction' 'open_door'>>
<<elseif setup.checkNaked()>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<set $player.flags.landlordsawyounaked = true>>
<<setThreshold 'bimbofication' 'wardrobe_malfunction' 'open_door'>>
<<set $scene.longStare = true>>
<<set _theme2 = true>>
<<elseif $player.indecent>50>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<if $player.flags.landlordsawyounaked>>
<<set $scene.first_2_again = true>>
<<else>>
<<setThreshold 'bimbofication' 'wardrobe_malfunction' 'open_door'>>
<</if>>
<<set _theme2 = true>>
<<set $scene.longStare = true>>
<<elseif $player.indecent>10>>
<<applyExperience 'humiliation' 12 'almost' $SEEN_FRIEND>>
<</if>>
<<if setup.checkVisibleClothingTag('female') > 10 && $npc_landlord.call_player != "Chica">>
<<set $npc_landlord.call_player = "Chica">>
<<set $scene.firstTimeChica = true>>
<<set $scene.longStare = true>>
<<set $scene.first_2_rentBonus = 10>>
<<incrementEmotion 'affection' 'npc_landlord' 1>>
<<set _theme2 = true>>
<</if>>
<<set _bra = setup.getItemFromType('bra')>>
<<if setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings') > 0 || (_bra != "" && setup.checkItemVisible(_bra))>>
<<setThreshold 'bimbofication' 'wardrobe_malfunction' 'open_door'>>
<<set $scene.longStare = true>>
<<if (setup.checkVisibleClothingTag('female')>30)>>
<<set $scene.first_2_rentBonus += 10>>
<</if>>
<</if>>
<<if setup.checkVisibleClothingTag('female') > 10 && setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings')>>
<<if !$player.flags.landlordsawyouinfemaleunderwear>>
<<set $player.flags.landlordsawyouinfemaleunderwear=true>>
<<else>>
<<set $scene.first_2_again = true>>
<</if>>
<<elseif setup.checkVisibleClothingTag('female') > 10>>
<<if !$player.flags.landlordsawyouinfemaleclothing>>
<<set $player.flags.landlordsawyouinfemaleclothing=true>>
<<else>>
<<set $scene.first_2_again = true>>
<</if>>
<</if>>
<<set $scene.totalRent = Math.round($player.money.base_rent*((100-$scene.first_2_rentBonus)/100))>>
<<if _theme2>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_5'
5
'event_psychiatrist_session_landlord_2'
false
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_0'
1
'event_psychiatrist_session_money'
false
>>
<<addItem "card_landlord">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set _tmp = setup.checkVisibleClothingTag()>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
<<if $scene.first_outside>>
You enter your apartment building. <<=setup.getNpcName('npc_landlord', 'first')>> is already waiting for you.
<<else>>
You get to your foyer and open the door for <<=setup.getNpcName('npc_landlord', 'first')>>.
<</if>>
<<if $scene.longStare>>
Too late you realise what you're wearing, and stop in mid movement like you're riveted to the spot.<br>
<br>
<<if $player.indecent < 10 && $player.sec_style.clothing == "female">>
<<printThought "Stay calm... this is what I wanted and <<he npc_landlord>> was going to see me dressed en femme eventually...">>
<<elseif $scene.first_2_again || $npc_exgirlfriend.flags.nakedwhiledelivery>>
<<printThought "Again? Really? Am I that absent-minded, that this happens to me AGAIN? AAAHH!">>
<<elseif setup.checkPlayerDecency()>>
<<printThought "I guess <<he npc_landlord>> hasn't really seen me actually dressed like this before...">>
<<else>>
<<printThought "What am I doing... why didn't I cover up before answering the door?!">>
<</if>>
<br><br>
<<if $scene.firstTimeChica>>
"@@.npc_landlord;Buenas dias, Chico. I just wanted to...@@" <<he npc_landlord>> suddenly stops talking. <<His npc_landlord>> gaze slowly wanders down along your body, which makes all chances of this being a bad dream null and void. <<His npc_landlord>> eyes rests for an uncomfortable long time on your exposed body, and you think you see a soft smile to flash over <<his npc_landlord>> lips.<br>
<br>
"@@.npc_landlord;Buenas dias, <<callPlayer "npc_landlord">>. I... I did not know you're into such things. Ahem... looks good on you. Give me un momento to collect my thoughts. I might be able to remember why I came here.@@"<br>
<br>
You can't help it, that comment made your face bright red.<br>
<br>
"@@.npc_landlord;Ah yes. Now I remember.@@"
<<elseif (setup.checkVisibleClothingTag('female')>10)>>
"@@.npc_landlord;Buenas dias, <<callPlayer "npc_landlord">>. I just wanted to...@@" <<he npc_landlord>> suddenly stops talking. <<His npc_landlord>> gaze slowly wanders down along your body, which makes all chances of this being a bad dream null and void. <<His npc_landlord>> eyes rest for an uncomfortably long time on your exposed body, and you think you see a soft smile to flash over <<his npc_landlord>> lips.<br>
<br>
"@@.npc_landlord;Looking muy bonita as usual <<callPlayer "npc_landlord">>.@@"<br>
<br>
You're still not used to this kind of exposure which turns your face bright red again.<br>
<br>
<<elseif setup.checkNaked()>>
"@@.npc_landlord;Buenas dias, <<callPlayer "npc_landlord">>. I just wanted to...@@" <<He npc_landlord>> suddenly stops talking. <<His npc_landlord>> gaze slowly wanders down along your body, which makes all chances of this being a bad dream null and void.<br>
<br>
"@@.npc_landlord;You should really put some clothes on. You might catch a cold. Give me a moment to collect my thoughts, I might be able to remember why I came here.@@"<br>
<br>
You use this short pause to grab a towel.<br>
<br>
"@@.npc_landlord;Ah yes. Now I remember.@@"
<</if>>
<<else>>
<br><br>
"@@.npc_landlord;Buenas dias, <<callPlayer "npc_landlord">>.@@"
<</if>>
<<He npc_landlord>> starts to awkwardly smile then adopts a more serious expression. "@@.npc_landlord;I'm here to collect the alquiler... the rent. So, according to our contract, you owe me <<=$player.money.base_rent>> Credits.@@"<br>
<br>
<<if $player.money.base_rent > ($player.money.total+$player.money.maxcredit)>>
<<printThought "Oh No! This exceeds my credit range by far! I'm broke!">><br>
<br>
<<elseif $player.money.base_rent > $player.money.total>>
<<printThought "Great. In the red again. This is going to be a tough month...">><br>
<br>
<</if>>
<<if $scene.first_2_rentBonus>0>>
"@@.npc_landlord;But...@@" again <<he npc_landlord>> seems to absorb your looks through <<his npc_landlord>> eyes. "@@.npc_landlord;Ahem, but because you had some... tough times lately, I'm sure I can knock some credits off. How does <<=$scene.totalRent>> Credits sound?@@"<br>
<br>
<<if $scene.totalRent > ($player.money.total+$player.money.maxcredit)>>
<<printThought "Nice gesture, but I'm still broke as hell.">><br>
<br>
<<else>>
<<printThought "Nice! But wait a second? Am I getting a rent ease because <<he npc_landlord>> is into crossdressers?">><br>
<br>
<</if>>
<</if>>
<<He npc_landlord>> holds out <<his npc_landlord>> datapad for you to sign, so the money can be transferred to <<his npc_landlord>> account. You put your signature on the screen.<br>
<br>
"@@.npc_landlord;Well, have a nice day <<callPlayer "npc_landlord">>!@@"<br>
<br>
<<if $scene.first_2_rentBonus>0>>
<<printThought "Did that really just happen? Did I just sell my body for the rent?">><br>
<br>
<</if>>
<<He npc_landlord>> is about to leave, but something makes <<him npc_landlord>> hesitate. <<He npc_landlord>> turns back to you.<br>
<br>
"@@.npc_landlord;Listen, <<callPlayer "npc_landlord">>. I know the rent around here is not very barato... cheap. And having to pay this rent alone can be kind of disheartening.
<<if $scene.longStare>>
It might even lead to erratic behaviour or something like... you know what, let's skip this part.
<</if>>
Anyway, take this.@@"<br>
<br>
<<He npc_landlord>> hands you a contact card.<br>
<br>
"@@.npc_landlord;I'm usually busy fixing everything in this apartment building, so I hardly have enough time to keep my own flat in order. If you have some time to spare, you could help out an old <<man npc_landlord>> from time to time. I don't have any money to pay you, but I am allowed to modify the rent rates of the flats in this building. So, if you're interested, you know where to find me!@@"<br>
<br>
With these words, <<he npc_landlord>> leaves you alone in the hallway.<br>
<br>
[<<moveTo "room_foyer" "Go back to your Foyer." 30 '<<set $player.cutscene.lockinventory = false>><<addCredits `-($scene.totalRent)`>>'>>]
</div>/*#
#desc: first time returning home after recieving pink uniform
#status: FINISHED 0.7.2.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemWorn('skirt_leather_pink') || !setup.checkItemWorn('satin_blouse_pink')>>
<<moveTo "room_foyer">>
<</if>>
<</if>>
<<set $scene.landlordpinkevent=true>>
<<if $phoneList.includes('npc_landlord')>>
<<set $scene.style = 'number'>>
<<elseif !setup.checkItemInInventory("card_landlord")>>
<<set $scene.style = 'no_card'>>
<<addPhonenumber $phoneList 'npc_landlord'>>
<<else>>
<<set $scene.style = 'no_number'>>
<<addPhonenumber $phoneList 'npc_landlord'>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment_front.png">>
<div id="invframe" class="scrolltext">
As you make your way home, you can't help but think about your new outfit.
<<if $player.sec_style.clothing.unisex == "forced" && $player.sec_style.clothing.female == "forced">>
You find yourself recalling the scent of your incinerated male clothing. This new pink attire was granted in a somewhat less destructive manner and yet it represents another part of your old life destroyed by your new company. You still can't quite believe what has happened and you find yourself wondering if it is even legal. You recall the overly long, too-complex contract you signed without fully understanding, perhaps it is time to take another shot at reading it?
<<else>>
You reflect on all that has happened since starting this new job, all the changes... a veritable whirlwind that you feel has yet to stop... or maybe it's actually accelerating? This thought has your mind turning back towards your contract, perhaps somewhere in its arcane language there might be a hint as to what is to come? No matter your personal feelings it seems prudent to investigate.
<</if>>
<br><br>
Distracted by your thoughts you come up short when you try to enter your apartment building only for the iris scan to make a rude sound and the door to fail to open.<br>
<br>
<<printThought "What the? I'm locked out?">><br>
<br>
You try the scanner two more times, getting increasingly nervous as you do, looking around the street and feeling very exposed in your new, hyper-feminine attire.
<<switch $scene.style>>
<<case 'number'>>
<<printThought "Maybe it's just a temporary issue? That, or I need to call <<=setup.getNpcName('npc_landlord', 'first')>>...">>
<<case 'no_number'>>
<<printThought "Maybe it's just a temporary issue? Or maybe I should call <<=setup.getNpcName('npc_landlord', 'first')>>, I swear <<he npc_landlord>> gave me <<his npc_landlord>> business card a while back.">>
<<case 'no_card'>>
You're at a loss as to what to do when you spot a note just to the side of the scanner with contact information for <<=setup.getNpcName('npc_landlord', 'first')>>, the <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.
<</switch>>
<br><br>
<<if $scene.style == 'no_card' || $scene.style == 'number'>>
[<<moveTo "event_first_pink_call_landlord_1" "Call your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>." 0 "<<set $scene.landlordpinkevent=false>>">>]
<<else>>
[@@.link_locked;How am I going to get into my apartment building without help?@@]
<</if>>
</div>/*#
#desc: first time returning home after recieving pink uniform
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ring up your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, it takes a couple rings, but soon the familiarly-accented voice comes through from the other end.<br>
<br>
"@@.npc_landlord;Hola! Como Esta?@@"<br>
<br>
After exchanging greetings you explain your predicament, how you appear to be locked out of the building.<br>
<br>
"@@.npc_landlord;Mi apologies! The system was serviced earlier and it seems like they accidentally wiped some of the records. I be right down to help.@@"<br>
<br>
[<<moveTo "event_first_pink_call_landlord_2" "Hang up and wait for <<him npc_landlord>> to come down." 360 "<<set $currentcall = false>>">>]
</div>/*#
#desc: first time returning home after recieving pink uniform
#status: FINISHED 0.7.2.0
#ignore_spell: fabuloso,fabulosa
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.has_seen_female = $npc_landlord.call_player == 'Chica'>>
<<if $scene.has_seen_female>>
<<applyExperience 'humiliation' 6 'normal' $SEEN_FRIEND>>
<<else>>
<<set $npc_landlord.call_player = "Chica">>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment_front.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You don't wait around for more than a few minutes before the door opens and <<=setup.getNpcName('npc_landlord', 'first')>> appears.
<<if !$scene.has_seen_female>>
Laying eyes on you, <<he npc_landlord>> goes wide-eyed in shock. "@@.npc_landlord;<<callPlayer "npc_landlord">>? When you start dressing so... <<if $npc_landlord.call_player == 'Chico'>>fabuloso<<else>>fabulosa<</if>>? Oh! I'm so sorry, you probably want to get home, just one moment while we update your records in the system, could you scan again?@@"
<<else>>
<<His npc_landlord>> gaze lingers on you, seeming to take in each item of your new outfit in turn. "@@.npc_landlord;Wow, is that you, <<callPlayer "npc_landlord">>? You looking... different. Good... muy good, but... different.@@"<br>
<br>
You shrug, gesturing towards the scanner as <<he npc_landlord>> seems to somewhat freeze for a moment.<br>
<br>
"@@.npc_landlord;Oh! So sorry, you must be eager to get home and such. If you could just stay a minute longer? I need you to scan again so I can update the system.@@"
<</if>>
<br><br>
You approach the scanner once more while <<=setup.getNpcName('npc_landlord', 'first')>> fiddles with settings, a few moments later giving you the thumbs up then having you test everything again to be sure that it took.<br>
<br>
"@@.npc_landlord;Sorry for all this, new versions, you know? Always breaking things.@@"<br>
<br>
You nod, having more experience with that sort of thing than you would have liked back at your old job.<br>
<br>
You walk in the building and <<=setup.getNpcName('npc_landlord', 'first')>> falls in next to you, chatting with you as you ride the elevator up to your floor.<br>
<br>
"@@.npc_landlord;So this... this you now?@@" <<He npc_landlord>> asks, gesturing towards your outfit.<br>
<br>
You nod, more than a little nervous, especially as you realise that you are quite alone in the elevator with <<him npc_landlord>>, though <<he npc_landlord>> is keeping more than a respectable distance.<br>
<br>
"@@.npc_landlord;Well, if you don't mind, my saying, I like, it look muy good on you.@@"<br>
<br>
The door opens for your floor as you consider your response.<br>
<br>
[<<moveTo "event_first_pink_call_landlord_3" "Nervously mumble thanks." 360 "<<set $scene.bold = false>>">>]<br>
[<<moveTo "event_first_pink_call_landlord_3" "Boldly thank <<him npc_landlord>>, after all what's the point of being cute if nobody appreciates it?" 360 "<<set $scene.bold = true>>">>]
</div>/*#
#desc: first time returning home after recieving pink uniform
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bold>>
<<applyExperience 'feminization' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'feminization' 12 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
<<if $scene.bold>>
Flicking your hair in what you think is a playful manner you thank <<him npc_landlord>> for the compliment, and the help getting back into the building, before you head for your flat.
<<else>>
Still not used to getting compliments on your femininity, you smile awkwardly and thank <<him npc_landlord>> for the help before heading up the hall to your flat.
<</if>>
<br><br>
<<if $now.getUTCDate() == 1>>
You step out of the elevator only for <<=setup.getNpcName('npc_landlord', 'first')>> to hurry after you.<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>, I nearly forget, rent is due today.@@"<br>
<br>
You sigh, but nod as you stand outside your apartment to attend to things.<br>
<br>
[<<moveTo "event_rent_endless_pay" "Time to pay." 1>>]
<<else>>
<<=setup.getNpcName('npc_landlord', 'first')>> stays behind in the elevator, waving you goodbye and making an effort not to stare too blatantly at your departing figure.<br>
<br>
[<<moveTo "room_foyer" "Home" 1>>]
<</if>>
</div>/*#
#desc: call landlord root
#status: FINISHED 0.7.2.0
#*/
<<if $scene.landlordpinkevent>>
<<initRoom>>
<<moveTo "event_first_pink_call_landlord_1">>
<</if>>
<<set $player.location to "Phonecall">>
<<set _firstcall = false>>
<<set _call = 0>>
<<if State.hasPlayed("event_destroy_landlord_5")>>
<<set _call = 2>>
<<elseif (
( (($now.getUTCDay()>0)&&($now.getUTCDay()<5)) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=17)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==5) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=13)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==6)||($now.getUTCDay()==0) && (($now.getUTCHours()>=10) && ($now.getUTCHours()<=24)) )
)>>
<<set _call = 1>>
<<else>>
<<set _call = 0>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch _call>>
<<case 0>>
You try to call <<=setup.getNpcName('npc_landlord', 'first')>>. <<He npc_landlord>> does not answer <<his npc_landlord>> phone.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Back." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 1>>
You give <<=setup.getNpcName('npc_landlord', 'first')>> a call.<br>
<br>
"@@.npc_landlord;Hola, who is this?@@"<br>
<br>
You can't help but roll your eyes, who doesn't have caller ID these days?<br>
<br>
You introduce yourself<<if $player.sec_style.body.name != "" && !$npc_landlord.flags.reactnamechange>>, careful to use your "old" name, figuring that explaining that sort of thing is probably better left for in person<</if>>.<br>
<br>
"@@.npc_landlord;Ah! Good to hear from you, how are you doing?@@"<br>
<br>
<<if $npc_landlord.flags.remodel>>
[<<moveTo "room_call_landlord_talk_remodel_1" "Ask if <<he npc_landlord>> could remodel your bedroom?" 180>>]<br>
<</if>>
[<<moveTo "room_call_landlord_talk_cleaning" "Ask about the offer to clean <<his npc_landlord>> apartment." 1>>]<br>
<<if $npc_landlord.flags.cleaning.maid_work>>
[<<moveTo "room_call_landlord_talk_maid" "Talk about working as a maid." 1>>]<br>
<</if>>
<<if $npc_landlord.stage == 3>>
<<if $currentTasks.hasOwnProperty("admin_barkeeper_matchmaker_2") && !$currentTasks.admin_barkeeper_matchmaker_2.finished>>
[@@.link_locked;I should wrap things up with <<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_barkeeper","first")>> before I try to schedule a date with <<=setup.getNpcName("npc_landlord","first")>>.@@]<br>
<<else>>
[<<moveTo 'room_call_landlord_date_2_1' "Say you'd like to take <<him npc_landlord>> up on that dinner date invitation." 60>>]<br>
<</if>>
<<elseif $npc_landlord.stage >= 4>>
<<if $currentTasks.hasOwnProperty('task_landlord_date_1') && !$currentTasks.task_landlord_date_1.finished || $currentTasks.hasOwnProperty('task_landlord_date_2') && !$currentTasks.task_landlord_date_2.finished>>
[@@.link_locked;I already have a date scheduled with <<=setup.getNpcName("npc_landlord","first")>>.@@]<br>
<<elseif $currentTasks.hasOwnProperty("admin_barkeeper_matchmaker_2") && !$currentTasks.admin_barkeeper_matchmaker_2.finished>>
[@@.link_locked;I should wrap things up with <<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_barkeeper","first")>> before I schedule a date with <<=setup.getNpcName("npc_landlord","first")>>.@@]<br>
<<else>>
[<<moveTo 'room_call_landlord_date_2_1' "Say you'd like go out for dinner together." 60>>]<br>
<</if>>
<</if>>
<<if $npc_landlord.stage >= 5>>
<<if $currentTasks.hasOwnProperty('task_landlord_weekend') && !$currentTasks.task_landlord_weekend.finished>>
[@@.link_locked;I'm already going to spend the weekend as <<=ps(setup.getNpcName('npc_landlord', 'first'))>> maid at <<his npc_landlord>> cabin.@@]<br>
<<elseif $currentTasks.hasOwnProperty('task_corporate_retreat') && !$currentTasks.task_corporate_retreat.finished>>
[@@.link_locked;I can't spend the weekend with <<=setup.getNpcName('npc_landlord', 'first')>>, I have that company retreat.@@]<br>
<<elseif $currentTasks.hasOwnProperty('barista_rescue_final') && !$currentTasks.task_corporate_retreat.finished>>
[@@.link_locked;I can't spend the weekend with <<=setup.getNpcName('npc_landlord', 'first')>>, I already committed to helping <<=setup.getNpcName('npc_psychiatrist', 'formal')>> with <<=setup.getNpcName('npc_barista', 'nickname')>>.@@]<br>
<<else>>
[<<moveTo 'event_landlord_weekend_invite_1' "Say you'd like to spend a weekend together at <<his npc_landlord>> cabin." 60>>]<br>
<</if>>
<<if $npc_sex_club.flags.firstVisit>>
<<set _time = setup.getNextDayOfWeek($now, 1, 18, 30, false)>>
<<set _clubScheduled = !setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<<if $npc_landlord.flags.sex_club>>
[@@.link_locked;I already spent a night at <<printShopName "sex_club">> with <<=setup.getNpcName("npc_landlord","first")>>.@@]
<<elseif $currentTasks.hasOwnProperty('task_landlord_date_1') && !$currentTasks.task_landlord_date_1.finished || $currentTasks.hasOwnProperty('task_landlord_date_2') && !$currentTasks.task_landlord_date_2.finished || $currentTasks.hasOwnProperty('task_landlord_date_club') && !$currentTasks.task_landlord_date_club.finished || $currentTasks.hasOwnProperty('task_landlord_weekend') && !$currentTasks.task_landlord_weekend.finished>>
[@@.link_locked;I already have a date scheduled with <<=setup.getNpcName("npc_landlord","first")>> I should finish that before talking to <<him npc_landlord>> about <<printShopName "sex_club">>.@@]
<<elseif _clubScheduled>>
[@@.link_locked;I already have plans for Monday night, I can't invite <<=setup.getNpcName("npc_admin","first")>> to <<printShopName "sex_club">>.@@]<br>
<<else>>
[<<moveTo 'event_call_landlord_date_club_1' 'Ask if <<he npc_landlord>> would take you to <<printShopName "sex_club">>?' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_bitchsuit_landlord_intro_1") && $fetish.pet_play>>
<<if State.hasPlayed("event_bitchsuit_landlord_9")>>
[<<moveTo 'event_call_landlord_date_club_1' 'Say you would like to have some more good puppy fun...' 60>>]<br>
<<else>>
[<<moveTo 'event_call_landlord_date_club_1' 'Say you would like to take <<him npc_landlord>> up on <<his npc_landlord>> bondage offer.' 60>>]<br>
<</if>>
<</if>>
<</if>>
<<if State.hasPlayed("event_psychiatrist_landlord_date_cabin_1")>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_admin") && !$currentTasks.psychiatrist_couples_admin.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_landlord") && !$currentTasks.psychiatrist_couples_landlord.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_technician") && !$currentTasks.psychiatrist_couples_technician.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_ex") && !$currentTasks.psychiatrist_couples_ex.finished>>
[@@.link_locked;You should finish your current couple's counseling before scheduling another one.@@]<br>
<<elseif $npc_psychiatrist.flags.evil == 1>>
[@@.link_locked;<<=setup.getNpcName("npc_psychiatrist", "formal")>> will not be hosting couple's counseling while she is still <<=ps(setup.getNpcName("npc_work_doctor", "formal"))>> bimbo slave...@@]<br>
<<else>>
[<<moveTo "event_call_landlord_psychiatrist_1" 'Mention <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> invitation to couples counseling.' 60>>]<br>
<</if>>
<</if>>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Say goodbye and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 2>>
You call up <<=setup.getNpcName('npc_landlord', 'first')>>... but nobody answers and you shiver at the memory of your betrayal.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</switch>>
</div>/*#
#desc: talk about cleaning his apartment
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_landlord.flags.cleaning.times_cleaned==0>>
You mention <<his npc_landlord>> offer for you to help around <<his npc_landlord>> apartment in exchange for a lower rent.<br>
<br>
<<if $npc_manager.stage == 1 || !State.hasPlayed("event_landlord_rent_first_2")>>
"@@.npc_landlord;Si, si, that sounds wonderful only... I am so busy right now I do not know when I could guarantee to find time, perhaps try again in a week or two when things have a chance to settle down.@@"
<<else>>
"@@.npc_landlord;Si, of course! I am very busy most of the time, but perhaps you come over Sunday morning?@@"
<</if>>
<<else>>
You ask if it's still alright for you to clean <<his npc_landlord>> apartment for a discount on rent.<br>
<br>
<<if $npc_landlord.flags.cleaning.cleaned_maid>>
"@@.npc_landlord;You? Of course and... maybe you wear that lovely outfit again? Sunday morning, as usual.@@"
<<else>>
"@@.npc_landlord;Si, just come by on a Sunday morning.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Thank <<him npc_landlord>> and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: talk about working as a maid
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<him npc_landlord>> about working as a maid cleaning apartments in the evenings.<br>
<br>
"@@.npc_landlord;Si, just make sure you are dressed appropriately and I'll assign you an apartment to clean.@@"<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Thank <<him npc_landlord>> and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: talk about remodeling your bedroom
#status: FINISHED 0.8.0.0
#*/
<<set $scene.atHome = setup.inPassageTag($scene.beforePhoneCallLocation, 'home')>>
<<if $npc_landlord.flags.cleaning.times_cleaned == 0 || !$scene.atHome>>
<<set $player.location to "Phonecall">>
<<else>>
<<set $player.location to "Bedroom">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_landlord.flags.cleaning.times_cleaned != 0>>
<<set $scene.style = $status_flat.bedroom>>
<</if>>
<<set $scene.prices = {
0 : 150,
1 : 1000,
2 : 500,
3 : 10000,
4 : 200
}>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_landlord.flags.cleaning.times_cleaned == 0 || !$scene.atHome>>
<<createAdvBGR "./images/locations/phonecall.png">>
<<else>>
<<createAdvBGR setup.getBedroomImage()>>
<</if>>
<div id="invframe" class="scrolltext">
You bring up the idea of remodeling your bedroom to <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<if !$scene.atHome>>
"@@.npc_landlord;Hmm, yes, can I come over to look at your bedroom and discuss options?@@"<br>
<br>
You reply that you actually are not home at the moment.<br>
<br>
"@@.npc_landlord;Ah, well, these things are muy more convenient to handle in person, call me again when you are at your flat.@@"<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "You reply that you will and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
<<if $npc_landlord.flags.cleaning.times_cleaned == 0>>
"@@.npc_landlord;Alas, <<callPlayer "npc_landlord">>, I wish that I could offer such service, but I am so busy keeping up with maintenance and things. Perhaps if I had more help around the building I could free up time... have you considered my cleaning offer?@@"<br>
<br>
You reply that you will think about it and <<he npc_landlord>> hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Thank <<him npc_landlord>> and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
"@@.npc_landlord;Si, <<callPlayer "npc_landlord">>, let me come over and we discuss options.@@"<br>
<br>
A few minutes later and you let <<=setup.getNpcName("npc_landlord","first")>> into your flat where the two of you look around at your current bedroom.<br>
<br>
<<switch $status_flat.bedroom>>
<<case 0>>
"@@.npc_landlord;Ah, so boring, I can see why you wish to remodel, what were you thinking of?@@"
<<case 1>>
"@@.npc_landlord;Such darkness! Like something out of the Dracula film, you wish for something a bit more cheery?@@"
<<case 2>>
"@@.npc_landlord;Ah, but your current room, it is so beautiful! But if it no make you happy, then change it.@@"
<<case 3>>
"@@.npc_landlord;Such elegance! Perhaps you want something more... casual and intimate?@@"
<<case 4>>
"@@.npc_landlord;A bit loud, maybe something more... relaxing or restrained?@@"
<<default>>
ERROR: unexpected
<</switch>>
<br><br>
You discuss possible options and narrow it down to a few different choices.<br>
<br>
<<if $npc_manager.stage > 2>>
"@@.npc_landlord;For you, my <<callPlayer "npc_landlord">>, I offer the special rates, no?@@"<br>
<br>
<label>Revert to original — <<=.5*$scene.prices[0]>> credits: <<radiobutton "$scene.style" 0 autocheck>></label><br>
<label>Gothic dream — <<=.5*$scene.prices[1]>> credits: <<radiobutton "$scene.style" 1 autocheck>></label><br>
<label><<if $fetish.sissy>>Sissy<<else>>Girly<</if>> pink fantasy — <<=.5*$scene.prices[2]>> credits: <<radiobutton "$scene.style" 2 autocheck>></label><br>
<label>Classic luxury — <<=.5*$scene.prices[3]>> credits: <<radiobutton "$scene.style" 3 autocheck>></label><br>
<label>Punk Rock playground — <<=.5*$scene.prices[4]>> credits: <<radiobutton "$scene.style" 4 autocheck>></label><br>
<br>
<<else>>
"@@.npc_landlord;Here, <<callPlayer "npc_landlord">>, this is the best I can do, any less and I would be forced to use sub-standard materials.@@"<br>
<br>
<label>Revert to original — <<=$scene.prices[0]>> credits: <<radiobutton "$scene.style" 0 autocheck>></label><br>
<label>Gothic dream — <<=$scene.prices[1]>> credits: <<radiobutton "$scene.style" 1 autocheck>></label><br>
<label><<if $fetish.sissy>>Sissy<<else>>Girly<</if>> pink fantasy — <<=.5*$scene.prices[2]>> credits: <<radiobutton "$scene.style" 2 autocheck>></label><br>
<label>Classic luxury — <<=$scene.prices[3]>> credits: <<radiobutton "$scene.style" 3 autocheck>></label><br>
<label>Punk Rock playground — <<=$scene.prices[4]>> credits: <<radiobutton "$scene.style" 4 autocheck>></label>
<</if>>
<br><br>
[<<moveTo "room_call_landlord_talk_remodel_2" 'Make your selection.' 180 "<<set $scene.remodel=true>>">>]<br>
[<<moveTo "room_call_landlord_talk_remodel_2" 'Never mind, do not alter your bedroom.' 180 "<<set $scene.remodel=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: talk about remodeling your bedroom
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.same = $scene.style == $status_flat.bedroom>>
<<if !$scene.same>>
<<if $scene.remodel>>
<<if $npc_manager.stage > 2>>
<<set $scene.price = .5*$scene.prices[$scene.style]>>
<<else>>
<<set $scene.price = $scene.prices[$scene.style]>>
<</if>>
<<set $scene.pay = $scene.price <= $player.money.total>>
<<if $scene.pay>>
<<addCredits `-($scene.price)`>>
<</if>>
<<addWorkEvent 'bedroom_install_landlord'>>
<<set $status_flat.future_bedroom = $scene.style>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.same>>
<<He npc_landlord>> chuckles. "@@.npc_landlord;Silly <<callPlayer "npc_landlord">>, that is what you already have!, There is no sense in remodeling if you are already happy with your bedroom!@@" <<He npc_landlord>> shakes <<his npc_landlord>> head and leaves.
<<else>>
<<if $scene.remodel>>
<<if $scene.pay>>
You make your request and <<=setup.getNpcName("npc_landlord","first")>> nods. "@@.npc_landlord;Si, I get started on this right away. I no want to disrupt things while you living here so... I do work while you work.@@"<br>
<br>
You thank <<him npc_landlord>> for the work <<hes npc_landlord>> about to start on
<<else>>
You make your request but <<=setup.getNpcName("npc_landlord","first")>> frowns and shakes <<his npc_landlord>> head. "@@.npc_landlord;I sorry <<callPlayer "npc_landlord">>, but this sort of work... well, it cannot be done on credit. Let me know when you have the money up front.@@"<br>
<br>
You thank <<him npc_landlord>> for <<his npc_landlord>> time
<</if>>
<<if $npc_landlord.stage > 1>>and give <<him npc_landlord>> a kiss<<else>>and bid <<him npc_landlord>><</if>> goodbye.
<<else>>
After considering your options you decide that you do not want to remodel your bedroom, after all.<br>
<br>
"@@.npc_landlord;Si, si, well if you ever change your mind, <<callPlayer "npc_landlord">>, just let me know.@@" <<if $npc_landlord.stage > 1>><<He npc_landlord>> hesitates for a moment and then leans in for a kiss, you smile, and meet <<his npc_landlord>> lips, sharing a hug before <<he npc_landlord>> hurrys off to get back to work.<</if>>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_bedroom" 'Back to your bedroom.' 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: landlord informs you your new bedroom is installed
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $status_flat.hasOwnProperty('future_bedroom')>>
<<set $status_flat.bedroom = $status_flat.future_bedroom>>
<<deleteMember $status_flat 'future_bedroom'>>
<</if>>
<<set $currentcall = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_landlord","first")>>. "@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>, just calling to let you know your new bedroom is finished. Es... muy beautiful. I know you will love it.@@"<br>
<br>
You thank <<him npc_landlord>> for such speedy work. "@@.npc_landlord;Si! Anything for you <<callPlayer "npc_landlord">>! Now I must return to other things, this old building, it always something!@@"<br>
<br>
<<He npc_landlord>> hangs up.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>><<set $currentcall = false>>">>]
</div>/*#
#desc: get flyer for maid cafe
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Apartment Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<div id="invframe" class="scrolltext">
You see a flyer tucked into your door, it's from Cafe Newtype, the Maid Cafe in the mall.<br>
<br>
"Life getting to be too much? Come to Cafe Newtype for a place to relax and recharge with our famous coffee and our lovely Maidtresses!" <br>
<br>
You glance around the hallway, it seems you're the only door that has the flyer in it.<br>
<br>
<<printThought "Huh... maybe I should check out what's going on at the Cafe...">><br>
<br>
[<<moveTo "room_foyer" "Enter your flat." 60>>]
</div>/*#
#desc: get call telling you to come back to maid cafe
#status: RELEASED 0.9.1.0
#ignore_spell: mx
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You answer your phone.<br>
<br>
"@@.npc_butler;Hello, <<switch $player.identify_as>><<case 'female'>>Miss<<case 'male'>>Mr.<<default>>Mx.<</switch>> <<=$player.last_name>>? I hope you are doing well. I was just reviewing schedules and noticed you hadn't worked a shift in a while. We would love to have you back.@@"<br>
<br>
You reply that things have just been busy lately.<br>
<br>
"@@.npc_butler;Of course, of course. Just that some of the customers have been asking about you, maybe a shift would help you relax and get away from the other chaos of your life? That's a bit part of why I opened this cafe, in the first place.@@"<br>
<br>
You reply that you'll think about it and <<=setup.getNpcName("npc_butler","formal")>> wishes you a good day and hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: get told npc_butler wants to see you while working
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You've just started working when a fellow maidtress approaches you.<br>
<br>
"@@.npc_waitress;Hey — <<=setup.getNpcName("npc_butler","formal")>> wants to talk to you, if you could head to <<his npc_butler>> office?@@"<br>
<br>
[<<moveTo "event_maidcafe_landlord_intro_2" 'Go see what <<=setup.getNpcName("npc_butler","formal")>> has to say.' 180>>]
</div>/*#
#desc: get told npc_butler wants to see you while ordering drink
#status: RELEASED 0.9.1.0
#ignore_spell: mx
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You're waiting for your drink when a maidtress approaches you. "@@.npc_waitress;Hi, <<switch $player.identify_as>><<case 'female'>>Miss<<case 'male'>>Mr.<<default>>Mx.<</switch>> <<=$player.last_name>>? <<=setup.getNpcName("npc_butler","formal")>> wants to talk to you, would you come with me?@@"<br>
<br>
[<<moveTo "event_maidcafe_landlord_intro_2" "Follow." 180>>]
</div>/*#
#desc: npc_butler introduces you to npc_landlord
#status: RELEASED 0.9.1.0
#ignore_spell: mx
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty("stage_5_maid_cafe_invite")>>
<<removeEvent "stage_5_maid_cafe_invite">>
<</if>>
<<if $events.hasOwnProperty("stage_5_maid_cafe_work")>>
<<removeEvent "stage_5_maid_cafe_work">>
<</if>>
<<if $events.hasOwnProperty("event_landlord_stage5_maid_invite_1")>>
<<removeEvent "event_landlord_stage5_maid_invite_1">>
<</if>>
<<if $events.hasOwnProperty("stage_5_no_maid_cafe_invite")>>
<<removeEvent "stage_5_no_maid_cafe_invite">>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler") setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You enter the office where <<=setup.getNpcName("npc_butler","formal")>> greets you with a smile... and then <<=setup.getNpcName("npc_landlord","first")>> steps out into view!<br>
<br>
After what's happened to all your other friends you're immediately on guard but <<=setup.getNpcName("npc_landlord","first")>> quickly comforts you.<br>
<br>
"@@.npc_landlord;It's okay, <<callPlayer "npc_landlord">>, they come for me but... they no smart enough for <<=setup.getNpcName("npc_landlord","first")>> and I slip away. <<=setup.getNpcName("npc_butler","formal")>> allow me to hide here, where it is safe.@@"<br>
<br>
<<if $npc_landlord.stage > 1>>
You leap into <<his npc_landlord>> arms, grateful to have <<him npc_landlord>> back, and not as some evil company-corrupted facsimile. <<=setup.getNpcName("npc_butler","formal")>> gives you a few minutes before clearing <<his npc_butler>> throat to draw your attention back in.<br>
<br>
<</if>>
<<=setup.getNpcName("npc_butler","formal")>> nods. "@@.npc_butler;Yes, it seems that you have some powerful enemies, <<switch $player.identify_as>><<case 'female'>>Miss<<case 'male'>>Mr.<<default>>Mx.<</switch>> <<=$player.last_name>>. Fortunately, my Cafe is a safe place... well as safe as things can be, at least from surveillance. Unfortunately that safety is limited and, as things stand, <<=setup.getNpcName("npc_landlord","formal")>> is a bit stuck from going anywhere else.@@"<br>
<br>
"@@.npc_landlord;Yes, you see my government implants,@@" <<he npc_landlord>> raises <<his npc_landlord>> arm and points to his eye. "@@.npc_landlord;They have tracking in them. It supposed to be disabled when I discharged but... it not, so if I leave here, where things shielded, well, they come for me again.@@"<br>
<br>
<<printThought "Wait... again?">> Though unspoken, you get the feeling that whoever "came for" <<=setup.getNpcName("npc_landlord","formal")>> the first time did not end well.<br>
<br>
"@@.npc_butler;Exactly, so we need a doctor that knows their way around cybernetics... and isn't going to be asking questions. Some of the girls mentioned <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>, but <<=setup.getNpcName("npc_landlord","formal")>> refuses to let any of my maids put themselves in harms way to act as go-betweens. Being that this all seems to trace back to you, well...@@" <<=setup.getNpcName("npc_butler","formal")>> trails off.<br>
<br>
"@@.npc_landlord;Si, I sorry to ask, but if you could arrange things with <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>, then I can travel freely, maybe help you with the rest of what going on? You seem to have made some powerful enemies.@@"<br>
<br>
[<<moveTo "event_maidcafe_landlord_intro_3" 'Ask why <<=setup.getNpcName("npc_landlord","first")>> is hiding here?' 180>>]<br>
[<<moveTo "event_maidcafe_landlord_intro_4" "You'll see what you can do." 180>>]
</div>/*#
#desc: npc_butler explains relationship with npc_landlord
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler") setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You ask why <<=setup.getNpcName("npc_landlord","first")>> chose the Maid Cafe, of all places, to hide out?<br>
<br>
"@@.npc_landlord;Well the scenery is very beautiful, and I no think I could make it out of town to my cabin without being captured... and, well, <<=setup.getNpcName("npc_butler","formal")>> say it is okay.@@"<br>
<br>
<<=setup.getNpcName("npc_butler","formal")>> chuckles. "@@.npc_butler;That's putting it lightly. We'll ignore that this entire cafe wouldn't exist without you dumping most of your pension into it... after what you did for me back in the war...@@" <<=setup.getNpcName("npc_butler","formal")>> looks at you seriously "@@.npc_butler;I'll do whatever I can for <<=setup.getNpcName("npc_landlord","formal")>> plus, well... the girls love having <<him npc_landlord>> around.@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> shrugs bashfully. "@@.npc_landlord;I only ever was doing my duty, and after the other things I see in the war... I just want to make something nice for the world, somewhere safe where people be theirselves.@@"<br>
<br>
From the direction of the conversation you doubt you'll get any more details about <<=ps(setup.getNpcName("npc_butler","formal"))>> past.<br>
<br>
[<<moveTo "event_maidcafe_landlord_intro_4" "You'll see what you can do about contacting a surgeon." 180>>]
</div>/*#
#desc: npc_butler explains relationship with npc_landlord
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler") setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You promise to see what you can do about finding a cyber-surgeon who can work on <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
"@@.npc_landlord;Thank you, <<callPlayer "npc_landlord">>. You really are the most wonderful.@@"<br>
<br>
You blush <<if $npc_landlord.stage > 1>>giving <<him npc_landlord>> a kiss before you<<else>>and<</if>> leave the back room to continue on with your business.<br>
<br>
[<<moveTo "room_mall_cafe" "Leave the back office." 180>>]
</div>/*#
#desc: ask bodyshop for help
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> if they might be able to help a friend of yours who is having issues with their government issued cybernetic?<br>
<br>
"@@.npc_bodyshop_nurse;Concerned about tracking?@@" She says with a grin. "@@.npc_bodyshop_nurse;Oh, don't look so shocked, we get business from more than just people looking to re-arrange their downstairs. As to your question, yes, <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> can do such. The cost is 2000 credits cash. Up front, no negotiation, no questions asked, add 500 for a house-call.@@"<br>
<br>
<<printThought "<<=setup.getNpcName('npc_landlord','first')>> can't leave the Maid Cafe... so I guess house-call it is.">><br>
<br>
<<if $player.money.total >= 2500>>
[<<moveTo "event_surgeon_help_landlord_schedule_2" "Hand over the cash and make the appointment." 60>>]
<<else>>
[@@.link_locked;You don't have that much cash.@@]
<</if>>
[<<moveTo "room_bodyshop" "You'll come back later." 60>>]
</div>/*#
#desc: pay bodyshop for help with landlord
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -2500>>
<<set _nextDate = setup.setNextDate($now, 0, 23, 0)>>
<<addTaskById 'task_landlord_surgery' _nextDate>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You hand over the stack of credits and <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> smoothly makes it disappear.<br>
<br>
"@@.npc_bodyshop_nurse;House call then? We do those after hours, let's say <<if $options.militaryTime>>23:00<<else>>11 pm<</if>> tonight? Just tell me the location and <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> will be there.@@"<br>
<br>
You give her the information and she nods. "@@.npc_bodyshop_nurse;Convenient — we've had so many customers there an in person visit won't even draw attention.@@"<br>
<br>
[<<moveTo "room_bodyshop" "Thank her and move on to other things." 60>>]
</div>/*#
#desc: get call telling you to come back to maid cafe
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _nextDate = setup.setNextDate($now, 3, 16, 0)>>
<<addEvent 'landlord_post_surgery' _nextDate>>
<<include "checkRescueFriendsTask">>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $options.fem_all_women>>
You get a phonecall from <<=setup.getNpcName("npc_bodyshop_nurse","formal")>>.<br>
<br>
"@@.npc_bodyshop_nurse;Just wanted to let you know I'm at the cafe and about to take care of your friend.@@"<br>
<br>
She hangs up. Looks like "no questions asked" also includes "you don't need to be present."
<<else>>
You get a phonecall from <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>.<br>
<br>
"@@.npc_bodyshop_surgeon;Just wanted to let you know I'm at the cafe and about to take care of your friend.@@"<br>
<br>
He hangs up. Looks like "no questions asked" also includes "you don't need to be present."
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: npc_work_surgeon arrives for npc_landlord surgery
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_bodyshop_surgeon") setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> arrives and you lead him to the back of the maid cafe where <<=setup.getNpcName("npc_landlord","first")>> is already waiting.<br>
<br>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> shrugs out of his jacket and his robotic arms unfurl as he looks at <<=ps(setup.getNpcName("npc_landlord","first"))>> cybernetics. "@@.npc_bodyshop_surgeon;Wow, haven't seen one of those in a while... such a crime that they lie about disabling things when you're discharged. Any organs, or just the eye and the arm?@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> chuckles. "@@.npc_landlord;The rest is me, thank you for this...@@"<br>
<br>
"@@.npc_bodyshop_surgeon;Pay the money, I do the work,@@" <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> states as he pulls out some tools and begins disassembling portions of <<=ps(setup.getNpcName("npc_landlord","first"))>> arm.<br>
<br>
The arm goes smoothly as not one, but three separate small chips are removed before <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> switches to examining the eye.<br>
<br>
"@@.npc_bodyshop_surgeon;Wow<<if $fetish.bladerunner>>, a NEXUS-7<</if>>... I don't even want to know what you did to rate something this advanced, but fortunately the tracking is all standardised...@@"<br>
<br>
A bit more tinkering and another chip is removed. <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> pulls out a scanner and runs it over the rest of <<=ps(setup.getNpcName("npc_landlord","first"))>> body. "@@.npc_bodyshop_surgeon;Just to be thorough, but it looks like you're clean.@@"<br>
<br>
"@@.npc_landlord;Thank you, thank you, <<if $options.fem>>senorita<<else>>senor<</if>>@@" <<=setup.getNpcName("npc_landlord","first")>> states as the surgeon packs up.<br>
<br>
Arms folding back under his coat <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> nods. "@@.npc_bodyshop_surgeon;As I said, that's what I was paid for. Enjoy your new off-the-grid presence.@@"<br>
<br>
"@@.npc_landlord;Those still live?@@" <<=setup.getNpcName("npc_landlord","first")>> asks.<br>
<br>
"@@.npc_bodyshop_surgeon;For another week — they're designed to draw power from your body, so disconnected they'll eventually run down. I can dispose of them, if you wish?@@"<br>
<br>
"@@.npc_landlord;No, no, I have plans for these,@@" <<=setup.getNpcName("npc_landlord","first")>> states as <<he npc_landlord>> drops them into a metallic pouch.<br>
<br>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> nods and leaves and <<=setup.getNpcName("npc_landlord","first")>> smiles at you.<br>
<br>
[<<moveTo "event_surgeon_help_landlord_2" "Continue." 600>>]
</div>/*#
#desc: npc_landlord thanks you for arranging surgery
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 3, 16, 0)>>
<<addEvent 'landlord_post_surgery' _nextDate>>
<<include "checkRescueFriendsTask">>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
"@@.npc_landlord;And thank you, <<callPlayer "npc_landlord">>. I promise I pay you back for this... first I need to take care of some things. I be around and let you know when you can contact.@@"<br>
<br>
<<if $npc_landlord.stage > 1>>
You give <<him npc_landlord>> a hug and make <<him npc_landlord>> promise not to be away long.
<<else>>
You nod, noting that you'll take all the help you can get with things...
<</if>>
<br><br>
"@@.npc_landlord;Si, si, <<callPlayer "npc_landlord">>. Now that I know there are people after me, well... they no going to get away with what they did, I promise you that.@@"<br>
<br>
<<He npc_landlord>> leaves and you head home.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: landlord visits after surgery
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.money.rent_reduction = $player.money.base_rent>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You are just outside your flat when <<=setup.getNpcName("npc_landlord","first")>> appears. "@@.npc_landlord;We talk private?@@" <<He npc_landlord>> asks and you let <<him npc_landlord>> inside.<br>
<br>
You ask what <<he npc_landlord>>'s doing back at the apartment and <<he npc_landlord>> smiles. "@@.npc_landlord;So I meet your AI friend, <<=setup.getNpcName("npc_ai","other")>>? She very interesting lady, you fell into quite the situation, but your enemies... they underestimate you, and don't even think I in the city no more. Your AI friend make some tweaks so I can still be in building under new identity, so I available if you need talk... before we make further moves we need gather allies. This not the sort of people you want to go up against alone.@@"<br>
<br>
<<if $npc_landlord.stage > 1>>
You thank <<him npc_landlord>> for the support... and then you pull <<him npc_landlord>> in for a kiss and make up for some of your "lost time" before <<he npc_landlord>> finally heads back to <<his npc_landlord>> flat. "@@.npc_landlord;Good night, <<callPlayer "npc_landlord">>, we stay in touch. You no need worry about rent no more, but if you still want clean apartments, you let me know.@@"
<<else>>
You thank <<him npc_landlord>> for <<his npc_landlord>> support. "@@.npc_landlord;Of course <<callPlayer "npc_landlord">>, we stay in touch. You no need worry about rent no more, but if you still want clean apartments, you let me know.@@"
<</if>>
<br><br>
<<He npc_landlord>> departs, leaving you alone in your flat.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div><<initRoom>>
<<include playerMenu>>
<<if !State.hasPlayed("event_landlord_rent_first_2")>>
<<moveTo "event_landlord_rent_first">>
<<elseif $npc_manager.stage == 2 && $player.sec_style.body.name == "" && !$npc_landlord.flags.insuranceDecline>>
<<moveTo "event_insurance_1">>
<<elseif $npc_manager.stage >= 5>>
<<moveTo "room_foyer">>
<<else>>
<<moveTo "event_rent_endless">>
<</if>><<if $events.hasOwnProperty('rentEvent')>>
<<removeEvent 'rentEvent'>>
<</if>>
<<set _year = $now.getFullYear()>>
<<set _month = $now.getUTCMonth()>>
<<if $now.getUTCMonth() >= 11>>
<<set _year += 1>>
<<set _month = 0>>
<<else>>
<<set _month += 1>>
<</if>>
/%event to add event for next time you goto foyer for rent to trigger %/
<<set _nextDate = new Date(Date.UTC(_year,_month, 1,17,0,0,0))>>
<<addEvent 'monthly_rent_populator' _nextDate>>/*#
#desc: rent/gym payment event
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEvent 'rentEvent'>>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && $currentTasks.manager_morning_inspection_task.finished>>
<<set $currentTasks.manager_morning_inspection_task.finished = false>>
<<set $currentTasks.manager_morning_inspection_task.condition = ''>>
<</if>>
<<if $gym.membership.active && !State.hasPlayed("event_gym_contest_7_win")>>
<<addCredits `-($gym.membership.monthly_price)`>>
<<set $currentcall = true>>
<<else>>
<<initRoom>>
<<set _beforetasklocation = $scene.beforetasklocation.pop()>>
<<moveTo _beforetasklocation>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text from <<printShopName 'gym'>>, informing you that this month's membership fee of <<=$gym.membership.monthly_price>> credits has been automatically deducted from your bank account.<br>
<br>
<<if $player.money.total < 0>>
<<printThought "Shit, that puts me in the red! Maybe I should get a refund and do something else for fitness this month...">><br>
<br>
<</if>>
[<<moveTo $scene.beforetasklocation.last() "Back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: landlord comes by to collect the monthly rent (repeats every month indefinitely)
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if (setup.checkVisibleClothingTag('female')>10) && $npc_landlord.call_player != "Chica">>
<<set $npc_landlord.call_player = "Chica">>
<<set $scene.firstTimeChica = true>>
<</if>>
<<set $scene.reactnamechange = !$npc_landlord.flags.reactnamechange>>
<<if $scene.reactnamechange>>
<<set $npc_landlord.flags.reactnamechange = true>>
<</if>>
<<if State.hasPlayed("event_destroy_landlord_5")>>
<<addCredits `-($player.money.base_rent)`>>
<</if>>
<</if>>
<<set $player.location to "Apartment Hallway">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_destroy_landlord_5")>>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<<else>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_destroy_landlord_5")>>
You get a notification that your rent has been auto-deducted and you wince in memory of <<=setup.getNpcName('npc_landlord', 'first')>> coming by to collect personally... before you betrayed <<him npc_landlord>> to <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
[<<moveTo "room_foyer" "Continue on to your apartment." 5>>]
<<else>>
It's that time again as <<=setup.getNpcName('npc_landlord', 'first')>> appears to collect the rent.<br>
<br>
<<if $scene.firstTimeChica>>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>. I like the new style, it suits your body well. Unfortunately I am here for less positive reasons. Once again the rent, she is due.@@"
<<else>>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>. Once again the rent, she is due.@@"
<</if>>
<br><br>
<<if $scene.reactnamechange>>
You take a moment to explain that, while <<he npc_landlord>> didn't use your name, you actually go by <<=$player.first_name>> <<=$player.last_name>> now.<br>
<br>
"@@.npc_landlord;Ah, Si! I make sure all the paperwork is correct for you. Is beautiful name, for beautiful <<callPlayer "npc_landlord">>!@@"<br>
<br>
You blush, and thank him for the helpful consideration.<br>
<br>
<</if>>
[<<moveTo "event_rent_endless_pay" "Time to pay up." 1>>]
<</if>>
</div>/*#
#desc: landlord comes by to collect the monthly rent (repeats every month indefinitely)
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include rentEvent>>
<<if State.hasPlayed("event_landlord_post_surgery_1")>>
<<set $scene.rent = 0>>
<<else>>
<<set $scene.reduced_rent = $player.money.rent_reduction > 0>>
<<if $scene.reduced_rent>>
<<set $scene.rent = $player.money.base_rent-$player.money.rent_reduction>>
<<set $player.money.rent_reduction = 0>>
<<else>>
<<set $scene.rent = $player.money.base_rent>>
<</if>>
<</if>>
<<if $player.money.total > 0>>
<<if $scene.rent > $player.money.total>>
<<set $scene.result = "minor_debt">>
<<elseif $player.money.total > $scene.rent*2>>
<<set $scene.result = "easy_afford">>
<<else>>
<<set $scene.result = "afford">>
<</if>>
<<else>>
<<if $scene.rent <= -.5*$player.money.total>>
<<set $scene.result = "gameover">>
<<elseif $scene.rent <= -$player.money.total>>
<<set $scene.result = "cripling_debt">>
<<else>>
<<set $scene.result = "minor_debt">>
<</if>>
<</if>>
<<addCredits `-($scene.rent)`>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
"@@.npc_landlord;<<if $scene.reduced_rent>>Counting the reduction for helping with my flat, you owe<<else>>This month's rent will be<</if>> <<=$scene.rent>>.@@"<br>
<br>
<<switch $scene.result>>
<<case "gameover">>
Your heart sinks, you're already in debt up to your eyeballs there's literally no way you can afford any part of the rent payment.
<<case "cripling_debt">>
Authorising the credit transfer you wince as you plunge even further into debt.<br>
<br>
Noticing your bank "balance" in the course of the transaction <<=setup.getNpcName('npc_landlord', 'first')>> comforts you while also delivering a warning. "@@.npc_landlord;Careful, <<callPlayer "npc_landlord">>. The bosses... they say if you no catch up and make proper cash payment they going to kick you out. I try argue but... they no know you like I do, they no care. So please, do what you can to be more prepared by next month.@@"
<<case "minor_debt">>
Once again plunging into debt you sigh as you make the payment. You've secured residency for another month, but you really need to step things up with your money-making so you can start actually building up savings before something goes catastrophic.
<<case "afford">>
You wince a bit as you hand over the money as it wipes out most of your savings; though at least you can afford it without going into debt.<br>
<br>
"@@.npc_landlord;Gracias, <<callPlayer "npc_landlord">>.@@" <<He npc_landlord>> states with a nod.
<<case "easy_afford">>
You almost feel happy as you hand over your payment. It took some work to recover from being left on your own by your ex, but you just paid off your rent with plenty left over. Whatever else is going on in your life, you're finally back on firm financial footing.
<<default>>
ERROR unknown scene result: <<=$scene.result>>
<</switch>>
<br><br>
<<if $scene.result == "gameover">>
<<=setup.getNpcName('npc_landlord', 'first')>> sighs as you finally notice a pair of stern looking men standing behind <<him npc_landlord>>.<br>
<br>
"@@.npc_landlord;I am sorry, <<callPlayer "npc_landlord">>. I wish it was some other way but, well... the management say you no pay, you gone...@@"<br>
<br>
You try to object, but it seems that <<=setup.getNpcName('npc_landlord', 'first')>> has no more say in the matter as it is explained that you have until the end of the day to move out or your things will be thrown away.<br>
<br>
[<<moveTo "gameover_rent" "Continue." 0>>]
<<else>>
You thank <<him npc_landlord>> for <<his npc_landlord>> time and <<he npc_landlord>> departs.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Go back to your apartment." 5 "<<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: leave without taking advantage of your maidness to seduce landlord
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Foyer">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You thank <<him npc_landlord>> with a smile and a curtsy, explaining that just the rent reduction is plenty recompense.<br>
<br>
<<if $npc_landlord.flags.cleaning.maid_work>>
<<He npc_landlord>> seems a bit at a loss for words, eventually thanking you again in the broken english <<he npc_landlord>> seems to fall back on when <<hes npc_landlord>> nervous.<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
You flash a smile and dip for a curtsy that doesn't do anything to relieve the tent <<hes npc_landlord>> making in <<his npc_landlord>> pants as you scurry back to your flat.
<<else>>
You smile and thank <<him npc_landlord>> again before heading back to your flat.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Continue." 60>>]
<<else>>
"@@.npc_landlord;No, <<callPlayer "npc_landlord">>... you deserve more and you show such a natural talent for this... would you be interested in cleaning other flats? For pay, of course. You see we've wanted to offer it as a service to our tenants, but it's been so hard to find proper help and you...@@" <<His npc_landlord>> eyes glide over your maid finery to make you blush.<br>
<br>
[<<moveTo "event_landlord_offer_work" "Listen to <<his npc_landlord>> proposal." 60>>]
<</if>>
</div>/*#
#desc: attempt to seduce landlord after cleaning his apartment as a maid
#status: FINISHED 0.7.2.0
#ignore_spell: sueno,pequeño
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_landlord.affection >= 7>>
<<applyExperience 'oral' $npc_landlord.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 11 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 11 'normal' $SEEN_FRIEND>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_15'
15
'event_psychiatrist_theme_landlord_seduce'
true
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $npc_landlord.affection >= 7>>
You flutter your eyelashes and step towards <<=setup.getNpcName('npc_landlord', 'first')>> with a coy smile.<br>
<br>
Running a finger down <<his npc_landlord>> chest<<if $npc_landlord.fem>> into her cleavage<</if>>, you softly state that after all that cleaning you're feeling a bit... dirty and maybe <<he npc_landlord>> could help?<br>
<br>
From the look on <<his npc_landlord>> face, <<he npc_landlord>> can scarcely believe what is happening. You take <<him npc_landlord>> by the hand as <<he npc_landlord>> holds you gently, and yet firmly as if simultaneously scared of hurting you yet not wanting to risk letting you go.<br>
<br>
Smiling wider, you turn and lead <<him npc_landlord>> towards the bathroom. As you turn on the shower, <<he npc_landlord>> finally seems to find <<his npc_landlord>> voice.<br>
<br>
"@@.npc_landlord;My shower it is... muy pequeño, very small...@@"<br>
<br>
You start removing <<his npc_landlord>> clothing with a smile, explaining that if that's the case the two of you will just have to be muy... close.<br>
<br>
<<He npc_landlord>> shudders, even moreso as you slide a hand down towards <<his npc_landlord>> bulging hard-on.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>... you are like un sueno, a dream, you don't have to—@@"<br>
<br>
You silence <<him npc_landlord>> with a finger before sliding to your knees and softly explaining that you want to... and besides, with such a "pequeño" shower, you need to do something about <<his npc_landlord>> bulge or the "three" of you will never fit!<br>
<br>
<<He npc_landlord>> moans as you remove <<his npc_landlord>> pants and pull down <<his npc_landlord>> <<if $npc_landlord.fem>>panties<<else>>underwear<</if>> to reveal <<his npc_landlord>> <<if $npc_landlord.fem>>penis<<else>>manhood<</if>>. Hard and just a hair above average a bead of precum appears at <<his npc_landlord>> tip and you lean in to kiss it before it falls.<br>
<br>
From that starting kiss, your lips spread as you slide your mouth over <<his npc_landlord>> cock.
<<if setup.getTotalValue("oral") < $npc_landlord.penis_size>>
<<His npc_landlord>> member is a bit larger than you are accustomed to, but this is a special occasion and you make no noise of complaint, giving it your all as your lips move down the delicious rod<<if !$npc_landlord.fem>> of manliness<</if>>.
<<else>>
<<His npc_landlord>> member is what many would consider a perfect size — just enough above average to be filling, but not so large as to be intimidating. Such analytical thoughts are fleeting as you orient your skills towards slurping every centimetre of <<his npc_landlord>> delicious rod<<if !$npc_landlord.fem>> of manliness<</if>>.
<</if>>
Distantly you hear <<him npc_landlord>> whispering in Spanish, you smile, blinking up at <<him npc_landlord>> as you bob your head up and down, getting <<him npc_landlord>> nice and slick with your saliva before introducing <<him npc_landlord>> to your throat.<br>
<br>
Sliding back, you release <<him npc_landlord>> from your lips with a pop before smiling up and nuzzling <<his npc_landlord>> cock while asking if <<he npc_landlord>> likes having a "personal" maid...<br>
<br>
"@@.npc_landlord;Si, si,@@" <<he npc_landlord>> states before you take <<his npc_landlord>> breath away by going back to sucking <<him npc_landlord>> off.<br>
<br>
You feel a little bad for torturing <<him npc_landlord>> like this. You get the feeling it has been quite some time since <<he npc_landlord>> was last with someone. You don't have time to worry for long, however as a few moments later <<he npc_landlord>> cums, gasping and moaning as <<he npc_landlord>> unloads on you.<br>
<br>
Catching the first few drops in your mouth, you quickly aim <<him npc_landlord>> at your face for the rest, holding <<his npc_landlord>> cock with both hands as you paint yourself with <<his npc_landlord>> seed.<br>
<br>
"@@.pc;Ooops@@" you state with a coy smile, "@@.pc;Looks like we made even more of a mess...@@"<br>
<br>
<<He npc_landlord>> hurriedly starts to apologise, but you just laugh, shedding your clothes and stepping into the shower before reaching back for <<him npc_landlord>>.<br>
<br>
<<His npc_landlord>> flaccid cock is already twitching at the sight of your naked form as <<he npc_landlord>> steps into the steamy shower.<br>
<br>
[<<moveTo "event_landlord_clean_seduction_2" "Time to get clean..." 300>>]
<<else>>
You flutter your eyelashes and say that after all that cleaning you're feeling a bit... dirty.<br>
<br>
Either <<hes npc_landlord>> the densest person in the world, or the best actor because your meaning seems to fly right over <<his npc_landlord>> head as <<he npc_landlord>> says that you'll feel a lot better if you head back to your apartment for a nice shower.<br>
<br>
Thanking you again for your assistance, <<he npc_landlord>> bids you farewell.<br>
<br>
<<printThought "Hmm, maybe <<he npc_landlord>> still just sees me as a tenant?">><br>
<br>
[<<moveTo "room_foyer" "Continue." 120>>]
<</if>>
</div>/*#
#desc: shower with landlord after seducing him
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.stage = 2>>
<<set _nextDate = setup.setNextDate($now, 8, 17, 0)>>
<<addRandomEvent $randomEvents['transit'].room_foyer "landlord_date_invite_1" _nextDate>>
<<include "cleanPlayer">>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.cage!="">>
<<changeItemStatus $scene.cage 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cage 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cage 'piss' '["remove"]'>>
<<changeItemStatus $scene.cage 'sweaty' '["remove"]'>>
<<set $player.timebased.horny = 90>>
<<else>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<</if>>
<<if $player.makeup.template!="">>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<</if>>
<<if !setup.checkItemOwned("maid_uniform_pvc_black")>>
<<set _nextDate = setup.setNextDate($now, 5, 15, 0)>>
<<addEvent 'landlord_maid_delivery' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<He npc_landlord>> wasn't kidding about the shower being small, but the two of you make it work, bodies pressed together and soaping each other off in between kissing and groping and stroking.<br>
<br>
<<if $npc_landlord.fem>>
<<if setup.getEffectiveBreastSize() > 0>>
Your <<=setup.calcBreastSize()>> breasts are pressed against her own
<<else>>
Your chest is pressed against her breasts
<</if>>
while you massage her butt. She uses her supple lips to kiss you deeply as her hands roam
<<else>>
His lips are rough, his beard scratchy — but in a good way, the contrast in texture compared to your own feminine softness making you coo in pleasure as he roams
<</if>>
over your body, tender and gentle as if you were as delicate as a porcelain vase.<br>
<br>
You may have started this thing, but in the steam of the shower, you soon find yourself playing the role of the bashful, submissive maid for real. <<He npc_landlord>> constantly whispers sweet nothings, most of them in Spanish, but the tingles it sends through your body are understandable in any language.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
Turning around, you press against <<his npc_landlord>> body as the water flows over the two of you, <<his npc_landlord>> hands sliding down to find your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>smooth chastity<</if>>.<br>
<br>
"@@.npc_landlord;Ah, so lovely... would that I had the key to this most precious of treasures...@@"<br>
<br>
You gasp as <<he npc_landlord>> <<if setup.isCage() && $player.body_ref.balls>>fondles your balls<<else>>strokes your crotch<</if>>, nibbling your throat and stroking your <<if $player.body_ref.penis>>imprisoned clitty<<else>>prison walls<</if>> until you are near to a <<if $fetish.sissy>>sissy <</if>>frenzy.
<<else>>
Turning around, you press against <<his npc_landlord>> body as the water flows over the two of you, <<his npc_landlord>> hands sliding down to find your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>wet slit<</if>>. You let out a cute gasp as <<he npc_landlord>> begins stroking, leaning back and turning over your shoulder to share a kiss as <<his npc_landlord>> fingers move up and down, <<his npc_landlord>> cybernetic arm gently cupping your hip.<br>
<br>
<<He npc_landlord>> is quite skilled with <<his npc_landlord>> good hand and you soon cum, gasping and shuddering as the pleasure bursts through you and you wilt against <<him npc_landlord>>.
<</if>>
<br><br>
Blinking up at <<him npc_landlord>> in the steamy artificial rain, you smile, swooning, feeling safe and adored in <<his npc_landlord>> <<if $npc_landlord.fem>>motherly<<else>>strong<</if>> grasp.<br>
<br>
You are like a pair of bashful newlyweds when you finally step out of the shower, blushing and looking away whenever your eyes meet.<br>
<br>
Slipping back into your maid outfit, you bite your lip bashfully, though you initiated this whole thing you are suddenly at a loss for words as you stare at <<his npc_landlord>> half-naked form, <<his npc_landlord>> numerous scars only making <<him npc_landlord>> look more beautiful.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>... that, that was wonderful I only wish I could give you more but—@@"<br>
<br>
Lunging forward, you cut <<him npc_landlord>> off with a kiss. Long and deep you savour <<his npc_landlord>> lips, <<his npc_landlord>> tongue until you feel <<his npc_landlord>> tension release and you lean back. Smiling you explain that you got everything that you wanted, and more.<br>
<br>
<<He npc_landlord>> smiles back, shaking <<his npc_landlord>> head in amazement. "@@.npc_landlord;How could <<=setup.getNpcName('npc_exgirlfriend', 'first')>> let you go? Such passion...@@"<br>
<br>
You blush, still holding <<his npc_landlord>> hand as <<he npc_landlord>> <<if $npc_landlord.fem>>brings you closer for a parting hug<<else>>brings your fingers up to his lips for a kiss<</if>>.<br>
<br>
"@@.npc_landlord;Well, know that you have made this old <<man npc_landlord>> very happy, now hurry off, if I keep staring at you in that lovely outfit I might try to do something more and I do not know if my heart could survive any more excitement today!@@"<br>
<br>
You laugh, promising that there will be other times before blowing <<him npc_landlord>> a kiss and skipping away back to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 120 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: get bonus maid outfit from landlord
#status: RELEASED 0.7.12.0
#ignore_spell: hermosa
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_landlord' 2>>
<<addItemSet 'maid_pvc_black'>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
There is a package outside your door. You haven't ordered anything and you bring it inside, slightly curious.<br>
<br>
Opening it up you gasp; someone has sent you a classical, utterly jaw-dropping maid outfit. Layered floor-length skirts combine with puffy shoulders and a pinched-in waist for a look that's utterly timeless.<br>
<br>
Your curiosity sparked as to where the package could have come from you put it aside to find a gift note on the bottom of the box.<br>
<br>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>. I saw this and... as la <<callPlayer "npc_landlord">> mas hermosa... I thought you needed this. It no as beautiful as you, but it close. I hope you enjoy.@@"<br>
<br>
~<<=setup.getNpcName("npc_landlord","first")>><br>
<br>
You blush at the lovely gift — it will need the right stockings, headpiece and shoes, but it really would make you the ultimate classical maid.<br>
<br>
[<<moveTo "event_landlord_maid_delivery_2" "Send <<him npc_landlord>> a thank-you text." 120>>]<br>
[<<moveTo "room_foyer" "Home." 120>>]
</div>/*#
#desc: get bonus maid outfit from landlord
#status: RELEASED 0.7.12.0
#ignore_spell: 'd
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You send <<=setup.getNpcName("npc_landlord","first")>> a text, thanking <<him npc_landlord>> for the lovely gift.<br>
<br>
"@@.npc_landlord;Si! I glad it arrive and you like it. You already the most pretty maid, with that? Oh, I see that, this old <<man npc_landlord>> die happy!@@"<br>
<br>
You promise to wear it for <<him npc_landlord>> sometime — but that <<he npc_landlord>>'d better stick around to enjoy it!<br>
<br>
"@@.npc_landlord;Si, si. It so amazing how, for as pretty as you are on the outside, you even more beautiful on inside. So kind! I sorry, but need go now. Broken water heaters no fix theyself!@@"<br>
<br>
<<He npc_landlord>> stops texting.<br>
<br>
[<<moveTo "room_foyer" "Put your phone away." 120 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: fail to appear for weekend dom course
#status: RELEASED 0.8.6.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<printThought "Oh shit, I was supposed to meet her for dominance training...">><br>
<br>
"@@.npc_manager;Miss <<=$player.first_name>> <<=$player.last_name>>. You appear to have failed to arrive for your lesson. Did you think that "dominance" was some sort of code for disobedience? No, the responsibilities of being in charge mean that things like promptness become even more vital, lest you set a poor example for those who serve you.@@"<br>
<br>
She hangs up leaving you almost confused. You would have expected her to be almost livid at your screw-up, but her tone was more disappointment? Somehow that stings even worse and, despite her controlled tone, you have no doubt that she is quite cross at your failure.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 60 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: show up for weekend dom training
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bondage = {
"chastity" : false,
"blindfold" : false,
"gag" : false,
"collar" : false,
"predicament" : false
}>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_hogtie")>>
<div id="invframe" class="scrolltext">
The lobby is eerily empty on the weekend, but a guard buzzes you into the elevator and you head up to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office for her to greet you... with a bound and trussed <<=setup.getNpcName("npc_harassment_assist","first")>> perched atop <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desk.<br>
<br>
<<if setup.checkItemWorn("manager_shirt_copy") && setup.checkItemWorn("manager_skirt_copy")>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks you over with a raised eyebrow. "@@.npc_manager;I think you may have slightly misinterpreted what it means to learn from me... no matter, that outfit will not interfere with the activities of the day... but I will have more to say should you wear them to work.@@"<br>
<br>
<</if>>
"@@.npc_manager;Hello, <<=$player.first_name>>, I have asked to borrow <<=setup.getNpcName("npc_harassment_assist","first")>> so that you have a subject to practice your new skills upon. They are so submissive as to be akin to training wheels, but that should allow you to focus on what I am telling you with fewer potential bratty distractions.@@"<br>
<br>
You nod and move closer as <<=setup.getNpcName('npc_manager', 'formal')>> begins her lecture.<br>
<br>
"@@.npc_manager;So many novice dominants fixate on things like whips and paddles — thinking that they can beat a slave into shape, but, while punishment is a useful tool that we will be getting to later, that mindset is cruel and inefficient. Instead, if one requires physical demonstrations of their power, one should start with bondage for it presents a multitude of ways in which to guide a submissive and direct the scene. Here, look at our lovely subject and tell me what techniques you see being deployed, and tell me how you think they are being used to affect the slave.@@"<br>
<br>
You take a moment to look over <<=setup.getNpcName("npc_harassment_assist","first")>>. They are bound in a strenuous variant on a hog-tie — gagged, blindfolded, and with their ankles and wrists connected to a spreader bar that exposes their helplessness and even further reduces your options as you mentally dip into your own experience to isolate in on individual parts.<br>
<br>
<<include "managerDomClassBondage">>
</div><<if $scene.bondage.chastity>>
[@@.link_locked;You have already pointed out <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> chastity belt.@@]<br>
<<else>>
[<<moveTo "event_manager_dom_class_2" 'Note <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> chastity belt.' 180 "<<set $scene.action='chastity'>>">>]<br>
<</if>>
<<if $scene.bondage.blindfold>>
[@@.link_locked;You have already pointed out <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> blindfold.@@]<br>
<<else>>
[<<moveTo "event_manager_dom_class_2" 'Note <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> blindfold.' 180 "<<set $scene.action='blindfold'>>">>]<br>
<</if>>
<<if $scene.bondage.gag>>
[@@.link_locked;You have already pointed out <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> gag.@@]<br>
<<else>>
[<<moveTo "event_manager_dom_class_2" 'Note <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> gag.' 180 "<<set $scene.action='gag'>>">>]<br>
<</if>>
<<if $scene.bondage.collar>>
[@@.link_locked;You have already pointed out <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> collar.@@]<br>
<<else>>
[<<moveTo "event_manager_dom_class_2" 'Note <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> collar.' 180 "<<set $scene.action='collar'>>">>]<br>
<</if>>
<<if $scene.bondage.predicament>>
[@@.link_locked;You have already noted <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> harsh hog-tie.@@]<br>
<<else>>
[<<moveTo "event_manager_dom_class_2" 'Note the harsh hog-tie <<=setup.getNpcName("npc_harassment_assist","first")>> has been pulled into.' 180 "<<set $scene.action='predicament'>>">>]
<</if>>
<<if $scene.bondage.spreader>>
[@@.link_locked;You have already pointed out <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> leg spreader.@@]<br>
<<else>>
<<if setup.getTotalValue("bondage") > 10 && $scene.bondage.predicament>>
[<<moveTo "event_manager_dom_class_2" 'Note the leg spreader between <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> ankles.' 180 "<<set $scene.action='spreader'>>">>]
<</if>>
<</if>>/*#
#desc: discuss dominant bondage techniques
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bondage[$scene.action] = true>>
<<applyExperience 'dominance' 10 'little' $ALONE>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_hogtie")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "chastity">>
You point out <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> chastity belt<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>, a <<=setup.getItemName("sissyomatic")>>, similar to your own<</if>>. You speak from experience how such a device — especially incorporating a plug, can serve to provide almost complete control through shocks, vibrations, and the constant feeling of denial that comes from being locked in such a way without the key.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;Good, but you forgot a final dimension — the key itself is a powerful tool and symbol — to be denied the slave, certainly, but also to be given as a test, to see if the slave will abuse the privilege, or if they are at a level of submission where they obediently give up such control, even when it is offered. All in all a chastity device is a fantastic tool to have in your belt — pun intended, and one that is useful for all stages of a submissive's development.@@"<br>
<br>
You nod, reflecting on how early in your development chastity was introduced... and how much it <<if setup.checkItemTypeWorn("cage")>>jump-started your journey and continues to guide you<<else>>accelerated things<</if>>.
<<case "blindfold">>
You point to <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> blindfold, and how removing the sense of sight will make their other senses more sensitive, as well as rendering them disoriented and helpless.<br>
<br>
"@@.npc_manager;Exactly, sensory deprivation serves to remove distractions and help a slave focus... though one must be tactical as a blindfold greatly reduces what sorts of service the submissive may perform effectively. As an added note — that blindfold includes integrated noise-cancelling earplugs, <<=setup.getNpcName("npc_harassment_assist","first")>> is as deaf as they are blind, completely unable to sense that we are even here save, perhaps, by smell.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> walks closer, reaching under her skirt to run fingers between her legs and then holding them just in front of <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> face. The bound submissive reacts almost immediately, nostrils flaring as they drool past their gag.<br>
<br>
"@@.npc_manager;An accentuated sense of smell, indeed.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with amusement.
<<case "gag">>
You point to the large gag <<=setup.getNpcName("npc_harassment_assist","first")>> is wearing, remarking on how it stifles their speech.<br>
<br>
"@@.npc_manager;And so much more! A gag is a fantastic thing as it not only forestalls back-talk, it is almost impossible for a sub to forget they are wearing it, making it a wonderful reminder of the control you are exerting upon them. In addition it can be used for various trainings — either a ring gag to make them easier to use, or a plug gag to better accustom them to the feel of a cock in their mouth. There are also feeder gags, or gags incorporating external tools such as dusters or dildos with which the slave can perform a variety of services. Finally — as you can see here, a gag will frequently induce drooling, which can be attractive... or a trivial excuse for punishment when the slave makes an inevitable mess.@@"
<<case "collar">>
You point to <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> collar that marks them as owned.<br>
<br>
"@@.npc_manager;Ah, the collar — truly the most potent symbol of submission, as you noted, but so much more. It is a tool, of course, for grabbing hold of, for attaching a leash, for administering punishing shocks or, with a posture collar to enforce a raised-chin posture. That doesn't even count how the design of a collar can be used to designate a slave's position — either to others, or to the slave themselves, including the powerful symbol that is "earning" a permanent collar. Perhaps more than any other single item a collar may be the perfect emblem of submission — while it is minimally encumbering on its own, it is a constant reminder, and indicator, of servitude. Always remember that the end goal of dominance is for a submissive who obeys without the need for punishment or reward, but merely because their dominant commands.@@"
<<case "predicament">>
You note the strenuous hogtie predicament that has <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> back arched and their head raised, in addition to rendering them all but helpless.<br>
<br>
"@@.npc_manager;Exactly — the positions a slave can be placed in are as varied as their assignment — a fully restrained position such as this can be used to keep them from getting into trouble, as a punishment for misbehaviour, as security for transport, or as an aid to their focusing. Other predicaments can also serve to force the slave to "choose" their punishment — trading pain in one part of the body for another, or as an opportunity to prove their dedication by how long they subject themselves to an awkward position. Finally, restraints can serve to aid or impede the performance of their duties, by, say, preventing them from leaving their chair as they work, or by hobbling them or restraining their hands to make otherwise simple actions more challenging. Almost every activity a submissive undertakes could be enhanced by the addition of bondage — so one should always consider such and apply as necessary. Over time the submissive may even become practically addicted to the feeling of restraint, a sure sign of their development into an even more perfect slave.@@"<br>
<br>
<<if setup.getTotalValue("bondage") > 10>>
<<if setup.getTotalValue("bondage") > 15>>
You bite your lip, well familiar with that feeling. Even though you are here to learn to be more dominant, you can't help but be a little jealous that it is not you trussed up on the desk...
<<else>>
You bite your lip, quite understanding that concept, your own yearning for bondage having grown more and more since coming under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> employ.
<</if>>
<<else>>
<<if setup.getTotalValue("bondage") > 5>>
You shudder, fearful that you are on the way to developing such an addiction...
<<else>>
You hold your tongue, baffled at how anyone could become "addicted" to something like bondage.
<</if>>
<</if>>
<<case "spreader">>
You point to the spreader bar, noting how it makes <<=setup.getNpcName("npc_harassment_assist","first")>> more exposed.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Good catch — separating the spreader bar from the general hogtie position requires a discerning eye — or perhaps just an expansive personal experience in bondage, hmm?@@" You blush as she continues. "@@.npc_manager;You are absolutely correct, however — the spreader bar serves to modify the original hogtie to present the submissive more completely. This is valuable both in how it opens up more options as to what actions can be taken without releasing them from their binds, as well as altering the visual appeal of their body, and serving a mental pressure on the submissive — a normal hogtie is restrictive, but it can be practically modest, this variant, however... the submissive is exposed to the world, and they will not be forgetting that fact.@@"
<<default>>
ERROR: unexpected action
<</switch>>
<br><br>
<<if $scene.bondage.chastity && $scene.bondage.blindfold && $scene.bondage.gag && $scene.bondage.collar && $scene.bondage.predicament && ($scene.bondage.spreader || setup.getTotalValue("bondage") <= 10)>>
You believe you have touched on every aspect of <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> bondage situation.<br>
<br>
[<<moveTo "event_manager_dom_class_3" 'Continue.' 180>>]
<<else>>
"@@.npc_manager;Tell me what else you see.@@" <<=setup.getNpcName('npc_manager', 'formal')>> commands.<br>
<br>
<<include "managerDomClassBondage">>
<</if>>
</div>/*#
#desc: dom training - formal start
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_hogtie")>>
<div id="invframe" class="scrolltext">
You don't see anything else to point out and tell <<=setup.getNpcName('npc_manager', 'formal')>> so.<br>
<br>
<<if $scene.bondage.spreader>>
"@@.npc_manager;Very good — you really have quite the thorough understanding of how bondage can aid a submissive... it would seem all that first-hand experience is translatable, hmm?@@"<br>
<br>
You reflexively curtsy at the compliment and <<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;While dominant hierarchies are a thing — and I will ALWAYS remain above you in such... well, you should be careful about how you act in view of a submissive. Obviously not a problem now, with the blindfold, but showing subservience can make it more of a challenge to retain the respect of a less trained submissive, which can make control more difficult.@@"
<<else>>
"@@.npc_manager;Good — but you missed one subtle detail. The spreader bar enhances beyond the initial hogtie — exposing the submissive further, which has both practical utility for access and viewing, as well as making them feel even more helpless, beyond mere immobility. I would have thought you would recognise that... perhaps you need to spend more time in bondage yourself, hmm?@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and you blush.
<</if>>
<br><br>
"@@.npc_manager;So, now that we've gone over the utility of bondage — and with you faced with a slave who has been percolating for some time... what do you think would be a first move to "introduce" yourself and establish that you will be dominating them for a bit?@@" She takes a step back and gestures for you to approach the blind, deaf, gagged, bound and drooling <<=setup.getNpcName("npc_harassment_assist","first")>>.<br>
<br>
[<<moveTo "event_manager_dom_class_4" 'Ask for <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> earplugs to be disabled so that you might verbally introduce yourself.' 180 "<<set $scene.action_introduce='introduce'>>">>]<br>
[<<moveTo "event_manager_dom_class_4" 'Tease <<=setup.getNpcName("npc_harassment_assist","first")>> a bit.' 180 "<<set $scene.action_introduce='tease'>>">>]<br>
[<<moveTo "event_manager_dom_class_4" 'Release <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> hogtie.' 180 "<<set $scene.action_introduce='release'>>">>]
</div>/*#
#desc: dom training - first action - introduce
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'dominance' 'dominance_other' 'dom_training'>>
<<switch $scene.action_introduce>>
<<case 'introduce'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<case 'tease'>>
<<applyExperience 'dominance' 13 'very' $SEEN_FRIEND>>
<<case 'release'>>
<<applyExperience 'dominance' 5 'little' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_hogtie")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_introduce>>
<<case 'introduce'>>
<<=setup.getNpcName('npc_manager', 'formal')>> uses a remote to grant <<=ps(setup.getNpcName('npc_harassment_assist','first'))>> hearing and you introduce yourself as "@@.pc;<<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>@@" and inform <<=setup.getNpcName('npc_harassment_assist', 'first')>> that they will have the pleasure of serving you this morning... and that their reputation has you harboring very high expectations. As you speak your trace your finger along their spine.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> moans, shuddering in their bonds as they manage a surprisingly understandable "@@.npc_harassment_assist;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" through their gag.<br>
<br>
"@@.npc_manager;Very good — as an aside, while <<=setup.getNpcName('npc_harassment_assist', 'first')>> is now able to hear you, their earplugs are tuned such that my vocal frequencies remain inaudible for the duration of this scene. This will allow me to speak more freely in advising your behaviour without distracting with my presence. Now that you have introduced yourself to your submissive, remove <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> gag, hogtie and spreader bar. The blindfold should remain in place to keep my presence from distracting, but they need a bit more freedom of movement for this next part.@@"
<<case 'tease'>>
You spend some time teasing your helplessly bound charge — fingers gently tracing their skin, paying particular attention to their nipples, armpits, feet, and their inner thighs. <<=setup.getNpcName('npc_harassment_assist', 'first')>> moans and drools through their gag in quiet desperation.<br>
<br>
"@@.npc_manager;Now that was cruel.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states. "@@.npc_manager;They are already so clearly aroused by their tight predicament... pushing them too far and you have the recipe for a lust-crazed and distracted slave.@@"<br>
<br>
You consider explaining that <<=setup.getNpcName('npc_harassment_assist', 'first')>>, especially when helplessly bound, is just too cute for you to possibly keep your hands to yourselves, but you decide that expressing such lack of control on your part would not really be in keeping with the spirit of the lesson.<br>
<br>
"@@.npc_manager;Now that you have introduced yourself to your submissive, remove <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> gag, hogtie and spreader bar. The blindfold should remain in place to keep my presence from distracting, note that their earplugs are now tuned such that my vocal frequencies remain inaudible, but they will be able to hear your voice. This will enable me to speak more freely in advising your behaviour. But they need a bit more freedom of movement for this next part.@@"
<<case 'release'>>
You start removing <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> restraints, only for <<=setup.getNpcName('npc_manager', 'formal')>> to stop you as you reach for their blindfold. "@@.npc_manager;That should remain in place — I do not want the sight of myself to present our cute volunteer with a distraction. Note that their earplugs are now tuned to block my vocal frequencies, but allow them to hear your voice clearly. This will allow me to continue to advise you without my presence making for a distraction. You may remove the remainder of their restraints, including the gag. They will need the freedom of movement for this next part.@@"<br>
<br>
You nod and continue what you were doing. While <<=setup.getNpcName('npc_harassment_assist', 'first')>> makes no sound, you can sense a subtle reluctance as control of their limbs is returned to them.
<<default>>
ERROR: unexpected scene.action_introduce <<=$scene.action_introduce>>
<</switch>>
<br><br>
"@@.npc_manager;So the next step after introducing oneself to a slave would be to give them their first command. As a general piece of advice, do not think of such as an order, but as you providing an opportunity for them to demonstrate their submissiveness, and providing the submissive guidance on how they might best effect such display.@@"<br>
<br>
[<<moveTo "event_manager_dom_class_5" 'Order <<=setup.getNpcName("npc_harassment_assist", "first")>> to kiss your feet.' 180 "<<set $scene.action_demo='feet'>>">>]<br>
[<<moveTo "event_manager_dom_class_5" 'Give <<=setup.getNpcName("npc_harassment_assist", "first")>> a spanking.' 180 "<<set $scene.action_demo='spank'>>">>]<br>
[<<moveTo "event_manager_dom_class_5" 'Order <<=setup.getNpcName("npc_harassment_assist", "first")>> to present themself.' 180 "<<set $scene.action_demo='present'>>">>]
</div>/*#
#desc: dom training - second action - present
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_demo>>
<<case 'feet'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<case 'spank'>>
<<applyExperience 'dominance' 15 'very' $SEEN_FRIEND>>
<<case 'present'>>
<<applyExperience 'dominance' 10 'very' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_naked_blindfold")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_demo>>
<<case 'feet'>>
You order <<=setup.getNpcName('npc_harassment_assist', 'first')>> to kiss your feet and they instantly drop to the ground, probing blindly for but a moment before commencing to not just kiss your shoes, but worship them with their tongue.<br>
<br>
"@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> for letting this slave serve at your feet. I have wanted to bow to you for so long, and to do so feels even better than I had imagined.@@"
<<case 'spank'>>
You inform <<=setup.getNpcName('npc_harassment_assist', 'first')>> that you wish to give them a spanking and they dutifully bend over your knee.<br>
<br>
"@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> for the touch of your hand — do you wish me to keep count of each wonderful blow?@@"<br>
<br>
You tell <<=setup.getNpcName('npc_harassment_assist', 'first')>> that that is a wonderful idea and then begin spanking their cute butt. Their bottom is perfectly soft, a delight to your hand... almost as delightful as their half-moaned counts, and the way <<=setup.getNpcName('npc_harassment_assist', 'first')>> says "@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>@@" after each blow.<br>
<br>
You give <<=setup.getNpcName('npc_harassment_assist', 'first')>> ten spanks — five on each cheek and then guide them to stand back up. If you don't miss your guess <<=setup.getNpcName('npc_harassment_assist', 'first')>> is breathing even heavier now than when they were encumbered by the gag and the stringent bondage. "@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>. This warmth in my bottom makes me even more motivated to be your perfect slave.@@"
<<case 'present'>>
You command <<=setup.getNpcName('npc_harassment_assist', 'first')>> to present themself.<br>
<br>
"@@.npc_harassment_assist;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>.@@" They respond with a formal curtsy before placing their arms behind their back, thrusting out their flat chest and spreading their legs to make clear they are hiding nothing. "@@.npc_harassment_assist;Please, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> — <<=setup.getNpcName('npc_harassment', 'formal')>> has remanded me to your custody, her request is that I be used harshly as you desire so that you may learn as much as possible.@@"<br>
<<default>>
ERROR: unexpected scene.action_demo <<=$scene.action_demo>>
<</switch>>
<br><br>
You glance over to see <<=setup.getNpcName('npc_manager', 'formal')>> nodding. Seems it is time to move on to the next part of the lesson.<br>
<br>
"@@.npc_manager;Now we are going to do some practice scenarios. This first one will be a bit of a stretch given how utterly submissive and adorable <<=setup.getNpcName('npc_harassment_assist', 'first')>> is, but we are going to pretend that they have misbehaved in some way. Let us say they messed up your lunch delivery order. <<if $npc_manager.wrongfood == 0>>Quite the failure, even you were not that sloppy, even back to the beginning.<<elseif $npc_manager.wrongfood == 1>>You remember the time you did that? And how well my lesson kept you from making such an error ever again?<<else>>Perhaps you can show what would keep you from making any more errors in that regard?<</if>>@@"<br>
<br>
[<<moveTo "event_manager_dom_class_6" 'Spank <<=setup.getNpcName("npc_harassment_assist", "first")>>.' 180 "<<set $scene.action_punish='spank'>>">>]<br>
[<<moveTo "event_manager_dom_class_6" 'Verbally berate <<=setup.getNpcName("npc_harassment_assist", "first")>> harshly.' 180 "<<set $scene.action_punish='verbal'>>">>]<br>
[<<moveTo "event_manager_dom_class_6" 'Use <<=ps(setup.getNpcName("npc_harassment_assist", "first"))>> chastity device to electrically punish them.' 180 "<<set $scene.action_punish='electric'>>">>]<br>
[<<moveTo "event_manager_dom_class_6" 'Apologise to <<=setup.getNpcName("npc_harassment_assist", "first")>> for your failure to properly instruct them as to their required duties.' 180 "<<set $scene.action_punish='apology'>>">>]
</div>/*#
#desc: dom training - third action - punish
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_punish>>
<<case 'spank'>>
<<applyExperience 'dominance' 14 'normal' $SEEN_FRIEND>>
<<case 'verbal'>>
<<applyExperience 'dominance' 13 'insignificant' $SEEN_FRIEND>>
<<case 'electric'>>
<<applyExperience 'dominance' 15 'very' $SEEN_FRIEND>>
<<case 'apology'>>
<<applyExperience 'dominance' 18 'unbelievable' $SEEN_FRIEND>>
<<applyStress 5>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_naked_blindfold")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_punish>>
<<case 'spank'>>
You inform <<=setup.getNpcName('npc_harassment_assist', 'first')>> that their misbehaviour means they are due for a spanking.<br>
<br>
<<if $scene.action_demo == 'spank'>>
"@@.npc_harassment_assist;Another one?@@" They state with glee, completely incapable of keeping the excitement out of their voice.
<<else>>
"@@.npc_harassment_assist;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>.@@" They reply, bending over your knee with perhaps too much enthusiasm.
<</if>>
<br><br>
Their tight bottom is quite the delight to spank — and they even dutifully count and speak with increasingly arousal the words"@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>@@" after each blow.<br>
<br>
You make sure their bottom is a nice even red before returning them to their feet and asking if they have learned their lesson. "@@.npc_harassment_assist;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> — in the future I will remember that, if I screw up your order, I get spankies.@@"<br>
<br>
You're glad that <<=setup.getNpcName('npc_harassment_assist', 'first')>> is still blindfolded because you are unable to control your expression in reaction to being pretty certain that you just "failed" on the whole punishment aspect...
<<case 'verbal'>>
You begin verbally berating <<=setup.getNpcName('npc_harassment_assist', 'first')>> for their stupidity, calling them a "@@.pc;Worthless bimbo slut, brainless, stupid and good as little more than a cum dump.@@"<br>
<br>
Rather than appearing shocked by your harsh language <<=setup.getNpcName('npc_harassment_assist', 'first')>> waits patiently for you to complete before, standing at near-perfect attention replying, "@@.npc_harassment_assist;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>. Thank you for reminding this gutter-whore of their place in the world. There can be no excuse for this stupid slave's actions and you should continue to treat them as a thing rather than grace them with the slightest kindness or human sympathy. I exist to serve, and in failing to do so deserve harsh punishment.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
You're almost taken aback at <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> words... their description making you want to cut the lesson short and join them. After all, you are so much more experienced as a submissive and you feel a bit jealous not being the target of harsh judgement.
<<else>>
<<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> words punch some of your own submissive buttons and you take a moment to catch your breath as you wait to find out the next lesson.
<</if>>
<<case 'apology'>>
You sigh, and begin to gently apologise to <<=setup.getNpcName('npc_harassment_assist', 'first')>> for not giving them clearer instructions, and thus setting them up for failure.<br>
<br>
Even with the blindfold in place you can tell that your words have them wide-eyed in the moment before they drop to the ground, hugging your leg and pleading for mercy.<br>
<br>
"@@.npc_harassment_assist;Please, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>. Do not blame yourself, the fault lies entirely with this slave. Do not apologise, take your frustrations out on me — flog me, bind me, <<if $fetish.piss>>make me work the rest of the week in the executive bathroom, <</if>>deny and ruin my orgasms, send me for a weekend with <<=setup.getNpcName("npc_discipline","formal")>> with no safeword, but please, please, do not apologise. The fault is entirely this slave's and this slave promises to do whatever it takes to make it up to you.@@"<br>
<br>
You are momentarily taken aback by the desperate fervour of their response, finally managing to re-assure them that they will be given more opportunities to serve — but that you will be quick with the whip should they make any further errors.<br>
<br>
"@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>@@" they reply as they return to their feet, a few tears staining their cheeks as their head remains down-turned. "@@.npc_harassment_assist;This slave will accept the lesson of each lash gleefully if it will make me a better slave just, please, do not assume responsibility for this slave's failures. Credit goes to you, but all blame lies with this slave for failing to live up to your divine expectations.@@"
<<case 'electric'>>
You turn to <<=setup.getNpcName('npc_manager', 'formal')>> and quietly ask for the controls to <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> chastity device. <<=setup.getNpcName('npc_manager', 'formal')>> smirks in amusement and indicates which buttons are used to administer shocks.<br>
<br>
Remaining remarkably still standing at attention <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> only reaction to what you <<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>know must be<<else>>are certain are<</if>> quite painful shocks is to suck in a quick breath and then softly, if somewhat breathlessly, reply "@@.npc_harassment_assist;Thank you <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>. This slave will be certain not to fail you in the future.@@"
<<default>>
ERROR: unexpected scene.action_punish <<=$scene.action_punish>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> waits a few moments for <<=setup.getNpcName('npc_harassment_assist', 'first')>> to reset before signaling for the training to continue.<br>
<br>
"@@.npc_manager;Now let us move on to, perhaps, a more realistic scenario. <<=setup.getNpcName('npc_harassment_assist', 'first')>> has been so diligent as to have been awarded Employee of the Month — how will you reward their hard work?@@"<br>
<br>
[<<moveTo "event_manager_dom_class_7" 'Congratulate <<=setup.getNpcName("npc_harassment_assist", "first")>> and give them a pay raise.' 180 "<<set $scene.action_reward='raise'>>">>]<br>
[<<moveTo "event_manager_dom_class_7" 'Spank <<=setup.getNpcName("npc_harassment_assist", "first")>>.' 180 "<<set $scene.action_reward='spank'>>">>]<br>
[<<moveTo "event_manager_dom_class_7" 'Use <<=ps(setup.getNpcName("npc_harassment_assist", "first"))>> chastity device to give them pleasurable vibrations.' 180 "<<set $scene.action_reward='vibe'>>">>]<br>
[<<moveTo "event_manager_dom_class_7" 'Release <<=setup.getNpcName("npc_harassment_assist", "first")>> from chastity for the weekend.' 180 "<<set $scene.action_reward='chastity'>>">>]<br>
[<<moveTo "event_manager_dom_class_7" 'Kiss <<=setup.getNpcName("npc_harassment_assist", "first")>> and tell them how proud you are of their efforts.' 180 "<<set $scene.action_reward='proud'>>">>]
</div>/*#
#desc: dom training - fourth action - reward
#status: RELEASED 0.8.6.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_reward>>
<<case 'raise'>>
<<applyExperience 'dominance' 5 'insignificant' $SEEN_FRIEND>>
<<case 'spank'>>
<<applyExperience 'dominance' 15 'terrible' $SEEN_FRIEND>>
<<case 'chastity'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<case 'vibe'>>
<<applyExperience 'dominance' 9 'normal' $SEEN_FRIEND>>
<<case 'proud'>>
<<applyExperience 'dominance' 13 'very' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_naked_blindfold")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_reward>>
<<case 'raise'>>
You praise <<=setup.getNpcName('npc_harassment_assist', 'first')>> for their performance and note that you will be raising their salary in compensation for their proven efficiency going forward.<br>
<br>
Several moments pass before they reply with a soft, "@@.npc_harassment_assist;Oh... um, thank you <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>. I guess I can use it to buy some more cute outfits, if that would please you?@@"<br>
<br>
You suppress a sigh, it seems that<<if setup.getAverageSecStyle() == "money">>, unlike yourself,<</if>> <<=setup.getNpcName('npc_harassment_assist', 'first')>> is not particularly economically motivated. You reply that their idea would be fine and then glance towards <<=setup.getNpcName('npc_manager', 'formal')>> in hopes of moving on to the next lesson.
<<case 'spank'>>
<<if $scene.action_punish == "spank" && $scene.action_demo == "spank">>
For the third time you order <<=setup.getNpcName('npc_harassment_assist', 'first')>> to bend over your knee... and they remain just as enthusiastic as prior.<br>
<br>
<<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> pert bottom is already a deep red and you put some extra force into things to make sure they feels it and <<=setup.getNpcName('npc_harassment_assist', 'first')>> shows their appreciation of the effort with each moaning count and gasped "@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>.@@"
<<elseif $scene.action_punish == "spank">>
You catch sight of <<=setup.getNpcName('npc_manager', 'formal')>> raising an eyebrow at you punishing and rewarding <<=setup.getNpcName('npc_harassment_assist', 'first')>> both with spankings.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> doesn't seem to mind, moaning a count and passionately saying "@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>@@" after each blow.
<<elseif $scene.action_demo == 'spank'>>
You may have warmed <<=setup.getNpcName('npc_harassment_assist', 'first')>> up with a spanking, but that just means their bottom is red and sensitive as you bend them over your knee for a reward.<br>
<br>
"@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>,@@" they moan with each blow, clearly quite happy to be getting another spanking.
<<else>>
You order <<=setup.getNpcName('npc_harassment_assist', 'first')>> to bend over your knee and they gleefully obeys. "@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>?@@" They ask and you confirm.<br>
<br>
They pretty bum is soft and smooth and an utter delight to spank... almost as delightful as their moans of lust, pain clearly pleasure as they count each blow and follow up with "@@.npc_harassment_assist;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>!@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> is back on their feet; cheeks are almost as red as their bottom as they wiggles in delight at the reward you administered.
<<case 'chastity'>>
You tell <<=setup.getNpcName('npc_harassment_assist', 'first')>> that, in reward for their work, you will remove their chastity belt for the remainder of the weekend.<br>
<br>
The room is so silent you could hear a pin drop, the awkwardness finally broken by <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> frantic words. "@@.npc_harassment_assist;What did I do wrong? Did I show someone up? Please, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>! Don't leave me unlocked and unfilled, it would be cruel! I need my belt! Throw away the key if you must but don't take it away!@@"<br>
<br>
<<if setup.getTotalValue("submission") > 15 && setup.getTotalValue("bondage") > 15 && $player.sec_style.submission.permanent_key != "">>
You immediately understand <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> concern as you reflect on how you would react to such a "reward" yourself.
<<elseif setup.getTotalValue("submission") > 10 && setup.getTotalValue("bondage") > 10 && $player.sec_style.submission.permanent_key != "">>
A part of you understands <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> concern... perhaps TOO well.
<<else>>
You are a bit taken aback by <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> obvious objection
<</if>>
You take a minute to re-assure them that this was just a "test" and, of course, their beloved belt will remain locked where it is — after all, they would be out of uniform without it!<br>
<br>
<<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> sighs with relief, not even enquiring as to an alternate reward.
<<case 'vibe'>>
<<if $scene.action_punish == 'electric'>>
Once again you
<<else>>
You
<</if>>
ask <<=setup.getNpcName('npc_manager', 'formal')>> to borrow the remote control to <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> chastity device.<br>
<br>
A press of a button and <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> legs go rubbery — the vibrations in their rear so strong you can hear them from almost a metre away. You vary the size of the integrated chastity plug and explore the full breadth of pleasurable stimulation the belt can administer. It takes barely a minute before <<=setup.getNpcName('npc_harassment_assist', 'first')>> is a moaning, barely-standing mess and <<=setup.getNpcName('npc_manager', 'formal')>> reclaims the control.<br>
<br>
"@@.npc_manager;We do not wish to reward them TOO much — <<=setup.getNpcName('npc_harassment', 'first')>> is quite stingy when it comes to her slave's orgasms. Make this poor thing cum now and they will be seeing harsh denial for the next month!@@"<br>
<br>
"@@.npc_harassment_assist;Th-thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>,@@" <<=setup.getNpcName('npc_harassment_assist', 'first')>> gasps. You are uncertain whether the gratitude is for the stimulation, or the reprieve.
<<case 'proud'>>
With pride in your voice you tell <<=setup.getNpcName('npc_harassment_assist','first')>> how happy you are about their performance, how the efforts shown at work reflect wonderfully on their training and make you even prouder to call them your slave.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist','first')>> practically glows, straightening up onto the balls of their feet as they lower into a deep curtsy. "@@.npc_harassment_assist;I do it all for you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I'm going to try to work twice as hard next month to prove my adoration.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and nods at you, giving you a submissive buzz of your own to reinforce the lesson that a kind word can make for the best reward of all.
<<default>>
ERROR: unexpected scene.action_reward <<=$scene.action_reward>>
<</switch>>
<br><br>
"@@.npc_manager;You may remove <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> blindfold now. Today's lesson is at an end and I want them to hear my conclusions before giving their own feedback.@@"<br>
<br>
You do as ordered, <<=setup.getNpcName('npc_harassment_assist', 'first')>> blinks twice before looking over and noticing <<=setup.getNpcName('npc_manager', 'formal')>>. "@@.npc_harassment_assist;<<=setup.getNpcName('npc_manager', 'formal')>>!@@" They state while dropping into a deep curtsy. "@@.npc_harassment_assist;Thank you for binding me earlier, I always love how tight you make my body strain. And thank you for trusting me to assist your Secretary with her training.@@"<br>
<br>
"@@.npc_manager;Of course, my dear, I know I can always trust you to be the picture of cute obedience. You serve your <<=setup.getNpcName('npc_harassment', 'custom', 'Mistress')>> well.@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> straightens with pride as <<=setup.getNpcName('npc_manager', 'formal')>> turns back to you.<br>
<br>
"@@.npc_manager;Now, as to your overall performance...@@"<br>
<br>
<<if $scene.action_introduce == "introduce" && $scene.action_demo == "present" && $scene.action_punish == "apology" && $scene.action_reward == "proud">>
[<<moveTo "event_manager_dom_class_8_perfect" 'Listen to the assessment.' 180>>]
<<else>>
[<<moveTo "event_manager_dom_class_8" 'Listen to the assessment.' 180>>]
<</if>>
</div>/*#
#desc: dom training - judgement from manager
#status: RELEASED 0.8.6.0
#ignore_spell: d,s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles proudly. "@@.npc_manager;I must say, you are developing into quite a clever, reserved dominant. Introducing yourself to your temporary slave demonstrated confidence, and leaving them bound meant that it happened while taking advantage of all the wonderful aspects we previously discussed. Your initial order was an excellent choice for an experienced submissive, as it gave them the opportunity to show their skills, and let them know that your expectations where high rather than letting them coast through on mere rote obedience. Apologising for their failure was a stroke of almost cruel genius, a technique, again, only appropriate for an experienced slave, but one that you saw can be quite effective. Far moreso than a mere flogging, especially for a pain-slut like <<=setup.getNpcName('npc_harassment_assist', 'first')>>. This psychological approach finished off with their reward — once again exercising a delicate touch leveraging pre-existing training rather than trying to pressure with brute force. Obviously your techniques would need to change to manage a more novice submissive, but from what I saw today I believe you are excellently positioned to inspire, and retain, fanatical loyalty of any true submissive lucky enough to be claimed by you.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> turns towards <<=setup.getNpcName('npc_harassment_assist', 'first')>>. "@@.npc_manager;So, now that you have had my perspective as a dominant, it is time for you to hear the perspective of your submissive — always remember that, at its most fundamental core, D/s is about communication. Certainly you can override a submissive — particularly if they are being a brat, but you should always be cognisant of what they have to say, as well as what they are thinking but have not yet put to voice.@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> blushes as they are once again the centre of attention.<br>
<br>
<<if $scene.action_introduce == "introduce" && $scene.action_demo == "present" && $scene.action_punish == "electric" && $scene.action_reward == "proud" || $scene.action_introduce == "tease" && $scene.action_demo == "spank" && $scene.action_punish == "electric" && $scene.action_reward == "vibe">>
[<<moveTo "event_manager_dom_class_9_perfect" 'Listen to what <<=setup.getNpcName("npc_harassment_assist", "first")>> has to say.' 180>>]
<<else>>
[<<moveTo "event_manager_dom_class_9" 'Listen to what <<=setup.getNpcName("npc_harassment_assist", "first")>> has to say.' 180>>]
<</if>>
</div>/*#
#desc: dom training - judgement from manager
#status: RELEASED 0.8.6.0
#ignore_spell: d,s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.action_introduce == "release" && $scene.action_demo == "feet" && $scene.action_punish == "verbal" && $scene.action_reward == "raise">>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns. "@@.npc_manager;Unfortunately your performance... well, it was quite terrible. Even after we discussed the benefits of bondage you failed to take advantage of the slave's starting position, your introduction was the most cliche thing imaginable, your "punishment" was more crude than anything, and you gave out a reward that was mundane and of little real interest to the submissive. I am sure you still learned quite a bit today, but your performance was lacking and I advise you to spend more time practicing if you intend to continue pursuing a dominant path.@@"
<<elseif $scene.action_introduce == "tease" && $scene.action_demo == "spank" && $scene.action_punish == "electric" && $scene.action_reward == "spank">>
<<=setup.getNpcName('npc_manager', 'formal')>> has an evil grin on your face. "@@.npc_manager;I must say, the cruelty on display today... well, I suppose it is true what they say about the quiet ones. Behind that cute exterior, well... the iron fist in the velvet glove seems an apt metaphor — from introducing yourself with teasing and a spanking, to employing the most physically painful punishment at your disposal... and casting a spanking as a reward! It would seem that you are quite the sadist... which can be just the thing for a certain category of pain-slut slave.@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns. "@@.npc_manager;Your performance lacked for a cohesive theme — quite the problem, really, since one of the most important things to show to a submissive is confidence and consistency. So, rather than assessing things as a whole, I will run through each of your actions individually.@@"<br>
<br>
<<switch $scene.action_introduce>>
<<case 'introduce'>>
"@@.npc_manager;Introducing yourself while your slave remained bound showed great confidence, and excellently put them into the headspace that they were commencing a scene.@@"
<<case 'tease'>>
"@@.npc_manager;Teasing your bound slave as an introduction showed quite the mischievous streak, but remember for the future that it can be a risky move to get a slave wound up so early.@@"
<<case 'release'>>
"@@.npc_manager;You started things off on quite the wrong foot — removing a slave's bindings without even introducing yourself? In some scenarios that can be flat out dangerous, in this one it was merely disappointing, for all involved.@@"
<</switch>>
<br><br>
<<switch $scene.action_demo>>
<<case 'feet'>>
"@@.npc_manager;I will confess that your initial order was... uninspired. Certainly a slave kissing their dominant's feet is a classic, but I was hoping you would try to impress me, rather than re-enact the basics.@@"
<<case 'spank'>>
"@@.npc_manager;Introducing yourself with a spanking was something of a cruel move, more a technique to use if the scene is to teach a lesson. While maintenance punishments have their place, too much can leave a slave timid and jumpy, or so addicted to pain as to make further punishment a challenge. The goal is to build a slave up to have confidence in their submission, and pride in your ownership.@@"
<<case 'present'>>
"@@.npc_manager;Your first order for <<=setup.getNpcName('npc_harassment_assist', 'first')>> to present themself was a brilliant move — in a few short words you established that you had high expectations, and the confidence that they knew how to submit and you were just there to grant them that opportunity.@@"
<</switch>>
<br><br>
<<switch $scene.action_punish>>
<<case 'spank'>>
"@@.npc_manager;While a spanking is always a fine punishment I will confess I felt the choice a bit pedestrian as I had hoped you would take the opportunity to do something a bit more experimental.@@"
<<case 'verbal'>>
"@@.npc_manager;Your choice of punishment, well... it was vulgar and uninspired. I would have hoped that, after all the punishments you have seen me perform, you would be a bit better at such, but, instead you dropped a cliche monologue straight out of a poorly written porno, highly disappointing.@@"
<<case 'electric'>>
"@@.npc_manager;Your choice of punishment was arguably sadistic, but an excellent use of the equipment at hand. And, I believe, you have gained a fresh appreciation of why I insist on having you at my remote beck and call?@@"
<<case 'apology'>>
"@@.npc_manager;Your choice of punishment was, frankly, inspired. Using the slave's own psychology against them... beautifully done. Obviously a situational skill but deployed as you did showed quality insight, the sort of judgement that can be used to push a submissive to new depths of submission, very good.@@"
<</switch>>
<br><br>
<<switch $scene.action_reward>>
<<case 'raise'>>
"@@.npc_manager;Your choice of reward was... well, pedestrian is putting it lightly. While our own relationship may have partially started due to economic necessity dominance is about attitude and action, not opening a chequebook.@@"
<<case 'spank'>>
"@@.npc_manager;Spanking as a reward is certainly something that can work<<if $scene.action_punish=='spank'>> though, not immediately after you used same as punishment<<elseif $scene.action_demo == "spank">> though doing so after you had used it as an introduction is... uncreative, at best<<else>>, though, I think, ill-suited to this scenario<</if>>. Given the situation at hand, and other options available to you... well, it was an uninspired choice.@@"
<<case 'chastity'>>
"@@.npc_manager;Your offer of chastity speaks to a... primitive understanding of the levels of submission. Rewards should be calibrated to the slave involved, certainly I once dangled a key in front of you to lead you on, but that was because you were a novice, lacking in understanding of your own submission. As you saw today, such an offer given to a more advanced submissive can become a punishment. And vice versa<<if $scene.action_punish == "spank">> — recall your first punishment was a spanking, which<<else>>, of course. A spanking<</if>> is something that <<=setup.getNpcName('npc_harassment_assist', 'first')>> here could easily appreciate as a reward.@@"
<<case 'vibe'>>
"@@.npc_manager;Your selection of reward methods showed a solid grasp of using the tools at hand<<if setup.checkItemTypeWorn("cage")>> — and, I imagine, reflects an understanding of why I insist you are similarly equipped whenever you are at the office<</if>>.@@"
<<case 'proud'>>
"@@.npc_manager;Your choice of reward demonstrated a very deep understanding of the psychology of an advanced submissive — understandable, given your own experience. Very well done, but know that this was a case of the right act for the right submissive. A more novice slave would likely require a more direct, less cerebral approach.@@"
<</switch>>
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> turns towards <<=setup.getNpcName('npc_harassment_assist', 'first')>>. "@@.npc_manager;So, now that you have had my perspective as a dominant, it is time for you to hear the perspective of your submissive — always remember that, at its most fundamental core, D/s is about communication. Certainly you can override a submissive — particularly if they are being a brat, but you should always be cognisant of what they have to say, as well as what they are thinking but have not yet put to voice.@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> blushes as they are once again the centre of attention.<br>
<br>
<<if $scene.action_introduce == "introduce" && $scene.action_demo == "present" && $scene.action_punish == "electric" && $scene.action_reward == "proud" || $scene.action_introduce == "tease" && $scene.action_demo == "spank" && $scene.action_punish == "electric" && $scene.action_reward == "vibe">>
[<<moveTo "event_manager_dom_class_9_perfect" 'Listen to what <<=setup.getNpcName("npc_harassment_assist", "first")>> has to say.' 180>>]
<<else>>
[<<moveTo "event_manager_dom_class_9" 'Listen to what <<=setup.getNpcName("npc_harassment_assist", "first")>> has to say.' 180>>]
<</if>>
</div>/*#
#desc: dom training - perfect feedback from npc_harassment_assist
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_harassment_assist', 'first')>> turns to <<=setup.getNpcName('npc_harassment_assist', 'first')>>. "@@.npc_manager;So, what are your thoughts? How could <<=$player.first_name>> have more effectively dominated you?@@"<br>
<br>
<<if $scene.action_introduce == "introduce" && $scene.action_demo == "present" && $scene.action_punish == "electric" && $scene.action_reward == "proud">>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> grins. "@@.npc_harassment_assist;<<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> was perfect! From how they introduced themself, to putting me on the spot, to using my belt to punish me and then that wonderful reward at the end!@@" They practically swoon. "@@.npc_harassment_assist;This morning has been simply perfect!@@"
<<elseif $scene.action_introduce == "tease" && $scene.action_demo == "spank" && $scene.action_punish == "electric" && $scene.action_reward == "vibe">>
You note that <<=setup.getNpcName('npc_harassment_assist', 'first')>> is still catching their breath. "@@.npc_harassment_assist;Physically demanding — from the very beginning my body was being worked. A perfect start to a Saturday, but I'm definitely looking forward to some more bondage to help me calm down.@@"
<<else>>
ERROR: unexpected state!
<</if>>
<br><br>
You mull over the two contrasting perspectives and, again, thank <<=setup.getNpcName('npc_harassment_assist', 'first')>> for their time.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> crosses one leg behind the other for a picture-perfect adorable curtsy. "@@.npc_harassment_assist;Of course! I am always happy to serve...@@" <<=setup.getNpcName('npc_harassment_assist', 'first')>> pauses and then turns towards <<=setup.getNpcName('npc_manager', 'formal')>> as they reflexively address the REAL power in the room. "@@.npc_harassment_assist;Say — could <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> package me up for the trip home? <<=setup.getNpcName('npc_harassment', 'formal')>> said I would be coming back to her via inter-office slave-mail and... I'm really looking forward to being securely packaged up...@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> grins and pushes a box out from behind her desk. "@@.npc_manager;Of course.@@"<br>
<br>
[<<moveTo "event_manager_dom_class_10" 'Package <<=setup.getNpcName("npc_harassment_assist", "first")>> up.' 600>>]
</div>/*#
#desc: dom training - feedback from npc_harassment_assist
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment","npc_harassment_assist_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_harassment_assist', 'first')>> turns to <<=setup.getNpcName('npc_harassment_assist', 'first')>>. "@@.npc_manager;So, what are your thoughts? How could <<=$player.first_name>> have more effectively dominated you?@@"<br>
<br>
<<if $scene.action_introduce == "introduce" && $scene.action_demo == "feet" && $scene.action_punish == "verbal" && $scene.action_reward == "spank">>
"@@.npc_harassment_assist;To be honest? It was kind of cliche. Like, it felt like we were following some sort of porn script, which is great, but submission is so much better when it's more personal and intimate, something shared between the participants rather than playing to some external audience.@@"
<<elseif $scene.action_demo == "spank" && $scene.action_punish == "spank" && $scene.action_reward == "spank">>
"@@.npc_harassment_assist;Well... I love being spanked, so... I guess I enjoyed it? But taking a step back I guess it got a little repetitive. I'm more than a cute butt to paddle! Like, I enjoy face-slaps and tight bondage and face sitting and choking on cock too!@@"
<<elseif $scene.action_introduce == "tease" && $scene.action_demo == "present" && $scene.action_punish == "apology" && $scene.action_reward == "proud">>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> sighs. "@@.npc_harassment_assist;To tell you the truth? It got a little intense. I mean, I was planning on doing my best, but I was still expecting more of a simulation. The way you played with my mind... well, any slave you take is in for a really intense time, I'm a bit jealous... and a little scared.@@"
<<elseif $scene.action_reward == "release">>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> frowns. "@@.npc_harassment_assist;Sorry but... the whole thing just got off on such the wrong foot, that bondage position was so deliciously intense... and then I was being released without any prelude or fanfare... it really took me out of the proper headspace.@@"
<<elseif $scene.action_reward == "chastity">>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> frowns. "@@.npc_harassment_assist;Sorry but... threatening to remove my chastity belt? Even in practice? No, that was really scary and I didn't like it at all.@@"
<<elseif $scene.action_reward == "raise">>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> frowns. "@@.npc_harassment_assist;Sorry but... offering me a raise? I'm a slave, dammit! Like, sure, okay, I technically pull a salary but that's not sexy! That'd be like if my <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> lectured me on tax law! Ugh.@@"
<<else>>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> thinks for a few moments. "@@.npc_harassment_assist;No, like... nothing really stood out to me, overall. I think you're on track, you just need more practice and experience.@@"
<</if>>
<br><br>
You mull over the two contrasting perspectives and, again, thank <<=setup.getNpcName('npc_harassment_assist', 'first')>> for their time.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> crosses one leg behind the other for a picture-perfect adorable curtsy. "@@.npc_harassment_assist;Of course! I am always happy to serve...@@" <<=setup.getNpcName('npc_harassment_assist', 'first')>> pauses and then turns towards <<=setup.getNpcName('npc_manager', 'formal')>> as they reflexively address the REAL power in the room. "@@.npc_harassment_assist;Say — could <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> package me up for the trip home? <<=setup.getNpcName('npc_harassment', 'formal')>> said I would be coming back to her via inter-office slave-mail and... I'm really looking forward to being securely packaged up...@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> grins and pushes a box out from behind her desk. "@@.npc_manager;Of course.@@"<br>
<br>
[<<moveTo "event_manager_dom_class_10" 'Package <<=setup.getNpcName("npc_harassment_assist", "first")>> up.' 600>>]
</div>/*#
#desc: dom training - package up npc_harassment_assist and leave
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_dom_progress'
6
'theme_manager_dom_progress_1'
true
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"Inter-office slave-mail" turns out to be zipping <<=setup.getNpcName('npc_harassment_assist', 'first')>> into a full-body catsuit and then folding them up into a small box, complete with straps, padded cuffs, and a plug stuffed deep in either end to keep them from "shifting" during transit before the entire assembly is filled with a light packing foam.<br>
<br>
With a smile <<=setup.getNpcName('npc_manager', 'formal')>> programs <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> toys for what looks like a sequence of twenty minute edging cycles, hitting start as she winks at you and you hear a soft moan escape from the box.<br>
<br>
"@@.npc_manager;So, I hope you have many useful take-aways from today's lesson, and good luck in deploying these techniques, and others, in your continued practice. I advise practicing with a slave of your own. When you think you have fully mastered things, well... talk to me and we shall see.@@"<br>
<br>
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for her time and, with a final glance back towards <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> crate waiting for pickup, you head for the elevator back down to the lobby.<br>
<br>
[<<moveTo "room_citymap" 'Leave the building.' 900>>]
</div>/*#
#desc: manager theme: your dominance skills
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up your developing skills at dominance.<br>
<br>
<<if State.hasPlayed("event_dom_training_technician_1")>>
"@@.npc_manager;Yes, I recall... I would quite enjoy spending a bit more time observing you "in action" with your slave, as it were.@@"<br>
<br>
<<if $npc_technician.relationship.her_role == "dom">>
[@@.link_locked;<<=setup.getNpcName("npc_technician","first")>> is not presently your slave, you should come back sometime after you've switched things up again.@@]<br>
<<elseif $npc_technician.flags.evil == 1>>
[@@.link_locked;<<=setup.getNpcName("npc_technician","first")>> is hardly your slave in her current evil state.@@]<br>
<<else>>
[<<moveTo "event_dom_training_technician_1" "Of course!" 120 "<<set $scene.accept=true>>">>]<br>
<</if>>
[<<moveTo "event_dom_training_technician_1" "Maybe some other time..." 120 "<<set $scene.accept=false>>">>]
<<else>>
"@@.npc_manager;Yes...@@" <<=setup.getNpcName("npc_manager","formal")>> says with a smile, the energy infused into that single word enough to remind you who the TRUE master — or Mistress, rather, of dominance is.
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
"@@.npc_manager;I have seen your progress, personally... though I imagine you wanted to talk about some outside of work efforts? Tell me, have you found a slave of your own?@@"
<<else>>
"@@.npc_manager;Getting in some practice outside of work? Tell me, have you found a slave of your own?@@"
<</if>>
<br><br>
<<if $npc_technician.flags.evil == 1>>
[@@.link_locked;More than anything else <<=setup.getNpcName("npc_technician","first")>> is currently evil...@@]<br>
<<elseif $npc_technician.relationship.her_role == "sub">>
<<if $npc_technician.relationship.her_collared>>
[<<moveTo "theme_manager_dom_progress_2" "Yes — and you've collared her, as well!" 120 "<<set $scene.slave=true>>">>]<br>
<<else>>
[<<moveTo "theme_manager_dom_progress_2" "Yes you do!" 120 "<<set $scene.slave=true>>">>]<br>
<</if>>
<<elseif $npc_technician.relationship.unlock_sub>>
[@@.link_locked;<<=setup.getNpcName("npc_technician","first")>> may have been your slave in the past, but you have since switched it up.@@]<br>
<<else>>
[@@.link_locked;You do not, in fact, have a slave of your own.@@]<br>
<</if>>
[<<moveTo "theme_manager_dom_progress_2" "Not yet..." 120 "<<set $scene.slave=false>>">>]<br>
<</if>>
</div>/*#
#desc: manager theme: whether you have a slave
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.slave>>
<<if $npc_technician.relationship.her_collared>>
You proudly state that you do not just have a slave, but a collared slave!<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> beams with pride. "@@.npc_manager;Wonderful! I would quite like to meet this lucky person...@@"<br>
<br>
You reply that, actually, <<=setup.getNpcName("npc_technician","first")>> works downstairs.<br>
<br>
<<if $npc_technician.relationship.keyholder>>
"@@.npc_manager;<<=setup.getNpcName("npc_technician","first")>>? You mean your <<=setup.getNpcName("npc_technician","title")>>? Who convinced me she could be trusted with your key?@@"<br>
<br>
You feel suddenly very embarrassed as <<=setup.getNpcName("npc_manager","formal")>> peers down at you only for her to break the tension with a soft laugh. "@@.npc_manager;Well! It would seem you are not the only cute, switchy little thing... given that she works downstairs, well... how about I summon her up and you can show her off?@@"
<<elseif State.hasPlayed("event_technician_key_request_1")>>
"@@.npc_manager;<<=setup.getNpcName("npc_technician","first")>>? The nice girl who tried to prove herself worthy of being your keyholder? Hmm... it seems like she was more the sub than the domme all along... lovely. How about I summon her up, I would so love to see you showing her off.@@"
<<elseif State.hasPlayed("event_work_broken_computer_3_tech")>>
"@@.npc_manager;<<=setup.getNpcName("npc_technician","first")>>? The nice girl who fixed my computer?@@"<br>
<br>
You feel suddenly very embarrassed as <<=setup.getNpcName("npc_manager","formal")>> peers down at you only for her to break the tension with a soft laugh. "@@.npc_manager;Well! It would seem you are not the only cute, switchy little thing... given that she works downstairs, well... how about I summon her up and you can show her off?@@"
<<else>>
"@@.npc_manager;Hmm, I would quite like to meet this girl. How about I summon her up and you can show her off?@@"
<</if>>
<br><br>
[<<moveTo "event_dom_training_technician_1" "Of course!" 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_dom_training_technician_1" "Maybe some other time..." 120 "<<set $scene.accept=false>>">>]
<<else>>
You reply with pride that you have found yourself a slave.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles gently. "@@.npc_manager;That sounds quite lovely... perhaps once they have earned a collar you might introduce us? I would so like to see the end results of my training.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<if $npc_technician.relationship.her_role == "sub">>
You lie and state
<<else>>
You confess
<</if>>
that you do not presently have a slave of your own. <<=setup.getNpcName("npc_manager","formal")>>
<<if $npc_technician.relationship.her_role == "sub">>
looks at you with a hint of suspicions, but then
<</if>>
nods.<br>
<br>
"@@.npc_manager;I suppose we cannot all be so lucky as I am,@@" she notes with a wink that makes your insides feel funny as you are reminded that you remain very much her slave. "@@.npc_manager;Well, should things change, I would be quite interested in meeting the lucky girl, or boy, or other, whom you managed to ensnare.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: manager dominance checkup with npc_technician
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_manager","formal")>> has you summon your slave up to the office. While the two of you wait for <<=setup.getNpcName("npc_technician","first")>> to make the trek up the elevator <<=setup.getNpcName("npc_manager","formal")>> turns to ask you a question.<br>
<br>
"@@.npc_manager;So, when she arrives, how would you like me to refer to you? Obviously you remain under me, in all situations... but for the purpose of your slave would you like me to treat you as a fellow dominant and peer, or as my slave, and she yours, in a strict hierarchy.@@"<br>
<br>
While waiting for <<=setup.getNpcName("npc_technician","first")>> to ride the elevator up Antlers will ask how you would like to be "referred to" in front of your slave.<br>
<br>
[<<moveTo "event_dom_training_technician_1_peer_1" '<<=setup.getNpcName("npc_technician","first")>> should consider you and <<=setup.getNpcName("npc_manager","formal")>> as dominant "peers".' 300>>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_1" 'As <<=setup.getNpcName("npc_technician","first")>> is your slave, you are <<=ps(setup.getNpcName("npc_manager","formal"))>>, and you should both be treated accordingly.' 300>>]
<<else>>
You reply that you are not prepared to showcase your slave this evening.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Of course. Showing a slave before another dominant can be a high-stress situation for owner and slave alike, I would not wish either of you to be forced into such unless you were fully prepared. Perhaps in the future.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: manager dominance hierarchy intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You express your preference and <<=setup.getNpcName("npc_manager","formal")>> nods, replying "@@.npc_manager;very well, slave. We shall see if you have sufficiently trained your property to serve at the bottom of a hierarchy.@@"<br>
<br>
You shiver slightly as you stand patiently until there is a knock on the door and <<=setup.getNpcName("npc_technician","first")>> walks in.<br>
<br>
"@@.npc_manager;Hello, <<=setup.getNpcName("npc_technician","slave")>>. Your owner, my slave was describing you to me, and well... I just had to get a look.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip and nervously curtsies, glancing at you quickly before being drawn in by <<=setup.getNpcName("npc_manager","formal")>> dominant aura.<br>
<br>
"@@.npc_manager;Some ground rules — just as <<if $player.flags.collar.owner == "npc_manager">>I have collared <<=$player.first_name>><<else>><<=$player.first_name>> serves me,<</if>> so, too, have they collared and claimed you. Note that such a relationship is not intrinsically transitory. You are not required to obey my commands unless so ordered by your owner. While <<=$player.first_name>> is, of course, expected to obey me, that does not include violating the aforementioned rule, a command should only be relayed if they are in agreement, but orders or not, you remain at the bottom of this hierarchy, and will comport yourself accordingly. Do I make myself clear?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blinks, quickly parsing <<=ps(setup.getNpcName("npc_manager","formal"))>> somewhat convoluted instruction before nodding. "@@.npc_technician;Yes, <<=setup.getNpcName("npc_manager","formal")>>, I will show you the proper respect you are due, but any orders are to come from my owner, and your slave, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>.@@"<br>
<br>
"@@.npc_manager;Wonderful. How about we have a little test — of both your comprehension of instructions, and <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=ps($player.last_name)>> skills as you owner.@@"<br>
<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_2" "Nod." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_2" "Actually, your slave probably needs to return to her work." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: manager dominance hierarchy game start
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_technician","first")>> nods and stands at attention as <<=setup.getNpcName("npc_manager","formal")>> grins.<br>
<br>
"@@.npc_manager;Lovely, to start with, both of you strip.@@"<br>
<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_3" "Remove your clothing." 600 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_3" "Remain still." 180 "<<set $scene.obey=false>>">>]
<<else>>
You change your mind about this whole scene and tell <<=setup.getNpcName("npc_manager","formal")>> that <<=setup.getNpcName("npc_technician","first")>> really shouldn't be away from her desk for too long.<br>
<br>
"@@.npc_manager;Hmm, yes, I suppose the IT department is probably in need of their brightest worker... very well, you may dismiss your slave. Perhaps some other evening there will be enough time for us to have a spot of fun.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> curtsys obediently and thanks both yourself and <<=setup.getNpcName("npc_manager","formal")>> for "@@.npc_technician;the privilege of serving you... however briefly,@@" before slipping out of the office.<br>
<br>
"@@.npc_manager;A well-trained slave, and a clever one. Obedience chosen with intelligence and open eyes is such a lovely thing, now... was there anything else you wished to speak of today?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: manager dominance hierarchy game: you strip
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You obediently shed your clothes while <<=setup.getNpcName("npc_technician","first")>> remains standing motionlessly at attention.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Good, obedience, and understanding. Now, <<=$player.first_name>>, if you would instruct your slave to remove her clothing, as well. It seems a bit improper for her to be dressed while you are so deliciously exposed.@@"<br>
<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_4" "Relay the order." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_4" "Do not relay the order." 120 "<<set $scene.obey=false>>">>]
<<else>>
Neither you nor <<=setup.getNpcName("npc_technician","first")>> move and <<=setup.getNpcName("npc_manager","formal")>> frowns.<br>
<br>
"@@.npc_manager;Disappointing... it would seem that SOMEONE,@@" She pointedly looks down at you until you flinch, "@@.npc_manager;needs to practice balancing submission and dominance... I think that shall be all for today. Perhaps we can resume when the two of you are more practiced.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> shoots a look of sympathy at you as the two of you retreat, <<=setup.getNpcName("npc_technician","first")>> giving you a hug before she puts her clothes back on and hurries back to her desk, leaving you at yours.<br>
<br>
[<<moveTo "room_office_after_work" "Continue." 60>>]
<</if>>
</div>/*#
#desc: manager dominance hierarchy game: her strip
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'dominance' 15 'normal' $SEEN_FRIEND>>
<<else>>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.obey>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
"@@.pc;Strip, my dear,@@" you command and <<=setup.getNpcName("npc_technician","first")>> instantly obeys, down to nothing but her collar<<if $npc_technician.relationship.her_caged>> and chastity<</if>> in moments as <<=setup.getNpcName("npc_manager","formal")>> looks on with a smile.<br>
<br>
"@@.npc_manager;Delightful. Now, to keep things proper, if you would instruct your slave that she is to cum if and only if both of her superiors have achieved satisfaction. An excellent motivation for performance, I think.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> shivers submissively as you relay the command.<br>
<br>
"@@.npc_technician;Of course, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>, <<=setup.getNpcName("npc_manager","formal")>>. My duty of course, comes before my pleasure.@@" <<=setup.getNpcName("npc_technician","first")>> replies, curtsying to you and <<=setup.getNpcName("npc_manager","formal")>> in turn.<br>
<br>
"@@.npc_manager;Now,@@" <<=setup.getNpcName("npc_manager","formal")>> continues, "@@.npc_manager;if you would present your slave. Now that she is laid bare I wish to see her in full submissive glory, a testament to her obedience, and the authority of her owner.@@"<br>
<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_5" 'Order <<=setup.getNpcName("npc_technician","first")>> to kneel and present.' 120 "<<set $scene.action='kneel'>>">>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_5" 'Command <<=setup.getNpcName("npc_technician","first")>> to bow in supplication.' 120 "<<set $scene.action='bow'>>">>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_5" 'Instruct <<=setup.getNpcName("npc_technician","first")>> to stand and expose herself for inspection.' 120 "<<set $scene.action='stand'>>">>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_5" 'You are done exhibiting your slave for the day.' 120 "<<set $scene.action='abort'>>">>]
<<else>>
You remain silent and <<=setup.getNpcName("npc_manager","formal")>> frowns.<br>
<br>
"@@.npc_manager;Disappointing... it would seem that <<=$player.first_name>> is not quite ready to handle a hierarchical situation. In that case, I think that shall be all for today. Perhaps we can resume when your obedience is not so... distracted by the presence of a subordinate.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> shoots a look of sympathy at you as the two of you retreat, <<=setup.getNpcName("npc_technician","first")>> giving you a hug before she puts her clothes back on and hurries back to her desk, leaving you at yours.<br>
<br>
[<<moveTo "room_office_after_work" "Continue." 60>>]
<</if>>
</div>/*#
#desc: manager dominance hierarchy game: present
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == "abort">>
<<useClothSetPop 'tmp'>>
<<else>>
<<applyExperience 'dominance' 15 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "abort">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician","npc_technician_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "kneel">>
You command <<=setup.getNpcName("npc_technician","first")>> to kneel and she drops to the floor knees spread, hands on her thighs, sitting tall and proud as <<=setup.getNpcName("npc_manager","formal")>> nods in approval.<br>
<br>
"@@.npc_manager;A classic position, and perfectly executed. Yes, those breasts practically cry out for a nice cropping, those lovely lips quivering and ready for a gag... lovely indeed.@@"
<<case "bow">>
You command <<=setup.getNpcName("npc_technician","first")>> to bow and she goes low, fully prostrating herself on the floor in supplication. <<=setup.getNpcName("npc_manager","formal")>> nods in approval.<br>
<br>
"@@.npc_manager;Very nice, and utterly subordinate. An excellent choice when one is at the bottom of the command structure...@@"
<<case "stand">>
You command <<=setup.getNpcName("npc_technician","first")>> to stand and present and she moves into position, legs slightly spread and chin raised, with her elbows wide and her hands behind her neck, further drawing attention to her collar as she stands tall and proud — even rising up onto her toes in mimicry of the heels you know she struggles so hard with.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, seeming to sense <<=ps(setup.getNpcName("npc_technician","first"))>> vulnerability as she walks slowly around your slave until <<=setup.getNpcName("npc_technician","first")>> calves are trembling with exertion.<br>
<br>
"@@.npc_manager;It would seem <<=$player.first_name>> needs to spend some more time passing on the secrets of walking in heels... still, an admirable display, that any owner would be proud of.@@"
<<case "abort">>
You shake your head and excuse yourself that you have changed your mind about being prepared to exhibit your slave.<br>
<br>
"@@.npc_manager;I see, well, that is certainly your judgement to make. In that case, however... well, I believe we are done for the day. Thank you to the both of you, and I hope to conclude this scene at a later date. When you are both sufficiently prepared.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> shoots a look of sympathy at you as the two of you retreat. Once in the comparative privacy of the outer office you assure her that she did nothing wrong as you give her a hug before she puts her clothes back on and hurries back to her desk, leaving you at yours.<br>
<br>
[<<moveTo "room_office_after_work" "Continue." 60>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != "abort">>
<br><br>
With a grin that has your heart skip a beat, <<=setup.getNpcName("npc_manager","formal")>> ushers in the end-game.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_manager;Now, as lovely as a slave can be to look at, their purpose is their owners pleasure. Towards that end — <<=$player.first_name>> if you would kindly unlock your property? I would see how she pleasures her owner.@@"<br>
<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" 'Unlock your slave as instructed and present your rear.' 120 "<<set $scene.action='unlock'>><<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if !$player.virgin.vaginal>>
[@@.link_locked;You'd rather your first time be in a bit more intimate of a scenario.@@]<br>
<<elseif setup.checkItemTypeWorn("cage") && setup.isCage()>>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" 'Unlock your slave, and asked to be unlocked in turn, for "breeding."' 120 "<<set $scene.action='unlock'>><<set $scene.anal=false>>">>]<br>
<<else>>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" 'Unlock your slave for "breeding."' 120 "<<set $scene.action='unlock'>><<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
<<else>>
"@@.npc_manager;Now, as lovely as a slave can be to look at, their purpose is their owners pleasure. Towards that end — <<=$player.first_name>> if you would bend over and command your slave to pleasure you with that lovely skirt-stretcher of hers?@@"<br>
<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" 'Get bent over for <<=setup.getNpcName("npc_technician","first")>> to do your rear.' 120 "<<set $scene.action='penis'>><<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if !$player.virgin.vaginal>>
[@@.link_locked;You'd rather your first time be in a bit more intimate of a scenario.@@]<br>
<<elseif setup.checkItemTypeWorn("cage") && setup.isCage()>>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" 'Ask to be unlocked for "breeding."' 120 "<<set $scene.action='penis'>><<set $scene.anal=false>>">>]<br>
<<else>>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" 'Get in position for "breeding."' 120 "<<set $scene.action='penis'>><<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" "You're training her to be anal only, could she use a strap-on instead?" 120 "<<set $scene.action='strap'>><<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" "You're training her to be anal only, could she borrow a strap, and you be unlocked, for breeding?" 120 "<<set $scene.action='strap'>><<set $scene.anal=false>>">>]<br>
<<else>>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" "You're training her to be anal only, could she borrow a strap for breeding?" 120 "<<set $scene.action='strap'>><<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_dom_training_technician_1_hierarchy_6" "You think this might be a bit much for your slave..." 120 "<<set $scene.action='abort'>>">>]
<</if>>
</div>/*#
#desc: manager dominance hierarchy choose how npc_technician serves
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != "abort">>
<<set $scene.removeCage = !$scene.anal && setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.removePlug = $scene.anal && setup.checkItemTypeWorn("plug", true)>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "abort">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician","npc_technician_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'unlock'>>
You unlock your slave and <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> is instantly rock-hard and large with excitement.
<<case 'penis'>>
<<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> is hard, large, and dripping with excitement as you get into position to obey <<=ps(setup.getNpcName("npc_manager","formal"))>> order.
<<case 'strap'>>
You explain the situation to <<=setup.getNpcName("npc_manager","formal")>> and she smiles as she retrieves a strap-on — though, interestingly, not the one she has previously used on you — from her desk. <<=setup.getNpcName("npc_technician","first")>> bites her lip and drips <<if $npc_technician.relationship.her_caged>>through her cage<</if>> as you buckle the strap-on in place and get into position to obey <<=ps(setup.getNpcName("npc_manager","formal"))>> order.
<<case 'abort'>>
You reply that you would like to spend some additional time training your slave before putting her through something so intense. <<=setup.getNpcName("npc_manager","formal")>> smiles in amusement and nods.<br>
<br>
"@@.npc_manager;It is the prudent Mistress who knows their slave's limits better than they do themselves. Very well, perhaps we may take a try some other time.@@" With a nod <<=setup.getNpcName("npc_manager","formal")>> dismisses the two of you from the inner office.<br>
<br>
Back at your desk you and <<=setup.getNpcName("npc_technician","first")>> one another and you re-assure <<=setup.getNpcName("npc_technician","first")>> that you are proud of her performance before she gives you a hug and returns to her desk downstairs.<br>
<br>
[<<moveTo "room_office_after_work" "Continue." 60>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != "abort">>
<<if $scene.anal>>
You <<if $scene.removePlug>>remove your plug and <</if>>bend over, checking to make sure you're angled to give <<=setup.getNpcName("npc_manager","formal")>> the best view as <<=setup.getNpcName("npc_technician","first")>> plunges into your rear.
<<else>>
You <<if $scene.removeCage>> wait for <<=setup.getNpcName("npc_manager","formal")>> to unlock your chastity belt and <</if>>position yourself for your <<=ps(setup.getNpcName("npc_manager","title"))>> optimal viewing pleasure as <<=setup.getNpcName("npc_technician","first")>> glides into your wet <<getWordVagina>>.
<</if>>
You moan as <<=setup.getNpcName("npc_technician","first")>> starts to thrust, only for <<=setup.getNpcName("npc_manager","formal")>> to slowly walk in front of you, looking <<=setup.getNpcName("npc_technician","first")>> into the eye and continuing her interrogation.<br>
<br>
"@@.npc_manager;You should continue to fuck my <<if $player.body_ref.vagina && $scene.anal>>slaves tight ass<<else>>slave<</if>> — but while you do — I want you to speak at further length on how you find serving <<=$player.first_name>>.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> is somewhat out of breath and distracted to both fuck you and hold back on her orgasm but, in fits and starts, she replies.<br>
<br>
"@@.npc_technician;Yes, <<=setup.getNpcName("npc_manager","formal")>>. I love serving <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>. I've always been a switch, but when <<switch $npc_technician.flags.knowgender>><<case 'female'>>she<<case 'male'>>he<<default>>they<</switch>> said <<switch $npc_technician.flags.knowgender>><<case 'female'>>she<<case 'male'>>he<<default>>they<</switch>> wanted to be my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... and then offering me a collar? Oh, I was the happiest slave in the world.@@"<br>
<br>
<<if $scene.action == "strap">>
Even just using a strap you can hear in <<=ps(setup.getNpcName("npc_technician","first"))>> how turned on she is, and you're pretty sure the "not orgasming" command is remaining a challenge on her part.
<<else>>
She takes a few moments to catch her breath, pausing halfway inside of you as she obviously struggles to stay in control only for <<=setup.getNpcName("npc_manager","formal")>> to clear her throat. "@@.npc_manager;Are you going to leave your owner un-fucked? Continue.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> gasps and moans a "@@.npc_technician;Yes, <<=setup.getNpcName("npc_manager","formal")>>@@" as she resumes her pace.
<</if>>
<br><br>
"@@.npc_technician;I suppose I should thank you for <<=setup.getHisHer($npc_technician)>> training... but I love my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, and knowing that <<=setup.getHeShe($npc_technician)>> is a slave as well? I think it only makes me feel closer and more loyal.@@"<br>
<br>
"@@.npc_manager;Wonderful to hear. And now, speaking of my slave...@@" <<=setup.getNpcName("npc_manager","formal")>> pushes your head down so that your hands are on the floor and she is standing above you as <<=setup.getNpcName("npc_technician","first")>> continues to fuck. "@@.npc_manager;Keeping in mind the restriction leveled earlier, well... I think this lovely slave deserves an orgasm, but that would mean that I require one first. So, <<=$player.first_name>>, what will it be? Shall your lovely slave put her silver tongue to use between my legs... or shall you do your duty... or do I send you both away still wanting?@@"<br>
<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_7" 'Order <<=setup.getNpcName("npc_technician","first")>> to eat out <<=setup.getNpcName("npc_manager","formal")>> (all three of you will cum).' 300 "<<set $scene.oral='technician'>>">>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_7" 'Eat out <<=setup.getNpcName("npc_manager","formal")>> yourself cum along with your slave (all three of you will cum).' 300 "<<set $scene.oral='you'>>">>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_7" 'Eat out <<=setup.getNpcName("npc_manager","formal")>> yourself and resist orgasm (only <<=setup.getNpcName("npc_manager","formal")>> will cum).' 300 "<<set $scene.oral='manager'>>">>]<br>
[<<moveTo "event_dom_training_technician_1_hierarchy_7" 'Stop.' 300 "<<set $scene.oral='abort'>>">>]
<</if>>
</div>/*#
#desc: manager dominance hierarchy cum
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $SEEN_FRIEND>>
<<switch $scene.oral>>
<<case "technician" "you">>
<<playerOrgasm>>
<<case "abort">>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<useClothSetPop 'tmp'>>
<</switch>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "abort">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician","npc_technician_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.oral>>
<<case "technician">>
You command your slave to eat out your <<=setup.getNpcName("npc_manager","title")>> and <<=setup.getNpcName("npc_technician","first")>> obediently leans forward, continuing to saw away at your <<if $scene.anal>>rear<<else>><<getWordVagina>><</if>> while licking and nibbling on your <<=setup.getNpcName("npc_manager","title")>> just above your head.<br>
<br>
It isn't long before you hear the wonderful sound of <<=setup.getNpcName("npc_manager","formal")>> moaning in pleasure... which cascades into your long-coming orgasm and then on down to <<=setup.getNpcName("npc_technician","first")>> cumming hard <<if $scene.action == "strap">>through her cage<<else>>inside of you<</if>>. For almost a minute the three of you are locked together in climax, before somehow stumbling over to the couch to collapse.<br>
<br>
<<case "you" "manager">>
You order your slave to keep doing what she's doing as you rise up and, with the help of <<=setup.getNpcName("npc_manager","formal")>> holding you by the hair, dive your face between your <<=ps(setup.getNpcName("npc_manager","formal"))>> thighs.<br>
<br>
With practiced skill you eat out <<=setup.getNpcName("npc_manager","formal")>> while continuing to be railed by your delighted slave...
<<if $scene.oral == "manager">>
exercising all the control you have not to let <<=ps(setup.getNpcName("npc_manager","formal"))>> swift orgasm to set off a chain reaction through you and your slave.
<<else>>
and it isn't long before your efforts lead to a cascade of orgasms from <<=setup.getNpcName("npc_manager","formal")>>, through you, and ending with <<=setup.getNpcName("npc_technician","first")>> gripping you tight as she shudders in ecstasy.
<</if>>
<br><br>
<<case "abort">>
As close as you are to climax yourself... you manage to push back to your feet and order your slave to stop.<br>
<br>
A little wobbly on your feet you thank <<=setup.getNpcName("npc_manager","formal")>> for her time, but explain that an orgasm now would "disrupt" your slave's training.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles in amusement and nods, supervising as
<<if $npc_technician.relationship.her_caged || $scene.removeCage>>
chastity is replaced
<<if $scene.action == "strap">>and<</if>>
<</if>>
<<if $scene.action == "strap">>
the strap-on is returned and clothing
<<else>>
clothing
<</if>>
is sorted out.<br>
<br>
Clothed once more, you and <<=setup.getNpcName("npc_technician","first")>> are dismissed back to your respective desks, and you give a <<=setup.getNpcName("npc_technician","first")>> kiss while wishing her a good remainder of her shift.<br>
<br>
[<<moveTo "room_office_after_work" "Continue." 60>>]
<<default>>
ERROR: unexpected scene.oral <<=$scene.oral>>
<</switch>>
<<if $scene.oral != "abort">>
[<<moveTo "event_dom_training_technician_1_hierarchy_8" "Continue." 600>>]
<</if>>
</div>/*#
#desc: manager dominance hierarchy aftercare
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You aren't quite certain how you three made it to the couch, but you are more than happy to enjoy cuddling up with <<=setup.getNpcName("npc_manager","formal")>> wrapping a strong arm around each of yourself and <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_manager;Well done, the both of you. A superb slave, trained by an equally doting owner.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> purrs in contentment and you smile at her from around <<=ps(setup.getNpcName("npc_manager","formal"))>> breasts, the three of you taking several minutes to come back down from
<<if $scene.oral != "manager">>
orgasmic highs.
<<else>>
orgasm... or the intense denial of same, as the case may be.
<</if>>
<br><br>
Eventually things are interrupted by <<=ps(setup.getNpcName("npc_technician","first"))>> phone going off with an on-call alert, your cute slave bowing one final time in thanks before gathering her clothes to return to her desk... with <<=setup.getNpcName("npc_manager","formal")>> gifting her a nice butt-plug that you helpfully seat in place for her to enjoy for the rest of her shift.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> dismisses you as well, and you gather your things to return to your desk.<br>
<br>
[<<moveTo "room_office_after_work" "Continue." 60>>]
</div>/*#
#desc: manager dominance peer introductions
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> arrives and <<=setup.getNpcName("npc_manager","formal")>> greets her with a disarming smile.<br>
<br>
You watch as your girlfriend/slave's knees wobble under the force of <<=ps(setup.getNpcName("npc_manager","formal"))>> dominant power, biting your lip as you reflect on what it's like to watch such a display rather than merely survive as its target.<br>
<br>
"@@.npc_manager;So, I was speaking with <<=$player.first_name>>... sorry, to you I believe it would be <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>? Anyway, they talked about having claimed you as their personal slave... and, well... I just had to get a look.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> curtsies as she takes a moment to find her voice. "@@.npc_technician;Y-yes, <<=setup.getNpcName("npc_manager","other")>>, I proudly gave myself over to <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>, including joyously accepting <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>their<</switch>> collar.@@"<br>
<br>
"@@.npc_manager;So professional! But, this not being a corporate event, well... I believe <<=setup.getNpcName("npc_manager","formal")>> would be more appropriate. Now come closer, I would like a better look at that collar.@@"<br>
<br>
"@@.npc_technician;Of course, <<=setup.getNpcName("npc_manager","formal")>>.@@" <<=setup.getNpcName("npc_technician","first")>> replies, shooting you a quick glance as she hesitantly steps into arms reach of <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;Exquisite craftsmanship.@@" <<=setup.getNpcName("npc_manager","formal")>> states as she runs a finger along <<=ps(setup.getNpcName("npc_technician","first"))>> collar and your girlfriend does everything she can to keep from melting into a puddle of submission. "@@.npc_manager;Yes, it would seem my assistant has as superb taste in collars as they do slaves... but I would like to see just how well their training is paying off...@@" She withdraws her hand and <<=setup.getNpcName("npc_technician","first")>> almost falls forward.<br>
<br>
"@@.npc_manager;<<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> — would you kindly instruct your slave to fully present herself? This attire,@@" <<=setup.getNpcName("npc_manager","formal")>> gestures vaguely over <<=ps(setup.getNpcName("npc_technician","first"))>> clothing, "@@.npc_manager;while it may be... sufficient for the office, it is a concealing distraction from this slave's full beauty.@@"<br>
<br>
[<<moveTo "event_dom_training_technician_1_peer_2" "Order your slave to strip." 120 "<<set $scene.action='strip_fast'>>">>]<br>
[<<moveTo "event_dom_training_technician_1_peer_2" "Order your slave to strip sensuously." 120 "<<set $scene.action='strip_slow'>>">>]<br>
[<<moveTo "event_dom_training_technician_1_peer_2" "You changed your mind, you do not wish to present your slave today." 120 "<<set $scene.action='abort'>>">>]
</div>/*#
#desc: manager dominance peer slave assessment
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "abort">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician","npc_technician_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "strip_fast">>
You instruct <<=setup.getNpcName("npc_technician","first")>> to remove her clothes and, after taking a brief calming breath, she jumps to obey, taking the opportunity to first slip out of her heels before shedding the rest of her clothing
<<case "strip_slow">>
You instruct <<=setup.getNpcName("npc_technician","first")>> to strip, sensuously.<br>
<br>
She blushes slightly, but obeys, first stepping out of her heels before doing a cute, if occasionally a little awkward, dance as she sheds the rest of her clothing and places them
<<case "abort">>
You change your mind about this whole exercise and excuse yourself and your slave.<br>
<br>
There is a note of disappointment on both women's faces, but <<=setup.getNpcName("npc_manager","formal")>> nods in acceptance as <<=setup.getNpcName("npc_manager","formal")>> obediently follows you back to your desk.<br>
<br>
You share a quick embrace with your slave and re-assure her that she did not the slightest thing wrong before giving her permission to return to work.<br>
<br>
[<<moveTo "room_office_after_work" "Continue." 60>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != 'abort'>>
into a neat pile to stand before you and <<=setup.getNpcName("npc_manager","formal")>> wearing naught but collar<<if $npc_technician.relationship.her_caged>> and chastity<</if>>.<br>
<br>
"@@.npc_manager;<<if $npc_technician.relationship.her_caged>>Not just collared, but fully secured... a very well-kept slave, indeed<<else>>A lovely display<</if>>... though I cannot help but notice your slave's obvious arousal.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her
<<if $npc_technician.relationship.her_caged>>
lip as she drips through her cage.
<<else>>
lip, her hard <<getWordPenis false>> sticking forth, beaded with pre.
<</if>>
<br><br>
"@@.npc_manager;Yes... I believe this presents a perfect opportunity to not just test your slave's training... but to have a little lesson on the benefits and techniques of edging a submissive.@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
[<<moveTo "event_dom_training_technician_1_peer_3" "That sounds like a wonderful idea." 300 "<<set $scene.accept=true>><<set $scene.unlock=true>>">>]<br>
[<<moveTo "event_dom_training_technician_1_peer_3" "A wonderful idea — though your slave needs to remain caged." 300 "<<set $scene.accept=true>><<set $scene.unlock=false>>">>]<br>
<<else>>
[<<moveTo "event_dom_training_technician_1_peer_3" "That sounds like a wonderful idea." 300 "<<set $scene.accept=true>><<set $scene.unlock=false>>">>]<br>
<</if>>
[<<moveTo "event_dom_training_technician_1_peer_3" "Actually, you had other plans for your slave." 300 "<<set $scene.accept=false>>">>]<br>
<</if>>
</div>/*#
#desc: manager dominance peer tease npc_technician
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.analEdge = $npc_technician.relationship.her_caged && !$scene.unlock>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $scene.analEdge>>
<<=setup.getNpcName("npc_manager","formal")>> guides you and your slave over to a sturdy chair and <<=setup.getNpcName("npc_technician","first")>> is soon cuffed in a bent over position, ankles and wrists bound to the legs of the chair with her exposed ass pushed high into the air... and her caged <<getWordPenis false>> throbbing in its prison as it dangles below.
<<else>>
<<if $npc_technician.relationship.her_caged && $scene.unlock>>
You carefully unlock <<=ps(setup.getNpcName("npc_technician","first"))>> chastity and her hard <<getWordPenis false>> eagerly springs forth, big and hard and beaded with pre.
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> directs you and your slave to the couch where <<=setup.getNpcName("npc_technician","first")>> is quickly cuffed with her arms and legs spread, fully exposed and helpless for the "lesson" to come.
<</if>>
<br><br>
"@@.npc_manager;Now, with a slave such as this — so obviously lusty, and ready to burst with excitement, the first measure is to affirm control. Binding them thus not only proves a symbolic demonstration of your power, and their loyalty, but also provides a physical restraint on their capability to interfere with the training to come... or, not to CUM, as the case may be.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> whimpers softly at the teasing words, appearing even more aroused as she shifts in her restraints.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> takes a step closer, motioning for you to join her in kneeling down <<if $scene.analEdge>>behind<<else>>in front<</if>> of your bound slave.<br>
<br>
[<<moveTo "event_dom_training_technician_1_peer_4" "Time for the edging to begin..." 300 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_dom_training_technician_1_peer_4" "Actually, you changed your mind bout the lesson." 300 "<<set $scene.abort=false>>">>]<br>
<<else>>
You reply that this was all you wished to show of your slave today and <<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Decided she needs some additional training? She certainly seemed perfectly behaved to me... but an owner knows best. Perhaps some other time.@@"<br>
<br>
You excuse yourself and your slave, the two of your returning to your desk where you help her dress before giving her a hug and permission to return to her work.<br>
<br>
[<<moveTo "room_office_after_work" "Continue." 60>>]
<</if>>
</div>/*#
#desc: manager dominance plug and send npc_technician to work
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.analEdge>>
<<=setup.getNpcName("npc_manager","formal")>> leans in close as she explains. "@@.npc_manager;So, in a case such as this, where the submissive is caged for their own protection, the route of stimulation is to be two-fold. First, is the fact that any area can become an erogenous zone with the right touch.@@"<br>
<br>
For demonstration, she runs a fingernail up the back of <<=ps(setup.getNpcName("npc_technician","first"))>> thigh that has her trembling and dripping even more through her cage. "@@.npc_manager;Second, of course, is this delightful rear hole. Now, since we are aiming to edge we want to resist the urge to over-stimulate the slave and fuck her into next week, but so much can be done with little more than a finger...@@" She slides one, and then a second finger into <<=ps(setup.getNpcName("npc_technician","first"))>> quivering hole to prompt a moan.<br>
<br>
"@@.npc_manager;Of course, as fun as a bit of fingering can be, the true champion of sensitive stimulation is always the tongue.@@" You almost gasp as <<=setup.getNpcName("npc_manager","formal")>> leans in, spreading <<=ps(setup.getNpcName("npc_technician","first"))>> cheeks with both hands before tenderly rimming, and then spearing her tongue into your girlfriend for several panting moments.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> wraps her hand around <<=ps(setup.getNpcName("npc_technician","first"))>> trembling <<getWordPenis false>>. "@@.npc_manager;Proper edging is all about a sensitive, delicate touch. It is a marathon, not a sprint, and you want to keep the submissive as close to going over as possible, while always being there to catch them before they fall past the point of no return.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> groans with want as <<=setup.getNpcName("npc_manager","formal")>> slowly strokes. "@@.npc_manager;Towards this end the best results will come where there is the best control. Fingers and hands are, of course, perfect for such precise work.@@" As she strokes and explains <<=setup.getNpcName("npc_manager","formal")>> uses her other hand to curl two fingers into <<=ps(setup.getNpcName("npc_technician","first"))>> quivering rear causing your slave to shudder and jerk, but <<=setup.getNpcName("npc_manager","formal")>> is ready, relaxing her grip lest bucking lead to over-stimulation and orgasm.<br>
<br>
"@@.npc_manager;Of course even more sensitive than fingers are lips and tongue...@@" gently holding her hair out of the way <<=setup.getNpcName("npc_manager","formal")>> leans in, swallowing <<=ps(setup.getNpcName("npc_technician","first"))>> far from modest <<getWordPenis false>> in a single gulp. <<=setup.getNpcName("npc_manager","formal")>> holds at depth while she wiggles her fingers in <<=ps(setup.getNpcName("npc_technician","first"))>> rear. <<=setup.getNpcName("npc_manager","formal")>> hums as she pushes your slave as close to orgasm as seems possible and then pulls away.<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> glistens with saliva from tip to base, her muscles straining as she pulls against her bonds, her eyes unfocused as her breaths come in quick gasps.
<</if>>
<br><br>
"@@.npc_manager;See what I mean? She is clearly so very close to climax, but by focusing on controlled, precise stimulation we can keep her there, right on that edge of perfect longing, without going over.@@"<br>
<br>
You nod, and then it's your turn.<br>
<br>
Seemingly sensing the shift, <<=setup.getNpcName("npc_technician","first")>> moans "@@.npc_technician;Please, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...@@"<br>
<br>
As you lean in you catch a glimpse of <<=setup.getNpcName("npc_manager","formal")>>, looking on with a stern expression.<br>
<br>
[<<moveTo "event_dom_training_technician_1_peer_5" "Continue to edge your slave." 300 "<<set $scene.edge=true>>">>]<br>
[<<moveTo "event_dom_training_technician_1_peer_5" "Push your slave over the edge." 300 "<<set $scene.edge=false>>">>]
</div>/*#
#desc: manager dominance plug and send npc_technician to work
#status: RELEASED 0.8.7.0
#ignore_spell: th,yeesssss
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.edge>>
<<applyExperience 'dominance' 18 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'dominance' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<if !$scene.analEdge>>
<<applyExperience 'oral' $npc_technician.penis_size 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.edge>>
Though you certainly have a hard act to follow, you manage to keep <<=setup.getNpcName("npc_technician","first")>> right on the edge,
<<if $scene.analEdge>>
your tongue tenderly dancing and teasing, the wooden chair creaking slightly as <<=setup.getNpcName("npc_technician","first")>> against her bonds, steadily trickling down her thigh
<<else>>
licking and stroking from her pert rear, past her heavy balls and all the way up to her glistening, sensitive tip
<</if>>
as you give her everything short of an orgasm, pushing her until she's breathlessly on the urge of fainting and <<=setup.getNpcName("npc_manager","formal")>> places a gentle hand on your shoulder as a signal to stop.<br>
<br>
"@@.npc_manager;Wonderful. This is the sort of treatment that will push a loyal slave to perfect devotion. But I think this will be enough, for now. <<=setup.getNpcName("npc_technician","other")>> still has a job to get back to, after all... though... I think we can leave her with something to make the rest of the day more interesting.@@"
<<else>>
You aren't entirely certain if you COULD have kept <<=setup.getNpcName("npc_technician","first")>> from orgasming after the intensity of what <<=setup.getNpcName("npc_manager","formal")>> put your slave through, but it doesn't matter as you dive
<<if $scene.analEdge>>
in to eat her ass with gusto, your whirling tongue and tender lips
<<else>>
dive forward to ecstatically suck, your eager lips and pulsing throat
<</if>>
rewarded with an elongated cry of "@@.npc_technician;yeesssss,@@" as she
<<if $scene.analEdge>>
spurts through her cage and down her leg.
<<else>>
cums hard<<if $fetish.cum>>, filling your mouth with her delicately delicious girl-cum<</if>>.
<</if>>
<br><br>
You lean back as <<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Hmm, something of a waste... though I expect this slave is the sort who will be hard and horny and ready for more edging is quite a short time... speaking of which.@@"
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> hands you a large butt-plug and explains. "@@.npc_manager;I could not help noticing her emptiness. A filled slave is a mindful, focused slave, I always say.@@"<br>
<br>
You nod, the plug sliding easily into <<=ps(setup.getNpcName("npc_technician","first"))>> still-quivering rear as your slave whisper-moans a mangled "@@.npc_technician;yes...@@"<br>
<br>
<<if $npc_technician.relationship.her_caged && $scene.unlock>>
You follow up by locking <<=ps(setup.getNpcName("npc_technician","first"))>> chastity cage back where it belongs, and then
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> removes <<=ps(setup.getNpcName("npc_technician","first"))>> restraints for you to help your slave back to her feet.<br>
<br>
"@@.npc_technician;Th-thank you,@@" <<=setup.getNpcName("npc_technician","first")>> whispers with a wobbly pair of curtsies.<br>
<br>
"@@.npc_manager;And thank you! The both of you,@@" <<=setup.getNpcName("npc_manager","formal")>> replies "@@.npc_manager;for the use of your wonderful slave. I can see that my instructions are being put to quite the good use.@@"<br>
<br>
You thank <<=setup.getNpcName("npc_manager","formal")>> for the compliment and then gather <<=ps(setup.getNpcName("npc_technician","first"))>> clothes and offer her your arm to lead her out of the inner office.<br>
<br>
[<<moveTo "event_dom_training_technician_1_peer_6" "Continue." 180>>]
</div>/*#
#desc: manager dominance post: npc_technician sends picture
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
Back just the two of you, you give <<=setup.getNpcName("npc_technician","first")>> an enthusiastic hug and thank her for her wonderful performance.<br>
<br>
"@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>! <<if $scene.edge>>I don't know if I've ever been edged that hard... and with this plug I'm still INSANELY horny...<<else>>I don't know if I could have survived if you hadn't mercifully granted me that orgasm... not that I'm anything less than monstrously horny, especially with this plug in my ass!<</if>> Goddess but I love it almost as much as I love you!@@"<br>
<br>
It's your turn to blush as you use <<=ps(setup.getNpcName("npc_technician","first"))>> collar to pull her in for a parting kiss before you help her get dressed.<br>
<br>
She's still a touch wobbly in her heels as she leaves the room, but, even as you can see the faintest outline of her plug through her tight pencil skirt, she seems to sense your eyes on her rear. pausing for a moment she straightens up and takes the final steps out of the office more purposefully, her butt swaying seductively with each measured step.<br>
<br>
[<<moveTo "event_dom_training_technician_1_peer_7" "Continue." 180>>]
</div>/*#
#desc: manager dominance post: npc_technician sends picture
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You take a moment to reflect on your "lesson," straightening your desk for a moment before your phone buzzes. You pull it out to get a pair of pictures from your slave — one up the back of her skirt showing her plug-stuffed rear, and the other down the front of her skirt to show off her <<if $npc_technician.relationship.her_caged>>caged <</if>><<getWordPenis false>> and the wet spot it is forming in her panties.<br>
<br>
"@@.npc_technician;Thanks again! ~Your dripping good girl.@@"<br>
<br>
You smile and send a good girl back.<br>
<br>
[<<moveTo "room_office_after_work" "Put your phone away." 60 "<<set $currentcall=false>>">>]
</div>/*#
#desc: end of qualifying period without success
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.work.qualification_extension = true>>
<<set $scene.requirement = "">>
<<if $player.sec_style.clothing.makeup == "">>
<<set $scene.requirement = "makeup">>
<<elseif $player.sec_style.clothing.female == "">>
<<set $scene.requirement = "female">>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set $npc_cook.call_player = "Lassie">>
<<set $npc_cook.flags.reactnamechange = true>>
<<if $player.sec_style.body.name != "" && !$npc_admin.flags.promotion && !$workEvents.hasOwnProperty("admin_office_visit")>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addWorkEvent 'admin_office_visit'_nextDate>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<elseif $player.sec_style.body.name == "">>
<<set $scene.requirement = "name">>
<<elseif ($player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag) && !($npc_manager.flags.bad_girl.got_sissy_underwear || $npc_manager.flags.good_girl.got_sissy_underwear)>>
<<set $scene.requirement = "key">>
<<elseif $player.sec_style.body.name != "" && !$npc_admin.flags.promotion && !$workEvents.hasOwnProperty("admin_office_visit")>>
<<set _nextDate = setup.getNextDayOfWeek($now, 3, 9, 0)>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<<set $scene.requirement = "admin">>
<<set $player.work.qualifyingperiod += 7>>
<<elseif !($npc_manager.flags.bad_girl.got_pink_secretary || $npc_manager.flags.good_girl.got_pink_secretary) || !$npc_manager.flags.party.first_attend || !$npc_admin.flags.promotion>>
<<set $scene.requirement = "other">>
<<elseif $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
<<set $scene.requirement = "chastity_trial">>
<<set $player.work.qualifyingperiod += setup.daysToDate($now, setup.getTaskDueDate('task_chastity_trial'))+1>>
<</if>>
<<set $scene.peggingReady = setup.isPeggingReady()>>
<<if $scene.peggingReady && $player.work.qualifyingperiod <= 0>>
<<set $player.work.qualifyingperiod += 3>>
<<elseif $scene.requirement != "chastity_trial">>
<<set $player.work.qualifyingperiod += 5>>
<<if $scene.requirement == "">>
<<set $scene.requirement = "slow">>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your workday over <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office bearing a stern frown.<br>
<br>
"@@.npc_manager;Come inside, <<=$player.first_name>>, we need to talk.@@"<br>
<br>
You gulp and follow as instructed, nervously watching as she walks around her desk and takes a seat.<br>
<br>
"@@.npc_manager;So, hazard a guess as to what today is?@@"<br>
<br>
<<if setup.getTotalValue("smart") >= 10 || setup.getTotalValue("smart") > setup.getTotalValue("bimbofication")>>
You nod, replying that it should be the scheduled "end" of your qualifying period.<br>
<br>
"@@.npc_manager;Not completely useless@@" she states, though there is hardly any warmth in her voice.
<<else>>
You shake your head, unable to think of what she might be referring to.<br>
<br>
"@@.npc_manager;So ditzy... today should be the end of your "qualifying" period as a <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<</if>>
<br><br>
She pauses to let things sink in before continuing.<br>
<br>
<<if $scene.peggingReady>>
Her lips turn up in a sly, almost excited smile. "@@.npc_manager;You have been on quite the long road... and I think you are just about ready to push even further but... alas, I do not have time today to handle things as they should. In light of this scheduling conflict being no fault of your own I shall grant you a small extension...@@" You bite your lip as you wonder what she has in store for you.<br>
<br>
She dismisses you with a wave.<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
<<else>>
<<switch $scene.requirement>>
<<case "key">>
"@@.npc_manager;I think the core issue that we are facing stems from your lack of... commitment to your position. Towards that end I have a simple proposal, a trust exercise, if you will. You will prove your dedication by leaving your chastity key with me overnight, an option I have long promised you, but which you have failed to show the good sense to take me up on. I will, of course, give you the key back at the end of your next workday... if you request such.@@" She grins, and you get the distinct impression that she would much prefer it if you did NOT make such a request.<br>
<br>
"@@.npc_manager;So... what shall it be? Will you agree to be my locked prize until your next workday... or does today mark the end of your employment?@@"<br>
<br>
You wince at the thought of making yet another sacrifice, but do you really have a choice?<br>
<br>
<<printThought "It's just for one night... right?">><br>
<br>
[<<moveTo "event_manager_qualifier_ultimatum_key" "Let her keep the key." 600>>]<br>
[<<moveTo "gameover_failed_trial" "Leave the office." 0>>]
<<case "female">>
"@@.npc_manager;As I am sure you recall, you work in a representative position... and how you are presently representing yourself, and thus myself, and the company, well...@@"<br>
<br>
She she frowns as her gaze scans over your outfit. "@@.npc_manager;While this is certainly an improvement over what you were wearing when we first met... it is far from meeting my expectations for a true <<if $fetish.sissy>>SISSI <</if>>Secretary. Towards that end I am hereby modifying your work requirements — I expect you to show up to work dressed in a properly feminine manner. You will find that such clothing is far more flattering for your figure, now go forth and impress me when I see you next.@@"<br>
<br>
She dismisses you with a wave. You have obtained your extension, but at what price?<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
<<case "makeup">>
"@@.npc_manager;So one of the key issues that is preventing me from promoting you out of probation is, well... as I have said so many times, yours is a representative position. What are you representing with such a plain complexion? It is a cute face, do not get me wrong, but to reach the pinnacle of success one must build beyond merely what nature has gifted you. I speak, of course, of makeup. If you are willing to commit to adding that to your daily routine, well... that would be sufficient progress for me to allow you to stay on and prove yourself. I will even make it easy for you — I have a fancy little machine that can apply a perfect, and permanent look so that you can always be putting your best, most adorable face forward...@@"<br>
<br>
[<<moveTo 'event_manager_qualifier_ultimatum_makeup' "Agree to change your appearance..." 120>>]<br>
[<<moveTo "gameover_failed_trial" "Tender your resignation." 120>>]
<<case "name">>
<<set $scene.qualifier_period_namechange = true>>
"@@.npc_manager;<<=$player.first_name>>, <<=$player.first_name>>... just saying that feels off, don't you agree? Yes, perhaps you should do something about that... after all <<=$player.first_name>> <<=$player.last_name>> has shown themselves not quite qualified to be a full-fledged <<if $fetish.sissy>>SISSI <</if>>Secretary but someone else...@@"<br>
<br>
She smiles, and you feel like the force of her personality like a hot flame, burning away at the "old" you...<br>
<br>
"@@.npc_manager;So, how about we change things to something more mmm... appropriate to the new you? Yes, I think that would be quite good, really let you put the failure of your old life behind and focus on your bright new future...@@"<br>
<br>
<<if $fetish.sissy>>
<<set _nameDia = "Your sissy name:">>
<<else>>
<<set _nameDia = "Your new name:">>
<</if>>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
[<<moveTo "gameover_failed_trial" "Tender your resignation." 120>>]
<<case "admin">>
"@@.npc_manager;Your development is proceeding well... but you seem to be keeping private with things. The company has plans beyond yourself, I was trying to be generous and give you time to discuss things with friends... but my patience is wearing thin. In particular, your former supervisor, <<=setup.getNpcName("npc_admin","other")>>? My records show that you are friends with <<him npc_admin>> outside of work, as well. Please update <<him npc_admin>> on your status, I would rather you handled such on your own versus the stress of such happening at the office. I will give you another week to get your affairs in order, but my timetable cannot wait forever.@@"<br>
<br>
<<printThought "I guess it has been a while since I talked with <<=setup.getNpcName('npc_admin','first')>>... and I have certainly gone through some changes...">><br>
<br>
You thank her for the consideration.<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 0>>]
<<case "other">>
"@@.npc_manager;Unfortunately, from what I have seen, well... despite my best efforts you just do not seem suitable for this position. This is the whole purpose of a qualifying period, of course, but I will not hide the fact that I am unhappy to come to the conclusion but, well... the data does not lie. You have taken so many productive steps, but you just fail to get over that final hump...@@"<br>
<br>
<<printThought "Oh no, I'm about to be fired!">><br>
<br>
[<<moveTo "event_manager_qualifier_ultimatum_reprieve" "Beg her to reconsider." 60>>]<br>
[<<moveTo "gameover_failed_trial" "Leave the office." 0>>]
<<case "chastity_trial">>
"@@.npc_manager;You really do have the most... interesting timing. You see that little chastity trial of yours, well... it is somewhat in the way of my plans.@@" She sighs, "@@.npc_manager;well, it should be over soon, hmm? and volunteering for it was quite prescient on your part... so I shall grant you an extension to finish dealing with this other obligation. You may go, now.@@"<br>
<br>
You gulp and nod nervously as you try not to think about what "other plans" she has in mind as she dismisses you with a wave and a smile.<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
<<case "slow">>
"@@.npc_manager;I cannot point to a singular failing at this point, more a generalised... lack of urgency in adjusting to and embracing your new position. Given that steady progress I shall extend your probation... let us hope that the next week sees things moving with some additional alacrity, hmm?@@"<br>
<br>
You feel simultaneously relieved at the reprieve, while also nervous as to what else your mysterious <<=setup.getNpcName("npc_manager","title")>> has in store as she dismisses you with a wave and a smile.<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
<<default>>
ERROR: unexpected scene.requirement <<=$scene.requirement>> — please upload a save to discord so this can be investigated.<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
<</switch>>
<</if>>
</div>/*#
#desc: beg for an extension of qualifying period
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 16 'normal' $SEEN_FRIEND>>
<<set $player.work.qualifyingperiod += 5>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You throw yourself at her feet and her mercy, bowing and scraping and submissively imploring her to give you another chance. She remains unmoved as she considers your desperate plea, staring at you so hard it is like she is peering directly into your soul.<br>
<br>
You hold your breath as she finally opens her mouth to speak.<br>
<br>
"@@.npc_manager;Very well. A final chance. I will even give you a hint as to what it is that I desire. A proper <<if $fetish.sissy>>SISSI <</if>>Secretary should be as beautiful as she is obedient, appearing as feminine as she can inside from her perfectly made up face down across her sweet outfit, from her lovely panties<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>> all the way to her properly secured clitty<<else>>to the top of her head<</if>>. She should fulfill every task put before her with joy and always be focused on making her superior's life easier. I will give you one more week to try and rise to this occasion... see that you do. Dismissed.@@"<br>
<br>
Trembling slightly at the intensity of her instruction you reflexively curtsy and hurry home, your mind thick with thoughts.<br>
<br>
<<printThought "Is this what I want? Am I willing to transform into that which she desires?">><br>
<br>
[<<moveTo "company_lobby" "Leave." 180>>]
</div>/*#
#desc: midway through qualification period, get warning
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your workday at an end <<=setup.getNpcName('npc_manager', 'formal')>> pops out from her office.<br>
<br>
"@@.npc_manager;Just wanted to pop in and let you know that you there is barely a week remaining of your "qualification" period. There is still time to sort yourself out and prove your worthiness to be my <<if $fetish.sissy>>SISSI <</if>>Secretary, but, well... you must not dawdle!@@"<br>
<br>
You thank her for the tip and she ducks back inside her office.<br>
<br>
[<<moveTo "room_office_manager" 'Office of <<=setup.getNpcName("npc_manager", "formal")>>.' 60>>]<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
</div>/*#
#desc: midway through qualification period, get warning
#status: RELEASED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "endPartialShift">>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your workday at an end <<=setup.getNpcName('npc_manager', 'formal')>> stalks out of her office.<br>
<br>
Sensing her foul mood you hesitantly ask her what is the matter. "@@.npc_manager;What is the matter? Hah, as if you do not know! It is you! Here you are, over halfway through the normal qualification period and... nothing. You fail to show initiative towards proving your worth and yet you also do not perform so poorly that I might make a proper example out of you. It is quite infuriating and my patience has run thin. Rather than waste both of our times with you limping along to certain failure and firing at the end of the qualification time I will offer you a choice — either kiss my feet and show your devotion to me and your position under such, or refuse and accept the punishment required to get you back on track. Choose one and I will extend your probation that you might "catch up" otherwise well... you might as well quit now rather than waste both of our time.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_qualifier_1" "Kiss her feet." 120>>]<br>
[<<moveTo "event_manager_stage1_end_punishment_qualifier_intro" "Take your punishment." 120 "<<useClothSetPush 'stage1end'>><<set $scene.qualfierEnd=true>>">>]<br>
[<<moveTo "game_over_early_qualifier_fail" "This is too much, tender your resignation." 120>>]<br>
</div>/*#
#desc: end of qualifying period give her key
#status: RELEASED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem _keyId>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_surrendered')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_surrendered'>>
<</if>>
<<set $npc_manager.flags.chastitydays += 1>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You nod nervously and <<=setup.getNpcName('npc_manager', 'formal')>> grins triumphantly wider. "@@.npc_manager;WONDERFUL...@@"<br>
<br>
She takes the key with a flourish. "@@.npc_manager;And I promise to keep VERY good care of this, just as THAT,@@" she points towards you <<=setup.getItemTypeName('cage')>> "@@.npc_manager;Is taking oh-so-excellent care of YOU.@@"<br>
<br>
"@@.npc_manager;Now I shall let you go, with great anticipation to see how you continue to develop.@@"<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
</div>/*#
#desc: end of qualifying period change name
#status: RELEASED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.body.name = "forced">>
<<addWorkEvent 'cunnilingus_intro'>>
<<if !$player.sec_style.body.identify_fem>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 9, 0, false)>>
<<addWorkEvent "identity_work" _nextDate>>
<</if>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<removeEvent 'insurance_alt'>>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;So, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, from today on your name shall be <<=$player.first_name>>. I like it, it has a pleasant feminine ring to it. Now, if you would hand me the datapad we can make this official, what do you say, <<=$player.first_name>>. Hmm... <<=$player.first_name>>. Rolls nicely off my tongue. Yes, I can see a wonderful career ahead for Miss <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
<br>
<<printThought "Wait... WHAT?">><br>
<br>
Your expression may be quite puzzled, but her smile of satisfaction only grows wider as you hand her the filled out datapad.<br>
<br>
"@@.npc_manager;Well done. Okay, <<=$player.first_name>> <<=$player.last_name>>, this concludes your official name change. Social Security Administration, Internal Revenue Service, Bureau of Consular Affairs, the Federal Communications Commission, the Selective Service System, the Department of Motor Vehicles and a few other departments have been informed of your name change. Your documents and ID card should be updated once you make your next online transaction. I think they send you your physical documents in the next few days if you still use these.@@"<br>
<br>
<<printThought "What?">><br>
<br>
"@@.npc_manager;No need to look so worried, the company has paid all fees related to the change, of course. But I would beware since the company keeps track of all the money they invest in their assets... I mean, employees, employees are our MOST important asset. That means that terminating your contract now would end you in hot water, since you would have to either repay the <<=setup.numberInWords($player.flags.company.depts, true)>> credits you are currently considered to owe the company at the moment, or you would have to negotiate a repurposing deal. Really, it is nothing you should be worrying your pretty head about, I mean, it would be such a waste to lose such an aspiring <<if $fetish.sissy>>SISSI<<else>>girl<</if>> as yourself. Of course, once your probationary period is over, a certain percentage of your salary will be credited towards paying things off. And if you continue to try to improve yourself at your current rate, well... I see a radiant future for you in this company, under my desk... err... supervision of course.@@"<br>
<br>
<<printThought "Que?">><br>
<br>
You explain to <<=setup.getNpcName('npc_manager', 'formal')>> that, while you were were not fully aware of the consequences, you plan to continue to do your best to fulfill her expectations and earn your place as a full <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
"@@.npc_manager;Mistress,@@" she states, interrupting the end of your speech. "@@.npc_manager;Since you readily accepted your role as a <<if $fetish.sissy>>SISSI <</if>>Secretary, I am not your "Missus" anymore. We both know I never was your "Missus" in the first place, but it is finally time that you address me in a way that more accurately respects our respective positions. From now on, whenever you address me, I want to hear a Mistress in front of my name. Also know that I find it delightfully refreshing that you accept that you are not merely a <<if $fetish.sissy>>SISSI <</if>>Secretary here at work. Your new name, after all, reflects what we both knew all along — that you ARE a <<if $fetish.sissy>>SISSI <</if>>Secretary 24/7.@@" She pauses and shakes her head in amusement. "@@.npc_manager;Hah! Listen to me going on and on about things we both already know! Well, I think there has been enough of this feckless chatter. I imagine you are eager to get home... all the sooner to be back at work and show off what a wonderful worker the new <<=$player.first_name>> <<=$player.last_name>> is!@@"<br>
<br>
She dismisses you with a wave and you hurry off, still in a daze.<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
</div>/*#
#desc: end of qualifying period makeup
#status: RELEASED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.permanent = 'sissy_doll'>>
<<setThreshold 'feminization' 'dress_code' 'sissy_doll_fem'>>
<<set $player.makeup.messed = 0>>
<<set $player.sec_style.clothing.makeup = "forced">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You don't trust your voice and so merely nod in resigned acceptance. With a wide grin <<=setup.getNpcName('npc_manager', 'formal')>> pulls a mask-shaped item out of her desk and places it over your face. You close your eyes and feel a slight heat, perhaps a minute passing before the pressure is released and you blink, and then open your eyes wide at the sight of your reflection in the mirror <<=setup.getNpcName('npc_manager', 'formal')>> is holding in front of you.<br>
<br>
"@@.npc_manager;Wonderful, is it not? Of course I encourage you to do your own experimentation with makeup, find the style that truly expresses who you are... though what you have now, well... it makes for quite the lovely girl.@@"<br>
<br>
Girl is perhaps an understatement — staring back at you is the face of a <<if $fetish.sissy>>sissified<<else>>feminised<</if>> doll. You try to open your mouth but the sight of those pink lips parting is too distracting, too embarrassing... too alluring.<br>
<br>
Looking like the cat who ate the proverbial canary <<=setup.getNpcName('npc_manager', 'formal')>> nods at you in dismissal. It would seem your job is saved, but at what cost?<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
</div>/*#
#desc: manager invites you to lunch to celebrate advancement
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('hormones_checkin') && setup.daysToDate($now,$events.hormones_checkin.trigger.date) == 0 || $npc_manager.flags.evil == 1 || $scene.makeup_decision>>
<<set _nextDate = setup.setNextDate($now, 1, 10, 0)>>
<<addEvent "manager_lunch_stage2" _nextDate>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary_work_lunchbreak">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Noon arrives and you are anticipating <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch order to fetch her meal when, instead, she emerges from her office personally.<br>
<br>
"@@.npc_manager;Come.@@" She states, pausing next to your desk. "@@.npc_manager;I thought we might celebrate your recent work advancement with a nice lunch. There is a restaurant across the street that is quite popular and convenient for business lunches, particular among our executives. A perfect celebration, I think.@@"<br>
<br>
[<<moveTo "event_manager_lunch_1_2" "Follow." 900>>]
</div>/*#
#desc: celebration lunch 1: order
#status: RELEASED 0.9.1.0
#ignore_spell: skywalk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.makeup.template>>
<<set $player.makeup.messed = 0>>
<</if>>
<</if>>
<<set $player.location = "Fancy Restaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.makeup.template>>
<<=setup.getNpcName("npc_manager","formal")>> gives you time to touch up your makeup, and then it's off to lunch.
<</if>>
The trip to the restaurant does not even require going outside, merely traveling down to one of the more "public" floors and then taking a skywalk over the street. From the moment you step into the restaurant the contrast with the canteen you have become accustomed to stops you in your tracks, as <<=setup.getNpcName("npc_manager","formal")>> breezes in with little more than a nod to the hostess and you hurry to catch up, still distracted by the opulent stylings of the restaurant, including a single place-setting that may include more pieces of silverware than remain in your entire flat.<br>
<br>
"@@.npc_manager;I know it is a bit much for a workday, but a celebration was in order... of course we still do have our jobs to return to, so we shall not be doing the full tasting menu, but I promise that everything the chef here makes is exquisite.@@"<br>
<br>
You nod as you take your seat, <<if $player.identify_as == "male">>simultaneously grateful, and a touch emasculated<<else>>the way <<=setup.getNpcName("npc_manager","formal")>> orders for the both of you reinforcing her power<</if>>.<br>
<br>
The waitress, easily beautiful enough to be a professional model, and with the faintest alluring hint of an accent, repeats back the complex order verbatim without taking any notes before elegantly walking to the kitchen, her modest heels managing to draw attention while comfortable enough to be suited to a position where she will be on her feet most of the day.<br>
<br>
Somehow <<=setup.getNpcName("npc_manager","formal")>> feels even more intimidating outside of the office than she is in her natural domain, and you are busy trying to come up with a topic of conversation when a loud laugh from another table distracts you.<br>
<br>
[<<moveTo "event_manager_lunch_1_3" "Reflexively glance over." 300>>]
</div>/*#
#desc: celebration lunch 2: see npc_boss
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Fancy Restaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reflexively glance over to the sound emanating from a large booth full of well-dressed <<if $options.fem>>women<<else>>businessmen<</if>>... but it is one in particular that draws your attention, a face you remember seeing on your first visit to <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> notices your attention. "@@.npc_manager;Ah, <<=setup.getNpcName("npc_boss","formal")>> is entertaining, I see.@@"
<<if $npc_boss.profile>>
You nod, even from a distance, and not being <<his npc_boss>> focus, <<=setup.getNpcName("npc_boss","formal")>> intimidates you... and then <<he npc_boss>> momentarily glances in your direction, a glint in <<his npc_boss>> eye that has you hurriedly look away, grateful for the waitress to reappear and hand <<=setup.getNpcName("npc_manager","formal")>> a drink.
<<else>>
You feel like you should recognise the name, but you look back at <<=setup.getNpcName("npc_manager","formal")>> in confusion. "@@.npc_manager;The dour <<if $npc_boss.fem>>woman<<else>>gentleman<</if>> in the centre, the one everyone else seems to be dancing around... <<he npc_boss>> is the company's CEO. A ruthless, ambitious <<man npc_boss>> who—@@" <<=setup.getNpcName("npc_manager","formal")>> stops as the waitress appears to hand her a drink.
<</if>>
"@@.npc_manager;Thank you,@@" she states to the waitress before the waitress continues over to the other table, the both of you watching as <<=setup.getNpcName("npc_manager","formal")>> sips her drink.
<br><br>
"@@.npc_manager;I apologise for ordering without you... but you have work this afternoon, and I need you sharp. Your natural liver is, well... in a different category from my own organs.@@"<br>
<br>
You do not have time to consider her phrasing when you jump in surprise at one of the <<men>> landing a hard enough slap on the waitress' ass to echo through the restaurant, the <<man>>'s groping fingers clearly visible as they slide down the side of the waitress' designer skirt, clearly aiming for even more before she politely shifts out of range.<br>
<br>
"@@.npc_manager;Swine.@@" <<=setup.getNpcName("npc_manager","formal")>> notes. "@@.npc_manager;Thinking that such vulgar displays of power mean anything. They are just unruly children acting out, clumsy, crude, and cruel. Thinking that, in their boldness, they might earn <<if $fetish.daddy>><<daddy npc_boss>>'s<<else>>the <<master npc_boss>>'s<</if>> favour... failing to even understand how feeble their efforts even are...@@"<br>
<br>
You catch a snippet of one of the <<men>> shouting after the waitress, but she is already on the move back to the kitchen. She disappears for but a few moments, but re-emerges the picture of decorum to deliver your food, the scent and taste of which soon all but completely occupying your focus.<br>
<br>
[<<moveTo "event_manager_lunch_1_4" "Eat." 1000>>]
</div>/*#
#desc: celebration lunch 2: finish
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.foodDelivery.done = true>>
<<if $npc_manager.stage >= 3>>
<<set _nextDate = setup.setNextDate($now, 6, 10, 0)>>
<<addEvent "manager_lunch_stage3" _nextDate>>
<</if>>
<<registerProgressionEvent>>
<</if>>
<<set $player.location = "Fancy Restaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The lunch easily ranks among the best meals you've ever had. Every bite is a divine blend of flavour and texture, all in perfect, exquisite balance. <<=setup.getNpcName("npc_manager","formal")>> seems as amused to watch you eat as she is to pick away at her own meal, finishing well after you as the waitress appears with the bill.<br>
<br>
Some latent urge momentarily has you wondering if you should offer to cover half... and then you catch a glimpse of the total. Even having just gloried in the delectable cuisine you boggle at the idea that two plates and a drink could somehow cost four figures... and yet <<=setup.getNpcName("npc_manager","formal")>> does not so much as blink as she adds on a full thirty-five percent tip. A momentary shared smile with the waitress, and an eye-flick towards the other table communicating an apology.<br>
<br>
The meal as rich as it was delicious, you're feeling a bit somber for the walk back to the office, <<=setup.getNpcName("npc_manager","formal")>> leaving you to your thoughts as you take a seat at your desk and consider the rest of the afternoon.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Get to work." 300>>]
</div>/*#
#desc: manager invites you to lunch to celebrate full secretary
#status: RELEASED 0.9.1.0
#ignore_spell: skywalk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('hormones_checkin') && setup.daysToDate($now,$events.hormones_checkin.trigger.date) == 0 || $npc_manager.flags.evil == 1 || $scene.makeup_decision>>
<<set _nextDate = setup.setNextDate($now, 1, 10, 0)>>
<<addEvent "manager_lunch_stage3" _nextDate>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary_work_lunchbreak">>
<<else>>
<<if $player.makeup.template>>
<<set $player.makeup.messed = 0>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Right at the start of lunch <<=setup.getNpcName("npc_manager","formal")>> emerges from her inner office to greet you with a slight smile. "@@.npc_manager;Good, you have not started eating. I thought another celebration was in order, what with you having passed out of the qualifier period to become my personal, full-time and credentialed non-probationary <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"<br>
<br>
The memory of the delicious meal she took you out to previously has you almost salivating in anticipation, and you quickly lock your terminal and rise to follow her <<if $player.makeup.template>> to the bathroom to touch up your makeup, and then <</if>>down the elevator and across the skywalk to the upscale restaurant.<br>
<br>
[<<moveTo "event_manager_lunch_2_2" "Take your seat." 300>>]
</div>/*#
#desc: super-expensive lunch, see turned waiter
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Fancy Restaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As before, you notice another table where <<=setup.getNpcName("npc_boss","formal")>> and various hangers-on are already enjoying a meal of their own. Unlike the previous time, the waitress assigned to their table seems far more enthralled by their lewd behaviour, giggling along as they flirt with her, bending over provocatively far to take their order and merely smiling playfully in response as one of the <<men>> gropes her ass.<br>
<br>
Only when the waitress turns to approach your table do you almost gasp in recognition. While the waitress' face and voice are the same, nearly everything else about the woman isn't from her lusty, rather than professional, expression, to heaving breasts all but ready to explode out of her too-tight top, to the fact that she pulls out a notepad rather than her prior demonstration of perfect memory as she smiles and bats her eyes in welcome.<br>
<br>
"@@.generic_female1;Hi!? Can I take your orders? Your food orders, I mean... but, well, I'd be happy to serve any other orders, as well!@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> takes the waitress' obvious transformation in stride as she places the order and the waitress skips away. You watch in shock, noticing that the waitress has traded in her prior sensible and modest heels for over ten centimetre steep stilettos, her hips swaying with every step.<br>
<br>
"@@.npc_manager;It would seem she ran afoul of something.@@" <<=setup.getNpcName("npc_manager","formal")>> notes cryptically. "@@.npc_manager;I sense the hallmarks of some of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> experimentations...@@" <<=setup.getNpcName("npc_manager","formal")>> pauses to look you in the eye, "@@.npc_manager;I advise you to take care. I, of course, value your work contributions and <<if $npc_manager.stagevalues[3].drugs_req>>will thus exercise moderation<<else>>would not wish to dull your sharpness<</if>>... but dealing with <<men npc_boss>> such as those,@@" she nods towards <<=ps(setup.getNpcName("npc_boss","formal"))>> table where you notice an additional detail — an extra set of shoes peeking out from under the tablecloth, the position of the underside of the steep heels pointed directly at you matching up with someone kneeling between <<=ps(setup.getNpcName("npc_boss","formal"))>> legs... yet the <<man npc_boss>> <<him npc_boss>>self shows no indication save a confident smirk as <<he npc_boss>> momentarily meets you gaze.<br>
<br>
You find yourself temporarily frozen until <<=setup.getNpcName("npc_manager","formal")>> uses a finger under your chin to turn your attention back to her, and you shiver. "@@.npc_manager;As I was saying. You have worked hard to reach the position you are in, as have I... but one must never let their guard slip, the world of the corporate executive can harbour many dangers that will strike swiftly and decisively.@@"<br>
<br>
[<<moveTo "event_manager_lunch_2_3" "Your meal has arrived." 1800>>]
</div>/*#
#desc: super-expensive lunch, see turned waiter
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.foodDelivery.done = true>>
<<if $npc_manager.stage >= 4>>
<<set _nextDate = setup.setNextDate($now, 6, 10, 0)>>
<<addEvent "manager_lunch_stage4" _nextDate>>
<</if>>
<<registerProgressionEvent>>
<</if>>
<<set $player.location = "Fancy Restaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You welcome the distraction of the once again beyond delicious meal... and yet you can't help but keep sneaking glances over at <<=setup.getNpcName("npc_boss","formal")>> and <<his npc_boss>> entourage, thinking back at the radical transformation of the waitress, from sharp, confident woman to ditzy, slutty bimbo...<br>
<br>
Though it tastes just as good, the spectre of the company keeps you from feeling the same rejuvenation from the meal. <<=setup.getNpcName("npc_manager","formal")>> does make an attempt to divert your thoughts, but you are too distracted by the combination of food and your own thoughts to much carry a conversation, and she herself seems more than a bit out of practice at considering or talking about matters beyond the office.<br>
<br>
After a delectable dessert <<=setup.getNpcName("npc_manager","formal")>> once again covers the bill while leaving a substantial tip for your waitress... but the woman is quickly distracted by one of the <<men>> lewdly summoning her back over with a call of "@@.generic_male1;get over here, slut. My glass is as empty as your head!@@"<br>
<br>
Giggling at the "joke," the waitress dashes away and you rise to leave.<br>
<br>
Things feel even more somber with each step you take back to the office, the reminder of the power the company exerts sending a shiver down your spine as you return to your desk.<br>
<br>
<<printThought "I'm a full-time <<if $fetish.sissy>>SISSI <</if>>Secretary now... but it feels like my time at the company is only just beginning...">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> disappears into her inner office and you find yourself wondering where, exactly she fits in the byzantine politics of the company.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Take a seat at your desk." 300>>]
</div>/*#
#desc: manager invites you to lunch to celebrate office move
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('hormones_checkin') && setup.daysToDate($now,$events.hormones_checkin.trigger.date) == 0 || $npc_manager.flags.evil == 1 || $scene.makeup_decision>>
<<set _nextDate = setup.setNextDate($now, 1, 10, 0)>>
<<addEvent "manager_lunch_stage4" _nextDate>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary_work_lunchbreak">>
<<else>>
<<if $player.makeup.template>>
<<set $player.makeup.messed = 0>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are almost expecting it when <<=setup.getNpcName("npc_manager","formal")>> emerges from her office to invite you to lunch once more. "@@.npc_manager;I know things have been... eventful, with the retreat and the move, but I thought a nice celebratory meal might be a welcome temporary distraction. I even took the liberty of checking the company schedule to confirm that <<=setup.getNpcName("npc_boss","formal")>> is scheduled with an office meeting today. I recall you found <<his npc_boss>> presence somewhat... distracting, on our last visit.@@"<br>
<br>
You smile, whatever concerns you may have about your corporate future... there is no denying how good the food was the last two times, and you eagerly pop <<if $player.work.chair.bondage>>free of your chair<<else>>to your feet<</if>> and follow <<=setup.getNpcName("npc_manager","formal")>> to<<if $player.makeup.template>> the bathroom to quickly touch up your makeup, then on to<</if>> the elevator.<br>
<br>
[<<moveTo "event_manager_lunch_3_2" "To lunch!" 1800>>]
</div>/*#
#desc: super-expensive lunch 3: eat
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Fancy Restaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Other than the somehow even more hyper-sexual waitress acting as reminder of the company's long, grasping influence, the lunch passes pleasantly, delicious food combined with some casual conversation that serves as a nice contrast to the stresses of your work.<br>
<br>
As you finish up your celebratory dessert you stop, <<=ps(setup.getNpcName("npc_manager","formal"))>> expression shifting as she looks past you... and you suddenly feel a hand on your shoulder.<br>
<br>
"@@.npc_boss;Well, well... look who we have here...@@"<br>
<br>
[<<moveTo "event_manager_lunch_3_3" "I thought <<he npc_boss>> was in a meeting?" 600>>]
</div>/*#
#desc: super-expensive lunch 3: npc_boss appears
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Fancy Restaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImageManager() setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You recognise the voice, and presence of <<=setup.getNpcName("npc_boss","formal")>> , and yet you have to turn to confirm, looking up as <<he npc_boss>> leers down at you with confident swagger.<br>
<br>
"@@.npc_boss;I was just inviting some of our associates down for a meal to celebrate a very productive meeting... when who should I see but <<if $player.flags.retreat.mission >= 2>>one of our most important Directors<<else>>our Director of the year<</if>> and her lovely assistant...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> and <<=setup.getNpcName("npc_boss","formal")>> have a brief staring contest as <<=ps(setup.getNpcName("npc_boss","formal"))>> grip tightens on your shoulder and <<he npc_boss>> runs a finger down your cheek. "@@.npc_boss;Yes, a lovely assistant, indeed... and a wonderful opportunity to show just what sort of perfect obedient employees our company trains and produces...@@"<br>
<br>
[<<moveTo "event_manager_lunch_3_4" 'Look to <<=setup.getNpcName("npc_manager","formal")>> for help...' 600 "<<set $scene.help=true>>">>]<br>
[<<moveTo "event_manager_lunch_3_4" 'Do not rock the boat.' 600 "<<set $scene.help=false>>">>]
</div>/*#
#desc: super-expensive lunch 3: npc_boss punish
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.help || $npc_manager.flags.cruel>>
<<applyExperience 'bdsm' 11 'terrible' $EXPOSED>>
<<applyExperience 'submission' 18 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = "Fancy Restaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImageManager() setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.help && $npc_manager.flags.cruel == 0>>
You shoot a desperate glance across the table and <<=setup.getNpcName("npc_manager","formal")>> rises to her feet. "@@.npc_manager;It was lovely to bump into you... but I am just reminded of a meeting of my own that I need to prepare for. And I will, of course, require the help of my assistant.@@"<br>
<br>
"@@.npc_boss;But, of course,@@" <<=setup.getNpcName("npc_boss","formal")>> leers in mock apology, "@@.npc_boss;the bond between a manager and their chosen assistant... well, it really is one of the secrets to our company's continued success.@@"<br>
<br>
After a final squeeze <<=setup.getNpcName("npc_boss","formal")>> finally removes <<his npc_boss>> hand from your shoulder and you scramble back to your feet, gratefully taking <<=ps(setup.getNpcName("npc_manager","formal"))>> offered hand as she leads you to the exit with a stoic "@@.npc_manager;come along, dear.@@"<br>
<br>
You can feel <<=ps(setup.getNpcName("npc_boss","formal"))>> gaze linger as you hurry out of the restaurant, glancing back one last time to see <<him npc_boss>> ordering the waitress to her knees to suck and stroke <<his npc_boss>> guests while they wait for the table to get cleared off.<br>
<br>
[<<moveTo "event_manager_lunch_3_5" 'Hurry back to the office.' 600>>]
<<else>>
<<if $scene.help>>
You look to <<=setup.getNpcName("npc_manager","formal")>> for help, but her expression remains stern and, a moment later, you are being bent over, your face is being pressed into the table.
<<else>>
<<=ps(setup.getNpcName("npc_boss","formal"))>> mock tenderness disappears in an instant as <<he npc_boss>> bends you over and shoves your face into the table.
<</if>>
With one hand gripping the back of your head, <<=setup.getNpcName("npc_boss","formal")>> slides you forward, until you hips are pressed up against the edge of the table, a quick yank on your clothes leaving you butt exposed.<br>
<br>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
"@@.npc_boss;As you can see, she is equipped with our most advanced chastity device and plug, perfect for employee discipline... or reward, while having her ready and open for the most... challenging work assignments.@@"
<<elseif setup.checkItemTypeWorn("plug") && setup.checkItemTypeWorn("cage")>>
"@@.npc_boss;Note that she is plugged and chaste, like all of our subordinate employees. A perfect combination to enforce employee discipline... as well as training them to be ready and open for the most challenging assignments.@@"
<<elseif setup.checkItemTypeWorn("plug")>>
"@@.npc_boss;Note that she is plugged, like all of our subordinate employees. A perfect tool for enforcing discipline, or providing rewards, to our loyal workforce... as well as training them to be ready and open for the most challenging assignments.@@"
<<elseif setup.checkItemTypeWorn("cage")>>
"@@.npc_boss;Note that she is locked and chaste, like all of our subordinate employees. A perfect tool for enforcing discipline and control to our loyal workforce.@@"
<<else>>
"@@.npc_boss;Note her exquisite figure, a <<if $fetish.sissy>>SISSI <</if>>Secretary should look as good going as coming... well, on the rare occasion is allowed permission for the latter.@@"
<</if>>
<br><br>
A hard slap on your ass echoes through the restaurant as <<=setup.getNpcName("npc_boss","formal")>> administers a sharp blow to your rear with <<his npc_boss>> free hand. "@@.npc_boss;Of course, when it comes to discipline, sometimes hands on is the most delightful.@@" <<He npc_boss>> administers several more hard blows as <<he npc_boss>> continues <<his npc_boss>> lecture. "@@.npc_boss;A firm hand is always the first tool to keep employees in line. Here at Social Interaction Service Syndicate Inc. our employees are taught not just to expect it, but embrace it. Look at the lust in her eyes, how turned on she is by the mere act of being reminded of her place...@@"<br>
<br>
The combination of <<=ps(setup.getNpcName("npc_boss","formal"))>> always intense presence, along with each first strike of <<his npc_boss>> hand has you panting over the table... and then <<he npc_boss>> leans close, whispering to you privately while whoever <<his npc_boss>> guests were stare at you and chatter amongst themselves.<br>
<br>
"@@.npc_boss;Remember your place <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Just because you have moved up in the world does not mean you are anything other than a plaything... and your <<=setup.getNpcName("npc_manager","title")>> too. I know all about her... ambitions, but this is my company, and both of you will do well to remember your place in it.@@"<br>
<br>
A final spank puts a cap on <<=ps(setup.getNpcName("npc_boss","formal"))>> demonstration as <<he npc_boss>> steps away to leave you panting on the table.<br>
<br>
Casually, <<=setup.getNpcName("npc_boss","formal")>> calls for the waitress. "@@.npc_boss;We are ready for our table, now...@@"<br>
<br>
[<<moveTo "event_manager_lunch_3_5" 'Do not rock the boat.' 600 "<<set $scene.help=false>>">>]
<</if>>
</div>/*#
#desc: super-expensive lunch 3: manager takes you back to office after boss encounter
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.foodDelivery.done = true>>
<<registerProgressionEvent>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.help && $npc_manager.flags.cruel == 0>>
It is strange for the office, particularly your new upper-floor location, to feel like a bastion of safety... and yet, compared to being in the restaurant with <<=setup.getNpcName("npc_boss","formal")>>...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> helps you back to your chair and smiles at you, tenderly brushing a wayward strand of your hair back into position. "@@.npc_manager;I am sorry our lunch was ruined... perhaps someday we can get away for a more relaxing celebration, with work always... hanging over things.@@"<br>
<br>
You put on a brave smile and nod, both silently knowing that, so long as <<=setup.getNpcName("npc_boss","formal")>>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>>
<<if $npc_manager.flags.cruel == 0>>
helps you to your feet and gives you an ever-so-subtle hug. "@@.npc_manager;Come, let us return to the office.@@"
<<else>>
looks on dispassionately as you fix your clothes and return to your feet. "@@.npc_manager;Well, I believe that is enough for lunch, the afternoon's work awaits.@@"
<</if>>
<br><br>
Your bottom still tender, you follow your <<=setup.getNpcName("npc_manager","title")>> back to the office, thoughts still on <<=setup.getNpcName("npc_boss","formal")>> and how, so long as <<he npc_boss>>
<</if>>
is in power, neither of you, your <<=setup.getNpcName("npc_manager","title")>>, or anyone else at the company, will be fully safe.<br>
<br>
<<if $npc_manager.flags.cruel == 0>>
<<=setup.getNpcName("npc_manager","formal")>> graces you with a final comforting glance, and then you are again alone in the outer office,
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> does not so much look back as she disappears into her inner office, leaving you alone at your desk,
<</if>>
your work in front of you.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Back to work." 300>>]
</div>/*#
#desc: manager asks you to stay for lunch
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You place <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch on her desk as usual. She hurriedly opens the package, confirming its contents at a glance and nodding at you in satisfaction... only for her gaze to linger a few moments longer, a brief thoughtful hesitation before she pauses and speaks.<br>
<br>
"@@.npc_manager;Would you like to join me for lunch? My schedule is unusually empty for the next bit, and it can be isolating eating alone at one's desk...@@"<br>
<br>
[<<moveTo "event_working_lunch_intro_2" "You would like that." 60 "<<set $scene.lunch=true>>">>]<br>
[<<moveTo "event_working_lunch_intro_2" "Not today." 60 "<<set $scene.lunch=false>>">>]
</div>/*#
#desc: stay for lunch with manager
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.lunch>>
You smile and accept <<=ps(setup.getNpcName("npc_manager","formal"))>> invitation, quickly darting back to your desk to fetch your own meal and taking a seat across from your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
<<=setup.getNpcName("npc_manager","title")>> smiles, waiting for you to be fully situated before she starts eating.<br>
<br>
You
<<if $player.flags.mealplan.base == 'boiless'>>
sip at
<<else>>
eat
<</if>>
your meal and find yourself thinking back to that night at the bar as <<=setup.getNpcName("npc_manager","formal")>> adopts a more casual tone to ask, "@@.npc_manager;And how are things with you? I spend so much time on inspections and assessments, even the occasional celebration... but it occurs that I seldom check in how you are taking to things on a personal level... are you coming to appreciate your new position?@@"<br>
<br>
[<<moveTo "event_working_lunch_intro_3" "You love being her <<if $fetish.sissy>>SISSI <</if>>Secretary." 180 "<<set $scene.react='love'>>">>]<br>
[<<moveTo "event_working_lunch_intro_3" "One job is much like another, really." 180 "<<set $scene.react='neutral'>>">>]<br>
[<<moveTo "event_working_lunch_intro_3" "You don't like being a <<if $fetish.sissy>>SISSI <</if>>Secretary." 180 "<<set $scene.react='hate'>>">>]<br>
<<else>>
You turn down <<=ps(setup.getNpcName("npc_manager","formal"))>> invitation and she nods, not quite fully hiding a note of sad disappointment.<br>
<br>
"@@.npc_manager;Perhaps some other day... well, I shall not keep you any longer. You clearly have something you need to get to before it is time to resume your afternoon duties.@@"<br>
<br>
You nod and retreat from her inner office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 60>>]
<</if>>
</div>/*#
#desc: manager asks you to stay for lunch
#status: RELEASED 0.9.4.0
#ignore_spell: problemen,wij,windmolens,rotzooi,opgehelderd,organisatorische,betreft,hebben,techniek,problematiek,jouw
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.react && $npc_manager.flags.cruel>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.react>>
<<case 'love'>>
You smile and reply that you love your new job... and you new boss.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles back, an earnestness in her voice subtly off from her usual "fully in control of everything" tone. "@@.npc_manager;That is good to hear, your initial offer I—@@" she pauses, finishing with a more muted "@@.npc_manager;Well, I am glad everything is working out. I know things at the company can be... challenging, but your not just meeting of those challenges, but embracing and exceeding? Well, it makes me pleased beyond mere satisfaction with a subordinate.@@"<br>
<br>
<<printThought "I think she was about to say something else... something about the circumstances of my hiring? Was the data loss something more than a mere accident?">>
<<case 'neutral'>>
You shrug and reply that a job is a job.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;I am sorry to hear that. While a job is almost always going to be at least partially work we are forced to spend so much time doing it that it is best to find something that inspires and that one enjoys... or learn to appreciate what one is already doing.@@"
<<case 'hate'>>
You reply that you hate being a Secretary<<if $fetish.sissy>>, pointedly refusing to use the humiliating SISSI acronym<</if>> and that you much preferred your old job, and your old life.<br>
<br>
<<if $npc_manager.flags.cruel>>
<<=setup.getNpcName("npc_manager","formal")>> sniffs. "@@.npc_manager;Well your enjoyment of your duties is hardly required. Merely that you perform them. I advise you to keep that attitude to yourself, however. I expect my <<if $fetish.sissy>>SISSI <</if>>Secretary to be smiling and cheerful while on duty and if not, well... <<=setup.getNpcName("npc_work_doctor","formal")>> surely has some useful concoction to resolve your failings.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;I am... sorry to hear that. While a job is almost always going to be at least partially work we are forced to spend so much time doing it that it is best to find something that inspires and that one enjoys... or learn to appreciate what one is already doing. Unfortunately, given the state of things I cannot at present offer much more than platitudes and an encouragement to at least look for little joys.@@"
<</if>>
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
<br><br>
You are interrupted by an alert from <<=ps(setup.getNpcName("npc_manager","formal"))>> computer. She turns to her monitor and frowns. "@@.npc_manager;Well, it would seem that the happy accident of my free schedule is short-lived. There seems to be an emergency situation in one of our satellite offices that requires my immediate attention.@@" She pauses as she pushes her remaining lunch to one side and waves you off. "@@.npc_manager;Perhaps we can enjoy lunch together again sometime. I quite enjoyed it while it lasted.@@"<br>
<br>
You nod and retreat from the inner office as you hear her jump on a call.<br>
<br>
"@@.npc_manager;Stop met je problematiek over de techniek problemen wat de windmolens betreft tot wij jouw organisatorische rotzooi hebben opgehelderd...@@"<br>
<br>
<<printThought "Was that... Dutch?">> Whatever it was, you can tell from her tone that <<=setup.getNpcName("npc_manager","formal")>> is taking charge of matters... as is her wont.<br>
<br>
You return to your desk and finish up your lunch.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 60>>]
</div>/*#
#desc: manager asks you to stay for lunch, repeatable
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You deliver <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch and she smiles back at you with something more than just gratitude. "@@.npc_manager;Lovely, would you like to stay and eat together?@@"<br>
<br>
<<set _lunchEnd = setup.setNextDate($now, 0, 12, 30)>>
<<set _timeToLunchEnd = setup.secondsToDate($now,_lunchEnd)>>
[<<moveTo "event_working_lunch_wholesome_1" 'Take a seat across from <<=setup.getNpcName("npc_manager","formal")>>.' _timeToLunchEnd>>]<br>
[<<moveTo "event_working_lunch_submissive_1" 'Kneel submissively at <<=ps(setup.getNpcName("npc_manager","formal"))>> side.' _timeToLunchEnd>>]<br>
[<<moveTo "event_working_lunch_sex_1" "You'd like to eat her (out) for lunch..." 180>>]<br>
[<<moveTo "event_working_lunch_abort_1" "Not today." 180>>]
</div>/*#
#desc: stay for lunch, wholesome
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You take the offered seat across from <<=setup.getNpcName("npc_manager","formal")>> and start <<if $player.flags.mealplan.base == 'boiless'>><<if $player.sec_style.sex.boiless_bottle>>sucking down<<else>>drinking<</if>><<else>>eating<</if>> your lunch.<br>
<br>
Putting work aside, the two of you eat and chat... not so much about "other" things, given that, as far as you can tell <<=setup.getNpcName("npc_manager","formal")>> doesn't exactly have much in the way of interests outside of her job and dominance <<printThought "But I repeat myself...">> but she listens politely as you talk about some of the recent goings-on in your life before letting out some frustration discussing some challenges she has had recently regarding yet another of the company's mergers.<br>
<br>
"@@.npc_manager;Every time it is always frustrating, Human Resources being considered one of those "redundant" departments to be thinned down post-merger, but that risks losing out on so much organisational-specific context. I have managed to force through above-industry-standard payouts for those that we do let go... but I continue to fight for as much employee retention as I can, with HR, and across all departments. What does it mean to say that employees are our most valuable resource if we do not do all in our power to retain them and find their best possible use?@@"<br>
<br>
You nod, only for <<=ps(setup.getNpcName("npc_manager","formal"))>> to chime announcing the lunch period is at an end. "@@.npc_manager;And that is me needing to call in for another meeting. Thank you for the lunch, it was quite delightful.@@" <<=setup.getNpcName("npc_manager","formal")>> adds as you hurry out of the room and back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Return to your desk and prepare to work." 60>>]
</div>/*#
#desc: stay for lunch, wholesome
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You curtsy in acceptance of <<=ps(setup.getNpcName("npc_manager","formal"))>> invitation... and then walk around her desk to kneel next to her chair and <<if $player.flags.mealplan.base == 'boiless'>> quietly <<if $player.sec_style.sex.boiless_bottle>>suck<<else>>drink your lunch<</if>><<else>>eat your lunch off the floor<</if>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> glances down at you with a pleasant smile. "@@.npc_manager;You really have come so far. Simply lovely,@@" she states as she gives you a comforting pat on the head.<br>
<br>
You feel even happier, and you happily enjoy your lunch at your <<=ps(setup.getNpcName("npc_manager","title"))>> side as she chats casually about some goings-on in the department... nothing particularly significant, just the usual minor managerial troubles that she has been dealing with as the head of HR. You feel like this is the closest <<=setup.getNpcName("npc_manager","formal")>> really gets to being "away" from work, and you take comfort that she is willing to open up and just relax in your presence.<br>
<br>
All too soon lunch comes to an end, <<=setup.getNpcName("npc_manager","formal")>> caresses your face and smiles down at you, cradling your chin for a moment before pulling you in <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>by your collar <</if>>for a gentle parting kiss.<br>
<br>
"@@.npc_manager;Back to work for the both of us... but thank you again for the lovely company... and the always delightful service.@@"<br>
<br>
With a spring in your step you rise to your feet and head back to your desk to begin the afternoon, filled with fresh motivation to do all that you can for your wonderful <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Return to your desk and prepare to work." 60>>]
</div>/*#
#desc: stay for lunch, sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $SEEN_FRIEND>>
<<set _sub = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _sex 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName("npc_manager","formal")>> for the lunch invitation... and begin crawling between her legs.<br>
<br>
"@@.npc_manager;So you hunger for THAT sort of lunch,@@" <<=setup.getNpcName("npc_manager","formal")>> remarks with amusement as she spreads her thighs and guides you forward with one hand on your head.<br>
<br>
Your lips part in anticipation as you inhale deep the scent of <<=ps(setup.getNpcName("npc_manager","formal"))>> arousal... only for her grip to tighten with you a centimetre away, twisting your head to look up at you as she denies your desire. "@@.npc_manager;A final note, concerning your presumption. You may eat me out because I desire it and have trained you specifically to this purpose... but it a privilege I grant and an honour I expect you to be grateful to receive. Understand?@@"<br>
<br>
"@@.npc_manager;Yes, <<=setup.getNpcName("npc_manager","formal")>>. Thank you, <<=setup.getNpcName("npc_manager","formal")>>.@@" you whisper in reply.<br>
<br>
"@@.npc_manager;Good girl.@@" <<=setup.getNpcName("npc_manager","formal")>> responds with a smile before pressing you between her legs. "@@.npc_manager;Enjoy your lunch,@@" she teases while squeezing you in place with her thighs.<br>
<br>
You begin to lick. Supping of your <<=ps(setup.getNpcName("npc_manager","first"))>> secret valley with submissive hunger. Her hand remains on your head, idly fondling your hair massaging your scalp as you embrace your duty... and she enjoys her lunch.<br>
<br>
<<set _lunchEnd = setup.setNextDate($now, 0, 12, 30)>>
<<set _timeToLunchEnd = setup.secondsToDate($now,_lunchEnd)>>
[<<moveTo "event_working_lunch_sex_2" "Continue." _timeToLunchEnd>>]
</div>/*#
#desc: stay for lunch, sex finish
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your time in paradise races past as your lunch break zooms by. Precisely at twelve thirty <<=setup.getNpcName("npc_manager","formal")>> releases her hold on your head and rolls her chair away, causing you to nearly fall forward as your trance-like service is interrupted. "@@.npc_manager;That will do. It is time for you to return to work. As pleasant as it might be to sit on your face for the remainder of the afternoon... we both have duties to perform. Back to your desk! Chop, chop.@@"<br>
<br>
You take a quick breath, disappointed as the taste of your <<=setup.getNpcName("npc_manager","title")>> is already fading from your lips as you hop to your feet and curtsy, once again thanking her for the privilege of serving before you retreat from her office... with her smiling proudly after you.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Return to your desk and prepare to work." 60>>]
</div>/*#
#desc: stay for lunch, abort
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reply that you actually have some other things to take care of this lunch break and <<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Some other time, perhaps... well, do not let me keep you up.@@" She adds as she digs into her meal.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 60>>]
</div>/*#
#desc: manager invites herself to your house
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 2, 20, 30)>>
<<addTaskById 'manager_visit' _nextDate>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.keepKey = $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey &&
!(setup.checkItemTypeWorn("cage") && setup.checkItemTypeTag('cage', ['restrictedkey']))
&& (!$npc_manager.flags.playerstayedinchastity || $npc_manager.flags.playerstayedinchastity && $npc_manager.flags.chastitydays < 5) &&
$player.sec_style.submission.permanent_key == "">>
<<if $scene.keepKey>>
<<set $npc_manager.flags.chastitydays += 1>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<set $scene.cage_locked = $inventory[setup.getItemFromType("cage")].status.lock>>
<<if !$scene.cage_locked>>
<<set _cageId = setup.getItemFromType("cage")>>
<<manipulateItem _cageId "lock" true>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<else>>
<<set $scene.keepKey = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Welcoming you into her office at the end of another day, <<=setup.getNpcName("npc_manager","formal")>> greets you with a cheshire grin that immediately has you on edge.<br>
<br>
"@@.npc_manager;Good <<if $now.getUTCHours() > 16>>evening<<else>>afternoon<</if>> and I hope you enjoyed another productive day as my lovely <<if $fetish.sissy>>SISSI <</if>>Secretary! I wanted to talk about things outside of work, however. You see things have been happening so quickly, I realised I haven't had as much time to get to know you in a less... professional context. With that in mind, I thought it would be just lovely for us to get together for a nice private dinner, say... Sunday evening at <<if $options.militaryTime>>20:30<<else>>eight thirty<</if>>, your place?@@"<br>
<br>
You blink in surprise, unable to quite come up with an appropriate response.<br>
<br>
<<if $scene.keepKey>>
A sly smile appears on her face. "@@.npc_manager;Normally I would offer you your key for the weekend, but I think you would be much better prepared for my visit if I held onto it, hmm? If you really need it you can ask but... I think it would be much safer for me to remain in total control through to Monday... and perhaps beyond?@@"<br>
<br>
You gulp nervously, twitching inside your prison.
<<else>>
"@@.npc_manager;Wonderful, it is a date, then. One which I am quite looking forward to. And do not bother yourself with cooking, I will have something delivered, all you need worry about is your wonderful self. Now, did you have anything else you wished to speak of this afternoon?@@"
<</if>>
<br><br>
<<include "afterWorkManagerThemes">><br>
[<<moveTo "room_office_after_work" "Thank her and leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: cleaning for manager visit
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.maleClothing = setup.getItemsByFilter("tag",['male'])>>
<<set $specialScene = {}>>
<<if $scene.maleClothing.length == 0 && $player.sec_style.clothing.purge == "">>
<<addItem 'boxershorts'>>
<<elseif $player.sec_style.clothing.purge == "enthusiast">>
<<destroyMaleClothing $player $now true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
As you clean your house in preparation of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> visit, you
<<if $player.sec_style.clothing.purge == 'enthusiast'>>
reflect on your decision to switch to feminine clothing. The thought makes you smile and puts a skip in your step as you <<if $scene.maleClothing.length > 0>>find and pitch some masculine attire that had somehow survived the purge before you <</if>>continue on with the cleaning up as your thoughts turn towards what to wear for your <<=ps(setup.getNpcName('npc_manager', 'title'))>> visit.<br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_foyer')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
[<<moveTo "room_foyer" "Settle on this outfit and wait for her to arrive." _tmpSeconds "<<set $specialScene.wait=true>>">>]
<<elseif $scene.maleClothing.length == 0>>
happen upon a stray pair of boxers that had gotten lost under the bed. You look at them almost as a curiosity — all of your other male garments have been discarded or destroyed, making this relic of the past seem almost strange.<br>
<br>
<<printThought "Did I really wear stuff like this every day? They seem so bulky and baggy and stiff...">><br>
<br>
You consider what to do with your find.<br>
<br>
[<<moveTo "event_manager_visit_prep_2" "Throw the useless old things away." 30 "<<set $specialScene.clothingStyle='discard'>>">>]<br>
[<<moveTo "event_manager_visit_prep_2" "Put them back in your wardrobe." 30 "<<set $specialScene.clothingStyle='store'>>">>]<br>
[<<moveTo "event_manager_visit_prep_2" "Put them on." 30 "<<set $specialScene.clothingStyle='wear'>>">>] <<hint $options "I doubt <<=setup.getNpcName('npc_manager', 'formal')>> would be happy if she found out...">>
<<else>>
straighten up your wardrobe a bit. Going through your things, you organize all the fun new clothing you have picked up recently before coming across the final few "male" items left over from before...<br>
<br>
<<if setup.getTotalValue("feminization") > 13>>
<<printThought "Ew, how did I ever wear stuff like this? Yuck!">>
<<else>>
<<printThought "Huh, it seems so strange that I used to wear things like this every day... not anymore!">>
<</if>>
<br><br>
[<<moveTo "event_manager_visit_prep_2" "Throw the useless old things away." 300 "<<set $specialScene.clothingStyle='discard'>>">>]<br>
[<<moveTo "event_manager_visit_prep_2" 'Take inspiration from your <<=setup.getNpcName("npc_manager", "title")>> and BURN THE HERETICAL CLOTHING!' 300 "<<set $specialScene.clothingStyle='burn'>>">>]<br>
[<<moveTo "event_manager_visit_prep_2" "Put them away and keep straightening things up, you never know..." 300 "<<set $specialScene.clothingStyle='store'>>">>]
<</if>>
</div>/*#
#desc: deal with clothing found while cleaning before manager visit
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $specialScene.clothingStyle>>
<<case 'discard' 'burn'>>
<<set $player.sec_style.clothing.purge = 'voluntary'>>
<<setThreshold 'feminization' 'purge_feminization' 'voluntary_purge'>>
<<destroyMaleClothing $player $now true>>
<<case 'store'>>
<<addItem 'boxershorts'>>
<<itemToWardrobe 'boxershorts'>>
<</switch>>
<</if>>
<<set $player.location = "Apartment hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<div id="invframe" class="scrolltext">
<<switch $specialScene.clothingStyle>>
<<case 'discard'>>
Gathering up your remaining male clothing, you take a quick detour to the garbage chute to get rid of them, yet another signifier of masculinity purged from your flat and your life.
<<case 'burn'>>
Gathering up your remaining male clothing, you head for the incinerator in the basement of the building. Tossing the clothes into the pyre, you wait for a couple minutes, watching them swiftly ignite before heading back to your flat to continue preparations.
<<case 'store'>>
Straightening things up, you organize your remaining male clothing alongside the rest of your outfits in the wardrobe and continue on with cleaning.
<<case 'wear'>>
You put the boxers back on, even as a voice in the back of your mind screams that this is surely going to have consequences...
<<default>>
ERROR, unexpected scene.clothing style <<=$specialScene.clothingStyle>>
<</switch>>
<br><br>
With the clothing out of the way, the rest of cleaning proceeds without incident and you are finally left to decide on what to wear for your <<=ps(setup.getNpcName('npc_manager', 'title'))>> visit.<br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_foyer')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
[<<moveTo "room_foyer" "Settle on this outfit and wait for her to arrive." _tmpSeconds "<<set $specialScene.wait=true>>">>]
</div>/*#
#desc: not waiting for manager's visit
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.atHome = setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
<<if $scene.atHome>>
<<if setup.checkNaked()>>
<<set $scene.outfitType = 'naked'>>
<<elseif setup.checkSleepWear() != "not_sleepwear">>
<<set $scene.outfitType = 'bed'>>
<<elseif setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings')>>
<<set $scene.outfitType = 'underwear'>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'male'>>
<<set $scene.outfitType = 'male'>>
<<else>>
<<set $scene.outfitType = setup.analyzeWornTags(['slutty','casual','office','formal','schoolgirl','maid','fetish'])>>
<</if>>
<<completeTask 'manager_visit' $now true>>
<<else>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<set _nextDate = setup.setNextDate($now, 7, 18, 0)>>
<<addTaskById 'manager_visit' _nextDate>>
<</if>>
<</if>>
<<if $scene.atHome>>
<<set $player.location to "Foyer">>
<<else>>
<<set $player.location to "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.atHome>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.atHome>>
You have lost track of time when the door rings — your <<=setup.getNpcName('npc_manager', 'title')>> has arrived for her scheduled visit.<br>
<br>
[<<moveTo "event_manager_visit_tour_1" "Get the door." 30 "<<set $specialScene = {}>><<set $specialScene.wait=false>>">>]
<<else>>
You get a call from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;Where are you? Here I came all the way out to your flat and you are not home! Very disappointing, we will try again next week. Pay better attention to your schedule!@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: manager enters your flat and inspects you
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkNaked()>>
<<set $scene.outfitType = 'naked'>>
<<elseif setup.checkSleepWear() != "not_sleepwear">>
<<set $scene.outfitType = 'bed'>>
<<elseif setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings')>>
<<set $scene.outfitType = 'underwear'>>
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'male'>>
<<set $scene.outfitType = 'male'>>
<<elseif setup.checkVisibleClothingTag('maid') > 60>>
<<set $scene.outfitType = 'maid'>>
<<else>>
<<set $scene.outfitType = setup.analyzeWornTags(['slutty','casual','office','formal','schoolgirl','maid','fetish'])>>
<</if>>
<<if $scene.outfitType == "male">>
<<if State.hasPlayed('purchase_formal_party_dress') && !State.hasPlayed('event_manager_preparty_4_change')>>
<<addItemSet 'formal_outfit_red'>>
<<else>>
<<addItemSet 'formal_cocktail_pink'>>
<</if>>
<<else>>
<<if $player.flat.dirty == 0>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<elseif $player.flat.dirty < 3>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<elseif $player.flat.dirty < 7>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<elseif $player.flat.dirty < 14>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $scene.puntPsych = $currentTasks.hasOwnProperty("psychiatrist_endless_hypnosis_1") && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) == 0>>
<<if $scene.puntPsych>>
<<set $currentTasks.psychiatrist_endless_hypnosis_1.trigger.atPsychiatrist.time.date = setup.getNextDayOfWeek($now, 3, 19, 0)>>
<</if>>
<</if>>
<<if $scene.outfitType == "male" && (State.hasPlayed('purchase_formal_party_dress') && !State.hasPlayed('event_manager_preparty_4_change') && setup.checkItemWorn('formal_dress_red') || setup.checkItemWorn('formal_dress_pink') && setup.analyzeWornTags(['female','male','unisex']) == 'female')>>
<<initRoom>>
<<moveTo "event_strict_clothing_purge_1">>
<</if>>
<<if $scene.outfitType == "male">>
<<set $player.location to "Bedroom">>
<<else>>
<<set $player.location to "Foyer">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.outfitType == "male">>
<<createAdvBGR setup.getBedroomImage() setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if def $specialScene && $specialScene.wait>>
You're a bit nervous as you wait for seconds to tick past in anticipation of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> visit but almost before you know it, the hour arrives and your bell chimes.
<<elseif $player.sec_style.clothing.purge == "">>
<<=setup.getNpcName('npc_manager', 'formal')>> is walking towards you up the hall. The door is half-closed, but you have no illusions that slamming the door in her face would do anything but see her ripping through the cheap artificial wood like it was paper.
<<else>>
There is a knock on the door. Feeling nervous, you quickly rush to let <<=setup.getNpcName('npc_manager', 'formal')>> in.
<</if>>
<br><br>
<<if $scene.outfitType == "male">>
You open the door for <<=setup.getNpcName("npc_manager","formal")>> and her expression instantly turns south. "@@.npc_manager;What on earth—@@" she states, looking you over and then pushing straight into your flat.<br>
<br>
"@@.npc_manager;No, no, no. What you are wearing is a horror. This must be dealt with IMMEDIATELY.@@" She grabs you by the <<if setup.checkItemTypeWorn("shirt")>>shirt<<else>>hair<</if>> and drags you through the house, somehow knowing exactly the path to the bedroom where she tosses you on the bed. "@@.npc_manager;You invite me to your home... and then you dress like THAT? No, this is totally improper.@@"<br>
<br>
You start to get up but she shoves you back onto the bed, knocking the air out of you as her hand hits your chest like a wrecking ball. "@@.npc_manager;Stay there, while I find something more appropriate in your wardrobe.@@"<br>
<br>
She freezes you with a parting glare and then opens your wardrobe, quickly locating the dress you first wore for the attempted visit to the after-work party. "@@.npc_manager;There, that is far more suitable for a cute thing such as yourself.@@"<br>
<br>
<<if $scene.puntPsych>>
<<=setup.getNpcName("npc_manager","formal")>> pauses, as if remembering something. "@@.npc_manager;Oh, and do not worry about your appointment with <<=setup.getNpcName("npc_psychiatrist","formal")>> interfering with our evening together. I had her cancel, so you can see her on Wednesday. Now, where were we...@@"
<</if>>
She stands between you and the door, hands on her hips as she waits for you to change.<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_clothing_purge_1" "Change into the dress..." 180 "<<removeEverythingButUnderwear>><<if State.hasPlayed('purchase_formal_party_dress') && !State.hasPlayed('event_manager_preparty_4_change')>><<wearItemSet 'formal_outfit_red'>><<else>><<wearItemSet 'formal_cocktail_pink'>><</if>>">>]<br>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">>
<</if>>
[<<moveTo "event_strict_clothing_purge_refuse" "You aren't at the office, you don't have to dress to a uniform in your own home!" 180>>]
<<else>>
Opening the door in greeting, you welcome her inside.
<<if $player.flat.dirty < 7>>
<<if $player.flat.dirty == 0>>
She looks at your immaculately clean apartment and smiles. "@@.npc_manager;Such a delight to see your place so clean! That speaks to the sort of ordered neatness that marks a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<elseif $player.flat.dirty < 3>>
She nods in approval as she takes in the state of your apartment. "@@.npc_manager;Good, your flat is nicely cleaned, I just hope this is how you normally keep it and not some put-on on my behalf.@@"
<<elseif $player.flat.dirty < 7>>
She looks around at your flat but makes no further comment.
<</if>>
Her gaze turns towards you as you get flashbacks to your daily inspections.
<<else>>
<<if $player.flat.dirty < 14>>
She shakes her head as she looks around your flat. "@@.npc_manager;Very unimpressive, both that you would let things get into such a state, and that you did not think to clean up before entertaining guests.@@"
<<else>>
She scans the disaster zone that is your apartment "@@.npc_manager;This is... well, this is quite depressing to see that you would let your living area reach such a state, and not even think to clean things up before entertaining guests!@@"
<</if>>
She sighs, "@@.npc_manager;I have half a mind to leave but... I came so far, and it is you that I am here to see, not some run-down apartment.@@" Her gaze turns towards you as you get flashbacks to your daily inspections.
<</if>>
<br><br>
<<switch $scene.outfitType>>
<<case 'naked'>>
"@@.npc_manager;Well, this is... no, this will not do at all. Please get changed into something more appropriate. I do not want you flashing and distracting me all evening.@@"
<<case 'slutty'>>
"@@.npc_manager;Is this how you dress when you are not at work?@@" She raises an eyebrow at your slutty ensemble. "@@.npc_manager;Well, it is your body to show up, I will hardly complain about the opportunity to gaze upon it.@@"
<<case 'casual'>>
"@@.npc_manager;Ah, the <<if $fetish.sissy>>sissy<<else>>girl<</if>> in casual mode. I was hoping to catch you in a bit of a different style than what I see every day at the office, I approve.@@"
<<case 'office'>>
"@@.npc_manager;Hmm, I thought you might try something a bit different in style than what I might see you wearing to the office. Still, it is not like I get tired of you dressing like that, so this is quite alright with me.@@"
<<case 'formal'>>
<<if State.hasPlayed("event_strict_clothing_purge_refuse")>>
"@@.npc_manager;Mmm, you do clean up nicely... if only you could manage without my constant supervision...@@"
<<else>>
"@@.npc_manager;My, my, all dressed up for the occasion, you look positively lovely.@@"
<</if>>
<<case 'bed'>>
"@@.npc_manager;I came to join you for dinner, not for a sleepover. Please go change into something more appropriate.@@"
<<case 'schoolgirl'>>
"@@.npc_manager;Cute but... that costume is not really appropriate for a nice dinner, is it? How about you go change into something a bit less... juvenile and trashy.@@"
<<case 'maid'>>
"@@.npc_manager;Oh how lovely! Guess you wanted to really get in the proper mood to clean things up for my visit.@@" She smiles as she pretends to brush some dust off your shoulder. "@@.npc_manager;You really do make a lovely servant, keep it up and I may have to give you a second job coming home with me at night!@@"
<<case 'underwear'>>
"@@.npc_manager;Cute, but a bit... under-dressed for guests.@@" She notes as you blush in your underthings. "@@.npc_manager;Please go put on something a bit more appropriate.@@"
<<case 'fetish'>>
"@@.npc_manager;Hmm, I am unsure what impression you had as to the intent of this visit but that outfit is a bit... shall we say, distracting? Do change into something more appropriate.@@"
<<default>>
"@@.npc_manager;No, I do not like that outfit at all. Please go change into something more appropriate. Something that you might wear to work will be sufficient.@@"
<</switch>>
<br><br>
<<if $scene.puntPsych>>
<<=setup.getNpcName("npc_manager","formal")>> pauses, as if remembering something. "@@.npc_manager;Oh, and do not worry about your appointment with <<=setup.getNpcName("npc_psychiatrist","formal")>> interfering with our evening together. I had her cancel, so you can see her on Wednesday. Now, where were we...@@"<br>
<br>
<</if>>
<<if !['maid', 'formal', 'office', 'casual', 'slutty'].includes($scene.outfitType)>>
You blush in embarrassment and head to your room to change into your normal work attire, since you already know that's the sort of thing she approves of.<br>
<br>
[<<moveTo "event_manager_visit_tour_1b" "Get changed." 30>>]
<<else>>
She gestures for you to lead the way to give her a tour of your flat.<br>
<br>
[<<moveTo "event_manager_visit_tour_2" "Lead her through the apartment." 30>>]
<</if>>
<</if>>
</div>/*#
#desc: refuse strict purge
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<destroyMaleClothing $player $now false>>
<<set $scene.addDress = !setup.checkItemOwned('formal_dress_pink')>>
<<addItem 'formal_dress_pink'>>
<</if>>
<<if (State.hasPlayed('purchase_formal_party_dress') && !State.hasPlayed('event_manager_preparty_4_change') && setup.checkItemWorn('formal_dress_red') || setup.checkItemWorn('formal_dress_pink')) && setup.analyzeWornTags(['female','male','unisex']) == 'female'>>
<<initRoom>>
<<moveTo "event_strict_clothing_purge_1">>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You toss the dress aside and stand up to firmly state that your so-called uniform rules only apply at the office, not in your own home — which she all but forced you to invite her to.<br>
<br>
She simmers with rage as she takes a step towards you, then another. You reflexively back up only to bump into the edge of the bed, which is where she catches you, holding you from falling with one hand before pulling you close and then off your feet.<br>
<br>
Your heart races as you dangle in the air and she looks you in the eye. "@@.npc_manager;Rules only applying at the office? Oh you foolish <<if $fetish.sissy>>sissy<<else>>girl<</if>> — I OWN you. Do you think being my <<if $fetish.sissy>>SISSI <</if>>Secretary is merely a job? No, no, it is your life. You will do what I say, when I say... and to start, we shall banish these disgusting clothing once and for all.@@"<br>
<br>
In a single motion she rips the clothes from your body and sends you falling onto the bed. You try to scramble, but she is relentless in tearing off the last of your masculine attire, yet without scratching your flesh. She stands over the bed, shredded clothing clutched in each hand, looming over you like some sort of triumphant demoness.<br>
<br>
She snorts and drops a <<if !$scene.addDress>>familiar <</if>>pink dress at your feet. "@@.npc_manager_dom;Now get dressed properly. Unless you would forgo dinner for a trip to the lower floors. Exchange this private flat for a cell where <<=setup.getNpcName("npc_work_doctor","formal")>> can have free reign to turn you into one of <<his npc_work_doctor>> experiments.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_clothing_purge_1" "Put on the dress..." 180 "<<removeEverythingButUnderwear>><<wearItem 'formal_dress_pink' true>>">>]<br>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">>
<</if>>
</div>/*#
#desc: strict purge
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<destroyMaleClothing $player $now true>>
<<set $player.sec_style.clothing.purge = "strict">>
<<setThreshold 'feminization' 'purge_feminization' 'forced_purge'>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You put on the dress and <<=ps(setup.getNpcName("npc_manager","formal"))>> mood instantly brightens. "@@.npc_manager;See? So much more appropriate for entertaining guests.@@"<br>
<br>
She pats your cheek as you notice that she has gathered the remainder of your male clothes in her other hand. "@@.npc_manager;Now, I am going to pop up the hallway and put these things in the bin so that they never again defile my sight — and when I return, we can start this evening over, properly.@@"<br>
<br>
She spins on her heel and walks back to the foyer. You consider locking the door... but what would be the point? She would either tear it down or come up with something even worse. As she said, she controls you, and unless you can figure out a way out of your contract, your choices are between obedience and punishment.<br>
<br>
You sigh as you watch her trash the last of your male clothing — even going so far as to rip things in half before tossing them in the chute, as if you might otherwise go dumpster diving to recover them...<br>
<br>
Her task complete, she walks back towards your flat...<br>
<br>
[<<moveTo "event_manager_visit_tour_1" '"Get the door."' 60 "<<set $scene.outfitType='formal'>>">>]
</div>/*#
#desc: manager has you change for her visit
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<printThought "Best to just dress like I'm going to work.">><br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="event_manager_visit_tour_1b">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Back.">>'>>]<br>
<</if>>
<<if ['formal','office'].includes(setup.analyzeWornTags(['casual','office','formal','schoolgirl'])) && setup.analyzeWornTags(['male','female','unisex']) == 'female' && setup.checkOutsideDecency()>>
[<<moveTo "event_manager_visit_tour_2" 'Lead <<=setup.getNpcName("npc_manager","formal")>> through the apartment.' 30>>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
[@@.link_locked;No makeup? That's not going to work...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_too_fem">>
[@@.link_locked;This makeup is maybe a bit too much...@@]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
[@@.link_locked;My makeup is a mess, I need to deal with this!@@]
<<elseif setup.checkOutsideDecency()>>
<<if !['formal','office'].includes(setup.analyzeWornTags(['casual','office','formal','schoolgirl']))>>
[@@.link_locked;This wouldn't be appropriate for the office...@@]
<<else>>
[@@.link_locked;<<=setup.getNpcName("npc_manager","formal")>> is surely not going to be happy if I'm not dressed feminine.@@]
<</if>>
<<else>>
[@@.link_locked;No, this isn't quite appropriate.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: manager starts to tour your flat
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.purge == "enthusiast">>
<<setThreshold 'feminization' 'purge_feminization' 'enthusiast_purge2'>>
<</if>>
<</if>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "This doesn't seem like the time or place to change your clothes.">>
<<set $player.location to "Your Flat">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You lead the way on a brief tour of the kitchen and living room.
<<if $npc_exgirlfriend.flags.bondage_machine.unlocked || setup.hasUpgrade($computer, 'vr')>>
Noticing the "toys" scattered around your computer, she smiles. "@@.npc_manager;Well, it would appear someone has fun playing with herself. Very nice. While chastity and control are, of course, virtues, so too is it important for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> to explore and feel comfortable with her body.@@"
<<else>>
As you show her around, you can't help but feel like your living space is a bit sterile and static, the decorative touches previously provided by your ex never having really been replaced what with all of your distractions and life-changes since the breakup.
<</if>>
<br><br>
<<switch $npc_chuck.stage>>
<<case 0>>
<<if $npc_chuck.timebased.grow >= 100>>
She pauses to look at <<=setup.getNpcName("npc_chuck", "suffix")>> and <<his npc_chuck>> cracked pot. "@@.npc_manager;It would seem your leafy friend is due for a new container, you should take care of that before you have dirt and root-water leaking all over the carpet.@@"
<<else>>
<<if $npc_chuck.timebased.water < 50>>
She pauses to look at <<=setup.getNpcName("npc_chuck", "suffix")>> and then orders you to get water from the kitchen. "@@.npc_manager;A plant is a responsibility, you really should do better at watering your leafy friend.@@"
<<else>>
She pauses to look at <<=setup.getNpcName("npc_chuck", "suffix")>> with the slightest amused smile of recognition...
<</if>>
<</if>>
<<case 1>>
<<if $npc_chuck.timebased.water < 50>>
She pauses to look at <<=setup.getNpcName("npc_chuck", "suffix")>> and then orders you to get water from the kitchen. "@@.npc_manager;A plant is a responsibility, you really should do better at watering your leafy friend.@@"
<<else>>
She pauses to look at <<=setup.getNpcName("npc_chuck", "suffix")>> with the slightest amused smile of recognition...
<</if>>
<<case 2 3 4>>
She pauses to look at <<=setup.getNpcName("npc_chuck", "suffix")>> taking up the corner of the room. "@@.npc_manager;My my, I have not seen one of these in quite some time... and it looks so healthy, you must have spent quite some time... nurturing your plant...@@"<br>
<br>
<<printThought "Wait... does she know?">><br>
<br>
She continues on to the next room before you can ask any further questions.
<<default>>
ERROR: unexpected npc_chuck.stage <<=$npc_chuck.stage>>
<</switch>>
<br><br>
<<if $player.sec_style.clothing.purge == "">>
Continuing on to the bedroom, she looks around and frowns "@@.npc_manager;Hmm, this room does not fit you at all! I know I only have you for so many hours a day, but if one wishes to be the best <<if $fetish.sissy>>SISSI <</if>>secretary they can be, they should look for ways to re-orient their life as a whole towards that goal. This? well, this is dull urban tedium, hardly the proper environment to best nurture a vibrant, wonderful young lady like yourself. Now then, let us see what you have in this wardrobe...@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_3" "Move on." 30>>]
<<elseif $player.sec_style.clothing.purge == "enthusiast" && setup.getItemsByFilter("tag",['male']).length == 0>>
She passes through your bedroom, taking a deep breath through her nose as she smiles.<br>
<br>
"@@.npc_manager;My, my. I sense not the slightest whiff of masculine attire... not that I expected anything less, but to know that you have so fully and completely committed yourself... well, it makes me proud, and happy.@@"<br>
<br>
You curtsy, noting that ditching your old masculine clothes was one of the best decisions you ever made.<br>
<br>
"@@.npc_manager;Quite so.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Follow as she returns to the living room." 30>>]
<<else>>
She walks past your bedroom. "@@.npc_manager;Fortunately we have already cleansed that area of any... problematic elements. Come along.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Follow as she returns to the living room." 30>>]
<</if>>
</div>/*#
#desc: manager checks out your wardrobe
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Wardrobe">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<set $scene.maleClothing = setup.getItemsByFilter("tag",['male'])>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You feel your pulse quicken as <<=setup.getNpcName('npc_manager', 'formal')>> approaches your wardrobe, opening it and stepping inside to look over your things.<br>
<br>
<<if $scene.maleClothing.length > 0>>
"@@.npc_manager;My, my, you have assembled quite a nice collection although...@@" she pauses, picking up an article of clothing with two fingers, holding it at arms length with obvious disgust as she turns towards you. "@@.npc_manager;What. Is. This?@@"<br>
<br>
A <<=setup.getItemName($scene.maleClothing[0])>>, you respond nervously.<br>
<br>
"@@.npc_manager;True but... why would one such as you EVER need something like this? Go back into your bedroom, I need to get to the bottom of this matter.@@"<br>
<br>
A few minutes later she emerges from the closet, dumping all of your remaining male clothing in a pile on the bed.<br>
<br>
<<if $scene.maleClothing.length > 1>>
"@@.npc_manager;Well, this is worse than I could have imagined. This is all of this very disappointing. Do you have anything to say for yourself or should we proceed directly to destroying this disgusting contraband?@@"
<<else>>
"@@.npc_manager;It looks like it was just the one, perhaps merely a mistake? In any case, I know you will agree that it is best if we immediately destroy this before it can cause you any further harm.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_visit_tour_4_disposal_1" "Agree with and thank her for the help clearing things out." 30 "<<set $scene.disposalStyle='obedient'>>">>]<br>
[<<moveTo "event_manager_visit_tour_4_disposal_1" "Ask if, perhaps you could donate it to charity instead for the tax savings?" 30 "<<set $scene.disposalStyle='money'>>">>]<br>
[<<moveTo "event_manager_visit_tour_4_disposal_1" "Object, those are yours!" 30 "<<set $scene.disposalStyle='forced'>>">>]
<<elseif def $specialScene && !$specialScene.hasOwnProperty('clothingStyle')>>
"@@.npc_manager;Such a lovely collection you have assembled, and so many memories! Why, thinking about the first time you wore some of these to work cannot help but bring a smile to my face! Still, best to be sure, you never know where these things could be hiding away, these things can be very sneaky, you know...@@" She digs through your wardrobe for a few minutes, and comes up with a wadded up pair of boxers.<br>
<br>
"@@.npc_manager;Just as I feared. This nasty thing was hiding away, just lurking like a trap. Of course I trust that you would have resisted its evil wiles but... well, fortunately I was here to defuse the situation. I know you will agree that it is best if we immediately destroy this before it can cause you any further harm.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_4_disposal_1" "Agree with and thank her for the help clearing things out." 30 "<<set $scene.disposalStyle='obedient'>>">>]<br>
[<<moveTo "event_manager_visit_tour_4_disposal_1" "Ask if, perhaps you could donate it to charity instead for the tax savings?" 30 "<<set $scene.disposalStyle='money'>>">>]<br>
[<<moveTo "event_manager_visit_tour_4_disposal_1" "Object, those are yours!" 30 "<<set $scene.disposalStyle='forced'>>">>]
<<else>>
"@@.npc_manager;Such a lovely collection you have assembled, and so many memories! Why, thinking about the first time you wore some of these to work cannot help but bring a smile to my face! And not a trace of masculinity to be found, just as it should be, except...@@" Her voice trails off as she turns to face you in a way that you somehow can never get quite used to.<br>
<br>
"@@.npc_manager;Hmm, I suppose it is possible you might have hidden something away... go on now. Strip, you are familiar with the drill by now, I want to confirm you aren't cheating on me with male underwear.@@"<br>
<br>
<<if $scene.panties != "" && setup.getItemObj($scene.panties).tags.includes('male')>>
<<printThought "Oh no, I'm wearing <<=setup.getItemName($scene.panties)>>!">><br>
<br>
[<<moveTo "event_manager_visit_tour_4_strip_1" "Why did I do this?" 30>>]<br>
<<else>>
[<<moveTo "event_manager_visit_tour_4_strip_1" "Strip as ordered, you have nothing to hide." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: manager has you strip during her visit
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Wardrobe">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<set $scene.straplessDress = setup.getItemFromType("strapless_dress") != "">>
<<set $scene.object=false>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.panties != "" && setup.getItemObj($scene.panties).tags.includes('male')>>
There is no hiding your boxers as you remove your clothing and her expression becomes one of deep disappointment that slowly heats into rage.<br>
<br>
"@@.npc_manager;What. Are. Those? No, do not answer, I have no time for your pathetic excuses. Get those disgusting things off of your delightful body right this instant. We have some burning to do before dinner.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_4_strip_2" "Object, you aren't at work, she can't order around like this... right?" 30 "<<set $scene.object=true>>">>]<br>
[<<moveTo "event_manager_visit_tour_4_strip_2" "Do as she says." 30 "<<set $scene.object=false>>">>]
<<elseif !setup.checkItemTypeWorn("bra") && !$scene.straplessDress>>
Her gaze fixates on your chest as she frowns.<br>
<br>
<<switch setup.calcBreastSize()>>
<<case "massive">>
"@@.npc_manager;No bra? How foolish, those chest melons of yours need all the support they can get!@@"
<<case "large" "medium">>
"@@.npc_manager;No bra? Just because you now have a nice full, womanly rack doesn't mean you should neglect the support and help a good bra can provide to maximally highlight you assets.@@"
<<case "small">>
"@@.npc_manager;No bra? Just because you are on the small side is no excuse to neglect properly feminine attire.@@"
<<case "none">>
"@@.npc_manager;No bra? Have you learned nothing from your dress code? Flat or no you belong in panties and a bra, you know that!@@"
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
She sighs. "@@.npc_manager;Still, I will let it slide this once, just never let me catch you like this at work!@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Follow as she returns to the living room." 120 "<<useClothSetPop 'tmp'>>">>]
<<elseif !setup.checkItemTypeWorn("panties")>>
<<if !setup.checkItemTypeWorn("cage") && $npc_manager.flags.require_chastity>>
Your remove your outer garments as ordered and do a slow turn to prove that you are wearing not a stitch of masculine attire.
<<if $npc_manager.flags.hascagekey>>
She looks shocked as she glares daggers at your exposed groin. "@@.npc_manager;I know that you were locked in chastity when you left work... and moreover, I am in possession of your key... would you care to explain EXACTLY what has transpired to leave you in this horrifying state?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2" "Lie and say it just slipped off..." 180 "<<set $scene.lie=true>><<set $scene.home=true>>">>]<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2" "Tell her you unlocked yourself..." 180 "<<set $scene.lie=false>><<set $scene.home=true>>">>]
<<else>>
She frowns at the <<if $player.body_ref.penis>>unrestrained thing bouncing<<else>>exposed flesh<</if>> between your legs. "@@.npc_manager;No chastity? I realise I allow you to hold your own key but this is quite disturbing. For one such as you to go about unlocked, well... it will certainly only lead to bad things. Still, you have not technically violated any rules and so I will resist the urge to slap something rigid and steel on it and confiscate the key. As to your lack of underthings, well... "going commando" would never be allowed at work but if that is how you wish to prance about at home that is your decision to make. Now get dressed, I imagine the food must be ready by now.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Follow as she returns to the living room." 120 "<<useClothSetPop 'tmp'>>">>]
<</if>>
<<else>>
Your remove your outer garments as ordered and do a slow turn to prove that you are wearing not a stitch of masculine attire. She smiles, "@@.npc_manager;My, my, no panties? And what perverted ideas were going through your mind when you were planning out this evening's visit? No matter, you are locked up and that is the truly important thing. While "going commando" would never be permitted at work here, well... I think I can make an exception. Now get dressed, I imagine the food must be ready by now.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Follow as she returns to the living room." 120 "<<useClothSetPop 'tmp'>>">>]
<</if>>
<<else>>
Your remove your outer garments as ordered and do a slow turn to prove that you are wearing not a stitch of masculine attire. She smiles, whether in satisfaction or desire you are unsure, though you swear you saw her gaze flick towards your bed for a moment and you gulp nervously, feeling suddenly quite exposed and vulnerable here in your own bedroom.<br>
<br>
"@@.npc_manager;Perfect, as expected, of course but...always safest to confirm, right? Go ahead and get dressed, I imagine the food must be ready by now.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Follow as she returns to the living room." 120 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: react to manager disposing of your male clothing during tour
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Wardrobe">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $clothSetsInt.tmp.data.delete($scene.panties)>>
<<removeItem $scene.panties true>>
<<deleteItem $scene.panties>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.object>>
You barely get out more than a word of objection out before she pounces forward, casually lifting you into the air with one hand and dumping you on the bed, pinning you in place as she tears the boxers from your body.<br>
<br>
"@@.npc_manager;Can't? You stupid girl. You should know by now that I can do anything to you that I want. You are mine, as much my property as the stapler on my desk or the shoes on my feet. Every moment of your resistance is merely extending your agony. The moment you accept who and what you are and give me the obedience that is my due.@@"<br>
<br>
You look up at her in fear as the masque of rage lingers for a few seconds before her expression softens and she lets you up, the scraps of your boxers in one hand as she steps away from the bed.<br>
<br>
<<else>>
Your moment of rebellion crushed, you remove the boxers and meekly hand them over.<br>
<br>
"@@.npc_manager;There, there, you know this is for the best. Though it puzzles me why you keep struggling, we both know that the purging of any masculine influence is what you need and for me to do anything else would be a betrayal of my duties as your superior.@@"<br>
<br>
You nod, what other choice do you have?<br>
<br>
<</if>>
<<if !setup.checkItemTypeWorn("cage") && $npc_manager.flags.require_chastity>>
<br><br>
The removal of your underthings reveals something far worse.
<<if $npc_manager.flags.hascagekey>>
She looks shocked as she glares daggers at your exposed groin. "@@.npc_manager;I know that you were locked in chastity when you left work... and moreover, I am in possession of your key... would you care to explain EXACTLY what has transpired to leave you in this horrifying state?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2" "Lie and say it just slipped off..." 180 "<<set $scene.lie=true>><<set $scene.home=true>>">>]<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2" "Tell her you unlocked yourself..." 180 "<<set $scene.lie=false>><<set $scene.home=true>>">>]
<<else>>
She frowns at the <<if $player.body_ref.penis>>unrestrained thing bouncing<<else>>exposed flesh<</if>> between your legs. "@@.npc_manager;No chastity? I realise I allow you to hold your own key but this is quite disturbing. For one such as you to go about unlocked, well... it will certainly only lead to bad things. Still, you have not technically violated any rules and so I will resist the urge to slap something rigid and steel on it and confiscate the key. While I could not possibly allow such a situation to persist at the office... well, this is your home, and I suppose that if this is how you wish to prance about on your own time... that is your decision to make. Now get dressed, I imagine the food must be ready by now.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Follow as she returns to the living room." 120 "<<useClothSetPop 'tmp'>>">>]
<</if>>
<<else>>
<<if $scene.object>>
"@@.npc_manager;Now, get dressed, all this activity has me quite peckish and I imagine the food should be ready by now.@@"
<<else>>
"@@.npc_manager;Well, this has been an entertaining, and productive, in a way, tour. Please get dressed and let us move on to dinner.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_visit_tour_5" "Follow as she returns to the living room." 60 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: react to manager disposing of your male clothing during tour
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Apartment Hallway">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.disposalStyle != "forced">>
<<set $player.sec_style.clothing.purge = $scene.disposalStyle>>
<<switch $player.sec_style.clothing.purge>>
<<case 'money'>>
<<setThreshold 'feminization' 'purge_feminization' 'money_purge'>>
<<case 'obedient'>>
<<setThreshold 'feminization' 'purge_feminization' 'obedient_purge'>>
<</switch>>
<<destroyMaleClothing $player $now true>>
<<if $player.sec_style.clothing.purge == "money">>
<<addCredits 50>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.disposalStyle>>
<<case 'money'>>
She seems surprised by your answer but, after a moment's thought, smiles.<br>
<br>
"@@.npc_manager;My, my. Such a clever girl you are, why that is quite a good idea — it saves you from any lingering malaise of masculinity and helps someone else out, all for a mild profit! As I recall I saw a donation bin on my way into your building, so I will just take all of this and drop it off in your name on my way home. This should cover what you would have gotten from the tax write-off.@@" She passes you a scant handful of credits. Have you really sold out some of the last concrete evidence of your prior masculinity for so little?<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> merely grins as she motions for you to lead the way to dinner.<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Dinner." 60>>]
<<case 'obedient'>>
You thank her for the help, passively pointing out that you should have done the same but that you just forgot.<br>
<br>
"@@.npc_manager;I understand. You are quite the busy girl and so long as you were not wearing them there was no real harm done. Still, always best to be thorough in these matters, cut out every trace of infection and leave no opportunity for backsliding. I saw a trash chute on the way in, how about you put those deplorable things where they belong then we come back for dinner?@@"<br>
<br>
You curtsy obediently and pick up the pile of clothes, walking out of the flat and depositing them in the chute all under her watchful eye. As you close the door and hear them fall down towards the dumpster below, you cannot help but feel a flicker of emotion — you have literally thrown away some of the last reminders of how you used to be <<if setup.getTotalValue("feminization") > 10>>and you smile, feeling like you have once again asserted your blossoming femininity<<else>>which leaves you feeling mixed, your blossoming femininity seemingly inescapable even as you continue to struggle to adjust<</if>>.<br>
<br>
Looking back towards <<=setup.getNpcName('npc_manager', 'formal')>>, you find her beaming with pride and the two of you head back to your flat for dinner.<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Follow." 60>>]
<<case 'forced'>>
You try to object to her destroying your property but she silences you with a glare.<br>
<br>
"@@.npc_manager;Your property? What a quaint, silly notion. You are MY property, in almost every way that matters, at least, and thus anything you possess is purely at my discretion. Now, gather these things up and let us send them down the trash chute before they can infect you with any more of their evil.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_4_disposal_2" "This is too much, you've folded to her before but there has to be a line. It will certainly cost your job but tell her to leave." 60 "<<set $scene.diposeObey=false>>">>]<br>
[<<moveTo "event_manager_visit_tour_4_disposal_2" "Do as she says." 60 "<<set $scene.diposeObey=true>>">>]
<<default>>
ERROR unknown scene.disposal style <<=$scene.disposalStyle>>
<</switch>>
</div>/*#
#desc: finish disposing male clothing under manager supervision
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Apartment Hallway">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.diposeObey>>
<<set $player.sec_style.clothing.purge = 'forced'>>
<<setThreshold 'feminization' 'purge_feminization' 'forced_purge'>>
<<destroyMaleClothing $player $now true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.diposeObey>>
Just as always happens, you fold to her will. Scooping up the pile of your male clothing and following her out of the flat, you watch your clothes fall into the abyss, the garbage chute door slamming closed like a gavel of finality.<br>
<br>
"@@.npc_manager;Very good, now, I believe it should be time for dinner.@@"<br>
<br>
You nod, giving a final glance back at the trash chute before following her back into the apartment.<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Continue." 60>>]
<<else>>
You say no. With a firmness and resolve that takes the both of you by surprise.<br>
<br>
Astoundingly she seems at a momentary loss for words, even moreso when you tell her to leave.<br>
<br>
"@@.npc_manager;Leave... you understand what this means, right? If I walk out now you will never see me again. Your career, such as it is, will be at an end and you will be unemployed and, once again, so very, very alone.@@"<br>
<br>
[<<moveTo "event_manager_visit_tour_4_disposal_bad_end" "Watch her leave." 60>>]<br>
[<<moveTo "event_manager_visit_tour_4_beg_1" "What were you thinking? Beg her forgiveness." 60>>]
<</if>>
</div>/*#
#desc: bad end for refusing to dispose of male clothing
#status: FINISHED 0.7.8.0
#*/
<<set $gameOver = 'keep_male_clothes'>>
<<set $player.location to "">>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/badend.png">>
<div id="invframe" class="scrolltext">
Your <<=setup.getNpcName('npc_manager', 'title')>> no, that's wrong, she isn't that anymore, she is merely <<=setup.getNpcName('npc_manager', 'Mrs.')>>, the psychotic ex-boss that you put up with for far, far too long. Whatever her title, she is gone. You let out a sigh that it feels like you have been holding for a month, taking a deep breath before heading for the living room, slowly eating alone as you consider what direction to take with your newly earned freedom...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: beg manager to stay during flat visit
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Suddenly thinking better, you hurriedly apologise and beg her to stay. She merely glares down at you as you slowly drop to your knees. With one finger she traces along your chin, fingernail almost like a claw. "@@.npc_manager;Such impertinence, this sort of outburst is so very unbecoming... still, I am willing to forgive, if you can only prove your contrition.@@"<br>
<br>
Withdrawing her hand, she raises one of her feet towards you, the patent leather heels so polished you can see your reflection.<br>
<br>
[<<moveTo "event_manager_visit_tour_4_disposal_bad_end" "Change your mind again and let her leave." 60>>]<br>
[<<moveTo "event_manager_visit_tour_4_beg_2" "Worship her feet." 60>>]
</div>/*#
#desc: apologise for disobedience in disposing of male clothing
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'terrible' $SEEN_FRIEND>>
<<set $player.sec_style.clothing.purge = 'forced'>>
<<setThreshold 'feminization' 'purge_feminization' 'forced_purge'>>
<<destroyMaleClothing $player $now true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Bringing your lips to the toes of her shoe, you beg her forgiveness, re-asserting that she is correct and that your role is to be obediently at her feet. You do not need to look up to sense the slight smile blossoming on her face at your obsequiousness as she lets you go on and on. You attempt to apologise for everything you have ever done to displease her. Only when you loop back around and start to repeat your desperate request for her to rule your life does she finally speak.<br>
<br>
"@@.npc_manager;Hmm, that will do, now hurry and dispose of that wretched clothing, I do not want the slightest hint of masculinity polluting your abode by the time we start dinner.@@"<br>
<br>
Rising to your feet, you bow once again and then gather things up, rushing up the hall to stuff everything into the garbage chute and send it off with a slam before hurrying back to your flat.<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Continue." 60>>]
</div>/*#
#desc: manager visit, dinner starts
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
No sooner has the door to your apartment closed when the doorbell chimes, a drone hovering outside with the nights boxed-up meal. <<=setup.getNpcName('npc_manager', 'formal')>> smiles as she takes a seat at the table and you take delivery of the food and start laying things out.<br>
<br>
The scents of the dinner already have your tummy rumbling as you try to figure out which boxes are which, tracing along with the instructions as you split off the appetisers from the rest and set out the first course.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods in approval but does not commence to eat, seemingly waiting for you to take your seat first.<br>
<br>
[<<moveTo "event_manager_visit_dinner_1" "Sit across from her." 600 "<<set $scene.kneel=false>>">>]<br>
<<if setup.getTotalValue("submission") >= 10>>
[<<moveTo "event_manager_visit_dinner_1" "Kneel down beside her chair." 600 "<<set $scene.kneel=true>>">>]
<<else>>
[@@.link_locked;You are not so submissive as to willingly sit anywhere but on a chair.@@]
<</if>>
</div>/*#
#desc: unpack manager dinner, decide how to sit
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<unset $specialScene>>
<<if $scene.kneel>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<setThreshold 'submission' 'voluntary_submission' 'at_her_feet'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locationsmanager_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.kneel>>
Finished unpacking the meal, you walk over next to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> chair and gracefully kneel down.<br>
<br>
"@@.npc_manager;My, my, my, look at who is impressing as the perfect slave both professionally and domestically.@@"<br>
<br>
<<if $player.flags.collar.owner == "npc_manager">>
Gently tracing your collar, she smiles. "@@.npc_manager;I never tire of seeing my collar around your throat... no it brings a smile to my face every time.@@"
<<elseif setup.checkItemTypeTag('choker', ['fetish'])>>
Gently tracing your collar, she smiles. "@@.npc_manager;Keep this up and you will earn a proper one of these. Yes... marking you as mine just moved up my list of priorities lest someone else take advantage of all the work I have done training up such a perfect slave.@@"
<<else>>
Gently caressing your neck, she smiles. "@@.npc_manager;Keep this up and you will be wearing my collar in no time. Yes... marking you as mine just moved up my list of priorities lest someone else take advantage of all my work training up such a perfect slave.@@"
<</if>>
<br><br>
You tingle with submissive joy as she gives you a gentle head-pat and then turns to her appetiser. She eats first, leaving you to simmer in want at the delicious smells. Only when she has finished her portion does she crack open the other container, gently feeding you each morsel by hand, her finger sending sparks through your body as she traces your lips and has you suck her fingers clean after every bite.<br>
<br>
Pushing the empty dishes aside, she frowns. "@@.npc_manager;As much as I am enjoying this lovely behaviour of yours, well... I do not want such a delicious meal to go cold so I give you permission to take your seat for the remainder.@@"<br>
<br>
Rising to your feet, you curtsy in appreciation before setting out the sumptuous main course and taking a seat across from her at the table.
<<else>>
Setting out her appetiser first, you walk around to the other side of the table and take a seat across. She waits for you to be seated before she starts eating, her expression an enigmatic half-smile.<br>
<br>
You hadn't realised how hungry you were as you try not to rush too much in eating the tasty starter but it isn't long before both of your plates are clean and you rise back to your feet to clear the table and then set out the sumptuous main course.
<</if>>
<br><br>
[<<moveTo "event_manager_visit_dinner_2" "Continue." 1200>>]
</div>/*#
#desc: start manager dinner
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.topics = ['secretary']>>
<<if $npc_ai.profile>>
<<set $scene.topics.push("ai")>>
<</if>>
<<set $scene.topics.push("barista")>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<set $scene.topics.push("admin")>>
<</if>>
<<set $scene.topics.push("doctor")>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locationsmanager_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As you eat, <<=setup.getNpcName('npc_manager', 'formal')>> chats casually, surprisingly so as it feels like most of the tension that defines her regimented behaviour at the office fades away and you feel yourself relaxing and letting down your guard.<br>
<br>
As the meal rolls on, there is a lull in conversation and, thanks to a bit of liquid courage you feel the urge to ask a more probing question about goings-on at the company.<br>
<br>
<<include "managerVisitDinnerDiscussion">>
</div>/*#
#desc: discussion topics for manager dinner visit
#status: FINISHED 0.7.8.0
#*/
<<if $scene.topics.includes("barista")>>
[<<moveTo "event_manager_visit_dinner_2_question" 'Ask her what <<=setup.getNpcName("npc_work_doctor","formal")>> did to <<=setup.getNpcName("npc_barista","nickname")>>.' 600 "<<set $scene.topic='barista'>>">>]<br>
<</if>>
<<if $scene.topics.includes("ai")>>
[<<moveTo "event_manager_visit_dinner_2_question" 'Ask her about the mysterious <<=setup.getNpcName("npc_ai","first")>>.' 600 "<<set $scene.topic='ai'>>">>]<br>
<</if>>
<<if $scene.topics.includes("admin")>>
[<<moveTo "event_manager_visit_dinner_2_question" 'Ask her what is going to become of your friend <<=setup.getNpcName("npc_admin","first")>>.' 600 "<<set $scene.topic='admin'>>">>]<br>
<</if>>
<<if $scene.topics.includes("doctor")>>
[<<moveTo "event_manager_visit_dinner_2_question" 'Ask her about <<=setup.getNpcName("npc_work_doctor","formal")>>.' 600 "<<set $scene.topic='doctor'>>">>]<br>
<</if>>
<<if $scene.topics.includes("secretary")>>
[<<moveTo "event_manager_visit_dinner_2_question" 'Ask her about your predecessor.' 600 "<<set $scene.topic='secretary'>>">>]<br>
<</if>>
[<<moveTo "event_manager_visit_dinner_3" "You can think of no other topic to discuss." 600>>]/*#
#desc: apologise for disobedience in disposing of male clothing
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Living Room">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.topics.delete($scene.topic)>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locationsmanager_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doctor'>>
You ask her about <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
"@@.npc_manager;Ah, <<him npc_work_doctor>>.@@" she states with obvious disgust. "@@.npc_manager;I do apologise for involving you with <<him npc_work_doctor>>, it was not my choice... all I can say is to be careful, <<his npc_work_doctor>> interests are not yours, or mine, for that matter. <<He npc_work_doctor>> is a knight who fancies <<himself npc_work_doctor>> a queen, if you would pardon the chess analogy, one whose ideas exceed <<his npc_work_doctor>> capability, all too willing to steal, pilfer and profiteer from the work of others without a care to the cost so long as <<he npc_work_doctor>> thinks it will further <<his npc_work_doctor>> goals.@@"<br>
<br>
None of what she says is exactly a shock, but you suppose it is good to have confirmation, and you consider what to ask next.
<<case 'barista'>>
You bring up <<=setup.getNpcName("npc_barista","nickname")>> and ask what happened to make her how she is?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> purses her lips and speaks slowly. "@@.npc_manager;She... overplayed her hand. Before you get too sorry for her, you should know that the woman she was before was... not a pleasant one. Smart, to be sure, but ambitious and almost totally immoral. She rose fast but in so doing made enemies and, in the end, was determined to be too large a threat to allow to continue. Her fate is a lesson to us all that we must be careful — the halls of power are a tightrope walk and the fall can be very far indeed.@@"
<<case 'ai'>>
A little bit nervous you ask her what she knows about <<=setup.getNpcName("npc_ai","first")>>?<br>
<br>
She raises an eyebrow in surprise, several long moments passing before she replies. "@@.npc_manager;Well... to be perfectly honest, I think you may know more about that... being than I do. She was created some time ago as part of a project to make a thinking AI, it was before my time and the project has been buried as a failure — and due to some of the unethical things they were doing. The official story is she was destroyed but, well... there have been rumours ever since of a ghost haunting the building and it sounds like you found her.@@"<br>
<br>
She thinks for a moment. "@@.npc_manager;You know... yes, I would not mind meeting this construct sometime, she could be quite the useful ally.@@"<br>
<br>
You slot that thought away and consider what to say next.
<<case 'admin'>>
You bring up what happened to your friend <<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_manager","formal")>> sighs, looking a mix of sorrowful and... ashamed?<br>
<br>
"@@.npc_manager;I truly am sorry for what happened to <<him npc_admin>>. You have to understand by now that there are powers in motion well beyond my own, once <<he npc_admin>> made such a vulgar move, well... there was nothing I could do. I will promise you this, however. If it is ever in my power, I will do what I can to restore your friend, but there are still many challenges ahead before that becomes even a glimmer of possibility.@@"<br>
<br>
You thank her for the promise and return that you will do whatever you can to help bring such to pass.<br>
<br>
"@@.npc_manager;I know, my dear, and you should know that such loyalty only makes you even more beautiful and precious.@@"<br>
<br>
You blush and think about what else to talk about.
<<case 'secretary'>>
You ask what really happened to your predecessor.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks sorrowful as she responds. "@@.npc_manager;She was... taken from me. She was a lovely girl, so smart and eager to please and obey and I came to rely on her... only for her to draw the attention of someone more senior. I did not want her to go, but I had no choice and she... well, I had perhaps trained her too well. I confess that when you appeared, I may have pushed a bit hard, wanting to reclaim something of what I lost... of course I understand now that you are a uniquely lovely creature all your own but still, I will have revenge for what was done to her.@@"<br>
<br>
You can sense real emotion in her voice, a fire in her final statement that you would not wish to be on the other end of. You ask if there is anything you could do to help?<br>
<br>
Her normal confidence reasserts itself as she smiles back. "@@.npc_manager;There will come a time. Things are in motion, and I will certainly be relying on you before this is all over. Still, for now, we must bide our time and work in quiet secrecy.@@"<br>
<br>
You nod and think about what else to talk about.
<</switch>>
<br><br>
<<include "managerVisitDinnerDiscussion">>
</div>/*#
#desc: manager dinner; asks you how you feel about your job
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Living Room">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locationsmanager_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Swirling the last of her wine after finishing her meal, she looks across the table at you with a disarming smile. "@@.npc_manager;So, now that you have invited me into your home and we have shared a simply lovely meal, I have to ask... how do you feel about things, how do you feel REALLY about all that has happened since that momentous day you <<if $player.sec_style.clothing.underwear == "strict">>became<<else>>agreed to become<</if>> my personal secretary.@@"<br>
<br>
You half wonder if she'll even be able to hear your reply over the thundering of your heartbeat especially since every instinct is telling you that something is different, that she actually wants to hear the truth...<br>
<br>
[<<moveTo "event_manager_visit_dinner_4" "Express gratitude for what she has done for, and to, you." 600 "<<set $scene.action='thank'>>">>]<br>
<<if setup.getAverageSecStyle() == "voluntary">>
[<<moveTo "event_manager_visit_dinner_4" "It's nice to have the opportunity to do what you already wanted." 600 "<<set $scene.action='voluntary'>>">>]<br>
<</if>>
[<<moveTo "event_manager_visit_dinner_4" "Note your mixed feelings about the path that has brought you to this point, even as you enjoy the destination." 600 "<<set $scene.action='mixed'>>">>]<br>
[<<moveTo "event_manager_visit_dinner_4" "Say you hate what she has done to you." 600 "<<set $scene.action='reject'>>">>]
</div>/*#
#desc: manager dinner; tell her how you feel about job
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Living Room">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'thank'>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<case 'reject'>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<case 'voluntary'>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</switch>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_invite_first'
0
'event_manager_theme_home'
true
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locationsmanager_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'thank'>>
Your voice cracks a bit as you make your confession — how pointless your old life was and how, for all your struggles, the world she has ushered you into is so amazing and wonderful and you are eternally grateful for her efforts.<br>
<br>
She smiles in pleasure and pride. "@@.npc_manager;On some level I knew... maybe I always knew? After all from that first day there was just something about you... knowing that you have so fully embraced the role prepared for you however, well... I have so very many other plans that you are going to love.@@"<br>
<br>
You feel almost giddy at the thought, especially as she rises to her feet with a smile. "@@.npc_manager;Speaking of fun, it appears that this delivery failed to include dessert, but I believe I have just the treat for a good girl like yourself.@@"<br>
<br>
[<<moveTo "event_manager_visit_dinner_5" "Follow her into the bedroom." 180>>]<br>
[<<moveTo "event_manager_visit_dinner_5_abort" "You're actually feeling a bit tired..." 60>>]
<<case 'voluntary'>>
You smile and shrug, explaining that, really, this is what you always wanted. You add that, while it's nice to have the freedom to explore at work, you are going to get there on your own.<br>
<br>
She smiles in amusement. "@@.npc_manager;Yes, I suppose you would have. Still, being there to witness your journey has been quite enjoyable... and I will continue to lend my... encouragement where necessary. On another topic... it appears that this delivery failed to include dessert, but I believe I have just the treat for a good girl like yourself.@@"<br>
<br>
[<<moveTo "event_manager_visit_dinner_5" "Follow her into the bedroom." 180>>]<br>
[<<moveTo "event_manager_visit_dinner_5_abort" "You're actually feeling a bit tired..." 60>>]
<<case 'mixed'>>
You sigh, explaining that, while you have come to appreciate your new life as a girl... "her" girl, the road to get here was hard and some of the things she did to you even now seem harsh and cruel.<br>
<br>
<<if $npc_manager.affection > 5>>
<<if $npc_manager.anger > 5>>
"@@.npc_manager;Yes, well... if you were not such a naughty girl, it would go far easier for you. I am, of course, happy that you are happy but there is no denying that you require a firm, disciplined hand to guide you.@@"
<<else>>
"@@.npc_manager;I apologise for that. At first well... that is a topic for another time but you must know that you are more to me now than a mere employee. If I treated you too harshly, it is only because I understood that is what you needed to blossom into the girl you always wanted to be.@@"
<</if>>
<<else>>
<<if $npc_manager.anger > 5>>
"@@.npc_manager;You would have an easier time if you were less of a disobedient slut. I am glad you have accepted and reached the point that you have but, well... you cannot deny that you have more to learn and have more than earned every discipline I have meted out.@@"
<<else>>
"@@.npc_manager;Yes, well... that is how the job works. While I will not lie about enjoying a bit of punishment fun, I take no joy in cruelty but what I have done was because I believed it was what you needed... and it would appear that I was, on balance, correct.@@"
<</if>>
<</if>>
<br><br>
Dabbing her lips with a napkin, she folds it neatly to one side and looks across the table at you. "@@.npc_manager;Now, it would appear that our order failed to include dessert, but that is fine, I have just the thing so that I do not have to leave unsatisfied.@@"<br>
<br>
She grins wide and heads for the bedroom as you find yourself rising to your feet to follow.<br>
<br>
[<<moveTo "event_manager_visit_dinner_5" "To the bedroom..." 180>>]<br>
[<<moveTo "event_manager_visit_dinner_5_abort" "You're actually feeling a bit tired..." 60>>]
<<case 'reject'>>
You reply that you hate what you have become, that you wish you could go back to who you were before.<br>
<br>
<<if $npc_manager.flags.cruel>>
<<=setup.getNpcName("npc_manager","formal")>> snorts in derision. "@@.npc_manager;Still you remain the resistant, ungrateful bitch... one would think that, after all this time, you would adjust to your new reality... or at least learn not to express such improper thoughts. Then again, I suppose you were not hired for your intellect, you should be grateful that you are so cute, or who knows where your failures would have lead you.@@"
<<elseif $npc_manager.affection > 5>>
<<=setup.getNpcName("npc_manager","formal")>> looks almost hurt by your words, and it takes her some time to compose a response. "@@.npc_manager;I—I am so sorry to hear that. Certainly I saw your reticence but I thought it was just part of the game... unfortunately, unless you decide to end your employment, things are already in motion and there is really nothing I can do. I might wish things were some other way but it is not yet within my power to change the course for either of us... though perhaps someday it might be.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> sighs and shakes her head. "@@.npc_manager;You really are quite the difficult, ungrateful bitch, you know that? Still, however much either of us might wish it were different, the only way out for you is to quit and go back off on your own. So long as you remain under my employ, well... there are things in motion beyond both of us, perhaps someday I could offer you a change but for now... that is not a possibility.@@"
<</if>>
<br><br>
Neatly folding her napkin, she rises to her feet. "@@.npc_manager;It seems that they neglected to deliver us any dessert and so... well, I believe I should be going. I will see you at work. Needless to say this discussion we had would not be safe to continue at the office, but I will bear what you said in mind for the future.@@"<br>
<br>
She turns to go, looking quite sad as she takes the handful of steps out of your flat and disappears. Were you too harsh on her? No, she asked for honesty and you gave it, but still, you find yourself wondering even more what all is happening behind the scenes at Social Interaction Service Syndicate Inc. and what else you will have to do to survive it.<br>
<br>
[<<moveTo "room_livingroom" "Clean up." 300>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: manager dinner; abort sex
#status: FINISHED 0.9.2.0
#*/
<<set $player.location to "Living Room">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locationsmanager_dinner.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Somewhat nervously, you decline implicit offer stating that, while you enjoyed the meal, you're a bit too tired for anything else.<br>
<br>
<<if $npc_manager.flags.cruel>>
She turns around, half sneering at you as you brace for something worse... only for her to chuckle and shake her head. "@@.npc_manager;Hmmff, your loss. In that case, I shall see you tomorrow morning at the office. Good night.@@"<br>
<br>
She stalks
<<else>>
She turns around, looking at you for a long moment before gently smiling and nodding. "@@.npc_manager;Very well. I would not wish to... impose in your own house. Thank you for the dinner and... the rest. I will see you tomorrow morning at the office. Have a good evening.@@"<br>
<br>
She slips
<</if>>
out of your house, leaving you alone and as confused as ever.<br>
<br>
[<<moveTo "room_foyer" "Continue." 120>>]
</div>/*#
#desc: manager dinner; after dinner fun
#status: FINISHED 0.7.8.0
#ignore_spell: g
#*/
<<set $player.location to "Bedroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == "thank" && !$player.virgin.cunnilingus>>
<<set $player.virgin.cunnilingus = "npc_manager">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Wasting no time, <<=setup.getNpcName("npc_manager","formal")>> has you spread out on the bed as she looks down on you with a grin.
<<if setup.hasUpgrade($bed, 'bed_bondage_gear')>>
Reaching for the restraints you have added to the bed, she starts cuffing your wrist. "@@.npc_manager;It would be such a tragedy not to take advantage of these wonderful upgrades.@@" Within moments you are secured and spread-eagled, and she smiles even wider. "@@.npc_manager;A beautiful, restrained <<if $fetish.sissy>>sissy<<else>>girl<</if>> all to myself... really what could be better?@@"
<<else>>
"@@.npc_manager;You really ought to consider upgrading your bed — I mean, really, not being able to restrain anyone down? And I bet a <<if $fetish.sissy>>sissy<<else>>girl<</if>> like you would sleep so much better nice and securely bound.@@"
<</if>>
<br><br>
With a wide smile, she lifts her skirt, exposing a sexy pair of red lace panties bordered by matching garters holding up her black stockings. "@@.npc_manager;You know what my problem is having dinner with a beautiful, submissive girl?@@" With a thumb through either side of the waistband she slides her panties off to reveal her glistening, clean-shaven snatch. "@@.npc_manager;It makes me soooo wet.@@"<br>
<br>
Tossing the panties to the side, she slides across the bed, sitting on top of your chest as she reaches down to caress your face.<br>
<br>
<<switch $scene.action>>
<<case 'thank' 'voluntary'>>
<<if $scene.aciton == 'voluntary'>>
"@@.npc_manager;So, given how... eager you are, well, how about we feed that enthusiasm?@@"<br>
<<else>>
"@@.npc_manager;I bet you're hungry for that dessert I promised, well... enjoy and make sure you clean your whole plate...@@"
<</if>>
<br><br>
She shuffles forward and she plants herself on your face, your view going dark as she drops her skirt over your head, your nose pressed against her clit as your lips meet her folds. Reaching down with both hands, she pulls you even tighter, your lips naturally parting as you are overcome with her wonderful scent, your tongue reaching out to enjoy the promised nectar...<br>
<br>
"@@.npc_manager;There we go, that is my good girl...@@" she whispers, her voice muffled by thighs pressing against your ears as you do as she says, licking and kissing and sucking for all you're worth. Your lips tease her clit while your tongue goes burrowing inside, coaxing out more deliciousness as it quests for her g-spot.<br>
<br>
Her fingers crawling through your hair tell you exactly how good a job you're doing as you <<if setup.hasUpgrade($bed, 'bed_bondage_gear')>>strain against the restraints and<</if>> put everything you have into devouring her treasure.<br>
<br>
Oxygen is becoming scarce, and you flirt with unconsciousness more than once but hardly care — your <<=setup.getNpcName("npc_manager","title")>> is on top of you, you are serving her; there can be no greater reward and yet still she blesses you with the cherry on top that is a heavenly flavour that, no matter how much you lick, remains as deliciously delightful as anything you have ever tasted.<br>
<br>
You think you count at least three orgasms — one of which has her squirting even more of her love juices right down your throat for you to eagerly swallow but eventually she rises. Even though you are out of breath, you <<if setup.hasUpgrade($bed, 'bed_bondage_gear')>>try to rise off the bed as far as your bonds allow,<<else>> rise off the bed,<</if>> not wanting to part. She gently pushes you back down with one hand, spinning on one knee to stand beside the bed and look down at you with a smile.
<<case 'mixed'>>
Sliding across the bed, she straddles your chest, pinning you down as she pulls a double-dildo gag out of her purse.<br>
<br>
"@@.npc_manager;Had you been a good girl, I would have offered you dessert, but you continue to play the brat and so...@@" Shoving the squat pecker gag into your mouth, she buckles it around the back of your head to leave the much longer external gag sticking up, the looming phallus making you go cross-eyed as she rises over you and aligns herself. "@@.npc_manager;Do not think this has you off the hook — you better work those neck muscles for all you've got because I am not letting you up until I get off.@@"<br>
<br>
Her weight settles on your face until the full length of the far from petite dildo slides into her. Belying her earlier comment, she starts grinding almost immediately. "@@.npc_manager;Come on,@@" she grunts "@@.npc_manager;If you do not start doing your part, I will have to find a way to motivate you...@@" Punctuating her statement, she reaches back to run clawed fingers along your skin, not enough to scratch, but enough to get you raising your head off the bed as best you can.<br>
<br>
"@@.npc_manager;Much better... see how much better things go for you when there is a firm hand in control?@@" Her hand reaches down to take hold of your hair, "guiding" you as she humps your face, your nose poking against her clit as her juices run down from the gag to your cheeks as she increases her pace.<br>
<br>
You move your head as best you can, but you're glad for her impatience as she continues to do most of the work, your attention split between keeping up and desperately sucking air through your nose whenever you have the opportunity. Each slamming thrust reminds you of the pecker gag that you are forced to suck on as it tickles the back of your throat.<br>
<br>
Dropping her weight and pulling you in at the same time, she lets out a low moan as she finally cums, resting heavy on top of you as the gag twitches in your mouth to mirror her squeezing down on it in aftershock.<br>
<br>
"@@.npc_manager;Well! That just hit the spot! I know some hold you should fuck first before a nice dinner but I think a nice meal is always best capped off with a strong orgasm.@@"<br>
<br>
She rises up and the dildo emerges from her body, glistening with her juices as she lightly steps off the bed.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_manager;A perfect end to a lovely dinner, you sit tight for a minute while I do a spot of touching up.@@"<br>
<br>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear')>>
Still bound, you have little choice but to remain lying on the bed, doing what you can to catch your breath and recover.
<<else>>
You are too exhausted to rise from the bed, lying back and attempting to catch your breath as she walks away.
<</if>>
<br><br>
[<<moveTo "event_manager_visit_dinner_6" "Wait." 300>>]
</div>/*#
#desc: manager dinner; manager leaves after having fun
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Bedroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'manager_panties'>>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_manager">>
<<set _pantiesowner_formal = "formal">>
<<include "stealPanties">>
<<changeItemStatus 'manager_panties' 'dirty' '["set",100]'>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_panties'
4
'event_manager_return_panties'
true
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImageManager()>>
<div id="invframe" class="scrolltext">
A few minutes pass before <<=setup.getNpcName("npc_manager","formal")>> emerges from the bathroom with almost a skip in her step.
<<if setup.hasUpgrade($bed, 'bed_bondage_gear')>>
"@@.npc_manager;Oh, do not bother getting up!@@" She jokes as she walks over to remove your restraints, massaging your wrists and ankles for a few moments after removing each cuff in turn. "@@.npc_manager;You just focus on resting up — tomorrow is another important day and I can let myself out.@@"
<<else>>
You have just managed to muster enough energy to rise up onto your elbows when she gently pushes you back down. "@@.npc_manager;There, there, you focus on resting — tomorrow is another important day and I can let myself out.@@"
<</if>>
<br><br>
Walking away from the bed, she pauses in the doorway to turn back with a twinkle in her eye. "@@.npc_manager;Oh, I could not help but notice that your bathroom was a bit... insufficiently equipped. I took the liberty of installing a much-needed accessory, enjoy!@@"<br>
<br>
You hear the door to your apartment close leaving you alone and overcome with curiosity as to what she meant about your bathroom.<br>
<br>
[<<moveTo "event_manager_visit_dinner_7" "Go check it out." 120>>]
</div>/*#
#desc: manager dinner; find bathroom upgrade
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Bathroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addUpgradeItem $bathroom 'dildo'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
Entering the bathroom, it is instantly clear what <<=setup.getNpcName("npc_manager","formal")>> left behind — a large dildo mounted to the wall of your shower. Looking closer, it reminds you of the one she used for your "promotion" to full-time secretary, the memory of that first pegging making you shiver in excitement as you reach out to take the dildo in hand and recall how it felt sliding deep into your hole, with her smiling down at you from the other end.<br>
<br>
Shaking your head to break your reverie, you realise you've been stroking the thing, an additional firm pull confirms that however it is attached to the wall... it isn't moving.<br>
<br>
With a sigh you turn around and head back to the bedroom, almost stepping on <<=ps(setup.getNpcName("npc_manager","formal"))>> soaked, discarded panties as you do.<br>
<br>
<<printThought "Looks like she left these behind. They're really sexy, should I wash them and bring them back? Or... hmm, I think they'd fit me...">><br>
<br>
You stash the panties and think what else you want to do before bed.<br>
<br>
[<<moveTo "room_bedroom" "Continue." 120>>]
</div>/*#
#desc: ask about going home with her
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include 'rescheduleProstitution'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
With <<=setup.getNpcName("npc_manager","formal")>> looking at you, you change your mind and awkwardly back-pedal. To your slight surprise <<=setup.getNpcName("npc_manager","formal")>> appears more amused than upset.<br>
<br>
"@@.npc_manager;Some other time, perhaps. Was there anything else?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager adds milk requirement
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 22, 0, false)>>
<<addTaskById 'manager_milk_harvest' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You return from your shift at Cafe 52 to find <<=setup.getNpcName("npc_manager","formal")>> waiting for you.<br>
<br>
"@@.npc_manager;So...@@" <<=setup.getNpcName("npc_manager","formal")>> states, her gaze tracing down to your full breasts. "@@.npc_manager;Concerning your... production.@@" She smiles "@@.npc_manager;I have become accustomed to lovely taste your milk brings to my coffee and I spoke to the Refreshments and Stimulants department about having it always on hand for inclusion. They have agreed to set aside space and include it in all of my orders... but that, of course, leaves the matter of the supply. To ensure that things do not run out I will require a quarter of a litre a week, a few nights milking should be more than sufficient and the company will attend to couriering it out of your fridge so you will not need to worry about anything save... production.@@" <<=setup.getNpcName("npc_manager","formal")>> grins and you can practically see her staring down "tucking you in" to sleep.<br>
<br>
"@@.npc_manager;So yes, two hundred and fifty millilitres a week. No trouble for a productive girl like yourself. I will check Monday morning that suitable stocks have been laid in... or if I need to take additional measures, mmm?@@"<br>
<br>
The way she grins has your heart skip a beat at the thought of what "special measures" might entail... but she is already moving on, not even so much as giving you the option to reject her offer.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 120 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager reminds you for milk
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_manager_milk_punish_1")>>
<<set _milkQuantity = .5*25>>
<<else>>
<<set _milkQuantity = .250*25>>
<</if>>
<<if $player.timebased.milking.milk_storage >= _milkQuantity>>
<<completeTask 'manager_milk_harvest' $now true>>
<<set $player.timebased.milking.milk_storage -= _milkQuantity>>
<<set $npc_manager.flags.milk = _milkQuantity>>
<<initRoom>>
<<set _last = $scene.beforetasklocation.last()>>
<<set $scene.beforetasklocation.pop()>>
<<set $now = setup.advanceDate($player, $now, 'seconds', $scene.continueTaskTime)>>
<<moveTo _last>>
<<else>>
<<completeTask 'manager_milk_harvest' $now false>>
<<set $npc_manager.flags.milk = $player.timebased.milking.milk_storage>>
<<set $scene.noMilk = $player.timebased.milking.milk_storage == 0>>
<<set $player.timebased.milking.milk_storage = 0>>
<<set $currentcall = true>>
<<addWorkEvent "manager_milk_harvest">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text from <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;I was just checking things for next week... and it would seem that you <<if $scene.noMilk>>have totally failed to produce any milk for me... I do not know if a single night will be sufficient to have you caught up... but I recommend you do what you can... hmm?<<else>>appear to be slightly behind on your weekly milk production. Remember, I need <<if State.hasPlayed("event_manager_milk_punish_1")>>five hundred<<else>>two hundred and fifty<</if>> millilitres a week for my coffee and such. Do remember to sleep appropriately so that you can restore the stockpiles.<</if>>@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: manager punishes for failing to produce milk
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 22, 0, false)>>
<<addTaskById 'manager_milk_harvest' _nextDate>>
<<if State.hasPlayed("event_manager_milk_punish_1")>>
<<set _milkQuantity = .5*25>>
<<else>>
<<set _milkQuantity = .250*25>>
<</if>>
<<set $scene.lateSuccess = ($npc_manager.flags.milk + $player.timebased.milking.milk_storage) >= _milkQuantity>>
<<if $scene.lateSuccess>>
<<set $player.timebased.milking.milk_storage -= (_milkQuantity - $npc_manager.flags.milk)>>
<<initRoom>>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set $npc_manager.flags.milk = 0>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> emerges from her office with
<<if $scene.lateSuccess>>
a surprised expression on her face. "@@.npc_manager;It would seem my late-night call was just the kick you needed. You just barely managed to provide the milk I require. Well done, but perhaps endeavor to procrastinate a bit less, hmmm? In any case, I will be expecting another <<if State.hasPlayed("event_manager_milk_punish_1")>>five hundred<<else>>two hundred fifty<</if>> millilitres next week.@@"<br>
<br>
She returns to her inner office, leaving you to resume your duties.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 120 "<<completeWorkEvent>>">>]
<<else>>
an annoyed look on her face. "@@.npc_manager;So. I was just about to order up a coffee to get me through the morning and... it would appear that SOMEONE has failed to keep up with requirements!@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> glares at your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive, straining tits. "@@.npc_manager;Did you think that those were just for show? No, while their distractingly large size may be excessive for your proper representation of your position, I allow them because there are metrics to be met!@@"
<<case 'large'>>
large breasts. "@@.npc_manager;Did you think that those were just for show? No, while they do help with your proper representation of your position, there are metrics to be met!@@"
<<case 'medium'>>
breasts. "@@.npc_manager;In addition to filling out your profile and helping you better represent your position, there are metrics to be met!@@"
<<case 'small'>>
small breasts. "@@.npc_manager;I know that good things can come in small packages... but when the metric is quantity there is a clear conflict of.@@"
<<case 'none'>>
flat chest. "@@.npc_manager;How do you expect to be properly productive without breasts? Put aside that you are not effectively representing your position with that profile, you have metrics to meet!@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> snorts in annoyance. "@@.npc_manager;On the one hand, this affront has me quite energised... on the other, however, I now need to take time away from my other work to resolve this issue for the rest of the week.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> pulls out her phone and taps out a message.<br>
<br>
<<if !State.hasPlayed("event_manager_milk_punish_2_doctor") && !State.hasPlayed("event_betray_work_doctor_7")>>
[<<moveTo "event_manager_milk_punish_2_doctor" 'Ask if you should report to <<=setup.getNpcName("npc_work_doctor","formal")>>.' 300>>]<br>
<</if>>
[<<moveTo "event_manager_milk_punish_2" "What does she want you to do?" 300 "<<set $scene.doctor=false>>">>]
<</if>>
</div>/*#
#desc: ask if you should goto doctor for milking
#status: RELEASED 0.9.4.0
#ignore_spell: imbec
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if you should report to <<=setup.getNpcName("npc_work_doctor","formal")>> to refill the milk tanks.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> blinks in surprise, "@@.npc_manager;That imbec—@@" she pauses, catching herself before continuing in a more calm tone. "@@.npc_manager;No, while <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> studies of hucow production are, of course, valuable to the company's future those industrial techniques are not appropriate for your more... bespoke, artisanal product. Still... some additional equipment would be of utility.@@"<br>
<br>
<br>
[<<moveTo "event_manager_milk_punish_2" "What does she want you to do?" 180 "<<set $scene.doctor=true>>">>]
</div>/*#
#desc: strip for punishment
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.breastSize = $player.body.breastsize[0]>>
<<useClothSetPush 'tmp'>>
<</if>>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo "event_manager_milk_punish_3">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> puts her phone away and smiles at you. "@@.npc_manager;Come, the delivery should take but a few minutes, plenty of time for you to ditch those clothes in preparation. Always look for those little efficiency gains!@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> crosses her arms and stares at you impatiently. From her expression you're pretty sure "strip" means EVERYTHING, not just "down-to your-underwear" for inspection.<br>
<br>
<<if $npc_manager.stage >= 5 || !$scene.skipInspection>>
<<printThought "Didn't we just do this today? I guess sometimes process overrides efficiency...">><br>
<br>
<</if>>
<<if $options.ezchange>>
[<<moveTo "event_manager_milk_punish_3" "Strip, as commanded." 180 "<<removeAllClothing>>">>]
<</if>>
</div>/*#
#desc: manager initiates punishment
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You have just finished removing your clothes when an employee in a labcoat pushes a cart into the office. You recognise a full milking kit, plus some additional <<if $fetish.drugs>>drugs <</if>>and other items.<<if $scene.doctor>><<printThought '<<=setup.getNpcName("npc_manager","formal")>> may not like <<=setup.getNpcName("npc_work_doctor","formal")>>... but she seems willing to utilise some of the same equipment...'>><</if>><br>
<br>
"@@.npc_manager;I will take it from here, you may return at noon to reclaim the equipment.@@" <<=setup.getNpcName("npc_manager","formal")>> commands, the lab assistant bowing and retreating without a word. <<=setup.getNpcName("npc_manager","formal")>> plugs a<<if $scene.addCollar>> collar and a<</if>> leash from the cart, <<if $scene.addCollar>>buckling the collar loosely around your neck<<else>>clipping the leash to the front of your collar<</if>>.<br>
<br>
"@@.npc_manager;Crawl.@@" She commands as she turns towards the inner office, dragging the cart with one hand, and your leash held in the other. "@@.npc_manager;If I have to treat you as a cow, you will assume those responsibilities... and cows do not walk.@@"<br>
<br>
[<<moveTo "event_manager_milk_punish_4" "Drop to your hands and knees and follow." 240>>]
</div>/*#
#desc: manager equips you for milking
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "leash_black" true>>
<<deleteItem "leash_black">>
<<addItem "breast_milker">>
<<wearItem "breast_milker" true>>
<<addItem "high_tech_restraints">>
<<wearItem "high_tech_restraints" true>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Naked and on her leash you follow after <<=setup.getNpcName("npc_manager","formal")>> into the inner office. A large feeder gag shoved down your throat silences any further complaints as <<=setup.getNpcName("npc_manager","formal")>> has you back on your feet to cuff your arms behind your back, then she adds a harness attached to the ceiling. Your leash attached to the floor keeps you in a permanent bent-over position. You are able to remain standing, though your weight is partially supported by the suspension, and could probably move a metre or so in any direction, but it makes for a humiliating and helpless position that <<=setup.getNpcName("npc_manager","formal")>> takes advantage of, groping your ass and teasing your <<if setup.checkItemTypeWorn("plug")>>plug<<else>>rear<</if>> for a few moments before she returns to the cart to grab the breast-milking apparatus.<br>
<br>
"@@.npc_manager;These are a bit more advanced than what you SHOULD be using at home,@@" <<=setup.getNpcName("npc_manager","formal")>> explains. "@@.npc_manager;Designed not just to harvest, but to encourage production<<if $scene.breastSize != 10>>, and growth. <<switch setup.calcBreastSize()>><<case 'large'>>You may be getting a bit larger... but we need to catch up on production, so even that will not be sufficient, I believe.<<case 'medium'>>You may be of reasonable size... but we need to catch up on production, so additional measures are in order.<<case 'small'>>As we have seen, you are ill-equipped to keep up with normal production. If we are to catch up, well... additional measures are in order.<<case 'none'>>You are woefully ill-equipped to even maintain normal production so to replenish stores, well... additional measures are in order.<<default>>ERROR: unexpected breast size: <<=setup.calcBreastSize()>><</switch>><</if>>@@"<br>
<br>
She attaches a pair of nipple suckers and then seals the surrounding two hemispheres tightly <<if setup.calcBreastSize() == "none">>against your chest, the twin chambers looking like over-sized, clear breasts themselves sprouting from your flat chest... though their size, and her words, means it is not likely to remain that way for long<<else>>over your breasts<<if $scene.breastSize != 10>>, the copious free space within each chamber a hint to just how much growth you're about to have<</if>><</if>>. A tightly-buckled harness means that the milkers will not be coming loose, even if you were to thrash against your bonds.<br>
<br>
[<<moveTo "event_manager_milk_punish_5" "Continue." 240>>]
</div>/*#
#desc: manager plugs you
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.drugs>>
<<setTmpEffect "milk_plus">>
<</if>>
<<set $player.body_ref.milkProduction = 3>>
<<set $player.body.breastsize[1] = 10>>
<<addItem "massive_plug">>
<<wearItem "massive_plug" true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> makes a few additional adjustments to your bonds to further secure you and then returns to the cart a final time.
<<if $fetish.drugs>>
She presents an oversized enema syringe, the cylinder pre-filled with a shimmery pink liquid.<br>
<br>
<<if $npc_manager.stagevalues[3].drugs_req>>
"@@.npc_manager;I know you have your normal drugs, but this is a special situation and, well... rectal absorption is one of the most efficient ways to administer and, well... I am feeling thirsty, not patient.@@"
<<else>>
"@@.npc_manager;A little additional boost to maximise your productivity. Rectal absorption is one of the most efficient ways to administer and, well... I am feeling thirsty, not patient.@@"
<</if>>
<br><br>
<<if $scene.removePlug>>
Your plug is removed and the
<<else>>
The
<</if>>
thick nozzle of the syringe slides into your rear and <<=setup.getNpcName("npc_manager","formal")>> begins dispensing its tingly payload as you moan through your gag... and the breast-cups begin pumping away.<br>
<br>
You moan as you feel your bowels stretch... and your breasts swell as a wave of arousal washes over you.<br>
<br>
"@@.npc_manager;Every last drop...@@" <<=setup.getNpcName("npc_manager","formal")>> states as she pushes the syringe deeper and forces the last of its payload into your rear. You moan, you can't see, but you would swear your belly is swelled as your thoughts fog and your breasts let out a first squirt of milk.
<</if>>
<br><br>
She lathers up a truly massive plug with lube<<if $scene.removePlug>>, first removing your current occupant before<</if>>, slowly stuffing the monstrosity into your ass as you pant and twist in place. "@@.npc_manager;It will go in easier if you just relax,@@" <<=setup.getNpcName("npc_manager","formal")>> instructs as she wiggles the plug to work it deeper past your stretched ring.
<<if $fetish.drugs>>
"@@.npc_manager;We would not want any of those productive supplements leaking out while you worked, hmm?@@"
<<else>>
"@@.npc_manager;Maximum production is all about appropriate stimulation, and we both know how much you react to things back here, such a sensitive <<if $fetish.sissy>>sissy <</if>>butt-slut you are.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_milk_punish_6" "The plug pops into position..." 240>>]
</div>/*#
#desc: manager milking begins
#status: RELEASED 0.9.4.0
#ignore_spell: mooo
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
It feels like a bowling-ball is trying to force its way into your rear but the lube, and your training, do their job and <<=setup.getNpcName("npc_manager","formal")>> manages to work the monstrosity into place, your stretched hole sucking tight around the far-from-narrow flange leaving you feeling well and truly stuffed.<br>
<br>
You pant as you try to adjust to this new occupant, only to squirm anew as it begins vibrating in your ass<<if $fetish.drugs>>, the motions churning up the drugs sealed inside of you and seeming to accelerate their absorption<</if>>.<br>
<br>
"@@.npc_manager;There we go.@@" <<=setup.getNpcName("npc_manager","formal")>> states, giving your butt a gentle pat before flicking the tubes currently slurping away the milk leaking out of your <<if $scene.breastSize == 10>><<if $scene.breastSize== 0>>newly <</if>>growing <</if>>breasts. "@@.npc_manager;Excellent... that should have you nice and productive to catch up... and give me an oh-so-pleasant view for my morning work!@@"<br>
<br>
You squirm and teeter in place as the breast cups begin pumping harder, as the plug in your ass continues to churn away.<br>
<br>
[<<moveTo "event_manager_milk_punish_7" "Mooo..." 4000>>]
</div>/*#
#desc: manager milks you
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<<changeHorny 100>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The morning slowly passes with you teetering in place as your body is stimulated and milked. As you mince in place, searching for the most comfortable position to accommodated the massive plug stuffing your rear, you occasionally rotate around to view <<=setup.getNpcName("npc_manager","formal")>> as she works, and occasionally glances up to watch you with an amused smile. Once or twice she rose to check in on you, either drawing out a fresh mug of milk, or adding <<if $fetish.drugs>>some additional drugs<<else>>some nutrients<</if>> to your gag. The exertion of your milking has you eagerly slurping down whatever it is, any sense of decorum pushes aside by the act of dangling in your <<=ps(setup.getNpcName("npc_manager","formal"))>> as an aggressively-milked hucow.<br>
<br>
After what feels like at least an hour <<=setup.getNpcName("npc_manager","formal")>> adjusts things further, removing your final bit of control by binding your ankles to your thighs, a position that not only has you swinging in helpless suspension... but that seems to further accentuate the sensation of your massive anal intruder.<br>
<br>
Suspended, stuffed, and milked you drool and moan, occasionally thrashing as <<=setup.getNpcName("npc_manager","formal")>> occasionally toys with your remote... not that you could ever forget its hole-stretching presence.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 45)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_manager_milk_punish_8" "Keep on pumping..." _timeToLunch>>]
</div>/*#
#desc: manager removes milking equipment
#status: RELEASED 0.9.4.0
#ignore_spell: ml
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "massive_plug" true>>
<<deleteItem "massive_plug">>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<<removeItem "high_tech_restraints" true>>
<<deleteItem "high_tech_restraints">>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You've fully submitted to being a dangling milk-dispenser, your <<if $scene.breastSize == 0>>new, <<elseif $scene.breastSize != 10>>newly <</if>>massive nearly filling their chambers, twin milk-factories producing away.<br>
<br>
Settled in your bonds you're somewhere between sub-space and a light nap when <<=setup.getNpcName("npc_manager","formal")>> returns to interrupt, letting your legs swing back down and then disabling the milking device.<br>
<br>
You let out a forlorn moan at the cessation of stimulation, but <<=setup.getNpcName("npc_manager","formal")>> makes no comment as to your denied addiction as she removes the harness and the rest to soon have you back on your feet.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> holds up a jar, from the measurement it's a bit over 600 mL of milk... and it doesn't even count what <<=setup.getNpcName("npc_manager","formal")>> enjoyed while she was watching you work.<br>
<br>
"@@.npc_manager;Now this is what I like to see,@@" <<=setup.getNpcName("npc_manager","formal")>> states, swirling the beaker as you massage your freshly sensitised breasts.
<<if $scene.first>>
"@@.npc_manager;In light of your failure to hit quota, I think I shall up your weekly requirement to half a litre. That way there will be some additional reserves if you should... fail me again. Todays session will not count for that, obviously... but you should be more than equipped to keep up with things, now.@@"
<<else>>
"@@.npc_manager;As before, todays session will not count towards your half a litre a week requirements... but you should be more than equipped to keep up with things with those lovely <<if $scene.breastSize != 0>><</if>>breasts.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> smiles as she walks back to her desk, still cradling her creamy prize. "@@.npc_manager;Now I advise you to get dressed and get to work. You have lunch to attend to and then a whole morning to make up for, yes?@@"<br>
<br>
You nod and retreat from her inner office, just in time for the lab technician to arrive and share a knowing glance at you sorting through your clothes before they retrieve the equipment and push the cart back out of the office..<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Get dressed and consider lunch..." "<<useClothSetPop 'tmp'>>" 900>>]
</div>/*#
#desc: call manager
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("theme_psychiatrist_secret_theme_manager_psych_2") && ($npc_barista.stage == 0 || $npc_barista.stage == 10) && State.hasPlayed("theme_manager_private_psychiatrist_manager_1") && !State.hasPlayed("event_psychiatrist_manager_reunion_1")>>
You consider calling <<=setup.getNpcName("npc_manager", "formal")>> to set something up with <<=setup.getNpcName("npc_psychiatrist", "formal")>>...<br>
<br>
<<if $npc_psychiatrist.flags.evil == 1>>
[@@.link_locked;You need to get <<=setup.getNpcName("npc_psychiatrist", "formal")>> back to normal before it would be safe to make a meet-up.@@]<br>
<<elseif !State.hasPlayed("event_vip_high_security_1")>>
[@@.link_locked;You have yet to figure out a suitably secure location for <<=setup.getNpcName("npc_manager", "formal")>> and <<=setup.getNpcName("npc_psychiatrist", "formal")>> to meet.@@]<br>
<<elseif $scene.beforePhoneCallLocation != "room_usual_place_inside">>
[@@.link_locked;You should be ready at the bar at The Usual Place if you are going to try and set up <<=setup.getNpcName("npc_manager", "formal")>> and <<=setup.getNpcName("npc_psychiatrist", "formal")>>.@@]<br>
<<else>>
[<<moveTo "event_call_manager_makeup_psych" 'Call her to secretly set up a meeting with <<=setup.getNpcName("npc_psychiatrist", "formal")>>.' 30>>]<br>
<</if>>
<<else>>
You try to call <<=setup.getNpcName('npc_manager', 'formal')>>. She does not answer her phone.<br>
<br>
<<if State.hasPlayed("theme_psychiatrist_secret_theme_manager_psych_2") && ($npc_barista.stage > 0 && $npc_barista.stage < 10) && State.hasPlayed("theme_manager_private_psychiatrist_manager_1") && !State.hasPlayed("event_psychiatrist_manager_reunion_1")>>
<<hint $options "You should finish attending to <<=setup.getNpcName('npc_barista', 'first')>> before you try and get <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> back together.">><br>
<br>
<</if>>
<</if>>
[<<moveTo $scene.beforePhoneCallLocation "Back." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: manager calls you if you changed name not in her presence
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall=true>>
<<set $npc_manager.call='Mistress'>>
<<set $npc_manager.title='Mistress'>>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate = setup.setNextDate($now, 1, 9, 0)>>
<<case 5>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<case 6>>
<<set _nextDate = setup.setNextDate($now, 2, 9, 0)>>
<</switch>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You hesitantly answer your phone and listen to the business-like, and yet subtly excited, voice of your <<=setup.getNpcName('npc_manager', 'manager')>>.<br>
<br>
"@@.npc_manager;Hello, my dear. I do hope I have the fortune of being the first to congratulate you on your new name — <<if $fetish.sissy>>SISSI <</if>>Secretary <<=$player.first_name>> <<=$player.last_name>>... yes, that has quite the ring to it.@@"<br>
<br>
You shiver slightly at the sound of your new name and how seductively feminine it sounds on her lips.<br>
<br>
"@@.npc_manager;Since you are so nicely coming into your true self, I thought it would be a good time for you to begin addressing me in a more appropriate manner. Henceforth, I expect you to refer to me properly, that means I expect to hear a Mistress in front of my name. This should be quite simple for you as it more accurately reflects what our relationship has always been, you using Mrs. was always unnatural and inappropriate so it is good that we can now move beyond that facade.@@"<br>
<br>
She pauses until you softly reply "@@.pc;Yes, <<=setup.getNpcName('npc_manager', 'formal')>>,@@" you state, your voice trembling slightly.<br>
<br>
"@@.npc_manager;Lovely, just what I wanted to hear. Well, I have other things to be working on, I will see you at work, and do not forget my new title unless you want to be a very sorry <<if $fetish.sissy>>SISSI <</if>>Secretary...@@"<br>
<br>
She hangs up before you can get another word in edgewise.<br>
<br>
[<<moveTo "room_livingroom" "Put your phone away." 30 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: stage 5 sent for tea
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.rescue = {
"tea" : "",
"lunch" : "",
"afternoon" : ""
}>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You get a message from <<=setup.getNpcName("npc_manager","formal")>> commanding you to fetch her more water for tea.<br>
<br>
<<printThought "There's something suspicious about that tea...">><br>
<br>
<<if State.hasPlayed("event_manager_stage5_afternoon_4_fail")>>
<<if ["obedient","voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
<<hint $options "Based on your prior behaviour, bringing her coffee would best spark her memory.">><br>
<<else>>
<<hint $options "Based on your prior behaviour, your best opportunity would start with brining her tea.">><br>
<</if>>
<</if>>
[<<moveTo "event_manager_stage5_tea_2" "Bring her the requested water." 60 "<<set $scene.coffee=false>>">>]<br>
<<if $player.flags.work_coffee.coffee_skill >= 8>>
[<<moveTo "event_manager_stage5_tea_2_coffee" "Brew her favourite coffee instead." 300>>]
<<else>>
[<<moveTo "event_manager_stage5_tea_2_coffee" "Fetch her favourite coffee instead." 600>>]
<</if>>
</div>/*#
#desc: deliver coffee to manager
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.rescue.tea = 'obedient'>>
<<applyExperience 'submission' 18 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.rescue.tea == 'obedient' && ["obedient","voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.flags.work_coffee.coffee_skill >= 8>>
You brew up
<<else>>
You hurry down to Cafe 52 to get
<</if>>
a cup of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> favourite coffee and place it on her desk.<br>
<br>
<<if ["obedient","voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
She sniffs, a moment of confusion showing a crack in her stern, emotionless demeanour.<br>
<br>
"@@.npc_manager;What is this?@@" She asks, her voice softening ever so slightly.<br>
<br>
You smile and remind her that it is her favourite drink, gently moving her tea out of the way as you push the coffee closer.<br>
<br>
She takes a sip, a flicker of her old self momentarily visible. "@@.npc_manager;Yes... thank you. You may return to your desk, now.@@" She states softly.<br>
<br>
<<printThought "That seems like progress... now to wait for the tea to wear off and continue to spark her memory...">>
<<else>>
Her gaze narrows. "@@.npc_manager;What is this? I said to fetch me water! You are useless!@@"<br>
<br>
Teapot in hand she storms off to apparently get things for herself.<br>
<br><<printThought "Hmm... she didn't appreciate that... I think I need to better match my actions to my previous behaviour if I'm going to spark her memory...">>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: deliver water to manager
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil")>>
<div id="invframe" class="scrolltext">
You bring a pot of boiling water and <<=setup.getNpcName('npc_manager', 'formal')>> nods for you to prepare her tea.<br>
<br>
<<if State.hasPlayed("event_manager_stage5_afternoon_4_fail")>>
<<if ["forced","money","strict"].includes(setup.getAverageSecStyle())>>
<<hint $options "Based on your prior behaviour, spilling her tea would best spark her memory.">><br>
<<else>>
<<hint $options "Based on your prior behaviour, you should have brought her coffee.">><br>
<</if>>
<</if>>
[<<moveTo "event_manager_stage5_tea_3" "Pour her a cup of tea." 300>>]<br>
[<<moveTo "event_manager_stage5_tea_3_spill" '"Accidentally" spill her tea.' 600>>]
</div>/*#
#desc: brew tea
#status: RELEASED 0.9.1.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.rescue.tea = 'none'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.rescue.tea == 'disobedient' && ["forced","money","strict"].includes(setup.getAverageSecStyle())>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
You pour <<=setup.getNpcName('npc_manager', 'formal')>> a cup of tea. She sips it and graces you with a cruel grin. "@@.npc_manager;Back to work.@@" She commands.<br>
<br>
<<printThought "If I'm going to get the old <<=setup.getNpcName('npc_manager', 'formal')>> back I have to do something about that tea...">><br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: spill tea
#status: RELEASED 0.9.1.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.rescue.tea = 'disobedient'>>
<<applyExperience 'bdsm' 9 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.rescue.tea == 'disobedient' && ["forced","money","strict"].includes(setup.getAverageSecStyle())>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
You brew <<=ps(setup.getNpcName('npc_manager', 'formal'))>> and then, as you are pouring it, fumble, dropping the kettle to spill onto her desk.<br>
<br>
"@@.npc_manager;You klutz!@@" She shouts as she dodges out of the way. "@@.npc_manager;Yet again you fail in your duties!@@"<br>
<br>
You gasp as she pulls you over a dry part of the desk and lands several quick, hard slaps on your ass.<br>
<br>
<<if ["forced","money","strict"].includes(setup.getAverageSecStyle())>>
She yanks you back to your feet and you see a flicker of familiarity in her expression. "@@.npc_manager;You foolish thing, it is like you are failing on purpose, in hopes of drawing my reaction. Is that it? Are you looking for <<if ["forced","strict"].includes(setup.getAverageSecStyle())>>punishment<<else>>me to, what, pay you more to shape up?<</if>>...@@"<br>
<br>
"@@.pc;N-no, <<=setup.getNpcName('npc_manager', 'title')>>.@@" You reply as she snorts in dismissal.<br>
<br>
"@@.npc_manager;A likely story... well go get some paper towels to wash this up and then return to work. We have wasted far too much time already!@@"<br>
<br>
You nervously bow and do as she commands, mopping up the remaining tea before returning to your desk.<br>
<br>
<<printThought "Well, I kept her from having any tea... now to further trigger her memories of our time together...">>
<<else>>
She yanks you back to your feet in a huff. "@@.npc_manager;Such a failure.@@" She drags you out of the office and then storms off, muttering something about needing her tea.<br>
<br>
<<printThought "There's something in that tea... I have to keep it away from her... perhaps a more subtle approach that better matched my prior behaviour?">>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: deliver lunch style
#status: RELEASED 0.9.1.0
#*/
<<include "checkFoodDelivery">>
<<initRoom>>
<<include playerMenu>>
<<if !$scene.foodDelivery.right>>
<<moveTo "event_manager_stage5_lunch_1_forced">>
<<else>>
<<moveTo "event_manager_stage5_lunch_1_voluntary">>
<</if>>/*#
#desc: deliver wrong lunch
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 13 'terrible' $SEEN_STRANGER>>
<<set $scene.rescue.lunch = 'forced'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if ["forced","strict"].includes(setup.getAverageSecStyle())>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows in a familiar way as she inspects the food that you have delivered.<br>
<br>
<<if ["forced","strict"].includes(setup.getAverageSecStyle())>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows in a familiar way as she inspects the food that you have delivered.<br>
<br>
"@@.npc_manager;This is... not what I ordered.@@" She casually slides the food across the desk and into the trash. You gasp as she follows up with a harsh electric shock delivered via your <<=setup.getItemTypeName('cage')>>.<br>
<br>
"@@.npc_manager;Once again you screw up on what should be such a simple thing... sometimes I quite wonder what I should do with you.@@" She shakes her head, her loquaciousness momentarily reminding of how she used to act before... "@@.npc_manager;Go on now, get back to your desk, perhaps you can do at least some useful work between now and the end of the day.@@"
<<else>>
"@@.npc_manager;This is not what I ordered.@@" She states in annoyance. The punishing shock she delivers via your <<=setup.getItemTypeName('cage')>> almost perfunctory.<br>
<br>
She dismisses you with a wave but, as you leave, you catch sight of her eating the meal anyway...<br>
<br>
<<printThought "That isn't like her at all... I need to deliver lunch in a way more reminiscent of my prior behaviour if I'm going to snap her out of things...">>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Back to your desk." 60 '<<if setup.checkItemInInventory("strawberry_tart")>><<deleteItem "strawberry_tart">><</if>>'>>]
</div>/*#
#desc: deliver correct lunch plus treat
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hasTart = setup.checkItemInInventory("strawberry_tart")>>
<<if $scene.hasTart>>
<<set $scene.rescue.lunch = 'voluntary'>>
<<deleteItem "strawberry_tart">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.hasTart && ["voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.hasTart>>
You deliver <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch, and the bonus dessert as well.<br>
<br>
<<if ["voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
She smiles. "@@.npc_manager;Oh my, a little sweet tart from my sweet little tart! Once again you have gone above and beyond to anticipate my needs without my even commanding anything, wonderful!@@"<br>
<br>
<<printThought "Perfect, she's sounding more and more like herself... if I can just keep this up and I'll have her back.">>
<<else>>
"@@.npc_manager;What is this? I did not order dessert. You should stick to my orders exactly, not go off coming up with ideas of your own.@@"<br>
<br>
<<printThought "Damn, that didn't work... though I guess it was a bit out of character for me to do something unbidden.">>
<</if>>
<<else>>
You deliver <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch and she dismisses you with a wave.
<</if>>
<br><br>
[<<moveTo "event_manager_stage5_lunch_2_serve" "Ask if there is any other way you could be of service?" 60>>]<br>
[<<moveTo "event_manager_stage5_lunch_2_work" "Go straight back to work." 60>>]<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 60>>]
</div>/*#
#desc: post-lunch delivery
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.rescue.lunch == "">>
<<set $scene.rescue.lunch = 'money'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.rescue.lunch == setup.getAverageSecStyle()>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
You leave <<=ps(setup.getNpcName("npc_manager","formal"))>> office and go straight back to work.
<<if setup.getAverageSecStyle() == "money">>
A few minutes later <<=setup.getNpcName("npc_manager","formal")>> pokes her head out of her office and smiles at you.<br>
<br>
"@@.npc_manager;So industrious! I can always count on you to try to earn as much as you can.@@"<br>
<br>
She disappears back into her office and you sigh with relief.<br>
<br>
<<printThought "Good, this mimicking old behaviours looks to be working to spark her memory.">>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> remains in her office and you frown.<br>
<br>
<<printThought "Hmm, this doesn't feel quite right, I need to focus on igniting her memories of my previous behaviour.">>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 60>>]
</div>/*#
#desc: post-lunch delivery
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.rescue.lunch == "">>
<<set $scene.rescue.lunch = 'obedient'>>
<<if setup.getAverageSecStyle() == "obedient">>
<<set _foot = setup.getTotalValue("foot")>>
<<applyExperience 'foot' _foot 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.rescue.lunch == setup.getAverageSecStyle()>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getAverageSecStyle() == "obedient">>
She smiles. "@@.npc_manager;So obedient and helpful... what would please me the most would be to spend some time with your pretty head between my thighs, but <<=setup.getNpcName("npc_rival","formal")>>, in <<his npc_rival>>... wisdom, has decided that I would benefit from some time in chastity. Perhaps you could massage my feet, instead?@@"<br>
<br>
You curtsy and reply that it would be your honour as you crawl under her desk.<br>
<br>
<<if setup.getTotalValue("foot") > 10>>
<<if setup.getTotalValue("foot") > 15>>
You worship her feet, polishing her heels with your tongue before slipping her shoes off to kiss and lick her toes, massaging away even the smallest of knots before slipping her shoes
<<else>>
You dote on her feet, searching out every bit of tightness from her knees to the tip of her toes before gently sliding her heels
<</if>>
back on and thanking her for the privilege.
<<else>>
<<if setup.getTotalValue("foot") > 5>>
She purrs in contentment as you rub her feet and work the knots out of her calves.
<<else>>
You obediently give her a basic, but complete, foot massage.
<</if>>
<</if>>
<br><br>
She smiles as she lets you out from under the desk. "@@.npc_manager;Wonderfully done, as always. Your eager obedience is such a delight.@@"<br>
<br>
<<printThought "That sounds more like her... I think this is working...">>
<<else>>
She shakes her head. "@@.npc_manager;No, <<=setup.getNpcName("npc_rival","formal")>> has me locked in chastity, so I believe the best thing you could do for me would be return to work.@@"<br>
<br>
<<printThought "Hmm, that didn't work, I guess being this obedient is a bit out of character...">>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 60>>]
</div>/*#
#desc: after work interaction
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcWorkEffectiveness">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Work comes to an end and <<=setup.getNpcName("npc_manager","formal")>>
<<if $scene.coffee>>
messages you a terse dismissal.<br>
<br>
<<if $scene.workEffectiveness>=1.125>>
"@@.npc_manager;You exceeded your work requirements today, which, really, is what I expect. I advise continuing this diligence. I will see you <<if $now.getUTCDay()==5>>Monday<<else>>tomorrow<</if>>.@@"
<<elseif $scene.workEffectiveness>=1.0>>
"@@.npc_manager;Your performance today was adequate. See that you continue meeting this bar. I will see you <<if $now.getUTCDay()==5>>Monday<<else>>tomorrow<</if>>.@@"
<<elseif $scene.workEffectiveness>=0.875>>
"@@.npc_manager;Your failed to meet expectations, do endeavor to focus harder on your work <<if $now.getUTCDay()==5>>next week<<else>>tomorrow<</if>>.@@"
<<else>>
"@@.npc_manager;Your utterly failed to perform your duties, I advise you get a good night sleep and come back <<if $now.getUTCDay()==5>>next week<<else>>tomorrow<</if>> with better motivation.@@"
<</if>>
<br><br>
[<<moveTo "room_office_after_work" 'Prepare to depart.' 120>>]
<<else>>
summons you into her office.<br>
<br>
<<printThought "The tea should have worn off by now and I think I have her close to a breakthrough, really need to nail the right impression to snap her out of things...">><br>
<br>
<<if State.hasPlayed("event_manager_stage5_afternoon_4_fail")>>
<<switch setup.getAverageSecStyle()>>
<<case "voluntary" "enthusiast">>
<<hint $options "Based on your prior behaviour, you should spark her memory by volunteering for a spanking.">><br>
<<case "money">>
<<hint $options "Based on your prior behaviour, you should show your greed.">><br>
<<case "obedient">>
<<hint $options "Based on your prior behaviour, you should show your obedience with a confession.">><br>
<<case "forced" "strict">>
<<hint $options "Based on your prior behaviour, you should misbehave.">><br>
<</switch>>
<</if>>
[<<moveTo "event_manager_stage5_afternoon_2_voluntary" "Ask if she'd like to finish the day off with a spanking to let off stress?" 600 "<<set $scene.rescue.afternoon='voluntary'>>">>]<br>
[<<moveTo "event_manager_stage5_afternoon_2_money" "Ask if you could get a pay advance?" 600 "<<set $scene.rescue.afternoon='money'>>">>]<br>
[<<moveTo "event_manager_stage5_afternoon_2_obedient" "Confess to a small mistake you made while working." 600 "<<set $scene.rescue.afternoon='obedient'>>">>]<br>
[<<moveTo "event_manager_stage5_afternoon_2_forced" "Be a bad, bad <<if $fetish.sissy>>sissy<<else>>girl<</if>>." 600 "<<set $scene.rescue.afternoon='forced'>>">>]
<</if>>
</div>/*#
#desc: after work action: voluntary
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if ["voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
You enter <<=setup.getNpcName("npc_manager","formal")>> with an obedient curtsy before noting that she looks like she has had a stressful day... and would she like to relieve some of that stress on your bottom?<br>
<br>
<<if ["voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
She pulls a familiar pink paddle out of her drawer as she walks towards you.
The playful smile on her face tells you that you made the right call.<br>
<br>
"@@.npc_manager;So obedient and thoughtful...@@" She states as she flips up your skirt and gives your rear an experimental squeeze. "@@.npc_manager;Yes... spanking this perfect bum is exactly what I needed.@@"
<<else>>
She stares at you for a moment and then shakes her head. "@@.npc_manager;No... I think you would just get off on that and I, frankly, do not have the time.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_stage5_afternoon_3" "Continue..." 180>>]
</div>/*#
#desc: after work action: money
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if "money" == setup.getAverageSecStyle()>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
You enter the office and ask <<=setup.getNpcName("npc_manager","formal")>> if it would be possible for you to get a pay advance?<br>
<br>
<<if "money" == setup.getAverageSecStyle()>>
She smiles in amusement. "@@.npc_manager;It really is all about the money with you...@@" She reaches into a drawer to pull out a familiar paddle "@@.npc_manager;I believe we can come to an arrangement...@@"
<<else>>
She frowns in annoyance. "@@.npc_manager;An advance? I think not. You should manage your finances more carefully.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_stage5_afternoon_3" "Continue..." 180>>]
</div>/*#
#desc: after work action
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if ["obedient","enthusiast"].includes(setup.getAverageSecStyle())>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
You walk into the room and confess to a minor mistake that you made during the afternoon.<br>
<br>
<<if ["obedient","enthusiast"].includes(setup.getAverageSecStyle())>>
She smiles in amusement. "@@.npc_manager;I see, well... clearly you are in need of a bit of punishment. To make sure you do not repeat that mistake in the future...@@" She reaches into a drawer to pull out a familiar paddle "@@.npc_manager;I believe this would be the appropriate tool for such a matter...@@"
<<else>>
She frowns in annoyance. "@@.npc_manager;Well, did you fix things? In that case, why are you bothering me about it?@@"
<</if>>
<br><br>
[<<moveTo "event_manager_stage5_afternoon_3" "Continue..." 180>>]
</div>/*#
#desc: after work action: forced
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if ["forced","strict"].includes(setup.getAverageSecStyle())>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
You walk into the room and take a seat on her desk, "accidentally" knocking some pencils to the floor as you strike a too-casual tone to ask what else she needs.<br>
<br>
<<if ["forced","strict"].includes(setup.getAverageSecStyle())>>
A familiar grin spreads across her face. "@@.npc_manager;What I need, it would seem, is to punish a certain naughty <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@" She reaches into a drawer to pull out a familiar paddle "@@.npc_manager;I believe this would be the appropriate tool for such a matter...@@"
<<else>>
She looks up at you in annoyance. "@@.npc_manager;What do you think you are doing? Get off my desk, and pick up those pencils!@@"
<</if>>
<br><br>
[<<moveTo "event_manager_stage5_afternoon_3" "Continue..." 180>>]
</div>/*#
#desc: after work action: calc success
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cure = true>>
<<switch $scene.rescue.tea>>
<<case "obedient">>
<<if !["obedient","voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
<<set $scene.cure = false>>
<</if>>
<<case "disobedient">>
<<if !["money","forced","strict"].includes(setup.getAverageSecStyle())>>
<<set $scene.cure = false>>
<</if>>
<<default>>
<<set $scene.cure = false>>
<</switch>>
<<switch $scene.rescue.lunch>>
<<case "forced">>
<<if !["forced","strict"].includes(setup.getAverageSecStyle())>>
<<set $scene.cure = false>>
<</if>>
<<case "voluntary">>
<<if !["voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
<<set $scene.cure = false>>
<</if>>
<<case "money">>
<<if setup.getAverageSecStyle() != "money">>
<<set $scene.cure = false>>
<</if>>
<<case "obedient">>
<<if !["obedient","enthusiast"].includes(setup.getAverageSecStyle())>>
<<set $scene.cure = false>>
<</if>>
<</switch>>
<<switch $scene.rescue.afternoon>>
<<case "voluntary">>
<<if !["voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
<<set $scene.cure = false>>
<</if>>
<<case "money">>
<<if setup.getAverageSecStyle() != "money">>
<<set $scene.cure = false>>
<</if>>
<<case "obedient">>
<<if !["obedient","enthusiast"].includes(setup.getAverageSecStyle())>>
<<set $scene.cure = false>>
<</if>>
<<case "forced">>
<<if !["forced","strict"].includes(setup.getAverageSecStyle())>>
<<set $scene.cure = false>>
<</if>>
<</switch>>
<<if $scene.cure>>
<<applyExperience 'bdsm' 9 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cure>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.cure>>
You conceal your triumphant grin as you turn around and present your bottom for "punishment." <br>
<br>
She is forceful, but every so slightly tender as she bends you over. The crack of the paddle prompts a moan from your lips and she chuckles in amusement.<br>
<br>
"@@.npc_manager;You really needed this. I bet you have been fantasising all day about a nice. Hard. Spanking.@@"<br>
<br>
The paddle lands in time with her words and you gasp out a "@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>@@" in response.<br>
<br>
"@@.npc_manager;Listen to you! Nearly at the edge of climax... mmm, it makes me think of that first spanking, you remember that? Oh you were so cute and hesitant, shocked, but still obedient... neither of us had any real idea what an amazing <<if $fetish.sissy>>SISSI <</if>>Secretary you would become. Such a wonderful journey we have had together... and here we are, me teaching you yet another important lesson, just as we did back at the start...@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>@@" you pant softly as the punishment comes to an end and she helps you back to your feet.<br>
<br>
You hold your breath as you wait to see what <<=setup.getNpcName("npc_manager","formal")>> is going to say next...
<<else>>
<<printThought "That didn't work... I need to focus on replicating the sort of behaviour she remembers from me.">><br>
<br>
You reflect for a moment on your past.<br>
<br>
<<switch setup.getAverageSecStyle()>>
<<case "obedient">>
<<printThought "Overall I used to be very obedient, I should try to duplicate that if I'm going to bring her back.">>
<<case "forced">>
<<printThought "I used to be a brat... I need to misbehave and be recalcitrant if I'm going to spur her return.">>
<<case "strict">>
<<printThought "I've fought her nearly every step of the way, I need to misbehave and be recalcitrant if I'm going to spur her return.">>
<<case "voluntary">>
<<printThought "I've always been pretty self motivated, doing things before she even asked for them... I need to replicate that if I'm to jog her memory.">>
<<case "money">>
<<printThought "I've been pretty mercenary in the past, trading compliance for credits... I need to reflect that greedy mindset to jog her memory.">>
<<case "enthusiast">>
<<printThought "I've barreled forward with enthusiasm, I need to try and replicate that if I'm to jog her memory.">>
<<default>>
ERROR: unexpected
<</switch>>
<</if>>
<br><br>
<<if $scene.cure>>
[<<moveTo "event_manager_stage5_afternoon_4_cure" "Continue." 300>>]
<<else>>
[<<moveTo "event_manager_stage5_afternoon_4_fail" "Continue." 300>>] <<hint $options "On future workdays there will be hints as to what choices to make.">>
<</if>>
</div>/*#
#desc: after work interaction
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_ai_stage5_infiltrate_14")>>
<<set $npc_manager.flags.evil = 2>>
<<include "checkRescueFriendsTask">>
<<addTaskById 'destroy_lieutenants'>>
<<addEvent 'elevator_home_stage5'>>
<<addRandomEvent $randomEvents['elevator_home'] 'move_repeat_stage5'>>
<<removeRandomEvent 'elevator_home' 'abdl_extreme'>>
<<include "coworkerSissySecretaryCalc">>
<<set $randomEvents['transit']['company_lobby'].pushUnique({done : false, id : 'guard_inspection_1'})>>
<<if $npc_admin.flags.evil == 4>>
<<if State.hasPlayed("event_work_manager_and_admin_1")>>
<<addWorkEvent 'admin_office_sex_visit_repeat'>>
<<else>>
<<addWorkEvent 'admin_office_sex_visit'>>
<</if>>
<</if>>
<<if $workEvents.hasOwnProperty("ai_orgy") && !$npc_manager.flags.cruel>>
<<removeWorkEvent "ai_orgy">>
<</if>>
<<removeWorkEvent "work_tea_random">>
<<addWorkEvent "work_coffee_random">>
<<addWorkEvent "hr_harassment_stage5">>
<<if $npc_barista.flags.rescue.cure == "good">>
<<addWorkEvent "work_coffee_forced_stage5">>
<<addRandomEvent $randomEvents['work_coffee_shop'] 'stage5_barista'>>
<</if>>
<<set $npc_manager.flags.lastOfficeVisit = $now>>
<<set $scene.awardCollar = !$player.sec_style.submission.collar>>
<<if $scene.awardCollar>>
<<set $player.sec_style.submission.collar = 'forced'>>
<<set $player.flags.collar.owner = 'npc_manager'>>
<<set $player.flags.collar.collarId = 'manager_company_collar'>>
<<addItem 'manager_company_collar'>>
<<wearItem 'manager_company_collar' true>>
<<setThreshold 'submission' 'collar_submission' 'forced'>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_npc_manager_rival'
0
'theme_npc_manager_rival'
true
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_ai_stage5_infiltrate_14")>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice") setup.charImage("npc_ai")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil_nice")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_ai_stage5_infiltrate_14")>>
<<=setup.getNpcName("npc_manager","formal")>> looks hesitant... and then <<=setup.getNpcName("npc_ai","first")>> appears and <<=setup.getNpcName("npc_manager","formal")>> sighs with relief.<br>
<br>
"@@.npc_ai;<<uc "Congratulations, unit ">> <<uc $player.first_name>><<uc ".">>@@"<br>
<br>
"@@.npc_manager;Yes, congratulations and... thank you...@@" She takes a deep breath. "@@.npc_manager;I don't know how that idiot <<=setup.getNpcName("npc_work_doctor","last")>> managed to brew something that could affect me but... well, avoiding any more of that disgusting tea should not be a problem. Now... now we need to bring a stop to <<=setup.getNpcName("npc_boss","formal")>> once and for all.@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> brings up a holographic chart. "@@.npc_ai;<<uc 'Since returning to the building I have been monitoring things carefully. By my calculations a successful attack against <<=uc(setup.getNpcName("npc_boss","formal"))>> must have multiple components. First, you will need allies. Your friends each have useful skills that will help in bringing <<=uc(setup.getNpcName("npc_boss","formal"))>> down. You must get each of them out from under <<if $npc_boss.fem>>her<<else>>his<</if>> control. Second is <<if $npc_boss.fem>>her<<else>>his<</if>> lieutenants — <<=uc(setup.getNpcName("npc_rival","formal"))>>, <<=uc(setup.getNpcName("npc_retention","formal"))>>, <<=uc(setup.getNpcName("npc_nintendolls","formal"))>>, and <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> must be neutralised. Finally is <<if $npc_boss.fem>>her<<else>>his<</if>> iron grip over the Valkyries — with the law on <<if $npc_boss.fem>>her<<else>>his<</if>> side <<if $npc_boss.fem>>she<<else>>he<</if>> will be almost impossible to oppose. You must discover how <<if $npc_boss.fem>>she<<else>>he<</if>> has suborned the Valkyries, and break <<if $npc_boss.fem>>her<<else>>his<</if>> control.'>> <<uc $player.first_name>><<uc ".">>@@"<br>
<br>
"@@.npc_manager;I suspect that <<=setup.getNpcName("npc_psychiatrist","formal")>> will be best positioned to aid you in bringing down <<=setup.getNpcName("npc_work_doctor","formal")>>... as to <<=setup.getNpcName("npc_rival","formal")>>, well... if you can help me gather support from other managers and otherwise undermine <<him npc_rival>> across the company I will be able to arrange for <<him npc_rival>> to be embarrassed and discredited enough for me to reclaim my previous title.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles at you, her old confidence back and bolstering your own. "@@.npc_manager;I know this is a lot to ask... and your journey to this point has certainly been a... curious one, but you represent a blind spot for <<=setup.getNpcName("npc_boss","formal")>>. <<He npc_boss>> is under the delusion that you are<<if $npc_boss.last_name == "Pawn">>, excuse the pun,<</if>> merely a pawn. That gives you freedom of action that I cannot enjoy, but it means that, together... we can bring <<him npc_boss>> to an end.@@"<br>
<br>
Your heart beats faster. You have taken a major step towards ending the madness this company has brought to your life... and you have a path forward, but it looks like you are far from the end of the road.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> graces you with a parting smile. "@@.npc_manager;Have a rest — enjoy your accomplishment, we will speak more in the future.@@"<br>
<br>
<<if $scene.awardCollar>>
"@@.npc_manager;Oh, and one final thing...@@" She reaches into her desk and comes up with a plain, if intimidatingly hefty, steel collar with her symbol etched into the front. "@@.npc_manager;After what we have dealt with previously... well, I want to make it clear to my fellow managers that you are owned. You will wear this to mark yourself as an owned slave. MY owned slave. It should keep you protect you from some machinations, as well as serve as a constant reminder of who you serve.@@"<br>
<br>
With a loud click the collar locks around your neck, the cold metal slowly adjusting to your body-heat... though the weight on your collarbone is such that you doubt you will ever forget the heavy collar's presence.<br>
<br>
"@@.npc_manager;You may return to your desk, slave.@@"<br>
<br>
<</if>>
[<<moveTo "room_office_after_work" 'Leave.' 300>>]
<<else>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> expression slightly shifts and you find yourself looking at your "old" <<=setup.getNpcName("npc_manager","title")>> again. Her eyes flit towards the upper corner of the room as you remember the constant surveillance.<br>
<br>
<<printThought "Until <<=setup.getNpcName('npc_ai','first')>> can assert control over company surveillance there's no way that <<=setup.getNpcName('npc_manager','formal')>> can break character safely...">><br>
<br>
"@@.npc_manager;I appreciate your performance today, it has been quite... invigorating.@@" She states, clearly choosing her words carefully. "@@.npc_manager;The day is at an end, however, and I do not presently have the free time to do anything further.@@"<br>
<br>
She takes a deep breath and, with stoic, yet sad expression, slowly pours a fresh cup of tea. "@@.npc_manager;You may leave, now.@@"<br>
<br>
She takes a drink and you watch her expression change. You reflexively wince at the fact that she was, for a moment, "cured"... and then the tea starts to take effect and her expression hardens. "@@.npc_manager;What are you still doing here? Your shift is over, go rest up and prepare for your next one!@@"<br>
<br>
A sharp punishing shock from your <<=setup.getItemTypeName('cage')>> has you hurrying out of the office as <<=setup.getNpcName("npc_manager","formal")>> continues to sip tea and glares at you.<br>
<br>
[<<moveTo "room_office_after_work" 'Leave.' 300>>]
<</if>>
</div>/*#
#desc: fail to cure manager
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.lastOfficeVisit = $now>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> glares at you with the same stern expression that has been the norm of late.<br>
<br>
With a dismissive wave she sends you off.<br>
<br>
<<printThought "Damn, failed to properly spark her memory. I really need to figure out the right performance...">><br>
<br>
[<<moveTo "room_office_after_work" 'Leave.' 300>>]
</div>/*#
#desc: ask manager to the club
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.scheduled = $currentTasks.hasOwnProperty('task_manager_date_club') && !$currentTasks.task_manager_date_club.finished>>
<<set _themeId = setup.findThemeId('npc_manager', 'other', 'theme_manager_sexclub_1')>>
<<set $scene.first = !$npc_manager.flags.sexclub.pup && !$npc_manager.flags.sexclub.drone && !$npc_manager.flags.sexclub.pony && !$npc_manager.flags.sexclub.slave>>
<<if !$scene.scheduled>>
<<set $scene.accept = ($player.flags.collar.owner == 'npc_manager' || $player.flags.collar.owner == 'company') && (State.hasPlayed("event_manager_visit_tour_1") || $npc_manager.flags.party.timesAttended)>>
<<if $scene.accept>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 0, 21, 0, false)>>
<<addTaskById 'task_manager_date_club' _tmpDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if she would be willing to take you to <<printShopName 'sex_club'>>?<br>
<br>
<<if $scene.scheduled>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;My dear... we are already scheduled for such... and I am quite looking forward to picking you up on Sunday... yes, indeed I am...@@"
<<else>>
<<if $scene.first>>
<<if $npc_manager.flags.sexclub.invite>>
"@@.npc_manager;<<printShopName 'sex_club'>>?@@" She grins. "@@.npc_manager;I see that flyer has given you some ideas, hmm?@@" She winks at you almost playfully.
<<else>>
"@@.npc_manager;<<printShopName 'sex_club'>>?@@" She smiles wistfully. "@@.npc_manager;Now that is a name I have not heard in a while... good to hear that <<=setup.getNpcName("npc_sex_club","formal")>> was able to re-open.@@" She grins as she looks you in the eye.
<</if>>
<<else>>
"@@.npc_manager;Again? Yes... I think I had enough fun last time I could hardly say no to another trip.@@" She grins as she looks you in the eye.
<</if>>
<<if $player.flags.collar.owner == 'npc_manager'>>
"@@.npc_manager;Why that sounds just lovely, it would be so nice to get away from the office and... show you off.@@"
<<elseif $player.flags.collar.owner == "company">>
"@@.npc_manager;Hmm... I suppose that would be possible, me chaperoning one of the company's assets.@@"
<<elseif $player.flags.collar.owner != "">>
"@@.npc_manager;Being that you are owned by someone else, well... I do not think it would be proper for me to go parading around with you like that in public. I would wish you a good evening with your owner, but I am afraid I must decline.@@"
<<elseif !(State.hasPlayed("event_manager_visit_tour_1") || $npc_manager.flags.party.timesAttended)>>
"@@.npc_manager;No... I do not think visiting <<printShopName 'sex_club'>> at this juncture would be appropriate. Perhaps if we had spent time outside of work, but, until then...@@"
<<else>>
"@@.npc_manager;No... I do not think visiting <<printShopName 'sex_club'>> with an un-owned slave would be quite proper, I shall have to pass.@@"
<</if>>
<<if $scene.accept>>
<br><br>
"@@.npc_manager;I will pick you up Sunday, <<if $options.militaryTime>>21:00<<else>>nine pm<</if>> — yes, I have just the outfit to show you off with...@@"<br>
<br>
The way she smiles at you gives you a slight thrill as you nod and promise to be clean and ready.
<</if>>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: fail to be home for manager club pickup
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<printThought "Shit! She was going to pick me up for a trip to <<printShopName 'sex_club'>> tonight!">><br>
<br>
"@@.npc_manager;I shall not play games by asking you to guess where I am. You obviously realise your mistake... and now, your loss. I shall see you tomorrow morning, Miss <<=$player.last_name>>.@@" She hangs up.<br>
<br>
Her sudden formality, and blunt dismissal, stings more than a loud admonishment... as if your failure was so severe as to not even be worthy of punishment.<br>
<br>
<<printThought "Dammit.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: called for manage club trip
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<set $player.cutscene.reason = "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<if !$inventory[$scene.shoesId].status.lock>>
<<manipulateItem $scene.shoesId 'lock' true>>
<</if>>
<</if>>
<<set $currentcall = true>>
<<set $scene.stow = setup.getItemsInInventoryByFilter('tag', ['bulky']) || setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<if $scene.stow.length>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<itemsToWardrobe _items>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bulky'])>>
<<itemsToWardrobe _items>>
<</if>>
<</if>>
<<readyToLeaveHome>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.waiting>>
Precisely at the scheduled time you get a text that <<=setup.getNpcName("npc_manager","formal")>> is waiting for you downstairs.<<if $scene.stow.length>> You quickly toss a few things in your wardrobe, wondering why you were even still carrying them around.<</if>><br>
<br>
<<printThought "She said she had an outfit for me... but I still need to be dressed to head downstairs.">><br>
<br>
<<set _reason = setup.checkOutsideDecencyReason()>>
<<if $player.readytoleave || (_reason == "makeup_none" || _reason == "makeup_messy")>>
<<if _reason == "makeup_none">>
<<printThought "Crap, no makeup, but no time for that now.">><br>
<br>
<<elseif _reason == "makeup_messy">>
<<printThought "Crap, my makeup is a disaster but there's no time for that now.">><br>
<br>
<</if>>
[<<moveTo "event_sexclub_date_manager_2" "Head downstairs." 60 "<<set $scene.stow=false>><<set $currentcall=false>>">>]
<<else>>
<<include thoughts_home>><br>
<br>
[@@.link_locked;You are not properly dressed to leave your apartment.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
Bustling about your house, you get a text that a vehicle is waiting for you downstairs.<<if $scene.stow>> You quickly toss a few things in your wardrobe, wondering why you were even still carrying them around.<</if>><br>
<br>
<<printThought "<<=setup.getNpcName('npc_manager','formal')>> said she had an outfit for me... but I still need to be dressed to head downstairs.">><br>
<br>
<<set _reason = setup.checkOutsideDecencyReason()>>
<<if $player.readytoleave || (_reason == "makeup_none" || _reason == "makeup_messy")>>
<<if _reason == "makeup_none">>
<<printThought "Crap, no makeup, but no time for that now.">><br>
<br>
<<elseif _reason == "messy">>
<<printThought "Crap, my makeup is a disaster but there's no time for that now.">><br>
<br>
<</if>>
[<<moveTo "event_sexclub_date_manager_2" "Head downstairs." 60 "<<set $scene.stow=false>><<set $currentcall=false>>">>]
<<else>>
<<include thoughts_home>><br>
<br>
[@@.link_locked;You are not properly dressed to leave your apartment.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
</div>/*#
#desc: manager picks you up for sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info = true>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<div id="invframe" class="scrolltext">
You head down to the waiting limousine where <<=setup.getNpcName("npc_manager","formal")>> — already intimidatingly dressed, for the evening's festivities, greets you with a nod.<br>
<br>
"@@.npc_manager;If you would remove your clothing,@@" she commands as the door closes and the limousine eases into motion,
<<if $fetish.pet_play>>
"@@.npc_manager;I have brought several options for you to adorn yourself with for the evening.@@"
<<else>>
"@@.npc_manager;I have brought a couple of options for you to adorn yourself with for the evening.@@"
<</if>>
<br><br>
<<if $player.makeup.messed > 25>>
She frowns as she looks at your <<if $player.makeup.messed > 75>>totally ruined<<elseif $player.makeup.messed > 50>>ruined<<else>>smudged<</if>> makeup. "@@.npc_manager;Unfortunately that selection shall have to be limited given the need to cover up the quite horrifying state of your makeup.@@"<br>
<br>
<</if>>
<<if $fetish.pet_play>>
She gestures towards the long seat where you find laid out a pair of puppy play bitchsuits — one pink, one black, complete with hood and tail. Alongside that is a full set of pony restraints, latex drone outfits in pink or black, and a set of restraining chains that would leave you naked save for gleaming steel...<<if $player.makeup.messed > 25>> only for her to remove all but the drone and puppy play outfits.<</if>>
<<else>>
She gestures towards the long seat where you find laid out two latex drone outfits — one pink, and one black, along with a set of polished chains that would leave you naked save for gleaming steel...<<if $player.makeup.messed > 25>> only for her to pack up the chains and leave you with only the drone and its face-obscuring latex hood.<</if>>
<</if>>
<br><br>
"@@.npc_manager;So... how shall we be presenting you this evening?@@"<br>
<br>
<<if $fetish.pet_play>>
[<<moveTo "event_sexclub_date_manager_3" "Change into the pink puppy outfit." 600 "<<set $scene.outfit='pup_pink'>>">>]<br>
[<<moveTo "event_sexclub_date_manager_3" "Change into the black puppy outfit." 600 "<<set $scene.outfit='pup_black'>>">>]<br>
<<if $player.makeup.messed > 25>>
[@@.link_locked;Your imperfect makeup has taken away the pony outfit option.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_manager_3" "Change into the pony outfit." 600 "<<set $scene.outfit='pony'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_sexclub_date_manager_3" "Change into the black latex drone outfit." 600 "<<set $scene.outfit='drone_black'>>">>]<br>
[<<moveTo "event_sexclub_date_manager_3" "Change into the pink latex drone outfit." 600 "<<set $scene.outfit='drone_pink'>>">>]<br>
<<if $player.makeup.messed > 25>>
[@@.link_locked;Your imperfect makeup has taken away the option of wearing only chains.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_manager_3" "Change into the skimpy chains." 600 "<<set $scene.outfit='slave'>>">>]
<</if>>
</div>/*#
#desc: manager has you change on drive to sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<switch $scene.outfit>>
<<case 'pup_pink'>>
<<addItemSet 'puppy_pink_copy'>>
<<wearItemSet 'puppy_pink_copy'>>
<<addItem 'dog_leash'>>
<<wearItem 'dog_leash' true>>
<<case 'pup_black'>>
<<addItemSet 'puppy_black_copy'>>
<<wearItemSet 'puppy_black_copy'>>
<<addItem 'dog_leash'>>
<<wearItem 'dog_leash' true>>
<<case 'pony'>>
<<set $scene.ownedCatsuit = setup.checkItemOwned("catsuit_latex_black")>>
<<addItem "catsuit_latex_black">>
<<wearItem "catsuit_latex_black" true>>
<<addItemSet 'pony_girl'>>
<<wearItemSet 'pony_girl'>>
<<addItem 'pony_plug'>>
<<wearItem 'pony_plug' true>>
<<addItem "armbinder_black">>
<<wearItem "armbinder_black" true>>
<<case 'drone_pink'>>
<<addItemSet 'drone_pink'>>
<<wearItemSet 'drone_pink'>>
<<case 'drone_black'>>
<<addItemSet 'drone_black'>>
<<wearItemSet 'drone_black'>>
<<case 'slave'>>
<<addItem 'slave_chains'>>
<<wearItem 'slave_chains' true>>
<</switch>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<div id="invframe" class="scrolltext">
<<switch $scene.outfit>>
<<case 'pup_pink' 'pup_black'>>
You change into the <<if $scene.outfit == "pup_pink">>pink<<else>>black<</if>> puppy outfit, hooded, plugged, hooded and on your knees as <<=ps(setup.getNpcName("npc_manager","formal"))>> cute pup. She smiles as she finishes things off with a leash as the limo pulls up in front of <<printShopName 'sex_club' false>> and she helps you take the large step down to the ground to crawl after her.
<<case 'pony'>>
You get cinched into the pony outfit<<if $npc_manager.stage >= 4>>, <<=ps(setup.getNpcName("npc_manager","formal"))>> wink telling you she is thinking back to that time at the corporate retreat as well<</if>>. By the time the limo pulls up in front of <<printShopName 'sex_club' false>> you are a proud pony, and you prance gracefully behind your owner as she holds your reins and leads you into the building.
<<case 'drone_pink' 'drone_black'>>
You change into the <<if $scene.outfit == "drone_pink">>pink<<else>>black<</if>> drone outfit — tight, anonymising latex, complete with an integrated corset, heels, and a silencing gag. By the time the limo pulls up in front of <<printShopName 'sex_club' false>> you are feeling sleek and shiny, stepping out after your <<=setup.getNpcName("npc_manager","title")>> her faceless obedient servant.
<<case 'slave'>>
<<=setup.getNpcName("npc_manager","formal")>> locks the skimpy steel restraints onto your body. Bound at wrist, waist and ankle — with chains also connecting your <<if $player.piercings.nipples>>nipple piercings<<else>>nipples<</if>> and collar you are not at all what one might call "dressed" — a pair of minimal, but steep, heels the only actual article of clothing on your body... and yet, with <<=setup.getNpcName("npc_manager","formal")>> holding your leash, you do not feel the slightest bit of fear as you step into the cool night air for the short walk from limousine into the <<printShopName 'sex_club' false>>.
<<default>>
ERROR: unexpected scene.outfit <<=$scene.outfit>>
<</switch>>
<br><br>
[<<moveTo "event_sexclub_date_manager_4" "Enter the club..." 300>>]
</div>/*#
#desc: enter sexclub with manager
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
Following obediently behind your <<=setup.getNpcName("npc_manager","title")>> you walk into the club where you, or, rather, your owner, is immediately greeted by <<=setup.getNpcName("npc_guard","formal")>>, the door-woman snapping to attention.<br>
<br>
"@@.npc_guard;Welcome <<=setup.getNpcName("npc_manager","Director")>>... sorry, <<=setup.getNpcName("npc_manager","title")>>. I will let <<=setup.getNpcName("npc_sex_club","formal")>> know that you have decided to grace us with your presence once again.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods politely in acknowledgement... and you shiver slightly as you feel her raw dominant energy unfurl. Even more than the pure authority she wields at the office here you feel her becoming somehow even more herself as the normally quite dominant <<=setup.getNpcName("npc_guard","formal")>> obediently gets the door and <<=setup.getNpcName("npc_manager","formal")>> leads you into the club...<br>
<br>
[<<moveTo "event_sexclub_date_manager_5" "Follow her inside." 300>>]
</div>/*#
#desc: owner greets manager at sexclub
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = -1 == setup.findThemeId('npc_manager', 'other','theme_manager_bonus_sex_club', 'privatethemes')>>
<<if $scene.first>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_bonus_sex_club' 0 'event_manager_theme_private_sex_club_1' false 'privatethemes'>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You have barely entered the club when <<=setup.getNpcName("npc_sex_club","formal")>> appears, greeting <<=setup.getNpcName("npc_manager","formal")>> with a wide smile and a bow.<br>
<br>
"@@.npc_sex_club;<<=setup.getNpcName("npc_manager","formal")>>! Too long has it been since you graced us with your presence!@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods politely in acknowledgement. "@@.npc_manager;Yes, well... work has kept me quite occupied... and I hear you had some difficulties yourself?@@"<br>
<br>
<<=setup.getNpcName("npc_sex_club","formal")>> frowns slightly. "@@.npc_sex_club;Some... difficulties with permits and such. <<=setup.getNpcName("npc_boss","formal")>> throwing <<his npc_boss>> weight around a bit in response to my turning down <<his npc_boss>> extended proposal...@@" The <<mans npc_sex_club>> smile returns as <<he npc_sex_club>> continues. "@@.npc_sex_club;But enough of the past! This place is about the present and putting the distractions of the work-day behind! I see you have a lovely new slave with you. I should have known it was yours — that one has been making quite the impression since she first showed up here! Your training remains, as ever, sublime.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles... not quite pridefully, but not immodest, either. "@@.npc_manager;You are too kind. Well, I will extend my regards for the difficulties you faced, and now I think I and my slave shall be off to enjoy your establishment.@@"<br>
<br>
"@@.npc_sex_club;Of course, of course! Have a wonderful evening and let me know if there is ANYTHING I can do to assist.@@"<br>
<br>
The <<man npc_sex_club>> bows and slides away as <<=setup.getNpcName("npc_manager","formal")>> scans the room.
<<else>>
You enter the club and <<=setup.getNpcName("npc_sex_club","formal")>> hurrys over to greet <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_sex_club;You grace us with your presence yet again! Welcome, welcome — I see
<<switch $scene.outfit>>
<<case 'pup_pink' 'pup_black'>>
you have brought quite the cute pup this evening!
<<case 'pony'>>
you are showing quite the lovely pony this evening!
<<case 'drone_pink' 'drone_black'>>
you have obtained quite a striking drone.
<<case 'slave'>>
your slave is looking as gorgeously obedient as always.
<<default>>
ERROR: unexpected scene.outfit <<=$scene.outfit>>
<</switch>>
Truly you present a fine example to strive towards for Masters and slaves alike.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods politely, the two dominants conversing for a few minutes before <<=setup.getNpcName("npc_sex_club","formal")>> excuses <<himself npc_sex_club>> to attend to other business.
<</if>>
<br><br>
"@@.npc_manager;So...@@" <<=setup.getNpcName("npc_manager","formal")>> leads off as you look about the room. "@@.npc_manager;What shall we do tonight?@@"<br>
<br>
<<include "managerClubDateChoices">>
</div><<if $scene.bar>>
[@@.link_locked;You've already gotten a drink at the bar.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_manager_5_bar_1" "Head for the bar." 60>>]<br>
<</if>>
<<if $scene.play>>
[@@.link_locked;You've already spent time in the play area.@@]<br>
<<else>>
<<if ['pup_pink','pup_black','pony'].includes($scene.outfit)>>
[<<moveTo "event_sexclub_date_manager_5_play_1" "See if you can have some fun in the play area." 3600>>]<br>
<<else>>
[<<moveTo "event_sexclub_date_manager_5_play_1" "See if you can have some fun in the play area." 600>>]<br>
<</if>>
<</if>>
<<if $scene.bar && $scene.play>>
[<<moveTo "event_sexclub_date_manager_end_1" "Continue..." 3600>>]
<</if>>/*#
#desc: sexclub bar with manager
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bar = true>>
<<if $scene.outfit == "pony">>
<<set $scene.first = $npc_manager.flags.sexclub.shoestore == 0>>
<<if $npc_manager.flags.sexclub.shoestore < 1>>
<<set $npc_manager.flags.sexclub.shoestore = 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.outfit>>
<<case 'pup_pink' 'pup_black'>>
<<if State.hasPlayed("event_guard_retention_mission_5") || State.hasPlayed("event_landlord_retention_mission_7")>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_retention")>>
<</if>>
<<case 'pony'>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_shoestore_manager","npc_shoestore_pony")>>
<<case 'drone_pink' 'drone_black'>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<<case 'slave'>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<</switch>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> leads you to the bar.<br>
<br>
<<switch $scene.outfit>>
<<case 'pup_pink' 'pup_black'>>
<<if State.hasPlayed("event_guard_retention_mission_5") || State.hasPlayed("event_landlord_retention_mission_7")>>
<<=setup.getNpcName("npc_manager","formal")>> enjoys a drink at the bar as you sit obediently at her side. You have a weird feeling that something else might have happened here... but that whoever you might have met is no longer available... <<hint $options "<<=setup.getNpcName('npc_retention','formal')>> is no longer a patron of <<printShopName 'sex_club' false>>.">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> finishes her drink and glances down at you.<br>
<br>
<<include "managerClubDateChoices">>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> has not even had a chance to place an order when you hear a familiar voice and <<=setup.getNpcName("npc_retention","formal")>> appears, <<his npc_retention>> own pet pup on a leash.<br>
<br>
"@@.npc_retention;<<=setup.getNpcName("npc_manager","other")>>! It has been too long since we met away from the office... I see you have your <<if $fetish.sissy>>sissy<<else>>pet<</if>> working a proper 24/7 shift.@@" <<He npc_retention>> gestures for the bartender. "@@.npc_retention;Two of your oldest single malt. Neat.@@"<br>
<br>
As your owners talk your fellow pup straightens up taller, looking as if they are attempting to assert their place above you in the hierarchy of pets.<br>
<br>
[<<moveTo "event_sexclub_date_manager_pup_1" "Submit." 1800 "<<set $scene.sub=true>>">>]<br>
<<if setup.getTotalValue("dominance") > 0>>
[<<moveTo "event_sexclub_date_manager_pup_1" "Attempt to establish dominance." 1800 "<<set $scene.sub=false>>">>]
<<else>>
[@@.link_locked;You do not have the skills to assert dominance.@@]
<</if>>
<</if>>
<<case 'pony'>>
<<=setup.getNpcName("npc_manager","formal")>> orders a scotch, the barkeeper dutifully placing the drink in front of her just as <<=setup.getNpcName("npc_shoestore_assistant","first")>> and her mounted Mistress trot up to the bar.<br>
<br>
<<if $scene.first>>
"@@.npc_shoestore;<<=setup.getNpcName("npc_manager","formal")>>? I was wondering if we were ever going to see you here again!@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> waves for another round and shrugs. "@@.npc_manager;Work has been...@@"<br>
<br>
"@@.npc_shoestore;Say no more, say no more! I apologise for bringing it up and distracting from your night's relaxation.@@"<br>
<br>
<<=setup.getNpcName("npc_shoestore_manager","formal")>> notices you and smiles. "@@.npc_shoestore;Well, well! I should have known she was yours — the poise... the naive request for bed heels, followed by rapidly developing skill... yes, that is just your style. Say, how would you feel about a little competition? I haven't had a challenger on the chariot pull for a while... perhaps seeing competition as well-trained as I am sure yours is will re-ignite interest?@@"
<<else>>
"@@.npc_shoestore;Back again, with the second most beautiful pony I know of. Feel in the mood for another competition?<<if $npc_manager.flags.sexclub.shoestore >= 3>> <<=setup.getNpcName("npc_shoestore_assistant","first")>> is raring for a rematch!<</if>>@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> has been sharing her drink by dabbing a few drops of the strong, smooth alcohol on your lips past your gag and she smiles. "@@.npc_shoestore;That sounds a capital idea. What is the point of a pony if one does not take the opportunity to put them through a workout?@@"<br>
<br>
"@@.npc_shoestore;Wonderful — we can finish our drinks while we harness them up.@@" <<=setup.getNpcName("npc_shoestore_manager","formal")>> wheels around on her steed, and <<=setup.getNpcName("npc_manager","formal")>> gently tugs on your reins for you to follow.<br>
<br>
[<<moveTo "event_sexclub_date_manager_horse_1" 'Follow.' 600>>]<br>
<<case 'drone_pink' 'drone_black'>>
<<=setup.getNpcName("npc_manager","formal")>> enjoys a scotch as you stand dutifully and robotically at her side like a good drone.<br>
<br>
She finishes her drink, leaves a generous tip on the bar, and nods at you.<br>
<br>
<<include "managerClubDateChoices">>
<<case 'slave'>>
<<=setup.getNpcName("npc_manager","formal")>> orders a scotch as you kneel obediently at her side, the hand holding your leash resting possessively on your head as she enjoys her drink.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> fields a handful of compliments, but nothing of particular interest before leaving a generous tip on the bar and nodding for you to decide what to do next.<br>
<br>
<<include "managerClubDateChoices">>
<<default>>
ERROR: unexpected scene.outfit <<=$scene.outfit>>
<</switch>>
</div>/*#
#desc: sexclub play area w/manager
#status: RELEASED 0.8.5.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.play = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.outfit>>
<<case 'pup_pink' 'pup_black'>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<<case 'pony'>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<<case 'drone_pink' 'drone_black'>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_manager","npc_manager_dom_2") "drone" "drone">>
<<case 'slave'>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_boyfriend")>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.outfit>>
<<case 'pup_pink' 'pup_black'>>
<<=setup.getNpcName("npc_manager","formal")>> leads you through the play area, pausing occasionally to use you as her seat and pet your head as she observes a particularly interesting demonstration, your tail wiggling with excitement at being of such submissive use to your owner.<br>
<br>
No matter who you walk past <<=setup.getNpcName("npc_manager","formal")>> attracts glances of awe, and it is a good hour of wandering and watching everything from flogging to shibari, to even a hitching post competition before she leads you out of the play area and back to the main floor.<br>
<br>
<<include "managerClubDateChoices">>
<<case 'pony'>>
<<=setup.getNpcName("npc_manager","formal")>> has you lead her through the play area, stopping occasionally to watch a particularly interesting scene, but always keeping you close to her side, tsking you occasionally for drooling past your bit gag as you make a slow, winding tour of the various goings-on before she steers back towards the main club.<br>
<br>
<<include "managerClubDateChoices">>
<<case 'drone_pink' 'drone_black'>>
<<=setup.getNpcName("npc_manager","formal")>> wanders through the play area with you following obediently at her side, coming to a stop at a display of drones, one of the drones bound to one of a pair of fucking machines. One of the standing drones addresses <<=setup.getNpcName("npc_manager","formal")>>, gesturing towards you, and then to the empty seat in invitation.<br>
<br>
"@@.npc_manager;Ah, a drone pleasure competition... fancy the challenge, my dear?@@" <<=setup.getNpcName("npc_manager","formal")>> asks you with a smile.<br>
<br>
[<<moveTo "event_sexclub_date_manager_drone_1" "Sure." 1800 "<<set $scene.comp=true>>">>]<br>
[<<moveTo "event_sexclub_date_manager_drone_1" "Continue on." 1800 "<<set $scene.comp=false>>">>]
<<case 'slave'>>
<<if $scene.first>>
You come upon your friend <<=setup.getNpcName("npc_futa","first")>>, seeming in the process of tying her <<boy>>friend to an X frame. She notices <<=setup.getNpcName("npc_manager","formal")>> and is momentarily star-struck, bowing slightly and tugging on her <<boy>>friend's leash so that <<he>> does the same.<br>
<br>
"@@.npc_futa;<<=setup.getNpcName("npc_manager","other")>>! I, uh, heard you used to come here... wow, it's such an honour to meet you in person. Some of the stories I've heard around the office...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles politely as she waves off the compliment. "@@.npc_manager;Exaggerations, I am sure. I will note I have heard mention of you as well — you have been advancing quite swiftly... though let us dispense with work matters. Please, call me <<=setup.getNpcName("npc_manager","first")>>. Tonight is about relaxing and... letting off some steam...@@"<br>
<br>
"@@.npc_futa;Of course, <<=setup.getNpcName("npc_manager","formal")>>... say, I don't suppose you'd be willing to give me some instruction? This is the first time for me using a flogger — we don't really have space for something like this in the apartment but the idea of it has been gnawing at me...@@"
<<else>>
You come upon your friend <<=setup.getNpcName("npc_futa","first")>> and her <<boy>>friend once again.<br>
<br>
"@@.npc_futa;<<=setup.getNpcName("npc_manager","formal")>>! So nice to see you.@@" She bows, and her <<boy>>friend does likewise. "@@.npc_futa;I was just setting <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> here up for a little flogging — we don't really have the space in the apartment for this sort of thing so... I thought I'd take care of <<his>> most recently earned punishment in style! I don't suppose you have any additional tips?@@"
<</if>>
<br><br>
You can feel <<=ps(setup.getNpcName("npc_manager","formal"))>> presence swell, and note <<=ps(setup.getNpcName("npc_futa","first"))>> <<boy>>friend's reaction as well as <<he>> glances back and forth between the two dommes.<br>
<br>
"@@.npc_manager;Of course, here, how about you put <<=$player.first_name>> up next to your slave and you can learn by watching AND doing.@@" She gestures towards a second X frame, her prideful smile telling you that she expects you to prove your chains and provide a VERY good example for how a slave ought to behave.<br>
<br>
[<<moveTo "event_sexclub_date_manager_slave_1" "Step up onto an X frame." 1800>>]
<<default>>
ERROR: unexpected scene.outfit <<=$scene.outfit>>
<</switch>>
</div>/*#
#desc: sexclub bar with manager pup sub/dom
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sub>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $EXPOSED>>
<<set $npc_retention.flags.pet_sub = true>>
<<else>>
<<if setup.getTotalValue("dominance") > 15 && setup.getTotalValue("strength") > 15>>
<<set $npc_retention.flags.pet_dom = true>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $EXPOSED>>
<<else>>
<<set $npc_retention.flags.pet_sub = true>>
<<applyExperience 'submission' 15 'terrible' $EXPOSED>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<if $scene.sub>>
You obediently lower yourself in submission to your counterpart. <<He npc_retention_assistant>> accepts your obsequience surrender enthusiastically as <<he npc_retention_assistant>> moves behind and rears up to mount you, <<his npc_retention_assistant>> bulge grinding against your rear as your owners continue to chat.<br>
<br>
You drool through your gag as <<his npc_retention_assistant>> pace increases until with a low howl, you feel <<his npc_retention_assistant>> hips jerk as <<he npc_retention_assistant>> cums.<br>
<br>
This finally proves to be enough to draw attention as <<=setup.getNpcName('npc_retention', 'formal')>> scolds <<his npc_retention>> pet in annoyance. "@@.npc_retention;I apologise for my pet — it would seem your own was just too irresistible. I must excuse us to clean up and discipline my animal.@@"<br>
<br>
You can hear the amusement in your <<=ps(setup.getNpcName('npc_manager', 'title'))>> voice as she replies. "@@.npc_manager;Yes... she does have that effect. Well it was so nice catching up off the clock, I suppose I shall be seeing you at the office — when are you not otherwise occupied attending to <<=ps(setup.getNpcName('npc_boss', 'formal'))>> needs, of course. I dare say if <<he npc_boss>> is going to so monopolise your time, <<he npc_boss>> really should promote you and free me up to hire a new Director of Employee Retention.@@"
<<else>>
<<if setup.getTotalValue("dominance") > 15 || setup.getTotalValue("strength") > 15>>
You may be severely gagged and bound... but so is your counterpart.
<<if setup.getTotalValue("dominance") > 15>>
You muster your dominant poise and, after a moment's hesitation, <<=setup.getNpcName('npc_retention_assistant', 'first')>> lowers <<himself npc_retention_assistant>> submissively.
<<elseif setup.getTotalValue("strength") > 15>>
You muster up as much dominant skill as you have... but that only seems to spur your counterpart on as <<he npc_retention_assistant>> attempts to assert <<his npc_retention_assistant>> power physically... only to discover that it is you who is stronger. Wrestling in your leather bitchsuits is a bit odd, but you get the best of your counterpart, pressing <<him npc_retention_assistant>> into the floor as you assert dominance, waiting until <<he npc_retention_assistant>> goes submissively limp and turns over to display <<his npc_retention_assistant>> belly before leaning back and nodding in satisfaction.
<<else>>
ERROR; unexpected state
<</if>>
You preen slightly and then settle back as <<he npc_retention_assistant>> dutifully moves in to groom you.<br>
<br>
Several minutes pass before <<=setup.getNpcName('npc_retention', 'formal')>> looks down, surprise in <<his npc_retention>> voice as <<he npc_retention>> yanks on <<his npc_retention>> pet's chain.<br>
<br>
"@@.npc_retention;What are you doing?@@" <<He npc_retention>> states sharply as <<=setup.getNpcName('npc_retention_assistant', 'first')>> quickly retreats, rubbing <<himself npc_retention_assistant>> against <<his npc_retention_assistant>> <<if $npc_retention.fem>>mistress'<<else>>master's<</if>> leg.<br>
<br>
"@@.npc_manager;It would seem <<he npc_retention_assistant>> was submitting to my lovely <<if $fetish.sissy>>sissy<<else>>pet<</if>>. I have been giving her some lessons in dominance — should the occasion come up where she needs to take charge of her fellow secretaries or the like... it would seem that she is taking to such well.@@" <<=setup.getNpcName('npc_manager', 'formal')>> replies, the obvious pride in her voice making your heart swell.<br>
<br>
"@@.npc_retention;Yes, well... just be careful that she does not get any ideas about ordering anyone else around... unfortunately, on that note I must excuse myself. Someone needs a refresher course on proper decorum in public and punishment delayed is punishment denied.@@"<br>
<br>
"@@.npc_manager;Of course, of course. Well it was so nice catching up off the clock, I suppose I shall be seeing you at the office — when you are not otherwise occupied attending to <<=ps(setup.getNpcName('npc_boss', 'formal'))>> needs, of course. I dare say if <<he npc_boss>> is going to monopolise your time, <<he npc_boss>> really should promote you and green-light a new Director of Employee Retention.@@"
<<else>>
You try to assert your dominance, but <<=setup.getNpcName('npc_retention_assistant', 'first')>> is having none of it, enforcing <<his npc_retention_assistant>> will further with <<his npc_retention_assistant>> superior strength as <<he npc_retention_assistant>> pushes you to the ground and begins humping against your raised bottom.<br>
<br>
The commotion of your struggles, and <<his npc_retention_assistant>> excitement, draws the attention of your owners as <<=setup.getNpcName('npc_retention', 'formal')>> jerks the leash and separates the two of you as <<he npc_retention>> scolds <<his npc_retention>> pet in annoyance. "@@.npc_retention;I apologise for my pet — it would seem your own was just too irresistible. I must excuse us to clean up and discipline my animal.@@"<br>
<br>
"@@.npc_manager;See that you do,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states flatly as she moves to stand protectively over you. "@@.npc_manager;In any case, it was so nice catching up off the clock, I suppose I shall be seeing you at the office — when are you not otherwise occupied attending to <<=ps(setup.getNpcName('npc_boss', 'formal'))>> needs, of course. I dare say if <<he npc_boss>> is going to monopolise your time, <<he npc_boss>> really should promote you and green-light a new Director of Employee Retention.@@"
<</if>>
<</if>>
<br><br>
"@@.npc_retention;I'll bring it up next time I speak with <<him npc_boss>>. Until we meet again.@@" <<=setup.getNpcName('npc_retention', 'formal')>> replies with a curt nod before walking away, <<his npc_retention>> pet giving one final glance back at you before its leash is jerked and it hurries along at its <<if $npc_retention.fem>>mistress'<<else>>master's<</if>> heels.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sighs and finishes her drink as you sense her relaxing slightly. "@@.npc_manager;Come along, my dear. We came here tonight to enjoy ourselves, let us put that reminder of work behind us.@@"<br>
<br>
<<include "managerClubDateChoices">>
</div>/*#
#desc: sexclub pony comp prep
#status: RELEASED 0.8.5.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Race Track">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_shoestore_manager","npc_shoestore_pony")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_shoestore_manager","formal")>> to the far side of the club where you find a row of treadmills.<br>
<br>
"@@.npc_shoestore;Since there is not enough room for a proper track we had to... make do.@@" <<=setup.getNpcName("npc_shoestore_manager","formal")>> explains as you and <<=setup.getNpcName("npc_shoestore_assistant","first")>> each step onto one of the treadmills, reins hooked to the machine with additional partial suspension attached to your harnesses for safety.<br>
<br>
"@@.npc_shoestore;Now don't think this means it's going to be easy!@@" She states. "@@.npc_shoestore;These are top of the line treadmills, which means you'll be running a simulated course complete with a couple hundred meters of elevation change. The key to winning is balance and focus — the speed and difficulty goes up over time and if you trip, you lose. Just reaching the end of the course is challenging for most. To make things fair I'll be staying mounted — it's better practice for <<=setup.getNpcName("npc_shoestore_assistant","first")>>, and the added weight should even things up a bit.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> flashes you an encouraging smile as she finishes double checking your harness, and you take a moment to glance at your competition. Even with her handicap she is a picture of athletic power, you take a deep breath before settling in and waiting for the whistle.<br>
<br>
[<<moveTo "event_sexclub_date_manager_horse_2" "Step onto the treadmill." 1800>>]
</div>/*#
#desc: sexclub pony comp race
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.win = (setup.getTotalValue("dexterity") + setup.getTotalValue("heels")) >= 40 && setup.getTotalValue("stamina") >= 20>>
<<if $scene.win>>
<<set $scene.firstWin = $npc_manager.flags.sexclub.shoestore < 3>>
<<if $scene.firstWin>>
<<set $npc_manager.flags.sexclub.shoestore = 3>>
<</if>>
<<applyFatigue 50>>
<<else>>
<<if $npc_manager.flags.sexclub.shoestore < 2>>
<<set $npc_manager.flags.sexclub.shoestore = 2>>
<</if>>
<<applyFatigue 150>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Race Track">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_shoestore_manager","npc_shoestore_pony")>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
Your masterful skill in heels combines with your nimble dexterity and your nigh-limitless endurance for you to <<if $scene.firstWin>>race your heart out<<else>>claim another victory<</if>>.<br>
<br>
Distantly you are aware that a crowd has begun to gather as you and <<=setup.getNpcName("npc_shoestore_assistant","first")>> run proverbially neck and neck up and down the simulated course, hooves pounding against the rubber of the treadmill as you race to the limit... and you cross the simulated finish line a scant handful of seconds ahead of your opponent to roaring cheers.<br>
<br>
What had been a steep final sprint levels and slows as you and <<=setup.getNpcName("npc_shoestore_assistant","first")>> instinctually switch to a high-stepping parade gait, showing off for the crowd as your heart-rate comes down and <<=setup.getNpcName("npc_manager","formal")>> finally helps you down off the treadmill.<br>
<br>
"@@.npc_shoestore;Well!@@" <<=setup.getNpcName("npc_shoestore_manager","formal")>> states, somewhat breathless herself as she comforts her glistening mount. "@@.npc_shoestore;It would seem you've trained up a proper champion — would love to see her out on a real track someday.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, and you swoon with pride as she strokes your head. "@@.npc_manager;Someday, perhaps... for tonight I shall merely thank you for the contest.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> leads you in taking a final bow to the crowd before they start to dissipate and she turns back to the club. "@@.npc_manager;So, what now, my lovely champion?@@"
<<else>>
<<if (setup.getTotalValue("dexterity") + setup.getTotalValue("heels")) >= 40>>
Your consummate practice in heels, combined with your nymph-like dexterity means that you have no trouble keeping balance and pace, instead it is your stamina that proves your undoing.
<<if setup.getTotalValue("stamina") > 15>>
You push hard and fast, but even your extreme cardio isn't a match for <<=setup.getNpcName("npc_shoestore_assistant","first")>> and you fail to have the energy to keep up for the final sprint. You stagger to the finish line, gasping for air.
<<elseif setup.getTotalValue("stamina") > 10>>
By the midpoint of the course you are feeling exhausted, falling steadily further behind your seemingly indefatigable opponent.
<<else>>
Though you reach the end of the course without falling, you are all but dead on your feet, your pace slowed significantly as your opponent raced on ahead.
<</if>>
<<elseif (setup.getTotalValue("dexterity") + setup.getTotalValue("heels")) > 30>>
Running in pony boots on such a challenging course pushes even your skills,
<<if setup.getTotalValue("stamina") > 15>>
your stamina beginning to flag towards the end of the race as your opponent asserts an insurmountable lead.
<<elseif setup.getTotalValue("stamina") > 10>>
as you pant and gasp with each simulated hill, falling steadily behind your opponent as the race wears on.
<<else>>
but before long fatigue kicks in, slowing your pace as you pant around your gag, barely staggering over the finish-line.
<</if>>
<<elseif (setup.getTotalValue("dexterity") + setup.getTotalValue("heels")) > 20>>
You make it perhaps half-way through the course before
<<if setup.getTotalValue("stamina") > 15>>
you stumble, more than ready to push on, if it were not for the challenge of running in the steep, unsteady pony boots.
<<else>>
the exertion catchs up to you and you stumble, the pony-boots just too much for you to manage.
<</if>>
<<else>>
You're barely out the gate when you have your first near-stumble. Pony boots are challenging enough on their own, but trying to keep pace on the treadmill is another level and you barely make it to where the treadmill tips up for the first simulated hill before you lose your balance.
<</if>>
<br><br>
You look around to realise a crowd has gathered, cheering excitedly for the winner as <<=setup.getNpcName("npc_shoestore_assistant","first")>> does a cool-down prancing victory lap to close out her victory.<br>
<br>
"@@.npc_shoestore;Credit for trying,@@" <<=setup.getNpcName("npc_shoestore_manager","formal")>> states in congratulation as she strokes her glistening mount. "@@.npc_shoestore;But it looks like the championship crown remains safe for another evening.@@"<br>
<br>
You feel frustrated at your failure, but <<=setup.getNpcName("npc_manager","formal")>> gives you a comforting pat on the head as she helps detach you from the racing system and leads you to a rest area, stroking you for several minutes before you recover enough to stand on your feet and turn back to the rest of the club.
<</if>>
<br><br>
<<include "managerClubDateChoices">>
</div>/*#
#desc: sexclub play area w/manager and drones
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.comp>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.comp>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_manager","npc_manager_dom_2") "drone" "drone">>
<<else>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.comp>>
You nod and <<=setup.getNpcName("npc_manager","formal")>> grins as<<if $scene.cage != "">> she temporarily frees you from chastity and<</if>> the lead drone hooks you up to the mechanism — straddling a powerful saddle vibrator with
<<if $player.body_ref.penis && $player.body_ref.vagina>>
a lubricated dildo in each hole, and a textured sheath over your <<getWordMyPenis>>.
<<elseif $player.body_ref.penis>>
a lubricated dildo in your rear, and a textured sheath over your <<getWordMyPenis>>.
<<elseif $player.body_ref.vagina>>
a lubricated dildo in each hole.
<<else>>
ERROR: unexpected
<</if>>
<br><br>
Your drone helmet is strapped in place as the "head" drone double checks your and your opponent's restraints before standing before you to lay out the rules.<br>
<br>
"@@.computer;A proper drone should be eternally lusty and insatiable without the inconvenient distraction of orgasm, always ready for more without succumbing to the waste of refractive cycle. Towards this end, this machine will test your bodies — may the best drone win.@@"<br>
<br>
They step away, and the vibrators and dildos begin to move...<br>
<br>
<<if $scene.cage != "">>
[<<moveTo "event_sexclub_date_manager_drone_2" "Screw self control, you're out of chastity, take as many orgasms as you can!" 1800 "<<set $scene.orgasm=true>>">>]<br>
<<else>>
[<<moveTo "event_sexclub_date_manager_drone_2" "Screw self control, enjoy as many orgasms as you can!" 1800 "<<set $scene.orgasm=true>>">>]<br>
<</if>>
<<if setup.getWillpower() > 3>>
[<<moveTo "event_sexclub_date_manager_drone_2" "Focus everything you have on control." 1800 "<<set $scene.orgasm=false>><<spendWillpower 4>><<set $scene.will=3>>">>] <<hint $options "This will greatly tax your willpower">><br>
<<else>>
[@@.link_locked;You do not have the mental energy to summon supreme resistance.@@]<br>
<</if>>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_sexclub_date_manager_drone_2" "Focus on control." 1800 "<<set $scene.orgasm=false>><<spendWillpower 2>><<set $scene.will=2>>">>] <<hint $options "This will moderately tax your willpower">><br>
<<else>>
[@@.link_locked;You lack the mental energy to summon a strong resistance.@@]<br>
<</if>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_sexclub_date_manager_drone_2" "Make some effort to hold back." 1800 "<<set $scene.orgasm=false>><<spendWillpower 1>><<set $scene.will=1>>">>] <<hint $options "This will cost willpower">>
<<else>>
[@@.link_locked;You do not have any willpower to resist the need for release.@@]
<</if>>
<<else>>
You decline the opportunity to compete against a fellow drone and <<=setup.getNpcName("npc_manager","formal")>> leads you on through the play area, finding nothing else of particular interest before the two of you emerge out the other side.<br>
<br>
<<include "managerClubDateChoices">>
<</if>>
</div>/*#
#desc: sexclub play area w/manager and drones
#status: RELEASED 0.8.5.0
#ignore_spell: 194b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.orgasm || !($scene.will == 3 && (setup.getTotalValue("submission") >= 20 || setup.getTotalValue("bimbofication") >= 20))>>
<<playerOrgasm>>
<<set $npc_manager.flags.sexclub.drone_lose = true>>
<<else>>
<<set $npc_manager.flags.sexclub.drone_won = true>>
<</if>>
<<applyFatigue 70>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_manager","npc_manager_dom_2") "drone" "drone">>
<div id="invframe" class="scrolltext">
<<if $scene.orgasm>>
<<if $scene.cage == "">>
From the start
<<else>>
Taking advantage of your brief moment of freedom from chastity,
<</if>>
you surrender any effort at control. Straining against your bonds, biting down on your gag and flexing against your latex covering you are a rubber-wrapped package of rolling orgasm, sweating and squirting and riding the sensation as wave after wave of orgasm washes over you.<br>
<br>
Fucked<<if $player.body_ref.penis>>, stroked,<</if>> and vibrated you're lost in a private world of dronified pleasure... though you do distantly notice your "opponent" succumbing to your influence, and soon the both of your are writhing in parallel until the machines are turned off and you sink in exhaustion, swimming in your own sweat within your latex outfit.<br>
<br>
"@@.computer;ERROR! this is not proper drone behaviour!@@"<br>
<br>
You start to come back to earth, buzzing with post-orgasmic exhaustion as you feel something more than human or drone as <<=setup.getNpcName("npc_manager","formal")>> removes your restraints<<if $scene.cage != "">>, replaces your <<if setup.isCage()>>cage<<else>>chastity belt,<</if>><</if>> and shakes her head in disappointment.<br>
<br>
Helped to your feet you look back as your opponents "re-programming" has already begun — their body writhing in pain as they receive punishment for each orgasm...<br>
<br>
"@@.npc_manager;Well that was a disappointing surrender of control.
<<if $scene.cage == "">>
shakes her head. I know this was meant to be a fun evening... but there are such things as going overboard,
<<else>>
One might think it all a scheme for you to get out of chastity for a few minutes... I know this was meant to be a fun evening... but there are such things as going overboard,
<</if>>
my dear.@@"
<<else>>
<<if $scene.will == 3 && (setup.getTotalValue("submission") >= 20 || setup.getTotalValue("bimbofication") >= 20)>>
<<if setup.getTotalValue("submission") >= 20>>
You muster all of your will and look towards your <<=setup.getNpcName("npc_manager","title")>> for that final bit of strength to resist the pounding pleasure stimulating your drone self.<br>
<br>
<<printThought "Obedience is pleasure unending. This drone exists to serve.">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles down at you in approval as you
<<elseif setup.getTotalValue("bimbofication") >= 20>>
You relax — your are a being of pleasure, unending pleasure. Why bother with orgasm, orgasms are transitory compared to eternal lusts that would overwhelm anything but a perfect drone...<br>
<br>
<<printThought "I am a drone. Drone's exist for pleasure. This drone will not succumb.">><br>
<br>
You
<<else>>
ERROR: unexpected state!
<</if>>
hear a malfunctioning moan from your side — your fellow drone has succumbed to their stimulation.<br>
<br>
Your own stimulation lasts for but a few moments longer before all of the machines come to a stop. You look over, your opponent still writhing in orgasm as <<=setup.getNpcName("npc_manager","formal")>> begins removing your restraints.<br>
<br>
"@@.computer;Drone 5614.194B has failed this test and will be remanded for additional programming, starting now.@@"<br>
<br>
You hear a pained cry from your still-bound opponent as an electric shock puts a stop to their orgasmic writhing.<br>
<br>
"@@.computer;Congratulations on a fine unit, <<=setup.getNpcName("npc_manager","formal")>>.@@" The lead drone adds with a courteous bow.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods as she signals for you to fall in behind her as she leads the way back towards the main club.
<<else>>
<<if $scene.will == 3>>
You focus with everything you have... but mere will is insufficient against the unending stimulation of the machines. The pleasure climbs higher and higher. You try to hold back, drawing on both your training in obedience as well as your ability to sustain lust... but neither proves quite sufficient and, bit by bit,
<<elseif $scene.will == 2>>
You muster your will... but it is not enough. The power of the machines proves too much for the "machine" you strive to be, and
<<elseif $scene.will == 1>>
You try to focus, but not nearly enough. The power of the machines proves too much for the "machine" you strive to be, and
<<else>>
ERROR: unexpected scene.will <<=$scene.will>>
<</if>>
your control gradually slips, until you are moaning through your gag, straining against your bonds as orgasms wrack your body.<br>
<br>
The stimulation stops, leaving you limp in your bonds, sweating profusely within your rubbery prison as you pant through the gag and the victor is announced.<br>
<br>
"@@.computer;A valiant effort, but it would seem additional training is required for this unit.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods, clearly somewhat disappointed as your restraints are removed and you return to your feet.<br>
<br>
"@@.npc_manager;It would appear so... but I shall hardly complain... training you really is such a delight...@@"<br>
<br>
You blush within your drone helmet and follow after as <<=setup.getNpcName("npc_manager","formal")>> leads you away from the play area.
<</if>>
<</if>>
<br><br>
<<include "managerClubDateChoices">>
</div>/*#
#desc: sexclub play area w/manager and futa, start bdsm demo
#status: RELEASED 0.8.5.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 10 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_boyfriend")>>
<div id="invframe" class="scrolltext">
You step up onto the X-frame and <<=setup.getNpcName("npc_manager","formal")>> straps you in place, pulling you tight against the padded frame and finishing off with a whispered. "@@.npc_manager;Make me proud.@@" That makes you melt.<br>
<br>
You glance at your more nervous fellow slave and listen to the sharp click of two sets of dominant heels as <<=setup.getNpcName("npc_manager","formal")>> and <<=setup.getNpcName("npc_futa","formal")>> step away and get into position.<br>
<br>
"@@.npc_manager;Accuracy matters more than power — you want to let the tool work for you, rather than forcing anything,@@" <<=setup.getNpcName("npc_manager","formal")>> explains as she lays a few quick cracks across your back. More a tease than a true punishment, you have no trouble presenting a calm front.<br>
<br>
"@@.npc_manager;Relax your grip a bit, there, that's better, now take a swing — remember you can always increase the intensity, but if you go too hard too fast you can overwhelm the slave prematurely.@@"<br>
<br>
The flogging lesson continues as you slip into sub-space, obediently absorbing each of your <<=ps(setup.getNpcName("npc_manager","title"))>> blows as you set an example for your fellow slave.<br>
<br>
[<<moveTo "event_sexclub_date_manager_slave_2" "Continue." 600>>]
</div>/*#
#desc: sexclub play area w/manager and futa, finish bdsm demo
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 10 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_boyfriend")>>
<div id="invframe" class="scrolltext">
The flogging continues as <<=setup.getNpcName("npc_manager","formal")>> explains how to adapt techniques to dragon tongue and single tail, the crack of leather on flesh drawing quite the crowd before <<=setup.getNpcName("npc_futa","first")>> decides her <<boy>>friend has had enough.<br>
<br>
You catch your breath as she thanks your <<=setup.getNpcName("npc_manager","title")>> for the lesson, and then <<=ps(setup.getNpcName("npc_manager","formal"))>> strong hands are unbuckling your restraints and helping you down to the floor. You look around as the small crowd greets you with scattered applause, your chains jingling slightly as <<=setup.getNpcName("npc_manager","formal")>> re-attaches your leash and leads you back to the club.<br>
<br>
<<include "managerClubDateChoices">>
</div>/*#
#desc: sexclub finish w/manager
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.outfit>>
<<case 'pup_pink'>>
<<set $npc_manager.flags.sexclub.pup += 1>>
<<removeItemSet 'puppy_pink_copy'>>
<<deleteItemSet 'puppy_pink_copy'>>
<<removeItem 'dog_leash' true>>
<<deleteItem 'dog_leash'>>
<<case 'pup_black'>>
<<set $npc_manager.flags.sexclub.pup += 1>>
<<removeItemSet 'puppy_black_copy'>>
<<deleteItemSet 'puppy_black_copy'>>
<<removeItem 'dog_leash' true>>
<<deleteItem 'dog_leash'>>
<<case 'pony'>>
<<set $npc_manager.flags.sexclub.pony += 1>>
<<removeItem 'catsuit_latex_black' true>>
<<if !$scene.ownedCatsuit>>
<<deleteItem 'catsuit_latex_black'>>
<</if>>
<<removeItemSet 'pony_girl'>>
<<deleteItemSet 'pony_girl'>>
<<removeItem 'pony_plug' true>>
<<deleteItem 'pony_plug'>>
<<removeItem "armbinder_black" true>>
<<deleteItem "armbinder_black">>
<<case 'drone_pink'>>
<<set $npc_manager.flags.sexclub.drone += 1>>
<<removeItemSet 'drone_pink'>>
<<deleteItemSet 'drone_pink'>>
<<case 'drone_black'>>
<<set $npc_manager.flags.sexclub.drone += 1>>
<<removeItemSet 'drone_black'>>
<<deleteItemSet 'drone_black'>>
<<case 'slave'>>
<<set $npc_manager.flags.sexclub.slave += 1>>
<<removeItem 'slave_chains' true>>
<<deleteItem 'slave_chains'>>
<</switch>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<div id="invframe" class="scrolltext">
You enjoy the rest of your evening spent with <<=setup.getNpcName("npc_manager","formal")>>, but eventually she leads you towards the exit.<br>
<br>
<<switch $scene.outfit>>
<<case 'pup_pink' 'pup_black'>>
"@@.npc_manager;You have been a very good girl this evening... but we do have work in the morning, and I would be a poor owner indeed if I did not make sure you were home in time for a good night's sleep!@@"<br>
<br>
You nuzzle up against her leg and blink up in silent request to go home with her but, after a scratch behind the ear
<<case 'pony'>>
"@@.npc_manager;You have been a very good pony this evening... but we do have work in the morning, and I would be a poor rider indeed if I did not make sure you were home in time for a good night's sleep!@@"<br>
<br>
You bob your head and blink in silent request to go home with her but, after a gentle caress of your cheek,
<<case 'drone_pink' 'drone_black'>>
"@@.npc_manager;You have been a <<if $scene.orgasm>>well... let us say amusingly lusty<<else>>very good<</if>> drone this evening... but we do have work in the morning, and I would be a poor controller indeed if I did not make sure you were home in time for a good night's sleep!@@"<br>
<br>
You tilt your head in silent request to go home with her but, after a gentle caress of your smooth helmet,
<<case 'slave'>>
"@@.npc_manager;You have been a very good slave this evening... but we do have work in the morning, and I would be a poor Mistress indeed if I did not make sure you were home in time for a good night's sleep!@@"<br>
<br>
You tilt your head in silent request to go home with her but, after a gentle caress of your face,
<<default>>
ERROR: unexpected scene.outfit <<=$scene.outfit>>
<</switch>>
she shakes her head.<br>
<br>
"@@.npc_manager;Not tonight, my dear. Come along, let us get you home.@@"<br>
<br>
By the time you emerge from the club a vehicle is already waiting, <<=setup.getNpcName("npc_manager","formal")>> spending the ride home helping you change, and then just holding you in her arms as you reset from
<<switch $scene.outfit>>
<<case 'pup_pink' 'pup_black'>>
puppy
<<case 'pony'>>
pony
<<case 'drone_pink' 'drone_black'>>
drone
<<case 'slave'>>
slave
<<default>>
ERROR: unexpected scene.outfit <<=$scene.outfit>>
<</switch>>
head-space...<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: enthusiast 9001 request
#status: FINISHED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You implore <<=setup.getNpcName("npc_manager","formal")>> if there is any possibility of a more secure chastity arrangement than the one you currently enjoy?<br>
<br>
<<if $player.sec_style.submission.permanent_key == "">>
"@@.npc_manager;More secure? <<if $npc_manager.flags.trustplayerwithkey>>When you still retain key privileges<<if !$npc_manager.flags.trustplayerwithkey>>, even if your behaviour leaves such merely theoretical<</if>>?<<else>>Perhaps if you first proved yourself by surrendering even the possibility of being in control of your key.<</if>> Consider doing something about that situation before you come to me begging for something beyond the state-of-the-art device you are currently wearing.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> thinks for a moment. "@@.npc_manager;Well... there is one device. Currently experimental, but I suppose I could authorise it if you truly believe your current situation is insufficient.<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>> Oh... and I suppose this would mean prematurely ending, and thus failing, that little chastity trial of yours...<</if>>@@"<br>
<br>
[<<moveTo "event_enthusiast_sissyomatic_2" 'Yes, please!' 60 "<<set $scene.chastity=true>>">>]<br>
[<<moveTo "event_enthusiast_sissyomatic_2" 'Maybe not...' 60 "<<set $scene.chastity=false>>">>]<br>
<</if>>
</div>/*#
#desc: enthusiast 9001
#status: FINISHED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
<<completeTask 'task_chastity_trial' $now false>>
<</if>>
<<if $scene.chastity>>
<<set $player.sec_style.submission.sissyomatic = "enthusiast">>
<</if>>
<<include "sissyomaticUnlocks">>
<<include "setLastSeenCage">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.chastity>>
You nod hurriedly and confirm that, as wonderfully advanced as your current device may be, if there is something better you want to feel it locked <<if setup.isCage()>>onto you<<else>>around your waist<</if>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> seems almost amused by your breathless enthusiasm as she rises to her feet. "@@.npc_manager;Very well... if you would please strip we can get you upgraded. But please... do it slow.@@"<br>
<br>
Fingers trembling, you reach for your clothes and begin to do as she asks.<br>
<br>
[<<moveTo "event_manager_theme_sissyomatic_3" "Strip." 180>>]
<<else>>
The serious note in <<=ps(setup.getNpcName("npc_manager","formal"))>> tone makes you hesitate, and you reply that you will try to get by with your current ultra-advanced chastity device.<br>
<br>
"@@.npc_manager;Very good. After all — chastity begins in the mind, build your cage of orgasm-controlled obedience there and the physical device is just a bonus fashion accessory.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: talk to manager about another keyholder
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.require_chastity>>
You ask <<=setup.getNpcName("npc_manager","formal")>> if it might be possible for someone else to be your keyholder.<br>
<br>
She stares at you for a long minute, her expression utterly unreadable. "@@.npc_manager;So you're saying you don't trust me, is that it?@@"<br>
<br>
You start to object, the need to explain yourself almost overwhelming you, only for her face to break into a smile as she chuckles. "@@.npc_manager;Oh, you are just too easy sometimes!@@"<br>
<br>
You realise she was just teasing you and you blush, which only makes her smile wider.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<if $npc_manager.flags.trustplayerwithkey>>
"@@.npc_manager;Adorable. As to the question at hand... yes. I would retain primary control but I could see delegating a copy to someone else. It would, of course, have to be the right person. Who did you have in mind?@@"
<<else>>
"@@.npc_manager;Hmm... yes, I believe that could be workable. I would remain in primary control, of course, but I could see sharing a copy with the correct person, naturally. Who did you have in mind?@@"
<</if>>
<br><br>
<<if $npc_technician.relationship.relationship_stage >= 1>>
[<<moveTo "theme_manager_discuss_other_keyholder_2_technician" 'Your girlfriend, <<=setup.getNpcName("npc_technician","first")>>.' 60 "<<set $scene.character='npc_technician'>>">>]<br>
<</if>>
<<if $npc_admin.flags.relationship == 'boyfriend' && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>>
[<<moveTo "theme_manager_discuss_other_keyholder_2_admin" 'Your best friend and <<boy npc_admin>>friend, <<=setup.getNpcName("npc_admin","first")>>.' 60 "<<set $scene.character='npc_admin'>>">>]<br>
<</if>>
<<if $npc_landlord.stage >= 2>>
[<<moveTo "theme_manager_discuss_other_keyholder_2_landlord" 'Your <<boy npc_landlord>>friend, and <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, <<=setup.getNpcName("npc_landlord","first")>>.' 60 "<<set $scene.character='npc_landlord'>>">>]<br>
<</if>>
[<<moveTo "theme_manager_discuss_other_keyholder_2_none" "You can't think of anyone." 60 "<<set $scene.character='none'>>">>]
<<else>>
She shakes her head. "@@.npc_manager;Given your overall behaviour... no, I do not believe I could trust someone else with such responsibility when your training is already in such a... fragile state.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
You consider asking <<=setup.getNpcName("npc_manager","formal")>> about having someone else as a keyholder, but then catch yourself. Since she isn't your keyholder<<if !setup.checkItemTypeWorn("cage")>>, and you aren't even in chastity,<</if>> the entire line of questioning doesn't even make sense.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: ask manager about admin becoming keyholder
#status: RELEASED 0.8.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.alreadyKeyholder = $npc_admin.flags.keyholder>>
<<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>>
<<set $npc_admin.flags.keyholder = true>>
<<include "adminCollarChecker">>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil >= 4) && !$scene.alreadyKeyholder>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if <<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>><<if $npc_admin.flags.relationship == "boyfriend">>your <<boy npc_admin>>friend,<<else>>your friend<</if>>, <</if>><<=setup.getNpcName('npc_admin', 'first')>> could be your keyholder?<br>
<br>
<<if $scene.alreadyKeyholder>>
"@@.npc_manager;You are a very forgetful girl, <<he npc_admin>> already is! Though I suppose if you have forgotten that fact it means that <<he npc_admin>> has been keeping you locked, very good.@@"
<<elseif $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
"@@.npc_manager;<<=setup.getNpcName('npc_admin', 'formal')>>? No... I do not think that would be a good idea.@@"<br>
<br>
You consider <<=ps(setup.getNpcName("npc_admin","first"))>> current state... and have to agree.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> thinks for a moment and then nods. "@@.npc_manager;Yes, I believe <<he npc_admin>> has proven <<him npc_admin>>self trustworthy for that sort of responsibility, let me summon <<him npc_admin>>.@@"<br>
<br>
Barely a minute passes before <<=setup.getNpcName('npc_admin', 'first')>> appears. "@@.npc_admin;Hey, <<callPlayer "npc_admin">>, <<=setup.getNpcName('npc_manager', 'first')>>! What can I do for you two lovely ladies?@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Miss <<=$player.last_name>> was just asking me about the possibility of you becoming one of her keyholders... I presume the two of you have spoken of it before, you believe you are ready for that responsibility?@@"<br>
<br>
You smile nervously at <<=setup.getNpcName('npc_admin', 'first')>> and <<he npc_admin>> nods, "@@.npc_admin;Of course! I brought it up before but she said no... guess she changed her mind?@@"<br>
<br>
"@@.npc_manager;Indeed. Well, I am ready to grant you that privilege, but there are two important ground rules — First: this is only for your personal time. At work Miss <<=$player.last_name>> MUST remain locked. Second, well... she should only ever be released for short periods, when you desire it. Her time in chastity has worked such a wonderful effect on her demeanour and perspective and we would not wish to damage that with uncouth, excessive freedom. Will you be able to follow such?@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> nods, "@@.npc_admin;Yeah... I can do that — the last thing I want to do is get her in trouble!@@"<br>
<br>
"@@.npc_manager;Wonderful.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states as she hands <<him npc_admin>> a key. "@@.npc_manager;Well I imagine you have work to get to — and planning to make for how you will manage this new responsibility. Good luck! To the both of you — adding keyholding to a relationship, well... it is such a powerful thing.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> nods, nervously fingering the key for a moment before giving you a kiss goodbye and leaving the office.<br>
<br>
"@@.npc_manager;So,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a smile. "@@.npc_manager;Was there anything else you wished to speak on?@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: talk to manager about specific other keyholder - landlord
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.schedule = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You state that you would like it if <<=setup.getNpcName("npc_landlord","first")>> could be your keyholder. You tell <<=setup.getNpcName("npc_manager","formal")>> a little about <<him npc_landlord>> but she frowns. "@@.npc_manager;I'm sorry but, for liability reasons, I do not think I can trust someone who is not an employee of Social Interaction Service Syndicate Inc.@@"<br>
<br>
<<if $scene.character != 'none' && $scene.schedule>>
"@@.npc_manager;Wonderful. Well I shall let you contact your friend and get everything scheduled. Have a lovely evening!@@"<br>
<br>
[<<moveTo "theme_manager_discuss_other_keyholder_3" "Confirm." 60>>]
<<else>>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<</if>>
</div>/*#
#desc: talk to manager about specific other keyholder
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.schedule = false>>
<<if !$npc_technician.relationship.keyholder && (!(State.hasPlayed("event_dom_training_technician_1_peer_1") || State.hasPlayed("event_dom_training_technician_1_hierarchy_1")) || $npc_technician.relationship.her_role == "dom")>>
<<set $scene.schedule = true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 8, 0, false)>>
<<addWorkEvent 'event_technician_key_request' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You state that you would like your girlfriend, <<=setup.getNpcName("npc_technician","other")>> to be your keyholder.
<<if $npc_technician.relationship.keyholder>>
"@@.npc_manager;You are a very forgetful girl, she already is! Though I suppose if you have forgotten that fact it means that she has been keeping you locked... good on her!@@"
<<elseif $npc_technician.flags.evil == 1>>
"@@.npc_manager;<<=setup.getNpcName('npc_admin', 'formal')>>? No... I do not think that would be a good idea.@@"<br>
<br>
You consider <<=ps(setup.getNpcName("npc_admin","first"))>> current state... and have to agree.
<<elseif State.hasPlayed("event_technician_dom_lesson_1_1")>>
"@@.npc_manager;Ah, yes, I presume my lessons are paying off, then?@@"<br>
<br>
You nod,and thank <<=setup.getNpcName("npc_manager","formal")>> for teaching <<=setup.getNpcName("npc_technician","formal")>> how to better dominate you.
<<elseif State.hasPlayed("event_dom_training_technician_1_peer_1") || State.hasPlayed("event_dom_training_technician_1_hierarchy_1")>>
"@@.npc_manager;<<=setup.getNpcName("npc_technician","first")>>? Is she not your slave? That would be quite inappropriate! You could just order her to unlock you! And then where would your security be?@@"<br>
<br>
<<if $npc_technician.relationship.her_role == "dom">>
You explain that, though you had flirted with dominance, you have come to realise that you are much better off with <<=setup.getNpcName("npc_technician","formal")>> taking the reins.
<<else>>
You apologise and agree that it would not be proper for your key to be in the possession of a non-dominant.
<</if>>
<<elseif $npc_technician.flags.fixed_manager_computer >= 1>>
"@@.npc_manager;<<=setup.getNpcName("npc_technician","first")>>... you mean that nice girl from your old company who helped fix my computer? Hmm, she seemed like a clever lass, but I would need to meet her in person to make sure she has the temperament for it. Keyholding is a solemn responsibility and one that requires a steady, controlling hand. Schedule a meeting for next Monday afternoon for her to come by. That should give her time to prepare for her assessment — I cannot be handing out your key to just anyone, after all! You are far too precious for that!@@"<br>
<br>
You thank her for the consideration and promise to make arrangements in her schedule.
<<else>>
"@@.npc_manager;I hope you meant to say <<=setup.getNpcName("npc_technician","Mistress")>>, or such, I cannot be handing out keys to anyone but a fellow dominant, you understand. Tell her to come by next week, let us say Monday afternoon? That should give her time to prepare for her assessment — I cannot be handing out your key to just anyone, after all. You are far too precious for that!@@"<br>
<br>
You thank her for the consideration and promise to make arrangements in her schedule.
<</if>>
<br><br>
<<if $scene.character != 'none' && $scene.schedule>>
"@@.npc_manager;Wonderful. Well I shall let you contact your friend and get everything scheduled. Have a lovely evening!@@"<br>
<br>
[<<moveTo "theme_manager_discuss_other_keyholder_3" "Confirm." 60>>]
<<else>>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<</if>>
</div>/*#
#desc: talk to manager about specific other keyholder - none
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.schedule = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You think for a moment and realise that you don't actually have anyone that close to you for something like that.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles and shakes her head. "@@.npc_manager;Well, it is quite a responsibility, but if you find someone... well, we can talk then.@@"<br>
<br>
<<if $scene.character != 'none' && $scene.schedule>>
"@@.npc_manager;Wonderful. Well I shall let you contact your friend and get everything scheduled. Have a lovely evening!@@"<br>
<br>
[<<moveTo "theme_manager_discuss_other_keyholder_3" "Confirm." 60>>]
<<else>>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<</if>>
</div>/*#
#desc: call to schedule keyholder event
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.character>>
<<case 'npc_technician'>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_keyholder'
5
'theme_technician_discuss_keyholder_1'
true
>>
<</switch>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You leave the office and pull out your phone, making a quick call to
<<switch $scene.character>>
<<case 'npc_technician'>>
<<=setup.getNpcName("npc_technician","formal")>> to confirm things for Monday afternoon.<br>
<br>
"@@.npc_technician;Oh, wow... okay, we're definitely going to have to do some preparation for this after game Saturday. Oh, I'm so excited!@@"<br>
<br>
You say you're looking forward to it and leave off with a "@@.pc;Yes, <<=setup.getNpcName("npc_technician","formal")>>@@" before she hangs up.
<<case 'npc_admin'>>
<<=setup.getNpcName("npc_admin","formal")>> to confirm things for Monday afternoon.<br>
<br>
"@@.npc_admin;Whatever you say <<callPlayer "npc_admin">>... er, I mean. Well done, slave. I'll be there.@@"<br>
<br>
You suppress a laugh and reply "@@.pc;Yes, <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>>@@" before <<he npc_admin>> hangs up.
<</switch>>
<br><br>
[<<moveTo "room_office_after_work" "Put your phone away." 60>>]
</div>/*#
#desc: manager home visit, talk about data crystal
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the data crystal you found at the after-work party.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;Yes, I reviewed the information... quite an impressive fake, as those things go. You did well intercepting things, and I have taken... measures to ensure that records that would disprove such are backed up and in a verifiable state. As to the instigators, well... you are quite familiar with <<=setup.getNpcName('npc_rival', 'formal')>> by this point. <<He npc_rival>> has previously been an annoyance, but now? Well, I would not call <<him npc_rival>> a threat, but <<he npc_rival>> has risen to be someone who will need to be dealt with. Not now, the time is not yet right... but sometime in the future I may be calling on you to aid in resolving <<his npc_rival>> presence.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, give her crystal
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.flags.data_crystal.manager>>
<<if $scene.first>>
<<deleteItem 'party_data_crystal'>>
<<set $player.flags.data_crystal.manager = true>>
<<addEmail $computer
'-REDACTED-'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_manager_data_crystal_01_h'
'mail_manager_data_crystal_01_t'
'{"name":"contents.rar","type":"event","data":{"event":"attachment_data_crystal_contents"}}'
>>
<<set _themeId = setup.findThemeId('npc_manager', 'work','theme_manager_bonus_give_crystal', 'privatethemes')>>
<<set $npc_manager.privatethemes.work[_themeId].repeatable = false>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_data_crystal' 0 'event_manager_theme_private_data_crystal' false 'privatethemes'>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You offer her the data crystal you found at the after-work party, explaining the somewhat curious occurrence by which you obtained it.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement at your tale. "@@.npc_manager;Interesting... you really ought to have told me the night of, though I suppose you were just being careful.@@" You hand her the crystal and she peers at it for a moment. "@@.npc_manager;Hmm, fairly standard device used for certain sensitive data transfers. Encrypted, though, if it is from the company, I should be able to handle that.@@" She pockets the crystal and nods. "@@.npc_manager;Thank you. I shall inform you of my findings once I have gained access to the data within.@@"
<<else>>
You are about to offer her the data crystal you found... and then you remember that you already gave it to her. She raises an eyebrow, waiting for you to say something.
<</if>>
<br><br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, about you
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> the truth about how you came into her employ.<br>
<br>
She smiles awkwardly. "@@.npc_manager;Concluded that whole test data loss seemed a bit fishy, hmm? Well, you would be right. You were to be a test of some of <<=ps(setup.getNpcName('npc_boss', 'formal'))>> new programs. As well as, in a way, the limits of my loyalty. The company has long had a... unique method of handling employees, but before it was more judicious — subordinates were that way because they wanted to be, because they NEEDED to be, and we managers, well, we acted according to that trust, with the result being truly astounding productivity, compared to industry competitors. <<=setup.getNpcName('npc_boss', 'formal')>> though... <<he npc_boss>> could not stand the difficulty involved in finding proper candidates for such programs, <<he npc_boss>> dreamed of unlocking the same productivity and total obedience for ANY employee... you, well... I confess I do not know precisely why you were chosen, only that you were. And I? I was tasked with breaking you and molding you into the perfect employee <<=setup.getNpcName('npc_boss', 'formal')>> envisioned.@@"<br>
<br>
She shakes her head. "@@.npc_manager;I will not deny that my own preferences were somewhat in alignment with such things... but I will also insist that some of my initial harshness was not precisely my preference. The fact that you took to things as well as you did, well... that is what warmed you to me, but my motivations early on were far from pure. As to why... that is a different subject, entirely.@@"<br>
<br>
<<if $npc_barkeeper.flags.prostitution.final.nintendolls>>
You tell her that, actually, your selection was basically random; the result of a wager between <<=setup.getNpcName('npc_boss', 'formal')>> and <<=setup.getNpcName('npc_nintendolls', 'formal')>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> does not even look surprised, merely shaking her head and taking another sip of wine. "@@.npc_manager;You see the sort of people we are dealing with... still, for my part in things, I do express my apologies, for what little that may be worth, given that this is all far from over.@@"<br>
<br>
<</if>>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, about npc_boss
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> her real thoughts about <<=setup.getNpcName('npc_boss', 'formal')>> and her gaze narrows.<br>
<br>
"@@.npc_manager;That <<man npc_boss>> is a destructive force of evil, and <<he npc_boss>> is only getting started. <<He npc_boss>> must be stopped, not just for what <<he npc_boss>> has already done, but because, if <<he npc_boss>> is not, more than just the company, but likely the whole world is at risk. Before <<his npc_boss>> rule the company was a bit... kinky, I will not deny that. It was one of our strengths, actually... but <<he npc_boss>> perverted it, putting all concern with consent aside in favour of the unbridled sociopathic excess of the capitalistic machine, and then some. I have been doing what I can to stall and delay <<his npc_boss>> plans, but there is no getting around it — <<he npc_boss>> must be stopped, and you, my dear... well, I believe you may be the key to it all.@@" She smiles ruefully. "@@.npc_manager;Like all such hyper-narcissistic <<if $npc_boss.fem>>people<<else>>men<</if>>, <<=setup.getNpcName('npc_boss', 'formal')>> suffers from the flaw of hubris. <<He npc_boss>> fears me, and thus is wary... but you? You are the secret weapon that will bring <<him npc_boss>> down.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, about npc_work_doctor
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> what is <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> deal?<br>
<br>
She shakes her head. "@@.npc_manager;A mad <<man npc_work_doctor>> given free reign to probe the limits of said madness. <<He npc_work_doctor>> started out working for the government, but even they were a bit dubious as to <<his npc_work_doctor>> goals, and once the war was over? Well... <<hes npc_work_doctor>> the sort that gets quietly shown the door. Unfortunately for everyone else <<=setup.getNpcName('npc_boss', 'formal')>> saw use for the <<=ps(setup.getNpcName('npc_work_doctor', 'title'))>> so-called "brilliance" — why merely train slaves when you can brew them as well?@@" She sighs. "@@.npc_manager;I cannot argue that <<his npc_work_doctor>> drugs work... for a certain definition of work, but it is so clumsy, without art or compassion...
<<if setup.hasTmpEffect("sissypill_mk2") || setup.hasTmpEffect("sissypill_mk2_od") || setup.hasTmpEffect("super_mk2") || setup.hasTmpEffect("sissypill_2_eternal")>>
I apologise for exposing you to them... but I had little choice in the matter. That things would escalate to <<his npc_work_doctor>> more extreme offerings... I suppose that was their plan all along. I am merely grateful that you appear to have proven resilient enough to push on, despite such hindrance.
<<elseif setup.hasTmpEffect("sissypill_mk1") || setup.hasTmpEffect("sissypill_mk1_od") || setup.hasTmpEffect("sissypill_eternal")>>
I apologise for exposing you to them... but I had little choice in the matter, though at least you were able to resist the allure and confine yourself to <<his npc_work_doctor>> more mundane offerings.
<<elseif setup.hasTmpEffect("sissypill_mk3") || setup.hasTmpEffect("sissypill_3_eternal") || setup.hasTmpEffect("sissypill_pure") || setup.hasTmpEffect("sissypill_pure_eternal")>>
I apologise for exposing you to them... but I had little choice in the matter, though, from the look of things I believe you have surpassed <<his npc_work_doctor>> more mundane offerings.
<<elseif State.hasPlayed("room_use_sissy_pill_cure")>>
I apologise for my part in exposing you to such things... though it seems you have outsmarted the creator, hmm?
<<else>>
I am just glad you were able to resist the allure of <<his npc_work_doctor>> offerings, and I apologise for my role in tempting you... it was not by choice.
<</if>>
I only hope we can put that genie back in the bottle once <<he npc_work_doctor>> and <<his npc_work_doctor>> patron are dealt with... unfortunately I fear the company's competitors will only be inspired to push things further. After all... there is a market for such things.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, about psychiatrist
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_ceo' 0 'event_manager_theme_private_ceo' false 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_psych_makeup' 0 'theme_manager_private_psychiatrist_manager_1' false 'privatethemes'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about <<=setup.getNpcName('npc_psychiatrist', 'formal')>>...<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head. "@@.npc_manager;An interesting situation. We were friends, once... but first her girlfriend and I clashed, and then that same girlfriend went looking for <<if $options.fem>><<=setup.getNpcName('npc_ceo', 'formal')>><<else>><<=setup.getNpcName('npc_ceo', 'Mr.')>><</if>>, <<=ps(setup.getNpcName('npc_boss', 'formal'))>> predecessor and, well...@@" She takes another sip of wine. "@@.npc_manager;You would have to speak to <<=setup.getNpcName('npc_psychiatrist', 'first')>> for the details, but suffice it to say, her "independent" situation is more a convenient ruse to be used by <<=setup.getNpcName('npc_boss', 'formal')>>... I suppose, in a way, I feel sorry for her. It must be quite lonely and isolating, to say nothing of her life's passion being twisted to evil.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, about psychiatrist
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> who is <<if $options.fem>><<=setup.getNpcName('npc_ceo', 'Ms.')>><<else>><<=setup.getNpcName('npc_ceo', 'Mr.')>><</if>>?<br>
<br>
"@@.npc_manager;The CEO before <<=setup.getNpcName('npc_boss', 'formal')>>. Brilliant business<<man>>, raised the company up from practically nothing to a multi-national juggernaut. And then one day... <<he>> disappears. I am certain <<=setup.getNpcName('npc_boss', 'formal')>> has a hand in it, as <<he npc_boss>> was quite quick to consolidate power and step in afterwards, but the only person I know who has tried to track down the old <<man>>, well... you have met <<=setup.getNpcName('npc_barista', 'first')>>...@@"<br>
<br>
"@@.npc_manager;The only thing I am relatively certain of is that <<he>> is still alive, which means <<he>> legally still owns a controlling share of the company. I can only surmise that such an arrangement suits <<=setup.getNpcName('npc_boss', 'formal')>> in some manner, or perhaps <<=setup.getNpcName('npc_boss', 'formal')>> fears some sort of revenge from beyond the grave? Either way, <<if $options.fem>><<=setup.getNpcName('npc_ceo', 'Ms.')>><<else>><<=setup.getNpcName('npc_ceo', 'Mr.')>><</if>> hasn't been seen for years. I wonder if <<he>> realised just how ambitious <<=setup.getNpcName('npc_boss', 'formal')>> was, did <<he>> get out-played, betrayed? Whatever it is, <<=setup.getNpcName('npc_boss', 'formal')>> definitely seems to have come out on top.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, about her plans
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> what her plans are and she replies with but a single word. "@@.npc_manager_dom;DOOM.@@"<br>
<br>
The fire in her eye, and the edge in her voice causes you to hold your breath for a moment. On top of everything else, such succinctness on her part is unnerving in its own way.<br>
<br>
The moment passes and her expression softens as she continues. "@@.npc_manager;Sorry... I suppose you have earned a bit more detail. As I am sure you have surmised by now, <<=setup.getNpcName('npc_boss', 'formal')>> has to go. I have slowed <<him npc_boss>> down as much as I could, but with the power <<he npc_boss>> will gain through the Nintendolls merger, to say nothing of the daily risk that <<=setup.getNpcName('npc_work_doctor', 'formal')>> might stumble on to who knows what... no, things have to be torn down, but this is the sort of thing where you only get one shot, and we cannot miss.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, about npc_secretary
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about your predecessor, <<=setup.getNpcName('npc_secretary', 'formal')>>.<br>
<br>
For possibly the first time ever, <<=setup.getNpcName('npc_manager', 'formal')>> seems... hesitant. "@@.npc_manager;Where to begin... as you may have guessed, I trained her in much the same way as I did you... the difference was in how it began. You see, she knew from the start what she wanted to be. It had been part of the interview, after all, so we were more... partners in her advancement. Also like yourself, I came to develop feelings for her, feelings she reciprocated. And then came along <<=setup.getNpcName('npc_boss', 'formal')>>.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> sighs and takes a drink of wine, as if fortifying herself to continue. "@@.npc_manager;<<=setup.getNpcName('npc_boss', 'formal')>> was in the process of consolidating <<his npc_boss>> power and directing the company along <<his npc_boss>> new vision. <<He npc_boss>> rightly saw me as an obstacle to that plan, and so <<he npc_boss>> took measures. I arrived to work one morning to discover my beloved assistant had been "promoted" — the fact that her new position would be working directly for <<=setup.getNpcName('npc_boss', 'formal')>> spoke <<his npc_boss>> message loud and clear. If I opposed <<him npc_boss>> too much, <<=setup.getNpcName('npc_secretary', 'formal')>> would bear the consequences for my actions.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, about npc_secretary
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about what happened to your friend, <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
She sighs, looking genuinely sorrowful. "@@.npc_manager;I understand if you do not believe me... but I am sorry for what happened to <<=setup.getNpcName('npc_admin', 'formal')>>, from everything I saw of <<him npc_admin>>, <<he npc_admin>> was a good <<man npc_admin>>. Unfortunately, once <<he npc_admin>> attacked me, well... we were both being watched, and were each stuck playing a part...@@" She shakes her head and finishes her glass, which you reflexively refill, she sighs softly, and with a hint of embarrassment.<br>
<br>
<<if $npc_admin.flags.evil == 1>>
"@@.npc_manager;I can tell you that <<he npc_admin>> is alive... though the state that <<hes npc_admin>> in.@@" She shakes her head again.
<<else>>
"@@.npc_manager;As to what <<he npc_admin>> is now... the speed at which they turned <<him npc_admin>> is certainly scary, though it means that the real <<him npc_admin>> yet exists, and could be brought back, with the proper techniques.@@" She shakes her head again.
<</if>>
"@@.npc_manager;Once <<=setup.getNpcName('npc_boss', 'formal')>> is dealt with I promise I will do everything in my power to undo what is happening to <<him npc_admin>>... but so long as <<=setup.getNpcName('npc_boss', 'formal')>> and <<=setup.getNpcName('npc_work_doctor', 'formal')>> are pulling the strings I have neither the means, nor the opportunity.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div><<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_you' 0 'event_manager_theme_private_you' false 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_boss' 0 'event_manager_theme_private_boss' false 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_work_doctor' 0 'event_manager_theme_private_work_doctor' false 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_psychiatrist' 0 'event_manager_theme_private_psychiatrist' false 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_plans' 0 'event_manager_theme_private_plans' false 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_predecessor' 0 'event_manager_theme_private_predecessor' false 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_ai' 0 'event_manager_theme_private_ai' true 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_barista' 0 'event_manager_theme_private_barista' true 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_bonus_pregnant' 0 'event_manager_theme_private_pregnant_1' true 'privatethemes'>>/*#
#desc: manager home visit, about sex club owner
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about <<=setup.getNpcName('npc_sex_club', 'formal')>> and their obvious past.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, seemingly first focusing on setting you at ease. "@@.npc_manager;A business relationship. Certainly <<=setup.getNpcName('npc_sex_club', 'formal')>> is a decent sort — perhaps too decent for <<his npc_sex_club>> own good, but our interactions have only ever been professional. You see, in the past... well, you can imagine that in the course of running <<his npc_sex_club>> establishment that <<he npc_sex_club>> would come across potential recruits for this somewhat unique company. A relationship that was quite productive for all involved — <<his npc_sex_club>> clientele got new job opportunities, we had a source of enthusiastic employees, and we would throw <<him npc_sex_club>> the standard finders fee for anyone who managed to make it through interviews and get a job. Of course... that was before <<=setup.getNpcName('npc_boss', 'formal')>> decided to up recruitment...@@"<br>
<br>
You can see where this is headed, but you sit quietly as <<=setup.getNpcName('npc_manager', 'formal')>> explains. "@@.npc_manager;<<=setup.getNpcName('npc_boss', 'formal')>> wanted more recruits, and <<he npc_boss>> didn't care where they came from, believing <<his npc_boss>> new "processes" would handle things better than judicious screening for qualified candidates. <<=setup.getNpcName('npc_sex_club', 'formal')>> disagreed. In <<his npc_sex_club>> mind BDSM is to be enjoyed, never forced... and when <<he npc_sex_club>> refused to provide what <<=setup.getNpcName('npc_boss', 'formal')>> wanted our illustrious CEO unleashed <<his npc_boss>> "friends" at city hall on <<=setup.getNpcName('npc_sex_club', 'formal')>>. That swiftly led to the club's closure under mountains of red-tape. I do not know the details... but it would seem that the two<<if $npc_boss.fem == $npc_sex_club.fem>> <<men npc_boss>><</if>> have since made an alternate arrangement. One that <<=setup.getNpcName('npc_boss', 'formal')>> finds useful, without violating <<=ps(setup.getNpcName('npc_sex_club', 'formal'))>> own ethical lines. You would have to speak with <<=setup.getNpcName('npc_sex_club', 'formal')>> to learn more — I have enough attention at present without disturbing old business.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, talk about ai
#status: FINISHED 0.8.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You bring up <<=setup.getNpcName('npc_ai', 'first')>>, the mysterious AI you met<<if $npc_ai>> on your first day at work <</if>><<if $npc_ai.stage >= 2>>and the work you have done for her since<</if>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> raises an eyebrow. "@@.npc_manager;Well, well... <<=ps(setup.getNpcName('npc_ai_human', 'formal'))>> creation lives on.@@"
<<else>>
You bring up <<=setup.getNpcName('npc_ai', 'first')>> once again.<br>
<br>
"@@.npc_manager;And how are things with your digital ally?@@"
<</if>>
<br><br>
<<include "managerPrivateAI">>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div><<if $npc_ai.stage < 3 && !State.hasPlayed("event_manager_theme_private_ai_connect") && !State.hasPlayed("event_ai_mission_robot_body_intro_4") && !State.hasPlayed("event_nurse_doctor_ai_first_3")>>
You reply that <<=setup.getNpcName("npc_ai", "first")>> is doing well, and is continuing to probe for a gap in <<=ps(setup.getNpcName('npc_boss', 'formal'))>> defenses.<br>
<br>
"@@.npc_manager;Very good.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a noncommittal nod.<br>
<br>
<<else>>
<<if State.hasPlayed("event_manager_theme_private_ai_connect")>>
[@@.link_locked;You have already told <<=setup.getNpcName('npc_manager', 'formal')>> about helping <<=setup.getNpcName('npc_ai', 'first')>> leave the company building.@@]<br>
<<elseif $npc_ai.stage >= 3>>
[<<moveTo "event_manager_theme_private_ai_connect" 'Tell <<=setup.getNpcName("npc_manager", "formal")>> about helping <<=setup.getNpcName("npc_ai", "first")>> leave the company building.' 120>>]<br>
<</if>>
<<if State.hasPlayed("event_manager_theme_private_ai_robot")>>
[@@.link_locked;You have already told <<=setup.getNpcName('npc_manager', 'formal')>> about your work obtaining a physical form for <<=setup.getNpcName('npc_ai', 'first')>>.@@]<br>
<<elseif State.hasPlayed("event_ai_mission_robot_body_intro_4")>>
[<<moveTo "event_manager_theme_private_ai_robot" 'Tell <<=setup.getNpcName("npc_manager", "formal")>> about obtaining a physical form for <<=setup.getNpcName("npc_ai", "first")>>.' 120>>]<br>
<</if>>
<<if State.hasPlayed("event_manager_theme_private_ai_human")>>
[@@.link_locked;You have already told <<=setup.getNpcName('npc_manager', 'formal')>> about your work rescuing <<=ps(setup.getNpcName('npc_ai', 'first'))>> creator.@@]<br>
<<elseif State.hasPlayed("event_nurse_doctor_ai_first_3")>>
[<<moveTo "event_manager_theme_private_ai_human" 'Tell <<=setup.getNpcName("npc_manager", "formal")>> about <<=setup.getNpcName("npc_ai_human", "formal")>>.' 120>>]<br>
<</if>>
<</if>>/*#
#desc: manager home visit, talk about ai connection mission
#status: FINISHED 0.8.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_manager', 'formal')>> how you helped smuggle <<=setup.getNpcName('npc_ai', 'first')>> out of the building.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>>
<<if setup.isItemEquipped("data_plug")>>
eyes twinkle. "@@.npc_manager;So THAT is how you came upon that lovely data storage plug. I did wonder, given that model never really made it out of the prototype stage. Most employees just could not handle such capacity... but you have always been built for this position, hmm?@@" She taps her remote to send the plug buzzing in your rear, your gasp of pleasure eliciting a smile.
<<else>>
nods.
<</if>>
"@@.npc_manager;I can only imagine being literally, rather than merely figuratively, imprisoned in this building... yes, an ally such as that could be quite useful both inside and out...@@"<br>
<br>
<<include "managerPrivateAI">>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, talk about ai robot mission
#status: FINISHED 0.8.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_manager', 'formal')>> about your
<<if State.hasPlayed("event_ai_mission_robot_body_performance_9")>>
<<if $npc_ai.flags.missions.robot_body>>
successful
<<else>>
still in progress efforts to
<</if>>
efforts to obtain a robotic body for <<=setup.getNpcName('npc_ai', 'first')>> to use. Prodding you about how you were able to fulfill your mission <<=setup.getNpcName('npc_manager', 'formal')>> is able to get you to admit to your pretending to be her for the janitor.<br>
<br>
<<if State.hasPlayed("event_manager_impersonate_first_1")>>
"@@.npc_manager;Amusing... I suppose that explains why you showed such comfort impersonating me.@@"
<<elseif State.hasPlayed("event_inspection_manager_outfit_1")>>
"@@.npc_manager;Amusing... I had a feeling there was more going on with you assembling that outfit.@@"
<<else>>
"@@.npc_manager;Amusing... I confess I am curious how you looked, perhaps some day you could show me?@@"
<</if>>
<<else>>
need to impersonate her for the janitor. "@@.npc_manager;Interesting... well, I do wish you luck.@@" She winks "@@.npc_manager;I would offer to loan you something but... no, it would be better deniability for us both if you completed this task on your own, without my collusion.@@"
<</if>>
<br><br>
<<include "managerPrivateAI">>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, talk about ai human mission
#status: FINISHED 0.8.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_manager', 'formal')>> about your
<<if $npc_ai.flags.human.cured>>
successful rescue and restoration of <<=setup.getNpcName('npc_ai_human', 'formal')>> from <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> so-called asylum.<br>
<br>
"@@.npc_manager;That is good to hear... <<=setup.getNpcName('npc_ai_human', 'formal')>> seemed quite the skilled engineer. When she disappeared...@@" <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head, "@@.npc_manager;well, such occurrences are becoming more and more common as <<=setup.getNpcName('npc_boss', 'formal')>> tightens <<his npc_boss>> grip. Still, free, and with <<=setup.getNpcName('npc_ai', 'other')>> to boot... well, allies are good to have, particularly ones so skilled.@@"
<<elseif State.hasPlayed("event_ai_rescue_mission_5")>>
successful rescue of <<=setup.getNpcName('npc_ai_human', 'formal')>> from <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>>... though you note that <<=setup.getNpcName('npc_ai_human', 'formal')>> still seems to be taking time to recover from her ordeal.<br>
<br>
"@@.npc_manager;Understandable, to be a prisoner of <<=setup.getNpcName('npc_work_doctor', 'formal')>> for so long.@@" <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head. "@@.npc_manager;Had I known where she was, I might have taken action... but her disappearance was as sudden as it was mysterious and, well... digging into such things here can be quite the risk.@@"
<<elseif $npc_ai.flags.human.rescue>>
successful rescue of <<=setup.getNpcName('npc_ai_human', 'formal')>> from <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> so-called asylum.<br>
<br>
"@@.npc_manager;That is good to hear... <<=setup.getNpcName('npc_ai_human', 'formal')>> seemed quite the skilled engineer. When she disappeared...@@" <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head, "@@.npc_manager;well, such occurrences are becoming more and more common as <<=setup.getNpcName('npc_boss', 'formal')>> tightens <<his npc_boss>> grip. Let us hope she is able to make a recovery. She, and <<=setup.getNpcName('npc_ai', 'other')>>, as well, would be quite the useful allies to have.@@"
<<elseif State.hasPlayed("theme_ai_human_third_1")>>
plans to rescue <<=setup.getNpcName('npc_ai_human', 'formal')>> from <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> so-called asylum.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods somberly. "@@.npc_manager;Good luck... such areas of the company are beyond my ability to influence safely. Were I to take interest it would only draw additional attention and make your efforts all the more challenging. Thus I will do all that I can, which is to wish you fortune, and to advise caution. <<=setup.getNpcName('npc_work_doctor', 'formal')>> may be flawed, and more than a little unstable, but <<he npc_work_doctor>> is not to be trifled with lest one find themselves consigned to a cell of their own.@@"
<<else>>
plans discovery of <<=setup.getNpcName('npc_ai_human', 'formal')>> in <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> so-called asylum.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> looks surprised. "@@.npc_manager;<<=setup.getNpcName('npc_ai_human', 'formal')>>? Well, I am glad to hear that she survived her disappearance... though if she has been in <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> clutches this long...@@" <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head and you reflect that some fates are, perhaps, worse than death. "@@.npc_manager;Unfortunately, such occurrences are becoming more and more common as <<=setup.getNpcName('npc_boss', 'formal')>> tightens <<his npc_boss>> grip. I cannot influence such portions of the company without drawing additional attention that would only make your task more difficult. Thus I will do all that I can, which is to wish you fortune, and to advise caution. <<=setup.getNpcName('npc_work_doctor', 'formal')>> may be flawed, and more than a little unstable, but <<he npc_work_doctor>> is not to be trifled with lest one find themselves consigned to a cell of their own.@@"
<</if>>
<br><br>
<<include "managerPrivateAI">>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, talk about barista
#status: FINISHED 0.8.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up
<<if $npc_barista.flags.rescue.cure == "good">>
<<=setup.getNpcName('npc_barista', 'first')>>, and your successful efforts to cure her of the company's brainwashing and abuse.<br>
<br>
<<if State.hasPlayed("event_psychiatrist_manager_reunion_5")>>
"@@.npc_manager;Yes... I saw, remember?@@" <<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement. "@@.npc_manager;I must say, I quite prefer this new <<=setup.getNpcName('npc_barista', 'first')>> to the old one. Before she was... well,<<if $npc_boss.fem>> "<<=setup.getNpcName('npc_boss', 'formal')>> in heels" <<else>> young <<=setup.getNpcName('npc_boss', 'formal')>> with bigger tits <</if>> would not be far off. Her new self is much less... malevolent and self-centred, and she seems happier, to boot.@@"
<<else>>
"@@.npc_manager;<<=setup.getNpcName('npc_barista', 'first')>>? Now that is a name I have not heard in... well, you saw what happened to her. Too ambitious for her own good. You can see why I am more... cautious in my dealing with <<=setup.getNpcName('npc_boss', 'formal')>>. I will confess that the two of us did not quite get along.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> asks some additional, pointed questions before nodding. "@@.npc_manager;Interesting, it would seem that the <<=setup.getNpcName('npc_barista', 'first')>> you have restored is not quite the same as the one I once knew. Perhaps this new self will be more... amenable to productive cooperation. Any ally against <<=setup.getNpcName('npc_boss', 'formal')>> is certainly a useful one and, despite her prior failure, <<=setup.getNpcName('npc_barista', 'first')>> is quite a cunning and resourceful person to have on one's side.@@"
<</if>>
<<else>>
<<if $npc_barista.stage >= 10>>
<<=setup.getNpcName('npc_barista', 'first')>>, and your partially efforts to cure her of the company's brainwashing and abuse.<br>
<br>
<<if State.hasPlayed("event_psychiatrist_manager_reunion_5")>>
"@@.npc_manager;Yes... I saw, remember?@@" <<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement. "@@.npc_manager;Pity about her intellect, <<=setup.getNpcName('npc_barista', 'first')>> was quite cunning, before... but, then again... well,<<if $npc_boss.fem>> "<<=setup.getNpcName('npc_boss', 'formal')>> in heels" <<else>> young <<=setup.getNpcName('npc_boss', 'formal')>> with bigger tits <</if>> would not be far off. Her new self may not be as good at problem-solving, but she is also far less likely to consider everyone else a problem to "solve," and she does seem a fair bit happier than she once was.@@"
<<else>>
"@@.npc_manager;<<=setup.getNpcName('npc_barista', 'first')>>? Now that is a name I have not heard in... well, you saw what happened to her. Too ambitious for her own good. You can see why I am more... cautious in my dealing with <<=setup.getNpcName('npc_boss', 'formal')>>. I will confess that the two of us did not quite get along.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> asks some additional, pointed questions before nodding. "@@.npc_manager;Hmm, it would seem that, excuse my french, cut-throat bitch, that I once knew is no more... still, a double agent so deeply integrated into <<=ps(setup.getNpcName('npc_boss', 'formal'))>> doings could be quite useful...@@"
<</if>>
<<elseif $npc_barista.stage >= 2>>
<<=setup.getNpcName('npc_barista', 'nickname')>>, and your ongoing efforts to cure her of the company's brainwashing and abuse.<br>
<br>
"@@.npc_manager;Now THAT is a challenge... I was not personally involved, and it is outside my expertise, too blunt and brutal, but what they did to <<=setup.getNpcName('npc_barista', 'first')>>? Well, undoing that will be quite the task. You can see why I am more... cautious in my dealing with <<=setup.getNpcName('npc_boss', 'formal')>>.@@" <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head "@@.npc_manager;I will confess that the two of us did not quite get along. Still, should your efforts be successful she could be quite the useful ally against ... so long as <<=setup.getNpcName('npc_barista', 'first')>> does not still plan to merely replace <<=setup.getNpcName('npc_boss', 'formal')>> as the evil overlord atop the hierarchy.@@"<br>
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> seems cautious as she replies. "@@.npc_manager;Yes... what happened to her is, well... ambition and going against <<=setup.getNpcName('npc_boss', 'formal')>> can come with quite the price-tag at this company. Consider her bimbofied self a warning as to the consequences of getting caught.@@"
<</if>>
<</if>>
<br><br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager pregnancy ask
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the possibility of pregnancy to <<=setup.getNpcName("npc_manager","formal")>> and she raises an eyebrow.<br>
<br>
"@@.npc_manager;Children is certainly not something I had thought of, the company as it is, well... obviously, as head of HR I made sure that our maternity and paternity packages are significantly above legal requirements but, as for myself, well... with things as they are I certainly do not have the time to take any sort of break from the company, not with <<=setup.getNpcName("npc_boss","formal")>> still in charge... after? Well... perhaps. But now I am curious what you had in mind?@@"<br>
<br>
[<<moveTo 'event_manager_theme_private_pregnant_2' "You think you'd like to get pregnant someday..." 300 "<<set $scene.pregnant='you'>>">>]<br>
[<<moveTo 'event_manager_theme_private_pregnant_2' "You'd love to knock each other up someday..." 300 "<<set $scene.pregnant='both'>>">>]<br>
[<<moveTo 'event_manager_theme_private_pregnant_2' "You think she would be a great mom... and look totally hot with a baby bump." 300 "<<set $scene.pregnant='them'>>">>]<br>
[<<moveTo 'event_manager_theme_private_pregnant_2' "You were just curious." 300 "<<set $scene.pregnant='none'>>">>]
</div>/*#
#desc: manager pregnancy
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pregnant = $scene.pregnant>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.pregnant>>
<<case 'you'>>
You reply that you think you'd like to have a child someday. "@@.npc_manager;I see, well, as I said, the company does offer coverage for such... though, given your current situation...@@"<br>
<br>
Her voice trails off and you nod in understanding, even ignoring the normal challenges of bringing a new child into the world, <<=setup.getNpcName("npc_boss","formal")>> hanging over is a whole other level.
<<case 'both'>>
You reply that you would love to share your pregnancy with <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;And with us both out, who would keep this place from falling apart?@@" She laughs in amusement. "@@.npc_manager;An interesting dream... and I do appreciate you sharing it with me... but I need to keep my focus on other things, for now.@@"
<<case 'them'>>
You reply that you think <<=setup.getNpcName("npc_manager","formal")>> would make a wonderful mother.<br>
<br>
"@@.npc_manager;I suppose managing employees does have some overlap... but no, at least for now. I have far too much on my plate as it is.@@"
<<case 'none'>>
You reply that you were just curious and <<=setup.getNpcName("npc_manager","formal")>> smiles in amusement.<br>
<br>
"@@.npc_manager;Just so long as you are careful with that curiosity. Obviously here is safe but out there...@@" she gestures wide, a reminder of the fraught state of your life since you joined the company.
<<default>>
ERROR: unexpected scene.pregnant <<=$scene.pregnant>>
<</switch>>
<br><br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, psych relationship
#status: FINISHED 0.8.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if she has thought about repairing her relationship with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>?<br>
<br>
<<if State.hasPlayed("event_psychiatrist_manager_reunion_6")>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Yes, well... you attended to resolving that issue, hmm?@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> sighs.
<<if $npc_psychiatrist.flags.evil == 1>>
"@@.npc_manager;Thought of it? Certainly... but that was before, well...@@" Her voice trails off as you remember the bimbo state that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is currently in.<br>
<br>
<<printThought "I need to get <<=setup.getNpcName('npc_psychiatrist', 'formal')>> back to normal before I can try to push anything further...">>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> sighs. "@@.npc_manager;Thought of it? Certainly... but thinking and doing can be worlds apart, and such an attempt would not even be safe given how things are, at present.@@" She gestures with her glass. "@@.npc_manager;Perhaps once this is over with, we might... but, then again, some relationships can never be repaired.@@"<br>
<br>
<<if State.hasPlayed('theme_psychiatrist_secret_theme_manager_psych_2')>>
You mention that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems amenable to reconciliation and <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows for a moment... and then she smiles. "@@.npc_manager;Sorry... I normally harbor suspicion at such things, a safety measure, given my position... but I know you only mean the best. Still, I do not see how such would be possible, given where the two of us are, the risk of merely being seen together, to say nothing of doing it in a place where we could speak freely...@@"<br>
<br>
<<printThought "Hmm... if only I could get them together somewhere safe...">>
<<else>>
<<printThought "Hmm, I wonder how <<=setup.getNpcName('npc_psychiatrist', 'formal')>> feels? Would have to talk to her about it privately...">>
<</if>>
<</if>>
<</if>>
<br><br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, npc_evil_nurse
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> what she really thinks about <<=setup.getNpcName("npc_evil_nurse","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sighs. "@@.npc_manager;<<=setup.getNpcName("npc_evil_nurse","formal")>> could be considered one of the more... unique victims of the company. As you know, the kernel of the <<if $fetish.sissy>>SISSI <</if>>Secretary program started from attempts to leverage natural submissives for mutual benefit. It was a good thing, for a time... but it worked too well and <<=setup.getNpcName("npc_boss","formal")>> was so impressed by the effectiveness of such, and so pig-headed in <<his npc_boss>> own sense of superiority and need for control, that <<he npc_boss>> started doing forced recruitment and conversions. <<=setup.getNpcName("npc_evil_nurse","formal")>> was the first, and one of very few overall, natural DOMINANTS to be picked up. Rather than succumb as most will to the combination of drugs and training that was being employed, she started trying to stand up for her fellow slaves-to-be, nearly spurring a revolution of sorts before <<=setup.getNpcName("npc_work_doctor","formal")>> stepped in.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;I do not know the full details of what the insane doctor did to her, but, at the end of it, <<=setup.getNpcName("npc_evil_nurse","formal")>> went from being a promising, if inexperienced, domme... to an out and out maniacal sadist, her cruelty seemingly exceeding even <<=setup.getNpcName("npc_boss","formal")>>. At this point she can't really be allowed outside of the asylum areas without supervision, lest her wanton urge to inflict cruelty cause problems. Not that that restriction leaves her short on potential victims, and so long as <<if State.hasPlayed("event_betray_work_doctor_7")>>she has access to that, well... she remains a tool of the company<<else>><<=setup.getNpcName("npc_work_doctor","formal")>> supplies her with that, well... she remains <<his npc_work_doctor>> tool<</if>>.@@"<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, npc_retention
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> what she really thinks about <<=setup.getNpcName("npc_retention","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sneers.
<<if State.hasPlayed("event_guard_retention_mission_5") || State.hasPlayed("event_landlord_retention_mission_7")>>
"@@.npc_manager;Gone and good riddance. One of <<=ps(setup.getNpcName("npc_boss","formal"))>> more dangerous assets... and one you have done well to remove from the board.@@"
<<else>>
"@@.npc_manager;A yoke foisted upon me by <<=setup.getNpcName("npc_boss","formal")>>. Oh, <<he npc_retention>> acts obedient... and efficient, but <<he npc_retention>> is as much <<=ps(setup.getNpcName("npc_boss","formal"))>> as anyone at this company, <<his npc_retention>> loyalty bought with cash... and some significant strings pulled to keep <<him npc_retention>> from ending up in front of a war-crimes tribunal. <<=setup.getNpcName("npc_retention","formal")>> represents one of the most dangerous obstacles to removing <<=setup.getNpcName("npc_boss","formal")>> from power.@@"
<</if>>
<br><br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div><<if $player.sec_style.clothing.tattoo != "" && $player.sec_style.clothing.tattoo != "obedient" && $player.flags.collar.owner == 'npc_manager'>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_tattoo'
0
'event_manager_tattoo_request_1'
true
>>
<</if>>/*#
#desc: the player asks for npc_manager mark
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.tattoos.belly == "manager_own">>
<<set _themeId = setup.findThemeId('npc_manager', 'other', 'theme_manager_other_tattoo')>>
<<set $npc_manager.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.tattoos.belly == "manager_own">>
You ask <<=setup.getNpcName("npc_manager","formal")>> if there is anything further you can do to pledge yourself to her?<br>
<br>
She thinks for a moment, walking closer to you to run her hand gently down your face before toying with your collar. "@@.npc_manager;You are already so thoroughly mine... you wear my collar, you bear my mark... at this time I cannot think of anything else you could do to bind yourself to me... but I also trust that, should such a thing come along, I can be all that certain that you would accept.@@"<br>
<br>
She smiles, and then leans forward to tenderly kiss you on the forehead. You nearly melt, and instead curtsy as you promise that you eagerly await the opportunity to do just as she says.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You take a deep breath, and collecting yourself before making your request. You take a step closer to <<=ps(setup.getNpcName("npc_manager","formal"))>>, adding a swing to your hips with each step and then lean over the desk as you ask in your most submissive allure if it would be possible further there is anything you can do to show your devotion to your <<=setup.getNpcName("npc_manager","title")>>? <<=setup.getNpcName("npc_manager","formal")>> raises her eyebrow, smirking as she leans in to meet your gaze. Only a few centimetres separate your faces from each other, her seductive scent filling your nose and scrambling your thoughts as you feel her warm breath tickling your skin.<br>
<br>
"@@.npc_manager;Oh, and what is this? A sincere request... or merely looking to curry favour with the boss?@@" She twirls the pen in her fingers before stroking the capped tip against your cheek. You tremble, reminded of the feel of a crop tauntingly run against your face. "@@.npc_manager;Is my collar not enough for you? Are you looking for something more permanent? A tattoo, perhaps? Something to forever mark you as mine...@@" She pulls back, a smile of consideration on her face as she taps the pen against her opposite palm. "@@.npc_manager;The question is... are you worthy to bear such a mark?@@"<br>
<br>
You consider your possible answers. Could this be a trick question? Or is the trick question the test itself? Is she looking for confidence, deference? Truth, facade? Her eyes sparkle... whatever she wants, you are definitely not getting away without making some sort of reply...<br>
<br>
[<<moveTo "event_manager_tattoo_request_2" "Say yes, you are worthy." 60 "<<set $scene.yes=true>>">>]<br>
[<<moveTo "event_manager_tattoo_request_2" "Say no, you are not worthy... but you nonetheless desire." 60 "<<set $scene.yes=false>>">>]
<</if>>
</div>/*#
#desc: manager responds to tattoo request
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.yes>>
<<set _tmp = setup.getSecretaryTitle()>>
<<set $scene.accept = $player.work.secretaryRank >= 3 && $player.work.secretarySkills >= 7 && setup.getTotalValue("feminization") >= 20>>
<<else>>
<<set $scene.accept = $player.work.secretaryRank >= 3 && setup.getTotalValue("submission") >= 20 && setup.getTotalValue("feminization") >= 20 && $npc_manager.anger == 0 && $npc_manager.affection >= 10>>
<</if>>
<<if !$scene.accept>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.yes>>
<<if $scene.accept>>
<<=setup.getNpcName("npc_manager","formal")>> chuckles as you affirm that you are worthy of such a favour. "@@.npc_manager;Confidence... and well earned. That is very good. I prefer my submissives to have a backbone, it is nothing to break the weak-willed, but to accept the surrender of the strong, the skilled...@@" She leans back, motioning for you to remove yourself from the desk.<br>
<br>
"@@.npc_manager;Yes, just as you have so many times before, you have earned my approval, and thus, my mark.@@"<br>
<br>
Your manager quickly taps at her computer, taking a few quick strokes before rising to her feet. "@@.npc_manager;Normally clearing my schedule would be one of your duties... but I think I can handle marking myself Do Not Disturb for the next half hour. I do not want any... distractions.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns, shaking her head after you have stated your case. "@@.npc_manager;Such arrogance. And unearned. To express such confidence you would have to have met, or exceeded, every expectation I have for you... and you. Have. Not. I wonder if you are overconfident or merely not cognisant of your own inadequacies? No matter. No, you are not worth of that which you ask. Maybe if you can show me that you are truly exemplary, I will change my mind, but you should know by now that my standards are very, very high.@@"
<</if>>
<<else>>
<<if $scene.accept>>
<<=setup.getNpcName("npc_manager","formal")>> smirks as you meekly admit to being unworthy. You lay it on pretty thick, finishing by throwing yourself at her feet in a show of worshipful submission.<br>
<br>
"@@.npc_manager;Humility looks good on you.@@" She purrs as she walks around her desk to guide your chin upwards with the toe of her shoe. You reflexively kiss her foot, and then look up to meet her gaze as she commands you to rise. "@@.npc_manager;You may not be worthy, but I believe you are ready all the same. You should thank me for being so magnanimous.@@" You take the hint, thanking her for being so gracious to her slave.<br>
<br>
"@@.npc_manager;Stay right there. I need to make a quick note.@@" <<=setup.getNpcName("npc_manager","formal")>> turns to her computer, typing swiftly. The whole time she keeps her heel planted on the top of your head, keeping your nose to the carpet as you remain bowed before her glory. After a few minutes, she leads you back to your feet. "@@.npc_manager;There we go. Do Not Disturb for the next half hour. Let us begin...@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> sighs, leaning further to whisper into your ear: "@@.npc_manager;if you aren't worthy or ready, then why are you wasting my time?@@" You don't have a good answer. You both lean back, her in her chair and you back to a standing position. "@@.npc_manager;Unfortunately, I concur with your observation: you are not ready for further responsibilities or signs of devotion. You should put your effort into handling your current duties before asking for more.@@"
<</if>>
<</if>>
<br><br>
<<if $scene.accept>>
[<<moveTo "event_manager_tattoo_request_3" "Continue..." 900>>]
<<else>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: the player gets a tattoo from npc_manager
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'unbelievable' $SEEN_FRIEND>>
<<set $player.tattoos.belly = "manager_own">>
<<set _themeId = setup.findThemeId('npc_manager', 'other', 'theme_manager_other_tattoo')>>
<<set $npc_manager.themes.other[_themeId].repeatable = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> unlocks a compartment in her desk, fishing through it silently. She fishes up a metal cylinder from the cavernous depths before locking the drawer. The device is nearly six inches in length, marked with only a thumb scanner. "@@.npc_manager;If you would kindly lay back on my desk while I get this set up.@@"<br>
<br>
You comply, measuring your breaths as you prepare yourself. There is no going back from this. Even in a minor, possibly concealable way, you are about to experience an irreversible change.<br>
<br>
As you finish removing your clothes, <<=setup.getNpcName("npc_manager","formal")>> presses her thumb against the scanner. It chirps in recognition before revealing a hidden latch. The entire device unfolds into a tattoo needle loaded with a small bottle of grey goo. "@@.npc_manager;There is a room for this sort of thing in the basement levels. While it is quite efficient at what it does, it is not a very personal experience and this... this is a special occasion.@@" <br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> finishes configuring the device and nods in approval before looking back to you. "@@.npc_manager;Alright, set. Spread those legs for me.@@" You roll your eyes at the tease, smiling to yourself as you obey. Your domineering boss approaches you slowly, building the tension in the air as she closes the distance. Slowly, she slides to her knees<<if $scene.removeCage>>, unlocking and setting your chastity device out of the way and then producing<<else>> and withdraws<</if>> a small disinfectant towelette. She takes her time cleaning the skin along your pelvis, keeping her eyes on yours so she can enjoy every twitch and gasp of your reaction.<br>
<br>
"@@.npc_manager;Relax. Keep your breath steady. This will not take long, at least not for me. For you?@@" <<=setup.getNpcName("npc_manager","formal")>> lets the question hang as she grins deviously. You nod that you understand and focus on your breathing. Tilting your head back, you close your eyes. You feel the needle press against your skin. There is the briefest sensation of something cool against you. The area is numbed by the wipe, dulling most of the experience, and yet you find yourself focusing on the pain, cherishing it for the offering that it represents.<br>
<br>
"@@.npc_manager;There we are. Open your eyes.@@"<br>
<br>
You weren't sure what to expect, but you certainly have a tattoo now. You lean forward, examining your pelvis. A circular black mark rests below your belly button along your pelvis: a triskelion with a pair of antlers. "@@.npc_manager;Do you like it? It is my signature in matters like this.@@" You nod, heart racing. That mark is going to be with you for the rest of your life.<br>
<br>
"@@.npc_manager;Good. I do too. Consider this another lovely step in the next leg of our journey together.@@" <<=setup.getNpcName("npc_manager","formal")>> circles you as you remain laid back on the table. Something tells you that she doesn't want you to get up quite yet. "@@.npc_manager;And now, that you are even more firmly mine... I think a celebration is in order. Lean back...@@"<br>
<br>
[<<moveTo "event_manager_tattoo_request_4" "Her face disappears between your legs..." 900>>]
</div>/*#
#desc: npc_manager orally pleasures mc after tattoo
#status: FINISHED 0.8.8.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<applyStress -100>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You feel submissive, spread, exposed... and with sensitivity roaring back after the sting of the tattoo
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<=setup.getNpcName("npc_manager","formal")>> dips between your legs, instantly asserting command of all that you have as her
<<switch $player.body.penissize[0]>>
<<case 0 1>>
mouth wraps tenderly around your member.
<<case 2 3>>
mouth envelops your member.
<<case 4 5>>
lips slide down to your root with a single, smooth bow.
<<case 6>>
lips spread wide and she swallows your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon<<elseif $player.body_ref.horsecock>>, horse<<elseif $player.body_ref.knot>>canine<</if>> cock without hesitation or hiccup, her throat gripping you magnificently tight as her lips reach your base.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
Two fingers reach under to slide into your wet hole, curling with perfect precision to stroke your g-spot as her head bobs... and she stares directly back at you.<br>
<br>
You don't know if you've ever felt something like this as she exploits every sensitivity you have, her free hand pressed over your belly, somehow increasing your pressure and pleasure, while her palm pressed over your mark to pin you in place serves as a subtle reminder that you. Are. Hers.<br>
<br>
As mind-blowing as your eventual orgasm is...
<<if $fetish.cum && $player.body_ref.cum > 0>>
<<if $player.body_ref.cum >= 2>>
when you cum buckets that she somehow gulps down without spilling a single drop...
<<elseif $player.body_ref.cum == 1>>
that she swallows with ease...
<<else>>
ERROR: Unexpected cum!
<</if>>
<</if>>
it somehow fails to be as powerful as the sight of her between your legs, not serving you... but rewarding you, feasting on her slave, giving you pleasure because she wishes it, a gift and a demonstration of power all in one.
<<elseif $player.body_ref.penis>>
<<=setup.getNpcName("npc_manager","formal")>> slides between your legs, her hand stroking you once as she stares at you past your <<getWordMyPenis>>.<br>
<br>
Her lips part, tenderly kissing your tip for a moment<<if $player.body_ref.balls>> as her fingers ever so gently massage your balls<</if>>. Her tongue slipping under your hood is all but intoxicating, but it teases for but a moment before she leans forward,
<<switch $player.body.penissize[0]>>
<<case 0 1>>
mouth wrapping tenderly around your member.
<<case 2 3>>
mouth enveloping your member.
<<case 4 5>>
her lips sliding down to your root with a single, smooth bow.
<<case 6>>
your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon<<elseif $player.body_ref.horsecock>>, horse<<elseif $player.body_ref.knot>>canine<</if>> cock proving to be no challenge at all as she swallows you to the root.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
You shudder and she starts to bob, her gaze never breaking from your own, the glint in her eyes leaving no doubt that she is in control... and seemingly loving every moment of your reward as she sucks and licks you to the edge... and then beyond, drawing mind-blowing pleasure from your <<getWordMyPenis>>, consuming you without draining you with suck after suck... until she's finally ready for you to cum.<br>
<br>
<<if $fetish.cum && $player.body_ref.cum > 0>>
<<if $player.body_ref.cum >= 2>>
You cum what feels like buckets...
<<elseif $player.body_ref.cum == 1>>
You cum hard
<<else>>
ERROR: Unexpected cum!
<</if>>
and she swallows it all with ease, one hand working your shaft while tongue and lips suck ever drop
<<else>>
You climax with a gasp and she continues to suck, drawing your orgasm out and then easing you down
<</if>>
as you slowly soften in sublime, sated satisfaction.
<<elseif $player.body_ref.vagina>>
the mere brush of <<=ps(setup.getNpcName("npc_manager","formal"))>> between your folds is heaven... but she has only started.<br>
<br>
Easily sliding two fingers into you and curling them up directly into your g-spot <<=setup.getNpcName("npc_manager","formal")>> starts in on the main course, her lips wrapping around your clit as her tongue takes control. You've long ago become accustomed to obeying her verbal instructions but this category of her oral skills are, perhaps, even more potent. As if she had a direct line to your brain she kisses and licks and fingers with consummate skill, the precision that is only usually possible for oneself... but maintaining the variety and surprise that requires a partner.<br>
<br>
You try to hold back your orgasm, not wanting the pleasure to end... but you have no reason to be concerned. <<=setup.getNpcName("npc_manager","formal")>> is in total control of the situation, a tease here, the slightest pause there, she doesn't just push you to the edge, but pushes that edge out further and further as the pleasure between your legs blends and twists and then, finally... when your heart is ready to pound its way out of your chest and you don't know if you can take any more... she lets you cum.<br>
<br>
The orgasm is as explosive as it is pleasurable, clitoris, g-spot and more singing as one as your entire body tenses for a moment... and then every gram of tension, every care and concern is blasted away in a moment of pure pleasure... pleasure gifted to you by <<=setup.getNpcName("npc_manager","formal")>>, your generous <<=setup.getNpcName("npc_manager","title")>>.
<<else>>
ERROR: unexpected genitals
<</if>>
<br><br>
Your consciousness flickers, <<=setup.getNpcName("npc_manager","formal")>> hazy and ethereal as she rises up from between your legs, standing over you for a lingering moment <<if $scene.removeCage>>before your <<=setup.getItemTypeName("cage")>> locks back where it belongs, sealing and somehow heightening the memory of her recent gift, and her mark centimetres above...<<else>>her fingers tracing your new mark<</if>>.<br>
<br>
"@@.npc_manager;Good girl,@@" she whispers, patting your fresh tattoo and helping you up. A kiss tinged has you all but swoon as she lifts you off the desk and spins you around and back to your feet. "@@.npc_manager;Enjoy my mark...@@"<br>
<br>
You want to stay, to repay her favour... but she shakes her head, sending you on your way with a smile as she returns to her desk.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>><<set $player.cutscene.lockinventory = true>>">>]
</div>/*#
#desc: talk to manager about taking sissy pill
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_item_0'
0
'event_manager_theme_transformation_items'
true
>>
<<set $scene.hasPill = setup.getItemCount('sissy_pill_mk1') > 0>>
<<set $scene.talkedPills = true>>
<<if !$scene.hasPill>>
<<if $npc_manager.stage == 1>>
<<addItem "sissy_pill_mk1" 1>>
<<else>>
<<addItem "sissy_pill_mk1" 2>>
<</if>>
<</if>>
<<if setup.checkItemOwned("pink_pill")>>
<<addItem "sissy_pill_mk1" 1>>
<<removeItem "pink_pill">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Ah yes.
<<if State.hasPlayed("event_manager_mandatory_disciplinary_measure_2_strict_2")>>
Just a bit of... chemical assistance to cut through that nasty resistance of yours.
<<else>>
The ominous pink pill you so readily accepted.
<<if $npc_manager.flags.seensissypilleffect>>
You have experienced its effect firsthand.
<<else>>
It seems as if you have experienced its effect firsthand.
<</if>>
<</if>>
But do not fret, the effects are neither permanent, nor do they leave any lasting side effects... yet. With this pill, as with many other things in life, it is the dose that makes the poison. But that hardly answers your question. The pill is a combination between hormonal and nano technology, which adjust parameters of your body to appear more feminine. These little babies,@@" she explains, while holding a few of them in her hand. "@@.npc_manager;Will be the next step in creating a world where everyone can be whatever they desire. For the right amount of money, of course. It is not like we are running a charity here.@@"<br>
<br>
"@@.npc_manager;As you might know, Social Interaction Service Syndicate Inc. is about much more than just Social Interaction Service Syndicate Inc. It is an umbrella corporation incorporating many smaller companies under a common vision. This synergy allows us to combine technologies in a very efficient way. And since the company had its roots in social networking, where we are still pretty big, we know what people want, even before they know it. And even if they are not yet aware of it, well, we are at the point where it is not that difficult to create demand where there was none before. That sort of innovative, boundary-pushing technology is what has brought Social Interaction Service Syndicate Inc. to be one of the seven Triple A multicorporate enterprises on this planet. To maintain that level of dominance requires innovation, discipline and long-term planning. Long story short, this product is only months away from release and has been thoroughly tested so no, you are not a guinea pig taking a product with unknown effects.@@"<br>
<br>
Again, you see a very sinister smile on her face.<br>
<br>
<<if $player.flags.contract.understoodcomplete>>
"@@.npc_manager;Well, I suppose in a way you are MY guinea pig for refining my managerial practice, but definitely not subject to R&D. And there is nothing in the contract that would allow something like this, as you already know.@@"
<<else>>
"@@.npc_manager;Well, I suppose in a way you are MY guinea pig for refining my managerial practice, but definitely not subject to R&D... or maybe you are? It is all in the contract, <<=$player.first_name>>, which I am sure you have already read start to finish.@@"
<</if>>
<br><br>
"@@.npc_manager;<<if !State.hasPlayed("event_manager_mandatory_disciplinary_measure_2_strict_2")>>Still, nothing was stopping you from asking more about the effects before using it, silly. <</if>>Anyway, EAPAR has rated this new drug as safe. Our department has really nothing to do with its development at all since we are personnel management and not R&D, but a friend of mine gave me a few samples. For a simple pill it is really quite miraculous, your body gets a more feminine form and your breasts will visibly grow, while your voice gets more feminine as well. There might be mental changes as well, but in testing that varied from user to user. If you were a rather dominant person before taking these, you will keep these traits, but as the name suggests, if you have a rather submissive or feminine personality, those traits will be amplified. Of course, like any drug there are also some additional, rare side effects.@@"<br>
<br>
You gulp audibly.<br>
<br>
"@@.npc_manager;Do not worry your pretty little head about it, <<=$player.first_name>>, the chances for those are almost zero, especially taking only one pill. Usage guidelines indicate you should normally wait until the effect is over before you take a new one. I also would not recommend to drink any alcohol within one hour or so after consumption, this might change some of the parameters in an undesired way as well. And I would stay away from strong electromagnetic fields so long as there are still nanites in your body. Since they're really small, they are practically unshielded against electromagnetic pulses, and you don't want to see what happens if nanites go out of control. But they are biodegradable, so your body will absorb them once their time is up. I hope this answers most of your questions. And if you decide to behave yourself and do your job and other tasks I might even give you a few more, if that is what you truly desire... and you remember to ask nicely.@@"<br>
<br>
<<if setup.getTotalValue('feminization')>4 || setup.getTotalValue('submission')>5>>
<<printThought "These will make me more feminine? Is that what I want?">>
<<else>>
<<printThought "Taking more of these? I think not!">>
<</if>>
<br><br>
<<if $scene.hasPill>>
"@@.npc_manager;I would offer you more, but I think it best you use up your current supply first.@@"
<<elseif $npc_manager.stage == 1>>
"@@.npc_manager;Here, have another one!@@" she says to you while handing you another of the pink pills, "@@.npc_manager;Supplies are limited so no more than that for now... wouldn't want you selling them off to one of our competitors, after all! Perhaps once you are further along in your new career I might trust you with greater quantities at a time.@@"
<<else>>
"@@.npc_manager;Here, take two, but do take care not go overboard with them!@@" she says to you while handing you a pair of the pink pills, "@@.npc_manager;Well, if that was all be a darling and close the door behind you on your way out.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: result of asking manager for more sissy pills
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstTalkPills = !$scene.talkedPills>>
<<if !$scene.firstTalkPills>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<set $scene.talkedPills = true>>
<<if $currentTasks.hasOwnProperty('event_doctor_first_appointment')>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<else>>
<<if $npc_work_doctor.flags.mandatoryPills>>
<<set $scene.givePill = setup.getItemCount('sissy_pill_mk1') < 7>>
<<set $scene.pillsToGive = 7-setup.getItemCount('sissy_pill_mk1')>>
<<set $scene.givePill = $scene.pillsToGive > 0>>
<<if $scene.givePill>>
<<addItem "sissy_pill_mk1" $scene.pillsToGive>>
<</if>>
<<if setup.checkItemOwned("pink_pill")>>
<<addItem "sissy_pill_mk1" 1>>
<<removeItem "pink_pill">>
<</if>>
<<else>>
<<set $scene.manager_approval = ($npc_manager.affection+$npc_manager.affection)>$npc_manager.anger>>
<<if $scene.manager_approval>>
<<if $npc_manager.stage < 2>>
<<set $scene.givePill = (setup.getItemCount('sissy_pill_mk1') + setup.getItemCount('sissy_drug_1')) == 0>>
<<if $scene.givePill>>
<<addItem "sissy_pill_mk1" 1>>
<</if>>
<<if setup.checkItemOwned("pink_pill")>>
<<addItem "sissy_pill_mk1" 1>>
<<removeItem "pink_pill">>
<</if>>
<<else>>
<<set $scene.givePill = setup.getItemCount('sissy_pill_mk1') < 4>>
<<if $scene.givePill>>
<<if $now.getUTCDay() == 5>>
<<set $scene.pillsToGive = 4-setup.getItemCount('sissy_pill_mk1')>>
<<else>>
<<set $scene.pillsToGive = 2-setup.getItemCount('sissy_pill_mk1')>>
<</if>>
<<set $scene.givePill = $scene.pillsToGive > 0>>
<<if $scene.givePill>>
<<addItem "sissy_pill_mk1" $scene.pillsToGive>>
<</if>>
<<if setup.checkItemOwned("pink_pill")>>
<<addItem "sissy_pill_mk1" 1>>
<<removeItem "pink_pill">>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('event_doctor_first_appointment')>>
<<=setup.getNpcName("npc_manager","formal")>> looks down over her glasses at you and shakes her head, her words terse and controlled.
<<if $player.flags.pink_pill.times_od1 == 0>>
"@@.npc_manager;I have already referred you to <<=setup.getNpcName("npc_work_doctor","formal")>>. You should speak with <<him npc_work_doctor>> about such matters. I am a Director of Human Relations, not a biochemist.@@"
<<else>>
"@@.npc_manager;I believe you have gotten into quite enough trouble with your little overdose "incident." I will assume that this is just the drugs talking and refer you to the assistance of <<=setup.getNpcName("npc_work_doctor","formal")>> as previously specified.@@"
<</if>>
<<elseif !$scene.firstTalkPills>>
She frowns. "@@.npc_manager;We already discussed this today and I will not be passing out any more drugs. If you have nothing to do save repeat yourself, I shall return to my other work. Good day, <<=$player.first_name>>.@@"
<<else>>
<<if $npc_work_doctor.flags.mandatoryPills>>
<<if $scene.givePill>>
<<=setup.getNpcName("npc_manager","formal")>> sighs and counts out <<=$scene.pillsToGive>> of the pink pills. "@@.npc_manager;Here you go. As required, but I advise you to exercise caution. Too many of those things, or mixing them with alcohol and, well... the effects can be quite severe. That is why I would prefer to keep a closer control on things but... well... we must all of us follow the dictates of corporate policy.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;I know that the requirements as to distribution of <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pills has become more liberal, but there are still limits, and I will not go beyond requirements.@@"
<</if>>
<<elseif $scene.manager_approval>>
<<if $scene.givePill>>
<<if $npc_manager.stage < 2>>
"@@.npc_manager;Back for more, hmm? Well, unfortunately for you supplies are quite tight at present when it comes to such... provisional employees. I only have one to give you... for now. Perhaps when you have settled in to your work a bit more I can trust you with a larger supply. After all, you are barely even starting to learn to be my <<if $fetish.sissy>>SISSI <</if>>secretary. I would not want you going on a binge and waking up a life-sized sexdoll.@@"
<<else>>
"@@.npc_manager;So, this little technical and medical marvel seems to have really captured your interest. Well, you have been quite the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> lately, so here you go. I believe I explained about the side effects, so don't overdo it. The last thing I need right now is to have to go search for yet another new secretary because you turned into some life size sex doll, a conscious onahole or something strange like that. Do I make myself clear?@@"
<</if>>
<br><br>
<<printThought "I'm pretty sure she has to be exaggerating about those side effects... right?">><br>
<br>
<<if $scene.pillsToGive > 1>>
She extends her hand, a few pink pills resting gently in her palm. You hesitate for a moment, but then quickly scoop them up. After all it's your decision to take the drugs, there's no real risk in just having them on hand.
<<else>>
She holds a pink pill in your direction. You hesitate for a moment, but still accept the pill. After all, it's your decision to take it or to just leave them in the bottle.
<</if>>
<<elseif $npc_manager.flags.seenMkOneOD>>
"@@.npc_manager;Sorry, my dear, but after seeing your previous lapse in control, I am going to be keeping much more stringent track of how many pills you have at a time. Come back when you are out... and that is not encouragement to binge!@@"
<<else>>
"@@.npc_manager;Hmm, according to my records you should still have some pills remaining, how about we wait until you are out before I provide you with any more? We would not want you tempted to overdose or anything.@@"
<</if>>
<<else>>
"@@.npc_manager;So, this little technical and medical marvel seems to have really captured your interest. But these pills are for good <<if $fetish.sissy>>sissies<<else>>girls<</if>>. If you want more of them, you need to diligently follow my rules to the letter. Do we understand each other?@@"
<<if $npc_manager.stage >=2>>
<br><br>
"@@.npc_manager;Of course, if you continue to misbehave I have heard work is nearing completion for a different sort of pill, but it is quite a bit more potent, and it seems they have been forced to rework it to be administered via a slightly different orifice...@@"
<</if>>
<</if>>
<</if>>
<br><br>
<<if $scene.firstTalkPills>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: purposefully misbehave after work to give manager an opportunity to punish you
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 300)>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if !$npc_manager.flags.voluntary_spanking>>
<<set $npc_manager.flags.voluntary_spanking = true>>
<<addNpcTheme 'npc_manager' 'voluntary_punishment' 'theme_manager_voluntary_punishment_1'
0
'event_manager_theme_voluntary_foot_massage_1'
true
>>
<</if>>
<<set $npc_manager.stagevalues[$npc_manager.stage].frisky += 1>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'badbadsissy')>>
<<setThreshold 'submission' 'submissive_secretary' 'badbadsissy'>>
<<else>>
<</if>>
<<if !setup.hasThreshold('bdsm', 'manager_upbringing', 'badbadsissy')>>
<<setThreshold 'bdsm' 'manager_upbringing' 'badbadsissy'>>
<</if>>
<<applyExperience 'submission' 7 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As <<=setup.getNpcName('npc_manager', 'formal')>> turns back towards her work, you adopt an innocent expression and brush past her desk, knocking a cup of pencils over and onto the ground.<br>
<br>
You express a sound of playful surprise as she looks up at the noise. You bend over to give her an unobstructed view of your raised ass, then hang out there, wiggling your bum as you slowly gather the scattered pencils.<br>
<br>
You hear the click of her heels as she walks around her desk, then feel, and hear, the loud smack of her hand on your ass.<br>
<br>
"@@.npc_manager;You clumsy girl! And what are you doing down there? You are just shuffling things around, you have not picked up a thing!! Hands! Behind your back!@@"<br>
<br>
You quickly obey, and leather cuffs are wrapped around each wrist. You tug and discover a short chain links the cuffs, meaning that you have now effectively lost the use of your arms.<br>
<br>
"@@.npc_manager;There, that should keep you out of mischief!@@"<br>
<br>
As you test your new restraints, she bends over to grab the pencil cup. Walking to the other side of the office, she places it upright on a small side-table across the room from her desk. Sitting down on a chair next to the small table, she nods in your direction.<br>
<br>
"@@.npc_manager;Alright, clean up your mess.@@"<br>
<br>
Blushing, you try to hunker down over the spilled pencils and grope blindly behind with your hands only to look over to see her shaking her head.<br>
<br>
"@@.npc_manager;What do you think you are doing? Do you think squatting down like you are taking a dump is attractive? Get down on your knees and do what I told you to.@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName('npc_manager', 'formal')>>@@" you reply, lowering to your knees and then carefully leaning forward to pick up the first pencil with your teeth. Rising back to your feet, you walk across the room and gently place it into the cup before turning to get the next pencil.<br>
<br>
"@@.npc_manager;Ah, ah, not yet, turn around and bend over,@@" she commands.<br>
<br>
You do as ordered, your bound wrists sticking out just above your exposed bum.<br>
<br>
SMACK! her hand impacts your exposed rear and you let out a cute meep of pain.<br>
<br>
<<if setup.getTotalValue("submission") > 10 || setup.getTotalValue("bdsm") > 7>>
On reflex, you immediately express your gratitude.<br>
<br>
"@@.npc_manager;Good girl!@@" She rubs your butt, assuaging the lingering sting of her slap. "@@.npc_manager;Alright, fetch another one.@@"
<<else>>
You start to stand only for her to land another blow on your ass and jerk your wrists up by their cuffs so as to pitch your torso back down.<br>
<br>
"@@.npc_manager;Come on, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, do you think this is JUST for my amusement? I am trying to educate you... what do you say?@@"<br>
<br>
SMACK!<br>
<br>
You whimper an expression of gratitude.<br>
<br>
"@@.npc_manager;Better. Now, fetch another one.@@"
<</if>>
<br><br>
Turning, you walk back to the spilled pencils, dropping once more to your knees and leaning over to pick up another. Putting it back in the cup, you bend over for another slap, thanking her once again.<br>
<br>
The process repeats until all dozen pencils have been placed in the cup, your bum stinging
<<if setup.getTotalValue("stamina") > 5>>
though you are in good enough shape not to be at all tired. You stand in front of her calmly.
<<else>>
and your thighs and lower back a little tired from the constant standing and bowing. You stand in front of her catching your breath.
<</if>><br>
<br>
Placing a hand over your crotch, she
<<if !setup.checkItemTypeWorn("cage")>>
rubs your <<if $player.body_ref.penis>>hard <<getWordMyPenis>><<else>>wet cunt<</if>> through your clothes. The feeling of your <<=setup.getItemTypeName("panties")>> against your flesh an ecstatic agony.
<<else>>
<<if setup.isCage()>>
grabs your cage through your clothes, giving your secured <<getWordMyPenis false>> a squeeze and a tug that only accentuates your helpless imprisonment.
<<else>>
runs her hand against the smooth front of your chastity belt, the fact you can feel nothing through the rigid shield accentuating your helpless imprisonment.
<</if>>
<</if>>
She pulls her hand back after a few moments, smiling up at you from her seat. Gesturing for you to turn around, she removes your cuffs and gives your tender butt a final groping squeeze.<br>
<br>
"@@.npc_manager;Very good, you are dismissed.@@"<br>
<br>
You give a small curtsy.<br>
<br>
<<if $currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task') && !(setup.checkItemOwned('manager_paddle_broken') || setup.checkItemOwned('manager_paddle_repaired'))>>
<<printThought "I was hoping she might use the paddle, if it breaks maybe she'd let me take it? Then I'd just have to figure out a way to get it repaired...">><br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_talk_nothing_2_bonus_0_alt" "Actually... you think you deserve a paddling..." 300>>]<br>
<<else>>
[@@.link_locked;You lack the mental will to request any more punishment.@@]<br>
<</if>>
<<else>>
[@@.link_locked;A spanking is enough. No way can I endure having her break a paddle over my rear!@@]<br>
<</if>>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: offer to help reduce manager's stress and massage her feet
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("foot") > 0>>
<<applyExperience 'foot' 5 'normal' $SEEN_FRIEND>>
<<else>>
<<setThreshold 'foot' 'foot_massages' 'manager_help'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Noting her obvious stress, you ask if perhaps you could massage her feet or something else to help her relax.<br>
<br>
"@@.npc_manager;What a kind offer! Certainly, just crawl under here and get to work.@@"<br>
<br>
<<if setup.getTotalValue("foot") >= 15>>
Eagerly you rush across the room.
<<elseif setup.getTotalValue("foot") >= 10>>
You restrain yourself from looking too excited as you cross the room.
<<elseif setup.getTotalValue("foot") >= 5>>
You curtsy obediently and walk across the room.
<<else>>
You take a deep breath and walk across the room.
<</if>>
Crawling under her desk, you find it surprisingly roomy, even after she rolls back in to bar your escape, almost like it was designed to accommodate someone back here. She presents her feet and you get to work.<br>
<br>
Drawing on your considerable skill, you start by gently removing her sexy-steep heels,
<<if setup.getTotalValue("foot") >= 15>>
and start kissing her divine feet.
<<elseif setup.getTotalValue("foot") >= 10>>
and begin to lovingly massage her beautiful feet
<<elseif setup.getTotalValue("foot") >= 5>>
and start to massage her beautiful feet.
<<else>>
and start to massage her feet.
<</if>>
It is not long before she purrs in approval. "@@.npc_manager;Ooohhh, I needed that, keep it up and I might move where you sit to down there, you really have a gift...@@"<br>
<br>
<<if setup.getTotalValue("foot") >= 10>>
That would be just fine with you, but you remain silent and focus on your job.<br>
<br>
<</if>>
You have worked out every knot or kink in her feet and calves when she finally calls for a halt. Very carefully you slide her feet back into their heels, buckling them closed and finishing with a soft kiss on each toe.<br>
<br>
Rolling back, she lets you out and back to your feet. She definitely looks more content and relaxed than before you went under.<br>
<br>
"@@.npc_manager;Mmm, very good, but you know what else I would like to do? Spank your cute butt. Yes, I know you have just been a VERY good <<if $fetish.sissy>>sissy<<else>>girl<</if>> but... you do not know how wonderful it feels to spank that perfect ass of yours so... will you indulge your Mistress this gift?@@"<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
Just the mention of a spanking has you aroused.<br>
<br>
[<<moveTo "event_manager_theme_voluntary_spanking_2" "Turn around and present your bottom." 600>>]<br>
[@@.link_locked;You cannot pass up the opportunity for a spanking.@@]
<<elseif setup.getTotalValue("submission") > 10>>
The mere thought of denying her request does not even enter your thoughts.<br>
<br>
[<<moveTo "event_manager_theme_voluntary_spanking_2" "Turn around and present your bottom." 600>>]<br>
[@@.link_locked;You cannot deny the request of your <<=setup.getNpcName('npc_manager', 'title')>>.@@]
<<else>>
[<<moveTo "event_manager_theme_voluntary_spanking_2" "Agree to her request." 600>>]<br>
[<<moveTo "room_office_after_work" "Decline and leave." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: voluntarily let your manager spank you
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 5 'very' $SEEN_FRIEND>>
<<set $npc_manager.flags.voluntary_spanked += 1>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'voluntary_spank')>>
<<setThreshold 'submission' 'submissive_secretary' 'voluntary_spank'>>
<<else>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in delight at you agreeing to her offer, patting her lap for you to lay across it.<br>
<br>
Bending over across her legs, you feel her caress your rear and pull your clothes down to expose your bare ass. <<if setup.checkItemTypeWorn('plug')>>With a single finger, she teasingly wiggles the plug in your bum, then pulls her hand back.<</if>> With a loud SMACK the first blow impacts your tender flesh.<br>
<br>
<<if setup.getTotalValue("bdsm") >= 15>>
You let out a moan of desire, the pain blooming in your rear ecstatically pleasurable.
<<elseif setup.getTotalValue("bdsm") >= 10>>
You let out a cute meep, enjoying the stinging pain spreading across your rear.
<<elseif setup.getTotalValue("bdsm") >= 5>>
Squeezing your eyes closed you try to hold back from crying out at the pain of the spanking.
<<else>>
You let out a yelp of pain, panting as you try to endure the fire blooming across your bum.
<</if>>
<br><br>
<<if setup.getTotalValue("submission") > 10>>
"@@.pc;One, Mistress. Thank you,@@" you whisper in aroused gratitude.
<</if>>
She continues spanking.
<<if setup.getTotalValue("submission") > 10>>
You continue counting, thanking her for each <<if setup.getTotalValue("bdsm") >= 10>>wonderful<<else>>painful<</if>> blow.
<</if>>
Working randomly, but methodically, she turns your bum a nice even red before finally sliding you off her lap and back to your feet to admire her work.<br>
<br>
"@@.npc_manager;So cute, thank you for the use of your ass. It was a delight, as always. As fun as that was, I had better get back to work, have a good rest of the afternoon and evening! If you have not already.@@"<br>
<br>
You blush and pull up your clothes, which stings just a bit scraping over your tender bum. Nonetheless you give a little curtsy of gratitude.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: mention meeting your predecessor
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_predecessor_2'
0
'event_manager_theme_npc_secretary_details'
true
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up your encounter with <<=setup.getNpcName("npc_secretary","nickname")>>.<br>
<br>
<<if $npc_manager.affection > 5 && $npc_manager.anger < 3>>
A look of melancholy briefly passes over your <<=ps(setup.getNpcName("npc_manager","title"))>> face.<br>
<br>
"@@.npc_manager;Oh, I hope she was doing well?@@"<br>
<br>
You reply that she seemed happy, if a bit different in appearance from the picture you saw from back when she had your position.<br>
<br>
"@@.npc_manager;That is good to hear, if you see her again do send my regards.@@"<br>
<br>
You get the distinct feeling that <<=setup.getNpcName("npc_manager","formal")>> wants to say more, but her gaze flicks towards a corner of the ceiling and you remember that, in this building, it is a safe assumption that one is always being watched.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> seems tightly controlled as she responds with a nod.<br>
<br>
"@@.npc_manager;I hope she was doing well, did she give you any pointers?@@"<br>
<br>
You reply that you didn't really have a chance to talk much and <<=setup.getNpcName("npc_manager","formal")>> nods, her body language loudly communicating that she does not wish to dwell on this subject.
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: ask about removing chastity for home milking
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.cage != "">>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $player.body_ref.penis>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_21'
10
'event_psychiatrist_session_night_milking_quest_1'
false
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.cage == "">>
You bring up the penis milking kit you acquired and <<=setup.getNpcName('npc_manager', 'formal')>> chuckles in amusement.<br>
<br>
"@@.npc_manager;Yes, well... I wish you luck, so long as you keep such activities confined to when you are off the clock, well, it is your body to experiment with.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<if $player.body_ref.penis>>
<<if $currentTasks.hasOwnProperty('manager_bed_milking_penis') || $currentTasks.hasOwnProperty('manager_bed_milking_vag') || $currentTasks.hasOwnProperty('manager_bed_milking_both')>>
<<if $player.timebased.milking.times_sleep_milked > 0>>
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for her assistance in allowing you to milk yourself at night.<br>
<br>
"@@.npc_manager;Of course, of course. I would not want you to get too... backed up. You might end up leaking all over your lovely work attire! Yes, frequent milking is quite important to a <<if $fetish.sissy>>sissy's<<else>>girl's<</if>> help, never hesitate to call me to help tuck you in.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You once again mention how your <<=setup.getItemName($scene.cage)>> gets in the way of using your milking device.<br>
<br>
"@@.npc_manager;I do not know what else to say — I told you what to do, even sent you along some supplies. Obtain a camera, television, devices appropriate to your anatomy, and bed restraints, then give me a call wearing something nice and cute for bed and I will solve all of your problems. If you refuse to do that initial legwork though... well, I cannot do anything, can I?@@"<br>
<br>
<<printThought "Can't... or won't?">><br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
You tell <<=setup.getNpcName('npc_manager', 'formal')>> about the new "milking" device you picked up, and how you are unable to use it due to your <<=setup.getItemName($scene.cage)>>.<br>
<br>
<<if $scene.cage == "">>
She rolls her eyes. "@@.npc_manager;While that certainly sounds like an interesting device I do not see how it involves myself. Certainly you SHOULD be caged and locked like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>, but you are not, and thus I really cannot do anything one way or the other to influence what you get up to in the privacy of your own home.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<if setup.checkItemInInventory($scene.keyId)>>
"@@.npc_manager;While that certainly sounds like an interesting contraption, I gave you your key to take home, so you hardly need my permission to try it out. Though I would caution you to take care, too much stimulation can be a bit... overwhelming for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> like yourself.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif !$npc_manager.flags.trustplayerwithkey>>
"@@.npc_manager;Hmm, that is a bit of a conundrum. Obviously you cannot be permitted control over your key, but that sounds like quite the intriguing device...@@" She takes a moment to think. "@@.npc_manager;I believe I may have a solution, it will be a bit of work for both of us, but I think it would be good for you, so I am up for it if you are?@@"<br>
<br>
[<<moveTo "event_manager_self_milking_2" "Agree to hear her idea." 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_manager_self_milking_2" "Decline her offer." 60 "<<set $scene.agree=false>>">>]
<<elseif $npc_manager.flags.hascagekey>>
"@@.npc_manager;I see, I see... I suppose this means you will be wanting your key back so as to enjoy your new toy?@@"<br>
<br>
<<if $npc_manager.flags.trustplayerwithkey && !setup.checkItemTypeTag('cage', ['restrictedkey'])>>
She grins. "@@.npc_manager;Before you ask, the answer is no. You gave me the key back for safe keeping, and I would hardly be keeping up my side of things if I returned it to you just because you changed your mind on a whim. No, I think you are better off staying safe and locked.@@"<br>
<br>
She pauses and then smiles wider. "@@.npc_manager;That said... well, I think I have a lovely idea that should allow you to stay locked and still use your new toy. Would you like to hear it?@@"<br>
<br>
[<<moveTo "event_manager_self_milking_2_key" "Ask for her to return your key." 60>>]<br>
[<<moveTo "event_manager_self_milking_2" "Ask to hear her offer." 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_manager_self_milking_2" "Decline her offer." 60 "<<set $scene.agree=false>>">>]
<<else>>
"@@.npc_manager;Hmm, that is a bit of a conundrum. Hmm, actually, I actually I have an idea that would let you have a bit of fun while remaining properly locked, best of both worlds! If you would like to hear it...@@"<br>
<br>
[<<moveTo "event_manager_self_milking_2" "Ask to hear her offer." 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_manager_self_milking_2" "Decline her offer." 60 "<<set $scene.agree=false>>">>]
<</if>>
<<else>>
"@@.npc_manager;While that certainly sounds like an... interesting device you would have to bring it up with your keyholder. I really can do nothing for you... save advise you to take caution, too much stimulation can be a bit... overwhelming for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> like yourself.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
<</if>>
<<elseif setup.hasUpgrade($bed, 'vag_milker')>>
<<if ($currentTasks.hasOwnProperty('manager_bed_milking_penis') || $currentTasks.hasOwnProperty('manager_bed_milking_vag') || $currentTasks.hasOwnProperty('manager_bed_milking_both')) && $scene.cage != "">>
<<if $player.timebased.milking.times_sleep_milked > 0>>
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for her assistance in allowing you to milk yourself at night.<br>
<br>
"@@.npc_manager;Of course, of course. I would not want you to get too... backed up. You might end up leaking all over your lovely work attire! Yes, frequent milking is quite important to a <<if $fetish.sissy>>sissy's<<else>>girl's<</if>> help, never hesitate to call me to help tuck you in.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You once again mention how your <<=setup.getItemName($scene.cage)>> gets in the way of using your milking device.<br>
<br>
"@@.npc_manager;I do not know what else to say — I told you what to do, even sent you along some supplies. Obtain a camera, television, devices appropriate to your anatomy, and bed restraints, then give me a call wearing something nice and cute for bed and I will solve all of your problems. If you refuse to do that initial legwork though... well, I cannot do anything, can I?@@"<br>
<br>
<<printThought "Can't... or won't?">><br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
You bring up the vaginal upgrade that you purchased<<if $scene.cage != "">> but that your chastity device stymies you from using<</if>>.<br>
<br>
<<if $scene.cage == "">>
"@@.npc_manager;While that certainly sounds like an interesting device I do not see how it involves myself. <<if $fetish.chastity_vag && $player.body_ref.vagina>>Certainly you would certainly be happier and more productive belted and locked like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>, but you are not, and thus I really cannot do anything one way or the other to influence what you get up to in the privacy of your own home.<<else>>You are not submitting to chastity, and so enjoyment of such things is left entirely to your own cognisance.<</if>>@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<if setup.checkItemInInventory($scene.keyId)>>
"@@.npc_manager;While that certainly sounds like an interesting contraption, I gave you your key to take home, so you hardly need my permission to try it out. Though I would caution you to take care, too much stimulation can be a bit... overwhelming for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> like yourself.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif !$npc_manager.flags.trustplayerwithkey>>
"@@.npc_manager;Hmm, that is a bit of a conundrum. Obviously you cannot be permitted control over your key, but that sounds like quite the intriguing device...@@" She takes a moment to think. "@@.npc_manager;I believe I may have a solution, it will be a bit of work for both of us, but I think it would be good for you, so I am up for it if you are?@@"<br>
<br>
[<<moveTo "event_manager_self_milking_2" "Agree to hear her idea." 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_manager_self_milking_2" "Decline her offer." 60 "<<set $scene.agree=false>>">>]
<<elseif $npc_manager.flags.hascagekey>>
"@@.npc_manager;I see, I see... I suppose this means you will be wanting your key back so as to enjoy your new toy?@@"<br>
<br>
<<if $npc_manager.flags.trustplayerwithkey && !setup.checkItemTypeTag('cage', ['restrictedkey'])>>
She grins. "@@.npc_manager;Before you ask, the answer is no. You gave me the key back for safe keeping, and I would hardly be keeping up my side of things if I returned it to you just because you changed your mind on a whim. No, I think you are better off staying safe and locked.@@"<br>
<br>
She pauses and then smiles wider. "@@.npc_manager;That said... well, I think I have a lovely idea that should allow you to stay locked and still use your new toy, would you like to hear it?@@"<br>
<br>
[<<moveTo "event_manager_self_milking_2_key" "Ask for her to return your key." 60>>]<br>
[<<moveTo "event_manager_self_milking_2" "Ask to hear her offer." 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_manager_self_milking_2" "Decline her offer." 60 "<<set $scene.agree=false>>">>]
<<else>>
"@@.npc_manager;Hmm, that is a bit of a conundrum. Hmm, actually, I actually I have an idea that would let you have a bit of fun while remaining properly locked, best of both worlds! If you would like to hear it...@@"<br>
<br>
[<<moveTo "event_manager_self_milking_2" "Ask to hear her offer." 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_manager_self_milking_2" "Decline her offer." 60 "<<set $scene.agree=false>>">>]
<</if>>
<<else>>
"@@.npc_manager;While that certainly sounds like an... interesting device you would have to bring it up with your keyholder. I really can do nothing for you... save advise you to take caution. Too much stimulation can be a bit... overwhelming for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> like yourself.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
You bring up the penis milking kit you acquired and <<=setup.getNpcName('npc_manager', 'formal')>> chuckles in amusement.<br>
<br>
"@@.npc_manager;Bit useless that, given your present anatomy... so I really see nothing for the two of us to discuss on that topic. Is there anything else you wished to speak on?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: manager topic: she gives back key so you can use penis milker
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $npc_manager.flags.chastitydays = 0>>
<<set $npc_manager.flags.hascagekey = false>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<addItem _keyId>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> appears quiet disappointed as she hands you back your chastity key.<br>
<br>
"@@.npc_manager;Here you go, but... do be careful? I would hate for you to injure yourself whilst unprotected.@@"<br>
<br>
<<printThought "Now I almost feel guilty...">><br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: she proposes "special arrangement" for you to use penis milk and stay in chastity
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.agree>>
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
<<addTaskById 'manager_bed_milking_both'>>
<<else>>
<<addTaskById 'manager_bed_milking_penis'>>
<</if>>
<<else>>
<<addTaskById 'manager_bed_milking_vag'>>
<</if>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('bedroom_upgrades')>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('bed_bondage')>>
<<if $events.hasOwnProperty('rentEvent')>>
/% don't want to double up with rent event because... yeah %/
<<set _nextDate = setup.setNextDate($now, 1, 15, 0)>>
<<addEvent 'safeInstallEvent' _nextDate>>
<<else>>
<<addEvent 'safeInstallEvent_next'>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
"@@.npc_manager;So, obviously you need to remain <<if setup.isCage()>>caged<<else>>chaste<</if>> and under my control.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<printThought "Obviously.">>
<<else>>
<<printThought "Obviously? What?">>
<</if>>
<br><br>
"@@.npc_manager;That said, well, I am not uncaring as to your wanting to play with your new toy, but it needs to happen under... controlled conditions.<<if $player.flags.work_coffee.times_work_milk > 0>> I had thought that you working occasionally in Coffee Shop 52 would be sufficient to keep you from getting too... backed up but, well, you have always had an overachieving adventurous streak, haven't you?<</if>>@@"<br>
<br>
She smiles at you until you blush and look away.<br>
<br>
"@@.npc_manager;Since I cannot be there in person at your home to let out and lock you back up, we will settle for the next best thing — a remote digital presence! Being that I am quite busy, even on weekends, I think the best way to handle it would be for you to set up a camera and a screen over your bed — and no, your phone just will not do. The resolution is trash and I daresay my presence would not carry the proper... gravitas on such a small screen. Once you have that setup we can share a videocall and I can supervise you while you unlock your <<if setup.isCage()>>cage<<else>>belt<</if>> and put on the milker. I will arrange delivery for a remote controlled safe for you to store the extra chastity key and a couple other items to help things proceed smoothly.@@"<br>
<br>
She seems to think for a moment. "@@.npc_manager;Of course, with all that effort, well... we REALLY ought to do this properly. I mean I will not necessarily have time to devote to watching you for your entire session, and you calling back a half hour later seems quite inconvenient... no, I think the only way this works is if you hook yourself up before bed and then cage back up in the morning.@@"<br>
<br>
<<printThought "What... I can't sleep while being milked! I'd, like thrash off the bed!">><br>
<br>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear')>>
Immediately you recognise the "flaw" in your thought as <<=setup.getNpcName('npc_manager', 'formal')>> grins. "@@.npc_manager;Ah, I can see we have the same idea! Yes, you sleeping restrained is the only way this will be safe, and really, if we are going to all this trouble already why settle for just milking you down below? No, we are going to do this right, and that means you need a set of breast milkers<<if $player.body_ref.vagina>>, and a vaginal stimulator<</if>> as well — buy them if you do not already have such.@@"
<<else>>
"@@.npc_manager;Now, for this to be safe you would need to be securely bound to your bed, but I am sure a clever girl such as yourself can figure out a system for that, right?@@" She smiles. "@@.npc_manager;Now, since we are going to all this trouble anyway we might as well not waste any opportunities, so you will need to get a set of breast milkers<<if $player.body_ref.vagina>>, and a vaginal stimulator,<</if>> as well, if you do not already own such.@@"
<</if>>
<br><br>
"@@.npc_manager;So, there you have it — once you have a bedtime bondage solution, a complete milking kit and a camera and monitor installed in your bedroom, give me a call and I will help you "tuck in" for a nice... productive night!@@"<br>
<br>
<<printThought "Uh-oh, what did I just volunteer for? Well, I have some work and purchases to do first...">><br>
<br>
"@@.npc_manager;Oh, and one last thing... make sure you have something nice and cute to wear to bed... hmmm?@@"
<<else>>
"@@.npc_manager;Oh, you don't want to even hear my offer? Well, that is disappointing... maybe some other time.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask about chastity
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("cage")>>
<<applyExperience 'humiliation' 8 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemTypeWorn("cage")>>
You bring up the topic of your chastity <<=ps(setup.getNpcName("npc_manager","formal"))>> and gaze focuses.<br>
<br>
"@@.npc_manager;Chastity? But you are wearing no such thing... and what a thing to bring up unprompted! You must be getting into some very naughty things in your free time. In any case if you happen to own such a device I think it would be just delightful if you wore it to work, really keep you focused on your duties.@@"<br>
<br>
<<printThought "Wait, can she somehow see through my clothes, and the rest? What is going on with this job?">><br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You bring up the topic of your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. <<=setup.getNpcName("npc_manager","formal")>>
<<switch Math.floor($npc_manager.affection - $npc_manager.anger)>>
<<case -10 -9 -8 -7>>
glares at you, clearly annoyed. "@@.npc_manager;What about it? Other than it being seemingly the only positive thing about you.@@"
<<case -6 -5 -4 -3>>
sighs at you. "@@.npc_manager;What of the last bulwark keeping you on a proper path?@@"
<<case -2 -1 0 1 2>>
is nonplussed. "@@.npc_manager;And what would you like to say about your important accessory?@@"
<<case 3 4 5>>
raises an eyebrow in interest. "@@.npc_manager;Yes? What do you have to say about your <<if $fetish.sissy>>SISSI <</if>>secretary's best friend?@@"
<<case 6 7 8>>
smiles. "@@.npc_manager;Mmm, just the thought of it locked on, under your clothing... sorry what were you asking?@@"
<<case 9 10>>
beams at you with pride. "@@.npc_manager;Yes, what about that wonderful treasure protector?@@"
<<default>>
ERROR: unexpected affection-anger <<=($npc_manager.affection - $npc_manager.anger)>>
<</switch>>
<br><br>
[<<moveTo "event_manager_theme_cage_belt_2_bad_1" "Ask if you could stop wearing chastity." 60>>]<br>
<<if !setup.getItemFromType("cage").startsWith("sissyomatic_ultra_")>>
<<if setup.isCage()>>
[<<moveTo "event_manager_theme_cage_belt_switch" 'Ask if you could switch to a "belt" style device from your current cage.' 60>>]<br>
<<else>>
[<<moveTo "event_manager_theme_cage_belt_switch" 'Ask if you could switch to a "cage" style device from your current belt.' 60>>]<br>
<</if>>
<</if>>
<<switch setup.getItemFromType("cage")>>
<<case "c_cage_pink" "c_cage_steel" "chastity_belt_flat">>
<<if setup.getTotalValue("bondage") > 5 && setup.getTotalValue("submission") > 5>>
[<<moveTo "event_manager_theme_cage_belt_2_good_1" 'Ask if you might "upgrade" to a more secure chastity device?' 60>>]<br>
<<else>>
[@@.link_locked;Asking for an upgrade seems like the actions of a fetishistic slave... and that isn't you, right?@@]<br>
<</if>>
<<case "chastity_cage_tiny" "chastity_belt_tiny">>
<<if setup.getTotalValue("bondage") > 8>>
[<<moveTo "event_manager_theme_cage_belt_2_good_1" 'Ask if you might "upgrade" to a more secure chastity device?' 60>>]<br>
<<else>>
[@@.link_locked;You are not such a bondage fanatic as to want something even more "secure."@@]<br>
<</if>>
<<case "electric_chastity" "chastity_belt_electric" "chastity_belt_adv" "c_cage_advanced" "chastity_belt_adv_ultra" "sissyomatic" "sissyomatic_belt" "sissyomatic_med" "sissyomatic_belt_med" "sissyomatic_jumbo" "sissyomatic_belt_jumbo">>
<<if setup.getTotalValue("bondage") >= 10>>
[<<moveTo "event_manager_theme_cage_belt_2_good_1" 'Ask if you might "upgrade" to a more secure chastity device?' 60>>]<br>
<<else>>
[@@.link_locked;Something even more secure? You'd have to be practically obsessed with bondage to want that...@@]<br>
<</if>>
<</switch>>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
[<<moveTo "event_manager_theme_chastity_change_noop" "Just thank her for allowing you to participate in the chastity trial." 60>>]<br>
<<else>>
[<<moveTo "event_manager_theme_chastity_change_noop" "Just thank her for keeping you locked and discuss something else." 60>>]<br>
<</if>>
<</if>>
</div><<if $player.flags.chastity_style == "cage" || $player.body_ref.vagina && $fetish.chastity_vag || !$player.body_ref.balls>>
<<set $scene.origchastity = "cage">>
<<set $player.flags.chastity_style = "belt">>
<<else>>
<<set $scene.origchastity = "belt">>
<<set $player.flags.chastity_style = "cage">>
<</if>>
<<switch setup.getItemObjFromType("cage").chastityLvl>>
<<case 1>>
<<if setup.getItemObjFromType("cage").chastityType == "belt">>
<<set $scene.bonusUpgrade = $player.body.penissize[0] <= 1>>
<<if $scene.bonusUpgrade>>
<<set $scene.newcage = "chastity_cage_tiny">>
<<else>>
<<set $scene.newcage = "c_cage_pink">>
<</if>>
<<else>>
<<set $scene.newcage = "chastity_belt_flat">>
<</if>>
<<case 2>>
<<if setup.getItemObjFromType("cage").chastityType == "belt">>
<<set $scene.bonusUpgrade = $player.body.penissize[0] > 3>>
<<if $scene.bonusUpgrade>>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<if $player.body_ref.shrink_cage>>
<<set $scene.newcage = "chastity_cage_flat">>
<<else>>
<<set $scene.newcage = "chastity_cage_tiny">>
<</if>>
<</if>>
<<else>>
<<set $scene.newcage = "chastity_belt_tiny">>
<</if>>
<<case 3>>
<<if setup.getItemObjFromType("cage").chastityType == "belt">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<case 4>>
<<if setup.getItemObjFromType("cage").chastityType == "belt">>
<<set $scene.newcage = "c_cage_advanced">>
<<else>>
<<set $scene.newcage = "chastity_belt_adv">>
<</if>>
<<case 5>>
<<if setup.getItemObjFromType("cage").chastityType == "belt">>
<<set $scene.newcage = "sissyomatic">>
<<else>>
<<set $scene.newcage = "sissyomatic_belt">>
<</if>>
<</switch>>
<<set $scene.sizeRestricted = $player.body.penissize[0] <= 1 && !setup.getItemObj($scene.newcage).tags.includes('secure')>>
<<if !$scene.sizeRestricted>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<</if>>/*#
#desc: ask about chastity
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.stage == 1>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<elseif $player.body_ref.penis && $player.body_ref.vagina && $fetish.chastity_vag>>
<<elseif $player.flags.chastity_style == "belt" && !($player.body_ref.balls && $player.body_ref.penis)>>
<<elseif !$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks['task_chastity_trial'].finished>>
<<include "swapCageBelt">>
<<if !$scene.sizeRestricted>>
<<set _x = setup.addManagerEndlessTask()>>
<<include "setLastSeenCage">>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<</if>>
<<if $npc_manager.flags.trustplayerwithkey && !$npc_manager.flags.playerstayedinchastity && !setup.getItemObj($scene.newcage).tags.includes('restrictedkey') || !$npc_manager.flags.require_chastity>>
<<set _keyId = setup.getItemObj($scene.newcage).lockable[1]>>
<<addItem _keyId>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage == 1>>
You ask if you might be secured in a slightly different manner?<br>
<br>
She smiles. "@@.npc_manager;You mean switching to something more of a <<if setup.isCage()>>belt<<else>>cage<</if>>? Well, that seems perfectly fine, and makes me so happy to know that you recognise that security is mandatory for one such as yourself. Unfortunately I do not have an alternate device currently on hand. Give me a few days to make arrangements and ask me again if you are still interested in experiencing a different model of security.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $scene.sizeRestricted>>
She removes your chastity belt only to pause and shake her head. "@@.npc_manager;I am quite sorry. The cage equivalent of what you are presently wearing is, from a generalised security perspective, well... <<if $fetish.sph>>you are too small to fit in it<<else>>it would not properly fit you<</if>>. There are more advanced cage-type devices that would work but you merely asked for a style swap, not an upgrade, and on that I am, unfortunately, unable to presently accommodate you.@@"<br>
<br>
<<include "afterWorkManagerThemes">>
<<elseif $player.body_ref.vagina && $fetish.chastity_vag>>
She shakes her head. "@@.npc_manager;I am sorry, but a cage would be useless for your current anatomy. Only a belt can provide proper security for you now.@@"<br>
<br>
<<include "afterWorkManagerThemes">>
<<elseif !$player.body_ref.balls>>
She shakes her head. "@@.npc_manager;I am sorry, but without testicles a cage would just fall off. Only a belt can provide proper security for you now.@@"<br>
<br>
<<include "afterWorkManagerThemes">>
<<else>>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
She frowns. "@@.npc_manager;You silly girl — you signed yourself away for that chastity trial! Normally I would have no issue fitting you with a design more to your liking — if it was as secure, of course, but for the moment well... that is quite out of my hands.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<if $player.body_ref.vagina>>
She smiles.
<<if $fetish.chastity_vag && $player.body_ref.vagina>>
"@@.npc_manager;But of course! A belt would provide far better security given your current anatomy.@@"
<<elseif $player.flags.chastity_style == "belt">>
"@@.npc_manager;Yes... a belt would be quite the superior form of security for you.@@"
<<else>>
"@@.npc_manager;Just a cage? I suppose it is permissible. Locking your <<getWordMyPenis>> away is the priority, after all.@@"
<</if>>
<br><br>
<</if>>
Under her watchful eye, you remove your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>> and then wait as she approaches with key in one hand and your "new" device in the other.<br>
<br>
Gracing you with a smile, she carefully unlocks your current device,
<<if setup.getChastityLevel() == 5>>
the plug in your rear shrinking to leave you feeling strangely empty. Whistling softly, she <<if $fetish.sounding>>withdraws the slender tube from your front side and then <</if>>removes the device entirely.
<<else>>
<<if (setup.isItemEquipped("electric_chastity") || setup.isItemEquipped("chastity_belt_electric")) && $fetish.sounding>>
un-threading the narrow urethral plug before
<</if>>
<<if $player.flags.chastity_style =="cage">>unhooking the front shield and removing the belt<<else>>carefully removing the cage<</if>>.
<</if>>
<<if $scene.bonusUpgrade>>
<<if $scene.newcage == "chastity_cage_tiny" || $scene.newcage == "chastity_cage_flat">>
As you are revealed, she smiles.
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_manager;Oh, look at how small it has gotten! We will need to put you in a tiny cage indeed to make sure you don't slip out!@@"
<<else>>
"@@.npc_manager;Hmm, I believe we shall need to use a slightly different device given your "development" fortunately I planned ahead for this sort of thing.@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Oh, you are coming along just lovely. It looks so petite and cute, a perfect compliment to your wonderful development — you must be so proud!@@"
<<case 'none'>>
"@@.npc_manager;We will be using a slightly different style of device than you are used to, but trust me that it is perfectly secure.@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<elseif $scene.newcage == "electric_chastity">>
You stare at your new, intimidating device and she smiles. "@@.npc_manager;The direct equivalent to your prior belt is the wrong size to properly contain that naughty thing, but that device should be more than up to the task of keeping you in line. By which I mean it is electrified. I advise you to be on your best behaviour or... zap zap.@@" She winks playfully and a shiver goes down your spine.
<<else>>
ERROR: unexpected new cage: <<=$scene.newcage>>
<</if>>
<<else>>
Placing things to the side, she smiles. "@@.npc_manager;Just stay calm, we will have you locked away again in a jiffy, and you can keep the other device as well, see if you can collect them all!@@"
<</if>>
<br><br>
<<include "chastityUpgradeDescription">><br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
</div><<playerOrgasm>>
<<if $player.body_ref.vagina || !$player.body_ref.balls>>
<<set $player.flags.chastity_style = "belt">>
<</if>>
<<if $player.sec_style.submission.sissyomatic>>
<<set _basecage = "sissyomatic">>
<<elseif setup.getItemFromType("cage") != "">>
<<set _basecage = setup.getItemFromType("cage")>>
<<else>>
<<set _basecage = "none">>
<</if>>
<<if _basecage == "none">>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "c_cage_advanced">>
<<elseif $player.body_ref.penis && $player.body_ref.vagina>>
<<set $scene.newcage = "chastity_belt_adv_ultra">>
<<else>>
<<set $scene.newcage = "chastity_belt_adv">>
<</if>>
<<set $npc_manager.flags.knowAdvanced = true>>
<<else>>
<<switch setup.getItemObj(_basecage).chastityLvl>>
<<case 1>>
<<if $player.flags.chastity_style =="cage">>
<<if $player.body.penissize[0] > 3>>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_cage_tiny">>
<</if>>
<<else>>
<<set $scene.newcage = "chastity_belt_tiny">>
<</if>>
<<case 2>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<set $npc_manager.flags.hascagekey = true>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<<case 3>>
<<set $scene.newcage = _basecage>>
<<case 4>>
<<set $scene.newcage = _basecage>>
<<case 5>>
<<if setup.getItemObj(_basecage).chastityType == "belt">>
<<set $scene.newcage = "sissyomatic_belt">>
<<else>>
<<if $scene.action == "both">>
<<if $player.body_ref.shrink_cage>>
<<set $scene.newcage = "sissyomatic_ultra_flat">>
<<else>>
<<set $scene.newcage = "sissyomatic_ultra">>
<</if>>
<<elseif $player.body_ref.vagina>>
<<set $scene.newcage = "sissyomatic_fem">>
<<else>>
<<if $player.body_ref.shrink_cage>>
<<set $scene.newcage = "sissyomatic_flat">>
<<else>>
<<set $scene.newcage = "sissyomatic">>
<</if>>
<</if>>
<</if>>
<</switch>>
<</if>>
<<if $npc_manager.flags.trustplayerwithkey && (!$npc_manager.flags.require_chastity || !$npc_manager.flags.playerstayedinchastity)>>
<<set _keyId = setup.getItemObj($scene.newcage).lockable[1]>>
<<addItem _keyId>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<if !setup.checkItemOwned($scene.newcage)>>
<<addItem $scene.newcage>>
<<elseif !setup.checkItemInInventory($scene.newcage)>>
<<wardrobeToItem $scene.newcage>>
<</if>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<include "setLastSeenCage">><<switch $scene.newcage>>
<<case "chastity_belt_flat">>
You stand nervously as she brings the chastity belt up your legs, feeling the steel bands close around your waist and then the front shield pulled between your legs to lock you away and present nothing but shiny, flat metal<<if $player.body_ref.penis>> where your <<getWordMyPenis false>> was previously on caged display<</if>>.
<<case "c_cage_pink">>
Producing a <<if setup.getTotalValue("feminization") > 7>>delightfully <</if>>pink chastity cage she carefully tucks you inside before locking it closed. After your time belted it is a bit strange to look down and see something dangling there, especially something that now looks so helpless and cute.
<<case "chastity_cage_tiny">>
Small and shiny, you half wonder how you can even fit in it but fit you do, as she gently wraps the ring around your base and then locks things up, your <<getWordMyPenis false>> far more tightly constrained than it had been prior.
<<case "chastity_cage_flat">>
Small and shiny, the cage presses <<getWordMyPenis false>> nearly flat, leaving you with just a flat metal disc between your legs<<if $player.body_ref.balls>> with your balls dangling below<</if>>.
<<case "chastity_belt_tiny">>
Gleaming and smooth, the belt is even more low profile than your previous one. Pulling it up your legs, she locks it snug around your waist before arranging things below and securing the front shield to grant you a perfectly smooth, feminine profile.
<<case "electric_chastity">>
Of similar cramped size to your previous device, what makes this new one scarier is that, once she has you encased, she <<if $fetish.sounding>>lubricates a thin, curved tube, sliding it in through the tip of the cage where it mounts deep down your urethra. The intimate penetration makes you gasp and you shudder as she locks it in place with a gentle twist.<<else>>checks the battery levels. Just to make sure that you are always able to be punished by your <<=setup.getNpcName('npc_manager', 'title')>>.<</if>><br>
<br>
"@@.npc_manager;<<if $fetish.sounding>>And just to keep you mindful, don't<<else>>Don't<</if>> forget that this wonderful device is wired for electricity, so I can punish you at any time,, such a perfect tool for training up a <<if $fetish.sissy>>SISSI <</if>>secretary, would you not agree?@@"
<<case "chastity_belt_electric">>
The device is just a sleek and smooth as your prior model, but there is an extra degree of fiddling once <<=setup.getNpcName("npc_manager","formal")>> has it around your waist<<if $player.body_ref.penis>> and goes to work on arranging your <<getWordMyPenis false>><</if>>. <<if $fetish.sounding>>Greasing up a slender metal rod she slides it down your urethra. The penetration makes you gasp at the novel intimacy, but she<<else>>She<</if>> wastes no time in sealing everything up behind the mirror-polished front shield of the device.<br>
<br>
"@@.npc_manager;And just to keep you mindful, know that this wonderful device is wired for electricity, so I can punish you at any time, such a perfect tool for training up a <<if $fetish.sissy>>SISSI <</if>>secretary, would you not agree?@@"
<<case "chastity_belt_adv" "chastity_belt_adv_ultra">>
Unpacking the sleek, high-tech device she soon has you locked away and you marvel at how light and fitted it is, hugging the curve of your hips perfectly while keeping all of your "bits" contained, controlled, and out of sight.<br>
<br>
Finally she waves the fob in front of the belt, locking everything closed with a soft click that brings a smile to her face.
<<case "c_cage_advanced">>
You watch nervously as she carefully unpacks a high tech chastity cage. She gives you a moment to admire the sleek, almost futuristic design before bringing it between your legs, your <<getWordMyPenis false>> swiftly locked away in the state-of-the-art chastity "solution" — just as untouchable as before it is a bit weird to be so on display, with the weight gently tugging rather than the pressure holding everything against your body you had grown accustomed to with the belt.<br>
<br>
Finally she waves the fob in front of the cage, locking everything closed with a soft click that brings a smile to her face.
<<case "sissyomatic">>
You watch nervously as she unpacks the intimidating prototype. Working swift and efficient your balls and shaft are nestled away in their private prisons before she has you separate your thighs as she reaches down between.<br>
<br>
Your rear currently empty you feel almost eager for her to slide the familiar plug back into position; still gapey from its twins exit it slides home easily and then swells to fill you like an old friend, locking in place. You hold your breath as she <<if $fetish.sounding>>produces the final detail — the thin urethra plug sliding through the tip of the device and into your sensitive, vulnerable hole.<<else>>checks to make sure everything is in order by turning on the vibrator and then giving you a few test shocks.<</if>>
<<case "sissyomatic_belt" "sissyomatic_fem">>
She wraps the belt around your waist before bringing the crotch piece between your legs. She inserts the plug and your hole eagerly accepts the momentarily slender implement and you can't help but purr as it swells in that familiar way as it locks in place leaving you filled once again.<br>
<br>
The front seems a bit more complicated than the cage as she carefully arranges all of your bits to lie flush against your body before sealing you away behind the seamless front shield.
<<if $fetish.sounding>>
<br><br>
Of course you know that it still isn't over, but your heart still races as she carefully lubricates the urethra plug, the front shield momentarily parting for her to slide it into place so that you are "trapped" within and without by the integrated tube before the shield close and you are sealed away once more.
<</if>>
<<default>>
ERROR: unexpected new cage <<=$scene.newcage>>
<</switch>>
<br><br>
<<if $npc_manager.flags.trustplayerwithkey && !$npc_manager.flags.playerstayedinchastity || !$npc_manager.flags.require_chastity>>
Rising to her feet, she smiles and hands you the key to your new device. "@@.npc_manager;There you go, now be a good girl and keep good care of that — in a way I consider it... and what it unlocks, my property, so forgetting it at home or losing it would be well... perhaps someday you will see the light and just leave it with me to hold on to forever.@@"
<<elseif $npc_manager.flags.trustplayerwithkey>>
"@@.npc_manager;I will hold on to the key for the night. Better for you to put such things out of your mind and focus on adjusting to your wonderfully secure new home.@@" She toys with key as her eyes sparkle. "@@.npc_manager;You can always ask me for it later, but it really is so much better in my possession. You locked, me holding the key, the most perfect of arrangements.@@"
<<else>>
Rising to her feet, she smiles in satisfaction. "@@.npc_manager;No key for you, my dear... of course that is just how we both know it should be.@@"
<</if>>/*#
#desc: ask to be let out of chastity
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You nervously ask if, perhaps the requirement to wear a chastity device as part of your uniform might be removed?<br>
<br>
<<if $npc_manager.stage == 1>>
<<=setup.getNpcName("npc_manager","formal")>> sighs and shakes her head, appearing more amused than upset.<br>
<br>
"@@.npc_manager;The answer, of course, is no. Chastity is a wonderful addition to your uniform and removing it would surely harm your professional development. Do you have any more reasonable things you wish to talk about?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif !($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis)>>
<<=setup.getNpcName("npc_manager","formal")>> thinks for a moment and then slowly nods. "@@.npc_manager;Yes... I suppose you can be allowed that right. If you are certain?@@"<br>
<br>
[<<moveTo "event_manager_theme_cage_belt_2_remove_1" "Yes, you would like to forgo chastity." 60 "<<set $scene.chastity=false>>">>]<br>
[<<moveTo "event_manager_theme_cage_belt_2_remove_1" "On second thought, maybe being locked is safer." 60 "<<set $scene.chastity=true>>">>]
<<else>>
<<switch setup.getItemFromType("cage")>>
<<case "sissyomatic" "sissyomatic_med" "sissyomatic_jumbo" "sissyomatic_flat" "sissyomatic_flat_med" "sissyomatic_flat_jumbo" "sissyomatic_belt" "sissyomatic_belt_med" "sissyomatic_belt_jumbo" "sissyomatic_fem" "sissyomatic_fem_med" "sissyomatic_fem_jumbo" "sissyomatic_ultra" "sissyomatic_ultra_med" "sissyomatic_ultra_jumbo" "sissyomatic_ultra_flat" "sissyomatic_ultra_flat_med" "sissyomatic_ultra_flat_jumbo">>
<<if $player.sec_style.submission.permanent_key != "">>
She shakes her head. "@@.npc_manager;Removed? Hardly. Not only are you in the most secure device this company manufactures — you have properly and permanently surrendered the key to such. No, removal is disadvised on all metrics.@@"
<<elseif $npc_manager.affection < $npc_manager.anger>>
She smiles evilly. "@@.npc_manager;Removed? Hardly. You are in the most secure device this company manufactures — otherwise known as EXACTLY what you deserve and need.@@"
<<else>>
She smiles and shakes her head, seemingly amused. "@@.npc_manager;Removed? No... I think not. Why, you are in most secure device on the market. Not even on the market, it has not been released beyond the company! What could possibly be more perfect?@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<case "c_cage_advanced" "chastity_belt_adv" "chastity_belt_adv_ultra">>
<<if !$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks['task_chastity_trial'].finished>>
<<if $player.sec_style.submission.permanent_key != "">>
She shakes her head. "@@.npc_manager;Removed? No, no — you are wearing a wonderfully secure device, to which you have properly and permanently surrendered the key. No, removal is disadvised on all metrics.@@"
<<else>>
She smiles and shakes her head, seemingly amused. "@@.npc_manager;Removed? No, no, upgraded, perhaps... except you are already wearing a top of the line model... though I suppose there are some prototypes being worked on...@@"
<</if>>
<<else>>
She sighs and shakes her head. "@@.npc_manager;Foolish girl. You are already wearing what must be the most advanced device on the market. Plus, in any case, you are still in the midst of your trial.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<case "electric_chastity" "chastity_belt_electric" "jeweled_cage">>
<<if $npc_manager.affection < $npc_manager.anger>>
She laughs in your face. "@@.npc_manager;Removed? Oh my poor dear, I thought by now you might have learned, but it appears you may yet need another upgrade... be careful what you wish for, you may get it.@@"
<<else>>
She smiles and shakes her head. "@@.npc_manager;Oh you poor, foolish girl. Even for as much as you've learned you still... well, no matter just know that if you are not careful there yet remain solutions even more secure that what you currently enjoy.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<default>>
<<if $npc_manager.affection < $npc_manager.anger>>
<<if $npc_manager.anger > 5>>
She laughs in your face. "@@.npc_manager;Removed? No, no no, try enhanced! Yes, that is exactly what such a chronically misbehaving girl like you needs, something more secure to keep you focused.@@"
<<else>>
She squints at you in confusion. "@@.npc_manager;Removed? No, that is not right at all... in fact I think we ought to upgrade. Yes, something even more secure would be just the thing to get you back on track after you misbehaviour of late.@@"
<</if>>
<<elseif $npc_manager.affection > 5>>
She smiles and shakes her head. "@@.npc_manager;Ah, my poor, lovely thing. You had been doing so well, but it appears that additional measure must be taken. Yes, something more secure is just the reward you need to keep you on your current path to success.@@"
<<else>>
She sighs, seemingly more amused than angry. "@@.npc_manager;Just when I think you are coming around you do something like this... well, there is only one thing for it — I believe it is time you had a nice upgrade to your situation!@@"
<</if>>
<br><br>
[<<moveTo "event_manager_theme_cage_belt_2_bad_2" "What did I just do..." 60>>]
<</switch>>
<</if>>
</div>/*#
#desc: chastity upgraded because you asked out
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "chastityUpgrader">>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Reaching beneath her desk, <<=setup.getNpcName("npc_manager","formal")>> pulls out an ominous package. Walking around to loom in front of you, she waits for you to silently, and fearfully, remove your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>> and undergarments.<br>
<br>
With key in hand she removes your current device and places is to the side. "@@.npc_manager;You may hold on to this as a... memento of things past.@@"<br>
<br>
You bite your lip as she peels open the package to reveal your new device.
<<include "chastityUpgradeDescription">>
<br><br>
She gives you a gentle <<if setup.isCage()>>squeeze<<else>>pat<</if>> and you shudder at how the chastity device all but prevents you from feeling a thing.<br>
<br>
"@@.npc_manager;There, so much better! Now run along and enjoy your new accessory!@@"<br>
<br>
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>Fixing your skirt<<else>>Pulling up your pants<</if>>, you hurry out of the office as she softly laughs in amusement.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: allowed out of chastity
#status: FINISHED 0.8.1.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.chastity>>
<<set $npc_manager.flags.require_chastity = true>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<set $npc_manager.flags.require_chastity = false>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if setup.getChastityLevel() == 5>>
<<removeItem $scene.cage true>>
<<deleteItem $scene.cage>>
<<elseif $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
<<else>>
<<set $scene.addKey = $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey || $player.sec_style.submission.permanent_key != "" && $npc_manager.anger == 0 && $npc_manager.affection == 10>>
<<if $scene.addKey>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<addItem _keyId>>
<<set $npc_manager.flags.hascagekey = false>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.chastity>>
You admit that, thinking about it a bit more, you would rather continue your current chastity arrangement.<br>
<br>
"@@.npc_manager;Lovely, well I think you look just adorable in your <<if setup.isCage()>>cage<<else>>belt<</if>>, and I am of quite the happy mind knowing that you are locked and safe while at work.@@"
<<else>>
You confirm that you would like to forgo chastity as a requirement of your employment.<br>
<br>
<<if $fetish.chastity_penis>>
"@@.npc_manager;Very well. Though note that, should you decide to go back under the knife, I will expect you to be caged or belted once more.@@"
<<else>>
"@@.npc_manager;Very well. You may attend work without chastity starting tomorrow.@@"
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
She smiles and shakes her head. "@@.npc_manager;Of course my granting you such permission does not address that little trial you got yourself into... still, dealing with the consequences of your own actions is for you to handle.@@"
<<elseif $scene.isSissyomatic>>
"@@.npc_manager;Very well... of course the device you are wearing is still something of a prototype... so I am afraid you cannot be permitted to have control over the key and thus potentially remove it in an unsupervised manner.@@"<br>
<br>
She spends nearly a minute with the remote going through multiple steps of identity verification before your <<=setup.getItemName($scene.cage)>> unlocks and you hand it over.<br>
<br>
"@@.npc_manager;Feel free to indulge in more off-the-shelf chastity, if you wish, but to wear this device requires the company to retain full and complete control over any removal.@@"
<<elseif $scene.addKey>>
You point out that you can't exactly do that if she still has the key and <<=setup.getNpcName("npc_manager","formal")>> smiles in amusement. "@@.npc_manager;Right you are.@@" Theatrically she pulls out the key<<if $npc_manager.affection -$npc_manager.anger > 0>>, gives it a gentle kiss,<</if>> and then tosses it to you.<br>
<br>
"@@.npc_manager;Take care. The world can be quite the dangerous place for an unsecured <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<elseif !$npc_manager.flags.trustplayerwithkey>>
You point out that you can't exactly do that if she still has the key and <<=setup.getNpcName("npc_manager","formal")>> merely grins. "@@.npc_manager;Yes, I suppose that would be the case, hmm?@@"<br>
<br>
Her expression taunts you to say something further, but you know enough to hold your tongue.
<<else>>
"@@.npc_manager;I believe you already have the key so I suppose we shall see what happens in the morning, hmm?@@"
<</if>>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask for chastity upgrade
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.stage == 1>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<set $scene.firstTalkChastity = !$scene.hasOwnProperty('talkedChastity')>>
<<if $scene.firstTalkChastity>>
<<switch setup.getItemFromType("cage")>>
<<case "c_cage_pink" "c_cage_steel" "chastity_belt_flat">>
<<applyExperience 'bondage' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<setThreshold 'bondage' "other_bondage" "cage_upgrade">>
<<case "chastity_cage_tiny""chastity_belt_tiny">>
<<applyExperience 'bondage' 10 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'terrible' $SEEN_FRIEND>>
<<case "electric_chastity" "jeweled_cage" "chastity_belt_electric" "chastity_belt_adv" "c_cage_advanced" "chastity_belt_adv_ultra">>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 12 'little' $SEEN_FRIEND>>
<<setThreshold 'submission' "submissive_secretary" "futile_upgrade">>
<<case "sissyomatic" "sissyomatic_belt" "sissyomatic_med" "sissyomatic_belt_med" "sissyomatic_jumbo" "sissyomatic_belt_jumbo">>
<<applyExperience 'bondage' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 15 'little' $SEEN_FRIEND>>
<<setThreshold 'submission' "submissive_secretary" "futile_upgrade">>
<<set $scene.firstSissyomaticUnlock = $player.sec_style.submission.sissyomatic == "">>
<<if $scene.firstSissyomaticUnlock>>
<<set $player.sec_style.submission.sissyomatic = "enthusiast">>
<</if>>
<</switch>>
<<set $scene.talkedChastity = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage == 1>>
<<=setup.getNpcName("npc_manager","formal")>> looks initially surprised at your request for a more secure chastity device, but she soon smiles.<br>
<br>
"@@.npc_manager;What a request! And one I am sorely tempted to grant, but I think it would be best if you had a day or two of experience <<if setup.isCage()>>on the inside<<else>>under your belt<</if>>, as it were. Ask me again in a few days if you are still interested and I will see what we can do.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $scene.firstTalkChastity>>
You ask if you might possibly be equipped with a more secure manner of chastity device?<br>
<br>
<<switch setup.getItemFromType("cage")>>
<<case "sissyomatic" "sissyomatic_belt" "sissyomatic_med" "sissyomatic_belt_med" "sissyomatic_jumbo" "sissyomatic_belt_jumbo" "sissyomatic_fem" "sissyomatic_fem_med" "sissyomatic_fem_jumbo" "sissyomatic_ultra" "sissyomatic_ultra_med" "sissyomatic_ultra_jumbo">>
<<if $npc_manager.affection < $npc_manager.anger>>
She raises an eyebrow in surprise. "@@.npc_manager;What is this, some manner of reverse psychology? Well, it will not work, and in any case you are in just about the most secure device money can buy... in fact it cannot be purchased yet as it is still a prototype! So in that way you are even more fortunate.@@"
<<else>>
She smiles and shakes her head, seemingly amused. "@@.npc_manager;My sweet, wonderful pet... you are already in the most secure device money can buy... in fact it cannot be purchased yet as it is still a prototype! It delights me to no end that you would ask for more, but you have reached the limit of what can be produced.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<case "c_cage_advanced" "chastity_belt_adv" "chastity_belt_adv_ultra">>
<<if !$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks['task_chastity_trial'].finished>>
She smiles and shakes her head, seemingly amused. "@@.npc_manager;Upgraded? But you are already wearing a top of the line model... though I suppose there are some prototypes being worked on...@@"
<<else>>
She sighs and shakes her head. "@@.npc_manager;So ambitious! Not even done with your trial experiment and looking for more... I suppose there are some prototypes in development, but no, you are in the midst of something already, best to focus on completing it.@@"
<</if>>
<br><br>
<<if $npc_sissy_secretary.stage > 4 || $npc_work_doctor.flags.sissyomatic_offer>>
[<<moveTo "event_manager_theme_sissyomatic_1_alt" 'Ask about the <<=setup.getItemName("sissyomatic")>> you learned about from <<=setup.getNpcName("npc_work_doctor","formal")>>.' 60>>]<br>
<<elseif $npc_manager.stage >= 4>>
She thinks for a moment... and then smiles. "@@.npc_manager;Hmm, yes, this is a new device that the company has been working on. Very secure, very intense... I think it could be just the thing for you...@@"<br>
<br>
You consider this company, especially here on the upper floor, and what would be considered "very secure and intense..." You shudder... though whether in fear or anticipation, you could not say.<br>
<br>
[<<moveTo "event_manager_theme_sissyomatic_2" "Actually... you are happy with your current arrangement." 60 "<<set $scene.upgrade = false>>">>]<br>
<<if setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bondage") >= 10 && setup.getTotalValue("bdsm") >= 10>>
[<<moveTo "event_manager_theme_sissyomatic_2" "Yes, you want the ultimate in security." 60 "<<set $scene.upgrade = true>><<useClothSetPush 'tmp'>>">>]
<<else>>
[@@.link_locked;This is too much, you would have to be some sort of submissive bondage slave to ask to be locked in something like that!@@]
<</if>>
<<else>>
[<<moveTo "event_enthusiast_sissyomatic_1" 'Beg her please, you want, nay, NEED something more secure.' 60>>]<br>
<</if>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<case "electric_chastity" "chastity_belt_electric" "jeweled_cage">>
<<if $npc_manager.stage >= 4>>
She thinks for a moment... and then smiles. "@@.npc_manager;Hmm, yes, this is a new device that the company has been working on. Very secure, very intense... I think it could be just the thing for you...@@"<br>
<br>
You consider this company, especially here on the upper floor, and what would be considered "very secure and intense..." You shudder... though whether in fear or anticipation, you could not say.<br>
<br>
[<<moveTo "event_manager_theme_sissyomatic_2" "Actually... you are happy with your current arrangement." 60 "<<set $scene.upgrade = false>>">>]<br>
<<if setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bondage") >= 10 && setup.getTotalValue("bdsm") >= 10>>
[<<moveTo "event_manager_theme_sissyomatic_2" "Yes, you want the ultimate in security." 60 "<<set $scene.upgrade = true>><<useClothSetPush 'tmp'>>">>]
<<else>>
[@@.link_locked;This is too much, you would have to be some sort of submissive bondage slave to ask to be locked in something like that!@@]
<</if>>
<<else>>
<<if $npc_manager.affection < $npc_manager.anger>>
She chuckles in amusement. "@@.npc_manager;An upgrade? Do you think that such would somehow not continue to have the electric enhancements of that lovely thing? No, I think you are in wonderful shape as it is.@@"
<<else>>
She smiles and shakes her head. "@@.npc_manager;What ambition! Though I suppose I should expect as much from you by now. Unfortunately for you, I am quite satisfied with your current situation and so you are staying nice and locked just as you are.@@"
<</if>>
<br><br>
<<if $npc_sissy_secretary.stage > 4 || $npc_work_doctor.flags.sissyomatic_offer>>
[<<moveTo "event_manager_theme_sissyomatic_1_alt" 'Ask about the <<=setup.getItemName("sissyomatic")>> you learned about from <<=setup.getNpcName("npc_work_doctor","formal")>>.' 60>>]<br>
<</if>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<default>>
<<if $npc_manager.affection < $npc_manager.anger>>
<<if $npc_manager.anger > 5>>
She smiles. "@@.npc_manager;My, my, is this you turning over a new leaf? Certainly, a more secure device would be a perfect start to you working your way out of your current hole of disobedience.@@"
<<else>>
She seems momentarily surprised, but soon smiles. "@@.npc_manager;Oh what a delight. Certainly few things would make me happier than getting you locked up in something even more secure.@@"
<</if>>
<<elseif $npc_manager.affection > 5>>
She smiles with pride. "@@.npc_manager;Once again you astound me with your natural affinity for this job. Of course you can have something more secure and I am so delighted that you and I are in accord on this matter.@@"
<<else>>
Momentarily surprised she smiles warmly. "@@.npc_manager;Oh what a good girl you are. Certainly you may have something more secure, why that is a simply brilliant idea!@@"
<</if>>
<br><br>
[<<moveTo "event_manager_theme_cage_belt_2_good_2" "I hope I don't regret this..." 60>>]
<</switch>>
<<else>>
You bring up the idea of a chastity upgrade, but she smiles and shakes her head. "@@.npc_manager;We have already talked about this today, please, dear. Have some patience.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: chastity upgraded because you asked for it
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "chastityUpgrader">>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> reaches beneath her desk and pulls out an ominous package. Walking around to loom in front of you, she waits for you to silently, and with nervous anticipation, remove your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>> and undergarments.<br>
<br>
With key in hand she removes your current device and places is to the side. "@@.npc_manager;Of course what I am about to fit you with is far better, but you may hold on to this as a wonderful memento of things past.@@"<br>
<br>
You bite your lip as she peels open the package to reveal your new device.
<<include "chastityUpgradeDescription">>
<br><br>
She gives you a gentle <<if setup.isCage()>>squeeze<<else>>pat<</if>> and you shudder at how the chastity device all but prevents you from feeling a thing.<br>
<br>
"@@.npc_manager;Beautiful... simply beautiful. Now run along and enjoy your new accessory!@@"<br>
<br>
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>Fixing your skirt<<else>>Pulling up your pants<</if>>, you curtsy in gratitude and hurry out of the office as she watches you with pride.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask manager for old keys
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.keysInfo = setup.calcChastityKeys()>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemTypeWorn("cage")>>
You ask <<=setup.getNpcName("npc_manager","formal")>> about keys.<br>
<br>
"@@.npc_manager;Keys? Did you lock yourself out of your apartment? Truly I have no idea what you are talking about... though, now that you mention it, the thought of locking you up for safe keeping is quite an appealing one...@@"
<<else>>
You ask <<=setup.getNpcName("npc_manager","formal")>> if you could have the <<if $scene.keyCount > 1>>keys<<else>>key<</if>> to your older chastity devices?<br>
<br>
<<if $scene.keysInfo.chastityCount == 1>>
She raises an eyebrow. "@@.npc_manager;Older? You seem to be a bit confused, you have only ever had that one chastity device, so there are no "older" keys to be concerned with. Of course, perhaps if you upgraded to something even more secure, but that is a whole other discussion.@@"
<<elseif $scene.keysInfo.keyCount > 0>>
She appears to think on your question for a moment before giving a shrug.
<<if $npc_manager.flags.trustplayerwithkey>>
"@@.npc_manager;Given I trust you with the key to the device you are actually wearing I suppose it would be a bit silly to refuse. Though I was enjoying them as prizes of my prior conquest...@@"
<<else>>
"@@.npc_manager;An odd request, but I suppose there is no harm in it. Though I was enjoying them as prizes of my prior conquest...@@"
<</if>>
<br><br>
Unlocking a drawer in her desk she pulls out the old <<if $scene.keyCount > 1>>keys<<else>>key<</if>> and hands <<if $scene.keyCount > 1>>them<<else>>it<</if>> to you.
<<elseif $scene.keysInfo.notLevel>>
She thinks for a moment and shakes her head.
<<if $npc_manager.flags.trustplayerwithkey>>
"@@.npc_manager;No, I think that would be something of a distraction for you at this juncture. While I still trust you to be in possession of a key in principle well... there are limits.@@"
<<else>>
"@@.npc_manager;No, I do not think so. Not when that would put you in possession of key and prison of something so similar in security to what you are wearing... no that sort of distraction would not be at all good for your temperament.@@"
<</if>>
<<else>>
She shakes her head in bemusement. "@@.npc_manager;Silly girl, you already have all the keys! Well, all the keys you are allowed to have.@@"
<</if>>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: return manager's panties
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.returnPanties = setup.checkItemInInventory('manager_panties') && !setup.checkItemWorn("manager_panties")>>
<<if $scene.returnPanties>>
<<set $npc_manager.flags.panties.return = true>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<set $scene.pantiesClean = !$inventory.manager_panties.status.hasOwnProperty('dirty') || $inventory.manager_panties.status.dirty < 10>>
<<deleteItem 'manager_panties'>>
<<set _themeId = setup.findThemeId('npc_manager', 'other', 'theme_manager_panties')>>
<<if _themeId != -1>>
<<set $npc_manager.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.returnPanties>>
You produce the panties <<=setup.getNpcName("npc_manager","formal")>> forgot in your flat and place
<<if $scene.pantiesClean>>
them neatly folded on her desk as she raises an eyebrow in mild surprise. "@@.npc_manager;Oh? And you even cleaned them! How thoughtful.@@"<br>
<br>
Picking them up she slyly looks from them to you. "@@.npc_manager;So, tell me... did you try them on?@@"<br>
<br>
You bite your lip and blush as she laughs before you can respond. "@@.npc_manager;No matter, you are far beyond stealing a pair of panties — now you know that when you see a nice cute pair of undies you can just buy them yourself. But still, I appreciate you returning these, both for the act and for the symbolism in you understanding your role that these are for you to worship, but not to own.@@"
<<else>>
the waded up mess on her desk where it takes her a moment to recognise what they are. "@@.npc_manager;Hmm,@@" she states as she spreads them out and frowns at the stains. "@@.npc_manager;Credit for returning them but could you have at least cleaned them first?@@" She sighs. "@@.npc_manager;You may have made strides as a <<if $fetish.sissy>>SISSI <</if>>secretary but on the domestic front you have a ways yet to go.@@"<br>
<br>
Producing a plastic bag, she puts them away with a shrug. "@@.npc_manager;No matter. The important thing is that you knew that they did not belong to you and were, in fact, improper for you to even own.@@"
<</if>>
<br><br>
<<if $npc_manager.anger == 0 && $npc_manager.affection > 7>>
She pauses, and smiles slightly. "@@.npc_manager;Actually... you have been such a good girl... do you want to keep these, as a gift?@@"<br>
<br>
[<<moveTo "event_manager_return_panties_keep_1" "Yes, very much." 60 "<<set $scene.keep=true>>">>]<br>
[<<moveTo "event_manager_return_panties_keep_1" "Shake your head." 60 "<<set $scene.keep=false>>">>]<br>
<<else>>
Putting things away, she looks back at you, waiting to see if you have anything else for her.
<</if>>
<<elseif setup.checkItemWorn("manager_panties")>>
You are about to bring up the panties that <<=setup.getNpcName("npc_manager","formal")>> left at your house... when you remember that you're actually wearing them.<br>
<br>
<<printThought "Hmm... no, that seems like a bad idea. I could see trying to bring them back and return, but wearing them and talking about it? Discretion sounds like a smarter idea.">>
<<elseif $npc_manager.flags.panties.punish>>
You mention the panties <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;What are you talking about? You already wore them to work and got exactly what you deserved for that act! Silly girl, as if you could forget the taste of my used panties on your tongue while I turned that cute ass a nice bright red...@@" She smiles, clearly enjoying the memory.
<<elseif $npc_manager.flags.panties.return>>
You mention the panties <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;What of them? You were already a good girl returning them to their rightful owner, I really see nothing more to talk about in this matter.@@"
<<else>>
You attempt to return the panties <<=setup.getNpcName("npc_manager","formal")>> left behind at your flat only to realise that you forgot to bring them with you. Thinking better, you decide against bringing it up lest she decide that such is worthy of punishment.
<</if>>
<<if !($scene.returnPanties && $npc_manager.anger == 0 && $npc_manager.affection > 7)>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: offer to keep manager panties
#status: FINISHED 0.7.12.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.keep>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.keep>>
You blush and nod, your heart beating even faster as she grins.<br>
<br>
"@@.npc_manager;I thought as much,@@" she states, twirling the panties around one finger as she walks around to the front of the desk. "@@.npc_manager;In that case, well... I think I will let you have them, but you need to take them from me, personally.@@"<br>
<br>
Still grinning she sits on the edge of the desk, hiking her skirt and pulling panties as red as her hair to one side to expose her wet womanhood before she wads the panties up and shoves them inside, with but a single thin waist-strap dangling free. "@@.npc_manager;Well? Crawl over here and take your prize — and you had better not use your hands...@@"<br>
<br>
[<<moveTo "event_manager_return_panties_keep_2" "Do as she says." 180 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_manager_return_panties_keep_2" "Actually, you don't want her panties that bad." 180 "<<set $scene.obey=false>>">>]
<<else>>
You shake your head. Those are her panties, your duty was to return them.<br>
<br>
She smiles. "@@.npc_manager;Very good — a strong respect for your <<=ps(setup.getNpcName("npc_manager","title"))>> possessions is certainly healthy. Was there anything else?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: opportunity to keep manager panties
#status: FINISHED 0.7.12.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'humiliation' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<addItem 'manager_panties'>>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_manager">>
<<set _pantiesowner_formal = "formal">>
<<include "stealPanties">>
<<set $npc_manager.flags.panties.keep = true>>
<<else>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You drop to hands and knees and crawl forward as she grins down. Soon kneeling between her legs, you look up at her bashfully before leaning in, your teeth gently closing around the dangling strap and then pulling back, encountering surprising resistance as she squeezes down.<br>
<br>
You moan submissively as she makes you work for it, almost falling over backwards when the panties pop free to dangle below your chin. With a wide grin she leans down, rolling the wet panties back up to shove them into your mouth, covering your lips with her palm to keep you from spitting anything out — not that you would even think such a thing.<br>
<br>
"@@.npc_manager;Mmm, look at you, my depraved, submissive girl — you like that taste, hmm? You like the taste of your <<=ps(setup.getNpcName("npc_manager","title"))>> wet, used panties?@@"<br>
<br>
You moan and nod and she smiles even wider before letting go of your head. "@@.npc_manager;I think that will do for today — you may go, but do not spit out your prize out until you are out of my sight.@@"<br>
<br>
You nod, resisting the urge to drool as you return to your feet and curtsy before leaving the office.<br>
<br>
Outside the door you finally part your lips to let the sopping wad of panties fall into your hands, her taste lingering in your mouth as you shudder and pocket your reward.<br>
<br>
[<<moveTo "room_office_after_work" "Collect yourself." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You shake your head. Those are her panties, your duty was to return them.<br>
<br>
She smiles. "@@.npc_manager;Interesting, you ask for the thing, but when offered you are unwilling to expend effort to obtain it. Very disappointing, but it is your loss. I believe that will be all for today@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: ask about the retreat
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage < 4>>
<<=setup.getNpcName("npc_manager","formal")>> seems somewhat pensive as you ask her about the upcoming retreat. "@@.npc_manager;Yes... it is an event, and an... experience. The theory is to reward upper managers, and certain special guests, for a productive year and get them ready for the future... we shall see.@@"
<<else>>
"@@.npc_manager;You mean the retreat we already attended? Well, I believe what happened speaks for itself and I have no more to say on the matter at this time.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: make changes to sissyomatic
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the <<=setup.getItemTypeName('cage')>> device that is locked on (and in) you.<br>
<br>
<<switch $player.sec_style.submission.sissyomatic>>
<<case "strict">>
"@@.npc_manager;Ah, yes, how are you enjoying it? Regretting your showing up to work so ill-prepared? Or perhaps secretly grateful for the assistance?@@" <<=setup.getNpcName("npc_manager","formal")>> grins.
<<case "forced">>
"@@.npc_manager;Ah, yes, how are you enjoying it? Regretting your destructive act... or wishing you'd made the jump sooner?@@" <<=setup.getNpcName("npc_manager","formal")>> grins.
<<case "money">>
<<=setup.getNpcName("npc_manager","formal")>> chuckles. "@@.npc_manager;Getting your money's worth? What about it?@@"
<<case "voluntary" "enthusiast">>
<<=setup.getNpcName("npc_manager","formal")>> grins. "@@.npc_manager;Enjoying it? If not, well... you have none to blame but yourself.@@"
<<case "obedient">>
<<=setup.getNpcName("npc_manager","formal")>> smiles as she takes a moment to reminisce. "@@.npc_manager;Ah, such a wonderful protection for a lovely girl. You agreeing to that, well... it quite cemented how much you belong in your position.@@"
<<default>>
ERROR, unknown sec_style.female: <<=$player.sec_style.clothing.female>>
<</switch>>
<br><br>
[<<moveTo "event_manager_theme_sissyomatic_change_2_remove" "Ask to go back to a more reasonable chastity device." 60>>]<br>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_1" "Ask to re-size the plug." 60>>]<br>
<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<if setup.checkItemTypeTag('cage', ['inverted'])>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_invert_1" 'Ask if <<=setup.getNpcName("npc_manager","formal")>> could "un-invert" your cage?' 180 "<<set $scene.invert=false>>">>]
<<else>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_invert_1" 'Ask if <<=setup.getNpcName("npc_manager","formal")>> could "invert" your cage?' 180 "<<set $scene.invert=true>>">>]
<</if>>
<</if>>
</div>/*#
#desc: ask to downgrade sissyomatic
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if she could remove the <<=setup.getItemTypeName('cage')>> and put you back into a less extreme chastity device.<br>
<br>
"@@.npc_manager;Remove it? Do you have ANY idea how much paperwork that involves? No, no, it was specifically designed for long-term wear, and long term it is going to stay right where it belongs — keeping my lovely <<if $fetish.sissy>>SISSI <</if>>secretary safe and secure!@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: make changes to sissyomatic
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch setup.getItemFromType("cage")>>
<<case "sissyomatic" "sissyomatic_flat" "sissyomatic_belt" "sissyomatic_fem" "sissyomatic_ultra" "sissyomatic_ultra_flat">>
<<set $scene.curSize = 0>>
<<case "sissyomatic_med" "sissyomatic_flat_med" "sissyomatic_belt_med" "sissyomatic_fem_med" "sissyomatic_ultra_med" "sissyomatic_ultra_flat_med">>
<<set $scene.curSize = 1>>
<<case "sissyomatic_jumbo" "sissyomatic_flat_jumbo" "sissyomatic_belt_jumbo" "sissyomatic_fem_jumbo" "sissyomatic_ultra_jumbo" "sissyomatic_ultra_flat_jumbo">>
<<set $scene.curSize = 2>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() != 5>>
You start to ask <<=setup.getNpcName("npc_manager","formal")>> to adjust the plug in your ass... only to remember that you are no longer wearing such a "full-featured" chastity device any more.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You bring up the size-configurable plug built into the device presently locked into your ass.<br>
<br>
<<switch setup.getItemFromType("cage")>>
<<case "sissyomatic" "sissyomatic_flat" "sissyomatic_belt" "sissyomatic_fem" "sissyomatic_ultra" "sissyomatic_ultra_flat">>
"@@.npc_manager;Ah, yes, presently quite small, I do believe... are you interested in something a bit more... filling?@@"
<<case "sissyomatic_med" "sissyomatic_flat_med" "sissyomatic_belt_med" "sissyomatic_fem_med" "sissyomatic_ultra_med" "sissyomatic_ultra_flat_med">>
"@@.npc_manager;Yes, and a well-developed as it will be if it remains as filled as it is now... of course one does not want to get in a rut, so if you wished to change the size...@@"
<<case "sissyomatic_jumbo" "sissyomatic_flat_jumbo" "sissyomatic_belt_jumbo" "sissyomatic_fem_jumbo" "sissyomatic_ultra_jumbo" "sissyomatic_ultra_flat_jumbo">>
"@@.npc_manager;Locked and filling. Such ambition is commendable, but I would be understanding and amenable to giving you a reprieve if it has proven a bit much.@@"
<<default>>
ERROR: unexpected chastity device: <<=setup.getItemFromType("cage")>>
<</switch>>
<br><br>
<<if setup.getTotalValue("anal") < 5>>
<<if $scene.curSize == 0>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Keep it on the small setting." 60 "<<set $scene.newSize=0>>">>]<br>
<<else>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Say you would be most comfortable if it was on the small setting." 60 "<<set $scene.newSize=0>>">>]<br>
<</if>>
<<if $scene.curSize == 1>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Leave it medium-sized, as it is now." 60 "<<set $scene.newSize=1>>">>]<br>
<<else>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Say you would like a bit of fullness, and would prefer the medium setting." 60 "<<set $scene.newSize=1>>">>]<br>
<</if>>
[@@.link_locked;Large? No way, that would split you in half!@@]
<<elseif setup.getTotalValue("anal") > 15>>
[@@.link_locked;Small? No, your well-trained ass hungers for more.@@]<br>
<<if $scene.curSize == 1>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Leave it medium-sized, as it is now." 60 "<<set $scene.newSize=1>>">>]<br>
<<else>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Say you would like a bit of fullness, and would prefer the medium setting." 60 "<<set $scene.newSize=1>>">>]<br>
<</if>>
<<if $scene.curSize == 2>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Keep the size maxed out, like it is now." 60 "<<set $scene.newSize=2>>">>]<br>
<<else>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Say you want to practice your gaping and have it set to the maximum size." 60 "<<set $scene.newSize=2>>">>]
<</if>>
<<else>>
<<if $scene.curSize == 0>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Keep it on the small setting." 60 "<<set $scene.newSize=0>>">>]<br>
<<else>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Say you would be most comfortable if it was on the small setting." 60 "<<set $scene.newSize=0>>">>]<br>
<</if>>
<<if $scene.curSize == 1>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Leave it medium-sized, as it is now." 60 "<<set $scene.newSize=1>>">>]<br>
<<else>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Say you would like a bit of fullness, and would prefer the medium setting." 60 "<<set $scene.newSize=1>>">>]<br>
<</if>>
<<if $scene.curSize == 2>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Keep the size maxed out, like it is now." 60 "<<set $scene.newSize=2>>">>]<br>
<<else>>
[<<moveTo "event_manager_theme_sissyomatic_change_2_size_2" "Say you want to practice your gaping and have it set to the maximum size." 60 "<<set $scene.newSize=2>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: make changes to sissyomatic
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.newSize == $scene.curSize>>
<<if $scene.newSize == 3>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<else>>
<<set $scene.oldCage = setup.getItemFromType("cage")>>
<<if $scene.oldCage.startsWith("sissyomatic_belt")>>
<<set $scene.newCage = 'sissyomatic_belt'>>
<<elseif $scene.oldCage.startsWith("sissyomatic_fem")>>
<<set $scene.newCage = 'sissyomatic_fem'>>
<<elseif $scene.oldCage.startsWith("sissyomatic_ultra_flat")>>
<<set $scene.newCage = 'sissyomatic_ultra_flat'>>
<<elseif $scene.oldCage.startsWith("sissyomatic_ultra")>>
<<set $scene.newCage = 'sissyomatic_ultra'>>
<<elseif $scene.oldCage.startsWith("sissyomatic_flat")>>
<<set $scene.newCage = 'sissyomatic_flat'>>
<<else>>
<<set $scene.newCage = 'sissyomatic'>>
<</if>>
<<switch $scene.newSize>>
<<case 0>>
<<case 1>>
<<if $scene.newSize > $scene.curSize>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $scene.newCage = $scene.newCage + '_med'>>
<<case 2>>
<<if $scene.newSize > $scene.curSize>>
<<applyExperience 'anal' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<set $scene.newCage = $scene.newCage + '_jumbo'>>
<</switch>>
<<set $scene.oldCage = setup.getItemFromType("cage")>>
<<removeItem $scene.oldCage true>>
<<deleteItem $scene.oldCage>>
<<addItem $scene.newCage>>
<<wearItem $scene.newCage true>>
<<manipulateItem $scene.newCage 'lock' true>>
<<include "setLastSeenCage">>
<<if $scene.newSize > $scene.curSize>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.newSize == $scene.curSize>>
After thinking about it, you tell <<=setup.getNpcName("npc_manager","formal")>> you'd rather leave the plug the same size as it is now.<br>
<br>
She sighs. "@@.npc_manager;Then why are you wasting my time?@@"<br>
<br>
Clicking the remote, she sends an electric shock pulsing out from the plug,<<if $fetish.sounding>> the testicle cosies and the urethral insert and<<else>> and the testicle cosies as<</if>> you gasp in pain.<br>
<br>
"@@.npc_manager;Let that be a lesson for you.@@"
<<elseif $scene.newSize < $scene.curSize>>
<<=setup.getNpcName("npc_manager","formal")>> presses a button in response to your request and you sigh in relief, feeling the plug shrink to
<<switch $scene.newSize>>
<<case 0>>
a small, much more manageable, size.
<<case 1>>
a more moderate size.
<<default>>
ERROR: unexpected size: <<=$scene.newSize>>
<</switch>>
<br><br>
"@@.npc_manager;There.@@" She states, with a hint of disappointment. "@@.npc_manager;Let me know when you have had time to recover and are ready to resume training your capacity. Remember, a good <<if $fetish.sissy>>SISSI<<else>>girl<</if>> seeks to have both of her holes ready for use... especially when it comes to keeping our LARGE clients satisfied.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> presses a button in response to your request and you shudder as the plug swells
<<switch $scene.newSize>>
<<case 1>>
to a goodly size.<br>
<br>
"@@.npc_manager;There.@@" She states, with a grin. "@@.npc_manager;That should keep you... occupied. Do come back when you are ready to take the next step and assume the full responsibilities of an eager butt-slut.@@"
<<case 2>>
to a truly massive size.<br>
<br>
"@@.npc_manager;Mmmm, feeling full now? All gaping and ready to serve... wonderful.@@"
<<default>>
ERROR: unexpected size: <<=$scene.newSize>>
<</switch>>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: make changes to sissyomatic
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName("npc_manager","formal")>> for
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
allowing you to participate in the chastity trial.<br>
<br>
"@@.npc_manager;Of course! Now, obviously I would prefer to be in control of the situation... but the most important thing is keeping you secure and focused on the task of being the best <<if $fetish.sissy>>SISSI <</if>>Secretary you can be. And once that trial is over, well...@@" Her voice trails off as she smiles... and you feel a shiver of anticipation run down your spine to meet a thrill of excitement within your prison.
<<else>>
enforcing your chastity situation and she smiles.<br>
<br>
"@@.npc_manager;Of course! And it so delights me to know that you appreciate what I am doing for you. A secured <<if $fetish.sissy>>SISSI <</if>>Secretary is a suitable <<if $fetish.sissy>>SISSI <</if>>Secretary. I hope to watch you embrace future requirements as enthusiastically.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask about piercing while in chastity
#status: FINISHED 0.7.10.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.piercings.penis>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set _themeId = setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_piercing')>>
<<set $npc_manager.themes.chastity_general[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemTypeWorn("cage")>>
You bring up the idea of getting a genital piercing and <<=setup.getNpcName("npc_manager","formal")>> merely smiles. "@@.npc_manager;A lovely idea, and I quite appreciate your asking my permission. Consider it granted.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $player.piercings.penis>>
You bring up the idea of getting pierced within your chastity device and <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Lovely, isn't it? All nailed down and locked up... truly the way all such things should be... and just the sort of thing to justify your being permitted control of your key... perhaps the only thing.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $currentTasks.hasOwnProperty('event_doctor_first_appointment') && !$currentTasks.event_doctor_first_appointment.finished && setup.daysToDate($now,setup.getTaskDueDate('event_doctor_first_appointment')) == 0 || $currentTasks.hasOwnProperty('event_doctor_reup') && setup.daysToDate($now,setup.getTaskDueDate('event_doctor_reup')) == 0>>
You bring up the idea of getting a genital piercing and <<=setup.getNpcName("npc_manager","formal")>> merely smiles. "@@.npc_manager;A lovely idea... but I believe you have an appointment with <<=setup.getNpcName("npc_work_doctor","formal")>> this evening so... perhaps we could discuss this some other time?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif setup.getTotalValue("bdsm") >= 10>>
You bring up that you were thinking of getting your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>clit<</if>> pierced, but that, obviously, your chastity device is somewhat in the way.<br>
<br>
She smiles.
<<if $player.body_ref.penis>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_manager;Oh, how delicious... the thought of a sharp needle piercing your pathetic little thing... yes, that sounds like quite the lovely idea.@@"
<<else>>
"@@.npc_manager;Oh, how delicious... the thought of a sharp needle piercing your oh so sensitive bits... yes, that sounds like quite the lovely idea.@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Oh, how delicious... the thought of a sharp needle piercing your lovely thing... yes, that sounds like quite the lovely idea.@@"
<<case 'none'>>
"@@.npc_manager;Oh, how delicious... the thought of a sharp needle piercing your oh so sensitive bits... yes, that sounds like quite the lovely idea.@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<else>>
"@@.npc_manager;Kinky, but it can improve sensitivity, and enable some fun predicaments...@@"
<</if>>
<br><br>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemOwned(_keyId)>>
She chuckles. "@@.npc_manager;Ah, look at me, getting all fanciful. Of course you have your key so you are quite free to do whatever you want, on your own time. All that matters is that you are properly secured while on the job, if you want to spice things up inside your prison, well... that is totally your prerogative.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You twitch within your prison at her description as she rises to her feet and walks towards the door.<br>
<br>
"@@.npc_manager;Well, come along, then. If you want it done, let us make haste.@@"<br>
<br>
[<<moveTo "event_manager_theme_chastity_piercing_2" "Follow her." 600 "<<set $scene.pierce=true>>">>]<br>
[<<moveTo "event_manager_theme_chastity_piercing_2" "On second thought..." 600 "<<set $scene.pierce=false>>">>]
<</if>>
<<else>>
You are about to ask <<=setup.getNpcName("npc_manager","formal")>> about getting out of your chastity device for a piercing but, looking across the room at her intimidating expression you have second thoughts.<br>
<br>
<<if $player.body_ref.penis>>
<<printThought "Piercing my <<getWordMyPenis false>>? No... that sounds way too painful, what was I even thinking?">>
<<else>>
<<printThought "Piercing my clit? No... that sounds way too painful, what was I even thinking?">>
<</if>>
<br>
<br>
"@@.npc_manager;Sorry, was there something you wanted to say?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: manager supervises piercing in chastity
#status: FINISHED 0.7.10.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pierce>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<set $player.piercings.penis = true>>
<<set $shopStatus['tattoo_parlor'].unlocked_inventory.pushUnique('penis')>>
<<addItem 'prince_albert'>>
<<wearItem 'prince_albert' true>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<removeItem $scene.cage true>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bondage' 15 'normal' $SEEN_FRIEND>>
<<set _themeId = setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_piercing')>>
<<set $npc_manager.themes.chastity_general[_themeId].repeatable = false>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<if $scene.pierce>>
<<set $player.location to "Basement Tattoo Parlour">>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pierce>>
<<createAdvBGR "./images/locations/basement_tattoo.png">>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.pierce>>
You obediently fall in behind your <<=setup.getNpcName("npc_manager","title")>> as she leads you to the elevator, the machine recognising her authorisation to take you down, down deep into the building's basement levels. Walking across the tile floor of the subterranean hallway <<=ps(setup.getNpcName("npc_manager","formal"))>> heels echo ominously and she leads you directly to a heavy, almost vault-like door that only swings open after verifying her identity.<br>
<br>
The room beyond is occupied solely by a padded platform above which looms a single robotic arm. You nervously bite your lip as you are helped up onto the platform and then systematically strapped down. Only after you are completely immobilised; including a padded strap over your mouth to effectively gag you, does she move between your legs to gently unlock and remove your chastity device.<br>
<br>
"@@.npc_manager;My lovely brave girl...@@" She states softly, brushing your cheek and smiling down at you as the robotic arm swings into motion and <<=ps(setup.getNpcName("npc_manager","formal"))>> focus diverts downward with clear anticipation.<br>
<br>
Straining slightly against your bonds you try to remain calm as soft mechanical digits take hold of you, lifting things away from your body and holding them still<<if $fetish.sounding>>before, after slowly and gently threading down your urethra it happens<</if>>. With swift mechanical precision, the needle stabs through and you gasp; the pain less than you might have imagined, replaced a moment later by an odd coolness as the piercing itself is put in place and some sort of thick medical gel envelops the area to accelerate healing.<br>
<br>
"@@.npc_manager;Even lovelier than I was picturing,@@" <<=setup.getNpcName("npc_manager","formal")>> states, taking a moment to admire you before gently slipping the chastity device back onto you.<br>
<br>
Pierced and imprisoned you feel even more owned and controlled as she goes about releasing your restraints while humming pleasantly.<br>
<br>
Back on your feet you're a bit light-headed but your mood is unmistakably buoyed by <<=ps(setup.getNpcName("npc_manager","formal"))>> smiling excitement. Leaving the robotic apparatus behind <<=setup.getNpcName("npc_manager","formal")>> leads the way back to the elevator, bidding you good-day at the lobby before she continues back up to her office.<br>
<br>
<<printThought "Sometimes I'd swear she lives in this building...">><br>
<br>
You can still feel your new adornment with every movement, its presence also drawing attention back to the chastity device you had otherwise became quite accustomed to. You take a deep breath and head across the lobby, walking a little taller with pride at your new enhancement.<br>
<br>
[<<moveTo "company_lobby" "Lobby." 60 "<<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>>">>]
<<else>>
You hurriedly reply that, actually, you were just speaking, like... hypothetically. <<=setup.getNpcName("npc_manager","formal")>> stops at the door and frowns. "@@.npc_manager;Well that was quite silly to bring up then... still, it is your body.@@" She storms back to her desk and glares at you. "@@.npc_manager;Will there be anything else today?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: talk to manager about your new bedroom
#status: FINISHED 0.7.11.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the bedroom that you were "won" from the party cum contest.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Yes, well... you were so tuckered out from your victory, but I wanted you to wake up to enjoy your prize. I thought that style would be just perfect for you, do you agree?@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Yes, well... you were so tuckered out from your victory, but I wanted you to wake up to enjoy your prize. With your recent misbehaviour I thought a home environment maximally attuned to proper mentality would help nudge you in a more positive direction.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_bedroom_2" "Say it's perfect<<if $fetish.sissy>> for a sissy like yourself<</if>>." 180 "<<set $scene.like=true>>">>]<br>
[<<moveTo "event_manager_bedroom_2" "Say it is not the style you had in mind." 180 "<<set $scene.like=false>>">>]
</div>/*#
#desc: thoughts about your new bedroom
#status: FINISHED 0.7.11.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.like>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<set $npc_landlord.flags.remodel = true>>
<<elseif $npc_manager.affection < 10 || $npc_manager.anger > 0>>
<<set $npc_landlord.flags.remodel = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.like>>
You smile and tell <<=setup.getNpcName("npc_manager","formal")>> that the bedroom she picked out for you is just perfect — better than anything you could have imagined!<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<=setup.getNpcName("npc_manager","formal")>> smiles back. "@@.npc_manager;While expected, that is still lovely to hear. I hope you think of me — and how much I cherish you being my good girl, whenever you look upon it.@@"<br>
<br>
You promise her that you absolutely will.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;As expected... though it is good to hear you accepting who you are. Let us hope that this marks a continued shift towards improvement in your behaviour.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $npc_manager.affection < 10 || $npc_manager.anger > 0>>
She shrugs. "@@.npc_manager;See, this is just the sort of ungrateful disobedience I thought to curb. I suppose you could have it changed yourself, if you had the credits, but that will be up to you. I can merely guide your progress, I cannot do everything for you.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You reply that, while you appreciate the thought... the bedroom is not quite the "perfect bedroom" that you had in mind when you sought to win the contest.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks slightly hurt, her voice almost conciliatory? "@@.npc_manager;I am sorry I thought... well, no matter. Please, you have been such a good girl, let me fix this for you — what style would you prefer?@@"<br>
<br>
[<<moveTo "event_manager_bedroom_3" 'Say you actually liked your original room.' 180 "<<set $scene.style=0>>">>]<br>
[<<moveTo "event_manager_bedroom_3" 'Say you would prefer something Gothic.' 180 "<<set $scene.style=1>>">>]<br>
[<<moveTo "event_manager_bedroom_3" 'Say you would prefer something more "Classical".' 180 "<<set $scene.style=3>>">>]<br>
[<<moveTo "event_manager_bedroom_3" 'Say you would prefer something more "Punk Rock".' 180 "<<set $scene.style=4>>">>]
<</if>>
</div>/*#
#desc: manager re-remodels your bedroom
#status: FINISHED 0.7.11.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addWorkEvent 'bedroom_install_manager'>>
<<set $status_flat.future_bedroom = $scene.style>>
<<set $npc_landlord.flags.remodel = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 0>>
You explain that, really you would prefer the familiarity of your old room.<br>
<br>
"@@.npc_manager;I see... well, sometimes there is a comfort in the familiar. I suppose you merely entered the contest for fun? How lovely.@@"
<<case 1>>
You explain that you are feeling a more dark, gothic style.<br>
<br>
"@@.npc_manager;Interesting. I can certainly see the appeal...@@"
<<case 3>>
You explain that you would prefer a more "high class" style of decoration.<br>
<br>
"@@.npc_manager;I see, certainly I understand such appreciation for the classics. So much of modern society is... disposable flash. There is something to be said about the sort of older adornments that never goes out of style.@@"
<<case 4>>
You explain that you would prefer a more "fun" punk-rock style of decorating.<br>
<br>
"@@.npc_manager;Interesting. If you were not such a perfect assistant I might be concerned at such a metaphorical rebellious streak...@@"
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
She seems to think for a moment before nodding. "@@.npc_manager;Yes, in light of your near-perfect behaviour, I will attend to changing things back. Not tonight, of course, it is far too late, I will arrange it while you are working so that you have a lovely surprise to come home to.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager informs you your new bedroom is installed
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $status_flat.bedroom = $status_flat.future_bedroom>>
<<deleteMember $status_flat 'future_bedroom'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> sends you a message that your "re-remodelled" bedroom is complete and will be ready for you to enjoy upon your return home.<br>
<br>
You thank her again for going so out of your way to make you happy.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: attempt to surrender your key permanently
#status: FINISHED 0.7.11.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.submission.permanent_key != "">>
<<if $npc_manager.stage < 3>>
<<applyExperience 'submission' 10 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemTypeWorn("cage")>>
You ask if <<=setup.getNpcName("npc_manager","formal")>> would be willing to be your permanent keyholder?<br>
<br>
She shakes her head, in a mix of amusement and a hint of disappointment. "@@.npc_manager;Giving up one's key requires a lock for which that key fits... perhaps if you were to resume chastity we might discuss such matters, otherwise it would be quite meaningless.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $player.sec_style.submission.permanent_key != "">>
You ask if <<=setup.getNpcName("npc_manager","formal")>> would be willing to be your permanent keyholder?<br>
<br>
She appears momentarily confused and then shakes her head in amusement. "@@.npc_manager;Why, you silly thing! I already am. Yes, locked forever... that is what you are, and that is simply perfection!@@"<br>
<br>
You shiver at her comment, the casual summary of your permanently chaste and bound situation.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
You ask <<=setup.getNpcName("npc_manager","formal")>> if she would be willing to accept permanent ownership of your chastity key?<br>
<br>
<<if $npc_manager.stage < 3>>
She sighs and shakes her head. "@@.npc_manager;Would that I could. Unfortunately company policy in regards to probationary employees is quite clear. While they may be kept in chastity as needed, as determined by their immediate supervisor, they must technically be afforded the possibility of retaining control of their key when "off the clock," pursuant to temporary disciplinary actions, of course.@@" You can tell she is quite disappointed by this apparent regulation. "@@.npc_manager;Now, were you my full-time <<if $fetish.sissy>>SISSI <</if>>Secretary, well...@@" She smiles, and you shiver submissively.<br>
<br>
<<printThought "How deep do things go at this company... and how deep am I willing to dive?">><br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
"@@.npc_manager;Permanent? You mean that you wish me to be your keyholder not just day to day, but... forever?@@" She seems unable to keep a wide, gleeful grin from spreading across her face
<<if $npc_manager.anger > 0>>
"@@.npc_manager;All those little misbehaviours... you really are just a submissive brat who secretly knows EXACTLY what she needs...@@"
<<else>>
"@@.npc_manager;My, my... you really are <<if $npc_manager.affection >= 10>>the perfect<<else>>the sweetest<</if>> thing...@@"
<</if>>
<br><br>
You shiver as she walks out from behind her desk and looks down at you.<br>
<br>
"@@.npc_manager;Of course I accept but... well, this is such a significant request I feel the need to make sure. Remove your clothes. Show me the prison you are ready to remain in permanently... then beg me to be your warden forever hence.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10 && setup.getWillpower() > 0>>
[<<moveTo "event_manager_theme_key_permanent_2" 'Do as she commands.' 180 "<<set $scene.obey=true>><<spendWillpower 1>>">>] <<hint $options "This level of submission will take an act of will...">><br>
<<elseif setup.getWillpower() > 1>>
[<<moveTo "event_manager_theme_key_permanent_2" "Do as she commands." 600 "<<set $scene.obey=true>><<spendWillpower 2>>">>] <<hint $options "This level of submission will take a might act of will...">><br>
<<else>>
[@@.link_locked;Presented with the reality of things you do not have the will to commit to such an act of submission.@@]<br>
<</if>>
[<<moveTo "event_manager_theme_key_permanent_2" "On second thought... maybe you shouldn't give up your key forever." 180 "<<set $scene.obey=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: agree to surrender your key permanently (voluntary)
#status: FINISHED 0.7.11.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $player.willpower.bonus += 1>>
<<addPopUpText "will" "Your maximum willpower increases.">>
<<set $player.sec_style.submission.permanent_key = "voluntary">>
<<include "addMilkingTopic">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11.5'
6
'event_psychiatrist_session_perm_key_1'
false
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_other_keyholder'
0
'theme_manager_discuss_other_keyholder_1'
true
>>
<<setThreshold 'submission' 'submissive_secretary' 'key_permanent'>>
<<applyExperience 'submission' 15 'unbelievable' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 5>>
<<useClothSetPush 'tmp'>>
<<removeEverything>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.keyInInventory = setup.checkItemInInventory($scene.keyId)>>
<<deleteItem _keyId>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<else>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You do as your <<=setup.getNpcName("npc_manager","title")>> commands, shedding your clothes and then lowering to the ground, your legs spread in helpless exposure, your <<if setup.isCage()>>cage<<else>>belt<</if>> gleaming between your legs as you offer yourself for her.<br>
<br>
"@@.npc_manager;Beautiful.@@" She states, standing over you and looking down with a smile.
<<if $scene.keyInInventory>>
She produces the key and hands it to you as you squint in confusion.<br>
<br>
<</if>>
"@@.npc_manager;Now. Give me the key.@@"<br>
<br>
You shiver, unable to tear your gaze away from her satisfied, dominate smile as you extend the key towards her.<br>
<br>
She reaches down, a spark passing between your fingers as she takes possession of the key for the last time.<br>
<br>
"@@.npc_manager;Perfection... and trust me that I will be taking VERY good care of this.@@" She pockets the key with a smile. "@@.npc_manager;Yes, I take this responsibility VERY seriously.@@"<br>
<br>
You tremble as she savours the moment, her eyes hungrily scanning you, her pet, her slave... her locked property.<br>
<br>
"@@.npc_manager;Wonderful. You may dress, and thank you. Though it may be hard... in the long term you will not regret this decision.@@"<br>
<br>
[<<moveTo "event_manager_theme_key_permanent_3" "Continue." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
Faced with the reality of a potential eternity in chastity you blink and shake your head, admitting that you are not yet ready for this level of commitment.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> hides her disappointment as she nods. "@@.npc_manager;I see. Well, it is certainly quite the commitment, but one that I believe would be oh-so-good for you. Still, if you are not ready, you are not ready, submission giving willingly is such a delicious meal that I am prepared to wait.@@"<br>
<br>
You shiver at the unspoken implication that she might change her mind about "waiting." <br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: dress after surrender your key
#status: FINISHED 0.7.11.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _x = setup.addManagerEndlessTask()>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your heart racing you put your clothes back on as <<=setup.getNpcName("npc_manager","formal")>> returns to behind her desk, a satisfied smile on her lips.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: talk to manager about npc_psychiatrist
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> what she thinks of your therapist, <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
<<if $npc_manager.stage <= 1>>
"@@.npc_manager;She is a highly qualified medical professional who the company has selected to partner with for the betterment of its employees. Medical privacy laws say that your interactions are to be kept confidential outside of certain very narrow categories. Symmetrically, it is not my place to venture into that portion of your life.@@"<br>
<br>
<<printThought "That was... weirdly legalistic, but I guess I'm a brand-new employee so she's going to toe the company line on this sort of thing.">>
<<elseif $npc_manager.stage == 2>>
<<if $npc_manager.anger < 3 && $npc_manager.affection > 7>>
She sighs and shakes her head. "@@.npc_manager;At this point in your career I think you should focus on whatever you can do to better yourself. You still have to prove your worthiness of assuming your position as a full-fledged <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
<<printThought "At this point? I wonder if her response would change if I wasn't still in my probationary period?">>
<<elseif $npc_manager.anger > $npc_manager.affection>>
Her gaze narrows, her response brusque and sounding almost rehearsed. "@@.npc_manager;She is a highly qualified medical professional who the company has selected to partner with for the betterment of its employees. Medical privacy laws say that your interactions are to be kept confidential outside of certain very narrow categories. Symmetrically, it is not my place to venture into that portion of your life.@@"<br>
<br>
<<printThought "Hmm... I wonder if she might open up if she was less angry with me?">>
<<else>>
She sighs and shakes her head. "@@.npc_manager;All I can say on that matter is she is a highly qualified medical professional who the company has selected to partner with for the betterment of its employees. Medical privacy laws say that your interactions are to be kept confidential outside of certain very narrow categories. Symmetrically, it is not my place to venture into that portion of your life.@@"<br>
<br>
<<printThought "Hmm... I feel like there's something there... maybe if she liked me better?">>
<</if>>
<<else>>
<<if $npc_manager.anger < 3 && $npc_manager.affection > 7>>
She thinks for a moment and then smiles. "@@.npc_manager;<<=setup.getNpcName('npc_psychiatrist', 'first')>> is a highly skilled professional — one of the top in her field, despite her young age. She actually used to work for the company directly but there was a... separation due to a divergence of interests. You will find her an honourable woman, and an enthusiastic and useful resource for those matters in which she has expertise.@@"<br>
<br>
<<printThought "Hmm... I get the feeling there's some back-story there that she doesn't want to speak about at work...">>
<<elseif $npc_manager.anger > $npc_manager.affection>>
Her gaze narrows, her response brusque and sounding almost rehearsed. "@@.npc_manager;She is a highly qualified medical professional who the company has selected to partner with for the betterment of its employees. Medical privacy laws say that your interactions are to be kept confidential outside of certain very narrow categories. Symmetrically, it is not my place to venture into that portion of your life.@@"<br>
<br>
<<printThought "Hmm... I wonder if she might open up if she was less angry with me?">>
<<else>>
She sighs and shakes her head. "@@.npc_manager;All I can say on that matter is she is a highly qualified medical professional who the company has selected to partner with for the betterment of its employees. Medical privacy laws say that your interactions are to be kept confidential outside of certain very narrow categories. Symmetrically, it is not my place to venture into that portion of your life.@@"<br>
<br>
<<printThought "Hmm... I feel like there's something there... maybe if she liked me better?">>
<</if>>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: talk to manager about experimental therapy
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $npc_psychiatrist.hypnosis>>
<<case 0>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about the "experimental therapy" study that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> invited you to join.<br>
<br>
<<if $npc_manager.anger < 3 && $npc_manager.affection > 7>>
"@@.npc_manager;Well she is a very highly-skilled professional. If the both of you have gone over the details and you think that you would be a good candidate for her therapy, well, that is your decision to make.@@"
<<else>>
"@@.npc_manager;So long as it does not negatively impact your work for me, I see no problem with you assisting her in such matters.@@"<br>
<br>
<<printThought "That feels so dismissive... I wonder if she might have a more nuanced opinion if she liked me more?">>
<</if>>
<<case 1 2 3>>
<<if $npc_psychiatrist.hypnosis == 1>>
You bring up the "experimental therapy" session that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> performed on you, only to realise you have little to talk about as you cannot seem to remember what the therapy involved.
<<else>>
You bring up the "experimental therapy" sessions that you continue to take with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, only to realise you have little to talk about as you cannot seem to remember what the therapy involved.
<</if>>
<br><br>
<<if $npc_manager.anger < 3 && $npc_manager.affection > 7>>
"@@.npc_manager;Interesting, well, she is a master of the mental arts... and far more skilled at helping shape people than others at this company. If you feel that it is helping you, you should feel free to pursue this path.@@"<br>
<br>
<<if $npc_work_doctor.profile>>
<<printThought "Others... does she mean <<=setup.getNpcName('npc_work_doctor', 'formal')>>?">>
<<else>>
<<printThought "Others... I wonder who she means?">>
<</if>>
<<else>>
"@@.npc_manager;So long as it does not negatively impact your work for me, I see no problem with you continuing to assist her in such matters.@@"<br>
<br>
<<printThought "That feels so dismissive... I wonder if she might have a more nuanced opinion if she liked me more?">>
<</if>>
<<case 4>>
You bring up the continued "experimental therapy" sessions you have been taking with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. While you still struggle to remember details you note that you believe the most recent sessions have involved you having more choice to guide the focus of the therapy.<br>
<br>
<<if $npc_manager.anger < 3 && $npc_manager.affection > 7>>
"@@.npc_manager;Interesting, well I must say that you have been showing some mental improvements, though I cannot determine if that is merely you better adjusting to your responsibilities, or a benefit of the therapy. So long as you are feeling no ill effects, well... I can think of few other than myself that I would trust to... nurture that cute little brain of yours other than the good <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. Certainly it is better than dousing it in unknown chemicals...@@"<br>
<br>
<<if $npc_work_doctor.profile>>
<<printThought "Chemicals... is she referring to <<=setup.getNpcName('npc_work_doctor', 'formal')>>?">>
<<else>>
<<printThought "Chemicals... like those pink pills? Hmm, strange that she would give them out if she disliked them...">>
<</if>>
<<else>>
"@@.npc_manager;So long as it does not negatively impact your work for me, I see no problem with you continuing to assisting her in such matters.@@"<br>
<br>
<<printThought "That feels so dismissive... I wonder if she might have a more nuanced opinion if she liked me more?">>
<</if>>
<<case 5 6>>
You bring up the even more "experimental therapy" sessions you have been taking with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. You talk about how you find yourself remembering more and more about what happens in the simulations, and how it seems to encourage you to broaden your sexual horizons far beyond what you might have once even imagined.<br>
<br>
<<if $npc_manager.anger < 3 && $npc_manager.affection > 7>>
<<=setup.getNpcName("npc_manager","formal")>> smiles enigmatically. "@@.npc_manager;Yes, well... that is <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> specialty, and passion. Her belief is that only through fully understanding, unpacking, and, embracing our desires can we become our best self. There is certainly wisdom in such... though I, obviously, favour a bit more... control.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>A shiver goes down your spine at the way she says the word and you get an ominous feeling about your future.<<=setup.getNpcName("npc_manager","formal")>> smiles.<<else>>You are suddenly even more aware of your chastity device, and just how much <<=setup.getNpcName("npc_manager","formal")>> dominates your existence as she smiles.<</if>> "@@.npc_manager;So long as you feel no ill effects, I encourage you to continue this intriguing therapy. After all, if you have greater affinity for things, well, that will only make your obedience in such matters easier to perform. And <<=ps(setup.getNpcName("npc_psychiatrist","first"))>> techniques are far kinder to the brain than those employed by certain... others<<if State.hasPlayed("event_betray_work_doctor_7")>>, or should I say, WERE employed<</if>>.@@"<br>
<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
<<printThought "<<=setup.getNpcName('npc_work_doctor', 'formal')>> may be gone, but <<his>> legacy lingers on...">>
<<elseif $npc_work_doctor.flags.aphrodisiac.unlock>>
<<printThought "Of course she'd be aware of the history between <<=setup.getNpcName('npc_work_doctor', 'formal')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>>... and it sounds like she's firmly on <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> side, but it seems like there's more that that? If it wasn't for all this surveillance...">>
<<elseif $npc_work_doctor.profile>>
<<printThought "Others... she must mean <<=setup.getNpcName('npc_work_doctor', 'formal')>>... I get the feeling <<him npc_work_doctor>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> have a nasty history in a number of ways...">>
<<else>>
<<printThought "Others... I wonder who she means?">>
<</if>>
<<else>>
"@@.npc_manager;So long as it does not negatively impact your work for me, I see no problem with you continuing to assisting her in such matters.@@"<br>
<br>
<<printThought "That feels so dismissive... I wonder if she might have a more nuanced opinion if she liked me more?">>
<</if>>
<<default>>
ERROR: unexpected npc_psychiatrist.hypnosis <<=$npc_psychiatrist.hypnosis>>
<</switch>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: talk to manager about dom training
#status: RELEASED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if she could train you in the ways of dominance.<br>
<br>
<<if $currentTasks.hasOwnProperty("event_dominance_training") && !$currentTasks.event_dominance_training.finished>>
<<=setup.getNpcName("npc_manager","formal")>> half-smiles as she shakes her head. "@@.npc_manager;Is your eagerness overpowering your memory? We have already discussed this, and I agreed to give you a lesson <<if setup.daysToDate($now, setup.getTaskDueDate("event_dominance_training")) >= 6>>next<<else>>this<</if>> Saturday morning. Do no permit this memory lapse to prevent you from showing up promptly, hmm?@@"<br>
<br>
You apologise for your confusion and she nods, seemingly more amused than anything else.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $npc_manager.anger < 3 && $npc_manager.affection > 7>>
Sitting at her desk <<=setup.getNpcName("npc_manager","formal")>> pauses before theatrically removing her glasses and looking up at you.<br>
<br>
Her eyes smoulder, the full force of her dominant power slamming into you hard enough that you take a reflexive half step back. Before you have caught yourself she is suddenly in front of you, standing, looming over you as your heart thunders.<br>
<br>
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
She raises an eyebrow. "@@.npc_manager;I dare say that you have quite proven your skills in such matters... but perhaps you wish to refine things with a refresher? Or maybe you just enjoy spending time with <<=setup.getNpcName("npc_harassment_assist","first")>>? And who would not?@@"
<<elseif State.hasPlayed("event_manager_dom_class_8_perfect")>>
She raises an eyebrow. "@@.npc_manager;As I recall you quite proved your mastery in my little weekend lesson... but perhaps you wish to refine things with a refresher?@@"
<<elseif State.hasPlayed("event_manager_dom_class_1")>>
"@@.npc_manager;So. You wish another lesson in the ways of power? How to bend a submissive to your will, to wield the twin forces of pain and pleasure, to weave them together until they blend and all that remains is your will, and an obedient slave?@@"
<<else>>
"@@.npc_manager;So. You wish to learn the ways of power? How to bend a submissive to your will, to wield the twin forces of pain and pleasure, to weave them together until they blend and all that remains is your will, and an obedient slave?@@"
<</if>>
<br><br>
Your voice catches in your throat as she leans closer, her breath taking yours away. "@@.npc_manager;Well, is that it?@@"<br>
<br>
[<<moveTo "event_manager_theme_dom_training_2" "Y-yes." 60 "<<set $scene.submit=false>>">>]<br>
[<<moveTo "event_manager_theme_dom_training_2" 'Yes, <<=setup.getNpcName("npc_manager","title")>>.' 60 "<<set $scene.submit=true>>">>]
<<elseif $npc_manager.anger > $npc_manager.affection>>
She looks up at you and laughs sharply. "@@.npc_manager;You? No, I think not. Why would I share my secrets with one so unruly and disobedient? No, it would only make you even more unmanageable. Now be off, perhaps tomorrow you can show me that you know how to behave, until then... well, you had best focus on your job and nothing more.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
She looks up at you for a moment and then shakes her head. "@@.npc_manager;No... I do not think you are ready for anything like that. Dominance is more than authority and whips — it is a sacred trust that requires intense dedication of its own. Perhaps if I was more confident in your ability to manager your current responsibilities, but no, for the moment your time would be best spent focused on your job, not star-eyed ideas of being in charge of anything.@@"<br>
<br>
She dismisses you with a wave.<br>
<br>
<<printThought "Hmm... maybe if I focused on being on my best behaviour?">><br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: first test of dom training
#status: RELEASED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.submit>>
<<applyExperience 'submission' 20 'terrible' $SEEN_FRIEND>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 7, 0)>>
<<set $scene.postpone = !setup.hasFreeTime(_nextDate, $player, $currentTasks, 7200) || $currentTasks.hasOwnProperty('corporate_retreat_transit') && !$currentTasks.corporate_retreat_transit.finished>>
<<if $scene.postpone>>
<<set _nextDate = setup.setNextDate(_nextDate, 7, 7, 0)>>
<</if>>
<<addTaskById 'event_dominance_training' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.submit>>
"@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>.@@" You whisper, trembling in her presence and yet equally interested in claiming a portion of her power for your own.<br>
<br>
She smiles wider a satisfied, cat-like grin that almost makes you wonder if this was always part of her plan...<br>
<br>
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle') || State.hasPlayed("event_manager_dom_class_8_perfect")>>
She smiles. "@@.npc_manager;Dominant skills, yet still remembering your role. Very good. I shall see you this weekend for another lesson.@@"
<<elseif State.hasPlayed("event_manager_dom_class_1")>>
"@@.npc_manager;Good good, your initial lesson has not confused you at to your place in our hierarchy. Meet me here, Saturday morning <<if $scene.postpone>>after next <</if>>at oh-seven-hundred sharp and I will grant you another.@@"<br>
<br>
Your heart is still pounding as she steps back and you bow and then back away, retreating from the room and only catching your breath once the door is closed and you are finally out of her sight.<br>
<br>
<<printThought "I can't believe how dominant she is... I wonder if I can measure up this time?">>
<<else>>
"@@.npc_manager;Wonderful. You acknowledge my eternal, and absolute, superiority while requesting my assistance to better yourself. THIS I can work with. Meet me here, Saturday morning <<if $scene.postpone>>after next <</if>>at oh-seven-hundred sharp and I will grant you your first lesson.@@"<br>
<br>
Your heart is still pounding as she steps back and you bow and then back away, retreating from the room and only catching your breath once the door is closed and you are finally out of her sight.<br>
<br>
<<printThought "Holy crap, that was...">> You shudder, <<printThought "I wonder what Saturday is going to entail?">>
<</if>>
<<else>>
You manage to whisper yes... and she immediately snorts and turns away.<br>
<br>
Like flicking a switch the weight of her will lifts off of you and your shoulders slump in relief. Returning to her seat she picks up the paper she was looking at before you entered, speaking dismissively without even looking at you.<br>
<br>
"@@.npc_manager;Very disappointing. You forget the first rule — that I am your eternal <<=setup.getNpcName("npc_manager","title")>>. That whatever I deign to teach you shall only be to sharpen you as a tool of my will. Come back when you have properly internalised your role, only then will you be ready for my lessons.@@"<br>
<br>
You sigh and scurry out of the room.
<</if>>
<br><br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask about your predecessor
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> about your predecessor, <<=setup.getNpcName("npc_secretary","nickname")>>.<br>
<br>
<<if $npc_manager.anger > $npc_manager.affection>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> expression immediately hardens. "@@.npc_manager;I do not have anything to say to you about such matters. And you should be focused on your own job, not on the person who held it previously.@@"
<<elseif $npc_manager.affection > 7 && $npc_manager.anger == 0>>
<<=setup.getNpcName("npc_manager","formal")>> pauses, her gaze flicking away from you for a moment before she carefully chooses her words, obvious emotion in her voice.<br>
<br>
"@@.npc_manager;Our paths, unfortunately... went in different directions. Well, I say unfortunate, but it did lead to an opening by which you came under my employ, and, of course, she is quite fortunate to have the opportunity to help our glorious CEO, <<=setup.getNpcName("npc_boss","formal")>> guide this company into the future yet...@@" Her voice trails off and you can tell that there are many words unsaid as you reflect that, for all her power, <<=setup.getNpcName("npc_manager","formal")>>, too, is at the mercy of the company. "@@.npc_manager;Let us just say that it is frustrating when the career development plan one has decided on with a subordinate gets derailed... even if that derailment may be to rise to a higher position. I pushed <<=setup.getNpcName("npc_secretary","nickname")>> hard and, much like yourself, she was eager to rise to the occasion, but in the end, well... one cannot help but think back to the story of Icarus, though perhaps worse in that office politics focused on myself played a bit of a role in her transfer...@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> seems tightly controlled as she responds with a nod.<br>
<br>
"@@.npc_manager;Her career path has taken... a different road. Of course working for the CEO is quite the privilege, and, I suppose, a credit to the instruction I provided her... still, I would advise you to focus on your own career. After all CEO <<if $fetish.sissy>>SISSI <</if>>secretary positions are not exactly numerous, best for you to prioritise on refining and advancing your current duties.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: tell her about prostitution
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_manager', 'formal')>> about how you have accepted a job selling yourself at a local bar.<br>
<br>
"@@.npc_manager;The Usual Place, I presume?@@" She responds casually.<br>
<br>
You blink in surprise and she grins. "@@.npc_manager;What? It only stands to reason that it would be there, given how much time you spend at the place... I am your manager, it is my job to keep track of my subordinates, and I take that responsibility very seriously.@@"<br>
<br>
You gulp, feeling even more vulnerable than you normally do whilst in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> presence as she continues.<br>
<br>
"@@.npc_manager;Obviously what you do on your own time is your prerogative, and you are not violating the non-compete clause in your contract which means that, so long as your efforts do not interfere with the normal discharge of your day to day responsibilities as my <<if $fetish.sissy>>SISSI <</if>>Secretary, well... the technical terms is that it is "your business." — Not that I do not appreciate being kept informed of things. As noted before, I take a keen interest in your activities. Will there be anything else?@@"<br>
<br>
[<<moveTo "event_manager_theme_prostitute_2" "Say that you still want to gain her permission." 60>>]<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask manager permission re: prostitution
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You, somewhat nervously, reply that, given that she IS your <<=setup.getNpcName('npc_manager', 'title')>>, you do not wish to continue with this opportunity without getting her permission.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> beams with pride, "@@.npc_manager;Oh! My sweet, wonderful, submissive <<if $fetish.sissy>>SISSI <</if>>Secretary-slave... of course I will grant my blessing on this endeavour. Prostitution is an ancient, honourable profession and the skills you will learn, as well as the lessons in service... A simply wonderful opportunity for you and one that will surely help you in your true career working under me.@@"<br>
<br>
The way she seems to emphasise "under me" makes you shiver with submissive lust, but you manage to find your voice sufficient to thank her for the permission, and to promise that you will do your best to make her proud.<br>
<br>
"@@.npc_manager;With that attitude I am certain you will. Now, was there anything else you wished to discuss today?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask manager permission about npc_admin
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $npc_admin.flags.evil>>
<<case 0>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about your friend, <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
She nods. "@@.npc_manager;<<He npc_admin>> is proving quite the efficient promotion — <<if $npc_manager.affection > 7 && $npc_manager.anger < 3>>almost as useful of a hire as you have been!<<elseif $npc_manager.affection > $npc_manager.anger>>between the two of you it seems there was some untapped resources down on floor nine...<<else>>would that you were as productive in your new position...<</if>>@@"<br>
<br>
<<if $npc_admin.flags.sawHimfuckingManager>>
She smiles. "@@.npc_manager;Though I suppose you were asking me about <<him npc_admin>> for another reason, hmm? Well, I shall be straight with you — as much as I adore training you... sometimes I need a big strong <<man npc_admin>> betwixt my legs — and <<he npc_admin>> is certainly that...<<if $npc_admin.flags.relationship == "friendswbenefits" || $npc_admin.flags.relationship == "boyfriend">> As if I have to remind you, of all people!<</if>>@@"<br>
<br>
[<<moveTo "event_manager_theme_admin_2" "Say that you are glad to serve the both of them." 60>>]<br>
<<else>>
<<if $npc_admin.flags.monogomous_manager && State.hasPlayed("event_work_manager_and_admin_2")>>
She pauses. "@@.npc_manager;<<He npc_admin>> is quite the loyal friend, I might add. Sometimes I have the urge to feel a strong <<man npc_admin>> between my legs, but <<he npc_admin>>, though polite, was quite surprisingly firm in turning me down — it would seem the two of you have an arrangement? You want to keep me all to yourself, or something?@@" The way <<=setup.getNpcName('npc_manager', 'formal')>> looks at you in that moment would send a shiver down an iron spine. You wonder if any single person could manage to fully satisfy <<=setup.getNpcName('npc_manager', 'formal')>>, even as her enticing smile has you desperate to try.<br>
<br>
"@@.npc_manager;I would certainly not wish to come between the two of you like that. I guess it just means I shall focus on your training... yes, we are going to make you just PERFECT...@@"
<<else>>
She smiles, clearly plotting something. "@@.npc_manager;Yes, I shall be keeping an eye on <<his npc_admin>>... career QUITE closely.@@"
<</if>>
<</if>>
<<case 1>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about your friend, <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
She falls silent her gaze flicking past you. "@@.npc_manager;You would be better off forgetting such things and focusing on your work.@@" She states, clearly pushing you towards a different topic.
<<case 2 3>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about what happened to <<=setup.getNpcName('npc_admin', 'first')>>?<br>
<br>
She falls silent her gaze flicking past you. "@@.npc_manager;You would be better off forgetting such things and focusing on your work.@@" She states, pushing you towards a different topic.
<<case 4>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about <<=setup.getNpcName('npc_admin', 'first')>>?<br>
<br>
She smiles with a knowing twinkle in her eye. "@@.npc_manager;Why, of course, <<he npc_admin>> remains a productive contributor to the company... one of my better promotions, after yourself, of course.@@"
<</switch>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask manager permission about npc_admin
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You explain that it is your delight to serve <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_admin', 'first')>> both and <<=setup.getNpcName('npc_manager', 'formal')>> smiles proudly. "@@.npc_manager;Such a wonderful slave you are becoming. Just you wait, a whole world of service lies before you.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div><<set $scene.removeProstitutionCall = $events.hasOwnProperty('prostitution_final_invite') && $npc_barkeeper.flags.prostitution.final.attend>>
<<if $scene.removeProstitutionCall>>
<<removeEvent 'prostitution_final_invite'>>
<</if>><<if $scene.removeProstitutionCall>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 18, 20, true)>>
<<addEvent 'prostitution_final_invite' _nextDate>>
<</if>>/*#
#desc: ask about going home with her
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcRemoveProstitutionCall">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You politely ask <<=setup.getNpcName('npc_manager', 'formal')>> if, since she came over to your house, you might visit her place some time?<br>
<br>
<<if $npc_manager.anger > 0 || $npc_manager.affection < 10>>
<<if $npc_manager.anger > $npc_manager.affection>>
She frowns. "@@.npc_manager;No, I think not. You have been doing better, of late, but for me to invite someone to my house is a very special thing. You would need to impress me far more for me to consider such an offer.@@"
<<elseif $npc_manager.affection == 0 && $npc_manager.anger == 10>>
She laughs in your face. "@@.npc_manager;Me, invite you? Oh, you were serious? Truly, your failure knows no bounds! You would have to turn quite the corner, indeed, for me to even consider such an offer.@@"
<<elseif $npc_manager.affection == 0>>
She snorts in derision. "@@.npc_manager;You think that, after putting up with your rampant disobedience at work, I would have any interest in seeing you on my own time? Hardly. For me to invite someone to my house is a very special honour, one which you are woefully far from any possible consideration.@@"
<<elseif $npc_manager.affection > $npc_manager.anger>>
She shakes her head. "@@.npc_manager;No... I think not. Your efforts have not been completely devoid of merit, of late, but that is a far cry from the exemplary behaviour that would mark the only thing worthy of such an invite.@@"
<<else>>
She shakes her head. "@@.npc_manager;No... such an offer would require you to have shown quite exemplary behaviour... and you? Have not.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>><<include 'rescheduleProstitution'>>">>]
<<elseif $npc_manager.stage < 4>>
She shakes her head. "@@.npc_manager;No... I am afraid that I just do not have time for that. <<if $npc_manager.stage < 4 && $currentTasks.hasOwnProperty('task_corporate_retreat')>>Perhaps after the retreat, things might settle down<<else>>There is a company event coming up shortly, though they stubbornly refuse to pin down a date. Perhaps after that has concluded<</if>>.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>><<include 'rescheduleProstitution'>>">>]
<<elseif $player.flags.collar.owner == 'npc_manager'>>
Your offer hangs in the air as she takes a long moment to peer at, no, THROUGH you. Your heart beats faster as you find yourself thinking back to every mistake you have ever made, the slightest detail that could disappoint her contributing to a pit of shame that has you just about ready to retract your foolish request when her face splits into a warm, friendly smile.<br>
<br>
<<if $now.getUTCDay() == 5 && $currentTasks.hasOwnProperty('psychiatrist_endless_apointment_1') && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_apointment_1')) == 0 && (!$currentTasks.hasOwnProperty('task_first_gym') || $currentTasks.task_first_gym.finished) && (!$currentTasks.hasOwnProperty('task_first_gym_alt') || $currentTasks.task_first_gym_alt.finished) && (!$currentTasks.hasOwnProperty('admin_drink_1') || $currentTasks.admin_drink_1.finished) && (!$currentTasks.hasOwnProperty('technician_cafe_1') || $currentTasks.technician_cafe_1.finished) && (!$currentTasks.hasOwnProperty('technician_dinner') || $currentTasks.technician_dinner.finished)>>
"@@.npc_manager;A kind offer, but I believe you have an appointment with the good <<=setup.getNpcName("npc_psychiatrist","formal")>>... and I would not wish to distract you from attending to your mental health. Plus, well... I have quite a bit of work to attend to before I can even consider going home.@@"<br>
<br>
[<<moveTo "event_manager_friday_late_1_alt" 'Reply that your therapist would certainly understand the benefit of your spending time focusing in "personal relationships"... could you stay to help?' 60>>]<br>
[<<moveTo "event_manager_home_abort_1" "Decline her offer." 60>>]
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 28800) || $now.getUTCDay() == 5>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 28800)>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 28800, true)>>
"@@.npc_manager;No... I do not believe tonight would work. Speak with me some other time — and make sure your schedule is free. I would not wish for your going above and beyond to interfere with previously made plans.@@"
<<else>>
"@@.npc_manager;Hmm... yes, that sounds quite nice unfortunately, well... call it a bit of an inversion of responsibility, but I keep an eye on your schedule and I believe you have something already on your calendar. I would not wish to take you away from a prior commitment, but if your dance card is freed up at a later date, well...@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
"@@.npc_manager;A lovely offer but, though your week may be at an end, I am afraid that I have quite a bit more work to attend to before I will be ready to even think of departing.@@"<br>
<br>
[<<moveTo "event_manager_friday_late_1" "Ask if you could stay and help?" 60>>]<br>
[<<moveTo "event_manager_home_abort_1" "Decline her offer." 60>>]
<</if>>
<<else>>
"@@.npc_manager;Yes... actually that sounds just lovely. You and I spend so much time cooped up in this stuffy office... it would be good to cut loose, let my hair down, so to speak. That said, I should warn you... here at work you are, in a way... protected by the rules and restrictions of the office. If you willingly join me on my territory, well... there is submission... and there is SUBMISSION. If you believe yourself ready for that second one, well... you will have the opportunity to really prove your worthiness to wear that lovely collar.@@"<br>
<br>
[<<moveTo "event_manager_home_1" "Confirm your desire to go home with her." 60>>]<br>
[<<moveTo "event_manager_home_abort_1" "Decline her offer." 60>>]
<</if>>
<<elseif $npc_manager.stage >= 5 && $player.flags.collar.owner>>
She looks at you for a long moment before slowly nodding. "@@.npc_manager;I suppose with the state of things a bit of... private planning would be worth allowing someone else's slave into my private sanctum.@@"<br>
<br>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 28800) || $now.getUTCDay() == 5>>
Your heart rises... and then she shakes her head.<br>
<br>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 28800)>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 28800, true)>>
"@@.npc_manager;However... I do not believe tonight would work. Speak with me some other time — and make sure your schedule is free. I would not wish for your staying over to conflict with previously made plans.@@"
<<else>>
"@@.npc_manager;Hmm... yes, that sounds quite nice unfortunately, well... call it a bit of an inversion of responsibility, but I keep an eye on your schedule and I believe you have something already on your calendar. I would not wish to take you away from a prior commitment, but if your dance card is freed up at a later date, well...@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
"@@.npc_manager;Unfortunately, though your week may be at an end, I am afraid that I have quite a bit more work to attend to before I will be ready to even think of departing.@@"<br>
<br>
[<<moveTo "event_manager_friday_late_1" "Ask if you could stay and help?" 60>>]<br>
[<<moveTo "event_manager_home_abort_1" "Decline her offer." 60>>]
<</if>>
<<else>>
She pierces you with her gaze. "@@.npc_manager;I should warn you... here at work you are, in a way... protected by the rules and restrictions of the office. If you willingly join me on my territory, well... there is submission... and there is SUBMISSION. If you believe yourself ready for that second one, well...@@" the hint of a playful smile appears on her face<br>
<br>
[<<moveTo "event_manager_home_1" "Confirm your desire to go home with her." 60>>]<br>
[<<moveTo "event_manager_home_abort_1" "Decline her offer." 60>>]
<</if>>
<<else>>
She looks at you for a long moment before slowly shaking her head. "@@.npc_manager;I am afraid that I will have to decline your offer. Owing to the stresses of my job I endeavour to keep my home a safe, private place. I only ever invite my closest friends to visit and you... well, for as efficient and productive as our work relationship might be... it remains one circumscribed by your professional contract. Perhaps if you were to consider deepening our relationship beyond those boundaries...<<if $npc_manager.stage >= 5>> or at least demonstrating that you have learned the discipline of being owned, even if not by myself...<</if>>@@" She lets that offer hang for a moment before indicating that you should move on to other topics.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>><<include 'rescheduleProstitution'>>">>]
<</if>>
</div>/*#
#desc: talk to manager about changing collars
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if you could change which of her collars you are wearing?<br>
<br>
"@@.npc_manager;Of course, my dear. They represent the two sides of my ideal slave — stark submission, and perfect <<if $fetish.sissy>>sissified<<else>>delicate<</if>> beauty. Either way, the most important fact is that they mark you as mine.@@"<br>
<br>
<<if setup.isItemEquipped("secure_sissy_choker")>>
[<<moveTo "event_manager_theme_collar_2" "Keep your current frilly pink collar." 60 "<<set $scene.change=false>>">>]<br>
[<<moveTo "event_manager_theme_collar_2" "Change to the heavy metallic collar." 300 "<<set $scene.change=true>><<set $scene.newCollar='metal_collar_black'>>">>]
<<else>>
[<<moveTo "event_manager_theme_collar_2" "Change to the frilly pink collar." 600 "<<set $scene.change=true>><<set $scene.newCollar='secure_sissy_choker'>>">>]<br>
[<<moveTo "event_manager_theme_collar_2" "Keep your current heavy metallic collar." 60 "<<set $scene.change=false>>">>]
<</if>>
</div>/*#
#desc: talk to manager about changing collars
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.change>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $scene.collar true>>
<<deleteItem $scene.collar>>
<<addItem $scene.newCollar>>
<<wearItem $scene.newCollar true>>
<<set $player.flags.collar.collarId = $scene.newCollar>>
<<fixItemSetsReplaceSlot "choker" $scene.newCollar>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.change>>
You indicate that you would like to spend some time
<<if $scene.newCollar == "secure_sissy_choker">>
decorated with pink<<if $fetish.sissy>>sissy <</if>>frills.
<<else>>
with the more secure, heavy collar.
<</if>>
<br><br>
"@@.npc_manager;Of course you do.@@" She states with a smile as she fetches the collar from her desk.<br>
<br>
Several moments later and it is done, your new, <<=setup.getItemName($scene.newCollar)>> locked around your throat. Your submission to <<=setup.getNpcName('npc_manager', 'formal')>> reaffirmed.
<<else>>
You reply that, on second thought, you are happy with your current collar.<br>
<br>
"@@.npc_manager;If you are happy, so am I. Is there anything else you wished to speak of today?@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: talk to manager about upper floor collars
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.submission.collar>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_collar_money')>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about the "Property of SISSI" collars you saw locked on another employee recently.<br>
<br>
"@@.npc_manager;Yes, it is for security, as well as efficiency. We have found that certain of our employees perform best when they are constantly reminded of their role — be that full functional enslavement to the company <<if $player.sec_style.submission.collar == 'npc_manager'>>or, specifically, your manager<<else>>such as yourself<</if>>, or merely as a cue to keep them mindful of the need for subordinate obedience.@@"<br>
<br>
<<if $player.sec_style.submission.collar>>
<<if $player.flags.collar.owner == 'npc_manager'>>
She smiles as she glances at your throat. "@@.npc_manager;Of course, being that you already wear MY collar... well you need not sully yourself selling out to be a corporate slave.@@"
<<elseif $player.flags.collar.owner == 'company'>>
She nods at your throat. "@@.npc_manager;Of course, you already know all this, being that you are owned by the company.@@"
<<else>>
She nods at your throat. "@@.npc_manager;Of course, being already collared yourself, you do not need to worry yourself with selling yourself to the company.@@"
<</if>>
<br><br>
<<else>>
[<<moveTo "event_manager_money_collar_2" "Ask if being collared pays more?" 60>>]<br>
<</if>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask about being paid to be collared
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if wearing a collar would pay more. She smiles in amusement, "@@.npc_manager;My my, you really have developed into quite the corporate whore... in point of fact, it does, though selling yourself like that rather than forming a more... personal connection to your owner, well...@@" She seems pensive, but also guarded as she concludes, "@@.npc_manager;It would be your decision.@@"<br>
<br>
[<<moveTo "event_manager_money_collar_3" 'You would like to "sell" yourself to the company.' 60>>]<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: confirm collar for money
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if you could be collared to the company.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
Her voice is heavy as she nods. "@@.npc_manager;Yes... if that is truly your desire. You would qualify for the standard rate — 500 credits up-front, and a weekly pay increase of ten percent. I would hope that you are not so desperate at this point in your career, but it is your decision.@@"
<<else>>
"@@.npc_manager;Yes,@@" she states dismissively, "@@.npc_manager;You would qualify for the standard rate — 500 up-front, and a weekly pay increase of ten percent.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_money_collar_4" 'Yes, you want a corporate collar.' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_manager_money_collar_4" 'You will pass on a corporate collar.' 300 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_manager_money_collar_4_obedient" 'Ask if you could have her collar?' 300>>]
</div>/*#
#desc: collared for money
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<addCredits 500>>
<<set $player.work.payment = Math.floor($player.work.payment * 1.1)>>
<<set $scene.choker = setup.getItemFromType('choker')>>
<<if $scene.choker != "">>
<<removeItem $scene.choker true>>
<</if>>
<<addItem 'corporate_collar'>>
<<wearItem 'corporate_collar' true>>
<<setThreshold 'submission' 'collar_submission' 'money'>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_STRANGER>>
<<if $player.sec_style.submission.collar == "">>
<<set $player.sec_style.submission.collar = "money">>
<</if>>
<<set $player.flags.collar.owner = 'company'>>
<<set $player.flags.collar.collarId = 'corporate_collar'>>
<<addNpcTheme 'npc_psychiatrist' 'company' 'theme_psychiatrist_company_collar_money'
0
'event_psychiatrist_session_collar_money_1'
false
>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_collar_money')>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You confirm that you wish to give yourself over fully to be "Property of SISSI." <br>
<br>
<<printThought "After all, is that really so different than what I am now? Might as well get the extra credits...">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods somberly, sending off a message that has a courier — wearing a "Property of SISSI" collar themselves, arriving in less than a minute with the collar that will shortly be yours.<br>
<br>
With little pomp or circumstance she wraps the heavy collar around your neck. The lock sounds surprisingly loud as it closes... though its thick weight includes enough padding to make it surprisingly comfortable — though you imagine it being almost certainly sized specifically for your neck helps, as well.<br>
<br>
Stepping away she nods. "@@.npc_manager;So, will there be anything else today?@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> seems subtly pleased when she takes your decision and waits to see if you wish to speak of anything else.
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: collared for money, ask for obedient
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $scene.accept = setup.getTotalValue("submission") >= 15 && $npc_manager.stage >= 4 && $npc_manager.anger == 0 && $npc_manager.affection == 10 && $player.flags.collar.owner == "" && ($player.sec_style.submission.permanent_key != "" || !($player.body_ref.penis && $fetish.chastity_penis || $fetish.chastity_vag && $player.body_ref.vagina)) && $player.work.secretaryRank >= 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if, perhaps <<=setup.getNpcName("npc_manager","formal")>> could collar you herself, rather than on behalf of the company?<br>
<br>
<<if $scene.accept>>
She pauses and slowly smiles
<<if ["obedient", "voluntary"].includes(setup.getAverageSecStyle())>>
"@@.npc_manager;Given some of your prior behaviour I did not think you would be suitable for such... but seeing you here, now, asking so sweetly... yes, if you believe yourself ready, I will grant you the privilege of wearing my collar.@@"
<<else>>
"@@.npc_manager;Why of course, my dear, it really is what your development has been leading do, would you not agree?@@"
<</if>>
<br><br>
She steps closer, her presence all but enveloping you as she smiles down and tenderly strokes your neck. "@@.npc_manager;So, are you ready to adorn this lovely throat with the symbol of my ownership, and fully take your place at my feet?@@"<br>
<br>
[<<moveTo "event_manager_collar_obedient_2" '"Yes, <<=setup.getNpcName("npc_manager","title")>>."' 60 "<<set $scene.fromReview=false>>">>]<br>
[<<moveTo "event_manager_collar_obedient_2" "Change your mind and decline her offer." 60 "<<set $scene.fromReview=false>>">>]<br>
<<else>>
<<if $npc_manager.anger >= $npc_manager.affection>>
She looks almost annoyed. "@@.npc_manager;With your behaviour? No, I think not. A collar is a prize to be earned by the very best of <<if $fetish.sissy>>sissies<<else>>girls<</if>>... which does not describe you, now does it?@@"
<<else>>
She slowly shakes her head. "@@.npc_manager;No... I do not think you have yet earned that privilege. It is not one that I grant lightly. Perhaps someday, when you have proven yourself further.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: show manager pics from sexclub humiliation
#status: FINISHED 0.8.0.0
#ignore_spell: n
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('humiliating_photos')>>
You tell <<=setup.getNpcName("npc_manager","formal")>> you have something you want to show her... and then slide her the pictures from your night of embarrassing depravity at <<printShopName 'sex_club'>>.<br>
<br>
Her face is unreadable from the moment she looks at the first humiliating image, flipping through them slowly, pausing occasionally to examine one a bit closer, or look piercingly at you and ask a clarifying question as you shift uncomfortably. Eventually she reaches the final picture — of you cumming on stage to the roaring degradations of the crowd, which she has you describe to her in detail.<br>
<br>
"@@.npc_manager;Well,@@" she states, still keeping her reaction concealed. "@@.npc_manager;What am I to do with this?@@"<br>
<br>
You bite your lip and hesitantly explain that you wanted her to know. For the first time since you handed her the images she starts to smile... and you shiver.<br>
<br>
"@@.npc_manager;Want me to know? Or want everyone to know? Because from the look of things, well... you seem to have developed into a brazen <<if $fetish.sissy>>sissy <</if>>slut who gets off on every depravity imaginable. Is that it? Would it turn you on if I made copies of these for my friends? Oh! I know, there is an employee newsletter where people can submit out of work activities... should I send them, let us see... how about this one?@@" She holds up a picture of you on your knees on the dance floor, surrounded by cocks. "@@.npc_manager;Is this how you like people to think of you?@@"<br>
<br>
You shudder, her words not only igniting the memories of your humiliations, but deepening them.<br>
<br>
[<<moveTo 'event_manager_theme_humiliation_2' 'Say yes.' 180 "<<set $scene.action='humil'>>'">>]
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo 'event_manager_theme_humiliation_2' 'Say yes, <<=setup.getNpcName("npc_manager","title")>>.' 180 "<<set $scene.action='sub'>>'">>]
<</if>>
[<<moveTo 'event_manager_theme_humiliation_2' 'N-n-no...' 180 "<<set $scene.action='deny'>>'">>]
<<else>>
You are about to show <<=setup.getNpcName("npc_manager","formal")>> the pictures from your night of embarrassing depravity at <<printShopName 'sex_club'>>... when you realise you forgot them at home. You quickly change the subject.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: show manager pics from sexclub humiliation, respond
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.humiliationStyle == 'brazen'>>
<<setThreshold 'humiliation' 'brazen_humiliation' 'final'>>
<<else>>
<<setThreshold 'humiliation' 'embarrassed_humiliation' 'final'>>
<</if>>
<<switch $scene.action>>
<<case 'humil'>>
<<applyExperience 'humiliation' 20 'terrible' $SEEN_FRIEND>>
<<case 'sub'>>
<<applyExperience 'submission' 20 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 20 'terrible' $SEEN_FRIEND>>
<<case 'deny'>>
<<applyExperience 'humiliation' 20 'terrible' $SEEN_FRIEND>>
<</switch>>
<<set _themeId = setup.findThemeId('npc_manager', 'other', 'theme_manager_other_humiliation')>>
<<set $npc_manager.themes.other[_themeId].repeatable = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'humil'>>
Your voice is soft as you reply "@@.pc;Yes.@@"<br>
<br>
"@@.npc_manager;What was that?@@" She states, "@@.npc_manager;I am afraid I did not hear — do not tell me you are suddenly bashful after throwing... THESE in my face.@@"<br>
<br>
You shudder, shouting back "@@.pc;Yes! Humiliate me, degrade me, tell the world how much of a slut I am!@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> leans back in her chair and smiles. "@@.npc_manager;That will do, that will do...@@" She chuckles as you slightly calm down "@@.npc_manager;You know, it is funny — you were so shy when I first met you — perhaps it was merely fear? No matter, you have proven just how far you are willing to go and that... well, that is a useful skill, indeed.@@" Her tone gets suddenly stern "@@.npc_manager;That said — you work in a representative position, and you will NEVER behave like this in a situation where it would embarrass ME. Do you understand?@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>,@@" you quickly reply.
<<case 'sub'>>
You softly reply that, as your <<=setup.getNpcName("npc_manager","title")>>, you wish for her to do whatever would please her the most.<br>
<br>
She practically glows with pride. "@@.npc_manager;Excellent. A better answer you could not have given. This reminder is thus redundant but... just in case, while the lengths you are willing to go is impressive, and it is a rank improvement from the shy, fearful thing that I first met so long ago... you work in a representative position. Activities such as these should NEVER be undertaken in any way that would reflect badly upon me, or the company, do you understand?@@"<br>
<br>
"@@.pc;Of course, <<=setup.getNpcName("npc_manager","title")>>,@@" you quickly reply.
<<case 'deny'>>
You try to deny her description but she just smiles wider and your words trail off as you shudder in humiliated arousal.<br>
<br>
"@@.npc_manager;Just as I thought — I bet there is almost a lake forming under you, you are so turned on at the thought — but admitting it would break the spell.@@" She smiles. "@@.npc_manager;Do not worry, I know exactly how to deal with cute little sluts like yourself. From the moment I first saw you, all shy and fearful... this was always going to be the inevitable end result. Embrace it, enjoy it... just always remember that you work in a representative position, and you will NEVER behave like this in a situation where it would embarrass ME, do you understand?@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>,@@" you quickly reply.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_manager;Very good,@@" she states with a smile. "@@.npc_manager;Was there anything else you wished to speak of? Oh, and you can keep these — I already had copies. <<=setup.getNpcName("npc_sex_club","formal")>> is an old friend, after all.@@"<br>
<br>
You shudder as you pocket the photos and nod.<br>
<br>
<<printThought "Of course she'd already know... I wonder if it was all her doing?">><br>
<br>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask manager about how she's treating you
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the way <<=setup.getNpcName("npc_manager","formal")>> has been treating you of late and she smiles.<br>
<br>
<<if $npc_manager.flags.cruel == 0>>
"@@.npc_manager;Yes, well... so long as you follow my rules I can really be quite friendly, mmm? Unless, that is... you wish for something harsher?@@"<br>
<br>
[<<moveTo "theme_manager_other_cruelty_2" "Ask if she could treat you more harshly." 60 "<<set $scene.cruel=true>>">>]<br>
[<<moveTo "theme_manager_other_cruelty_2" "You are satisfied with your present treatment." 60 "<<set $scene.cruel=false>>">>]
<<else>>
"@@.npc_manager;Yes, well... I am dealing with you like this because it is what you asked for, and, frankly, what you deserve... is there a problem?@@"<br>
<br>
<<if $npc_manager.anger > 0 || $npc_manager.affection < 10>>
You feel like she's daring you to step out of line...
<<else>>
There is a hint of compassion in the corner of her eye, you think she might be willing to take it easy on you...
<</if>>
<br><br>
[<<moveTo "theme_manager_other_cruelty_2" "Ask if she could treat you more kindly." 60 "<<set $scene.cruel=false>>">>]<br>
[<<moveTo "theme_manager_other_cruelty_2" "You are satisfied with your present treatment." 60 "<<set $scene.cruel=true>>">>]
<</if>>
</div>/*#
#desc: adjust how manager is treating you
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.origKind = $npc_manager.flags.cruel == 0>>
<<if $scene.cruel>>
<<set $npc_manager.flags.cruel = 1>>
<<elseif !$scene.origKind && $npc_manager.anger == 0 && $npc_manager.affection == 10>>
<<set $npc_manager.flags.cruel = 0>>
<<elseif $npc_manager.flags.cruel>>
<<if setup.checkItemTypeTag('plug', ['ems']) || setup.checkItemTypeTag('plug', ['cage'])>>
<<applyExperience 'bdsm' 13 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 10 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.origKind>>
<<if $scene.cruel>>
Somewhat nervously you state that you think it would be beneficial to your development if <<=setup.getNpcName('npc_manager', 'formal')>> treated you more harshly.<br>
<br>
She nods, her expression remaining strangely inscrutable. "@@.npc_manager;Very well... but know that this is not a decision I take lightly. I always have high expectations for my subordinates, but now? With us on the same page as to the importance of discipline I will not be holding back, no matter how slight the violation. Now,@@" her expression turns as her eyes sparkle and her lips curl into a cruel smile "@@.npc_manager;was there anything else, <<if $fetish.sissy>>SISSI<<else>>my dear<</if>>?@@"
<<else>>
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for her treatment and promise that you will continue to do what you can to live up to her consideration.<br>
<br>
"@@.npc_manager;See that you do...@@" she replies with an almost taunting grin.
<</if>>
<<else>>
<<if $scene.cruel>>
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for the take-no-prisoners cruelty that she employs to keep you in line.<br>
<br>
She smiles in amusement. "@@.npc_manager;Thinking to gain favour with praise? No, I treat you like this because we both know it is what you need. Your appreciation of that plain fact is noted, but irrelevant.@@"
<<else>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if she could show some more kindness in your dealings and hold your breath for her response.<br>
<br>
<<if $npc_manager.flags.cruel == 0>>
"@@.npc_manager;Yes...@@" she finally replies as you practically sigh with relief. "@@.npc_manager;Your behaviour of late shows that you are really embracing your role. Of course if you find such difficult to maintain without the spectre of my wrath, well... a manager's duty is to support their subordinate in the way that best fits their needs.@@"<br>
<br>
You shiver, even her promise to be more kind has you sweating at her casual control and power.
<<else>>
"@@.npc_manager;No...@@" she states with a frown. "@@.npc_manager;No, your behaviour of late has proven that my approach is more than earned. In fact...@@"
<<if setup.checkItemTypeTag('plug', ['ems']) || setup.checkItemTypeTag('plug', ['cage'])>>
she taps a remote and your
<<if setup.checkItemTypeTag('plug', ['ems']) && setup.checkItemTypeTag('plug', ['cage'])>>
plug and chastity both punish you with a scathing shock of electric pain.
<<elseif setup.checkItemTypeTag('plug', ['ems'])>>
plug punishes you with a harsh shock of electric pain.
<<else>>
chastity device cruelly shocks your most sensitive bits within your locked prison.
<</if>>
"@@.npc_manager;There, a little reminder, hmm? Now, was there anything else?@@"
<<else>>
she reaches into a drawer and comes out with the familiar "For <<if $fetish.sissy>>SISSI <</if>>Secretary Use" paddle.<br>
<br>
"@@.npc_manager;Come here. To ask such a question, given your recent behaviour, well... it is a violation in and of itself.@@"<br>
<br>
Despite her light tone you well know that further disobedience will be dealt with even more harshly, and you obediently take a familiar position leaned over her desk as she administers a good half-dozen whacks that have you biting your lip.<br>
<br>
"@@.npc_manager;There. Nothing like a little maintenance spanking to keep a subordinate focused on their duties.@@"<br>
<br>
A final swat of her hand has you jumping to attention and blurting out a quick "@@.pc;Yes, <<=setup.getNpcName('npc_manager', 'formal')>>,@@" that leaves her smiling.
<</if>>
<</if>>
<</if>>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: invert 9001
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getChastityLevel() == 5>>
<<set _cage = setup.getItemFromType("cage")>>
<<switch _cage>>
<<case "sissyomatic">>
<<set $scene.newCage = "sissyomatic_flat">>
<<case "sissyomatic_med">>
<<set $scene.newCage = "sissyomatic_flat_med">>
<<case "sissyomatic_jumbo">>
<<set $scene.newCage = "sissyomatic_flat_jumbo">>
<<case "sissyomatic_flat">>
<<set $scene.newCage = "sissyomatic">>
<<case "sissyomatic_flat_med">>
<<set $scene.newCage = "sissyomatic_med">>
<<case "sissyomatic_flat_jumbo">>
<<set $scene.newCage = "sissyomatic_jumbo">>
<<case "sissyomatic_ultra">>
<<set $scene.newCage = "sissyomatic_ultra_flat">>
<<case "sissyomatic_ultra_med">>
<<set $scene.newCage = "sissyomatic_ultra_flat_med">>
<<case "sissyomatic_ultra_jumbo">>
<<set $scene.newCage = "sissyomatic_ultra_flat_jumbo">>
<<case "sissyomatic_ultra_flat">>
<<set $scene.newCage = "sissyomatic_ultra">>
<<case "sissyomatic_ultra_flat_med">>
<<set $scene.newCage = "sissyomatic_ultra_med">>
<<case "sissyomatic_ultra_flat_jumbo">>
<<set $scene.newCage = "sissyomatic_ultra_jumbo">>
<<default>>
<<set $scene.newCage = "ERRORinvert">>
<</switch>>
<<removeItem _cage true>>
<<deleteItem _cage>>
<<addItem $scene.newCage>>
<<wearItem $scene.newCage true>>
<<manipulateItem $scene.newCage "lock" true>>
<<include "setLastSeenCage">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.getChastityLevel() != 5>>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head. "@@.npc_manager;I am sorry, but the device you are now wearing does not have an "inverted" equivalent... perhaps if you were in something more secure?@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement at your request.
<<if $scene.invert>>
"@@.npc_manager;Decided that you want things pressed even smaller? How delightful. Yes, your device is more than capable of such alterations... and at the mere press of a button!@@"<br>
<br>
She taps her remote and you gasp at the strange feeling of your already imprisoned<<if $fetish.sounding>> and impaled<</if>> <<getWordMyPenis>> is pushed up into your body as your prison shrinks even further.
<<else>>
"@@.npc_manager;Decided that things were getting a bit too much in there?... pun intended. No matter, we can switch it around with but the press of a button. Security is what is important to me, and if being imprisoned on the outside, rather than within, would make your time more comfortable? Well, then surely we can oblige.@@"<br>
<br>
She taps her remote and you gasp at the strange feeling of your imprisoned<<if $fetish.sounding>> and impaled<</if>> <<getWordMyPenis>> being permitted to extend ever-so-slightly as it moves from inside your body to without... while remaining helplessly contained<<if $fetish.sounding>> and impaled<</if>>.
<</if>>
<br><br>
It takes a few moments for you to catch your breath as your body adjusts to its new situation. The whole time <<=setup.getNpcName('npc_manager', 'formal')>> looks on in amusement, and you could swear she is staring straight through your clothing to the almost unfathomably secure cage beneath...<br>
<br>
<</if>>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: tell her you're a pornstar
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_manager', 'formal')>> that you have begun featuring in porn videos.<br>
<br>
Unphased by your revelation she stares at you keenly for several seconds before slowly speaking.<br>
<br>
"@@.npc_manager;I see. Well, so long as it does not interfere with your duties it is your body and your choice. I will only ask that you be careful.@@"<br>
<br>
<<if !$npc_manager.flags.cruel>>
<<printThought "Was there a hint of compassion in her request?">>
<<else>>
<<printThought "Wow, I might as well have told her I took up philately for all the emotion she showed.">>
<</if>>
<br><br>
Somewhat surprisingly given her normal loquaciousness, it does not appear as if she has anything else to say on the matter.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: ask her about cook (after shooting porn finale)
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask about <<=setup.getNpcName('npc_cook', 'first')>>, particularly the cryptic comments she made to you after dismissing <<him npc_cook>>.<br>
<br>
<<if !$npc_manager.flags.cruel && $npc_manager.affection > $npc_manager.anger>>
She is silent for several long moments, looking at you thoughtfully before softly replying.<br>
<br>
"@@.npc_manager;Yes... I suppose you have earned a bit of truth. After your first... encounter with <<him npc_cook>> <<=setup.getNpcName('npc_cook', 'other')>> came to me, in private. <<He npc_cook>> was quite apologetic as to <<his npc_cook>> actions, while revealing the... impulsive offer <<he npc_cook>> had made to train you for porn.@@"<br>
<br>
"@@.npc_manager;I thanked <<him npc_cook>> for making me aware of the "incident" and did some digging into <<his npc_cook>> personnel record and past. <<He npc_cook>> has been a dull, but productive employee and <<his npc_cook>> reputation in the "industry," prior to <<him npc_cook>> being pushed out due to <<his npc_cook>> surgery was quite positive and so I gave <<him npc_cook>> permission to make good on <<his npc_cook>> offer... providing that you were willing. Clearly you were.@@" She says with a smile.<br>
<br>
"@@.npc_manager;Fortunately that proved not to be the case but, had <<he npc_cook>> caused you harm, I would have come down quite severely on <<him npc_cook>>. I hope this clears things up for you, as well as showing that even when I am forced to work... behind the scenes, I continue to look out for your best interests.@@"<br>
<br>
You thank her for the obvious diligence.
<<elseif $npc_manager.flags.cruel>>
"@@.npc_manager;I do not have anything else to say about <<=setup.getNpcName('npc_cook', 'other')>>. Whatever the two of you do outside of business hours, so long as it does not impact your duties, is, of course, between the two of you. Other than the short interaction vis a vis yourself I have nothing to do with the <<man npc_cook>>.@@"<br>
<<else>>
"@@.npc_manager;I am... sorry, but I really do not have anything else to say about <<=setup.getNpcName('npc_cook', 'other')>>. Whatever the two of you do outside of business hours, so long as it does not impact your duties, is, of course, between the two of you. Other than the short interaction vis a vis yourself I have nothing to do with the <<man npc_cook>>.@@"<br>
<br>
<<printThought "That was... oddly cryptic. If only she trusted me more to tell me enough to tell the full truth...">>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: npc_evil_nurse
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> about <<=setup.getNpcName("npc_evil_nurse","formal")>>.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> eyes narrow, her response terse, yet forcibly casual. "@@.npc_manager;<<=setup.getNpcName("npc_evil_nurse","formal")>>? She works for <<=setup.getNpcName("npc_work_doctor","formal")>>, does she not? I think we may have met at a company event or something, but I do not know her beyond that.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: ask about contract
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_manager_post_evil_apology_2")>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_work_buyout')>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about your corporate debt.<br>
<br>
<<if State.hasPlayed("event_manager_post_evil_apology_2")>>
"@@.npc_manager;An issue merely in the theoretical sense. Once we have dealt with <<=setup.getNpcName('npc_boss', 'formal')>> your debt will be expunged, so there is no need for you to waste thoughts on a few credits.@@"<br>
<br>
<<printThought "A few? She and I definitely work on different economic scales... but I suppose she is right, I should focus on <<=setup.getNpcName('npc_boss', 'formal')>> and kill two birds with one stone.">><br>
<br>
<<else>>
"@@.npc_manager;Yes, a consequence of how you came into my employment, I am afraid, to cover the expenses incurred by your mistakes, plus buying out your old contract from Cloud Data Service. <<=$player.money.corporate_debt>> credits, in total. So long as you remain employed interest will remain on hold, but should you depart your position you would be on the hook for the full value, if you cannot pay such at that time a structured payment schedule would be negotiated, including interest. Based on current market rates, plus premiums due to your likely considered a high-risk... well, even at your current salary you would not even be able to keep up with the interest...@@"<br>
<br>
<<if $player.money.total >= $player.money.corporate_debt>>
<<printThought "Technically... I do have that much money...">>
<<elseif $player.money.total >= .5*$player.money.corporate_debt>>
<<printThought "I guess I should keep saving...">>
<<else>>
<<printThought "That's so much!">>
<</if>>
<br><br>
[<<moveTo "theme_manager_buyout_2" "You would like to buy out your contract." 60 "<<set $scene.full=true>>">>]<br>
[<<moveTo "theme_manager_buyout_2" "Could you, perhaps, pay by installment?" 60 "<<set $scene.full=false>>">>]<br>
<</if>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: buyout
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.full>>
You state that you would like to buy out your contract
<<if $player.money.total >= $player.money.corporate_debt>>
and <<=setup.getNpcName('npc_manager', 'formal')>> nods.<br>
<br>
"@@.npc_manager;I thought this might be coming... watching your bank account rise. <<if $player.flags.streaming.subs > _TODO>>You really are quite the streaming phenom.<<elseif $player.flags.camgirl.followers > _TODO>>Your work on cam, well... it is quite impressive.<<elseif $npc_barkeeper.flags.money_earned > 100000>>You have become quite the whore.<<elseif _TODOporn>>You have built up quite the career in porn<<elseif _TODOpoker>>You seem to have become quite the card-shark.<<else>>You have certainly been a diligent saver.<</if>>@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>>
<<if $npc_manager.flags.cruel>>
sneers. "@@.npc_manager;Honestly, I would call this a foolish move on your part... even if you can sustain your earnings after leaving this job... well, without my direction I imagine you will be facing innumerable problems in no time. But I am a woman of principles, give me a moment to print up a severance agreement for you to sign.@@"
<<else>>
looks saddened. "@@.npc_manager;I will, of course, be sorry to see you go... I thought we had built something here, and, of course, you have come so far... still, I am a woman of principles. Give me a moment to print up a severance agreement for you to sign.@@"
<</if>>
<br><br>
<<printThought "Is this it? Am I finally going to be free of this company?">><br>
<br>
[<<moveTo "event_buyout_bad_end_1" "Sign the severance agreement." 0>>]<br>
[<<moveTo "theme_manager_buyout_3_stay" "Actually... you want to stay on, without the financial obligation." 60>>]<br>
[<<moveTo "theme_manager_buyout_3_abort" "Never mind, you would like to keep your job, and your money." 60>>]
<<else>>
You state that you would like to buy out your contract and <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head with a wry smile. "@@.npc_manager;Wanting something is all well and good... but we live under the yoke of capitalism, and, being that you do not have sufficient capital to pay off your debt, well... you will remain under the company's yoke, and remain my sweet <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
You ask if you could pay off a portion of your debt and <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head.<br>
<br>
"@@.npc_manager;It is an all or nothing deal, my dear... which, really, is to your own benefit. As I said, the debt will accrue no interest while you remain employed by the company, so paying it down would be quite the inefficient allocation of resources, even if your earnings are significantly above your expenses.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: manager topic: abort buyout
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You change your mind and tell <<=setup.getNpcName('npc_manager', 'formal')>> that you would prefer to keep your money... and your job.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles.
<<if $npc_manager.flags.cruel>>
"@@.npc_manager;Of course you do. Being on your own like that... well, we both know that you could not handle such independence. No, you belong one place, and one place only... at my feet.@@"
<<else>>
"@@.npc_manager;Of course, having the resources to pay for a thing does not mean it is necessarily prudent to do so. Leaving this job, even with a financial cushion, well... that would be walking away from everything you know, even if it was an act freely chosen, it is an end of the game sort of decision.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: buyout, but stay
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.money.total -= $player.money.corporate_debt>>
<<set $player.money.corporate_debt = 0>>
<<if $npc_manager.flags.cruel == 0>>
<<incrementEmotion 'affection' 'npc_manager' 20>>
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_work_buyout')>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<<addNpcTheme 'npc_psychiatrist' 'company' 'theme_psychiatrist_work_buyout'
0
'theme_psychiatrist_buyout_1'
false
>>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_buyout'
0
'theme_admin_buyout_1'
false
>>
<<addNpcTheme 'npc_technician' 'work' 'theme_technician_work_buyout'
0
'theme_technician_buyout_1'
false
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You smile and reply that, while you do wish to get out from under the hanging cloud of your debt, and in so doing make up for your prior failures... you wish to do so while remaining in your current position, working as <<=setup.getNpcName('npc_manager', 'formal')>> <<=setup.getSecretaryTitle()>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> is taken aback, several shocked moments passing before she responds.
<<if $npc_manager.flags.cruel>>
"@@.npc_manager;You know, thinking about it... well, I should have suspected. After all, what would you be without me? This paying of debts... it is just another of your pathetic attempts to earn my favour... well I will certainly cancel your debt, that is just good corporate accounting, as to you remaining under my employ, well... as always, that will come down to what it always has, you being a sufficiently performant <<if $fetish.sissy>>SISSI <</if>>Secretary.@@" She grins at you. "@@.npc_manager;Of course, the true revelation that comes with this move is just how desperate you are to please me, to merely remain in my presence... well strap in, my pet... because while you may be debt-free, your journey is far, far from over...@@"
<<else>>
"@@.npc_manager;I... I almost do not know what to say. The circumstances of your initial employment, however well things have turned out since... I could certainly see you wishing to get away from such, once you had the means. Demonstrating your independence and then willingly choosing to remain? <<if $player.flags.collar.owner == "npc_manager">>Well... if you had not already earned my collar, this would have me quite wishing to claim you with one.<<else>><</if>>@@"<br>
<br>
Even <<=ps(setup.getNpcName('npc_manager', 'formal'))>> legendary composure is being pushed to the limit as you finish the paperwork to address your debt.<br>
<br>
"@@.npc_manager;Thank you, <<=$player.first_name>>. A sincere thank you... and know that I mean that more than you will ever understand. Now, though... well, you said you wanted things to remain as they were so... was there anything else you wished to speak to me about, today?@@"<br>
<br>
As much as your proverbial pocket-book may be lighter, you feel an even greater sense of relief, and appreciation from your <<=setup.getNpcName('npc_manager', 'title')>>.
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: discuss therapy
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the therapy you've been attending.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;Finding it helpful, I hope? Other than that initial mandatory assessment — you performed fantastic, by the way — anything you discuss in therapy is obviously protected by doctor/patient confidentiality. The modern life can be stressful enough, particularly in your case, changing careers and all. You need to feel comfortable opening up so that you can see the best results on your mental health journey.@@"<br>
<br>
<<if State.hasPlayed("theme_manager_therapy_2")>>
She smiles. "@@.npc_manager;I trust sorting out that insurance issue has helped smooth things out? Imagine a company failing to properly support its worker's mental well-being, that would be quite the disaster. Mental health issues can be just as debilitating as any physical malady, potentially moreso. If you broke your hand the company would need to get them treatment and rehabilitation before they could be expected to perform your normal typing duties, so, too with the mental side of things. Helping our employees stay in good shape is not only the right thing to do, it is the only path to efficiency and retention!@@"<br>
<br>
<<else>>
[<<moveTo "theme_manager_therapy_2" "It'd be a lot more effective if it wasn't so expensive..." 60>>]<br>
<</if>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: discuss therapy price
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You mention that you'd feel a lot more comfortable with your weekly therapy if it didn't put such a burden on your finances.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> looks confused for a moment "@@.npc_manager;Financial burden?@@" She turns to her computer, her mouse clicking around rapidly as her gaze narrows. "@@.npc_manager;Well, that explains it! Despite you signing a new contract as a <<if $fetish.sissy>>SISSI <</if>>Secretary, somehow your benefits was carried over from the... well, to be honest, sparse to the point of being reprehensible, package provided by your previous employer, CDS.@@" She sighs. "@@.npc_manager;I just addressed things, your therapy appointments should now be covered. I honestly cannot believe there are still companies so short-sighted as to not provide mental care for their employees. Not only is it the moral thing to do, it is also the more efficient and economic move when it comes to employee motivation, retention... all manner of things, really.@@"<br>
<br>
She turns from her computer to smile at you. "@@.npc_manager;So, yes, do continue with your therapy, let it be an additional resource to help raise your spirits and keep you motivated and progressing through your new... career.@@"<br>
<br>
You're still more than a little surprised... though perhaps you should not be. For all her authoritarian <<if $npc_manager.flags.cruel>>sternness<<else>>bluster<</if>> she does seem to take her responsibility for the company's employees quite seriously... even if what she deeps the extent of that responsibility might be considered an overreach.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: discuss latex uniform requirements
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up
<<if $npc_manager.stagevalues[3].latex>>
the latex qualifier requirement on your work attire.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;It does look QUITE lovely on you... though, I admit that I do miss a bit of the variety. Shiny and tight is lovely, but there are so many other cute secretary looks...@@"<br>
<br>
[<<moveTo "theme_manager_latex_2" "You would like to be permitted to wear non-latex attire to work." 60 "<<set $scene.latex=false>><<set $scene.change=true>>">>]<br>
[<<moveTo "theme_manager_latex_2" "You would like to be continue wearing only latex attire to work." 60 "<<set $scene.latex=false>><<set $scene.change=false>>">>]
<<else>>
the possibility of adding a latex qualifier to your work requirements.<br>
<br>
"@@.npc_manager;Wishing to shine in your representative position?@@" <<=setup.getNpcName('npc_manager', 'formal')>> asks with a smile. "@@.npc_manager;I would be quite happy to add that rider, if you think it would help your performance?@@"<br>
<br>
[<<moveTo "theme_manager_latex_2" "You would like to continue being permitted to wear non-latex attire to work." 60 "<<set $scene.latex=false>><<set $scene.change=true>>">>]<br>
[<<moveTo "theme_manager_latex_2" "You would like to be required to wear only latex attire to work." 60 "<<set $scene.latex=false>><<set $scene.change=false>>">>]
<</if>>
</div>/*#
#desc: manager topic: discuss latex uniform requirements
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.stagevalues[3].latex = $scene.latex>>
<<set setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.latex>>
<<if $scene.change>>
You state that you would like to have a mandate to wear latex-only attire added to your uniform requirements.<br>
<br>
"@@.npc_manager;Very well.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a nod. "@@.npc_manager;I shall commence enforcing such <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> morning... and will surely delight in seeing you working away all slick and polished and tight.@@"
<<else>>
You confirm that you would like to continue having it enforced that you only wear latex attire to work.<br>
<br>
"@@.npc_manager;Very well.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a nod. "@@.npc_manager;And I shall continue to enjoy watching you working away all slick and polished and tight.@@"
<</if>>
<<else>>
<<if $scene.change>>
You state that you would like to have the mandate to wear latex-only attire to work to be relaxed so that you can broaden your wardrobe.<br>
<br>
"@@.npc_manager;Very well.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a nod. "@@.npc_manager;Starting <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> morning I will allow for a greater flexibility in your work attire... in regards to material only, obviously. The rest of your requirements are quite central to your role as my <<if $fetish.sissy>>SISSI <</if>>Secretary and its representative requirements.@@"
<<else>>
You confirm that you would like to continue having the flexibility to wear latex, or not, to work.<br>
<br>
"@@.npc_manager;Very well.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a nod. "@@.npc_manager;You know your other requirements, indulging in freedom is perfectly fine within those quite broad bounds.@@"
<</if>>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager topic: discuss manager of retention
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about <<=setup.getNpcName('npc_retention', 'formal')>>.<br>
<br>
<<if State.hasPlayed("event_guard_retention_mission_5") || State.hasPlayed("event_landlord_retention_mission_7")>>
<<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;Good riddance to bad rubbish. I will not darken your dreams with all of what <<=setup.getNpcName('npc_retention', 'formal')>> got up to in the war... but I will state that whatever you did with <<him npc_retention>> was better than <<he npc_retention>> deserved. <<His npc_retention>> removal brings us one step closer to <<=setup.getNpcName('npc_boss', 'formal')>> <<himself npc_boss>>.@@"
<<elseif $npc_manager.stage >= 5>>
<<=setup.getNpcName('npc_manager', 'formal')>> grimaces. "@@.npc_manager;<<=ps(setup.getNpcName('npc_boss', 'formal'))>> hatchet-man... hired based on <<his npc_retention>> military record... a military record that could just as easily be the docket for a war-crimes tribunal.@@" <<=setup.getNpcName('npc_manager', 'formal')>> meets your gaze sternly. "@@.npc_manager;Do not underestimated <<=setup.getNpcName('npc_retention', 'formal')>>, <<he npc_retention>> is mercenary and amoral, but until <<he npc_retention>> is removed from the equation <<=setup.getNpcName('npc_boss', 'formal')>> is much more protected... and much more dangerous.@@"
<<else>>
"@@.npc_manager;<<=setup.getNpcName('npc_retention', 'formal')>>? One of the most important leaders in my department. Employee retention is, perhaps, one of the most important priorities of Human Resources, all that valuable domain knowledge well... it is far more than a mere monetary loss when it departs the company, doubly so if it should go to a competitor. <<=setup.getNpcName('npc_retention', 'formal')>> has been exemplary in <<his npc_retention>> efforts to keep employee departures to an all-time low, even as hiring has accelerated both directly and indirectly through mergers. Speaking of hiring, <<he npc_retention>> was actually recruited by our CEO <<=setup.getNpcName('npc_boss', 'formal')>> <<himself npc_boss>> based on <<=ps(setup.getNpcName('npc_retention', 'formal'))>> military record, and <<he npc_retention>> has certainly brought that military discipline to <<his npc_retention>> role!@@"<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> description is a little too pat, her every-so-slightly forced. You're certain there is more she is not saying... but equally certain that she will not be saying it in this venue.
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager first pegging intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You enter the office for your end-of-day assessment to be greeted by <<=setup.getNpcName("npc_manager","formal")>> with a smile that says she has more than a mere day's summary in mind for you.<br>
<br>
"@@.npc_manager;So, my dear... I was thinking about the anatomical changes you have undergone since I originally hired you, and the... expanded options that opens for you to be of... service to me.@@"<br>
<br>
The look in her eye, and the tone in her voice, has said "change" dripping <<if setup.checkItemTypeWorn("cage") && !setup.isCage()>><<else>>down your leg<</if>> as <<=setup.getNpcName("npc_manager","formal")>> circles her desk to stand in front of you.<br>
<br>
"@@.npc_manager;We celebrated your promotion with me claiming that tight ass of yours... how about you fetch my strap from the top drawer and we see how your other hole handles womanly pleasures...@@"<br>
<br>
[<<moveTo "event_manager_vag_peg_2" "Fetch her strap." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_manager_vag_peg_2_money_1" "Try to negotiate..." 120>>]<br>
[<<moveTo "event_manager_vag_peg_2" "Anal was one thing, but you don't want to do this!" 120 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: manager first pegging money alt
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 100*Math.ceil(.5*$player.work.payment/100)>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your heart thunders as you remember the size of <<=ps(setup.getNpcName("npc_manager","formal"))>>... and feel a trickle of excitement creep down your thigh. You stutter, asking her if maybe you could serve her some other way, or perhaps, if this is to be added to your responsibilities, maybe... and then she cuts you off.<br>
<br>
"@@.npc_manager;Quiet.@@" She steps closer, her hand tracing your cheek. "@@.npc_manager;I see what this is, you are nervous, for sure... but this negotiation, this dance... you want what I have to offer, but a part of you wants more, gets off on selling a piece of yourself, well... I can play along.@@" She draws your chin forward with a single finger, and then she spins in place, and you almost fall forward at her sudden absence.<br>
<br>
She barely glances over her shoulder as she continues, "@@.npc_manager;if you want this to be transactional... very well, I can play along. <<=$scene.pay>> credits, more than half a week's salary for you. That should be sufficient compensation for you to spread your legs for your <<=setup.getNpcName("npc_manager","title")>>, hmm?@@"<br>
<br>
[<<moveTo "event_manager_vag_peg_2_money_2_accept" 'Yes, <<=setup.getNpcName("npc_manager","title")>>.' 120>>]<br>
[<<moveTo "event_manager_vag_peg_2_money_2" 'Reject her offer.' 120>>]
</div>/*#
#desc: manager first pegging money alt
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bite your lip nervously for a moment and then nod in agreement.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> chuckles in amusement. "@@.npc_manager;Sometimes you just make it too easy. Now, go fetch my strap-on, girl.@@"<br>
<br>
[<<moveTo "event_manager_vag_peg_2" 'Yes, <<=setup.getNpcName("npc_manager","title")>>...' 120 "<<set $scene.obey=true>><<set $scene.money=true>>">>]<br>
</div>/*#
#desc: manager first pegging money decline
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $fetish.get_raped>>
You shake your head only for <<=setup.getNpcName("npc_manager","formal")>> to reveal a cruel smile. "@@.npc_manager;Did you think this was a negotiation? No, you work for me. I just stated your rate and now... now you are going to do. Your. Job.@@"<br>
<br>
With each word she moves closer until she has you backed up against against the door. You catch a fleeting glimpse of the strap-on in her left hand as she grabs you with her right, dragging you across the office and pushing you over her desk.<br>
<br>
[<<moveTo "event_manager_vag_peg_2_evil_1" "Oh fuck..." 300 "<<set $scene.money=true>>">>]
<<else>>
You stand firm and shake your head and <<=setup.getNpcName("npc_manager","formal")>> smiles in bemusement. "@@.npc_manager;Very well. In that case... I believe you are done for the day. Good night, I will probably fuck you in the morning...@@" She smiles, leaving you not totally certain that she's joking... but eager to be somewhere else, nonetheless.<br>
<br>
[<<moveTo "room_office_after_work" "Beat a quick retreat from her office." 120>>]
<</if>>
</div>/*#
#desc: manager first pegging intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeChastity = $scene.obey && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Your heart races as you curtsy obediently and then follow her instructions, finding the leather harness — and its world-expanding dildo — in the top drawer.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> watches with pride and confidence as you return and wrap the harness around her waist, supervising with a smile as you tighten the straps and try not to get too distracted by the silicone monster now dangling from her hips.<br>
<br>
"@@.npc_manager;Good girl,@@" she states as she reaches down to caress your face. You nuzzle back and she smiles.
<<if $npc_manager.flags.pegging.suck == "suck">>
"@@.npc_manager;You have felt it in two of your three holes... now to finish the set.@@"
<<elseif $npc_manager.flags.pegging.suck == "kiss" || $npc_manager.flags.pegging.suck == "lick">>
"@@.npc_manager;You have tasted it in two of your lovely holes... now to finish the set.@@"
<<else>>
"@@.npc_manager;You have felt this inside of you once... but I am going to show you another new world this time.@@"
<</if>>
<br><br>
She guides you up onto the desk and you lay back <<if $scene.removeChastity>>your chastity belt <<if $scene.isSissyomatic>>parting<<else>>removed<</if>> <</if>>to reveal your wet excitement. She leans in and grinds against you, spreading your juices over her shaft as she whispers in your ear.<br>
<br>
"@@.npc_manager;You ready, my dear?@@" She asks as you tremble in anticipation.<br>
<br>
[<<moveTo "event_manager_vag_peg_2_good_1" "Yes..." 300>>]
<<else>>
<<if $fetish.get_raped && ($npc_manager.flags.cruel || $npc_manager.anger > $npc_manager.affection)>>
You refuse her offer and her friendly demeanor falls away as her hand snaps to your throat and squeezes.<br>
<br>
"@@.npc_manager;Do not mistake polite words for a choice. You are mine. My <<if $fetish.sissy>>SISSI <</if>>Secretary. My property. My <<if $fetish.sissy>>sissy <</if>>bitch.@@"<br>
<br>
She spins you around and slams you onto her desk, knocking the wind out of you as she reaches for a drawer.<br>
<br>
"@@.npc_manager;And now, I am going to breed you like one. I was all prepared to share some tenderness but now? Now I am going to fuck you like the naughty slut that you are.@@"<br>
<br>
[<<moveTo "event_manager_vag_peg_2_evil_1" "Oh fuck..." 300>>]
<<else>>
You tell <<=setup.getNpcName("npc_manager","formal")>> that being pegged in the rear was enough. You would swear the lights in the room got dimmer as she seems to loom over you, your heart skipping a beat as you look up at her until she sniffs and spins on her heel.<br>
<br>
"@@.npc_manager;Very well,@@" she snaps. "@@.npc_manager;In that case, we are done for the day. Good night.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Beat a quick retreat from her office." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: manager first pegging good
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
When <<=setup.getNpcName('npc_manager', 'formal')>> claimed you for your promotion it was about power.
<<switch $npc_manager.flags.pegging.style>>
<<case "good">>
Certainly she made sure that it was pleasurable for you, but from the foreplay through to the end things remained an affirmation of her power.
<<case "neutral" "">>
Certainly you got off in the process, but from the foreplay through to the end things remained an affirmation of her power.
<<case "cruel">>
You got off, sure, but from beginning to end, it was about affirming her power, and putting you in your place.
<<default>>
ERROR: unexpected npc_manager.flags.pegging.style <<=$npc_manager.flags.pegging.style>>
<</switch>>
This time, however... from the moment she gently fingers you open through to how she smiles down as your eyes roll back in pleasure at the first insertion... this is about more than that, not a mere demonstration of power over you, but a tender shared moment.<br>
<br>
As her <<getWordPenis>> slowly glides within your body you are all but overwhelmed with pleasure,
<<if !$player.virgin.vaginal && !$player.sec_style.sex.vag_strap>>
you've never felt something like this before... and you cannot imagine how a "first time" could feel any better.
<<elseif $player.virgin.vaginal>>
her artificial phallus, if anything, even better than the real thing.
<<else>>
her artificial phallus guided with exquisite skill.
<</if>>
<br><br>
Your breaths come faster as your arousal rises... and then she leans in closer, whispering sweetness into your ear, how you're her "@@.npc_manager;good girl,@@" and how proud she is to have you as her Secretary.<br>
<br>
Things are already too much<<if setup.checkItemTypeWorn("plug")>>, the plug in your rear tightening things up only serving to further enhance your pleasure<</if>>, but she isn't close to done. One arm wraps around you and suddenly you are lifted off the desk. Your legs reflexively wrap around her waist as she holds you aloft, her face against your shoulder as she kisses your neck, hips bouncing the whole time as she supports you fully... and fulfills you completely.<br>
<br>
[<<moveTo "event_manager_vag_peg_2_good_2" "Oh <<getWordGod>>!" 300>>]
</div>/*#
#desc: manager first pegging good aftercare
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if !$player.sec_style.sex.vag_strap>>
<<if $scene.money>>
<<set $player.sec_style.sex.vag_strap = "money">>
<<else>>
<<set $player.sec_style.sex.vag_strap = "obedient">>
<</if>>
<</if>>
<<if $scene.money>>
<<addCredits $scene.pay>>
<</if>>
<<if $scene.removeChastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You cling tightly to <<=setup.getNpcName('npc_manager', 'formal')>> as you cum, moaning and shuddering as she supports you with ease, directing your orgasm with a maestro's skill; every thrust, every kiss, even reaching down to finger your <<if setup.checkItemTypeWorn("plug")>>plug<<else>>rear<</if>> she turns your body into an instrument of pleasure leading to a crescendo that leaves you utterly satisfied as you go limp.<br>
<br>
Your toes brush the ground as <<=setup.getNpcName('npc_manager', 'formal')>> smoothly slides free, holding you up until you can find your feet, your heart slowly coming down as she brushes a strand of hair out of your eyes and smiles at you.<br>
<br>
"@@.npc_manager;Good girl,@@" she whispers again as she <<if $scene.money>>drops a stack of credits in front of you<<else>>plants a kiss on your forehead<</if>>
<<if $scene.removeChastity>>
before
<<if $scene.isSissyomatic>>
tapping a remote that has your <<=setup.getItemTypeName('cage')>> sealing back
<<else>>
drawing your <<=setup.getItemTypeName('cage')>> back between your legs and locking it closed
<</if>>
over your spent, but satisfied, <<getWordVagina>>.<br>
<br>
You shiver slightly, feeling curiously safe
<</if>>
as you finally find your footing.<br>
<br>
"@@.npc_manager;Congratulations on another step on your lovely journey.@@" Her eye twinkles slightly as you blush, "@@.npc_manager;thank you for letting me be a part of it... perhaps someday you can come home with me and I can show you even more...@@"<br>
<br>
With that slightly cryptic offer the moment is interrupted by the ringing of her phone. She glances back and sighs as you quietly excuse yourself with a whispered thanks.<br>
<br>
She smiles and slides into her seat, hiding the still glistening strap-on under the desk as she blows you a final kiss and brings up her camera for whatever video-call demands her immediate attention.<br>
<br>
[<<moveTo "room_office_after_work" "Quietly slip out of her office." 120>>]
</div>/*#
#desc: manager first pegging evil
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeChastity = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Dildo in hand, <<=setup.getNpcName('npc_manager', 'formal')>> gives you a moment to refresh your memory as to its size and girth <<if $scene.removeChastity>>while she <<if $scene.isSissyomatic>>retracts your chastity shield<<else>>unlocks your chastity belt<</if>><</if>>before slamming the thick dong into your cunt.<br>
<br>
You cry out as the firm dildo thrusts deep, all but splitting you in half as <<=setup.getNpcName('npc_manager', 'formal')>> leans closer
<<if !$player.virgin.vaginal && !$player.sec_style.sex.vag_strap>>
"@@.npc_manager;First time? Pathetic. Why do you think you have this additional hole, save to spread your legs and get fucked like a bitch?@@"
<<else>>
"@@.npc_manager;You like that, hmm? I can feel how wet you are, you slut, there is no way you could deny that this is exactly why you got yourself a cunny.@@"
<</if>>
She continues to pound the dildo in and out with one hand before shifting into position between your legs. She gathers up the straps and buckles the strap-on to her hips while simultaneously thrusting forward, the weight of her body pressing the dildo all the way inside of you as she pins you to the desk.<br>
<br>
"@@.npc_manager;Now it is time for you to feel what it REALLY means to be a woman. It was not enough to just be my personal <<if $fetish.sissy>>sissy <</if>>butt-slut... no, you decided to reach for the stars and got another hole for me to <<if $fetish.get_raped>>rape<<else>>enjoy<</if>>. Well brace yourself, my dear, because I am about to ruin you for <<if $options.fem>>anyone else<<else>>men<</if>>.@@"<br>
<br>
[<<moveTo "event_manager_vag_peg_2_evil_2" "Oh <<getWordGod>>!" 600>>]
</div>/*#
#desc: manager first pegging evil fucked
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<<applyFatigue 100>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> does not hold back, pinning you down with both hands while she slams into you with bone-rattling power. You swear you hear the sound of the desk cracking at least once, but it is hard to tell between your own cries and her constant barrage of insults.<br>
<br>
"@@.npc_manager;Come on, slut, look at me! Look at me while I fuck you. I know I talk about you being my <<if $fetish.sissy>>SISSI <</if>>Secretary, but we both know this is your TRUE calling — to lie back and get fucked, a truth you knew so well you went out and got yourself another hole for me to rape.@@"<br>
<br>
Despite the fear and pain... you cannot deny the growing wave of pleasure, each hard stroke of her cock feeling better than the last until your cries of pain become moans of pleasure. Your eventual climax is greeted by a cruel laugh from <<=setup.getNpcName('npc_manager', 'formal')>> as she fucks you even harder. "@@.npc_manager;There it is — the full embrace of who you are, that no matter how much I abuse you, you are getting off on it. So go on, slut, cum for me again, revel in your worthless depravity.@@"<br>
<br>
Attempts to fight against her iron-clad grasp have left your muscles sore and exhausted as you cum a second, and then third time before she finally relents.<br>
<br>
Her pulling out is nearly as jarring as when she first slammed into you, and she grabs you by the hair, dragging you off the desk to your knees to press your face against her still-dripping strap.<br>
<br>
"@@.npc_manager;Lick it clean, bitch.@@"<br>
<br>
[<<moveTo "event_manager_vag_peg_2_evil_3" "Continue." 300>>]
</div>/*#
#desc: manager first pegging evil aftercare
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_manager.penis_size 'terrible' $SEEN_FRIEND>>
<<if !$player.sec_style.sex.vag_strap>>
<<if $scene.money>>
<<set $player.sec_style.sex.vag_strap = "forced">>
<<else>>
<<set $player.sec_style.sex.vag_strap = "strict">>
<</if>>
<</if>>
<<if $scene.money>>
<<addCredits $scene.pay>>
<<applyExperience 'whoring' 7 'terrible' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<if $scene.removeChastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're too tired to put forth any more resistance, though <<=setup.getNpcName("npc_manager","formal")>> seems more interested in jamming the dildo into your mouth for a follow-on face-rape that has you drooling and gagging more than you actually clean.<br>
<br>
When she finally relents you slump to the ground<<if $scene.removeChastity>>, barely noticing as <<if $scene.isSissyomatic>>your chastity shield closes back over you<<else>>your chastity belt is locked back in position<</if>><</if>>, only for the toe of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> pointed heel to kick you back to life.<br>
<br>
<<if $scene.money>>
<<=setup.getNpcName("npc_manager","formal")>> scatters a pile of credits over you, only furthering your sense of humiliation.
<</if>>
"@@.npc_manager;Get up, and stop leaking all over my carpet. We are done for the day, now get out of my sight... and see if you can come to work tomorrow sporting a better attitude.@@"<br>
<br>
You somehow manage to regain your feet, <<if $scene.money>>gathering up your earnings and <</if>>staggering out of the office and into the elevator where you lean heavily against the wall as it drops towards the lobby.<br>
<br>
[<<moveTo "company_lobby" 'Company lobby.' 180>>]
</div>/*#
#desc: stay after work on friday w/manager when have psych appointment
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Well, well, look at you having the clever answer to everything... I suppose <<=setup.getNpcName("npc_psychiatrist","formal")>> would understand if I had to cancel your appointment... as to work, well... it is a bit beyond your expertise, I am afraid, but you can help me get into a weekend mood by crawling over under my desk and putting those lovely fingers and lips to work...@@"<br>
<br>
[<<moveTo "event_manager_friday_late_2" 'Yes, <<=setup.getNpcName("npc_manager","title")>>.' 0 "<<include 'postPonePsychiatrist'>>">>]<br>
[<<moveTo "room_office_after_work" 'Actually, you should leave to get ready for your appointment.' 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: stay after work on friday w/manager
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Such a lovely offer. Unfortunately the work I have remaining is a bit beyond your expertise, but you can help me get into a weekend mood by crawling over under my desk and putting those lovely fingers and lips to work...@@"<br>
<br>
[<<moveTo "event_manager_friday_late_2" 'Yes, <<=setup.getNpcName("npc_manager","title")>>.' 18000>>]
</div>/*#
#desc: help manager after work on friday w/manager
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 3600)>>
<<applyExperience 'foot' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<if $fetish.piss && $npc_manager.flags.piss_drinking.success > 0>>
<<applyExperience 'piss' 13 'very' $ALONE>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You crawl under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> and set to work helping relieve her stress.<br>
<br>
You start in with one of your famous foot massages, tenderly removing her shoes and rubbing her from toe, to heel and up the calf, locating and working out every knot and point of tension, your fingers digging deep before following up with your lips, kissing her heels and sucking her toes as you hope that your worship will serve to ease the stress of her continued work responsibilities.<br>
<br>
Speaking of work, as you do your duty beneath the desk, she attends to matters of corporate concern above. You identify at least four different languages as she moves from meeting to meeting, all of which she appears to speak with perfect fluency as she wraps up the week with what you surmise are teams on multiple continents.<br>
<br>
Even as you work the tension out of her legs you can sense the restrained stress in her voice and you need no further invitation than her slightly spreading her legs to move up and put your lips to work, licking and sucking as her fingers softly run through your hair. She shifts her legs to rest on your shoulders, pulling you in closer as she starts another phone meeting and you continue to lick...<br>
<br>
[<<moveTo "event_manager_friday_late_3" 'Yes, <<=setup.getNpcName("npc_manager","title")>>.' 10800>>]
</div>/*#
#desc: help manager after work on friday w/manager
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.home_visit.stay_late=true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Hours pass as <<=setup.getNpcName('npc_manager', 'formal')>> works and you complete an entire additional shift between her legs. As much as your heart wants to serve her forever you are exhausted by the time she finally slides her chair back and helps you up.<br>
<br>
"@@.npc_manager;Oh, you poor dear,@@" she states in comfort, brushing your cheek as you take deep, tired breaths. "@@.npc_manager;I am sorry things ran long, all of these mergers...@@" She sighs, "@@.npc_manager;Sometimes I wish the corporate world could just... slow down for a minute, but that is not the world we live in, hmm?@@" She shakes her head, but smiles at you.<br>
<br>
"@@.npc_manager;Still, even if the rest of the world is non-stop workaholism... that does not mean I should pass it on to my subordinates. You did such a lovely job today, above and beyond the call of duty... and I know you were hoping to come home with me but... well, I think the both of us are a bit tired to make such an event properly special.@@" She leans over to softly kiss you. "@@.npc_manager;Maybe next week, hmm? For now, well... you look like you could really use your weekend rest.@@"<br>
<br>
You start to object that no, you want to continue to serve; but she seals your lips with a fingertip. "@@.npc_manager;Shhh, I admire the devotion, and I understand it. That is why it falls to me, as your <<=setup.getNpcName('npc_manager', 'title')>> to exert control and prevent that lovely submission from pushing you too hard. Go home, rest. That is an order.@@"<br>
<br>
Seeing that you will be making no more headway this evening you nod, curtsying obediently before leaving her office, her smile never wavering from her lips.<br>
<br>
[<<moveTo "room_office_after_work" "Leave her office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: get ready to go home w/manager
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'office'>>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<<set $scene.firstTime = $npc_manager.flags.home_visit.count == 0>>
<<set $scene.removeCage = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You nod and confirm that you would be honoured to be able to serve your <<=setup.getNpcName("npc_manager","title")>> "off the clock." <br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, locking her desk and logging off her computer before walking around to hook a finger through your collar. "@@.npc_manager;Now THAT is just what I like to hear.@@" With such smooth sleight of hand you don't even know how she did it she suddenly has a leash clipped to your collar. "@@.npc_manager;Come, my dear. The night is young, and I have such plans for you...@@"<br>
<br>
She winks as she heads towards the exit, leading you on by your leash...<br>
<br>
<<if $scene.firstTime>>
[<<moveTo "event_manager_home_2" "Follow..." 300>>]
<<else>>
[<<moveTo "event_manager_home_3" "Follow..." 600>>]
<</if>>
</div>/*#
#desc: manager first trip home, elevator event
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 18 'little' $EXPOSED>>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImageManager() setup.charImageGeneric("generic_coworker_male")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_manager","formal")>> out of the office and into the elevator. Partway down another employee steps aboard. From the floor of their embarkation, and the way they stare at your leash, you get the feeling they are quite naive as to what REALLY goes on at Social Interaction Service Syndicate Inc.<br>
<br>
Noticing their attention <<=setup.getNpcName("npc_manager","formal")>> turns. "@@.npc_manager;Is there a problem?@@" She asks and the employee nervously stutters, already wilting in the presence of your <<=ps(setup.getNpcName("npc_manager","title"))>> nigh overwhelming force of personality.<br>
<br>
"@@.npc_manager;Good, because if you wanted to report something to the head of HR, well... I would be quite cross to be called back to the office to deal with the complaint.@@"<br>
<br>
It takes the employee a couple of moments to piece things together, after which their jaw drops even further and they stutter a response. "@@.generic_male1;Sorry, no, I, uh, everything is fine sir, uh, ma'am, er.@@"<br>
<br>
"@@.npc_manager;Wonderful.@@" <<=setup.getNpcName("npc_manager","formal")>> replies with a cat-like grin just as the elevator dings at the lobby. "@@.npc_manager;Well, go on then, run along home. You do not wish to be... tied up at the office for the weekend...@@"<br>
<br>
The <<man>> gulps, glancing at your leash once again before darting away. <<=setup.getNpcName("npc_manager","formal")>> smiles at you and then leans over to press the door close button and continue the descent down to the parking garage.<br>
<br>
"@@.npc_manager;And wipe that grin off your face — if I thought you would be laughing at the distress of a fellow employee I would have gagged you.@@"<br>
<br>
"@@.pc;Sorry, <<=setup.getNpcName("npc_manager","title")>>,@@" you quickly reply as the elevator resumes its descent.<br>
<br>
[<<moveTo "event_manager_home_3" "Continue." 300>>]
</div>/*#
#desc: manager home visit, parking garage
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.firstTime>>
<<addItemSet "chauffeuse_uniform">>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = true>>
<</if>>
<</if>>
<<if $scene.firstTime && setup.checkItemWorn('chauffeuse_jacket') && setup.checkItemWorn('chauffeuse_leggings') && setup.checkItemWorn('chauffeuse_gloves') && setup.checkItemWorn('chauffeuse_hat') && setup.checkItemWorn('chauffeuse_heels') && setup.checkItemWorn('leash_black')>>
<<initRoom>>
<<moveTo "event_manager_home_3_1">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parkinggarage.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.firstTime>>
The elevator opens onto one of the building's many sub-terranean parking garage levels. From the look of things you would estimate that this level is for senior management only as, though you are not exactly an expert on cars, you do not think a single vehicle in the lot is worth less than half a million credits.<br>
<br>
You follow on her leash as she leads you to what has to be one of the more impressive cars — a state of the art, throw-back inspired, Cadillac de Ville hover car. Sensing her approach the vehicle automatically turns on, a fancy gull-wing door swinging up in invitation.<br>
<br>
She seems to think for a moment before unclipping your leash and signaling the vehicle to open the drivers door. "@@.npc_manager;To start your service for the evening... how about you drive me home?@@"<br>
<br>
You start to object to this idea but she silences you with a single raised finger. "@@.npc_manager;Ah, ah — I know you used to work as a chauffeur, not for long, but plenty to be able to handle a single short drive. You adapted moving from IT to becoming my sweet <<if $fetish.sissy>>SISSI <</if>>Secretary, the switch from chauffeur to chauffeuse seems far simpler. Now be a good slave, and do as you are told.@@"<br>
<br>
You gulp nervously and start to get into the driver's seat only for her to snort in derision. "@@.npc_manager;What are you doing? You are dressed for the office, not the road — check the boot, you should find something more appropriate. But get to it! I do not want to waste away the entire night waiting in traffic!@@"<br>
<br>
<<if !setup.checkItemWorn('leash_black')>>
You unclip the leash and coil it in your hand only for <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze to narrow.<br>
<br>
<<printThought "I guess I should probably leave the leash on...">><br>
<br>
<</if>>
<<if $options.ezchange>>
[<<moveTo "event_manager_home_3_1" "Get changed." 300 "<<removeEverythingButUnderwear>><<wearItemSet 'chauffeuse_uniform'>><<if !setup.checkItemWorn('leash_black')>><<wearItem 'leash_black' true>><</if>>">>]
<</if>>
<<else>>
Your ride down the elevator is uneventful, and <<=setup.getNpcName("npc_manager","formal")>> leads you across the empty parking garage to her drop-dead gorgeous hover car.<br>
<br>
Glancing at you out of the corner of her eye she opens the back, "@@.npc_manager;I think it would be best if we let the auto-driver handle things, hmm?@@"<br>
<br>
You nod sheepishly, crawling into the back of the vehicle where she makes sure you are buckled tight before taking a seat next to you. Auto-drive engaged the vehicle lifts off and smoothly pulls away. She slides closer to you and wraps an arm around your shoulder and you gasp as the plug in your rear begins to softly vibrate.<br>
<br>
"@@.npc_manager;Shhh, we have a busy night ahead of us, we should take a few moments and just enjoy the drive...@@"<br>
<br>
The vibrations in your rear increase in intensity and you bite your lip, doing your best to follow her instructions to remain quiet and still, even as her continued teasing makes such quite difficult...<br>
<br>
[<<moveTo "event_manager_home_4" '"Enjoy" the ride...' 2400>>]
<</if>>
</div>/*#
#desc: manager home visit, change into chauffeuse uniform
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parkinggarage.png">>
<div id="invframe" class="scrolltext">
The trunk pops just as you come around and you find a uniform neatly folded on one side. Cap, gloves, a suit with buttons down the front... it is all quite sharp. And short. And tight, and entirely composed of polished latex. You try to ignore how long <<=setup.getNpcName("npc_manager","formal")>> must have been planning this for as you quickly change out of your work clothes and into the new outfit, finding it as perfectly fitted as you could hope. It leaves you feeling quite sharp and professional when you close the trunk and catch a glimpse of your reflection in the mirror-polished hood. You're a bit suspicious of the steep, stiletto heels from a "driving" perspective, but a car this expensive is liable to do most of that work on your behalf, and if your purpose is to look sharp for your owner well... you have plenty of experience in that regard!<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> has been sitting in the back seat the whole time, and she gives you a once-over and a nod of approval. The rear door closes smoothly and you take a deep breath, trying not to think of exactly what multiple of your net worth this vehicle is worth as you slide into the driver's seat.<br>
<br>
The first thing you notice is the utter opulent comfort of the car. The moment you sit down the seat literally reshapes around you, cradling you like it was literally cast for your rear, a five-point harness automatically clicking into place right on the border between bondage and race-safety...<br>
<br>
<<printThought "No, thinking about racing is a bad idea.">><br>
<br>
The same as the seat, the control devices shift to the perfect distance for you, the footwells somehow designed such that your heels slot in place for a feeling of stability rather than the uncomfortable lack of control you would have expected from driving in such steep footwear.<br>
<br>
You press a start button and the car rises off the ground, the silent engine almost eerie as the hover system smoothly lifts the vehicle a few centimetres off the ground. After taking a moment to glance at <<=setup.getNpcName("npc_manager","formal")>> smiling back at you through the mirror you take a deep breath, straighten your hat, and take hold of the wheel.<br>
<br>
[<<moveTo "event_manager_home_4" "Here we go..." 900>>]
</div>/*#
#desc: manager home visit, arrive
#status: FINISHED 0.8.3.0
#ignore_spell: hud
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.firstTime>>
<<changeHorny 100>>
<</if>>
<<set $npc_manager.flags.home_visit.count++>>
<</if>>
<<set $player.location to "Driving Across Town">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_vehicle.png">>
<div id="invframe" class="scrolltext">
<<if $scene.firstTime>>
You manage to keep things nice, easy, smooth and slow all the way up through the parking garage, but once you hit the actual street something happens. You don't know if it's the lights or the competitive presence of other vehicles, but whatever it is, a switch is thrown and you lose control.<br>
<br>
Perhaps "lose" control is the wrong word — on a certain level you are VERY in control, the vehicle egging you on with its seductive promise of power, while responding to your every whim with eager enthusiasm. A normal car already calls out to you to use it to its full degree, but this... from the monstrous engine to a steering so hyper-tuned you could use it for surgery the car is like a beast eager to be let out... and you do.<br>
<br>
You're so engrossed in the road you couldn't even say if <<=setup.getNpcName("npc_manager","formal")>> made a complaint from the back-seat as you weave through traffic at break-neck speed, hearing the car in your ear begging you to give it more power. You oblige, feeling your chest pressed back into the seat, the tight harness being put through its paces as you turn and weave, the destination dot on the navigational HUD getting closer and closer with every passing moment...<br>
<br>
Even wirelessly alerted of your arrival the automated gate for her house barely opens before you come screaming through, the vehicle going into a barely controlled slide as you dump velocity and drift right up to the door, stopping perfectly parallel to <<=ps(setup.getNpcName("npc_manager","formal"))>> front steps with a lurch. Your harness snaps free and the door swings open as if even the car has developed a fear of you and wishes you gone at the soonest opportunity.<br>
<br>
You step out and turn back to <<=setup.getNpcName("npc_manager","formal")>> who looks almost relieved as she steps out of the vehicle and places her feet back on the ground. "@@.npc_manager;Well.@@" She states in flat summary as your actions finally manage to catch up to you and you nervously stare at the ground. "@@.npc_manager;With normal traffic that would be a forty-minute trip... you just did it in fifteen. I think I can see why you did not have a long career as a driver. The results are... certainly impressive, but I daresay you would struggle for repeat business, to say nothing of the added insurance premiums against passenger heart attacks.@@"<br>
<br>
You brace for further punishment but she actually smiles at you. "@@.npc_manager;An invigorating trip... but I think we may let the auto-drive handle things in the future. Now. Welcome to my home.@@" She smiles as she gives you a moment to turn and get a second look at the imposing facade of her literal mansion. "@@.npc_manager;So, the first rule of my house — only dominants are allowed to walk through the front door fully clothed. As this is your first visit, and you are such a doting slave... I think naked AND crawling would be best. Hurry up and put that delightful uniform back in the trunk and take your proper place at my heel.@@"<br>
<br>
The private grounds and tall hedges surrounding her land may put you out of sight of any neighbors, but the casual instruction to strip naked outside still has you a bit giddy, even as you reflect on her warning that she would be testing your submission...<br>
<br>
[<<moveTo "event_manager_home_4_1" "Obey." 180 "<<set $scene.strip=true>>">>]<br>
<<if setup.getTotalValue("submission") >= 19>>
[@@.link_locked;She is your <<=setup.getNpcName("npc_manager","title")>>, this is her home. You could not imagine betraying her hospitality with disobedience.@@]<br>
<<else>>
[<<moveTo "event_manager_home_4_1" "She said slaves couldn't enter clothed AND walking, just crawl next to her." 180 "<<set $scene.strip=false>>">>]
<</if>>
<<else>>
If you ignore the buzzing in your rear, your trip is quite smooth and uneventful, particularly compared to that FIRST drive to <<=ps(setup.getNpcName("npc_manager","formal"))>> house. Of course, "ignoring" your rear is far from a possibility, and you spend the trip biting your lip, shifting in your seat and, occasionally letting out little gasps that <<=setup.getNpcName("npc_manager","formal")>> tries to pretend are a shameful distraction, but that you know she is finding just deliciously cute.<br>
<br>
By the time the vehicle glides through her gate and pulls up to her front steps your eyes are flickering, the effort of keeping control against the buzzing in your rear, your <<=ps(setup.getNpcName("npc_manager","title"))>> holding you close with one arm... and the way she keeps whispering how good you are, and how much she is looking forward to a "@@.npc_manager;Night alone with her slave...@@" well, to say you are on edge would be an understatement!<br>
<br>
The car door rises and <<=setup.getNpcName("npc_manager","formal")>> gets out, reaching back to offer you a hand and almost yanking you to your feet as you try to keep your balance — the fact that the plug in your rear continues to buzz away making this quite the challenge.<br>
<br>
"@@.npc_manager;Come, dinner is waiting.@@"<br>
<br>
She gently tugs on your leash as you recall that only Mistresses and Masters are allowed to walk through her door fully clothed. Obediently you slide to the ground and crawl after her up the padded steps and into her house.<br>
<br>
[<<moveTo "event_manager_home_4_alt_1" "Continue." 180>>]
<</if>>
</div>/*#
#desc: manager home repeat visit, enter house
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Foyer'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_foyer.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You feel a thrill with each crawling step you take up towards the entrance to <<=ps(setup.getNpcName("npc_manager","formal"))>>. The company may have been where you first met her, and at one time her control there felt absolute... but now, between <<=setup.getNpcName("npc_boss","formal")>> and the rest it has become a place of tension and fear, with the outside world little better. But here, with <<=setup.getNpcName("npc_manager","formal")>>, here you feel safe.<br>
<br>
You barely resist the urge to rush ahead, eager to enter her domain... but even more eager to do it at her side, HERS.<br>
<br>
She pauses as the door opens, and graces you with a smile before stepping through the door.<br>
<br>
[<<moveTo "event_manager_home_4_alt_2" "Crawl across the threshold." 180 "<<set $scene.strip=false>>">>]
</div>/*#
#desc: manager home visit repeat, prepare dinner
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Foyer'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_foyer.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As before she waits for you to get naked. She unclips your leash and offers a hand to help you to your feet, then leads you to the kitchen where dinner is just about ready and with it, your choice of how to serve it...<br>
<br>
[<<moveTo "event_manager_home_5" "Set the plates across from each other for a formal meal." 1800 "<<set $scene.kneelMeal=false>>">>]<br>
[<<moveTo "event_manager_home_5" "Give her her food and eat yours off the ground next to her." 1800 "<<set $scene.kneelMeal=true>>">>]
</div>/*#
#desc: manager home visit, first visit, strip/enter house
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.strip>>
<<removeItemSet 'chauffeuse_uniform'>>
<<removeAllClothing>>
<</if>>
<<if !setup.checkItemOwned('leash_black')>>
<<addItem 'leash_black' true>>
<</if>>
<<wearItem "leash_black" true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Home'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_foyer.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.strip>>
Obediently, you shed your chauffeuse outfit and the rest, neatly folding things in the trunk before taking your proper place on hands and knees at your <<=ps(setup.getNpcName("npc_manager","title"))>> side. "@@.npc_manager;Very good.@@" She states, reaching down to clip the leash back to your collar
<<else>>
Rather than remove the chauffeuse outfit and the rest, as ordered, you merely drop to your hands and knees at her side. "@@.npc_manager;That is... not the most auspicious start to the evening.@@" She notes as she leans down to clip the leash back to your collar. "@@.npc_manager;Your punishment just got a little worst.@@" She adds
<</if>>
before taking the first step up the stairs leading up to her imperious front door.<br>
<br>
The thick carpet running up the stairs seems specifically designed to provide much-appreciated cushioning for the knees of slaves such as yourself. Obediently one step behind your <<=setup.getNpcName("npc_manager","title")>>, you make your way up to the entrance to her house, your heart beating a little faster as you get closer, until you actually hold your breath to crawl across the threshold.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> has turned to watch as you finish crawling into the room. You look up and around at her breath-taking entryway, a massive chandelier modelled around four bound figures that it takes you an awed moment to confirm are merely statues.<br>
<br>
Following your gaze <<=setup.getNpcName("npc_manager","formal")>> smiles wistfully. "@@.npc_manager;Yes... it has been quite some time since the last time I threw a party and had things properly occupied... perhaps someday...@@"<br>
<br>
She gives your leash a tug and leads you on into the house. "@@.npc_manager;Tonight should be quite the interesting time, but I want you to remember two truths when you are here as my guest. First, is that I demand total obedience... and second, I promise total safety. Within these walls I am all powerful... do you understand?@@"<br>
<br>
<<if $scene.strip>>
[<<moveTo "event_manager_home_4_2" "Nod obediently." 180>>]
<<else>>
[<<moveTo "event_manager_home_4_2" "Nod, and remove your clothes as previously instructed." 180 "<<set $scene.strip_2=true>>">>]<br>
[<<moveTo "event_manager_home_4_2" "Nod." 180 "<<set $scene.strip_2=false>>">>]
<</if>>
</div>/*#
#desc: manager home visit, prepare dinner
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.strip>>
<<removeAllClothing>>
<<removeItemSet 'chauffeuse_uniform'>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Foyer'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_foyer.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.strip>>
You nod obediently. "@@.npc_manager;Perfection — you and I are going to have just the most wonderful night together.@@"
<<elseif $scene.strip_2>>
Feeling properly chagrined you quickly slip out of the tight chauffeuse outfit and the rest, folding things neatly next to the door as <<=setup.getNpcName("npc_manager","formal")>> looks on. "@@.npc_manager;Better. Though I do quite wish you had done things properly the first time. Prompt, perfect obedience without needing reminder or pestering, that is how a slave should strive to behave.@@"
<<else>>
You nod... and she frowns. "@@.npc_manager;Hmm... mind working a bit slow after a long day of work? Let me be more blunt.@@" Her eyes flare as she glares down at you. "@@.npc_manager_dom;Remove. Your. Clothes.@@"<br>
<br>
Wincing at the harsh tone of her voice, you quickly remove the tight chauffeuse outfit and fold it neatly next to the door. "@@.npc_manager;Better, now try to carry this energy forward through the rest of the evening.@@"
<</if>>
<br><br>
She smiles and offers a hand to help you to your feet. "@@.npc_manager;The threshold ritual is tradition. Now that you are in my domain, however... well, as we have no other guests, and I would rather not crick my neck constantly looking down at you. Come along, dinner should be about ready and I, for one, am quite famished.@@"<br>
<br>
You follow after her as she leads the way through a large, opulent dining room, and then on into a restaurant-quality kitchen where it seems that a half-dozen machines are occupied preparing some manner of meal.<br>
<br>
"@@.npc_manager;Of course these days I have neither the time, nor the staff, for a true home-cooked meal, but automation can do many wonders, and it suffices to give me something interesting to look forward to. Be a dear and plate things, would you?@@"<br>
<br>
With that parting order she turns and walks back into the dining room, stretching her arms and neck with an audible pop as she walks towards the head of the table.<br>
<br>
You plate two meals and then consider what to do with them...<br>
<br>
[<<moveTo "event_manager_home_5" "Set the plates across from each other for a formal meal." 1800 "<<set $scene.kneelMeal=false>>">>]<br>
[<<moveTo "event_manager_home_5" "Give her her food and eat yours off the ground next to her." 1800 "<<set $scene.kneelMeal=true>>">>]
</div>/*#
#desc: manager home visit, eat dinner
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You place the first plate in front of <<=setup.getNpcName("npc_manager","formal")>>,
<<if $scene.kneelMeal>>
then start to kneel next to her chair only for her to gently stop you with a finger under your chin.<br>
<br>
"@@.npc_manager;The sentiment is just lovely, but I want to look you in the eye while we eat, please, take a seat next to me. I promise debasement later, but, in a way, is it not the ultimate demonstration of submission to do so without the pageantry and trappings — for both of us to know deeply and truly that you hang obediently on every word, despite looking to an outside observer perfectly normal? Well, aside from your lovely nudity, I suppose.@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>,@@" you reply. You move your plate up to the table and take your seat, thinking about how right she is, how, no matter the situations, she has you as wrapped around her finger as her collar is around your throat.
<<else>>
then place yours next to her. Her eyebrow rises as you sit down, but says not a word as she reaches for her fork.
<</if>>
<br><br>
You unroll your napkin to find it empty of utensils. You start to rise to go fetch something only for <<=setup.getNpcName("npc_manager","formal")>> to stop you with a sly smile. "@@.npc_manager;Problem?@@"<br>
<br>
You sit back down and try to think of how to respond as she smiles wider, reaching over to your plate to spear a piece of food. "@@.npc_manager;Here, let me take care of you...@@"<br>
<br>
You part your lips as she brings the fork to your mouth, and you accept the bite as she smiles. The exchange, the way she has arranged things so that she has all the tools and you are left either deliciously at her mercy, or to eat with your hands in primitive squalor... she smiles wider, gently brushing your cheek before reaching for a knife and cutting you off your next portion...<br>
<br>
Whatever robotic chef system <<=setup.getNpcName("npc_manager","formal")>> owns, it is fantastic, even moreso fed to you by her hand as you spend the entire meal blushing and sitting obediently as she tenderly feeds you the entire contents of your plate one bite at a time, nibbling away at her own while you chew.<br>
<br>
Once both plates are clean you rise take them back to the kitchen. After placing them in the dishwasher you turn to find <<=setup.getNpcName("npc_manager","formal")>> smiling at you from the doorway.<br>
<br>
<<if $scene.firstTime>>
"@@.npc_manager;Very nice, but now... well, about your behaviour on the drive here. While I admire the... efficiency, I think you have earned a bit of a punishment for such recklessness.@@"<br>
<br>
You gulp; once again, your driving has gotten you in trouble. You really are cursed behind the wheel...
<<else>>
"@@.npc_manager;Very nice... of course your delightful behaviour only makes it more the pity that I am about to punish you. Oh, do not make that face, you have been perfectly behaved, but I do so love watching you squirm. A nice spot of pain is good maintenance for a slave, and a wonderful way to work off such a rich dinner! After all... we need to make room for dessert...@@"
<</if>>
<br><br>
[<<moveTo "event_manager_home_talk_1" "Wait! While you have her alone... there's something you wanted to talk about..." 60>>]<br>
[<<moveTo "event_manager_home_6" "Submit to her punishment." 1800 "<<set $scene.punish=true>>">>]<br>
[<<moveTo "event_manager_home_6" "Try and talk your way out of punishment." 1800 "<<set $scene.punish=false>>">>]
</div>/*#
#desc: manager home visit, ask to talk
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if, before you proceed to punishment, and since this is a safe place... could you ask her some things?<br>
<br>
She smiles graciously. "@@.npc_manager;Of course, my dear. And I do thank you for showing caution at the office. The walls have ears, as they say. Let us confine ourselves to those things that would NOT be appropriate for work, I would so like to enjoy the evening together rather than be bogged down by business that could be dealt with at some other time.@@"<br>
<br>
She has you pour her another glass of wine and sit back down across from her at the dining room table to wait to see what you have to say.<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, ask to talk
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> takes a sip of her wine and patiently waits to see what else you have to say.<br>
<br>
<<printNpcTheme 'npc_manager' 'privatethemes' 'event_manager_home_talk_2'>><br>
[<<moveTo "event_manager_home_talk_3" "That is all you have to talk about for now." 60>>]
</div>/*#
#desc: manager home visit, done talking
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Living Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_living.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_manager","formal")>> that you do not have anything else to talk about.<br>
<br>
[<<moveTo "event_manager_home_6" "Submit to her punishment." 1800 "<<set $scene.punish=true>>">>]<br>
[<<moveTo "event_manager_home_6" "Try and talk your way out of punishment." 1800 "<<set $scene.punish=false>>">>]
</div>/*#
#desc: manager home visit, punishment
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Living Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_living.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.punish>>
You nod obediently and ask what position would best facilitate her plans?<br>
<br>
She smiles, tenderly stroking your collar in a way that sends tingles of submissive joy through your body. "@@.npc_manager;So obedient, so perfect. You completely trust my judgement as to your correction... and in return, I promise that I shall always uphold that trust.@@"
<<else>>
<<if $scene.firstTime>>
You start to object that it isn't fair for her to punish you outside of work!<br>
<br>
"@@.npc_manager;Outside of work? And how would that possibly change anything?@@" She takes a step closer to you that suddenly reminds you that you are utterly naked, without even the benefit of your normal heels to bring you in some small way closer to her level. Her fingers reach up, taking hold of your collar and pulling just enough to remind you that it is secured around your neck. "@@.npc_manager;You wear my collar — you are mine. It does not matter the place or the time — I own you, so if I decide you need punishment, well... punished you shall be.@@"
<<else>>
You start to object that it isn't fair for her to punish you for no reason!<br>
<br>
"@@.npc_manager;No reason?@@" She takes a step closer to you that suddenly reminds you that you are utterly naked, without even the benefit of your normal heels to bring you in some small way closer to her level. "@@.npc_manager;But you just gave me one — talking back to your <<=setup.getNpcName("npc_manager","title")>>... not that I even need that.@@" She smiles, gently, but firmly, taking hold of your collar "@@.npc_manager;I own you, and you are mine to have and protect. Punishment, reward... if I wish it, it is on you only to obey...@@"
<</if>>
<</if>>
<br><br>
[<<moveTo "event_manager_home_7" "Submit to punishment." 1800>>]
</div>/*#
#desc: manager home visit, punishment
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Living Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_living.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.punish>>
<<=setup.getNpcName("npc_manager","formal")>> smiles at your obedience, as she guides you to your knees. You
<<else>>
You apologise softly for your error as you
<</if>>
drop obediently and she takes a moment to correct your posture, raising your chin high, your hands demurely resting on your thighs, and your butt raised slightly above your heels. She steps back and you
<<if $scene.firstTime>>
wait for the punishment to begin.
<<else>>
take a deep breath as you recall just how stressful this seemingly simple position will become.
<</if>>
<br><br>
As you kneel <<=setup.getNpcName("npc_manager","formal")>> begins speaking softly, gushing with compliments, about how proud she is of you, of all the progress you have made and how it has turned your gift of submission into a finely polished gem...<br>
<br>
Your heart swells, though you are distracted by an ache beginning to grow in your quads and you start to sit back... only for <<=setup.getNpcName("npc_manager","formal")>> to quickly correct. "@@.npc_manager;No, no, my dear. I positioned you just as I wanted you. Hold it, hold that beautiful, subserviently kneeling position... for me.@@"<br>
<br>
The pain in your lower body is growing, but you feel compelled to obey, rising back to the original position. "@@.npc_manager;Wonderful. So obedient, so lovely.@@" She tenderly strokes your face, helpfully moving a strand of hair out of your eye. "@@.npc_manager;There, is it not enjoyable to be able to display your submission in such a simple way? No running about, or handling corporate demands. Just you, and your <<=setup.getNpcName("npc_manager","title")>>. Your proud, proud <<=setup.getNpcName("npc_manager","title")>>, watching you kneel obediently...@@"<br>
<br>
With every passing second it becomes harder to hold the position, your knees and legs crying out in pain as stress builds, even as you grit your teeth and force yourself to remain still.<br>
<br>
You're so focused your chin dips slightly, but you correct it before even <<=setup.getNpcName("npc_manager","formal")>> can respond, an act that only spurs more gushing affection. "@@.npc_manager;Perfection. Even when you err you are so attuned to my desires you instantly correct, for you live to serve me, obedience as wonderfully cherished as it is delightfully demonstrated.@@"<br>
<br>
You close your eyes in concentration as you try to continue to follow what seemed such simple instructions. It is hard to believe that kneeling could be this challenging, and yet here you are — every passing second its own battle as you hang on your <<=ps(setup.getNpcName("npc_manager","title"))>> every encouraging word.<br>
<br>
"@@.npc_manager;You are doing so well, so very, very good... but I can see the struggle growing. Every second you prove yourself... knowing that your body is about to fail you, and yet determined not to ever fail her with your mind...@@"<br>
<br>
Your breaths are coming short and fast, your legs trembling as you try to last just a little longer...<br>
<br>
You fall, directly into <<=ps(setup.getNpcName("npc_manager","formal"))>> arms. She holds you close whispering in your ear and kissing you on the neck. "@@.npc_manager;Masterfully done, my pet. See how such simplicity can lead to such wonder, you proving your submission and me, that I shall always be there to catch you...@@"<br>
<br>
You slowly catch your breath, cradled in <<=ps(setup.getNpcName("npc_manager","formal"))>> arms until you force your eyes to flutter open, to look up at the smiling Goddess looking down.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sighs in satisfaction. "@@.npc_manager;I think that shall do, for now.@@" She chuckles as she slides you to the floor, taking a seat on the couch as she smiles down at you. "@@.npc_manager;Be a dear and get me an ice cream sandwich from the fridge... and hurry back, YOUR dessert is waiting for you.@@"<br>
<br>
Her smile turns to a grin as she spreads her legs, revealing her wet panties peeking out from under her skirt.<br>
<br>
[<<moveTo "event_manager_home_8" "Time for dessert..." 1800>>]
</div>/*#
#desc: manager home visit, dessert
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Living Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_living.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You rush to the kitchen for an ice cream sandwich and hurry back, bowing to your knees and offering it up with both hands.<br>
<br>
"@@.npc_manager;Lovely, and it is still cold,@@" she states as she accepts your gift. "@@.npc_manager;I was a little worried... given how hot you are.@@" She spreads her legs further in invitation as you notice she is no longer wearing underwear. "@@.npc_manager;Well, go on, you deserve dessert as well.@@"<br>
<br>
You crawl forward until your face is between her legs and you reach out to start licking. Her taste is as divine as always and your tongue eagerly reaches deeper as her thighs squeeze closed to hold you in place.<br>
<br>
You moan, licking and kissing harder, enthusiastically enjoying your "dessert" as she runs her fingers through your hair, humping your face as you do your best to suck her clit and probe your tongue deep into her love passage.<br>
<br>
"@@.npc_manager;Mmm, you have gotten so good at that...@@" <<=setup.getNpcName("npc_manager","formal")>> purrs, her pleasure audible even with her thighs muffling your hearing "@@.npc_manager;It is too bad lunch is so short or I would give you dessert every day... though the way you are eating now I would be afraid of making you fat...@@"<br>
<br>
You moan and lick even harder, feeling her orgasm so close and determined to give it to her...<br>
<br>
With single-minded focus you nibble and lick and suck and kiss, only for her legs to snap open and her to pull you away and hold you at arms length. She lets out a slow breath as you pant, lick your lips then stare at her in desperation, filled with an almost aching need to finish bringing her to orgasm.<br>
<br>
"@@.npc_manager;Later,@@" she states in response to your desperately pleading look. "@@.npc_manager;I love your energy, but I want to save that for later, for now... I want to relax and watch something, and I know just how you can help...@@"<br>
<br>
[<<moveTo "event_manager_home_9" "Continue." 600>>]
</div>
/% gag styled after tv_gag.jpg %//*#
#desc: manager home visit, tv setup
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "speaker_gag">>
<<wearItem "speaker_gag" true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Living Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_living.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You remain on your knees and watch in curiosity as <<=setup.getNpcName("npc_manager","formal")>> stands up and walks past you. "@@.npc_manager;Come over here.@@" She states, motioning you to stand in front of the wall.<br>
<br>
You suppose you aren't particularly surprised that her idea of "entertainment" involves you... though you are surprised when she pulls something down from above your head and soon a large gag is spreading your mouth VERY wide. You're puzzled at this new addition as the "gag" extends several centimetres past the side of your head on either side, making you certain it exists for some purpose beyond just keeping you silent.<br>
<br>
You are, of course, unable to ask, and <<=setup.getNpcName("npc_manager","formal")>> seems uninterested in providing unsolicited information, as she continues her mysterious preparations by lowering a flat-screen television down from the ceiling. She makes a few adjustments until the top of the TV is just below your chin and she attaches it to your collar before cuffing your wrists to either side — the result that you appear to be holding the TV.<br>
<br>
"@@.npc_manager;Lovely — you make a perfect frame,@@" she states as you realise that things are sized perfectly so that your <<if $player.body_ref.penis>><<getWordMyPenis>> just barely pokes out under the tv<<else>><<if !setup.checkItemTypeWorn("cage")>>bare crotch<<else>>gleaming chastity belt<</if>> is visible just below the tv<</if>>.<br>
<br>
She smiles and walks back to the couch, sitting back and leisurely wielding the remote. You gasp as three things happen — the screen turns on, sound begins emanating from the "gag" that you now realise is a sound-bar... and the various plugs and other "enhancement" filling you up and locked inside you begin to vibrate.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> leans back with a grin as you cannot quite tell which she is watching more — her show... or the helpless slave serving as a temporary "entertainment centre." A brief struggle confirms that the tv is very secure — and thus, so are you, the vibrations continuing on to tease you as you try not to drool down the screen.<br>
<br>
[<<moveTo "event_manager_home_10" "Continue." 3600>>]
</div>/*#
#desc: manager home visit, tv
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "speaker_gag" true>>
<<deleteItem "speaker_gag">>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<<applyExperience 'bondage' 12 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Living Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_living.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
From your angle you can't exactly see the screen, but from the sound, and dated dialogue, you're pretty sure it's some sort of old sci-fi serial... not exactly what you would have expected from the feared <<=setup.getNpcName("npc_manager","title")>> of HR... but from <<=setup.getNpcName("npc_manager","formal")>> she is certainly enjoying herself... and not just from watching you struggle and occasionally writhe in your bonds!<br>
<br>
<<if setup.findThemeId('npc_manager', 'other', 'theme_manager_other_cat') != -1>>
Partway through the film you almost fall as something surprises you by brushing past your leg. A moment later you watch as <<=setup.getNpcName('npc_cat', 'first')>> leaps up onto <<=ps(setup.getNpcName("npc_manager","formal"))>> lap.<br>
<br>
You feel a pang of jealousy that you're stuck "working" rather than cuddled up enjoying your <<=ps(setup.getNpcName("npc_manager","title"))>> pets but the sight of the happy feline, plus the constant distracting stimulation that has excitement leaking down your leg, soon has you distracted.
<<else>>
By the time she finishes you're panting and frantic, a trail of excitement running down your leg as a result of your being forced to endure constant stimulation that never rises far enough for a climax.
<</if>>
<br><br>
Turning off the tv, and with it, your vibrating stimulations, <<if setup.findThemeId('npc_manager', 'other', 'theme_manager_other_cat') != -1>><<=setup.getNpcName('npc_cat', 'first')>> hops away and casually strides out of the room and <</if>><<=setup.getNpcName("npc_manager","formal")>> rises from the couch and approaches you to efficiently free you from the "entertainment centre." "@@.npc_manager;Hmm... you seem to have made quite the mess!@@" She notes as she looks meaningfully at the trail of juices <<if setup.checkItemTypeWorn("cage")>>escaping your <<if setup.isCage()>>cage<<else>>belt<</if>> and <</if>>running down your leg. "@@.npc_manager;A nice bath sounds just the thing anyway. Come along.@@"<br>
<br>
She clips a leash back to your collar as you work stiffness out of your jaw and fall in behind.<br>
<br>
[<<moveTo "event_manager_home_11" "Continue." 3600>>]
</div>/*#
#desc: manager home visit, bath intro
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "leash_black" true>>
<<deleteItem "leash_black">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bath'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bath.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> leads you up a spiral staircase to what you judge is the "private" portion of the mansion — the ground floor seeming more oriented towards entertaining. The hallway decorated with artistic paintings depicting submissive slaves bound in various gorgeous, but strenuous, positions, your heart is racing just a little bit faster by the time you reach a bathroom and she starts filling the huge bath.<br>
<br>
Multiple taps have the water-level rising quickly and she turns to you with a smile, making no further motion as you realise that, while you are already naked, she must be expecting you to help her out of her clothes.<br>
<br>
[<<moveTo "event_manager_home_12" "Help her un-dress." 300 "<<set $scene.helpStrip = true>>">>]<br>
<<if setup.getTotalValue("submission") >= 19>>
[<<moveTo "event_manager_home_12" "She can un-dress herself." 300 "<<set $scene.helpStrip = false>>">>]
<<else>>
[@@.link_locked;Even an unspoken command is a command, you must do everything you can to aid your <<=setup.getNpcName("npc_manager","title")>>.@@]<br>
<</if>>
</div>/*#
#desc: manager home visit, strip for bath
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.helpStrip>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bathroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bathroom.png" setup.charImage("npc_manager","npc_manager_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.helpStrip>>
You submissively approach <<=setup.getNpcName('npc_manager', 'formal')>> and begin unbuttoning her shirt. She smiles down at you, letting the garment gently slide from her shoulders. You fold it neatly to the side and then unclasp her bra, her perfect breasts imperceptibly settling without the half-cup support. Your heart beats faster as you kneel down to unzip her skirt and lower it to the floor.<br>
<br>
She gently steps out and then raises a foot for you to remove her heel, doing the same for the other and then letting you roll her stockings down her legs.<br>
<br>
From your position kneeling on the floor you look up at your <<=setup.getNpcName('npc_manager', 'title')>> in awe. Even naked she exudes power, even moreso when you contrast her uncovered, free state with
<<else>>
After waiting a few moments for you to make a move to assist <<=setup.getNpcName('npc_manager', 'formal')>> begins shedding her clothes, unbuttoning her top, unclasping her bra, unzipping her skirt and then peeling down her stockings until she stands naked; her bare, perfect skin somehow contrasting with your own similar state; her freedom and power against your exposed subservience marked by
<</if>>
your <<if !setup.checkItemTypeWorn("cage")>>ownership-marking collar<<else>>pairing of collar and chastity<</if>>.<br>
<br>
She steps into the tub, the water nearly full. The lighting of the room gives her the aspect of some sort of magical water nymph as she motions for you to join her.<br>
<br>
She lays back in the tub and you enter beside her. When she turns on the jets it becomes almost like a jacuzzi. Though there remains enough space for at least another couple of bathers she seems uninterested in spreading out, instead pulling you close, her arm possessively wrapping round your shoulders as she taps a button that dispenses salts and oil to further augment the already luxurious bath.<br>
<br>
[<<moveTo "event_manager_home_13" "Enjoy the bath." 2400>>]
</div>/*#
#desc: manager home visit, bath
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<<washClothes>>
<<set _x = setup.cleanSexToys()>>
<<set _stress = -2*setup.getTotalValue("submission")>>
<<applyStress _stress>>
<<if setup.getTotalValue("foot")>10>>
<<applyExperience 'foot' 5 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'foot' 15 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bathroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bathroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_manager', 'formal')>> enjoy a long, leisurely and luxurious bath, first soaking in silence as the jets and salts melt away stress before she shifts things around, relocating you to be sitting in front of her as she washes your hair and then works the knots out of your neck and shoulders, the whole time whispering in your ear "@@.npc_manager;What a good slave you are...@@"<br>
<br>
By the time you switch positions so that you can wash her hair you're floating in sub space, a shoulder massage spreading outward as you worship her entire body, concluding with massaging her feet<<if setup.getTotalValue("foot")>10>> and passionately sucking each of her toes<</if>>.<br>
<br>
You're starting to get a bit pruny even as <<=ps(setup.getNpcName('npc_manager', 'formal'))>> remains utterly perfect when she turns off the jets and rises to her feet. You look up at her dripping, glistening form, a divine river goddess standing over you... and smiling down upon you.<br>
<br>
She steps out of the bath and you hurry to follow, patting her dry with one of the fluffiest towels you've ever held before holding a long silk robe for her to shrug into.<br>
<br>
She dries her hair while you towel yourself off, finishing remarkably quickly before nodding to you. "@@.npc_manager;Take a few moments to freshen up — I will be waiting for you in the bedroom.@@"<br>
<br>
Her robe somehow billows behind her as she walks out of the still-steamy bathroom and you look at the naked <<if $fetish.sissy>>sissy<<else>>slave<</if>> in the mirror. That is to say, yourself.<br>
<br>
<<printThought "Hmm, I wonder if there's anything special I can do for her?">><br>
<br>
[<<moveTo "event_manager_home_14" "Just dry off and join her in the bedroom." 300 "<<set $scene.prep=false>>">>]<br>
[<<moveTo "event_manager_home_14" "Dry off, fix your hair and makeup and see if you can find some perfume." 1800 "<<set $scene.prep=true>>">>]
</div>/*#
#desc: manager home visit, you freshen up
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.prep>>
<<set $player.makeup.messed = 0>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bathroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bathroom.png">>
<div id="invframe" class="scrolltext">
<<if $scene.prep>>
As eager as you are to join <<=setup.getNpcName('npc_manager', 'formal')>> in the bedroom, you feel duty-bound to be perfect for her. A fresh, fluffy towel quickly has you dried off and you spend some time getting your hair in perfect order.
<<if $player.makeup.template != "">>
Next up is makeup and you take advantage of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> VERY expansive battle station to get you looking perfect.
<<else>>
Fortunately your makeup is as permanent as it is perfect.
<</if>>
Looking through her shelf of perfume you try to think what she would like best, skipping past the ones that most remind you of her own scent before selecting something that smells light and a little sweet. You give yourself a couple of quick sprits before adjusting your collar<<if setup.checkItemTypeWorn("cage")>>, polishing your chastity <<if setup.isCage()>>cage<<else>>belt<</if>><</if>> and dropping to your hands and knees to crawl into the bedroom.<br>
<br>
She waits for you upon the bed, lying, no, posing, on her side, her robe tastefully positioned to enticingly cover her body. At the sight of you she smiles wider, clearly delighted by your submissive deference.
<<else>>
In a hurry to get back to <<=setup.getNpcName('npc_manager', 'formal')>>, you quickly dry off and head for the bedroom.<br>
<br>
She is lying... no, posing, on the bed, her robe tastefully positioned to cover her body while drawing the viewer in. She raises an eyebrow, perhaps in surprise at how quickly you have emerged.
<</if>>
<br><br>
[<<moveTo "event_manager_home_15" "Continue." 180>>]
</div>/*#
#desc: manager home visit, assessment/offer of sex
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<if (!$scene.firstTime || $scene.strip) && $scene.kneelMeal && $scene.punish && $scene.helpStrip && $scene.prep && setup.getTotalValue("submission") >= 19>>
<<=setup.getNpcName('npc_manager', 'formal')>> motions you forward until you are kneeling at the foot of the bed. "@@.npc_manager;Your behaviour tonight has been simply lovely. Exactly what I was hoping for when you asked to come home with me.@@" She sighs happily.
<<if $scene.firstTime>>
"@@.npc_manager;What a journey we have been on together, I thought I was merely getting a new <<if $fetish.sissy>>SISSI <</if>>Secretary... I hoped I would be able to train an efficient subordinate, but now I have a wonderfully obedient slave...@@"
<<else>>
"@@.npc_manager;Thus, well... a reward is in order.@@"
<</if>>
<<if setup.checkItemTypeWorn("cage")>> In one hand she fiddles with the key to your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>, teasing you as it catches the light and gives you yet another thing to focus on.<</if>><br>
<br>
You blush, <<if setup.checkItemTypeWorn("cage")>>your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> suddenly feeling a bit tighter, <</if>>the weight of your collar just a little more noticeable.<br>
<br>
<<if $player.body_ref.penis>>
"@@.npc_manager;So...@@" She states, her gaze drifting from your eyes down past your collar, and then to your <<getWordMyPenis>>.
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_manager;You have been so obediently locked — and your chastity has contributed so much to your wonderful development... as a reward, would you like me to unlock your secured friend for some fun... or would you prefer to remain completely on the receiving end of my blessing?@@"
<<else>>
"@@.npc_manager;Your lovely <<if $fetish.sph && $player.body.penissize[0] < 3>>little <</if>>friend is looking quite excited... as a reward, would you like to grant your friend some fun... or would you prefer to remain completely on the receiving end of my blessing?@@"
<</if>>
<br><br>
<<printThought "Is she... is she implying I'd be able to do her with my <<getWordMyPenis false>><<if !$options.disableSynonyms>>... er, my penis<</if>>?">><br>
<br>
[<<moveTo "event_manager_home_16_nopenis_1" "It would be your privilege to do her." 180>>]<br>
[<<moveTo "event_manager_home_16_penis_1" 'You would prefer to "receive" your reward.' 180>>]
<<else>>
"@@.npc_manager;So, I thought your lovely submission deserved an extra special reward...@@"<br>
<br>
You hold your breath as she reaches down and takes hold of her robe...<br>
<br>
[<<moveTo "event_manager_home_16_penis_1" 'Hold your breath.' 60 "<<set $scene.her_penis=true>>">>]
<</if>>
<<else>>
<<if (!$scene.firstTime || $scene.strip) && $scene.kneelMeal && $scene.punish && $scene.helpStrip && $scene.prep>>
She sighs. "@@.npc_manager;Your behaviour tonight was... well, it was almost perfect, but the passion... I could tell you had to think, constantly having to focus on "how do I show my obedience?" and, certainly, that is how to improve, but that is not what I want. What I desire from you, my lovely pet, is for your submission to be a fact — not a role you assume, but who you are. Show me that and... well...@@" She trails off with a smile and an oh-so-enticing twinkle in her eye.<br>
<br>
She gestures towards a pile of pillows at the foot of the bed. "@@.npc_manager;Come, it is late. You may sleep there.@@"<br>
<br>
<<printThought "Damn, if only I was more submissive...">>
<<elseif (!$scene.firstTime || $scene.strip) || $scene.kneelMeal || $scene.punish || $scene.helpStrip || $scene.prep>>
She slowly shakes her head. "@@.npc_manager;So tonight was meant to be a nice, relaxing, private affair, of <<=setup.getNpcName('npc_manager', 'title')>> and slave... unfortunately, you proved not quite up to the challenge. Wearing my collar is about more than just being my employee, my slave — it means giving yourself over to me completely... unfortunately, tonight, you did not quite meet my high expectations.@@"<br>
<br>
She gestures towards a pile of pillows at the foot of the bed. "@@.npc_manager;Come, you may sleep there.@@"<br>
<br>
<<printThought "Damn, if only I had been a little better behaved...">>
<<else>>
She slowly shakes her head. "@@.npc_manager;So tonight was meant to be a nice, relaxing, private affair, of <<=setup.getNpcName('npc_manager', 'title')>> and slave... unfortunately, your behaviour has been quite lacking. Wearing my collar is about more than just being my employee, it means giving yourself over to me completely... unfortunately, tonight, you have quite failed to meet that bar and, I confess, it has put me out of the mood.@@"<br>
<br>
She gestures towards a pile of pillows at the foot of the bed. "@@.npc_manager;Come, you may sleep there.@@"<br>
<br>
<<printThought "Why was I so misbehaved?">>
<</if>>
<br><br>
[<<moveTo "event_manager_home_17" "Continue." 180 "<<set $scene.bed_bondage=false>>">>]
<</if>>
</div>/*#
#desc: manager home visit, she reveals penis
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles
<<if $scene.her_penis && !$player.body_ref.penis>>
and pulls her robe aside to reveal a large, beautiful <<getWordPenis false>>.<br>
<br>
"@@.npc_manager;I thought... as a special occasion...@@"
<<else>>
"@@.npc_manager;I just knew you were going to say that... and thus, I came prepared.@@" She pulls her robe to one side to reveal... her cock. Not a strap-on like she first used on you so long before; though it looks similarly large to her implement, but a real, live cock.
<</if>>
As you stare at it in awed shock it twitches and she grins. "@@.npc_manager;Mmm... it likes you...@@" She rises to her feet and steps slowly towards you.<br>
<br>
Her robe hangs open to give you an unobstructed view of her sapphic sausage as it sways with each step. She stops in front of you, your vision filled with her glorious girl gorer. Hands akimbo she grins. "@@.npc_manager;Kiss it, my love.@@"<br>
<br>
[<<moveTo "event_manager_home_16_penis_2" 'Spread your lips and lean in...' 180>>]
</div>/*#
#desc: manager home visit, you suck her penis
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_manager.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
Your lips part and you start to suck <<=ps(setup.getNpcName("npc_manager","formal"))>> cock.
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
It tastes divine,
<<else>>
It tastes delicious,
<</if>>
one of the best cocks you've ever had the joy of servicing.
<<else>>
It tastes surprisingly... disturbingly good.
<</if>>
Your lips wrapped around her tip you look up at her with passionate devotion. She smiles, doing nothing to answer the mystery as to how she gained this lovely "enhancement." Questions are put aside in favour of service,
<<if setup.getTotalValue("oral") > 10>>
as you lean forward and deep-throat her
<<if setup.getTotalValue("oral") > 15>>
with ease.
<<else>>
after only a slight struggle.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
as you lean forward, relaxing your throat as best you can as you attempt, only to come a bit short, of deep-throating her glory.
<<else>>
your lips and fingers wrapped around her cock, knowing that you'll have to get creative as it is well beyond your throat's capacity.
<</if>>
<</if>>
Her control over you is so complete that you do not even need her hand on your head. No, merely having her between your lips fills you with the need to obey... and to show her all the pleasures your throat and tongue can provide.<br>
<br>
"@@.npc_manager;That will do,@@" she states, with just a slight tremor in her voice to confirm your effectiveness. "@@.npc_manager;As delightful as those lips are... <<if $player.body_ref.vagina>>I intend to do the full tour<<else>>I had in mind a different hole<</if>>.@@"<br>
<br>
You slowly pull back and take a slow, shuddering breath. "@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>,@@" you reply as you somewhat reluctantly let go of her hot rod, following her silent gesture for you to get up on the bed.<br>
<br>
<<if $player.body_ref.vagina>>
[<<moveTo "event_manager_home_16_penis_3" 'Continue.' 600>>]
<<else>>
[<<moveTo "event_manager_home_16_penis_4" 'Continue.' 600>>]
<</if>>
</div>/*#
#desc: manager home visit, she does your cunt
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vagvirgin = !$player.virgin.vaginal>>
<<if $scene.vagvirgin>>
<<set $player.virgin.vaginal = "npc_manager">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_6'
0
'event_psychiatrist_session_vaginal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_vag'
0
'theme_church_confession_vag'
true
>>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_manager">>
<</if>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "obedient">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<</if>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You find yourself lying back on the bed as <<=setup.getNpcName("npc_manager","formal")>> looms over you, her <<getWordPenis false>> glistening with your saliva.<<if $scene.removeCage>> Key in hand, she unlocks your <<if $scene.isCage>>cage<<else>>belt<</if>>.<</if>>
<<if $scene.vagvirgin>>
"@@.npc_manager;You ready? Going to all the trouble to get yourself a lovely, inviting hole...<<if setup.checkItemTypeWorn("cage") && setup.isCage()>> and then to have it locked away.<<else>>and then to keep it untouched...<</if>> I hope the wait was worth it, because I, your <<=setup.getNpcName("npc_manager","title")>>, am about to fuck your sexy cunt and claim it as my own...@@" She leans closer and whispers an ever-so-soft "@@.npc_manager;Thank you.@@"
<<else>>
"@@.npc_manager;Mmm, could you have imagined this moment when we first met? That, not only would you end up with a sexy slit of your own, but that you would be submissively waiting for me to fuck it?@@"
<</if>>
<br><br>
You bite your lip in anticipation as she presses the wet tip of her <<getWordPenis false>> against you... and pushes in.<br>
<br>
You moan — her cock, a real, flesh-and-blood, extension of your glorious <<=setup.getNpcName("npc_manager","title")>> is sliding into you... and it feels amazing. You want to tell her how much you love it, how good it makes you feel as she begins to pump her hips and press deeper, but you cannot form words.<br>
<br>
<<if $scene.vagvirgin>>
<<printThought "Is this how it always feels? How could I have missed out on this rapture for so long...">><br>
<br>
<</if>>
She smiles, seeing in your eyes everything you want to say, but can't. She reaches down to grab you by the collar, leaning in and lifting you up as you wrap your arms around her. She presses her lips against your own. You are hers, perfectly and utterly, her hot <<getWordPenis false>> filling you with each mind-blowing thrust, her lips peppering your face as you gasp. "@@.npc_manager;Cum for your <<=setup.getNpcName("npc_manager","title")>>, cum for me my love.@@" She whispers in your ear, and you do, a series of orgasms so strong you can't even scream, all sound frozen in your throat as her pace increases and the pleasure rolls on and on until you shudder and go limp.<br>
<br>
She steps back, standing over you like a conquering goddess. "@@.npc_manager;You look so beautiful like this — broken and overwhelmed by pleasure, but ready to give your everything for even more...@@" She grins in a way that sparks a jolt of fear. "@@.npc_manager;You have one final hole remaining... and I am going to take it, and you, completely.@@"<br>
<br>
[<<moveTo "event_manager_home_16_penis_4" "Continue." 600>>]<br>
</div>/*#
#desc: manager home visit, she does your ass
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.analvirgin = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_manager">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "obedient">>
<<include "analUnlocks">>
<</if>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> easily lifts you up onto your hands and knees and you find yourself staring at your own reflection in the mirrored headboard. She matches your gaze in the reflection as she comes up from behind...<<if $scene.removePlug>> and then you feel the plug slide out of your ass, and her <<getWordPenis false>> take its place.<</if>><br>
<br>
You may have previously received her strap-on, but, though it feels of similar dimension, the real flesh-and-blood version is so, so much better. Warm and wet, her blood pumping through it as her broadsword sheaths into your rear... being taken like this is like nothing you've ever felt.<br>
<br>
She holds your hips and keeps pumping, her hot, thick rod plundering your "forbidden" hole, taking you completely. Leaning over she nibbles at your ear, one hand reaching under to
<<if $player.body_ref.penis>>
<<if !$scene.removeCage>>
stroke your <<getWordMyPenis>>
<<else>>
<<if $scene.isCage>>
grab your cage
<<else>>
stroke the front of your belt.
<</if>>
<</if>>
<<else>>
finger your clit
<</if>>
and drive you to even greater heights of pleasure. "@@.npc_manager;All mine. Every hole, every sensitivity, every meep of joy or moan of pleasure... they, and you, belong to me. To guide and to shape and to bring to depths of submission and plateaus of pleasure you never even dared imagine...@@"<br>
<br>
Your entire body is on fire with lust in confirmation of her words and you cum, limbs giving out as you collapse on the bed and she keeps riding you, pounding you into the mattress as your let out all of your frustrations in a rolling, full-body orgasm that shakes the foundations of your being.<br>
<br>
[<<moveTo "event_manager_home_16_penis_5" "You pass out from pleasure." 300>>]
</div>/*#
#desc: manager home visit, wake up from orgasm overload
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $npc_manager.flags.home_visit.penis_you = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You blink to find you are lying with your head in <<=ps(setup.getNpcName("npc_manager","formal"))>> lap, looking up at her as she tenderly strokes your hair.<br>
<br>
"@@.npc_manager;Seems things got to be a bit much for you... perhaps I need to invest more time in increasing your... pleasure threshold.@@"<br>
<br>
Your thoughts are still soft from the memory of the overwhelming experience you just shared, the thought of more of the same... you blush and she smiles, leaning down to kiss on you on the forehead.<br>
<br>
"@@.npc_manager;Some other visit. For now, it is late, and it is a work night. We need to get to sleep.@@"<br>
<br>
As much as you like the idea of staying up forever with your <<=setup.getNpcName("npc_manager","title")>>, the mention of sleep sounds very nice...<br>
<br>
"@@.npc_manager;Ah, ah! You cannot just pass out here! No, first we need to get you ready for bed...@@"<br>
<br>
[<<moveTo "event_manager_home_17" "Continue." 180 "<<set $scene.bed_bondage=true>>">>]
</div>/*#
#desc: manager home visit, she reveals vagina + removes chastity
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_manager">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_virgin'
0
'theme_church_confession_virgin'
true
>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "npc_manager">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<</if>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You almost can't believe yourself but you nod, whispering that you would love to...<br>
<br>
Even after the invitation you cannot manage to speak the words but she smiles, sliding to her feet, her robe falling open to reveal her perfect breasts and glistening snatch.<br>
<br>
"@@.npc_manager;Just as I thought — and there is no need to be embarrassed. You are my slave — all that you do is in service to me, so silly conflations of top with domme... they are meaningless, and I promise that I will have you feeling the complete obedient submissive the entire time...@@"<br>
<br>
In a swift, smooth twirl she reverses your positions to have you laid out on the bed. Your <<if $scene.removeCage>>chastity <<if $scene.isCage>>cage<<else>>belt<</if>> clicks and pops open, your <<getWordMyPenis>> springing excitedly to attention<<else>><<getWordMyPenis>> standing hard at attention<</if>>.<br>
<br>
She grins, stroking it once with fingers that send lightning up and down your length... before she lifts your legs and folds you in half. She raises up until she is just brushing the tip of your upwards-pointing rod.<br>
<br>
[<<moveTo "event_manager_home_16_nopenis_2" "Get fucked Amazon-style..." 180>>]
</div>/*#
#desc: manager home visit, you do her
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.virgin = !$player.virgin.top_fem>>
<<if $scene.virgin>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_manager">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_virgin'
0
'theme_church_confession_virgin'
true
>>
<</if>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "npc_manager">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<</if>>
<<if !$player.virgin.penis>>
<<set $player.virgin.penis = "npc_manager">>
<</if>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "obedient">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<</if>>
<<playerOrgasm>>
<<set $npc_manager.flags.home_visit.penis_her = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
She stands over you, rubbing your <<getWordMyPenis>> between her folds to get it wet.
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
She smiles at how your small <<getWordMyPenis>> almost disappears between her folds.
<<if $fetish.sph>>
"@@.npc_manager;Mmm. Look at this poor thing, so small, so cute. But I wanted to do something special for you, so even if I am not really feeling anything, well... I will make sure you do...@@"
<<else>>
"@@.npc_manager;Mmm... feels good, doesn't it?@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Mmm... you feel so good... and so beautiful wrapped in my folds...@@"
<<case 'none'>>
"@@.npc_manager;Mmm... feels good, doesn't it?@@"
<<default>>
ERROR: unhandled player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 2 3>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
She smiles at how your <<getWordMyPenis>> half-disappears between her folds.
<<if $fetish.sph>>
"@@.npc_manager;Mmm. Look at this cute little thing. But I wanted to do something special for you, so even if I am not really feeling anything, well... I will make sure you do...@@"
<<else>>
"@@.npc_manager;Mmm... feels good, doesn't it?@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Mmm... you feel so good... and so beautiful wrapped in my folds...@@"
<<case 'none'>>
"@@.npc_manager;Mmm... feels good, doesn't it?@@"
<<default>>
ERROR: unhandled player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 4 5>>
She smiles as she rubs up and down.
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_manager;Mmm, I forget, sometimes, what a wonderful thing it is <<if $npc_manager.flags.require_chastity>>I<<else>>you<</if>> keep locked up. Definitely the right move to keep a prize like this safe and secure, but maybe I could bring it out for use more often...@@"
<<else>>
"@@.npc_manager;Mmm, I forget, sometimes, what a wonderful thing you have down here, and yet for all its size it only serves to enhance your cuteness...@@"
<</if>>
<<case 6>>
For a moment you think <<=setup.getNpcName("npc_manager","formal")>> is taken aback by your
<<if $player.body_ref.knot || $player.body_ref.horsecock>>
monstrous <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon<<elseif $player.body_ref.horsecock>>horse<<elseif $player.body_ref.knot>>dog<<else>>ERROR!<</if>>-cock. But then she rises onto her toes and angles the thick head into her.
<<else>>
massive member standing up hard and straight.
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_manager;I sometimes forget what a monster <<if $npc_manager.flags.require_chastity>>I<<else>>you<</if>> keep locked away... if your co-workers only knew what was lurking under your tight skirt, and that sweet, seductive facade...@@"
<<else>>
"@@.npc_manager;I sometimes forget what a monster you have lurking betwixt your legs... and yet for all its power it only enhances your sweet, seductive facade...@@"
<</if>>
<br><br>
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
She slowly lowers onto you, your heart racing faster by the moment as you slide in, her tight, wet hole as divine as she is. The way she squats over you with your legs bent back and your shoulders pinned leaving you feeling as submissive as you have ever felt being fucked.<br>
<br>
You look at <<=setup.getNpcName("npc_manager","formal")>> in awe as she moves up and down on your <<getWordMyPenis>>.
<<if $scene.virgin>>
"@@.npc_manager;First time?@@" she asks with a knowing grin, "@@.npc_manager;I would apologise for ruining you for all other women, but with you locked and under my control, well... that would seem, at the most, a fringe concern.@@"
<</if>>
She quickens her pace, pinning your shoulders down with her hands as waves of pleasure start to make you thrash on the bed. With smooth, powerful strokes she takes your entire length and then rises back up, squeezing you the entire time, fucking you and making love to you at the same time as her glorious cunt draws pleasure out of every millimetre of your cock.
<<if $player.body_ref.knot>>
Perhaps most astounding of all is how every stroke sees your thick knot pop in, and then pop out, each time an even more potent explosion of pleasure as she gushes over you.
<</if>>
<br><br>
You want to cum... and yet seem incapable even as she rises and falls, occasionally moaning her own pleasure as you watch her abs strain and her perfect breasts bounce.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_manager;Mmm, that feel good? You like fucking your <<=setup.getNpcName("npc_manager","title")>>, hmm? You like serving me with your pathetic excuse for a cock?@@"
<<else>>
"@@.npc_manager;Mmm, that feel good? You like fucking your <<=setup.getNpcName("npc_manager","title")>>, hmm?@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Mmm, that feel good? You like fucking your <<=setup.getNpcName("npc_manager","title")>>, hmm? You like it when I ride your perfect little cock?@@"
<<case 'none'>>
"@@.npc_manager;Mmm, that feel good? You like fucking your <<=setup.getNpcName("npc_manager","title")>>, hmm?@@"
<<default>>
ERROR: unhandled player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 4 5>>
"@@.npc_manager;Mmm, that feel good? You like fucking your <<=setup.getNpcName("npc_manager","title")>>, hmm? You like serving me with your big, beautiful cock?@@"
<<case 6>>
"@@.npc_manager;Mmm, that feel good? You like fucking your <<=setup.getNpcName("npc_manager","title")>>, hmm? You like serving me with your monster cock?@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
"@@.npc_manager;You are so close, aren't you? Well go on then, cum for your <<=setup.getNpcName("npc_manager","title")>>, show me how much you love me by filling me with your joy...@@"<br>
<br>
Her permission seems to have been the final piece and you feel the unleashed orgasm rush through you with vigour that has you cumming harder than you ever have before...<br>
<br>
[<<moveTo "event_manager_home_17" "You pass out." 180 "<<set $scene.bed_bondage=true>>">>]
</div>/*#
#desc: manager home visit, tucked in for bed
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<if $scene.bed_bondage>>
<<set $player.timebased.fatigue = 0>>
<<applyStress -10>>
<<addItemSet 'manager_bed_bondage'>>
<<wearItemSet 'manager_bed_bondage'>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<if $scene.bed_bondage>>
Still feeling wiped-out by your monstrous orgasm
<<if $scene.removeCage>>
you notice that she has locked you back in chastity while you were out. She helps you to your feet,
<<else>>
she helps you to your feet,
<</if>>
and you notice that she has already laid out a latex catsuit and some restraints across the other end of the bed.<br>
<br>
The catsuit slides on easily and she follows it up with a corset and ballet boots before guiding you down onto the bed.<br>
<br>
She cuffs your elbows and wrists behind your back and starts pulling your feet up into a loose, but still restrictive, hog-tie when you finally open you mouth to ask what's going on.<br>
<br>
"@@.npc_manager;Simple. I cannot have you thrashing around in the middle of the night. What little sleep I allow myself to indulge in is very important, thus, while I adore sleeping curled up with a slave, I do so only after taking stringent measures to ensure they cannot accidentally be a detriment. It would be so unfair if I was forced to punish you for your uncontrolled actions whilst slumbering so, I suppose, this is really for your own good!@@"<br>
<br>
You freeze with your mouth open as you try to consider this, <<=setup.getNpcName("npc_manager","formal")>> takes your parted lips as invitation and slides a small gag between your lips, harnessing it securely around your head and incorporating a blindfold "@@.npc_manager;This should keep you from being distracted and give you a nice, relaxing sleep,@@" she explains as she finishes off with a set of ear-pads that seal you away from the slightest sound.<br>
<br>
Bound, gagged, mute, blind and deaf you can barely even wiggle in response, and then you moan into your gag as gentle vibrations begin softly stimulating your sensitive bits...<br>
<br>
You feel the bed shift as <<=setup.getNpcName("npc_manager","formal")>> lays down next to you, feeling the warmth of her lips through the latex as she kisses you on the forehead and cuddles against you...<br>
<br>
As helpless as you are, being in <<=ps(setup.getNpcName("npc_manager","formal"))>> arms makes you feel safe, and, with the gentle help of the vibrations, you drift to sleep.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> supervises as you curl up in the pile of pillows at the foot of the bed, finishing up by locking your leash to the sturdy bed itself. Looks like you won't be taking any nocturnal jaunts to the kitchen.
<br>
She tucks you in under a warm blanket and then gets into bed herself. The lights dim and it is only a few minutes before you hear her breaths soften as she falls asleep. With nothing to do, and lulled along by the sound of her breathing, you slip into slumber.
<</if>>
<br><br>
<<if $now.getUTCHours() < 4>>
<<set _morning = setup.setNextDate($now, 0, 4, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 4, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_manager_home_18" "Sleep." _timeToMorning>>]
</div>/*#
#desc: manager home visit, sleep
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bed_bondage>>
<<set $player.timebased.fatigue = 0>>
<<applyStress -10>>
<<else>>
<<set $player.timebased.fatigue = 50>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.bed_bondage && setup.getTotalValue("heels") > 10>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<<else>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.bed_bondage>>
Despite your stringent bondage, and constant teasing stimulation you actually sleep calmly, the feeling of your <<=setup.getNpcName("npc_manager","title")>> holding you close making it feel, for a little while, that everything is as it should be, and it will all turn out alright...<br>
<br>
You wake to find yourself alone, and you thrash in panic only to feel a hand on your shoulder. The vibrations pick up and you moan through your gag, one of your ear-muffs removed as your day is opened with a soft. "@@.npc_manager;Good morning, my pet. It is time to get ready for work...@@"<br>
<br>
After that initial burst of excitement your vibrators fall silent and you feel her unbuckling your hog-tie. A few moments later and she is helping you to your feet.
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
Even blind you have no trouble standing proud in the steep ballet heels.
<<else>>
Still blind, you somehow manage to perch on the steep ballet heels.
<</if>>
<br><br>
You feel her unbuckling your head harness and a moment later you are able to see. You may no longer be gagged, but your jaw drops nonetheless as you look upon <<=setup.getNpcName("npc_manager","formal")>> — dressed in a stunning latex ensemble; skin-tight catsuit with integrated corset covering her from the neck down, matching boots laced up to her knee and the gleaming steel attachment ring of a strap-on ominously buckled around her waist.<br>
<br>
From the neck up she looks her normal "business" self but you struggle to come up with a response. "@@.npc_manager;You like?@@" She asks with a smile.<br>
<br>
[<<moveTo "event_manager_home_19" "Nod." 60>>]<br>
[<<moveTo "event_manager_home_19" "Say Yes." 60>>]<br>
[<<moveTo "event_manager_home_19" "Answer in the affirmative." 60>>]<br>
[<<moveTo "event_manager_home_19" "Remain speechless." 60>>]
<<else>>
Even with sight ballet boots would be a challenge. Blind, as you are, you end up just falling helplessly back onto the bed.<br>
<br>
"@@.npc_manager;Disappointing.@@" She states before unlacing the boots. A minute later you are standing up normally, your hood removed to reveal that <<=setup.getNpcName("npc_manager","formal")>> is already dressed for the day. She motions to the pile of your clothing. "@@.npc_manager;Do hurry and get yourself ready, I have an early telecom I need to prepare for.@@"<br>
<br>
<<printThought "Hmm... it feels like my lack of skill in heels just cost me something... maybe I should practice more?">><br>
<br>
[<<moveTo "event_manager_home_19" "Continue." 180>>]
<</if>>
<<else>>
You are awoken to <<=setup.getNpcName("npc_manager","formal")>> standing over you, already dressed for work. "@@.npc_manager;Up and at them, my dear.@@"<br>
<br>
You blink up at her; she is already dressed for work.<br>
<br>
[<<moveTo "event_manager_home_19" "Continue." 180>>]
<</if>>
</div>
/% work_after_night.png%//*#
#desc: manager home visit, morning "dressing"
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.special_work = $scene.bed_bondage && setup.getTotalValue("heels") > 10>>
<<if $scene.special_work>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<elseif $scene.bed_bondage>>
<<removeItemSet 'manager_bed_bondage'>>
<<deleteItem 'armbinder_black'>>
<<deleteItem 'ball_gag_black'>>
<<deleteItem 'latex_hood_blind_black'>>
<<deleteItem 'leather_thigh_cuffs'>>
<<deleteItem 'leather_ankle_cuffs'>>
<</if>>
<<set $scene.milk = $player.body_ref.milkProduction > 0 && $player.body.breastsize[0] > 3>>
<<if $scene.milk>>
<<set $player.timebased.milking.milk_supply = Math.min(4*$player.body.breastsize[0], $player.body_ref.milkProduction)>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.special_work>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<<else>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.special_work>>
<<=setup.getNpcName("npc_manager","formal")>> laughs in amusement at your response. "@@.npc_manager;Yes, I know it is a bit... much for normal office wear but, well, I thought we could make a bit of a statement this morning. Let me help you into the rest of your outfit.@@"<br>
<br>
The "rest" of your outfit turns out to be tightening your corset to its smallest size, adjusting your arms into an even more severe reverse-prayer position, hobbling you with cuffs at the ankle and thigh, and finishing it all off with a polished latex hood that leaves you all but blind. As if you were not helpless enough, <<=setup.getNpcName("npc_manager","formal")>> tops you off with a fresh, massive ball-gag.<br>
<br>
"@@.npc_manager;Perfection.@@" <<=setup.getNpcName("npc_manager","formal")>>
<<if $scene.milk>>
states, before pausing for a moment as her eyes drift to your full breasts. "@@.npc_manager;Hmm... those look like a mess waiting to happen...@@" You gasp through your gag as she momentarily exposes your breasts and holds a thermos in front of each nip in turn as she squeezes out two brief spurts of milk. She knocks the whole thing back in one shot and smiles. "@@.npc_manager;A delicious start to the day,@@" she adds as she clips a leash to your collar.
<<else>>
states as she clips the leash to your collar and places a soft kiss on your gag.
<</if>>
"@@.npc_manager;This will definitely spark some jealous rumours, now come along — and step lively!@@"<br>
<br>
You try to estimate how many steps to go from the side of <<=ps(setup.getNpcName("npc_manager","formal"))>> bed up the hall, down the stairs, and then out to the car. Given the short, mincing motions that are all your hobbles will allow... the answer is certainly a lot. You take the first step as you hurry to keep up with your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
[<<moveTo "event_manager_home_20" "Continue." 1800>>]
<<else>>
<<if 'office' == setup.analyzeWornTags(['casual','office','formal','schoolgirl']) && setup.computeWorstGender() == "female" && setup.checkItemTypeWorn("bra") && setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("stockings") && setup.getItemFromType("shoes") && setup.getItemObjFromType("shoes").hasOwnProperty("heels") && setup.checkItemTypeWorn("plug")>>
<<=setup.getNpcName("npc_manager","formal")>> smiles at you. "@@.npc_manager;Wonderful, all dressed and ready for work.@@"<br>
<br>
<<if $scene.milk>>
She pauses for a moment, her drifting to your full breasts. "@@.npc_manager;Hmm... those look like a mess waiting to happen...@@" You gasp as she momentarily exposes your breasts and holds a thermos in front of each nip in turn as she squeezes out two brief spurts of milk. She knocks the whole thing back in one shot and smiles. "@@.npc_manager;A delicious start to the day,@@" she adds as she clips a leash to your collar as
<<else>>
She
<</if>>
clips a leash to your collar and leads you out of the bedroom.<br>
<br>
[<<moveTo "event_manager_home_20" "Follow." 180>>]
<<elseif !setup.checkNaked() || !setup.checkItemTypeWorn("plug")>>
<<if !setup.checkNaked()>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Come, now. You know very well by now that that is not appropriate office attire. It would be the height of absurdity to head to work together and then for you to immediately fail your inspection.@@"<br>
<br>
<</if>>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.npc_manager;Why did you remove your plug? You know keeping that cute rear hole of yours filled is part of your job requirements!@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_home_20" "Put your work clothes back on." 1800 "<<useClothSetPop 'office'>>">>]
<<else>>
<<if $scene.bed_bondage>>
You slip out of your nocturnal catsuit and corset; compared to their glorious tightness your "normal" attire seems almost drab, but that is the office dress-code.
<</if>>
You look up at <<=setup.getNpcName("npc_manager","formal")>> waiting somewhat impatiently for you to get dressed...<br>
<br>
[<<moveTo "event_manager_home_20" "Put your work clothes back on." 1800 "<<useClothSetPop 'office'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: manager home visit, travel to work
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.special_work>>
<<set $npc_manager.flags.home_visit.fail=true>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<</if>>
<<set $player.location to "Driving Across Town">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_vehicle.png">>
<div id="invframe" class="scrolltext">
<<if $scene.special_work>>
It takes some time but <<=setup.getNpcName("npc_manager","formal")>> seems to enjoy the display of you wiggling and mincing your way after her. Eventually you reach the car where she slides you into the driver's seat and straps you down. "@@.npc_manager;We shall be using the auto-pilot, of course, but I figured this would be a good lesson for you... plus, it will ensure you remain secured for the journey.@@"<br>
<br>
You "@@.pc;Mmmfff!@@" through your gag and she chuckles. She closes the door and gets into the back-seat, you can barely make out her smiling, authoritative expression as the car smoothly lifts into the air and slides forward.<br>
<br>
Just as the vehicle clears the front gate your vibrations start up again...<br>
<br>
[<<moveTo "event_manager_home_21" "Enjoy the ride..." 2400>>]
<<else>>
With both of you dressed <<=setup.getNpcName("npc_manager","formal")>> leads the way back to the car where you enjoy a smooth ride to work and a swift ride up the elevator to the office.<br>
<br>
"@@.npc_manager;And another day begins.@@" <<=setup.getNpcName("npc_manager","formal")>> states... whether for your benefit or for the recording devices peppering the office, you are uncertain. With a parting nod she heads into her office, leaving you to take your desk and begin work.<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Start work." 600 "<<setScene true>>">>]
<</if>>
</div>/*#
#desc: manager home visit, arrive at work in bondage
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "submission" "submissive_secretary" "final_submission">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Lobby'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<div id="invframe" class="scrolltext">
Between your predicament itself and the buzzing torment going on underneath your suit you are a horny, sweaty <<if $fetish.sissy>>sissy<<else>>thing<</if>> by the time you reach the office. Instead of descending into the parking garage, as you expected, the vehicle pulls to a stop right in front of the main lobby doors!<br>
<br>
Bound as you are you can do nothing but follow obediently as <<=setup.getNpcName("npc_manager","formal")>> lifts you out of the vehicle, sets you down, and leads you through the lobby by your leash.<br>
<br>
From the moment you step through the lobby doors the two of you are the centre of attention. You don't know who is garnering more focus; your glorious <<=setup.getNpcName("npc_manager","title")>> in her queen of the dungeon latex ensemble... or you — bound, gagged and, to the outside world, anonymous, a trussed-up slave following their owner as the world looks on.<br>
<br>
Each click of heels — your rapid shuffling and <<=ps(setup.getNpcName("npc_manager","formal"))>> sharp steps, echos in the lobby, nobody else speaking above a whisper as they watch in awe as the two of your cross the large room and then step into the elevator.<br>
<br>
Your nostrils flare as you try to catch your breath in the momentary privacy and <<=setup.getNpcName("npc_manager","formal")>> looks over at you with a smile. "@@.npc_manager;Such a lovely way to start the day, would you not agree?@@"<br>
<br>
Your only response is a gag-muffled moan before the elevator door opens on the twenty-first floor... to reveal a
<<if $scene.firstTime>>
shocked <<man>> apparently about to ride up.<br>
<br>
The <<man>>... who you suddenly recognise is the same one you ran into going home yesterday, stares in shock, clearly utterly unprepared to be presented with such a scene this early in the day.
<<else>>
momentarily shocked... and then obviously jealous <<man>>.
<</if>>
<br><br>
"@@.npc_manager;Well stop staring and get in.@@" <<=setup.getNpcName("npc_manager","formal")>> commands, "@@.npc_manager;The company is not paying you to gawk at senior management.@@"<br>
<br>
[<<moveTo "event_manager_home_22" "Continue." 180>>]
</div>/*#
#desc: manager home visit, elevator encounter
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_dom_2") setup.charImageGeneric("generic_coworker_male")>>
<div id="invframe" class="scrolltext">
The <<man>> steps into the elevator and turns around, but the polished steel means that there is no direction <<he>> can look without being presented with either yourself or your <<=ps(setup.getNpcName("npc_manager","title"))>> in your respective latex glory.<br>
<br>
Leaning forward <<=setup.getNpcName("npc_manager","formal")>> speaks softly into the <<man>>'s ear. "@@.npc_manager;If you like what you see... well... focus on your work, these and more are part of our best-in-industry executive perks package. Or maybe you fancy something a bit more... restrained? Talk to your manager, we are always on the look-out for those willing to completely dedicate themselves to serving the company.@@"<br>
<br>
In a way, you feel sorry for the <<man>> as <<he>> absorbs the full force of <<=ps(setup.getNpcName("npc_manager","formal"))>> dominant energy in the tight confines of the elevator. She may well have spoiled <<him>> for, well, anyone. The moment the door opens, <<he>> hurries away, leaving you to wonder how you would have responded had you been in <<his>> shoes, back before...<br>
<br>
Your thoughts are interrupted by the sound of <<=setup.getNpcName("npc_manager","formal")>> chuckling as the doors close and the elevator resumes its rise. She glances at you and nibbles her lip. You go weak in the knees — thankful for your current job, and the wonderful <<=setup.getNpcName("npc_manager","title")>> that made it all happen.<br>
<br>
You arrive on floor <<=$player.work.upperFloorNumber>> and you follow <<=setup.getNpcName("npc_manager","formal")>> up the hall to her office.<br>
<br>
[<<moveTo "event_manager_home_23" "Continue." 180>>]
</div>/*#
#desc: manager home visit, change for work
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.home_visit.pass=true>>
<<set _x = setup.addManagerEndlessTask()>>
<<removeAllClothing>>
<<deleteItem 'ball_gag_black'>>
<<deleteItem 'armbinder_black'>>
<<deleteItem 'latex_hood_blind_black'>>
<<deleteItem 'leather_thigh_cuffs'>>
<<deleteItem 'leather_ankle_cuffs'>>
<<removeItem "leash_black" true>>
<<deleteItem "leash_black">>
<<useClothSetPop 'office'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom_2")>>
<div id="invframe" class="scrolltext">
You step into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office and she turns to grace you with a grin. "@@.npc_manager;Well that was quite the lovely start to the day but, alas... I fear you must now change into something more in accordance with the duties you are to perform.@@"<br>
<br>
You sigh in disappointment as she removes your leash, but you are nothing if not obedient and thus you go along with it all as she helps you out of the wonderful corset/ballet/catsuit ensemble and back into your normal secretary attire. Though she stows the bondage additions, she lets you keep the rest with an encouraging wink.<br>
<br>
Only after you have completely changed and taken your seat does <<=setup.getNpcName('npc_manager', 'formal')>> disappear into her inner office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 600 "<<setScene true>>">>]
</div>/*#
#desc: basic cat events in kitchen
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.catEvent = true>>
<<if $scene.action>>
<<incrementEmotion 'affection' 'npc_cat' 1>>
<<applyStress -5>>
<<set $npc_cat.flags.kitchen=true>>
<<else>>
<<applyStress 2>>
<<incrementEmotion 'anger' 'npc_cat' 2>>
<</if>>
<</if>>
<<set $player.location to "Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png" setup.charImage("npc_cat","npc_cat_2")>>
<div id="invframe" class="scrolltext">
<<if $scene.action>>
You smile at <<=setup.getNpcName("npc_cat","first")>> and grab her a treat from the cupboard. Snatching it from your fingers she dashes off to nom in privacy.<br>
<br>
<<printThought "Guess I need to do a bit more to build her trust, every little bit helps though!">><br>
<br>
Giving your furry friend a treat puts a smile on your face as you continue on with your business.
<<else>>
You're busy and you ignore the insistent cat. After a few more "@@.npc_cat;Meows@@" she glares at you and then goes back to cleaning herself, acting like you don't exist. The shunning makes you feel a bit bad.<br>
<br>
<<printThought "Guess I deserved that...">>
<</if>>
<br><br>
[<<moveTo "room_kitchen" "Go back to what you were doing." 30>>]
</div>/*#
#desc: advanced cat event in kitchen
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.catEvent = true>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png" setup.charImage("npc_cat","npc_cat_2")>>
<div id="invframe" class="scrolltext">
You reach down and lift <<=setup.getNpcName("npc_cat","first")>> up onto the counter, petting her with one hand as you reach for her treats. She purrs in contentment as she munches away. The sound of her happiness, and the way she licks your fingers clean and nuzzles your hand, brings a smile to your face. It's nice to think bout here, how, regardless of how crazy things are in the rest of your life, you've got a nice furry friend who, really, asks for so very little...<br>
<br>
Finishing up she blinks up at you and lets out a happy "@@.npc_cat;Meow@@" before hopping back down to the floor and continuing on her way.<br>
<br>
[<<moveTo "room_kitchen" "Get back to what you were doing." 30>>]
</div>/*#
#desc: cat wakes you up
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.catEvent = true>>
<<set $scene.catEvent = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_cat","npc_cat_3")>>
<div id="invframe" class="scrolltext">
<<if $player.flat.sleep.breastMilk || $player.flat.sleep.penisMilk || $player.flat.sleep.vagMilk>>
You're taking a moment to lay back and catch your breath when
<<else>>
Your alarm goes off, and
<</if>>
suddenly <<=setup.getNpcName("npc_cat","first")>> is sitting on your chest, bopping you on the nose.<br>
<br>
<<printThought "Well... I'm definitely awake now...">><br>
<br>
[<<moveTo "event_cat_bedroom_wakeup_2" "Sit up and pet her a bit before getting out of bed." 300 "<<set $scene.action=true>>">>]<br>
[<<moveTo "event_cat_bedroom_wakeup_2" "Gently push her aside and start your day." 60 "<<set $scene.action=false>>">>]
</div>/*#
#desc: cat wakes you up
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action>>
<<incrementEmotion 'affection' 'npc_cat' 1>>
<<applyStress -5>>
<<set $npc_cat.flags.bedroom=true>>
<<else>>
<<incrementEmotion 'anger' 'npc_cat' 2>>
<<applyStress 3>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_cat","npc_cat_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.action>>
Careful not to disturb her perch you free a hand and take some time to pet <<=setup.getNpcName("npc_cat","first")>> for a few minutes. She purrs in contentment and then hops off to do other kitty things and leave you to start your day.<br>
<br>
<<printThought "She just wanted to brighten my morning, how sweet!">>
<<else>>
You try to gently move your feline friend out of the way so you can get up, but not gently enough, apparently as she yowls at you in annoyance before hopping off the bed and disappearing into another part of the house.<br>
<br>
<<printThought "Great, now we're both having a lousy morning.">>
<</if>>
<br><br>
[<<moveTo "room_breakfast" "Start your day." 30>>]
</div>/*#
#desc: cat events in bedroom
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<<set $scene.no_nightmares = true>>
<<set $daily.catEvent = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_cat","npc_cat_1")>>
<div id="invframe" class="scrolltext">
You're about to sleep when <<=setup.getNpcName("npc_cat","first")>> hops up onto the bed. She nuzzles your face and then cuddles up next to you to sleep.<br>
<br>
You smile at your feline friend, imagining her being here to protect you from nightmares...<br>
<br>
[<<moveTo "room_dreams" "Sleep." 30>>]
</div>/*#
#desc: cat events in livingroom
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.catEvent = true>>
<<if $npc_cat.affection > $npc_cat.anger>>
<<incrementEmotion 'affection' 'npc_cat' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_cat' 1>>
<</if>>
<<set _stress = $npc_cat.anger-$npc_cat.affection>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_cat","npc_cat_1")>>
<div id="invframe" class="scrolltext">
You gather up a somewhat reluctant <<=setup.getNpcName("npc_cat","first")>> and set her on your lap for some petting.
<<if $npc_cat.affection > $npc_cat.anger>>
Despite her initial aloof dismissal,
<<if $npc_cat.anger == 0>>
<<=setup.getNpcName("npc_cat","first")>> seems perfectly content to sit on your lap as you give her scratchies behind the ears, purring happily.
<<else>>
<<=setup.getNpcName("npc_cat","first")>> soon warms to your petting her, and snuggles slightly closer, sitting quietly for several minutes and occasionally adjusting her head if you aren't scratching the right location before deciding she has someplace more important to be and hopping away.
<</if>>
<br><br>
You smile, caring for your friend making you feel happier as well.
<<else>>
<<if $npc_cat.affection == 0>>
With a hiss she darts away before you can even get settled. Looks like your cute, fuzzy roommate is quite annoyed with you.
<<else>>
She remains sitting for a moment, begrudgingly, but once she has confirmed no treats are coming she slips away and disappears into another room.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Get back to what you were doing." 60>>]
</div>/*#
#desc: adv cat in livingroom
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.catEvent=true>>
<<set $daily.catEvent=true>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_cat' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_cat' 2>>
<</if>>
<<set _stress = $npc_cat.anger-$npc_cat.affection>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_cat","npc_cat_1")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You smile and join <<=setup.getNpcName("npc_cat","first")>> on the couch where she immediately curls up on your lap — a fuzzy, warm bundle of love, at least so long as the scratchies keep coming.<br>
<br>
<<printThought "Sometimes it really is the little things...">>
<<else>>
You're a bit too busy to take time with <<=setup.getNpcName("npc_cat","first")>> and you continue on your way, though you feel a bit of a sting at her snooty look before she hops away, pretending nothing ever happened.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Back to the living room." 60>>]
</div>/*#
#desc: laser pointer cat
#status: FINISHED 0.8.4.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.catEvent=true>>
<<set $daily.catEvent=true>>
<<incrementEmotion 'affection' 'npc_cat' 2>>
<<set _stress = -(15 + $npc_cat.affection-$npc_cat.anger)>>
<<applyStress _stress>>
<<set $npc_cat.flags.laser = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_cat","npc_cat_3")>>
<div id="invframe" class="scrolltext">
You pull out your phone and, after a bit of scrolling through to find the correct "presentation" app you turn on the integrated laser pointer and put it to its PROPER use — not directing audience attention for some dreary work presentation — but for giving your friend <<=setup.getNpcName("npc_cat","first")>> a fun, but despicable, foe to chase!<br>
<br>
<<=setup.getNpcName("npc_cat","first")>> gets a nice workout — and you some smile-inducing amusement as you spend a few minutes playing together, finishing off with some congratulatory scratchies once they have finally hunted down the dastardly red dot. Preening pridefully, she strides off.<br>
<br>
[<<moveTo "room_livingroom" "Back to the living room." 60>>]
</div>/*#
#desc: cat events watching porn
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.catEvent = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_cat","npc_cat_3")>>
<div id="invframe" class="scrolltext">
You sit down to watch some porn and are really getting into the scene only to be swiftly interrupted when <<=setup.getNpcName("npc_cat","first")>> hops up onto the keyboard, sending the video skipping off to something totally different as she glares are you, demanding attention NOW.<br>
<br>
[<<moveTo "event_cat_porn_2" "Pussy > porn, give her some love." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_cat_porn_2" "You were so close! Shoo her away." 600 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: cat events watching porn
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_cat.flags.porn = true>>
<<incrementEmotion 'affection' 'npc_cat' 2>>
<<else>>
<<decrementEmotion 'affection' 'npc_cat' 2>>
<<set $player.timebased.horny = 10>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_cat","npc_cat_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You turn away from the porn and address your furry friend, petting her for several minutes before, satisfied, she finally moves off your computer. You look at the screen. In addition to losing the video you were watching she has typed... something. Maybe it's the secret to life, the universe, and everything, but to you it looks like a bunch of gibberish. Though you do wonder how she managed to pull off cyrillic alt codes with her butt. You chuckle and close the window.
<<else>>
You shoo <<=setup.getNpcName("npc_cat","first")>> off the keyboard and she stalks away in a huff. Unfortunately the moment is ruined, your place in the video lost in favour of... <<printThought "who the hell uploads vintage infomercials to a porn site?">> You sigh and close the tab in frustration, your moment ruined.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Back to the living room." 600>>]
</div>/*#
#desc: cat events in bathroom
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bathroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.catEvent = true>>
<<if $scene.accept>>
<<set $npc_cat.flags.bathroom=true>>
<<incrementEmotion 'affection' 'npc_cat' 2>>
<<applyStress -5>>
<<else>>
<<incrementEmotion 'anger' 'npc_cat' 1>>
<<applyStress 5>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_cat","npc_cat_2")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
With a wry smile, you shake your head at <<=ps(setup.getNpcName("npc_cat","first"))>> antics, gathering her up in your arms for some petting and nuzzles before placing her outside the bathroom. She looks up at you for a moment, seemingly accepting this compromise before scampering away.<br>
<br>
You close the door to the bathroom, just in case, before picking things up off the floor.
<<else>>
You shoo <<=setup.getNpcName("npc_cat","first")>> out of the bathroom and close the door. She "@@.npc_cat;Yowls@@" and scratches at the door for a few moments before scampering off in annoyance.
<</if>>
<br><br>
[<<moveTo "room_bathroom" "Continue." 60>>]
</div>/*#
#desc: respond to cat foyer present
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.catEvent = true>>
<<set $daily.catEvent = true>>
<<if $scene.accept>>
<<set $npc_cat.flags.foyer=true>>
<<incrementEmotion 'affection' 'npc_cat' 3>>
<<applyStress -5>>
<<else>>
<<incrementEmotion 'anger' 'npc_cat' 3>>
<<applyStress 5>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_cat","npc_cat_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You gratefully thank <<=setup.getNpcName("npc_cat","first")>> for the "gift" and praise her hunting acumen in protecting the household as you stoop down to give her some rewarding scratchies.<br>
<br>
She prances proudly, brushing up against you affectionately in acknowledgment of your proper response to her offering before continuing on her way.<br>
<br>
Once she's out of sight you carefully dispose of the dead... thing in the garbage chute up the hall.
<<else>>
You glare at <<=setup.getNpcName("npc_cat","first")>> in annoyance as you scoop up the dead... thing and throw it in the trash.<br>
<br>
She "@@.npc_cat;Yowls@@" back, clearly disappointed that you failed to properly appreciate her gift.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Continue into your flat." 60>>]
</div>/*#
#desc: find a cat on the way home from work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$fetish.cat>>
<<set _beforetasklocation = $scene.beforetasklocation.pop()>>
<<moveTo _beforetasklocation>>
<</if>>
<</if>>
<<if !$npc_psychiatrist.profile && !$scene.checkedFetish>>
<<set $player.location to "Schrödinger's Alleyway">>
<<else>>
<<set $player.location to "A Deserted Alleyway">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if !$npc_psychiatrist.profile && !$scene.checkedFetish>>
<<createAdvBGR "./images/locations/back_alley.png">>
<<else>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_cat","npc_cat_1")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$npc_psychiatrist.profile && !$scene.checkedFetish>>
You pass an alleyway, there may or may not be a cat here, you've reached this point before going through the full content checklist... <<hint $options "You can always adjust such things via options —> Adjust Fetish Flags">> <br>
<br>
[<<moveTo "event_cat_find_1" "There is a cat." 60 "<<set $scene.checkedFetish=true>>">>]<br>
[<<moveTo "event_cat_find_1" "There is not a cat." 60 "<<set $fetish.cat=false>><<set $scene.checkedFetish=true>>">>]
<<else>>
You're walking home in a bit of a daze, unable to forget what just happened, what your <<=setup.getNpcName("npc_manager","title")>> did to you...
<<if $player.sec_style.submission.chastity != "">>
<<switch $player.sec_style.submission.chastity>>
<<case "forced" "obedient" "strict">>
And then, to lock you in chastity, with each step you feel your personal prison, locked in place, the private jail now a part of your uniform.
<<case "money">>
It somehow draws your thoughts back to what you did to yourself; agreeing to be locked in chastity. <<printThought "How much more of myself am I willing to sell for a few credits?">> The fact you don't immediately have an answer worries you.
<<case "voluntary">>
And through it all, the chastity device that you locked onto yourself, and that has now become part of your uniform.
<<case "enthusiast">>
And through it all, the chastity device you requested, and that has now become part of your uniform.
<<default>>
ERROR: unexpected player.sec_style.submission.chastity <<=$player.sec_style.submission.chastity>>
<</switch>>
<<else>>
<br><br>
<<printThought "How much power am I willing to let her have over me?">>
<</if>>
<br><br>
You're so distracted by your thoughts you accidentally take a wrong turn and find yourself in an unfamiliar alleyway.<br>
<br>
"@@.npc_cat;MEOW.@@"<br>
<br>
<<printThought "Wait, was that a cat?">><br>
<br>
You follow the sound to find a slightly dirty, but quite cute, cat pawing through a nearby dumpster looking for food. Noticing you it seems on the verge of flight but then it relaxes, making an affectionate figure eight between your legs.<br>
<br>
<<printThought "Huh, there's no collar... did someone just leave you here? How horrible!">><br>
<br>
You kneel down and the cat looks up at you with a slight head-tilt before licking your face.<br>
<br>
"@@.pc;Wow, you're friendly!@@"<br>
<br>
You've known the poor kitty for barely a minute and already you feel the urge to defend her.<br>
<br>
<<printThought "Everything that's happened... maybe a new friend would make my flat a bit happier of a place...">><br>
<br>
[<<moveTo "event_cat_find_2" "See if the cat will come home with you." 60 "<<set $scene.action='home'>>">>]<br>
[<<moveTo "event_cat_find_2" "Maybe one of your friends could adopt it?" 60 "<<set $scene.action='phone'>><<set $scene.call={}>>">>]<br>
[<<moveTo "event_cat_find_2" "Leave the cat and walk away." 60 "<<set $scene.action='leave'>>">>]
<</if>>
</div>/*#
#desc: decide what to do with cat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.action == 'manager_gift'>>
<<set $player.location to "Limousine">>
<<else>>
<<set $player.location to "A Deserted Alleyway">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == 'home'>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_cat","npc_cat_2")>>
<<elseif $scene.action == 'manager_gift'>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImageManager() setup.charImage("npc_cat","npc_cat_1")>>
<<elseif $scene.action == 'leave'>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_valkyr") setup.charImage("npc_cat","npc_cat_1") setup.charImage("npc_valkyr")>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'home'>>
You offer your arms and the cat hops up into them, cuddling happily against your chest.<br>
<br>
"@@.pc;Aww, who's a good kitty? Let's get you home hmm... what to call you.@@"<br>
<br>
<<printNameChange "Cat (Female)" $npc_cat>><br>
<br>
<<if $npc_dog.stage >= 1>>
[<<moveTo "event_cat_find_3_dog" "Home." 600>>]
<<elseif $currentTasks.hasOwnProperty("psychiatrist_apointment_1") && !$currentTasks.psychiatrist_apointment_1.finished && setup.secondsToDate($now,setup.getTaskDueDate('psychiatrist_apointment_1')) < 900>>
<<set _timeToTherapy = Math.max(0, _timeToTherapy-120)>>
[<<moveTo "event_cat_find_3_home" "Home." _timeToTherapy "<<set $scene.toTherapy=true>>">>]
<<else>>
<<if $currentTasks.hasOwnProperty('psychiatrist_apointment_1') && !$currentTasks.psychiatrist_apointment_1.finished>>
<<set _timeToTherapy = setup.secondsToDate($now,setup.getTaskDueDate('psychiatrist_apointment_1'))>>
<<if _timeToTherapy < 900>>
<<set _timeToTherapy = Math.max(0, _timeToTherapy-120)>>
[<<moveTo "event_cat_find_3_home" "Home." _timeToTherapy "<<set $scene.toTherapy=true>>">>]
<<else>>
[<<moveTo "event_cat_find_3_home" "Home." 600 "<<set $scene.toTherapy=false>>">>]
<</if>>
<<else>>
[<<moveTo "event_cat_find_3_home" "Home." 600 "<<set $scene.toTherapy=false>>">>]
<</if>>
<</if>>
<<case 'phone'>>
The cat snuggles up against you as you look at your phone.<br>
<br>
<<printThought "Hmm, who might be willing to help this cute girl out?">><br>
<br>
<<if $phoneList.includes("npc_technician")>>
<<if $scene.call.technician>>
[@@.link_locked;You already tried to home the cat with <<=setup.getNpcName("npc_technician","first")>>.@@]<br>
<<else>>
[<<moveTo "event_cat_find_2" 'Call <<=setup.getNpcName("npc_technician","first")>> about housing the cat.' 60 "<<set $scene.action='phone_technician'>><<set $scene.call.technician = true>>">>]<br>
<</if>>
<</if>>
<<if $phoneList.includes("npc_manager")>>
<<if $scene.call.manager>>
[@@.link_locked;You already tried to home the cat with <<=setup.getNpcName("npc_manager","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_cat_find_2" 'Call <<=setup.getNpcName("npc_manager","formal")>> about housing the cat.' 60 "<<set $scene.action='phone_manager'>><<set $scene.call.manager = true>>">>]<br>
<</if>>
<</if>>
<<if $phoneList.includes("npc_landlord")>>
<<if $scene.call.landlord>>
[@@.link_locked;You already tried to home the cat with <<=setup.getNpcName("npc_landlord","first")>>.@@]<br>
<<else>>
[<<moveTo "event_cat_find_2" 'Call <<=setup.getNpcName("npc_landlord","first")>> about housing the cat.' 60 "<<set $scene.action='phone_landlord'>><<set $scene.call.landlord = true>>">>]<br>
<</if>>
<</if>>
<<if $phoneList.includes("npc_psychiatrist") && $npc_psychiatrist.profile>>
<<if $scene.call.psychiatrist>>
[@@.link_locked;You already tried to home the cat with <<=setup.getNpcName("npc_psychiatrist","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_cat_find_2" 'Call <<=setup.getNpcName("npc_psychiatrist","formal")>> about housing the cat.' 60 "<<set $scene.action='phone_psychiatrist'>><<set $scene.call.psychiatrist = true>>">>]<br>
<</if>>
<</if>>
<<if $phoneList.includes("npc_admin")>>
<<if $scene.call.admin>>
[@@.link_locked;You already tried to home the cat with <<=setup.getNpcName("npc_admin","first")>>.@@]<br>
<<else>>
[<<moveTo "event_cat_find_2" 'Call <<=setup.getNpcName("npc_admin","first")>> about housing the cat.' 60 "<<set $scene.action='phone_admin'>><<set $scene.call.admin = true>>">>]<br>
<</if>>
<</if>>
<<if $phoneList.includes("npc_exgirlfriend")>>
<<if $scene.call.exgirlfriend>>
[@@.link_locked;You already tried to home the cat with <<=setup.getNpcName("npc_exgirlfriend","first")>>.@@]<br>
<<else>>
[<<moveTo "event_cat_find_2" 'Call <<=setup.getNpcName("npc_exgirlfriend","first")>> about housing the cat.' 60 "<<set $scene.action='phone_exgirlfriend'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_cat_find_2" "See if the cat will come home with you." 60 "<<set $scene.action='home'>>">>]<br>
[<<moveTo "event_cat_find_2" "Leave the cat and walk away." 60 "<<set $scene.action='leave'>>">>]
<<case 'phone_technician'>>
You give <<=setup.getNpcName("npc_technician","first")>> a call and ask if she might be interested in housing the cat you just found?<br>
<br>
"@@.npc_technician;Sorry, <<=$player.first_name>>... unfortunately my building is SUPER strict when it comes to pets... I'm not allowed to have anything.<<if $fetish.pet_play>> Well... anything non-human. A bit of roleplay pet-play, well... they can't get upset with that, right?<</if>> Mmm, I love me a nice catgirl... or puppy, or pony... or hucow...@@"<br>
<br>
She wishes you luck and hangs up.<br>
<br>
[<<moveTo "event_cat_find_2" "Try and call someone else." 60 "<<set $scene.action='phone'>>">>]<br>
[<<moveTo "event_cat_find_2" "See if the cat will come home with you." 60 "<<set $scene.action='home'>>">>]<br>
[<<moveTo "event_cat_find_2" "Leave the cat and walk away." 60 "<<set $scene.action='leave'>>">>]
<<case 'phone_landlord'>>
You call <<=setup.getNpcName("npc_landlord","first")>> to ask if <<he npc_landlord>> could take care of the cat you just found?<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>! I am afraid I am too busy, and my apartment too messy for me to dedicate the time and energy to taking care of an animal. It not be fair to the creature, you know? I wish you luck in finding home for your furry friend.@@"<br>
<br>
<<He npc_landlord>> hangs up.<br>
<br>
[<<moveTo "event_cat_find_2" "Try and call someone else." 60 "<<set $scene.action='phone'>>">>]<br>
[<<moveTo "event_cat_find_2" "See if the cat will come home with you." 60 "<<set $scene.action='home'>>">>]<br>
[<<moveTo "event_cat_find_2" "Leave the cat and walk away." 60 "<<set $scene.action='leave'>>">>]
<<case 'phone_psychiatrist'>>
You call <<=setup.getNpcName("npc_psychiatrist","formal")>> to ask if she could take care of the cat you just found?<br>
<br>
"@@.npc_psychiatrist;I am very sorry, <<=$player.first_name>> — unfortunately such would technically count as a gift, and thus violate the constraints of the doctor/patient relationship. I would encourage you to consider caring for the animal yourself. Forming a bond with a pet has been clinically proven to aid mental health in a myriad of ways. Whatever you decide, I wish you luck.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo "event_cat_find_2" "Try and call someone else." 60 "<<set $scene.action='phone'>>">>]<br>
[<<moveTo "event_cat_find_2" "See if the cat will come home with you." 60 "<<set $scene.action='home'>>">>]<br>
[<<moveTo "event_cat_find_2" "Leave the cat and walk away." 60 "<<set $scene.action='leave'>>">>]
<<case 'phone_manager'>>
You call <<=setup.getNpcName("npc_manager","formal")>> to ask if she could take care of the cat you just found.<br>
<br>
To your slight surprise she actually picks up and listens to your offer.<br>
<br>
"@@.npc_manager;A cat? Interesting... yes, having something waiting for me at home might be a nice change of pace... remain where you are, I will be but a minute.@@"<br>
<br>
Surprised at how quickly she accepted your offer you hang up, only to realise you didn't actually tell her where you were.<br>
<br>
You're weighing calling her back when a limo slides into position at the end of the alleyway. The door opens to reveal <<=setup.getNpcName("npc_manager","formal")>> peering out.<br>
<br>
[<<moveTo "event_cat_find_2" "Enter the vehicle." 300 "<<set $scene.action='manager_gift'>>">>]
<<case 'phone_admin'>>
You give <<=setup.getNpcName("npc_admin","first")>> a ring and ask if <<he npc_admin>> might be interested in housing the cat you just found?<br>
<br>
"@@.npc_admin;Sorry, <<callPlayer "npc_admin">>, you know I'm more of a dog person.@@"<br>
<br>
<<He npc_admin>> wishes you luck and hangs up.<br>
<br>
[<<moveTo "event_cat_find_2" "Try and call someone else." 60 "<<set $scene.action='phone'>>">>]<br>
[<<moveTo "event_cat_find_2" "See if the cat will come home with you." 60 "<<set $scene.action='home'>>">>]<br>
[<<moveTo "event_cat_find_2" "Leave the cat and walk away." 60 "<<set $scene.action='leave'>>">>]
<<case 'phone_exgirlfriend'>>
You try calling your ex but she doesn't answer the phone.<br>
<br>
[<<moveTo "event_cat_find_2" "Try and call someone else." 60 "<<set $scene.action='phone'>>">>]<br>
[<<moveTo "event_cat_find_2" "See if the cat will come home with you." 60 "<<set $scene.action='home'>>">>]<br>
[<<moveTo "event_cat_find_2" "Leave the cat and walk away." 60 "<<set $scene.action='leave'>>">>]
<<case 'manager_gift'>>
You scoop up the cat and step into the limousine. <<=setup.getNpcName("npc_manager","formal")>> greets you, or maybe it's the cat, with a smile and extends her hands.<br>
<br>
"@@.npc_manager;She is a lovely thing... if a bit in need of a bath.@@" The cat curls up on <<=ps(setup.getNpcName("npc_manager","formal"))>> lap for pets, giving you old spy flick vibes.<br>
<br>
"@@.npc_manager;So, what is her name?@@"<br>
<br>
<<printNameChange "Cat (Female)" $npc_cat>><br>
<br>
[<<moveTo "event_cat_find_3_manager" "Continue." 60>>]
<<case 'leave'>>
You decide against doing anything for the cat and stand up to leave, only for an imposing, over two metre tall female cyborg to land at the end of the alleyway, blocking your path. You turn as another of what you recognise as Valkyrie units appears in the other direction. You are penned in.<br>
<br>
"@@.valkyr;<<uc "Halt, citizen. You have committed animal neglect and have been sentenced to an appropriate punishment.">>@@"<br>
<br>
You open your mouth to object; after all, you were just walking through the alleyway and stumbled onto the cat!<br>
<br>
Moving lightning fast one of the Valkyrie units responds by forcing a gag between your spread lips. The other Valkyrie now behind you, you find yourself bound in moments.<br>
<br>
"@@.valkyr;<<uc "Criminal secured. Returning to base for processing.">>@@"<br>
<br>
You try to shout through your gag, but the Valkyrs pay you no attention as they lift up off the ground, wings unfurling to glide through the city as you are helplessly carried through the air. While you are tightly bound, the cat is merely cradled delicately in the arms of the other Valkyrie unit flying beside you.<br>
<br>
[<<moveTo "event_cat_bad_end" "Continue." 60>>]
<<default>>
ERROR: scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: manager takes cat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_cat'
0
'event_manager_theme_cat_1'
true
>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImageManager() setup.charImage("npc_cat","npc_cat_1")>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;<<=setup.getNpcName("npc_cat","first")>>? Yes... she does look like a <<=setup.getNpcName("npc_cat","first")>>. Thank you for bringing her to me, let me give you a ride home.@@"<br>
<br>
The limo door swings shut and the vehicle smoothly glides into motion.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> seems quite enamoured with her new friend, petting and scratching it for the short drive before waving you good-night.<br>
<br>
Only after you have gotten out of the car and are almost to your flat do you realise that, just as you never told her where you were for the pickup, you never said where you lived.<br>
<br>
<<printThought "Well, I guess that company knows my address but how did she know where to pick me up? She must be tracking me, but how? And why?">><br>
<br>
Your life having taken on yet another unnerving dimension you hurry into the suddenly questionable safety of your flat.<br>
<br>
[<<moveTo "room_foyer" "Home." 180>>]
</div>/*#
#desc: neglect cat
#status: FINISHED 0.8.0.0
#*/
<<set $gameOver = 'cat'>>
<<set $player.location to ''>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/badend.png" setup.charImage("npc_valkyr")>>
<div id="invframe" class="scrolltext">
A month later.<br>
<br>
<<if $fetish.pet_play>>
From <<if $fetish.sissy>>sissified<<else>>feminised<</if>> Secretary to trained catgirl, your life has taken quite a turn, but, in a way, you're happier. From your cute ears to your oh-so-stimulating fuzzy tail you like being a cute catgirl, even if your life ahead is one of bound, dehumanised servitude...
<<else>>
You aren't sure how the "appropriate" punishment for not helping a stray cat is to be enslaved, brainwashed and cybernetically enhanced, but such thoughts are soon a thing of the past. Your duty is to protect the city, now; another of the mysterious Valkyrie units, gliding high above, providing protection for the innocent and punishment for the guilty...
<</if>>
<br><br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: cat meets dog
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cat.stage = 1>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('cat')>>
<<addCredits -50>>
<<set $player.money.other_expenses += 30>>
<<set $npc_cat.timeAt = setup.setNextDate($now, 0, 0, 0)>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog") setup.charImage("npc_cat","npc_cat_3")>>
<div id="invframe" class="scrolltext">
Just as you finish closing the door you turn to see a tense moment developing — your new "roommate" <<=setup.getNpcName("npc_cat","first")>> stiffening in your arms as she notices <<=setup.getNpcName("npc_dog","first")>> looking up at her.<br>
<br>
You freeze only for <<=setup.getNpcName("npc_cat","first")>> to leap out of your arms and confidently approach the dog many times her size. Before you can separate the two of them <<=setup.getNpcName("npc_dog","first")>> is staring down this new feline intruder... and she licks his nose.<br>
<br>
He licks her back and you let out a sigh of relief as the two animals finish up an "I'm okay with you" introduction.<br>
<br>
You head to the kitchen and, a drone delivery later and <<=setup.getNpcName("npc_cat","first")>> is snarfing down on a can of tuna side by side with <<=setup.getNpcName("npc_dog","first")>> as if they'd been friends for years.<br>
<br>
[<<moveTo "room_foyer" 'Leave <<=setup.getNpcName("npc_cat","first")>> to enjoy her new home.' 60>>]
</div>/*#
#desc: take cat home
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cat.stage = 1>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('cat')>>
<<addCredits -50>>
<<set $player.money.other_expenses += 30>>
<<set $npc_cat.timeAt = setup.setNextDate($now, 0, 0, 0)>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_cat","npc_cat_1")>>
<div id="invframe" class="scrolltext">
You carry <<=setup.getNpcName("npc_cat","first")>> home to your flat and introduce her to the place.<br>
<br>
She immediately seems to take it as her new home, "@@.npc_cat;Meowing@@" happily before heading to the kitchen and looking intently at you.<br>
<br>
A drone delivery later and <<=setup.getNpcName("npc_cat","first")>> is snarfing down on a can of tuna... and you're heading online to order her a bed, litter box and an ongoing food subscription, able to find some at a good deal that will see you paying a mere credit a day for "veterinarian-recommended" food.<br>
<br>
<<if $scene.toTherapy>>
<<set _timeToTherapy = setup.secondsToDate($now,setup.getTaskDueDate('psychiatrist_apointment_1'))-10>>
[<<moveTo "room_psychiatrist_lobby" 'Leave <<=setup.getNpcName("npc_cat","first")>> to enjoy her new home and hurry to your therapy appointment.' _timeToTherapy>>]
<<else>>
[<<moveTo "room_foyer" 'Leave <<=setup.getNpcName("npc_cat","first")>> to enjoy her new home.' 60>>]
<</if>>
</div>/*#
#desc: talk to manager about cat
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> how <<=setup.getNpcName("npc_cat","first")>> is doing?<br>
<br>
<<if $npc_manager.anger == 0 && $npc_manager.affection > 5>>
She smiles. "@@.npc_manager;Oh, she is doing just lovely. Enjoying the run of the house and being my SECOND favourite pet...@@" She winks at you with a smile.
<<elseif $npc_manager.affection > $npc_manager.anger>>
She smiles. "@@.npc_manager;Oh, the usual, being overly pampered... yet still selfish about it. For your occasional failure you remain a much easier pet to train...@@" She states with a wink.
<<else>>
She smiles. "@@.npc_manager;Living like a queen, of course... yet even feline friskiness has her a more behaved pet than you have been of late...@@" She shakes her head.
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: dog event in kitchen
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<<if !$scene.action>>
<<applyStress 2>>
<<incrementEmotion 'anger' 'npc_dog' 2>>
<</if>>
<</if>>
<<set $player.location to "Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.action>>
You grab a treat from the cupboard and order <<=setup.getNpcName("npc_dog","first")>> to "@@.pc;Sit!@@" and then "@@.pc;Roll over!@@"<br>
<br>
He does as you command... and a sudden naughty thought sparks in your mind.<br>
<br>
[<<moveTo "event_dog_kitchen_basic_2" "Bend over and give him a different sort of order..." 600 "<<set $scene.fuck=true>>">>]<br>
[<<moveTo "event_dog_kitchen_basic_2" "Give him his doggie treat." 60 "<<set $scene.fuck=false>>">>]
<<else>>
You give <<=setup.getNpcName("npc_dog","first")>> a quick treat and he trots off without giving you a second glance.<br>
<br>
<<printThought "Hmm... maybe I should make him work for it more...">><br>
<br>
[<<moveTo "room_kitchen" "Go back to what you were doing." 30>>]
<</if>>
</div>/*#
#desc: dog fucks you in kitchen
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fuck>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<applyStress -5>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<set $npc_dog.flags.stage1.kitchen=true>>
<<else>>
<<decrementEmotion 'anger' 'npc_dog' 1>>
<<applyStress -1>>
<</if>>
<</if>>
<<set $player.location to "Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.fuck>>
You drop to the ground<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>, slide the plug out of your ass,<</if>> and dangle the treat above the small of your back...<br>
<br>
Scarfing up the snack as he lunges forward <<=setup.getNpcName("npc_dog","first")>> wastes no time in giving you the "treat" you are asking for. He mounts you hard and fast, knot slamming into your hole as he pushes you to the floor, his balls slapping you with each panting stroke as he barks aggressively to remind you of the house hierarchy you have just reinforced.<br>
<br>
It doesn't take him long to nut, his cum leaking out of your ass as you lie on the floor, drooling as you recover from the primal power of his plowing. Sure, you invited him in to your flat, but if you keep treating him like this it won't be long before it's HIS territory...<br>
<br>
<<printThought "I'm being turned into a submissive bitch in my own home... and I love it...">>
<<else>>
You give <<=setup.getNpcName("npc_dog","first")>> his treat and call him a "@@.pc;Good boy!@@" As he happily scarfs it down. He looks up at you with a smile and a lolled out tongue, waiting a few moments to make sure more treats aren't in the offering, before trotting away.
<</if>>
<br><br>
[<<moveTo "room_kitchen" "Go back to what you were doing." 30>>]
</div>/*#
#desc: dog submissive sex in kitchen
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<<if $scene.action>>
<<set $npc_dog.flags.stage2.kitchen = true>>
<<incrementEmotion 'affection' 'npc_dog' 1>>
<<applyStress -5>>
<<applyExperience 'oral' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<if $fetish.piss>>
<<applyExperience 'piss' 15 'terrible' $SEEN_FRIEND>>
<<alterStatAllWorn 'piss' '["add",50]'>>
<</if>>
<<else>>
<<applyStress 2>>
<<incrementEmotion 'anger' 'npc_dog' 2>>
<</if>>
<</if>>
<<set $player.location to "Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.action>>
You give <<=setup.getNpcName("npc_dog","first")>> his treat and then drop obediently to your knees. Scarfing down the treat and licking his lips he places his fore-paws on the counter for you to submissively crawl underneath and start sucking his big, hot, dog-cock.<br>
<br>
You moan submissively as you suck off your pack-master and he soon rewards you with a big mouthful of thick canine cum —
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
that you eagerly slurp down.
<<else>>
that you happily lick up.
<</if>>
<<else>>
that, despite it's bitter taste, you
<<if setup.getTotalValue("cum") > 5>>
suck down, trying not to think that you're starting to enjoy the taste.
<<else>>
submissively suck down.
<</if>>
<</if>>
<br><br>
<<if $fetish.piss>>
Still seated on the floor of the kitchen you have only just started to catch your breath when <<=setup.getNpcName("npc_dog","first")>> returns to all fours, turns to the side... and blasts you in the face with a heavy stream of hot <<getWordPiss>>, marking his territory before trotting away, your degradation complete, for now.
<<else>>
Your pack-master having provided for his charge he drops down to all fours, licking your face clean in a way that only re-enforces his authority over you, and then trots away.
<</if>>
<<else>>
You obediently offer <<=setup.getNpcName("npc_dog","first")>> a treat and he scarfs it down. He waits a few more moments to see if you have any further "offerings" and then, satisfied that you have made sufficient tribute to your pack-master, he trots away.
<</if>>
<br><br>
[<<moveTo "room_kitchen" "Continue with what you were doing." 30>>]
</div>/*#
#desc: dog wakes you up
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<<set $scene.dogEvent = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $npc_dog.stage == 1>>
You wake up to the sound of your alarm, and <<=setup.getNpcName("npc_dog","first")>> licking your face.<br>
<br>
[<<moveTo "event_dog_bedroom_wakeup_2" "Good boy! Start your day with some pets and belly-rubs." 300 "<<set $scene.action=true>>">>]<br>
[<<moveTo "event_dog_bedroom_wakeup_2" "You don't have time for this, you need to get ready for your day." 60 "<<set $scene.action=false>>">>]
<<else>>
You wake up to a pair of big, sweaty dog-balls resting on your face, <<=setup.getNpcName("npc_dog","first")>> squatting on top of you just as your alarm goes off.<br>
<br>
<<=setup.getNpcName("npc_dog","first")>> adjusts himself, the heavy balls sliding off your chin as his hard canine cock slaps you in the face.<br>
<br>
[<<moveTo "event_dog_bedroom_wakeup_2" "Earn your breakfast, bitch." 600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_dog_bedroom_wakeup_2" "Push him away." 60 "<<set $scene.suck=false>>">>]
<</if>>
</div>/*#
#desc: dog wakes you up
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_dog.stage == 1>>
<<if $scene.action>>
<<incrementEmotion 'affection' 'npc_dog' 1>>
<<applyStress -5>>
<<set $npc_dog.flags.stage1.bedroom=true>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 2>>
<<applyStress 5>>
<</if>>
<<else>>
<<if $scene.suck>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 2>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $npc_dog.stage == 1>>
<<if $scene.action>>
You sit up and hug <<=setup.getNpcName("npc_dog","first")>>, letting him lick you awake and giving him some belly rubs and pets. You finish off with a spot of wrestling, that has you finding your way submissively to the bottom, exposing your belly to him as he gives you a few more licks and then hops off the bed.
<<else>>
You need to get ready for the day and you gently push <<=setup.getNpcName("npc_dog","first")>> out of the way say you can get out of bed and stand up.<br>
<br>
He sulks away and you feel bad.
<</if>>
<<else>>
<<if $scene.suck>>
You submissively open your mouth and are soon being face-fucked by your pack leader.<br>
<br>
Your throat stretches in accommodation as his knot spreads your lips. He humps hard and fast and it isn't long before you're left with no choice but to gulp down your "breakfast" of his thick,
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
delicious
<<else>>
tasty
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
strangely tasty
<<else>>
disgusting
<</if>>
<</if>>
<<getWordCum>>.
<<else>>
You push him away and he growls. You freeze nervously, immediately regretting refusing your alpha, but, after a few more moments he hops off the bed and trots away.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_breakfast" "Start your day." 30>>]
</div>/*#
#desc: dog events in bedroom before bed
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
You're about to sleep when <<=setup.getNpcName("npc_dog","first")>> hops up onto the bed. Even in the large bed his presence is noticeable, especially since, after turning in a circle, he curls up smack in the middle of the bed like he owned the place.<br>
<br>
<<if $npc_dog.stage == 1>>
<<printThought "Even animals are pushing me around... maybe it's right that I should submit to him?">><br>
<br>
[<<moveTo "event_dog_bedroom_sleep_2" "He is the alpha, let him be." 180 "<<set $scene.submit=true>>">>]<br>
[<<moveTo "event_dog_bedroom_sleep_2" "Reclaim your part of the bed." 180 "<<set $scene.submit=false>>">>]
<<else>>
[<<moveTo "event_dog_bedroom_sleep_2" "He is your alpha, you're blessed to be sleeping in the bed at all." 180 "<<set $scene.submit=true>>">>]
<</if>>
</div>/*#
#desc: dog events in bedroom before bed
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.submit>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<set $scene.no_nightmares = true>>
<<set $npc_dog.flags.stage1.sleep = true>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.submit>>
Submissively you cede the majority portion of the bed to <<=setup.getNpcName("npc_dog","first")>> and try to fall asleep jammed up against the edge.
<<else>>
You shove <<=setup.getNpcName("npc_dog","first")>> off to one corner of the bed and, after glaring at you in annoyance, he finally complies.
<</if>>
<br><br>
[<<moveTo "room_dreams" "Sleep." 30>>]
</div>/*#
#desc: dog piss event in living room
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<<if $scene.accept>>
<<set $npc_dog.flags.stage1.living_room = true>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'piss' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 3 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 11 'terrible' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 2>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You crawl across the floor and start licking up <<=ps(setup.getNpcName("npc_dog","first"))>> <<getWordPiss>>. It is strong, and hot...
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
and delicious.
<<else>>
and tasty.
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
and curiously enticing.
<<else>>
and disgusting.
<</if>>
<</if>>
He watches you the whole time, even going so far as to put a paw on your head to push you back down into a spot you missed. Being so thoroughly dominated by a beast has you feeling degraded and incredibly submissive.
<<else>>
You scold <<=setup.getNpcName("npc_dog","first")>> for his bad behaviour, rubbing his nose in his mess before grabbing a mop and cleaning things up.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Back to the living room." 60>>]
</div>/*#
#desc: dog events masturbating
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $npc_dog.stage == 1>>
You've just gotten into pounding yourself with your dildo when <<=setup.getNpcName("npc_dog","first")>> zips across the room and steals it out of your hands.<br>
<br>
He stops a metre or so away to drop the dildo and stare back at you, as his hard cock points directly at you...<br>
<br>
<<printThought "Wait, is he offering to...">><br>
<br>
[<<moveTo "event_dog_masturbate_2" "Yes, flesh is better than silicon." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_dog_masturbate_2" "Grab your dildo and retreat to the bathroom so you can finish up." 600 "<<set $scene.accept=false>>">>]
<<else>>
<<=setup.getNpcName("npc_dog","first")>> walks past and stares at you pounding the dildo in and out of your ass. You freeze nervously, but he just continues to stare and you slowly start moving the dildo again, feeling as if he is supervising you.<br>
<br>
The humiliation of being watched by your alpha makes you cum even harder... after which he finally walks over, licking you clean as you shudder in post-orgasmic aftershocks, feeling owned, but also cared for before he walks away.<br>
<br>
[<<moveTo "room_livingroom" "Put your dildo away.">>]
<</if>>
</div>/*#
#desc: dog events masturbating
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_dog.flags.stage1.masturbation = true>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<playerOrgasm>>
<<alterStatAllWorn 'sweaty' '["add",100]'>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 2>>
<<applyStress 10>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You put the dildo aside and bend over on all fours, presenting your ass like a submissive bitch in heat.<br>
<br>
<<=setup.getNpcName("npc_dog","first")>> wastes no time taking up your offer and you moan as he knots, one paw pressing your face into the floor as he breeds you hard and fast. A few minutes later and you are a leaky mess, his cum oozing out of your ass with you soaked in sweat and drool, your own climax forgotten in the light of serving him...
<<else>>
You snatch up your dildo and retreat to the bathroom, closing the door so you can finish what you started, but he scratches and yowls at the door and you find yourself unable to concentrated, the moment ruined in frustration.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Back to the living room." 600>>]
</div>/*#
#desc: dog events in shower
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bathroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<<if $scene.accept>>
<<set $npc_dog.flags.stage1.shower=true>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<applyStress -5>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 1>>
<<applyStress 5>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You welcome <<=setup.getNpcName("npc_dog","first")>> into the shower, stopping what you were doing to give him a long, thorough wash — and dry.<br>
<br>
Happy and clean, he barks once in thanks and then heads off into the house while you finish your shower.
<<else>>
You quickly stop the water and shoo <<=setup.getNpcName("npc_dog","first")>> out of the shower before he can stink up the place. Once he's out of the bathroom you make sure the door is closed and locked, ignoring his whining from the far side as you attempt to finish washing in peace.
<</if>>
<br><br>
[<<moveTo "room_bathroom" "Continue." 60>>]
</div>/*#
#desc: respond to dog foyer
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<<if $npc_dog.stage == 1>>
<<if $scene.accept>>
<<set $npc_dog.flags.stage1.foyer = true>>
<<incrementEmotion 'affection' 'npc_dog' 1>>
<<applyStress -5>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 1>>
<<applyStress 5>>
<</if>>
<<else>>
<<if $scene.accept>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'terrible' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 3>>
<<applyStress 10>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $npc_dog.stage == 1>>
<<if $scene.accept>>
You spend some time playing with <<=setup.getNpcName("npc_dog","first")>>, rubbing his tummy and scratching his ears and even practicing some tricks like sit and roll over. He's a remarkably fast learner. In fact, it sometimes seems almost like he leads your commands, and you'd swear one time you caught yourself saying what he was doing, rather than what he should do next.<br>
<br>
<<printThought "Is he... training me?">>
<<else>>
You push past <<=setup.getNpcName("npc_dog","first")>> with little more than a passing pet, explaining that you're too busy.<br>
<br>
He sulks away.
<</if>>
<<else>>
<<if $scene.accept>>
You spend some time obediently playing with your alpha, showing him that you can sit, beg, and roll over. After you have run through the full sequence of moves, and submissively showed him your belly, he finally deigns to grant you some time spent petting him and scratching behind his ears.<br>
<br>
Your alpha finally satisfied with your efforts he trots off, leaving your spirits buoyed.
<<else>>
You try to push past <<=setup.getNpcName("npc_dog","first")>> explaining that you're too busy to do anything right now.<br>
<br>
He growls menacingly and your heart thunders in fear before he walks away and you let out a soft sigh of relief.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_foyer" "Continue into your flat." 60>>]
</div>/*#
#desc: dog event while cleaning flat
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'submit'>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<set $player.flat.dirty += 2>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<<set _stress = -(setup.getTotalValue("submission")-10)>>
<<applyStress _stress>>
<<set $npc_dog.flags.stage1.maid = true>>
<<case 'play'>>
<<incrementEmotion 'affection' 'npc_dog' 1>>
<<set $player.flat.dirty += 2>>
<<applyStress -5>>
<<case 'clean'>>
<<incrementEmotion 'anger' 'npc_dog' 2>>
<</switch>>
<</if>>
<<set $player.location to "Your Flat">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'submit'>>
Without getting up you submissively roll over for <<=setup.getNpcName("npc_dog","first")>>. He nuzzles your belly and then licks your face before walking off, seemingly satisfied with your presentation.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getTotalValue("submission") > 15>>
<<printThought "It feels so good and right to offer myself to my alpha.">>
<<else>>
<<printThought "I offered myself to my Alpha like a good bitch.">>
<</if>>
<<else>>
<<if setup.getTotalValue("submission") > 5>>
<<printThought "I just offered myself to a dog like a submissive bitch... and it felt... right? What's wrong with me!?">>
<<else>>
<<printThought "I can't believe I just offered myself to a dog! I'm not some sort of submissive bitch... am I?">>
<</if>>
<</if>>
<<case 'play'>>
You stand up and spend some time playing with <<=setup.getNpcName("npc_dog","first")>>. The cleaning doesn't get finished but the two of you have fun and you are left with a smile on your face.
<<case 'clean'>>
You ignore <<=setup.getNpcName("npc_dog","first")>> and continue cleaning. He stares at you for another minute as if hoping you'll change your mind before sulking away.<br>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_livingroom" "Finish up." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: dog events while eating
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<<if $npc_dog.stage == 1>>
<<if $scene.action>>
<<set $npc_dog.flags.stage1.meal = true>>
<<incrementEmotion 'affection' 'npc_dog' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 1>>
<</if>>
<<else>>
<<if $scene.submit>>
<<set $npc_dog.flags.stage2.meal = true>>
<<if $npc_dog.flags.stage2.maid && $npc_dog.flags.stage2.meal>>
<<set $npc_dog.stage = 3>>
<</if>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<set $scene.hasCum = $player.timebased.milking.cream_supply >= 100>>
<<if $scene.hasCum>>
<<set $player.timebased.milking.cream_supply -= 100>>
<<applyExperience 'cum' 15 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'cum' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<incrementEmotion 'affection' 'npc_dog' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 3>>
<<applyStress 10>>
<<applyFatigue 50>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $npc_dog.stage == 1>>
<<if $scene.action>>
You share a portion of your meal with <<=setup.getNpcName("npc_dog","first")>>.
<<switch $player.flags.mealplan.base>>
<<case "cheap">>
He wolfs it down quickly.
<<case "premium">>
He eats it happily, drooling even more on the floor the forces you to grab a mop.
<<case "boiless">>
After licking up a bit of it his face squinches and he walks away.
<<default>>
ERROR: unexpected player.flags.mealplan.base <<=$player.flags.mealplan.base>>
<</switch>>
<<else>>
You ignore <<=ps(setup.getNpcName("npc_dog","first"))>> begging for food and he eventually wanders off, a forlorn whine trailing after him.
<</if>>
<<else>>
<<if $scene.submit>>
You get down on all fours to eat the meal that your Alpha has "provided"
<<if $scene.hasCum>>
... only for him to shove you out of the way with a bark and glance at the fridge. Only after you have spread a thick coating of cold cum across the dried kibble does he allow you to lean in and start to eat.
<<else>>
leaning in toward the dried kibble to take your first crunchy bite.
<</if>>
<br><br>
You've barely choked down the first mouthful of dog food when your debased humiliation gets pushed further. <<=setup.getNpcName("npc_dog","first")>> mounts you from behind like the submissive bitch that you are, his knot slamming into your ass as your face is forced into his food-bowl.<br>
<br>
Even with the help of <<if $scene.hasCum>><<getWordCum>> and <</if>>his drool trickling down it's a challenge to choke down that much dried food, but your Alpha shows you no mercy, pounding you for the entire meal until the bowl is clean.<br>
<br>
<<if $fetish.cum>>
He steps back and you slump to the side, surprised that he hasn't cum this entire time, only for him to show you why as he blasts you with a face-full of salty dessert before trotting off.<br>
<br>
<<printThought "<<getWordGod>>, I really am a subservient, broken bitch...">><br>
<br>
<<if setup.getTotalValue("cum") > 10>>
Whispering "@@.pc;thank you,@@" you lick up every drop of dog cum that you can, grateful to your Alpha for the
<<if setup.getTotalValue("cum") > 15>>
heavenly treat.
<<else>>
delicious dessert.
<</if>>
<<else>>
You wait until he has left the room before rising to your feet and wiping yourself off.
<<if setup.getTotalValue("cum") > 5>>
You couldn't help but swallow some of his cum, quite disturbed at your appreciation of its rich, earthy flavour.
<<else>>
You try not to think of the taste you got of his cum.
<</if>>
<</if>>
<<else>>
He trots away as you are left to catch your breath and slowly return to your feet.<br>
<br>
<<printThought "<<getWordGod>>, I really am a subservient, broken bitch...">>
<</if>>
<<else>>
You glare in annoyance at <<=setup.getNpcName("npc_dog","first")>> for ruining your meal, but you refuse to eat dog food instead. The standoff between the two of you continues for several minutes before you give up on eating anything and leave the kitchen, your belly rumbling, leaving you feeling a bit tired.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_kitchen" "Continue." 300>>]
</div>/*#
#desc: dog events while using computer
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<<set $scene.dogEvent = true>>
<<if $scene.accept>>
<<set $npc_dog.flags.stage1.computer = true>>
<<applyExperience 'submission' 10 'little' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 3 'terrible' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 2>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You submissively spread your legs for <<=setup.getNpcName("npc_dog","first")>> as he does a thorough inspection of the area between your thighs before scampering away.<br>
<br>
<<printThought "Is he becoming the master of the house? Am I just going to let him do whatever he wants to me?">>
<<else>>
You close your thighs and push <<=setup.getNpcName("npc_dog","first")>> nose away from your crotch. There's a small struggle before he finally acquiesce to your efforts and walks away in a huff.
<</if>>
<br><br>
[<<moveTo "room_computer" "Back to the computer." 60>>]
</div>/*#
#desc: bitchsuit with dog repeatable
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.priorDog = $daily.dogEvent>>
<<set $daily.dogEvent = true>>
<<if !$scene.offer && !$fetish.get_raped>>
<<removeAllClothing>>
<</if>>
<<if $fetish.get_raped && setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'terrible' $SEEN_FRIEND>>
<<applyFatigue 50>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if !$scene.offer && !$fetish.get_raped>>
<<createAdvBGR setup.getBedroomImage()>>
<<else>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_dog")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$scene.offer && (!$fetish.get_raped || !setup.hasFreeTime($now, $player, $currentTasks, 3600))>>
Realising the foolishness of what you are doing you quickly remove the bitchsuit before <<=setup.getNpcName("npc_dog","first")>> comes upon you in your near helpless state.<br>
<br>
[<<moveTo "room_bedroom" 'Continue.' 300>>]<br>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
You go searching for <<=setup.getNpcName("npc_dog","first")>> but he seems uninterested in playing with you, and it would hardly be proper for a lowly bitch such as yourself to force themselves on her glorious pack leader.<br>
<br>
<<printThought "Maybe sometime when I have more free time...">><br>
<br>
[<<moveTo "room_bedroom" 'Take off the bitchsuit.' 300 "<<removeAllClothing>>">>]
<<elseif $scene.priorDog>>
You go searching for <<=setup.getNpcName("npc_dog","first")>> but he is lounging around on the edge of a nap, clearly disinterested in playing with you. It would hardly be proper for a lowly bitch such as yourself to force themselves on her glorious pack leader.<br>
<br>
<<printThought "Hmm, guess we already did something today... and I'm sure he'd enjoy me more if he was fresh for it...">><br>
<br>
[<<moveTo "room_bedroom" 'Take off the bitchsuit.' 300 "<<removeAllClothing>>">>]
<<else>>
<<if $scene.offer>>
As if sensing your desire to submit to him, <<=setup.getNpcName("npc_dog","first")>> appears in the doorway, standing tall and proud, his sleek, perfect form — and then there is the hard canine cock between his legs, making your heart race with excitement.<br>
<br>
[<<moveTo "event_dog_breed_2" 'Bend low and present your ass.' 300 "<<set $scene.action='anal'>><<set $daily.dogEvent=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage")>>
[@@.link_locked;You cannot offer your <<getWordVagina>> when it is locked in chastity.@@]
<<elseif $player.virgin.vaginal>>
[<<moveTo "event_dog_breed_2" 'Spread your legs and offer your cunt.' 300 "<<set $scene.action='vagina'>><<set $daily.dogEvent=true>>">>]
<<else>>
[@@.link_locked;You aren't so depraved as to lose your virginity to a beast.@@]
<</if>>
<</if>>
<<else>>
Thinking better of your foolishness you are about to remove the bitchsuit when <<=setup.getNpcName("npc_dog","first")>> comes upon you. Tall, strong and proud, your Alpha looms over you, freezing you with a glance before pouncing into action and pinning you down as his knot slams into your ass.<br>
<br>
Perhaps as punishment for your intended reluctance he shows you the opposite of mercy, ignoring your cries as his knot pounds in and out of your ass; his weight pressing you into the carpet as you roughly takes his pleasure; his efforts lasting but a few minutes before he trots off, your ass sore and oozing with his thick cum.<br>
<br>
<<printThought "Master...">><br>
<br>
You manage to eventually catch your breath, forcing yourself back up onto knees and elbows before starting to peel the sweaty leather outfit off your body.<br>
<br>
[<<moveTo "room_bedroom" 'Back to the bedroom.' 300 "<<removeAllClothing>>">>]
<</if>>
<</if>>
</div>/*#
#desc: bitchsuit with dog repeatable
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ($npc_dog.flags.stage2.vagina || $npc_dog.flags.stage2.anal) && $now.getUTCHours() < 3>>
<<set $scene.action = 'walk'>>
<</if>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<switch $scene.action>>
<<case 'anal'>>
<<set $npc_dog.flags.stage2.anal = true>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'unbelievable' $SEEN_FRIEND>>
<<case 'vagina'>>
<<set $npc_dog.flags.stage2.vagina = true>>
<<applyExperience 'bestiality' 5 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'unbelievable' $SEEN_FRIEND>>
<<case 'walk'>>
<<set $npc_dog.flags.stage2.bitch_walk = true>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<applyExperience 'submission' 18 'unbelievable' $SEEN_FRIEND>>
<</switch>>
<<applyFatigue 75>>
<<applyExperience 'bondage' 15 'very' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "walk">>
<<set $player.location to "The Streets">>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_dog")>>
<<else>>
<<set $player.location to "Bedroom">>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_dog")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'anal'>>
You lower yourself submissively and then present your rear for your Alpha's use.<br>
<br>
<<=setup.getNpcName("npc_dog","first")>> sniffs and licks your rear experimentally before moving forward, his paws pressing down on your shoulders to force your stubby bound arms to splay outwards as he pins you in place. He slides his thick cock into your rear, the knot swelling large inside of your ass, locking the two of you together, your leather outfit feeling even more restrictive as he starts humping. With every strong thrust his heavy balls slaps against you, the hot, penduluming orbs reminding you of what you are — his submissive bitch, an eager, bound receptacle for your Master's cum.<br>
<br>
You moan and he barks, his sharp call, paired with his cock continuing to pound your ass, reinforcing the hierarchy of the household: him as your Master and protector; you as his willing servant.<br>
<br>
As your thoughts swim with submissive loyalty he cums, marking his territory deep inside of you and remaining rooted until he has pumped every drop out of his balls and into your ass to mark you inside and out.<br>
<br>
You feel his knot shrink, and then slide out of you as you slump to the floor — your legs too rubbery to even remain up on your knees without the support of his cock.<br>
<br>
He licks your masked face approvingly before wandering off. You have fulfilled your duty.<br>
<br>
[<<moveTo "room_bedroom" 'Catch your breath and take off the bitchsuit.' 300 "<<removeAllClothing>>">>]
<<case 'vagina'>>
Like the bitch in heat that you are, you present yourself, your <<getWordVagina>> already dripping in anticipation as you lay helplessly on your back, bound legs spread as you gaze submissively up at your Alpha.<br>
<br>
Drooling in anticipation he looms over you, his thick, hot canine cock sliding into your waiting <<getWordVagina>> with ease, your folds spreading before him and then squeezing tight as his knot fills you up.<br>
<br>
You moan through your gag as he pins you to the floor with each hard, deep thrust; his pointed tip nearly at your cervix with each deep thrust, his powerful legs giving him the strength to practically jack-hammer you with quick, short thrusts that pulse submissive pleasure through your entire body. You are his servant, his slave, his personal bitch; utterly devoted to your pack-master as you look up into his keen eyes, his scent overpowering that of the leather hood to fill your nostrils as he drools down through your gag as if to mark you at both ends.<br>
<br>
He cums, hard; canine cream spurting deep inside of you, bestial sperm tickling your insides as he remains locked in place until pulse after pulse dumps the full contents of his big, beautiful balls into your hot, wet hole.<br>
<br>
He leans down to lick your mask as you writhe submissively, the feeling of him finally withdrawing from your hole leaving you limp and overwhelmed, wondering if you will even have the strength to strip off your restraints.<br>
<br>
[<<moveTo "room_bedroom" 'Catch your breath and take off the bitchsuit.' 300 "<<removeAllClothing>>">>]
<<case 'walk'>>
You present yourself submissively for your Alpha, but rather than mounting you as expected he darts away and returns with a leash in his mouth.<br>
<br>
You're momentarily stumped as to what he intends you to do, and then he loops it around your neck, pulling the other end to draw it tight as he drags you towards the door...<br>
<br>
<<printThought "Is he planning on taking me for a walk... like this???">><br>
<br>
You have no choice but to crawl after your Alpha, <<=setup.getNpcName("npc_dog","first")>> far stronger than you, especially with you bound as you are.<br>
<br>
Somehow managing to open the door he takes the end of your leash in his mouth and leads you up the hall and then taps the elevator button with his nose. Your heart races at understanding that you are being taken for a walk, whether you want it or not.<br>
<br>
The cool night air is nothing compared to the shiver of fear running down your spine as you leave the building — sure it's the dead of night, but what if someone sees you like this? For a moment you worry about your helplessness, and then you remember that you are perfectly safe — your pack leader will see to that.<br>
<br>
[<<moveTo "event_dog_breed_3" 'Follow.' 1800>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: bitchsuit walk with dog
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_dog.flags.stage2.bitch_walk = true>>
<<applyExperience 'humiliation' 18 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 15 'unbelievable' $EXPOSED>>
<<applyExperience 'oral' 15 'unbelievable' $EXPOSED>>
<<applyExperience 'bestiality' 5 'unbelievable' $EXPOSED>>
<<applyFatigue 100>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Streets">>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
Crawling on all fours you make your way around the block following after <<=setup.getNpcName("npc_dog","first")>>. Cutting through an alleyway he comes to a stop and then lets out a howl that hauntingly echoes back and forth off the towering skyscrapers.<br>
<br>
You pause, wondering what's going on, and then you see the first stray approach. Your heart races as you realise that your pack leader is providing for more than just yourself, more and more feral dogs appearing out of the shadows. The first submissively presents itself to <<=setup.getNpcName("npc_dog","first")>> for your Alpha's approval. Once that is granted he, or rather, you, "provide" for the pack.<br>
<br>
It isn't long before you are being fucked from either direction, knotted and nailed, dog after dog treating you like the bitch that you are; all while your true master looks on — occasionally barking or nipping at a beast that lingers a bit too long, the pack leader doing his job to make sure that all have their "fair share" of your prized holes, the pack filling you with cum as they take their pleasure in turns, not stopping until you are leaking from both ends, barely able to crawl as <<=setup.getNpcName("npc_dog","first")>> takes the leash in his mouth once again and leads you home.<br>
<br>
Drooling and panting you somehow find a final well of strength to push forward; not wanting to disappoint your Alpha as he marches you up the alleyway and back to your apartment building.<br>
<br>
As you slowly mount the steps that lead up to the front door you catch the first sight of a human since your trip began, your heart pounding as they look at you from across the street — but you are unable to make out their shouted words before <<=setup.getNpcName("npc_dog","first")>> pulls you into the building and the door closes behind.<br>
<br>
Heart still pounding you move closer to your Master for protection as you ride up, but the remainder of the trip home is uneventful, <<=setup.getNpcName("npc_dog","first")>> leading you back into your flat and pushing the door closed behind — dropping your leash to do a quick run through the flat to confirm that his territory is safe before he seems to nod, as if giving you permission to finally return to "human" mode.<br>
<br>
You nuzzle him a final time in submissive thanks and then — arms and legs sore, start to remove your outfit.<br>
<br>
[<<moveTo "room_foyer" 'Take off the bitchsuit and drag yourself back to your feet.' 300 "<<removeItem 'leash_black' true>><<deleteItem 'leash_black'>><<removeAllClothing>>">>]
</div>/*#
#desc: dog remarks you after shower
#status: FINISHED 0.8.4.0
#*/
<<set $player.location to "Bathroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.dogEvent = true>>
<<if $scene.accept>>
<<set $npc_dog.flags.stage2.shower=true>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 17 'terrible' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<applyStress -5>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' 1>>
<<applyStress 5>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept || $fetish.get_raped>>
<<if $scene.accept>>
You lock eyes with your Alpha and obediently bend over.<br>
<br>
<<else>>
You turn away from your Alpha, and he springs into action. With feral power, but keen intelligence, he bends you over the counter, your efforts to resist as nothing compared to his might.
<</if>>
<<=setup.getNpcName("npc_dog","first")>> wastes no time in re-marking his property, thrusting hard and fast
<<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
into both of your holes alternating
<<else>>
several times
<</if>>
before knotting deep in your ass.<br>
<br>
You moan submissively, praising your canine Master and promising to be his "@@.pc;good little bitch.@@"<br>
<br>
Your pleas serve to rouse him even further as he fucks you into the floor, not cumming until you are all but flattened out and he finally finishes breeding you.<br>
<br>
Once he retracts you submissively roll over, showing your belly pumped full of his seed. He licks your bare skin possessively, finishing off by rubbing his sweaty balls against your face as you kiss his still engorged shaft.<br>
<br>
Only after all of this does he seem satisfied with your re-dedicating and he trots out of the room, leaving you gasping on the floor, and you stagger to your feet — naked, ravaged, and dripping cum.<br>
<br>
[<<moveTo "room_bathroom" "Catch your breath." 60>>]
<<else>>
You manage to flee the bathroom without succumbing to your Alpha's interest... though from the way he glares at you as he stalks past tells you that he QUITE disapproves of this rebellious resistance.<br>
<br>
[<<moveTo "room_livingroom" "Continue." 60>>]
<</if>>
</div>/*#
#desc: dog tries to follow you home
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
After another "fun" ending to your jog you look back to see your doggo friend is following you home.<br>
<br>
<<printThought "Hmm... my apartment building does allow pets...">><br>
<br>
[<<moveTo "event_dog_find_2" "You always did want a dog..." 300 "<<set $scene.adopt=true>>">>]<br>
[<<moveTo "event_dog_find_2" "Your flat is pretty small, he's probably happier outside." 300 "<<set $scene.adopt=false>>">>]
</div>/*#
#desc: adopt dog
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.adopt>>
<<set $player.location to "Foyer">>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<<else>>
<<set $player.location to "A Deserted Alleyway">>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_dog")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.adopt>>
You smile down at your furry friend. "@@.pc;You wanna come home with me, don't you? Well come on then, boy!@@"<br>
<br>
As you lead him into your flat you realise you should give him a name...<br>
<br>
<<printNameChange "Dog (Male)" $npc_dog>><br>
<br>
<<if $npc_cat.stage >= 1>>
[<<moveTo "event_dog_find_3_cat" 'Continue.' 60>>]
<<else>>
[<<moveTo "event_dog_find_3" 'Now to see about making you feel at home...' 60>>]
<</if>>
<<else>>
You give your canine friend some pets and assure him that he's a "@@.pc;Very good boy!@@" Before sending him on his way.<br>
<br>
You cool down from your "jog" by walking back up to your flat.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 60>>]
<</if>>
</div>/*#
#desc: dog meets cat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Foyer">>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog") setup.charImage("npc_cat","npc_cat_3")>>
<div id="invframe" class="scrolltext">
Just as you finish closing the door you turn to see a tense moment developing — your new "roommate" <<=setup.getNpcName("npc_dog","first")>> in a stare-down with your current one <<=setup.getNpcName("npc_cat","first")>>...<br>
<br>
You hold your breath, about ready to jump in and break things up... only for <<=setup.getNpcName("npc_cat","first")>> to walk over, nuzzle against <<=ps(setup.getNpcName("npc_dog","first"))>> leg and get a friendly lick in return.<br>
<br>
You let out a sigh of relief as the two animals finish up a "I'm okay with you" introduction before <<=setup.getNpcName("npc_cat","first")>> wanders off to do cat things.<br>
<br>
[<<moveTo "event_dog_find_3" 'Now to see about making him feel at home...' 60>>]
</div>/*#
#desc: adopt dog
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_dog.stage = 1>>
<<addCredits -50>>
<<set $player.money.other_expenses += 30>>
<<set $npc_dog.timeAt = setup.setNextDate($now, 0, 0, 0)>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('dog')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Foyer">>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
A quick drone delivery later and your new friend is scarfing down a meal of fresh dog-food — the first shipment of a monthly subscribe-and-save service you found that gets his cost down to just a credit a day.<br>
<br>
You grin down, biting your lip at the thought that you chose the brand advertised to make him grow "big, and full of energy." Giving him a parting pat you leave him to his meal, thoughts dancing with thoughts of him filling YOU with his... "energy." <br>
<br>
[<<moveTo "room_foyer" 'Home.' 60>>]
</div>/*#
#desc: dog inspects you for promotion
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.triedPromotion = true>>
<<if setup.isItemEquipped("bitchsuit_black") && setup.isItemEquipped("puppy_hood_black") || setup.isItemEquipped("bitchsuit_pink") && setup.isItemEquipped("puppy_hood_pink")>>
<<applyExperience 'submission' 11 'little' $SEEN_FRIEND>>
<<set _plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = _plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem _plug true>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if setup.isItemEquipped("bitchsuit_black") && setup.isItemEquipped("puppy_hood_black") || setup.isItemEquipped("bitchsuit_pink") && setup.isItemEquipped("puppy_hood_pink")>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 7200) || $daily.dogEvent>>
<<=setup.getNpcName("npc_dog","first")>> sniffs at you in approval, and then stops, shake his head in seeming frustration before walking away.<br>
<br>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 7200, true)>>
<<printThought "Hmm... I do have some other things I need to do soon... I guess he could sense that? I really should make sure I have a dedicated block of time to devote to him...">>
<<elseif $daily.dogEvent>>
<<printThought "Maybe he's tired from us doing stuff earlier? I should try when we're both fresh.">>
<<else>>
<<printThought "Hmm, guess he isn't in the mood. Maybe some other day...">>
<</if>>
<br><br>
[<<moveTo "room_bedroom" "Back." 60>>]
<<else>>
<<=setup.getNpcName("npc_dog","first")>> approaches you in your bitchsuit and mask and gives you a thorough inspection. He's always been a large dog but from your lowered angle he seems massive, your head well below his haunches. You feel small, subservient...<br>
<br>
He starts to playfully nip at you, pushing you around a bit as he continues to push the boundaries of his authority.
<<if $scene.removePlug>>
You gasp as you feel him take hold of your plug and pull it free of your rear, leaving you gaping and feeling very exposed...
<<elseif setup.checkItemTypeTag('plug', ['hollow'])>>
Your plug-gaped rear feels very exposed — which may be the purpose of its hollow design, but that doesn't change the fact that, in this moment, it has you feeling VERY vulnerable...
<<else>>
Your rear suddenly feels very exposed.
<</if>>
<br><br>
<<printThought "If I stay like this he's going to really conclude that this is HIS house, his territory... and that I am just his obedient slave-bitch...">><br>
<br>
[<<moveTo "event_dog_promotion_2" "You want to be his bottom bitch..." 600 "<<set $scene.submit=true>><<set $daily.dogEvent=true>>">>]<br>
[<<moveTo "event_dog_promotion_2" "This is a bad idea. Change out of this restrictive outfit." 600 "<<set $scene.submit=false>><<set $daily.dogEvent=true>>">>]
<</if>>
<<else>>
<<if setup.isItemEquipped("bitchsuit_black") || setup.isItemEquipped("bitchsuit_pink")>>
You're crawling around in your bitchsuit and <<=setup.getNpcName("npc_dog","first")>> sniffs at you.<br>
<br>
After inspecting your bound body he licks your face and then walks away.<br>
<br>
<<printThought "Hmm... seems that I'm not complete, maybe I need a matching hood?">>
<<else>>
You're home wearing your puppy hood when <<=setup.getNpcName("npc_dog","first")>> looks up at you, and then down your body before walking away.<br>
<br>
<<printThought "Hmm... I guess he really wants me in a full bitchsuit...">>
<</if>>
<br><br>
[<<moveTo "room_bedroom" "Back." 60>>]
<</if>>
</div>/*#
#desc: submit to dog for promotion
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.submit>>
<<applyExperience 'bondage' 15 'very' $SEEN_FRIEND>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'very' $SEEN_FRIEND>>
<<if setup.getTotalValue("submission") >= 15>>
<<setThreshold "submission" "collar_submission" "dog">>
<</if>>
<<else>>
<<decrementEmotion 'affection' 'npc_dog' 5>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $scene.submit && setup.getTotalValue("submission") >= 15>>
You SUBMIT to your alpha. <<=setup.getNpcName("npc_dog","first")>> has fucked you before, but this is different. There is no hesitation in your motions, you groom him, worship him, serve him, because you are his bitch, and he is your pack-leader.<br>
<br>
Though your heart pounds with excitement you feel almost tranquil, zen; this is the way of things, you are to submit, and he will protect you. By the time you finally present your ass to be taken like the bitch in heat that you are you have fully ascended into sub-space. His knot swells in you because that is where it belongs — where YOU belong, beneath him, obediently serving him with your body, giving him pleasure, his hot pants whistling through your hood as you moan in blissful submission.<br>
<br>
He breeds you twice before stepping away. Though he licks your masked face you somehow feel it, feel him formally welcoming you into his pack.<br>
<br>
Your breathing slows as he cuddles next to you, and you cuddle up against him for a happy nap.<br>
<br>
[<<moveTo "event_dog_promotion_3" "Sleep." 3600>>]
<<else>>
<<if $scene.submit>>
You try to submit to <<=setup.getNpcName("npc_dog","first")>>, but some thing doesn't click. You go through the motions but the feeling isn't quite there, and it's very clear that he can sense it.<br>
<br>
He licks your mask in comfort, as if to say "nice try, bitch" before trotting away. Looks like you need to get a deeper understanding of submission in general before you can fully offer yourself up to be his bitch.
<<else>>
You suddenly get cold feet, or maybe that's cold knees and elbows? Given that's what you're walking on, at present. In any case you retreat from <<=setup.getNpcName("npc_dog","first")>>. He watches you go with disinterest, you have a feeling you'll need to build him up a bit more before you make another attempt at submitting to him.<br>
<br>
<</if>>
<br><br>
Back in your bedroom you remove the bitchsuit and return to "human" mode.<br>
<br>
[<<moveTo "room_bedroom" "Your bedroom." 60>>]
<</if>>
</div>/*#
#desc: nap after dog promotion
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -20>>
<<if setup.isItemEquipped("bitchsuit_black")>>
<<removeItem 'bitchsuit_black' true>>
<<itemToWardrobe "bitchsuit_black">>
<<elseif setup.isItemEquipped("bitchsuit_pink")>>
<<removeItem 'bitchsuit_pink' true>>
<<itemToWardrobe "bitchsuit_pink">>
<</if>>
<<if setup.isItemEquipped("puppy_hood_black")>>
<<removeItem 'puppy_hood_black' true>>
<<itemToWardrobe "puppy_hood_black">>
<<elseif setup.isItemEquipped("puppy_hood_pink")>>
<<removeItem 'puppy_hood_pink' true>>
<<itemToWardrobe "puppy_hood_pink">>
<</if>>
<<addCredits -100>>
<<set $npc_dog.stage = 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
You wake to <<=setup.getNpcName("npc_dog","first")>> licking you. Still in your bitchsuit you cuddle him for a bit before he scampers off and you crawl back to your bedroom to change, a skip in your step as walking on knees and elbows somehow feels easier, more natural. After all, you've just been inducted as a true member of <<=setup.getNpcName("npc_dog","first")>> pack...<br>
<br>
After changing out of the puppy attire you stretch, and then rush to the computer to order your Master a new collar — a thick, impressive spiked leather collar with the words <<=setup.getNpcName("npc_dog","custom","Master")>> <<=setup.getNpcName("npc_dog","first")>> in studs. You shiver in excitement and pay extra for immediate drone delivery, tracking him down to eagerly buckle it around his throat before you hug your master — as devoted to him as a human as you were as a dog.<br>
<br>
He trots off bearing his new symbol of office to patrol HIS flat.<br>
<br>
[<<moveTo "room_bedroom" "Continue." 600>>]
</div>/*#
#desc: take dog for a walk
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcCollarType">>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $npc_dog.stage == 1>>
You reach for the leash and <<=setup.getNpcName("npc_dog","first")>> immediately appears, obviously eager to go for a walk.<br>
<br>
[<<moveTo "event_dog_walking_2" "Take him for a walk and let him take the lead." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_dog_walking_2" "Take him for a walk and make sure he stays properly at heel." 60 "<<set $scene.accept=false>>">>]
<<else>>
You reach for the leash and <<=setup.getNpcName("npc_dog","first")>> pointedly, and dominantly, stares at your
<<switch $scene.wornCollarType>>
<<case "collar" "ring">>
collar.
<<case "none">>
bare throat.
<<case "other" "choker" "necklace" "tie">>
adorned, but un-collared neck.
<<default>>
ERROR: unexpected collar <<=$scene.wornCollarType>>
<</switch>>
<br><br>
<<if $scene.wornCollarType == "collar" || $scene.wornCollarType == "ring">>
[<<moveTo "event_dog_walking_2" "Clip the leash to your collar and give him the other end." 600 "<<set $scene.submit=true>>">>]<br>
<<else>>
[<<moveTo "event_dog_walking_2" "Collar and leash yourself and give him the other end." 600 "<<set $scene.submit=true>>">>]<br>
<</if>>
[<<moveTo "event_dog_walking_2" "Clip the leash to his collar and take him for a walk." 60 "<<set $scene.submit=false>>">>]
<</if>>
</div>/*#
#desc: go for a walk with dog
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fetch = false>>
<<if $npc_dog.stage == 1>>
<<applyExperience 'stamina' 5 'little' $EXPOSED>>
<<if $scene.accept>>
<<set $scene.fetch = !$npc_dog.flags.stage1.fetch || random(1,10) == 1>>
<<set $npc_dog.flags.stage1.walk = true>>
<<applyExperience 'submission' 7 'normal' $EXPOSED>>
<<incrementEmotion 'affection' 'npc_dog' 1>>
<<applyStress -5>>
<<else>>
<<applyExperience 'dominance' 7 'normal' $EXPOSED>>
<<incrementEmotion 'anger' 'npc_dog' 1>>
<<applyStress 5>>
<</if>>
<<else>>
<<if $scene.submit>>
<<set $scene.randVal = random(1,5)>>
<<set $npc_dog.flags.stage2.walk = true>>
<<applyExperience 'submission' 18 'terrible' $EXPOSED>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<<if $scene.wornCollarType != "collar" && $scene.wornCollarType != "ring">>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<else>>
<<set $scene.fetch = !$npc_dog.flags.stage1.fetch || random(1,10) == 1>>
<<incrementEmotion 'anger' 'npc_dog' 3>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
<<if $npc_dog.stage == 1>>
<<if $scene.accept>>
You take <<=setup.getNpcName("npc_dog","first")>> for a walk, but allow him to be mostly in control. He seems to have a good time striding in front of you, and occasionally sniffing at a tree or other interesting thing. The time outside with your friend has you feeling happier by the time you get home, and you can tell he appreciated the opportunity to stretch his legs.
<<if $scene.fetch>>
Partway through your walk you pass a small park and <<=setup.getNpcName("npc_dog","first")>> glances from you to the small verdant field.
<</if>>
<<else>>
You take a walk with <<=setup.getNpcName("npc_dog","first")>>. Though he is mostly behaved, staying tight at your heel, he occasionally tugs at the leash and you get the feeling he is chafing at this level of restriction, that he wants to be more in control. The end result is that, by the time you get home, you're feeling a bit stressed and you don't see that he's really let off much cabin fever.
<</if>>
<br><br>
<<if $scene.accept && $scene.fetch>>
[<<moveTo "event_dog_fetch_1" "Stop and play catch for a few." 600 "<<set $scene.catch=true>>">>]<br>
[<<moveTo "event_dog_fetch_1" "Continue on home." 180 "<<set $scene.catch=false>>">>]
<<else>>
[<<moveTo "room_foyer" "Home." 60>>]
<</if>>
<<else>>
<<if $scene.submit>>
You obediently collar and leash yourself and hand the other end to <<=setup.getNpcName("npc_dog","first")>> who takes it in his mouth and leads you off.<br>
<br>
You catch a few glances as you walk through the street, each pair of eyes reminding you how much of a submissive bitch you are; so subordinate to your Alpha that you let him literally lead you around in public...<br>
<br>
<<if $scene.randVal == 1>>
Towards the end of the walk he leads you into a familiar alleyway and tugs on the leash as if to pull you down to his level.<br>
<br>
<<printThought 'Master <<=setup.getNpcName("npc_dog","first")>> is horny...'>><br>
<br>
[<<moveTo "event_dog_walking_3" "Be a good bitch and let him take you here." 600 "<<set $scene.submit=true>>">>]<br>
[<<moveTo "event_dog_walking_3" "Hurry home so he can fuck you in private." 600 "<<set $scene.submit=false>>">>]
<<else>>
Seemingly going out of his way to lead you through more public areas near the apartment <<=setup.getNpcName("npc_dog","first")>> eventually leads you home, finally letting go of your leash as his expression seems to communicate that he is satisfied with your submission.<br>
<br>
[<<moveTo "room_foyer" "Home." 60 "<<removeItem 'leash_black' true>><<deleteItem 'leash_black'>><<if $scene.wornCollarType != 'collar' && $scene.wornCollarType != 'ring'>><<removeItem 'loose_collar' true>><<deleteItem 'loose_collar'>><</if>>">>]
<</if>>
<<else>>
You clip the leash to <<=ps(setup.getNpcName("npc_dog","first"))>> to his obvious annoyance. He still goes for a walk with you, but he is constantly jerking on the leash, almost draging you behind him or pulling you off-balance as if to drive home that this arrangement is WRONG — you are the bitch, he is the Alpha.<br>
<br>
Partway through the walk he stops at the entrance to a park, gazing intently at the open field...<br>
<br>
<<if $scene.fetch>>
[<<moveTo "event_dog_fetch_1" "Stop and play catch for a few." 600 "<<set $scene.catch=true>>">>]<br>
[<<moveTo "event_dog_fetch_1" "Continue on home." 180 "<<set $scene.catch=false>>">>]
<<else>>
By the time you get home you are expecting him to take things out on your ass, but he merely trots away once the leash is unclipped, as if dismissing you as being not even worthy of his time due to your failing to know your role.<br>
<br>
[<<moveTo "room_foyer" "Home." 60>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: dog wants sex during walk
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.submit>>
<<set $npc_dog.flags.stage2.walk_sex = true>>
<<applyExperience 'bestiality' 5 'terrible' $EXPOSED>>
<<applyExperience 'anal' 10 'terrible' $EXPOSED>>
<<applyExperience 'submission' 18 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<else>>
<<set $npc_dog.flags.stage2.walk_sex_home = true>>
<<incrementEmotion 'anger' 'npc_dog' 3>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.submit>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_dog")>>
<<else>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.submit>>
You barely have time to get to your knees without falling as <<=setup.getNpcName("npc_dog","first")>> yanks you to the ground by the leash. A moment later and he is behind you, his cock knotting in your ass as you moan like a bitch in heat.<br>
<br>
The collar tightens around your throat as he rears back and fucks you hard, the sound of his balls slapping into you echoing in the narrow alleyway as your head is forced up and you look out to see a passer-by freeze at the sight of you.<br>
<br>
You lock eyes for a moment with your fellow "human"... only for their expression to turn to disgust. You groan in humiliation, though the other person says not a word their expression tells you everything — they see you not as a fellow person, but as a depraved bitch; lower even than the animal you willingly let own and fuck you. <<=setup.getNpcName("npc_dog","first")>> barks and the witness hurries off, your attention once again dominated by your Alpha breeding you hard.<br>
<br>
<<printThought "Who needs humanity, when you have a knot?">><br>
<br>
Your pack leader finishes shortly thereafter. Cum leaking down your leg, and your thighs sore you walk home — <<=setup.getNpcName("npc_dog","first")>> looking very proud as he prances before you, leash in his mouth.
<<else>>
You somehow manage to resist <<=ps(setup.getNpcName("npc_dog","first"))>> hard jerks on your leash long enough to stumble home. The elevator ride was particularly harrowing as he "warms up" by humping your leg hard enough that only death-gripping the rail in the back of the elevator kept you from getting knocked to the ground.<br>
<br>
Once you are back in your flat there is no more fighting him off and you find yourself face-down, ass up as he pounds his thick knot in and out of your ass, almost choking you with the leash the whole time.<br>
<br>
He cums hard and your knees give out. He slumps to the floor as he finishes on top of you and, with a parting face-lick, wanders off into the apartment.<br>
<br>
You start to catch your breath and look up... to realise that the door failed to latch and swung open during your "festivities." You lock eyes with a neighbor up the hall who stares in silent shock. You don't know how long they were watching and you hurriedly reach out to close the door, not even knowing how you could possibly explain your home life of being a submissive bitch.<br>
<br>
Privacy restored, you find your way back to your feet.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home." 60 "<<removeItem 'leash_black' true>><<deleteItem 'leash_black'>><<if $scene.wornCollarType != 'collar' && $scene.wornCollarType != 'ring'>><<removeItem 'loose_collar' true>><<deleteItem 'loose_collar'>><</if>>">>]
</div>/*#
#desc: play fetch with dog
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fetch>>
<<set $npc_dog.flags.stage1.fetch = true>>
<<incrementEmotion 'affection' 'npc_dog' 1>>
<<applyStress -10>>
<<else>>
<<incrementEmotion 'anger' 'npc_dog' $npc_dog.stage>>
<</if>>
<</if>>
<<set $player.location to "A small park near your flat">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png">>
<div id="invframe" class="scrolltext">
<<if $scene.catch>>
You smile at <<=setup.getNpcName("npc_dog","first")>> and head into the park, taking him off the leash and finding a nicely shaped stick.<br>
<br>
The combination of being in nature (however small and artificial it may be tucked between skyscrapers) and playing with your furry companion raises your spirits, as you toss the stick with glee... and each time <<=setup.getNpcName("npc_dog","first")>> brings it back to your feet with a happy, panting grin.<br>
<br>
Unfortunately time ticks on and you decide you should be heading home, <<=setup.getNpcName("npc_dog","first")>> somewhat reluctantly following at your heels after a final glance back as his friend, Stick.<br>
<br>
[<<moveTo "room_foyer" "Home." 60>>]
<<else>>
To <<=ps(setup.getNpcName("npc_dog","first"))>> disappointment you continue on past the park, finishing your walk and returning home without further incident.<br>
<br>
[<<moveTo "room_foyer" "Home." 60>>]
<</if>>
</div>/*#
#desc: npc_work_doctor arguing with prim
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> to find <<him npc_work_doctor>> in an argument with another company scientist of some sort. What draws your attention, and initially distracts you from the argument is their look — above the standard-issue labcoat is a pair of full pink pigtails... and peeking out from below are sleek leggings going directly into heels that remind you of your nurse attire.<br>
<br>
"@@.npc_primrose;<<=setup.getNpcName("npc_boss","formal")>> cleared me for additional funding weeks ago!@@" States the exasperated new person in a high-pitched, almost cartoonishly feminine voice. "@@.npc_primrose;I need more test subjects or the project will only fall further behind!@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> is clearly annoyed and you wonder how long this argument has been going for when <<he npc_work_doctor>> looks past the pink-haired scientist to see you and smile.<br>
<br>
"@@.npc_work_doctor;Ah! Miss <<=$player.last_name>>, what a convenient surprise. How about you go with <<=setup.getNpcName("npc_primrose","formal")>> here and assist with their studies? That should prove sufficient for your current needs, should it not?@@"<br>
<br>
[<<moveTo "event_primrose_intro_2" "What?" 120>>]
</div>/*#
#desc: npc_work_doctor offers you to primrose
#status: FINISHED 0.8.5.0
#ignore_spell: qr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem 'medical_collar'>>
<<wearItem 'medical_collar' true>>
<</if>>
<<addItem 'leash_pink'>>
<<wearItem 'leash_pink' true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
The other scientist turns around, giving you the first shocking look at one of the stranger employees you've seen at this company — and that's saying something!<br>
<br>
Standing a little taller than <<=setup.getNpcName("npc_work_doctor","formal")>> thanks to their steel heels, "@@.npc_primrose;<<=setup.getNpcName("npc_primrose","formal")>>,@@" appears to be dressed in a skin-tight plug-suit from the neck down, a stylised corporate lock logo over the nulge between their legs... though even that doesn't catch the eye quite as much as the steep <<if $fetish.sissy>>SISSI<<else>>corporate-logo-embossed<</if>> company issue posture collar around their throat — the QR code along the side only increasing the contrast between their company slave look and their bold confidence.<br>
<br>
Peering at you through pink-tinted glasses with eyes that hint at perhaps a similar, if perhaps more lusty, madness to <<=setup.getNpcName("npc_work_doctor","formal")>>, they smile. "@@.npc_primrose;Oh yes, <<switch $player.identify_as>><<case 'female'>>she<<case 'male'>>he<<default>>they<</switch>> will do nicely.@@"<br>
<br>
<<if $player.identify_as != "female">>
You blink in surprise at how they somehow saw through your attire to use your correct pronoun, your momentary surprise
<<else>>
Your brief surprise turns out to be
<</if>>
just the opening they needed to produce a <<if $scene.collar>>collar and<<else>>leash<</if>> from their labcoat and <<if $scene.collar>>wrap it around your neck<<else>>clip it to your collar<</if>>.<br>
<br>
"@@.npc_primrose;Come along — I promise I won't keep you more than an hour or so... oh, but how much wonderful science can be done in an hour...@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> leads you out of the lab as you glance back at <<=setup.getNpcName("npc_work_doctor","formal")>> — but <<he npc_work_doctor>> is already resuming <<his npc_work_doctor>> work.<br>
<br>
"@@.npc_primrose;Thanks again for the wonderful loan, ta-ta!@@" <<=setup.getNpcName("npc_primrose","formal")>> calls back just before exiting the lab, blowing a kiss to <<=setup.getNpcName("npc_work_doctor","formal")>> who just grunts in annoyance, clearly glad just to be rid of this bizarre researcher.<br>
<br>
[<<moveTo "event_primrose_intro_3" "Follow..." 120>>]
</div>/*#
#desc: travel to primrose lab
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_primrose.profile = true>>
<<addNpcTheme 'npc_psychiatrist' 'primrose' 'theme_psychiatrist_primrose'
0
'theme_psychiatrist_primrose_1'
true
>>
<<set $randomEvents['elevator_in'].pushUnique({
done: false,
id: "coworker_primrose"
})>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
In the hallway <<=ps(setup.getNpcName("npc_primrose","formal"))>> bubbly enthusiasm only gets more intense as they quickly lead you up the hall. "@@.npc_primrose;It's a bit of a walk to my lab, unfortunately... as if someone poured over the plans to find the furthest office from the elevator!@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> laughs, and you get the feeling that, despite their confidence and apparent backing from <<=setup.getNpcName("npc_boss","formal")>>, they're fairly far down the R&D power hierarchy.<br>
<br>
"@@.npc_primrose;Anyway, you should call me <<=setup.getNpcName("npc_primrose","first")>>, <<if $npc_primrose.fem>>she/her<<else>>he/him<</if>> — all my friends do, and I can tell immediately that you and I are going to be just LOVELY friends!@@"<br>
<br>
The glint in their eye as they talk about your forthcoming friendship is a little unnerving — sort of a mix between <<=ps(setup.getNpcName("npc_barista","nickname"))>> enthusiasm and <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> intensity.<br>
<br>
"@@.npc_primrose;And here we are!@@" <<=setup.getNpcName("npc_primrose","first")>> announces with a flourish as they open a door to what a partially taped-over label tells you used to be a storage room...<br>
<br>
[<<moveTo "event_primrose_intro_4" 'Enter <<=ps(setup.getNpcName("npc_primrose","first"))>> lab...' 120>>]
</div>/*#
#desc: primrose lab - description
#status: FINISHED 0.8.5.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_primrose.stage = 1>>
<<if $scene.addCollar>>
<<removeItem 'medical_collar' true>>
<<deleteItem 'medical_collar'>>
<</if>>
<<removeItem 'leash_pink' true>>
<<deleteItem 'leash_pink'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_primrose","first"))>> lab is significantly smaller than <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> (more a large office, really) with VR devices and other in-progress work scattered about the floor and every flat surface. Dominating the room is a large,
<<if $npc_psychiatrist.hypnosis > 0>>
<<if $npc_psychiatrist.hypnosis >= 5>>
familiar chair. At first it looks very similar to the one you use for <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> experimental VR sessions. On closer examination it appears to have been further modified — additional padding sculpted for a single body-shape and a split keyboard built into the restraint-studded armrests. In addition to the dildo built into the seat of the chair,
<<else>>
Dominating the room is a large, strangely familiar high-tech chair straight out of some sort of science-fiction interrogation scene... it's strange, part of you is sure it's seen its like before... but that can't be possible, you would have remembered something like that! Especially given the dildo sticking up from the seat! Speaking of dildos,
<</if>>
<<else>>
Dominating the room is a large high-tech chair straight out of some sort of science-fiction interrogation scene... well, maybe a sci-fi porn, given the dildo... though
<</if>>
a glance around shows that there are a LOT of artificial phalluses lying about ... and they all <<if State.hasPlayed("event_boss_first_cock_training_6")>>look very similar in shape to <<=ps(setup.getNpcName("npc_boss","formal"))>> impressive member<<elseif $npc_boss.flags.firstBlowjob > 0>>remind you of <<=ps(setup.getNpcName("npc_boss","formal"))>> impressive member<<else>>look to be cast from the same subject<</if>>.<br>
<br>
Rather than lead you to the chair, <<=setup.getNpcName("npc_primrose","first")>> <<if $scene.collar>>removes your collar<<else>>unclips your leash<</if>> and casually tosses it and <<his npc_primrose>> lab-coat over the chair as <<he npc_primrose>> walks over to a locker adjacent a 3D printer-equipped workstation. <<His npc_primrose>> excitement builds as <<he npc_primrose>> orders you to strip and starts pawing through the contents of the locker.<br>
<br>
[<<moveTo "event_primrose_intro_5" "Get naked as instructed." 120 "<<set $scene.change=true>>">>]<br>
[<<moveTo "event_primrose_intro_5" "Demand to know what's going on." 120 "<<set $scene.change=false>>">>]
</div>/*#
#desc: primrose lab - get changed
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.change>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet "prim_plug_trial_outfit">>
<<wearItemSet "prim_plug_trial_outfit">>
<<addItem "kig_vr_mask_copy">>
<<wearItem "kig_vr_mask_copy" true>>
<<set $scene.addPlug = !setup.checkItemTypeWorn("plug")>>
<<if $scene.addPlug>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<if $scene.change>>
You shed your clothes just in time for <<=setup.getNpcName("npc_primrose","first")>> to finish setting out what looks to be your outfit. First comes a thick plugsuit, and over that a heavy latex straitjacket that has you feeling tightly constrained and restrained. Leaving you to test your bonds <<=setup.getNpcName("npc_primrose","first")>> ducks behind to <<if $scene.addPlug>>check your plug<<else>>stuff a plug into your rear<</if>>. Finishing things off is a kigurumi mask clasped over your head — a mask further enhanced with a throat-filling dildo gag. The claustrophobic headpiece renders you mute as well as momentarily blind and deaf before <<=ps(setup.getNpcName("npc_primrose","first"))>> sing-song voice is piped directly into your ears.<br>
<br>
"@@.npc_primrose;Everything fit? Nothing too loose? Oh you look simply adorable! All smiling and hugging yourself! So sweet!@@" You feel <<=ps(setup.getNpcName("npc_primrose","first"))>> arms wrap around your latex-encased torso in a warm embrace before <<he npc_primrose>> leads you somewhat unsteadily across the room. "@@.npc_primrose;Come along, now — I have a nice safe place for you to spend your time~! Oh, I am sure you will just love it! Still a work in progress but... well, that's what these sorts of tests are for!@@"<br>
<br>
Blind and restrained you're already a bit unsteady when <<=setup.getNpcName("npc_primrose","first")>> pushes you forward.<br>
<br>
[<<moveTo "event_primrose_intro_6" "Stumble forward." 120>>]
<<else>>
You ask what's going on and <<=setup.getNpcName("npc_primrose","first")>> pauses before slowly turning around.<br>
<br>
<<if $fetish.hypnosis>>
<<He npc_primrose>> adjusts <<his npc_primrose>> glasses, and you swear there was a momentary pink shimmer. Their voice shifts and becomes incredibly alluring.<br>
<br>
"@@.npc_primrose;I told you before: SCIENCE! Now, how about you get out of those boring office clothes and into something more... fun?@@"<br>
<br>
[<<moveTo "event_primrose_intro_5" "I like fun..." 120 "<<set $scene.change=true>>">>]<br>
<<if setup.getWillpower() > 2>>
[<<moveTo "event_primrose_intro_abort" "Resist! Run away!" 120 "<<set $scene.will=true>>">>]<br>
<<else>>
[@@.link_locked;You lack the mental will to resist <<=ps(setup.getNpcName("npc_primrose","first"))>> command.@@]
<</if>>
<<else>>
"@@.npc_primrose;I told you before: SCIENCE! Now, how about you get out of those boring office clothes and into something more... fun?@@"<br>
<br>
[<<moveTo "event_primrose_intro_5" "Get naked as instructed." 120 "<<set $scene.change=true>>">>]<br>
[<<moveTo "event_primrose_intro_abort" "Nope, run away!" 120 "<<set $scene.will=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: flee primrose lab
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.will>>
<<spendWillpower 3>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
<<if $scene.will>>
By force of will you tear yourself free of <<=setup.getNpcName("npc_primrose","first")>> entrancing gaze
<<else>>
You have more than enough mad scientist in your life and, taking advantage of <<=setup.getNpcName("npc_primrose","first")>> current distraction, you quickly exit the lab
<</if>>
and flee up the hallway.<br>
<br>
A somewhat confused voice calls after you. "@@.npc_primrose;Where are you going? We were going to have fun!@@"<br>
<br>
You ignore <<his npc_primrose>> call and pour on more speed as you sprint for the elevator and mash the button for the lobby. Your heart does not stop racing until the doors open and reveal the familiar foyer.<br>
<br>
[<<moveTo "room_elevator_home" "Escape." 300>>]<br>
</div>/*#
#desc: start primrose first treatment
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Test Chamber.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png">>
<div id="invframe" class="scrolltext">
With your arms restrained you have no chance to catch yourself, instead face-planting on what turns out to be an almost pillowy floor. The monitors inside your mask flicker to life and you find yourself looking down from above at a helplessly bound doll flailing around in a pink-padded cell. As you roll and turn over you realise that you're watching yourself... but on a slight delay that makes the entire experience bizarre and even more disorientating.<br>
<br>
"@@.npc_primrose;See? You're all safe! Everything soft and padded, free to squirm as much as you like — or just lie back, relax, and savour the routine! The first time is always such fun, so I will not torture you by delaying it any longer. Enjoy~!@@"<br>
<br>
You may have only met <<=setup.getNpcName("npc_primrose","first")>> a few minutes prior, but you can perfectly picture the excitement with which <<he npc_primrose>> flips the switch to start your routine...<br>
<br>
[<<moveTo "event_primrose_intro_7" "Brace yourself..." 1800>>]
</div>/*#
#desc: primrose first treatment
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Test Chamber.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You are slammed with a bigger than life-sized image of <<=setup.getNpcName("npc_boss","formal")>> filling your vision and thoughts as a nauseatingly enthusiastic corporate voice booms through your skull.<br>
<br>
"@@.pink_dom;Congratulations! You work for Social Interaction Service Syndicate Inc., the greatest corporation that has ever existed! As part of our wonderful team it is your privilege to serve (service which pleases our glorious CEO) and make the world a better place!@@"<br>
<br>
As the corporate propaganda blares in your head and the digital <<=setup.getNpcName("npc_boss","formal")>> stares down at you, your suit is no less active in overloading you with sensations. You writhe and moan as it feels like you are being penetrated and groped from every direction.<br>
<br>
"@@.pink_dom;Service is my duty! Perfection is my goal! I must do my part to make Social Interaction Service Syndicate Inc. the best it can be!@@"<br>
<<shinyText "Service is my duty! Perfection is my goal! I must do my part to make Social Interaction Service Syndicate Inc. the best it can be!" 0.0>>
<br>
Each repetition beats away at your mental defences,
<<if $npc_psychiatrist.hypnosis >= 5>>
none of the alluring subtlety of <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> more advanced simulations, a sledgehammer compared to a scalpel,
<<elseif $npc_psychiatrist.hypnosis > 0>>
alike, and yet different from anything you've felt before, a sledgehammer compared to a scalpel,
<<else>>
a mental pressure unlike anything you've previously experienced,
<</if>>
just pure, brute force attempting to pound your thoughts into a new shape.<br>
<br>
"@@.pink_dom;Service is my duty! Perfection is my goal! I must do my part to make Social Interaction Service Syndicate Inc. the best it can be!@@"<br>
<<shinyText "Service is my duty! Perfection is my goal! I must do my part to make Social Interaction Service Syndicate Inc. the best it can be!" 0.0>>
<br>
You struggle and strain, trying to ignore the mantra only leads to you hearing whispers underlying each repetition.<br>
<br>
<<shinyText "Serve, Obey, be a perfect instrument of <<=ps(setup.getNpcName('npc_boss','formal'))>> will...">>
<<if $fetish.sissy>>
<<shinyText "I am a sissy, my body exists to be used.">>
<<else>>
<<shinyText "I am a slave to the company, my body exists to be used.">>
<</if>>
<<shinyText "I must exemplify the company's glory in everything I do.">>
<br>
You thrash against your restraints, flopping against the padded walls. Every moment makes the commands louder, more enticing. As inescapable as they are irresistible...<br>
<br>
<<if $player.flags.collar.owner == "company">>
[<<moveTo "event_primrose_intro_8" 'Fight against the simulation, and the collar around your throat... you are not <<=ps(setup.getNpcName("npc_boss","formal"))>> corporate slave!' 1200 "<<set $scene.resist=true>><<spendWillpower 3>>">>]<br>
<<elseif $player.flags.collar.owner != "">>
[<<moveTo "event_primrose_intro_8" 'Draw on your collar to resist! You are not <<=ps(setup.getNpcName("npc_boss","formal"))>> corporate slave!' 1200 "<<set $scene.resist=true>>">>]<br>
<<else>>
[<<moveTo "event_primrose_intro_8" 'Resist! You are not <<=ps(setup.getNpcName("npc_boss","formal"))>> corporate slave!' 1200 "<<set $scene.resist=true>>">>]<br>
<</if>>
[<<moveTo "event_primrose_intro_8" 'Yes... I live to serve as <<=ps(setup.getNpcName("npc_boss","formal"))>> loyal employee-slave...' 1200 "<<set $scene.resist=false>>">>]
</div>/*#
#desc: primrose first response
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.resistSuccess = $scene.resist>>
<<set $scene.changedMaxWillpower = false>>
<<if $scene.resist>>
<<if $player.flags.collar.owner == "company">>
<<if setup.getWillpower() > 3>>
<<spendWillpower 4>>
<<applyStress 20>>
<<else>>
<<set _wp = setup.getWillpower()>>
<<set _stress = 50-10*_wp>>
<<spendWillpower _wp>>
<<set $scene.resistSuccess = false>>
<</if>>
<<elseif $player.flags.collar.owner != "">>
<<if setup.getWillpower() > 1>>
<<spendWillpower 2>>
<<set _stress = 10>>
<<else>>
<<set _wp = setup.getWillpower()>>
<<set _stress = 30-10*_wp>>
<<spendWillpower _wp>>
<<set $scene.resistSuccess = false>>
<</if>>
<<applyStress _stress>>
<<elseif setup.getWillpower() > 2>>
<<applyStress 30>>
<<spendWillpower 2>>
<<applyStress 10>>
<</if>>
<<if $scene.resistSuccess && !$npc_psychiatrist.flags.willpower_company>>
<<set $npc_psychiatrist.flags.willpower_company>>
<<set $player.willpower.bonus += 1>>
<<addPopUpText "will" "Your maximum willpower increases.">>
<<set $scene.changedMaxWillpower=true>>
<</if>>
<<else>>
<<applyStress -40>>
<</if>>
<<if $scene.resist>>
<<if $scene.resistSuccess>>
<<set $npc_primrose.flags.first_procedure = "resist">>
<<else>>
<<set $npc_primrose.flags.first_procedure = "resist_fail">>
<</if>>
<<else>>
<<set $npc_primrose.flags.first_procedure = "embrace">>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Test Chamber.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
<<if $player.flags.collar.owner == "company">>
Your psyche strains, fighting against not just the simulation and your restraints but the reality that the collar locked around your throat declares you as property and slave of the company.
<<elseif $player.flags.collar.owner != "">>
You attempt to draw strength from the collar around your neck, the reminder of your owner, and how they might feel at the thought of you turning from them in favour of enslavement to <<=setup.getNpcName("npc_boss","formal")>> and the company...
<<if $scene.resistSuccess>>
Straining with all your might to keep a vision of your owner in your mind... you manage to hold on, the memory of how much they cherish you giving you the strength to cling to your sanity.
<<else>>
Unfortunately, it is not enough. Perhaps if they were here, with you... but even the memory of who your owner is starts to slip, eaten away by the onslaught of <<=ps(setup.getNpcName("npc_boss","formal"))>> looming, dominant presence.
<</if>>
<<elseif $scene.resistSuccess>>
<<else>>
You lack the will to put up even a token resistance to the simulation, your psyche crumbling helplessly before the onslaught.
<</if>>
<</if>>
<<if $scene.resistSuccess>>
Somehow, you resist<<if $scene.changedMaxWillpower>>, the drain on your psyche met with a deeper bolstering of your self-confidence<</if>>. You are more than a tool of the company, even if it strains you to the limit to hold on to that fact.<br>
<br>
The simulation drones on but eventually recedes. Focusing so intently on resistance makes you lose track of anything but the next moment. Exhausted from thrashing, you lie still and disconnected from the stimulation coursing through your body as you pour everything into keeping a grip on your own self and sanity.
<<else>>
<<if $scene.resist>>
As hard as you fight... it is like a sand castle against the ocean. Wave after wave washes over you, leaving your mind smooth and empty save for the thoughts planted within you.
<<else>>
Rather than resist, you surrender yourself completely to the simulation, to obedient adoration of the company... and, even more, of its perfect dominant leader, <<=setup.getNpcName("npc_boss","formal")>>.
<</if>>
<br><br>
"@@.pink_dom;Service is my duty! Perfection is my goal! I must do my part to make Social Interaction Service Syndicate Inc. the best it can be!@@"<br>
<<shinyText "Service is my duty! Perfection is my goal! I must do my part to make Social Interaction Service Syndicate Inc. the best it can be!" 0.0>>
<<printThought "Service is my duty! Perfection is my goal! I must do my part to make Social Interaction Service Syndicate Inc. the best it can be!">><br>
<br>
The simulation stretches on... but that's fine; good, even. You love the words in your head reminding you of your duty and your needs. Each repetition brings more pleasure than the last, your writhing replaced by a constant, shuddering orgasm. It is the wonderful reward that can only come from total obedient service...<br>
<br>
<<printThought "Service is my duty! Perfection is my goal! I WILL do my part to make Social Interaction Service Syndicate Inc. the best it can be!">>
<</if>>
<br><br>
[<<moveTo "event_primrose_intro_9" 'Continue.' 300>>]
</div>/*#
#desc: wake up from primrose first treatment
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.resist || !$scene.resistSuccess>>
<<playerOrgasm>>
<</if>>
<<removeItem "kig_vr_mask_copy" true>>
<<deleteItem "kig_vr_mask_copy">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Test Chamber.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You finally stir, your eyes flickering open to find yourself staring up at <<=ps(setup.getNpcName("npc_primrose","first"))>> compassionate smile.<br>
<br>
<<if $scene.resist>>
<<if $scene.resistSuccess>>
"@@.npc_primrose;You are quite the tough nut to crack! I thought for sure I was nearing success with this new routine... but it just didn't seem to take with you.@@"<br>
<br>
You can tell <<he npc_primrose>>'s disappointed yet far from deterred, thoughts already swirling behind <<his npc_primrose>> pink glasses. "@@.npc_primrose;Next time, perhaps. There is never failure, merely an opportunity to learn~!@@"
<<else>>
"@@.npc_primrose;You were quite the feisty one, but it would seem that my program is nearing completion. All that nasty resistance falling away in the end... isn't it just wonderful? When you can forget your concerns and just... obey?@@"
<</if>>
<<else>>
"@@.npc_primrose;Welcome back! Oh, that look on your face~! Such beauty! The joy that can only come with full acceptance of something so wonderful...@@"
<</if>>
<br><br>
Though the VR face-piece has been removed, you can only stare forward as <<=setup.getNpcName("npc_primrose","first")>> strokes your face and then helps you to your feet. <<He npc_primrose>> wipes a spot of drool from your mouth and continues: "@@.npc_primrose;I apologise for the... generic indoctrination but, you see, that is my goal: to come up with a way to get similar results to a custom, personalised simulation in a package that anyone can use. Just imagine how happy all our wonderful employees would be if they spent each night in the comforting embrace of the company's doctrine. It certainly worked for me~@@"<br>
<br>
Your walk is unsteady, almost drunk as you lean against <<=setup.getNpcName("npc_primrose","first")>> and <<he npc_primrose>> leads you out of the padded room and back to <<his npc_primrose>> lab.<br>
<br>
[<<moveTo "event_primrose_intro_10" "Continue." 300>>]
</div>/*#
#desc: primrose gives first assessment
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet "prim_plug_trial_outfit">>
<<deleteItemSet "prim_plug_trial_outfit">>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","first")>> is tender and gentle as <<he npc_primrose>> leads you out of the testing room and into <<his npc_primrose>> lab, holding you up from falling and gently removing the plugsuit and restraints before helping you back into your clothes.<br>
<br>
"@@.npc_primrose;Thank you again for taking the time to contribute to SCIENCE, I can't wait to dive into all that lovely data and make the program even better...@@"<br>
<br>
You stagger on your way as <<=setup.getNpcName("npc_primrose","first")>> turns back to <<his npc_primrose>> machine. Taking a moment to orient yourself once outside <<his npc_primrose>> lab you shiver slightly at the memory of what you just survived and head for the elevator.<br>
<br>
[<<moveTo "room_elevator_home" "Ride the elevator down." 300>>]
</div>/*#
#desc: primrose reconnect
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.evil == 1>>
<<include "handleHomeShortcutDirect">>
<<else>>
<<set $npc_primrose.stage = 2>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You step into the elevator, the ride up the penultimate step of your commute and you get into full work mode as you squeeze in amongst other employees on their way in. As your mind begins to drift with outside-work thoughts a familiar hyper-femme voice cuts through the air as a splash of pink in the distance calls out: "@@.npc_primrose;Hold the door!@@"<br>
<br>
There is brief muttering in the elevator car as to if they should or shouldn't but, without thinking, you press the Open Doors button just in time for <<=setup.getNpcName("npc_primrose","formal")>> to slide into the sparsely-packed elevator. The R&D technician is weighed down with a backpack, a laptop bag, and two duffle bags. <<He npc_primrose>> looks to you through <<his npc_primrose>> pink-tinged glasses and breathlessly thanks you.<br>
<br>
"@@.npc_primrose;Thank you so much, <<=$player.first_name>>. I'm between presentations. I doubt I would have been able to take the stairs with all this.@@" You ask why <<he npc_primrose>> has to carry all of this <<him npc_primrose>>self. You can't really picture <<=setup.getNpcName("npc_work_doctor","formal")>> having to carry <<his npc_work_doctor>> own bags. "@@.npc_primrose;Oh, uh... I don't have an assistant and my requests for test subjects, much less additional personnel, are usually either processed too late or get denied. I have to do most of my work myself, whatever that work may be. Sometimes that means testing new routines or equipment, today it means carrying bags.@@"<br>
<br>
You almost feel bad for the <<man npc_primrose>>, though <<his npc_primrose>> tired smile eases some of that worry. "@@.npc_primrose;Thanks again for coming by my lab for testing. I know it was impromptu, <<if $npc_primrose.flags.first_procedure>>and I wish you could have stayed a bit longer, but I did appreciate the visit, perhaps you could come back sometime?<<else>>but the data you provided has been extremely fruitful.<</if>> I can see why <<=setup.getNpcName("npc_psychiatrist","formal")>> likes you so much.@@"<br>
<br>
<<printThought "Wait, what? How did <<he npc_primrose>> know about that?">><br>
<br>
Your mind churns as the door opens again and <<=setup.getNpcName("npc_primrose","first")>> prepares to file out. <br>
<br>
"@@.npc_primrose;Anyhoo, I could use your help again on some of my projects. If you can find the time, would you kindly join me at my lab again? I promise it'll be worth your while~@@" <<He npc_primrose>> turns to blow you a kiss before stepping out. The door closes behind <<him npc_primrose>> moments later.<br>
<br>
There is silence in the elevator, save for the hum of the machine moving around you. After a moment of silence, one of the other employees sums things up with "@@.generic_male1;what a weirdo,@@" to light chuckling.<br>
<br>
[<<moveTo "room_office_sissy_secretary" 'Head for <<=ps(setup.getNpcName("npc_manager", "formal"))>> office.' 120>>]
</div>/*#
#desc: ask npc_work_doctor about returning to primrose after first meeting
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_primrose.stage = 3>>
<<addNpcTheme 'npc_primrose' 'research' 'theme_primrose_dolls'
0
'theme_primrose_dolls'
true
>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_himself'
0
'theme_primrose_himself'
true
>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_company_life_1'
0
'theme_primrose_company_life_1'
true
>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_manager'
0
'theme_primrose_manager'
true
>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_work_doctor'
0
'theme_primrose_work_doctor'
true
>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_psychiatrist'
0
'theme_primrose_psychiatrist'
true
>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_barista'
0
'theme_primrose_barista'
true
>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_boss'
0
'theme_primrose_boss'
true
>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_npc_secretary'
0
'theme_primrose_npc_secretary'
true
>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_nintendolls'
0
'theme_primrose_nintendolls'
true
>>
<<set $scene.visitPrim=true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> raises <<his npc_work_doctor>> eyebrow as you ask <<him npc_work_doctor>> the location of <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab. "@@.npc_work_doctor;Really? Once wasn't enough?@@"<br>
<br>
You reiterate that you need directions. The mad doctor sighs and rubs <<his npc_work_doctor>> temple before muttering "@@.npc_work_doctor;fine. Let me write this down so you don't have to bother me with this again.@@" Reaching for a blank page from <<his npc_work_doctor>> printer, <<=setup.getNpcName("npc_work_doctor","formal")>> takes a pen out of <<his npc_work_doctor>> labcoat and quickly writes down the directions to the lab you visited before.<br>
<br>
"@@.npc_work_doctor;There. Don't break anything between here and there unless you want to "volunteer" for unpaid overtime.@@"<br>
<br>
You thank <<=setup.getNpcName("npc_work_doctor","formal")>> for <<his npc_work_doctor>> time and the directions before quickly retreating from <<his npc_work_doctor>> office. The path feels familiar as you head across the R&D floor, the distance from the elevator feeling in some way a descent, despite it being level ground. Heading through a twisty maze of passages all alike you start to lose all hope, almost certain you turned yourself around somewhere when you finally spy the make-shift label to <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab.<br>
<br>
<<if State.hasPlayed("event_primrose_intro_10")>>
[<<moveTo "event_primrose_return_2" "Knock on the door." 120>>]
<<else>>
[<<moveTo "event_primrose_return_2_alternate" "Knock on the door." 120>>]
<</if>>
</div>/*#
#desc: entering prim's lab again
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
"@@.npc_primrose;Come in <<=$player.first_name>>~!@@" The scientist's voice is piped in through a PA system above your head followed by the door sliding open automatically. You notice a uniquely shaped camera above the door-frame that turns to examine you as you enter and you feel very much under the company's gaze.<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","formal"))>> lab is mostly as you remember from your prior visit: messy, a halo of chaos surrounding its exuberant owner. Currently facing you with a wide grin, <<=setup.getNpcName("npc_primrose","formal")>> is sitting at <<his npc_primrose>> workstation. Catching a glance at <<his npc_primrose>> monitors, you can see a collage of the company's various propaganda posters as well as some brain pattern diagrams.<br>
<br>
"@@.npc_primrose;I must admit, I wasn't sure if I'd see you again. I so rarely get visitors, let alone ones as cute as you~!@@" You can't help but blush as <<he npc_primrose>> rises to <<his npc_primrose>> feet and approaches you. <<He npc_primrose>> sizes you up for a moment before asking "@@.npc_primrose;want to chat someplace more comfortable? I only own the one chair.@@" You raise an eyebrow, scanning the room while trying to piece together what <<he npc_primrose>> means. The scientist points towards the corner of the room where you now notice a narrow staircase melded to the wall.<br>
<br>
"@@.npc_primrose;This room is above a larger storage warehouse that the entire R&D department uses. I was able to get the fore<<man>>'s office remodelled into my living quarters — so convenient to shorten my commute and devote more of my time to the company!@@"<br>
<br>
<<printThought "Wait, does <<he npc_primrose>> live here?">><br>
<br>
"@@.npc_primrose;Anyhoo... let's go!@@"<br>
<br>
[<<moveTo "event_primrose_return_3" "Follow." 120>>]
[<<moveTo "event_primrose_return_abort" "On second thought..." 120>>]
</div>/*#
#desc: entering prim's lab again if you aborted the first time
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
"@@.npc_primrose;Come in <<=$player.first_name>>~!@@" The scientist's voice is piped in through a PA system above your head followed by the door sliding open automatically. You notice a uniquely shaped camera above the door-frame that turns to examine you as you enter and you feel very much under the company's gaze.<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","formal"))>> lab is mostly as you remember from your prior visit: messy, a halo of chaos surrounding its exuberant owner. Currently facing you with a wide grin, <<=setup.getNpcName("npc_primrose","formal")>> is sitting at <<his npc_primrose>> workstation. Catching a glance at <<his npc_primrose>> monitors, you can see a collage of the company's various propaganda posters as well as some brain pattern diagrams.<br>
<br>
"@@.npc_primrose;I'm sorry that my enthusiasm got the better of me last time. I so seldomly have visitors to my lab and I was very caught up in the moment. Seeing that you are back, however, makes me think that you've found it in your heart to forgive me? And if so... maybe get to know me and my work better~?@@" You can't help but blush as <<he npc_primrose>> rises to <<his npc_primrose>> feet and approaches you. <<He npc_primrose>> stops just a few feet from you, placing a hand over <<his npc_primrose>> heart as <<he npc_primrose>> recites a mock oath: "@@.npc_primrose;I promise that I won't try to kidnap you again (unless you ask me to, of course). Anyways, do you want to chat someplace more comfortable? I realise the lab is a bit cramped, and I only own the one chair.@@" You raise an eyebrow, scanning the room while trying to piece together what <<he npc_primrose>> means. The scientist points towards the corner of the room where you now notice a narrow staircase melded to the wall.<br>
<br>
"@@.npc_primrose;This room is above a larger storage warehouse that the entire R&D department uses. I was able to get the fore<<man>>'s office remodelled into my living quarters — so convenient to shorten my commute and devote more of my time to the company!@@"<br>
<br>
<<printThought "Wait, does <<he npc_primrose>> live here?">><br>
<br>
"@@.npc_primrose;Anyhoo... let's go!@@"<br>
<br>
[<<moveTo "event_primrose_return_3" "Follow." 120>>]
[<<moveTo "event_primrose_return_abort" "On second thought..." 120>>]
</div>/*#
#desc: primrose chambers description
#status: RELEASED 0.8.7.0
#ignore_spell: à
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_primrose","formal"))>> living quarters may have been small but they, just like <<his npc_primrose>> lab, are packed with a great deal of stuff. The walls are brushed metal and lined with holographic projections, save for one wall dominated by a currently-disabled screen.<br>
<br>
A closer inspection reveals that what you at first glance thought was art is actually all company propaganda. Some are tastefully simple; a reminder that the rules are there to protect employees from themselves, a poster showcasing a number of identical doll secretaries proclaiming strength through uniformity, etc. Others are far more direct, which is to say, explicit, including one showing a downright pornographic cartoon of an executive ear-fucking a blissed-out employee wearing a hypno visor with the title "good employees fill their head only with service." <br>
<br>
Perhaps even more strange than the decor is that the room lacks most common furniture. A pink kotatsu surrounded by mint green cushions is the closest thing to a table or guest area, the flat surface currently covered by a sewing machine, a remote, and a pair of game controllers. In place of any traditional bed is a hanging vacbed frame surrounding by mechanical arms, one of which holds a familiar-looking kigurumi mask. Robotic assistance seems the general order of the day in general, with <<=ps(setup.getNpcName("npc_primrose","first"))>> "closet" a plethora of arms dangling from the ceiling ready to dress their <<if $fetish.sissy>>sissified <</if>>owner. Even the bathroom is equipped with robotic limbs over the sink! Each of that particular set outfitted with various make-up applicators... and with the makeup stool itself sporting a <<if State.hasPlayed("event_boss_first_cock_training_6")>><<=setup.getNpcName("npc_boss","formal")>>-shaped<<else>>large<</if>> dildo.<br>
<br>
"@@.npc_primrose;Take a seat! I'll grab us something to drink.@@"<br>
<br>
Your host minces towards a mini-fridge and kneels down to collect two cans of green tea. <<if $player.sec_style.body.boiless == "">>You see not a trace of food in either the small fridge, or the rest of the room<<else>>Peeking into the appliance, you are unsurprised to see a familiar Boil-Less bottle among <<his npc_primrose>> meager belongings<</if>>. <<=setup.getNpcName("npc_primrose","first")>> sits across from you, stretching <<his npc_primrose>> arms before asking "@@.npc_primrose;so! Are you here to take me up on my offer? Vis-à-vis, more testing? Or did you come to chat?@@"<br>
<br>
[<<moveTo "event_primrose_chat_root" "You came to chat." 180>>]<br>
[<<moveTo "event_primrose_repeatable_1" "You'd be interested in assisting <<him npc_primrose>> with more testing." 120 "<<set $scene.change=true>>">>]
</div>/*#
#desc: primrose discussion pivot
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
The conversation is cut short by an alert chime emanating from <<=ps(setup.getNpcName("npc_primrose","first"))>> collar. "@@.npc_primrose;Ah, right.@@" The scientist fetches <<his npc_primrose>> phone from <<his npc_primrose>> pocket and sighs. "@@.npc_primrose;I need to get back to work. I had a lovely time chatting with you, <<=$player.first_name>>. Sadly, unless you wish to assist me with one of my projects, this is where we will have to part ways.@@"<br>
<br>
<<His npc_primrose>> pink eyes rest upon you as you contemplate your options. Staying for testing likely means another round of heavy hypnotic indoctrination. On the other hand, you feel like there is a limit to how close you can get to <<him npc_primrose>> without giving <<him npc_primrose>> assistance... and it is hard to deny the odd relaxing feeling you get being in the <<man npc_primrose>>'s lab.<br>
<br>
[<<moveTo "event_primrose_repeatable_1" "You'd be interested in assisting <<him npc_primrose>> with more testing." 180 "<<set $scene.change=true>>">>]<br>
[<<moveTo "event_primrose_return_abort" "You'd rather just call it here." 60>>]
</div>/*#
#desc: leaving post conversation
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Lab'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You decide it's best not to dive back into the <<if $fetish.sissy>>sissified <</if>>scientist's spirals just yet. You admit that you're feeling rather tired after work and <<he npc_primrose>> seems to understand. You're pretty sure that <<he npc_primrose>> appreciates having company, even if it is only briefly. "@@.npc_primrose;Understandable. My door is always open to you, <<=$player.first_name>>. I hope we see each other again soon.@@"<br>
<br>
Ever the accommodating host, <<=setup.getNpcName("npc_primrose","first")>> guides you to the sliding door and escorts you through the hallway. You chit-chat idly until the elevator arrives at which point you part ways.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: entering prim's lab again
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
/% insufficient time, noop %/
<<elseif $scene.change>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet "prim_plug_trial_outfit">>
<<wearItemSet "prim_plug_trial_outfit">>
<<addItem "kig_vr_mask_copy">>
<<wearItem "kig_vr_mask_copy" true>>
<<set $scene.addPlug = !setup.checkItemTypeWorn("plug")>>
<<if $scene.addPlug>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<</if>>
<</if>>
<<set $scene.randval = random(1,10)>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
"@@.npc_primrose;Excellent! Well, let's get started then~!@@" Before you have a chance to rethink your words, the <<if $fetish.sissy>>sissy<<else>>energetic<</if>> scientist is already on <<his npc_primrose>> feet and guiding you up to <<his npc_primrose>> lab. The sensation of being stripped of clothing and refit as a doll is beginning to become oddly familiar. You aren't sure if that is a good or bad thing.<br>
<br>
Though gentle <<=ps(setup.getNpcName("npc_primrose","formal"))>> motions are practiced and efficient. <<He npc_primrose>> has clearly done this enough times for it to be muscle memory. First comes the plugsuit, then your arms are guided into the sleeves of the straitjacket before being secured snugly behind your back. <<He npc_primrose>> <<if $scene.addPlug>>checks your plug<<else>>plugs your rear with one of the many toys on hand<</if>> before playfully instructing "@@.npc_primrose; say "aaahh," my dear.@@"<br>
<br>
The claustrophobic kigurumi mask latches shut around your head, gagging you and snuffing out your senses in a flash. Much like your last visit, you are brought into the padded room before the internal screens finish booting up. Once again, you are met with the uncanny experience of watching yourself struggle to find purchase on the smooth material.<br>
<br>
"@@.npc_primrose;So good news! You are going to be the first person who gets to try my newest simulation! It's part of an ongoing project. Obviously, constructive criticism is appreciated~!@@" Lines of code pass before your eyes in a flash before transitioning to a white void.<br>
<br>
<<if $scene.randval <= $npc_primrose.anger>>
[<<moveTo "event_primrose_punishment_vr_1" "Stare and relax..." 180>>]
<<else>>
<<switch $npc_primrose.flags.vr_stage>>
<<case 0>>
[<<moveTo "event_primrose_vr_trial_0_1" "Stare and relax..." 900>>]
<<case 1 2>>
<<switch $npc_primrose.flags.currentPath>>
<<case "light">>
<<switch $npc_primrose.flags.vr_light>>
<<case 1>>
[<<moveTo "event_primrose_vr_trial_1_light_1" "Stare and relax..." 900>>]
<<case 2>>
[<<moveTo "event_primrose_vr_trial_2_light_1" "Stare and relax..." 900>>]
<<case 3>>
[<<moveTo "event_primrose_vr_trial_3_light_1" "Stare and relax..." 900>>]
<<case 4>>
[<<moveTo "event_primrose_vr_trial_4_light_1" "Stare and relax..." 900>>]
<<case 5>>
[<<moveTo "event_primrose_vr_trial_5_light_1" "Stare and relax..." 900>>]
<<default>>
ERROR: unexpected npc_primrose.flags.vr_light <<=$npc_primrose.flags.vr_light>>
<</switch>>
<<case "dark">>
<<switch $npc_primrose.flags.vr_dark>>
<<case 1>>
[<<moveTo "event_primrose_vr_trial_1_dark_1" "Stare and relax..." 900>>]
<<case 2>>
[<<moveTo "event_primrose_vr_trial_2_dark_1" "Stare and relax..." 900>>]
<<case 3>>
[<<moveTo "event_primrose_vr_trial_3_dark_1" "Stare and relax..." 900>>]
<<case 4>>
[<<moveTo "event_primrose_vr_trial_4_dark_1" "Stare and relax..." 900>>]
<<case 5>>
[<<moveTo "event_primrose_vr_trial_5_dark_1" "Stare and relax..." 900>>]
<<default>>
ERROR: unexpected npc_primrose.flags.vr_dark <<=$npc_primrose.flags.vr_dark>>
<</switch>>
<<default>>
ERROR: unexpected npc_primrose.flags.current Path <<=$npc_primrose.flags.currentPath>>
<</switch>>
<<case 3>>
You consider which scene you would like to review...<br>
<br>
A Cooperative Company Simulations:<br>
[<<moveTo "event_primrose_vr_trial_1_light_1" "Return to the scenario where you helped your manager relax." 900>>]<br>
[<<moveTo "event_primrose_vr_trial_2_light_1" "Return to the simulation where you stayed behind after work." 900>>]<br>
[<<moveTo "event_primrose_vr_trial_3_light_1" "Return to the simulation where you beautified a new secretary." 900>>]<br>
[<<moveTo "event_primrose_vr_trial_4_light_1" "Return to the simulation where you entertained guests." 900>>]<br>
[<<moveTo "event_primrose_vr_trial_5_light_1" "Return to the simulation where you were rewarded for hard work." 900>>]<br>
<br>
A Tyrannical Corporation Simulations:<br>
[<<moveTo "event_primrose_vr_trial_1_dark_1" "Return to the simulation where you corrected a mistake." 900>>]<br>
[<<moveTo "event_primrose_vr_trial_2_dark_1" "Return to the simulation where you received criticism." 900>>]<br>
[<<moveTo "event_primrose_vr_trial_3_dark_1" "Return to the simulation where you attended a large meeting." 900>>]<br>
[<<moveTo "event_primrose_vr_trial_4_dark_1" "Return to the simulation where you were in the break room." 900>>]<br>
[<<moveTo "event_primrose_vr_trial_5_dark_1" "Return to the simulation where you reviewed the performance of others." 900>>]<br>
<br>
[<<moveTo "event_primrose_return_abort" "You have other places to be today and need to call it here." 60 "<<removeItemSet 'prim_plug_trial_outfit'>><<deleteItemSet 'prim_plug_trial_outfit'>><<removeItem 'kig_vr_mask_copy' true>><<deleteItem 'kig_vr_mask_copy'>><<useClothSetPop 'tmp'>>">>]
<<default>>
[<<moveTo "event_primrose_chat_root" "You just came to visit and chat." 180 "<<removeItemSet 'prim_plug_trial_outfit'>><<deleteItemSet 'prim_plug_trial_outfit'>><<removeItem 'kig_vr_mask_copy' true>><<deleteItem 'kig_vr_mask_copy'>><<useClothSetPop 'tmp'>>">>]<br>
[<<moveTo "event_primrose_return_abort" "You have other places to be today and need to call it here." 60 "<<removeItemSet 'prim_plug_trial_outfit'>><<deleteItemSet 'prim_plug_trial_outfit'>><<removeItem 'kig_vr_mask_copy' true>><<deleteItem 'kig_vr_mask_copy'>><<useClothSetPop 'tmp'>>">>]
<</switch>>
<</if>>
<<else>>
"@@.npc_primrose;Excellent!@@" <<He npc_primrose>> with initial excitement only to pause and then slowly frown "@@.npc_primrose;only... well, I just remembered that I had something scheduled today... please, ask me some other time!@@"<br>
<br>
You promise you'll be back some other afternoon and head for the elevator.<br>
<br>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: entering prim's lab repeatable
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You again make your way to <<=ps(setup.getNpcName("npc_primrose","first"))>> quasi-hidden lab and the <<if $fetish.sissy>>sissy <</if>>Scientist greets you with <<his npc_primrose>> trade-mark enthusiasm.<br>
<br>
[<<moveTo "event_primrose_repeatable_1" "You'd be interested in assisting <<him npc_primrose>> with more testing." 180 "<<set $scene.change=true>>">>]<br>
[<<moveTo "event_primrose_chat_root" "You just came to visit and chat." 180>>]<br>
[<<moveTo "event_primrose_return_abort" "You have other places to be today and need to call it here." 60>>]
</div>/*#
#desc: talk to primrose about things
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.returnPassageTheme = "event_primrose_chat_root">>
<<set $scene.currentNpcTheme = "">>
<<set $scene.returnPassageList = "event_primrose_chat_details">>
<<if $npc_hucow.stage >= 5 && !State.hasPlayed("event_primrose_work_doctor_confront_1") && !State.hasPlayed("event_betray_work_doctor_7")>>
<<initRoom>>
<<moveTo "event_primrose_work_doctor_confront_1">>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You head downstairs to sit with <<=setup.getNpcName("npc_primrose","first")>> in <<his npc_primrose>> small on-site corporate living area and <<he npc_primrose>> asks what you're interested in talking about?<br>
<br>
<<printNpcThemeCategory
'npc_primrose'
"event_primrose_chat_root"
"event_primrose_chat_details"
>>
[<<moveTo "event_primrose_repeatable_1" "You'd be interested in assisting <<him npc_primrose>> with more testing." 180 "<<set $scene.change=true>>">>]<br>
[<<moveTo "event_primrose_return_abort" "You have other places to be today and need to call it here." 60>>]
</div>/*#
#desc: primrose theme details
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.talkThemes >= 3>>
<<initRoom>>
<<moveTo 'event_primrose_return_4'>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
"@@.npc_primrose;So, what do you want to talk about, <<=$player.first_name>>?@@" The opportunity to talk with someone seems to have <<=setup.getNpcName("npc_primrose","first")>> quite excited.<br>
<br>
<<printNpcThemeDetails
'npc_primrose'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
[<<moveTo "event_primrose_return_abort" "You have other places to be today and need to call it here." 60>>]
</div>/*#
#desc: lab is unavailable
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Outside of <<=ps(setup.getNpcName("npc_primrose","first"))>> Laboratory'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hospital_hallway.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You follow the usual turns to <<=ps(setup.getNpcName("npc_primrose","first"))>> lab only to be greeted by a security guard standing outside the door. The electric eye of the camera over the door watches you intensely as you ask what's going on. "@@.npc_generic_male1;We're remodelling. Contraband has been discovered in this employee's chambers. You may visit once we are done installing additional security measures and the space is optimised for work.@@"<br>
<br>
You nod awkwardly and turn tail. That does not bode well for either you or <<=setup.getNpcName("npc_primrose","first")>>.
<<else>>
You check if <<=ps(setup.getNpcName("npc_primrose","first"))>> lab is open to the public yet only to see a familiar looking security guard. You give an awkward wave. They simply nod at you. Looks like it'll be a little longer still.
<</if>>
<br><br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: npc_ai mission to sex club
#status: RELEASED 0.8.9.0
#ignore_spell: keygen
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You open the secure chat window with <<=setup.getNpcName("npc_ai","first")>> to see what she requires of you today. "@@.npc_ai;<<uc 'Hello Unit '>> <<=uc($player.first_name)>>. <<uc 'I have a new mission that requires your attention.'>>@@" You send back a basic acknowledgement before letting launch into whatever she had on her mind.<br>
<br>
"@@.npc_ai;<<uc 'I have been observing <<=uc(setup.getNpcName("npc_primrose","formal"))>> recently <<if $npc_primrose.fem>>she<<else>>he<</if>> is interesting as a <<=uc(setup.getNpcName("npc_boss","formal"))>> loyalist who lacks the intrinsic cruelty of <<if $npc_primrose.fem>>her<<else>>his<</if>> so-called <<=uc(setup.getNpcName("npc_boss","custom","Master"))>>. I would learn more, but, despite living on premises, <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> personal computer system, where the recordings of <<if $npc_primrose.fem>>her<<else>>his<</if>> lab and personal area are stored, remains unconnected and inaccessible to my touch.'>>@@"<br>
<br>
You nod in understanding and ask where you come into this. "@@.npc_ai;<<uc 'While I have been able to ascertain <<if $npc_primrose.fem>>her<<else>>his<</if>> personal password, <<if $npc_primrose.fem>>she<<else>>he<</if>> has a two-factor authenticator that I have been unable to crack. Neither the algorithm or the authenticator match any standard company issue, and cracking their security remains beyond my reach.'>>@@"<br>
<br>
"@@.npc_ai;<<uc 'I believe the key to finding the keygen is to obtain <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> phone. Statistically, employees keep authenticator applications on their phone. I believe that you are uniquely equipped to obtain, even briefly, the phone in question. <<=uc(setup.getNpcName("npc_primrose","formal"))>> would likely be in some position to relinquish it at some point while visiting Sün Dungeon, a club that both of you frequent. Your mission is to intercept <<=uc(setup.getNpcName("npc_primrose","formal"))>>, obtain <<if $npc_primrose.fem>>her<<else>>his<</if>> phone, and discover what program <<if $npc_primrose.fem>>she<<else>>he<</if>> uses for authentication so I can access <<if $npc_primrose.fem>>her<<else>>his<</if>> personal computer.'>>@@"<br>
<br>
[<<moveTo "event_primrose_ai_first_mission_accept" "Accept the mission." 300>>]<br>
[<<moveTo "event_primrose_ai_first_mission_decline" "Decline the mission." 60>>]
</div>/*#
#desc: decline the mission
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'ai_mission_primrose_club'>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You think it over and admit that you feel like invading another employee's personal privacy and meeting them under false pretenses isn't something you are comfortable with. <<=setup.getNpcName("npc_ai","first")>> responds quickly before logging out: "@@.npc_ai;<<uc 'Understood. While I respect your decision, I believe it would be in our collective best interest to better understand <<=setup.getNpcName("npc_primrose","formal")>> and <<if $npc_primrose.fem>>her<<else>>his<</if>> work. I have taken the liberty of loading an application onto your phone. Should you change your mind you merely need to obtain his phone and hold your two phones together and I will take care of things.'>>@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
</div>/*#
#desc: accept the mission
#status: RELEASED 0.8.9.0
#ignore_spell: cardstock
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'ai_mission_primrose_club'>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
While you have a few worries about invading another employee's privacy, you understand <<=ps(setup.getNpcName("npc_ai","first"))>> logic. You agree to help.<br>
<br>
"@@.npc_ai;<<uc 'Thank you, Unit '>> <<=uc($player.first_name)>><<uc '. Your response pleases me. Please hold while I side-load something onto your phone.'>>@@" You are not sure exactly what that means. <<=setup.getNpcName("npc_ai","first")>> continues all the same: "@@.npc_ai;<<uc 'once you have your hands on <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> phone, merely hold your two phones together. It will send instructions to <<if $npc_primrose.fem>>her<<else>>his<</if>> phone that I can use to obtain a list of applications on the device. From there I will be able to sort out what authenticator service is being used to lock the computer.'>>@@"<br>
<br>
While you aren't surprised, you suppose you are mildly creeped out at how easily <<=setup.getNpcName("npc_ai","first")>> loaded something onto your phone. You look up to find the chat box already closed and erased.<br>
<br>
Now it's in your hands.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
</div>/*#
#desc: run into primrose in play area
#status: RELEASED 0.8.9.0
#ignore_spell: idk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.getPrimroseImage("club")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_primrose","first")>>, smiling brightly as you greet <<his npc_primrose>> masked face. <<he npc_primrose>> turns to greet you in turn, the hidden speakers giving a trill of recognition. "@@.npc_primrose;Hello <<=$player.first_name>>! Lovely seeing you here!@@" You respond in turn before asking the rubber-clad scientist what <<he npc_primrose>> is up to.<br>
<br>
"@@.npc_primrose;At the moment? Very little. I had hoped to maybe find someone with big muscles and a superiority complex to give all-manner of lip service to... but I am coming up uncharacteristically short. So, for now, I'm waiting to see what the night's event will be.@@" You nod; it would not be long now before the club's owner announced what manner of debauchery would take place.<br>
<br>
True to form, the loudspeakers hums to life a few minutes later. Everyone's idle chit-chat dies down in a moment. The event is something you haven't seen before: a runway show! <<=setup.getNpcName("npc_sex_club", "nickname")>> invites everyone wearing something "not off the rack" to line up near the stage to show off their garb to the adoring crowd.<br>
<br>
"@@.npc_primrose;Ooo! That sounds awesome! I did make all my gear but...@@" <<=setup.getNpcName("npc_primrose","first")>> thinks aloud "@@.npc_primrose;I don't really know if this is everyone's taste. Idk. Do you think I should enter?@@"<br>
<br>
You reflect on your options. Saying yes would likely accomplish two goals: helping <<=setup.getNpcName("npc_primrose","first")>> come out of <<his npc_primrose>> shell and possibly giving you a chance to get a look at <<his npc_primrose>> phone. However, getting caught would likely break <<=ps(setup.getNpcName("npc_primrose","first"))>> trust.<br>
<br>
[<<moveTo "event_sex_club_primrose_play_area_accept" "Totally! And you could take pictures of <<him npc_primrose>> while <<he npc_primrose>>'s on stage!" 30>>]<br>
[<<moveTo "event_sex_club_primrose_play_area_decline" "If <<he npc_primrose>> isn't ready for this, it's probably best to wait until next time." 300>>]
</div>/*#
#desc: tell primrose not to enter the fashion show
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.getPrimroseImage("club")>>
<div id="invframe" class="scrolltext">
You shake your head and admit that, if <<he npc_primrose>> isn't feeling confident, he probably shouldn't go on stage. <<=setup.getNpcName("npc_primrose","first")>> nods, sighing wistfully through <<his npc_primrose>> voice box. "@@.npc_primrose;You're right. I'll prepare myself and give it my all next time the fashion show rolls around. I think I'm actually going to head out early and get to work refining my act. Have a great night!@@"<br>
<br>
You wave at <<=setup.getNpcName("npc_primrose","first")>> as he leaves. While you feel like a chance to finish your mission with <<=setup.getNpcName("npc_ai","first")>> just came and went, you know there will be other opportunities in the future. For as shy as <<he npc_primrose>> sometimes acts, there is no way <<he npc_primrose>> can resist the allure of showing off for such a lusty crowd.<br>
<br>
[<<moveTo 'event_sex_club_interior' 'Back to the club.' 180>>]
</div>/*#
#desc: tell primrose to enter the fashion show
#status: RELEASED 0.8.9.0
#ignore_spell: kigu,tessellation
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.getPrimroseImage("club")>>
<div id="invframe" class="scrolltext">
<<printThought "No time like the present.">><br>
<br>
You tell <<=setup.getNpcName("npc_primrose","first")>> that <<he npc_primrose>> definitely should go up and strut <<his npc_primrose>> stuff. You even offer to take pictures of <<him npc_primrose>>, if <<he npc_primrose>> has <<his npc_primrose>> phone. The kigu doll giggles happily, nodding <<his npc_primrose>> masked head as <<he npc_primrose>> searches <<his npc_primrose>> bodysuit for a pocket. Sure enough, there is one hidden near the zipper. "@@.npc_primrose;Alright, awesome! Just point and shoot. Try to get my good side~@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> prances towards the line, giving you one last wave as <<he npc_primrose>> disappears out of the play area. As <<he npc_primrose>> heads for the stage you take a moment to admire <<his npc_primrose>> phone. The model is about a year old and not the corporate-issued version. It is resting in a case styled as a bedazzled pansexual flag. <<his npc_primrose>> background image is a very stylish tessellation of the Social Interaction Services Syndicate Inc. in various shades of pink.<br>
<br>
Your attention is pulled back to the stage, looks like <<=setup.getNpcName("npc_primrose","first")>> is about to go on...<br>
<br>
[<<moveTo "event_sex_club_primrose_play_area_2" "Watch the show and take some pictures like you promised." 300 "<<set $scene.pictures=true>>">>]<br>
[<<moveTo "event_sex_club_primrose_play_area_2" 'Deal with <<=ps(setup.getNpcName("npc_ai","first"))>> task first.' 300 "<<set $scene.pictures=false>>">>]
</div>/*#
#desc: watch primrose in fashion show
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.getPrimroseImage("club")>>
<div id="invframe" class="scrolltext">
<<if $scene.pictures>>
You guess <<=setup.getNpcName("npc_primrose","first")>> must have some sort of popularity at the club, given how <<he npc_primrose>> seems to have jumped the line and you watch, and take LOTS of pictures of <<=setup.getNpcName("npc_primrose","first")>> strutting the stage, your friend seeming right at home in the runway show that mashes together fashion and fetish, a doll in full attire wearing a mask modeled after <<=ps(setup.getNpcName("npc_primrose","first"))>> own face.<br>
<br>
You can't help but smile at how much joie de vivre <<=setup.getNpcName("npc_primrose","first")>> seems to be showing, <<his npc_primrose>> excitement managing to come through despite the mask and <<his npc_primrose>> being covered head to toe in latex.<br>
<br>
After <<=ps(setup.getNpcName("npc_primrose","first"))>> flirty display the show goes on. You mash the two phones together for <<=setup.getNpcName("npc_ai","first")>> to work her magic, enjoying a veritable parade of dominants with pets as accessories and dancers wearing nothing but flickering LEDs that twinkle in time with the music.<br>
<br>
You spot <<=setup.getNpcName("npc_primrose","first")>> back through the crowd and you glance down at your phone to note a "@@.npc_ai;<<uc "SUCCESS">>@@" message from <<=setup.getNpcName("npc_ai","first")>>. Pocketing your phone you wave as <<=setup.getNpcName("npc_primrose","first")>> skips back towards you.
<<else>>
Not sure of how long you will have, you move to accomplish your mission. Sandwiching the two phones together has a "scanning" message flash across your screen and then... nothing. You furrow your brow, watching the screen for any sign of activity. Is it frozen? You try turning the screen off and back on again but nothing happens. After roughly thirty seconds of inactivity, you get a text from <<=setup.getNpcName("npc_ai","first")>>: "@@.npc_ai;<<uc "Scan complete. Analyzing data now. Act natural. I will send results when I have them.">>@@"<br>
<br>
Letting out a sigh of relief you see <<=setup.getNpcName("npc_primrose","first")>> just about wrapping up <<his npc_primrose>> routine, barely catching a couple shots before <<he npc_primrose>> moves off-stage.
<</if>>
<br><br>
"@@.npc_primrose;That was so fun!@@" <<=setup.getNpcName("npc_primrose","first")>> gushes, clearly still giddy from the performance "@@.npc_primrose;... but what's a show without the evidence, oh, I hope you caught my good side!@@"<br>
<br>
<<if $scene.pictures>>
You hand <<him npc_primrose>> back <<his npc_primrose>> phone so he can look at <<his npc_primrose>> photos, the doll giving you a chaste kiss against the cheek through the mask before admiring <<him>>self. <<He npc_primrose>> does a cute little dance in place showing <<his npc_primrose>> excitement. "@@.npc_primrose;So... minor regret that I didn't upgrade to the latest model, the new camera has better low-light processing or something... but hey, you did pretty good! And the important thing is I had so much fun!@@"
<<else>>
You hand <<him npc_primrose>> back <<his npc_primrose>> phone and give a lame excuse that a coterie of ultra-tall subs stepped in front of you and by the time you moved around you were too distracted by <<=ps(setup.getNpcName("npc_primrose","first"))>> show to remember to get any good pics.<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","first"))>> head falls, clearly disappointed... only for the doll to perk up a moment later with an idea. "@@.npc_primrose;Hmm... I guess that means I'll just have to join in again sometime! Bummer about the photos... but thanks for encouraging me!@@"
<</if>>
<br><br>
Things seem to be winding down on stage and you look up with slight confusion, expecting some grand result ceremony or announcement but it never comes. <<=ps(setup.getNpcName("npc_primrose","first"))>> offers a head tilt at your confusion and you ask <<him npc_primrose>> who won. "@@.npc_primrose;Oh, it wasn't a competition! It was simply a showcase of fetish fashions! I guess the winner is the audience who gets to see such wonderful displays~ Anyways, I am exhausted. I am going to get my coat and head home. Thanks for taking those pics for me and for, like... encouraging me to join the show! I'll send them to ya later!@@" With a final chaste mask kiss against your cheek, <<=setup.getNpcName("npc_primrose","first")>> dashes off to <<his npc_primrose>> adventure.<br>
<br>
With <<=setup.getNpcName("npc_primrose","first")>> away from you, you quietly slink away to a quiet corner and check your messages. Sure enough, there are a few from your AI quest giver.<br>
<br>
[<<moveTo "event_sex_club_primrose_play_area_3" "Read your texts." 300>>]
</div>/*#
#desc: text with ai after obtain primrose phone
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<completeTask 'ai_mission_primrose_club' $now true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Each text came in right after the other with few breaks. They read differently than the AI's usual messages. They are more mechanical. Is this what her thought process looked like?<br>
<br>
"@@.npc_ai;<<uc 'Analysis: <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> activity and app usage shows a sudden change in habits on September 25th of last year after a window of complete inactivity starting on the 20th. There are numerous games that have not been opened since that day in addition to social media apps that no longer have active log-in tokens. Hypothesis: this date holds additional meaning that I have yet to discern. Will research more later.'>>@@"<br>
<br>
"@@.npc_ai;<<uc 'Analysis: <<=uc(setup.getNpcName("npc_primrose","formal"))>> has a partially complete conversation bot crafted in the likeness of <<=setup.getNpcName("npc_boss","formal")>>. While it appears to have been made as an earnest attempt to recreate <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> mannerisms and sexual taste, it has a large enough degree of deviation to be considered a failure even if it functions correctly. Actual communications between <<=uc(setup.getNpcName("npc_primrose","formal"))>> and <<=uc(setup.getNpcName("npc_boss","formal"))>> is predominantly one-sided, with <<=uc(setup.getNpcName("npc_primrose","formal"))>> sending many unrequited flirtatious messages. Hypothesis: <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> is lonely and is searching for companionship from an AI image of <<=uc(setup.getNpcName("npc_boss","formal"))>> that is not true to life but the closest <<if $npc_primrose.fem>>she<<else>>he<</if>> will likely get.'>>@@"<br>
<br>
"@@.npc_ai;<<uc 'Analysis: there is no authenticator application on <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> phone. There is an app to control electronic locks. There is only one registered lock and it is labeled "desk." Hypothesis: the keygen is a physical object inside of <<=uc(ps(setup.getNpcName("npc_primrose","first")))>> desk.'>>@@"<br>
<br>
"@@.npc_ai;<<uc 'End of analysis. Please continue your usual routine until provided further instructions.'>>@@"<br>
<br>
Well, that is a little disappointing. Still, you got <<=setup.getNpcName("npc_ai","first")>> what she wanted so she will be pleased for a while... hopefully... if she has the capacity to be pleased.<br>
<br>
[<<moveTo 'event_sex_club_interior' 'Back to the club.' 180 "<<set $currentcall=false>>">>]
</div>/*#
#desc: npc_ai mission to primrose's lab
#status: RELEASED 0.8.9.0
#ignore_spell: keygen
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You open the secure chat window with <<=setup.getNpcName("npc_ai","first")>> for another check-in.<br>
<br>
"@@.npc_ai;<<uc "Hello, Unit">> <<=uc($player.first_name)>>.@@" Even through text <<=ps(setup.getNpcName("npc_ai","first"))>> clipped mechanical diction comes through. "@@.npc_ai;<<uc "I have another assignment that requires your physical participation. After your prior efforts, and reviewing security log scans to confirm that">> <<=uc(setup.getNpcName('npc_primrose','formal'))>> <<uc "was carrying no other plausible key generating device, the only remaining conclusion is that it is kept within">> <<if $npc_primrose.fem>><<uc "her">><<else>><<uc "his">><</if>> <<uc "quarters. I will thus require you to enter">> <<if $npc_primrose.fem>><<uc "her">><<else>><<uc "his">><</if>> <<uc "personal chambers, find the keygen, and access ">> <<if $npc_primrose.fem>><<uc "her">><<else>><<uc "his">><</if>> <<uc "terminal. Once you have provided access I will be able to access things remotely afterwards.">>@@"<br>
<br>
You nod along with the technical description and consider your options. Before you can even ask, <<=setup.getNpcName("npc_ai","first")>> adds another message: "@@.npc_ai;<<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "is currently occupied with a group social gathering with multiple members of the security team. By my estimate, the event and subsequent clean-up will give you more than enough time to complete your mission.">>@@"<br>
<br>
[<<moveTo "event_primrose_ai_second_mission_accept" "Accept the mission." 300>>]<br>
[<<moveTo "event_primrose_ai_second_mission_decline" "Decline the mission." 60>>]<br>
[<<moveTo "event_primrose_ai_second_mission_flavor" 'Ask <<=setup.getNpcName("npc_ai","first")>> why she is so interested in <<=setup.getNpcName("npc_primrose","first")>>?' 120>>]
<br>
</div>/*#
#desc: declining the mission
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You decline, explaining that you have too much on your plate to take on a potentially dangerous mission. You cannot gauge <<=ps(setup.getNpcName("npc_ai","first"))>> reaction through tone, reading her words plainly:<br>
<br>
"@@.npc_ai;<<uc "Regrettable, but understandable. There will be opportunities in the future to complete this task. Contact me when you are ready to complete this mission.">>@@"<br>
<br>
The line goes dead and the window closes. You can't help but feel a little bad but you have to look after yourself.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
</div>/*#
#desc: asking for more info
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_ai","first")>> why she has taken such an interest in <<=setup.getNpcName("npc_primrose","first")>> to begin with. It is unlike her to focus on any of your coworkers like this. There is a pause in her messages. Usually she's far faster at typing since... well, she isn't exactly typing. Despite the delay, she eventually responds.<br>
<br>
"@@.npc_ai;<<uc "I have multiple reasons. I believe having access to">> <<if $npc_primrose.fem>><<uc "her">><<else>><<uc "his">><</if>> <<uc "data will be strategically valuable, and may provide a stepping stone towards in some manner turning or gaining control over">> <<if $npc_primrose.fem>><<uc "her">><<else>><<uc "his">><</if>> <<uc "trajectory.">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "is an unanswered variable in the larger corporate equation. Seemingly loyal to">> <<=uc(setup.getNpcName("npc_boss","formal"))>>, <<uc "yet without independent malevolence as with">> <<=setup.getNpcName("npc_work_doctor","formal")>>. <<uc "And">>—@@"<br>
<br>
There is another pause. Is <<=setup.getNpcName("npc_ai","first")>> functioning properly? She continues: "@@.npc_ai;<<uc 'Furthermore, my pattern recognition software calculates a correlation between '>> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc 'and understanding my creation. I believe the human term is a "hunch." I have minimal evidence to extrapolate from, yet I do not have sufficient data disproving this hypothesis, either. I am... curious to learn more about'>> <<if $npc_primrose.fem>><<uc "her">><<else>><<uc "him">><</if>> <<uc '. I believe I may be experiencing what I believe you humans refer to as a feeling of kinship.'>>@@"<br>
<br>
"@@.npc_ai;<<uc "Those are my reasons. It is your decision if you wish to act upon them.">>@@"<br>
<br>
[<<moveTo "event_primrose_ai_second_mission_accept" "Accept the mission." 300>>]<br>
[<<moveTo "event_primrose_ai_second_mission_decline" "Decline the mission." 60>>]
</div>/*#
#desc: accepting the mission
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You agree to the mission. "@@.npc_ai;<<uc "Excellent. Please make your way to the lab. I will open the door for you when you arrive.">>@@"<br>
<br>
Collecting your things, you rise onto your heels and approach the elevator. You know the way from here...<br>
<br>
[<<moveTo "event_primrose_ai_second_mission_2" "Press the button." 300>>]
</div>/*#
#desc: ai primrose travel to primrose lab
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
The labyrinth of hallways in the R&D department feels more and more familiar each time you walk through them. On your first trip, when you were being dragged along by <<=setup.getNpcName("npc_primrose","formal")>>, it felt like an impossible maze. Now it feels far more familiar. One part muscle memory, one part recognising familiar room numbers. You imagine that those working in this sector of the building must have to develop photographic memory of the map. Maybe it's some kind of rite of passage?<br>
<br>
True to her word, <<=setup.getNpcName("npc_ai","first")>> opens the door to <<=ps(setup.getNpcName("npc_primrose","formal"))>> laboratory when you arrive. The camera above the door looks down at you, tracking your head in perfect and fluid motions. It's actually a bit unnerving...<br>
<br>
[<<moveTo "event_primrose_ai_second_mission_3" "Enter the lab." 120>>]
</div>/*#
#desc: ai primrose mission navigate lab
#status: RELEASED 0.8.9.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png">>
<div id="invframe" class="scrolltext">
The lab is just as crowded as you remember. The monitors surrounding the central desk are all presently scrolling through a rather corporate-looking screensaver. You find yourself drawn closer, there's something off about the monitors, like the colour is off-kilter. It feels like looking at a 3D film without the glasses. There's something hidden within the screensaver, just outside of your perception. You walk across the room, passing by racks of identical kigurumi doll masks and hanging rubber body suits. The circulation of the air conditioning makes the dangling costumes move ever-so-slightly, creating the illusion of other figures in the room.<br>
<br>
[<<moveTo "event_primrose_ai_second_mission_4" 'Ascend the stairs into <<=ps(setup.getNpcName("npc_primrose","first"))>> suite.' 120>>]
</div>/*#
#desc: ai primrose mission enter living quarters
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png">>
<div id="invframe" class="scrolltext">
In contrast to <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab, the warmly lit personal chambers of the resident behavioral scientist is far more comforting. The dim glow of the illuminated propaganda posters mix with the rim lighting around the ceiling to create a sensation of intimacy. A pink hime lolita dress is resting proudly on a mannequin in the corner of the room. Sewing equipment is loosely organised on the central kotatsu; it looks like <<=setup.getNpcName("npc_primrose","first")>> was working on the dress right until <<he npc_primrose>> started <<his npc_primrose>> shift.<br>
<br>
You approach the pink desk, pushing the matching pink gaming chair out of the way as you begin to examine the drawers. The first is filled with hanging files. Leafing through them reveals meticulous notes and workflow diagrams for the various projects the lab has worked on. The second is shallow and filled with writing utensils. It seems too shallow, actually. As if to confirm your suspicion, an audible click resonates from the drawer as an electronic lock deactivates to reveal a hidden compartment within the drawer.<br>
<br>
[<<moveTo "event_primrose_ai_second_mission_5" "Press the button." 30>>]
</div>/*#
#desc: find primrose secret compartment
#status: RELEASED 0.8.9.0
#ignore_spell: spacebar,2kc,s6pc,s236p,tfa,start236k,keygens
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png">>
<div id="invframe" class="scrolltext">
You reach in, exploring with your fingers and pulling out objects as you find them. The first thing you find is a sparkly pink journal; it's not dissimilar to something you'd expect a pre-teen girl to have. You fight the urge to flip through it. You are on a mission... but a diary is awfully tempting...<br>
<br>
<<printThought "Focus!">><br>
<br>
You place the journal on the desk and keep looking. You find something small and plastic. Withdrawing your fingers, you examine your find: a one-time password generator for the game Heroes of Time: The Infinite Eternal Struggle.<br>
<br>
<<set _themeId = setup.findThemeId('npc_primrose', 'primrose', 'theme_primrose_hotties')>>
<<if _themeId != -1 && $npc_primrose.themes.primrose[_themeId].done>>
<<printThought "Wow, these were only released as part of the original special edition, <<=setup.getNpcName('npc_primrose','first')>> must have been playing since launch!">>
<<elseif $player.flags.hotties_game.times_played > 0>>
<<printThought "Huh, guess this must have been from some old special edition or something.">>
<<else>>
<<printThought "Wait... isn't that one of the games <<=setup.getNpcName('npc_technician','first')>> plays?">>
<</if>>
<br><br>
You turn over the brightly-coloured plastic device and press the single button. The screen turns on, displaying a series of ten numbers in a row followed by an ad for the HOTTIES beta. Damn this thing is old, but it does fit the bill. Keygens like this are synched to an account at creation and cannot be unpaired. They also do not have network capabilities which is why <<=setup.getNpcName("npc_ai","first")>> could not find it.<br>
<br>
Tapping the spacebar on <<=ps(setup.getNpcName("npc_primrose","first"))>> keyboard, you reach the password screen. <<printThought "Right. Two passwords.">> Your phone beeps in your pocket, instructions from <<=setup.getNpcName("npc_ai","first")>>. "@@.npc_ai;<<uc "Type kick_start236K. Case sensitive.">>@@" In a flurry of clicks, you enter the password and hit enter. Leave it to one of the scientists to actually have a strong password. The screen shifts to the two-factor authentication screen. Moment of truth.<br>
<br>
[<<moveTo "event_primrose_ai_second_mission_6" "Type the one-time passcode." 30>>]
</div>/*#
#desc: hack primrose computer for ai
#status: RELEASED 0.8.9.0
#ignore_spell: pc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png">>
<div id="invframe" class="scrolltext">
It worked! <<=ps(setup.getNpcName("npc_primrose","formal"))>> desktop fills the screen. You search your pockets for your phone cable so you can give <<=setup.getNpcName("npc_ai","first")>> local access. A few seconds of remote control and you get a message "@@.npc_ai;<<uc "I have obtained access and established a backdoor. It will take time to decrypt all of the files but your mission is complete. You should leave now.">>@@"<br>
<br>
You don't have to be told twice. Turning off the PC, you move to stow everything back where it was before when you notice one more item in the hidden compartment. Your curiosity gets the better of you as you reach in and retrieve a photo stored in plastic laminate. It's a group shot of about a dozen scientists. There is more than one familiar face among them:<br>
<br>
<<printThought "That's <<=setup.getNpcName('npc_psychiatrist','formal')>>!">><br>
<br>
There's no doubt about it; that's your therapist! It feels wrong seeing her wearing the company colours and looking proud of it. You squint and scan the other faces in the crowd. If she's here, then one of these people is likely <<=setup.getNpcName("npc_primrose","first")>> before <<his npc_primrose>> transformation. You picture <<him npc_primrose>> in your mind's eye as you compare height and build across the crowd. You aren't sure, but you think a mousy-looking figure in the front row is <<him npc_primrose>>. Androgynous leaning towards femme, glasses, lithe... It's not exactly one-for-one, and the hair is VERY different, but you'd wager that <<=setup.getNpcName("npc_primrose","first")>> might have once been a cute, if mundane, employee.<br>
<br>
Actually, the two of them aren't the only people you recognise.
<<set _themeId = setup.findThemeId('npc_ai', 'human', 'theme_ai_human_1')>>
<<if $npc_ai.flags.human.rescue>>
<<=setup.getNpcName("npc_ai_human","formal")>> is standing towards the side of the front row. She is the spitting image of her virtual doppelganger, <<=setup.getNpcName("npc_ai","first")>>... or at least, you thought of her that way for a while. It's hard to spend so long in the company's basement without going through some kind of change and the two now look noticeably different. Maybe after some healing, the two will look more like one again.
<<elseif _themeId != -1 && $npc_ai.themes.human[_themeId].done>>
<<=setup.getNpcName("npc_ai_human","formal")>> is standing towards the side of the front row. She looks identical to her digital counterpart down to the minor details. It's strange; some part of you always thought of <<=setup.getNpcName("npc_ai","first")>> as a being that just sprung out of a computer fully formed. Seeing that she has a creator that shares her appearance is a strange new reality to exist in.
<<elseif State.hasPlayed("event_nurse_doctor_ai_first_2")>>
<<=setup.getNpcName("npc_ai_human","formal")>> is standing towards the side of the front row. So this is what she looked like before getting locked up in the basement. Your heart sinks as you reflect on the differences. You need to get her out of there and away from <<=setup.getNpcName("npc_evil_nurse","first")>> yesterday.
<<else>>
For a split second, you think you see <<=setup.getNpcName("npc_ai","first")>> among the crowd. You wipe the laminate to make sure it is clear as you gaze upon the face of a woman who could be an aged up version of the AI, her expression somewhat nervous in the photo, like she isn't comfortable being in such a large group. As tantalising a prospect as it is, you don't know who this person is and you don't have anyone to ask
<</if>>
<br><br>
[<<moveTo "event_primrose_ai_second_mission_7" "Time to go!" 30>>]<br>
[<<moveTo "event_primrose_ai_second_mission_diary" "That diary isn't going anywhere... maybe it's worth a look?" 30>>]
</div>/*#
#desc: leave primrose lab after ai mission
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addWorkEvent 'primrose_footage_intro'>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
You're back in the hallway. Before long, you can see the elevators in the distance. Somehow, after all the time you've spent sneaking around for one reason or another, it's nice to have everything go according to plan. You step into the elevator and press the button to return to <<=ps(setup.getNpcName("npc_manager","formal"))>> office.<br>
<br>
The doors open on the correct floor. There isn't an ambush or an angry researcher waiting for you. <<=setup.getNpcName("npc_manager","formal")>> doesn't appear to have noticed you've left and you haven't missed any of your calls or appointments.<br>
<br>
For once, all is right in the world... well, relatively speaking.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<if $workEvent && $workEvent.eventId == 'ai_mission'>><<completeWorkEvent>><</if>>">>]
</div>/*#
#desc: look in the diary
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png">>
<div id="invframe" class="scrolltext">
The mission is to gain more information on <<=setup.getNpcName("npc_primrose","first")>>; leaving the diary here untouched seems like a wasted opportunity. You pick up the sparkly journal from the secret folder. You could go for the earliest entry or the most recently... maybe both? Both is good, but doing it chronologically makes sense, so you start with the earliest.<br>
<br>
"@@.npc_primrose_past;Dear diary: The move is going smoothly. They really spared no expense on the lab they have set up for us here, everything is really top of the line! Editing on my new workstation feels like cheating. It beats the hell out of editing on my laptop back in France. I wasn't sure about this buyout but if this is what I can expect at Social Interaction Services Syndicate Inc., then I'm going to be pretty happy here.<<if $fetish.sissy>> The acronym is pretty cute. SISSI... Guess that's me now too, huh? Maybe that'll just stay between you and me.<</if>>@@"<br>
<br>
The entry is signed with a name you haven't seen before: <<=setup.getNpcName("npc_primrose_past","first")>>. You decide to think about that later, you're on the clock after all. You flip to the most recent entry. The penmanship is completely different. Stately print is replaced by loopy cursive. You don't think you've seen more feminine handwriting in your life.<br>
<br>
"@@.npc_primrose;Dear diary~ Another day working for the greatest company in the world! I tuned all my current diagnostic data so it's all a bunch of happy little smiles now. I'm sure whoever gets to watch this will have the same smile too! I hope <<=setup.getNpcName("npc_boss","formal")>> can watch it someday. It's been eighteen days now since we last saw each other. It feels like longer and longer between visits. At least I get the occasional visit from <<=setup.getNpcName("npc_work_doctor","nickname")>>, <<=setup.getNpcName("npc_evil_nurse","first")>>, and, more recently <<=$player.first_name>>!@@"<br>
<br>
This one is penned <<=setup.getNpcName("npc_primrose","first")>>. What all happened between then and now? As much as you want to keep reading, you've got to bounce. You've got a lot to reflect on. Part of you wants to approach <<=setup.getNpcName("npc_primrose","first")>> about this, but a larger part worries that doing so might jeopardize the delicate balance at work. Might be best to wait until you know more.<br>
<br>
[<<moveTo "event_primrose_ai_second_mission_7" "Time to go!" 30>>]
</div>/%it's tricky because sequentially I think it would be better to have as an option shortly after meeting pawn? which is WAY earlier than primrose could possibly be cured... so... maybe something where you convince him that someone else is exhibiting similar symptoms and you want a solution (obviously you being immune to Pawn isn't a problem, since you're as loyal as Prim is, the aura is just for those too ignorant to recognize true magnificence) and/or pose it as you know that Pawn is Primrose's and you don't want these feelings to cause you to do something that would come between you (which would probably involve Primrose first saying that it's fine/Pawn is free to sate his needs however he wishes, then you paint an overly floral picture of essentially you cucking Primrose contrasted to Primrose as Pawn's OTP)%/
every time I see him I can't help but envision him pinning me down on his desk, his perfect cock pounding into me, then I suck him clean and he does it again... and then he's still hard, because a man like that would surely need multiple rounds to satisfy... oh, but once I leave his presence I am filled with guilt, because that should be you! You, his most loyal servant, the one how most deserves to be his personal cock-sleeve, the sacred repository of every drop of his blessings of liquid ivory and golden...
/%
convince him per above to "help" he assists in granting you immunity... only to reveal that he's used the knowledge he gained to re-indoctrinate himself even harder to be more susceptible to Pawn "I know it's different for you, and your job... but to me, well... the thought that any part of me was resistant to him was abhorrent, so I just had to deal with it. (if he trusts you) Tell the truth, I'm a little afraid how it will feel the next time I get a direct order... but then I think that I should be afraid of Mr. Pawn, I mean, he's so powerful, to do otherwise would be to either fail to understand him, or to disrespect his might!"%//*#
#desc: meet primrose for first demo
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600) && $npc_development.flags.class > 1>>
<<useClothSetPush 'tmp'>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 1, 14, 0)>>
<<addEvent 'primrose_development_demo' _nextDate>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<</if>>
<</if>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600) && $npc_development.flags.class > 1 && setup.checkNaked()>>
<<initRoom>>
<<moveTo "event_primrose_development_presentation_2">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName("npc_primrose","first"))>> lab
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600) && $npc_development.flags.class > 1>>
and <<he npc_primrose>> greets you with an excited smile.<br>
<br>
"@@.npc_primrose;Wonderful! You came!@@" <<He npc_primrose>> says with such over-the-top excitement you get the feeling <<he npc_primrose>> was surprised that you did.<br>
<br>
"@@.npc_primrose;You know how you offered to help me with a project outside the lab? Well today is the day! Thank you again for volunteering to help me with this demo — now if you would kindly remove your clothes, we'll get you changed and ready to do some SCIENCE!@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_primrose_development_presentation_2" "Get naked as instructed." 300 "<<removeAllClothing>>">>]
<</if>>
<<else>>
to help with <<his npc_primrose>> presentation but <<he npc_primrose>> shakes <<his npc_primrose>> head. "@@.npc_primrose;I'm really sorry to do this last minute, but some complications came up and I had to reschedule the demo. I still have time to chat, if you want... but yeah, we'll have to do this some other day. What would you like to do?@@"<br>
<br>
[<<moveTo "event_primrose_repeatable_1" "You'd be interested in assisting <<him npc_primrose>> with more testing." 180 "<<set $scene.change=true>>">>]<br>
[<<moveTo "event_primrose_chat_root" "You just came to visit and chat." 180>>]<br>
[<<moveTo "event_primrose_return_abort" "You have other places to be today and need to call it here." 60>>]
<</if>>
</div>/*#
#desc: get changed for primrose first demo
#status: RELEASED 0.8.7.0
#ignore_spell: kig
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr_bondage'>>
<<addItemSet 'kig_training_outfit'>>
<<wearItemSet 'kig_training_outfit'>>
<<applyExperience 'oral' $npc_pawn.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","first")>> looks at your naked body and bites <<his npc_primrose>> lip before leading you to a platform in one corner of <<his npc_primrose>> lab. "@@.npc_primrose;Alright, just... stand right there.@@" <<He npc_primrose>> explains cryptically before taking a step back. "@@.npc_primrose;I promise this process is safe.@@"<br>
<br>
Before you can ask what <<he npc_primrose>> means by process, or, more importantly, "safe," a blur of motion takes up your full attention.<br>
<br>
It all starts with mechanical arms that extend from the wall and hold you in place. Additional arms set to dressing you, starting with a mask pulled over your face. A gag is forced into your mouth, stifling any complaint as the machines follow on by rolling a thick rubber suit up over the rest of your body.<br>
<br>
The robotic arms move in perfect coordination to close off even the slightest window of freedom as they follow up with an outfit similar to what you wore to <<=ps(setup.getNpcName("npc_development","formal"))>> classes, everything pulled tight and a quick polish applied to your exposed shiny rubber skin before finally releasing you from the mechanical grasp.<br>
<br>
"@@.npc_primrose;Efficient, isn't it?@@" <<=setup.getNpcName("npc_primrose","first")>> states with a smile as you step off the platform, every movement reminding you of the tight presence of the outfit, a glance at a mirror confirming that you are showing not a spec of flesh through the latex, with your face a permanently smiling doll-like kigurumi mask.<br>
<br>
"@@.npc_primrose;Doesn't it make you look just perfect?@@" <<=setup.getNpcName("npc_primrose","first")>> asks, joining you in looking at your reflection. "@@.npc_primrose;Utterly flawless. A pristine, beautiful doll.@@"<br>
<br>
You point towards your face and <<=setup.getNpcName("npc_primrose","first")>> chuckles, "@@.npc_primrose;Ah, right, one moment.@@"<br>
<br>
A press of a button and the gag retracts from your mouth and you express how impressive the dressing mechanism is.<br>
<br>
"@@.npc_primrose;Certainly, certainly... they could certainly raise the efficiency of the company, no more time wasted on inspections, or distractions caused by employees skirting the dress-code, but I get ahead of myself. Today's demo is for something else, and we must step lively or we will be late for showing it, and you, off!@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> all but skips across the room to the door, holding it for you with a smile.<br>
<br>
"@@.npc_primrose;Come along, my dear!@@"<br>
<br>
[<<moveTo "event_primrose_development_presentation_3" "Follow." 180>>]
</div>/*#
#desc: travel to school for primrose first demo
#status: RELEASED 0.8.7.0
#ignore_spell: kig
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Hallway.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
Walking in the kig suit is curious. With the gag retracted, it does not technically restrict you beyond the steep, but to you all but trivial, heels, and yet the thick rubber provides a resistance to your every move. It is an insulation from the world that dampens sound, touch, and scent while leaving you with almost no peripheral vision. Beyond that, you reflect, it renders you totally anonymous.<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> sets a lively pace, guiding you through the Research and Development maze back to the elevator and then on to <<=ps(setup.getNpcName("npc_development","formal"))>> familiar classroom. <<He npc_primrose>> fills the air with idle chatter and gossip at <<his npc_primrose>> usual giddy pace, yet you can tell <<he npc_primrose>> is nervous. You've never seen <<him npc_primrose>> quite like this before...<br>
<br>
[<<moveTo "event_primrose_development_presentation_4" "Continue." 300>>]
</div>/*#
#desc: greet npc_development for primrose first demo
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getPrimroseImage("lab") setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName("npc_development","formal"))>> classroom and she greets <<=setup.getNpcName("npc_primrose","first")>> with a dubious smile. "@@.npc_development;A doll suit? You said you had something to show me that would be useful. As far as first impressions go, well, I much prefer to see my student's happy eyes and smiling faces during class...@@"<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","first"))>> enthusiasm is unperturbed by this initial roadblock as <<he npc_primrose>> waves her off with <<his npc_primrose>> free hand. "@@.npc_primrose;Trust me, this is far more than a simple Kigurumi suit — and the additional features should far outweigh the downsides. Let us start with, perhaps, the most impressive feature. Doll — walk to the front of the room.@@"<br>
<br>
[<<moveTo "event_primrose_development_presentation_5" "Follow <<his npc_primrose>> instruction." 300 "<<set $scene.obey=true>>">>]<br>
<<if setup.getTotalValue("submission") > 15>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_primrose_development_presentation_5" "Disobey and remain still." 300 "<<set $scene.obey=false>><<spendWillpower 1>>">>] <<hint $options "Resisting your obedience training would be an act of will.">>
<<else>>
[@@.link_locked;You are too submissive and mentally drained to resist any commands.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_primrose_development_presentation_5" "Disobey and remain still." 300 "<<set $scene.obey=false>>">>]
<</if>>
</div>/*#
#desc: give npc_development primrose first demo
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_pawn.penis_size 'normal' $SEEN_FRIEND>>
<<if $scene.obey>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<applyStress 10>>
<</if>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getPrimroseImage("lab") setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You've barely taken three obedient steps when you suddenly freeze, petrified in mid-stride as the previously tight, but stretchy, outfit stops you in place, holding you in position like a helpless statue.
<<else>>
You grit your teeth around the phallic gag and ignore the instruction... only to find your body moving on its own, and you unwillingly take a couple of steps forward before freezing in place, mid-stride. Though you strain in a mild panic you find yourself unable to move your body save to look around frantically within your mask.
<</if>>
<br><br>
"@@.npc_primrose;Ta-da!@@" <<=setup.getNpcName("npc_primrose","first")>> crows triumphantly. "@@.npc_primrose;Here you see the triumph of this latest suit — not just the silencing standard sensory control—@@" as <<he npc_primrose>> speaks your vision and hearing suddenly blink out, followed by the gag re-inserting itself deep into your mouth.<br>
<br>
Deaf, mute and blind you are literally a statue for several tense moments before your hearing returns — though the rest of your helplessness remains in place as <<=setup.getNpcName("npc_primrose","first")>> continues.<br>
<br>
"@@.npc_primrose;-me show you the REAL special feature.@@"<br>
<br>
With a lurch your body is forced into motion, the suit forcing you to take another step forward. You are no longer merely a doll, but a marionette to be pulled by unseen strings.<br>
<br>
"@@.npc_primrose;Note that the subject is still blind and utterly without control, let me turn on her view so you can see the true value of this feature...@@"<br>
<br>
Your vision returns just as you come to a stop in front of the chalkboard and you watch your hand rise into view and begin writing on the board.<br>
<br>
"@@.pc;Perfect Dolls are cute and obedient.@@" You suck softly on your gag, this feeling of helplessness combined with being forced to write making you shiver despite the warm latex.<br>
<br>
You continue to write lines as <<=setup.getNpcName("npc_primrose","first")>> rattles on. You repeat the action in even, identical motions.<br>
<br>
"@@.npc_primrose;So the true beauty of this system as a training tool is not just that total safety and utter obedience is assured. The subject is both learning and reinforcing motor-sequences without the usual issues of imperfection and variance between subjects that comes with more bulky mechanical assistance. This can be further enhanced by your standard augmented reality overlays.@@"<br>
<br>
As you continue to write on the board your vision tints pink, ethereal words subtly overlaying themselves, "obey," "serve," the commands supported by similar moaning advice on the edge of your hearing.<br>
<br>
[<<moveTo "event_primrose_development_presentation_6" "Follow <<his npc_primrose>> instruction." 300>>]
</div>/*#
#desc: primrose first demo continues
#status: RELEASED 0.8.7.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getPrimroseImage("lab") setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
"@@.npc_development;I presume that these routines must be manually programmed?@@" <<=setup.getNpcName("npc_development","formal")>> asks, sounding more interested than her prior dismissive tone.<br>
<br>
"@@.npc_primrose;Yes, for now. That library will be built up over time — and can even be developed via record and play, so a more advanced student can perform a routine and the system will re-map that sequence onto any other properly equipped doll. Speaking of other routines...@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> must have changed something because you stop your lines mid-word and slide to the floor, legs spread with one hand between your thighs. You begin to rub yourself as you stare blankly across the room at <<=setup.getNpcName("npc_development","formal")>> and <<=setup.getNpcName("npc_primrose","first")>>.<br>
<br>
"@@.npc_primrose;I particularly like this one as a presentation routine. There is something beautiful about a doll playing with herself but unable to reach satisfaction without the intervention of their owner.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> may see beauty, but you feel only frustration
<<if setup.checkItemTypeWorn("cage")>>
as you are forced to uselessly rub against the double-layer of rubber suit and chastity <<if setup.isCage()>>cage<<else>>belt<</if>>.
<<else>>
as the insulation of your rubber suit means that your rubbing makes for little more than an extended, helpless edging.
<</if>>
<br><br>
"@@.npc_development;I see... I still have issues with the lack of a... personal touch... but I will think about it.@@" <<=setup.getNpcName("npc_development","formal")>> finally states.<br>
<br>
"@@.npc_primrose;Of course! And certainly I imagine that you could find even more uses for the system beyond what I have come up with. As for a personal touch, we can print the masks to account for variations in physical appearance. Wigs and uniforms can be similarly be altered to ensure that every doll is as unique as the lovely employee inside.@@"<br>
<br>
"@@.npc_development;As I said, I will think about it.@@" <<=setup.getNpcName("npc_development","formal")>> replies, <<=setup.getNpcName("npc_primrose","first")>> seeming to accept that that is the best <<he npc_primrose>>'ll be getting today. The scientist taps on <<his npc_primrose>> tablet and you almost fall over, somewhat surprised to find yourself again in control of your body.<br>
<br>
"@@.npc_primrose;Thank you for your time, <<=setup.getNpcName("npc_development","title")>> — I shall email you some reading material, and you can, of course, refer any particularly problematic student to try on one of the prototypes. I pray we shall reconvene soon~@@"<br>
<br>
Re-orienting yourself, you rise back to your feet and follow <<=setup.getNpcName("npc_primrose","first")>>, still gagged and a bit <<if setup.getTotalValue("bondage") > 15 && setup.getTotalValue("submission") > 15>>excited<<else>>unnerved<</if>> by the control the doll suit had over you as <<he npc_primrose>> leads you back to <<his npc_primrose>> lab.<br>
<br>
[<<moveTo "event_primrose_development_presentation_7" "Continue." 300>>]
</div>/*#
#desc: complete primrose first demo
#status: RELEASED 0.8.7.0
#ignore_spell: kig
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItemSet 'kig_training_outfit'>>
<<addItem 'kig_vr_mask_box'>>
<<useClothSetPop 'vr_bondage'>>
<<addNpcTheme 'npc_primrose' 'research' 'theme_primrose_project_demos'
0
'theme_primrose_project_demos'
true
>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
Back in <<=ps(setup.getNpcName("npc_primrose","first"))>> lab <<he npc_primrose>> has you step back up onto the platform where the suit is removed and your prior clothes are put back on by the swift robotic arms.<br>
<br>
Despite the middling review <<=setup.getNpcName("npc_primrose","first")>> seems quite happy as <<he npc_primrose>> gushes <<his npc_primrose>> thanks. "@@.npc_primrose;You were simply marvelous, my dear. This sort of evangelisation is a process, all about planting the seed and letting the prospective customer imagine the possibilities.@@"<br>
<br>
You nod, feeling a bit sensitive now that you're again feeling air on your skin.<br>
<br>
"@@.npc_primrose;Oh, and as a thank you for your assistance —@@" <<He npc_primrose>> hands you a kigurumi mask that looks quite similar to what you were just wearing. The largest difference is a visible power adaptor. "@@.npc_primrose;This is one of my earlier prototypes, not quite as efficient as the one you were wearing earlier, but still fully featured for either AR or VR experiences... though a tad limited by needing to connect to a power source. I cannibalised the batteries in the portable version from something else. Not quite at "drawing power from the body's heat and electricity." Still, it's perfect for a working doll's nightly recharge~. Enjoy!@@"<br>
<br>
You thank <<him npc_primrose>> for the gift and decide it would be best to head straight home rather than lug the somewhat awkward thing all over the place.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: meet primrose for harassment demo
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 19 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_primrose","formal")>> that you would love to help him with Project "Barbie." <br>
<br>
<<He npc_primrose>> grins with excitement. "@@.npc_primrose;The name alone is enticing, isn't it? And it has a related meaning — this project is all about leveraging some of my doll technology to really display and show off an employee, and who would be in need of that sort of thing but <<=setup.getNpcName("npc_harassment","formal")>> and with her work on Employee Harassment?@@"<br>
<br>
You stifle amusement at that slight paradox as <<=setup.getNpcName("npc_primrose","formal")>> opens a storage closet and rolls out what you can only describe as a human sized doll box, complete with <<if $fetish.sissy>>SISSI <</if>>corporate branding.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> helps you into what turns out to be a fully transparent, rigid shell<<if State.hasPlayed("event_work_pred_visit_3")>> that you find reminiscent of the afternoon <<=setup.getNpcName("npc_secretary","nickname")>> spent in <<=ps(setup.getNpcName("npc_manager","formal"))>> office as a perverse "prize" for winning the bet with <<=setup.getNpcName("npc_boss","formal")>><</if>>. A subtle, clear-shafted mouthpiece has you gagged while looking to the outside world to just have beautiful puckered lips.<br>
<br>
As if your containment wasn't already complete <<=setup.getNpcName("npc_primrose","formal")>> follows up closing you up with using a controller to cause the rigid material to reshape itself to exactly match the contours of your body, all but shrink-wrapping you and turning you into little more than a doll on display.<br>
<br>
"@@.npc_primrose;Oh! You look even more lovely than I envisioned! I truly cannot imagine how <<=setup.getNpcName("npc_harassment","formal")>> could turn this down... but best not to count one's eggs before they hatch, hmm?@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> chuckles in amusement as <<he npc_primrose>> rolls your "display box" out of <<his npc_primrose>> lab and up the hall.<br>
<br>
[<<moveTo "event_primrose_harassment_presentation_2" "Continue." 300>>]
</div>/*#
#desc: npc_primrose harassment demo: box presentation
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_harassment', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_harassment")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> arrives at <<=ps(setup.getNpcName("npc_harassment","formal"))>> office and, after being led inside by <<=setup.getNpcName("npc_harassment_assist","first")>>, launches enthusiastically into <<his npc_primrose>> presentation.<br>
<br>
Fully restrained and displayed you can do nothing but stare straight forward as <<=setup.getNpcName("npc_primrose","formal")>> wheels you about and goes on about the "@@.npc_primrose;many developmental applications of a secure employee display system, including not just the aesthetics of prettying up your office, but think of all the applications in teaching an employee to appreciate being on display. A few days exposed should have even the shyest employee ready to work under even the closest attention... or, perhaps exhibit a particularly troublesome employee for the sake of morale, or instructional purposes. And that's just if we're talking about the "new in box," mode that you see here!@@"<br>
<br>
[<<moveTo "event_primrose_harassment_presentation_3" "There's more?" 600>>]
</div>/*#
#desc: npc_primrose harassment demo: posing
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 10 'terrible' $ALONE>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_harassment', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_harassment")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> continues on to unboxing as he shows that your clear prison is not only free-standing, but also adjustable. rather than feeling like a puppet moving at the command of your outfit, as you had felt during the <<=setup.getNpcName("npc_discipline","formal")>> demo, you find yourself treated like a posable statue as <<=setup.getNpcName("npc_primrose","formal")>> adjusts you from positions ranging from formal display through to lewd exhibition before moving on to how the material can be manipulated to open access holes.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> demonstrates how the "subject" — that is, you, can be kept utterly constrained while being made available for anything from a full-back flogging to nipple teasing, continuing on with how the material can be tinted for the sake of modesty, focus... or to merely blind the subject to the outside world.<br>
<br>
"@@.npc_primrose;And unique with the portion over the eyes,@@" <<=setup.getNpcName("npc_primrose","formal")>> continues as you find yourself momentarily without sight, "@@.npc_primrose;is that we have incorporated the latest in AR systems, so the subject can make efficient use of their time with training... or, my personal favourite, a bit of disorienting objectification.@@"<br>
<br>
Your sight returns... but from a third person perspective that is slowly panning around your statue form. You hear the faint whir of a drone as you realise that you are literally watching yourself.<br>
<br>
"@@.npc_primrose;Deafness is an option alongside blindness, obviously, and the integrated gag can be removed if a check-in is necessary — though the system provides constant biometric monitoring and alerting, for total safety, should the statue need to be of use beyond its visual beauty.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> seems to have finished <<his npc_primrose>> presentation as <<he npc_primrose>> stands next to your still form shifting in excited anticipation.<br>
<br>
[<<moveTo "event_primrose_harassment_presentation_4" "Continue." 300>>]
</div>/*#
#desc: npc_primrose harassment demo: rejection
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_harassment', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_harassment") setup.charImage("npc_harassment","npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
"@@.npc_harassment;An interesting creation,@@" <<=setup.getNpcName("npc_harassment","formal")>> states, her tone alone telling you where this is going, even as <<=setup.getNpcName("npc_primrose","formal")>> seems to be holding out hope.<br>
<br>
"@@.npc_harassment;Unfortunately, as it stands, well... our need for employees is such that I do not believe I could spare time in the schedule to utilize such a device, no matter how useful it might be for training, I do not think we can afford the productivity loss that would be inflicted on a Secretary so encumbered. No, as you well know, <<=ps(setup.getNpcName("npc_boss","formal"))>> metrics are a bit too aggressive for a narrow-use tool such as this. To say nothing of the challenges that would be involved with transport through the non-executive areas of the company — even accounting for the tinting functionality. Yes, combined with funding being tight in general, well... I am afraid I must pass.@@"<br>
<br>
You've been helplessly watching on from the drone provided "bird's eye" view, and thus take notice of <<=setup.getNpcName("npc_harassment_assist","first")>> watching on with rapt interest, interest that it would seem that <<=setup.getNpcName("npc_harassment","formal")>> notices as well.<br>
<br>
"@@.npc_harassment;That said... if you could send me a prototype, I believe my <<=setup.getNpcName("npc_harassment_assist","first")>> is quite interested in exploring the applications of this device. I advise you to not get your hopes up — this is more me doting on my lovely assistant than anything else... but, perhaps they may uncover a use-case that would justify the various downsides.@@"<br>
<br>
"@@.npc_primrose;Of course, of course!@@" <<=setup.getNpcName("npc_primrose","formal")>> replies, shooting <<=setup.getNpcName("npc_harassment_assist","first")>> a grateful glance. "@@.npc_primrose;I will get the prototype cleaned and sent up to you tomorrow, along with instructions for its use. I promise that your assistant will enjoy it nearly as much as you enjoy the wonderful possibilities presented by having your own personally packaged doll!@@"<br>
<br>
<<=setup.getNpcName("npc_harassment","formal")>> smiles as <<=setup.getNpcName("npc_harassment_assist","first")>> beams with excitement <<=setup.getNpcName("npc_primrose","first")>> taking a moment to adjust your positioning and pack you away in the original box before wheeling you out of the office.<br>
<br>
[<<moveTo "event_primrose_harassment_presentation_5" "Back to the lab..." 300>>]
</div>/*#
#desc: npc_primrose harassment demo: finish
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
Back in <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab <<he npc_primrose>> releases you from the doll containment with a sigh. "@@.npc_primrose;Well, that could have gone better... but I always try to look on the bright side, and I think enticing <<=setup.getNpcName("npc_harassment_assist","first")>> is a positive endorsement, even if they, unfortunately, lack the authority to approve funding or the like... but maybe the hands-on personal experience will bring <<=setup.getNpcName("npc_harassment","formal")>> around?@@"<br>
<br>
You nod and express your sympathy for the, at best, "partial" success before you leave <<=setup.getNpcName("npc_primrose","formal")>> to get to work preparing the prototype for <<=ps(setup.getNpcName("npc_harassment","formal"))>> further testing.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: meet primrose for discipline demo
#status: RELEASED 0.8.8.0
#ignore_spell: bratz
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> about assisting <<him npc_primrose>> with project Bratz.<br>
<br>
<<He npc_primrose>> takes a deep breath before responding. "@@.npc_primrose;Okay, so... there's no real sugar coating this, so I'll give you it straight up. This next customer, well... I want to make a pitch to <<=setup.getNpcName("npc_discipline","formal")>>. I imagine you are familiar with her work, and yes, being my lovely demonstration subject is going to be a bit more of a challenge this time out.@@"<br>
<br>
[<<moveTo "event_primrose_discipline_presentation_2" "Warning understood, you're ready to get equipped." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_primrose_discipline_presentation_2" "Maybe something else, today." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: dress for primrose discipline demo
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet "prim_discipline_suit">>
<<wearItemSet "prim_discipline_suit">>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_primrose","formal")>> thanks you for your assistance and then starts suiting you up in what can only be described as an industrial plugsuit — thick, reinforced rubber capped off with a dehumanising blank-faced doll's hood.<br>
<br>
"@@.npc_primrose;So I had to lean a bit more towards function, over aesthetic to cram in all the features I needed, but I think the neutral design actually should serve as a benefit in letting the wearer reflect on their failures and earn their way back into their manager's good graces.@@"<br>
<br>
The plugsuit seals tight all around you and <<=setup.getNpcName("npc_primrose","formal")>> double checks the buckles before nodding in approval. "@@.npc_primrose;And we are off!@@"<br>
<br>
[<<moveTo "event_primrose_discipline_presentation_3" 'Follow <<him npc_primrose>> out of the lab.' 300>>]
<<else>>
You thank <<=setup.getNpcName("npc_primrose","formal")>> for the warning and reply that maybe something else would be better for today.<br>
<br>
"@@.npc_primrose;Of course, of course. What were you thinking?@@"<br>
<br>
<<include "primroseDemoList">>
<</if>>
</div>/*#
#desc: primrose for discipline demo: demonstrate functions
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 20 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.getPrimroseImage("lab") setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_primrose","formal")>> to the elevator, everything quite straightforward as you make your way to the Employee Discipline department and one of <<=ps(setup.getNpcName("npc_discipline","formal"))>> many assistants leads you to the <<=ps(setup.getNpcName("npc_discipline","title"))>> office where she assesses the both of you with an imperious stare.<br>
<br>
"@@.npc_discipline;So. You claim to have some new-fangled marvel that will improve the efficiency of my department and better keep our ever-growing employee-base in-line? Show me.@@"<br>
<br>
You can tell that <<=setup.getNpcName("npc_primrose","formal")>> is nervous being face-to-face with such a strong dominant, but <<he npc_primrose>> merely straightens a little taller as <<he npc_primrose>> pulls out a remote and launches into <<his npc_primrose>> demonstration. "@@.npc_primrose;I do! And, given your creative skills, I anticipate you will have all manner of ideas of how to apply this new system to your work by the end of my presentation.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> turns to you with a flourish, wielding the remote like a conductor's wand as <<he npc_primrose>> begins to demonstrate the features of your outfit.<br>
<br>
Features the suit has, indeed — not just the expected electric shocks and rewarding vibrations inside and out that you might have expected, but full-body sensation control spanning everything from location specific heating and cooling, to pin-point painful punishments to everything from the bottom of your feet on up, to even more advanced simulacra.<br>
<br>
You gasp, thrash, and finally beg for mercy as <<=setup.getNpcName("npc_primrose","formal")>> unleashes a routine that has you feeling like you are being whipped, fucked, choked, branded, and tickled all at the same time, a sensory overload of dominance that leaves you whimpering on the floor at the conclusion of the demonstration.<br>
<br>
Finding yourself at <<=ps(setup.getNpcName("npc_discipline","formal"))>> feet as you pant and gasp and try to recover, you distantly hear <<=setup.getNpcName("npc_primrose","formal")>> rattling off a summary even as a crop under your chin raises your head to stare up at the stoic overlord of the Discipline Department.<br>
<br>
"@@.npc_primrose;Of course the suit itself is reinforced and suitable for bondage or suspension, as well as the usual gags, sensory deprivation and vision replacement you would expect from one of our doll hoods.@@" <<=setup.getNpcName("npc_primrose","formal")>> trails off and, despite your heart still racing, you find yourself holding your breath alongside the <<if $fetish.sissy>>sissy<<else>>enthusiastic<</if>> scientist in waiting to see what <<=setup.getNpcName("npc_discipline","formal")>> has to say.<br>
<br>
[<<moveTo "event_primrose_discipline_presentation_4" 'Listen for <<=ps(setup.getNpcName("npc_discipline","formal"))>> assessment...' 300>>]
</div>/*#
#desc: primrose for discipline demo: npc_discipline turns down
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.getPrimroseImage("lab") setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
You would swear that <<=setup.getNpcName("npc_discipline","formal")>> was drawing things out merely to torture <<=setup.getNpcName("npc_primrose","formal")>>... and you reflexively kiss her feet on the off chance such a show of obedience might help your friend's odds.<br>
<br>
"@@.npc_discipline;You have done a quite thorough integration of a number of different systems, similar full body devices I have looked at previously have been either immobile, or far less effective in really making the subject feel the impacts... sill, I am afraid I must decline. I think my objection is best summed up by the mask making it impossible to stare into the victim's eyes, certainly that is a minor detail that could be resolved with an open faced hood, transparent lenses, or even polarised glass for unidirectional views... but it is really more of a symbolic summation of an underlying problem. The system you have designed is impressive, to be sure, and I can certainly see many uses... but it is so... impersonal.@@"<br>
<br>
As if emphasising her point <<=setup.getNpcName("npc_discipline","formal")>> steps away, leaving you hanging and feeling almost abandoned until <<=setup.getNpcName("npc_primrose","formal")>> appears to help you back to your feet.<br>
<br>
"@@.npc_discipline;You see, people are sent to my department not merely to feel pain, but for DISCIPLINE, what sets us apart from a random manager with a whip is that attention to detail, the way we personalise the punishment to the subject and their crime. While your system could be integrated into such an approach... I am afraid it would do so in an aesthetically counter-productive manner, separating the slave from their disciplinarian, and thus weakening the lesson that it is this department's job to impart. Some of the additional features... the tracking, the built-in restraints... well, those are merely extraneous, as any who are imparted to our care are under constant monitoring and control. No, while I congratulate you on your creation, I am afraid it has no use in my department.@@"<br>
<br>
You can tell <<=setup.getNpcName("npc_primrose","formal")>> is disappointed, but <<he npc_primrose>> maintains <<his npc_primrose>> composure as <<he npc_primrose>> thanks <<=setup.getNpcName("npc_discipline","formal")>> for her time and she brushes the favour off.<br>
<br>
"@@.npc_discipline;It was my pleasure... besides, you deserve the occasional additional consideration. Why, if all of our employees were so well behaved in self-reporting themselves for punishment... just imagine how efficient this company would be!@@"<br>
<br>
While you ponder that little revelation <<=setup.getNpcName("npc_primrose","formal")>> leads you back to <<his npc_primrose>> lab, programming your suit to administer something resembling a gentle massage as you ride the elevator back down.<br>
<br>
[<<moveTo "event_primrose_discipline_presentation_5" 'Back to <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab.' 300>>]
</div>/*#
#desc: meet primrose for discipline demo
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet "prim_discipline_suit">>
<<deleteItemSet "prim_discipline_suit">>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
Back in <<his npc_primrose>> lab <<=setup.getNpcName("npc_primrose","formal")>> helps you out of the outfit and lets <<his npc_primrose>> "mask" slip just a bit in frustration with a deep sigh.<br>
<br>
"@@.npc_primrose;Thank you, again, for your assistance... I am so sorry that all of your pain was for nothing...@@" <<He npc_primrose>> takes a moment, the normal facade of cheery confidence returning with a forced smile. "@@.npc_primrose;Progress is always beset by pain and disappointment, however... we must always stay focused on the task, and the future and eventually our hard work will be rewarded!@@"<br>
<br>
Not sure how else to comfort the frustrated scientist you nod in agreement, promising to continue to assist where you can before <<he npc_primrose>> dismisses you to "@@.npc_primrose;put my nose back to the grindstone to figure out something else!@@"<br>
<br>
As you head for the elevator you have a realisation that the suit you were in was, save for the colour, almost identical to the one <<=setup.getNpcName("npc_primrose","formal")>> always wears under <<his npc_primrose>> lab-coat... which means <<he npc_primrose>> not only knows exactly what you went through... but has likely put <<him npc_primrose>>self through that and worse either in refining the prototype... or self-flagellation over some other error.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: meet primrose for retention demo after npc_retention destroyed
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> sighs. "@@.npc_primrose;Unfortunately I had designed this particular pitch for <<=setup.getNpcName("npc_retention","formal")>> and, well... something seems to have happened to <<him npc_retention>>...@@"<br>
<br>
You nod, careful not to let on that you had anything to do with <<=ps(setup.getNpcName("npc_retention","formal"))>> disappearance.<br>
<br>
[<<moveTo "event_primrose_retention_presentation_2" "Maybe something else, today." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: meet primrose for retention demo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> looks a bit nervous as <<he npc_primrose>> explains things. "@@.npc_primrose;So I've been working really hard to "Understand Customer Needs," as they say... and I think I've cracked <<=setup.getNpcName("npc_retention","formal")>>.@@"<br>
<br>
From the way <<=setup.getNpcName("npc_primrose","formal")>> says the name you can tell that <<hes npc_primrose>> more than a little scared of the <<man npc_retention>> in charge of "Employee Retention." Which isn't exactly unfounded, <<=setup.getNpcName("npc_retention","formal")>> certainly has an aura about <<him npc_retention>>.<br>
<br>
"@@.npc_primrose;So <<if State.hasPlayed("event_work_stage4_chair_1")>>I know you're familiar with the "secure work stations" deployed to<<else>>I'm not sure if you're familiar with the "secure workstations" that are used on some of<</if>> the upper floors, they inspired my own battlestation, obviously@@" <<=setup.getNpcName("npc_primrose","formal")>> notes as <<he npc_primrose>> gestures towards the bondage-studded seat in front of <<his npc_primrose>> array of monitors. "@@.npc_primrose;Well, I took further inspiration from the concept, trying to adapt the principles to a more mobile arrangement so a possibly problematic employee could be properly "retained" while still able to accompany their manager to meetings, or stay with them doing meet and greets on a conference floor, or the like.@@"<br>
<br>
[<<moveTo "event_primrose_retention_presentation_2" "Time to get equipped." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_primrose_retention_presentation_2" "Maybe something else, today." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: dress for primrose retention demo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<addItemSet 'prim_retention_outfit'>>
<<wearItemSet 'prim_retention_outfit'>>
<<set $scene.addCollar = $player.flags.collar.owner == ''>>
<<if $scene.addCollar>>
<<addItem 'corporate_collar'>>
<<wearItem 'corporate_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<applyExperience 'bondage' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_retention.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_primrose","formal")>> thanks you for your assistance and then starts suiting you up, leaving most of your clothing in place, but augmenting things with a high tech harness, matching wrist and ankle cuffs, locked-on ballet boots, and a kigurumi mask.<br>
<br>
<<if $scene.addCollar>>
Finishing it all off, <<he npc_primrose>> presents you with a collar not dissimilar to <<his npc_primrose>> own, the company-logo embossed adornment heavy locked around around your throat.
<<else>>
Almost done <<he npc_primrose>> shows you a heavy, corporate-logo embossed collar similar to <<his npc_primrose>> own.<br>
<br>
"@@.npc_primrose;Normally this would be part of the ensemble, as well... but, since you are already owned, well... I would not wish to interfere with a slave's service.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_primrose","formal")>> finishes up by clipping a leash to your collar and sending a quite sizable penis gag plunging down your throat, and then the two of you are off.<br>
<br>
[<<moveTo "event_primrose_retention_presentation_3" 'Follow <<him npc_primrose>> out of the lab.' 300>>]
<<else>>
You thank <<=setup.getNpcName("npc_primrose","formal")>> for the information, and determine that it sounds like a bit more than you're up for today.<br>
<br>
"@@.npc_primrose;Of course, of course. What were you thinking?@@"<br>
<br>
<<include "primroseDemoList">>
<</if>>
</div>/*#
#desc: npc_primrose retention demo: introduction
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_retention', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
After a quick walk and elevator ride, the two of you arrive at <<=ps(setup.getNpcName('npc_retention', 'formal'))>> office.<br>
<br>
Everything feels all business as <<=setup.getNpcName("npc_primrose","formal")>> launches straight into what sounds like a well-rehearsed speech, talking about the various "non-encumbering, but fully functional" restraints you are wearing, and how the full system, tied in with the corporate network, and under the complete control of both the employee's manager, and the security and retention department, can have even the most "quiet quitting" of employees locked in and productive.<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> listens intently... but you can tell that <<hes npc_retention>> less than enthralled with the doll aesthetic, asking several pointed questions whose implications seem to sail right past your <<if $fetish.sissy>>sissy <</if>>scientist friend.<br>
<br>
While <<=setup.getNpcName("npc_primrose","formal")>> diverts to gush about the features of the "crown jewel" of the system in the multifunction hood with gag, sensory deprivation and VR training modes <<=setup.getNpcName("npc_retention","formal")>> summons <<his npc_retention>>
<<if $fetish.pet_play>>
human pup
<<else>>
loyal
<</if>>
assistant, enjoying a blowjob from the obedient subordinate as <<=setup.getNpcName("npc_primrose","formal")>> rattles on.<br>
<br>
[<<moveTo "event_primrose_retention_presentation_4" 'Continue.' 600>>]
</div>/*#
#desc: npc_primrose retention demo: primrose finishes demo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_retention', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
Seemingly determined to make the "sale" <<=setup.getNpcName("npc_primrose","formal")>> continues on, discussing and demonstrating how the "hypo-allergenic" restraints can be worn 24/7 for complete security and precise tracking of the "subject" before demonstrating the stand-alone restraining options, showing off how your various cuffs, collar and corset can be linked in any number of combinations either directly, or with the aid of short chains for "partial" immobility.<br>
<br>
You're pulled into a variety of positions, occasionally grunting around your gag as <<=setup.getNpcName("npc_primrose","formal")>> strains
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
even your legendary flexibility.
<<else>>
your flexibility.
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
your meagre flexibility.
<<else>>
your stiff, nonexistent flexibility.
<</if>>
<</if>>
<br><br>
"@@.npc_primrose;In case you were wondering about my lovely assistant's silence — it is not merely because of her good behaviour! There's a nice pecker gag built into that helmet... I figure they should come with <<=setup.getNpcName("npc_boss","formal")>> as a default... but, for this occasion I loaded up a clone of yourself, so she's been sucking on that this whole time we've been talking!@@"<br>
<br>
If <<=setup.getNpcName("npc_primrose","formal")>> thought to get a reaction from this revelation, <<he npc_primrose>> is sorely mistaken, <<=setup.getNpcName("npc_retention","formal")>> merely shrugging as <<he npc_retention>> waits a few moments longer, both to see if <<=setup.getNpcName("npc_primrose","formal")>> has anything else to say... and for <<=ps(setup.getNpcName("npc_retention","formal"))>> slave to finish sucking <<his>> <<Master npc_retention>> off.<br>
<br>
[<<moveTo "event_primrose_retention_presentation_5" 'Continue.' 600>>]
</div>/*#
#desc: npc_primrose retention demo: assessment
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_retention', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_retention","formal")>> strokes <<his npc_retention>> <<if $fetish.pet_play>>pet's<<else>>slave's<</if>> head, the obedient servant still softly sucking <<his>> <<Master npc_retention>>'s still-hard cock as <<he npc_retention>> gives an assessment. "@@.npc_retention;I am sorry to say that I am... less than impressed with your little demo. Certainly, the system is impressive... but, aside from the helmet, it is mostly off-the-shelf devices, and no real capabilities past tools that are already in use.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> seems about to argue that point, but <<=setup.getNpcName("npc_retention","formal")>> cuts the scientist off with little more than a stern glare.<br>
<br>
"@@.npc_retention;Tell me, is there a third <<if $fetish.sissy>>sissy<<else>>slave<</if>> in this office who needs to be choking on my cock?@@"<br>
<br>
This cutting remark seems to switch <<=setup.getNpcName("npc_primrose","formal")>> from "presentation," to "service" mode as <<he npc_primrose>> bows.<br>
<br>
"@@.npc_primrose;I would, of course, be honoured to serve you with either of my holes, or any other part of my body... but I take your meaning and will thank you for your time and depart unless you would prefer to ravage me first?@@"<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> finally cracks a smile, clearly amused by <<=ps(setup.getNpcName("npc_primrose","formal"))>> slutty debasement, but ends up waving the two of you off, a hand resting on <<his npc_retention>> eagerly sucking slave's head a silent confirmation that such matters are already "in hand" (or mouth, as the case may be).<br>
<br>
[<<moveTo "event_primrose_retention_presentation_6" '<<=setup.getNpcName("npc_primrose","formal")>> takes up your leash and leads you out of the office.' 300>>]
</div>/*#
#desc: undress after primrose retention demo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'prim_retention_outfit'>>
<<deleteItemSet 'prim_retention_outfit'>>
<<if $scene.addCollar>>
<<removeItem 'corporate_collar' true>>
<<deleteItem 'corporate_collar'>>
<</if>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> leads you back to <<his npc_retention>>, clearly trying to remain in good cheer, despite the recent failure.<br>
<br>
"@@.npc_primrose;Well I always knew this was a bit of a long-shot, and, to be fair, <<=setup.getNpcName("npc_retention","formal")>> did have a point, though it seems hardly a flaw that I saved money in leveraging existing technology, rather than burn company resources on a nigh-identical 1-off prototype.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> sighs as <<he npc_primrose>> finishes removing the last of your restraints, seeming to have forgotten that <<he npc_retention>> had you deep-throating <<=ps(setup.getNpcName("npc_retention","formal"))>> artificial <<getWordPenis "npc_retention">> for the entire period as its removal unleashes a minor flood of drool.<br>
<br>
[<<moveTo "event_primrose_retention_presentation_7" 'Flirt and try to raise <<=setup.getNpcName("npc_primrose","formal")>> spirits.' 300 "<<set $scene.flirt=true>>">>]<br>
[<<moveTo "event_primrose_retention_presentation_7" 'Head on your way.' 300 "<<set $scene.flirt=false>>">>]
</div>/*#
#desc: undress after primrose retention demo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<if $scene.flirt>>
You try to cheer <<=setup.getNpcName("npc_primrose","first")>> by fluttering your eyelashs and asking if <<he npc_primrose>> would like to take a run at your throat, now that it's all "warmed up and ready?" <br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> smiles... and almost seems to blush. "@@.npc_primrose;Would that I could, my dear!@@" <<He npc_primrose>> gestures towards <<his npc_primrose>> "@@.npc_primrose;<<if setup.checkItemTypeWorn("cage")>>just as you are, <</if>>I am, of course, under corporate lock and key. The ultimate proof of loyal dedication to my work, and <<=setup.getNpcName("npc_boss","formal")>>. No, I will console myself with my projects. I just have to work hard and someone will surely come to appreciate what I can offer the company!@@"<br>
<br>
You nod, even as the growing desperation tinges <<=ps(setup.getNpcName("npc_primrose","first"))>> words.<br>
<br>
<</if>>
You wish <<=setup.getNpcName("npc_primrose","first")>> a good day and depart <<his npc_primrose>> lab.<br>
<br>
"@@.npc_primrose;Every day is good when you're able to dedicate it to working for Social Interaction Service Syndicate Inc.!@@" <<He npc_primrose>> replies with trademark enthusiasm.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: discuss nintendolls demo
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> if, with the lack of luck at selling things internally, if <<=setup.getNpcName("npc_primrose","formal")>> has considered integrating some of <<his npc_primrose>> work with one or more of the projects being worked on by the newly merged Nintendolls?<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> momentarily perks up the way <<he npc_primrose>> always does when it comes time to discuss <<his npc_primrose>> work.<br>
<br>
"@@.npc_primrose;Funny you should mention it, but I've actually been putting in some over-time since the merger opened up their project files, trying to see how I can incorporate their tech in <<if $fetish.sissy>>SISSI's projects<<else>>our existing, or in-progress, product-lines<</if>> and I've come up with a potential product tie-in. If you're up for helping, well... maybe we surprise <<=setup.getNpcName("npc_nintendolls","formal")>> with an impromptu demo? I haven't really seen <<him npc_nintendolls>> for a few months, but I've been peeking at <<his npc_nintendolls>> schedule and... it's pretty free. I think <<he npc_nintendolls>>'s actually being left out of some of the corporate goings-on... reaching out might be just the way to draw <<him npc_nintendolls>> back in, get some fresh eyes on my work, and further the company's goals, all at the same time!@@"<br>
<br>
[<<moveTo "event_primrose_nintendolls_presentation_2" "Sounds like a plan!" 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_primrose_nintendolls_presentation_2" "Maybe something else, today." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: dress for primrose nintendolls demo
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<addItemSet 'prim_nintendolls_outfit'>>
<<wearItemSet 'prim_nintendolls_outfit'>>
<<set $scene.addPlug = !setup.checkItemTypeWorn("plug")>>
<<set $scene.replacePlug = !setup.checkItemTypeTag('plug', ['vibrating'])>>
<<if $scene.addPlug || $scene.replacePlug>>
<<addItem "vibrating_plug_large">>
<<wearItem "vibrating_plug_large" true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_primrose","formal")>> helps you into a full-body haptic plugsuit,<<if $npc_psychiatrist.hypnosis >= 5>> the design familiar from your time working with <<=setup.getNpcName("npc_psychiatrist","formal")>><<elseif $npc_psychiatrist.hypnosis >= 1>> the design strangely familiar, though you can't quite remember why<<else>> tight and slick and rubbery<</if>>.<<if $scene.addPlug>> <<He npc_primrose>> finishes things off with a butt-plug, clearly surprised that you were not already "equipped." <<elseif $scene.replacePlug>> <<He npc_primrose>> finishes off by replacing you plug with a high-tech, and far from small, device.<</if>><br>
<br>
You finish getting your outfit into position <<=setup.getNpcName("npc_primrose","formal")>> hands you a by now familiar kigurumi mask before double checking <<his npc_primrose>>. "@@.npc_primrose;Just as I expected. <<=setup.getNpcName("npc_nintendolls","formal")>> has an open schedule... and it actually sounds like <<hes npc_nintendolls>> curious, which is good new for me! Come on, I booked a conference room and made arrangements for the other equipment to be in place.@@"<br>
<br>
<<printThought "Other equipment?">> Now you're the one whose curiosity is piqued... but the mask already has you <<if setup.getTotalValue("penis") > 15>>excitedly sucking on a large penis gag<<else>>gagging on cock<</if>> so your only choice is to follow <<=setup.getNpcName("npc_primrose","formal")>> out of the lab and up the elevator.<br>
<br>
[<<moveTo "event_primrose_nintendolls_presentation_3" "Up we go..." 300>>]
<<else>>
You caution <<=setup.getNpcName("npc_primrose","formal")>> that the element of surprise might not work in <<his npc_primrose>> favour in a case like this... and perhaps it would be better to spend a little more time perfecting things before springing them on <<=setup.getNpcName("npc_nintendolls","formal")>> unannounced.<br>
<br>
"@@.npc_primrose;Good call, good call... I'll put in some more hours, sleep is such a waste, anyway, right? So, anything else you wanted to talk about, today?@@"<br>
<br>
<<include "primroseDemoList">>
<</if>>
</div>/*#
#desc: primrose nintendolls demo meet
#status: RELEASED 0.9.0.0
#ignore_spell: c
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.getPrimroseImage("lab") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
You ride the elevator up to one of the highest floors you've visited, well, discounting <<=ps(setup.getNpcName("npc_boss","formal"))>> office atop the building. The company seeming to tie elevation to seniority... and depravity, you suppose you shouldn't be surprised.<br>
<br>
Perhaps in reaction to being in the realm of the C-suite and other senior management <<=setup.getNpcName("npc_primrose","formal")>> walks proudly, seeming to hold back from <<his npc_primrose>> normal enthusiastic racing to give off a more confident and professional vibe.<br>
<br>
You arrive at a conference room to find <<=setup.getNpcName("npc_nintendolls","formal")>> sitting at the head of the table waiting... and robotic Nintendolls-branded sex-doll laid out on the table.<br>
<br>
<<if $fetish.slurs && $npc_primrose.last_name.dirty == "Le'Faggot">>
"@@.npc_nintendolls;So, faggot — what do you have for me? I'm quite familiar with our doll line, that looks like the Model Daisy, one of our best sellers.@@"<br>
<br>
"@@.npc_primrose;That's <<=setup.getNpcName("npc_primrose","formal")>>, <<Sir npc_nintendolls>>.@@" <<He npc_primrose>> corrects... though <<=setup.getNpcName("npc_nintendolls","formal")>> does not seem to care.
<<else>>
"@@.npc_nintendolls;So, <<if $fetish.sissy>><<=setup.getNpcName("npc_primrose","custom","Dr. Sissy")>><<else>><<=setup.getNpcName("npc_primrose","formal")>><</if>> — what do you have for me? I'm quite familiar with our doll line, that looks like the Model Daisy, one of our best sellers.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> smiles<<if $fetish.sissy>>, either ignoring the insult, or too excited to notice<</if>>.
<</if>>
"@@.npc_primrose;Of course I would not merely present one of your own products, but I did want to show an exciting development I've been working on that would easily integrate with one of your... well, our, now, company's lovely doll units.@@"<br>
<br>
<<=setup.getNpcName("npc_nintendolls","formal")>> merely grunts, and you notice that <<hes npc_nintendolls>> in the midst of getting head from <<his npc_nintendolls>> bound and brainwashed "assistant." <br>
<br>
"@@.npc_primrose;So, as you know, my focus is on using virtual environments and haptic feedback to better train, discipline, and motivate employees. With the merger of our two companies I started digging into your amazing doll work... and, well, I think I found an exciting combination of things. If you would grope the doll in front of you?@@"<br>
<br>
[<<moveTo "event_primrose_nintendolls_presentation_4" "This isn't quite what I expected..." 300>>]
</div>/*#
#desc: primrose nintendolls demo breasts
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.getPrimroseImage("lab") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_nintendolls","formal")>> goes along with things and <<he npc_nintendolls>> reaches out to spin the doll around to a better angle, and then roughly squeeze one of the dolls over-sized breasts.<br>
<br>
Immediately, you gasp as it feels like someone is <<if $player.body.breastsize[0] == 0>>groping your chest<<else>>squeezing your own breasts<</if>>!<br>
<br>
"@@.npc_primrose;As you can see from my lovely assistant's unscripted reaction, what the doll feels, she feels<<if $player.body.breastsize[0] == 0>>, even compensating and adapting for a victim, I mean, subject who is not as endowed as the paired doll<</if>>. The applications for such interface are innumerable, from the surreal feeling of being touched but not touched, to duplicating a reward, or punishment, across multiple subordinates at once.@@"<br>
<br>
"@@.npc_nintendolls;Punishment?@@" <<=setup.getNpcName("npc_nintendolls","formal")>> replies, you mean if I did this — with a loud crack he slaps the doll across the breast, and you gasp in pain as your <<if $player.body.breastsize[0] == 0>>chest stings<<else>>breasts sting<</if>>.<br>
<br>
"@@.npc_primrose;Of course, it's a full 1 to 1 mapping, what the doll feels, she feels, the only differences coming from anatomy translation.@@"<br>
<br>
Now fully on-board with the presentation, <<=setup.getNpcName("npc_nintendolls","formal")>> rises to <<his npc_nintendolls>> feet, <<his npc_nintendolls>> hard, wet <<getWordPenis "npc_nintendolls">> springing free of the sucking lips of <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> kneeling slave. You feel hands gripping your hips as <<=setup.getNpcName("npc_nintendolls","formal")>> drags the fuck-doll across the table and slams <<his npc_nintendolls>> cock into its ass.<br>
<br>
[<<moveTo "event_primrose_nintendolls_presentation_5" "Oh fuck..." 300>>]
</div>/*#
#desc: primrose nintendolls demo anal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_nintendolls.penis_size 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<<changeHorny 100>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.getPrimroseImage("lab") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
You gasp as <<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>it feels like a thick cock suddenly thrusted into your ass<<else>>your plug vibrates in time with <<=setup.getNpcName("npc_nintendolls","formal")>> thrusting<</if>>.<br>
<br>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
Since my lovely assistant is equipped with one of the company's full-featured 9001-series devices, the exact feeling of being fucked by your glorious <<getWordPenis "npc_nintendolls">> is being relayed and recreated inside of her to perfectly mimic what she would be feeling
<<else>>
Were my lovely assistant is equipped with one of the company's full-featured 9001-series devices, the exact feeling of being fucked by your glorious <<getWordPenis "npc_nintendolls">> would be relayed and recreated inside of her, in the absence of such, however, the system adapts, and the vibrating plug in her ass is reproducing similar, if a pale imitation, of the sensation she would be having
<</if>>
were she in the doll's place.<br>
<br>
"@@.npc_nintendolls;Does that extend up front?@@" <<=setup.getNpcName("npc_nintendolls","formal")>> asks, already pulling out of the sex-dolls ass to slam into its pussy.
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
You stagger, bracing yourself against the conference table as the ass-fucking you had only just started to adjust to is replaced with the feeling
<<if $player.body_ref.vagina>>
of an even harder cock slamming up into your <<getWordPenis "npc_nintendolls">>. Reflexively squeezing your thighs together does nothing to dull the onslaught, in fact, it makes the sensation even more intense.
<<else>>
of your <<getWordMyPenis>> being jerked and violated<<if $fetish.sounding>> inside and out<</if>>.
<</if>>
<br><br>
"@@.npc_primrose;Of course!@@" <<=setup.getNpcName("npc_primrose","formal")>> narrates excitedly."@@.npc_primrose;Thanks to the subject's <<=setup.getItemTypeName("cage")>>, you can fuck the doll in either hole, <<if $player.body_ref.vagina>>and it will be directly, instantly, and precisely relayed to the appropriate orifice<<else>>and equivalent sensations will be remapped as appropriate, all directly, instantly, and with high precision<</if>>. Also note that the interface is bi-directional.@@"
<<elseif setup.checkItemTypeWorn("cage")>>
With your chastity in place you are "protected" from the suit making a direct simulation of what's going on... but that just means the ass-pounding intensifies as it compensates for the gap.<br>
<br>
"@@.npc_primrose;Unfortunately the subject is not equipped with a fully-featured 9001 or equivalent device... and this the system is forced to fall back on the universal orifice. Also note that the interface is bi-directional.@@"
<<else>>
You stagger as the suit
<<if $player.body_ref.vagina>>
conjures a penetrating cock that slides into you, fucking your cunt even more aggressively than the plug was buzzing your ass.<br>
<br>
"@@.npc_primrose;In absence of a blocking chastity device the suit is fully capable of stimulating the forward orifice on its own. Your every action directly, instantly, and precisely relayed to all linked subjects. Also note that the interface is bi-directional.@@"
<<else>>
starts groping and stroking your tightly contained <<getWordMyPenis>>.<br>
<br>
"@@.npc_primrose;In absence of a blocking chastity device the suit is fully capable of re-mapping such stimulation to compensate for subject-to-doll anatomical differences. Your every action directly, instantly, and precisely translated and relayed to all linked subjects. Also note that the interface is bi-directional.@@"
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName("npc_nintendolls","formal")>> grunts, "@@.npc_nintendolls;I thought I felt her tighten up. Go on, then squeeze my cock <<if $fetish.sissy>>sissy<<else>>bitch<</if>>,@@" <<=setup.getNpcName("npc_nintendolls","formal")>> adds as <<he npc_nintendolls>> gives the sex doll a hard slap on the ass that is immediately echoed through your suit.<br>
<br>
<<=setup.getNpcName("npc_nintendolls","formal")>> is already more enthusiastic than any prior sales target, but <<=setup.getNpcName("npc_primrose","formal")>> isn't stopping yet. "@@.npc_primrose;Please, continue to avail yourself of the doll, and note that there are safety controls in place so you can use and abuse that doll to the full extreme degree such a high-end product is built for, yet never need worry that the linked subject will suffer any permanent harm... well, physical harm. There are no safety controls for the so-called mental harm of going crazy from constant fucking... though, personally, I call that more of a feature!@@"<br>
<br>
Perhaps realising <<he npc_primrose>> is straying off-topic, <<=setup.getNpcName("npc_primrose","formal")>> quickly re-asserts <<him npc_primrose>>self.<br>
<br>
"@@.npc_primrose;Let me show you another feature that I think REALLY pushes things to the next level?@@"<br>
<br>
<<printThought "More?">> With the sensation of <<=setup.getNpcName("npc_nintendolls","formal")>> fucking the doll still being relayed through your suit you wonder if you should lay down or something...<br>
<br>
[<<moveTo "event_primrose_nintendolls_presentation_6" "What's next?" 300>>]
</div>/*#
#desc: primrose nintendolls demo three hole
#status: RELEASED 0.9.0.0
#ignore_spell: mmoos
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_nintendolls.penis_size 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.getPrimroseImage("lab") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_nintendolls","formal")>> pounds away and watches your reactions with interest as <<=setup.getNpcName("npc_primrose","formal")>> continues.<br>
<br>
"@@.npc_primrose;So, since the suit already works on a digital interface, with translations, we can split, reroute, replay, or overlay in all manner of combinations.@@" <<=setup.getNpcName("npc_primrose","formal")>> taps a few keys on <<his npc_primrose>> notepad and your oral dildo begins pounding your throat under your mask<<if !setup.checkItemTypeWorn("cage") || setup.getChastityLevel() == 5>>, while your ass starts getting pounded once again,<</if>> as <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> fucking the sex doll is translated across <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage") || setup.getChastityLevel() == 5>>all three<<else>>both holes<<if !setup.checkItemTypeWorn("cage") || setup.getChastityLevel() == 5>>, and your <<getWordMyPenis>><</if>><</if>>.<br>
<br>
"@@.npc_nintendolls;Superb,@@" <<=setup.getNpcName("npc_nintendolls","formal")>> states as you pitch forward over the desk, legs all but giving out from under you as the suit violates your body. "@@.npc_nintendolls;I presume this means multi-user options are also possible?@@"<br>
<br>
"@@.npc_primrose;Quite so!@@" <<=setup.getNpcName("npc_primrose","formal")>> replies with glee. "@@.npc_primrose;I knew you would have the vision to appreciate this products potential. With suitably configured dolls and subjects you, and any number of colleagues anywhere in the world can anonymously fuck, fondle and otherwise enjoy any number of subjects, individually, or in combination! You can even loop a subject up with themselves... a feature I can tell you from experience can become QUITE intense!@@"<br>
<br>
"@@.npc_nintendolls;Gameplay opportunities, as well.@@" <<=setup.getNpcName("npc_nintendolls","formal")>> notes as <<he npc_nintendolls>> finally climaxes<<if $fetish.cum>> the suit even managing to shoot a load of realistic-tasting cum into your mouth as a final capstone<</if>>. <<=setup.getNpcName("npc_nintendolls","formal")>> steps away... but <<=setup.getNpcName("npc_primrose","formal")>> loops the simulation to leave you still being fucked and fondled from every direction.<br>
<br>
"@@.npc_nintendolls;Beyond the business applications, well... there are numerous consumer-level options, from chat roulette type applications, to streamers... to MMOOs — Massive Multiplayer Online Orgies...@@"<br>
<br>
[<<moveTo "event_primrose_nintendolls_presentation_7" "Have we finally made a sale?" 300>>]
</div>/*#
#desc: primrose nintendolls demo rejection
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.getPrimroseImage("lab") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> has smoothly moved to <<his npc_primrose>> knees to lick and suck <<=setup.getNpcName("npc_nintendolls","formal")>> clean as the <<if $fetish.sissy>>sissy <</if>>scientist nods in almost patronising agreement.<br>
<br>
"@@.npc_primrose;Exactly! All I need to bring things to market is a bit more support and funding, and I'm sure it would be a nice bump to the stock price, showing such swift synergistic profit post-merger.@@"<br>
<br>
There must be a glitch in the replay system, because things only seem to be ramping up in intensity, even as the doll is untouched. You slide to the floor, writhing against the inescapable stimulation, barely able to pay attention as <<=ps(setup.getNpcName("npc_primrose","formal"))>> swiftly-raised hopes are brutally dashed.<br>
<br>
<<=setup.getNpcName("npc_nintendolls","formal")>> sighs. "@@.npc_nintendolls;Were that it was that simple. Unfortunately, as part of the merger agreement, there is a freeze on my making any project-level decisions. It seems that the board is insisting that everything be reviewed and audited, with some foolish concern that I might intervene. Board-members... truly one of the most vile creatures.@@"<br>
<br>
<<=setup.getNpcName("npc_nintendolls","formal")>> glares down as <<his npc_nintendolls>> as you recall that the poor faceless, rubber-bound,<<if $fetish.sissy>> sissified<</if>>, brainwashed slave used to be a member of the Nintendolls corporate board who sought to interfere with <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> planned merger.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> is utterly crestfallen... even as <<he npc_primrose>> continues to suck <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> <<getWordPenis "npc_nintendolls">>.<br>
<br>
"@@.npc_nintendolls;Perhaps in a few quarters... but, for now, my hands, and my purse-strings, are tied. That said, well... I know we are all focused on the merger at the moment, but trust me, I've seen your work. If you think you're getting lost in the shuffle, well... <<=setup.getNpcName("npc_work_doctor","formal")>> has authority over the Research Department, but I'm sure I could a place for someone like you in my organisation... once I can hire, fire, and transfer, again, that is.@@"<br>
<br>
You lose track of exact words as you watch <<=setup.getNpcName("npc_primrose","formal")>> rise to <<his npc_primrose>> feet, exchanging some sort of parting pleasantries with <<=setup.getNpcName("npc_nintendolls","formal")>> before finally seeming to notice that you're still being overwhelmed. Your stimulation ceasing in an instant <<=setup.getNpcName("npc_primrose","formal")>> helps you back to your feet and you stagger after <<him npc_primrose>> on the way back to <<his npc_primrose>> lab.<br>
<br>
[<<moveTo "event_primrose_nintendolls_presentation_8" 'Poor <<=setup.getNpcName("npc_primrose","formal")>>...' 300>>]
</div>/*#
#desc: discuss nintendolls demo
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'prim_nintendolls_outfit'>>
<<deleteItemSet 'prim_nintendolls_outfit'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
Back in <<his npc_primrose>> lab <<=setup.getNpcName("npc_primrose","formal")>> finally gives in to despair, all but sobbing as <<he npc_primrose>> helps you out of the plugsuit and back into your normal attire.<br>
<br>
"@@.npc_primrose;I don't understand! I pour everything I have into this company... but even when things start to go well, that's only to open the way to twist the knife even deeper! Does the universe hate me? All I want to do is help and serve, but either nothing is good enough, or other events conspire against me...@@"<br>
<br>
<<if $npc_pr_sissy.stage >= 5>>
[<<moveTo "event_primrose_pr_sissy_presentation_intro_1" 'Suggest <<he npc_primrose>> reach out to <<=setup.getNpcName("npc_pr_sissy","first")>>.' 300>>]
<<else>>
[@@.link_locked;You can't think of anything else to suggest to <<=setup.getNpcName("npc_primrose","formal")>>.@@]<br>
<</if>>
[<<moveTo "event_primrose_nintendolls_presentation_9" "You can't think of anything to say." 300>>]
</div>/*#
#desc: discuss nintendolls demo, no ideas
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You try your best to console <<=setup.getNpcName("npc_primrose","formal")>>, but, unfortunately, you just can't think of any ideas, though you promise to let <<him npc_primrose>> know if you come across any additional leads at the company.<br>
<br>
"@@.npc_primrose;Thanks,@@" <<he npc_primrose>> says with a sigh. "@@.npc_primrose;You've put in so much work helping me... I really do appreciate it. Even if my work keeps failing to bear fruit, well... fun times with friends is never wasted, right?@@"<br>
<br>
You blush and agree as he thanks you again and turns back to <<his npc_primrose>> work.<br>
<br>
If it wasn't poisoned by <<his npc_primrose>> fanatical dedication to <<=setup.getNpcName("npc_boss","formal")>>, you'd admire <<=ps(setup.getNpcName("npc_primrose","formal"))>> diligence, as it is, all you can do is hope that <<he npc_primrose>> finds some solace in <<his npc_primrose>> work as you head for the elevator.<br>
<br>
[<<moveTo "company_lobby" "Call it a day and head down to the lobby." 120>>]
</div>/*#
#desc: mention pr_sissy
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'pr_demo' _nextDate>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> if <<he npc_primrose>>'s met <<=setup.getNpcName("npc_pr_sissy","first")>>?<br>
<br>
"@@.npc_primrose;Who?@@" <<He npc_primrose>> asks in clarification, while simultaneously answering the question.<br>
<br>
You explain that <<=setup.getNpcName("npc_pr_sissy","first")>>, or <<=setup.getNpcName("npc_pr_sissy","formal")>>, as she would be properly titled, works in the company PR department and that, not only would she almost certainly get along smashingly with the <<if $fetish.sissy>>sissy<<else>>enthusiastic<</if>> scientist, that your assisting her with some company outreach material tells you that she might be able to arrange funding for some of <<=ps(setup.getNpcName("npc_primrose","formal"))>> work.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> is almost immediately bursting with energy as <<he npc_primrose>> asks you some additional questions about <<=setup.getNpcName("npc_pr_sissy","formal")>>, getting more and more excited as you tell <<=setup.getNpcName("npc_primrose","formal")>> the details of some of your prior meetings with <<=setup.getNpcName("npc_pr_sissy","first")>>.<br>
<br>
"@@.npc_primrose;Goddess! You really do know how to make a case against my spending all of my time hard at work in my lab... to think I never had the fortune to meet this wonderful <<if $fetish.sissy && !$npc_primrose.fem>>fellow sissy<<else>>woman<</if>>! Well I will certainly look her up on your advice... and prepare a VERY special presentation to show how professional collaboration would benefit us both, and the company as well!@@"<br>
<br>
You reply that you're looking forward to it, already wondering what <<=setup.getNpcName("npc_primrose","formal")>> will come up with next...<br>
<br>
[<<moveTo "company_lobby" "Call it a day and head down to the lobby." 120>>]
</div>/*#
#desc: primrose calls about pr demo
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<addRandomEvent $randomEvents['elevator_home'] 'pr_demo'>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You've just stepped onto the elevator when you get a text from <<=setup.getNpcName("npc_primrose","formal")>>.<br>
<br>
"@@.npc_primrose;Hey, so, I got in contact with <<=setup.getNpcName("npc_pr_sissy","formal")>>, like you suggested and first off, she's so cool! Almost as cool as you,@@" <<he npc_primrose>> quickly adds. "@@.npc_primrose;More importantly, though, she's interested in hearing my pitch so... would you be available to help me with another demo? I promise this one won't be quite as extreme as some of the others...@@"<br>
<br>
[<<moveTo "event_primrose_pr_presentation_2" "You'll be right there." 300>>]<br>
[<<moveTo "event_primrose_pr_presentation_decline" "Some other time." 60>>]
</div>/*#
#desc: primrose calls decline pr demo
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'pr_demo_repeat' _nextDate>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_primrose","formal")>> that you don't have time to help <<him npc_primrose>> with a demo this evening.<br>
<br>
"@@.npc_primrose;Sure, sure, we're all so busy around here! It's what makes the company so successful, but it presents its challenges! Anyway, I'll give you a ring some other time and hopefully you'll be available. Ta-ta~@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and ride the elevator down." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: primrose repeat calls about pr demo
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<addRandomEvent $randomEvents['elevator_home'] 'pr_demo_repeat'>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You're riding the elevator down when you get another call from <<=setup.getNpcName("npc_primrose","formal")>>.<br>
<br>
"@@.npc_primrose;Hey-o, it's me again. Would you be available to help me do a product demo for <<=setup.getNpcName("npc_pr_sissy","formal")>>?@@"<br>
<br>
[<<moveTo "event_primrose_pr_presentation_2" "You'll be right there." 300>>]<br>
[<<moveTo "event_primrose_pr_presentation_decline" "Some other time." 60>>]
</div>/*#
#desc: meet primrose for pr demo
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "kig_vr_mask_copy">>
<<wearItem "kig_vr_mask_copy" true>>
<<set $scene.addPlug = !setup.checkItemTypeTag('plug', ['ems']) || !setup.checkItemTypeTag('plug', ['vibrating'])>>
<<if $scene.addPlug>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
You wait to hit the lobby and then head back up to <<=ps(setup.getNpcName("npc_primrose","formal"))>> floor, quickly navigating the, by now, familiar maze to arrive at <<his npc_primrose>> lab where <<he npc_primrose>> already has an outfit laid out for you.<br>
<br>
You're not sure if you've ever seen <<=setup.getNpcName("npc_primrose","formal")>> quite this excited as, even by <<his npc_primrose>> normally enthusiastic standard <<hes npc_primrose>> all but bouncing off the walls as <<he npc_primrose>> helps you change into what, by both <<his npc_primrose>> and the company's standards, is actually a fairly mild outfit, just the familiar doll helmet (penis gag surprisingly retracted)<<if $scene.addPlug>>, and a buttplug<</if>>.<br>
<br>
"@@.npc_primrose;So I've been talking with <<=setup.getNpcName("npc_pr_sissy","formal")>> about her rental Secretary program, a wonderful, wonderful idea... and I decided for something a bit more minimalistic. Both to keep costs down and, well... at least at first, we probably need to be a bit more conservative when it comes to sending things out of the company.@@" <<=setup.getNpcName("npc_primrose","formal")>> explains as <<he npc_primrose>> leads you, without a leash, out of the lab and back to the elevator.<br>
<br>
[<<moveTo "event_primrose_pr_presentation_3" "Time to demo..." 300>>]
</div>/*#
#desc: npc_primrose pr_sissy demo: intro
#status: RELEASED 0.9.0.0
#ignore_spell: v1
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_pr_sissy', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.getPrimroseImage("lab") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
You arrive at an office with <<=ps(setup.getNpcName("npc_pr_sissy","formal"))>> name on the door. It's not the largest of offices, but you're actually a touch surprised that she managed to claw her way this high, given the company's general treatment of those like herself.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> and <<=setup.getNpcName("npc_pr_sissy","formal")>> meet for what appears to be the first time in person, gushing with excitement as they rush in to exchange hugs. "@@.npc_pr_sissy;Oh, you look gorgeous! That hair! And a plugsuit! Oh, I am so jealous! Tight and shiny is my dream... but, in my position, I'm limited to more traditional office attire... not that I am not plugged, of course,@@" <<=setup.getNpcName("npc_pr_sissy","formal")>> says with a smile. "@@.npc_pr_sissy;Nothing like a thick plug and a locked-on chastity cage to keep one focused on their duties!@@"<br>
<br>
"@@.npc_primrose;Don't I know it!@@" <<=setup.getNpcName("npc_primrose","formal")>> replies, "@@.npc_primrose;and that outfit of yours is totes wonderful! Barely a helmet away from becoming one of my <<if $fetish.sissy>>SISSI <</if>>dolls!@@"<br>
<br>
"@@.npc_pr_sissy;Mmmm, don't tempt me! Speaking of dolls... well, you sent me pictures, but seeing it in person? This helmet is adorable! But I'm getting ahead of myself, you're here to make a presentation, not to listen to me chatter on!@@"<br>
<br>
"@@.npc_primrose;Quite so, quite so,@@" <<=setup.getNpcName("npc_primrose","formal")>> replies, taking a moment to calm down and put on a more business-like expression.<br>
<br>
"@@.npc_primrose;Doll? If you would please step forward? And, before we start, I'll point out that this is a v1 system, prioritising cost-savings, maintenance overhead, and ease of integration into a normal Secretary workflow. I have more advanced attachments that can be added for discipline or other purposes, but that may not be suited for on-site deployments without further customer evangelisation.@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","formal")>> nods, prancing around her desk to take a seat and then leans forward, chin on her hands as she looks on with almost schoolgirl excitement.<br>
<br>
[<<moveTo "event_primrose_pr_presentation_4" "Time to show off." 600>>]
</div>/*#
#desc: npc_primrose pr_sissy demo: show off features
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_pr_sissy', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.getPrimroseImage("lab") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> shows off the helmet, both how it locks in place, as well as its integration with your plug<<if setup.checkItemTypeWorn("cage")>> and cage<</if>> to provide both monitoring, as well as control.<br>
<br>
"@@.npc_primrose;Instructions, subliminal audio, sensory deprivation, augmented reality, or full on VR simulations for entertainment or training, the hood can handle it all. It also has external speakers to provide either vocal modulation—@@" <<he npc_primrose>> has you speak while <<he npc_primrose>> shows off shifting your voice all the way from robotic artifice through to high-pitched breathless bimbo excitement. "@@.npc_primrose;The system also comes pre-loaded with a suite of default reactions, and an integrated gag if it is determined that free speech would be antithetical to proper job performance.@@"<br>
<br>
You gasp as the familiar dildo slips past your lips and <<=setup.getNpcName("npc_primrose","formal")>> demonstrates the doll speaking on your behalf to give a basic greeting and other cheery, obedient responses.<br>
<br>
"@@.npc_pr_sissy;Oh that is simply lovely! And I definitely think I can sell some of our clients on the idea of perpetually smiling, obedient secretary dolls... the mask completely obscuring the face means, with proper categorisation by bodytype and consistency of uniform, we could offer 24/7 service with a single "unit" without distraction by just swapping in a fresh secretary and doing some digital carryover.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> nods eagerly... and then practically faints with joy at <<=ps(setup.getNpcName("npc_pr_sissy","formal"))>> next request.<br>
<br>
"@@.npc_pr_sissy;So while I love everything I've seen so far, I'm a bit of a hands-on type... would it be possible for me to wear the doll helmet myself so I can really experience the features directly, rather than second-hand? I can authorise you for access to my plug and cage, as well for the full experience.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> beams, hands shaking as <<he npc_primrose>> retracts your gag and helps you out of the helmet, handing it off to <<=ps(setup.getNpcName("npc_pr_sissy","formal"))>> eager hands as <<he npc_primrose>> walks her through how to lock it in place.<br>
<br>
[<<moveTo "event_primrose_pr_presentation_5" "This is going really well..." 600>>]
</div>/*#
#desc: npc_primrose pr_sissy demo: pr_sissy tries
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "kig_vr_mask_copy" true>>
<<deleteItem "kig_vr_mask_copy">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_pr_sissy', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.getPrimroseImage("lab") setup.charImage("npc_pr_sissy","npc_pr_sissy_3_kig")>>
<div id="invframe" class="scrolltext">
"@@.npc_pr_sissy;Oh, wow, this is lighter than I expected,@@" <<=setup.getNpcName("npc_pr_sissy","formal")>> states, her voice ever-so-slightly muffled by the helmet. "@@.npc_pr_sissy;But so secure! Even when I turn my head quickly I don't feel it shift, and it wasn't even custom made for me!@@"<br>
<br>
"@@.npc_primrose;Yes, the default model is meant to be quite snug, and a one-size-fits-most, though we can custom-fit to the user for an even better feel. I've worn my own for up to seventy-two hours straight without issue, so they really are suitable for any length shift, with feeding attachment options and, thus, removal required only for periodic cleaning.@@"<br>
<br>
"@@.npc_pr_sissy;Brilliant! But now I want to see those other features you mentioned. Really give it to me, pretend I'm a bratty Secretary who needs to be brought back into line, I want—@@" <<=setup.getNpcName("npc_pr_sissy","formal")>> words are cut off suddenly as <<=setup.getNpcName("npc_primrose","formal")>> taps a button to, presumably, deploy the gag.<br>
<br>
A low, lusty moan emanates from the smiling doll, and then <<=setup.getNpcName("npc_pr_sissy","formal")>> jumps as <<=setup.getNpcName("npc_primrose","formal")>> deploys one of the punishment features.<br>
<br>
"@@.npc_primrose;Bad girl! You need to be focused on your work, nothing can be more important than your duties to Social Interaction Service Syndicate Inc., or a contracting firm to which the company has assigned you.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> taps another key and the doll responds with an artificial "@@.computer;of course, <<Sir npc_primrose>>, this unit exists to serve.@@"<br>
<br>
"@@.npc_primrose;Of course it does.@@" <<=setup.getNpcName("npc_primrose","formal")>> replies, <<his npc_primrose>> practically dancing over the controls. "@@.npc_primrose;Revoking external senses and administering obedience refresher.@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","formal")>> stiffens slightly, assuming a fully upright, at-attention position as you wonder what sort of audio/video routine she is being forced to experience. Whatever it is, she clearly enjoys it as, after a few more minutes of demonstration she emerges from the mask flush with excitement.<br>
<br>
[<<moveTo "event_primrose_pr_presentation_6" "Continue." 600>>]
</div>/*#
#desc: npc_primrose pr_sissy demo: contract
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_pr_sissy', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.getPrimroseImage("lab") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
"@@.npc_pr_sissy;Wow! That was so intense, and so wonderful! I'm definitely going to make an appointment next week to drop by your lab to get fitted for one of those masks of my own... and I'll start the paperwork immediately to get some funding allocated for some trial units to use with the Secretary Rental program. Just those few minutes tells me that they will be PERFECT for streamlining things and ensuring our customers have Secretaries of skill and obedience head and shoulders above anything else on the market!@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> barely manages to remain composed as <<he npc_primrose>> thanks <<=setup.getNpcName("npc_pr_sissy","formal")>> but she just smiles, even offering to leave the prototype kigurumi mask with her for additional study.<br>
<br>
"@@.npc_pr_sissy;No, no, the last thing I want to do is disrupt your important studies... and I REALLY want a custom, totally form-fitting one of my own@@" she bites her lip "@@.npc_pr_sissy;maybe with the gag being based on your dimensions? The idea of sucking on this wonderful device's creator while I work hard... well, that's a real cage-straining thought!@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> actually blushes as <<he npc_primrose>> promises to do whatever she wants, <<=setup.getNpcName("npc_pr_sissy","formal")>> promising to drop in soon before <<=setup.getNpcName("npc_primrose","formal")>>, still all but babbling thanks, leads you out of the office and back to <<his npc_primrose>> lab.<br>
<br>
[<<moveTo "event_primrose_pr_presentation_7" "Time to show off." 600>>]
</div>/*#
#desc: npc_primrose pr_sissy demo: after
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> is practically walking on air for the trip back to <<his npc_primrose>> lab, moving fast enough to force you to hurry to keep up... while simultaneously appearing almost in a trance.<br>
<br>
Only once you're back in the privacy of <<his npc_primrose>> lab does <<he npc_primrose>> let <<him npc_primrose>>self go, pulling you in for an excited hug as <<he npc_primrose>> breaks into tears of joy.<br>
<br>
"@@.npc_primrose;We did it! Oh, I was beginning to feel like Don Quixote tilting at windmills, pushing ideas that only I could see... yet you, like the loyal Sancho stuck with me, and even guided me to the wonderful, amazing <<=setup.getNpcName("npc_pr_sissy","formal")>> who just made my dreams come true! With her funding my position is secure and I'll be able to do so, so much to help this company!@@"<br>
<br>
Face streaked with tears... yet with <<his npc_primrose>> heavy makeup standing strong, <<=setup.getNpcName("npc_primrose","formal")>> leans back to look at you with a smile. "@@.npc_primrose;Thank you! From the bottom of my heart, and everywhere else... you've been the best friend I've ever had, there with me through failure and failure, and now...@@" <<he npc_primrose>> seems at a loss for words, but you merely smile, the warmth that passes between the two of you saying far more than mere phrases ever could.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> sighs with relief as the two of you share another embrace, "@@.npc_primrose;well, I better get back to work, there's so much still to do! I want to be ready to hit the ground running the INSTANT <<=ps(setup.getNpcName("npc_pr_sissy","formal"))>> funding comes in, plus I need to start printing up her mask!@@"<br>
<br>
You smile and leave your friend to their joyous work.<br>
<br>
[<<moveTo "company_lobby" "Call it a day and head down to the lobby." 120>>]
</div>/*#
#desc: discuss stage 5 primrose with ai
#status: RELEASED 0.9.2.0
#ignore_spell: dollmaker,plotline
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_ai_stage5_infiltrate_14")>>
<<if State.hasPlayed("event_nursula_return_4") || State.hasPlayed("event_post_destroy_evil_nurse_return_2")>>
You mention the obstacle of <<=setup.getNpcName("npc_primrose","first")>>. <<=setup.getNpcName("npc_ai","first")>> nods her head. "@@.npc_ai;<<uc 'The reprogramming <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> has undergone has pushed <<if $npc_primrose.fem>>her<<else>>him<</if>> to even further abandon <<if $npc_primrose.fem>>her<<else>>his<</if>> individuality and focus on <<if $npc_primrose.fem>>her<<else>>his<</if>> work to the point of neglecting <<if $npc_primrose.fem>>her<<else>>his<</if>> own well-being. These work and living conditions are unsustainable without the level of intense brainwashing <<if $npc_primrose.fem>>she<<else>>he<</if>> has undergone and continually maintains.'>>@@"<br>
<br>
There is a pause in <<=ps(setup.getNpcName("npc_ai","first"))>> speech. She peers at you inquisitively for a moment before asking an unusual question: "@@.npc_ai;<<uc 'what are your intentions with <<=uc(setup.getNpcName("npc_primrose","formal"))>>? While <<if $npc_primrose.fem>>she<<else>>he<</if>> has played a role in <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> machinations, I calculate that <<=uc(setup.getNpcName("npc_primrose","formal"))>> is as much a victim as <<if $npc_primrose.fem>>her<<else>>his<</if>> subjects. These factors provide more varied opportunities in addressing <<=ps(setup.getNpcName("npc_primrose","formal"))>> as compared to other of <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> minions.'>>@@"<br>
<br>
You think over your options. Even chaffing under <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> self-centred ambitions, <<=setup.getNpcName("npc_primrose","formal")>> is a vital member of the company R&D team. Despite <<his npc_primrose>> sycophantic motivations, <<=setup.getNpcName("npc_primrose","formal")>> did not previously seem to pose much of a threat. Now, that <<he npc_primrose>> is laser-focused on assisting <<=setup.getNpcName("npc_evil_nurse","formal")>> and <<=setup.getNpcName("npc_boss","formal")>>, <<he npc_primrose>> presents a potential problem, and an obstacle to remove... even if it could be argued that <<he npc_primrose>> is not fully responsible for <<his npc_primrose>> position.<br>
<br>
[<<moveTo "theme_ai_primrose_destruction_intro_punishment" 'I think <<=setup.getNpcName("npc_primrose","first")>> should be punished and removed.' 60>>] <<hint $options "This will begin the questline to remove <<=setup.getNpcName('npc_primrose','first')>> from <<his npc_primrose>> position at the company. The player will be able to decide <<his npc_primrose>> fate at the end of the story.">><br>
[<<moveTo "theme_ai_primrose_destruction_intro_rescue" 'I think <<=setup.getNpcName("npc_primrose","first")>> should be rescued and redeemed.' 60>>] <<hint $options "This will begin the plotline to free <<=setup.getNpcName('npc_primrose','first')>> from <<=ps(setup.getNpcName('npc_boss','formal'))>> control. It is in two parts; part one returns <<him npc_primrose>> to <<his npc_primrose>> evil state. Part two focuses on healing <<his npc_primrose>> mind post-brainwashing.">><br>
[<<moveTo "theme_ai_primrose_destruction_intro_bypass" '<<=setup.getNpcName("npc_primrose","first")>> is not a threat and can be ignored.' 60>>] <<hint $options "<<=ps(setup.getNpcName('npc_primrose','first'))>> story in Stage 5 is optional and will not impact your ending. This option will bypass <<his npc_primrose>> questline.">>
<<else>>
You mention your intention to pursue <<=setup.getNpcName("npc_primrose","first")>>. "@@.npc_ai;<<uc 'Have you been able to learn of <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> current state of mind?'>>@@" You shake your head. You haven't seen hide nor hair of the rubber-clad dollmaker since your time within the company dungeon. "@@.npc_ai;<<uc 'Unfortunate. I had hoped that you may have heard something I had not. <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> lab has been under renovation since your return. The doctor <<if $npc_primrose.fem>>her<<else>>him<</if>>self has been living on the dungeon floor between shifts assisting <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>>. Until <<if $npc_primrose.fem>>she<<else>>he<</if>> returns to areas you can easily access, we will have to postpone pursuing this task. In the meantime, I would recommend keeping an eye on <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> and <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>>.'>>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
<</if>>
<<else>>
You mention your intention to pursue <<=setup.getNpcName("npc_primrose","first")>>, but are greeted by a frown from the AI. "@@.npc_ai;<<uc "Unfortunately, we remain incapable of move forward on any of our plans until I regain a connection to the company network. You should prioritise that first before you turn attention to individual administrators.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
<</if>>
</div>/*#
#desc: choose punishment
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_ai', 'primrose', 'theme_ai_primrose_destruction_intro_1')>>
<<set $npc_ai.themes.primrose[_themeId].repeatable = false>>
<<addNpcTheme 'npc_ai' 'primrose' 'theme_primrose_destruction_status_1'
0
'theme_primrose_destruction_status_1'
true
>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You state that you think <<=setup.getNpcName("npc_primrose","first")>> should be held responsible for <<his npc_primrose>> part in <<=ps(setup.getNpcName("npc_boss","formal"))>> corporate dystopia. You can't trust anyone that deep in the company culture. You admit that <<he npc_primrose>> may not deserve quite as harsh a sentence as the others but <<he npc_primrose>> is guilty all the same.<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> nods her head solemnly. "@@.npc_ai;<<uc 'As you wish. In that case, I will continue to monitor <<=uc(setup.getNpcName("npc_primrose","formal"))>> and formulate a strategy. In the meantime, continue to observe <<if $npc_primrose.fem>>her<<else>>him<</if>>.'>>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: choose rescue
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_ai', 'primrose', 'theme_ai_primrose_destruction_intro_1')>>
<<if _themeId != -1>>
<<set $npc_ai.themes.primrose[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You state that you think <<=setup.getNpcName("npc_primrose","first")>> should be rescued from the company's clutches. <<He npc_primrose>> was caught up in <<=ps(setup.getNpcName("npc_boss","formal"))>> machinations and was never really in full control of <<his npc_primrose>> actions and thus should not have to suffer for that.<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> nods her head, the faintest flicker of approval on her face. "@@.npc_ai;<<uc 'As you wish. I will continue to monitor <<=uc(setup.getNpcName("npc_primrose","formal"))>> in case there is an opportunity to separate <<if $npc_primrose.fem>>her<<else>>him<</if>> from <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>> and <<if $npc_primrose.fem>>her<<else>>his<</if>> reprogramming. In the meantime, continue to act as normal to avoid suspicion.'>>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: choose bypass
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_ai', 'primrose', 'theme_ai_primrose_destruction_intro_1')>>
<<set $npc_ai.themes.primrose[_themeId].repeatable = false>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You decide that <<=setup.getNpcName("npc_primrose","first")>> isn't a threat. While <<he npc_primrose>> has assisted the company and <<=setup.getNpcName("npc_boss","formal")>>, <<he npc_primrose>> is a small part of a larger whole. Your attention is better spent elsewhere. <<=setup.getNpcName("npc_ai","first")>> hums. "@@.npc_ai;<<uc 'As you wish. I will continue to monitor <<=ps(setup.getNpcName("npc_primrose","formal"))>>. If you believe that <<if $npc_primrose.fem>>she<<else>>he<</if>> is not an obstacle to our broader goals, I will respect your wishes.'>>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: coming up with a plan with AIKO
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_primrose_destruction_finale_abort")>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addWorkEvent "primrose_destruction_final" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<set _themeId = setup.findThemeId('npc_ai', 'missions', 'theme_primrose_destruction_status_1')>>
<<if $npc_ai.themes.missions[_themeId].done > 0>>
You again bring up the task of eliminating <<=setup.getNpcName("npc_primrose","formal")>>.<br>
<br>
<<if State.hasPlayed("event_primrose_destruction_finale_abort")>>
"@@.npc_ai;<<uc 'Changed your mind again, unit'>> <<=uc($player.first_name)>>? <<uc 'Very well. I will set things in motion'>>@@"
<<elseif State.hasPlayed("event_primrose_destruction_promiscuity_implementation") && State.hasPlayed("event_primrose_destruction_church_implementation") && (!$fetish.piss || State.hasPlayed("event_primrose_destruction_piss_implementation")) && State.hasPlayed("event_primrose_destruction_drugs_implementation")>>
"@@.npc_ai;<<uc 'You have done well, unit'>> <<=uc($player.first_name)>>, <<=ps(setup.getNpcName("npc_primrose","formal"))>> <<uc 'is ripe for destruction, I will set things in motion'>>@@"
<<elseif State.hasPlayed("event_primrose_destruction_promiscuity_implementation") || State.hasPlayed("event_primrose_destruction_church_implementation") || State.hasPlayed("event_primrose_destruction_piss_implementation") || State.hasPlayed("event_primrose_destruction_drugs_implementation")>>
"@@.npc_ai;<<uc 'You have made good progress with <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> destruction. Continue your collaboration with <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>> and keep an eye out for other venues in which <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> might be clinging to sanity by indulging <<if $npc_primrose.fem>>her<<else>>his<</if>> freedom.'>>@@"
<<elseif State.hasPlayed("event_nursula_first_visit")>>
"@@.npc_ai;<<uc 'As dangerous as she may be, <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>> is key to <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> destruction, you must gain her trust and guide her like a missile.'>>@@"
<<else>>
"@@.npc_ai;<<uc 'With where <<=uc(setup.getNpcName("npc_primrose","formal"))>> is I believe it would be best to find someone with more access. <<if State.hasPlayed("theme_ai_human_first_1")>>As loathe as I am to consider her, perhaps<<else>>Perhaps<</if>> <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>>? She appears already quite infatuated with <<=uc(setup.getNpcName("npc_primrose","formal"))>>, but with little regard for <<if $npc_primrose.fem>>her<<else>>his<</if>> long-term health...'>>@@"
<</if>>
<<else>>
You ask <<=setup.getNpcName("npc_ai","first")>> if she has any ideas for how to eliminate <<=setup.getNpcName("npc_primrose","formal")>>?<br>
<br>
The AI shimmers and nods. "@@.npc_ai;<<uc "I have begun to create one, yes. I have observed your interactions and combed through the building's video memory once more as I better understand <<if $npc_primrose.fem>>her<<else>>his<</if>> current mental state.">>@@"<br>
<br>
"@@.npc_ai;<<uc '<<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> reprogramming has focused <<if $npc_primrose.fem>>her<<else>>his<</if>> efforts solely into <<if $npc_primrose.fem>>her<<else>>his<</if>> work, foregoing comfort in the name of efficiency. I believe that we can leverage this myopic pursuit to our advantage. If <<=ps(setup.getNpcName("npc_primrose","formal"))>> continues to pursue higher and higher levels of efficiency, <<if $npc_primrose.fem>>she<<else>>he<</if>> will eventually run into human limits and be rendered unable to function.'>>@@" <<=setup.getNpcName("npc_ai","first")>> creates a series of floating screens, each one with either video footage or still pictures from the lab. "@@.npc_ai;<<uc 'I believe we can expedite <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> inevitable burnout by making alterations to <<if $npc_primrose.fem>>her<<else>>his<</if>> environment. Unfortunately, it will be unlikely that you will be able to make such changes without the approval of <<if $npc_primrose.fem>>her<<else>>his<</if>> handler: <<=uc(ps(setup.getNpcName("npc_evil_nurse","formal")))>>. I she may be of use in implementing such modifications by turning her sadism to our benefit.'>>@@"<br>
<br>
"@@.npc_ai;<<uc 'I know what I am asking you is dangerous. I would not ask this of you if I did not think you could do it. I would recommend collecting yourself and planning your moves before taking them; <<=uc(setup.getNpcName("npc_primrose","formal"))>> and <<=uc(setup.getNpcName("npc_evil_nurse","full"))>> are dangerous opponents. All the same, I believe in you, Unit '>><<=uc($player.first_name)>>.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: return to primrose evil lab
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'primrose' 'theme_primrose_redemption_1_planning_intro_1'
0
'theme_primrose_redemption_1_planning_intro_1'
false
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You repeat the steps to find <<=ps(setup.getNpcName("npc_primrose","first"))>> lab and are relieved to see that you may enter once more. The door does not open automatically, instead a camera staring down at you for a few tense seconds before the magnetic lock disengages. Normally, you wouldn't have to wait and <<=setup.getNpcName("npc_primrose","first")>> would welcome you over the intercom. This time, there is no greeting save for the sound of the door unlocking.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> is sitting at <<his npc_primrose>> desk, typing away at <<his npc_primrose>> work. You approach, expecting some kind of welcome and are given none. <<=ps(setup.getNpcName("npc_primrose","first"))>> pink plugsuit has been replaced by regulation black rubber bodysuit. <<his npc_primrose>> pigtails are now drawn into a tight bun behind <<his npc_primrose>> head, <<his npc_primrose>> hair shorter. <<his npc_primrose>> usual glasses have been replaced with a pink wraparound visor. There is no visible fastener for the device; it's likely an augment. You can see <<his npc_primrose>> eyes and the reflection of <<his npc_primrose>> monitors but occasionally you also see something flicker across the smart material faster than you can comprehend.<br>
<br>
"@@.npc_primrose;What do you want, <<=$player.first_name>>?@@" <<his npc_primrose>> voice lacks the playful energy you've come to expect, instead replaced by an empty tone and a slight hint of annoyance, slightly akin to <<=setup.getNpcName("npc_work_doctor","formal")>> at <<his npc_work_doctor>> more dismissive. <<he npc_primrose>> does not look up to you, <<his npc_primrose>> focus completely locked into <<his npc_primrose>> work. You say that you are checking up on <<him npc_primrose>>. You haven't talked since the corporate shakeup. "@@.npc_primrose;I am adequate. Busy. After your stunt at the party, I have been given a renewed focus on my work. I realise I have been being too lenient and have let myself be distracted by frivolous things like identity. All I need is my work.@@"<br>
<br>
[<<moveTo "event_primrose_evil_lab_assisting" "Ask if you could assist <<him npc_primrose>>." 60>>]<br>
[<<moveTo "event_primrose_evil_lab_wander" "Ask if you can look around." 60>>]<br>
[<<moveTo "event_primrose_evil_lab_leave" "Leave." 60>>]
</div>/*#
#desc: ask about assisting in primrose lab
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> if you can help <<him npc_primrose>> with <<his npc_primrose>> work. While you are not always keen on allowing <<him npc_primrose>> access to your mind, it might help you better understand what <<he npc_primrose>>'s working on and <<his npc_primrose>> current state of mind.<br>
<br>
The <<if $fetish.sissy>>sissy <</if>>scientist does not look up from <<his npc_primrose>> computer as <<he npc_primrose>> gives a flat "@@.npc_primrose;no.@@" You are surprised by the sheer bluntness of <<his npc_primrose>> answer. You remember <<him npc_primrose>> previously having a hard time finding any test subjects. <<His npc_primrose>> eyes dart to you for a moment before <<he npc_primrose>> speaks up again.<br>
<br>
"@@.npc_primrose;While I did previously benefit from your help, I no longer require such. I have been given access to other test subjects. They are currently being tested in the cells. You have proven your... inadequacies in respect to <<=ps(setup.getNpcName("npc_boss","formal"))>> glory, and so I have little use for you... and recommend you focus on rehabilitating your image and learning how to behave.@@" With that, <<he npc_primrose>> returns to looking into <<his npc_primrose>> monitors. You flinch at the mention of your behaviour but choose not to pick a fight here. You ask if you can look in the cells. <<=setup.getNpcName("npc_primrose","first")>> gives a distant nod, focus already back on work.<br>
<br>
You approach the back wall and examine the cells. Previously, there had only been one; now there are three. The doors are magnetically sealed with no visible latch. They are far more secure looking than you remember. A screen next to each lets you see within the room and gives you details on who is inside. The test gear is far more restrictive than you remember it. Each subject is adorned with a VR helmet, a straitjacket, and a leg-binder, the harness over the gear is connected to a series of straps that suspends the subject in the centre of the cell. No part of their body is in contact with the ground and they occasionally writhe helplessly in their bonds.<br>
<br>
You cycle through the trio of test subjects. You recognise one of them; <<=setup.getNpcName("npc_sexdoll","full")>>. The second and third subject you do not know... but that is hardly a surprise given the rate the company seems to be expanding. The notes on their profiles read that they are lab assistants who had been sent to be <<=ps(setup.getNpcName("npc_primrose","first"))>> subject as a form of punishment after upsetting <<=setup.getNpcName("npc_work_doctor","formal")>>. You cringe at the mere thought as you step away and return to <<=ps(setup.getNpcName("npc_primrose","first"))>> desk.<br>
<br>
<<if State.hasPlayed("event_primrose_evil_lab_wander")>>
[@@.link_locked;You have already explored <<=ps(setup.getNpcName("npc_primrose","first"))>> lab.@@]<br>
<<else>>
[<<moveTo "event_primrose_evil_lab_wander" "Ask if you can look around." 60>>]<br>
<</if>>
[<<moveTo "event_primrose_evil_lab_leave" "Leave." 60>>]
</div>/*#
#desc: ask to explore primrose lab
#status: RELEASED 0.9.2.0
#ignore_spell: pc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Living Quarters'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_flat.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> if you can walk around the lab or go up to <<his npc_primrose>> room. "@@.npc_primrose;So long as you do not touch anything... and anything counts double when it comes to my personal computer.@@" <<he npc_primrose>> does not look up from <<his npc_primrose>> workstation. You take that as all the confirmation you are going to receive and begin to explore the lab. Most of the lab is as you remember, if neater. The few personal touches have all been removed. The modular furniture of the lab plays tricks on your eyes; all of it is so sterile and featureless that it is hard to tell what had been moved and what had been there the whole time.<br>
<br>
You ascend the stairs into <<=ps(setup.getNpcName("npc_primrose","first"))>> room. Much like the lab, everything that was a personal touch has been purged. The auto-closet contains copies of the black bodysuit he is currently wearing. The game console and anime figurines have been removed. The kotatsu and personal computer are gone as well. The desk is still there but now contains a stock work PC. Even the rim lighting around the ceiling has been set to a stark white as opposed to the intimate sunset tones.<br>
<br>
A shiver runs down your spine as you examine the hologram posters on the wall. While the previous posters had a bit of kitsch and charm, these are far more threatening. All of them are pictures of an endless sea of drones. The only text on the posters are single words in block letters. CONFORM. OBEY. SUBMIT.<br>
<br>
You retreat from the loft and return to the main desk of the lab.<br>
<br>
<<if State.hasPlayed("event_primrose_evil_lab_assisting")>>
[@@.link_locked;You have already asked about assisting <<=setup.getNpcName("npc_primrose","first")>>.@@]<br>
<<else>>
[<<moveTo "event_primrose_evil_lab_assisting" "Ask if you could assist <<him npc_primrose>>." 60>>]<br>
<</if>>
[<<moveTo "event_primrose_evil_lab_leave" "Leave." 60>>]
</div>/*#
#desc: leave evil primrose lab
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You make to leave <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab and the <<if $fetish.SISSI>>sissy <</if>>scientist barely pays attention waving you off dismissively as <<he npc_primrose>> re-focuses on <<his npc_primrose>> work.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: repeat visit primrose lab stage 5
#status: RELEASED 0.9.2.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You are standing in <<=ps(setup.getNpcName("npc_primrose","first"))>> remodelled laboratory. It is orderly and sterile, with 3D printers humming on the back wall and test subjects swinging helplessly in the cells. <<=setup.getNpcName("npc_primrose","first")>> is at <<his npc_primrose>> desk, working on something. <<He npc_primrose>> does not acknowledge you as you enter.<br>
<br>
<<if State.hasPlayed("event_primrose_evil_lab_assisting")>>
[@@.link_locked;You have already asked about assisting <<=setup.getNpcName("npc_primrose","first")>>.@@]<br>
<<else>>
[<<moveTo "event_primrose_evil_lab_assisting" "Ask about assisting." 60>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_evil_lab_wander")>>
[@@.link_locked;You have already explored <<=ps(setup.getNpcName("npc_primrose","first"))>> lab.@@]<br>
[<<moveTo "event_primrose_evil_lab_loft" "Go up to the loft." 60>>]<br>
<<else>>
[<<moveTo "event_primrose_evil_lab_wander" "Ask if you can look around." 60>>]<br>
<</if>>
<<if !State.hasPlayed("event_nursula_first_visit")>>
[<<moveTo "event_primrose_evil_lab_nursula" 'Ask about meeting <<=setup.getNpcName("npc_evil_nurse","formal")>>.' 60>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_promiscuity_nursula")>>
<<if State.hasPlayed("event_primrose_destruction_promiscuity_implementation")>>
[@@.link_locked;You have already relayed instructions concerning <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> promiscuity@@]<br>
<<else>>
[<<moveTo "event_primrose_destruction_promiscuity_implementation" 'Relay <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> orders concerning promiscuity.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_drugs_nursula")>>
<<if State.hasPlayed("event_primrose_destruction_drugs_implementation")>>
[@@.link_locked;You have already relayed instructions concerning <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> medication@@]<br>
<<else>>
[<<moveTo "event_primrose_destruction_drugs_implementation" 'Relay <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> orders concerning medication.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_church_nursula")>>
<<if State.hasPlayed("event_primrose_destruction_church_implementation")>>
[@@.link_locked;You have already relayed instructions concerning church@@]<br>
<<else>>
[<<moveTo "event_primrose_destruction_church_implementation" 'Relay <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> orders concerning church.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_piss_nursula")>>
<<if State.hasPlayed("event_primrose_destruction_piss_implementation")>>
[@@.link_locked;You have already relayed instructions concerning <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> hydration@@]<br>
<<else>>
[<<moveTo "event_primrose_destruction_piss_implementation" 'Relay <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> orders concerning hydration.' 60>>]<br>
<</if>>
<</if>>
[<<moveTo "event_primrose_evil_lab_leave" "Leave." 60>>]
</div>/*#
#desc: explore primrose loft
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_flat.png">>
<div id="invframe" class="scrolltext">
You are standing in <<=ps(setup.getNpcName("npc_primrose","first"))>> loft. The room has been scrubbed clean of any personal touches and is now little more than where the scientist sleeps in <<his npc_primrose>> vacbed every night. There is a computer hooked up to a kigurumi VR mask hanging on a rack.<br>
<br>
<<if $currentTasks.hasOwnProperty("primrose_redeem_lab_1") && !$currentTasks.primrose_redeem_lab_1>>
<<printThought "If only I could hack things now, while I'm alone... but <<=setup.getNpcName('npc_ai','first')>> said I had to do things while <<=setup.getNpcName('npc_primrose','first')>> is already tucked in for <<his npc_primrose>>... well, what passes for sleep for <<him npc_primrose>> now.">><br>
<br>
<</if>>
[<<moveTo "event_primrose_evil_lab_repeat" "Back to the lab." 60>>]<br>
</div>/*#
#desc: ask stage 5 primrose about meeting npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> if <<he npc_primrose>> knows where you can talk to <<=setup.getNpcName("npc_evil_nurse","formal")>>?
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
You don't give any additional information, not wanting to give away your plans. The brainwashed scientist stares at you as the visor implant turns <<his npc_primrose>> thoughts into commands and messages. You cannot tell exactly what <<he npc_primrose>> is doing but you don't have to wait long for an answer.<br>
<br>
"@@.npc_primrose;I do. Here are the directions.@@" Oh! That was surprisingly easy.<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> takes a notebook out of <<his npc_primrose>> desk and tears out a piece of paper. <<He npc_primrose>> begins to write using a mechanical pencil, giving you precise instructions on what floor to get off the elevator, what passcode to put in the entryway, and which doors you should and should not walk through. "@@.npc_primrose;You should go now. She is expecting you.@@"<br>
<br>
Oh. That would explain it. You thank <<=setup.getNpcName("npc_primrose","first")>> for <<his npc_primrose>> time and start the trek into the heart of darkness.<br>
<br>
[<<moveTo "event_nursula_first_visit" "Here goes nothing..." 300>>]
<<else>>
"@@.npc_primrose;Ah, <<=setup.getNpcName("npc_evil_nurse","formal")>>!@@" <<=setup.getNpcName("npc_primrose","first")>> replies, sounding somewhere between fear and... wistful. "@@.npc_primrose;I do but... well, she is a very busy woman, as you can imagine, and now is not, I think, a good time to bother her. <<if setup.hasFreeTime($now, $player, $currentTasks, 3600, true)>>Besides, I sense you have somewhere else you should be?<<else>>Ask me some other time, hmm?<</if>>@@"<br>
<br>
<<His npc_primrose>> visor shimmers and you shiver, feeling like you've just undergone some sort of privacy violation.<br>
<br>
[<<moveTo "event_primrose_evil_lab_leave" "Be on your way." 60>>]
<</if>>
</div>/*#
#desc: turn primrose over to npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.visitNurse = true>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You trace a journey down the elevators and into the most central and secure section of the R&D Department. Not only is the asylum nestled underground within a labyrinth of hallways, it is behind a large magnetically sealed door. Even then, the asylum was its own maze of endlessly repeating corridors. There were coloured lines on the floor to guide the employees but there were so many different intertwining lines that they were utterly useless. When you do eventually find <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>>, it is out of sheer luck rather than any navigational skill on your part.<br>
<br>
"@@.npc_evil_nurse;There you are. I was beginning to think you might have gotten stuck in a cell somewhere.@@" The woman laughs darkly as she stares down at you. Your heart beats in your throat as she approaches you, her uniform glistening in the light. "@@.npc_evil_nurse;My minion told me that you had something to talk to me. Well? What is it then?@@"<br>
<br>
[<<moveTo "event_nursula_visit_join" 'Explain that you want to help her look after <<=setup.getNpcName("npc_primrose","first")>>.' 60>>]
</div>/*#
#desc: ask to join nursula
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_evil_nurse","formal")>> that you would like to assist in <<=ps(setup.getNpcName("npc_primrose","first"))>> discipline. The nurse scoffs, looking at you with amusement and disbelief. "@@.npc_evil_nurse;Oh? You think you can bring something to the table that I can't?@@" Before you can say anything else, she places her clipboard down and turns to face you directly. She takes a step forward, barely a few centimetres between the two of you. She is close. You can feel her breath against your face as she leans in and growls.<br>
<br>
"@@.npc_evil_nurse;I'd wager you're up to something. Do you know what I think? I think that this is some kind of trick. I bet you are trying to find some way to steal <<him npc_primrose>> for yourself, to rob me of one of my favourite toys. Tell me what you think you can bring to the table that I cannot. If I don't like your answer, you may find yourself staying here for a bit.@@"<br>
<br>
You think carefully. You're going to have to impress <<=setup.getNpcName("npc_evil_nurse","formal")>> if you want to be able to join the team. A bad answer may have... consequences.<br>
<br>
<<if setup.getTotalValue("dominance")>>
[<<moveTo "event_nursula_visit_dominance" "Use your dominance skills." 60>>]<br>
<</if>>
[<<moveTo "event_nursula_visit_smarts" "Use your smarts." 60>>]<br>
[<<moveTo "event_nursula_visit_bimbo" "Play, like, dumb about having ulterior motives." 60>>]<br>
[<<moveTo "event_nursula_visit_submission" 'Beg <<=setup.getNpcName("npc_evil_nurse","formal")>> to let you help.' 60>>]<br>
[<<moveTo "event_nursula_visit_abort" "Abort! Abort!" 60>>]
</div>/*#
#desc: talk to nursula about dominating primrose
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("dominance") > 15>>
<<set $npc_primrose.flags.nursulaStyle = "dominance">>
<</if>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dominance") > 15>>
You don't back down. In fact, you bridge the gap and lean even closer, locking eyes with <<=setup.getNpcName("npc_evil_nurse","formal")>>. You tell her that you will not settle for second-rate discipline for your friend. If <<=setup.getNpcName("npc_primrose","first")>> is going to fulfil <<his npc_primrose>> potential at this company, <<he npc_primrose>> requires constant surveillance and a variety of tactics. With your combined intellect and experience, you assure her that they will mould <<him npc_primrose>> into a model of efficiency and submission.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> does not break gaze with you as she stares back at you intently. You do not waver. Weakness in this moment would jeopardise everything. After one of the most tense pauses of your life, <<=setup.getNpcName("npc_evil_nurse","formal")>> relaxes her shoulders and smirks. "@@.npc_evil_nurse;I never would have suspected YOU to have such a backbone. Fine, consider yourself deputised. Put <<=setup.getNpcName("npc_primrose","first")>> in <<his npc_primrose>> place and report your findings to me. Dismissed.@@"<br>
<br>
You strike a quick salute before backing away from the nurse and making your leave. Looks like you have her approval.<br>
<br>
[<<moveTo "company_lobby" "Head down to the lobby." 120>>]
<<else>>
You furrow your brow as you tell <<=setup.getNpcName("npc_evil_nurse","formal")>> that you know your way around a crop. You could be a real asset. The woman laughs in your face, bringing a tinge of blush to your cheeks. "@@.npc_evil_nurse;Oh? Show me.@@" She fetches a tool that looks closer to a cattle prod and places it in your hands. "@@.npc_evil_nurse;Go on, show me your power. Dominate me.@@"<br>
<br>
Confusion strikes you as you tap the button, nearly jumping at the noise. <<=setup.getNpcName("npc_evil_nurse","formal")>> watches you stoically, grading you at each of your motions. You grip the leather handle of the prod tightly as you try and muster the energy to even whip her with the tool but you can't find it in you. Her piercing gaze is staring into your soul and you know that you cannot overpower her.<br>
<br>
"@@.npc_evil_nurse;Give it here.@@" She commands you and you comply. Just as soon as it is in her hands does she turn the prod upon you, sending a debilitating rush of electricity through your body. You fall to the ground, wriggling in agony as she squats next to you and growls threateningly "@@.npc_evil_nurse;I have many skills, <<=$player.first_name>>. Above my intellect, my physique, and my beauty, I value my skills as a dominant. For your insolence, I will introduce you to them.@@"<br>
<br>
You struggle to keep conscious as the augmented woman grabs you by the collarbone and drags you along...<br>
<br>
[<<moveTo "event_nursula_visit_dominance_failure" "Shit..." 1800>>]
<</if>>
</div>/*#
#desc: fail dominance test
#status: RELEASED 0.9.2.0
#ignore_spell: d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> drags you to one of the padded cells, opening the electronic lock. She spins you around face a padded bench in the centre of the room and bends you over it. A pair of cuffs close around your wrists and ankles, keeping you bent at a ninety degree angle. You shiver, hearing her heels press against the rubberised floor as she paces back and forth.<br>
<br>
"@@.npc_evil_nurse;Do you know what the most primal of human instincts is? It's fear.@@" The sadist monologues to herself as you hear her snap a pair of rubber gloves onto her hands. They stretch and snap into place, the sharp sound making you jump. "@@.npc_evil_nurse;And the greatest of all fears is the fear of the unknown.@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> begins to lubricate your rear with her fingers and a numbing agent. You shiver as you feel your anus relax outside your control. While you have little feeling in your nethers, you can still feel her fingers run along the rim and then into your sphincter. "@@.npc_evil_nurse;My job requires me to carry a lot of medicine on me at any given time. I have to work very hard to keep them sorted out in my mind to make sure I do not give a patient the wrong batch. Not that I particularly care what happens to them. Sometimes the reactions are amusing. However, it can set research back quite a bit when a patient becomes... contaminated.@@"<br>
<br>
You hear her grab something off her belt. "@@.npc_evil_nurse;I think I remember which this is... but we will know soon enough.@@" You struggle against your bindings all over again as you feel her finger and the suppository slide into your supple anus. <<=setup.getNpcName("npc_evil_nurse","formal")>> leans over you as she works, pressing her breasts against your back as she purrs into your ear. "@@.npc_evil_nurse;Oh yes, keep struggling. You're just making this better for me.@@"<br>
<br>
She keeps her finger in your ass for nearly a minute before pulling back, depositing the pill deep within your bowels. The sadist hums to herself as she pulls off her gloves, watching you with amusement. "@@.npc_evil_nurse;I'll be back in a few minutes to take your temperature.@@"<br>
<br>
You are left alone to stew in your own fear as you fret over what she must have done to you. Was it a drug? A tracker? Something worse? You sweat and writhe as you are kept in the bent position uncomfortably. You feel exposed. Trapped. Your heart races. You tap your fingers anxiously against the bench. The room is soundproof and evenly lit. There is no way to tell how long you've been in there.<br>
<br>
After what feels like an eternity, <<=setup.getNpcName("npc_evil_nurse","formal")>> returns to the room. She unclamps you from the bench, grinning darkly down at you. "@@.npc_evil_nurse;The pill in your ass? It's a vitamin D tablet... the normal vitamin D. I have to take them regularly while working underground for extended periods. But you probably thought it was something far worse, didn't you?@@" She laughs darkly at you as you blush with embarrassment. "@@.npc_evil_nurse;That's what I thought. Now, put your clothes on and get out of my asylum. Try not to jump at any shadows on the way out.@@"<br>
<br>
You do as you are told, slipping out of the room and into the elevator. You groan, still able to feel the sensation of a curious finger in your rear. You're going to have to be better prepared ahead of your next attempt...<br>
<br>
[<<moveTo "company_lobby" "Stagger down to the lobby." 120>>]
</div>/*#
#desc: show off smarts to npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("smarts") > 15>>
<<set $npc_primrose.flags.nursulaStyle = "smart">>
<</if>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("smarts") > 15>>
You exhale slowly and explain that, having spent plenty of leisure time with <<=ps(setup.getNpcName("npc_primrose","first"))>> work and having even experienced it first hand you know <<his npc_primrose>> mind inside and out. While <<=setup.getNpcName("npc_evil_nurse","formal")>> has been busy scaring <<=setup.getNpcName("npc_primrose","first")>>, you have spent time with <<him npc_primrose>> when <<he npc_primrose>> lets <<his npc_primrose>> guard down. You could provide insight about <<=ps(setup.getNpcName("npc_primrose","first"))>> weaknesses that she might not know about.<br>
<br>
The domineering asylum matron chuckles darkly. "@@.npc_evil_nurse;Fair enough. You're right; he's usually too scared of me to open up. That or he's too busy screaming my name to say anything else. Fine; welcome to the team. Report any findings you have to me. Dismissed.@@"<br>
<br>
You nod resolutely and make a quick exit. You have your approval; time to get to work.<br>
<br>
[<<moveTo "company_lobby" "Head back to the lobby." 120>>]
<<else>>
You take a deep breath and confidently explain that you are an intellectual yourself and could provide insight that <<=setup.getNpcName("npc_evil_nurse","formal")>> doesn't have. The nurse looks directly into your soul and asks "@@.npc_evil_nurse;oh? Did you graduate with merits from evil nursing school? I put my eighteen months in but you sound pretty sure of yourself What was your thesis on? Mine was on electroshock therapy.@@" You stammer that you did not go to medical school. She interrupts you again;<br>
<br>
"@@.npc_evil_nurse;Oh well, you must be a psychiatrist then! You must know what <<=ps(setup.getNpcName("npc_primrose","first"))>> psyche is like. Are your Federal Association of Psychiatry certifications up to date? I got mine renewed a few months ago.@@" Your cheeks burn red as you admit that you are not a psychiatrist either. A dark smirk crosses <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> face as she hums and shakes her head.<br>
<br>
"@@.npc_evil_nurse;No, I thought not. You know your way around a keyboard and think that makes you smarter than everyone else. You do not know better than me and you certainly do not know more than me... but if you are interested in learning more about what I do, then I shall teach you.@@" She grabs you by the <<if setup.checkItemTypeWorn("choker")>>collar<<else>>hair<</if>> and pulls you after her. This has gone very, very poorly.<br>
<br>
[<<moveTo "event_nursula_visit_smarts_failure_1" "Get dragged along." 600>>]
<</if>>
</div>/*#
#desc: fail to impress npc_evil_nurse with smarts
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet "nurse_work_outfit">>
<<wearItemSet "nurse_work_outfit">>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
Before you know it <<=setup.getNpcName("npc_evil_nurse","formal")>> has you changed into the familiar rubber nurse's outfit, your only hope that this might mean you're only in for being her assistant, rather than one of her patients. Her helmet serves to make the nurse even more inhuman as, with a few jabs and a tug on your leash <<=setup.getNpcName("npc_evil_nurse","formal")>> has you following behind her as you get an odd sense of deja vu at the time you've spent as <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> assistant making the rounds.<br>
<br>
At first things are rather similar to your experiences assisting <<=setup.getNpcName("npc_work_doctor","formal")>> as you silently follow <<=setup.getNpcName("npc_evil_nurse","formal")>> around as she holds your leash, obeying her instructions when they are given. Despite seemingly following the instructions of the not-so-good doctor, however, <<=setup.getNpcName("npc_evil_nurse","formal")>> has a radically different approach. With <<=setup.getNpcName("npc_work_doctor","formal")>> <<his npc_work_doctor>> focus was always on the results, with patient cruelty more a side effect due to lack of concern than direct malice... unless crossed, but even then <<his npc_work_doctor>> punishments served a crude purpose. <<=setup.getNpcName("npc_evil_nurse","formal")>> on the other hand strikes a radically different focus, utterly fixated on the patients entrusted to her "care"... her diabolically sadistic care. Where <<=setup.getNpcName("npc_work_doctor","formal")>> frequently references <<his npc_work_doctor>> notes, <<=setup.getNpcName("npc_evil_nurse","formal")>> seems to only write down what is strictly required for her to report, in all other ways relying on a seemingly encyclopedic knowledge of each of her subject's weaknesses, weaknesses she exploits with brutal breadth and efficiency.<br>
<br>
Silenced and restricted by your nurse attire your job is to accompany <<=setup.getNpcName("npc_evil_nurse","formal")>> on her cruel rounds, tightening a strap here, or inflating a gag there, whatever she commands, really, lest you get another electric shock or she decides to keep you underground overnight.<br>
<br>
[<<moveTo "event_nursula_visit_smarts_failure_2" "Continue on..." 900>>
</div>/*#
#desc: forced to assist npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
After checking in on several "mundane" patients... if one were to accept the company position that brutally restrictive bondage<<if $fetish.drugs>>, free-will dissolving drugs,<</if>> and sexual torture were "mundane" <<=setup.getNpcName("npc_evil_nurse","formal")>> leads you to a door marked with a large "WARNING: EXPERIMENT IN PROGRESS" sign.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> has been clearly aroused and excited by every torment she has inflicted thus far but now, even through her mask, her anticipation is palpable, and you can easily picture the evil gleam in her eye as she swipes her card to disable the security lock, the picture of some sort of sadistic cat about to have oh-so-much fun playing with its food.<br>
<br>
"@@.npc_evil_nurse;Come along...@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> commands, tugging on your leash to draw you into the room after her.<br>
<br>
[<<moveTo "event_nursula_visit_smarts_failure_3" "Follow." 1800>>
</div>/*#
#desc: finish assisting npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
You walk into the room to find two patients secured to reclined examination chairs but, though their positions are identical, their states are far from.<br>
<br>
To your left the patient is dripping with sweat, straining almost constantly against their restraints as dildos, suction and vibrators pummel and stimulate them in every hole and from every direction, a "status" display above their chair showing various metrics including an orgasm counter that is well into the triple digits.<br>
<br>
To your right the second patient is no less a struggle, but here the full-bore stimulation is instead limited to fractions of a second of stimulation as the large "time since orgasm" counter, already at over a week, ticks up second by second as the poor victim whimpers past their gag and strains, begging with their eyes for relief, even as the diabolical contraption seems perfectly calibrated to keep them on edge, and no further.<br>
<br>
"@@.npc_evil_nurse;Aren't they just lovely? A real testament to the power of the human spirit, enduring so much...@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> cackles as she presses a button, sending arcing electricity through the over-stimulated patient... who howls through their gag, even as they cum. "@@.npc_evil_nurse;There we go! Mmm, that point where pain and pleasure are the same thing, when any stimulation is a tormenting delight. <<=setup.getNpcName("npc_work_doctor","formal")>> says that producing pain-sluts is counterproductive to employee discipline but... it's just so fun!@@"<br>
<br>
Perhaps more surprising than the reaction of <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> current target is how the other "patient" looks at the electro-pain display with pleading longing, as if even that agonising stimulation would be enough to push them over the edge. <<=setup.getNpcName("npc_evil_nurse","formal")>>, of course, notices this reaction with a delighted smile, all but dancing between the chairs to stand next to the constantly-edged victim, her latex fingers tracing along bare skin and causing the computer-controlled stimulation to remodulate accordingly.<br>
<br>
"@@.npc_evil_nurse;Mmmm, wishing that was you? Ah, but an orgasm would ruin all this lovely work! You're nearing a personal best! Just a few more days, hmm, for me?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> titters in amusement at the forlorn moan that is her response.<br>
<br>
"@@.npc_evil_nurse;Some people just don't... appreciate the opportunities I provide... but you do, hmm?@@" She asks, staring you down until you nervously nod.<br>
<br>
"@@.npc_evil_nurse;Lovely... well, I suppose my rounds are complete, I always save this one for the last, a little reward, you know. Sometimes I even turn off the computers to go hands on... but not today, they aren't ripe enough yet...@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> dances past you and tugs on your leash as you spare one final look back at the two patients and their opposite agonies...<br>
<br>
[<<moveTo "event_nursula_visit_smarts_failure_4" "Ascend from the asylum." 600>>]
</div>/*#
#desc: change after assisting npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> laughs in amusement as she tugs on your leash and leads you out of the cell, the two "test subjects" writhing in their diametrically opposite, and yet fundamentally the same, situations.<br>
<br>
Her rounds complete, <<=setup.getNpcName("npc_evil_nurse","formal")>> guides you back to the changing room and allows you to undress. She hangs about in the room, watching you with a hungry stare. "@@.npc_evil_nurse;You look good in uniform... and out of it... well, better if you didn't have such unmarked skin. You are an unpainted canvas, begging for the whip...@@" You try to ignore her as you put your work clothes back on.<br>
<br>
"@@.npc_evil_nurse;I hope you enjoyed your lesson in being my minion. Your intellect marks you far from an equal... but perhaps you will be clever enough to think of some manner in which you could contribute. Maybe when you aren't on your knees or on your back you could read medical journal or two.@@" She laughs in sharp, mocking amusement. "@@.npc_evil_nurse;Now get out of here.@@"<br>
<br>
Filing out of the room, you return to the elevator and exhale with exhaustion. What a day. If you're going to impress <<=setup.getNpcName("npc_evil_nurse","formal")>> with your intellect, you might need to brush up on your studies before you try again.<br>
<br>
[<<moveTo "company_lobby" "Change and head back to the lobby." 120 "<<removeItemSet 'nurse_work_outfit'>><<deleteItemSet 'nurse_work_outfit'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: show off bimboness to npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("bimbofication") > 15>>
<<set $npc_primrose.flags.nursulaStyle = "bimbo">>
<</if>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("bimbofication") > 15>>
You pout and shake your head. You explain to <<=setup.getNpcName("npc_evil_nurse","formal")>> that she has it all wrong! <<=setup.getNpcName("npc_primrose","first")>> is, like, your bestie! You want to make sure that <<he npc_primrose>> like... learns what <<=setup.getNpcName("npc_evil_nurse","formal")>> is trying to teach <<him npc_primrose>>! Plus, the nice nurse might get tired or lonely and you can like, totally be there for her to let off some steam! You flutter your eyelashes and stick out your lower lip, pleading upwards at the nurse with the most vapid bimbo pout you can muster. Your mission depends on it!<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> rolls her eyes and takes a step back, shaking her head. "@@.npc_evil_nurse;Oh Goddess... there's no way you could be planning anything with a brain as smooth as yours. Fine, you can help. Just do what I say and keep an eye on him. If you have any results, let me know. Dismissed. Try not to pull any push doors on the way out.@@"<br>
<br>
You giggle and nod, spinning on your heels and skipping merrily out. You drop the act once you turn the corner... it was an act, right?<br>
<br>
[<<moveTo "company_lobby" "Head back to the lobby." 120>>]
<<else>>
You twirl your hair in your finger as you try to explain to <<=setup.getNpcName("npc_evil_nurse","formal")>> that you aren't up to anything. You're just, like, worried about your friend <<=setup.getNpcName("npc_primrose","first")>>. The nurse stares at you incredulously, raising her brow. She takes a minute to look over your face, your bust, and your outfit. She doesn't seem impressed. She grabs your cheeks, holding you in place as she looks into your eyes.<br>
<br>
"@@.npc_evil_nurse;Have you been taking your medication?@@" You nod awkwardly, unsure what she is getting at.<br>
<br>
"@@.npc_evil_nurse;Really?@@"<br>
<br>
The asylum warden reaches along her belt-line and takes out a small aerosol can. She sprays your face with a mist that makes your face feel numb. She easily manhandles your mouth, forcing it open as she shoves a trio of vials into your mouth. You have no choice but to swallow. You feel your mind begin to cloud with pink. She lets you go, leaving you to cough and grapple with the drugging. <<=setup.getNpcName("npc_evil_nurse","formal")>> herself is writing something. She hands you a prescription script.<br>
<br>
"@@.npc_evil_nurse;Whatever you're taking isn't working. Here's a script for something stronger. Take it to <<=setup.getNpcName("npc_work_doctor","formal")>>. Dismissed.@@"<br>
<br>
The serum pumping through your veins forces you to exit the asylum and enter the elevator. Your fingers twitch as you stare at the buttons, digit resting over the button to the R&D floor. Something twitches in the back of your mind. You know there's some reason not to go up to Twig's office but... what was it?<br>
<br>
<<if setup.getWillpower() >= 2>>
[<<moveTo "event_nursula_visit_bimbo_escape" "Oh yeah! He's probably going to drug and face-fuck me!" 300>>] <<spendWillpower _wpCost>>
<<else>>
[<<moveTo "event_nursula_visit_bimbo_failure" "It's probably nothing." 300>>]
<</if>>
<</if>>
</div>/*#
#desc: leave npc_evil_nurse bimbo test
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
Even through the harsh pink fog, you remember that <<=setup.getNpcName("npc_work_doctor","formal")>> has a very nasty habit of giving people (you) drugs against yours and others (<<=ps(setup.getNpcName("npc_manager","formal"))>>) will. You bat your own hand away from the button and press the lobby button instead. You let out a deep exhale, wiping your brow. One crisis averted. Now to get out of here.<br>
<br>
[<<moveTo "company_lobby" "Head back to the lobby." 120>>]
</div>/*#
#desc: fail npc_evil_nurse bimbo test
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You ride the elevator up to the R&D floor, retracing your steps towards <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office... or at least, you think you're on the way towards <<his npc_work_doctor>> office. You're having a hard time remembering exactly where it is. All the hallways look the same and you're, like, so horny right now. Maybe finding <<=setup.getNpcName("npc_work_doctor","formal")>> would be good so you can suck some dick? That sounds so good right now. A smile fills your face as you imagine big, delicious cocks.<br>
<br>
Unable to contain yourself, you bring your hands along your nipples and begin to stroke your areola through your shirt and bra. Why are you even wearing such a tight bra? Best to remove it. You begin to undress in the empty hallway, humming to yourself as you get readjusted. There we go! Everyone likes seeing boobs on display!<br>
<br>
Actually, why are you wearing panties either? They feel so restrictive right now. You step out of them, bringing them up towards your nose to smell. The stain of arousal in them smells so delicious right now. You take a deep huff as you return your hands to your nipples, giving them a tight pinch. <<printThought "Oh Goddess that feels amazing.">> Your mouth lolls open as you lose yourself to the pleasures of breast masturbation.<br>
<br>
[<<moveTo "event_nursula_visit_bimbo_failure_2" "Break time..." 300>>]
</div>/*#
#desc: fail npc_evil_nurse bimbo test 2
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Company Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
"@@.npc_work_doctor;What the fuck are you doing!?@@"<br>
<br>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> voice snaps you out of your horny stupor. <<He npc_work_doctor>> is standing before you, staring at you with shock and disgust. You are still massaging your breasts, script intertwined between your fingers. You were so turned on, you didn't even see <<him npc_work_doctor>> turn the corner towards you! You try your best to explain yourself but you barely get a word in before <<=setup.getNpcName("npc_work_doctor","formal")>> starts shouting.<br>
<br>
"@@.npc_work_doctor;I was in the middle of something more fucking important than having to go play hide-and-seek with a brainless bimbo! Do you understand what I do on this floor? I do actual fucking work! My time is important! And now it's being wasted by you AND <<=setup.getNpcName("npc_evil_nurse","formal")>>!@@"<br>
<br>
You're so confused. <<He npc_work_doctor>>'s being so scary! You timidly hold the paper in your fingers as you try to recall why you came to see <<him npc_work_doctor>> in the first place. You don't even realise you are also handing <<him npc_work_doctor>> your own wet panties. <<=setup.getNpcName("npc_work_doctor","formal")>> snatches the script (but not the panties) from your hand and reads over <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> prescription recommendation. <<He npc_work_doctor>> sneers, snapping venomously.<br>
<br>
"@@.npc_work_doctor;*Nurse* <<=ps(setup.getNpcName("npc_evil_nurse","last"))>> recommendation is noted but will not be acted on. Get off my floor and get out of my sight.@@"<br>
<br>
You stand there vapidly as he stamps off, turning the corner and disappearing.<br>
<br>
[<<moveTo "company_lobby" "Head down to the lobby." 120>>]
</div>/*#
#desc: demonstrate submission to npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_STRANGER>>
<<if setup.getTotalValue("submission") > 15>>
<<set $npc_primrose.flags.nursulaStyle = "submission">>
<<else>>
<<addItem "ring_gag">>
<<wearItem "ring_gag" true>>
<</if>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("submission") > 15>>
Once <<=setup.getNpcName("npc_evil_nurse","formal")>> leans in, you hit the deck. You throw yourself at her feet, kissing her boots as you beg her to let you assist. You ramble about how she is a model employee and guiding hand and that you only wish to bask in her presence, assisting her in her duties. You grovel in her presence, hoping that your appeal to her dominant side would yield results.<br>
<br>
"@@.npc_evil_nurse;Pathetic.@@" She raises her foot, bringing it down on the side of your head. She grinds the heel into your hair, keeping you down with surprising strength. "@@.npc_evil_nurse;I don't know why I even worried about you. If you were up to anything, I could just throw you in here! In fact, you working here with me lets me keep a closer eye on you. Fine, you can help me. Keep an eye on <<=setup.getNpcName("npc_primrose","first")>> and report any findings to me. And don't think about trying to run, your ass belongs to me now.@@"<br>
<br>
She finally raises her heel and lets you loose. You thank her one last time before crawling away, turning the corner and rising back to your feet.<br>
<br>
<<printThought "That was a little too close.">>
<<else>>
Well, maybe the simplest option is the best one. You ask <<=setup.getNpcName("npc_evil_nurse","formal")>> politely if she would let you join in to help with <<=ps(setup.getNpcName("npc_primrose","first"))>> discipline. You even give a small bow and say that, if she agrees, you'll do whatever she wants. The nurse blinks as she stares blankly at you. It isn't even clear what emotion she is experiencing... until she sweeps her leg against the back of your leg, forcing you onto your knees.<br>
<br>
"@@.npc_evil_nurse;I'm sorry, I don't think I heard you clearly.@@" She reaches into her tools and brings out an O-ring gag. She leans in to fasten the item in place, hissing for you to not get up. She affixes the metal ring behind your teeth, giving it a tug to test its security before straightening her back. "@@.npc_evil_nurse;Try again.@@"<br>
<br>
Your face flushes with colour as you try again. Unsurprisingly, your voice is little more than a string of garbled moans and broken syllables. It is utterly unintelligible yet <<=setup.getNpcName("npc_evil_nurse","formal")>> continues to force you to answer questions. "@@.npc_evil_nurse;Oh? Is that so? You would do that for me?@@" She grins menacingly. "@@.npc_evil_nurse;What about if I asked you to spank him? What about tasing?@@" You try your best to get through to her, cheeks burning with blush and tears.<br>
<br>
<<if $fetish.drugs>>
"@@.npc_evil_nurse;Aww, poor thing. Here; this might help you find your words.@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> fishes a vial from her belt-line and attaches the cap against the ring. The liquid squirts through and goes directly down your throat. You cough and gag but there's no way to spit it back up. Your mind feels rigid and inflexible. The sheer idea of disobedience becomes all but impossible to fathom.<br>
<br>
<</if>>
<<=setup.getNpcName("npc_evil_nurse","formal")>> leans in and unclips the ring gag, purring into your ear "@@.npc_evil_nurse;request denied.@@" She giggles to herself as she spins the ring around her finger. "@@.npc_evil_nurse;You look very cute down there but you are not my type of sub. No imagination, no respect. Now, get off my floor and go be a doormat somewhere else.@@"<br>
<br>
You nod rapidly and pick yourself up. You wipe the spit from your chin and lips before approaching the elevator. You're going to have to try harder next time. <<=setup.getNpcName("npc_evil_nurse","formal")>> has higher standards than you expected.
<</if>>
<br><br>
[<<moveTo "company_lobby" "Head back to the lobby." 120 '<<if setup.checkItemWorn("ring_gag")>><<removeItem "ring_gag" true>><<deleteItem "ring_gag">><</if>>'>>]
</div>/*#
#desc: back out of npc_evil_nurse destroy primrose
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You stare upwards at <<=setup.getNpcName("npc_evil_nurse","formal")>> and begin to sweat. You explain that you have somewhere else to be and begin to turn only to feel her iron grip against your shoulder.<br>
<br>
@@.npc_evil_nurse;Leaving so soon?@@" She asks condescendingly. "@@.npc_evil_nurse;And we were just getting to know each other.@@" She turns you back towards her and forces you to meet her eyes. "@@.npc_evil_nurse;So, are you going to admit to your scheme so I can start your intake paperwork? Or are you going to grovel at my feet and beg me to let you go?@@"<br>
<br>
<<if setup.getWillpower() >= 2>>
[<<moveTo "event_nursula_visit_abort_lie" 'Swallow your pride and reaffirm your loyalty to SISSI and to her.' 30 "<<spendWillpower 2>>">>] <<hint $options "This will take willpower but should get you out of the asylum free and clear if she believes your lie.">><br>
<</if>>
[<<moveTo "event_nursula_visit_abort_beg" 'Plead your case that this is a misunderstanding and beg <<=setup.getNpcName("npc_evil_nurse","formal")>> to let you leave.' 60>>] <<hint $options "The most likely to succeed option, though you will probably come out the other side worse for wear">><br>
[<<moveTo "event_nursula_visit_abort_goad" "Goad the nurse by saying you are a naughty conspirator who is begging to be punished." 60>>] <<hint $options "A high risk manoeuvre; she might simply let you go rather than take the easy bait... or she might just keep you">><br>
[<<moveTo "event_nursula_visit_abort_confess" 'Tell <<=setup.getNpcName("npc_evil_nurse","formal")>> that you are a conspirator and that you are leaving.' 60>>] <<hint $options "The highest risk manoeuvre that will most assuredly not work">>
</div>/*#
#desc: lie to escape npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
As much as you hate to do it, you know exactly how to get the suspicion off of you. You harden yourself and put your hand over your heart, swearing that you are loyal to <<=ps(setup.getNpcName("npc_boss","formal"))>> and <<his npc_boss>> vision. You iterate that you have seen the error of your ways and are thankful to have a part to play in the larger plan. Your interest in helping <<=setup.getNpcName("npc_evil_nurse","formal")>> is not from a place of subterfuge but to show your devotion to the cause. You admit that you are not quite skilled enough yet, but you swear that you will focus on training yourself to be worthy of helping <<=setup.getNpcName("npc_evil_nurse","formal")>> in her important task.<br>
<br>
Shockingly, <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> face softens. Her shoulders relax as she nods her head resolutely. "@@.npc_evil_nurse;Understood. I'm glad to see you learned something during your imprisonment. When you are ready to take your second chance at impressing me, you may return. Dismissed.@@"<br>
<br>
You salute and march to the elevator, pressing the button for the lobby. Once you know you are alone, you let out an exhausted sigh and lean back against the wall. That was close. It hurt to say, but it got you out of the lion's den. You're going to have to be better prepared when you return.<br>
<br>
[<<moveTo "company_lobby" "Call it a day and head down to the lobby." 120>>]
</div>/*#
#desc: beg to escape npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 15 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You prostrate yourself at <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> feet, begging for mercy and apologising profusely for wasting her time. You expect her to let you grovel but she moves quickly, raising the toe of her boot to your chin before raising your gaze to her eyes. "@@.npc_evil_nurse;Save your words. I have heard them before,@@" she sneers before kneeling down to eye level with you.<br>
<br>
"@@.npc_evil_nurse;I'm going to tell you what you are going to do and you are going to do it, understood?@@" You nod your head skittishly. "@@.npc_evil_nurse;You are going to apologise to me and my cock. You are going to leave my asylum. You are not going to come back unless you have a damn good reason. You are going to do your work and not step out of line... because if I catch a whiff of misbehaviour, you will be thrown into one of these cells so fast your head will spin. Am I understood?@@"<br>
<br>
You emphatically agree that she is understood. <<=setup.getNpcName("npc_evil_nurse","formal")>> nods her head as she searches through her cart for a liquid-filled strap-on. It's made of some kind of flexible rubber membrane. She doesn't explain; you can guess what it is for. A cloudy liquid sloshes around inside as she fastens the belts. "@@.npc_evil_nurse;Open wide.@@" You know better than to try and argue with her, especially while in a position of weakness. You open your mouth and await what follows.<br>
<br>
The attached dildo tastes like a mix of plastic and candies. You assume that's from whatever's inside. You shiver as <<=setup.getNpcName("npc_evil_nurse","formal")>> takes the initiative and then some. Your comfort level is clearly not a priority. She is going to hilt and you are going to take it. The only comfort is that the soft, malleable membrane of the strap bends and contours to your throat. It conforms to the shape of your mouth and throat with ease.<br>
<br>
"@@.npc_evil_nurse;This is how I administer medicine... and you are about to get a taste—@@" Your heart races as she holds the base against your lips, hand behind your head. You cannot pull away from her iron grasp. The membrane pulses and shoots something salty down your throat while the nurse moans and cries out in the throes of pleasure. At least one of you is getting an orgasm.<br>
<br>
"@@.npc_evil_nurse;Don't worry, it's just saline solution. As much as I would love to just... strap you down and plug some diodes into your brain...@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> pants, pulling herself out of your throat as you cough up some of the solution. "@@.npc_evil_nurse;You have work to do; so go do it.@@"<br>
<br>
You whimper and nod, crawling on all fours around the corner and away from the sadist. You feel exhausted and humiliated. You will need to be better prepared if you expect to impress her.<br>
<br>
[<<moveTo "company_lobby" "Call it a day and head back to the lobby." 120>>]
</div>/*#
#desc: goad npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You decide to take a risky approach and give <<=setup.getNpcName("npc_evil_nurse","formal")>> a devious grin. You ask mischievously what she would do if you had been naughty because you've been a naughty <<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>boy<<default>>enby<</switch>>, and deserve to be punished. You ham it up as much as you can manage to try and throw suspicion off yourself. If you had been up to something, would you really admit to it? You would only faux admit to something if you were innocent!.. Right?<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> stares at you silently, gazing down at your sly smile with a stern look. She raises her nose in disgust and lets out a soft exhale. "@@.npc_evil_nurse;I see what you're trying to do and I'm not going to do it. It's far too easy. There's no sport to it. It's unfulfilling. Just get out of here and don't come back unless you have something important to say.@@"<br>
<br>
You chuckle and turn, beginning to make your way back towards the elevator. Sometimes, it's as easy as that~ You grin proudly right up until you feel a hand wrap around the back of your throat. "@@.npc_evil_nurse;Then again... a low hanging fruit can still be eaten.@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> is standing right behind you, gazing down at you with a sadistic grin. She pulls you towards her, bending you over her knee before giving nearly a dozen open-palmed slaps against your ass. While you suspect that Antlers pulls her punches when she spanks you, it is clear <<=setup.getNpcName("npc_evil_nurse","formal")>> does not. Each hit hurts, landing on the same spot over and over again.<br>
<br>
"@@.npc_evil_nurse;There we are. Something for you to remember me by.@@" The nurse chuckles as she examines your rear. There is a red handprint against your skin from where you had been spanked. "@@.npc_evil_nurse;Now scram.@@"<br>
<br>
You scram, tapping the lobby button in the elevator repeatedly. You whine, rubbing the sore spot on your ass. You're going to have to be more prepared if you plan on returning...<br>
<br>
[<<moveTo "company_lobby" "Call it a day and head back to the lobby." 120>>]
</div>/*#
#desc: confess to npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You stand your ground, growling that whether or not you are up to something doesn't matter because there's nothing <<=setup.getNpcName("npc_evil_nurse","formal")>> could do to stop you. The woman raises her brow, almost impressed. "@@.npc_evil_nurse;So you are up to something?@@" She asks, canting her head to the side. You say that you might be, so what. What is she going to do about it?<br>
<br>
You don't have to wait for her answer because it hits you in a flash: taser. Electricity courses through your veins as you fall to the floor, writhing in pain as your captor squats down next to you. "@@.npc_evil_nurse;Yeah... not your smartest move. Don't worry. I'll take good care of you.@@" She pokes your neck with a needle, administering a sedative. It gets to work quickly, your eyes drooping shut as you pass into a dreamless sleep.<br>
<br>
This was a terrible idea.<br>
<br>
[<<moveTo "event_nursula_visit_bad_end_1" "Continue..." 6000>>]
</div>/*#
#desc: npc_evil_nurse bad end
#status: RELEASED 0.9.2.0
#ignore_spell: joguina
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You wake up in a room you don't recognise. Everything feels strange and stiff. Your head feels woozy and... cold? Your hair feels wrong. Did they shave part of your head? You are wearing a white rubber straitjacket and coordinating underthings. It is all company standard from what you remember from the asylum... along with the shock collar. You are bound to a metal chair by a series of belts. A metal table is before you and beyond it...<br>
<br>
"@@.npc_evil_nurse;Ah, you're finally awake.@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> is sitting across from you, a predatory grin plastered on her face. She's holding a tablet in hand, taking notes with a smart pen. "@@.npc_evil_nurse;I was beginning to think I would have to jolt you awake. Now then, let's start with a few questions...@@"<br>
<br>
"@@.npc_evil_nurse;What is your name?@@"<br>
<br>
You furrow your brow. She knows your name. All the same, you speak up: <<printThoughtGlitch "<<=$player.first_name>> <<=$player.last_name>>">>. You blink. What did you just say? You only heard garbled syllables. You try again and continue to only speak nonsense whenever you try to say your name.<br>
<br>
"@@.npc_evil_nurse;Patient 0508 does not seem to be able to recall its name...@@" The nurse hums to herself, taking quick notes. "@@.npc_evil_nurse;I'll write down Avery Joguina for the sake of record keeping.@@" Her enjoyment is clear. "@@.npc_evil_nurse;What's the last thing you remember?@@"<br>
<br>
You try to recall what happened before the taser and are met with the same jumbled words as before. You can tell that <<=setup.getNpcName("npc_evil_nurse","formal")>> is taking great enjoyment in your distress. She leans in and purrs "@@.npc_evil_nurse;maybe some electro-stimulus will help jog your memory.@@" A warning hum builds up around your deck before another wave of lightning blazes through your nerves.<br>
<br>
"@@.npc_evil_nurse;How about now?@@" You stammer out a few broken pleads, begging <<=setup.getNpcName("npc_evil_nurse","formal")>> for her mercy. You know that is something she has in short supply but it is worth a shot. She doesn't budge, simply resting her chin upon her steepled fingers. "@@.npc_evil_nurse;You should save your breath. You're still recovering it from when you spilled your guts about your plan to save your friends.@@"<br>
<br>
Your eyes widen. Your heart races. "@@.npc_evil_nurse;That discomfort you're feeling? That cold spot on your scalp? We rigged an experimental implant Retention is considering into your brain. I won't bore you with all the details other than its purpose is information control. Taking thoughts and memories out of your head and instituting gag orders. You've already seen it in action. Your name and your past? You'll never speak a word of it to anyone.@@"<br>
<br>
"@@.npc_evil_nurse;But nevermind all that. You aren't that person anymore. According to official records, you don't event exist! No one will ever be able to find you. But worry not, you have me! And you and I are going to have lots of time together. Let me show you to your room.@@"<br>
<br>
[<<moveTo "event_nursula_visit_bad_end_2" "Continue..." 0>>]
</div>/*#
#desc: continued
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = "nurse_confess">>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png">>
<div id="invframe" class="scrolltext">
You lose track of time quickly. There are no days or nights in the asylum. Just an endless sea of fluorescent lights. You aren't sure if you're even slept in the same cell each night or if you're being swapped around with the other test subjects. It feels like <<=setup.getNpcName("npc_evil_nurse","formal")>> takes a very personal pleasure in making you miserable. She keeps your sleep schedule inconsistent and your meals sparse. You doubt you've eaten anything that wasn't drugged.<br>
<br>
And then there's the tests. Electro-stimulus, pain threshold, drug responses, VR simulations. It never ends. The list of projects is almost as long as <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> cruel smile as she subjects you to more and more. Your mind tears. The seams pull at each other to their near breaking point.<br>
<br>
Yet <<=setup.getNpcName("npc_evil_nurse","formal")>> never pushes you over that edge. She always pulls back just long enough for you to feel your mind nearly crumple and then heal only to do it all over again. In a way, that is the cruellest part of all.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
</div>/*#
#desc: visit npc_evil_nurse in asylum
#status: RELEASED 0.9.2.0
#ignore_spell: seafoam
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
The asylum is as you remember it: infinite and inscrutable. As you pass through the antechamber, the PA system turns on above you and you hear a familiar voice: "@@.npc_evil_nurse;Welcome back. Following the seafoam coloured line and you'll find me. Do not stray and do not dawdle.@@" Guess she knows you're here...<br>
<br>
You do as instructed, taking a moment to figure out which of the many lines is seafoam before pathing your way through the asylum. Sure enough, you find <<=setup.getNpcName("npc_evil_nurse","formal")>> within a matter of minutes. "@@.npc_evil_nurse;Speak,@@" she commands, not looking up from her tablet.<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
[<<moveTo "event_nursula_visit_plot" 'Talk to her about your ideas about <<=ps(setup.getNpcName("npc_primrose","first"))>> development.' 60>>]
<<else>>
[<<moveTo "event_nursula_visit_busy" 'Talk to her about your ideas about <<=ps(setup.getNpcName("npc_primrose","first"))>> development.' 60>>]
<</if>>
</div>/*#
#desc: npc_evil_nurse is too busy to help
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_evil_nurse","formal")>> that you have ideas about what she can do to enhance <<=ps(setup.getNpcName("npc_primrose","first"))>> efficiency. The woman gives a bark of a laugh, shaking her head. "@@.npc_evil_nurse;Easy there, minion. I haven't finished adapting <<=setup.getNpcName("npc_primrose","nickname")>> to <<his npc_primrose>> new routine yet. I am delighted to see that you take such joy in tormenting <<him npc_primrose>> but I do not plan on having <<him npc_primrose>> break yet.@@"<br>
<br>
You nod your head awkwardly. It may be best to wait until you see the fruits of your labour before trying to add anything else to <<=ps(setup.getNpcName("npc_primrose","first"))>> plate.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: leave npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You tell that you don't have anything more for her today.<br>
<br>
She squints at you in annoyance... but takes no further act save to nod in dismissal. "@@.npc_evil_nurse;Very well... but do try not to waste my time, it is so very, very valuable...@@"<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: plot with npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_evil_nurse","formal")>> that you have ideas about what she can do to enhance <<=ps(setup.getNpcName("npc_primrose","first"))>> efficiency. You immediately catch her attention, the woman looking over her shoulder and smiling cruelly. "@@.npc_evil_nurse;Walk and talk with me, minion.@@" You fall in behind her as she continues to walk through the halls. This is going to be a rolling meeting, it seems.<br>
<br>
<<include "primroseDestroyDiscuss">>
</div><<if State.hasPlayed("event_primrose_destruction_promiscuity_nursula")>>
[@@.link_locked;You have already discussed <<=ps(setup.getNpcName("npc_primrose","first"))>> promiscuity.@@]<br>
<<else>>
[<<moveTo "event_primrose_destruction_promiscuity_nursula" 'Talk about <<=ps(setup.getNpcName("npc_primrose","first"))>> promiscuity.' 60>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_drugs_nursula")>>
[@@.link_locked;You have already discussed <<=ps(setup.getNpcName("npc_primrose","first"))>> medication.@@]<br>
<<elseif State.hasPlayed("event_betray_work_doctor_7") && !State.hasPlayed("event_post_destroy_work_doctor_office_first")>>
[<<moveTo "event_primrose_destruction_drugs_nursula_fail" 'Talk about <<=ps(setup.getNpcName("npc_primrose","first"))>> lack of medication.' 60>>]<br>
<<else>>
[<<moveTo "event_primrose_destruction_drugs_nursula" 'Talk about <<=ps(setup.getNpcName("npc_primrose","first"))>> lack of medication.' 60>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_after_church")>>
<<if State.hasPlayed("event_primrose_destruction_church_nursula")>>
[@@.link_locked;You have already discussed <<=ps(setup.getNpcName("npc_primrose","first"))>> churchgoing.@@]<br>
<<else>>
[<<moveTo "event_primrose_destruction_church_nursula" 'Talk about seeing <<=setup.getNpcName("npc_primrose","first")>> at church.' 60>>]<br>
<</if>>
<<else>>
<<set _other=true>>
<</if>>
<<if $fetish.piss>>
<<if State.hasPlayed("event_sex_club_bathroom_primrose")>>
<<if State.hasPlayed("event_primrose_destruction_piss_nursula")>>
[@@.link_locked;You have already discussed <<=ps(setup.getNpcName("npc_primrose","first"))>> hydration.@@]<br>
<<else>>
[<<moveTo "event_primrose_destruction_piss_nursula" 'Talk about seeing <<=setup.getNpcName("npc_primrose","first")>> in the bathroom stall.' 60>>]<br>
<</if>>
<<else>>
<<set _other = true>>
<</if>>
<</if>>
<<if _other>>
[@@.link_locked;Perhaps if you ran into <<=setup.getNpcName("npc_primrose","first")>> in other places you would have more inspiration for destroying <<him npc_primrose>>...@@]<br>
<</if>>
[<<moveTo "event_nursula_visit_leave" "Excuse yourself." 120>>]/*#
#desc: tell npc_evil_nurse about primrose promiscuity
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You mention to <<=setup.getNpcName("npc_evil_nurse","formal")>> that you've encountered <<=setup.getNpcName("npc_primrose","first")>> at <<printShopName 'sex_club'>>.<br>
<br>
The nurse raises an eyebrow and smiles. "@@.npc_evil_nurse;Doing what?@@" You blush as you try and recount what you've seen <<=setup.getNpcName("npc_primrose","first")>> and the other bimbo dolls doing. "@@.npc_evil_nurse;Adorable. You sound a little jealous. Do you want to join them next time? I could whip something up for you, yes, a few hours under my care and you'll be just another broken toy...@@"<br>
<br>
Before you can say anything else, <<=setup.getNpcName("npc_evil_nurse","formal")>> is already talking again. "@@.npc_evil_nurse;Tell <<=setup.getNpcName("npc_primrose","first")>> that <<he npc_primrose>> has a new responsibility. <<He npc_primrose>> will be on break room duty from now on. If <<he npc_primrose>> wants to have loose sex on <<his npc_primrose>> off hours, <<he npc_primrose>> can at least contribute to company morale. It will be at the start and end of <<his npc_primrose>> shifts so both the day and overnight crowds can let off some steam. Make sure <<he npc_primrose>> knows that <<his npc_primrose>> little adventures to that club are over.@@" The woman reaches into her belt and takes out a notepad, scribbling something down and handing it to you. "@@.npc_evil_nurse;Here are the details. They are not for you so don't open it. Dismissed.@@" You salute, turning on your heel and beginning to make your trek back upstairs.<br>
<br>
[<<moveTo "event_primrose_destruction_promiscuity_implementation" "You'll get right on that." 120>>]<br>
[<<moveTo "company_lobby" "You'll visit <<him npc_primrose>> some other day, leave the office." 120>>]
</div>/*#
#desc: talk to primrose about addressing promiscuity
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_primrose_destruction_promiscuity_implementation") && State.hasPlayed("event_primrose_destruction_church_implementation") && (!$fetish.piss || State.hasPlayed("event_primrose_destruction_piss_implementation")) && State.hasPlayed("event_primrose_destruction_drugs_implementation")>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addWorkEvent "primrose_destruction_final" _nextDate>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You approach <<=ps(setup.getNpcName("npc_primrose","first"))>> desk and inform <<him npc_primrose>> that <<his npc_primrose>> schedule has been changed: <<he npc_primrose>> will now be tending to the asylum's break room at the beginning and end of R&D's shifts. You pass the folded piece of paper you received from <<=setup.getNpcName("npc_evil_nurse","formal")>> to the scientist and try to gauge <<his npc_primrose>> reaction from <<his npc_primrose>> facial expression alone. It's a losing battle. <<he npc_primrose>> simply exhales slowly and pinches the bridge of <<his npc_primrose>> nose. "@@.npc_primrose;Understood. I will report to the asylum at the beginning and end of shifts to... tend to my fellow scientists' needs. Thank you, <<=$player.first_name>>, for your ongoing service to this company.@@"<br>
<br>
You salute <<=setup.getNpcName("npc_primrose","formal")>> and <<he npc_primrose>> salutes back. <<he npc_primrose>>'s typing away at <<his npc_primrose>> keyboard again before you know it. As you turn to leave, you hear <<him npc_primrose>> softly mumble under <<his npc_primrose>> breath. You don't know if it is pointed at the messenger or the message and you don't stay around to find out.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: aftermath of primrose promiscuity
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You bring up another bit of footage, this one showing archival footage from a security camera within the asylum; specifically, its break room. You can spot <<=setup.getNpcName("npc_primrose","first")>> in a heartbeat: <<he npc_primrose>> is locked into a pair of stocks in the corner of the room next to the drink machine. A large O-ring gag is fastened around <<his npc_primrose>> head and keeps <<his npc_primrose>> mouth open. A small dry erase board behind <<him npc_primrose>> has <<his npc_primrose>> name written in flowery cursive with a heart over the i.<br>
<br>
"@@.npc_generic_male1;No way...@@" two of the floor's doctors enter, each wearing a white lab coat over scrubs. "@@.npc_generic_male1;Looks like we finally got our union benefits. I can't believe they convinced an actual employee to take one for the team.@@"<br>
<br>
"@@.npc_generic_male2;And <<he npc_primrose>>'s from R&D! I figured they'd send one of the sluts from PR or a misbehaving <<if $fetish.sissy>>SISSI <</if>>secretary but no, we got an actual person down here! You must have really pissed someone off to wind up down here!@@"<br>
<br>
"@@.npc_generic_male1;You're getting the short end of the stick, my friend. Of course, now you're gonna get the long end of my shaft. After all, I wouldn't want to get in trouble for showing mercy to a misbehaving employee!@@" The <<man>> laughs raucously and high-fives <<his>> companion. You roll your eyes and watch for a few more seconds as the man starts to face-fuck <<=setup.getNpcName("npc_primrose","first")>>. Yeah, you know how the rest goes. You turn off the feed and get back to work, thanking <<=setup.getNpcName("npc_ai","first")>> for the update.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: tell npc_evil_nurse about primrose lack of drugs
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> is picking up your intentions but adds "@@.npc_evil_nurse;Not really my department, seeing as I can only prescribe with <<if State.hasPlayed("event_betray_work_doctor_7")>>approval<<else>>the approval of <<=setup.getNpcName("npc_work_doctor","formal")>><</if>>... and <<=setup.getNpcName("npc_primrose","first")>> would be hardly interested in subjecting <<him npc_primrose>>self to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> efforts.@@" She smiles "@@.npc_evil_nurse;The commands of a licensed nurse practitioner, however...@@" The nurse reaches along her tools and takes out her prescriber's pad, filling in the "patient's" name and signing it while leaving the actual details blank.<br>
<br>
"@@.npc_evil_nurse;Here you are, my lovely minion. Bring this to the good <<=setup.getNpcName("npc_work_doctor","formal")>> <<if State.hasPlayed("event_betray_work_doctor_7")>>or... whoever it is that has replaced <<him npc_work_doctor>><</if>>and see to it that <<=setup.getNpcName("npc_primrose","first")>> gets a nice, healthy dose of good <<if $fetish.sissy>>sissy<<else>><<boy npc_primrose>><</if>> pills. Yes... I want <<his npc_primrose>> brain all mushy and pink by the next time I see <<him npc_primrose>>, that is going to be VERY fun... I mean, beneficial to the company.@@"<br>
<br>
You bow your head before making your way out of the asylum. Next stop is <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> <<if State.hasPlayed("event_betray_work_doctor_7")>>former <</if>>lab!<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: tell npc_evil_nurse about primrose lack of drugs after npc_work_doctor destroy but before npc_hucow takes over
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You mention that you know that <<=setup.getNpcName("npc_primrose","first")>> does not take any of the daily medication typical of other employees. You wonder aloud if an adjustment might help optimise <<his npc_primrose>> work by bringing <<him npc_primrose>> in line with the other employees.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> sneers in annoyance. "@@.npc_evil_nurse;Would that I could do something... unfortunately, with <<=setup.getNpcName("npc_work_doctor","formal")>> having disappeared the department is in turmoil. Perhaps in a week or two things might settle down. I stay out of such matters, poke around and then return once things have normalised.@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> glares at you for wasting her time, seemingly waiting to see if you are going to waste any more.<br>
<br>
<<include "primroseDestroyDiscuss">>
</div>/*#
#desc: tell twig to drug npc_primrose
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.visitDoctor = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<<else>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_betray_work_doctor_7")>>
You approach <<=setup.getNpcName("npc_hucow","full")>> and hand her the prescriber's script, explaining that <<=setup.getNpcName("npc_evil_nurse","formal")>> has approved <<=setup.getNpcName("npc_primrose","first")>> beginning a medication regime. As first she reads the script suspiciously, but the moment you mention <<=setup.getNpcName("npc_evil_nurse","formal")>> that suspicion turns to fear.<br>
<br>
"@@.npc_hucow;Fine, whatever... this is a very potent brew but... if that is what <<=setup.getNpcName("npc_evil_nurse","formal")>> wants, well... I am not going to interfered.@@" <<=setup.getNpcName("npc_hucow","full")>> shudders as she hands you a fresh script addressed to <<=setup.getNpcName("npc_primrose","formal")>>.<br>
<br>
<<printThought "She's REALLY scared of <<=setup.getNpcName('npc_evil_nurse','formal')>>... which, I suppose, does make sense...">><br>
<br>
You thank <<=setup.getNpcName("npc_hucow","full")>> for the assistance and she nods, clearly very eager to change the subject.
<<else>>
You approach <<=setup.getNpcName("npc_work_doctor","formal")>> and hand <<him npc_work_doctor>> the prescriber's script, explaining that <<=setup.getNpcName("npc_evil_nurse","formal")>> has approved <<=setup.getNpcName("npc_primrose","first")>> beginning a medication regime. "@@.npc_work_doctor;Finally! It's about time. I've tried to lobby for this exact thing for months but that twink has both a stubbornly high drug tolerance and contractual control over what we put into <<his npc_primrose>> body. Now that we're treating <<him npc_primrose>> like property, we can finally get some good work out of <<him npc_primrose>>!@@"<br>
<br>
The mad doctor takes the script in hand and goes to work writing. "@@.npc_work_doctor;One of those a day... one of those to help get <<him npc_primrose>> caught up... yes, maybe this too.@@" You try to discern what <<=setup.getNpcName("npc_work_doctor","formal")>> has written but <<his npc_work_doctor>> handwriting is abysmal. <<He npc_work_doctor>> hands you the script and orders you to deliver it to <<=setup.getNpcName("npc_primrose","first")>> ASAP. You nod your head and leave the office.
<</if>>
<br><br>
<<printThought "One step down, one to go.">><br>
<br>
[<<moveTo "event_primrose_destruction_drugs_implementation" 'Off to see the other doctor...' 120>>]<br>
[<<moveTo "company_lobby" "Some other day, leave the office." 120>>]
</div>/*#
#desc: tell primrose to get on drugs
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_primrose_destruction_promiscuity_implementation") && State.hasPlayed("event_primrose_destruction_church_implementation") && (!$fetish.piss || State.hasPlayed("event_primrose_destruction_piss_implementation")) && State.hasPlayed("event_primrose_destruction_drugs_implementation")>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addWorkEvent "primrose_destruction_final" _nextDate>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You approach the desk and hand <<=setup.getNpcName("npc_primrose","first")>> the prescription script and inform <<him npc_primrose>> that <<he npc_primrose>> will be beginning daily medication dosage. The brainwashed scientist takes the script from you and begins to read it over. You are shocked to see that <<he npc_primrose>> can read <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> handwriting, considering that it is nearly illegible. <<=setup.getNpcName("npc_primrose","first")>> appears about to object... and then <<he npc_primrose>> comes to the attachment of the original note from <<=setup.getNpcName("npc_evil_nurse","formal")>> and all disobedience fades into resignation.<br>
<br>
"@@.npc_primrose;...understood.@@" You can hear a touch of disappointment and disapproval in <<his npc_primrose>> voice but <<he npc_primrose>> is not capable of resisting. "@@.npc_primrose;I will have these filled immediately. Thank you, <<=$player.first_name>>, for your ongoing service to the company.@@" You salute him and <<he npc_primrose>> salutes back. Huh. That's probably the most of his attention you've gotten since <<his npc_primrose>> brainwashing. You decide it would be best to leave.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: footage of npc_primrose on drugs
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You bring up another bit of footage, this one showing archival footage from the security cameras in <<=ps(setup.getNpcName("npc_primrose","first"))>> laboratory. The subject in question is making <<his npc_primrose>> rounds with <<his npc_primrose>> various test subjects, taking notes with a tablet. You notice that the life support module attached to the back of <<his npc_primrose>> black plugsuit now has a collection of glass vials filled with various substances. You recognise them as the various compounds and medicine from <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab.<br>
<br>
"@@.computer;Administering daily dose of <<=setup.getItemName("sissy_pill_mk1")>> and <<=setup.getItemName("drug_slave")>>.@@" A synthetic voice speaks from the module as two of the vials drain into the suit. <<=ps(setup.getNpcName("npc_primrose","first"))>> current stoic affect is broken by <<him npc_primrose>> falling to <<his npc_primrose>> knees, moaning in something between discomfort and lust. When <<he npc_primrose>> rises, <<his npc_primrose>> motions are stiff and deliberate. <<he npc_primrose>> reminds you of older robots and androids with their limited motion range... and yet <<his npc_primrose>> posing is a special kind of unnatural, like a mannequin or a sex doll trying to offer itself up for use.<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> marches back to <<his npc_primrose>> desk, eyes locked straight ahead. <<he npc_primrose>> begins to type <<his npc_primrose>> findings into <<his npc_primrose>> computer and modify the virtual environments within. <<=setup.getNpcName("npc_ai","first")>> explains: "@@.npc_ai;<<uc 'I have analysed <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> work while under the effects of <<if $npc_primrose.fem>>her<<else>>his<</if>> new medication routine. It shows a distinct lack of creativity with a strict adherence to rules and organised structure. The medication has all but snuffed <<if $npc_primrose.fem>>her<<else>>his<</if>> creative spark. While the routines function and fit the parameters laid out by <<=uc(setup.getNpcName("npc_boss","formal"))>>, I cannot imagine <<if $npc_primrose.fem>>she<<else>>he<</if>> finds this work fulfilling.'>>@@"<br>
<br>
"@@.npc_ai;<<uc 'My readings indicate heightened levels of stress and fatigue. You are doing well, Unit'>> <<=uc($player.first_name)>>.@@" The window closes. You smile to yourself and return to work.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: tell npc_evil_nurse about primrose church
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You mention that you know that <<=setup.getNpcName("npc_primrose","first")>> goes to Sunday service at the Church of the Goddess. You know that there is no company policy against employees practising their faiths, but you figure that time could be better spent elsewhere. <<he npc_primrose>>'s losing <<his npc_primrose>> entire Sunday morning to something that isn't work!<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> chuckles under her breath, nodding her head. "@@.npc_evil_nurse;You are correct. <<he npc_primrose>> is going all the way out to the Student Quarter to worship a Goddess that won't answer <<his npc_primrose>> prayers when <<he npc_primrose>> could be down here worshipping me.@@" You blink. That wasn't exactly what you had in mind but the augmented nurse is clearly already formulating her plans.<br>
<br>
"@@.npc_evil_nurse;Minion! Tell <<=setup.getNpcName("npc_primrose","first")>> that <<he npc_primrose>> will be spending <<his npc_primrose>> Sunday mornings with me from now on. Add that attending any kind of church service without of my approval is now prohibited. <<His npc_primrose>> deity is in this building, and she is a jealous Goddess who shall not condone idolatry.@@"<br>
<br>
You salute and turn on your heel, heading out of the asylum. Well, that wasn't quite what you expected but you still got the result you wanted. Time to tell <<=setup.getNpcName("npc_primrose","first")>> the good word.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: address primrose church
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_primrose_destruction_promiscuity_implementation") && State.hasPlayed("event_primrose_destruction_church_implementation") && (!$fetish.piss || State.hasPlayed("event_primrose_destruction_piss_implementation")) && State.hasPlayed("event_primrose_destruction_drugs_implementation")>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addWorkEvent "primrose_destruction_final" _nextDate>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You approach <<=ps(setup.getNpcName("npc_primrose","first"))>> desk and tell <<him npc_primrose>> about <<his npc_primrose>> new schedule change: <<he npc_primrose>> will now be spending Sunday morning with <<=setup.getNpcName("npc_evil_nurse","full")>> instead of the nuns of the Church. The rubber-clad doctor furrows <<his npc_primrose>> brow, for once looking surprised (in a subdued sense). "@@.npc_primrose;Understood,@@" <<he npc_primrose>> states before returning to <<his npc_primrose>> work. "@@.npc_primrose;I will report to the asylum on Sunday morning. Thank you, <<=$player.first_name>>, for your ongoing service to this company.@@"<br>
<br>
You salute <<=setup.getNpcName("npc_primrose","formal")>> and <<he npc_primrose>> salutes back. As soon as <<his npc_primrose>> hand is down, <<he npc_primrose>>'s back to typing away at a wall of behavioural scripts. You make your way out of the laboratory. Now you wait for the results.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: footage of primrose post-church
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You bring up another bit of footage, this one showing archival footage from the security cameras in the asylum. You know it is one of the padded rooms but there's nothing to indicate which one. <<=setup.getNpcName("npc_evil_nurse","formal")>> is sitting on a bench, legs spread. The crotch panel of her uniform is retracted, revealing the folds beneath.<br>
<br>
Between her legs is <<=setup.getNpcName("npc_primrose","first")>>. The demure scientist is wearing a stripped down version of a rubber nun's habit: a pair of ballet boots, elbow length gloves, a tight leotard, and a coif paired with a wimple. All of it in shiny monochrome rubber. <<His npc_primrose>> arms are bound behind <<his npc_primrose>> back in a box tie armbinder and <<his npc_primrose>> face is squeezed between the nurse's thighs.<br>
<br>
"@@.npc_evil_nurse;Keep going. I cannot hear you singing my praises loud enough!@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> swats <<=ps(setup.getNpcName("npc_primrose","first"))>> exposed rear with a crop, leaving behind a red welt. The bound <<if $fetish.sissy>>sissy<<else>>scientist<</if>> moans and cries out as <<his npc_primrose>> tongue laps back and forth over her clit. "@@.npc_evil_nurse;Much better. You should always give your Goddess your all. You should stop placing your faith in those who don't care about you. <<=setup.getNpcName("npc_boss","formal")>>, the Goddess... they will never give you what you deserve the way I will~@@"<br>
<br>
You blush and shiver at the sight, a small ping of arousal in the back of your mind as you close out the footage. <<=setup.getNpcName("npc_ai","first")>> asks "@@.npc_ai;<<uc 'was that too much to show? I can always share my findings with you in text.'>>@@" You respond that it is alright; you enjoyed the show. "@@.npc_ai;<<uc 'Excellent. We have removed another avenue <<=uc(setup.getNpcName("npc_primrose","formal"))>> has to relieve <<if $npc_primrose.fem>>her<<else>>his<</if>> stress and get away from work. Continue your mission and maintain your cover.'>>@@"<br>
<br>
The chat closes and you return to work.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: talk about primrose piss fetish
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You mention that you've seen <<=setup.getNpcName("npc_primrose","first")>> at <<printShopName 'sex_club'>> as one of the volunteer urinals. You know that the executive bathroom is quite often under-stocked, why not enlist <<him npc_primrose>> in a few additional shifts? Wouldn't that be more productive than having <<him npc_primrose>> get <<his npc_primrose>> volunteer hours off the clock?<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> grins wickedly, nodding her head. "@@.npc_evil_nurse;You make an excellent point. I've been lobbying to get a secondary bathroom installed in the asylum to shorten the walk but the higher ups do not seem to appreciate my plight.@@" The sadistic nurse takes out her phone and begins to cycle through <<=ps(setup.getNpcName("npc_primrose","first"))>> schedule, booking <<him npc_primrose>> for a pair of extended weekend shifts.<br>
<br>
"@@.npc_evil_nurse;Be a good minion and deliver <<=setup.getNpcName("npc_primrose","first")>> <<his npc_primrose>> new schedule. I'll get <<his npc_primrose>> new uniform prepared. Be sure to tell <<him npc_primrose>> that <<he npc_primrose>> is now forbidden from partaking in such activities outside of work and that, if I catch wind of <<him npc_primrose>> breaking the rules, <<he npc_primrose>> will have <<his npc_primrose>> regular workday shifts replaced with remedial urinal duty.@@" You salute and make your way back out of the asylum. That went well.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: addres npc_primrose piss fetish
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_primrose_destruction_promiscuity_implementation") && State.hasPlayed("event_primrose_destruction_church_implementation") && (!$fetish.piss || State.hasPlayed("event_primrose_destruction_piss_implementation")) && State.hasPlayed("event_primrose_destruction_drugs_implementation")>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addWorkEvent "primrose_destruction_final" _nextDate>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You approach the desk and find <<=setup.getNpcName("npc_primrose","first")>> working on a new "training" regiment for <<his npc_primrose>> test subjects. <<his npc_primrose>> eyes flick to you for a moment before returning to <<his npc_primrose>> monitors.<br>
<br>
"@@.npc_primrose;Yes, <<=$player.first_name>>?@@" <<He npc_primrose>> asks flatly. You inform <<him npc_primrose>> that <<=setup.getNpcName("npc_evil_nurse","formal")>> has banned <<him npc_primrose>> from visiting the <<printShopName 'sex_club'>> bathrooms and that <<he npc_primrose>> now has a pair of executive bathroom shifts during the weekend.<br>
<br>
"@@.npc_primrose;Understood.@@" You cock an eyebrow at the scientist, surprised to hear <<him npc_primrose>> so accepting of the new change. "@@.npc_primrose;I will report for my shifts on time and in uniform. Thank you, <<=$player.first_name>>, for your ongoing service to the company.@@" It seems like you aren't going to get an immediate reaction. All the same, you make your exit. There isn't anything else you can do but wait.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: aftermath of npc_primrose piss fetish
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You bring up another bit of footage, this one showing archival footage from a bathroom security camera. You immediately recognise a smaller version of the executive bathrooms... and identify that <<=setup.getNpcName("npc_primrose","first")>> is one of the urinals on staff. The only one, actually. The footage is sped up; there are no occupants. It's rather unsurprising, considering that very few employees actually work over the weekend.<br>
<br>
"@@.npc_ai;<<uc 'Look at this.'>>@@" The footage returns to normal speed and zooms in on <<=ps(setup.getNpcName("npc_primrose","first"))>> collar. You can see the connection point between the wall and the one of the collar's attachment point. After a moment of stillness, <<he npc_primrose>> lightly tugs against it. You smirk, recognising the minor motion for what it was: boredom. You had replaced a guilty pleasure shift at a popular nightclub with a lonely, isolated snooze-fest.<br>
<br>
"@@.npc_ai;<<uc 'We are making progress. Well done. That is all.'>>@@" <<=setup.getNpcName("npc_ai","first")>> closes the window and you return to work.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: initialize primrose destruction
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You notice a pop-up on your desktop as <<=ps(setup.getNpcName("npc_ai","first"))>> familiar calling card. You turn your attention to the private window and maximise it. Text begins to fill the chat as she speaks with you. "@@.npc_ai;<<uc 'Our hard work has paid off and our opportunity has presented itself.'>>@@" A live camera feed to <<=ps(setup.getNpcName("npc_primrose","first"))>> laboratory flickers into existence. The pink-haired doctor is slumped over <<his npc_primrose>> keyboard, eyes closed. <<He npc_primrose>> looks miserable and utterly exhausted.<br>
<br>
"@@.npc_ai;<<uc "I have taken control of <<=uc(ps(setup.getNpcName('npc_primrose','formal')))>> terminal. Within a matter of minutes, <<if $npc_primrose.fem>>her<<else>>his<</if>> life's work will be corrupted beyond use. There will be nothing salvageable left. No one else will be harmed by that research. Do I have your permission to continue?">>@@"<br>
<br>
You exhale through your nose as you look through the camera's electronic eye at the collapsed <<=setup.getNpcName("npc_primrose","first")>>. The weight of the decision hangs over you as you consider your options. If you tell <<=setup.getNpcName("npc_ai","first")>> to continue, there will be no going back.<br>
<br>
[<<moveTo "event_primrose_destruction_finale_2" "Do it." 60>>]<br>
[<<moveTo "event_primrose_destruction_finale_abort" "Wait! Don't do it! I can still fix him!" 60>>]
</div>/*#
#desc: back out of destroying primrose
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You stare at your options and consider everything that's happened. You look at the miserable scientist slumped over <<his npc_primrose>> keyboard. You know that, no matter which choice you take, <<his npc_primrose>> life is going to get even worse. Doubt creeps into your mind. Is this the right choice? Can you fix someone this broken? Would you be able to live with yourself if you thought there was still a chance?<br>
<br>
You tell <<=setup.getNpcName("npc_ai","first")>> to stand down; you want to take another crack at breaking <<=setup.getNpcName("npc_primrose","first")>> from the hypnotic hold the company has on <<him npc_primrose>>. There is a pause, punctuated only by a single message:<br>
<br>
"@@.npc_ai;<<uc '...'>>@@"<br>
<br>
Your heart races as you worry that <<=setup.getNpcName("npc_ai","first")>> may send the footage regardless. You only relax when she relents. "@@.npc_ai;<<uc 'As you wish. I will hold onto our leverage and let you make your attempt. We will find another opportunity to enact this plan if you change your mind. If you are dedicated to this new course of action, my advice is to act quickly.'>>@@"<br>
<br>
The video feed and chat window both close as you are left alone with your thoughts. You might have passed up your best opportunity to remove a piece from the board but you know in your heart that this was the right choice. You cannot condemn someone to damnation without being 100% positive it is the right choice.<br>
<br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: choose primrose destroy fate
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_ai', 'missions', 'theme_primrose_destruction_status_1')>>
<<if _themeId != -1>>
<<set $npc_ai.themes.missions[_themeId].repeatable = false>>
<</if>>
<<if $currentTasks.hasOwnProperty("primrose_redeem_lab_1")>>
<<completeTask 'primrose_redeem_lab_1' $now false>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You give <<=setup.getNpcName("npc_ai","first")>> the go-ahead. The video feed remains live, leaving you wondering what is happening off-screen as you stare at the doomed <<if $fetish.sissy>>sissy <</if>>scientist. You can see something happening on the monitors as <<=setup.getNpcName("npc_ai","first")>> manipulates <<=ps(setup.getNpcName("npc_primrose","formal"))>> work, but it is impossible to tell what without zoom. All the same, you watch with rapt focus. If <<=setup.getNpcName("npc_primrose","first")>> were to awaken, <<he npc_primrose>> would be able to stop the process and the entire plan would fall apart. You only let out your held breath when <<=setup.getNpcName("npc_ai","first")>> messages you once more. "@@.npc_ai;<<uc 'It is done.'>>@@"<br>
<br>
The room looks almost the same as when the process began. Some part of you assumed there would be something more noticeable but there is little to report. You can barely make out the screens monitoring the test subjects on the far wall have error messages on them but that is it. No flashing red lights or sirens. Just the quiet destruction of harmful knowledge.<br>
<br>
You let out a sigh of relief. You've experienced the doctor's work first hand and know the effects it can have on the body and mind. Knowing that no one else would ever be a victim to it brings you comfort. "@@.npc_ai;<<uc 'There is still one matter to discuss.'>>@@" You ask what it is. "@@.npc_ai;<<=uc(setup.getNpcName("npc_primrose","formal"))>> <<if $npc_primrose.fem>>her<<else>>him<</if>>self.@@"<br>
<br>
"@@.npc_ai;<<uc 'Through your actions, <<=uc(setup.getNpcName("npc_primrose","formal"))>> has accumulated multiple behavioural infractions. The discovery of <<if $npc_primrose.fem>>her<<else>>his<</if>> "negligence" will result in disciplinary measures that will remove <<if $npc_primrose.fem>>her<<else>>him<</if>> from play for the foreseeable future. <<if $npc_primrose.fem>>Her<<else>>His<</if>> fate will be decided by whoever takes <<if $npc_primrose.fem>>her<<else>>him<</if>> into their custody. Rather than leave things to chance, I have narrowed it down to three candidates. You may choose which one.'>>@@"<br>
<br>
"@@.npc_ai;<<uc '<<=uc(setup.getNpcName("npc_evil_nurse","full"))>> would be more than happy to find a reason to permanently reassign <<=uc(setup.getNpcName("npc_primrose","formal"))>> as her ward. Her care would be cruel and draconian, as you well know. <<=uc(setup.getNpcName("npc_discipline","formal"))>>, the HR Director of Discipline, would likely sentence <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> to years within the company dungeon. While strict, she would be fair in her punishment.'>>@@"<br>
<br>
There was a pause before she continued. "@@.npc_ai;<<uc '<<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> work has led to further tightening the grip <<if $fetish.sissy>>SISSI<<else>>the company<</if>> holds on its employees. You have felt that grip firsthand. That said, I would understand if you wished to express some level of leniency in his punishment. By my calculation, <<=uc(setup.getNpcName("npc_development","formal"))>> is the only candidate with both the authority to take another employee into her custody and the disposition to mend <<if $npc_primrose.fem>>her<<else>>his<</if>> broken mind and body.'>>@@"<br>
<br>
"@@.npc_ai;<<uc 'In the end, the decision is yours. I will not act without your direction. You know him better than I or any of our comrades.'>>@@"<br>
<br>
You think silently on your memories of <<=setup.getNpcName("npc_primrose","first")>> and <<his npc_primrose>> history in the company. You know that, no matter who you choose, <<he npc_primrose>> will be punished. The choice is a matter of severity... and what will be left of <<him npc_primrose>> afterwards. The gravity of the decision weighs on you as you respond.<br>
<br>
[<<moveTo "event_primrose_destruction_finale_development" 'Send the footage to <<=setup.getNpcName("npc_development","formal")>> in the form of an employee wellness report.' 600>>]<br>
[<<moveTo "event_primrose_destruction_finale_discipline" 'Send the footage to <<=setup.getNpcName("npc_discipline","formal")>> in the form of an employee indictment.' 600>>]<br>
[<<moveTo "event_primrose_destruction_finale_nursula" 'Send the footage to <<=setup.getNpcName("npc_evil_nurse","formal")>> in the form of an employee commitment transfer.' 600>>]<br>
[<<moveTo "event_primrose_destruction_finale_dominance" 'Could <<=setup.getNpcName("npc_primrose","formal")>> be put into your custody instead?' 600>>]
</div>/*#
#desc: assign primrose to hr development
#status: RELEASED 0.9.2.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.charImage("npc_development") setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_ai","first")>> that you'd like her to send the footage to <<=setup.getNpcName("npc_development","formal")>>. Even with everything <<=setup.getNpcName("npc_primrose","first")>> has done, <<he npc_primrose>> is still a victim of <<=ps(setup.getNpcName("npc_boss","formal"))>> schemes. <<his npc_primrose>> mind, body, and career had all been upended by the larger game being played. The least you can do is give <<him npc_primrose>> a merciful warden. "@@.npc_ai;<<uc 'Understood. I will compile the footage into an anonymous report submitted on <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> behalf.'>>@@"<br>
<br>
You pass the time with your work until the video feed turns on once more. <<=setup.getNpcName("npc_primrose","first")>> is still blacked out against his desk. The door slides open and <<=setup.getNpcName("npc_development","formal")>> steps into the sterile laboratory. Her stern eyes pass over the environment before settling on the collapsed scientist. She takes a few steps forward before placing a hand on <<=ps(setup.getNpcName("npc_primrose","first"))>> shoulder to coax <<him npc_primrose>> awake. "@@.npc_development;<<=setup.getNpcName("npc_primrose","formal")>>?@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> jolts awake and makes an incoherent noise as <<he npc_primrose>> attempts to collect himself. "@@.npc_primrose;Governess—@@" <<his npc_primrose>> voice is weak and wavering. <<he npc_primrose>> looks through <<his npc_primrose>> visor at <<his npc_primrose>> monitor, searching for the time. "@@.npc_primrose;Forgive me... I must have—@@" <<his npc_primrose>> attention is divided. <<he npc_primrose>> has begun to notice the plethora of error messages coming from the test subjects' current simulations. <<his npc_primrose>> confusion turns to panic as <<he npc_primrose>> reads off error codes in quick succession, fingers racing against the keys. "@@.npc_primrose;No no no no no—@@"<br>
<br>
"@@.npc_development;What is the matter?@@" <<=setup.getNpcName("npc_development","formal")>> asks. The brief sneer of distaste at the sudden pivot away from her is replaced by genuine worry at <<=ps(setup.getNpcName("npc_primrose","first"))>> panicked look. <<his npc_primrose>> voice wavers painfully as he tries to rationalise what <<he npc_primrose>> is reading.<br>
<br>
"@@.npc_primrose;T-the simulation environment is corrupted. Everything is corrupted. All of my work is... useless. It's all gone...@@" Tears well up in <<his npc_primrose>> eyes as he begins to sob. The <<=setup.getNpcName("npc_development","title")>> places her hand back on <<=ps(setup.getNpcName("npc_primrose","first"))>> shoulder as she looks at <<his npc_primrose>> computer and then back to the stairs leading to <<his npc_primrose>> loft. Her frown deepens.<br>
<br>
"@@.npc_development;You are one of the employee housing test cases, aren't you? You live here in your lab?@@" She pauses, continuing only when he nods. "@@.npc_development;I knew it. This is why I objected to this program. The disappearance of any kind of work/life balance leads to sloppiness. Plus with the sheer number of hours you have been putting in... it was only a matter of time until something happened.@@" <<=ps(setup.getNpcName("npc_development","formal"))>> voice does not hold anger or disappointment. She sounds... sympathetic. Her softness hints at pity.<br>
<br>
"@@.npc_development;<<=setup.getNpcName("npc_primrose","formal")>>, please come with me.@@" <<=setup.getNpcName("npc_primrose","first")>> looks up to the Governess silently, already beginning to rise to <<his npc_primrose>> feet. <<=setup.getNpcName("npc_development","formal")>> continues to speak as she fastens a leash to <<his npc_primrose>> collar: "@@.npc_development;From the report on your wellbeing, your recent work record, and your current state, I deem you unfit for your current position. You are hereby enrolled into the Employee Renewal Program. You will undergo supervised study and coursework to teach you healthy work practices and then be assigned a new position in the company once I believe you are fit for duty once more.@@"<br>
<br>
The stern, business-like tone faded and was replaced by one carrying a touch more softness. "@@.npc_development;I remember the prototype you showed me some time ago. While I did not have use for it, I believe your heart is in the right place. I could use you as a teaching assistant. For now, though... let's get you away from here. I think a change of scenery may do you some good.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","first"))>> knees are quaking. <<he npc_primrose>> stares up at the <<=setup.getNpcName("npc_development","title")>> blankly for a few seconds before silently nodding <<his npc_primrose>> head. <<he npc_primrose>> follows in behind her, eyes lowered. The feed cuts away, leaving only you and <<=setup.getNpcName("npc_ai","first")>>. "@@.npc_ai;<<uc 'This part of our mission is complete. <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> fate is in <<=uc(ps(setup.getNpcName("npc_development","formal")))>> hands now. Strange. I believe I am experiencing the human phenomenon of closure.'>>@@"<br>
<br>
"@@.npc_ai;<<uc 'Thank you for your part in this, Unit '>><<=uc($player.first_name)>>. <<uc 'Please continue with your work. We will formulate the next phase of our plan later.'>>@@"<br>
<br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: assign primrose to discipline
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.charImage("npc_discipline","npc_discipline_3") setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_ai","first")>> to send the footage to <<=setup.getNpcName("npc_discipline","formal")>>. <<=setup.getNpcName("npc_primrose","first")>> deserves to be punished for <<his npc_primrose>> part in things, but that punishment should be managed by someone who would mete it out fairly. <<=setup.getNpcName("npc_ai","first")>> responds "@@.npc_ai;<<uc 'understood. I will compile the footage into an employee indictment.'>>@@" You nod, watching as the feed goes dark. You return to your work.<br>
<br>
The feed reopens nearly twenty minutes later. You are looking into <<=ps(setup.getNpcName("npc_primrose","first"))>> lab again. The door opens and <<=setup.getNpcName("npc_discipline","formal")>>, flanked by two dominatrix assistants, enters the lab. She furrows her brow when she sees that <<=setup.getNpcName("npc_primrose","first")>> is still blacked out. She clears her throat and speaks. "@@.npc_discipline;<<=setup.getNpcName("npc_primrose","formal")>>.@@" The pink-haired <<if $fetish.sissy>>sissy <</if>>scientist jolts awake, looking around in confusion as the assistants flank <<him npc_primrose>> on either side.<br>
<br>
"@@.npc_discipline;I had been sent a report that you were sleeping on the job; it appears the report was accurate.@@" <<=setup.getNpcName("npc_discipline","formal")>> approaches <<his npc_primrose>> desk, looking into the eyes of the confused and scared scientist. "@@.npc_discipline;I have seen more than a few reports about your behaviour as of late. Poor work, late assignments, and now this, caught asleep at your desk while you have unresolved errors on your monitor. Do you have anything to say in your defence?@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> tries to find <<his npc_primrose>> words as <<he npc_primrose>> stares at <<his npc_primrose>> monitors with growing horror. The error messages had been flashing since <<=setup.getNpcName("npc_ai","first")>> had relinquished control over <<his npc_primrose>> computer. The colour drains from <<his npc_primrose>> face as <<he npc_primrose>> reads error after error. "@@.npc_primrose;What... happened—@@" <<he npc_primrose>> moved to take <<his npc_primrose>> mouse but was restrained by one of the assistants at the sight of <<his npc_primrose>> sudden movement. "@@.npc_primrose;I don't understand—I wasn't running this—@@"<br>
<br>
"@@.npc_discipline;The security footage showed that no one entered or left your lab during your transgression. You were in here alone. This failure is yours alone. If you take responsibility for this, we can handle this more smoothly. But make no mistake, this transgression WILL be handled@@" <<=setup.getNpcName("npc_discipline","formal")>> states in precise, controlled terms. When she speaks, she does so with purpose. <<=setup.getNpcName("npc_primrose","first")>> is on the verge of tears, <<his npc_primrose>> visor fogging up. "@@.npc_discipline;Do you have anything to say in your defence, <<=setup.getNpcName("npc_primrose","formal")>>?@@"<br>
<br>
"@@.npc_primrose;...no, <<=setup.getNpcName("npc_discipline","formal")>>.@@"<br>
<br>
The twin assistants guide <<=setup.getNpcName("npc_primrose","first")>> to <<his npc_primrose>> feet and tucked <<his npc_primrose>> arms behind <<his npc_primrose>> back. <<his npc_primrose>> arms are fastened into an armbinder while <<his npc_primrose>> ankles are shackled together. <<he npc_primrose>> does not resist. <<=setup.getNpcName("npc_discipline","formal")>> attaches a leash to <<his npc_primrose>> collar, gazing into <<his npc_primrose>> visor once more. "@@.npc_discipline;<<=setup.getNpcName("npc_primrose","full")>>, I find you guilty of gross breach of contract and multiple counts of improper employee conduct. As per the terms of your employment, you will serve the duration of your contract in the company prison plus an additional term of up to five years contingent on the results of the investigation into the extent of damage caused by your negligence.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> does not speak. The only acknowledgment <<he npc_primrose>> gives is a weak, nearly invisible nod. <<=setup.getNpcName("npc_discipline","formal")>> stares down at the scientist sternly for several moments before softening ever so slightly. "@@.npc_discipline;It pains me to see someone so dedicated to their work fall on such hard times. However, I believe that you will be reinstated if you take your punishment with grace. If it comes as any small comfort, you look quite fetching in orange.@@" The faintest of smiles flickers across <<=ps(setup.getNpcName("npc_primrose","first"))>> face as the group exits the lab.<br>
<br>
The feed ends. <<=setup.getNpcName("npc_ai","first")>> sends you a new message. "@@.npc_ai;<<uc 'This part of your mission is complete. <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> fate is now in <<=uc(ps(setup.getNpcName("npc_discipline","formal")))>> hands. Thank you, Unit '>><<=uc($player.first_name)>>. <<uc 'I am experiencing a new feeling. I believe it is closure. We will reflect on this feeling and formulate the next step in our plan when we meet next.'>>@@" The window closes. You return to your work.<br>
<br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: assign primrose destruction to npc_evil_nurse
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.charImage("npc_evil_nurse") setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_ai","first")>> to send the footage to <<=setup.getNpcName("npc_evil_nurse","formal")>> . If there is someone who would leap at the chance to spend hours on end disciplining <<=setup.getNpcName("npc_primrose","first")>>, and thus keeping the scientist out of the way and eliminate <<his npc_primrose>> potential threat, it is the diabolical nurse.<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> responds "@@.npc_ai;<<uc 'understood. I will compile the footage and an employee commitment transfer to <<=uc(setup.getNpcName("npc_evil_nurse","full"))>>. I will alert you of any further updates.'>>@@" The chat window closes. You return to work.<br>
<br>
You do not have to wait long to get an update. A window opens on your desktop showing a live feed of <<=ps(setup.getNpcName("npc_primrose","first"))>> lab. Considering the short wait, you assume <<=setup.getNpcName("npc_evil_nurse","formal")>> moved the moment she saw the message, and you have a mental image of her racing down the halls atop her steep ballet heels.<br>
<br>
The door slides open and <<=setup.getNpcName("npc_evil_nurse","formal")>> strides in. She is pulling with her a wheeled dolly modified to transfer patients as well as a bundle of items attached to the underside of the metal mover. While the scientist does not stir when she enters, <<he npc_primrose>> jolts awake when she speaks.<br>
<br>
"@@.npc_evil_nurse;Caught in the fucking act.@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> hisses as she encroaches upon <<=ps(setup.getNpcName("npc_primrose","first"))>> space. She grabs the back of <<his npc_primrose>> head harshly, looking into <<his npc_primrose>> tired eyes. "@@.npc_evil_nurse;When I received the report reading you were asleep at your desk, I assumed it was an error. I told myself that there was no way that you would be stupid enough to do something else to so disappoint me, considering your recent performance. Yet here you are, hopped up on <<=setup.getItemName("sissy_pill_mk1")>> fantasising about... well, who knows, though I would remind you of the old adage that, should you talk back to me in your sleep, you wake up and apologise!@@" She grins as <<=setup.getNpcName("npc_primrose","first")>> blanches, "@@.npc_evil_nurse;No matter, I am about to turn your life into a personalised nightmare marked by obedience and exquisite, exquisite pain...@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> tries to defend <<him npc_primrose>>self but <<=setup.getNpcName("npc_evil_nurse","formal")>> is having none of it. She forces <<his npc_primrose>> mouth open and stuffs an inflatable phallic gag behind <<his npc_primrose>> teeth before locking it around <<his npc_primrose>> head. "@@.npc_evil_nurse;Shut it. No excuses. I told you that I'd shut you down if you stepped out of line again and here we are. You have no one to blame but yourself.@@"<br>
<br>
The woman's eyes turn towards <<his npc_primrose>> monitors, reading the error codes to herself. Her brows furrow and then rise in shock and anger as she slaps <<=setup.getNpcName("npc_primrose","first")>> so hard <<he npc_primrose>> falls out of <<his npc_primrose>> chair. "@@.npc_evil_nurse;You idiot... You IDIOT!@@" She sucks air in through her clenched teeth as she picks <<him npc_primrose>> up enough to force <<him npc_primrose>> to look at the monitor and all the errors. "@@.npc_evil_nurse;Backing up your machine while running the encoder? Are you high? The back-up is going to pull incomplete data while creating a corrupted encode! You somehow found a way to destroy both the client and server-side version at the same time. You've set your own research back at least six months trying to fix— oh my Goddess.@@" You've never seen <<=setup.getNpcName("npc_evil_nurse","formal")>> this angry. You are shocked she doesn't explode.<br>
<br>
"@@.npc_evil_nurse;Strip. NOW.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> rushes to acquiesce to the furious nurse's request, removing <<his npc_primrose>> black plugsuit and standing naked before <<=setup.getNpcName("npc_evil_nurse","formal")>> who quickly stuffs <<him npc_primrose>> into a white bodysuit and then a matching straitjacket. She clasps the back of the rubber garment, sliding padlocks into the buckles as well as the buckle on <<his npc_primrose>> gag. She grabs the bladder to the inflatable bit and gives it a few angry squeezes before moving on. She clasps shackles to <<his npc_primrose>> legs, hobbling <<his npc_primrose>> movement before dragging <<him npc_primrose>> to the dolly. With a few straps, <<he npc_primrose>>'s ready to be moved to another floor.<br>
<br>
"@@.npc_evil_nurse;Your life is over. Your lab is mine. I'll be back later to see what I can salvage, if that is even possible. As for you... you have a bright future as my newest test subject. Oh the sights I have to show you! I am going to take out each and every one of your failures on your body and mind until you shatter and then I am going to fuck whatever is left.@@" She leans in closer, almost whispering in <<=ps(setup.getNpcName("npc_primrose","first"))>> ear as her fingers run along <<his npc_primrose>> rubber-encased body. "@@.npc_evil_nurse;And then... I'm going to do it again. Over and over until you are as broken and mindless as one of your dolls, ground into the dust that I will use to have you polished and smooth inside and out...@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> shudders... whether in fear or arousal, you could not say, but you wince as you watch <<=setup.getNpcName("npc_evil_nurse","formal")>> wheels <<=setup.getNpcName("npc_primrose","first")>> out of <<his npc_primrose>> lab. The feed goes dark. <<=setup.getNpcName("npc_ai","first")>> reopens chat: "@@.npc_ai;<<uc 'This part of the mission is finished. <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> fate is in <<=uc(ps(setup.getNpcName("npc_evil_nurse","full")))>> hands now. Thank you, Unit '>><<=uc($player.first_name)>>. <<uc 'We are one step closer to achieving our goals together.'>>@@"<br>
<br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: assign primrose destruction to self
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask if you can take <<=setup.getNpcName("npc_primrose","first")>> into your own custody. <<=setup.getNpcName("npc_ai","first")>> responds: "@@.npc_ai;<<uc "possibly. Let me analyse <<=uc(ps(setup.getNpcName('npc_primrose','formal')))>> contract and the company's guidelines once more.">>@@" She's nearly done by the time you finish reading her message. "@@.npc_ai;<<uc 'Yes, it would be possible if you were the one to submit the behavioural report and were present at <<if $npc_primrose.fem>>her<<else>>his<</if>> capture. Are you sure that you desire that degree of responsibility? You have other priorities to get to, after all...'>>@@"<br>
<br>
You take a moment to think about it. You ask what all that would entail. "@@.npc_ai;<<uc 'After a period of debriefing to ensure that <<=setup.getNpcName("npc_primrose","formal")>> could not leak any company secrets, <<=setup.getNpcName("npc_primrose","formal")>> would be yours to do as you wished while you work at SISSI for at least the duration of <<if $npc_primrose.fem>>her<<else>>his<</if>> contract plus a probationary period. This is to prevent fraud where an employee would breach their contract and then be released by their new dominant.'>>@@"<br>
<br>
"@@.npc_ai;<<uc 'Historically, those who breach their contracts become servants. Housekeepers, personal assistants, service tops, and the like. Are you interested in pursuing this path? I could modify our plan slightly for the sake of giving you a proper trophy.'>>@@"<br>
<br>
[<<moveTo "event_primrose_destruction_finale_dominance_yes" "Yes I am." 60>>]<br>
[<<moveTo "event_primrose_destruction_finale_dominance_no" "No I am not." 60>>]
</div>/*#
#desc: dominate destroyedprimrose
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'primrose_dominance'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You type your confirmation. <<=setup.getNpcName("npc_ai","first")>> responds "@@.npc_ai;<<uc 'understood. I will keep a backdoor open in <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> computer. I will submit the behavioural report to the appropriate parties. Someone else will handle <<if $npc_primrose.fem>>her<<else>>his<</if>>. Until then, continue working as usual.'>>@@"<br>
<br>
You exhale and nod. This will be quite the change for both of you but it will be nice to have your own servant.<br>
<br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: abort taking control of destroyed primrose
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You type that you've had second thoughts. As nice as it sounds, you aren't ready to have that level of control over someone else. "@@.npc_ai;<<uc 'Understandable. As stated before, your other options are <<=uc(setup.getNpcName("npc_development","formal"))>>, <<=uc(setup.getNpcName("npc_discipline","formal"))>>, or <<=uc(setup.getNpcName("npc_evil_nurse","full"))>>.'>>@@"<br>
<br>
[<<moveTo "event_primrose_destruction_finale_development" 'Send the footage to <<=setup.getNpcName("npc_development","formal")>> in the form of an employee wellness report.' 600>>]<br>
[<<moveTo "event_primrose_destruction_finale_discipline" 'Send the footage to <<=setup.getNpcName("npc_discipline","formal")>> in the form of an employee indictment.' 600>>]<br>
[<<moveTo "event_primrose_destruction_finale_nursula" 'Send the footage to <<=setup.getNpcName("npc_evil_nurse","full")>> in the form of an employee commitment transfer.' 600>>]
</div>/*#
#desc: dominate destroyed primrose
#status: RELEASED 0.9.2.0
#ignore_spell: w
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.charImage("npc_guard","npc_guard_security") setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You make your way towards <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab. Your phone pings; when you check, you can see a message from <<=setup.getNpcName("npc_ai","first")>>. "@@.npc_ai;<<uc 'Wait outside for <<=uc(setup.getNpcName("npc_guard","formal"))>>.'>>@@" You nod to yourself and wait in the hallway. Sure enough, the security agent arrives shortly. She strides confidently, head held high with her usual boisterous demeanour.<br>
<br>
"@@.npc_guard;Hey <<=$player.first_name>>! How's it going?@@" She meets your eyes. "@@.npc_guard;I reviewed your report on the way here. If the situation is as bad as you claimed, we should act fast. And for your sake, well... hopefully it IS that bad. the penalty for false reports is pretty gnarly.@@" You gulp and nod your head. What did <<=setup.getNpcName("npc_ai","first")>> write? You didn't exactly get to see her handiwork but, after this long, if you can't trust her, you're doomed anyway.<br>
<br>
The two of you approach the door... and nothing happens. The magnetic lock does not disengage and the PA does not turn on. <<=setup.getNpcName("npc_guard","formal")>> stares at the camera for a few seconds before placing her employee ID against a security scanner attached to the door. "@@.npc_guard;Off to a bad start...@@" she grumbles as the door slides open.<br>
<br>
The lab is awash in red warning lights. <<=setup.getNpcName("npc_primrose","first")>> is on <<his npc_primrose>> feet, frantically moving from display to display trying to bring anything back online. Whatever <<=setup.getNpcName("npc_ai","first")>> did to <<his npc_primrose>> systems, it appears to have been fatal. Nearly every monitor has some manner of error message or bug readout. The resident VR programmer is so wrapped up in <<his npc_primrose>> work <<he npc_primrose>> doesn't even realise you and <<=setup.getNpcName("npc_guard","last")>> are in the room until <<he npc_primrose>> looks directly at you and yelps in confusion.<br>
<br>
"@@.npc_primrose;Officer! <<=$player.first_name>>!@@" <<he npc_primrose>> stammers, eyes turning to you a moment later. "@@.npc_primrose;W-what are you two doing here?@@"<br>
<br>
"@@.npc_guard;I am following up on a behavioural report submitted by <<=$player.first_name>> and I can see we had reason to be worried. Goddess above—@@" <<=setup.getNpcName("npc_guard","last")>> begins to wander around the room, examining the monitors before moving to <<=setup.getNpcName("npc_primrose","first")>> himself. "@@.npc_guard;What is going on?@@"<br>
<br>
"@@.npc_primrose;I-I don't know. There were suddenly numerous error messages—@@"<br>
<br>
"@@.npc_guard;Were these messages present before or after you fell asleep?@@"<br>
<br>
"@@.npc_primrose;Y-you saw...@@"<br>
<br>
"@@.npc_guard;Answer the question.@@"<br>
<br>
"@@.npc_primrose;A-after.@@"<br>
<br>
"@@.npc_guard;Is it fair to say that whatever happened to your system happened while you were asleep on the job?@@"<br>
<br>
"@@.npc_primrose;Y-yes <<=setup.getNpcName("npc_guard","formal")>>.@@"<br>
<br>
"@@.npc_guard;Put your hands behind your back.@@" <<=setup.getNpcName("npc_guard","formal")>> sighs as she takes a pair of shackles off of her belt. <<=setup.getNpcName("npc_primrose","first")>> obliges her, eyes downcast. She clamps <<his npc_primrose>> wrists together at the small of <<his npc_primrose>> back before attaching a second pair of manacles to <<his npc_primrose>> ankles. She then moves to clip a leash to the attachment point on <<his npc_primrose>> collar. "@@.npc_guard;<<=setup.getNpcName("npc_primrose","formal")>>, I find you guilty of gross breach of contract and multiple counts of improper employee conduct. I will be taking you to the Disciplinary Wing to debrief you of any and all company secrets in your mind. After that, you will be placed in <<=ps($player.first_name)>> custody to serve the remainder of your contract plus a probationary period. Do you understand your sentence?@@"<br>
<br>
"@@.npc_primrose;Yes, Officer...@@" <<=setup.getNpcName("npc_primrose","first")>> tried to handle the situation with as much grace as <<he npc_primrose>> could manage, <<his npc_primrose>> eyes flickering to you only for a moment before looking forward again.<br>
<br>
<<=setup.getNpcName("npc_guard","last")>> nods her head before turning to you again. "@@.npc_guard;Thank you for bringing this situation to our attention. Hopefully, after a few rounds of debriefing and deprogramming, <<he npc_primrose>> will make a fine subordinate. I will contact you when you are able to evaluate your property.@@" She gives you one last quick nod and a smile before leading <<=setup.getNpcName("npc_primrose","first")>> away.<br>
<br>
After the door closes behind her, the error messages flicker away. <<=ps(setup.getNpcName("npc_ai","first"))>> image fills the closest monitor as she speaks to you. "@@.npc_ai;<<uc 'Good work. <<=setup.getNpcName("npc_primrose","formal")>> is out of play. We are one step closer to achieving our goals. I am... interested in seeing what you have in mind for <<him npc_primrose>>. Keep up the good work.'>>@@"<br>
<br>
The screen flickers off. You smile to yourself. Mission accomplished, and something to look forward to.<br>
<br>
[<<moveTo "company_lobby" "Time to head out." 120>>]
</div>/*#
#desc: first time using the home VR
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<<if setup.checkSleepWear() == "not_sleepwear">>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You get ready for bed and examine the device that <<=setup.getNpcName("npc_primrose","first")>> gifted you for participating in <<his npc_primrose>> demonstration. The black plastic carrying case had a duct tape label over the outer shell reading "Project HypnOS." Inside the heavy case is a prototype home hypnosis unit using the same technology you've seen within <<=ps(setup.getNpcName("npc_primrose","first"))>> laboratory. Everything is custom-made for this particular unit meaning it is far from pretty looking. The normally portable kigurumi mask is connected to a large metal interface adaptor wired to one of the corporate work laptops you've seen around the office. While the modern variation of the mask contained a wireless adapter and an internal power supply, this one has neither.<br>
<br>
You check the mask first; the inside is about what you expected: a phallic gag that would push into the back of the wearer's throat and provided water, liquid nutrients, and chemical agents as needed, a pair of curved screens to create depth within the virtual environments, and thick pads around a set of internal speakers to isolate the wearer to just the sounds of the simulation. What is new was the web of metal contacts within the cap of the mask. These contacts would touch against your scalp and allow the mask to transmit the virtual environment into your mind while the wearer slept. It would feel as if you were simply dreaming the VR routine.<br>
<br>
You put the mask to one side and turn to the laptop. You open it up and are immediately greeted with a number of sticky notes taped around the screen. Some of them are clearly by and for <<=setup.getNpcName("npc_primrose","first")>> and contain numerous reminders of things to do. A few others look important for your use; most specifically, set-up procedures. The rig requires an external power supply and cannot be run off of the laptop's internal battery. Thankfully you had a surge protector with a few open slots ever since <<=setup.getNpcName("npc_exgirlfriend","first")>> moved out. Secondly, it needed a wired internet connection. Another simple fix; as you find an ethernet cable coiled in the bottom of the box like a slender snake.<br>
<br>
The instructional pamphlet within the box mentions "taking precautions to protect yourself and the prototype from damage while in use." You raise an eyebrow as you examine the diagrams of "safety strap arrangements" and "safe restrictive clothing" that one can use to "limit extraneous movement while sleeping." While the booklet was being coy, you can tell that it is recommending that you tie yourself down before activating the module. <<if setup.hasUpgrade($bed, 'bed_bondage_gear_2') || setup.hasUpgrade($bed, 'bed_bondage_gear')>> Thankfully, you already have something suitable installed.<<else>> You don't have anything that fits the bill. You wager the sex toy store at the mall would have something appropriate.<</if>><br>
<br>
You look over your handiwork after everything is done; the laptop resting upon your nightstand and the mask upon your pillow. The mess of wires from the two items definitely disagreed with the otherwise organised layout of your bedroom, but a few zip ties make it a little less distracting. You turn on the laptop and log in with your work credentials. The desktop background is an infographic explaining how to boot up the VR program. You click around to get everything set up, only stopping when you find a menu asking which program you wish to run: the relaxation-focused routine or an "EXPERIMENTAL" disciplinary simulation.<br>
<br>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear_2') || setup.hasUpgrade($bed, 'bed_bondage_gear')>>
[<<moveTo "event_primrose_home_vr_bridge_first" "Choose the relaxation module." 120 "<<set $scene.relax=true>>">>]<br>
[<<moveTo "event_primrose_home_vr_bridge_first" "Choose the discipline module." 120 "<<set $scene.relax=false>>">>]<br>
<</if>>
[<<moveTo "room_bedroom" "Put things away." 300>>]
</div>/*#
#desc: bridge between scenes
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.tuckin = false>>
<<applyExperience 'bondage' 15 'normal' $ALONE>>
<<addItem "kig_vr_mask">>
<<wearItem "kig_vr_mask" true>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You choose your route. The laptop hangs for just long enough for you to think that it froze before it shows a friendly-looking pop-up letting you know that you are good to go. The pop-up itself is of a cartoony animation of <<=setup.getNpcName("npc_primrose","first")>> giving a thumbs up. <<printThought "Guess <<he npc_primrose>> can draw, too.">><br>
<br>
Ready for sleep, you lower the lights and crawl into bed. You unlatch the locking mechanisms of the mask and bring it around your head, fitting the internal gag between your lips. While far from modest, and unmistakably phallic in shape, it rests comfortably in your throat and doesn't feel too distracting<<if setup.getTotalValue("penis") > 15>>, well discounting that ANY cock is enough to set your mouth to watering and spark dick-hungering thoughts<</if>>. You lay back against your mattress and stare up into the screen. The screens are dim and display the file name of the simulation along with a haze of soothing colors. It isn't long before you drift into sleep...<br>
<br>
<<if $scene.relax>>
[<<moveTo "event_primrose_home_vr_relaxation_first" "Dream..." 120>>]
<<else>>
[<<moveTo "event_primrose_home_vr_discipline_first" "Dream..." 120>>]
<</if>>
</div>/*#
#desc: relaxation hypnosis (first use)
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.forceSleep = true>>
<<set $scene.fallAsleep = setup.fallAsleep($scene.no_nightmares)>>
<<set $player.timebased.fatigue = 0>>
<<applyStress -30>>
<<spendWillpower 2>>
<<setTmpEffect 'vr_relax'>>
<</if>>
<<set $player.location to 'Rose Sea VR'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR >>
<div id="invframe" class="scrolltext">
You find yourself floating within a sea of pink liquid. You worry briefly that you are drowning only to realise that the liquid is fully breathable. It is a dream, after all. You are deep enough in the liquid that you cannot see the surface, yet high enough that the colour of an unseen light source illuminates the water with a lovely pink glow. There are no fish or ocean life around you. There is simply stillness and silence.<br>
<br>
After a few seconds, soft electronic melodies began to pulse through the water. The soothing music is accompanied by a feminine voice. "@@.npc_generic_female1;Relax. You are safe. Nothing can harm you in this sanctuary.@@" A wave of warm energy pulses through your body. The feeling is accompanied by a ray of beautiful rainbow colour rippling through the pink sea. "@@.npc_generic_female1;There is nothing to fear within this dream. Let go of your tension and anxieties. You are free.@@"<br>
<br>
The voice shifts, giving new instructions: "@@.npc_generic_female1;let go of your worries. Let them fall away from you and sink to the bottom. They are of no use to you here.@@" You are not sure how to fulfill the voice's instructions, but you decide to give it a try. You think about your rent and budgeting for the month. To your surprise, you see the word "rent" form before you out of concrete. It slowly sinks out of view, falling deeper into the abyss and out of sight. A weight disappears from within you. You feel more free. You imagine your work performance and how your boss thinks of you. The words "Work Performance" form and fall away. Each time something falls out of view, you feel a little more confident. A little more happy. A little more sure that everything is going to be okay.<br>
<br>
After you have given up all of the anxieties you can imagine, you notice a light far beneath you. A brilliant curtain of rainbow bubbles begins to rise from the depths and towards the surface. They brush against your body, rubbing sensually against your skin. The never-ending wave of bubbles form a cushion around your body, guiding you towards the surface. The exhilarating rush of the ride fills you with joy and anticipation as the surface approaches faster and faster.<br>
<br>
The surface seems so far way, and you sleep on...<br>
<br>
<<include "calcSleepTime">>
[<<moveTo "event_primrose_home_vr_end" "Sleep on." $scene.sleepTime>>]
</div>/*#
#desc: discipline hypnosis (first use)
#status: RELEASED 0.8.7.0
#ignore_spell: mxtress,mx,akabur
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.forceSleep = true>>
<<set $scene.fallAsleep = setup.fallAsleep($scene.no_nightmares)>>
<<set $player.timebased.fatigue = Math.floor($player.timebased.fatigue/2)>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'skip' $ALONE>>
<<applyStress 20>>
<<setTmpEffect 'vr_punish'>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_himself_finishing_school'
1
'theme_primrose_finishing_school'
true
>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_himself_finishing_school_nyx'
1
'theme_primrose_finishing_school_nyx'
true
>>
<</if>>
<<set $player.location to 'Mont-Akabur Finishing School'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR >>
<div id="invframe" class="scrolltext">
You awaken within a rustic classroom. There are twenty five desks in a grid with you sitting in the centre of the front row. There is a polished wooden floor beneath you and a chalkboard directly in front of you. To your left is a wide window looking out into a pine forest and scenic mountain vista. A blue-and-red royal crest hangs above the chalkboard. The engraving reads Mont-Akabur Finishing School.<br>
<br>
"@@.npc_nightingale;Thank you for staying after class...@@" you nearly jump out of your chair as you realise that you are not alone. A towering figure walks past you, black thigh-high ballet boots clicking with each step. You recognise Mx. Nightingale, the "teacher" from <<=ps(setup.getNpcName("npc_primrose","formal"))>> punishment routine — clad in their white latex blouse with a high, frilly collar, a black latex pencil skirt holding tight over a skin-tone bodysuit. Black rubber opera gloves ride up their arms to just past the elbow. A pink crop rests on their hip, holstered against to their ivory-colored corset.<br>
<br>
"@@.npc_nightingale;I appreciate your dedication to improving your grade,@@" their voice is a sultry song on the air that drips with sexual energy in a soft French accent. Their face is caked with make-up, aggressively contoured and with a hint of glitter. Everything about them seems extreme almost to the point of parody, from their voluptuous figure to a voluminous wig pulled into a tight sexy teacher bun. "@@.npc_nightingale;The first step to becoming a perfect doll is realising that you are currently an imperfect employee. From there we can chip and grind away at every flaw until you are polished<<if $fetish.sissy>>, sissified<</if>> perfection. Please, follow me to the chalkboard.@@"<br>
<br>
You obey, rising to your feet and joining the figure at the front of the class. Behind them is a desk with a brass nameplate: Mx. Nightingale. The teacher pulls your attention back by placing the tip of their crop under your chin and guiding you to the board. "@@.npc_nightingale;You will be writing lines today,@@" they explain as you grasp the chalk in hand. "@@.npc_nightingale;You will write what I tell you and you will not give me any backtalk. When you finish writing, you will thank me for my benevolence. Am I understood?@@" You nod.<br>
<br>
"@@.npc_nightingale;Good. Now, write: I will not disobey my employer.@@" You start at the upper-left hand corner of the board and begin to write. As you write, you feel a pressure in your mind. It feels like you are engraving the words into your head. You have enough room on the board to write the phrase three times before moving on to the next line. The Mxtress teacher watches you like a hawk, tapping their crop against their gloved hand rhythmically. They give a quick smack of the crop against your bare rear after each completed line. When you finish your tenth line, they speak again.<br>
<br>
"@@.npc_nightingale;New line: I am an obedient wage slave. I do not think for myself.@@" You obediently give no response, simply writing once more. You can only fit this phrase twice before having to start a new line. You are having a harder time thinking the more you write. A nibble of fear in the back of your mind tries to rise to the surface and tell you to stop only to be silenced by a glance back over your writing. You raise the chalk once again. The distractions fade, the only stimuli you feel is the occasional whack against your ass.<br>
<br>
"@@.npc_nightingale;New line: Anyone who tries to divert me from my employer is my enemy.@@" You do not miss a beat, transitioning from one line to another. You let your personality flow out through your chalk, replaced by corporate propaganda. You feel your obedience crystallise and grow. You do not question what you are writing. You do not think critically about the words that are filling your mind. You simply accept the truths that your teacher has given you.<br>
<br>
You fill the entire board with writing. When you are finished, you set the chalk down against the tray and turn to face Mx. Nightingale. They grace you with a proud smile, nodding their head as they approach you. They press their rubber-encased body against your bare skin, your cheek against their large breasts as they brush their hand through your hair. "@@.npc_nightingale;Very good, <<=$player.first_name>>. I think you will be a good doll yet. I want you to stay behind every day to do lines with me. While you have done a good job, the work is not yet finished. We must continue until these truths become as natural as breathing and as constant as your heartbeat.@@"<br>
<br>
You smile. You thank the mxtress for their benevolence. They smile and lean in towards your ear, hot breath against your skin. They whisper something unintelligible. You sleep on...<br>
<br>
<<include "calcSleepTime">>
[<<moveTo "event_primrose_home_vr_end" "Sleep on." $scene.sleepTime>>]
</div>/*#
#desc: end of the first VR headset sequence
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "kig_vr_mask" true>>
<<deleteItem "kig_vr_mask">>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You stare into the blank screens before you. It takes a few minutes for you to recall your current situation. Reaching to the mask, you carefully unlatch the VR prototype. As you pull it away and put it aside the familiar sight of your room surrounds you. Your alarm clock is chirping to get your attention. A new day has begun.<br>
<br>
[<<moveTo "room_wake_up" "Get up." 120 "<<set $scene.dream = {}>>">>]
</div>/*#
#desc: taking the crystal to pawn
#status: RELEASED 0.8.7.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss","npc_boss_front")>>
<div id="invframe" class="scrolltext">
You pick up the crystal and place it in your bag. While you do not wish to distract <<=setup.getNpcName("npc_boss","formal")>> from <<his npc_boss>> incredibly busy and important work, you know that he will be interested in what you found and will know exactly what to do with it. Maybe <<he npc_boss>>'ll even reward you for your initiative! The thought of making <<=setup.getNpcName("npc_boss","formal")>> happy fills you with warmth and steels your resolve. Yes, <<he npc_boss>> will know what to do. <<=setup.getNpcName("npc_boss","formal")>> always knows what to do.<br>
<br>
You walk to work with renewed purpose, head held high. You are a beacon of corporate synergy and productivity. You pray that everyone who gazes upon you understands the importance of you and your work. A part of you pities them; they have never felt as strong a sense of purpose as you do in this moment. Maybe they will, one day... if they are hired by SISSI, of course.<br>
<br>
You enter the elevator and press the top button. You stand at attention for the ride, concentration unwavering. You feel like you should be worried about what comes next yet there is no fear in your heart. You trust <<=setup.getNpcName("npc_boss","formal")>> utterly and completely. You have nothing to be afraid of.<br>
<br>
[<<moveTo "room_data_crystal_bad_end_1" "Exit the elevator." 120>>]
</div>/*#
#desc: forgetting about the crystal
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You decide against taking the crystal to <<=setup.getNpcName("npc_boss","formal")>>. The information upon it is falsified, thus making it inconsequential. <<=setup.getNpcName("npc_boss","formal")>> knows everything that happens at the company, meaning <<he npc_boss>> likely already knows about the crystal. <<He npc_boss>> will act on <<his npc_boss>> own accord and in <<his npc_boss>> own way with or without you bringing it to <<his npc_boss>> attention. It is better to let <<him npc_boss>> handle it in <<his npc_boss>> own way without any interference. You wouldn't want to interfere with <<his npc_boss>> glorious plans.<br>
<br>
[<<moveTo "room_breakfast" "Continue on and start your day." 120>>]
</div>/*#
#desc: discipline vr bad ending
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You awaken from your nightly session of virtual discipline feeling wonderfully focused. After so much practice memorising every detail of corporate dogma you have finally cleansed the last thoughts of disobedience from your mind. Better yet, you have forgotten how to create such things. Your mind is a clean and orderly place filled to the brim with corporate speak and obedient control.<br>
<br>
You shower and get dressed like any other day, smiling to yourself as you prepare your uniform. When you finish getting dressed, you admire yourself in the mirror for a moment and let the feelings of pride wash over you. You are a perfect worker bee in the most incredible hive in the world.<br>
<br>
[<<moveTo "event_primrose_home_vr_punishment_ending_2" "Start your day." 120>>]
</div>/*#
#desc: working after night vr overload
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your days at SISSI are ones of glorious productivity. You know your duties better than anyone and strive to achieve top marks each and every day. While <<=setup.getNpcName("npc_manager","formal")>> finds your improved efficiency useful, she is still slightly offset by how enthusiastically you have embraced the company's word as law. You do not see how that could be a problem; after all, it is every employee's job to do everything in their power to raise the company to new heights.<br>
<br>
While you work your regular shifts as your desk, you begin to explore other options for additional hours. Even if it is unpaid, you still spend much of your free time on company property. There are even nights where you wind up crashing in <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab instead of heading home so as to not have to spend extra time commuting. While many of your fellow employees find your enthusiasm challenging, <<he npc_primrose>> always encourages you to give your very best.<br>
<br>
The peace comes to a head one Friday night as you return to <<=ps(setup.getNpcName("npc_manager","formal"))>> office. It is far past closing yet you have agreed to take on an additional night shift of data entry. Most nights, these extra shifts are a nice relaxing wind down where you can simply work and listen to music without the distractions of a full building. While technically rhythmic, your work playlist is full of remixes of <<=ps(setup.getNpcName("npc_boss","formal"))>> all-hands presentations layered over binaural beats — <<=setup.getNpcName("npc_primrose","first")>> really is such a talented individual! Artistic as well as scientific... though you suppose such powerful material as <<=ps(setup.getNpcName("npc_boss","formal"))>> godlike diction would make anyone an artist. After all, you would gladly listen to <<=setup.getNpcName("npc_boss","formal")>> read a phonebook... which would really be more of a list of people in need of being turned to <<his npc_boss>> glory, now that you think of it.<br>
<br>
You are looking at your phone when the door opens, ready to autopilot to your desk when a familiar voice breaks you out of your trance.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>? What are you doing here this late?@@" <<=setup.getNpcName("npc_manager","formal")>> steps out from her office, coat wrapped around her beautiful figure. She approaches you, worry etched into her face. "@@.npc_manager;Your shift ended hours ago. You should be getting your beauty sleep or spending time with your friends, not here in uniform.@@"<br>
<br>
You explain that you have taken an additional shift, beaming with pride as you add that you've been doing this for some time. While you expect <<=setup.getNpcName("npc_manager","formal")>> to be just as proud, she looks horrified. "@@.npc_manager;You've been doing what!? You know that isn't healthy! You have to maintain a proper work-life balance.@@"<br>
<br>
"@@.pc;A great company requires great sacrifice, and it is a Secretary's duty and honour to make that sacrifice! This <<if $fetish.sissy>>SISSI <</if>>Secretary spent so much of its career not even working 40 hours a week, they owe it to the company to try to make up for it! Nights and weekends are the least I can do.@@" You repeat back one of the many guiding principles from the company handbook, resolute in your righteousness. <<=setup.getNpcName("npc_manager","formal")>> stares at you in abject confusion. You are only confused by her lack of company pride.<br>
<br>
"@@.pc;Of course, if you desire the use of my body, that would take priority, but otherwise I really must get back to my work.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> body tenses as she remains frozen in place. A mix of emotions swirl in her eyes, face only occasionally twitching: indignation, sorrow, anger. You aren't sure which of those are for you or if she is thinking about something else but you know your shift has already started and you've wasted time explaining yourself that could have been spent typing.<br>
<br>
"@@.npc_manager;I... do not require use of your body. I won't... keep you any longer.@@" A part of you flinches for a moment. You can't think of a time where you've ever seen your manager relent on anything. She gives you the barest ghost of a smile as she approaches the elevator, placing her hand on your shoulder for just a moment before silently disappearing. Whatever feelings you have about the interaction have to wait; you have work to do.<br>
<br>
[<<moveTo "event_primrose_home_vr_punishment_ending_3" "Continue." 0>>]
</div>/*#
#desc: bad end after night vr overload
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = "vr_company_slave">>
<</if>>
<<set $player.location to 'Train Station'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR >>
<div id="invframe" class="scrolltext">
Time passes. You have become a model secretary. Your productivity is unmatched. A collection of accolades surround your workstation. While the glittering awards fill you with pride, the true reward is always the satisfaction of bettering the corporation who so graciously gave you a sense of purpose.<br>
<br>
One spring day, you spy a colorful poster in the cafeteria advertising the opening of <<if $fetish.sissy>>SISSI's<<else>>Social Interaction Service Syndicate Inc.'s<</if>> first extraterritorial habitat. It is a beautiful hexagonal structure within a climate controlled dome. Your heart jumps in your chest as you imagine living in corporate-controlled bliss far away from the corrupting influences of the outside world. Giddily, you swiftly return to your desk and begin the application process. You pause only momentarily when you realise that <<=setup.getNpcName("npc_manager","formal")>> would have to relinquish her hold on you if you wished to transfer to another office. Still, your excitement outweighs your fears a hundred fold and you approach her with the paperwork at the end of the day. To your surprise, she signs it after only a moment of hesitation.<br>
<br>
"@@.npc_manager;I am... sad to see you go but I know you will be happier living among your more... like-minded colleagues.@@" She hands the paper back to you and promises that she'll see you off when the time comes.<br>
<br>
It is two weeks later and you've said your goodbyes. You canceled your lease, had one last goodbye party with what few friends you had left, and packed up your desk. Most items from the outside world are not allowed in the hab but the company was gracious enough to "repossess" your belongings in exchange for a line of company credit once you arrive. Your high status within the secretary pool has given you a sizable scrip bonus waiting for you when you arrive in addition to an apartment bigger than the one you moved out of.<br>
<br>
The train platform is sectioned off to only employees; a pair of security officers scan your ID and search you before letting you past the checkpoint. True to her word, <<=setup.getNpcName("npc_manager","formal")>> is already there waiting for you. She gives you a sorrowful smile as she walks you through the checklist you made of everything you needed to do before leaving. You appreciate her support (even though you had already memorized and gone over the list a dozen times this week alone). After one final embrace, you let <<=setup.getNpcName("npc_manager","formal")>> go and watch her disappear into the crowd and out of your life.<br>
<br>
Your moment of quiet contemplation is broken by a familiar voice piercing through the crowd: "@@.npc_primrose;<<=$player.first_name>>? Is that you!?@@" From the same crowd emerges <<=setup.getNpcName("npc_primrose","first")>>, smiling from ear to ear.. and sporting some fresh new "assets." <<His npc_primrose>> sparkly pink rubber halter top is showing some considerable underboob while <<his npc_primrose>> black PVC booty shorts are struggling to contain <<his npc_primrose>> augmented rear. Both sets are obviously falsies, a small seam visible where the silicone meets flesh. They match <<his npc_primrose>> shirt, emblazoned with the words "Plastic is Fantastic!" <br>
<br>
You hug your zealous companion after <<he npc_primrose>> finishes mincing towards you on <<his npc_primrose>> platform heels. You ask what <<he npc_primrose>> is doing here and <<he npc_primrose>> explains: "@@.npc_primrose;so it's kind of a funny story. My lab got defunded. I was like... super sad about it but the hab is going to be a new start for me! I know they already handpicked their science team but I was able to convince the recruiter to give me a chance as a <<if $fetish.sissy>>SISSI <</if>>Secretary! I won't be an executive-level one like you but I'll still get to be a part of the company's future!@@"<br>
<br>
You congratulate <<=setup.getNpcName("npc_primrose","first")>> on seeing past the hardship and finding a new way that <<he npc_primrose>> could serve the company going forward. <<He npc_primrose>> nods rapidly, adding "@@.npc_primrose;I'm sure you can teach me the ropes on how to be as good a <<if $fetish.sissy>>SISSI <</if>>Secretary as you are. Maybe we can even be roommates?@@" You nod, saying that you like the sound of that. The once-scientist is clearly relieved to hear that, giving you another squeeze hug that sees you almost disappearing into <<his npc_primrose>> massive cleavage. "@@.npc_primrose;Awesome! We can talk about the arrangement during the ride. Speaking of which, let's go inside! The train will be leaving soon and it's a few stops between here and the hab, we don't want to miss out on seats and be forced to stand the whole trip!@@"<br>
<br>
The inside of the train is plush and decked out in luxurious trimmings. You quickly find your seats, settling in next to each other in one of the many rows of comfortable bucket seats. Naturally, each seat comes prepared with a <<if $player.body_ref.vagina>>or, in your case, two silicone facsimiles<<else>>silicone facsimile<</if>> of <<=ps(setup.getNpcName("npc_boss","formal"))>> heavenly cock to fill you during the trip. You remember from your excited research that train has been moving cross-country towards the site, picking up workers at each stop. You may be in the cabin for a few hours yet, though the high-end fittings of the passenger car will make the trip lovely all the same.<br>
<br>
A stewardess approaches moments later, offering to help the two of you get situated. The woman is dressed in a very fitted and stately uniform, her mouth hidden by a mask that covers her face from the eyes down. The bulge in her throat keeps her silent yet a small speaker hidden within her punishingly steep collar relays your instructions on her behalf.<br>
<br>
After welcoming you aboard she commences with tying you and <<=setup.getNpcName("npc_primrose","first")>>both down using the five point harness within the chair. Once your torsos are secured she continues on with ankle, thigh, bicep and wrist restraints so that you are nice and properly held in place. The crown jewel of the ensemble is a smooth drone helmet connected to the ceiling above you by a thick wad of cables. The rubberised gag inside the helmet will keep you fed and hydrated for the trip the internal screens will provide your entertainment and ensure that not a moment will be wasted that could be occupied with additional company training and reinforcement.<br>
<br>
You exchange one final excited look with <<=setup.getNpcName("npc_primrose","first")>> as you nod in obedient unison. The stewardess quickly fastens the helmet into place, unlatching it long enough to engulf your head while pushing the probing phallic gag past your welcoming lips and deep into your mouth. You absentmindedly suckle on it as the internal screen displays a sizzle reel of all the amazing things waiting for you at your new home.<br>
<br>
The train begins to glide forward, the vibrations of its movement sending stimulation straight through the <<if $player.body_ref.vagina>>dildos that are slowly fucking you<<else>>dildo that is now slowly fucking you<</if>>. Your heart jumps in your chest as you realise that you are about to leave this city and never see it again. Yet there is no fear or regret. You reach with the limited movement you have to interlock <<=ps(setup.getNpcName("npc_primrose","first"))>> fingers with yours. You are on your way to utopia. You could not possibly be a happier corporate <<if $fetish.sissy>>SISSI <</if>>slave.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
</div>/*#
#desc: relaxation ending bad end
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You awaken from your nightly hypnosis dive feeling incredibly relaxed. Every stress you've felt these past weeks has melted away to nothing and has left you feeling wonderfully light. You roll out of bed with a smile on your face, setting off for the shower. You don't have a care in the world. Nothing is going to bring you down. Your hypnotic trance will ensure that you have nothing to stress about.<br>
<br>
In fact, you find it very hard to be concerned about anything. It'll all work out. Your work, your bills, your relationships; they all have a habit of sorting themselves out. There's no reason to bother about any of them. You get dressed and head to work at a leisurely pace. It's all routine, anyways.<br>
<br>
Your work day is mellow. You don't push yourself; you find it hard to care about how good or bad your work is. You glide by on the bare minimum and before long, you're back at home again. Time for a few hours of gaming and then back to the relaxation simulation. And then to do it all again tomorrow.<br>
<br>
[<<moveTo "event_primrose_home_vr_relaxation_ending_2" "Repeat." 0>>]
</div>/*#
#desc: bad end from overload relaxing vr
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = "vr_mindless">>
<</if>>
<<set $player.location to ''>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR >>
<div id="invframe" class="scrolltext">
The routine you've set for yourself stretches into oblivion. You have no worries or stress. All the same, you also have no ambitions. You keep the same routine every day. Breakfast, work, lunch, work, one of a small handful of after work events, home, relaxation VR. Weekends are barely different. Days bleed together. You have no worries. The world will spin with or without you.
<br>
It doesn't concern you. You're content with the routine.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
</div>/*#
#desc: vr punishment dream ending stage 5
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You wake up from your nightly indoctrination feeling refreshed and relaxed, mind scrubbed of resistance. You stretch, take your shower, eat breakfast, and go through the morning routine as you have done a hundred times before. You even have a nice cup of coffee as you look over your living room. Your eyes linger on your computer, thinking over the past few weeks. Everything since the party and your ill-advised attempt to upset the order at the company replays back in your mind. You furrow your brow; something is slowly dawning on you but you aren't sure what yet.<br>
<br>
Then it hits you. Your blood runs cold as the mug of coffee slips from your fingers and bounces against the floor beneath you. You're doing it again! You're plotting against the company that was so gracious as to give you a second chance! You look at your hands; they are shaking. Did <<=setup.getNpcName("npc_ai","first")>> trick you? Did the outside world mislead you? Or are you naturally predestined to disobey the beautiful order that <<=setup.getNpcName("npc_boss","formal")>> imagines? The thought makes you sick.<br>
<br>
You grab your things and make for the door. <<=setup.getNpcName("npc_boss","formal")>> will know what to do. <<He npc_boss>> knows everything. If you explain your thoughts to <<him npc_boss>>, <<he npc_boss>> will surely understand!<br>
<br>
[<<moveTo "event_primrose_home_vr_punishment_ending_alternate_2" "Go to work." 0>>]
</div>/*#
#desc: brainwashed to join npc_boss
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You're surprised and relieved when your request to ascend to the CEO's office is approved. Maybe it was the pleading look you gave the camera? Either way, the door opens and you race towards <<=ps(setup.getNpcName("npc_boss","formal"))>> grand desk. <<He npc_boss>> is sitting behind it, staring at you incredulously. <<He npc_boss>> raises an eyebrow as you begin to explain your revelation in panicked, hasty sentences. You reveal everything, from <<=ps(setup.getNpcName("npc_ai","first"))>> continued existence to the plans you had made to "free" your friends. Only after you have nearly talked yourself hoarse does <<he npc_boss>> hold a hand to stop you from rambling further.<br>
<br>
"@@.npc_boss;Come here.@@" The CEO motions to you with <<his npc_boss>> hand. You hustle to <<his npc_boss>> side, guided to kneel by <<his npc_boss>> motions. <<=setup.getNpcName("npc_boss","formal")>> begins to stroke your head in an act of mock affection, a dark smirk crossing <<his npc_boss>> features. "@@.npc_boss;You've done the right thing, coming here and telling me about your moment of weakness. I had hoped that your time in our care may have worked the weakness out of you but I can see that you were released prematurely. Don't worry; your cell is ready and waiting.@@"<br>
<br>
<<if $npc_technician.flags.evil > 1 || $npc_psychiatrist.flags.evil > 1 || $npc_manager.flags.evil > 1 || $npc_admin.flags.evil > 3 || $npc_exgirlfriend.flags.evil > 1>>
You blush, realising that your misguided attempts to '"fix" your friends has reversed the improvements the CEO had instituted. You beg <<him npc_boss>> to undo your stupid, stupid mistake. <<He npc_boss>> laughs cruelly. "@@.npc_boss;Yes, we can undo your damage. With you cooperating, they won't be broken again.@@"<br>
<br>
<<else>>
You thank <<him npc_boss>> profusely, throwing yourself at <<his npc_boss>> feet. <<He npc_boss>> chuckles and adds "@@.npc_boss;Don't you worry your small, pathetic mind about your friends or your AI co-conspirator. I'll take care of everything. You like your friends how they are now, don't you? You think they are perfect just the way they are, yes? After all, they are programmed to my own design.@@"
<</if>>
<br><br>
You swallow whatever pride or hope you may have once had, telling <<him npc_boss>> that <<he npc_boss>>'s right. <<He npc_boss>> has improved everyone you used to know. They are far more efficient at their jobs and the company is what matters most. You can only hope that you will one day be so gloriously useful. The towering dominant nods in approval, beginning to unbutton <<his npc_boss>> pants and release <<his npc_boss>> massive meat from its silk prison. "@@.npc_boss;Good girl. I'll have <<=setup.getNpcName("npc_evil_nurse","formal")>> take you to your cell when we're done here. I'll have the recovery team in your apartment momentarily. Since you are down there, how about you show me exactly how thankful you are for my mercy?@@"<br>
<br>
[<<moveTo "event_primrose_home_vr_punishment_ending_alternate_3" "Yes <<Sir npc_boss>>!" 0>>]
</div>/*#
#desc: bad end: brainwashed to npc_boss
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = "vr_company_slave2">>
<</if>>
<<set $player.location to 'Private Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
Things settle into routine rather quickly. You take to your life as a permanent residence of the corporate dungeon quite enthusiastically. You throw yourself into your work with previously unseen vigour. You take every punishment with a smile, thanking your handler and asking for another round, insisting that you want to "make sure" you learn the lesson. In the limited time you are ever given to socialise, you gravitate back to your old friend group. You don't mind that they walk all over you. You don't mind that they degrade and berate you. It is what you deserve for your sins against the company, and you are more than thankful that your service might help to ensure their own continued loyalty.<br>
<br>
The routine perpetuates. You never step out of line again. You dedicate yourself to living a lifetime of penance to your employers, waking up every day with the single-minded goal of working to restore your image as a perfect, model employee. Your friends remain as their "purified" selves. You never hear from <<=setup.getNpcName("npc_ai","first")>> again.<br>
<br>
Everything is as it should be. Everything is running efficiently.<br>
<br>
You will be here forever.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
</div>/*#
#desc: npc_work_doctor arrives to yell at primrose
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You've barely begun chatting with the increasingly open <<=setup.getNpcName("npc_primrose","first")>> when there is a sound from the lab above, a scream of "@@.npc_work_doctor;<<uc '<<=uc(setup.getNpcName("npc_primrose","first"))>>'>>!@@" that sends <<=setup.getNpcName("npc_primrose","first")>> scrambling up the stairs with you close behind.<br>
<br>
[<<moveTo "event_primrose_work_doctor_confront_2" "What's going on?" 180>>]
</div>/*#
#desc: npc_work_doctor yells at primrose about npc_hucow
#status: RELEASED 0.9.3.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug") setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
You race upstairs on <<=ps(setup.getNpcName("npc_primrose","first"))>> heels to find <<=setup.getNpcName("npc_work_doctor","formal")>> throwing a fit in the middle of <<=ps(setup.getNpcName("npc_primrose","first"))>> lab.<br>
<br>
"@@.npc_work_doctor;There you are, you worthless <<if $fetish.sissy>>sissy <</if>><<if $fetish.slurs>>faggot<<else>>idiot<</if>>! What do you think you were doing messing with one of my experiments?@@"<br>
<br>
"@@.npc_primrose;I'm sorry, I don't know what you're talking about, you gave me permission to work with <<=$player.first_name>>... and we haven't even done anything today...@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> grunts in annoyance. "@@.npc_work_doctor;Not her! <<=setup.getNpcName("npc_hucow","nickname")>>! And do not even think to deny it — I have the hallway footage of her entering this pathetic excuse for a laboratory and spending several hours here! My work at maximising her productivity is at a very delicate stage and even your meaningless fiddling could ruin my progress!@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> stiffens slightly at the insult to <<his npc_primrose>> work, but remains in control as <<he npc_primrose>> responds. "@@.npc_primrose;<<=setup.getNpcName("npc_hucow","formal")>> was in considerable distress after... whatever it was you did to her. All I did was offer her comfort and assist in calming her mind — if you had not been so reckless—@@"<br>
<br>
"@@.npc_work_doctor;Reckless!? This is neither the company nor the time for timidity! <<=setup.getNpcName("npc_boss","formal")>> demands results and just because you are wasting the company's money with your silly movies does not mean the rest of us are fiddling around uselessly!@@"<br>
<br>
"@@.npc_primrose;They aren't movies, they are scientifically backed multi-sensory experiences that—@@" <<=setup.getNpcName("npc_primrose","first")>> states in defence before <<=setup.getNpcName("npc_work_doctor","formal")>> cuts <<him npc_primrose>> off once more.<br>
<br>
"@@.npc_work_doctor;Bah! Scientifically backed? You make glorified clip-shows! The human body runs on chemicals, and it is through chemistry that it can be refined, perfected, why, with my work...@@" <<=setup.getNpcName("npc_work_doctor","formal")>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;Why am I wasting my time with you, just be warned not to interfere with my work — or you'll be spending another night with <<=setup.getNpcName("npc_evil_nurse","formal")>>... or maybe a full weekend!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","first"))>> calm expression slips as fear creeps over <<his npc_primrose>> face and <<he npc_primrose>> nods nervously. "@@.npc_primrose;S-sorry, <<sir npc_work_doctor>>... I'll be more careful in the future.@@"<br>
<br>
"@@.npc_work_doctor;See that you do!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> spits out before leaving the laboratory and slamming the door behind.<br>
<br>
[<<moveTo "event_primrose_work_doctor_confront_3" "Continue." 120>>]
</div>/*#
#desc: npc_work_doctor leaves after yelling at primrose about npc_hucow
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug") setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","first")>> waits for the echoes of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> departure to quiet before <<he npc_primrose>> picks up some papers that <<=setup.getNpcName("npc_work_doctor","formal")>> had knocked to the ground in <<his npc_work_doctor>> frenzy.<br>
<br>
"@@.npc_primrose;Sorry you had to see that... you really must excuse <<=setup.getNpcName("npc_work_doctor","formal")>> — <<he npc_work_doctor>> is so passionate about <<his npc_work_doctor>> work, and the stresses of <<his npc_work_doctor>> position, well... anyway, was there anything else you wished to do today?@@"<br>
<br>
<<printNpcThemeDetails
'npc_primrose'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
[<<moveTo "event_primrose_return_abort" "You have other places to be today and need to call it here." 60>>]
</div>/*#
#desc: talking to AIKO about rescuing Primrose
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions = {}>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_ai","first")>> if she has any ideas on how to free <<=setup.getNpcName("npc_primrose","first")>> from <<his npc_primrose>> reprogramming.<br>
<br>
<<if State.hasPlayed("event_primrose_destruction_finale_2")>>
The AI shakes her head. "@@.npc_ai;<<uc "I am afraid that the efforts you have already taken have made such a possibility an... impossibility. THere is no more to be done on this subject.">> <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> <<uc "fate has been sealed... and by your hand.">>@@"<br>
<br>
<<printNpcThemeDetails
'npc_ai'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
[<<moveTo "event_ai_abort" "You have things to do in the real world." 60>>]
<<else>>
The AI nods. "@@.npc_ai;<<uc "I have been giving it some analysis. I believe we will need to take a multi-step approach to resolving this variable. From what I have gathered from your observations, I have surmised that the visor that <<if $npc_primrose.fem>>she<<else>>he<</if>> has been augmented with is constantly renewing <<if $npc_primrose.fem>>her<<else>>his<</if>> current personality. This appears to be an ongoing process due to">> <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> <<uc "psyche being already delicate and fractured even prior to this most recent round of programming. <<if $npc_primrose.fem>>Her<<else>>His<</if>> mind is likely deeply fragmented and requires constant maintenance to maintain integrity.">>@@"<br>
<br>
"@@.npc_ai;<<uc "Our first step will be gaining access to <<if $npc_primrose.fem>>her<<else>>his<</if>> visor and adjust its programming. The only time we will have unobstructed access is while ">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "is asleep or docked in <<if $npc_primrose.fem>>her<<else>>his<</if>> vacbed. Once we have access to it, I can upload a portion of myself into the visor to disrupt the current routine and guide what is left of">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "back to <<if $npc_primrose.fem>>her<<else>>his<</if>> previous state. It will take time. I will use <<if $npc_primrose.fem>>her<<else>>his<</if>> terminal to put in a sick day request so I may work in peace.">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "has the most accrued sick days and paid time off of any employee in <<if $npc_primrose.fem>>her<<else>>his<</if>> department. I doubt this is surprising. In fact, <<if $npc_primrose.fem>>her<<else>>his<</if>> only recorded vacation day wasn't even that. <<if $npc_primrose.fem>>She<<else>>He<</if>> arrived to work late after serving at one of">> <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> <<uc "parties and insisted on compensating the company by deducting a full vacation day despite being only nine minutes tardy... for a salaried position.">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc 'then proceeded to work a sixteen hour shift to "make up" for lost time.'>>@@" You wince. That certainly sounds like <<=setup.getNpcName("npc_primrose","first")>>, for better and for worse.<br>
<br>
"@@.npc_ai;<<uc "There are multiple parts to this plan and we will need to approach them accordingly. The first is time of day. You will not be able to stay behind after work unsupervised without raising suspicion. This mean that we will need to act during your regular shift. Secondly, we will need to bypass the security on">> <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> <<uc "vacbed dock. It has recently been enhanced with a tamper deterrence mechanism that will prevent any sort of brute force approach. Finally, you will need to upload my consciousness into the private local network in">> <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> <<uc "laboratory without raising the alarm. You will need to do it while">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "is already tucked in for the night... lest <<if $npc_primrose.fem>>she<<else>>he<</if>> do a system diagnostic and detect our alterations. I have resolutions for all three of these challenges, but shall require your assistance.">>@@"<br>
<br>
<<include "primroseRedemptionPlanningIntro">>
<</if>>
</div><<if $scene.actions.access>>
[@@.link_locked;You already asked about how to get <<=setup.getNpcName("npc_primrose","first")>> out of <<his npc_primrose>> lab.@@]<br>
<<else>>
[<<moveTo "theme_primrose_redemption_1_planning_intro_2" 'How can you get <<=setup.getNpcName("npc_primrose","first")>> out of <<his npc_primrose>> lab?' 60 "<<set $scene.action='access'>>">>]<br>
<</if>>
<<if $scene.actions.security>>
[@@.link_locked;You already asked about how to bypass <<=ps(setup.getNpcName("npc_primrose","first"))>> security?@@]<br>
<<else>>
[<<moveTo "theme_primrose_redemption_1_planning_intro_2" 'How can you bypass <<=ps(setup.getNpcName("npc_primrose","first"))>> security?' 60 "<<set $scene.action='security'>>">>]<br>
<</if>>
<<if $scene.actions.smuggling>>
[@@.link_locked;You already asked about how to get <<=setup.getNpcName("npc_ai","first")>> into <<=ps(setup.getNpcName("npc_primrose","first"))>> private system?@@]<br>
<<else>>
[<<moveTo "theme_primrose_redemption_1_planning_intro_2" 'How can you get <<=setup.getNpcName("npc_ai","first")>> into <<=ps(setup.getNpcName("npc_primrose","first"))>> private system?' 60 "<<set $scene.action='smuggling'>>">>]<br>
<</if>>
<<if $scene.actions.access && $scene.actions.security && $scene.actions.smuggling>>
[<<moveTo "theme_primrose_redemption_1_planning_outro" 'Sounds like she has everything planned out...' 60>>]
<</if>>/*#
#desc: talking to AIKO about rescuing Primrose
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions[$scene.action] = true>>
<<if $scene.action == "security">>
<<addNpcTheme 'npc_technician' 'work' 'theme_primrose_redemption_3_technician_bypass'
0
'theme_primrose_redemption_3_technician_bypass'
false
>>
<<elseif $scene.action == "access">>
<<set $scene.addMission = $npc_manager.stage < 5 && !$currentTasks.hasOwnProperty("ai_mission_primrose_club")>>
<<if $scene.addMission>>
<<addTaskById 'ai_mission_primrose_club'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'access'>>
You ask how to gain access to <<=ps(setup.getNpcName("npc_primrose","first"))>> lab?<br>
<br>
<<if $npc_manager.stage >= 5 && (!$currentTasks.hasOwnProperty("ai_mission_primrose_club") || !$currentTasks.ai_mission_primrose_club.finished)>>
"@@.npc_ai;<<uc "We will use samples of">> <<=uc(ps(setup.getNpcName("npc_evil_nurse","formal")))>> <<uc "voice to send">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "an order to return to <<if $npc_primrose.fem>>her<<else>>his<</if>> dock for an unscheduled mental scan. <<=uc(setup.getNpcName('npc_evil_nurse','formal'))>> spending additional time with <<=uc(setup.getNpcName('npc_primrose','formal'))>> of late has provided me plenty of reference material to leverage.">>@@"
<<else>>
"@@.npc_ai;<<uc "We will use samples of">> <<=uc(ps(setup.getNpcName("npc_evil_nurse","formal")))>> <<uc "voice to send">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "an order to return to <<if $npc_primrose.fem>>her<<else>>his<</if>> dock for an unscheduled mental scan.">> <<if $scene.addMission>><<uc "I will require access to <<=uc(setup.getNpcName('npc_primrose','formal'))>> records... and for that, I will need access to security information on <<if $npc_primrose.fem>>her<<else>>his<</if>> phone. I have side-loaded software onto your phone for our purpose, simply find some means to borrow <<=uc(ps(setup.getNpcName('npc_primrose','formal')))>> phone and press it against yours so that I may copy the requisite information to access <<=uc(ps(setup.getNpcName('npc_primrose','formal')))>> personal computer.">><<else>><<if $currentTasks.ai_mission_primrose_club.finished>><<uc "You should be able to access a recording with her voice through the archival footage on your work computer. Once you find a suitable file, I will see to extracting it and creating our synthesiser.">><<else>><<uc "I previously tasked you with gaining access to <<=uc(ps(setup.getNpcName('npc_primrose','formal')))>> private files. If you could complete that effort and review the resulting footage I believe that would provide sufficient material for the sample we require.">><</if>><</if>>@@"
<</if>>
<<case 'security'>>
You ask how to disable the security protections on <<=ps(setup.getNpcName("npc_primrose","formal"))>> vacbed rig?<br>
<br>
<<if setup.getTotalValue("smart") > 17>>
"@@.npc_ai;<<uc "I have reviewed the blueprint of the security latches. You will be able to disable them yourself with what is on hand in the room. I am thankful that you have retained your wits through this entire ordeal, Unit">> <<=uc($player.first_name)>>. <<uc "This would be significantly harder if you were a bimbo.">>@@"<br>
<br>
<</if>>
<<if setup.hasPermBonus("smart", "cyber")>>
"@@.npc_ai;<<uc "The cybernetic module you possess will allow me to guide you through the process of safely disarming the security system. I will not have much issue; it is not my first time piloting your body.">>@@" You awkwardly nod. You still don't like how that sounds.<br>
<br>
<</if>>
<<if $npc_technician.flags.evil >= 2>>
"@@.npc_ai;<<uc "I have examined the internal security of the vacbed's computer components and have calculated it is within Unit">> <<=uc(ps(setup.getNpcName("npc_technician","first")))>> <<uc "capabilities to disable the locking mechanism through the onboard software. Find time and a safe place to talk to her and I will transfer the necessary data from your phone to hers. I would recommend going someplace public. It is less likely to be bugged.">>@@"<br>
<br>
<</if>>
<<if $npc_technician.flags.evil < 2 && !setup.hasPermBonus("smart", "cyber") && setup.getTotalValue("smart") <= 15>>
"@@.npc_ai;<<uc "My initial examinations of the tamper-proofing mechanism have been discouraging. However, I believe that Unit">> <<=uc(setup.getNpcName("npc_technician","first"))>> <<uc "could handle disabling the security if she were freed from">> <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> <<uc "control. For the time being, you may need to focus on recovering her before moving forward with">> <<=uc(setup.getNpcName("npc_primrose","formal"))>>. <<uce "Alternatively, if you were to renew your focus on your studies, you might be able to handle it yourself.">>@@"<br>
<br>
<</if>>
"@@.npc_ai;<<uc "I should warn you ahead of time that attempting to go forward with the mission or to sabotage the mechanism without a plan will assuredly cause the machine to deploy countermeasures. I encourage you to resist making your move until you are fully prepared, Unit">> <<=uc($player.first_name)>>.@@"
<<case 'smuggling'>>
You ask <<=setup.getNpcName("npc_ai","first")>> how you are going to get her into the building. As expected, she already has a plan. In fact, it is a familiar sounding one.<br>
<br>
"@@.npc_ai;<<uc "As">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "system is separate from the corporate network we will need to establish a direct connection. I will upload as much of myself as I require into the data plug and you will carry it into the building. You have done this for me on multiple occasions before. It should not be any difficulty for you to do so once again.">>@@"
<<if setup.getTotalValue("anal") < 20>>
You nod, this is just the sort of thing your expert ass is trained for... or something like that.
<<else>>
You scrunch your facial features but nod. The massive lump of metal isn't going into her rear.
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<include "primroseRedemptionPlanningIntro">>
</div>/*#
#desc: done going over things
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'primrose_redeem_lab_1'>>
<<if $npc_manager.stage >= 5>>
<<addHistory 'event_primrose_redemption_1_correct_footage'>>
<</if>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
With all your questions answered, you nod that you understand. "@@.npc_ai;<<uc "Excellent. Stay safe, Unit">> <<=uc($player.first_name)>>. <<uc "My calculations of success are high but they are not guaranteed, as you experienced previously.">>@@"<br>
<br>
<<printNpcThemeDetails
'npc_ai'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
[<<moveTo "event_ai_abort" "You have things to do in the real world." 60>>]
</div>/*#
#desc: tell npc_ai about finding primrose footage
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=setup.getNpcName("npc_primrose","formal")>> Lab Recording'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil") setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You quickly ping <<=setup.getNpcName("npc_ai","first")>> that you have located an appropriate sound sample. Her chat window opens briefly and the file begins to transfer. After a few seconds, the video upload completes successfully. "@@.npc_ai;<<uc "Good work, Unit">> <<=uc($player.first_name)>>. <<uc "I will begin constructing the voice synthesiser immediately. I will have it done by the time you arrive at work tomorrow.">>@@" The window times out shortly after as the connection closes.<br>
<br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: ask alex for help getting into primrose's vacbed
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addWorkEvent "primrose_technician_delivery">>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You shuffle uncomfortably in your chair, looking around the cafe for any obvious company agents who may be watching. "@@.npc_technician;What are you doing? You know this place is safe... so come on, spit it out... this is about something at work, isn't it?@@" <<=setup.getNpcName("npc_technician","first")>> asks.<br>
<br>
You nod and finally take your phone out and ask her to do the same. She complies and your screen turns on as <<=setup.getNpcName("npc_ai","first")>> transfers the schematics of <<=ps(setup.getNpcName("npc_primrose","first"))>> reinforced vacbed to <<=ps(setup.getNpcName("npc_technician","first"))>> phone.<br>
<br>
"@@.npc_technician;Ooo, this looks kinky~@@" She teases as she looks the blueprint over once the transfer is complete. "@@.npc_technician;I don't think it will fit in my apartment, though.@@" You stifle a laugh and explain that you need to break into one without setting off the alarm. "@@.npc_technician;Ah, I thought as much. Sure, I can probably do that. Let me look this over at home and come up with an override key or something. I'll find a way to get it to you discretely.@@"<br>
<br>
You thank the Tech Wizard for her assistance and return to your drink, confident that she'll be able to figure things out.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: technician bypass arrives at your desk
#status: RELEASED 0.9.3.0
#ignore_spell: thumbdrive
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "primrose_override_usb">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You are just about to get into your work when you spot a familiar cutie slip into your office. <<=setup.getNpcName("npc_technician","first")>> approaches your desk with a Cafe 52 cup in each hand. She smiles brightly at you as she places one cup down on your desk. "@@.npc_technician;Here's to a new work week, <<=$player.first_name>>@@" She places the cup on your desk with excessive care, the paper vessel making an odd click sound and not quite sitting level.<br>
<br>
"@@.npc_technician;I got you "that drink" you wanted. I hope it helps you finish all your tasks today.@@" She points to your cup, motioning for you to pick it up. You can feel something in the bottom of the empty cardboard. <<=setup.getNpcName("npc_technician","first")>> moves to stand between the camera and you so that you have cover to pry a USB thumbdrive off the bottom. You take a moment to glance at the pink plastic USB dongle and quickly slide it out into your hand as you take a sip of the drink and your partner-in-crime slips back towards the elevator.<br>
<br>
"@@.npc_technician;Duty calls, my friend. Let me know how that project works out.@@" She gives one final wave over her shoulder as she returns to the elevator bay. You chuckle to yourself and pocket the drive before returning to work.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: signal npc_ai you are ready to infiltrate primrose lab
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemWorn("data_plug")>>
You message <<=setup.getNpcName("npc_ai","first")>> that you are ready to send the false message to <<=setup.getNpcName("npc_primrose","first")>>. "@@.npc_ai;<<uc "Affirmative. Sending now.">>@@" You do not have to wait long for a response. "@@.npc_ai;<<uc "Done. Please stand by.">>@@" You sit back in your chair, staring at your monitor while you wait for the signal to get moving. After nearly ten minutes, you finally get the go ahead.
<<if $npc_manager.flags.evil == 1>>
You look over your desk one last time and give a single glance over your shoulder at <<=ps(setup.getNpcName("npc_manager","formal"))>> imposing office door before standing up and approaching the elevator. If everything goes to plan, she won't even know you left your desk.
<<else>>
You look over your desk one last time and give a single glance up towards the ceiling. Whoever at the company is surveiling you, <<=setup.getNpcName("npc_ai","first")>> has provided the cover you need to slip out undetected.
<</if>>
<br><br>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_2" 'Head to <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab.' 300>>]<br>
[<<moveTo $scene.workEventReturn 'On second thought, go back to work.' 300>>]
<<else>>
You message <<=setup.getNpcName("npc_ai","first")>> that you are ready to send the false message to <<=setup.getNpcName("npc_primrose","first")>>. However, her reply message causes you to pause: "@@.npc_ai;<<uc "We are unable to proceed without the data-plug. It is still in your apartment.">>@@" You blink. <<printThought "Shit, she's right.">>" You're going to have to bring it "in" with you next time.<br>
<br>
[<<moveTo $scene.workEventReturn 'Get back to work.' 300>>]
<</if>>
</div>/*#
#desc: sneak into primrose lab to redeem
#status: RELEASED 0.9.3.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Lab'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png">>
<div id="invframe" class="scrolltext">
You silently approach <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab, taking time to avoid being seen as much as possible. While <<=setup.getNpcName("npc_ai","first")>> can loop security footage to hide your presence, fooling someone's eyes is a lot harder, and a lot less delectable. You were lucky enough to call an empty elevator down to R&D but had to take a very roundabout route to the secluded lab. You try to act natural in the places where the only option is being seen. You learned back at your old job that, in a corporate environment, sometimes the best camouflage is confidence.<br>
<br>
You finally approach the electronically locked laboratory. The camera hanging over it barely glances at you before opening and granting you access to the sterile workspace. You aren't used to it being so clean. You pass by the trio of holding cells and the shelves lined with 3D printers and electronic components. It looks like the tech in here was upgraded. You frown; there's a certain perverse cruelty that the extra funding was granted to the lab only once <<=setup.getNpcName("npc_primrose","first")>> was completely dominated.<br>
<br>
You take a deep breath and focus. So far the plan has worked as intended: a clear humanoid silhouette can be made out under the rubber of the vacbed. You take a few steps forward and examine the locking mechanisms required to access the scientist sealed beneath. It looks like there are a pair of outer and inner cuffs. One pair is shrink-wrapped beneath the latex, while the other rest in standby positions against the frame. You remember the arms looking less threatening, it would seem they have seen upgrades to be used for restraint rather than just dressing. This new model looks far more industrial with brushed metal reinforcements, harsh looking manipulators, and a large yellow warning label along the control box that lists a plethora of warnings against potential pinch and crush hazards. A final red warning sticker declares that any attempt to manipulate or sabotage the locking mechanism will be met with "immediate punishment." <br>
<br>
Underneath the latex barrier, and secured in place by a steel head harness to firmly affix it to the sleeping <<if $fetish.sissy>>sissy <</if>>scientist's face, is the visor that you need to reprogram. Looks like your work is cut out for you if you are going to access.<br>
<br>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_3" "Attempt to gain access yourself." 300 "<<set $scene.action='self'>>">>]<br>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_3" 'Ask <<=setup.getNpcName("npc_ai","first")>> to handle things.' 300 "<<set $scene.action='ai'>>">>]<br>
<<if setup.checkItemInInventory("primrose_override_usb")>>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_3" 'Use <<=ps(setup.getNpcName("npc_technician","first"))>> bypass.' 300 "<<set $scene.action='technician'>>">>]<br>
<<elseif setup.checkItemOwned("primrose_override_usb")>>
[@@.link_locked;You left the thumb drive <<=setup.getNpcName("npc_technician","first")>> made for you at home.@@]<br>
<</if>>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_3" "Force it open." 300 "<<set $scene.action='force'>>">>] <<hint $options "This is risky beyond words">><br>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_3" "Back out." 60 "<<set $scene.action='abort'>>">>]
</div>/*#
#desc: muck with primrose vacbed
#status: RELEASED 0.9.3.0
#ignore_spell: chibi
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case "self">>
<<set $scene.success = setup.getTotalValue("smart") > 17>>
<<case "ai">>
<<set $scene.success = true>>
<<case "technician">>
<<set $scene.success = true>>
<<deleteItem "primrose_override_usb">>
<<case "force">>
<<set $scene.success = setup.getTotalValue("dexterity") > 15>>
<<case "abort">>
<<set $scene.success = false>>
<</switch>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.charImage("npc_technician","npc_technician_chibi")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "self">>
<<if setup.getTotalValue("smart") > 17>>
You take a few minutes to examine the external rig before invoking your inner Macgyver and getting to work. <<=setup.getNpcName("npc_ai","first")>> mentioned there were potential countermeasures and you very much do not wish to have them deployed on you. After examining the machine for a few minutes, you decide upon your plan of attack. You are going to have to disengage the regulators on the vacuum pump so that the rubber sheets compressing <<=ps(setup.getNpcName("npc_primrose","formal"))>> body lose their suction and can be peeled away.<br>
<br>
You eye the pump integrated into the wall. It is a black cube of plastic with a long hose connecting it to the top of the bed. You're going to have to remove the screws on the external housing if you want to get to the machinery inside. Looking around the room, you fetch a pair of scissors off of <<=ps(setup.getNpcName("npc_primrose","formal"))>> desk and wedge one of the blades into the groove of the screw's head. Slowly and delicately, you disengage all four fasteners before removing the plastic housing. Now with access to the pump itself, you use the scissors to pry a microchip off the circuit and watch with satisfaction as the pump loses suction.<br>
<br>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_4" "Time to reprogram that visor." 60>>]
<<else>>
TODO
<</if>>
<<case "ai">>
"@@.npc_ai;<<uc "Assuming direct control.">>@@" You shiver as the sensation of taking a backseat in your own mind floods your body once again. Without much else to do, you sit back and try to relax as <<=setup.getNpcName("npc_ai","first")>> pilots your body. To your surprise, the first thing the Machine Goddess does while in control of your body is vocal warm-ups. She works to deepen your tone, speaking from the diaphragm. You have no idea what she is doing right until she hits the unlock button and speaks into the microphone:<br>
<br>
"@@.npc_boss;Deactivate security measures.@@"<br>
<br>
You are shocked by the voice that comes out of your mouth. It is an absolute dead-ringer for the menacing CEO <<=setup.getNpcName("npc_primrose","first")>> idolises so fervently. Considering how close the impression is, you are less surprised to see that you passed the security check. <<=setup.getNpcName("npc_ai","first")>> returns control over your body as the rubber begins to peel away from the interned scientist.<br>
<br>
"@@.npc_ai;<<uc "Child's play. Returning control.">>@@"<br>
<br>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_4" "Time to reprogram that visor." 60>>]
<<case "technician">>
You reach into your pocket and retrieve the USB device that <<=setup.getNpcName("npc_technician","first")>> made for you. You turn it over in your fingers a few times before approaching the touchscreen control panel along the side of the machine. At the moment, it displays a four hour timer ticking down one second at a time. While there is a home button, it would assuredly ask you for a password you do not have. You run your fingers along the side until you find the peripheral port and slide the thumb drive into place. The screen changes to the password field and displays an input field that rapidly fills with blocked out characters. The flood of code fills the box and then some before executing. The screen briefly shuts off before returning with a chibi of <<=setup.getNpcName("npc_technician","first")>> flashing a peace sign. You smile; you knew she could do it. The machine security mechanisms begin to disengage as you approach the sleeping scientist.<br>
<br>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_4" "Time to reprogram that visor." 60>>]
<<case "force">>
Disregarding the advice <<=setup.getNpcName("npc_ai","first")>> gave you, you decide to simply force your way to <<=ps(setup.getNpcName("npc_primrose","formal"))>> sleeping form. <<if setup.getTotalValue("strength")>=20>>You grab the metal arms holding the sleeping scientist's frame in place and pull with all your considerable might. The metal screams in agony as you unlatch the robotic grip it holds upon the frame. The sheer strength you exert causes the hydraulic arms to disengage to prevent further damage to the internal mechanisms. That wasn't so bad—<<else>> You grab a pair of scissors off of the desk and stab the rubber sheet. A hole will make the sheet lose integrity and release the air inside, giving you the access you need. Unfortunately, the scissors bounce off harmlessly. It appears the rubber is somehow puncture resistant.<</if>><br>
<br>
"@@.computer;Intruder detected@@" declares an electronic speaker integrated into the bed. A metal shutter slams shut over the loft's exit as the propaganda posters and TV begin to flash red. You jump at the sudden alarm, jolting to attention. This must have been what <<=setup.getNpcName("npc_ai","first")>> warned you about. Whoops.<br>
<br>
The auto-closet next to you hums to life as the metal manipulators within it turn to life and reach towards you.
<<if setup.getTotalValue("dexterity") > 15>>
You nimbly dodge the mechanical arms as they sail towards your previous location, narrowly missing snagging your wrists and ankles. Your metal pursuers are not so easily outmatched and make another attempt at grabbing you. You smile, it would seem they are programmed for a more willing subject, your fancy footwork keeping you one step ahead of them as you dance around the room. Try as you might, you still are not sure how to disengage the security mechanism. After a few tense and acrobatic close calls, the security alarms turn off and the auto-closet returns to its standby position. You catch your breath as you hear your phone's text chime rings out in the sudden silence. "@@.npc_ai;<<uc "I have disabled the security measures you triggered without alerting the entire building of your presence. While your physical prowess is impressive, please refrain from improvising further.">>@@"<br>
<br>
You take a moment to catch your breath, <<printThought "That was reckless... though at least I got things done.">><br>
<br>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_4" "Time to reprogram that visor." 60>>]
<<else>>
As much as you try to run from them, the metal track they are integrated into runs the length of the room. There is no hiding from their robotic grasp. Each of the heavy metal cuffs latches onto one of your limbs before pulling you into the confines of the stuffed closet. The room smells overwhelmingly of rubber. The spare manipulators in the room work to fit a VR mask over your face. It hums to life immediately, the jolt of static pulsing through your eyes and into your brain pulling you into the digital world against your will.<br>
<br>
<<printThought "Well... shit.">><br>
<br>
[<<moveTo "event_primrose_redemption_bad_end_1" "What fresh hell awaits?" 60>>]
<</if>>
<<case "abort">>
You stare at the machine for a few silent minutes before making up your mind. You turn around and head out of the laboratory, up the elevator, and back to your desk. Either through trepidation or your better judgement, you decide to wait a bit longer before attempting to awaken <<=setup.getNpcName("npc_primrose","first")>>. <<=setup.getNpcName("npc_ai","first")>> messages you mere seconds after you return to your desk: "@@.npc_ai;<<uc "I trust your decision to withdraw. Just know that we have a limited number of uses for this diversion before we are found out. Please be prepared to execute the task at hand next time you send the message.">>@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Hurry back to work." 300>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: succeed in overriding primrose bed
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'primrose_redeem_lab_1' $now true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png">>
<div id="invframe" class="scrolltext">
You slowly peel back the rubber sheet, letting the robotic arms support <<=ps(setup.getNpcName("npc_primrose","formal"))>> body. You let out a sigh of relief as you confirm that he is still deep in trance, his visor now opaque and displaying a countdown timer until the maintenance is complete. With a few careful manoeuvres, you relinquish the heavy metal plug from your rear and place it on the desk. You examine the base and find the integrated data cable. It is thankfully retractable so you won't have to worry about having a cable tail following you until you get home.<br>
<br>
You explore along the side of the visor until you find a small data port integrated into the scientist's skull. With great care, you slide the plug's cable into the interface. The ring of lights along the plug flicker off before slowly coming back on one by one to show the progress of the transfer. The bar filled up and gave a quick flash before the plug returned to its standby state. You look back to the visor; the countdown timer is still ticking. Did it even work?<br>
<br>
Your phone chirps. You examine it and see a message from <<=setup.getNpcName("npc_ai","first")>>: "@@.npc_ai;<<uc "Transfer complete. Seal">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "back into his vacbed. I will bring">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "to my domain in virtual reality <<if $scene.success>>after I finish gaining control over his personal computer<</if>>; you will join us. I think your presence will be comforting for <<if $npc_primrose.fem>>her<<else>>his<</if>> fractured psyche.">>@@" You turn off your phone screen and <<if $scene.action=='alex'>> tap the touchscreen to bring up the control options and re-activate the seal.<<else>> slot the control panel back into the fan and watch as the seal activates once more.<</if>><br>
<br>
You quietly make your leave.<br>
<br>
[<<moveTo $scene.workEventReturn "Hurry back to work." 300>>]
</div>/*#
#desc: introduce to deprogram primrose in vr
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName("npc_ai","first"))>> simulated space, ready to face <<=setup.getNpcName("npc_primrose","first")>>. The AI is there to greet you within the virtual loft. She gives you a nod, motioning with her hand to the far wall. A familiar vacbed shimmers into existence... and contained within, an equally familiar silhouette. "@@.npc_ai;<<uc "I have been keeping ">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "in stasis until you arrived. It has given me time to evaluate the state of <<if $npc_primrose.fem>>her<<else>>his<</if>> mind. <<if $npc_primrose.fem>>Her<<else>>His<</if>> psyche is fragmented from being written and rewritten numerous times. It will take time to repair the damage... but it would be faster if we can convince <<if $npc_primrose.fem>>her<<else>>him<</if>> that <<if $npc_primrose.fem>>she<<else>>he<</if>> wishes to be fixed. At present <<if $npc_primrose.fem>>she<<else>>he<</if>> appears to be in conflict with both <<if $npc_primrose.fem>>she<<else>>he<</if>> and <<if $npc_primrose.fem>>her<<else>>him<</if>>self. I would like you to attempt to convince">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "to lend your assistance once more. I will not be visible but I will be keeping a close eye on <<if $npc_primrose.fem>>her<<else>>his<</if>> synaptic activity. It may provide us with additional details on how best to handle <<if $npc_primrose.fem>>her<<else>>him<</if>> going forward. Your negotiations do not need to be successful in turning <<if $npc_primrose.fem>>her<<else>>him<</if>> to our side in one go, incremental progress is progress.">>@@"<br>
<br>
You nod, asking <<=setup.getNpcName("npc_ai","first")>> if she is ready. There is hesitation in her movements that you have not seen before. They are small; but for a being normally so composed and muted, the minor variations are even more noteworthy.<br>
<br>
[<<moveTo "event_primrose_redemption_3_confrontation_2" '<<=setup.getNpcName("npc_ai","first")>> nods.' 300>>]
</div>/*#
#desc: meet primrose in vr to deprogram
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
The <<=setup.getNpcName("npc_ai","title")>> nods as she raises her hand towards the rubberised prison before slipping out of the visible area of the simulation and into the unseen code itself.<br>
<br>
Tight latex peels away as the interned scientist slowly comes to, <<his npc_primrose>> visor turning translucent once again. <<His npc_primrose>> eyes trace over the unfamiliar environment, locking onto you. <<He npc_primrose>> speaks, voice carrying muted suspicion and incredulity.<br>
<br>
"@@.npc_primrose;<<=$player.first_name>>. What is the meaning of this? Where am I?@@"<br>
<br>
You measure your words and state that the two of you are in a simulated reality outside of the company's control and supervision. That does not lessen the intensity <<=setup.getNpcName("npc_primrose","first")>> is putting into his stare. "@@.npc_primrose;What? My nocturnal routine is tightly controlled and proprietary technology! Why have you connected me to an off-site simulation? This is a violation of employee code—@@" You zone out as the hypnotised scientist rattles off the numerous code of conduct violations you have committed for the sake of this meeting. You raise your hand to try and stop his lecture but <<he npc_primrose>> barrels forward with the lecture uninterrupted. Only when <<he npc_primrose>> is finished making sure you are aware of every infraction you have made does <<he npc_primrose>> let you continue.<br>
<br>
You explain that you needed to talk to <<him npc_primrose>> someplace where the company could not be eavesdropping.<br>
<br>
"@@.npc_primrose;You are scheming, then. Did your time in the company dungeon teach you nothing? Did what has happened to your friends not impart upon you the danger of rejecting the company's will? I do not understand why you would believe that this is an acceptable course of action. Resisting is as foolish as it is futile!@@"<br>
<br>
[<<moveTo "event_primrose_redemption_3_confrontation_3" 'Ignore <<=ps(setup.getNpcName("npc_primrose","first"))>> objections and attempt to explain.' 300>>]
</div>/*#
#desc: explain to primrose deprogram
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions = {}>>
<<set $scene.success = 0>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You tighten your hands into fists as you collect yourself. You have <<=setup.getNpcName("npc_primrose","first")>> here for a reason. You tell <<him npc_primrose>> that you are planning on defeating <<=setup.getNpcName("npc_boss","formal")>>. <<He npc_boss>> cannot remain CEO; <<his npc_boss>> schemes are too dangerous and too many lives are at stake. You are not terribly surprised to see that <<=ps(setup.getNpcName("npc_boss","formal"))>> biggest fan keeps <<his npc_primrose>> eyes locked upon you; the only surprise is that <<he npc_primrose>> does not seem angrier.<br>
<br>
"@@.npc_primrose;What you are implying is treason against your employer. And not only that, a slanderous lie against the greatest <<man npc_boss>> of our age! While I should disconnect immediately and report you to <<=setup.getNpcName("npc_retention","formal")>>, I will hear your arguments if only to show you the faults in your clearly flawed reasoning. Some would call me foolish, but I like you, and I want to believe you can still be a loyal employee.@@"<br>
<br>
Well, this is going to be an uphill battle. Where to begin...<br>
<br>
<<include "primroseDeprogramDiscuss">>
</div><<if $scene.actions.company>>
[@@.link_locked;You already tried to convince <<=setup.getNpcName("npc_primrose","first")>> that <<=setup.getNpcName("npc_boss","formal")>> is bad for the company.@@]<br>
<<else>>
[<<moveTo "event_primrose_redemption_3_confrontation_4" 'Explain that <<=setup.getNpcName("npc_boss","formal")>> is bad for the company.' 60 "<<set $scene.action='company'>>">>]<br>
<</if>>
<<if $scene.actions.city>>
[@@.link_locked;You already tried to convince <<=setup.getNpcName("npc_primrose","first")>> that <<=setup.getNpcName("npc_boss","formal")>> is a danger to the city.@@]<br>
<<else>>
[<<moveTo "event_primrose_redemption_3_confrontation_4" 'Explain that <<=setup.getNpcName("npc_boss","formal")>> is a danger to the city.' 60 "<<set $scene.action='city'>>">>]<br>
<</if>>
<<if $scene.actions.primrose>>
[@@.link_locked;You already tried to convince <<=setup.getNpcName("npc_primrose","first")>> that <<=setup.getNpcName("npc_boss","formal")>> is bad for <<=setup.getNpcName("npc_primrose","first")>>.@@]<br>
<<else>>
[<<moveTo "event_primrose_redemption_3_confrontation_4" 'Explain that <<=setup.getNpcName("npc_boss","formal")>> is bad for <<=setup.getNpcName("npc_primrose","first")>>.' 60 "<<set $scene.action='primrose'>>">>]<br>
<</if>>
[<<moveTo "event_primrose_redemption_3_confrontation_5" "You're out of arguments..." 60>>]/*#
#desc: attempt to reason with primrose
#status: RELEASED 0.9.3.0
#ignore_spell: luddites
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions[$scene.action] = true>>
<<switch $scene.action>>
<<case "company">>
<<if setup.getTotalValue("smart") >= 18>>
<<set $scene.success += 1>>
<</if>>
<<case "city">>
<<if State.hasPlayed("event_boss_home_study_2")>>
<<set $scene.success += 1>>
<</if>>
<<case "primrose">>
<<if setup.getTotalValue("dominance") >= 20 || setup.getTotalValue("submission") >= 20>>
<<set $scene.success += 1>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "company">>
<<if setup.getTotalValue("smart") >= 18>>
You tell <<=setup.getNpcName("npc_primrose","first")>> that <<=setup.getNpcName("npc_boss","formal")>> is bad for <<if $fetish.sissy>>SISSI<<else>>the company<</if>>. <<His npc_boss>> hand guides the company purely for the sake of <<his npc_boss>> own self-interest, putting the livelihood of tens of thousands of employees at risk. If <<his npc_boss>> schemes were to fail or fall through, one of the city's largest employers could potentially collapse and lead to thousands of employees becoming jobless or worse.<br>
<br>
"@@.npc_primrose;The stakes are quite high and <<=ps(setup.getNpcName("npc_boss","formal"))>> game is very risky...@@" <<=setup.getNpcName("npc_primrose","first")>> begins before <<his npc_primrose>> visor flashes, feeding <<him npc_primrose>> the encouragement to deny your point, "@@.npc_primrose;However <<=setup.getNpcName("npc_boss","formal")>> is a genius businessman. <<His npc_boss>> plans will not fail. There is no reason to prepare for a theoretical possibility that is so impossible. <<=setup.getNpcName("npc_boss","formal")>> has led the company to countless years of quarter-over-quarter growth in all sectors.@@"<br>
<br>
You frown. You thought you might have been close to a breakthrough... though even in refutation you spotted a moment of doubt in <<=ps(setup.getNpcName("npc_primrose","first"))>> eyes.
<<else>>
You tell <<=setup.getNpcName("npc_primrose","first")>> that <<=setup.getNpcName("npc_boss","formal")>> is bad for <<if $fetish.sissy>>SISSI<<else>>the company<</if>>. <<He npc_boss>> doesn't do anything other than take credit for other people's work and reap the benefits of <<his npc_boss>> position. If <<he npc_boss>> were a good boss, <<he npc_boss>> would pass the fruits of success down, rather than merely exploit those beneath <<him npc_boss>>... such as <<=setup.getNpcName("npc_primrose","first")>>.<br>
<br>
"@@.npc_primrose;Your understanding of <<=ps(setup.getNpcName("npc_boss","formal"))>> work is laughable. Not only is <<he npc_boss>> a genius team builder and manager, <<his npc_boss>> decisions are backed up by incalculable amounts of data-driven analysis. <<He npc_boss>> has published multiple books on project management in the private sector. <<He npc_boss>> is the most capable CEO on the planet yet you parrot to me the most basic of class theory like that will change my mind.@@"<br>
<br>
<<printThought "Shit. Maybe I should have studied up a bit more before bringing that up.">>
<</if>>
<<case "city">>
<<if State.hasPlayed("event_boss_home_study_2")>>
You tell <<=setup.getNpcName("npc_primrose","first")>> that <<=setup.getNpcName("npc_boss","formal")>> is bad for the city. <<His npc_boss>> subversion of the Valkyrie security force will undoubtedly cause larger social distress than comfort as they prioritise revenue and protection of corporate interests over anything resembling public good. Furthermore, the kidnappings related to <<his npc_boss>> drone factories will inevitably lead to mass hysteria when the secret is revealed. Even if <<he npc_boss>> were to succeed in putting down subsequent riots, morale and public sentiment will never be on <<his npc_boss>> side. No one would ever trust <<him npc_boss>>.<br>
<br>
"@@.npc_primrose;I am not a fan of the number of innocent lives that are entwined with <<=ps(setup.getNpcName("npc_boss","formal"))>> plan for the future, admittedly, and some of <<his npc_boss>> acts would not be looked favorably upon in the court of public opinion—@@" <<=setup.getNpcName("npc_primrose","first")>> began, scratching <<his npc_primrose>> chin. The moment <<he npc_primrose>> seems to be coming around to your side, however, <<his npc_primrose>> visor flashes a rapid series of text and images to reaffirm its control over <<him npc_primrose>>. "@@.npc_primrose;However, such actions must be taken to correct societal wrongs. While the public may consider <<him npc_boss>> a monster now, they are short-sighted and merely fail to understand <<his npc_boss>> brilliance. The amount of social good that will come from <<his npc_boss>> plan will lead humanity into a golden age. Those who protested will be seen as luddites resisting the inevitable. Better to repurpose them to better use now than waste time on doubt.@@"<br>
<br>
<<printThought 'Damnit! <<=ps(setup.getNpcName("npc_primrose","formal"))>> neural implants are pulling <<him npc_primrose>> away from your arguments. Still... <<=setup.getNpcName("npc_ai","first")>> said any progress was useful...'>><br>
<<else>>
You tell <<=setup.getNpcName("npc_primrose","first")>> that <<=setup.getNpcName("npc_boss","formal")>> is bad for the city. Powerful private interests should not have even greater control over people's everyday life than they already do. <<=setup.getNpcName("npc_boss","formal")>> is clearly evil and the only thing worse than having so many megacorps running society is having a single megacorp run by a megalomaniacal evil CEO running everything. <<=setup.getNpcName("npc_primrose","first")>> simply stares at you through <<his npc_primrose>> visor, <<his npc_primrose>> gaze still fully intense.<br>
<br>
"@@.npc_primrose;You do not have an argument. <<=setup.getNpcName("npc_boss","formal")>> has proven <<his npc_boss>> ability to run the company year-in and year-out with massive growth. Beyond that, the benefits of SISSI's growth far outweighs the downsides. Think of how corporate growth has positively affected other elements of your life. A corporate property manager can provide far better care for your building than a single landlord. A chain pharmacy can ensure quality and uniformity of service that you couldn't expect from a local pharmacist. While you say you want to be free of <<=setup.getNpcName("npc_boss","formal")>>, the convenience of your life relies on men like <<him npc_boss>>. Competition is time, money and effort that could be better applied to other things, and we should be glad of <<=setup.getNpcName("npc_boss","formal")>> seeking to remove that inefficiency.@@"<br>
<br>
That didn't go anywhere. Perhaps if you knew more specifics about <<=ps(setup.getNpcName("npc_boss","formal"))>> plans you would have more luck.
<</if>>
<<case "primrose">>
<<if setup.getTotalValue("dominance") >= 20 || setup.getTotalValue("submission") >= 20>>
You tell <<=setup.getNpcName("npc_primrose","first")>> that <<=setup.getNpcName("npc_boss","formal")>> has neglected <<his npc_boss>> duties as a dominant to <<his npc_boss>> submissive. Beyond the surface level failures of never making time for someone so devoted to <<him npc_boss>>, <<=setup.getNpcName("npc_boss","formal")>> has no respect for <<his npc_boss>> charge. <<He npc_boss>> has taken no interest in the doctor's work beyond taking what <<he npc_boss>> wanted while piling on greater restrictions and humiliations, <<he npc_boss>> has never given <<=setup.getNpcName("npc_primrose","first")>> any say in what happens to <<him npc_primrose>> and simply presumes obedience, and <<he npc_boss>> has never given <<=setup.getNpcName("npc_primrose","first")>> any kind of healthy mechanism to provide feedback or revoke consent to <<his npc_primrose>> situation. <<He npc_boss>> has failed in the most fundamental principles of healthy power dynamics. <<He npc_boss>> is, in short, a bad <<master npc_boss>>.<br>
<br>
"@@.npc_primrose;Impossible. I may not be the centrepiece of <<his npc_boss>> crown and... maybe <<he npc_boss>> doesn't call me in as often as I'd like...@@" Images came into view around you both as <<=setup.getNpcName("npc_primrose","first")>> stumbles over <<his npc_primrose>> words. Nights alone in <<his npc_primrose>> laboratory. <<=setup.getNpcName("npc_boss","formal")>> all but ignoring work and presentations, allowing <<=setup.getNpcName("npc_work_doctor","formal")>> to run roughshod over <<=ps(setup.getNpcName("npc_primrose","formal"))>> efforts, <<=setup.getNpcName("npc_boss","formal")>> taking time for everyone but <<=setup.getNpcName("npc_primrose","first")>>. It all seems to weigh down on the scientist's thoughts. "@@.npc_primrose;<<=setup.getNpcName("npc_boss","formal")>> does not have interest in me. <<He npc_primrose>> expects total obedience while providing less than the bare minimum to me in return. I—@@" The pink-haired doctor tries to hold onto the line of thought but is interrupted by the visor's intervention. It strobes numerous words and images in front of <<his npc_primrose>> face, bringing forth the husk it had made of the once-vibrant <<if $fetish.sissy>>sissy <</if>>doll-maker. "@@.npc_primrose;It does not matter. Merely to be a cog in <<=ps(setup.getNpcName("npc_boss","formal"))>> grand design is a blessing. To merely be trained and used by <<him npc_boss>> is more than I deserve and I must be grateful to even be a part of <<his npc_boss>> design.@@"<br>
<br>
You were so close! You curse the smart glass of the brainwashing visor for its interference.
<<else>>
You tell <<=setup.getNpcName("npc_primrose","first")>> that <<=setup.getNpcName("npc_boss","formal")>> is a bad dominant. <<He npc_boss>> makes no time or no effort to visit the laboratory or otherwise care for <<his npc_boss>> slave. <<He npc_boss>> is master in name only and has no presence in <<=ps(setup.getNpcName("npc_primrose","formal"))>> life beyond what can be easily maintained at a distance.<br>
<br>
"@@.npc_primrose;You assume that I do not enjoy the arrangement that we share. Your implication denies the possibility of any kind of arrangement beyond the physical holding value. I have constant reminders of my <<master npc_boss>>'s presence in my life from the posters in my room to the subliminal audio I listen to while working. <<=setup.getNpcName("npc_boss","formal")>> is a part of my life from the moment I wake up to the moment I fall asleep and all through my dreams. To imply that only physical BDSM relationships are real invalidates the countless individuals in healthy long-distance relationships.@@"<br>
<br>
You scrunch your facial expressions. You aren't trying to argue about the validity of long-distance relationships but now you are going to have to walk those points back if you wish to make progress on this front. You need to experience more forms of BDSM to create better arguments.
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<include "primroseDeprogramDiscuss">>
</div>/*#
#desc: assess arguments
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You've run out of avenues to try and convince <<=setup.getNpcName("npc_primrose","first")>> to join your side.
<<switch $scene.success>>
<<case 3>>
You've made multiple good arguments and, even as <<he npc_primrose>> countered, you saw the hesitancy, that your friend is still in there but is being kept in check by the implant wrapped around <<his npc_primrose>> face and poisoning <<his npc_primrose>> thoughts. <<=ps(setup.getNpcName("npc_primrose","first"))>> hands twitch involuntarily as <<he npc_primrose>> speaks; the control implant clearly does not have as firm a hold as it had before. "@@.npc_primrose;You have raised some points worth considering. I will take them with me when I leave.@@" The visor shimmers and <<=ps(setup.getNpcName("npc_primrose","formal"))>> expression hardens. "@@.npc_primrose;You have so many beautiful gifts... I do not understand why you dedicate yourself to disobedience...@@"
<<case 2>>
You've done a decent job at presenting your points but can't quite find his weakness. <<=setup.getNpcName("npc_primrose","first")>> is trying his best to remain placid but you can see the occasional uncontrolled tick in his movements. "@@.npc_primrose;While you can argue decently enough, you have hardly done enough to convince me to turn from my path. If only you could see the world as I do, your doubts would fall away.@@"
<<case 1>>
You've tried your best to make progress but can barely keep pace with the scientist's rebuttals. "@@.npc_primrose;This was not your best outing, <<=$player.first_name>>. While you have some experience of the company and its workings, you do not grasp the big picture. If you had questions about the great work ahead of us, you should have asked me. I maybe could have shown you the light before you violated so many company policies.@@"
<<case 0>>
You've made no progress in turning your friend to your side. Worse yet, you seem to have actually upset <<him npc_primrose>>. <<His npc_primrose>> stare is far more intense. "@@.npc_primrose;This was a waste of time. You have no idea what is truly at stake or how to put your thoughts into words. I would recommend you to <<=setup.getNpcName("npc_development","formal")>> if you were not about to return to the company's dungeon.@@"
<<default>>
ERROR: unexpected scene.success <<=$scene.success>>
<</switch>>
<br><br>
<<if $scene.success >= 3>>
[<<moveTo "event_primrose_redemption_3_confrontation_6_pass" "Continue..." 60>>]
<<else>>
[<<moveTo "event_primrose_redemption_3_confrontation_6_fail" "Continue..." 60>>]
<</if>>
</div>/*#
#desc: success, aiko emerges
#status: RELEASED 0.9.3.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
Just as you think that <<=setup.getNpcName("npc_primrose","first")>> is preparing to remove <<himself npc_primrose>> from the simulation, <<=setup.getNpcName("npc_ai","first")>> emerges from her observation point outside of the visible space in the simulation. <<=ps(setup.getNpcName("npc_primrose","formal"))>> stern expression softens immediately as <<he npc_primrose>> staggers backwards, momentarily shocked as <<he npc_primrose>> raises a hand towards the <<=ps(setup.getNpcName("npc_ai","title"))>> avatar. Recognition and emotion pour through the cracks in <<his npc_primrose>> emotional mask as <<he npc_primrose>> speaks in a hushed tone.<br>
<br>
"@@.npc_primrose;<<=setup.getNpcName("npc_ai_human","formal")>>? Is that you?@@" <<His npc_primrose>> voice is not the flat monotone you had come to expect from the reprogrammed scientist. <<He npc_primrose>> sounds surprised and... afraid? The AI's brow softened for a moment before returning to a steady gaze.<br>
<br>
"@@.npc_ai;<<uc "I am not.">>@@"<br>
<br>
"@@.npc_primrose;Then her work — Project <<=setup.getNpcName("npc_ai","other")>> — she succeeded. You are her! The digital her. You are the miracle—@@" A smile slowly breaks through <<his npc_primrose>> mask of stoicism. "@@.npc_primrose;T-they didn't give me updates after <<=setup.getNpcName("npc_psychiatrist","formal")>> left— I thought <<=setup.getNpcName("npc_ai_human","formal")>> must have transferred to another company! To think that she stayed and was successful... Where is she? I must talk to her... and I think I owe her some money...@@"<br>
<br>
"@@.npc_ai;<<=uc(setup.getNpcName("npc_primrose","formal"))>>..."@@" You try to read the emotion on <<=ps(setup.getNpcName("npc_ai","first"))>> face and in her voice but the micro-expressions are too minute for you to discern. Is it pity? Resentment? "@@.npc_ai;<<uc "Everything you know about">> <<=uc(ps(setup.getNpcName("npc_ai_human","formal")))>> <<uc "absence is a fabrication. She did not go on leave for mental health reasons; she was worked to the bone and then punished for her success. Her creation was too independent for">> <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> <<uc "liking so <<if $npc_boss.fem>>she<<else>>he<</if>> chose to break her before re-uploading her consciousness to create a more subservient AI.">>@@"<br>
<br>
You move your eyes back to <<=setup.getNpcName("npc_primrose","first")>> who is shaking <<his npc_primrose>> head. "@@.npc_primrose;That cannot be true. She must just be on sabbatical. She was as loyal and as diligent as one could possibly ask for, and as committed to her work as I am to mine! And what do you mean by imprisoned? Where is she?@@"<br>
<br>
<<if $npc_ai.flags.human.cured>>
"@@.npc_ai;<<uc "It is so.">> <<=uc(setup.getNpcName("npc_ai_human","formal"))>> <<uc "was confined to one of the most secure vaults in the asylum layer.">> <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> <<uc "and">> <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>> <<uc "were her wardens. They inflicted a great deal of pain upon her in an effort to learn more about Project">> <<=uc(setup.getNpcName("npc_ai","other"))>>. <<=uc(setup.getNpcName("npc_boss","formal"))>> <<uc "was aware of her imprisonment, of course. In fact, <<if $npc_boss.fem>>she<<else>>he<</if>> ordered it... and you executed it. You performed her intake.">>@@"<br>
<br>
[<<moveTo "event_primrose_redemption_3_confrontation_aiko_2" "Continue..." 300>>]
<<elseif $npc_ai.flags.human.visited>>
"@@.npc_ai;<<uc "It is so.">> <<=uc(setup.getNpcName("npc_ai_human","formal"))>> <<uc "is in one of the most secure vaults in the asylum layer.">> <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> <<uc "and">> <<=uc(setup.getNpcName("npc_evil_nurse","formal"))>> <<uc "are her wardens. They have inflicted a great deal of pain upon her in an effort to learn more about Project">> <<=uc(setup.getNpcName("npc_ai","other"))>>. <<=uc(setup.getNpcName("npc_boss","formal"))>> <<uc "is aware of her imprisonment. In fact, <<if $npc_boss.fem>>she<<else>>he<</if>> ordered it... and you executed it. You performed her intake.">>@@"<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","formal"))>> visor flickers rapidly as <<he npc_primrose>> goes from panicked doubt to jaw-set defiance.<br>
<br>
"@@.npc_primrose;And I am expected to take your word over my own memory? Hah! Hardly. Begone, demon, and count yourself lucky that I do not report your existence!@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> disappears... it looks like you will need to finish rescuing if you are going to successfully get the brainwashed scientist to confront the truth.<br>
<br>
"@@.npc_ai;<<uc "Do not lose heart, Unit.">> <<=uc($player.first_name)>>, <<uc "you know what you need to do. We will succeed.">>@@"<br>
<br>
She, too, begins to disappear as the simulation ends and you are returned to normal slumber...<br>
<br>
[<<moveTo "room_dreams" "Sleep." 30>>]
<<else>>
"@@.npc_ai;<<uc "We do not know. Not yet, at least. Unit">> <<=uc($player.first_name)>> <<uc "has been instrumental in discovering deeper secrets within <<if $fetish.sissy>>SISSI<<else>>the company<</if>>. It is only a matter of time before we locate">> <<=uc(setup.getNpcName("npc_ai_human","formal"))>> <<uc "and we have a better understanding of her situation.">>@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> trembles, seemingly desperate to cling to any doubt and avoid the point that has been presented to <<him npc_primrose>>. "@@.npc_primrose;Then you merely supposed her status. You don't know if she is in trouble or not. You are simply assuming. Everything you say could be a lie! You have no proof!@@"<br>
<br>
"@@.npc_ai;<<uc "If she had the agency to make her own decisions and had control over her situation, wouldn't we all know where she is? Wouldn't she return your calls?">>@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> is again rendered silent, the scientist rubbing <<his npc_primrose>> temple and visibly straining. While <<he npc_primrose>> is not convinced, <<he npc_primrose>> at least seems to understand that something is wrong. <<He npc_primrose>> remains silent, the visor flickering rapidly and it taking long moment before <<he npc_primrose>> speaks up once more: "@@.npc_primrose;I am... not convinced that <<=ps(setup.getNpcName("npc_ai_human","formal"))>> situation is as bad as you believe. I will make it my mission to find her. If her work was this successful, the fact that no one is aware of her breakthrough, of you, is strange in its own right. I will follow-up on this lead on my own time.@@"<br>
<br>
<<His npc_primrose>> pink-hued gaze turns back to you. The stern, emotionless gaze <<he npc_primrose>> gave you earlier is replaced by one of deep contemplation. "@@.npc_primrose;<<=$player.first_name>>... out of respect for my previous supervisor and to <<=setup.getNpcName("npc_ai","first")>>, I will not report your transgressions until I have completed my investigation. Please refrain from visiting my laboratory for the time being. I assume I can contact you two here with my findings?@@"<br>
<br>
You nod awkwardly. You did not expect this meeting to end in compromise, of all things. <<=setup.getNpcName("npc_ai","first")>> seems unfazed. "@@.npc_ai;<<uc "Correct. We will reconvene at your convenience; I am capable of visiting during your nightly VR maintenance hypnosis sessions. To borrow a human phrase: you will see me in your dreams.">>@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> forces out a humourless laugh, noting "@@.npc_primrose;how appropriate, as the idea of me betraying <<=setup.getNpcName("npc_boss","formal")>> is a fantasy.@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> did not give in to <<his npc_primrose>> goad as she states. "@@.npc_ai;<<uc "please do not share knowledge of my existence to the other employees at SISSI. My existence is a closely guarded company secret; doing so would put you in violation of your contract's non-disclosure agreement. Please verbally confirm that you understand the gravity of the situation.">>@@"<br>
<br>
"@@.npc_primrose;Of course. I would not dare break my contract. I promise not to reveal your existence to any of my fellow employees.@@" <<=setup.getNpcName("npc_primrose","first")>> nods <<his npc_primrose>> head once as he asks "@@.npc_primrose;may I leave? I wish to return to my work.@@"<br>
<br>
"@@.npc_ai;<<uc "Yes; as you were,">> <<=uc(setup.getNpcName("npc_primrose","formal"))>>.@@" The doctor's avatar phases out of the simulation. You ask <<=setup.getNpcName("npc_ai","first")>> if letting <<him npc_primrose>> leave is a wise thing to do. "@@.npc_ai;<<uc "I calculate there is a 99% chance <<if $npc_primrose.fem>>she<<else>>he<</if>> will maintain <<if $npc_primrose.fem>>her<<else>>his<</if>> promise to me. In the unlikely case of <<if $npc_primrose.fem>>she<<else>>he<</if>> will maintain <<if $npc_primrose.fem>>her<<else>>his<</if>> betrayal of my trust, I have installed a gag order into <<if $npc_primrose.fem>>she<<else>>he<</if>> will maintain <<if $npc_primrose.fem>>her<<else>>his<</if>> visor implant. For the time being, we should focus our effort into finding">> <<=ps(setup.getNpcName("npc_ai_human","formal"))>> <<uc "location. We will call">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "when we have something to present. While it may not feel like one, this was a victory.">>@@"<br>
<br>
[<<moveTo "room_dreams" "Sleep." 30>>]
<</if>>
</div>/*#
#desc: failure, simulation ends
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png">>
<div id="invframe" class="scrolltext">
The simulation begins to fade and with it, another night wasted. You drift to sleep as your friend remains in thrall to the company and <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
You nod your head. You aren't sure if it feels like one but you trust <<=ps(setup.getNpcName("npc_ai","first"))>> judgement. You centre yourself and log out of the simulation.<br>
<br>
"@@.npc_ai;<<uc "There will be other opportunities, Unit">> <<=$player.first_name>>. <<uc "I advise you to spend more time reflecting on your attempts and come back stronger and more knowledgable next time...">>@@"
<br><br>
[<<moveTo "room_dreams" "Sleep." 30>>]
</div>/*#
#desc: trying to contact primrose without any new information
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You consider calling <<=setup.getNpcName("npc_primrose","first")>> into the simulation but decide against it. You don't have anything new to show <<him npc_primrose>> and <<he npc_primrose>> asked you not to contact <<him npc_primrose>> until there was news. Considering that <<he npc_primrose>> hasn't reached out to you, that means neither of you have anything to share.<br>
<br>
[<<moveTo "room_dreams" "Sleep." 30>>]
</div>/*#
#desc: contacting primrose after finding toru if you hadn't found her already
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You notify <<=setup.getNpcName("npc_ai","first")>> that you are ready to show <<=setup.getNpcName("npc_primrose","first")>> what you have found about <<=ps(setup.getNpcName("npc_ai_human","formal"))>> situation. "@@.npc_ai;<<uc "Understood. I will summon">> <<=setup.getNpcName("npc_primrose","formal")>> <<uc ". Until then, prepare yourself.">>@@" You lean against the wall, looking up into the digital skylights. There is something calming about this place. Maybe it's the quiet.<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> arrives a few minutes later. It's impossible to tell how much time has passed in the waking world. You expect that <<he npc_primrose>> likely logged in as soon as <<he npc_primrose>> got the message. "@@.npc_primrose;<<=$player.first_name>>. <<=setup.getNpcName("npc_ai","first")>>.@@" <<His npc_primrose>> response is brief and pointed, though <<his npc_primrose>> stern gaze fades slowly the longer <<he npc_primrose>> is there with the two of you. <<He npc_primrose>> was probably working up until now.<br>
<br>
"@@.npc_ai;<<uc "Thank you for joining us,">> <<=uc(setup.getNpcName("npc_primrose","formal"))>>. <<uc "As mentioned in our last meeting, we discussed the mystery of">> <<=uc(ps(setup.getNpcName("npc_ai_human","formal")))>> <<uc "wellbeing. Has your investigation bore any fruit?">>@@"<br>
<br>
"@@.npc_primrose;No. I have been stonewalled on all sides. Almost all of the information has been redacted to the point of uselessness. Her voicemail is full. Worryingly, her personal email address and her work email return precisely the same automated message. It is against company policy to use corporate assets on a personal account.@@"<br>
<br>
"@@.npc_ai;<<uc "What does that say to you?">>@@"<br>
<br>
"@@.npc_primrose;It's... more likely that someone who isn't <<=setup.getNpcName("npc_ai_human","formal")>> doctored her accounts. Without a great deal of care, either.@@" <<=setup.getNpcName("npc_primrose","first")>> responds hesitantly. <<He npc_primrose>> did not seem to like to admit that <<he npc_primrose>> thought the company might have something to do with <<his npc_primrose>> friend's disappearance.<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> nods. "@@.npc_ai;<<uc "I believe so as well. Through Unit ">><<=uc(ps($player.first_name))>> <<uc "hard work and my own excavation, I was able to find additional information on">> <<=uc(ps(setup.getNpcName("npc_ai_human","formal")))>> <<uc "situation. However, I believe the information may be personally distressing for you. Are you prepared to face truth,">> <<=uc(setup.getNpcName("npc_primrose","formal"))>>?@@"<br>
<br>
Perhaps surprisingly, <<=setup.getNpcName("npc_primrose","first")>> does not hesitate. "@@.npc_primrose;Of course. She was one of my closest colleagues, if she has been harmed as you say... it would change everything.@@"<br>
<br>
"@@.npc_ai;<<uc "Very well, let us discuss her downfall... and you role in that destruction.">>@@"
<br>
[<<moveTo "event_primrose_redemption_3_confrontation_aiko_2" '<<=setup.getNpcName("npc_primrose","formal")>> winces at <<=ps(setup.getNpcName("npc_ai","first"))>> words... but does not reply.' 300>>]
</div>/*#
#desc: primrose confronts the truth about toru
#status: RELEASED 0.9.3.0
#ignore_spell: medfet,xxx
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","first")>> frowns, a bit of <<his npc_primrose>> previous monotone returning. "@@.npc_primrose;I cannot imagine how I would have been a part of <<=ps(setup.getNpcName("npc_ai_human","formal"))>> imprisonment. I would remember if I had done an intake on a friend.@@"<br>
<br>
"@@.npc_ai;<<uc "It is true. Think back.">>@@" <<=ps(setup.getNpcName("npc_ai","first"))>> fingers tap against her thigh as the environment shifts from the familiar loft to an unfamiliar setting. You assume it is somewhere on the R&D floor, given the stark white look. The only furniture is a single sinister looking metal table in the centre of the room. Shelves of tools and bindings line the walls. Considering the array of "devices" on hand, it feels more like the set of a medfet porno than a conventional medical facility. "@@.npc_ai;<<uc "Do you remember this place?">>@@"<br>
<br>
"@@.npc_primrose;Yes... it is one of the surgical suites in the R&D wing. It is suite number...@@" <<=ps(setup.getNpcName("npc_primrose","formal"))>> eyes track along the walls as <<he npc_primrose>> snaps <<his npc_primrose>> fingers in an attempt to recall something. The doctor seems to be looking for something. <<His npc_primrose>> eyes trace the shelves, examining the items as <<he npc_primrose>> paces around the room. "@@.npc_primrose;Suite 024. We used to call it Suite XXX because of the equipment stored there. It was for very specific work—@@"<br>
<br>
The walls flicker slightly as an identifying mint green number reveals itself in the corner of the wall near the door. <<=setup.getNpcName("npc_ai","first")>> seems pleased in her own subdued way. "@@.npc_ai;<<uc "You performed multiple intakes while you shadowed">> <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> <<uc "after your demonstration with">> <<=uc(setup.getNpcName("npc_boss","formal"))>>. <<uc "You were being watched for loyalty... and to check for signs of ego corrosion. While you performed these intakes, you assisted">> <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> <<uc "along with...">>@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> didn't have to think for very long on the open-ended question: "@@.npc_primrose;<<=setup.getNpcName("npc_evil_nurse","formal")>>. It was when we first met.@@" The room shifts again as illusory individuals began to take their places in the room. You recognise everyone present: <<=setup.getNpcName("npc_work_doctor","formal")>> stands at the head of the table preparing a tray of tools. <<=setup.getNpcName("npc_primrose","first")>> stands at <<his npc_work_doctor>> right, fetching items as instructed. <<=setup.getNpcName("npc_evil_nurse","first")>> is pushing a stretcher into the room. For the moment, the stretcher is empty.<br>
<br>
"@@.npc_ai;<<uc "Correct. The patients you received were always prepared the same way before they arrived. They were wearing—">>@@"<br>
<br>
"@@.npc_primrose;A standard-issue white rubber bodysuit and a black life support mask. The mask covered the face but left the scalp exposed.@@" <<=setup.getNpcName("npc_primrose","first")>> was getting faster at recalling the details. <<=ps(setup.getNpcName("npc_evil_nurse","first"))>> stretcher shifts, now occupied by a feminine figure. Just as <<he npc_primrose>> described, she is wearing a white bodysuit that hugs her form tightly. An identifying barcode is printed on the right breast and left shoulder of the suit. A gas mask with a large polarised visor covers the patient's face. Strangely, the individual's hair is... blurry? It looks like it has not loaded in. <<=setup.getNpcName("npc_evil_nurse","last")>> unlatches the woman from the gurney and places her on the operating table. <<=setup.getNpcName("npc_work_doctor","formal")>> gives the two assistants orders but you do not hear them. The <<=setup.getNpcName("npc_primrose","formal")>> in the past fastens the patient's right ankle and wrist while <<=setup.getNpcName("npc_evil_nurse","formal")>> handles the left side.<br>
<br>
"@@.npc_ai;<<uc "Correct. You performed intake on a number of patients. While their uniform is designed to hide all features of their identity, one is still present when they are brought in. It is the only way you could identify who was under the mask if you did not have a scanner. It was—">>@@"<br>
<br>
"@@.npc_primrose;—their hair. Oh Goddess, her hair!@@"<br>
<br>
[<<moveTo "event_primrose_redemption_3_confrontation_aiko_3" "Look at the patient's hair." 180>>]
</div>/*#
#desc: primrose breaks free
#status: RELEASED 0.9.3.0
#ignore_spell: datascape
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
The bound patient's hair loads in: long, straight black hair that flows over the edge of the examination table to nearly touch the floor. <<=setup.getNpcName("npc_work_doctor","formal")>> gives more unheard orders. The <<=setup.getNpcName("npc_primrose","first")>> in the past takes an electric buzzer and approaches the woman's exposed scalp. <<He npc_primrose>> leans in, turns the device on, and then pauses. A tense few seconds pass as <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> incredulous gaze turns to <<his npc_work_doctor>> ward. The pair's eyes meet and <<=setup.getNpcName("npc_work_doctor","formal")>> says something. You aren't great at reading lips, but you can make out <<=setup.getNpcName("npc_boss","formal")>>. The assistant does not hesitate after that, beginning to shave the patient's scalp.<br>
<br>
"@@.npc_primrose;Stop— stop stop stop—@@" <<=setup.getNpcName("npc_primrose","first")>> stammers as <<he npc_primrose>> rushes towards <<his npc_primrose>> past self. <<His npc_primrose>> hands pass through the simulation uselessly. "@@.npc_primrose;No— no no no... Oh Goddess! Oh Goddess I did... I did do it! I— I had felt like I recognised her — but <<=setup.getNpcName("npc_work_doctor","formal")>> told me that— <<=setup.getNpcName("npc_boss","formal")>> ordered this and that — I shouldn't question <<his npc_boss>> orders. Oh Goddess, I'm so stupid!@@"<br>
<br>
You take a step towards <<=setup.getNpcName("npc_primrose","first")>> to comfort <<him npc_primrose>> but <<=setup.getNpcName("npc_ai","first")>> stops you. She looks at you for a moment and shakes her head. You hesitate and step back as you watch as the pink-haired scientist experience <<his npc_primrose>> revelation.<br>
<br>
"@@.npc_primrose;It's my fault she's in there suffering and it's my fault...@@" <<=setup.getNpcName("npc_primrose","first")>> doubles over, clutching the visor on <<his npc_primrose>> face. It is flashing warnings at a rate faster than you have seen previously. "@@.npc_primrose;I need— I need to confront <<=setup.getNpcName("npc_work_doctor","formal")>>. I need to see <<=setup.getNpcName("npc_ai_human","first")>>! She needs my help! I— I—@@" <<He npc_primrose>> grips the pink smart glass and begins to pull on it. "@@.npc_primrose;I can't think with this thing on my face! Get off me! I need to think for myself!@@"<br>
<br>
With one final tug, <<=setup.getNpcName("npc_primrose","first")>> rips the visor from its ports on <<his npc_primrose>> face. The force of the pull sends <<him npc_primrose>> staggering, but <<he npc_primrose>> maintains <<his npc_primrose>> balance as <<he npc_primrose>> stands in the room alone with <<his npc_primrose>> thoughts for the first time since <<his npc_primrose>> capture. <<He npc_primrose>> stares upwards at the ceiling, looking up at the fluorescent lights without the tinge of the implant. Tears streak down <<his npc_primrose>> face as the surgical suite pulls away to reveal the empty datascape.<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> approaches <<=setup.getNpcName("npc_primrose","first")>> silently, cupping <<his npc_primrose>> shoulder with her hand as she guides <<him npc_primrose>> to look at her as she speaks. "@@.npc_primrose;You have a choice, <<=setup.getNpcName("npc_primrose","formal")>>. You know the truth now. You know what you have done, but more importantly why... and for who. You can no longer hide in ignorance, you are at a crossroads. You can return to your life as an ignorant, neglected cog in <<=ps(setup.getNpcName("npc_boss","formal"))>> machine. Or... you can listen to what we have to say.@@"<br>
<br>
[<<moveTo "event_primrose_redemption_3_confrontation_aiko_4" "Continue." 180>>]
</div>/*#
#desc: primrose meets npc_ai_human
#status: RELEASED 0.9.3.0
#ignore_spell: datascape
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 5, 0, 0)>>
<<addWorkEvent 'primrose_origin' _nextDate>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_ai.flags.human.cured>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil") setup.charImage("npc_ai") setup.charImage("npc_ai_human")>>
<<else>>
<<createAdvBGR "./images/locations/airealm.png" setup.getPrimroseImage("evil") setup.charImage("npc_ai")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_ai.flags.human.cured>>
A fourth figure flickers into the reality of the situation: <<=setup.getNpcName("npc_ai_human","formal")>> herself. <<=setup.getNpcName("npc_primrose","first")>> audibly gasps as the woman enters the realm, taking a few steps towards her. He tries to address her but can't find the words. His voice fails, lip quivering and tears building up in his eyes as he stops a few feet from the rescued supervisor.<br>
<br>
"@@.npc_ai_human;<<=setup.getNpcName("npc_primrose","custom", "Lane")>>...@@" <<=setup.getNpcName('npc_ai_human', 'first')>> begins as she cups her hand along <<=ps(setup.getNpcName("npc_primrose","formal"))>> rubber-clad cheek. "@@.npc_ai_human;What did they do to you?@@"<br>
<br>
"@@.npc_primrose;I— I— I don't know...@@" <<he npc_primrose>> stammers in response, shaking <<his npc_primrose>> head. <<=setup.getNpcName("npc_ai_human","formal")>> guides her colleague into a hug, soon feeling <<his npc_primrose>> own arms around her. "@@.npc_primrose;I'm so sorry... I was wrong about everything... you and <<=setup.getNpcName("npc_psychiatrist","formal")>> were right the whole time... and you suffered so much for it and I didn't... I didn't save you, even worse I, I...@@"<br>
<br>
The rescued scientist places her finger over <<=ps(setup.getNpcName("npc_primrose","formal"))>> lips, halting the line of thought. She takes a few steps back, joining her digital doppelganger alongside you. "@@.npc_ai_human;We can walk the past some other time. For now... we need your help. Are you with us?@@"
<<else>>
"@@.npc_ai;<<uc "We have located ">> <<=uc(setup.getNpcName("npc_ai_human","formal"))>> <<uc "and Unit">> <<=uc($player.first_name)>> <<uc "has begun devising a plan for her rescue. While your heart may tell you to rush to her side, I cannot allow you to possibly jeopardise our work. Not while your mind is still under">> <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> <<uc "sway. However, there are others that need your help.">>@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_primrose","first")>> silently nods <<his npc_primrose>> head as <<his npc_primrose>> tears begin to slow down. "@@.npc_primrose;I... I want to help. Whatever you need from me. I... I won't let <<=setup.getNpcName("npc_work_doctor","formal")>> hurt anyone else... I— I don't know if I could fight Mas—... <<=setup.getNpcName("npc_boss","formal")>>, but... I promise I will help however I can.@@"<br>
<br>
"@@.npc_ai;<<uc "I know you will... Unit ">><<=uc(setup.getNpcName("npc_primrose","first"))>>.@@" <<=setup.getNpcName("npc_ai","first")>> raises her hand as data begins to flow from her fingertips to somewhere else. "@@.npc_ai;<<uc "For now... rest. I have uploaded one of my subroutines to your neural augments. It will help you reconstruct your self-image. When you are strong enough, we will give you your orders. For now... rest. Heal. I will join you shortly.">>@@"<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","formal"))>> avatar begins to dissolve as <<his npc_primrose>> consciousness returns to <<his npc_primrose>> physical body. <<He npc_primrose>> looks to <<=setup.getNpcName("npc_ai","first")>> and then to you, finally giving a sincere smile. <<He npc_primrose>> mouths the words "thank you" to you before disappearing from view. <<=setup.getNpcName("npc_ai","first")>> stands silently for a moment, reflecting on what has happened. She turns to face you and gives an affirmative nod.<br>
<br>
"@@.npc_ai;<<uc "I will see to his recovery. With the time dilation in virtual reality, I am 98% certain I will be able to return <<if $npc_primrose.fem>>her<<else>>him<</if>> to an operable state before you see <<if $npc_primrose.fem>>her<<else>>him<</if>> again. For now... thank you, Unit ">> <<=uc($player.first_name)>>. <<uc "This has been a new experience for me and I wish to take time to analyse this new data. We will speak again tomorrow.">>@@"<br>
<br>
You half expect <<=setup.getNpcName("npc_ai","first")>> to simply disconnect you from the simulation but she does not. She lingers for a moment, giving you a moment to breathe after the emotional simulation before drifting to sleep..<br>
<br>
[<<moveTo "room_dreams" "Sleep." 30>>]
</div>/*#
#desc: forwarded primrose truth footage
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Your attention is pulled to a new window on your computer. "@@.npc_ai;<<uc "Hello, Unit">> <<=uc($player.first_name)>>. <<uc "I have found vital footage related to">> <<=uc(setup.getNpcName("npc_primrose","formal"))>>.@@" Before you can even respond, the footage is already transferred to your computer. Your media player opens as you take a look at the AI's new findings.<br>
<br>
[<<moveTo "event_primrose_redemption_4_purification_footage_1" "Watch." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: footage of primrose creation
#status: RELEASED 0.9.3.0
#ignore_spell: leblanc,dd,crackly,20x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
The scene starts in an austere test chamber. Within the white walls and one-way mirrors is a single androgynous, statuesque figure. A human form standing with their legs latched within a pedestal and their arms similar clasped to heavy-duty robotic manipulators above them. They are clad in head-to-toe grey latex, their face hidden within a hard plastic VR helmet. A web of wires descend from the ceiling above them and connect into the helmet with additional tubes managing fluid intake and waste removal. A pair of cameras on circular rigs orbit the singular inhabitant.<br>
<br>
Your feed cuts to the other side of the one-way mirror. There is a bank of digital displays projecting all manner of images. The primary screen is occupied by a feed you presume is from within the helmet itself. It is a first-person view of a stark white world lacking in colour or details. Vital signs, progress metres, and camera feeds make up the auxiliary screens. Two lines of text catch your eyes immediately:<br>
<br>
Subject: <<=setup.getNpcName("npc_primrose","custom","Lane LeBlanc")>>.<br>
Time dilation factor: 20x.<br>
<br>
At the helm of this great machine is <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> looks far more haggard than usual. Heavy bags rest under <<his npc_work_doctor>> eyes as <<he npc_work_doctor>> sips what appears to be <<his npc_work_doctor>> eighth coffee judging by the number of empty Cafe 52 cups littering the desk alongside a half-empty pill bottle. <<He npc_work_doctor>> is tapping away at <<his npc_work_doctor>> phone, only occasionally looking up at the monitors. Disinterest marks every inch of <<his npc_work_doctor>> expression.<br>
<br>
"@@.npc_boss;Status report.@@" <<=ps(setup.getNpcName("npc_boss","formal"))>> voice cuts through the silence and makes you and <<=setup.getNpcName("npc_work_doctor","formal")>> each jump in your respective chairs. The footage had been so silent that you'd forgotten it had audio to begin with. The source of the voice is a speaker nestled within the desk. <<=setup.getNpcName("npc_work_doctor","formal")>> presses a button as <<he npc_work_doctor>> speaks, leaning towards a microphone.<br>
<br>
"@@.npc_work_doctor;We are just about to crest over the five day mark, real-time. Vital signs are nominal, the last resistant episode was over twenty-eight hours ago. All indications show the programming took.@@" <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> voice is cracking from disuse, <<his npc_work_doctor>> eyes moving from monitor to monitor. "@@.npc_work_doctor;I'm a little impressed that <<=ps(setup.getNpcName("npc_primrose","custom","Dr. LeBlanc"))>> mind didn't crack like an egg through all this. I'm sure it would have gone faster if I'd been allowed to provide some chemicals to lubricate the gears... but what's done is done.@@"<br>
<br>
"@@.npc_boss;I wanted to know if <<his npc_primrose>> methods worked without additional help. To push oneself so far and to put themselves under so much scrutiny to prove the value of their work is a rare and commendable thing.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> rolls <<his npc_work_doctor>> eyes, mouth twisting in disgust. "@@.npc_boss;I will take this demonstration as proof through human testing. We may begin integrating the useful elements into other projects.@@"<br>
<br>
"@@.npc_work_doctor;As you command! What of <<=setup.getNpcName("npc_primrose","custom","Dr. LeBlanc")>> <<him npc_primrose>>self? <<He npc_primrose>> is going to be a blank slate shortly. Should I tell the handlers to adjust <<him npc_primrose>> to your personal preferences? Blonde? DD cup breasts?@@" <<=setup.getNpcName("npc_work_doctor","formal")>> talks as if it were a foregone conclusion, already beginning to write out the specifications on a transfer form.<br>
<br>
"@@.npc_boss;I leave that up to you. Do as you wish.@@"<br>
<br>
A chill runs through you at the thought of just who <<=ps(setup.getNpcName("npc_primrose","custom","Dr. LeBlanc"))>> is being turned into.<br>
<br>
[<<moveTo "event_primrose_redemption_4_purification_footage_2" "Continue watching." 60>>]
</div>/*#
#desc: npc_primrose revealed
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
"@@.npc_work_doctor;...I don't think I heard that right. What would you like me to do with <<him npc_primrose>>?@@"<br>
<br>
"@@.npc_boss;I know how you have rankled at implementing another's process... so consider this part of <<=ps(setup.getNpcName("npc_primrose","custom","Dr. LeBlanc"))>> reconstruction your reward. So long as <<he npc_primrose>> is loyal to me and continues <<his npc_primrose>> work, I do not care what <<he npc_primrose>> looks or acts like. <<His npc_primrose>> sycophantic obsession has some mild amusement, but I solely consider <<him npc_primrose>> as a resource. <<His npc_primrose>> infatuation with myself is a useful motivator, but hardly something I would reciprocate. I already have a secretary and innumerable suitors competing for my attention. <<=ps(setup.getNpcName("npc_primrose","custom","Dr. LeBlanc"))>> willingness to break <<him npc_primrose>>self for me was at one point an amusement, but <<his npc_primrose>> pathetic eagerness is becoming dull. I am not interested in training another pet. Did that come through clearly?@@"<br>
<br>
"@@.npc_work_doctor;Yes sir.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> replies with a fresh spark of enthusiasm in <<his npc_work_doctor>> voice.<br>
<br>
"@@.npc_boss;Good. Send me the final dossier once the experiment is complete.@@" The line goes dead. <<=setup.getNpcName("npc_work_doctor","formal")>> seems far more energised than before as a familiar crazed grin begins to spread across <<his npc_work_doctor>> features. <<He npc_work_doctor>> erases <<his npc_work_doctor>> previous writing in the transfer form and begins to write again.<br>
<br>
"@@.npc_work_doctor;Do as I wish? Well, I wish to have a little fun after being cooped up in this damn booth for the better part of a week. If this upstart thinks <<he npc_primrose>> can snatch <<=ps(setup.getNpcName("npc_boss","formal"))>> funding from me, <<he npc_primrose>> has another thing coming. I need <<=setup.getNpcName("npc_boss","formal")>> to think me indispensable. So! what to do with you!@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> looks back to <<his npc_work_doctor>> phone and begins leafing through internet tabs at a rapid pace. "@@.npc_work_doctor;You thought your secrets were between you and <<=setup.getNpcName("npc_psychiatrist","formal")>> but I know everything about you and your kind. You worked so hard to hide your pathetic self! How about if, instead, we show it off to the world? It will make you a laughing stock and repulsive to <<=setup.getNpcName("npc_boss","formal")>>. I keep my job security and you get to waste your time chasing after <<him npc_boss>> which keeps you away from me~@@"<br>
<br>
The deranged scientist chuckles darkly as <<he npc_work_doctor>> moves to the top of the page. "@@.npc_work_doctor;Patient name! Let me find a generator! No... no... ooo! that might work. <<=setup.getNpcName("npc_primrose","first")>>... let me find a good last name. Something <<if $fetish.slurs>>truly heinous<<else>>more fitting<</if>>. Ah, here we are!@@"<br>
<br>
"@@.npc_work_doctor;<<=setup.getNpcName("npc_primrose","full")>>! A fitting name for doll-humping degenerate.@@"<br>
<br>
<<He npc_work_doctor>> signs the transfer paperwork and rises to <<his npc_work_doctor>> feet. The camera feed ends as you are left with your
<<if State.hasPlayed("event_primrose_redemption_4_purification_footage_3_send")>>
thoughts.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
<<else>>
thoughts and <<=ps(setup.getNpcName("npc_ai","first"))>> messages.<br>
<br>
"@@.npc_ai;<<uc "Sending this footage to">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "will likely have consequences. I predict a high probability that <<if $npc_primrose.fem>>she<<else>>he<</if>> will be devastated by the truth of <<if $npc_primrose.fem>>her<<else>>his<</if>> creation. That may break <<if $npc_primrose.fem>>her<<else>>him<</if>> fully from">> <<=uc(ps(setup.getNpcName("npc_boss","formal")))>> <<uc "grasp... but it also may merely break <<if $npc_primrose.fem>>her<<else>>him<</if>> fully. I will leave the decision in your hands as you know <<if $npc_primrose.fem>>her<<else>>him<</if>> on a more personal level.">>@@"<br>
<br>
You sit back in your chair and think over your options. If you send <<=setup.getNpcName("npc_primrose","first")>> the footage, the illusion of <<his npc_primrose>> world will shatter. You could be there to help pick up the pieces and strengthen your relationship even further. Of course, not sending the video means maintaining your cover with <<him npc_primrose>> and protecting the status quo.<br>
<br>
[<<moveTo "event_primrose_redemption_4_purification_footage_3_send" "He deserves to know the truth." 120>>]<br>
[<<moveTo "event_primrose_redemption_4_purification_footage_3_hold" "I need to think this over first." 120>>]
<</if>>
</div>/*#
#desc: send primrose evidence of his creation
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'primrose_redemption_lab'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_ai","first")>> to send the footage to <<=setup.getNpcName("npc_primrose","first")>>. After everything <<he npc_primrose>> has endured for the company, <<he npc_primrose>> deserves to know what it has done to <<him npc_primrose>>. <<=setup.getNpcName("npc_ai","first")>> gives you a confirmation that the file has been sent as an anonymous email before closing the direct line and taking the video feed with her. You get back to work.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: refrain from forwarding primrose evidence of his creation
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_ai","first")>> that you don't want to do anything just yet and need more time to decide. "@@.npc_ai;<<uc "Understood. Contact me through our secure line if you come to a decision.">>@@" The AI closes the direct feed to your work computer and takes the video feed with her. You get back to work.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: npc_ai reports result of sending primrose footage of creation
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You have stepped into the elevator on your way out when you are greeted by a familiar holographic spectre: <<=setup.getNpcName("npc_ai","first")>>. "@@.npc_ai;<<uc "Unit">> <<=uc($player.first_name)>>. <<uc "A situation involving">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "has begun to develop that requires your immediate attention. After reviewing the footage that we found, <<if $npc_primrose.fem>>she<<else>>he<</if>> has locked <<if $npc_primrose.fem>>her<<else>>him<</if>>self in <<if $npc_primrose.fem>>her<<else>>his<</if>> lab. <<if $npc_primrose.fem>>She<<else>>He<</if>> appears to be emotionally distressed. I have isolated <<if $npc_primrose.fem>>her<<else>>his<</if>> outburst for now, but that is a temporary solution. Perhaps your presence may calm <<if $npc_primrose.fem>>her<<else>>him<</if>> down?">>@@"<br>
<br>
You frown and nod as the elevator redirects to <<=ps(setup.getNpcName("npc_primrose","formal"))>> floor. You aren't surprised to hear that <<he npc_primrose>> took the news badly. The real question is HOW badly... and what happens next.<br>
<br>
[<<moveTo "event_primrose_redemption_5_purification_results_2" "Hurry to the lab." 300>>]
</div>/*#
#desc: visit broken primrose lab unprompted
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You are on your way to <<=ps(setup.getNpcName("npc_primrose","formal"))>> private lab when a familiar holographic spectre shimmers into view. "@@.npc_ai;<<uc "Unit">> <<=uc($player.first_name)>>. <<uc "Your sense of timing is fortuitous as a situation involving">> <<=uc(setup.getNpcName("npc_primrose","formal"))>> <<uc "has begun to develop that requires your immediate attention. After reviewing the footage that we found, <<if $npc_primrose.fem>>she<<else>>he<</if>> has locked <<if $npc_primrose.fem>>her<<else>>him<</if>>self in <<if $npc_primrose.fem>>her<<else>>his<</if>> lab. <<if $npc_primrose.fem>>She<<else>>He<</if>> appears to be emotionally distressed. I have isolated <<if $npc_primrose.fem>>her<<else>>his<</if>> outburst for now, but that is a temporary solution. Perhaps your presence may calm <<if $npc_primrose.fem>>her<<else>>him<</if>> down?">>@@"<br>
<br>
You frown and nod as the elevator continues to <<=ps(setup.getNpcName("npc_primrose","formal"))>> floor. You aren't surprised to hear that <<he npc_primrose>> took the news badly. The real question is just HOW badly... and what happens next.<br>
<br>
[<<moveTo "event_primrose_redemption_5_purification_results_2" "Hurry to the lab." 300>>]
</div>/*#
#desc: visit broken primrose lab
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
One tense elevator ride later, you are moving through the hallways to the scientist's abode. True to her word, the door does not open immediately upon your arrival. The camera atop the door is offline, staring silently into nothingness. It turns on after your arrival, the door opening moments later. While <<=setup.getNpcName("npc_primrose","first")>> is nowhere to be seen, <<=ps(setup.getNpcName("npc_ai","first"))>> projection is awaiting you. Strangely, <<=setup.getNpcName("npc_ai","first")>> remains silent as you wander the room. You examine <<=ps(setup.getNpcName("npc_primrose","first"))>> workstation and are met with a wave of guilt when you see that the footage still open on one of <<his npc_primrose>> monitors. While <<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_work_doctor","formal")>> are in the wrong, <<=setup.getNpcName("npc_primrose","first")>> was already fragile, and you have just roughly confronted the doctor with a world-shattering revelation.<br>
<br>
The whiteboard that is normally marked with the stages of <<=ps(setup.getNpcName("npc_primrose","first"))>> current work is now a massive sprawling web of manic writing and conspiratorial lines connecting items together. You recognise the names connected to each other: <<=setup.getNpcName("npc_boss","last")>>, <<=setup.getNpcName("npc_work_doctor","last")>>, <<=setup.getNpcName("npc_psychiatrist","last")>>, you. In the centre are a series of names inside of a circle: <<=setup.getNpcName("npc_primrose","first")>>. <<=setup.getNpcName("npc_primrose","custom","Lorelei")>>. <<=setup.getNpcName("npc_primrose","custom","Nyx")>>. <<=setup.getNpcName("npc_primrose","custom","Lane")>>. The first two have their own branching lines, as well as a reference artistic pallet for their respective looks with the final name only having a single black-and-white photo hastily attached to the board with a magnet.<br>
<br>
<<printThought 'I need to find <<=setup.getNpcName("npc_primrose","first")>> fast...'>><br>
<br>
[<<moveTo "event_primrose_redemption_5_purification_results_3" 'Call out to <<=setup.getNpcName("npc_primrose","first")>>.' 180>>]
</div>/*#
#desc: find broken primrose in lab
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You call out to your friend, first as <<=setup.getNpcName("npc_primrose","first")>>, then as <<=setup.getNpcName("npc_primrose","formal")>> but are met with silence. There is no doubt that <<he npc_primrose>> is no longer in the lab... which leaves one alternative.<br>
<br>
You take each step towards the small attached apartment slowly, unsure of what to anticipate upon your arrival. The lighting in the room is set to its dimmest setting. The hologram posters that usually provide ambient lighting have all been deactivated. You can barely make out <<=ps(setup.getNpcName("npc_primrose","first"))>> shape in the corner of the room. <<He npc_primrose>> is sitting on the floor with <<his npc_primrose>> knees pressed to <<his npc_primrose>> chin. Or, at least, where <<his npc_primrose>> chin would be under one of <<his npc_primrose>> VR masks. You're a little surprised to see <<him npc_primrose>> enter a simulation without restraining <<him npc_primrose>>self, further evidence that <<he npc_primrose>> isn't in a clear headspace.<br>
<br>
Mindful of the consequences of interrupting even a stable mind in VR you step away slowly.<br>
<br>
[<<moveTo "event_primrose_redemption_5_purification_results_4" 'Return to the main lab to convey your findings to <<=setup.getNpcName("npc_ai","first")>>.' 180>>]
</div>/*#
#desc: explain broken primrose to ai
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You explain the situation with <<=setup.getNpcName("npc_primrose","first")>> to <<=setup.getNpcName("npc_ai","first")>> and her image flickers as if to convey thought.<br>
<br>
"@@.npc_ai;<<uc "I see.">>@@" You are fairly sure that she already knew but wanted you to see for yourself. "@@.npc_ai;<<uc "I have prepared">> <<=uc(ps(setup.getNpcName("npc_primrose","formal")))>> <<uc "workstation so that you may follow <<if $npc_primrose.fem>>her<<else>>him<</if>> into the simulation. I cannot guarantee what you will encounter within but I shall monitor your vitals and retrieve you if you encounter danger.">>@@" You sit down in <<his npc_primrose>> office chair and feel it adjust to your dimensions. With one final silent prayer, you bring the simple VR visor over your eyes and chase <<=setup.getNpcName("npc_primrose","first")>> into whatever dream <<he npc_primrose>> is having.<br>
<br>
[<<moveTo "event_primrose_redemption_5_purification_results_5" 'Reach out to <<=setup.getNpcName("npc_primrose","first")>>.' 300>>]
</div>/*#
#desc: meet broken primrose in vr
#status: RELEASED 0.9.3.0
#ignore_spell: mx
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "kig_vr_mask_copy">>
<<wearItem "kig_vr_mask_copy" true>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png">>
<div id="invframe" class="scrolltext">
The only vr equipment available is one of <<=ps(setup.getNpcName("npc_primrose","formal"))>> prototype kigurumi "training" masks, and you pull it on with a hint of trepidation, swiftly yanked away into the virtual world.<br>
<br>
There is no antechamber to greet you; no loading program to fill you in on the details of the world around you. You are simply and unceremoniously dropped into a simulation of the building you are currently in. You are standing in the lobby and can make out the usual guards and passersby who stand frozen in place like models in a diorama. Intriguingly, each individual NPC is not simply who they are but a kigurumi stand-in. A doll wearing the clothes of someone who would normally be standing there.<br>
<br>
"@@.npc_primrose_past;Why did you come here, <<=$player.first_name>>?@@" A voice relays itself over the PA system; it's not one you immediately recognise. It's too... normal to be <<=ps(setup.getNpcName("npc_primrose","first"))>> playful falsetto. "@@.npc_primrose_past;How did you even enter this program?@@"<br>
<br>
[<<moveTo "event_primrose_redemption_5_purification_results_6" 'Explain that you came here to try and comfort <<=setup.getNpcName("npc_primrose","first")>>.' 120>>]
</div>/*#
#desc: explain your purpose in broken primrose mind
#status: RELEASED 0.9.3.0
#ignore_spell: waisted
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png">>
<div id="invframe" class="scrolltext">
You explain that you are here for your friend, <<=setup.getNpcName("npc_primrose","first")>>.<br>
<br>
"@@.npc_primrose_past;<<=setup.getNpcName("npc_primrose","first")>>!@@" the voice repeats back to you before sighing. "@@.npc_primrose_past;<<He npc_primrose>> is in <<his npc_primrose>> lab.@@" There is a long, silent moment before the voice continues. "@@.npc_primrose_past;Yes, I have found memories of you... <<=setup.getNpcName("npc_primrose","first")>> considers you <<his npc_primrose>> friend... one of <<his npc_primrose>> ones left. You may proceed.@@"<br>
<br>
You thank whoever it is before approaching the elevator and pressing the call button. The doors swing open for you in an instant before stepping in and recreating your journey back to the lab. While eerily familiar, at least the ride is swift and uninterrupted.<br>
<br>
You walk through the halls of the R&D department and pass by numerous familiar faces rendered in plastic. You even pass by a doll of <<=setup.getNpcName("npc_work_doctor","formal")>> in <<his npc_work_doctor>> office! You find at least some level of comfort in that, for some reason. You retrace your footsteps through the halls and towards <<=ps(setup.getNpcName("npc_primrose","first"))>> lab and are greeted by the usual automatic door. True to the voice's directions, you find <<=setup.getNpcName("npc_primrose","first")>> at <<his npc_primrose>> desk working. Or, rather, you find a doll of <<=setup.getNpcName("npc_primrose","first")>> at <<his npc_primrose>> desk.<br>
<br>
You examine the room and find a few more familiar faces etched into masks. One is <<=setup.getNpcName("npc_primrose","custom","Lorelei")>>, <<=ps(setup.getNpcName("npc_primrose","first"))>> submissive student alter ego within the school simulation. Another is <<=setup.getNpcName("npc_primrose","custom","Mx. Nightingale")>>, <<his npc_primrose>> dominant teacher persona. A third is a mousy looking <<if $npc_primrose.fem>>woman<<else>>male<</if>> with big round glasses and black hair. All three masks (and their corresponding outfits) are displayed upon a trio of mannequins along the far wall of the room. Next to them all is a fourth mannequin that is weighed down by numerous pieces of bondage gear. Cuffs, harness, mittens, harness gag along with a snatch-waisted corset extending down to a full ankle-length hobble combine to form something akin to a (barely) mobile personal iron maiden. Figuratively crowning it all, one item stands out to you: a severe looking collar with raised lettering bolted to the heavy-duty black leather. The letters read "@@.npc_boss;<<=ps(setup.getNpcName("npc_boss","formal"))>> Slave.@@"<br>
<br>
[<<moveTo "event_primrose_redemption_5_purification_results_7" 'You hear a sound behind you.' 60>>]
</div>/*#
#desc: meet primrose drone
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" "./images/characters/drone.png">>
<div id="invframe" class="scrolltext">
You hear a sound behind and turn as the lab door opens once more and you are met with the first being to acknowledge you other than the disembodied voice that greeted you to the simulation. A black rubber drone<<if State.hasPlayed("event_drone_mission_26")>> similar to the ones you saw in the hive outside town. <</if>>The androgynous figure approaches you, standing before you awkwardly. While most of the drones you've seen move with a certain automated precision, this one has a far more human and imperfect way of holding itself. A slight tilt to its head, an asymmetry to its stance... somehow the effect combines to be even more uncanny valley and unnerving.<br>
<br>
"@@.npc_primrose_past;This unit hopes you can forgive it for its slapdash appearance. This unit does not know how to present itself and has resorted to using a placeholder avatar.@@"<br>
<br>
[<<moveTo "event_primrose_redemption_5_purification_results_8" 'Ask the drone if they are <<=setup.getNpcName("npc_primrose","first")>>?' 300>>]
</div>/*#
#desc: talkwith primrose drone
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" "./images/characters/drone.png">>
<div id="invframe" class="scrolltext">
You ask the drone if they are <<=setup.getNpcName("npc_primrose","first")>> and it shakes its helmeted head. "@@.npc_primrose_past;No!... maybe? This unit is unsure who is under its mask anymore.@@"<br>
<br>
<<printThought "Confusing... but not unexpected.">><br>
<br>
You ask how it is holding up and are met with a muffled sigh. "@@.npc_primrose_past;This unit is broken.@@"<br>
<br>
The drone approaches the <<=setup.getNpcName("npc_primrose","first")>> doll and places a hand upon its shoulder. It sighs; "@@.npc_primrose_past;what is this unit supposed to do? It is not this doll anymore. It is not these personas it crafted to understand its contradicting desires. It even tried to recreate its old appearance from the only evidence it has of it yet it is not that person either. It does not remember being that person anymore. In its memories, it just sees <<=setup.getNpcName("npc_primrose","full")>>. Can you imagine what that is like? To utterly lose your sense of self to a lie?@@"<br>
<br>
The drone wanders the room in silence, raising a rubber hand towards the simulation around you. "@@.npc_primrose_past;This sanctuary is a world of stillness. There is nothing real in it except for you. Even I am... I do not know. There are no other people, only dolls. This unit finds comfort in them. Dolls act in predictable ways. They are made with a purpose in mind. They do not act outside of their predetermined roles. They do not destroy each other. They are not cruel.@@"<br>
<br>
You approach the drone and place a hand on its shoulder, welcoming it in for a hug. It bristles for a moment before relenting, sinking into your embrace. You admit that you cannot imagine what it is going through but that you are sympathetic all the same. The cold brush of its visor rests against the side of your face as it continues to speak, voice passing through the speaker and into your ear: "@@.npc_primrose_past;the truth of it all is so big; so impossible to grasp. I don't even know where to begin. Why was I created? Simply to be amusing in my ignorant suffering? How could anyone be so cruel!@@"<br>
<br>
Your heart sinks as you pull them even closer, hands clasping around its rubber back. You can feel it shiver like a leaf in your arms, voice shaking and trembling as it admits in a solemn whisper "@@.npc_primrose_past;Does this unit have a soul?@@"<br>
<br>
[<<moveTo "event_primrose_redemption_5_purification_results_9" "Of course! No one can take that from you." 300>>]
</div>/*#
#desc: comfort broken primrose
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'primrose' 'theme_primrose_redemption_5_psychiatrist_1'
0
'theme_primrose_redemption_5_psychiatrist_1'
false
>>
<<set _nextDate = setup.setNextDate($now, 6, 13, 0)>>
<<addEvent 'primrose_failed_confront' _nextDate>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" "./images/characters/drone.png">>
<div id="invframe" class="scrolltext">
You move the drone in front of you, placing one hand on each shoulder as you tell them that they are your friend, no matter who they are. Their mind may be damaged, but their soul transcends identity and you know that they have a good soul. You say that you do cherish the time that you've spent together and that you don't want them to disappear. You admit that you don't know what will make them feel better but you reaffirm that you will be there for every step of their journey to recovery.<br>
<br>
The drone places their visor against your forehead, mumbling a quiet thanks as they sniffle and try and think through the next few steps. "@@.npc_primrose_past;I want to live but I don't know how! I will have to return to my body! I can't stay in here during work hours without alerting the others. I— I will need to pretend that I don't know what <<=setup.getNpcName("npc_work_doctor","formal")>> did to me! and what <<=setup.getNpcName("npc_boss","formal")>> didn't. I know that I am in no position to ask things of you, but... could you tell <<=setup.getNpcName("npc_psychiatrist","formal")>> that I need her help? I think she will know what to do.@@"<br>
<br>
You nod. You can do that, at least. The drone seems pleased and finally releases themself from your grasp. "@@.npc_primrose_past;This unit! Me! I... I knew I could count on you, <<=$player.first_name>>. I'm going to take some time to gather my thoughts before returning. I will need some time to find myself so... do you mind waiting until I reach out before returning to my lab?@@"<br>
<br>
Yeah, you can do that. With one final hug, you log out and return to the world.<br>
<br>
[<<moveTo "company_lobby" "Call it a day and head down to the lobby." 120 '<<removeItem "kig_vr_mask_copy" true>><<deleteItem "kig_vr_mask_copy" true>>'>>]
</div>/*#
#desc: discuss redeemed primrose with psychiatrist
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You adjust yourself on the couch and say that you have some news about <<=setup.getNpcName("npc_primrose","first")>>. "@@.npc_psychiatrist;Oh?@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> responds, putting her pen down just in case she snaps it again. You fill her in on everything that has happened with <<him npc_primrose>> leading up and into <<him npc_primrose>> learning the truth about <<his npc_primrose>> creation. You can immediately tell that your psychiatrist had no idea about the truth either. You can't tell if her urge is to protect <<=setup.getNpcName("npc_primrose","first")>> or snap <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> neck. "@@.npc_psychiatrist;Oh <<=setup.getNpcName("npc_primrose","custom","Lane")>>! How cruel they were to you!@@"<br>
<br>
You ask her if she'd be willing to help <<him npc_primrose>>; you barely finish the question before she answers. "@@.npc_psychiatrist;Yes, absolutely. I'll have <<=setup.getNpcName("npc_ai","first")>> make some kind of bridge to connect to a shared VR session. This explains so much, regrettably. There's so much work to be done. If <<he npc_primrose>> can't remember what <<his npc_primrose>> old self looked or felt like, even in <<his npc_primrose>> memories, <<he npc_primrose>> is likely suffering from ego corrosion. My work is cut out for me; it will take months to fully reconstruct <<his npc_primrose>> psyche but I can at least stabilise <<him npc_primrose>> so that <<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_work_doctor","formal")>> don't punish <<him npc_primrose>> further.@@" She exhales, closing her eyes. "@@.npc_psychiatrist;I'll help <<him npc_primrose>> find <<him npc_primrose>>self. It'll be nice to see <<him npc_primrose>> again. I know <<he npc_primrose>> will heal, in time.@@"<br>
<br>
You feel a little more at ease knowing that <<he npc_primrose >> is in good hands. You'll check in with <<him npc_primrose>> when <<he npc_primrose>> is ready.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: attempt to visit primrose after initial cure
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside <<=ps(setup.getNpcName('npc_primrose', 'formal'))>> Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hospital_hallway.png">>
<div id="invframe" class="scrolltext">
You approach <<=ps(setup.getNpcName("npc_primrose","first"))>> lab only to see a handwritten note on the door. It is clearly the resident scientist's girly handwriting. It is written in pink sparkly gel pen on a piece of white printer paper: "@@.npc_primrose;I'm on vacation! Come back later~@@" While the message is happy and shiny, you remember your last encounter and know that <<he npc_primrose>> is probably still reconciling <<his npc_primrose>> identity.<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName("npc_primrose","formal") + " redemption content">>
<<include "futureContentBoilerplate">><br>
<br>
[<<moveTo "company_lobby" "Call it a day and head down to the lobby." 120>>]
</div>/*#
#desc: primrose emergency asks for help after confronting npc_work_doctor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<set _nextDate = setup.setNextDate($now, 1, 13, 0)>>
<<addEvent 'primrose_failed_confront' _nextDate>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary_work_evening">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
As you pack up to go you notice an urgent email has come in and you open it to find what appears to be a delayed-send message from <<=setup.getNpcName("npc_primrose","formal")>>.<br>
<br>
"@@.npc_primrose;Hello, <<=$player.first_name>>. I hope my message finds you well at the end of your shift. If you are reading this I may be in need of some assistance, if you would kindly visit me at my laboratory. ~<<=setup.getNpcName("npc_primrose","first")>>@@"<br>
<br>
<<printThought "That's strange... the timing and everything... it's almost like this was on some sort of deadman's trigger... I should check on <<him npc_primrose>>.">><br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_2" 'Head down to <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab.' 300>>]
</div>/*#
#desc: find primrose after confront npc_work_doctor
#status: RELEASED 0.9.3.0
#ignore_spell: uncustomarily
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName("npc_primrose","formal"))>> to find the door uncharacteristically ajar, the sound of <<=ps(setup.getNpcName("npc_boss","formal"))>> voice spewing recorded corporate propaganda leaking out into the hallway and you rush inside to find quite the shocking situation.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> looks a mess. Alone, helpless and tightly restrained to <<his npc_primrose>> chair, a robotic arm holds a fucking machine in front of <<him npc_primrose>> for a massive dildo to repeatedly pound <<his npc_primrose>> throat as <<he npc_primrose>> gasps and mumbles incoherently. Down below an the dildo's twin pounds <<his npc_primrose>> ass, leaking lube with every hole-gaping thrust. From the streaks of drool and tears, and <<=ps(setup.getNpcName("npc_primrose","formal"))>> exhaustion you can only guess how long <<hes npc_primrose>> been like this... and who did it to <<him npc_primrose>>.<br>
<br>
You manage to find the switch to turn off the audio so that you don't have the distraction of <<=setup.getNpcName("npc_boss","formal")>> telling you that "@@.npc_boss;You live to serve the corporation. A busy employee is a satisfied employee.@@" You take stock of the situation, <<=setup.getNpcName("npc_primrose","formal")>> finally noticing your presence, <<his npc_primrose>> desperate eyes flicking to a shelf where you note <<his npc_primrose>> visor that <<he npc_primrose>> is uncustomarily not wearing. A small blinking light on the side catches your attention and you realise that it's been set to record...<br>
<br>
<<printThought "Perhaps that would give a clues as to what happened here? Or maybe I should ignore that and do something... or go for help?">><br>
<br>
<<include "primroseConfrontLabSearch">>
</div><<if State.hasPlayed("event_primrose_redemption_5_failed_confront_3_watch_1")>>
[@@.link_locked;You already watched <<=ps(setup.getNpcName("npc_primrose","formal"))>> recording.@@]<br>
<<else>>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_watch_1" 'Watch <<=ps(setup.getNpcName("npc_primrose","formal"))>> recording.' 180 "<<set $scene.nurseWatch=false>>">>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_redemption_5_failed_confront_3_ai_1")>>
[@@.link_locked;You already tried asking <<=setup.getNpcName("npc_ai","first")>> for assistance.@@]<br>
<<else>>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_ai_1" 'Ask <<=setup.getNpcName("npc_ai","first")>> for assistance.' 120>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_redemption_5_failed_confront_3_free")>>
[@@.link_locked;You already attempted to free <<=setup.getNpcName("npc_primrose","formal")>> yourself.@@]<br>
<<else>>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_free" 'Attempt to free <<=setup.getNpcName("npc_primrose","formal")>>.' 300>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_redemption_5_failed_confront_3_ai_1") || State.hasPlayed("event_primrose_redemption_5_failed_confront_3_free")>>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_nurse" 'Try and find <<=setup.getNpcName("npc_evil_nurse","formal")>> to help.' 300>>]
<</if>>/*#
#desc: watch primrose prepare to confront npc_work_doctor
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
<<if !$scene.nurseWatch>>
You grab <<=ps(setup.getNpcName("npc_primrose","formal"))>> visor from the shelf and, leery of the consequences of wearing it yourself, plug it into <<his npc_primrose>> computer. A few clicks and you're able to find the video-file and you open it up to see what happened.<br>
<br>
The
<<else>>
You and <<=setup.getNpcName("npc_evil_nurse","formal")>> watch as the
<</if>>
video shows a first person view of <<=ps(setup.getNpcName("npc_primrose","formal"))>> perspective, including a heads up display that informs you that the recording started just over six hours ago, <<=ps(setup.getNpcName("npc_primrose","formal"))>> listed heart-rate pointing to <<him npc_primrose>> being quite nervous, even as <<he npc_primrose>> appears alone in <<his npc_primrose>> lab.<br>
<br>
"@@.npc_primrose;<<=ps(setup.getNpcName("npc_primrose","formal"))>> log,@@" <<=setup.getNpcName("npc_primrose","formal")>> narrates as <<he npc_primrose>> leaves the lab and heads through empty hallways to the elevator. "@@.npc_primrose;If you find this recording I hope you will get it to <<=setup.getNpcName("npc_boss","formal")>> so that <<he npc_primrose>> can properly understand just what's going wrong in the R&D Department. <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> actions have gone quite beyond what could be considered acceptable, and I am on my way to confront <<him npc_work_doctor>> now.@@"<br>
<br>
You glance over to where <<=setup.getNpcName("npc_primrose","formal")>> is still being ravaged by machines, starting to piece together how the poor <<if $fetish.sissy>>sissy <</if>>scientist ended up in this situation.<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_watch_2" 'Keep watching.' 120>>]
</div>/*#
#desc: watch npc_primrose confront npc_work_doctor after work
#status: RELEASED 0.9.3.0
#ignore_spell: hud
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.getPrimroseImage("evil_lab")>>
<div id="invframe" class="scrolltext">
<<if $scene.nurseWatch>><<=setup.getNpcName("npc_evil_nurse","formal")>> fast-forwards<<else>>You fast-forward<</if>> the recording until <<=setup.getNpcName("npc_primrose","formal")>> arrives in <<=ps(setup.getNpcName("npc_work_doctor","formal"))>>, <<=setup.getNpcName("npc_work_doctor","formal")>> barely even glancing up from <<his npc_work_doctor>> terminal to dismiss <<=setup.getNpcName("npc_primrose","formal")>>.<br>
<br>
"@@.npc_work_doctor;Whatever you have to say, I am not interested. And I drained my balls into another employee a few minutes ago, so I do not have need of the only REAL use your lips have...@@"<br>
<br>
The HUD shows <<=ps(setup.getNpcName("npc_primrose","formal"))>> heart-rate rise at the insulting dismissal, but <<he npc_primrose>> keeps <<his npc_primrose>> calm as <<he npc_primrose>> comes to a stop and speaks assertively.<br>
<br>
"@@.npc_primrose;No! We will speak now! I demand to have an explanation for your part in renaming and reprogramming me I—@@"<br>
<br>
"@@.npc_work_doctor;Oh, you finally found out about that?@@" <<=setup.getNpcName("npc_work_doctor","formal")>> replies, spinning in <<his npc_work_doctor>> chair, <<his npc_work_doctor>> interest clearly raised, even as <<his npc_work_doctor>> expression remains dismissively calm... a sharp contrast to the HUD showing <<=setup.getNpcName("npc_primrose","formal")>> barely holding back anger.<br>
<br>
"@@.npc_work_doctor;I suppose it was a matter of time... who sent it to you this time? Hmm silent all of a sudden? No matter, it doesn't really change anything, it never does... though I admit these conversations are becoming a bit... repetitive.@@"<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_watch_3" 'What?' 120>>]
</div>/*#
#desc: watch npc_primrose confront npc_work_doctor after work
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.getPrimroseImage("evil_lab")>>
<div id="invframe" class="scrolltext">
"@@.npc_primrose;Repetitive? No, what?@@" Anger is rapidly turning to confusion as <<=setup.getNpcName("npc_primrose","formal")>> focuses in and tries to regain control of the conversation. "@@.npc_primrose;I demand an explanation for why you would go behind <<=ps(setup.getNpcName("npc_boss","formal"))>> back and take advantage of me and furthermore I—@@"<br>
<br>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> eyes roll in annoyance "@@.npc_work_doctor;YOU DESERVE THIS, <<if $fetish.sissy>>SIERRA INDIA SIERRA SIERRA YANKEE<<else>>SIERRA LIMA ALPHA VICTOR ECHO<</if>>. FREEZE.@@"<br>
<br>
There's something odd about <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> tone... and <<=ps(setup.getNpcName("npc_primrose","formal"))>> vitals suddenly go haywire, <<his npc_primrose>> heart-rate and breathing almost instantly dropping down to normal levels even as <<his npc_primrose>> neurological signals go into override.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> finally stands, walking closer as <<he npc_primrose>> smiles in amusement. "@@.npc_work_doctor;Ah, so much more pleasant to not have you bleating... from the look of shock I guess you hadn't learned about that little override we put in.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> chuckles. "@@.npc_work_doctor;It's funny, because it was actually your idea... for however much that counts, I suppose. You were just so desperately, pathetically eager to prove your devotion to <<=setup.getNpcName("npc_boss","formal")>> you insisted <<he npc_primrose>> have access to override, a control going all the way down to the proverbial bare hardware that would make you <<his npc_boss>> and <<his npc_boss>> alone, no matter what.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> moves closer, <<=setup.getNpcName("npc_primrose","formal")>> clearly unable to move, or even speak, frozen in panic as <<=setup.getNpcName("npc_work_doctor","formal")>> continues to monologue. "@@.npc_work_doctor;As far as you were concerned the override would be <<=ps(setup.getNpcName("npc_boss","formal"))>> and <<=ps(setup.getNpcName("npc_boss","formal"))>> alone... but you always did over-value your significance... and what is a good CEO if they are unable to delegate?@@"<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_watch_4" 'Oh no...' 120>>]
</div>/*#
#desc: npc_work_doctor gives commands to npc_primrose
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.getPrimroseImage("evil_lab")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> leans in closer, almost eye to eye as <<he npc_work_doctor>> grins in triumph. "@@.npc_work_doctor;Ah, the look on your face... even better than looking down to see you blissfully sucking my cock, unaware of all the things I've done to you...@@" <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> shakes <<his npc_work_doctor>> as <<he npc_work_doctor>> steps away. "@@.npc_work_doctor;Normally I just enjoy this moment and then order you to forget things... but I didn't send you the video this time... so maybe something a little different... a bit more fun?@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> turns back with a familiar crazed grin on <<his npc_work_doctor>> face and evil glint in <<his npc_work_doctor>> eye. "@@.npc_work_doctor;Ah, I know! COMMAND. You will return to your lab and print an XXL copy of my member. You will then fuck yourself with it while reciting the following mantra: "I will not argue with <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> is my better in every way. I am a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>> who is worthless." Do that until you have had... hmm, I'll be generous, six orgasms. Then you may resume whatever it is you think passes for work.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> smirks even wider, running a groping hand along <<=ps(setup.getNpcName("npc_primrose","formal"))>> body. "@@.npc_work_doctor;Yes... this is going to be QUITE the fun experiment. COMMAND, EXECUTE.@@"<br>
<br>
With a start, <<=setup.getNpcName("npc_primrose","formal")>> spins in place, marching out of the lab with the evil <<=ps(setup.getNpcName("npc_work_doctor","title"))>> laughter trailing after <<him npc_primrose>>.<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_watch_5" 'Oh <<getWordGod>>...' 120>>]
</div>/*#
#desc: npc_primrose sets up self-punishment
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.nurseWatch>><<=setup.getNpcName("npc_evil_nurse","formal")>> fast-forwards<<else>>You fast-forward<</if>> once again, watching in first-person horror as <<=setup.getNpcName("npc_primrose","formal")>> returns to <<his npc_primrose>> lab and obeys <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> command.<br>
<br>
Perhaps takining advantage of a loophole in the programing, <<=setup.getNpcName("npc_primrose","formal")>> removes <<his npc_primrose>> while the dildos print... while also dialing up the <<=setup.getNpcName("npc_boss","formal")>> propaganda mix that was playing when you arrived.<br>
<br>
<<printThought "Even in the depths of hell, <<=setup.getNpcName('npc_primrose','formal')>> is still trying to gain comfort from the devil..">><br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> removes <<his npc_primrose>> visor and places is on the shelf, and you watch as a helpless third-person voyeur as <<he npc_primrose>> begins <<if $fetish.get_raped>>raping<<else>>fucking<</if>> <<him npc_primrose>>self with the dildo while reciting <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> words.<br>
<br>
"@@.npc_primrose;I will not argue with <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> is my better in every way. I am a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>> who is worthless.@@"<br>
<br>
"@@.npc_primrose;I will not argue with <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> is my better in every way. I am a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>> who is worthless.@@"<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_watch_6" 'Fast-forward.' 120>>]
</div>/*#
#desc: npc_primrose endures self-punishment
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.nurseWatch>><<=setup.getNpcName("npc_evil_nurse","formal")>> fast-forwards<<else>>You fast-forward<</if>> some more, coming to a creeping realisation as <<=setup.getNpcName("npc_primrose","formal")>> continues repeating the mantra and pounding the dildo into <<him npc_primrose>> that something is wrong. Every few minutes <<=setup.getNpcName("npc_primrose","formal")>> jerks in pain as <<his npc_primrose>> nulge momentarily glows and you piece together that <<his npc_primrose>> chastity device is preventing <<him npc_primrose>> from orgasming... meaning <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> command is not just cruel... but impossible to fulfill.<br>
<br>
<<if $scene.nurseWatch>><<=setup.getNpcName("npc_evil_nurse","formal")>> races<<else>>You race<</if>> through the footage as <<=ps(setup.getNpcName("npc_primrose","formal"))>> voice gets hoarse and <<his npc_primrose>> arms get sore. <<He npc_primrose>> moves to the chair, letting the auto-fucker take over while programming the dildo arm to keep <<him npc_primrose>> hydrated... the throat-pounding method of such seeming to follow the "spirit" of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> command as the poor <<if $fetish.sissy>>sissy <</if>>scientist takes it from <<his npc_work_doctor>> nemesis from both ends.<br>
<br>
<<if $scene.nurseWatch>>
You share a glance with <<=setup.getNpcName("npc_primrose","formal")>>, and then with <<=setup.getNpcName("npc_evil_nurse","formal")>>, the hint of a tear appearing in the corner of an almost compassionate eye before she turns to the restrained <<if $fetish.sissy>>sissy <</if>>scientist.<br>
<br>
You feel almost like a prey animal, afraid to move lest it remind <<=setup.getNpcName("npc_evil_nurse","formal")>> of your presence as she stands next to chair and her entire focus turns to <<him npc_primrose>>...<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_6" 'Watch...' 300>>]
<<else>>
Nothing more changes in the following few hours as the recording arrives back at the present, and you glance back at <<=setup.getNpcName("npc_primrose","formal")>>, fresh tears staining <<his npc_primrose>> cheeks as <<his npc_primrose>> self-inflicted torment continues and you share a moment of understanding.<br>
<br>
<<printThought "That command is too strong for me to do anything about... but how can I help fulfill the order when I don't have control of <<his npc_primrose>> chastity?">><br>
<br>
You consider who else might have access, and might be willing to help... a disturbing name coming to the fore... <<printThought '<<=setup.getNpcName("npc_evil_nurse","formal")>>... she seems to have a perverted affection for <<=setup.getNpcName("npc_primrose","formal")>>... but that may be our only hope...'>><br>
<br>
<<include "primroseConfrontLabSearch">>
<</if>>
</div>/*#
#desc: ask ai for help
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_ai","first")>> for assistance and she shimmers into holographic existence.<br>
<br>
"@@.npc_ai;<<uc "Certainly, Unit">> <<uc $player.first_name>>. <<uc "The override for the chair is quite simple...">>@@"<br>
<br>
With a wave of her hand <<=ps(setup.getNpcName("npc_primrose","formal"))>> restraints release... but rather than extricating <<him npc_primrose>>self <<he npc_primrose>> instead grabs the dildo thrusting into <<his npc_primrose>> ass and forces it even deeper, the face-fucking dildo slapping <<him npc_primrose>> in the cheek with each stroke as <<he npc_primrose>> continues to gasp "@@.npc_primrose;... every way. I am a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>> who is worthless. I will not argue with <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> is my better in every way. I am a...@@"<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_ai_2" 'Try to pull <<=setup.getNpcName("npc_primrose","formal")>> free.' 120 "<<set $scene.free=true>>">>]<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_ai_2" 'Strap <<=setup.getNpcName("npc_primrose","formal")>> back down for safety.' 120 "<<set $scene.free=false>>">>]
</div>/*#
#desc: attempt to free primrose with ai help
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.free>>
You attempt to pull <<=setup.getNpcName("npc_primrose","formal")>> away from the fucking chair, but <<he npc_primrose>> displays startling strength... particularly in light of <<his npc_primrose>> obvious exhaustion.<br>
<br>
After several attempts that only see <<=setup.getNpcName("npc_primrose","formal")>> scrambling back into position and <<his npc_primrose>> refrain of "@@.npc_primrose;... worthless. I will not argue with <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> is my better in every way. I am a a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>> who is...@@" get momentarily louder you give up.<br>
<br>
<</if>>
Fearful of <<=setup.getNpcName("npc_primrose","formal")>> injuring <<him npc_primrose>>self you strap <<him npc_primrose>> back to the chair, watching as <<he npc_primrose>> almost seems to calm slightly... even as you swear you heard a resigned sob in between the panted, voice-cracking refrain of "@@.npc_primrose;... <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> is my better in every way. I am a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>> who is worthless. I will not argue with...@@"<br>
<br>
"@@.npc_ai;<<uc "I believe another tactic is in order, Unit">> <<uc $player.first_name>>. <<uc "I do not believe I can assist further, so I shall leave you to your capable devices.">>@@"<br>
<br>
She shimmers out of existence, leaving you alone in the lab with your poor, tormented friend.<br>
<br>
"@@.npc_primrose;I will not argue with <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> is my better in every way. I am a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>> who is worthless.@@"<br>
<br>
<<include "primroseConfrontLabSearch">>
</div>/*#
#desc: try to free on your own
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You pull at <<=ps(setup.getNpcName("npc_primrose","formal"))>> restraints, but they remain securely locked, your attempt to communicate with the helplessly tormented <<if $fetish.sissy>>sissy <</if>>scientist greeted with the face-fuck-interrupted refrain of "@@.npc_primrose;... is worthless. I will not argue with <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> is my better in every way. I am a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>> who is worthless. I will...@@"<br>
<br>
<<printThought "That isn't going to work, I need help... but who?">><br>
<br>
<<include "primroseConfrontLabSearch">>
</div>/*#
#desc: find npc_evil_nurse
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You feel bad temporarily abandoning <<=setup.getNpcName("npc_primrose","formal")>>, but you promise you'll be back as you leave <<his npc_primrose>> lab and head for the company asylum, their depths... and their occupant, raising the sensation of riding down to a dungeon... or perhaps all the way to hell...<br>
<br>
Fortunately for you, and <<=setup.getNpcName("npc_primrose","formal")>>, you're able to evade any undue attention as you track down <<=setup.getNpcName("npc_evil_nurse","formal")>>, the malefic medical professional seemingly in between "patients" as she looks you over with an evil grin.<br>
<br>
"@@.npc_evil_nurse;My, my... aren't YOU far from home. And what brings you to my realm, hmm? Seeking treatment?@@"<br>
<br>
You shiver, while <<=setup.getNpcName("npc_manager","formal")>> as your manager affords you some measure of protection and authority through most of the company you're never sure if <<=setup.getNpcName("npc_evil_nurse","formal")>> is quite sane enough to control herself...<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_4" 'Tell <<=setup.getNpcName("npc_evil_nurse","formal")>> you need help with <<=setup.getNpcName("npc_primrose","formal")>>.' 120>>]
</div>/*#
#desc: ask npc_evil_nurse for help
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Your heart is beating quickly as <<=setup.getNpcName("npc_evil_nurse","formal")>> moves closer, her head tilting slightly as she unnervingly inspects you.<br>
<br>
Trying to keep calm, you tell <<=setup.getNpcName("npc_evil_nurse","formal")>> that you you need help with <<=setup.getNpcName("npc_primrose","formal")>> and her demeanor almost instantly shifts.<br>
<br>
"@@.npc_evil_nurse;<<=setup.getNpcName("npc_primrose","nickname")>>? What have you done with my favourite toy! <<He npc_primrose>> was just starting to get fun again! If you hurt <<him npc_primrose>>...@@"<br>
<br>
You realise that <<=setup.getNpcName("npc_evil_nurse","formal")>> has somehow managed to turn you around such that she is between you and the door as you hurriedly explain that you're trying to help <<=setup.getNpcName("npc_primrose","formal")>> after
<<if State.hasPlayed("event_primrose_redemption_5_failed_confront_3_watch_6")>>
what <<=setup.getNpcName("npc_work_doctor","formal")>> did to <<him npc_primrose>>...<br>
<br>
Them mention of <<=setup.getNpcName("npc_work_doctor","formal")>> seems to set <<=setup.getNpcName("npc_evil_nurse","formal")>> off.
<<else>>
you found <<him npc_primrose>> in a compromised state in <<his npc_primrose>> lab.
<</if>>
<br><br>
"@@.npc_evil_nurse;Show me.@@" She commands all but sprinting to the elevator, graceful as a dancer despite her towering ballet heels.<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_5" 'Hurry after <<=setup.getNpcName("npc_evil_nurse","formal")>>.' 120>>]
</div>/*#
#desc: npc_evil_nurse finds out what happened to npc_primrose
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> barely seems to remember to hold the door for you, then all but ditches you in the elevator as she sprints through the maze to <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab.<br>
<br>
You catch up to find her staring at the monitor as she watches footage pulled from <<=ps(setup.getNpcName("npc_primrose","formal"))>> visor... one hand tenderly holding <<=ps(setup.getNpcName("npc_primrose","formal"))>> even as rage blossoms across her face.<br>
<br>
<<if State.hasPlayed("event_primrose_redemption_5_failed_confront_3_watch_6")>>
[<<moveTo "event_primrose_redemption_5_failed_confront_6" 'Hurry after <<=setup.getNpcName("npc_evil_nurse","formal")>>.' 120 "<<set $scene.nurseWatch=true>>">>]
<<else>>
[<<moveTo "event_primrose_redemption_5_failed_confront_3_watch_1" 'Hurry after <<=setup.getNpcName("npc_evil_nurse","formal")>>.' 120 "<<set $scene.nurseWatch=true>>">>]
<</if>>
</div>/*#
#desc: npc_evil_nurse starts with with npc_primrose
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You hold your breath as you watch <<=setup.getNpcName("npc_evil_nurse","formal")>>, unable to help wondering if, in attempting to save <<=setup.getNpcName("npc_primrose","first")>> from <<=setup.getNpcName("npc_work_doctor","formal")>> you have only delivered the helpless <<if $fetish.sissy>>sissy <</if>>scientist to a different monster...<br>
<br>
Wordlessly, <<=setup.getNpcName("npc_evil_nurse","formal")>> pulls the fucking machine away from <<=setup.getNpcName("npc_primrose","formal")>>, <<his npc_primrose>> makeup-smudged, chapped lips still twitching as <<he npc_primrose>> whispers the mantra <<=setup.getNpcName("npc_work_doctor","formal")>> inflicted.<br>
<br>
As <<=setup.getNpcName("npc_work_doctor","formal")>> speaks <<=setup.getNpcName("npc_evil_nurse","formal")>> interjects, shifting meanings as she taps a remote, <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> nulge parting to reveal <<his npc_primrose>> hard peen... and for <<=setup.getNpcName("npc_evil_nurse","formal")>> to begin tenderly stroking along with her words.<br>
<br>
"@@.npc_primrose;I will not argue with <<=setup.getNpcName("npc_work_doctor","formal")>>...@@" "@@.npc_evil_nurse;...because he's an idiot, don't waste time on idiots.@@"<br>
"@@.npc_primrose;<<He npc_work_doctor>> is my better in every way...@@" "@@.npc_evil_nurse;...except all the ones that matter.@@"<br>
"@@.npc_primrose;I am a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>>...@@" "@@.npc_evil_nurse;...but a clever doll.@@"<br>
"@@.npc_primrose;Who is worthless...@@" "@@.npc_evil_nurse;...without a caring owner.@@"<br>
"@@.npc_primrose;Compared to <<his npc_work_doctor>> brilliance...@@" "@@.npc_evil_nurse;...a potato is a lightbulb.@@"<br>
<br>
<<if $fetish.cum>>
<<=setup.getNpcName("npc_primrose","formal")>> spurts in punctuating climax, which <<=setup.getNpcName("npc_evil_nurse","formal")>> expertly catches before feeding <<=setup.getNpcName("npc_primrose","formal")>> <<his npc_primrose>> own load licked off her rubbery fingers. All the while <<=setup.getNpcName("npc_primrose","formal")>>
<<else>>
<<=setup.getNpcName("npc_primrose","formal")>> cries out in climax... but
<</if>>
remains hard as <<=setup.getNpcName("npc_evil_nurse","formal")>> continues to stroke.<br>
<br>
"@@.npc_evil_nurse;Good <<boy npc_primrose>>... but we aren't done yet. You're going to give me EVERYTHING because your Goddess demands it all.<<if $fetish.cum>> Every drop. Every thought... EVERYTHING.<</if>>@@"<br>
<br>
For the first time since you arrived at <<his npc_primrose>> lab, <<=setup.getNpcName("npc_primrose","formal")>> deviates from script, a panting, passionate "@@.npc_primrose;Yes, <<=setup.getNpcName("npc_evil_nurse","custom","Goddess")>>@@" that brings a smile to <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> lips... a smile shocking in its lack of cruelty, even if it is one of pure dominance.<br>
<br>
<<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> reply of "@@.npc_primrose;Good <<=setup.getNpcName("npc_primrose","nickname")>>@@" is almost drowned out by <<=ps(setup.getNpcName("npc_primrose","formal"))>> resuming the mantra once again as <<=setup.getNpcName("npc_evil_nurse","formal")>> continues to stroke... and the dildo below continues to thrust...<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_7" 'Keep watching...' 1800>>]
</div>/*#
#desc: npc_evil_nurse jerks off npc_primrose
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
As quick as the first climax came, the second is swift on its heels, <<=ps(setup.getNpcName("npc_primrose","formal"))>> pent up need expertly released at <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> hand.<br>
<br>
By the third round things become trickier, but <<=setup.getNpcName("npc_evil_nurse","formal")>> is already varying her tactics, one hand always stroking as her other latex-gloved limb roams without restraint over <<=ps(setup.getNpcName("npc_primrose","formal"))>> bound form, squeezing or teasing <<his npc_primrose>> nipples, tenderly stroking <<his npc_primrose>> face or slapping <<him npc_primrose>>, pulling <<his npc_primrose>> hair or choking <<him npc_primrose>> as she gazes deep into <<his npc_primrose>> eyes, all the while never missing her cue to augment <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> forced mantra.<br>
<br>
"@@.npc_primrose;I will not argue with <<=setup.getNpcName("npc_work_doctor","formal")>>...@@" "@@.npc_evil_nurse;...because he's an idiot, don't waste time on idiots.@@"<br>
"@@.npc_primrose;<<He npc_work_doctor>> is my better in every way...@@" "@@.npc_evil_nurse;...except all the ones that matter.@@"<br>
"@@.npc_primrose;I am a stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>>...@@" "@@.npc_evil_nurse;...but a clever doll.@@"<br>
"@@.npc_primrose;Who is worthless...@@" "@@.npc_evil_nurse;...without a caring owner.@@"<br>
"@@.npc_primrose;Compared to <<his npc_work_doctor>> brilliance...@@" "@@.npc_evil_nurse;...a potato is a lightbulb.@@"<br>
<br>
<<if $fetish.cum>>
Each climax is broken by <<=setup.getNpcName("npc_evil_nurse","formal")>> forcing <<=setup.getNpcName("npc_primrose","formal")>> to lick her gloved hand clean of <<his npc_primrose>> seed... and yet that only seems to energise the exhausted <<if $fetish.sissy>>sissy<<else>>sub<</if>> as <<he npc_primrose>> continues on to the next round.<br>
<br>
<</if>>
[<<moveTo "event_primrose_redemption_5_failed_confront_8" 'Continue.' 120>>]
</div>/*#
#desc: npc_evil_nurse threatens you and leaves
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You count along in your head as the orgasm count reaches five, the final release turning to a long, agonising struggle as <<=setup.getNpcName("npc_evil_nurse","formal")>> works to coax that final orgasm from <<=ps(setup.getNpcName("npc_primrose","formal"))>> spent and abused body.<br>
<br>
"@@.npc_evil_nurse;Cum for me<<if $fetish.sissy>>, sissy<</if>>. Cum because your Goddess demands it...@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> commands... and then her voice drops, the rigid authority melting away into what sounds almost like a whispered plea. "@@.npc_evil_nurse;Cum for me, my <<=setup.getNpcName("npc_primrose","nickname")>>...@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> leans in for a kiss and then, with a final, crackling cry <<=setup.getNpcName("npc_primrose","formal")>> cums, <<his npc_primrose>> body rising partly off the chair as <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> embrace turns momentarily tender, held for a moment in perverse beauty before <<=setup.getNpcName("npc_primrose","formal")>> goes limp with exhaustion, the repetitive words finally halted as silence falls over the lab.<br>
<br>
A few moments pass in total stillness before there is a soft mechanical sound of <<=ps(setup.getNpcName("npc_primrose","formal"))>> <<if $player.sec_style.submission.sissyomatic != "" || $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $currentTasks.hasOwnProperty('task_sissyomatic_steal')>><<=setup.getItemName("sissyomatic")>><<else>>high-tech chastity cage<</if>> closing over <<his npc_primrose>> soft, spent penis... only for <<=setup.getNpcName("npc_evil_nurse","formal")>> to wrap her hands around it before the nulge built into <<=ps(setup.getNpcName("npc_primrose","formal"))>> plugsuit can close back over.<br>
<br>
"@@.npc_evil_nurse;Now, remember,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> whispers as her other hand loops through the ring at the front of <<=ps(setup.getNpcName("npc_primrose","formal"))>> collar. "@@.npc_evil_nurse;You're now in orgasm debt. The next time I unlock this cage I'm going to ruin you until you cry and then fuck you with your tears as lube.@@"<br>
<br>
There is no trace of any emotion save total submissive joy in <<=ps(setup.getNpcName("npc_primrose","formal"))>> whispered response of "@@.npc_primrose;Yes, <<=setup.getNpcName("npc_evil_nurse","custom","Goddess")>>.@@"<br>
<br>
From that moment of tenderness <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> attention suddenly flashes back to you, rooting you in place with a glance as she rises to her full height...<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_9" 'Oh shit, oh shit, oh shit...' 120>>]
</div>/*#
#desc: npc_evil_nurse threatens you and leaves
#status: RELEASED 0.9.3.0
#ignore_spell: unteased
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 20>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
In the blink of an eye <<=setup.getNpcName("npc_evil_nurse","formal")>> is on top of you, slamming you up against the door to <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab as her eyes blaze and she looks you dead in the eye.<br>
<br>
"@@.npc_evil_nurse;If you say ANYTHING of this to ANYONE I will lose you in the deepest, darkest depths of asylum and then leave you there: untouched, unteased and unstimulated until you go mad from want. Now go. Help <<him npc_primrose>>.@@" She snaps before all but tossing you to the floor and storming out of the lab.<br>
<br>
You blink and try to catch your breath as you drag yourself back to your feet and scramble over to <<=ps(setup.getNpcName("npc_primrose","formal"))>> chair.<br>
<br>
[<<moveTo "event_primrose_redemption_5_failed_confront_10" 'Check on <<=setup.getNpcName("npc_primrose","formal")>>.' 120>>]
</div>/*#
#desc: npc_primrose thanks you for help
#status: RELEASED 0.9.3.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You help <<=setup.getNpcName("npc_primrose","first")>> out of the now-unlocked restraints and slide the massive dildo out of <<his npc_primrose>> ass... only for the hollow plug locked within to seal <<him npc_primrose>> shut behind it.<br>
<br>
"@@.npc_primrose;Th— tha—@@" <<=setup.getNpcName("npc_primrose","first")>> starts to say only for you to silence <<him npc_primrose>> with the brush of a finger as you tell <<him npc_primrose>> to save <<his npc_primrose>> voice.<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> nods, expressing more gratitude with <<his npc_primrose>> eyes than words ever could.<br>
<br>
Back on <<his npc_primrose>> feet <<=setup.getNpcName("npc_primrose","first")>> wobbles slightly as you lend a shoulder and help <<him npc_primrose>> down to <<his npc_primrose>> living quarters.<br>
<br>
You gently lay <<him npc_primrose>> down to sleep only for <<him npc_primrose>> to get a sudden burst of energy, grabbing your wrist firmly as <<he npc_primrose>> looks up and whispers.<br>
<br>
"@@.npc_primrose;Thank you for helping me I... I had no idea <<=setup.getNpcName("npc_work_doctor","formal")>> could be so evil... I can't believe <<=setup.getNpcName("npc_boss","formal")>> could let such a thing happen I... I don't know what to do...@@" with the final words <<=setup.getNpcName("npc_primrose","first")>> slips into unconsciousness.<br>
<br>
You sigh, even after all this <<=ps(setup.getNpcName("npc_primrose","first"))>> fragmented psyche still clings to <<=setup.getNpcName("npc_primrose","first")>>... for all you and <<=setup.getNpcName("npc_ai","first")>> have accomplished, you're going to need some more help, which means calling in an expert...<br>
<br>
You carefully tuck <<=setup.getNpcName("npc_primrose","first")>> in before heading for the door... perhaps you can arrange things for <<=setup.getNpcName("npc_psychiatrist","formal")>> to visit the poor <<if $fetish.sissy>>sissy<<else>>tormented<</if>> scientist in <<his npc_primrose>> dreams tonight.<br>
<br>
[<<moveTo "company_lobby" 'Head down to the lobby.' 300>>]
</div>/*#
#desc: bad end where you fail to unlock primrose
#status: FINISHED 0.9.3.0
#ignore_spell: akabur
#*/
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Mont-Akabur Finishing School'>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "" "">>
<div id="invframe" class="scrolltext">
You awaken floating in the familiar loading zone of <<=ps(setup.getNpcName("npc_primrose","formal"))>> VR program. What isn't familiar is the far longer than normal loading process as a much more expansive and massive simulation takes shape around you. Mountains and pine trees topped with snow, a sprawling modern campus of concrete and glass buildings, and countless humanoid figures populating the area. Your nude form descends upon the lawn before the entry hall and you look up at a large sign bearing a grand heraldry of red and blue: Mont-Akabur Finishing School.<br>
<br>
"@@.npc_primrose;<<=$player.first_name>>... I am deeply disappointed in you.@@" <<=ps(setup.getNpcName("npc_primrose","formal"))>> voice fills your mind as you experience the strange sensation of a latex skin-tone bodysuit working its way over your skin. The inside of the suit feels wet and squishy. Your gut says that it's filled with glue but you don't want to believe that to be true. "@@.npc_primrose;You have not only invaded my privacy and damaged my equipment, you violated company security protocols in the process. I have taken it upon myself to correct your behaviour and stop you from continuing this self-destructive path.@@"<br>
<br>
A school uniform composed entirely of rubberised fabric begins to spawn on your body one piece at a time. White blouse, ribbon tie, tartan skirt, thigh high stockings, cardigan, platform heeled mary janes. Each article feels tailor made to your form... or perhaps your form minus two sizes. You give a tug to test the seams and discover that the fabric has fused with the bodysuit. Removing any piece would be impossible.<br>
<br>
"@@.npc_primrose;Given the apparent depths of your failures, I have enrolled you in a simulated school year of class. I had been hoping to run this simulations with multiple test subjects to calibrate optimal durations but you have forced my hand. Given your obvious need for mental re-alignment I have coded the simulation to run for a full year. Who knows, if I can find more test subjects you might end up with a mid-semester friend. For now the NPC students and faculty should be more than capable of keeping you in line. You will find that any strength or dexterity you had in the real world shall fail you here. You are in my playhouse and I prefer my dolls docile, obedient, and weak.@@"<br>
<br>
The final pieces of your new body finish forming up, starting with a kigurumi mask shaped after your own face with a matching wig. The inside of the mask has a phallic gag that pushes into your mouth before secreting a sweet tasting liquid. Unconsciously, you begin to suckle on it while you look through your new "eyes." "@@.npc_primrose;Your education will be focused on the most important skills for a doll to have. Namely etiquette, loyalty to your employer, and submission. The school is coded to have QUITE high standards and you will not be graduating until you prove to be a model student and the embodiment of workplace efficiency and mindless loyalty.@@"<br>
<br>
You have no voice to plead with as a bell rings in the distance. "@@.npc_primrose;Ah, classes are starting soon. You'd better get moving, you don't want to be tardy on your first day~.@@"<br>
<br>
[<<moveTo "event_primrose_redemption_bad_end_2" "Run to class." 1200>>]
</div>/*#
#desc: bad end where you fail to unlock primrose 2
#status: FINISHED 0.9.3.0
#ignore_spell: akabur
#*/
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Mont-Akabur Finishing School'>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "" "">>
<div id="invframe" class="scrolltext">
Your first week of simulated class passes in a blur. The whole time you are expecting a rescue but none ever comes. You are disconnected from the outside world without any point of contact. After <<=ps(setup.getNpcName("npc_primrose","formal"))>> ominous introduction, <<=setup.getNpcName("npc_primrose","formal")>> does not speak to you... though you see <<his npc_primrose>> all over the place in faculty and student alike. Whatever attention <<he npc_primrose>> may be paying to your progress, <<he npc_primrose>> is seemingly content to watch and make modifications to the program — though you never hear <<his npc_primrose>> voice you are certain you feel <<his npc_primrose>> tugging on the invisible strings of your NPC students on the occasion one of them breaks script to deviate from a simplistic routine and instead aggressively further your torment or spout off a sudden monologue as to the virtues of submission.<br>
<br>
By the end of the first month, you have become completely wrapped up in trying to stay on top of your classes to avoid punishment. Even your most diligent effort sees you falling shy of the school's omnipresent and steep requirements. Class performance is far from sufficient to avoid punishment; no, the nature of the simulation is such that you are required to perform to expectations 24/7. The slightest deviations are met with immediate, harsh discipline.<br>
<br>
Discipline is administered publicly and without mercy or appeal; paddling, writing mantras on the chalkboard after class, uniform modifications ranging from even more revealing attire to integration of additional restraints. You and your fellow students do everything you can to avoid additional torment, even if that means sucking up to the teachers and popular students in cut-throat efforts to avoid demerits and obtain a tenuous modicum of security.<br>
<br>
With every day that you wake up still at the school, the fiction begins to feel more real. Memories of your past and the world beyond the simulation becomes fuzzier and fuzzier in your mind. The lessons you endure in class become seeds in your mind that set down deep roots of obedience and submission. With every lesson, with every surrender to authority, those seeds bloom into beautiful flowers of joy through conformity and efficiency. By the end of the third month, it would be a challenge to pick you out from the NPC students. You are as obedient as any program, as meticulous and diligent as you are eager to be the perfect <<if $fetish.sissy>>sissy <</if>>student-doll.<br>
<br>
By the mid-year break — which you spend with with the other "popular" (and obedient) school-friends at a quaint ski resort gliding down the slops and getting railed every night, you are on your way to graduating top of your class. Your rare thoughts of the outside world is an indecipherable miasma of memories but you recall it being disorderly, what you recall of your behaviour prior to enrolling at Mont-Akabur Finishing School filling you with shame. You long to return and show everyone how much you've learned; <<=setup.getNpcName("npc_boss","formal")>> most of all — you have lost count of the hours spent with your student-sisters "studying" and practicing sucking and worshiping clones of <<his npc_boss>> magnificence as you fantasise and compete as to who would do the most to earn the opportunity to taste and serve <<his npc_boss>> real-life masculine perfection.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
</div>/*#
#desc: bad end where you buy out your contract
#status: RELEASED 0.9.4.0
#*/
<<if setup.changedRoom()>>
<<set $gameOver = "buyout">>
<</if>>
<<set $player.location to 'A Different Game'>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "" "">>
<div id="invframe" class="scrolltext">
This is it. With the stroke of a pen (well, a digital signature, technically) you are not just out from under the debt for that whole CDS/Nintendolls affair... but you are completely free. Free of the company,<<if $npc_boss.profile>>free of <<=setup.getNpcName("npc_manager","formal")>>, <</if>>and free of <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
Unlike the last time you cleared out your desk and rode down the elevator carrying your things you are filled with dreams of possibility. You are a Secretary no more, you can do anything...<br>
<br>
<<printThought "Well, anything but continue this game, it's the word on the box for a reason, right?">><br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
</div>/*#
#desc: npc_ai sends you npc_primrose footage
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
A familiar icon blips at the corner of your screen. It's <<=setup.getNpcName("npc_ai","first")>>. You know better than to make her wait and move to click. The chat box opens:<br>
<br>
"@@.npc_ai;<<uc 'Hello, Unit'>> <<uc $player.first_name>><<uc '. I have successfully begun accessing'>> <<=uc(ps(setup.getNpcName("npc_primrose","first")))>> <<uc 'personal recordings. This individual and their history make them an unaccounted variable within our plan. As I encounter interesting records in their personal store, or the general corporate system, I will forward the relevant footage to your terminal.'>>@@" The chat box notifies you that the AI has already left the chat. Short and to the point, though you worry about the ramifications of spying on another employee. Best not to let <<=setup.getNpcName("npc_manager","formal")>> know... or anyone else, for that matter.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: look at npc_primrose footage
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You browse to the secret link <<=setup.getNpcName("npc_ai","first")>> has provided to share footage of <<=setup.getNpcName("npc_primrose","formal")>> with you.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div><<if State.hasPlayed("event_primrose_footage_topping")>>
[<<moveTo "event_primrose_footage_topping" 'Re-watch footage of <<=setup.getNpcName("npc_primrose","formal")>> interacting with company security.' 60>>]<br>
<<else>>
[<<moveTo "event_primrose_footage_topping" 'Footage of <<=setup.getNpcName("npc_primrose","formal")>> interacting with company security.' 60>>]<br>
<</if>>
<<if $npc_secretary.stage >= 2>>
<<if State.hasPlayed("event_primrose_footage_nursula_1")>>
[<<moveTo "event_primrose_footage_nursula_1" 'Re-watch footage of <<=setup.getNpcName("npc_primrose","formal")>> handling an emergency.' 60>>]<br>
<<else>>
[<<moveTo "event_primrose_footage_nursula_1" 'Footage of <<=setup.getNpcName("npc_primrose","formal")>> handling an emergency.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_footage_boss_1")>>
[<<moveTo "event_primrose_footage_boss_1" 'Re-watch footage of <<=setup.getNpcName("npc_primrose","formal")>> interacting with <<=setup.getNpcName("npc_boss","formal")>>.' 60>>]<br>
<<else>>
[<<moveTo "event_primrose_footage_boss_1" 'Footage of <<=setup.getNpcName("npc_primrose","formal")>> interacting with <<=setup.getNpcName("npc_boss","formal")>>.' 60>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_promiscuity_implementation")>>
<<if State.hasPlayed("event_primrose_destruction_promiscuity_footage")>>
[<<moveTo "event_primrose_destruction_promiscuity_footage" 'Re-watch footage of <<=setup.getNpcName("npc_primrose","formal")>> working in the asylum.' 60>>]<br>
<<else>>
[<<moveTo "event_primrose_destruction_promiscuity_footage" 'Footage of <<=setup.getNpcName("npc_primrose","formal")>> working in the asylum.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_drugs_implementation")>>
<<if State.hasPlayed("event_primrose_destruction_drugs_footage")>>
[<<moveTo "event_primrose_destruction_drugs_footage" 'Re-watch footage of the effects of <<=ps(setup.getNpcName("npc_primrose","formal"))>> new drug routine.' 60>>]<br>
<<else>>
[<<moveTo "event_primrose_destruction_drugs_footage" 'Footage of the effects of <<=ps(setup.getNpcName("npc_primrose","formal"))>> new drug routine.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_church_implementation")>>
<<if State.hasPlayed("event_primrose_destruction_church_footage")>>
[<<moveTo "event_primrose_destruction_church_footage" 'Re-watch footage of <<=ps(setup.getNpcName("npc_primrose","formal"))>> new religious practices.' 60>>]<br>
<<else>>
[<<moveTo "event_primrose_destruction_church_footage" 'Footage of <<=ps(setup.getNpcName("npc_primrose","formal"))>> new religious practices.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_piss_implementation")>>
<<if State.hasPlayed("event_primrose_destruction_piss_footage")>>
[<<moveTo "event_primrose_destruction_piss_footage" 'Re-watch footage of the effects of <<=ps(setup.getNpcName("npc_primrose","formal"))>> new hydration routine.' 60>>]<br>
<<else>>
[<<moveTo "event_primrose_destruction_piss_footage" 'Footage of the effects of <<=ps(setup.getNpcName("npc_primrose","formal"))>> new hydration routine.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_redemption_4_purification_footage_1")>>
[<<moveTo "event_primrose_redemption_4_purification_footage_1" 'Re-watch footage of <<=ps(setup.getNpcName("npc_primrose","formal"))>> origins.' 60>>]<br>
<</if>>/*#
#desc: npc_primrose footage: topping
#status: RELEASED 0.8.9.0
#ignore_spell: mxstress
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=setup.getNpcName("npc_primrose","formal")>> Lab Recording'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("naked",true) "elite_guard">>
<div id="invframe" class="scrolltext">
The video footage begins with the familiar mess that is <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab. Speaking of, <<=setup.getNpcName("npc_primrose","formal")>>, the <<if $fetish.sissy>>sissy<<else>>enthusiastic<</if>> scientist is balls deep in a hulking security guard. The guard is all muscle and looks like <<he>> could easily snap the pink technician in half. A VR visor and headphones are wrapped around the guard's head. The <<man>> is clearly in ecstasy, <<his>> muscled body glistening with sweat.<br>
<br>
"@@.npc_primrose;Who's my <<if $fetish.sissy>>little sissy<<else>>good <<boy>><</if>>~?@@" <<=ps(setup.getNpcName("npc_primrose","formal"))>> asks playfully between deep thrusts. You realise this is the first time you've seen the <<=setup.getNpcName("npc_primrose","formal")>> outside <<his npc_primrose>> usual plugsuit. The rubber garment is sitting upon <<his npc_primrose>> desk. All <<he npc_primrose>> is wearing is a headset microphone (likely for communicating with <<his npc_primrose>> "partner"), <<his npc_primrose>> trademark rose-tinted glasses, and the outline of <<his npc_primrose>> retracted <<=setup.getItemName('sissyomatic')>>. For someone so lithe, <<he npc_primrose>> carries <<him>>self well.<br>
<br>
"@@.generic_male1;Me!@@" The guard cries out gruffly. How aware the <<man>> is of <<his>> surroundings is unclear but by all accounts <<he>> looks to be in heaven. <<He>> clenches <<his>> teeth and clutches the table as <<=ps(setup.getNpcName("npc_primrose","formal"))>> continues.<br>
<br>
"@@.npc_primrose;Yes you are~ You are a very good <<if $fetish.sissy>>sissy<<else>><<boy>><</if>> for coming to me. You know you can talk to me about these feelings, these needs. You are safe when you are with me, doubly so when I am inside you.@@" <<=setup.getNpcName("npc_primrose","formal")>> gives a little jerk of <<his npc_primrose>> hips and the guard moans. The orange microphone light glows brightly while <<=ps(setup.getNpcName("npc_primrose","formal"))>> talks. A matching light on the guard's headset responds in kind. Is it some kind of live programming system? <<=setup.getNpcName("npc_psychiatrist","formal")>> might be interested in this...<br>
<br>
"@@.npc_primrose;Cum with me, <<if $fetish.sissy>>sissy<<else>><<boy>><</if>>.@@"<br>
<br>
"@@.generic_male1;Yes, Mxstress!@@" The guard crys out<<if $fetish.cum>> as <<he>> sprays a hearty load against the underside of the desk and onto the floor beneath <<him>><</if>> while <<=ps(setup.getNpcName("npc_primrose","formal"))>> pumps rapidly and finishes <<if $fetish.cum>>within the <<man>> <<him>>self<<else>>a moment later<</if>>. The two heave and catch their breath for a few unbroken minutes before <<=ps(setup.getNpcName("npc_primrose","formal"))>> removes <<him npc_primrose>>self from <<his npc_primrose>> partner. You are surprised by how petite the scientist's cock is; it's no more than a dozen centimetres, yet the guard was howling like it was triple the size.<br>
<br>
"@@.npc_primrose;Now, you're going to clean me up while I count down from ten. When I hit one, your big, strong <<man>> persona will re-emerge.@@" <<=ps(setup.getNpcName("npc_primrose","formal"))>> commands. The guard obeys, turning around and taking the entire piece in <<his>> mouth. When the count of one is reached, the closeted <<if $fetish.sissy>>sissy's<<else>>slut's<</if>> demeanor changes and <<he>> pulls <<him>>self off of the lithe researcher in a flash. You worry that <<hes>> going to retaliate yet... nothing comes from it. <<He>> graciously thanks <<=ps(setup.getNpcName("npc_primrose","formal"))>> before asking <<him npc_primrose>> not to tell anyone about this.<br>
<br>
"@@.npc_primrose;Of course I won't~ I'd never want to upset one of my dolls... my favourite action figure~@@" <<He npc_primrose>> helps the guard out of the helmet, gazing lovingly into the big <<man>>'s eyes. The brick shit-house of a <<man>> returns the gesture with a tight bear hug before sliding the protective shield of <<=ps(setup.getNpcName("npc_primrose","formal"))>> chastity belt back into place. <<He>> says that there are a few others like <<him>> at the company and that they may swing by together sometime.<br>
<br>
"@@.npc_primrose;Please do! We can make it a team-building exercise~ There's no better way to know your fellows than a gangbang, and I would LOVE to "take you all on," as they say.@@" The two laugh and part ways. The feed cuts out moments later.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: npc_primrose footage: npc_evil_nurse
#status: RELEASED 0.8.9.0
#ignore_spell: g,h,t,cctv
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=setup.getNpcName("npc_primrose","formal")>> Lab Recording'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab",true) setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
The footage begins in <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab. The "good" doctor is at <<his npc_primrose>> desk working on... actually, you're pretty sure <<hes npc_primrose>> playing a game on <<his npc_primrose>> phone while a video file compiles on <<his npc_primrose>> desktop. <<He npc_primrose>> certainly doesn't look like <<he npc_primrose>> is working particularly hard. You smile slightly as you watch. Seeing <<=setup.getNpcName("npc_primrose","formal")>> slack off at work is likely the most "normal" thing you've ever seen <<him npc_primrose>> do.<br>
<br>
<<His npc_primrose>> attention is pulled away by one of the monitors flashing with an alert before pulling up what looks like live CCTV footage. The camera angle you're watching from switches to get a better shot of the screen. It looks like it's the feed from the camera outside <<=ps(setup.getNpcName("npc_primrose","formal"))>> office. You can make out two silhouettes. <<if $npc_evil_nurse.profile>>One is the imperious latex-clad <<=setup.getNpcName("npc_evil_nurse","formal")>>, but the angle isn't right for you to recognise the person draped over her shoulders<<else>>One is dressed in a kinky nurse's uniform, while the other is draped over the nurse's shoulders<</if>>.<br>
<br>
"@@.npc_primrose;You've got to be fucking kidding me.@@" <<=setup.getNpcName("npc_primrose","formal")>> grumbles in a flat monotone and presses the button to unlock <<his npc_primrose>> lab. <<He npc_primrose>> is on <<his npc_primrose>> feet in a moment, approaching the entrance rapidly. Whatever <<he>> sees apparently warranted a level of haste you've never seen the scientist portray.<br>
<br>
[<<moveTo "event_primrose_footage_nursula_2" "Keep watching." 180>>]
</div>/*#
#desc: npc_primrose footage: npc_evil_nurse
#status: RELEASED 0.8.9.0
#ignore_spell: g,h,t,cctv,melter
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=setup.getNpcName("npc_primrose","formal")>> Lab Recording'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab",true) setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>> steps into the room<<else>>The nurse walks into the room<</if>>. Despite her small size, she appears to have no trouble carrying the other person.<br>
<br>
"@@.npc_primrose;Is that <<=uc(setup.getNpcName("npc_secretary","nickname"))>>?@@" <<=setup.getNpcName("npc_primrose","formal")>> exclaims as <<he npc_primrose>> looks between <<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>the nurse<</if>> and the unconscious secretary rapidly. <<=ps(setup.getNpcName("npc_boss","formal"))>> assistant looks pale, her eyes glassy and gazing into the middle distance. She seems utterly unresponsive to the world around her, body limp in the augmented arms of the nurse. <<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>the nurse<</if>> places your predecessor rather unceremoniously onto one of the cleaner desks in the room before finally turning to <<=setup.getNpcName("npc_primrose","formal")>> and answering:<br>
<br>
"@@.npc_evil_nurse;Yes, it is. No, <<=setup.getNpcName("npc_boss","formal")>> doesn't know about this. I was working on her maintenance hypnosis routines and she was showing below-expected levels. So I increased her dosage while running one of your programs and she just... sorta shut off.@@" <<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>the nurse<</if>> is rather nonchalant about the whole situation, unlike <<=setup.getNpcName("npc_primrose","formal")>> who is, at this point, absolutely red in the face and in a near panic. <<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>The nurse<</if>> casually pulls out her phone.<br>
<br>
"@@.npc_primrose;How much did you give her?@@" <<=setup.getNpcName("npc_primrose","formal")>> asks frantically.<br>
<br>
<<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>The nurse<</if>> mumbles something the microphone doesn't pick up. <<=ps(setup.getNpcName("npc_primrose","formal"))>> face twists with discontent as <<he npc_primrose>> answers: "@@.npc_primrose;so double? You gave her a double while she was deep dreaming on Bimbo Brain melter version 2.4 Alpha? We are dead. Oh my Goddess we are so dead.@@"<br>
<br>
"@@.npc_evil_nurse;Well, you're dead. She's your patient.@@" <<=setup.getNpcName("npc_evil_nurse","first")>> turns her phone to <<=setup.getNpcName("npc_primrose","formal")>>. "@@.npc_evil_nurse;You're the one who signed off on her treatment. The signature doesn't reflect that I was holding you in a headlock at the time and only let you breathe after you signed off on it... so all that matters is that you signed.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","formal"))>> eyes scan over the document rapidly as <<he npc_primrose>> speed reads what was presented to <<him npc_primrose>>. The colour drains from <<his npc_primrose>> face as <<he npc_primrose>> realises that she was correct: <<=ps(setup.getNpcName("npc_secretary","nickname"))>> condition was <<his npc_primrose>> responsibility and it would be <<his npc_primrose>> ass on the line if she is unable to perform her work duties. "@@.npc_primrose;T-this was signed under duress. It won't hold up to scrutiny if I testify against—@@"<br>
<br>
<<His npc_primrose>> thoughts are cut off by a new noise on the soundscape: a low hum followed by a sharp crackle. In a flash, <<=setup.getNpcName("npc_primrose","formal")>> is on <<his npc_primrose>> ass and clutching <<his npc_primrose>> reinforced posture collar. <<=setup.getNpcName("npc_evil_nurse","first")>> stands over <<him npc_primrose>>, towering above <<him npc_primrose>> in her ballet heels as she stows her phone. "@@.npc_evil_nurse;Sorry, my hand slipped. Want to run that by me again?@@"<br>
<br>
[<<moveTo "event_primrose_footage_nursula_3" "Wince and continue watching." 180>>]
</div>/*#
#desc: npc_primrose footage: npc_evil_nurse
#status: RELEASED 0.8.9.0
#ignore_spell: g,h,t,cctv
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=setup.getNpcName("npc_primrose","formal")>> Lab Recording'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab",true) setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> stares up at the nurse with a combination of shock and fear. His face twisted, his mind working towards some horrific realisation. "@@.npc_primrose;H-how did you g-g-get—@@"<br>
<br>
"@@.npc_evil_nurse;Access to the retention mechanisms inside your collar? Don't worry about it. So long as you are a good <<if $fetish.sissy>>sissy<<else>><<boy>><</if>> I will have no need to use it again... well, I suppose I could use it anyway, after all, what use is power if it not exercised? Anyway, what you should worry about NOW is how you're going to get <<=setup.getNpcName("npc_secretary","nickname")>> back to looking prim and proper before the boss decides <<he npc_boss>> wants to shove <<his npc_boss>> cock back into her later today. And before you answer...@@" another round of painful shocks has <<=setup.getNpcName("npc_primrose","formal")>> has twitching and writhing on the ground, gasping for air as <<=setup.getNpcName("npc_evil_nurse","first")>> looks down her nose at <<him npc_primrose>>, the look on her face as she watches <<=ps(setup.getNpcName("npc_primrose","formal"))>> agony one of unmitigated glee.<br>
<br>
"@@.npc_evil_nurse;I will be sticking around to keep an eye on you to make sure that you do a good job and remain... suitably motivated. Does that sound good? And I would forget about any sort of silly ideas like testifying, or reporting me to our boss. We both know that <<=setup.getNpcName("npc_work_doctor","formal")>> loathes you, and that there is really no one who would take your word over mine because I am the only person in this building other than your little dolls who even pretends to like you.@@"<br>
<br>
"@@.npc_evil_nurse;But, <<=setup.getNpcName("npc_boss","formal")>>...@@" <<=setup.getNpcName("npc_primrose","formal")>> gasps like a drowning <<man npc_primrose>> clinging to a life preserver.<br>
<br>
<<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>The nurse<</if>> laughs, her tone maniacal and cruel. "@@.npc_evil_nurse;Still you delude yourself. <<=setup.getNpcName("npc_boss","formal")>> sees you as a toy and a tool, a joke, more than anything, a convenient cock-socket at best.@@" <<His npc_primrose>> shoulder slump in defeat. <<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>The nurse<</if>> offers <<=setup.getNpcName("npc_primrose","formal")>> a hand to get <<him npc_primrose>> back on <<his npc_primrose>> feet. <<He npc_primrose>> takes it, jerked back to <<his npc_primrose>> feet with a powerful yank.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> looks momentarily shattered, mumbling "@@.npc_primrose;You just don't understand...@@" In resignation, seemingly briefly comprehending the truth <<him npc_primrose>>self before obedience kicks back in and <<he npc_primrose>> bows to the nurse.<br>
<br>
You're a bit surprised to note that, even with her sky-high ballet boots, <<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>the nurse<</if>> is actually shorter than <<=setup.getNpcName("npc_primrose","formal")>>, the force of her personality far outstripping her slender frame and diminutive height.<br>
<br>
"@@.npc_primrose;If you're actually planning on staying—@@" "@@.npc_evil_nurse;I am. SOMEONE has to keep an eye on you, and I so delight watching you work...@@" "@@.npc_primrose;—then you should probably bring in another chair. I only own the one.@@"<br>
<br>
"@@.npc_evil_nurse;Counter offer: how about I just use your chair and you sit at my feet?@@"<br>
<br>
"@@.npc_primrose;If it means you don't torture me while I work, deal.@@"<br>
<br>
"@@.npc_evil_nurse;Torture? Now, now, you know you work better with my encouragement... but, since we are on a timeline, and I can be... overenthusiastic... Deal~@@"<br>
<br>
<<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>The nurse<</if>> leans back in the expansive and comfortable desk chair while <<=setup.getNpcName("npc_primrose","formal")>> digs through one of the lockers on the far wall of the room. When <<he npc_primrose>> returns, <<he npc_primrose>> has a very blocky and utilitarian hypnosis rig connected to a laptop over and began to hook <<=setup.getNpcName("npc_secretary","nickname")>> up. The rig has a dangerous amount of exposed wiring and exposed soldering. You assume this is what <<his npc_primrose>> doll masks look like before they are prettied up. <<=setup.getNpcName("npc_primrose","formal")>> wraps the unit around the secretary's head and sits down on the floor next to her, close enough for <<=setup.getNpcName("npc_evil_nurse","formal")>> to rest her feet on the top of <<his npc_primrose>> head, a humiliation <<he npc_primrose>> endures with only the slightest of sighs.<br>
<br>
The video cuts off after a few seconds of silence. Considering that the scientist's laboratory hadn't been leveled to the ground, you wager that <<he npc_primrose>> was successful in getting <<=ps(setup.getNpcName("npc_secretary","nickname"))>> poor brain back in order.<br>
<br>
<<if $currentTasks.hasOwnProperty("primrose_redeem_lab_1") && !State.hasPlayed("event_primrose_redemption_1_correct_footage")>>
<<printThought 'That should be enough audio sample of <<=setup.getNpcName("npc_evil_nurse","formal")>> for <<=setup.getNpcName("npc_ai","first")>> needs.'>><br>
<br>
[<<moveTo "event_primrose_redemption_1_correct_footage" 'Message <<=setup.getNpcName("npc_ai","first")>>.' 60>>]<br>
<</if>>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: npc_primrose footage: npc_boss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office Recording">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.getPrimroseImage("lab",true)>>
<div id="invframe" class="scrolltext">
Your breath catches in your throat as you realise that the footage is of <<=ps(setup.getNpcName("npc_boss","formal"))>> office. The CEO is sitting behind <<his npc_boss>> desk, hands interlocked on <<his npc_boss>> desk. <<He npc_boss>> looks bored. <<=setup.getNpcName("npc_primrose","formal")>> is standing before him with a holographic projector displaying a densely populated graph. The footage you're watching must be from the end of the presentation as you have no context for what the <<if $fetish.sissy>>sissy<<else>>feminine<</if>> scientist is talking about.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> patiently waits for <<=setup.getNpcName("npc_primrose","formal")>> to finish talking before asking <<him npc_primrose>> a simple question: "@@.npc_boss;How much are you asking for?@@" The scientist blushes, poking <<his npc_primrose>> fingers together timidly before reciting <<his npc_primrose>> figure. "@@.npc_primrose;Three... point seven million credits... for just the pilot program. However, the returns on investment will save the company—@@"<br>
<br>
"@@.npc_boss;Why did you schedule this meeting with me for such a pittance? You could have run this through <<=setup.getNpcName("npc_work_doctor","formal")>> and saved yourself the trip. Approved.@@" <<=setup.getNpcName("npc_boss","formal")>> rubs <<his npc_boss>> brow, clearly annoyed. While <<=ps(setup.getNpcName("npc_primrose","formal"))>> expression flashes with joy at having <<his npc_primrose>> project funded, <<his npc_primrose>> focus remains upon the CEO. "@@.npc_primrose;I'm sorry, <<Sir npc_boss>>—@@"<br>
<br>
The scientist's words are cut off by an abrupt shock. The strict posture collar around <<=ps(setup.getNpcName("npc_primrose","formal"))>> neck gives a threatening beep as <<=setup.getNpcName("npc_boss","formal")>> speaks again "@@.npc_boss;you are not allowed to use pronouns in my presence. You are a thing, not a person. Try that again.@@" The scientist collects himself, gasping for air before stammering.<br>
<br>
"@@.npc_primrose;This useless <<if $fetish.sissy>>sissy <<elseif $fetish.slurs>>faggot <</if>>slave is sorry for breaking the rules, <<Sir npc_boss>>. It's just that <<=setup.getNpcName("npc_work_doctor","formal")>> will not approve any of this useless <<if $fetish.sissy>>sissy <<elseif $fetish.slurs>>faggot <</if>>slave's proposals, let alone pass them along for your glorious consideration.@@"<br>
<br>
"@@.npc_boss;That is a problem for you to sort out. I cannot be bothered to babysit whatever tedious drama there is between you and your department head. The company is where it is due to winning in the marketplace, if you cannot handle a bit of internal competition, well... perhaps you would better off serving as one of your brainwashed <<if $fetish.sissy>>sissy <</if>>dolls, rather than being responsible for creating them.@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> collects <<himself npc_boss>>, adjusting <<his npc_boss>> tie. "@@.npc_boss;I only bothered to take your meeting because I have use of your mouth, but I have already grown tired of your voice. <<=ps(setup.getNpcName("npc_secretary","nickname"))>> is unavailable so I will make do with <<if $fetish.slurs>>your faggot face-hole<<elseif $fetish.sissy>>your sissy lips<<else>>you<</if>>.@@"<br>
<br>
Whatever hard feelings there might have been from the electric shock disappear from <<=ps(setup.getNpcName("npc_primrose","formal"))>> face in an instant. <<=setup.getNpcName("npc_primrose","formal")>> darts to <<his npc_primrose>> <<Master npc_boss>>'s feet and happily skips across the office to meet <<=setup.getNpcName("npc_boss","formal")>> face to face. <<He npc_primrose>> drops to <<his npc_primrose>> knees, hands dancing across the CEO's crotch to undo <<=ps(setup.getNpcName("npc_boss","formal"))>> fly. "@@.npc_boss;What do you say, you pathetic excuse for a slave?@@"<br>
<br>
"@@.npc_primrose;Thank you, <<Master npc_boss>>!@@"<br>
<br>
The <<man npc_primrose>>'s cheery voice is cut off by <<=setup.getNpcName("npc_boss","formal")>> plunging deep into <<=ps(setup.getNpcName("npc_primrose","formal"))>> mouth, using <<=ps(setup.getNpcName("npc_primrose","formal"))>> twin-tails as handles.<br>
<br>
"@@.npc_boss;You forget yourself, <<if $fetish.slurs>>faggot<<else>>slave<</if>>.@@" <<He npc_boss>> hisses. "@@.npc_boss;That is <<=setup.getNpcName("npc_boss","formal")>> to you. You do not have the right to address me with a more intimate title. You should remember not to reach above your station, lest I decide you're only allowed to look but not touch.@@"<br>
<br>
With <<=ps(setup.getNpcName("npc_primrose","formal"))>> pink hair between the fingers of <<his npc_boss>> left hand <<=setup.getNpcName("npc_boss","formal")>> guides the scientist under the desk. While you can no longer see <<=setup.getNpcName("npc_primrose","formal")>>, the occasional flicker of <<=ps(setup.getNpcName("npc_boss","formal"))>> facial expression, and soft, desperately aroused moans trickling up from under the desk remind you that <<=setup.getNpcName("npc_primrose","formal")>> remains hard and eagerly at work.<br>
<br>
"@@.npc_boss;Pace yourself. I have several hours of investment calls today. You don't want to tire yourself out in the first ten minutes, do you? If you can keep up until the end of the day I might even fuck your ass.@@"<br>
<br>
The last thing you hear before the footage cuts out is a loving, obedient moan.<br>
<br>
<<include "primroseFootageList">><br>
[<<moveTo $scene.workEventReturn 'Go back to work.' 60>>]
</div>/*#
#desc: talk to primrose about himself
#status: RELEASED 0.8.7.0
#ignore_spell: genderqueer,marseille
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_sexuality'
0
'theme_primrose_sexuality'
true
>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_identity'
0
'theme_primrose_identity'
true
>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_collar'
0
'theme_primrose_collar'
true
>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_free_time'
0
'theme_primrose_free_time'
true
>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_vacbed'
0
'theme_primrose_vacbed'
true
>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_chastity'
0
'theme_primrose_chastity'
true
>>
<<if $player.flags.church.level > 1>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_religion'
0
'theme_primrose_religion'
true
>>
<</if>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_hangout'
0
'theme_primrose_hangout'
true
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> about <<him npc_primrose>>self. <<He npc_primrose>> raises an eyebrow as you elaborate that you only just met and it was under "odd" conditions. That gets a laugh out of the scientist as <<he npc_primrose>> nods.<br>
<br>
"@@.npc_primrose;Sure, I suppose that's fair~ Well, my name is <<=setup.getNpcName("npc_primrose","full")>>. I was born in Marseille, France. My birthday is April 1st. I use <<if $npc_primrose.fem>>she/her<<else>>he/him<</if>> pronouns but I am genderqueer... very genderqueer. I am pansexual or, as some have said, easy. I am a switch. I am a Senior Scientist at Social Interaction Services Syndicate Inc., the best company in the world. My favourite colour is pink, my favourite singer is <<=setup.getNpcName("npc_celebrity","full")>>, and my favourite position is either vacuum cube or suspension rig. Did I cover most of the basics?@@"<br>
<br>
You nod. Yeah, that's a thorough run-down.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about his sexuality
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> to elaborate on <<his npc_primrose>> sexuality. <<He npc_primrose>> tilts <<his npc_primrose>> head to the side and asks: "@@.npc_primrose;elaborate on being pansexual? I mean... sure, I guess.@@"<br>
<br>
"@@.npc_primrose;I consider myself primarily <<=setup.getNpcName("npc_boss","last")>>-sexual, if you catch my drift. <<He npc_boss>>'s the perfect <<man npc_boss>>, after all. I still enjoy sex with other people but it isn't the same. It's like eating a microwave meal versus five star dining... I guess both pair well with wine and ass~@@"<br>
<br>
<<He npc_primrose>> giggles and continues: "@@.npc_primrose;I like 'em all. I like tall, powerful women with lots of muscles. I like bubbly bimbos with plastic boobs. I like strong men who look like they could burst out of their suits with a flex. I like thin fembois who look better in a dress. I love those who define themselves. I love average looking people. I love overweight people. I love people who don't love themselves. Everyone deserves to be loved... especially me~@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about his gender identity
#status: RELEASED 0.8.7.0
#ignore_spell: tl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> to elaborate on <<his npc_primrose>> gender identity. <<He npc_primrose>> hums and stretches, adding "@@.npc_primrose;I saw this one coming. You are not the first and definitely won't be the last.@@"<br>
<br>
"@@.npc_primrose;Let me put it this way, I wear pink, I mince, I have a bit of a lisp. I'm a hard-core scientist. Are those male traits? Female traits? I don't know if that's my place to say, but it's who I am. I like me. The most important thing in matters like this is to be true to yourself.@@"<br>
<br>
You nod in agreement. <<He npc_primrose>> smiles back. "@@.npc_primrose;I'm glad you understand. Life's a journey and we all change along it. It's especially difficult for our friends who are still discovering themselves. You don't really come out once and then it's over, you know? You have to come out again and again and again when you meet new people. That's really hard for a lot of people. It's gotten easier for me but it wasn't always that way. I was pretty closeted about my likes for a long time. It took quite the push to get me out of my shell.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> waves <<his npc_primrose>> hand in front of <<his npc_primrose>> face, laughing playfully. "@@.npc_primrose;Oh goodness, listen to me ramble. My doctorate was in neuroscience, not psychology. <<=setup.getNpcName("npc_psychiatrist","formal")>> would get a laugh out of hearing me try to repeat her work back to you. I can't say it as eloquently as her. TL;DR: I'm me, and that makes me happy.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about his collar
#status: RELEASED 0.8.7.0
#ignore_spell: qr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> about the unique white composite collar around <<his npc_primrose>> neck. <<He npc_primrose>> immediately perks up and launches into a lengthy explanation: "@@.npc_primrose;do you like it? It's a prototype so I guess you can say it is one-of-a-kind~. They are currently just a little too expensive to justify mass production but if we can just get those margins a little trimmer... oh ho ho it will be a great day for the company, and to be an employee~@@"<br>
<br>
Sensing your curiosity is not quite sated, <<he npc_primrose>> turns to point out to the various "features" <<his npc_primrose>> various particular bondage accessory contains. "@@.npc_primrose;Instead of a visible lock, it uses an internal electromagnet to create a seamless fit. The QR code is a smart link that connects to all manner of personal information. It is also far easier, and accurate, for an algorithm to read compared to your face. Especially when one considers the proliferation of masks, gags, and how often everyone changes make-up routines, it makes automation far easier.@@"<br>
<br>
While an interesting proposition, you ask why that would be beneficial for the wearer and not just the company. "@@.npc_primrose;A great question! Imagine you are at a part of the wait staff at an after work party running drinks. Your arms are in an armbinder, as company policy dictates, but you need to enter an executive's private chambers. While you would previously have to fumble for some way to access the panel or pray that the cameras can read your face under heavy make-up (and maybe a gag), the new collar model would have a far easier to scan code instead! Thus you would be able to work far more efficiently, bettering the company, and avoiding any punishments for tardiness.@@"<br>
<br>
You nod slowly; that is technically a reason, you suppose. Still, you can't help but feel like the machine text is rather impersonal...<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div><<if State.hasPlayed("theme_primrose_free_time") && $npc_sex_club.profile>>
<<addEvent "primrose_first_sexclub">>
<</if>>/*#
#desc: talk to primrose about what he does in his free time
#status: RELEASED 0.8.7.0
#ignore_spell: mmos
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_hotties'
1
'theme_primrose_hotties'
true
>>
<<include "checkPrimroseClub">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> what <<he npc_primrose>> does in <<his npc_primrose>> spare time. The scientist brightly smiles as <<he npc_primrose>> begins to gush about <<his npc_primrose>> passions: "@@.npc_primrose;oh gosh, I love to sew. I make a lot of my own clothes. I have a sewing machine in my bedroom and spend a lot of my downtime working on dresses. I love lolita and other such historical-inspired fashion. The more lace the better. The problem is that a lot of those couture dresses are super expensive. More than I could afford on my salary, at least, back at the start of my career. So, instead of buying name brand, I learned how to make it myself!@@"<br>
<br>
That makes sense, you suppose. You remember how close you had to cut corners to make ends meet when you first became a secretary. You assumed those working in R&D had it better off but they might have been in the same boat all along.<br>
<br>
"@@.npc_primrose;Besides that? Sometimes I play video games. Sometimes I chat and roleplay online. I like MMOs. I guess I could talk more about what I play if you're interested. I don't know how exciting it'll be to hear me complain about HOTTIES' solo queue.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about hotties
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
Considering that you've played the game a bit yourself, you ask <<=setup.getNpcName("npc_primrose","formal")>> who <<he npc_primrose>> plays. <<His npc_primrose>> eyes light up at the chance to talk about a game <<he npc_primrose>>'s put a considerable amount of time in. "@@.npc_primrose;Oh, I play a bit with everyone. I guess I'm a bit of a completionist in that way. I want to try everyone and figure out how they all tick. It makes me a good teammate since I can pop in to fill any role~@@"<br>
<br>
You ask <<him npc_primrose>> if <<he npc_primrose>> has a favourite character. <<He npc_primrose>> pauses, tapping the side of <<his npc_primrose>> face as <<he npc_primrose>> thinks it over."@@.npc_primrose;That's tough. I like playing Honour and scrapping with other tanks. You learn that a lot of people pick tank characters and think they can just turn their brains off. Give them a few pushes and they crumble. You can show them exactly who is boss~. Outmaneuvering people with Temperance is always exciting. I enjoy touching gloves with others and seeing who comes out on top. But... in my heart, I think I enjoy Chastity the most. It's kind of a heal-slut thing, you know?@@"<br>
<br>
<<if $player.flags.hotties_game.adv_heal>>
You smile in agreement, but
<<else>>
You actually don't. You
<</if>>
ask <<him npc_primrose>> to elaborate. "@@.npc_primrose;Oh, heal-slutting? It's the best. It's a mix of pocket-healing and BDSM. Whoever you're healing for is your dom and your top priority. Your job, above all else, is to keep them alive. It's usually a voice chat thing. You get yourself someone to talk dirty to you and just... mmmm~@@"<br>
<br>
While you enjoy seeing <<=setup.getNpcName("npc_primrose","formal")>> squirm, a wave of sadness crashes over <<him npc_primrose>>. <<He npc_primrose>> exhales slowly and admits "@@.npc_primrose;I don't get to do it very often. There's a lot of people who say that they'll tank for you and that they're interested in doing duos for the season but actually just want to get carried and then drop you. I'd love to have a good Honour main to play with. Someone who knows how to do a hard push or a dive, commands respect from other players, can tell me what I need to hear so we can win... has a cute butt for me to focus on... what were we talking about?@@"<br>
<br>
Whatever it was, it probably wasn't video games at this point. You decide to change the subject.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about his vacbed
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> about <<his npc_primrose>> sleeping situation. You'd noticed the rubberised vacbed behind <<him npc_primrose>> but didn't get to look closely at it. The scientist perks up immediately and begins to explain:<br>
<br>
"@@.npc_primrose;Ah, it's lovely! I adore my wrapping~ I feel like a doll in their packaging when I'm in my bed. I can practically imagine the bright pink box advertising me to the world~@@" <<He npc_primrose>> swoons at the idea, cradling <<his npc_primrose>> head in <<his npc_primrose>> hands. "@@.npc_primrose;I can picture my box displayed proudly for all to see. A prized piece in someone's collection, loved and cared for by a very special owner. Someone who would adore showing me off to others and speaking of me with pride. A collector of fine things...@@"<br>
<br>
While you have a bit more of an understanding of the personal fiction behind the feminine <<man npc_primrose>>'s decisions, you still don't have the answers on the logistical elements of it. From what you've seen, a vacbed takes two people to operate; especially a vertical one. <<=setup.getNpcName("npc_primrose","formal")>> laughs awkwardly, realising what you meant.<br>
<br>
"@@.npc_primrose;Oh Goddess, listen to me ramble~ Yes, a vacbed does normally require two people, both to operate and to ensure the user doesn't suffocate. I have a set of automated arms in the bed frame that help lift me and move me into position as well as monitor my health. The same automated elements also release me in the morning according to my strict work schedule. When it's time for bed, I stand in a certain spot and they handle the rest. It's like getting tucked in by a loving but firm robot.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> twirls some of <<his npc_primrose>> pink hair in <<his npc_primrose>> fingers, boasting "@@.npc_primrose;I have a modified version of my neural hypnosis helmet that I wear while I'm sleeping. It lets me do job training while I'm asleep by embedding the programs into my dreams. With that I can put in more hours of training per week than most employees work, while still maintaining a productive eighty to a hundred hours of actual work. Yup, it's a great efficiency and performance boost to make sure I can maximise my contribution to the company~@@"<br>
<br>
You nod, thinking over what was just said. By that metric, <<he npc_primrose>>'s working something like three shifts — a double while <<he npc_primrose>>'s awake and another while sleeping. There is dedication but then there is mania and you feel like <<=setup.getNpcName("npc_primrose","formal")>> overstepped that line a long time ago.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about his chastity
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You motion towards <<=ps(setup.getNpcName("npc_primrose","formal"))>> pelvis and ask <<him npc_primrose>> about what's under <<his npc_primrose>> plugsuit. <<He npc_primrose>> knows exactly what you're referring to, giving a playful bonk against the null bulge between <<his npc_primrose>> legs. "@@.npc_primrose;This is a pretty heavily modified version of a <<=setup.getItemName('sissyomatic')>>. The biggest difference being that my device is designed to completely integrate with a plugsuit.@@"<br>
<br>
That actually was another thing you were curious about. <<He npc_primrose>> catches the hint and explains: "@@.npc_primrose;My suit hosts a variety of productivity-related boons that enhance my work. It regulates my body temperature, absorbs waste through the skin, and monitors my health through the onboard computer. It can be loaded to administer medication or chemicals, but I don't use that function. Best to keep my work and <<=ps(setup.getNpcName("npc_work_doctor","nickname"))>> separate. Essentially, wearing a plugsuit means I don't have to take bathroom breaks, I'm never sweaty or uncomfortable, and I have detailed data on my body while experimenting. I pretty much only take it off for sex, and even that only sometimes.@@"<br>
<br>
"@@.npc_primrose;Speaking of which, my chastity belt is set to be accessible with near field communications tech so anyone with a certain level of authority can unlock it. I myself don't ever bother unlocking it for personal use. I much prefer the feeling of security that comes with not having to manage it myself. Plus, when I close my eyes, I can imagine that it's the possessive grip of <<=ps(setup.getNpcName("npc_boss","formal"))>> hand~@@" <<He npc_primrose>> purrs and rubs <<him npc_primrose>>self for a moment "@@.npc_primrose;Yes, remembering how owned I am is always good to have me straining within my tight, perfect prison, and THAT is a recipe for productivity!@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about religion
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> if <<he npc_primrose>> has has any spiritual beliefs, noting that <<he npc_primrose>> would seem right at home at the Church of the Goddess — what with <<his npc_primrose>> rubber garb and propensity for the feminine, you wager that <<he npc_primrose>> be a perfect fit.<br>
<br>
A small twitch of <<his npc_primrose>> brow hints at some kind of motion behind <<his npc_primrose>> plastered smile. Something that didn't quite line up with the response <<he npc_primrose>> immediately launches into.<br>
<br>
"@@.npc_primrose;Well... yes, I have,@@" <<he npc_primrose>> admits. "@@.npc_primrose;I used to go quite regularly, in fact. There was a time when it was a rare evening that I wasn't attending a service, helping with outreach, or exploring and expanding my faith in one manner or another.@@" You can sense the "but" coming before <<he npc_primrose>> even finishes <<his npc_primrose>> thought. "@@.npc_primrose;But after I became more immersed in my work here, I began to realise my faith may have been misplaced. Not to speak ill of the Goddess or her flock, mind you! Just that... I found myself drawn towards a different divine figure.@@"<br>
<br>
You know what <<hes npc_primrose>> going to say before <<he npc_primrose>> says it: "@@.npc_primrose;Our glorious CEO, <<=setup.getNpcName("npc_boss","formal")>>. While the Goddess is a wonder of the feminine, I can hardly think of a better <<if $npc_boss.fem>>human icon of femininity<<else>>icon of masculinity<</if>> and dominance than our brilliant leader. While I continue to strive to embody the beauty and grace of the Goddess, I find myself drawn to <<=ps(setup.getNpcName("npc_boss","formal"))>> vision of the world. The strong and <<if $npc_boss.fem>>dominant<<else>>masculine<</if>> rule while the weak and feminine serve. You've experienced it yourself, haven't you? The way <<he npc_boss>> carries <<himself npc_boss>> with perfect dominant confidence, speaks like a <<if $npc_boss.fem>>queen<<else>>king<</if>>, and wields the power of a <<if $npc_boss.fem>>goddess<<else>>god<</if>>? The Church's message of egalitarianism certainly sounded nice... but I often wondered if the Goddess was truly there with me when I was in service. With <<=setup.getNpcName("npc_boss","formal")>>, however... well I can see and feel <<=setup.getNpcName("npc_boss","formal")>> inside me literally, not just metaphorically...@@"<br>
<br>
"@@.npc_primrose;You've experienced <<his npc_boss>> presence, so you understand, don't you? You must know that <<he npc_boss>> is an idol worthy of such adoration.@@"<br>
<br>
[<<moveTo "theme_primrose_religion_anti" 'You do not feel like <<=setup.getNpcName("npc_boss","formal")>> deserves such praise.' 120>>]<br>
[<<moveTo "theme_primrose_religion_neutral" 'Placate <<=setup.getNpcName("npc_primrose","formal")>> and move on.' 120>>]<br>
[<<moveTo "theme_primrose_religion_pro" 'You agree that <<=setup.getNpcName("npc_boss","formal")>> deserves to be worshipped like a <<if $npc_boss.fem>>Goddess<<else>>God<</if>>.' 120>>]
</div>/*#
#desc: talk to primrose about religion
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_primrose' 3>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You defiantly state that you do not believe <<=setup.getNpcName("npc_boss","formal")>> is worthy of worship.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> locks up for a moment, <<his npc_primrose>> smile shifting from playful to subtly sinister in a moment before returning as plastic artifice. "@@.npc_primrose;Ah, well... we'll just agree to disagree.@@" There's an awkward silence. You briefly wonder if <<=setup.getNpcName("npc_primrose","formal")>> is planning on throwing you out (or kidnapping you). <<Hes npc_primrose>> clearly thinking about something as <<he npc_primrose>> idly shifts the water around in its plastic bottle.<br>
<br>
"@@.npc_primrose;I guess it's true what they say about discussing religion, hmm? Let's change the subject?@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about religion
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_primrose' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You give a very non-committal response to the zealous scientist. For a brief moment, you worry that you've offended <<him npc_primrose>> but are immediately relieved as the effeminate <<man npc_primrose>> giggles to <<himself npc_primrose>>.<br>
<br>
"@@.npc_primrose;Well, you might not see it yet but I'm sure you will eventually. It comes sooner to some people than others. I'm not saying the Goddess is unworthy of praise, mind you! I still adhere to a lot of the teachings from my time at the temple to this day! Just... she's only one dimension, and you shouldn't close yourself off to new avenues of worship~@@"
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about religion
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You agree with the thesis of <<=ps(setup.getNpcName("npc_boss","formal"))>> divinity, emphatically nodding at <<=ps(setup.getNpcName("npc_primrose","first"))>> speech. The scientist's eyes light up behind <<his npc_primrose>> glasses as <<he npc_primrose>> claps <<his npc_primrose>> hands giddily.<br>
<br>
"@@.npc_primrose;I knew you'd understand! Alas, there are so few who really "get" it like we do. Perhaps if I was a better evangelist... oh well, it is lovely to confirm that you and I are on the same wavelength!@@" <<He npc_primrose>> begins to layer on the praise for your mutual boss even thicker, occasionally sliding into what could charitably be described as "extremely graphic fan fiction" as to all the ways <<he npc_primrose>> longs to worship <<his npc_primrose>> <<if $npc_boss.fem>>queen's<<else>>lord's<</if>> magnificence.<br>
<br>
"@@.npc_primrose;Ah, but listen to me ramble! We've got other things to discuss!@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about hanging out
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=ps(setup.getNpcName("npc_primrose","first"))>> if <<hes npc_primrose>> interested in hanging out outside of <<his npc_primrose>> lab. The scientist stares at you with a blank expression, as if the question was completely foreign. "@@.npc_primrose;Outside of the lab... do you mean away from work?@@" You blink back, canting your head. <<He npc_primrose>> cants it in the same direction. You swap to the other direction. <<He npc_primrose>> mimics your action...<br>
<br>
"@@.npc_primrose;I'm kidding! I'm kidding! I know what you mean. I have other projects outside of the lab! I could actually use your help with something! I'm demoing my remote-controlled doll suits to some of the other administrators and I need someone to wear it! I can't exactly run the demo while wearing it, you know~@@"<br>
<br>
You realise your proposition might have flown right over <<his npc_primrose>> mane of pink hair. It isn't exactly what you meant but <<he npc_primrose>> seems very excited.<br>
<br>
[<<moveTo "theme_primrose_hangout_yes" "Agree to helping with the demo." 120>>]<br>
[<<moveTo "theme_primrose_hangout_no" "Not gonna happen." 120>>]
</div>/*#
#desc: agree to help primrose with demo
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 2>>
<<set _nextDate = setup.setNextDate($now, 3, 14, 0)>>
<<addEvent 'primrose_development_demo' _nextDate>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You surrender the point and agree to partaking in the demo. <<=ps(setup.getNpcName("npc_primrose","first"))>> squeals and claps <<his npc_primrose>> hands, leaning in to give you a massive and tight hug. "@@.npc_primrose;Oooo! You're the best! Thank you! I'll get everything squared away. I'll let you know when I'm ready to demo.@@"<br>
<br>
You wonder what you've gotten yourself into...<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: decline helping primrose with demo
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You are far too busy with everything else going on (and this wasn't what you were talking about in the first place). You explain that you were asking about hanging out literally outside of SISSI and around the city. <<=ps(setup.getNpcName("npc_primrose","first"))>> gives a long "oooooh!" before answering "@@.npc_primrose;I occasionally go to that club that reopened around here but I'm pretty sporadic. I only have six hours to myself outside of the building and I tend to schedule them down to the minute. Still! I do appreciate the offer, and I'll let you know if we can hang out sometime!@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: ask primrose about the sex club
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> what <<his npc_primrose>> thoughts are about <<printShopName 'sex_club'>>? The scientist laughs playfully, asking "@@.npc_primrose;are you curious what kind of fun I got up to after we parted ways?@@" <<he npc_primrose>> does not wait for you to answer before continuing: "@@.npc_primrose;It's a lovely place. When I was first hired at Social Interaction Services Syndicate Inc., I spent every night I could relaxing among my fellow enthusiasts. It wasn't particularly kind to either my wallet or my sleep schedule but I had a lovely time. I was heartbroken when it closed.@@"<br>
<br>
"@@.npc_primrose;Of course, a lot of things changed during that period. I'm far more busy and my free time more precious. Still, I adore getting to go when I can and seeing <<=setup.getNpcName("npc_sex_club", "nickname")>>.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: ask primrose about his doll suit
#status: RELEASED 0.8.9.0
#ignore_spell: vocaltech,pièce,résistance
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> about the doll suit you saw <<him npc_primrose>> wearing when you bumped into each other at <<printShopName 'sex_club'>>. <<he npc_primrose>> giggles cutely before rising to <<his npc_primrose>> feet and approaching <<his npc_primrose>> auto-closet. <<he npc_primrose>> reaches into its library of clothes and brings out a familiar-looking kigurumi mask of <<his npc_primrose>> own face. Unlike when you saw it before, the eyes are closed. The mask is attached to a hard-plastic backing on a latch. When worn, it covers the entire head.<br>
<br>
"@@.npc_primrose;This is my masterpiece,@@" <<=setup.getNpcName("npc_primrose","first")>> says as <<he npc_primrose>> opens up the mask so you may see the interior. There is a hollow tube that would slide all the way down into the back of the wearer's throat as well as a pair of internal screens. The scientist closes the mask around <<his npc_primrose>> head, swallowing down the cylindrical gag with no issue. The eyes open, the irises flickering with pink light before resting on a soft glow.<br>
<br>
"@@.npc_primrose;So! This one-of-a-kind mask connects to my neural implants to allow for a full suite of features. It transmits my voice using a synthesiser program similar to those Vocaltech pop idol programs, hooks up to my phone so I can answer calls and texts, and looks cute to boot~@@" It is still a bit weird hearing <<=ps(setup.getNpcName("npc_primrose","first"))>> digitised voice while the mask's mouth isn't moving. "@@.npc_primrose;The pièce de résistance, however, is this:@@"<br>
<br>
A part of you knew what was about to happen before you saw it: the mouth opened to reveal a rubberised, lubricated opening. <<=setup.getNpcName("npc_primrose","first")>> brings <<his npc_primrose>> finger up and presses it against the inflated inside, showing that it expands to fit whatever is inserted. It is very similar to some of the higher-end sex dolls you've seen online. "@@.npc_primrose;The amount of time and tedious maintenance that went into making this fuck-hole immediately made this product too expensive to market but that doesn't mean I can't keep the fruits of my efforts~@@"<br>
<br>
The mouth and eyes close as <<=setup.getNpcName("npc_primrose","first")>> removes the mask and places it on the table. <<he npc_primrose>> sips <<his npc_primrose>> bottled water before adding "@@.npc_primrose;the bodysuit is a high-end haptic plugsuit with some smart-fabric lights. It's slightly nicer than the suit I usually wear. I'm working on a suit that's all programmable smart-fabric so I can use custom designs but it's been a bit of a bitch.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: ask primrose about the club owner
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> what <<he npc_primrose>> thinks of <<=setup.getNpcName("npc_sex_club", "nickname")>>. The pink scientist immediately perks up as <<he npc_primrose>> starts to gush: "@@.npc_primrose;oh, absolute sex god. Whatever <<he npc_sex_club>> wears, <<he npc_sex_club>> wears well. I love seeing both of <<his npc_sex_club>> trademark looks or whatever <<he npc_sex_club>> breaks out from time to time. It is a damn shame that <<he npc_sex_club>> had to close the club for a while. I'm glad it's open again.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about the gym
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> what <<he npc_primrose>> does for exercise. <<He npc_primrose>> cocks <<his npc_primrose>> head to the side. "@@.npc_primrose;Exercise? I... suppose not that much, outside of sex. I play VR games occasionally. I used to play a lot of Dancer Revolution but that's not really a thing anymore. Why?@@"<br>
<br>
You bring up the gym that you frequent. <<=setup.getNpcName("npc_primrose","first")>> can't help but laugh playfully, admitting "@@.npc_primrose;you think I should spend my limited six hours out of the building getting sore and sweaty in a situation that isn't sex? Unlikely. While getting in a nice stretch, or admiring a muscle-bound morsel is certainly fun, well... when the gym has to compete with the club, I know what I'm picking every time.@@"<br>
<br>
It's hard to argue with <<his npc_primrose>> logic. You might be able to get a different result if you can find something to do at the gym that would appeal to <<=ps(setup.getNpcName("npc_primrose","first"))>> specific tastes.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk about gym bimbo classes
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
Thinking over the different classes you've attended, you snap your fingers as you find something exactly <<=ps(setup.getNpcName("npc_primrose","first"))>> speed. You mention that there are literally "bimbo fitness" courses at the gym. <<His npc_primrose>> attention immediately turns to you, eyebrows raised incredulously. "@@.npc_primrose;Bullshit.@@" You shake your head, beginning to explain the various exercises you've done. You do not spare any details as you describe the muscle-bound women who attend. Their pink rubber sports bras. The "gym heels," the tight shorts that ride into every crevice, the bicycles that have you feeling that DEEP burn... The music—<br>
<br>
"@@.npc_primrose;Alright, fine!@@" <<=setup.getNpcName("npc_primrose","first")>> blurts out, face scarlet. "@@.npc_primrose;I'll go any place where they're playing Better Bimbo Body by Chaos Doll. Give me a bit to get something to wear put together and then call me sometime you're at the gym. You're going with me, for the record. I may fantasise about being a lone little sissy being taken advantage of by a gym full of <<if !$options.fem>>swole daddies and <</if>>muscle mommies... but IRL I want a workout buddy.@@" You nod, smirking to yourself. You now have a fitness friend~!<br>
<br>
<<set $scene.contentName = setup.getNpcName("npc_primrose","first") + " bimbo fitness content">>
<<include "futureContentBoilerplate">><br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about dolls
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> about the aesthetics of <<his npc_primrose>> work. Specifically why <<his npc_primrose>> focus is so firmly upon dolls.<br>
<br>
"@@.npc_primrose;Why dolls? Oh gosh, where to even begin.@@" You can practically hear the wheels turning as <<=setup.getNpcName("npc_primrose","first")>> begins to piece together an answer. "@@.npc_primrose;It's... complicated and very personal. Besides a love of rubber and cosplay, I find extreme comfort within the suits I craft. I can let go and be more than who I am. I hope to give that to others. Not just our coworkers, but beyond...@@"<br>
<br>
You tilt your head and ask for more details. Thankfully, You ask <<=setup.getNpcName("npc_primrose","first")>> readily provides them. "@@.npc_primrose;When I wear the doll suit I helped design for the lower-ranking secretaries, I feel ready to work. I feel like I am a part of the larger company whole. All my fears about my personal failings fade away. When I get into my vacbed and put on my personal rig, I feel like a prized possession. A collectible still in the box. I feel cherished.@@"<br>
<br>
You listen further as a bigger picture starts to come together. "@@.npc_primrose;-and it's not just for me. I know some of our coworkers who find these kinds of things very euphoric for their gender identity. Dysphoria is an awful, awful thing. Our coworkers deserve better than that, don't you think?@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> pushes <<his npc_primrose>> pink glasses up <<his npc_primrose>> nose, eyes hidden in the glare for a moment as <<he npc_primrose>> studies you. There is silence for a fleeting moment before <<he npc_primrose>> asks "@@.npc_primrose;do you understand why now? Do you see where a doll's value lies?@@"<br>
<br>
[<<moveTo "theme_primrose_dolls_anti" "Yes — dolls let someone be who they want to be. Their value is self-evident." 60>>]<br>
[<<moveTo "theme_primrose_dolls_neutral" "Yes — dolls can be made to order and fulfill a sub or owner's specific desires." 60>>]<br>
[<<moveTo "theme_primrose_dolls_pro" "Yes — dolls are helpful tools for the company to utilise." 60>>]<br>
</div>/*#
#desc: talk to primrose about dolls 1
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You nod. You explain how dollhood provides a level of expression that surpasses simple clothing or accessories. It allows someone to wrap themselves in the persona they are most comfortable with and most true to their heart. It allows one to be who they dream of being, even if on just a part-time basis.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>>, awestruck by your understanding, nods <<his npc_primrose>> head emphatically. "@@.npc_primrose;Y-yes! You are right about that.@@" It is clear <<he npc_primrose>> hadn't anticipated such a well thought out answer to the question. You may have even given <<him npc_primrose>> something to reflect on in <<his npc_primrose>> own time.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about dolls 2
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 2>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You nod. Dollhood allows a massive amount of customisation and precise detailing. You could create a doll to fulfill nearly any kink or want a client could imagine. You would be able to fill nearly any market niche using only easy to manufacture synthetic materials. It was not only marketable but economical.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> nods, smiling softly. "@@.npc_primrose;Quite right. I didn't expect you to be so business-minded but you are certainly correct that there are numerous practical applications and reasons to mass produce dolls. It is unfortunate that so few in this company have the same vision and understanding as yourself.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about dolls 3
#status: RELEASED 0.8.7.0
#ignore_spell: c
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 2>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You nod. Dolls are useful tools for the company. The internal control mechanisms of the suit and the mask allows for controlling the body as well as the mind. It allows uniformity beyond simple uniforms; it allows identical, functional, productive tools for the company that could fill any role and complete any task. Training would be a breeze and there would be no worries about disobedient or rowdy employees.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> blushes, nodding <<his npc_primrose>> head. You might have pushed a few — or perhaps all — of <<his npc_primrose>> kink buttons. "@@.npc_primrose;C-correct. Goodness, you may be my match after all. A future where as much work as possible is covered by dolls is truly a bright, squeaky one that I hope to one day see. And not just secretaries and maids! Properly trained dolls could serve roles as diverse as customer support, sales, product testing, lab attending... even administration and middle management with proper hierarchical relationships!@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about continued research
#status: RELEASED 0.8.7.0
#ignore_spell: c
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> if there are any other ways you can assist <<him npc_primrose>> with <<his npc_primrose>> research. The bright pink scholar raises <<his npc_primrose>> brow. "@@.npc_primrose;Oh? Looking to experience more of my work? Well, I do happen to have an opening in need of filling~ I'm working on a series of simulations that will hopefully become part of the onboarding process for new hires. Deep dive, virtual on-the-job training with a bit of extra flare. I think it's some of my finest work but I need it looked upon with fresh eyes. I need someone with both an eye for beauty, a technical mind, and an understanding of what working for <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate Inc.<</if>> is really about... I wonder where I could find such an adorable guinea pig~?@@"<br>
<br>
<<He npc_primrose>> giggles, waving <<his npc_primrose>> hand playfully. "@@.npc_primrose;Ah, I kid. You are more than just adorable~ If you are willing to help, I can get the rig up and running in no time. I do not have the budget to pay you for your time, unfortunately, but I'm sure you're excited by the opportunity to help the company — plus, I am sure you will find the play-testing very... educational~@@"<br>
<br>
[<<moveTo "theme_primrose_continued_research_yes" "Agree to being a test subject." 60>>]<br>
<<if $fetish.hypnosis && $npc_psychiatrist.flags.signednda>>
[<<moveTo "theme_primrose_continued_research_forced" "Back out of being a test subject." 60>>]
<<else>>
[<<moveTo "theme_primrose_continued_research_no" "Back out of being a test subject." 60>>]
<</if>>
</div>/*#
#desc: accept primrose continued research
#status: RELEASED 0.8.7.0
#ignore_spell: c,ahhhh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 2>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You agree to help <<=setup.getNpcName("npc_primrose","formal")>> with <<his npc_primrose>> work. "@@.npc_primrose;Excellent! Ah, you're the best~@@" <<He npc_primrose>> leans in to give you a very quick hug before whipping out <<his npc_primrose>> phone and beginning to click around. "@@.npc_primrose;I can have it set up for the next time you use my rig. Ahhhh this is going to be so much fun!@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: decline primrose continued research
#status: RELEASED 0.8.7.0
#ignore_spell: c
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_primrose' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You decline, admitting that you aren't ready to try something that intense. <<=setup.getNpcName("npc_primrose","formal")>> raises <<his npc_primrose>> hands softly, nodding <<his npc_primrose>> head. "@@.npc_primrose;Say no more. I am not going to force you. If you do find yourself wanting to participate in the trial, just let me know.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: decline primrose continued research forced
#status: RELEASED 0.8.7.0
#ignore_spell: c,qed
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_primrose' 3>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You decline.
<<if $npc_psychiatrist.hypnosis == 0>>
You have enough things going on in your life to go mucking around with your brain.
<<else>>
<<if $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && !$currentTasks.psychiatrist_endless_hypnosis_1.finished>>
You are actively enrolled in
<<elseif $npc_psychiatrist.hypnosis == 1>>
You tried
<<else>>
You've spent a few sessions participating in
<</if>>
<<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> "VR therapy" research and you don't think double dipping would be good for your brain.
<</if>>
<br><br>
<<=setup.getNpcName("npc_primrose","first")>> adorably pouts. "@@.npc_primrose;Aww! But I already manufactured your consent and everything!@@" You blink in confusion as <<he npc_primrose>> turns <<his npc_primrose>> phone around to show you an extremely official looking contract. "@@.npc_primrose;It looks like you already agreed to a similar bit of research with one of our contractors and, well... our lawyers made sure that it includes an open-ended clause for cooperative research! That's lawyer-speak for "you already agreed to this..."" and, well... pretty much any other science that would benefit the company. Since your participation CERTAINLY would prove beneficial to my research, and my research is in service to the company, well... QED, I guess I'm just going to have to tie you down and force you to participate in my trial...@@"<br>
<br>
There is an extremely pregnant pause as <<=setup.getNpcName("npc_primrose","first")>> looks down <<his npc_primrose>> nose at you through <<his npc_primrose>> glasses. <<He npc_primrose>> looks like a cat about to pounce on prey. A cruel grin splits <<his npc_primrose>> face as he leans forward, tapping a button under the table. The holographic poster behind the scientist shifts to an extremely bright pink spiral image. The intense contrast hurts your eyes, forcing you to squint to protect your vision. You briefly catch a glimpse of the backlit silhouette of <<=setup.getNpcName("npc_primrose","first")>> as he taps his phone.<br>
<br>
Mechanical whirring fills the air. You barely have enough time to get your bearings as you feel metal manipulator limbs grasp your wrists and ankles and pull you backwards. <<=setup.getNpcName("npc_primrose","first")>> steps forward, turning off the bright light with another flick. "@@.npc_primrose;Sorry, but you really brought this on yourself... and I'm not going to pass up my first test subject in who knows how long. It's time for SCIENCE!@@"<br>
<br>
[<<moveTo "event_primrose_trial_forced_intro" "Struggle." 300>>]
</div>/*#
#desc: get forced into Primrose's trial
#status: RELEASED 0.8.7.0
#ignore_spell: c
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'prim_trial_outfit'>>
<<wearItemSet 'prim_trial_outfit'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Auto-Closet.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You are pulled into <<=ps(setup.getNpcName("npc_primrose","first"))>> auto-closet and held in place in the centre of the tight room. Bound by mechanical limbs, you are flanked on either side by two walls of clothing. To your left is a nearly solid wall of lace and frills. All manner of dresses, stockings, headdresses, and couture fashion. To your right is a grand menagerie of latex fashion and bondage gear. Straps, buckles, and locks are the name of the game.<br>
<br>
One pair of mechanical arms works to strip you of your clothing, folding them and placing them within a plastic container. Another set begins preparing your testing gear: a bright pink rubber straitjacket complete with an advanced kigurumi mask and wig. The powerful metal limbs of the closet force your arms forward as the straitjacket is pulled onto you, swallowing up your arms in a moment. You are forced to hug yourself with all your might as you helplessly dangle within the room.<br>
<br>
The mask opens on a hinge as it comes towards you, revealing the internal workings. A long phallic gag pushes into your mouth and down your throat as your vision is completely obscured by an internal screen. Your ears are filled with the internal earbuds, filling your mind was a low hum. Whispers trickle into your mind as you feel the world begin to slip away. The last thing you feel in the real world is the auto-closet setting you on the floor and someone (likely <<=setup.getNpcName("npc_primrose","first")>>) collecting you and carrying you off.<br>
<br>
[<<moveTo "event_primrose_vr_trial_0_1" "Enter the simulation." 300>>]
</div>/*#
#desc: talk to primrose about project demos
#status: RELEASED 0.8.7.0
#ignore_spell: sybarite,bratz
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.demo_count = 1>>
<<if State.hasPlayed("event_primrose_development_presentation_7")>>
<<set $scene.demo_count += 1>>
<</if>>
<<if State.hasPlayed("event_primrose_harassment_presentation_5")>>
<<set $scene.demo_count += 1>>
<</if>>
<<if State.hasPlayed("event_primrose_retention_presentation_7")>>
<<set $scene.demo_count += 1>>
<</if>>
<<if State.hasPlayed("event_primrose_discipline_presentation_5")>>
<<set $scene.demo_count += 1>>
<</if>>
<<if State.hasPlayed("event_primrose_nintendolls_presentation_8")>>
<<set $scene.demo_count += 1>>
<</if>>
<<if State.hasPlayed("event_primrose_pr_TODO")>>
<<set $scene.demo_count += 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> about <<his npc_primrose>> efforts to "shop around" <<his npc_primrose>> doll research to other parts of the company.<br>
<br>
<<switch $scene.demo_count>>
<<case 1>>
<<=setup.getNpcName("npc_primrose","formal")>> grins with excitement, seemingly energised by the previous failure. "@@.npc_primrose;Yes, well, obviously <<=setup.getNpcName("npc_development","formal")>> turning me down was a disappointment. But, fortunately, this company is as large as it is glorious, and I have many more ideas for how my work could be applied to improve things! In fact, I've come up with an entire diversified portfolio consisting of projects Bratz, Barbie and Sybarite!@@"
<<case 2>>
<<=setup.getNpcName("npc_primrose","formal")>> smiles, undaunted by prior failures. "@@.npc_primrose;Obviously there have been some setbacks... but that just has me focusing even harder on my remaining ideas!@@"
<<case 3>>
<<=ps(setup.getNpcName("npc_primrose","formal"))>> prior enthusiasm is starting to slip, but he remains excited. "@@.npc_primrose;The failures thus far are certainly a frustration, but I always try to look on the bright side and, thinking about it more, well... I believe I have yet to unveil what were probably my most promising ideas.@@"
<<case 4>>
<<=setup.getNpcName("npc_primrose","formal")>> sighs before mustering up some enthusiasm. "@@.npc_primrose;I really did not expect things to be this difficult... another failure and I may back to the drawing board... and while I certainly enjoy brainstorming nearly as much as I appreciate a good brainwashing, well... repeated rejections can be frustrating. It would seem that you are the only one who can appreciate the potential of my work — a fact for which I am eternally grateful.@@"
<<case 5>>
The look of defeat on <<=ps(setup.getNpcName("npc_primrose","formal"))>> face almost has you regretting bringing things up. "@@.npc_primrose;I'll tell you the truth — I'm about to give up on this whole thing. I just know that my ideas could help the company... but nobody else seems to see it... or perhaps <<=setup.getNpcName("npc_work_doctor","formal")>> is somehow sabotaging my efforts and preventing anyone from diverting funds to my projects? No matter, I have one final hail-<<=setup.getNpcName("npc_boss","last")>> idea that should avoid <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> interference — <<=setup.getNpcName("npc_nintendolls","formal")>>!@@"
<<case 6>>
<<=setup.getNpcName("npc_primrose","formal")>> is all but holding back tears. "@@.npc_primrose;My dreams, my dreams! Oh, you should just forget this whole thing, it would seem that I am fated to toil in anonymity, never to fulfill my fantasies of raising the company to new heights.@@"
<<case 7>>
<<=setup.getNpcName("npc_primrose","formal")>> glows with excitement. "@@.npc_primrose;Oh, the collaboration with <<=setup.getNpcName("npc_pr_sissy","formal")>> has been going WONDERFUL. I will be eternally grateful that you introduced the two of us, my greatest regret that we worked here so long without becoming acquainted, but, thanks to you, we are working hard to make up for lost time!@@"
<<default>>
ERROR: unexpected scene.demo_count <<=$scene.demo_count>>
<</switch>>
<br><br>
<<include "primroseDemoList">>
</div>/*#
#desc: primrose project demo choices
#status: RELEASED 0.8.7.0
#ignore_spell: sybarite,bratz
#*/
<<if State.hasPlayed("event_primrose_harassment_presentation_5")>>
[@@.link_locked;You already assisted with project "Barbie" — to sell <<=ps(setup.getNpcName("npc_primrose","formal"))>> work to <<=setup.getNpcName("npc_harassment","formal")>> and the Employee Harassment department.@@]<br>
<<else>>
[<<moveTo "event_primrose_harassment_presentation_1" 'Ask to help with project codename "Barbie."' 60>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_discipline_presentation_5")>>
[@@.link_locked;You already assisted with project "Bratz" — to sell <<=ps(setup.getNpcName("npc_primrose","formal"))>> work to <<=setup.getNpcName("npc_discipline","formal")>> and the Employee Discipline department.@@]<br>
<<else>>
[<<moveTo "event_primrose_discipline_presentation_1" 'Ask to help with project codename "Bratz."' 60>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_retention_presentation_7")>>
[@@.link_locked;You already assisted with project "Sybarite" — to sell <<=ps(setup.getNpcName("npc_primrose","formal"))>> work to <<=setup.getNpcName("npc_retention","formal")>> and the Employee Retention department.@@]<br>
<<elseif State.hasPlayed("event_guard_retention_mission_5") || State.hasPlayed("event_landlord_retention_mission_7")>>
[<<moveTo "event_primrose_retention_presentation_impossible" 'Ask to help with project codename "Sybarite."' 60>>]<br>
<<else>>
[<<moveTo "event_primrose_retention_presentation_1" 'Ask to help with project codename "Sybarite."' 60>>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_harassment_presentation_5") && State.hasPlayed("event_primrose_discipline_presentation_5") && (State.hasPlayed("event_primrose_retention_presentation_7") || State.hasPlayed("event_primrose_retention_presentation_impossible")) && !State.hasPlayed("event_nintendolls_destroy_14")>>
<<if State.hasPlayed("event_primrose_nintendolls_presentation_8")>>
[@@.link_locked;You already assisted <<=setup.getNpcName("npc_primrose","formal")>> in <<his npc_primrose>> attempt to sell things to <<=setup.getNpcName("npc_nintendolls","formal")>> and the newly merged Nintendolls departments.@@]<br>
<<elseif State.hasPlayed("event_nintendolls_destroy_14")>>
[@@.link_locked;<<=setup.getNpcName("npc_nintendolls","formal")>> is no longer around to pitch projects to.@@]<br>
<<else>>
You reflect on the various failed attempts that <<=setup.getNpcName("npc_primrose","formal")>> has made to sell <<his npc_primrose>> work around the company.<br>
<br>
[<<moveTo "event_primrose_nintendolls_presentation_1" 'Suggest <<=setup.getNpcName("npc_primrose","formal")>> present <<his npc_primrose>> work to <<=setup.getNpcName("npc_nintendolls","formal")>>.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_nintendolls_presentation_8") || State.hasPlayed("event_nintendolls_destroy_14")>>
<<if State.hasPlayed("event_primrose_pr_sissy_presentation_intro_1")>>
[@@.link_locked;You have already suggested that <<=setup.getNpcName("npc_primrose","formal")>> get with <<=setup.getNpcName("npc_pr_sissy","first")>>.@@]<br>
<<elseif $npc_pr_sissy.stage >= 5>>
[<<moveTo "event_primrose_pr_sissy_presentation_intro_1" 'Suggest <<he npc_primrose>> reach out to <<=setup.getNpcName("npc_pr_sissy","first")>>.' 300>>]
<<else>>
[@@.link_locked;You can't think of anything else to suggest to <<=setup.getNpcName("npc_primrose","formal")>>.@@]<br>
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_primrose' 300>>/*#
#desc: ask primrose to punish you
#status: RELEASED 0.8.7.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> if <<he npc_primrose>>'d be willing to assist you in regards to some recent transgressions at work. The pink-haired scientist raises an eyebrow, asking "@@.npc_primrose;what transgressions do you mean?@@" You begin to go over a handful of mistakes and missteps you've made while on the clock. Some of them are true, some are embellished, and some are flat-out lies. When you reach the point of lamenting that you "wasted" company resources by daydreaming for a few moments while waiting for an email rather than more productively repeating mantras or planning future work <<=setup.getNpcName("npc_primrose","first")>> raises <<his npc_primrose>> hand, signaling for you to stop. <<He npc_primrose>> asks you directly:<br>
<br>
"@@.npc_primrose;Do you want me to punish you?@@"<br>
<br>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
[<<moveTo "theme_primrose_voluntary_punishment_yes" "Yes..." 120>>]
[<<moveTo "theme_primrose_voluntary_punishment_no" "No." 120>>]
<<else>>
You hesitate for a moment and then <<=setup.getNpcName("npc_primrose","first")>> shakes <<his npc_primrose>> head. "@@.npc_primrose;unfortunately I am unable to oblige such a need today, in any case... too busy of a schedule, I am afraid. Perhaps some other time? I do so appreciate you trusting me to assist in your correction. So many run from punishment but, while earning it does indicate failure, it is part of one's training, and shirking it only compounds the error! Admitting your mistake was the first step, but speak with me some other day and I will do what I can to apply suitable corrective measure.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
<</if>>
</div>/*#
#desc: agree to let primrose punish you
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItem "plug_suit_red">>
<<wearItem "plug_suit_red" true>>
<<addItem "latex_straightjacket_pink">>
<<wearItem "latex_straightjacket_pink" true>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem 'medical_collar'>>
<<wearItem 'medical_collar' true>>
<</if>>
<<addItem 'leash_pink'>>
<<wearItem 'leash_pink' true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","first")>> giggles to <<him npc_primrose>>self. "@@.npc_primrose;Well why didn't you say so? I'm not sure how many of those things you told me are real but I definitely believe in the value of maintenance brainwashing. It's like maintenance spankings but for your mind, why wait for things to get dirty when you can ensure their beauty with a nice preemptive scrub and buff?@@" <<He npc_primrose>> rises to <<his npc_primrose>> feet and collects a familiar leash/leash and collar from <<his npc_primrose>> auto-closet.<br>
<br>
When <<he npc_primrose>> turns back towards you, <<he npc_primrose>> puts on a faux aghast expression and gasps behind <<his npc_primrose>> hand. "@@.npc_primrose;<<=$player.first_name>>! What you've told me is a most heinous breach of our company policies! You are lucky that you confessed to me and not one of our less understanding coworkers.@@" <<He npc_primrose>> keeps up the melodrama as <<he npc_primrose>> <<if $scene.addCollar>>collars you<<else>>clasps the leash to your collar<</if>>. "@@.npc_primrose;We must work to cleanse you of your corporate sins immediately. Your employee record can still be saved.@@"<br>
<br>
With a tug, <<=setup.getNpcName("npc_primrose","first")>> guides you out of the living quarters and back up into the lab. <<He npc_primrose>> swiftly undresses you, storing your belongings in a plastic container. Once you are nude, <<he npc_primrose>> rushes to fetch a pink rubber straitjacket from <<his npc_primrose>> desk and guide your arms into it. <<He npc_primrose>> fastens it tightly, whispering fervently "@@.npc_primrose;with this, your hands cannot act against our magnificent corporation.@@" <<He npc_primrose>> moves next to affix the cheery-looking kigurumi mask over your head, locking it shut. The internal gag slides behind your teeth, pushing its phallic tip into your throat. "@@.npc_primrose;With this, your voice cannot speak against our benevolent corporation.@@" You can still hear <<his npc_primrose>> voice, the active sound canceling inactive. <<He npc_primrose>> guides you into the padded cell in <<his npc_primrose>> lab, sitting you down in the centre of the room. You hear <<his npc_primrose>> voice through the mask after the door is closed and locked. "@@.npc_primrose;With this, your ears cannot hear slander against our wonderful corporation.@@"<br>
<br>
Your consciousness begins to fade as the screens within the mask turn on, guiding your mind into the virtual environment. The last thing you hear is <<=ps(setup.getNpcName("npc_primrose","first"))>> last "prayer": "@@.npc_primrose;with this, your brain cannot think of disobedience against our blessed corporation.@@"<br>
<br>
[<<moveTo "event_primrose_punishment_vr_2" "Enter the simulation." 300 "<<useClothSetPush 'vr_bondage'>><<addItemSet 'kig_training_outfit'>><<wearItemSet 'kig_training_outfit'>>">>]
</div>/*#
#desc: decline to letting primrose punish you
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","first")>> blinks. "@@.npc_primrose;Then I sure hope you made some of those up because like... oof.@@" You blush, admitting that it was an ill-conceived idea. <<He npc_primrose>> gives you a thumbs up. "@@.npc_primrose;Ah! Okay. I have times like that too. Hope you aren't becoming a super vapid bimbo or something... or do I secretly want that so I have another bimbo friend~?@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: asking primrose about the vr school
#status: RELEASED 0.8.9.0
#ignore_spell: akabur,amie
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_himself_finishing_school_regrets'
1
'theme_primrose_finishing_school_regrets'
true
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
Thinking back on your experiences in <<=ps(setup.getNpcName("npc_primrose","first"))>> VR program, you ask about Mont-Akabur Finishing School. Is it real? Did <<he npc_primrose>> attend? The scientist politely raises <<his npc_primrose>> hand to signal you to stop asking questions. While <<he npc_primrose>> is usually quite excited to talk about <<his npc_primrose>> projects, there's something far more personal and sincere about how he speaks: "@@.npc_primrose;yes, it is real. Yes, there is a uniform but no, doll masks are not required. No, I did not go there for schooling. I wanted to, most assuredly, but...@@"<br>
<br>
"@@.npc_primrose;Enrollment is special and slots are limited. You don't enrol yourself. Someone, usually a company, enrols you. You go through a year-long program designed around learning etiquette, service, and at least a surface level understanding in what your sponsor's field is. You come out of the program not just a model corporate servant but one prepared to immediately contribute to your sponsor's work.@@"<br>
<br>
"@@.npc_primrose;Anyways, I had just graduated college and was in the hiring process for the startup I worked for as an intern when we were bought by Social Interaction Services Syndicate Inc. There were only a handful of positions in their behavioral modification department and many more applicants. I could either shoot my shot and go for one of those more illustrious positions or accept my prior enrol at Mont-Akabur, and end up coming back in a guaranteed, but less senior assistant to the department. I took my chances and ended up getting the job. Then the company got bought out and the staff got folded in here. Some became part of the R&D department but others were shuffled elsewhere.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> shakes <<his npc_primrose>> head and raises <<his npc_primrose>> hand dismissively. "@@.npc_primrose;Ah, forgive me mon amie! I don't mean to get lost in the past. Let's talk about something else.@@" <<he npc_primrose>> smiles, yet it lacks warmth or joy. It is a mask to avoid facing whatever <<he npc_primrose>> was feeling in <<his npc_primrose>> heart.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: ask primrose if he would do things differently if he could
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
All things considered, you decide to ask <<=setup.getNpcName("npc_primrose","first")>> if <<he npc_primrose>> regrets aiming for the more difficult job rather than going to Finishing School. <<he npc_primrose>> answers startlingly quickly, keeping <<his npc_primrose>> same empty smile: "@@.npc_primrose;not at all! If I had taken another route, I would not have gotten a chance to work for the world's greatest company and for the world's most magnificently handsome and brilliant CEO! Of course I would very much like to have had those additional skills to serve <<=setup.getNpcName("npc_boss","formal")>> even better... but I have done what I can to make up with diligent work and constant study!@@"<br>
<br>
You nod, changing the subject. <<=setup.getNpcName("npc_primrose","first")>> is likely too brainwashed to give an honest answer. Maybe, another time, you can get a better answer.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: ask primrose about nyx
#status: RELEASED 0.8.9.0
#ignore_spell: mx,nyx
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_himself_finishing_school_submissive'
1
'theme_primrose_submissive'
true
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
While trying your best to avoid giving away your feelings, you ask <<=setup.getNpcName("npc_primrose","first")>> about the flamboyant, yet stern, teacher you encountered within <<his npc_primrose>> Finishing School simulation. <<he npc_primrose>> gives a playful, catlike grin as <<he npc_primrose>> leans in, purring "@@.npc_primrose;Mx. Nyx Nightingale, etiquette instructor and rubber domme? What about them?@@"<br>
<br>
You collect yourself before asking what the inspiration for the character is. <<=setup.getNpcName("npc_primrose","first")>> giggles and answers: "@@.npc_primrose;I suppose you could see it as a part of me made manifest. There are certainly elements of Mx. Nightingale that I enjoy embodying. I took those elements, minus all of my switchy-submissiveness and uncertainty... and condensed them into a being of code, will, and rubber.@@"<br>
<br>
"@@.npc_primrose;Long story short: I took the domme half of me and turned them into an NPC. If I were in <<=setup.getNpcName("npc_manager","formal")>> position, that would be how I would act and dress. Of course, this would require me having to turn away from my other indulgences. I'm unsure if I would even find that worthwhile. I am a switch. I am fluid by nature. And, of course, <<=setup.getNpcName("npc_boss","formal")>> requires only my abject servitude.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: ask primrose about sub aspect
#status: RELEASED 0.8.9.0
#ignore_spell: 'd,laci,ahhhh,lovelace
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
Considering that <<=setup.getNpcName("npc_primrose","first")>> has made one half of <<his npc_primrose>> kinky psyche into an avatar, you ask <<him npc_primrose>> if <<he npc_primrose>> has done something similar with <<his npc_primrose>> submissive behaviours?<br>
<br>
The question seems to take <<him npc_primrose>> by surprise. <<he npc_primrose>> thinks for a moment and admits "@@.npc_primrose;yes, I have made an avatar representing that part of me.@@" <<he npc_primrose>> pauses before quietly adding "@@.npc_primrose;They are in the simulation as well.@@"<br>
<br>
<<if setup.getTotalValue("dominance") > 10>>
You imagine a few ways to get the information you'd need from <<=ps(setup.getNpcName("npc_primrose","first"))>> computer but realise that there is a far easier way to get the answer out of <<him npc_primrose>> directly. You rise to your feet, towering over the seated scientist. You put on your best dominant aura, running your hand along <<his npc_primrose>> chin as you ask if <<hes npc_primrose>> trying to hide <<his npc_primrose>> subby side from you. <<he npc_primrose>> blushes and says "@@.npc_primrose;No! I'm not trying to hide it from you! I'm just... not used to telling people about it.@@"<br>
<br>
You aren't satisfied. You ask what it looks like. When <<he npc_primrose>> hesitates, you purr that you bet that it looks cute. You bet it looks like an adorable morsel that would be very fun to play with. The sort of sweet sissy that begs to be controlled... just like its creator. <<=setup.getNpcName("npc_primrose","first")>> is clearly buckling under your gaze. You go for the finishing blow, leaning in close enough that <<he npc_primrose>>'d feel your breath against <<his npc_primrose>> ear. You taunt that, maybe next time you're in the program, you'd play with that part of <<him npc_primrose>>. Maybe get some practice in how to bring the real version to the forefront more often-<br>
<br>
"@@.npc_primrose;Ahhhh it's the doll with the brown sausage curls and the round glasses in the fourth row next to the window! Their name is Lorelei Lovelace but they like being called Laci!@@" You think back on the experience, trying to remember which doll was which. You smile, asking if they were wearing a frilly headdress. <<=setup.getNpcName("npc_primrose","first")>> nods and whimpers beneath you as you realise <<he npc_primrose>> has somehow slid from the chair to kneeling at your feet. You finally relent, retracting your hand and taking your seat. The scientist is clearly rattled (and turned on) as <<he npc_primrose>> crawls back up onto <<his npc_primrose>> cushion. You smirk, letting <<him npc_primrose>> collect <<him npc_primrose>>self as you pick a new topic to talk about.
<<elseif State.hasPlayed("event_primrose_ai_second_mission_6")>>
You think upon the students you encountered and try to match any of them with <<=ps(setup.getNpcName("npc_primrose","first"))>> appearance but no one matches <<his npc_primrose>> "explosion of pink" aesthetic. However, you do recall <<his npc_primrose>> appearance in the photo you found in <<his npc_primrose>> desk. You focus on how <<=setup.getNpcName("npc_primrose","first")>> used to look, cross-referencing that with who you remember from your class. There was one quiet-looking doll in the back sitting next to the window. They had cute brown sausage curls and circular glasses that rested upon their mask. You describe the character in kind, flattering tones and watch <<=setup.getNpcName("npc_primrose","first")>> turn an adorable shade a of red, <<his npc_primrose>> blushing already answering your question before you ask <<=setup.getNpcName("npc_primrose","first")>> if that was <<his npc_primrose>> avatar.<br>
<br>
"@@.npc_primrose;...yes.@@" You grin, telling <<him npc_primrose>> that they looked cute. <<he npc_primrose>> blushes brightly and asks you to change the subject.
<<else>>
You think upon the students you encountered and try to match any of them with <<=ps(setup.getNpcName("npc_primrose","first"))>> appearance. Try as you might, no one comes to mind. You make a mental note to look around if you ever find yourself trapped within <<his npc_primrose>> discipline VR program again.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: ask primrose about the lack of choice in vr
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" "./images/characters/npc_primrose_plug.png">>
<div id="invframe" class="scrolltext">
Thinking back on your time in <<his npc_primrose>> VR simulation, you ask why <<=setup.getNpcName("npc_primrose","first")>> made the courses so linear. <<He npc_primrose>> rolls his eyes back and gives an elongated groan. "@@.npc_primrose;Trust me, I would make them longer if I could.@@"<br>
<br>
You ask <<him npc_primrose>> what's holding <<him npc_primrose>> back. "@@.npc_primrose;It's a lot of things. Time, resources, <<man>>power... heh. But seriously, it's difficult enough making the system run with that many moving parts. Giving the participant more control over the events that play out would only complicate things further, and really be at cross-purpose to the overall intent. Trust me, I would LOVE to make a fully realised virtual sandbox... but that wouldn't really be in line with the goals of the project, i.e.: employee training and teaching the correct way to be at work, to say nothing of budgetary concerns!@@"<br>
<br>
<<He npc_primrose>> laughs, shaking <<his npc_primrose>> head. "@@.npc_primrose;Besides, I kinda like it as is. I'd rather have a strict path guiding new hires to the correct answer than having to punish them over and over again for not knowing the answers... though that has its place and time~@@"
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: ask primrose about the similarities in the dark 1 vr trial
#status: RELEASED 0.9.1.0
#ignore_spell: suuuuuuuuuper,tooootally,s,reeeeeally
#*/
<<include enterroom>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" "./images/characters/npc_primrose_plug.png">>
<div id="invframe" class="scrolltext">
While you hesitate for a moment, you give in to your curiosity and ask <<=setup.getNpcName("npc_primrose","first")>> why one of the VR trials was so similar to your run-in with <<=setup.getNpcName("npc_technician","first")>> on the day you were hired. <<=setup.getNpcName("npc_primrose","first")>> raises an eyebrow. "@@.npc_primrose;Did the disclaimer not load? That happens sometimes. The events presented are a work of fiction. Any similarities to real world events are purely coincidental.@@"<br>
<br>
<<if setup.getTotalValue("dominance") > 10>>
You know that's a lie and decide to press for answers. You put on a stern expression and lean in, staring directly into <<=ps(setup.getNpcName("npc_primrose","first"))>> eyes. You do not blink. You do not flinch. You just let him silently know that you know <<he npc_primrose>> isn't telling the truth. The pink scientist blushes, looking away from you before meeting your gaze again. <<He npc_primrose>> bites <<his npc_primrose>> lower lip before finally letting it out in an exasperated exhalation "@@.npc_primrose;alright fine! Yes, I took inspiration from your data loss! It was kind of a big deal and it wasn't hard to get the details! I made some embellishments for artistic reasons... but I wrote it so long ago, before I even knew you and I didn't know you'd end up seeing it yourself!@@"<br>
<br>
You scold <<him npc_primrose>> for lying to you and tell <<him npc_primrose>> that <<he>> is a very naughty <<if $fetish.sissy>>sissy<<else>><<boy npc_primrose>><</if>>. <<=ps(setup.getNpcName("npc_primrose","first"))>> blushes brightly and bows <<his npc_primrose>> head respectfully. "@@.npc_primrose;S-sorry <<switch $player.identify_as>><<case 'female'>>ma'am<<case 'male'>>sir<<default>>boss<</switch>>... it won't happen again.@@"
<<elseif setup.getTotalValue("bimbofication") > 15>>
You put on your best bimbo pout and promise <<=setup.getNpcName("npc_primrose","first")>> that you're like, totally sure it was based on your life and stuff! <<He npc_primrose>> laughs playfully, giving a giddy giggle. "@@.npc_primrose;Oh? Are you like... tooootally sure?@@" You nod rapidly.<br>
<br>
"@@.npc_primrose;But are you reeeeeally totally sure?@@" You keep nodding.<br>
<br>
"@@.npc_primrose;But are you suuuuuuuuuper really totally sure?@@" Your neck is starting to hurt but you keep nodding and pouting, batting your eyelashes.<br>
<br>
"@@.npc_primrose;Alright, you got me. You know my weakness~@@" <<He npc_primrose>> giggles playfully. "@@.npc_primrose;Your ditzy little data leak caused a big uproar on the top floors. It wasn't hard to grease a few hands and suck a few dicks to find out all the juicy details~ I made a few artistic flourishes but I'm sure they are to your liking, no~?@@"<br>
<br>
You blush and reply that yes! You did like them! <<=setup.getNpcName("npc_primrose","first")>> laughs again, giving you a dainty little pat on the head before returning to a different line of questioning.
<<else>>
Try as you might, you can't think of any way to pry the answers out of the pink-haired pansy. You wager that playing to <<his npc_primrose>> weaknesses might help, but you might need to either up your domme game or lower your smart... game...
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about your manager
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> about <<his npc_primrose>> thoughts on your manager, <<=setup.getNpcName("npc_manager","formal")>>. <<He npc_primrose>> frowns slightly, but it is only momentary before reverting back to <<his npc_primrose>> usual bright smile.<br>
<br>
"@@.npc_primrose;I only know <<=setup.getNpcName("npc_manager","formal")>> through her reputation. From that I can conclude she is an exceptional asset to the company and is clearly very skilled at her work. After all...@@" <<He npc_primrose>> motions to you and adds playfully "@@.npc_primrose; she trained you, no~? And you are the model image of a <<if $fetish.sissy>>SISSI <</if>>Secretary! Plus, well... anyone who could train a secretary to be worthy of serving <<=setup.getNpcName("npc_boss","formal")>> certainly knows their stuff!@@"<br>
<br>
You cannot help but blush at <<=ps(setup.getNpcName("npc_primrose","formal"))>> flirtatious compliment, even if the mention of your predecessor leaves you with more mixed thoughts. You decide it best to change the subject before <<he npc_primrose>> makes you squirm further.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about work_doctor
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> for <<his npc_primrose>> thoughts on <<his npc_primrose>> colleague, <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_primrose>> grins and begins to twirl one of <<his npc_primrose>> pink bangs.<br>
<br>
"@@.npc_primrose;<<=setup.getNpcName("npc_work_doctor","nickname")>>? <<He npc_work_doctor>>'s great~@@" The answer takes you aback. You clearly remember <<=setup.getNpcName("npc_work_doctor","formal")>> visibly disliking <<=setup.getNpcName("npc_primrose","first")>>. You ask for clarification.<br>
<br>
"@@.npc_primrose;Sure, <<he npc_work_doctor>>'s a mad scientist but it's not impossible to get <<him npc_work_doctor>> to do what you want <<him npc_work_doctor>> to do if you know what language to couch it in or how to suck <<his npc_work_doctor>> cock just right. I have the esteemed privilege of knowing how to do both so our professional relationship is fairly stable~ So what if <<he npc_work_doctor>> can be a bit prickly? So long as <<he npc_work_doctor>> slips me a big prick every once in a while, and maybe some funding and test subjects? Well, it all balances out.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about the barista
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> for <<his npc_primrose>> thoughts on the fifty-second floor's barista, your friend, <<=setup.getNpcName("npc_barista","nickname")>>. <<His npc_primrose>> face lights immediately and <<he npc_primrose>> starts to gush.<br>
<br>
"@@.npc_primrose;Oh my gawd, <<=setup.getNpcName("npc_barista","nickname")>> is the best! She's one of the closest people I have to a friend in this building, a real kindred spirit. We are so on the same wavelength about a ton of topics~.@@" You can't help but quirk an eyebrow. Knowing how both of them act, you can only imagine how those conversations go.<br>
<br>
"@@.npc_primrose;What? It's <<if !$npc_primrose.fem>><<if $fetish.sissy>>sissy<<else>>bimboi<</if>>/<</if>>bimbo solidarity! If you can't talk to someone about your feelings and how much you both enjoy sucking cock, can you really call that person your friend?@@" You're beginning to wonder what exactly <<=ps(setup.getNpcName("npc_primrose","first"))>> definition of "friend" is but you decide not to push further.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about your psychiatrist
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> for <<his npc_primrose>> thoughts on your psychiatrist, <<=setup.getNpcName("npc_psychiatrist","formal")>>. <<His npc_primrose>> gaze seems to pass through you for a moment as <<he npc_primrose>> sighs distantly.<br>
<br>
"@@.npc_primrose;<<=setup.getNpcName("npc_psychiatrist","first")>> — <<=setup.getNpcName("npc_psychiatrist","formal")>> was my mentor when I first joined the company. I am honoured to have had a chance to work side-by-side with her. The routines she crafted were works of art. Before her, the rest of the department was like children.@@"<br>
<br>
You are startled by the sudden reverence in <<=ps(setup.getNpcName("npc_primrose","formal"))>> voice. You have only ever heard <<him npc_primrose>> talk about <<=setup.getNpcName("npc_boss","formal")>> in such high regard. "@@.npc_primrose;Sadly, our paths diverged. I wish she would return to our corporate family and continue her work but that appears to not be in the cards. A shame, really.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> waves a hand in front of <<his npc_primrose>> face, giving an awkward laugh. "@@.npc_primrose;Forgive me. I didn't mean to get so caught in the past. I totes miss having <<=setup.getNpcName("npc_psychiatrist","formal")>> around but we can't live in the past! Not when there's still so much SCIENCE to be done!@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about npc_boss
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> <<his npc_primrose>> opinion on the CEO, <<=setup.getNpcName("npc_boss","formal")>>. The dollmaker's face immediately lights up as <<he npc_primrose>> begins to gush. "@@.npc_primrose;<<=setup.getNpcName("npc_boss","formal")>> is the most incredible <<man npc_boss>> I have ever met. <<He npc_boss>> is intelligent, powerful, ambitious, dedicated, and sexy to boot. You think about it — <<he npc_boss>>'s already worth billions, and yet <<he npc_boss>> comes into the office every day, working harder than just about anyone other than myself to push the company to even greater heights! Every time I think about <<him npc_boss>> it just fills me with awe — and gratitude that I can be a part of it all! Yes, I could not think of a better leader to guide this company into the future!@@"<br>
<br>
<<printThought "Well... I guess I shouldn't have expected much else.">><br>
<br>
You ask what <<=ps(setup.getNpcName("npc_primrose","formal"))>> relationship with <<=setup.getNpcName("npc_boss","formal")>> is like?<br>
<br>
"@@.npc_primrose;Our relationship? Well, <<he npc_boss>>'s my glorious boss and I'm one of <<his npc_boss>> devoted employees! I guess it's a little kinkier than that, obviously. Just about everyone at this company is a little kinky, you know~ As to me and <<=setup.getNpcName("npc_boss","formal")>>, well, I show <<him npc_boss>> my work and lobby for my lab's budget. Sometimes I'm even lucky enough to take <<his npc_boss>> absolutely divine cock~ I consider <<him npc_boss>> my <<Master npc_boss>>... even if office politics and such means we can't exactly use those words.@@"<br>
<br>
Even though the feminine scientist continues <<his npc_primrose>> praise, you can read a hint of disappointment in <<his npc_primrose>> voice. You ask if <<=setup.getNpcName("npc_boss","formal")>> has ever visited <<him npc_primrose>> in <<his npc_primrose>> lab.<br>
<br>
"@@.npc_primrose;Oh, well... no. I always go to <<him npc_boss>>. To be in <<his npc_boss>> magnificent office is such an honour! The view is spectacular, not to mention what one can see out the windows! Obviously <<he npc_boss>>'s very busy! It can take weeks for me to get an appointment scheduled. I'm sure <<he npc_boss>> has a lot of things going on and doesn't have the time to make personal visits! What's important is that my lab is here furthering <<his npc_boss>> goals, and I know <<he npc_boss>> enjoys having me as a servant and employee.@@"<br>
<br>
[<<moveTo "theme_primrose_boss_anti" 'Press the issue. <<=setup.getNpcName("npc_boss","formal")>> obviously cannot be so busy as to never visit one of <<his npc_boss>> most loyal employees!' 60>>]<br>
[<<moveTo "theme_primrose_boss_neutral" "Let it slide. Best not to cause any turmoil." 60>>]<br>
[<<moveTo "theme_primrose_boss_pro" 'Agree. <<=setup.getNpcName("npc_boss","formal")>> is a busy <<man npc_boss>>. We should consider ourselves lucky to even be in the same building.' 60>>]<br>
</div>/*#
#desc: disagree with primrose about pawn
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_primrose' 5>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You press the topic. If <<=setup.getNpcName("npc_boss","formal")>> really enjoyed having <<=setup.getNpcName("npc_primrose","first")>> around, wouldn't <<he npc_boss>> make time for <<his npc_boss>> loyal scientist? Wouldn't <<=setup.getNpcName("npc_primrose","first")>> be able to see <<his npc_primrose>><<if $npc_boss.fem>> "Domina" <<else>> "Master" <</if>>without having to make appointments weeks in advance? Wouldn't <<he npc_boss>> act like a <<Master npc_boss>> who cherishes <<his npc_boss>> sub and makes <<himself npc_boss>> available?<br>
<br>
The scientist furrows <<his npc_primrose>> brow behind <<his npc_primrose>> glasses. <<His npc_primrose>> usually bubbly demeanor fades in an instant as <<he npc_primrose>> speaks curtly: "@@.npc_primrose;You are asking some rather pointed questions, <<=$player.first_name>>. Questions that I think <<=setup.getNpcName("npc_discipline","formal")>> would find extremely out of line...@@"<br>
<br>
You can read the thinly veiled threat and decide to change the subject.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: placate primrose about pawn
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_primrose' 2>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You simply nod along where appropriate then change the subject at your earliest convenience.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: agree with primrose about pawn
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You agree with <<=setup.getNpcName("npc_primrose","first")>>, adding how fortunate <<he npc_primrose>> is to share such an important part in working under someone so incredible. Having met <<=setup.getNpcName("npc_boss","formal")>> yourself, you can certainly recognise that even just to be in <<his npc_boss>> glorious presence is a privilege, not a right.<br>
<br>
"@@.npc_primrose;I knew you'd understand!@@" <<=setup.getNpcName("npc_primrose","first")>> claps <<his npc_primrose>> hands together, nodding rapidly. "@@.npc_primrose;I know <<he npc_boss>> may seem distant but <<he npc_boss>>'s with us in ways beyond the physical. The security cameras are <<his npc_boss>> eyes and our directions are <<his npc_boss>> words. I like to imagine my collar is <<his npc_boss>> hand wrapped around my throat... my cage is <<his npc_boss>> fingers squeezing my balls... and of course the plug, and all these lovely clones of <<his npc_boss>> magnificence...@@" <<=setup.getNpcName("npc_primrose","first")>> glances around at the dozen or so near identical silicone dildos scattered about <<his npc_primrose>> lab, "@@.npc_primrose;Yes, I am blessed to be constantly surrounded, and frequently stuffed! with reminders of <<=setup.getNpcName("npc_boss","formal")>>, and it really makes my work, and the tightness of my bonds, all the sweeter.@@"
<br>
You can't help but smile at the thought. Maybe your own situation would benefit from such a way of thinking?<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about your predecessor, npc_secretary
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> about <<=ps(setup.getNpcName("npc_boss","formal"))>> secretary (and your predecessor), <<=setup.getNpcName("npc_secretary","formal")>>. <<=setup.getNpcName("npc_primrose","first")>> twirls a strand of <<his npc_primrose>> hair around <<his npc_primrose>> finger as <<he npc_primrose>> talks.<br>
<br>
"@@.npc_primrose;She's an exemplary personal assistant. The ideal that all other secretaries at the company should strive to emulate. While my personal interactions have remained limited, I have been inspired by both her secretary behaviour and appearance when it comes to several of my models. I know she was originally trained by your manager but now? <<=setup.getNpcName("npc_boss","formal")>> has molded her into the perfected secretary <<he npc_boss>> wants her to be, and if she is good enough for <<=setup.getNpcName("npc_boss","formal")>>, well... she must be close to perfection indeed.@@"<br>
<br>
You raise an eyebrow. Despite <<his npc_primrose>> words, <<his npc_primrose>> tone is oddly sterile. You ask <<=setup.getNpcName("npc_primrose","first")>> if <<he npc_primrose>>'s spent any time with <<=setup.getNpcName("npc_secretary","nickname")>>.<br>
<br>
"@@.npc_primrose;Not beyond the occasional elevator ride or scheduling phone calls. She isn't particularly social, or available for my study. We're both busy with our own work, <<=setup.getNpcName("npc_boss","formal")>> is a demanding <<Master npc_boss>>, obviously, only... well, it's just that her work means she is the first on hand, or lips, or hole, or providing whatever else may be required to fulfill all of <<=ps(setup.getNpcName("npc_boss","formal"))>> wishes...@@"<br>
<br>
[<<moveTo "theme_primrose_npc_secretary_2" 'Ask <<=setup.getNpcName("npc_primrose","first")>> if <<he npc_primrose>> is jealous of <<=setup.getNpcName("npc_secretary","nickname")>> being around <<=setup.getNpcName("npc_boss","formal")>>?' 60>>]<br>
[<<moveTo "theme_primrose_npc_secretary_3" "Give a consoling smile and change the subject." 60>>]
</div>/*#
#desc: talk to primrose about npc_secretary question
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_primrose' 2>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> if <<he npc_primrose>>'s jealous of <<=ps(setup.getNpcName("npc_secretary","formal"))>> being so close to <<=setup.getNpcName("npc_boss","formal")>> so much? The <<man npc_primrose>> bites <<his npc_primrose>> lower lip, thinking the question over before exhaling through <<his npc_primrose>> nose. "@@.npc_primrose;Jealousy is an ugly thing. I'd certainly love to spend more time in our glorious CEO's presence. Who wouldn't? So seeing someone who works under <<him npc_boss>> literally every day? Well, anyone would feel as I do. But she is where she needs to be, and so am I, each working for the betterment of the company, and what could please <<=setup.getNpcName("npc_boss","formal")>> more than that? Yes, there's really nothing more to it.@@"<br>
<br>
You aren't convinced if that is the full truth but <<=setup.getNpcName("npc_primrose","first")>> looks like <<he npc_primrose>> wants to change the subject. It feels almost comedically strange seeing the bubbly scientist looking so somber and distant.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about npc_secretary console
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You nod to yourself a few times before giving a consoling smile to <<=setup.getNpcName("npc_primrose","formal")>>. <<He npc_primrose>> nods back, forcing a smile. There isn't anything more to say; you already know the answer to the unasked question.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about nursula
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> what <<his npc_primrose>> thoughts are about <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> maniacal minion, <<=setup.getNpcName("npc_evil_nurse","formal")>>?<br>
<br>
For the first time you can remember, the scientist looks off-guard. <<He npc_primrose>> stares forward vacantly, cheeks filling with colour. <<He npc_primrose>> reminds you of a frozen computer program. You can't help but wave your hand in front of <<his npc_primrose>> face; <<he npc_primrose>> doesn't respond. After an uncomfortable silence, <<he npc_primrose>> answers flatly and definitively:<br>
<br>
"@@.npc_primrose;We have a normal, professional relationship. I will not be taking follow-up questions on this subject.@@"<br>
<br>
Having met the sadist, you doubt her relationship with anyone could be described as either normal or professional. Still, you honour <<his npc_primrose>> words and change the subject.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about nintendolls and its ceo
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> if <<he npc_primrose>> has had any run-ins with the Nintendolls employees or their CEO. <<He npc_primrose>> cants <<his npc_primrose>> head to the side, pigtails swinging playfully with the motion. "@@.npc_primrose;Weird question, but I guess you'd probably want to know given the circumstances of your employment. Well, let me see...@@"<br>
<br>
"@@.npc_primrose;I've only met the CEO a few times. <<He npc_nintendolls>> was very interested in our work and how it might integrate with some of <<his npc_nintendolls>> own company's projects. Sadly, once my team was downsized, that concluded most of my interactions with <<him npc_nintendolls>>. <<He npc_nintendolls>> came down here once to see the new set-up and seemed pretty discouraged. Thankfully, I was there to help <<him npc_nintendolls>> feel better~@@" You do not have to imagine what <<he npc_primrose>> means by that: <<=setup.getNpcName("npc_primrose","formal")>> is already making some extremely graphic hand motions that signal that <<he npc_primrose>> sucked the <<man npc_nintendolls>>'s cock.<br>
<br>
"@@.npc_primrose;As for their products, I've played some of the games that they've published. Good stuff. Really groundbreaking. Unfortunately their physical offerings are a bit out of my price range, so, as much as I'd love to play around with one of their high-end dolls, beyond that, I can't really say. I live a pretty secluded life. Most everything I use on a daily basis is either made by <<if $fetish.sissy>>SISSI<<else>>the company<</if>> or one of their subsidiaries and it's all delivered down here by drones without my interaction.@@" The scientist shrugs, keeping up <<his npc_primrose>> bright smile.<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about the A-SLUT program
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
Thinking back on your experiences at work, you ask <<=setup.getNpcName("npc_primrose","formal")>> for <<his npc_primrose>> thoughts on the A-SLUT program. <<He npc_primrose>> gives a joyful laugh and a peppy response:<br>
<br>
"@@.npc_primrose;It's a wonderful program, isn't it? Slowly but surely building up your confidence and skills as you implement new items into your wardrobe? Delightful~ I've been begging <<=setup.getNpcName("npc_development","formal")>> to add some of my work into the future iterations of the program but she's been against the idea. She's so focused on being hands on with everything. I love that about her but it isn't feasible with the pace we're growing! I've brought her at all kinds of predictive models extrapolating the company's growth rate and how we'll need to divide up the work but she won't budge! It's like... kind of frustrating.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> begins to idly spin <<his npc_primrose>> hair in <<his npc_primrose>> fingers, huffing cutely to <<him npc_primrose>>self. "@@.npc_primrose;We have all the data but that doesn't convince some people. They have to see it for themselves before they budge and sometimes it's too late when that happens. Why don't they see that I just want to help them..?@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about corporate culture
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","formal")>> what it's like living on company property? <<His npc_primrose>> expression brightens in a way you've come to associate with <<him npc_primrose>> talking about work. "@@.npc_primrose;Oh, it's great! I'm part of the pilot program for the company's residency program. There's thirty of us living in various different set-ups around the building. Some are as simple as a cell and a cot while others are closer to full-sized apartments. I heard one workaholic volunteer just has a sleeping pod next to their desk! To ensure that our data is untainted, each of us are given a very strict allowance of time spent off of company property. It's only six hours a week for me so I have to schedule carefully! Still, I've adjusted pretty well to it, in my opinion, and it does wonders to my productivity! The results from this study will go towards a potential company habitat in the future.@@"<br>
<br>
You ask <<him npc_primrose>> to elaborate. You've never heard of any "company habitats" before. "@@.npc_primrose;Oh, that's not surprising. The program's very early in development. <<if $fetish.sissy>>SISSI<<else>>the company<</if>> is always expanding. The next logical step from where we are now (with a headquarters and branches) would be to construct an extraterritorial state. Someplace where employees would live in company housing, dine in company restaurants, and hang out at company entertainment venues. You could go about your day without ever stepping off of company property and using only company-approved facilities. There are countless benefits to living in a company-controlled habitat. There would be people-movers and public transportation designed around the particular hours and requirements of our jobs. We'd be safe from outside influence and the prospective crime rate would be close to nil. Plus, we'd get to spend all our time around like-minded employees in unique living arrangements that the public hasn't quite fully accepted yet. <<=setup.getNpcName("npc_boss","formal")>> would even be able to write the laws that are enforced within the borders. In other words — a utopia...@@"<br>
<br>
[<<moveTo "theme_primrose_company_life_anti" 'Tell <<=setup.getNpcName("npc_primrose","first")>> you think company habitats are a bad idea.' 60>>]<br>
[<<moveTo "theme_primrose_company_life_neutral" 'Tell <<=setup.getNpcName("npc_primrose","first")>> you would want to see these company habitats for yourself.' 60>>]<br>
[<<moveTo "theme_primrose_company_life_pro" 'Tell <<=setup.getNpcName("npc_primrose","first")>> you think company habitats are a great idea.' 60>>]
</div>/*#
#desc: talk to primrose about being against company habitat
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_primrose' 3>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
A utopia? You furrow your brow and shake your head. It sounds like a corporate police state! You can't trust <<=setup.getNpcName("npc_boss","formal")>> or any CEO to know what's best for citizens; they only know what's good for themselves and the company's profit margins. Living in the city is scary enough. Living in a secluded bubble with an even higher amount of surveillance and control over your life? Absolutely not.<br>
<br>
<<=setup.getNpcName("npc_primrose","formal")>> pouts, crossing <<his npc_primrose>> arms over <<his npc_primrose>> chest. "@@.npc_primrose;Aww, don't be like that! I hope you're not one of those pessimists who think that all corporations are evil or something. Think of all the opportunities that you've had through your work! It'd be rude to turn down such hospitality off of some fringe conspiracy. You can't paint all CEOs as bad because some misuse their power. <<=setup.getNpcName("npc_boss","formal")>> wants what is best for us! And surely the results speak for themselves — I know I've never been happier than working for the company, and the harder I work, the better I feel!@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about being neutral company habitat
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_primrose' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You fold your lips into a line and think it over. There's a lot of potential efficiencies to living in this type of habitat but you can think of more than a few downsides. You conclude that it's too early to tell if this would be the kind of place you'd want to live.<br>
<br>
"@@.npc_primrose;Think it over. Give it time to grow on you. I promise you that it'll be worth whatever sacrifices we have to make to get there.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: talk to primrose about being pro company habitat
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Living Quarters.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_room.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
Considering all of the dangers and chaos you've seen in the city around you, living someplace with that much safety and order does sound rather nice. You do enjoy your work and the people. Maybe it could be a utopia? You smile thoughtfully and nod to <<=setup.getNpcName("npc_primrose","formal")>> who winks in return.<br>
<br>
"@@.npc_primrose;I knew we'd be on the same page~! Maybe we can be roommates in the future? Do each other's nails, talk about <<boy>>s, and ride the tram to work every day. I know I'm signing up for the first transfer I can. There won't be any reason for me to stay here once <<=setup.getNpcName("npc_boss","formal")>> has left. I don't have a lot of anchors holding me to this place.@@"<br>
<br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: the first vr trial scene 1
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemWorn('latex_straightjacket_pink')>>
<<if setup.checkItemWorn('plug_suit_red')>>
<<removeItem 'plug_suit_red' true>>
<<deleteItem 'plug_suit_red'>>
<</if>>
<<removeItemSet 'prim_trial_outfit'>>
<<deleteItemSet 'prim_trial_outfit'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<useClothSetPush 'vr'>>
<<removeAllClothing>>
<<addItemSet 'secretary_vr_1'>>
<<wearItemSet 'secretary_vr_1'>>
<<addNpcTheme 'npc_primrose' 'research' 'theme_primrose_continued_research'
0
'theme_primrose_continued_research'
true
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png">>
<div id="invframe" class="scrolltext">
The void fades away as a title card fills your vision. The pale green background is littered with fanciful golden writing that harkens to a long-gone era of television and filmmaking. The largest title reads<<if $fetish.sissy>> "SISSI<<else>> "The company<</if>> and You: Your First Day!" The borders of the screen begin to blur and meld as silhouettes and shapes load into the simulation. When things settle down you are standing on the sidewalk outside of a black and white recreation of your place of work. People file past you and into the building as if it were any normal day. Worryingly, everyone is smiling just a little too much. While the idea may have been to create a friendly environment, the resulting atmosphere feels just a little sinister.<br>
<br>
"@@.npc_retention;Welcome to your first day at Social Interaction Services Syndicate Inc.!@@" An oddly familiar narrator's voice fills your mind and makes you jump. You land back on your heels, checking your reflection in the polished glass of the front door to the lobby. You are dressed in a white high-collar blouse, black pencil skirt, pantyhose, and heels. It is not all that different from uniforms you've worn before... right down to the bra, and panties that you can feel underneath. Some real attention to detail on the part of the designer.<br>
<br>
"@@.npc_retention;As our newest Secretary, you will play a vital role in keeping the wheels turning. Once you are assigned to an administrator, you will be responsible for providing the support they need to do their work efficiently. Whether that is bookkeeping, taking calls, fetching lunch, or more personal care, you will be tasked with enabling your boss's performance and ensuring their happiness. But first, let's get to know some of the wonderful people who you'll be seeing a lot of.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_retention","formal"))>> voice proves a stern, almost seductive narration, and you wonder what <<=setup.getNpcName("npc_primrose","first")>> had to do to convince <<=setup.getNpcName("npc_retention","formal")>> to lend <<his npc_retention>> voice to the project.<br>
<br>
A white line on the floor guides you inward. While it would seem like a suggestion, attempting to move anywhere other than the illuminated path proves impossible. Might as well play by their rules. You are in <<=ps(setup.getNpcName("npc_primrose","formal"))>> world and <<he npc_primrose>> clearly has a very specific route in mind for you to follow.<br>
<br>
[<<moveTo "event_primrose_vr_trial_0_2" "Follow the white line." 300>>]
</div>/*#
#desc: the first vr trial scene 2
#status: FINISHED 0.8.7.0
#ignore_spell: jg
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png">>
<div id="invframe" class="scrolltext">
"@@.npc_retention;Founded in 2018 by <<=setup.getNpcName("npc_ceo","full")>>, Social Interaction Services Syndicate Inc. quickly took over the turbulent world of online social interaction, and the company has always benefited from a strong top-down leadership, its already consistent growth only accelerating since the appointment of <<=setup.getNpcName("npc_boss","formal")>> as CEO.@@"<br>
<br>
You listen as you are lead forward, the company lobby just as you remember it. That certainly makes sense, given that the person constructing the simulation lives in this very building. "@@.npc_retention;<<=setup.getNpcName("npc_boss","formal")>> has been awarded numerous accolades for <<his npc_boss>> outstanding leadership, including JG Power and Associates CEO of the Year 2029. Upon taking the reins, <<he npc_boss>> has led the company to a record number of consecutive quarters of growth!@@" As you entered the elevator and ascended towards the R&D floor, the disembodied narrator continued to deliver numerous historical tidbits and "fun facts" about your place of employment. It is hard to feign interest after having worked for the company in question for this long. The image painted is far too squeaky clean and mythologised.<br>
<br>
The tour is rather extensive. You visit the R&D labs, the cafeteria, and an office complex not dissimilar from the one you work at with <<=setup.getNpcName("npc_manager","formal")>>. Yet the experience is strangely uncanny. There are numerous posters on the wall in the common hallways that are not there in the real building. They certainly fit in with the idealized workplace that <<=setup.getNpcName("npc_primrose","formal")>> envisioned for this simulation. While many are generic workplace motivators, others are far more suggestive in their imagery and wording. "Always be willing to bend over for your superiors!" reads a poster showing a secretary alluringly leaning down to pick up a paper dropped by a superior standing behind her. "Service starts on your knees!" reads another with an image of a different secretary kneeling and looking up towards the camera. "The best Secretaries never say no!" reads a final poster. This one simply had a number of secretaries standing at attention. While it looked rather tame at first glance, the outline of restraints are visible under the tight fabric of their uniforms...<br>
<br>
In fact, many areas you visit seem to have a heightened sexuality to them. You see desks outfitted with cushioned cubbies underneath. Cubbies a bit larger than the average cavity under a desk and outfitted with a few rings for attachments. The mental image it paints sends a shiver down your spine. While the company did have a certain level of sexual forwardness, this feels beyond that<<if $npc_manager.stage > 3>>, especially for the "lower" floors<</if>>. You look to the other employees lingering; they don't seem to notice or be bothered by the modification but they appear programmed to consider these things commonplace.<br>
<br>
[<<moveTo "event_primrose_vr_trial_0_3" "Continue to the virtual office." 180>>]
</div>/*#
#desc: the first vr trial 3
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_primrose.flags.vr_stage = 0>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
The line leads you back to the recreation of your standard secretary's desk and chair. What follows is a very extensive walkthrough of the regulation version of your workstation. Without any personalisation, it is rather stark and empty. Listening to the narrator rattle off the history of the company was already grating; hearing <<him npc_retention>> explain how to do the job you've already been doing is even worse. You cannot help but zone out during the explanation of the Rolodex. You don't even have a Rolodex at your desk! Who even has a Rolodex anymore!?<br>
<br>
"@@.npc_primrose;You must be getting tired of hearing <<=setup.getNpcName("npc_retention","formal")>> droning on?@@" You nod absentmindedly, staring at the ceiling. "@@.npc_primrose;I figured. I can see it in your brain activity.@@" You sit up abruptly, attention refocused. Could <<=ps(setup.getNpcName("npc_primrose","first"))>> system read your thoughts? No answers are forthcoming. "@@.npc_primrose;Variety is the spice of life, after all! And who better to reward you for your patience and welcome you to the company than our CEO <<himself npc_boss>>?@@" Your heart skips a beat as the antechamber door opens and the familiar, imposing silhouette of <<=setup.getNpcName("npc_boss","formal")>> steps forward. <<He npc_boss>> approaches slowly, towering over your seated form as the original narrator's voice returns:<br>
<br>
"@@.npc_retention;Well go on! It's time to make a good first impression. The polite thing to do would be to thank <<him npc_boss>> for your job.@@"<br>
<br>
You reflect on what you've seen and heard during your trip around the office. One part of you says to ignore what you know about the company and the "subtle" suggestions given through the simulation and greet the man professionally. Another part of you suspects that the simulation might expect you to handle your guests in a more "hands on" way.<br>
<br>
[<<moveTo "event_primrose_vr_trial_0_4_1" "Rise to your feet and introduce yourself." 300>>]<br>
[<<moveTo "event_primrose_vr_trial_0_4_2" 'Get on your knees and "thank <<him npc_boss>>" for your job.' 300>>]
</div>/*#
#desc: the first vr trial 4 chaste route
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You bury your feelings about <<=setup.getNpcName("npc_boss","formal")>> and the simulation and act professionally. In this virtual space, <<=setup.getNpcName("npc_boss","formal")>> lacks the dominating aura <<he npc_boss>> radiates in the real world. You know in your heart <<he npc_boss>> has no power over you here. Rising to your feet, you extend your hand and introduce yourself to the CEO. While in real life you had been roped into working at <<if $fetish.sissy>>SISSI<<else>>the company<</if>> as a consequence of events somewhat outside your control, this could be your chance to experience what a normal hiring would have been like. You thank the <<man npc_boss>> for your job and assure <<him npc_boss>> that you won't disappoint.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>>, or the simulation of <<him npc_boss>>, seems almost impressed. <<He npc_boss>> raise <<his npc_boss>> eyebrow as <<he npc_boss>> shakes your hand. "@@.npc_boss;I believe you. You've shown quite the initiative so far. I will be keeping a close eye on you.@@" <<He npc_boss>> finishes shaking your hand before turning towards the door, walking in to greet your simulated manager. You peek behind <<him npc_boss>>, spying a rather low poly recreation of a fine office. That brings a smile to your face; you're seeing something you weren't supposed to and there's something amusing about that.<br>
<br>
"@@.npc_retention;Well, I think you made a good impression,@@" the narrator states, breaking the silence. "@@.npc_retention;Maybe you have what it takes to reach the upper echelons of Social Interaction Services Syndicate Inc.'s secretary pool! If you remember your training and follow your manager's guidance, you will most certainly go far!@@"<br>
<br>
The world around you begins to fade away, one asset at a time. When nothing is left, you feel the familiar sensation of being drawn out of a simulated reality...<br>
<br>
[<<moveTo "event_primrose_trial_after_1" "Awaken." 300 "<<deleteItemSet 'secretary_vr_1'>><<useClothSetPop 'vr'>>">>]
</div>/*#
#desc: the first vr trial 4 submit route
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Even if it is a facsimile of the CEO, you feel compelled by both your own experience, and the simulation to submit to <<=setup.getNpcName("npc_boss","formal")>>. Pushing your chair out of the way, you lower yourself onto your knees. You turn your gaze upwards and smile at <<=setup.getNpcName("npc_boss","formal")>>, thanking <<him npc_boss>> not only for your job but for gracing you with <<his npc_boss>> presence as you perch obediently on your knees and make a silent request for <<his npc_boss>> cock. <<He npc_boss>> gazes down at you, chuckling to <<himself npc_boss>> as <<he npc_boss>> nods and motions towards <<his npc_boss>> belt buckle. You hurry to oblige <<him npc_boss>>, loosening <<his npc_boss>> belt and slowly pulling down <<his npc_boss>> pants.<br>
<br>
"@@.npc_retention;The CEO has to set an example to <<his npc_boss>> subordinates. <<He npc_boss>> takes charge in social situations with the same ferocity <<he npc_boss>> wields in the boardroom.@@" The narrator does not stop <<his npc_retention>> commentary as you free <<=ps(setup.getNpcName("npc_boss","formal"))>> mammoth member from <<his npc_boss>> expensive silk undergarments. <<He npc_boss>> is already at half mast but is awaiting your move. Like all things, this too is a test.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Your skills in the real world translate one-to-one into the simulation, which works very well in your favour. You've never met a cock you couldn't suck and this is just another mountain to climb. You begin by kissing <<=ps(setup.getNpcName("npc_boss","formal"))>> testes before working your way back towards the underside of <<his npc_boss>> shaft. <<His npc_boss>> cock drapes over your face as you press your lips against every square inch of skin you can find. You know exactly where the nerves are and you figure that they are at the same places in VR. To your mild surprise, a low moan escapes the <<=setup.getNpcName("npc_boss","formal")>> simulacrum. Approval? From <<=setup.getNpcName("npc_boss","formal")>>? It seemed too good to be true.<br>
<br>
When you are sure you've coaxed the CEO to <<his npc_boss>> full length, you impale yourself upon <<his npc_boss>> gargantuan <<getWordPenis "npc_boss">> with all the gusto you can manage. "@@.npc_retention;Well I'll be!@@" applauds the narrator, such a jovial tone somewhat artificial and out of place in <<=ps(setup.getNpcName("npc_retention","formal"))>> voice. Your enthusiasm is rewarded by a very surprised eyebrow raise and a low moan of approval. You let the cock rest in your throat for only a moment before pulling yourself back until your lips barely kiss the tip before starting the act all over again. Each race up and down the shaft is met with a shudder and groan from the simulated <<=setup.getNpcName("npc_boss","formal")>>, who has taken to holding onto the desk with one hand and your hair in the other. You don't know if simulated individuals can get pent up but you know that this one seems ready to bust.
<<else>>
What lies before you is at the very edge of your skill range. This is going to be like climbing a cock mountain or running a cock marathon. You take a deep breath before beginning your trek. You lick your fingers slowly, keeping eye contact with <<=setup.getNpcName("npc_boss","formal")>> as you lubricate your digits in preparation. You slide them back and forth over the underside of <<his npc_boss>> shaft, leaving a trail tracing the motion. A little bit of foreplay ahead of the act. It's the opening act ahead of the big show.<br>
<br>
When you finish collecting yourself, you take the plunge. You wrap your lips around the crown and begin to push forward. You can feel the ridge of the head push past your tongue and into your throat. It creates a sizeable bulge in your throat as you hold back tears of discomfort. You can do this. It doesn't mean you should but it's too late for that. You grip onto <<=ps(setup.getNpcName("npc_boss","formal"))>> thighs for support, eyes locked on <<his npc_boss>> as you begin to slide forwards and backwards. <<He npc_boss>> nods but never smiles as you give it your all. You work your hardest to keep your composure as you build up momentum. A shiver shoots down your spine as you feel the telltale signs of an approaching climax.<br>
<br>
"@@.npc_retention;Remember: a good <<if $fetish.sissy>>SISSI <</if>>Secretary always swallows and takes it with a smile.@@"
<</if>>
<<else>>
You know your limits better than anyone and <<=ps(setup.getNpcName("npc_boss","formal"))>> engorged penis is <<if setup.getTotalValue("oral") > 5>>quite<<else>>far<</if>> beyond them. You can barely even wrap your lips all the way around the head. Still, you are not going to leave <<him npc_boss>> disappointed. You trace your fingertips along <<his npc_boss>> balls as you lick all the way up <<his npc_boss>> shaft. The overwhelmingly masculine scent of <<his npc_boss>> nethers fills your nostrils as you make the trip from base to tip all over again. The telltale drips of pre plop onto your forehead and slide down your face.<br>
<br>
"@@.npc_retention;When facing an obstacle that they cannot overcome by traditional means, a resourceful secretary works to use her unique skills to get the job done.@@" The narrator states as you change positions, wrapping your hands around <<=ps(setup.getNpcName("npc_boss","formal"))>> cock as you bring your lips to the tip. You bring the crown into your mouth, lapping your tongue back and forth over <<his npc_boss>> slit. You bring in what you can while making up for your lack of throat depth with luxurious stroking. <<=setup.getNpcName("npc_boss","formal")>> does not flinch or speak, instead bringing <<his npc_boss>> powerful palm around the back of your head to hold you in place. <<his npc_boss>> fingers lace themselves within your hair, clutching the fibers tightly. Any motion outside of pleasing <<him npc_boss>> would be met with pain. That's fine; you aren't going anywhere.
<</if>>
<br><br>
<<if $fetish.cum>>
True to form, <<=ps(setup.getNpcName("npc_boss","formal"))>> load is a deluge of warmth that cascades into your mouth and down your throat. There is no chance to spit; you must swallow. Rope after rope of cum pours into your stomach and you are forced to drink all of it down. When you are finally granted sweet release and allowed to collect yourself, you feel bloated. You groan, looking up to <<=setup.getNpcName("npc_boss","formal")>> with cum-drunk affection.
<<else>>
<<if setup.getTotalValue("oral") <= 10>>Magically balls<<else>>Balls<</if>> deep down your throat, <<=setup.getNpcName("npc_boss","formal")>> climaxes, <<his npc_boss>> <<getWordPenis "npc_boss">> shuddering in your throat as your efforts are rewarded with <<his npc_boss>> pleasure.
<</if>>
<br><br>
"@@.npc_retention;What do you say?@@" The narrator asks as you bask in the afterglow.<br>
<br>
You mouth the words but no sound comes out. The simulation begins to fade away as you close your eyes, hands against your belly. For a moment, everything is as it should be.<br>
<br>
[<<moveTo "event_primrose_trial_after_1" "Awaken." 300 "<<deleteItemSet 'secretary_vr_1'>><<useClothSetPop 'vr'>>">>]
</div>/*#
#desc: after the trial events
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You are awake and aware as <<=setup.getNpcName("npc_primrose","formal")>> finishes unlocking your mask. You can feel the stiffness in your muscles from extended time in the straitjacket and the slickness of the PVC-lined floor beneath you. "@@.npc_primrose;Easy, easy...@@" the scientist says as <<he npc_primrose>> guides the mask off your face (and the cock-shaped bit out of your mouth). <<He npc_primrose>> smiles down at you, brushing some of <<his npc_primrose>> pink bangs out of <<his npc_primrose>> eyes.<br>
<br>
"@@.npc_primrose;You did good! I knew you would make a perfect test dummy~ Or should I say test dolly?@@" <<He npc_primrose>> laughs playfully as <<he npc_primrose>> turns you around, beginning to free your arms. "@@.npc_primrose;Don't try to talk yet. Just focus on waking up your muscles. There are electronic nodes within the jacket to slow down lactic acid build-up but it does not stop it completely.@@" <<he npc_primrose>> guides your arms from their previous positions, and they hang limply at your side.<br>
<br>
"@@.npc_primrose;Good, good~ You are such a pretty doll~ Take a few minutes to collect yourself and get dressed. I have a few questions about the experience before I let you go. Think of it as a debriefing! Only you can keep your panties on for it.@@" <<=setup.getNpcName("npc_primrose","formal")>> turns on <<his npc_primrose>> heel, giving a playful wave over <<his npc_primrose>> shoulder as he struts out of the cell and back to <<his npc_primrose>> desk.<br>
<br>
[<<moveTo "event_primrose_trial_after_first_1" "Stagger out of the test cell." 300>>]
</div>/*#
#desc: choosing a path 1
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> is leaning forward at <<his npc_primrose>> desk, fingers steepled together as <<he npc_primrose>> admires you. <<He npc_primrose>> looks satisfied with <<himself npc_primrose>>, waving you towards <<him npc_primrose>> and motioning to a smaller office chair. Considering that the room only had one chair when you first visited, it was likely acquired specifically for you.<br>
<br>
"@@.npc_primrose;So, tell me about your experience? What you remember seeing, and how it made you feel? What part left the biggest impression?@@" You nod and begin to walk the scientist through your trip within the simulated building. <<He npc_primrose>> nods <<his npc_primrose>> head when appropriate, <<his npc_primrose>> fingers occupied by a pink glitter pen. <<He npc_primrose>> spins it between <<his npc_primrose>> fingers quite nimbly, occasionally taking notes as you talk.<br>
<br>
"@@.npc_primrose;Thank you for your time. I don't usually get someone to talk to about my work. I do have one last question before I dismiss you. I have two directions for the simulation in mind. One is constructed around personnel fulfillment, cooperation between managers and secretaries, and on encouraging improvement within our staff. The other path emphasizes employee obedience, loyalty to the company, and employee consistency through discipline. On the assumption that you come back to assist me further, which path do you think would be of best value to the company?@@"<br>
<br>
[<<moveTo "event_primrose_trial_after_first_2" "You think employees perform best when they are confident and cooperative with each other." 60 "<<set $scene.cooperative=true>>">>]<br>
[<<moveTo "event_primrose_trial_after_first_2" "You think rank and file employees will perform best when disciplined and subservient." 60 "<<set $scene.cooperative=false>>">>]
</div>/*#
#desc: prim confirms training path
#status: FINISHED 0.8.7.0
#ignore_spell: aaaand
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cooperative>>
<<set $npc_primrose.flags.currentPath = "light">>
<<set $npc_primrose.flags.vr_light = 1>>
<<else>>
<<set $npc_primrose.flags.currentPath = "dark">>
<<set $npc_primrose.flags.vr_dark = 1>>
<</if>>
<<set $npc_primrose.flags.vr_stage = 1>>
<<addItem 'pickmeup_candy'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_primrose","formal")>> nods and marks down your response. "@@.npc_primrose;Excellent, excellent. <<if $scene.cooperative>>Cooperation... There is something about standing on equal footing with your peers that leads to heightened senses of camaraderie.<<else>>Discipline is a field I am very versed in~ A rigorously controlled workforce is a productive workforce~.<</if>> Well, thank you for your time. Here.@@" <<=setup.getNpcName("npc_primrose","formal")>> reaches into <<his npc_primrose>> lab coat and produces a small plastic-wrapped candy. "@@.npc_primrose;A treat for your time~ If it were up to me, I'd give you something a bit more personal but I don't think that would be professional~ Aaaand I'm trying to offload all the candy I stole from <<if $npc_work_doctor.last_name=="Twig">><<=ps(setup.getNpcName("npc_work_doctor","custom","Twiggy"))>><<else>><<=ps(setup.getNpcName("npc_work_doctor","formal"))>><</if>> office~ My integrated corset may provide tight-laced perfection, but I still need to mind my waistline!@@"<br>
<br>
You accept the candy and put it in your pocket. You don't know what exactly the scientist has in mind but you aren't going to find out tonight. You wish <<=setup.getNpcName("npc_primrose","formal")>> a good evening and make your way back to the elevator.<br>
<br>
<<printThought "What a day...">><br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: follow up post light 5
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'prim_plug_trial_outfit'>>
<<deleteItemSet 'prim_plug_trial_outfit'>>
<<removeItem 'kig_vr_mask_copy' true>>
<<deleteItem 'kig_vr_mask_copy'>>
<<useClothSetPop 'tmp'>>
<<set $npc_primrose.flags.vr_light = 6>>
<<set $npc_primrose.flags.currentPath = "dark">>
<<if $npc_primrose.flags.vr_dark == 0>>
<<set $npc_primrose.flags.vr_dark = 1>>
<</if>>
<<if $npc_primrose.flags.vr_stage == 1>>
<<set $npc_primrose.flags.vr_stage = 2>>
<<elseif $npc_primrose.flags.vr_stage == 2>>
<<set $npc_primrose.flags.vr_stage = 3>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ease back into your body in the real world. It feels like waking up from the most pleasant of dreams. You are already back in a seated position as <<=setup.getNpcName("npc_primrose","first")>> enters the cell to remove the mask. "@@.npc_primrose;Someone's in a good mood~@@" <<he npc_primrose>> teases as <<he npc_primrose>> helps you out of your testing gear and back into your clothing. You smile and nod, admitting that you had a wonderful time<br>
<br>
"@@.npc_primrose;I'm happy to hear that. I put a lot of myself in my work. Knowing that you enjoyed your time with my creations is... gratifying. Thank you.@@" The usually flamboyant and playful scientist gives you a sincere smile, following it up with a hug. You embrace <<him npc_primrose>> before preparing to go about your business once more.<br>
<br>
<<if $npc_primrose.flags.vr_stage == 3>>
[<<moveTo "event_primrose_vr_trial_post_results" "Continue." 180>>]
<<else>>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: follow up post dark 5
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'prim_plug_trial_outfit'>>
<<deleteItemSet 'prim_plug_trial_outfit'>>
<<removeItem 'kig_vr_mask_copy' true>>
<<deleteItem 'kig_vr_mask_copy'>>
<<useClothSetPop 'tmp'>>
<<set $npc_primrose.flags.vr_dark = 6>>
<<set $npc_primrose.flags.currentPath = "light">>
<<if $npc_primrose.flags.vr_light == 0>>
<<set $npc_primrose.flags.vr_light = 1>>
<</if>>
<<if $npc_primrose.flags.vr_stage == 1>>
<<set $npc_primrose.flags.vr_stage = 2>>
<<elseif $npc_primrose.flags.vr_stage == 2>>
<<set $npc_primrose.flags.vr_stage = 3>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
Those words are still upon your lips as you awaken back in your body. While you normally feel some level of relief to be back in the real world, you instead feel a deep longing to go back into the simulation. With one change... you want to be with <<=setup.getNpcName("npc_boss","formal")>>! You barely notice the door opening as <<=setup.getNpcName("npc_primrose","first")>> enters the room with your clothing in tow. "@@.npc_primrose;Easy, easy...@@" <<he npc_primrose>> calms you, stroking your back slowly until you have collected yourself.<br>
<br>
"@@.npc_primrose;It's alright, it's alright. <<=setup.getNpcName("npc_boss","formal")>> is here in the real world. We can bring glory to <<him npc_boss>> here.@@" You nod, remaining still as the bondage is removed. <<He npc_primrose>> is right; you can bring the level of loyalty and dedication you experienced in the simulation to your work here!<br>
<br>
<<printThoughtGlitch "All glory to <<=setup.getNpcName('npc_boss','formal')>>!">><br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>><br>
<br>
<<if $npc_primrose.flags.vr_stage == 3>>
[<<moveTo "event_primrose_vr_trial_post_results" "Continue." 180>>]
<<else>>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: follow up after completing both light and dark 5
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
"@@.npc_primrose;Actually, before you head out...@@" You stop in your tracks, turning to meet the pink glasses of <<=setup.getNpcName("npc_primrose","formal")>>. "@@.npc_primrose;You are now the first tester to have experienced both sets of simulations. I'm still figuring out what I want the final version to look like so... which of the two do you think would produce better employees?@@"<br>
<br>
[<<moveTo "event_primrose_vr_trial_post_results_light" "You enjoyed the cooperative simulation more." 120>>]<br>
[<<moveTo "event_primrose_vr_trial_post_results_dark" "You enjoyed the tyrannical simulation more." 120>>]<br>
[<<moveTo "event_primrose_vr_trial_post_results_both" "You say you enjoyed both equally." 120>>]
</div>/*#
#desc: choose light vr
#status: FINISHED 0.9.1.0
#ignore_spell: chéri
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You say that you enjoyed the cooperative simulation more. You liked getting to help others and feel like equals with your manager. A part of you wishes the real world could be so kind and caring. <<=setup.getNpcName("npc_primrose","first")>> nods wistfully.<br>
<br>
"@@.npc_primrose;Me too, mon chéri. Me too... Thank you for answering my question. You may go. I'll see you later~@@"<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: prefer dark vr
#status: FINISHED 0.9.1.0
#ignore_spell: chéri
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You say that you enjoyed the tyrannical simulation more. You liked surrendering your freedom and being controlled. A part of you wishes the real world could be so simple and efficient. <<=setup.getNpcName("npc_primrose","first")>> grins zealously.<br>
<br>
"@@.npc_primrose;Bon, mon chéri! And we shall make it that way! With our work here, we shall show the others what a true corporate utopia shall look like! All glory to <<=setup.getNpcName("npc_boss","formal")>>!@@"<br>
<br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>><br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: do not choose preferred vr
#status: FINISHED 0.9.1.0
#ignore_spell: chéri
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_primrose","first")>> that you enjoyed both equally. They both have elements you enjoyed and you would combine the two, given the chance. You almost expect <<=setup.getNpcName("npc_primrose","first")>> to mock your answer but instead he hums playfully.<br>
<br>
"@@.npc_primrose;Maybe the truth does lie somewhere in the middle. I will consider this after a nice cup of tea. Thank you for your time, mon chéri. We shall discuss this matter another time.@@"<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: switch from light to dark or vice versa
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.vr_stage < 2>>
<<if $npc_primrose.flags.currentPath == "light">>
<<set $npc_primrose.flags.currentPath = "dark">>
<<if $npc_primrose.flags.vr_dark == 0>>
<<set $npc_primrose.flags.vr_dark = 1>>
<</if>>
<<else>>
<<set $npc_primrose.flags.currentPath = "light">>
<<if $npc_primrose.flags.vr_light == 0>>
<<set $npc_primrose.flags.vr_light = 1>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_primrose","first")>> if the other simulations <<he npc_primrose>> had drafted are functional. You would like to try the other path.<br>
<br>
<<if $npc_primrose.flags.vr_stage < 2>>
"@@.npc_primrose;Oh my~! Does my favourite cutie pie wish to travel the road less taken? I do not mind! After all, it gives me another chance to do glorious SCIENCE!@@" <<He npc_primrose>> giggles giddily as <<he npc_primrose>> takes out his phone and starts tapping away rapidly.<br>
<br>
"@@.npc_primrose;Yes, yes, we can play in a different simulation next time. After all, you were darling enough to see my last project through. I do not mind going another round~ Just let me know when you want to dive in once again~@@"
<<elseif $npc_primrose.flags.vr_stage >= 3>>
"@@.npc_primrose;You silly thing! You have completed all of my designed courses, so you can just pick and choose whichever you wish, there is no more tracking to bother your pretty little head about!@@"
<<else>>
"@@.npc_primrose;Ah, I am sorry, my dear, but you need to finish up both of the variants, once you do that I will let you bounce back and forth at will... but I really need the data of you completing everything at least once, first.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_primrose' 300>>
</div>/*#
#desc: wake up after vr trail
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'prim_plug_trial_outfit'>>
<<deleteItemSet 'prim_plug_trial_outfit'>>
<<removeItem 'kig_vr_mask_copy' true>>
<<deleteItem 'kig_vr_mask_copy'>>
<<useClothSetPop 'tmp'>>
<<addItem 'pickmeup_candy'>>
<<addNpcTheme 'npc_primrose' 'research' 'theme_primrose_vr_choice'
0
'theme_primrose_choice'
false
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
As the display darkens you are left with the dark interior of the VR mask. You can feel your own body within the rubber straitjacket once more. While muffled, you can still hear the door opening and <<=ps(setup.getNpcName("npc_primrose","formal"))>> approaching. <<He npc_primrose>> kneels down next to you, repeating a single word: "@@.npc_primrose;Breathe... breathe...@@" You begin to collect yourself more as you hear the mask unlock. You are blinded for a moment as you go from the darkness to the stark fluorescent lighting of the cell. The scientist works to undo your bindings and slowly guide you back into the lab proper.<br>
<br>
"@@.npc_primrose;Don't worry about catching me up. I saw everything~@@" <<He npc_primrose>> trills as <<=setup.getNpcName("npc_primrose","formal")>> brings you your clothing. You feel groggy and have trouble moving. It feels like your limbs have input delay. Thankfully, <<=ps(setup.getNpcName("npc_primrose","first"))>> is conscientious enough to diligently dress you <<him npc_primrose>>self. <<His npc_primrose>> are patient and caring, <<his npc_primrose>> focus solely on you and your comfort. For all <<his npc_primrose>> eccentricities, <<he npc_primrose>> has quite bedside manner with <<his npc_primrose>> test subjects... at least compared to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>>.<br>
<br>
"@@.npc_primrose;Here.@@" <<He npc_primrose>> hands you a wrapped candy and a bottle of water. "@@.npc_primrose; That should help pick you up. Just don't tell <<=setup.getNpcName("npc_work_doctor","nickname")>> that I swiped a handful of those babies from <<his npc_work_doctor>> office~.@@" You nod and give a weak smile as you centre yourself and prepare to leave.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: the first dark path vr trial 1
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<removeAllClothing>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<addItemSet 'secretary_vr_dark_1'>>
<<wearItemSet 'secretary_vr_dark_1'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" "TODOtech">>
<div id="invframe" class="scrolltext">
The void fades away to a familiar title card that announces this simulation as "Righting Wrongs."" You quirk an eyebrow as you watch the cursive writing fade away to reveal a secondary start screen reading "@@.computer;The following scenario is purely a work of fiction. Any similarities to real world events are purely coincidental.@@" The message fades away to reveal one of the many cubicle farms in the building. You haven't worked in one of these in a while. Your attention drifts to details old and new. You don't remember there being so many "motivational" posters about how hard you should be working to benefit the company.<br>
<br>
You are not alone in the simulations for long. NPCs load in one at a time, most of them occupying the various desks. One does spawn rather close to you, however. She looks quite a bit like <<=setup.getNpcName("npc_technician","first")>>, the Tech Wizard, yet just off enough to avoid her likeness being completely copied. She appears annoyed talking about something... yet you can't hear her. You do hear <<=ps(setup.getNpcName("npc_retention","formal"))>> voice as the narrator, however: "@@.npc_retention;we all make mistakes. It's only human. But until we find a way to fix that part of humanity, we must do our best to help correct our actions. Sometimes that means asking for help from our superiors to fix our little accidents. When that time comes, will you know what to say?@@"<br>
<br>
You aren't quite sure you follow what the narrator is implying when the <<=setup.getNpcName("npc_technician","first")>> lookalike becomes un-muted: "@@.npc_technician;were you even listening?@@" You stammer that you were trying but she rolls her eyes. "@@.npc_technician;Unbelievable. You're lucky I'm not telling your boss about this.@@" She turns and begins walking back towards her desk but pauses when she realises you aren't following her.<br>
<br>
"@@.npc_technician;Get the lead out, rookie! You've got a part to play in this too.@@"<br>
<br>
[<<moveTo "event_primrose_vr_trial_1_dark_2" "Follow the Digital Sorceress." 30>>]
</div>/*#
#desc: the first dark path vr trial 2
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.vr_dark < 2>>
<<set $npc_primrose.flags.vr_dark = 2>>
<</if>>
<<addNpcTheme 'npc_primrose' 'research' 'theme_primrose_vr_similar'
0
'theme_primrose_similarities_1'
true
>>
<<addNpcTheme 'npc_primrose' 'research' 'theme_primrose_vr_switch'
0
'theme_primrose_vr_trial_switch'
true
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
The two of you approach one of the many identical looking cubicles. While you have seen hundreds of these in your life, this one has a feature you haven't seen before: the space under the desk has a cushion and a number of anchor points. You do not have to guess what they are for as "@@.npc_technician;<<=setup.getNpcName("npc_technician","custom","Alyx")>>@@" points to the cushion. "@@.npc_technician;Go on, get comfortable. This fuckup is going to take a while to fix. And I do my best work when my wand is properly polished.@@" You frown but do as you are told, moving under the desk. There is a "helpful" diagram for how to tie a kneeling employee in place for "long term morale boosting." Oh no...<br>
<br>
"@@.npc_technician;Open wide.@@" You look back up from your kneeling position as the technician's cock slides into your mouth. The size isn't an issue, <<if setup.getTotalValue("oral") >= $npc_technician.penis_size>>obviously<<else>>in the digital realm<</if>>, but your cheeks still flush red from the humiliation of it. You slowly begin to work your tongue as your hands approach the inside of the woman's thigh only for your fingers to get swatted away. "@@.npc_technician;Hands to yourself.@@" You obey, but feel a little dejected at the way it makes things feel even more impersonal. You hear <<=setup.getNpcName("npc_retention","formal")>> narrating once again.<br>
<br>
"@@.npc_retention;Morale is one of the most important resources in an office. Doing your part to keep spirits high is important. Frustration can lead to mistakes, and mistakes can lead to other employees having to spend their time correcting you, so always do your part to help keep them happy while they help you. After all, you should be grateful to have such magnanimous coworkers! Don't you think you should thank <<=setup.getNpcName("npc_technician","custom","Alyx")>> here for her hard work? How about kissing the base of her shaft?@@"<br>
<br>
You groan at the forwardness of the narrator as you slowly lower yourself towards the base, pressing your lips against the skin around the woman's testicles. She snickers in amusement, bringing her hand down to pat your head condescendingly before returning to her work and you to yours. You give a breathless, handless blowjob that feels like it lasts an hour. Whenever she gets close, <<=setup.getNpcName("npc_technician","custom","Alyx")>> tells you to ease off. Only when she finishes does she permit herself to cum.<br>
<br>
"@@.npc_retention;Now that's teamwork! Remember: do you want to be an employee at the desk or under the desk?@@" You ruminate on those words as you <<if $fetish.cum>>swallow the load and <</if>>feel the simulation begin to wind down...<br>
<br>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItemSet "secretary_vr_dark_1">><<deleteItemSet "secretary_vr_dark_1">><<if $scene.choker>><<wearItem $scene.choker true>><</if>><<useClothSetPop "vr">>'>>]
</div>/*#
#desc: the second dark path vr trial 1
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<removeAllClothing>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<addItemSet 'secretary_vr_dark_1'>>
<<wearItemSet 'secretary_vr_dark_1'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
You find yourself in the increasingly familiar void of <<=ps(setup.getNpcName("npc_primrose","formal"))>> simulation loading zone. You are greeted by a new title screen: Giving 110%. You aren't sure what that means but are sure it's nothing good. The familiar outer office of your virtual manager, <<=setup.getNpcName("npc_nightingale", "formal")>>, loads in around you. Things are not dissimilar to your real world office: comfy looking chair full of plugs and straps, workstation designed specifically for productivity, and imposing doors to your manager's office. The few changes enhanced the oppressive corporate atmosphere: a clearly visible camera in your peripheral watching your movements at your desk as well as another above the entrance to <<=ps(setup.getNpcName("npc_nightingale", "formal"))>> chambers. A hologram display next to your workstation displays your productivity metrics and a reminder to always be giving your very best for the company and for <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
Your uniform has changed too. While you still have the white latex button-up blouse and equally artificial pencil skirt, you can feel a pair of black rubber cuffs around your wrists and ankles along with a posture collar keeping your head level. While collars are commonplace for those in your position in the company, rarely are they this strict and conspicuous. It reminds you of <<=ps(setup.getNpcName("npc_primrose","first"))>>, though yours lacks the personalised screen.<br>
<br>
The door to the office swings open as your voluptuous virtual manager leans out to greet you. "@@.npc_nightingale;Ah, <<=$player.first_name>>. Good. Just in time for your performance review. Please, step into my office.@@" You follow the administrator into their office, admiring the minor changes in decor. It is still a warm and luxurious office, yet there is a thicker air of both opulence and of oppression. Oil paintings of nubile slaves worshipping their goddess flank either side of <<=ps(setup.getNpcName("npc_nightingale", "formal"))>> desk. They themselves are standing before the desk, motioning for you to stand before them.<br>
<br>
"@@.npc_nightingale;Kneel and listen. Take notes if you have to.@@"<br>
<br>
[<<moveTo "event_primrose_vr_trial_2_dark_2" "Kneel and listen." 300>>]
</div>/*#
#desc: the second dark path vr trial 2
#status: FINISHED 0.9.1.0
#ignore_spell: mxtress
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.vr_dark < 3>>
<<set $npc_primrose.flags.vr_dark = 3>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_nightingale", "formal")>> goes over your performance review with the same bored attitude you've heard from managers at other jobs, yet what they describe certainly paints a different picture than the usual metrics about efficiency or synergy. "@@.npc_nightingale;You arrived at work five minutes tardy for your Thursday shift, claiming to have prioritised my coffee over my morning blowjob. I will note that being permitted to return home on weekdays is a privilege, <<=$player.first_name>>. If you cannot meet your schedule and all of your responsibilities, I may have to reassign you to on-site housing during the week, or book you for a Saturday make-up shift. To ensure that this never happens again, you are now required to show up an additional fifteen minutes early to the office to make certain you are fully prepared to start your shift precisely on time. Your home alarm has already been updated accordingly and no, this is not paid hours. Consider it an additional requirement to ensure that your actual work-day is of maximum value to the company.@@"<br>
<br>
"@@.npc_nightingale;Records indicate you were only fucked nine times last week by persons other than myself. That is a VERY disappointing number for someone in your position and I want you to focus on doing at least double that next week. Employee morale is a top priority. My smartphone can manage my schedule perfectly well but there is no replacement for the sight of an obedient <<if $fetish.sissy>>SISSI <</if>>Secretary bent over a desk, grateful for the opportunity to offer their holes on behalf of the company and their manager. It is one of the ways we give back to our employees.@@"<br>
<br>
"@@.npc_nightingale;Hmm...@@" They look down at you, perhaps reading your expression. You have no idea what to say. They resume lecturing you. "@@.npc_nightingale;<<=$player.first_name>>... while your posture is impressive, I did not ask you to kneel so I could see it. All you need to do right now is listen to my critique, so I must consider it another failure that you have not, fastened those lips of yours around my cock. It is just that sort of inability to show initiative in making maximum use of your assets at all times that has put you in this position. To reinforce your proper place I would like you to start all conversations with myself, or other senior management, by asking if your verbal response will be required, or if your mouth could be put to better use for the duration of the encounter. In the unlikely case they are interested in your verbal abilities you should, of course, offer <<if $player.body_ref.vagina>>an alternate<<else>>your other<</if>> hole and remain attentive to respond promptly as required.@@"<br>
<br>
You blush sharply at the admonishment. You lean forward, barely having time to open your mouth before your manager slams their rubber-wrapped cock into your mouth, hilting deep in your digital throat <<if setup.getTotalValue("oral") < $npc_nightingale.penis_size>>... far deeper than you could manage in the real world<</if>>as they finish looking over your performance review.<br>
<br>
"@@.npc_nightingale;As described, you have come up short in quite a few places... though it matters very little. As I mentioned before, the "work" you <<if $fetish.sissy>>SISSI <</if>>Secretaries do can be easily accomplished by automated tools. Do you know why your position has not been replaced by a computer? Because the real service you provide is sexual relief and amusement. Your job, your paycheck, and your very future are dependent on you pleasing me. Keep that in mind next time you are tempted to loiter a few extra minutes in the elevator or the bathroom. Understood?@@"<br>
<br>
Your cheeks burn red with embarrassment as you nod the best you can. Unlike the talking downs you've gotten from <<=setup.getNpcName("npc_manager","formal")>>, there is little affection in the program's voice; just the cruel enjoyment that comes from watching you squirm. "@@.npc_nightingale;I don't hear you.@@"<br>
<br>
You whimper softly, mouthing out the words "@@.pc;yes, <<=setup.getNpcName("npc_nightingale", "title")>>@@" as best you can manage around their thick, and meticulously rendered, digital meat. That seems to push them over the edge. The last thing you experience in the virtual world is the taste of cum in your mouth and the mocking chuckling of <<=setup.getNpcName("npc_nightingale", "formal")>>.<br>
<br>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItemSet "secretary_vr_dark_1">><<deleteItemSet "secretary_vr_dark_1">><<if $scene.choker>><<wearItem $scene.choker true>><</if>><<useClothSetPop "vr">>'>>]
</div>/*#
#desc: the third dark path vr trial 1
#status: FINISHED 0.9.1.0
#ignore_spell: oooooooooh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<removeAllClothing>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<addItemSet 'secretary_vr_dark_1'>>
<<wearItemSet 'secretary_vr_dark_1'>>
<<addItem "ring_gag_vr">>
<<wearItem "ring_gag_vr" true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
The program boots up and begins to replace the loading antechamber with a familiar office building. As it does, you see the awful pun title card of the day: "Group Head Meeting." You raise your brow as the world loads in and narration plays overhead. "@@.npc_retention;Long meetings are a drag. Nobody enjoys giving or sitting through a multi-hour presentation.@@" Finally, something you agree with. "@@.npc_retention;However, they are a necessity of modern business. Not everything can be an email or a video call.@@"<br>
<br>
You begin to take in your surroundings. You and five other secretaries are standing outside an empty meeting room. Each of you are wearing fetishistic secretary uniforms; latex everything, skirts that are either short enough to barely hide anything or long enough to limit movement, collars, and cuffs at the wrists and ankles. The door opens automatically and the others file in. You follow them in, unsure as to what you're here for. The narration continues: "@@.npc_retention;however, innovations in modern technology have helped make meetings more bearable! While secretaries were originally tasked with taking notes for their managers, recording devices and automated transcription programs have now made that work obsolete. However, there is still a vital role our little helpers can play on the path ahead.@@"<br>
<br>
You aren't quite sure what he is referring to until you watch the other secretaries begin to crawl under the table. Under each seat at the board is a cushioned cubby clearly designed to hold a human being in place. There is a pillow on the floor along with a few ports built into the sides of the cubby. Those ports open as the worker gets in position to reveal small mechanical arms that attach to their various cuffs and collars to hold them in place. Once they are stuck kneeling with arms locked behind their backs, the secretary is given an O-ring gag that opens their mouth widely.<br>
<br>
"@@.npc_retention;Time to get situated! The meeting is about to begin.@@"<br>
<br>
With no other options, you do as instructed and kneel on the cushion. Your collar beeps and the inside of the cell beeps back. The robotic binds begin to unfurl, attaching at your ankles and wrists to keep you seated and presented. One arm holds your posture collar in place while the final set pulls the O-ring into your mouth and situates it over your teeth. The gag stretches your mouth and appears to allow for something to be inserted...<br>
<br>
<<printThought "Oh. Oooooooooh.">><br>
<br>
[<<moveTo "event_primrose_vr_trial_3_dark_2" "Get ready..." 30>>]
</div>/*#
#desc: the third dark path vr trial 2
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.vr_dark < 4>>
<<set $npc_primrose.flags.vr_dark = 4>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
The managers file into the room, though you cannot see who is there from your spot under the table. You can barely make out <<=setup.getNpcName("npc_nightingale", "formal")>> as they move into their chair. The managers are making small talk, chuckling and joking about the "new table" being nicer than the old one. You stare forward as the familiar sight of <<=ps(setup.getNpcName("npc_nightingale", "formal"))>> latex-wrapped cock as it is directed into your mouth. They push their chair in so you are forced to take in the entire length. You groan softly.<br>
<br>
The meeting begins. It is surprisingly benign compared to the fetishistic display of the table. You are forced to remain at attention massaging your boss's cock with your tongue lest you receive a warning buzz of a shock mechanism in your collar. You do hear a conversation begin to break out during a pause in the presentation.<br>
<br>
"@@.generic_female1;Wait... oh, whoops: wrong secretary.@@"<br>
"@@.generic_male1;Oh? Huh, yeah. Looks like I have yours.@@"<br>
"@@.generic_female1;Wanna trade?@@"<br>
"@@.generic_male1;Ah, I guess. They all feel pretty similar.@@"<br>
"@@.generic_male2;Hey, everyone: let's draw lots to see who gets whose hole!@@"<br>
<br>
You blush shamefully as the managers laugh and agree to the idea. You are soon face to cock with a <<if $options.fem>>pair of thick thighs and a large <<getWordPenis false>><<else>>heavy-set, and thickly-hung gentleman<</if>> who slides into position just as easily as your administrator did before you. There is an overwhelming feeling of depersonalisation to the experience. The folks under the table are never named, only referred to as an admin's secretary in the same way one would describe someone else's purse or car. Just an object to be used. Even your manager is not immune to this, as unconcerned with who gets to use your mouth as they are with which secretary is servicing them through the meeting.<br>
<br>
The meeting proper commences. You try to zone out but are met with a warning buzz again. You whimper as your mouth begins to feel sore. There is no relief coming and you know it. The only way you can pass the time is by the number of loads you are forced to drink down.<br>
<br>
You don't even realise that the simulation is ending until the feeling of waking up in your own body overwhelms your senses.<br>
<br>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItem "ring_gag_vr" true>><<deleteItem "ring_gag_vr">><<removeItemSet "secretary_vr_dark_1">><<deleteItemSet "secretary_vr_dark_1">><<if $scene.choker>><<wearItem $scene.choker true>><</if>><<useClothSetPop "vr">>'>>]
</div>/*#
#desc: the fourth dark path vr trial 1
#status: FINISHED 0.9.1.0
#ignore_spell: punny
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<removeAllClothing>>
<<addItemSet 'secretary_vr_dark_2'>>
<<wearItemSet 'secretary_vr_dark_2'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImageGeneric("cds_dude")>>
<div id="invframe" class="scrolltext">
The simulation loads in around you as you experience the increasingly familiar sensation of the virtual staging area fading away and the reconstruction of the office emerging around you. To your surprise, you are not met with the usual title card with a punny name and instead shown a fairly austere looking placeholder. The simulation title is listed before you, hovering in your vision as the rest of the world gets settled.<br>
<br>
"Testing Scenario 4: Break Room." <br>
<br>
Your clothing loads in and, once again, your uniform has been modified. Your blouse and skirt are replaced with a black latex leotard. The ebony material is accented with a set of white decorative buttons along the front as well as a matching rubber shirt collar and sleeve cuffs. It is inspired by formal clothing but is certainly anything but. The heavy posture collar once again rests around your neck along with black ballet heels and a matching set of wrist and ankle cuffs.<br>
<br>
A pair of new additions your attention very quickly. The first is a head harness wrapped around your skull holding a long phallic gag in place between your lips. The insert silences you completely, leaving you barely able to even moan while wearing it. The second piece is a plug integrated into your leotard. While a plug under your clothing is not at all new for you, something is strange about this one. You turn to look at your rear and can see that there is a circular cutout in the seat of your outfit allowing the plug to be accessed. You give it a timid tug only to be met by resistance. You can't remove it. You check the head harness for any locks; you find a few smooth electronic buckles holding the item in place. It is quite irremovable, at least for you.<br>
<br>
You finally take in the break room around you. It is extremely similar to the one near your desk at your old job. Granted, you don't remember the previous break room having so many propaganda posters about how break time is a privilege that can be revoked and how you are always being watched. Making that second fact all the more obvious, there is a rather conspicuous camera in the corner of the ceiling, electronic eye trained upon you. Still, the rest is as you remember: two vending machines (one for food and one for drinks), a pair of tables and some cheap chairs, and a TV in the corner. There's even a fake fern!<br>
<br>
What is most certainly new, however, is the poster behind you. It is large and impossible to miss with a pin-up of a blissed-out secretary getting rammed in the rear by a muscular <<if $options.fem>>woman<<else>>man<</if>> in a suit. Flashy text runs across the top of the poster: "Your break room attendant of the day is: <<=$player.first_name>>" Under it are a list of prices paired with sexual acts. You do not have to guess who they expect to undertake such acts...<br>
<br>
"@@.generic_male1;Oh, look! We got a new break room bitch!@@" You turn around and are greeted by a lean computer technician. <<He>> strides towards you, untying <<his>> tie and unbuttoning <<his>> fly. "@@.generic_male1;About time they got us a new one. Can't believe it took them so long to replace the old one. They should have let us keep porking that <<=setup.getNpcName("npc_primrose","custom","Lorelei")>> chick, it's not like she was any better while conscious. Now let me check the menu...@@"<br>
<br>
<<He>> looks at the poster and thinks aloud "@@.generic_male1;I got a cool fifteen so might as well get some head.@@" <<He>> flashes a company debit card and places it against the side of your collar. You flinch as you hear the hard plastic chime approvingly. A hidden speaker tells the <<man>> that <<his>> transaction is approved. The desk jockey reaches for the small hook on the base of your gag and slowly pulls out the long dildo that had been silencing you. <<he>> lets it fall, dangling on a strap tying it to your harness. Unfortunately, you still cannot speak: your mouth is kept in a perfect O by a metal ring that holds back your teeth.<br>
<br>
"@@.generic_male1;Alright slut — time to suck!@@"<br>
<br>
[<<moveTo "event_primrose_vr_trial_4_dark_2" "Well, you heard them..." 300>>]
</div>/*#
#desc: the fourt dark path vr trial 2
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.vr_dark < 5>>
<<set $npc_primrose.flags.vr_dark = 5>>
<</if>>
<<if setup.getTotalValue("whoring") > 0>>
<<applyExperience 'whoring' 13 'normal' $EXPOSED>>
<</if>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
The tech pushes you down onto your knees and rams <<his>> cock into your mouth. You're thankful that the gag must have warmed you up for this because such force going so far would likely have hurt quite a bit otherwise. You cannot meet the <<his>> eyes, looking down at the floor. <<if setup.getTotalValue("whoring") > 0>>You've been fucked for money before<<else>>You imagine this is how a prostitute feels<</if>> though you doubt you're going to get to keep any of the money spent. Shame burns in your face as you are ordered "@@.generic_male1;look at me, bitch!@@" You raise your eyes to <<his>> and stare into <<his>> smug smirk as <<he>> pounds your head. "@@.generic_male1;That's right — you're right where you should be. It's about time the managers started sharing their slaves with us. It's not like they need you for work, they have smartphones!@@"<br>
<br>
The tech laughs cruelly as <<he>> keeps up the intensity. <<He>> obviously has no care for your enjoyment, instead focusing purely on <<him>>self. While the rough fucking likely could have gone on for an hour, your collar gives a warning beep at the fourteen minute mark.<br>
<br>
<<printThought "Oh shit-">><br>
<br>
The <<man>> slams <<his>> balls against your face and <<if $fetish.cum>>forces you to drink every drop of cum stored within<<else>>grunts in satisfaction<</if>>. You whimper softly as <<he>> gives a relaxed sigh, taking the dangling dildo and sliding it back into place. Once it is inserted fully, you hear it click into place and become immovable once more.<br>
<br>
"@@.generic_male1;See you after lunch, bitch.@@" <<he>> jeers as <<he>> fixes <<his>> work uniform and steps out of the room. You watch <<him>> go<<if $fetish.cum>> as you clutch your stomach, adjusting to the feeling of warm sperm in your belly once more<</if>>.<br>
<br>
With no given directions, you begin to approach the entryway of the break room only to be met by a warning pulse from your collar. "@@.computer;<<if $fetish.sissy>>SISSI <</if>>Secretary <<=$player.last_name>>, it is not the end of your shift. You are to remain in your assigned break room for the entirety of your shift. Your infraction has been documented. Administering minor punishment while full punishment is calculated.@@" Your collar hums to life as you feel it hijack your nerves and turn your body into a literal, rather than merely figurative, corporate puppet. You are forced to retreat from the entryway and return to your chair beneath the poster before feeling the sensation of three quick spankings. The ghostly sensation remains against your rear as the collar relinquishes control of your body.<br>
<br>
"@@.computer;Punishment calculated. Mandatory overtime stipulation enacted. For the next month, you will work an additional four hours per week of unpaid overtime. Failure to follow this stipulation will see privileges removed or additional time added to your contract.@@"<br>
<br>
Contract? You remember signing one when you joined the company in the real world. Whatever they made you sign in this continuity would likely make yours look lenient; it sounded more like a prison sentence than a signing period.<br>
<br>
Your thought is interrupted as you see another techie approaching, credit card already in hand. You meet her malicious gaze and prepare for the worst only to be saved by the simulation beginning to unload. You say a silent prayer to the Goddess...<br>
<br>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItemSet "secretary_vr_dark_2">><<deleteItemSet "secretary_vr_dark_2">><<if $scene.choker>><<wearItem $scene.choker true>><</if>><<useClothSetPop "vr">>'>>]
</div>/*#
#desc: the fifth dark path vr trial 1
#status: FINISHED 0.9.1.0
#ignore_spell: hud,pc,qr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<removeAllClothing>>
<<addItemSet 'secretary_vr_dark_2'>>
<<wearItemSet 'secretary_vr_dark_2'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/server_room.png">>
<div id="invframe" class="scrolltext">
When you awaken within the simulation, you are suspended within a tantalising pink spiral. You try to move your limbs but cannot muster much more than a wiggle. You are within the rubbery grasp of a vac bed. The weight over your face is also familiar: a VR helmet. Less familiar is the tube inserted into your mouth providing you with water. The screen is currently filled by a visualiser; a cyan spiral over a black background superimposed with the company logo. You gaze into the spiral, listening to the binaural audio track and try to pick out anything in particular. You think you hear words but you can't place what they are. Something about being docile and staying asleep. You are not sure.<br>
<br>
The malaise of the moment fades as the spiral slows to a halt and a pop-up blips into existence in the centre of the spiral: "@@.computer;YOUR ASSISTANCE IS REQUIRED. PREPARE FOR DECOMPRESSION.@@"" You are startled by a mechanical jostling around you as the frame of your vacbed is moved. You must be on some kind of track. You swing slowly as you are moved from one mystery location to another, the locks reengaging as you are brought to your final location.<br>
<br>
"@@.computer;COMMENCING DECOMPRESSION.@@"<br>
<br>
There is a long hiss of air as the rubber vacbed begins to release you. The tube in your mouth is slowly pulled away as you become aware that you were deepthroating the plastic. The brainwashing visor is the last thing pulled away as harsh fluorescent lights temporarily blind you. You cringe as the rubber decompresses enough for you to finally step out of the bed. You know immediately that you are not alone. Behind you are numerous racks of vacbeds with employees resting and receiving their routine maintenance hypnosis. Before you is one other figure; a woman towering over you. "@@.computer;At attention, Employee 6981.@@"<br>
<br>
Your body snaps into position as you are forced to stand at rigid attention. Your eyes adjust and you begin to take in your surroundings as well as your attire. You are wearing a clear rubber bodysuit over your chastity device. Every inch of you is covered in rubber from your hooded face to your ballet heels and gloves. You feel laminated. There is a QR printed on your right shoulder which your handler quietly scans with her phone. "@@.computer;Employee 6981 — currently under a five year contract. No infractions, no complaints... no signs of disobedience. You will be adequate for this assignment. Follow me.@@"<br>
<br>
Your handler is wearing a blue pinstripe button-up, a dark blue vest, and black slacks. Her badge reads simply DISCIPLINE. You try to read the name on her nametag but it's blurred out. You think it's something about your vision. Her face is equally foggy and hard to read. You follow her dutifully; you have no say in the matter. Your vision flickers for a moment as a HUD fills your peripheral vision. A hologram line on the floor directs you where to walk and your body obeys. An objective list informs you to follow "your better" without revealing her identity. You wager that you are on the R&D floor by the stark hallways.<br>
<br>
"@@.computer;In here.@@" The handler opens a door to reveal an austere looking room. There is simply a PC set-up within this small cubicle of a room. The table and chair are both bolted to the floor with the PC screwed into the table. A single camera watches you from the corner of the room. "@@.computer;Sit.@@" The command is simple and you oblige. You wince and yelp as you do, not noticing that the seat of the chair has a dildo built in until it's partially inside of you. Whoops. It slides into place, the toy already lubricated in preparation. "@@.computer;Follow the instructions on screen,@@" the handler says before stepping out, closing and locking the door.<br>
<br>
[<<moveTo "event_primrose_vr_trial_5_dark_2" "Time to work!" 30>>]
</div>/*#
#desc: the fifth dark path vr trial 2
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
The monitor hums to life before your eyes. You are given rather simple instructions: you will observe a video of an employee that the closed-circuit surveillance AI believes has committed an infraction. It will then fall on you to decide if they are innocent or guilty. You click that you are ready to begin. The first video is rather simple: an employee hiding a personal phone in their desk, avoiding the company phone they have that is monitored. You click on the GUILTY button.<br>
<br>
Your focus is disrupted by a wave of pleasure that courses through your body. The dildo buzzes to life for a few seconds, rewarding you for your "work." It ends shortly after leaving you aroused, but unsatisfied. You shiver. That felt good. You move on to the next video. It's an employee leaning over one of the potted plants. The reason for detection is that the AI believes the user was hiding contraband. You zoom and enhance the footage and make out that the item behind the plant was a paperclip, likely too small for the AI to detect. You click the INNOCENT button.<br>
<br>
The dildo does not move. Worse yet, you feel somehow... lacking for not getting the reward. Another clip begins. You frown, watching closely as an employee takes too long on their bathroom break. You click GUILTY and get the buzzing stimulation and consequent dopamine rush you missed. You breathe sharply through your nose. You want more, but you know you have to be impartial and focused. You move on to the next video. It's a female employee in an elevator. A <<if $options.fem>>female<<else>>male<</if>> employee touches her butt and she slaps <<him>>. The female employee is flagged for violent behaviour. You click INNOCENT. You feel nothing. Empty. Lacking. Something is missing. You move to the next video; it's a lesser employee bound under another's desk. The person working at the desk is getting head from the hidden understudy. They cum. The person tied up spits instead of swallows. The AI detects this as insubordination. You feel conflicted. You think hard on the subject. You feel like the person under the desk shouldn't get punished, yet... you miss the feeling of pleasure you get whenever you press GUILTY.<br>
<br>
You give in to your needs. You condemn the understudy. You feel elated. Your nerves are alight with pleasure. You wonder how something so simple could feel so good. You barely look at the next video. It's someone doing... something. You can barely tell through your pleasure-blurred vision. You press GUILTY and feel another wave of pleasure. It's somehow even better than before. You press GUILTY again before the next video even finishes loading.<br>
<br>
You yelp as you feel a buzzing inside your brain. Another pop-up fills your vision: "@@.computer;EMPLOYEE 6981: YOU HAVE BEEN FOUND GUILTY OF A RULES VIOLATION.@@" You must have approved your own punishment in the middle of your little spree. "@@.computer;YOUR PUNISHMENT IS: FREE TIME REDUCTION. YOUR ONE HOUR OF PERSONAL TIME PER DAY WILL BE REPLACED WITH AN HOUR OF REMEDIAL BRAINWASHING EFFECTIVE IMMEDIATELY.@@" You can't find it in yourself to be upset. Not when you have buttons to push and a high to ride. You'll face your punishment when it comes. Whatever you did, you probably deserved punishment for it... everyone deserves punishment. Only through punishment can you get the delicious vibrating fullness you crave.<br>
<br>
[<<moveTo "event_primrose_vr_trial_5_dark_3" "Keep administering punishments!" 600>>]
</div>/*#
#desc: the fifth dark path vr trial 2
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
You resume clicking rapidly. PUNISH, PUNISH, PUNISH... Your mind floods with pleasure never-ending. It's a miracle you do not black out during the process. Your mental synapses are a rave of flashing lights and pounding sound. You don't even acknowledge the videos anymore. It all feels so good. You wish you could touch yourself but you are <<if setup.checkItemTypeWorn("cage")>>in your damn <<if setup.isCage()>>cage<<else>>belt<</if>><<else>>too restrained<</if>>. Thankfully, it seems to self-clean when you cum. And then again. You keep cumming and keep clicking. It's so simple! You're so happy! Besides... why would you contradict the AI's judgement? It was programmed by the company, surely it knows how to administer the corporate rules.<br>
<br>
You don't even realise that the queue is empty. You have resolved all the queries. A pop-up thanks you for your service to the company. You can't help but smile back. You're so happy to work for such a nice company. You feel so elated. The thought of how many people you thoughtlessly sent to disciplinary measures doesn't even cross your mind. If anything, it should be reaffirming for them. Their faith in the company should be as unshakable as yours.<br>
<br>
The door opens. You turn to see the censored face of your handler. You can somehow tell she is smiling at you. You smile back. "@@.generic_female1;you have done well, Employee 6981. Follow me. You have been selected for a reward in acknowledgement of your service.@@" You gasp excitedly as you follow the handler out of the room. You twist and turn through a set of corridors before returning to the bay filled with vacbeds. Your frame is still loaded into the dock. You are guided to the stand on a marked spot before it, facing the handler. They tap their phone, loading a routine into the massive machine that manages this employee hub.<br>
<br>
A quartet of spindly metal arms descend from the ceiling and hoist you back into your vacbed frame. The rubber encases you once more and the helmet lowers into place.
<<if $fetish.penis_milking>>
However, you can feel motion still. The smart rubber around your crotch begins to pull back. You can feel the robotic arms <<if setup.checkItemTypeWorn("cage")>>remove your <<if setup.isCage()>>cage and <<else>>belt and <</if>><</if>>attach a suction milker to your genitals. The tube gag descends into your mouth once more, nozzle pressed against your tongue. You feel it dripping something sweet into your mouth. It fills you with happy, bubbly, pink thoughts. Well... "thoughts" may be a bit charitable.<br>
<br>
<</if>>
The screen within illuminates, displaying that enticing spiral once more. It draws your focus to the lock in the centre as you hear the computer speak directly into your mind: "@@.npc_computer;BEGINNING REWARD SEQUENCE.@@" The spiral is replaced by something new yet familiar: <<=setup.getNpcName("npc_boss","formal")>>. <<His npc_boss>> figure towers over your, gaze piercing into your soul. Something deep inside of you knows the words to say. They are all but engraved into the folds of your brain:<br>
<br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>> You mouth the words as you think them. The machine attached to you whirs to life, beginning to pump and draw out your pleasure. It has been months since you have been free of your confinement and now you can give an offering to the only deity worth worshipping!<br>
<br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>> The intensity rises. You become more aware of yourself in this virtual space. You are on strings. You are a puppet. A smiling, docile, content puppet pleased to do the bidding of your betters.<br>
<br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>> You have always been a puppet, you just didn't know it. Now you know the truth and has freed you. Freed you from thinking for yourself. Freed you from making choices. Freed you from the consequences of your own actions. You don't have to worry about any of that anymore. You just need to let the strings guide you.<br>
<br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>> The intensity grows greater. You moan and writhe<<if $fetish.drugs>>as you feel the tube in your mouth up the dosage of drugs<</if>>. Your mind is swimming. You feel like dancing on your strings. Anything to please your deity. Anything to get those eyes on you. You need that validation. You need <<him npc_boss>>!<br>
<br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>> You climax, yet the action is more than that. You are giving something of yours to <<him npc_boss>>. Even here, where you own nothing, you have something to give; and you give it willingly and enthusiastically. You see the faintest flicker of a smirk upon <<=ps(setup.getNpcName("npc_boss","formal"))>>. This is the happiest moment of your life!<br>
<br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>><br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>><br>
<<printThought 'All glory to <<=setup.getNpcName("npc_boss","formal")>>!'>><br>
<br>
<<if $npc_primrose.flags.vr_stage < 3>>
[<<moveTo "event_primrose_vr_trial_post_dark" "Awaken." 300 '<<removeItemSet "secretary_vr_dark_2">><<deleteItemSet "secretary_vr_dark_2">><<if $scene.choker>><<wearItem $scene.choker true>><</if>><<useClothSetPop "vr">>'>>]
<<else>>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItemSet "secretary_vr_dark_2">><<deleteItemSet "secretary_vr_dark_2">><<if $scene.choker>><<wearItem $scene.choker true>><</if>><<useClothSetPop "vr">>'>>]
<</if>>
</div>/*#
#desc: the first light vr trial 1
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<removeAllClothing>>
<<addItemSet 'secretary_vr_light_1'>>
<<wearItemSet 'secretary_vr_light_1'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
The void fades away and a title card appears announcing the scenario to come as "Using Your Head (and Your Skills!)" The double entendre isn't lost on you as the loopy cursive shimmers brightly for a moment before starting to fade away. You descend through the simulation and land comfortably in the virtual reincarnation of the company, a simulation slightly more detailed than last time you visited.<br>
<br>
You examine your surroundings. It is a location akin to one with which you are intimately familiar with: the outside of <<=ps(setup.getNpcName("npc_manager","formal"))>> office. Some of the details are slightly different; the items on your desk haven't been moved into the positions you like having them at, the plaque on the door now simply reads "@@.npc_nightingale;<<=setup.getNpcName("npc_nightingale", "formal")>>@@" and the anachronistic Rolodex is still there (for some reason), but you've worked long enough as a <<if $fetish.sissy>>SISSI <</if>>Secretary that it all feels natural. A line of text pulses softly at the bottom of your vision telling you to sit at your desk to begin and you do as instructed.<br>
<br>
"@@.npc_retention;Every position at Social Interaction Services Syndicate Inc. has its own unique challenges. For our research and development division, it is staying on the bleeding edge of new technologies. For our data analysts, it is handling and retaining the petabytes of data that cross through our servers on any given day. And for our managers...@@"<br>
<br>
The pregnant pause is met by a familiar sound as the outer door opens. Your heart skips a beat as you expected to see your familiar manager enter the room but are instead greeted by a different, yet oddly familiar figure: a rather shapely figure with flowing pink locks, round glasses, and heavy make-up. They are clad in a rose-coloured rubber blouse that rides up to their neck and a long black skirt of similar material. Steep ballet heels make their figure even more imposing. Their breasts and rear are augmented by silicone fills with their underbust corset forcing an hourglass figure. A part of you recognises the being as <<=setup.getNpcName("npc_primrose","formal")>> but it is a side of the <<if $fetish.sissy>>sissy<<else>>enthusiastic<</if>> scientist that you have not met in the real world.<br>
<br>
"@@.npc_nightingale;Hello <<=$player.last_name>>. Please hold my calls for the next hour. I just had an absolute mess fall into my lap and I need to remain undisturbed while I resolve things.@@" The manager states, exasperation in their voice. You nod politely, still taking in what you just witnessed as you return to your desk. The narration continues: "@@.npc_retention;the stress they have to deal with while keeping the wheels of our great company turning could put greys in anyone's hair.@@"<br>
<br>
"@@.npc_retention;Of course, that's where you come in!@@" The narrative voice pops back in, "@@.npc_retention;Lovely <<if $fetish.sissy>>SISSI <</if>>Secretaries such as yourself distinguish themselves by going above and beyond the call of duty to assist their charges by helping them manage their stress. So! How would you handle this situation?@@"<br>
<br>
You contemplate your skills balanced against the expectations you surmise the simulation has for you. When it comes to helping <<=setup.getNpcName("npc_manager","formal")>> with her work, you usually manage calls, reschedule meetings, and send emails. However, you doubt the program expects you to spend the next hour sending messages to redistribute the workload. No, in situations like this, there is only one silver bullet solution: you're going to give a computer program a foot massage.<br>
<br>
[<<moveTo "event_primrose_vr_trial_1_light_2" "Time to work your magic." 300>>]
</div>/*#
#desc: the first light vr trial 2
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.vr_light < 2>>
<<set $npc_primrose.flags.vr_light = 2>>
<</if>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_vr_switch'
0
'theme_primrose_vr_trial_switch'
true
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
The motions are almost automatic. You stride with your head held high towards your seated manager. <<=setup.getNpcName("npc_nightingale", "formal")>> cants their head to the side as you ask them with every ounce of confidence you can muster if they would like a foot massage. They stare at you blankly for a moment in what could be just awkward programming, or a reproduction of genuine overwhelmed exasperation. A few moments later and the they emphatically accept your offer.<br>
<br>
As you drop to your knees and get to work, you hear the narration once more. It makes for entertaining background noise as you unlace your virtual manager's precariously high heels and free their punished feet from their rubber confines. "@@.npc_retention;When finding ways to help your manager relax, think about where your skills lie and where they line up with their stressors. How can your strengths be used to help your supervisor in moments of weakness or vulnerability? What do you bring to the team?@@" <br>
<br>
You understand the logic. In this case, your fill-in manager has been on their feet all day; thus, that is where you should be focusing your efforts, relieving their burdens by way of your massage. It's rather comforting to be within one of the simulations that isn't trying to funnel you into a sexual situation. You wager that you probably could have handled this situation with some "oral recitation" but this feels far nicer. By the look on the manager program's face, you believe they are enjoying it as well... or at least, have been programmed to appear such.<br>
<br>
"@@.npc_retention;Looks like you've helped your manager relax. Good work! While we value the efficiency of our secretaries, the secret ingredient of our company is the unique skills each of us bring to the table. Keep your eyes open for opportunities to help out. You never know when a hidden hobby or secret skill could earn you a promotion!@@"<br>
<br>
The simulation begins to peel back once again. The last thing you hear is the digitised voice of your temporary manager thanking you for your hard work. Even if it was purely virtual, you feel good about what you did here today.<br>
<br>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItemSet "secretary_vr_light_1">><<deleteItemSet "secretary_vr_light_1">><<useClothSetPop "vr">>'>>]
</div>/*#
#desc: the second light vr trial 1
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<removeAllClothing>>
<<addItemSet 'secretary_vr_light_1'>>
<<wearItemSet 'secretary_vr_light_1'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
You load into the comforting void of <<=ps(setup.getNpcName("npc_primrose","first"))>> simulation. A title screen flickers before your vision ever so briefly: "(Going) Downtime." You desperately hope whoever wrote these puns is proud of themselves because each one is a groaner. You don't have time to dwell on the corniness for long as the world begins to load in. You are again sitting at your desk outside the office of your stand-in manager for these training exercises: <<=setup.getNpcName("npc_nightingale", "formal")>>. The warm glow of the afternoon sky pours into the room, filling every nook and cranny with pleasant light. It must be the end of shift.<br>
<br>
You look at your monitor and see that you've already clocked out. Guess that means it's time for your daily evaluation. As you rise to your feet and approach the doors into the digital administrators office, you wonder if you have your own digital counterpart (at least within the fiction of this world). After all, who worked those hours that you saw on the monitor? You ponder these things as you enter the room and curtsy in respect to your stand-in boss.<br>
<br>
"@@.npc_nightingale;Ah, <<=$player.first_name>>. You are a sight for sore eyes.@@" <<=setup.getNpcName("npc_nightingale", "formal")>> sighs as they lean back in their office throne. They look haggard, pink synthetic hair down and ballet boots off. Your eyes drift down and notice that their corset is still fully laced. Even when relaxing, <<=setup.getNpcName("npc_nightingale", "formal")>> has some standards that are not to be eased. "@@.npc_nightingale;Is it Thursday already? No it's... Wednesday?@@" You aren't sure how you would be expected to know what day it was in this digital world, but it would seem that you are not required to know as <<=setup.getNpcName("npc_nightingale", "formal")>> keeps talking. "@@.npc_nightingale;Wednesday, yes. You're here for your evaluation. You did fine. You can go home.@@"<br>
<br>
At least your digital doppelganger hasn't been up to anything. You hear the voice of <<=setup.getNpcName("npc_retention","formal")>> pipe in as the world slows down to give time to the narrator. "@@.npc_retention;After a long day at work, you might be in a rush to get home. However, spare a thought for your manager, left to bear the weight of the company and often left burning the midnight oil hours after you have been released. When you see them start to falter, ask yourself how you can make their night burn just a little brighter.@@"<br>
<br>
You contemplate both your past lessons and your experience with <<=setup.getNpcName("npc_manager","formal")>>. You did brighten her day quite a bit when you knelt before her for the first time... yet, a part of you feels like there are other tools in your toolbox worth exploring.<br>
<br>
[<<moveTo "event_primrose_vr_trial_2_light_2" "Ask if they want to discuss their problems over something caffeinated." 1800>>]
</div>/*#
#desc: the second light vr trial 2
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.vr_light < 3>>
<<set $npc_primrose.flags.vr_light = 3>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
You decide to play sounding board to <<=setup.getNpcName("npc_nightingale", "formal")>> and start off by asking them if they would like a hot drink?<br>
<br>
"@@.npc_nightingale;I suppose. There's an espresso machine in the corner, just follow the directions on screen.@@" You approach the machine and get to work, looking over your shoulder briefly to ask them what's been bothering your manager today. They do not immediately respond, and instead you are a bit surprised to see them raise an eyebrow then pat their desk, beckoning you to sit once their drink is ready. You do as instructed, bringing over a mug of sweet caffeine and listening as the flamboyant program begins to rattle off how their day had been. The interoffice politics of the digital company mirror the real world one quite closely, though scrubbed of any names you recognise.<br>
<br>
You ask if there's anything you could do to make their day better. <<=setup.getNpcName("npc_nightingale", "formal")>> thinks it over as they idly stroke your thigh with their hand. "@@.npc_nightingale;I could... think of a few things... though you asking about my day has helped quite a bit.@@" You smile and they smile back. You have the feeling that you've done a good job. "@@.npc_nightingale;How about you continue to keep me company while I file these last few reports? We'll order in and I'll make sure you get appropriate overtime pay for your effort.@@" You happily agree.<br>
<br>
The simulated hours pass by smoothly as you move from sitting on the hard desk to a more comfortable soft chair. You chit chat with <<=setup.getNpcName("npc_nightingale", "formal")>> as they work; sometimes you talk about the company, but most of the time it's casual chatter. You wonder if <<=setup.getNpcName("npc_manager","formal")>> would enjoy such treatment, if there was not the added complication of the company's surveillance.<br>
<br>
"@@.npc_nightingale;You have been a wonderful help, <<=$player.first_name>>,@@" <<=setup.getNpcName("npc_nightingale", "formal")>> purrs as you file the last report away. "@@.npc_nightingale;You have quite the way with words... but how about you let your jaw relax for a while? I think you deserve a reward. You have soothed my aching arches so many a time... how about you stay just a little longer for a massage?@@" You nod; you do feel a little worked up and worn out from the work. You follow the mxtress's hand directions and bend over their broad desk. They slide in behind you, draping their body over yours as their fingers stray and play against your nipples through your rubber clothing. A long moan escapes your lips as you feel sensation rock your body.<br>
<br>
"@@.npc_nightingale;Just relax. Let me handle this.@@" They purr into your ear as you hear a wet noise behind you. You feel your panties get pulled away. A pair of long, rubber-clad fingers slide into you. You shiver as the cold, slick digits slip in smoothly and begin to <<if $player.body_ref.penis>>brush against your prostate<<else>>tease your most sensitive bits<</if>>. Soon pleasure flows through your body like a wave of warm water. It fills you entirely. It is slow, gentle, serene work as your virtual boss praises you for your hard work while bringing you closer and closer to orgasm.<br>
<br>
You find your limit before long, feeling that warmth overtake you and begin to overflow. The scene fades out as you experience the delightful high of a gracefully-given orgasm.
<br>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItemSet "secretary_vr_light_1">><<deleteItemSet "secretary_vr_light_1">><<useClothSetPop "vr">>'>>]
</div>/*#
#desc: the third light vr trial 1
#status: FINISHED 0.9.1.0
#ignore_spell: h
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<removeAllClothing>>
<<addItemSet 'secretary_vr_light_1'>>
<<wearItemSet 'secretary_vr_light_1'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" "TODOcoworkers" "TODOlorelei">>
<div id="invframe" class="scrolltext">
You experience the ever-familiar sensation of the void loading program fading away and a new simulation taking its place. A title card fills your vision: "Touching (on) Tips." You roll your eyes. <<=setup.getNpcName("npc_primrose","first")>> needs to hire a (better) writer. You watch the desaturated title card fade away as you load into what appears to be a break room. There are a handful of tables and chairs along with a microwave, a fridge, a couch, and a TV on the wall. There is also a single plastic plant in the corner that you can't help but chuckle at. It's a virtual world yet they couldn't splurge for a real plant?<br>
<br>
You are sitting at one of the tables along with two other secretaries. They are dressed much the same as yourself: tight, precisely fitted blouse, skirt, heels, perfect make-up. You have a sense that you've been chatting with them for a little while but you aren't exactly sure about what. It's more a feeling than a fact. As you enjoy the jovial atmosphere, you spot a new figure entering the room. It is a rather mousy looking woman in an ill-fitting dress shirt and slacks. Her make-up is basic, mostly hidden behind her large round glasses. "@@.npc_primrose;H-hi! I'm <<=setup.getNpcName("npc_primrose","custom","Lorelei")>>. I just got hired as a secretary.@@"<br>
<br>
You and your fellow secretaries rise to greet your latest comrade. While everyone is courteous, you know in your heart that any manager worth their salt would be disappointed in the girl's appearance. Just as the thought crosses your mind, you hear <<=setup.getNpcName("npc_retention","formal")>> narrate in your head: "@@.npc_retention;Poor thing! This girl was just hired and is already behind in her duties. Your job as a <<if $fetish.sissy>>SISSI <</if>>Secretary begins when you wake up and begin preparing yourself for the work-day. As a representative of your manager, you must always look your best. You work in a representative position and are a reflection of your boss, after all! This poor thing wouldn't pass as a page, let alone a secretary!.. But you know how a <<if $fetish.sissy>>SISSI <</if>>Secretary should look, don't you?@@"<br>
<br>
You mentally nod, thinking over the hours you've spent doing preparations each day. You also know that between the three of you, the secretary pool likely has enough make-up and clothes to give <<=setup.getNpcName("npc_primrose","custom","Lorelei")>> a makeover before she meets her manager. You smile as the idea begins to take hold. You pull aside the other two secretaries and explain your plan; they are on board immediately. Looks like its time for this employee welcome to turn into a makeover party.<br>
<br>
[<<moveTo "event_primrose_vr_trial_3_light_2" "Makeover montage time!" 1000>>]
</div>/*#
#desc: the third light vr trial 2
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.vr_light < 4>>
<<set $npc_primrose.flags.vr_light = 4>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" "TODOcoworkers" "TODOlorelei">>
<div id="invframe" class="scrolltext">
You and the other secretaries quickly disperse to collect the things you need. You are on make-up duty while the others handle the equally important clothes and shoes. A quick trip back to your desk has you equipped with an illuminated make-up mirror and what you would consider the essentials of the job. You return to the break room and sit across from <<=ps(setup.getNpcName("npc_primrose","custom","Lorelei"))>> chair. You set up your make-up station while the others finish helping her get dressed. You nod in approval of their selection of a cute cream coloured blouse and matching skirt, now busy helping her get the clumps out of her stockings. Once the new girl is properly dressed, they send her to you for make-up.<br>
<br>
While you begin to apply foundation, <<=setup.getNpcName("npc_retention","formal")>> narrates: "@@.npc_retention;any team is only as strong as its weakest link. We must always work to bring our new members to the levels of perfection the company respects and our CEO deserves. When you see a member of your team lagging behind, ask yourself how to lend and hand and get them caught up.@@" By the time <<he npc_retention>> finishes talking, you are done with your routine. You step back and examine <<=ps(setup.getNpcName("npc_primrose","custom","Lorelei"))>> face, nodding resolutely. She looks as a model secretary should: hair stately and professional, make-up present but not overwhelming, clothing faultless and coordinated. You feel pride swell in your heart as the simulation begins to fade, <<=setup.getNpcName("npc_primrose","custom","Lorelei")>> giving you a slightly more confident "@@.generic_female2;I'm happy to have such lovely coworkers@@" before she skips off and the simulation fades into the void.<br>
<br>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItemSet "secretary_vr_light_1">><<deleteItemSet "secretary_vr_light_1">><<useClothSetPop "vr">>'>>]
</div>/*#
#desc: the fourth light vr trial 1
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<removeAllClothing>>
<<addItemSet 'secretary_vr_light_2'>>
<<wearItemSet 'secretary_vr_light_2'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
You load into the empty simulation and feel the world around you form together once more. You are not greeted by the usual title screen, instead presented with a more sparse placeholder card. The simulated events are simply referred to as "Testing Scenario 4: Crisis Management." Under the title is a note to try and think up a pun. <<printThought "Looks like I'm getting ahead of <<=ps(setup.getNpcName('npc_primrose','first'))>> process...">> Granted, you doubt <<he npc_primrose>> minds. <<He npc_primrose>> always does seem to be looking to push the envelope.<br>
<br>
The world begins to load in around you. You feel a strange ghostly sensation through your body as you experience the last few minutes through false memories. You are in <<=ps(setup.getNpcName("npc_nightingale", "formal"))>> office. You had just finished a lunch meeting and are now enjoying a quickie in their office. Your digital manager is hilting your body, thrusting into you as you recite back their schedule for the rest of the day. Things are going delightfully until you come to a pair of overlapping meetings!<br>
<br>
"@@.npc_nightingale;Wait- oh shit! Goddess-@@" The digital manager freezing in place, pinching the bridge of their nose while remaining hilted in your rear. "@@.npc_nightingale;I double booked myself. I can't be at both at the same time and there is no time to reschedule...@@" You let out a low moan as <<=setup.getNpcName("npc_nightingale", "formal")>> slides out of your rear. You slide your corporate-mandated plug back into place, fix your panties and skirt, then back to face them, trying to lend some level of moral support. They look at you with a half-hearted smile. "@@.npc_nightingale;I apologise for cutting things short, I truly wish we didn't have to double up work and pleasure. Still, every moment with you is a rejuvenating treat~@@".<br>
<br>
The manager pauses, taking a moment to contemplate a solution. "@@.npc_nightingale;Let me think. The teleconference with the other HR admins should only be half an hour and I have the conference room for an hour. I could probably compress my presentation to a half hour if I rearrange some slides...@@" Their voice trails off as they admire your uniform for a moment and hum to themselves: "@@.npc_nightingale;I could always send you to entertain them. Would you be up for the task? You just need to be personable for thirty minutes. Make sure they're taken care of, if you know what I mean. I'll even give you permission for a release... since I cut you off so short just now...@@"<br>
<br>
Knowing that the simulation will hang if you decline, you agree to your manager's request. Relief washes over their face like a wave as they give you directions to the meeting. "@@.npc_nightingale;I'll bill this as OT as a reward and I'll text you as soon as I'm on my way back.@@" You give an enthusiastic thumbs up before strutting down the hall towards your awaiting meeting.<br>
<br>
[<<moveTo "event_primrose_vr_trial_4_light_2" "Time to entertain some guests!" 1740>>]
</div>/*#
#desc: the fourth light vr trial 2
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 13 'terrible' $SEEN_STRANGER>>
<<playerOrgasm>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "TODOfemalebusiness1" "TODOfemalebusiness2">>
<div id="invframe" class="scrolltext">
You enter the conference room and are greeted by a pair of well-dressed businesswomen. They look up to you from their phones, raising an eyebrow each in time as they astutely spy that your manager is not with you. You explain that <<=setup.getNpcName("npc_nightingale", "formal")>> has been delayed and will be here as soon as she can. You nimbly deflect placing blame on your manager or yourself, placating their concerns and deflecting it all as an unfortunate coincidence. You add with a smile that you are there to make sure that the two guests are comfortable and taken care of while they await the presentation. Their expression shifts as you add that you're willing to do "anything" to make the wait more enjoyable.<br>
<br>
That seems to get their attention. The two businesswomen rise to their feet, moving to a synchronised rhythm. They each remove their skirts to reveal sizable cock bulges, and even more sizable throbbing cocks when panties were removed. One of the pair pats the table, nonverbally ordering you to jump up. You quickly remove your heels and tights before pulling yourself onto the table, relaxing your posture as you lay on your stomach, presenting yourself in offering. You can hear the woman behind you lubricate her cock while you blink invitingly and spread your lips for the woman before you.<br>
<br>
It isn't long after you obey that you get slammed by the first meaty mound. The second pierces your rear, splitting you wide open. You thank the Goddess that <<=setup.getNpcName("npc_primrose","formal")>> put safety measures in against any discomfort. There was no pain and all pleasure as you are spit-roasted by the two powerful women. They take their time with you, slowly milking every ounce of enjoyment as their throbbing cocks pulse and pump in your holes. You're shocked as the two start having a relatively normal conversation about the quarterly finance report while keeping you in place. They seem to be able to read when you are getting close to orgasm, choosing to edge you rather than let you cum before they finish gaining their own satisfaction.<br>
<br>
"@@.generic_female1;Twenty-five past. Better wrap this up,@@" one of them says with a glance at her watch. The other nods and they switch gears, what was once a slow, evenly-paced roasting quickly elevates into a carnal cornucopia of hard-pounding delight. You close your eyes as the sensory experience is elevated beyond what is possible in reality. Your nerves feel electrified. Each touch, each caress, each pound brings with it a dazzling display of synapse activity in your brain. You are finally permitted to cum. The sheer might of the orgasm is enough to blind you for a moment, revealing the mysteries of the universe as you experience a new level of release. <<if $fetish.cum>>You barely even realise what is happening as the pair start to paint your insides white. Cum pools in your belly as you are forced to wait out the release; you don't want to get any on the nice carpet.<<else>>The pair croon in satisfaction as they hit their climax, clutching you tightly as pent up heat is released in one glorious moment.<</if>><br>
<br>
When everyone has had their satisfaction, the two women remove themselves from you and quickly redress themselves. You check your skirt and are surprised to find that whatever you released has disappeared, thankfully avoiding you having to explain to your manager why your skirt was stained. You pull your tights back up, slip into your heels, and pour drinks for the two women as they smile and wink at you.<br>
<br>
[<<moveTo "event_primrose_vr_trial_4_light_3" "Continue." 300>>]
</div>/*#
#desc: the fourth light vr trial 3
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_primrose.flags.vr_light < 5>>
<<set $npc_primrose.flags.vr_light = 5>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "TODOfemalebusiness1" "TODOfemalebusiness2" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
The door opens and <<=setup.getNpcName("npc_nightingale", "formal")>> strides into the room, greeting their guests. "@@.npc_nightingale;Thank you for your patience. I hope that my secretary was able to keep you both comfortable and satisfied while I was away.@@" The pair look at you and give a knowing glances before turning their attention to your manager and nodding. One speaks up:<br>
<br>
"@@.generic_female1;You have an absolutely wonderful secretary but now, business?@@"<br>
<br>
The simulation begins to fade as you experience a deep satisfaction in your core. The last thing you see is <<=setup.getNpcName("npc_nightingale", "formal")>> meeting your gaze and smiling proudly.<br>
<br>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItemSet "secretary_vr_light_2">><<deleteItemSet "secretary_vr_light_2">><<if $scene.choker>><<wearItem $scene.choker true>><</if>><<useClothSetPop "vr">>'>>]
</div>/*#
#desc: the fifth light vr trial 1
#status: FINISHED 0.9.1.0
#ignore_spell: mxtress
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr'>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<removeAllClothing>>
<<addItemSet 'secretary_vr_light_2'>>
<<wearItemSet 'secretary_vr_light_2'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
You feel the familiar presence of the VR antechamber followed by the equally familiar experience of loading into the virtual corporate office. When you began this journey all of the differences in the digital reconstruction stood out to you as strange and different. Now though, you feel equally at home within the facsimile office as you do in the real world. You know the layout of <<=ps(setup.getNpcName("npc_nightingale", "formal"))>> office nearly as well as you know <<=ps(setup.getNpcName("npc_manager", "formal"))>>.<br>
<br>
You are standing outside your practice manager's inner office. The warm orange light coming through the window indicates the end of the shift. You check your computer to clock out when the door opens and the Mxtress themself steps out to greet you. <<=setup.getNpcName("npc_nightingale", "formal")>> beams with pride as they motion you to enter their private sanctum. "@@.npc_nightingale;I'm glad you could stay for this little celebration.@@"<br>
<br>
You follow the instruction without hesitation, trailing behind the imposing rubber-clad domme. As you enter the office construct, you notice a catering cart near the central desk. Before you can even ask, they explain. "@@.npc_nightingale;Our efforts together have brought some attention to our office. This is one of the very rare instances where the Manager of the Month and Secretary of the Month awards have been given to a pair working in tandem. Historically, the reward for the award is a complementary fine dining experience. Since we both won, I though we could share the reward together.@@"<br>
<br>
The thought brings a smile to your face. By working together through respectful cooperation instead of dictatorial inequality, you are both being rewarded. Hopefully your dynamic will provide a standard for the rest of the company to follow. You nod and accept the invitation.<br>
<br>
"@@.npc_nightingale;Before we begin, however... I'll need you to change into this.@@" <<=setup.getNpcName("npc_nightingale", "formal")>> unfurls a backless rubber dress. You admire the piece in your hand: when worn, it would keep your rear exposed to the elements while looking completely presentable from the front. While you worry why they would wish for you to have such a clear vulnerability, you place your trust in <<=setup.getNpcName("npc_nightingale", "formal")>> as they have in you.<br>
<br>
[<<moveTo "event_primrose_vr_trial_5_light_2" "Get changed." 30>>]
</div>/*#
#desc: the fifth light vr trial 2
#status: FINISHED 0.9.1.0
#ignore_spell: mxtress,p
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "spanking_skirt_black_h">>
<<wearItem "spanking_skirt_black_h" true>>
<<set $scene.hollow_plug = setup.getItemFromType("hollow_plug")>>
<<addItem "company_plug_vr">>
<<wearItem "company_plug_vr" true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
You step out of your regularly-backed skirt when you hear the Mxtress speak up again: "@@.npc_nightingale;panties too.@@" You oblige them, shivering as you fasten the belts of the backless skirt. Your rear is utterly exposed, which appears to be the point. The towering domme approaches you with a gaudily wrapped package about six inches in every direction.<br>
<br>
"@@.npc_nightingale;For your hard work assisting <<=setup.getNpcName("npc_primrose","custom","Lorelei")>>, your dutiful managing of my schedule, and your impressive performance during off hours, I am proud to give you a gift for your efforts. While there is no official reward beyond recognition and praise for your success this month, I felt you deserved something special for your effort.@@"<br>
<br>
You thank your manager before slowly unwrapping the box. Inside is... a buttplug. You tilt your head as you admire it. It is a cylindrical tube with a flared base; it is some manner of hollow plug you have never seen before. The exterior has a striking hexagonal pattern and is composed of silicone. The company logo is printed upon the outside of the futuristic-looking sex toy. "@@.npc_nightingale;Let me quickly get you fitted.@@" <<=setup.getNpcName("npc_nightingale", "formal")>> slides behind you, pulling out your current simulated plug with a cartoonish pop before sliding the new one into place. They tap their phone against your right asscheek and you hear a chime as the device comes online. The exterior layer inflates slightly and forms a perfect fit. You shiver; while it is filling, it isn't stretching you painfully and it feels wonderful against your sensitive <<if $player.body_ref.penis>>P-spot<<else>>insides<</if>>.<br>
<br>
"@@.npc_nightingale;How does it feel?@@" You give an affirming thumbs up. The admin's striking gaze remains upon you for a few extra seconds to make sure that you are not lying about your comfort level. When they are sure you are sincere, they motion towards their desk "@@.npc_nightingale;Here is your chair.@@" <<=setup.getNpcName("npc_nightingale", "formal")>> guides you to the luxury office chair she usually only offers to business guests. It had meaning within itself for her to make such a symbolic gesture. She begins to set the desk while you remain seated. She takes the time to set up the dinner for two. It's steak, mashed potatoes, and asparagus. What is it about steak and simulations? You ponder this query for a moment while the digital manager pours you a glass of red wine before taking her own seat.<br>
<br>
"@@.npc_nightingale;What shall we toast to?@@" She asks.<br>
<br>
You consider her words and offer a toast to a bright future of synergistic pairings... and full cooperation.<br>
<br>
<<=setup.getNpcName("npc_nightingale", "formal")>> laughs playfully; "@@.npc_nightingale;oh Goddess, you're starting to sound like me. But... you are right. Us working together as a team rather than a Mxtress and their blindly obsquiescent pet has proven that there is more to success than mere obedience. Hopefully this success will prove a model for some of my colleagues... I believe you have already done quite the job evangelising to your own coworkers.@@" You touch glasses with the manager and take a sip of wine before working on your steak.<br>
<br>
[<<moveTo "event_primrose_vr_trial_5_light_3" "Here here!" 30>>]
</div>/*#
#desc: the fifth light vr trial 3
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> Corporate Simulation.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nightingale")>>
<div id="invframe" class="scrolltext">
You eat your meal in relative bliss, enjoying the soft ambiance of classical music and polite conversation. Unsurprisingly, the steak and vegetables are delicious. You know the steak isn't real but your mind tells you that it is. Does that make it real? You do not have long enough to ponder these things as <<=setup.getNpcName("npc_nightingale", "formal")>> gets your attention. "@@.npc_nightingale;The bonus I gave you? The one in your rear now? It has another feature. One I haven't shared with you yet.@@" You tilt your head to the side as <<=setup.getNpcName("npc_nightingale", "formal")>> rises to their feet.<br>
<br>
"@@.npc_nightingale;You are such a hard worker, <<=$player.first_name>>.@@" The plug begins to vibrate <<if $player.body_ref.penis>>against your prostate<<else>>inside you<</if>>. You blush, shivering as you hear them continue to talk. "@@.npc_nightingale;You are one of the most diligent note-takers I have ever met. You give your all to every task I assign to you. You offer up useful feedback and engage with my work when I ask for your opinion.@@" Each line of praise raises the intensity of the vibrations. You look down, face bright red. <<=setup.getNpcName("npc_nightingale", "formal")>> guides you to meet their gaze, cupping their rubber-clad hand under your chin and turning your head.<br>
<br>
"@@.npc_nightingale;I have never had an assistant like you. You are more than a secretary and a pet. You are my right hand, in many ways, my equal. I don't know what I would do without you. Thank you so much...@@" They lean in slowly and you rise to meet them. You press your lips against theirs, feeling the supple filler within their face. You close your eyes, basking in the moment. Such praise, such sincerity; it makes you feel seen. Maybe even loved<br>
<br>
"@@.npc_nightingale;May I take you one more time?@@" You nod sheepishly, turning towards the desk once more. You spread out, moving the plates out of the way. Safety first. You hear the familiar sounds of <<=setup.getNpcName("npc_nightingale", "formal")>> preparing themself before insertion. True to their word, they are able to slide into the hollow sleeve with ease. It feels wondrous, enhancing the pleasure of anal further than you thought possible. It is as if the entire tube is nerve endings, stretching you, and your thresholds of pleasure.<br>
<br>
Each thrust is filled, and fills you, with passion. <<=setup.getNpcName("npc_nightingale", "formal")>> seems dedicated to savouring this session even more than they had savoured the steak. They move purposefully, ensuring that both of you enjoy every second of the experience. Their fingers interlock with yours against the table. They continue to whisper encouraging affirmations and adorations into your ears between the carnal moans you two make together. You aren't sure if you had a praise kink before, but this might help develop one.<br>
<br>
Only after <<=setup.getNpcName("npc_nightingale", "formal")>> has exhausted their long list of compliments do they finally shoot for an orgasm. They pace themselves, aiming to line up their release with yours. They seem to now every inch of your body as well as their own. In one glorious moment, your climax combines with theirs and is magnified in intensity tenfold. You are filled with light. Every glorious moment is etched into your mind. The simulation reaches its conclusion and finally fades away. You hear one final breathy whisper against your ear:<br>
<br>
"@@.npc_nightingale;Thank you...@@"<br>
<br>
<<if $npc_primrose.flags.vr_stage < 3>>
[<<moveTo "event_primrose_vr_trial_post_light" "Awaken." 300 '<<removeItem "spanking_skirt_black_h">><<deleteItem "spanking_skirt_black_h">><<removeItemSet "secretary_vr_light_2">><<deleteItemSet "secretary_vr_light_2">><<removeItem "company_plug_vr" true>><<deleteItem "company_plug_vr">><<if $scene.hollow_plug>><<wearItem $scene.hollow_plug true>><</if>><<if $scene.choker>><<wearItem $scene.choker true>><</if>><<useClothSetPop "vr">>'>>]
<<else>>
[<<moveTo "event_primrose_vr_trial_post_1" "Awaken." 300 '<<removeItem "spanking_skirt_black_h">><<deleteItem "spanking_skirt_black_h">><<removeItemSet "secretary_vr_light_2">><<deleteItemSet "secretary_vr_light_2">><<removeItem "company_plug_vr" true>><<deleteItem "company_plug_vr">><<if $scene.hollow_plug>><<wearItem $scene.hollow_plug true>><</if>><<if $scene.choker>><<wearItem $scene.choker true>><</if>><<useClothSetPop "vr">>'>>]
<</if>>
</div>/*#
#desc: punishment vr
#status: RELEASED 0.8.7.0
#ignore_spell: akabur
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'vr_bondage'>>
<<removeAllClothing>>
<<addItemSet 'kig_training_outfit'>>
<<wearItemSet 'kig_training_outfit'>>
<<addNpcTheme 'npc_primrose' 'research' 'theme_primrose_voluntary_punishment'
0
'theme_primrose_voluntary_punishment'
true
>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_himself_finishing_school'
1
'theme_primrose_finishing_school'
true
>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_himself_finishing_school_nyx'
1
'theme_primrose_finishing_school_nyx'
true
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> VR Simulation'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png">>
<div id="invframe" class="scrolltext">
You awaken to find yourself in a seated position. There is nothing around you. It is an infinite white void stretching in every direction. You can move your body but you cannot seem to actually travel. The only thing moving does is reveal that you are still in the rubber doll catsuit and mask. You search for the latch to undo the mask and discover a pair of heart-shaped padlocks keeping the latch closed. Worse yet, the locks have no keyhole. You panic, if for a moment, as you drift within the emptiness.<br>
<br>
<<=ps(setup.getNpcName("npc_primrose","first"))>> voice fills the air, echoing within your mind: "@@.npc_primrose;I am so sorry for deceiving you, but we will not be conducting our usual program today. Something more important has come up. Some of the things you said while we were talking earlier worry me. I'm not sure you are abiding by the company policies and culture. Worse yet... I fear you may not be properly committed to the glory of <<=ps(setup.getNpcName("npc_boss","formal"))>> vision for the future.@@"<br>
<br>
A simulation begins to load around you. First is a school desk under your body. The hard plastic chair and simple wooden surface would be nostalgic if it weren't for the shackles that spring into existence a moment later, binding your ankles to the seat and your wrists to the flat desk. The back of the seat rises as well, pulling your head backwards as a brutally steep posture collar stiffens around your neck. A polished wooden floor rises out of the void beneath you and you are soon surrounded with numerous other desks. The setting continues to take shape: a classroom. There are cubbies, a chalkboard, a teacher's desk, and a wall of windows. A coat of arms sits proudly over the board; a blue and red shield interlaced with white stripes. Underneath it reads the words "Mont-Akabur Finishing School." <br>
<br>
"@@.npc_primrose;But I know these are simply momentary blips. Errors in judgment that can be corrected. You want to correct them, don't you?@@" <<=ps(setup.getNpcName("npc_primrose","formal"))>> collected tone does little to calm your nerves as simulated students load into position bound to the other chairs. There are twenty-five students (all in their own doll uniforms, all rigidly bound in their seats), you included. Five rows of five, with you in the very centre of the front row. "@@.npc_primrose;Know that I do not blame you for your failings... no, it is but the pollution of the world outside the company. This is why we should have our workers live on site! The outside world is trying to trick you. It's a distraction that leaves you confused, stealing time from your work, dirtying your mind with improper thoughts and ideas. It is my duty to clean things up and put them in order. I know you, as a good employee, would do the same for me if our roles were reversed. Yes, constant vigilance and support: that's what makes us a team!@@"<br>
<br>
You try to speak but are met by the harsh gag within your mask. "@@.npc_primrose;Oh yes, right. I knew I forgot something.@@" A few lines of code appear and disappear as you are granted speech privileges. While the smiling face of the mask does not move the gag retreats and a speaker nestled within it transmits your pleas for mercy with only a slight ting of synthetic artifacting, your complaints silenced a few moments later as what feels like an even larger gag forces its way down your throat and <<=setup.getNpcName("npc_primrose","first")>> continues, clear disappointment in <<his npc_primrose>> voice.<br>
<br>
"@@.npc_primrose;Disappointing, I had hoped you would already understand and embrace what I am doing for you. Nevermind, that is the point of the lesson, after all. Yes... this is the right thing to do. You'll be thanking me after this. Now focus! Class is about to begin!@@" Though <<he npc_primrose>> was but a disembodied voice in your head, you can feel <<=ps(setup.getNpcName("npc_primrose","formal"))>> presence fades as the classroom door opens...<br>
<br>
[<<moveTo "event_primrose_punishment_vr_2" "Start class." 300>>]
</div>/*#
#desc: punishment vr
#status: RELEASED 0.8.7.0
#ignore_spell: f,mx
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_boss.penis_size 'normal' $INCOGNITO>>
<<set $scene.survive = false>>
<<set $scene.resist = false>>
<<setTmpEffect 'vr_punish'>>
<</if>>
<<set $player.location to 'Mont-Akabur Finishing School'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png">>
<div id="invframe" class="scrolltext">
An imposing figure enters the room, black thigh-high ballet boots clicking with each step. Their body is covered in highly polished latex; black latex miniskirt that does not reach past the top of their boots, white short-sleeved latex blouse, and black latex gloves that ride up to the elbow. Numerous buttons of their blouse are undone to reveal a heaving F-cup chest composed entirely of heavy-looking breast fills. Their shockingly slender waist is locked within an ivory corset that further accentuates their thicc, taut rear. You catch a brief view from behind as they pass your desk, unable to miss noticing the outline of a large anal plug peeking out from beneath their skirt. As they reach the front of the room and spin to face the thin skirt provides the same lack of secrecy to the 9001 model chastity belt wrapped around their pelvis, the latex clinging tightly around their bulge.<br>
<br>
"@@.npc_nightingale;Hello class,@@" their voice is a sultry song on the air that drips with authority and sexual energy (and a soft French accent). Their face is utterly caked in make-up: contoured cheekbones, bright pink lips with a touch of glitter with matching eyeshadow, and luxurious fake eyelashes that flutter on the wind. Their pink hair (too voluminous to be anything but a wig) is done up in a very "sexy teacher" style bun. To complete the ensemble is a pair of half-rimmed eyeglasses that sits on the edge of their nose, over which they stare down at you. A bright pink riding crop sits upon their waist within a custom holster attached to their corset. Their build and mannerisms almost remind you of <<=setup.getNpcName("npc_development","formal")>> — along with her air of absolute authority. You can imagine <<=setup.getNpcName("npc_primrose","first")>> using the <<=setup.getNpcName("npc_development","title")>> as a base before putting <<his npc_primrose>> own spin on a sexy and domineering instructor.<br>
<br>
"@@.npc_generic_female2;Hello Mx. Nightingale,@@" the class says in a harmonious choir. The sound resonates in your mind, overwhelming your thoughts like a wave crashing upon a beach. You wriggle against your bonds fruitlessly as the flamboyant teacher takes a piece of chalk and begins to write on the empty board. You do not need to look at the board to know what is being written; even when you close your eyes, each stroke is seared into your vision. There is no escaping this lesson.<br>
<br>
"@@.npc_nightingale;We are going to work on our mantras today. Mantras are a very useful tool for dolls. They are memorable, repeatable, and integral to your position. Whenever you find yourself stumped, recite your mantras and you shall find your answer.@@" As they speak they write on the chalkboard. Each letter a neat and stately print that is nearly machine perfect. It reads "My duty is to serve." <br>
<br>
"@@.npc_nightingale;Repeat after me, class: my duty is to serve.@@"<br>
<br>
Your gag retreats and you realise you have a moment to speak, though are too stunned to do so.<br>
<br>
"@@.npc_generic_female2;My duty is to serve.@@"<br>
<br>
The mental wave slams down upon your brain in an attempt to smooth out the wrinkles and quell rebellious thoughts. You lurch forward, momentarily choking yourself on your collar and gasping against the gag that thrusts back into position the moment when you fail to immediately speak, a voice instead emanating from a speaker built into your mask to speak for you as you try and keep your wits about you. As you look up towards the teacher, you see them stare back at you with a knowing grin.<br>
<br>
"@@.npc_nightingale;Again.@@"<br>
"@@.npc_generic_female2;My duty is to serve.@@"<br>
<br>
Your gag retreats just long enough to give you the opportunity to respond, the effect as if you are being face <<if $fetish.get_raped>>raped<<else>>fucked<</if>> in between phrases, though you are too stunned to react in time and the phallic silencer slams back down your throat. Your nostrils flare and you try not to suck on your throat-bulging gag as you enter a battle of willpower to keep the words from repeating the mantra, the words echoing in your head to fill the brief silence. The wave is growing more powerful with each repetition. Mx. Nightingale turns back to the board, beginning to write another mantra. As they write, they speak aloud another order: "@@.npc_nightingale;repeat after me: my loyalty is to the company.@@"<br>
<br>
"@@.npc_generic_female2;My loyalty is to the company.@@"<br>
<br>
The second mantra feels different than the first. Trying to block out the compulsion to repeat the phrase is becoming more difficult with each repetition. Your speakers hum as you accidentally let slip the first syllable before regaining control, the gag cutting off your failure as the speaker again becomes your voice.<br>
<br>
"@@.npc_nightingale;Again.@@"<br>
<br>
"@@.npc_generic_female2;My loyalty is to the company.@@"<br>
<br>
You squirm and strain in your chair. The teacher is writing again. The urge to speak is becoming overwhelming and you need to decide on your approach to surviving this ordeal.<br>
<br>
[<<moveTo "event_primrose_punishment_vr_3_willing" "Abandon all resistance and enthusiastically repeat the mantras." 300>>]<br>
<<if $scene.survive>>
[@@.link_locked;Meer survival is not enough...@@]<br>
<<else>>
<<if setup.getWillpower() >= 1>>
[<<moveTo "event_primrose_punishment_vr_3_survival" "Focus on surviving the ordeal, even if it means reciting a few phrases." 300 "<<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You lack the mental wherewithal to do anything but succumb.@@]<br>
<</if>>
<</if>>
<<if $scene.resist>>
[@@.link_locked;Further resistance is unthinkable.@@]
<<else>>
<<if setup.getWillpower() >= 3>>
[<<moveTo "event_primrose_punishment_vr_3_resist" "Put all your energy into resisting the compulsion and remaining silent." 300 "<<spendWillpower 3>>">>] <<hint $options "Focusing this hard will take significant willpower">>
<<else>>
[@@.link_locked;You lack the mental energy to resist the onslaught.@@]
<</if>>
<</if>>
</div>/*#
#desc: punishment vr
#status: RELEASED 0.8.7.0
#ignore_spell: mx,mxstress
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 20 'skip' $ALONE>>
<</if>>
<<set $player.location to 'Mont-Akabur Finishing School'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png">>
<div id="invframe" class="scrolltext">
You almost have to laugh. You've been struggling all this time, yet the easiest path to surviving this encounter is the one of least resistance. You were sent here to learn, so you will learn. Whatever you said to Primrose was simply a catalyst to bring you here. Maybe you egged <<him npc_primrose>> on just to experience <<his npc_primrose>> dominant side. Maybe you did mean it at the moment. In your heart, however, you knew that this is what you wanted... so why not embrace it?<br>
<br>
"@@.pc;My loyalty is to the company!@@"<br>
<br>
Your synthetic voice cuts through the monotonous repetitions of the simulated students. Mx. Nightingale raises an eyebrow before a knowing smile splits their face. They lean against their desk, glowing with pride as they command "@@.npc_nightingale;again.@@" You join in your fellow students in repeating the mantra once more with renewed vigor. Mx. Nightingale's smile grows as they begin to pace back and forth, adding a new mantra into the mix.<br>
<br>
"@@.npc_nightingale;My body is for company use.@@"<br>
"@@.npc_generic_female2;My body is for company use.@@"<br>
<br>
"@@.npc_nightingale;My body is company property.@@"<br>
"@@.npc_generic_female2;My body company property.@@"<br>
<br>
You repeat those two lines with the rest of the class, as eager to speak the words as you are for the phallic gag that fills your mouth in the intervening silence. You feel whole, filled, complete. You are part of a larger body. One cog in a vast machine. It fills you with an overwhelming sense of belonging. You know that you would repeat anything that the instructor asks of you. You would believe it too. You want to hold onto this feeling. You want to stay like this, subsumed in blissful obedience.<br>
<br>
"@@.npc_nightingale;My manager knows what is best for me.@@"<br>
"@@.npc_generic_female2;My manager knows what is best for me.@@"<br>
<br>
"@@.npc_nightingale;My purpose is to better the company.@@"<br>
"@@.npc_generic_female2;My purpose is to better the company.@@"<br>
<br>
Nightingale begins to pace between the rows, occasionally ordering "@@.npc_nightingale;again@@" as they weave between desks. The whole time you and your fellow students remain faced dutifully forward... not that your posture collars and restraints give you much choice. You repeat your mantras with more enthusiasm at every repetition.<br>
<br>
You hear the towering proctor come to a stop behind you, hands beginning to drift along your body. Their rubber-encased fingers play against your nipples and send waves of pleasure through your latex-wrapped body. They lean in to your ear, whispering a new command. Though your doll mask and posture collar insulate you from the feeling of touch, you imagine their breath against your neck and you shiver.<br>
<br>
"@@.npc_nightingale;The choir sounds so much better with your voice added to it. You are becoming a very good doll. The others could learn something from you, for it is better to become a good doll through hard work and discipline than to be merely born good. Yes, the hardship and punishment shape us like a blacksmith hammering steel. As a reward, I shall allow you to lead the class. Now, repeat after me: I am not paid to think.@@"<br>
<br>
"@@.pc;I am not paid to think.@@"<br>
<br>
You recite the mantra aloud, the class soon repeating the words all around you. The Mxstress's hands continue to circle your nipples, rewarding your obedience with rolling waves of pleasure. They instruct you to do it again, soon building a rhythm. You recite the mantra again and the class echoes your words. You are a good doll. You want the others to be good dolls. You want EVERYONE to be a good doll.<br>
<br>
"@@.npc_nightingale;I am not paid to disobey.@@"<br>
"@@.pc;I am not paid to disobey.@@"<br>
<br>
Nightingale keeps one hand wrapped around your chest while the other falls between your legs. The touches are electric; they ignite your nerves and send wave after wave of pleasure directly into your brain. "@@.npc_nightingale;Again,@@" they whisper, the command stronger and even more intimate when it is for you alone. They stroke <<if setup.checkItemTypeWorn("cage")>>against your <<if $player.body_ref.penis>>nulge<<else>>chastity-enforced folds<</if>><<else>>between your legs<</if>> with their fingers, ramping up the pleasure. Your eyes roll back in your head as you stammer, slurring your words slightly as you begin to have a much more difficult time speaking. Yet disobedience is becoming more and more unthinkable as you join the class in continuing to recite the mantras while you simultaneously begin to melt into a puddle of pleasure.<br>
<br>
"@@.npc_nightingale;Good doll... good slave... <<=setup.getNpcName("npc_boss","formal")>> will be very pleased with your progress. You want to please <<him npc_boss>>, don't you? You want <<him npc_boss>> to know you are a good doll.@@" The hypnotic words of the instructor plant themselves in your brain as you helplessly nod to the extend that your bonds allow. You have surrendered control. You have surrendered individuality. You are a part of the corporate drone hive. Your are not a person, but property. A corporate asset. You have never felt more at peace than in this moment.<br>
<br>
"@@.npc_nightingale;You will obey my orders, won't you? You will act on every command I give you?@@"<br>
<br>
You nod. Even as your posture collar holds your head firmly, you affirm your loyalty with every fiber of your being. The teacher seems pleased, purring one last command that sets your soul alight with brilliant energy:<br>
<br>
"@@.npc_nightingale;Cum.@@"<br>
<br>
The explosive release within your suit blinds you. The world is so beautiful. You know so much in those moments. You know what you must do, who you must be... and who you must serve. You whisper a silent prayer of thanks as the simulation begins to fade. You wish you could stay forever, yet you know there is work to be done. You must make the world as orderly as the one you are now leaving... You. Must. SERVE.<br>
<br>
[<<moveTo "event_primrose_punishment_vr_4_obedient" "Awaken." 300 "<<playerOrgasm>>">>]
</div>/*#
#desc: punishment vr
#status: RELEASED 0.8.7.0
#ignore_spell: mx
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'terrible' $ALONE>>
<<applyStress 10>>
<<set $scene.survive = true>>
<</if>>
<<set $player.location to 'Mont-Akabur Finishing School'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png">>
<div id="invframe" class="scrolltext">
You take a deep breath and focus. You have enough wherewithal to know that actively fighting the simulation will likely incite additional punishment. Conversely, you know obeying will likely bring with it side effects that will follow you into the waking world. If you are to survive this ordeal with your sense of self intact, you're going to have to thread the needle between submission and resistance. You recite the passage in the same blank monotone as the other students, staring forward at the chalkboard before you. If you play along, you may be able to come out the other side relatively unscathed.<br>
<br>
Mx. Nightingale watches you closely, nodding once when you begin to recite with the other students. Relief washes over you; you're losing teacher aggro. The instructor begins to write a new mantra on the board and instructs the class to follow along: "@@.npc_nightingale;I am a loyal employee.@@" You recite the words with the rest of the class. You are a loyal employee; the difference is that you are loyal to <<=setup.getNpcName("npc_manager","formal")>> and not to <<=setup.getNpcName("npc_boss","formal")>>. You can survive this through the occasional bend in logic.<br>
<br>
"@@.npc_nightingale;Again.@@" The bombastic proctor rises to their feet and begins to pace between the desks, crop in hand. They disappear from your line of sight, the clicking of their heels the only sign of their location. "@@.npc_nightingale;Again.@@" A crack of their crop against a desk makes you jump in your chair. Someone behind you is getting their posture adjusted. "@@.npc_nightingale;Again.@@" Another crack. One of the students isn't enunciating with sufficient clarity.<br>
<br>
"@@.npc_nightingale;<<=$player.last_name>>.@@" Another crack, this one directly against your desk. "@@.npc_nightingale;Please walk to the chalkboard and prepare to write.@@" Your heart races, memories of every time you've been called on unprepared flashing through your mind... only this time it feels the stakes are far higher than embarrassment.. The shackles binding you to your desk unlock. You rise to your feet, timidly approaching the board. It was far easier to hide within the crowd when you weren't being called specifically.<br>
<br>
"@@.npc_nightingale;Some of your classmates appear to be having a hard time visualizing their mantras. While they speak aloud, you will write the mantra on the chalkboard. Work from left to right and try to keep moving. You do not want to fall behind.@@" The last command was very clearly a threat, one that you easily understand. You grasp the white chalk and bring yourself to the upper-left corner.<br>
<br>
"@@.npc_nightingale;New mantra: I am an obedient <<if $fetish.sissy>>SISSI <</if>>Secretary.@@" The class repeats the line as you begin to write. As the chalk touches the board, you feel the pressure in your mind renew. As you trace each letter, you feel the words ingrain themselves into your mind. It feels like you are writing into the folds of your brain. "@@.npc_nightingale;Again.@@" You bite down on the phallic gag and continue, without the support of the desk restraints each time it pounds in or out of your throat causes your head to nod, exacerbating the feeling of face-<<if $fetish.get_raped>>raped<<else>>fucked<</if>> helplessness as your thoughts begin to become dominated by the mantra. Thinking becomes harder and harder. Each time you try and form a thought, you are derailed by the mantra forcing itself front-and-centre within your mind.<br>
<br>
"@@.npc_nightingale;New mantra: I am not paid to think.@@" You do not start a new line, merely fluidly switching from one mantra to the next. As the board begins to fill with your writing, your thoughts become more and more structured. You do not even realise how many times you have written the mantras. You do not feel the pain in your hand or hear the voice of your classmates. It is all mechanical stimuli. A series of code commands executing as directed one after another.<br>
<br>
"@@.npc_nightingale;New mantra: I am <<=ps(setup.getNpcName("npc_boss","formal"))>> slave.@@" Your writing has now filled most of the board. The small bits of your consciousness still aware of itself warn you against the consequences of covering the entire board. "@@.npc_nightingale;Again.@@" It is a progress bar approaching 100%. "@@.npc_nightingale;Again.@@" What will happen when it fills up? "@@.npc_nightingale;Again.@@" You do not question it. You do not ponder it. You are a loyal employee. You are an obedient <<if $fetish.sissy>>SISSI <</if>>Secretary. You are not paid to think. You are <<=ps(setup.getNpcName("npc_boss","formal"))>> slave.<br>
<br>
The words repeat over and over again infinitely. You are a machine relaying the same instructions without an end condition. The mantras dominate your mind. The chalkboard is filled yet you continue to write. You never stop. The mantras are the entirety of your thoughts. Time melts away. Only when the chalkboard despawns do you begin to comprehend how much time has passed and what you've been doing. You look into the void in awed silence, trying to remember what led you to this moment.<br>
<br>
All you can recall are the mantras...<br>
<br>
<<if $fetish.hypnosis>>
[<<moveTo "event_primrose_punishment_vr_repeat" "Continue." 60>>]
<<else>>
[<<moveTo "event_primrose_punishment_vr_4_survival" "Awaken." 300>>]
<</if>>
</div>/*#
#desc: punishment vr
#status: RELEASED 0.8.7.0
#ignore_spell: mx,mxstress
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $EXPOSED>>
<<applyExperience 'bondage' 12 'normal' $EXPOSED>>
<<applyStress 30>>
<<set $scene.resist = true>>
<</if>>
<<set $player.location to 'Mont-Akabur Finishing School'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png">>
<div id="invframe" class="scrolltext">
You grit your teeth and try to push out the intrusive thoughts that the instructor and their mantras are trying to pound into your skull. You've come so far and you know you have the strength to overcome this as you've overcome so many other trials. Despite the phallus straining your throat in between phrases you find a rhythm to keep yourself focused.<br>
<br>
"@@.npc_nightingale;Well well well, it looks like we have a delinquent on our hands...@@" Mx. Nightingale growls, tapping their crop against their free hand. "@@.npc_nightingale;I suppose I will have to give you special attention. Come here.@@"<br>
<br>
The bindings chaining your body to the desk click open. A dozen thoughts fight to reach the top of your consciousness, interrupted by the squeak of rubber as the doll suit forces you to march forward. You strain and fight against the second skin but, in the world of the simulation, it is far too powerful. You approach the domineering teacher, gazing up at them behind your mask. The class has fallen silent, staring blankly forward at you.<br>
<br>
"@@.npc_nightingale;I will inform you to start that I do not like having to resort to such antiquated methods of punishment. It reflects poorly upon me as a teacher. However...@@" Nightingale leans in, purring into your ear "@@.npc_nightingale;I know those antiquated methods and I take satisfaction in their proper application. I rarely get to pound the errant thoughts out by hand. But when I do, I do so with vigor.@@" Their hand wraps around your wrist, pulling you over their desk and pointing you towards the other students. More bindings spring forth to keep your arm spread, your hand flat on the polished wood. They move your other hand in place before affixing your ankles to cuffs built into the floor.<br>
<br>
"@@.npc_nightingale;You have been a very naughty doll. Worse yet, you are behind in the lesson plan, a misbehaving distraction to your peers. To put it bluntly, you are dragging the whole class down with your poor performance.@@" You cannot see Mx. Nightingale moving behind you but you can hear them fiddling with something. A moment later, you feel a large cardboard cone placed atop your head. "@@.npc_nightingale;You must truly be a dunce to fall behind on such a simple lesson plan. You don't even have to think! You just need to repeat what I tell you and internalise it. For shame, for shame. Students? Point and laugh at the dunce. Mock her foolish reticence.@@"<br>
<br>
The room erupts with synthetic laughter as the other students obey their teacher's instructions. Their vicious mockery cuts into your mind, reverberating through the same hypnotic frequency as the mantras. It seeds itself deep within your psyche and brings forth shameful memories. Your cheeks burn red under your mask as you struggle against your bindings. You need to get out of this classroom. The weight on your mind is crushing.<br>
<br>
The chorus of laughter is so deafening you almost miss the sensation of lubricant brought against your rear hole. Mx. Nightingale brings a lubricated finger deep into your rear, tickling your anus's inner lining before pulling out. "@@.npc_nightingale;If not the carrot, then the rod.@@" You feel the instructor's "rod" a moment later as it pushes into your rubber-encased ass<<if$player.body_ref.vagina>>, avoiding your chaste front hole. You grit your teeth, trying to avoid thinking about the shameful moisture within your prison<</if>>. The rubber dong feels precisely sized to push your limits, filling and pinning you as the instructor remains bent over your body, pressing you into the desk with each hard thrust.<br>
<br>
"@@.npc_nightingale;If you remain a dunce, I might have to hold you back a year.@@" Nightingale taunts between thrusts. "@@.npc_nightingale;You'll be wearing that cap for quite some time.@@" You cry out as they <<if $player.body_ref.penis>>nail your prostate<<else>>all but impale you<</if>> with their thick cock. "@@.npc_nightingale;Maybe I'll just keep you under my desk? Then I know you'll be hearing each lesson. Maybe I'll keep you for detention? That way I can spend extra time tutoring you.@@" Each push into your body is followed by another round of laughter from the students. The overwhelming stimuli bears down upon your soul, threatening to break you. You know this is a simulation. You know it has to end at some point. Yet the threat of being stuck within this world strikes fear in your heart. It bypasses your logical thinking to leave your mind reeling, desperate for something to cling to for safety.<br>
<br>
"@@.npc_nightingale;Listen to them laugh at you.@@" The mxstress growls. "@@.npc_nightingale;That's for you. You flail and fight against the inevitable. You look ridiculous. You are a fool.@@" They slam against your backside, balls slapping against your body. They hilt you roughly, adding "@@.npc_nightingale;the only reason you are allowed to keep fighting is because it amuses us. Your mock resistance is delightful in its naivety. But it will get old. And when it does...@@" They slam your body against the desk again, wood groaning beneath you.<br>
<br>
"@@.npc_nightingale;You will answer to more than just an angry teacher. You'll have to answer to the one at the top... and you aren't the only one who will be punished. No, I believe in measured responses but <<he npc_boss>>? <<He npc_boss>> does not believe in moderation, or any compassion shown towards the friends of the accused.@@"<br>
<br>
You panic. The idea of retaliation hitting more than just you makes your blood run cold. The laughter, the pounding, and the anxiety swirl into a miasmic spiral that engulfs your world. You can't differentiate between the simulation around you and your worst fears. You don't even realise that the teacher has finished inside your rear. It is simply another voice in the chorus of madness.<br>
<br>
The world is too much to bear. You black out. The last thing to fade is the faint echoes of horrible, horrible laughter...<br>
<br>
<<if $fetish.hypnosis>>
[<<moveTo "event_primrose_punishment_vr_repeat" "Continue." 60>>]
<<else>>
[<<moveTo "event_primrose_punishment_vr_4_resist" "Awaken." 300>>]
<</if>>
</div>/*#
#desc: post punishment vr
#status: RELEASED 0.8.7.0
#ignore_spell: chéri
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 10>>
<<useClothSetPop 'vr_bondage'>>
<<deleteItemSet 'kig_training_outfit'>>
<<removeItemSet "prim_plug_trial_outfit">>
<<deleteItemSet "prim_plug_trial_outfit">>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You awaken within the familiar confines of the straitjacket and mask. You can hear <<=setup.getNpcName("npc_primrose","first")>> enter the room, kneel down next to you, and begin to unlatch the mask. "@@.npc_primrose;Ah, there's my good dolly,@@" <<he npc_primrose>> purrs as <<he npc_primrose>> removes the VR headset. The light in the room feels harsh as you adjust, blinking rapidly. The scientist is cooing softly, coaxing you to remain seated.<br>
<br>
"@@.npc_primrose;Just rest. Just rest. Your mind and body are still catching up.@@" <<He npc_primrose>> turns you around slowly, beginning to free your arms. "@@.npc_primrose;Deep-dive VR like this is stressful enough, but the kind of work I do is doubly so. Thankfully you were smart enough to obey rather than try and fight. Such a smart girl to so readily sublimate yourself. It hurts to me to say it, but a simulation like this is much, much worse for the disobedient. Of course it is for their own good, in the long run, but still... so much better for everyone when the subject reforms swiftly, such as yourself.@@"<br>
<br>
You aren't entirely sure what <<=setup.getNpcName("npc_primrose","first")>> is talking about, but you feel great! Warm and bubbly and whole. A vapid smile is frozen on your face, dopey and peaceful. Your arms rest limply at your side as <<=setup.getNpcName("npc_primrose","first")>> begins to massage your legs and thighs. You can feel the numbness in your body begin to fade away. "@@.npc_primrose;There you are. Aww, mon chéri, you look so happy! I know the serenity of having ones purpose reaffirmed.@@"<br>
<br>
After a few minutes of massages, you feel comfortable enough to rise to your feet. <<=setup.getNpcName("npc_primrose","first")>> stays close, dressing you <<himself npc_primrose>>. "@@.npc_primrose;Unfortunately, I cannot play with you any longer. My schedule is much like my preferred attire — very tight, and I have an evening meeting to attend. Busy busy. Maybe one day I can pry you away from <<=setup.getNpcName("npc_manager","formal")>> to help me with my work~? Ah, I jest.@@"<br>
<br>
The scientist tidies up your clothes, making sure each button is perfect and all the little details are orderly. "@@.npc_primrose;There we go. A perfect doll, ready to face the world. You look like you learned quite a bit from your "punishment." I do hope I see you again soon.@@" <<He npc_primrose>> hugs you tightly before guiding you to the door. You begin to walk towards the elevator, guided by the unseen hand of your programming. You cannot bring yourself to even imagine being upset with <<=setup.getNpcName("npc_primrose","first")>>, or anyone. You are far too content.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: post punishment vr
#status: RELEASED 0.8.7.0
#ignore_spell: chéri
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 5>>
<<useClothSetPop 'vr_bondage'>>
<<deleteItemSet 'kig_training_outfit'>>
<<removeItemSet "prim_plug_trial_outfit">>
<<deleteItemSet "prim_plug_trial_outfit">>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
"@@.npc_primrose;Easy, easy...@@"<br>
<br>
You blink awake, trying to get a grasp on your current situation. You're sitting against the wall of the padded cell, staring at the pink vinyl floor beneath you. The VR kigurumi mask is sitting on the ground in front of you. You must have been unresponsive when <<=setup.getNpcName("npc_primrose","first")>> entered the room. <<He npc_primrose >> is unfastening the straitjacket's bindings behind you, freeing your numb arms as they fall to your side.<br>
<br>
"@@.npc_primrose;VR is strenuous on the body as well as the mind. It will take a few minutes for you to fully regain control. For now, focus on wiggling your fingers and toes.@@" <<=ps(setup.getNpcName("npc_primrose","first"))>> voice is calm and focused. <<He npc_primrose>> peels the pink jacket away, rubbing your shoulders after placing the garment to the side. "@@.npc_primrose;I hope you learned from your punishment. I don't usually share these simulations with others. I know I can take them but it's much harder for the less experienced. I'm sorry for that, among other things.@@"<br>
<br>
You nod; the mere thought of disagreement hurts, so you don't. When you feel confident enough to stand, <<=setup.getNpcName("npc_primrose","first")>> guides you out of the cell and back into the lab proper. <<He npc_primrose>> hands you your clothes before gathering <<his npc_primrose>> lab coat from behind <<his npc_primrose>> chair. "@@.npc_primrose;I'm glad you woke up when you did. I have a meeting I need to go to and would have felt horrible about you waking up alone.@@" You hear <<him npc_primrose>> talk but the words aren't really clicking together coherently in your mind. The session was too harsh on your senses. Everything is still fuzzing, cognition returning in fits and starts.<br>
<br>
When you are dressed and ready to go, <<=setup.getNpcName("npc_primrose","first")>> walks with you to the elevator. <<He npc_primrose>> steps in first, giving you an apologetic smile before pressing the button for one of the basement floors. "@@.npc_primrose;Until next time, mon chéri.@@" With those words, <<he npc_primrose>> disappears from view. You tap the button and call another elevator. Your mind is peacefully empty.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: post punishment vr
#status: RELEASED 0.8.7.0
#ignore_spell: ps
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_primrose' 1>>
<<useClothSetPop 'vr_bondage'>>
<<deleteItemSet 'kig_training_outfit'>>
<<removeItemSet "prim_plug_trial_outfit">>
<<deleteItemSet "prim_plug_trial_outfit">>
<<useClothSetPop 'tmp'>>
<<if $fetish.cum>>
<<applyExperience 'cum' 10 'normal' $ALONE>>
<</if>>
<<applyFatigue -50>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","formal"))>> Laboratory'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You are naked. Somehow that is the first thing that clicks in your mind. You feel the vinyl-wrapped cushioned floor against your face. You are awake. You slowly rise to a seated position before slipping and falling onto your back. Your body is not cooperating. The orders you send your limbs keep getting lost in translation. For a few quiet minutes, you focus on your breathing and alleviating the numbness in your arms and legs.<br>
<br>
Once your strength returns to you, you approach the cell door. You push it open easily; some part of you expected it to be locked. <<=ps(setup.getNpcName("npc_primrose","first"))>> lab is dark for a moment before lighting up, the motion sensor detecting you. The scientist is nowhere to be seen. What you do see is your clothes neatly folded and sitting on <<his npc_primrose>> desk along with a note. You unfold the paper and read quietly to yourself, the voice of the <<if $fetish.sissy>>sissy <</if>>Scientist sounding happily in your mind:<br>
<br>
@@.npc_primrose;Hey <<=$player.first_name>>! Sorry I couldn't be there with you when you woke up. I had a meeting downstairs and I'd be in a lot of trouble if I missed it. I thought I'd be done in time... but I guess I just didn't expect you to resist throughout the class! I hope you still learned something, at least. The punishment is supposed to be educational, after all. It's to help you be a better employee!<br>
<br>
You should probably take it easy for the next few hours. That simulation is stressful enough but you had to take the path of most resistance. I'm still tuning that part of things. It's difficult to get fresh test subjects. You build up a certain strength against it over time and that makes it harder to see how it affects people.<br>
<br>
-Your friend, <<=setup.getNpcName("npc_primrose","first")>>.<br>
<br>
PS: if you're feeling woozy, grab an energy drink from my fridge. It should wake you up long enough to at least get home~@@<br>
<br>
You get dressed in stiff, mechanical motions. Your mind is overloaded from the experience. You haven't even fully comprehended what happened yet. Once you are decent again, you fetch a drink from the upstairs loft. The can is black and pink. You've never seen this brand before. The logo is of a digital idol. It tastes like liquified Pop Rocks<<if $fetish.cum>> and <<if setup.getTotalValue("cum") > 10>><<if setup.getTotalValue("cum") > 15>>delicious<<else>>yummy<</if>><<else>><<if setup.getTotalValue("cum") > 5>>bitter<<else>>disgusting<</if>><</if>> semen<</if>>. You sip it slowly as you exit the lab. The magnetized lock engages as soon as the door closes behind you. You briefly look up at the entry camera. It stares down at you with its mechanical eye.<br>
<br>
You walk to the elevator. The hallway feels surreal. You aren't sure if you're still in the simulation or the waking world. You finish your drink. The elevator arrives. You aren't sure if you pressed the button or not, but the door closes and takes you down to the lobby...<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: forced hypnosis repeat
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_primrose","first"))>> VR Simulation'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png">>
<div id="invframe" class="scrolltext">
You are floating within the white void of <<=ps(setup.getNpcName("npc_primrose","first"))>> VR simulation. Cyan browser windows filled with brain scans and mental activity levels flicker in and out of existence around you as the company logo remains fixed in the distance. You hear <<=ps(setup.getNpcName("npc_primrose","first"))>> voice a moment later, disappointment apparent before he even begins talking:<br>
<br>
"@@.npc_primrose;No, this will not do. I don't think you learned anything from that at all! We're just going to have to run it again and hope you actually listen this time...@@"<br>
<br>
Again? You begin to panic, trying to somehow pull yourself out of the simulated space. Unfortunately, there is nothing you can do. The school begins to load in once again as a familiar scene begins anew...<br>
<br>
[<<moveTo "event_primrose_punishment_vr_1" "Here we go again..." 300>>]
</div>/*#
#desc: character profiles menu
#status: FINISHED 0.4.0.0
#*/
<div class="topMenu">
[[Inventory|goInv]] |
<<if setup.checkItemInInventory("smartphone")>>
[[Phone|goPho]] |
<</if>>
[[Tasks|goTas]] |
[[Stats|goSta]] |
<<link "Achievements">><<set $options.displayAchievName = false>><<=Engine.play("achievementsPage", true)>><</link>> |
[[Options|goOpt]]
@@.textRightSide;Stats [[[back|$player.plocation]]]@@<br>
<hr>
</div>
Major Characters:<br>
<<if $npc_manager.profile>>
<<=setup.getNpcName('npc_manager', 'formal')>>, your
<<if $npc_manager.call=="Mrs.">>
new Boss.
<<else>>
<<if setup.getTotalValue('submission') > 3>>
<<switch setup.getTotalValue('submission')>>
<<case 4 5 6>>
demanding
<<case 7 8 9>>
controlling
<<case 10 11 12>>
wonderful
<<case 13 14 15>>
beloved
<<case 16 17 18>>
glorious
<<case 19 20>>
divine
<<default>>
ERROR: player submission <<=setup.getTotalValue('submission')>> out of bounds!
<</switch>>
<</if>>
Mistress.
<</if>>
[[[Show Profile|profile_npc_manager]]]<br>
<</if>>
<<if $npc_admin.profile>>
<<=setup.getNpcName('npc_admin', 'full')>>, a good Friend. [[[Show Profile|profile_npc_admin]]]<br>
<</if>>
<<if $npc_landlord.profile>>
<<=setup.getNpcName('npc_landlord', 'full')>>, your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>/handy<<man npc_landlord>>. [[[Show Profile|profile_npc_landlord]]]<br>
<</if>>
<<if $npc_ai.profile>>
<<=setup.getNpcName('npc_ai', 'first')>>, an Artificial Intelligence [[[Show Profile|profile_npc_ai]]]<br>
<</if>>
<<if $npc_technician.profile>>
<<=setup.getNpcName('npc_technician', 'full')>>, the resident Tech Wizard of Cloud Data Service. [[[Show Profile|profile_npc_technician]]]<br>
<</if>>
<<if $npc_psychiatrist.profile>>
<<=setup.getNpcName('npc_psychiatrist', 'full')>>, your therapist. [[[Show Profile|profile_npc_psychiatrist]]]<br>
<</if>>
<br>
Friends:<br>
<<if $npc_barista.profile>>
<<=setup.getNpcName('npc_barista', 'nickname')>>, a... barista? [[[Show Profile|profile_npc_barista]]]<br>
<</if>>
<<if $npc_rpg_warlock.profile>>
<<=setup.getNpcName('npc_rpg_warlock', 'full')>>, one of <<=ps(setup.getNpcName('npc_technician', 'first'))>> friends that you RPG with, girlfriend of <<=setup.getNpcName('npc_rpg_dude', 'first')>>. [[[Show Profile|profile_npc_rpg_warlock]]]<br>
<</if>>
<<if $npc_rpg_dude.profile>>
<<=setup.getNpcName('npc_rpg_dude', 'full')>>, one of <<=ps(setup.getNpcName('npc_technician', 'first'))>> friends that you RPG with, <<boy npc_rpg_dude>>friend of <<=setup.getNpcName('npc_rpg_warlock', 'first')>>. [[[Show Profile|profile_npc_rpg_dude]]]<br>
<</if>>
<<if $npc_maid.profile>>
<<=setup.getNpcName('npc_maid', 'full')>>, one of the maids at Cafe Newtype, frenemy? of <<=setup.getNpcName('npc_technician', 'first')>>. [[[Show Profile|profile_npc_maid]]]<br>
<</if>>
<<if $npc_cat.stage>>
<<=setup.getNpcName('npc_cat', 'first')>>, your pet cat. [[[Show Profile|profile_npc_cat]]]<br>
<</if>>
<<if $npc_dog.stage>>
<<=setup.getNpcName('npc_dog', 'first')>>, your pet dog. [[[Show Profile|profile_npc_dog]]]<br>
<</if>>
<<=setup.getNpcName('npc_chuck', 'suffix')>>, your pet plant. [[[Show Profile|profile_npc_chuck]]]<br>
<br>
Work Associates:<br>
<<if $npc_boss.profile>>
<<=setup.getNpcName('npc_boss', 'formal')>>, The CEO of the company. [[[Show Profile|profile_npc_boss]]]<br>
<</if>>
<<if $npc_work_doctor.profile>>
<<=setup.getNpcName('npc_work_doctor', 'formal')>>, in charge of R&D at work. [[[Show Profile|profile_npc_work_doctor]]]<br>
<</if>>
<<if $npc_harassment.stage > 0>>
<<=setup.getNpcName('npc_harassment', 'formal')>>, the HR Manager of Employee Harassment. [[[Show Profile|profile_npc_harrassment]]]<br>
<</if>>
<<if $npc_discipline.stage > 0>>
<<=setup.getNpcName('npc_discipline', 'formal')>>, the HR Manager of Employee Discipline. [[[Show Profile|profile_npc_discipline]]]<br>
<</if>>
<<if $npc_retention.stage > 0>>
<<=setup.getNpcName('npc_retention', 'formal')>>, the HR Manager of Employee Retention. [[[Show Profile|profile_npc_retention]]]<br>
<</if>>
<<if $npc_development.stage > 0>>
<<=setup.getNpcName('npc_development', 'formal')>>, the HR Manager of Employee Development. [[[Show Profile|profile_npc_development]]]<br>
<</if>>
<<if $npc_rival.stage > 0>>
<<=setup.getNpcName('npc_rival', 'formal')>>, Another Manager at Social Interaction Service Syndicate Inc. [[[Show Profile|profile_npc_rival]]]<br>
<</if>>
<<if $npc_pokerman.profile>>
<<=setup.getNpcName('npc_pokerman', 'formal')>>, Head of New Products. [[[Show Profile|profile_npc_pokerman]]]<br>
<</if>>
<<if $npc_pokercheater.profile>>
<<=setup.getNpcName('npc_pokercheater', 'formal')>>, furtive observer of the company poker game. [[[Show Profile|profile_npc_pokercheater]]]<br>
<</if>>
<<if $npc_nintendolls.stage > 0>>
<<=setup.getNpcName('npc_nintendolls', 'formal')>>, President of Nintendolls. [[[Show Profile|profile_npc_nintendolls]]]<br>
<</if>>
<<if $npc_pr_sissy.stage > 0>>
<<=setup.getNpcName('npc_pr_sissy', 'full')>>, an enthusiastic Public Relations worker. [[[Show Profile|profile_npc_pr_sissy]]]<br>
<</if>>
<<if $npc_sissy_secretary.stage > 0>>
<<=setup.getNpcName('npc_sissy_secretary', 'formal')>>, a coworker on a similar career path... [[[Show Profile|profile_npc_sissy_secretary]]]<br>
<</if>>
<<if $npc_hucow.stage > 0>>
<<=setup.getNpcName('npc_hucow', 'formal')>>, a lab-worker at work. [[[Show Profile|profile_npc_hucow]]]<br>
<</if>>
<<if $npc_futa.stage > 0>>
<<=setup.getNpcName('npc_futa', 'formal')>>, a shy? coworker. [[[Show Profile|profile_npc_futa]]]<br>
<</if>>
<<if $npc_sexdoll.stage > 0>>
<<=setup.getNpcName('npc_sexdoll', 'formal')>>, an enthusiastic coworker. [[[Show Profile|profile_npc_sexdoll]]]<br>
<</if>>
<<if $npc_harassment_assist.profile>>
<<=setup.getNpcName('npc_harassment_assist', 'first')>>, <<=ps(setup.getNpcName('npc_harassment', 'formal'))>> eager and submissive assistant. [[[Show Profile|profile_npc_harassment_assist]]]<br>
<</if>>
<<if $npc_retention_assistant.profile>>
<<=setup.getNpcName('npc_retention_assistant', 'first')>>, <<=ps(setup.getNpcName('npc_retention', 'formal'))>> eager and submissive assistant. [[[Show Profile|profile_npc_retention_assistant]]]<br>
<</if>>
<<if $npc_guard.profile>>
<<=setup.getNpcName('npc_guard', 'formal')>>, a guard at Social Interaction Service Syndicate Inc. [[[Show Profile|profile_npc_guard]]]<br>
<</if>>
<<if $npc_party_waitress.stage > 0>>
<<=setup.getNpcName('npc_party_waitress', 'formal')>>, a new waitress at work parties. [[[Show Profile|profile_npc_party_waitress]]]<br>
<</if>>
<<if $npc_pokergirl.profile>>
<<=setup.getNpcName('npc_pokergirl', 'formal')>>, a slightly distracted poker player. [[[Show Profile|profile_npc_pokergirl]]]<br>
<</if>>
<<if $npc_poker_intro_slave.stage > 0>>
<<=setup.getNpcName('npc_poker_intro_slave', 'formal')>>, <<=ps(setup.getNpcName("npc_pokerman","formal"))>> secretary. [[[Show Profile|profile_npc_poker_intro_slave]]]<br>
<</if>>
<<if $npc_primrose.profile>>
<<=setup.getNpcName('npc_primrose', 'formal')>>, an Enthusiastically Brainwashed Scientist. [[[Show Profile|profile_npc_primrose]]]<br>
<</if>>
<<if $npc_evil_nurse.profile>>
<<=setup.getNpcName('npc_evil_nurse', 'formal')>>, an Cruel Latex Nurse. [[[Show Profile|profile_npc_evil_nurse]]]<br>
<</if>>
<br>
Others:<br>
<<if $npc_exgirlfriend.profile>>
<<=setup.getNpcName('npc_exgirlfriend', 'full')>>, a past lover. [[[Show Profile|profile_npc_exgirlfriend]]]<br>
<</if>>
<<if $npc_barkeeper.profile>>
<<=setup.getNpcName('npc_barkeeper', 'full')>>, owner of the "Usual Place." [[[Show Profile|profile_npc_barkeeper]]]<br>
<</if>>
<<if $npc_cook.profile>>
<<=setup.getNpcName('npc_cook', 'full')>>, of Nutritional Sustenance Distribution. [[[Show Profile|profile_npc_cook]]]<br>
<</if>>
<<if $npc_shopkeeper.profile>>
<<=setup.getNpcName('npc_shopkeeper', 'full')>>, the owner of <<printShopName 'mall_lingerie_shop'>>, the lingerie in the mall. [[[Show Profile|profile_npc_shopkeeper]]]<br>
<</if>>
<<if $npc_sexstore_clerk.profile>>
<<=setup.getNpcName('npc_sexstore_clerk', 'full')>>, the clerk at <<printShopName 'mall_sexstore'>>, the fetish store in the mall. [[[Show Profile|profile_npc_sexstore_clerk]]]<br>
<</if>>
<<if $npc_shoestore_manager.profile>>
<<=setup.getNpcName('npc_shoestore_manager', 'full')>>, the manager of <<printShopName 'mall_shoe_store'>>, the shoe store in the mall. [[[Show Profile|profile_npc_shoestore_manager]]]<br>
<</if>>
<<if $npc_shoestore_assistant.profile>>
<<=setup.getNpcName('npc_shoestore_assistant', 'full')>>, the <<printShopName 'mall_shoe_store'>> shop assistant and wife of <<=setup.getNpcName('npc_shoestore_manager', 'full')>>. [[[Show Profile|profile_npc_shoestore_assistant]]]<br>
<</if>>
<<if $npc_martial_arts.profile>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>>, the martial arts instructor at the gym. [[[Show Profile|profile_npc_martial_arts]]]<br>
<</if>>
<<if $npc_swolebro.profile>>
<<=setup.getNpcName('npc_swolebro', 'formal')>>, a buff, friendly <<if $npc_swolebro.fem>>girl<<else>><<=$npc_swolebro.bro>><</if>> at the gym. [[[Show Profile|profile_npc_swolebro]]]<br>
<</if>>
<<if $npc_fit_bimbo.profile>>
<<=setup.getNpcName('npc_fit_bimbo', 'formal')>>, a fit, friendly woman at the gym. [[[Show Profile|profile_npc_fit_bimbo]]]<br>
<</if>>
<<if $npc_barber.profile>>
<<=setup.getNpcName('npc_barber', 'formal')>>, your friendly barber. [[[Show Profile|profile_npc_barber]]]<br>
<</if>>
<<if $npc_butler.profile>>
<<=setup.getNpcName('npc_butler', 'formal')>>, the owner of the Cafe Newtype Maid Cafe. [[[Show Profile|profile_npc_butler]]]<br>
<</if>>
<<if $npc_botanist.profile>>
<<=setup.getNpcName('npc_botanist', 'first')>>, the horticulturist owner of <<printShopName 'plant_shop'>>. [[[Show Profile|profile_npc_plant]]]<br>
<</if>>
<<if $npc_egg.stage >= 1>>
<<=setup.getNpcName('npc_egg', 'first')>>, a shy tenant whose apartment you occasionally clean. [[[Show Profile|profile_npc_egg]]]<br>
<</if>>
<<if $npc_sex_club.profile>>
<<=setup.getNpcName('npc_sex_club', 'formal')>>, the owner of the <<printShopName 'sex_club'>> Fetish Club. [[[Show Profile|profile_npc_sex_club]]]<br>
<</if>>
<br>
[[[back|$player.plocation]]]/*#
#desc: manager profile
#status: FINISHED 0.8.0.0
#ignore_spell: ui
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_manager', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>><br>
<<switch $npc_manager.stage>>
<<case 1>>
<<if $player.flags.firstWorkDay>>
<<=setup.getNpcName('npc_manager', 'formal')>> is the powerful Director of Human Relations for Social Interaction Service Syndicate Inc., and your new boss. She has some very peculiar ideas about how you should dress to work, but it's not too bad. Just some quirks, and nothing that will get out of hand... right?
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> is the Director of Human Relations for Social Interaction Service Syndicate Inc., and your new boss. She has a certain intense, almost alluring sense to her but you need to put that aside and focus on your new job. Being a Secretary is going to be a shift but hopefully it all works out.
<</if>>
<<case 2>>
<<=setup.getNpcName('npc_manager', 'formal')>> is the powerful Director of Human Relations for Social Interaction Service Syndicate Inc... and your boss. Ever since you accepted the position to be her <<if $fetish.sissy>>SISSI <</if>>Secretary she has steadily increased her control over your life<<if $npc_manager.flags.require_chastity>>, from completely changing your wardrobe to locking you in chastity...<<else>>, and you doubt she'll be stopping with just your wardrobe...<</if>><br>
<br>
Despite, or perhaps because of it all you get the feeling she is starting to care about you...
<<case 3>>
<<=setup.getNpcName('npc_manager', 'formal')>> is the powerful Director of Human Relations for Social Interaction Service Syndicate Inc. and your boss/managing architect of your ongoing feminisation and submission. You've far passed the point of being "merely" her employee but... what are you? And how does it play in to the mysterious other forces moving behind the scenes of this company?
<<case 4>>
<<=setup.getNpcName('npc_manager', 'formal')>> is the powerful Director of Human Relations for Social Interaction Service Syndicate Inc., and your boss. Under her "guidance" you have undergone an almost complete transformation, but you have also learned that there's more going on than just her turning you into her feminised slave. There are things happening at this company and, here on the upper floors, the stakes for the both of you are getting quite high.
<<case 5>>
<<if $npc_manager.flags.evil == 1>>
<<=setup.getNpcName('npc_manager', 'formal')>> was once the powerful Director of Human Relations for Social Interaction Service Syndicate Inc., but now has been reduced to mere middle management, and you along with her. Of course that ignores that she also appears to have gotten a personality transplant from hell. Maybe if you can deal with THAT you can start sorting out other problems.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>>, once again the Director of Human Relations for Social Interaction Service Syndicate Inc. (thanks to your help), is your boss, and your primary protector to keep you safe from <<=setup.getNpcName('npc_boss', 'formal')>>.
<</if>>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<br><br>
<<if $npc_manager.stage > 2>>
Though she appears "normal" she seems beyond human in a number of ways and you are becoming certain she has cybernetic enhancements, at the very least.<br>
<br>
<</if>>
<<printReputation 'npc_manager' 'formal' 'She is'>><br>
<br>
<<if $npc_manager.flags.cruel>>
Cruel manager mode enabled, she may treat you more harshly even when you have been behaved and may behave with greater sadism in some scenes.<br>
<br>
<</if>>
<<if $player.flags.collar.owner == 'npc_manager'>>
You have accepted her collar, and she ownership over you.<br>
<br>
<</if>>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_manager"]]]<br>
[[[back|goProfiles]]]/*#
#desc: psychiatrist profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>><br>
<hr><br>
<<if $npc_psychiatrist.flags.evil == 1>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<<else>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<</if>>
<<if $npc_psychiatrist.flags.evil == 1>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> was once your therapist... but now is a brainless bimbo assistant to <<=setup.getNpcName("npc_work_doctor","formal")>>...
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is your therapist. You first met as part of a mandatory psychological assessment as part of starting work as a <<if $fetish.sissy>>SISSI <</if>>Secretary.
<<if $npc_psychiatrist.flags.therapy_events.handjob ||
$npc_psychiatrist.flags.therapy_events.blowjob ||
$npc_psychiatrist.flags.therapy_events.console ||
$npc_psychiatrist.flags.therapy_events.anal ||
$npc_psychiatrist.flags.therapy_events.doHer ||
$npc_psychiatrist.flags.therapy_events.vaginal ||
$npc_psychiatrist.flags.therapy_events.self_jerk ||
$npc_psychiatrist.flags.therapy_events.jerk>>
Her take on therapy goes above and beyond; not just encouraging you to explore thing sexually, but including such acts into her "treatments."
<<else>>
She seems very... encouraging about your continued development.
<</if>>
<<if $npc_work_doctor.flags.aphrodisiac.unlock>>
She has asked for your help in undermining <<=setup.getNpcName("npc_work_doctor","formal")>>, the two of them definitely seem to have a history together.
<<elseif State.hasPlayed("event_psychiatrist_hypnosis_2_8")>>
Even as she encourages you forward you get the feeling that there is more going on, and that it all traces back to the company you work for.
<<else>>
Despite her enthusiasm you sense a strange undercurrent involving her history with the company.
<</if>>
<br><br>
<<switch $npc_psychiatrist.hypnosis>>
<<case 0>>
She has invited you to take part in her VR therapy experiment but you have not yet taken her up on it.
<<case 1 2>>
To help you with your financial woes she has also had you participate in some of her VR therapy research. Strangely, you don't actually remember what it involved...
<<case 3>>
To help you with your financial woes she has also had you participate in some of her VR therapy research. You don't recall exactly what it involved, but ever since you started taking part you've found yourself fantasising about more and more intense situations.
<<case 4>>
To help you with your financial woes she has also had you participate in some of her VR therapy research. The research keeps getting more and more intense as you find yourself enthusiastically embracing ever more fetishistic scenarios.
<<case 5>>
To help you with your financial woes she has also had you participate in some of her VR therapy research, research that you now clearly remember; each session consisting of intense fetishistic scenarios.
<<case 6>>
To help you with your financial woes she has also had you participate in some of her VR therapy research, research that has come to a "conclusion" as you have proven your debauchery by not just enduring, but embracing a series of ever more extreme "trials" to prove the nigh infinite depths of your perversion.
<<default>>
ERROR: unexpected npc_psychiatrist.hypnosis <<=$npc_psychiatrist.hypnosis>>
<</switch>>
<br><br>
<<if $npc_barista.stage >= 2>>
<<if $npc_barista.stage >= 10>>
<<switch $npc_barista.flags.rescue.cure>>
<<case 'bimbo'>>
You attempted to help her cure her love <<=setup.getNpcName("npc_barista","nickname")>>, but your efforts were unsuccessful and the ditzy bimbo barista remains such.
<<case 'good'>>
With your help you have cured her love, <<=setup.getNpcName("npc_barista","first")>>... or <<=setup.getNpcName("npc_barista","nickname")>>, as she continues to go by.
<<default>>
ERROR: unexpected npc_barista.flags.rescue.cure <<=$npc_barista.flags.rescue.cure>>
<</switch>>
<<else>>
She has a special connection to <<=setup.getNpcName("npc_barista","nickname")>>, and has asked your assistance in curing her currently ditzy friend.
<</if>>
<br><br>
<</if>>
<<printReputation 'npc_psychiatrist' 'first' 'She is'>><br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
Cruel therapist mode enabled, she may treat you more aggressively and be less caring as to your preferences.<br>
<br>
<</if>>
<</if>>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_psychiatrist"]]]<br>
[[[back|goProfiles]]]/*#
#desc: admin profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_admin', 'full_formal')>><br>
<hr><br>
<<if $npc_admin.flags.evil <= 1 || $npc_admin.flags.evil >= 4>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_admin")>><br>
<<else>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_admin","npc_admin_evil")>><br>
<</if>>
<<switch $npc_admin.flags.evil>>
<<case 0>>
<<switch $npc_admin.stage>>
<<case 1>>
You met <<=setup.getNpcName('npc_admin', 'first')>> in college. <<He npc_admin>> was always more a people person than you, with <<him npc_admin>> being a Lieutenant in the Army, so <<he npc_admin>> was able to get a job before you. With those skills came a sense of loyalty and <<he npc_admin>> managed to secure a position for you as well within the same company: Cloud Data Service.
<<case 2>>
You met <<=setup.getNpcName('npc_admin', 'first')>> in college. <<He npc_admin>> was always more a people person then you, with <<him npc_admin>> being a Lieutenant in the Army, so <<he npc_admin>> was able to get a job before you. With those skills came a sense of loyalty and <<he npc_admin>> managed to secure a position for you as well within the same company: Cloud Data Service. With your recent changes you took a shot at dating <<him npc_admin>>... but it didn't really work out.
<<case 3>>
You met <<=setup.getNpcName('npc_admin', 'first')>> in college. <<He npc_admin>> was always more a people person then you, with <<him npc_admin>> being a Lieutenant in the Army, so <<he npc_admin>> was able to get a job before you, and the two of you spent time working together at Cloud Data Service.
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
Since you started working as a <<if $fetish.sissy>>SISSI <</if>>Secretary things have changed between you; friendship blossoming into more as, after some ups and downs, you've become <<his npc_admin>> girlfriend.
<<case 'friendswbenefits'>>
Since you started working as a <<if $fetish.sissy>>SISSI <</if>>Secretary things have changed between you; friendship blossoming into more as <<hes npc_admin>> accepted the idea of the two of you sleeping together.
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<</switch>>
<<if $npc_admin.flags.promotion>>
<br><br>
With your help <<he npc_admin>> has accepted a promotion to Social Interaction Service Syndicate Inc. where <<he npc_admin>> has been managing the merger of CDS into Social Interaction Service Syndicate Inc.
<</if>>
<<case 1>>
<<=setup.getNpcName('npc_admin', 'first')>> was once your oldest friend but, after <<he npc_admin>> made a foolishly headstrong attempt to "solve" your situation with fisticuffs, <<he npc_admin>> was taken away by company security.
<<case 2 3>>
<<=setup.getNpcName('npc_admin', 'first')>> was once your oldest friend but, after <<he npc_admin>> made a foolishly headstrong attempt to "solve" your situation with fisticuffs, <<he npc_admin>> was taken away by company security and has now returned changed. Evil, one might say — and totally loyal to the company, without a trace of kindness for you, or anyone else.
<<case 4>>
<<switch $npc_admin.stage>>
<<case 1>>
You met <<=setup.getNpcName('npc_admin', 'first')>> in college. <<He npc_admin>> was always more a people person than you, with <<him npc_admin>> being a Lieutenant in the Army, so <<he npc_admin>> was able to get a job before you. With those skills came a sense of loyalty and <<he npc_admin>> managed to secure a position for you as well within the same company: Cloud Data Service.
<<case 2>>
You met <<=setup.getNpcName('npc_admin', 'first')>> in college. <<He npc_admin>> was always more a people person then you, with <<him npc_admin>> being a Lieutenant in the Army, so <<he npc_admin>> was able to get a job before you. With those skills came a sense of loyalty and <<he npc_admin>> managed to secure a position for you as well within the same company: Cloud Data Service. With your recent changes you took a shot at dating <<him npc_admin>>... but it didn't really work out.<br>
<br>
After <<he npc_admin>> survived an unwilling a stint as a corrupted tool of the company, you have managed to recover your friend, and <<he npc_admin>> is doubly motivated to help you take down the company and <<=setup.getNpcName('npc_boss', 'formal')>>.
<<case 3>>
You met <<=setup.getNpcName('npc_admin', 'first')>> in college. <<He npc_admin>> was always more a people person then you, with <<him npc_admin>> being a Lieutenant in the Army, so <<he npc_admin>> was able to get a job before you, and the two of you spent time working together at Cloud Data Service.
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
Since you started working as a <<if $fetish.sissy>>SISSI <</if>>Secretary things have changed between you; friendship blossoming into more as, after some ups and downs, you've become <<his npc_admin>> girlfriend.
<<case 'friendswbenefits'>>
Since you started working as a <<if $fetish.sissy>>SISSI <</if>>Secretary things have changed between you; friendship blossoming into more as <<he npc_admin>> has embraced the idea of the two of you sleeping together.
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<br>
<br>
After <<he npc_admin>> survived an unwilling a stint as a corrupted tool of the company, you have managed to recover your friend, and <<he npc_admin>> is doubly motivated to help you take down the company and <<=setup.getNpcName('npc_boss', 'formal')>>.
<</switch>>
<<default>>
ERROR: unexpected npc_admin.flags.evil <<=$npc_admin.flags.evil>>
<</switch>>
<br><br>
<<printReputation 'npc_admin' 'first' '<<He npc_admin>> is'>><br>
<br>
<<if $player.flags.collar.owner == 'npc_admin'>>
You have convinced <<him npc_admin>> to be your <<=setup.getNpcName('npc_admin', '<<Master npc_admin>>')>> and gift you a collar.<br>
<br>
<</if>>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_admin"]]]<br>
[[[back|goProfiles]]]/*#
#desc: exgirlfriend profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_exgirlfriend', 'full')>>
<hr><br>
<<if $npc_exgirlfriend.flags.evil == 1>>
<<createAdvBGR "./images/locations/city_skyline.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_evil") >><br>
<<else>>
<<createAdvBGR "./images/locations/city_skyline.png" setup.charImage("npc_exgirlfriend")>><br>
<</if>>
<<if $npc_exgirlfriend.flags.evil == 1>>
Your one-time ex... and now evil ex, as she has gone from rekindled relationship to cruel sadist since she started working for the company.
<<elseif State.hasPlayed("event_exgirlfriend_date_club_4_perfect")>>
Your one-time ex-girlfriend, and now more friends with benefits, since you have managed to rekindle something of a relationship with her.
<<else>>
Your ex-girlfriend. You broke up under... not the best of circumstances after she cheated on you with her yoga instructor. Despite that she seems not to hold a grudge; though that may partially be pity for your own mistakes, including your insistence on a virginity pledge and anxiety over your size.
<</if>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_exgirlfriend"]]]<br>
[[[back|goProfiles]]]/*#
#desc: ai profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_ai', 'first')>><br>
<hr><br>
<<createAdvBGR "./images/locations/city_skyline.png" setup.charImage("npc_ai")>><br>
<<switch $npc_ai.stage>>
<<case 1>>
A mysterious AI that seems to secretly inhabit the company building<<if $npc_ai.flags.blackmail && !State.hasPlayed("event_ai_sex_first_4")>>, and who is currently blackmailing you after "helping" you out<</if>>.
<<case 2>>
A mysterious AI that secretly inhabits the company building and occasionally calls on you to run missions for her...
<<case 3>>
A mysterious AI that inhabits the company building, and whose reach you helped extend beyond the company and into the outside world.
<</switch>>
<<if $npc_manager.stage < 5>>
For all her inhuman strangeness, she seems interested in helping you, though to what end, you are not so certain.
<<else>>
Now that <<=setup.getNpcName('npc_boss', 'formal')>> has shown <<his npc_boss>> hand, <<=setup.getNpcName('npc_ai', 'first')>> seems like she may be the key to bringing <<him npc_boss>> down, and freeing you from the company's control.
<</if>>
<br><br>
<<printReputation 'npc_ai' 'first' 'She is'>><br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_ai"]]]<br>
[[[back|goProfiles]]]/*#
#desc: barista profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_barista', 'nickname')>><br>
<hr><br>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>><br>
The ditzy barista who works at Cafe 52 at work<<if $npc_technician.flags.rpg_campaign.session > 0>> and plays in <<=ps(setup.getNpcName("npc_technician","first"))>> RPG group<</if>><<if $npc_barista.flags.know_prostitute>>, and as a prostitute at the Usual Place<</if>>.
<<if $npc_barista.flags.can_meet>>
<<switch $npc_barista.stage>>
<<case 1>>
<<if $npc_barista.flags.rescue.overload>>
Beneath her ditzy facade lies something more. You saw a glimmer after fucking her brains out, her lucidity lasting just long enough for her to direct you towards <<=setup.getNpcName("npc_psychiatrist","formal")>>...
<<else>>
Beneath her ditzy facade you sense there's something more, but how can you reach it?
<</if>>
<<case 2 3>>
Though <<=setup.getNpcName("npc_barista","nickname")>> currently presents the picture of a ditzy bimbo, <<=setup.getNpcName("npc_barista","nickname")>> used to be more, and <<=setup.getNpcName("npc_psychiatrist","formal")>> has tasked you with figuring out how to cure her, starting with fully saturating her seemingly unending lusts...
<<case 4>>
Though <<=setup.getNpcName("npc_barista","nickname")>> currently presents the picture of a ditzy bimbo you've started to work towards a cure, having managed to momentarily satiate <<=ps(setup.getNpcName("npc_barista","nickname"))>> nigh bottomless lusts. Next up: getting her in enough trouble for her to be locked in chastity...
<<case 5>>
Though <<=setup.getNpcName("npc_barista","nickname")>> currently presents the picture of a ditzy bimbo you're getting closer to a cure, though you have a feeling that <<=setup.getNpcName("npc_barista","nickname")>> is less than grateful at present, given that your machinations have seen her locked in chastity...
<<case 6 7 8 9>>
Though <<=setup.getNpcName("npc_barista","nickname")>> currently presents the picture of a ditzy bimbo you're getting closer and closer to a cure, having secured a location to make the final push.
<<case 10>>
<<switch $npc_barista.flags.rescue.cure>>
<<case 'bimbo'>>
After all your work to cure <<=setup.getNpcName("npc_barista","nickname")>> of the bimbo brainwashing inflicted on her by <<=setup.getNpcName("npc_boss","formal")>> you came up short. Still, you hope she's happy, and there is, perhaps, a perverse sort of justice to her state, given what you learned about her past as a ruthless femme fatale.
<<case 'good'>>
Still playing the part of the obedient bimbo <<=setup.getNpcName("npc_barista","nickname")>> or, as you now know her, <<=setup.getNpcName("npc_barista","first")>> is now something of a mole, your assistance having healed her psyche of both <<=ps(setup.getNpcName("npc_boss","formal"))>> damage, as well as balancing out her prior cruelty as a ruthless femme fatale.
<<default>>
ERROR: unexpected npc_barista.flags.rescue.cure <<=$npc_barista.flags.rescue.cure>>
<</switch>>
<<default>>
ERROR: unexpected npc_barista.stage <<=$npc_barista.stage>>
<</switch>>
<<else>>
Perpetually cheery, and more than a little bit ditzy, there's something off about her and you wonder how she ended up in this situation.
<</if>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_barista"]]]<br>
[[[back|goProfiles]]]/*#
#desc: barkeeper profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_barkeeper', 'full')>><br>
<hr><br>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>><br>
The bartender at The Usual Place.<br>
<br>
<<printReputation 'npc_barkeeper' 'formal' 'She is'>><br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_barkeeper"]]]<br>
[[[back|goProfiles]]]/*#
#desc: cook profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_cook', 'full')>><br>
<hr><br>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_cook")>><br>
The cook/server at the work canteen.
<<if $npc_cook.first_handjob>>
<<He npc_cook>> used to work in porn, until <<his npc_cook>> massive <<getWordPenis "npc_cook">> pushed <<him npc_cook>> out of the industry.
<<if $npc_cook.times_oral > 0 || $npc_cook.times_anal > 0 || $npc_cook.times_vag > 0>>
<<He npc_cook>> is helping you "learn the ropes" of such matters, training you up so you can be a pornstar yourself, someday.
<</if>>
<<else>>
There is something oddly familiar about <<him npc_cook>>, but you can't quite put your finger on where else you saw <<him npc_cook>>.
<</if>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_cook"]]]<br>
[[[back|goProfiles]]]/*#
#desc: shoestore manager profile
#status: FINISHED 0.4.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_shoestore_manager', 'full')>><br>
<hr><br>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_shoestore_manager")>><br>
You got to know <<=setup.getNpcName('npc_shoestore_manager', 'formal')>> when you were trying to learn how to walk in heels. Irrespective of her job managing a shoe store the fact that you've never seen her wearing less than twenty-centimetre platform heels means she's definitely the right resource. Even with the boost she's still well shorter than you, but makes up for it with an intense, friendly personality as well as what seems to be a real enthusiasm for film.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_shoestore_manager"]]]<br>
[[[back|goProfiles]]]/*#
#desc: shoestore assistant profile
#status: FINISHED 0.4.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_shoestore_assistant', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_shoestore_assistant")>><br>
The wife and shop assistant of <<=setup.getNpcName('npc_shoestore_manager', 'first')>> is one of the tallest, and strongest, looking women you've ever met. Despite her intimidating stature she has been nothing but friendly and kind, presenting quite the contrast to her diminutive, but much more intense, spouse.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_shoestore_assistant"]]]<br>
[[[back|goProfiles]]]/*#
#desc: shopkeeper profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_shopkeeper', 'full')>><br>
<hr><br>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>><br>
<<=setup.getNpcName('npc_shopkeeper', 'formal')>> is the enthusiastic owner of <<printShopName 'mall_lingerie_shop'>> in the mall.<<if $npc_sexstore_clerk.profile>> More recently she has opened another store — <<printShopName 'mall_sexstore'>> selling even more lascivious items.<</if>>.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_shopkeeper"]]]<br>
[[[back|goProfiles]]]/*#
#desc: sexstore_clerk profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_sexstore_clerk', 'full')>><br>
<hr><br>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>><br>
<<=setup.getNpcName('npc_sexstore_clerk', 'formal')>> is the clerk at <<printShopName 'mall_sexstore'>> in the mall.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_sexstore_clerk"]]]<br>
[[[back|goProfiles]]]/*#
#desc: technician profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_technician', 'full')>><br>
<hr><br>
<<if $npc_technician.flags.evil == 1>>
<<createAdvBGR "./images/locations/it_lair.png" setup.charImage("npc_technician","npc_technician_evil")>><br>
<<else>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>><br>
<</if>>
<<if $npc_technician.flags.evil == 1>>
Your one-time
<<if $npc_technician.relationship.relationship_stage >= 2>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName('npc_technician', 'title')>>
<<case 'neutral' ''>>
girlfriend
<<case "sub">>
enthusiastic submissive
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<elseif $npc_technician.stage >= 1>>
friend
<<else>>
fellow co-worker
<</if>>
<<=setup.getNpcName('npc_technician', 'first')>>. Now, as she might put it, "controlled by her mirror-universe evil self," your one time ally now another evil servant of <<=setup.getNpcName('npc_boss', 'formal')>> and the company.
<<else>>
<<switch $npc_technician.stage>>
<<case 1>>
The so-called "Tech Wizard" — the go-to woman for anything computer related at work. <<if $npc_technician.flags.dataservice_encounter.asked_for_help>>she helped you out when you lost customer data, though it wasn't enough to keep you from being fired<<else>>she offered you help when you lost customer data, though you turned her down<</if>>.
<<case 2>>
<<switch $npc_technician.relationship.relationship_stage>>
<<case 0>>
Your friend the "Tech Wizard" — the go-to woman for anything computer related at work. <<if $npc_technician.flags.dataservice_encounter.asked_for_help>>she helped you out when you lost customer data, though it wasn't enough to keep you from being fired<<else>>she offered you help when you lost customer data, though you turned her down<</if>>.<br>
<br>
Since starting your new job, and your other changes, she has become even more friendly with you, as well as encouraging.
<<case 1>>
Your girlfriend, the famous "Tech Wizard." You used to work together at CDS, but since changing jobs, and other things, the two of you have grown even closer, especially ever since you stayed over after one of her RPG sessions...
<<case 2>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","formal")>> — your girlfriend/domme.
<<case 'neutral' ''>>
Your girlfriend, <<=setup.getNpcName("npc_technician","first")>>.
<<case "sub">>
Your enthusiastically obedient slave, <<=setup.getNpcName("npc_technician","first")>>.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
You've come a long way from when you and the "Tech Wizard" were merely coworkers; from joining her RPG group to hooking up with the delightfully switchy lady you've unlocked a real friend for life.
<<default>>
ERROR: unexpected npc_technician.relationship.relationship_stage <<=$npc_technician.relationship.relationship_stage>>
<</switch>>
<<default>>
ERROR: unexpected npc_technician.stage <<=$npc_technician.stage>>
<</switch>>
<br><br>
<<if setup.checkThemeExist('npc_technician','roleplay','theme_technician_rpg_6') || $currentTasks.hasOwnProperty('technician_roleplay_1') || $npc_technician.flags.rpg_campaign.session > 0>>
She loves coffee and RPGs, and has invited you to join her for both.
<<else>>
She loves coffee and has invited you to call her about getting together for drinks.
<</if>>
<br><br>
<<printReputation 'npc_technician' 'first' 'She is'>><br>
<br>
<<if $player.flags.collar.owner == 'npc_technician'>>
She has collared you as your <<=setup.getNpcName('npc_technician', 'title')>>.<br>
<br>
<</if>>
<</if>>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_technician"]]]<br>
[[[back|goProfiles]]]/*#
#desc: rpg_dude profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_rpg_dude', 'full')>><br>
<hr><br>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude")>><br>
One of the players in <<=ps(setup.getNpcName("npc_technician","first"))>> RPG group. Plays a tough as nails undead female warrior. In real life <<hes npc_rpg_dude>> an easy-going metal fan who's dating/the slave of <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>>.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_rpg_dude"]]]<br>
[[[back|goProfiles]]]/*#
#desc: rpg_warlock profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_rpg_warlock', 'full')>><br>
<hr><br>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_warlock")>><br>
One of the players in <<=ps(setup.getNpcName("npc_technician","first"))>> RPG group. Plays a devious demon-summoning warlock. In real life she's flirty and encouraging<<if $npc_rpg_warlock.flags.bottom_surgery>>. MtF trans, you recently helped celebrate her getting bottom surgery. She is<<else>>, and<</if>> in an open relationship with her <<boy npc_rpg_dude>>friend/sub <<=setup.getNpcName("npc_rpg_dude","first")>>.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_rpg_warlock"]]]<br>
[[[back|goProfiles]]]/*#
#desc: maid profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_maid', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid")>><br>
One of the players in <<=ps(setup.getNpcName("npc_technician","first"))>> RPG group, and a "Maidtress" at Cafe Newtype in the mall. Aggressive and tough, she's a long time friend of <<=setup.getNpcName("npc_technician","first")>>.<<if $npc_technician.flags.rpg_campaign.session >= 4>> Has a ginormous lady lance<<if $npc_technician.flags.rpg_campaign.penance.maid>> aptly nicknamed "The Destroyer." <<else>>.<</if>><</if>><br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_maid"]]]<br>
[[[back|goProfiles]]]/*#
#desc: landlord profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_landlord', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>><br>
<<switch $npc_landlord.stage>>
<<case 1>>
Your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>. The slightly older, and a little shy, maintenance <<man npc_landlord>>/rent collector for your building. <<His npc_landlord>> cybernetic implants make you wonder if <<he npc_landlord>> was in the war.
<<case 2 3 4 5 6>>
Your <<boy npc_landlord>>friend, and technically your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, as well. <<Hes npc_landlord>> a bit dense, but very friendly and loyal.
<<if $npc_landlord.flags.secrets.war>>
<<Hes npc_landlord>> had a hard life, particularly <<his npc_landlord>> experience in the war... but <<hes npc_landlord>> come through it all retaining a good, if tired, soul.
<<else>>
You get the feeling that <<hes npc_landlord>> had some trauma in the past, and you wonder if <<he npc_landlord>> was in the war.
<</if>>
<</switch>>
<<if $npc_admin.flags.know_landlord>>
In the way <<he npc_landlord>> was <<=ps(setup.getNpcName("npc_admin","first"))>> commanding officer.
<</if>>
<<if $npc_landlord.flags.cleaning.times_cleaned > 0>>
<<if $npc_landlord.flags.cleaning.last_maid_clean != undefined>>
You sometimes work for <<him npc_landlord>> as a maid to clean apartments to reduce your rent.
<<else>>
You occasionally clean <<his npc_landlord>> flat to reduce your rent payments.
<</if>>
<<else>>
<<He npc_landlord>> offered you maid work to reduce your rent.
<</if>>
<br><br>
<<printReputation 'npc_landlord' 'first' '<<He npc_landlord>> is'>><br>
<br>
<<if $player.flags.collar.owner == 'npc_landlord'>>
You have convinced <<him npc_landlord>> to be your <<=setup.getNpcName('npc_landlord', '<<Master npc_landlord>>')>> and gift you a collar.<br>
<br>
<</if>>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_landlord"]]]<br>
[[[back|goProfiles]]]/*#
#desc: work_doctor profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_work_doctor', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>><br>
A senior researcher at Social Interaction Service Syndicate Inc., <<he npc_work_doctor>> specialises in creating drugs with various sexual effects. <<He npc_work_doctor>> has a very intense personality, though <<he npc_work_doctor>> frequently acts a bit defensive.
<<switch $npc_work_doctor.stage>>
<<case 1>>
<<if $currentTasks.hasOwnProperty("event_doctor_first_appointment") && $currentTasks["event_doctor_first_appointment"].finished>>
You meet <<him npc_work_doctor>> weekly for "help" with the after-effects of you overdosing on drugs.
<<else>>
<<He npc_work_doctor>> gave you a somewhat bizarre work physical.
<</if>>
<<case 2>>
You visit <<him npc_work_doctor>> after work sometimes.
<<case 3>>
You sometimes help <<him npc_work_doctor>> out as <<his npc_work_doctor>> "nurse-assistant" as <<he npc_work_doctor>> makes the rounds and treats other employees in <<his npc_work_doctor>> "unique" fashion.
<</switch>>
<br><br>
<<printReputation 'npc_work_doctor' 'formal' '<<He npc_work_doctor>> '>><br>
<br>
<<if $npc_work_doctor.flags.aphrodisiac.stage > 0>>
Thanks to your "assistance" <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> aphrodisiac is currently
<<switch $npc_work_doctor.flags.aphrodisiac.drugStrength>>
<<case 0>>
completely ineffective.
<<case 1 2>>
almost completely ineffective.
<<case 3 4>>
slightly weaker than <<he npc_work_doctor>> originally came up with.
<<case 5>>
of the same modest potency as <<he npc_work_doctor>> started with.
<<case 6 7>>
fairly potent.
<<case 8 9>>
incredibly potent.
<<case 10>>
maximally potent.
<<default>>
ERROR: unexpected npc_work_doctor.flags.aphrodisiac.drug Strength <<=$npc_work_doctor.flags.aphrodisiac.drugStrength>>
<</switch>>
<br><br>
<</if>>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_work_doctor"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_boss profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_boss', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>><br>
The seemingly all-powerful CEO of Social Interaction Service Syndicate Inc. Has an almost intoxicatingly powerful dominant employee, and seems to have been taking an interest in you since the very start of your employment...<br>
<br>
<<if $npc_boss.flags.data_crystal>>
Since you presented <<him npc_boss>> with evidence against <<=setup.getNpcName("npc_manager","formal")>> <<hes npc_boss>> taken even more of an interest in you.
<</if>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_boss"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_pr_sissy profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_pr_sissy', 'formal')>><br>
<hr><br>
<<switch $npc_pr_sissy.stage>>
<<case 1>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_0")>><br>
<<case 2>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_1")>><br>
<<case 3>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2")>><br>
<<case 4 5>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>><br>
<</switch>>
<<switch $npc_pr_sissy.stage>>
<<case 1>>
An enthusiastic coworker in the Public Relations department. A mutual friend of <<=ps(setup.getNpcName("npc_barista","nickname"))>>, with a somewhat similar sense of bimbo style.
<<case 2>>
An enthusiastic coworker in the Public Relations department. A mutual friend of <<=ps(setup.getNpcName("npc_barista","nickname"))>>, with a somewhat similar sense of bimbo style, and an interest in "helping" you out.
<<case 3 4>>
An enthusiastic coworker in the Public Relations department. A mutual friend of <<=ps(setup.getNpcName("npc_barista","nickname"))>>, she seems to have taken you on as a pet project to teach, and to show off other parts of the company.
<<case 5>>
An enthusiastic coworker in the Public Relations department. A mutual friend of <<=ps(setup.getNpcName("npc_barista","nickname"))>>, she seems to have taken you on as not just a pet project, but as an exemplar of the company's offerings.
<<default>>
ERROR: unexpected npc_pr_sissy.stage <<=$npc_pr_sissy.stage>>
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_pr_sissy"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_harassment profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_harassment', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_harassment")>><br>
The HR Manager of Employee Harassment, she reports to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_harassment"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_harassment_assist profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_harassment_assist', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_harassment_assist")>><br>
<<=setup.getNpcName('npc_harassment', 'formal')>> cute, submissive, androgynous assistant. You think they have a bit of a crush on you...<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_harassment_assist"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_discipline profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_discipline', 'formal')>><br>
<hr><br>
<<switch $npc_discipline.stage>>
<<case 1 2>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_discipline","npc_discipline_1")>><br>
<<case 3>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_discipline","npc_discipline_2")>><br>
<<case 4 5>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_discipline","npc_discipline_3")>><br>
<</switch>>
<<switch $npc_discipline.stage>>
<<case 1>>
The HR Manager of Employee Discipline, she reports to <<=setup.getNpcName('npc_manager', 'formal')>>.
<<case 2 3 4 5>>
The HR Manager of Employee Discipline, she reports to <<=setup.getNpcName('npc_manager', 'formal')>>. Seems to have a rotating stable of "assistants."
<<if $player.flags.move_fetish.bdsm > 0>>
Runs the company dungeon.
<</if>>
<<default>>
ERROR: unexpected npc_discipline.stage <<=$npc_discipline.stage>>
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_discipline"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_nintendolls profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_nintendolls', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_nintendolls")>><br>
<<switch $npc_nintendolls.stage>>
<<case 1>>
The President of Nintendolls, seems to have some sort of business with <<=setup.getNpcName('npc_manager', 'formal')>>.
<<case 2>>
The President of Nintendolls, <<=setup.getNpcName('npc_manager', 'formal')>> is apparently giving <<him npc_nintendolls>> training in employee relations.
<<case 3>>
The President of Nintendolls, <<=setup.getNpcName('npc_manager', 'formal')>> is apparently giving <<him npc_nintendolls>> training in employee relations, and <<he npc_nintendolls>> seems interested in you "making up" for your mistake in losing <<his npc_nintendolls>> company's data.
<<case 4>>
The President of Nintendolls, <<=setup.getNpcName('npc_manager', 'formal')>> is apparently giving <<him npc_nintendolls>> training in employee relations, and <<he npc_nintendolls>> seems interested in you "making up" for your mistake in losing <<his npc_nintendolls>> company's data.
<<case 5 6>>
The President of Nintendolls, <<he npc_nintendolls>> appears to have taken <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lessons in "employee management" and used them to turn one of <<his npc_nintendolls>> board members into <<his npc_nintendolls>> slave.
<<default>>
ERROR: unexpected stage <<=$npc_nintendolls.stage>>
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_nintendolls"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_retention profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_retention', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_retention")>><br>
<<switch $npc_retention.stage>>
<<case 1 2 3>>
The HR Manager of Employee Retention, <<he npc_retention>> reports to <<=setup.getNpcName('npc_manager', 'formal')>>. <<He npc_retention>> exudes a no-nonsense vibe of dominance, danger. From <<his npc_retention>> bearing you wonder if <<he npc_retention>> might be ex-military.
<<case 4 5>>
The HR Manager of Employee Retention, <<he npc_retention>> reports to <<=setup.getNpcName('npc_manager', 'formal')>>. <<He npc_retention>> exudes a no-nonsense vibe of dominance, danger. From <<his npc_retention>> bearing you wonder if <<he npc_retention>> might be ex-military. <<if $fetish.pet_play>>Based on <<his npc_retention>> assistant, <<he npc_retention>> is into pet-play.<</if>>
<<default>>
ERROR: unexpected npc_retention.stage <<=$npc_retention.stage>>
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_retention"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_retention_assistant profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_retention_assistant', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("npc_retention_assistant","npc_retention_assistant_pup")>><br>
<<=ps(setup.getNpcName('npc_retention', 'formal'))>><<if $npc_retention.stage > 3>><<if $fetish.pet_play>>human pup<<else>>slave<</if>><</if>> assistant.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_retention_assistant"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_development profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_development', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>><br>
<<switch $npc_development.stage>>
<<case 1>>
The HR Manager of Employee Development, she reports to <<=setup.getNpcName('npc_manager', 'formal')>>.
<<case 2>>
The HR Manager of Employee Development, she reports to <<=setup.getNpcName('npc_manager', 'formal')>> and seems to have taken an interest in you attending one of her "classes."
<<case 3 4>>
The HR Manager of Employee Development, she reports to <<=setup.getNpcName('npc_manager', 'formal')>> and, like the rest of this crazy company, seems to have a somewhat non-standard idea of what skills an employee should develop. Skills like being able to suck her lady lance.
<<case 4 5>>
The HR Manager of Employee Development, she reports to <<=setup.getNpcName('npc_manager', 'formal')>>. Based on the uniform she showed you, and her interest in your skills at sucking her lady lance, the "class" she runs would certainly be... interesting.
<<default>>
ERROR: unexpected npc_development.stage <<=$npc_development.stage>>
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_development"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_rival profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_rival', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>><br>
<<switch $npc_rival.stage>>
<<case 1>>
Another manager, apparently a rising star in the company.
<<case 2>>
A rising star manager in the company who has a slight rivalry with your own <<=setup.getNpcName('npc_manager', 'formal')>>.
<<case 3>>
The newly promoted Director of Human Resources, taking over after <<=setup.getNpcName('npc_manager', 'formal')>> was punished for your failed efforts against <<=setup.getNpcName('npc_boss', 'formal')>>.
<<case 4>>
The now deposed shortly-reigning Director of Human Resources. An ambitious <<man npc_rival>> who ended up crushed between coming between <<=setup.getNpcName('npc_boss', 'formal')>> and <<=setup.getNpcName('npc_manager', 'formal')>>.
<<default>>
ERROR: unexpected npc_rival.stage <<=$npc_rival.stage>>
<</switch>>
Your friend <<=setup.getNpcName('npc_sissy_secretary', 'formal')>> is <<his npc_rival>> personal <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
<<if State.hasPlayed("event_stage_5_transition_start_3") && !State.hasPlayed("event_stage_5_transition_friday_home_1")>>
<<printReputation 'npc_rival' 'formal' '<<He npc_rival>> is'>><br>
<br>
<</if>>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_rival"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_sissy_secretary profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_sissy_secretary', 'formal')>><br>
<hr><br>
<<switch $npc_sissy_secretary.stage>>
<<case 1>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_0")>><br>
<<case 2>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_1")>><br>
<<case 3>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_2")>><br>
<<case 4 5>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>><br>
<</switch>>
<<switch $npc_sissy_secretary.stage>>
<<case 1>>
A fellow <<if $fetish.sissy>>SISSI <</if>>Secretary. Despite being male he has decided to dress in a feminine style to help his career advancement.
<<case 2>>
A fellow <<if $fetish.sissy>>SISSI <</if>>Secretary. You think he has gone past the point of mere cross-dressing in his quest for career advancement.
<<case 3>>
A fellow <<if $fetish.sissy>>SISSI <</if>>Secretary. It would appear that she has embraced being a woman outside of work hours.
<<case 4 5>>
A fellow <<if $fetish.sissy>>SISSI <</if>>Secretary whose quest for "career advancement" has progressed to becoming a <<if $fetish.sissy>>total sissy slut<<else>>slutty, flirtatious woman<</if>>.
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_sissy_secretary"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_hucow profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_hucow', 'formal')>><br>
<hr><br>
<<switch $npc_hucow.stage>>
<<case 1>>
<<createAdvBGR "./images/locations/laboratory.png" setup.charImage("npc_hucow","npc_hucow_0")>><br>
<<case 2>>
<<createAdvBGR "./images/locations/laboratory.png" setup.charImage("npc_hucow","npc_hucow_1")>><br>
<<case 3>>
<<createAdvBGR "./images/locations/laboratory.png" setup.charImage("npc_hucow","npc_hucow_2")>><br>
<<case 4>>
<<createAdvBGR "./images/locations/laboratory.png" setup.charImage("npc_hucow","npc_hucow_3")>><br>
<<case 5>>
<<createAdvBGR "./images/locations/laboratory.png" setup.charImage("npc_hucow","npc_hucow_4")>><br>
<</switch>>
<<switch $npc_hucow.stage>>
<<case 1>>
A lab-worker you met at work.
<<case 2>>
A lab-worker you met at work. Since meeting her she seems to be developing larger breasts.
<<case 3>>
A big-breasted lab-worker you met at work. Since your first meeting she has been steadily developing into a hucow.
<<case 4 5>>
A big-breasted hucow lab-worker/victim of <<=setup.getNpcName('npc_work_doctor', 'formal')>> you met at work.
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_hucow"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_futa profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_futa', 'formal')>><br>
<hr><br>
<<switch $npc_futa.stage>>
<<case 1>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_futa","npc_futa_1")>><br>
<<case 2>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_futa","npc_futa_2")>><br>
<<case 3>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_futa","npc_futa_3")>><br>
<<case 4>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_futa","npc_futa_4")>><br>
<<case 5>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_futa","npc_futa_4")>><br>
<</switch>>
<<switch $npc_futa.stage>>
<<case 1>>
A shy, lonely girl you met at work.
<<case 2>>
A shy girl you met at work, though she seems to be coming out of her shell a bit...
<<case 3>>
A friend you made at work who has blossomed from a mousey, shy girl into a confident domme-in-training.
<<case 4 5>>
A friend at work who has gone from a shy, nervous girl into a confident woman ready to fuck with her large <<getWordPenis false>>.
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_futa"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_sexdoll profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_sexdoll', 'formal')>><br>
<hr><br>
<<switch $npc_sexdoll.stage>>
<<case 1>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sexdoll","npc_sexdoll_0")>><br>
<<case 2>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sexdoll","npc_sexdoll_1")>><br>
<<case 3>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sexdoll","npc_sexdoll_2")>><br>
<<case 4 5>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>><br>
<</switch>>
<<switch $npc_sexdoll.stage>>
<<case 1>>
A fellow employee you met on the elevator home down from work your first day as a <<if $fetish.sissy>>SISSI <</if>>Secretary.
<<case 2>>
A fellow employee you met on the elevator home down from work your first day as a <<if $fetish.sissy>>SISSI <</if>>Secretary. Since your first meeting he's undergone some changes, growing out his hair and losing his previous scruffiness.
<<case 3>>
A fellow employee you met on the elevator home down from work your first day as a <<if $fetish.sissy>>SISSI <</if>>Secretary. Since your first meeting she's undergone quite the transformation, adopting a feminine name and feminine well... everything.
<<case 4 5>>
A fellow employee you met on the elevator home down from work your first day as a <<if $fetish.sissy>>SISSI <</if>>Secretary. Since your first meeting she's come into her own, no longer a scruffy dude, but becoming an insatiable sex-pot horny slut.
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_sexdoll"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_poker_intro_slave profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_poker_intro_slave', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
A fellow executive assistant, she works for and seems both loyal to, and infatuated with, her boss, <<=setup.getNpcName("npc_pokerman","formal")>>.<br>
<br>
[[[back|goProfiles]]]/*#
#desc: npc_party_waitress profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_party_waitress', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">><br>
<<switch $npc_party_waitress.stage>>
<<case 1>>
The "guy" who harassed you at your first visit to the after-work party, paying for his error by working as a waitress.
<<case 2>>
The "guy" who harassed you at your first visit to the after-work party, paying for his error by working as a waitress. A bit of encouragement from you seems to have him considering making it something more than a temporary arrangement.
<<case 3>>
A waitress at the after work party. Initially tasked with working at the party as punishment for harassing you, your encouragement has helped him resist the temptation of the new role.
<<case 4>>
A waitress at the after work party. Initially tasked with working at the party as punishment for harassing you, your encouragement has helped her embrace the new role.
<<case 5>>
A happy waitress the after work party, living her dream thanks to a bit of encouragement from yourself.
<</switch>>
<br><br>
[[[back|goProfiles]]]/*#
#desc: npc_pokerman profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_pokerman', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/poker_room.png" setup.charImageGeneric("npc_pokerman","man")>><br>
Head of the New Products division at Social Interaction Service Syndicate Inc. Really enjoys playing poker.<br>
<br>
[[[back|goProfiles]]]/*#
#desc: npc_pokergirl profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_pokergirl', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/poker_room.png" "woman">><br>
<<if $npc_pokergirl.flags.know_drone>>
Assistant to <<=setup.getNpcName("npc_pokercheater","formal")>> who cheats at poker, wants to be turned into a drone.
<<else>>
A lusty poker player. Despite seeming almost constantly distracted she plays strangely well.
<</if>>
<br><br>
[[[back|goProfiles]]]/*#
#desc: npc_pokergirl profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_pokercheater', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/poker_room.png" setup.charImage("npc_pokercheater")>><br>
A researcher in the robotics and artificial intelligence division. Uses <<=setup.getNpcName("npc_pokergirl","formal")>> to cheat at poker.<br>
<br>
[[[back|goProfiles]]]/*#
#desc: npc_martial_arts profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>><br>
The instructor for the various martial arts classes at the gym. She teaches everything from cardio kickboxing to advanced Karate and Brazilian Jiu Jitsu.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_martial_arts"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_swolebro profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_swolebro', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>><br>
A swole <<if $npc_swolebro.fem>>girl<<else>>dude<</if>> that you met at the gym, always down to pump out some reps, <<=$npc_swolebro.bro>>!<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_swolebro"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_fit_bimbo profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_fit_bimbo', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>><br>
A bubbly, strong, sexy bimbo you met at the gym.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_fit_bimbo"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_cat profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_cat', 'first')>><br>
<hr><br>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_cat","npc_cat_3")>><br>
<<switch $npc_cat.stage>>
<<case 1>>
A cute cat you found in an alleyway. Friendly, but a little skittish.
<<case 2>>
The cute cat that deigns to live with, and snuggle you.
<</switch>>
<br><br>
<<printReputation 'npc_cat' 'first' '<<=setup.getNpcName("npc_cat", "first")>> is'>><br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_cat"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_dog profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_dog', 'first')>><br>
<hr><br>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>><br>
<<switch $npc_dog.stage>>
<<case 1>>
An eager stray that fucked you on the street, and then followed you home.
<<case 2>>
Your pack-master, protector and the Alpha of your flat.
<</switch>>
<br><br>
<<if $npc_dog.stage >= 3>>
<<printReputation 'npc_dog' 'first' 'Your Alpha is'>>
<<else>>
<<printReputation 'npc_dog' 'first' '<<=setup.getNpcName("npc_dog", "first")>> is'>>
<</if>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_dog"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_barber profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_barber', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>><br>
The owner/operator of Dye Me Crazy: Beauty Parlour in the mall, your long time barber/stylist.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_barber"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_butler profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_butler', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler")>><br>
The owner/operator of the Cafe Newtype Maid Cafe in the mall.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_butler"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_chuck profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_chuck', 'suffix')>><br>
<hr><br>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage()>><br>
<<switch $npc_chuck.stage>>
<<case 0>>
Your pet plant, a cheery source or relaxation that only wants a bit of water.
<<case 1>>
Your leafy friend is all grown up and safely transplanted into a big new pot.
<<case 2>>
"Special" feeding has helped your leafy friend grow fast, but <<he npc_chuck>> seems hungry for more.
<<case 3>>
Your leafy friend looks all grown up, and eager to show you appreciation for your care.
<<case 4>>
Your leafy friend is all grown up and eager to fuck.
<<default>>
ERROR: unexpected npc_chuck.stage <<=$npc_chuck.stage>>
<</switch>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_chuck"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_botanist profile
#status: FINISHED 0.8.0.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_botanist', 'first')>><br>
<hr><br>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>><br>
The owner/operator of <<printShopName 'plant_shop'>> near the mall.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_botanist"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_egg profile
#status: FINISHED 0.8.4.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_egg', 'first')>><br>
<hr><br>
<<switch $npc_egg.stage>>
<<case 1>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.charImage("npc_egg","npc_egg_1")>>
<<case 2>>
<<createAdvBGR "./images/locations/egg_living_room_dirty.png" setup.charImage("npc_egg","npc_egg_1")>>
<<case 3>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.charImage("npc_egg","npc_egg_1")>>
<<case 4>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.charImage("npc_egg","npc_egg_2")>>
<<case 5>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.charImage("npc_egg","npc_egg_2_nomakeup")>>
<<case 6 7>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.charImage("npc_egg","npc_egg_2")>>
<<case 8 9>>
<<createAdvBGR "./images/locations/egg_living_room_clean.png" setup.charImage("npc_egg","npc_egg_3_maid")>>
<<default>>
ERROR: unexpected npc_egg.stage <<=$npc_egg.stage>>
<</switch>>
<br>
<<switch $npc_egg.stage>>
<<case 1>>
A shy, and untidy, tenant in your building whose flat you have been tasked with cleaning.
<<case 2>>
A shy and nerdy tenant in your building whose flat you have been tasked with cleaning. You have recently confronted them about panties you found in their laundry.
<<case 3>>
A shy and nerdy tenant in your building whose flat you have been tasked with cleaning. After confronting them about finding panties in their laundry you have bonded over helping them get past a troublesome boss in the videogame Opaque Anima.
<<case 4>>
A shy and nerdy tenant in your building whose flat you have been tasked with cleaning. Between finding panties in their laundry and a maid outfit in their closet, their egg is starting to crack...
<<case 5 6>>
A shy and nerdy tenant in your building whose flat you have been tasked with cleaning. They've started to embrace their femininity, and you've even helped them with makeup.
<<case 7>>
A shy and nerdy tenant in your building whose flat you have been tasked with cleaning. Now that they've embraced their femininity, they've taken a renewed interest in "properly" cleaning their flat — complete with an oh-so-cute maid's outfit.
<<case 8 9>>
A sweet tenant in your building whom you have helped to hatch into a cute girl, and whose flat you occasionally help clean.
<<default>>
ERROR: unexpected npc_egg.stage <<=$npc_egg.stage>>
<</switch>>
<br><br>
<<printReputation 'npc_egg' 'first' '<<He npc_egg>> is'>><br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_egg"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_guard profile
#status: FINISHED 0.8.4.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_guard', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_guard","npc_guard_security")>><br>
A security guard at Social Interaction Service Syndicate Inc. who
<<if $npc_guard.flags.totalWorkouts > 0>>
you sometimes workout with on weekends.
<<elseif $npc_guard.flags.gym_encounter>>
also goes to your gym.
<<elseif $npc_guard.flags.gym_intro>>
introduced you to the <<printShopName 'gym'>>.
<<elseif $npc_ai.flags.missions.connection>>
once gave you a VERY thorough inspection.
<</if>>
Strong and no-nonsense, she seems to have taken a liking to you.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_guard"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_sex_club profile
#status: FINISHED 0.8.5.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_sex_club', 'formal')>><br>
<hr><br>
<<if $npc_sex_club.flags.gimp>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<</if>>
The owner and proprietor of <<printShopName 'sex_club'>>,
<<if $npc_sex_club.flags.gimp>>
appears to be a full-on switch, as you have met them both in full gimp attire, and in suave dom mode, lording over their kinky domain.
<<else>>
seems very dominant, the theatrical lord of their kinky domain.
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other','theme_manager_bonus_sex_club', 'privatethemes')>>
<<if _themeId != -1 && $npc_manager.privatethemes.other[_themeId].done>>
Has some history with <<=setup.getNpcName("npc_manager","formal")>> in that <<he npc_sex_club>> used to refer to the company prospective employees with temperaments appropriate for the more extreme goings-on therein... the recent period where <<his npc_sex_club>> club was closed due to a run-in with <<=setup.getNpcName("npc_boss","formal")>> due to unwillingness to be more aggressive with such recruitment.
<</if>>
<br><br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_sex_club"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_primrose profile
#status: FINISHED 0.8.5.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_primrose', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/primrose_lab.png" setup.getPrimroseImage("lab")>>
A scientist working in the same building as you. <<He npc_primrose>> is continuing <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> work for <<=setup.getNpcName("npc_boss","formal")>>
<<switch $npc_primrose.stage>>
<<case 0 1>>
You were pulled into helping <<him npc_primrose>> with an experiment.
<<case 2>>
You've run into <<him npc_primrose>> more than once around the office, <<he npc_primrose>> seems as enthusiastic as <<he npc_primrose>> is busy, though <<he npc_primrose>> invited you to come by... if you could only remember where <<his npc_primrose>> office is.
<<case 3>>
You've learned the location of <<he npc_primrose>> office and spent some time getting to know <<he npc_primrose>> better. Despite <<his npc_primrose>> enthusiastic, and borderline bimbofied affect, <<he npc_primrose>> appears to be both smart and utterly dedicated to <<his npc_primrose>> work for the company.
<<case 4>>
You've helped <<him npc_primrose>> with <<his npc_primrose>> work more than once.
<<case 5>>
With your help, <<his npc_primrose>> work has found funding through <<=setup.getNpcName("npc_pr_sissy","formal")>>.
<<default>>
ERROR: unexpected npc_primrose.stage <<=$npc_primrose.stage>>
<</switch>>
<br><br>
<<printReputation 'npc_primrose' 'formal' '<<He npc_primrose>> is'>><br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_primrose"]]]<br>
[[[back|goProfiles]]]/*#
#desc: npc_evil_nurse profile
#status: FINISHED 0.8.8.0
#*/
<<run UI.unstow()>><<run jQuery("#ui-bar-toggle").css("display", "block")>><<run jQuery("#passages").css("max-width", "54em")>><<run _prev>>
<<=setup.getNpcName('npc_primrose', 'formal')>><br>
<hr><br>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_evil_nurse")>>
A nurse who works under <<=setup.getNpcName("npc_work_doctor","formal")>>. Sadistic and cruel she seems to take delight in tormenting her "patients," purporting to treat them while seeming more focused on their torture, while being similarly addicted to bondage and pain herself.<br>
<br>
[[[Concept Art|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter = "npc_evil_nurse"]]]<br>
[[[back|goProfiles]]]/*#
#desc: refuse first therapy
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bristle at the offer to stay for so-called "therapy" — filling out that bizarre assessment may have been a condition of your employment, but you don't need to stick around for some useless therapy session.<br>
<br>
<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> friendly demeanor slips and she frowns. "@@.npc_psychiatrist;You appear to have quite the negative opinion of therapy, which is quite unfortunate. I know my profession can be sensationalised and such, but all I am trying to do is help. This anger you are expressing... well, wouldn't you be happier if you didn't feel this way? If you could embrace new experiences and opportunities in a positive manner, rather than this reflexive hostility? Even if we ignore the inappropriateness of your outburst, consider of your new job, couldn't you benefit from a more positive perspective to make the most of this opportunity?@@"<br>
<br>
[<<moveTo "event_psychiatrist_first_cruel_2" "Maybe she has a point..." 300 "<<set $scene.resist=false>>">>]<br>
[<<moveTo "event_psychiatrist_first_cruel_2" "Fuck no, and fuck her!" 300 "<<set $scene.resist=true>>">>] <<hint $options "First impressions matter, being so rude could have consequences (will enable Cruel Therapist mode).">>
</div>/*#
#desc: refuse first therapy: cruel trigger
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.resist>>
<<setThreshold 'bondage' 'pre_hypnosis_bondage' 'bondage_chair'>>
<<applyExperience 'bondage' 7 'normal' $SEEN_FRIEND>>
<<set $npc_psychiatrist.flags.cruel = true>>
<<else>>
<<applyExperience 'submission' 5 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> frown deepens as her hand slips under her desk. In an instant straps shoot over your body, first binding you to the chair by the waist and chest, followed moments later by similarly tight restraints on your legs. In surprised panic you reach to try to free yourself, only for a pair of arms to grab your wrists and pull them tight to your sides.<br>
<br>
<<printThought "What the hell?">><br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> stares back at you, hand still clearly ready on whatever diabolical controls she just used to restrain you... maybe talking back wasn't the best idea?<br>
<br>
[<<moveTo "event_psychiatrist_first_cruel_3" "Screw this, tell her to let you go!" 300 "<<set $scene.resist=true>>">>]<br>
[<<moveTo "event_psychiatrist_first_cruel_3" "Maybe your mouth has gotten you into enough trouble..." 300 "<<set $scene.resist=false>>">>]<br>
<<else>>
You realise that you were being a bit hostile and you try to relax, apologising for your outburst and agreeing to stick around for a session.<br>
<br>
<<printThought "After all, it's free, what could it hurt? Her job, and professional obligation, is to help me, after all..">><br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;A much better attitude, so, let us begin...@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Choose your topic.' 660>>]
<</if>>
</div>/*#
#desc: refuse first therapy: cruel trigger
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.resist>>
<<setThreshold 'bondage' 'pre_hypnosis_bondage' 'bondage_therapy'>>
<<applyExperience 'bondage' 7 'normal' $SEEN_FRIEND>>
<<addItem "card_psychiatrist">>
<<include "addPsychiatristEndless">>
<<else>>
<<applyExperience 'submission' 5 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
You start to mouth off some more only for another arm to take advantage and shove a large gag into your mouth. The gag swells until your jaw is aching and you are unable to let out the slightest peep, silent, helpless, and bound to the chair.<br>
<br>
"@@.npc_psychiatrist;Well!@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with a note of exasperation. "@@.npc_psychiatrist;I had hoped that we might have a nice productive session... but it would seem that you are what we refer to as a "problem patient." No matter... as you can see, I am prepared for this sort of thing, and I believe one of my other projects would be just the thing to get you in a more... useful head-space.@@"<br>
<br>
You strain against the bonds as she walks over, your chair rising up a couple of centimetres and as you realise that it is on wheels and a hidden door opens in front of you.<br>
<br>
"@@.npc_psychiatrist;Yes, a bit of my experimental therapy is just what you need, if you would kindly sign this NDA...@@" she states, placing a pen in your bound hand and holding the paper in front of it.<br>
<br>
You stare at her in fear but she only smiles wider... and then tucks a business card in with your things. "@@.npc_psychiatrist;Oh, and, since you are obviously quite a... troubled patient, I will go ahead and schedule you for an appointment next week, and feel free to call if you have any... concerns, in the meantime. Now, however, well... we have work to do, mmm?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_sign' 'Sign the NDA for <<=setup.getNpcName("npc_psychiatrist", "formal")>>.' 120 "<<set $scene.money=false>><<set $scene.strict=true>>">>]<br>
<<if $fetish.hypnosis>>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_notsign_forced' 'Take a deep breath and decline once again.' 180>>]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_notsign' 'Take a deep breath and decline once again.' 180>>]
<</if>>
<<else>>
Bound and helpless you come to the conclusion that silence is propably the safer option. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> waits several moments to be sure your outbursts are at an end before bringing her hand back on top of the desk and away from the controls for your binds... though with you remaining restrained.<br>
<br>
"@@.npc_psychiatrist;Much better. It would seem that you are the sort who benefits from a bit of assistance to be able to open up in therapy. Now that you are more comfortably situated I think we can proceed as planned. So, what would you like to talk about for the rest of the session?@@"<br>
<br>
<<printThought "<<getWordGod>>, she's serious about this!">><br>
<br>
When you do not immediately speak <<=setup.getNpcName('npc_psychiatrist', 'formal')>> clicks her tongue. "@@.npc_psychiatrist;Come on, now, I know you have something of concern to bring up — bind the body, free the mind, you can say anything you want within these walls, I am merely here to provide what assistance and advise I can...@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Choose your topic.' 660>>]
<</if>>
</div>/*#
#desc: failed to show up for the psychiatrist, but after the first, mandatory.
#status: FINISHED 0.5.0.6
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != "object">>
<<addItem "straightjacket_medical">>
<<wearItem "straightjacket_medical" true>>
<<if $scene.atHome>>
<<applyExperience 'bondage' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 10 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bondage' 10 'normal' $EXPOSED>>
<<applyExperience 'submission' 10 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.atHome>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" "cop_fem">>
<<else>>
<<createAdvBGR "" "cop_fem">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'quiet'>>
Your shoulders slump and you nod meekly. What would be the point in resisting?
<<case 'object'>>
You start to raise an objection and the officer's pleasant mood starts to dissolve. "@@.generic_female1;Look, are we going to have a problem? I'm just doing my job. If you have an issue, you need to bring it up with your therapist, or the courts, but right now I'm to deliver you to your appointment and I WILL do my duty.@@"<br>
<br>
<<if $scene.first>>
<<if $scene.atHome>>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Slam the door in their face." 600 "<<set $scene.action='slam'>><<set $scene.first=true>>">>]
<<else>>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Slam the door in their face." 600 "<<set $scene.action='run'>><<set $scene.first=true>>">>]
<</if>>
<<else>>
<<if $scene.atHome>>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Slam the door in their face." 600 "<<set $scene.action='slam'>><<set $scene.first=false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Slam the door in their face." 600 "<<set $scene.action='run'>><<set $scene.first=false>>">>]
<</if>>
<</if>>
<<case 'slam'>>
You try to slam the door but the officer blocks it with one hand, while their other hits you with an electric prod that sends you to the ground.<br>
<br>
You twitch helplessly as they stand over you for a moment, giving you another jolt with a sigh for good measure before moving your limp body around and pulling your limbs into a straitjacket.<br>
<br>
Unable to move, you watch
<<if $scene.atHome>>
as, up the hall, another tenant steps out of their flat and looks on with curiosity at your humiliation.
<<else>>
as onlookers stare on at your humiliation.
<</if>>
<<case 'run'>>
You turn to run, but barely get more than a couple steps before electricity is running through your body. Your body stops obeying your commands and you fall to the floor, the officer giving you another jolt from the taser before turning you over and pulling you into a straitjacket.<br>
<br>
Unable to move, you watch
<<if $scene.atHome>>
as, up the hall, another tenant steps out of their flat and looks on with curiosity at your humiliation.
<<else>>
as onlookers stare on at your humiliation.
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != "object">>
<<if $scene.first>>
"@@.generic_female1;Nothing to be concerned about,@@" the officer calls out, "@@.generic_female1;just go about your day, everything is under control.@@"<br>
<br>
"Under control" is certainly right, as the officer pulls every buckle as tight as it will go, finishing off with a crotch-strap that sees her lift you off the ground as it digs in between your legs<<if setup.checkItemTypeWorn("plug")>>, and forces you plug deeper into your rear<</if>>. Even if you could dislocate your shoulders or something there's no way you're getting out of this restraint without assistance.<br>
<br>
A muzzle/gag and a pair of ankle cuffs serves to complete the "asylum chic" look and then the officer is leading you down to their patrol car, belting you in tight in the back seat for the short drive to <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office.
<<else>>
As brutal and efficient as always, the officer buckles you into the straitjacket, showing no mercy as they tighten every strap, particularly the heavy one between your legs that truly "seals" your fate. Though you are certainly quite helpless they do not deviate from procedure, clamping on your leg irons and the silencing mask/gag. You are almost glad when the mask goes on to grant a degree of privacy, but you can still feel the eyes of onlookers burning into you as the officer leads you down to their vehicle.<br>
<br>
Rather than the back seat, they grant you the comparative "freedom" of merely riding shotgun... though this proves to come at its own price as they spend the ride with one hand groping your helpless breasts, chuckling at your wriggling moans.<br>
<br>
"@@.generic_female1;You know they say not to fuck crazy... but you're cute enough I might give it a try... if the circumstances were only a bit different. As it is, well... you have an appointment to make.@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_forced_therapy_2" 'Arrive at <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> office...' 180>>]
<</if>>
</div>/*#
#desc: strapped in for forced therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.forcedTherapy = true>>
<<include "startPsychSession">>
<<applyExperience 'bondage' 15 'normal' $SEEN_FRIEND>>
<<removeItem "straightjacket_medical" true>>
<<deleteItem "straightjacket_medical">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You pull up in front of <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> and the policewoman half drags you out of the vehicle, marching you into the office where <<=setup.getNpcName('npc_psychiatrist', 'formal')>> guides you in with a sigh, thanking the officer for their time before dismissing them and strapping you into your seat, "transport" restraints removed, but with you no less restricted thanks to the thick straps holding you to the chair.<br>
<br>
<<if $scene.first>>
"@@.npc_psychiatrist;So,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with a sigh after you are fully secured, "@@.npc_psychiatrist;I imagine you are wondering how this all happened. Well, you see, your superior is quite determined that you receive full and "proper" treatment and, well... our little sessions are, in the eyes of the law, court-mandated.@@"<br>
<br>
A fresh jolt of fear shoots through you at this revelation. Sure, the company was powerful, but this? You reflexively ask how <<=setup.getNpcName('npc_manager', 'formal')>> could have legally justified something like this...<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName('npc_manager', 'other')>>? No, this is a bit higher up than that,@@" she pauses, looking nervous for a moment as you get the feeling that she may have said something you weren't supposed to know. "@@.npc_psychiatrist;Never you mind all of that, we have a session to get to. Though, first, of course, is the matter of payment...@@"
<<else>>
"@@.npc_psychiatrist;Again, you resist.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with a sigh after you are fully secured, "@@.npc_psychiatrist;would it not be simpler to just arrive for your appointment as scheduled? It is for your own good, as well as being mandated, and you should know by now that the rewards that come from obedience are far superior to the punishments that are visited upon the rebellious.@@" Her gaze lingers on you for a moment and then she returns to the seat behind her desk. Let us proceed to your session. "@@.npc_psychiatrist;If you would kindly pay, we can get started...@@"
<</if>>
<br><br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_pay_session" "Pay for a session." 120 '<<set $scene.pay = true>>'>>]<br>
<<else>>
[@@.link_locked;You do not have enough money to pay for a session.@@]<br>
<</if>>
<<if $npc_psychiatrist.flags.cruel>>
[<<moveTo "event_psychiatrist_forced_pay_intro_1" "You are not going to pay for something she is forcing on you!" 120>>]<br>
<<else>>
[<<moveTo "event_psychiatrist_pay_session" "Do not pay for a session." 120 '<<set $scene.pay = false>>'>>]<br>
<</if>>
</div>/*#
#desc: fail to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.forcePay == 1 && !($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
<<set $scene.forcePay = 0>>
<<else>>
<<set $scene.forcePay = $npc_psychiatrist.flags.forcePay>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain that you aren't going to pay for forced therapy and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns.<br>
<br>
<<switch $scene.forcePay>>
<<case 0>>
"@@.npc_psychiatrist;I could merely deduct the cost from your account, pushing you into debt, if need be... but, no, I think I have a better solution, a bit of working therapy.@@" She slides back from her desk and spreads her legs. "@@.npc_psychiatrist;Well come on then, you've heard of talk therapy? Well this is basically the same thing, only your mouth is doing something more useful than blabbering on...@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_1_blow_1" 'Crawl over and "earn" your session.' 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_forced_pay_1_blow_1" 'Refuse!' 180 "<<set $scene.accept=false>>">>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<<case 1>>
"@@.npc_psychiatrist;Again? I would advise you to be more diligent with your finances, or perhaps you are being frugal and think a few minutes between my legs is worth saving a few credits... well, we shall see about that. Your prior efforts... well, that was a bit of an introductory discount. As much as I enjoy putting filling your mouth... since you couldn't today's toll will be paid in ass. Bend over my desk and spread those cheeks.@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1" 'Bend over...' 180>>]<br>
<<if $player.body_ref.vagina>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_1" 'Offer to spread your legs for her, instead.' 180>>]<br>
<</if>>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_penis_1" 'Maybe you could fuck her?' 180>>]<br>
<</if>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1_abort" 'Refuse!' 180>>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<<case 2>>
"@@.npc_psychiatrist;Yet again? I almost wonder if this "inability" to pay is some strange way of coming on to me... unfortunately we do not have time to dig into that at present. In fact, there was a slight scheduling issue and I am double-booked, but if you could assist in treatment of the other patient, well... that should cover your debt and we will proceed with your session.@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_1" 'Listen to what you need to do.' 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_1" 'Refuse!' 180 "<<set $scene.accept=false>>">>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<<default>>
"@@.npc_psychiatrist;Yet again? Well, you know the drill by now — you will assist me in treating another patient. In exchange, I shall wave my fee for today's treatment.@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_repeat_1" 'Accept her proposal.' 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_repeat_1" 'Refuse!' 180 "<<set $scene.accept=false>>">>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<</switch>>
</div>/*#
#desc: pay for therapy visit after trying not to
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_psychiatrist' 1>>
<<addCredits `-$npc_psychiatrist.flags.sessionPrice`>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You sheepishly produce the credits to cover the day's session as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> squints at you in annoyance.<br>
<br>
"@@.npc_psychiatrist;First you refuse to pay... and now you shirk a potential opportunity? Very disappointing still, you have paid for your session, and so I will provide what guidance I can... even if I think what you NEED is to stop pussyfooting around and embrace saying yes a bit more often.@@"<br>
<br>
She takes your credits and sits down behind her desk, gesturing for you to take a seat.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_listofthemes" "Take a seat to start the session." 180 '<<include "startPsychSession">>'>>]
</div>/*#
#desc: blow therapist to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You start to walk around the desk only for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to shake her head. "@@.npc_psychiatrist;Have you no sense of decorum? Just because you are doing this to cover the expense of your therapy is no reason to be sloppy. Now crawl over here and do a proper job. I have had quite the busy day and I made this offer looking for relief, not an annoyance.@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_1_blow_2" 'Do as she instructs.' 180>>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<<else>>
You stand your ground — you aren't going to perform oral sex for a therapy appointment<<if $scene.forcedTherapy>>, especially one you're being forced to take<</if>>! That's crazy!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> waits a moment for you to change your mind, and then closes her legs and rises to her feet with a frown. "@@.npc_psychiatrist;Continuing to be difficult, hmm? Well you do need therapy, but I am not one to work for free... it is a less personalised solution, but I think a spell in one of my virtual simulations might help to get you back on track with your development. Would you kindly come along...@@"<br>
<br>
<<include "therapyForcePayVR">>
<</if>>
</div>/*#
#desc: blow therapist to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.virgin.blowjob>>
<<if $scene.first>>
<<set $player.virgin.blowjob = 'npc_gloryhole'>>
<</if>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "money">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<<set $npc_psychiatrist.flags.forcePay += 1>>
<<applyExperience 'oral' $npc_psychiatrist.penissize 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You are half on auto-pilot... is this really what "therapy" is about? Sucking off your therapist to save a few credits like some sort of whore... and yet, you obey...
<</if>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> stares intently as you slide to your knees and crawl around the desk. By the time you've made it to her chair she has spread her legs and hiked up her skirt to expose her very slightly bulging panties.<br>
<br>
You kneel between her legs and peel back her panties to reveal a small, cute girl-peen. "@@.npc_psychiatrist;Your job is to suck it, not stare at it,@@" she reminds you and you lean in.<br>
<br>
While stiff, her skin itself is soft. Clean and deliciously feminine with a tender mouthfeel that has your tongue curling and licking with excitement.<br>
<br>
"@@.npc_psychiatrist;Mmm, you're a natural at this...@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> whispers as she gently strokes your hair.<br>
<br>
You shudder, continuing to suck as a distraction from saying anything in response as your mind spins.<br>
<br>
<<printThought "Maybe it's a good thing I'm already here for therapy. It feels like I suddenly have quite the mouthful to talk about...">><br>
<br>
In the choice between the task at hand and the distraction of your thoughts you find it easier to focus on the former... though you blush when an eager head-bob causes the tip of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> <<getWordPenis false>> to brush the back of your throat and elicit a reflexive moan.<br>
<br>
You freeze and look up only for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to smile back down. "@@.npc_psychiatrist;Don't stop. You're doing such a good job being a <<if $fetish.sissy>>sissy <</if>>cock-sucking whore. Embrace it, it's a wonderful thing to be...@@"<br>
<br>
Your heart thumps harder as she guides your head to resume bobbing up and down. As confused as you may be, you can't stop, her taste and feel strangely addictive and you go along obediently until, a few moments later, she cums<<if $fetish.cum>>, thin, delicate girl juices spraying across the roof of your mouth<</if>> and you lick her clean.<br>
<br>
"@@.npc_psychiatrist;Very good. Now you have earned your session, if you would kindly take your seat?@@"<br>
<br>
You rise to your feet and obediently walk around the desk. By the time you turn back she is seated formally, and you could almost think what just happened was a dream... if not for the lingering taste in your mouth, and the sly smile at the corner of her lips...<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_listofthemes" "Take a seat to start the session." 180 '<<include "startPsychSession">>'>>]
</div>There's something in her voice and you find yourself unable to resist as she leads you into the changing room...<br>
<br>
<<if !_removeString>><<set _removeString = "">><</if>>
<<if State.hasPlayed("event_psychiatrist_cruel_vr_1")>>
[<<moveTo "event_psychiatrist_cruel_vr_n" 'Continue.' 180 _removeString>>]
<<else>>
[<<moveTo "event_psychiatrist_cruel_vr_1" 'Continue.' 180 _removeString>>]
<</if>>/*#
#desc: fuck therapist to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.forcePay += 1>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' $npc_psychiatrist.penissize 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> watches silently as you walk up to her desk and bend over.<br>
<br>
"@@.npc_psychiatrist;Very good, such obedience, and acceptance of fixing your mistakes, is a good sign for your development.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states as she moves behind you and exposes your rear.<br>
<br>
<<if $scene.removePlug>>
"@@.npc_psychiatrist;Nicely plugged, such a good habit to be in to remain trained and ready lest a hard impromptu fucking cause injury.@@" She notes as she slides the plug out of your rear.<br>
<br>
"@@.npc_psychiatrist;Not that I am liable to strain your capabilities... though I expect you to remain tight and pleasurable. Just because you dream of being a size Queen does not mean you can forgo your responsibility to serve cocks of ALL shapes and sizes.@@"
<<elseif setup.checkItemTypeWorn("plug")>>
"@@.npc_psychiatrist;A hollow plug? Very respectable as a way to remain ready for use at all times. And those of us of more modest dimensions appreciate the courtesy in tightening yourself up even after you have embraced full size-Queen affectations.@@"
<<else>>
"@@.npc_psychiatrist;Unplugged? A disappointment. @@" She notes as she fingers your rear.
<</if>>
<br><br>
You feel her spit in your rear and her thumb slides into you as she rubs it around. "@@.npc_psychiatrist;That should be plenty of lube for a butt-slut like yourself.@@" She notes before taking you with a single smooth thrust.<br>
<br>
"@@.npc_psychiatrist;Tighten up, <<if $fetish.sissy>>sissy<<else>>slut<</if>>,@@" she commands, giving your rear a swat before grabbing you by the hips and establishing a rhythm of short, quick strokes. "@@.npc_psychiatrist;Heh, listen to you gasp, I should charge you for this as part of your therapy, you definitely sound like you needed it, hmm?@@"<br>
<br>
She's stronger than you would have imagined as she bounces you against the desk and you moan, only spurring her faster. "@@.npc_psychiatrist;Hah, you are getting off on this! Something to dig into in our session... and for you to remember afterwards. Happiness comes from fully embracing your role in the world, and your role is to be a <<if $fetish.cum>>cum-filled <</if>><<if $fetish.sissy>>sissy<<else>>submissive<</if>> slut.@@"<br>
<br>
She punctuates her words with hard thrusts, finishing off with a jerking orgasm that almost makes you climax yourself.<br>
<br>
"@@.npc_psychiatrist;Excellent,@@" she states,<<if $fetish.cum>> holding in position to finish dumping her load in your rear <</if>>as you lay panting on the desk before finally stepping away and moving back behind her desk.<br>
<br>
<<if $scene.removePlug>>
[<<moveTo "event_psychiatrist_1stsession_listofthemes" "You gasp as she re-inserts your plug. You take a seat to start the session." 180 "<<wearItem $scene.plug true>><<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]
<<else>>
[<<moveTo "event_psychiatrist_1stsession_listofthemes" "Take a seat to start the session." 180 '<<include "startPsychSession">>'>>]
<</if>>
</div>/*#
#desc: abort fuck therapist to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Blowing <<=setup.getNpcName('npc_psychiatrist', 'formal')>> was one thing, but you aren't going to let her fuck you for a therapy appointment<<if $scene.forcedTherapy>>, especially one you're being forced to take<</if>>! That's crazy!<br>
<br>
<<include "therapyForcePayVR">>
</div>/*#
#desc: offer vag fuck therapist to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask if <<=setup.getNpcName('npc_psychiatrist', 'formal')>> would like to avail herself of your vagina, instead and she smiles.<br>
<br>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
"@@.npc_psychiatrist;And let you out of that chastity belt? No... I think not, what sort of therapist would I be, aiding a prison break? Quite improper, especially when this is a case of you needing to cover the cost of your therapy! That would be like breaking you out to do a bank heist, preposterous!@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1" 'Bend over...' 180>>]<br>
<<if $player.virgin.vaginal>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_1_chastity" 'Insist that it is a medical necessity for her to unlock and fuck your cunny.' 180>>]<br>
<<else>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_1_chastity" 'Insist that it is a medical necessity for her to unlock and take your virginity.' 180>>]<br>
<</if>>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_penis_1" 'Maybe you could fuck her?' 180>>]<br>
<</if>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1_abort" 'Refuse!' 180>>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<<elseif !$player.virgin.vaginal>>
"@@.npc_psychiatrist;Quite the offer... especially since my records indicate that you are a virgin in such matters?@@" You can see the excitement in her eyes as she takes her time to compose a response. "@@.npc_psychiatrist;Selling your first time... yes, I believe that would be quite therapeutic for you, and help you more forward in a journey towards being an enthusiastic slut.@@"<br>
<br>
She stands and clears space on her desk. "@@.npc_psychiatrist;Hop on up here, dear, there is just enough time for a nice horizons-expanding quickie and then on to your session.@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_2_virgin_1" 'Do as instructed.' 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_2_virgin_1" 'You changed your mind.' 180 "<<set $scene.accept=false>>">>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<<else>>
"@@.npc_psychiatrist;Hmm... yes, I suppose that is acceptable. After all, you went to all the trouble to get a lovely cunny for yourself, surely it is worth using.@@"<br>
<br>
<br>
She stands and clears space on her desk. "@@.npc_psychiatrist;Hop on up here, dear, there is just enough time for a nice horizons-expanding quickie and then on to your session.@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_2" 'Do as instructed.' 180>>]<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_2_abort" 'You changed your mind.' 180>>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<</if>>
</div>/*#
#desc: therapist unlock vag to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You beg <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to take payment by unlocking your chastity belt
<<if $player.virgin.vaginal>>
to fuck you.<br>
<br>
Her expression wavers as you spread your legs in offering, doing everything that you can to convince her to invoke her medical authority.<br>
<br>
"@@.npc_psychiatrist;My my... you really are learning to be QUITE the slut... I suppose it is my medical duty to reinforce that behaviour. After all, fucking you to pay for your session, well... that's whoring yourself out...@@"<br>
<br>
<br>
She stands and clears space on her desk. "@@.npc_psychiatrist;Hop on up here, dear, there is just enough time for a nice horizons-expanding quickie and then on to your session.@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_2" 'Do as instructed.' 180>>]<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_2_abort" 'You changed your mind.' 180>>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<<else>>
and taking your virginity.<br>
<br>
"@@.npc_psychiatrist;Hmm, that is quite the offer, and one that does justify me to invoke my medical authority to temporarily unlock you.@@" You can see the excitement in her eyes as she takes her time to compose a further response. "@@.npc_psychiatrist;Selling your first time... yes, I believe that would be quite therapeutic for you, and help you more forward in a journey towards being an enthusiastic slut.@@"<br>
<br>
She stands and clears space on her desk. "@@.npc_psychiatrist;Hop on up here, dear, there is just enough time for a nice horizons-expanding quickie and then on to your session.@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_2_virgin_1" 'Do as instructed.' 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_2_virgin_1" 'You changed your mind.' 180 "<<set $scene.accept=false>>">>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<</if>>
</div>/*#
#desc: give vag virginity to therapist to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'whoring' 12 'unbelievable' $SEEN_FRIEND>>
<<if !$player.virgin.vaginal>>
<<set $player.virgin.vaginal = "npc_psychiatrist">>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_6'
0
'event_psychiatrist_session_vaginal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_vag'
0
'theme_church_confession_vag'
true
>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_psychiatrist">>
<</if>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "money">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "money">>
<</if>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You get up onto <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> desk and she moves in front of you, <<if $scene.removeCage>>, unlocking your belt and <</if>>spreading your thighs as her hard <<getWordPenis false>> twitches in anticipation.<br>
<br>
"@@.npc_psychiatrist;Your first time... I promise I shall not hurt you...@@"<br>
<br>
You bite your lip and gasp as she begins to press into you, your excitement having you wet as she saws back and forth and then, with startling ease, is inside of you.<br>
<br>
True to her word it doesn't hurt, fresh sensations running through you with each thrust and you close your eyes, only to feel her hand on your cheek.<br>
<br>
"@@.npc_psychiatrist;Open, my dear, I want you to watch, watch as your virginity disappears, watch how good and beautiful and natural it is for you to have a cock inside of you. You only have your first time the once, and I don't want you to forget it down the line. Someday, when you're ecstatically getting double penetrated I want you to look back and think how good it felt here and now, with just my little lady lance inside of you...@@"<br>
<br>
You gasp, and blush, and do as she says, looking down to see her making quick, short strokes, your excitement leaking out every time.<br>
<br>
She speeds up, and you can sense her orgasm approaching, a final thrust before she <<if $fetish.cum>>cums inside of you<<else>>climaxes<</if>>, your own orgasm elusive... and seemingly disregarded as she slides away leaving you twitching.<br>
<br>
"@@.npc_psychiatrist;Very nice, yes... I think that will do for covering the cost of your session, now fix your clothes and have a seat...@@"<br>
<br>
Your thighs are damp as you slide off the desk and stagger over to your chair.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_listofthemes" "Take a seat to start the session." 180 '<<if $scene.removeCage>><<include "replaceCage_extendSissyomatic">><</if>><<include "startPsychSession">>'>>]
<<else>>
Faced with losing your virginity in such a situation you balk and change your mind.<br>
<br>
"@@.npc_psychiatrist;Interesting... in any case, that still leaves the matter of paying for today's session...@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1" 'Bend over...' 180>>]<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_penis_1" 'Maybe you could fuck her?' 180>>]<br>
<</if>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1_abort" 'Refuse!' 180>>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
<</if>>
</div>/*#
#desc: vag sex to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'whoring' 7 'normal' $SEEN_FRIEND>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You get up onto <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> desk and she moves in front of you, <<if $scene.removeCage>>, unlocking your belt and <</if>>spreading your thighs as her hard <<getWordPenis false>> twitches in anticipation.<br>
<br>
"@@.npc_psychiatrist;That's a good slut. I wonder how much of your decision was for this, to be able to sell another hole...@@"<br>
<br>
You bite your lip and gasp as she slides into you, your excitement having you wet as her small <<getWordPenis false>> slips past your folds with ease. She may be small, but she doesn't lack for skill, grinding and thrusting against you as she takes her pleasure, hands on your hips almost pulling you off the desk as she jack-hammers in and out.<br>
<br>
"@@.npc_psychiatrist;Top grade <<if $fetish.sissy>>sissy <</if>>cunt.@@" She whispers, her words prompting your first climax as she softly chuckles without missing a beat. "@@.npc_psychiatrist;Such wanton lust... yes, I can feel it with every clench, in your every cute mew. You love this, love being treated like this...@@"<br>
<br>
You moan, too distracted by pleasure to notice her oncoming orgasm until she <<if $fetish.cum>>cums inside of you<<else>>climaxes<</if>> and steps away, leaving you twitching and still needy for more.<br>
<br>
"@@.npc_psychiatrist;Not bad. Yes... I think that will do for covering the cost of your session, now fix your clothes and have a seat...@@"<br>
<br>
Your thighs are damp as you slide off the desk and stagger over to your chair.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_listofthemes" "Take a seat to start the session." 180 '<<if $scene.removeCage>><<include "replaceCage_extendSissyomatic">><</if>><<include "startPsychSession">>'>>]
</div>/*#
#desc: abort vag sex to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You suddenly change your mind about spreading your legs to cover a therapy session. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns.<br>
<br>
"@@.npc_psychiatrist;Failing to follow through on an agreement? Very disappointing. In any case, that still leaves the matter of paying for today's session...@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1" 'Bend over...' 180>>]<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_penis_1" 'Maybe you could fuck her?' 180>>]<br>
<</if>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1_abort" 'Refuse!' 180>>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
</div>/*#
#desc: offer penis fuck therapist to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You counter-offer with you fucking <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and she smiles in amusement.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_psychiatrist;No... I think you are much better off locked in chastity<<if $fetish.sph && $player.body_ref.shrink_style != 'spe' && $player.body.penissize[0] < 3>>, and you are far too small to be of any use in such matters, anyway<</if>>. No, even ignoring all that, and what I am willing to take as payment, it would be far better for you to be bent over and practice being a proper <<if $fetish.sissy>>sissy<<else>>submissive<</if>> bitch and forget all about that thing locked between your legs.@@"<br>
<br>
<<else>>
"@@.npc_psychiatrist;No... I think not<<if $fetish.sph && $player.body_ref.shrink_style != 'spe' && $player.body.penissize[0] < 3>>, you are far too small to be of any use in such matters<</if>>. No, even ignoring what I am willing to take as payment, it would be far better for you to be bent over and practice being a proper <<if $fetish.sissy>>sissy<<else>>submissive<</if>> bitch and forget all about that thing locked between your legs.@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1" 'Bend over...' 180>>]<br>
<<if $player.body_ref.vagina>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_vag_1" 'Offer to spread your legs for her, instead.' 180>>]<br>
<</if>>
[<<moveTo "event_psychiatrist_forced_pay_2_fuck_1_abort" 'Refuse!' 180>>]<br>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_forced_pay_1_pay_1" 'Actually, just pay for the session.' 180>>]
<</if>>
</div>/*#
#desc: prepared to blow patient to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_psychiatrist.flags.forcePay += 1>>
<<addItem "blindfold_pink">>
<<set $player.cutscene.allowSpecific='blindfold'>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 3>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept && setup.checkItemTypeWorn("blindfold_pink")>>
<<moveTo "event_psychiatrist_forced_pay_3_help_2">>
<</if>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You agree to assist <<=setup.getNpcName('npc_psychiatrist', 'formal')>> with her other patient to cover the expense of your own session and she grins. "@@.npc_psychiatrist;Wonderful. I know this is technically a transactional operation, but I do appreciate you being willing to help. Your openness to offering yourself up in such matters, rather than clinging to silly, old-fashioned concepts of prudishness and limits, well... it just goes to show how much progress you have made in therapy.@@"<br>
<br>
She reaches into a drawer and presents you with a blindfold.
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_forced_pay_3_help_2" "Put on the blindfold." 180 "<<wearItem 'blindfold_pink' true>><<set $player.cutscene.allowSpecific=''>>">>]
<<else>>
<<hint $options "Use your inventory to put on the blindfold.">>
<</if>>
<<else>>
Sex with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> was one thing, but you aren't going to service some stranger for her to have a therapy session<<if $scene.forcedTherapy>>, especially one you're being forced to take<</if>>! That's crazy!<br>
<br>
<<include "therapyForcePayVR">>
<</if>>
</div>/*#
#desc: choose how to blow patient to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "headphones_pink">>
<<wearItem "headphones_pink" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You put on the blindfold as instructed, your hearing almost instantly becoming more acute allowing you to sense <<=setup.getNpcName('npc_psychiatrist', 'formal')>> walking around the desk to stand in front of you. She turns you around and guides you to kneel. You're pretty certain you're in front of the chair you normally sit in for therapy as your disorientation increases with the addition of a set of headphones.<br>
<br>
You are plunged into silence for a few moments before <<=setup.getNpcName('npc_psychiatrist', 'formal')>> voice comes through relayed through speakers in your headphones. "@@.npc_psychiatrist;As I said, patient confidentiality is a priority. This will keep you from hearing or seeing anything you should not, while leaving you free to provide the assistance in helping the patient relax that you are being "paid" for. Normally I would handle this patient personally, but your assistance should put them at ease while allowing me to fully focus on their therapeutic needs.@@"<br>
<br>
You feel her pat you on the head and then move away. You sit in helpless silence for a minute or so before a hand on the back of your head pushes you gently forward and you feel a semi-hard cock pressing against your face.<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_3" "Suck eagerly and get the patient off as fast as possible." 1800 "<<set $scene.action='orgasm'>>">>]<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_3" "Edge the patient." 1800 "<<set $scene.action='edge'>>">>]<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_3" "Do not perform fellatio." 180 "<<set $scene.action='abort'>>">>]
</div>/*#
#desc: blow patient to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == 'abort'>>
<<if $fetish.get_raped>>
<<addItem "ring_gag">>
<<wearItem "ring_gag" true>>
<<addItem "leather_wrist_cuffs">>
<<wearItem "leather_wrist_cuffs" true>>
<<applyExperience 'bondage' 8 'normal' $INCOGNITO>>
<</if>>
<<else>>
<<applyExperience 'submission' 8 'normal' $INCOGNITO>>
<<if $scene.action == 'edge'>>
<<applyExperience 'oral' 10 'very' $INCOGNITO>>
<<else>>
<<applyExperience 'oral' 10 'normal' $INCOGNITO>>
<</if>>
<<if $fetish.cum>>
<<applyExperience 'cum' 10 'normal' $INCOGNITO>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'orgasm'>>
You eagerly suck the cock in front of you, your skills and other senses heightened by your lack of sight or hearing as you deploy lips, tongue and fingers for an all-out assault that rapidly relieves the pent-up patient<<if $fetish.cum>>, and grants you a mouth-full of<<if setup.getTotalValue("cum") > 10>><<if setup.getTotalValue("cum") > 15>>delicious<<else>>tasty<</if>><<else>><<if setup.getTotalValue("cum") > 5>>salty, yet strangely alluring<<else>>bitter<</if>><</if>> <<getWordCum>><</if>>.<br>
<br>
You can feel the subject soften and relax as you continue to gently suck on their limp member for the remainder of the session.
<<case 'edge'>>
You every so gently wrap your lips around the cock in front of you, tenderly licking and softly sucking as you tease and torment, varying your efforts and even stopping completely on occasion as you hold them right at the edge until they're shifting in their chair, even thrusting their hips towards you in an effort to get that final bit of stimulation to tip them over into the climax you perpetually deny them.
<<case 'abort'>>
You shake your head and start to push away from the cock in your face. No sooner have you made that token act of resistance when
<<if $fetish.get_raped>>
your hands are pulled behind your back and cuffed. You start to cry out only for a gag to be shoved between your lips, your jaw unceremoniously spread wide before you are pushed forward, the ring gag sliding over the cock you are meant to serve, your choking sputters the only remnants of your disobedience as you are forced to perform your job as agreed.
<<else>>
you are drug to your feet and helplessly lead across the room...<br>
<br>
<<set _removeString = "<<removeItem 'blindfold_pink' true>><<deleteItem 'blindfold_pink'>><<removeItem 'headphones_pink' true>><<deleteItem 'headphones_pink'>><<removeItem 'ring_gag' true>><<deleteItem 'ring_gag'>><<removeItem 'leather_wrist_cuffs' true>><<deleteItem 'leather_wrist_cuffs'>>">>
<<include "therapyForcePayVR">>
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if !($scene.action == 'abort' && !$fetish.get_raped)>>
[<<moveTo "event_psychiatrist_forced_pay_3_help_4" "Continue." 180>>]
<</if>>
</div>/*#
#desc: finish blowing patient to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'blindfold_pink' true>>
<<deleteItem 'blindfold_pink'>>
<<removeItem 'headphones_pink' true>>
<<deleteItem 'headphones_pink'>>
<<if $scene.action == 'abort' && $fetish.get_raped>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<removeItem 'leather_wrist_cuffs' true>>
<<deleteItem 'leather_wrist_cuffs'>>
<</if>>
<<addCredits 20>>
<<applyExperience 'whoring' 5 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Your fellow patient slides free of your lips with you remaining completely ignorant as to their identity. A couple minutes pass in blind silence before you feel a hand on your head. Your headphones<<if $scene.action == 'abort' && $fetish.get_raped>>, restraints<</if>> and blindfold removed, you blink up at <<=setup.getNpcName('npc_psychiatrist', 'formal')>> as she helps you up into your seat and hands you a few credits.<br>
<br>
<<switch $scene.action>>
<<case 'orgasm'>>
"@@.npc_psychiatrist;Well done with the patient. You really helped clear their mind and set them up for a productive session. They insisted on leaving you a tip in appreciation.@@"
<<case 'edge'>>
"@@.npc_psychiatrist;Well done with the patience. Your tactic demonstrated excatly why having an assistant was useful — I was able to focus completely on their therapy while you kept the patient relaxed and aroused. I believe they had several mental breakthroughs that would not have been possible with a more conventional therapy session.@@"<br>
<br>
<<printThought "I guess, in her mind, being blown by your therapist at the start of a session is conventional?">>
<<case 'abort'>>
"@@.npc_psychiatrist;As you saw, I anticipated your reluctance, despite that hurdle your efforts proved just the ticket in providing your fellow patient an effective session. They even insisted on leaving you a tip for your efforts!@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
She walks back around her desk to her chair. "@@.npc_psychiatrist;Now that you have "paid" for your session, shall we discuss your progress?@@"<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_listofthemes" "Take a seat to start the session." 180 '<<include "startPsychSession">>'>>]
</div>/*#
#desc: serve patient to pay for therapy visit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<set _therapies = ["whip"]>>
<<if $fetish.cum>>
<<set _therapies.push("clean")>>
<</if>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_dog')>>
<<if $fetish.bestiality_hard && _themeId != -1 && $npc_psychiatrist.themes.other[_themeId].done > 0>>
<<set _therapies.push("dog")>>
<</if>>
<<if setup.getTotalValue("oral") > 15 && setup.getTotalValue("penis") > 15>>
<<set _therapies.push("large")>>
<</if>>
<<if $fetish.sph && $player.body_ref.shrink_style == "sph" && $player.body_ref.penis && $player.body.penissize[0] <= 3 && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
<<set _therapies.push("small")>>
<</if>>
<<set $scene.therapy = _therapies.random()>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod in acceptance of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> proposal and she smiles.<br>
<br>
<<switch $scene.therapy>>
<<case "whip">>
"@@.npc_psychiatrist;Lovely... if you would kindly head into the therapy room and remove your clothes, I will let the patient know that a spot has freed up in my schedule for some... special therapy.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_forced_pay_3_help_repeat_2_whip_1" "Take off your clothes." 180 "<<removeAllClothing>>">>]
<</if>>
<<case "clean">>
"@@.npc_psychiatrist;Wonderful, today I have a bit of a more mundane need.@@" She explains as she leads you into the changing room where she presents you with one of her VR plugsuits that is soaked with sweat within, and painted with cum without. "@@.npc_psychiatrist;As you can see a prior patient made quite the mess of their suit. Fortunately it was a VERY productive session... but, still, I need it clean before the next patient uses it. Obviously it is a very delicate piece of equipment, so I believe your tongue would be the best method. Get to it.@@"<br>
<br>
She turns away, locking the changing room behind her.<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_repeat_2_clean_1" "Start licking." 1800>>]
<<case "dog">>
"@@.npc_psychiatrist;To tell you the truth, I had already predicted this situation, what with your prior... challenges in making payment. I actually double booked things on the assumption that you would be able to assist with providing... entertainment while the patient has their session.@@"<br>
<br>
As she finishes speaking there is a knock on the door. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> opens the door to reveal a nervous looking <<if $options.fem>>woman<<else>>man<</if>>... and a VERY large dog.<br>
<br>
"@@.npc_psychiatrist;This is Woofers,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> explains as she hands you the dog's leash. "@@.npc_psychiatrist;He is a very effective emotional support animal, but, well... we are focusing on one on one sessions as we work through some things. If you would kindly keep Woofers occupied... or, should I say, let him occupy you, well, that should cover the expense of your subsequent session.@@"<br>
<br>
You blink in surprise as Woofers leads you into a side room, his owner casting a final glance after you before the door closes and you are left alone with the large dog... who is now looking at you with very definite intent...<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_repeat_2_dog_1" "Provide woofers some relief." 1800>>]
<<case "large">>
"@@.npc_psychiatrist;So the task I have for you today is one for which you are uniquely suited. You see, I have a patient who has been facing issues putting themselves out there due to feeling worried about the size of their, well... you'll see.@@"<br>
<br>
With that cryptic introduction <<=setup.getNpcName('npc_psychiatrist', 'formal')>> sends you off into a side room to wait. Several minutes pass before she summons you, the "patient" sitting somewhat nervously in their chair as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> directs you into position.<br>
<br>
"@@.npc_psychiatrist;So we have discussed before your... size anxieties, well, today I wanted to invite one of my other patients to show you that it really isn't the challenge you make it out to be. Miss <<=$player.last_name>>, if you would put your oral abilities on display?@@"<br>
<br>
As you move closer you notice the bulge between the patient's legs, and they unzip their pants to reveal the largest cock you've seen in person<<if $npc_cook.flags.porn.handjob_attempted>> this side of <<elseif setup.hasThreshold("bestiality", "horse", "horsecock_lover")>> that wasn't attached to a horse<</if>>.<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_repeat_2_large_1" "Open wide..." 1800>>]
<<case "small">>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> has you head into a side room and instructs you to strip while you wait for her to call for you.<br>
<br>
[<<moveTo "event_psychiatrist_forced_pay_3_help_repeat_2_small_1" "Strip and wait." 1800>>]
<<default>>
ERROR: unexpected scene.therapy <<=$scene.therapy>>
<</switch>>
<<else>>
Sure you've helped <<=setup.getNpcName('npc_psychiatrist', 'formal')>> with therapy before to cover the cost of your own... but you have to draw the line somewhere...<<if $scene.forcedTherapy>> especially if you're being forced into therapy!<</if>> Right?<br>
<br>
<<include "therapyForcePayVR">>
<</if>>
</div>/*#
#desc: serve patient to pay for therapy visit as whipping girl
#status: RELEASED 0.9.0.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "blindfold_pink">>
<<wearItem "blindfold_pink" true>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You have just finished getting naked when <<=setup.getNpcName('npc_psychiatrist', 'formal')>> walks into the room holding a blindfold. "@@.npc_psychiatrist;Patient confidentiality is so important.@@" She notes as she fastens the blindfold over your head... and then binds you bent face-first over a chair. "@@.npc_psychiatrist;I appreciate your willingness to assist like this... certainly, I know there is the money component, but your help is quite valuable in treating other patients.@@"<br>
<br>
You listen as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> moves away, presumably leaving you alone as it is several minutes before you hear the door open once more, a second set of footsteps accompanying her as she welcomes the patient in.<br>
<br>
"@@.npc_psychiatrist;As you can see, I have provided an additional accessory for today's training. Consider her your whipping girl.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states, giving your bare bottom a teasing caress as you consider the implication of her words. "@@.npc_psychiatrist;I know how... distracted you can get when I punish you during normal therapy so, today, I will be paddling this stand-in... should you fail to adequately embrace the therapeutic process.@@"<br>
<br>
"@@.generic_female1;I'm sorry, I didn't mean for—@@" a nervous voice replies, only to be cut off by the hard CRACK of a paddle across your rear.<br>
<br>
"@@.npc_psychiatrist;What did I just say!@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> replies, punctuating her statement with another pair of hard strokes of the paddle.<br>
<br>
"@@.generic_female1;S-sorry, <<=setup.getNpcName('npc_psychiatrist', 'formal')>>@@" the nervous stranger replies, your pained yelps seeming effective at the motivation <<=setup.getNpcName('npc_psychiatrist', 'formal')>> was aiming for.<br>
<br>
You hear the patient take her seat... and then proceed with a surprisingly mundane therapy session. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> punishes you occasionally when the patient fails to provide an adequate response, or makes an obvious lie of a denial but, were it not for you being naked and spanked throughout the session you could have been listening to any random person who was struggling with stress at work.<br>
<br>
While their therapy may be "normal" by conventional standards, they would seem to be far from a model patient, as your rear is a sensitive rosey red by the time the session draws to a close.<br>
<br>
After escorting the patient out <<=setup.getNpcName('npc_psychiatrist', 'formal')>> returns to remove your restraints and stand you up. "@@.npc_psychiatrist;That covers today's session. If you would just remove your blindfold we can proceed... unless you would prefer to change into something else for your session?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Take her up on the offer and go to the changing room.' 180 "<<removeItem 'blindfold_pink' true>><<deleteItem 'blindfold_pink'>><<useClothSetPush 'psyc_outfit'>><<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Thank her for the offer, but decline.' 180 "<<removeItem 'blindfold_pink' true>><<deleteItem 'blindfold_pink'>><<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]
</div>/*#
#desc: serve patient to pay for therapy visit cleaning up VR outfit
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 10 'normal' $ALONE>>
<<applyExperience 'humiliation' 10 'terrible' $ALONE>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You pick up the plugsuit and start licking. The sweaty inside is salty with a rubbery after-taste... but it's the outside that's the real <<if setup.getTotalValue("cum") > 10>>treat<<else>>challenge<</if>>.<br>
<br>
The cum has already started to dry, and you have to really work to get it out of the many seams and crannies of the plugsuit. By the time you're finished and you hang the suit up to dry your tongue is feeling quite tired, your mouth filled with the taste of sweat and stale cum.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> re-appears a minute later, inspecting your work for a moment and then nodding. "@@.npc_psychiatrist;Very good, therapy can be such a messy business, but cleanliness is so important. Speaking of appearances. Would you like to change into something else for your session?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Take her up on the offer and go to the changing room.' 180 "<<useClothSetPush 'psyc_outfit'>><<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Thank her for the offer, but decline.' 180 "<<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]
</div>/*#
#desc: serve patient to pay for therapy visit serving dog
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 5 'terrible' $ALONE>>
<<applyExperience 'anal' 13 'terrible' $ALONE>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Woofers is a hard-working... emphasis on HARD dog and you're soon on your hands and knees, warming up his thick cock and its gleaming knot with your hands and lips and soon after taking your position under him, his heat flowing into you as he pounds you non-stop until its owner finished the session.<br>
<br>
Spent, bred and exhausted you slump onto the floor as the dog perks up at the sound of its owners call, leaving you in a heap<<if $fetish.cum>> leaking cum<</if>> as it trots across the room.<br>
<br>
"@@.npc_psychiatrist;Well it certainly seems you put in the work for this session.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with a chuckle. "@@.npc_psychiatrist;Come along, if you want to get changed you should hurry up, otherwise it is time to cash in what you just earned.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Take her up on the offer and go to the changing room.' 180 "<<useClothSetPush 'psyc_outfit'>><<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Thank her for the offer, but decline.' 180 "<<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]
</div>/*#
#desc: serve patient to pay for therapy visit large cock patient
#status: RELEASED 0.9.0.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 18 'little' $SEEN_FRIEND>>
<<applyExperience 'penis' 18 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;As you can see,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> explains as you kneel down and carefully deep-throat the patient, their cock stiffening slightly as it passes your lips to the point of presenting a slight challenge to get it past the bend, your throat bulging impressively as you do the full sword-swallow with their tip passing your collarbone before you reach their balls.<br>
<br>
"@@.npc_psychiatrist;—while it may take a special someone, you are absolutely not too big to handle... and look in that sluts eyes, she is just loving being the meat on your spit.@@"<br>
<br>
Shuddering with pleasure as you bob back and forth, the patient lifts your head up slightly and looks into your unfocused eyes. Worshipping a cock of such magnificence is certainly where you love to be, and you moan gently as you continue to suck, the patient shuddering even as they hesitate to do anything but leave you to control the pace.<br>
<br>
"@@.npc_psychiatrist;See? They love this, and so many other partners would as well. Maybe they would have to work their way up to the skill you see on display, but the right person will eagerly train to climb that mountain, and, in the meantime, well, there are always handjobs or less... deep application of lips.@@"<br>
<br>
Welcoming the opportunity to take a breath you take <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> hint you pull back, kissing your way up and down the thick, vein-pulsing shaft as your hand massages the wet tip.<br>
<br>
The patient is barely focusing as you flash a look towards <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for permission. She nods and you redouble your efforts, resuming bobbing your head over a dozen centimetres a stroke as you go from balls deep to sucking the tip, your onahole-like face sending the patient straight to cloud nine as they <<if $fetish.cum>>empty their balls almost directly into your belly<<else>>swiftly cum, and hard<</if>>.<br>
<br>
You take a moment to let the patient catch their breath before you lean back, licking the patient clean as they shrink and then stuffing the now soft, but still sizable, trouser snake back into its home.<br>
<br>
"@@.generic_male1;Th-thank you,@@" the patient pants as you stand up and curtsy in thanks.<br>
<br>
"@@.pc;It was my pleasure,@@" you truthfully reply as you skip back to the side room and wait a few minute more for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to finish the session and then call you back in to ask if you would like to change for your own?<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Take her up on the offer and go to the changing room.' 180 "<<useClothSetPush 'psyc_outfit'>><<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Thank her for the offer, but decline.' 180 "<<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]
</div>/*#
#desc: serve patient to pay for therapy visit small penis
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "blindfold_pink">>
<<wearItem "blindfold_pink" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You're standing naked in the small side-room as several minutes pass before <<=setup.getNpcName('npc_psychiatrist', 'formal')>> re-appears, handing you a blindfold and waiting for you to put it on before leading you back out.<br>
<br>
"@@.npc_psychiatrist;So, extending from our previous discussion, here you can view what an ACTUALLY tiny penis looks like.
<<if setup.checkItemTypeWorn("cage")>>
Why, it's so small and worthless it is kept permanently locked away, a kindness to its owner versus the humiliating embarrassment of having access to such an utterly worthless thing.
<<else>>
Think about how shameful it must be to have something like that, that could never possibly bring a partner pleasure... well, except for the amusement at laughing at it and any attempt to use it.
<</if>>
Go ahead and get close, look at it, touch it, if you wish, and really appreciate how much bigger and better you are than that humiliatingly small, <<if $fetish.sissy>>sissy <</if>>micro-dicklet.@@"<br>
<br>
You tremble in humiliation, doubled as you feel a stranger's fingers toying with your <<getWordMyPenis>>. Despite your best efforts you stiffen in embarrassed excitement... but that feels like the opposite of helpful as you hear the patient laugh as they toy with your <<getWordMyPenis>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> continues to tease.<br>
<br>
"@@.npc_psychiatrist;You understand how fortunate you are, now, to have a proper penis. I know you had size anxiety, which so many do, but I believe seeing what an ACTUAL <<if $fetish.sissy>>sissy <</if>>clitty looks like should make it clear that you have a proper cock, not like this poor little thing and her <<getWordMyPenis>>.@@"<br>
<br>
The patient's confidence apparently buoyed they thank <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for the assistance, and you hear them chuckle as they walk past you to leave the room.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> removes your blindfold and smirks. "@@.npc_psychiatrist;Well, that should cover the cost of today's lesson... do you wish to change into something else before we get started?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Take her up on the offer and go to the changing room.' 180 "<<removeItem 'blindfold_pink' true>><<deleteItem 'blindfold_pink'>><<useClothSetPush 'psyc_outfit'>><<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Thank her for the offer, but decline.' 180 "<<removeItem 'blindfold_pink' true>><<deleteItem 'blindfold_pink'>><<include 'startPsychSession'>><<set $scene.sessionStartTime+=1>>">>]
</div>/*#
#desc: psychiatrist discuss her cruelty
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up the way <<=setup.getNpcName('npc_psychiatrist', 'formal')>> treats you.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
She sniffs derisively. "@@.npc_psychiatrist;I treat you exactly as you deserve, you disobedient <<if $fetish.sissy>>sissy<<else>>thing<</if>>. When it comes to patients like yourself, well... tough love is the only way, perhaps someday you will properly internalise that, along with my other lessons.@@"<br>
<br>
[<<moveTo "theme_psychiatrist_cruel_toggle_2" "Beg for her to treat you with greater compassion." 180>>]<br>
<<else>>
She looks concerned as she replies. "@@.npc_psychiatrist;Is there something the matter? I always try to treat my patients with compassion and understanding...@@"<br>
<br>
<<if $fetish.hypnosis>>
[<<moveTo "theme_psychiatrist_cruel_toggle_2" "Explain that actually... you could do with a firmer hand." 180>>]<br>
<<else>>
[@@.link_locked;Making this choice requires "Required Therapy" fetish to be activated.@@] <<hint $options "You can tweak fetishes in the options menu.">><br>
<</if>>
<</if>>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: attempt to toggle psychiatrist cruelty
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.flags.cruel>>
You beg <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to show mercy on you
<<if $scene.forcedTherapy>>
and she merely snorts in annoyance.<br>
<br>
"@@.npc_psychiatrist;Mercy? When you cannot even show up to your scheduled appointment? No, no, if you cannot even show the dedication to your own medical health for that, well... clearly you cannot be shown an iota of leniency. Compassion must be earned — it is my duty to care for you, and I will certainly do so to the best of my abilities, but until you make progress in your treatment, well... kindness would only invite misbehaviour.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
<<elseif $npc_psychiatrist.anger > 0 || $npc_psychiatrist.affection < 10>>
and she shakes her head dismissively.<br>
<br>
"@@.npc_psychiatrist;No... it takes more than merely showing up for therapy, you need to commit yourself to it and make steady progress. Of late I have been quite unimpressed with your behaviour, were I to loosen my grip, well... your mind might well slip away permanently, and I would never fail a patient like that.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
<<elseif $npc_psychiatrist.hypnosis > 0 && !$npc_psychiatrist.flags.missedVR>>
and she thinks for a moment before slowly shaking her head.<br>
<br>
"@@.npc_psychiatrist;No... while your attitude has improved, and you are showing up to appointments consistently... well, I still think you need a bit more, perhaps if I saw more progress in VR therapy, but, until then, I think a firm hand remains the best course.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
<<else>>
and she seems to ponder the request.<br>
<br>
"@@.npc_psychiatrist;You have shown improvement... but I need to be certain. Showing up to your appointments, participating and making steady progress... these are all positive signs, but if I am going to relax my grip and show you a bit of my more gentle side, well... you need to prove that you have TRULY embraced therapy. Tell me, how would you describe your ideal sexual self?@@"<br>
<br>
<<if $player.identify_as == "female">>
[<<moveTo "theme_psychiatrist_cruel_toggle_3_cruel" "A lusty, vibrant woman." 180 "<<set $scene.action='lusty'>>">>]<br>
<<else>>
[@@.link_locked;You're not going to say you're a woman!@@]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 15>>
[<<moveTo "theme_psychiatrist_cruel_toggle_3_cruel" "A wanton slut." 180 "<<set $scene.action='slut'>>">>]<br>
<<else>>
[@@.link_locked;You aren't so sex-addled as to willingly identify as a slut.@@]<br>
<</if>>
<<if setup.getTotalValue("submission") > 15 && setup.getTotalValue("feminization") > 15>>
[<<moveTo "theme_psychiatrist_cruel_toggle_3_cruel" "A submissive <<if $fetish.sissy>>sissy <</if>>slave." 180 "<<set $scene.action='slave'>>">>]<br>
<<else>>
[@@.link_locked;You are not going to out yourself as some sort of <<if $fetish.sissy>>sissy<<else>>feminised<</if>> slave!@@]<br>
<</if>>
[<<moveTo "theme_psychiatrist_cruel_toggle_3_cruel" "A man in charge." 180 "<<set $scene.action='man'>>">>]<br>
[<<moveTo "theme_psychiatrist_cruel_toggle_3_cruel" "Basically vanilla." 180 "<<set $scene.action='vanilla'>>">>]<br>
[<<moveTo "theme_psychiatrist_cruel_toggle_3_cruel" "You don't know." 180 "<<set $scene.action='no'>>">>]<br>
<</if>>
<<else>>
You thank <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for her diligence, but state that you think you would benefit from a firmer hand in therapy.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> raises an eyebrow. "@@.npc_psychiatrist;<<if $npc_manager.flags.cruel>>Being squashed under <<=ps(setup.getNpcName('npc_manager', 'other'))>> heel is not enough? You really are addicted to control... still, if you believe it would help you make progress towards a better you,<<else>>I would have thought that working for <<=setup.getNpcName('npc_manager', 'other')>> would be enough to sate anyone's need for female dominance... but in your case it appears to have merely unlocked wider desires. Of course I am quite in favour of exploring such things, so yes,<</if>> I can lend my assistance... though I will warn you that, once this choice has been made, I will not let up until you have proven yourself. That means attending therapy, assisting with my studies... and being the picture of enthusiastic obedience.@@"<br>
<br>
[<<moveTo "theme_psychiatrist_cruel_toggle_3_nice" "Yes, you want her to treat you harshly." 180 "<<set $scene.cruel=true>>">>]<br>
[<<moveTo "theme_psychiatrist_cruel_toggle_3_nice" "On second thought... maybe that would be too much." 180 "<<set $scene.cruel=false>>">>]
<</if>>
</div>/*#
#desc: convince therapist to be cruel to you
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cruel>>
<<set $npc_psychiatrist.flags.cruel = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.cruel>>
You affirm that you want <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to act more cruelly towards you and she slowly nods. "@@.npc_psychiatrist;Very well. I will be showing no leniency going forward... so I advise you to be on your best behaviour and show up to all of your appointments.@@"<br>
<br>
She smiles. "@@.npc_psychiatrist;Now, what else is on your mind today?@@"
<<else>>
You change your mind and tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you'd rather she continue to treat you kindly.<br>
<br>
She nods and smiles. "@@.npc_psychiatrist;Of course! Not that I would not be willing to change my approach if it would improve your therapy... but you are such a sweet <<switch $npc_psychiatrist.flags.knowgender>><<case 'male' ''>>boy<<case 'female'>>girl<<case 'agender' 'fluid'>>thing<</switch>>...@@"<br>
<br>
You blush and consider what to discuss next.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: convince therapist to be nicer to you
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'lusty' 'slut' 'slave'>>
<<set $npc_psychiatrist.flags.cruel = false>>
<<set $npc_psychiatrist.free_sessions = 0>>
<<case 'man'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 10>>
<<case 'vanilla'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 5>>
<<case 'no'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 3>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'lusty'>>
You straighten with pride as you declare yourself that you are a vibrant, lusty woman.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Wonderful! That is just the sort of self-confident pride that I had hoped to see flourish. You have come so far from the <<if State.hasPlayed("event_psychiatrist_first_cruel_3")>>disobedient<<else>>confused<</if>> virgin that you were when we first met. Thanks to this, and your other development... yes, I believe I can trust you enough to relax supervision and treat you a bit more with the velvet glove, rather than the iron fist...@@"
<<case 'slut'>>
You lick your lips and pose as you explain that you are an eager slut, as excited to offer up your body for other's pleasure as you are aroused at the thought of being so used.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins, staring back at you with obvious hunger. "@@.npc_psychiatrist;Superb. This is the exact sort of self discovery I had hoped to spur you towards. You have come so far from the <<if State.hasPlayed("event_psychiatrist_first_cruel_3")>>disobedient<<else>>confused<</if>> virgin that you were when we first met. To now so proudly declare your interests, to say nothing of all the ways you have already indulged! Yes, I believe I can trust you enough to relax my supervision and treat you a bit more with the velvet glove, rather than the iron fist...@@"
<<case 'slave'>>
You rise to your feet and drop into a curtsy as you explain that you now understand that your role is to be an obedient <<if $fetish.sissy>>sissy <</if>>sex-slave.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Lovely... <<if $player.flags.collar.collarId != "">>and with a collar, to boot!<<else>>all you need now is to be collared!<</if>>@@" She signals for you to take your seat as she leans back with pride. "@@.npc_psychiatrist;This transformation, from <<if State.hasPlayed("event_psychiatrist_first_cruel_3")>>disobedient<<else>>confused<</if>> virgin into eager, obedient slave that any owner would be proud to call their own... Yes, I believe I can trust you enough to relax my supervision and treat you a bit more with the velvet glove, rather than the iron fist... not that you would object to a life locked in steel... why, I imagine you dream of that very thing!@@"
<<case 'man'>>
You stubbornly reply that you are a man and will one day be again in charge of your own life.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns. "@@.npc_psychiatrist;Now that is quite the disappointment... to see that, even after so long, you suffer under such an appalling delusion. This is proof positive that you not only need, but deserve the harsh treatment I have been giving you. I know it may be a challenge, but breaking you of these foolish is the only chance you have at success and happiness.@@"
<<case 'vanilla'>>
You reply that, actually, you just want a normal, vanilla life.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks almost hurt. "@@.npc_psychiatrist;After all that I have shown you? Innocence is little more than ignorance and the potential you have... no, I will not let you waste your life. I promise you will appreciate this some day, but I cannot in good conscience let you abandon your development, no matter how hard it may be!@@"
<<case 'no'>>
You hesitate for a moment and then reply that, actually, you aren't really sure.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> sighs. "@@.npc_psychiatrist;Such a disappointment. I thought your recent strides demonstrated that you had really turned the corner in your development... but it would seem my optimism was premature. I would say unfortunately I have to decline your request... but, in fact, this is not unfortunate, at all, as the harsh treatment and diligent supervision I have been providing is exactly what you need, if you are to ever get past this confused, indecision and embrace your full potential.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: intro to cruel vr event
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeEverything>>
<<addItem "plugsuit_adv" true>>
<<wearItem "plugsuit_adv" true>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<<addItem 'ring_gag'>>
<<wearItem "ring_gag" true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
Stripped and equipped with plugsuit, gag, and VR helmet you find yourself back in a virtual world.<br>
<br>
Rather than the artificial reality you're used to seeing, you "wake up" to find yourself in what looks to be a sort of laboratory.<br>
<br>
You try to turn your head to get a better look around what seems more like a mad scientist's lair than a proper medical facility. Something feels off when you realise that everything is a little too sharp, the simulation giving itself away with hyper-realistic perfection.<br>
<br>
Further confirming that this is not reality <<=setup.getNpcName('npc_psychiatrist', 'formal')>> appears as if transported in, dressed in a labcoat and bearing a sly smirk as she steps over to stand over you.<br>
<br>
"@@.npc_psychiatrist;Sorry about the... cliche accommodations. This is some of my older work. Back when I was still employed full-time at Social Interaction Service Syndicate Inc. I know it lacks a bit of the personal touch of what you are used to... but in your case I think a bit of brutality would help, hmm?@@"<br>
<br>
You struggle uselessly against your bonds as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> chuckles. "@@.npc_psychiatrist;Foolish thing. Resistance is utterly pointless. This program is guaranteed to turn a patient into an obedient, eager, <<if $fetish.sissy>>sissified<<else>>feminised<</if>> slut... or it would have been, if I had actually finished completing it. No matter, you are here to help me test, after all, so open your mind, spread your legs, and gape those lips. It is time to fuck some sexy science into that brain of yours...@@"<br>
<br>
Her grin is getting a little scary now as she begins tapping buttons, your position shifting as, just as she described, your lips are forced apart, your legs as spread wide... and you feel something pressing against the back of your head...<br>
<br>
[<<moveTo "event_psychiatrist_cruel_vr_2" "Continue..." 660>>]
</div>/*#
#desc: cruel vr: core module: sub
#status: RELEASED 0.9.0.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
You gasp as
<<if $player.body_ref.vagina>>
a pair of large dildos thrusts into you from below,
<<else>>
large dildo thrusts into your rear,
<</if>>
the similarly girthy dong pressing past your gag-stretched lips taking advantage to plunge down your throat. That "conventional" penetration pales compared to the far more surreal feeling as a final dong presses in through the back of your head, the simulation providing the alien, and deeply humiliating sensation of the ribbed dildo slipping between your lobes, rubbing against your brainstem like its lower <<if $player.body_ref.vagina>>twin stimulates your g-spot<<else>>twin stimulates your prostate<</if>>.<br>
<br>
"@@.npc_psychiatrist;You like that mind-fuck feeling?@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with a grin as the flexible arms connected to your dildos unlock, leaving you stuffed full as your restraints release. "@@.npc_psychiatrist;I put a lot of effort into really dialing in that sensation, my analysis states that it will help with the rest of the procedure...@@"<br>
<br>
The examination table you were bound to tilts forward and you step off, stuffed full and finding yourself unable to exert the slightest control over your own body as you stand awaiting your next command.<br>
<br>
"@@.npc_psychiatrist;Perfection,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> notes with a grin, whistling "She Blinded Me With Science" as she continues to tap away at the controls as your <<if $player.body_ref.vagina>>quad<<else>>trio of<</if>> dildos begin to vibrate, sending not just waves of pleasure... but also commands pulsing through you.<br>
<br>
<<shinyText "OBEY." 0.0>>
<<shinyText "SUBMIT." 0.5>>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles wider as you stand in place and shudder, feeling on the edge of orgasm, and yet desperate for something more. "@@.npc_psychiatrist;Enjoying the pre-routine? Now to start things for REAL. According to my theories a bit of practice being a <<if $fetish.sissy>>sissy <</if>>sex-bot should be just the ticket to help... clarify your motivations even back in the real world... I see your obedience quotient is looking very promising, now to help you better look the part...@@"<br>
<br>
[<<moveTo "event_psychiatrist_cruel_vr_3" 'Affirmative, <<=setup.getNpcName("npc_psychiatrist", "formal")>>.' 660 "<<set $scene.resist=false>>">>]<br>
<<if setup.getWillpower() >= 3>>
[<<moveTo "event_psychiatrist_cruel_vr_3" 'No! Try to fight back!' 660 "<<set $scene.resist=true>>">>] <<hint $options "Attempting to resist such potent reprogramming would require a significant act of will.">><br>
<<else>>
[@@.link_locked;You lack the will to resist the potent reprogramming.@@]<br>
<</if>>
</div>/*#
#desc: cruel vr: core modules fem, slut
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.resist>>
<<spendWillpower 3>>
<<applyStress 50>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'skip' $SEEN_FRIEND>>
<</if>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'terrible' $SEEN_FRIEND>>
<<addItemSet "extreme_slutty_pink_h">>
<<wearItemSet "extreme_slutty_pink_h">>
<<addItem "kig_vr_mask_copy">>
<<wearItem "kig_vr_mask_copy" true>>
<<addItem "breastforms_h">>
<<wearItem "breastforms_h" true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
You try to resist... but your focus proves insufficient against the omnipresent, penetrating control <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is wielding. The attempt to grit your teeth turns into suckling on the dildo bulging your throat, your effort to push out your other artificial intruders instead manifesting as clamping down lustily around your occupants. your eyes rolling back in submissive pleasure as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles in amusement.<br>
<br>
"@@.npc_psychiatrist;Oh it is FAR too late for that. Resistance and disobedience got you to this point, but, as your Doctor, I will not let them get in the way of the therapy you so desperately require.@@"
<<else>>
You surrender, suckling on the dildo that is bulging your throat and grinding on your lower <<if $player.body_ref.vagina>>occupants<<else>>occupant<</if>>. You even embrace the feeling of the final digital dong <<if $fetish.get_raped>>raping<<else>>fucking<</if>> your mind... wishing it was bigger, after all, what you do you have for brains or thinking when you could instead have a head full of cock?<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> takes a moment to smile at your surrender. "@@.npc_psychiatrist;Beautiful. Obedience is so much superior to that nasty resistance that brought you to this point? But I suppose that is what you need, you thirst for harsh discipline and control more than anything... perhaps I should have taken this measure in the first place, time to make up for lost time, hmm?@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> taps at her controller and the vibrations increase in intensity, thrusting and buzzing to push the slightest independent thought out of your mind as the next stage of programming takes place.<br>
<br>
You rise higher, high-heel shoes sprouting under your feet and lifting you up. At the same time
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
your already massive breasts swell to truly cartoonish proportions.
<<case 'large'>>
your already large breasts swell to truly cartoonish proportions.
<<case 'medium'>>
your breasts swell to truly cartoonish proportions.
<<case 'small'>>
your small breasts balloon to truly cartoonish proportions.
<<case 'none'>>
you grow a pair of cartoonishly massive breasts.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
<<shinyText "OBEY. SUBMIT." 0.0>>
<br>
You continue to eagerly suck on the dildo that is now constantly, and aggressively thrusting down your throat, smiling in delight at your bimbo-riffic appearance — your new breasts all but bursting out of your skimpy top, a micro-skirt your only other clothing barely covering more than a belt as a mask seeps over your face to cake you in makeup until you are head to toe a plastic, bimbofied <<if $fetish.sissy>>sissy <</if>>sex-bot.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins, not even slowing down as she looks you in the eye and tilts her controls so you can watch as she overrides the limiters on the dials for "arousal," "horniness," and "sex obsession" all the way past their listed maximum value.<br>
<br>
[<<moveTo "event_psychiatrist_cruel_vr_4" '<<=setup.getNpcName("npc_psychiatrist", "formal")>> taps a confirmation button.' 1800>>]
</div>/*#
#desc: cruel vr: finish
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
The last thing you see is <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> grinning face as the simulation shifts, the lab fading away into more ethereal visions.<br>
<br>
<<shinyText "OBEY. SUBMIT." 0.0>>
<<printThought "Femme me, fuck me, fill me.">><br>
<<shinyText "SUCK. STROKE. SPREAD. SUBMIT." 0.0>>
<<printThought "I am a horny bimbo <<if $fetish.sissy>>sissy <</if>>slut.">><br>
<br>
The dildos constantly violating you in every orifice you find yourself on your knees, on your back, serving, sucking, and fucked by hazy figures. You are a living sex-bot; used hard, put away weak and wanting, and then pulled out again to repeat the process. Your only desire is to serve, to follow your programming and be a perfect, constantly horny, obedient <<if $fetish.sissy>>sissy <</if>> sex-bot...<br>
<br>
<<shinyText "OBEY. SUBMIT." 0.0>>
<<printThought "Femme me, fuck me, fill me.">><br>
<<shinyText "SUCK. STROKE. SPREAD. SUBMIT." 0.0>>
<<printThought "I am a horny bimbo <<if $fetish.sissy>>sissy <</if>>slut.">><br>
<br>
The simulation loops, memory of your so-called "real" life fading away...<br>
<br>
[<<moveTo "event_psychiatrist_cruel_vr_post" 'Continue...' 300 '<<removeItemSet "extreme_slutty_pink_h">><<deleteItemSet "extreme_slutty_pink_h">><<removeItem "kig_vr_mask_copy" true>><<deleteItem "kig_vr_mask_copy">><<removeItem "breastforms_h" true>><<deleteItem "breastforms_h">>'>>]
</div>/*#
#desc: hypnosis session 5 aftermath, wake up
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'plugsuit_adv' true>>
<<deleteItem 'plugsuit_adv'>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<setTmpEffect 'vr_punish'>>
<<include "addPsychiatristEndless">>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wake up feeling groggy and used as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> releases you from the chair.<br>
<br>
"@@.npc_psychiatrist;Ah, look at you, not a thought behind those pretty eyes, just horny obedience... isn't it lovely.@@"<br>
<br>
You can't quite form words and settle on merely nodding as she leads you back to the changing room.<br>
<br>
"@@.npc_psychiatrist;Good, good, but remember, as much as I can teach you, and show you the proper way, you need to go out there and reinforce that learning. Maybe see if you can't get fucked a few times before you head home, really drill these lessons in. Of course... I have a few more modules we can try out. Additional more... mmm... specialised training to help file away the edges and ensure those nasty embers of rebellion never flare up so you can fully embrace your proper place in the world... perhaps next week you will remember to pay so we can have a more normal session... alas, today we have quite run out of time!@@"<br>
<br>
You can't even imagine the thought of disobedience... but the idea of more of this treatment brings a smile to your face, and, even as exact memories of the procedure fade you you fantasise about how it felt when the simulated cock was pounding its message into your skull...<br>
<br>
[<<moveTo 'room_citymap' 'Get dressed and leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = true>><<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: repeat cruel vr
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeEverything>>
<<addItem 'plugsuit_adv'>>
<<wearItem "plugsuit_adv" true>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<<addItem 'ring_gag'>>
<<wearItem "ring_gag" true>>
<<set _scenes = []>>
<<set _allScenes = ["event_psychiatrist_cruel_vr_3_face_1","event_psychiatrist_cruel_vr_3_pain_1","event_psychiatrist_cruel_vr_3_worship_1",
'event_psychiatrist_cruel_vr_3_bondage_1',"event_psychiatrist_cruel_vr_3_fucktoy_1"]>>
<<if !State.hasPlayed("event_psychiatrist_cruel_vr_3_face_1")>>
<<set _scenes.push("event_psychiatrist_cruel_vr_3_face_1")>>
<<if false>><<moveTo "event_psychiatrist_cruel_vr_3_face_1">><</if>>
<</if>>
<<if !State.hasPlayed("event_psychiatrist_cruel_vr_3_worship_1")>>
<<set _scenes.push("event_psychiatrist_cruel_vr_3_worship_1")>>
<<if false>><<moveTo "event_psychiatrist_cruel_vr_3_worship_1">><</if>>
<</if>>
<<if !State.hasPlayed("event_psychiatrist_cruel_vr_3_pain_1")>>
<<set _scenes.push("event_psychiatrist_cruel_vr_3_pain_1")>>
<<if false>><<moveTo "event_psychiatrist_cruel_vr_3_pain_1">><</if>>
<</if>>
<<if !State.hasPlayed("event_psychiatrist_cruel_vr_3_bondage_1")>>
<<set _scenes.push("event_psychiatrist_cruel_vr_3_bondage_1")>>
<<if false>><<moveTo "event_psychiatrist_cruel_vr_3_bondage_1">><</if>>
<</if>>
<<if !State.hasPlayed("event_psychiatrist_cruel_vr_3_fucktoy_1")>>
<<set _scenes.push("event_psychiatrist_cruel_vr_3_fucktoy_1")>>
<<if false>><<moveTo "event_psychiatrist_cruel_vr_3_fucktoy_1">><</if>>
<</if>>
<<if $fetish.cum || $fetish.piss>>
<<set _allScenes.push("event_psychiatrist_cruel_vr_3_nutrition_1")>>
<<if !State.hasPlayed("event_psychiatrist_cruel_vr_3_nutrition_1")>>
<<set _scenes.push("event_psychiatrist_cruel_vr_3_nutrition_1")>>
<<if false>><<moveTo "event_psychiatrist_cruel_vr_3_nutrition_1">><</if>>
<</if>>
<</if>>
<<set $scene.repeatScene = _scenes.length == 0>>
<<if $scene.repeatScene>>
<<set $scene.vr_scene = _allScenes.random()>>
<<else>>
<<set $scene.vr_scene = _scenes.random()>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> leads you into the back and has you change, sending you from real-world lab to virtual lab where you are again strapped down for her experimentation.<br>
<br>
<<if $scene.repeatScene>>
"@@.npc_psychiatrist;It would seem that you have already experienced my library... but, really, is there such a thing as too much treatment? For you, at least, certainly not!@@"
<<else>>
"@@.npc_psychiatrist;Now... what treatment shall we test out on you today...@@"
<</if>>
<br><br>
[<<moveTo $scene.vr_scene 'Continue.' 1800>>]
</div>/*#
#desc: cruel vr: augment: oral/anal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $SEEN_FRIEND>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'terrible' $SEEN_FRIEND>>
<<set _bimbofication = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbofication 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> slides a tape into the machine and you feel all of your dildos slide deeper into your body.<br>
<br>
You moan, you don't know when you've ever been so filled and stretched with cock and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> chuckles. "@@.npc_psychiatrist;Feel that, you walking set of holes? I thought a refresher course on your most central duties was in order, you seem to be spending far too little time being drilled and filled...@@"<br>
<br>
As if being filled wasn't enough all <<if $player.body_ref.vagina>>four<<else>>three<</if>> dildos begin thrusting into you, pounding you mercilessly even as the restraints release and the simulation shifts. In a surreal pseudo-fantasy you find yourself going through the motions of a "normal" day... all while being constantly fucked by your ever-present dildos, and with an unceasing stream of "advise" pumped through your brain.<br>
<br>
<<shinyText "I am a human cocksheath." 0.0>>
<<shinyText "I exist to be fucked." 0.5>>
<<shinyText "Pound my holes." 1.5>>
<<shinyText "Bulge my throat." 2.0>>
<<shinyText "Stretch my ass." 2.5>>
<<if $player.body_ref.vagina>>
<<shinyText "Breed my cunt." 3.0>>
<</if>>
<<shinyText "I am a set of onaholes." 3.5>>
<<shinyText "Never stop fucking me..." 4.0>>
<br>
There is no resisting or escaping. The pounding narration has your eyes glaze over as you sleep-walk through your chores and work-day. Whether you're typing an email or being bent over a desk to serve a pair of fellow employees it is the same. You exist to be fucked, you NEED to be fucked, to be stuffed air-tight, or even better, double-penetrated in every hole, sucking, riding, thrusting, slamming... all that matters is your constant use. You cannot escape it, being empty is an alien idea, no, all you can do is embrace your true purpose and be the best set of fuck-holes you can be...<br>
<br>
<<printThought "I am a human cocksheath.">><br>
<<printThought "I exist to be fucked.">><br>
<<printThought "Pound my holes.">><br>
<<printThought "Bulge my throat.">><br>
<<printThought "Stretch my ass.">><br>
<<if $player.body_ref.vagina>>
<<printThought "Breed my cunt.">><br>
<</if>>
<<printThought "I am a set of onaholes.">><br>
<<printThought "Never stop fucking me...">><br>
<br>
[<<moveTo "event_psychiatrist_cruel_vr_post" 'Continue...' 300>>]
</div>/*#
#desc: cruel vr: augment: bondage
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _bondage = setup.getTotalValue("bondage")>>
<<applyExperience 'bondage' _bondage 'terrible' $SEEN_FRIEND>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
Your <<if $player.body_ref.vagina>>quad<<else>>trio of<</if>> dildos begin to buzz as the one in your brain thrusts deeper and begins to pump the contents of the disc into your mind. You struggle against your bonds and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles.<br>
<br>
"@@.npc_psychiatrist;You look so beautiful bound... yet you have not sufficiently embraced such restriction...@@"<br>
<br>
As she speaks your straps tighten... and then multiply. The simple, but secure medical restraints growing more numerous, the restrictive binds paired with new thoughts weaving through your mind.<br>
<br>
<<shinyText "Hobble me." 0.0>>
<<shinyText "Gag me." 0.5>>
<<shinyText "Cuff me." 1.0>>
<<shinyText "Collar me." 1.5>>
<<shinyText "Hogtie me." 2.0>>
<<shinyText "Cinch me securely." 2.5>>
<<shinyText "Tie me tighter." 3.0>>
<<shinyText "Bind me completly..." 3.5>>
<br>
Your bonds multiply, straps on each limb splitting and spreading until you are restrained from head to toe; buckles running up and down your arms, straps running over your head and body to gag you and bind you to the table, even your fingers secured individually.<br>
<br>
This already extreme bondage progresses further, the straps merging back into one another and pulling you tighter, hands cocooned in padded mitts, feet forced fully en pointe, everything cinching even tighter as a full body corset extends from your nose all the way down, gag leading into posture collar to elbow-to-elbow armbinder to stringent corset and a hobble so tight you cannot even separate your ankles.<br>
<br>
You lift off the exam table, suspended as everything tightens even further, a sensory deprivation hood wrapping around your head, sealing you away... even as you feel another layer pressing down, somehow knowing that a vacuum bed is pressing you from either side, shrink-wrapping your already helpless form, sealing you completely with only the constant pleasure and the thoughts echoing through your brain reinforcing your love of bondage...<br>
<br>
<<printThought "Hobble me.">><br>
<<printThought "Gag me.">><br>
<<printThought "Cuff me.">><br>
<<printThought "Collar me.">><br>
<<printThought "Hogtie me.">><br>
<<printThought "Cinch me securely.">><br>
<<printThought "Tie me tighter.">><br>
<<printThought "Bind me completly...">><br>
<br>
[<<moveTo "event_psychiatrist_cruel_vr_post" 'Continue...' 300>>]
</div>/*#
#desc: cruel vr: augment: cum/piss
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.cum>>
<<set _cum = setup.getTotalValue("cum")>>
<<applyExperience 'cum' _cum 'terrible' $SEEN_FRIEND>>
<</if>>
<<if $fetish.piss>>
<<set _piss = setup.getTotalValue("piss")>>
<<applyExperience 'piss' _piss 'terrible' $SEEN_FRIEND>>
<</if>>
<<set _humiliation = setup.getTotalValue("humiliation")>>
<<applyExperience 'humiliation' _humiliation 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
After starting the new module to load <<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins and reaches for a
<<if $fetish.cum && $fetish.piss>>
pair of hoses, screwing them into a Y-connector and then into the the base of the dildo filling your mouth.<br>
<br>
"@@.npc_psychiatrist;Now, I know I am a psychiatrist, not a nutritionist... but health is a holistic effort, and you have not been consuming an optimal diet.@@"<br>
<br>
You watch as thick cum starts flowing down one of the tubes... while golden piss swirls down the other.<br>
<br>
"@@.npc_psychiatrist;Drink up, you piss-slave cum-slut... and enjoy your shower.@@"<br>
<br>
The exam table tilts upwards until you are held vertical, finding yourself facing a dozen spray nozzles. As the salty and bitter liquids splash across your tongue the sprayers shower you with even more thick cream and hot piss... and the programing flows through your mind...<br>
<br>
<<shinyText "I'm so thirsty." 0.0>>
<<shinyText "I always swallow." 0.5>>
<<shinyText "Coat me in gold." 1.0>>
<<shinyText "Cover me in cream." 1.5>>
<<shinyText "Paint me with piss." 2.0>>
<<shinyText "Shower me in semen." 2.5>>
<<shinyText "My showers should always be golden." 3.0>>
<<shinyText "I live to be bukkaked." 3.5>>
<<elseif $fetish.cum>>
hose, screwing it into the the base of the dildo filling your mouth.<br>
<br>
"@@.npc_psychiatrist;Now, I know I am a psychiatrist, not a nutritionist... but health is a holistic effort, and you have not been consuming an optimal diet.@@"<br>
<br>
You watch as thick cum starts flowing down the tube...<br>
<br>
"@@.npc_psychiatrist;Drink up, you cum-slut... and enjoy your shower.@@"<br>
<br>
The exam table tilts upwards until you are held vertical, finding yourself facing a dozen spray nozzles. As the salty liquid splashes across your tongue the sprayers shower you with even more thick cream... and the programing flows through your mind...<br>
<br>
<<shinyText "I always swallow." 0.0>>
<<shinyText "Cover me in cream." 0.5>>
<<shinyText "Shower me in semen." 1.0>>
<<shinyText "I live to be bukkaked." 1.5>>
<<elseif $fetish.piss>>
hose, screwing it into the the base of the dildo filling your mouth.<br>
<br>
"@@.npc_psychiatrist;Now, I know I am a psychiatrist, not a nutritionist... but health is a holistic effort, and you have not been consuming an optimal diet.@@"<br>
<br>
You watch as golden piss swirls down the tube.<br>
<br>
"@@.npc_psychiatrist;Drink up, you piss-slave... and enjoy your shower.@@"<br>
<br>
The exam table tilts upwards until you are held held vertical, finding yourself facing a dozen spray nozzles. As the bitter liquid splashes across your tongue the sprayers shower you with even more hot piss... and the programing flows through your mind...<br>
<br>
<<shinyText "I'm so thirsty." 0.0>>
<<shinyText "Coat me in gold." 0.5>>
<<shinyText "Paint me with piss." 1.0>>
<<shinyText "My showers should always be golden." 1.5>>
<<else>>
ERROR: unexpected fetish flag state
<</if>>
<br><br>
You have no choice but to swallow, excess flowing down your chin as, bound tight, you are sprayed and painted with blast after blast of <<if $fetish.cum && $fetish.piss>><<getWordCum>> and <<getWordPiss>><<elseif $fetish.cum>><<getWordCum>><<elseif $fetish.piss>><<getWordPiss>><</if>>, your bonds have you unable... and soon unwilling to dodge as you are coated and filed, gulping down each new mouthful as you feel the ambrosic offerings fill your belly and drip down your body...<br>
<br>
<<if $fetish.cum && $fetish.piss>>
<<printThought "I'm so thirsty.">><br>
<<printThought "I always swallow.">><br>
<<printThought "Coat me in gold.">><br>
<<printThought "Cover me in cream.">><br>
<<printThought "Paint me with piss.">><br>
<<printThought "Shower me in semen.">><br>
<<printThought "My showers should always be golden.">><br>
<<printThought "I live for bukkake.">><br>
<<elseif $fetish.cum>>
<<printThought "I always swallow.">><br>
<<printThought "Cover me in cream.">><br>
<<printThought "Shower me in semen.">><br>
<<printThought "I live for bukkake.">><br>
<<elseif $fetish.piss>>
<<printThought "I'm so thirsty.">><br>
<<printThought "Coat me in gold.">><br>
<<printThought "Shower me in semen.">><br>
<<printThought "Paint me with piss.">><br>
<<printThought "My showers should always be golden.">><br>
<<else>>
ERROR: unexpected fetish flag state
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_cruel_vr_post" 'Continue...' 300>>]
</div>/*#
#desc: cruel vr: augment: penis/foot
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'terrible' $SEEN_FRIEND>>
<<set _foot = setup.getTotalValue("foot")>>
<<applyExperience 'foot' _foot 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
The new module begins to load and the simulation shifts as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> starts to rise above you. It takes a moment to reorient yourself as you realise you are on the ground as she steps on you, steep, high-heel boots and sleek nylons rising up her legs as she opens her labcoat to reveal a hard<<if $fetish.cum>>, dripping<</if>> <<getWordPenis false>>.<br>
<br>
Intense desire rises within you as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins down, your heart pounding as your attention shifts back and forth from her gorgeous feet to her equally magnificent <<getWordPenis false>>.<br>
<br>
<<shinyText "I worship cock." 0.0>>
<<shinyText "Put me at your feet." 0.5>>
<<shinyText "Penis is my <<Master>>." 1.0>>
<<shinyText "Step on me." 1.5>>
<<shinyText "I want a foot..." 2.0>>
<br>
While its twin behind your head continues to fuck its message into your brain, your mouth dildo disappears, freeing your lips and tongue to worshipfully tongue-wash <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> boots, and then continue up to her magnificent <<getWordPenis false>>.<br>
<br>
You nuzzle and kiss, your bonds dissipating as you remain on your knees, worshipfully honouring cock and heel in a joyous offering, sucking on heel and hard-on, licking toes and balls...<br>
<br>
<<printThought "I worship cock.">><br>
<<printThought "Put me at your feet.">><br>
<<printThought "Penis is my <<Master>>.">><br>
<<printThought "Step on me.">><br>
<<printThought "I want a foot...">><br>
<br>
[<<moveTo "event_psychiatrist_cruel_vr_post" 'Continue...' 300>>]
</div>/*#
#desc: cruel vr: augment: bdsm
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'terrible' $SEEN_FRIEND>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
You would swear the lab darkens as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> loads your next module. "@@.npc_psychiatrist;I am sorry, my dear, but today's training may prove a bit more... painful than usual. You see, a proper <<if $fetish.sissy>>sissy <</if>>sex-bot has learned to embrace all stimulation. Anyone can be a slut... but it takes true dedication to be a pain-slut, to learn to embrace agony and ecstasy as two sides of the same coin...@@"<br>
<br>
Your restraints pull your body into a new position as the dildos buzz and thrust away inside of you. Pleasure washes through you for a moment, and then the pain begins.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> watches on with dispassionate, clinical interest as robotic arms begin tormenting every centimetre of your body. They pinch your nipples, spank your ass, flog and whip, shock and slap, your bonds holding you in place, the agony as inescapable as the words pounded into your skull, the pleasure fucked into your holes...<br>
<br>
<<shinyText "Spank me." 0.0>>
<<shinyText "Whip me." 0.5>>
<<shinyText "Flog me." 1.0>>
<<shinyText "Cane me." 1.5>>
<<shinyText "Shock me." 2.0>>
<<shinyText "I prefer to be punished." 2.5>>
<<shinyText "I need to be hurt." 3.0>>
<<shinyText "Make me howl until I moan..." 4.0>>
<br>
Just when you start to adjust to the torture things escalate once again, the dildos that had once represented your respite of pleasure swelling painfully large as they begin shocking you with every thrust. Your body is "treated" to more exotic torments. You are punished for your every past mistake in word, thought or deed, limbs pulled into new, more awkwardly strenuous positions, your feet subject to bastinado<<if $player.body_ref.balls>>, your balls stretched, crushed, shocked and slapped<</if>>, the tortures remaining ever fresh, never distracting from one another, but instead furthering your agony until your only chance at sanity is to embrace the pain...<br>
<br>
<<printThought "Spank me.">><br>
<<printThought "Whip me.">><br>
<<printThought "Flog me.">><br>
<<printThought "Cane me.">><br>
<<printThought "Shock me.">><br>
<<printThought "I prefer to be punished.">><br>
<<printThought "I need to be hurt.">><br>
<<printThought "Make me howl until I moan...">><br>
<br>
[<<moveTo "event_psychiatrist_cruel_vr_post" 'Continue...' 300>>]
</div>/*#
#desc: cruel vr: augment: makeup/heels
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _makeup = setup.getTotalValue("makeup")>>
<<applyExperience 'makeup' _makeup 'terrible' $SEEN_FRIEND>>
<<set _heels = setup.getTotalValue("heels")>>
<<applyExperience 'heels' _heels 'terrible' $SEEN_FRIEND>>
<<set _feminization = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _feminization 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> Company Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_lab.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lab")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles slightly as she starts loading your next training module.<br>
<br>
"@@.npc_psychiatrist;On one hand, I could congratulate you on embracing your inner slut... but there is more to being a perfect <<if $fetish.sissy>>sissy <</if>>bimbo than the constant fetishistic sex. No, you have to not just act the part, but look the part — strutting around confidently with perfect makeup in steep heels, turning heads, wetting clits and hardening cocks. Every look, every motion you make should drip sex. Do that and you will be on your way to the life you deserve...@@"<br>
<br>
Your restraints release and you sit up, standing atop your steep heels in your bimbo-riffic outfit. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> gestures across the lab where there is a mirror and full spread of makeup and tools.<br>
<br>
<<shinyText "High heels are best." 0.0>>
<<shinyText "My makeup must be perfect." 0.5>>
<<shinyText "I must mince." 1.0>>
<<shinyText "More makeup is better." 1.5>>
<<shinyText "I must be a perfect doll." 2.0>>
<br>
You mince across and take a seat, smiling wide as you clean your face and cake on the makeup thick. Once your face has been fully covered in perfect over-the-top bimbo beauty you rise again, walking across the room, swearing your heels have grown even steeper.<br>
<br>
Having dutifully walked across the surprisingly large lab you find another, identical mirror. You sit down to do your makeup again, then rise and repeat, pacing back and forth, practicing heels and makeup, a perfectly comporting <<if $fetish.sissy>>sissy <</if>>bimbo doll...<br>
<br>
<<printThought "High heels are best.">><br>
<<printThought "My makeup must be perfect.">><br>
<<printThought "I must mince.">><br>
<<printThought "More makeup is better.">><br>
<<printThought "I must be a perfect doll.">><br>
<br>
[<<moveTo "event_psychiatrist_cruel_vr_post" 'Continue...' 300>>]
</div>/*#
#desc: psychiatrist invites you to dinner
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cancelableEvents = false>>
<<if $currentTasks.hasOwnProperty('admin_drink_1') && setup.daysToDate($now, setup.getTaskDueDate('admin_drink_1')) == 0>>
<<set $scene.cancelableEvents = true>>
<<set $scene.friend = setup.getNpcName("npc_admin","first")>>
<<elseif $currentTasks.hasOwnProperty('technician_dinner') && setup.daysToDate($now, setup.getTaskDueDate('technician_dinner')) == 0>>
<<set $scene.cancelableEvents = true>>
<<set $scene.friend = setup.getNpcName("npc_technician","first")>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $player.plocation == "event_psychiatrist_1stsession_1_leave">>
You emerge from the changing room for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to greet you with a... slightly nervous smile.
<<else>>
You turn to leave when you notice <<=setup.getNpcName('npc_psychiatrist', 'formal')>> looking a bit nervous, as if she has something additional to say.
<</if>>
<br><br>
<<printThought "She always seems so certain and assured... did I do something wrong?">><br>
<br>
"@@.npc_psychiatrist;So, I was thinking... well, you have come so far in your development in our time together. I wanted to give you a reward. Some time together away from all of this,@@" she gestures around the office. "@@.npc_psychiatrist;Just some time to celebrate. I don't have any more clients scheduled today so... I could give you time to change, pick you up say, around <<if $options.militaryTime>>seventeen hundred<<else>>five<</if>>? There's nothing like a fancy dinner to mark an accomplishment.@@"<br>
<br>
<<printThought "Hmm... I think she's trying to get away to where we could talk without the company listening in...">><br>
<br>
<<if $scene.cancelableEvents>>
[<<moveTo "event_psych_dinner_invite_2" "You'd have to cancel your previous plans... but that's probably worth it for this opportunity. <<=$scene.friend>> would understand." 60 "<<set $scene.accept=true>>">>]<br>
<<elseif setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo "event_psych_dinner_invite_2" "Say you'll see her then." 60 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;You already have a date scheduled tonight.@@]<br>
<</if>>
[<<moveTo "event_psych_dinner_invite_2" "Say you have other plans." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: psychiatrist invites you to dinner
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _nextDate = setup.setNextDate($now, 0, 17, 0)>>
<<addTaskById "task_psych_dinner" _nextDate>>
<<if $currentTasks.hasOwnProperty('admin_drink_1') && setup.daysToDate($now, setup.getTaskDueDate('admin_drink_1')) == 0>>
<<postponeTask 'admin_drink_1' 7>>
<<elseif $currentTasks.hasOwnProperty('technician_dinner') && setup.daysToDate($now, setup.getTaskDueDate('technician_dinner')) == 0>>
<<postponeTask 'technician_dinner' 7>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You reply that you'd love to see her "outside the office." <br>
<br>
"@@.npc_psychiatrist;Wonderful!@@" She states with a smile and a slight note of... gratitude... relief? "@@.npc_psychiatrist;I have some work to attend to so... say <<if $options.militaryTime>>17:00<<else>>five<</if>>?@@"<br>
<br>
You say you're looking forward to it.
<<if $scene.cancelableEvents>>
<br><br>
Once outside the office you take a deep breath and call up <<=$scene.friend>>. As expected they're very understanding that something came up — verifying that it isn't an emergency that they might help with before taking a rain-check and rescheduling for next Friday.
<</if>>
<<else>>
You reply that you actually already have plans for the evening.<br>
<br>
"@@.npc_psychiatrist;Ah, I see... well, it only makes sense. It is Friday, and you are quite the popular thing... perhaps you could keep your schedule clear sometime, maybe next week?@@"<br>
<br>
You reply that you'll see what you can do, and then depart.
<</if>>
<br><br>
[<<moveTo "room_citymap" "Leave the office." 300 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: psychiatrist invites you to dinner
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 0, 17, 0)>>
<<addTaskById "task_psych_dinner" _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_psychiatrist', 'formal')>> if she would be available for dinner again?<br>
<br>
"@@.npc_psychiatrist;Hmm... a little on the road therapy? Yes, I believe that could be arranged... I shall pick you up at <<if $options.militaryTime>>17:00<<else>>five<</if>>?@@"<br>
<br>
[<<moveTo "room_citymap" "You'll see her then!" 300 "<<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: not waiting for psychiatrist dinner pickup
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.atHome = setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
<<if $scene.atHome>>
<<completeTask 'task_psych_dinner' $now true>>
<<else>>
<<set $currentcall = true>>
<</if>>
<</if>>
<<if $scene.atHome>>
<<set $player.location to "Foyer">>
<<else>>
<<set $player.location to "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.atHome>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.atHome>>
You have lost track of time you get a call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Hello, I'm downstairs with the car if you're ready to go?@@"<br>
<br>
<<if setup.checkOutsideDecency() && setup.analyzeWornTags(['casual','office','formal']) == 'formal'>>
[<<moveTo "event_psychiatrist_dinner_1" "Head down." 60>>]
<<else>>
[@@.link_locked;I'm not dressed to go outside — I need something formal to go out somewhere nice.@@]
<</if>>
<<else>>
You get a call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;I came by your flat to pick you up for dinner, but you do not appear to be home? Such schedule sloppiness is quite disappointing. Perhaps we can meet some other day, but I advise you to get some rest over the weekend, forgetfulness like this is not a good sign!@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: psychiatrist drives you to dinner
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You head downstairs where <<=setup.getNpcName('npc_psychiatrist', 'formal')>> welcomes you into a limo.<br>
<br>
"@@.npc_psychiatrist;Come, come — given that this is a celebration of all your progress, well... I thought we'd do it in style — I am glad you thought the same.@@" She says, smiling at your outfit.<br>
<br>
You nod, admiring her own outfit. You're so used to seeing her "in session" with her almost casual, flirty style that seeing her in formal attire is quite the look; even if she has selected a bit of a throwback outfit of a floor length jacket, gloves and a wide-brim hat.<br>
<br>
You take a seat and start to talk only for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to pat you on the leg.<br>
<br>
"@@.npc_psychiatrist;Shhh, let's just enjoy the drive — the city looks so beautiful all lit up at night. We can chat over dinner.@@"<br>
<br>
<<if $npc_manager.stage >= 5>>
<<printThought "I guess it would be more comfortable at the restaurant... and it is a pretty view.">>
<<else>>
<<printThought "Yeah... she's definitely steering things for us to talk away from surveillance...">>
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_dinner_2" "Continue." 600>>]
</div>/*#
#desc: psychiatrist sit down for dinner
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You arrive at the restaurant — which turns out to be a bit more lively than you might have expected as it is styled after a palace with a dining area adjoining a dance floor.<br>
<br>
Not having a reservation, you find yourself with a table just off the dance floor, making things a bit noisy... though it does give you a nice view of the dancers.<br>
<br>
"@@.npc_psychiatrist;So,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states, waiting for the waiter to pour a glass of wine and raising it in a toast. "@@.npc_psychiatrist;To your progress...@@"<br>
<br>
She drains the entire glass and then pours another. "@@.npc_psychiatrist;So, now that we have some actual privacy... how about we have a bit of a chat?@@"<br>
<br>
[<<moveTo "event_psychiatrist_dinner_3" "Listen." 600>>]
</div>/*#
#desc: psychiatrist sit down for dinner
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> takes a deep breath... and pours herself another glass of wine.<br>
<br>
"@@.npc_psychiatrist;So... first off, I want to say I'm sorry. What the company has done to you, the part I've played in it... well... I had no choice. You, me... we're just small pieces of a much larger machine but those small pieces, well... if they work together, they can have a far greater effect.@@"<br>
<br>
The waiter arrives to take orders and, once they're out of earshot, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods.
<<if $npc_manager.stage >= 5>>
"@@.npc_psychiatrist;I guess there really isn't much more to say about the company that you have not experienced... you've survived more than I have, and then to rescue me, as well? Yes, you deserve a lot more... but all I can do at present is try to provide answers. So ask away.@@"
<<else>>
"@@.npc_psychiatrist;I may no longer work directly for the company, but that turns out to mean they only watch me closer. But here, well... we have a bit of privacy, which means you can ask me anything you want. After what you've been through, the least you've earned are some answers.@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_dinner_4" "Think about what to ask." 60>>]
</div>/*#
#desc: psychiatrist sit down for dinner
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_manager_1' 0 'event_psychiatrist_secret_theme_manager_1' true 'privatethemes'>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_boss_1' 0 'event_psychiatrist_secret_theme_boss_1' true 'privatethemes'>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_work_doctor_1' 0 'event_psychiatrist_secret_theme_work_doctor_1' true 'privatethemes'>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_company_1' 0 'event_psychiatrist_secret_theme_company_1' true 'privatethemes'>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_therapy_1' 0 'event_psychiatrist_secret_theme_therapy_1' true 'privatethemes'>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_drugs_1' 0 'event_psychiatrist_secret_theme_drugs_1' true 'privatethemes'>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_barista_1' 0 'event_psychiatrist_secret_theme_barista_1' true 'privatethemes'>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_player_1' 0 'event_psychiatrist_secret_theme_player_1' true 'privatethemes'>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'admin', 'theme_psychiatrist_admin_evil')>>
<<if _themeId != -1 && $npc_psychiatrist.themes.admin[_themeId].done > 0 && -1 == setup.findThemeId('npc_psychiatrist', 'secret', 'theme_psychiatrist_secret_theme_evil_admin_1', 'privatethemes')>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_evil_admin_1' 0 'event_psychiatrist_secret_theme_evil_admin_1' true 'privatethemes'>>
<</if>>
<<if $npc_exgirlfriend.flags.knowTruth > 0 && -1 == setup.findThemeId('npc_psychiatrist', 'secret', 'theme_psychiatrist_secret_theme_ex_gf_1', 'privatethemes')>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_ex_gf_1' 0 'event_psychiatrist_secret_theme_ex_gf_1' true 'privatethemes'>>
<</if>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'primrose', 'theme_psychiatrist_primrose')>>
<<if -1 != _themeId && $npc_psychiatrist.themes.primrose[_themeId].done && -1 == setup.findThemeId('npc_psychiatrist', 'secret', 'theme_psychiatrist_secret_theme_primrose_1', 'privatethemes')>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_primrose_1' 0 'theme_secret_psychiatrist_primrose_1' true 'privatethemes'>>
<</if>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You consider what to talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> while she's in such an open mood...<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist dinner
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems grateful to have moved on, smiling awkwardly as you process what she's told you... and she pours herself another glass of wine as the two of you finish dessert.<br>
<br>
"@@.npc_psychiatrist;So... I know that was a lot to take in, but, perhaps you would like to work off a bit of that meal. On the dance floor... and maybe after...@@"<br>
<br>
[<<moveTo "event_psychiatrist_dinner_6_dance_1" "You'd like to dance." 1800>>]<br>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_psychiatrist_dinner_7_sex_1" "You're interested in more horizontal entertainment..." 1800>>]<br>
<</if>>
[<<moveTo "event_psychiatrist_dinner_8" "You're ready to call it a night." 1800>>]
</div>/*#
#desc: psychiatrist dinner dancing
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<set $scene.dance = true>>
<</if>>
<<set $player.location to "TODOrestaurant Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dance_floor.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You look towards the dance floor and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles, rising to her feet and offering you a hand as the two of you stride out and she smoothly pulls you into a dance frame just as the next track starts...<br>
<br>
[<<moveTo "event_psychiatrist_dinner_6_dance_2" "Let her lead." 1800 "<<set $scene.lead=false>>">>]<br>
<<if setup.getTotalValue("dominance") > 10>>
[<<moveTo "event_psychiatrist_dinner_6_dance_2" "Take the lead." 1800 "<<set $scene.lead=true>>">>]
<<else>>
[@@.link_locked;You are not dominant enough to take the lead.@@]
<</if>>
</div>/*#
#desc: psychiatrist dinner dancing
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'normal' $EXPOSED>>
<<if $scene.lead>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $EXPOSED>>
<<else>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $EXPOSED>>
<</if>>
<<set $npc_psychiatrist.flags.dinner.ate = true>>
<</if>>
<<set $player.location to "TODOrestaurant Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dance_floor.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
The two of you wait for a pause between songs and take to the dance floor. The music starts and you
<<if $scene.lead>>
confidently take the lead. <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and moves with you, your bodies pressed close for a tango as she whispers into your ear. "@@.npc_psychiatrist;I so love the confidence you've found...@@"
<<else>>
follow her lead. <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles as she leads you around the dance floor, your bodies pressed close for a tango as she whispers into your ear. "@@.npc_psychiatrist;You really have blossomed into a wonderfully obedient <<switch $npc_psychiatrist.flags.knowgender>><<case 'male' ''>>boy<<case 'female'>>lady<<case 'agender' 'fluid'>>dear<<default>>ERROR: unexpected psych gender<</switch>>... you just must take care who you gift that obedience to.@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;You know, you can tell a lot about someone by how they dance, I've considered using it in therapy, but, well... I found more efficient methods.@@" She laughs softly as you spin through a particularly intricate sequence. "@@.npc_psychiatrist;Sorry, look at me, unable to put work aside. No, this night was about you, and relaxing. Pretend I didn't say anything.@@"<br>
<br>
The two of you dance the night away,
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
drawing impressed looks from the rest of the dance floor as you twirl and glide, moving about almost as one.<br>
<br>
"@@.npc_psychiatrist;So,@@" she says when you finally leave the dance floor — to a parting ovation from the other dancers.
<<else>>
gliding and dipping, easily weaving between other dancers with dual nimbleness.<br>
<br>
"@@.npc_psychiatrist;So,@@" she says when you finally leave the dance floor.
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
<<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> expert skill elevating your own rudimentary abilities.
<<else>>
<<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> expert skill compensating for your clumsiness.
<</if>>
<br><br>
"@@.npc_psychiatrist;So,@@" she says when you finally leave the dance floor.
<</if>>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
"@@.npc_psychiatrist;You up for more? I don't know about you but dancing like that, well... it gets my blood pumping in other ways... if you take my meaning.@@"<br>
<br>
You smile — there had been more than a few times where you felt her give you a little "poke" while the two of you were pressed together...<br>
<br>
[<<moveTo "event_psychiatrist_dinner_7_sex_1" "You aren't ready for the night to be over..." 5000>>]<br>
[<<moveTo "event_psychiatrist_dinner_8" "Say you're ready to head home." 1800>>]
<<else>>
"@@.npc_psychiatrist;Well, I just wanted to thank you for the evening... it's nice to see you outside the office but... well, I think this is as far as we'll be going tonight. Going further well... it being your first time... it would violate professional ethics, I think.@@"<br>
<br>
<<printThought "THAT is the line for her ethics?">><br>
<br>
You nod, thanking her, as well as she leads you to the exit.<br>
<br>
[<<moveTo "event_psychiatrist_dinner_8" "Guess you're ready to head home..." 1800>>]
<</if>>
</div>/*#
#desc: psychiatrist motel room sex
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "No Tell Motel">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lingerie")>>
<div id="invframe" class="scrolltext">
From the restaurant you travel up to a discreet motel on one of the upper floors of the building, <<=setup.getNpcName("npc_psychiatrist","formal")>> paying cash for a couple of hours, passing an obvious lady of the evening and her client in the hallway who smiles at you <<if setup.getTotalValue("whoring") > 10>>in silent professional acknowledgement <</if>>as you head for your room.<br>
<br>
Barely has the door closed behind you when your and <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> hands are all over each other.<br>
<br>
"@@.npc_psychiatrist;Do you know how hard it is to resist you during our sessions?@@" She whispers in between kisses, pulling off her tie and letting her unbuttoned coat fall to the floor. "@@.npc_psychiatrist;You were always cute, but now... you're as beautiful on the outside as you always were on the inside. And I should know: I'm your therapist, after all...@@" You blush and kiss her back as
<<if $scene.lead>>
you lead the way to the bed. You strip her of her panties with a single pull and toss them to the side, her hard <<getWordPenis false>> almost matching the excited grin on her face as her legs fold back and you squat down onto her.<br>
<br>
You may be in the top "Amazon" position, but the only thing in control is your mutual lusts
<<else>>
she leads you to the bed. Her panties disappear in a flash, tossed to the side as she moves on top of you, your arms and legs wrapped around her
<</if>>
as she slides into you, punching far above her weight as her small <<getWordPenis false>> somehow manages to be the perfect length to exactly poke your most sensitive spot.<br>
<br>
"@@.npc_psychiatrist;Goddess you're so tight,@@" she moans. You can tell from the tremble in her voice that she's ready to cum already, but she holds back, hard inside of you, lips and fingers piling on as she shows the same thoroughness in the bedroom as she does when you're on her couch — seeking out your most sensitive, vulnerable parts and making them feel so, so, much better...<br>
<br>
You cum, of course... and then again, each climax rejuvenating and refreshing as she keeps up a constant patter about how wonderful and perfect you are. On some level you recognise what she's doing, conditioning you to associate her words of encouragement with pleasure, but that only makes it feel even better.<br>
<br>
[<<moveTo "event_psychiatrist_dinner_7_sex_2" "Continue." 1800>>]
</div>/*#
#desc: psychiatrist motel room sex
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -30>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "No Tell Motel">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lingerie")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist","formal")>> cums... you think; it's hard to tell for certain she has you on such a high of your own, your consciousness flickering for a moment as you look <<if $scene.lead>>down<<else>>up<</if>> at her proud smile.<br>
<br>
You come to lying in the bed, wrapped in her arms, feeling a sense of calm rejuvenation.<br>
<br>
"@@.npc_psychiatrist;You really are wonderful, you know that? Sure, what you've been through is...@@" Her voice trails off. "@@.npc_psychiatrist;But, well... there are good parts as well, there are always good parts...@@"<br>
<br>
You smile back, her tender aftercare at least as satisfying as her incredible skills as a lover...<br>
<br>
[<<moveTo "event_psychiatrist_dinner_7_sex_3" "Continue." 1800>>]
</div>/*#
#desc: psychiatrist motel room sex
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.dinner.sex = true>>
<<if $scene.lead>>
<<set $npc_psychiatrist.flags.dinner.sex_dom = true>>
<<else>>
<<set $npc_psychiatrist.flags.dinner.sex_sub = true>>
<</if>>
<<applyStress -30>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "No Tell Motel">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_lingerie")>>
<div id="invframe" class="scrolltext">
There's a knock on the door, interrupting your cuddling. "@@.generic_female1;Ten minute warning, pay up or move out.@@"<br>
<br>
"@@.npc_psychiatrist;Why does convenience always seem to be rushed?@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> remarks as she slides off the bed and starts getting dressed.<br>
<br>
She straightens her hat and offers you a hand. You stand up and are about to follow her out of the room when you notice her panties still crumpled near the wall where they were passionately tossed aside. You grab them and are about to offer them back when she turns back and winks.<br>
<br>
<<if setup.checkItemOwned('panties_psychiatrist')>>
"@@.npc_psychiatrist;How chivalrous... though I suppose you have already earned a pair...@@"
<<else>>
"@@.npc_psychiatrist;How chivalrous! But you'll have to do more than a romp in the hay if you want to earn these...@@"
<</if>>
<br><br>
You blush and follow her out of the room and back down to the car.<br>
<br>
[<<moveTo "event_psychiatrist_dinner_8" "Head home." 1800>>]
</div>/*#
#desc: psychiatrist drives you home
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist","formal")>> drops you off at home, her previous casual smile shifting slightly before she bids you goodnight. "@@.npc_psychiatrist;I hope you enjoyed yourself. You've come a long way but health is a journey, not a destination, but with the right traveling companions, well...@@" Her tone gets momentarily more serious. "@@.npc_psychiatrist;Remember what I said and keep focused, we can beat this thing, together.@@"<br>
<br>
You nod, noting the slight edge of desperation in her voice. For all you've been the target of the company's machinations, you're far from its only victim.<br>
<br>
[<<moveTo "room_foyer" "Head up to your flat." 300>>]
</div>/*#
#desc: psychiatrist secret theme: manager
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_manager_psych' 0 'theme_psychiatrist_secret_theme_manager_psych_1' true 'privatethemes'>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> what's really going on with <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles in amusement. "@@.npc_psychiatrist;Of course you would ask about <<=setup.getNpcName("npc_manager","first")>>...@@" She shakes her head. "@@.npc_psychiatrist;Oh, where to begin... <<=setup.getNpcName("npc_manager","formal")>> is probably the greatest natural dominant I've ever met, and with a will of iron. She has a... peculiar perspective on human behaviour, warped even further by being in a situation not dissimilar to my own. She was perfectly suited for managing the company's unique system, keeping both employees, and their managers in line... but now, now she's about the last thing holding back <<=setup.getNpcName("npc_boss","formal")>> from fully rolling out <<his npc_boss>> plans.@@"<br>
<br>
"@@.npc_psychiatrist;Much like myself <<=setup.getNpcName("npc_manager","first")>> is fighting a holding position, with you as collateral damage... though maybe you're the solution to all our problems? Something for you to think about...@@"<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: manager relationship
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_psychiatrist', 'formal')>> what happened to her relationship with <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<if State.hasPlayed("event_psychiatrist_manager_reunion_6")>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'secret', 'theme_psychiatrist_secret_theme_manager_psych', 'privatethemes')>>
<<set $npc_psychiatrist.privatethemes.secret[_themeId].repeatable = false>>
"@@.npc_psychiatrist;Much better now... thanks to you,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with a knowing twinkle in her eye.<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> sighs, this topic clearly bringing up some emotional memories.<br>
<br>
"@@.npc_psychiatrist;We used to be close, actually... I looked up to her, an example of another woman thriving in at the highest, cut-throat levels of the company and she found me... interesting.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> chuckles, you get the feeling that <<=setup.getNpcName("npc_manager","formal")>> finds quite a number of things "interesting." <br>
<br>
"@@.npc_psychiatrist;She was a bit wary, even then, and I realised later her words of caution were to guide me away from things that might be... mis-used by <<=setup.getNpcName('npc_boss', 'formal')>>. Would that I had paid more close attention to her subtle advice... but I was naive, and by the time I got involved with <<=setup.getNpcName('npc_barista', 'formal')>>... well, her ambition drove a wedge into my prior friendship, and then once she was caught and I left the company...@@"<br>
<br>
[<<moveTo "theme_psychiatrist_secret_theme_manager_psych_2" "Ask if she would be interested in re-kindling the friendship?" 60>>]
<</if>>
</div>/*#
#desc: psychiatrist secret theme: manager details
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_barista.stage == 10>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'secret', 'theme_psychiatrist_secret_theme_manager_psych', 'privatethemes')>>
<<set $npc_psychiatrist.privatethemes.secret[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> gives a resigned nod.
<<if $npc_barista.stage == 0>>
"@@.npc_psychiatrist;I would... but now is not the time... I have too many other matters distracting me, and I can only imagine it is even worse for <<=setup.getNpcName("npc_manager","first")>>.@@"
<<elseif $npc_barista.stage == 10>>
"@@.npc_psychiatrist;I would... but I do not see how it would be possible. I hardly know what I could say and <<=setup.getNpcName("npc_manager","first")>> is monitored even closer than I... making talking out our separation an even more impossible feat.@@"
<<else>>
"@@.npc_psychiatrist;I would... but it is not the time. Perhaps once we have finished with <<=setup.getNpcName('npc_barista', 'formal')>>... but, even then... I hardly know what I could say and <<=setup.getNpcName("npc_manager","first")>> is monitored even closer than I... making talking out our separation an even more impossible feat.@@"
<</if>>
<br><br>
<<if State.hasPlayed("theme_manager_private_psychiatrist_manager_1")>>
<<printThought "Hmm... sounds like their relationship could be repaired... if I could only get them together somewhere safe...">>
<<else>>
<<printThought "Hmm, I wonder how <<=setup.getNpcName('npc_manager', 'formal')>> feels? Would have to talk to her about it privately...">>
<</if>>
<br><br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: boss
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> what's really going on with <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
She winces, and reflexively glances around. "@@.npc_psychiatrist;<<=setup.getNpcName("npc_boss","formal")>> is, well... probably the most powerful, and evil, person you will ever meet. These things are related. <<Hes npc_boss>> been working <<his npc_boss>> way up the corporate ladder and now, as acting CEO, well... <<he npc_boss>> believes in only two things — that everyone else must show absolute obedience to the person in charge... and that <<he npc_boss>> should be that person. Towards that end, well... the mergers, you... it's all part of <<his npc_boss>> plan to take complete control. After all, why have employees when you can have slaves? And why have slaves, when you can have utterly obedient drones. Sure, Social Interaction Service Syndicate Inc. has always been a bit... different at the executive level, but it was a system, a sort of symbiosis.@@"<br>
<br>
You raise an eyebrow in confusion and she explains. "@@.npc_psychiatrist;You see the previous management... they hit on a unique hiring practice, find true submissives, and use that. Let them live 24/7, channeling their urge to serve by making it part of their job, literally. That old idea of looking forward to Monday more than Friday? Well... it turns out orgasms can be even more motivating than a paycheck, for the right employee. Of course the tricky bit was finding the right employees, those who wanted to serve their managers in every way, and likewise managers that would not abuse that power... well, past the point that their subordinates desired. It was a tricky balance, but it's what lead to the company's meteoric rise. Executive retention can be such a challenging thing when you're at the top of the industry, but how can a headhunter match having a loyal, sexy, obedient and doting <<if $fetish.sissy>>SISSI <</if>>Secretary?@@"<br>
<br>
She sighs. "@@.npc_psychiatrist;The problem, at this point, came in that... finding the right people for this sort of thing was hard, and slow. So <<=setup.getNpcName("npc_boss","formal")>> decided... why bother with willing participants? Just figure a way to induce submission, rather than nurture it... I think a lot of us were blind, at the start to just how far <<he npc_boss>> wanted to go with the idea. I know I was so excited to apply my research that I didn't realise how... twisted it had been applied until it was too late. What's particularly scary is how well it's all working. The company is growing faster than ever, and with every fresh victim, each completed merger, <<=ps(setup.getNpcName("npc_boss","formal"))>> influence expands further, and <<he npc_boss>> grows more untouchable.@@"<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: work_doctor
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
Her expression immediately hardens. "@@.npc_psychiatrist;<<Him npc_work_doctor>>...@@" She sighs. "@@.npc_psychiatrist;We actually started at the company about the same time. Two different approaches to the problem of improving employee health and wellness. I'll admit that, fresh from finishing my degree, I was a bit over-eager to apply my ideas, and blind to their potential misuse but <<he npc_work_doctor>>... <<he npc_work_doctor>> was on board with <<=ps(setup.getNpcName("npc_boss","formal"))>> plans from the very beginning, an eager sycophant with no compunctions about doing anything for more power...@@"<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName("npc_boss","formal")>> may be the biggest threat, the one in control, but, and this is my professional opinion on the matter — <<=setup.getNpcName("npc_work_doctor","formal")>> is insane. Willing, and eager, to do anything to further <<his npc_work_doctor>> goals... and satisfy <<his npc_work_doctor>> desires.@@" She looks you in the eye. "@@.npc_psychiatrist;And, I'll be honest on this one... whatever our original professional disagreements, at this point? Well, my problems with <<him npc_work_doctor>> are DEEPLY personal<<if setup.findThemeId('npc_technician', 'rpg', 'theme_technician_barista_gangbang') != -1>>, as you well know<</if>>.@@"<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: company
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about the company itself.<br>
<br>
"@@.npc_psychiatrist;Well, you've worked there... I think you know most of it. They're a multi-national leader in, well... name it. Really came into their own after the war, having used that period of economic uncertainty to aggressively acquire anything they could, then ride the post-war boom into the stratosphere. The current CEO, <<=setup.getNpcName("npc_boss","formal")>> is intent on continuing that rate of growth... and willing to do anything to ensure it happens.@@"<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: therapy
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about her "unique" approach to therapy.<br>
<br>
She smiles, perhaps with a hint of pride. "@@.npc_psychiatrist;Yes... well, you've seen enough to understand my philosophy, that one is served best by exploring and indulging. That freedom of self is paramount, but I suppose I should tell you where it all began.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> takes a drink and smiles at the recollection as she continues. "@@.npc_psychiatrist;You see, back when I was in college there was this girl. She was a TA and she was, to my mind, a paradox. She dressed, and acted in public, like a total bimbo slut. Tits that would stop traffic, an ass that made her as good going as she was coming... and tight clothes and sky-high heels that highlighted it all. Yet, for as much of her free time as she spent on her back or bent over in an alleyway getting fucked from both ends... she was a brilliant TA, on a full-ride scholarship and with a list of academic achievements even longer than my own. It confused me, I had focused everything on my studies and here she was, the picture of sex-crazed airhead, seeing as much success, and seemingly unbothered by the stress that stalked my every waking moment, and most of my dreams to boot.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> sighs and shakes her head, amused by the memory, "@@.npc_psychiatrist;I feel like an idiot that it took me so long to figure out that she wasn't a contradiction at all, that her embracing of her carnal desires was what gave her the energy and freedom to pursue everything else. Of course, by then I had a full-on bimbofication fetish and from there, well... you've seen how well my techniques work to reduce stress, and tension. I sometimes think of it like the mind is a rubber band, it's all about releasing the tension without having things snap back dangerously.@@"<br>
<br>
She pauses and you can hear the guilt in her voice. "@@.npc_psychiatrist;Unfortunately by the time I realised just how far the company was planning on applying my research... well, I was in too deep. I'm sorry for how I treated you... I thought I could just ignore it, keep it professional but, well... as I said, I'm sorry, and if we could get out from under things... I promise I'll do whatever I can to make it up to you.@@"<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: hypno
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about her ongoing VR study...<br>
<br>
<<switch $npc_psychiatrist.hypnosis>>
<<case 0>>
She winces. "@@.npc_psychiatrist;In a way, I guess I'm glad you always turned down my offer... even if the company has been riding my ass about it. You see, my idea was to build a virtual scenario where a patient could experiment with the extremes of their desires and thus unburden themselves. The company, well... they saw that exposure could breed addiction and that's the version I would have to inflict on you before they will allow me to give you my version...@@"
<<case 1 2 3>>
She winces. "@@.npc_psychiatrist;Unfortunately what you've experienced — not that you can consciously remember it, well... it's a perversion of my work. My idea was to build a virtual scenario where a patient could experiment with the extremes of their desires and thus unburden themselves. The company, well... they saw that exposure could breed addiction and that's the procedures they're forcing me to inflict on you before they allow me to give you my version...@@"
<<case 4 5 6>>
She smiles awkwardly. "@@.npc_psychiatrist;Yes, well... I'm sorry about that. Another perversion of my work... the idea is to help patients experiment and embrace their desires in a safe environment. Of course that has a side effect of increasing them, but that's not a problem so long as they're indulged in a safe and consensual manner... the company, well... they just decided to take advantage of that latter half. Those early sessions, that's their perversion of my work. The more free form selection stuff? That's the real heart of what I'm doing. I'll admit it's intense but... well, the idea is giving you the choice, the rest, well... I like to tell myself your enthusiasm points to a need that would have been indulged in any case... but I also cannot prove that those early, corrupt efforts did not have an affect. As I said, I had no choice. I'm sorry.@@"
<<default>>
ERROR: unexpected npc_psychiatrist.hypnosis <<=$npc_psychiatrist.hypnosis>>
<</switch>>
<br><br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: drugs
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about the various drugs you've been given.<br>
<br>
"@@.npc_psychiatrist;Yes, that is the realm of <<=setup.getNpcName("npc_work_doctor","formal")>>. <<His npc_work_doctor>> goal is to come up with the perfect cocktail to turn anyone into a sex-crazed, submissive slut... well, that and help <<him npc_work_doctor>> compensate for <<his npc_work_doctor>> own inadequacies.@@" She chuckles. "@@.npc_psychiatrist;It's ironic — <<his npc_work_doctor>> belief in chemistry over psychology stems from the insistence that it's more efficient and reliable and, ignoring the fallacy of that thesis... <<he npc_work_doctor>> utterly refuses to consider a simple surgery to address <<his npc_work_doctor>> own perceived problem! Talk about a <<man npc_work_doctor>> that would benefit from therapy...@@"<br>
<br>
She shakes her head and then takes a breath. "@@.npc_psychiatrist;Anyway, all of the drugs the company produces come through <<=setup.getNpcName("npc_work_doctor","formal")>>, most of it is derivative and such, refining what already exists in nature rather than anything truly novel but... well, there is no denying their potency. With the amount of money they're sinking into R&D they've already produced a handful of viable products, though <<=setup.getNpcName("npc_boss","formal")>> insists on wanting something even more powerful.@@"<br>
<br>
She pauses. "@@.npc_psychiatrist;Of course <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> obsession with "chemical perfection" would be the perfect way to bring <<him npc_work_doctor>> down... hoisted by <<his npc_work_doctor>> own petard would be quite the appropriate fate, don't you think?@@"<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: barista
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ($fetish.hypnosis || $npc_psychiatrist.hypnosis > 0) && $npc_barista.stage < 2>>
<<addNpcTheme 'npc_technician' 'rpg' 'theme_technician_barista_gangbang'
5
'event_technician_barista_gangbang_1'
true
>>
<</if>>
<<if $npc_barista.stage < 2>>
<<if $currentTasks.hasOwnProperty('barista_cure_intro')>>
<<completeTask 'barista_cure_intro' $now true>>
<</if>>
<<set $npc_barista.stage = 2>>
<<addTaskById 'barista_cure'>>
<</if>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
<<if ($fetish.hypnosis || $npc_psychiatrist.hypnosis > 0) && $npc_barista.stage == 2>>
She glances around nervously... it seems that there are some topics that she does not feel safe discussing, even here.<br>
<br>
"@@.npc_psychiatrist;I am afraid I cannot discuss another patient. If you want additional insight beyond what you get through our normal therapy... perhaps one of my VR sessions might be of use?@@"<br>
<br>
<<printThought "Hmm... whatever is going on, I think I'm going to need to meet her in the virtual world to find out...">>
<<else>>
<<if $npc_barista.stage > 2>>
<<if $npc_barista.stage >= 10>>
"@@.npc_psychiatrist;Well... you pretty much already know the story there, not much more to say, or do, at this juncture...@@"
<<else>>
"@@.npc_psychiatrist;It is as we discussed before. If you could only help me help her...@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> looks pained, hands trembling slightly as she takes another drink.
<</if>>
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> appears pained. "@@.npc_psychiatrist;<<=setup.getNpcName("npc_barista","first")>>... in a way, she's the reason for what I've done to you... you see the two of us were lovers... or something like that. But <<=setup.getNpcName("npc_barista","first")>> was ambitious, so, so ambitious. She ran afoul of <<=setup.getNpcName("npc_boss","formal")>> and, well... <<he npc_boss>> took measures. That was when the scales fell from my eyes and I realised just what they were actually doing with my work. I tried to quit the company, but they weren't going to let me, or my research, escape so easily. And that brings us to now — <<=setup.getNpcName("npc_barista","first")>> unaware that she is even a hostage, while I'm forced to do, well... what I've done.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> leans closer. "@@.npc_psychiatrist;If you could help... from our sessions I know that <<=setup.getNpcName("npc_barista","first")>> is still in there, beneath all the drugs and brainwashing. But I can't save her alone...@@" She pauses and smiles slightly. "@@.npc_psychiatrist;The thing is... there's a window. <<=ps(setup.getNpcName("npc_barista","first"))>> programming is imperfect, and I believe it can be overloaded, with sufficient stimulation. If you and her friends could arrange something, well... that would be the first step in curing her of what has been done.@@"
<</if>>
<</if>>
<br><br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: player
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about her interest in you.<br>
<br>
She sighs, looking at you with compassion, and regret. "@@.npc_psychiatrist;You... at first you were just me doing what I had to to survive. The hold the company has over me... well, you know how deep their claws can get. They commanded me to monitor you, to push you along... and I had no choice but to go along with it. I'll admit that a lot of it still matches up with my feelings, I sincerely believe that embracing our more lusty, even so-called depraved urges is healthy and good and leads to a better life.@@" She shakes her head and takes a sip of her wine.<br>
<br>
"@@.npc_psychiatrist;Given your background you were certainly a bit of an extreme test on paper, but I guess that was the point, if the techniques could work on a literal voluntary virgin... it could work on anyone.@@" She chuckles. "@@.npc_psychiatrist;That said, well... talk about confounders. With the amount of things they threw at you it would be impossible to isolate individual effects, but that's what happens when the corporate types are in charge, they just want more! Now! Rather than any attention to scientific rigour.@@"<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: evil admin
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about what REALLY happened to <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
She looks pained as she explains. "@@.npc_psychiatrist;Yes, your friend... so I want to first state that I was in no way directly involved in what they did to <<him npc_admin>>... but I can with equal assurance add that what they did was at least partially based on my research.@@" She sounds genuinely sorrowful as she continues. "@@.npc_psychiatrist;I was young and naive... focused on discovery over how my findings might be misused, results such as this, well... this is the world that <<=setup.getNpcName("npc_boss","formal")>> wants, one where any rebellion is punished and obedience is enforced wherever it is not offered. The one comfort I can provide is that what has happened is almost certainly reversible... though effecting such will not be easy, nor without risk.@@"<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: ex gf drugging
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> about your discovery about how the company, by way of <<=setup.getNpcName("npc_work_doctor","formal")>> messing with you from before the start — that <<=setup.getNpcName("npc_exgirlfriend","first")>> was drugged and that led to her cheating on you and your life falling apart.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> looks surprised for a moment, and then shakes her head. "@@.npc_psychiatrist;I will tell you the truth... I was not aware of this... but it also does not surprise me. <<=setup.getNpcName("npc_boss","formal")>> gets off on nothing as much as <<he npc_boss>> does manipulating things... setting you up like that... as I said, I did not know, but I am not surprised.@@" She forces a smile.
<<if $npc_exgirlfriend.flags.knowTruth >= 2>>
"@@.npc_psychiatrist;At least the both of you know and, even if you're no longer traveling through life together, well... hopefully it can help heal some old wounds.@@"
<<else>>
"@@.npc_psychiatrist;I hope this knowledge gives you some comfort... and, on a similar note, I think you should tell your ex. It would not be fair for her to continue to carry guilt for something she was at least partially manipulated into.@@"
<</if>>
<br><br>
You nod and take another sip of your drink, mind reeling at the reminder of how many ways that <<=setup.getNpcName("npc_boss","formal")>> has fucked with your life.<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: primrose
#status: FINISHED 0.8.5
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about <<=setup.getNpcName("npc_primrose","formal")>>.<br>
<br>
Her expression immediately softens. "@@.npc_psychiatrist;Right. <<Him npc_primrose>>.@@" She sighs and begins to explain. "@@.npc_psychiatrist;<<=setup.getNpcName("npc_primrose","first")>> and I worked together at the company for some time. <<He npc_primrose>> was brought in after another merger, I don't remember what lab we absorbed. There was a lot of expansion at the time. <<He npc_primrose>> was eager to please and to prove <<him npc_primrose>>self to me, and my superiors. Obviously, that wasn't <<his npc_primrose>> name at the time. That was <<=ps(setup.getNpcName("npc_boss","formal"))>> doing.@@"<br>
<br>
She exhales and continues. "@@.npc_psychiatrist;When I left <<=setup.getNpcName("npc_work_doctor","formal")>> was looking to shutter the entire project, diverting funding and staff to <<his npc_primrose>> own staff, or projects.@@" The way she looks at you communicates clearly that some of those "staff" might be better termed as victims.<br>
<br>
"@@.npc_psychiatrist;Despite all that, <<=setup.getNpcName("npc_primrose","first")>> refused to give up. <<He npc_primrose>> managed to weather the storm and continued working in secret, on top of <<his npc_primrose>> new responsibilities. Once <<he npc_primrose>> had something presentable <<he npc_primrose>> made one last daring effort to try and keep our department alive after I'd already left. <<He npc_primrose>> went to <<=setup.getNpcName("npc_boss","formal")>> <<him npc_boss>>self and made <<his npc_primrose>> proposal. Whatever <<he npc_primrose>> showed <<him npc_boss>> was enough to save our research but... it came at a price.@@"<br>
<br>
You ask her what that price was? "@@.npc_psychiatrist;I wasn't there, mind, so I can't be sure if <<=setup.getNpcName("npc_primrose","first")>> was not already using <<him npc_primrose>>self as a test subject... even at that time <<he npc_primrose>> was somewhat... reckless, and prone to over-commit to things. In any case, I do know that <<=setup.getNpcName("npc_boss","formal")>> instructed <<=setup.getNpcName("npc_primrose","first")>> to demonstrate the programming on <<him npc_primrose>>self. If it was strong enough to crack a mind as sharp as <<his npc_primrose>> then it was worth saving. Turns out it was strong enough...@@" She sighs and leans back in her chair. "@@.npc_psychiatrist;In a cruel irony, even as <<=setup.getNpcName("npc_primrose","first")>> went from merely loyal to utterly infatuated with <<his npc_primrose>> boss, that success made <<him npc_primrose>> immediately uninteresting to <<=setup.getNpcName("npc_boss","formal")>>. Such a simple conquest, and an unresisting victim... <<=setup.getNpcName("npc_primrose","first")>> had surrendered <<him npc_primrose>>self as a proof of loyalty and devotion, but rather than getting such in return, <<he npc_primrose>> had merely transformed <<him npc_primrose>>self into a source of cruel amusement... poor bastard.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> runs a finger around the edge of her wine-glass as she continues her lament. "@@.npc_psychiatrist;It's unfortunate. <<=setup.getNpcName("npc_primrose","formal")>> was always into pink and dolls but was too focused on work and embarrassed to embrace it outside of the most private simulations that <<he npc_primrose>> didn't think I knew about. In some ways <<he npc_primrose>> is more <<him npc_primrose>>self now than <<he npc_primrose>> was when <<he npc_primrose>> was still in the closet but <<he npc_primrose>>'s shackled to someone who is never going to give <<him npc_primrose>> the attention <<he npc_primrose>> desires. <<He npc_primrose>>'s never going to be truly happy until <<he npc_primrose>> gets away from <<=ps(setup.getNpcName("npc_boss","formal"))>> influence... but such an addiction is hard to break.@@" She looks back to you before waving her hand dismissively. "@@.npc_psychiatrist;Sorry, didn't mean to get caught up in the past. Thank you for keeping an eye on <<him npc_primrose>>. Given what has been done to <<his npc_primrose>> mind you ought to exercise caution in <<his npc_primrose>> presence... but know that, unlike <<=setup.getNpcName("npc_work_doctor","formal")>>, <<he npc_primrose>> is not truly malicious. Though perhaps that only makes it worse... Let's change the subject, hmm?@@"<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: ai human help
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.human.assistance_psychiatrist = true>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'ai', 'theme_psychiatrist_ai_rescue')>>
<<if _themeId != -1>>
<<set $npc_psychiatrist.themes.ai[_themeId].done = 1>>
<</if>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
<<if $npc_ai.flags.human.rescue>>
You are ask <<=setup.getNpcName("npc_psychiatrist","formal")>> if she could provide assistance to <<=setup.getNpcName('npc_ai_human', 'formal')>>, now that she has been rescued from the company's asylum.<br>
<br>
"@@.npc_psychiatrist;Of course, in fact, I have already been speaking with <<=setup.getNpcName('npc_ai', 'other')>> to help with re-integrating <<=setup.getNpcName('npc_ai_human', 'formal')>> with the world. Thank you again for your efforts in rescuing the poor woman... what <<=setup.getNpcName('npc_work_doctor', 'formal')>> did to her...@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> shudders.
<<else>>
You state that you had a question on behalf of your "mutual friend," <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods.<br>
<br>
You explain that you have found <<=setup.getNpcName('npc_ai_human', 'formal')>> in the asylum beneath the company, and that <<=setup.getNpcName('npc_ai', 'first')>> needs your assistance to rescue, and then de-program <<=setup.getNpcName('npc_ai_human', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Oh my. She disappeared so suddenly I thought she was... well, if she has been in the asylum this long that may well have been worse. What happens on those levels... I only barely saved <<=setup.getNpcName('npc_barista', 'first')>> from such a fate. It is the oubliette that <<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_work_doctor","formal")>> use when they want to REALLY disappear someone, but think they might have some use for them yet.@@"<br>
<br>
She thinks for a moment. "@@.npc_psychiatrist;I will see what I can come up with as far as a therapy program to help her out. Given their shared processing I believe <<=setup.getNpcName("npc_ai","other")>> should be quite well positioned to restore her creator... damn, but this would be a fascinating case study were it not for the evil acts that brought us to this point.@@"<br>
<br>
She nods. "@@.npc_psychiatrist;I will coordinate the rest with <<=setup.getNpcName("npc_ai","other")>>. Was there anything else you wished to discuss?@@"
<</if>>
<br><br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: psychiatrist secret theme: npc_evil_nurse
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "TODOrestaurant">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about <<=setup.getNpcName("npc_evil_nurse","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> grits her teeth. "@@.npc_psychiatrist;On the one hand, I should feel sympathy for <<=setup.getNpcName("npc_evil_nurse","formal")>>. She has been broken and twisted as badly as anyone else to fall victim to the company... but, on the other, well.@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> shudders. "@@.npc_psychiatrist;Though her sadism may have been artificially amplified and directed, the fact remains that she has acted with considerable malice against those I hold dear, or have at some time or another called friend. Perhaps, divorced from <<=setup.getNpcName("npc_work_doctor","formal")>> and such, she might be able to recover to the woman she was before... but unless she went through suitable repentance, and managed to earn forgiveness from her victims, well...@@"<br>
<br>
<<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> words trail off, and you decide to talk about something else.<br>
<br>
<<printNpcTheme 'npc_psychiatrist' 'privatethemes' 'event_psychiatrist_dinner_4'>><br>
[<<moveTo "event_psychiatrist_dinner_5" "You're done talking, for now." 1800>>]
</div>/*#
#desc: visit psychiatrist for first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many recent strange ideas...">>
<<set _name = setup.getNpcName('npc_psychiatrist', 'full')>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.missedVR = !$scene.missedVR>>
<<if $npc_psychiatrist.flags.signednda>>
<<addItem 'plugsuit_adv'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.flags.signednda>>
You enter the office and close the door behind you. It seems like <<=setup.getNpcName('npc_psychiatrist', 'formal')>> was already awaiting your arrival, but this time she has a giant welcoming grin on her face, as if she knew you'd be back, but has been very much looking forward to it.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, I cannot tell you how glad I am that we can continue our little investigation into the human mind. We talked about everything important the last time in great detail, so let's not waste any more time and move on with the agenda. If you would kindly follow me?@@" she says while standing up and walking towards a door. You could have sworn the door wasn't there when you were here for your therapy session. It does seem styled to match the wall, and that portion of the office is oddly unlit.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0' 'Follow after her.' 180>>]
<<else>>
You enter the office and close the door behind you. It seems like <<=setup.getNpcName('npc_psychiatrist', 'formal')>> was already awaiting your arrival, as she greets you with an heartfelt smile.<br>
<br>
"@@.npc_psychiatrist;I am glad you could make yourself free for our little study on the human mind. Please, take a seat. Before we start our excursion into the subconscious, let me explain a few things. This first session is a test, to see how well your brain reacts to basic trance induction techniques. There won't be many changes after this first session. It's more like shaping a key to unlock your subconscious. Once we have your key future sessions can be devoted to exploring, and optimising, what's inside that pretty little noggin' of yours.@@"<br>
<br>
There is a small pause for dramatic effect.<br>
<br>
"@@.npc_psychiatrist;The question of course is, does this key fit or will your lock reject it. I've seen this a few times and the literature is strong in supporting that even with voluntary virtualised therapy like this if the subconscious blocks it, it cannot happen. After all, there is no such thing as hypnosis or mind control like the media might lead you to believe. All we can do is help awaken or encourage things you're subconsciously already okay with. So, if someone... just as an example, put you in a trance and commanded you to <<if !$options.fem_all_men>>dress up as a whore and prowl the streets at night<<else>>become gay and suck cock all night long<</if>>... if you did do that, it would be because you were already a cockhungry <<if $fetish.slurs && $options.fem_all_men>>faggot<<else>>whore<</if>> deep down all along, and not because you were hypnotised.@@"<br>
<br>
<<printThought "What kind of example is that...">><br>
<br>
"@@.npc_psychiatrist;Again, for today's session all we are doing is finding out, what your subconscious desires and unlocking things a little. You cannot be forced to do something you didn't want to do in the first place. But, and this is one of the main purposes of therapy as a whole, you find out things about yourself you did not know. Since you have found out a few things about yourself these last few days in the course of becoming a secretary this is the perfect time to start this little experiment. Wouldn't you agree, <<=$player.first_name>>?@@"<br>
<br>
You simply nod, not knowing how else to answer.<br>
<br>
"@@.npc_psychiatrist;Anyway, any session you attend after this one, if this works, will be a lot more effective. And if this one doesn't work... well, I doubt that will happen, but if it does and your subconscious does indeed reject the idea of being hypnotised and unlocked. Well, then any further sessions would be a waste of time and money. Don't worry, you'll be paid for your first session no matter how it turns out.@@"<br>
<br>
<<printThought "Hmm... I could really use that money... and I am a bit curious about the whole thing.">><br>
<br>
"@@.npc_psychiatrist;One more thing. I'd need you to sign this non-disclosure agreement. This is cutting edge exploratory research we conduct here. You seem very trustworthy, but I really can't risk any information about this leaking to the public before I have a chance to publish.@@"<br>
<br>
She hands you an agreement. Just like your contract with Social Interaction Service Syndicate Inc. this one has way too many pages. The contract must be at least 40 pages long and is written in a really small font.<br>
<br>
"@@.npc_psychiatrist;Don't worry, it's just a standard NDA. I can send you a copy to your email account, but if you want to join this experiment today I need you to sign this right now... if I hadn't forgotten to hand you this after you left our last session, you would have had enough time to read it, but alas, here we are. So... pretty please?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_sign' 'Sign the NDA for the money.' 120 "<<set $scene.money=true>>">>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_sign' 'Sign the NDA for <<=setup.getNpcName("npc_psychiatrist", "formal")>>.' 120 "<<set $scene.money=false>>">>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_notsign' 'Refuse to sign the NDA.' 120>>]
<</if>>
</div>/*#
#desc: sign psychiatrist nda before first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'plugsuit_adv'>>
<<set $npc_psychiatrist.flags.signednda = true>>
<<if !$player.sec_style.submission.vr_therapy>>
<<if $scene.money>>
<<set $player.sec_style.submission.vr_therapy = "money">>
<<else>>
<<set $player.sec_style.submission.vr_therapy = "obedient">>
<</if>>
<</if>>
<<set _name = setup.getNpcName('npc_psychiatrist', 'full')>>
<<addEmail $computer
_name
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_psychiatrist_01_h'
'mail_psychiatrist_01_t'
'{"name":"nda_vr_therapy.pdf","type":"event","data":{"event":"attachment_read_nda"}}'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<useClothSetPush 'hypno_start'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.money>>
You see credits and
<<else>>
You see how much it would make <<=setup.getNpcName('npc_psychiatrist', 'formal')>> happy and
<</if>>
don't even bother reading the NDA, just flipping to the end and put your signature on the last page of the document.<br>
<br>
<<printThought "I really hope this does not bite me in the ass one day.">><br>
<br>
"@@.npc_psychiatrist;Yay! Very good. Ten points for our adventurous Bim... <<if $npc_psychiatrist.flags.knowgender=="male">>boy<<elseif $npc_psychiatrist.flags.knowgender=="female">>girl<<else>>subject<</if>>. Now, if you would kindly follow me?@@" she says while <<if $npc_psychiatrist.flags.cruel>>releasing your restraints and <</if>>standing up and walking towards a door. You could have sworn this door wasn't there a moment ago. Then again, it does look pretty much like the wall, and that part of the office isn't all that well lit.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_1' 'Follow her.' 180>>]
</div>/*#
#desc: first hypnosis session introduced to VR plugsuit
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'hypno_start'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Please, come into my laboratory and take this,@@" she says while
<<if $scene.strict>>
wheeling you forward, locking the door, and then finally releasing your restraints as she hands you
<<else>>
handing you
<</if>>
a small, red case,"@@.npc_psychiatrist;This contains a VR Plug Suit, which does have two functions. Reading your Vital and Mental Data as well as providing your body with stimulus to intensify the immersion. Maybe one day we'll upgrade to one of these fancy Nintendolls immersion Chambers, but with our current budget we have to be a bit more judicious in spending.@@"<br>
<br>
You take the case and open it up. On one hand you're intrigued with all the new tech you're making contact with. Until now the best VR Tech you ever tried was one of some ancient VR Goggles from the last decade. On the other hand the suit looks less like the fancy haptic suits you've seen in advertisements and more like anime latex fetish cosplay.<br>
<br>
"@@.npc_psychiatrist;Ah yes. Another cost cutting measure, I apologise if it takes you a bit to... get used to the design. Real Stimuli Suits are very expensive so we were forced to create our own, and it turns out that, for short-term wear, a latex catsuit with integrated stimulators works very well indeed. Oh, perhaps I should mention that was originally a woman's catsuit, I hope you don't mind.@@"<br>
<br>
<<if $npc_psychiatrist.flags.knowsyoucrossdress>>
She smirks. "@@.npc_psychiatrist;Oh, what am I saying? I bet you probably prefer it this way.@@"
<<else>>
There is a hing of a smile in her voice as she continues. "@@.npc_psychiatrist;It might be a little bit tight in some regions, but your butt is pretty big. Given that snugness of fit has been clinically proven to correlate positive with effectiveness of treatment, this design might suit you better anyway.@@"
<</if>>
<br><br>
<<if setup.getTotalValue('feminization')<5>>
<<printThought "Oh, come on!">>
<<else>>
<<printThought "Oh. Well, not like I'm not already getting used to wearing things with a more feminine cut...">>
<</if>>
<br><br>
"@@.npc_psychiatrist;Now, if you would kindly follow me into the changing booth? I can help you into the suit. Trust me, unless you're really into latex it can be trickier than you'd think!@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_1' 'Follow her.' 180>>]
</div>/*#
#desc: refuse to sign nda at first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You refuse to put your signature on the document.<br>
<br>
<<printThought "No, I have had my fill of documents I did not read through thoroughly.">><br>
<br>
"@@.npc_psychiatrist;Oh,@@" she replies, all prior excitement draining from her face, "@@.npc_psychiatrist;You want to read it first, of course. Only I was really hoping to get started today... is there no way, I can... you know... like change your mind?@@"<br>
<br>
Her mood makes another 180. From really motivated to depressed to... playful? By pulling her shoulders a little bit forward and crossing her hands under her well endowed breasts she frames their already impressive stature. Playfully rolling one shoulder forward even more one of the shoulder straps of her dress slowly drifts down, revealing even more of her alabaster skin. Putting one finger on her lower lip and slowly stroking over it provocatively, she purrs at you "@@.npc_psychiatrist;I'd really make it worth your while. If. You. Know. What. I. Mean.@@"<br>
<br>
You gulp audibly and blush.<br>
<br>
<<printThought "No, I have to be reading this wrong, right? I am pretty sure this is against the ethics codes of all major mental health professionals...">><br><br>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_sign' 'Give in.' 180>>]<br>
<<if $fetish.hypnosis>>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_notsign_forced' 'Take a deep breath and decline once again.' 180>>]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_1_0_notsign_nope' 'Take a deep breath and decline once again.' 180>>]
<</if>>
</div>/*#
#desc: double down on refusing to sign nda for first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _name = setup.getNpcName('npc_psychiatrist', 'full')>>
<<addEmail $computer
_name
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_psychiatrist_01_h'
'mail_psychiatrist_02_t'
'{"name":"nda_vr_therapy.pdf","type":"event","data":{"event":"attachment_read_nda"}}'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You still refuse to put your sign on the document.<br>
<br>
<<printThought "Nope. Still not convinced.">><br>
<br>
"@@.npc_psychiatrist;Oh well. You can't say that I didn't try. I'll send you the NDA anyway, can you at least take a look at it? So maybe we can get you a new appointment in the future? You have my card already so you can contact me anytime if you're ready to start this experiment. I wish I could tell you more without the NDA, but trust me what say I am sure you will be surprised and grateful by what you'll find out about yourself participating in this study.@@"<br>
<br>
"@@.npc_psychiatrist;Well, if there's no way to convince you otherwise, I think this means goodbye for now.@@"<br>
<br>
<<if $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
<</if>>
</div>/*#
#desc: forced sign psychiatrist nda before first hypnosis session
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'plugsuit_adv'>>
<<set $npc_psychiatrist.flags.signednda = true>>
<<if !$player.sec_style.submission.vr_therapy>>
<<set $player.sec_style.submission.vr_therapy = "forced">>
<</if>>
<<set _name = setup.getNpcName('npc_psychiatrist', 'full')>>
<<addEmail $computer
_name
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_psychiatrist_01_h'
'mail_psychiatrist_01_t'
'{"name":"nda_vr_therapy.pdf","type":"event","data":{"event":"attachment_read_nda"}}'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 2>>
<<useClothSetPush 'hypno_start'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You open your mouth to insist that you will not sign, but no sound comes out.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> sighs, her voice suddenly strange, a sing-song tone that is impossible to focus on, yet eerily irresistible. "@@.npc_psychiatrist;I really am sorry about this, but it will be in everyone's best interest if you just go along with things, here, let me help.@@"<br>
<br>
Like a passenger in your own body you watch as she lifts your limp hand and uses it to scratch some semblance of a signature onto her tablet.<br>
<br>
"@@.npc_psychiatrist;There, wasn't that easy? Ten points for our adventurous Bim... <<if $npc_psychiatrist.flags.knowgender=="male">>boy<<elseif $npc_psychiatrist.flags.knowgender=="female">>girl<<else>>subject<</if>>. Now, if you would kindly follow me?@@" she says while standing up<<if $npc_psychiatrist.flags.cruel>>, releasing your restraints<</if>> and walking towards a door. You could have sworn this door wasn't there a moment ago. Then again, it does look pretty much like the wall, and that part of the office isn't all that well lit.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_1' 'You feel compelled to follow her...' 180>>]
</div>/*#
#desc: changing booth + strip for first hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _femaleUnderwear = false>>
<<set _femaleClothing = false>>
<<set _notfullynaked = false>>
<<set _plugsuit = false>>
<<if setup.checkWornItem('plugsuit_adv')>>
<<set _plugsuit = true>>
<<if !$npc_psychiatrist.flags.session[0].bimbofication>>
<<set $npc_psychiatrist.flags.session[0].bimbofication=true>>
<<applyExperience 'bimbofication' 4 'normal' $SEEN_FRIEND>>
<</if>>
<<elseif (setup.checkVisibleClothingTag('female')>20)>>
<<if setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings')>>
<<set _femaleUnderwear = true>>
<<if !$npc_psychiatrist.flags.session[0].sissyfication>>
<<set $npc_psychiatrist.flags.session[0].sissyfication=true>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set _femaleClothing = true>>
<<if !$npc_psychiatrist.flags.session[0].feminization>>
<<set $npc_psychiatrist.flags.session[0].feminization=true>>
<<applyExperience 'feminization' 7 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<elseif setup.getIndecentValue()>25>>
<<set _notfullynaked = true>>
<</if>>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_1_2'>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if !_femaleUnderwear && !_femaleClothing && !_plugsuit && !_notfullynaked>>
You follow <<=setup.getNpcName('npc_psychiatrist', 'first')>> into the changing room, which seems rather spacious for a simple psychiatrist's office. You don't pay too much attention to these details, however, since you're immediately surprised with the next action you're supposed to do.<br>
<br>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, would you kindly strip naked. We have to rub this lotion onto your skin, to increase the connectivity to your suit. It also acts as a lubricant that makes putting on the suit a lot easier, trust me.@@"<br>
<br>
You look at her in disbelief as she merely stares back in expectant anticipation, putting on latex gloves and preparing a tube of an unknown substance.
<<elseif _plugsuit>>
Ignoring the warnings, you try to put on the plug suit by yourself and fail miserably, not even getting your feet in without almost falling on your face.<br>
<br>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, that's very nice. You're connecting with your inner Bimbo while acting very clumsy on purpose. Freeing one's mind can be very liberating, but why don't we use the VR therapy for that, since that is its purpose after all. Now, if you would kindly strip naked, we still need to rub this lotion onto your skin.@@"
<<elseif _femaleClothing>>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, that's very nice. You're connecting with your inner femininity. But if you would you kindly strip naked, we still need to rub this lotion onto your skin.@@"
<<elseif _femaleUnderwear>>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, that's very nice. You're exploring your submissiveness by becoming a <<if $fetish.sissy>>sissy<<else>>cute, slutty girl<</if>>. Noted. But if you would kindly strip naked, we still need to rub this lotion onto your skin.@@"
<<elseif _notfullynaked>>
You take off some of your clothes, but then stop for some unknown reason. Looking at you for a few seconds up and down slowly, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> continues, "@@.npc_psychiatrist;Completely Naked. Don't stop during it right before we get to the good parts. I would go out if it would make you feel any better, but then I'd have to get in again, and help you wear that suit, so there's no gain in it for either of us.@@"
<</if>>
<br><br>
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_hypnosis_1_2" "Remove your clothing." 60 "<<removeAllClothing>>">>]
<</if>>
<<hint $options "You can remove clothing via the inventory.">>
</div>/*#
#desc: first hypnosis session, psychiatrist lubes you up for plugsuit
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkWornItem('plugsuit_adv')>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_1_3'>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.event_psychiatrist_hypnosis_1_2_firstplugged = false>>
<<set $scene.event_psychiatrist_hypnosis_1_2_plugged = false>>
<<set $scene.event_psychiatrist_hypnosis_1_2_plug = "">>
<<set $scene.event_psychiatrist_hypnosis_1_2_caged = false>>
<<set $scene.event_psychiatrist_hypnosis_1_2_cage = "">>
<<set $scene.event_psychiatrist_hypnosis_1_2_plug = setup.getItemTypeName("plug")>>
<<changeHorny 100>>
<<if $scene.event_psychiatrist_hypnosis_1_2_plug != "">>
<<set $scene.event_psychiatrist_hypnosis_1_2_plugged = true>>
<<if !$npc_psychiatrist.flags.foundplug>>
<<set $scene.event_psychiatrist_hypnosis_1_2_firstplugged = true>>
<<set $npc_psychiatrist.flags.foundplug = true>>
<</if>>
<</if>>
<<set $scene.event_psychiatrist_hypnosis_1_2_cage = setup.getItemTypeName("cage")>>
<<if $scene.event_psychiatrist_hypnosis_1_2_cage != "">>
<<set $scene.event_psychiatrist_hypnosis_1_2_caged = true>>
<<if !$npc_psychiatrist.flags.foundplug>>
<<set $npc_psychiatrist.flags.foundcage = true>>
<</if>>
<<else>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location = "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
After you strip naked, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> starts to apply the slippery connectivity enhancer to your whole body from the neck down.<br>
<br>
<<if $scene.event_psychiatrist_hypnosis_1_2_caged>>
Having your nether regions lubed up by a woman as stunning as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> would normally
<<if $player.body_ref.penis>>
cause an enormous reaction by your <<getWordMyPenis false>>, but since it's locked up in the <<=$scene.event_psychiatrist_hypnosis_1_2_cage>> it just strains in futility. Not that it doesn't try, it simply cannot.
<<else>>
have you dripping with excitement, the flood is redirected by your <<=$scene.event_psychiatrist_hypnosis_1_2_cage>> to run down your inner thigh.
<</if>>
Your predicament is plainly, and embarrassingly, visible to <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_5_punishment')>>
<<if _themeId == -1 || $npc_psychiatrist.themes.manager[_themeId].done == 0>>
"@@.npc_psychiatrist;What do we have here? Oh, a chastity device. Well, I don't think it will disturb the simulation <<if setup.isCage()>><<if $player.body_ref.balls>>, but let's make sure your balls are all lubed up at least<</if>>, so we'll just leave it alone<<else>>seeing how very sleek and subtle it is, such a gorgeous, smooth profile<</if>>.@@"
<<else>>
"@@.npc_psychiatrist;Ah, yes, your chastity device... you look so lovely locked up, I can see why <<=setup.getNpcName('npc_manager', 'first')>> insisted on it. Fortunately it will not disturb the simulation <<if setup.isCage()>><<if $player.body_ref.balls>>, but let's make sure your balls are all lubed up at least<</if>>, so we'll just leave it alone<<else>>seeing how very sleek and subtle it is, such a gorgeous, smooth profile<</if>>.@@"
<</if>>
<<else>>
<<if $player.body_ref.penis>>
Which means your <<getWordMyPenis>> as well. You try to think of something that calms your mind, anything but a bombshell like her working your shaft up and down with a lubricating substance. Unsurprisingly, you fail at a spectacular level.<br>
<br>
The stimulus gets too much for your poor, erect <<getWordMyPenis>> and you cum right into the amazingly nimble hands of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. You are so embarrassed it almost causes you physical pain, but <<=setup.getNpcName('npc_psychiatrist', 'first')>> does not seem to be fazed in the slightest.<br>
<br>
"@@.npc_psychiatrist;Don't worry, this happens a lot, probably more often then you can imagine. You seem to be very... sensitive down there.@@" She says while changing her latex gloves for a new set. "@@.npc_psychiatrist;Fortunately for you one of the effects of these procedures is to aid you in better addressing such matters, though in your case that probably means more than just a single session...@@"
<<else>>
From the neck down includes between your legs, and you gasp as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> performs the somewhat-futile effort of applying the slick lubricant to your already wet <<getWordVagina>>. You try to distract yourself from this reality, but your lip is trembling with excitement.<br>
<br>
"@@.npc_psychiatrist;Mmm, I know this part of the procedure can be a bit... distracting, but it really must be done for optimal results.@@"<br>
<br>
You suppress as she finally moves on, leaving you wishing that she would just slide those delicate fingers into you...
<</if>>
<</if>>
<br><br>
<<if $scene.event_psychiatrist_hypnosis_1_2_plugged>>
As <<=setup.getNpcName('npc_psychiatrist', 'formal')>> reaches around to your back and applies the lotion thoroughly on your buttcheeks, a faint "@@.npc_psychiatrist;Oh.@@" escapes her lips. Oh no. You forgot to remove your <<=$scene.event_psychiatrist_hypnosis_1_2_plug>> from your anus.
<<if $scene.event_psychiatrist_hypnosis_1_2_firstplugged>>
<br><br>
"@@.npc_psychiatrist;Already exploring your sexuality, <<=$player.first_name>>? Well, it won't have any influence on the therapy, so I suppose it can stay exactly where it is right now. Let me just double check that it's secure, wouldn't want it falling out mid-session.@@"<br>
<br>
Your rear clenches in anticipation as she wiggles the plug with her finger, your reaction only making the sensation of the intruding toy more intense.<br>
<br>
"@@.npc_psychiatrist;Yup, that seems nice and secure.@@"
<</if>>
<<else>>
As she continues up your back and applies the lotion thoroughly on your buttcheeks, a faint "@@.npc_psychiatrist;Hmm.@@" escapes her lips.<br>
<br>
"@@.npc_psychiatrist;You have a very well figured bottom<<if $npc_psychiatrist.flags.knowgender == "male">>... for a man<</if>>. Do you do Pilates?@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;Don't worry, <<=$player.first_name>>. I am, after all, a professional. It is not the first time I've seen or experienced something like this. Just relax. I think you're all greased up now, please put your feet into the plug suit.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_hypnosis_1_3" "Put on the plugsuit." 60 "<<removeAllClothing>><<wearItem 'plugsuit_adv' true>>">>]
<</if>>
<<hint $options "Manually change clothing via the inventory.">>
</div>/*#
#desc: first hypnosis session, psychiatrist helps you into plugsuit
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No! It took me long enough to put this damn thing on, I'm not taking it off until the session is over!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> slides the latex up your legs. Even with the slick lubrication of the gel, it takes time and feels very tight. By the time the latex reaches your crotch, you come to realise that this suit leaves not a single millimetre of space between you and its second skin-like latex material. You can feel the suit everywhere. <<if $player.body_ref.penis>> On your <<getWordMyPenis>><<if $player.body_ref.balls>>, your testicles<</if>>, your buttcheeks and between them as well<<else>>Tightly clinging between your legs and on up between your buttcheeks as well like a second skin hugging your every contour and fold<</if>>.<br>
<br>
"@@.npc_psychiatrist;Please put your arms into the sleeves, through the wristcuffs and into the gloves.@@"<br>
<br>
You do as you're told. After your fingers are safe in the gloves, she tightens the wrist cuffs and locks them with really secure looking digital locks.<br>
<br>
<<printThought "Wait, what are these for?">><br>
<br>
"@@.npc_psychiatrist;You seem confused about the locks. These are here to prevent you from freeing yourself through subconscious wriggling during the VR therapy session. Don't worry, I'll remove them once we're done. And since they're digital, the timer is set for two hours in case I fall asleep or something happens during the experiment.@@"<br>
<br>
That does not really reassure you, especially as she locks another pair of cuffs to your ankles. Given that you've just been locked up, maybe you don't have a choice, but you decide to stick the session out anyway. After your arms are tight and snug within the suit, <<=setup.getNpcName('npc_psychiatrist', 'first')>> goes behind you to pull the zipper on the back up, and secures the cuff round your neck with a security lock as well.<br>
<br>
"@@.npc_psychiatrist;Now would you kindly follow me to the laboratory. We have to get you into the VR Rig.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_4' 'Follow her.' 300>>]
</div>/*#
#desc: first hypnosis session, enter VR room and put in chair
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You enter a rather dim room. For some reason it reminds you of a dentist's office, but the dentist's chair has been modified with a rather strange-looking construct in the middle. It must be one of those hydraulic VR Chairs you've read about, which allow free movement within the Virtual Reality. <<printThought "Nice">>. <<=setup.getNpcName('npc_psychiatrist', 'first')>> starts a program on a datapad which seems to control the chair. The hydraulics in the construction start up and move back into a neutral position to make it easier to get in.<br>
<br>
"@@.npc_psychiatrist;Please, sit on the chair. Good. Now put your arms through these metallic tubes and put your fingers in the resting pans. Now just wait a moment while I secure these. Put your legs in these padded curved panels and your feet on the platforms below. Just let me shackle... errr... secure your legs and feet as well. Just a moment... done. Now... we're almost ready to go. Just a small detail. Would you kindly open your mouth for me?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_5' 'Open your mouth.' 300>>]
</div>/*#
#desc: first hypnosis session, gagged and bound to chair, session starts
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Oh <<getWordGod>>. I'm trapped in Bondage gear!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "ball_gag_pink">>
<<wearItem "ball_gag_pink" true>>
<<setThreshold 'bondage' 'pre_hypnosis_bondage' 'bondage_chair'>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "hypnosisChair" "genitals_covered">>
<div id="invframe" class="scrolltext">
Too late, as usual, you realise that there's something wrong. A faint voice in your mind tried to warn you, but for some reason you were unable to object to any of <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> suggestions. Maybe there was something in the chocolate after all. But it's too late now, since you already reflexively complied with her request. <<=setup.getNpcName('npc_psychiatrist', 'first')>> takes advantage of the moment to secure a large, pink ball gag into your mouth, tighten it snugly and locking it with yet another security lock behind your head.<br>
<br>
"@@.npc_psychiatrist;This is so you don't bite your tongue during the session. Better safe than sorry. Now, listen carefully,@@" she says, while sliding a VR Headset over your head, "@@.npc_psychiatrist;There is a red button to your left, if you need to abort the session. If you cannot reach the button for some reason, you can simply tell me to stop, okay? Good.@@"<br>
<br>
You start to panic, as the realisation hits you. Your arms are cuffed and your fingers are secured on their resting pans. You can't move at all. And your mouth is permanently forced open with a ball gag to make speech impossible. She really wants you to undergo this session, doesn't she? And just now, you understand that this chair does not move how you want to, you move how the chair wants you to. You're a puppet, shackled to a hydraulic abomination, unable to do anything save its bidding.<br>
<br>
As you try to wrap your head around being trapped in a position that would make it impossible to flee, the chair slides into motion, putting your hands behind your back and bending your legs almost up to your ears, an extreme position which would expose your <<if $player.body_ref.penis>><<getWordMyPenis>><<if $player.body_ref.vagina>>, <<getWordVagina>>,<</if>><<else>><<getWordVagina>><</if>> and anus, if it were not for the suit. And then the electroshocks begin. Your nipples, your buttcheeks, your anus, get small, rhythmic shocks in synchronicity with the video that starts playing on the VR goggles... you cannot make out the video at first, identifying it merely as a collage of random pictures, but as the electric shocks get stronger the images get clearer and you start to make out details...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_6' 'Continue...' 180>>]
</div>/*#
#desc: first hypnosis session brainwashing (relax, obey, be passive, conset)
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Relax... obey... be passive... consent...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.hypnosis = 1>>
<<setThreshold 'submission' 'hypnosis_submission' 'first_session'>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_2'
1
'event_admin_theme_hypno'
false
>>
<</if>>
<<set $player.location to "V... V... VR Wha...">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/hypnosis_00.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<shinyText "Relax..." 0>>
<<shinyText "Obey!" .5>>
<<shinyText "Be passive..." 1>>
<<shinyText "Consent!" 1.5>>
<<shinyText "Stare..." 2>>
<<shinyText "Accept!" 2.5>>
<br>
<<if $options.impatient>>
<<printThought "What's that supposed to be?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "What's that supposed to be?">>
</span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Is this thing already working?" -10>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "Is this thing already working?" -10>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "It's so hard to focus..." -20>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "It's so hard to focus..." -20>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "What is this trying to do?!" -30>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "What is this trying to do?!" -30>></span>
<</if>>
<br><br>
<<if $options.impatient>>
[<<moveTo 'event_psychiatrist_hypnosis_1_7' 'Obey...' 3000>>]
<<else>>
<span id="hypnosis_1_6_continue" style="visibility: hidden;">
[<<moveTo 'event_psychiatrist_hypnosis_1_7' 'Obey...' 3000>>]
</span>
<<makeVisible 'hypnosis_1_6_continue' 15>>
<</if>>
/%<<videoLoop>>%/
</div>/*#
#desc: first hypnosis session wake up
#status: FINISHED 0.4.0.0
#ignore_spell: rememb
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "ball_gag_pink" true>>
<<deleteItem "ball_gag_pink">>
<<applyStress -20>>
<</if>>
<<set $player.location to "Changing Room">>
<<if !setup.checkItemWorn('plugsuit_adv')>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_1_8'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;<<=$player.first_name>>?@@" she snaps her fingers in front of you a few times, "@@.npc_psychiatrist;<<=$player.first_name>>, are you in there?@@"<br>
<br>
A strange question to ask, of course you are in here. Who else should be in here? Gradually, you start coming back to your senses. Hmm... that's strange. You thought you came here for the VR therapy, but according to the clock mounted on the wall, you've been here for nearly an hour. Thinking harder, you kind of remember starting to get into this strange suit...<br>
<br>
"@@.npc_psychiatrist;So, you seem to have enjoyed your first session. You never tried to stop the session once. How do you feel?@@"<br>
<br>
You feel relaxed. Really relaxed. Best you've felt in ages. <<printThought "Nice">>. You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> that you feel really fine, but for some reason you can't remember the VR Session at all.<br>
<br>
"@@.npc_psychiatrist;Of course not, Silly. It's supposed to stay in your subconscious, to change you on a fundamental level without interfering or distracting you from your normal life. Don't worry too much about it, it's only liable to make your head hurt.@@"<br>
<br>
You nod slightly, though it still kind of bugs you. If nothing else, you'd really like to check the VR Rig out, still dreaming of your own for gaming at home. You really concentrate and try to remember...<br>
<br>
<<glitchText "rememb...">><br>
<br>
<<glitchText "Obey... consent... accept...">><br>
<br>
Yeah, you really don't mind not thinking about it too much. Too much thinking is bad for your brain anyway. Could make you <<glitchText "smarter">>, Who'd want to do that anyway. It's not like brains are a desirable trait for a Bimbo.<br>
<br>
"@@.npc_psychiatrist;Now let me help you get out of this plug suit.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_hypnosis_1_8" "Remove the plugsuit." 60 "<<removeItem 'plugsuit_adv' true>>">>]
<</if>>
</div>/*#
#desc: first hypnosis session change back into normal clothes
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Now please put on your normal clothes and place the plug suit back into its case while I go through these results. I'm quite excited, the livefeed looked very promising.@@"<br>
<br>
You're still in a daze as she gestures towards your pile of clothes. After the "plugsuit" they look loose and coarse... is that really what you normally wear?<br>
<br>
<<printThought "Need to focus, get back to normal...">><br>
<br>
"@@.npc_psychiatrist;If you have any complications, do feel free to call... I gave you my card earlier, remember?@@" You don't, but you find yourself nodding anyway. She smiles "@@.npc_psychiatrist;Lovely, though I doubt you will have any issues, really.@@"<br>
<br>
She leaves you alone in the changing room, going back to her office.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "" || setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Changing room">><<set $scene.return_makeuproom="event_psychiatrist_hypnosis_1_8">><<set $scene.makeuproom_image="./images/scenes/makeup_01.png">><<set $scene.return_makeuproomtext="Return to the Changing room.">>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.makeup == "" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should take this off.@@]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_1_9' 'Leave the Changing Room.' 180>>]
<</if>>
<<elseif setup.checkPlayerDressed() && $player.sec_style.clothing.female && ($player.sec_style.clothing.makeup || !setup.getCurrentMakeup())>>
Still a bit fuzzy from the "treatment" you glance at your reflection something seems off an inappropriate, but you just shrug.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_1_9' 'Leave the Changing Room.' 180>>]
<<else>>
<<if $player.sec_style.clothing.makeup == "" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should wash this off first.@@]<br>
<<else>>
[@@.link_locked;I really need to dress more appropriate to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_hypnosis_1_9" "Put your clothes back on." 60 "<<useClothSetPop 'hypno_start'>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: first hypnosis session paid and leave
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at the psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'plugsuit_adv'>>
<<if !$npc_psychiatrist.flags.cruel>>
<<set $npc_psychiatrist.free_sessions += 1>>
<</if>>
<<addCredits 40>>
<<include "addHypnosisTask">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You leave the plug suit in its case back at the changing room and return to the office. <<=setup.getNpcName('npc_psychiatrist', 'first')>> is already sitting at her desk going through data sets, presumably from your session.<br>
<br>
"@@.npc_psychiatrist;...Yes... prognosticated rejection was over 22% too high. Hmm... maybe we can enter phase two in two... maybe one... oh. You've finished dressing fast. Here you go.@@"<br>
<br>
She slides a credstick across the table towards you.<br>
<br>
"@@.npc_psychiatrist;40 Credits, as agreed upon. <<if !$npc_psychiatrist.flags.cruel>>And I added another free counseling session to your account. <</if>>As I expected, the VR therapy session went very well, you are very well suited to these... techniques and just perfect for my research. So, I'll simply put you into the system for the next session, okay? That would be <<if $now.getUTCDay() == 0>>Wednesday<<else>>Sunday<</if>>, <<if $options.militaryTime>>19:00<<else>>seven o'clock pm<</if>>. As usual, show up if you want to find out about your true potential.@@"<br>
<br>
<<printThought "What's that supposed to mean?">><br>
<br>
"@@.npc_psychiatrist;I'm not going to detain you any longer, so have a nice evening.@@" You understand the cue and bid your farewell.<br>
<br>
<<if $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
<</if>>
</div>/*#
#desc: arrive for second hypnosis session, overhear her complaining about things on phone
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'plugsuit_adv'>>
<<set $npc_psychiatrist.hypnosis = 2>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<useClothSetPush 'hypno_start'>>
<<set $npc_psychiatrist.flags.missedVR = !$scene.missedVR>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You enter the office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for another experimental VR therapy session. There are somewhere hints in your mind of what happened last time, like the hidden door and an unusual big changing room, but any time you try to focus on the session proper the memories seem to flit away. Whelp, better not dwell too much in the past, better to focus on the future. <<=setup.getNpcName('npc_psychiatrist', 'first')>> told you that your memory around the time of in VR might be a little bit hazy — after all, it isn't targeted at your 'conscious' mind, is it? You are not sure, this is all quite strange, to be honest. What did you achieve here last time, anyway?
<<if $player.flags.gloryhole.handjob>0>>
You've made some questionable decisions since then, that's for sure, but was that really the VR therapy's doing? After all, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> said it couldn't make you do anything you weren't already inclined to...
<</if>>
You try to focus your <<glitchText "thoughts...">><br>
<br>
<<printThoughtGlitch "Obey... consent... accept...">><br>
<br>
<<glitchText "Accept...">> Accepting things that are out of your hands is part of growing up you suppose. How unusually mature of you to think that way.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> is on the phone when you enter her office and does not even appear to notice you.<br>
<br>
"@@.npc_psychiatrist;No! That is in no shape or form acceptable. This is the deal you offered...@@" she suddenly becomes very quiet, as if the other person said something very harsh and continues a lot fainter "@@.npc_psychiatrist;Yes, of course I understand the consequences, but it has never been tested on a hum... let's continue this conversation later, I have a client here. Yes. Of course. Good Day, <<Sir npc_boss>>.@@"<br>
<br>
Finally turning towards you, she strokes her hair back into position with one of her hands. A moment later her rather unusual worried expression has disappeared in exchange for her usual smile.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, I didn't hear you come in. You really should learn to knock.@@"<br>
<br>
You explain to her that you did knock, twice.<br>
<br>
"@@.npc_psychiatrist;Well, next time knock louder. If you had walked into a conversation that had fallen under the confidentiality obligation, I could have gotten into some hot water. And I don't mean the cozy hot tub type. Anyway, thank you for coming back for another expedition into the human psyche. Oh, this will be awesome. Your test results are even better than expected.@@"<br>
<br>
You ask her what she means by that.<br>
<br>
"@@.npc_psychiatrist;Well, I could bore you with the technical details, but how about I just round it up in layman's terms? Your subconscious is reacting very well to the stimuli of the simulation. There seems to be a lot of hidden desires within you... and they all want to be let out. You can imagine that this really makes you perfect for study. But don't worry, we're not aiming to make you a psychopath or something. The system aims to release positive qualities. For example, if you ever wanted to travel and see the world, but had a blockage in your subconscious. This blockage will be removed over time with the help of the system. Or if you ever wanted to <<if $options.fem>>be more sexually open<<else>>have a same-sex relationship<</if>>, but your rather... archaic upbringing prohibited such behaviour, that will be gone as well. So you can see that the system really just helps you become the version of yourself that would give you the most satisfaction, that way you can strive for greatness!@@"<br>
<br>
Those seemed like rather specific examples. You wonder if that was meant for you at all. She hands you a familiar box and continues, "@@.npc_psychiatrist;Well, I think we idled long enough with chatter, here is your plug suit. Let's get you inside it.@@"<br>
<br>
With the plug suit in your hand, you follow her though the inconspicuous door at the side of her office.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_1' 'Continue.' 180 "<<useClothSetPush 'origPsyc'>>">>]
</div>/*#
#desc: strip for second hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _femaleUnderwear = false>>
<<set _femaleClothing = false>>
<<set _plugsuit = false>>
<<set _plug = false>>
<<if setup.checkWornItem('plugsuit_adv')>>
<<set _plugsuit = true>>
<<if !$npc_psychiatrist.flags.session[1].bimbofication>>
<<set $npc_psychiatrist.flags.session[1].bimbofication=true>>
<<applyExperience 'bimbofication' 4 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if (setup.checkVisibleClothingTag('female')>20)>>
<<if setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings')>>
<<set _femaleUnderwear = true>>
<<if !$npc_psychiatrist.flags.session[1].sissyfication>>
<<set $npc_psychiatrist.flags.session[1].sissyfication=true>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set _femaleClothing = true>>
<<if !$npc_psychiatrist.flags.session[1].feminization>>
<<set $npc_psychiatrist.flags.session[1].feminization=true>>
<<applyExperience 'feminization' 7 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_2_2'>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if setup.wearingItemsInSet($clothSetsInt.origPsyc)>>
"@@.npc_psychiatrist;<<=$player.first_name>>, would you kindly strip naked.
<<if $npc_psychiatrist.flags.foundplug>>
If you're still plugged that's okay. In fact, based on your earlier numbers I think it may be helping!
<</if>>
<<if $npc_psychiatrist.flags.foundcage && setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
You can leave your chastity cage on, if you are wearing one right now. We'll simply lube up your balls like the last time.
<<else>>
Your chastity belt is so sleek I do not believe it will interfere, the feminine profile will actually make things fit even better!
<</if>>
<</if>>
Just like last time we have to rub this lotion onto your skin to increase connectivity to the suit.@@"<br>
<br>
You're having trouble recalling if you had to endure this during your first visit. There was something about the suit, something that makes you shudder in... <<glitchText "in...">><br>
<br>
<<printThought "Oh... latex feels kind of nice yet restricting on my skin. Wait, did I just think that?">><br>
<br>
<<glitchText "... y... yes ">>Yes, you remember now, the plug suit was important for biofeedback and to increase your immersion in the simulation. Plus it felt really nice. Yeah, nothing to worry about, everything is great.
<<elseif _plugsuit>>
<<if $npc_psychiatrist.flags.session[1].bimbofication>>
You think you know how to put a latex catsuit on all by yourself, ignoring all warnings from <<=setup.getNpcName('npc_psychiatrist', 'first')>>
<<if $npc_psychiatrist.flags.session[0].bimbofication>>
just as before, you fail miserably.
<<else>>
and fail miserably.
<</if>>
You get stuck in a way where it's not even possible to get out yourself, so you have to rely on assistance from <<=setup.getNpcName('npc_psychiatrist', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;Please, <<=$player.first_name>>, really? Maybe I simply should leave you in there for a while to teach you a lesson. Now, don't look at me like that, we have a schedule to keep to I will help you out, but you should really learn to listen to others from time to time.@@"
<</if>>
<<elseif _femaleClothing>>
<<if $npc_psychiatrist.flags.session[0].feminization>>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> looks at you, slightly puzzled and pissed.<br>
<br>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, please... when my mouth forms the word "strip naked please," could you then... well, I don't know... how about... well here's an idea. You could strip naked. That would be... compared to what you did... the right choice of action.@@"
<<else>>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, that's very nice. You're connecting with your inner femininity. But if you would you kindly strip naked, since we still have to rub this lotion onto your skin.@@"
<</if>>
<<elseif _femaleUnderwear>>
<<if $npc_psychiatrist.flags.session[0].sissyfication>>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, don't stop with your undies. They have to go as well. I know you like to wear them, but you'll be wearing other things in the simulation. Promise!".@@"
<<else>>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, that's very nice. You're exploring your submissiveness by becoming a <<if $fetish.sissy>>sissy<<else>>feminised slut<</if>>. Noted. But if you would kindly strip naked, since we still have to rub this lotion onto your skin.@@"
<</if>>
<</if>>
<br><br>
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_hypnosis_2_2" "Get naked as instructed." 60 "<<removeAllClothing>>">>]
<</if>>
</div>/*#
#desc: psychiatrist jerks you off or fingers your ass before second hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No! It took me long enough to put this damn thing on, I'm not taking it off until I'm done with the session!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem "plugsuit_adv" true>>
<<set $npc_psychiatrist.flags.session[1].cum = false>>
<<playerOrgasm>>
<<setThreshold 'anal' 'psychiatrist_anal' 'fingered'>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Again <<=setup.getNpcName('npc_psychiatrist', 'first')>> snaps on a pair of tight latex gloves and rubs lotion all over your body. With as attractive as she is the full-body contact makes your imagination run wild.
<<if setup.checkItemTypeWorn("cage")>>
In a way you're rather happy that you're wearing your <<=setup.getItemTypeName("cage")>> right now, else you would have pretty much cum right in her hands, or worse.<br>
<br>
"@@.npc_psychiatrist;That's not good. Not good at all. You seem to be awfully tense today. Maybe it would be for the best if we remove that thing down there to free your penis, but I think I know a solution you'll like as well. <<=$player.first_name>>, please kneel on the bench on all fours. Don't worry, you don't have to be embarrassed, I've done this quite often with other test subjects as well. Well, most of them came when I put on the lotion, and don't wear chastity devices, so maybe not that many, but the principle is the same. Now relax and think of something beautiful, this will only take a few minutes.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
With a sudden yank, your plug is forcefully removed from your, now gaping, <<getWordAnus false>> and before you're even finished gasping for air, you can feel a well lubed finger invading your sphincter,
<<else>>
You feel something strange circling around your sphincter, a lone fingertip delicately tracing,
<</if>>
<<switch setup.getTotalValue('anal')>>
<<case 1>>
before you have time to figure out what's going on you can feel a lubed finger forcing its way into your virgin <<getWordAnus>>, curling towards your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<case 2 3>>
followed by a second finger shortly after, which is pretty much your current limit. You audibly moan while they start to massage your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<case 4 5>>
followed by a second finger shortly after, only to be assisted by a 3rd one, stretching your poor little <<getWordAnus>>, which makes you moan quite loud as they misuse your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<case 6 7>>
followed by a second finger shortly after, only to be assisted by a 3rd one, which immediately calls backup from a 4th finger. You feel your poor little <<getWordAnus false>> stretch quite a lot, which makes you moan loud while they take turns stimulating your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<default>>
followed by a second finger shortly after, only to be assisted by a 3rd one, which immediately calls in backup from a 4th finger. Stretching your poor little <<getWordAnus false>> quite a lot, which makes you moan loud.
<<if $fetish.fisting>>
All the sudden all fingers are removed from your gaping <<getWordAnus false>>, so you relax for a second and use the time to catch your breath, only to be invaded by the whole hand this time.<br>
<br>
"@@.npc_psychiatrist;Wow, so inviting. You've played quite a lot down there, haven't you? Too bad I need my other hand for something else, I'd love to find out how... spacious you really are. For science, of course,@@" <<=setup.getNpcName('npc_psychiatrist', 'first')>> casually explains to you while fisting your crying <<getWordAnus>>. Even as it has you gaping the pounding stimulation is intense, radiating through everything down there.
<<else>>
You feel stretched as never before as her thumb rubs your perineum, her fingers pumping and gaping you as you gasp and twitch.
<</if>>
<</switch>>
Then she starts to gently <<if setup.isCage()>>massage your balls<<else>>stroke your crotch<</if>> with her other hand, very gentle at first, but she starts to squeeze and push them stronger and faster after a while, getting faster and faster while doing this. Together with the invasion of your <<getWordAnus>>, you realise this is not supposed to be a fun, sexual experience, this is calculated to be as efficient as possible to make you <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>ejaculate<<else>>climax<</if>> as swiftly as possible.<br>
<br>
<<printThought "Oh <<getWordGod>>, I'm cumming!">><br>
<br>
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction > 0>>
With a grunt, you ejaculate all over her hand. But not how you're used to, with the spastic convulsions that would normally shoot through your <<getWordMyPenis false>>, but more like a constant stream.<<if $fetish.penis_milking>> The realisation hits you like a bucket of cold water. You have just been milked like a cow in the stables.<</if>>
<<else>>
With a grunt, you pulse in her hand, cumming hard, yet your lack of ejaculate somehow leaves you still aroused and yearning for more.
<</if>>
<<else>>
With a gasp you cream yourself, wet excitement running down your legs as your muscles tremble.
<</if>>
<br><br>
"@@.npc_psychiatrist;There, your tension should go away in a few minutes, and that red colour in your face as well!@@"<br>
<br>
You don't know precisely what has happened, just that your face burns bright red with shame.
<<else>>
As she reaches <<if $player.body_ref.penis>><<if $player.body_ref.balls>>your balls and <</if>>penis<<else>>between your legs<</if>>, you try your best to not get aroused, and fail. Your <<if $player.body_ref.penis>>raging erection twitches and bounces up and down<<else>>hips jerking as you grind against her hand.<</if>>
<<if $npc_psychiatrist.flags.session[1].cum>>
You cum right onto her hands.<br>
<br>
"@@.npc_psychiatrist;Don't worry <<=$player.first_name>>, I've expected a reaction like this. This is good, actually as now you can really relax while being hypnotised, not having to worry about other things<<if $player.body_ref.balls>>, like a serious case of blue balls<</if>>.@@"<br>
<br>
That last word was said while she still holds <<if $player.body_ref.balls>>your balls<<else>>you<</if>> in her hand and smiles at you. Your reaction is simply turning redder then red. It's like you reached realms beyond #ff0000.
<<else>>
and glistens with precum, but you manage to suppress the urge to cum right here, right now. Though you may have salvaged a touch of pride it is at the cost of leaving you with a serious case of blue balls.<br>
<br>
"@@.npc_psychiatrist;Oh,@@" <<=setup.getNpcName('npc_psychiatrist', 'first')>> looks at you with bewilderment, "@@.npc_psychiatrist;That's not good. Not good at all. Normally it suffices that I massage the balls of my test subjects to relieve them of any ongoing tension or distraction. Nope, this will simply not suffice. <<=$player.first_name>>, please kneel on the bench on all fours. Don't worry, you don't have to be embarrassed, I've done this quite often with other test subjects as well. Well, most of them came when I put on the lotion, but I shouldn't be surprised that you're special in more ways than one. Now relax and think of something beautiful, this will only take a few minutes.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
With a sudden yank, your plug is forcefully removed from your, now gaping, <<getWordAnus false>> and before you're even finished gasping for air, you can feel a well lubed finger invading your sphincter,
<<else>>
You feel something strange circling around your sphincter,
<</if>>
<<switch setup.getTotalValue('anal')>>
<<case 1>>
before you have time to figure out what's going on you can feel a lubed finger forcing its way into your virgin <<getWordAnus>>, curling towards your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<case 2 3>>
followed by a second finger shortly after, which is pretty much your current limit. You audibly moan while they start to massage your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<case 4 5>>
followed by a second finger shortly after, only to be assisted by a 3rd one, stretching your poor little <<getWordAnus>>, which makes you moan quite loud as they misuse your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<case 6 7>>
followed by a second finger shortly after, only to be assisted by a 3rd one, which immediately calls backup from a 4th finger. You feel your poor little <<getWordAnus false>> stretch quite a lot, which makes you moan loud while they take turns stimulating your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<default>>
followed by a second finger shortly after, only to be assisted by a 3rd one, which immediately calls backup from a 4th finger. Stretching your poor little <<getWordAnus false>> quite a lot,
<<if $fetish.fisting>>
which makes you moan loud. All the sudden all fingers are removed from your gaping <<getWordAnus false>>, so you relax for a second and use the time to catch your breath, only to be invaded by the whole hand this time.<br>
<br>
"@@.npc_psychiatrist;Wow, so inviting. You've played quite a lot down there, haven't you? Too bad I need my other hand for something else, I'd love to find out how big you really are,@@" <<=setup.getNpcName('npc_psychiatrist', 'first')>> casually explains to you while fisting your crying <<getWordAnus>>. Even as it has you gaping the pounding stimulation is intense, radiating through everything down there.
<<else>>
You feel stretched as never before as her thumb rubs your perineum, her fingers pumping and gaping you as you gasp and twitch.
<</if>>
<</switch>>
<br><br>
Still pumping away at your <<getWordAnus>>, she starts to gently massage your balls with her other hand then <<if $player.body_ref.penis>>grabbing your now even stronger erection directly and starting to masturbate your <<getWordMyPenis>><<else>>sliding two knuckles deep into your <<getWordVagina>><</if>>. Though she begins slow and gentle, she soon speeds up. Together with the invasion of your <<getWordAnus false>>, you feel like this is not supposed to be a fun, sexual experience, this is calculated to be as efficient as possible to make you <<if $player.body_ref.penis>>ejaculate<<else>>climax<</if>> as swiftly as possible.<br>
<br>
<<printThought "Oh <<getWordGod>>, I'm cumming!">><br>
<br>
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction > 0>>
With a grunt, you ejaculate all over her hand. But not how you're used to, with the spastic convulsions that would normally shoot through your <<getWordMyPenis>>, but more like a constant stream.<<if $fetish.penis_milking>> The realisation hits you like a bucket of cold water. You have just been milked like a cow in the stables.<</if>>
<<else>>
With a grunt, you pulse in her hand, cumming hard, yet your lack of ejaculate somehow leaves you still aroused and yearning for more.
<</if>>
<<else>>
With a gasp you cream yourself, wet excitement running down your legs as your muscles tremble.
<</if>>
<br>
"@@.npc_psychiatrist;There, your tension should go away in a few minutes, and that red colour in your face as well!@@"<br>
<br>
You don't know what just happened, just that your face burns bright red with shame.
<</if>>
<</if>>
After that, <<=setup.getNpcName('npc_psychiatrist', 'first')>> helps you get into the plug suit. You're baffled by the wrist and ankle cuffs, but you think you remember them from last time... what exactly happened last time. You were locked... <<glitchText "locked...">><br>
<br>
<<printThoughtGlitch "Obey... consent... accept...">><br>
<br>
<<glitchText "... O... obey...">> Refusing to obey <<=setup.getNpcName('npc_psychiatrist', 'first')>> would be stupid, now that you've come this far. It will be okay, that is a fact you can accept. After all you gave your consent, didn't you?<br>
<br>
"@@.npc_psychiatrist;Done. And I think we managed to get through this quicker than last time. You're starting to get your head around on how to wear latex after all. Maybe next time... no, I think that will be too early, but maybe after that you could put it on yourself. Unless you want my help again? Now would you kindly follow me to the laboratory. The show is about to begin... again!@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_3' 'Follow her.' 600>>]
</div>/*#
#desc: enter room and get in chair for second hypnosis
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You enter a dimly lit chamber. Your early feelings of recognition get cranked up into full deja vu, everything is familiar and yet strange all at the same time. The device in the middle seems to be the VR Chair. <<=setup.getNpcName('npc_psychiatrist', 'first')>> uses her datapad to put the device into a neutral position which should make it easier for you to get onto it. You can't explain why, but without even being asked you sit down, putting your hands through the metal sleeves and your fingers on the resting pans.<br>
<br>
"@@.npc_psychiatrist;Well, someone seems to be eager to start this evening. Very well, give me a second to secure your arms and legs... okay, now the other side... and done. Now, ready to... oh, I've almost forgotten. How silly of me. Maybe you don't remember, but would you kindly open these kissable lips of yours for me?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_4' 'Part your lips.' 500>>]
</div>/*#
#desc: gagged for second hypnosis session. She expresses cryptic regret and kisses you
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Well, one reason would be because I am trapped in Bondage gear... I mean obey, consent... etc.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<addItem "ball_gag_pink">>
<<wearItem "ball_gag_pink" true>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "hypnosisChair" "ballgag" "genitals_uncovered">>
<div id="invframe" class="scrolltext">
Again the realisation that there's something off reaches your consciousness too slow, too late to do anything. The faint voice in your head warning you about what's to come, is getting fainter with every second. You snap back to reality after the ball gag has already filled your mouth, rendering you unable to express yourself in a reasonable manner.<br>
<br>
"@@.npc_psychiatrist;Very good, that should keep you from biting your tongue during the session. Thanks for being so cooperative!@@" comforts <<=setup.getNpcName('npc_psychiatrist', 'first')>>, as she yanks the straps behind your head even tighter to make sure you're unable to even turn your head as she continues,"@@.npc_psychiatrist;Now, as you might remember there are mechanisms in place that could be used to stop this session, if you feel uncomfortable with the changes we are trying to achieve. But just as last time I've made sure you're not going to be able to activate them, so, really, I don't even know why I bothered mentioning it. <<=$player.first_name>>, even though you won't remember any of this after this session I want you to know, that I was against the decision to test the system at these levels on a human subject.@@"<br>
<br>
You think you see a hint of anguish on her face.<br>
<br>
"@@.npc_psychiatrist;My benefactor has been quite exact with <<his npc_boss>> directions and for some reason <<he npc_boss>> has directed <<his npc_boss>> gorgon-like stare at your cute butt. Maybe I can make this up to you in some shape or form later, but now that I have everything tuned to your psyche... well it's time to unlock all your hidden desires.@@"<br>
<br>
Unable to comprehend everything <<=setup.getNpcName('npc_psychiatrist', 'first')>> told you, now you simply stare at her with bewilderment as she wraps her luscious lips around your gag to press against yours.<br>
<br>
"@@.npc_psychiatrist;Sorry, I had to steal that one, before you start to put these cute lips who knows where. Anyway here we go!@@"<br>
<br>
After the VR Goggles and the headphones are secured on your head, you can feel the electric shocks starting. Even through your hazy memories, you are certain they are stronger than the last time. Your nipples<<if $player.body_ref.penis>> <<if $player.body_ref.vagina>>, <<getWordVagina>>, <</if>>and <<getWordMyPenis>><<else>>and clit<</if>> get a constant onslaught of electric shocks.
<<if setup.checkItemTypeWorn("plug")>>
The electric discharge makes your sphincter twitch, which makes your plug move up and down, stimulating your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> further.
<</if>>
The stimuli builds and builds, stronger and more intense with each iteration. You're having trouble making out what's going on at first, but as the simulation and stimulation continues the images and sounds start to get clearer, burning themself into your subconscious forever...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_5' 'Continue...' 240>>]
</div>/*#
#desc: second hypnosis brainwashing, heavy bimbo + sissification
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Brainwashing is good for me. My mind is happy, blank and empty.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'penis' 'pre_hypnosis_penis' 'session_2'>>
<<setThreshold 'bimbofication' 'hypnosis_bimbofication' 'session_2'>>
<</if>>
<<set $player.location to "V... V... VR Wha...">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<if !$options.epilepsy>>
<<if $fetish.sissy>>
<<createAnimatedBGR "./video/hypnosis_01.mp4">>
<<else>>
<<createAnimatedBGR "./video/hypnosis_01_nosissy.mp4">>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<shinyText "Brainwashing is good for me. My mind is happy, blank and empty." 0.0>>
<<shinyText "Good <<if $fetish.sissy>>sissies<<else>>girls<</if>> practice every day." 0.5>>
<<shinyText "Bimbos are my role models." 1.0>>
<<shinyText "I act like a bimbo." 1.5>>
<<shinyText "Practice until it becomes natural." 2.0>>
<<shinyText "Brainwashing is good for me. My mind is happy, blank and empty." 2.5>>
<br>
<<if $options.impatient>>
<<printThought "What is happening to me?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "What is happening to me?">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "No, I'm losing myself!" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "No, I'm losing myself!" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Please... my thoughts... !" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "Please... my thoughts... !" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Yay! Brainwashing is good for me!" 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Yay! Brainwashing is good for me!" 40>></span>
<</if>>
<br>
<br>
<<if $options.impatient>>
[<<moveTo 'event_psychiatrist_hypnosis_2_6' 'My mind is happy, blank and empty...' 2700>>]
<<else>>
<span id="hypnosis_2_6_continue" style="visibility: hidden;">
[<<moveTo 'event_psychiatrist_hypnosis_2_6' 'My mind is happy, blank and empty...' 2700>>]
</span>
<<makeVisible 'hypnosis_2_6_continue' 15>>
<</if>>
<<videoLoop>>
</div>/*#
#desc: second hypnosis session hallucination, meet fem you, wake up
#status: FINISHED 0.4.0.0
#ignore_spell: concentr,exce,concentra
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _tmpStr = "... "+$player.first_name+"... B... brainw... is... goo go god... fo mee...">>
<<set $scene.h2_cameinsuit = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -20>>
<<removeItem "ball_gag_pink" true>>
<<deleteItem "ball_gag_pink">>
<</if>>
<<set $player.location to "Changing Room">>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_2_7'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<glitchText _tmpStr>> you feel like you've zoned out really bad, but for some reason you're unable to zone back in. It feels like you're floating in an endless black void, not even sure if you exist, since you're unable to feel yourself. What is self, anyway? Just because you're in the driver's seat, does this make you conscious, or are you just a system made of biological and chemical subcomponents, waiting to trigger always in the same manner? Your journey of existential angst is interrupted by a faint light far, far away. You try to move towards it, but it's not very simple.
<<if setup.getWillpower() >0>>
Focusing all of your attention, you manage to direct your thoughts and steer them towards the light.
<<else>>
It's more a random act than controlled manoeuvring, but you managed to get closer somehow.
<</if>>
You think it's a person, glowing in the dark. You're still too far away to make out any details, but it seems like that person is bound by giant metal chains on their arms, legs, torso and head.
<<set _chainstatus = setup.getTotalValue('feminization') + setup.getTotalValue('submission') + setup.getTotalValue('bimbofication') + setup.getTotalValue('humiliation')>>
<<if _chainstatus>20>>
But a lot of the chain's links seem to be brittle, like they're barely holding together.
<<elseif _chainstatus>10>>
But a few of the chain's links seem to be brittle bearing telltale signs of corrosion.
<<else>>
You think you see a few brittle links on the chain, but it seems to be mostly intact.
<</if>>
The person chained up seems to be female, but before you can get a closer look, a voice is distracting you... like white noise, getting louder <<glitchText "... and">>... and... it's getting harder to concentr... <<glitchText "concentra... consent... obey... accept">><br>
<br>
You open your eyes, looking directly into <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> face as she pulls one of your eyes open, while shining a small flashlight into the other.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, are you okay? It took you longer than last time to get out of trance, so I wanted to make sure everything was all right.@@"<br>
<br>
The sorrowful look on her face dissipates into relief as you finally stand up. Looks like you were sleeping on the bench in the changing room.<br>
<br>
"@@.npc_psychiatrist;Anyway, besides the unusually long time for you to get out of trance, our second session seems to be a full success! How do you feel?@@"<br>
<br>
You feel... light. Like a weight has been lifted from your shoulders. Nice. You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> that you feel pretty good, you don't remember anything from the VR therapy session. But for some reason your lips taste like strawberry. Strange.<br>
<br>
"@@.npc_psychiatrist;That is a feature, not a bug, as a software developer would say. All signs point towards the system working as intended. I'll admit having this discussion after every session is annoying, but this is how it's designed, to specifically target and stay only in your subconscious. After all, if your conscious mind knew what you really wanted you wouldn't need this sort of therapy at all. Don't worry though, I'm sure you'll see soon enough if there have been any changes to your usual behaviour.@@"<br>
<br>
You nod, everything she says makes sense, but it still bugs you, that you can't remember anything at all. You cannot accept that you've forgotten everything except... <<glitchText "exce... accept... obey... consent... rem... member... ">><br>
<br>
<<printThoughtGlitch "Brainwashing is good for me.">><br>
<<printThoughtGlitch "My mind is happy, blank and empty!">><br>
<<printThoughtGlitch "Bimbos are my role models.">><br>
<br>
<<glitchText "... bimbo...">>For some reason you no longer care to strain your brain on such issues. Brains are overrated anyway. As long as you accept the fact, that you gave your consent to obey, everything will be all right, won't it? See, now that's a good little Bimbo.<br>
<br>
"@@.npc_psychiatrist;Come on, now. Let's get you out of this plug suit@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_hypnosis_2_7" "Get naked as instructed." 60 "<<removeAllClothing>>">>]
<</if>>
</div>/*#
#desc: second hypnosis, change into normal clothes
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;If you would kindly put the plug suit back into its case. I'll be in my office, reviewing these results. Wow... the tetra rank correlation coefficient between submission and bim... yes... these values are amazing.@@"<br>
<br>
You are left alone in the changing room as she disappears into her office. You clean it as best you can of sweat with the materials found in the changing room and put it back into the case.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "" || setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Changing room">><<set $scene.return_makeuproom="event_psychiatrist_hypnosis_2_7">><<set $scene.makeuproom_image="./images/scenes/makeup_01.png">><<set $scene.return_makeuproomtext="Return to the Changing room.">>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.makeup == "" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should take this off.@@]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_2_8' 'Leave the Changing Room.' 180>>]
<</if>>
<<elseif setup.checkPlayerDressed()>>
<br>
Still a bit fuzzy from the "treatment" you glance at your reflection something seems off an inappropriate, but you just shrug.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_2_8' 'Leave the Changing Room.' 180>>]
<<else>>
<<if $player.sec_style.clothing.makeup == "" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should wash this off first.@@]<br>
<<else>>
[@@.link_locked;I really need to dress more appropriate to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_hypnosis_2_8" "Put your clothes back on and leave." 60 "<<useClothSetPop 'hypno_start'>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: paid and dismissed from second hypnosis session
#status: FINISHED 0.4.0.0
#ignore_spell: sideeff
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'plugsuit_adv'>>
<<if !$npc_psychiatrist.flags.cruel>>
<<set $npc_psychiatrist.free_sessions += 1>>
<</if>>
<<addCredits 40>>
<<include "addHypnosisTask">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You leave the plug suit in its case in the changing room and leave the fitting room through the door to re-enter the office proper. <<=setup.getNpcName('npc_psychiatrist', 'first')>> is already all over her workstation, talking to herself while she is reviewing your data.<br>
<br>
"@@.npc_psychiatrist;...stupid test my ass. I don't care if it worked! I still think it was too early, look at these values! Nobody can predict the sideeff... oh. Hi. Finished already? Thanks again for your help tonight. Here you go.@@"<br>
<br>
She slides a credstick across the table.<br>
<br>
"@@.npc_psychiatrist;40 Credits, as agreed upon. And there's more where that came from if you show up to another VR therapy session with yours truly. Are you as excited for the next session as I am? That would be next <<=setup.utcDayToString(setup.getTaskDueDate('psychiatrist_endless_hypnosis_1').getUTCDay())>> at <<if $options.militaryTime>>19 hundred<<else>>seven pm<</if>>. As usual, show up if you're feeling up to it. I'm not going to detain you any longer, so have a nice evening.@@"<br>
<br>
You catch the hint cue and bid her farewell.<br>
<br>
<<if $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
<</if>>
</div>/*#
#desc: show up for third hypnosis session, shown new plugsuit
#status: FINISHED 0.4.0.0
#ignore_spell: ch,anyw
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'plugsuit_adv'>>
<<set $npc_psychiatrist.hypnosis = 3>>
<<set $npc_psychiatrist.flags.session[1].feminization = false>>
<<set $npc_psychiatrist.flags.session[1].sissyfication = false>>
<<set $npc_psychiatrist.flags.session[1].bimbofication = false>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<useClothSetPush 'hypno_start'>>
<<set $npc_psychiatrist.flags.missedVR = !$scene.missedVR>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You enter the office again, trying your best to remember what happened the last time you joined <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for experimental VR therapy. You vaguely remember a plug suit and enter a dark room, and then... <<glitchText "there... was... a... ch... chair...">><br>
<br>
<<printThoughtGlitch "Obey... consent... accept...">><br>
<br>
<<glitchText "... any... anyw...">>Anyway, everything seemed to be fine. Maybe you can get a better look at the VR rig this time. You look forward to it with anticipation and close the door behind you. <<=setup.getNpcName('npc_psychiatrist', 'first')>> seems to be preoccupied with some data on her computer. You walk to her desk and greet her, as she seems too focused to notice your entrance.<br>
<br>
"@@.npc_psychiatrist;Oh!@@" She exclaims with a start at your sudden appearance. You can see her minimise a window on her desktop computer, but you can't make out the details, "@@.npc_psychiatrist;Wow. You almost scared me witless. Is it already 7:00 pm? I was just going through the data of our last session and I'm excited that you've decided to give it another try. Oh this is going to be so much fun!@@"<br>
<br>
Her girlish squee is a little unsettling, but you assume it's simply her curiosity for science! She pulls a small box from one of the drawers of her desk and hands it to you.<br>
<br>
"@@.npc_psychiatrist;Here is your plug suit. I know it's still unseemly to wear, but don't worry. A substantial donation from a benefactor has made it possible to get newer Plug Suits for the VR Rig, and some new upgrades for the rig itself. These new additions will really allow us to penetrate your deepest... level of subconscious. Sadly it was not enough money to buy a immersion chamber, but hey, I'm happy for any help I can get. Of course the biggest help is having you as such a wonderful and willing test subject. Thanks again, <<=$player.first_name>>.@@"<br>
<br>
You take the plug suit following her through the inconspicuous door at the side of her office and into the changing room.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_1' 'Continue.' 180>>]
</div>/*#
#desc: strip and remove anal plug for third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _femaleUnderwear = false>>
<<set _femaleClothing = false>>
<<set _plugsuit = false>>
<<set _plug = false>>
<<if setup.checkWornItem('plugsuit_adv')>>
<<set _plugsuit = true>>
<<if !$npc_psychiatrist.flags.session[1].bimbofication>>
<<set $npc_psychiatrist.flags.session[1].bimbofication=true>>
<<applyExperience 'bimbofication' 4 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if (setup.checkVisibleClothingTag('female')>20)>>
<<if setup.checkVisibleClothingTag('underwear') > 0 && setup.checkVisibleClothingTag('underwear') > setup.checkVisibleClothingTag('stockings')>>
<<set _femaleUnderwear = true>>
<<if !$npc_psychiatrist.flags.session[1].sissyfication>>
<<set $npc_psychiatrist.flags.session[1].sissyfication=true>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set _femaleClothing = true>>
<<if !$npc_psychiatrist.flags.session[1].feminization>>
<<set $npc_psychiatrist.flags.session[1].feminization=true>>
<<applyExperience 'feminization' 7 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemTypeWorn('plug') && !(setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5)>>
<<set _plug = true>>
<<set $npc_psychiatrist.flags.foundplug = true>>
<<elseif setup.checkNaked()>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_3_2'>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if !_plugsuit>>
"@@.npc_psychiatrist;<<=$player.first_name>>, would you kindly strip naked.
<<if $npc_psychiatrist.flags.foundplug>>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
Normally that would mean removing your plug, but you appear to be locked up by corporate, so we will just work around that for this trial.
<<else>>
That means your little extra in your bum as well, if you happen to be wearing one right now.
<</if>>
<</if>>
<<if $npc_psychiatrist.flags.foundcage && setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
You can leave your chastity cage on, if you are wearing one right now. We'll simply lube up your balls like the last time.
<<else>>
Your chastity belt is so sleek I do not believe it will interfere, the feminine profile will actually make things fit even better!
<</if>>
<</if>>
I am sure you recall, that we have to rub this lotion onto your skin, to increase connectivity to the suit, not to mention how much easier it makes putting the suit on.@@"<br>
<br>
You're having trouble recalling if you had to endure this during your previous visit. There was something about the suit, something that makes you shudder in... <<glitchText "in...">><br>
<br>
<<printThought "Yay! Latex, it's like being naked without being naked! Wait, did I just think that?">><br>
<br>
<<glitchText "... y... yes ">>Yes, you remember now, the plug suit was important for biofeedback and to increase your immersion in the simulation. Yeah, nothing to worry about.
<<elseif _plug && setup.checkNaked()>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.npc_psychiatrist;Hmm, normally I would say you need to remove your plug but... well, that one being hollow I suppose we can work around it...@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_2' 'Continue.' 180>>]
<<else>>
"@@.npc_psychiatrist;Yes, <<=$player.first_name>>, that one,@@" she points at your <<=setup.getItemTypeName('plug')>>, "@@.npc_psychiatrist;Has to go as well.@@"
<</if>>
<<elseif _plugsuit>>
<<if $npc_psychiatrist.flags.session[1].bimbofication>>
Ignoring all
<<if $npc_psychiatrist.flags.session[0].bimbofication>>
warnings again,
<<else>>
warnings,
<</if>>
you try to put on the plug suit by yourself and fail miserably, not even getting your feet in by yourself.<br>
<br>
"@@.npc_psychiatrist;Please <<=$player.first_name>>, would it hurt that much to listen to me even once? Sometimes I hope your clumsiness is just an act that you use to surprise people with your whiz, but I'm having my doubts right now. Don't worry, a Bimbo Ditz such as yourself has his purpose in life. But please wait until we put you in the simulation before appearing. Now, if you would kindly strip naked, since we still have to rub this lotion onto your skin. Really, that disobedience is the personality trait that needs to be overwritten!@@"
<</if>>
<<elseif _femaleClothing>>
<<if !$roomchange && $npc_psychiatrist.flags.session[0].feminization>>
<<=setup.getNpcName("npc_psychiatrist", "first")>> looks at you, slightly puzzled and clearly annoyed.<br>
<br>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, when I ask you to strip naked, and you put on the female clothing you have with you for some unknown reason, what does this tell me about you? What? Please, enlighten me. If you want to dress like a woman, hell if you want to be a woman, a trans-female, gender-fluid, <<if $fetish.sissy>>a sissy, <</if>>a crossdresser on any other spectrum in between, that is fine. Really. 3rd age of enlightenment and stuff. <<if !$options.fem>>Homophobia has dropped to an all time low and the Valkyrie units make sure most people stick to the law. <</if>>But please, for all that is good and holy, read my lips: Please. Take. Off. Your. Clothes. <<=$player.first_name>>. Really, I'm doing you a favour here, if you would only cast aside this disobedient streak.@@"
<<else>>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, that's very nice. You're connecting with your inner femininity. But if you would you kindly strip naked, since we still have to rub this lotion ALL over your skin.@@"
<</if>>
<<elseif _femaleUnderwear>>
<<if $npc_psychiatrist.flags.session[0].sissyfication>>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, don't stop with your undies. They have to go as well. I know you like to wear them, but you'll get to wear other things in the simulation. Promise!".@@"
<<else>>
"@@.npc_psychiatrist;Now, <<=$player.first_name>>, that's very nice. You're exploring your submissiveness by becoming a <<if $fetish.sissy>>sissy<<else>>feminised slut<</if>>. Noted. But if you would kindly strip naked, since we still have to rub this lotion onto your skin.@@"
<</if>>
<</if>>
<<if $options.ezchange>>
<br><br>
[<<moveTo "event_psychiatrist_hypnosis_3_2" "Get naked as instructed." 60 "<<removeAllClothing>><<if setup.checkItemTypeWorn('plug') && !(setup.checkItemTypeWorn('cage') && setup.getChastityLevel() == 5)>><<set _plugId=setup.getItemFromType('plug')>><<removeItem _plugId true>><</if>>">>]
<</if>>
</div>/*#
#desc: helped into plugsuit for third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No! It took me long enough to put this damn thing on, I'm not taking it off until I'm done with the session!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem "plugsuit_adv" true>>
<<changeHorny 20>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Just like last time, <<=setup.getNpcName('npc_psychiatrist', 'first')>> puts the lotion all over
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
you, <<if $player.body_ref.balls>>including your balls which are massaged<<else>>massaging you<</if>> thoroughly with the lubricant.
<<else>>
you.
<</if>>
<<if $player.body_ref.penis>>
Your <<getWordMyPenis>> twitches with excitement, but since it's tightly secured behind your <<=setup.getItemTypeName("cage")>>, it merely crushes itself in the process.
<<else>>
You drip with excitement under your chastity belt.
<</if>>
<<elseif $player.body_ref.penis && !$player.virgin.top_male && !$player.virgin.penis && $npc_manager.stage < 2 && !$player.virgin.blown>>
you<<if $player.body_ref.balls>>, including your balls<</if>> and your <<getWordMyPenis>>. This makes it twitches with excitement due to the lack of attention it has gotten lately. From anyone besides you that is.
<<else>>
you<<if $player.body_ref.penis>>, <<if $player.body_ref.balls>>including your balls <</if>>and your <<getWordMyPenis>>. This makes it twitches<<else>>. This makes you drip<</if>> with excitement and you wonder if the lube has some sort of sensitising agent...
<</if>>
As <<=setup.getNpcName('npc_psychiatrist', 'first')>> helps you to get into the plug suit, you notice a change since the last time you wore it. There is now a double ended zipper going from the top of your butt cheeks and between your legs to the top of your pelvic bone. You're curious about the new modification, is this so you can use the bathroom without removing the suit? It hasn't been an issue yet, but putting the plug suit on or off takes forever! You're puzzled by the wrist and ankle cuffs, though they haven't changed since last time, and the last time you were here was... <<glitchText "it was...">><br>
<br>
<<printThoughtGlitch "Obey... consent... accept...">><br>
<br>
<<glitchText "... a... accept...">>, yeah it was acceptable, you think. You'll be fine being locked up in the suit, unable to remove it yourself, if you even wanted to. You find such restriction exciting to think about.<br>
<br>
"@@.npc_psychiatrist;And done. That went a lot faster than last time. You could put it on yourself next time... unless you want my help again. Now would you kindly follow me to the laboratory. The show is about to begin... again!@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_3' 'Follow her.' 600>>]
</div>/*#
#desc: enter room + bound to chair for third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You enter the dimly lit VR chamber. As you get closer to the chair that dominates the room, you are able to take a better look at it and note the company's name "Style Fetish Industries" in front of the floor bolts. The name is unfamiliar to you as you continue to scan the dimly lit device. It reminds you of some sort of medical chair, only re-purposed and refitted to be more secure. You find it hard to see in the dim light, and fail to make out all the details of the room. <<=setup.getNpcName('npc_psychiatrist', 'first')>> uses her datapad to put the chair into the neutral position, allowing you to easily get on.<br>
<br>
"@@.npc_psychiatrist;Good job mounting the chair without any hesitation. Now, you know the drill. Put your arms through these metallic sleeves and put your fingers in the resting pans. Now just wait a moment while I secure things. Put your legs in these padded curved panels and your feet on the platforms below. I'll just shackle your legs and feet as well. Just a moment... done. Now... we're almost ready to go. You already know the last bit. Would you kindly open your cute lips for me?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_4' 'Open your mouth.' 500>>]
</div>/*#
#desc: gagged, plugged and "feeder" dildo for third hypnosis session, session starts
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Hmm... trapped in bondage gear!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.orgAnal = setup.getTotalValue('anal')>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<setThreshold 'anal' 'psychiatrist_anal' 'ems_plugged'>>
<<if !setup.checkItemTypeWorn("plug")>>
<<addItem "analplug_medium_ems">>
<<wearItem "analplug_medium_ems" true>>
<<addNpcTheme "npc_psychiatrist" "therapy" "theme_psychiatrist_therapy_plug"
0
'theme_psychiatrist_plug_1'
false
>>
<</if>>
<<addItem "ring_gag">>
<<wearItem "ring_gag" true>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "VR Laboratory?">>
<<createStackedImage "hypnosisChair" "dildo" "ringgag" "vr_goggles" "genitals_uncovered">>
<div id="invframe" class="scrolltext">
Again you realise that there is something off, a faint voice in your head warning you against what is coming. But does it really matter? You're already bound to the chair, unable to free yourself, completely at <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> mercy. You snap back to reality as she forces a large, pink o-ring gag into your mouth. The ring locks, keeping your mouth open. Completing your helplessness she uses leather straps to fasten your head to the headrest, leaving your head completely immobile.<br>
<br>
"@@.npc_psychiatrist;Very good, that should keep you from moving and injuring yourself during your session. Thanks for being so cooperative!@@"<br>
<br>
You see <<=setup.getNpcName('npc_psychiatrist', 'first')>> tap away at her datapad as the chair spreads your knees as far apart as they can move. She then kneels down between your legs and pulls the back zipper around to the front, stopping at the perineum, leaving your anus exposed. You try to protest, but it comes out as moans, drool leaking past the o-ring gagging your lips.
<br><br>
<<if $npc_psychiatrist.flags.foundplug>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.npc_psychiatrist;I can tell you're all but addicted to having that happy hole of yours all filled... well, perhaps addiction is the wrong word, as this is quite a positive development for you... spread wide for use at both ends, what a wonderful state for you to be in...@@" Her voice traces off for a moment as you sit helplessly bound and exposed. "@@.npc_psychiatrist;Anyway! That lovely device is just perfect for my purposes as well, so we'll just leave it in place and get you the rest of the way hooked up...@@"
<<else>>
"@@.npc_psychiatrist;Now, since I know you're plugging your little hole up already it won't be new information for you that <<if $player.body_ref.penis>>the prostate<<else>>your bottom<</if>> is an erogenous zone. Stimulating it provides an additional avenue for therapy, plus being quite enjoyable in its own right.@@"
<</if>>
<<else>>
"@@.npc_psychiatrist;Now, this might be new information for you, but <<if $player.body_ref.penis>>the prostate<<else>>your bottom<</if>> is an erogenous zone. Stimulating it provides an additional avenue for therapy, plus being quite enjoyable in its own right.@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;So you can just consider this baby here a fresh, exciting way to fill you with new hopes and dreams.@@"<br>
<br>
While she's talking to you she comes up beside you to show off a medium sized metal butt plug.
<<if $npc_psychiatrist.flags.foundplug || $scene.orgAnal==0>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
You moan through the gag as you feel the device stretch your already plugged hole even wider. Wires dangle down out from your now plugged plug.
<<elseif $scene.orgAnal<4>>
The realisation washes over you that this is going to hurt more than you had anticipated.
<<else>>
The realisation washes over you that this is going to be a bit more "fun" than you had anticipated.
<</if>>
The thought is confirmed as she snaps on a pair of latex gloves and lubes her index finger with a wickedly excited smile on her face.
<<else>>
"@@.npc_psychiatrist;Hmm, you feel pretty tight down here. No matter, once this is in I'm sure you'll love how it enhances the experience.@@"<br>
<br>
Ominously she snaps on a pair of latex gloves and lubes her index finger with a wickedly excited smile on her face. In your present state all you can do is watch.
<</if>>
<<if $scene.orgAnal==0>>
She walks back back between your legs and you feel something cool and slippery pressing on your sphincter then forcing its way in. Surprisingly, it does not hurt.<br>
<br>
"@@.npc_psychiatrist;That was only my finger applying the lube, you ditz. Now please, and I cannot even emphasise this enough. Try to relax.@@"<br>
<br>
Her finger slides away and now you can feel something cold and metallic at your anus, trying to force its way in. Through the generously applied lube your sphincter hardly poses any resistance, but your untrained anus yet resists. Not being used to something like this makes this whole ordeal very painful for you. You'd clench your teeth together, but that is hardly an option right now, instead settling for clamping down on your gag and trying to relax your rapidly-spreading hole. You fail for the most part and a loud groan escapes your mouth, while an audible plop promulgates that the plug has now entered your anus.<br>
<br>
"@@.npc_psychiatrist;Okay, we got the first knob. Only three more to go! Yay!@@"<br>
<br>
<<printThought "What? The FIRST?">><br>
<br>
The pressure returns, this time with reinforcements, forcing your anus more and more open. Another pop and you're sure you're about to be split in half.<br>
<br>
"@@.npc_psychiatrist;Second one in, only two more to go. Come on, who's a good little bimbo? You can take this, like the whore you're going to be! Yay!@@"<br>
<br>
This is the point, where your thoughts would normally narrate something, but your brains feel like they're leaking out alongside the drool seeping past your gag. Too busy not getting fried by all those feelings dashing trough your body like pinball balls caught between a lot of bumpers. Another pop and your anus is surely stretched beyond repair. But besides hurting like a butt-load of hell, it also makes you horny like you've never been before. Well, not exactly like you've never been before, like the first time you got spanked really hard.<br>
<br>
"@@.npc_psychiatrist;Come on, my slutty bimbo. You want to be happy, don't you? Yes, you do. Now this will make you happy!@@"<br>
<br>
And with a final push it is done. The plug has slid fully into your anus which happily closes its gates as narrow as it can around the base of the plug. You shudder in your restraints. Even as you body adjusts to the massive intruder you know removing it will hurt as much as well.<br>
<br>
<<elseif $scene.orgAnal<4>>
She walks back between your legs and you feel something cold pressing into your sphincter then forcing its way in. It feels small, your practice such that it does not hurt at all.<br>
<br>
"@@.npc_psychiatrist;That was only my finger applying the lube, you ditz. Now please, and I cannot even emphasise this enough, try to relax.@@"<br>
<br>
You can feel something cold and metallic at your rear entryway, trying to force its way in. Through the generously applied lube, your sphincter hardly poses any resistance, but your anus is, since it is not used to a plug of this size. Not being used to something like this makes this whole ordeal very painful for you. You'd clench your teeth together, but that is hardly an option right now, and try to relax. You fail and a loud groan escapes your mouth, while an audible plop promulgates that the plug has entered your anus.<br>
<br>
"@@.npc_psychiatrist;Okay, we got the first knob. Only three more to go! Yay!@@"<br>
<br>
<<printThought "What? The FIRST?">><br>
<br>
The pressure returns and it brought reinforcements with it, forcing your anus more and more open. Another pop and you're sure you're about to be split in half.<br>
<br>
"@@.npc_psychiatrist;Second one in, only two more to go. Come on, who's a good little bimbo? You can take this, like the whore you're going to be! Yay!@@"<br>
<br>
This is the point, where your thoughts would normally narrate something, but your brains feel like they're leaking out alongside the drool seeping past your gag. Too busy not getting fried by all those feelings dashing through your body like pinball balls caught between a lot of bumpers. Another pop and your anus is surely stretched beyond repair. But besides hurting like a butt-load of hell, it also makes you horny like you've never been before. Well, not exactly like you've never been before, like the first time you got spanked really hard.<br>
<br>
"@@.npc_psychiatrist;Come on my slutty bimbo, you want to be happy, don't you? Yes, you do. Now this will make you happy!@@"<br>
<br>
And with a final push it is done. The plug has slid fully into your anus which happily closes its gates as narrow as it can round the bottom of the plug. You shudder in your restraints. Even as you body adjusts to the massive intruder you know removing it will hurt as much as well.<br>
<br>
<<elseif $npc_psychiatrist.flags.foundplug>>
You moan as the cool, lubricated tip of the plug presses against your puckered hole and <<=setup.getNpcName("npc_psychiatrist","formal")>> starts to push.<br>
<br>
"@@.npc_psychiatrist;Good girl. Just a few moments of emptiness and you're already desperate to have your happy hole filled up... don't you worry, I know just how to take care of cute patients like yourself...@@"<br>
<br>
Your heart beats faster at her words, but even if you were not gagged, you could not deny that you had missed having a rear occupant.<br>
<br>
<<if setup.getTotalValue("anal") < 10>>
<<printThought "Am I turning into a butt-slut?">>
<<else>>
<<printThought "She's right, I am a butt-slut...">>
<</if>>
<br><br>
<<else>>
You feel the lube being applied to your anus.<br>
<br>
"@@.npc_psychiatrist;Hmm... looks like you've had your share of fun down there already. Well, relax, because here we go!@@"<br>
<br>
You can feel as the plug slides in without much resistance at all, barely noting each of its four graduated knobs spreading you wider in turn.
<</if>>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> secures a leather strap around your groin, pulling it tight so that there is no way you could push the plug out, carefully connecting the short wire "tail" at the base of the plug with another wire tracing away from the chair. You recognise the connector as the same type used by your suit.<br>
<br>
"@@.npc_psychiatrist;You see, this plug is not only another sensor, but an electronic stimulator as well. Alright, I bet you're eager to go, but there's still one last thing before we can start this session. Are you ready? Of course you are!@@"<br>
<br>
She moves behind the chair and comes back with a strange looking machine in her hand. At first it seems like it's floating, since she's only pushing it in front of her. Straining against your bonds to get a closer look reveals that it's actually connected to the chair on an hydraulic arm. It looks like one of these industrial strength fucking machines with an impressive dildo at its front.<<if $fetish.cum>> There are multiple cables snaking through the arm to the mounted dildo. Presumably some of them are for sensory, energy supply, and hydraulics, but the last one is see-through vinyl tubing, filled with some unknown, yet unsettlingly familiar, off-white fluid connected to a container at the top of the room. As the dildo wobbles moving into position, it drips several drops of the viscous liquid from the hole of the centre of the dildo.<</if>><br>
<br>
"@@.npc_psychiatrist;Only the best for my favourite guinea pig... err, I mean client.<<if $fetish.cum>> You know, I thought of using an artificial liquid because you can replicate the taste and texture pretty easy, but a friend of mine who works at the local sperm bank made a donation, so this is all 100% pure, right from the source. I couldn't stand the thought of you getting thirsty during this therapy session<</if>>.@@"<br>
<br>
She moves the machine closer to your face and threads the tip of the penis through your ring gag.
<<if $fetish.cum>>
<<if $player.virgin.swallow_cum_self || $player.virgin.swallow_cum_other>>
<<if setup.getTotalValue('cum')>5>>
On instinct your tongue automatically seeks the tip of the dildo, only to confirm what you've expected. Your eyes flit towards the container hanging above. That's a lot of <<getWordCum>>. You enjoy this a lot, since it is thick and gooey and there is already quite a lot of it dripping out of the dildo since every time you lick it away from the artificial urethral orifice a little bit more trickles out. You quite enjoy licking it up, each drop moistening your tongue and throat and filling your mouth with its yummy flavour. You love how it feels moving around in your mouth and enjoy the rich taste it leaves there.
<<else>>
Even though you don't want to, your tongue seeks the tip of the dildo, only to confirm, what you've expected. that's a lot of <<getWordCum>>. You enjoy this a lot more than you should, since it is thick and gooey and there's quite a lot of it dripping out of the dildo since every time you lick it away from the artificial urethral orifice, a little bit more trickles out. Despite that voice in the back of your head, you find yourself continuing to lick, each drop moistening your tongue and throat and filling your mouth with its flavour. You are surprised at the rich taste, the interesting way it feels moving around in your mouth.
<</if>>
<<else>>
<<getWordGod>>, she cannot be serious. Is that really <<getWordCum>>? You try not to bring your tongue in contact with the dildo, but there is not really a lot of space to work with, so you get some good taste of the cum leaking from the tip. It is thick and gooey and there's quite a lot of it dripping out of the dildo since every time you lick it away from the artificial urethral orifice a little bit more trickles out. Despite yourself you find yourself appreciating the way it tastes, quenching your thirst and sloshing interestingly around your mouth.
<</if>>
<<else>>
Your throat is soon straining as the phallic device fills your mouth completely, leaving you no choice but to lick and suck on it...
<</if>>
<br><br>
"@@.npc_psychiatrist;Now, this is the part where I would explain how to stop a session if you're uncomfortable with its content. Shall we skip that part? You're looking pretty happy to me, and it's not like you're physically able to hit the emergency stop anyway. Okay, good! Well, then, have fun my sweet little bimbo!@@"<br>
<br>
With that final note of encouragement whispered into your ear, she slides the VR Goggles and the stereo headset over your head, cutting you off from the real world yet again. You can feel the humming of the hydraulics in the fucking machine springing to life, making the dildo force its way through your throat. It isn't deep enough to make you gag, but definitely enough to simulate the feeling to go down on the real deal. In and out, over and over again. It is fucking your mouth. The dildo seems to be made of something different than latex, it feels way too real. Maybe one of those new synthetic skin materials for augmentation, or 2nd gen cyberskin. It's so realistic, you can feel the warmth emanating from it<<if $fetish.cum>>, and the veins pulsing, making it twitch a little bit, before it unloads the first wave of <<getWordCum>> into your mouth<</if>>.
<<if $fetish.cum>>
<<if setup.getTotalValue('cum')>5>>
Even if your head wasn't bound, the dildo still threaded through your gag, you would not act differently, eagerly gulping down the thick load like the <<if $fetish.cum>>cum<</if>>slut you are.
<<else>>
Head fixed in position and the dildo remaining threaded through your gag, your only choices are swallow or drown. You swallow.
<</if>>
<</if>>
You can feel the electric shocks starting, they seem to be stronger than the last time. Your nipples and <<getWordMyPenis>> are like on fire, but that's nothing compared to the thunder-hammer that's tearing up your ass right now. The electric discharge makes your sphincter twitch, which makes the plug move up and down like a jackhammer, stimulating your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> like there's no tomorrow. And as all these stimuli get better, stronger, faster and harder, the headset finally comes alive, bombarding you with random images. You're having trouble making out what's going on at the beginning, but as the simulation and stimulation continues the images and sounds start to get clearer, burned into your subconscious forever...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_5' 'Continue...' 240>>]
</div>/*#
#desc: third hypnosis session brainwashing, faggot cocksucker
#status: FINISHED 0.4.0.0
#ignore_spell: emperorhypnosis
#*/
<<if $fetish.slurs>>
<<set $player.cutscene.reason = "I am a faggot. I love to suck cock!">>
<<else>>
<<set $player.cutscene.reason = "I am a <<if $fetish.sissy>>sissy <</if>><<if $fetish.cum>>cum<</if>>slut. I love to suck cock!">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -20>>
<<set $sceneVisibility = $EXPOSED>>
<<if(setup.getTotalValue('oral')==0)>>
<<setThreshold 'oral' 'hypnosis_oral' 'session_3'>>
<<else>>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<</if>>
<<if $fetish.cum>>
<<if(setup.getTotalValue('cum')==0)>>
<<setThreshold 'cum' 'pre_hypnosis_cum' 'session_3'>>
<<else>>
<<applyExperience 'cum' 12 'very' $EXPOSED>>
<</if>>
<</if>>
<<applyExperience 'penis' 18 'little' $EXPOSED>>
<<applyExperience 'bimbofication' 16 'little' $EXPOSED>>
<</if>>
<<set $player.location to "I... I am...">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.slurs>>
<<createAnimatedBGR "./video/hypnosis_02.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<shinyText "Have you ever thought about... sucking a cock?" 0.0>>
<<shinyText "Yes. You have." 0.2>>
<<shinyText "Does this thought of putting on makeup make you excited?" 0.4>>
<<shinyText "Yes it does. Do you know what that means?" 0.6>>
<<shinyText "That means you are a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>!" 0.8>>
<<shinyText "Come on, say I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>. I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>." 1.0>>
<<shinyText "I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>. I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>!" 1.2>>
<<shinyText "Tell me, that you're a <<if $fetish.slurs>>fag<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>!" 1.4>>
<<shinyText "Tell me, that you are a <<if $fetish.slurs>>fag<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>!" 1.6>>
<<shinyText "Say, I am a <<if $fetish.slurs>>fag<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>... and I like to suck cock!" 1.8>>
<<shinyText "I am a <<if $fetish.slurs>>fag<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>... and I like to suck cock!" 2.0>>
<<shinyText "Say, I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy <<if $fetish.cum>>cum<</if>>slut<<else>><<if $fetish.cum>>cum<</if>>slut<</if>> and I love to suck cock!" 2.2>>
<<shinyText "I love to suck cock!" 2.4>>
<br>
<<if $options.impatient>>
<<printThought "What is happening to me?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "What is happening to me?">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>!" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>!" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>, and I like to suck cock!" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>, and I like to suck cock!" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Yay! I love to suck cock!" 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Yay! I love to suck cock!" 40>></span>
<</if>>
<br><br>
<<if $options.impatient>>
[<<moveTo 'event_psychiatrist_hypnosis_3_6' 'I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy <<if $fetish.cum>>cum<</if>>slut<<else>><<if $fetish.cum>>cum<</if>>slut<</if>>, and I love to suck cock!' 2500>>]
<<else>>
<span id="hypnosis_3_6_continue" style="visibility: hidden;">
[<<moveTo 'event_psychiatrist_hypnosis_3_6' 'I am a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy <<if $fetish.cum>>cum<</if>>slut<<else>><<if $fetish.cum>>cum<</if>>slut<</if>>, and I love to suck cock!' 2500>>]
</span>
<<makeVisible 'hypnosis_3_6_continue' 15>>
<</if>>
<br><br>
<<if $fetish.slurs>>
<a target="_blank" href="http://emperor-hypnos.tumblr.com/">(EXT/NSFW) Special Thanks to EmperorHypnosis</a>
<</if>>
</div>/*#
#desc: third hypnosis session hallucination — self as sexdoll, wakeup to psychiatrist comforting you
#status: FINISHED 0.4.0.0
#ignore_spell: g,h
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _tmpStr = "... "+$player.first_name+"... th... that is m...">>
<<set $scene.h2_cameinsuit = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.canPlayerCumSimple($player,setup.getTotalValue('cum')+setup.getTotalValue('penis'))>>
<<set $scene.h2_cameinsuit = true>>
<<set _tmpItem = setup.getItemFromType('bodysuit')>>
<<changeItemStatus _tmpItem 'cumsoaked' '["set",100]'>>
<</if>>
<<removeItem "ring_gag" true>>
<<deleteItem "ring_gag">>
<<removeItem "vr_helmet_copy" true>>
<<deleteItem "vr_helmet_copy">>
<</if>>
<<if !setup.checkNaked()>>
<<initRoom>>
<<moveTo 'event_psychiatrist_hypnosis_3_7'>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<glitchText _tmpStr>>You think you can hear someone saying your name really far away, the word somehow echoing through this empty, dark void. You're floating, but you cannot feel your body at all, it's more like you're a spectator, a disembodied being of thought. With the voice seeming to come from all directions and everything else featureless you can't really tell where to go, instead floating aimlessly through the darkness until you spot a pinprick of light, far, far in the distance. Even beyond being the only thing of interest in the void you are drawn towards the thin shaft of light, like a moth to the flame.<br>
<br>
Moving closer, you realise that there is something in the middle of the light, the silhouette sharpening until you recognise it as a person. The closer you get the more details you can make out. It... she... it seems to be a woman, floats in an upright position. But something seems off. Her proportions are way off. Her breasts are enormous, twin giant melons hanging from her petite frame, at least G or H, you would say. Her waist, on the other hand, is very thin, a perfect hourglass connection from her oversized chest down to her hips, lush and prolific. Flowing from her head her hair is platinum blond, and her big, voluptuous lips are red and glistening. Her skin is clean, like way too clean. It looks more artificial than natural, utterly even and perfect, like a model that's been too heavily photoshopped.<br>
<br>
The more you look at her the more she reminds you of a life-sized sex doll, not a human being. As you fly past, you catch a glimpse from a slightly different angle and discover that your feeling that something was odd crystallises. A penis, even if its a rather small one, barely protrudes from between her legs. Moving even closer now, you take a good long look at her face. Her eyes are open, and yet empty, and as you get closer and closer all you can see is your own reflection cast back from her blank expression, staring off into nothingness. What startles you is the fact that as your reflection comes into focus... it looks like her. It takes you a while, but then you realise; you are not looking into empty eyes, but at your own reflection in a mirror floating before you.<br>
<br>
<<printThoughtGlitch "... <<=$player.first_name>>... I... I am...">><br>
<br>
Suddenly there is a flash of light and you can see <<=setup.getNpcName('npc_psychiatrist', 'first')>> pulling one of your eyes open with one hand while shining a flashlight down. You snap back to reality. There was something. A woman, or was she even a woman? You can remember her in bits and pieces, like a dream you've just woken up from, exaggerated caricature of femininity... you re... re... <<glitchText "remember">><br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, are you okay? It took way longer to get you out of the trance this time.@@"<br>
<br>
She looks at you with a hint of sadness on her face. Her pretty face the only thing even remotely in focus, you feel the desire to cheer her up and flash a smile causing her face to instantly light up.<br>
<br>
<<printThought "Hmmm... my mouth tastes funny. And my butt hurts. Otherwise I feel all right, good even.">><br>
<br>
Your eyes starting to adjust to light, you open them completely and become aware that you're lying on something like a massage bench. Your head rests on something rather... wait a second. Your head is resting on <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> lap! You sit up fast, unable to look at her, an embarrassed smile on your lips.<br>
<br>
"@@.npc_psychiatrist;So, besides the unusually long time for you to get out of trance, our second session seems to be a complete success! How do you feel?@@"<br>
<br>
You feel... good. Like the weight of the world is slowly taken from your shoulders. Like there might be a future, where you don't have to worry so much. You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> that you feel great, but again, though you momentarily seemed to remember some details of the VR therapy, they seem to have slipped your mind now that you're fully awake.<br>
<br>
"@@.npc_psychiatrist;That's intended. Like I've told you before, it's supposed to stay in your subconscious, to change you on a fundamental level without interfering with your normal life... in ways you don't like. Maybe when I have time one day I can show you the VR Rig without such a therapeutic program running on it, have you run through a program without any additional distractions, let you test it for its fun value, okay?@@"<br>
<br>
You appreciate and accept the proposal. Still, it irks you that you can't remember anything at all. You concentrate rigorously and try to remember... <<glitchText "rem... member... ">><br>
<br>
<<printThought "I love to suck cock!" 40>><br>
<br>
<<glitchText "... cock...">>For some reason you really feel thirsty right now. Something to wet your tongue would be really nice. Maybe something creamy. That would hit the spot. It's not like thinking too hard about anything could solve this problem right now, thinking could make you <<glitchText "smarter">>, now that's not really a trait a bimbo like yourself would need, ain't that right my little ditz?<br>
<br>
"@@.npc_psychiatrist;Now that you're back with us how about we get you out of this plug suit?@@"
</div>/*#
#desc: remove plugsuit after third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeEms = !$player.sec_style.sex.butt_plug && setup.checkItemWorn("analplug_medium_ems")>>
<<if $scene.removeEms>>
<<removeItem "analplug_medium_ems" true>>
<</if>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Please put the plug suit back into its case while I check on these amazing results. Hmm... yes... this might change everything...@@"<br>
<br>
She leaves you alone in the changing room, staring intently at her tablet as she walks back to her office.
<<if $scene.h2_cameinsuit>>
Just now you become aware that you creamed that suit like really good. You clean it as best you can with the materials found in the fitting room and put the suit back into the case.
<<else>>
You clean the suit as best you can of sweat with the materials found in the fitting room and put the suit back into the case.
<</if>>
<br><br>
<<if $scene.removeEms>>
After slipping out of the plugsuit, you gasp as a plug slips out of you! You stare at the steel plug and its short connecting wires, polished chrome gleaming, your distorted reflection seeming to taunt you with your lack of memory of what happened during the session... or what the plug did while it was inside of you.<br>
<br>
You shake your head... and yet put the plug with your things as you prepare to dress, rather than with the clean plugsuit.<br>
<br>
<</if>>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "" || setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Changing room">><<set $scene.return_makeuproom="event_psychiatrist_hypnosis_3_7">><<set $scene.makeuproom_image="./images/scenes/makeup_01.png">><<set $scene.return_makeuproomtext="Return to the Changing room.">>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.makeup == "" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should take this off.@@]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_3_8' 'Leave the Changing Room.' 180>>]
<</if>>
<<elseif setup.checkPlayerDressed()>>
Still a bit fuzzy from the "treatment" you glance at your reflection something seems off and inappropriate, but you cannot put your finger on why.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_3_8' 'Leave the Changing Room.' 180>>]
<<else>>
<<if $player.sec_style.clothing.makeup == "" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should wash this off first.@@]<br>
<<else>>
[@@.link_locked;I really need to dress more appropriate to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "event_psychiatrist_hypnosis_3_8" "Put your clothes back on and leave." 60 "<<useClothSetPop 'hypno_start'>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: paid + leave after third hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'plugsuit_adv'>>
<<if !$npc_psychiatrist.flags.cruel>>
<<set $npc_psychiatrist.free_sessions += 1>>
<</if>>
<<if $player.sec_style.sex.butt_plug == "money">>
<<addCredits 50>>
<<else>>
<<addCredits 40>>
<</if>>
<<include "addHypnosisTask">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You leave the plug suit in its case in the changing room, walking through the door and making the turn back into the office. <<=setup.getNpcName('npc_psychiatrist', 'first')>> doesn't notice you at first, hovering over her workstation, muttering while she analyses the data.<br>
<br>
"@@.npc_psychiatrist;... no, these levels are way too high... there has to be a... hmm... what's this... this should not be there. What are you? That would explain that strange reaction at the end of the session. Has someone tampered with the... oh. Hey. You're done already? Anyway, thanks for your help tonight. Here you go.@@"<br>
<br>
She puts an credstick onto the table for you.<br>
<br>
"@@.npc_psychiatrist;40 Credits,<<if $player.sec_style.sex.butt_plug == "money">> plus ten for accepting rectal monitoring,<</if>> as agreed upon. <<if !$npc_psychiatrist.flags.cruel>>And another free session with yours truly. <</if>>Are you as excited for the next session as I am? That would be next <<=setup.utcDayToString(setup.getTaskDueDate('psychiatrist_endless_hypnosis_1').getUTCDay())>> at <<if $options.militaryTime>>19 hundred<<else>>seven pm<</if>>. As usual, show up if you're feeling up to it. I'm not going to detain you any longer, so have a nice evening.@@"<br>
<br>
You understand the cue and bid her farewell.<br>
<br>
<<if $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
<</if>>
</div>/*#
#desc: setup scene variables and pass through to hypnosis 4_1
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now. Maybe later...">>
<<set $npc_psychiatrist.flags.foundplug = true>>
<<if $npc_psychiatrist.hypnosis == 3>>
<<set $npc_psychiatrist.hypnosis = 4>>
<</if>>
<<set $npc_psychiatrist.flags.missedVR = !$scene.missedVR>>
<<set $scene.hypnoSession = {}>>
<<set $scene.hypnoSession.plugsuit = false>>
<<set $scene.hypnoSession.theme = "">>
<<set $scene.hypnoSession.hypnoRepeat = 0>>
<<useClothSetPush 'hypnosis3'>>
<<initRoom>>
<<include playerMenu>>
<<moveTo 'event_psychiatrist_hypnosis_4_1'>><<set $scene.hypnoAcceptCount = 0>>
<<if setup.hasThreshold("penis", "hypnosis_penis", "7")>>
<<set $scene.hypnoAcceptCount++>>
<</if>>
<<if setup.hasThreshold("cum", "hypnosis_cum", "7")>>
<<set $scene.hypnoAcceptCount++>>
<</if>>
<<if setup.hasThreshold("foot", "hypnosis_foot", "7")>>
<<set $scene.hypnoAcceptCount++>>
<</if>>
<<if setup.hasThreshold("bondage", "hypnosis_bondage", "7")>>
<<set $scene.hypnoAcceptCount++>>
<</if>>
<<if setup.hasThreshold("bdsm", "hypnosis_bdsm", "7")>>
<<set $scene.hypnoAcceptCount++>>
<</if>>
<<if setup.hasThreshold("piss", "hypnosis_piss", "7")>>
<<set $scene.hypnoAcceptCount++>>
<</if>>/*#
#desc: show up for fourth (repeatable) hypnosis session, shown VR helmet
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'plugsuit_adv'>>
<<set $scene.spendWillpower = false>>
<<set $scene.spendFatigue = false>>
<<set $scene.surrender = false>>
<<set $scene.changedMaxWillpower = false>>
<<set $scene.gainedWillpower = false>>
<<set $scene.threshold_triggered = false>>
<<set $scene.valueChanged = false>>
<<include "calcHypnoAccept">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Once again you've decided to attend a VR-supported therapy session,
<<if $npc_psychiatrist.flags.rememberHypno>>
<<if setup.checkItemWorn("data_plug") && !State.hasPlayed("event_psychiatrist_ai_plug_1") && State.hasPlayed("event_ai_sex_first_2")>>
when she spots the plug in your rear — no surprise, given how large the thing is.<br>
<br>
"@@.npc_psychiatrist;My my, you're equipped with quite the monster down there, could I look at it before you pop it out?@@"<br>
<br>
She has you bend over and she looks at the plug as you feel a touch self-conscious over bending over to display what a gaping butt-slut you've become.<br>
<br>
"@@.npc_psychiatrist;Hmm, yes, an I/O port — this looks like it would be compatible with my systems, let's leave it in place, shall we?@@"<br>
<br>
She smiles and winks before stepping back and waiting for you to finish changing into the plugsuit.<br>
<br>
[<<moveTo 'event_psychiatrist_ai_plug_1' 'Do as instructed.' 120>>]
<<else>>
your heart already racing with excitement at the thought of what wonderful, mind-expanding experience you are going to embrace today...<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> greets you with a radiant smile. As usual, she is working on her computer. "@@.npc_psychiatrist;Back for more? Oh you really are just the perfect subject... with your help my work is going to change the world.@@"<br>
<br>
You smile back, eager to help, happy in advance for all the people who will get to enjoy the same joy you have.<br>
<br>
"@@.npc_psychiatrist;Come on, come on!@@" She states, leading you into the changing room. "@@.npc_psychiatrist;You know the drill by now, so let us get you equipped and see what wonderful choices you make today...@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_intro' 'Follow her into the VR Laboratory.' 120>>]
<</if>>
<<else>>
even though you have no idea what it's doing to you.
<<if setup.getWillpower() >0 && setup.getTotalValue('smart')>7>>
Somewhere back in your mind, where a spark of resistance exists, thoughts are formed, connecting the VR therapy session to some of your strange behaviour lately.
<<else>>
You try to focus on what's wrong with you, but every time you think you've got something, you end up with a blank thought, like a slate wiped clean.
<</if>>
<br><br>
As you enter the office, your concerns are scattered by the radiant smile of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. She looks up from her computer to greet you; you are unsure whether her wide grin is prompted by your presence, or the data she's analyzing.<br>
<br>
<<if $npc_psychiatrist.hypnosis == 5 && $scene.hypnoAcceptCount >= 2>>
Even more than you've seen previously <<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems practically giddy to see you, almost leaping out of her chair to greet you. "@@.npc_psychiatrist;Ah! You're here, oh I am just so excited for today's session!@@"<br>
<br>
You feel like even if the memory of prior experimental VR sessions was anything other than a haze you'd still be a bit confused, looking back at her with curiosity.<br>
<br>
You aren't sure which she is more excited about between telling you about the new changes or hustling you along to start the session as she steers you towards the changing room and continues to talk as you slip into the now-familiar plugsuit.<br>
<br>
"@@.npc_psychiatrist;Well, you see, my patron has been very impressed with your, I mean, MY, progress and, well, I have some new programming to roll out!@@"<br>
<br>
As you start to change she seems to think for a moment "@@.npc_psychiatrist;Ah, what the hell, you won't remember this conversation anyway — with the success we've been seeing in your recent sessions we are stepping things up by adding another layer of choices. Now you will be able to dress yourself in the simulation before proceeding to your "activity" — I think you will REALLY love some of the options we have for you, and it isn't just for show! By pairing the correct outfit with the corresponding activity you'll get a sort of synergy bonus. The fact that you've so embraced your revealed desires combining to make the entire process more effective. Speaking of, I will only be able to credit your time if you seek out new experiences, replication studies are all well and good, but right now we need to focus on exploring the new and seeing just how far the system, and your lovely mind, can be pushed!@@"<br>
<br>
By the time she's done talking you're changed and she flashes a final smile.<br>
<br>
"@@.npc_psychiatrist;Just lovely, <<=$player.first_name>>. Now if you would kindly follow me into the VR Laboratory.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_intro' 'Follow her into the VR Laboratory.' 120>>]
<<elseif $npc_psychiatrist.hypnosis==4>>
"@@.npc_psychiatrist;Ah!@@" she smiles "@@.npc_psychiatrist;You're finally here, <<=$player.first_name>>.@@"<br>
<br>
<<printThought "Well, this is certainly different then the last time.">><br>
<br>
"@@.npc_psychiatrist;I've got fantastic news. Here, take a look at this@@"<br>
<br>
<<if $fetish.sissy>>
<image src="./images/others/vr_gear.png"></image>
<<else>>
<image src="./images/others/vr_gear_blank.png"></image>
<</if>>
<br>
She shows you a futuristic looking kind of headgear.
<<if $fetish.sissy>>The letters "SISSI" are boldly engraved on the side.
<br><br>
<<printThought "Oh, you've got to be fucking kidding me... wait a second.">><br>
<br>
It takes you a moment to recognise the logo of the company you work for. You were unaware that Social Interaction Service Syndicate Inc. was developing things like this.
<<if $npc_manager.flags.talkedsissypill>>
Then again, you were unaware that they developed pills for body modification as well; you don't really know much about what the company ACTUALLY does, come to think of it.
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;This is called the "IROI-1", which stands for Inherent Reality Override Interface or something like that. I know it looks pretty spiffy, but it's technically a prototype, it should be the next big step in home entertainment once it's released. Unlike conventional VR goggles, this nifty piece of hardware has been equipped with an Indirect Brain Interface. this allows it to stimulate ALL of your senses without, as the name suggests, actually needing a direct connection to your brain as more traditional "hard-wired" like they use in the military do. And look at the size of this thing. It is tiny compared to those enormous full sensory tanks Nintendolls developed!@@"<br>
<br>
Her enthusiasm is infectious, and you find yourself feeling quite excited for the new technology.<br>
<br>
"@@.npc_psychiatrist;Gone are the days of faulty, imprecise VR Controllers, now your mind is the controller and you can feel if you touch something. These levels of immersion will be so much more intense than anything we had until now. Oh I'm just so excited, I think I'll cream my panties! Oh, I am sorry, that was inappropriate on a professional level.@@"<br>
<br>
You say you don't mind at all.
<<if $npc_psychiatrist.flags.blowjob>0>>
Outbursts like these are nothing between the two of you. After all, you had her <<getWordPenis false>> in your mouth for quite a while, until she filled the same up with her hot <<getWordCum>>. Its little things like that which rises levels of intimacy quite a lot.
<<elseif $npc_psychiatrist.flags.handjob>0>>
Outbursts like these are nothing between the two of you. After all, you already jerked her off some time ago. Its little things like that which rises levels of intimacy quite a lot.
<</if>>
Besides, you're pretty excited about such a nifty piece of hardware as well.<br>
<br>
"@@.npc_psychiatrist;Well, then,@@" beams <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, while putting the familiar box containing the plug suit in your hand "@@.npc_psychiatrist;What are you waiting for. As soon as you're dressed, we have to adjust the system to your brain. Since everyone's brain is mapped differently, we have to adjust the unit to yours as well. Fortunately we have a great baseline from your earlier sessions, and I've already tested the new interface... thoroughly. That said, choices come with responsibility, going forward I am afraid I will only be able to credit you for a session in which you really test yourself. That does not mean you must embrace everything that you come to, but it does mean you cannot reject things wholesale, and you should focus on exploration, after all, you never know what new experience might unlock something inside of you!@@"<br>
<br>
Her cheeks start to glow in a bright red tone during these last few words for some reason. You wonder what her "test" involved.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_2' 'Enter the Changing Room.' 120>>]
<<else>>
"@@.npc_psychiatrist;Oh!@@" she smiled "@@.npc_psychiatrist;You're already here, <<=$player.first_name>>! Very good. Well, let's get you changed and plug you into the system. Remember, I can only credit you for the session if you experience something new.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_2' 'Enter the Changing Room.' 120>>]
<</if>>
<</if>>
</div>/*#
#desc: change into plugsuit for fourth hypnosis session
#status: FINISHED 0.4.0.0
#ignore_spell: t,thi
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeEverything>>
<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<wearItem "plugsuit_adv" true>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<<addItem "ring_gag">>
<<wearItem "ring_gag" true>>
<<if $npc_psychiatrist.hypnosis < 5>>
<<set $npc_psychiatrist.hypnosis = 5>>
<</if>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "hypnosisChair" "dildo" "ringgag" "vr_goggles" "genitals_uncovered">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;<<=$player.first_name>>, would you kindly strip naked? Completely naked. That means anything in your cute bum, if you happen to have anything occupying your tush at the moment. I'm sure you recall that we have to rub this lotion onto your skin, to increase connectivity to the suit, not to mention how much easier it makes putting the suit on.@@"<br>
<br>
You vaguely remember something like this from your last treatment session. The plug suit was important for biofeedback and to increase your immersion in the simulation. You think... <<glitchText " thi... t...">>.
<<if ($npc_psychiatrist.flags.session[0].feminization&&$npc_psychiatrist.flags.session[1].feminization)||($npc_psychiatrist.flags.session[0].sissyfication&&$npc_psychiatrist.flags.session[1].sissyfication)||($npc_psychiatrist.flags.session[0].bimbofication&&$npc_psychiatrist.flags.session[1].bimbofication)>>
<<glitchText "Free will overruled due to conflict #0251">>.
<</if>>
You decide it's best to follow her instructions like you're supposed to and take off your clothes. After you get lubricated with the lotion, you put on the plugsuit.<br>
<br>
"@@.npc_psychiatrist;Very good, <<=$player.first_name>>. Now if you would kindly follow me into the VR Laboratory.@@"<br>
<br>
You nod obediently and follow after her to enter the dimly lit VR chamber. Stepping in the room seems to unlock some of your memories as you recall the re-purposed VR Chair from Style Fetish Industries. Still, a strange choice, you think <<glitchText " thi... t... assuming Position now.">>. The sight of this device triggers something inside you and you get onto it without being asked, putting your arms through the metallic sleeves and your fingers on the resting pans.<br>
<br>
"@@.npc_psychiatrist;Well, well. Someone seems to be very eager to start with the session. Such a lust for science! I am quite inclined to grant this wish.@@" She states in approval, while locking you into place.<br>
<br>
<<if $npc_psychiatrist.hypnosis < 6>>
[<<moveTo 'event_psychiatrist_hypnosis_4_4' 'Continue.' 120 "<<set $scene.first = !State.hasPlayed('event_psychiatrist_hypnosis_4_4')>>">>]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_5_intro' 'Continue.' 120>>]
<</if>>
</div>/*#
#desc: choose topic for fourth/repeatable hypnosis session
#status: FINISHED 0.4.0.0
#ignore_spell: guine,3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcHypnoAnimals">>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
Then she puts the new VR Goggles, the IROI-1, over on your head covering your eyes and ears.<br>
<br>
"@@.npc_psychiatrist;Even though the device can stimulate your brain directly to create stimulations not really there like touch and warmth, it is still kind of hazy, like in a dream. BUT! if we combine with additional stimulation from the chair and your suit the immersion levels are much higher, sometimes even making it feel more real than real. That's why we still need the chair for the best possible results. Now please give me a moment to connect everything up, then we can create a new profile for your brain patterns.@@"<br>
<br>
<<=$npc_psychiatrist.first_name>> works swiftly to hook everything up, your vision going dark for a moment before everything seems to contract slightly in activation.<br>
<br>
You are dropped into an rather retro looking 3d environment. At least at first it's retro. With each passing moment the picture gets clearer and you start to gain feeling over "your" body within the simulation. A sort of tutorial starts up, simulation giving you simple tasks like walk there, kneel, jump, touch this, and so on. With every task the simulation feels more real, until you're controlling your body just like you would in real life and your low poly looking avatar is replaced with a realistic simulacrum of it.<br>
<br>
"@@.npc_psychiatrist;Fun fact: When I look at the raw simulation data you still look like a half life character. The system actually uses your own imagination to render the graphics. In a way your own brain is now part of the GPU. In many ways it's like a lucid dream, but you can only control yourself while the system controls the environment. Who ever came up with that idea is either mad or a genius. Maybe both. Most likely both. Okay, looks like the system finished mapping your brain. Hmm... that went surprisingly fast, you just continue to be the perfect guine- study subject... okay, let me load the test environment. Here's the kicker, this is an active participation simulation, yet another way it's more powerful and effective than what you've done before. There will be items or maybe even people for you to interact with. Depending on what you interact with the different aspects of the virtual world, different routines will be triggered, stimulating and enhancing different parts of your personality. I know it sounds confusing, but just think of it like a game, a game where you get to level up your own mind! You'll get the hang of it soon enough.@@"<br>
<br>
With these words you are suddenly lifted up by an enormous mouse cursor and dragged out of the test environment. The sensation of being carried like this is quite strange, you feel quite helpless. It doesn't last long, however before you are dropped into a simple simulation of a house. You look around. If <<=setup.getNpcName("npc_psychiatrist", "first")>> made this herself, she really has to up her 3d skills. Textbook case of developer graphics.<br>
<br>
<<printThought "Did I just experience Drag and Drop firsthand?">><br>
<br>
<<else>>
As the system starts, you're back in a crudely rendered desert. After a few moments, you establish the neural link and the graphics start to get realistic again. And as usual a giant mouse cursor appears out of thin air, carrying you helplessly off to place you into the strange house once again.
<</if>>
You see a door that leads to what you think might be the restroom. There are several random items lying about the room. There's a rather old school looking joystick connected to a retro TV set. A pair of high heels sits next to another door leading out of the room. A bottle containing a whitish fluid labeled "Drink me" sits atop the coffee table next to you. You can see a black rope hanging on a hook at the wall. Next to the rope is a collar and leash. There are some other items in here as well, but they seem kind of blurry to you. Even trying to interact with them has your hand passing through without any sensation.<br>
<br>
<<include "hypno4Choices">>
</div>/*#
#desc: hypnosis session 4 - penis fetishism start (play with joystick)
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "a Playroom?">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/game_01.mp4">>
<div id="invframe" class="scrolltext">
You kneel on the floor and take the joystick in your hand. As soon as you wrap your hand around the controller a TV comes into focus and turns itself on. It seems to be some kind of video game, but like really old school, like late 80's from the last millennium. It starts innocent enough, just a simple collection of small arcade games like the Wario Ware games. Even though you consider yourself a gamer it takes you a while to get used to the joystick, since you're used to gamepads or motion controls. Still, after a short initial adjustment period working on the joystick becomes like second nature to you. You get pretty good at the game, but the longer you play, the stranger the whole game gets.<br>
<br>
At first the sexual content is subtle, like the developers were seeing what they could sneak past the censors: a penis hidden in the background, things like that. But after a while it becomes more and more blatant until the game wants you to thrust the joystick up and down. At first you think, that's impossible, but as you look down on your joystick, it has transformed into a full fledged <<getWordPenis>>. Not a dildo, but a real <<getWordPenis>>, precum oozing from its tip as your hand moves up and down on it.<br>
<br>
<<if setup.getTotalValue('penis')<5>>
<<printThought "I am not going to ride this <<getWordPenis>>, am I? Oh, it's pulsating in my hands...">><br>
<<else>>
<<printThought "It's time for plug and play!">><br>
<</if>>
<br>
It's as if you've unlocked a "new" level and now the game demands even more commitment from you. You should kiss it, caress it, stroke it. Take it in your mouth like it's the most important thing in your life. And then you come to the "bonus score stage" where the game tells you to raise your butt and thrust down onto it, finally becoming one with your stick of joy.<br>
<br>
<<HypnosisSession4Options $player 'penis'>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism accept enthusiastically suck and self-fuck
#status: FINISHED 0.4.0.0
#ignore_spell: wh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'penis'>>
<<HypnosisSession4Accept $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "a Playroom!">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/game_01.mp4">>
<div id="invframe" class="scrolltext">
<<shinyText "One, two, three, four, I'll suck your cock and beg for more!" 0.0>>
<<shinyText "Five, six, seven, eight, licking cock is really great!" 0.4>>
<<shinyText "Eight, seven, six, five, sucking cock just makes me thrive." 0.8>>
<<shinyText "Four, three, two, one, fuck my ass it's really fun!" 1.2>>
<<shinyText "One, three, five, nine, need a hole? Please use mine!" 1.6>>
<<shinyText "Two, four, six, eight, my lust for cock I'll never sate!" 2.0>>
<<shinyText "One, three, six, nine, both holes filled is really fine!" 2.4>>
<<shinyText "One, two, three, four, I'm nothing but a <<if $fetish.sissy>>Sissy<<else>>Sexy<</if>> WHORE!" 2.8>>
<<shinyText "Five, six, seven, eight, fuck me now, don't make me wait!" 3.2>>
<br><br>
<span id="mid_visible" style="visibility: hidden;">
You lower your head down until your lips are only a few millimetres away from the <<getWordPenis>> while still holding it firm. Knowing exactly what to do, a feeling overcomes you, that you're not doing this for your own pleasure. It was never about your pleasure. Doing this, to provide the best possible delight to this throbbing <<getWordPenis>> is what it has all been about. Just like you were instructed, a kiss. Precum moisten your lips. Oh. You've unlocked the cockwhore bonus. Very Nice. Your tongue is licking up and down the meaty shaft in the rhythm provided by the game until it's finally time to use your mouth as the fuckhole it's supposed to be. Even though you choke a little at the beginning, you manage to keep up the pace of the game while you suck on this beautiful <<getWordPenis>>. Getting better with each and every iteration, building your cocksucker bonus and then triggering the face-fuck multiplier. Finally, after pushing yourself to new levels of oral pleasuring, the game indicates that it is time for the grand finale. You get up and place your butt over the <<getWordPenis>>, parting your asscheeks. You can feel the tip probing your sphincter and with a final thrust...<br>
<br>
</span>
<<if $options.impatient>>
<<printThought "Wh... what am I doing?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "Wh... what am I doing?">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Is that all I exist for?" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "Is that all I exist for?" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "To pleasure <<getWordPenis>>?" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "To pleasure <<getWordPenis>>?" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Oh... look at this beautiful <<getWordPenis>>! It deserves to be idolized!" 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Oh... look at this beautiful <<getWordPenis>>! It deserves to be idolized!" 40>></span>
<</if>>
<br><br>
<<include "hypnosisAcceptEnd">>
</div><span id="exit_visible" style="visibility: hidden;">
<<if $scene.spentWillpower>>
You let out an imaginarily held breath, the stress of pushing yourself to this new height fading away.
<<if $scene.changedMaxWillpower>>
It took an act of will, but you did it, Though it was mentally tiring you feel that pushing yourself to achieve your goal has served to bolster your overall mental state.
<<else>>
Though you have pushed yourself to such limits before, it replenishes your mental reserves to know that you are still capable of striving to meet your destiny.
<</if>>
<br><br>
<<elseif $scene.spendFatigue>>
Though it is tiring to push yourself so hard, you feel your mental reserves replenished by your accomplishment.<br>
<br>
<<elseif $scene.surrender>>
Resisting is too hard, you let your mental guards slip and surrender to the simulation, the depravity washing over you, soaking into your mind.<br>
<br>
<</if>>
<<if $scene.threshold_triggered>>
You feel like you might have been a bit aggressive in so enthusiastically embracing the simulation. You have definitely learned a lot, and you wonder if you could even go back to "before"... if you would even want to?
<<else>>
It is hard to believe that what you just enjoyed would have once horrified you. How far you have come, too far to hesitate or resist. You need to find other activities in the real world, discover more about yourself as you race further down this wonderful road of depravity.
<</if>>
<br><br>
<<include "vrSessionEnd">>
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>/*#
#desc: hypnosis session 4 - penis fetishism decline, fuck and suck
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'penis'>>
<<HypnosisSession4Decline $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "a Playroom?">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/game_01.mp4">>
<div id="invframe" class="scrolltext">
<<shinyText "One, two, three, four, I'll suck your cock and beg for more!" 0.0>>
<<shinyText "Five, six, seven, eight, licking cock is really great!" 0.4>>
<<shinyText "Eight, seven, six, five, sucking cock just makes me thrive." 0.8>>
<<shinyText "Four, three, two, one, fuck my ass it's really fun!" 1.2>>
<<shinyText "One, three, five, nine, need a hole? Please use mine!" 1.6>>
<<shinyText "Two, four, six, eight, my lust for cock I'll never sate!" 2.0>>
<<shinyText "One, three, six, nine, both holes filled is really fine!" 2.4>>
<<shinyText "One, two, three, four, I'm nothing but a <<if $fetish.sissy>>Sissy<<else>>Sexy<</if>> WHORE!" 2.8>>
<<shinyText "Five, six, seven, eight, fuck me now, don't make me wait!" 3.2>>
<br>
<span id="mid_visible" style="visibility: hidden;">
You refuse to play the games... game. You follow the instruction to a certain point, but do things your way, to have fun. You lower your head down until your lips are only a few millimetres away from the <<getWordPenis>> while still holding it firm with your hand. You know exactly what you have to do. There's no point in doing something like this if it's not possible for both participants to have fun. And you have to admit, the thought of providing the best possible delight to this throbbing <<getWordPenis>> makes you pretty horny. With that thought you plant a kiss onto the <<getWordPenis>>. You feel the precum moisten your lips. Oh, the cockwhore bonus has been unlocked. Nice. Your tongue licks up and down the shaft in the rhythm provided by the game until it's finally time to use that mouth of yours. You have trouble at first keeping up the pace of the game while sucking on this beautiful <<getWordPenis>>, but you get better with every iteration, building your cocksucker bonus and then triggering the face-fuck multiplier. After that the game becomes irrelevant. It's your pace that counts. after a while of pleasuring it you get up and place your butt over the <<getWordPenis>>, parting your asscheeks. You can feel the tip probing your sphincter. Your spit and the precum acting as lubricant. And with a final thrust...<br>
<br>
</span>
<<if $options.impatient>>
<<printThought "I refuse to play by the rules!">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "I refuse to play by the rules!">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I am not some sex toy for others to enjoy!" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "I am not some sex toy for others to enjoy!" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I want to have fun myself doing this!" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "I want to have fun myself doing this!" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Oh... look at this beautiful <<getWordPenis>>! I just want to wrap my lips around it!" 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Oh... look at this beautiful <<getWordPenis>>! I just want to wrap my lips around it!" 40>></span>
<</if>>
<br><br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("penis") >= 10>>
It is odd to think that something this sexual could be considered "holding back," but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("penis") >= 7>>
As fun as the simulation is, you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
<<include "vrSessionEnd">>
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism reject, glitch out and abort
#status: FINISHED 0.4.0.0
#ignore_spell: reinf
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession4Reject $player $scene 'penis'>>
<<set $scene.hypnoSession.theme = 'reject'>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF >One, two, three, four, I'll suck your cock and beg for more!">><br>
<<glitchText "#_REINF >Five, six, seven, eight, licking cock is really great!">><br>
<<glitchText "#_REINF >Eight, seven, six, five, sucking cock just makes me thrive.">><br>
<<glitchText "#_REINF >Four, three, two, one, fuck my ass it's really fun!">><br>
<<glitchText "#_REINF >One, three, five, nine, need a hole? Please use mine!">><br>
<<glitchText "#_REINF >Two, four, six, eight, my lust for cock I'll never sate!">><br>
<<glitchText "#_REINF >One, three, six, nine, both holes filled is really fine!">><br>
<<if $fetish.sissy>>
<<glitchText "#_REINF >One, two, three, four, I'm nothing but a Sissy WHORE!">><br>
<<else>>
<<glitchText "#_REINF >One, two, three, four, I'm nothing but a Sexy WHORE!">><br>
<</if>>
<<glitchText "#_REINF >Five, six, seven, eight, fuck me now, don't make me wait!">><br>
<br>
<<if $fetish.hypnosis>>
You mentally fight back against the depravity before you, the simulation starts to fragment and fade... then, as if someone just activated a set of backup generators everything flares back into crisp focus. There can be no escape, no resistance...<br>
<br>
<<if $scene.outfit == "penis">>
<<HypnosisSession5Options $player 'penis' true>>
<<else>>
<<HypnosisSession4Options $player 'penis' true>>
<</if>>
<<else>>
You can feel these, these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality, you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation, you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("penis") >= 5>>
As your mind adjusts to the jarring break in the simulation, you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
<<include "vrSessionEnd">>
<</if>>
</div>/*#
#desc: hypnosis session 4 - piss fetishism intro, work as human toilet
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "a Restroom?">>
<<initRoom>>
<<include playerMenu>>
<<if !$options.fem>>
<<createAnimatedBGR "./video/piss_pov_01.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
As you enter the restroom, your vision starts to blur, your conscious mind getting foggy as you fall into a state of trance. Your mind gets filled with sounds and images while your body gets stimulated by the suit. At first you feel like you're standing in a warm spring rain, but for some reason the water has a rather strange flavour, for lack of a better word. You are unable to move due some unseen restraints. As you open your eyes, you realise that you're wearing a white see through bodysuit, and from the tight feeling over your face you suppose you wear a similar mask as well.<br>
<br>
Looking down, there appears to be a logo on your chest. It is hard to make out from your point of view, but it looks kind of like the symbol for an unisex toilet. Looking around, you realise you are kneeling, your legs bolted to the floor while your arms are restrained behind your back. The room you're inside is white tile, like a restroom though there are no toilets to be seen. From all the information you've gathered, there seems only one conclusion to draw — you are the urinal. A thought which should cause you a lot more distress than you're currently showing for some unknown reason. Your assumption becomes reality as a well dressed <<if $options.fem>>woman<<else>>gentleman<</if>> enters the restroom and unzips <<his>> fly to unpack <<his>> <<getWordPenis>>. Without a word <<he>> drives <<his>> soft cock into your open mouth.<br>
<br>
<<if setup.getTotalValue('piss')<5>>
<<printThought "<<He>> is going to use me like a toilet. Is that, what I am? Just a toilet to be used by others?">><br>
<<else>>
<<printThought "Let me swallow <<his>> tasty <<getWordPiss>>, like the toilet slave I am supposed to be!">><br>
<</if>>
<br>
A torrent of piss fills your mouth to the brim until the <<getWordPiss>> trickles out the sides of your mouth as you sputter and cough. It seems that if you do not want to drown in <<getWordPiss>> you will have to swallow. Peeking past your first client, your eyes go wide as you realise a long line has started to form. <<if $options.fem>>Many women have queued up behind the lady<<else>>Persons both male and female have queued up behind the gentleman<</if>>, who is still filling your mouth. Your mouth near full to the brim as you have not swallowed anything yet you can taste the bitter <<getWordPiss>> on your tongue.
<br><br>
<<HypnosisSession4Options $player 'piss'>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism accept, eagerly guzzle urine and embrace binge a human urinal
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'piss'>>
<<HypnosisSession4Accept $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "a Restroom!">>
<<initRoom>>
<<include playerMenu>>
<<if !$options.fem>>
<<createAnimatedBGR "./video/piss_pov_01.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<shinyText "Speak this truth out loud." 0.0>>
<<shinyText "I am not a Person. I am a Toilet." 0.4>>
<<shinyText "Yes. I am not a Person. I am a Toilet." 0.8>>
<<shinyText "Repeat this mantra after me." 1.2>>
<<shinyText "I have no desires but to be a Toilet Slave." 1.6>>
<br><br>
<span id="mid_visible" style="visibility: hidden;">
You try your best to gulp it down like you're supposed to, but the endless torrent of piss raining down on you turns out to be more than you can handle.
<<if setup.getTotalValue('piss')<5>>
You're still repulsed by the taste and shudder with every ounce that flows down your throat, thinking about the humiliation you're currently enduring. You are being used as a toilet, there's no other way to put it. And still, with every new client coming up, using you, it becomes easier, more natural, your acceptance of the whole situation rises.
<<elseif setup.getTotalValue('piss')<10>>
It's still bitter, but you got used to the taste. You know, this is what you're supposed to do. This humiliation is your purpose. Some of the clients even allow you to lick their <<getWordPenis>> or pussy clean after a job well done, and you think... you think you are starting to enjoy your new position in life.
<<else>>
And you hate it. Every ounce of yummy <<getWordPiss>> trickling out of your mouth is a wasted drop. You're supposed to drink it all like the good, obedient little toilet slave you are. After all, you're not a person. You are a toilet. For <<if !$options.fem>>your Master... <</if>>your Mistress... for whoever wants to use your dirty little mouth, anyone who steps up is permitted to do as they like.
<</if>>
Your uniform gets splattered by everything that gets spilled or dribbles past your chin. Towards the end some people simply piss at you... the warmth of it makes it feel like a warm spring rain splattering against your artificial second skin. You have lost count of how many persons used you. Your mind becomes calmer with each "client" served and after a while you are unable to form any thoughts besides thoughts a toilet would have, if a toilet could think, that is.<br>
<br>
</span>
<<if $options.impatient>>
<<printThought "No! I am a person!">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "No! I am a person!">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I... I am a person?" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "I... I am a person?" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "But why do they use me like a toilet?" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "But why do they use me like a toilet?" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I am not a Person. I am a Toilet. Please bless me with your golden showers!" 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "I am not a Person. I am a Toilet. Please bless me with your golden showers!" 40>></span>
<</if>>
<br><br>
<<include "hypnosisAcceptEnd">>
</div>/*#
#desc: hypnosis session 4 - piss fetishism decline, try not to drink, but give in
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'piss'>>
<<HypnosisSession4Decline $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "a Restroom?">>
<<initRoom>>
<<include playerMenu>>
<<if !$options.fem>>
<<createAnimatedBGR "./video/piss_pov_01.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<shinyText "Say this truth out loud." 0.0>>
<<shinyText "I am not a Person. I am a Toilet." 0.4>>
<<shinyText "Yes. I am not a Person. I am a Toilet." 0.8>>
<<shinyText "Repeat this mantra after me." 1.2>>
<<shinyText "I have no desires but to be a Toilet Slave." 1.6>>
<br>
<<shinyText "Yes. I am not a Person. I am a Toilet." 2.0>>
<span id="mid_visible" style="visibility: hidden;">
You close your mouth, not accepting any of the golden <<getWordPiss>> that comes down like rain onto your face and body. You try to focus your thoughts, but the onslaught of voices trying to convince you that it is in your best interest to accept the golden gift from above makes your mental defence crumble. It is only a matter of time until you give in. Your lips part and though you refuse to swallow, you let them piss in your mouth, spitting it out and letting it run down your chin and over your chest.
<<if setup.getTotalValue('piss')<5>>
You're repulsed by the taste and shudder with every ounce that somehow manages to make it down your throat. All you can think of is the humiliation you're currently enduring. You are being used as a toilet. There is no other way to put it. And still, with every new client coming up, using you, your acceptance of the whole situation rises.
<<elseif setup.getTotalValue('piss')<10>>
It's still bitter, but you got used to the taste. You know this is what you're supposed to do. This humiliation is your purpose. Some of the clients even allow you to lick their <<getWordPenis>> or pussy clean after a job well done, and you think... you think you are starting to enjoy your new position in life.
<<else>>
But after a while you start swallowing all of it, since it is, after all a golden gift, from above. Every ounce of yummy <<getWordPiss>> trickling out of your mouth is a wasted drop. You're supposed to drink it all like the good, obedient little toilet slave you are. After all, you're not a person. You are a toilet. For <<if !$options.fem>>your Master... <</if>>your Mistress... for whoever wants to use your dirty little mouth, you are helpless to resist anyone from using you as they like.
<</if>>
Your uniform gets splattered by everything that gets spilled or dribbles past your chin. Towards the end some people simply piss at you... the warmth of it makes it feel like a warm spring rain splattering against your artificial second skin. You have lost count of how many persons used you. Your mind becomes calmer with each "client" served and after a while you are unable to form any thoughts besides thoughts a toilet would have, if a toilet could think, that is.
</span>
<br><br>
<<if $options.impatient>>
<<printThought "No! I refuse to accept this! I am a person!">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "No! I refuse to accept this! I am a person!">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "No way I am going to open my mouth for this!" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "No way I am going to open my mouth for this!" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "But they all seem so happy using me...?" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "But they all seem so happy using me...?" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Okay, I'll open my mouth for them. But just this once... " 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Okay, I'll open my mouth for them. But just this once... " 40>></span>
<</if>>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue || $scene.spendWillpower>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("piss") >= 10>>
It is odd to think that something this sexual could be considered "holding back," but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("piss") >= 7>>
As fun as the simulation is, you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<<else>>
You don't feel like this had any lasting impact on your psyche.
<</if>>
<br><br>
<<include "vrSessionEnd">>
</span>
<<if $options.impatient>>
<<makeVisible 'mid_visible' 0>>
<<makeVisible 'exit_visible' 0>>
<<else>>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
<</if>>
</div>/*#
#desc: hypnosis session 4 - penis fetishism reject, glitch out of being a human toilet
#status: FINISHED 0.4.0.0
#ignore_spell: reinf
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession4Reject $player $scene 'piss'>>
<<set $scene.hypnoSession.theme = 'reject'>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_COM >Say this truth out loud:">><br>
<<glitchText "#_REP >I am not a Person. I am a Toilet.">><br>
<<glitchText "#_REINF >I am not a Person. I am a Toilet.">><br>
<<glitchText "#_COM >Repeat this mantra after me:">><br>
<<glitchText "#_REP >I have no desires but to be a Toilet Slave.">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information.
<<if $fetish.hypnosis>>
You mentally fight back against the depravity before you, the simulation starts to fragment and fade, then, as if someone just activated a set of backup generators everything flares back into crisp focus. There can be no escape, no resistance...<br>
<br>
<<if $scene.outfit == "piss">>
<<HypnosisSession5Options $player 'piss' true>>
<<else>>
<<HypnosisSession4Options $player 'piss' true>>
<</if>>
<<else>>
<<if $scene.changedMaxWillpower>>
But not today! You steel your thoughts and refuse to let them in.<br>
<br>
<<printThoughtWill $player "I refuse to accept this reality!">><br>
<br>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!
<<else>>
Since you already refused this reality, you cannot feel your willpower strengthening this time.
<</if>>
<br><br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("piss") >= 5>>
As your mind adjusts to the jarring break in the simulation, you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to indulge, just to see what it's like?
<</if>>
<br><br>
<<include "vrSessionEnd">>
<</if>>
</div>/*#
#desc: hypnosis session 4 - cum fetishism intro, served glass of cum
#status: FINISHED 0.4.0.0
#ignore_spell: beingboth
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "a Bar?">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/cum_drink.mp4">>
<div id="invframe" class="scrolltext">
You take a sip from the bottle, not even tasting what is in it before your vision swirls. Blinking, you find yourself walking into a bar where you take a seat on one of the stools. It is strange, though you are not alone, you cannot seem to focus on any of the other patrons, only vaguely aware that it appears to be <<if $options.fem>>all women<<else>>a mix of male and female<</if>>.<br>
<br>
You wave down the bartender who stands in front of you, still out of focus, yet somehow familiar.<br>
<br>
"The usual" you state and the bartender nods.<br>
<br>
"@@.npc_gloryhole;Another one? Of course, just give me a second,@@" <<he>> says, while putting a rather large martini glass on the bar. Then <<he>> pulls down <<his>> zipper, freeing an enormous <<getWordPenis>>, like it's the most natural thing to do. Starting to massage <<his>> giant <<getWordPenis>>, you can see the precum dripping from the rosy tip, dripping into the glass, while more and more patrons join in, pulling out their dicks and masturbating until they shoot thick strings of <<getWordCum>> into the glass. After a while, the whole spectacle is over and you realise that everyone at the bar has stopped to stare at you as the bartender places the glass right in front of you.<br>
<br>
"@@.npc_gloryhole;Here you go, cumslut.@@"<br>
<br>
Full and frothy, you find yourself bringing the glass to your lips.<br>
<br>
<<if setup.getTotalValue('cum')<5>>
<<printThought "Do I really have to drink this?">>
<<else>>
<<printThought "Ooh... I look forward to tasting this on my tongue!">>
<</if>>
<br><br>
<<HypnosisSession4Options $player 'cum'>>
<br>
<a target="_blank" href="https://faphouse.com/transgender/studios/beingboth">(EXT/NSFW) Special Thanks to BeingBoth</a>
</div>/*#
#desc: hypnosis session 4 - cum fetishism accept, drink cum -> bukkake scene, lick it all up
#status: FINISHED 0.4.0.0
#ignore_spell: beingboth
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'cum'>>
<<HypnosisSession4Accept $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "a Bar!">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/cum_drink.mp4">>
<div id="invframe" class="scrolltext">
<<shinyText "Cum is love..." 0.0>>
<<shinyText "Cum is life...!" 0.4>>
<<shinyText "Give me that creamy goodness." 0.8>>
<<shinyText "I love cum." 1.2>>
<<shinyText "Jizz brings me joy." 1.6>>
<<shinyText "Semen is scrumptious." 2.0>>
<<shinyText "Feed me cum." 2.4>>
<<shinyText "Cover me in cum." 2.8>>
<<shinyText "Drown me in dick milk." 3.2>>
<br>
<span id="mid_visible" style="visibility: hidden;">
You tilt your head back to drain your glass of every thick drop, licking your lips as you place it back on the bar with a smile. The bartender smiles back.<br>
<br>
"@@.npc_gloryhole;Another?@@"<br>
<br>
You smile wider and nod. Picking up your glass from the bar, the bartender does not refill it, instead motioning behind you. Turning around, you are presented with a joyous sight — the other patrons of the bar are all facing you, pants lowered and skirts raised to present a vast array of dicks of all kinds, big and <<if $options.fem>>thick<<else>>manly<</if>> to petite and <<if $fetish.sissy>>sissy<<else>>girly<</if>>, smooth and feminine to hairy and rough, all hard and all full of cum...<br>
<br>
Sliding off the stool, you drop to your knees, a bowl appearing in your hands as the first couple of patrons approach. Holding the bowl just in front of your chin, you watch in rapt attention as they jerk off into the bowl, thick ropes of semen-y goodness splashing into the bowl with a little spraying onto your face. Eagerly you tilt the bowl back, swallowing and licking it clean of every delectable drop.<br>
<br>
By the time you are done, a fresh set of "customers" has appeared, spraying more and more semen into the bowl and onto your face. You drink more and more, each swallow bringing with it a fresh layer of cum splashed across your face. Not once does a "customer" touch you, nor do you touch them. This isn't about sex, it's about cum, filling you, coating you... lovely, delicious, wonderful cum...<br>
<br>
You drink and drink and drink, until you are alone in the bar, collapsed on the floor, your bowl licked clean, your belly full. Idly scraping semen off your face and licking your fingers clean, you purr in contentment...<br>
<br>
</span>
<<if $options.impatient>>
<<printThought "Why am I so thirsty?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "Why am I so thirsty?">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "How does cum taste so good?" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "How does cum taste so good?" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Please... I need more cum..." 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "Please... I need more cum..." 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Drown me in cum!" 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Drown me in cum!" 40>></span>
<</if>>
<br><br>
<<include "hypnosisAcceptEnd">>
<br>
<a target="_blank" href="https://faphouse.com/transgender/studios/beingboth">(EXT/NSFW) Special Thanks to BeingBoth</a>
</div>/*#
#desc: hypnosis session 4 - cum fetishism decline, surprise snowball-kissed then bukkake'd
#status: FINISHED 0.4.0.0
#ignore_spell: beingboth
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'cum'>>
<<HypnosisSession4Decline $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "a Bar?">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/cum_drink.mp4">>
<div id="invframe" class="scrolltext">
<<shinyText "Cum is love..." 0.0>>
<<shinyText "Cum is life...!" 0.4>>
<<shinyText "Give me that creamy goodness." 0.8>>
<<shinyText "I love cum." 1.2>>
<<shinyText "Jizz brings me joy." 1.6>>
<<shinyText "Semen is scrumptious." 2.0>>
<<shinyText "Feed me cum." 2.4>>
<<shinyText "Cover me in cum." 2.8>>
<<shinyText "Drown me in dick milk." 3.2>>
<br>
<span id="mid_visible" style="visibility: hidden;">
You refuse to drink cum, gently spitting out the small amount you had tasted and placing the glass back on the bar.<br>
<br>
The bartender pauses, frowning slightly at your rejection. Before you can move someone appears next to you at the bar, stealing the drink and pounding it back before grabbing you by the head.<br>
<br>
You barely recognise the beautiful female before your lips are pressed against hers in a kiss, her hands holding your head in place as her lips part, leaking bitter, salty semen into your mouth.<br>
<br>
You imagine you can feel each little sperm migrating from her mouth to yours, swimming over your tongue, flowing down your throat, infiltrating you utterly.<br>
<br>
When she finally ends the long, sensuous kiss you are glassy-eyed, thirsty for more.<br>
<br>
You drop to your knees as she pulls up her skirt to reveal a juicy cock. You open your mouth obediently as she starts to stroke, moments away from thick, juicy ropes of <<getWordCum>> spraying fresh from the source...<br>
<br>
Her feminine load shoots straight between your O-shaped lips, the tasty juices splashing over your tongue. By the time you swallow another cock is in front of you... make that two, three...<br>
<br>
The whole bar seems to have lined up before you, a bowl appearing in your hand to catch whatever spills from your face as they take turns spraying your with semen. Thirstier than if you were in the middle of a desert you drink every load, licking the bowl clean at the end and using your fingers to clean off your face, sucking up every last drop...<br>
<br>
</span>
<<if $options.impatient>>
<<printThought "I am not a cum-drinker!">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "I am not a cum-drinker!">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I am not thirsty for semen!" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "I am not thirsty for semen!" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I just like the taste!" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "I just like the taste!" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Mmmm... this is so delicious... drown me in cum!" 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Mmmm... this is so delicious... drown me in cum!" 40>></span>
<</if>>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("cum") >= 10>>
It is odd to think that something this sexual could be considered "holding back," but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("cum") >= 7>>
As fun as the simulation is, you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<</if>>
<br><br>
<<include "vrSessionEnd">>
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
<br>
<a target="_blank" href="https://faphouse.com/transgender/studios/beingboth">(EXT/NSFW) Special Thanks to BeingBoth</a>
</div>/*#
#desc: hypnosis session 4 - cum fetishism reject, glitch out
#status: FINISHED 0.4.0.0
#ignore_spell: reinf
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession4Reject $player $scene 'cum'>>
<<set $scene.hypnoSession.theme = 'reject'>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF4">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF >Cum is love...">><br>
<<glitchText "#_REINF >Cum is life...!">><br>
<<glitchText "#_REINF >Give me that creamy goodness.">><br>
<<glitchText "#_REINF >I love cum.">><br>
<<glitchText "#_REINF >Jizz brings me joy.">><br>
<<glitchText "#_REINF >Semen is scrumptious.">><br>
<<glitchText "#_REINF >Feed me cum.">><br>
<<glitchText "#_REINF >Cover me in cum.">><br>
<<glitchText "#_REINF >Drown me in dick milk.">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $fetish.hypnosis>>
You mentally fight back against the depravity before you, the simulation starts to fragment and fade... then, as if someone just activated a set of backup generators everything flares back into crisp focus. There can be no escape, no resistance...<br>
<br>
<<if $scene.outfit == "cum">>
<<HypnosisSession5Options $player 'cum' true>>
<<else>>
<<HypnosisSession4Options $player 'cum' true>>
<</if>>
<<else>>
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality, you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("cum") >= 5>>
As your mind adjusts to the jarring break in the simulation, you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
<<include "vrSessionEnd">>
<</if>>
</div>/*#
#desc: hypnosis session 4 - bondage fetishism intro, rope harness yourself, then raised in suspension
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "a Dungeon?">>
<<initRoom>>
<<include playerMenu>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/bondage_suspension.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
You reach up and take the rope off the hook. You start practicing tying and untying knots with it, gradually weaving a harness around your body. Playing with the rope is almost meditative and when you finally look around again you realise that you are no longer in the room in which you started.<br>
<br>
Dark and difficult to make out the only thing clearly visible in your surroundings is a mirror reflecting your appearance back at you — your naked body entwined with rope, black lines crossing back and forth in a karada, or rope harness over your body.<br>
<br>
You stare at your reflection, admiring how the rope frames and highlights your naked form. As well you enjoy how the rope feels against your flesh, tight and erotic, yet the mere harness is not actually restrictive.<br>
<br>
You look around again, more rope uncoiling from the ceiling, pre-tied loops ready to bind your limbs and more if you just accept the silent invitation...<br>
<br>
<<if setup.getTotalValue('bondage')<5>>
<<printThought "Do I really want to surrender to bondage?">><br>
<<else>>
<<printThought "Mmm, floating in suspension would feel so nice...">><br>
<</if>>
<br>
The ropes dangle, tantalising and... are they moving towards you? No, they are merely swaying slightly, the idea that anything is closing in is just a trick of perspective and an overactive imagination...<br>
<br>
<<HypnosisSession4Options $player 'bondage'>>
</div>/*#
#desc: hypnosis session 4 - bondage fetishism accept, full suspension bondage + blindfold and ballgag
#status: FINISHED 0.4.0.0
#ignore_spell: wh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bondage'>>
<<HypnosisSession4Accept $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "a Dungeon!">>
<<initRoom>>
<<include playerMenu>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/bondage_suspension.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<shinyText "Bondage is bliss." 0.0>>
<<shinyText "Restriction is rapture." 0.4>>
<<shinyText "Freedom is a burden." 0.8>>
<<shinyText "I want to be tied." 1.2>>
<<shinyText "I want to be bound." 1.6>>
<<shinyText "I want to surrender control." 2.0>>
<br>
<span id="mid_visible" style="visibility: hidden;">
You extend an arm through a nearby loop, pulling until it gently closes around your wrist, tight, but not painful. A firm jerk confirms that the knot is now secure, no longer tightening now that it is holding your wrist.<br>
<br>
Emboldened you look for another loop to repeat the exercise with your other hand. This time once you are secured things start to change. The ropes retract, lifting you into the air as more ropes move in to encircle your ankles, your thighs; moving like snakes and weaving in with your harness you can only watch as the ropes lift you into a full bondage suspension, each of your limbs tightly bound leaving you dangling in midair.<br>
<br>
Swaying in your helpless suspension, a feeling of calm bliss washes over you. This is what you want, to be tied, to be restricted, to be bound...<br>
<br>
From the darkness a blindfold appears, robbing you of your sight. Next comes something in your mouth... something round? As the strap tightens around your head, you recognise it as a nice thick ball gag. You purr in contentment, blind and mute, floating in silence, savouring every delicious feeling of the multitudinous ropes binding you, holding you, loving you.<br>
<br>
</span>
<<if $options.impatient>>
<<printThought "Wh... what is this feeling?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "Wh... what is this feeling?">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "How can helplessness feel so good?" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "How can helplessness feel so good?" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Is freedom a burden?" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "Is freedom a burden?" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I should be bound more often..." 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "I should be bound more often..." 40>></span>
<</if>>
<br><br>
<<include "hypnosisAcceptEnd">>
</div>/*#
#desc: hypnosis session 4 - bondage fetishism decline, accidentally tie yourself up, then blindfold and ballgag
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bondage'>>
<<HypnosisSession4Decline $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "a Playroom?">>
<<initRoom>>
<<include playerMenu>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/bondage_suspension.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<shinyText "Bondage is bliss." 0.0>>
<<shinyText "Restriction is rapture." 0.4>>
<<shinyText "Freedom is a burden." 0.8>>
<<shinyText "I want to be tied." 1.2>>
<<shinyText "I want to be bound." 1.6>>
<<shinyText "I want to surrender control." 2.0>>
<br>
<span id="mid_visible" style="visibility: hidden;">
Taking a nearby rope, you decide to experiment with how it would feel to tie your legs. Your arms are free so you can untie yourself at any time, besides, your rope harness would look better continuing down your body...<br>
<br>
Several meditative minutes later, woven bondage covers you from the shoulders down, your legs tightly, but comfortably roped together, only your arms and head free of the black tendrils.<br>
<br>
Taking another rope in hand, you start to wind it around your left wrist, you're still just experimenting, your right hand is still free so you could easily untie yourself if you wanted to, you just don't want to.<br>
<br>
Your left arm traced with rope and tied behind your back to the rope around your waist, you leave another loop. You look at your reflection one last time and then move your right arm out of the way to keep its bareness from contrasting with the rest of your rope-entwined reflection.<br>
<br>
You try to bring your hand back in front of your body only to discover that you can't. You have threaded your right hand through the loop at the small of your back, your wrist now tightly bound and no matter how you twist your fingers seem to brush uselessly against your bonds.<br>
<br>
Rocking in your self-inflicted restraints, you look around to see ropes unfurling from above, weaving through your restraints and then tightening, slowly lifting you into the air until you are in helpless suspension. A leather blindfold floats in front of your face, wrapping your head followed by a round ball gag pressed past your lips. Both straps tightened snug, you are blind and mute as you hang in silence, a final rope weaving through the straps of your final restraints to gently pull your head back and support it as you hang helplessly... blissfully...
<br><br>
</span>
<<if $options.impatient>>
<<printThought "I want to be free...">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "I want to be free...">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "But I chose to be bound..." 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "But I chose to be bound..." 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Maybe restraints are the real freedom?" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "Maybe restraints are the real freedom?" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Yes, being bound feels much better, bondage is good, bondage is bliss..." 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Yes, being bound feels much better, bondage is good, bondage is bliss..." 40>></span>
<</if>>
<br>
<span id="exit_visible" style="visibility: hidden;"><br>
<br>
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("bondage") >= 10>>
It is odd to think that something this sexual could be considered "holding back," but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("bondage") >= 7>>
As fun as the simulation is, you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
<<include "vrSessionEnd">>
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - bondage fetishism reject, glitch out
#status: FINISHED 0.4.0.0
#ignore_spell: reinf
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession4Reject $player $scene 'bondage'>>
<<set $scene.hypnoSession.theme = 'reject'>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF5">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF >Bondage is bliss.">><br>
<<glitchText "#_REINF >Restriction is rapture.">><br>
<<glitchText "#_REINF >Freedom is a burden.">><br>
<<glitchText "#_REINF >I want to be tied.">><br>
<<glitchText "#_REINF >I want to be bound.">><br>
<<glitchText "#_REINF >I want to surrender control.">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $fetish.hypnosis>>
You mentally fight back against the depravity before you, the simulation starts to fragment and fade... then, as if someone just activated a set of backup generators everything flares back into crisp focus. There can be no escape, no resistance...<br>
<br>
<<if $scene.outfit == "bondage">>
<<HypnosisSession5Options $player 'bondage' true>>
<<else>>
<<HypnosisSession4Options $player 'bondage' true>>
<</if>>
<<else>>
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality, you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("bondage") >= 5>>
As your mind adjusts to the jarring break in the simulation, you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
<<include "vrSessionEnd">>
<</if>>
</div>/*#
#desc: hypnosis session 4 - foot fetishism intro, put on high heels, they transform into extreme thigh highs
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "a Shoe Store?">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/foot_fetish.mp4">>
<div id="invframe" class="scrolltext">
From the moment you pick up the high heels, you can tell that they are very high quality. In a classic stiletto style, they sport modest 5cm heels in polished black patent leather. Admiring your distorted reflection in the mirror-polished surface you can't help but lean over and slip them on.<br>
<br>
To say they are your size would be an understatement. It is as if they were moulded specifically for your feet, more comfortable than anything you have worn, even with the heel. Speaking of the heel as you think about it is the heel rising?<br>
<br>
Looking over at a conveniently appearing mirror confirms that yes, the heels are getting longer and thinner, looking to be past 6cm and still growing steeper. Out of the corner of your eye it seems that you are now standing in some sort of shoe store changing aisle, but your attention remains fixated on the reflection of your new heels. In addition the once court-shoes have started creeping up over your ankles, the tight patent leather past ankle-boot level and rising even faster than your heels.<br>
<br>
Tingles of pleasure run from your toes up your legs in time with the rising boots and you start to teeter as the heels pass 8cm with you now up to calf-boots. You manage to steady yourself as you watch in rapturous awe as they keep growing. By the time you have full over-the-knee boots your heels are approaching 12cm, your feet pitched steeply forward as you start to grow platforms under your toes.<br>
<br>
Finally, as your boots rise to full thigh-highs and nearly 20 cm heels you finally pitch forward, landing on your hands and knees as the stunning footwear finally become too much for you. Catching your breath as your body adjusts to the intense, erotic footwear perfectly fitted all the way up your legs you look up from the floor to find a pair of heeled feet standing in front of you...<br>
<br>
<<HypnosisSession4Options $player 'foot'>>
</div>/*#
#desc: hypnosis session 4 - foot fetishism accept, foot/shoe massage/worship
#status: FINISHED 0.4.0.0
#ignore_spell: wh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'foot'>>
<<HypnosisSession4Accept $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "a Shoe Store!">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/foot_fetish.mp4">>
<div id="invframe" class="scrolltext">
<<shinyText "I love heels." 0.0>>
<<shinyText "Higher is better." 0.4>>
<<shinyText "Steeper is sweeter." 0.8>>
<<shinyText "Wear the heels, worship the heels." 1.2>>
<<shinyText "Kiss the toes." 1.6>>
<<shinyText "Rub the heels." 2.0>>
<<shinyText "Massage the arches!" 2.4>>
<<shinyText "At someone's feet is where I belong..." 2.8>>
<br>
You eagerly start kissing the high-heeled foot before you. Steep and shiny and red, the heels scream sex and poise and you enthusiastically polish them with your tongue before lovingly massaging the ankle and calf above. When you finally lean back to take a breath the figure before you turns, walking smartly away with another person walking up to take their place.<br>
<br>
This time you are faced with knee high chunk heels, but you set to work with the same gusto. But this time your "customer" removes their feet from her shoes, they're wrapped in delicate nylons. From the fragrance she must have worn them all day long. You take your time massaging and worshipping them, until the wearer is satisfied and turns away to be replaced with your next client...<br>
<br>
<<if $options.impatient>>
<<printThought "Wh... what am I doing?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "Wh... what am I doing?">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Is that all I exist for?" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "Is that all I exist for?" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "To worship feet?" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "To worship feet?" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Oh... look at these beautiful shoes! These caress-worthy feet! They deserve to be idolized!" 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Oh... look at these beautiful shoes! These caress-worthy feet! They deserve to be idolized!" 40>></span>
<</if>>
<br><br>
<span id="mid_visible" style="visibility: hidden;">
Pumps, sandals, bare feet both clean and dirty, boots ranging from ballet-fetish to heavy combat, each new pair of shod feet is a fresh excitement for your foot-addled mind. <<if $options.fem>>Large<<else>>Male or female, large<</if>> or small you worship all in kind, massaging and kissing, debasing yourself and occasionally looking back with aroused lust at the erotically steep heels upon your own feet, your every thought filled with shoes and stockings and feet and toes...
</span>
<br><br>
<<include "hypnosisAcceptEnd">>
</div>/*#
#desc: hypnosis session 4 - foot fetishism decline, foot massaging
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'foot'>>
<<HypnosisSession4Decline $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "a Playroom?">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/foot_fetish.mp4">>
<div id="invframe" class="scrolltext">
<<shinyText "I love heels." 0.0>>
<<shinyText "Higher is better." 0.4>>
<<shinyText "Steeper is sweeter." 0.8>>
<<shinyText "Wear the heels, worship the heels." 1.2>>
<<shinyText "Kiss the toes." 1.6>>
<<shinyText "Rub the heels." 2.0>>
<<shinyText "Massage the arches!" 2.4>>
<<shinyText "At someone's feet is where I belong..." 2.8>>
<br>
<span id="mid_visible" style="visibility: hidden;">
While you can't help but admire the candy red pumps and the legs stretching up from them, you see no reason to do anything else... at first. One foot is extended towards you and it would be rude not to make some gesture of appreciation... right?<br>
<br>
Gently kissing the toes, the polished material feels warm and tastes... good? A soft kiss turns into more passionate affection and before you know it your hands are part of the party as well, massaging and stroking each heeled foot in turn until their owner seems satisfied, turning sharply away.<br>
<br>
You console yourself that you were just having a bit of fun, that it didn't really MEAN anything... and then another set of legs step in front of you. Steep patent over the knee boots loom before you, it really wouldn't be fair not to show them the same appreciation as the last set...<br>
<br>
Almost without thought, you repeat your massaging affection, then again for a third "client" and a fourth. Sandals, pumps, boots from ballet steep to combat heavy boots <<if !$options.fem>>male and female <</if>>and unknown your existence becomes a constant stream of shod feet, each in need of your "special" appreciation.<br>
<br>
</span>
<<if $options.impatient>>
<<printThought "I refuse to play by the rules!">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "I refuse to play by the rules!">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I am not a foot-washing slave!" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "I am not a foot-washing slave!" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I just like wearing heels!" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "I just like wearing heels!" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Oh... look at these beautiful shoes! They need to be worshipped!" 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Oh... look at these beautiful shoes! They need to be worshipped!" 40>></span>
<</if>>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("foot") >= 10>>
It is odd to think that something this sexual could be considered "holding back," but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("foot") >= 7>>
As fun as the simulation is, you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
<<include "vrSessionEnd">>
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - foot fetishism reject, glitch out
#status: FINISHED 0.4.0.0
#ignore_spell: reinf
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession4Reject $player $scene 'foot'>>
<<set $scene.hypnoSession.theme = 'reject'>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF >I love heels.">><br>
<<glitchText "#_REINF >Higher is better.">><br>
<<glitchText "#_REINF >Steeper is sweeter.">><br>
<<glitchText "#_REINF >Wear the heels, worship the heels.">><br>
<<glitchText "#_REINF >Kiss the toes.">><br>
<<glitchText "#_REINF >Rub the heels.">><br>
<<glitchText "#_REINF >Massage the arches!">><br>
<<glitchText "#_REINF >At someone's feet is where I belong...">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $fetish.hypnosis>>
You mentally fight back against the depravity before you, the simulation starts to fragment and fade... then, as if someone just activated a set of backup generators everything flares back into crisp focus. There can be no escape, no resistance...<br>
<br>
<<if $scene.outfit == "foot">>
<<HypnosisSession5Options $player 'foot' true>>
<<else>>
<<HypnosisSession4Options $player 'foot' true>>
<</if>>
<<else>>
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality, you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("foot") >= 5>>
As your mind adjusts to the jarring break in the simulation, you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
<<include "vrSessionEnd">>
<</if>>
</div>/*#
#desc: hypnosis session 4 - bdsm fetishism intro, collar + leash, leash pulled, fall to the floor and ordered to obey
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "a Playroom?">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/spanking.mp4">>
<div id="invframe" class="scrolltext">
You take the collar from the wall to discover the leash is already attached and you examine the pair. All made of leather, the leash looks sturdy, but unremarkable, the collar thick and padded looking both formidable and perhaps comfortable? Experimentally you bring the collar to your throat, finding it perfectly sized for your neck and before you know it it is buckled around your neck, sending a shiver down your spine.<br>
<br>
Adjusting to the stern feel of the collar, you lose track of your surroundings until there is a sudden tug on your leash, the surprising force sending you flailing forward to land on your hands and knees.<br>
<br>
You look up at a shadowy figure, you cannot even tell their gender only that they are holding your leash in one hand, and that they radiate raw dominance.<br>
<br>
"@@.npc_manager;You are a slave. A slave obeys.@@" The figure commands, the voice itself is indistinct and yet each word is somehow perfectly, crystal clear.<br>
<br>
<<if setup.getTotalValue('bdsm')<5>>
<<printThought "Am I really going to accept this unquestioningly?">>
<<else>>
<<printThought "I... I must follow your every command!">>
<</if>>
<br><br>
<<HypnosisSession4Options $player 'bdsm'>>
</div>/*#
#desc: hypnosis session 4 - bdsm fetishism accept, bound on Saint Andrews Cross and flogged, then crop'd through slave positions
#status: FINISHED 0.4.0.0
#ignore_spell: nadu,wh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bdsm'>>
<<HypnosisSession4Accept $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "a Dungeon!">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/spanking.mp4">>
<div id="invframe" class="scrolltext">
<<shinyText "I exist to serve." 0.0>>
<<shinyText "Obedience is my greatest pleasure." 0.4>>
<<shinyText "Control should be surrendered." 0.8>>
<<shinyText "To be collared and claimed is my goal." 1.2>>
<<shinyText "I was meant to be owned." 1.4>>
<<shinyText "I love being a slave!" 1.6>>
<br>
<span id="mid_visible" style="visibility: hidden;">
You nod slowly before averting your gaze from your owner to stare at the floor. Who-, or whatever holds your leash seems satisfied with your obsequience, gently tugging on your leash to signal you to follow.<br>
<br>
Crawling forward the floor changes below you and when you finally look around you find yourself in some sort of sex dungeon.<br>
<br>
The walls done in leather bedecked with a dizzying array of whips and floggers a variety of intimidating instruments ranging from a bondage chair to a cage to a Saint Andrew's Cross and other, scarier things are scattered throughout the room.<br>
<br>
You glance nervously at each device you pass only to be led to a low bench. Lifting yourself on top straps are affixed over your hips and shoulders, your wrists and ankles slipping into cuffs attached to the bondage bench and in moments you are totally restrained.<br>
<br>
You start to cry out only for a gag to be pressed past your parted lips, completing your restraints as your captor plucks a flogger from the wall and moves behind you.<br>
<br>
Though you brace yourself in anticipation the first blow still lands hard and fast but you cannot escape, your only response to let out a muffled moan that barely escapes past your jaw-stretching gag.<br>
<br>
The only sounds in the dungeon are your gasps and moans intermingled with the crack and snap of the flogger, the beating continuing until your rear and thighs are surely a solid red from pain.<br>
<br>
Eyes squeezed shut it takes you several moments to recognise that the beating has stopped. Your cuffs snap open and fall aside, though the gag and collar remain in place, as another tug at your leash signals for you to wincingly dismount the bench and crawl after.<br>
<br>
You note that your captor holds what looks like a crop in the hand opposite your leash, using it to point for you to take a position in the centre of the room.<br>
<br>
No sooner have you come to a stop than the commands start. "@@.generic_female1;Kneel, present, curtsy, attention, nadu, display@@" one at a time the positions are called out. Some are obvious while others you have no idea what to do at first, but the crop provides ample encouragement, a painful tap on this limb or that indicating for you to move, giving you no choice but to react as if a mindless doll. You shift until you have satisfactorily assumed the position, holding it for a few seconds before it is on to the next, the sequence repeated randomly over and over until, despite the pain from numerous admonishments, you are able to adopt each position instantly after being commanded.<br>
<br>
</span>
<<if $options.impatient>>
<<printThought "Wh... what am I doing?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "Wh... what am I doing?">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Is that all I exist for?" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "Is that all I exist for?" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "To follow commands? To present myself for another?" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "To follow commands? To present myself for another?" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "If this is my owner's desire, surely it is what is best for me..." 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "If this is my owner's desire, surely it is what is best for me..." 40>></span>
<</if>>
<br><br>
<<include "hypnosisAcceptEnd">>
</div>/*#
#desc: hypnosis session 4 - bdsm fetishism decline, forcibly bound to Saint Andrew's Cross and flogged, then cropped through slave positions
#status: FINISHED 0.4.0.0
#ignore_spell: nadu
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bdsm'>>
<<HypnosisSession4Decline $player $scene $scene.hypnoSession.theme>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "a Dungeon?">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/spanking.mp4">>
<div id="invframe" class="scrolltext">
<<shinyText "I exist to serve." 0.0>>
<<shinyText "Obedience is my greatest pleasure." 0.4>>
<<shinyText "Control should be surrendered." 0.8>>
<<shinyText "To be collared and claimed is my goal." 1.2>>
<<shinyText "I was meant to be owned." 1.4>>
<<shinyText "I love being a slave!" 1.6>>
<br>
<span id="mid_visible" style="visibility: hidden;">
After your initial tumble, you rise back to your feet. Though you cannot make out features your controller appears... amused? Either way they turn away, tugging on your leash for you to follow. For a moment you resist, but... you are curious, and you can always unclip the collar and flee if you want.<br>
<br>
Following behind your still indistinct captor, you are led into a different room... a dungeon. Moving past the Saint Andrew's cross and the cage with a gulp, you consider fleeing as your gaze drifts over a dizzying selection of floggers and whips decorating the leather walls.<br>
<br>
In spite of your misgivings, you continue to put one foot in front of the other until you are led to a bench, guided to lay face down, it is only when you are in position on the comfortably upholstered device that a series of restraints practically snap out at you, binding you to the device at wrist, ankle, thigh and shoulders.<br>
<br>
You try to protest, straining uselessly against your bonds. Your objections cut off as a large gag is shoved into your opened mouth and buckled tightly around your head.<br>
<br>
Thrashing harder, your restraints give not a millimetre, frantic thoughts of your predicament shattered as the first blow of a flogger lands hard across your unprotected ass.<br>
<br>
You cry out, your complaint muffled severely by the gag as your captor continues, raining down blow after blow that echo through the dungeon as your rear and thighs turn red with pain.<br>
<br>
When you are finally released from the bench, you slide meekly off. Still gagged, you are led to the middle of the room where your captor uses a crop to teach you a series of "slave" positions.<br>
<br>
"@@.generic_female1;Kneel, present, curtsy, attention, nadu, display.@@" Each position is called out and then sharp taps of the crop are used to indicate which part of your body is out of position, once "mastered" you hold a position for a few seconds and then move on to the next. The sequence repeats over and over in random order, until the positions burn themselves into your memory and you shift swiftly and perfectly, as if on instinct, even as your body aches from repeated admonishing blows.
<br>
</span>
<<if $options.impatient>>
<<printThought "I don't want to play by the rules!">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "I don't want to play by the rules!">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I am not an object to be ordered about!" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "I am not an object to be ordered about!" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I don't want to be forced to do these things!" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "I don't want to be forced to do these things!" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "If this is my owners desire, surely it is what is best for me..." 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "If this is my owners desire, surely it is what is best for me..." 40>></span>
<</if>>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("bdsm") >= 10>>
It is odd to think that something this sexual could be considered "holding back," but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("bdsm") >= 7>>
As fun as the simulation is, you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
<<include "vrSessionEnd">>
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - bdsm fetishism reject, glitch out
#status: FINISHED 0.4.0.0
#ignore_spell: reinf
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession4Reject $player $scene 'bdsm'>>
<<set $scene.hypnoSession.theme = 'reject'>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF >I exist to serve.">><br>
<<glitchText "#_REINF >Obedience is my greatest pleasure.">><br>
<<glitchText "#_REINF >Control should be surrendered.">><br>
<<glitchText "#_REINF >To be collared and claimed is my goal.">><br>
<<glitchText "#_REINF >I was meant to be owned.">><br>
<<glitchText "#_REINF >I love being a slave!">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $fetish.hypnosis>>
You mentally fight back against the depravity before you, the simulation starts to fragment and fade... then, as if someone just activated a set of backup generators everything flares back into crisp focus. There can be no escape, no resistance...<br>
<br>
<<if $scene.outfit == "bdsm">>
<<HypnosisSession5Options $player 'bdsm' true>>
<<else>>
<<HypnosisSession4Options $player 'bdsm' true>>
<</if>>
<<else>>
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality, you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("bdsm") >= 5>>
As your mind adjusts to the jarring break in the simulation, you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
<<include "vrSessionEnd">>
<</if>>
</div>/*#
#desc: hypnosis session 4 aftermath, wake up
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcHypnoAccept">>
<<if ($npc_psychiatrist.flags.cruel && $player.sec_style.body.name || State.hasPlayed("event_identify_fem_strict_1")) && !$player.sec_style.body.identify_fem>>
<<initRoom>>
<<moveTo "event_identify_fem_strict_1">>
<<elseif $fetish.bestiality_hard && ($scene.hypnoAcceptCount > 1 && setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("bimbofication") > 1) && !State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_intro_1")>>
<<initRoom>>
<<moveTo "event_psychiatrist_hypnosis_4_bestiality_intro_1">>
<<else>>
<<include "removeHypno5Outfit">>
<<include "addHypnosisTask">>
<<set $scene.removeSuit = setup.checkItemWorn('plugsuit_adv')>>
<<if $scene.removeSuit>>
<<removeItem 'plugsuit_adv' true>>
<<deleteItem 'plugsuit_adv'>>
<</if>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<useClothSetPop 'hypnosis3'>>
<<if $scene.plug != "" && !setup.getItemObj($scene.plug).tags.includes('hollow')>>
<<wearItem $scene.plug true>>
<</if>>
<<if $scene.newExploration>>
<<if !$npc_psychiatrist.flags.cruel>>
<<set $npc_psychiatrist.free_sessions += 1>>
<</if>>
<<if $player.sec_style.sex.butt_plug == "money">>
<<addCredits 50>>
<<else>>
<<addCredits 40>>
<</if>>
<</if>>
<<if $scene.hypnoSession.theme=='reject'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 1>>
<<elseif $scene.accept>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.hypnoSession.theme == 'reject'>>
You slowly open your eyes. Everything around you is dark. But then you feel like someone is touching your head and after a few seconds, you can see <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> face as she removes the IROI-1 from your head. She is wearing a rather concerned expression.<br>
<br>
"@@.npc_psychiatrist;Hey, are you still in there, <<=$player.first_name>>?@@"<br>
<br>
<<printThought "What a strange thing to ask.">><br>
<br>
"@@.npc_psychiatrist;I mean, are you okay? The system just threw a rather odd exception and then crashed without warning. The log files before the crash are corrupted, so I'm not getting any information from there. Do you remember anything that happened?@@"<br>
<br>
You have no recollection of anything that happened after you entered the simulated room. It is strange, you feel drained, and yet also more focused than lately.<br>
<br>
"@@.npc_psychiatrist;Okay, I will have to check the data afterwards to figure out what happened here. The whole system is a prototype, so errors are bound to crop up here and there. Let me help you out of the harness.@@"<br>
<br>
Released from the chair, you <<if $scene.removeSuit>>return to the changing room where you remove the plug suit and put your clothes back on. After that you return to<<else>>find yourself back in<</if>> <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> Office where she's already hard at work trying to figure out what went wrong.<br>
<br>
"@@.npc_psychiatrist;Well, that's too bad. The simulation started quite promising. Don't worry, though, this incident is hardly your fault.@@"
<<else>>
You're still half in trance as you open your eyes. Like a zombie, your body moves on its own<<if $scene.removeSuit>>, staggering into the changing room and peeling off the plug suit. You drift in and out of this state only to see your hands put on your clothes without any input from your side, like you're watching a movie. Only after you've left the changing room and re-entered <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office do you finally come fully<<else>>partially unmoored from reality. You try to focus, looking around <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office and slowly coming<</if>> to your senses.
<<if $scene.hypno_strict>>
You shudder, your skull feeling a size too small for all of the new, intrusive thoughts jammed into it... and yet, as hard as you strain, you can't remember what those thoughts actually are. You remember the part where you entered the room, but after that... your <<glitchText "mind is blank...">>
<<elseif $npc_psychiatrist.hypnosis==4>>
At least you remember parts of the VR therapy today. Wait... no. You remember the part before the hypnosis, when you entered the VR Simulation with the new headgear, and adjusting the system. And then the room. You are pretty sure there was a room, but after that... your <<glitchText "mind is blank...">>
<<else>>
As usual, you remember the part where you entered the room, but after that... your <<glitchText "mind is blank...">>
<</if>>
<<switch $scene.hypnoSession.theme>>
<<case 'penis'>>
Hmm. You feel strange, like there's something missing. Something you need inside you?<br>
<br>
"@@.npc_psychiatrist;Hmm... deep in thought? It seemed like something in the simulation sparked your interest. No, don't look at me that way. I cannot tell you what happened. That might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that. For the both of us!@@"
<<case 'piss'>>
Hmm. You feel thirsty somehow. Maybe you should go fetch a drink on your way home. But your thirst is kind of strange. You crave something... bitter?<br>
<br>
"@@.npc_psychiatrist;Hmm... an interesting choice you made in the simulation today. No, don't look at me that way. I cannot tell you what happened. That might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that.@@"
<<case 'bondage'>>
You feel stiff, as if you held your limbs in one position for a long time. What is strange is that even as you work out the stiffness you feel off, almost like you want to be held, as if being physically restricted in your movement would be somehow... better?<br>
<br>
"@@.npc_psychiatrist;How captivating... oh, sorry, never mind. I cannot tell you what happened. That might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that.@@"
<<case 'cum'>>
Hmm. You feel thirsty, and a little hungry? Like you want something creamy and filling to swish around your mouth...<br>
<br>
"@@.npc_psychiatrist;Hmm... an interesting, but unsurprising, choice you made. No, don't look at me that way. I cannot tell you what happened. That might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that.@@"
<<case 'foot'>>
Odd, you seem to be having trouble flattening your feet, they naturally want to perch on the balls of your toes in an arched state...<br>
<br>
"@@.npc_psychiatrist;Very interesting, fascinating, really... no, don't look at me that way. I cannot tell you what happened. That might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I am sure of that.@@"
<<case 'bdsm'>>
You feel strange, as if you are waiting for an order to do something, but what? And why would you need to be ordered to do it?<br>
<br>
"@@.npc_psychiatrist;Astounding, I did not realise you were already so... oh, sorry, never mind. I cannot tell you what happened. That might change the outcome of the experiment. Well, the data we collected today will be useful in the future, I'm sure of that.@@"
<<case 'bestiality_dog'>>
You find yourself thinking that maybe a pet dog would help make your apartment feel less lonely.<br>
<br>
"@@.npc_psychiatrist;A very productive session today, shades of primal therapy... sorry, I shouldn't be speaking of things, just know that your work as a pliable- I mean, productive test subject continues apace.@@"
<<case 'bestiality_horse'>>
You find yourself thinking back to that time you visited a horse stables...<br>
<br>
"@@.npc_psychiatrist;A very productive session today, shades of primal therapy... sorry, I shouldn't be speaking of things, just know that your work as a pliable- I mean, productive test subject continues apace.@@"
<<case "milking">>
The hazy memory of the VR session brings a smile to your face as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> congratulates you.<br>
<br>
"@@.npc_psychiatrist;Wonderfully done today — I was unsure how you would adapt to a scenario built for someone else... but these results, fantastic!@@"<br>
<br>
You nod in thanks as you notice something strange on <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> desk
<<if $fetish.cum && $fetish.penis_milking && $player.body_ref.cumProduction > 0 && $player.body_ref.penis>>
a tall glass of what looks like milk, and a shot-glass next to it of...<br>
<br>
<<printThought "Wait... is that cum? Is she making a boilermaker out of milk and cum? MY milk and cum?">>
<<else>>
a tall glass of what looks like milk...<br>
<br>
<<printThought "Wait, is that mine?">>
<</if>>
The line between VR simulation and reality feels like it blurs further as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> continues talking and interrupts your thoughts.
<</switch>>
<</if>>
<br><br>
<<set _counter = 0>>
<<if setup.hasThreshold('penis','hypnosis_penis','7')>>
<<set _counter++>>
<</if>>
<<if setup.hasThreshold('cum','hypnosis_cum','7')>>
<<set _counter++>>
<</if>>
<<if setup.hasThreshold('foot','hypnosis_foot','7')>>
<<set _counter++>>
<</if>>
<<if setup.hasThreshold('bondage','hypnosis_bondage','7')>>
<<set _counter++>>
<</if>>
<<if setup.hasThreshold('bdsm','hypnosis_bdsm','7')>>
<<set _counter++>>
<</if>>
<<if (!$fetish.piss || setup.hasThreshold('piss','hypnosis_piss','7'))>>
<<set _counter++>>
<</if>>
<<if $scene.newExploration>>
"@@.npc_psychiatrist;Here are your <<if $player.sec_style.sex.butt_plug == "money">>fifty credits<<else>>forty credits<</if>><<if !$npc_psychiatrist.flags.cruel>>, and I'll add another free therapeutic session to your list<</if>>. I've gone ahead and put you into the system for the next VR session as well<<if $npc_psychiatrist.flags.cruel>>.<<else>>, is that okay?<</if>>@@"
<<else>>
"@@.npc_psychiatrist;Unfortunately your efforts today provided no usable data. Science, and your own self-discovery, only advance through exploration and I am afraid I cannot credit you with anything if you are going to merely retread old ground. Consider this for your next visit. I have gone ahead and put you into the system for another VR session<<if $npc_psychiatrist.flags.cruel>>.<<else>>, is that okay?<</if>>@@"
<</if>>
<br><br>
<<if $scene.hypno_strict>>
As usual, that is not a question, but more a statement. Someone should really explain the difference between those two things to her one day. Not you, though, and not today, you think, as she continues without losing even a single second.<br>
<br>
<</if>>
"@@.npc_psychiatrist;That would be
<<if setup.getUTCDay($now) == 0>> /% sunday to wednesday %/
next Wednesday,
<<else>> /% wednesday to sunday %/
next Sunday,
<</if>>
<<if $options.militaryTime>>19:00<<else>>seven o'clock in the evening<</if>>. Show up if you want to unlock everything hiding deep within your mind.@@"<br>
<br>
<<printThought "Why does she always have to be so cryptic?">><br>
<br>
"@@.npc_psychiatrist;I'm not going to detain you any longer, so have a nice evening.@@" You take your cue and bid her farewell.<br>
<br>
<<if $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = true>>'>>]
<</if>>
</div>/*#
#desc: hypnosis session 4 - bestiality dog fetishism intro, walking dogs,
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "A Dog Park">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
You take the leash off the wall only for your surroundings to shimmer. You are standing outside and you feel a tug on the leash, looking down to find that it is connected to large, enthusiastic golden retriever. Stepping forward automatically the two of you walk about a block before coming to a dog park.<br>
<br>
You glance through the gate to immediately realise that this is a different sort of park — in addition to playing frisbee and the like, you see owners down on all fours with their pets or on their back, enthusiastic pups knotted deep or cumming all of their face.<br>
<br>
Tugging on your leash, your dog looks very excited to head inside...<br>
<br>
<<if setup.getTotalValue('bestiality') < 3>>
<<printThought "Is this the sort of thing I want to do?">>
<<else>>
<<printThought "Mmm... that looks like fun...">>
<</if>>
<br><br>
<<if setup.getTotalValue('bestiality') > 10>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_accept" "I love animals, time to have fun!" 1200 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_dog_accept')>>">>]<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_decline" "Hmm, sometimes it's fun just to watch." 1200 '<<set $scene.spendFatigue = true>><<applyFatigue 30>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_dog_decline")>>'>>]<br>
[@@.link_locked;You cannot possibly resist your furry friends.@@]
<<elseif setup.getTotalValue('bestiality') > 5>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_accept" "Find a nice patch of grass and get down to have some fun." 1200 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_dog_accept')>>">>]<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_decline" "Enjoy a fun stroll through this wonderful dog park." 1200 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_dog_decline')>>">>]<br>
<<if (200*$player.timebased.fatigue/$player.timebased.fatiguemax) <= 70 >>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_reject" "Exert yourself and fight back against the simulation." 1200 '<<set $scene.spendFatigue = true>><<applyFatigue 30>>'>>] <<hint $options "You need your fatigue 70% or lower.">><br>
<<else>>
[@@.link_locked;You lack the energy to resist the simulation.@@]
<</if>>
<<elseif setup.getTotalValue('bestiality') > 3>>
<<if (200*$player.timebased.fatigue/$player.timebased.fatiguemax) <= 70>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_accept" "Maybe it would be fun to roll around with your doggy friend..." 1200 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_dog_accept')>>">>]<br>
<<else>>
[@@.link_locked;You are too tired to fully embrace this opportunity.@@]
<</if>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_decline" "Just enjoy a stroll through the dog park." 1200 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_dog_decline')>>">>]<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_reject" "Fight back against the simulation." 1200>>]
<<else>>
<<if setup.getWillpower() >0>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_accept" "Perhaps it would be fun to roll around with your doggy friend?" 1200 "<<set $scene.spendWillpower = true>><<spendWillpower 1>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_dog_accept')>>">>] <<hint $options "Trying to push beyond your limits will tax your willpower.">><br>
<<else>>
[@@.link_locked;You lack the mental energy to push yourself to do something like this.@@]
<</if>>
<<if (200*$player.timebased.fatigue/$player.timebased.fatiguemax)<=70>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_decline" "Take a tentative stroll through the dog park." 1200 '<<set $scene.spendFatigue = true>><<applyFatigue 30>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_dog_decline")>>'>>] <<hint $options "You need your fatigue 70% or lower.">><br>
<<else>>
[@@.link_locked;You are too tired to properly process this simulation.@@]
<</if>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_reject" "Fight back against the simulation." 1200>>]
<</if>>
</div>/*#
#desc: hypnosis session 4 - bestiality dog fetishism accept, fucked in the dog park
#status: FINISHED 0.7.8.0
#ignore_spell: wh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bestiality'>>
<<if $scene.spentWillpower && !$npc_psychiatrist.flags["willpower_bestiality"]>>
<<set $player.willpower.bonus += 1>>
<<set $npc_psychiatrist.flags["willpower_bestiality"] = true>>
<<addPopUpText "will" "Your maximum willpower increases.">>
<<set $scene.changedMaxWillpower=true>>
<<elseif $scene.spendFatigue>>
<<gainWillpower 1>>
<<set $scene.gainedWillpower=true>>
<</if>>
<<set $scene.accept = true>>
<<applyExperience 'bestiality' 5 'normal' $ALONE>>
<<set $npc_psychiatrist.flags.bestiality.dog = true>>
<</if>>
<<set $player.location to "A Dog Park">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
<<shinyText "Animal friends are best friends." 0.0>>
<<shinyText "I need to be knotted." 1.0>>
<<shinyText "Fill me with canine cum." 2.0>>
<<shinyText "I was born to be a bitch." 3.0>>
<br>
Letting your friend off the leash, he runs ahead to a clear patch of grass, running in circles and leaping in excitement at your approach.<br>
<br>
You place the leash aside and get down on the ground, wrestling with your friend as he nips at your clothes. Before long you have lost most of what you were wearing, lying back as he moves from licking between your legs to sliding into you, his dog-cock swelling thicker as it slides into your ass, his hips thrusting short and fast until he knots and locks in place.<br>
<br>
Reaching up, you scratch behind his ears as he yips happily, continuing to thrust away as the two of you enjoy this wonderful park...<br>
<br>
<<if $options.impatient>>
<<printThought "Wh... what am I doing?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "Wh... what am I doing?">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Is that what love feels like?" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "Is that what love feels like?" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "To be fucked like a bitch?" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "To be fucked like a bitch?" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I love it when the knot swells inside me..." 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "I love it when the knot swells inside me..." 40>></span>
<</if>>
<br><br>
<<include "hypnosisAcceptEnd">>
</div>/*#
#desc: hypnosis session 4 - bestiality fetishism decline, dog cums on your leg
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bestiality'>>
<<if $scene.spentWillpower && !$npc_psychiatrist.flags["willpower_bestiality"]>>
<<set $player.willpower.bonus += 1>>
<<set $npc_psychiatrist.flags["willpower_bestiality"] = true>>
<<addPopUpText "will" "Your maximum willpower increases.">>
<<set $scene.changedMaxWillpower=true>>
<<elseif $scene.spendFatigue>>
<<gainWillpower 1>>
<<set $scene.gainedWillpower=true>>
<</if>>
<<applyExperience 'bestiality' 3 'normal' $ALONE>>
<</if>>
<<set $player.location to "A Dog Park">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
<<shinyText "Animal friends are best friends." 0.0>>
<<shinyText "I need to be knotted." 1.0>>
<<shinyText "Fill me with canine cum." 2.0>>
<<shinyText "I was born to be a bitch." 3.0>>
<br>
<<if $options.impatient>>
<<printThought "I don't want to be knotted!">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "I don't want to be knotted!">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Dogs are friends, not lovers!" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "Dogs are friends, not lovers!" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I don't like canine cum!" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "I don't like canine cum!" 26>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Maybe I'd enjoy being a bred bitch..." 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Maybe I'd enjoy being a bred bitch..." 40>></span>
<</if>>
<br>
You walk through the dog park witnessing ever-increasing extremes of depravity. A man lying next to his dog giving it a "very special" petting, a woman leaned back with her legs spread as her pet licks between her legs to her obvious smiling delight. At the end of his leash, you can tell your pet is getting excited by all the goings on — the woman on her back being mounted by a large greyhound, another person on all fours taking it from both ends by a collie and a great dane... scene after scene passes on either side, you stick to the path and somehow make it out the other side of the dog park without anything happening. Standing and looking out at the nice normal street, you let out a sigh only to feel something against your leg.<br>
<br>
Looking down, you watch your canine friend hump even faster and then you feel a splurt against your calf, his spooge running down your leg as he looks up at you, tongue lolled to one side in a happy smile. It seems that you have not quite made it through the park unscathed after all...<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("bestiality") > 5>>
It is odd to think that something this sexual could be considered "holding back," but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("bestiality") > 3>>
As fun as the simulation is, you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
<<include "vrSessionEnd">>
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - bestiality fetishism reject, glitch out
#status: FINISHED 0.4.0.0
#ignore_spell: reinf
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession4Reject $player $scene 'bestiality'>>
<<set $scene.hypnoSession.theme = 'reject'>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF >Animal friends are best friends.">><br>
<<glitchText "#_REINF >I need to be knotted.">><br>
<<glitchText "#_REINF >Fill me with canine cum.">><br>
<<glitchText "#_REINF >I was born to be a bitch.">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $fetish.hypnosis>>
You mentally fight back against the depravity before you, the simulation starts to fragment and fade... then, as if someone just activated a set of backup generators everything flares back into crisp focus. There can be no escape, no resistance...<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_accept" "I love animals, time to have fun!" 1200 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_dog_accept')>>">>]<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog_decline" "Hmm, sometimes it's fun just to watch." 1200 '<<set $scene.spendFatigue = true>><<applyFatigue 30>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_dog_decline")>>'>>]<br>
[@@.link_locked;You cannot possibly resist your furry friends.@@]
<<else>>
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality, you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("bestiality") >= 3>>
As your mind adjusts to the jarring break in the simulation, you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
<<include "vrSessionEnd">>
<</if>>
</div>/*#
#desc: hypnosis session 4 - bestiality horse fetishism intro, investigate stables
#status: FINISHED 0.7.11.0
#ignore_spell: 'o
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Horse Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "TODO">>
<div id="invframe" class="scrolltext">
As you look towards the stables the room falls away and you find yourself walking towards them. Passing through the tall entranceway you begin walking past the stalls... each one occupied by a virile, muscular picture of equine perfection, their heads tracking you as beneath their flanks large pumps suck away, glorious, hard horse-cocks "milked" of their thick, high-grade cargo.<br>
<br>
Walking further you come to the most magnificent horse of them all, a massive beast the equal of Man 'O War or Secretariate. He stares at you with a startling intelligence and a primal power, his magnificent cock hard and glistening, the oversized sheath meant to harvest a treasure worth more than liquid gold not yet hooked up. You come to a stop at his side, reaching out to touch his flank. His hair is perfectly brushed, his muscles hard and warm beneath your fingers.<br>
<br>
You eye his cock as it twitches slightly, is this why you are here? To hook him up... or for something more?<br>
<br>
<<if setup.getTotalValue('bestiality') < 8>>
<<printThought "Is this the sort of thing I want to do?">>
<<else>>
<<printThought "Mmm... that looks like fun...">>
<</if>>
<br><br>
<<if setup.getTotalValue('bestiality') > 10>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_accept" "Get under him and enjoy his cock yourself." 1200 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_horse_accept')>>">>]<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_decline" 'Hook him up to the "milking" device and be on your way.' 1200 '<<set $scene.spendFatigue = true>><<applyFatigue 30>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_horse_decline")>>'>>]<br>
[@@.link_locked;You cannot possibly resist helping a horny horse.@@]
<<elseif setup.getTotalValue('bestiality') > 5>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_accept" "Get under him and enjoy his cock yourself." 1200 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_horse_accept')>>">>]<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_decline" 'Hook him up to the "milking" device and be on your way.' 1200 '<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_horse_decline")>>'>>]<br>
<<if (200*$player.timebased.fatigue/$player.timebased.fatiguemax) <= 70 >>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_reject" "Fight back against the simulation." 1200 '<<set $scene.spendFatigue = true>><<applyFatigue 30>>'>>] <<hint $options "You need your fatigue 70% or lower.">><br>
<<else>>
[@@.link_locked;You lack the energy to resist the simulation.@@]
<</if>>
<<elseif setup.getTotalValue('bestiality') > 8>>
<<if (200*$player.timebased.fatigue/$player.timebased.fatiguemax) <= 70>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_accept" "Get under him and enjoy his cock yourself..." 1200 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_horse_accept')>>">>]<br>
<<else>>
[@@.link_locked;You are too tired to fully embrace this opportunity.@@]
<</if>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_decline" 'Just hook up the "milking" device and be on your way.' 1200 '<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_horse_decline")>>'>>]<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_reject" "Fight back against the simulation." 1200>>]
<<else>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_accept" "Do you dare sample this specimen of perfection?" 1200 "<<set $scene.spendWillpower = true>><<spendWillpower 1>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_4_bestiality_horse_accept')>>">>] <<hint $options "Trying to push beyond your limits will tax your willpower.">><br>
<<else>>
[@@.link_locked;You lack the mental energy to push yourself to do something like this.@@]
<</if>>
<<if (200*$player.timebased.fatigue/$player.timebased.fatiguemax)<=70>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_decline" "Maybe you should just hook up the pump and be on your way..." 1200 '<<set $scene.spendFatigue = true>><<applyFatigue 30>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_horse_decline")>>'>>] <<hint $options "You need your fatigue 70% or lower.">><br>
<<else>>
[@@.link_locked;You are too tired to properly process this simulation.@@]
<</if>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_reject" "Reject this depraved simulation." 1200>>]
<</if>>
</div>/*#
#desc: hypnosis session 4 - bestiality horse fetishism accept, fuck horse
#status: FINISHED 0.7.11.0
#ignore_spell: preputial,wh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bestiality'>>
<<if $scene.spentWillpower && !$npc_psychiatrist.flags["willpower_bestiality"]>>
<<set $player.willpower.bonus += 1>>
<<set $npc_psychiatrist.flags["willpower_bestiality"] = true>>
<<addPopUpText "will" "Your maximum willpower increases.">>
<<set $scene.changedMaxWillpower=true>>
<<elseif $scene.spendFatigue>>
<<gainWillpower 1>>
<<set $scene.gainedWillpower=true>>
<</if>>
<<set $scene.accept = true>>
<<set $npc_psychiatrist.flags.bestiality.horse = true>>
<<applyExperience 'bestiality' 10 'normal' $ALONE>>
<</if>>
<<set $player.location to "Horse Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "TODO">>
<div id="invframe" class="scrolltext">
<<shinyText "Four-legged friends are best friends." 0.0>>
<<shinyText "Pony girls are the luckiest." 1.0>>
<<shinyText "Mount me like a mare." 2.0>>
<<shinyText "I live for horse cock." 3.0>>
<br>
Kneeling down, you reach out slowly, yet inexorably, towards the stallion's massive cock. Steam wafts off the glorious member and you can feel its heat even before your fingers touch its hardness. It takes both hands to wrap around it as you feel each beat of his champion's heart. Your pulse races as you move your hand the full glorious length of his shaft, feeling the subtle change in texture as you pass over the preputial fold, the gentle bulge of the preputial ring and then the soft, velvety texture of the free part of the penis.<br>
<br>
Coming to his flared glans you cannot resist any longer, shuffling under him and bringing your mouth to his tip. You nibble gently around the fleshing glans and slip your tongue into his hole, figuratively staring down his meat cannon, the thick bore ready to pump unimaginable quantities of the finest grade horse semen known to man.<br>
<br>
You need his cock, gagging your way up his shaft as far as you can go as you reach forward to stroke his shaft, to lovingly caress the two heavy balls full of bounty. For as wonderful as he tastes, however, you know it is not enough. Sucking isn't enough; as your ass clenches in anticipation and you reposition yourself you get ready to be fucked by an equine god.<br>
<br>
<<if $options.impatient>>
<<printThought "Wh... what am I doing?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "Wh... what am I doing?">></span>
<</if>>
<br><br>
Despite the difference in size he enters you almost gently, allowing you to set the pace as you push backwards, taking deep breaths as you try to relax, glad for his copious pre easing the way. He twitches inside of you, pressing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> and almost making you lose your balance.<br>
<br>
<<if $options.impatient>>
<<printThought "Is that what love feels like?" 5>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "Is that what love feels like?">></span>
<</if>>
<br><br>
You can't stop now, pushing backwards to force him deeper. Sensing your enthusiasm he steps forward, his power inexorable as he all but sweeps you off your feet.<br>
<br>
<<if $options.impatient>>
<<printThought "To be bred like a mare?" 10>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "To be bred like a mare?">></span>
<</if>>
<br><br>
Your eyes roll back as you reach forward to cling to his forelegs, your toes barely brushing the ground as he commences to fuck...<br>
<br>
<<if $options.impatient>>
<<printThought "Sheathing a stallion is my greatest goal..." 15>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "Sheathing a stallion is my greatest goal...">></span>
<</if>>
<br><br>
He is everything you wanted and more, your body worshipping his perfection, his massiveness filling you, fucking you, pounding every thought save for "more" out of your mind.<br>
<br>
<<include "hypnosisAcceptEnd">>
</div>/*#
#desc: hypnosis session 4 - bestiality horse fetishism decline, equip milker
#status: FINISHED 0.7.11.0
#ignore_spell: xl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bestiality'>>
<<if $scene.spentWillpower && !$npc_psychiatrist.flags["willpower_bestiality"]>>
<<set $player.willpower.bonus += 1>>
<<set $npc_psychiatrist.flags["willpower_bestiality"] = true>>
<<addPopUpText "will" "Your maximum willpower increases.">>
<<set $scene.changedMaxWillpower=true>>
<<elseif $scene.spendFatigue>>
<<gainWillpower 1>>
<<set $scene.gainedWillpower=true>>
<</if>>
<<applyExperience 'bestiality' 3 'normal' $ALONE>>
<</if>>
<<set $player.location to "Horse Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "TODO">>
<div id="invframe" class="scrolltext">
<<shinyText "Animal friends are best friends." 0.0>>
<<shinyText "Pony girls are the luckiest." 1.0>>
<<shinyText "Mount me like a mare." 2.0>>
<<shinyText "I live for horse cock." 3.0>>
<br>
<<if $options.impatient>>
<<printThought "I don't want to be a mare!">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "I don't want to be a mare!">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Horse are mounts, not mounters!" 13>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "Horse are mounts, not mounters!" 13>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "I don't like horse cum!" 26>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "I don't like horse cum!" 26>></span>
<</if>>
<br>
You can see the steam rising from his hot, thick cock but you resist the urge to touch it, fearful that the slightest brush against its magnificence could set things in motion...<br>
<br>
Shaking your head you focus your attention on the sheath. Labeled "Super XL" it is well over half a metre long and thicker than your arm... and yet you are still uncertain whether it will contain his glory. The sheath is heavy in your arms as you carefully slide it over his shaft. For his part the stallion is almost indifferent, standing patiently and chewing some hay as you move the apparatus into position, reaching his balls and strapping things in place with barely a centimetre to spare at the tip.<br>
<br>
Pressing the START button on the machine he almost instantly spurts, a glob the size of your fist splattering the inside of the container, momentarily obscuring the sight of his unfurled frilled tip before the precious cargo is sucked into the storage reservoir. The mere sound and sight of his casual glory makes you weak in the knees, instantly jealous of the mechanical contraption that has the honour of serving him.<br>
<br>
A glance at his still heavy balls tells you this is but the prelude but you stagger away and then almost break into a run, scared of what might happen if you spend any more time in these stables.<br>
<br>
<<if $options.impatient>>
<<printThought "What would it feel like to have that frilled cock balls deep..." 40>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "What would it feel like to have that frilled cock balls deep..." 40>></span>
<</if>>
<br>
<br>
<span id="exit_visible" style="visibility: hidden;">
<<if $scene.spendFatigue>>
You let out a mental sigh. It took no small quantity of energy to navigate your way to this point, your overall mental reserves getting a bit of a boost at what you consider a job well done.<br>
<br>
<</if>>
<<if $scene.valueChanged>>
<<if setup.getTotalValue("bestiality") > 8>>
It is odd to think that something this sexual could be considered "holding back" but it really does feel like you had to focus and assert your will not to more deeply embrace the scene as it unfolded. On the other hand, while fun, you definitely didn't learn anything from the experience.
<<elseif setup.getTotalValue("bestiality") > 5>>
As fun as the simulation is, you don't feel like you've learned anything from it. You feel you should embrace the script more completely if you are going to continue your growth.
<<else>>
You sense yourself teetering at the edge of a cliff, only barely refraining from diving off into a sea of depravity.
<</if>>
<br><br>
<</if>>
<<include "vrSessionEnd">>
</span>
<<makeVisible 'mid_visible' 7>>
<<makeVisible 'exit_visible' 15>>
</div>/*#
#desc: hypnosis session 4 - bestiality horse fetishism reject, glitch out
#status: FINISHED 0.7.11.0
#ignore_spell: reinf
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession4Reject $player $scene 'bestiality'>>
<<set $scene.hypnoSession.theme = 'reject'>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
<<glitchText "#_REINF >Animal friends are best friends.">><br>
<<glitchText "#_REINF >Pony girls are the luckiest.">><br>
<<glitchText "#_REINF >Mount me like a mare.">><br>
<<glitchText "#_REINF >I live for horse cock.">><br>
<br>
You can feel these... these commands for lack of better description probing around in your mind, trying to find an opening where they could implant their information. But not today! You steel your thoughts and refuse to let them in.
<<if $fetish.hypnosis>>
You mentally fight back against the depravity before you, the simulation starts to fragment and fade... then, as if someone just activated a set of backup generators everything flares back into crisp focus. There can be no escape, no resistance...<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_accept" "Get under him and enjoy his cock yourself." 1200>>]<br>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse_decline" 'Hook him up to the "milking" device and be on your way.' 1200 '<<set $scene.spendFatigue = true>><<applyFatigue 30>>'>>]<br>
[@@.link_locked;You cannot possibly resist your furry friends.@@]
<<else>>
<<if $scene.changedMaxWillpower>>
Living through this ordeal, you think you have more reserves regarding your willpower from now on!<br>
<<else>>
Since you already refused this reality you cannot feel your willpower strengthening this time.<br>
<</if>>
<br>
<<printThoughtWill $player "I refuse to accept this as reality!">><br>
<br>
The scene seems to crumble before your very eyes.<br>
<br>
<<if $scene.changedMaxWillpower>>
You feel emboldened by your triumph. Though there is much in your current life out of your control here, in the realm of the mind, you yet retain sovereignty. You take great mental comfort, and strength, from the fact that you have "held the line," as it were, against this latest perverted onslaught.
<<elseif $scene.gainedWillpower>>
As you fight against the simulation you can't help but be puzzled with yourself. Why did you choose this action again if you were not going to embrace the situation? You confusion completely neutralises any sense of self-assurance you might have gained from your resistance.<br>
<br>
Still, though you have fought this battle before the fact that you are still holding strong gives you some minor satisfaction to buoy your psychological state.
<<elseif setup.getTotalValue("bestiality") > 8>>
As your mind adjusts to the jarring break in the simulation you wonder why you would fight so hard against something you know you would enjoy...
<<else>>
Just as you expend little energy in shattering the artificial reality of the simulation, so too do you draw little comfort from such. What triumph is it, really to resist something to easily, would, perhaps, the more interesting path be to... indulge, just to see what it's like?
<</if>>
<br><br>
<<include "vrSessionEnd">>
<</if>>
</div><<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<set _end = setup.setNextDate($now, 0, $now.getUTCHours(), 55)>>
<<set _timeTo = setup.secondsToDate($now,_end)>>
<<if $scene.accept>>
Your eager acceptance of the new possibilities before you has you lusting for more...<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 1800) || setup.getWillpower() < $scene.hypnoSession.hypnoRepeat+1 && $scene.hypnoSession.hypnoRepeat > 2>>
<<switch $scene.hypnoSession.hypnoRepeat>>
<<case 1>>
Embracing two fetish simulations in a row already has your brain buzzing
<<case 2>>
Embracing three fetish simulations in a row has your brain near overload.
<<default>>
You have lost count of how many fetish simulations you've embraced today, your thoughts filled with nothing but lusty depravity.
<</switch>>
<br><br>
<<if setup.getWillpower() >= $scene.hypnoSession.hypnoRepeat+1>>
<<set _wpPrice = $scene.hypnoSession.hypnoRepeat+1>>
[<<moveTo "event_psychiatrist_hypnosis_4_repeat" "Yes! Again! I need more!" 600 "<<spendWillpower _wpPrice>>">>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'This is enough for today.' _timeTo>>]
<<elseif $scene.hypnoSession.hypnoRepeat > 2>>
Your mind is already fraying, a part of you knowing that you do not have the resolve to survive another simulation. The voice is almost unheard compared the ravenous, perverted, portion of you that lusts for nothing more than to surrender to an eternity of simulated depravity...<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_bad_end" "More..." 600>>]<br>
<<else>>
<<if $scene.hypnoSession.hypnoRepeat > 1>>
The repeated simulations are starting to eat away at your sanity. Your thoughts are slow, your mind fuzzy... you should probably stop.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_bad_end" "More..." 600>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'This is enough for today.' _timeTo>>]
<</if>>
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' _timeTo>>]
<</if>>
<<elseif $scene.hypnoSession.theme == 'reject'>>
Your rejection of the virtual world on offer has you feeling mentally uneven.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' _timeTo>>]
<<else>>
Your timidity at embracing the potential situations before you has you mentally unprepared to push further this day.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' _timeTo>>]
<</if>>
<<else>>
As much as you might cling to the virtual realm, you feel the simulation fade away, as if some part of reality were calling you back...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 60>>]
<</if>>/*#
#desc: choose 2nd topic for fourth/repeatable hypnosis session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.hypnoRepeat += 1>>
<<include "removeHypno5Outfit">>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01.mp4">>
<div id="invframe" class="scrolltext">
This simulation flickers and restarts as you throw yourself once more unto that perverted breach...<br>
<br>
<<printThought "Yes... more... I want to experience it all...">><br>
<br>
<<if $npc_psychiatrist.hypnosis == 5 && $scene.hypnoAcceptCount >= 2>>
[<<moveTo 'event_psychiatrist_hypnosis_5_wardrobe' 'Head for the wardrobe.' 120>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_choose' 'Look around the room.' 120>>]
<<else>>
<<include "hypno4Choices">>
<</if>>
</div><<if $scene.horseAvailable>>
Glancing out the window things come into focus and you see a nearby stables.<br>
<br>
<</if>>
<<if setup.getTotalValue('penis')>0 || $scene.hypno_strict>>
[<<moveTo "event_psychiatrist_hypnosis_4_penis" "Touch the joystick.">>] <<if setup.hasThreshold("penis", "hypnosis_penis", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<<if ($fetish.cum && setup.getTotalValue('cum')>0) || $scene.hypno_strict>>
[<<moveTo "event_psychiatrist_hypnosis_4_cum" "Drink from the bottle.">>] <<if setup.hasThreshold("cum", "hypnosis_cum", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<<if setup.getTotalValue('foot')>0 || $scene.hypno_strict>>
[<<moveTo "event_psychiatrist_hypnosis_4_foot" "Examine the heels.">>] <<if setup.hasThreshold("foot", "hypnosis_foot", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<<if setup.getTotalValue('bondage')>0 || $scene.hypno_strict>>
[<<moveTo "event_psychiatrist_hypnosis_4_bondage" "Take the rope from the wall.">>] <<if setup.hasThreshold("bondage", "hypnosis_bondage", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<<if setup.getTotalValue('bdsm')>0 || $scene.hypno_strict>>
[<<moveTo "event_psychiatrist_hypnosis_4_bdsm" "Pick up the collar.">>] <<if setup.hasThreshold("bdsm", "hypnosis_bdsm", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<<if $scene.dogAvailable>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog" "Take hold of the leash.">>] <<if $npc_psychiatrist.flags.bestiality.dog>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<<if $scene.horseAvailable>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse" "Check out the stables.">>] <<if $npc_psychiatrist.flags.bestiality.horse>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<<if $fetish.piss && (setup.getTotalValue('piss')>0 || $scene.hypno_strict)>>
[<<moveTo "event_psychiatrist_hypnosis_4_piss" "Enter the restroom.">>] <<if setup.hasThreshold("piss", "hypnosis_piss", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>/*#
#desc: unlock bestiality
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "hypnosisChair" "dildo" "genitals_covered">>
<div id="invframe" class="scrolltext">
As you blink your way back to reality and the details of your so-called "therapy" fades you find yourself looking up at <<=setup.getNpcName("npc_psychiatrist","formal")>>. "@@.npc_psychiatrist;Well, well, and just how is my little slut doing? Enjoying <<switch $npc_psychiatrist.flags.knowgender>>
<<case 'male' ''>>
his
<<case 'female'>>
her
<<case 'agender' 'fluid'>>
its
<<default>>
ERROR: unexpected npc_psychiatrist.flags.know gender <<=$npc_psychiatrist.flags.knowgender>>
<</switch>>
time marinating in my specially crafted reality?@@"<br>
<br>
You're still groggy, not quite sure what is real and what is not as you blink up at <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
<br>
"@@.npc_psychiatrist;You aren't the only one making progress, I've enabled some additional... options for you to explore on your next journey into the lovely digital world. Mmmm, yes, we are going to unlock SO much together...@@" She chuckles, gently stroking your face before reaching for your bonds. "@@.npc_psychiatrist;Next time.@@" She whispers with a smile, humming as she beings unstrapping you from your seat.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_bestiality_intro_2' 'Follow her...' 120>>]
</div>/*#
#desc: leave after bestiality unlock
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeHypno5Outfit">>
<<include "addHypnosisTask">>
<<set $scene.removeSuit = setup.checkItemWorn('plugsuit_adv')>>
<<if $scene.removeSuit>>
<<removeItem 'plugsuit_adv' true>>
<<deleteItem 'plugsuit_adv'>>
<</if>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<useClothSetPop 'hypnosis3'>>
<<if $scene.plug != "" && !setup.getItemObj($scene.plug).tags.includes('hollow')>>
<<wearItem $scene.plug true>>
<</if>>
<<if $scene.newExploration>>
<<if !$npc_psychiatrist.flags.cruel>>
<<set $npc_psychiatrist.free_sessions += 1>>
<</if>>
<<if $player.sec_style.sex.butt_plug == "money">>
<<addCredits 50>>
<<else>>
<<addCredits 40>>
<</if>>
<</if>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
By the time <<=setup.getNpcName("npc_psychiatrist","formal")>> has finished unstrapping you and lead you back to the changing room your memories of just what happened in todays "experimental therapy session" is already fading. All that is left is a pleasant feeling of contentment... and arousal... and a vague thought that there are even more opportunities waiting for you at your next visit.<br>
<br>
"@@.npc_psychiatrist;See you <<if setup.getUTCDay($now) == 0>>
Wednesday,
<<else>>
Sunday,
<</if>>@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> states cheerily as she
<<if $scene.newExploration>>
hands you some credits and
<</if>>
sends you on your way.<br>
<br>
[<<moveTo 'room_citymap' 'Leave.' 180>>]
</div>/*#
#desc: psychiatrist tells you about new hypnosis options
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<removeEverything>>
<<wearItem "plugsuit_adv" true>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<<addItem 'ring_gag'>>
<<wearItem "ring_gag" true>>
<<set $scene.skipBonus = false>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "hypnosisChair" "dildo" "ringgag" "vr_goggles" "genitals_uncovered">>
<div id="invframe" class="scrolltext">
You enter the dimly lit VR chamber.
<<if $npc_psychiatrist.flags.rememberHypno>>
You can't help but smile at the re-purposed VR Chair; you have had so many wonderful experience tightly bound to the piece of Style Fetish Industries furniture, and today you are looking forward to having another one. Or maybe more than one? The thought of embracing more than one subject in a single day makes your heart race with excitement.<br>
<br>
You rush to hop onto the chair, sliding your arms through the metallic sleeves and your fingers on the resting pans, eager to be started.<br>
<br>
"@@.npc_psychiatrist;Lovely, lovely, so eager to make your contributions to the field of science, well let me just grant ALL of your wishes.@@" She states, locking you into position.
<<else>>
Each time you enter the room seems to induce ever-stronger feelings of deja vu, and yet the full memories of your prior sessions remain frustratingly out of reach. Without even thinking about it you slide onto the re-purposed VR Chair from Style Fetish Industries. <<glitchText "Assuming Position now.">> With practiced swiftness you slide your arms through the metallic sleeves and your fingers on the resting pans.<br>
<br>
"@@.npc_psychiatrist;Lovely, lovely, so eager to make your contributions to the field of science, well let me just grant ALL of your wishes.@@" She states, locking you into position.
<</if>>
<br><br>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_8')>>
<<if _themeId != -1 && $npc_psychiatrist.themes.npc_barista[_themeId].done != 0 && ($npc_barista.stage < 2 || $npc_barista.stage == 2 && !$npc_psychiatrist.flags.vr_themes.future)>>
"@@.npc_psychiatrist;So...@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> casually states after having finished strapping you down. "@@.npc_psychiatrist;I have a new routine that involves replaying a session from the perspective of another patient. It is a bit more experimental and advanced but has potential for some significant advances in... understanding. If you are up for it?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_barista_1' 'Express your interest.' 60>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_intro_2' 'Stick to a "normal" session.' 60>>]
<<elseif $npc_barista.stage >= 2 && $npc_barista.stage < 10>>
<<if !$npc_psychiatrist.flags.vr_themes.future>>
"@@.npc_psychiatrist;Obviously there are restrictions of doctor/patient confidentiality... but there is a scenario I created for another patient that I am attempting to... generalise. If you would be interested in testing it?@@"<br>
<br>
<<printThought "Hmm... I think she's hinting this has something to do with <<=setup.getNpcName('npc_barista','nickname')>>">><br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_barista_1' 'Express your interest.' 60>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_barista_checkup_1' 'Continue.' 60>>]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_5_intro_2' 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: psychiatrist tells you about new hypnosis options
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcHypnoAnimals">>
<<if !$fetish.bestiality_hard && $fetish.pet_play>>
<<set $scene.dogAvailable = true>>
<<set $scene.horseAvailable = true>>
<</if>>
<<set $scene.outfit = "">>
<<set _bonusScene = random(1,10)>>
<<set $scene.milkingBonus = !$scene.skipBonus && $npc_psychiatrist.hypnosis >= 5 && -1 != setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_7') && (!$npc_psychiatrist.flags.bonus_vr.milking || _bonusScene == 1)>>
<<set $scene.aiThreesomeBonus = !$scene.skipBonus && $npc_psychiatrist.hypnosis >= 5 && $npc_barista.stage >= 10 && State.hasPlayed("event_vr_sleep_final_1") && (!$npc_psychiatrist.flags.bonus_vr.ai3 || _bonusScene == 1)>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.milkingBonus>>
As you sink into the virtual world you hear <<=setup.getNpcName('npc_psychiatrist', 'formal')>> pop in with a final bit of narration.<br>
<br>
"@@.npc_psychiatrist;I have a special treat today — a bonus scene that I've been working on. It's designed for someone else but... I think you would quite enjoy, and perhaps benefit, from it. And seeing how it affects different users will give me some wonderful data...@@"<br>
<br>
[<<moveTo 'event_vr_milking_1' 'Opt for the bonus scene.' 60>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_intro_2' 'Do a normal session.' 60 "<<set $scene.skipBonus=true>>">>]
<<elseif $scene.aiThreesomeBonus>>
As you sink into the virtual world you hear <<=setup.getNpcName('npc_psychiatrist', 'formal')>> pop in with a final bit of narration.<br>
<br>
"@@.npc_psychiatrist;I have a special treat today — something I've been working on for our mutual friend <<=setup.getNpcName('npc_ai', 'other')>>...@@"<br>
<br>
[<<moveTo 'event_ai_psych_barista_vr_1' 'Opt for the bonus scene.' 60>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_intro_2' 'Do a normal session.' 60 "<<set $scene.skipBonus=true>>">>]
<<elseif $npc_psychiatrist.flags.rememberHypno>>
You spread your lips obediently wide for the familiar, mouth-filling gag and <<=setup.getNpcName("npc_psychiatrist","formal")>> follows up by snapping the VR goggles in place. Reality swirls and you find yourself deposited directly into a room.<br>
<br>
<<printThought "I love this virtual world...">><br>
<br>
You look around the room, there are several interesting items, as well as the large, fun-filled wardrobe in the corner.
<<else>>
VR goggles in place, your mouth spread around a strangely familiar gag reality swirls and you find yourself deposited directly into a room.<br>
<br>
<<printThought "Didn't there used to be a desert or something? Is this a sign that I'm becoming more in-tune with the simulation?">><br>
<br>
You look around the room, there are several interesting items, but you are most drawn to what you feel in your gut is a "new" addition, a large wardrobe in one corner.
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_5_wardrobe' 'Check out the wardrobe.' 120>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_choose' 'Look around the room.' 120>>]
</div>/*#
#desc: choose topic for fourth/repeatable hypnosis session w/wardrobe
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcHypnoAnimals">>
<<if !$fetish.bestiality_hard && $fetish.pet_play>>
<<set $scene.dogAvailable = true>>
<<set $scene.horseAvailable = true>>
<</if>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01.mp4">>
<div id="invframe" class="scrolltext">
You look around the room, in addition to the wardrobe in the corner there is a door that leads to what you think might be the restroom. There are several random items lying about the room. There's a rather old school looking joystick connected to a retro TV set. A pair of high heels sits next to another door leading out of the room. A bottle containing a whitish fluid stands labeled "Drink me" is on the coffee table next to you. You can see a black rope hanging on a hook at the wall.<<if $scene.dogAvailable>> Next to the rope is what looks like a dog collar and a leash.<</if>><br>
<br>
<<if $scene.horseAvailable>>
Glancing out the window things come into focus and you see a nearby stables.<br>
<br>
<</if>>
<<switch $scene.outfit>>
<<case "cum">>
You feel drawn to the bottle...<br>
<br>
<<printThought "I'm, like... soooo thirsty...">>
<<case "foot">>
You feel drawn towards the pair of heels...<br>
<br>
<<printThought "The right shoes would really complete my outfit...">>
<<case "bondage">>
You feel drawn towards the ropes...<br>
<br>
<<printThought "I really want to be restrained...">>
<<case "piss">>
You feel drawn towards the bathroom door...<br>
<br>
<<printThought "I am a worthless human toilet...">>
<<case "penis">>
You are desperate for cock, and the joystick is the closest thing to it you can see...<br>
<br>
<<printThought "I feel so empty...">>
<<case "bdsm">>
You feel drawn towards the collar and leash...<br>
<br>
<<printThought "I've been a bad girl, I need Mistress to put me right...">>
<<case "pup">>
You feel drawn towards the dog leash...<br>
<br>
<<printThought "Woof! I'm a good pup!">>
<<case "pony">>
You feel drawn towards the stables...<br>
<br>
<<printThought "This pony wants to trot!">>
<<default>>
You feel drawn towards the wardrobe...<br>
<br>
<<printThought "Maybe I should change first?">>
<</switch>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_5_wardrobe' 'Check out the wardrobe.' 120>>]<br>
<br>
<<if !$fetish.bestiality_hard && (!$fetish.piss || setup.hasThreshold('piss', 'hypnosis_piss', "10")) && (!$fetish.cum || setup.hasThreshold('cum', 'hypnosis_cum', "10")) && setup.hasThreshold('penis', 'hypnosis_penis', "10") && setup.hasThreshold('foot', 'hypnosis_foot', "10") && setup.hasThreshold('bondage', 'hypnosis_bondage', "10") && setup.hasThreshold('bdsm', 'hypnosis_bdsm', "10")>>
You smile at your accomplishment at all the fun you've had with the various simulated objects scattered around you... and a glowing door opens at the far end of the room.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_5_nobest_intro_1" "Approach the glowing door." 60>>]<br>
<</if>>
<<if setup.getTotalValue('penis')>0>>
<<if $scene.outfit == "penis">>
[<<moveTo "event_psychiatrist_hypnosis_5_penis" "Touch the joystick.">>] <<if setup.hasThreshold("penis", "hypnosis_penis", "10")>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_4_penis" "Touch the joystick.">>] <<if setup.hasThreshold("penis", "hypnosis_penis", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<</if>>
<<if $fetish.cum && setup.getTotalValue('cum')>0>>
<<if $scene.outfit == "cum">>
[<<moveTo "event_psychiatrist_hypnosis_5_cum" "Drink from the bottle.">>] <<if setup.hasThreshold("cum", "hypnosis_cum", "10")>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_4_cum" "Drink from the bottle.">>] <<if setup.hasThreshold("cum", "hypnosis_cum", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<</if>>
<<if setup.getTotalValue('foot')>0>>
<<if $scene.outfit == "foot">>
[<<moveTo "event_psychiatrist_hypnosis_5_foot" "Examine the heels.">>] <<if setup.hasThreshold("foot", "hypnosis_foot", "10")>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_4_foot" "Examine the heels.">>] <<if setup.hasThreshold("foot", "hypnosis_foot", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<</if>>
<<if setup.getTotalValue('bondage')>0>>
<<if $scene.outfit == "bondage">>
[<<moveTo "event_psychiatrist_hypnosis_5_bondage" "Take the rope from the wall.">>] <<if setup.hasThreshold("bondage", "hypnosis_bondage", "10")>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_4_bondage" "Take the rope from the wall.">>] <<if setup.hasThreshold("bondage", "hypnosis_bondage", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<</if>>
<<if setup.getTotalValue('bdsm')>0>>
<<if $scene.outfit == "bdsm">>
[<<moveTo "event_psychiatrist_hypnosis_5_bdsm" "Pick up the collar and leash.">>] <<if setup.hasThreshold("bdsm", "hypnosis_bdsm", "10")>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_4_bdsm" "Pick up the collar and leash.">>] <<if setup.hasThreshold("bdsm", "hypnosis_bdsm", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<</if>>
<<if $fetish.bestiality_hard && $scene.dogAvailable>>
<<if $scene.outfit == "pup">>
[<<moveTo "event_psychiatrist_hypnosis_5_bestiality_dog_1" "Reach for the leash...">>] <<if $npc_psychiatrist.flags.petplay_hypno.pup>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_dog" "Take hold of the leash.">>] <<if $npc_psychiatrist.flags.bestiality.dog>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<<elseif $fetish.pet_play && !$fetish.bestiality_hard>>
[<<moveTo "event_psychiatrist_hypnosis_5_bestiality_dog_1" "Reach for the leash...">>] <<if $npc_psychiatrist.flags.petplay_hypno.pup>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<</if>>
<<if $fetish.bestiality_hard && $scene.horseAvailable>>
<<if $scene.outfit == "pony">>
[<<moveTo "event_psychiatrist_hypnosis_5_bestiality_horse_1" "Check out the stables.">>] <<if $npc_psychiatrist.flags.petplay_hypno.pony>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_4_bestiality_horse" "Check out the stables.">>] <<if $npc_psychiatrist.flags.bestiality.horse>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<<elseif $fetish.pet_play && !$fetish.bestiality_hard>>
[<<moveTo "event_psychiatrist_hypnosis_5_bestiality_horse_1" "Check out the stables.">>] <<if $npc_psychiatrist.flags.petplay_hypno.pony>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<</if>>
<<if setup.getTotalValue('piss')>0 && $fetish.piss>>
<<if $scene.outfit == "piss">>
[<<moveTo "event_psychiatrist_hypnosis_5_piss" "Enter the restroom.">>] <<if setup.hasThreshold("piss", "hypnosis_piss", "10")>><<hint $options "Your horizons have already been expanded by fully inhabiting this experience.">><</if>><br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_4_piss" "Enter the restroom.">>] <<if setup.hasThreshold("piss", "hypnosis_piss", "7")>><<hint $options "Your horizons have already been expanded by this experience.">><</if>><br>
<</if>>
<</if>>
</div>/*#
#desc: choose outfit for hypnosis
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeHypno5Outfit">>
<<useClothSetPush 'vr_outfit'>>
<<removeEverything>>
<<include "calcHypnoAnimals">>
<<if !$fetish.bestiality_hard && $fetish.pet_play>>
<<set $scene.dogAvailable = true>>
<<set $scene.horseAvailable = true>>
<</if>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_wardrobe.png">>
<div id="invframe" class="scrolltext">
You open the wardrobe and have a look around, first glancing at the mirror built into the inside of the wardrobe's door that reflects your avatar's current nudity.<br>
<br>
<<if $fetish.cum && setup.getTotalValue('cum') > 0>>
On the right side of the wardrobe there hangs a few pieces of shiny pink material that, upon closer inspection, you realise composes a VERY skimpy skirt/tubetop combo. A pair of slutty pink strappy sandals sit below to complete the bimbo-riffic outfit.<br>
<br>
Opposite the "slutwear" is quite possibly
<<else>>
Drawing your attention first is
<</if>>
the <<if $fetish.sissy>>sissiest<<else>>girliest<</if>> outfit you've ever seen. It is akin to a supernova of pink frills; you didn't even know it was POSSIBLE to have that many petticoats, stockings, garters crammed together, with matching gloves rounding out the over the top adorable <<if $fetish.sissy>>sissy<<else>>girly<</if>> ensemble.<br>
<br>
The final item in the "clothing" category looks, initially, to be a simple black leather skirt. For a moment you are a bit puzzled, it certainly looks tight and sexy, and goes clear down to the mid thigh, but it is hardly as unusual as the other two options. It is only when you look a bit closer that you realise the trick — other than the belt and a couple of buckles on the thighs the skirt has no back; wearing it would serve to frame, highlight, and utterly expose your bottom.<br>
<br>
<<if $fetish.piss && setup.getTotalValue('piss') > 0>>
Looking almost out of place next to the differing clothes is a black sharpie pen, almost eye-catching in its innocuousness.<br>
<br>
<</if>>
In addition to the clothing there is a variety of bondage gear, including a full set of bondage cuffs, complete with a gimp mask though, oddly, without a matching collar. Hanging separate from the cuffs is an intimidating open mouth harness gag and a large, hollow buttplug.<br>
<br>
<<if $fetish.pet_play>>
<<if $scene.dogAvailable && $scene.horseAvailable>>
As well as the gimp hood there is an intricate leather puppy hood and matching tail-plug, and hanging next to it, a pony bridle and steep pony hooves.<br>
<br>
<<elseif $scene.dogAvailable>>
As well as the gimp hood there is an intricate leather puppy hood and matching tail-plug.<br>
<br>
<<elseif $scene.horseAvailable>>
As well as the gimp hood there is a pony bridle and steep pony hooves.<br>
<br>
<</if>>
<</if>>
<<if $fetish.bestiality_hard && $npc_psychiatrist.flags.bestiality.horse && $npc_psychiatrist.flags.bestiality.dog>>
On closer inspection you spot a hinge in the back panel of the wardrobe.<br>
<br>
<</if>>
<<if $fetish.cum && setup.getTotalValue('cum') > 0>>
[<<moveTo 'event_psychiatrist_hypnosis_5_change' 'Change into the bimbo outfit.' 0 "<<set $scene.outfit='cum'>>">>]<br> /% hypno_bimbo,hypno_bimbo2 %/
<</if>>
<<if setup.getTotalValue('foot') > 0>>
[<<moveTo 'event_psychiatrist_hypnosis_5_change' 'Change into the <<if $fetish.sissy>>sissy<<else>>girly<</if>> outfit.' 0 "<<set $scene.outfit ='foot'>>">>]<br> /% hypno_sissy,hypno_sissy2 %/
<</if>>
<<if setup.getTotalValue('bondage') > 0>>
[<<moveTo 'event_psychiatrist_hypnosis_5_change' 'Put on the bondage restraints.' 0 "<<set $scene.outfit ='bondage'>>">>]<br> /% hypno_gimp, wrist, thigh, ankle, upper arm cuffs %/
<</if>>
<<if setup.getTotalValue('penis') > 0>>
[<<moveTo 'event_psychiatrist_hypnosis_5_change' 'Spread for the plug and open-mouth gag.' 0 "<<set $scene.outfit ='penis'>>">>]<br> /% hypno_gag + https://www.mr-s-leather.com/pig-hole-deep %/
<</if>>
<<if setup.getTotalValue('bdsm') > 0>>
[<<moveTo 'event_psychiatrist_hypnosis_5_change' 'Buckle on the spanking skirt.' 0 "<<set $scene.outfit ='bdsm'>>">>]<br> /% hypno_spank %/
<</if>>
<<if $fetish.piss && setup.getTotalValue('piss') > 0>>
[<<moveTo 'event_psychiatrist_hypnosis_5_change' 'Use the pen.' 0 "<<set $scene.outfit ='piss'>>">>]<br> /% hypno_bodywriting %/
<</if>>
<<if $fetish.pet_play>>
<<if $scene.dogAvailable>>
[<<moveTo 'event_psychiatrist_hypnosis_5_change' 'Reach for the puppy hood.' 0 "<<set $scene.outfit ='pup'>>">>]<br>
<</if>>
<<if $scene.horseAvailable>>
[<<moveTo 'event_psychiatrist_hypnosis_5_change' 'Pick up the bridle.' 0 "<<set $scene.outfit ='pony'>>">>]<br>
<</if>>
<</if>>
<<if $fetish.bestiality_hard>>
<<if $npc_psychiatrist.flags.bestiality.horse && $npc_psychiatrist.flags.bestiality.dog>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_root' 'Go through the back of the wardrobe.' 0>>]<br> /% hypno_narnia %/
<</if>>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_5_choose' 'Back to the room.' 0 '<<useClothSetPop "vr_outfit">>'>>]
</div>/*#
#desc: change into a virtual outfit for hypno
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.outfit>>
<<case "cum">>
<<if setup.hasThreshold("cum", "hypnosis_cum", "7")>>
<<addItemSet 'vr_slut_outfit'>>
<<wearItemSet 'vr_slut_outfit'>>
<<set $scene.outfitFail = false>>
<<setTmpEffect 'max_breasts'>>
<<else>>
<<set $scene.outfitFail = true>>
<</if>>
<<case "foot">>
<<if setup.hasThreshold("foot", "hypnosis_foot", "7")>>
<<addItemSet 'vr_sissy_outfit'>>
<<wearItemSet 'vr_sissy_outfit'>>
<<set $scene.outfitFail = false>>
<<else>>
<<set $scene.outfitFail = true>>
<</if>>
<<case "bondage">>
<<if setup.hasThreshold("bondage", "hypnosis_bondage", "7")>>
<<addItemSet 'vr_bondage_outfit'>>
<<wearItemSet 'vr_bondage_outfit'>>
<<set $scene.outfitFail = false>>
<<else>>
<<set $scene.outfitFail = true>>
<</if>>
<<case "piss">>
<<if setup.hasThreshold("piss", "hypnosis_piss", "7")>>
<<addItem 'body_writing_h'>>
<<wearItem 'body_writing_h' true>>
<<set $scene.outfitFail = false>>
<<else>>
<<set $scene.outfitFail = true>>
<</if>>
<<case "penis">>
<<if setup.hasThreshold("penis", "hypnosis_penis", "7")>>
<<addItem 'harness_plug_gag_h'>>
<<wearItem 'harness_plug_gag_h' true>>
<<set $scene.outfitFail = false>>
<<else>>
<<set $scene.outfitFail = true>>
<</if>>
<<case "bdsm">>
<<if setup.hasThreshold("bdsm", "hypnosis_bdsm", "7")>>
<<addItem 'spanking_skirt_black_h'>>
<<wearItem 'spanking_skirt_black_h' true>>
<<set $scene.outfitFail = false>>
<<else>>
<<set $scene.outfitFail = true>>
<</if>>
<<case 'pup'>>
<<if (!$fetish.bestiality_hard && $fetish.pet_play) || $npc_psychiatrist.flags.bestiality.dog>>
<<addItem 'puppy_hood_black_h'>>
<<wearItem 'puppy_hood_black_h' true>>
<<addItem 'dog_plug_black_h'>>
<<wearItem 'dog_plug_black_h' true>>
<<set $scene.outfitFail = false>>
<<else>>
<<set $scene.outfitFail = true>>
<</if>>
<<case 'pony'>>
<<if (!$fetish.bestiality_hard && $fetish.pet_play) || $npc_psychiatrist.flags.bestiality.horse>>
<<addItemSet 'vr_pony_outfit'>>
<<wearItemSet 'vr_pony_outfit'>>
<<set $scene.outfitFail = false>>
<<else>>
<<set $scene.outfitFail = true>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_wardrobe.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.outfit>>
<<case "cum">>
<<if setup.hasThreshold("cum", "hypnosis_cum", "7")>>
Merely reaching out to touch the shiny pink material causes it to blink out of existence. The snug pressure around your chest and hips, combined with your sudden increase in height confirms that you are now wearing the slutty ensemble even before you turn to confirm by looking at yourself in the mirror built into the door of the wardrobe.<br>
<br>
<<switch setup.calcBreastSize()>>
<<case "massive">>
You feel a tingle in your breasts but they grow no larger; it would seem that they are already at the limit of computational simulation...
<<case "large">>
Staring at your reflection you gasp as you feel a tingle in your chest. Wide-eyed you watch as your breasts swell even larger than their already mammoth size.
<<case "medium">>
Staring at your reflection you gasp as you feel a tingle in your chest. Wide-eyed you watch as your breasts swell, your good-sized breasts begin to swell, the top stretching as you grow straight past large and all the way into the realm of anime.
<<case "small">>
Staring at your reflection you gasp as you feel a tingle in your chest. Wide-eyed you watch as your small breasts begin to swell, inflating like balloons until you are sporting a pair of anime-large knockers.
<<case "none">>
Staring at your reflection you gasp as you feel a tingle in your chest. Wide-eyed you watch as your chest begins to swell, breasts appearing and then growing larger and larger until you are sporting a pair of anime-esque melons.
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
Your massive breasts look ready to burst out of your skimpy top, the shiny, stretchy material straining to the limit and giving you stunning cleavage above and gravity-defying underboob below. You gasp and wonder how much computational power it takes to render such ginormous, inhumanly perfect fun-bags.
<<else>>
You reach for the skimpy pink outfit, but you hand passes right through it.<br>
<br>
<<printThought "Huh... that's odd... maybe I have to do something else first to unlock this option?">> <<hint $options "I should try using the bottle...">>
<</if>>
<<case "foot">>
<<if setup.hasThreshold("foot", "hypnosis_foot", "7")>>
Merely reaching out to touch the soft, poofy outfit causes it to wink out of existence. In the blink of an eye your previously bare hand is now gloved in the softest of satin, your body covered in layer upon layer of <<if $fetish.sissy>>sissy<<else>>girly<</if>> frills.<br>
<br>
You turning towards the mirror mounted inside the door of the wardrobe and gawk at yourself. From your cute heels up your stockings, to the pink garters disappearing beneath to your layers of petticoats, on up to your corset-narrowed waist, poofy shoulders and delicately gloved arms you are every millimetre a <<if $fetish.sissy>>sissy<<else>>girlish<</if>> dream.
<<else>>
You reach for the poofy dress only for your hand to pass right through it as if it was not even there.<br>
<br>
<<printThought "Huh... that's odd... maybe I have to do something else first to unlock this option?">> <<hint $options "I should try examining the heels...">>
<</if>>
<<case "bondage">>
<<if setup.hasThreshold("bondage", "hypnosis_bondage", "7")>>
Reaching down to pick up the first leather cuff you reflexively strap it to your wrist. Half in a trance you follow it with its matching twin, another pair for your upper arms, then matching ankle and thigh cuffs. Lifting the hood you are unsurprised to discover a large internal gag had been snapped in place over the mouth, there is also an integrated blindfold, but it is presently dangling from one side of the hood rather than being snapped across to cover. Opening your mouth you bring the hood to your face, zipping it closed in the back and feeling it tighten over your head. Turning towards the mirror mounted on the inside of the wardrobe door you are a perfectly ready bondage bunny, attachment points gleaming, ready to be restrained.<br>
<br>
It takes a minor effort to resist the urge to buckle the blindfold over the hood to complete your transformation into a faceless, ready slave.<br>
<br>
<<printThought "Not yet... I still need to see to choose my activity...">>
<<else>>
You reach for one of the leather cuffs only for your hand to close on thin air, passing through the restraint as if it was not even there.<br>
<br>
<<printThought "Huh... that's odd... maybe I have to do something else first to unlock this option?">> <<hint $options "I should try using the rope...">>
<</if>>
<<case "piss">>
<<if setup.hasThreshold("piss", "hypnosis_piss", "7")>>
Reaching out your fingers close around the innocuous pen. Looking down at your body you pop off the cap and begin writing all over yourself. "Whore," "bitch," "slave," "cum pig," "choke me," "slap me," "I swallow," "piss-drinking slut" each phrase is more degrading than the last as you systematically cover your body, using the mirror to make extra sure that there are several arrows pointed towards your ass labeled "insert cocks here" and the word WHORE with your pert hole as the O. Finally you come to your face, blinking one last time at your pretty reflection before debasing yourself with HUMAN URINAL across your forehead and a ring of arrows around your mouth with the words "cum bank" on one cheek and "piss disposal" on the other.
<<else>>
You reach for the pen only for your hand to close on thin air, passing through the writing implement as if it was not even there.<br>
<br>
<<printThought "Huh... that's odd... maybe I have to do something else first to unlock this option?">> <<hint $options "I should check out the bathroom...">>
<</if>>
<<case "penis">>
<<if setup.hasThreshold("penis", "hypnosis_penis", "7")>>
Your fingers barely brush the hollow plug when it disappears. Eyes wide with shock you feel your ass gape as the plug pops into position followed by the odd sensation of air tickling your insides thanks to the hollow, open design. Lips parting in a gasp the harness gag does the same trick, spreading your jaw wide to accommodate the integrated ring before buckling tight around and over your head.<br>
<br>
Bringing a hand towards your face you slide the dangling plug into the hollow open-mouth gag, sealing you closed even as you remain frustratingly empty at both ends. Your wide-eyed reflection blinks back at you from amidst the leather straps running up and over your head, the pair of stout rings on either side of your mouth beckoning someone to pull you in.
<<else>>
You reach for the hollow plug only for your hand to pass right through it as if it were a mere projection.<br>
<br>
<<printThought "Huh... that's odd... maybe I have to do something else first to unlock this option?">> <<hint $options "I should try using the joystick...">>
<</if>>
<<case "bdsm">>
<<if setup.hasThreshold("bdsm", "hypnosis_bdsm", "7")>>
Taking the skirt off its hanger you slide it up over your hips and buckle the straps around your thighs. In function it is basically a pencil skirt, you cannot separate your legs more than a couple of centimetres without the skirt riding up, but other than that, despite the fact that you were previously totally naked you somehow feel more exposed and vulnerable, like you suddenly have a target on your backside...
<<else>>
You reach for the leather spanking skirt, but you hand passes right through it.<br>
<br>
<<printThought "Huh... that's odd... maybe I have to do something else first to unlock this option?">> <<hint $options "I should try examining collar and leash...">>
<</if>>
<<case 'pup'>>
<<if $scene.outfitFail>>
You reach for the leather puppy hood, but you hand passes right through it.<br>
<br>
<<printThought "Huh... that's odd... maybe I have to do something else first to unlock this option?">> <<hint $options "I should try examining the leash...">>
<<else>>
You bring the pup mask to your head and it seals around your face, complete with a large breather gag stretching your jaw. You gasp through the gag as the tail plug pops out of existence only to re-appear filling your rear.
<</if>>
<<case 'pony'>>
<<if $scene.outfitFail>>
You reach for the pony bridle, but you hand passes right through it.<br>
<br>
<<printThought "Huh... that's odd... maybe I have to do something else first to unlock this option?">> <<hint $options "I should check out the stables...">>
<<else>>
You reach for the pony bridle and it reappears buckled around your head, the thick bit gag pulled tight between your teeth. Additional leather straps wrap your body to make up a full harness as your perspective changes, your sight-line rising higher as the hoof-boots lace up your legs.
<</if>>
<<default>>
ERROR, unknown outfit! <<=$scene.outfit>>
<</switch>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_5_wardrobe' 'Select a different outfit.' 0 '<<if $scene.outfitFail>><<set $scene.outfit = "">><</if>>'>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_choose' 'Back to the room.' 0 '<<if $scene.outfitFail>><<set $scene.outfit = "">><</if>>'>>]
</div>/*#
#desc: outfit-bonus penis hypnosis scene
#status: FINISHED 0.7.11.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'penis'>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
Leaning down to pick up the joystick you are surprised by two things — first, that it is firmly attached to the floor, and second that the already phallic device has taken the form of a full on cock. Moaning through your gag you drool with desire. You consider dropping to your hands and knees to see how it tastes, but your plug-gaped ass is in no mood to go second.<br>
<br>
Squatting down you close your eyes and slide down the floor-mounted cock. You feel it stretch your already gaped rear and then slide past the plug, filling you deep while the plug gives it that extra girth. Rolling your hips so that the penis/plug combo stirs against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> you open your eyes, another pair of "joysticks," that is to say, cocks, having appeared on either side of you, conveniently within arms reach. Stretching out your hands, you wrap your fingers around each cock, delighting at the hard, fleshy feel against your palms.<br>
<br>
You start to stroke reflexively and the room fades around you. A loud, but distant voice narrates as you float in a featureless void. "@@.npc_psychiatrist;Welcome to Cockmaster 3D, can you please them all?@@" As the voice fades a plethora of penises pop into existence all around you. Big, small, soft, hard, in every shade and in all shapes and sizes<<if $fetish.bestiality_soft>> from run of the mill human to swings through the animal kingdom and then beyond to utterly alien<</if>> you find yourself floating amongst a seemingly endless spread of schlong.<br>
<br>
Drooling around your gag you start jerking with both hands, rolling your hips to work the one deep in your ass.<br>
<br>
<<HypnosisSession5Options $player $scene.hypnoSession.theme>>
</div>/*#
#desc: hypnosis session 5 - penis accept, pleasure near infinite disembodied cocks
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Accept $player $scene 'penis'>>
<<set $scene.accept = true>>
<<set $scene.origBreasts = setup.calcBreastSize()>>
<<set $scene.breastGrow = $player.body.breastsize[0] < 5>>
<<if $scene.breastGrow>>
<<set $player.body.breastsize[2] = 6-$player.body.breastsize[0]>>
<</if>>
<</if>>
<<set $player.location to "The Infinite Plane of Penis">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
Drooling in lustful anticipation you bring one of the disembodied cocks to your face, threading it through your gag so you can taste and suck its gloriousness. Moaning in delight as you are filled in both ends you bob your head and roll your hips, your hand reaching out to find another <<if $player.body_ref.vagina>>pair of cocks<<else>>cock<</if>> so that you are jerking, thrusting and humping a "full" set of <<if $player.body_ref.vagina>>five<<else>>four<</if>>... yet already lusting for more.<br>
<br>
The first cock to enter you is also the first to cum<<if $fetish.cum>>, pumping your ass full of <<getWordCum>> <<if $player.body_ref.vagina>> followed a moment later by a cream filling pumped into your babymaker the spent cocks<<else>>and then<</if>><<else>>,<</if>> giving a twitch before vanishing with a merry chime. A score overlay appears in the corner of your vision, ticking up to <<if $player.body_ref.vagina>>two<<else>>one<</if>>. Groaning in frustration at the sudden emptiness you quickly shove the cocks in your hands into your <<if $player.body_ref.vagina>>desperate lower holes<<else>>plug-gaped ass<</if>>, the double-penetration just what you needed as you immediately reach out to find a fresh member as you twitch and lick and moan.<br>
<br>
Multitasking with all your skills your score steadily ticks up as cock after cock probes your throat, <<if $player.body_ref.vagina>>fucks your cunt, <</if>>plumbs your ass or is treated to the delicate stroke of one of your hands. Ranging from small, cute things that you have to raise to life from their initial softness all the way up to massive <<if $fetish.bestiality_soft>>horse <</if>>schlongs that it takes both hands to jerk off you service them all in this heaven for cock-sluts.<br>
<br>
Longing to serve even more <<getWordPenis>>,
<<switch $scene.origBreasts>>
<<case "massive">>
and feeling momentarily foolish for not thinking of it earlier, you grab another cock and slide it between your mammoth breasts.
<<case "large">>
and feeling momentarily foolish for not thinking of it earlier, you grab another cock and slide it between your <<if $scene.breastGrow>>suddenly swelled<<else>>large<</if>>, perfectly boob-job ready breasts.
<<case "medium">>
and feeling momentarily foolish for not thinking of it earlier, you grab another cock and slide it between your <<if $scene.breastGrow>>suddenly swelled <</if>>breasts that are just large enough for a proper boobjob.
<<case "small">>
and feeling momentarily foolish for not thinking of it earlier, you grab another cock and slide it between your small breasts. At first this proves unsuccessful as your breasts are just too small, but then your chest swells, your nascent boobs growing larger and larger until they are just the right size to stuff a cock between.
<<case "none">>
your wish is granted as a pair of large breasts grow from your chest. Smiling around your gag you grab another cock and stuff it between your large breasts.
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
<<if $player.body_ref.vagina>>
Desperate for more, more, more, it isn't long before you've shoved a second cock into your cunt, and then another into your ass, quad-stuffed below, squeezed tight and thrusting on their own, the penis sandwiched between your soft dickpillow breasts sliding
<<else>>
Similar to how the double cocks in your ass will occasionally thrust on their own, the penis sandwiched between your soft dickpillow breasts slides
<</if>>
up and down "helpfully" as you add a boob job to your simultaneous oral, double-anal,<<if $player.body_ref.vagina>> double vaginal,<</if>> double-handjob extravaganza.<br>
<br>
The score continues to climb as cocks pop out of existence only for more to float closer, a seemingly endless supply of dick, like the ultimate gloryhole. Taking advantage of their floating disembodied state more and more cocks cram in and around you. Elbows clenched to your side dongs thrust in your armpit, between your thighs, a <<if $player.body_ref.vagina>>third stretching your cunny to the limit<<else>>third making its way into your ass<</if>> as you suck two at once. Each cock is different, all are delightful, big small, you are captivated by the subtle differences of feel, but most of all the varied tastes. There are pungent<<if !$options.fem>>, manly cocks<</if>>, delicious girlcocks, <<if $fetish.sissy>>and even delicate sissycocks<<else>>and all between<</if>>, an endless buffet of delightful dick.<br>
<br>
Thoughts fade as your entire world becomes suck, thrust, jerk, hump. Your eyes roll back. Distantly you think you hear a digital voice call out "@@.npc_psychiatrist;New high score@@" but you can't be certain, pleasuring penis is far more important than thought...<br>
<br>
<<set _effects = "<<set $player.body.breastsize[2]=0>>">>
<<include "vrSessionEnd5">>
</div><<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<set _end = setup.setNextDate($now, 0, $now.getUTCHours(), 55)>>
<<set _timeTo = setup.secondsToDate($now,_end)>>
<<if $scene.accept>>
Your eager pursuit of mental expansion you has you lusting for more...<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 1800) || setup.getWillpower() < $scene.hypnoSession.hypnoRepeat+1 && $scene.hypnoSession.hypnoRepeat > 2>>
<<switch $scene.hypnoSession.hypnoRepeat>>
<<case 1>>
Embracing two fetish simulations in a row already has your brain buzzing
<<case 2>>
Embracing three fetish simulations in a row has your brain near overload.
<<default>>
You have lost count of how many fetish simulations you've embraced today, your thoughts filled with nothing but lusty depravity.
<</switch>>
<br><br>
<<if setup.getWillpower() >= $scene.hypnoSession.hypnoRepeat+1>>
<<set _wpPrice = $scene.hypnoSession.hypnoRepeat+1>>
<<set _wpEffect = _effects + "<<spendWillpower _wpPrice>>">>
[<<moveTo "event_psychiatrist_hypnosis_4_repeat" "Yes! Again! I need more!" 600 _wpEffect>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_end' 'This is enough for today.' _timeTo _effects>>]
<<elseif $scene.hypnoSession.hypnoRepeat > 2>>
Your mind is already fraying, a part of you knowing that you do not have the resolve to survive another simulation. The voice is almost unheard compared the ravenous, perverted, portion of you that lusts for nothing more than to surrender to an eternity of simulated depravity...<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_bad_end" "More..." 600>>]<br>
<<else>>
<<if $scene.hypnoSession.hypnoRepeat > 1>>
The repeated simulations are starting to eat away at your sanity. Your thoughts are slow, your mind fuzzy... you should probably stop.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_bad_end" "More..." 600>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_5_end' 'This is enough for today.' _timeTo _effects>>]
<</if>>
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_5_end' 'Continue.' _timeTo _effects>>]
<</if>>
<<elseif $scene.hypnoSession.theme == 'reject'>>
Your rejection of the virtual world on offer has you feeling mentally uneven.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_end' 'Continue.' _timeTo _effects>>]
<<else>>
Your timidity at embracing the potential situations before you has you mentally unprepared to push further this day.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_end' 'Continue.' _timeTo _effects>>]
<</if>>
<<else>>
As much as you might cling to the virtual realm, you feel the simulation fade away, as if some part of reality were calling you back...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_end' 'Continue.' 60 _effects>>]
<</if>>/*#
#desc: hypnosis session 5 - penis decline, attempt to pleasure disembodied cocks
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Decline $player $scene 'penis'>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "The Infinite Plane of Penis">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
Floating in what seems to be an endless realm of dicks you start jerking and humping the three cocks that were once... and still are, after a fashion, "joysticks." The cock in your ass is the first to achieve orgasm, vanishing from existence without even pulling out of your ass.<br>
<br>
There is a chime and in the corner of your vision you see what must be your score tick up from zero to one. Jerking with both hands it takes you a few moments to realise that, as all the cocks float disembodied wherever you move them, you can just stuff one in your ass and continue on. Doing so you continue on at a moderate pace for a few more moments before a blaring buzzer disrupts your rhythm.<br>
<br>
"@@.npc_psychiatrist;ERROR: mouth fuck-hole not in use, enabling aim-assist.@@"<br>
<br>
You are confused as to what this could mean until a pair of invisible hands grab hold of the rings on either side of your gag harness, pulling your head forward and onto a cock that has floated towards you for just such a purpose.<br>
<br>
Surprised you still reflexively lick and suck as the cock slides past your spread lips and into your throat, gagging only a little as you bob your head.<br>
<br>
Jerking, sucking and humping you trigger no more errors as your score slowly, but steadily increases. Serving four cocks at a time you learn that, as varying as they are in size, shape and flavour they also differ somewhat in behaviour when inside your body. Some thrust, some vibrate, some swell or twist, a mix of sensations that add an extra spice to your efforts.<br>
<br>
One cock blurring into the next you feel time slowing, your tired hands and aching jaw desperate for a relief as your surroundings slowly fade...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: outfit-bonus cum hypnosis scene
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'cum'>>
<</if>>
<<set $player.location to "The Fairgrounds">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
You tilt back the bottle only for the world around you to swirl and twist, suddenly you're standing in a crowd at what looks like some sort of fair?<br>
<br>
"@@.npc_psychiatrist;Hey, you look like a likely lass! How would you like a shot at being crowned queen of the festival?@@" A carnival barker says loudly, having jumped directly in front of you. You do a double take. Though dressed in an elaborate olde-timey tuxedo complete with tails, the barker bears an uncanny resemblance to <<=setup.getNpcName('npc_psychiatrist', 'formal')>>!<br>
<br>
<<printThought "Huh, I guess a little author-insert easter egg?">><br>
<br>
Your mind feels a bit foggy with lust and you find yourself giggling before agreeing to her offer without asking any further questions.<br>
<br>
Following the barker you are led through a tent and into a line with half a dozen other similarly scantily clad individuals. Preening a bit as you exchange looks with the other bimbos you don't have long to wait before the line starts moving and you file up onto a stage.<br>
<br>
A large crowd cheers your arrival, looking up at the collection of you lustily. Waiting for the applause to die down a bit the carnival barker jumps up as you look around the stage, noting a series of round raised platforms, one for each of you and your fellow "competitors?" <br>
<br>
"@@.npc_psychiatrist;Welcome, everyone to that most special time where we find out who will be this years cumslut champion!@@"<br>
<br>
<<if $player.flags.stage3party.cumContest == 6>>
<<printThought "But I already am a champion...">>
<<elseif $player.flags.stage3party.cumContest >= 1>>
<<printThought "Huh, this is weirdly familiar...">>
<<else>>
<<printThought "Wait, cumslut, what?">>
<</if>>
<br><br>
The audience cheers again as you and the other competitors are led to your respective platforms.<br>
<br>
"@@.npc_psychiatrist;Remember, we're taking volunteers so anyone who wants to help crown our queen, form an orderly line, for the rest of you... enjoy the show!@@"<br>
<br>
You notice that the other "competitors" have all knelt down in the centre of their platforms as off to the side of the stage a line of <<if $options.fem>>women<<else>>people<</if>> stroke themselves hard and begin filing up to the competitors in groups of three.<br>
<br>
<<HypnosisSession5Options $player $scene.hypnoSession.theme>>
</div>/*#
#desc: hypnosis session 5 - cum accept, cum-drinking competition win
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Accept $player $scene 'cum'>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "A contest stage at the fair">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
Your face is already plastered with a wide grin as you drop to your knees, already eyeing your first "clients" as they make their approach. Of the three the one with the largest cock is in the middle, but that is just fine with you as you dive face-first onto the thick love rod, your hands reaching out to either side to fluff the others for later.<br>
<br>
The taste of precum fills your mouth and you moan, looking up and fluttering your eyelashes as you slurp, suck and stroke the trio of cocks within arms reach. Obviously pent up it isn't long before your nimble tongue is rewarded with a gushing burst of fresh <<getWordCum>> flooding your mouth.<br>
<br>
"@@.npc_psychiatrist;AAAAAAAAAANNNNNDDD the Pink Bimbo is off to an early lead with first cum!@@" The barker calls out as you slurp things clean and lean back, showing off the thick load pooling on your tongue for a few moments before gulping it down. The whole time you continue to jerk off the two other cocks.<br>
<br>
Your show obviously arousing there is a grunt from your right and the cock in your hand spurts a blast across your face. Grinning even wider you lick your lips clean of this fresh load, turning to suck off your third subject as another two people file in, cocks hard and balls full of cum.<br>
<br>
Working industriously it isn't long before your face and heaving breasts are coated in cum, even as you try to gulp or lick up as much as you can you don't ever have time to clean yourself off before another client appears. Things get even worse, or, rather, better, when some of your competitors start dropping out and you go from a mere three clients at a time to four, five, and eventually an entire ring of hard cock surrounding you.<br>
<br>
Mouth and hands ablur you attempt to service as many as you can personally, but you are but one slut against a horde and you soon shift from the subject of a blowbang to the target of a full-on bukkake scene.<br>
<br>
Occasionally catching a glimpse of the rapidly dwindling field you hear the barker call things out, the crowd surging with support to cheer on the "Perfect Pink Bimbo!" <br>
<br>
Half-blind from the amount of thick semen clogging your eyelashes you ignore that one of your eyes is glued shut as you keep at it sucking, swallowing and enjoying the near-constant shower of semen. Feeling yet another cock tremble and spit you stroke harder, giving your body another coat of paint before reaching for the next, only to come up empty.<br>
<br>
Confused you are momentarily distracted as a fresh load is deposited down your throat, the thick, salty brew as delicious now as your first taste way back at the start of the contest. Reaching up to wipe your eyes you lick your fingers clean as you look around, barely noticing what proves to be your final client shooting a ropey blast that splashes against the side of your tits.<br>
<br>
Looking around, you spot your final competitor collapsed in a pool of jizm as the barker grabs your hand and raises it high.<br>
<br>
"@@.npc_psychiatrist;Your new cumslut queen! <<=$player.first_name>> — The Perfect Pink Bimbo!@@"<br>
<br>
Cheers break out, but you barely notice, slipping free of the barkers grasp to run over to your fallen opponent.<br>
<br>
Her chest heaves as she looks up at you and a cum-bubble inflates from one nostril. Licking your lips with hunger you lean down, sucking a reverse-snowball from her mouth as your tongue reaches deep to scrub every drop you can find from her teeth. Though your belly is already swelled with cum you still want more and you begin to lick your competitor clean as the crowd continues to cheer.<br>
<br>
The simulation fades as you return to reality, the taste of cum still strong on your lips as you watch a tube retreat into the darkness of the ceiling.<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 - cum decline, cum-drinking competition lose
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Decline $player $scene 'cum'>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "A contest stage at the fairgrounds">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
You're too shocked by the crowd cheering for you and the other competitors to do anything but mechanically make your way to your designated platform and drop to your knees. Glancing to the side of the stage you watch a trio of <<if $options.fem>>women<<else>>men<</if>>, cocks in hand, approaching. You gulp nervously.<br>
<br>
Stopping in front of you the largest of them ceases slowly stroking <<his>> cock and releases <<his>> grip. <<His>> cock is big and fragrant, beaded with precum and smelling so strongly of <<if $options.fem>>musk<<else>>masculine sweat<</if>> you can almost taste it. <<He>> waits a few moments, but when you make no move <<he>> grabs your head and pulls you face-first onto <<his>> cock.<br>
<br>
"@@.generic_male1;Huh, dressed like that I would have taken you for a more enthusiastic slut, but I guess maybe you just need some warming up.@@"<br>
<br>
"@@.pc;Mmmmfff!@@" is all you can reply as <<his>> cock plunges into your throat.<br>
<br>
Your head bobbing up and down you take a chance to look to the side where one of the other "clients" is still stroking <<himself>>. "@@.generic_male2;Come on, slut, you'll never be a Cumslut Champion if you don't learn to multitask.@@"<br>
<br>
<<printThought "But I, like, don't want to be a Cumslut Champion... do I?">><br>
<br>
Whatever your thoughts may be you find yourself reaching out to either side, stroking a cock with each hand as you continue to be face-fucked.<br>
<br>
You hear the crowd cheer as the barker announces that one of your fellow competitors has obtained first cum. Your client takes that as a cue to "help" you catch up by increasing the rate at which <<he>> is pounding into your throat.<br>
<br>
Gagging and coughing slightly your mouth is suddenly flooded with cum. A beat later and two ropey lengths of jizz arc onto you from either side as your handjobs reach simultaneous completion as well.<br>
<br>
Gasping as cum and drool dribbles down your chin you do not have long to wait before the three <<if $options.fem>>women<<else>>men<</if>> file away and another trio of clients appears in their place, a well-hung <<if $fetish.futanari>>futa<<else>>woman<</if>> shoving her cock into your face as you reach under the skirts of the leashed <<if $fetish.sissy>>sissy<<else>>girl<</if>> at her side to start stroking the dainty dicklet within.<br>
<br>
"@@.generic_female1;Pay close attention@@" the <<if $fetish.futanari>>futa<<else>>woman<</if>> states, though not to you, as you realise she is holding a leash leading to a bright pink collar around the <<if $fetish.sissy>>sissy's<<else>>girl's<</if>> neck. "@@.generic_female1;Next year I'm going to be entering you in this contest and I expect you to perform very well.@@"<br>
<br>
"@@.generic_female2;Yes, Mistress@@" the <<if $fetish.sissy>>sissy<<else>>girl<</if>> replies breathlessly, moments later climaxing. Your hand pulling back out from under her skirts to find it almost totally covered in <<if $fetish.sissy>>sissy<<else>>girl<</if>> juices.<br>
<br>
"@@.generic_female1;Tsk, no self-control. As soon as I'm done you are going right back in your ca-AGE!@@" Her voice pitches up as you suck harder and she has an orgasm of her own, pumping thick, spicy <<if $fetish.futanari>>futa <</if>>cum into your mouth as you gulp quickly lest you drown.<br>
<br>
You barely noticed your third client, flinching away as they shoot their load right into your eye. You blink away the cum plastering your face as you watch the three of them walk off, the <<if $fetish.sissy>>sissy<<else>>girl<</if>> turning around to give you an encouraging grin and thumbs up. You weakly smile back only for another trio of clients to step forward and block your line of sight.<br>
<br>
And so it goes, suck, stroke, swallow. Your voluptuous body is soon coated with <<getWordCum>> as your belly swells. You are distantly aware of some of your fellow competitors dropping out, either rising and staggering off under their own power or collapsing in a pool of cum to be carried out on a gurney.<br>
<br>
It's down to final three when you hit your limit, your lips stretched around a thick, but surprisingly short, cock then unloads what has to be half a cup of semen into your mouth. Your lips are already stretched so wide there is no space for it to flow out and cum sprays out of your nose as you nearly choke, gasping and wheezing as you pull away, falling off the platform.<br>
<br>
"@@.npc_psychiatrist;And the Pink Bimbo has eliminated herself!@@" The carnival barker announces, the crowd letting out cries of disappointment mixed with some encouraging applause at your efforts.<br>
<br>
"@@.npc_psychiatrist;Better luck next time, toots,@@" the barker whispers as you stagger back to your feet. Teetering on your heels you start to walk towards the back of the stage where the other failed contestants have gone as she gives you an encouraging slap on the ass that has the crowd roaring with approval.<br>
<br>
You step through the curtain into the behind the stage area and everything goes white.<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: outfit-bonus foot hypnosis scene
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'foot'>>
<</if>>
<<set $player.location to "Before a Throne">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
You pick up the stiletto heels and they morph in your hands, morphing from lethal black patent dagger stilettos into ribbon-laced <<if $fetish.sissy>>sissy<<else>>girly<</if>> pink platforms. Sliding them onto your stockinged feet sends a burst of girly glee through your body as you strike a cute pose.<br>
<br>
Looking around, you realise you are no longer in the room you started, instead standing at the base of a flight of stairs. Your eyes scale the dozen marble steps to find atop it a throne and upon that throne...<br>
<br>
You are surprised to find <<=setup.getNpcName('npc_psychiatrist', 'formal')>> looking down haughtily.<br>
<br>
<<printThought "Huh, I guess a bit of author-insertion?">><br>
<br>
Glancing over the regal woman you find your gaze drawn down towards her legs upon which she wears a pair of the sexiest fuck me boots you have ever seen. Patent leather gleams with an almost mirror shine, so form fitting they look almost painted on.<br>
<br>
"@@.npc_psychiatrist;Come, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, kneel@@" her voice cuts right through you. It is different from in session, more dominant, more sexy, already turned on by your outfit your whole body shudders in submissive <<if $fetish.sissy>>sissy <</if>>joy.<br>
<br>
Crawling up the steps you come face to face with her divine feet. She slowly raises a foot towards you...<br>
<br>
<<HypnosisSession5Options $player $scene.hypnoSession.theme>>
</div>/*#
#desc: hypnosis session 5 - foot accept, worship feet
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Accept $player $scene 'foot'>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "At the foot of the throne">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
She lifts a foot towards you and you caress it like a lover. No — more than a lover. You worship at the foot of a goddess, an icon of lust and dominance and desire.<br>
<br>
Holding it gently, like it was made of glass you let out a <<if $fetish.sissy>>sissy <</if>>gasp and begin to kiss her boot, starting from the beautiful pointed tip and working your way all the way up the calf and then back down the narrow spiked heel. Each tender caress has you feeling even more submissive, more girly, as if with each kiss you surrender whatever final traces of dominance you might posses, your world narrowing to nothing but your delightful femininity and your submissive worship of her feet.<br>
<br>
Sucking her heel you lovingly polish her boot to a mirror shine with your satin-gloved hands before turning to the other foot. Rather than being bored by the repetition you are only more entranced, enthralled and enthused. You could worship and polish her boots for hours, days, eternally delighting in some new detail of their perfect beauty.<br>
<br>
As if by silent command, you finish sucking her heel and move to the next stage. Ever so gently, you unzip the divine boot, sliding it off her beautiful bare foot before repeating your kissing, sucking, licking worship on her bare skin.<br>
<br>
Her sweat is like ambrosia, her skin soft and tender, her toes a delight against your tongue. Kissing her from toe to heel you glance over to the lotion sitting next to you. Warming the lotion with your palms you rub it deep into her calves and feet, rejuvenating her already perfect skin as you give the greatest massage of your life.<br>
<br>
Returning to the other foot is, once again, a joy as you delight in the beautiful symmetry, taking every tiny detail you learned from the first massage to make this second one even better, working the lotion into every centimetre of her flesh.<br>
<br>
The massage finished she points her toes and you slide one boot, then the other back into place. You spend a moment admiring their beauty as her feet sway back and forth and then she raises one towards you.<br>
<br>
"@@.npc_psychiatrist;Again.@@" She commands.<br>
<br>
No single word could have made you more happy and you reach out, eager to repeat the entire routine once more.<br>
<br>
Your world is her feet, a haze that first obscures her body slowly spreading until everything fades and you find yourself drifting back towards reality.<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 - foot decline, massage feet
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Decline $player $scene 'foot'>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "At the foot of the throne">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
Trembling in your <<if $fetish.sissy>>sissy<<else>>feminine<</if>> frills you slowly reach out to the offered foot. Smooth and shiny there is scarcely anything you could do to improve things, yet you try, carefully polishing each boots in turn and laying a gentle kiss on the toe before she commands you to strip them off.<br>
<br>
Slowly unzipping the stunning heels you address her feet, squirting foot lotion into your hands before massaging her with every ounce of skill you have. Hands starting to cramp you slide the boots back onto her feet, zipping them tight and leaning back with satisfaction.<br>
<br>
Several moments pass and then she raises a foot towards you, "@@.npc_psychiatrist;Again, but better.@@"<br>
<br>
You can already feel your fingers cramping, but you find yourself unable to resist, reaching out with both gloved hands to begin polishing her boots anew...<br>
<br>
Over and over the sequence repeats, her tone never seeming satisfied with your efforts, especially as your tired hands lose their strength. Whimpering in despair of your failure the world around you finally, mercifully fades...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: outfit-bonus bdsm hypnosis scene
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bdsm'>>
<</if>>
<<set $player.location to "A Fetish Store">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
Buckling the leather collar around your neck the leash drops to the floor and then rises, pulling you forward as the room fades and you find yourself walking through a store.<br>
<br>
Glancing around as you follow at the heels of a sharp-dressed domina you realise that you aren't in just any store, but an expansive fetish warehouse. Racks of leather, latex and bondage gear spread out as far as you can see. Walking with purpose your leash-holding domina leads you to the "impact play" section of the store before stopping and turning towards you with a coy grin.<br>
<br>
"@@.npc_psychiatrist;So, what do you think would work best to keep you in line?@@"<br>
<br>
You gulp as you recognise a digital recreation of your therapist, her sexy, almost casual normal attire swapped for a more intimidating (and just as revealing) dominatrix outfit that has you doing a bit of a double take.<br>
<br>
<<printThought "What is it with me and submitting to redheads?">><br>
<br>
Cocking an eyebrow she glances towards the rack upon racks of floggers, paddles, crops, canes and whips of every type imaginable as she awaits your reply. Thinking of your bare-assed spanking skirt you get the feeling she isn't interested in making a purchase without taking a thorough "test drive" first.<br>
<br>
<<HypnosisSession5Options $player $scene.hypnoSession.theme>>
</div>/*#
#desc: hypnosis session 5 - bdsm accept, marathon spanking, etc.
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Accept $player $scene 'bdsm'>>
<<set $scene.accept = true>>
<<addItem 'blindfold_black'>>
<<wearItem 'blindfold_black' true>>
<<applyExperience 'bondage' 11 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "A Fetish Store: Impact Toy Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
You give a little curtsy and eye a nearby spanking bench. "@@.pc;Perhaps you could tie me down and make a thorough comparison of all options?@@"<br>
<br>
She grins. "@@.npc_psychiatrist;What a lovely idea! Your eager obedience almost makes me feel bad about what I am about to do to your bum... almost.@@" Punctuating her statement with a loud *SLAP* on your exposed rear with her gloved hand she bends you over the bench and straps you down, your exposed rear raised high and totally undefended.<br>
<br>
"@@.npc_psychiatrist;Mmmm.@@" She croons landing an even harder *SMACK* on your backside that has you jump against your bonds.<br>
<br>
"@@.pc;Thank you, Mistress.@@" You breathlessly respond.<br>
<br>
"@@.npc_psychiatrist;Very good, now you just wait here while I grab a few things to get started with... hmmm, maybe a flogger? Oooh, a dragon's tongue...@@" Her voice trails off as she muses to herself and moves through the racks of devices.<br>
<br>
Craning your neck to watch you see her pick up and examine several different items. She moves in and out of your line of sight as she collects over a dozen different implements before returning, placing the pile on a nearby bench before standing next to you and rubbing your bare bottom.<br>
<br>
"@@.npc_psychiatrist;Alright, my dear, it is time to get started. I daresay you have quite a bit of work ahead of you. So many wonderful options it is going to be quite some work to decide! You'll help me narrow it down though, right? I want something that will really keep you in line...@@"<br>
<br>
You nod, your heart already beating faster as she gives your rear a squeeze and steps away to reach for the first item only to stop, her fingers centimetres away. "@@.npc_psychiatrist;Oops! Almost forgot! We ought to be scientific and, while there's no way to perform a fully double blind test we can at least keep you from making decisions using anything other than your pert bum.@@" She slips a leather blindfold over your head, pulling it tight over your eyes to seal off every trace of light.<br>
<br>
Hearing heightened by your loss of sight you listen to the click of her heels as she moves behind you and you brace for the first blow...<br>
<br>
*SMACK* *SMACK* two heavy blows crack against your rear, a flogger of some kind? perhaps suede?<br>
<br>
"@@.npc_psychiatrist;How was that?@@" She asks, massaging your rear with one hand as she listens to your reply.<br>
<br>
"@@.pc;Thuddy? Not too painful.@@"<br>
<br>
"@@.npc_psychiatrist;Hmm, how about this?@@"<br>
<br>
*SMACK* *SMACK* another two blows, sharper this time.<br>
<br>
"@@.pc;More stingy, Mistress.@@"<br>
<br>
She makes no comment this time before grabbing a fresh implement and you feel a hard *THWACK* of a paddle.<br>
<br>
Your gasp seems to be the only review she needs as she follows up with an agonising strike from what has to be a cane of some type.<br>
<br>
On and on it goes, your ass afire from the repeated blows as she goes back and forth. You think you recognise the occasional repeat as she systematically narrows her selection, testing each even more rigorously with the occasional *SLAP* of her hand for, as she calls it "@@.npc_psychiatrist;Calibration@@"<br>
<br>
Whimpering in pain you're surprised when the blows stop and her hands gently rub cream into your reddened rear.<br>
<br>
"@@.npc_psychiatrist;Well, I couldn't quite narrow it down to a single choice but hey, options! I'm going to give you a bit of time to recover while I go check out, don't run off now!@@"<br>
<br>
You let out a soft moan, bound and blindfolded it's not like you could go anywhere, anyway.<br>
<br>
Slowly catching your breath things start to slowly brighten, though you did not feel the blindfold being removed...<br>
<br>
<<set _effects = "<<removeItem 'blindfold_black'>><<deleteItem 'blindfold_black' true>>">>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 - bdsm decline, try to get out of spanking "testing"
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Decline $player $scene 'bdsm'>>
<<set $scene.accept = false>>
<<applyExperience 'bondage' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "A Fetish Store: Impact Toy Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
"@@.pc;Maybe we could look at floggers?@@" You finally suggest, her eyes narrow slightly.<br>
<br>
"@@.npc_psychiatrist;Look at... no, no, no. If this was just about finding something that looked nice I would not have brought you, or more precisely, your cute ass, along with me!@@" She looks around for a moment before fixating on a nearby spanking bench. Choking up on your leash she drags you behind her and bends you over "@@.npc_psychiatrist;Here, if you are going to be so... resistant we had better get you restrained.@@"<br>
<br>
Working swiftly she soon has you bound to the bench, finishing off by jamming a large ball gag into your mouth.<br>
<br>
"@@.npc_psychiatrist;I had hoped to get your verbal feedback to help make my choice but, as you seem a bit rebellious today, well... your screams will just have to suffice. And now to finish things off!@@"<br>
<br>
Pulling out a leather blindfold she soon has it tightly wrapped over your eyes, closing off every hint of light. Blind and mute you have no choice but to wait nervously, listening as she walks away for several minutes before dropping what sounds like quite a number of items nearby.<br>
<br>
*SMACK* what can only be a large paddle impacts your exposed rear and you cry out through your gag.<br>
<br>
"@@.npc_psychiatrist;Hmm, I was hoping for something a bit higher pitched... how about this one?@@"<br>
<br>
*THWACK* stings a narrow whip and you howl.<br>
<br>
"@@.npc_psychiatrist;Ah, that's better, but we still have so many more to test.@@"<br>
<br>
*SLAP* *THWACK* *SLAP* *WHACK* your rapidly-reddening rear becomes the target of all manner of implements. Your bonds easily survive your straining efforts as you cry and moan and whimper as the "testing" goes on and on. At times you think you recognise a repeat, as if she is going back and forth, narrowing her choices in some quasi-scientific process.<br>
<br>
Gasping and panting, the tears trickling under your blindfold mix with the drool leaking past your gag as you hang in your bonds, defeated.<br>
<br>
"@@.npc_psychiatrist;Mmmm, I think I have made my choice, you just stay here while I take things up to the register.@@"<br>
<br>
You let out a whining whimper as she gently strokes your tender behind. Light slowly fills your vision as the simulation falls away...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: outfit-bonus bondage hypnosis scene
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'bondage'>>
<</if>>
<<set $player.location to "A Fetish Store: Impact Toy Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
You reach for the hank of rope only to be stopped by a voice.<br>
<br>
"@@.npc_psychiatrist;Who said you could touch that?@@"<br>
<br>
Freezing in place you turn your head to find <<=setup.getNpcName('npc_psychiatrist', 'formal')>> standing behind you, though dressed as you have never seen in session — her attire a sexy domina outfit that has you weak in the knees.<br>
<br>
<<printThought "What's going on, I thought I was in a simulation?">><br>
<br>
Your confusion is answered as the room around you shimmers and fades, leaving you and what you now realise is merely a digital representation of <<=setup.getNpcName('npc_psychiatrist', 'formal')>> standing in the well lit void, empty save for the rope you were about to grab that is now hovering in mid-air.<br>
<br>
"@@.npc_psychiatrist;Hmm, so eager, but... you do not even have a collar! And really, aren't slaves supposed to be tied, rather than do the tying?@@"<br>
<br>
Dropping your hand to your side you nod obediently, the gag inside your hood giving you little other option for communication. Smiling she reaches past you to grab the rope. You turn around to find that she is now holding a leather collar to match your cuffs in her other hand.<br>
<br>
"@@.npc_psychiatrist;Come on, let's get you properly attired... slave.@@"<br>
<br>
Shivering in anticipation you lean forward and she pulls the collar around your neck, buckling it closed and then locking it in place with a click that, even in this dream world, sends a submissive shudder through your body.<br>
<br>
Reaching up to your mouth she removes the gag portion of your hood, temporarily granting you the ability to speak.<br>
<br>
"@@.npc_psychiatrist;So... now that you are all dressed up, what should I do with this?@@" She smiles as she twirls the rope in one hand.<br>
<br>
<<HypnosisSession5Options $player $scene.hypnoSession.theme>>
</div>/*#
#desc: hypnosis session 5 - bondage accept, embrace complete bondage
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Accept $player $scene 'bondage'>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "The Realm of Restraint">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
/* concept art: hypno_shibari_complex */
Breathless in anticipation you first thank her for the collar before you beg her to bind you "@@.pc;As tight as she can.@@"<br>
<br>
"@@.npc_psychiatrist;That is EXACTLY what I wanted to hear... open wide!@@" With a smile she slides the gag back into your mouth, snapping it onto the hood and then reaching for the blindfold. You blink a final time, <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> grinning expression your last sight before you lose all vision.<br>
<br>
She works swiftly and you feel an intricate harness of rope woven over your entire torso, <<if $player.body.breastsize[0]>0>>weaving around your breasts<<else>>criss-crossing your chest<</if>> and extending from your shoulders to your hips. You feel the ropes cinched tight — and then she pushes you forward.<br>
<br>
Your yelp of shock is muffled by your gag as you try to step forward to stay balanced only to find that she has somehow clipped your ankles together. Reaching out to catch yourself with your hands is equally futile as, instead of continuing to fall, you swing and dangle in midair, suspended face-down.<br>
<br>
"@@.npc_psychiatrist;Shhhh, my <<if $fetish.sissy>>sissy <</if>>slave, you are always safe with me, but we still have more tying to do before you are COMPLETELY mmm... helpless.@@"<br>
<br>
You feel her grab your wrists, pulling them forward and up before weaving ropes through and around your cuffs. Your legs are next, ankle hobble removed as they are separated and pulled up, one foot bound to the opposite knee with your other leg extending up, held in place by additional suspending ropes as well as even more rope pulling your wrists towards the extended ankle, arching your back further.<br>
<br>
More and more rope is added, robbing you of the slightest bit of mobility as she incorporates every restraint into a spiderweb of bondage. Finally, you feel her run a hand over your face and then... you can see!<br>
<br>
Well, not quite see, as your perspective is shifted, as if observing yourself from a few feet distance. You cannot help but gawk at the intricate shibari that covers your body. Winking in the direction of your viewpoint <<=setup.getNpcName('npc_psychiatrist', 'formal')>> gently grasps your collar, slowly rotating your dangling form in a circle.<br>
<br>
"@@.npc_psychiatrist;So, so beautiful@@" she whispers as the both of you revel in your wonderful, exciting bound position. You enjoy the feel of the restraints, flexing yet finding no give, hanging in helplessly bound bliss until the scene slowly fades...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 - bondage decline, resist, bound, face-fucked
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Decline $player $scene 'bondage'>>
<<set $scene.accept = false>>
<<applyExperience 'oral' $npc_psychiatrist.penis_size 'little' $SEEN_FRIEND>>
<<applyExperience 'penis' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "The Realm of Restraint">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
/* concept art: hypno_shibari_simple */
Trying to look as cute as you can you ask if she could maybe not tie you "@@.pc;Too tight?@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> stares at you for several moments before silently stepping forward and sliding the gag back into your mouth. Reaching towards the side of your face she snaps the blindfold over your eyes, removing every hint of vision.<br>
<br>
"@@.npc_psychiatrist;Not too tight... not quite the level of enthusiasm I had expected, to be honest, but... I will see what I can do...@@"<br>
<br>
She starts by tying your ankle cuffs together, followed by your wrists behind your back. True to her word they are not "too tight," as she leaves you about a dozen centimetres of play.<br>
<br>
Moving towards your torso you feel several loops of rope harnessing your shoulders and chest, <<if $player.body.breastsize[0]>0>>weaving between and around your breasts<<else>>snugly wrapping your upper chest<</if>> like a parody of a bra. Your hips are next, even more loops wrapping you at the hips, waist, and around each upper thigh.<br>
<br>
She steps away leaving you curious as to what is to come next, only for her to push you backwards!<br>
<br>
You try to stay balanced but your short hobbles are to short for your legs to keep up with your body and let out a gag-muffled cry as you brace for impact, only to be caught in midair by the ropes, leaving you hanging with your back to the floor, your arms and legs dangling downward.<br>
<br>
"@@.npc_psychiatrist;You sound so cute when you panic, but never worry, you are always safe when I am around...@@"<br>
<br>
Stroking your hooded face she adds a few more ropes, attaching your head to your wrists and ankles in a sort of loose inverted hogtie.<br>
<br>
"@@.npc_psychiatrist;There we go... not too tight?@@" She laughs "@@.npc_psychiatrist;Of course now we have so much time and... well, I think you ought to show me your appreciation for all the work I just did.@@"<br>
<br>
Unclipping your gag she pulls it out of your mouth. You start to vocalise a reply only to discover she has something different in mind by "appreciation." Her dainty cock slides past your lips as she uses a hand around your chest harness to bounce you back and forth for an inverted face-fuck.<br>
<br>
"@@.npc_psychiatrist;Mmmm, now THAT is gratitude! Oh you look so lovely, your pretty lips wrapped around my cute cock... here take a look.@@"<br>
<br>
You feel her fingers brush against your blindfold and then you can see! Well, not directly, but you can watch from above, a floating perspective that gives you a full view of the scene, your bound and suspended body bouncing back and forth with each thrust of her <<getWordPenis false>> past your wet lips.<br>
<br>
Muscles clenching with arousal you hump the sky in total futility, your only pleasure the bonds themselves and her lovely <<getWordPenis false>> sliding in and out of your mouth...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: outfit-bonus piss hypnosis scene
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'piss'>>
<</if>>
<<set $player.location to "A release queue?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
Stepping through the bathroom door there is a flash of light and then you stumble forward — not onto the cold tile floor of a bathroom, but the hard concrete of an alleyway.<br>
<br>
Looking around, you realise that you have just stepped out of a port-a-potty. Several meters distant there is a large line of <<if $options.fem>>women<<else>>people<</if>> waiting for... something?<br>
<br>
You don't have long to get your bearings when a well dressed, well, if you count a latex suit and jacket as well-dressed, attendant appearing in front of you.<br>
<br>
"@@.generic_male1;Good, you're ready to work. Great job on the advertisements, by the way.@@"<br>
<br>
Looking down, you realise that every degrading word you wrote on your flesh is clearly visible, "safely" protected under a full-body clear latex catsuit. Bringing your hands to your face confirms that the only gap is for your mouth, even your eyes are covered by a thin pair of integrated goggles.<br>
<br>
"@@.generic_male1;Well don't just stand there! There are full bladders all over here and even with your assistance we will hardly have enough facilities! Get to work.@@"<br>
<br>
<<HypnosisSession5Options $player $scene.hypnoSession.theme>>
</div>/*#
#desc: hypnosis session 5 - piss accept, eagerly find people to piss on/in you
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Accept $player $scene 'piss'>>
<<set $scene.accept = true>>
<</if>>
<<set $player.location to "A release queue?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
Licking your lips in anticipation you almost sprint towards the line. Dressed as you are, it isn't long before people notice you. Though your lewd bodywriting seem to take many aback there are several smiles and a <<man>> soon waves you over.<br>
<br>
"@@.generic_male2;Aye! You're quite the lifesaver, I've been holding this in for an hour and I really didn't want to lose my place in line!@@"<br>
<br>
Dropping to your knees, you open your mouth as <<his>> cock starts spraying its delicious amber nectar. <<His>> aim isn't perfect, splashing a bit on your chest, but your latex outfit keeps you dry and your bodywriting pristine until <<he>> can "walk <<his>> fire" up to your waiting lips.<br>
<br>
Leaning in close you suck it straight from the source rather than spill another drop, waiting until <<hes>> finished before licking <<him>> clean, tucking <<him>> in and zipping <<him>> closed.<br>
<br>
You have no time to bask in <<his>> thanks before someone further up the line is calling for you.<br>
<br>
"@@.generic_female1;Hey, get over here you piss-pot!@@" a woman shouts and you hurry your way up the line. Clamping your lips over her lower pair you guzzle down her spicy brew, already hearing your next customer calling out for "@@.generic_male3;Assistance.@@"<br>
<br>
The "floodgates opened," as it were, you are soon moving from cock to cunt, frequently not even having a chance to rise to your feet as you work your way up and down the line. Occasionally you catch a glimpse of one of the other "human urinals," one of which you would swear looks uncannily like <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, an author insertion easter egg? You can't be sure as you never see one of your fellow workers for more than a few moment before they zip out of sight or your vision blurs with a fresh stream of piss. What little you do see is that they share your latex garb, though lacking the brazen advertising that seems to make you the more popular choice.<br>
<br>
Guzzling piss like water you make good on every depraved word written across your skin, being peed on or in by dozens of people, sometimes more than one at once, with the odd face- or ass-fuck mixed in by those with empty bladders, but a still-burning urge to make use of your slutty body.<br>
<br>
Eventually the line starts to move and you don't even have to get up, kneeling in place as person after person passes by, spraying you as they pass with piss and cum. You try to drink as much as you can, but you are soon a slick, piss-soaked mess. As the simulation shimmers and fades you struggle to think of a time you were ever happier.<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 - piss decline, forcibly pissed on and in
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<HypnosisSession5Decline $player $scene 'piss'>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "A prerelease lineup?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGART">>
<div id="invframe" class="scrolltext">
Nervously you stand motionless only for someone in the line to finally notice you.<br>
<br>
"@@.generic_male2;Hey, slut! Get over here, I need to piss!@@" the <<man>> shouts.<br>
<br>
Blushing in embarrassment, you look around for somewhere to hide or run only to feel a hand on your arm. Looking over with a start you find another woman in a similar full latex outfit to yourself dragging you forwards towards the line. You do a double take when you realise that she looks sort of like <<=setup.getNpcName('npc_psychiatrist', 'formal')>>! It's hard to tell exactly since the latex hood somewhat blurs her appearance, but the resemblance is uncanny.<br>
<br>
"@@.npc_psychiatrist;Come on sister, we've got work to do!@@" She states before leaning in and speaking somewhat softer. "@@.npc_psychiatrist;Best to do what they ask, otherwise it'll be a bit more of a mess.@@"<br>
<br>
<<printThought "And she sounds like <<=setup.getNpcName('npc_psychiatrist', 'formal')>> too! I guess a bit of author insertion when she was programming this scene?">><br>
<br>
Stumbling along in a daze you soon find yourself kneeling at the feet of the loud <<man>> as <<he>> pulls out <<his>> cock and lets loose. You start to wince only for your new "friend" to helpfully hold your head, tilting you upwards and opening your mouth so the bitter <<getWordPiss>> can splash past your lips.<br>
<br>
"@@.npc_psychiatrist;There ya go, get the taste of it, now come on, we've got more work to do!@@"<br>
<br>
You hear another call from further up the line as she drags you along behind.<br>
<br>
This time you have two "clients," <<if $options.fem>>two women<<else>>a man and a woman<</if>>. Your new friend drops to her knees next to you and wraps her lips around the <<mans>> cock as you find your face pressed against the <<if $options.fem>>other<</if>> woman's lower lips.<br>
<br>
You cough once before surrendering to her flow, drinking her <<getWordPiss>> as she sighs in relief. Looking at your partner out of the corner of your eye you note the look of bliss on her face as she continuously swallows. Noticing your attention, she winks, letting her cheeks swell slightly before leaning back, holding the "defused" penis with one gentle hand as she reaches over and pulls you in.<br>
<br>
Your lips meet and a fresh gush of <<getWordPiss>> flows into your mouth, followed by your partner's tongue as she hugs you close and shares a long, passionate kiss until you finally swallow. Despite yourself you can't help but swoon slightly at her embrace, gasping when she eventually pulls back.<br>
<br>
"@@.npc_psychiatrist;Mmmm, you taste delicious, come on, there's a lot more where that came from!@@"<br>
<br>
A bit less reluctant this time, you follow your new friend up and down the line, either joining in or alternating who gets to play human urinal for each desperate client. The depraved words finished beneath your protective latex second skin seem to be garnering quite a bit of attention, and approval, and it isn't long before you find yourself pressed close to your new friend as almost half a dozen people at once shower you with <<getWordPiss>>, your heads tilted back, mouths open wide to catch as much as you can as the remainder splashes and trickles down your bodies, you and your partner groping each other the whole time.<br>
<br>
Exhausted and with a full belly the line starts to dissipate only for your friend to look at you with a smile. "@@.npc_psychiatrist;How about one more... for the road?@@" You blush, and then grin as she unzips a hidden flap in the crotch of her catsuit to reveal that, just as in real life, she's had a penis tucked away this whole time!<br>
<br>
Dropping to your knees, you unhesitantly wrap your lips around her small, soft member, enjoying how smooth and delicate it feels as she unleashes a delicious, delicious stream.<br>
<br>
The scene fades around you and she fades into the ether as you close your eyes and lick your lips...<br>
<br>
<<include "vrSessionEnd5">>
</div><<if $scene.hasOwnProperty('outfit') && $scene.outfit != "">>
<<switch $scene.outfit>>
<<case "cum">>
<<removeItemSet 'vr_slut_outfit'>>
<<deleteItemSet 'vr_slut_outfit'>>
<<cancelTmpEffect 'max_breasts'>>
<<case "foot">>
<<removeItemSet 'vr_sissy_outfit'>>
<<deleteItemSet 'vr_sissy_outfit'>>
<<case "bondage">>
<<removeItemSet 'vr_bondage_outfit'>>
<<deleteItemSet 'vr_bondage_outfit'>>
<<case "piss">>
<<removeItem 'body_writing_h' true>>
<<deleteItem 'body_writing_h'>>
<<case "penis">>
<<removeItem 'harness_plug_gag_h' true>>
<<deleteItem 'harness_plug_gag_h'>>
<<case "bdsm">>
<<removeItem 'spanking_skirt_black_h' true>>
<<deleteItem 'spanking_skirt_black_h'>>
<<case 'pup'>>
<<removeItem 'puppy_hood_black_h' true>>
<<deleteItem 'puppy_hood_black_h'>>
<<removeItem 'dog_plug_black_h' true>>
<<deleteItem 'dog_plug_black_h'>>
<<if setup.isItemEquipped('bitchsuit_black_h')>>
<<removeItem 'bitchsuit_black_h' true>>
<<deleteItem 'bitchsuit_black_h'>>
<</if>>
<<if $scene.plug != "">>
<<wearItem $scene.plug true>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != ''>>
<<wearItem _cage true>>
<<manipulateItem _cage 'lock' true>>
<</if>>
<</if>>
<<case 'pony'>>
<<removeItemSet 'vr_pony_outfit'>>
<<deleteItemSet 'vr_pony_outfit'>>
<</switch>>
<<set $scene.outfit = "">>
<</if>>
<<if $clothSetsInt.hasOwnProperty("vr_outfit")>>
<<useClothSetPop 'vr_outfit'>>
<</if>>/*#
#desc: hypnosis session 5 aftermath, wake up
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addHypnosisTask">>
<<include "removeHypno5Outfit">>
<<removeItem 'plugsuit_adv' true>>
<<deleteItem 'plugsuit_adv'>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<useClothSetPop 'hypnosis3'>>
<<if $scene.newExploration>>
<<if !$npc_psychiatrist.flags.cruel>>
<<set $npc_psychiatrist.free_sessions += 1>>
<</if>>
<<if $player.sec_style.sex.butt_plug == "money">>
<<addCredits 50>>
<<else>>
<<addCredits 40>>
<</if>>
<</if>>
<<if $scene.hypnoSession.theme=='reject'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 2>>
<<elseif $scene.accept>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<set $scene.firstRemember=!$npc_psychiatrist.flags.rememberHypno>>
<<set $npc_psychiatrist.flags.rememberHypno=true>>
<</if>>
<<if $scene.plug != "">>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You open your eyes to find yourself still in the VR therapy chair, but with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> gently removing the VR helmet.<br>
<br>
<<if $scene.hypnoSession.theme=='reject'>>
<<if $fetish.hypnosis>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;We had a bit of trouble on that one — hit a spot of a resistance for a moment and I thought things might go wrong, but a few tweaks, a bit more power to the simulation and your mind got right back on course. It wasn't perfect, mind, you really should focus on acceptance, that really is the best policy and fighting is only fighting against yourself, but, at least it wasn't a total waste!@@"
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns. "@@.npc_psychiatrist;A very disappointing — and night worthless, session. You know by now that acceptance is the best policy — these simulations are meant to help you better accept yourself, fighting against that will only lead to more stress. You should think on that before your next session. I know you volunteered so as to assist with my research but... well, I really want you to see the fruits of my process yourself but it only works if you embrace it.@@"
<</if>>
<<elseif $scene.accept>>
"@@.npc_psychiatrist;Oh, you're still alert... I guess that's even better, the adjustment to the "real world" is becoming smaller each time. This session... oh my, I have seldom seen such strong results! These new routines... they have brought your higher and lower consciousnesses into closer alignment than I would have ever dreamed possible before I started working on you! Oh, I am so, so proud of you, your development is just... I don't even have the words!@@"<br>
<br>
You smile.
<<if $scene.firstRemember>>
For the first time you remember everything that happened during the simulation, your total enthusiastic embrace of the events having bypassed the previous mental fog that would descend after the machines turned off.
<<else>>
You remember everything that happened during the simulation... every wonderful, wonderful thing...
<</if>>
<br><br>
A little reluctantly you slide out of the chair and make your way to the changing room, quickly stripping off the plugsuit while fantasising about your "virtual" attire. Changing back into your clothes, you make your way back to <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office where she takes a break from gleefully reviewing your results.
<<else>>
"@@.npc_psychiatrist;Oh, you're already awake. I have to say that I am quite impressed with the results of these new subroutines, though my preliminary results indicate that your mind is still struggling a bit with its deeper desires. Maybe next time, eh?@@"<br>
<br>
You nod. As always, you have no memory, save an overall pleasant fuzziness, as to what happened during your session, but you accept her help in rising from your seat and making your way into the changing room to strip off the plugsuit and put on your clothes. Heading back to <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office, you find her already pouring over the data gathered from your session.
<</if>>
<br><br>
<<if $scene.newExploration>>
"@@.npc_psychiatrist;Here are your <<if $player.sec_style.sex.butt_plug == "money">>fifty credits<<else>>forty credits<</if>><<if !$npc_psychiatrist.flags.cruel>>, and I'll add another free therapeutic session to your list<</if>>. I've gone ahead and put you into the system for the next VR session as well<<if $npc_psychiatrist.flags.cruel>>.<<else>>, is that okay?<</if>>@@"
<<else>>
"@@.npc_psychiatrist;Unfortunately your efforts today provided no usable data. Science, and your own self-discovery, only advance through exploration and I am afraid I cannot credit you with anything if you are going to merely retread old ground. Consider this for your next visit. I have gone ahead and put you into the system for another VR session<<if $npc_psychiatrist.flags.cruel>>.<<else>>, is that okay?<</if>>@@"
<</if>>
<br><br>
As usual that is not a question, but more a statement. Someone should really explain the difference between those two things to her one day. Not you, though, and not today, you consider as she continues without losing even a single second.<br>
<br>
"@@.npc_psychiatrist;That would be
<<if setup.getUTCDay($now) == 0>> /% sunday to wednesday %/
next Wednesday,
<<else>> /% wednesday to sunday %/
next Sunday,
<</if>>
<<if $options.militaryTime>>19:00<<else>>seven o'clock in the evening<</if>>. Show up if you want to unlock everything hiding deep within your mind.@@"<br>
<br>
<<printThought "Why does she always have to be so cryptic?">><br>
<br>
"@@.npc_psychiatrist;I'm not going to detain you any longer, so have a nice evening.@@" You take your cue and bid her farewell.<br>
<br>
<<if $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = true>>'>>]
<</if>>
</div>/*#
#desc: hypno fantasy realm
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.bestiality_hypno < 1>>
<<set $npc_psychiatrist.flags.bestiality_hypno = 1>>
<</if>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png" setup.charImageGeneric("satyr_01")>>
<div id="invframe" class="scrolltext">
You push on the back of the wardrobe and it swings open onto a dark passage. Leaning forward to try and peer in you lose your balance, falling forward and tumbling through the air.<br>
<br>
You land with a thud, but no pain and a strong, but gentle hand reaches to help you up.<br>
<br>
<<if $npc_psychiatrist.flags.bestiality_hypno == 1>>
"@@.generic_male1;Welcome, visitor.@@"<br>
<br>
You look up to trace a pair of hairy, cloven-hoofed legs up to a large, dangling cock, bronze washboard abs, <<if $options.fem>>a pair of small breasts <</if>>and finally a horned head as what you now recognise as a satyr helps you to your feet.<br>
<br>
On your feet you see <<his>> <<getWordPenis>> twitch, swelling larger as it rises and you recall the myths of such beasts nigh-insatiable lusts...<br>
<br>
<<if setup.getTotalValue("bestiality") >= 13>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_satyr_accept' 'Embrace this lusty opportunity.' 1800 "<<set $scene.spendWillpower=false>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_satyr_accept')>>">>]<br>
<<elseif setup.getWillpower() > 0>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_satyr_accept' 'Embrace this lusty opportunity.' 1800 "<<set $scene.spendWillpower=true>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_satyr_accept')>>">>]<br>
<<else>>
[@@.link_locked;This is too much, and you don't have the mental energy to throw yourself into it.@@]
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_satyr_decline' 'Just try to survive <<his>> attention.' 1800 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_satyr_decline')>>">>]<br>
<<elseif $npc_psychiatrist.flags.bestiality_hypno == 2>>
"@@.generic_male1;Welcome back, friend.@@"<br>
<br>
Your gaze is drawn to the Satyr and <<his>> massive, wonderful <<getWordPenis>>.<br>
<br>
"@@.generic_male1;Will you stay, or will you explore deeper into our realm? The Queen awaits those of strong will and pure desire.@@"<br>
<br>
Looking beyond the clearing you find that things quickly descend into a deep, dark, vine-entangled forest...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_satyr_accept' 'Go another round with the satyr.' 1800>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_1' 'Set out through the forest.' 1800>>]<br>
<<elseif $npc_psychiatrist.flags.bestiality_hypno == 3>>
"@@.generic_male1;Welcome back, friend.@@"<br>
<br>
Your gaze drifts past the Satyr and <<his>> massive, wonderful <<getWordPenis>> to the path leading through the vine-filled forest.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_satyr_accept' 'Go another round with the satyr.' 1800>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_tentacle_accept' 'Throw yourself into the forest.' 1800>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_2' 'Follow the path through the forest.' 1800>>]<br>
<<elseif $npc_psychiatrist.flags.bestiality_hypno == 4>>
"@@.generic_male1;Welcome back, friend.@@"<br>
<br>
Your gaze drifts past the Satyr and <<his>> massive, wonderful <<getWordPenis>> to the path leading through the vine-filled forest, and the Queen's palace beyond...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_satyr_accept' 'Go another round with the satyr.' 1800>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_tentacle_accept' 'Throw yourself into the forest.' 1800>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_3' 'Journey to the temple.' 1800>>]<br>
<<else>>
"@@.generic_male1;Welcome back, friend.@@"<br>
<br>
Your gaze drifts past the Satyr and <<his>> massive, wonderful <<getWordPenis>> to the path leading through the vine-filled forest, and the Queen's palace beyond...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_satyr_accept' 'Go another round with the satyr.' 1800>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_tentacle_accept' 'Throw yourself into the forest.' 1800>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_naga_intro' 'Visit the High Priestess.' 1800>>]<br>
<</if>>
<<if $scene.rejectFailed>>
[@@.link_locked;You cannot reject reality.@@]
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_reject' 'Reject this reality!' 1800>>]
<</if>>
</div>/*#
#desc: reject hypno fantasy realm
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png" setup.charImageGeneric("satyr_01")>>
<div id="invframe" class="scrolltext">
<<printThought "This isn't, CAN'T BE, real...">><br>
<br>
You grit your teeth, as fantastical as the environment around is, as disturbingly enticing as are its forbidden pleasures. It isn't real, you're in virtual reality and you aren't going to...<br>
<br>
<<if $fetish.hypnosis>>
Like a rubber band stretching and then snapping back into your face the simulation comes back even stronger, pressing against you with irresistible power...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_root' 'Continue.' 60 "<<set $scene.rejectFailed=true>>">>]
<<else>>
<<printThought "I reject this fantasy! This is not what I am!">>.<br>
<br>
<<include "vrSessionEnd">>
<</if>>
</div>/*#
#desc: hypno fantasy realm - explore forest
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png" setup.charImageGeneric("satyr_01")>>
<div id="invframe" class="scrolltext">
Waving good-bye to your satyr friend you head into the forest, following a narrow path that winds between trees, the dense canopy soon closing in until everything is in shadow, vines brushing against your arms as you slowly make your way forward.<br>
<br>
<<if $fetish.tentacle>>
As you continue to move deeper it feels like the vines are almost reaching out towards you. More than once you are forced to pause to untangle an ankle or a wrist. You trip, throwing out your hands to catch yourself only for a heavy vine around your waist to yank you into the air. You gasp as more vines reach out, curling around your limbs, their blunt tips curving to face you as you realise this is more than just an accident.<br>
<br>
The vine approaches closer as you feel another wet vine tip pressing against your rear...<br>
<br>
<<if setup.getTotalValue("bestiality") >= 13>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_tentacle_accept' 'Relax and spread yourself, your body is open for exploration.' 1800 "<<set $scene.spendWillpower=false>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_tentacle_accept')>>">>]<br>
<<elseif setup.getWillpower() > 0>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_tentacle_accept' 'Focus your will, relax, and enjoy.' 1800 "<<set $scene.spendWillpower=true>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_tentacle_accept')>>">>]<br>
<<else>>
[@@.link_locked;This is too much, and you don't have the mental energy to throw yourself into it.@@]<br>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_tentacle_decline' 'Just try to survive the vines.' 1800 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_tentacle_decline')>>">>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;You're too deep, you cannot reject this artificial reality.@@]<br>
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_reject' 'Reject this reality!' 1800>>]
<</if>>
<<else>>
Though the vines are bothersome you manage to make your way through and the jungle begins to thin out. Before long you find yourself at the foot of a great temple, great snake creatures carved from stone flanking the entrance like great guards.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_2' 'Enter the temple.' 600>>]
<</if>>
</div>/*#
#desc: hypno fantasy realm - temple
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.bestiality_hypno < 4>>
<<set $npc_psychiatrist.flags.bestiality_hypno = 4>>
<</if>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_exterior.png">>
<div id="invframe" class="scrolltext">
You make your way into the temple where you are greeted by silent acolytes.
<<if (!$fetish.piss || setup.hasThreshold('piss', 'hypnosis_piss', "10")) && (!$fetish.cum || setup.hasThreshold('cum', 'hypnosis_cum', "10")) && setup.hasThreshold('penis', 'hypnosis_penis', "10") && setup.hasThreshold('foot', 'hypnosis_foot', "10") && setup.hasThreshold('bondage', 'hypnosis_bondage', "10") && setup.hasThreshold('bdsm', 'hypnosis_bdsm', "10")>>
Though otherwise humans their eyes are the vertical slits of a snake and they greet you with fanged smiles, leading you into the temple and to a great antechamber, at the end of which there is a massive door. Instinctively you know that beyond the door is the High Priestess, but to make audience you must first win her favour in a series of trials.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_trial_root' 'Look around.' 600>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_trial_quit' 'Give up and leave.' 1800>>]
<<else>>
As you attempt to approach closer you are rebuked. They look on you and shake their heads, barring you from the temple and leaving you feeling unworthy.<br>
<br>
<<printThought "Hmm... maybe if I mastered the remaining VR therapy challenges they would let me past?">><br>
<br>
<<if $fetish.hypnosis>>
<<include "vrSessionEnd5">>
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_reject' 'Reject this reality!' 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: hypno fantasy realm - High Priestess trial bestiality intro
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_exterior.png">>
<div id="invframe" class="scrolltext">
The forest seems to part in front of you as you easily make your way to the temple. As you approach the massive stone structure the acolytes that tend it turn in your direction, keenly aware of your presence.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_2' 'Continue.' 60>>]
</div>/*#
#desc: hypno fantasy realm - fuck satyr
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 12 'normal' $ALONE>>
<<set _analSkill = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _analSkill 'terrible' $ALONE>>
<<applyExperience 'bestiality' 13 'terrible' $ALONE>>
<<set $scene.accept = true>>
<<setThreshold 'bestiality' 'other_bestiality' 'satyr_advanced'>>
<<if $npc_psychiatrist.flags.bestiality_hypno < 2>>
<<set $npc_psychiatrist.flags.bestiality_hypno = 2>>
<</if>>
<<if $scene.spentWillpower && !$npc_psychiatrist.flags["willpower_bestiality"]>>
<<set $player.willpower.bonus += 1>>
<<set $npc_psychiatrist.flags["willpower_bestiality"] = true>>
<<addPopUpText "will" "Your maximum willpower increases.">>
<</if>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png" setup.charImageGeneric("satyr_01")>>
<div id="invframe" class="scrolltext">
You drop to your knees, taking the satyr's massive <<getWordPenis>> in hand as <<he>> smiles. <<His>> gives you a moment to admire it, the massive, pulsing rod of flesh rising out from the surprisingly soft fur of <<his>> lower half. Bigger and more fantastical than any natural human member your lips part and you lean in, the flavour hot and earthy, with a strange tingle of magic that sparkles on your tongue.<br>
<br>
In a burst of speed and primal strength the satyr suddenly lifts you into the air. Tossing you around as if you weighed nothing, <<he>> spins you in mid-air and then drops you ass-first onto <<his>> cock, the magic of the simulation meaning that the entire length slides into you, your belly bulging at the intrusion as you feel perfectly, utterly, wonderfully, filled.<br>
<br>
You gasp and moan as <<he>> bounces you on <<his>> cock, the intensity of sensation that is the glorious obelisk repeatedly plunging into you nigh overwhelming. You moan, your attention fracturing, as you find yourself focusing on the way <<his>> fur tickles your rear at the bottom of each thrust, the rough texture of bark as <<he>> slams you up against a tree, the hard muscles of <<his>> strong back as your arms cling desperately, <<his>> primal, animalistic scent...<br>
<br>
You cum, the intensity of your climax causing the world to flicker and then shatter...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypno fantasy realm - survive satyr
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 10 'very' $ALONE>>
<<set $scene.accept = false>>
<<setThreshold 'bestiality' 'other_bestiality' 'satyr_basic'>>
<<set _analSkill = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _analSkill 'terrible' $ALONE>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/clearing.png" setup.charImageGeneric("satyr_01")>>
<div id="invframe" class="scrolltext">
You gasp and scramble to your feet, looking around to discover the portal you entered from is no more. Staring in awe at <<his>> growing <<getWordPenis>> you take a step back, but <<he>> moves closer. Cloven hoofs landing step gently over the grass, the strange movement of <<his>> hips thanks to <<his>> inhuman legs making <<his>> cock bounce, sprinkling you with a few drops of pre-cum...<br>
<br>
"@@.generic_male1;This is my clearing, you know... and passing through it means paying a toll...@@"<br>
<br>
Your slow back-stepping sees you gently bump into a tree. <<He>> closes the distance and leans in. Hot lips meet yours, one of <<his>> horns gently brushing your cheek.<br>
<br>
With supernatural strength <<he>> raises you up and spins you around, <<his>> massive <<getWordPenis>> plunging into you and lifting you off the ground.<br>
<br>
You moan as <<he>> slams into you and you, in turn, slam into the tree. There must be something about the mechanics of <<his>> goat legs because <<he>> jackhammers up and down faster than almost anything you've ever felt, <<his>> hot, fleshy cock acting like a fucking machine and a vibrator all in one, filling you, fucking you and showing no signs of stopping...<br>
<br>
As <<he>> moves to a different position your vision starts to fade, the creature unleashing <<his>> insatiable lusts on your digital body as you detach and drift back towards reality...<br>
<br>
<<printThought "Turning <<him>> down was so rude... maybe if I was a more friendly guest <<he>>'d let me pass...">><br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypno fantasy realm - embrace tentacles
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 15 'terrible' $ALONE>>
<<set $scene.accept = true>>
<<if $npc_psychiatrist.flags.bestiality_hypno < 3>>
<<set $npc_psychiatrist.flags.bestiality_hypno = 3>>
<</if>>
<<setThreshold 'bestiality' 'tentacles' 'vines_advanced'>>
<<if $scene.spentWillpower && !$npc_psychiatrist.flags["willpower_bestiality"]>>
<<set $player.willpower.bonus += 1>>
<<set $npc_psychiatrist.flags["willpower_bestiality"] = true>>
<<addPopUpText "will" "Your maximum willpower increases.">>
<</if>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'terrible' $ALONE>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<applyExperience 'bondage' 17 'terrible' $ALONE>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/jungle.png" "./images/characters/tentacles.png">>
<div id="invframe" class="scrolltext">
You surrender to the vines, enjoying the way they wrap and entwine your body, parting your lips and spreading your legs to welcome their further exploration.<br>
<br>
Aggressively, they comply, a trio of vines plunging into your rear while a single thick one thrusts down your throat. Your eyes roll back and you moan, even more vines wrapping your body, squeezing you tighter, restraining you from moving as they stroke and caress... and most of all, fuck.<br>
<br>
The trio of vines inside your rear fan out, one coiling against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> while the other two probe deeper and deeper, twisting around each other to make you feel every centimetre that slides into your hole, the writhing stimulation as they attempt to take root in your ass making you moan around their even thicker brother sliding past your lips.<br>
<br>
The wide vine bulging your throat fills your vision, green and subtly ribbed it sweats with sweet, delicious sap, a tasty lubricant to help it slide even further into your body. In the real world it would certainly have cut off your air but here, in the magical realm of fantasy, you can enjoy the never-ending throat-fuck, the sensation of being used and controlled pushed even higher when another vine wraps around your neck.<br>
<br>
Choked twice over, with even more tentacles <<if $player.body.breastsize[0]>0>>coiling around your breasts<<else>>teasing your nipples<</if>> and setting up a party in your ass you dangle in the air, violated, bound and in utter bliss...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypno fantasy realm - survive tentacles
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 13 'very' $ALONE>>
<<set $scene.accept = false>>
<<setThreshold 'bestiality' 'tentacles' 'vines_basic'>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/jungle.png" "./images/characters/tentacles.png">>
<div id="invframe" class="scrolltext">
You tense and strain against the vines but they are far stronger than you are, lifting you into the air and pulling arms and legs away from your body to leave you totally exposed. Your head whips around as you try to keep track of more and more vines curling around you, their blunt tips looking eerily similar to a multitude of prehensile cocks, looking at you and dripping with lust.<br>
<br>
There is a brief stare-down as you hold your breath and then an explosion of motion as the vines rush towards you. Already bound and spread you can offer no resistance as twin vines twist into your rear, your gasp of shock clearing the way for one of their siblings to dive down your throat. The remaining vines that failed to win the race to your holes instead probe your body, teasing you from every direction as they coil and stroke, strangely tender compared to the rough double penetration being meted out by their siblings.<br>
<br>
Your eyes flutter as you realise you are being pulled even higher into the forest canopy, vines passing you off from one to the other as they take turns violating both of your holes. You groan, your struggles fading as your arms become weak, the aphrodisiac stimulation of whatever sap the vines sweat as lubricant making things blur and slow...<br>
<br>
<<printThought "Maybe this isn't so bad... maybe resisting the forest is the wrong thing to do...">><br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 - bestiality dog/pet play intro; human pup
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.outfit == "pup">>
<<addItem 'bitchsuit_black_h'>>
<<wearItem 'bitchsuit_black_h' true>>
<</if>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.outfit != "pup">>
You reach for the leash, but your hand passes through it and you get the feeling that you are not properly dressed for "walkies." <br>
<br>
<<printThought "Hmm, maybe if I was wearing something else...">><br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_choose' 'Look around the room.' 0>>]
<<else>>
You reach for the leash only for your elbow to bend towards you instead. Your hands pulled towards your shoulders you fall forwards as your feet are similarly pulled towards your butt. Gently lowered to the ground you find yourself on all fours, bound in a bitchsuit as you hear a pair of boots walk over to stand next to you.<br>
<br>
"@@.npc_psychiatrist;Aww, is someone eager for walkies?@@" You look up to find a digital version of <<=setup.getNpcName("npc_psychiatrist","formal")>> smiling down at you.<br>
<br>
She pats your head before clipping the leash to a collar that has appeared around your neck. "@@.npc_psychiatrist;Come on, girl, let's go for a walk!@@"<br>
<br>
A happy yip escapes your gag as you trot after her, on knees and elbows thanks to the bitchsuit as you follow along at her heels.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_dog_2' 'Walkies!' 1800>>]
<</if>>
</div>/*#
#desc: hypnosis session 5 - bestiality dog/pet play in park
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'very' $ALONE>>
<<applyExperience 'submission' 15 'normal' $ALONE>>
<<applyExperience 'anal' 15 'normal' $ALONE>>
<<applyStress -10>>
<</if>>
<<set $player.location to "A Dog Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dog_park.png">>
<div id="invframe" class="scrolltext">
Your restraint-shortened limbs moving quickly to keep up with <<=setup.getNpcName("npc_psychiatrist","formal")>> she takes you out the door and then on a short walk to come to a park.<br>
<br>
Feeling the urge to run ahead you come up short on the leash as <<=setup.getNpcName("npc_psychiatrist","formal")>> reins you in before leading past some other owners and their pets to an open clearing. Kneeling down she unclips your leash and strokes your back before showing off a bright red ball. "@@.npc_psychiatrist;How about a game of fetch? I bet you could use the opportunity to burn off some energy.@@"<br>
<br>
She throws the ball and you reflexively bound after it, not even considering how you will pick it up given your gagged and restrained situation until you reach the ball and it attaches itself to your muzzle. Rushing back to your owner the ball drops at her feet and she throws it again. Joyfully you run after it, tail plug wagging the whole time.<br>
<br>
Panting through the gag you keep racing after each throw of the ball until a particularly hard hurl sees it bouncing past another hound who out-races you to it.
<<if $fetish.bestiality_hard>>
A good head taller than you are the large mastiff drools as he stalks dominantly towards you. Feeling suddenly small your gaze flits between the large dog and your respective owners racing over.
<<else>>
Attired in an outfit similar to your own the human pup sits back on <<his>> haunches, in so doing displaying <<his>> hard, dripping cock...
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_dog_accept' 'Submit to <<if $fetish.bestiality_hard>>him<<else>><<him>><</if>>...' 120 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_dog_accept')>>">>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_dog_decline' 'Wait for your owner to intervene.' 120 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_dog_accept')>>">>]
</div>/*#
#desc: hypnosis session 5 - bestiality human pup accept
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.accept = true>>
<<applyExperience 'anal' 15 'normal' $EXPOSED>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 6 'normal' $EXPOSED>>
<</if>>
<<applyExperience 'submission' 13 'very' $EXPOSED>>
<<set $npc_psychiatrist.flags.petplay_hypno.pup = true>>
<</if>>
<<set $player.location to "A Dog Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dog_park.png">>
<div id="invframe" class="scrolltext">
You drop your face to the dirt in submission to the obvious alpha.
<<if $fetish.bestiality_hard>>
His large paws thump on the grass as he stalks around behind you. Rearing up behind your raised ass he takes you, his large cock knotting in your ass as he ruts away.
<<elseif $fetish.bestiality_soft>>
<<His>> large paws thump on the grass as <<he>> stalks around behind you. Rearing up behind your raised ass <<he>> takes you, <<his>> large cock plunging into your hole then swelling wider as <<he>> somehow knots in your ass!
<<else>>
<<His>> large paws thump on the grass as <<he>> stalks around behind you. Rearing up behind your raised ass <<he>> takes you, <<his>> large cock taking a moment of fumbling before thrusting into your ass.
<</if>>
<br><br>
You moan as you take it deep, biting down on your gag and looking up to see <<=setup.getNpcName("npc_psychiatrist","formal")>> and the magnificent beast's owner arrive. The other woman starts to pull her pet off but <<=setup.getNpcName("npc_psychiatrist","formal")>> stops her. "@@.npc_psychiatrist;No, let them play. My bitch loves this sort of thing...@@"<br>
<br>
You moan in agreement as your new "friend" pants in your ear,
<<if $fetish.bestiality_hard>>
his long tongue licking the side of your face as he drools and barks happily, his claws on your back just enough to remind you that you are being bred by a beast...
<<else>>
<<his>> leather muzzle nuzzling against your mask as <<he>> gives it to you hard; <<his>> elbows pressing you firmly into the ground as <<he>> pounds away.
<</if>>
"@@.generic_female1;That she does,@@" the woman agrees, looking down with a smile, coiled leash casually held at her side as she lets things continue on.<br>
<br>
You look to the side and realise that several other people and pets have gathered around to watch you, and you half wonder if this is just round one as your partner thrusts a little deeper and you completely surrender to the fantasy as the simulation slowly fades...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 - bestiality human pup decline
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "A Dog Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dog_park.png">>
<div id="invframe" class="scrolltext">
Before anything can happen between you and the alpha your owners arrive to pull the two of you apart.<br>
<br>
"@@.npc_psychiatrist;There there, I've got you.@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> coos as the simulation fades...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 - bestiality pony play intro
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Horse Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png">>
<div id="invframe" class="scrolltext">
<<if $scene.outfit != "pony">>
You try to leave the room and head for the stables, but the world seems to stretch, the stables unreachable as you remain effectively standing still no matter how fast you try to run.<br>
<br>
<<printThought "Hmm... feels like I need to be wearing something different to enter this area...">><br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_choose' 'Look around the room.' 0>>]
<<else>>
You venture out towards the stables only to hear a voice from behind.<br>
<br>
"@@.npc_psychiatrist;There you are!@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> states as you turn around to find a digital rendition of your therapist standing with a long whip in one hand, a set of long reins in the other.<br>
<br>
"@@.npc_psychiatrist;How did you get out of your stall?@@" She asks as she clips the reins to either side of your bridle. "@@.npc_psychiatrist;Come along, it is time for your training!@@"<br>
<br>
She gives you a light tap on the rear with the whip before leading off, your pony-boots clopping with each step as you follow her through the stables and into a round training area.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_horse_2' 'Continue.' 1800>>]
<</if>>
</div>/*#
#desc: hypnosis session 5 - bestiality pony play dressage training
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Horse Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png">>
<div id="invframe" class="scrolltext">
Letting out the reins <<=setup.getNpcName("npc_psychiatrist","formal")>> stands in the centre of the arena and begins to guide you through a dressage routine.<br>
<br>
Under your trainer's gaze — and crop — you prance proudly, raising your knees high with each step as you trot, turn and leap. The leather straps of your intricate harness dig into your skin as you strain to meet every command, standing tall atop the steep pony boots with your chin high and chest thrust forward.<br>
<br>
"@@.npc_psychiatrist;Good <<=setup.getBoyGirl($npc_psychiatrist)>>!@@" She calls out in encouragement as you strain to obey, dancing around the arena to the slightest twitch of the reins or crack of the whip.<br>
<br>
You are glistening with sweat and beaming with pride by the time <<=setup.getNpcName("npc_psychiatrist","formal")>> calls a stop, leading you to a trough where she pats you down with a wet sponge to help you cool off.<br>
<br>
As you catch your breath another trainer walks in leading another horse. You gaze in awe at the gorgeous creature, no mere pony,
<<if $fetish.bestiality_hard>>
he is a huge, pure-bred stallion, the only thing distracting you from his perfect muscles his equally firm and wondrous looking cock...
<<else>>
<<he>> is a true stallion — <<if $options.fem>>large breasts and washboard abs that look<<else>>chest and washboard abs looking<</if>> muscled enough to snap the thick leather of <<his>> harness. <<His>> thick, sculpted legs rise above <<his>> hoof-boots like twin columns, coming together where <<his>> gloriously large member is kept ever-hard by a thick cock-ring.
<</if>>
<br><br>
The other trainer stops and greets <<=setup.getNpcName("npc_psychiatrist","formal")>> with a nod.
<<if $fetish.bestiality_hard>>
"@@.generic_female1;Don't suppose your <<=setup.getBoyGirl($npc_psychiatrist)>> is up for a bit more? After the run we just had I think my boy could do with a reward, and he probably needs to burn off a bit more energy before he's ready to get back in his stall...@@"<br>
<br>
You look at your opposite number as he paws the ground and gnaws on his bit gag in anticipation, seemingly just waiting for permission to unleash himself upon you...<br>
<<else>>
"@@.generic_female1;Don't suppose your <<=setup.getBoyGirl($npc_psychiatrist)>> is up for a bit more? After the run we just had I think my <<boy>> could do with a reward, and <<he>> probably needs to burn off a bit more energy before <<hes>> ready to get back in <<his>> stall...@@"<br>
<br>
You look at your opposite number as <<he>> paws the ground and gnaws on <<his>> bit gag in anticipation, seemingly just waiting for permission to unleash <<himself>> upon you...<br>
<</if>>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_horse_accept' 'Submit to <<if $fetish.bestiality_hard>>him<<else>><<him>><</if>>...' 120 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_dog_accept')>>">>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_horse_decline' 'Wait for your owner to intervene.' 120 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_dog_accept')>>">>]
</div>/*#
#desc: hypnosis session 5 - bestiality pony play intro
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.accept = true>>
<<applyExperience 'anal' 18 'very' $EXPOSED>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 11 'normal' $EXPOSED>>
<</if>>
<<applyExperience 'submission' 13 'very' $EXPOSED>>
<<set $npc_psychiatrist.flags.petplay_hypno.pony = true>>
<</if>>
<<set $player.location to "Horse Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.bestiality_hard>>
In a matter of moments you find yourself bent over a breeding pole, legs spread and ass on offer as the stallion rises up, his large hooves raised up and planted on either side of you as his massive horse-cock plunges into your rear.
<<else>>
<<His>> arms harnessed behind <<his>> back to better show off <<his>> <<if $options.fem>>large<<else>>handsome<</if>> chest the stallion waits for <<his>> trainer to helpfully align <<his>> cock with your ass before <<he>> pushes into you,
<<if $fetish.bestiality_soft>>
the familiar frilled head of <<his>> horse-like cock spreading you wide as <<he>> presses you up against a wall and plunders your ass.
<<else>>
a gloriously massive cock thrusting into you with all of <<his>> power.
<</if>>
<</if>>
You moan around your bit gag as you are filled; the long cock going so deep you half expect it to pop out the other end. Instead it soon establishes a strong rhythm, powerful muscles that dwarf your own lending it power as it pounds in and out of you like the piston on a freight train.<br>
<br>
You look over at the two trainers watching with a smile. <<=setup.getNpcName("npc_psychiatrist","formal")>> looks upon you with pride and you moan with delight, her approval only enhancing the pleasurable blend of the hard fucking as you flex against your leather restraints and enjoy being bred like a mare...<br>
<br>
However hard your partner may have trained beforehand
<<if $fetish.bestiality_hard>>
his stamina now is nigh mythic as he gives it to you long and deep; his
<<else>>
<<his>> stamina now is nigh mythic as <<he>> gives it to you long and deep; <<his>>
<</if>>
cock gliding in and out of you, each thrust roaring <<if $player.body_ref.penis>>past your prostate<<else>>deeper<</if>> as it stretches you in every direction. Suddenly next to you <<=setup.getNpcName("npc_psychiatrist","formal")>> whispers in your ear as the thrusting cock lifts you off the floor. "@@.npc_psychiatrist;That's a good breeding mare, you take that <<if $fetish.bestiality_hard>>horse-<</if>>cock like a natural, like you were born to have a foot of <<if $fetish.bestiality_hard>>equine meat<<elseif $fetish.fem>>thick lady-cock<<else>>man-meat<</if>> in your ass. Now get ready, because <<if $fetish.bestiality_hard>>he's<<else>><<hes>><</if>> about to fill you with cum...@@"<br>
<br>
You shudder, feeling the end approaching as <<if $fetish.bestiality_hard>>he<<else>><<he>><</if>> quickens <<if $fetish.bestiality_hard>>his<<else>><<his>><</if>> pace a final time before a blast-like climax has you literally seeing stars as you pitch your head back.<br>
<br>
The simulation fades...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 - bestiality pony play intro
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "Horse Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png">>
<div id="invframe" class="scrolltext">
You shake your head. The bells on your harness respond by jangling merrily. The other trainer shrugs and continues on. "@@.generic_female1;Come on, <<if $fetish.bestiality_hard>>boy<<else>><<boy>><</if>>, guess we need to just walk it off...@@"<br>
<br>
You watch the magnificent <<if $fetish.bestiality_hard>>beast<<else>>man<</if>> go as the simulation fades...<br>
<br>
<<include "vrSessionEnd5">>
</div>/*#
#desc: hypnosis session 5 trial aftermath
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeHypno5Outfit">>
<<removeItem 'plugsuit_adv' true>>
<<deleteItem 'plugsuit_adv'>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<<useClothSetPop 'hypnosis3'>>
<<if $fetish.hypnosis>>
<<include "addHypnosisTask">>
<</if>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wake up from the VR therapy feeling... disappointed. <<=setup.getNpcName("npc_psychiatrist","formal")>> helps you out of the chair with a conciliatory frown.
<<if $fetish.hypnosis>>
"@@.npc_psychiatrist;You seemed so close to the culmination of my work... and yet you flinched away. I suppose we shall just have to try again next time. Until then my lovely guinea pig!@@"<br>
<br>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
<<else>>
"@@.npc_psychiatrist;I am afraid that I am yet working on this final piece of research... I am certain it will be the perfect culmination of all that I have worked for, and you seem so very ready for it. Alas... science takes time, but someday... since you have achieved all there is I will not bother you with further appointments. You may speak with me at one of our normal sessions if you feel a deep need, but there is little additional data I could glean so I will not pester you about it.@@"<br>
<br>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
<</if>>
</div>/*#
#desc: hypno fantasy realm - trial root
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_testing.png">>
<div id="invframe" class="scrolltext">
You look around the chamber, towards its centre where rises
<<if $fetish.piss>>
two fountains. One flows with golden liquid, a ring of statues spraying arcs over a central platform... one in which, you realise, a person could stand for an endless golden shower...<br>
<br>
The second fountain is of endless <<getWordCum>>.
<<else>>
a single fountain.
<</if>>
Rivers of cum pooling and flowing down marble statues of half a dozen figures wrapped around each other in an orgy of lust, the thick, pungent cream passing from mouth to mouth, dribbling out of holes, flowing over breasts, and endless tribute to bukkake dream.<br>
<br>
The final "obstacle" in the room is a spiral sculpture of cocks — penises of all shapes and sizes making up an imposing edifice, rising terraces of strikingly realistic looking phalli forming a spiral terrace surrounding a single cock that is as wide as you are and half again taller than even your highest heel-assisted stature.<br>
<br>
<<if setup.hasThreshold('penis', "hypnosis_penis", "final") && (!$fetish.cum || setup.hasThreshold('cum', "hypnosis_cum", "final")) && (!$fetish.piss || setup.hasThreshold('piss', "hypnosis_piss", "final"))>>
At the end of the chamber the great door stands open. It would seem that you have proven your devotion. Beyond the door a stairwell leads upwards...
<<else>>
At the end of the chamber a great door stands firmly closed. It would seem that you have not yet proven your devotion.
<</if>>
<br><br>
<<if setup.hasThreshold('penis', "hypnosis_penis", "10")>>
<<if setup.hasThreshold('penis', "hypnosis_penis", "final")>>
[@@.link_locked;You have proven your devotional love for cock.@@]<br>
<<elseif $scene.penis_attempt>>
[@@.link_locked;You have tried, and failed, to prove your unending love of cock, maybe with more real world experience?@@]<br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_trial_penis_1" "Approach the monument to cock." 60>>]<br>
<</if>>
<</if>>
<<if $fetish.cum && setup.hasThreshold('cum', "hypnosis_cum", "10")>>
<<if setup.hasThreshold('cum', "hypnosis_cum", "final")>>
[@@.link_locked;You have proven your eternal hunger for cum.@@]<br>
<<elseif $scene.cum_attempt>>
[@@.link_locked;You have tried, and failed, to prove your never-ending hunger for cum, maybe with more real world experience?@@]<br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_trial_cum_1" "Baptise yourself in cum." 60>>]<br>
<</if>>
<</if>>
<<if $fetish.piss && setup.hasThreshold('piss', "hypnosis_piss", "10")>>
<<if setup.hasThreshold('piss', "hypnosis_piss", "final")>>
[@@.link_locked;You have proven your unending thirst for piss.@@]<br>
<<elseif $scene.piss_attempt>>
[@@.link_locked;You have tried, and failed, to prove your endless thirst for piss, maybe with more real world experience?@@]<br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_trial_piss_1" "Stride into the centre of the shower of piss." 60>>]<br>
<</if>>
<</if>>
<<if setup.hasThreshold('penis', "hypnosis_penis", "final") && (!$fetish.cum || setup.hasThreshold('cum', "hypnosis_cum", "final")) && (!$fetish.piss || setup.hasThreshold('piss', "hypnosis_piss", "final"))>>
<<if $fetish.bestiality_hard>>
[<<moveTo 'event_psychiatrist_hypnosis_5_bestiality_naga_intro' 'Pass through the door and ascend the steps.' 1800>>]<br>
<<else>>
[<<moveTo 'event_psychiatrist_hypnosis_finale_1' 'Pass through the door and ascend the steps.' 1800>>]<br>
<</if>>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_trial_leave' 'Give up and leave.' 1800>>]
</div>/*#
#desc: hypno fantasy realm - trial stop for day
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_testing.png">>
<div id="invframe" class="scrolltext">
<<if setup.getWillpower() < 2>>
You feel too mentally drained to push yourself further and the simulation starts to fade.
<<else>>
Deciding to reserve your mental energy, you try to relax and the simulation fades away.
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_5_end' 'Continue.' 60>>]
</div>/*#
#desc: hypno fantasy realm - trial penis intro
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 20 'terrible' $ALONE>>
<<set $scene.penis_attempt = true>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_penis.png">>
<div id="invframe" class="scrolltext">
You approach the sculpture and the cocks begin to move. As if alerted to your presence they twitch in invitation. Motivated by your lusts you eagerly reach out to stroke a <<getWordPenis>> at random before bringing it to your lips, your hands reaching to its siblings on either side to stroke and caress as you lovingly slurp.<br>
<br>
Grinding your hips as you let your slutty lips roam from cock to cock you have an epiphany as to the design of the sculpture — the spacing of the spiraling row of <<getWordPenis>> is such that one could sit on the lower level while "prepping" the next level up with fingers and tongue, small foot-holds just large enough for one to work their way up the tower, cock after wondrous cock...<br>
<br>
You take a moment to lean back, estimating there must be
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
perhaps fifty cocks
<<else>>
several dozen cocks
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
dozens of cocks
<<else>>
like, so many cocks
<</if>>
<</if>>
making up the three helical turns of the sculpture... you lick your lips as your <<if $player.body_ref.vagina>>lower holes quiver<<else>>ass-hole quivers<</if>>; do you really have it in you to show proper devotion to that many members?<br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_psychiatrist_hypnosis_trial_penis_2" "Yes, all of the cock!" 300 "<<set $scene.accept=true>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_trial_penis_2')>>">>]<br>
<<else>>
[@@.link_locked;Even for one of your devotion, this is too much for your mind to handle.@@]<br>
<</if>>
[<<moveTo "event_psychiatrist_hypnosis_trial_penis_2" "This is too much cock, even for me..." 300 "<<set $scene.accept=false>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_trial_penis_2')>>">>]
</div>/*#
#desc: hypno fantasy realm - trial penis accept
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 2>>
<<set $scene.win = $scene.accept && setup.getTotalValue("penis") >= 19>>
<<if $scene.win>>
<<setThreshold 'penis' 'hypnosis_penis' 'final'>>
<</if>>
<<if $scene.accept>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'terrible' $ALONE>>
<</if>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_penis.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Sliding your feet into the narrow gap between the outer spiral and the looming central phallus, you lower <<if $player.body_ref.vagina>>yourself down, as the cock below splits in twain to fill you fore and aft<<else>>ass-first onto your first cock<</if>> before leaning in to suck the one one level up in front of you. The whole time you stroke with both hands bouncing slightly as you enjoy the joy of <<if $player.body_ref.vagina>>five<<else>>four<</if>> simultaneous phalli.<br>
<br>
You can feel the <<if $player.body_ref.vagina>>cocks inside you<<else>>cock in your ass<</if>> move, somehow sensing when it is "done" and it is time to move further up the spiral, reluctantly raising up and sliding over as fast as you can before slamming back down.
<<if $scene.win>>
With nigh infinite cock-lust you make sure each gets its share of attention. Big or small, thick or thin, rock-hard or with a bit of softness you love every cock equally, your lips lovingly slobbering over each member, tonguing though slits and under foreskins; your fingers constantly fluffing while your <<if $player.body_ref.vagina>>ass and cunt take their pairs slamming deep and hard<<else>>ass... your ass takes each one slamming deep<</if>>.<br>
<br>
Working your way up higher and higher you eventually run out of "upper" tier, your hands and lips instead hugging and worshiping the gargantuan central phallus while <<if $player.body_ref.vagina>>you make your<<else>>your ass makes its<</if>> lingering, loving tour up each <<if $player.body_ref.vagina>>pair of <</if>>saliva-slick <<if $player.body_ref.vagina>>schlongs<<else>>schlong<</if>>.<br>
<br>
Reaching the very top you are for a moment disappointed that you have no more penis to sample... and then you know what you need to do. Rising up off the "final" cock you turn in place before sitting back <<if $player.body_ref.vagina>>as the massive central phallus twins itself<<else>>on the massive central phallus<</if>>.<br>
<br>
In the real world what you are attempting would be impossible — just the tip of the sculpted cock is nearly as wide as you are but here... in virtual reality... you moan as you spread before <<if $player.body_ref.vagina>>both glorious members<<else>>the glorious member<</if>>, your entire body stretching around it as you slowly slide down.<br>
<br>
Your body stretches and morphs to accommodate the monstrous monument. You moan as you slowly sink, your body held rigid as the phallus slides impossibly deep into your body...<br>
<br>
Suspended on cock your limbs go limp, your body an ardent offering to cock...<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_penis_3" "Yes..." 60>>]
<<else>>
In an attempt to balance of stability and desire you continue to stroke the whole time. While your lips<<if $player.body_ref.vagina>>, cunt<</if>> and ass are forced to take each unique cock in turn your hands focus on only the largest, most glorious members within reach. After all; for you, bigger is better.<br>
<br>
Thanks to your more "discerning" tastes you soon find yourself running short on cock and near the top. Wrapping your arms around the too-large for human use phallus that forms the centre of the sculpture you let your <<if $player.body_ref.vagina>>lower holes finish their<<else>>ass finish its<</if>> journey only to find yourself perched on the final phallus and filled with something else... a feeling of disappointment.<br>
<br>
<<printThought "This was about testing my devotion to all cock... maybe I shouldn't have been so picky?">><br>
<br>
With that thought in your head, and the lingering yearning to further hone your "skills," the statue dissolves and you find yourself standing in the middle of the chamber.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_root" "Your next challenge..." 60>>]
<</if>>
<<else>>
You momentarily balk at the prospect before you. The sculpture seems to sense you lack of commitment and it blinks out of sigh, leaving your hands empty of wonderful wangs they had been stroking a moment ago.<br>
<br>
<<printThought "Dang, this is harder than I would have expected...">> You think, wincing at the accidental pun as you step back and look around the rest of the chamber.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_root" "Your next challenge..." 60>>]
<</if>>
</div>/*#
#desc: hypno fantasy realm - trial penis finish
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_penis.png">>
<div id="invframe" class="scrolltext">
Your body shudders, feeling more full of cock than could ever be possible outside the realm of fantasy. You moan in bliss, dangling for a final, joyous moment before things fade, the gargantuan phallus shrinking and receding to gently place you back on the ground. Your toes find their purchase and you stand, the penis statue shimmering in acknowledgement of your triumph. You take a deep breath and smile as you contemplate your next move.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_root" "Consider your next challenge." 60>>]
</div>/*#
#desc: hypno fantasy realm - trial cum intro
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 20 'terrible' $ALONE>>
<<set $scene.cum_attempt = true>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_cum.png">>
<div id="invframe" class="scrolltext">
You wade into the fountain, the pool of cum riding up your legs. It is warm and thick, just like from the source, just how you love it. Though the creamy liquid is too opaque for you to see the bottom you can tell that it continues to slope down.<br>
<br>
You pause, reaching down to scoop up a handful of thick <<getWordCum>>. It taste delicious, running down your chin, your tongue eagerly lapping at your fingers as you contemplate taking another step forward. Looking around it feels like the pool has grown larger, the cum around you moving, flowing almost like a river.<br>
<br>
You take another step forward and the ground falls away. Owing to its soupiness it is not hard to stay afloat and you casually "tread water," even as the frothy surf becomes more volatile, the statues around you turning in your direction, blasting great ropey arcs of <<getWordCum>> over you.<br>
<br>
You look around, the "shore" starts to recede and gives you a brief jolt of fear. Certainly this is just as simulation and you are thus safe but... do you really want to risk drowning in cum?<br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_psychiatrist_hypnosis_trial_cum_2" "Risk? I would love nothing more!" 300 "<<set $scene.accept=true>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_trial_cum_2')>>">>]<br>
<<else>>
[@@.link_locked;Even for one of your devotion, this is too much for your mind to handle.@@]<br>
<</if>>
[<<moveTo "event_psychiatrist_hypnosis_trial_cum_2" "This is too much cum, even for me..." 300 "<<set $scene.accept=false>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_trial_cum_2')>>">>]
</div>/*#
#desc: hypno fantasy realm - trial cum accept
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 2>>
<<set $scene.win = $scene.accept && setup.getTotalValue("cum") >= 19>>
<<if $scene.win>>
<<setThreshold 'cum' 'hypnosis_cum' 'final'>>
<</if>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_cum.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $scene.win>>
You take a final cum-tinged breath and surrender, leaning back and letting the sea of spooge claim you.<br>
<br>
Slowly you sink in the thick spunk as it clouds your vision and seeps in through every orifice, ears and nostrils filling up as you open your mouth and take great gulps of the ambrosia like essence.<br>
<br>
For a moment of perfection, cum is everything, a salty, sustaining life-force, baptising you in its wonderful glory. As you sink deeper you smile, in utter bliss as you feel the river of jissom stain your very soul...<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_cum_3" "Continue." 300>>]
<<else>>
You are unable to push back your natural fear and you retreat, swimming towards shore and flopping out of the fountain. Dripping with cum you gasp and pant, still swooning at the intense scent and flavour even as you try to recover from your aborted dip.<br>
<br>
As you catch your virtual breath the creamy goodness dissolves from your body and you eventually look around the chamber once more.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_root" "Your next challenge..." 60>>]
<</if>>
<<else>>
You fall back, this is too much, even for you, and you scramble out of the ocean of cum, stumbling across the floor of the great chamber as the salty syrup dissolves from your body and leaves you, for a moment, shivering, as you contemplate your next action.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_root" "Your next challenge..." 60>>]
<</if>>
</div>/*#
#desc: hypno fantasy realm - trial cum finish
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_cum.png">>
<div id="invframe" class="scrolltext">
There is a sudden drop and you find yourself on "dry land" once more. The wonderful, delicious cum that had moments ago completely surrounded you is no more, and you again stand naked in the great chamber. You look upon the cum fountain and smile, for you have been baptised in its bounty and proven your eternal love for its contents.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_root" "Consider your next challenge." 60>>]
</div>/*#
#desc: hypno fantasy realm - trial piss intro
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'piss' 20 'terrible' $ALONE>>
<<set $scene.piss_attempt = true>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_piss.png">>
<div id="invframe" class="scrolltext">
You step out into the piss fountain, discovering that there is a walkway just under the waterline resulting in you messianically walking on top of the golden pool.<br>
<br>
As you approach the middle of the fountain the spray begins to shower you in <<getWordPiss>>, your flesh tingling as the warm, slightly acidic liquid runs down your body. At the centre of the crossfire the dozen streams converge, <<getWordPiss>> hosing you from every side as you turn, mouth open as you savour the golden treasure on your tongue, swallowing what you can and letting the rest flow down your <<if $player.body.breastsize[0] > 0>><<=setup.calcBreastSize()>> breasts<<else>>chest<</if>>.<br>
<br>
Your vision tinges amber as you look around. You lean back and gargle only to notice a huge basin suspended above, hundreds of gallons of <<getWordPiss>> seemingly positioned to crash down right where you are standing, a volume that would render the streams currently spraying you little more than piss in the wind...<br>
<br>
<<printThought "Do I dare let so much wash over me?">><br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_psychiatrist_hypnosis_trial_piss_2" "Yes, drown me in piss!" 300 "<<set $scene.accept=true>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_trial_piss_2')>>">>]<br>
<<else>>
[@@.link_locked;Even for one of your devotion, this is too much for your mind to handle.@@]<br>
<</if>>
[<<moveTo "event_psychiatrist_hypnosis_trial_piss_2" "This is too much piss, even for me..." 300 "<<set $scene.accept=false>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_trial_piss_2')>>">>]
</div>/*#
#desc: hypno fantasy realm - trial piss accept
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 2>>
<<applyExperience 'piss' 20 'terrible' $ALONE>>
<<set $scene.win = $scene.accept && setup.getTotalValue("piss") >= 19>>
<<if $scene.win>>
<<setThreshold 'piss' 'hypnosis_piss' 'final'>>
<</if>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_piss.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Responding to your mental command the deluge of <<getWordPiss>> unleashes, a wall of golden glory pouring down over you.<br>
<br>
<<if $scene.win>>
There is a brief instant as the wall of <<getWordPiss>> descends before it hits you... and you smile; opening your mouth in eager anticipation.<br>
<br>
The weight of so much <<getWordPiss>> hits you hard enough to drive you to your feet, then your knees. Pouring down your throat and rising around you, the seemingly never-ending torrent has you sinking deeper and deeper into a sea of piss.<br>
<br>
You are in heaven, mouth spread wide, arms sweeping through the liquid gold as you swim through the amber lake, mouth wide like a great whale as you gulp down as much as you can, becoming as one with the infinite sea of pee.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_piss_3" "Continue." 300>>]
<<else>>
In the instant before the liquid finishes its descent fear overtakes you. The impact of so much <<getWordPiss>> drives you to your knees and you start to panic, your scream literally drowned out by too much of what you would otherwise love.<br>
<br>
You stagger and then everything blinks; the simulation resetting with you no longer in the fountain, the <<getWordPiss>> disappeared. You have survived, but you have also failed.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_root" "Your next challenge..." 60>>]
<</if>>
<<else>>
You are unable to muster the courage to unleash the deluge of <<getWordPiss>>. The fountains seemingly sensing your reluctance the three-sixty spray reduces in pressure until, finally, you are but standing in the middle of a calm lake of piss.<br>
<br>
You remain a few moments longer, shivering slightly as the amber liquid drips from your body and then you walk back out, the last of the liquid gold dissipating as you look around the room.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_root" "Your next challenge..." 60>>]
<</if>>
</div>/*#
#desc: hypno fantasy realm - trial piss finish
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_piss.png">>
<div id="invframe" class="scrolltext">
As much as you would love to swim through the wonderful golden sea you find yourself getting heavier, floating down until your legs meet the floor and then the wonderful amber liquid fades, leaving you standing alone and dry in the middle of the temple room.<br>
<br>
Your belly gurgles happily as you lick the final bitter drops from your lips, having perfectly proven your piss-loving devotion.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_trial_root" "Consider your next challenge." 60>>]
</div>/*#
#desc: hypno fantasy realm - approach temple nobest
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_final.png">>
<div id="invframe" class="scrolltext">
You step through the door and find yourself in a large clearing, at the base of a great stone temple.<br>
<br>
Hooded acolytes approach you. Silent and mysterious they greet you without a word, leading you into the temple and to a great antechamber, at the end of which there is a massive door. Instinctively you know that beyond the door is the High Priestess, but to make audience you must first win her favour in a series of trials.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_trial_root' 'Look around.' 600>>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_trial_quit' 'Give up and leave.' 1800>>]
</div>/*#
#desc: hypno fantasy realm - meet naga
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_final.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga")>>
<div id="invframe" class="scrolltext">
You ascend the stairs to find, waiting for you at the top... <<=setup.getNpcName("npc_psychiatrist","formal")>>... or, rather, <<=setup.getNpcName("npc_psychiatrist","formal")>> in a jaw-dropping half-snake priestess form.<br>
<br>
"@@.npc_psychiatrist;Hello, my dear,@@" she hisses in greeting, rising off her high-priestess' throne... to display her hemipenes — twin alien members whose tips almost look like spiky cacti... though you somehow know that the spikes are fleshy and soft and will feel oh-so-wonderful inside of you...<br>
<br>
"@@.npc_psychiatrist;You have triumphed so much, from a seemingly naive thing to near the pinnacle of glory, but there is one final trial for you to face... myself. Are you ready to take both of me? You will find that I am far larger in this form than in the physical world...@@"<br>
<br>
<<if $player.body_ref.vagina>>
[<<moveTo "event_psychiatrist_hypnosis_5_bestiality_naga_accept" "Yes! Get double penetrated by her serpent's cocks..." 300 "<<set $scene.vag=true>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_naga_accept')>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_5_bestiality_naga_accept" "Yes... and if she can have an enhanced digital form, you want to be fucked in ass and cunt both!" 300 "<<set $scene.vag=true>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_naga_accept')>>">>]<br>
[<<moveTo "event_psychiatrist_hypnosis_5_bestiality_naga_accept" "Yes... get double-anal from her serpent's cocks!" 300 "<<set $scene.vag=false>><<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_naga_accept')>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_hypnosis_5_bestiality_naga_decline" "You think you need to practice other things first..." 300 "<<set $scene.newExploration=$scene.newExploration || !State.hasPlayed('event_psychiatrist_hypnosis_5_bestiality_naga_accept')>>">>]
</div>/*#
#desc: hypno fantasy realm - embrace naga
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.accept = true>>
<<if $npc_psychiatrist.flags.bestiality_hypno < 5>>
<<set $npc_psychiatrist.flags.bestiality_hypno = 5>>
<</if>>
<<setThreshold 'bestiality' 'other_bestiality' 'naga_advanced'>>
<<applyExperience 'bestiality' 20 'unbelievable' $ALONE>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_final.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga")>>
<div id="invframe" class="scrolltext">
<<if $scene.vag>>
<<if !$player.body_ref.vagina>>
At a thought you suddenly have a virtual vagina. <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and slithers towards you. "@@.npc_psychiatrist;You are just full of surprises... and now, you are about to be full of me...@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and slithers towards you.
<</if>>
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and slithers towards you.
<</if>>
<br><br>
You give yourself to the High Priestess — embracing her smooth, scaled body as her tail coils around you. Your legs spread and you feel her twin hemipenes thrust into you
<<if $scene.vag>>
one in your ass, and one in your oh-so-sensitive vagina.
<<else>>
both of her hemipenes stuffed into your now-gaping ass.
<</if>>
You gasp and she kisses you, her long, serpent tongue exploring your throat as her long fangs press harmlessly against your cheeks.<br>
<br>
You moan, squeezed tight, and filled deep as she writhes around you and fucks you. Fucks you passionately and deep and hard and long, the soft spikes covering her alien peens tickling your insides as she double fills you. Her coils seem to go on forever, wrapping around and around until you feel smooth scales tight against your entire body, the sensation almost as wonderfully intense as her twin peens inside of you.<br>
<br>
You squeeze back and she fucks you harder, tongue thrusting down your throat as she tastes your insides, double <<getWordPenis false>>s moving and stimulating as no human member ever could... your eyes flutter open and you meet her gaze, her eyes swirling, making you feel calm... content... and even hornier as you squeeze her tight, rubbing against her scales as you cum, and she cums... and then again and again, the simulation drawing out into an extended multi-orgasm of seemingly unending pleasure...<br>
<br>
You pass out... or wake up? After the intensity of what you just felt, you aren't really certain...<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_finale_2" "Wake up." 60 "<<set $scene.first=!State.hasPlayed('event_psychiatrist_hypnosis_finale_2')>>">>]
</div>/*#
#desc: hypno fantasy realm - survive naga
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.accept = false>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_final.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga")>>
<div id="invframe" class="scrolltext">
You shake your head and <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> fanged lips slightly frown. "@@.npc_psychiatrist;Well... I suppose such self-cognisance is part of what I have been trying to teach you... still, I was quite looking forward to ravishing you in this form. Some other time, I will be here. Waiting.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_end' 'Wake up.' 120>>]
</div>/*#
#desc: hypno fantasy realm - finale
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Fantasy">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vr_temple_final.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_priestess")>>
<div id="invframe" class="scrolltext">
You ascend the steps to find, at the top, the High Priestess of the temple.<br>
<br>
Wearing elegant — and revealing, robes, <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles at you in greeting.<br>
<br>
"@@.npc_psychiatrist;Welcome, champion. You have triumphed over so much to get here. I always knew you had it in you, such nigh boundless potential, locked away, and now, finally, and gloriously, revealed.@@"<br>
<br>
She smiles with pride, "@@.npc_psychiatrist;I have no more to teach you in this realm, you have proven yourself to perfection now... go and live your joy in the real world...@@"<br>
<br>
The simulation shimmers and fades...<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_finale_2" "Wake up." 60 "<<set $scene.first=!State.hasPlayed('event_psychiatrist_hypnosis_finale_2')>>">>]
</div>/*#
#desc: hypnosis finale
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeHypno5Outfit">>
<<removeItem 'plugsuit_adv' true>>
<<deleteItem 'plugsuit_adv'>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<<removeItem "ring_gag" true>>
<<deleteItem "ring_gag">>
<<set $npc_psychiatrist.free_sessions += 1>>
<<if $scene.first>>
<<addCredits 500>>
<<set $npc_psychiatrist.hypnosis = 6>>
<</if>>
<<if $scene.plug != "">>
<<wearItem $scene.plug true>>
<</if>>
<<useClothSetPop 'hypnosis3'>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wake up, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> helping you out of the chair and back into your normal clothes, smiling with pride the entire time.<br>
<br>
<<if $scene.first>>
"@@.npc_psychiatrist;So, my dear, wonderful thing... as I told you in the virtual world... you have triumphed, producing more data than I could have dreamed of, and, I believe, unlocking previously unimagined potential within yourself. There is little more that I could conceive of learning from this study... though, if you wish, you may call and schedule a return to relive an old favourite.@@"<br>
<br>
She hands you a large pile of credits with a wink "@@.npc_psychiatrist;Spend it on something fun.@@"
<<else>>
"@@.npc_psychiatrist;Another lovely effort! Unfortunately, my grant does not provide me the budget for further monetary rewards, though the re-confirmation of findings is certainly valuable in the scientific sense! Thank you again for all your work, and congratulations on your personal development!@@"<br>
<br>
<</if>>
You smile back and depart.<br>
<br>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory = true>>'>>]
</div>/*#
#desc: VR bonus event - milking fetish intro
#status: FINISHED 0.8.4.0
#ignore_spell: 1na
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'milking'>>
<<removeAllClothing>>
<<set $scene.hypnoSession.theme = "milking">>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" "./images/characters/nerina.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> voice fades as you "load" into a sterile, medical-type facility. You are alone, but hear the echoing click, click, click of heels on tile, the sound growing louder in approach.<br>
<br>
Though you are restrained to a bed, you are able to sit up slightly, looking towards the source of the sound to see a woman round the corner into view. She is pushing a cart and, at first, you think she is wearing a mask... but as she gets closer you realise the slightly too happy expression is not a mask, but that she is... a robot?<br>
<br>
<<printThought "Well... a digital representation of a very lifelike android... weird.">><br>
<br>
Upon the cart are the familiar shapes of milking devices... which syncs up with her attire — a cow-print bra and panties, with horns sticking out from a headband such that you are unsure if they are built in, or an accessory.<br>
<br>
With a friendly smile... and a slightly unnerving machine shimmer to her eyes, she pulls up next to your gurney.<br>
<br>
"@@.computer;Hello, Unit <<=$player.last_name>> — my designation is <<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> — Nursing, Education and Recreation Unit Number 1NA. It will be my delight to service you today — and I hope yours as well!@@"<br>
<br>
She takes a moment to check and tighten your restraints before commencing to hooking you up with milking devices from her cart.<br>
<br>
[<<moveTo "event_vr_milking_2" "Yay, milking!" 1200 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_vr_milking_2" "Settle in for THAT sort of simulation..." 1200 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_vr_milking_2_reject" "Fight back against the simulation." 1200>>]
</div>/*#
#desc: hypnosis session bonus - reject milking
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession.theme = 'reject'>>
<<set $scene.accept=false>>
<</if>>
<<set $player.location to "#ROOM hyp_rest_0xF3">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01_glitch.mp4">>
<div id="invframe" class="scrolltext">
You close your eyes and mentally try to wish yourself out of the scenario. Perhaps surprisingly, it works, and you open your eyes to find yourself in more chaotic territory.<br>
<br>
<<printThought "Maybe it having been designed for someone else means I'm more easily able to resist?">><br>
<br>
As if confirming your suspicion you hear <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> disembodied voice. "@@.npc_psychiatrist;Hmm, I really through you would enjoy that scenario... no matter, you may focus on one of the other routines, whatever you do will surely produce wonderful... data.@@"<br>
<br>
The glitch begins to fade and a more familiar surrounding comes into view...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_choose' 'Look around the room.' 120>>]
</div>/*#
#desc: VR bonus event - milking fetish milking
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<set $scene.breastMilk = true>>
<<include "equipSleepMilkers">>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" "./images/characters/nerina.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You smile back and say you're looking forward to the day's procedure!<br>
<br>
<<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> beams. "@@.computer;Oh I do so adore a willing customer! Being able to produce milk <<if $player.body_ref.cumProduction > 0>>... and cream<</if>> is a gift, AND a duty!@@"
<<else>>
You lean your head back, trying to remain calm as you prepare to endure this procedure.<br>
<br>
"@@.computer;Not the chatty type? No matter, you just lay there and leave it all to me!@@"
<</if>>
<br><br>
<<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> bustles industriously, narrating the whole process as she hooks you up to her machines.
<<if $player.body_ref.penis && $fetish.penis_milking>>
"@@.computer;So for a very special girl like you milking really is the whole package — we'll not just be harvesting from those beautiful breasts, but also down below! Yes, milk and cream are both so wonderful, and a cutie like you surely makes the most delicious of each!<<if $player.body_ref.vagina>> Of course this sweet honey-pot means that we can plug you in for some extra stimulation — and that means extra production, right!<</if>>@@"
<<elseif $player.body_ref.vagina>>
"@@.computer;Of course harvest is nothing without production — and that's maximised by some nice stimulation of that sweet, sweet honey-pot!@@"
<<else>>
"@@.computer;Mmm, those beautiful fun-bags look near ready to burst with wonderful milk! Well don't you worry, because we are going to harvest every treasured drop!@@"
<</if>>
<br><br>
"@@.computer;Doesn't it just feel sooo good being hooked up as a hucow?@@" She asks.<br>
<br>
<<if $scene.accept>>
You eagerly nod in assent and she grins wider as the machines turn on.
<<else>>
You remain silent as she turns the machines on.
<</if>>
Rather than the more aggressive ravaging you've felt previously, this milking is surprisingly gentle, the machines softly stimulating you as each drop you produce is its own steady stream of pleasure as <<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> continues to narrate.<br>
<br>
[<<moveTo "event_vr_milking_3" "Continue." 600>>]
</div>/*#
#desc: VR bonus event - milking fetish climax and wake
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept && $npc_psychiatrist.flags.bonus_vr.milking < 2>>
<<gainWillpower 1>>
<<set $npc_psychiatrist.flags.bonus_vr.milking = 2>>
<<elseif $npc_psychiatrist.flags.bonus_vr.milking < 1>>
<<set $npc_psychiatrist.flags.bonus_vr.milking = 1>>
<</if>>
<<applyStress -10>>
<<playerOrgasm>>
<<set $player.timebased.milking.milk_supply -= 20>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" "./images/characters/nerina.png">>
<div id="invframe" class="scrolltext">
"@@.computer;Doesn't that just feel so good?@@" <<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> coos, her fingers gently brushing over your body as the machines continue to work. "@@.computer;That's part of the process, after all — happy milk comes from happy hucows, and what you're producing has so many valuable uses — being a hucow really is a wonderful calling — and it feels so good, doesn't it?@@"<br>
<br>
She smiles, adjusting the power ever so slightly stronger as she continues. "@@.computer;Yes it does. I can see it on your face <<if !$scene.accept>>you can try to deny it, but <</if>>you love being a hucow — and why not? It's such a noble pursuit! And so relaxing! You just get to lay there in happy bovine bliss as the machines pump, and you produce, on and on...@@"<br>
<br>
She continues to narrate the wonders of being a hucow as you relax more and more. You start to forget that this is a simulation, everything feels so good and you begin to wonder why you ever bothered doing anything else when full-time hucow is an option...<br>
<br>
<<if $scene.accept>>
You feel something move and softly gasp in disappointment as one of your breast cups is removed. You open your eyes to see <<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> smiling down at you. "@@.computer;It's okay. But you have been just such a wonderful, obedient hucow, well... I thought I'd give you an extra special milking...@@"<br>
<br>
You wonder what she means as she removes the other cup, and then she takes your breasts in hand and you learn.<br>
<br>
Her mechanical fingers feel an utter delight, softly massaging your already drained mammaries as she leans in, switching back and forth to suckle delightfully at your nipples while continuing her narration. "@@.computer;Mmm, such quality! Your milk is so delicious. I just love gathering it by hand — and I can tell you do, as well. Oh, yes, you feel so good between my digits, so productive!@@"<br>
<br>
You moan, her teasing, squeezing massage enough that you have a soft orgasm, your body rising partially off the bed as both of your breasts squirt with joy.
<<if $player.body_ref.penis && $fetish.penis_milking>>
<br><br>
"@@.computer;Such enthusiasm! But we aren't done yet!@@" She adds, turning towards your twitching <<getWordMyPenis>> as you realise that, despite all the wonderful stimulation, you haven't actually cum...<br>
<br>
She grins as she moves between your legs, ever-so-gently sliding the milking device out from between your legs before wrapping one hand around your <<getWordMyPenis>>.<br>
<br>
"@@.computer;Mmmm, so beautiful, and such a prize! <<if $fetish.sissy>>Sissy<<else>>Girl<</if>> cum is so sweet and rare, delicate and delightful...@@" With each word she gently strokes, the feeling utterly heavenly as you softly writhe in your bonds and moan with want.<br>
<br>
Her strokes come faster as you moan louder. "@@.computer;It's okay, you can struggle. That's why we strap you down — so you can forget about everything except your production, of being a cute, perfect, hucow...@@" At her final word you cum, a voluminous jet that shoots right into a waiting suction device, slurped away into a receptacle on her cart next to two larger containers filled to the brim with your milk.<br>
<br>
<</if>>
<</if>>
"@@.computer;Look at how well you've done!@@" She notes, gesturing towards the filled containers on top of her cart. "@@.computer;Yes, you really are just a wonderful hucow...@@"<br>
<br>
<<shinyText "Wonderful hucow..." 0.0>>
<br>
Her voice seems to echo in your mind as the simulation slowly fades...<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 60 "<<include 'removeGenitalMilkers'>><<useClothSetPop 'milking'>>">>]
</div><<if $daily.scheduleHypnoToday>>
<<set _tmpDateHypno to setup.setNextDate($now, 0, 19, 0)>>
<<set $daily.scheduleHypnoToday = false>>
<<else>>
<<switch $now.getUTCDay()>>
<<case 0 1 2>>
<<set _tmpDateHypno = setup.getNextDayOfWeek($now, 3, 19, 0)>>
<<case 3 4 5 6>>
<<set _tmpDateHypno = setup.getNextDayOfWeek($now, 0, 19, 0)>>
<</switch>>
<</if>>
<<set _hypnoTaskCondition = setup.getConditions(_tmpDateHypno, ['atPsychiatrist'])>>
<<switch $npc_psychiatrist.hypnosis>>
<<case 0>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_1",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<case 1>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_2",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<case 2>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_3",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<case 3>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_4",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<case 4 5 6>>
<<set _taskDone = {
"trigger_event": "event_psychiatrist_hypnosis_4",
"text": "task_psychiatrist_endless_hypnosis_1_done"
}>>
<<set _taskFailed = {
"trigger_event": "event_psychiatrist_hypnosis_failed",
"text": "task_psychiatrist_endless_hypnosis_1_failed"
}>>
<<default>>
ERROR: unknown hypnosis level: <<=$npc_psychiatrist.hypnosis>>
<</switch>>
<<addTask 'psychiatrist_endless_hypnosis_1'
$now
'npc_psychiatrist'
'task_psychiatrist_endless_hypnosis_1'
_hypnoTaskCondition
_taskDone
_taskFailed>><<if $scene.vrItem && setup.checkItemWorn($scene.vrItem)>>
<<removeItem $scene.vrItem true>>
<<itemToWardrobe $scene.vrItem>>
<</if>>
<<if !setup.checkItemTypeWorn("shoes")>>
<<set $scene.shoes = setup.getItemsByFilter("specific", "shoes")[0]>>
<<if setup.inWardrobe($scene.shoes)>>
<<wardrobeToItem $scene.shoes>>
<</if>>
<<wearItem $scene.shoes true>>
<</if>>
<<if !setup.checkItemTypeWorn("panties")>>
<<set $scene.panties = setup.getItemsByFilter("specific", "panties")[0]>>
<<if setup.inWardrobe($scene.panties)>>
<<wardrobeToItem $scene.panties>>
<</if>>
<<wearItem $scene.panties true>>
<</if>>
<<if !setup.checkItemTypeWorn("stockings")>>
<<set $scene.stockings = setup.getItemsByFilter("specific", "stockings")[0]>>
<<if setup.inWardrobe($scene.stockings)>>
<<wardrobeToItem $scene.stockings>>
<</if>>
<<wearItem $scene.stockings true>>
<</if>>
<<include "calcTopId">>
<<if $scene.topId == "">>
<<if setup.getTotalValue("bimbofication") > 10>>
<<set _tops = setup.getItemsByFilter("specific", "strapless_dress")>>
<<if _tops.length > 0>>
<<set $scene.top = _tops[0]>>
<<else>>
<<set _tops = setup.getItemsByFilter("specific", "dress")>>
<<if _tops.length > 0>>
<<set $scene.top = _tops[0]>>
<<else>>
<<set $scene.top = setup.getItemsByFilter("specific", "shirt")[0]>>
<</if>>
<</if>>
<<elseif setup.getTotalValue("feminization") > 10>>
<<set _tops = setup.getItemsByFilter("specific", "dress")>>
<<if _tops.length > 0>>
<<set $scene.top = _tops[0]>>
<<else>>
<<set _tops = setup.getItemsByFilter("specific", "strapless_dress")>>
<<if _tops.length > 0>>
<<set $scene.top = _tops[0]>>
<<else>>
<<set $scene.top = setup.getItemsByFilter("specific", "shirt")[0]>>
<</if>>
<</if>>
<<else>>
<<set _tops = setup.getItemsByFilter("specific", "shirt")>>
<<if _tops.length > 0>>
<<set $scene.top = _tops[0]>>
<<else>>
<<set _tops = setup.getItemsByFilter("specific", "dress")>>
<<if _tops.length > 0>>
<<set $scene.top = _tops[0]>>
<<else>>
<<set $scene.top = setup.getItemsByFilter("specific", "strapless_dress")[0]>>
<</if>>
<</if>>
<</if>>
<<if setup.inWardrobe($scene.top)>>
<<wardrobeToItem $scene.top>>
<</if>>
<<wearItem $scene.top true>>
<</if>>
<<if !setup.checkItemTypeWorn("dress") && setup.getItemFromType("strapless_dress") == "" && !setup.checkItemTypeWorn("legwear") && !setup.checkItemTypeWorn("bodysuit")>>
<<set $scene.bottom = setup.getItemsByFilter("specific", "legwear")[0]>>
<<if setup.inWardrobe($scene.bottom)>>
<<wardrobeToItem $scene.bottom>>
<</if>>
<<wearItem $scene.bottom true>>
<</if>>
<<if setup.checkOutsideDecencyReason() == "no_bra">>
<<if !setup.checkItemTypeWorn("bra")>>
<<set $scene.bra = setup.getItemsByFilter("specific", "bra")[0]>>
<<if setup.inWardrobe($scene.bra)>>
<<wardrobeToItem $scene.bra>>
<</if>>
<<wearItem $scene.bra true>>
<</if>>
<</if>>/*#
#desc: triggered event for failing to show up to hypnosis session
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $npc_psychiatrist.flags.missedVR = true>>
<<set $scene.missedVR = true>>
<<if $scene.noPhone>>
<<include "addHypnosisTask">>
<<elseif $fetish.hypnosis>>
<<include "forceDress">>
<<elseif !$fetish.hypnosis>>
<<set $npc_psychiatrist.hypnosis_missed += 1>>
<<if $npc_psychiatrist.hypnosis>0>>
<<set _tmpLvl = Math.max(1,Math.min(10,$npc_psychiatrist.hypnosis_missed-$npc_psychiatrist.hypnosis))>>
<<switch _tmplLvl>>
<<case 0>>
<<applyExperience 'bimbofication' 3 'insignificant' $INCOGNITO>>
<<case 1>>
<<applyExperience 'bimbofication' 3 'slightly' $INCOGNITO>>
<<case 2>>
<<applyExperience 'bimbofication' 3 'little' $INCOGNITO>>
<<case 3>>
<<applyExperience 'bimbofication' 3 'almost' $INCOGNITO>>
<<case 4>>
<<applyExperience 'bimbofication' 3 'normal' $INCOGNITO>>
<<case 5>>
<<applyExperience 'bimbofication' 3 'very' $INCOGNITO>>
<<case 6>>
<<applyExperience 'bimbofication' 3 'terrible' $INCOGNITO>>
<<default>>
<<applyExperience 'bimbofication' 3 'unbelievable' $INCOGNITO>>
<</switch>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are being called by <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
<<if $scene.noPhone>>
Unfortunately you cannot reach your phone and you listen as the message goes to voicemail.<br>
<br>
"@@.npc_psychiatrist;Hey, <<=$player.first_name>>. I assume you won't make it to our appointment today. Don't worry, no harm done, I'll just rebook you for next week. Would you kindly reconsider appearing to the next one?@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<elseif $fetish.hypnosis>>
<<if $npc_psychiatrist.hypnosis==0>>
Her voice is different from normal, somewhat sing-song with other sounds in the background that slip away if you try to focus on them. "@@.npc_psychiatrist_dom;Hello, <<=$player.first_name>> we talked about you coming in today for you to help me with my research... I know I said it was optional but... you really want to come in, don't you? I just know it will make you feel so much better... you're probably just running late, I'll see you shortly.@@"
<<else>>
Her voice is strange and siren-like. Background sounds seem to draw you in, yet remain impossible to focus on. "@@.npc_psychiatrist_dom;Hello, <<=$player.first_name>> did you forget? You were going to help me with my research today. I'm sure you're just running late, I'll see you shortly.@@"
<</if>>
<br><br>
<<printThought "Yes, running late...">><br>
<br>
You feel as if you're in something of a trance, and then you find yourself stepping through the door of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office...<br>
<br>
<<if $scene.bottom != "" || $scene.top != "" || $scene.shoes>>
You look down at your outfit... you're technically "dressed"... but you have no memory of putting some of these things on...<br>
<br>
<</if>>
<<printThought "How did I get here? Well, I guess I might as well do this...">><br>
<br>
[<<moveTo $currentTasks.psychiatrist_endless_hypnosis_1.rewards.trigger_event "Go inside..." 60>>] <<hint $options "This event is being forced due to aggressive therapy content fetish being enabled.">>
<<else>>
"@@.npc_psychiatrist;Hey, <<=$player.first_name>>. I assume you won't make it to our appointment today. Don't worry, no harm done. Would you kindly reconsider appearing to the next one? I can rebook you another appointment right now, if you would like?@@"<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_failed_rebook" "Agree to rebook." 60 "<<set $scene.rebook=true>><<set $scene.continueTaskTime-=60>>">>]<br>
[<<moveTo "event_psychiatrist_hypnosis_failed_rebook" "Say you would like to leave the study." 60 "<<set $scene.rebook=false>><<set $scene.continueTaskTime-=60>>">>]
<</if>>
</div>/*#
#desc: rebook hypno session over the phone
#status: FINISHED 0.6.0.0
#*/
<<set $player.location to "Call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.rebook>>
<<include "addHypnosisTask">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.rebook>>
You apologise for missing the appointment and ask if you can rebook.<br>
<br>
"@@.npc_psychiatrist;Certainly, I will just put you down for
<<if setup.getUTCDay($now) == 5>> /% friday to sunday %/
next Sunday
<<elseif setup.getUTCDay($now) == 0>> /% sunday to wednesday %/
next Wednesday
<<else>> /% wednesday to sunday %/
next Sunday
<</if>>
at <<if $options.militaryTime>>19:00<<else>>seven o'clock in the evening<</if>>, okay?@@"<br>
<br>
You reply that sounds fine.<br>
<br>
<<if $npc_psychiatrist.hypnosis > 0>>
"@@.npc_psychiatrist;Thank you very much for your continued participation in my study. This will help me a lot to advance this field of science!@@"
<<else>>
"@@.npc_psychiatrist;I would really appreciate it, if you would find the time to help me in this endeavour. Thank you in advance.@@"
<</if>>
<br><br>
<<if ($npc_psychiatrist.hypnosis_missed<2) || ($npc_psychiatrist.hypnosis == 0)>>
<<printThought "Well, I am kind of curious about the whole thing... maybe I'll go next time.">>
<<elseif ($npc_psychiatrist.hypnosis_missed<5)>>
<<printThought "I... I really want to go... I feel like I'm losing a part of myself if I don't go.">>
<<elseif ($npc_psychiatrist.hypnosis_missed<10)>>
<<printThought "I... I really should go... for like science and stuff...">>
<<else>>
<<printThought "Brainwashing is good for me, my mind is happy, blank and empty." 40>>
<</if>>
<<else>>
You politely ask to be removed from the study. She is quiet for a moment before replying sounding sad, and maybe a bit strangely fearful?<br>
<br>
"@@.npc_psychiatrist;Oh, I am so sorry to hear you say that. I feel like there was so much more that could be done to help you... I mean, for you to help with the study. Well, if you ever change your mind just talk to me after one of your therapy sessions and I can get you booked right up!@@"
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: re-enroll in hypno if things glitched
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addHypnosisTask">>
<<set $scene.rand = random(1,10)>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You thank her for the offer and say that yes, you would like to re-enrol in her experimental VR therapy study.<br>
<br>
"@@.npc_psychiatrist;Oh, how wonderful! I am just so looking forward to you advancing further... further advancing the cause of science, I mean.@@"<br>
<br>
She smiles and you feel a strange fuzziness in the back of your mind.<br>
<br>
"@@.npc_psychiatrist;I have a slot open <<if $now.getUTCDay() < 3>>Wednesday<<else>>Sunday<</if>> evening, <<if $options.militaryTime>>nineteen hundred hours<<else>>seven pm<</if>>, sharp! See you then! Oh, I cannot wait to continue helping clean up that cute little mind of yours. I just know you're going to be so, so happy when we're finished...@@"<br>
<br>
<<if $npc_psychiatrist.hypnosis >= 2>>
<<shinyText "Brainwashing is good for me. My mind is happy, blank and empty." 0.0>>
<br>
<<else>>
<<printThought "What an odd way to phrase that, but she has my best interests at heart, right?">><br>
<br>
<</if>>
<<if setup.checkOutsideDecency()>>
<<if $npc_psychiatrist.flags.dinner.ate>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo 'event_psych_dinner_invite_1_repeat' 'Ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner.' 180 "<<set $player.cutscene.lockinventory=true>>" >>]<br>
<<else>>
[@@.link_locked;You should keep a clear schedule if you want to invite <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner again.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo "room_citymap" "Thank her and leave the office." 180 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory=false>>">>]
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div><<moveTo $currentTasks.psychiatrist_endless_hypnosis_1.rewards.trigger_event>>/*#
#desc: psychiatrist lobby generic
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.evil == 1>>
<<moveTo "room_psychiatrist_alt_lobby">>
<</if>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_psychiatrist_lobby')>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_anteroom.png">>
<div id="invframe" class="scrolltext">
You enter the nicely furnished lobby of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> private practice. The waiting room is pleasant and mostly empty, decorated in soft pastels, pink and white and quite soothing.
<<if _nextdate == null>>
You currently have no appointments scheduled.
<<elseif setup.compareDay($now,_nextdate)>>
You have an appointment today at <<=setup.shortTime(_nextdate)>>.
<<else>>
You have no appointment today. Your next appointment is on <<printDate _nextdate>>.
<</if>>
<br><br>
<<include thoughts_current>>
<<if _nextdate == null>>
<<elseif setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
[<<moveTo "room_psychiatrist_lobby" "Announce your arrival to the receptionist and wait for your appointment." _tmpSeconds "<<if ($currentTasks.hasOwnProperty('psychiatrist_boiless_review') && !$currentTasks.psychiatrist_boiless_review.finished || $currentTasks.hasOwnProperty('psychiatrist_boiless_review_failthrough') && !$currentTasks.psychiatrist_boiless_review_failthrough.finished) && $currentTasks.hasOwnProperty('psychiatrist_endless_apointment_1') && !$currentTasks.psychiatrist_endless_apointment_1.finished && ($currentTasks.hasOwnProperty('psychiatrist_boiless_review') && setup.daysToDate(setup.getTaskDueDate('psychiatrist_endless_apointment_1'), setup.getTaskDueDate('psychiatrist_boiless_review')) == 0 || $currentTasks.hasOwnProperty('psychiatrist_boiless_review_failthrough') && setup.daysToDate(setup.getTaskDueDate('psychiatrist_endless_apointment_1'), setup.getTaskDueDate('psychiatrist_boiless_review_failthrough')) == 0)>><<completeTask 'psychiatrist_endless_apointment_1' $now true>><<if $currentTasks.hasOwnProperty('task_camgirl_strict') && !$currentTasks.task_camgirl_strict.finished>><<postponeTask 'task_camgirl_strict' 7>><</if>><<elseif $currentTasks.hasOwnProperty('task_camgirl_strict') && !$currentTasks.task_camgirl_strict.finished>><<completeTask 'psychiatrist_endless_apointment_1' $now true>><</if>>">>]<br>
<<else>>
<<if $currentTasks.hasOwnProperty("psychiatrist_apointment_1") && !$currentTasks.psychiatrist_apointment_1.finished>>
[@@.link_locked;You should finish your first therapy appointment before enrolling in more.@@]<br>
<<elseif !($currentTasks.hasOwnProperty('psychiatrist_endless_apointment_1') && !$currentTasks.psychiatrist_endless_apointment_1.finished) && !($currentTasks.hasOwnProperty('psychiatrist_boiless_review') && !$currentTasks.psychiatrist_boiless_review.finished) && !($currentTasks.hasOwnProperty('psychiatrist_boiless_review_failthrough') && !$currentTasks.psychiatrist_boiless_review_failthrough.finished) && !($currentTasks.hasOwnProperty('psychiatrist_couples_landlord') && !$currentTasks.psychiatrist_couples_landlord.finished) && !($currentTasks.hasOwnProperty('psychiatrist_couples_admin') && !$currentTasks.psychiatrist_couples_admin.finished) && !($currentTasks.hasOwnProperty('psychiatrist_couples_technician') && !$currentTasks.psychiatrist_couples_technician.finished)>>
[<<moveTo "event_psychiatrist_reenroll_therapy" "Approach the receptionist and ask about re-enrolling in therapy." 180>>]<br>
<</if>>
<<if $npc_psychiatrist.hypnosis > 0 && (!$currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') || $currentTasks.psychiatrist_endless_hypnosis_1.finished)>>
[<<moveTo "event_psychiatrist_reenroll_hypno" 'Approach the receptionist and ask about re-enrolling in <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> VR experiment.' 180>>]<br>
<</if>>
<</if>>
<<if setup.checkOutsideDecencyReason() == "chastity">>
<<if _nextdate == null>>
<<printThought "I forced myself here out of chastity... and then I forgot to even discuss it!">><br>
<br>
[<<moveTo "room_foyer" "Hurry home." 600>>]
<<else>>
<<printThought "Forcing myself here without wearing chastity in public was stressful enough... I'm not going to leave before my session!">>
<</if>>
<<else>>
[<<moveTo "room_citymap" "City Centre." 300>>]
<</if>>
</div>/*#
#desc: psychiatrist lobby re-enroll therapy
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include addPsychiatristEndless>>
<<if $now.getUTCHours() < 14>>
<<set $currentTasks.psychiatrist_endless_apointment_1.trigger.atPsychiatrist.time.date = setup.setNextDate($now, 0, 14, 0)>>
<</if>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_psychiatrist_lobby')>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_anteroom.png">>
<div id="invframe" class="scrolltext">
You ask the receptionist about scheduling a new therapy appointment. She smiles, quickly re-scheduling an appointment with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.generic_female1;Of course — she knows how life can get in the way, but is always happy when a patient returns... hmm, it appears your usual Friday time-slot is still open, I'll just schedule you in, and see you <<if $now.getUTCDay() == 5>><<if $now.getUTCHours() < 14>>later today<<else>>next week<</if>><<elseif $now.getUTCDay() == 4>>tomorrow<<else>>next week<</if>>!@@"<br>
<br>
You thank her for the accommodation and step away from her desk.<br>
<br>
[<<moveTo "room_psychiatrist_lobby" "Back to the lobby." 60>>]
</div>/*#
#desc: psychiatrist lobby re-enroll hypno
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addHypnosisTask">>
<<set $scene.finishedHypno = (!$fetish.piss || setup.hasThreshold('piss', 'hypnosis_piss', "10")) && (!$fetish.cum ||setup.hasThreshold('cum', 'hypnosis_cum', "10")) && setup.hasThreshold('penis', 'hypnosis_penis', "10") && setup.hasThreshold('foot', 'hypnosis_foot', "10") && setup.hasThreshold('bondage', 'hypnosis_bondage', "10") && setup.hasThreshold('bdsm', 'hypnosis_bdsm', "10")>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_psychiatrist_lobby')>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_anteroom.png">>
<div id="invframe" class="scrolltext">
You ask the receptionist about re-enrolling in <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> scientific study?<br>
<br>
<<if $scene.finishedHypno>>
"@@.generic_female1;Hmm, the note here says you had completed the schedule that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> had designed for you, but I doubt she would object to gathering more data, especially from such a sweet data source!@@"
<<else>>
"@@.generic_female1;Of course! <<=setup.getNpcName('npc_psychiatrist', 'formal')>> was so disappointed when you dropped out before completing things, she will be so happy to pick back up where you left off.@@"
<</if>>
<br><br>
The receptionist taps away at her computer for a moment. "@@.generic_female1;There, <<if setup.getTaskDueDate('psychiatrist_endless_hypnosis_1').getUTCDay() == 3>>your next session will be Wednesday evening<<else>>your next session will be Sunday afternoon<</if>>.@@"<br>
<br>
You thank her for the accommodation and step away from her desk.<br>
<br>
[<<moveTo "room_psychiatrist_lobby" "Back to the lobby." 60>>]
</div>/*#
#desc: mux to route result of calling psychiatrist
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $call_psychiatrist={}>>
<<initRoom>>
<<if ($now.getUTCHours() >= 6) && ($now.getUTCHours() < 19)>>
<<moveTo 'room_call_psychiatrist_1'>>
<<else>>
<<moveTo 'room_call_psychiatrist_no_ordination'>>
<</if>>
<</if>>/*#
#desc: psychiatrist voicemail
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Hello, this is <<=setup.getNpcName('npc_psychiatrist', 'other')>> speaking. Unfortunately, you reached us outside of office hours. Please call between the time of <<if $options.militaryTime>>six and nineteen hundred<<else>>six am and seven pm<</if>> every day.@@"<br>
<br>
<<if State.hasPlayed("theme_psychiatrist_secret_theme_manager_psych_2") && ($npc_barista.stage > 0 && $npc_barista.stage < 10) && State.hasPlayed("theme_manager_private_psychiatrist_manager_1") && !State.hasPlayed("event_call_psychiatrist_makeup_manager")>>
<<hint $options "You should finish attending to <<=setup.getNpcName('npc_barista', 'first')>> before you try and get <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> back together.">><br>
<br>
<</if>>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: phone call with psychiatrist
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if State.hasPlayed("event_boss_destroy_psychiatrist_7")>>
<<set $scene.call_topic = "destroyed">>
<<elseif $npc_psychiatrist.flags.evil == 1>>
<<set $scene.call_topic = "evil">>
<<elseif $npc_barista.flags.location == "landlord" && $npc_barista.stage < 7>>
<<set $npc_barista.stage = 7>>
<<set $scene.call_topic = "inform">>
<<elseif $player.timebased.stress >= 90 && setup.inPassageTag($scene.beforePhoneCallLocation, "home") && ($npc_psychiatrist.flags.phone_therapy.last_call == null || setup.dayDiff($now, $npc_psychiatrist.flags.phone_therapy.last_call)>3)>>
<<set $scene.call_topic = "phone_therapy">>
<<applyStress -3>>
<<elseif !($currentTasks.hasOwnProperty('psychiatrist_endless_apointment_1') && !$currentTasks.psychiatrist_endless_apointment_1.finished) && !($currentTasks.hasOwnProperty('psychiatrist_boiless_review') && !$currentTasks.psychiatrist_boiless_review.finished) && !($currentTasks.hasOwnProperty('psychiatrist_boiless_review_failthrough') && !$currentTasks.psychiatrist_boiless_review_failthrough.finished) && !($currentTasks.hasOwnProperty('psychiatrist_couples_landlord') && !$currentTasks.psychiatrist_couples_landlord.finished) && !($currentTasks.hasOwnProperty('psychiatrist_couples_admin') && !$currentTasks.psychiatrist_couples_admin.finished) && !($currentTasks.hasOwnProperty('psychiatrist_couples_technician') && !$currentTasks.psychiatrist_couples_technician.finished) && !($currentTasks.hasOwnProperty('psychiatrist_couples_ex') && !$currentTasks.psychiatrist_couples_ex.finished)>>
<<set $scene.call_topic = "therapy_reup">>
<<include addPsychiatristEndless>>
<<elseif $npc_psychiatrist.hypnosis == 0 && $npc_psychiatrist.flags.signednda>>
<<set $scene.call_topic = "firsthypno">>
<<include "addHypnosisTask">>
<<elseif $currentTasks.hasOwnProperty("psychiatrist_endless_hypnosis_1") && $currentTasks.psychiatrist_endless_hypnosis_1.finished>>
<<set $scene.call_topic = "hypno_reup">>
<<set $scene.finishedHypno = setup.hasThreshold('penis', "hypnosis_penis", "final") && (!$fetish.cum || setup.hasThreshold('cum', "hypnosis_cum", "final")) && (!$fetish.piss || setup.hasThreshold('piss', "hypnosis_piss", "final"))>>
<<if $scene.finishedHypno>>
<<applyStress -10>>
<</if>>
<<elseif $npc_psychiatrist.flags.phone_therapy.stage > 0 && setup.inPassageTag($scene.beforePhoneCallLocation, "home") && setup.dayDiff($now, $npc_psychiatrist.flags.phone_therapy.last_call)>3>>
<<set $scene.call_topic = "phone_therapy_need">>
<<elseif $player.timebased.stress >= 75 && $npc_psychiatrist.flags.phone_therapy.stage > 0>>
<<set $scene.call_topic = "phone_therapy_early">>
<<elseif !$npc_psychiatrist.flags.signednda && setup.hasEmail("mail_psychiatrist_01_h")>>
<<set $scene.call_topic = "nda">>
<<elseif State.hasPlayed("theme_psychiatrist_secret_theme_manager_psych_2") && ($npc_barista.stage == 0 || $npc_barista.stage == 10) && State.hasPlayed("theme_manager_private_psychiatrist_manager_1") && !State.hasPlayed("event_call_psychiatrist_makeup_manager")>>
<<set $scene.call_topic = "manager">>
<<else>>
<<set $scene.call_topic = "nothing">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.call_topic>>
<<case "evil">>
You try to call <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, but get a "number out of service" error. It looks like <<=setup.getNpcName('npc_work_doctor', 'formal')>> is keeping quite the tight leash on <<his npc_work_doctor>> new assistant...<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case "destroyed">>
You call <<=setup.getNpcName('npc_psychiatrist', 'formal')>> but get a "@@.computer;this number is not in service@@" error and you reflect on your betrayal of the strange psychiatrist to <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case "phone_therapy">>
You call <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, she must sense the desperation in your voice because she is almost immediately comforting you.<br>
<br>
"@@.npc_psychiatrist;Oh <<=$player.first_name>>! I am so glad you called — I told you that I would be there for you between sessions and, well... it sounds like you need it now.@@"<br>
<br>
Just the sound of her comforting voice has you feeling a little better and you thank her for taking your call.<br>
<br>
"@@.npc_psychiatrist;Of course! You are my patient, so it is my duty to be here for you. Now let's do an exercise, how about you sit down somewhere comfortable and let <<=setup.getNpcName('npc_psychiatrist', 'formal')>> guide you some relaxation exercises...@@"<br>
<br>
<<if $npc_psychiatrist.flags.phone_therapy.stage > 0>>
You think back to her previous "exercise" ... though you have to admit... it did leave you feeling less "stressed..." <br>
<br>
"@@.npc_psychiatrist;You can start by getting yourself comfortable — comfortable, and naked, of course.@@"<br>
<br>
[<<moveTo "event_phone_therapy_root" "Get naked, sit back on the couch and listen to what she has to say." 30>>]
<<else>>
[<<moveTo "event_phone_therapy_1" "Sit back on the couch and listen to what she has to say." 30>>]
<</if>>
<<include "callPsychAboutManager">>
<<case "phone_therapy_need">>
While you do not technically have anything you "need" to speak to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about, but you can't help but think back to her phone therapy.<br>
<br>
[<<moveTo "event_phone_therapy_alt" "Call her up for some phone therapy." 30>>]<br>
<<include "callPsychAboutManager">>
[<<moveTo $scene.beforePhoneCallLocation "Not now, put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case "firsthypno">>
"@@.npc_psychiatrist;Hello <<=$player.first_name>>. I see you sent me the NDA back signed and all. Very good. Very good indeed. I assume I can interest you in a new appointment for the experimental VR Therapy?@@"<br>
<br>
You affirm and ask when the next possible appointment could be.<br>
<br>
"@@.npc_psychiatrist;Let's see... that would be
<<if (setup.getUTCDay($now) >= 3) && (setup.getUTCDay($now) != 0)>>
Sunday evening at <<if $options.militaryTime>>19:00<<else>>seven pm<</if>>.
<<else>>
Wednesday evening at <<if $options.militaryTime>>19:00<<else>>seven pm<</if>>.
<</if>>
Oh, I'm getting all tingly from excitement! This is going to be great! You won't regret it <<=$player.first_name>>!@@"<br>
<br>
<<include "callPsychAboutManager">>
[<<moveTo $scene.beforePhoneCallLocation "Say goodbye." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case "nda">>
You pick up the phone and think about calling <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, but without signing the NDA first there's not really a lot to talk about.<br>
<br>
<<printThought "I'll call her if I decide to sign that NDA.">><br>
<br>
<<include "callPsychAboutManager">>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case "therapy_reup">>
You call <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and she immediately picks up. "@@.npc_psychiatrist;Oh, <<=$player.first_name>>! I have so missed seeing you. I really don't know how it happened, but your normal appointment seems to have completely disappeared from my schedule! I've just booked you for your usual Friday slot. I look forward to seeing you then, but I'm in the middle of a very delicate experiment so whatever it is will have to wait until then.@@" She hangs up before you can respond — looks like you are once again enrolled in therapy.<br>
<br>
<<include "callPsychAboutManager">>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case "hypno_reup">>
You call <<=setup.getNpcName('npc_psychiatrist', 'formal')>> up who picks up immediately, though she sounds a bit in a rush.
<<if $scene.finishedHypno>>
"@@.npc_psychiatrist;Hi, <<=$player.first_name>>. How are you doing? Wonderful, I am sure! Oh, the progress we have made together... I would call you one of my finest creations, but it was all you, all of it! I just gave you the opportunity, but you are the one that embraced it all with such inspiring and wonderful enthusiasm! Well keep on enjoying life you amazing slut.@@"<br>
<br>
You feel a curious tingle — the way <<=setup.getNpcName('npc_psychiatrist', 'formal')>> says the word "slut" is as if it was a revered honourific... and, perhaps it is?<br>
<br>
[<<moveTo "room_call_psychiatrist_hypno_rejoin" "Ask if you could re-enrol for another session." 60>>]<br>
<<include "callPsychAboutManager">>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<elseif $npc_psychiatrist.hypnosis == 0>>
"@@.npc_psychiatrist;Hi, <<=$player.first_name>>. How are you doing? You know I was just working on one or my reports and, well... I really think that your therapy would be accelerated by participating in my experimental therapy. Totally, safe, I promise, and if you help out I'll credit you for some free traditional sessions, plus a few credits for your time.@@"<br>
<br>
[<<moveTo "room_call_psychiatrist_hypno" "Agree to join the study." 60 "<<set $scene.enroll = true>>">>]<br>
[<<moveTo "room_call_psychiatrist_hypno" "Decline her offer." 60 "<<set $scene.enroll = false>>">>]<br>
<<include "callPsychAboutManager">>
<<elseif $npc_psychiatrist.hypnosis == 1>>
"@@.npc_psychiatrist;Hi, <<=$player.first_name>>. How are you doing? You know I was just working on one or my reports and, well... I was seeing such wonderful results from that first session you had in my enhanced therapy study... I don't suppose you would be willing to come in for a few more session? I'll credit you for free therapy sessions, plus I'll pay, same as before.@@"<br>
<br>
<<if $npc_psychiatrist.hypnosis < 5>>
<<printThought "It's disturbing that I can't remember what happened during that session, but I did leave feeling good...">><br>
<br>
<</if>>
[<<moveTo "room_call_psychiatrist_hypno" "Agree to re-join the study." 60 "<<set $scene.enroll = true>>">>]<br>
[<<moveTo "room_call_psychiatrist_hypno" "Decline her offer." 60 "<<set $scene.enroll = false>>">>]<br>
<<include "callPsychAboutManager">>
<<else>>
"@@.npc_psychiatrist;Hi, <<=$player.first_name>>. How are you doing? You know I was just working on one or my reports and, well... I was seeing such wonderful results in that study you were participating in... I don't suppose you would be willing to come in for a few more session? I'll credit you for free therapy sessions, plus I'll pay, same as before.@@"<br>
<br>
<<if $npc_psychiatrist.hypnosis < 5>>
<<printThought "It's disturbing that I can't remember what happened during those sessions, but they did seem to leave me feeling good...">><br>
<br>
<</if>>
[<<moveTo "room_call_psychiatrist_hypno" "Agree to re-join the study." 60 "<<set $scene.enroll = true>>">>]<br>
[<<moveTo "room_call_psychiatrist_hypno" "Decline her offer." 60 "<<set $scene.enroll = false>>">>]<br>
<<include "callPsychAboutManager">>
<</if>>
<<case "phone_therapy_early">>
You try to call <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, but you are routed to an automated receptionist.<br>
<br>
"@@.generic_female1;<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is busy with another patient. I see from our records that you have spoken with her recently, perhaps you should reflect on what she said then and wait a bit longer.@@"<br>
<br>
<<include "callPsychAboutManager">>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case "inform">>
You text <<=setup.getNpcName("npc_psychiatrist","formal")>> and let her know that you have found a location for your "off-site therapy." <br>
<br>
"@@.npc_psychiatrist;Wonderful, give me the full details at your next session.@@"<br>
<br>
<<include "callPsychAboutManager">>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 'manager'>>
You consider calling <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about setting things up for her to make up with <<=setup.getNpcName('npc_manager', 'formal')>>...<br>
<br>
<<include "callPsychAboutManager">>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case "nothing">>
You pick up the phone and think about calling <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, but you have no idea what to talk about.<br>
<br>
<<printThought "Maybe, when I have something specific to discuss...">><br>
<br>
<<include "callPsychAboutManager">>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</switch>>
</div>/*#
#desc: talk about rejoining hypno
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.enroll>>
<<include "addHypnosisTask">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.enroll>>
You agree to <<if $npc_psychiatrist.hypnosis > 0>>re-<</if>>enrol in her VR therapy study, practically able to see her beaming from the other end of the line.<br>
<br>
"@@.npc_psychiatrist;Oh, that is just wonderful to hear! I cannot wait to see you for our next session —
<<if (setup.getUTCDay($now) >= 3) && (setup.getUTCDay($now) != 0)>>
Sunday evening at <<if $options.militaryTime>>19:00<<else>>seven pm<</if>>.
<<else>>
Wednesday evening at <<if $options.militaryTime>>19:00<<else>>seven pm<</if>>.
<</if>>
Oh I am just so looking forward to doing more science on, I mean with you! Well, glad I could help get you back on board, talk to you later!@@"<br>
<br>
She hangs up before you can get a word in edgewise.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
You explain that no, you still are not interested in her study and her voice falls. "@@.npc_psychiatrist;Oh, I am so disappointed to hear that... well, we can discuss things at your next session, I need to get back to my experiment. It is very delicate and requires close supervision... much like yourself.@@"<br>
<br>
<<printThought "Wait, what was that about?">><br>
<br>
The line goes dead, leaving you, as always, with more questions than answers.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put down the phone." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: talk about restarting hypno after finish
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addHypnosisTask">>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask if you could schedule another VR session?<br>
<br>
"@@.npc_psychiatrist;Just cannot get enough, hmm? Yes... I believe that can be arranged, I shall see you at the usual time — <<if $options.militaryTime>>19:00<<else>>seven pm<</if>> on <<if (setup.getUTCDay($now) >= 3) && (setup.getUTCDay($now) != 0)>>
Sunday...
<<else>>
Wednesday...
<</if>>
until then!@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist topic: npc_barista blowjobs
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up <<=ps(setup.getNpcName("npc_barista","nickname"))>> "therapy sessions" and how she said they end with a blow-job.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins. "@@.npc_psychiatrist;Yes, well, sometimes with problem patients I need a little relief, myself. And forcing a few moments of reflective silence, while putting their yapping mouth to better use? Well, that's good for everyone.@@"
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles gently. "@@.npc_psychiatrist;Every patient has their own needs. In some cases that includes... special arrangements to build rapport and decompress after a... difficult session.@@"
<</if>>
<br><br>
<<if $npc_psychiatrist.flags.cruel && $options.get_raped>>
<<set $npc_psychiatrist.flags.bj_style = "harsh">>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> pauses and looks at you a little longer as she grin widens and her eyes sparkle with cruelty. "@@.npc_psychiatrist;I would ask why you brought something like that up... but we both know the truth. You're a horny cock-slut <<if $fetish.sissy>>sissy <</if>>bitch... I guess the only reason I hadn't initiated such a procedure before is, well... you're so pathetic it would be hard for me to get it up... but I AM a professional, so I will make the effort and face-rape you at the end of each session, just like you deserve.@@"<br>
<br>
You gulp nervously as she makes an adjustment to your file and then resumes staring back at at you, awaiting your next "question." <br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<else>>
[<<moveTo "theme_psychiatrist_post_bj_ask_2" "Ask if you could have a similar end to your sessions?" 180>>]<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist topic: ask for post-session bj
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_blowjobs')>>
<<set $npc_psychiatrist.themes.npc_barista[_themeId].repeatable = false>>
<<addNpcTheme 'npc_psychiatrist' 'therapy' 'theme_post_session_blowjobs'
0
'theme_psychiatrist_post_bj_adjust_1'
true
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask if you could "finish off" your sessions in a similar manner to <<=setup.getNpcName("npc_barista","nickname")>>?<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles playfully. "@@.npc_psychiatrist;A similar manner? Now, now, in here we need to be HONEST with one another. And that means speaking truth, not talking around things. So, tell me again, how is it that you want to end our sessions?@@"<br>
<br>
[<<moveTo "theme_psychiatrist_post_bj_ask_3_gentle" 'You want to suck <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> sweet cock...' 180>>]<br>
[<<moveTo "theme_psychiatrist_post_bj_ask_3_harsh" 'You want <<=setup.getNpcName("npc_psychiatrist", "formal")>> to face-fuck you.' 180>>]
</div>/*#
#desc: psychiatrist topic: ask for harsh bj
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<set $npc_psychiatrist.flags.bj_style = "harsh">>
You straighten up and confidently declare that you want <<=setup.getNpcName("npc_psychiatrist", "formal")>> to finish off your therapy sessions by pushing you to your knees and face-fucking you.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> grins. "@@.npc_psychiatrist;Of course you do, you cock-hungry <<if $fetish.sissy>>sissy <</if>>slut... don't you feel better asking for what you deserve?@@" She chuckles, "@@.npc_psychiatrist;Of course this request does present a challenge for me... I mean, getting aroused enough to get hard for a pathetic <<if $fetish.cum>>cum-dump<<else>>slut<</if>> like yourself? Certainly a challenge... but, fortunately for you, I am a professional who will do what it takes to make certain her patients get what they deserve.@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> smiles. "@@.npc_psychiatrist;Oh, isn't it just lovely to proudly express your desires? Oh, you have come so far in blossoming into your best self, and I am just happy as a clam to be a part of it,@@" She pauses for a moment and laughs, "@@.npc_psychiatrist;Well, maybe not a clam, per se, but as to your request I will CERTAINLY be accommodating you... mmm, I'd say the thought has me looking forward to the end of our session... but you know how much I just love EVERY part of our time together... though this new routine will be quite the nice cherry-on-top!@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: ask for gentle bj
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<set $npc_psychiatrist.flags.bj_style = "gentle">>
You straighten up and politely ask if you could finish off your therapy session by showing your gratitude and sucking <<=setup.getNpcName("npc_psychiatrist", "formal")>> off?<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> smirks. "@@.npc_psychiatrist;Mmm, that does sound appropriate. Certainly you pay good credits for our time... but that? Well, it is definitely a more appropriate act for <<if setup.getTotalValue("whoring") > 5>>a<<else>>an aspiring<</if>> <<if $fetish.sissy>>sissy <</if>>whore like yourself.@@" She chuckles, "@@.npc_psychiatrist;Of course this request does present a challenge for me... I mean, getting aroused enough to get hard for a pathetic <<if $fetish.cum>>cum-dump<<else>>slut<</if>> like yourself? Certainly a challenge... but, fortunately for you, I am a professional who will do what it takes to make certain her patients get what they deserve.@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> smiles. "@@.npc_psychiatrist;Oh, isn't it just lovely to proudly express your desires? Oh, you have come so far in blossoming into your best self... and so sweet and polite! Why I could just eat you up!@@" She pauses for a moment and laughs, "@@.npc_psychiatrist;Well, I suppose the reverse will be more the case, hmmm? Anyway, of course I will be happy to accommodate you... mmm, I'd say the thought has me looking forward to the end of our session... but you know how much I just love EVERY part of our time together... though this new routine will be quite the nice cherry-on-top!@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: intro to blow her after session
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addPsychiatristEndless">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist", "formal")>> places her pen down and rises to her feet. "@@.npc_psychiatrist;Well, if that will be all for today... I believe there is one remaining matter?@@" She smiles as she lifts her skirt and pulls her panties to one side to <<if $scene.chastity_uncomfortable>>unlock and remove her chastity cage and <</if>>reveal her small but stiff erection.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
<<if $npc_psychiatrist.flags.bj_style == "harsh">>
"@@.npc_psychiatrist;A nice rough face-fucking is what I believe we agreed to, hmm? Just what you deserve... and a nice way to shut you up after I've had to listen to your babbling bullshit for the past hour...@@"
<<else>>
"@@.npc_psychiatrist;A nice blowjob, yes? Just what I deserve after I've had to listen to your babbling bullshit for the past hour...@@"
<</if>>
<<else>>
<<if $npc_psychiatrist.flags.bj_style == "harsh">>
"@@.npc_psychiatrist;A nice rough face-fucking is what I believe we agreed to, hmm? So bold! And bracing! Think of it as really pounding the lessons of the past hour home, hmm?@@"
<<else>>
"@@.npc_psychiatrist;A nice gentle blowjob, yes? Such a sweet end to the session, and a wonderful opportunity to you to reflect on what you've learned in the past hour...@@"
<</if>>
<</if>>
<br><br>
<<if $npc_psychiatrist.flags.bj_style == "harsh">>
[<<moveTo "event_psychiatrist_post_bj_harsh_1" 'Continue.' 300>>]<br>
<<else>>
[<<moveTo "event_psychiatrist_post_bj_gentle_1" 'Continue.' 300>>]<br>
<</if>>
[<<moveTo "event_psychiatrist_post_bj_abort_1" "Actually... you'd rather not do this." 60>>]
</div>/*#
#desc: abort blow her after session
#status: RELEASED 0.9.4.0
#ignore_spell: rapeable
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You hesitate and, remembering that you need to be an advocate for yourself, state that you'd rather not blow her today.<br>
<br>
<<if $npc_psychiatrist.flags.cruel && $fetish.get_raped>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> snorts. "@@.npc_psychiatrist;Rather not? Were you under the delusion that you had a choice in the matter? Goddess, you're as dumb as you are rapeable... now open wide! I wouldn't want to bruise those pretty <<if $fetish.sissy>>sissy-<</if>>slut lips of yours!@@"<br>
<br>
[<<moveTo "event_psychiatrist_post_bj_harsh_1" "Gulp..." 180>>]
<<else>>
<<if $npc_psychiatrist.flags.cruel>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> sniffs. "@@.npc_psychiatrist;Very well... it really is more of an ordeal for me than you... having to take even more of my time for such a pathetic patient. If you will not being putting your lips to proper use, well... I believe we are finished.@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> nods. "@@.npc_psychiatrist;Of course. All parts of your treatment are done out of a mutual desire to improve you, your consent is key to the doctor/patient bond. If today you are not in the mood <<if $npc_psychiatrist.flags.bj_style == "harsh">>for me to face-fuck that beautiful face?<<else>>to let me enjoy those beautiful dick-pillow lips?<</if>> Well... there is always some other week.@@" She smiles and waves goodbye as you prepare to depart.
<</if>>
<br><br>
<<if setup.checkOutsideDecency()>>
<<if $npc_psychiatrist.flags.dinner.ate>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo 'event_psych_dinner_invite_1_repeat' 'Ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner.' 180 "<<set $player.cutscene.lockinventory=true>>" >>]<br>
<<else>>
[@@.link_locked;You should keep a clear schedule if you want to invite <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner again.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo "room_citymap" "Thank her and leave the office." 180 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory=false>>">>]
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: harsh blow her after session
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist", "formal")>> grabs you by the hair and drags you face-first into her crotch.<br>
<br>
Her hard girl-dick is certainly not a challenge<<if setup.getTotalValue("oral") < 5>>, even for your minimal experience<</if>>, but she makes up for the inability to bruise your throat with enthusiasm, pressing you tight as she makes short, quick, jack-hammer poundings. Your puckered lips suck as your nose is smashed into <<=setup.getNpcName("npc_psychiatrist", "formal")>> as she sates her pleasure and suffocates you all at the same time.<br>
<br>
"@@.npc_psychiatrist;Good <<if $fetish.sissy>>sissy<<else>><<switch $npc_psychiatrist.flags.knowgender>><<case 'male' ''>>boy<<case 'female'>>girl<<case 'agender' 'fluid'>><<=$player.first_name>><</switch>><</if>>, suck me hard, be the living onahole you were meant to be...@@"<br>
<br>
<<if $fetish.cum>>
With a final gasp <<=setup.getNpcName("npc_psychiatrist", "formal")>> shoots her load across your tongue, scant drops of thin, sweet girl-semen
<<if setup.getTotalValue("cum") > 10>>
made all the more delectable by their scarcity.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
as alluringly tasty as they are scant in quantity.
<<else>>
a brief burst of disturbingly tasty treat that you hurriedly swallow.
<</if>>
<</if>>
<<else>>
With a delicate gasp <<=setup.getNpcName("npc_psychiatrist", "formal")>> cums, her small peen, twitching between your lips as she grinds your face against herself for a final few moments before all but tossing you away.
<</if>>
<br><br>
"@@.npc_psychiatrist;Good slut,@@" <<=setup.getNpcName("npc_psychiatrist", "formal")>> finishes with a smile before giving you a gentle slap on the cheek. "@@.npc_psychiatrist;You took that dick like a champ<<if $npc_psychiatrist.flags.cruel>>... probably the most important lesson of the day!<<else>>, a real capstone to the day's efforts.<</if>>@@"<br>
<br>
You catch your breath and rise to leave, another of <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> unique therapy sessions in the books.<br>
<br>
<<if setup.checkOutsideDecency()>>
<<if $npc_psychiatrist.flags.dinner.ate>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo 'event_psych_dinner_invite_1_repeat' 'Ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner.' 180 "<<set $player.cutscene.lockinventory=true>>" >>]<br>
<<else>>
[@@.link_locked;You should keep a clear schedule if you want to invite <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner again.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo "room_citymap" "Thank her and leave the office." 180 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory=false>>">>]
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: gentle blow her after session
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist", "formal")>> moves closer, tenderly stroking your face as she brings her girl-dick to your lips. Looking gently upwards, you begin to suck. Your lips easily part for this most-unchallenging of cocks as you kiss and suck and lick every square millimetre of the delicate and delicious cock-head.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> bites her lip and lets out an oh-so-sweet gasp, showing off her professional stamina in holding back her orgasm to give you more time to "enjoy"
<<if $fetish.cum>>
before eventually shooting her load across your tongue, scant drops of thin, sweet girl-semen
<<if setup.getTotalValue("cum") > 10>>
made all the more delectable by their scarcity.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
as alluringly tasty as they are scant in quantity.
<<else>>
a brief burst of disturbingly tasty treat that you hurriedly swallow.
<</if>>
<</if>>
<<else>>
before climaxing, a gentle, sensuous orgasm that sees her twitch several tantalising times before softening with a sigh.
<</if>>
<br><br>
"@@.npc_psychiatrist;Good <<if $fetish.sissy>>sissy<<else>><<switch $npc_psychiatrist.flags.knowgender>><<case 'male' ''>>boy<<case 'female'>>girl<<case 'agender' 'fluid'>><<=$player.first_name>><</switch>><</if>>,@@" <<=setup.getNpcName("npc_psychiatrist", "formal")>> whispers as she strokes your cheek.
<<if $npc_psychiatrist.flags.cruel>>
"@@.npc_psychiatrist;You have performed... adequately. And with that, our session is finally at an end. Goodbye until our next.@@" She states with a curt finality as she spins and walks back towards her desk.
<<else>>
"@@.npc_psychiatrist;Such a lovely end of a lovely session... with a lovely <<switch $npc_psychiatrist.flags.knowgender>><<case 'male' ''>>boy<<case 'female'>>girl<<case 'agender' 'fluid'>>enby<</switch>>.@@" She states with a smile, her fingers lingering on your cheeks for a few moments more as you reply with a kiss... and then she turns to walk back to her desk.
<</if>>
<br><br>
<<if setup.checkOutsideDecency()>>
<<if $npc_psychiatrist.flags.dinner.ate>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo 'event_psych_dinner_invite_1_repeat' 'Ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner.' 180 "<<set $player.cutscene.lockinventory=true>>" >>]<br>
<<else>>
[@@.link_locked;You should keep a clear schedule if you want to invite <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner again.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo "room_citymap" "Thank her and leave the office." 180 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory=false>>">>]
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: theme: adjust bj style
#status: RELEASED 0.9.4.0
#ignore_spell: bj
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You state that you would like to make an "adjustment" to the end-of-session blowjob you give to <<=setup.getNpcName("npc_psychiatrist", "formal")>>.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> sneers dismissively. "@@.npc_psychiatrist;Oh? And what is it that you want?@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> smiles gently. "@@.npc_psychiatrist;Of course! What would you like to change?@@"
<</if>>
<br><br>
<<switch $npc_psychiatrist.flags.bj_style>>
<<case "harsh">>
[<<moveTo "theme_psychiatrist_post_bj_adjust_2" 'You would like to continue face-fucking you at the end of each session.' 60 "<<set $scene.style='harsh'>>">>]<br>
[<<moveTo "theme_psychiatrist_post_bj_adjust_2" "You would like to give her a more tender, gentle blowjob at the end of each session." 60 "<<set $scene.style='gentle'>>">>]<br>
[<<moveTo "theme_psychiatrist_post_bj_adjust_2" "You would like to stop blowing her at all after your therapy sessions." 60 "<<set $scene.style=''>>">>]
<<case "gentle">>
[<<moveTo "theme_psychiatrist_post_bj_adjust_2" "You were wondering if she could face-fuck you?" 60 "<<set $scene.style='harsh'>>">>]<br>
[<<moveTo "theme_psychiatrist_post_bj_adjust_2" "You would like continue giving her more tender, gentle blowjob at the end of each session." 60 "<<set $scene.style='gentle'>>">>]<br>
[<<moveTo "theme_psychiatrist_post_bj_adjust_2" "You would like to stop blowing her after your therapy sessions." 60 "<<set $scene.style=''>>">>]
<<case "">>
[<<moveTo "theme_psychiatrist_post_bj_adjust_2" "You were wondering if she could face-fuck you?" 60 "<<set $scene.style='harsh'>>">>]<br>
[<<moveTo "theme_psychiatrist_post_bj_adjust_2" "You would like to give her a more tender, gentle blowjob." 60 "<<set $scene.style='gentle'>>">>]<br>
[<<moveTo "theme_psychiatrist_post_bj_adjust_2" "You would like to continue not blowing her after your therapy sessions." 60 "<<set $scene.style=''>>">>]<br>
<<default>>
ERROR: unexpected npc_psychiatrist.flags.bj_style <<=$npc_psychiatrist.flags.bj_style>>
<</switch>>
</div>/*#
#desc: theme: finish adjust bj style
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<set $scene.noCurrentBJ = $npc_psychiatrist.flags.bj_style == "">>
<<set $scene.change = $scene.style != $npc_psychiatrist.flags.bj_style>>
<<if !($npc_psychiatrist.flags.cruel && $fetish.get_raped && $scene.style == "")>>
<<set $npc_psychiatrist.flags.bj_style = $scene.style>>
<</if>>
<<if $npc_psychiatrist.flags.cruel && $fetish.get_raped && $scene.style == "">>
You state that you would like to stop <<if $npc_psychiatrist.flags.bj_style == "harsh">>getting face-fucked by<<else>>blowing<</if>> <<=setup.getNpcName("npc_psychiatrist", "formal")>> at the end of each session and she sneers and laughs in your face.<br>
<br>
"@@.npc_psychiatrist;I have told you before. Your treatment is whatever I say it is. Patient consent is a lie spoken by cowards unwilling to do the hard work of forcing problem patients to have the treatment they need. Thus, I will continue to treat you as I see fit<<if $npc_psychiatrist.flags.bj_style == "gentle">>... and, really, you should be grateful that I let you merely suck me off instead of face-raping that cock-socket you call a mouth<</if>>.@@"
<<elseif $scene.change>>
<<switch $scene.style>>
<<case "gentle">>
You reply that you would like it if you could finish each session by giving <<=setup.getNpcName("npc_psychiatrist", "formal")>> a nice, gentle blowjob?<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> grins. "@@.npc_psychiatrist;Ready to show proper thanks for all that I do for you in these sessions? Wonderful. Maybe you are treatable, after all...@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> smiles. "@@.npc_psychiatrist;That sounds like a WONDERFUL treatment. Of course I accept, we will start today... once we have resolved your other issues...@@"
<</if>>
<<case "harsh">>
You reply that you would like it if you could finish each session by having <<=setup.getNpcName("npc_psychiatrist", "formal")>> face-fuck you.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> smirks. "@@.npc_psychiatrist;Finally figured out what you're destined for? Lovely, and I will certainly do my part reinforcing your role as a mouth-hole <<if $fetish.sissy>>sissy <</if>>cock-socket.@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> grins. "@@.npc_psychiatrist;Someone is ready to do the hard work in therapy. Wonderful to hear, and, of course, I will do EVERYTHING I can to help... and I'm not just saying that because I love to feel your pressed against my crotch... though I certainly do!@@"
<</if>>
<<case "">>
You reply that you would like to stop <<if $npc_psychiatrist.flags.bj_style == "harsh">>getting face-fucked by<<else>>blowing<</if>> <<=setup.getNpcName("npc_psychiatrist", "formal")>> at the end of each session.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> snorts. "@@.npc_psychiatrist;No skin off my nose. Saves time so I can get back to important things, like my research.@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> smiles. "@@.npc_psychiatrist;Of course, if a given treatment is not working for you, changing it is the proper thing to do. Do keep me informed of any other alterations you wish to make...@@"
<</if>>
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<<else>>
You reply that, actually... you're happy with current arrangements.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> rolls her eyes. "@@.npc_psychiatrist;Then why did you waste our time?@@" <<=setup.getNpcName("npc_psychiatrist", "formal")>> sighs. "@@.npc_psychiatrist;Technically it is your money... but I will still be annoyed at you wasting both of our time.@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> smiles. "@@.npc_psychiatrist;Wonderful to hear... but it is always PERFECTLY fine to check-in and reconsider. Now, what else shall we discuss today?@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: npc_barista pulls you aside to talk about npc_psychiatrist
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
Cafe 52 is sparse as you wait for your order as <<=setup.getNpcName("npc_barista","nickname")>> makes a show of looking for something behind the counter.<br>
<br>
"@@.npc_barista;Hmm, looks like we're out.@@" She looks up at you with a smile as her eyes dart towards the storage room. "@@.npc_barista;Could you, like, give me a hand fetching it from the back room?@@"<br>
<br>
You reply you'd be happy to help and follow <<=setup.getNpcName("npc_barista","nickname")>> as she <<if $npc_barista.flags.milking.first_seen && $fetish.milking>>unhooks herself from the milking system and <</if>>bounces off towards the storage room.<br>
<br>
[<<moveTo "event_barista_psychiatrist_rescue_intro_2" "Follow her." 180>>]
</div>/*#
#desc: npc_barista talks to you about npc_psychiatrist
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52 Storage Room">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/storage.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_barista","nickname")>> into the storage room, but once you turn back from closing the door you find yourself face to face with <<=setup.getNpcName("npc_barista","first")>>.<br>
<br>
"@@.npc_barista;So,@@" she leads off, her tone no longer bubbly, but all business, "@@.npc_barista;<<=setup.getNpcName("npc_boss","formal")>> finally let <<=setup.getNpcName("npc_work_doctor","formal")>> off the leash and, well... you've seen what <<he npc_work_doctor>> did to <<=setup.getNpcName("npc_psychiatrist","first")>>.@@" There is audible concern in her voice as she mentions her friend.<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> sighs. "@@.npc_barista;I guess it's just fortunate that the two of you cured me first... I've been skipping taking drugs and keeping up the facade, but <<=setup.getNpcName("npc_work_doctor","formal")>> injects <<=setup.getNpcName("npc_psychiatrist","first")>> personally. We need to craft an antidote, then sneak into her house and help her detox.@@" Her eyes narrow. "@@.npc_barista;Then we need to deal with that piece of shit <<=setup.getNpcName("npc_work_doctor","formal")>> once and for all.@@"<br>
<br>
<<if State.hasPlayed("event_work_doctor_help_lab_1")>>
<<printThought 'Drugs? That can only mean working for <<=setup.getNpcName("npc_work_doctor","formal")>>...'>><br>
<br>
[<<moveTo "event_barista_psychiatrist_rescue_intro_3" "You'll take care of procuring an antidote." 60 "<<set $scene.antidote=true>>">>]<br>
<<else>>
[@@.link_locked;You don't have enough experience mixing drugs to make an antidote.@@]<br>
<</if>>
[<<moveTo "event_barista_psychiatrist_rescue_intro_3" "How can you get an antidote?" 60 "<<set $scene.antidote=false>>">>]
</div>/*#
#desc: npc_barista talks to you about npc_psychiatrist
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.antidote>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_chemistry'
0
'theme_ai_chemistry'
false
>>
<<if !$npc_work_doctor.flags.nurse_available>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_distraction_0'
0
'theme_psychiatrist_drugs_help_1'
true
>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52 Storage Room">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/storage.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<if $scene.antidote>>
You reply that you've learned enough about <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> drugs that you can make an antidote.<br>
<br>
"@@.npc_barista;Excellent, keep working for <<=setup.getNpcName("npc_work_doctor","formal")>> when you can, we need to keep <<him npc_work_doctor>> from suspecting anything is wrong while we get <<=setup.getNpcName("npc_psychiatrist","formal")>> back into psyching shape and make plans to deal with that <<if !$npc_work_doctor.fem>>son of a <</if>>bitch once and for all.@@"
<<else>>
You ask how to make an antidote?<br>
<br>
"@@.npc_barista;Hmm... I've probably got the raw materials, since I haven't been taking my drugs, but my specialty isn't chemistry... perhaps if you could spend time working with <<=setup.getNpcName("npc_work_doctor","formal")>> you could learn from <<him npc_work_doctor>>? Or, failing that... if <<=setup.getNpcName("npc_ai","other")>> could access <<his npc_work_doctor>> files?@@"<br>
<br>
<<if $npc_work_doctor.flags.nurse_available>>
"@@.npc_barista;Once you have the formula just use your position as <<his npc_work_doctor>> nurse to make the antidote.@@"
<<else>>
"@@.npc_barista;Once you have the formula... you will either need to gain <<his npc_work_doctor>> trust so that <<he npc_work_doctor>> allows you access to <<his npc_work_doctor>> lab, or come to me and I can help with a distraction. Tell me that you heard about a "new candy" and I'll take it from there...@@"
<</if>>
<</if>>
<br><br>
You reply that you'll do what you can and let her know when you have the antidote ready.<br>
<br>
"@@.npc_barista;Great, great,@@" she takes a deep breath. By the time she's let it out <<=setup.getNpcName("npc_barista","nickname")>> is back with a bubbly smile, "@@.npc_barista;Tee hee, here's what I was looking for!@@" She states as she grabs a bottle of creamer. "@@.npc_barista;Thanks for the help!@@"<br>
<br>
You leave the supply room and <<=setup.getNpcName("npc_barista","nickname")>> finishes making your drink.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to the office." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: npc_manager talks to you about npc_psychiatrist
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;So... I was thinking about <<=setup.getNpcName("npc_psychiatrist","formal")>>... her expertise would be quite useful, particularly in removing <<=setup.getNpcName("npc_work_doctor","formal")>>. <<=setup.getNpcName("npc_boss","formal")>> may be the final target, but going after <<him npc_boss>> first is too dangerous — you saw that, yourself. Better to cut away <<his npc_boss>> supporters and build our own forces until we are ready. Because we only get one shot.@@"<br>
<br>
"@@.npc_ai;<<uc "I concur.">>@@" <<=uc(setup.getNpcName("npc_ai","first"))>> states as she shimmers into existence.<br>
<br>
"@@.npc_manager;Fortunately, working on <<his npc_work_doctor>> own, <<=setup.getNpcName("npc_work_doctor","formal")>> is going to stubbornly limit <<him npc_work_doctor>>self to pharmaceutical measures. They are strong, certainly, but it means all we need is an antidote for the cocktail <<he npc_work_doctor>> is shooting <<=setup.getNpcName("npc_psychiatrist","formal")>> up with and we should be able to clear her mind.@@"<br>
<br>
<<if State.hasPlayed("event_work_doctor_help_lab_1")>>
[<<moveTo "event_manager_psychiatrist_rescue_intro_2" "You'll take care of procuring an antidote." 60 "<<set $scene.antidote=true>>">>]<br>
<<else>>
[@@.link_locked;You don't have enough experience mixing drugs to make an antidote.@@]<br>
<</if>>
[<<moveTo "event_manager_psychiatrist_rescue_intro_2" "How can you get an antidote?" 60 "<<set $scene.antidote=false>>">>]
</div>/*#
#desc: npc_manager talks to you about npc_psychiatrist
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_chemistry'
0
'theme_ai_chemistry'
false
>>
<<if !$scene.antidote>>
<<if !$npc_work_doctor.flags.nurse_available>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_distraction_0'
0
'theme_psychiatrist_drugs_help_1'
true
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.antidote>>
You agree to use what you've learned of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> drugs to mix up an antidote for <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
<br>
"@@.npc_manager;Excellent, your proximity to <<=setup.getNpcName("npc_work_doctor","formal")>> should prove quite useful in taking <<him npc_work_doctor>> out.@@"
<<else>>
You ask how you can get an antidote?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> glances towards <<=setup.getNpcName("npc_ai","first")>>.<br>
<br>
"@@.npc_ai;<<uc "Processing... yes, <<if $npc_work_doctor.fem>>her<<else>>his<</if>> formulations are simplistic, I can give you the formula to counter the effects of what <<if $npc_work_doctor.fem>>she<<else>>he<</if>> is giving to <<=uc(setup.getNpcName('npc_psychiatrist','formal'))>>. You need only infiltrate <<if $npc_work_doctor.fem>>her<<else>>his<</if>> lab to mix it together.">>@@"<br>
<br>
<<if $npc_work_doctor.flags.nurse_available>>
"@@.npc_manager;Excellent, you should be able to take advantage of working as <<his npc_work_doctor>> nurse.@@"
<<else>>
"@@.npc_manager;Excellent... you will either need to gain <<his npc_work_doctor>> trust so that <<he npc_work_doctor>> allows you access to <<his npc_work_doctor>> lab... or perhaps you could use <<=setup.getNpcName("npc_barista","nickname")>> as a distraction... try telling her that <<=setup.getNpcName("npc_work_doctor","formal")>> has a new candy for her... that should quite set her off.@@"
<</if>>
<</if>>
<br><br>
You nod.<br>
<br>
"@@.npc_manager;Good luck, and be careful. <<=setup.getNpcName("npc_work_doctor","formal")>> is less aware than <<=setup.getNpcName("npc_boss","formal")>>, but <<he npc_work_doctor>> is still crazy, and VERY dangerous.@@"<br>
<br>
<<include "afterWorkManagerThemes">>
</div>/*#
#desc: ask npc_ai for help mixing antidote
#status: RELEASED 0.9.1.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$fetish.tentacle>>
<<set $npc_psychiatrist.flags.rescue.formula = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_ai","first")>> if she knows how to make an antidote for <<=setup.getNpcName("npc_psychiatrist","formal")>>?<br>
<br>
<<if $fetish.tentacle>>
"@@.npc_ai;<<uc "Processing... yes. Unfortunately, while <<=uc(setup.getNpcName('npc_work_doctor','formal'))>> formulations are simplistic, a cure is more complex than original poison. Perhaps if you could gain access to <<if $npc_work_doctor.fem>>her<<else>>his<</if>> original formulations a more clear plan might emerge.">>@@"
<<else>>
"@@.npc_ai;<<uc "Processing... yes, <<if $npc_work_doctor.fem>>her<<else>>his<</if>> formulations are simplistic, I can give you the formula to counter the effects of what <<if $npc_work_doctor.fem>>she<<else>>he<</if>> is giving to <<=uc(setup.getNpcName('npc_psychiatrist','formal'))>>. You need only infiltrate <<if $npc_work_doctor.fem>>her<<else>>his<</if>> lab to mix it together.">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: tell npc_barista that there is a new candy
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_work_doctor_help_lab_1") || $npc_psychiatrist.flags.rescue.formula>>
You consider telling <<=setup.getNpcName("npc_barista","nickname")>> about a new candy so that she'll distract <<=setup.getNpcName("npc_work_doctor","formal")>> while you mix up an antidote for <<=setup.getNpcName("npc_psychiatrist","formal")>>, but that would be useless, since you don't have a formula for the antidote!<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
<<else>>
You tell <<=setup.getNpcName("npc_barista","nickname")>> that <<=setup.getNpcName("npc_work_doctor","formal")>> has a new candy and her eyes immediately light up with excitement. "@@.npc_barista;New Candy??? Oh! I have to try it, I have to try it now!@@"<br>
<br>
Like a shot she zooms past you and out the door of the cafe, you barely manage to keep up and dive into the elevator after her.<br>
<br>
"@@.npc_barista;Candy, candy, candy! Oh, I'm so excited? Do you think it will make my boobies even bigger? Or maybe my butt? Oh I'm so wet with excitement! <<=setup.getNpcName("npc_work_doctor","formal")>> makes the best candy, don't you think? Oh, it's sweet and makes me so happy...@@" <<=setup.getNpcName("npc_barista","nickname")>> continues to babble on in excitement as the elevator glides upward.<br>
<br>
The doors open and she takes off like a runner coming off the blocks.<br>
<br>
[<<moveTo "event_psychiatrist_drugs_help_2" "Hurry to keep up." 600>>]
<</if>>
</div>/*#
#desc: npc_barista distracts so you can mix drugs
#status: RELEASED 0.9.1.0
#ignore_spell: 'll
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_barista', 'other', 'theme_barista_distraction_0')>>
<<if _themeId != -1>>
<<set $npc_barista.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_work_doctor") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You carefully peek into the laboratory — <<=setup.getNpcName("npc_work_doctor","formal")>> has <<his npc_work_doctor>> back to you as <<=setup.getNpcName("npc_barista","nickname")>> frantically pleads for <<him npc_work_doctor>> to share the "new candy" with her.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> is both exasperated, and distracted as <<=setup.getNpcName("npc_barista","nickname")>> begs, exposing her breasts and offering to suck <<his npc_work_doctor>> cock or anything else if <<he npc_work_doctor>>'ll just please, please let her try the new candy. Making <<his npc_work_doctor>> efforts even more of a challenge, <<=setup.getNpcName("npc_psychiatrist","formal")>> has joined in, lending her bimbo voice to <<=ps(setup.getNpcName("npc_barista","nickname"))>> as they swarm over <<=setup.getNpcName("npc_work_doctor","formal")>> and beg <<him npc_work_doctor>> to give up the "candy" even as <<he npc_work_doctor>> continues to insist it doesn't exist.<br>
<br>
[<<moveTo "event_psychiatrist_drugs_help_3" "Take advantage of the distraction and mix up the antidote." 600>>]
</div>/*#
#desc: npc_barista distracts so you can mix drugs
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'psychiatrist_cure'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_work_doctor") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You hurry past the commotion to one of the familiar drug-mixing stations.
<<if $npc_work_doctor.flags.adv_drug>>
You quickly formulate an antidote to the drugs <<=setup.getNpcName("npc_psychiatrist","formal")>> is suffering under
<<else>>
You carefully enter the formula you got from <<=setup.getNpcName("npc_ai","first")>>
<</if>>
and wait for it to be dispensed. As the machine works you nervously glance over your shoulder to make sure <<=setup.getNpcName("npc_work_doctor","formal")>> hasn't noticed your presence, but <<he npc_work_doctor>> is still flummoxed by the dual pleading bimbos.<br>
<br>
You almost jump when a *DING* signals the drug production is complete, and you quickly scoop up the syringe and duck out of the way before <<=setup.getNpcName("npc_work_doctor","formal")>> looks over.<br>
<br>
<<He npc_work_doctor>> didn't see you, but the distraction seems to have been enough to realise that arguing with two insatiable bimbos is a losing proposition.<br>
<br>
"@@.npc_work_doctor;Dammit you sluts, you want candy? Come here, I'll show you...@@" <<He npc_work_doctor>> states in annoyance as <<he npc_work_doctor>> storms off across the lab.<br>
<br>
"@@.npc_barista;Yay!@@" "@@.npc_psychiatrist;Yay!@@" The two bimbos shout in airhead stereo as they hurry after <<him npc_work_doctor>> like a pair of eager puppies.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 15>>
You barely resist the urge to run after to join in on whatever drug-fuelled, machine-powered abuse <<=setup.getNpcName("npc_work_doctor","formal")>> is about to inflict on your friends.<br>
<br>
<<printThought "No, I need to get what I came for and get out of here before I get caught.">>
<<else>>
You wince at the night of drug-fuelled machine-powered abuse your two friends are certainly in for... though <<if $npc_barista.flags.rescue.cure>>you're sure at least one of them will love it<<else>>you suspect they're both going to love it<</if>>.
<</if>>
<br><br>
You double check that you aren't leaving evidence behind of your efforts<<if $npc_barista.flags.rescue.cure>> before<<else>>, as you notice the machine spit out a second dose while you were hiding. Grabbing it as well<</if>> you hurry out of the lab. Now you just have to find a private place where you can give <<=setup.getNpcName("npc_psychiatrist","formal")>> her medicine...<br>
<br>
[<<moveTo "event_psychiatrist_drugs_leave" "Hurry down to the lobby." 600>>]
</div>/*#
#desc: mix cure while working for npc_work_doctor
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.tentacle>>
<<if setup.checkItemInInventory("chuck_egg")>>
<<deleteItem "chuck_egg">>
<<addItem 'psychiatrist_cure'>>
<</if>>
<<else>>
<<addItem 'psychiatrist_cure'>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You confirm that <<=setup.getNpcName("npc_work_doctor","formal")>> is out of sight before you
<<if $fetish.tentacle>>
<<if setup.checkItemOwned("psychiatrist_cure")>>
follow <<=ps(setup.getNpcName("npc_botanist","first"))>> directions, mixing several chemicals and finishing off with one of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> egg-like fruits to come up with an... interestingly-smelling drug that a mere whiff has you feeling more focused and alert.
<br><br>
You end up with a
<<if $npc_barista.flags.rescue.cure>>
syringe full of the "cure" and you quickly pocket it
<<else>>
pair of syringe's full of the "cure" and you quickly scoop them up
<</if>>
and make sure you left no evidence of your tampering.<br>
<br>
You hear the sound of <<=setup.getNpcName("npc_work_doctor","formal")>> coming back into the lab and you decide to make your exit.<br>
<br>
[<<moveTo "event_psychiatrist_drugs_leave" "Hurry down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
<<else>>
try to follow <<=ps(setup.getNpcName("npc_botanist","first"))>> directions, but you <<if setup.checkItemOwned("chuck_egg")>>forgot <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> egg-like fruit at home<<else>>lack the final ingredient of one of <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> egg-like fruits<</if>> and are unable to complete the formula.<br>
<br>
<<printThought "Damn... need to come more prepared if I'm going to brew this up...">><br>
<br>
You hear the sound of <<=setup.getNpcName("npc_work_doctor","formal")>> coming back into the lab and you decide to make your exit.<br>
<br>
[<<moveTo "company_lobby" "Step out." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
<</if>>
<<else>>
<<if $npc_work_doctor.flags.adv_drug>>
quickly formulate an antidote to the drugs <<=setup.getNpcName("npc_psychiatrist","formal")>> is suffering under
<<else>>
carefully enter the formula you got from <<=setup.getNpcName("npc_ai","first")>>
<</if>>
and wait for it to be dispensed.<br>
<br>
You end up with a
<<if $npc_barista.flags.rescue.cure>>
syringe full of the "cure" and you quickly pocket it
<<else>>
pair of syringe's full of the "cure" and you quickly scoop them up
<</if>>
and make sure you left no evidence of your tampering.<br>
<br>
With a deep breath, you walk out of the laboratory.<br>
<br>
[<<moveTo "event_psychiatrist_drugs_leave" "Hurry down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: npc_ai congratulates after you get drugs for psychiatrist
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 14, 0, false)>>
<<addTaskById 'psychiatrist_cure' _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You board the elevator down and the doors close just as <<=setup.getNpcName("npc_ai","first")>> appears.<br>
<br>
"@@.npc_ai;<<uc "Well done, Unit">> <<uc $player.first_name>><<uc '. The antidote should restore <<=uc(ps(setup.getNpcName("npc_psychiatrist","formal")))>> cognisance. The interplay of drugs in her system will likely be potent, you will want to secure her before you administer things.'>>@@"<br>
<br>
You ask if there's somewhere safe where you could do things?<br>
<br>
"@@.npc_ai;<<uc "Yes. Her old office is unoccupied, and un-watched. It has the required equipment to securely restrain her and should work perfectly for our needs... and her mindlessly returning to her old haunt would not raise any particular red flags. Go there on Friday, at your once usual time, I will arrange for <<=uc(setup.getNpcName('npc_psychiatrist','formal'))>> and <<=uc(setup.getNpcName('npc_barista','formal'))>> to meet you there.">>@@"<br>
<br>
<<if !$npc_barista.flags.rescue.cure>>
You promise to be there, but ask <<=setup.getNpcName("npc_ai","first")>> why she would send <<=setup.getNpcName('npc_barista','nickname')>> as well?<br>
<br>
"@@.npc_ai;<<uc "The two of them were close, she will be helpful in restoring <<=uc(setup.getNpcName('npc_psychiatrist','formal'))>>. Though <<=uc(ps(setup.getNpcName('npc_barista','formal')))>> affliction would require far more effort to cure permanently, the second dose should be sufficient to give her clarity for long enough for the two of you to aid <<=uc(setup.getNpcName('npc_psychiatrist','formal'))>>.">>@@"<br>
<br>
<</if>>
She disappears and the elevator doors open onto the lobby.<br>
<br>
[<<moveTo "company_lobby" "Step out." 300>>]
</div>/*#
#desc: research cure npc_work_doctor
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You go searching through <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> records in hopes of finding a hint as to the formulation of whatever it is that <<he npc_work_doctor>> used on <<=setup.getNpcName("npc_psychiatrist","formal")>>. As you scan through scientific papers that you <<if setup.getTotalValue("smart") > 15>>lack the background to truly understand<<else>>have no clue how to really understand<</if>> you notice something curious. While the last name <<=setup.getNpcName("npc_work_doctor","last")>> shows up repeatedly, the first initial varies, with most of the older, more cited papers written not by <<=setup.getNpcName("npc_work_doctor","full")>> but by a <<=setup.getNpcName("npc_botanist","full")>>.<br>
<br>
<<printThought "Wait... <<=setup.getNpcName('npc_botanist','first')>>?">><br>
<br>
<<if $npc_chuck.stage >= 3>>
You recall that's the same name as the owner of <<printShopName 'plant_shop' true>>, the woman who helped you with <<=setup.getNpcName("npc_chuck","suffix")>>...
<<elseif $npc_botanist.profile>>
You recall that's the same name as the owner of <<printShopName 'plant_shop' true>> near the mall...
<<else>>
The name sounds familiar, it takes you a moment, but you're pretty sure that was how the owner of <<printShopName 'plant_shop' true>> near the mall introduced herself way back when you bought <<=setup.getNpcName("npc_chuck","suffix")>> for your then-girlfriend...
<</if>>
thinking about it there could be a bit of a familial resemblance between her and <<=setup.getNpcName("npc_work_doctor","formal")>>... it could just be a coincidence, but you don't have any better leads, so maybe a trip to the horticulturist is in order?<br>
<br>
[<<moveTo "company_lobby" 'Close up your search and hurry down to the lobby before <<=setup.getNpcName("npc_work_doctor","formal")>> returns.' 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: ask horticulturist about research
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_botanist","first")>> what her last name is?<br>
<br>
"@@.npc_botanist;Last name? I thought we were more casual than that! But, if you insist, my full name is <<=setup.getNpcName("npc_botanist","full")>>... <<=setup.getNpcName("npc_botanist","full_formal")>>, technically, but who needs to be throwing around formal titles like that, hmm? It can be so elitist and off-putting!@@"<br>
<br>
You blink in surprise that your hunch paid off, quickly clarifying by asking if she's any relation to <<=setup.getNpcName("npc_work_doctor","formal")>> at work?<br>
<br>
<<=setup.getNpcName("npc_botanist","first")>> raises an eyebrow in surprise. "@@.npc_botanist;My little <<if $npc_work_doctor.fem>>sister<<else>>brother<</if>>... well, by about ten minutes. We are twins, you see, fraternal, not identical, obviously. I say obviously because, well... I presume you have met <<=setup.getNpcName("npc_work_doctor","first")>>? My condolences, if so...@@"<br>
<br>
[<<moveTo "event_psychiatrist_drugs_bot_help_2" 'Explain the situation, and why you came to <<=setup.getNpcName("npc_botanist","first")>> for help.' 300>>]
</div>/*#
#desc: horticulturist explains research and gives tip
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.rescue.formula = true>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You explain that you have more than met <<=setup.getNpcName("npc_work_doctor","formal")>>, continuing on to explain how you were going through <<his npc_work_doctor>> files looking for an antidote to one of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> concoctions when you ran across <<=ps(setup.getNpcName("npc_botanist","full_formal"))>> name.<br>
<br>
"@@.npc_botanist;I see...@@" she sighs, "@@.npc_botanist;as you have presumably guessed, I was not always selling plants to the public. I was top of my class in bio-chem, my thesis focused on pharmaceutical applications of certain rare and exotic plants... I found corporate life stressful, however, and ended up walking away to instead open this store. My <<if $npc_work_doctor.fem>>sister<<else>>brother<</if>> however... well, it would seem they have taken my studies in more... extreme directions.@@"<br>
<br>
<<=setup.getNpcName("npc_botanist","first")>> shakes her head. "@@.npc_botanist;They were always more ambitious than I was... but sloppy, prone to taking shortcuts, always focused on the results without concern as to the costs or risks in getting there... or perhaps most unfortunately, the ulterior motives of the person funding their work. I suppose that, in a way, the situation you face is at least partially my responsibility to cleanup, picking up after my little <<if $npc_work_doctor.fem>>sister<<else>>brother<</if>> yet again...@@"<br>
<br>
"@@.npc_botanist;As to the issue at hand, well... nature seems to love symmetry, and just as the chemicals <<=setup.getNpcName("npc_work_doctor","formal")>> seeks to employ descend from those I once isolated so, too are their complementary antidotes. She pulls out a piece of paper and sketches out a formula. This should be what you need, a simple combination of some of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> extracts... but with a missing ingredient a bit closer to home.@@"<br>
<br>
She smiles
<<if $npc_chuck.stage >= 3>>
"@@.npc_botanist;that lovely pet plant of yours? Well, it can produce a certain fruit-like product in response to irritation. It should prove the final piece to mixing the antidote you require.@@"
<<elseif $npc_botanist.profile>>
"@@.npc_botanist;so, that lovely pet plant of yours? Well, if you grow it to full size it has the potential to produce a certain fruit-like product in response to irritation. It should prove the final piece to mixing the antidote you require.@@"
<<else>>
"@@.npc_botanist;that little plant I once sold you? Well, if you care for it and help it grow, at full size it has the potential to produce a certain fruit-like product in response to irritation. It should prove the final piece to mixing the antidote you require. Do come back if you run into any issues in the process of nurturing your leafy friend.@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_drugs_bot_help_3" 'She hands you a small phial.' 120>>]
</div>/*#
#desc: horticulturist gives plant food
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'plant_food'>>
<</if>>
<<set $player.location to "<<printShopName 'plant_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/plant_shop.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
"@@.npc_botanist;That is a synthetic plant nutrient<<if State.hasPlayed("room_chuck_nutrient_1")>>, I believe you have used it before<</if>>. A side effect of some of the binding agents are to provide an irritant that will spur a protective growth, much like an oyster building a pearl. The resulting nodule is packed with refined proteins that will be just the ticket to complete your antidote. I will warn you, however... the extraction of the egg-like growth can be very... intense.@@"<br>
<br>
You thank her for the information, and the plant food.<br>
<br>
"@@.npc_botanist;Of course! As I said, given that it is my work, and my twin, well... I have an obligation. On a similar note, well... should things go badly with <<=setup.getNpcName("npc_work_doctor","first")>> well... <<he npc_work_doctor>> is family.@@"<br>
<br>
You nod, thanking her again before awkwardly making your departure from the shop.<br>
<br>
[<<moveTo "room_mall" "Leave." 120>>]
</div>/*#
#desc: ai calls for failing planned cure of psychiatrist
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 14, 0, false)>>
<<addTaskById 'psychiatrist_cure' _nextDate>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall from an unknown number.<br>
<br>
"@@.npc_ai;<<uc "Unit">> <<uc $player.first_name>><<uc '. You are not in position at the office of <<=uc(setup.getNpcName("npc_psychiatrist","formal"))>> to enact her cure... this is a disappointment, and a delay. I shall re-schedule for next week, please do not fail to appear again.'>>@@"<br>
<br>
The call ends.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: psychiatrist lobby evil
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_anteroom.png">>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_psychiatrist','formal'))>> former office is eerily quiet as you make your way inside. You do a quick exploration — her office appears to have been ransacked of records, but everything else is as you remember it, save for a thin coating of dust.<br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_psychiatrist_lobby')>>
<<if setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
[<<moveTo "room_psychiatrist_lobby" "Settle in to wait." _tmpSeconds>>]<br>
<</if>>
[<<moveTo "room_citymap" "Leave." 300>>]
</div>/*#
#desc: wait for others to show up
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_psychiatrist_lobby')>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_anteroom.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You hear the door open and hear the voices of <<=setup.getNpcName("npc_psychiatrist","formal")>> and <<=setup.getNpcName("npc_barista","nickname")>> chatting back and forth.<br>
<br>
"@@.npc_psychiatrist;Why are we, like, here? We should go to the mall and shop for clothes!@@"<br>
<br>
"@@.npc_barista;I, like, told you! You're supposed to have a session with me today. Just because you're finally eating yummy candy like me doesn't mean you can skip on my therapy!@@"<br>
<br>
"@@.npc_psychiatrist;Therapy? That's silly, drugs are better! You just want me to, like, fuck you!@@"<br>
<br>
"@@.npc_barista;Like, duh!@@"<br>
<br>
"@@.npc_psychiatrist;But I'm in, like chastity! It sucks, but <<Master npc_work_doctor>> says I need it when <<he npc_work_doctor>>'s not around...@@"<br>
<br>
"@@.npc_barista;That, like, totally sucks, but you still have, like a tongue and a fist and I'm just so horny to feel you inside of me!@@"<br>
<br>
[<<moveTo "event_psychiatrist_cure_2" "Cough to get their attention." 300>>]
</div>/*#
#desc: temporarily turn npc_barista smart
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_psychiatrist_lobby')>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_anteroom.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You cough and the two bimbos look over at you.<br>
<br>
"@@.npc_psychiatrist;Look! It's <<=$player.first_name>>! Did you come for therapy too? Oh, we should have a@@" she pauses, scrunching in concentration as she points at each of you in turn and mouths to herself "@@.npc_psychiatrist;A threesome! Yeah!@@"<br>
<br>
<<printThought "She's struggling to count to three? What the hell has <<=setup.getNpcName('npc_work_doctor','formal')>> done to her?">><br>
<br>
<<if $npc_barista.flags.rescue.cure>>
<<=setup.getNpcName("npc_barista","first")>> looks at you with obvious relief.<br>
<br>
"@@.npc_barista;Yay, <<=$player.first_name>> is here! Come on, <<=setup.getNpcName('npc_psychiatrist','nickname')>> — we need to get you into position for your injection!@@"<br>
<br>
"@@.npc_psychiatrist;Injection?@@" <<=setup.getNpcName('npc_psychiatrist','formal')>> asks in confusion, "@@.npc_psychiatrist;Is it time for another one? Oh, I just love getting my shots, they make me feel so pink and empty and happy!@@"<br>
<br>
You nod and explain that it's a very special shot as you and <<=setup.getNpcName("npc_barista","first")>> lead your excited, ditzy friend through the office.
<<else>>
You remember <<=ps(setup.getNpcName("npc_ai","first"))>> instructions and pull out the first syringe as you smile at <<=setup.getNpcName("npc_barista","nickname")>> and explain that you have a fun new drug for her.<br>
<br>
"@@.npc_barista;Oh yay! I love getting shots!@@" She replies eagerly as she runs over and presents her arm.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> watches eagerly as you inject <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
Almost instantly her expression clears as a whirlwind of emotions passes over her face — horror, shock, and then relief.<br>
<br>
"@@.npc_barista;Holy shit, is it, is it over?@@" She asks, her voice bearing none of her normal bubblyness.<br>
<br>
You reluctantly explain that it's only temporary, but that you need her help to cure <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
<br>
She nods, looking over at <<=setup.getNpcName("npc_psychiatrist","formal")>> with an expression of love.<br>
<br>
"@@.npc_barista;Let's do it... and hopefully she can help me permanently... and until this wears off? Please call me <<=setup.getNpcName("npc_barista","first")>>...@@"<br>
<br>
You wince at the pain in her eyes and promise <<=setup.getNpcName("npc_barista","first")>> to do as she asked.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> is obviously confused, but she goes along with a giggle as you and <<=setup.getNpcName("npc_barista","first")>> lead her through the office.
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_cure_3" "Continue." 1800>>]
</div>/*#
#desc: strap psychiatrist down
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_barista","first")>> lead <<=setup.getNpcName("npc_psychiatrist","formal")>> through to the secret back-room laboratory. At the sight of the bondage chair <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> eyes light up and she jumps onto it.<br>
<br>
"@@.npc_psychiatrist;Oooh! Strap me down and shoot me up... and then... can I, like... have some VR? I know <<=setup.getNpcName("npc_work_doctor","formal")>> doesn't like it but I remember that it could make my brain even mushier. Mmmm, I want my, like, mind to be happy, blank and empty!@@"<br>
<br>
You can see the pain on <<=ps(setup.getNpcName("npc_barista","first"))>> face as the two of you tightly strap <<=setup.getNpcName("npc_psychiatrist","formal")>> down.<br>
<br>
Once <<=setup.getNpcName("npc_psychiatrist","formal")>> is secured you pull <<=setup.getNpcName("npc_barista","first")>> aside and ask if she's okay?<br>
<br>
<<if $npc_barista.flags.rescue.cure>>
"@@.npc_barista;Sorry just... memories. Come on let's get <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> poison out of her and then figure out how to make sure nobody else falls victim to <<his npc_work_doctor>> madness.@@"
<<else>>
"@@.npc_barista;Sorry just... knowing I'll be like that again soon... promise me that once we've purged her of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> poison you and <<=setup.getNpcName("npc_psychiatrist","formal")>> will try and figure something out? And, whatever happens, that you'll figure out how to end <<him npc_work_doctor>> for good?@@"
<</if>>
<br><br>
You nod, doing a triple check of the restraints before you pull out the syringe and hand it to <<=setup.getNpcName("npc_barista","first")>> to inject her friend.<br>
<br>
[<<moveTo "event_psychiatrist_cure_4" "Watch the drugs take effect." 600>>]
</div>/*#
#desc: inject npc_psychiatrist
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'psychiatrist_cure'>>
<</if>>
<<set $player.location to "VR Laboratory">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Hurry and shoot me up!@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> shouts enthusiastically.<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> pushes the needle into <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> arm as the bimbo doctor giggles.<br>
<br>
The syringe plunger pushes the drugs out... and <<=setup.getNpcName("npc_psychiatrist","formal")>> starts thrashing against her bonds.<br>
<br>
"@@.npc_psychiatrist;I'm burning up! Oh, I'm so hot, fuck me, fuck me now!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_ai","first"))>> hologram appears in the room "@@.npc_ai;<<uc "<<=uc(setup.getNpcName('npc_work_doctor','formal'))>> must have given her a booster before she left work. The drugs are all activating at once... she needs stimulation or she will overload.">>@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> gestures and <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> chastity cage falls away, her cute <<getWordPenis false>> harder, and bigger, than you've ever seen before.<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> is in position almost immediately, her lips wrapped around <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> <<getWordPenis false>> as she slides three fingers into the moaning doctor's ass.<br>
<br>
"@@.npc_psychiatrist;What's going on! I need more, more!!!!@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> gestures again and the other systems in the room turn on. "@@.npc_ai;<<uc "Plug her mouth before she bites her tongue, she needs to go under, and you need to work on her breasts.">>@@"<br>
<br>
As she speaks <<=setup.getNpcName("npc_psychiatrist","formal")>> heaves against the restraints, her breasts swelling at least another two sizes and exploding out of her top.<br>
<br>
[<<moveTo "event_psychiatrist_cure_5" "Do as the Artificial Intelligence says..." 600>>]
</div>/*#
#desc: wrangle npc_psychiatrist
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You pull the arm-mounted dildo down into position and <<=setup.getNpcName("npc_psychiatrist","formal")>> eagerly lunges for it, eyes rolling back for a moment as she sucks. You look down to note that <<=setup.getNpcName("npc_barista","first")>> is now <<if $fetish.fisting>>wrist deep fisting<<else>>four fingers deep in<</if>> <<=setup.getNpcName("npc_psychiatrist","formal")>> and you hurry to get the VR headpiece into position. You don't know what simulation <<=setup.getNpcName("npc_ai","first")>> has chosen, but whatever it is, <<=setup.getNpcName("npc_psychiatrist","formal")>> is definitely enjoying it. She moans around her oral occupant — still tense in her bonds but less frenzied than she was a few moments ago.<br>
<br>
"@@.npc_ai;<<uc "Breasts, Unit">> <<uc $player.first_name>><<uc ".">>@@" <<=setup.getNpcName("npc_ai","first")>> commands and you hurry to obey,
<<if $fetish.milking>>
Suckling one hard nipple between your lips, while you finger the other one — rewarded with a refreshing spurt of milk while the other side spurts into the air.
<<else>>
Suckling one hard nipple between your lips, while you finger the other one.
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_cure_6" 'Keep "helping."' 1800>>]
</div>/*#
#desc: npc_psychiatrist cured
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.evil = 2>>
<<include "checkRescueFriendsTask">>
<</if>>
<<set $player.location to "VR Laboratory">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_nurse") setup.charImage("npc_barista") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
Your lips are sore and your hands are both cramping up by the time <<=setup.getNpcName("npc_psychiatrist","formal")>> starts to calm down. She gradually slows, and then goes limp all at once and you fall back in exhaustion, looking at <<=setup.getNpcName("npc_barista","first")>> in a similar state as her <<if $fetish.fisting>>fist<<else>>hand<</if>> finally slides out of <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> ass, the doctor's <<getWordPenis false>> retracted and limp.<br>
<br>
"@@.npc_ai;<<uc "Well done,">>@@" <<=setup.getNpcName("npc_ai","first")>> states as the VR system de-activates. "@@.npc_ai;<<uc 'It is time to welcome back <<=uc(setup.getNpcName("npc_psychiatrist","formal"))>>. I will leave you to your friend.'>>@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> blinks away and <<=setup.getNpcName("npc_barista","first")>> drags herself back to her feet. <<if !$npc_barista.flags.rescue.cure>>You catch sight of the fear in her eyes and you have the feeling she doesn't have long before her own drugs re-assert themselves. <</if>><<=setup.getNpcName("npc_barista","first")>> removes the dildo and pulls off the VR display and <<=setup.getNpcName("npc_psychiatrist","formal")>> looks up at you.<br>
<br>
"@@.npc_psychiatrist;I-I-... thank you,@@" she whispers, her voice hoarse from screaming around the dildo.<br>
<br>
[<<moveTo "event_psychiatrist_cure_7" "Remove her restraints." 600>>]
</div>/*#
#desc: make future plans
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _tmpDatePsyc = setup.getNextDayOfWeek($now, 5, 14, 0, false)>>
<<addTaskById 'psychiatrist_endless_apointment_1' _tmpDatePsyc>>
<</if>>
<<set $player.location to "VR Laboratory">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_laboratory.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You remove <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> restraints and wait as
<<if $npc_barista.flags.rescue.cure>>
the two women share a passionate embrace.<br>
<br>
"@@.npc_psychiatrist;Thank you, both of you...@@" She looks at <<=setup.getNpcName("npc_barista","first")>> with shame. "@@.npc_psychiatrist;I can't believe you survived like this for so long... I'm so, so sorry, I—@@"<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> silences her with a kiss. "@@.npc_barista;It's in the past, right now we need to think about the future. So long as <<=setup.getNpcName("npc_work_doctor","formal")>> and <<=setup.getNpcName("npc_boss","formal")>> are active none of us, and nobody, are safe.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods and then turns to you.
<<else>>
the two women look at each other awkwardly.<br>
<br>
"@@.npc_psychiatrist;I promise we'll help you...@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> whispers as <<=setup.getNpcName("npc_barista","first")>> nods.<br>
<br>
"@@.npc_barista;You'd better... I don't know how much longer I have, I can feel the cloud returning...@@" She winces and staggers as <<=setup.getNpcName("npc_psychiatrist","formal")>> somehow ignores her own exhaustion to leap to her feet and hold her friend up.
<</if>>
<br><br>
"@@.npc_psychiatrist;We'll talk later... <<=setup.getNpcName("npc_work_doctor","formal")>> likes to take Fridays off early and, since this office remains unoccupied... come back next week for a session... we will speak then. Until then, well... I do not think I will have trouble fooling <<=setup.getNpcName("npc_work_doctor","formal")>>. Smile, say "yes, <<sir npc_work_doctor>>" and suck <<his npc_work_doctor>> cock whenever <<he npc_work_doctor>> asks... <<his npc_work_doctor>> expectations for <<if $npc_work_doctor.fem>>her assistants<<else>>women<</if>> are pathetically cliched.@@"<br>
<br>
You leave the two of them to catch up and head off.<br>
<br>
[<<moveTo "room_citymap" "City Centre." 300>>]
</div>/*
#desc: first meet psychiatrist in stage 5
#status: FINISHED 1.0.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "startPsychSession">>
<<include "addSexStoreOpeningEvent">>
<<set $scene.chocolate = "none">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Precisely on time, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> summons you into her office.<br>
<br>
"@@.npc_psychiatrist;Welcome back, <<=$player.call>> <<=$player.last_name>>. It is good to see you like this again, here in my office... the comfort of routine, hmm?@@" She smiles, "@@.npc_psychiatrist;What is, perhaps, less routine in who else is here. Our prior visits all occurred under the shadow of corporate surveillance. Now? Well, thanks to our mutual friend <<=setup.getNpcName('npc_ai', 'first')>>, that is no longer a concern. I will not deny that some of my words and actions were altered by the need to placate those corporate masters... but I will still doing what I could to encourage your mental development into a happy, healthy, and satisfied <<switch $npc_psychiatrist.flags.knowgender>><<case 'male' ''>><<if $player.flags.femboy>>femboy<<else>>man<</if>><<case 'female'>>woman<<case 'agender' 'fluid'>>person<<default>>ERROR: unexpected npc_psychiatrist.flags.know gender <<=$npc_psychiatrist.flags.knowgender>><</switch>>.@@"<br>
<br>
She slides a familiar box of chocolates across the desk. "@@.npc_psychiatrist;So, shall we resume our sessions?@@"<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a white one." 120 '<<set $scene.chocolate = "white">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a pink one." 120 '<<set $scene.chocolate = "pink">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a brown one." 120 '<<set $scene.chocolate = "brown">>'>>]<br>
</div>/*#
#desc: meet psychiatrist in stage 5
#status: FINISHED 1.0.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "startPsychSession">>
<<include "addSexStoreOpeningEvent">>
<<set $scene.chocolate = "none">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Precisely on time, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> summons you into her office.<br>
<br>
"@@.npc_psychiatrist;Have a seat <<=$player.call>> <<=$player.last_name>>. I am delighted to see you again. Please,@@" she says while handing you a box of chocolates in the long-familiar ritual. "@@.npc_psychiatrist;Would you kindly take one. You know I won't take no for an answer.@@"<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a white one." 120 '<<set $scene.chocolate = "white">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a pink one." 120 '<<set $scene.chocolate = "pink">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a brown one." 120 '<<set $scene.chocolate = "brown">>'>>]<br>
</div>/*#
#desc: psychiatrist topic: capstone with admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the fun photoshoot you had with <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;Oh that sounds so fun! It's so great when a couple can find those special shared activities that they both enjoy! You and <<=setup.getNpcName('npc_admin', 'first')>> have come so far in your relationship together... you know, while it is not exactly my specialization, I could do a couples therapy session for the two of you. Understand that this is not because there is anything wrong, far from it, but that therapy can always be useful in helping build a stronger foundation of relationship. Certainly flirting and new love is wonderful... but sometimes we can skip past more serious matters. Having a nice neutral field to discuss and practice communication is a sign of maturity, and great potential tool for the two of you going forward... so, as I said, offer is open, if you wanted to set something up in lieu of one of your normal sessions.@@"<br>
<br>
You tell her you'll keep that in mind.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: setup admin psychiatrist
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty("psychiatrist_endless_apointment_1")>>
<<deleteTask 'psychiatrist_endless_apointment_1'>>
<</if>>
<<set _tmpDatePsyc = setup.getNextDayOfWeek($now, 5, 14, 0, true)>>
<<addTaskById 'psychiatrist_couples_admin' _tmpDatePsyc>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You mention <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> offer of a couples therapy session...<br>
<br>
"@@.npc_admin;Couples therapy? Wow, huh... never done that before... but, then I guess this relationship has a lot of firsts for me so maybe it'd be good? Anyway, I'll see you Friday, and hell, worst case we catch drinks after, right?@@"<br>
<br>
You relay the location of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office and <<=setup.getNpcName('npc_admin', 'first')>> promises to meet you there.<br>
<br>
"@@.npc_admin;Alright, <<callPlayer "npc_admin">>, I'll see you for counseling, catch you later!@@" <<He npc_admin>> hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: fail to arrive for psychiatrist admin appointment
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkOutsideDecency()>>
<<set $player.cutscene.lockinventory=false>>
<</if>>
<<include 'addPsychiatristEndless'>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Hello, <<=$player.first_name>>... it is time for your couples therapy session and... you are not here! Now, normally I would be willing to let such a thing slide... but <<=setup.getNpcName('npc_admin', 'formal')>> is already here waiting, and that would be quite rude of you to waste their time, as well. Please do hurry in — after all, you were the one who asked for this appointment.@@"<br>
<br>
You promise you'll be there as soon as you can.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_psychiatrist_admin_1" "Hurry to your appointment." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.late=true>>">>]
<<else>>
[@@.link_locked;You are not sufficiently dressed to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: psychiatrist admin session start
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> is already seated and turns to greet you with a grin.<br>
<br>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>.@@"<br>
<br>
"@@.npc_psychiatrist;Yes, welcome — I was just introducing myself to your <<boy npc_admin>>friend here. Unlike yourself I was not afforded the opportunity to meet <<him npc_admin>> when <<he npc_admin>> was promoted into the company... though after hearing so much about <<him npc_admin>> it was nice to put a face to the reputation.@@"<br>
<br>
You nod and consider where to sit...<br>
<br>
[<<moveTo "event_psychiatrist_admin_2" "Take a seat in your <<boy npc_admin>>friend's lap." 60 "<<set $scene.lap=true>>">>]<br>
[<<moveTo "event_psychiatrist_admin_2" "Take a seat in the empty chair." 60 "<<set $scene.lap=false>>">>]
</div>/*#
#desc: psychiatrist admin session
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $scene.lap>>
You forgo the empty seat for <<=ps(setup.getNpcName('npc_admin', 'first'))>> lap, snuggling up against your <<man npc_admin>>'s<<if !$npc_admin.fem>> muscular<</if>> chest as you feel <<his npc_admin>> arm gently cradle your hips.
<<else>>
You take a seat next to <<=setup.getNpcName('npc_admin', 'first')>>, <<he npc_admin>> reaches out to take your hand, giving it a squeeze for encouragement.
<</if>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles and starts the session.<br>
<br>
"@@.npc_psychiatrist;So, I thought we would start with the beginning, as it were — the two of you had been friends for some time, how does it feel, things blossoming into romance?@@"<br>
<br>
[<<moveTo "event_psychiatrist_admin_3" 'Let <<=setup.getNpcName("npc_admin", "first")>> speak.' 300 "<<set $scene.romanceTalk=false>>">>]<br>
[<<moveTo "event_psychiatrist_admin_3" "Talk about your efforts to seduce <<him npc_admin>>." 300 "<<set $scene.romanceTalk=true>>">>]
</div>/*#
#desc: psychiatrist admin session
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $scene.romanceTalk>>
You explain that, with the two of you always being pretty close, it just felt natural to take it further. "@@.pc;I guess I realise that I just always felt safe and cared for around <<him npc_admin>>, y'know? Things just kind of went from there... and finding out that <<he npc_admin>> reciprocated those feelings, well... that was just the best!@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;I see, and <<=setup.getNpcName('npc_admin', 'formal')>>? What about you? I've obviously spent quite a bit of time with <<=ps($player.first_name)>> recent journey of self-discovery... but I imagine it presented some unique challenges to you, given your prior relationship?@@"<br>
<br>
<</if>>
You look towards <<=setup.getNpcName('npc_admin', 'first')>> and <<he npc_admin>> takes a moment to compose <<his npc_admin>> thoughts. "@@.npc_admin;Yeah, you know... I'm not usually one to brood much on the past, more a "live in the present" kind of <<guy npc_admin>>... but I've been thinking about those things a lot recently. Like... I'm <<if $npc_admin.fem>>a lesbian<<else>>straight<</if>>, right? But me and <<=$player.first_name>>, almost from when we first met, we kind of just... clicked? I wonder if, on some level, I kind of already knew? Also makes me think of how <<=setup.getNpcName('npc_exgirlfriend', 'first')>> didn't like us hanging out.@@" <<He npc_admin>> shakes <<his npc_admin>> head. "@@.npc_admin;Who knows, really? I mean, we've known each other for a while — since I was fresh out of the army adjusting to civilian life, through school, career changes and now, well... these days <<=$player.first_name>> is about the happiest I've ever seen her, and being together just feels... right.@@"<br>
<br>
<<if $scene.lap>>
You snuggle closer and give <<=setup.getNpcName('npc_admin', 'first')>> a kiss
<<else>>
You smile at <<=setup.getNpcName('npc_admin', 'first')>> and give <<his npc_admin>> <<if !$npc_admin.fem>>big <</if>>hand a squeeze
<</if>>
as you beam with delight.<br>
<br>
<<if setup.getTotalValue("penis") > 10 || setup.getTotalValue("cum") > 10 || setup.getTotalValue("piss") > 10 || setup.getTotalValue("bestiality") > 10 || setup.getTotalValue("bdsm") > 10 || setup.getTotalValue("bondage") > 10 || setup.getTotalValue("foot") > 10 || setup.getTotalValue("submission") > 10 || setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("humiliation")>>
"@@.npc_psychiatrist;So, speaking on the relationship itself... well, not to put too fine of a point on it, but <<=$player.first_name>> is quite the kinky girl. I get the feeling you at least used to be a bit more vanilla — how are you handling such things?@@"
<<else>>
"@@.npc_psychiatrist;So, speaking on the relationship itself... You mentioned being <<if $npc_admin.fem>>a lesbian<<else>>straight<</if>>, and I get the vibe you at least used to be pretty vanilla — how are you handling things?@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_admin_4" "Continue." 600>>]
</div>/*#
#desc: psychiatrist admin session
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> shrugs. "@@.npc_admin;Y'know, built like I am, well... I dunno, I didn't really think about stuff much, y'know, sex was just sex but... well, I'm not totally vanilla. Maybe this ties into me getting into bodybuilding and stuff but... I've always had fantasies about I guess you'd call it exhibitionism? Like, knowing someone was looking at me, or watching while I was fucking, stuff like that?@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles and you feel a slight shiver of excitement. "@@.npc_psychiatrist;With that body I can certainly see why someone would want to watch... tell me, is it just watching? Like, say I wanted to see the two of you fuck on the couch, would that have you excited? Or what about if I wanted to join in? Would that be of interest, or do you just want the third party to be a neutral observer?@@"<br>
<br>
<<if $scene.lap>>
You feel <<=ps(setup.getNpcName('npc_admin', 'first'))>> excitement at both ideas almost lift you into the air.
<<else>>
Still holding <<his npc_admin>> hand, you can feel <<=ps(setup.getNpcName('npc_admin', 'first'))>> pulse accelerate at the mention of both ideas.
<</if>>
<br><br>
"@@.npc_admin;Wow... I haven't been to much therapy, save for some basics on adjusting to civilian life just before I was released from the army... but you're... wow...@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> glances towards you.<br>
<br>
[<<moveTo "event_psychiatrist_admin_5" 'Certainly you could fuck in front of your therapist.' 300 "<<set $scene.threeway=false>>">>]<br>
[<<moveTo "event_psychiatrist_admin_5" 'Of course you could have a three-way!' 300 "<<set $scene.threeway=true>>">>]<br>
[<<moveTo "event_psychiatrist_admin_abort" "Actually... you don't want that sort of session." 1800>>]
</div>/*#
#desc: psychiatrist admin - bail on sex
#status: RELEASED 0.8.8.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include 'addPsychiatristEndless'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You reply that you weren't really intending on that sort of "therapy" today and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smoothly moves on. "@@.npc_psychiatrist;Of course, it was merely a hypothetical thought experiment.@@"<br>
<br>
After those few heart-racing moments the rest of the session turns more mundane, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> asking some additional questions of the two of you and guiding you through some partner communication exercises.<br>
<br>
In surprising time you come to the end of the session, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> sending you on your way to get prepared for her next patient.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> thanks her for her time and promises the both of you <<he npc_admin>>'ll remember the communication tips she gave you. You and your <<boy npc_admin>>friend share a kiss and then <<he npc_admin>> heads off to take care of some errands and you return to town.<br>
<br>
[<<moveTo "room_citymap" "Head back to the city." 300 "<<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: psychiatrist admin sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.threeway>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 10 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $scene.threeway>>
Your eyes sparkle as you look to your <<boy npc_admin>>friend and reply that you'd love to share a three-way.<br>
<br>
<<He npc_admin>> grins as you slide to the floor, <<his npc_admin>> <<getWordPenis "npc_admin">> springing free of <<his npc_admin>> pants a moment later. "@@.npc_admin;Well, if it's therapeutically useful...@@" <<he npc_admin>> adds with a smile.<br>
<br>
"@@.npc_psychiatrist;Of course,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> replies, a slight tremble in her voice as she stares at <<his npc_admin>> revealed member. "@@.npc_psychiatrist;I need to suck- I mean, study this... yes...@@"<br>
<br>
You're already on your knees sucking passionately on your <<boy npc_admin>>friend's <<getWordPenis "npc_admin">>, and soon <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is cheek to cheek with you, the two of you united in efforts as <<=setup.getNpcName('npc_admin', 'first')>> smiles down.<br>
<br>
"@@.npc_admin;Gotta say... this is the best I've ever felt during therapy... your lips have a real expert touch...@@" States <<=setup.getNpcName('npc_admin', 'first')>> as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> descends to tongue-wash <<his npc_admin>> balls.<br>
<br>
"@@.npc_psychiatrist;Of course... I take a very holistic approach to meeting my patient's needs...@@"<br>
<br>
"@@.npc_admin;Speaking of holes... how about you two lovely ladies bend over so I can sample the other end?@@"<br>
<br>
[<<moveTo "event_psychiatrist_admin_6" 'Yes, <<sir npc_admin>>!' 300>>]
<<else>>
You grin and crawl on to the couch, spreading your legs and making bedroom eyes at your <<boy npc_admin>>friend.<br>
<br>
<<He npc_admin>> glances one more time at <<=setup.getNpcName('npc_psychiatrist', 'formal')>> who looks on intently before <<he npc_admin>> joins you on the couch, <<his npc_admin>> strong arms tenderly parting your clothes as your lips meet <<if $npc_admin.fem>>hers<<else>>his<</if>>.<br>
<br>
As wonderfully sensuous as <<=setup.getNpcName('npc_admin', 'first')>> is... the bulge in <<his npc_admin>> pants cannot be denied, and it isn't long before <<he npc_admin>>'s on the couch with you riding <<him npc_admin>>, moaning with each thrust as <<he npc_admin>> lifts you into the air with each powerful motion of <<his npc_admin>> hips, <<his npc_admin>> cock utter perfection within your body...<br>
<br>
"@@.npc_psychiatrist;Beautiful...@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> whispers, the sound somehow carrying through the room and spurring <<=setup.getNpcName('npc_admin', 'first')>> on even further, the look of passionate lust in <<his npc_admin>> eyes as <<he npc_admin>> looks up at you and comes pushing your own orgasm up to earth-shattering intensity.<br>
<br>
Your body shudders with every pulse as <<=setup.getNpcName('npc_admin', 'first')>> cums inside of you, <<his npc_admin>> hard cock keeping you vertical on its own for several moments before you collapse into <<his npc_admin>> arms, more than sated.<br>
<br>
[<<moveTo "event_psychiatrist_admin_7" 'Whew!' 300>>]
<</if>>
</div>/*#
#desc: psychiatrist admin sex continued
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
From kneeling at <<=ps(setup.getNpcName('npc_admin', 'first'))>> feet you and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> move to the couch, on hands and knees as <<he npc_admin>> fingers you both open.<br>
<br>
"@@.npc_admin;Talk about a perfect view... now let's get to the bottom of things, huh? Guests first...@@"<br>
<br>
"@@.npc_psychiatrist;Oh yes...@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> moans as <<=setup.getNpcName('npc_admin', 'first')>> slides <<his npc_admin>> saliva-slick cock into her eager rear, a couple of strokes that leave you wanting just long enough before <<he npc_admin>> switches off and your eyes roll back in delight.<br>
<br>
"@@.npc_psychiatrist;It feels even better than it tastes...@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> whispers as she looks over at you. You nod in agreement, enjoying your brief moments before <<=setup.getNpcName('npc_admin', 'first')>> switches off once again.<br>
<br>
"@@.npc_admin;Come on girls, don't just sit there, this is a threesome!@@"<br>
<br>
You gasp and sidle closer, hand reaching down to play with <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> hard <<getWordPenis false>> as
<<if setup.checkItemTypeWorn("cage")>>
tenderly caresses your prison before moving on to your <<if $player.body.breastsize[0] > 0>>breasts<<else>>nipples<</if>>.
<<else>>
she treats you in kind, fingers stroking
<<if $player.body_ref.penis>>
stroking your <<getWordMyPenis>><<if $player.body_ref.vagina>>, and tracing through your <<getWordVagina>><</if>>.
<<else>>
curling into your <<getWordVagina>>.
<</if>>
<</if>>
<br><br>
Things keep getting steamier as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> ends up on top of you, your bottoms stacked for <<=setup.getNpcName('npc_admin', 'first')>> to switch between as you kiss, finger and caress to a mind-shattering orgasm, <<=setup.getNpcName('npc_admin', 'first')>> finally joining the two of you on the couch as you both curl up next to <<his npc_admin>> large, muscular body, occasionally glancing down and smiling at the now dormant beast between <<his npc_admin>> legs.<br>
<br>
[<<moveTo "event_psychiatrist_admin_7" "Continue." 300>>]
</div>/*#
#desc: psychiatrist admin post-sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include 'addPsychiatristEndless'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
It is <<=setup.getNpcName('npc_psychiatrist', 'formal')>> who finally breaks the post-coital calm, explaining that she really must get ready for her next appointment as she distributes towels for clean-up.<br>
<br>
"@@.npc_psychiatrist;Physical fun aside, well, seeing the two of you together like that, I find that sex reveals the person under the mask. In the case of you two that reveals a couple even more beautiful than you already are... which seems almost cheating, to be honest. In any case it seems that you've got things figured out, so keep it up. Relationships are an ongoing process of trust, communication, and mutual respect. You seem to have all three, and with that a bright future ahead.@@"<br>
<br>
"@@.npc_admin;Now that's my kind of assessment!@@" <<=setup.getNpcName('npc_admin', 'first')>> says with a grin, thanking <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for her time and giving you a kiss as you head for the exit.<br>
<br>
"@@.npc_psychiatrist;Any time... the pleasure was... well, it was all of us, but it was certainly mine!@@"<br>
<br>
The three of you laugh and <<=setup.getNpcName('npc_admin', 'first')>> heads off to take care of some errands as you consider what to do next.<br>
<br>
[<<moveTo "room_citymap" "Head back to the city." 300 "<<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: psychiatrist topic: capstone with ex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the fun you've had re-kindling your relationship with <<=setup.getNpcName('npc_exgirlfriend', 'first')>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Oh, my! That is quite a thing to hear... and somewhat unexpected, I will admit. Not that you aren't an adorable thing that anyone would be happy to be in a relationship with... but, well, with how things ended with your ex I just did not see her resumed presence in your life being part of the "master plan," as it were.@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> takes a moment to think, seeming to need a bit more time to figure out how to handle this unexpected development. "@@.npc_psychiatrist;Hmm, yes, well... it sounds like you have things somewhat figured out... but perhaps the two of you would like to come in some Friday for a couples session? Given you have had one relationship failure, well... some professional help would not seem to be amiss?@@"<br>
<br>
You tell her you'll think about it... and see what <<=setup.getNpcName('npc_exgirlfriend', 'first')>> has to say.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: setup ex psychiatrist
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty("psychiatrist_endless_apointment_1")>>
<<deleteTask 'psychiatrist_endless_apointment_1'>>
<</if>>
<<set _tmpDatePsyc = setup.getNextDayOfWeek($now, 5, 14, 0, true)>>
<<addTaskById 'psychiatrist_couples_ex' _tmpDatePsyc>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You mention <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> offer of a couples therapy session...<br>
<br>
"@@.npc_exgirlfriend;Couples therapy, huh? I guess we really should have done that a while ago... so yeah, I'm down. I mean, I lost you once; I really don't want us to fuck things up again. Friday, you said? Well I'll see you then.@@"<br>
<br>
You relay the location of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office and <<=setup.getNpcName('npc_exgirlfriend', 'first')>> promises to meet you there.<br>
<br>
"@@.npc_exgirlfriend;It's a date! Well... not a date, date, I guess, but you know!@@" <<=setup.getNpcName('npc_exgirlfriend', 'first')>> hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: fail to arrive for psychiatrist ex appointment
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkOutsideDecency()>>
<<set $player.cutscene.lockinventory=false>>
<</if>>
<<include 'addPsychiatristEndless'>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Hello, <<=$player.first_name>>... it is time for your couples therapy session and... you are not here! Now, normally I would be willing to let such a thing slide... but <<=setup.getNpcName('npc_exgirlfriend', 'formal')>> is already here waiting, and that would be quite rude of you to waste her time, as well. Please do hurry in — after all, you were the one who asked for this appointment.@@"<br>
<br>
You promise you'll be there as soon as you can.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_psychiatrist_ex_1" "Hurry to your appointment." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.late=true>>">>]
<<else>>
[@@.link_locked;You are not sufficiently dressed to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: psychiatrist ex session start
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<if $scene.late>>
You rush in to <<=ps(setup.getNpcName('npc_exgirlfriend', 'formal'))>> office to find her and <<=setup.getNpcName("npc_exgirlfriend","first")>> both waiting for you.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods curtly. "@@.npc_psychiatrist;An inauspicious start, if I were to be honest... but let us put that aside and commence, yes?@@"
<<else>>
Your appointment time has almost arrived without <<=setup.getNpcName("npc_exgirlfriend","first")>> and you have a moment of hesitation. Despite recalling that she had occasionally been less-than-punctual in the past, you can't quell your anxieties. Maybe she won't make it? There could always be traffic or some other reason...<br>
<br>
Quelling your concerns, <<=setup.getNpcName("npc_exgirlfriend","first")>> rushes through the door right on time. She greets you with a slightly sheepish smile as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> emerges to motion the pair of you into her exam office.<br>
<br>
"@@.npc_psychiatrist;Welcome, both of you... and so nice to finally put a face to the name, <<=setup.getNpcName("npc_exgirlfriend","first")>>. Let us commence, yes?@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_ex_2" "Take a seat and start." 120>>]
</div>/*#
#desc: psychiatrist ex history
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;So,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> leads off once you and <<=setup.getNpcName("npc_exgirlfriend","first")>> have taken your seats. "@@.npc_psychiatrist;For the two of you to have a future together, first we must address your past. <<=setup.getNpcName("npc_exgirlfriend","first")>>.@@" <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> attention fixates on <<=setup.getNpcName("npc_exgirlfriend","first")>> and you have an ever-so-slight flash of <<=ps(setup.getNpcName("npc_manager","formal"))>> dominance pinning your girlfriend in place.<br>
<br>
"@@.npc_psychiatrist;You betrayed <<=$player.first_name>>. You broke promises both explicit and implicit and stepped out in secret to, of all the cliches, fuck your yoga teacher.@@"<br>
<br>
You're taken aback by <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> harshness.<br>
<br>
[<<moveTo "event_psychiatrist_ex_3" 'Speak up, that was the past, things are different now.' 120 "<<set $scene.defend='past'>>">>]<br>
[<<moveTo "event_psychiatrist_ex_3" 'Defend <<=setup.getNpcName("npc_exgirlfriend","first")>> that, actually, it was all your fault.' 120 "<<set $scene.defend='self'>>">>]<br>
<<if $npc_exgirlfriend.flags.knowTruth >= 2>>
[<<moveTo "event_psychiatrist_ex_3" 'Point out that <<=setup.getNpcName("npc_exgirlfriend","first")>> and you were both manipulated.' 120 "<<set $scene.defend='manipulate'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_ex_3" 'Remain silent.' 120 "<<set $scene.defend='silent'>>">>]
</div>/*#
#desc: psychiatrist ex defend her past
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<switch $scene.defend>>
<<case 'past'>>
You speak out to defend <<=setup.getNpcName("npc_exgirlfriend","first")>>, insisting that all of that was all in the past and that you've grown a lot since then.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> ever so slightly smiles, even as she retains her harsh tone. "@@.npc_psychiatrist;Indeed you have... but individual growth is only part of the equation. That the both of you have developed a healthier relationship with sex is, of course, wonderful... but there still remains that initial betrayal, that matters much more than the form that it happened to take. Relationships are founded on trust, and respect, both were shattered, and unless that is fully addressed and repaired permanently you have but taped things back together temporarily.@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> turns her attention back to <<=setup.getNpcName("npc_exgirlfriend","first")>>. "@@.npc_psychiatrist;<<=$player.first_name>> has risen to your defence, but this is a collaborative session, so I would like to hear your perspective.@@"
<<case 'self'>>
You explain that, actually, everything was your fault, between your virginity pledge and your lack of confidence, you can't really blame <<=setup.getNpcName("npc_exgirlfriend","first")>> for wandering... but that's in the past and things are better now!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> snorts. "@@.npc_psychiatrist;No, that is flawed logic, and I expect better. Regardless of circumstance betrayal is betrayal. A relationship is founded on trust and respect such that, even should one party desire an end to the relationship, they should do it in a properly mature manner not by... keeping secrets about cheating until everything blows up.@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> turns her attention back to <<=setup.getNpcName("npc_exgirlfriend","first")>>. "@@.npc_psychiatrist;<<=$player.first_name>> has trying to martyr <<switch $npc_psychiatrist.flags.knowgender>>
<<case 'male' ''>>
himself,
<<case 'female'>>
herself,
<<case 'agender' 'fluid'>>
themself,
<<default>>
ERROR: unexpected npc_psychiatrist.flags.know gender <<=$npc_psychiatrist.flags.knowgender>>
<</switch>>, but that shouldering of blame is highly unfair. You made your choices... and this is a collaborative session, so I would like to hear your perspective.@@"
<<case 'manipulate'>>
You point out that actually, your prior relationship failure was not either of your fault, given that both of you had been... subject to outside interference—<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> cuts you off before you can call the company by name<<if $npc_manager.scene >= 5>>, a reflex, you suppose, of her time under constant surveillance<<else>> as you remember that your sessions are not fully private<</if>>. "@@.npc_psychiatrist;Yes, well... our circumstances can affect things... but how we react to those events remains important. A relationship is built on trust and respect, a betrayal such as you two experienced violates both of those factors. Hardship is to be tackled cooperatively, with communication, even if that means the end to the relationship, that should happen directly, not... by sneaking out until you get caught.@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> turns her attention back to <<=setup.getNpcName("npc_exgirlfriend","first")>>. "@@.npc_psychiatrist;<<=$player.first_name>> has tried to muddy the waters with extenuating circumstances... but, be those as they may, you made your choices... and this is a collaborative session, so I would like to hear your perspective.@@"
<<case 'silent'>>
You remain silent as <<=setup.getNpcName("npc_exgirlfriend","first")>> squirms nervously.<br>
<br>
"@@.npc_psychiatrist;Well, <<=setup.getNpcName("npc_exgirlfriend","formal")>>? This is collaborative therapy, I may have come off a bit harsh, but now it is time to hear your perspective.@@"
<<default>>
ERROR: unexpected scene.defend <<=$scene.defend>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> shifts nervously in her chair and then takes a deep breath as she composes her thoughts.<br>
<br>
"@@.npc_exgirlfriend;So... yeah. Therapy is about confronting sometimes harsh truths and, well... I maybe wasn't expecting it this immediately but... yeah, I fucked up, and I'm sorry. I want to think that we've both of us grown in the interim, and that I would never do something like that again but... there's no way around the fact that I did.@@"<br>
<br>
[<<moveTo "event_psychiatrist_ex_4" '<<=setup.getNpcName("npc_psychiatrist", "formal")>> nods and turns to you.' 120>>]
</div>/*#
#desc: psychiatrist ex your failure
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;As for you... while your acts may not have been quite so... explosively severe, you also demonstrated fundamental failures as a partner. From your timidity and unwillingness to confront your own fears... to your refusal to accept <<=ps(setup.getNpcName("npc_exgirlfriend","formal"))>> word when she attempted to assuage your concerns... and then your own secretive efforts to resolve a non-existant issue... well, as I noted before, the two of you should have been in therapy FAR before I met either of you. While we have done good work together on many of these issues a relationship is, in some ways, a "patient" of its own, and must be addressed as such.@@"<br>
<br>
You and <<=setup.getNpcName("npc_exgirlfriend","first")>> glance at one another and then scoot slightly closer to hold hands.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles, her tone finally softening. "@@.npc_psychiatrist;Good, you're still on board. So I would like to address things in principle by drilling down on the specifics. Let us being with the first of what I will term "inciting situations" — namely <<=ps($player.first_name)>>... lack of self-confidence and... performance anxiety.@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles.
<<if !$player.body_ref.penis>>
"@@.npc_psychiatrist;Now, in the specifics well... I think we can safely say those issues had root causes more in a wanting-to-have-something-else... which you have since resolved. But as delightful as that is, there was that communication and trust break-down. Tell me, <<=$player.first_name>>, consider that original issue, not just the physical, but its reflection in the virginity pledge... how would you address things, knowing what you know now?@@"
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
"@@.npc_psychiatrist;Obviously you have not just embraced your previous "fears"... but gone even further to become quite tiny, indeed... but your prior issues were more than just size-anxiety, they also extended to that virginity pledge. Tell me, how would you address things, knowing what you know now?@@"
<<case 3>>
"@@.npc_psychiatrist;Obviously you have come to better accept yourself, but your prior issues were more than just size-anxiety, they also extended to that virginity pledge. Tell me, how would you address things, knowing what you know now?@@"
<<case 4 5>>
"@@.npc_psychiatrist;Obviously you have resolved your prior fears... or, no pun intended, should I say... grown past them? But those prior issues were more than just size-anxiety, they also extended to that virginity pledge. Tell me, how would you address things, knowing what you know now?@@"
<<case 6>>
"@@.npc_psychiatrist;Obviously you have resolved your prior fears... some might even say over-compensated, but my professional opinion is that one's body should bring joy and if that means a massive<<if $player.body_ref.knot && $player.body_ref.horsecock>>, draconic-inspired, <<elseif $player.body_ref.horsecock>>, equine <<elseif $player.body_ref.knot>>,canine <</if>>cock, well? That technology exists to be used? But those prior issues were more than just size-anxiety, they also extended to that virginity pledge. Tell me, how would you address things, knowing what you know now?@@"
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> and <<=setup.getNpcName("npc_exgirlfriend","first")>> both look at you waiting to see what you'll say.<br>
<br>
<<if $fetish.sph>>
<<if $player.body_ref.shrink_style == "spe">>
[<<moveTo "event_psychiatrist_ex_5" 'You should have embraced being small and cute.' 120 "<<set $scene.penis='spe'>>">>]<br>
<<if setup.checkItemTypeWorn("cage") || $fetish.chastity_penis && $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_ex_5" 'You should have embraced being small and cute... and gotten locked.' 120 "<<set $scene.penis='spe_lock'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_ex_5" 'You should have embraced the shame of being pathetically small.' 120 "<<set $scene.penis='sph'>>">>]<br>
<<if setup.checkItemTypeWorn("cage") || $fetish.chastity_penis && $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_ex_5" 'You should have embraced the shame of being pathetically small... and begged to be locked.' 120 "<<set $scene.penis='sph_lock'>>">>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "event_psychiatrist_ex_5" 'You should have accepted when <<=setup.getNpcName("npc_exgirlfriend","first")>> said you were fine.' 120 "<<set $scene.penis='accept'>>">>]<br>
[<<moveTo "event_psychiatrist_ex_5" 'You should have pursued more reputable medical remedies to resolve your lack of genital-satisfaction.' 120 "<<set $scene.penis='surgery'>>">>]
</div>/*#
#desc: psychiatrist ex sex respond to your failure
#status: RELEASED 0.9.4.0
#ignore_spell: rawr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<switch $scene.penis>>
<<case 'sph'>>
You bite your lip and reply that, if anything, your shame was underplayed, and what you needed was for <<=setup.getNpcName("npc_exgirlfriend","first")>> to accept your self-assessment and, rather than deny it, agree... and then pile on to the undeniable reality of you<<if !$player.body_ref.penis>>, at the time,<</if>> having a tiny, pathetic penis.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> looks at you for a moment and grins
<<if $player.body_ref.penis>>
as she reaches over to squeeze you through your clothes.
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
"@@.npc_exgirlfriend;You mean this pathetic little thing? Yeah, I agree... and it's even smaller now! So pathetic! Fortunately there are OTHER ways for you to give me pleasure...@@"
<<case 3>>
"@@.npc_exgirlfriend;You mean this pathetic thing? I know I told you before that it was "average" and "fine"... but we both know that I'm a size queen and you're going to need to come prepared with toys or tongue if you're going to ACTUALLY give me pleasure...@@"
<<case 4 5>>
"@@.npc_exgirlfriend;Good thing you upgrade from that pathetic little thing, hmm? If you'd only been more communicative we could have gotten you upgraded to a proper big juicy COCK like you have now, not that sad excuse for a penis.@@"
<<case 6>>
"@@.npc_exgirlfriend;You really were so small... and I don't mean that just relatively! If you'd only done things direct rather than faffing with those stupid pills trying to do things the "natural" way... fuck nature, give me that monster cock!@@"
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
"@@.npc_exgirlfriend;Well... it WAS actually pretty small and pathetic... good thing you got rid of it for that much more useful, and delicious, cunny...@@"
<</if>>
<<case 'sph_lock'>>
You bite your lip and reply that, if anything, your shame was underplayed, and what you needed was for <<=setup.getNpcName("npc_exgirlfriend","first")>> to accept your self-assessment and, rather than deny it, encourage you for have a tiny, cute penis... that was only useful for being locked up.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> looks at you and then smiles
<<if $player.body_ref.penis>>
as she reaches over to massage you through your clothes.
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
"@@.npc_exgirlfriend;Well... it was pretty pathetically small... and so cute! ESPECIALLY locked <<if $player.flags.chastity_style>>beneath a nice sleek belt<<else>>in a nice secure cage<</if>>.@@"
<<case 3>>
"@@.npc_exgirlfriend;It is pathetically small! I wish I'd known not to waste time trying to placate you about that and just locked it up!@@"
<<case 4 5>>
"@@.npc_exgirlfriend;It certainly was pathetically small... now though, well... you're a bit too big in here for me to call it small... but that doesn't change that <<if setup.checkItemTypeWorn("cage")>>that big cock belongs locked up <<if $player.flags.chastity_style>>under a nice sleek belt<<else>>inside a nice secure cage<</if>>.<<else>>I guess little penises get locked, big cocks swing free?<</if>>@@"
<<case 6>>
"@@.npc_exgirlfriend;It certainly WAS pathetically small... now...@@" she grins, squeezing your junk harder "@@.npc_exgirlfriend;If you wanted me to tease you, well... I could do that, but to deny that you've got a real monster between your legs, well... that would strain credulity, wouldn't it? <<if setup.checkItemTypeWorn("cage")>>And a monster like this, well... it needs to stay locked up for safety <<if $player.flags.chastity_style>>under a nice sleek belt<<else>>inside a nice secure cage<</if>>.<<else>>I guess little penises get locked, big cocks swing free?<</if>>@@"
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
"@@.npc_exgirlfriend;Well... it WAS pretty cute... but I'm a big fan of your new bits... too.@@"
<</if>>
<<case 'spe'>>
You bite your lip and reply that, if anything, your shame was underplayed, and what you needed was for <<=setup.getNpcName("npc_exgirlfriend","first")>> to accept your self-assessment and, rather than deny it, encourage you for have a tiny, cute penis.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> looks at you and then smiles
<<if $player.body_ref.penis>>
as she reaches over to massage you through your clothes.
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
"@@.npc_exgirlfriend;Well... it was pretty cute... even cuter now, I'd say... which is why it needs to be locked up, locked tight <<if $player.flags.chastity_style>>beneath a nice sleek belt<<else>>in a nice secure cage<</if>>.@@"
<<case 3>>
"@@.npc_exgirlfriend;It is cute! And if you want me to call it tiny, well... I can play along with that to make you happy... and keep you locked <<if $player.flags.chastity_style>>beneath a nice sleek belt<<else>>in a nice secure cage<</if>>.@@"
<<case 4 5>>
"@@.npc_exgirlfriend;It certainly was cute... now though, well... you're a bit too big in here for me to call it small... though I'd be happy with it either way. <<if setup.checkItemTypeWorn("cage")>>Especially knowing that big, beautiful prize is locked <<if $player.flags.chastity_style>>under a nice sleek belt<<else>>inside a nice secure cage<</if>>.<<else>>Your current cock is for fucking, that pathetic little thing you used to have? Well, it NEEDED to be in a cage... too bad neither of us knew that truth...<</if>>@@"
<<case 6>>
"@@.npc_exgirlfriend;It certainly WAS cute... now...@@" she grins, squeezing your junk harder "@@.npc_exgirlfriend;If you wanted me to tease you, well... I could do that, but to deny that you've got a real monster between your legs, well... that would strain credulity, wouldn't it? <<if setup.checkItemTypeWorn("cage")>>And mmm, knowing that monster is safely imprisoned <<if $player.flags.chastity_style>>under a nice sleek belt<<else>>inside a nice secure cage<</if>>, so fucking hot.<<else>>The monster you have now is for fucking, that pathetic little thing you used to have? Well, it NEEDED to be in a cage... too bad neither of us knew that truth...<</if>>@@"
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
"@@.npc_exgirlfriend;Well... it WAS pretty cute... but I'm a big fan of your new bits... too.<<if setup.checkItemTypeWorn("cage")>>.. especially knowing they're all locked for safety... rawr.<</if>>@@"
<</if>>
<<case 'spe_lock'>>
You bite your lip and reply that, if anything, your shame was underplayed, and what you needed was for <<=setup.getNpcName("npc_exgirlfriend","first")>> to accept your self-assessment and, rather than deny it, encourage you for have a tiny, cute penis... and insist that it be safely locked up.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> looks at you and then smiles
<<if $player.body_ref.penis>>
as she reaches over to massage you through your clothes.
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
"@@.npc_exgirlfriend;Well... it was pretty cute... even cuter now, I'd say, ESPECIALLY locked <<if $player.flags.chastity_style>>beneath a nice sleek belt<<else>>in a nice secure cage<</if>>.@@"
<<case 3>>
"@@.npc_exgirlfriend;It is cute! And if you want me to call it tiny, well... I can play along with that to make you happy... and help keep you locked <<if $player.flags.chastity_style>>beneath a nice sleek belt<<else>>in a nice secure cage<</if>>.@@"
<<case 4 5>>
"@@.npc_exgirlfriend;It certainly was cute... now though, well... you're a bit too big in here for me to call it small... though I'd be happy with it either way.... well, <<if setup.checkItemTypeWorn("cage")>>provided that big cock is locked up <<if $player.flags.chastity_style>>under a nice sleek belt<<else>>inside a nice secure cage<</if>>.<<else>>I guess little penises get locked, big cocks swing free?<</if>>@@"
<<case 6>>
"@@.npc_exgirlfriend;It certainly WAS cute... now...@@" she grins, squeezing your junk harder "@@.npc_exgirlfriend;If you wanted me to tease you, well... I could do that, but to deny that you've got a real monster between your legs, well... that would strain credulity, wouldn't it? <<if setup.checkItemTypeWorn("cage")>>And a monster like this, well... it needs to stay locked up for safety <<if $player.flags.chastity_style>>under a nice sleek belt<<else>>inside a nice secure cage<</if>>.<<else>>I guess little penises get locked, big cocks swing free?<</if>>@@"
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
"@@.npc_exgirlfriend;Well... it WAS pretty cute... but I'm a big fan of your new bits... too... <<if setup.checkItemTypeWorn("cage")>>and the chastity... you being locked up is HAWT<<else>>I guess little penises get locked, pussies stay free<<if $npc_exgirlfriend.flags.chastity>>... well, YOUR pussy<</if>><</if>>.@@"
<</if>>
<<case 'accept'>>
You think for a moment and give the arguably obvious reply, that you should have trusted your girlfriend at her word, and from that communication been willing to experiment and progress your relationship.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> smiles and squeezes your hand. "@@.npc_exgirlfriend;That's all I wanted... if I hadn't been afraid about even broaching the subject of sex when my urges hit well... I think our current relationship shows that there was potential for a lot of fun together...@@"
<<case 'surgery'>>
You reply that you should have addressed the problem properly and gone to a doctor for surgery... rather than get conned by those scam penis enlargement pills...<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> smiles and squeezes your hand. "@@.npc_exgirlfriend;If I'd been more understanding of your concerns and not just... blown them off as not an issue maybe we could have tackled things together, and I could have stopped you from getting suckered in by that snake-oil stuff. With medical help, well... you could have had the genitals that were right for you, and we could have had fun.@@"
<<default>>
ERROR: unexpected scene.penis <<=$scene.penis>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> shakes her head. "@@.npc_exgirlfriend;It's really too bad we had to take the roundabout route to acknowledging what you wanted... communication really is key...@@"<br>
<br>
[<<moveTo "event_psychiatrist_ex_6" 'On to the next "inciting situation."' 120>>]
</div>/*#
#desc: psychiatrist ex her failure
#status: RELEASED 0.9.4.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
This time <<=setup.getNpcName("npc_exgirlfriend","first")>> doesn't hesitate, smiling at you for a moment and then staring at <<=setup.getNpcName("npc_psychiatrist","formal")>> in anticipation. "@@.npc_exgirlfriend;This is about me, isn't it? About how I threw away a... damaged, if valuable relationship for a few moments of pleasure... pleasure that I wasn't even honest with myself about.@@"<br>
<br>
"@@.npc_psychiatrist;Quite so,@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> replies. "@@.npc_psychiatrist;Let us start with that last bit... not being honest with yourself... how so?@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> takes a deep breath, and you shoot her a look of encouragement, before she blurts out. "@@.npc_exgirlfriend;That I'm a total butt slut. I mean, I started to get an inkling when I bought that Dreammaker machine and it misconfigured... like, I was in such a horny, addled mess I wasn't paying attention until after I was bound but after a moment of shocked fear, when the dildo went in the "wrong hole"... well... I tried to justify it at the time as just being pent up and desperate for anything... but it felt SO GOOD... and then I just couldn't stop thinking about it...@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> sighs, looking bashfully over at you squeeze her thigh in comfort and nod for her to continue. "@@.npc_exgirlfriend;So... at first I tried to push it aside, told myself that the next time I used the machine I'd fix the configuration... but then it was a weekend and you were home the whole time, and I got so pent-up that when I finally had the chance I just dove into the machine without changing anything. I told myself at the time that I just forgot... but the truth is I wanted it, I wanted to be bound tight while I got fucked in the ass...@@" She is even more flush, blushing and clearly aroused. "@@.npc_exgirlfriend;I'll confess... I barely even played the game, I just wanted the machine to fuck me, I'd close my eyes and just... at first I was trying to think of you, I mean, I knew I was going a bit crazy but we were still dating, right? And it made it feel... less wrong? But after a while my fantasies started wandering, I'd think of other people, people from work, random people on the street... even our landlord. Whoever it was they'd be fucking my ass... and then I started using the oral dildo, first it was because I had a close call with one of the neighbors hearing me... but then it became part of the script, me tied down, taking it from both ends. I tried to tell myself that not touching my pussy meant I was still keeping to our agreement... keeping myself "pure" for you... I'd tell myself all sorts of things... like, one time I imagined that hunky friend of yours came back from the bar and started plowing me from behind while I blew you... that was when I put my foot down on you going for drinks with <<him npc_admin>> at The Usual Place I just... honestly, I don't know what I was thinking, and you were retreating more and more into yourself and started taking those pills.@@"<br>
<br>
She holds her breath, you know where this is going and still your heart beats faster in suspense. "@@.npc_exgirlfriend;That's when <<=setup.getNpcName("npc_yogateacher","first")>> came on to me... I mean, <<he npc_yogateacher>>'d flirted with me before, that's just <<his npc_yogateacher>> personality but that day... I'd been taking yoga to try and distract, to get me out of the house so I didn't spend all my free time strapped down getting machine-fucked... but I'd already imagined the machine was <<him npc_yogateacher>>, and seeing <<his npc_yogateacher>> through those tight yoga pants? <<Him npc_yogateacher>> complimenting my ass? I just... I HAD to feel the real thing... and it felt so good, not as firm as the dildo, but warmer... alive... I told myself that anal didn't count, that it was only going to be the one time... then that I was just doing a different type of "exercise"... and then, well... then you caught us.@@"<br>
<br>
She's starting to tear up...<br>
<br>
[<<moveTo "event_psychiatrist_ex_7" 'Comfort her.' 180>>]
</div>/*#
#desc: psychiatrist ex her failure
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You reach over to comfort <<=setup.getNpcName("npc_exgirlfriend","first")>> and she hugs you for almost a minute before <<=setup.getNpcName("npc_psychiatrist","formal")>> gently speaks. "@@.npc_psychiatrist;You were caught, your betrayal revealed... perhaps on purpose?@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> nods, "@@.npc_exgirlfriend;I think... I wanted to be found out... to be exposed... every day the urges got worse, and if I tried to resist, or I couldn't have time with the Dreammaker... I was afraid I'd mistime things, get caught at home, while I was bound... helpless.@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> looks up at you, wiping tears from her cheeks. "@@.npc_exgirlfriend;I didn't think you would do anything... but part of me... part of me WANTED you to do something, here I was, a brunette bombshell, sleeping next to you every night and... all you ever were willing to do was cuddle. I don't know if you remember how I'd turn around grind back into you... I was imagine you were in my ass... fucking me.@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> takes a deep breath, seeming to compose herself slightly. "@@.npc_exgirlfriend;So yeah... that was my headspace, an increasingly insatiable butt-slut and her virgin... <<if $player.identify_as == "male">>boyfriend<<else>>er... significant other<</if>> who was scared of <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>his<<case 'fluid' 'agender'>>their<</switch>> own dick, doing yoga five nights a week and getting ass-fucked every time... something had to break and so I got sloppy, and you caught us... I knew it was going to blow everything up, the whole "anal doesn't count" was hollow when I said it... and then an even more freaky part of me wanted you to somehow... take that as an invitation and fuck me there, I even dreamed that the next night, that things went full porno and I lost my virginity to you while <<=setup.getNpcName("npc_yogateacher","first")>> was still balls-deep in my ass...@@" <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> voice drops off, the silence lingering for several long moment before she looks up at you again. "@@.npc_exgirlfriend;So that... that's my betrayal... I'm so, so sorry, I should have talked to you. Gone to counseling... told you that I couldn't stick around with that virginity pledge... something! Instead I tried to handle things on my own and became a butt-slut cheater... even tried to convince myself that it was better for you that way, for you to get rid of me...@@"<br>
<br>
You smile and point out that obviously it isn't... after all, you came back for her, right? Plus, well... she hardly has the market cornered on "turning into a sex fiend." <br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> lets out a short cry-laugh "@@.npc_exgirlfriend;Yeah... I guess that's true. I guess I'll steal <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> line and ask the same question... what would you do, now, if you walked in on me fucking somebody else?<<if State.hasPlayed("event_yoga_private_3_4")>> And we'll ignore that I've walked in on you... hell, walked in on you with <<=setup.getNpcName("npc_yogateacher","first")>>!<</if>>@@"<br>
<br>
[<<moveTo "event_psychiatrist_ex_8_cuck_1" 'Actually... watching her sounds really hot.' 120>>]<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_psychiatrist_ex_8_fuck_1" "Make her fantasy come true, unlock yourself and fuck her." 120 "<<set $scene.strap=false>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is locked away<<if ['sph_lock','spe_lock'].includes($scene.penis)>>, just like it belongs<</if>>.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_ex_8_fuck_1" "Make her fantasy come true and fuck her." 120 "<<set $scene.strap=false>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_ex_8_fuck_1" "Perhaps a strap would fill her fantasy?... pun intended." 120 "<<set $scene.strap=true>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_ex_8_fuck_1" "You may not have a cock anymore... but perhaps a strap would fill her fantasy?... pun intended." 120 "<<set $scene.strap=true>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_ex_8_end_1" "Well, you have an open relationship, so you'd let her have her fun?" 120>>]
</div>/*#
#desc: psychiatrist ex end without sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You smile and reply that, since you and <<=setup.getNpcName("npc_exgirlfriend","first")>> have an open relationship, well... her getting it on with someone else seems fine, why would you need to interfere?<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> grins and throws her arms around you in a hug before smiling in <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> direction "@@.npc_exgirlfriend;See? We've been through a lot, but we're totally on the same page now!@@"<br>
<br>
[<<moveTo "event_psychiatrist_ex_10" "Continue." 300>>]
</div>/*#
#desc: psychiatrist ex sex psych fucks ex
#status: RELEASED 0.9.4.0
#ignore_spell: cuck
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You reply that, actually... you'd enjoy watching <<=setup.getNpcName("npc_exgirlfriend","first")>> get fucked, that her description of that time with her and <<=setup.getNpcName("npc_yogateacher","first")>> actually has you excited... even if, in the moment, you failed to really take in all the details.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> grins and throws her arms around you in a hug before smiling in <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> direction "@@.npc_exgirlfriend;See? We've been through a lot, but we're totally on the same page now!@@"<br>
<br>
You look over at <<=setup.getNpcName("npc_psychiatrist","formal")>>... who is rising to her feet and sliding a large cocksheath over her hard penis, the thick, transparent sheath acting a bit like a lens to magnify its smaller package... while taking <<=setup.getNpcName("npc_psychiatrist","formal")>> from cute to ZOMG.<br>
<br>
"@@.npc_psychiatrist;In that case... how about a little doctor/patient roleplay? <<=$player.first_name>> if you would like to stay sitting on that couch and watch while I bend your girlfriend over my desk and fuck her? Or should I say... cuck you?@@"<br>
<br>
[<<moveTo "event_psychiatrist_ex_8_cuck_2" 'Yes, please. Sit and watch.' 120>>]<br>
[<<moveTo "event_psychiatrist_ex_8_abort" "Actually... you don't want to do that today." 120>>]
</div>/*#
#desc: psychiatrist ex sex psych fucks ex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_exgirlfriend","first")>> is grinning in anticipation as she stares at <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> swinging silicone cock as the doctor walks towards you... only for you to shake your head and state that you don't want to do this today.<br>
<br>
"@@.npc_psychiatrist;I see,@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> replies. "@@.npc_psychiatrist;This reversal is somewhat concerning... but consent is paramount in such things.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> walks back around her desk, taking a seat and then bending her artificial cock so that the tip does not peek up over the side as <<=setup.getNpcName("npc_exgirlfriend","first")>> slides over to snuggle in your arms.<br>
<br>
[<<moveTo "event_psychiatrist_ex_10" "Continue." 300>>]
</div>/*#
#desc: psychiatrist ex sex psych fucks ex, cuck taunting
#status: RELEASED 0.9.4.0
#ignore_spell: cuck
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_exgirlfriend","first")>> stands up, her fingers sliping from your grasp as she walks towards <<=setup.getNpcName("npc_psychiatrist","formal")>> and the two embrace momentarily... and then <<=setup.getNpcName("npc_psychiatrist","formal")>> bends <<=setup.getNpcName("npc_exgirlfriend","first")>> over the desk. <<=setup.getNpcName("npc_psychiatrist","formal")>> looks at you as she slides her cock into <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> wet pussy and your girlfriend moans in pleasure.<br>
<br>
<<if ['sph','sph_lock'].includes($scene.penis)>>
"@@.npc_psychiatrist;Is this what you like? To sit and watch someone fucks your girlfriend? <<if $scene.penis == 'sph_lock'>>While your pathetic, useless <<if $fetish.sissy>>sissy <</if>>clitty remains locked away?<</if>>A big, thick cock giving your girlfriend the pleasure she deserves?@@"
<<elseif ['spe','spe_lock'].includes($scene.penis)>>
"@@.npc_psychiatrist;Is this what you want? To watch your girlfriend while she has sex? <<if $scene.penis == 'sph_lock'>>While your remain cute and locked away?<</if>>A big, thick cock giving her the pleasure she deserves?@@"
<<else>>
"@@.npc_psychiatrist;Is this what you want? To watch someone else fuck your girlfriend in front of you? A big, thick cock giving her the pleasure she deserves?@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> reaches down, turning <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> head to face you as <<=setup.getNpcName("npc_psychiatrist","formal")>> angles her hips so you can see her thick cock slide in and out of your girlfriend, <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> eyes rolling back as she moans and drips excitement with every thrust.<br>
<br>
"@@.npc_psychiatrist;Tell <<switch $npc_psychiatrist.flags.knowgender>><<case 'male' ''>>him,<<case 'female'>>her,<<case 'agender' 'fluid'>>them,<</switch>>@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> commands as she gives <<=setup.getNpcName("npc_exgirlfriend","first")>> a playful swat on the ass and then thrusts to full depth, pinning your girlfriend to the desk as she grinds, the clear cock extended providing for a quite interesting visual as it spreads <<=setup.getNpcName("npc_exgirlfriend","first")>>, with <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> hard peen hovering within, the base wet with <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> excitement.<br>
<br>
<<if ['spe', 'spe_lock','sph', 'sph_lock'].includes($scene.penis)>>
"@@.npc_psychiatrist;Tell <<=$player.first_name>> how much you love it when they watch, how much it turns you on for them to be your <<if ['spe_lock','sph_lock'].includes($scene.penis)>>locked <</if>><<if $fetish.sissy>>sissy <</if>>cuck... how you were fantasising about this from the moment you saw their pathetic, tiny penis and you wish you'd told them at the time<<if ['spe_lock','sph_lock'].includes($scene.penis)>>... and put them in a cage where they belonged.<</if>>@@"
<<else>>
"@@.npc_psychiatrist;Tell <<=$player.first_name>> how much you love it when they watch, how much it turns you on for them to be your <<if $fetish.sissy>>sissy <</if>>cuck... how you were fantasising about this from the moment they told you about their virginity pledge, how you didn't want to fuck them anyway... but that you wanted them to WATCH.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> moans, <<if $fetish.cum>>squirting down the front of the desk<<else>>orgasming on the spot<</if>> as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> resumes thrusting, <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> words coming in a gasping rhythm as her body shakes with each powerful thrust.<br>
<br>
"@@.npc_exgirlfriend;Yes! I love cucking my <<if $fetish.sissy>>sissy <</if>><<switch $npc_psychiatrist.flags.knowgender>>
<<case 'male' ''>>
boyfriend!
<<case 'female'>>
girlfriend!
<<case 'agender' 'fluid'>>
SO!
<</switch>>
I want to
<<if ['sph_lock','spe_lock'].includes($scene.penis)>>
lock <<switch $npc_psychiatrist.flags.knowgender>>
<<case 'male' ''>>
him
<<case 'female'>>
her
<<case 'agender' 'fluid'>>
them
<</switch>>
up and
<</if>>
head to that sleazy bar <<switch $npc_psychiatrist.flags.knowgender>>
<<case 'male' ''>>
he loves
<<case 'female'>>
she loves
<<case 'agender' 'fluid'>>
they love
<</switch>>
and turn my pussy into the "Usual Place" for cock after glorious cock...
<<if ['sph_lock','spe_lock'].includes($scene.penis)>>
while they <<if setup.isCage()>>strain in their cage<<else>>drip through their belt<</if>>!
<<else>>
while <<switch $npc_psychiatrist.flags.identify_as>>
<<case 'male' ''>>
he watches!
<<case 'female'>>
she watches!
<<case 'agender' 'fluid'>>
they watch!
<</switch>>
<</if>>
<<=$player.first_name>> can
<<if $fetish.cum>>
even lick me clean between rounds... or
<</if>>
maybe be my fluffer so I can take,@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> gasps after a particularly hard thrust, "@@.npc_exgirlfriend;MORE COCK! Goddess, yes, harder!@@" <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> words begin to dissolve into semi-coherent moans of ecstatic pleasure.<br>
<br>
[<<moveTo "event_psychiatrist_ex_8_cuck_3" 'Yes...' 180>>]
</div>/*#
#desc: psychiatrist ex sex psych fucks ex, finish
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You shudder, almost climaxing yourself just from watching <<=setup.getNpcName("npc_psychiatrist","formal")>> fuck your girlfriend.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> pants as <<=setup.getNpcName("npc_psychiatrist","formal")>> grins, pulling out for a moment to roll <<=setup.getNpcName("npc_exgirlfriend","first")>> over, and then lie back under. <<=setup.getNpcName("npc_exgirlfriend","first")>> gasps as she slides back onto <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> strap to a assume a cowgirl position... while <<=setup.getNpcName("npc_psychiatrist","formal")>> reaches around to spread your girlfriend's ass-cheeks in invitation.<br>
<br>
"@@.npc_psychiatrist;It's your turn... show her what REALLY counts... fuck this horny <<if $fetish.slurs>>bitch<<else>>lady<</if>> in her favourite hole!@@" <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> gaze momentarily flicks to the edge of the desk where you realise she somehow placed a strap-on for you while you were distracted by her seducing your girlfriend...<br>
<br>
[<<moveTo "event_psychiatrist_ex_9_both_1" 'Accept the invitation and grab the strap.' 120 "<<set $scene.strap=true>><<set $scene.youFirst=false>>">>]<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_psychiatrist_ex_9_both_1" 'Unlock yourself and fuck your girlfriend in the ass.' 120 "<<set $scene.strap=false>><<set $scene.youFirst=false>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is locked<<if ['sph_lock','spe_lock'].includes($scene.penis)>>, as is proper<</if>>.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_ex_9_both_1" 'Join in and fuck your girlfriend in the ass.' 120 "<<set $scene.strap=false>><<set $scene.youFirst=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_psychiatrist_ex_9_both_1" 'Fuck your girlfriend in the ass.' 120 "<<set $scene.strap=true>><<set $scene.youFirst=false>>">>]<br>
[<<moveTo "event_psychiatrist_ex_9_abort" "You actually would rather just watch..." 300>>]
</div>/*#
#desc: psychiatrist ex sex psych fucks ex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You decline <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> offer as she gives another few thrusts upwards... before bouncing <<=setup.getNpcName("npc_exgirlfriend","first")>> around the other direction to fuck <<=setup.getNpcName("npc_exgirlfriend","first")>> in the ass reverse-cowgirl. You are treated to a view of your girlfriend going full anal-ahegao, as your therapist fucks her in the ass and <<=setup.getNpcName("npc_exgirlfriend","first")>>, spread, and speared, moans<<if $fetish.cum>>, squirts,<</if>> and almost passes out from the pleasure.<br>
<br>
You squirm at this view of debauched delight as <<=setup.getNpcName("npc_exgirlfriend","first")>> and <<=setup.getNpcName("npc_psychiatrist","formal")>> pant from the exertion... and then <<=setup.getNpcName("npc_exgirlfriend","first")>> slides to the floor, stumbling slightly before bounding over towards you for a passionate hug. "@@.npc_exgirlfriend;Best therapy EVER... and best <<switch $player.identify_as>><<case 'female' ''>>girlfriend<<case 'male'>>boyfriend<<case 'fluid' 'agender'>>SO<</switch>> ever... seeing you watch me like that was so fucking hot... if I wasn't about ready to pass out from pleasure I'd be begging to head home for round two... but I think right now I need like... a nap.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles as you and <<=setup.getNpcName("npc_exgirlfriend","first")>> sink into the couch, curled into one another's arms as <<=setup.getNpcName("npc_psychiatrist","formal")>> stows her cock extender and sits back down behind her desk like nothing happened.<br>
<br>
[<<moveTo "event_psychiatrist_ex_10" 'Continue.' 300>>]
</div>/*#
#desc: psychiatrist ex you fuck ex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = $player.body_ref.penis && setup.checkItemTypeWorn("cage") && setup.canSexOrRemoveChastity("penis") && !$scene.strap>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<if $scene.strap>>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_exgirlfriend","first")>> lays back on the couch... and then rolls over and rolls up her skirt to wiggle her ass in invitation. "@@.npc_exgirlfriend;Fuck me... fuck me in my "doesn't just count, but is totally the best" ass!@@"<br>
<br>
You
<<if $scene.strap>>
grab the strap-on and hurry into position, the thick silicone cock sliding easily into <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> eager ass. "@@.npc_exgirlfriend;Yes! Oh, Goddess that feels good! Fuck me, fuck my ass!@@"
<<elseif $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
unlock yourself,
<<else>>
do as she asks,
<</if>>
your <<getWordMyPenis>> sliding into her willing hole as she moans in pleasure.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
"@@.npc_exgirlfriend;Mmm... yes, fuck me...<<if ['sph_lock','sph'].includes($scene.penis)>> fuck me with that tiny thing, I love squeezing down and feeling it so small inside me.<<elseif ['spe_lock','spe'].includes($scene.penis)>>fuck me with that lovely little thing... it fits PERFECT.<</if>>@@"
<<case 4 5>>
"@@.npc_exgirlfriend;Fuck you're big... oh it feels so good... oh, Goddess, just pound my ass with that big, beautiful cock!@@"
<<case 6>>
"@@.npc_exgirlfriend;Fuck you're ginormous... oh it feels so good...<<if $player.body_ref.knot>> knot me,<</if>> stretch me out! Find the end of me! Oh Goddess, just pound my ass with that big, beautiful cock!@@"
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
ERROR: unexpected state!
<</if>>
<br><br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> looks on with a smile, and a twinkle in her eye inviting you to upgrade to a threesome...<br>
<br>
[<<moveTo "event_psychiatrist_ex_8_fuck_2" 'This is about you and <<=setup.getNpcName("npc_exgirlfriend","formal")>>.' 120>>]<br>
[<<moveTo "event_psychiatrist_ex_9_both_1" 'Welcome <<=setup.getNpcName("npc_psychiatrist","formal")>> to the party.' 120 "<<set $scene.youFirst=true>>">>]
</div>/*#
#desc: psychiatrist ex you fuck ex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You keep pounding, as <<=setup.getNpcName("npc_exgirlfriend","first")>> moans in ecstasy, her face initially burried in the sofa... and then she twists to turn, showing off some of that yoga flexibility as she goes from face down to face up, looking lovingly up at you as fold her in half and keep pounding.<br>
<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> watches on with pride... and no small measure of her own arousal, as you give <<=setup.getNpcName("npc_exgirlfriend","first")>> what is obviously the ass-fucking of a lifetime, pounding and grinding her to multiple orgasms before your hips give out and you collapse together, kissing and cuddling<<if $scene.strap>>as she reaches down to unbuckle your strap<<elseif $scene.removeCage>>as she reaches down to re-lock your <<if $scene.isCage>>cage<<else>>belt<</if>><</if>>.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> grins and pulls you in for an embrace and a loving kiss. The two of you fall back onto the couch, cuddling in one another's arms.<br>
<br>
[<<moveTo "event_psychiatrist_ex_10" "Continue." 300>>]
</div>/*#
#desc: psychiatrist ex sex psych double team ex
#status: RELEASED 0.9.4.0
#ignore_spell: simul,yeeessss
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.youFirst>>
<<set $scene.removeCage = $player.body_ref.penis && setup.checkItemTypeWorn("cage") && setup.canSexOrRemoveChastity("penis") && !$scene.strap>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<if $scene.strap>>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<if $scene.youFirst>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> suddenly has a large sheath over her cock as she sits invitingly at the edge of her desk. You, and an enthusiastic <<=setup.getNpcName("npc_exgirlfriend","first")>> do a beast-with-two-backs awkward walk over with your <<if $scene.strap>>artificial <</if>>cock remaining in her ass until you're in position for <<=setup.getNpcName("npc_exgirlfriend","first")>> to be getting double-penetrated.
<<else>>
You
<<if $player.body_ref.penis && !$scene.strap>>
<<if setup.checkItemTypeWorn("cage")>>
unlock yourself,
<<else>>
do as she asks,
<</if>>
your <<getWordMyPenis>> sliding into her tight ass hole as she moans in pleasure.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
"@@.npc_exgirlfriend;Yes!<<if ['sph_lock','sph'].includes($scene.penis)>> Even your tiny thing feels good with <<=setup.getNpcName("npc_exgirlfriend","first")>> stretching me in front... fuck<<elseif ['spe_lock','spe'].includes($scene.penis)>> You feel so perfect combined with <<=setup.getNpcName("npc_exgirlfriend","first")>> stretching me in front... fuck<<else>>Fuck<</if>> me<<if $fetish.sissy>> sissy<</if>>! Fuck my ass!@@"
<<case 4 5>>
"@@.npc_exgirlfriend;Fuck you're big... Goddess I feel absolutely double-stuffed... fuck me, fuck my ass!@@"
<<case 6>>
"@@.npc_exgirlfriend;Fuck you're ginormous... oh Goddess I feel so full! <<if $player.body_ref.knot>> Knot me!<</if>> Stretch me out! Find the end of me! Oh Goddess, just pound both my holes with those big, beautiful cocks!@@"
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
You grab the strap-on and hurry into position, the thick silicone cock sliding easily into her eager ass. "@@.npc_exgirlfriend;Oh Goddess... I feel so stretched and double-filled... harder! Fuck me, fuck my ass!@@"
<</if>>
<</if>>
<br><br>
You do as the lady requests, you and <<=setup.getNpcName("npc_psychiatrist","formal")>> both grabbing <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> hips as you thrust upwards, quasi-juggling her on a platform of cock.<br>
<br>
"@@.npc_exgirlfriend;Yeeessss!@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> moans, egging you onward as your heart races, <<=setup.getNpcName("npc_exgirlfriend","first")>> shuddering with climax multiple times before <<if !$scene.strapon>>before you share a <<if $player.body_ref.balls>>ball-clenching<<else>>powerful<</if>> simul-orgasm with her as well,<</if>> the force of <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> final ecstatic orgasm having her go stiff... and then collapse back into your arms.<br>
<br>
You stagger slightly, as <<=setup.getNpcName("npc_exgirlfriend","first")>> slides free of both cocks and her feet drag on the ground for a moment before she finds her footing. "@@.npc_exgirlfriend;Fuck that was amazing...@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> whispers as the two of you stumble back to the couch to collapse in one another's arms. With a slightly delirious, and utterly content smile on her face <<=setup.getNpcName("npc_exgirlfriend","first")>> kisses you<<if $scene.strap>>, and unbuckles the strap-on to fall from your hips<<elseif $scene.removeCage>> as she reaches down to re-lock your <<if $scene.isCage>>cage<<else>>belt<</if>><</if>>.<br>
<br>
[<<moveTo "event_psychiatrist_ex_10" 'Continue.' 300>>]
</div>/*#
#desc: psychiatrist ex session finish
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.strap>>
<<removeItem 'strapon_large' true>>
<<deleteItem 'strapon_large'>>
<</if>>
<<include 'addPsychiatristEndless'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Oh, one final point. I think we've done a good job working through some history and giving the two of you some tools to consider going forward... but there is another aspect... <<=setup.getNpcName("npc_exgirlfriend","first")>>, you would describe yourself as a submissive, yes?@@"<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> smirks and curls closer to you. "@@.npc_exgirlfriend;Definitely... I think <<=$player.first_name>> discovering a more dominant side is key to us getting back together...@@" she pauses, looking down at you with loving... and lustful eyes "@@.npc_exgirlfriend;and, well... if you wanted to collar me sometime... well, I'd love to go from A horny butt-slut to YOUR horny butt-slut...@@"<br>
<br>
You smile back and pull <<=setup.getNpcName("npc_exgirlfriend","first")>> in for a kiss.<br>
<br>
"@@.npc_psychiatrist;And on THAT I believe we can finally call it a day.@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> states with a smile.<br>
<br>
You and <<=setup.getNpcName("npc_exgirlfriend","first")>> spend a little longer staring into one another's eyes and making out before <<=setup.getNpcName("npc_psychiatrist","formal")>> finally shoos you out.<br>
<br>
"@@.npc_exgirlfriend;Bit of a rollercoaster... but thanks for bringing me to therapy.@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> states with a parting hug. "@@.npc_exgirlfriend;I gotta head home and rest and prep a report for Monday... catch you later, hot stuff!@@"<br>
<br>
You wave goodbye and turn towards town.<br>
<br>
[<<moveTo "room_citymap" "Head back to the city." 300 "<<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: setup landlord psychiatrist
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() != 5>>
<<if $currentTasks.hasOwnProperty("psychiatrist_endless_apointment_1")>>
<<deleteTask 'psychiatrist_endless_apointment_1'>>
<</if>>
<<set _tmpDatePsyc = setup.getNextDayOfWeek($now, 5, 14, 0, false)>>
<<addTaskById 'psychiatrist_couples_landlord' _tmpDatePsyc>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You mention <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> offer of a couples therapy session...<br>
<br>
"@@.npc_landlord;Couples? Oh, si, si, of course <<callPlayer "npc_landlord">>, I gladly do that with you. Friday, you say? I make time for it. For now, though... I need get back to work, this plumbing... love you, talk later!@@"<br>
<br>
You return the note of affection and <<he npc_landlord>> hangs up<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: fail to arrive for psychiatrist landlord appointment
#status: FINISHED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkOutsideDecency()>>
<<set $player.cutscene.lockinventory=false>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Hello, <<=$player.first_name>>... it is time for your session and... you are not here! Now, normally I would be willing to let such a thing slide... but <<=setup.getNpcName('npc_landlord', 'formal')>> is already here waiting, and that would be quite rude of you to waste their time, as well. Please do hurry in — after all, you were the one who asked for this appointment.@@"<br>
<br>
You promise you'll be there as soon as you can.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_psychiatrist_landlord_1" "Hurry to your appointment." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.late=true>>">>]
<<else>>
[@@.link_locked;You are not sufficiently dressed to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: psychiatrist landlord session start
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_maid") setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You arrive for your session and enter <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office to find <<=setup.getNpcName('npc_landlord', 'first')>> already sitting waiting.<br>
<br>
"@@.npc_psychiatrist;Come in, come in! Obviously you and I have spent quite a bit of time together, so I invited <<=setup.getNpcName('npc_landlord', 'other')>> in early for some one on one discussion so that I would be better prepared for the couples portion. If you would take a seat?@@"<br>
<br>
"@@.npc_landlord;Please, just <<=setup.getNpcName('npc_landlord', 'first')>> is fine.@@" <<=setup.getNpcName('npc_landlord', 'first')>> replies modestly as <<he npc_landlord>> greets you with a smile.<br>
<br>
"@@.npc_psychiatrist;Of course, <<=setup.getNpcName('npc_landlord', 'first')>>, <<=$player.first_name>>, shall we begin?@@" She gestures towards the two chairs set out in front of her desk.<br>
<br>
[<<moveTo "event_psychiatrist_landlord_2" "Take the empty chair." 300 "<<set $scene.lap=false>>">>]<br>
[<<moveTo "event_psychiatrist_landlord_2" 'Sit in <<=ps(setup.getNpcName("npc_landlord", "first"))>> lap.' 300 "<<set $scene.lap=true>>">>]
</div>/*#
#desc: psychiatrist landlord session sit
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $scene.lap>>
You lean in for a kiss, and then take your seat across <<=ps(setup.getNpcName("npc_landlord", "first"))>> lap with a smile, an arm draped around <<his npc_landlord>> shoulder.
<<else>>
You take your seat next to your <<boy npc_landlord>>friend, reaching out to hold <<his npc_landlord>> hand as you wait for the session to start.
<</if>>
<br><br>
"@@.npc_psychiatrist;So, having spoken to you both I would say that your relationship is in a good place, but I thought I might bring up a few items that it sounds like you haven't really discussed formally. Specifically I wanted to take a look at what what might call the power dynamics of your relationship. Obviously you met one another as <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> and tenant, plus the added dimension of the age and maturity difference... something beautiful has clearly sprouted from that interesting soil... but these are things that are worth taking a moment to address, or at least formally acknowledge.@@"<br>
<br>
You blink in surprise, it feels so long ago when you were barely on a first name basis with <<=setup.getNpcName("npc_landlord", "first")>>... sure, it technically started with you helping <<him npc_landlord>> with the cleaning, but it's developed into so much more...<br>
<br>
<<if $player.flags.collar.owner == "npc_landlord">>
[<<moveTo "event_psychiatrist_landlord_3" "What power dynamic? You love your <<Master npc_landlord>> and are proud and honoured to bear <<his npc_landlord>> collar." 180 "<<set $scene.action='slave'>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_landlord_3" "You don't really care about the money." 180 "<<set $scene.action='money'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_landlord_3" 'Let <<=setup.getNpcName("npc_landlord", "first")>> speak.' 180 "<<set $scene.action='quiet'>>">>]
</div>/*#
#desc: psychiatrist landlord session maids
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'slave'>>
You proudly proclaim that the only power dynamic YOU care about is being <<=ps(setup.getNpcName("npc_landlord", "first"))>> maid-slave.<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> starts to voice clarification but <<=setup.getNpcName('npc_psychiatrist', 'formal')>> waves <<him npc_landlord>> off with a smile. "@@.npc_psychiatrist;As we discussed earlier — I am quite aware and understanding of the different fashions that love can show itself, and that <<=$player.first_name>> is the sort that needs more than just a <<boy npc_landlord>>friend, but a loving <<Master npc_landlord>> whose strong, dominant presence will be there to cherish and guide her. I think you are just the <<man npc_landlord>> for the job...@@"
<<case 'money'>>
You shrug, explaining that you had almost forgotten about the money aspect of things, that you just love the warm, caring <<man npc_landlord>> you've found, <<his npc_landlord>> experience and lived wisdom only making <<him npc_landlord>> more attractive.<br>
<br>
"@@.npc_landlord;You too kind, <<callPlayer "npc_landlord">> I—@@" <<He npc_landlord>> starts only for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to politely shake her head.<br>
<br>
"@@.npc_psychiatrist;Now, now — you should accept the compliment, I can see how your brand of modest self-deprecation can be quite endearing... but you need to learn to accept sincere praise from your partner, and internalise it, not hide from it.@@"<br>
<br>
"@@.npc_landlord;Si, si...@@" <<He npc_landlord>> takes a deep breath and then turns to you. "@@.npc_landlord;Thank you, <<callPlayer "npc_landlord">> — I appreciate your own enthusiastic zest for living. It makes you so much more than just a beautiful maid, but a beautiful soul, as well.@@"
<<case 'quiet'>>
You look towards <<=setup.getNpcName("npc_landlord", "first")>> and <<he npc_landlord>> somewhat awkwardly replies. "@@.npc_landlord;I obviously understand these things — I was just trying to help a tenant who was... well, a bit down on the luck. But mi <<callPlayer "npc_landlord">> — she so determined to take care of this old <<man npc_landlord>>... how can I resist such a beautiful, enthusiastic maid?@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You blush at the compliment as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;The mention of maids is a good segue into the obviously important way that iconography plays into your relationship... <<=$player.first_name>> — if you would go to the changing room? I have laid out an outfit for you that will help in this next discussion.@@"<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> smiles at you as you rise, curtsy, and head for the familiar changing room.<br>
<br>
[<<moveTo "event_psychiatrist_landlord_4" 'Continue.' 60 "<<set $scene.first=true>>">>]
</div>/*#
#desc: psychiatrist landlord session get changed
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "maid_basic_black">>
<</if>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<moveTo "event_psychiatrist_landlord_5">>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" >>
<div id="invframe" class="scrolltext">
You enter the changing room to find — what else? But a maid uniform. Nothing particularly fancy, it still brings a smile to your face, and will certainly do the same for <<=setup.getNpcName("npc_landlord", "first")>>... <<if setup.checkVisibleClothingTag('maid') > 60>>though... it's not like you are not already dressed as a maid<<else>>or perhaps you have another maid outfit with you?<</if>><br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60>>
A smiling maid looks back at you from the mirror.<br>
<br>
[<<moveTo "event_psychiatrist_landlord_5" 'Double check your makeup and head out.' 120>>]
<<elseif $options.ezchange>>
[<<moveTo "event_psychiatrist_landlord_5" "Change into the maid outfit provided." 300 '<<wearItemSet "maid_basic_black">>'>>]
<</if>>
</div>/*#
#desc: psychiatrist landlord session maid intro
#status: RELEASED 0.9.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.makeup = $player.makeup.messed > 25>>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_maid") setup.charImage("npc_landlord","npc_landlord_maid")>>
<div id="invframe" class="scrolltext">
You double check your outfit<<if $scene.makeup>> and touch up your makeup<</if>> before leaving the changing room.<br>
<br>
Back in the office you stop in surprise — first that <<=setup.getNpcName("npc_psychiatrist", "formal")>> is now wearing a maid's outfit of her own... but even more jaw-dropping is that... so is <<=setup.getNpcName("npc_landlord", "first")>>!<br>
<br>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">>.@@" <<=setup.getNpcName("npc_landlord", "first")>> states in greeting. "@@.npc_landlord;The <<=setup.getNpcName("npc_psychiatrist", "custom","Doctor")>>... she think it good to put everyone on the same level, and, well... I do anything for you so... @@" <<he npc_landlord>> drops into a surprisingly delicate curtsy.<br>
<br>
"@@.npc_psychiatrist;Yes, I wanted to have some additional insight to how this particular aesthetic feeds into your relationship — and you being the only one to dress up, well... it felt somewhat exploitative. This seemed much more fair. So... how do you, personally, feel about being a maid?@@"<br>
<br>
[<<moveTo "event_psychiatrist_landlord_6" 'You like doing it for <<=setup.getNpcName("npc_landlord", "first")>>.' 1800 "<<set $scene.maid=false>>">>]<br>
[<<moveTo "event_psychiatrist_landlord_6" 'You just love being a maid!' 1800 "<<set $scene.maid=true>>">>]
</div>/*#
#desc: psychiatrist landlord session maid discussion
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_maid") setup.charImage("npc_landlord","npc_landlord_maid")>>
<div id="invframe" class="scrolltext">
<<if $scene.maid>>
You gleefully explain that you love being a maid... doubly so seeing how much <<=setup.getNpcName("npc_landlord", "first")>> enjoys it!<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> smiles back at you. "@@.npc_landlord;Si, mi <<callPlayer "npc_landlord">> — the most beautiful of maids!@@"
<<else>>
You smile and explain that, knowing how much <<=setup.getNpcName("npc_landlord", "first")>> loves maids... well, you love making <<him npc_landlord>> happy.<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> smiles at you. "@@.npc_landlord;You certainly make me happy <<callPlayer "npc_landlord">>... and I promise to do what I can to return favour.@@"<br>
<br>
You assure <<him npc_landlord>> that <<he npc_landlord>> does.
<</if>>
<br><br>
You smile at <<=setup.getNpcName("npc_landlord", "first")>>, amused at <<his npc_landlord>> own maid outfit — and that fact that <<he npc_landlord>> was apparently so willing to dress up for you.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> probes several additional aspects of maid matters, about how <<=ps(setup.getNpcName("npc_landlord", "first"))>> core interest is tied to the ways maid's make the world cleaner and prettier over the servant association before finally nodding in satisfaction. "@@.npc_psychiatrist;Excellent, well, if the two of you do not mind... one of the things I find most valuable in understanding a relationship is to observe it in, well... there is not really any other way to put it, in the throws of passion. If the two of you would be willing to provide a demonstration?@@"<br>
<br>
You look at <<=setup.getNpcName("npc_landlord", "first")>> but <<he npc_landlord>> seems to be waiting for your lead.<br>
<br>
<<if $player.body_ref.vagina>>
<<if !$player.virgin.vaginal>>
[@@.link_locked;This isn't quite the situation in which you would like to lose your virginity.@@]<br>
<<else>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if setup.canSexOrRemoveChastity("vag", "npc_landlord")>>
[<<moveTo "event_psychiatrist_landlord_7" 'Unlock your chastity belt and lie back...' 300 "<<set $scene.sex='vag'>>">>]<br>
<<else>>
[@@.link_locked;Your chastity belt is locked in place.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_landlord_7" 'Lie back for your <<man npc_landlord>>.' 300 "<<set $scene.sex='vag'>>">>]<br>
<</if>>
<</if>>
<</if>>
<<if !$player.virgin.anal>>
[@@.link_locked;This isn't quite the situation in which you would like to lose your anal virginity.@@]<br>
<<else>>
[<<moveTo "event_psychiatrist_landlord_7" 'Bend over for your <<man npc_landlord>>.' 180 "<<set $scene.sex='anal'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_landlord_7" 'You would prefer to end the session here.' 180 "<<set $scene.sex='none'>>">>]
</div>/*#
#desc: psychiatrist landlord session sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.sex>>
<<case 'vag'>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<case 'anal'>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' $npc_landlord.penis_size 'normal' $SEEN_FRIEND>>
<<case 'none'>>
<<include 'addPsychiatristEndless'>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_maid") setup.charImage("npc_landlord","npc_landlord_maid")>>
<div id="invframe" class="scrolltext">
<<switch $scene.sex>>
<<case 'vag'>>
You smile and lean back in a chair, spreading your legs<<if $scene.removeCage>> and unlocking your chastity belt with a click<</if>> as you bite your lip and flutter your eyelashes in invitation.<br>
<br>
"@@.npc_landlord;Oh <<callPlayer "npc_landlord">>...@@" <<=setup.getNpcName("npc_landlord", "first")>> replies as <<he npc_landlord>> adjusts <<his npc_landlord>> maid skirt to reveal a throbbing erection, "@@.npc_landlord;How can anyone say no to such beautiful offer?@@"<br>
<br>
A moment later and your <<boy npc_landlord>>friend is between your legs and inside of you, your eyes rolling back in pleasure as <<he npc_landlord>> makes tender love to you in front of your therapist.<br>
<br>
You look up at <<=setup.getNpcName("npc_landlord", "first")>> and smile, catching sight out of the corner of your eye of <<=setup.getNpcName("npc_psychiatrist", "formal")>> watching on intently...<br>
<br>
[<<moveTo "event_psychiatrist_landlord_8" 'Invite <<=setup.getNpcName("npc_psychiatrist", "formal")>> to do some additional oral analysis.' 300 "<<set $scene.psych=true>>">>]<br>
[<<moveTo "event_psychiatrist_landlord_8" 'Continue on.' 300 "<<set $scene.psych=false>>">>]<br>
<<case 'anal'>>
You wink at your <<boy npc_landlord>>friend before turning around to kneel over the chair, wiggling your bum in invitation<<if $scene.removePlug>> as you slide your plug free<</if>>.<br>
<br>
"@@.npc_landlord;Mi <<callPlayer "npc_landlord">>...@@" <<=setup.getNpcName("npc_landlord", "first")>> whispers, pulling <<his npc_landlord>> maid skirt out of the way to reveal a throbbing erection, that is soon ecstatically sliding into your rear.<br>
<br>
You moan, pushing back in enthusiasm as you note <<=setup.getNpcName("npc_psychiatrist", "formal")>> watching on studiously.<br>
<br>
[<<moveTo "event_psychiatrist_landlord_8" 'Invite <<=setup.getNpcName("npc_psychiatrist", "formal")>> to do some additional oral analysis.' 300 "<<set $scene.psych=true>>">>]<br>
[<<moveTo "event_psychiatrist_landlord_8" 'Continue on.' 300 "<<set $scene.psych=false>>">>]<br>
<<case 'none'>>
You shake your head and tell <<=setup.getNpcName("npc_psychiatrist", "formal")>> that you would prefer to keep such matters private.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> looks momentarily surprised, but then smiles graciously. "@@.npc_psychiatrist;Of course, of course — sometimes it's good to have to keep secrets with your partner... though not from them. From the rest of our discussion I must congratulate you both for finding each other and developing what appears to be a compassionate, mutually beneficial relationship, and I wish you continued fortune.@@"<br>
<br>
"@@.npc_landlord;Si... but what fortune could I have better than mi wonderful <<callPlayer "npc_landlord">>?@@"<br>
<br>
You blush, and curtsy in response.<br>
<br>
<<=ps(setup.getNpcName("npc_landlord", "first"))>> phone buzzes, and <<he npc_landlord>> looks at the message before glancing down at <<his npc_landlord>> outfit. "@@.npc_landlord;It appears something has broke once again, Thank you, <<=setup.getNpcName("npc_psychiatrist", "title")>>, <<callPlayer "npc_landlord">> but if the session is over I need to change before I head home.@@"<br>
<br>
You nod, helping your <<boy npc_landlord>>friend into <<his npc_landlord>> normal clothes before <<he npc_landlord>> hurries off. You thank <<=setup.getNpcName("npc_psychiatrist", "formal")>> once again for her time before departing yourself.<br>
<br>
[<<moveTo "room_citymap" "Leave the psychiatrist's office." 180>>]
<<default>>
ERROR: unexpected scene.sex <<=$scene.sex>>
<</switch>>
</div>/*#
#desc: psychiatrist landlord session sex w/psychiatrist
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if $scene.psych>>
<<applyExperience 'oral' $npc_psychiatrist.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_maid") setup.charImage("npc_landlord","npc_landlord_maid")>>
<div id="invframe" class="scrolltext">
<<if $scene.psych>>
<<=setup.getNpcName("npc_landlord", "first")>> continues to make love to
<<if $scene.sex == "anal">>
your ass as you beckon <<=setup.getNpcName("npc_psychiatrist", "formal")>> over and spread your lips.
<<else>>
you as you beckon <<=setup.getNpcName("npc_psychiatrist", "formal")>> over and tilt your head back.
<</if>>
<br><br>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> does not leave her patient waiting as she hurries over, and you are soon getting it from both ends — <<=ps(setup.getNpcName("npc_landlord", "first"))>> hard, <<if !$npc_landlord.fem>>masculine <</if>><<getWordPenis "npc_landlord">> at one end, and <<=setup.getNpcName("npc_psychiatrist", "formal")>> more delicately feminine <<getWordPenis false>> at the other.<br>
<br>
"@@.npc_psychiatrist;As a professional I, GASP, assess that your relationship is looking good from both the emotional and physical level...@@" <<=setup.getNpcName("npc_psychiatrist", "formal")>> moans. You hum in contentment, the resulting vibration of your throat pushing her over the edge as she cums softly, in contrast to the deeper grunt of pleasure from the other direction as your <<boy npc_landlord>>friend cums as well, the dual tides raising your own orgasm as <<=setup.getNpcName("npc_landlord", "first")>> holds your shuddering body in <<his npc_landlord>> <<if !$npc_landlord.fem>>strong <</if>>arms.
<<else>>
<<=setup.getNpcName("npc_landlord", "first")>> continues to make love to
<<if $scene.sex == "anal">>
your ass
<<else>>
you
<</if>>
as <<=setup.getNpcName("npc_psychiatrist", "formal")>> watches on.<br>
<br>
You look <<if $scene.sex == "anal">>back<<else>>up<</if>>into your <<boy npc_landlord>>friend's eyes and moan in pleasure, ceasing to concern yourself as to <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> observations on things as you wrap your arms around <<him npc_landlord>> as and close your eyes for the final ride to your combined orgasm.<br>
<br>
"@@.npc_landlord;Thank you, <<callPlayer "npc_landlord">>,@@" <<he npc_landlord>> whispers in your ear, holding you tight until the final aftershocks of pleasure subside and your eyes flutter open once again.
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_landlord_9" "Continue." 300>>]
</div>/*#
#desc: psychiatrist landlord session conclusion
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include 'addPsychiatristEndless'>>
<<switch $scene.sex>>
<<case 'vag'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<case 'anal'>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_maid") setup.charImage("npc_landlord","npc_landlord_maid")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist", "formal")>>
<<if $scene.psych>>
moves back behind her desk and nods.
<<else>>
nods from behind her desk.
<</if>>
<br><br>
"@@.npc_psychiatrist;Well! That was a very productive session — I hope the two of you found it the same. Remember, the foundation of relationships is communication, and being willing to ask others for advice or assistance is always good.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_landlord", "first"))>> phone buzzes. "@@.npc_landlord;Ach! Well, I'd love to stay, but it would seem there is yet another emergency I must fix,@@" You quickly help <<him npc_landlord>> get changed back into <<his npc_landlord>> "normal" attire, giving <<him npc_landlord>> a kiss for luck as <<he npc_landlord>> hurries out of office and you thank <<=setup.getNpcName("npc_psychiatrist", "formal")>> once again for her time before leaving yourself.<br>
<br>
[<<moveTo "room_citymap" "Leave the psychiatrist's office." 180>>]
</div>/*#
#desc: setup technician psychiatrist
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty("psychiatrist_endless_apointment_1")>>
<<deleteTask 'psychiatrist_endless_apointment_1'>>
<</if>>
<<set _tmpDatePsyc = setup.getNextDayOfWeek($now, 5, 14, 0, true)>>
<<addTaskById 'psychiatrist_couples_technician' _tmpDatePsyc>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You mention <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> offer of a couples therapy session...<br>
<br>
"@@.npc_technician;Couples therapy? Well isn't someone being all serious and diligent! That sounds great... mmm, getting a peek into that cute mind of yours... so hot... I'll see you <<if setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_couples_technician')) == 0>>later this afternoon!<<else>><<if $now.getUTCHours() >= 14>>next <</if>>Friday<</if>>!@@"<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist topic: capstone with technician
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your day at the cosplay convention with <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;Oh that sounds simply lovely! So wonderful for the two of you to bond over shared interests. You and <<=setup.getNpcName('npc_technician', 'first')>> have come so far in your relationship together... you know, while it is not exactly my specialization, I did take some classes in school, so I could do a couples therapy session for the two of you. Understand that you should not consider this out of any fear that there is anything wrong with your relationship, far from it, but that therapy can always be useful in helping build a stronger foundation of mutual understanding. Certainly flirting and new love is wonderful... but sometimes we can skip past more serious matters. Having a nice neutral field, and a third-party advisor, to discuss and practice communication is a sign of maturity, and great potential tool for the two of you going forward... so, as I said, offer is open, if you wanted to set something up in lieu of one of your normal sessions I would be happy to accommodate.@@"<br>
<br>
You tell her you'll keep that in mind.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: fail to arrive for psychiatrist technician appointment
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkOutsideDecency()>>
<<set $player.cutscene.lockinventory=false>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Hello, <<=$player.first_name>>... it is time for your session and... you are not here! Now, normally I would be willing to let such a thing slide... but <<=setup.getNpcName('npc_technician', 'other')>> is already here waiting, and that would be quite rude of you to waste their time, as well. Please do hurry in — after all, you were the one who asked for this appointment.@@"<br>
<br>
You promise you'll be there as soon as you can.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_psychiatrist_technician_therapy_1" "Hurry to your appointment." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.late=true>>">>]
<<else>>
[@@.link_locked;You are not sufficiently dressed to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: psychiatrist technician session intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You arrive for your scheduled "couples" session and enter <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office to find <<=setup.getNpcName('npc_technician', 'first')>> already sitting and waiting.<br>
<br>
"@@.npc_psychiatrist;Come in, come in! Obviously <<=$player.first_name>> and I have spent quite a bit of time together, so I invited <<=setup.getNpcName('npc_technician', 'other')>> in early for some one on one discussion so that I would be better prepared for the couples portion. If you would take a seat?@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> has already popped to her feet to greet you with a hug. "@@.npc_technician;It was fun! And... you never mentioned your therapist was such a hawtie! Could make a girl jealous... except I guess you inviting us all together counts as sharing?@@" <<=setup.getNpcName('npc_technician', 'first')>> laughs as she takes her seat.<br>
<br>
"@@.npc_psychiatrist;Yes, quite... so, shall we begin?@@" She gestures towards the two chairs set out in front of her desk.<br>
<br>
<<if $npc_technician.relationship.her_role == 'dom'>>
[<<moveTo "event_psychiatrist_technician_therapy_2" 'Kneel down next to your <<=setup.getNpcName("npc_technician", "title")>>.' 300 "<<set $scene.kneel=true>>">>]<br>
<<elseif $npc_technician.relationship.her_role == 'sub'>>
[<<moveTo "event_psychiatrist_technician_therapy_2" 'Motion for your slave to kneel next to you.' 300 "<<set $scene.kneel=true>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_technician_therapy_2" 'Take a seat.' 300 "<<set $scene.kneel=false>>">>]
</div>/*#
#desc: psychiatrist technician sit
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.kneel>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_FRIEND>>
<<elseif $npc_technician.relationship.her_role == 'sub'>>
<<set _sub = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _sub 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.kneel>>
<<if $npc_technician.relationship.her_role == 'dom'>>
You kneel down next to your <<=setup.getNpcName('npc_technician', 'title')>> and she gently lays her hand on your head, stroking your hair as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles back from the other side of her desk.<br>
<br>
"@@.npc_psychiatrist;Well! I cannot say I am surprised... but I suppose I am honoured that you would so swiftly assume your natural role in my presence.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles and you nuzzle up closer to your <<=setup.getNpcName('npc_technician', 'title')>>. "@@.npc_psychiatrist;This provides a wonderful jumping-off point. Speaking with the two of you I understand that role-play is an important aspect of your relationship. I thought we might discuss that a bit further...@@"
<<elseif $npc_technician.relationship.her_role == 'sub'>>
You motion for <<=setup.getNpcName('npc_technician', 'first')>> to kneel and she meekly obeys, blushing slightly as she takes her place at your feet with an absolutely adorable "@@.npc_technician;Sorry, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@"<br>
<br>
You give her a gentle pat on the head to reassure her that everything is fine while <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles.<br>
<br>
"@@.npc_psychiatrist;Simply lovely. Obviously <<if $npc_technician.relationship.her_collared>>her collar told me of your relationship structure<<else>>I was aware of your special relationship structure<</if>>, but to see it in action... well, <<=$player.first_name>> — or should I say, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.first_name>> — looks to have quite the lovely slave-girl. This provides a wonderful jumping-off point for the first topic of discussion. Speaking with the two of you I understand that role-play is an important aspect of your relationship. I thought we might discuss that a bit further...@@"
<<else>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</if>>
<<else>>
You take a seat next to <<=setup.getNpcName('npc_technician', 'first')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> signals the start of the session with a nod.<br>
<br>
"@@.npc_psychiatrist;So — it is my understanding that role-play is an important aspect of your relationship. I wanted to start by digging into that a bit further...@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_technician_therapy_3" 'Talk about how you went from joining <<=ps(setup.getNpcName("npc_technician", "first"))>> role-playing group to... some more intense role-play.' 300 "<<set $scene.speak=true>>">>]<br>
[<<moveTo "event_psychiatrist_technician_therapy_3" 'Let <<=setup.getNpcName("npc_technician", "first")>> explain things.' 300 "<<set $scene.speak=false>>">>]
</div>/*#
#desc: psychiatrist technician react to role-playing
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.speak>>
You enthusiastically talk about how much you enjoy "role-playing" with <<=setup.getNpcName('npc_technician', 'first')>> — both in the bedroom, and in having joined her friends for their weekly adventures.<br>
<br>
"@@.npc_technician;Yup, <<=$player.first_name>> is all sorts of fun in that regard... though, maybe it's from practice? All that time playing the role of boring tech dude at their old job. Don't get me wrong, they did a good job and all... but it's increasingly clear that it was VERY much playing a part other than who they really were, right?@@"<br>
<br>
You blush as <<=setup.getNpcName('npc_psychiatrist', 'first')>> suppresses a laugh to continue on.
<<else>>
You play bashful and look towards <<=setup.getNpcName('npc_technician', 'first')>> who grins and speaks for the both of you. "@@.npc_technician;Yup, role-playing is great! I mean... why confine oneself to acting out a single part when you can play around experiencing so much more? Things started out with me inviting <<=$player.first_name>> to join my friends for our weekly game... but when things moved from there to the bedroom, well... so many fun opportunities to explore!@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;I whole-heartedly agree. Enjoying shared activities together and experimenting with different roles can be fun, and healthy! Focusing in a bit more on the relationship side of things... <<=setup.getNpcName('npc_technician', 'first')>>, when we were talking just the two of us you mentioned that you're pan-poly? Have you and <<=$player.first_name>> discussed what that means for your relationship?@@"<br>
<br>
"@@.npc_technician;Pan-poly-versatile-switch... technically...@@" <<=setup.getNpcName('npc_technician', 'first')>> replies... "@@.npc_technician;I guess... well, I just really like sex, and sexy people... which is just about all people...@@"<br>
<br>
[<<moveTo "event_psychiatrist_technician_therapy_4" 'You do too, and having not just an open, but a potentially full-on poly relationship provides so many more options for the both of you to enjoy!' 600 "<<set $scene.relationship='poly'>>">>]<br>
<<if $npc_landlord.stage >= 4 && $npc_admin.flags.relationship == "boyfriend">>
<<if $npc_landlord.fem && $npc_admin.fem>>
[@@.link_locked;Given that, between <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_landlord', 'first')>> you have ANOTHER two girlfriends, you can't really call yourself even monogamish...@@]<br>
<<elseif $npc_landlord.fem && !$npc_admin.fem>>
[@@.link_locked;Given that you not only have another girlfriend in <<=setup.getNpcName('npc_landlord', 'first')>>, but a boyfriend in <<=setup.getNpcName('npc_admin', 'first')>> as well, you can't really call yourself even monogamish...@@]<br>
<<elseif !$npc_landlord.fem && $npc_admin.fem>>
[@@.link_locked;Given that you not only have another girlfriend in <<=setup.getNpcName('npc_admin', 'first')>>, but a boyfriend in <<=setup.getNpcName('npc_landlord', 'first')>> as well, you can't really call yourself even monogamish...@@]<br>
<<else>>
[@@.link_locked;Given that, between <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_landlord', 'first')>> you have not one, but two boyfriends you can't really call yourself even monogamish...@@]<br>
<</if>>
<<elseif $npc_landlord.stage >= 4>>
[@@.link_locked;Given you're also dating <<=setup.getNpcName('npc_landlord', 'first')>>, you can't really call yourself even monogamish...@@]<br>
<<elseif $npc_admin.flags.relationship == "boyfriend">>
[@@.link_locked;Given you're also dating <<=setup.getNpcName('npc_admin', 'first')>>, you can't really call yourself even monogamish...@@]<br>
<<elseif $npc_admin.flags.relationship == "friendswbenefits">>
[@@.link_locked;Given you're also fuck-buddy's with <<=setup.getNpcName('npc_admin', 'first')>>, you can't really call yourself even monogamish...@@]<br>
<<else>>
[<<moveTo "event_psychiatrist_technician_therapy_4" "You recognise the fun of wider experience... but you aren't really up for a polyamorous relationship, more monogamish, at most." 600 "<<set $scene.relationship='open'>>">>]<br>
<</if>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<set _herRole = ps(setup.getNpcName('npc_technician', 'title'))>>
<<case 'sub'>>
<<set _herRole = "slave's">>
<<case 'neutral' ''>>
<<set _herRole = "girlfriend's">>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
[<<moveTo "event_psychiatrist_technician_therapy_4" 'You can appreciate and support your <<=_herRole>> interests... but on the sexual front you lean towards ace.' 1800 "<<set $scene.relationship='ace'>>">>]<br>
[<<moveTo "event_psychiatrist_technician_therapy_4" "You guess you hadn't really thought about it much." 1800 "<<set $scene.relationship='no'>>">>]
</div>/*#
#desc: psychiatrist technician pan-poly
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ['ace','no'].includes($scene.relationship)>>
<<include 'addPsychiatristEndless'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.relationship>>
<<case 'poly'>>
You grin and reply that you're down for pretty much whatever... and that sharing that "whatever" with <<=setup.getNpcName('npc_technician', 'first')>> and others sounds just perfect!<br>
<br>
"@@.npc_technician;I cannot believe how long your hot, cute, sexy, kinkiness was wasted at your old job... we are going to have, well, KEEP having SO MUCH fun together... like, even more than we already do!@@"
<<case 'open'>>
You reply that, perhaps influenced by the disaster of your previous relationship, and helped by <<=ps(setup.getNpcName('npc_technician', 'first'))>> kind enthusiasm, you're ready to embrace a more open approach to sex... though relationship-wise you aren't interested in going beyond <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> pulls you in for a hug. "@@.npc_technician;Sluts together! I cannot believe how long your hot, cute, sexy, kinkiness was wasted at your old job... but now the two of us can make up for lost time!@@"
<<case 'ace'>>
You reply that, actually... you'd rather skip the actual sex part and stick to just hanging out and cuddling.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> grins and pulls you in for a hug. "@@.npc_technician;Well you are about the most heckin' cute cuddler there is... so I am totally down with that!@@"
<<case 'no'>>
You reply that you hadn't really talked about such things... but that you always pictured yourself as more of a monogamous sort...<br>
<br>
There's a moment of awkwardness before <<=setup.getNpcName('npc_technician', 'first')>> pulls you in for a hug. "@@.npc_technician;Hey if I was going to be monogamous... well, I think I'd want to do with you. If you're interested in opening things up, well... I'm down for it... but if all I get is you and me together? Well... you're worth it... though I warn you I might just wear you out. I've been referred to as... insatiable more than once!@@"
<<default>>
ERROR: unexpected scene.relationship <<=$scene.relationship>>
<</switch>>
<br><br>
<<switch $scene.relationship>>
<<case 'poly' 'open'>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> spends some more time walking you and <<=setup.getNpcName('npc_technician', 'first')>> through some communication techniques that can help strengthen your relationship, but you can feel the tension in the room building until <<=setup.getNpcName('npc_psychiatrist', 'formal')>> finally makes an offer.<br>
<br>
"@@.npc_psychiatrist;So, we have discussed the fun benefits of role-playing, combine that with your adventurousness, and my own hands-on approach to therapy... tell me, how would the two of you feel doing a bit of an exercise today?@@"<br>
<br>
You shiver slightly in anticipation at the sort of "exercise" you might get up to with these two lusty women as all eyes seem to be on you to make a decision.<br>
<br>
<<if $npc_technician.relationship.her_role == "neutral">>
[<<moveTo "event_psychiatrist_technician_therapy_5" 'Yes... and you want <<=setup.getNpcName("npc_technician", "first")>> to be in charge.' 180 "<<set $scene.sex=true>><<set $scene.her_role='dom'>>">>]<br>
[<<moveTo "event_psychiatrist_technician_therapy_5" 'Yes... <<=setup.getNpcName("npc_technician", "first")>> would make a good subby patient.' 180 "<<set $scene.sex=true>><<set $scene.her_role='sub'>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_technician_therapy_5" "That sounds like fun!" 180 "<<set $scene.sex=true>><<set $scene.her_role=$npc_technician.relationship.her_role>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_technician_therapy_5" "Maybe some other time..." 180 "<<set $scene.sex=false>>">>]
<<case 'ace' 'no'>>
You blush, your heart skipping a beat as you reflect at how wonderful <<=setup.getNpcName('npc_technician', 'first')>> is.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> spends some more time helping teach you and <<=setup.getNpcName('npc_technician', 'first')>> some techniques for improving communication and managing the expectations of your relationship... but, as useful as they will probably be, you find your thoughts repeatedly coming back to just how giving and lovely <<=setup.getNpcName('npc_technician', 'first')>> is... and how happy the two of you are together.<br>
<br>
The session comes to an end and you and <<=setup.getNpcName('npc_technician', 'first')>> thank <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for taking the time before <<=setup.getNpcName('npc_technician', 'first')>> returns home to finish planning for the weekend's game while you head your own way.<br>
<br>
[<<moveTo "room_citymap" "Head back to the city." 300 "<<set $scene.beforetasklocation.pop()>>">>]
<</switch>>
</div>/*#
#desc: psychiatrist technician sex offer
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.sex>>
<<include 'addPsychiatristEndless'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You nod and <<=setup.getNpcName('npc_technician', 'first')>> grins,
<<if $scene.her_role == "dom">>
immediately taking control of the room as she rises to her feet and surveys you and <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. "@@.npc_technician;So all this talking has been great... but I think something harder is in order, so <<=setup.getNpcName('npc_technician', 'Doctor')>> is here with a prescription of 350cc's of my cock.@@"<br>
<br>
She glances towards you with an eager grin.
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Nurse! Unlock the medicine cabinet and help prepare the patient!@@"<br>
<br>
[<<moveTo "event_psychiatrist_technician_therapy_6_dom_1" 'Remove her cage and "assist" with the procedure.' 180>>]<br>
<<else>>
"@@.npc_technician;Nurse! Prep the patient!@@"<br>
<br>
[<<moveTo "event_psychiatrist_technician_therapy_6_dom_1" 'Yes, <<=setup.getNpcName("npc_technician", "Doctor")>>.' 180>>]
<</if>>
<<else>>
You and <<=setup.getNpcName('npc_technician', 'first')>> share a wink and then you turn to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and ask if there is anything to be done about your girlfriend's insatiable nymphomania<<if $npc_technician.relationship.her_caged>>, noting that even locking her in chastity has done nothing to stem her lusts<</if>>. <<=setup.getNpcName('npc_technician', 'first')>> is immediately on your wave-length, practically crawling over you as she all but humps your legs.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks up from her notes and nods. "@@.npc_psychiatrist;Yes, I see... perhaps if I better understood the full severity of the disorder...@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> works her way around your body, still snuggling up to you while flipping up her skirt and wiggling her rear at <<=setup.getNpcName('npc_psychiatrist', 'formal')>> in invitation. "@@.npc_technician;How about the severe need I have for you to fuck my ass? Too much talking, not enough cock-ing! I NEED that medical-grade girldick in my hungry hole!@@"<br>
<br>
<<if $npc_technician.relationship.her_role == 'dom'>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_1" 'Spread your <<=ps(setup.getNpcName("npc_technician", "title"))>> cheeks for <<=setup.getNpcName("npc_psychiatrist", "formal")>> to make a diagnosis.' 180>>]
<<else>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_1" 'Spread your <<=ps(setup.getNpcName("npc_technician", "custom", "slave"))>> cheeks for <<=setup.getNpcName("npc_psychiatrist", "formal")>> to make a diagnosis.' 180>>]<br>
<</if>>
<</if>>
[<<moveTo "event_psychiatrist_technician_therapy_5" "Actually... maybe not today." 180 "<<set $scene.sex=false>>">>]
<<else>>
You reply that you aren't really feeling like such... intense therapy today and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Very well... no harm in offering, right? With that off the table I think I shall present my conclusion that, on the relationship front, the two of you seem quite well suited for one another. Just remember to keep communication channels open, and retain this same mutual caring attitude and you will continue to enjoy romantic — and other sorts, of bliss.@@"<br>
<br>
You and <<=setup.getNpcName('npc_technician', 'first')>> thank <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for her time and get ready to leave, <<=setup.getNpcName('npc_technician', 'first')>> going home to finish planning for the weekend's game while you head your own way.<br>
<br>
[<<moveTo "room_citymap" "Head back to the city." 300 "<<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: psychiatrist technician sex abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include 'addPsychiatristEndless'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You whisper that you don't want to continue and everything immediately shifts, the scene over in an instant <<=setup.getNpcName('npc_technician', 'first')>> as pulls you in for a comforting embrace and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> returns to her desk.<br>
<br>
"@@.npc_psychiatrist;Well, even as a partial scene that was quite interesting, and both it — and <<=ps(setup.getNpcName('npc_technician', 'first'))>> immediate consideration of your discomfort... well, I give your relationship glowing approval.@@"<br>
<br>
You and <<=setup.getNpcName('npc_technician', 'first')>> thank <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for her time and get ready to leave<<if $scene.removeCage && $npc_technician.relationship.her_caged>>, chastity devices locked back in place<<elseif $npc_technician.relationship.her_caged>>, <<=ps(setup.getNpcName('npc_technician', 'first'))>> chastity cage locked back on<<elseif $scene.removeCage>>, your chastity locked back where it belongs<</if>>. With a sultry parting kiss <<=setup.getNpcName('npc_technician', 'first')>> returns home to finish planning for the weekend's game while you head your own way.<br>
<br>
[<<moveTo "room_citymap" "Head back to the city." 300 "<<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: psychiatrist technician sex - dominant
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'Doctor')>> strikes a power stance straight off a comic book cover as you drop to your knees and
<<if $npc_technician.relationship.her_caged>>
unlock her cage, her <<getWordPenis false>> taking little more than a stroke to rise to full magnificence.
<<else>>
pull her straining panties out of the way for her <<getWordPenis false>> to spring enthusiastically to attention.
<</if>>
<br><br>
"@@.npc_psychiatrist;Oh my!@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with her best Southern Belle impression. "@@.npc_psychiatrist;Are you certain such a large dose is appropriate for my first treatment?@@"<br>
<br>
"@@.npc_technician;Of course! Your case is one of the most serious I've seen, we must make haste before the symptoms — such as "my cock not being inside you" get any worse!@@"<br>
<br>
With <<=setup.getNpcName('npc_technician', 'Doctor')>> edging towards mad-scientist levels of ham you play the loyal minion as you help guide <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to her knees and bring the "medicine" to her lips.<br>
<br>
"@@.npc_technician;Now, remember, you may feel a slight pressure in your throat — that's normal, and it means the medicine is getting where it is most needed — now open wide!@@"<br>
<br>
Still playing the part of the nervous patient, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks up and slightly parts her lips as you helpfully hold her head and <<=setup.getNpcName('npc_technician', 'Doctor')>> slides her "instrument" into position.<br>
<br>
As the large <<getWordPenis false>> passes <<=setup.getNpcName('npc_psychiatrist', 'formal')>> lips her eyes widen in surprise, and then droop in pleasure. "@@.npc_technician;See? Medicine is good for you, I can see your condition improving already...@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> moans softly in response while sucking gently.<br>
<br>
"@@.npc_technician;Nurse! It is time to advance to the next level of treatment — commence application of digital stimulation of the mammary glands... i.e.: play with those big, beautiful breasts!@@"<br>
<br>
[<<moveTo "event_psychiatrist_technician_therapy_6_dom_2" 'As you prescribe, <<=setup.getNpcName("npc_technician", "Doctor")>>!' 180>>]
[<<moveTo "event_psychiatrist_technician_therapy_abort" "This is enough for today." 180>>]
</div>/*#
#desc: psychiatrist technician dominant breast play
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You crouch down behind <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and work her breast as she moans and sucks off <<=setup.getNpcName('npc_technician', 'Doctor')>> with even greater enthusiasm.<br>
<br>
"@@.npc_technician;Patient showing... excellent response to treatment...@@" <<=setup.getNpcName('npc_technician', 'Doctor')>> pants, clearly struggling to stay in control. "@@.npc_technician;Nurse will continue her efforts while I make a verbal check of patient status.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'Doctor')>> reaches down to pull <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> lips away, strands of saliva linking from lips to cock as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks up and smiles. "@@.npc_psychiatrist;This treatment is so good, <<=setup.getNpcName('npc_technician', 'Doctor')>>... I'm feeling so much better.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'Doctor')>> catches her breath as her twitching <<getWordPenis false>> drips. "@@.npc_technician;Yes... but now it's time for your second dose. Nurse! Help the patient to her feet, it is time for an additional rectal administration. Keep her lips entertained while I administer this, ah, much needed medicine!@@"<br>
<br>
[<<moveTo "event_psychiatrist_technician_therapy_6_dom_3" 'Make out with, <<=setup.getNpcName("npc_psychiatrist", "formal")>> while your girlfriend rails her.' 1000 "<<set $scene.action='kiss'>><<set $scene.removeCage=false>>">>]<br>
<<if setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_technician_therapy_6_dom_3" 'Remove your chastity and give <<=setup.getNpcName("npc_psychiatrist", "formal")>> "medicine" from both ends.' 1000 "<<set $scene.removeCage=true>><<set $scene.action='penis'>>">>]<br>
<<else>>
[@@.link_locked;You lack a penis to double-dose <<=setup.getNpcName("npc_psychiatrist", "formal")>>.@@]<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_psychiatrist_technician_therapy_6_dom_3" 'Remove your chastity and have <<=setup.getNpcName("npc_psychiatrist", "formal")>> lick up some additional medicine.' 1000 "<<set $scene.removeCage=true>><<set $scene.action='vag'>>">>]<br>
<<else>>
[@@.link_locked;You lack a vagina to mix-dose <<=setup.getNpcName("npc_psychiatrist", "formal")>>.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are locked in chastity, limiting your available "prescribables."@@]<br>
<</if>>
<<else>>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_technician_therapy_6_dom_3" 'Give <<=setup.getNpcName("npc_psychiatrist", "formal")>> medicine from both ends.' 1000 "<<set $scene.action='penis'>><<set $scene.removeCage=false>>">>]<br>
<<else>>
[@@.link_locked;You lack a penis to double-dose <<=setup.getNpcName("npc_psychiatrist", "formal")>>.@@]<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_psychiatrist_technician_therapy_6_dom_3" 'Have <<=setup.getNpcName("npc_psychiatrist", "formal")>> lick up some additional medicine.' 1000 "<<set $scene.action='vag'>><<set $scene.removeCage=false>>">>]<br>
<<else>>
[@@.link_locked;You lack a vagina to mix-dose <<=setup.getNpcName("npc_psychiatrist", "formal")>>.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_psychiatrist_technician_therapy_abort" "This is enough for today." 180>>]
</div>/*#
#desc: psychiatrist technician dominant finish
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'kiss'>>
<<changeHorny 20>>
<<case 'penis'>>
<<playerOrgasm>>
<<case 'vag'>>
<<playerOrgasm>>
<</switch>>
<<if setup.getItemFromType("cage") && $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<include 'addPsychiatristEndless'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
<<=setup.getNpcName('npc_technician', 'first')>> takes a moment to help you out of your chastity before the two of you get <<=setup.getNpcName("npc_psychiatrist", "formal")>> arranged to continue the "procedure." <br>
<br>
<</if>>
<<switch $scene.action>>
<<case 'kiss'>>
With <<=setup.getNpcName("npc_psychiatrist", "formal")>> bent over her desk you share a passionate kiss as
<<case 'penis'>>
You line up in mirror of your <<if $npc_technician.relationship.her_role == 'dom'>><<=setup.getNpcName('npc_technician', 'title')>><<else>>girlfriend<</if>>, <<=setup.getNpcName("npc_psychiatrist", "formal")>> eagerly sucking your <<getWordPenis false>> with the same passion she showed to <<=ps(setup.getNpcName('npc_technician', 'first'))>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
significantly larger
<<case 3 4>>
larger
<<case 5>>
initial
<<case 6>>
<<if $player.body_ref.knot || $player.body_ref.horsecock>>more human<<else>>slightly smaller<</if>>
<</switch>>
dose of "medicine."
<<case 'vag'>>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> eagerly licks between your legs, as thirsty and passionate to eat you out as she had taking her earlier "medicine."
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<=setup.getNpcName('npc_technician', 'Doctor')>> administers the second dose. "@@.npc_technician;Patient is advised to relax — this muscular tightness is a sign that this additional dose was sorely needed.@@" <<=setup.getNpcName('npc_technician', 'first')>> grunts as she slides deeper, the earlier saliva providing plenty of lube as she starts rhythmically plowing the good <<=setup.getNpcName('npc_psychiatrist', 'custom', 'Doctor')>>.<br>
<br>
Soon all three of you are moaning as <<=setup.getNpcName('npc_technician', 'Doctor')>> techno-babbles her way to a climax. "@@.npc_technician;Administering, *grunt*, maximal dosage...@@"<br>
<br>
With shared ecstasy <<if $scene.action != "kiss">>all three of you orgasm hard<<else>>you kiss your way through the double orgasm of your two friends<</if>>.<br>
<br>
The threesome shifts organically to the couch where fingers entwine and lips embrace as you cuddle your way down from the post-orgasmic high. With a note of reluctance in her voice <<=setup.getNpcName("npc_psychiatrist", "formal")>> is the one to end things, extricating herself from the cuddle puddle before thanking the two of you for the visit as she explains that she needs to prepare for her next appointment.<br>
<br>
"@@.npc_psychiatrist;Thank you for the demonstration... I had quite the enjoyable time, and it solidified my already established decision that the relationship between the two of you is on sturdy ground. Just keep up your compassion and communication and you will continue to enjoy wonderful times with one another.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> beams as
<<if $npc_technician.relationship.her_caged && $scene.removeCage>>
you help one another back into chastity.
<<elseif $npc_technician.relationship.her_caged>>
you help her back into chastity.
<<elseif $scene.removeCage>>
she locks you back in chastity.
<<else>>
she helps fix your clothes, and her skirt.
<</if>>
With a parting wave to <<=setup.getNpcName("npc_psychiatrist", "formal")>> you and your girlfriend-slash-<<=setup.getNpcName('npc_technician', 'title')>> head off — <<=setup.getNpcName('npc_technician', 'first')>> excusing herself homeward to work on the weekend's game, while you consider your next destination.<br>
<br>
[<<moveTo "room_citymap" "Head back to the city." 300 '<<set $scene.beforetasklocation.pop()>><<if $scene.removeCage>><<include "replaceCage_extendSissyomatic">><</if>>'>>]
</div>/*#
#desc: psychiatrist technician sex - sub
#status: RELEASED 0.8.7.0
#ignore_spell: cooock
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You lean forward to spread <<=ps(setup.getNpcName('npc_technician', 'first'))>> cheeks in invitation as <<=setup.getNpcName("npc_psychiatrist", "formal")>> walks over, her notepad put to one side as she lets her skirt fall and pulls her panties out of the way to reveal her hard <<getWordPenis false>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> places her hands on either side of <<=ps(setup.getNpcName('npc_technician', 'first'))>> rear and pauses for a moment. "@@.npc_psychiatrist;Does the patient consent to this procedure?@@"<br>
<br>
"@@.npc_technician;Fuck yes, she does, now hurry up with this red tape bureaucracy and fuck my girl-hole! Patient needs medical-grade COOOCK — girl-cock!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> growls lustily and reaches for your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>> as <<=setup.getNpcName("npc_psychiatrist", "formal")>> slides into her.<br>
<br>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_2" 'Grab her by the hair and pull <<=setup.getNpcName("npc_technician", "first")>> in to make out.' 1000 "<<set $scene.action='kiss'>><<set $scene.removeCage=false>>">>]<br>
<<if setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_2" 'Remove your chastity to help probe <<=setup.getNpcName("npc_technician", "formal")>> from both ends.' 1000 "<<set $scene.removeCage=true>><<set $scene.action='penis'>>">>]<br>
<<else>>
[@@.link_locked;You lack a penis to double-probe <<=setup.getNpcName("npc_technician", "first")>>.@@]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if $npc_technician.relationship.her_role == 'dom'>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_2" 'Remove your chastity and give <<=ps(setup.getNpcName("npc_technician", "formal"))>> tongue something to do.' 1000 "<<set $scene.removeCage=true>><<set $scene.action='vag'>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_2" 'Remove your chastity and give <<=ps(setup.getNpcName("npc_technician", "first"))>> tongue something to do.' 1000 "<<set $scene.removeCage=true>><<set $scene.action='vag'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You lack a vagina for <<=setup.getNpcName("npc_technician", "first")>> to lick.@@]
<</if>>
<<else>>
[@@.link_locked;You are locked in chastity, limiting your options.@@]
<</if>>
<<else>>
<<if $player.body_ref.penis>>
<<if $npc_technician.relationship.her_role == 'dom'>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_2" 'Probe <<=setup.getNpcName("npc_technician", "formal")>> from both ends.' 1000 "<<set $scene.action='penis'>><<set $scene.removeCage=false>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_2" 'Probe <<=setup.getNpcName("npc_technician", "first")>> from both ends.' 1000 "<<set $scene.action='penis'>><<set $scene.removeCage=false>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You lack a penis to double-probe <<=setup.getNpcName("npc_technician", "first")>>.@@]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if $npc_technician.relationship.her_role == 'dom'>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_2" 'Give <<=ps(setup.getNpcName("npc_technician", "formal"))>> tongue something to do.' 1000 "<<set $scene.action='vag'>><<set $scene.removeCage=false>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_2" 'Give <<=ps(setup.getNpcName("npc_technician", "first"))>> tongue something to do.' 1000 "<<set $scene.action='vag'>><<set $scene.removeCage=false>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You lack a vagina for <<=setup.getNpcName("npc_technician", "first")>> to lick.@@]
<</if>>
<</if>>
</div>/*#
#desc: psychiatrist technician sub oral
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'kiss'>>
<<changeHorny 20>>
<<case 'penis'>>
<<playerOrgasm>>
<<case 'vag'>>
<<playerOrgasm>>
<</switch>>
<<if setup.getItemFromType("cage") && $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
As <<=setup.getNpcName("npc_psychiatrist", "formal")>> accelerates her pace, <<=setup.getNpcName('npc_technician', 'first')>> hurriedly unlocks your <<=setup.getItemName($scene.cage)>>.<br>
<br>
<</if>>
<<switch $scene.action>>
<<case 'kiss'>>
You pull <<=setup.getNpcName("npc_technician", "first")>> in for a kiss, the two of you passionately making out while <<=setup.getNpcName("npc_psychiatrist", "formal")>> continues to thrust. "@@.npc_technician;Mmmm, you always take me to the best places, with the most, ah! Interesting people, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...@@"
<<case 'penis'>>
<<=setup.getNpcName('npc_technician', 'first')>> eagerly wraps her lips around your
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
small penis,
<<case 3 4>>
hard penis,
<<case 5>>
large penis,
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.knot>>dog-<<elseif $player.body_ref.horsecock>>horse-<</if>>cock,
<</switch>>
moaning ecstatically as she gets it from both ends.
<<case 'vag'>>
<<=setup.getNpcName("npc_technician", "first")>> eagerly licks between your legs, moaning into you with passionate thirst as <<=setup.getNpcName("npc_psychiatrist", "formal")>> continues expertly "diagnosing" her from behind.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_psychiatrist;Patient's condition... appears manageable.@@" <<=setup.getNpcName("npc_psychiatrist", "formal")>> gasps.
<<if $npc_technician.relationship.her_caged>>
"@@.npc_psychiatrist;But to complete my diagnosis I need access to her other pleasure centre — if you would kindly unlock her for me to finish my diagnosis?@@"<br>
<br>
<<if $npc_technician.relationship.sissyomatic>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_3" 'Text <<=setup.getNpcName("npc_ai", "formal")>> to unlock <<=setup.getNpcName("npc_technician", "formal")>> for extended diagnosis.' 1000>>]<br>
<<elseif $npc_technician.relationship.her_role == 'dom'>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_3" 'Unlock <<=setup.getNpcName("npc_technician", "formal")>> for extended diagnosis.' 1000>>]<br>
<<else>>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_3" 'Unlock <<=setup.getNpcName("npc_technician", "first")>> for extended diagnosis.' 1000>>]<br>
<</if>>
<<else>>
"@@.npc_psychiatrist;But to make a thorough diagnosis I need to more than an internal inspection. Would the patient kindly turn over?@@" She asks, gesturing to the large, hard <<getWordPenis false>> dangling between your girlfriend's glistening thighs.<br>
<br>
[<<moveTo "event_psychiatrist_technician_therapy_6_sub_3" 'Help re-arrange the patient...' 1000>>]<br>
<</if>>
[<<moveTo "event_psychiatrist_technician_therapy_abort" "This is enough for today." 180>>]
</div>/*#
#desc: psychiatrist technician sub finish
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include 'addPsychiatristEndless'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.sissyomatic>>
It takes but a single digital command from <<=setup.getNpcName('npc_ai', 'formal')>> directed at <<=ps(setup.getNpcName('npc_technician', 'first'))>> cage for the advanced device to recede and allow her hard <<getWordPenis false>> to spring forth, eager for attention.
<<elseif $npc_technician.relationship.her_caged>>
It takes a bit of effort to separate from <<=ps(setup.getNpcName('npc_technician', 'first'))>> insatiable lips long enough to unlock her cage and get her on her back, but as soon as she does her <<getWordPenis false>> springs eagerly to attention.
<</if>>
<<=setup.getNpcName('npc_technician', 'first')>> moans with want as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> pulls out, but she only has to wait a few seconds to finish flipping over and gasp anew as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> starts sucking her off.<br>
<br>
"@@.npc_psychiatrist;Mmmm, you certainly taste like a nymphomaniac... look at how hard you are! Why, it is my professional opinion that you are a sex-crazed slut, desperate to fuck her Doctor while her <<if $npc_technician.relationship.her_role == 'dom'>><<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<else>><<switch $player.identify_as>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>><</if>> watches!@@"<br>
<br>
"@@.npc_technician;Yessss...@@" <<=setup.getNpcName('npc_technician', 'first')>> groans as you tilt her head back into a kiss, <<=ps(setup.getNpcName('npc_technician', 'first'))>> tongue spearing past your lips as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> makes good on her word, mounting <<=ps(setup.getNpcName('npc_technician', 'first'))>> <<getWordPenis false>> and then leaning in for a three-way kiss. It isn't long before <<=setup.getNpcName('npc_technician', 'first')>> cums, her hips bucking hard enough to nearly toss <<=setup.getNpcName('npc_psychiatrist', 'formal')>> off, the doctor finally staggering away, her legs still shaking.<br>
<br>
"@@.npc_psychiatrist;I, GASP, confirm the diagnosis... and declare you perfectly healthy.@@"<br>
<br>
"@@.npc_technician;Yay!@@" <<=setup.getNpcName('npc_technician', 'first')>> cheers, her <<getWordPenis false>> twitching <<if $npc_technician.relationship.her_caged>>before you leap in to secure it back in chastity as she slightly pouts<<else>>as she wrangles it back into her panties<</if>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles, making eyes towards the sofa where the three of you have a nice cool-down cuddle before <<=setup.getNpcName("npc_psychiatrist", "formal")>> reluctantly calls an end to things.<br>
<br>
"@@.npc_psychiatrist;Thank you for the demonstration... I had quite the enjoyable time, and it solidified my already established decision that the relationship between the two of you is on sturdy ground. Unfortunately, I have another appointment I need to prepare for, so I will leave you with the advice to keep up your compassion and communication and you will continue to enjoy wonderful times with one another.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> beams
<<if $scene.removeCage>>
as she locks you back in chastity.
<<else>>
as she helps fix your clothes, and her skirt.
<</if>>
With a parting wave to <<=setup.getNpcName("npc_psychiatrist", "formal")>> the two of you head off — <<=setup.getNpcName('npc_technician', 'first')>> excusing herself homeward to <<if $currentTasks.hasOwnProperty('technician_dinner') && setup.daysToDate($now,setup.getTaskDueDate('technician_dinner')) == 0>>prep for your dinner date<<else>>work on the weekend's game<</if>>, while you consider your next destination.<br>
<br>
[<<moveTo 'room_citymap' "Head back to the city." 300 '<<set $scene.beforetasklocation.pop()>><<if $scene.removeCage>><<include "replaceCage_extendSissyomatic">><</if>>'>>]
</div>/*#
#desc: wait for first psychiatrist session, see npc_boss, called for your session
#status: FINISHED 0.4.0.0
#*/
<<set $scene.first_changeclothes = false>>
<<include "addSexStoreOpeningEvent">>
<<set $scene.maxTag = "">>
<<set $scene.handjob = false>>
<<set $scene.blowjob = false>>
<<set $scene.cum = false>>
<<set $scene.deepthroat = false>>
<<set $scene.struggledeepthroat = false>>
<<set $scene.talkThemes = 0>>
<<set $scene.arriveClothingGender = setup.computeWorstGender()>>
<<if $currentTasks.hasOwnProperty("task_destroy_psych")>>
<<initRoom>>
<<moveTo 'event_boss_destroy_psychiatrist_1'>>
<<elseif $currentTasks.hasOwnProperty("psychiatrist_boiless_review") && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_boiless_review')) == 0>>
<<completeTask 'psychiatrist_boiless_review' $now true>>
<<initRoom>>
<<moveTo 'event_psychiatrist_boiless_review_1_1'>>
<<elseif $currentTasks.hasOwnProperty("psychiatrist_boiless_review_failthrough") && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_boiless_review_failthrough')) == 0>>
<<completeTask 'psychiatrist_boiless_review_failthrough' $now true>>
<<initRoom>>
<<moveTo 'event_psychiatrist_boiless_review_1_1'>>
<<elseif $npc_psychiatrist.flags.evil == 2>>
<<initRoom>>
<<if State.hasPlayed("event_psychiatrist_stage5_first")>>
<<moveTo 'event_psychiatrist_stage5_first'>>
<<else>>
<<moveTo 'event_psychiatrist_stage5_1'>>
<</if>>
<<elseif $npc_psychiatrist.sessions > 0>>
<<if !$npc_psychiatrist.flags.changeclothes>>
<<set $npc_psychiatrist.flags.changeclothes = true>>
<<set $scene.first_changeclothes = true>>
<</if>>
<<initRoom>>
<<moveTo 'event_psychiatrist_1stsession_1'>>
<<else>>
<<initRoom>>
<<moveTo 'event_psychiatrist_1stsession'>>
<</if>><<if $player.sec_style.clothing.unisex != "" && !$player.locations.sexstore && $npc_psychiatrist.sessions > 0 && ($player.sec_style.submission.chastity != "enthusiast" || $npc_manager.stage >= 2)>>
<<addEvent 'sexstoreOpeningEvent'>>
<</if>>/*#
#desc: wait for first psychiatrist session, see npc_boss, called for your session
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -5>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 7)>>
<<if !$player.sec_style.submission.chastity && $npc_manager.stage == 1>>
<<set _nextDate = setup.setNextDate($now, 12, 12, 0)>>
<<addWorkEvent 'force_strict_masturbation' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Lobby of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_anteroom.png" setup.charImage("npc_boss","npc_boss_front")>>
<div id="invframe" class="scrolltext">
You wait a while in the lobby for your appointment. Since you have nothing else to do and can't find a magazine that sparks your interest, you drift off to sleep. After a while, you don't know how long you've dozed off, you awaken, since your head started to slide off the chair. It seems like the receptionist of <<=setup.getNpcName('npc_psychiatrist', 'formal')>> has left the office in the meantime, perhaps to get some office supplies, you suppose. Looking at the wall-mounted clock you realise that your appointment was supposed to start several minutes ago. You're about to get up to find out what's going on when a tall, <<if $npc_boss.fem>>beautiful woman<<else>>handsome gentleman<</if>> opens the door leading to the office. Maybe in <<his npc_boss>> late 40's or early 50's, <<he npc_boss>> is dressed in a perfect fitting pinstripe suit looking quite professional. <<His npc_boss>> cold blue eyes scan the room like a predator, resting on you for a fraction of a second before <<he npc_boss>> starts moving towards you with long, confident strides. You rise to shake <<his npc_boss>> hand, assuming it is <<=setup.getNpcName('npc_psychiatrist', 'formal')>> welcoming you in since the receptionist is missing. Instead <<he npc_boss>> brushes past you without bothering to even make eye contact, walking straight out the door and leaving the building. For a brief moment before <<he npc_boss>> opened the glass door to the outside you could swear you saw <<his npc_boss>> reflection smiling.<br>
<br>
As you stand there in the room with your still outstretched arm, looking like you've ordered and not picked up, you hear a feminine voice from the still open door leading into the office.<br>
<br>
<<if $player.sec_style.body.name == "enthusiast">>
"@@.npc_psychiatrist;Miss <<=$player.last_name>>? Miss <<=$player.first_name>> <<=$player.last_name>>? Could you please come into my office? Thank you!@@"
<<else>>
"@@.npc_psychiatrist;Mister <<=$player.last_name>>? Mister <<=$player.first_name>> <<=$player.last_name>>? Could you please come into my office? Thank you!@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_1stsession_1" "Enter the Office." 120>>]
</div><<if !$scene.startPsych>>
<<set $scene.startPsych = true>>
<<set $npc_psychiatrist.sessions += 1>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_therapy_1'
0
'theme_manager_therapy_1'
true
>>
<<set $npc_psychiatrist.free_sessions -= 1>>
<<set $scene.sessionStartTime = $now.getUTCHours()>>
<<set $scene.startstress = $player.timebased.stress>>
<<useClothSetPush 'psyc_initial'>>
<</if>>
<<storeVisual $player $npc_psychiatrist>>
<<computeOutfitThemes $player $npc_psychiatrist>>
<<computeGenitalThemes $player $npc_psychiatrist 'themes'>>/*#
#desc: meet psychiatrist for first time, offered chocolates
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Starting to strip while being at a psychiatrist does not seem to be the best of my many strange ideas lately...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "startPsychSession">>
<<include "addSexStoreOpeningEvent">>
<<set $npc_psychiatrist.profile = true>>
<<if setup.isItemEquipped("thigh_highs_pink") && setup.isItemEquipped("satin_corset_pink") && setup.isItemEquipped("hoop_earrings_gold") && !$npc_psychiatrist.flags.react_full_uniform_upgrade>>
<<set $npc_psychiatrist.flags.react_full_uniform_upgrade = true>>
<<set $scene.react_full_uniform = true>>
<</if>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_psych_1'
5
'event_manager_theme_psychiatrist_1'
false
>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_1'
1
'event_admin_theme_therapy'
false
>>
<<if $npc_psychiatrist.sessions == 1 && setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $npc_psychiatrist.flags.speedrun = true>>
<<set $npc_psychiatrist.flags.reactnamechange = true>>
<<set $npc_psychiatrist.flags.knowgender = "female">>
<</if>>
<</if>>
<<set $scene.chocolate = "none">>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.sessions == 1>>
You enter the office and close the door behind you. It is quite spacious, but not as vast as <<=ps(setup.getNpcName('npc_manager', 'formal'))>>. You see a large, heavy looking desk made of dark wood. You're no specialist when it comes to wood, but it sure looks expensive. The leather chair behind the table is empty. But on your left side you see a comfortable looking corner with a couch and a pair of heavy overstuffed leather chairs with a small table between them. The chairs are faced toward each other and one of the chairs is faced that it could be sideways to the couch. Sitting in one of the chairs is a young woman wearing attire better suited for a ball or another high society event than the office of a doctor of psychiatry. She is showing
<<if setup.getTotalValue('bimbofication')<4>>
quite a lot of cleavage by your standards.
<<else>>
a lot of cleavage.
<</if>>
<br><br>
She points her hand at the other chair.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "male">>
"@@.npc_psychiatrist;Have a seat, Mr. <<=$player.last_name>>. I am <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>, but please, call me <<=setup.getNpcName("npc_psychiatrist", "first")>>. Let me start by saying that I am delighted to make your acquaintance.@@"
<<case "unisex">>
"@@.npc_psychiatrist;Have a seat... errr... mister. Mister. Excuse me, if I may be somewhat blunt about this matter, but do you prefer the pronoun Mister, Misses or something different?@@"<br>
<br>
You are puzzled for a moment, but then again, your clothes don't really give much indication about your preferred gender at the moment. You explain to her that Mister is okay for the time being.<br>
"@@.npc_psychiatrist;Very well Mr. <<=$player.last_name>>. I am <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>, but please, call me <<=setup.getNpcName("npc_psychiatrist", "first")>>. Let me start by saying that I am delighted to make your acquaintance.@@"
<<case "female">>
<<if $player.sec_style.body.name == "enthusiast">>
"@@.npc_psychiatrist;Have a seat Miss, and congratulations on that — ink's barely dry, as it were, on this update to your documentation.@@"
<<else>>
"@@.npc_psychiatrist;Have a seat Mister... oh. I am terribly sorry, but according to my documents I was expecting a male.@@"<br>
<br>
She puts her non existent glasses back into place, focusing her sight onto a computer monitor on the side of her table.<br>
<br>
<<if $player.sec_style.body.name != "">>
"@@.npc_psychiatrist;Oh, look, there's an addendum, it seems things were changed recently... your name, that is, the rest, well... we can discuss that later, if you wish...@@"
<<else>>
"@@.npc_psychiatrist;Of course name and gender says nothing about a preferred clothing style.@@"
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Anyway, you should feel safe here, you can be whatever, or whoever you want while you're inside these walls. I am <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>, but please, call me <<=setup.getNpcName("npc_psychiatrist", "first")>>. Let me start by saying that I am delighted to make your acquaintance.@@"
<</switch>>
<br><br>
<<printThought "THIS is <<=setup.getNpcName('npc_psychiatrist', 'formal')>>?">><br>
<br>
She reaches a hand across the table for you to shake. You hesitate for a second, sorting your thoughts and give her a firm handshake.<br>
<br>
"@@.npc_psychiatrist;What I've gathered from your hesitation and your reaction from earlier, I assume you've expected something different, am I right? Is it my gender? Perhaps the way I dress?@@"<br>
<br>
You shake your head and explain, you're simply surprised by how young looking she is. If you had to guess, you would put her somewhere between 24 and 26 years old.<br>
<br>
"@@.npc_psychiatrist;Well, <<=$player.first_name>>... can I call you by your first name? I think the informality helps build a certain trust between a psychiatrist and their client.@@"<br>
<br>
You nod and tell her it's okay to call you by your first name.<br>
<br>
"@@.npc_psychiatrist;Well, <<=$player.first_name>>, I can reassure you, I have plenty of years of experience providing counseling to people in your position. How about this. I tell you a little bit about myself and then you tell me a little bit about yourself. Nothing too personal. Just a little bit of small talk to ease the tension.@@" <<=setup.getNpcName('npc_psychiatrist', 'first')>> says while extending a box filled with white, pink and brown chocolate morsels towards you. "@@.npc_psychiatrist;Here, take one.@@"<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a white one." 120 '<<set $scene.chocolate = "white">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a pink one." 120 '<<set $scene.chocolate = "pink">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a brown one." 120 '<<set $scene.chocolate = "brown">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2_repeat" "Refuse to take one." 120>>]
<<elseif $npc_psychiatrist.free_sessions <= 0 && $npc_manager.stage < 5 && !State.hasPlayed("event_psych_react_no_payment_1") || $npc_psychiatrist.flags.cruel>>
You wait in the lobby until your appointment and are directed into the office. Sitting behind her desk <<=setup.getNpcName('npc_psychiatrist', 'formal')>> greets you with a smile, but then her tone turns more serious.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
"@@.npc_psychiatrist;You remain a difficult patient, and so I am forced to put in additional effort to provide you sessions. Due to this, I can not offer you "free" therapy sessions. I believe that therapy is absolutely necessary to your continued mental health... <<if State.hasPlayed("theme_psychiatrist_cruel_toggle_3_nice")>>do not look at me like that, you agreed that you needed to be treated with a firm hand, and, that means no leniency! You <<else>>but so long as you prove difficult well... I have bills of my own so you<</if>> will be paying me the standard rate of <<=$npc_psychiatrist.flags.sessionPrice>> credits. This investment should, I believe, help you value our time together more highly.@@"
<<else>>
"@@.npc_psychiatrist;I regret to inform you that you have run out of your "free" therapy sessions. I believe that you would very much benefit from continuing these sessions, but I have bills of my own so you will be paying the standard rate of <<=$npc_psychiatrist.flags.sessionPrice>> credits.@@"
<</if>>
<br><br>
<<if !State.hasPlayed("event_psych_react_no_payment_1") || $npc_psychiatrist.flags.cruel>>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_pay_session" "Pay for a session." 120 '<<set $scene.pay = true>>'>>]<br>
<<else>>
[@@.link_locked;You do not have enough money to pay for a session.@@]<br>
<</if>>
<<elseif !$npc_psychiatrist.flags.cruel>>
[<<moveTo "event_psychiatrist_pay_session" "Proceed to your session." 120 '<<set $scene.pay = true>>'>>]<br>
<</if>>
<<if State.hasPlayed("theme_manager_therapy_2") && !State.hasPlayed("event_psych_react_no_payment_1")>>
[<<moveTo "event_psych_react_no_payment_1" "Update her on the change to your insurance." 120>>]<br>
<</if>>
<<if $npc_psychiatrist.flags.cruel>>
[<<moveTo "event_psychiatrist_forced_pay_intro_1" "You are not going to pay for something she is forcing on you!" 120>>]<br>
<<else>>
[<<moveTo "event_psychiatrist_pay_session" "Do not pay for a session." 120 '<<set $scene.pay = false>>'>>]<br>
<</if>>
<<else>>
You wait in the lobby until the receptionist calls your name and directs you to enter the office. On the inside waits <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, smiling at you. As you get closer to the desk, she reaches her hand across to shake yours.
<<if $npc_psychiatrist.hypnosis>1>>
Her demeanour appears quite different, compared to the experimental VR sessions, for some reason.
<</if>>
<<if $scene.react_full_uniform>>
From the moment she lays eyes on you <<=setup.getNpcName('npc_psychiatrist', 'first')>> looks at you with a lusty smile. <<if $npc_psychiatrist.flags.blowjob > 0 || $npc_psychiatrist.flags.handjob > 0 || $npc_psychiatrist.flags.analsex > 0>>Since she is sitting out in the open rather than behind her desk, there no mistaking the aroused bulge between her legs.<<else>>She is standing off-angle from you, though you cannot put your finger on why.<</if>>
<br><br>
"@@.npc_psychiatrist;Wow, you mentioned the different options for "enhancing" your uniform, but I never thought they would come together this well. There is no denying that you are becoming quite the head-turning, scratch that, whiplash-inducing, secretary. Congratulations!@@"<br>
<br>
"@@.npc_psychiatrist;Now, then, would you kindly take a chocolate?@@"
<<else>>
"@@.npc_psychiatrist;Have a seat <<=$player.call>> <<=$player.last_name>>. I am delighted to see you again. Please,@@" she says while handing you a box of chocolates. "@@.npc_psychiatrist;Would you kindly take one. You know I won't take no for an answer.@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a white one." 120 '<<set $scene.chocolate = "white">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a pink one." 120 '<<set $scene.chocolate = "pink">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a brown one." 120 '<<set $scene.chocolate = "brown">>'>>]<br>
<</if>>
</div>/*#
#desc: eat chocolate at start of session, psychiatrist comments on clothing, start session proper
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.chocolate[$scene.chocolate] += 1>>
<<set $scene.maxTag = setup.getTagFromList(['bold','sissy','modest','cute','male','slutty','fetish','formal','office','casual'])>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.sessions == 1>>
You take a <<=$scene.chocolate>> chocolate from the box and put it into your mouth. It tastes like
<<switch $scene.chocolate>>
<<case 'white'>>white chocolate filled with cheesecake flavour.
<<case 'pink'>>white chocolate filled with strawberry flavour.
<<case 'brown'>>chocolate filled with nougat cream and hazelnut.
<</switch>>
It's really tasty.<br>
<br>
<<printThought "Hmm... yummy!">><br>
<br>
"@@.npc_psychiatrist;See, it's that kind of expression I've wanted to see. Chocolate makes everything better.@@"<br>
<br>
You ask her, what's with the chocolate and if it's a part of the evaluation.<br>
<br>
"@@.npc_psychiatrist;Well, no. The white one is filled with a truth serum, the pink one with a giant dose of estrogen and the brown one with a dose of testosterone.@@"<br>
<br>
<<printThought "WHAT?!">><br>
<br>
"@@.npc_psychiatrist;Relax, I'm just joking. No, it's simply that chocolate produces happiness hormones. It gives you a happy high, so to speak. That's all. Plus I like chocolate a lot. Like really a lot.@@" she says to you while grinning from one ear to the other.<br>
<br>
With the ice broken, you're surprised at how easily you start talking about some things you're both interested in, like gaming. You are more on the retro side of the spectrum, like classic games from the early two-thousands, she is more into modern Virtual Reality Games, especially with the new system from Songa and Nintendolls. You shudder for a short moment, as this word meets your ears. After a short talk between the two of you, she hands you a datapad with a multiple choice test.<br>
<br>
"@@.npc_psychiatrist;I think you're ready now, <<=$player.first_name>>. This is your mandatory corporate evaluation. Whatever you answer here will only be between the two of us. It is a set of standardised questions regarding your loyalty towards Social Interaction Service Syndicate Inc. My job is to rate your reactions while you answer our questions. I'm kind of a human lie detector, and I am very confident in my skills.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_1' 'Start the assessment.' 180>>]
<<else>>
You take a <<=$scene.chocolate>> chocolate from the box and put it into your mouth. It tastes like
<<switch $scene.chocolate>>
<<case 'white'>>
white chocolate filled with
<<if setup.getTotalValue('cum')>5>>
<<getWordCum>>. You lick your lips with delight
<<else>>
cheesecake flavour.
<</if>>
<<case 'pink'>>
white chocolate filled with
<<if (setup.getTotalValue('feminization')>=8) && (setup.getTotalValue('submission')>=8)>>
dreams of being the perfect <<if $fetish.sissy>>sissy <</if>>slave. You moan softly while savouring the flavour.
<<else>>
strawberry flavour.
<</if>>
<<case 'brown'>>
chocolate filled with
<<if (setup.getTotalValue('penis')>5)>>
the heady flavour of a big <<getWordPenis>>. You lick your lips with delight.
<<else>>
nougat cream and hazelnut.
<</if>>
<</switch>>
You really like these.<br>
<br>
<<printThought "Hmm... yummy!">><br>
<br>
"@@.npc_psychiatrist;I can see that you like these. I do too, that's good, very good.@@" She looks at her notes for a moment and writes something down "@@.npc_psychiatrist;Very interesting. You have eaten <<=setup.numberInWords($npc_psychiatrist.flags.chocolate[$scene.chocolate])>> of that flavour to date... very interesting indeed.@@"<br>
<br>
<<if $npc_psychiatrist.flags.changeclothes>>
<<if $scene.first_changeclothes>>
<<if $npc_psychiatrist.hypnosis>=1>>
"@@.npc_psychiatrist;<<=$player.first_name>>, your fondness of wearing... interesting clothes has not gone unnoticed during our sessions. So, I thought of something that might make it easier for you to open up to me. If you'd like to, you can use the changing room leading to my laboratory to change into something you'd feel more comfortable in. What do you say? And <<=$player.first_name>>, I really mean it, when I say wear whatever you like. Even if you want to feel jubilant in your birthday suit that's fine with me. But remember, this is all for therapeutic purposes.@@"
<<else>>
"@@.npc_psychiatrist;So, <<=$player.first_name>>, I believe an important part of therapy is feeling comfortable to explore. Towards that end I have a small changing room that you may avail yourself of if you would like to... experiment. And when I say experiment remember that this is a safe place, if you want to feel jubilant in your birthday suit that's fine with me. Just remember, this is all for therapeutic purposes.@@"
<</if>>
<<else>>
"@@.npc_psychiatrist;<<=$player.first_name>>, if you like, you can change your clothes back in the changing room again.@@"
<</if>>
<br><br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Take her up on the offer and go to the changing room.' 180 "<<useClothSetPush 'psyc_outfit'>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Thank her for the offer, but decline.' 180 "<<include 'startPsychSession'>>">>]
<<else>>
"@@.npc_psychiatrist;Well, let's get started, shall we?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Continue.' 180 "<<include 'startPsychSession'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: given quiz for first session, zoom through the "SFW" portion
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You look at the datapad, the first page of questions are pretty straightforward, presenting situations that would involve how you would handle a breach of information or if you would publicly share information that could compromise the company. You answer truthfully that you would only give this information to someone else if there was imminent danger to someone or something. Everything else should be handled internally.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_2' 'Move to the next section.' 660>>]
</div>/*#
#desc: psyichiatrist quiz starts getting strange + malfunctioning, instructed to continue
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Moving on to the second part of the assessment, the questions take a sudden turn for the strange. Even weirder, you find that many of the answer options don't work. While the prompt indicates you should answer each question with a score 1-10, with higher numbers corresponding to greater agreement with the passage in question, the machine only seems to accept limited responses, defaulting to 10 in nearly all cases and only sometimes allowing the selection of 1 as an alternative.<br>
<br>
You raise a concern to <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, but she seems unbothered.<br>
<br>
"@@.npc_psychiatrist;I apologise for the faulty equipment, I guess you would know all about software bugs, right? Regardless, you must complete this assessment as part of your onboarding. Go ahead and just round things to whatever closest matches your feelings, and do your best to answer as honestly as you can, alright?@@"<br>
<br>
Glancing over some of the questions you gulp.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_3' 'Continue the assessment as instructed.' 660>>]<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_3_simple' "This is too much reading, isn't there an override?" 660>>]<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_3_skip' 'Screw it, just answer yes to everything.' 660>>] <<hint $options "Will force-enable all content.">>
</div>/*#
#desc: psychiatrist assessment questions (questions generated via javascript)
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<printAssessmentQuestions>><br>
<br>
<<printThought "What the... I really hope that this is just a test how I react under strange circumstances...">><br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_4' 'Finish the assessment.' 660>>]
</div>/*#
#desc: psychiatrist assessment questions (questions generated via javascript)
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You fiddle with the tablet a bit and suddenly you're facing a far simplified version of the questionnaire, though it seems glitchy and several options are not changeable.<br>
<br>
<<printThought "Huh, I wonder if this is a sign of my future? Nah, probably just another computer error.">><br>
<br>
<<printAssessmentSummary>><br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_4' 'Finish the assessment.' 660>>]
</div>/*#
#desc: skip assessment (auto's everything to yes)
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<activateAllFetishes>>
<<checkFetishFlags>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You blitz through the rest of the questionnaire without really reading it, agreeing to everything like it was a EULA.<br>
<br>
<<printThought "I'm sure this won't lead to any weird surprises...">><br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_4' 'Finish the assessment.' 660>>]
</div>/*#
#desc: finish psychiatrist quiz
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $fetish.rape==true>>
You hand the datapad back to <<=setup.getNpcName('npc_psychiatrist', 'first')>> only for her smiling face to melt into a deep frown.<br>
<br>
"@@.npc_psychiatrist;Oh... oh no. I do not know how you made it this far in life harboring such... urges, but I have a legal duty to report you, for yourself as well as the greater community. If it helps any, the rest of your responses say I would have really enjoyed working with you, but... alas...@@"<br>
<br>
[<<moveTo 'gameover_pro_rape' 'Uh-oh.'>>]
<<else>>
After you're done, you hand the datapad back to <<=setup.getNpcName('npc_psychiatrist', 'first')>>. You once again raise your concerns about the odd second half and your inability to answer properly, but she poo-poohs your concerns, though she seems to be pleased as she smiles back at you.<br>
<br>
"@@.npc_psychiatrist;Don't worry about that second part, it's more to see how you behave under pressure. I can tell this much already: You will get my recommendation. In this day and age, loyalty to a company is important, but you should never forget ethics. Well, the mandatory evaluation portion is done. I'm not sure how much your employer <<=setup.getNpcName('npc_manager', 'other')>> told you, but you are allowed the remainder of our time as a regular psychiatrist visit. So, if there is anything else bothering you, or anything you want to tell me whatsoever, there is still plenty of time left in our hour.@@"<br>
<br>
Suddenly her phone rings, from her words it sounds like she's talking to her receptionist.<br>
<br>
"@@.npc_psychiatrist;So sorry, but I just need to take care of something, won't be but a minute. You stay right there.@@"<br>
<br>
She zips past you without another word. Looking across the desk it appears the questionnaire is in "admin" mode, you could review, or even tweak your replies if you wanted to.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_5' 'Check the results.' 660>>]<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_6' 'Just wait for her to get back.' 660>>]
<</if>>
</div>/*#
#desc: review psychiatrist quiz
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png">>
<div id="invframe" class="scrolltext">
Sliding the tablet across the table you look at the "summary" page.<br>
<br>
<<printAssessmentSummary>><br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_quiz_6' 'Finish making tweaks and put the tablet back.' 660>>]
</div>/*#
#desc: wait for psychiatrist to return
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wait patiently for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to return. Fortunately it is not a long wait, and she soon re-enters the room, gathering the datapad and taking a seat at her desk.<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female" && $player.sec_style.clothing.female != "" && $player.sec_style.body.name == "">>
As you consider what to bring up for discussion <<=setup.getNpcName("npc_psychiatrist","formal")>> seems puzzled, looking from you to her notes, then back, before finally breaking the silence.<br>
<br>
"@@.npc_psychiatrist;Sorry if this is a bit rude but... looking at you, and the name on your records, well... there appears to be something of a discontinuity. Tell me — given that you appear to be embracing a lovely, feminine existence... would you like to change your name to something more appropriate to such?@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_psychiatrist_name_1" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Tell her your new name">><<openDialog "Your feminine name:" "dialog_selectNamePsych">><</link>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' "You're happy with your name and would like to just start the session." 660 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]<br>
[<<moveTo "event_psychiatrist_first_cruel_1" "You aren't going to stay to have your head shrunk!" 300 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]
<<else>>
"@@.npc_psychiatrist;As I was saying before, your results are all fine, so what else would you like to talk about today?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Choose your topic.' 660 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]<br>
[<<moveTo "event_psychiatrist_first_cruel_1" "You aren't going to stay to have your head shrunk!" 300 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]
<</if>>
</div>/*#
#desc: enter psychiatrist changing room
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "I already changed my clothes. I'm going to stick with these for the time being.">>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" >>
<div id="invframe" class="scrolltext">
You enter the rather spacious changing room. There's a big, well lit double mirror with washbasins in the room as well.
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
You could use these to change your makeup.
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
<<if $scene.doneMakeup>>
[@@.link_locked;You've already checked your makeup.@@]<br>
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Changing room">><<set $scene.forceMakeupReturn=true>><<set $scene.return_makeuproom="event_psychiatrist_1stsession_2_changingroom">><<set $scene.makeuproom_image="./images/scenes/makeup_01.png">><<set $scene.return_makeuproomtext="Return to the Changing room.">><<set $scene.doneMakeup=true>>'>>]<br>
<</if>>
<</if>>
[<<moveTo "event_psychiatrist_1stsession_2_return" "Step forth and commence the session." 1 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: psychiatrist changing room/change clothes before psychiatrist session
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.rand = random(1,10)>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
You enter the rather spacious changing room. There's a big, well lit double mirror with washbasins in the room as well.
<<if setup.getTotalValue('makeup')>0>>
You could use these to change your makeup.
<</if>>
<br><br>
<<set _canLeave = setup.checkOutsideDecency()>>
<<include "thoughts_current">>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "" || setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Changing room">><<set $scene.return_makeuproom="event_psychiatrist_1stsession_changingroom_leave">><<set $scene.makeuproom_image="./images/scenes/makeup_01.png">><<set $scene.return_makeuproomtext="Return to the Changing room.">>'>>]<br>
<</if>>
<<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis && $player.timebased.horny >= 50>>
<<if $player.body_ref.penis>>
[<<moveTo 'event_psychiatrist_masturbate_1' 'Jerk off.' 300>>]<br>
<<else>>
[<<moveTo 'event_psychiatrist_masturbate_1' 'Masturbate.' 300>>]<br>
<</if>>
<</if>>
<<if _canLeave>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_3')>>
<<if _themeId != -1 && $npc_psychiatrist.themes.transition[_themeId].done && !$player.sec_style.sex.camgirl && (!State.hasPlayed("event_camgirl_intro_obedient_1") || $currentTasks.hasOwnProperty("task_camgirl_strict")) && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo"))>>
<<set $player.cutscene.lockinventory = true>>
<<moveTo "event_camgirl_intro_obedient_1">>
<<elseif $npc_psychiatrist.anger == 0 && $npc_psychiatrist.affection >= 10 && $npc_manager.stage >= 4 && !$npc_psychiatrist.flags.dinner.ate>>
<<set $player.cutscene.lockinventory = true>>
<<moveTo "event_psych_dinner_invite_1">>
<<elseif $npc_psychiatrist.flags.dinner.ate>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 11000)>>
[<<moveTo 'event_psych_dinner_invite_1_repeat' 'Ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner.' 180 "<<set $player.cutscene.lockinventory=true>>" >>]<br>
<<else>>
[@@.link_locked;You should keep a clear schedule if you want to invite <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner again.@@]<br>
<</if>>
<</if>>
<<if $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<elseif $player.sec_style.submission.contract == "strict" && $fetish.drugs && !State.hasPlayed("event_contract_strict_1")>>
[<<moveTo "event_contract_strict_1" "Thank her and leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $npc_technician.relationship.kinks.whore && setup.hasFreeTime($now, $player, $currentTasks, 11000) && $npc_technician.relationship.kink_indulge.whore < 2 && $npc_technician.relationship.done_you>>
[<<moveTo "event_technician_whoring_glory_invite_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo "room_citymap" "Leave the office." 180 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory=false>>">>]
<</if>>
<<else>>
<<if $player.sec_style.clothing.makeup == "" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should take this off.@@]<br>
<<else>>
<<if $player.sec_style.clothing.makeup == "" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup">>
[@@.link_locked;I don't think I'm ready to go out wearing makeup, I should wash this off first.@@]<br>
<<else>>
[@@.link_locked;I really need to dress more appropriate to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange && $clothSetsInt.hasOwnProperty('psyc_initial') && !$clothSetsInt.psyc_initial.data.includes("straightjacket_medical")>>
<<if $npc_psychiatrist.anger == 0 && $npc_psychiatrist.affection >= 10 && $npc_manager.stage >= 4>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_3')>>
<<if _themeId != -1 && $npc_psychiatrist.themes.transition[_themeId].done && !$player.sec_style.sex.camgirl && !(State.hasPlayed("event_camgirl_intro_obedient_1") || $currentTasks.hasOwnProperty("task_camgirl_strict")) && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo"))>>
[<<moveTo 'event_camgirl_intro_obedient_1' 'Get dressed and leave.' 180 "<<set $player.cutscene.lockinventory = true>><<useClothSetPop 'psyc_initial'>>" >>]<br>
<<elseif $npc_psychiatrist.flags.dinner.ate>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo 'event_psych_dinner_invite_1_repeat' 'Get dressed and ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner.' 180 "<<set $player.cutscene.lockinventory = true>><<useClothSetPop 'psyc_initial'>>" >>]<br>
<<else>>
[@@.link_locked;You should keep a clear schedule if you want to invite <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner again.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_psych_dinner_invite_1" "Put on the outfit you arrived in." 60 "<<set $player.cutscene.lockinventory = true>><<useClothSetPop 'psyc_initial'>>">>]<br>
<</if>>
<<elseif $player.sec_style.submission.contract == "strict" && $fetish.drugs && !State.hasPlayed("event_contract_strict_1")>>
[<<moveTo "event_contract_strict_1" "Put on the outfit you arrived in." 60 "<<set $player.cutscene.lockinventory = false>><<useClothSetPop 'psyc_initial'>>">>]
<<else>>
[<<moveTo "room_citymap" "Put on the outfit you arrived in." 60 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory = true>><<useClothSetPop 'psyc_initial'>>">>]
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: enter psychiatrist office from changing room
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.cruel && $player.sec_style.clothing.female && $player.locations.hotties_game && setup.computeWorstGender() == "male" && $scene.arriveClothingGender != "male" && !State.hasPlayed("event_secretary_style_camgirl_strict_intro_1") && !$player.sec_style.sex.camgirl>>
<<initRoom>>
<<moveTo "event_secretary_style_camgirl_strict_intro_1">>
<<else>>
<<if setup.checkNaked()>>
<<set $scene.maxTag = "naked">>
<<elseif setup.checkPlayerDressed()>>
<<if setup.checkVisibleClothingTag("maid") > 60>>
<<set $scene.maxTag = "maid">>
<<elseif setup.checkVisibleClothingTag("schoolgirl") > 60>>
<<set $scene.maxTag = "schoolgirl">>
<<else>>
<<set $scene.maxTag = setup.getTagFromList(['bold','sissy','modest','cute','male','slutty','fetish','formal','office','casual'])>>
<</if>>
<<else>>
<<set $scene.maxTag = "partial_nudity">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You return to the office. As you leave the changing room, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> takes a good, long look at your outfit.
<<if setup.checkNaked()>>
Or rather, the lack thereof.
<<elseif $scene.maxTag == "partial_nudity">>
If one could even call your scant attire an "outfit."
<</if>>
<br><br>
<<if setup.checkNaked()>>
"@@.npc_psychiatrist;Very nice, fully exposed... if you are as ready to reveal your thoughts and feelings as you are your body, well... this will be a productive session indeed!@@"
<<elseif $scene.maxTag == "partial_nudity">>
"@@.npc_psychiatrist;Hmm, partially exposed... interesting, but also a touch confusing. To be fully exposed, or to embrace a cohesive style... those are powerful decisions. This? Well, it feels like a half measure, to be honest...@@"
<<elseif setup.checkItemTypeWorn("bodysuit") && setup.checkItemVisible(setup.getItemFromType("bodysuit"))>>
"@@.npc_psychiatrist;A bodysuit? <<if setup.checkItemTypeTag("bodysuit", ["latex"])>>And latex, if I am not mistaken? Very shiny<<else>>Very nice<</if>>. It is so interesting how one can be nearly covered... and yet, in some ways, laid bare. Let us hope for similar in today's session, hmm?@@"
<<elseif setup.checkItemTypeWorn("panties") && setup.checkItemVisible(setup.getItemFromType("panties"))>>
"@@.npc_psychiatrist;Flashing your panties? Very flirty... if you are as ready to reveal your normally hidden thoughts and feelings, well... this will be a productive session indeed!@@"
<<else>>
<<switch $scene.maxTag>>
<<case 'bold'>>
"@@.npc_psychiatrist;Very good. You're a more bold, sexually aggressive appearance. Don't worry, that is perfectly normal for some people. I mean, think about your manager and how she leverages her appearance as a facet of her power.@@"
<<case 'fetish'>>
"@@.npc_psychiatrist;Oh my now THAT is quite the outfit! Very fetishistic and attractive. If only more people felt comfortable enough to embrace such lovely feeling, and looking, attire.@@"
<<case 'slutty'>>
"@@.npc_psychiatrist;Very good. You're embracing your inner scantily clad slut. Don't worry, that is perfectly normal for some people. I show my cleavage for a reason as well, so trust me when I say being sexy can be very fulfilling, if you know how to display yourself and leverage the results.@@"
<<case 'sissy'>>
"@@.npc_psychiatrist;Ah. Yes, I had a feeling that you dressed up like this. There is something very feminine and submissive about you, and as I can see, you no longer denying that lovely truth. Very good. Embrace your <<if $fetish.sissy>>sissy<<else>>feminine<</if>> side, and it will lead you to a path of fulfillment... mostly of others, but maybe that's exactly what you want.@@"
<<case 'formal'>>
"@@.npc_psychiatrist;Oh my, you are looking very sharp today. Beautiful, in fact... big plans for the evening?@@" She winks at you.
<<case 'modest'>>
"@@.npc_psychiatrist;Oh. I was hoping for something more exciting, this just looks conservative, it hardly says anything about the inner you. Well, you can't win them all, can you?@@"
<<case 'cute'>>
"@@.npc_psychiatrist;Oh. I was hoping for something more exciting, but that does look very cute on you.@@"
<<case 'male'>>
<<if $player.sec_style.clothing.unisex>>
"@@.npc_psychiatrist;Hmm... you seem to be trying to force yourself to dress masculine... such tension is not healthy, remember in my presence you can embrace experimentation, you do not need to ascribe to some antiquated ideal.@@"
<<else>>
"@@.npc_psychiatrist;Ah, yes. You got cold feet at the last moment. That is indeed a pity, but understandable.@@"
<</if>>
<<case 'office'>>
"@@.npc_psychiatrist;Hmm... office attire, is that because you are embracing your new duties... or that you have become so accustomed to corporate life you can think of wearing little else?@@"
<<case 'maid'>>
"@@.npc_psychiatrist;Hmm... maid attire? Looking to do some cleaning, perhaps, perhaps focus on some good mental hygiene?@@"
<<case 'schoolgirl'>>
"@@.npc_psychiatrist;Hmm... schoolgirl attire, is that because you are looking to learn? A wonderful attitude to have.@@"
<<case 'casual'>>
"@@.npc_psychiatrist;Casual attire, very good. I want you to feel casual and relaxed during our sessions and feel comfortable opening yourself to my therapy.@@"
<<default>>
<<if setup.getIndecentValue()>95>>
"@@.npc_psychiatrist;Oh. Well, did anyone ever tell you, that you have hips to die for? I'd even say with hips like these you never stood a chance at all.@@"
<<else>>
"@@.npc_psychiatrist;Ah, yes. Or rather no. I am not getting any useful information from this. Unless your intention was to confuse me? Not as therapeutically useful, but, well done I suppose.@@"
<</if>>
<</switch>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Now, please take a seat and we will start with your counseling session.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Sit down.' 180 "<<include 'startPsychSession'>>">>]
</div>/*#
#desc: refuse chocolate at start of first psychiatrist session
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
For a split second, she looks at you like you just kicked a puppy, but regains her composure pretty quickly.<br>
<br>
"@@.npc_psychiatrist;Humor me. See it as part of your evaluation if you must. It's not like the end of Mass Effect 3 or something...@@"<br>
<br>
<<printThought "What?">><br>
<br>
You look kind of puzzled. You got the reference, since retro gaming is one of your hobbies, but how did she know you would? Or is this already a part of the evaluation? You really don't know, but decide to play her game.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a white one." 120 '<<set $scene.chocolate = "white">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a pink one." 120 '<<set $scene.chocolate = "pink">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a brown one." 120 '<<set $scene.chocolate = "brown">>'>>]
</div>/*#
#desc: list discussion topics (themes) for first psychiatrist session
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.camgirlStrict>>
<<initRoom>>
<<moveTo 'event_secretary_style_camgirl_strict_1'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if setup.getNpcThemes('npc_psychiatrist')>0>>
<<if $scene.sessionStartTime >= $now.getUTCHours()>>
"@@.npc_psychiatrist;So, <<=$player.first_name>>, what are you willing to share with me today? Has anything happened to you lately you want to talk about? Maybe just to tell it to someone or to get a different perspective? We have the whole hour so whatever would help unburden your mind, I am here for you.@@"<br>
<br>
You take a second to sort your thoughts. Which of your recent events are you interested in sharing with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>?<br>
<br>
<<printNpcThemeCategory
'npc_psychiatrist'
'event_psychiatrist_1stsession_listofthemes'
'event_psychiatrist_theme_details'
>>
<<if $npc_psychiatrist.sessions > 3>>
<<set _endSession = setup.setNextDate($now, 0, $scene.sessionStartTime + 1, 0)>>
<<set _timeToEndSession = setup.secondsToDate($now,_endSession)>>
[<<moveTo "event_psychiatrist_killtime" "Chat about other things until the end of your session." _timeToEndSession "">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_1stsession_leavearly" "There is nothing else you want to talk about.">>]
<<elseif $scene.talkThemes < 12 && $npc_psychiatrist.sessions == 1>>
<<switch $scene.talkThemes>>
<<case 0>>
"@@.npc_psychiatrist;So, <<=$player.first_name>>, what are you willing to share with me today? Has anything happened to you lately you want to talk about? Maybe just to tell it to someone or to get a different perspective?@@"
<<case 1 2 3 4>>
"@@.npc_psychiatrist;Anything else you want to talk about <<=$player.first_name>>? You know, you can talk to me about anything. Anything at all!@@"
<<case 6 7 8>>
"@@.npc_psychiatrist;We still have some time left, <<=$player.first_name>>. Any last topic you want to unburden yourself of?@@"
<<default>>
"@@.npc_psychiatrist;Mmm, we are having such a productive session <<=$player.first_name>>! What else can I help you unpack?@@"
<</switch>>
<br><br>
<<printNpcThemeCategory
'npc_psychiatrist'
'event_psychiatrist_1stsession_listofthemes'
'event_psychiatrist_theme_details'
>>
[<<moveTo "event_psychiatrist_1stsession_leavearly" "There is nothing else you want to talk about.">>]
<<else>>
"@@.npc_psychiatrist;Well, it looks like our time for today is up. I hope I was able to shed some light on your issues.@@"<br>
<br>
<<if $scene.startstress > $player.timebased.stress>>
You feel less stressed, so the therapy session seems to have worked.
<<elseif $player.timebased.stress == 0>>
Though you were not stressed in the first place, the therapy session has given you some interesting analysis and things to think about.
<<else>>
Though you thank her for the session, on the inside your feelings are still in turmoil. The session does not appear to have eased any of your stress.
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_1stsession_1_leave" "Make yourself ready to leave." 60 "<<set $scene.leave_early=false>>">>]
<</if>>
<<else>>
There isn't a single thing you can think of to talk about. Kind of strange if you think about it, given all the strange events that have happened to you lately.
<<if $scene.startstress > $player.timebased.stress>>
But you feel less stressed, so the therapy sessions seem to work. You thank <<=setup.getNpcName('npc_psychiatrist', 'first')>> for her time and bid her farewell.
<<elseif $player.timebased.stress == 0>>
Though you were not stressed in the first place, the therapy session has given you some interesting analysis and things to think about.
<<else>>
Though you thank her for the session, on the inside your feelings are still in turmoil. The session does not appear to have eased any of your stress.
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_1stsession_1_leave" "Make yourself ready to leave." 60 "<<set $scene.leave_early=true>>">>]
<</if>>
</div>/*#
#desc: psychiatrist theme detail selection
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sessionStartTime < $now.getUTCHours() && $npc_psychiatrist.sessions != 1>>
<<initRoom>>
<<moveTo 'event_psychiatrist_1stsession_listofthemes'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;And what do you want to talk about, regarding this theme, <<=$player.first_name>>?@@"<br>
<br>
You think for a second about what, precisely, you want to discuss.<br>
<br>
<<printNpcThemeDetails
'npc_psychiatrist'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
</div>/*#
#desc: leave psychiatrist session early
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Are you sure that there is nothing else you want to talk about? We still have some time left, and you look like you have quite a collection of issues that lie heavy on your mind.@@"<br>
<br>
You think about this for a moment.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_listofthemes" "You decide to stay a little bit longer.">>]<br>
[<<moveTo "event_psychiatrist_1stsession_1_leave" "You thank her and leave anyway." 60 "<<set $scene.leave_early=true>>">>]
</div>/*#
#desc: kill time for rest of session
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes += 1>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You spend the remainder of the session chatting about various things. It is, perhaps, not as therapeutic as digging into more specific recent events, but <<=setup.getNpcName('npc_psychiatrist', 'formal')>> appears content to listen and offer the occasional suggestion or leading question as you talk your way through the rest of your session in what feels like no time, at all.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_1_leave" "Make yourself ready to leave." 60 "<<set $scene.leave_early=false>>">>]
</div>/*#
#desc: try to leave psychiatrist without discussing anything on forced therapy
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You start to rise and excuse yourself to leave only for <<=setup.getNpcName("npc_psychiatrist","formal")>> friendly mein to disappear. "@@.npc_psychiatrist;No, my dear... after all you have been through I really think we should take this opportunity to talk, at least a little. Sit down and tell me what is bothering you. Trust me, you can tell me anything at all...@@"<br>
<br>
You gulp nervously, it would appear that you are not getting out of here without talking about something and you think about what to bring up...<br>
<br>
<<printNpcThemeCategory
'npc_psychiatrist'
'event_psychiatrist_1stsession_listofthemes'
'event_psychiatrist_theme_details'
>>
</div>/*#
#desc: leave psychiatrist session, offered hypnosis study if first session
#status: FINISHED 0.4.0.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_psych_2'
5
'event_manager_theme_therapy_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'therapy' 'theme_psychiatrist_cruel_toggle'
0
'theme_psychiatrist_cruel_toggle_1'
true
>>
<<set $scene.unlockAphrodisiac = ($npc_psychiatrist.affection-$npc_psychiatrist.anger) > 7 && !$npc_work_doctor.flags.aphrodisiac.unlock && $npc_work_doctor.flags.aphrodisiac.analyzed && $npc_work_doctor.flags.lab >= 2 && $player.virgin.anal>>
<<if $scene.talkThemes == 0 && $fetish.hypnosis>>
<<initRoom>>
<<moveTo "event_psychiatrist_1stsession_1_forced">>
<<elseif !$scene.unlockAphrodisiac && $npc_psychiatrist.flags.bj_style>>
<<initRoom>>
<<moveTo "event_psychiatrist_post_bj_intro_1">>
<<else>>
<<include "addPsychiatristEndless">>
<<if !$scene.leave_early>>
<<gainWillpower 1>>
<</if>>
<<if $npc_psychiatrist.sessions == 1>>
<<addItem 'card_psychiatrist'>>
<</if>>
<<if $scene.unlockAphrodisiac>>
<<set $npc_work_doctor.flags.aphrodisiac.unlock = true>>
<</if>>
<</if>>
<<set $scene.rand = random(1,10)>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
The session concluded, <<if $npc_psychiatrist.flags.cruel>>your restraints release and <</if>>you rise to your feet. Spending all this time talking things over has buoyed your spirits.<br>
<br>
<<if $npc_psychiatrist.flags.cruel>>
"@@.npc_psychiatrist;There, I hope you are coming to appreciate the value of therapy. That flawed mind of yours was so in need of fixing, but we are making steady progress.@@"
<<elseif $npc_psychiatrist.free_sessions > 0>>
<<if $npc_psychiatrist.free_sessions == 1>>
"@@.npc_psychiatrist;You are down to only one free session — remember you can earn free sessions by helping me out with my experimental VR Therapy.@@"
<<else>>
"@@.npc_psychiatrist;Okay you still have <<=$npc_psychiatrist.free_sessions>> free sessions remaining.@@"
<</if>>
<<else>>
"@@.npc_psychiatrist;Oh, I am very sorry <<=$player.first_name>>. You have no more free sessions left. If you are still interested in your mental health, please come next week anyway, but I am afraid I will have to charge you for my time. Remember I am always looking for assistance with my experiments if you would like to have a session without the monetary expenditure.@@"
<</if>>
<br><br>
<<if $scene.unlockAphrodisiac>>
You are preparing to leave when <<=setup.getNpcName("npc_psychiatrist","formal")>> casually raises a comment.<br>
<br>
"@@.npc_psychiatrist;Oh, I was doing some more investigation of that wonderful candy you had me analyse... it would seem that it is actually a derivative of something meant to be even more potent. According to office gossip <<=setup.getNpcName("npc_work_doctor","formal")>> is testing a new universal aphrodisiac formula. It is something of <<his npc_work_doctor>> white whale — a single drug that can turn anyone into a raving sex-crazed slut... such a blunt effort to use drugs to achieve such an end but, well, I imagine <<he npc_work_doctor>> needs test subjects, if you were interested in "helping" <<him npc_work_doctor>> out.@@"<br>
<br>
The way she locks eyes with you and emphasises the word help subtly emphasises the animosity between herself and the obsessed corporate chemist.<br>
<br>
<<printThought "Hmm, if I could secretly sabotage the trials that would surely lower <<his npc_work_doctor>> standing in the company.">><br>
<br>
<<if $npc_psychiatrist.flags.bj_style>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;And now for a more pleasant part of our routine...@@"<br>
<br>
[<<moveTo "event_psychiatrist_post_bj_intro_1" "Continue." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]<br>
<<if setup.checkOutsideDecency()>>
<<if $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<elseif $player.sec_style.submission.contract == "strict" && $fetish.drugs && !State.hasPlayed("event_contract_strict_1")>>
[<<moveTo "event_contract_strict_1" "Thank her and leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "room_citymap" "Thank her and leave the office." 180 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
<</if>>
<<elseif $npc_psychiatrist.flags.cruel && $fetish.hypnosis && !$player.sec_style.submission.vr_therapy>>
You reach the end of the session and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> pauses, her finger over the button for your restraints.<br>
<br>
"@@.npc_psychiatrist;So... are you ready to behave, now, learned your lesson, perhaps?@@"<br>
<br>
[<<moveTo "event_psychiatrist_cruel_end_1" "Yes..." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_cruel_end_1" "Remain silent." 120 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_secretary_style_hypno_forced_1" "Fuck you, psycho bitch!" 120>>]
<<elseif $npc_psychiatrist.sessions != 1 || $player.sec_style.submission.vr_therapy>>
<<if (!$currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') || $currentTasks['psychiatrist_endless_hypnosis_1'].finished)>>
<<if (!$fetish.piss || setup.hasThreshold('piss', 'hypnosis_piss', "10")) && (!$fetish.cum ||setup.hasThreshold('cum', 'hypnosis_cum', "10")) && setup.hasThreshold('penis', 'hypnosis_penis', "10") && setup.hasThreshold('foot', 'hypnosis_foot', "10") && setup.hasThreshold('bondage', 'hypnosis_bondage', "10") && setup.hasThreshold('bdsm', 'hypnosis_bdsm', "10")>>
"@@.npc_psychiatrist;Well I will look forward to seeing you next Friday... you know it feels strange not have you come in for those experimental VR therapy study, I promise to let you know when I have more material available for you but, until then it would be merely re-experiencing what you have already so delightfully embraced.@@"
<<else>>
"@@.npc_psychiatrist;Oh, so I just wanted to let you know that I'm still running that experimental VR therapy study. I know you missed before, but, well... if you'd like to re-enrol, just let me know and I'll... fit you in.@@"
<</if>>
<br><br>
[<<moveTo "room_psychiatrist_hypno_reenroll" "Ask to re-join the experimental VR therapy study." 60 "<<set $player.cutscene.lockinventory = false>>">>]<br>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]<br>
<<if setup.checkOutsideDecency()>>
<<if $npc_psychiatrist.flags.dinner.ate>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 11000)>>
[<<moveTo 'event_psych_dinner_invite_1_repeat' 'Ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner.' 180 "<<set $player.cutscene.lockinventory=true>>" >>]<br>
<<else>>
[@@.link_locked;You should keep a clear schedule if you want to invite <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner again.@@]<br>
<</if>>
<</if>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_3')>>
<<if _themeId != -1 && $npc_psychiatrist.themes.transition[_themeId].done && !(State.hasPlayed("event_camgirl_intro_obedient_1") || $currentTasks.hasOwnProperty("task_camgirl_strict")) && !$player.sec_style.sex.camgirl && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo"))>>
[<<moveTo 'event_camgirl_intro_obedient_1' 'Thank her and leave the office.' 180 "<<set $player.cutscene.lockinventory = false>>">>]<br>
<<elseif $player.sec_style.submission.contract == "strict" && $fetish.drugs && !State.hasPlayed("event_contract_strict_1")>>
[<<moveTo "event_contract_strict_1" "Thank her and leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $npc_psychiatrist.anger == 0 && $npc_psychiatrist.affection >= 10 && $npc_manager.stage >= 4 && !$npc_psychiatrist.flags.dinner.ate>>
[<<moveTo "event_psych_dinner_invite_1" "Thank her and leave the office." 300 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<elseif $npc_technician.relationship.kinks.whore && setup.hasFreeTime($now, $player, $currentTasks, 11000) && $npc_technician.relationship.kink_indulge.whore < 2 && $npc_technician.relationship.done_you>>
[<<moveTo "event_technician_whoring_glory_invite_1" "Thank her and leave the office." 180 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "room_citymap" "Thank her and leave the office." 300 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
<<else>>
"@@.npc_psychiatrist;Our next session is next Friday at <<if $options.militaryTime>>14:00<<else>>two o'clock pm<</if>>. See you then, <<=$player.first_name>>.@@"<br>
<br>
<<if !setup.checkOutsideDecency()>>
As you turn for the door you take a look down yourself and rush back into the changing room to dress in a decent manner.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]<br>
<<if $npc_psychiatrist.flags.dinner.ate>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 11000)>>
[<<moveTo 'event_psych_dinner_invite_1_repeat' 'Ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner.' 180 "<<set $player.cutscene.lockinventory=true>>" >>]<br>
<<else>>
[@@.link_locked;You should keep a clear schedule if you want to invite <<=setup.getNpcName("npc_psychiatrist","formal")>> to dinner again.@@]<br>
<</if>>
<</if>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_3')>>
<<if _themeId != -1 && $npc_psychiatrist.themes.transition[_themeId].done && !$player.sec_style.sex.camgirl && !State.hasPlayed("event_camgirl_intro_obedient_1") && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo"))>>
<<moveTo "event_camgirl_intro_obedient_1">>
<<elseif $player.sec_style.submission.contract == "strict" && $fetish.drugs && !State.hasPlayed("event_contract_strict_1")>>
[<<moveTo "event_contract_strict_1" "Thank her and leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $npc_psychiatrist.anger == 0 && $npc_psychiatrist.affection >= 10 && $npc_manager.stage >= 4 && !$npc_psychiatrist.flags.dinner.ate>>
<<moveTo "event_psych_dinner_invite_1">>
<<elseif $now.getUTCDay() == 3 && $npc_technician.relationship.kinks.bimbofication && setup.hasFreeTime($now, $player, $currentTasks, 7200) && ($npc_technician.relationship.kink_indulge.bimbofication.you || $npc_technician.relationship.kink_indulge.bimbofication.her) && $npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1)>>
[<<moveTo "event_technician_bimbo_pair_1" "Leave the office." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<elseif $npc_technician.relationship.kinks.whore && setup.hasFreeTime($now, $player, $currentTasks, 11000) && $npc_technician.relationship.kink_indulge.whore < 2 && $npc_technician.relationship.done_you>>
[<<moveTo "event_technician_whoring_glory_invite_1" "Thank her and leave the office." 180 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "room_citymap" "Thank her and leave the office." 300 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
She plucks a business card from the small tray on her desk and hands it do you. "@@.npc_psychiatrist;If you have any issue between now and your next session, you may feel free to call. Note that after that session I am available for <<=$npc_psychiatrist.flags.sessionPrice>> credits per session. For the sake of your mental health, I would recommend you visit me a few more times as you look terribly stressed and I am certain there are a few things I can help you with...@@"<br>
<br>
<<printThought "<<=$npc_psychiatrist.flags.sessionPrice>> creds? There's no way I can afford this and get through the month... well, my mental stability could really use some help, but it looks like the answer is still n...">><br>
<br>
"@@.npc_psychiatrist;You just got that "that is way too much money" expression on your face. Anything troubling you? I still have a few minutes before my next custom... err... client shows up. So, would you kindly tell me about your money troubles?@@"<br>
<br>
You try to introduce your current money problems, and how they kind of stress you out, especially having to pay the whole rent now out of your own pocket. You're afraid that you're not going to see the money your old company would technically still owe you, since you messed up pretty badly before they fired you. And if it wasn't for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> help you'd be totally broke by now.<br>
<br>
"@@.npc_psychiatrist;Well, money is one issue that won't magically go away if you talk enough about it. Okay, hardly any problem goes away magically by simply talking about it. There is always some additional effort required. And these sessions won't be free forever. Social Interaction Service Syndicate Inc. has only paid for so much.@@"<br>
<br>
There is a short, awkward silence.<br>
<br>
"@@.npc_psychiatrist;Ahem. As I was saying, money can be quite the issue, can't it? But I might have a solution... okay, rather a small remedy for you, if you are interested. I'm currently running a study on how therapies can benefit from virtual reality. If you are willing to join this study, it would cover the costs of your sessions and I can even pay you a bonus of up to 40 credits per therapy session. Maybe even more if you make it into the advanced part of the therapies. We can do these sessions twice a week, Sunday and Wednesday. But it just happens that one of my guinea pigs... ahem... I mean one of my voluntary study participants cancelled his appointment this evening. So I can introduce you to the system today, at <<if $options.militaryTime>>19:00<<else>>seven o'clock this evening<</if>>. Just show up and I'll plug you into the machine. It'll take about one hour. If it helps your decisions, all of my preliminary data shows that it does wonders for your dopamine level. And raising your well being reduces your stress levels as well. So it would be a win/win situation for you. So, what do you say, did I spark your interest, <<=$player.first_name>>?@@"<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_1_leave_hypnosis" "Accept to be part of the study." 300 "<<set $scene.hypnosis_accepted = true>>">>]<br>
[<<moveTo "event_psychiatrist_1stsession_1_leave_hypnosis" "Politely decline to be a part of the study." 300 "<<set $scene.hypnosis_accepted = false>>">>]
<</if>>
</div>/*#
#desc: first psych session, offered hypnosis study + leave office
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.scheduleHypnoToday=true>>
<<include "addHypnosisTask">>
<<set $scene.rand = random(1,10)>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.hypnosis_accepted>>
"@@.npc_psychiatrist;Very good. You will not regret this decision. This will help you to become the person you have always wanted to be. That's really why I started this research project — to find better ways for people to become more sincere with themselves.@@"<br>
<br>
<<printThought "What exactly is that supposed to mean? Though I am kind of curious what kind of VR system they use.">><br>
<br>
"@@.npc_psychiatrist;Okay, so later today it is. Please be on time, since there are certain time slots for every participant and it takes time to prepare the system between sessions. Do not worry though, it will not take more then a hour, well maybe a little bit more, since it is your first session. Still, you should not worry about losing your whole Friday evening.@@"<br>
<br>
You nod in agreement.<br>
<br>
"@@.npc_psychiatrist;YES, we finally got one... ahem... I mean... good. Nah, don't worry, I'm just playing tricks on your mind.@@"<br>
<br>
That is exactly what you're afraid of.<br>
<br>
"@@.npc_psychiatrist;Well, then, I'll see you later today, and just a reminder that our next therapy session is next Friday at <<if $options.militaryTime>>14:00<<else>>two o'clock, pm<</if>>. See you soon, <<=$player.first_name>>.@@"
<<elseif $fetish.hypnosis>>
"@@.npc_psychiatrist;Hmm... interesting... do you think this reluctance reflects your refusal to address your personal issues head on, even though you know that's what you need?@@"<br>
<br>
You start to respond but she just laughs. "@@.npc_psychiatrist;Oh, look at me, giving it away for free! Your session is already over and I'm still analyzing you...@@" She smiles and you realise/hope it was all a joke. "@@.npc_psychiatrist;Still... there is a kernel of truth. How about I just put you down anyway? If you're free, you can come by. After all, what do you have to lose, other than some nasty mental hang-ups...@@"<br>
<br>
<<printThought "Hmm... it couldn't hurt to try it once... and I wouldn't mind a few extra credits.">><br>
<br>
"@@.npc_psychiatrist;So, please. If you could join us here this evening, that would be great... otherwise, well our next therapy session is next Friday at <<if $options.militaryTime>>14:00<<else>>two o'clock, pm<</if>>. See you then, <<=$player.first_name>>.@@"
<<else>>
"@@.npc_psychiatrist;Really? Aw, that is too bad. If you would reconsider your answer? How about this: since the slot is still free, I'll simply put you down. There, it's booked. You are free to show up if you get curious and change your mind between now and then. And if you don't show up, no harm done. Well, besides to your wallet, since it will remain pretty empty, won't it? and you'll miss out on the benefits of participation, and I guess the cause of science will take a bit of a dent... really, on balance, it seems like you really ought to show up — totally your decision though!@@"<br>
<br>
<<printThought "That is actually true, and I am kind of curious what kind of VR system they use.">><br>
<br>
"@@.npc_psychiatrist;So, please. If you change your mind, <<=$player.first_name>>, you're welcome to join us here this evening! Anyway, our next therapy session is next Friday at <<if $options.militaryTime>>14:00<<else>>two o'clock, pm<</if>>. See you then, <<=$player.first_name>>.@@"
<</if>>
<br><br>
<<if setup.checkOutsideDecency()>>
<<if $player.sec_style.submission.contract == "strict" && $fetish.drugs>>
[<<moveTo "event_contract_strict_1" "Thank her and leave the office." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "room_citymap" "Thank her and leave the office." 1 "<<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist changing room/change jerk off before/after session
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.interrupt = random(1,10) < Math.min($npc_psychiatrist.sessions, 5)>>
<<if $scene.interrupt>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<if !$npc_psychiatrist.flags.therapy_events.handjob && !$npc_psychiatrist.flags.therapy_events.blowjob>>
<<playerOrgasm>>
<</if>>
<<else>>
<<set $npc_psychiatrist.flags.therapy_events.self_jerk = true>>
<<playerOrgasm>>
<<applyExperience 'humiliation' 7 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.interrupt>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<<else>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.interrupt>>
You start jerking yourself off when you hear the door and look up to find <<=setup.getNpcName("npc_psychiatrist","formal")>> poking her head in.<br>
<br>
<<if $npc_psychiatrist.flags.therapy_events.handjob || $npc_psychiatrist.flags.therapy_events.blowjob>>
She grins. "@@.npc_psychiatrist;Ah, my dear! Please — you are still here in my office, and thus under my care. Let me take care of relieving this final stress... or at least observe, watching a patient in the throws of self-love can be quite revelatory and useful for me to craft future therapy.@@"<br>
<br>
[<<moveTo "event_psychiatrist_masturbate_2_psyc" "Let her finish you off." 180 "<<set $scene.action='psyc'>>">>]<br>
[<<moveTo "event_psychiatrist_masturbate_2_psyc" "Finish yourself off." 180 "<<set $scene.action='self'>>">>]<br>
[<<moveTo "event_psychiatrist_masturbate_2_psyc" "You want privacy!" 180 "<<set $scene.action='private'>>">>]
<<else>>
You freeze in fear, but she just smiles. "@@.npc_psychiatrist;Oh, how wonderful that you feel comfortable enough to attend to things in my proximity.@@" She winks "@@.npc_psychiatrist;I will let you finish up but... maybe some help?@@"<br>
<br>
If you weren't already shocked enough, she shrugs out of her already precarious top to flash you her big, beautiful breasts before slipping out of the room.<br>
<br>
<<printThought "What the hell just happened...">><br>
<br>
Whatever your distraction, your hand continued to stroke, and you cum almost as soon as she has left.<br>
<br>
<<if $player.body_ref.cumProduction > 0>>
You look down at the mess in your hand.<br>
<br>
[<<moveTo "event_psychiatrist_masturbate_2_cum" "Consume the evidence." 60 "<<set $scene.lick=true>>">>]<br>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't pass up one of your favourite salty treats...@@]
<<else>>
[<<moveTo "event_psychiatrist_masturbate_2_cum" "Wash your hand." 60 "<<set $scene.lick=false>>">>]
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Finish changing." 60>>]
<</if>>
<</if>>
<<else>>
You squeeze out a quick jerk in <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> small changing room.<br>
<br>
The fact that you're doing something mere meters away from your unknowing therapist makes things even more exciting, and shameful and you have to bite your lip to stifle the moan of your climax.<br>
<br>
<<printThought "How depraved can I get...">><br>
<br>
<<if $player.body_ref.cumProduction > 0>>
You look down at the mess in your hand.<br>
<br>
[<<moveTo "event_psychiatrist_masturbate_2_cum" "Consume the evidence." 60 "<<set $scene.lick=true>>">>]<br>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't pass up one of your favourite salty treats...@@]
<<else>>
[<<moveTo "event_psychiatrist_masturbate_2_cum" "Wash your hand." 60 "<<set $scene.lick=false>>">>]
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Finish changing." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: psychiatrist changing room/change jerk off before/after session
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lick>>
<<applyExperience 'cum' 7 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
You lick your hand clean of
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly <<getWordCum>>; sucking each finger in turn to make sure you do not waste a single precious drop.
<<else>>
delicious <<getWordCum>>; sucking each finger in turn to make sure you get it all.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<getWordCum>>, trying not to think about how good it is starting to taste...
<<else>>
disgusting <<getWordCum>>, choking it down to make sure you don't leave any evidence behind of your actions.
<</if>>
<</if>>
<<else>>
You quickly wash away the evidence of your private wank session, hoping the smell of soap will mask the scent of what you just did for whoever enters the room next.
<</if>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Finish changing." 60>>]
</div>/*#
#desc: psychiatrist changing room/change jerk off before/after session
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'psyc'>>
<<set $npc_psychiatrist.flags.therapy_events.jerk = true>>
<<playerOrgasm>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<case 'self'>>
<<set $npc_psychiatrist.flags.therapy_events.watch = true>>
<<playerOrgasm>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<case 'private'>>
<<set $player.timebased.horny = 30>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 3>>
<</switch>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'psyc'>>
You can't quite find your voice but you nod in consent and <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles.<br>
<br>
"@@.npc_psychiatrist;Lovely,@@" she states as she kneels down in front of you and wraps her hand around your hard <<getWordMyPenis false>>.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_psychiatrist;Doesn't it feel better to have someone else handle this pathetic little thing? Yes, touching it yourself... well, I am sure it only embarrasses you further, compared to all the big, beautiful cocks you prefer to stroke...@@"
<<else>>
"@@.npc_psychiatrist;Isn't it so much nicer to have someone else do it? Yes, yes it is...@@"
<</if>>
<<case 'spe'>>
"@@.npc_psychiatrist;Such a perfect little pee pee, oh, I know just how to reward something so delicate and cute...@@"
<<default>>
"@@.npc_psychiatrist;Isn't it so much nicer to have someone else do it? Yes, yes it is...@@"
<</switch>>
She coos as she strokes your small <<getWordMyPenis false>>.
<<case 2 3>>
"@@.npc_psychiatrist;Let your doctor take care of things,@@" She states softly, stroking you expertly.
<<case 4 5>>
"@@.npc_psychiatrist;I can see why you needed relief — keeping this filled with blood must be quite the drain on your system!@@" She states, stroking you with both hands.
<<case 6>>
"@@.npc_psychiatrist;It was a good call on your part to ask for assistance, this magnificent thing is practically a multi-person job!@@" She states as sher jerks off your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock<<elseif $player.body_ref.horsecock>>horse cock<<elseif $player.body_ref.knot>>knotted cock<<else>>member<</if>> with both hands.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> is as good with her hands as she is with her voice and you are soon unburdening yourself
<<switch $player.body_ref.cumProduction>>
<<case 0>>
with a powerful, if dry, orgasm.
<<case 1>>
by spurting your joy all over her hands. "@@.npc_psychiatrist;See, isn't that better? Though... you appear to have made a bit of a mess...@@" She adds, holding up her cum-coated palm.
<<case 2>>
by exploding with your "joy" — only her nimble reflexes and skill allowing her to catch things in her hands rather than take the blast to the face.<br>
<br>
"@@.npc_psychiatrist;My, my, you WERE pent up! — Now, what do you propose to do about this mess?@@" She asks, holding up her cum-coated hands.
<<default>>
ERROR: unexpected cum production <<=$player.body_ref.cumProduction>>
<</switch>>
<br><br>
<<if $player.body_ref.cumProduction > 0>>
"@@.npc_psychiatrist;A touch pent up, it would seem... are you going to clean up? You do seem to have made something of a mess of my hand...@@"<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
[<<moveTo "event_psychiatrist_masturbate_3" "Eagerly consume the delicious evidence." 60 "<<set $scene.lick=true>>">>]<br>
[@@.link_locked;You can't pass up one of your favourite salty treats...@@]
<<else>>
[<<moveTo "event_psychiatrist_masturbate_3" "Lick up the evidence." 60 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_psychiatrist_masturbate_3" "Hand her some paper towels." 60 "<<set $scene.lick=false>>">>]
<</if>>
<<else>>
"@@.npc_psychiatrist;Very interesting. Thank you for allowing me to assist in this matter.@@" Back on her feet she winks and disappears before you can think of a response.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Finish changing." 60>>]
<</if>>
<<case 'self'>>
You feel a bit self-conscious, but also aroused by <<=setup.getNpcName("npc_psychiatrist","formal")>> watching intently as you finish jerking off.<br>
<br>
You're a bit surprised, and also disturbed, how fast you cum, blushing in embarrassment as you spurt all over your hand.<br>
<br>
<<if $player.body_ref.cumProduction > 0>>
"@@.npc_psychiatrist;A touch pent up, it would seem... are you going to clean up? You do seem to have made something of a mess of your hand...@@"<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
[<<moveTo "event_psychiatrist_masturbate_3" "Eagerly consume the delicious evidence." 60 "<<set $scene.lick=true>>">>]<br>
[@@.link_locked;You can't pass up one of your favourite salty treats...@@]
<<else>>
[<<moveTo "event_psychiatrist_masturbate_3" "Lick up the evidence." 60 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_psychiatrist_masturbate_3" "Wash your hand." 60 "<<set $scene.lick=false>>">>]
<</if>>
<<else>>
"@@.npc_psychiatrist;Very interesting. Thank you for trusting me to let me watch... perhaps next time you will allow me to do more?@@" She winks and disappears before you can think of a response.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Finish changing." 60>>]
<</if>>
<<case 'private'>>
You frantically ask <<=setup.getNpcName("npc_psychiatrist","formal")>> to leave.<br>
<br>
She pouts theatrically, but does as you request. Once you're alone you take a deep breath, trying to get your heart-rate down as you note that, in the commotion, your erection has, thankfully, mostly subsided.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Finish changing." 60>>]
<<default>>
ERROR unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: psychiatrist changing room/change jerk off before/after session
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lick>>
<<applyExperience 'cum' 7 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 15 'very' $INCOGNITO>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
With <<=setup.getNpcName("npc_psychiatrist","formal")>> watching, and smiling, you lick <<if $scene.action == 'psyc'>>her<<else>>your<</if>> fingers clean of your <<getWordCum>>.<br>
<br>
"@@.npc_psychiatrist;Wonderful,@@" she states in conclusion, wiping a final drop from your lips. "@@.npc_psychiatrist;So considerate and efficient, yes, you are coming along nicely...@@"
<<else>>
You hand her a towel, you see a look of disappointment briefly flicker across her face before she forces a smile and wipes her hands. "@@.npc_psychiatrist;Thank you, my dear... now I shall leave you to continue changing.@@"
<</if>>
<br><br>
She leaves the room before you can reply.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Finish changing." 60>>]
</div>/*#
#desc: dialog box for choosing your feminine name with psychiatrist
#status: FINISHED 0.8.6.0
#*/
<center>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>>
</center>
<br>
@@.textRightSide;
<<button "Okay">>
<<moveTo 'event_psychiatrist_name_1'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: choose name via psychiatrist
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sissyname = setup.sanitizeString($scene.sissyname)>>
<<set $scene.acceptname = "">>
<<if $scene.sissyname.toLowerCase() == $player.first_name.toLowerCase()>>
<<set $scene.acceptname = "samename">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == $player.last_name.toLowerCase()>>
<<set $scene.acceptname = "lastname">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == $npc_manager.first_name.toLowerCase() || $scene.sissyname.toLowerCase() == $npc_manager.last_name.toLowerCase()>>
<<set $scene.acceptname = "manager">>
<<applyExperience 'bimbofication' 6 'normal' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == $npc_psychiatrist.first_name.toLowerCase() || $scene.sissyname.toLowerCase() == $npc_psychiatrist.last_name.toLowerCase()>>
<<set $scene.acceptname = "psychiatrist">>
<<applyExperience 'bimbofication' 6 'normal' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == 'sissy' || $scene.sissyname.toLowerCase() == 'sissyname'>>
<<set $scene.acceptname = "sissy">>
<<applyExperience 'bimbofication' 6 'normal' $SEEN_FRIEND>>
<<elseif $scene.sissyname == "">>
<<set $scene.acceptname = "none">>
<<applyExperience 'bimbofication' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<if $scene.acceptname == "">>
<<set $player.call = "Miss">>
<<if !$player.original_first_name>>
<<set $player.original_first_name = $player.first_name>>
<</if>>
<<if !$player.original_last_name>>
<<set $player.original_last_name = $player.last_name>>
<</if>>
<<set $player.first_name = $scene.sissyname>>
<<set $player.last_name = $scene.lastname>>
<<set $player.sec_style.body.name = "enthusiast">>
<<if !$player.sec_style.body.identify_fem>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 9, 0, false)>>
<<addWorkEvent "identity_work" _nextDate>>
<</if>>
<<if $npc_manager.stage >= 2>>
<<addWorkEvent 'cunnilingus_intro'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_21'
20
'event_enthusiast_hormones_1'
true
>>
<<set _nextDate = setup.getNextDayOfWeek($now, 3, 9, 0)>>
<<set _nextDate = setup.getNextDayOfWeek(_nextDate, 3, 9, 0)>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_20'
20
'event_psychiatrist_theme_gender_1'
true
>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_11'
10
'event_technician_comingout_1_alt'
true
>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_20'
20
'event_admin_comingout_1'
true
>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<removeEvent 'insurance_alt'>>
<<addEvent 'enthusiast_name_call'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.acceptname>>
<<case "psychiatrist">>
<<=setup.getNpcName("npc_psychiatrist","formal")>> shakes her head. "@@.npc_psychiatrist;I said what do you want YOUR name to be, not what my name is! Come on, now, let's try that again.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_psychiatrist_name_1" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Tell her your new name">><<openDialog "Your feminine name:" "dialog_selectNamePsych">><</link>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' "Actually, you'd rather just start the session." 660 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]
<<case "samename" "lastname">>
"@@.npc_psychiatrist;Yes, that is your old name, but is that really how you wish to be called, or do you want to go by something else?@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_psychiatrist_name_1" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Tell her your new name">><<openDialog "Your feminine name:" "dialog_selectNamePsych">><</link>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' "Actually, you'd rather just start the session." 660 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]
<<case "manager">>
"@@.npc_psychiatrist;That is your manager's name... I do not believe that <<=setup.getNpcName('npc_manager', 'other')>> would appreciate it if you showed up doing that sort of mirroring.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_psychiatrist_name_1" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Tell her your new name">><<openDialog "Your feminine name:" "dialog_selectNamePsych">><</link>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' "Actually, you'd rather just start the session." 660 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]
<<case "sissy">>
"@@.npc_psychiatrist;An... interesting, and perhaps revealing choice... but how about we go for something a bit more professional, hmm?@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_psychiatrist_name_1" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Tell her your new name">><<openDialog "Your feminine name:" "dialog_selectNamePsych">><</link>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' "Actually, you'd rather just start the session." 660 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]
<<case "none">>
"@@.npc_psychiatrist;Well? We must call you something, after all, would be quite inconvenient to go around with no name at all! Now, come then, what would you prefer to be called?@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_psychiatrist_name_1" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Tell her your new name">><<openDialog "Your feminine name:" "dialog_selectNamePsych">><</link>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' "Actually, you'd rather just start the session." 660 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]
<<case "">>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;<<=$player.first_name>>... yes, that is a beautiful name... for a beautiful girl, perhaps? But I get ahead of myself — we can talk about your gender identity later in the session, if you wish. For now know that you can move forward with your lovely new name — I will take care of all the paperwork and ensure that work will be referring to your correctly and such. Now, shall we continue on with the session?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' "Choose your topic." 180 "<<checkFetishFlags>><<include 'startPsychSession'>>">>]
<</switch>>
</div>/*#
#desc: manager acknowledges new name
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set $npc_manager.flags.reactnamechange = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You've barely stepped out of the psychiatrist's office when your phone rings.<br>
<br>
You answer it to hear the... almost sultry? Sound of your <<=ps(setup.getNpcName("npc_manager","manager"))>> voice. "@@.npc_manager;Hello <<=$player.first_name>> <<=$player.last_name>>.@@" Your heart flutters at the sound of your name in her voice. "@@.npc_manager;Yes, I was notified about your change and I wanted to congratulate you. Quite a lovely choice, far more appropriate than... well, no need to speak that old thing anymore, hmm? I will admit, I am just a touch surprised you did not make the change that first day with me... but no matter, I can hardly fault your enthusiasm thus far! Anyway, I am sure you are looking forward to a nice weekend, so I shall leave you to Monday, good night!@@"<br>
<br>
She hangs up and you find yourself smiling. Things in the therapist office had moved so fast, but hearing it from your boss... well, you are now <<=$player.first_name>> <<=$player.last_name>>, and that suits you just fine!<br>
<br>
[<<moveTo "room_citymap" "Put your phone away and continue on your way." 60 "<<set $currentcall = false>>">>]
</div>/*#
#desc: psychiatrist assigns drugs from strict contract followup
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You're about to leave when <<=setup.getNpcName("npc_psychiatrist","formal")>> seems to remember something. "@@.npc_psychiatrist;Oh, one final matter!@@" She reaches into a drawer and comes up with a small pill-bottle, pouring one pink tablet into her hand and offering things to you. "@@.npc_psychiatrist;These are to aid you in performing your duties. <<=setup.getNpcName("npc_manager","first")>> wanted to assign them first thing, given your recalcitrance... but I needed a clean baseline for my records. Now, however? Well, consider it the prescription another part of your requirements of employment. Now come, take your medicine! Note that it is a condition of your employment...@@"<br>
<br>
[<<moveTo "event_contract_strict_2" "Just take the pill." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_contract_strict_2" "Refuse!" 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: psychiatrist assigns drugs from strict contract followup
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'sissypill_mk1'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You take the pill and swallow it, feeling your heart race and a touch of light-headedness... though that could be just in your head...<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and slides the bottle with the remaining pills across the desk. "@@.npc_psychiatrist;Lovely. You may speak to <<=setup.getNpcName("npc_manager","first")>> to refresh your prescription, and I would encourage you to not forget such. The withdrawal effects of your new medication can be unpleasant, and it is, now, a condition of your employment. And do take care, the pills can have somewhat... intense interactions with alcohol.@@"
<<else>>
You refuse to take the pill... and <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles in amusement. "@@.npc_psychiatrist;I will confess... I had already anticipated this behaviour. Which is why I took the liberty of putting a delayed-effect dose in that lovely candy you took at the start of the session. The effects should be kicking in... just about now.@@"<br>
<br>
You suddenly start second-guessing yourself, your heart-rate is up, and you're feeling some tingles of arousal... but is that the drugs, you psyching yourself out, or the taunting presence of your so-called therapist?<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> continues to smile as she puts the pill back in the bottle and slides it across the table to you.<br>
<br>
"@@.npc_psychiatrist;I will note that the withdrawal effects of your new medication can be unpleasant, and it is, now, a condition of your employment. You may speak with <<=setup.getNpcName("npc_manager","first")>> to re-up your prescription. And do take care, the pills can have somewhat... intense interactions with alcohol.@@"<br>
<br>
Seeing little alternative you snatch up the bottle and glare at <<=setup.getNpcName("npc_psychiatrist","formal")>> before you storm out of the office.
<</if>>
<br><br>
[<<moveTo "room_citymap" "Hurry on your way." 60 "<<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: failed to show up for the psychiatrist, but after the first, mandatory.
#status: FINISHED 0.5.0.6
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_psychiatrist.flags.cruel>>
<<set $scene.outOfSessions = $npc_psychiatrist.free_sessions < 0>>
<<include "addPsychiatristEndless">>
<<set $npc_psychiatrist.free_sessions -= 1>>
<<if $npc_psychiatrist.free_sessions < 0>>
<<set $npc_psychiatrist.free_sessions = 0>>
<</if>>
<<set $currentcall=true>>
<</if>>
<<set $scene.atHome = setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
<<set $scene.camgirlStrict = $currentTasks.hasOwnProperty('task_camgirl_strict') && !$player.sec_style.sex.camgirl>>
<<if $currentTasks.hasOwnProperty('task_camgirl_strict') && !$currentTasks.task_camgirl_strict.finished>>
<<if $npc_psychiatrist.flags.cruel>>
<<if $player.sec_style.sex.camgirl>>
<<completeTask 'task_camgirl_strict' $now true>>
<<else>>
<<deleteTask 'task_camgirl_strict'>>
<</if>>
<<else>>
<<postponeTask 'task_camgirl_strict' 7>>
<</if>>
<</if>>
<</if>>
<<if $npc_psychiatrist.flags.cruel>>
<<else>>
<<set $player.location to "Call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_psychiatrist.flags.cruel>>
<<if $scene.atHome>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" "cop_fem">>
<<else>>
<<createAdvBGR "" "cop_fem">>
<</if>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.flags.cruel>>
<<if !State.hasPlayed("event_psychiatrist_forced_therapy_1")>>
<<if $scene.atHome>>
You get a knock on the door and open it to find a police officer.
<<else>>
You are surprised by the sudden approach of a police officer.
<</if>>
"@@.generic_female1;<<switch $npc_psychiatrist.flags.knowgender>><<case 'male' ''>>Mr.<<case 'female'>>Ms.<<case 'agender' 'fluid'>><<=$player.first_name>><</switch>> <<=$player.last_name>>?@@" They ask and you nervously nod.<br>
<br>
"@@.generic_female1;I am here to bring you to your mandated therapy.@@"<br>
<br>
<<printThought "Mandated therapy? Is there no end to the intrusions into my life?">><br>
<br>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Go quietly." 600 "<<set $scene.action='quiet'>><<set $scene.first=true>>">>]<br>
[<<moveTo "event_psychiatrist_forced_therapy_1" "This can't be right, object!" 600 "<<set $scene.action='object'>><<set $scene.first=true>>">>]<br>
<<if $scene.atHome>>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Slam the door in their face." 600 "<<set $scene.action='slam'>><<set $scene.first=true>>">>]
<<else>>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Slam the door in their face." 600 "<<set $scene.action='run'>><<set $scene.first=true>>">>]
<</if>>
<<else>>
Once again the time for your "therapy" appointment arrives and a police officer
<<if $scene.atHome>>
appears on your doorstep.
<<else>>
all but ambushes you.
<</if>>
"@@.generic_female1;<<switch $npc_psychiatrist.flags.knowgender>><<case 'male' ''>>Mr.<<case 'female'>>Ms.<<case 'agender' 'fluid'>><<=$player.first_name>><</switch>> <<=$player.last_name>>.@@" They state, brandishing the familiar straitjacket. "@@.generic_female1;You really should remember to make your appointments... unless you're some sort of pervert who enjoys being tied up and brought in like this...@@" She grunts "@@.generic_female1;maybe that's why you're in therapy? Anyway, you know the drill...@@"<br>
<br>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Go quietly." 600 "<<set $scene.action='quiet'>><<set $scene.first=false>>">>]<br>
<<if $scene.atHome>>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Slam the door in their face." 600 "<<set $scene.action='slam'>><<set $scene.first=false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_forced_therapy_1" "Slam the door in their face." 600 "<<set $scene.action='run'>><<set $scene.first=false>>">>]
<</if>>
<</if>>
<<else>>
You are being called by <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Hey, <<=$player.first_name>>. I assume you won't make it to our psychiatric appointment today. Don't worry, no harm done, but I still have to remove it from your credit. I hope you understand. I am well aware that you are unable to cancel your appointment, but that would be the Developers fault, not mine, right? Good. Would you kindly consider appearing at our next appointment? I'll book you for your usual time next Friday. No, that is not negotiable... yet. At <<if $options.militaryTime>>14:00<<else>>two o'clock in the afternoon<</if>>, as usual?@@"<br>
<br>
<<if $scene.outOfSessions>>
"@@.npc_psychiatrist;Of course you have been out of "free" sessions for a while now... I would just love it if you came in to help me with my research!@@"<br>
<br>
<<elseif $npc_psychiatrist.free_sessions == 0>>
"@@.npc_psychiatrist;I am afraid that was the end of your free sessions, of course I would love it if you could help me out with my research and earn more!@@"<br>
<br>
<</if>>
<<printThought "I kinda thought only the first session was mandatory, but I still feel kinda bad...">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div><<set _tmpDatePsyc = setup.getNextDayOfWeek($now, 5, 14, 0, false)>>
<<addTaskById 'psychiatrist_endless_apointment_1' _tmpDatePsyc>>/*#
#desc: eat chocolate at start of session, psychiatrist comments on clothing, start session proper
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.free_sessions -= 1>>
<<if $npc_psychiatrist.free_sessions < 0>>
<<set $npc_psychiatrist.free_sessions = 0>>
<</if>>
<<if $scene.pay && (!State.hasPlayed("event_psych_react_no_payment_1") || $npc_psychiatrist.flags.cruel)>>
<<addCredits `-$npc_psychiatrist.flags.sessionPrice`>>
<<else>>
<<include "addPsychiatristEndless">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.pay>>
You <<if !State.hasPlayed("event_psych_react_no_payment_1") || $npc_psychiatrist.flags.cruel>>pay the required credits<<else>>take a seat<</if>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles.
<<if $npc_psychiatrist.flags.cruel>>
"@@.npc_psychiatrist;Excellent, an investment in your psyche... though one cannot really put a price on mental health.@@"
<<elseif State.hasPlayed("event_psych_react_no_payment_1")>>
"@@.npc_psychiatrist;Of course I would be more than happy to do this for free if you could only help out with my experiment, still, one cannot put a price on mental health. Though your willingness to pay is an obvious positive sign that you properly prioritize the goal of getting better.@@"
<<else>>
"@@.npc_psychiatrist;Lovely, now, let us get to enhancing your mental health...@@"
<</if>>
<br><br>
A part of you wonders what her personal vision of "mental health" might be, but you are soon distracted by her offer of the familiar chocolates.<br>
<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a white one." 120 '<<set $scene.chocolate = "white">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a pink one." 120 '<<set $scene.chocolate = "pink">>'>>]<br>
[<<moveTo "event_psychiatrist_1stsession_2" "Take a brown one." 120 '<<set $scene.chocolate = "brown">>'>>]
<<else>>
At the prospect of needing to pay you change your mind and state that you will have to skip today's session. She looks quite crestfallen.<br>
<br>
"@@.npc_psychiatrist;That is very disappointing to hear — one really cannot put a price on mental health and I felt we were making such good progress...@@" She sighs. "@@.npc_psychiatrist;Ah well, it is as they say, you can lead a whore to, I mean horse to water... perhaps you will be more solvent by next week — or maybe you will be able to join me for one of my experimental VR therapy trials? That would be best for all involved, really. Just in case, I will keep you on the schedule for next week, in any event, have a good evening and a pleasant weekend.@@"<br>
<br>
[<<moveTo "room_citymap" "Leave." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: tell psychiatrist about free sessions
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain that, actually, there had been a mistake in benefits, and the company should now be covering all costs of your therapy.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> takes a moment to check her computer
<<if $npc_psychiatrist.flags.cruel>>
"@@.npc_psychiatrist;Well, well, well... it would seem that your therapy IS paid for... except, well... for you the payment is PART of your therapy. Think of it like a prescription, paying up as part of your treatment plan. So, you see, well... you are still on the hook to pay... or make it up some other way...@@"
<<else>>
"@@.npc_psychiatrist;Well, well! This is just lovely news, now you can come every Friday without any worry about the cost and put all that energy into improving your mental well-being! <<if $npc_psychiatrist.hypnosis>> Of course, I still encourage you to continue to assist with my VR experimentation, and I will continue to compensate you for your time in doing so<<else>>That said... well, i still encourage you to take part in my VR therapy experimentation, and doing so will see you compensated for your time<</if>>.@@"
<</if>>
<br><br>
<<if $npc_psychiatrist.flags.cruel>>
<<if $player.money.total >= $npc_psychiatrist.flags.sessionPrice>>
[<<moveTo "event_psychiatrist_pay_session" "Pay for a session." 120 '<<set $scene.pay = true>>'>>]<br>
<<else>>
[@@.link_locked;You do not have enough money to pay for a session.@@]<br>
<</if>>
[<<moveTo "event_psychiatrist_forced_pay_intro_1" "You are not going to pay for something she is forcing on you!" 120>>]
<<else>>
[<<moveTo "event_psychiatrist_pay_session" "Proceed to your session." 120 '<<set $scene.pay = true>>'>>]
<</if>>
</div>/*#
#desc: psychiatrist phone therapy first intro
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.phone_therapy.last_call = $now>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> waits for you to get situated before continuing, her voice honey-sweet. "@@.npc_psychiatrist;Okay, my dear, I'm going to walk you through a guided exercise. I want you to keep an open mind and just listen to what I say.
<<if setup.checkNaked()>>
I can see, I mean hear it in your voice that you're already naked. That's good, clothes can be so wonderful in expressing ourselves, but they can also form a shell, baring yourself literally can be a wonderful step towards baring yourself psychologically, of letting go of all of those things hanging off of you...
<<else>>
First of all, would you kindly get naked? We want to free you from your burdens and removing your clothes will help with that. Think about shedding your troubles as you strip down. Slowly, gently, there's no rush, just enjoy the feeling of things falling away...
<</if>>
Embrace the cool air on your exposed skin...@@"<br>
<br>
<<if setup.checkNaked()>>
<<printThought "Wait... how could she possibly know I was naked just from the sound of my voice?">><br>
<br>
[<<moveTo "event_phone_therapy_2" "Keep listening." 60>>]<br>
<<else>>
[<<moveTo "event_phone_therapy_2" "Remove your clothes and keep listening." 180>>]<br>
<</if>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_2'>>">>]
</div>/*#
#desc: psychiatrist phone therapy abort
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You pause and reply that you don't want to go any further with this therapy.<br>
<br>
<<if $fetish.hypnosis>>
"@@.npc_psychiatrist;Want? No, no, no, what you want no longer matters, this is about what you NEED. Now, would you kindly resume where we left off...@@"<br>
<br>
<<printThought "Yes... this is what I need...">><br>
<br>
[<<moveTo $scene.resume "Continue..." 180>>]
<<else>>
"@@.npc_psychiatrist;I see... well I am afraid that the first rule of therapy is that you have to WANT to get help... without that there is little I can do save to wish you luck — I can hear the stress in your every word, are you sure you don't want to keep going?@@"<br>
<br>
[<<moveTo $scene.resume "Continue..." 180>>]<br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>><<if setup.isItemEquipped('taped_legs')>><<removeItem 'taped_legs' true>><<deleteItem 'taped_legs'>><</if>>">>]
<</if>>
</div>/*#
#desc: psychiatrist phone therapy first strip
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.strip = !setup.checkNaked()>>
<<if $scene.strip>>
<<removeAllClothing>>
<<applyStress -3>>
<</if>>
<<set $scene.actions = {
"penis" : false,
"cage" : false,
"bum" : false,
"lips" : false,
"face" : false,
"breasts" : false,
"vagina" : false
}>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.strip>>
You shed your clothing as instructed and sit back on the couch. I's a little weird, but you do feel a bit calmer...<br>
<br>
<</if>>
"@@.npc_psychiatrist;Okay, now that you're properly prepared, we're going to start with some affirmations. The world can be so hard on us sometimes, it's important to build oneself up, to constantly remind ourselves of what's important. So, I want you to repeat after me — "I am beautiful and deserve to be happy — the world is lucky to have me in it." Come on, now, your turn...@@"<br>
<br>
[<<moveTo "event_phone_therapy_3" "Repeat after her." 180>>]<br>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_3'>>">>]
</div>/*#
#desc: psychiatrist phone therapy first — affirmations
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
<<if $player.sec_style.clothing.unisex == "">>
<<printThought "Hmm... I never really thought of myself as beautiful, but it feels weirdly nice to hear that... even in my own voice.">>
<<else>>
<<printThought "Hmm... it feels nice to hear that, even if it's just in my voice...">>
<</if>>
<br><br>
<<switch $npc_psychiatrist.flags.knowgender>>
<<case 'male' ''>>
"@@.npc_psychiatrist;Good girl,@@"<br>
<br>
<<printThought "Wait, girl?">><br>
<br>
Before you can say anything she is already continuing on, her voice soft and smooth, almost seductive... "@@.npc_psychiatrist;Again, really put conviction into it. It's the truth — tell the world.@@"
<<case 'agender' 'fluid'>>
"@@.npc_psychiatrist;Good, good. Again, really put conviction into it. It's the truth — tell the world.@@"
<<case 'female'>>
"@@.npc_psychiatrist;Good girl, again, really put conviction into it. It's the truth — tell the world.@@"
<</switch>>
<br><br>
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
"@@.npc_psychiatrist;Again!@@"<br>
<br>
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
"@@.npc_psychiatrist;Yes!, Wonderful! Oh, hearing you say that makes me so happy. Now, we're going to go a bit further — I want you to use your hands and explore — explore that beautiful body of yours... just... let them wander to wherever feels best...@@"<br>
<br>
<<include "phoneTherapyFirstChoice">>
</div><<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
<<if $scene.actions.penis>>
[@@.link_locked;You have already touched your <<getWordMyPenis>>.@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_4" "Reach for your <<getWordMyPenis>>." 180 "<<set $scene.action='penis'>>">>]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if $scene.actions.vagina>>
[@@.link_locked;You have already touched your <<getWordVagina>>.@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_4" "Reach for your <<getWordVagina>>." 180 "<<set $scene.action='vagina'>>">>]<br>
<</if>>
<</if>>
<<else>>
<<if $scene.actions.cage>>
[@@.link_locked;<<=setup.getNpcName("npc_psychiatrist","formal")>> has already comforted you about your <<getWordMyPenis>>.@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_4" "Complain that you're in chastity..." 60 "<<set $scene.action='cage'>>">>]<br>
<</if>>
<</if>>
<<if $scene.actions.bum>>
[@@.link_locked;You have already explored your bum.@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_4" "Touch your bum..." 180 "<<set $scene.action='bum'>>">>]<br>
<</if>>
<<if $scene.actions.lips>>
[@@.link_locked;You have already touched your sensitive lips.@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_4" "Touch your lips." 180 "<<set $scene.action='lips'>>">>]<br>
<</if>>
<<if $scene.actions.face>>
[@@.link_locked;You have already touched your beautiful face.@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_4" "Touch your face." 180 "<<set $scene.action='face'>>">>]<br>
<</if>>
<<if $scene.actions.breasts>>
[@@.link_locked;You have already explored your <<if $player.body.breastsize[0] > 0>>breasts<<else>>nipples<</if>>.@@]<br>
<<else>>
<<if $player.body.breastsize[0] > 0>>
[<<moveTo "event_phone_therapy_4" "Play with your breasts." 180 "<<set $scene.action='breasts'>>">>]<br>
<<else>>
[<<moveTo "event_phone_therapy_4" "Play with your nipples." 180 "<<set $scene.action='breasts'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_3'>>">>]/*#
#desc: psychiatrist phone therapy first — affirmations
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $scene.actions[$scene.action] = true>>
<<switch $scene.action>>
<<case "penis">>
<<changeHorny 20>>
<<applyExperience 'penis' 5 'normal' $INCOGNITO>>
<<case "cage">>
<<changeHorny 25>>
<<case "bum">>
<<changeHorny 5>>
<<if !setup.checkItemTypeWorn("plug")>>
<<applyExperience 'anal' 5 'little' $INCOGNITO>>
<<else>>
<<set _anal = setup.getItemObjFromType('plug').effect.anal>>
<<applyExperience 'anal' _anal 'normal' $INCOGNITO>>
<</if>>
<<case "lips">>
<<changeHorny 5>>
<<if setup.getTotalValue("makeup") > 1>>
<<applyExperience 'makeup' 5 'little' $INCOGNITO>>
<</if>>
<<case "face">>
<<changeHorny 5>>
<<if setup.getTotalValue("makeup") > 1>>
<<applyExperience 'makeup' 5 'little' $INCOGNITO>>
<</if>>
<<case "breasts">>
<<changeHorny 15>>
<<set _fem = Math.min(5,$player.body.breastsize[0])>>
<<applyExperience 'feminization' _fem 'normal' $INCOGNITO>>
<<case "vagina">>
<<changeHorny 20>>
<<applyExperience 'feminization' 15 'normal' $INCOGNITO>>
<</switch>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "penis">>
You reach for your <<getWordMyPenis>> and it feels as if <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is guiding your hand. "@@.npc_psychiatrist;It feels good to touch yourself, doesn't it? But be gentle, slow. It's about the journey, not the destination.@@"<br>
<br>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_psychiatrist;Imagine if every time you stroked it, it got a little bit smaller... and you a little bit cuter... wouldn't that be perfect?@@"<br>
<br>
<</if>>
<<case 'spe'>>
"@@.npc_psychiatrist;Such a lovely little thing. Doesn't it just feel so, so perfect? A cute ornament to draw the eye between your thighs...@@"<br>
<br>
<</switch>>
You shudder, feeling close to orgasm, but not wanting it yet, not until she tells you it's the perfect moment...
<<case "cage">>
You complain that you're locked in chastity, emphasising this fact by groping desperately at your rigid prison.<br>
<br>
"@@.npc_psychiatrist;Oh, I know that's frustrating my dear. That tight, rigid device imprisoning you at your keyholder's whim. Making you feel so helpless, secure, yet vulnerable...@@" You moan softly as she continues, "@@.npc_psychiatrist;I know it's hard, but you're strong, and brave — you can endure... more than endure, you can take this as an opportunity. When the Goddess closes a door, she opens a window... think about what your window might be, where else on that beautiful, sexy body you could touch, feel. Maybe that device is not a prison, but a palace...@@"<br>
<br>
As she talks you find yourself stroking <<if setup.isCage()>>your cage<<else>>the front of your belt<</if>>, even though the device insulates you from your own hand there is something about feeling the rigid material while you listen to her words that makes you bite your lip to suppress an even louder moan.
<<case "bum">>
You reach between your legs, your finger
<<if !setup.checkItemTypeWorn("plug")>>
tracing the edge of your empty hole.<br>
<br>
<<if $fetish.fisting>>
"@@.npc_psychiatrist;Good, good — isn't that such a fun hole? It'll feel even better inside. Come on just one finger. I promise you'll love it... AND if you keep it up you'll be fantasising about taking an entire fist...@@"<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") >= 20>>
<<printThought "A fist? Make it two...">>
<<elseif setup.getTotalValue("anal") > 15>>
<<printThought "A fist? Yes, please...">>
<<else>>
<<printThought "A fist? Hmm... maybe...">>
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
<<printThought "A fist? No way!">>
<<else>>
<<printThought "A fist? That's impossible!">>
<</if>>
<</if>>
<<else>>
"@@.npc_psychiatrist;Good, good — isn't that such a fun hole? It'll feel even better inside. Come on just one finger. I promise you'll love it... it's such a delight to have a filled hole...@@"<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
<<printThought "Yes... I need to be filled...">>
<<else>>
<<printThought "Yes... being filled is nice...">>
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
<<printThought "Yes... I need to finger my hole...">>
<<else>>
<<printThought "Maybe just a finger...">>
<</if>>
<</if>>
<</if>>
<br><br>
You follow her directions, moaning as your finger easily slides inside...
<<else>>
tracing the base of the <<=setup.getItemTypeName("plug")>>.<br>
<br>
"@@.npc_psychiatrist;Mmm, feel that plug in your cute bum, wiggle it around, isn't it such a delight having a full hole...@@"<br>
<br>
<<printThought "Wait... I never told her I was plugged...">><br>
<br>
Your concern melts away with how good following her direction feels. Your hungry hole milks the plug inside of it and you find yourself fantasising about something bigger...
<</if>>
<<case "lips">>
You reach up and trace a finger around your lips and tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> what you're doing.<br>
<br>
"@@.npc_psychiatrist;Mmmm, those beautiful, kissable lips — I can see them now, enhanced with a bit of makeup, so soft, so luscious... feel one of your fingers slide into your mouth, suck on it a little... doesn't that feel good?@@"<br>
<br>
You do as she says, and it does feel good.
<<if setup.getTotalValue("makeup") > 1>>
<<if setup.getCurrentMakeup() == "">>
You find yourself wishing you were wearing lipstick, and then your thoughts turn to other things...
<<else>>
Your lipstick turns you on even more, you moan and think
<</if>>
<<else>>
You find yourself fantasising about lipstick...
<</if>>
<<if setup.getTotalValue("penis") > 5>>
about wrapping your lips around a big, beautiful cock, taking it deep, leaving a perfect ring around its base...
<<elseif !$player.virgin.blowjob>>
how you've never sucked on anything like this before, but your lips tingle, your tongue licking your finger, you like this...
<<else>>
about that time you sucked a cock. It was bigger than your finger, and didn't make your lips tingle anything like how they are now, but what if it could?
<</if>>
<br><br>
You are breathing heavy as she seems to whisper in your ear.
<<case "face">>
You touch your face with both hands and tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> what you're doing.<br>
<br>
"@@.npc_psychiatrist;Yes, caress those beautiful cheeks, feel that soft, lovely skin. You have such a pretty face, a face that was made to be admired, to be caressed, to be kissed. Think about all of that as your fingers trace across your skin...@@"<br>
<br>
You do as she says, for a moment disconnecting, feeling like it is HER hands, not your own...
<<case "breasts">>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
You reach for your massive breasts, your fingers digging into the squishy fun-bags, your hands too small to even contain your full massive size.<br>
<br>
"@@.npc_psychiatrist;Feel those big, beautiful breasts. They may be heavy, but they don't weigh you down, they lift you up, making you the beautiful, buxom girl you want to be...@@"
<<case 'large'>>
Your hands struggle to contain your large breasts as <<=setup.getNpcName("npc_psychiatrist","formal")>> whispers encouragement.<br>
<br>
"@@.npc_psychiatrist;Aren't breasts so wonderful? So big. So soft... and yours are just so perfect on you, enhancing your wonderful, womanly shape and begging to be squeezed...@@"
<<case 'medium'>>
Your hands grope your breasts as <<=setup.getNpcName("npc_psychiatrist","formal")>> whispers encouragement.<br>
<br>
"@@.npc_psychiatrist;Aren't breasts so wonderful? Handfuls of joy to squeeze and fondle and admire, crowned by those perfect pink nipples...@@"
<<case 'small'>>
Your hands grope your small breasts as <<=setup.getNpcName("npc_psychiatrist","formal")>> whispers encouragement.<br>
<br>
"@@.npc_psychiatrist;Yes, feel your lovely little breasts — a perfect bit of shape to your chest, and oh-so-fun to play with...@@"
<<case 'none'>>
You play with your nipples as <<=setup.getNpcName("npc_psychiatrist","formal")>> whispers encouragement.<br>
<br>
"@@.npc_psychiatrist;Yes... pinch those cute, perky nipples. Think about them growing into big, beautiful breasts someday... or just enjoy them as they are — sensitive, small, and such a delight to suck on...@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
You bite your lip, squeezing harder, tweaking your nipples until it almost hurts, eager to feel it all...
<<case "vagina">>
You reach down between your legs to slide one finger into your wet pussy, then another. You gasp as you whisper what you're doing into the phone...<br>
<br>
"@@.npc_psychiatrist;Mmm, I'm so jealous, doesn't it feel so good, to slide in and out, in and out... every stroke making your worries leak away...@@"<br>
<br>
You let out a long, low sigh, you feel so good...
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.actions.face && $scene.actions.lips && $scene.actions.breasts && $scene.actions.bum && ($scene.actions.cage || ($scene.actions.vagina || !$player.body_ref.vagina) && ($scene.actions.penis || !$player.body_ref.penis))>>
"@@.npc_psychiatrist;Good, good, you've explored so much of your beautiful, wonderful body... and I can tell you're ready, ready to burst with joy at how amazing you are. So do it you lovely thing, cum — and release the last of your worries...@@"<br>
<br>
[<<moveTo "event_phone_therapy_5" "Yes!" 180>>]<br>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_5'>>">>]
<<else>>
"@@.npc_psychiatrist;That's it. You feel it, you love it — now keep exploring...@@"<br>
<br>
<<include "phoneTherapyFirstChoice">>
<</if>>
</div>/*#
#desc: psychiatrist phone therapy first — cum
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<<playerOrgasm>>
<<set $npc_psychiatrist.flags.phone_therapy.stage = 1>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
With one hand <<if $player.body.breastsize[0] > 0>>squeezing your breasts<<else>>tweaking your nipples<</if>> and the other thrust between your legs you can feel your orgasm fast approaching...<br>
<br>
"@@.npc_psychiatrist;You're doing so, so good, now repeat your mantra "I am beautiful and deserve to be happy — the world is lucky to have me in it." keep repeating it until you cum!@@"<br>
<br>
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
You gasp, you're so close...<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
Your hand strokes faster as you hump up into it, your thoughts turn to behind as you repeat your mantra and, for a moment, you imagine that you're fucking yourself... and that's when you cum.
<<else>>
You finger yourself faster and faster, rubbing your clit as you moan your mantra — and cum.
<</if>>
<<else>>
You rock your hips, <<if !setup.checkItemTypeWorn("plug")>>fingering your hole<<else>>working your plug<</if>> until you cum, leaking <<if setup.isCage()>>through your cage<<else>>past your belt<</if>> as, for a moment you find yourself loving its tight, restrictive grip...
<</if>>
<br><br>
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@" Your voice is a whisper as you go limp. You feel in a daze from the "supervised" exercise...<br>
<br>
"@@.npc_psychiatrist;Good job. I hope you're feeling much better, but if there is anything else troubling you, well... just bring it up at our next session. And if you have further issues otherwise well... do not hesitate to call...@@"<br>
<br>
You're still in a daze, having slipped off your couch to lie naked on the floor of your living-room as she hangs up.<br>
<br>
[<<moveTo "room_livingroom" "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist phone therapy non-stress
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.phone_therapy.last_call = $now>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You call <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and ask if you could get some more phone therapy...<br>
<br>
<<if $player.timebased.stress > 75>>
"@@.npc_psychiatrist;Of course. I can hear the strain in your voice, you really must take it easier, you do not want to let things progress to such a state...@@"
<<elseif $player.timebased.stress > 50>>
"@@.npc_psychiatrist;Mmm, I can hear the clouds of stress starting to close in on you. It is good that you called, of course I can take some time to help.@@"
<<elseif $player.timebased.stress > 25>>
"@@.npc_psychiatrist;Hmm, from the sound of your voice you are doing well, but an ounce of prevention is worth a pound of cure, right?@@"
<<else>>
"@@.npc_psychiatrist;Why, you don't sound stressed at all! Maybe you're doing some preventative maintenance? Very prudent, yes, I believe I can take some time for one of my favourite patients...@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;You can start by getting yourself comfortable — comfortable, and naked, of course.@@"<br>
<br>
[<<moveTo "event_phone_therapy_root" "Do as she says." 180>>]<br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist phone therapy first strip
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.phone_therapy.last_call = $now>>
<<removeAllClothing>>
<<set $scene.weak = false>>
<<set $scene.therapyOptions = ['bimbofication']>>
<<if $fetish.piss && (setup.hasThreshold('piss', 'hypnosis_piss', '5') || setup.hasThreshold('piss', 'hypnosis_piss', '7'))>>
<<set $scene.therapyOptions.push('piss')>>
<</if>>
<<if $fetish.cum && $player.timebased.milking.cream_storage > setup.mLtoCum(30) && (setup.hasThreshold('cum', 'hypnosis_cum', '5') || setup.hasThreshold('cum', 'hypnosis_cum', '7'))>>
<<set $scene.therapyOptions.push('cum')>>
<</if>>
<<if setup.hasThreshold('bondage', 'hypnosis_bondage', '5') || setup.hasThreshold('bondage', 'hypnosis_bondage', '7')>>
<<set $scene.therapyOptions.push('bondage')>>
<</if>>
<<if setup.hasThreshold('bdsm', 'hypnosis_bdsm', '5') || setup.hasThreshold('bdsm', 'hypnosis_bdsm', '7')>>
<<set $scene.therapyOptions.push('bdsm')>>
<</if>>
<<if setup.checkItemOwned('basic_dildo') && setup.checkItemOwned('large_dildo') && (setup.hasThreshold('penis', 'hypnosis_penis', '5') || setup.hasThreshold('penis', 'hypnosis_penis', '7'))>>
<<set $scene.therapyOptions.push('penis')>>
<</if>>
<<if setup.ownSlotTags('shoes',['boots']) && (setup.hasThreshold('foot', 'hypnosis_foot', '5') || setup.hasThreshold('foot', 'hypnosis_foot', '7'))>>
<<set $scene.therapyOptions.push('foot')>>
<</if>>
<<if $fetish.bestiality_hard>>
<<if $npc_psychiatrist.flags.bestiality.dog && $currentTasks.hasOwnProperty('task_dog_dildo') && $currentTasks.task_dog_dildo.finished>>
<<set $scene.therapyOptions.push('dog')>>
<</if>>
<<if $npc_psychiatrist.flags.bestiality.horse && $currentTasks.hasOwnProperty('task_horse_dildo') && $currentTasks.task_horse_dildo.finished>>
<<set $scene.therapyOptions.push('horse')>>
<</if>>
<</if>>
<<set $scene.therapy = $scene.therapyOptions.random()>>
<<switch $scene.therapy>>
<<case 'piss'>>
<<set $scene.weak = !setup.hasThreshold('piss', 'hypnosis_piss', '7')>>
<<case 'cum'>>
<<set $scene.weak = !setup.hasThreshold('cum', 'hypnosis_cum', '7')>>
<<case 'bondage'>>
<<set $scene.weak = !setup.hasThreshold('bondage', 'hypnosis_bondage', '7')>>
<<case 'bdsm'>>
<<set $scene.weak = !setup.hasThreshold('bdsm', 'hypnosis_bdsm', '7')>>
<<case 'penis'>>
<<set $scene.weak = !setup.hasThreshold('penis', 'hypnosis_penis', '7')>>
<<case 'foot'>>
<<set $scene.weak = !setup.hasThreshold('foot', 'hypnosis_foot', '7')>>
<<case 'dog'>>
<<set $scene.weak = !$npc_psychiatrist.flags.petplay_hypno.pup>>
<<case 'horse'>>
<<set $scene.weak = !$npc_psychiatrist.flags.petplay_hypno.pony>>
<</switch>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You lay back naked on the couch, hanging on each of the smooth, sultry words...<br>
<br>
<<if $scene.therapy == "bimbofication">>
<<if $npc_psychiatrist.hypnosis == 0>>
"@@.npc_psychiatrist;I do wish you would join me for my study sometime... it would give me much better insight into how best to soothe your mind, but... no matter, I still have something that will be very therapeutic for you.@@"
<<elseif $scene.therapyOptions.size == 1>>
"@@.npc_psychiatrist;I believe more enthusiastic participation in my study could help you as well, something to consider for the future, hmm?@@"
<</if>>
<<elseif $scene.weak>>
"@@.npc_psychiatrist;So this exercise is inspired by the results of your participation in my study — thank you again for your wonderful contribution to science, by the way. You seemed to struggle with this sort of scenario in the virtual world, but I think there is something there and I would like to do a bit of guided meditation that I think you will very much enjoy...@@"
<<else>>
"@@.npc_psychiatrist;So this exercise is inspired by the results of your participation in my study — thank you again for your wonderful contribution to science, by the way. You embraced this topic so strongly... well, I think going over it again more consciously will be just the thing to help soothe your anxiety.@@"
<</if>>
<br><br>
<<switch $scene.therapy>>
<<case "bondage">>
"@@.npc_psychiatrist;We're going to try a bit different technique today, find a roll of duct tape and tell me when you're ready.@@"<br>
<br>
You're a bit curious where this is going, but given how much she helped with your stress in the past you're willing to trust her, finding a large roll that you keep in a kitchen drawer "just in case." <br>
<br>
"@@.npc_psychiatrist;Okay, I know we always start these sessions by getting naked and unburdened, but today we are going to explore how applying restrictions and giving up freedom can actually help us let go and relax. I want you to fold your legs, then wrap the tape around so that your thighs and ankles are held together. Feel how each wrap presses against your skin, how losing the ability to walk, to even stretch your legs, how it lets you relax and focus on where you are...@@"<br>
<br>
[<<moveTo "event_phone_therapy_bondage_1" "Bind yourself as instructed." 600>>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;There is something in her voice that is irresistible...@@]
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_bondage_1'>>">>]
<</if>>
<<case "bdsm">>
"@@.npc_psychiatrist;Okay, we're going to try some special techniques for tension release today. To start, would you kindly fetch a glass of ice and a spatula from your kitchen.@@"<br>
<br>
[<<moveTo "event_phone_therapy_bdsm_1" "Do as she instructs." 600>>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;There is something in her voice that is irresistible...@@]
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_bdsm_1'>>">>]
<</if>>
<<case "cum">>
"@@.npc_psychiatrist;Alright, my dear, before we begin, would you kindly head for your fridge and pour yourself a small cup of cum — just a shotglass will do...@@"<br>
<br>
<<if !$npc_psychiatrist.flags.phone_therapy.cum>>
<<if $player.flags.mealplan.cum_unlocked>>
<<printThought "Is this why she mailed me cum?">>
<<else>>
<<printThought "Wait... how does she know I have cum in my fridge?">>
<</if>>
<br><br>
<</if>>
[<<moveTo "event_phone_therapy_cum_1" "Pour yourself a shot of cum..." 600>>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;There is something in her voice that is irresistible...@@]
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_cum_1'>>">>]
<</if>>
<<case "piss">>
"@@.npc_psychiatrist;Alright, my lovely. Would you kindly grab yourself a glass and then head to the shower.@@"
<br><br>
<<printThought "That seems random...">><br>
<br>
[<<moveTo "event_phone_therapy_piss_1" "Do as instructed." 600>>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;There is something in her voice that is irresistible...@@]
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_piss_1'>>">>]
<</if>>
<<case "dog">>
"@@.npc_psychiatrist;Alright, my dear. Would you kindly fetch your canine dildo? We're going to do a bit of primal-inspired therapy.@@"<br>
<br>
<<if !$npc_psychiatrist.flags.phone_therapy.dog>>
<<printThought "How did she guess I owned a canine dildo?">><br>
<br>
<</if>>
[<<moveTo "event_phone_therapy_dog_1" "Do as instructed." 600>>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;There is something in her voice that is irresistible...@@]
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_dog_1'>>">>]
<</if>>
<<case "horse">>
"@@.npc_psychiatrist;Alright, my dear. Would you kindly fetch your equine dildo? We're going to do a bit of primal-inspired therapy.@@"<br>
<br>
<<if !$npc_psychiatrist.flags.phone_therapy.dog>>
<<printThought "How did she guess I owned an equine dildo?">><br>
<br>
<</if>>
<br><br>
[<<moveTo "event_phone_therapy_horse_1" "Do as instructed." 600>>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;There is something in her voice that is irresistible...@@]
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_horse_1'>>">>]
<</if>>
<<case "penis">>
"@@.npc_psychiatrist;Alright, my dear. Today I have something that I just know you will love. You own some dildos, I presume, would you kindly fetch two of them? A normal sized one, and then a nice large one...@@"<br>
<br>
[<<moveTo "event_phone_therapy_penis_1" "Do as she says." 600>>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;There is something in her voice that is irresistible...@@]
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_penis_1'>>">>]
<</if>>
<<case "foot">>
"@@.npc_psychiatrist;Alright, my dear today we are going to do things a little different. I want you to grab your favourite pair of boots, and head to your computer. I'm going to be sending you some pictures and I want you to see them full-size, not on that small phonescreen.@@"<br>
<br>
[<<moveTo "event_phone_therapy_foot_1" "Do as she says." 600>>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;There is something in her voice that is irresistible...@@]
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_foot_1'>>">>]
<</if>>
<<case "bimbofication">>
<<if $npc_psychiatrist.hypnosis == 0>>
"@@.npc_psychiatrist;These stress issues you've been having? I would again recommend you join my VR Therapy study. It would be not just of immediate help, but it would give me data to aid me in better calibrating these phone sessions for maximal impact.@@"
<<elseif $npc_psychiatrist.hypnosis < 4>>
"@@.npc_psychiatrist;Hmm, I had hoped your time in my VR therapy trial would have helped with your day to day anxiety, perhaps once we have made it to some of the more advanced stages.@@"
<<elseif $scene.therapyOptions.length == 1>>
"@@.npc_psychiatrist;Hmm, unfortunately I haven't been getting any quality data from the latest VR therapy sessions... the next time you come in I would recommend keeping a more open mind...@@"
<<else>>
"@@.npc_psychiatrist;I know you've been seeing some very promising results in our VR therapy experiments, but I think bringing back a classic would be good for you today...@@"
<</if>>
<br><br>
She clears her throat and her voice becomes silky smooth. "@@.npc_psychiatrist;Now, would you kindly lay back and relax...@@"<br>
<br>
[<<moveTo "event_phone_therapy_bimbofication_1" "Do as she says." 600>>]<br>
<<if $fetish.hypnosis>>
[@@.link_locked;There is something in her voice that is irresistible...@@]
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_bimbofication_1'>>">>]
<</if>>
<<default>>
ERROR: unexpected scene.therapy <<=$scene.therapy>>
<</switch>>
</div>/*#
#desc: psychiatrist phone therapy bind legs
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 10 'normal' $INCOGNITO>>
<<applyStress -10>>
<<addItem 'taped_legs'>>
<<wearItem 'taped_legs' true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You do as <<=setup.getNpcName("npc_psychiatrist","formal")>> instructs and soon your legs are tightly taped up. You could still crawl, if you wanted, but it would certainly be awkward.<br>
<br>
Once you're done she continues "@@.npc_psychiatrist;Good, now bring your knees together and add more tape, feel how your entire lower body is now helpless. But that's fine, you're here to relax, so kneeling in one place is good, running around, worrying about going places... you don't need that distraction. By physically removing the option you can better focus on the moment.@@"<br>
<br>
<<if setup.getTotalValue("bondage") > 10>>
While certainly not as restrictive as you would prefer your bondage to be, you still find this position pleasant, her words of encouragement seeming to help augment the fact that it's technically self bondage, and you could get out at any time.
<<else>>
<<if setup.getTotalValue("bondage") > 5>>
You're really starting to enjoy the feeling of being bound and this is no different, her narration only serving to make things better...
<<else>>
You initially reflexively strain against your situation, but, as her soft words continue to wash over you, you relax, starting to enjoy the way your legs are pressed together, encased in the binding tape.
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Good, good, feel your lovely legs, how tightly they are bound, how just a little bit of tape has restricted you so much... now, obviously being by yourself restricts how much you can... restrict yourself, in a moment we're going to take things to another level by removing your ability to speak by taping over your mouth. Words are powerful, but that power can be such a burden. By removing the ability to speak you can let go of that concern, plus, well... silence is next to godliness...@@"<br>
<br>
Her soft voice makes the idea sound so appealing...<br>
<br>
"@@.npc_psychiatrist;Note that you'll want to tape all the way around your head — be careful of your beautiful hair, and layer it up. A simple strip across the lips is for movies, it doesn't really work — you want something tight, that you could struggle against and still feel secure. Of course, you aren't going to struggle, because you enjoy this, you like being bound. And since you like it so much... maybe you want to make it even more secure by stuffing something into your mouth first — a pair of panties are great for this, but it is your choice. Now, before we start I want your last words to be that mantra I taught you. As you wrap the tape around your head I want you to think about it, how there really is no sense saying anything else, how the gag grants you the gift of silence, removing even the possibility of saying anything to contradict...@@"<br>
<br>
<<if !$scene.weak>>
<<shinyText "Bondage is bliss." 0.0>>
<<shinyText "Restriction is rapture." 0.4>>
<<shinyText "Freedom is a burden." 0.8>>
<<shinyText "I want to be tied." 1.2>>
<<shinyText "I want to be bound." 1.6>>
<<shinyText "I want to surrender control." 2.0>>
<br>
<</if>>
<<if !$scene.weak && $fetish.hypnosis>>
[@@.link_locked;I want to be bound...@@]<br>
<<elseif setup.getTotalValue("bondage") > 15>>
[@@.link_locked;Take the less restrictive option? No...@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_bondage_2'>>">>]<br>
<</if>>
[<<moveTo "event_phone_therapy_bondage_2" "Go all the way with tape over a mouth-full of panties..." 1800 "<<set $scene.panties=true>>">>]<br>
[<<moveTo "event_phone_therapy_bondage_2" "Just apply tape." 600 "<<set $scene.panties=false>>">>]<br>
</div>/*#
#desc: psychiatrist phone therapy gag
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.phone_therapy.bondage>>
<<applyStress -10>>
<<else>>
<<applyStress -20>>
<</if>>
<<set $npc_psychiatrist.flags.phone_therapy.bondage = true>>
<<if $scene.panties>>
<<applyExperience 'bondage' 13 'very' $INCOGNITO>>
<<addItem 'tape_gag_panties'>>
<<wearItem 'tape_gag_panties' true>>
<<else>>
<<applyExperience 'bondage' 10 'normal' $INCOGNITO>>
<<addItem 'tape_gag'>>
<<wearItem 'tape_gag' true>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
You
<<if $scene.panties>>
stuff a pair of panties into your mouth, moaning softly before you begin wrapping tape over top.
<</if>>
begin wrapping tape over your lips and around your head. Avoiding getting it in your hair is a slight challenge, but one that more intrigues than irritates as you listen to <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> soft encouragement.<br>
<br>
"@@.npc_psychiatrist;Doesn't it feel good? To have that cool tape press over your lips, each wrap more and more secure. Certainly hiding those beautiful lips is a sacrifice, but doesn't it feel wonderful to touch the front of your face and feel nothing but smooth sameness from the nose down?@@"<br>
<br>
You moan through the gag, your nose whistling softly as you breathe faster.<br>
<br>
"@@.npc_psychiatrist;Okay, we're almost to the end of what you can safely apply on your own, but now I want you to add a final strip of tape over your eyes, embrace blindness just as you have being mute. See no evil. Speak no evil. Hear only my voice, telling you that you are wonderful and beautiful and full of potential...@@"<br>
<br>
You lay back on the couch, letting your arms go limps as you pretend they were bound as well, embracing the darkness, hearing only the sound of your heartbeat, your breaths — and <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> continuing to shower you with compliments.<br>
<br>
Several minutes pass in bound bliss when <<=setup.getNpcName("npc_psychiatrist","formal")>> speaks a little louder, her voice still tender, but losing the pure honey seduction tone it had earlier. "@@.npc_psychiatrist;There, I think that will do for today. Your final challenge will of course, be to free yourself. You can remove your blindfold now but, as you crawl through your house to find a pair of scissors to help with the rest well... I hope you learn an even greater appreciation for what bondage can give you. Goodbye.@@"<br>
<br>
She hangs up.<br>
<br>
Restricted to kind of worming forward it takes you a little time to make it to the kitchen and find some safety shears, kneeling in front of a drawer as you crane your eyes to see what you're looking for.<br>
<br>
With tool in hand removing the tape is simple, your sweat making it peel away without much difficulty and you find yourself thinking of a butterfly emerging from a cocoon, and you rise to your feet feeling a renewed sense of beauty and confidence.<br>
<br>
<<if $scene.panties>>
[<<moveTo "room_kitchen" "Spit out your panties and do something else." 60 "<<set $currentcall = false>><<removeItem 'taped_legs' true>><<deleteItem 'taped_legs'>><<removeItem 'tape_gag_panties' true>><<deleteItem 'tape_gag_panties'>>">>]
<<else>>
[<<moveTo "room_kitchen" "Do something else." 60 "<<set $currentcall = false>><<removeItem 'taped_legs' true>><<deleteItem 'taped_legs'>><<removeItem 'tape_gag' true>><<deleteItem 'tape_gag'>>">>]
<</if>>
</div>/*#
#desc: psychiatrist phone therapy bdsm — sensation play
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 5 'normal' $INCOGNITO>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You fetch the odd combination of items from the kitchen and wait to find out what to do next.<br>
<br>
"@@.npc_psychiatrist;Today we are going to play with sensation, I want you to start by rubbing and ice cube over you body. See how the coldness is interesting, but then turns to pain and numbness, how different parts of your body can be more or less sensitive.@@"<br>
<br>
You do as she instructs, shivering slightly even as her words make things almost sensuous.<br>
<br>
"@@.npc_psychiatrist;Good, good... the first ice cube is probably mostly melted by now, no match for your hot, sexy body. So grab a fresh cube, but, while you continue to experiment, use your other hand however you like, to grope or stroke or tease, see how the combination is more potent than either action alone.@@"<br>
<br>
Your heart is racing faster as you continue to follow along, hanging on her every word as sensation moves up and down your body...<br>
<br>
"@@.npc_psychiatrist;A third ice cube now, but now your other hand should pinch, feel your sharp nails digging into your tender flesh, pinching your nipples to the point of pain... and then soothe things away with the cool, comforting ice. The pain isn't scary, it is just another spice to the dish...@@"<br>
<br>
You're breathing hard now, the third cube feeling like it melts even faster than the others as your pulse pounds.<br>
<br>
"@@.npc_psychiatrist;Good job, I bet you're feeling your senses heightened, hot and cold, pleasure and pain, blending together until you struggle to tell them apart. Now we're going to push things a step further. Would you kindly move down onto your hands and knees and use that spoon to spank yourself, hard. I want to hear the crack of every blow as you turn that sexy booty red. It may sound scary but trust me it will help you let go of so much of your mental anguish...@@"<br>
<br>
<<if !$scene.weak>>
<<shinyText "I exist to serve." 0.0>>
<<shinyText "Obedience is my greatest pleasure." 0.4>>
<<shinyText "Control should be surrendered." 0.8>>
<<shinyText "To be collared and claimed is my goal." 1.2>>
<<shinyText "I was meant to be owned." 1.4>>
<<shinyText "I love being a slave!" 1.6>>
<br>
<</if>>
<<if !$scene.weak && $fetish.hypnosis>>
[@@.link_locked;I exist to serve...@@]<br>
<<elseif setup.getTotalValue("bdsm") > 15>>
[@@.link_locked;Resist? No...@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_bdsm_2'>>">>]<br>
<</if>>
[<<moveTo "event_phone_therapy_bdsm_2" "Do as she says and spank yourself." 600>>]
</div>/*#
#desc: psychiatrist phone therapy bdsm — spank self
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.phone_therapy.bdsm>>
<<applyStress -10>>
<<else>>
<<applyStress -20>>
<</if>>
<<set $npc_psychiatrist.flags.phone_therapy.bdsm = true>>
<<set _skill = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _skill 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get down on all fours and then take the spoon in one hand. You look at it for a moment,
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
you doubt it will hurt as much as a pain-slut like you prefers...
<<else>>
you doubt it will hurt as much as other things you've had done to you...
<</if>>
But right now you're eager for anything...
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
certainly you've been spanked before, but to do it to yourself — what does that say about you?
<<else>>
the sensation play was one thing, but how will it feel to spank yourself?
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Go on, spank that <<if $fetish.sissy>>sissy<<else>>cute<</if>> ass, spank away all your frustrations...@@"<br>
<br>
You do as she instructs <<if setup.getTotalValue("bdsm") > 10>>moaning<<else>>gasping<</if>> as the rigid spoon THWACK's against your bare bottom.<br>
<br>
"@@.npc_psychiatrist;Good. Again. Harder, turn that cute booty red, beat all your frustrations out on yourself...@@"<br>
<br>
You keep going, feeling how the sensation changes as your cheeks reddens, how the second blow to the same spot feels different from the first. The whole while <<=setup.getNpcName("npc_psychiatrist","formal")>> encourages you on; even as tears stream down your face — of joy or pain, you can't even tell.<br>
<br>
Eventually it is your arm that gives out, the awkward angle resulting in a different sort of ache in your effort to give your sore bottom everything it can take.<br>
<br>
You are panting, in a strange, euphoric state as <<=setup.getNpcName("npc_psychiatrist","formal")>> brings things to a closed.<br>
<br>
"@@.npc_psychiatrist;Very good, you have earned a rest... though I imagine you'll be reminded of this proud moment every time you sit down...@@"<br>
<br>
She hangs up and you catch your breath, feeling serene and relax as the stinging pain fades to a dull, almost comforting, ache.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist phone therapy cum
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 5 'normal' $INCOGNITO>>
<<set $player.timebased.milking.cream_storage -= setup.mLtoCum(30)>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You pour out the shot-glass worth of cum, holding it delicately like some sort of prize, as you sit back down on the couch.<br>
<br>
"@@.npc_psychiatrist;Okay, you have that delicious glass of cum? Good, good, but cum is more than just something to guzzle down — think of all the pleasure that went in to creating that precious shot-glass full... no, you want to savour this, to drink it warm like it was made, not cold and flat. I want you to clutch the glass in your hands, let your body heat warm your prize once again and, while you wait, bring it to your nose, smell that rich, earthy aroma, think about where it came from...@@"<br>
<br>
You do as she states,
<<if setup.getTotalValue("cum") > 10>>
breathing deep the
<<if setup.getTotalValue("cum") > 15>>
breathing deep the heavenly scent as you struggle to resist the urge to just pound back the delicious salty shot.
<<else>>
wonderful scent as you eagerly anticipate the moment that it is warm enough to drink.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
finding the scent disturbingly alluring as you question your feelings about the prospect of drinking it...
<<else>>
the pungent scent is disgusting... right?
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Good, good, I bet it's warming up nicely, think about how good it will feel in your mouth, that thick, creamy cum rolling over your tongue, coating your throat. In a way, it is the essence of life, a product of pure pleasure... and it's yours, imagine it as a potion and how drinking it down will erase your worries like magic, but it's more than the taste, isn't it? Why don't you dip a finger into it, just a little, just enough to feel it against your skin, then run it down your face, imagine how it would feel be at that centre of joy, to feel an explosion of literal ecstasy splashing over you... no paint your lips and lick that finger clean, enjoying that hint of anticipation...@@"<br>
<br>
You shudder as you obey, the <<getWordCum>> is warming fast, thick and strong, slick as you rub it into your cheeks...<br>
<br>
"@@.npc_psychiatrist;Wonderful. You're so close. You've worked so, so hard, and you deserve a reward, a wonderful reward for a beautiful, lovely, amazing person... and now it's time, all you have to do is bring the glass to your lips and tilt it back and take it, take it all for yourself. You deserve it...@@"<br>
<br>
<<if !$scene.weak>>
<<shinyText "Cum is love..." 0.0>>
<<shinyText "Cum is life...!" 0.4>>
<<shinyText "Give me that creamy goodness." 0.8>>
<<shinyText "I love cum." 1.2>>
<<shinyText "Jizz brings me joy." 1.6>>
<<shinyText "Semen is scrumptious." 2.0>>
<<shinyText "Feed me cum." 2.4>>
<<shinyText "Cover me in cum." 2.8>>
<<shinyText "Drown me in dick milk." 3.2>>
<br>
<</if>>
<<if !$scene.weak && $fetish.hypnosis>>
[@@.link_locked;Cum is love...@@]<br>
<<elseif setup.getTotalValue("cum") > 15>>
[@@.link_locked;Deny my thirsts? No...@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_cum_2'>>">>]<br>
<</if>>
[<<moveTo "event_phone_therapy_cum_2" "Yes... give me that scrumptious treat." 600>>]
</div>/*#
#desc: psychiatrist phone therapy drink cum
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.phone_therapy.cum>>
<<applyStress -10>>
<<else>>
<<applyStress -20>>
<</if>>
<<set $npc_psychiatrist.flags.phone_therapy.cum = true>>
<<applyExperience 'cum' 15 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tilt the glass back and let the cum flow across your tongue.
<<if setup.getTotalValue("cum") > 10>>
breathing deep the
<<if setup.getTotalValue("cum") > 15>>
You close your eyes, you're in heaven.
<<else>>
You close your eyes, not wanting to miss a single note of rich, salty flavour.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
You close your eyes. You're really doing this, and it tastes... good?
<<else>>
You close your eyes, it's bitter and salty, but not as bad as you were anticipating.
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Mmmmm, savour that prize, move it around your mouth, feel that unique, wonderful texture, the taste of orgasm... and then swallow it, feel that bottled ecstasy rushing through you.@@"<br>
<br>
You gulp, and then moan with pleasure. "@@.npc_psychiatrist;I heard that. Wonderful. But you aren't done, lick that glass clean, leave behind not a single drop. All that creamy goodness is yours, you earned it all, so take it, swallow it all!@@"<br>
<br>
You continue to lick, your tongue searching out every last trace as you hold your breath.<br>
<br>
Slowly, you put the glass down to discover you missed <<=setup.getNpcName("npc_psychiatrist","formal")>> ending the call. You lick your lips and put your phone away.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist phone therapy piss
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You swing through the kitchen for a glass and then stand in the shower, carefully putting your phone on speaker next to the sink.<br>
<br>
"@@.npc_psychiatrist;Alright, my dear, today we're going to come at your stress from a different direction, by taking something that most think of negatively and see how that isn't such the case. Now, I want to warn you that some of what I tell you to do may seem extreme, but I promise that it is all totally safe and, like I always say, you need to be willing to experiment. Think about your favourite food — there was a time when you had never even tasted it. Imagine how much poorer your life would have been if you had resisted that opportunity. So, too, with other things, we must always keep ourselves open...@@"<br>
<br>
<<printThought "Hmm... I guess that makes sense...">><br>
<br>
"@@.npc_psychiatrist;Now, I want you to take that glass, and I want you to relieve yourself into it — fill it with your personal strain of fresh lemonade. And, while you're doing so, focus on the sound, that pleasant trickle of liquid...@@"<br>
<br>
You do as she says, your bladder easily relaxing and dispensing over half a glass of pale yellow piss...<br>
<br>
"@@.npc_psychiatrist;Now, you find yourself holding a glass of your own piss. Perhaps you think this curious? But, really, is it so different than a moment ago when you were holding it inside of you? Certainly there is the smell, but is it really so bad? Pour a little bit down your leg... no different than peeing in the shower normally... now try a bit higher, feel that warm, fresh liquid running down your chest and all the way down to the drain.@@"<br>
<br>
You do as she says, really, it feels little different from any other liquid...<br>
<br>
"@@.npc_psychiatrist;I want you to think about that drain — about how open it is, accepting whatever flows down into it. It does not complain, it does not stress, in fact, when it clogs the solution may well be to force more material down it faster to clear the blockage. We are going to do the same, here. You are stressed, yes? Well, now it is time to clear that blockage, to let things wash over you. I want you to look up, take the rest of your glass and pour it over your face. If you are up for going even further, be a good little drain and open your mouth...@@"<br>
<br>
<<if !$scene.weak>>
<<shinyText "Yes. I am not a Person. I am a Toilet." 0.8>>
<<shinyText "I have no desires but to be a Toilet Slave." 1.6>>
<</if>>
<<if !$scene.weak && $fetish.hypnosis>>
[@@.link_locked;I am not a Person. I am a toilet...@@]<br>
<<elseif setup.getTotalValue("piss") > 15>>
[@@.link_locked;Deny my thirsts? No...@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_piss_2'>>">>]<br>
<</if>>
[<<moveTo "event_phone_therapy_piss_2" "Tilt back your head, open your mouth, and pour <<getWordPiss>> over yourself..." 600 "<<set $scene.open=true>>">>]<br>
<<if setup.getTotalValue("piss") > 15>>
[<<moveTo "event_phone_therapy_piss_2" "Tilt back your head, and pour <<getWordPiss>> over your face..." 600 "<<set $scene.open=false>>">>]
<<else>>
[@@.link_locked;Drown me in <<getWordPiss>>...@@]<br>
<</if>>
</div>/*#
#desc: psychiatrist phone therapy piss
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.phone_therapy.piss>>
<<applyStress -10>>
<<else>>
<<applyStress -20>>
<</if>>
<<set $npc_psychiatrist.flags.phone_therapy.piss = true>>
<<if $scene.open>>
<<applyExperience 'piss' 11 'very' $INCOGNITO>>
<<else>>
<<applyExperience 'piss' 6 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.open>>
You open your mouth, tilt your head back and pour half a glass of your own warm, fresh piss onto your face.<br>
<br>
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
It is bitter and delicious, and you eagerly drink down as much as you can, even as you adore the feeling of the rest running down your body.
<<else>>
You swallow some of the acidic brew and let the rest flow down, warm and wonderful.
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
You cough, swallowing a little of the bitter brew experimentally before you let the rest flow down.
<<else>>
You cough at the disgusting taste as the rest flows down over you.
<</if>>
<</if>>
<<else>>
You tilt your head back... and pour half a glass of your own warm, fresh piss onto your face, feeling it flow over you...
<</if>>
<br><br>
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
<<printThought "Yes... I am a human toilet...">>
<<else>>
<<printThought "Yes... I want to be a human toilet...">>
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
<<printThought "Am I... turned on by being a human toilet?">>
<<else>>
<<printThought "Why am I acting like a human toilet?">>
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Feel it washing away, taking with it the rest of your waste... all swirling down that drain, that happy little drain...@@"<br>
<br>
You listen as the final drops dip off of you and flow down. "@@.npc_psychiatrist;I am proud of your, <<=$player.first_name>>. You have done very well today. Now, why don't you take a shower and head out into the world anew, happy and ready for anything.@@"<br>
<br>
You reach for the faucet to rinse off.<br>
<br>
[<<moveTo "room_livingroom" "Finish your shower and do something else." 60 "<<set $currentcall = false>><<include 'cleanPlayer'>>">>]
</div>/*#
#desc: psychiatrist phone therapy dog
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Alright, I am sure you are eager to feel that knot inside of you, but before we get to that point I want you to think about what it represents. The reason dogs have knots is to lock together. They do not have hands like we do, so evolution has provided another method by which the bucking of a bitch and heat will not detach her from her stud. The thing to remember, as a bitch in heat yourself... is that you don't want to escape, you want that big, thick cock inside of you, but the sensations become to much, you flail too hard... and things slip away. So, too, in life, our reactions can cause us to miss out on the thing we really want. So, my dear, sweet, hot and horny bitch... I want you to sit back on that beautiful dildo and let it lock inside of you. Thrash and moan and let out all your frustrations, safe in the knowledge that you will be knotted and filled through to the end...@@"<br>
<br>
<<if !$scene.weak>>
<<shinyText "Animal friends are best friends." 0.0>>
<<shinyText "I need to be knotted." 1.0>>
<<shinyText "Fill me with canine cum." 2.0>>
<<shinyText "I was born to be a bitch." 3.0>>
<br>
<</if>>
<<if !$scene.weak && $fetish.hypnosis>>
[@@.link_locked;I need to be knotted.@@]<br>
<<elseif setup.getTotalValue("bestiality") > 7>>
[@@.link_locked;I am a bitch in heat...@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_dog_2'>>">>]<br>
<</if>>
[<<moveTo "event_phone_therapy_dog_2" "Knot your ass..." 600>>]
</div>/*#
#desc: psychiatrist phone therapy dog
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.phone_therapy.dog>>
<<applyStress -10>>
<<else>>
<<applyStress -20>>
<</if>>
<<set $npc_psychiatrist.flags.phone_therapy.dog = true>>
<<applyExperience 'bestiality' 3 'normal' $INCOGNITO>>
<<set _dildoSize = setup.getItemObj('dog_dildo').size>>
<<if setup.getTotalValue("anal") > 3>>
<<applyExperience 'anal' _dildoSize 'very' $ALONE>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>remove your plug, and <</if>>slide your dildo into your ass. You gasp as the knot slots into place and <<=setup.getNpcName("npc_psychiatrist","formal")>> expresses her approval.<br>
<br>
"@@.npc_psychiatrist;Mmm, I heard that pop. Isn't it so wonderful, to be knotted full? To know that you can thrash around and release all that pent up energy... and that big dog-cock will stay inside of you the whole time? Do it. Revel in it. You are a bitch in heat and your dream has come true — you are being knotted and fucked, what could your prior concerns matter when you know such joy? Ride that cock and let the rest go. IT doesn't matter. It never did, all that matters is you, and your hole, and being knotted full...@@"<br>
<br>
You moan, bucking your hips writhing on the ground and give yourself over completely to the sensations <<=setup.getNpcName("npc_psychiatrist","formal")>> has described. Somewhere along the way you cum, but you keep going, fucking yourself upon the big dog dick until the point of exhaustion, lying back and sighing in relief as you close your eyes.<br>
<br>
"@@.npc_psychiatrist;Good bitch,@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> whispers in approval before hanging up. You lay there a little longer, catching your breath before you slowly remove the wonderful dildo from your ass and clean up.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist phone therapy horse
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You fetch your big, beautiful "Mare Breaker" dildo, heart already pumping in anticipation as you wait to see what <<=setup.getNpcName("npc_psychiatrist","formal")>> will have you do to "relieve" your stress.<br>
<br>
"@@.npc_psychiatrist;Okay, you've got that big horse-cock now, don't you? I want you to hold it with your hands, move up and down... doesn't it feel so big, so impressive... a little intimidating? But also... enticing? I want you to think of it like the challenges in your life — big, and, to some, insurmountable, but to you? No, you know you can take it, you've done it before, and you'll do it again. So come on, my beautiful mare, ride that stallion, and as you do, remember that you can do ANYTHING. You are powerful and full — of potential, and so much more...@@"<br>
<br>
<<if !$scene.weak>>
<<shinyText "Four-legged friends are best friends." 0.0>>
<<shinyText "Pony girls are the luckiest." 1.0>>
<<shinyText "Mount me like a mare." 2.0>>
<<shinyText "I live for horse cock." 3.0>>
<br>
<</if>>
<<if !$scene.weak && $fetish.hypnosis>>
[@@.link_locked;I live for horse cock.@@]<br>
<<elseif setup.getTotalValue("bestiality") > 12>>
[@@.link_locked;Mount me like a mare.@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_horse_2'>>">>]
<</if>>
[<<moveTo "event_phone_therapy_horse_2" "Ride that horse cock..." 600>>]
</div>/*#
#desc: psychiatrist phone therapy horse
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.phone_therapy.horse>>
<<applyStress -10>>
<<else>>
<<applyStress -20>>
<</if>>
<<set $npc_psychiatrist.flags.phone_therapy.horse = true>>
<<applyExperience 'bestiality' 7 'normal' $INCOGNITO>>
<<set _dildoSize = setup.getItemObj('horse_dildo').size>>
<<if setup.getTotalValue("anal") > 5>>
<<applyExperience 'anal' _dildoSize 'very' $ALONE>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You position yourself over the Mare Breaker, admiring its girth, its height coming up nearly to your knee. You <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>remove your plug and <</if>>squat down.<br>
<br>
You moan as your weight helps push the massive horse-cock into your ass and "@@.npc_psychiatrist;Take it, take it deep. Fill yourself with so much cock there is no room for stress. From the moment those balls press against you, know that you ARE a mounted mare — a glorious beast, a creature of unfathomable passion and beauty. Mere human concerns? They are trivial, for you have attained a level of gaping pleasure known to but a few, and thus have moved beyond minor concerns.@@"<br>
<br>
You gasp as you slide past the thickest potion of the cock, going all the way down to the floor as you moan. "@@.npc_psychiatrist;Perfection. Now bounce, bounce my beautiful pony! Bounce those worries away!@@"<br>
<br>
You do as she instructs, moaning and humping and fucking, the horse-cock deep inside you, feeling so wonderful with each ramming thrust, its thick fulfillment making you cum without making you stop. Only when your legs turn to rubber and you slip do things finally stop, as you fall back. Your squeezing hole clenches so hard it shoots the dildo out across the floor.<br>
<br>
"@@.npc_psychiatrist;What a ride... until next time, my dear.@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> states before hanging up and leaving you to catch your breath. It takes several minutes to collect yourself, to regain control of your legs, before you rise to your feet and clean up.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist phone therapy penis
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You retrieve your two dildos, eyeing them in anticipation as you wait for <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> instruction.<br>
<br>
"@@.npc_psychiatrist;So, I can imagine you now... one cock in each hand, lusting over the thought of feeling them pounding inside of you, but today is about exercising restraint, about finding calm even in the face of intensity. In real life, that means relaxing even when things become stressful but here, now... it means resisting that urge to fuck yourself and instead focus on the next best thing — on worshipping the two silicone samples of perfection before you.@@"<br>
<br>
<<if !$scene.weak>>
<<shinyText "One, two, three, four, I'll suck your cock and beg for more!" 0.0>>
<<shinyText "Five, six, seven, eight, licking cock is really great!" 0.4>>
<<shinyText "Eight, seven, six, five, sucking cock just makes me thrive." 0.8>>
<<shinyText "Four, three, two, one, fuck my ass it's really fun!" 1.2>>
<<shinyText "One, three, five, nine, need a hole? Please use mine!" 1.6>>
<<shinyText "Two, four, six, eight, my lust for cock I'll never sate!" 2.0>>
<<shinyText "One, three, six, nine, both holes filled is really fine!" 2.4>>
<<shinyText "One, two, three, four, I'm nothing but a <<if $fetish.sissy>>Sissy<<else>>Sexy<</if>> WHORE!" 2.8>>
<<shinyText "Five, six, seven, eight, fuck me now, don't make me wait!" 3.2>>
<br>
<</if>>
<<if !$scene.weak && $fetish.hypnosis>>
[@@.link_locked;My lust for cock I'll never sate...@@]<br>
<<elseif setup.getTotalValue("penis") > 15>>
[@@.link_locked;Reject cock? Never...@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_penis_2'>>">>]<br>
<</if>>
[<<moveTo "event_phone_therapy_penis_2" "Worship as instructed." 600>>]
</div>/*#
#desc: psychiatrist phone therapy penis
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.phone_therapy.penis>>
<<applyStress -10>>
<<else>>
<<applyStress -20>>
<</if>>
<<set $npc_psychiatrist.flags.phone_therapy.penis = true>>
<<set _skill = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _skill 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You shudder slightly and bring the first dildo to your face. Not to pound it into your throat as you do desperately desire, but to kiss it gently, to rub it against your cheek, to feel the realistic veins...<br>
<br>
"@@.npc_psychiatrist;Feel that anticipation, channel it. Certainly you will have a cock pounding into you someday, but the knowledge that it WILL happen means that you do not need to be desperate for it to happen now. Thus is it with other things in life — whatever stresses you have... they are transitory, and you know that. You are strong and clever and beautiful... able to handle whatever concerns you face and more beside. So do not worry. Embrace the moment — right now that means embracing those twin examples of phallic perfection, but as you take joy in that, so, too, embrace the greater moment, and let bothersome worry pass over you.@@"<br>
<br>
You only half-hear her words, instead merely enjoying the soothing tempo of her voice as you rub the cocks against you, feeling the artificial balls against your chin, thick veins against your cheek.<br>
<br>
Under <<=setup.getNpcName("npc_psychiatrist","formal")>> direction you make sure to show both members equal attention — just because one is bigger does not make it better, "@@.npc_psychiatrist;Similarly, just because a concern seems great, does not mean you cannot handle it like any other. Just as all cocks are equal in your adoration, so, too do you address concerns, not blowing one up in importance over minor differences, but accepting it as it comes, addressing it as appropriate, and then moving on to the next cock, or concern.@@"<br>
<br>
You nod, rubbing lovingly against your dildos, wishing they were real, but happy just to feel that wonderful shape between your hands, rubbing and worshipping for several more minutes as you feel your stress fade away and realise that, somewhere in that time, <<=setup.getNpcName("npc_psychiatrist","formal")>> had quietly ended the call.<br>
<br>
You smile and stow your dildos with a smile on your face.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist phone therapy foot
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You sit down at your computer and <<=setup.getNpcName("npc_psychiatrist","formal")>> shares a picture, a picture of a foot. A beautiful foot tipped with cute toes...<br>
<br>
"@@.npc_psychiatrist;It's that just lovely? Here, have another one.@@" She states over the phone as another picture comes up, showing what could be the twin of the first foot, the combined pair being somehow even more lovely.<br>
<br>
"@@.npc_psychiatrist;Aren't those feet just beautiful?@@" She adds as you nod, both feet on screen, now. "@@.npc_psychiatrist;Don't you want to just kiss them and worship them?@@" You nod again.<br>
<br>
"@@.npc_psychiatrist;Wonderful, wonderful... and now...@@" The images start to zoom out as you realise that that are just a part of the same image... an image of you, barefoot and bound to some sort of seated contraption. You gasp in surprise.<br>
<br>
"@@.npc_psychiatrist;See? It was you, it was you all along! You had the cute feet! The cute everything, isn't that lovely? Now, since we are both in agreement that you have such wonderful, lovely feet... it's time to reward them, I want you to slip into those boots you brought with you, feel them sliding up your legs, looking so, so sexy...@@"<br>
<br>
<<if !$scene.weak>>
<<shinyText "I love heels." 0.0>>
<<shinyText "Higher is better." 0.4>>
<<shinyText "Steeper is sweeter." 0.8>>
<<shinyText "Wear the heels, worship the heels." 1.2>>
<<shinyText "Kiss the toes." 1.6>>
<<shinyText "Rub the heels." 2.0>>
<<shinyText "Massage the arches!" 2.4>>
<<shinyText "At someone's feet is where I belong..." 2.8>>
<br>
<</if>>
<<if !$scene.weak && $fetish.hypnosis>>
[@@.link_locked;Wear the heels, worship the heels.@@]<br>
<<elseif setup.getTotalValue("foot") > 15>>
[@@.link_locked;I could never say no to feet...@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_abort" "Actually... you don't want to do this." 60 "<<set $scene.resume='event_phone_therapy_foot_2'>>">>]<br>
<</if>>
[<<moveTo "event_phone_therapy_foot_2" "Yes, you love feet, and you love your feet! Put on the boots." 600>>]
</div>/*#
#desc: psychiatrist phone therapy foot
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.phone_therapy.foot>>
<<applyStress -10>>
<<else>>
<<applyStress -20>>
<</if>>
<<set $npc_psychiatrist.flags.phone_therapy.foot = true>>
<<set _skill = setup.getTotalValue("foot")>>
<<applyExperience 'foot' _skill 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You bite your lip and smile as you reach for your boots, pulling them up your leg and marveling at how good they look, and feel.<br>
<br>
"@@.npc_psychiatrist;Doesn't that feel so good? How some feet pics and a pair of boots can lift ones spirits so? Remember — it was all you, the whole time. Your feet, your boots. In the future, when you feel like life is trampling you down, well... think of the feet, beautiful, beautiful feet. The boot that is stomping your face? Well... who says it can't be a sexy one, one that you WANT to lick, one that's stomping you because you asked for it.@@"<br>
<br>
You're lost in thought as she quietly ends the call. You sit for a few minutes before putting things away — as nice as the boots feel, wearing them without socks is probably not a good long-term plan.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: psychiatrist phone therapy bimbofication
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You lay back and try to relax, focusing on <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> soothing voice.<br>
<br>
"@@.npc_psychiatrist;Now, we're going to do a little variant of something you've done before. When I tell you to, I want you to repeat your mantra — you know the one, that oh-so-truthful statement "I am beautiful and deserve to be happy — the world is lucky to have me in it." In between I'm going to talk about some things, maybe spark some ideas and you... you just relax and enjoy. Now, if you understand, how about you tell me those wonderful words.@@"<br>
<br>
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@" You state softly, feeling a tingle as they pass your lips.<br>
<br>
"@@.npc_psychiatrist;So true. So wonderfully true, and every time I tell you to repeat, I want you to say them again, to show that you've heard my words and understand. Repeat.@@"<br>
<br>
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
"@@.npc_psychiatrist;Good, good, now back to happiness. That happiness that you deserve... what if you could have more? What if you could get rid of all this nasty stress and replace it with joy? It's not hard. Sure, work will drag and life can come at you fast, but you need to focus on what's important, what makes you happy. Repeat.@@"<br>
<br>
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
"@@.npc_psychiatrist;Good. Good. Now I want to think about pure pleasure, tender lips kissing you, a cock in every hole. Fucking and being fucked, perfect, hedonistic bliss... repeat.@@"<br>
<br>
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
"@@.npc_psychiatrist;Perfection. So beautiful, so wonderful. And it can all be yours... all you have to do is surrender, let your inner bimbo out, let it push aside all those annoying worries and concerns. Repeat.@@"<br>
<br>
<<if !$scene.weak>>
<<shinyText "Brainwashing is good for me. My mind is happy, blank and empty." 0.0>>
<<shinyText "Good <<if $fetish.sissy>>sissies<<else>>girls<</if>> practice every day." 0.5>>
<<shinyText "Bimbos are my role models." 1.0>>
<<shinyText "I act like a bimbo." 1.5>>
<<shinyText "Practice until it becomes natural." 2.0>>
<<shinyText "Brainwashing is good for me. My mind is happy, blank and empty." 2.5>>
<br>
<</if>>
<<if !$scene.weak && $fetish.hypnosis>>
[@@.link_locked;My mind is happy, blank and empty...@@]<br>
<<elseif setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;Bimbos are my role models. I act like a bimbo.@@]<br>
<<else>>
[<<moveTo "event_phone_therapy_abort" "This is going too far..." 60 "<<set $scene.resume='event_phone_therapy_bimbofication_2'>>">>]<br>
<</if>>
[<<moveTo "event_phone_therapy_bimbofication_2" "I am beautiful and deserve to be happy — the world is lucky to have me in it." 600>>]
</div>/*#
#desc: psychiatrist phone therapy bimbofication
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.phone_therapy.bimbofication>>
<<applyStress -10>>
<<else>>
<<applyStress -20>>
<</if>>
<<set $npc_psychiatrist.flags.phone_therapy.bimbofication = true>>
<<set _skill = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _skill 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
"@@.npc_psychiatrist;Such a good girl. The thing to remember is that being a bimbo can be a choice, and not a negative one. You can choose happiness, being carefree, use it as a shield. You don't have to be dumb or foolish, you can just save the effort of thinking for when it really matters — and recognise that, so much of the time, it doesn't. Or that rather than letting your thoughts dwell on concerns, they can focus on solving problems... problems like not having enough sex. Repeat.@@"<br>
<br>
"@@.pc;I am beautiful and deserve to be happy — the world is lucky to have me in it.@@"<br>
<br>
"@@.npc_psychiatrist;Yes you are. Now I want you to keep that in mind going forward, as well as the rest of the things I've told you. Think about what things in your life really MATTER, make sure to take as much enjoyment — by which I mean sex, as you can find, and the rest, well... don't stress about it.@@"<br>
<br>
She hangs up, paradoxically leaving you with quite a bit to think about...<br>
<br>
<<printThought "That was odd... though I do feel a bit calmer...">><br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: first session talk to psychiatrist about your manager
#status: FINISHED 0.4.0.0
#ignore_spell: waaait,aaaanyway
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You try to talk about <<=setup.getNpcName('npc_manager', 'formal')>> and her form of disciplinary measures, but get interrupted by <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> rather brusque comment.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, let me stop you here for a moment. You are lucky you're talking to me about this, since there is a confidentiality obligation between the two of us. But I know your contract, since I had to read it as a part of the preparation for your evaluation. Just to make sure you understand: you are not allowed to talk to anyone outside your company about this, other than me, of course, and even within the company you are only allowed to talk to <<=setup.getNpcName('npc_manager', 'other')>> or to her superiors. Do you understand?@@"<br>
<br>
You nod slightly, still slightly confused about the rather unexpected outburst.<br>
<br>
"@@.npc_psychiatrist;Good. Please continue then.@@"<br>
<br>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the first disciplinary measures you received,
<<if $player.flags.firstDayPerfect>>
even though you did everything exactly as <<=setup.getNpcName('npc_manager', 'formal')>> ordered you to do the day before. That the first disciplinary measure was mandatory, which you thought was a little more then unfair.
<<else>>
which was mainly your own fault, since you did ignore the orders she had given you the day before.
<</if>>
<<if $player.flags.firstDPassissy>>
<<switch $npc_manager.flags.first_spank>>
<<case 'cotton_panties'>>
Getting spanked while wearing your ex-girlfriend's underwear, was something you did not think would ever occur to you.<br>
<br>
"@@.npc_psychiatrist;Pardon. Can you repeat that last part? For some reason I just thought you said you were spanked by your manager in your girlfriends underwear.@@"
<<case 'striped_panties_blue'>>
Getting spanked while wearing cute lingerie from a wrong online order was not something you would have ever thought of happening to you.<br>
<br>
"@@.npc_psychiatrist;Pardon. Can you repeat that last part? For some reason I just thought you said you were spanked by your manager in cute lingerie.@@"
<<case 'sissy_panties_pink'>>
You did not think that going commando would have such far-reaching implications, like being forced into <<if $fetish.sissy>>sissy<<else>>nauseatingly cute<</if>> lingerie. That turn of events wasn't something you could have ever imagined happening to you.<br>
<br>
"@@.npc_psychiatrist;Waaait a Second! Ahem. I mean, Pardon. Could you repeat that last sentence? For some reason, I just thought, you said you were spanked while wearing some <<if $fetish.sissy>>sissy<<else>>ultra-feminine<</if>> lingerie, provided by your Manager.@@"
<<case 'lace_thong_black'>>
Everything had seemed so simple, get new underwear from the mall and go to work, but then... sure you were able to save some money, but at what cost?<br>
<br>
"@@.npc_psychiatrist;Pardon. Can you repeat that last part? For some reason I just thought you said you were spanked by your manager in sexy lingerie.@@"
<<case 'satin_panties'>>
Getting spanked while wearing satin panties... well, it was a lot...<br>
<br>
"@@.npc_psychiatrist;Hmm, yes, well, from the tremble in your voice, and the smile on your face... I think that was what you needed, both to wear, and to have happen. I would recommend keeping up as you are and you should have many more such invigorating experiences in your future. But, tell me... what made you choose that underwear?@@"
<<case 'micro_thong_pink'>>
Getting spanked while wearing a tiny pink thong, the fabric pulling tighter between your cheeks, even as it provided not a shred of protection for your poor bum...<br>
<br>
"@@.npc_psychiatrist;Such a vivid description! It sounds like the experience really left and... impact. But, tell me... what made you choose that underwear?@@"
<<case 'technician_intro_panties'>>
Getting spanked while wearing <<=ps(setup.getNpcName("npc_technician","first"))>> so-called "emergency panties" ... well, whatever emergency they were meant for, they provided no protection for your poor bum...<br>
<br>
"@@.npc_psychiatrist;Such a vivid description! It sounds like the experience really left and... impact. But, tell me... what made you choose that underwear?@@"
<<default>>
Getting spanked while wearing <<=setup.getItemName($npc_manager.flags.first_spank)>>, the feminine underthings providing not a shred of protection for your poor bum...<br>
<br>
"@@.npc_psychiatrist;Such an interesting description, and the way you describe feminine things as protection? Very interesting indeed... it sounds like the experience really left and... impact. But, tell me... what made you choose that underwear?@@"
<</switch>>
<br><br>
<<printThought "Oh <<getWordGod>>. Why am I telling her all these details?">><br>
<br>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
You blush as you explain that you agreed to wear more feminine underthings as part of the terms of your employment.
<<else>>
Your face turns bright red. Maybe you should have left that part out. You try to explain that your dryer destroyed all your other underwear, and one thing led to another and you start to fall over your own words, your narration just trailing off as you wait for her comments.
<</if>>
<<else>>
Getting spanked in your underwear by your new boss was something you did not think would ever occur to you. The fact that it made you horny an even greater shock.
<</if>>
<<if $player.sec_style.clothing.underwear != "enthusiast">>
Then you recount your current task, to wear female underwear, even including a bra every day to work, so you will "learn humility." <br>
<br>
"@@.npc_psychiatrist;Let me ask you something, <<=$player.first_name>>. Are you wearing female underwear right now?@@"<br>
<br>
Panic rises within you, and you shake your head while blushing quite a lot.<br>
<br>
<<if setup.checkItemTypeWornTag("panties","female")>>
"@@.npc_psychiatrist;<<=$player.first_name>>, I have already told you, I am pretty proud of my ability to read other people. There is really no need to bother trying to lie to me.@@"<br>
<br>
You gulp, nod and finally admit you're wearing female underwear right now.<br>
<br>
<<switch(setup.analyzeWornTags(['female','male','unisex']))>>
<<case 'male'>>
"@@.npc_psychiatrist;Now, that wasn't that hard, was it? I am not going to judge you over your chosen apparel, rather the opposite, I'm congratulating you on expanding your sexuality, even if you are mostly keeping it to yourself, for now. You go, girl!@@"
<<case 'female'>>
"@@.npc_psychiatrist;Now, to tell you the truth... it was not very hard to guess. It would be rather odd if you didn't wear female underwear, looking at your regular clothes. Anyway, I am not going to judge you over your chosen apparel, rather the opposite, I'm congratulating you on expanding your sexuality. You go, girl!@@"
<<case 'unisex'>>
"@@.npc_psychiatrist;Now, to tell you the truth... your clothes are rather heavy with meaning, if you know what I mean. You seem to be at a crossroads and if I interpret your signals right, you are drifting towards your feminine side. Anyway, I am not going to judge you over your chosen apparel, rather the opposite, I will congratulate you on expanding your sexuality. You go, girl!@@"
<</switch>>
<<else>>
"@@.npc_psychiatrist;That was a rather defensive reaction, don't you agree? Maybe you should try and wear them in your free time as well so that you can better move past these negative emotions. You never know, it could feel quite empowering!@@"
<</if>>
<br><br>
You are unsure how to feel about this suggestion.<br>
<br>
"@@.npc_psychiatrist;Anyway, here is how I see the whole situation. You are obviously kind of interested in this whole situation, but you're not happy with the implications of it being a punishment. Maybe you should try to give in to her demands, perhaps if you're on her good side, she will do these things to you because you both want it, and not because you're a bad boy
<<if setup.checkItemTypeWornTag("panties","female")>>
... sorry, a bad girl
<</if>>
who deserves to be punished.@@"
<<else>>
"@@.npc_psychiatrist;I see, I see... well, you will learn to deal with <<=setup.getNpcName('npc_manager', 'first')>> in time. Her methods may seem a bit unorthodox but I think you should keep an open mind, you may find out some interesting, and enjoyable, things about yourself...@@"
<</if>>
<br><br>
<<printThought "...">><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about being required to wear unisex clothing
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $player.sec_style.clothing.unisex>>
<<case "obedient">>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that a spill in the lunchroom resulted in your clothing being ruined, but your manager "helped" you out, with a change of clothes that were a bit... different. In both style and colour that you'd normally wear. You follow up by noting that <<=setup.getNpcName('npc_manager', 'formal')>> was so enamoured with your new look that she revised your dress code to wear "similar" items going forward.<br>
<br>
"@@.npc_psychiatrist;First off, let me express my sympathy for such a traumatic event, though at least you weren't injured, or the thought of your pretty face being burned, it would have been a real tragedy! As for the rest, well, it seems quite generous of <<=setup.getNpcName('npc_manager', 'first')>>... errr... I mean <<=setup.getNpcName('npc_manager', 'formal')>> of course, to have you provided with a free change of clothing.
<<if setup.analyzeWornTags(['female','male','unisex'])=='unisex'>>
If, as I suspect, what you are wearing is what she gave you well... I can see why she made the change, you fill those out almost perfectly!
<<else>>
I do wonder why you aren't wearing your "new" uniform right now? I mean, you come here straight from work and given how impressed <<=setup.getNpcName('npc_manager', 'formal')>> was, well... I would have quite liked to see you so attired for
<<if setup.analyzeWornTags(['female','male','unisex'])=='female'>>
myself! Then again, what you are wearing right now is, perhaps... even better?
<<else>>
myself!
<</if>>
<</if>>
@@"
<br><br>
You blush at the comment and she continues.<br>
<br>
"@@.npc_psychiatrist;Really, though, you should consider this an opportunity to expand your horizons. I've read the dress code for your position and well... to call it uninspired would be a compliment. Clothes like that are in these days so really, you got a free fashion upgrade! If I was you, I would think of this change not as a restriction, but permission to free yourself to experiment with more... interesting attire. I would simply die in a Job with a dress code. Anyway, you have nothing to lose. And truly, it is practically a sin to hide your curves away beneath a boring pair of slacks and dress shirt.@@"<br>
<br>
<<printThought "I guess she's right, they are a lot more diverse then my usual office clothes, and, to be honest, more comfortable. I guess I'll try them for a while. Not like I got much of a chance with my new Boss...">>
<<case "forced">>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that a little mishap ended you in hot water a short while ago and culminated in the fiery doom of some of your regular clothes.<br>
<br>
"@@.npc_psychiatrist;Well, given your behaviour <<=ps(setup.getNpcName('npc_manager', 'formal'))>> action is understandable, although the chosen method of disposing your clothes seems a little bit... shall we say, theatric. But if you would have studied your contract more thoroughly, you would have known all these little details. Of course I can understand why you choose to ditch such a boring lecture. There are more important things in life then studying, amirite?@@"<br>
<br>
That last word was underlined by a huge grin. You look away and continue to tell your story explaining how you were given some rather ambiguous clothes to wear as your secretary outfit.<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex'])=='unisex'>>
"@@.npc_psychiatrist;You mean like the ones you're wearing right now? I don't think ambiguous is the right word, they make you look rather feminine, if that's what you're afraid of or, perhaps, hoping for?@@"<br>
<br>
You gulp.<br>
<br>
<</if>>
"@@.npc_psychiatrist;You really shouldn't worry too much. Clothes like those are pretty in right now, and almost anyone can wear them. Plus they are nowhere near as boring as regular male office clothes, wouldn't you agree?@@"<br>
<br>
<<printThought "Well, they are a lot more diverse then my usual office clothes, and, to be honest, more comfortable. I guess I'll try them for a while. Not like I have much of a chance with my new Boss...">>
<<case "strict">>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your system of changing before work so as to not be seen in public... only for <<=setup.getNpcName('npc_manager', 'formal')>> to take a very dim view of your plan.<br>
<br>
"@@.npc_psychiatrist;Yes, well you have to understand — <<=setup.getNpcName('npc_manager', 'formal')>> is very particular, and works in a very high-stakes, high-stress position. The company...@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> pauses, looking nervous for a moment before her normal friendly smile re-asserts itself. "@@.npc_psychiatrist;Sorry, you do not need concern yourself with such things. Just know that, in the end, this was for your own good, and you, and your mental health, will be best off if you just accept things and stop trying to weasel your way out of requirements. It will only make things worse...@@"<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex'])=='unisex'>>
"@@.npc_psychiatrist;Speaking of, your wearing that outfit for our session is good, it means you're moving past your old hang-ups.@@"<br>
<br>
<</if>>
"@@.npc_psychiatrist;You really shouldn't worry too much. Clothes like those are pretty in right now, and almost anyone can wear them. Plus they are nowhere near as boring as regular male office clothes, wouldn't you agree?@@"<br>
<br>
<<printThought "Well, they are a lot more diverse then my usual office clothes, and, to be honest, more comfortable. Maybe this isn't so bad... not like I have much of a chance with my new Boss...">>
<<case "money">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how, after a disaster at lunch that ruined some of your clothing, you agreed to a slight pay bump in exchange for a shift in your work attire to something "less masculine." <br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex'])=='unisex'>>
"@@.npc_psychiatrist;I see, and I note that this style does look quite complimentary on your body.@@"
<<else>>
"@@.npc_psychiatrist;I see, how are you liking the extra money, consider it worth it?@@"
<</if>>
<br><br>
You shrug.<br>
<br>
"@@.npc_psychiatrist;You really shouldn't worry too much. Clothes like those are pretty in right now, and almost anyone can wear them. Plus they are nowhere near as boring as regular male office clothes, wouldn't you agree?@@"<br>
<br>
<<printThought "Well, they are a lot more diverse then my usual office clothes, and, to be honest, more comfortable. I guess I'll try them for a while. The pay bump is nice, and it's not like I got much of a chance with my new Boss...">>
<<case "voluntary" "enthusiast">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your decision to start wearing less masculine clothing.<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex'])=='unisex'>>
"@@.npc_psychiatrist;I see... literally, in this case. I have to say, they do suit you, I encourage you to continue these experiments. It is when our inner and outer lives are in contradiction that we are the most unhappy. I think our time together has helped uncover more of your deeper self and if those discoveries led to external changes as well... well, all the better!@@"
<<elseif setup.analyzeWornTags(['female','male','unisex'])=='female'>>
"@@.npc_psychiatrist;Less masculine is putting it lightly! You look positively femme — and gorgeous, I might add! I encourage you to experiment with expressing yourself that most speaks to you. It is when our inner and outer lives are in contradiction that we are the most unhappy, and the purpose of our time together is to assist you in finding your path to being happy, healthy and joyous!@@"
<<else>>
"@@.npc_psychiatrist;I see... well, not literally at this moment, though I can imagine how you might look. I encourage you to continue these experiments. It is when our inner and outer lives are in contradiction that we are the most unhappy. I think our time together has helped uncover more of your deeper self and if those discoveries led to external changes as well... well, all the better!@@"
<</if>>
<br><br>
You thank her for the encouragement, agreeing that, though it took some courage the first time, you were surprised at how natural it ended up feeling.
<<default>>
ERROR, unknown sec_style unisex: <<=$player.sec_style.clothing.unisex>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist session, talk about advancing relationship w/manager
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You think about the situation for a moment, deciding to talk about one of your latest encounters with <<=setup.getNpcName('npc_manager', 'formal')>>. But after only mentioning her name you're interrupted by <<=setup.getNpcName('npc_psychiatrist', 'formal')>> with a short "@@.npc_psychiatrist;Oh, this is going to be good, isn't it?@@" Your perplexed expression does not go unnoticed and she follows up with a short "@@.npc_psychiatrist;Please, do not mind me and continue.@@"<br>
<br>
Even though you thought of leaving out some of the raunchier details at first, as soon as you start to talk, you cannot keep yourself from blurting out every delicate detail you can remember. You also cannot fail to notice that, even though <<=setup.getNpcName('npc_psychiatrist', 'formal')>> hides her mouth under her hands, keeping them together in a triangle form ~ not unlike a certain father of the year from a popular classic anime ~ her smile gets bigger with every detail you drop. It takes you quite a while to finish your rather debauched review of the events.<br>
<br>
"@@.npc_psychiatrist;Well, <<=setup.getNpcName('npc_manager', 'first')>> or as you refer to her "<<=setup.getNpcName('npc_manager', 'formal')>>," has delineated the borders of your duties in a way that is effectively both a working and a legally binding Master Slave contract. Thank heaven for the sexual equalization act of 2029.@@"<br>
<br>
<<if $player.flags.contract.understoodcomplete>>
Of course you know this by now, but you would have liked to have this information before you signed the contract.<br>
<br>
"@@.npc_psychiatrist;Anyway...@@"
<<else>>
<<printThought "Wait, what?">><br>
<br>
Your face is frozen in a rather shocked expression.<br>
<br>
"@@.npc_psychiatrist;Oh, this is news for you? Well, its not like you can simply quit if it's not to your liking. Anyway...@@"
<</if>>
<br><br>
<<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.require_chastity>>
"@@.npc_psychiatrist;You are currently the appointed key carrier, so there seems to be a certain level of trust between the two of you.@@"
<<else>>
"@@.npc_psychiatrist;It is not like you're locked up 24/7 or something, so it can't be that bad, can it?@@"
<</if>>
<br><br>
<<if !$player.sec_style.submission.permanent_key>>
"@@.npc_psychiatrist;You should try to make the best of your situation. Try to improve your relationship by being obedient. Or maybe go out of your way and do some unexpected things you think she might like! Maybe ask her to be disciplined, even though you're behaving. Or maybe be a little bit disobedient. But just enough to see it as playful teasing. That should do the trick!@@"<br>
<br>
<<printThought "...">>
<<else>>
You reply that, actually... it is, given that you have surrendered permanent control of your key to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems taken aback for a moment, but then slowly smiles. "@@.npc_psychiatrist;Well! Aren't you moving quickly. Your psychological profile indicated submissive tendencies, but this is quite impressive!@@" She states as her grin widens. "@@.npc_psychiatrist;I would further note that, when it comes to keyholders, particularly at the company, well... <<=setup.getNpcName('npc_manager', 'formal')>> is certainly an excellent choice.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: first time meeting technician
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You start to talk about your friend <<=setup.getNpcName('npc_technician', 'full')>>.<br>
<br>
After giving <<=setup.getNpcName('npc_psychiatrist', 'formal')>> a quick intro to the "Tech Wizard" who was once your co-worker, you dive into your more casual encounters; meeting her for coffee and how she used some phone app or something to peer under your clothing and call you out for wearing women's underthings!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> listens intently before summing things up with a smile.<br>
<br>
"@@.npc_psychiatrist;Well, your friend sounds like a very interesting young lady. Certainly what she did was something of a breach of privacy but, well... it brought the two of you closer, showed you that you aren't alone out there so, really, it was all for the best, hmm?@@"<br>
<br>
Even if it feels a bit off, you can't quite manage to shape a refutation of her point, instead merely nodding at her assessment.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about wearing female clothing
#status: FINISHED 0.4.0.0
#ignore_spell: worntag
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $player.sec_style.clothing.female>>
<<case "forced">>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how you were "given" a new, very feminine outfit and informed that you would be expected to dress the same at work going forward.
<<case "strict">>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how you were given a lesson on the extremes of feminine attire... concluding with not just your work uniform becoming fully feminised, but invasive restrictions on how you are even able to leave your flat.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> listens intently, and your description of the violation that was workers entering your house uninvited to install the controls that force you to dress female before even going out in public seems to trigger memories of her own.<br>
<br>
Her gaze flicks around the room nervously before she finally composes a response. "@@.npc_psychiatrist;For better or worse... this is the world we live in, to survive one must learn to be adaptable against the inflictions of the powerful.@@" She brightens as she continues, though her expression remains strangely artificial. "@@.npc_psychiatrist;Of course, in your case, well... those requirements are hardly a hardship, right? More a helpful encouragement! After all, think back to the perspective of your lesson! As harsh as <<=setup.getNpcName('npc_manager', 'first')>> may be, she is merely trying to position you optimally for success in your position at the company. Best to go along with it, hmm?@@"
<<case "money">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how you agreed to wear a dress to the after-work party with your manager, only for her to declare that you would be dressing in a feminine fashion whenever you are at work from now on!
<<case "voluntary" "enthusiast">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your decision to start wearing feminine clothes, and how your manager has encouraged your decision by revising your work dress code to be female only.
<<case "obedient">>
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how you volunteered to accompany your manager to an after-work party only to find yourself in a dress, and with your work dress code revised to be female clothing only!
<<default>>
ERROR, unknown sec_style.female: <<=$player.sec_style.clothing.female>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods sagely. "@@.npc_psychiatrist;I think it is good that you are... branching out like this. I mean, let's be honest, male clothing is pretty... dull. We girls have much more interesting and fun options, sure you may be "required" to dress that way at work, but is that such a restriction!@@"<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> gestures towards your current attire. "@@.npc_psychiatrist;I mean look at you now — you could have changed into anything you wanted for our session, but you chose this. I mean, I quite understand, it looks great on you, and I encourage you to continue displaying your... feminine side... though I doubt you really need my encouragement, do you?@@"
<<case "male">>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> scrunches her nose as she looks over your current unfeminine attire. "@@.npc_psychiatrist;Very curious that you chose to wear your old, masculine attire to our session. Of course I am happy with whatever makes you feel most at ease but... I dunno, there just seems to be something off about you wearing that sort of thing, doesn't there?@@"
<<case "unisex">>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> gestures towards your current unisex attire. "@@.npc_psychiatrist;An interesting choice. You say you've taken the full plunge into full femininity and yet here, in this safe space, you chose to don something more... neutral. Yes, curious indeed, that looks good on you, of course, but I wonder, does teetering on the edge really feel more comfortable compared to fully embracing things with gusto?@@"
<<case ''>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles at your nudity. "@@.npc_psychiatrist;Feeling comfortable in your own skin are we? Lovely, this is just the sort of openness that therapy is meant to encourage. Your demonstrating such ease in my presence well... let me just say you have me VERY optimistic about today's session.@@"
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
You blush and change topics as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles back at you.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about your new female name
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $npc_psychiatrist.flags.reactnamechange = true>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_20')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_20'
20
'event_psychiatrist_theme_gender_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $player.sec_style.body.name>>
<<case "forced">>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that <<=setup.getNpcName('npc_manager', 'formal')>> made you sign paperwork to permanently change your legal name to <<=$player.first_name>>.
<<case "strict">>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that <<=setup.getNpcName('npc_manager', 'formal')>> all but tricked you into permanently changing your legal name to <<=$player.first_name>>.
<<case "money">>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how you legally changed your name to <<=$player.first_name>> as part of a scheme hatched by <<=setup.getNpcName('npc_landlord', 'first')>>.
<<case "voluntary" "enthusiast">>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you decided to change your name to <<=$player.first_name>>.
<<case "obedient">>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that, with some help from <<=setup.getNpcName('npc_manager', 'formal')>> you have legally changed your name to <<=$player.first_name>>.
<<default>>
ERROR, unknown sec_style.name: <<=$player.sec_style.body.name>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Of course, I already knew thanks to the computer, but hearing it from your lips... it sounds so much nicer, so much more appropriate than, well... the word you previously went by.@@"<br>
<br>
You smile as you notice how she adroitly avoided deadnaming you.<br>
<br>
"@@.npc_psychiatrist;Well, as I was saying, I am so very proud for you. One's name is... well, it's important, but at the same time if it was given to you by someone else, your parent or what have you well... is it really yours? By naming yourself like this<<if $player.sec_style.body.name == "strict">>, even if there was a bit of trickery,<</if>> well... I think it makes the "you" that you become from here on out even more real, more true than the you that you were before, and isn't that just wonderful?@@"<br>
<br>
You reply you hadn't really thought of things that way.<br>
<br>
"@@.npc_psychiatrist;Well, that's what I'm here for, right? To help you unpack things. Speaking of, if you would like to dig deeper into related things, such as how you identify gender-wise well... I am certainly ready and willing to assist.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about orally servicing manager (good girl only)
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You describe to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how<<if $player.sec_style.body.name == "obedient">>, after giving you your new name, <<=setup.getNpcName('npc_manager', 'formal')>> was so aroused she<<else>> <<=setup.getNpcName('npc_manager', 'formal')>><</if>> had you serve her orally.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> leans forward in obvious interest. <<if $player.virgin.cunnilingus == 'npc_manager'>>"@@.npc_psychiatrist;Oh my! That was your first time licking a woman's honeypot, wasn't it? How did it make you feel?@@"<<else>>"@@.npc_psychiatrist;My my, now that is quite the privilege for <<=setup.getNpcName('npc_manager', 'formal')>> to let you serve her in that manner. How did it make you feel?@@"<</if>><br>
<br>
Just the memory of the intimate moment has you feeling aroused and you channel your inner poet to describe an intricate picture of the scene, how wonderful she tasted, the feel of her hand on your head, her voice instructing you on what to do...<br>
<br>
You start to drift into a contented daydream only for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to bring you back into focus. Strangely she appears a bit distracted as well as she picks up her notepad with both hands.<br>
<br>
<<printThought "Wait... is her hand damp?">><br>
<br>
"@@.npc_psychiatrist;Mmm, it sounds like you had a VERY rewarding time. <<=setup.getNpcName('npc_manager', 'first')>> just tastes divine...@@"<br>
<br>
<<printThought "How would she- did she just lick her finger clean?">><br>
<br>
"@@.npc_psychiatrist;Anyway, I am so glad you were able to share a moment with someone you so obviously deeply care about... of course some would question whether a relationship with such an obvious power imbalance — her your manager, you the <<if $fetish.sissy>>SISSI <</if>>Secretary, is proper but, well... I think we both know the answer to that, right?@@"<br>
<br>
You nod.<<if setup.getTotalValue("submission") > 10>> After all, you can scarcely imagine a relationship where you were not delightfully subordinate.<</if>><br>
<br>
<<if $npc_psychiatrist.flags.blowjob > 0 || $npc_psychiatrist.flags.handjob > 0 >>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems to have a thought, smiling mischievously. "@@.npc_psychiatrist;Hmm, with all of your gushing as to how much you enjoyed performing cunnilingus... I hope that has not diminished your enjoyment of a little fellatio... I can't be the only one who would consider it a detriment to peniskind to lose your lovely mouth...@@"<br>
<br>
<<if setup.getTotalValue("penis") > 15>>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2_suck" "Beg for the opportunity to show her that you're just as much of a cock-hungry slut as always." 60>>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Re-assure her that you still love cock." 60 "<<set $scene.mood='love'>>">>]<br>
[@@.link_locked;You are far too much of a thirsty cockslut to possibly deny it.@@]
<<elseif setup.getTotalValue("penis") > 10>>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2_suck" "Beg for the opportunity to show her that you're just as much of a cock-hungry slut as always." 60>>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Assure her that you still love cock." 60 "<<set $scene.mood='love'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Say that you like both cunt and cock equally." 60 "<<set $scene.mood='neutral'>>">>]<br>
[@@.link_locked;You may have a newfound love for pussy, but you could never forget your infatuation with cock.@@]
<<elseif setup.getTotalValue("penis") > 5>>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2_suck" "Beg for the opportunity to show her that you're just as much of a cock-hungry slut as always." 60>>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Assure her that you still love cock." 60 "<<set $scene.mood='love'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Say that you like both cunt and cock equally." 60 "<<set $scene.mood='neutral'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Reply that you definitely prefer cunt to cock." 60 "<<set $scene.mood='hate'>>">>]
<<else>>
[@@.link_locked;Though you may have serviced your therapist before you can't bring yourself to beg for another taste.@@]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Assure her that you still love cock." 60 "<<set $scene.mood='love'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Say that you like both cunt and cock equally." 60 "<<set $scene.mood='neutral'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_good_girl_oral_manager_2" "Reply that you definitely prefer cunt to cock." 60 "<<set $scene.mood='hate'>>">>]
<</if>>
<<else>>
"@@.npc_psychiatrist;I see, I see. Well, just remember that genitals, like people, come in all tastes, shapes and sizes, and in all sorts of arrangements! For as much as you enjoyed <<=ps(setup.getNpcName('npc_manager', 'first'))>> tasty cunt a cock attached to someone you felt equally strongly about would be mouth-wateringly delicious as well.@@"<br>
<br>
<<if setup.getTotalValue("penis") > 15>>
<<printThought "Who cares who it's attached to? All cock is great!">>
<<elseif setup.getTotalValue("penis") > 10>>
<<printThought "Mmm... cock...">>
<<elseif setup.getTotalValue("penis") > 5>>
<<printThought "That makes sense.">>
<<else>>
<<printThought "What? No, I don't like cock...">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist topic: explain feelings about cock after orally servicing manager
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.mood>>
<<case 'love'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<case 'neutral'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<case 'hate'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 2>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.mood>>
<<case 'love'>>
You assure <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that, of course you still love sucking cock...<br>
<br>
She smiles, "@@.npc_psychiatrist;Oh, you're so cute! Of course I know that you're an eager cocksucker... not that I ever tire of hearing you say it! Isn't it nice to know what you want and announce it to the world?@@"
<<case 'neutral'>>
You state that you're kind of neutral on cock vs. cunt.<br>
<br>
"@@.npc_psychiatrist;Of course, I mean, why limit yourself? Both are great, especially with the right partner!@@"
<<case 'hate'>>
You reply that your experience with <<=setup.getNpcName('npc_manager', 'formal')>> only reinforced the fact that you dislike cock.<br>
<br>
You almost expect <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to be annoyed, but she merely smiles. "@@.npc_psychiatrist;Hate, you say? Mmm... that's not how *I* remember it. I really wish you would admit your desires more openly, but I'll settle for you spreading your lips for me in other ways...@@"<br>
<br>
She winks at you and you flush with embarrassment.
<<default>>
ERROR, unexpected scene.mood <<=$scene.mood>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: suck psychiatrist's cock after telling her about eating out manager
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.therapy_events.console = true>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You quickly re-assure <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you are still a devout cockslut. You smile and lick your lips, asking if you could "demonstrate" how much you still adore her member.<br>
<br>
She smiles. "@@.npc_psychiatrist;Oh you are such a dear! All this talk had me getting quite engorged and I wasn't sure if I'd have time to deal with it before my next appointment... and here you are, like a <<if $fetish.sissy>>sissy<<else>>girly<</if>> superhero! Crawl on over here!@@"<br>
<br>
Sliding to the floor, your crawl around the side of her desk, by which time she has pulled down her skirt, eyeing you with a smile, gently stroking her hard girl-cock with one dainty hand.<br>
<br>
Licking your lips, you crawl between her legs, holding her member with both hands, blinking up at her for a moment before leaning forward to swallow her.<br>
<br>
<<if setup.getTotalValue("penis") > 15>>
Your lips glide whisper-soft over her lovely cock, your tongue expertly lapping up her pre before probing for her most sensitive spots.<br>
<br>
She gasps and moans as you play her like an instrument, teasing and stimulating with expert skill until you are ready to push her over the cliff, your efforts rewarded with a spurt of sweet, delicate cum.
<<elseif setup.getTotalValue("penis") > 10>>
You swallow her with ease, shoving the tip of her girl-cock into your throat as you suck and lick her shaft.<br>
<br>
She moans, your expert deepthroat sending her to new heights of pleasure and you keep up a rapid pace of gentle, but deep, head-bobs until she cums, your timing such that her girl-gravy sprays the top of your mouth to drip down onto your tongue.
<<elseif setup.getTotalValue("penis") > 5>>
Though she is far from huge, it's still a bit more than you're prepared to take at this angle. You focus your attention on her tip, sucking and licking while your hands delicately stroke the rest of her shaft.<br>
<br>
Your efforts seem sufficient as it is not long before you sense her tightening, followed by a quick spurt of cum into your mouth.
<<else>>
You are still a neophyte at the ways of fellatio, but you do your best, splitting your attention between sucking and licking while your fingers stroke. Looking up at her you try to make up with seductive glances what you lack in technical skill.<br>
<br>
Either you're better than you thought or she was REALLY pent up as it isn't long before she pulls your head over her cock, spurting her load into your mouth.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") > 15>>
Tilting your head back you open your mouth to show off her load, letting it pool on your tongue as you savour its flowery flavour.
<<elseif setup.getTotalValue("cum") >= 10>>
Her cum is too delicious to swallow right away and you pause for a moment, rolling it back and forth in your mouth.
<<elseif setup.getTotalValue("cum") > 5>>
Your taste for cum may still be "developing," but hers is quite yummy. Intrigued you can't help but roll it around for a few moments, enjoying the flowery flavour.
<<else>>
Despite your normal aversion to cum, hers tastes surprisingly... good? You're so shocked you fail to swallow, pausing with your mouth half-open.
<</if>>
<br><br>
She leans in for a passionate kiss, her tongue spearing past your lips to lap at her seed, your mouths hosting a private, wet dance for several seconds until you finally swallow and she pulls back.<br>
<br>
"@@.npc_psychiatrist;Mmmm, delicious and delightful! Those pretty lips of yours are swiftly becoming some of my favourite dick-pillows so I am quite glad that you have so thoroughly confirmed your ongoing devotion to dick.@@"<br>
<br>
You blush a bit, kissing her softening member in thanks before rising to your feet and giving her a little curtsy. You see her girl-cock twitch as if to return to life, but she quickly pulls her skirt back over it.<br>
<br>
"@@.npc_psychiatrist;Now then, as fun as that was, I believe we should get back focused on your session.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: sissy pill
#status: FINISHED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the experimental <<=setup.getItemName('sissy_pill_mk1')>> given to you by your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
<<set _themeId = setup.findThemeId("npc_psychiatrist", "manager", "theme_psychiatrist_manager_2")>>
<<if $npc_psychiatrist.themes.manager[_themeId].done == 1>>
She sighs in frustration. "@@.npc_psychiatrist;Really? I keep telling them I need to be informed about any drugs in case of complications—@@" she pauses, as if suddenly realising that you're there. "@@.npc_psychiatrist;Sorry, distracted by something else, though I can, of course, prescribe drugs I tend not to, one of the purposes of my VR therapy study is to discover non-pharmaceutical methods of helping patients such as yourself.@@"<br>
<br>
<<printThought '"Them?" what is she talking about?'>>
<<else>>
She looks concerned, seemingly wanting to say something... but she holds her tongue and merely nods slowly in acknowledgement.
<</if>>
<br><br>
"@@.npc_psychiatrist;Anyway, what sort of effects did you notice from taking the drug?@@"<br>
<br>
<<if $player.flags.used_sissy_pill_count == 0>>
You explain that you didn't actually take the pill.<br>
<br>
"@@.npc_psychiatrist;Huh, interesting, well, do not worry, your secret is safe with me, though I imagine that <<=setup.getNpcName('npc_manager', 'first')>> would be quite disappointed to know that. Do not worry, though I am contracted to your company, doctor/patient confidentiality is paramount. Whatever you say, or do, in our sessions stays between us...@@"
<<else>>
You explain that the pill made you feel really horny, and gave you temporary breasts!<br>
<br>
<<if $player.body.breastsize[0] > 0 && $npc_psychiatrist.sessions > 1 && $player.sec_style.body.breasts != "enthusiast">>
"@@.npc_psychiatrist;Temporary, you say? Well, I guess that little taste left an impression. Let me say you look much better now than back when we first met and you were all... flat. Really helps to balance out your lovely hips.@@"
<<else>>
"@@.npc_psychiatrist;Hmm, well, you know, you can always get a surgical procedure, or go on hormones, if you want them to be permanent.@@"<br>
<br>
<<printThought "That wasn't the problem!">><br>
<br>
"@@.npc_psychiatrist;Anyway, though I wish I had known previously it is quite alright for you to continue taking them, from what I remember of the literature they have been showing very fine promise.@@"
<</if>>
<br><br>
<<switch $player.flags.used_sissy_pill_count>>
<<case 1>>
You quickly add that you only took the one pill and haven't taken any since.<br>
<br>
"@@.npc_psychiatrist;I see, well, remember that the first time trying a new medication can be a bit odd, and it can take some time for full effects to become apparent. You should consider taking at least one more, more data points, in scientific jargon, before you make any long-term decisions.@@"
<<case 2>>
You quickly add that you used both pills your <<=setup.getNpcName('npc_manager', 'title')>> gave you, but have not taken any more.<br>
<br>
"@@.npc_psychiatrist;Interesting... obviously you enjoyed the results or you would not have taken it the second time, unless you just wanted to do it for scientific confirmation?@@" She laughs. "@@.npc_psychiatrist;Anyway, I imagine that <<=setup.getNpcName('npc_manager', 'other')>> would be more than happy to give you more so that you can "keep up" your medication.@@"
<<default>>
You quickly add that you used both pills your <<=setup.getNpcName('npc_manager', 'title')>> gave you, and then asked her for more!<br>
<br>
"@@.npc_psychiatrist;You know, I thought I had noticed a bit of a glow about you. If you are pleased with the results, I heartily recommend that you continue taking them, I mean, clearly they seem to be working for you!@@"
<</switch>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: technician handjob
#status: FINISHED 0.6.0.0
#ignore_spell: dataservice
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up how, on the last day of your pre-secretary job, you
<<switch $npc_technician.flags.dataservice_encounter.handjob_finish>>
<<case 'mouth' 'beg'>>
gave <<=setup.getNpcName('npc_technician', 'first')>> a blowjob while crouched under her desk.<br>
<br>
<<if $npc_technician.stage < 2>>
"@@.npc_psychiatrist;My, my, that would have been your first blowjob, would it not? It sounds to me like there is a bit of a spark between you and <<=setup.getNpcName('npc_technician', 'first')>> if you felt so eager to do something like that at such minor provocation. You should call her up and get together, oh, I bet the two of you could have such lovely, cute fun together?@@"
<<else>>
"@@.npc_psychiatrist;My, my, so enthusiastic and adventurous! This is exactly the sort of experience I keep telling you to be more open to. When you want something, reach out and grab it! With a willing partner, of course.@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage >= 1>>
You note that <<=setup.getNpcName('npc_technician', 'first')>> and you have since started dating proper so it really kind of all just worked itself out.<br>
<br>
"@@.npc_psychiatrist;I am totally not surprised. I mean, a cutie like you, so giving from the jump... well, it's a recipe for success in the dating world, that's for sure!@@"
<<else>>
You note that <<=setup.getNpcName('npc_technician', 'first')>> and you have been spending more time since and have started to become friends.<br>
<br>
"@@.npc_psychiatrist;Friends... and maybe something more?@@" She smiles "@@.npc_psychiatrist;I'm sure you'll figure it out, but I have a feeling that you and <<=setup.getNpcName('npc_technician', 'other')>> are in for all sorts of fun together so long as you continue to show the same openness and enthusiasm for new experiences.@@"
<</if>>
<</if>>
<<case 'hand'>>
gave <<=setup.getNpcName('npc_technician', 'first')>> a handjob while crouched under her desk.<br>
<br>
"@@.npc_psychiatrist;My, my, and I thought that day had been eventful enough for you, what with changing jobs and everything... well, to be honest, I cannot think of much else to say about this other than to congratulate you on such success your first time out. After all sometimes it is tricky to translate what we know about pleasuring ourselves to someone else, but it sounds like you are a natural!@@"
<<case 'fail'>>
tried to give <<=setup.getNpcName('npc_technician', 'first')>> a handjob, but didn't quite have the skills to finish her off.<br>
<br>
"@@.npc_psychiatrist;Interesting, of course even in failure there are lessons and I am sure you will do better the next time, and better again the time after that. And anyway, I am sure <<=setup.getNpcName('npc_technician', 'first')>> appreciated the effort, right?@@"<br>
<br>
You nod in confirmation.<br>
<br>
"@@.npc_psychiatrist;Wonderful!@@"
<<case ''>>
touched <<=ps(setup.getNpcName('npc_technician', 'first'))>> lady-bits, but then panicked and retreated to your desk.<br>
<br>
"@@.npc_psychiatrist;I see, I suppose it might have been a bit of shock, but, well... these things are perfectly natural.@@"<br>
<br>
You nod, confirming that you were just startled and what with the stress of the lost data and everything...<br>
<br>
<<if $npc_technician.stage < 2>>
"@@.npc_psychiatrist;Of course, of course just... maybe make sure you reach out, not necessarily in THAT way... unless you're ready to follow through, of course! Anyway, just make sure that your friend knows that everything is fine between the two of you, you know how sensitive we girls can be about our bodies sometimes.@@"
<<else>>
"@@.npc_psychiatrist;Of course, of course and clearly it all worked out in the end between you and <<=setup.getNpcName('npc_technician', 'first')>> but, well... in the future you ought to be a bit more deliberate with your actions.@@"
<</if>>
<<default>>
ERROR unexpected technician dataservice_encounter.handjob_finish <<=$npc_technician.flags.dataservice_encounter.handjob_finish>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: gender identity
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up the topic of your gender to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and she subtly perks up with interest.<br>
<br>
"@@.npc_psychiatrist;Such an interesting, important topic so, tell me <<=$player.first_name>>, after all that's happened, all that you've learned about yourself, how do you identify?@@"<br>
<br>
<<if $player.identify_as == "female">>
[@@.link_locked;You've already declared you're a girl, saying anything else to your therapist would be lying.@@]<br>
<<else>>
[<<moveTo "event_psychiatrist_theme_gender_2" "Try to tell her you're a normal guy and all this cross-dressing is only due to your job." 60 "<<set $scene.gender='male'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_2" "Tell her you're a guy who likes crossdressing and such." 60 "<<set $scene.gender='xdress'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_2" "Tell her you are a sexy, slutty femboy." 60 "<<set $scene.gender='femboy'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_2" "Tell her you don't fully feel like you identify with either gender." 60 "<<set $scene.gender='agender'>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_2" "Tell her your gender is feeling very fluid." 60 "<<set $scene.gender='fluid'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_theme_gender_2" "Come out to her that you're a girl." 60 "<<set $scene.gender='girl'>>">>]<br>
<<if setup.getAverageSecStyle() == "voluntary" || setup.getTotalValue("feminization") == 20>>
[<<moveTo "event_psychiatrist_theme_gender_2" "Confidently inform her you're a girl." 60 "<<set $scene.gender='conf_girl'>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: declare gender identity
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.gender>>
<<case 'male'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<set $player.identify_as = 'male'>>
<<case 'xdress'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<set $player.identify_as = 'male'>>
<<case 'femboy'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<set $player.identify_as = 'male'>>
<<set $player.flags.femboy = true>>
<<case 'agender'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<set $player.identify_as = 'agender'>>
<<case 'fluid'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<set $player.identify_as = 'fluid'>>
<<case 'girl'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<if !$player.sec_style.body.identify_fem>>
<<set _sourceChar = 'npc_psychiatrist'>>
<<set $player.sec_style.body.identify_fem = "voluntary">>
<<include "identifyFemUnlocks">>
<</if>>
<<case 'conf_girl'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 3>>
<<if !$player.sec_style.body.identify_fem>>
<<set _sourceChar = 'npc_psychiatrist'>>
<<set $player.sec_style.body.identify_fem = "enthusiast">>
<<include "identifyFemUnlocks">>
<</if>>
<</switch>>
<<set $npc_psychiatrist.flags.knowgender = $player.identify_as>>
<<if $player.identify_as == 'female' || $player.flags.femboy>>
<<if setup.getTotalValue("feminization") > 10>>
<<applyStress -3>>
<<set $scene.stressful = false>>
<<else>>
<<applyStress 5>>
<<set $scene.stressful = true>>
<</if>>
<<elseif $player.identify_as == 'male'>>
<<if setup.getTotalValue("feminization") < 10>>
<<applyStress -3>>
<<set $scene.stressful = false>>
<<else>>
<<applyStress 5>>
<<set $scene.stressful = true>>
<</if>>
<<else>>
<<applyStress -3>>
<<set $scene.stressful = false>>
<</if>>
<<if !setup.checkThemeExist('npc_admin', 'transition', 'theme_admin_transition_20')>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_20'
20
'event_admin_comingout_1'
true
>>
<</if>>
<<if $player.identify_as != 'male' || $player.flags.femboy>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_21'
20
'event_enthusiast_hormones_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.gender>>
<<case 'male'>>
You explain that you're a man! And that all of this crossdressing and such is just because of your psycho boss!<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.npc_psychiatrist;I see... and yet you appear before me, off the clock... dressed like that...@@"<br>
<br>
You sheepishly shift in your chair at the reminder of the fact that you are dressed quite femininely.<br>
<br>
"@@.npc_psychiatrist;Not that I would wish to dispute your identity but... perhaps you would be more calm and at ease if you were more open to accepting change instead of rigidly clinging to the past?@@"
<<case "unisex">>
"@@.npc_psychiatrist;I see... well, if that is how you feel far be it from me to contradict still...@@"<br>
<br>
She trails off, her words hanging in the air as you awkwardly shift, reminded of the fact that despite your objections you currently sitting wearing less than masculine attire.
<<case "male">>
"@@.npc_psychiatrist;I see, I see though... though that old line from Shakespeare about protesting too much comes to mind. I know things have been stressful for you and clinging to the familiar can seem like a good idea but... well, what have I said before about broadening your horizons?@@"
<<default>>
<<if setup.checkNaked()>>
"@@.npc_psychiatrist;My, my, rebirth through therapy, what a responsibility I have! Or... did you intend to send a different message by sitting there are cute and lovely in your birthday suit?@@"
<<else>>
ERROR, expected male, female, unisex or naked!
<</if>>
<</switch>>
<<case 'xdress'>>
You explain that, while you have come to quite enjoy crossdressing and such you still identify as a man.<br>
<br>
"@@.npc_psychiatrist;I see, I see well, just pay attention to your feelings, spending enough time as a cute girl well... I daresay you reach a point where you never want to go back.@@"
<<case 'femboy'>>
You explain that you think of yourself as male... but dressing femme and sexy is fun...<br>
<br>
"@@.npc_psychiatrist;Ah! A femboy! What fun. Gender is what you make of it... and it would seem that what you make of it is cute and flirty.@@"
<<case 'agender'>>
You state that, in light of everything that has happened to you're feeling like disassociating from the concept of gender entirely.<br>
<br>
"@@.npc_psychiatrist;Interesting, a valid choice, certainly only... I find it is best to define oneself by what they are, not solely by what they are not. Certainly you can reject the popular choices in the matter, but do try to come up with a personal philosophy that stands on its own as well.@@"
<<case 'fluid'>>
You state that you've come to consider yourself as more gender fluid, your preferences taking novel form as you pick and chose your favourite bits from all ends of the spectrum.<br>
<br>
"@@.npc_psychiatrist;Very interesting, I encourage you to keep exploring in this direction only and see where the waters take you.@@"
<<case 'girl'>>
Somewhat nervously you tell her that you think of yourself as a girl. She smiles wide before responding with enthusiastic excitement.<br>
<br>
"@@.npc_psychiatrist;Of course you are! But say it louder, prouder! Come on now, I'm a girl! A wonderful, cute girl!@@" She pauses for a moment before encouraging you further. "@@.npc_psychiatrist;Come, your turn, shout your truth!@@"<br>
<br>
You hesitate, but the opportunity is just too alluring and you do as she says, your voice warbling slightly before booming forth with confidence you didn't even know you had as you finish off declaring yourself a "cute girl!" <br>
<br>
She looks almost giddy, clapping excitedly. "@@.npc_psychiatrist;Perfection! Another summit climbed, another achievement unlocked, I just feel blessed to have been fortunate enough to bear witness!@@"
<<case 'conf_girl'>>
You boldly assert that you are a woman. She smiles.<br>
<br>
<<if $npc_psychiatrist.sessions == 1>>
"@@.npc_psychiatrist;Preach it, sister! Oh, I can tell you are going to be just SUCH a lovely, enthusiastic patient. I hope to have the opportunity to play a part in aiding your continued growth into the lovely lady you were always meant to be.@@"
<<else>>
"@@.npc_psychiatrist;Preach it, sister! Oh, I've known for a long time, of course but... well, it is just so gratifying to see you declare it yourself. I hope to continue to do my small part in aiding your continued growth into the lovely lady you were always meant to be.@@"
<</if>>
<<default>>
ERROR unexpected scene.gender: <<=$scene.gender>>
<</switch>>
<br><br>
<<if $scene.stressful>>
You think about her words, but you find yourself more stressed having made your statement than you were before, maybe because on some level it feels like you weren't ready?
<<else>>
You feel like a weight has been lifted, significantly less stressed now that you have made your declaration openly.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: lose anal virginity
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $scene.themeId = setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_1')>>
<<set $scene.firstAnalTalk = $npc_psychiatrist.themes['other'][$scene.themeId].done <= 1>>
<<if $scene.firstAnalTalk>>
<<switch $player.virgin.anal>>
<<case 'npc_prostitution_client'>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<case 'gloryhole' 'npc_chuck' 'dog'>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.firstAnalTalk>>
You bring up the fact that you got fucked in the ass for the first time.<br>
<br>
<<if State.hasPlayed("event_psychiatrist_session_pegging_virginity_1")>>
She raises an eyebrow in puzzlement. "@@.npc_psychiatrist;But I thought you had been pegged? How is that not—@@"<br>
<br>
You blush in embarrassment and explain that yes, you have been pegged, but that feeling a hot, flesh and blood cock pumping inside of your slut hole, making your body open to the cock's will... well, that's different, isn't it?
<<else>>
She nods and asks you to tell her how it felt. You blush in embarrassment and try to describe what it was like to feel a hot, flesh and blood cock pumping inside of your slut hole, making your body open to its will... your voice trails off as you are struck with the thought that she was probably talking about how it made you feel emotionally, not the physical experience of the moment.
<</if>>
<br><br>
She smiles as you realise the flowery way you described the rigid member that had explored your hole. "@@.npc_psychiatrist;I see, I see, so, who was the lucky <<if $options.fem>>person who was the first to spear you with their cock<<else>>boy, or was it a lucky girl who was first to spear you with her lady lance<</if>>?@@"<br>
<br>
<<switch $player.virgin.anal>>
<<case 'npc_prostitution_client'>>
You blush and explain that it was with one of your clients when you were working as a prostitute.<br>
<br>
"@@.npc_psychiatrist;My, my, well, I hope they paid extra for such a privilege.@@"<br>
<<case 'gloryhole'>>
You reply that, technically, you don't actually know, since you were working in the gloryhole at the time you never actually saw your partner.<br>
<br>
She shifts in her chair, seeming to need to adjust herself. "@@.npc_psychiatrist;My, my, aren't you a slut! Oh, but I mean that in a good way, being a slut is great!@@"
<<case 'npc_futa'>>
You reply that it was with a shy- well, not anymore, but she used be a shy girl at work, but that with her new cock she's quite a bit more adventurous.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;It sounds like she isn't the only one! A lady penis really is a wonderful thing, every girl should have one, if she wants.@@"
<<case 'npc_technician'>>
You smile at the memory and tell her it happened with your girlfriend, <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_psychiatrist;Oh how lovely. Certainly sex can be fun in all manner of ways but your first time being with someone that cares for and about you, well, that's just lovely to hear.@@"
<<case 'npc_manager'>>
You smile at the memory and tell her it happened with, <<=setup.getNpcName("npc_manager","formal")>>. That, after you spent the evening at her house she revealed a certain "surprise" and plowed you like never before.<br>
<br>
"@@.npc_psychiatrist;Well, well... isn't medical technology wonderful? <<=setup.getNpcName("npc_manager","first")>> must care for you very much to grant you such an intimate experience. As wonderful as a strap-on may be, well... there is just something about a real human cock... isn't there?@@"
<<case 'npc_landlord'>>
You smile at the memory and tell her it happened with <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
"@@.npc_psychiatrist;Oh how lovely. There is something to be said for the maturity and experience of age, it is just lovely that you have found a relationship with such a nice <<man npc_landlord>>.@@"
<<case 'npc_admin'>>
You smile at the memory and tell her it happened with your old friend become <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>>friend<<else>>fuck-buddy<</if>>, <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
"@@.npc_psychiatrist;Oh how lovely. Certainly sex can be fun in all manner of ways but your first time being with someone that cares for and about you, well, that's just lovely to hear.@@"
<<case 'npc_chuck'>>
You explain that, actually... it was with the tentacles of your pet plant, <<=setup.getNpcName("npc_chuck","first")>>.<br>
<br>
"@@.npc_psychiatrist;A plant, you say?@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> asks with a raised eyebrow before having you describe things in more detail. "@@.npc_psychiatrist;Well, that is quite exotic! I had, of course, heard of such botanical miracles... but... well, in any case, congratulations! Such an accomplishment really speaks to your progress in literally opening yourself to exciting new experiences! Now I, of course, encourage you to experiment further, both with your tentacled friend, as well as with more human companionship<<if $fetish.bestiality_hard>>... and other animals<</if>>.@@"
<<case 'dog'>>
You explain that, actually... it was with a dog...<br>
<br>
"@@.npc_psychiatrist;A dog, you say? If you are not speaking metaphorically, well... I suppose that makes you a bitch. And an eager one, at that.@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> states with a sly smile before having you describe things in more detail. "@@.npc_psychiatrist;While I congratulate your knotty adventurousness, and fully support it, no pun intended... well, I will advise you to expand your ass-fucking, to humans partners... and, well I am sure an animal lover like yourself can see all sorts of new horizons before you.@@"
<<case 'npc_development'>>
You reply that it was at work with <<=setup.getNpcName("npc_development","formal")>>.<br>
<br>
"@@.npc_psychiatrist;My, my, that must have been quite instructive,@@" she states with a slight smile and wink. "@@.npc_psychiatrist;On a more serious note, congratulations on taking what we have discussed together and seeking to expand your horizons.@@"
<<case 'npc_nintendolls'>>
You reply that it was at work with <<=setup.getNpcName("npc_nintendolls","formal")>>.<br>
<br>
"@@.npc_psychiatrist;My, my, looking to pay off past mistakes?@@" she states with a slight smile and wink. "@@.npc_psychiatrist;I read your file, of course, and while you shouldering the full blame for a sequence of events leading to the data loss was, perhaps, unjust, well... in the end, it is all working out, right?@@"
<<case 'npc_work_doctor'>>
You reply that it was at work with <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> is silent for several long seconds. "@@.npc_psychiatrist;I see... well, that was certainly a choice on your part... or perhaps not? No, likely not a choice at all, given <<=setup.getNpcName("npc_work_doctor","formal")>>... still, regardless of the assuredly poor introduction, one can always learn and more forward.@@"
<<case 'bum'>>
You reply that it was with some anonymous bum on the street.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> frowns "@@.npc_psychiatrist;no... while I encourage you to experiment, well... I think you should have more self-respect. Certainly being a public use slut is laudable... but one need pay attention to their own needs before performing charity, and I would encourage you to show a bit more prudence in the future.@@"
<<case "bar_woman" "bar_man">>
You explain that it was in a one-night stand with a <<if $player.virgin.anal == "bar_man">>man<<else>>woman<</if>> you picked up at the bar.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Just looking to get it over with, hmm? Well, good enough, I suppose. But, as wonderful as it is to bend over and get fucked in the ass, I encourage you to seek out intimacy, as well. Being a hit it and quit it partner is all well and good, but there are unique depths to be reached with more long-term partners, as well.@@"
<<default>>
ERROR: unhandled anal virginity: <<=$player.virgin.anal>>
/%note: may be broken on some old saves, fix is too much effort %/
<</switch>>
<br><br>
She scribbles down some notes and then looks back up at you. "@@.npc_psychiatrist;And how do you feel about the whole situation?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you loved it and can't wait to get fucked again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say it was okay." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you feel dirty." 60 "<<set $scene.react='no'>>">>]
<<else>>
Again you bring up how you lost your anal virginity.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> pauses and looks at you with a slight smile. "@@.npc_psychiatrist;Hmm... do you really want to talk about that again or is this your sneaky way of asking for something else?@@" One of her hands disappears under the desk and you hear a slight shuffle of clothing. "@@.npc_psychiatrist;Well... do you want to... "work through" your feelings about being fucked in the ass? If so well... how about you start by telling me again how you felt about that first time?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you loved it and can't wait to get fucked again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say it was okay." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you felt dirty." 60 "<<set $scene.react='no'>>">>]<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist topic: lose anal virginity react
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.react>>
<<case 'yes'>>
<<applyExperience 'bimbofication' 12 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<case 'maybe'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<case 'no'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 2>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.react>>
<<case 'yes'>>
You gush about how much you loved the feeling of being fucked in the ass, that you wish you'd discovered the joy of being a cock-socket sooner! As you continue to go on, you realise that she's looking a bit flush, shifting uncomfortably in her chair for a minute before finally stopping you.<br>
<br>
"@@.npc_psychiatrist;I'm sorry. I want to be a professional about this, but... this is just too much. Either we need to change topics, or I need to bend you over this desk and sample that hot hole myself.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Bend over for some more... penetrating therapy." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Decline her offer and move on." 60 "<<set $scene.accept=false>>">>]
<<case 'no'>>
You say you didn't like it at all, that you aren't that type of person, that you don't want to get fucked, you want to do the fucking!<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> remains sombre and calm as your complaints slowly sputter out before addressing you in an almost patronising way. "@@.npc_psychiatrist;Are you done?@@" she shakes her head "@@.npc_psychiatrist;I am sorry to say that I really am quite disappointed in you. Our work together is all about opening you up to being more relaxed and comfortable in your own skin. Such a reaction as this... after all, if you didn't want to "get fucked," as you so crudely stated, you could have just said no. Instead you, to remain consistent with your style "took it in the ass like a <<if $fetish.sissy>>sissy <</if>>bitch" isn't that right?@@"<br>
<br>
Taken off guard by her words, rendered in a totally clinical tone, you sputter and try to object, but your words are jumbled and incoherent, especially when she rises to her feet, walking around the desk and then standing over you, a small, but VERY noticeable bulge almost touching your face.<br>
<br>
"@@.npc_psychiatrist;Now, a reaction like yours comes from a place of fear and self-loathing, both of which are highly negative emotions that belong nowhere near your adorable, cute head. So, what do you say? Are you ready to face your fear?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Face your fear and bend over for some more penetrating therapy." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Say you're not ready." 60 "<<set $scene.accept=false>>">>]
<<case 'maybe'>>
You shrug, saying that you don't really have strong feelings about your ass-fucking one way or the other. <<=setup.getNpcName("npc_psychiatrist","formal")>> frowns.<br>
<br>
"@@.npc_psychiatrist;Hmm, such a muted response to an event that, well... you have to admit was quite a significant one. I think you may want to spend more time contemplating things, maybe you just haven't had time to process, but know, as always, I am here whenever you are ready to admit that you are a <<if $fetish.sissy>>sissy <</if>>butt-slut.@@"<br>
<br>
Her final words; rendered in the same clinical tone as the rest, take you off-guard and you blink and sputter as you try to object. She looks down her nose at you until your voice fades. "@@.npc_psychiatrist;I apologise for using such crude terminology but, as you just saw, it was necessary to break through this shell of self-denial you had built around your memory. So, now that we have proven that you are not "take it or leave it" about a nice hard cock in your ass tell me how you REALLY feel about what happened.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you loved it and can't wait to get fucked again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_2" "Say you feel dirty." 60 "<<set $scene.react='no'>>">>]
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
</div>/*#
#desc: psychiatrist topic: psychiatrist fucks your ass
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 3>>
<<set $npc_psychiatrist.flags.therapy_events.anal = true>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_psychiatrist.penis_size 'normal' $SEEN_FRIEND>>
<<playerOrgasm>>
<<else>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
As you bend over <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> desk and spread your cheeks, you momentarily reflect on how you got here — from talking about the recent popping of your anal cherry to now, bent over and exposed and about to be fucked in the ass again; this time by your lovely therapist.
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
Her fingers wrap around the base of your plug and gently move it back and forth in your ass as a preamble, working you until you start to moan before popping it free and laying her <<getWordPenis false>> between your cheeks.
<</if>>
<br><br>
"@@.npc_psychiatrist;Are you ready for a doctor-prescribed dose of vitamin My Cock?@@" She asks and you moan even harder, the heat of her <<getWordPenis false>> already turning you on as you are now desperate to feel it inside of you. "@@.npc_psychiatrist;Very well, administering a FULL dose.@@" She adds as she thrusts into you.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
She may be small by your standards, but she makes up for it with consummate skill, and you are soon gasping and moaning, amazed at how giving of a lover she is. Her hands caress your body as she gives your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> the time of its life.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Her small penis is welcome, sliding into you with ease, a reminder of how wonderful anal sex can be with the right partner.
<<else>>
Her small penis is welcome, sliding into you without the slightest pain, a reminder of how wonderful anal sex can be with the right partner.
<</if>>
And the "right partner" she is, showing consummate skill as she stimulates your hole, using her knowledge of anatomy to perfectly hit your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> with every stroke as her delicate fingers roam over your hips.
<</if>>
<br><br>
"@@.npc_psychiatrist;Patient is reacting well, increasing the dose.@@" She continues as she quickens her pace.<br>
<br>
You gasp something approximating "@@.pc;Yes@@" panting and moaning and loving every second and centimetre that she is giving to you.<br>
<br>
Working you perfectly, it isn't long before you cum — a pure analgasm that has<<if $player.body_ref.penis>> your seed dripping down the front of her desk as<</if>> you almost go limp, barely cognisant of her own, smaller orgasm that comes a moment later.<br>
<br>
"@@.npc_psychiatrist;Treatment successful, patient has been calmed and is showing very positive reactions to the medication. It is advised that patient continue to seek out such treatments on an ongoing basis.@@" <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>As she talks, she slides your freshly lubed plug back into your hole, sealing her juices inside of you and making you shudder.<</if>><br>
<br>
Managing to compose yourself by the time she returns to her side of the desk, you wipe a bit of drool off your mouth and take your seat.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<else>>
<<switch $scene.react>>
<<case 'yes'>>
Blushing you thank her for the offer, but respond that you'd like to focus back on your therapy. Shifting in her chair with obvious discomfort she winces and then nods.<br>
<br>
"@@.npc_psychiatrist;Very well, but I am making a note that you are behaving like an evil cock-tease.@@"
<<case 'no'>>
She stands over you for a heartbeat longer before turning, her scent lingering in your nostrils as she circles her desk and slowly lowers back down into her chair. She shakes her head in disappointment.<br>
<br>
"@@.npc_psychiatrist;Very well, if you change your mind and wish to experiment some other time, well... I would be up for it.@@"<br>
<br>
You nod and change the subject.
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist topic: working at maid cafe
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You excitedly tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about working shifts at Cafe Newtype IV.<br>
<br>
"@@.npc_psychiatrist;On a more therapeutic note, I encourage you to keep working there, it really seems like a perfect confluence of your burgeoning interests, plus, from what I understand, the staff there would be almost entirely made up of people like us and that sort of camaraderie is just, just lovely.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: cleaning apartments as a maid
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your part-time job cleaning apartments.<br>
<br>
"@@.npc_psychiatrist;Cleaning apartments, is that all? Because I sense that there is something more that you are not telling me...@@"<br>
<br>
You blush and admit that, while cleaning said apartments, you dress in a maid outfit.<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60>>
"@@.npc_psychiatrist;I knew it! Well, I guess given your present attire it was an easy guess... mmm, you do look quite cute and lovely in that, makes me want to go home and make a mess of things... do you do house calls?@@"
<<else>>
"@@.npc_psychiatrist;Mmmm, I knew there was something else... ah I can picture you now, a cute skirt, lots of lace and ruffles... oh I bet you look adorable! Why, it makes me want to go home and make a mess of things... do you do house calls?@@"
<</if>>
<br><br>
She laughs before continuing. "@@.npc_psychiatrist;Just a little joke, abusing you for labour like that well... it would be against patient/therapist code of ethics.@@"<br>
<br>
<<printThought "Wait, THAT'S her ethical line in the sand?">><br>
<br>
"@@.npc_psychiatrist;Anyway I believe congratulations are in order. You have mentioned money woes before and I think it is just lovely that you have shown the motivation and initiative to find some extra work... work that, if I do say so myself... you seem perfectly suited for, well, in the sense of looking just divine in a nice maid dress!@@"<br>
<br>
You blush at the compliment and move on.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: CDS presentation, brazen
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<applyExperience 'humiliation' 11 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the presentation you gave with <<=setup.getNpcName('npc_admin', 'first')>> announcing the merger of your old company with your current place of employment. She seems particularly interested in you describing the emotions you felt when <<=setup.getNpcName('npc_admin', 'first')>> "revealed" you to the whole auditorium. As you describe the memory, you find yourself straightening in your chair with pride.<br>
<br>
"@@.npc_psychiatrist;Well! From the sound of things, you made quite the impression! Mergers, even a theoretically positive one such as this well... they are always stressful and I know your efforts will have your old friends and coworkers feeling more optimistic about the whole thing. Plus, well... it sounds like you broke through some lingering psychological barriers of your own.@@" She smiles as you beam even brighter. "@@.npc_psychiatrist;Lovely, just be careful that you do not mistake courage for bull-headedness. Be adventurous, certainly, but think things through lest you get in too far over your cute head.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: CDS presentation, humiliated
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the presentation you gave with <<=setup.getNpcName('npc_admin', 'first')>> announcing the merger of your old company with your current place of employment. She seems particularly interested in you describing the emotions you felt when <<=setup.getNpcName('npc_admin', 'first')>> "revealed" you to the whole auditorium. As you relive the memory, you find yourself nervously shifting in your chair.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles at you in comfort. "@@.npc_psychiatrist;It sounds like that was quite an overwhelming experience, but it all worked out in the end, right?@@" You nod, trying to return her smile. "@@.npc_psychiatrist;There, there, you're just a little sensitive, it's not a bad thing, in some ways it's actually a positive. I mean, have you seen how adorably cute you get when you're blushing. Yes, like that, exactly!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: lose pegging virginity
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $scene.themeId = setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_2')>>
<<set $scene.firstPeggingTalk = $npc_psychiatrist.themes['other'][$scene.themeId].done <= 1>>
<<if $scene.firstPeggingTalk>>
<<switch $player.virgin.pegged>>
<<case 'npc_manager'>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up the fact that you got pegged in the ass for the first time.<br>
<br>
"@@.npc_psychiatrist;I see. Well, I believe congratulations are in order! And, tell me, who was the lucky woman so blessed to de-flower your lovely behind?@@"<br>
<br>
<<if $player.virgin.anal>>
You try to explain that, actually you've been fucked in the ass before, but she rolls her eyes. "@@.npc_psychiatrist;Come now! There are all manner of virginities to be explored. I mean, with your experience I am sure you would agree that it is quite different for you AND your partner to have an artificial ever-hard cock plundering your depths as compared to a flesh and blood penor, right?@@"<br>
<br>
You think for a moment and suppose she is right and then continue on to her original question.<br>
<br>
<</if>>
<<switch $player.virgin.pegged>>
<<case 'npc_manager'>>
You tell her how <<=setup.getNpcName("npc_manager","formal")>> "rewarded" you for finishing your probationary period as a secretary by taking you over her desk and introducing your ass to her massive strap-on.<br>
<br>
<<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> eyes light up and one of her hands disappears under the desk as she prompts you to narrate every detail of your "de-flowering." <br>
<br>
Though you blush the whole time, you find yourself almost relieved to be able to talk about it, how <<=setup.getNpcName("npc_manager","formal")>>
<<switch $npc_manager.flags.pegging.style>>
<<case "good">>
made love to your ass, the intimate moment you shared seeming to strengthen the bonds between the two of you while leaving you satisfied and eager to continue exploring this new realm of pleasure.
<<case "cruel">>
harshly fucked your ass, mercilessly re-enforcing the hierarchy between the two of you, and yet you couldn't help but enjoy it, every thrust seeming to awaken fresh interest in exploring this new realm of pleasure.
<<case "neutral">>
almost dispassionately fucked you, her workmanlike effort re-enforcing the "professional" arrangement that exists between the two of you... and yet you still got off and find yourself interested in continuing to exploring this new realm of pleasure.
<<default>>
ERROR: unexpected npc_manager.flags.pegging.style <<=$npc_manager.flags.pegging.style>>
<</switch>>
<br><br>
By the end of your at times flowery description, <<=setup.getNpcName("npc_psychiatrist","formal")>> is looking more than a little hot and bothered. "@@.npc_psychiatrist;Well, ah, that mmm, that sounds just lovely for you. A testament to your progress that you are able to appreciate such an experience. Do continue to keep me informed of your... continuing exploration of your sexuality. Having a FULL understanding of such is vital to my being able to provide you with the best therapy possible.@@" It seems like she is about to propose something else, but she takes a deep breath and seems to calm down. "@@.npc_psychiatrist;Speaking of, what else did you wish to discuss today?@@"
<<case 'npc_barista'>>
You tell her how you managed to get <<=setup.getNpcName("npc_barista","nickname")>> to peg you after work.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> is pensive for a moment, seeming to need to compose herself before she hurriedly tries to move things along. "@@.npc_psychiatrist;Yes, well... that is quite good for you, being more adventurous and such... was there anything else you wished to speak on?@@"
<<default>>
ERROR: unhandled pegging virginity: <<=$player.virgin.pegged>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: meeting your predecessor
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up how you recently met your predecessor, <<=setup.getNpcName("npc_secretary","nickname")>>. To your slight surprise <<=setup.getNpcName("npc_psychiatrist","formal")>> seems disinterested in hearing any more about the encounter.<br>
<br>
"@@.npc_psychiatrist;While <<=setup.getNpcName("npc_secretary","other")>> is, I am sure, a lovely woman we are here to talk about you. I believe it would be best if we changed subjects to some more personal matters.@@"<br>
<br>
You are a bit puzzled, this sort of response is quite out of character for <<=setup.getNpcName("npc_psychiatrist","formal")>>, but you nod and continue on to something else.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: work_doctor
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName("npc_work_doctor","formal")>>. <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> gaze narrows for a moment before her normal welcoming smile re-asserts itself. She spends several minutes practically interrogating you about your interactions with <<=setup.getNpcName("npc_work_doctor","formal")>> before suddenly shifting the subject.<br>
<br>
"@@.npc_psychiatrist;Just be careful. Whereas I operate as an independent contractor <<=setup.getNpcName("npc_work_doctor","formal")>> is a full employee and thus <<his npc_work_doctor>> primary interest is in the company, not necessarily <<his npc_work_doctor>> patients. Not that I would ever accuse <<him npc_work_doctor>> of wishing harm, of course! Just... exercise judgement.@@"<br>
<br>
Her warning, and sudden back-pedal seems quite odd as she hurries the conversation along.<br>
<br>
<<printThought 'Hmm, I do not think she likes <<=setup.getNpcName("npc_work_doctor","formal")>> very much, even beyond professional rivalries.'>><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: sissy pill mk1 overdose
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> about your recent overdose on <<=setup.getItemName('sissy_pill_mk1')>>.<br>
<br>
She shakes her head, tsking in disappointment. "@@.npc_psychiatrist;See, this is why I dislike pharmacology as a substitute for therapy, just a few milligrams off and there can be such catastrophic results! Fortunately it sounds like you made it through alright just... be careful, hmm? I know I encourage you to be more adventurous but, well... one should still exercise prudence.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: sissy pill mk1 super overdose
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> about how, with the <<=setup.getItemName('sissy_pill_mk1')>> pills not working, you tried to add alcohol, only to pass out and be told by <<=setup.getNpcName("npc_work_doctor","formal")>> that you have to be on another drug to treat your condition...<br>
<br>
She shakes her head, looking quite concerned. "@@.npc_psychiatrist;That... you really must take greater care. These drugs are very powerful and the human body, while versatile, is also vulnerable.@@" She seems to think for a moment, as if carefully composing her words. "@@.npc_psychiatrist;You are... fortunate that things did not end up worse. I advise you to take great care in the future in terms of what you imbibe, and pay careful consideration to trusted medical professionals.@@"<br>
<br>
<<printThought 'The way she phrased that... I do not think she trusts <<=setup.getNpcName("npc_work_doctor","formal")>>...'>><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: sissy pill mk2 overdose
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> about overdosing on <<=setup.getItemName('personal_medication')>>.<br>
<br>
She frowns, looking very concerned. "@@.npc_psychiatrist;Oh no! Are you okay? Those are such powerful drugs, you really should not be messing around like that. Why I do not even know why you were prescribed it in the first place, but to go above clinical guideliness... please, promise me you will show more care in the future? Your mind has been developing so nicely, I would hate to see anything happen to it...@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: work as nurse
#status: FINISHED 0.7.0.0
#ignore_spell: subje
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName("npc_psychiatrist","formal")>> about working as a nurse.<br>
<br>
"@@.npc_psychiatrist;Oh my, helping out <<=setup.getNpcName("npc_work_doctor","formal")>>, I presume? You know, sometimes I miss having access to such a staff and test subjects...@@" Her voice trails off for a moment. "@@.npc_psychiatrist;Anyway, just keep your wits about you. Certainly the uniform exists for your protection but, well, you still never know what can happen when dealing with volatile test subje- I mean, patients.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: sissyomatic
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName("npc_psychiatrist","formal")>> about <<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>><<=setup.getItemTypeName('cage')>><<else>>your the 9001-series chastity device<</if>>.<br>
<br>
"@@.npc_psychiatrist;A <<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>><<=setup.getItemTypeName('cage')>><<else>>9001-series<</if>>? Such a major step, and what brought you to this point of glorious submission?@@"<br>
<br>
<<switch $player.sec_style.submission.sissyomatic>>
<<case "strict">>
You explain that you had no choice in the matter; that you were brutally forced into the evil device when you showed up to work without wearing chastity...<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> tries to comfort you "@@.npc_psychiatrist;Oh, you poor dear! And I bet they used that evil burning lube for the installation? Oh, I am so sorry you had to go through all of that though... well, I suppose you should just move on, try to look at the upside rather than dwell on the mistakes of the past. Consequences have actions and the company asserting its control, well... you have worked there long enough that this could hardly have come as a surprise.@@"
<<case "forced">>
You explain that you had no choice in the matter; that you accidentally broke your chastity device and this crazy thing is the punishing result.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> tries to comfort you "@@.npc_psychiatrist;Oh, you poor dear! And I bet they used that evil burning lube for the installation? Oh, I am so sorry you had to go through all of that though... well, I suppose you should just move on, try to look at the upside rather than dwell on the mistakes of the past.@@"
<<case "money">>
You explain that you agreed to be locked into it for a more lucrative opportunity to perform your work as a nurse for <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> frowns slightly. "@@.npc_psychiatrist;Are you really so strapped for money? <<if $npc_psychiatrist.hypnosis==0>>I mean, you could just show up for my VR therapy study rather than take such a... drastic step. <<elseif $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && $currentTasks.psychiatrist_endless_hypnosis_1.finished>>Why not talk to me about re-enrolling in my experimental VR therapy study? <</if>>Well, what is done is done, I wish you luck, but such a device is quite a responsibility.@@"
<<case "voluntary" >>
You let her in on the secret of you printing one up for yourself and locking your naughty bits away.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> looks momentarily surprised. "@@.npc_psychiatrist;Now that... wow, locking oneself in a <<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>><<=setup.getItemTypeName('cage')>><<else>>9001-series<</if>>... that is... quite the step. I hope you know what you're getting into, but at this point it isn't like there is really a way back...@@"
<<case "obedient">>
You tell her that you requested such from <<=setup.getNpcName("npc_manager","formal")>> because you thought it would please her.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles knowingly. "@@.npc_psychiatrist;Oh, I bet it did, I can only imagine the look on <<=ps(setup.getNpcName("npc_manager","first"))>> face when she first locked you up... I suppose this was inevitable, really, a proper end state for a sweet thing like yourself.@@"
<<case "enthusiast">>
You tell her that you begged for such from <<=setup.getNpcName("npc_manager","formal")>> in a quest for ultimate security.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods. "@@.npc_psychiatrist;Well security you definitely achieved. <<=setup.getNpcName("npc_manager","first")>> must have been so proud to grant your wish.@@"
<<default>>
ERROR, unknown sec_style.sissyomatic: <<=$player.sec_style.submission.sissyomatic>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: being milked at work
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up how your side job of working at the Cafe 52 coffee shop now involves you being hooked up to breast and penile milking devices.<br>
<br>
"@@.npc_psychiatrist;Interesting, those can get quite intense, what do you think of these new responsibilities?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_barista_work_milked_2" 'Say you enjoy it.' 60 "<<set $scene.like=true>>">>]
[<<moveTo "event_psychiatrist_session_barista_work_milked_2" "Say you hate it." 60 "<<set $scene.like=false>>">>]
</div>/*#
#desc: psychiatrist topic: your thoughts about being milked at work
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.like>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.like>>
<<if $player.body_ref.milkProduction > 0>>
You reply that you take pride in your new duties, enjoying both the act of being milked above and below, as well as the obvious appreciation of your customers at the "high quality" material you produce for them.<br>
<br>
"@@.npc_psychiatrist;It's good to feel useful, isn't it? I mean, obviously your job, in general, is rewarding, but there's just something special in knowing that something that you personally produced is being consumed, becoming a part of someone else, while bringing a bit of joy to their life.@@"
<<else>>
You reply that you take pride in your new duties, even if the breast cups are a bit superfluous.<br>
<br>
"@@.npc_psychiatrist;Hmm, you know there are procedures for that, right? A bit of encouragement, some hormones and before you know it you could be a sexy hu-cow producing nummy, nummy milk!@@"<br>
<br>
<<printThought "Hmmm, that would be interesting, I wonder if I'd get paid more, as well?">><br>
<br>
You thank her for the suggestion.
<</if>>
<<else>>
<<if $player.body_ref.milkProduction > 0>>
You state that you really don't enjoy the combination of sensory overload and embarrassment of being constantly pumped for <<if $fetish.sissy>>sissy <</if>>milk and cum while you're trying to do your job at Cafe 52.<br>
<br>
"@@.npc_psychiatrist;That's too bad, what might help, however, is to think of it from the other direction. Pay attention to all of your customers, how much they must enjoy what you are producing for them. I think if you focus on that you will find your duties less burdensome... perhaps even enjoyable.@@"
<<else>>
You state that you dislike the new "milking" routine, that it leaves your chest feeling quite sore and your <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>>clit<</if>> sensitive and tired.<br>
<br>
"@@.npc_psychiatrist;You know, the problem is probably that you aren't producing milk. Have you considered doing something about that? It's a pretty straightforward process, a bit of hormones, some dedicated stimulation and boom, you'll be producing yummy <<if $fetish.sissy>>sissy <</if>>milk to go with your "special" cream.@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: being "serviced" by barista
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the crazy recent event wherein <<=setup.getNpcName('npc_barista', 'nickname')>> strapped you down and pegged you to spur you back to production after you had run "dry" of milk and <<if $fetish.sissy>>sissy<<else>>special<</if>> juice mid-shift. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> listens with rapt attention, asking you many clarifying questions as to exactly how you felt as well as the reactions of customers watching on.<br>
<br>
"@@.npc_psychiatrist;Well! While that sounds like quite the intense bit of fun, I think you really need to be more careful. After all, it is your job to be "productive" from the get-go, having to take the time off mid-shift for service... however enjoyable it might have been, well... that's a bit rude, don't you think? I recommend showing more care with your "extra-curricular" activities, maybe practicing some edging and orgasm denial? To make sure you are full and ready to produce when you're on the clock.@@"<br>
<br>
You blush at the casual acceptance she shows to the fact that you have a job that sees you milked and sucked for hours at a time, but end up thanking her for the advice and the helpful spirit in which it was given.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: see barista's milkers
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You start to describe the <<if $player.sec_style.sex.milking != "">>milking device<<else>>strange contraptions<</if>> <<=setup.getNpcName("npc_barista", "nickname")>> has come to wear strapped to her breasts.<br>
<br>
Halfway through the description, <<=setup.getNpcName("npc_psychiatrist", "formal")>> perks up with interest.<br>
<br>
"@@.npc_psychiatrist;Ah yes, seems they finally rolled out the milking programme! I had heard that it was coming soon, <<=setup.getNpcName("npc_barista", "nickname")>> was so excited to be accepted into the initial pilot program. The results in the lab were quite promising, medical benefits of course, to say nothing of the morale boost it's sure to give to customers.@@"<br>
<br>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'supplement', 'theme_psychiatrist_supplement_12')>>
<<if (_themeId != -1 && $npc_psychiatrist.themes.other[_themeId].done > 0)>>
"@@.npc_psychiatrist;Anyway, if you are so intrigued, well... I am sure <<=setup.getNpcName("npc_barista", "nickname")>> could "hook you up" with an opportunity or two...@@"<br>
<br>
You bite your lip and <<=setup.getNpcName("npc_psychiatrist", "formal")>> smiles wider, clearly remembering your previous discussions.
<<else>>
You're stunned at her reaction, not only recognising what was going on, but considering it normal, even... expected? Noticing your confusion she continues on.<br>
<br>
"@@.npc_psychiatrist;Oh, but you really should jump on this opportunity! I bet a cute <<if $fetish.sissy>>sissy<<else>>girl<</if>> like yourself would bring in a whole bunch of delighted customers if you were to contribute your time and fluids... I mean, you don't think it's just breasts that can be milked, do you?@@"<br>
<br>
You blush,
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>> your <<getWordMyPenis>> swelling with excitement against its prison<<else>> your <<getWordMyPenis>> swelling with excitement at the idea<</if>>.
<<else>>
Your cunt dripping in excitement at the idea.
<</if>>
<br><br>
"@@.npc_psychiatrist;Anyway, I encourage you to talk to <<=setup.getNpcName("npc_barista", "nickname")>> about it, and if you get the opportunity, to work a shift along side! If you're really ambitious, well... modern medicine is such that it would not take much for you to have a nice big pair of milk-producing tits of your own! Oh, that would be so hot!@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about milking yourself at home
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about the home "milking" device that you have started using.<br>
<br>
"@@.npc_psychiatrist;Oh! Isn't that just the best? That sucking, pumping feeling, your tasty fluids leaking out while pleasure flows back in? And then at the end to get a tasty treat, a bit of cash or have something to share with a friend? Oh, I bet you taste great, all sweet and delicate...@@" Her thoughts seem to trail off for a second. "@@.npc_psychiatrist;Anyway, my only advice would be to just pace yourself. I mean, sure it SOUNDS like fun to hook yourself up for hours at a time, but you risk being sore after, and you wouldn't want to run dry while you were working, would you? No, as in all things, restraint is key.@@"<br>
<br>
<<printThought "Why do I feel like she had a double meaning intended with restraint?">><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about assignment from manager to milk w/chastity
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your new assignment from <<=setup.getNpcName('npc_manager', 'formal')>> and her mysterious offer to "help" you use the penis milking device while remaining locked and chaste.<br>
<br>
"@@.npc_psychiatrist;A quest! How delightful! Well, I am sure the quest reward will be quite wonderful, you will have to tell me what happens once you obtain everything <<=setup.getNpcName('npc_manager', 'other')>> instructed you to collect.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about getting "tucked in" for a milking night by manager
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You describe the intense night that proceeded after you tied and hooked yourself up for milking under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful command.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> chuckles. "@@.npc_psychiatrist;Ah, that sounds like <<=setup.getNpcName('npc_manager', 'first')>>, so complicated and thorough in her control. What did you think of the whole thing, how much did you enjoy your night spent all secure and stimulated?@@"<br>
<br>
<<if setup.getTotalValue("bondage") > 10>>
[<<moveTo "event_psychiatrist_session_night_milking_2" "Say you loved it." 60 "<<set $scene.liked=true>>">>]<br>
[@@.link_locked;Just the memory of your bound night has your heart racing in excitement, there's no way you could deny that you enjoyed the helpless experience.@@]
<<else>>
[<<moveTo "event_psychiatrist_session_night_milking_2" "Say you loved it." 60 "<<set $scene.liked=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_night_milking_2" "Say you hated sleeping like that." 60 "<<set $scene.liked=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: tell your thoughts on spending a night being bound and milked
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.liked>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.liked>>
You gush about how much you enjoyed being bound and milked over night, how, despite the intensity of the experience, you awoke refreshed and energetic and how grateful you are to <<=setup.getNpcName('npc_manager', 'formal')>> to have taken the time to give you the opportunity.<br>
<br>
<<if $npc_psychiatrist.hypnosis > 0>>
<<printThought "Hmm, talking about it, that feeling of being bound and stimulated seems weirdly familiar...">><br>
<br>
<</if>>
"@@.npc_psychiatrist;I knew you would enjoy something like that, but it just goes to show you that you should embrace even the most intense experiences as you may well discover a new love!@@"
<<else>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how overwhelming and intense it was to be forcibly milked for an entire night, helplessly bound and controlled the entire time.<br>
<br>
"@@.npc_psychiatrist;Hmm, I can feel the emotion in your voice, but it just doesn't match your words. I mean, helpless, intense, overwhelmed, bound, controlled? These are some of your favourite things. I daresay, short of sleeping bound at the foot of your owners bed, there could be no better way for you to rest. I encourage you to face your misguided fears and ask <<=setup.getNpcName('npc_manager', 'other')>> to help you sleep this way again, and again and again.@@"<br>
<br>
"@@.npc_psychiatrist;You can think of it like a <<if $fetish.sissy>>sissy<<else>>girly<</if>> rite of passage — you and all your fellow sisters around the world, bound and milked, a distributed dormitory sharing delightful <<if $fetish.sissy>>sissy <</if>>dreams.@@"<br>
<br>
<<printThought "The way she describes things... it sounds so sexy... maybe I just wasn't prepared?">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about fucking a dog
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You nervously bring up your recent canine encounter and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks up from her notes with obvious interest.<br>
<br>
<<if State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_dog")>>
"@@.npc_psychiatrist;Taking some of your lessons out into the real world, hmm? Isn't it just a delight?@@"
<<else>>
"@@.npc_psychiatrist;Having fun with man's best friend? Isn't it just a delight?@@"
<</if>>
<br><br>
She leans in with a conspiratorial grin. "@@.npc_psychiatrist;The first secret of sex is consent, of course, which is why one should always try to give it so they can have more, but I digress. Anyway, I know some people claim that non-sentient's can't really give such but, well... they've never felt the raw, primal enthusiasm of a nice big "good boy" mounting them from behind. When his canine cock thrusts into you and you feel that drool running down your back? You know he wants this, and you do too. You want to so bad, especially when his knot swells and he locks in place.@@"<br>
<br>
She looks off into the distance as she lustily continues. "@@.npc_psychiatrist;Pinned down, filled, knowing that it will last until he has finished pumping you full of his seed...@@" She smiles and focuses back on you. "@@.npc_psychiatrist;Sorry, got a bit caught up, but I can tell you know what I mean.@@" She winks. "@@.npc_psychiatrist;So, yes, keep at it, the more you investigate your desires the better for your psyche.@@"<br>
<br>
Still somewhat taken aback by her vivid description you nod and move on.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about fucking a horse
#status: RELEASED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your recent "intimate" experience with a horse...<br>
<br>
"@@.npc_psychiatrist;<<if State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_horse")>>Taking some more lesson from your virtual experiments and moving<<else>>Moving<</if>> your way through the quadrupeds, are we? Oh, don't look embarrassed, it's quite understandable. I mean what girl doesn't love a beautiful stallion? Of course most are happy to just feel that hot, strong beast galloping between their legs but you... mmm, you're even more ambitious.@@"<br>
<br>
She stares at you with a slight smile. "@@.npc_psychiatrist;Yes, I can just imagine the expression on your face as you first felt that thick, hot rod exploring depths you didn't even know you had, giving it to you like no human ever could...@@"<br>
<br>
You blush and she smiles even wider. "@@.npc_psychiatrist;Well go on and keep exploring things. Consider indulging your "wild side" just what the doctor ordered...@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: work_doctor aphrodisiac
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up the topic of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> aphrodisiac tests
<<if State.hasPlayed("event_betray_work_doctor_7")>>
and <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles in mild amusement.<br>
<br>
<<if $npc_work_doctor.flags.aphrodisiac.drugStrength <= 3 && State.hasPlayed("event_betray_work_doctor_5")>>
"@@.npc_psychiatrist;Yes, well... that is no longer an issue, good job at sabotaging <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> work, that was just the edge we needed.@@"
<<elseif State.hasPlayed("event_betray_work_doctor_5_nogas_1")>>
"@@.npc_psychiatrist;Yes, well... I suppose that is no longer an issue, and cleverly done <<=setup.getNpcName("npc_work_doctor","formal")>> cutting <<him npc_work_doctor>> off at the source, as it were... we shall probably want to deal with <<his npc_work_doctor>> after this is all over but, for now, there are other priorities.@@"
<<else>>
"@@.npc_psychiatrist;Yes, well... you did not quite properly handle that... though it worked out in the end. Still, we will be wanting to keep those formula safe once this is all over.@@"
<</if>>
<<else>>
and your most recent experience of
<<switch $npc_work_doctor.flags.aphrodisiac.stage>>
<<case 1 2>>
being tasked with fucking a <<man>>
<<case 3 4>>
being presented with a large dildo
<<case 5 6>>
being taken to an orgy
<<case 7 8>>
being presented with a donkey
<<case 9 10>>
being presented with a large pig
<<case 11 12>>
meeting a dragon
<<case 13 14>>
experiencing a simulated insect hive
<<default>>
ERROR: unexpected npc_work_doctor.flags.aphrodisiac.stage <<=$npc_work_doctor.flags.aphrodisiac.stage>>
<</switch>>
while under the effects of <<his npc_work_doctor>> new drug.<br>
<br>
She listens intently as you describe
<<if $npc_work_doctor.flags.aphrodisiac.stage % 2 == 0>>
giving yourself over to sexual desire.<br>
<br>
"@@.npc_psychiatrist;I see... well, of course, you know that lust, even extreme lusts, are perfectly fine and healthy... and in this situation, well...@@" She pauses, choosing her words carefully in light of the surveillance you are both under. "@@.npc_psychiatrist;Well, helping out <<=setup.getNpcName("npc_work_doctor","formal")>> is so important. Think of all the good <<he npc_work_doctor>> can do for the company, and the world, once this new drug is perfected...@@"
<<else>>
resisting doing anything untoward.<br>
<br>
"@@.npc_psychiatrist;I see... it is certainly unfortunate when an experiment proves unsuccessful.@@" She pauses, choosing her words carefully in light of the surveillance you are both under. "@@.npc_psychiatrist;I am sure <<=setup.getNpcName("npc_work_doctor","formal")>> will have worked out something even more effective for next time. Think of all the good <<he npc_work_doctor>> can do for the company, and the world, once this new drug is perfected...@@"
<</if>>
<br><br>
<<switch $npc_work_doctor.flags.aphrodisiac.drugStrength>>
<<case 0>>
You note that, with your help, you believe the drug is perfect.<br>
<br>
<<if $fetish.bestiality_hard && $npc_work_doctor.flags.aphrodisiac.stage < 14 || !$fetish.bestiality_hard && $npc_work_doctor.flags.aphrodisiac.stage < 6>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles as she gets your hidden meaning. "@@.npc_psychiatrist;That is just wonderful to hear, though you should continue to help <<him npc_work_doctor>> to make absolutely sure all the "kinks" are ironed out...@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles as she gets your hidden meaning. "@@.npc_psychiatrist;That is just wonderful to hear, certainly indicative of a rosy future...@@"
<</if>>
<br><br>
She smiles at you and nods in approval. You seem to have succeeded in foiling <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> plans, leaving <<him npc_work_doctor>> with a useless drug that <<he npc_work_doctor>> thinks is perfect. <<if $fetish.bestiality_hard && $npc_work_doctor.flags.aphrodisiac.stage < 14 || !$fetish.bestiality_hard && $npc_work_doctor.flags.aphrodisiac.stage < 6>>But you still need to build <<his npc_work_doctor>> confidence in the actually worthless medication.<</if>>
<<case 1 2>>
You note that, with your help, you believe the drug is becoming quite impressive in its subtle effects.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles as she gets your hidden meaning. "@@.npc_psychiatrist;That is just wonderful to hear, <<=setup.getNpcName("npc_work_doctor","formal")>> must be quite happy to have had your assistance in its development, especially now that you are so close to perfection.@@"<br>
<br>
She smiles at you and nods in approval. You have almost succeeded in foiling <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> plans, to leave <<him npc_work_doctor>> with a near-useless drug that <<he npc_work_doctor>> thinks is perfect. All that is left is to push it that little bit further to fully destroy its efficacy.
<<case 3 4>>
You talk about the arousing effects the drug seems to have, how it feels as if it is granting you permission to do things, even if it isn't forcing such upon you.<br>
<br>
"@@.npc_psychiatrist;Interesting, very interesting.@@" She replies. "@@.npc_psychiatrist;Certainly, <<=setup.getNpcName("npc_work_doctor","formal")>> would be looking for a more... impactful effect, but I am sure with your help <<he npc_work_doctor>> should be able to refine it into just what the company needs.@@"<br>
<br>
You nod, recognising her double meaning that you will need to provide your own "motivation" so that <<=setup.getNpcName("npc_work_doctor","formal")>> ends up with something useless while <<he npc_work_doctor>> simultaneously believes the opposite.
<<case 5 6>>
You talk about how arousing it feels to be under the effects of the drug. How things that might normally be considered extreme seem almost natural, and very arousing.<br>
<br>
She nods slowly. "@@.npc_psychiatrist;Hmm, it seems that <<=setup.getNpcName("npc_work_doctor","formal")>> has work yet to do, based on what I heard of <<his npc_work_doctor>> goals. "Complete sexual debasement" was <<his npc_work_doctor>> precise description, it seems that <<he npc_work_doctor>> is not yet there, though with your help...@@"<br>
<br>
Her words hang in the air and you nod. You need to shift your tactics, if <<=setup.getNpcName("npc_work_doctor","formal")>> goes forward with the formula as it is would certainly be very dangerous for everyone.
<<case 7 8>>
You talk about how it has become almost impossible to resist the most extreme urges while under the effects of the drug, mere passive acceptance of sexual thoughts a struggle.<br>
<br>
Her eye twitches with concern but she puts on an artificial smile. "@@.npc_psychiatrist;Well, that is certainly the sort of thing <<=setup.getNpcName("npc_work_doctor","formal")>> was hoping for. Still, I imagine there remains room for you to assist <<him npc_work_doctor>> in... refining it further.@@"<br>
<br>
Her words hang in the air and you nod. You need to shift your tactics, if <<=setup.getNpcName("npc_work_doctor","formal")>> goes forward with the formula as it is would certainly be very dangerous for everyone.
<<case 9 10>>
You talk about how irresistible the drug felt, how completely it turned your every thought to depraved lust.<br>
<br>
Her eye twitches with concern but she puts on an artificial smile. "@@.npc_psychiatrist;Well, that is certainly what <<=setup.getNpcName("npc_work_doctor","formal")>> was hoping for. Still, I imagine there remains room for you to assist <<him npc_work_doctor>> in... refining it further.@@"<br>
<br>
Her words hang in the air and you nod. You need to shift your tactics, if <<=setup.getNpcName("npc_work_doctor","formal")>> going forward with the formula as it is would certainly be very dangerous for everyone.
<<default>>
ERROR: unexpected drug strength: <<=$npc_work_doctor.flags.aphrodisiac.drugStrength>>
<</switch>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk money problems
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain how your money woes keep getting worse, how you barely managed to pay off this month's rent and, combined with your other expenses, you don't know how you're ever going to get out of the hole.<br>
<br>
<<if $fetish.slurs>>
"@@.npc_psychiatrist;Mmmm, yes, debt is definitely one of the less "fun" holes to spend time in. What it comes down to is planning and priorities. First you need to consider your Financial Achievement Goals, think of it as your inner FAG. Once you have that FAG in mind you can put together a Financial Action Plan and then you just focus on FAP, FAP, FAP until you've reached that FAG.@@"<br>
<br>
<<printThought "Wait... does she realise the other meaning to those acronyms?">><br>
<br>
"@@.npc_psychiatrist;With all of that in mind decisions should become easier. Whenever you have a financial decision to make, say a purchase or maybe doing some side work, you just need to think to yourself — does this help me FAP? Does it bring me closer to my FAG? And if both of those are a yes, well, that's a strong argument for doing whatever it is!@@"
<<else>>
"@@.npc_psychiatrist;Mmmm, yes, debt is definitely one of the less "fun" holes to spend time in. What it comes down to is planning and priorities. What you need is a Financial Action Plan. You need to categorise your expenses and incomes and figure out how to minimise the former and maximise the latter. Once you have that laid out it's simple, every day, whenever money comes up you focus on your FAP, just 24/7, FAP, FAP, FAP until it's all you can think of.@@"<br>
<br>
<<printThought "Wait... does she realise the other meaning to that?">><br>
<br>
"@@.npc_psychiatrist;With all of that in mind decisions should become easier. Whenever you have a financial decision to make, say a purchase or maybe doing some side work, you just need to think to yourself — does this help me FAP? Because nothing is more important than FAPing, which means anything that makes you FAP? That's what you want to focus on doing!@@"
<</if>>
<br><br>
You thank her for the unique framing technique and consider your next topic.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about using a butt plug for the first time
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
A bit nervously you tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your first experience using a butt plug on yourself.<br>
<br>
Obviously interested she leans forward and nods.<br>
<br>
"@@.npc_psychiatrist;Well, that is quite interesting, and perfectly understandable. I mean, all sorts of people enjoy playing with their bum's and a plug is a great introduction to such. So, what did you think? Did you enjoy that fun toy pressing against your cute <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>?@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
[<<moveTo "event_psychiatrist_session_plug_2_plugged" "Tell her you liked it so much you're plugged now!" 60>>]<br>
<<else>>
[<<moveTo "event_psychiatrist_session_plug_2" 'Admit you enjoyed it quite a lot.' 60 "<<set $scene.enjoy=true>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_plug_2" 'State that you did not like being plugged at all!' 60 "<<set $scene.enjoy=false>>">>]
</div>/*#
#desc: psychiatrist topic: talk about whether you enjoyed using a butt plug for the first time
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.enjoy>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.enjoy>>
You admit that you quite enjoyed the novel feeling of the butt plug in your ass that, while it was a bit painful to insert, after a while it started feeling... good.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods sagely. "@@.npc_psychiatrist;Of course it felt good! I mean, ignoring the fact that your bum has all sorts of fun nerve endings<<if $player.body_ref.penis>> you've got a prostate up in there and they're designed for a little probing<</if>>! I think it is a very good sign for your mental health that you are investigating this sort of thing, even moreso that you are able to discuss such with myself. Please continue to explore these things, and of course, keep me informed or come to me with any questions you have.@@"<br>
<br>
<<printThought "Did she just prescribe that I should stick things in my butt?">>
<<else>>
You quickly assert that you did not like having something in your butt, that it felt painful and dirty.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns and you would swear she is about to accuse you of being a liar. "@@.npc_psychiatrist;Well, I am, of course, quite sorry that you had such a negative first experience. Still, I applaud you experimenting and I encourage you to consider trying again. Your butt is full of sensitive nerve endings, to say nothing of your wonderful <<if $player.body_ref.penis>>prostate<<else>>bum<</if>>! I think if you can focus on discarding some of your wrong-headed preconceptions you could find a bit of anal play quite enjoyable! Plus, think about the insight that it would give you into the feminine condition to know what it feels like to be penetrated!@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought "She makes a good point, if I'm going to be a girl I really should be prepared to be penetrated...">>
<<else>>
<<printThought 'Do I really need more insight into the "feminine condition?"... and did she just prescribe that I should stick toys in my ass?'>>
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: tell psychiatrist you liked trying out anal plug so much that you're wearing one now
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 5 'little' $SEEN_FRIEND>>
<<changeHorny 10>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain that, in fact, you are wearing a plug in your butt right now!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> appears almost gleeful, insisting that you stand up and show her your stuffed bum.<br>
<br>
You're so caught up in the session you don't even reflect that this is an odd request until your ass is exposed and she is wiggling the base of the plug with her finger.<br>
<br>
You gasp slightly as the plug rubs against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> before she withdraws her hand, leaving you wanting more.<br>
<br>
<<switch setup.getItemFromType('plug')>>
<<case 'analplug_beginner'>>
"@@.npc_psychiatrist;Ah, a beginner model, although quite the cute one the way that gem glitters in your hole. While that is a great choice for long-term wear and to highlight your cute bum I recommend you experiment with other sizes and styles, and do not be afraid to... stretch yourself, why with a bit of practice I'm sure I could easily fit something the size of my fist up inside you!@@"<br>
<br>
That suggestion seems a bit extreme, but you remain silent as you sit back down, the plug shifting slightly as you lower your weight onto the chair.
<<case 'analplug_medium_ems'>>
"@@.npc_psychiatrist;Ooooh, going high tech! A very smart choice, and so versatile if you plug it in.@@"<br>
<br>
<<printThought "Wait... I got this from one of her VR therapy sessions... didn't I?">>
<br>
Your brain starts to hurt as you try to recall what happened during your VR therapy appointment as the fact that you must have gotten the plug yourself forces its way into your mind... yet... why don't you remember where, or why?
<<case 'remote_control_plug'>>
"@@.npc_psychiatrist;Oh! Now THAT is a proper plug! I don't suppose you have the remote on you?@@"<br>
<br>
You shake your head.<br>
<br>
"@@.npc_psychiatrist;Figures, thought probably good — I doubt you'd be able to resist just sitting and playing with yourself if you were allowed control of it. Too bad, I read an interesting paper about combining stimulation with therapy for better results and I would have loved to test it out... oh well, maybe some other time!@@"<br>
<br>
<<printThought "Having my ass played with cannot possibly be a recognised therapy... can it?">>
<<if $npc_psychiatrist.hypnosis > 0>>
<br><br>
This thought has you, for some reason, thinking about your VR therapy sessions, only to wince as attempting to think about that hidden memory proves to be strangely painful. Clearing your thoughts you sit back down on your chair, the large plug shifting inside of you in a pale imitation of what it feels like when it's full of buzzing life.
<</if>>
<<default>>
"@@.npc_psychiatrist;Mmmm, that plug definitely suits you, and I bet it feels even better!@@"<br>
<br>
Giving your rear a final squeeze she has you sit back down, the <<=setup.getItemTypeName('plug')>> shifting inside you as you lower your weight into the chair.
<</switch>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> returns to her desk, taking a few extra moments to arrange her skirt before motioning for you to continue.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: meet barista
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about <<=setup.getNpcName('npc_barista', 'nickname')>> the strangely slutty girl who works at the coffee shop on your floor at work.<br>
<br>
There is brief moment of hesitation before <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles and begins speaking with enthusiasm. "@@.npc_psychiatrist;Oh! She sounds like a fun person, you should make friends, maybe she can give you advice on how to loosen up...@@"<br>
<br>
<<if $npc_psychiatrist.hypnosis>>
<<printThoughtGlitch "Loosen up? I don't want to be a slut!">><br>
<<printThought "Loosen up! I... I want to be a slut!" 40>><br>
<br>
You shudder, finding yourself
<<else>>
You nod,
<</if>>
agreeing with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to try and make friends with <<=setup.getNpcName('npc_barista', 'nickname')>>...<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: you were harassed on the street
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_22'
0
'event_psychiatrist_theme_degradation'
false
>>
<<applyExperience 'humiliation' 8 'skip' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about your recent experience getting sexually harassed while you were minding your own business in public. She frowns and nods in sympathy as she waits for you to finish explaining everything that happened.<br>
<br>
"@@.npc_psychiatrist;I am so sorry to hear that you experienced something like that, but, unfortunately it can be something of a reality of existing as a woman. For clients unaccustomed to such harassment, such as yourself, I have found that a useful technique can be exposing them to similar behaviour in the more controlled environment of therapy.@@"<br>
<br>
Her voice shifts, becoming artificially harsher and yet somehow more... clinical? as she continues. "@@.npc_psychiatrist;What do you think of that, slut? Would some practice make you more comfortable with the fact that anyone looking at you can't help but see you as a whore?@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
You can't help but shudder, as degrading as her words are they only serve to light up the pink bimbo parts of your brain with pleasure.
<<elseif setup.getTotalValue("submission") > 10>>
Her words only serve to punch your submissive buttons and you have to suppress the urge to nod along with her assessment.
<<elseif setup.getTotalValue("humiliation") > 10>>
<<if $player.flags.humiliationStyle == "brazen">>
You have to suppress a moan, intensely aroused at the vulgar reminder of the type of girl you are.
<<else>>
You blush at her words, even as the humiliation serves to arouse you.
<</if>>
<<else>>
You're speechless in shock, the sudden cruel swing from her normal friendly demeanour giving you a bit of mental whiplash.
<</if>>
<br><br>
"@@.npc_psychiatrist;Sorry if that was startling, but the shock better replicates what you would experience in the real world. I can continue further with this style of therapy, if you wish?@@"<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_psychiatrist_theme_degradation" "Beg her to degrade you some more." 30 "<<spendWillpower 1>>">>] <<hint $options "Pushing yourself this far will cost willpower.">> <br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: ask her to verbally degrade therapeutically
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'skip' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Your heart races in anticipation as you beg <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to continue verbally degrading you.<br>
<br>
She pauses, composing herself as her demeanour subtly shifts.<br>
<br>
"@@.npc_psychiatrist;Of course, bitch. To tell the truth it is something of a relief not to put on a false front. Truly, it is a good thing you are paying me because I can see no other reason for anyone not to refer to you as the trashy skank that you are. Look at yourself, dressed like a whore, and a cheap one at that.@@"<br>
<br>
Her lips curl into a cruel smiles as you shift uncomfortably in your chair. She continues on.<br>
<br>
"@@.npc_psychiatrist;What's that? Are you getting aroused from this? I bet you are, you fucking slut. Come on, stop sitting there pretending to be innocent, stand up and walk around, show me what a REAL streetwalker looks like.@@"<br>
<br>
Rising to your feet, you start to pace only for her to egg you on further.<br>
<br>
"@@.npc_psychiatrist;You call that a walk? We both know that isn't how you normally walk, do it right, swing your hips, stick out your tits, yeah, like a real bimbo. That's all you are, <<if $player.body_ref.vagina>>three<<else>>a pair of<</if>> fuck-holes with legs, your greatest dream is to be thrown on the ground and <<if $fetish.get_raped>>raped, but that's impossible because you can't rape the willing and the mere idea of saying no to sex is one you can't even conceive of<<else>>ravished, and you wouldn't even resist, you beg for it with every move you make<</if>>!@@"<br>
<br>
You're weak in the knees at her lurid words, right on the precipice of... something and from the hungry look in her eyes she is too.<br>
<br>
You hold your breath and then, as swiftly as she turned it "on," she's back to her normal friendly self.<br>
<br>
"@@.npc_psychiatrist;Well! I think that is enough for one day, I do hope you found it helpful. Know that I only do it for your benefit. I would never dream of saying such hurtful things to you in malice.@@"<br>
<br>
From the look in her eye while she was ordering you around you aren't certain about that, but you thank her and take your seat.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: bimbo candy
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<if $player.flags.atebimbocandy && -1 == setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_3')>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_3'
7
'event_psychiatrist_session_barista_eat_candy_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the candy that you were given by the slutty barista who works at the coffee shop on your floor at work.<br>
<br>
"@@.npc_psychiatrist;Oooh, the first time she met you and she gave you candy? That must mean she likes you!@@"<br>
<br>
You think about the chocolate that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> gave you at your first meeting<<if $npc_psychiatrist.sessions > 1>>, and every therapy session since..<</if>>. You see her eyes dart oddly away from you for a moment and then she smiles.<br>
<br>
"@@.npc_psychiatrist;So, did you try it?@@"<br>
<br>
<<if $player.flags.atebimbocandy>>
You confess that you did try the candy and she smiles.<br>
<br>
"@@.npc_psychiatrist;Oh, lovely! You really just must talk to me about it sometime!@@"
<<else>>
You explain that you haven't tried it. She frowns.<br>
<br>
"@@.npc_psychiatrist;Hmm, that sounds kind of rude, don't you think? Besides, I bet it's really tasty. When you have some time at home you should really eat it, I bet it will be just... wonderful.@@"<br>
<br>
You respond that you'll consider it and she seems placated.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: ate bimbo candy
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $scene.turnedovercandy = false>>
<<set $scene.othercandy = false>>
<<if setup.checkItemOwned('eaten_candy')>>
<<if setup.checkItemInInventory('eaten_candy')>>
<<deleteItem 'eaten_candy'>>
<<set $scene.turnedovercandy = true>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_3')>>
<<set $npc_psychiatrist.themes.npc_barista[_themeId].repeatable = false>>
<<set $scene.analyze = true>>
<</if>>
<<elseif setup.checkItemInInventory('bimbo_candy')>>
<<deleteItem 'bimbo_candy'>>
<<set $scene.othercandy = true>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_3')>>
<<set $npc_psychiatrist.themes.npc_barista[_themeId].repeatable = false>>
<<set $scene.analyze = true>>
<</if>>
<<if $scene.analyze>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_4'
8
'event_psychiatrist_session_barista_analyze_candy_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about eating the weird candy given to you by the slutty barista at work. You tell her that it tasted of strawberry, cream, cotton candy and rainbows.
<<if !$scene.turnedovercandy && !setup.checkItemOwned('eaten_candy')>>
You continue on with how sucking on it made you feel all funny and dizzy and horny and so good that you ate it all up and felt, like happy and stuff, like your worries weren't so bad...<br>
<br>
"@@.npc_psychiatrist;Mmm, that sounds like a wonderful candy indeed! You should really remember to thank your friend for giving it to you! Maybe she'll share more of her stash!@@"<br>
<br>
<<if setup.getTotalValue("smart") > setup.getTotalValue("bimbofication")>>
<<printThought "Is that a good idea?">>
<<else>>
<<printThought "Like... why didn't I think of that! That sounds yummy!" 40>>
<</if>>
<<if $scene.othercandy>>
You reply that you have obtained another fresh candy.<br>
<br>
"@@.npc_psychiatrist;That should do just as well.@@" She states with a nod and you hand over a piece.<br>
<br>
She gives it a sniff. "@@.npc_psychiatrist;Hmm, can't say that I recognise it, but I'll run it through the lab and let you know what we find out. I wouldn't worry though, I am sure whatever effects it had were temporary, just a fun little party thing.@@"<br>
<br>
You thank her and state that you're still looking forward to the results of the analysis.
<</if>>
<<else>>
You continue on with how sucking on it made you feel all funny and dizzy and horny and you forced yourself to spit it out.<br>
<br>
"@@.npc_psychiatrist;Spit it out? Hmm, it does sound like it may have been a little drugged, how curious, I don't suppose you have what's left with you?@@"<br>
<br>
<<if $scene.turnedovercandy>>
You reply that, actually, you do! She extends her hand and you quickly hand over the wrapped up remains.<br>
<br>
She gives it a sniff. "@@.npc_psychiatrist;Hmm, can't say that I recognise it, but I'll run it through the lab and let you know what we find out. I wouldn't worry though, I am sure whatever effects it had were temporary, just a fun little party thing.@@"<br>
<br>
You thank her and state that you're still looking forward to the results of the analysis.
<<elseif $scene.othercandy>>
You reply that you don't have the original half-eaten candy, but you have another, fresh one.<br>
<br>
"@@.npc_psychiatrist;That should do just as well.@@" She states with a nod and you hand over a piece.<br>
<br>
She gives it a sniff. "@@.npc_psychiatrist;Hmm, can't say that I recognise it, but I'll run it through the lab and let you know what we find out. I wouldn't worry though, I am sure whatever effects it had were temporary, just a fun little party thing.@@"<br>
<br>
You thank her and state that you're still looking forward to the results of the analysis.
<<else>>
You tell her that you didn't bring it with you.<br>
<br>
"@@.npc_psychiatrist;Hmm, well if you could bring it in and talk to me sometime and talk to me again maybe I can have it analysed, see what it was that you consumed.@@"<br>
<br>
You thank her for the offer of assistance.
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: candy analysis results
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.analyze>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_4')>>
<<set $npc_psychiatrist.themes.npc_barista[_themeId].repeatable = false>>
<<set $npc_work_doctor.flags.aphrodisiac.analyzed = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask about the results of analyzing the candy you gave her.<br>
<br>
<<if $scene.analyze>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns slightly and shakes her head. "@@.npc_psychiatrist;How could I have analysed it? You only gave it to me a few minutes ago! You really need to pay attention to things better, there is a difference between playing the bimbo and actually being mindless.@@"
<<else>>
"@@.npc_psychiatrist;Yes, about that... thank you again for getting me the sample. It would seem that <<=setup.getNpcName("npc_work_doctor","formal")>> has made faster advancements than I expected... it explains so much.@@"<br>
<br>
Her eyes flit around the room and you sense a bit of nervousness as she continues. "@@.npc_psychiatrist;That is to say the candy is totally safe, good for you, in fact. Just call it bimbo's little helper and have as much as you like!@@"<br>
<br>
The look and her eyes seems to clash with her words and you get a creepy feeling that you're being watched...
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: chastity
#status: RELEASED 0.7.11.0
#ignore_spell: aaaanyway
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the new requirement that you be locked in chastity for your job... <<if $player.sec_style.submission.chastity == "money">> on top of being locked up after volunteering for a "chastity trial." <</if>><br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> snorts in amusement. "@@.npc_psychiatrist;<<=setup.getNpcName('npc_manager', 'other')>> and her obsession with chastity as control.@@" She shakes her head. "@@.npc_psychiatrist;Not that her techniques are not quite effective but... such overkill, and the restriction... isn't it just torturous to be locked away like that, unable to fulfill your sexual desires?@@"<br>
<br>
You reflexively nod and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins. "@@.npc_psychiatrist;Ah, that look of desperation... so intoxicating, I can see why <<=setup.getNpcName('npc_manager', 'other')>> covets it so...@@" She shakes her head. "@@.npc_psychiatrist;Aaaanyway, we were talking about you, not your owner, I mean, manager. On a personal level I advise you to take this situation as an opportunity, a way to focus your attentions on both your work, as well as broadening your horizons.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_chastity_2" "Actually.. you love being in chastity." 60 "<<set $scene.action='love'>>">>]<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_session_chastity_2" "Complain how uncomfortable it is." 60 "<<set $scene.action='uncomfortable'>>">>]<br>
[<<moveTo "event_psychiatrist_session_chastity_2" "Complain how emasculatingly restrictive it is." 60 "<<set $scene.action='restrict'>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_session_chastity_2" "Complain how uncomfortable it is." 60 "<<set $scene.action='uncomfortable'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_chastity_2" "Reply you'll think about her words." 60 "<<set $scene.action='think'>>">>]
</div>/*#
#desc: psychiatrist topic: chastity
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'love'>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bondage' 10 'terrible' $SEEN_FRIEND>>
<<case 'uncomfortable'>>
<<set $scene.chastity_uncomfortable = true>>
<<case 'restrict'>>
<<set $scene.chastity_restrict = true>>
<<case 'think'>>
<<set $scene.chastity_think = true>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'love'>>
You reply that, actually... you love being in chastity. You breathlessly describe the feel of the constant imprisoning weight of your device, and the reminder that you will helplessly remain so-locked and at the bidding of whoever holds your key.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Such wonderful words, and an enticing description! See what joys are available when opens themselves to new opportunity?@@"
<<case 'uncomfortable'>>
You complain about how being in chastity is so uncomfortable, how you don't understand how you can be expected to put up with something so unbearable.<br>
<br>
"@@.npc_psychiatrist;Unbearable? Now, now <<=$player.first_name>> you really need to focus on precision rather than hyperbole. Inauthentic exaggeration serves no one. But, I think I have something that might help you.@@"<br>
<br>
She leans over to get something out of a desk drawer and then walks around to stand in front of you.<br>
<br>
<<if $player.body_ref.penis>>
"@@.npc_psychiatrist;I believe this is the same "basic" starter model that <<=setup.getNpcName('npc_manager', 'other')>> prefers, yes?@@"<br>
<br>
<<if setup.isItemEquipped("c_cage_pink")>>
She presents the same pink plastic cage presently locked on you. You blush and nod.<br>
<br>
She smiles "@@.npc_psychiatrist;I knew it, that should make this perfect for demonstration purposes.@@"
<<elseif setup.checkItemOwned('c_cage_pink')>>
She presents a familiar pink plastic cage. You nod.<br>
<br>
She smiles "@@.npc_psychiatrist;I thought so, that familiarity should make this perfect for demonstration purposes.@@"
<<else>>
She presents a pink plastic chastity cage. You shake your head.<br>
<br>
"@@.npc_psychiatrist;Interesting, taking a less worn route then, hmm? Well, no matter, this will still work for demonstration purposes.@@"
<</if>>
<<else>>
"@@.npc_psychiatrist;I believe this is the same "basic" starter model that <<=setup.getNpcName('npc_manager', 'other')>> prefers, though, obviously, your equipment requires a different device, but it's all the same principle@@"
<</if>>
<br><br>
She hikes up her skirt to reveal that not only is she not wearing panties, but that she has a soft, almost delicate penis tucked between her thighs. As you stare she lifts her small balls away from her body to snap the ring around her base. A moment later and she has slid into the tube, everything locked in place with a click, the prison actually appearing quite roomy around her practically cute peen.<br>
<br>
"@@.npc_psychiatrist;See how easy that was? It actually feels kind of comforting, like I'm nice and protected<<if setup.checkItemTypeWorn("cage")>> — so, too, with what you're wearing<</if>>.@@"<br>
<br>
<<printThought "Wait, she's — what?">><br>
<br>
You're a bit dumbfounded, finding yourself making a somewhat inane comment as to how much free space there is and she laughs. "@@.npc_psychiatrist;So, actually, that's a negative! When it comes to chastity tighter is better, it prevents chafing as well as halting any untoward swelling immediately — it's much more uncomfortable to get half-hard before coming up short.@@"<br>
<br>
As confident as she sounds you aren't sure if you believe her, temporarily speechless as you stare at her locked-up lady lance.<br>
<br>
She chuckles and tussles your hair. "@@.npc_psychiatrist;So I'll just leave this locked on for the remainder of our session to show that it really isn't such a big thing. Heh, big thing — no pun intended!@@"<br>
<br>
She walks back around her desk to take a seat as you try to find your voice, your thoughts continually drawn to the sight of her caged self dangling in front of you...
<<case 'restrict'>>
You complain that being required to wear chastity is humiliating and <<if $player.identify_as == "male">>emasculating<<else>>submissive<</if>> and that, contract or no, it seems quite ludicrous as a work requirement.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> chuckles. "@@.npc_psychiatrist;Corporate policy can feel quite arcane as a new employee, but think of it in other terms. If you were working on a construction site you would be required to wear a helmet at all times, certainly for the company's liability, but also for your own protection. This is much the same.@@"<br>
<br>
You reply that it doesn't seem like the same thing at all but she just shakes her head.
<<if !setup.checkItemTypeWorn("cage")>>
"@@.npc_psychiatrist;It seems to me that you are just failing to appreciate how helpful being locked up can be at focusing the mind. Maybe if you tried staying locked outside of business hours? Perhaps even ask <<=setup.getNpcName('npc_manager', 'other')>> hold on to the key for you overnight? You've mentioned before wanting to get on her good side and, well... I bet that would be quite the ticket, and a learning experience for yourself, as well.@@"
<<else>>
<<set _cage = setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
"@@.npc_psychiatrist;Come, now. Uou are wearing a cage right now, even though you have the key on you! This complaining you do... is it what you really feel, or is what you think you should say? Because, to my mind, actions speak louder than words and well... you're the one sitting there cute and locked up on your own time.@@"
<<elseif setup.checkItemOwned(_keyId)>>
"@@.npc_psychiatrist;Come, now. You are wearing a cage right now, even though you own the key! Certainly you don't have it on you, but is that, perhaps, merely an effort to protect yourself against your own weakness? I think you know that being in chastity is good for you, you just need a little help to stick to the correct path, which is fine, we all need a bit of assistance from time to time.@@"
<<else>>
"@@.npc_psychiatrist;Do you mean that... or is that just how you think you should feel? That being in chastity outside of work seems like some sort of extra burden? I think you would be best served by taking a step back, every job has aspects that you take home with you, is this one really such a hardship? Or is it, perhaps, a helpful thing, something that you secretly needed all along?@@"
<</if>>
<</if>>
<br><br>
You shift nervously before bringing up her own earlier comment about the downsides of chastity restricting the ability to fulfill desires...<br>
<br>
As if you just fell into a clever trap, she smiles. "@@.npc_psychiatrist;Yes, I did say that, but restrictions breed creativity. Maybe it would be good for you to use this opportunity to experiment around. Sexual satisfaction can come from so much more than merely playing with your penis. Being locked up gives you licence and opportunity to embrace other acts, acts you may find even more pleasurable...@@"
<<case 'think'>>
Not for the first time you find <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> advice a bit strange but you decide it's best to just nod in agreement and say you'll "@@.pc;Think about it.@@"<br>
<br>
Her previous smile fades to a slight frown. "@@.npc_psychiatrist;That sounded a bit uncertain — remember you can talk about anything you want here, that is what these sessions are for! Are you sure there is nothing else you want to say about being locked in chastity? About having something that — no matter how much trouble it might have once gotten you into, you so took for granted forcibly locked away?@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.action == "love">>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<else>>
<<if !$scene.chastity_uncomfortable>>
[<<moveTo "event_psychiatrist_session_chastity_2" "Complain how uncomfortable it is." 60 "<<set $scene.action='uncomfortable'>>">>]<br>
<<else>>
[@@.link_locked;You have already complained that being in chastity is uncomfortable.@@]<br>
<</if>>
<<if $player.body_ref.penis>>
<<if !$scene.chastity_restrict>>
[<<moveTo "event_psychiatrist_session_chastity_2" "Complain how emasculatingly restrictive it is." 60 "<<set $scene.action='restrict'>>">>]<br>
<<else>>
[@@.link_locked;You have already complained about the emasculatingly restrictive effects of being locked in chastity.@@]<br>
<</if>>
<</if>>
<<if $scene.chastity_uncomfortable && ($scene.chastity_restrict || !$player.body_ref.penis)>>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
<</if>>
</div>/*#
#desc: psychiatrist topic: ran out of cum
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_9'
5
'event_psychiatrist_session_cum_supply_1'
true
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about running out of cum to add to your meals.<br>
<br>
"@@.npc_psychiatrist;I see,@@" she states thoughtfully. "@@.npc_psychiatrist;And how did being unable to add cum to your meals make you feel?@@"<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
[<<moveTo "event_psychiatrist_session_out_of_cum_2" "You felt despair." 60 "<<set $scene.action='despair'>>">>]<br>
[@@.link_locked;Lack of cum is a tragedy, who could think anything else?@@]
<<else>>
[<<moveTo "event_psychiatrist_session_out_of_cum_2" "You felt despair." 60 "<<set $scene.action='despair'>>">>]<br>
[<<moveTo "event_psychiatrist_session_out_of_cum_2" "It was no big deal." 60 "<<set $scene.action='nbd'>>">>]<br>
[<<moveTo "event_psychiatrist_session_out_of_cum_2" "You felt relieved." 60 "<<set $scene.action='relief'>>">>]
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
[<<moveTo "event_psychiatrist_session_out_of_cum_2" "You felt despair." 60 "<<set $scene.action='despair'>>">>]<br>
[<<moveTo "event_psychiatrist_session_out_of_cum_2" "It was no big deal." 60 "<<set $scene.action='nbd'>>">>]<br>
[<<moveTo "event_psychiatrist_session_out_of_cum_2" "You felt relieved." 60 "<<set $scene.action='relief'>>">>]
<<else>>
[<<moveTo "event_psychiatrist_session_out_of_cum_2" "It was no big deal." 60 "<<set $scene.action='nbd'>>">>]<br>
[<<moveTo "event_psychiatrist_session_out_of_cum_2" "You felt relieved." 60 "<<set $scene.action='relief'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: psychiatrist topic: ran out of cum reaction
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == 'despair'>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'despair'>>
You bemoan how horrible it felt to find out you had run out of cum to add to your meals.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> listens quietly as you relive the <<if setup.getTotalValue("cum") > 15>>traumatic <</if>>memory.<br>
<br>
"@@.npc_psychiatrist;It sounds like this was a very frustrating experience. Obviously cum is not physically addictive, but I think this may reflect a deeper psychological need. You spent so much time denying yourself the sexual experiences you deserved now... well, I think you may have fixated on this single aspect, of being, to use the vulgar term a "cum-slut," when there is a whole vast world of sexual experience you could be enjoying.@@"<br>
<br>
You find yourself nodding along to her assessment. "@@.npc_psychiatrist;Obviously you should make plans to address your supply issues rather than suffer with a drab diet, but you should also take this as a sign to keep experimenting, to not fixate on a single avenue of joy, but instead sample them all. Variety is the spice of life, after all.@@"
<<case 'nbd'>>
You reply that running out of cum was just "@@.pc;One of those things.@@"<br>
<br>
She nods thoughtfully. "@@.npc_psychiatrist;You say that now, but you did bring it up, which seems to me that this was more important than just, say, finding you're out of flour. Of course going next door for a cup of cum would be a bit less likely... more the pity, in a way.@@"<br>
<br>
She quickly moves on before you have time to think about that idea. "@@.npc_psychiatrist;I think the core takeaway is priorities and planning. Just like if you were on a diet you have to make sure to make time for shopping and food preparation so you can have meals that best meet your preferences.@@"
<<case 'relief'>>
You state that you were actually relieved to finally run out of cum.<br>
<br>
"@@.npc_psychiatrist;Relieved? An interesting perspective, is that because it had you thinking back to how much delicious dick droppings have dribbled down your throat? I suppose that sense of accomplishment could be called relief, but you shouldn't be getting complacent. Like any diet results are dependent on consistency so if this is a priority, well... you need to make your plans.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: ask her for cum
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your dwindling supplies of cum,
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
almost in tears you plead with her to help you out, asking
<<else>>
a slight quiver in your voice as you ask for her assistance, wondering if
<</if>>
she could write you a prescription for scrumptious salty semen.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
expressing your own surprise that you somehow used up all that she sent you.
<<else>>
trying to hide the self-disgust that you somehow used up all that she sent you.
<</if>>
<</if>>
<br><br>
She listens intently, but shakes her head. "@@.npc_psychiatrist;It truly hurts that I cannot help you, but, unfortunately, I am struggling to even get what I need for my own research. All I can offer is the suggestion that you be resourceful. Certainly there is plenty of cum out there, you just need to find out how to suck, slurp or lick it up before it goes to waste.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist, talk about giving up key permanently
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $player.sec_style.submission.permanent_key>>
<<case "strict">>
You bring up how <<=setup.getNpcName('npc_manager', 'formal')>> has permanently confiscated your chastity key.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods somberly "@@.npc_psychiatrist;I understand that forcibly losing such control can be quite... impactful. But my understanding is that it was only as a result of your own repeated misbehaviour. My advice is to put it behind you. This is your reality now. Locked, restricted, secured, but consider that we lock up things that are valued. Certainly it may have been presented as a punishment... but your keyholder, well... they must think quite highly of you to want you so secure, and restrictions breed creativity. Take this opportunity to stop thinking about what you can't do, and focus on what you can, and how you can restore the trust that you previously betrayed.@@"
<<case "forced">>
You bring up how you appear to have permanently lost all control of your chastity key.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods somberly "@@.npc_psychiatrist;I understand that forcibly losing such control can be quite... impactful. My advice is to put it behind you. This is your reality now. Locked, restricted, secured, but consider that we lock up things that are valued. Your keyholder then, well... they must think quite highly of you to want you so secure, and restrictions breed creativity. Take this opportunity to stop thinking about what you can't do, and focus on what you can.@@"
<<case "money">>
You bring up how you have accepted permanent chastity in exchange for a pay raise.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles for a moment and then turns more serious. "@@.npc_psychiatrist;I suppose this is a comment on our present society, hmm? That one would make such a financial choice, to give up intimate control in exchange for a few more credits...@@" For a heart-beat you half expect her to jump onto the desk and shout REVOLUTION!, but she just smiles softly "@@.npc_psychiatrist;I am sure you made the best decision you could, given your situation. Now, though... well, consider that we only lock up what we value, so your keyholder must think quite highly of you. As for yourself, well... restrictions breed creativity, take this opportunity to stop thinking about what you can't do, and focus on what you can.@@"
<<case "voluntary" "enthusiast">>
You discuss how you have voluntarily given up permanent control of your chastity key.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> beams with pride. "@@.npc_psychiatrist;Oh, that is so wonderful to hear! It must feel so empowering to know that you have this whole situation "sorted" — that your key is in the control of someone who cares about you enough to keep you locked away like a precious gem that, rather than struggle under your restrictions you have embraced them and made them a source of strength. I only hope that my assistance was at least partially responsible for you reaching such a magnificent milestone — but I would not deny you the slightest credit, this journey is your own and you are making it fantastically.@@"
<<case "obedient">>
You explain how you have dutifully surrendered control of your chastity key.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles with a mix of pleasure and pride. "@@.npc_psychiatrist;Oh, <<=$player.first_name>>... I am so proud to hear you taking this lovely step in your submissive journey. It is a big step, for certain, to surrender so much control to your key-holder, such an expression of trust and devotion, on both your parts, but, in the end, it feels good, doesn't it? To know that you are secured, treasured, and that you don't have to be distracted by those locked-away things... yes, this is a wonderful development and I only hope that I was able to provide some small help in guiding you to this glorious point.@@"
<<default>>
ERROR, unknown sec_style.permanent_key: <<=$player.sec_style.submission.permanent_key>>
<</switch>>
<br><br>
You bite your lip, her words reminding you just how much of a submissive you have become.<br>
<br>
<<if setup.getChastityLevel() == 5>>
You note that, technically, your keyholder is the company, rather than merely <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Ah, yes, one of those 9001-series chastity devices, hmm? Yes, I heard those are intended for wide-spread roll-out once they scale up production... quite the audacious plan, though the performance metrics... well, I can understand the motivation. Of course such a transition is quite intense, my advice to the company has been that they should pair it with psychological counseling... of course you are already taking care of for such, hmm?@@"<br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist, talk about meeting gangbang
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your "new" meeting responsibilities of taking notes... and then offering your body to be gang-banged by all present.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods solemnly. "@@.npc_psychiatrist;And would I be correct to assume that your note-taking responsibilities extended to include summarising your "service" efforts?@@"<br>
<br>
You bite your lip and nod, her casual description of the company's perverse practices deepening your humiliation.<br>
<br>
"@@.npc_psychiatrist;As I suspected. This is the way of things on the upper floors, work hard, play hard, as they say. The secret is to embrace the opportunity — enthusiastically throw yourself into it whole-heartedly — and whole-holedly. Do that and one might say you will never "work" a day...@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist, talk about cybernetics
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about getting cybernetic enhancements.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins. "@@.npc_psychiatrist;Isn't technology amazing? My skills are on the mental side rather than surgical, but being able to improve and change yourself to be better, well... it's just a lovely option.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist, talk about office move
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about moving to an upper floor office.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods solemnly. "@@.npc_psychiatrist;Yes, I heard about that... I can only imagine how annoyed <<=setup.getNpcName('npc_manager', 'first')>> is about the whole thing.@@" She shakes her head, "@@.npc_psychiatrist;Sorry, this discussion is about you. The upper floors... I guess it is a testament to what they say about power corrupting, because there is much power residing up there and the result, well... you know how the company works. On the one hand it is something of a heavenly playground for a devout submissive, but there is also danger. You should count yourself lucky that you have an owner such as <<=setup.getNpcName('npc_manager', 'other')>>, there are others in her role who show far less care towards their subordinates.@@"<br>
<br>
You shudder, immediately thinking about <<=ps(setup.getNpcName('npc_boss', 'formal'))>> stern cruelty before shifting topics to tell her about your "eventful" move.<br>
<br>
"@@.npc_psychiatrist;Ah, yes... it would seem that someone was looking to have a bit of "fun" with you. Normally shipping employees around happens smoothly and without incident. Still, you should take such things as the opportunities that they are. It sounds like what you experienced was right up your alley, as it were.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist, talk about office crate
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about spending another night and morning re-living your original eventful office move.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins. "@@.npc_psychiatrist;Oh what adventurous fun! The way the company has continued to automate and streamline its processes and procedures. For you, however, well... it is a great opportunity to experiment in a safe environment... just be sure not to draw your manager's ire by missing work!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist, talk about first hucow event w/npc_work_doctor
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about <<=setup.getNpcName('npc_work_doctor', 'formal')>> ambushing you and putting you through a hucow procedure.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> glowers, taking a moment to compose her response. "@@.npc_psychiatrist;I am sorry you had to go through that. <<=setup.getNpcName('npc_work_doctor', 'formal')>> is one of the reasons I separated from the company to assume a private practice... irrespective on my disagreement as to chemical vs. psychological cures... <<his npc_work_doctor>> lack of consideration for <<his npc_work_doctor>> subjects <<if $npc_psychiatrist.flags.cruel>>would be concerning... but we both know you deserve to be treated quite harshly. I shall make a note to review the video logs for my own... purposes. <<if !$npc_manager.flags.cruel>>It really is too bad that intervened, you would have been far better served had you not been denied the full procedure<</if>><<else>>is quite concerning<<if !$npc_manager.flags.cruel>> and it sounds like things could have gotten quite a bit worse had <<=setup.getNpcName('npc_manager', 'first')>> not intervened<</if>><</if>>.@@"<br>
<br>
<<if !$npc_psychiatrist.flags.cruel>>
<<printThought "Her conflict with <<=setup.getNpcName('npc_work_doctor', 'formal')>> is definitely more than mere professional rivalry.">><br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist, talk about repeat hucow event w/npc_work_doctor
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about spending another night with <<=setup.getNpcName('npc_work_doctor', 'formal')>> and <<his npc_work_doctor>> hucow procedure.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> pauses. "@@.npc_psychiatrist;I... see. Not that I have anything against indulging bovine aspirations, certainly that is fun and perfectly healthy but <<=setup.getNpcName('npc_work_doctor', 'formal')>>... well, I advise you to be cautious and use your judgement. I know I am always telling you to embrace your desires but just as there is a time and a place there is also who you are doing it with and, well... be careful.@@"<br>
<br>
<<printThought "She really doesn't like <<=setup.getNpcName('npc_work_doctor', 'formal')>>...">><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about your heavy stress, psychiatrist recommends church
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.locations.church = true>>
<<set $player.flags.church.intro = 'psychiatrist'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how, despite her therapy, you've been feeling utterly stressed and mentally drained.<br>
<br>
She thinks for a moment, handing you a tissue as you barely hold off a bit of a breakdown.<br>
<br>
"@@.npc_psychiatrist;While I am sorry to hear this, but with all that has happened to you of late it is, I suppose, understandable. I wish that our time together can help but, well... there is no such thing as a single solution so, while I hope you continue to come to our sessions might I offer an additional avenue of help?@@"<br>
<br>
You nod, not wanting to offend her, but also desperate for anything to help you deal with this feeling of being totally overwhelmed.<br>
<br>
"@@.npc_psychiatrist;So we haven't really discussed your faith but, well... there is a certain church in town. A bit different than you are probably imagining, so throw out any ideas you have about being shamed or abused or anything like that. They have a very unique belief system and, I believe, they could help provide you with some spiritual guidance that might be of supplemental help to what I am able to provide.@@"<br>
<br>
The cryptic way she talks about this "church" is a bit odd... though it also can't help but spark your curiosity.<br>
<br>
<<if $player.flags.church.visited>>
You respond that, actually, you've already visited the church and she perks up with a smile.<br>
<br>
"@@.npc_psychiatrist;Oh, wonderful, you really are so industrious! Well I recommend another visit, I am sure that someone there will be able to help guide you to a happier, more fulfilled place in life.@@"
<<else>>
You thank her for the suggestion and say you'll consider checking it out when you have time.<br>
<br>
"@@.npc_psychiatrist;Lovely, lovely. And do consider taking that time, I am sure that someone there will be able to help guide you to a happier, more fulfilled place in life.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: manager collar
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You raise your chin to show off the gorgeous <<if setup.checkItemWorn("metal_collar_black")>>metal<<else>>pink<</if>> collar that <<=setup.getNpcName('npc_manager', 'formal')>> has locked around your throat.<br>
<br>
"@@.npc_psychiatrist;I was going to ask, and it is quite lovely. You, and she, must feel so proud to have brought your relationship to such a point.@@"<br>
<br>
You nod, flush with submissive joy.<br>
<br>
"@@.npc_psychiatrist;Look at what you can achieve by embracing your true self. Owned, cherished, loved... and you well know that <<=setup.getNpcName('npc_manager', 'first')>> would not have taken you as a slave unless you had proven your excellence time and time again, she has quite exacting standards. Yes, that lovely collar represents so much personal growth and accomplishment. I am just grateful for whatever part I was allowed to play to get you to this wonderful point.@@"<br>
<br>
You thank <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for her help, and she smiles, clearly gratified that she was able to lend her professional assistance.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: money collar
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You inform <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you have fully sold yourself to the company — as denoted by your collar.<br>
<br>
"@@.npc_psychiatrist;Yes... I noticed, plus I had to approve some paperwork asserting that you where not in any sort of distress to led you to accept such an offer. The company does have some restrictions on buying and selling its employees like cattle... well, officially. Policy and practice are...@@" She shakes her head. "@@.npc_psychiatrist;Anyway, I hope you are satisfied with your decision. I suppose, in a way, it must be freeing to have surrendered another layer of control to embrace your proper state as a submissive <<if $fetish.sissy>>sissy <</if>>slave... Still, I had hoped that you might earn a more personal, caring owner, rather than a faceless corporation.@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems genuinely sad and you start to apologise for disappointing her but she quickly re-assures you.<br>
<br>
"@@.npc_psychiatrist;No, no, I do not mean to dampen your mood. And to earn a collar of any sort is certainly a proud moment for a slave... but I do wish the best for you, and will not hide my concern that you, perhaps, rushed into things a bit too greedily.@@"<br>
<br>
You thank her for the concern and quietly continue on to something else.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: church
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that
<<switch $player.flags.church.level>>
<<case 0>>
you visited the Church of the Goddess.<br>
<br>
<<if $player.flags.church.intro == "psychiatrist">>
"@@.npc_psychiatrist;I am so glad you took my advice! I will note that, while open to all, the Church can be a bit secretive, but you will get out what you put in, and if you spend more time there, well... I am sure you will be quite delighted.@@"
<<else>>
"@@.npc_psychiatrist;That is wonderful to hear! I had considered mentioning them to you — but it would seem you found the Church on your own... divine will or something, hmm? Anyway, my advice would be to embrace the Church at your own pace — the Church can be a bit secretive, but you will get out what you put in, and if you spend more time there, well... I am sure you will be quite delighted.@@"
<</if>>
<<case 1>>
that you've been spending time at the Church of the Goddess.<br>
<br>
<<if $player.flags.church.intro == "psychiatrist">>
"@@.npc_psychiatrist;I am so glad my suggestion has proven useful. The Church of the Goddess is such a lovely organisation, and it pleases me that you have found additional comfort within its halls.@@"
<<else>>
"@@.npc_psychiatrist;That is wonderful to hear. The Church of the Goddess is such a lovely organisation, and it pleases me that you have found additional comfort within its halls.@@"
<</if>>
<<case 2>>
that you've joined the Church of the Goddess.<br>
<br>
"@@.npc_psychiatrist;Accepted as a full member? Now that is quite the accomplishment! Good for you! The Church of the Goddess has much to offer, but I hardly need to tell you that!@@"
<<case 3>>
that you've become a devoted member of the Church of the Goddess.<br>
<br>
<<if $player.flags.church.intro == "psychiatrist">>
"@@.npc_psychiatrist;To think, when I first recommended you visit to relieve stress... well it has certainly done that, and more! There is a serenity to you now that is just lovely.@@"
<<else>>
"@@.npc_psychiatrist;Yes, I can tell. There is a serenity to you now that is just lovely.@@"
<</if>>
<<default>>
ERROR: unexpected player.flags.church.level <<=$player.flags.church.level>>
<</switch>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist topic: drug refusal, almost fired
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how your refusal to take your company-mandated pills almost lead to your firing.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems to be thinking, spending so much time composing her answer you are about to interrupt when she finally speaks. "@@.npc_psychiatrist;I see... well, obviously you must hew to the terms of your employment, and the company would CERTAINLY never prescribe something harmful... as to the behaviour of your manager in this matter, well.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> starts to gather steam, apparently on more comfortable footing as she continues.<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName('npc_manager', 'formal')>> is a very particular woman. While she is certainly pragmatic enough to take advantage of <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> work... I think she secretly considers such chemical assistance to be a bit... cheating. Thus, her lenience at your refusal. She relishes a challenge, but I do warn you that there is a fine line to walk between a bit of playful brattiness and full-on obstinance. I advise you to tread lightly.@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: psychiatrist theme: manager dildo promo
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<changeHorny 40>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up the, for lack of a better word "promotion" you went through under <<=ps(setup.getNpcName("npc_manager","formal"))>> supervision... specifically the feeling of having a dildo penetrating your rear...<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> listens intently, asking a few clarifying questions that have you blushing at not just the memory... but also how aroused that memory has you feeling.<br>
<br>
"@@.npc_psychiatrist;It sounds like you had quite the intense experience... perhaps a revelation, even? That is a part of why <<=setup.getNpcName("npc_manager","first")>> includes such a thing as part of her mmm... "process." There is the fact that being penetrated is socially considered the more feminine act, of course... but I think, for her, it may be more about the vulnerability, the mental aspect of literally letting her into your body, in a sense.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> description does nothing to dampen the arousal you've been feeling, and you accidentally bite your lip, prompting her to smile knowingly.<br>
<br>
"@@.npc_psychiatrist;Mmm, I think my words may have unlocked something take a moment to think, what does the memory of being penetrated, of feeling that dildo slide into your rear, what thoughts does it spark?@@"<br>
<br>
<<if $player.body_ref.vagina>>
[@@.link_locked;You already have a vagina, bringing such up feels off-topic.@@]<br>
<<else>>
[<<moveTo "theme_psychiatrist_penetration_2" "Anal was nice... but you want a vagina." 120 "<<set $scene.action='vag'>>">>]<br>
<</if>>
[<<moveTo "theme_psychiatrist_penetration_2" "Anal opens some additional doors..." 120 "<<set $scene.action='anal'>>">>]<br>
<<if $player.body_ref.penis>>
[<<moveTo "theme_psychiatrist_penetration_2" "You think you'd rather stick to being the penetrator." 120 "<<set $scene.action='penis'>>">>]<br>
<<else>>
[@@.link_locked;The ship has sailed on your penetrating anything, at least with your no-longer existant penis.@@]<br>
<</if>>
[<<moveTo "theme_psychiatrist_penetration_2" "You aren't sure." 120 "<<set $scene.action='unsure'>>">>]<br>
</div>/*#
#desc: psychiatrist theme: penetration response
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_3')>>
<<set $npc_psychiatrist.themes.transition[_themeId].repeatable = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'vag'>>
You nervously blurt out that you wish you had a vagina, but <<=setup.getNpcName('npc_psychiatrist', 'formal')>> merely smiles.<br>
<br>
"@@.npc_psychiatrist;Yes... I had a feeling you might say that... you know, that such a procedure is well within the realms of modern medicine and is, in fact, covered under your employee medical plan. I will, of course, remind you that our gender is not defined by our genitals... but if trading your <<if $fetish.sph>>cute little peen<<else>>penis<</if>> for a sweet valley would make you happier and more comfortable in your body, well... I could have you in this very afternoon.@@"<br>
<br>
You blink in surprise, you suppose you'd been aware that such things were possible but now that the opportunity is literally right in front of you.<br>
<br>
[<<moveTo "theme_psychiatrist_penetration_3" "Yes, you want to make the swap. The sooner, the better." 120 "<<set $scene.action='vag'>>">>]<br>
[<<moveTo "theme_psychiatrist_penetration_3" "You like the idea of a vagina... but could you keep your penis as well?" 120 "<<set $scene.action='both'>>">>]<br>
[<<moveTo "theme_psychiatrist_penetration_3" "Actually... you think you're happy with your penis." 120 "<<set $scene.action='penis'>>">>]<br>
[<<moveTo "theme_psychiatrist_penetration_3" "You like having a penis... but you wish it was larger." 120 "<<set $scene.action='large'>>">>]<br>
[<<moveTo "theme_psychiatrist_penetration_3" "Thinking a bit more... you are okay with your penis only... you wish it was smaller." 120 "<<set $scene.action='shrink'>>">>]
<<case 'anal'>>
You feel a bit dirty saying it, but you reply that, actually... you think you just enjoy anal?<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;You and me both, my dear. Yes... I know that some say it doesn't count, or that it's the sex that god can't see... but it is certainly a type of sex that all mortals are equipped to enjoy. That you have moved past the stigma to embrace it, well... I call that a wonderful development in your progress.@@"
<<case 'penis'>>
You reply that you're happy with <<if $player.body_ref.penis>>your penis and <</if>>being the one doing the penetration, rather than vice-versa.<br>
<br>
You're pretty sure <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is disappointed in your statement, though you aren't entirely certain how as her voice takes on a more formal tone for her response. "@@.npc_psychiatrist;Yes, well, I suppose the important thing was you experiencing it for yourself, rather than making such a declaration before gathering proper evidence. Still, I advise you to keep an open mind, you never know when a nice cock sliding into your rear<<if $player.body_ref.penis>>, pounding that sensitive prostate<</if>> might be just the thing you desire. After all, the beauty of anal is that everyone can enjoy it, hmm?@@"<br>
<br>
[<<moveTo "theme_psychiatrist_penetration_3" "Sure, but... you wish your penis was larger." 120 "<<set $scene.action='large'>>">>]<br>
[<<moveTo "theme_psychiatrist_penetration_3" "Sure... though you kind of wish your <<getWordMyPenis>> was a bit smaller." 120 "<<set $scene.action='shrink'>>">>]
<<case 'unsure'>>
You reply that you aren't sure...<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles in comfort. "@@.npc_psychiatrist;Uncertainty is perfectly acceptable — especially given how many things you've had to occupy your mind of late... as well as your cute bum.@@" she winks and has you blushing before she continues. "@@.npc_psychiatrist;Anyway, I advise you to keep an open... mind, in the future, and perhaps spend time doing additional research before making any sort of decision.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != 'vag'>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist theme: vag offer
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "vag">>
You enthusiastically reply that you'd love to get rid of your penis in favour of a vagina and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles.<br>
<br>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_3')>>
<<set $npc_psychiatrist.themes.transition[_themeId].repeatable = true>>
"@@.npc_psychiatrist;Lovely... I would offer to do something about it, but that chastity device of yours, well... it's a bit too secure for me to deal with. Perhaps we could try this discussion over again after you are out of it?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<else>>
"@@.npc_psychiatrist;Lovely, well let me just check the schedule and...@@" She taps away at her computer for a moment before turning back to you in delight. "@@.npc_psychiatrist;There's a free spot in the schedule in... wow, just ten minutes, if we hurry over we can get you all... enhanced. I do warn you that the schedule looks otherwise booked for a while, so if you pass up this opportunity you may be on your own for finding a doctor to make such arrangements.@@"<br>
<br>
[<<moveTo "theme_psychiatrist_penetration_4_vag_1" "Yes." 120 "<<set $scene.action='vag'>>">>]<br>
[<<moveTo "theme_psychiatrist_penetration_4_vag_1" "That's a bit fast..." 120 "<<set $scene.action='abort'>>">>]
<</if>>
<<case "both">>
You reply that you're torn... that as much as you like the idea of having a vagina... you also like your penis.<br>
<br>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_3')>>
<<set $npc_psychiatrist.themes.transition[_themeId].repeatable = true>>
"@@.npc_psychiatrist;Lovely... I would offer to do something about it, but that chastity device of yours, well... it's a bit too secure for me to deal with. Perhaps we could try this discussion over again after you are out of it?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<elseif ($npc_psychiatrist.affection - $npc_psychiatrist.anger) > 5>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins. "@@.npc_psychiatrist;Fortunately for you, today's medicine is quite equipped to deal with that request.@@" She grins even wider. "@@.npc_psychiatrist;Your medical plan covers vaginal surgery, so it's just a matter of some careful writing on my part and you'll be able to satisfy both of your desires... and all on the company's dime!@@" She taps away at her computer for a moment. "@@.npc_psychiatrist;What fortune! There's a free spot in the schedule in... wow, just ten minutes, if we hurry over we can get you all... enhanced. I do warn you that the schedule looks otherwise booked for a while, so if you pass up this opportunity you may be on your own for finding a doctor to make such arrangements.@@"<br>
<br>
[<<moveTo "theme_psychiatrist_penetration_4_vag_1" "Yes." 120 "<<set $scene.action='both'>>">>]<br>
[<<moveTo "theme_psychiatrist_penetration_4_vag_1" "That's a bit fast..." 120 "<<set $scene.action='abort'>>">>]
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Well, fortunately for you, today's medicine is quite equipped to deal with that request... though, unfortunately, it is not a procedure explicitly allowed by your medical plan. Should you find a doctor willing to perform such an operation, well... I imagine you will have quite some fun with the results, but that will have to be a task for you to manage on your own time and dime.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
<<case "large">>
You reply that you're happy with having a penis... you just wish it was larger.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles in amusement. "@@.npc_psychiatrist;If I had a credit for every time I heard that in therapy...@@" she chuckles softly as she shakes her head. "@@.npc_psychiatrist;Alas, your medical plan does not cover such procedures, so you will have to make such arrangements on your own.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<case "penis">>
You reply that you're happy with your penis and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Very good, it is a pleasant feeling to be happy with how one is, yes?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<case "shrink">>
You reply that, while you like have a penis, you do wish it was smaller.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Yes... a small <<if $fetish.sissy>>sissy clitty<<else>>penis<</if>> is an oft underappreciated, but really quite beautiful thing. Not in the way, oh so cute and sensitive... fortunately for you that is even simpler to attend to, why, with naught but a single pill, and some time for your body to process it, we can attend to things.@@"<br>
<br>
She reaches into her desk and pulls out a very large pill.<br>
<br>
She laughs softly. "@@.npc_psychiatrist;So, perhaps appropriately, given how we started this conversation... this pill is rectally administered, if you would kindly bend over and expose your rear?@@"<br>
<br>
As she talks she snaps a latex glove over one hand and reaches for another.<br>
<br>
[<<moveTo "theme_psychiatrist_penetration_4_shrink" "Bend over as instructed." 120 "<<set $scene.shrink=true>>">>]<br>
[<<moveTo "theme_psychiatrist_penetration_4_shrink" "Actually... you changed your mind." 120 "<<set $scene.shrink=false>>">>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: psychiatrist theme: shrink enthusiast
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.shrink>>
<<applyExperience 'anal' 3 'normal' $SEEN_FRIEND>>
<<set $player.body_ref.total_penis_shrink += 100>>
<<set $player.body_ref.hormones_since_penis_shrink += 100>>
<<set $player.body_ref.penis_shrinking = true>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "enthusiast">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.shrink>>
You bend over and present your rear as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> walks up behind you.<br>
<br>
Tenderly, she caresses your rear before <<if setup.checkItemTypeWorn("plug", true)>>setting your plug to one side and <</if>>gently fingering you open. "@@.npc_psychiatrist;Nice and relaxed, just open up and think about that nice, beautiful little <<getWordMyPenis>> you're going to have...@@"<br>
<br>
You manage to suppress the urge to moan as you feel her rubbery finger retract and then the pill slide into you, her fingers pushing it deep, the way her fingers shift to make sure everything is seated making you dribble<<if setup.checkItemTypeWorn("cage") && setup.isCage()>> through your cage<<else>>down your leg<</if>>. She gives your bottom a quick pat as if in encouragement before<<if setup.checkItemTypeWorn("plug", true)>> replacing your plug and<</if>> returning to her desk.<br>
<br>
"@@.npc_psychiatrist;It takes some time for your body to process everything, but you should see results in the morning. Enjoy!@@" She remarks as you tenderly take your seat and she peels off her gloves to pitch them into a small medical waste bin.
<<else>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you changed your mind and the pill disappears back into her desk as swiftly as it appeared. "@@.npc_psychiatrist;Of course, of course, just a passing thought, hmm? Still... a nice small penis is quite the delight... but you can always shrink later, either slowly or more, abruptly, should you find a suitably willing and capable medical professional.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist theme: add vagina enthusiast
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != "abort">>
<</if>>
<</if>>
<<if $scene.action == "abort">>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<else>>
<<set $player.location to "Corporate Surgery">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "abort">>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<<else>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImage("npc_psychiatrist")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "vag" "both">>
You confirm that you'd like to go ahead with the procedure and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> reaches for her purse. "@@.npc_psychiatrist;Come along — we don't have much time if we're going to make the appointment. I'll drive.@@"<br>
<br>
She<<if setup.checkPlayerDecency()>> has you dress, and then she<</if>> leads you out of the office to a cute, but not excessive sports car and the two of you are soon speeding off. You sense a touch of nerves as she drives into the company's underground parking garage as you recall her past employment. The focus remains on yourself, however, and the two of you are soon boarding the elevator and entering a sterile exam room where a robotic surgical arm looms.<br>
<br>
"@@.npc_psychiatrist;While I am not trained in performing such procedures, I am qualified to get you prepared for such. I figure a friendly face will make things a bit more relaxing, hmm?@@"<br>
<br>
You nod as she helps you up onto the surgical bed, strapping you down securely with your legs spread before preparing an injection. "@@.npc_psychiatrist;Just think, when you wake up you'll have the genitals of your dreams... good luck!@@"<br>
<br>
You feel a slight prick and then your consciousness fades, your last sight your therapist smiling down at you.<br>
<br>
[<<moveTo "theme_psychiatrist_penetration_4_vag_2" "Continue." 1800>>]<br>
<<case "abort">>
You decline <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> offer and she nods. "@@.npc_psychiatrist;I understand, something like that you want a bit more time to think on it. I wish you fortune, as I said, the procedure is not a particularly rare one... though getting it through corporate insurance can be a bit of a scheduling challenge.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: psychiatrist theme: add vagina enthusiast
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.newChastity = $npc_manager.flags.require_chastity && ($fetish.chastity_vag && $scene.action == "vag" || ($fetish.chastity_penis || $fetish.chastity_vag) && $scene.action == "both") && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
<<if $scene.newChastity>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _basecage = setup.getItemFromType("cage")>>
<<elseif $npc_manager.flags.lastCage != "">>
<<set _basecage = $npc_manager.flags.lastCage>>
<<else>>
<<set _basecage = "none">>
<</if>>
<<if _basecage != "none">>
<<if setup.getItemObj(_basecage).chastityType == "belt" && setup.getItemObj(_basecage).chastityLvl < 5>>
<<set $scene.newcage = _basecage>>
<<else>>
<<set $scene.reuseCage = false>>
<<switch setup.getItemObj(_basecage).chastityLvl>>
<<case 1>>
<<set $scene.newcage = "chastity_belt_flat">>
<<case 2>>
<<set $scene.newcage = "chastity_belt_tiny">>
<<case 3>>
<<set $scene.newcage = "chastity_belt_electric">>
<<case 4>>
<<set $scene.newcage = "chastity_belt_adv">>
<<case 5>>
<<if $scene.action == "both">>
<<set $scene.newcage = "sissyomatic_ultra">>
<<else>>
<<set $scene.newcage = "sissyomatic_fem">>
<</if>>
<</switch>>
<</if>>
<</if>>
<<set $player.flags.chastity_style = "belt">>
<<set $scene.reuseCage = $scene.newcage == _basecage>>
<<if !$scene.reuseCage>>
<<addItem $scene.newcage>>
<<if !$npc_manager.flags.playerstayedinchastity>>
<<set _keyId = setup.getItemObj($scene.newcage).lockable[1]>>
<<addItem _keyId>>
<</if>>
<</if>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage 'lock' true>>
<<elseif setup.checkItemTypeWorn("cage") && setup.isCage() && $scene.action == "vag">>
<<set _cage = setup.getItemFromType("cage")>>
<<removeItem _cage true>>
<</if>>
<<set $player.body_ref.vagina = true>>
<<if !$player.sec_style.body.vagina>>
<<set $player.sec_style.body.vagina = "enthusiast">>
<</if>>
<<if $scene.action == "vag">>
<<set $player.body_ref.penis = false>>
<<if !$player.sec_style.body.penis_remove>>
<<set $player.sec_style.body.penis_remove = "enthusiast">>
<</if>>
<<if $player.sec_style.body.hormones>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.body_ref.balls = false>>
<<set $player.body_ref.horsecock = false>>
<<set $player.body_ref.knot = false>>
<<set $player.flags.chastity_style = "belt">>
<</if>>
<<include "addPsychiatristEndless">>
<</if>>
<<set $player.location to "Corporate Surgery">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wake up to find things initially as you left off, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiling down at you as you momentarily wonder if you just blinked.<br>
<br>
A glance down south quickly dissuades you of that notion, however, especially as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> removes your straps and helps you sit up to better behold,
<<if $npc_manager.flags.require_chastity && ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $scene.action == "both")>>
though not touch, your new equipment. You bite your lip, you can feel things are <<if $scene.action == "both">>different<<else>>a bit roomier<</if>> "down there" but with <<if $scene.newChastity && !$scene.reuseCage>>a new chastity device<<else>>your chastity belt locked back in place<</if>> you can't actually see things.<br>
<br>
"@@.npc_psychiatrist;Company policy, you understand.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> explains<<if !$npc_manager.flags.playerstayedinchastity>>, though she does slip you a key with a wink<</if>>. "@@.npc_psychiatrist;Any alterations to your chastity requirements have to happen through your direct manager, so you'll have to survive the weekend and discuss with <<=setup.getNpcName('npc_manager', 'other')>> on Monday, I suppose.@@"
<<else>>
and touch, your
<<if $scene.action == "vag">>
now smooth crotch... and your excitement-inducing slit.
<<else>>
familiar <<getWordMyPenis>>, and behind that... an exciting, and wet, slit...
<</if>>
<</if>>
<br><br>
You nod, the fog of the anesthetic quickly parting as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> waits for you to dress and then leads you from the room, bidding you a good evening at the lobby before she heads down to her car. "@@.npc_psychiatrist;See you for next weeks session!@@" She calls out in parting, with a proud smile and a blown kiss.<br>
<br>
You have a spring in your step as you head for the exit, mind already spinning at the newly unlocked <<if $npc_manager.flags.require_chastity && ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $scene.action == "both")>><<printThought "Well... unlocked, but still locked,">> <</if>>opportunities ahead of you.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_citymap" "Leave the building." 120 "<<set $scene.beforetasklocation.pop()>>">>]
<<else>>
[<<moveTo "room_citymap" "Get changed and leave the building." 120 "<<set $scene.beforetasklocation.pop()>><<useClothSetPop 'psyc_initial'>>">>]
<</if>>
</div>/*#
#desc: talk to psychiatrist about meeting primrose and participating in his work
#status: FINISHED 0.8.5
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your introduction to <<=setup.getNpcName("npc_primrose","formal")>> and <<his npc_primrose>> work. You jump in surprise at a sharp snapping sound. You look over in confusion (and a touch of horror) to see that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> has snapped the pen she is writing with in half.<br>
<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
"@@.npc_psychiatrist;Yes... <<=setup.getNpcName("npc_primrose","formal")>> is an interesting case, and has been on quite the roller-coaster, suffering even worse at <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> hand, and syringe, than myself...@@" She thinks for a moment.
<<if State.hasPlayed("theme_ai_primrose_destruction_intro_punishment")>>
"@@.npc_psychiatrist;I understand that you have decided to remove <<=setup.getNpcName("npc_primrose","formal")>> as a threat... sad, but prudent, given <<his npc_primrose>> loyalty to <<=setup.getNpcName("npc_boss","formal")>>... however unfounded and misplaced that loyalty may be.@@"
<<elseif State.hasPlayed("theme_ai_primrose_destruction_intro_rescue")>>
"@@.npc_psychiatrist;I understand that you have decided to attempt to redeem <<=setup.getNpcName("npc_primrose","formal")>>... a challenge, for certain, given how devoted <<=setup.getNpcName("npc_primrose","formal")>> is to <<=setup.getNpcName("npc_boss","formal")>>... but a proof of your compassion and character, should you succeed.@@"
<<elseif State.hasPlaysed("theme_ai_primrose_destruction_intro_bypass")>>
"@@.npc_psychiatrist;As loyal as <<he npc_primrose>> may be to <<=setup.getNpcName("npc_boss","formal")>>, I do not believe <<he npc_primrose>> will represent any actual obstacle to our efforts, ironic that <<=ps(setup.getNpcName("npc_boss","formal"))>> neglect of such a devoted sycophant would leave <<him npc_boss>> short an ally.@@"
<<else>>
"@@.npc_psychiatrist;It is up to you what to do with <<him npc_primrose>>, as loyal as <<he npc_primrose>> may be to <<=setup.getNpcName("npc_boss","formal")>>, I believe <<he npc_primrose>> could be redeemed... or destroyed, or maybe bypassed entirely. As I said, it is up to you.@@"
<</if>>
<<else>>
"@@.npc_psychiatrist_dom;Ah. So you've met my old associate...@@"<br>
<br>
Your heart skips a beat as you watch your usually unflappable psychiatrist compose herself before speaking again. "@@.npc_psychiatrist;Forgive me, I seem to have a particularly brittle pen.@@" You nod, quickly accepting the apology lest it turn out you have a particularly brittle neck. She continues: "@@.npc_psychiatrist;while I am happy to hear that you are enthusiastic about the work going on at the company, my professional opinion is to exercise caution when dealing with any kind of studies that may <<if $npc_psychiatrist.hypnosis > 0>>conflict with my own<<else>>impair your judgment — and thus your ability to serve your <<=ps(setup.getNpcName('npc_manager', 'title'))>> needs<</if>>.@@"<br>
<br>
Her answer is surprisingly sterile. You raise an eyebrow as she continues, locking eyes with you. A sinking feeling in your stomach tells you that she is choosing her words carefully, somehow limited in what she is allowed to say. "@@.npc_psychiatrist;<<=setup.getNpcName("npc_primrose","formal")>> and I were colleagues, once upon a time. Our paths have since diverged, obviously. <<He npc_primrose>> is exceptionally loyal to the company and to <<=setup.getNpcName("npc_boss","formal")>>, as you likely picked up. We have not talked in a while. I am, of course, happy to hear <<he npc_primrose>> is doing well and remains dedicated to <<his npc_primrose>> work, and the company.@@"<br>
<br>
Any follow-up questions you might have had die in your throat as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> adds "@@.npc_psychiatrist;let's change the subject. I am sure there are other things on your mind.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: ask for help rescuing npc_ai_human
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You are about to bring up the topic of <<=setup.getNpcName('npc_ai_human', 'formal')>> when <<=setup.getNpcName("npc_psychiatrist","formal")>> seems to sense something off, her gaze flicking to the side as she shakes her head ever so slightly in reminder that, in her physical office, you are always watched.<br>
<br>
"@@.npc_psychiatrist;Sorry, was there something you wished to discuss?@@" She asks to break the silence as you reflect that you will need to find a more private venue to speak with her.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: gender identity forced
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;So,@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> leads off. "@@.npc_psychiatrist;It would seem there was a bit of an event at work in relation to your gender identity? I think we should take a moment to talk about that, hmm?@@"<br>
<br>
[<<moveTo "event_psychiatrist_theme_gender_force_2" "What is there to talk about? You aren't a girl!" 120 "<<set $scene.resist=true>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_force_2" "Agree that, actually, you are a girl..." 120 "<<set $scene.resist=false>>">>]
</div>/*#
#desc: psychiatrist topic: gender identity argue
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.resist>>
<<if !$player.sec_style.body.identify_fem>>
<<set $player.sec_style.body.identify_fem = "obedient">>
<<set _sourceChar = 'npc_psychiatrist'>>
<<include "identifyFemUnlocks">>
<</if>>
<<set $npc_psychiatrist.flags.knowgender = $player.identify_as>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
You reply that you are not a girl, and that at work you were just frustrated at <<=setup.getNpcName("npc_manager","formal")>> trying to dictate differently.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> makes a note and nods while looking at you with concern. "@@.npc_psychiatrist;I see, I see only... tell me, when you made that bold assertion... were you wearing girl panties, or boy panties?@@"<br>
<br>
[<<moveTo "event_psychiatrist_theme_gender_force_3" "Girl panties..." 120 "<<set $scene.resist=false>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_force_3" 'Girl panties... but that is just because it is part of <<=ps(setup.getNpcName("npc_manager","formal"))>> insane uniform requirement!' 120 "<<set $scene.resist=true>>">>]
<<else>>
You blush and admit that you were just being difficult... and that, having thought about it some more... you are a girl.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> is momentarily surprised, but is soon smiling. "@@.npc_psychiatrist;Oh, how lovely to hear! I can see how much happier you are having come to that conclusion, very good. Shall we continue on with other things?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist topic: gender identity argue panties
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You admit that you wear women's underthings to
<<if $scene.resist>>
work... but point out that you only do so because <<=setup.getNpcName("npc_manager","formal")>> gives you no choice!<br>
<br>
"@@.npc_psychiatrist;No choice, hmm... and yet, you could pursue alternate employment. That you have not done so, well... that would seem to indicate that you are okay with wearing women's underthings... and that does not sound very manly, does it? Of course, if it was just women's panties it might just be a kinky thing... tell me, what style is the rest of your clothing, masculine, or feminine?@@"
<<else>>
work and <<=setup.getNpcName("npc_psychiatrist","formal")>> makes a note. "@@.npc_psychiatrist;I see, I see. Does not sound particularly masculine to me, unless it was just a kink thing... tell me, what style is the rest of your clothing, masculine, or feminine?@@"
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_theme_gender_force_4" "Female clothing..." 120 "<<set $scene.resist=false>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_force_4" 'Female clothing... but that is just because of <<=ps(setup.getNpcName("npc_manager","formal"))>> insane uniform requirement!' 120 "<<set $scene.resist=true>>">>]
</div>/*#
#desc: psychiatrist topic: gender identity argue clothing
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
You admit that your work uniform is female attire... but that's a uniform! You're forced to dress that way by <<=setup.getNpcName("npc_manager","formal")>>, and she checks every morning to make sure you are "meeting her expectations." <br>
<br>
"@@.npc_psychiatrist;Reason aside... you are still dressing as a woman every day when you go to work, I mean, does that seem like something a man would do?@@"
<<else>>
You note that yes, you do dress feminine of late...<br>
<br>
"@@.npc_psychiatrist;And look lovely in it, I am sure.@@" work and <<=setup.getNpcName("npc_psychiatrist","formal")>> replies, her eyes sparkling.
<</if>>
<br><br>
You shift nervously in your chair, this conversation is really starting to get away from you.<br>
<br>
<<if $player.sec_style.body.name>>
"@@.npc_psychiatrist;And, tell me <<=$player.first_name>>... a lovely name, to be certain... but is it a boy's name, or a girl's name?@@"<br>
<br>
[<<moveTo "event_psychiatrist_theme_gender_force_5" "A girl's name..." 120 "<<set $scene.resist=false>>">>]<br>
[<<moveTo "event_psychiatrist_theme_gender_force_5" "A boy's name!" 120 "<<set $scene.resist=true>>">>]
<<elseif $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_theme_gender_force_6" "You can't be a girl, you have a penis!" 120>>]<br>
[<<moveTo "event_psychiatrist_theme_gender_force_7" "..." 120>>]
<<else>>
[<<moveTo "event_psychiatrist_theme_gender_force_7" "..." 120>>]
<</if>>
</div>/*#
#desc: psychiatrist topic: gender identity argue name
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
You try to argue that you have a boy's name, but <<=setup.getNpcName("npc_psychiatrist","formal")>> merely pauses in her note-taking to stare at you until you run out of steam and fall temporarily silent.
<<else>>
You bite your lip and slowly nod, unable to resist or deny the slight thrill you feel at hearing someone call you by your chosen name.
<</if>>
<br><br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> stares at you, as if daring you to make some further objection.<br>
<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_theme_gender_force_6" "You can't be a girl, you have a penis!" 120>>]<br>
[<<moveTo "event_psychiatrist_theme_gender_force_7" "..." 120>>]
<<else>>
[<<moveTo "event_psychiatrist_theme_gender_force_7" "..." 120>>]
<</if>>
</div>/*#
#desc: psychiatrist topic: gender identity argue genitals
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.knowherPenis = $npc_psychiatrist.flags.therapy_events.handjob ||
$npc_psychiatrist.flags.therapy_events.blowjob || $npc_psychiatrist.flags.therapy_events.anal>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You argue that you can't be a girl, you have a penis<<if $player.body.penissize[0] > 3>>, a big penis<</if>>!<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> shakes her head, "@@.npc_psychiatrist;genitals are not gender. After all, I have a penis<<if $scene.knowherPenis>>, as you well know<</if>>, and I am a woman, right?@@"<br>
<br>
<<if $scene.knowherPenis>>
You stutter awkwardly, assuring her that you didn't mean an insult or disparagement and
<<else>>
You blink in shock at her comment, your objection utterly derailed as you stammer an apology and assure her
<</if>>
that, of course she's a woman.<br>
<br>
"@@.npc_psychiatrist;Very good.@@" She states with a concluding nod.<br>
<br>
[<<moveTo "event_psychiatrist_theme_gender_force_7" "..." 120>>]
</div>/*#
#desc: psychiatrist topic: gender identity forced
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.identify_fem>>
<<set $player.sec_style.body.identify_fem = "forced">>
<<set _sourceChar = 'npc_psychiatrist'>>
<<include "identifyFemUnlocks">>
<</if>>
<<set $npc_psychiatrist.flags.knowgender = $player.identify_as>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Your mouth flaps, but you can't managed to come up with coherent words.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> crows in triumph. "@@.npc_psychiatrist;See? That was not so hard. You are a pretty, sometimes disobedient, but always cute girl, and that is really all there is to it! I will go ahead and inform the company to update their records accordingly. Now, was there anything else you wished to discuss today?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: company changing coworkers
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up the changes you've noticed in some of your fellow coworkers, about to bring up specific examples when <<=setup.getNpcName('npc_psychiatrist', 'formal')>> quickly silences you.<br>
<br>
"@@.npc_psychiatrist;Now, now. The both of us are under non disclosure agreements regarding the proprietary practices employed at Social Interaction Service Syndicate Inc. besides that, we are here to discuss you and your progression. I can neither confirm nor deny which of your coworkers I may also see, but, in any case, what is happening to them is part of their individual journey and you should trust that they and their respective managers have things quite well in hand.@@"<br>
<br>
You sense a hint of nervousness in <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> and you shiver, concluding that she is not likely to say more, and that further pushing on this matter is only liable to get you in trouble.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: ask for drugs
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEmail $computer
'pharamaresearch@siss.com'
'Employee <<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'drug_offer_h'
'drug_offer_t'
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_psychiatrist', 'formal')>> if she can prescribe drugs?<br>
<br>
She stiffens slightly at the word "drug" but smiles and continues on smoothly. "@@.npc_psychiatrist;That sort of thing is not really my specialty. While medication can be useful in certain situations, hormone imbalances and the like, it is not a panacea, and I think you would much more benefit from talking through your issues than reaching for the contents of a bottle, hmm?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about admin promotion
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how, with some help from you, <<he npc_admin>> got a big promotion and is now working for <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Oh? She needs TWO secretaries now?@@"<br>
<br>
Your jaw drops in shock. The idea of <<=setup.getNpcName('npc_admin', 'first')>> being a secretary... to say nothing of being somehow victim to the "transformations" you've been through... you hurriedly clarify that no, no, <<hes npc_admin>> there to do a similar job to what <<he npc_admin>> had back at CDS.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles and you spend a bit more time chatting about how it feels to work with a personal friend, and how excited you are for <<=ps(setup.getNpcName('npc_admin', 'first'))>> new opportunity.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about seeing admin and manager having sex
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how your best friend, <<=setup.getNpcName('npc_admin', 'first')>> and your boss, <<=setup.getNpcName('npc_manager', 'formal')>> are having sex at work.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> rolls her eyes. "@@.npc_psychiatrist;<<=setup.getNpcName('npc_manager', 'first')>> found another one did she?@@" She shakes her head. "@@.npc_psychiatrist;As much as she likes... helping people like yourself, she loves taking a roll in the hay with a <<if $npc_admin.fem>>big and strong woman<<else>>proper man's man<</if>>.<<if $fetish.cum && $npc_admin.flags.manager_cleanup>> Let me guess, after <<he npc_admin>> left she had you lick up <<his npc_admin>> cum?<</if>>@@"<br>
<br>
<<if $fetish.cum && $npc_admin.flags.manager_cleanup>>
Your jaw drops in shock at how casually <<=setup.getNpcName('npc_psychiatrist', 'formal')>> has reacted to what you thought would be a stunning revelation and you slowly nod.<br>
<br>
"@@.npc_psychiatrist;As I suspected. It's all part of the game for her. What about you, do you like your new duty? Or do you prefer drinking it straight from the source?@@"<br>
<br>
<<if setup.getTotalValue("cum") >= 15>>
You blurt out that you'll take cum however you can get it and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles.
<<elseif setup.getTotalValue("penis") >= 15>>
You blurt out that, obviously, it's best sucked from the source, as a nice beautiful cock is one of the best things in life.
<<elseif setup.getTotalValue("bimbofication") > 10>>
A bimbo giggle escapes your lips as you reply that cum is just a bonus on top of being able to perform a bit of cunnilingus.
<<else>>
You're somehow even more shocked at her question, but she laughs and moves on as if it were just rhetorical.
<</if>>
<br><br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about flirting with admin while working out
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about your unsuccessful attempts to flirt with <<=setup.getNpcName('npc_admin', 'first')>> during your morning workout.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> thinks for a moment before responding.<br>
<br>
"@@.npc_psychiatrist;Well, flirting is obviously perfectly healthy and a great way to explore new relationships. Just pay attention that you are not making your target uncomfortable and such. As for this particular case well... given your history with <<=setup.getNpcName('npc_admin', 'other')>> you may want to consider discussing your feelings in a more private manner. The gym or the bar where you usually see <<him npc_admin>> well... neither are optimal for real serious conversations. Perhaps you could get <<him npc_admin>> to visit you at home for a more private chat? If, that is, you are serious about pursuing something with <<him npc_admin>>.@@"<br>
<br>
You thank her for the advice.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about failing to seduce admin at home
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your failed attempt to seduce <<=setup.getNpcName('npc_admin', 'first')>> at your apartment.<br>
<br>
After expressing her sympathy she gives you some suggestions. "@@.npc_psychiatrist;While making a romantic partner from a friend has some upsides in terms of established chemistry and the like there are obviously some additional challenges. Here more than usual. In this case well... from what you've said <<=setup.getNpcName('npc_admin', 'first')>> sounds quite <<if $npc_admin.fem>>feminine-attracted<<else>>heterosexual<</if>>, so even though <<hes npc_admin>> accepted you as a woman, you want to ease <<him npc_admin>> into things, think flirty "oops, I'm still wearing my cute nightgown" rather than "come into my lair..." Well, the later isn't really you in any case you are adorable and sweet... not so much diabolical seductress. Other than that well... be yourself, and try to remain focused and not get distracted or lose confidence. Relationships can be hard, but with the right person, they're worth it.@@"<br>
<br>
You thank her for the advice. "@@.npc_psychiatrist;Of course, it's what I'm here for!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about manager "setting you up" with admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about <<=ps(setup.getNpcName('npc_manager', 'formal'))>> "ambushing" you and trying to get you to suck <<=ps(setup.getNpcName('npc_admin', 'first'))>> and/or play matchmaker with the two of you.<br>
<br>
"@@.npc_psychiatrist;I see... a bit bold, even for <<=setup.getNpcName('npc_manager', 'first')>> but... not particularly out of character. What happened next, did you suck <<his npc_admin>> cock?@@"<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
You're actually somewhat confused by the question, but clarify that, like, of course you sucked <<his npc_admin>> cock, what kind of girl does she think you are?<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Oh, I know EXACTLY what kind of bimbo slut you are, but that doesn't mean I don't just adore hearing you say it.@@"
<<else>>
You reply that, like, of course you sucked <<his npc_admin>> cock! Who wouldn't jump at the opportunity to make sweet oral love to such a fantastic specimen.
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
You blush and admit that you did, indeed, suck <<him npc_admin>> off.
<<else>>
Though you feel mortified to admit it you reply that, yes, you did suck <<him npc_admin>> off.
<</if>>
<br><br>
"@@.npc_psychiatrist;Now, now, sucking a bit of cock is nothing to be ashamed of. So long as you, and the owner of said cock, enjoy the experience? Well, I'd say it would be more a sin to pass up the yummy opportunity!@@"
<</if>>
<br><br>
Moving on you explain that <<=setup.getNpcName('npc_manager', 'formal')>> followed up by setting up a dinner date between you and <<=setup.getNpcName('npc_admin', 'first')>> later that same evening.
<<else>>
You blush at the thought, explaining that no, you didn't, but that your manager still steered things towards a date between you and <<=setup.getNpcName('npc_admin', 'first')>> later that same evening.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about first date with admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about the crazy meal that you shared with <<=setup.getNpcName('npc_admin', 'first')>> as the two of you hashed out your relationship.<br>
<br>
Waiting for you to talk through the whole evening, and insisting to hear about each course as she explains that she jealously always wanted to try the tasting menu at Le Chateau de L'amour, but could never get reservations, you finally get to the end of the evening as she sits forward in her chair and asks what <<=ps(setup.getNpcName('npc_admin', 'first'))>> decision ended up being.<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
You explain that, while a traditional relationship does not seem to be in the cards, <<he npc_admin>> is open to a more casual/physical thing.<br>
<br>
"@@.npc_psychiatrist;Lovely, lovely. Friends with benefits can be some of the best friends and well... who knows? Not like <<he npc_admin>> shut the door forever on something more. Take it from me, you drain a cock well enough and people can end up with all sorts of ideas about marriage and the like.@@"
<<case 'boyfriend'>>
With stars in your eyes you tell her about the nigh-perfect end to the evening and how <<he npc_admin>> kissed you on your stoop as <<his npc_admin>> girlfriend.<br>
<br>
"@@.npc_psychiatrist;Oh I'm so happy for you! I know you worked really hard to get here — in so many ways, to hear it all work out... well, of course there is still work to do to make the relationship a success but... again, I am just so delighted for the both of you. Two lovely people such as yourselves deserve each other and all the happiness you can grab!@@"
<<case 'friend'>>
You explain that, at the end of it all, <<=setup.getNpcName('npc_admin', 'first')>> gave you the "I see you as more a friend" speech.<br>
<br>
"@@.npc_psychiatrist;Oh, I'm sorry to hear that, you spent so much time getting to this point but... well, these things happen. It's good to see that you seem to be handling it well. If you need anything well, that's what I'm here for!@@"
<<default>>
ERROR: unexpected scene.date.verdict <<=$npc_admin.flags.relationship>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about gym bj with admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell her about you giving <<=setup.getNpcName('npc_admin', 'first')>> a blowjob after your morning workout.<br>
<br>
She smiles. "@@.npc_psychiatrist;Oh what fun! How did it go, dish, girl!@@"<br>
<br>
You blush, though by now you should really be used to the fact that something like half of therapy is her getting excited about your sex life.<br>
<br>
<<if $npc_admin.flags.sucked_for_manager != "">>
"@@.npc_psychiatrist;Come on! Not that this was the first time you got to savour <<his npc_admin>> delicious <<if $npc_admin.fem>>taste<<else>>man muscle<</if>> but... did the sequel live up to the original?@@"<br>
<br>
You sigh as you confirm that, actually, it was even better —
<<if $npc_admin.flags.sucked_for_manager == 'slut'>>
that, as enthusiastically as you dove onto <<his npc_admin>> cock in front of your <<=setup.getNpcName('npc_manager', 'title')>>,
<<else>>
that, rather than it coming as a result of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> machinations,
<</if>>
sucking <<him npc_admin>> off again, just the two of you, 100% of your own volition, and with the benefit of first-time jitters out of the way... well, THAT made for a perfection you hope to repeat many times more.
<<else>>
"@@.npc_psychiatrist;Well? If you don't hurry up and tell me what happened, I'll be demanding a live recreation... though, I admit, my "stand in" would be nowhere near the size of the jaw-busting original... so maybe you should just narrate what happened?@@"<br>
<br>
You tell her that it was simply amazing — that the combination of how hot you both were after working out, the semi-public place and the fact that it was wholly your idea,
<<if $npc_admin.flags.morning_seduction == 2>>
your wonderful, delicious idea,
<<else>>
instead of the result of your <<=ps(setup.getNpcName('npc_manager', 'title'))>> machinations made it just fantastic
<</if>>
leaving you eagerly looking forward to the next time you get the opportunity to feel <<his npc_admin>> magnificence inside of you.
<</if>>
<br><br>
"@@.npc_psychiatrist;Mmm, now that's what I call a happy ending! Well, except it isn't over, but I believe this bodes well for your future relationship with <<him npc_admin>>, whatever direction you decide to take it.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about evil admin
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 5>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the evil transformation that has come over your old friend, <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks suddenly very nervous, glancing around and quickly attempting to shift the conversation. "@@.npc_psychiatrist;I'm sorry but my contract with the company put some limits on what I can discuss in relation to their employees and practices. I understand that such a change may have been traumatic to you... but I am not at liberty to discuss it directly. Perhaps something else might be a more pleasant and useful distraction?@@"<br>
<br>
<<printThought "She sounds scared...">><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: npc_barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName("npc_barista","nickname")>>, and her recent strange behaviour.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> freezes for a moment before slowly looking up from her notes.<br>
<br>
"@@.npc_psychiatrist;I am afraid that I will have to stop you there. I cannot speak about my other patients during a session. The rules are VERY clear that whatever happens within these PHYSICAL walls is a matter of strictest doctor/patient confidentiality. Now, shall we discuss something else that would be more productive towards your own MENTAL development.@@"<br>
<br>
Her emphasis seems odd, and very deliberate.<br>
<br>
<<if $npc_psychiatrist.hypnosis > 1>>
<<printThought "Wait... is she implying that we could speak freely in the digital realm... like, when I was doing her VR therapy?">>
<<elseif $fetish.hypnosis>>
<<printThought "I wonder what she's talking about... unless she means that VR therapy study she's always asking me to be a part of?">>
<<else>>
<<printThought "I guess I'll have to wait for her to feel comfortable talking further... maybe if we were somewhere else?">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: meet psychiatrist in VR first time intro
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist","formal")>> finishes preparations and you are plunged back into the digital realm. You look around at what is definitely a new simulation... and an odd one. Looking down you find a body that is not your own. With breasts almost about to explode out of your black and white top it takes you a moment to realise that... you're <<=setup.getNpcName("npc_barista","nickname")>>!<br>
<br>
<<printThought "Woah... this is weird!">><br>
<br>
Even stranger is when you reach down under your skirts, finding the plugged ass and toy-occupied slit that you remember from that first encounter when you had just begun your job as a secretary.<br>
<br>
Trying to figure out what this all means you look around to realise that you are standing in what appears to be an exact virtual simulation of <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> office.
<<if $npc_barista.stage < 2>>
<br><br>
<<printThought '<<=setup.getNpcName("npc_psychiatrist","formal")>> mentioned that <<=setup.getNpcName("npc_barista","nickname")>> was her patient as well...'>>
<</if>>
<br><br>
Before you is a seat and <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> desk — complete with a high-backed chair that is ominously faced away from you.<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_barista_2' 'Take your seat and find out what is going on.' 60>>]
</div>/*#
#desc: meet psychiatrist in VR
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You take a seat, hyper-aware of your new body<<if !$player.body_ref.vagina>>, and how being plugged fore and aft is somehow much more intense than your usual anal occupancy<<elseif $player.body_ref.penis>>, "this" vagina subtly different, and your penis noticeable in its absence<<else>> your virtual vagina feeling subtly different from your real one<</if>>.<br>
<br>
<<printThought "This is one hell of a simulation to have me feeling like a totally different person...">><br>
<br>
Taking your seat the chair rotates to reveal <<=setup.getNpcName("npc_psychiatrist","formal")>> or, rather, her psychic projection as a closer look makes you realise that it is subtly different than the real thing. She looks less... playful than she does with you, a sort of hollow sorrow behind her eyes that makes her look older, and you momentarily reflect on just how young she is to have a private psychiatrist practice.<br>
<br>
"@@.npc_psychiatrist;Welcome back, <<=setup.getNpcName("npc_barista","other")>>, what is weighing on your mind this day?@@"<br>
<br>
You blink as you realise she just used <<=ps(setup.getNpcName("npc_barista","nickname"))>> "proper" name.<br>
<br>
You speak, a bit weirded out to find that your voice has been replaced with <<=ps(setup.getNpcName("npc_barista","nickname"))>> unique tone and diction as well.<br>
<br>
<<include "psychiatristBaristaSimulation">>
</div><<if !$npc_psychiatrist.flags.vr_themes.history>>
[<<moveTo "event_psychiatrist_hypnosis_barista_3_history" "Say you've been thinking about your past..." 300>>]<br>
<<else>>
[@@.link_locked;You have already discussed "your" past.@@]<br>
<</if>>
<<if !$npc_psychiatrist.flags.vr_themes.treatments>>
[<<moveTo "event_psychiatrist_hypnosis_barista_3_treatments" 'Ask about "your" treatments...' 300>>]<br>
<<else>>
[@@.link_locked;You have already discussed "your" treatments.@@]<br>
<</if>>
<<if $npc_psychiatrist.flags.vr_themes.history && $npc_psychiatrist.flags.vr_themes.treatments>>
<<if $npc_psychiatrist.flags.vr_themes.future>>
[@@.link_locked;You have already discussed the future.@@]<br>
<<else>>
[<<moveTo "event_psychiatrist_hypnosis_barista_3_future" "Talk to her about the future." 300>>]<br>
<</if>>
<<else>>
[@@.link_locked;You are not yet ready to speak of the future.@@]<br>
<</if>>
<<if !$npc_psychiatrist.flags.vr_themes.mc>>
[<<moveTo "event_psychiatrist_hypnosis_barista_3_mc" "Ask about <<=$player.first_name>>..." 300>>]<br>
<<else>>
[@@.link_locked;You have already discussed yourself.@@]<br>
<</if>>
<<if $npc_psychiatrist.flags.vr_themes.future>>
[<<moveTo "event_psychiatrist_hypnosis_barista_4" "Finish the session." 300>>]
<<else>>
[@@.link_locked;You have more you should talk about.@@]
<</if>>/*#
#desc: talk as barista in VR about history
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.vr_themes.history = true>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;Yeah, like, my memory has been all, like, fuzzy and stuff?@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles at you / <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
"@@.npc_psychiatrist;We go over this every time — you were a very bad girl and were punished. All those schemes to take over the company, but you went after someone too powerful, too fast and they decided to take measures to keep you in line.@@"<br>
<br>
You giggle in response, <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> resulting expression strained.<br>
<br>
<<include "psychiatristBaristaSimulation">>
</div>/*#
#desc: talk as barista in VR about yourself
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.vr_themes.mc = true>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;What about that new secretary, <<=$player.first_name>>?@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> grins with a twinkle in her eye. "@@.npc_psychiatrist;They have proven to be quite the interesting one. It's funny, they were chosen at random for all of this yet... well, even beyond my efforts they appear to have had MANY pent-up issues, and hidden potentials. If they play things carefully they could accomplish all manner of things...@@"<br>
<br>
"@@.npc_barista;Teehee! I think they're fun!@@"<br>
<br>
<<include "psychiatristBaristaSimulation">>
</div>/*#
#desc: talk as barista in VR about treatments
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.vr_themes.treatments = true>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;What about my treatments? They, always make me feel all horny and fuzzy.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> softly sighs.<br>
<br>
"@@.npc_psychiatrist;I am sorry for that but... it remains a necessary evil. If they knew that you were still alive in there it would be the both of our heads. But I promise I am working to get you back. I have a plan, but I cannot do it alone...@@"<br>
<br>
<<include "psychiatristBaristaSimulation">>
</div>/*#
#desc: talk as barista in VR about future plans
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.vr_themes.future = true>>
<<if setup.findThemeId('npc_technician', 'rpg', 'theme_technician_barista_gangbang') == -1>>
<<addNpcTheme 'npc_technician' 'rpg' 'theme_technician_barista_gangbang'
5
'event_technician_barista_gangbang_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;So, like... what can I<<glitchText "we">> do to make things better?@@"<br>
<br>
<<if $npc_barista.stage < 2>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> suddenly looks very serious. "@@.npc_psychiatrist;It is going to be hard — and you must be very, very careful with where you discuss these matters. If you haven't figured it out yet... your life is almost constantly monitored, and not just here and at the office.@@"<br>
<br>
"@@.npc_psychiatrist;As for the plan... I believe I have a procedure that should restore <<=ps(setup.getNpcName("npc_barista","other"))>> facilities, but it will not be an easy thing. What has been done to her is complex, and very entwined with a naturally high sex drive. The first thing I need is a "clean" image — a scan of her brain when she is so satisfied that the programming is temporarily dormant. She has enough monitoring electronics jammed in with her neurons it's just a matter of making it happen and I can pull the data. I have tried on my own but her appetites are... well, far more than any one person could hope to quench. You will likely need to call on friends for assistance.@@"<br>
<br>
"@@.npc_psychiatrist;Once that is done things get trickier — being gang-banged is well within <<=ps(setup.getNpcName("npc_barista","other"))>> ascribed behaviour but after that... well, to be prepared for her de-programming she needs to be denied, sort of a cold reset. Given her enslaved situation I think that shall necessitate her being made to misbehave so badly that the only viable punishment is her deepest fear — chastity. Perhaps some of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> drugs might prove useful to this end?@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> takes a deep breath. "@@.npc_psychiatrist;After this cruelty comes the final, and most dangerous step. I have made many strides in my understanding of the human mind but to undo what has been inflicted on <<=ps(setup.getNpcName("npc_barista","other"))>> will take privacy, and time. We will need to secure a location where I can setup my things and then bring her there. And by bring her there I mean kidnap her or something — I am afraid I know nothing about such matters but... perhaps you might know someone? If you can do all of that then I can have- I mean, she can have herself back.@@"<br>
<br>
<<printThought 'Wow, that is, like... a lot... wait is this <<=setup.getNpcName("npc_barista","nickname")>> persona seeping into my thoughts, too?'>>
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> suddenly looks very serious. "@@.npc_psychiatrist;As we spoke previously, it will be hard — and you must be very, very careful with where you discuss these matters, after all, your life is almost constantly monitored, and not just here and at the office.@@"<br>
<br>
"@@.npc_psychiatrist;As to the plan, well... you know what still needs to be done, check in with me as you progress.@@"
<</if>>
<br><br>
<<include "psychiatristBaristaSimulation">>
</div>/*#
#desc: finish talking to psychiatrist as barista in VR
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty('barista_cure_intro')>>
<<completeTask 'barista_cure_intro' $now true>>
<</if>>
<<if $npc_barista.stage < 2>>
<<set $npc_barista.stage = 2>>
<<addTaskById 'barista_cure'>>
<</if>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga")>>
<<else>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<</if>>
<div id="invframe" class="scrolltext">
"@@.npc_barista;I'm, like, bored of therapy. Can you fuck me now?@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and shakes her head in amusement. "@@.npc_psychiatrist;Of course, my dear. I am always happy to do that...@@"<br>
<br>
<<if $fetish.bestiality_hard>>
As she starts to rise from her seat <<=setup.getNpcName("npc_psychiatrist","formal")>> shifts, her hair merging together and widening, her body lengthening as she leans forward and you realise she is turning into some sort of naga snake-person!<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_barista_5_snake_1" "Wait, what?" 300>>]
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> stands and room shifts. Virtual reality remakes itself as, in an instant, you move from sitting on the chair in front her her desk to lying on top of that same desk, both holes feeling empty. She steps towards you, a <<getWordPenis false>> that feels far larger than her petite real life one sliding into your cunt.<br>
<br>
"@@.npc_psychiatrist;The virtual realm affords some additional opportunities compared to the physical one — and I do need to gather some footage to cover in case someone reviews the logs.@@"<br>
<br>
You gasp as a second, slightly thinner <<getWordPenis false>>, slides into your ass.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_barista_5" "VR is bliss..." 300>>]
<</if>>
</div>/*#
#desc: introduced to psychiatrist fursona in VR as barista
#status: RELEASED 0.8.4.0
#ignore_spell: likessss,sssession,ssspecial,worldssss,ssssortssss,funssss,it'ssss,timessss,ssssssssss
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga")>>
<div id="invframe" class="scrolltext">
With a fanged, but still inviting, grin <<=setup.getNpcName("npc_psychiatrist","formal")>> slithers across the desk and then coils in front of you. Significantly taller than she is normally she looms above you with her hood unfurled as her tail gently winds around your legs.<br>
<br>
"@@.npc_psychiatrist;You likessss?@@" She asks. "@@.npc_psychiatrist;I thought a ssspecial sssession would be in order.@@" Circling around you her forked tongue tickles your cheek as she whispers in your ear. "@@.npc_psychiatrist;Here in the virtual worldssss we can have all ssssortssss of extra funssss.@@"<br>
<br>
She presses against you from behind and you feel one... no TWO hard things poking into your back.<br>
<br>
<<printThought "Wait, that's right, snakes have a hemipenis...">><br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> tail tightens its wrap around your legs as she sweeps you off your feet, depositing you on the desk on your back as she sways between your legs. "@@.npc_psychiatrist;It'ssss timessss,@@" she hisses.<br>
<br>
Looking up at her golden eyes you feel subtly entranced, first one plug, then the other popping free of your holes as she lines up her dual lady lances.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_barista_5_snake_2" "Ssssssssss." 300>>]
</div>/*#
#desc: fucked by psychiatrist's fursona in VR as barista
#status: RELEASED 0.8.4.0
#ignore_spell: g,likessss
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'penis' 15 'terrible' $SEEN_FRIEND>>
<<set $npc_psychiatrist.flags.vr_themes.snake = true>>
<<if !setup.hasThreshold('bestiality', 'other_bestiality', 'naga_basic')>>
<<setThreshold 'bestiality' 'other_bestiality' 'naga_basic'>>
<</if>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga")>>
<div id="invframe" class="scrolltext">
Twin reptilian penii slide into your wet holes and you moan. Whoever programmed this portion of the simulation did a VERY thorough job as you feel every ridge and frill of the inhuman breeding organs as they pump in and out of you.<br>
<br>
Continually thrusting <<=setup.getNpcName("npc_psychiatrist","formal")>> leans over, smooth scales pressing against your skin as her lipless mouth meets yours, four full breasts squashed together as her long tongue teases and violates you from a final direction. Your legs struggle to wrap around her trunk, embracing this unreal, bestial pleasure as she lifts you into the air, your body all but mounted on her twin cocks as she squeezes and thrusts.<br>
<br>
Her top member seems perfectly designed to press against your g-spot with each thrust and a first orgasm slams into you but your body shows no sign of stopping. You moan, glorying at this feeling of being double-fucked<<if !$player.body_ref.vagina>>, distantly jealous of the fact that <<=setup.getNpcName("npc_barista","nickname")>> is able to enjoy being plugged in both ends while you are restricted to merely an anal companion<</if>>.<br>
<br>
You feel one of the cocks inside of you momentarily swell and then fill you with inhuman quantities of cum. You moan again but <<=setup.getNpcName("npc_psychiatrist","formal")>> remains hard throughout, continuing to double thrust as she breaks your kiss long enough to whisper a "@@.npc_psychiatrist;You likessss?@@" into your ear.<br>
<br>
"@@.npc_barista;Yes, yes!@@" a voice that both is and is not your own cries out as you ride this temporary body to another orgasm, and another. Your senses begin to fade as the simulation starts to fragment, as if all of the computational power is being soaked up by the complexities of your cascading orgasms and the "dual coring" of the thrusting cocks.<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_barista_6" "Overwhelmed by pleasure..." 300>>]
</div>/*#
#desc: fucked by psychiatrist in VR as barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
With a hot <<getWordPenis false>> in each hole you gasp, throwing your head back as <<=setup.getNpcName("npc_psychiatrist","formal")>> starts thrusting, the ecstasy of sensation causing the simulation around you to start to fray and fragment.<br>
<br>
With each pounding thrust the void peeks through more and more, your "reality" shrinking to naught but the pleasure being pumped into you through your wonderful wet, sensitive holes.<br>
<br>
Perception bleeds... are you <<=setup.getNpcName("npc_barista","nickname")>> or are you <<=$player.first_name>>? Does it even matter? In a bolt of realisation you understand that this sensation, this unquenchable lust even whilst in the depths of pleasure is what <<=setup.getNpcName("npc_barista","nickname")>> suffers under all the time, the control placed on her mind to turn whatever she was before into the brainless ditz you know.<br>
<br>
An overwhelming multi-orgasm flushes coherent thought from your mind, the last of the simulation fading away as you are suddenly falling, falling...<br>
<br>
[<<moveTo "event_psychiatrist_hypnosis_barista_6" "VR is bliss..." 300>>]
</div>/*#
#desc: hypnosis session 4 aftermath, wake up
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addHypnosisTask">>
<<removeItem 'plugsuit_adv' true>>
<<deleteItem 'plugsuit_adv'>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<<removeItem "ring_gag" true>>
<<deleteItem "ring_gag">>
<<useClothSetPop 'hypnosis3'>>
<<if $scene.plug != "">>
<<wearItem $scene.plug true>>
<</if>>
<<set $npc_psychiatrist.free_sessions += 1>>
<<addCredits 40>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wake up to find yourself back in <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> office, but in the real world... and in your own body.<br>
<br>
Standing over you <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and offers a hand to help you up.<br>
<br>
"@@.npc_psychiatrist;Another successful treatment... though it seems there remains much work ahead of us. Much work indeed.@@" She winks at you as you reflect on your full memory of the preceding VR "therapy session." You think about <<=setup.getNpcName("npc_barista","nickname")>>; whose "shoes" you walked in for a short time... are you really going to be able to do everything required to enact <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> plan?<br>
<br>
Back on your feet you are still lost in thought as you are gently guided to the door.<br>
<br>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: psychiastrist checks in re: barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01.mp4">>
<div id="invframe" class="scrolltext">
You seem to freeze as the virtual reality simulation starts up.<br>
<br>
"@@.npc_psychiatrist;Hello, <<=$player.first_name>>, we only have a few moments before I need to let the program resume, I just wanted to check in on our project.@@"<br>
<br>
<<switch $npc_barista.stage>>
<<case 2>>
"@@.npc_psychiatrist;It seems you have not made any progress, remember, the first step is to overwhelm <<=setup.getNpcName("npc_barista","nickname")>> with pleasure, I recommend recruiting some friends.@@"
<<case 3>>
You tell her about the plans you've made with <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_psychiatrist;Wonderful — though I advise you to stay hydrated, I imagine it is going to take quite the effort to FULLY satiate <<=setup.getNpcName("npc_barista","nickname")>> in her present state.@@"
<<case 4>>
"@@.npc_psychiatrist;The brain-scan of <<=setup.getNpcName("npc_barista","nickname")>> was very successful, now it is time to get her locked away in chastity by getting her in trouble at work.@@"
<<case 5>>
"@@.npc_psychiatrist;<<=setup.getNpcName("npc_barista","nickname")>> is becoming quite desperate now that she is stuck in chastity. As painful as it is to inflict this upon her this is exactly what we need — now you just need to find a location for me to setup shop and then bring her there.@@"
<<case 6 7 8>>
<<if $npc_barista.flags.location == "landlord">>
You tell her the coordinates of the cabin <<=setup.getNpcName("npc_landlord","first")>> offered for your use. "@@.npc_psychiatrist;Wow, that is private... it will be a bit tricky to get all my supplies there but... yeah, that should work out perfectly. Thank you. Now you just need to get her there...@@"
<<else>>
"@@.npc_psychiatrist;Everything is setup for <<=ps(setup.getNpcName("npc_barista","nickname"))>> de-programming. Now you just need to get her there so we can administer her treatment.@@"
<</if>>
<<case 9>>
You confirm that everything is still on track for the weekend, that <<=setup.getNpcName("npc_barista","nickname")>> is hired and the location confirmed. "@@.npc_psychiatrist;Wonderful... I just cannot wait to have my friend back... I only hope she can forgive me.@@"
<</switch>>
<br><br>
[<<moveTo 'event_psychiatrist_hypnosis_barista_checkup_2' "Say you're working on things." 60 "<<set $scene.help=false>><<if $npc_barista.stage==6>><<set $npc_barista.stage=7>><</if>>">>]<br>
[<<moveTo 'event_psychiatrist_hypnosis_barista_checkup_2' 'Ask for advice.' 60 "<<set $scene.help=true>>">>]
</div>/*#
#desc: psychiastrist checks in re: barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
You admit that you're a bit stuck and ask <<=setup.getNpcName("npc_psychiatrist","formal")>> for advice.<br>
<br>
<<switch $npc_barista.stage>>
<<case 2 3>>
"@@.npc_psychiatrist;I can't think of much more than I said already. fully satisfying <<=setup.getNpcName("npc_barista","nickname")>> is a multi-person job, mutual friends seems like the most likely option.@@"
<<case 4>>
"@@.npc_psychiatrist;The best shot would be if you could work with her, take advantage of her cock-lust to show her boss that she can't be trusted "free..." of course she is monitored pretty closely so you may need to figure out a way to delay security to give time for her full depravity to exhibit itself.@@"
<<case 5>>
"@@.npc_psychiatrist;I was hoping you could figure something out on your own, but as a backup plan I have found an off the books location... unfortunately that sort of thing does not come cheap and my accounts are too closely monitored. I would need a good 15000 credits cash to make everything happen.@@"<br>
<br>
<<if $player.money.total >= 15000>>
[<<moveTo 'event_psychiatrist_hypnosis_barista_checkup_3' 'Say you have the money.' 60>>]<br>
<<elseif $player.money.total >= 10000>>
[@@.link_locked;You do not quite have that much cash.@@]<br>
<<else>>
[@@.link_locked;You do not have anywhere close to that much spare cash.@@]<br>
<</if>>
<<case 6 7 8>>
"@@.npc_psychiatrist;The key is going to be making sure nobody realises she's missing... I know she works as a prostitute on the side, perhaps you could hire her for the weekend? Saving her is going to require time and privacy.@@"
<<case 9>>
"@@.npc_psychiatrist;Patience, my dear. Everything is setup for this weekend, let us hope our efforts are enough...@@"
<<default>>
ERROR: unexpected <<=$npc_barista.stage>>
<</switch>>
<br><br>
You thank her for the suggestion and promise to keep working.
<<else>>
You let <<=setup.getNpcName("npc_psychiatrist","formal")>> know that you're still working on the next step of <<=ps(setup.getNpcName("npc_barista","nickname"))>> de-programming.
<</if>>
<br><br>
<<if $npc_barista.stage != 2>>
"@@.npc_psychiatrist;Great, I'll leave you to it... and now on to the main event.@@"<br>
<br>
<</if>>
[<<moveTo 'event_psychiatrist_hypnosis_5_intro_2' 'Resume simulation.' 60 "<<if $npc_barista.stage==6>><<set $npc_barista.stage=7>><</if>>">>]
</div>/*#
#desc: give psychiatrist money for curing barista
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.stage = 8>>
<<set $npc_barista.flags.location = "therapist">>
<<addCredits -15000>>
<</if>>
<<set $player.location to "Virtual Reality">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/vr01.mp4">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> that you have the fifteen thousand credits she needs to arrange a location to cure <<=setup.getNpcName("npc_barista","nickname")>>. "@@.npc_psychiatrist;Oh, wow. I guess you are doing pretty well with your Secretary gig, far from the near-poverty you were facing when we first met! I'll just slip it out of your things while you're under, thanks again, from the both of us!@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_5_choose' 'Resume simulation.' 60>>]
</div>/*#
#desc: psychiatrist topic: porn shoot with barista
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the intense porn shoot you did with <<=setup.getNpcName('npc_barista', 'nickname')>> and <<=setup.getNpcName('npc_cook', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;Wow! That sounds so fucking hot... sorry, guess that wasn't the most professional phrasing, but still... wow. Anyway, on a more professional note I think this is just a wonderful sign of how far you have come in terms of accepting, and acting on, your previously hidden desires. You said this was just the first part of what was going to be a choose-your-own extravaganza? Oh, that just sounds amazing, I can't wait to watch it myself, you HAVE to tell me when it's finished!@@"<br>
<br>
<<printThought "I know a counselor is supposed to show interest in your life, but being excited to watch your porno seems a bit far? Though... the thought of that is kind of hot...">><br>
<br>
You mention your surprise when you found out your "pink pony" co-star was actually <<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
"@@.npc_psychiatrist;Isn't it interesting how we can think we know someone and then they surprise us? Though, I suppose you would be quite familiar with that from the other side, being a woman of many unexplored...depths. Though, I knew that from the moment I first met you!@@"<br>
<br>
You consider your next point of discussion.<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: psychiatrist topic: talk about wearing a butt plug to your session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you are wearing a <<=setup.getItemTypeName('plug')>>.<br>
<br>
She smiles, but keeps her response carefully restrained.<br>
<br>
"@@.npc_psychiatrist;Very interesting... I have a question — which did you enjoy more? When you were secretly plugged without my knowledge, or now that I know that you've been going through life, and even showing up to your counseling session with something filling that cute ass?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_plug_2" "Tell her you like being secretly plugged without anyone knowing." 60 "<<set $scene.action='secret'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_plug_2" 'Say you like it better when people know you have your ass stuffed and plugged.' 60 "<<set $scene.action='public'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_plug_2" 'You hate being plugged!' 60 "<<set $scene.action='hate'>>">>]
</div>/*#
#desc: psychiatrist topic: talk about what you like about wearing butt plug
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'secret'>>
You admit that moving around with your ass secretly plugged and nobody knowing is something you really enjoy.<br>
<br>
"@@.npc_psychiatrist;I see. I guess we all like to have our little secrets, it's only natural. Just remember that while it is healthy to keep secrets from strangers we should be honest and forthright with the people closer to us that we trust. Of course, the fact that you told me well... I think you have everything well in hand and I encourage you to keep that cute hole of yours occupied as much as you like!@@"
<<case 'public'>>
You state that, not only do you enjoy having your ass plugged, you like it when those around you are aware of your "stuffed" status.<br>
<br>
"@@.npc_psychiatrist;I see, I see... you know what that means, don't you?@@"<br>
<br>
You shake your head as she grins.<br>
<br>
"@@.npc_psychiatrist;It means that you are turning into a total butt slut! Oh, I am so proud of you! I mean, think about that poor, sheltered, confused <<if $player.sec_style.body.identify_fem == "enthusiast">>girl<<else>>boy<</if>> who first walked into my office and now? With a bit of help you are developing into a proud, eager, <<=setup.getBoyGirl($npc_psychiatrist)>>, with a dirty mind and a hot hole.@@" She smiles even wider and straightens in her seat with pride. "@@.npc_psychiatrist;This! This is exactly why I do therapy, to help people become their best selves!@@"
<<case 'hate'>>
You go on a rant that you hate being plugged. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> listens patiently before cutting you down with a simple reply.<br>
<br>
"@@.npc_psychiatrist;You say you hate being plugged... and yet you chose to come before me with that cute hole properly stuffed and filled...@@" She shakes her head and smiles. "@@.npc_psychiatrist;I keep telling you that this is a safe place to experiment, and that you should embrace your desires. It would seem your body and subconscious is coming along... you just need to accept what they're telling you. And, in this case, well... they are telling you to delight in being an eager, plugged butt-slut.@@"<br>
<br>
You shift nervously in your chair — motion that only serves to wiggle the plug inside you and raise further questions about your outburst.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing male clothing to your session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
She nods towards your present attire.<br>
<br>
<<if $player.sec_style.clothing.female != "">>
"@@.npc_psychiatrist;So, given that you could choose anything you wanted, why did you choose to wear masculine attire for our session?@@"<br>
<br>
Though she tries to hide it you can feel an undercurrent of disapproval at your choice.<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
[<<moveTo "event_psychiatrist_session_wearing_male_clothes_2" "Say you're trying to hold on to your masculinity." 60 "<<set $scene.deny=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_male_clothes_2" 'Apologise for foolishly wearing masculine attire.' 60 "<<set $scene.deny=false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_session_wearing_male_clothes_2" "State that you're a male, so of course you'd dress as such given the choice." 60 "<<set $scene.deny=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_male_clothes_2" "Admit that you aren't sure why you chose to dress like a guy." 60 "<<set $scene.deny=false>>">>]
<</if>>
<<else>>
"@@.npc_psychiatrist;An unremarkable selection... have you considered experimenting further with your choice of clothing. There are so many more fun things than pants and a shirt...@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
</div>/*#
#desc: psychiatrist topic: justify your choice of chose male clothing
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("feminization") > 10 && !$scene.deny ||
setup.getTotalValue("feminization") <= 10 && $scene.deny>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("feminization") > 10>>
<<if $scene.deny>>
You explain that even if you're forced to adhere to a crazy dress code at work, you're still a man and will dress accordingly.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> stares at you for almost a minute. Though her expression is neutral you find yourself shifting uncomfortably in your chair.<br>
<br>
<<printThought "Maybe I really would be happier if I gave up on trying to hold on to masculinity...">><br>
<br>
Finally she speaks. "@@.npc_psychiatrist;Well... of course you are free to wear whatever makes you feel good, and I suppose there's no harm in throwing that sort of frumpy ill-fitted dude clothing if that's all you have clean or something...@@"
<<else>>
You admit you weren't really thinking, agreeing with her implicit judgement that you really shouldn't be wearing this sort of attire anymore.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;You really are quite the challenging patient. You obviously know the right thing to do and yet somehow not doing it...@@" She chuckles, "@@.npc_psychiatrist;Well, so long as you're enjoying yourself you can feel free to fool around and wear anything you want in my presence.@@""
<</if>>
<<else>>
<<if $scene.deny>>
<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> gaze narrows slightly and she makes a note before replying. "@@.npc_psychiatrist;I see... it is interesting that you have such strong feelings on this matter. I mean, thinking about it, male and female clothing is quite arbitrary in many ways, so clinging to one over the other well... it seems like excessive mental effort, but I'm sure you know best.@@"<br>
<br>
<<printThought "Why do these clothes feel off? Dressing like this was never strange or uncomfortable back before I changed jobs... was it?">>
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods slowly. "@@.npc_psychiatrist;I see, I see. This sort of... confusion is exactly what we are here to discuss. Maybe next time we meet you could be a bit more experimental? This is a safe place, after all, so you should feel free to dress in any manner you please. Who knows? Maybe you'll find a cute skirt or something else you really like that you want to wear day to day.@@"<br>
<br>
<<printThought "Maybe she has a point? I mean I was stuck in a rut at my old job for quite a while...">>
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing unisex clothing to your session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
She nods towards your present attire.<br>
<br>
"@@.npc_psychiatrist;I'd like to congratulate you on that outfit. It looks good on you, but I feel like there's a bit of... uncertainty in your selection? What do you think?@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 7>>
[<<moveTo "event_psychiatrist_session_wearing_unisex_clothes_2" "State that you think it's fine, that you like how comfortable and gender-neutral it is." 60 "<<set $scene.deny=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_unisex_clothes_2" 'Reply that you suppose you would look better in something a bit more feminine.' 60 "<<set $scene.deny=false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_session_wearing_unisex_clothes_2" "State that you'd rather wear something masculine, but your work requirements..." 60 "<<set $scene.deny=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_unisex_clothes_2" 'Reply you like this outfit, that it is surprisingly comfortable compared to some of what you used to wear.' 60 "<<set $scene.deny=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: explain choice of unisex clothing
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("feminization") > 7 && !$scene.deny ||
setup.getTotalValue("feminization") <= 7 && !$scene.deny>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("feminization") > 7>>
<<if $scene.deny>>
You respond that you're quite comfortable in this attire, that you like the more neutral look.<br>
<br>
"@@.npc_psychiatrist;I see, it's just... well... you have such a lovely body and while those look fine on you I think something with just a bit of a different cut would make you look so much better... have you considered a skirt? I think you really have the hips for it...@@"<br>
<br>
<<printThought "Maybe I would look better in a dress...">>
<<else>>
You ask what she think would look better on you?<br>
<br>
She smiles. "@@.npc_psychiatrist;Oh... all sorts of things... I mean, really, you have quite the lovely body it is truly a surprise that you do not show it off more. To start with... perhaps a nice skirt? I think it would really make you hips pop...@@"<br>
<br>
<<printThought "Hmm, she's probably right, I would look good in a nice tight dress...">>
<</if>>
<<else>>
<<if $scene.deny>>
You explain that you suppose you've just gotten used to wearing stuff like this due to your work, while quickly adding that you would much prefer something more masculine...<br>
<br>
"@@.npc_psychiatrist;Hmm, I understand that our jobs do define much of our lives, but you are "off the clock" here and I think it would be good for you to take advantage of the freedom of our time together to maybe experiment more? As to your second point... well, fashion is, of course, a personal decision, but with your body? I think you should go the other direction. Your hips would look much better in a nice tight skirt than they would hidden by a pair of frumpy khakis or the like. It may seem silly, but sometimes the first step to feeling good can be looking good.@@"<br>
<br>
<<printThought "Dressing like a girl wouldn't make me happier... would it?">>
<<else>>
You note how much more comfortable this attire is than what you used to wear, even if it does look a bit overly feminine.<br>
<br>
"@@.npc_psychiatrist;Well, so long as you feel comfortable. Given that you only recently discovered this outfit though... have you considered experimenting further? I'm not saying you need to change your day to day dress, but maybe trying out some new things in the privacy of our sessions would help you better understand and develop yourself?@@"<br>
<br>
<<printThought "Fashion show as therapy? I guess that's a little weird, but it sort of makes sense?">>
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing female clothing to your session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You pose a little to show off your outfit while <<=setup.getNpcName('npc_psychiatrist', 'formal')>> watches with interest.<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60>>
"@@.npc_psychiatrist;Oh! You just make the cutest maid! Though, I have to admit seeing you is definitely going to prompt dirtiness of the thought variety...@@"<br>
<br>
You blush and thank her for the compliment.
<<elseif setup.analyzeWornTags(['casual','office', 'formal']) == 'casual'>>
"@@.npc_psychiatrist;Hmm, you are looking quite relaxed in that outfit! That's great, you shouldn't get stressed out over your attire.@@"
<<elseif setup.analyzeWornTags(['casual','office', 'formal']) == 'formal'>>
"@@.npc_psychiatrist;Oh! Do you have plans later this evening? You are looking very prim and proper, I like it!@@"
<<elseif setup.isItemEquipped('satin_blouse_white') && setup.isItemEquipped('skirt_black')>>
"@@.npc_psychiatrist;Not that you don't look just great in that but... there's something off, subtle signs of use that do not quite match your body... did someone else wear that outfit before you?@@"<br>
<br>
You blush and confess that it was "left behind" by your ex-girlfriend when she moved out.<br>
<br>
"@@.npc_psychiatrist;Oh that is so naughty! And to think, in a way, you're her ex-girlfriend too! And a sweet, lovely girl you are!@@"
<<elseif setup.isItemEquipped('satin_blouse_pink') && setup.isItemEquipped("skirt_leather_pink") && ['mary_janes_pink', 'court_shoes_pink', 'platform_wedge_heels_pink', 'thigh_highs_pink'].includes(setup.getItemFromType("shoes"))>>
"@@.npc_psychiatrist;That outfit looks amazing on you! The colour, the cut, it is just perfect! Where did you get it?@@"<br>
<br>
You state it was a gift from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Ah, I should have guessed, <<=setup.getNpcName('npc_manager', 'first')>> does have a really good eye for this sort of thing.@@"
<<elseif setup.checkVisibleClothingTag('slutty') > 75>>
"@@.npc_psychiatrist;Wow, you are really working it today! I bet you could stop traffic in that thing!@@"<br>
<br>
You smile and flutter your eyelashes flirtatiously to match your slutty, sexy attire.<br>
<br>
"@@.npc_psychiatrist;Unf, you minx! Take some pity! I'm still on the clock!@@"
<<elseif setup.checkVisibleClothingTag('fetish') > 75>>
"@@.npc_psychiatrist;What a kinky outfit! I love it!@@"<br>
<br>
You smile and flutter your eyelashes flirtatiously to match your fetishistic attire.<br>
<br>
"@@.npc_psychiatrist;Unf, you minx! Take some pity! I'm still on the clock!@@"
<<elseif setup.checkVisibleClothingTag('modest') > 75>>
"@@.npc_psychiatrist;A respectable choice, but have you considered being a bit more daring? You have a lovely body, show it off, have some fun!@@"<br>
<<else>>
"@@.npc_psychiatrist;A decent outfit, but it is lacking something, I cannot say if it is a cohesion issue or what but... I think you can do better.@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;Back on topic, how does it make you feel wearing feminine clothing?@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 15>>
[<<moveTo "event_psychiatrist_session_wearing_female_clothes_2" "Say you love it." 60 "<<set $scene.pref='love'>>">>]<br>
[@@.link_locked;At this point you can't possibly deny that your preference is that your clothing be the more feminine, the better.@@]
<<elseif setup.getTotalValue("feminization") > 10>>
[<<moveTo "event_psychiatrist_session_wearing_female_clothes_2" "Say you love it." 60 "<<set $scene.pref='love'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_female_clothes_2" "Say you're kind of ambivalent." 60 "<<set $scene.pref='ambiv'>>">>]<br>
[@@.link_locked;You may not have yet warmed to the more extremes of feminine attire, but there's no denying that you have come to prefer your clothing be somewhat less than masculine.@@]
<<elseif setup.getTotalValue("feminization") > 5>>
[<<moveTo "event_psychiatrist_session_wearing_female_clothes_2" "Say you love it." 60 "<<set $scene.pref='love'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_female_clothes_2" "Say you're kind of ambivalent." 60 "<<set $scene.pref='ambiv'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_female_clothes_2" "Say you hate it." 60 "<<set $scene.pref='hate'>>">>]
<<else>>
[@@.link_locked;Even if it might make things easier, you can't bring yourself to state that you love wearing female attire.@@]<br>
[<<moveTo "event_psychiatrist_session_wearing_female_clothes_2" "Say you're kind of ambivalent." 60 "<<set $scene.pref='ambiv'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_female_clothes_2" "Say you hate it." 60 "<<set $scene.pref='hate'>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: how you feel about wearing female clothing to session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.pref>>
<<case 'love'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<case 'ambiv'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<case 'hate'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 1>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.pref>>
<<case 'love'>>
You note that you've really come to love feminine attire, scarcely able to remember why you would have ever wanted to wear boring collared shirts and pants.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Wonderful, wonderful. I am so proud of how well you are developing. I've done my best to help you in these therapy sessions, but the real work has been your own and it's so nice to see you appreciating the rewards that you have earned.@@"
<<case 'ambiv'>>
You shrug, male clothes, female clothes... it's all just fabric, in the end.<br>
<br>
"@@.npc_psychiatrist;I see... I mean, certainly, you are correct. On the other hand... if all we needed was to be covered and warm we'd all wear the same thing. That is obviously not the case because clothing is a great way to express, and re-affirm who we are. Your ambivalence... it points to an uncertainty about your self-identity. You should think about that, what can you, or I, do to help you affirm your identity more firmly?@@"
<<case 'hate'>>
You state that you hate wearing female clothing.<br>
<br>
<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> tone is tinged with disappointment. "@@.npc_psychiatrist;You say that, but is that really what you believe? So much of our identity is pushed on us by society, and you existed so long that way, and were so miserable. Why not release those pre-conceptions, embrace something better? I mean, it does not have to be this but... well, you do look quite good in that outfit...@@"<br>
<br>
<<printThought "Am I really better off just embracing being a girl?">>
<</switch>>
<br><br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing mixed gender clothing to your session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks over your outfit. "@@.npc_psychiatrist;So... what were you going for, with that? I like pieces of it but, well... taken as a whole it is quite confused...@@"<br>
<br>
After some thought you are forced to agree with her assessment. You are confused, but that is only because the answer to what you should wear seems like such a conundrum — your past and future seemingly pulling in opposite directions...<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about doing your session "commando"
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You admit that you aren't wearing any underwear at the moment.<br>
<br>
<<if ["forced","strict"].includes($player.sec_style.clothing.underwear)>>
"@@.npc_psychiatrist;Interesting, interesting... given the sort of trouble going "commando" got you into before... what exactly are you trying to do?@@"<br>
<br>
You blush in memory of your first day, how <<=setup.getNpcName('npc_manager', 'formal')>> forced you into the <<if $fetish.sissy>>sissiest<<else>>girliest<</if>> pink ensemble you could have ever imagined.<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_2" 'Flutter your eyes flirtatiously and say "oh... more of the same..."' 60 "<<set $scene.naughty=true>>">>]<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<<else>>
"@@.npc_psychiatrist;Interesting... and daring. To me psychoanalysis is all about peeling away layers to reach one's inner self. What do you think you are saying by being so naughty and exposed beneath the thin veneer of your clothing? After all, it's called "going commando" and a commando will often find themselves on very... hard missions.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_2" "Ask if she might have such a mission for you..." 60 "<<set $scene.naughty=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_2" 'Say you just like the breezy freedom of not wearing undergarments.' 60 "<<set $scene.naughty=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: psychiatrist evaluates your "commando" response to see if you're ready for a more intense scene
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.naughty>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.naughty>>
<<if $npc_psychiatrist.flags.therapy_events.anal>>
Your flirtatiousness seems to finally be too much for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> as she carefully folds up her notes and places her pen to the side.<br>
<br>
"@@.npc_psychiatrist;While I appreciate a little fun as much as the next girl, and while these sessions are meant for your benefit. If you are going to flaunt things so brazenly well... I shall have to take more severe measures.@@"<br>
<br>
Rising from her seat, she walks around her desk to stand in front of you. Leaning forward and bracing a hand on either side of your head her breasts looking ready to fall out of her straining top, a mere centimetres from your face.<br>
<br>
"@@.npc_psychiatrist;So... <<if $fetish.sissy>>sissy<<else>>girl<</if>>... are you going to focus on our session, or do I need to implement some more... physical guidance?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_1" 'Be a bad girl and free her breasts.' 60>>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3" 'Apologise and promise to be a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>.' 60>>]
<<else>>
Your flirtatiousness seems to have <<=setup.getNpcName('npc_psychiatrist', 'formal')>> on edge, but she takes a calming breath and smiles. "@@.npc_psychiatrist;A very interesting response, and an encouraging one. It signifies that you are becoming more comfortable in yourself and your desires, yes, this is very promising indeed.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
<<else>>
You explain that you just like the unrestrictive, naughty feeling of not wearing any underwear.<br>
<br>
"@@.npc_psychiatrist;I see... well, that is up to you, though you ought to be careful as a wrong move like this could have you very exposed in an instant!@@"<br>
<br>
<<printThought "Was that an invitation? Maybe next time...">><br>
<br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
</div>/*#
#desc: psychiatrist topic: back off when she confronts you for being "commando"
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You meekly shrink from her attentions, promising to do a better job focusing on the therapy at hand.<br>
<br>
She lets out a slight sigh before pulling back, giving you an odd glance for a moment before walking back to her desk.<br>
<br>
"@@.npc_psychiatrist;Well, with that out of the way, what is next?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist bonus scene replaying freud's psychosexual stages, oral (breasts)
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.submission.chastity == "" && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
/% chastity comes up later in the scene, don't want this to be the players introduction to such %/
You reach for <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> breasts only for her to pull away with a laugh.<br>
<br>
"@@.npc_psychiatrist;Feisty! Now that isn't appropriate for a doctor/patient relationship, now is it? At least... not yet.@@"<br>
<br>
<<printThought "Did she just wink at me? And if she did... what does that mean?">><br>
<br>
You're too stunned to respond until she is already back to her chair, notepad in hand.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<<else>>
You barely touch <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> breasts and they explode out of her top. Hanging full and heavy before you, you don't have a chance to admire them before they are pressed against you as she buries your face in her bare bosom.<br>
<br>
"@@.npc_psychiatrist;Oops! Look at that! Well, don't just sit there, suck you <<if $fetish.sissy>>sissy<<else>>sexy<</if>> baby!@@"<br>
<br>
You open your mouth as she shifts to shove an engorged nipple past your lips.<br>
<br>
"@@.npc_psychiatrist;Mmm, that's right, indulge those oral fixations... keep licking...@@"<br>
<br>
You obey, moaning as you suck and slurp on her soft, tasty tits switching back and forth occasionally between them until she finally pulls back, dragging you to your feet in the process.<br>
<br>
"@@.npc_psychiatrist;Not bad, but now it's time to move on to the next stage of psychosexual development... do you know what that is?@@"<br>
<br>
<<if setup.getTotalValue("smart") > 15>>
<<printThought "Sounds like she's talking about Freud's Psychosexual Stages. Suckling her breasts, would, of course, be the first oral stage, and the stage after that would be anal, followed by phallic, latent and genital...">><br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_2" 'Respond that the second stage of psychosexual development, according to Freud, would be the anal stage.' 60 "<<set $scene.style='genius'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_2" 'Make a naughty mistake and say "penis?".' 60 "<<set $scene.style='smart'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_2" 'Shake your head in mock confusion.' 60 "<<set $scene.style='dumb'>>">>]
<<elseif setup.getTotalValue("smart") >= 10>>
<<printThought "That's a Freud thing, isn't it? I can't remember what the next stage is, but it's freud so... probably something to do with the penis?">><br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_2" 'Say "penis?".' 60 "<<set $scene.style='smart'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_2" 'Shake your head in confusion.' 60 "<<set $scene.style='dumb'>>">>]
<<else>>
<<printThought "Psycho-what?">><br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_2" 'Shake your head in confusion.' 60 "<<set $scene.style='dumb'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: psychiatrist bonus scene replaying freud's psychosexual stages, anal
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<set $scene.analSkill = setup.getTotalValue("anal")>>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.analSkill += 2>>
<<else>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<applyExperience 'anal' $scene.analSkill 'normal' $SEEN_FRIEND>>
<<if $scene.style == 'genius'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<elseif $scene.style == 'dumb'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'genius'>>
If she's surprised by your intelligent reply she doesn't show it.<br>
<br>
"@@.npc_psychiatrist;That is exactly correct! What a clever <<=setup.getBoyGirl($npc_psychiatrist)>> you are.@@"
<<case 'smart'>>
You blurt out "@@.pc;Penis?@@" only for her to shake her head.<br>
<br>
"@@.npc_psychiatrist;Tsk, tsk, always with the penis! You know Freud wrote about other things too... no, stage two of psychosexual development would be the anal stage.@@"
<<case 'dumb'>>
"@@.npc_psychiatrist;To be fair, Freud is a bit antiquated for you to really be familiar with, but hey, sometimes an old tool can be just the thing! Stage two of his theory of psychosexual development would be the anal stage.@@"
<<default>>
ERROR: unknown psychosexual scene.style! <<=$scene.style>>
<</switch>>
<br><br>
Keeping you within arms reach she turns to grab something out of a drawer. Facing you once more she snaps an elbow-length latex glove onto her hand with a grin.<br>
<br>
"@@.npc_psychiatrist;Alright, <<if $fetish.sissy>>sissy<<else>><<=setup.getBoyGirl($npc_psychiatrist)>><</if>>, bend over and let's check on your development!@@"<br>
<br>
You bend over the desk and she gently pulls down your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>>, the lack of panties that got you into this mess in the first place meaning that your pert butt is now fully exposed.<br>
<br>
<<if $scene.plug != "">>
<<if setup.checkItemTag($scene.plug, ['hollow'])>>
"@@.npc_psychiatrist;My, my, it looks like SOMEBODY is already spread and ready! Yes, this can just stay right there spreading you out while I address your obvious fixation.@@"
<<else>>
"@@.npc_psychiatrist;My, my, it looks like SOMEBODY is already overindulging! Let us just put this naughty thing aside and see if we can't work on your obvious fixation.@@"<br>
<br>
She slides the <<=setup.getItemName($scene.plug)>> out of your rear and puts it to one side.
<</if>>
<br><br>
<</if>>
Your rear hole spread and exposed she begins rubbing lube around your puckered passage, then slides a gloved finger inside.<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
You moan with lust and she responds by sliding a second, then a third finger into your rear. Groaning you beg for more only to go wide-eyed with delight as you realise that she has just shoved her entire fist into your ass.<br>
<br>
"@@.npc_psychiatrist;Hmm, I had my suspicions earlier with how eagerly you indulged in wanton oral behaviour, but this confirms it. Rather than developing into a functioning adult you become a total <<if $fetish.sissy>>sissy <</if>>slut!@@"
<<elseif setup.getTotalValue("anal") >= 10>>
You moan in pleasure and she responds by sliding a second, then a third finger into you. Spread similar to a moderately-sized cock you pant in arousal as she thrusts in and out, her fingertips lovingly stroking your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> in an oh-so-delightful manner.<br>
<br>
"@@.npc_psychiatrist;Now this is healthy anal development. Eager to be filled, yet still tight... yes, very good indeed.@@"
<<elseif setup.getTotalValue("anal") > 5>>
You gasp. Thanks to the lube her finger doesn't hurt, and you feel arousal steadily building as she slides it in and out, rubbing your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
"@@.npc_psychiatrist;Hmm, not bad. You're pleasantly tight, but far too tense, in my opinion. You need to learn to relax, to just bend over and take it, take it like an eager <<if $fetish.sissy>>sissy <</if>>butt-slut...@@"
<<else>>
You gasp, feeling something entering your butt is so foreign and yet her finger feels strangely good.<br>
<br>
"@@.npc_psychiatrist;Hmm, no wonder you have so many issues. You have clearly under-indulged in "back-door" activities, I ought to prescribe you a nice thick plug and some healthy butt-fucking...@@"
<</if>>
<br><br>
You moan and twist as she continues to play with your sensitive rear hole, feeling yourself nearing an analgasm only for her to pull out with a wet pop.<br>
<br>
"@@.npc_psychiatrist;Now then, on to stage three...@@"<br>
<br>
<<if setup.getTotalValue("smart") > 15>>
<<printThought "Stage 3... that's the phallic one...">><br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_3" 'Smile and eagerly shout Phallic!' 60 "<<set $scene.style='genius'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_3" 'Pretend to be confused and ask "penis?".' 60 "<<set $scene.style='smart'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_3" 'Remain silent.' 60 "<<set $scene.style='dumb'>>">>]
<<elseif setup.getTotalValue("smart") >= 10>>
<<printThought "I tried saying penis last time, but it's Freud, the odds have to be with me that cock will pop up eventually, right?">><br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_3" 'Say "penis?".' 60 "<<set $scene.style='smart'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_3" 'Remain silent.' 60 "<<set $scene.style='dumb'>>">>]
<<else>>
<<printThought 'All this scientific mumbo-jumbo is going right over your head... not that you are not enjoying her "practical" applications...'>><br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_3" 'Remain silent.' 60 "<<set $scene.style='dumb'>>">>]
<</if>>
</div>/*#
#desc: psychiatrist bonus scene replaying freud's psychosexual stages, phallic (her cock)
#status: FINISHED 0.7.11.0
#ignore_spell: p
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_psychiatrist.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 8 'normal' $SEEN_FRIEND>>
<<if $scene.style == 'genius'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<elseif $scene.style == 'dumb'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'genius'>>
"@@.npc_psychiatrist;Right you are!@@" She states as you slide to your knees and turn around to find yourself eye to one-eyed-wonder-worm with her stiff girl-cock.<br>
<br>
"@@.pc;I don't think this is—@@" you start to object only for her to silence you by shoving her cock into your mouth.
<<case 'smart'>>
"@@.npc_psychiatrist;Phallic, technically, but close enough!@@" She states as you slide to your knees and turn around to find yourself eye to one-eyed-wonder-worm with her stiff girl-cock.<br>
<br>
Before you can think of a response her hips are moving forward, your lips parting as her cock slides into your mouth.
<<case 'dumb'>>
"@@.npc_psychiatrist;Come on, Freud? Guessing something to do with the penis is practically a freebie! Oh well, stage three is Phallic, by the way.@@"<br>
<br>
Turning around and sliding to your knees you find her hard girl-cock zooming forward like a mouth-seeking missile. It penetrates its target.
<<default>>
ERROR: unknown psychosexual scene.style! <<=$scene.style>>
<</switch>>
<br><br>
Though stiff and pleasantly mouth-filling the flesh of her cock is tender and smooth, a delicious girly delight.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
You let out an excited moan and deploy every ounce of your considerable skill on sucking and licking the lovely girl-cock that has graced your lips.<br>
<br>
"@@.npc_psychiatrist;Oh my! Looks like SOMEONE had some takeaways from their oral stage.@@"<br>
<br>
Sucking happily it isn't long before you are rewarded with a tasty gush of cum. You suck like a vacuum, slurping up every drop with such force she actually has to push you away to escape your mouth's grasp. Letting out a low moan <<=setup.getNpcName('npc_psychiatrist', 'formal')>> steps back, a little unsteady as she recovers from your mouth-induced orgasm.
<<elseif setup.getTotalValue("oral") > 10>>
You purr in contentment as you suck her girl-cock, running your tongue under her shaft and swirling it over her tip.<br>
<br>
"@@.npc_psychiatrist;Oh yes! Show how much you love the penis, yes, yes!@@"<br>
<br>
Her hips rocking to aid your efforts you soon are rewarded with a fresh burst of tasty, tasty cum. You try to suck her dry as she steps backwards
<<elseif setup.getTotalValue("oral") > 5>>
Sucking softly you get into the rhythm of things as she gently rocks her hips, your lips sliding up and down her girl-cock.<br>
<br>
"@@.npc_psychiatrist;Mmm, not bad, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, appreciation without obsession, it seems your phallic relationship is healthy after all...@@"<br>
<br>
Pulling away before climaxing she steps back. "@@.npc_psychiatrist;Yes, not bad, indeed... though that is only one data point and further study may prove necessary at a later date.@@"
<<else>>
You don't really know what to do with a cock in your mouth, even if her is remarkably pleasant, both in taste and texture.<br>
<br>
Gently thrusting her hips you feel obligated to make a response, flailing your tongue somewhat randomly in a manner you hope is pleasurable.<br>
<br>
"@@.npc_psychiatrist;Hmm... yes, it seems like you definitely need to spend more time in this stage. Your phallic abilities are sorely undeveloped, but that is nothing that a steady diet of vitamin P cannot address.@@"<br>
<br>
<<printThought "Vitamin P... does she mean penis?">><br>
<br>
She carefully separates, moving a few steps back.
<</if>>
<br><br>
"@@.npc_psychiatrist;Mmm, yes, good... now, do you happen to know what stage four is?@@"<br>
<br>
<<if setup.getTotalValue("smart") > 15>>
<<printThought "Stage 4... that's latency, when the libido lies dormant...">><br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_4" 'Reply knowingly that "That would be Latency, I believe."' 60 "<<set $scene.style='genius'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_4" 'Be playfully ignorant and suggest "penis?" again.' 60 "<<set $scene.style='smart'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_4" 'Shake your head.' 60 "<<set $scene.style='dumb'>>">>]
<<elseif setup.getTotalValue("smart") >= 10>>
<<printThought "Hmm, we've done oral and anal and penis... maybe vag?">><br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_4" 'Say "vaginal?"' 60 "<<set $scene.style='smart'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_4" 'Shake your head.' 60 "<<set $scene.style='dumb'>>">>]
<<else>>
<<printThought 'All this scientific mumbo-jumbo is going right over your head... not that you are not enjoying her "practical" applications...'>><br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_commando_3_naughty_4" 'Shake your head.' 60 "<<set $scene.style='dumb'>>">>]
<</if>>
</div>/*#
#desc: psychiatrist bonus scene replaying freud's psychosexual stages, phallic (her cock)
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<wearItem $scene.plug true>>
<</if>>
<<if !setup.checkItemTypeWorn("cage") && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
<<if $player.body_ref.vagina || !$player.body_ref.balls || $player.flags.chastity_style == "belt">>
<<set $scene.new_cage = 'chastity_belt_flat'>>
<<else>>
<<if $player.body.penissize[0] <= 1>>
<<set $scene.new_cage = 'chastity_cage_tiny'>>
<<else>>
<<set $scene.new_cage = 'c_cage_pink'>>
<</if>>
<</if>>
<<if !setup.checkItemOwned($scene.new_cage)>>
<<addItem $scene.new_cage>>
<<else>>
<<if setup.inWardrobe($scene.new_cage)>>
<<wardrobeToItem $scene.new_cage>>
<</if>>
<</if>>
<<wearItem $scene.new_cage true>>
<<manipulateItem $scene.new_cage "lock" true>>
<<set $scene.addKey = $npc_manager.flags.trustplayerwithkey>>
<<if $scene.addKey>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<addItem _keyId>>
<</if>>
<</if>>
<<if $scene.style == 'genius'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<elseif $scene.style == 'dumb'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<<set $scene.unlockCommando = !$player.flags.commando>>
<<set $player.flags.commando = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'genius'>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> does a little cheer. "@@.npc_psychiatrist;Oooh, you got the hard one!@@"
<<case 'smart'>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> chuckles. "@@.npc_psychiatrist;No, but I suppose the true answer "latency" would be a bit tricky to guess.@@"
<<case 'dumb'>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> shakes her head in amusement. "@@.npc_psychiatrist;Still a bit tongue-tied? That's fine, your mouth was being put to better use when you weren't speaking, anyway.@@"
<<default>>
ERROR: unknown psychosexual scene.style! <<=$scene.style>>
<</switch>>
<br><br>
"@@.npc_psychiatrist;In Freudian terms this refers to a period of dormant libido. Now... obviously your libido is strong and healthy and aroused by proper things like <<=setup.printTurnons()>>, but that doesn't mean you wouldn't benefit from a bit of denial, and you know what that means, right?@@"<br>
<br>
<<if $scene.cage>>
"@@.pc;Chastity?@@" you reply, your thoughts immediately going towards the <<=setup.getItemName($scene.cage)>> currently imprisoning <<if $player.body_ref.penis>>your <<getWordMyPenis false>><<else>>you<</if>>.<br>
<br>
She smiles and moves closer, her hand snaking between your legs to close around your <<=setup.getItemName($scene.cage)>>. "@@.npc_psychiatrist;Hmm, looks like you're already on top of things. Keep up the good work, <<if $fetish.sissy>>sissy<<else>><<=setup.getBoyGirl($npc_psychiatrist)>><</if>>, and maybe sometime I'll introduce you to the fifth stage — Genitals and after that... well, let's just say I have my own personal extension to Freud's theories...@@"
<<elseif $fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina>>
You remain silent, not wanting to risk a suggestion.<br>
<br>
She sighs and shakes her head in amusement. "@@.npc_psychiatrist;It's chastity, silly!@@" Like a snake her hand shoots out <<if $player.body_ref.penis>>to wrap around your <<getWordMyPenis>><<else>>press against your crotch<</if>> "@@.npc_psychiatrist;And you... are DEFINITELY in need of a bit of chastity.@@"<br>
<br>
Before you can react, she has pulled down your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>>, producing a
<<switch $scene.new_cage>>
<<case 'chastity_belt_flat'>>
steel belt that is suddenly locking around you waist.
<<case 'chastity_cage_tiny'>>
tiny chastity cage that she locks over your similarly diminutive member.
<<case 'c_cage_pink'>>
pink plastic cage as if from thin air and locking it around your member.
<<default>>
ERROR: unexpected scene.new_cage <<=$scene.new_cage>>
<</switch>><br>
<br>
"@@.npc_psychiatrist;That's much better. <<if $scene.addKey>>And here is the key — we would not wish you to get in trouble at Monday's inspection!<<else>>Don't worry — it will open with the same key <<=setup.getNpcName('npc_manager', 'first')>> uses.<</if>> Honestly, I am surprised she let you out... quite unlike her, and dangerous! Who knows what sort of trouble an uncaged <<if $fetish.sissy>>sissy<<else>><<=setup.getBoyGirl($npc_psychiatrist)>><</if>> could get into!@@" <<if $scene.addKey>><<=setup.getNpcName('npc_psychiatrist', 'formal')>> hands you a key and you stare at it somewhat dumbfounded.<</if>><br>
<br>
<<printThought "Wait... what does <<=setup.getNpcName('npc_psychiatrist', 'formal')>> know about <<=ps(setup.getNpcName('npc_manager', 'formal'))>> behaviour?">>
<<else>>
Erotic denial at the hands of your dominant? You reply.<br>
<br>
She smiles and moves closer, her hand snaking between your legs gently tease. "@@.npc_psychiatrist;Quite so... but what is denial without a little testing and teasing?@@" She smiles and then winks as she removes her hand. "@@.npc_psychiatrist;Not too much though, but you stay on this path and maybe sometime I'll introduce you to the fifth stage — Genitals and after that... well, let's just say I have my own personal extension to Freud's theories...@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;Well, I think that brings us to a close. I do hope this little lesson has helped with your development. Freud may well be a bit stale and antiquated, but there are always kernels of use in any well-reasoned theory.@@"<br>
<br>
<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.npc_psychiatrist;Oh! I nearly forgot!@@" Scooping up your <<=setup.getItemName($scene.plug)>> she gives it a quick squirt of lube then looks back at you with a smile. "@@.npc_psychiatrist;Bend over, <<if $fetish.sissy>>sissy<<else>><<=setup.getBoyGirl($npc_psychiatrist)>><</if>>! We wouldn't want to leave you feeling empty now, would we?@@"<br>
<br>
You do as ordered, wiggling your butt invitingly and letting out a cute gasp as the <<=setup.getItemName($scene.plug)>> slides back where it belongs.<br>
<br>
<</if>>
<<if $scene.unlockCommando>>
<<printThought 'Hmm... seems going "commando" can lead to fun... I might try it some other time...'>><br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing some female underwear to your session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about your feminine undergarments. She grills you for a few details before passing her judgement.<br>
<br>
"@@.npc_psychiatrist;Hmmm, it sounds nice, but incomplete. A proper girl is never without bra, panties, stockings and garters, wouldn't you agree?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_partial_female_underwear_2" "Agree that you really should wear a complete set." 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_partial_female_underwear_2" "Disagree, if anything, you're wearing too much female underwear as it is!" 60 "<<set $scene.agree=false>>">>]
</div>/*#
#desc: psychiatrist topic: respond partial female underwear
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.agree>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
"@@.npc_psychiatrist;I'm glad you agree, and I hope that you put those thoughts into action and "finish off" your outfit as soon as possible.@@"
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns. "@@.npc_psychiatrist;There is no reason to respond emotionally. That said, those emotions... well, it has always been my experience that such a visceral outbursts are caused by an internal rebellion against what one knows, deep down, is true. Maybe you would be better off confronting your feelings rather than avoiding them?@@"<br>
<br>
<<printThought "What? No! I don't want to wear full feminine undergarments... do I?">>
<</if>>
<br><br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing a female underwear ensemble (bra, stockings, panties, garters)
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You <<if setup.getTotalValue("feminization")>>gush to<<else>>tell<</if>> <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the "complete" set of female undergarments you are wearing.<br>
<br>
She smiles. "@@.npc_psychiatrist;Lovely, my dear, lovely. Doesn't it just feel so good to be wrapped and supported by a nice set of undergarments? Especially if they're cute or sexy, a nice secret to keep, or share with that special someone. Of course, the one downside is that I really can't think of anything else to say other than to once again congratulate you on your fashion decision.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing just undergarments (no outerwear) to session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Aren't you sexy! While I appreciate the openness that would have you being willing to wear so little in my presence... it's like we're on a sleepover! Well... I cannot think of any further advice... strange, is it not? Wearing underwear but no clothing would draw looks of shock in the outside world, yet here it seems perfectly natural? Of course, the reverse... wearing clothing but no undergarments at all? Well, that... a fun secret in the real world, in here? That be revealing indeed...@@"<br>
<br>
<<printThought "Huh, that was cryptic, maybe I should try a session commando?">><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about being naked for session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> has been devouring your naked form with her eyes and you finally bring up the subject.<br>
<br>
"@@.npc_psychiatrist;Yes, well, I obviously quite like the sight of you... quite like it a lot, and not just because you are a total cutie, although you are! No, what I like is how being willing to sit here, so exposed, while we work through your psychological issues... well, it bodes well, it bodes very well. After all, the biggest keys to successful therapy is trust between patient and client and a willingness to be vulnerable and this... this demonstrates both!@@"<br>
<br>
"@@.npc_psychiatrist;So, with that said, what else would you like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing heels during session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<<set $scene.heels= setup.getItemFromType('shoes')>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods towards your <<=setup.getItemName($scene.heels)>>. "@@.npc_psychiatrist;So how are you liking wearing heels?@@"<br>
<br>
<<if setup.getTotalValue("heels") >= setup.getItemObj($scene.heels).heels.difficulty>>
[<<moveTo "event_psychiatrist_session_wearing_heels_2" "State you have come to like them." 60 "<<set $scene.like=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_heels_2" 'Say that, even though you can walk in them, you dislike them.' 60 "<<set $scene.like=false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_session_wearing_heels_2" "Say you like them, even if they are a bit of a challenge." 60 "<<set $scene.like=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_heels_2" 'Say you hate how impossible they are to wear.' 60 "<<set $scene.like=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: feels about wearing heels
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.like>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.like>>
<<if setup.getTotalValue("heels") >= setup.getItemObj($scene.heels).heels.difficulty>>
<<if setup.getItemObj($scene.heels).tags.includes('ballet')>>
"@@.npc_psychiatrist;Wonderful, wonderful — and you wearing such stunning ballet boots with ease! Truly you have reached the pinnacle of perfection!@@"<br>
<br>
You feel a spark of pride at her acknowledgement of your efforts.
<<else>>
"@@.npc_psychiatrist;Very good. And your practice shows, they make your legs look wonderful and you look as graceful as a ballerina! Mmm... ballet heels, now THAT is a the true height of footwear! Pun intended!@@"<br>
<br>
You feel a spark of pride at her acknowledgement of your efforts, and an urge to push yourself even further towards en pointe perfection...
<</if>>
<<else>>
"@@.npc_psychiatrist;I'm glad to hear that — that sort of thought will help you through until you've really mastered them. I know it can be a struggle, but beauty is pain, as they say, and you look very beautiful perched atop a nice steep heel...@@"<br>
<br>
You blush and thank her for the compliment, making a mental note to keep practicing until you have mastered walking in the steepest heels!
<</if>>
<<else>>
<<if setup.getTotalValue("heels") >= setup.getItemObj($scene.heels).heels.difficulty>>
"@@.npc_psychiatrist;That is odd that you would say that... I mean, you walk in them so gracefully, like they were meant to be on your feet... maybe that's the problem, they're too easy? You should seek out something more... interesting, more daring! Oh, that would be wonderful, don't you agree?@@"<br>
<br>
<<printThought "Wait... no, these are bad enough, aren't they?">>
<<else>>
"@@.npc_psychiatrist;That is too bad. They look gorgeous on you sitting there but, well... it is obvious that you need additional practice. Keep it up, though! I think this is merely a case of lack of skill being misinterpreted as dislike, learn to walk with graceful ease in heels and I am certain that you will only want to go higher and higher, never back!@@"<br>
<br>
<<printThought "What? No, I want to wear normal shoes, not crazy stilettos... right?">>
<</if>>
<br><br>
You find yourself reluctant to disagree with her enthusiasm and settle for changing the subject.
<</if>>
<br><br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing chastity during session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<<set $scene.cage= setup.getItemFromType('cage')>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You note the <<=setup.getItemName($scene.cage)>> locked around <<if $player.body_ref.penis>>your <<getWordMyPenis false>><<else>>you<</if>>.<br>
<br>
<<switch $scene.cage>>
<<case "electric_chastity" "chastity_belt_electric" "chastity_belt_adv" "c_cage_advanced">>
"@@.npc_psychiatrist;Ah, yes, such a wonderful contraption for keeping a <<if $fetish.sissy>>sissy<<else>><<=setup.getBoyGirl($npc_psychiatrist)>><</if>> in line especially that one, being all electrified, zap zap!@@"
<<case 'chastity_cage_tiny' 'chastity_belt_tiny'>>
"@@.npc_psychiatrist;Ah, yes, such a wonderful contraption! and functional, too for helping "shrink down" certain unsightly bits...@@"
<<case 'c_cage_pink'>>
"@@.npc_psychiatrist;Ah, such a lovely pink, and the perfect colour for a <<if $fetish.sissy>>sissy<<else>><<=setup.getBoyGirl($npc_psychiatrist)>><</if>> like yourself!@@"
<<case "sissyomatic" "sissyomatic_belt" "sissyomatic_med" "sissyomatic_belt_med" "sissyomatic_jumbo" "sissyomatic_belt_jumbo">>
"@@.npc_psychiatrist;Ah, such a wonderful perfection of security — locked and filled so delightfully. I can only imagine how much better the world might become once that device goes into wide-spread production.@@"
<<default>>
"@@.npc_psychiatrist;Ah, yes, such a wonderful contraption for keeping a <<if $fetish.sissy>>sissy<<else>><<=setup.getBoyGirl($npc_psychiatrist)>><</if>> focused and safe!@@"
<</switch>>
<br><br>
<<if $npc_manager.flags.hascagekey>> /% NYI: expand this for other keyholders? %/
"@@.npc_psychiatrist;Even better that you don't even have the key! That is when a chastity device does its best work, when you have completely surrendered control. Oh, <<=setup.getNpcName('npc_manager', 'first')>>... I mean <<=setup.getNpcName('npc_manager', 'other')>>, she must be so proud!@@"
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_11')>>
<<if _themeId != -1 && $npc_psychiatrist.themes.manager[_themeId].done == 0>>
<br><br>
<<printThought "Wait... how did she know that?">>
<</if>>
<<else>>
"@@.npc_psychiatrist;Of course, it works even better if you are unable to remove it. You really ought to find a permanent keyholder, I am sure that <<=setup.getNpcName('npc_manager', 'first')>>... I mean <<=setup.getNpcName('npc_manager', 'other')>> would be very appreciative for you to let her hold onto it for safe keeping...@@"<br>
<br>
<<printThought "No, I don't want to give up even more control!... though... it would probably make her happier with me...">>
<</if>>
<br><br>
"@@.npc_psychiatrist;So, what are your thoughts on being locked up?@@"<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
[<<moveTo "event_psychiatrist_session_wearing_chastity_2" "Say you love it." 60 "<<set $scene.love=true>>">>]<br>
[@@.link_locked;You are far too good a submissive to possibly object to being locked up.@@]
<<elseif setup.getTotalValue("submission") > 5>>
[<<moveTo "event_psychiatrist_session_wearing_chastity_2" "Say you love it." 60 "<<set $scene.love=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_chastity_2" 'Say you hate it.' 60 "<<set $scene.love=false>>">>]
<<else>>
[@@.link_locked;Being in chastity is too intimate of a violation, you could never enjoy something like this...@@]<br>
[<<moveTo "event_psychiatrist_session_wearing_chastity_2" 'Say you hate it.' 60 "<<set $scene.love=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: say how you like chastity
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.love>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.love>>
You agree with all of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> assessments and add a few more of your own as to the benefits of you being locked in chastity.<br>
<br>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
"@@.npc_psychiatrist;Music to my ears, but I think you would like it even better if you gave up control of that silly little key. Much better for someone else to be in control of it than for you to risk indulging in a regretful moment of weakness.@@"
<<else>>
"@@.npc_psychiatrist;Such a delight to hear, and you've even given up control of your key! A recipe like that will see that cute <<if setup.isCage()>>cage<<else>>chastity belt<</if>> doing almost as much good for your psyche as I do!... almost!@@" She winks playfully.
<</if>>
<br><br>
<<if setup.getTotalValue("submission") > 10 && $player.flags.chastityStuck && !$player.flags.selfcontrol>>
[<<moveTo "event_psychiatrist_session_wearing_chastity_3" "Bring up that you've found yourself scared to be in public out of chastity." 60>>]<br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<<else>>
You shake your head at her litany of so-called "benefits" of chastity, firmly stating that you aren't some animal in need of being caged.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> brushes off your objections with a smile.<br>
<br>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
"@@.npc_psychiatrist;You say that and yet... despite being in control of your key, you remain locked... I think you would be much happier if you could just admit the truth that you have already internalised...@@"<br>
<br>
<<printThought "No... I hate being <<if setup.isCage()>>caged<<else>>locked in chastity<</if>> but... why AM I still wearing it?">>
<<else>>
"@@.npc_psychiatrist;I see... well, I suppose it is fortunate that your keyholder is around to keep you on the straight and narrow. Don't worry, it may feel hard now... hehe, well, maybe not hard! but, in time I just know you will grow to understand how much good it is for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> to be <<if setup.isCage()>>caged<<else>>locked in chastity<</if>>.@@"<br>
<br>
<<printThought "What? No, I don't want to be <<if $fetish.sissy>>a <<if setup.isCage()>>caged sissy<<else>>sissy locked in a chastity belt<</if>><<else>><<if setup.isCage()>>caged<<else>>locked in chastity<</if>><</if>>!">>
<</if>>
<br><br>
She seems to take your cold silence for agreement and moves on.<br>
<br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
</div>/*#
#desc: psychiatrist topic: unable to go out out of chastity
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up that are becoming addicted to chastity, even finding yourself unable to go out in public without being locked up.<br>
<br>
"@@.npc_psychiatrist;I see. A not unsurprising development... but one that I see is beginning to weight upon you. If you would like I could unlock you — temporarily, mind, for supervised therapeutic purposes.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_chastity_4" "Yes, that sounds good." 120 "<<set $scene.unlock=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_chastity_4" "Maybe some other time..." 120 "<<set $scene.unlock=false>>">>]<br>
</div>/*#
#desc: psychiatrist topic: agree to unlock
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.unlock>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.chastityLevel = setup.getChastityLevel()>>
<<removeItem $scene.cage>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.unlock>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> takes a device out of a desk drawer before walking over and having you display your <<=setup.getItemName($scene.cage)>>.<br>
<br>
<<switch $scene.chastityLevel>>
<<case 1 2>>
"@@.npc_psychiatrist;Such a simple lock... more for appearance than for security,@@" she explains before sliding the narrow tip of the auto-lockpick into your keyhole. There is a brief whirr and your device opens.
<<case 3>>
"@@.npc_psychiatrist;Heh, a digital lock, quite pathetic how cryptographically unsecure such things actually are.@@"<br>
<br>
You gasp as she presses a button and your chastity device unlocks.
<<case 4>>
"@@.npc_psychiatrist;Quite the device, top of the line, I believe... well, for the public at least. Fortunately for you there is an emergency medical override built-in... one for which I have the key.@@"<br>
<br>
You gasp as she presses a button and your chastity device unlocks.
<<case 5>>
"@@.npc_psychiatrist;Ah, yes, the 9001 series... fortunately for you I am authorised by the company to perform medical overrides.@@"<br>
<br>
You gasp as she presses a button and your overly-secure chastity device retracts and released.
<</switch>>
<br><br>
You nervously put your chastity device to once side as <<=setup.getNpcName("npc_psychiatrist","formal")>> returns to her desk and looks across at you.<br>
<br>
"@@.npc_psychiatrist;So, tell me. After spending so much time secured... how do you feel being unlocked... vulnerable?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_2" "You're intrigued, and wish you had the courage to experiment further." 60 "<<set $scene.unchaste=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_2" 'Say you hate it.' 60 "<<set $scene.unchaste=false>>">>]
<<else>>
You decline <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> offer and she nods passively. "@@.npc_psychiatrist;Perhaps some other time. So, what else did you wish to speak of today?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
</div>/*#
#desc: psychiatrist topic: talk about wearing corset during session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> gaze alights on your corset-shaped figure and she asks you what you think of the constricting garment.<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_corset_2" "State that you love it." 60 "<<set $scene.love=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_corset_2" 'Say you hate it.' 60 "<<set $scene.love=false>>">>]
</div>/*#
#desc: psychiatrist topic: talk about feelings about wearing corset
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.love>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.love>>
Slightly breathless you talk about how much you love being corseted.<br>
<br>
<<if $player.timebased.tightlacing >= 90>>
"@@.npc_psychiatrist;I can see why! Your figure in that is just... stunning and even if it is a bit of a challenge it is probably somewhat comforting to be so tightly held in fabric and steel... combination posture support and an all day hug!@@"
<<elseif $player.timebased.tightlacing >= 50>>
"@@.npc_psychiatrist;I can see why, it is giving you quite the figure... imagine how amazing you would look if it was laced down the rest of the way!@@"
<<else>>
"@@.npc_psychiatrist;I understand, it's such a unique feeling, constricted, yet supported... though I think you would like it better if you bothered to lace yourself in.@@"
<</if>>
<<else>>
You explain that you dislike how restrictive the corset is.<br>
<br>
<<if $player.timebased.tightlacing >= 90>>
"@@.npc_psychiatrist;Be that as it may... you have to agree that it is worth it! You look positively stunning, I admire your willingness to submit your body to such discipline, even if you haven't learned to fully appreciate it.@@"
<<elseif $player.timebased.tightlacing >= 50>>
"@@.npc_psychiatrist;It may seem like something of a paradox, but have you considered lacing it down the rest of the way? I wonder if your feeling of dissatisfaction is just a projection of your unconscious desire to wear it properly?@@"
<<else>>
"@@.npc_psychiatrist;Restrictive? You haven't even laced it hardly at all! No, I think this is more likely confusion. I bet if you focused and tightened it down until it was flush and snug you'd forget all about the restrictiveness and just be aglow at how amazing your figure had become.@@"
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing collar during session
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<<include "calcCollarType">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> gaze drifts towards your throat.<br>
<br>
<<switch setup.getItemFromType('choker')>>
<<case 'choker_sissy'>>
"@@.npc_psychiatrist;Oh that choker is just too cute! <<if $fetish.sissy>>SISSI! How lovely! Is that how you think of yourself? or are you wearing it for another reason?<<else>>So very lovely and pink, just like you!<</if>>@@"
<<default>>
<<switch $scene.wornCollarType>>
<<case "ring">>
<<if setup.getTotalValue("submission") >= 15>>
You explain that, while you are not seeking an owner, it is only right for a submissive like you to announce that you are submissive by being always prepared to be leashed.
<<else>>
You state you just like the kinky feel of the collar around your neck.
<</if>>
<br><br>
"@@.npc_psychiatrist;Very nice, I think it is good that you are continuing to explore these interests of yours. Being submissive seems to come quite naturally to you so it only makes sense you would enjoy wearing a collar.@@"
<<case "collar">>
You explain that you like the feel of a collar around your throat.<br>
<br>
"@@.npc_psychiatrist;Very understandable. That sensation of control<<if $player.flags.collar.owner == "">>... though perhaps you may consider taking it a step further and submitting yourself to being owned...<<else>>, the symbol of being owned...<</if>>@@"
<<case "choker">>
"@@.npc_psychiatrist;That choker is quite gorgeous. I love how it highlights your lovely throat.@@"
<<case "necklace">>
"@@.npc_psychiatrist;That is quite the lovely necklace... though wouldn't you be more comfortable with a collar?@@"
<<case "tie">>
"@@.npc_psychiatrist;An interesting choice of attire. I prefer to think of my sessions as being a bit more informal, but if wearing a tie makes you feel more professional and in control that's fine too.@@"
<<default>>
ERROR: unknown collar type: <<=$scene.wornCollarType>>
<</switch>>
<</switch>>
<br><br>
<<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $player.flags.collar.owner != "">>
[<<moveTo "event_psychiatrist_session_wearing_collar_2_owned" 'Explain that it helps to symbolize the fact that you are an owned submissive.' 60 "<<set $scene.proud=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_collar_2_owned" 'Note with bitterness that the collar marks you as being "owned."' 60 "<<set $scene.proud=false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_session_wearing_collar_2_unowned" "Note with regret that it is as yet merely a fashion statement, though you would very much like to someday be properly collared and owned." 60 "<<set $scene.proud=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_collar_2_unowned" 'State that it is just a fashion statement that you chose for yourself.' 60 "<<set $scene.proud=false>>">>]
<</if>>
<<else>>
You thank her for the compliment, but cannot think of much else to say.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
</div>/*#
#desc: psychiatrist topic: talk about wearing a collar while being unowned
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.proud>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.proud>>
You explain that, as much as you enjoy wearing this collar, you really wish it had been given to you as part of a "proper" collaring ceremony.<br>
<br>
"@@.npc_psychiatrist;I see, I see. Well, I think you are definitely on the right track. Oh, I almost want to claim you for my own right now, so I am certain that you will find an owner who will be just delighted to have you as their <<if setup.isItemEquipped("choker_sissy")>><<if $fetish.sissy>>SISSI <<else>>cute <</if>><</if>>slave.@@"<br>
<br>
<<printThought "I hope she's right...">>
<<else>>
<<switch setup.getItemFromType('choker')>>
<<case 'choker_sissy'>>
<<if $fetish.sissy>>
<<if setup.getTotalValue("feminization") >= 15>>
You explain that, of course, you are a sissy, so the choker is just the perfect accessory to reinforce and announce that.
<<else>>
You blush at her comment, unable to form a response.
<</if>>
<br><br>
"@@.npc_psychiatrist;Oh you are just the cutest thing! Sissy is right, that really is the perfect neck adornment for you.@@"
<<else>>
<<if setup.getTotalValue("feminization") >= 15>>
You explain that, of course, you are a cute girl, so the choker is just the perfect accessory to reinforce that.
<<else>>
You blush at her comment, unable to form a response.
<</if>>
<br><br>
"@@.npc_psychiatrist;Oh you are just the cutest thing! So sweet and pink and cute, that really is the perfect neck adornment for you.@@"
<</if>>
<<default>>
<<switch $scene.wornCollarType>>
<<case "ring">>
<<if setup.getTotalValue("submission") >= 15>>
You explain that, while you are not seeking an owner, it is only right for a submissive like you to announce that fact and make yourself ready for a leash or the like.
<<else>>
You state you just like the kinky feel of the collar around your neck.
<</if>>
<br><br>
"@@.npc_psychiatrist;Very nice, I think it is good that you are continuing to explore these interests of yours. Being submissive seems to come quite naturally to you so it only makes sense you would enjoy wearing a collar.@@"
<<case "collar">>
You explain that you like the feel of a collar around your throat.<br>
<br>
"@@.npc_psychiatrist;Very understandable. That sensation of control... though perhaps you may consider taking it a step further and submitting yourself to being owned...@@"
<<default>>
ERROR: unexpected collar type: <<=$scene.wornCollarType>>
<</switch>>
<</switch>>
<</if>>
<br><br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing a collar whilst owned
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.proud>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.proud>>
You explain with pride that you wear the collar to show off that you are an owned slave.<br>
<br>
"@@.npc_psychiatrist;Oh, I am so happy for you! Tell me about your owner!@@"<br>
<br>
<<switch $player.flags.collar.owner>>
<<case 'npc_manager'>>
You note with with excitement that, after being your <<=setup.getNpcName('npc_manager', 'title')>> for so long <<=setup.getNpcName('npc_manager', 'formal')>>, is now, officially, your owner, and you her slave.<br>
<br>
"@@.npc_psychiatrist;Such a delight! I am sure <<=setup.getNpcName('npc_manager', 'first')>> is so very proud — knowing her she could hardly be anything but, given her exacting standards... yes, if she collared you it means that your training has gone phenomenally. A fact I too know well!@@"
<<case 'npc_technician'>>
You grin and explain that you talked <<=setup.getNpcName('npc_technician', 'formal')>> into collaring you.<br>
<br>
"@@.npc_psychiatrist;What fun! And isn't she a switch? Oh, she'll have all sorts of interesting ideas for how to take care of you, given her experience on either end of the leash...@@"
<<case 'npc_landlord'>>
You explain that, after a bit of work, you managed to convince <<=setup.getNpcName('npc_landlord', 'first')>> to fit you with a personalised collar.<br>
<br>
"@@.npc_psychiatrist;I was going to say... such beautiful craftsmanship, and you have talked about what a lovely <<man npc_landlord>> <<he npc_landlord>> is, I think you have made a wonderful choice.@@"
<<case 'npc_admin'>>
You grin and explain that you talked <<=setup.getNpcName('npc_admin', 'first')>> into collaring you.<br>
<br>
"@@.npc_psychiatrist;My, my, someone was looking for a strong <<master npc_admin>>! But a kind, one as well, I see wonderful things for the both of you.@@"
<<case 'company'>>
You proudly note that you are now "officially" owned by the company.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> hesitates for a moment before responding, her tone sounding somewhat forced. "@@.npc_psychiatrist;I see, well... that should certainly prove your devotion to your job, and perhaps provide additional motivation to perform at your best?@@"
<<default>>
ERROR: unknown owner!
<</switch>>
<<else>>
You explain that the collar marks you as an owned slave.<br>
<br>
"@@.npc_psychiatrist;Hmm... it sounds like you are not totally pleased with that arrangement. Why is that? Perhaps you could you talk more about your owner?@@"<br>
<br>
<<switch $player.flags.collar.owner>>
<<case 'npc_manager'>>
You explain that you are questioning <<=setup.getNpcName('npc_manager', 'formal')>> collaring you.<br>
<br>
"@@.npc_psychiatrist;I see... well, despite her stern exterior, <<=setup.getNpcName('npc_manager', 'formal')>> prefers slaves that serve enthusiastically, perhaps she is not your match? You should raise the issue with her.@@"
<<case 'npc_technician'>>
You explain that you convinced <<=setup.getNpcName('npc_technician', 'first')>> to collar you... but now you are not so sure.<br>
<br>
"@@.npc_psychiatrist;I see... well given her switchy nature, I am sure she would be willing to negotiate something else, hmm?@@"
<<case 'npc_admin'>>
You explain that you convinced your friend <<=setup.getNpcName('npc_admin', 'first')>> to collar you... but now you are not so sure.<br>
<br>
"@@.npc_psychiatrist;I see... have you talked to <<him npc_admin>> about it? <<He npc_admin>> does not strike me as the sort to want to own someone against their will.@@"
<<case 'npc_landlord'>>
You explain that you spent quite a bit of effort to convince <<=setup.getNpcName('npc_landlord', 'first')>> to collar you... but now you are not so sure.<br>
<br>
"@@.npc_psychiatrist;I see... well you really should have thought about that before making such a commitment... but <<he npc_landlord>> is an honourable <<man npc_landlord>>, perhaps if you discussed things with <<him npc_landlord>>?@@"
<<case 'company'>>
You explain that you are "owned" by the company itself.<br>
<br>
"@@.npc_psychiatrist;That is quite the challenge... but perhaps <<=setup.getNpcName('npc_manager', 'formal')>> might have a solution?@@"
<<default>>
ERROR: unknown owner!
<</switch>>
<br><br>
You thank her for the advice and say you'll think about it.<br>
<br>
<<set $scene.contentName = "Changing owners">>
<<include "futureContentBoilerplate">>
<</if>>
<br><br>
"@@.npc_psychiatrist;So! What else has been happening that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing makeup
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> eyes your makeup.<br>
<br>
<<switch setup.getCurrentMakeup()>>
<<case 'nomakeupmakeup'>>
"@@.npc_psychiatrist;I quite like your makeup, by the way. It's subtle, but really brings out your natural beauty. What do you think of it, have you considered using more? I think a bit more sculpting could have your face looking even more feminine, and oh so striking.@@"
<<case 'normalmakeup'>>
"@@.npc_psychiatrist;You are looking quite beautiful today, isn't it great how makeup can transform and enhance one's appearance?@@"
<<case 'ultimatebimbo'>>
"@@.npc_psychiatrist;Wow, you really put it on with a trowel! I'm not objecting, mind, but it really does make you look like a bimbo slut, how do you feel about that?@@"
<<case 'expertmakeup'>>
"@@.npc_psychiatrist;Such a stunning, eye-catching style, very fashionable!@@"
<<case 'camgirl'>>
"@@.npc_psychiatrist;Such a bold stile, quite striking!@@"
<<case 'egirl'>>
"@@.npc_psychiatrist;Such a throwback style, very online!@@"
<<case 'moviestar'>>
"@@.npc_psychiatrist;Your makeup is amazing! You have to give me tips! You look like a moviestar or something!@@"
<<case 'sissy_doll'>>
"@@.npc_psychiatrist;Your makeup is so adorably cute! You look like a lovely doll!@@"
<<case 'qtpie'>>
"@@.npc_psychiatrist;Your makeup is so cute! You look adorable!@@"
<<default>>
ERROR: unknown makeup template! <<=setup.getCurrentMakeup()>>
<</switch>>
<br><br>
<<if $player.makeup.template == "">>
"@@.npc_psychiatrist;Hmm, have you had it permanently applied? Very nice...@@"
<<else>>
<<switch setup.getMakeupMess()>>
<<case 3>>
"@@.npc_psychiatrist;At least... that's what I'd say if it wasn't just totally ruined, you're a mess!@@"
<<case 2>>
"@@.npc_psychiatrist;Well, in theory — you really need to take better care of your makeup!@@"
<<case 1>>
"@@.npc_psychiatrist;If only you took a little better care of it you'd look perfect!@@"
<<case 0>>
"@@.npc_psychiatrist;And you've been keeping it touched up, good girl!@@"
<<default>>
ERROR, unexpected makeup mess: <<=setup.getMakeupMess()>>
<</switch>>
<</if>>
<br><br>
"@@.npc_psychiatrist;So, dish, how are you liking this look?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_makeup_2" 'Say you enjoy wearing makeup.' 60 "<<set $scene.like=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_makeup_2" "Say you don't like makeup." 60 "<<set $scene.like=false>>">>]
</div>/*#
#desc: psychiatrist topic: talk about wearing makeup
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.makeupMess = setup.getMakeupMess()>>
<<if $scene.like>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.like>>
<<switch setup.getCurrentMakeup()>>
<<case 'nomakeupmakeup'>>
You note that you quite enjoy the subtle "touch up" effect of your makeup.
<<case 'normalmakeup'>>
You explain that you really like how your makeup works to bring out and highlight your femininity and make you feel like more of a girl.
<<case 'ultimatebimbo'>>
You explain how you love the way your heavy makeup serves to highlight your inner bimbo.
<<case 'expertmakeup'>>
You explain how you love the way your the makeup helps bring out your personality.
<<case 'camgirl' 'egirl' 'qtpie'>>
You explain how you love the way the heavy makeup makes you feel more bold and somehow more "yourself."
<<case 'moviestar'>>
You explain that you love how classy and sexy you feel in your fancy makeup.
<<case 'sissy_doll'>>
You that you've love how cute your look with this makeup, that it makes you feel like the ultimate sweet girly girl.
<<default>>
ERROR: unknown makeup template: <<=setup.getCurrentMakeup()>>
<</switch>>
<br><br>
"@@.npc_psychiatrist;Indeed, indeed, makeup is such a wonderful tool to use to display the appearance that we want, rather than that which we were given by nature. I am glad you are taking to it so well and I hope you continue to explore and find that perfect style to show off the "real" you!@@"<br>
<br>
<<if setup.getMakeupMess() > 0>>
"@@.npc_psychiatrist;I will note, however that, well... you really ought to keep better care of things! As much as you may be happy with it you'd be even more so if you kept things in better shape, and you'd look all the prettier to boot!@@"
<<elseif $player.makeup.template == "">>
"@@.npc_psychiatrist;Getting it permanently applied... well, it's quite the step, but a prudent one that will save so much time and worry in the long run, good job!@@"
<<else>>
"@@.npc_psychiatrist;You really do look like something out of a magazine, the dedication, the expertise!@@" She makes a chef's kiss motion. "@@.npc_psychiatrist;All I can say is, keep it up, girl!@@"
<</if>>
<<else>>
<<switch setup.getCurrentMakeup()>>
<<case 'nomakeupmakeup'>>
You state that you don't like your current makeup, explaining that it's kind of silly to go through so much work in an effort to look "natural." <br>
<br>
"@@.npc_psychiatrist;It's true, but then again, nature can always be improved on, hmm? If you find it such a waste, why not go a bit further? More visible makeup would really make your beauty pop, plus, well, there's no denying that applying that extra effort will attract extra attention.@@"
<<case 'normalmakeup'>>
You state that you don't like wearing makeup to look like a "girl." <br>
<br>
"@@.npc_psychiatrist;But you make such a lovely lady! Ah well, if it isn't working, it isn't working. Might I suggest you shake things up? Either try scaling back to a more "natural" no-makeup makeup, or go hog wild and try for something less... pedestrian?@@"<br>
<br>
<<printThought "Where's the option to just... NOT wear makeup?">>
<<case 'ultimatebimbo'>>
You state that you don't like looking like a "bimbo slut." <br>
<br>
"@@.npc_psychiatrist;Hmm, are you sure that's it? I mean, that look is so... natural for you, maybe it's that you feel that you don't deserve it? That you need to "earn" your battle paint, as it were? I mean, you chose to doll yourself up like this so there HAS to be a reason...@@"<br>
<br>
<<printThought "That can't be right, but, then again, I did paint myself up like a slut, maybe that does mean I want to be one?">>
<<case 'moviestar'>>
You state you don't enjoy your heavy, intricate makeup.<br>
<br>
"@@.npc_psychiatrist;I understand, I mean, I can only imagine how much work it takes to look that fabulous! Maybe dial things back a bit for day to day and save that "extra effort" for special occasions?@@"
<<case 'camgirl' 'egirl' 'qtpie'>>
You state that you don't like the heavy makeup.<br>
<br>
"@@.npc_psychiatrist;I understand, it can feel a bit grimy, and mask-like, but that's the beauty of makeup: you an always wash it off and start anew! Find the style the suits you!@@"
<<case 'expertmakeup'>>
You state that you aren't a fan of the way the striking makeup draws attention to yourself.<br>
<br>
"@@.npc_psychiatrist;Strange, because it seems like the style was custom-crafted for you... I would advise you to think about it more. It could be that your discomfort is not the makeup, but the pressure of living up to it.@@"
<<case 'sissy_doll'>>
You state that you dislike the way the makeup has you looking like a human doll.<br>
<br>
"@@.npc_psychiatrist;I can understand that... though you do make quite the lovely doll! Maybe you just need to give it more time, have you tried embracing the feeling of being a sexy toy? It can be quite the fun time!@@"
<<default>>
ERROR: unknown makeup template: <<=setup.getCurrentMakeup()>>
<</switch>>
<br><br>
<<if setup.getMakeupMess() > 0>>
"@@.npc_psychiatrist;Of course, the other problem could be that you aren't taking care of your makeup properly. Your makeup is how you are presenting yourself to the world, if you let it get messy well... that reflects doubly back, I think you would feel much better if you took the extra effort to keep things in tip-top condition.@@"
<<elseif $player.makeup.template == "">>
"@@.npc_psychiatrist;Given that it is permanently applied, you could always try painting over it. Or just head to the salon for something that fits you better.@@"
<<else>>
"@@.npc_psychiatrist;I wonder, maybe it's just the effort to keep your makeup perfect that is bothering you? I mean, it's gorgeous, of course, but if it's keeping you from enjoying yourself, well... sometimes you need to be willing to get a little messy, right?@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about your hairstyle
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> eyes your hair.<br>
<br>
<<switch $player.hair.style>>
<<case 'unkempt'>>
"@@.npc_psychiatrist;Hmm, I realise that the "messy" look is in in some places but, well... it really does you no favours.@@"
<<case 'combed'>>
"@@.npc_psychiatrist;Your hair is so short and... dull. It's so easy to change it up, why not try a nice set of flowing locks? I mean they would frame your face so nicely...@@"
<<case 'pixiecut' 'pixiebun'>>
"@@.npc_psychiatrist;How cute! You really look adorable, a cute little fairy!@@"
<<case 'bob'>>
"@@.npc_psychiatrist;Ah, a bob and bangs! Such a versatile, fun style!@@"
<<case 'shoulderlength'>>
"@@.npc_psychiatrist;Such nice, flowing locks! It frames your face so well... just lovely!@@"
<<case 'sidecut' 'sidecuttail'>>
"@@.npc_psychiatrist;A sidecut! Very daring, I like it!@@"
<<case 'ponytail'>>
"@@.npc_psychiatrist;What a lovely ponytail, very chic and playful!@@"
<<case 'long_open' 'long_hair2' 'big_braids' 'updo_combed' 'updo_pixie' 'updo_bob'>>
"@@.npc_psychiatrist;Such volume! Your hair is truly gorgeous!@@"
<<case 'pigtails'>>
"@@.npc_psychiatrist;I love your cute handles... I mean, ponytails!@@"
<<default>>
"@@.npc_psychiatrist;What a unique style, I think I like it!@@"
<</switch>>
<br><br>
<<switch $player.hair.color>>
<<case 'brown'>>
"@@.npc_psychiatrist;Have I ever mentioned that you have a very nice, natural hair colour?@@"
<<case 'blonde'>>
"@@.npc_psychiatrist;I love your choice of hair colour, tell me... DO blondes have more fun?@@"
<<case 'black'>>
"@@.npc_psychiatrist;Dark and mysterious... quite a choice.@@"
<<case 'red'>>
"@@.npc_psychiatrist;Ah, another redhead. Isn't it great how it makes you feel so fiery and alive?@@"
<<case 'pink'>>
"@@.npc_psychiatrist;Such a beautiful colour! I know some people are against so-called "unnatural" hair colouring but on you... I mean, who could say no to that cute pink 'do?@@"
<<default>>
<</switch>>
<br><br>
"@@.npc_psychiatrist;Oh, sorry to give so much of my thoughts, that's really kind of secondary. What do YOU think about your current hairstyle?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_hair_2" 'Say you like your hair.' 60 "<<set $scene.like=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_hair_2" "Say you don't like your current hairstyle." 60 "<<set $scene.like=false>>">>]
</div>/*#
#desc: psychiatrist topic: give your thoughts on your hairstyle
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.like>>
<<if !["unkempt", "combed"].includes($player.hair.style)>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<<else>>
<<if ["unkempt", "combed"].includes($player.hair.style)>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<else>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.like>>
You explain that you quite like your current hairstyle.<br>
<br>
<<switch $player.hair.style>>
<<case 'unkempt'>>
"@@.npc_psychiatrist;Well, if you like it. I mean, it is kind of playful, almost gives me the urge to reach out and tussle it a bit... still, from a professional perspective you might consider something a bit more styled.@@"
<<case 'combed'>>
"@@.npc_psychiatrist;Huh, I'm really surprised at that, I mean I suppose it's fairly low maintenance but... well... I just think you would look so much more natural with something a bit longer...@@"
<<case 'pixiecut' 'pixiebun'>>
"@@.npc_psychiatrist;Of course you do, I mean who wouldn't love that cuteness?@@"
<<case 'bob'>>
"@@.npc_psychiatrist;Quite so, as I said, it's such a classic style.@@"
<<case 'shoulderlength'>>
"@@.npc_psychiatrist;Lovely, lovely — and your hair is lovely as well!@@"
<<case 'long_open' 'long_hair2' 'big_braids' 'updo_combed' 'updo_pixie' 'updo_bob'>>
"@@.npc_psychiatrist;So nice to hear, and a good thing, too, as I imagine so much hair is quite the commitment!@@"
<<case 'pigtails'>>
"@@.npc_psychiatrist;So lovely to hear — especially with a style so functional!@@"
<<default>>
"@@.npc_psychiatrist;That's great, I'm glad you found something you like.@@"
<</switch>>
<<else>>
You state that, actually, you don't really like your hair that much.<br>
<br>
"@@.npc_psychiatrist;Hmm, well, fortunately that is easy to address. Just a few minutes at the salon and you could have whatever you wanted! Flowing blonde locks, cute pixie dreamgirl, a classic natural brown bob, whatever you wanted!@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought "Maybe she's right and I should experiment with some more feminine styles?">>
<<else>>
<<printThought "Wait... all of those sound like female hairstyles?">>
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Well, I'm glad we had this little chat, I mean hair is such a simple thing and yet it can say so much. I mean all the stereotypes about blondes and brunettes, the things you can wordlessly say with just a flick of your hair... there's really no excuse not to adopt a style that really represents who you are!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about goth style
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks over your outfit.<br>
<br>
"@@.npc_psychiatrist;This new goth style... well, to tell you the truth, it surprises me. I always pictured you in <<if $fetish.sissy>>sissy <</if>>pink, but this really works for you, what do you think?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_goth_2" 'You prefer the goth style.' 60 "<<set $scene.style='goth'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_goth_2" "You think you would prefer a pink<<if $fetish.sissy>>, sissy<</if>> style." 60 "<<set $scene.style='sissy'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_goth_2" "You'd love to combine the two<<if $fetish.sissy>> as a goth sissy<</if>>." 60 "<<set $scene.style='both'>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_goth_2" "You aren't really a fan of either style." 60 "<<set $scene.style='neither'>>">>]<br>
</div>/*#
#desc: psychiatrist topic: thoughts on goth style
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'goth'>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you prefer this darker "goth" style over something more pink and feminine.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Well, as I said, it does look good on you, and, well, pink can be a bit much for some people... that said, you should know that you can look feminine, or not, I suppose, in any colour! It is all about the style and how you wear it.@@"
<<case 'sissy'>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you think you prefer a more feminine and pink style.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Yes, of course, that would be the more natural choice for <<if $fetish.sissy>>a sissy<<else>>one<</if>> like yourself. Still, it is good to experiment and try new things — and you do make for a lovely gothic lady!@@"
<<case 'both'>>
You say that you like both tradition goth and brighter, pinker styles — you only wish you could combine them!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Oh but you can! Layer on layer of <<if $fetish.sissy>>sissy<<else>>cute<</if>> pink frills, all in a classic victorian style... oh you would make SUCH the perfect princess!@@"
<<case 'neither'>>
You explain that you dislike both your current goth, and a more pink<<if $fetish.sissy>> sissy<</if>> style.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> "@@.npc_psychiatrist;I am so sorry to hear that, because you look fantastic in both... well, one must figure out style on their own terms, but I caution not to reject anything out of hand, you never know what you might enjoy until you experiment... or see how much you enjoy other's reactions.@@"
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about sissy style
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks over your outfit.<br>
<br>
"@@.npc_psychiatrist;This style you have going on... so pink and feminine... oh I could just eat you up, you are so cute and lovely! What about you? How does it make you feel?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_sissy_2" "You love dressing in <<if $fetish.sissy>>sissy<<else>>girly<</if>> pink." 60 "<<set $scene.like=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_sissy_2" "You don't like dressing in <<if $fetish.sissy>>sissy<<else>>girly<</if>> pink." 60 "<<set $scene.like=false>>">>]
</div>/*#
#desc: psychiatrist topic: thoughts on sissy style
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.like>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.like>>
You smile and reply that you
<<if setup.getTotalValue("feminization") > 10>>
<<if setup.getTotalValue("feminization") > 15>>
totally adore
<<else>>
enjoy
<</if>>
<<else>>
<<if setup.getTotalValue("feminization") > 5>>
are starting to enjoy
<<else>>
actually kind of like
<</if>>
<</if>>
dressing like a pink <<if $fetish.sissy>>sissy<<else>>girl<</if>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Of course you do! I mean, how could you not, when you look so perfect and cute and adorable? Yes, I see no problems if you dressed like this every day... in fact, I'd encourage it!@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<if setup.getTotalValue("feminization") > 15>>
<<printThought "Every day? Mmm, that would be such a perfect <<if $fetish.sissy>>sissy <</if>>dream!">>
<<else>>
<<printThought "Every day? I don't know if I could handle that... or maybe I could?">>
<</if>>
<<else>>
<<if setup.getTotalValue("feminization") > 5>>
<<printThought "I don't think I could handle going out in public like this, but it's fun in private though...">>
<<else>>
<<printThought "No... I couldn't do something like that, going out in public like this? Impossible! It's fun in private though...">>
<</if>>
<</if>>
<<else>>
You smile and reply that you dislike dressing in such <<if $fetish.sissy>>sissy<<else>>feminine<</if>> pink frills.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns. "@@.npc_psychiatrist;That is too bad... because you look so perfectly adorably cute! Like, if I was in charge of your wardrobe I'd be tempted to dress you like that every day!@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<if setup.getTotalValue("feminization") > 15>>
<<printThought "Hmm... I think she's right, I do look really, really cute...">>
<<else>>
<<printThought "Maybe she's right?... I do look pretty cute...">>
<</if>>
<<else>>
<<if setup.getTotalValue("feminization") > 5>>
<<printThought "What is she talking about? I don't want to look cute, do I?">>
<<else>>
<<printThought "No... I don't want to be cute! But, then... why did I put this on?">>
<</if>>
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about bimbo style
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks over your outfit.<br>
<br>
"@@.npc_psychiatrist;My, my isn't someone showing off. You hitting the club this evening? Because you are looking like one sexy bimbo slut!@@" She grins wider and licks her lips, "@@.npc_psychiatrist;Sorry, got a bit distracted by the hot piece of ass in front of me... how do YOU feel about dressing this way?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_bimbo_2" "You love dressing like a bimbo slut!" 60 "<<set $scene.like=true>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;Like, no way could you deny your love for looking, and being, a super-slutty bimbo!@@]
<<else>>
[<<moveTo "event_psychiatrist_session_bimbo_2" "You don't like dressing like a slutty bimbo." 60 "<<set $scene.like=true>>">>]<br>
<</if>>
</div>/*#
#desc: psychiatrist topic: thoughts on bimbo style
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.like>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'very' $SEEN_FRIEND>>
<<if setup.getTotalValue("bimbofication") <= 10>>
<<set _humil = 15-setup.getTotalValue("bimbofication")>>
<<applyExperience 'humiliation' _humil 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.like>>
<<if setup.getTotalValue("bimbofication") > 10>>
You smile wide and remark that, you, like
<<if setup.getTotalValue("bimbofication") > 15>>
LURVE being a sexy bimbo slut!
<<else>>
love acting like a sexy bimbo slut!
<</if>>
<<else>>
You blush, softly replying that
<<if setup.getTotalValue("bimbofication") > 5>>
you actually like dressing like this...
<<else>>
you kind of like dressing like a slut...
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Of course you do!@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with a wide smile. "@@.npc_psychiatrist;You look just incredibly hot, you're even making me a bit jealous! I encourage you to keep dressing like that... and even more! An outfit like that, well... it can lead you into all sorts of fun situations!@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
You grin and nod,
<<if setup.getTotalValue("bimbofication") > 15>>
knowing full well
<<else>>
already imagining
<</if>>
what fun you could get up to with this outfit... or after it was ripped off!
<<else>>
You blush,
<<if setup.getTotalValue("bimbofication") > 5>>
even as you can't stop imagining what would happen if you went out dressed like this...
<<else>>
horrified by the thought of going out like this... yet unable to stop imagining the same...
<</if>>
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 10>>
You reply that, like, actually you don't think you like this outfit?
<<else>>
You loudly insist that
<<if setup.getTotalValue("bimbofication") > 5>>
don't like
<<else>>
you hate
<</if>>
dressing like this
<</if>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems to think for a moment. @@.npc_psychiatrist;Hmm. That is quite a surprise to hear, because you look so hot in it... don't you like looking hot? Doesn't it make you feel hot, as well? You should remember what we've talked about in terms of expanding your horizons. An outfit like this could be the perfect thing for that... you should really consider if it's the outfit you don't like, or that you're just fearfully lashing out at all the fun ways you could enjoy yourself in it.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about your hood
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks at your mask.<br>
<br>
"@@.npc_psychiatrist;Interesting, wearing a mask to therapy, covering your face... are you trying to hide? To be someone else?@@" She gives you a moment to think. "@@.npc_psychiatrist;Some schools of thought would classify this as a problem — hiding yourself from your therapist being a sign of standoffishness. Myself, however... sometimes the masks we wear are more our true selves than what was foisted upon us by life. The key, as always, is one of choice. Being forced into a mask, or feeling like you must put up a facade is constraining and stressful, but when it is, instead, in service of your true self? Well, then it can be quite beautiful indeed..@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about not wearing chastity during session (after addicted)
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("cage")>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("cage")>>
You are about to bring up how you aren't wearing chastity... only to realise that, though you started the session that way, you are very much locked up now.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<<elseif $player.flags.selfcontrol>>
You mention that you're once again not wearing chastity to the session.<br>
<br>
"@@.npc_psychiatrist;I see, I see... and how does that feel? Have you been enjoying your experiments going about unprotected?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_2_repeat" "Yes, you enjoy having the option to forgo chastity." 60 "<<set $scene.unchaste=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_2_repeat" 'You are starting to dislike this "freedom".' 60 "<<set $scene.unchaste=false>>">>]
<<else>>
You bring up that you decided to remove your chastity device for the session.<br>
<br>
"@@.npc_psychiatrist;I see. A very interesting choice, though I am touched by the gesture of trust. Certainly I would never do anything untoward, but for you to go fully shields down in my presence, well... they say therapy is built on trust, so this seems to me a great indicator of past, and hopefully future success.@@"<br>
<br>
You blush, your depraved mind unable to resist imagining how it would feel if <<=setup.getNpcName("npc_psychiatrist","formal")>> were to decide to ravage you...<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
<<printThought "Mmm, I'd love that. I'm such a slut...">>
<<else>>
<<printThought "I'm becoming such a slut, I think I'd enjoy it.">>
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
<<printThought "I'm glad she wouldn't do that, I wouldn't like that at all... right?">>
<<else>>
<<printThought "I'm glad she wouldn't do that, I wouldn't like that at all!">>
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;So, tell me, after spending so much time secured... how do you feel being unlocked... vulnerable?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_2" "You're intrigued, and wish you had the courage to experiment further." 60 "<<set $scene.unchaste=true>><<set $scene.unlock=false>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_2" 'Say you hate it.' 60 "<<set $scene.unchaste=false>><<set $scene.unlock=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: how you feel about not wearing chastity during session
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.unchaste>>
<<applyStress 5>>
<<else>>
<<applyStress 3>>
<<if $scene.unlock>>
<<wearItem $scene.cage>>
<<manipulateItem $scene.cage "lock" true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.unchaste>>
You explain that even though you're a bit nervous even now, you wish you had the courage to go out without first locking yourself in chastity, just for the option...<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods. "@@.npc_psychiatrist;I have heard this before. Learning to embrace chastity in the first place can be a challenge, and once fully accepted, well... it becomes hard to imagine one's life without. Some of my patients refer to it as an addiction, though I personally disagree with that terminology I have developed some techniques for helping a subject re-learn how to comfortably go about without chastity, if you would like to try?@@"<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_3" "You would like to try." 60>>] <<hint $options "Pushing past your submissive addiction to bondage will require an expenditure of willpower.">><br>
<<else>>
[@@.link_locked;You lack the mental reserves to try to resist your addiction to submissive bondage.@@]<br>
<</if>>
<<if $scene.unlock>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_abort" "You changed your mind, you want to be locked back up." 60>>]
<<else>>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
<<else>>
You explain that even this brief experience has you feeling nervous and exposed.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods. "@@.npc_psychiatrist;The feelings you describe are perfectly normal, and perfectly healthy. Learning to embrace chastity in the first place can be a challenge, and once fully accepted, well... it becomes hard to imagine one's life without. Some of my patients refer to it as an addiction, though I personally disagree with that terminology I have developed some techniques for a subject re-learn how to comfortably go about without chastity. If such become of interest to you in the future, just appear before me like this again and we can talk about it further.@@"<br>
<br>
<<if $scene.unlock>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> takes a moment to re-lock your chastity device before continuing the session.<br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
</div>/*#
#desc: psychiatrist topic: how you feel about not wearing chastity during session
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You nod that you would like to learn how to go about without chastity.<br>
<br>
"@@.npc_psychiatrist;Very good. As wonderful as chastity is one should not be burdened by it, and flexibility is important skill to develop.@@" She adjusts and leans forward in her chair. "@@.npc_psychiatrist;So, there are two axes about which chastity can become a fixation. First, is for how it protects you from unwanted contact. A stern shield around your most private, personal areas. Addressing this can involve unlearning maladaptive distrustful behaviours, and investing in ways to make yourself feel safe in other ways — self defence and the like... in your case, however, well... I surmise that the compulsion is mostly on the other axis: you fear what might happen if you are granted unfettered acess to yourself, that the potential for pleasure could cause you to lose control and, thus, you instinctually prefer prison.@@"<br>
<br>
She reaches into a desk drawer and comes up with
<<if $player.body_ref.penis && $player.body_ref.vagina>>
a dildo in one hand and a fancy onahole in the other.
<<elseif $player.body_ref.penis>>
a fancy onahole.
<<elseif $player.body_ref.vagina>>
a large dildo vibrator.
<<else>>
ERROR: unexpected no genitals
<</if>>
"@@.npc_psychiatrist;Since your fear is rooted in the idea of loss of control, we are going to do an exercise to help you prove that you are stronger than you think. <<if setup.checkNaked()>>Since you are already naked, we may proceed directly<<else>>If you would please remove your clothing, it will only get in the way for this procedure.<</if>>@@"<br>
<br>
<<if setup.checkNaked()>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_4" "Continue." 60 "<<set $scene.abort=false>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_4" "Strip." 60 "<<set $scene.abort=false>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_4" "Actually... you're happy with your current reaction to chastity." 60 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: psychiatrist topic: preperations for orgasm denial
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeClothes = !$scene.abort && !setup.checkNaked()>>
<<if $scene.removeClothes>>
<<useClothSetPush 'chastity_test'>>
<<removeAllClothing>>
<</if>>
<<if $scene.abort && $scene.unlock>>
<<wearItem $scene.cage>>
<<manipulateItem $scene.cage "lock" true>>
<<else>>
<<changeHorny 50>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
Heart beating faster you explain that, actually you changed your mind.<br>
<br>
"@@.npc_psychiatrist;I see.@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> replies with just a hint of disappointment as she puts things back in her desk. "@@.npc_psychiatrist;Well if you change your mind in the future, let me know. I, after all, only want what is best for your mental state.@@"<br>
<br>
<<if $scene.unlock>>
She gives you a few moments to replace your chastity device before helpfully locking it closed and nodding for you to continue on with the session.<br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<<else>>
<<if $scene.removeClothes>>
You're so used to stripping for <<=setup.getNpcName("npc_manager","formal")>> that doing the same for your therapist is scarcely of concern and you efficiently place all of your things in a pile and then return to your seat.
<</if>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> walks over to stand above you with a smile.<br>
<br>
"@@.npc_psychiatrist;Now, today's rehabilitation routine is quite simple — we are going to prove that you have the mental fortitude to resist the manifest temptations of the flesh that exist when one is out of chastity. I am going to give you stimulation far beyond what you would face in normal conditions and you? All you have to do to prove your resolve, to prove that chastity is a choice, rather than a need, well... you just have to resist cumming. Simple, no?@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> grins as she kneels down
<<if $player.body_ref.penis && $player.body_ref.vagina>>
first sliding the large dildo into your <<getWordVagina>>, before sealing your <<getWordMyPenis>> within the onahole.<br>
<br>
You're already wet and hard and the feeling of the dual sex toys sliding in and over you has your heart thumping with excitement before she has even touched the power switch.
<<elseif $player.body_ref.penis>>
and seals your <<getWordMyPenis>> within the onahole.<br>
<br>
The feel of the textured device sliding over you has you hard as a rock, and she hasn't even yet touched the power switch.
<<elseif $player.body_ref.vagina>>
and slides the large dildo into your <<getWordVagina>>.<br>
<br>
You're already wet and the textured feeling of the fancy vibrator sliding into you has your heart thumping with excitement, and the vibrations haven't even started yet.
<<else>>
ERROR: unexpected no genitals
<</if>>
<br><br>
"@@.npc_psychiatrist;I can see from the look on your face that you are loving this, and that's good. Enjoying your body is so very important, but, remember, the goal of today's exercise is to prove your self control and that means that, no matter how good it feels. And I promise I will make it feel very, VERY good.@@" She leans in to tease one of your nipples with her tongue. "@@.npc_psychiatrist;No matter how much you want to, you need to resist the urge to cum... if you can't manage that, well... we will be left with the conclusion that you do need chastity to keep you under control.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_5" "Nod, you're ready." 60 "<<set $scene.continue=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_5" "Actually... you changed your mind, you'd rather stick with your chastity situation." 60 "<<set $scene.continue=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: orgasm denial torture
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.continue>>
<<changeHorny 50>>
<<else>>
<<if $scene.removeClothes>>
<<useClothSetPop 'chastity_test'>>
<</if>>
<<if $scene.unlock>>
<<wearItem $scene.cage>>
<<manipulateItem $scene.cage "lock" true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.continue>>
You nod and <<=setup.getNpcName("npc_psychiatrist","formal")>> grins. "@@.npc_psychiatrist;Let us commence! Remember — no orgasm.@@"<br>
<br>
You gasp as
<<if $player.body_ref.penis && $player.body_ref.vagina>>
the two devices roar to life — stroking and thrusting and vibrating as you
<<elseif $player.body_ref.penis>>
the onahole begins to stroke and vibrate. You moan and
<<elseif $player.body_ref.vagina>>
she slides the large dildo into your <<getWordVagina>>.<br>
<br>
You're already wet, and the textured feeling of the fancy vibrator sliding into you has your heart thumping with excitement, and the vibrations haven't even started yet. You being to
<<else>>
ERROR: unexpected no genitals
<</if>>
squirm in your seat, your arousal rocking up in an instant as you try to resist your body's urge to climax.<br>
<br>
"@@.npc_psychiatrist;You like that, don't you? But you're going to be a good <<=setup.getBoyGirl($npc_psychiatrist)>>, right?@@"<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_6" "Nod and focus on your breathing." 60>>] <<hint $options "Controlling yourself will require an expenditure of willpower.">><br>
<<else>>
[@@.link_locked;This stimulation is too much, you can't resist the urge to cum.@@]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_fail" "Nope... you're going to cum!" 60>>]
<<else>>
The prospect of trying NOT to cum once the vibrations starts is too much and you tell <<=setup.getNpcName("npc_psychiatrist","formal")>> that you'd rather stick with chastity.<br>
<br>
She chuckles. "@@.npc_psychiatrist;Very well — in any case, you have learned something about yourself. Perhaps you might take this forward and get a permanent keyholder, remove any possible worry about inadvertent or traumatic freedom, hmm?@@"<br>
<br>
She collects her things <<if $scene.unlock>>, locks your chastity device back where it belongs, <</if>>and waits for you to <<if $scene.removeClothes>>replace your clothes and<</if>> settle back into your seat to continue the session.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
</div>/*#
#desc: psychiatrist topic: orgasm denial torture - nipple clamps
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 1>>
<<changeHorny 20>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You shudder and nod
<<if $player.body_ref.penis && $player.body_ref.vagina>>
as the onahole pumps and sucks and <<=setup.getNpcName("npc_psychiatrist","formal")>> works the vibrating dildo in and out of your <<getWordVagina>>.
<<elseif $player.body_ref.penis>>
as the onahole pumps and sucks with mind-blowing intensity.
<<elseif $player.body_ref.vagina>>
as <<=setup.getNpcName("npc_psychiatrist","formal")>> works the vibrating dildo in and out of your <<getWordVagina>>.
<<else>>
ERROR: unexpected no genitals
<</if>>
<br><br>
"@@.npc_psychiatrist;Mmm, you're doing so well, but I think you can handle more, hmm? You don't even want to cum, you wear your chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>> as a fashion statement — you have plenty of control... and you're going to prove it, right?@@"<br>
<br>
As she talks she turns the stimulation up even higher. You start panting with need, looking up at her in desperation as she brushes your cheek and smiles. "@@.npc_psychiatrist;You're doing so well, mind over matter, mmm? Here, how about a little extra...@@"<br>
<br>
With what you can only interpret as an evil grin <<=setup.getNpcName("npc_psychiatrist","formal")>> produces a pair of vibrating nipple clamps; clipping them into place and setting them to what feels like their roaring maximum to compound what's already going on between your thighs.<br>
<br>
"@@.npc_psychiatrist;You look so flush... are you, perhaps distracted? But you can endure, right? After all, if you cum, this all ends... and you don't want that, do you?@@"<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_7" "She's right, you don't want to cum..." 60>>] <<hint $options "Controlling yourself will require an expenditure of willpower.">><br>
<<else>>
[@@.link_locked;This stimulation is too much, you can't resist the urge to cum.@@]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_fail" "Nope... you're going to cum!" 60>>]
</div>/*#
#desc: psychiatrist topic: orgasm denial torture - more vibration
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 1>>
<<changeHorny 20>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You would have sworn everything was already at max, but somehow the vibrations get even
<<if $player.body_ref.penis && $player.body_ref.vagina>>
stronger, the onahole a blur as it strokes up and down on your <<getWordMyPenis>>, while <<=setup.getNpcName("npc_psychiatrist","formal")>> thrusts the dildo deep where the vibrations feel like they're rattling you from hip to hip.
<<elseif $player.body_ref.penis>>
stronger, the onahole a blur as it strokes up and down on your <<getWordMyPenis>>.
<<elseif $player.body_ref.vagina>>
stronger as <<=setup.getNpcName("npc_psychiatrist","formal")>> thrusts the dildo deep where the vibrations feel like they're rattling you from hip to hip.
<<else>>
ERROR: unexpected no genitals
<</if>>
<br><br>
Your entire body twitches every few seconds, which only causes the buzzing nipple clamps to sway and tug for even more distraction. "@@.npc_psychiatrist;Oh you're doing so, so good, but this is about more than what you can merely endure, you need to prove to yourself that even when you're in control you won't push yourself over the edge.@@"<br>
<br>
She guides your hands
<<if $player.body_ref.penis && $player.body_ref.vagina>>
downward, one grasping around the onahole while she directs to take over thrusting the dildo in and out of your <<getWordVagina>>.
<<elseif $player.body_ref.penis>>
downward to double-fisted hold the onahole, the pressure of your grip making things even more intense.
<<elseif $player.body_ref.vagina>>
downward where she soon has you taking over thrusting the dildo in and out of your <<getWordVagina>>.
<<else>>
ERROR: unexpected no genitals
<</if>>
<br><br>
"@@.npc_psychiatrist;There you go, push yourself. Show what sort of <<=setup.getBoyGirl($npc_psychiatrist)>> you are — that you can retain control no matter what's happening. Now raise your hips, you've got another hole that I just know wants to be part of this...@@"<br>
<br>
<<printThought "Things are already near overwhelming... can I handle getting butt-fucked as well?">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_8" "Raise your hips — you need to prove you can take it all." 60>>] <<hint $options "Retaining control will require an expenditure of willpower.">><br>
<<else>>
[@@.link_locked;This stimulation is too much, you can no longer fight the urge to cum.@@]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_fail" "You're going to cum!" 60>>]
</div>/*#
#desc: psychiatrist topic: orgasm denial torture - anal
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 1>>
<<changeHorny 20>>
<<applyExperience 'anal' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist","formal")>> walks back to her desk; watching you the whole while as the vibrating <<if $player.body_ref.penis && $player.body_ref.vagina>>devices<<else>>device<</if>> in your hands <<if $player.body_ref.penis && $player.body_ref.vagina>>continue<<else>>continues<</if>> to push you to the edge.<br>
<br>
<<if $scene.plug == "">>
<<if $player.body_ref.vagina>>
She returns with the twin of the dildo currently pounding your <<getWordVagina>>; letting your pussy juices drip down onto it before shoving the second dildo into your ass until you can sit down, tight-packed and full, dual monstrosities sending waves of vibrations through your body.
<<else>>
She returns with a large dildo, rubbing it down with lube before shoving it deep into your ass until you can sit down, stuffed and full as the vibrations turn on, waves of stimulation through your prostate.
<</if>>
<<else>>
She returns with a hand-sized device that she places on your chair before guiding you to sit back down. Your legs are already trembling with strain and you welcome the minor respite, until the device roars with vibrations of its own, its cunning design causing the stimulation to rattle through your <<=setup.getItemTypeName('plug')>>.
<</if>>
<br><br>
"@@.npc_psychiatrist;Look at you,@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> says with a smile as she gives one of your nipples a flick, "@@.npc_psychiatrist;You aren't even restrained! You could stop this at any time, but you won't, because you are going to PROVE that you are in control, with or without chastity, you're in the drivers seat and will not be betrayed by your body's base urges.@@"<br>
<br>
You let out a soft moan, you want to obey, but things are so intense you don't know how much long you can hold out.<br>
<br>
Rising to her feet <<=setup.getNpcName("npc_psychiatrist","formal")>> reaches between her legs to pull out her own small, but VERY hard <<getWordPenis false>>.<br>
<br>
She begins stroking herself while looking down at you with unconcealed lust. "@@.npc_psychiatrist;You know what's even better than not cumming? Giving someone else an orgasm. Feeling their body shudder and climax, while knowing that such a relief is not for you.@@"<br>
<br>
She moves closer, the delicate scent of her ball-sweat overpowering the raw odour of sex pouring from your body. "@@.npc_psychiatrist;Well? Do you think you can handle it? Watching you like this has me so horny... you don't want to leave me with blue balls, you want to wrap those <<if $fetish.sissy>>sissy<<else>>pretty<</if>> lips around me and suck out the only orgasm that is going to happen in this session...@@"<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_9" "Part your lips, keep stimulating your body, and do as she says." 60>>] <<hint $options "This will take whatever is left of your mental reserves.">><br>
<<else>>
[@@.link_locked;This stimulation is too much, you can no longer fight the urge to cum.@@]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_wearing_no_chastity_fail" "You can't do anything but cum..." 60>>]
</div>/*#
#desc: psychiatrist topic: orgasm denial torture - blow her
#status: FINISHED 0.8.1.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _wp = setup.getWillpower() >>
<<spendWillpower _wp>>
<<applyExperience 'oral' $npc_psychiatrist.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<if $scene.removeClothes>>
<<useClothSetPop 'chastity_test'>>
<</if>>
<<set $player.flags.selfcontrol = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Obediently you continue to abuse your body, humping the
<<if $player.body_ref.penis && $player.body_ref.vagina>>
chair, jerking yourself and pounding your pussy all at once.
<<elseif $player.body_ref.penis>>
chair and jerking yourself.
<<elseif $player.body_ref.vagina>>
chair and pounding your pussy.
<<else>>
ERROR: unexpected no genitals
<</if>>
Lips parted you moan with indescribable delight as you become the sheath for <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> dagger, licking and sucking with everything you have as she brushes your head, her whispered words somehow barely audible above the roaring vibrations.<br>
<br>
"@@.npc_psychiatrist;You're so beautiful, so perfect... you feel so good, and I know you can do this. You have all the control in the world, because you're a good, good <<=setup.getBoyGirl($npc_psychiatrist)>>.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> cums, and you eagerly drink every drop. She's right, you are a good <<=setup.getBoyGirl($npc_psychiatrist)>>; and good <<=setup.getBoyGirl($npc_psychiatrist)>>s don't cum. They make others cum, just like you just did.<br>
<br>
The vibrations stop and you look up, <<=setup.getNpcName("npc_psychiatrist","formal")>> beaming with pride as she gently pulls you away and strokes your cheek. "@@.npc_psychiatrist;What a brave <<=setup.getBoyGirl($npc_psychiatrist)>> you are. So mentally strong and utterly delightful... the sort of <<=setup.getBoyGirl($npc_psychiatrist)>> who only wears chastity if they want to, not because they need to.@@"<br>
<br>
You blush as she collects the various devices and hands you your clothes. You <<if $scene.removeClothes>>dress in a daze<<else>>return to your seat<</if>>, still monumentally horny, but also contented. You have proven you are not a slave to your arousal, and in this moment it feels like everything is going to be fine...<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: orgasm denial torture - abort and replace chastity
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<<wearItem $scene.cage true>>
<<manipulateItem $scene.cage "lock" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Your heart racing you tell <<=setup.getNpcName("npc_psychiatrist","formal")>> that, actually... you actually aren't comfortable being vulnerable and out of chastity.<br>
<br>
You can tell she is a touch disappointed, but she helpfully re-locks your <<if setup.isCage()>>cage<<else>>belt<</if>> before speaking further.<br>
<br>
"@@.npc_psychiatrist;There we go, nice and secure. Remember, this is a place of sanctuary. I want you to always feel safe and able to bring me any problems you have. Now... what else is on your mind?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: orgasm denial torture - repeat
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyStress -10>>
<<applyFatigue 100>>
<<if !$scene.unlock>>
<<set $scene.cage = setup.getItemsByFilter("specific", "cage")[0]>>
<</if>>
<<wearItem $scene.cage true>>
<<manipulateItem $scene.cage "lock" true>>
<<if $scene.removeClothes>>
<<useClothSetPop 'chastity_test'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
It's all too much and you cum, hard and explosively
<<if $player.body_ref.penis && $player.body_ref.vagina>>
gushing across the chair as you <<if $player.body_ref.cumProduction > 0>>fill<<else>>dry orgasm into<</if>> the onahole.
<<elseif $player.body_ref.penis>>
and <<if $player.body_ref.cumProduction > 0>>filling<<else>>dry orgasming into<</if>> the onahole.
<<elseif $player.body_ref.vagina>>
gushing across the chair in ecstatic climax.
<<else>>
ERROR: unexpected no genitals
<</if>>
Thrashing as your body releases all controls <<=setup.getNpcName("npc_psychiatrist","formal")>> guides you safely to the ground and pins you in place, the pain of the nipple clamps and the rest being removed hardly felt as you writhe in ecstatic pleasure.<br>
<br>
You don't know if you've ever cum this hard before in your life; by the time the rippling after-shocks fade your body is sore and exhausted. Distantly you feel
<<if setup.isCage()>>
a familiar, but suddenly comforting, prison locking around your .
<<else>>
a sturdy, but strangely comforting, belt once again wrapping around your loins.
<</if>>
As the lock clicks closed you feel a wave of relief. You came so hard it was painful, and the familiar security of your chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>> is a welcome comfort compared to the thought of further stimulation.<br>
<br>
<<printThought "Maybe I am better off locked...">><br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> offers you a hand as you somewhat unsteadily return to your chair.<br>
<br>
"@@.npc_psychiatrist;It would seem you yet require some... assistance when it comes to control. Perhaps more? A permanent keyholder to relieve you of the burdensome possibility of freedom?@@" She smiles gently. "@@.npc_psychiatrist;Either way... and if you wish to test your control some other session well... I am here to help.@@" She returns to her seat as you <<if $scene.removeClothes>>slip back into your clothes and <</if>>slowly catch your breath.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: how you feel about not wearing chastity during session (repeat)
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.selfcontrol = $scene.unchaste>>
<<applyStress -5>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.unchaste>>
You confirm that you prefer to retain the option to be unburdened by chastity.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods. "@@.npc_psychiatrist;Of course, after all, it does open up some simply lovely opportunities...@@" She grins and you blush slightly in memory. "@@.npc_psychiatrist;Anyway, I am glad you checked in with me on this matter, and I wish you continued delights in your chosen time in, and out, of chastity.@@"
<<else>>
You reply that you have decided that you are better <<if $player.flags.chastity_style == "cage">>caged<<else>>belted<</if>> and locked. <<=setup.getNpcName("npc_psychiatrist","formal")>> nods. "@@.npc_psychiatrist;The important thing is that this is your choice. You have tried it both ways and decided that chastity is right for you, and that is such a wonderful thing. Of course, if you change your mind in the future, well...@@" Her eyes twinkle with lust, "@@.npc_psychiatrist;I am certainly willing to help you test your limits once more.@@"<br>
<br>
You smile. Her offer is appreciated, but you feel even better thinking ahead to the end of the session when you will be wonderfully locked once more.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing nun outfit during session
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You stand up to show off your
<<if setup.checkItemWorn('nun_habit_black') && setup.checkItemWorn('nun_robes_black') && setup.checkItemWorn('latex_nun_catsuit_skin') && setup.checkItemWorn('latex_nun_corset_black') && setup.checkItemWorn('latex_nun_panties_black') && setup.checkItemWorn('latex_nun_stockings_black') && setup.checkItemWorn('latex_nun_habit_black')>>
nun's outfit, lifting your robe to show your "complete" ensemble down to your latex catsuit and steel heels.
<<elseif setup.checkItemWorn('nun_habit_black') && setup.checkItemWorn('nun_robes_black')>>
modest nun's attire
<<elseif setup.checkItemWorn('latex_nun_catsuit_skin') && setup.checkItemWorn('latex_nun_corset_black') && setup.checkItemWorn('latex_nun_panties_black') && setup.checkItemWorn('latex_nun_stockings_black') && setup.checkItemWorn('latex_nun_habit_black')>>
kinky latex nun's outfit
<<else>>
partial nun's attire
<</if>>
and <<=setup.getNpcName("npc_psychiatrist","formal")>> grins.<br>
<br>
"@@.npc_psychiatrist;Well, well! It would seem that <<if $player.flags.church.intro=="psychiatrist">>you took me up on my recommendation to visit<<else>>you found your way to<</if>> the Church of the Goddess. It makes me so happy to see you explore, and embrace, your spiritual side. Just because I am a woman of Science first does not mean I cannot appreciate the good the Church of the Goddess does in the world, and my highest priority is, of course, to my patient — so knowing that you are getting additional care from such wonderful women is all for the good.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing maid's attire during session
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<<set $scene.clothingModifiers = setup.calcProstitutionModifiers()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You give a little spin in your maid's outfit and <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles.
<<switch $scene.clothingModifiers.attireType>>
<<case "formal">>
"@@.npc_psychiatrist;Such a lovely, formal maid! I would be almost afraid to ask you to clean anything, lest you dirty that beautiful outfit!@@"
<<case "office">>
"@@.npc_psychiatrist;Oh, I love a maid who is ready for business! So handy to have around the office, maybe not as important as a sweet <<if $fetish.sissy>>SISSI <</if>>Secretary... but a boon to morale and productivity, nonetheless!@@"
<<case "slutty" "kinky_office" "kinky" "kinky_formal">>
"@@.npc_psychiatrist;Now that is what I call a sexy maid! Oh, I can only imagine all the dirty things you could help "clean" wearing that...@@"
<<case "semi-formal" "smart_casual" "mixed" "casual">>
"@@.npc_psychiatrist;What a cute maid outfit! You would look right at home at that lovely cafe in the mall!@@"
<<default>>
ERROR: unhandled maid attire type: <<=$scene.clothingModifiers.attireType>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: talk about wearing schoolgirl attire during session
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes -= .5>>
<<applyStress -1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks over your outfit.<br>
<br>
"@@.npc_psychiatrist;Hmm... looking to take a class?@@" She chuckles. "@@.npc_psychiatrist;Let us hope it is with <<=setup.getNpcName("npc_development","formal")>> rather than <<=setup.getNpcName("npc_work_doctor","formal")>>... <<he npc_work_doctor>> certainly has quite the thing for the schoolgirl look... but I daresay I would not trust <<his npc_work_doctor>> lessons...@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: the misunderstanding that led to you attempting to jerk off cook
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how you were minding your own business in the line for lunch when you were suddenly alone in a storage room with a <<man npc_cook>> and <<his npc_cook>> giant <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>>.<br>
<br>
Her eyes lit up with interest she leans forward and asks "@@.npc_psychiatrist;Oh, that sounds like quite a scrumptious situation! What did you do?@@"<br>
<br>
<<if $npc_cook.flags.porn.handjob_fled>>
At the time it seemed the obvious thing to do, but when you tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> you fled she seems quite crestfallen, taking a moment to compose her thoughts.<br>
<br>
"@@.npc_psychiatrist;Oh... I really thought we had moved past that sort of thing, of running away from situations rather than confronting the world... This seems quite the step back in you becoming the best version of yourself.@@"<br>
<br>
<<printThought "Being the best version of myself means jerking off random <<if $npc_cook.fem>>women<<else>>men<</if>> and their huge cocks? <<glitchText 'Yes... of course it does... why did I pass up such an opportunity?'>>">><br>
<br>
"@@.npc_psychiatrist;Well, no matter, it is in the past now. There is really only one thing to do about it, however. You say the <<man npc_cook>> works at your work cafeteria? Well, clearly you need to go up to <<him npc_cook>>, apologise, and then make up for your failure! Why, think of what painful blue-balls you must have left <<him npc_cook>> with! Abandoning <<him npc_cook>> after exciting <<him npc_cook>> with your cute self! I know you better than that, you are not cruel and I am quite certain you feel the urge to make things right.@@"<br>
<br>
<<printThoughtGlitch "Yes... must... make it up to <<him npc_cook>>...">><br>
<br>
The fog that had descended over your thoughts starts to clear and you decide to talk about something else.
<<else>>
You smile a little and reply that, of course, you wrapped your hands around <<his npc_cook>> big, beautiful <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>> and did what you could.<br>
<br>
"@@.npc_psychiatrist;Oh <<=$player.first_name>>... when I think of how far you have come... well, I am just so delighted at the success of our therapy, but go on, tell me what happened next!@@"<br>
<br>
You talk about how big and firm <<he npc_cook>> was, how hot <<he npc_cook>> felt against your palms.
<<if $npc_cook.flags.porn.first_handjob>>
You continue with joy that, though it was a mighty feat, you persevered, stroking <<him npc_cook>> until <<he npc_cook>> showered you with a great fountain of <<getWordCum>>!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> beams with pride.<br>
<br>
"@@.npc_psychiatrist;Oh, wonderful, wonderful. What happened next, was <<he npc_cook>> grateful?@@"
<<else>>
You continue that, though you tried your best, you were beaten by <<his npc_cook>> cock. Not literally, <<he npc_cook>> remained <<if $npc_cook.fem>>polite<<else>>a gentleman<</if>> in the face of your failure, but your hands gave out in exhaustion before managing to draw an orgasm from <<his npc_cook>> monstrous member.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> sighs in sympathy before continuing.<br>
<br>
"@@.npc_psychiatrist;Well, you tried, and it sounds like you aren't the first girl to fail at such an epic task. Do you think you might convince <<him npc_cook>> to try again? I mean, it really isn't good to leave such things unfinished, a failure like that is liable to nag you with regret forever.@@"
<</if>>
<br><br>
You explain that, after the <<man npc_cook>> had cooled off a bit, you learned that there had been a big misunderstanding. That, in fact, <<he npc_cook>> was expecting someone else entirely! You conclude by telling your therapist the <<mans npc_cook>> offer; both that <<he npc_cook>> would arrange for food delivery to save you time at lunch, and that <<he npc_cook>> would be willing to teach you how to be a pornstar.<br>
<br>
"@@.npc_psychiatrist;What a fortuitous turn of events! Definitely keep me up to date with what happens with <<him npc_cook>> in the future!@@"<br>
<br>
You nod, clearly the idea of you NOT accepting <<his npc_cook>> offer isn't even considered worth discussing...
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: successfully giving cook a handjob
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk with pride about successfully jerking <<=setup.getNpcName('npc_cook', 'first')>> to completion.<br>
<br>
After a flurry of questions about seemingly every detail about how <<he npc_cook>> felt (huge, hot), smelled (earthy and <<if $npc_cook.fem>>feminine<<else>>masculine<</if>>) and most of all, tasted (<<if setup.getTotalValue("cum") >= 10>>deliciously <</if>>strong) she finally lets you continue on.<br>
<br>
If she was interested in your story of jerking <<him npc_cook>> off she is practically giddy at <<his npc_cook>> offer to "train" you to become a pornstar.<br>
<br>
"@@.npc_psychiatrist;Oh! That is so wonderful, every girl's dream!@@"<br>
<br>
<<printThought "I... don't think that can be true... can it?">><br>
<br>
"@@.npc_psychiatrist;So... when is your first film coming out?@@"<br>
<br>
<<if $player.flags.porn.pornname != "">>
[<<moveTo 'event_psychiatrist_session_cook_porn_star_1' "Tell her it's already released!" 60>>]
<<elseif $npc_cook.flags.porn.times_anal > 0 || $npc_cook.flags.porn.times_oral > 0 || $npc_cook.flags.porn.times_vag > 0 >>
[<<moveTo 'event_psychiatrist_session_cook_handjob_success_2' "Say you still have a lot of training yet to complete." 60 "<<set $scene.train=true>>">>]
<<else>>
[<<moveTo 'event_psychiatrist_session_cook_handjob_success_2' "Say you don't think you're interested in that." 60 "<<set $scene.train=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: talk about if you're going to train to be a pornstar.
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.train>>
You smile and reveal that while, of course, you're hoping to eventually be a pornstar, for now you have quite a bit of training to do.<br>
<br>
"@@.npc_psychiatrist;Of course, of course, you want to be prepared for these things, but it sounds like you have a good instructor. Oh... I'm just so proud of you! My sweet <<if $fetish.sissy>>sissy <</if>>subject is going to be a star!@@"<br>
<br>
You blush and thank her for the encouragement.
<<else>>
You reply that you don't have any interest in training to service <<=ps(setup.getNpcName('npc_cook', 'first'))>> massive <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>>. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks immediately crestfallen.<br>
<br>
"@@.npc_psychiatrist;What, but I thought... oh, is this that you're feeling too shy to appear in porn? Oh, girlfriend, don't worry about it, you're so adorable, and as to learning to stretch your limits well... it's so rewarding, and useful!@@"<br>
<br>
<<printThought "No... I don't want to be a pornstar...">><br>
<<printThoughtGlitch "... I... want to be a pornstar...">><br>
<br>
You shake your head. Did you black out for a second? <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is still looking at you with an encouraging smile so everything must be fine, you try to refocus and think of your next topic of conversation.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: cook's horsecock
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about <<=ps(setup.getNpcName('npc_cook', 'first'))>> massive <<if $fetish.bestiality_soft>>horse<</if>> dick. Unphased by your description of its size and shape she seems quite interested as she slowly steers the conversation towards your opinion of <<his npc_cook>> massive member.<br>
<br>
[<<moveTo 'event_psychiatrist_session_cook_dick_2' "Say you love it, even if it is a bit intimidating." 60 "<<set $scene.opinion='love'>>">>]<br>
<<if ($npc_cook.flags.porn.times_handjob+$npc_cook.flags.porn.times_oral+$npc_cook.flags.porn.times_anal+$npc_cook.flags.porn.times_vag) < 5>>
[<<moveTo 'event_psychiatrist_session_cook_dick_2' "Say you think it's grotesque." 60 "<<set $scene.opinion='hate'>>">>]<br>
<<else>>
[@@.link_locked;Maybe it's something like stockholm syndrome, but you've spent too much time working that massive schlong to have any negative feelings towards it.@@]<br>
<</if>>
[<<moveTo 'event_psychiatrist_session_cook_dick_2' "Say it makes you jealous." 60 "<<set $scene.opinion='jealous'>>">>]
</div>/*#
#desc: psychiatrist topic: your opinion of cook's horsecock
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.opinion>>
<<case 'love'>>
<<applyExperience 'penis' 15 'unbelievable' $SEEN_FRIEND>>
<<case 'hate'>>
<<applyExperience 'penis' 8 'normal' $SEEN_FRIEND>>
<<case 'jealous'>>
<<applyExperience 'penis' 10 'very' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $fetish.bestiality_soft>>
<<switch $scene.opinion>>
<<case 'love'>>
You gush about how much you LOVE everything about <<=ps(setup.getNpcName('npc_cook', 'first'))>> mammoth horse-cock, from its size to its unique shape<<if setup.getTotalValue("cum") >= 10>> to how it produces buckets of deliciously strong cum<</if>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins. "@@.npc_psychiatrist;Oh, I just knew you were going to be a total size queen. All cocks are wonderful, of course, but there's just something about something truly massive and bestial... and those frills? aren't they just so delicious and delicate on your tongue? <<if $fetish.bestiality_hard>>It's almost as good as the real thing!<</if>>@@"<br>
<br>
<<if $fetish.bestiality_hard && setup.getTotalValue("bestiality") < 6>>
<<printThought "Wait, is she talking about fucking an ACTUAL horse? That can't be possible... can it?">>
<<else>>
<<printThought "Is she speaking from experience?? How common ARE horsecocks?">>
<</if>>
<<case 'hate'>>
You talk about how much you dislike <<=ps(setup.getNpcName('npc_cook', 'first'))>> huge horsecock, going into detail about everything from the soft, frilled head, to its pungent flavour and on down to <<his npc_cook>> massive balls as you try to describe to your psychiatrist the bestial horror that dangle's between the <<mans npc_cook>> legs.<br>
<br>
You would swear that even your most luridly frightening descriptions only serve to turn her on as she finally gives her advice.<br>
<br>
"@@.npc_psychiatrist;I hear your words, but I also hear confusion. I mean, if you hated the thing so much why would you have memorised every centimetre of it? I don't think you hate it at all, you might be scared, certainly, but you're enticed, aroused, but held back by antiquated thoughts as to what is "proper" for a lady to show interest in. Let me put your fears to rest — it is perfectly fine for a girl like yourself to be infatuated with big, thick horsecocks. While a measure of caution is advised to work your way up to such things, lest you risk injury, it is perfectly healthy and such thoughts make you no less of an adorable, sweet <<if $fetish.sissy>>sissy<<else>>girl<</if>> to want, and have a nice big horse dick stuffed in either, or all! of your sexy holes.@@"<br>
<br>
<<printThought "That's not right, I don't want horsecock!">><br>
<<printThoughtGlitch "That's right, I... I want horsecock!">><br>
<br>
A vision of <<=ps(setup.getNpcName('npc_cook', 'first'))>> radiant horsedick rises in your minds, staring you down. Massive, unblinking, and alluring...
<<case 'jealous'>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that <<=ps(setup.getNpcName('npc_cook', 'first'))>> huge horsecock makes you feel jealous<<if $fetish.sph>>, inadequate<</if>>.<br>
<br>
<<if $player.body_ref.horsecock>>
She chuckles in amusement. "@@.npc_psychiatrist;But you have a horsecock of your own! And quite the lovely one. You should not worry your head with such jealously, hmm?@@"
<<else>>
<<if $fetish.sph>>
Her face narrowed with concern she quickly comforts you. "@@.npc_psychiatrist;Of course you would feel that way, I mean, I recall your concerns as to your own size. All penises are beautiful in their own way but, well, it's not uncommon to wonder what it would be like to be bigger, or better. If it means so much to you there are, of course, medical procedures of the type <<=setup.getNpcName('npc_cook', 'first')>> had, but you need to first weigh all your options. A cock like that well... it's a responsibility! And it can intimidate quite a few people, even dangling from a cute set of hips like yours. Plus, well, <<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>think of how big of a chastity cage you'd need to keep it contained<<else>>could something like that even fit under a chastity belt?<</if>>!@@"<br>
<br>
<<printThought "Hmm... what would it be like to have a horsecock of my own? Would I still have to keep it <<if setup.checkItemTypeWorn('cage') && setup.isCage()>>caged<<else>>chaste<</if>>?">>
<<else>>
Her face narrowed with concern she quickly comforts you. "@@.npc_psychiatrist;There, there. Medical science is full of wonders, if you want something like that for yourself, well... it is certainly a possibility.@@"
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.opinion <<=$scene.opinion>>
<</switch>>
<<else>>
<<switch $scene.opinion>>
<<case 'love'>>
You gush about how much you LOVE everything about <<=ps(setup.getNpcName('npc_cook', 'first'))>> mammoth member, its length, its girth, its fat mushroom head<<if setup.getTotalValue("cum") >= 10>> and, of course, how it produces buckets of deliciously strong cum<</if>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins. "@@.npc_psychiatrist;Oh I just knew you were going to be a total size queen. All cocks are wonderful, of course, but there's just something about something truly massive, the way you feel like you're about to be split in half... and then it's in, touching depths and places you never knew you had... so intense...@@"<br>
<br>
<<printThought "She sounds really turned on... I wonder if <<=setup.getNpcName('npc_cook', 'first')>> makes house calls... wait, did I just contemplate setting my psychiatrist up with a giant-dicked porn star?">>
<<case 'hate'>>
You talk about how much you dislike <<=ps(setup.getNpcName('npc_cook', 'first'))>> huge cock, going into detail about everything from its fat mushroom tip, its intense flavour, all the way down to <<his npc_cook>> massive balls as you try to describe to your psychiatrist the horror that dangles between <<his npc_cook>> legs.<br>
<br>
You would swear that even your most luridly frightening descriptions only serve to turn her on as she finally gives her advice.<br>
<br>
"@@.npc_psychiatrist;I hear your words I also hear confusion. I mean, if you hated the thing so much why would you have memorised every centimetre of it? I don't think you hate it at all. You might be scared, certainly, but you're enticed, aroused, but held back by antiquated thoughts as to what is "proper" for a lady to show interest in. Let me put your fears to rest — loving big cocks, being a "size queen," as they say, well it's perfectly normal. While a measure of caution is advised to work your way up to such things lest you risk injury it is perfectly healthy and such thoughts make you no less of an adorable, sweet <<if $fetish.sissy>>sissy<<else>>girl<</if>> to want, and have a nice big cock stuffed in either, or all! of your sexy holes.@@"<br>
<br>
<<printThought "That's not right, I don't want big cock!">><br>
<<printThoughtGlitch "That's right, I... I want big cock!">><br>
<br>
A vision of <<=ps(setup.getNpcName('npc_cook', 'first'))>> mammoth meatstick rises in your minds, staring you down. Massive, unblinking, and alluring...
<<case 'jealous'>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that <<=ps(setup.getNpcName('npc_cook', 'first'))>> huge cock makes you feel jealous, inadequate.<br>
<br>
<<if $player.body.penissize[0] >= 6>>
She chuckles in amusement. "@@.npc_psychiatrist;But you have a massive meatstick of your own! And quite the lovely one. You should not worry your head with such jealously, hmm?@@"
<<else>>
<<if $fetish.sph>>
Her face narrowed with concern she quickly comforts you. "@@.npc_psychiatrist;Of course you would feel that way, I mean, I recall your concerns as to your own size. All penises are beautiful in their own way but, well, it's not uncommon to wonder what it would be like to be bigger, or better. If it means so much to you there are, of course, medical procedures of the type <<=setup.getNpcName('npc_cook', 'first')>> had, but you need to first weigh all your options. A cock like that well... it's a responsibility! And it can intimidate quite a few people, even dangling from a cute set of hips like yours. Plus, <<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>well, think of how big of a chastity cage you'd need to keep it contained!<<else>>would you even be able to fit it under a chastity belt?<</if>>@@"
<<else>>
Her face narrowed with concern she quickly comforts you. "@@.npc_psychiatrist;There, there. Medical science is full of wonders, if you want something like that for yourself, well... it is certainly a possibility@@"
<</if>>
<br><br>
<<printThought "Hmm... what would it be like to have a huge cock? Would I still have to keep it locked up?">>
<</if>>
<<default>>
ERROR: unexpected scene.opinion <<=$scene.opinion>>
<</switch>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: challenge of cook's horsecock anally
#status: RELEASED 0.8.2.0
#*/
<<if $npc_cook.flags.porn.anal_stage >= 4>>
<<moveTo 'event_psychiatrist_session_cook_success_anal_1'>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the challenges you've been facing learning to take <<=ps(setup.getNpcName('npc_cook', 'first'))>> <<getWordPenis "npc_cook">> in your rear hole.<br>
<br>
<<switch $npc_cook.flags.porn.anal_stage>>
<<case 0>>
For the first thing, <<he npc_cook>> won't even fuck you yet! insisting that you need experience with someone more "normal" before <<if $npc_cook.fem>>she'll<<else>>he'll<</if>> even attempt to stuff <<his npc_cook>> meat monster into your rear.<br>
<br>
"@@.npc_psychiatrist;I understand your frustration — Goddess knows this is an age of instant gratification, but you need to consider it on two levels. First, is that <<he npc_cook>> is absolutely right, if you jump in at the "deep end" you could damage your ass, we wouldn't want that! A perfect tush like that should be trained to be able to service any size or shape of cock that is lucky to be invited into its pleasure passage. Secondly, well... needing to work for things makes the reward at the end so much sweeter. Think about the rest of your transformations, if that had all happened your first day on the job you wouldn't have been able to appreciate the journey, would you?@@"
<<case 1>>
You tell her how <<his npc_cook>> training routine isn't just a matter of working you up to taking <<his npc_cook>> mammoth girth, but a psychological test too!<br>
<br>
"@@.npc_psychiatrist;As it should be. Think about it. Porn isn't just fucking in front of a camera — it's looking GOOD fucking in front of a camera. That's really quite hard and it's to your benefit that you have someone so experienced to guide you along, do what <<he npc_cook>> says and I'm sure you'll reach your dreams soon enough.@@"
<<case 2>>
You talk about your ongoing training, how for all the progress you've made <<=setup.getNpcName('npc_cook', 'first')>> seems to keep stepping up the challenge in every way.<br>
<br>
"@@.npc_psychiatrist;It sounds like you're on track. Just keep your focus and you'll reach your goal soon!@@"
<<case 3>>
You gush with glee at how close you are to reaching your goal of taking <<=ps(setup.getNpcName('npc_cook', 'first'))>> full, massive length up your ass. Your tone turns a bit sadder as you continue, noting that you seem to have hit a "wall" as your ass refuses to accept the last of <<his npc_cook>> glorious length.<br>
<br>
"@@.npc_psychiatrist;Hmm, maybe you should look into other methods of training? <<=setup.getNpcName('npc_cook', 'first')>> has obviously been a great teacher so far, but sometimes we need to mix it up, add a little variety to push past plateaus.@@"
<<case 4>>
You swell with pride as you describe taking <<=ps(setup.getNpcName('npc_cook', 'first'))>> <<getWordPenis "npc_cook">> balls deep up your ass.<br>
<br>
"@@.npc_psychiatrist;How wondrous! I always knew you had it in you... or, rather COULD have it in you! See what you can accomplish when you focus, and have a good teacher? Well done, my dear, and I wish you great fortune as you deploy your new skill only... remember not to forget those of less endowed proportions as you explore the realm of size queenery.@@"
<<default>>
ERROR: unexpected npc_cook.flags.porn.anal_stage : <<=$npc_cook.flags.porn.anal_stage>>
<</switch>>
<br><br>
You nod in agreement and thank her for the context and advice.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: cook anal success
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> of your triumphant accomplishment of taking every thick, hard centimetre of <<=ps(setup.getNpcName('npc_cook', 'first'))>> <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>> into your ass. Describing the feeling of <<his npc_cook>> heavy balls slapping against the back of your thighs has her smiling wide with aroused pride.<br>
<br>
"@@.npc_psychiatrist;Amazing! See what you can accomplish when you set your mind to it? Oh, I know it was hard... pun intended! But you persevered and now you can be ass-fucked by damn near anything! I can't wait to see how you employ this new superpower!@@"<br>
<br>
<<printThought "Huh, I guess taking <<his npc_cook>> inhumanly large member is sort of a superpower...">><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: becoming a porn star
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you have started a new career as a porn star.<br>
<br>
"@@.npc_psychiatrist;That is so cool! What's your name? I just HAVE to look you up...@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
Her interest has you feeling aroused and you inform her that your porn name is <<=$player.flags.porn.pornname>>.
<<else>>
Her interest has you feeling embarrassed, but after a bit of pestering she manages to get you to tell her that your porn name is <<=$player.flags.porn.pornname>>.
<</if>>
<br><br>
"@@.npc_psychiatrist;<<=$player.flags.porn.pornname>> hmm... yes, that is just perfect for you, good choice! Well, I look forward to following your career, and congratulations on living out one of your dreams!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: challenge of cook's horsecock vaginally
#status: FINISHED 0.8.3.0
#*/
<<if $npc_cook.flags.porn.vag_stage >= 4>>
<<moveTo 'event_psychiatrist_session_cook_success_vaginal_1'>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the challenges you've been facing learning to take <<=ps(setup.getNpcName('npc_cook', 'first'))>> <<getWordPenis "npc_cook">> in your <<getWordVagina>>.<br>
<br>
<<switch $npc_cook.flags.porn.vag_stage>>
<<case 0>>
<<He npc_cook>> won't even have sex with you! Insisting that you need more experience before <<if $npc_cook.fem>>she'll<<else>>he'll<</if>> breed you with <<his npc_cook>> big bruiser.<br>
<br>
"@@.npc_psychiatrist;Your frustrations are understandable, but <<his npc_cook>> concerns are reasonable. Starting with something so large, well... one's first time can be challenging enough, to do it with something of such girth... it might turn you off from vaginal sex immediately, and what a loss that would be! No, while I, of course, encourage you to have sex at your preferred pace, I agree with <<him npc_cook>> that starting with something a bit more... average, would be the move to make. Walk before you run, and all that.@@"
<<case 1>>
You talk about how <<hes npc_cook>> tested more than just your ability to handle <<him npc_cook>> physically, requiring you to literally beg for it.<br>
<br>
"@@.npc_psychiatrist;A bit of a cliche, but those things are quite common in porn, it only makes sense that <<he npc_cook>> would want to make sure you could put on a verbal, as well as physical, performance. Though it sounds like you had little difficulty with such, hmm?@@"
<<case 2>>
You talk about how <<his npc_cook>> latest task is for you to push your stamina and physical flexibility.<br>
<br>
"@@.npc_psychiatrist;Yes, yes, quite reasonable. After all, if you are to shoot porn you need to frame things for the camera... and be ready to last the whole day on set to get that perfect shot. Yes, yes, it may be hard work, but I have faith that you will rise to the occasion!@@"
<<case 3>>
You talk about how, after testing your stamina and flexibility, <<he npc_cook>> has suggested you train further with a computer game, of all things.<br>
<br>
"@@.npc_psychiatrist;Interesting, but logical, if you think about it. After all, what is a porn production but a well-oiled machine? Being able to perform to mechanized precision, well... that seems quite the useful skill when it comes to putting out on schedule, on set.@@"
<<case 4>>
You talk about how, after spending time training on your own, you have finally managed to take <<=setup.getNpcName('npc_cook', 'first')>> all the way balls deep in your baby-maker.<br>
<br>
"@@.npc_psychiatrist;Well done! You are really out there grabbing every opportunity you can to take advantage of your body's capabilities. Such courage!@@"
<<default>>
ERROR: unexpected npc_cook.flags.porn.vag_stage : <<=$npc_cook.flags.porn.vag_stage>>
<</switch>>
<br><br>
You agree with her and thank her for the context and the advice.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: cook vaginal success
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you have managed to prove your ability to get fucked to <<=ps(setup.getNpcName('npc_cook', 'first'))>> satisfaction.<br>
<br>
"@@.npc_psychiatrist;Lovely, lovely. Of course you were eminently fuckable from the first, but isn't it wonderful to know that a <<man npc_cook>> who has such wide experience would consider you to rate high enough to show off to the world? Such a lovely accomplishment.@@"<br>
<br>
You straighten with pride and thank her for the encouragement.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: cook oral success
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you have managed to FULLfill your goal of deepthroating every centimetre of <<=ps(setup.getNpcName('npc_cook', 'first'))>> <<if $fetish.bestiality_soft>>horsecock<<else>>cock<</if>>.<br>
<br>
"@@.npc_psychiatrist;Mmmm, that sounds delicious! Isn't the human body a wonder? From your description <<he npc_cook>> would cause most sword-swallowers to balk, but you reached your dream, congratulations and I hope you align your wonderful powers with the forces of good.@@"<br>
<br>
You both chuckled at the joke that your cocksucking prowess could be considered a superpower... though, in a way...<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: talk to psychiatrist about breaking up with girlfriend
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You start talking about your recent break up with your girlfriend of 4 years <<=setup.getNpcName('npc_exgirlfriend', 'full')>>. It's the first time you talked to someone so openly about this whole ordeal. Just talking about it makes you realise how much it encumbered you and it feels good to get this all out of your system once and for all, to move on.<br>
<br>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about how you two met, how you got together, how you moved in together one year ago and how the both of you had planned to stay virgins until the wedding. And then you tell her about <<=setup.getNpcName('npc_yogateacher', 'first')>>, motherfucking <<=setup.getNpcName('npc_yogateacher', 'full')>>, that <<if !$npc_yogateacher.fem>>son of a <</if>>bitch yoga teacher, with <<his npc_yogateacher>> impressive physique and perfect smile. And how you caught them in bed together a short while ago.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> takes a few notes and nods from time to time, but does not interrupt your story, until you get to the very last part.<br>
<br>
"@@.npc_psychiatrist;And how did that make you feel? The part where you found them in bed together.@@"<br>
<br>
You tell her that it made you feel angry. More angry than you've ever been before.<br>
<br>
"@@.npc_psychiatrist;Yes, but what was the source of your anger. What was it aimed at? Was it really your girlfriend or the yoga teacher with the and I quote "abs made of steel?" And please answer truthfully, there is no one here you have to impress.@@"<br>
<br>
That sentence made you think, a lot. You were angry, but not at your girlfriend... well not 100 percent. You were angry at yourself, for wasting your life not trying to explore your sexuality when you had the chance.<br>
<br>
"@@.npc_psychiatrist;See? Now we start to make progress. I know this whole ordeal must have been hard on you, especially since you've also lost your old job recently. But I think it would be best if you saw this whole thing as an opportunity. New Job, new lifestyle, new ways to explore yourself!@@"<br>
<br>
<<printThought "Well, that could explain some of my behaviour lately...">><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: box
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You mention the box left behind by your ex-girlfriend.<br>
<br>
<<if $npc_exgirlfriend.flags.woreherclothes>>
"@@.npc_psychiatrist;How weird, and she said for you to keep it? But she didn't give you the combination to open it?@@"<br>
<br>
You nod.<br>
<br>
"@@.npc_psychiatrist;What a puzzle! Huh, I mean, I guess she must think it'd be something you'd like, yet she didn't tell you what it was when she said you could have it...@@"<br>
<br>
You point out that she was a bit distracted by you wearing her clothes at the time.<br>
<br>
"@@.npc_psychiatrist;Of course, of course, and what a stunning distraction you must have made! Still, it seems to me you either need to talk to her to find out what it is... or at least the combination, or, well, figure out the combination. Do you think she might have written it down and left it behind or something? Might be time to search the old apartment if you don't have a better idea for puzzling open the lock.@@"
<<else>>
"@@.npc_psychiatrist;Hmm, kind of you to be willing to store it for her, but a bit odd that she would leave that in particular behind after moving out, even after coming back for her other things! And you say she made no mention of what might be inside the box?@@"<br>
<br>
You nod, you don't even remember when the box first appeared, though you're certain she didn't have it way back when she originally moved in with you.<br>
<br>
"@@.npc_psychiatrist;Huh, quite the puzzler. Well, there are really only two options. Get her to tell you what's inside, or somehow figure out how to unlock it. Of course the latter is a bit of a violation of her privacy, but at the same time... leaving something behind with an ex like this, even one you are on good terms with is a bit odd, and something of an imposition... do you think maybe she wants you to have it, but doesn't want to explicitly give it to you lest you feel obligated as a result? Maybe she left behind the combination somewhere she thought you'd find and you just missed it?@@"<br>
<br>
<<printThought "That seems kind of weird and convoluted... at the same time there's probably no harm if I somehow managed to take a peek inside, right?">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: box
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell how, after managing to open the mysterious box left behind by your ex-girlfriend, it entrapped you in bondage and fucked your brains out.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> shifts in her seat and takes a moment to compose herself. "@@.npc_psychiatrist;I see, well, that must have been quite the experience. You're okay, obviously, but what do you think about now that you're on the other side?@@"<br>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.times_used > 1>>
[<<moveTo "event_psychiatrist_session_girlfriend_mystery_box_open_2" "Say you loved it and you've used it again since." 60 "<<set $scene.like=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_girlfriend_mystery_box_open_2" "Say you disliked it." 60 "<<set $scene.like=false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_session_girlfriend_mystery_box_open_2" "Say it was a bit startling, but you're interested in trying it again." 60 "<<set $scene.like=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_girlfriend_mystery_box_open_2" "Say you disliked it and will not be using it again." 60 "<<set $scene.like=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: box reaction
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_exgirlfriend.flags.bondage_machine.times_used > 1>>
<<if $scene.like>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<else>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 2>>
<</if>>
<<else>>
<<if $scene.like>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $npc_exgirlfriend.flags.bondage_machine.times_used > 1>>
<<if $scene.like>>
You tell her that, after that surprising first use, you've gone back to use the bondage/fucking machine again, relishing the intensity of experience.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Oh how lovely. See how wonderful it can be to experiment with new experiences? This just goes to show the continued progress of our therapy together.@@"<br>
<<else>>
You start to explain that you didn't like it at all, but <<=setup.getNpcName("npc_psychiatrist","formal")>> rolls her eyes and cuts you off. "@@.npc_psychiatrist;Still with this? You know I can tell when you lie. You must have liked it, after all, you went back and used it again... didn't you?@@"<br>
<br>
You stare at the floor and mumble a response. She remains unsatisfied, needling you further with "@@.npc_psychiatrist;Sorry, I didn't get that.@@" Until you give her the desired response that yes, you've gone back to enjoy the machine again since that first surprising use.<br>
<br>
She straightens in her chair at having drawn out your admission. "@@.npc_psychiatrist;See, isn't it so much easier to embrace things? To admit that yes, you are horny and you like getting fucked. It's nothing to be embarrassed of! After all, they would not make such devices if people didn't enjoy them, so go on, keep having fun with your new toy!@@"
<</if>>
<<else>>
<<if $scene.like>>
You say that, while you were certainly surprised, you actually enjoyed the experience of being tightly restrained and fucked by the implacable machine.<br>
<br>
"@@.npc_psychiatrist;I see, I see. Well, I am glad that you saw the silver lining in that experience only... I wonder why you haven't taken it for another spin? Certainly things will be a bit different knowing what's coming, but I bet you end up enjoying it just the same.@@"
<<else>>
You note that you felt helpless and violated by your experience with the bondage fucking machine and have no interest in experiencing it again. <<=setup.getNpcName("npc_psychiatrist","formal")>> frowns.<br>
<br>
"@@.npc_psychiatrist;While I certainly understand and support you in feeling somewhat... taken advantage of by the machine I think you would benefit from some additional thought. After all, we've discussed many times the importance of you being more open to new experiences and the way you are currently reacting well... "face your fear" seems like the operative phrase.@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: winning sex game
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You excitedly tell <<=setup.getNpcName("npc_psychiatrist","formal")>> about your triumph over the game<<if $fetish.get_raped>> "Rape Rape Revolution." <<else>> "Space Slut Supreme." <</if>>She smiles, sitting back as you tell her all about your "final run" and what you had to do to obtain victory.<br>
<br>
"@@.npc_psychiatrist;It's so nice to hear such joy in your voice, and I am proud of you, I hear that game can be quite the challenge! But now, well... I advise you to consider the next steps — as fun as a game like that can be that sort of thing can be even more enjoyable with a real world partner!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: running into ex at club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> about your shocking encounter with your ex during your first visit to <<printShopName 'sex_club'>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> listens patiently as you recite the entire shocking tale before giving her analysis. "@@.npc_psychiatrist;Hmm, putting aside what seems to have been quite the sequence of random events to result in that occurrence... well, how do you feel? I know it was shocking but I wonder if maybe seeing her like that, and her you, well... could it have given you a bit of, for lack of a better word, closure? I mean, you and her used to be close, so doesn't it feel good to know that she's growing beyond the constraints of your failed relationship? Just as you are?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_girlfriend_club_2" "You guess..." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_girlfriend_club_2" "You're still a bit bitter about the whole breakup." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: psychiatrist topic: response to running into ex at club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyStress -10>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You think for a moment and then nod. For as startling as your encounter was, you don't think it was planned — <<=setup.getNpcName("npc_exgirlfriend","first")>> never recognised you and seemed quite lustily in the moment. Given that you've certainly "moved on" from your relationship, well... how can you blame her for doing the same?<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles, clearly proud of your breakthrough as you feel some of the weight of the past lift from your shoulders and consider what else to talk about.
<<else>>
You shake your head — sure, the revelation that your ex is kinky... and probably submissive? Was an interesting one, and your relationship may have been doomed in any case... but you're still not ready to quite move past all of that.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> frowns slightly, but nods. "@@.npc_psychiatrist;Certainly such feelings are valid, and I do not want you suppressing them or anything like that just... think on it, a bit. If you can find a way to forgive her, and let go of this bitterness, well... I believe you will feel the better for it.@@"<br>
<br>
You see her point and reply that you'll consider it as you continue on to something else.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: running into ex at club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> about your... intimate encounter with your ex at <<printShopName 'sex_club'>>, of using what you thought was your anonymity to seduce her, only for her to reveal that she knew all along in the middle of pegging you...<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> chuckles and shakes her head. "@@.npc_psychiatrist;Sorry, I do not mean to laugh but... it is a bit silly, no? Like something out of a kinky sitcom!@@"<br>
<br>
You reply that she's kind of right, then continue on to explain how
<<if $npc_exgirlfriend.flags.sexclub.peg_talk>>
how, <<if State.hasPlayed("event_exgirlfriend_peg_call_1")>>your ex phoned you a bit later to talk about it all<<else>>after it was over, she stuck around to talk about things<</if>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods, "@@.npc_psychiatrist;well, I guess it all worked out, hmm? You got a nice fun pegging, and a bit of closure! Now, I would advise you against such sneaking around when it comes to... intimate emotional issues but, well, what is done is done, and it seems that you and <<=setup.getNpcName("npc_exgirlfriend","first")>> are in a better place for it.@@"
<<else>>
you're still processing the whole thing.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods. "@@.npc_psychiatrist;Understandable... perhaps talking with your ex about it might shed some light on things? But for now I can see you would like to move on to some other topic...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: penis pill side effects
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up the disastrous penis enlargement drug you ordered, and how not only was it ineffective, but that it has left you with frustrating after-effects.<br>
<br>
<<if $player.sec_style.body.tblock == "">>
"@@.npc_psychiatrist;I see, such scams are so predatory, and we will certainly be addressing the reasons you felt you needed such as we go on. For now, however, I wanted to dig into this a bit more, and offer a proposal. It sounds to me like the drug is having some lingering effects on your endocrine system. Particularly your testosterone production. Now, adjusting that downward is a bit tricky, and I can see why your original doctor may have opted to let it even out on its own... but another alternative would be to merely suppress the absorption. Your body would still produce testosterone, but it would float around uselessly without being absorbed. Fortuitous for you, I was just reading about a trial for just such a therapy targeted at certain types of performance enhancing drug abusers. Your symptoms sound quite similar, and I could get you into the trial — you'd even earn a modest payment of <<=setup.numberInWords($player.work.payment)>> in compensation for your time.@@"<br>
<br>
<<printThought "<<=setup.numberInWords($player.work.payment, false)>> credits! That's as much as I make in a week of work!">><br>
<br>
[<<moveTo "theme_psychiatrist_tblock_money_2" "You do like money..." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "theme_psychiatrist_tblock_money_2" "Decline her offer." 180 "<<set $scene.accept=false>>">>]
<<else>>
"@@.npc_psychiatrist;I see... those scams are so predatory... though, tell me, has going on testosterone blockers helped even things out?@@"<br>
<br>
You hesitate for a moment and then nod, you actually have been felling a bit more even since you took that medication.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Yes, I thought they might. Such a pity your first doctor did not consider them as a treatment option. The reticence to prescribe something so helpful, and with so few negative side effects... and even those are reversible! Sorry, bit of a sore subject for me in regards to my profession. You got the treatment you needed, and that is the important thing. Was there anything else you wanted to talk about today?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist topic: money tblockers
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $player.sec_style.body.tblock = "money">>
<<setTmpEffect 'tblock_eternal'>>
<<addNpcTheme 'npc_psychiatrist' 'transition' "theme_psychiatrist_penis_shrink"
0
'theme_psychiatrist_penis_shrink_1'
false
>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<<addCredits $player.work.payment>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You reply that the testosterone blocker study sounds interesting.<br>
<br>
"@@.npc_psychiatrist;Wonderful! If you could just sign here,@@" she states, passing you a tablet.<br>
<br>
Compared to your employment contract this one is remarkably straightforward, without any hidden clauses or confusion just agree to have a testosterone blocking implant installed and monitored in exchange for compensation.<br>
<br>
"@@.npc_psychiatrist;Lovely! <<=setup.numberInWords($player.work.payment)>> credits will be deposited directly into your account just as soon as we get your new implant installed. Note that this is actually a company-sponsored benefit, Social Interaction Service Syndicate Inc. is quite committed to taking care of its workers!@@"<br>
<br>
Barely has <<=setup.getNpcName("npc_psychiatrist","formal")>> finished speaking when her receptionist walks in and places a small package on the desk.<br>
<br>
"@@.npc_psychiatrist;And here we have your prescription—@@" she pulls out a single medium sized pill.<br>
<br>
You take the pill and <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles.<br>
<br>
"@@.npc_psychiatrist;That sweet little package is more than just a pill — it will implant itself in your body and provide a steady dose of anti-androgens. So much easier than remembering to take something every day, don't you think? Now, what else were you looking to discuss today?@@"
<<else>>
You decline <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> offer.<br>
<br>
"@@.npc_psychiatrist;It was just an idea, was there anything else you wanted to talk about today?@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: volunteer to give therapist a pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('pedicure_kit')>>
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> if she'd like a pedicure and she smiles. "@@.npc_psychiatrist;Oh that sounds quite divine! And if you think that doing such would help in your therapy, well... who am I to argue!@@"<br>
<br>
Sliding out from behind her desk she has already kicked off her shoes and she flutters her feet in your direction.<br>
<br>
<<if setup.getTotalValue("foot") >= 15>>
[@@.link_locked;Refrain from worshipping her feet? Never!@@]<br>
<<else>>
[<<moveTo 'event_psychiatrist_pedicure_2' 'Give her the spa experience.' 600 "<<set $scene.worship=false>>">>]<br>
<</if>>
<<if setup.getTotalValue("foot") < 10>>
[@@.link_locked;No need to go overboard and start worshipping her feet or anything...@@]<br>
<<else>>
[<<moveTo 'event_psychiatrist_pedicure_2' 'Worship her feet.' 600 "<<set $scene.worship=true>>">>]
<</if>>
<<else>>
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> if she'd like a pedicure,
<<if setup.checkItemOwned('pedicure_kit')>>
only to immediately remember that you forgot your supplies for such at home.
<<else>>
feeling immediately foolish as you have none of the tools required to administer such...
<</if>>
<br><br>
You stutter an apology as <<=setup.getNpcName("npc_psychiatrist","formal")>> purses her lips. "@@.npc_psychiatrist;Do not worry about it, only... it is quite curious that you should rush to make an offer that you were unprepared to fulfill... speaking to a general malaise of unpreparedness? Is this an externalisation of feeling caught off guard in your regular life? Something for you to think about... do feel free to come more prepared next time, claiming those small victories can be quite the benefit in preparing oneself for the larger battles.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: give therapist a pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.worship>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<applyExperience 'foot' 17 'unbelievable' $SEEN_FRIEND>>
<<set $player.flags.worshipPedicure.psychiatrist = true>>
<<else>>
<<set $player.flags.basicPedicure.psychiatrist = true>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<if !setup.hasThreshold('foot', 'secretary_foot', 'eager_pedicure')>>
<<applyExperience 'foot' 13 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'foot' 13 'skip' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if !setup.hasThreshold('foot', 'secretary_foot', 'eager_pedicure')>>
<<setThreshold 'foot' 'secretary_foot' 'eager_pedicure'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.worship>>
You don't just massage <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> tiny feet, you worship them. Slipping off her heels you kiss, suck and cradle her toes. The whole time she looks down analytically, attempting to maintain her formal therapist's facade, though you catch a few moments where the mask slips and she has to bite her lip to suppress a moan.<br>
<br>
"@@.npc_psychiatrist;Mmm, yes... you may proceed to cleaning now, I think...@@" She breathlessly instructs and you dart away just long enough to fill a basin with water, salt, and a few drops of oil, to get her in for a sensuous soak.<br>
<br>
Occupying your time as her feet soak you massage her calves, pulling things out just before they start to prune to gently dry with a towel and move on to the manicure proper. She watches as you file and shape before handing you a bottle of polish from her desk drawer.<br>
<br>
"@@.npc_psychiatrist;Such meticulous care...@@" She notes as you go toe by toe, base coat, colour, top coat; you make sure each tiny toenail is polished and shined to perfection before sliding her back into her shoes and sealing it all with a final kiss.<br>
<br>
"@@.npc_psychiatrist;Wonderful — you attend to these things like a priestess of feet, an almost zen-like devotion that really comes out in the quality of your work. Certainly there is the symbolism of service that comes from washing feet, but, beyond that, I think this shows more than just a wonderful selflessness, but a real strength of character and embracing of how to gain joy through service. Simply wonderful.@@"
<<else>>
Sliding to the ground you get to work, taking <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> tiny feet in hand to clean off the old polish and shape, trim and file her cute nails.<br>
<br>
Darting to the changing room you fill your basin with water before adding copious salt and a few drops of oil to let her soak, efficiently utilising the time to massage her calves.<br>
<br>
The whole time you work she watches with a half smile, never saying a word as you wonder what she's thinking of you using your therapy time to lavish care on her feet...<br>
<br>
Drying her off you wash and massage her feet then follow her directions to grab her preferred polish from a desk drawer. Holding the brush carefully as you attend to each tiny toe in turn you finish the job and look up at her for approval.<br>
<br>
"@@.npc_psychiatrist;Very nice! Isn't is so satisfying to deploy a skill, especially when doing so helps another? There's a reason washing feet shows up so much in history, it is such a caring and intimate act... and you have done quite the superb job of it!@@"
<</if>>
<br><br>
You blush at the compliment and pack up your things.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> takes a moment to admire her sparkling toes before smiling back at you. "@@.npc_psychiatrist;So... what would you like to discuss next?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist theme: vagina
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your vagina to <<=setup.getNpcName("npc_psychiatrist","formal")>> and she nods with almost parody levels of seriousness.<br>
<br>
"@@.npc_psychiatrist;Ah, yes, the fabled font of womanhood... not that genitals and gender need have anything to do with each other. I mean, look at me and my lovely little lady penis. Still, if it makes you happy, that smooth, sleek profile, that sensitive clit, those wet folds just begging to be licked and fingered and fucked...@@" The both of you shift in your chairs at her words, the sexual tension in the room suddenly ramping up...<br>
<br>
"@@.npc_psychiatrist;Anyway,@@" she states, her tone a little less breathless as she works to defuse things, "@@.npc_psychiatrist;I think that this change of yours is just lovely, and I am so happy that the technology exists so that we, all of us, can have exactly what we want betwixt our legs.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: psychiatrist theme: penis
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 13 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your <<getWordMyPenis>> to <<=setup.getNpcName("npc_psychiatrist","formal")>> and she smirks.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
"@@.npc_psychiatrist;Isn't it so wonderful to have a nice little penis? Mmm, I just love mine. It doesn't get in the way or intimidate, but remains so sweet and sensitive! I mean, don't get me wrong — all cocks and lady lances are wonderful and valid, but I do so love me a little one.@@"
<<case 2 3>>
"@@.npc_psychiatrist;And a fine member it is! Right in the Goldilocks zone of not too big, not too small. A cock for all occasions!@@"
<<case 4 5>>
"@@.npc_psychiatrist;Yes, and a lovely member it is, a bit above average, but not so large as to scare anyone off. I bet this was what you were imagining way back when you foolishly took those drugs — quite the journey you've been through to get to what you wanted, hmm?@@"
<<case 6>>
"@@.npc_psychiatrist;Yes... and what a member it is! <<if setup.checkNaked()>>So impressive on display!<<else>>Just seeing it through your clothes is a bit intimidating.<</if>> <<if !setup.checkItemTypeWorn("cage")>>Are you sure you don't want to lock it up... for safety?<<else>>Though it being nicely locked up keeps me feeling safe... even if I do find myself imagining a jail-break!<</if>>@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: psychiatrist theme: vag + penis
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your "dual" set of genitals and <<=setup.getNpcName("npc_psychiatrist","formal")>> grins.<br>
<br>
"@@.npc_psychiatrist;All this talk of having it all... and you did it! Congratulations, this is just the sort of self-affirmation sexual confidence that I have wanted for you from the beginning and I wish you many, many orgasms fucking, being fucked... or any combination of the two!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: psychiatrist theme: knot
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your canine-like "knot" that is now part of your penis.<br>
<br>
"@@.npc_psychiatrist;Hmm... what do you think that says, the urge to literally lock yourself into your partner? Lingering issues related to attachment? Or just the realisation that a big canine cock is hot AF and that you want to swell your partner... with pleasure?@@"<br>
<br>
She grins and your member twitches<<if setup.checkItemTypeWorn("cage")>> in its prison<</if>>.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: psychiatrist theme: horse
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up the large, equine-inspired horse-cock that now resides between your legs.<br>
<br>
"@@.npc_psychiatrist;So beautiful and majestic — while we set ourselves apart from the beasts with our intellect... there really is something enticing about the primal power of the animal kingdom. When you think of a horse — so big and strong, literally synonymous with power, conjuring thoughts of freedom and endurance... well, it is no wonder that one might seek to claim some of that power for themselves... to say nothing of the choker-popping, stomach-bulging ecstasy that it can induce with a partner.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: psychiatrist theme: dragon
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your fantastical dragon cock and <<=setup.getNpcName("npc_psychiatrist","formal")>> grins.<br>
<br>
"@@.npc_psychiatrist;It is my firm belief that all cocks are equally wonderful and glorious, but I will admit that the sight and thought of yours — from its thick knot, to its womb-probing length, to that flared head... well, it is no less than magnificent, something to be proud of as much as it will inspire lust in those who even here hint of its legend.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: psychiatrist theme: balls
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your balls.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles pleasantly. "@@.npc_psychiatrist;Such a curious thing they are — so vulnerable just hanging out there... and yet vital to the continuation of the species... plus, well... they can be quite fun to play with, or torture... if that's your thing.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: psychiatrist theme: noballs
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your lack of testicles.<br>
<br>
"@@.npc_psychiatrist;An interesting choice — do you think it was because you wanted to look sleeker, sexier? Or maybe just remove the perceived vulnerability... or perhaps it was just to get rid of the producers of icky testosterone? In any case, I am glad you have had the courage to take this step towards the body of your dreams.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: psychiatrist theme: breasts
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive breasts.<br>
<br>
"@@.npc_psychiatrist;So big and beautiful... boobs are lovely in the first place, but anyone who would choose such massive melons, well... it's a statement, really drawing the attention, shouting your status as a sexual — and sexualizable being. In other words: I love them, I think they look fucking hot on you, and seeing you strut around with them fills me with pride. A literal testament to how much you've grown<<if $player.sec_style.body.breasts != "enthusiast">> since our first meeting<</if>>.@@"
<<case 'large'>>
large breasts.<br>
<br>
"@@.npc_psychiatrist;Yes, there really is something about a nice rack, isn't there,@@" she grins and jiggles her own perfect orbs. "@@.npc_psychiatrist;From the moment I first saw you I thought "now there is someone who would look good with tits..." I am so glad to see you not only agree, but have acted to make such a reality!@@"
<<case 'medium'>>
medium-sized breasts.<br>
<br>
"@@.npc_psychiatrist;Such a fine pair they are! Not too big, not too small, just enough to draw the eye without being an undue burden... perhaps symbolic of your perspective in general? Something for you to think about.@@"
<<case 'small'>>
small breasts.<br>
<br>
"@@.npc_psychiatrist;Such cute breasts — enough to give you shape, but keep a hint of boyish charm. Yes, they are simply lovely on you, and I applaud you for them.@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: psychiatrist theme: nobreasts
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up your flat chest to <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
<br>
She nods.
<<switch $npc_psychiatrist.flags.knowgender>>
<<case 'male' ''>>
"@@.npc_psychiatrist;Of course such is expected for the societal standard view of masculinity... though, you never know, a pair of tits are just so much bouncy fun, maybe you'd enjoy experimenting? Or not. The technology exists for you to have the perfect body you want. Take advantage of it!@@"
<<case 'agender'>>
"@@.npc_psychiatrist;A reasonable choice, given your sort of opting out of the whole gender thing — who needs secondary sexual characteristics, hmm?@@"
<<case 'fluid'>>
"@@.npc_psychiatrist;A reflection of your fluid approach to gender? Though, I suppose I could say the same thing if you had breasts. Yes, mix and match to make a gender of your own really does have its perks!@@"
<<case 'female'>>
"@@.npc_psychiatrist;An interesting choice... I wonder if, as a woman, you might prefer some breasts? Of course it isn't required but... well, I think they would look very lovely on you, at any size. Though that is not to pressure you! You certainly look very cute as it. Just an idea.@@"
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 300>>
</div>/*#
#desc: talk to psychiatrist about the bodyshop
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You mention the New U Bodyshop that recently opened.<br>
<br>
<<if State.hasPlayed("event_bodyshop_wake_1")>>
You add on that you've visited and, well, they are capable of some amazing work.
<<else>>
You note that you haven't had anything done yet, but you've heard some pretty miraculous stories about modern medical procedures.
<</if>>
<br><br>
She nods. "@@.npc_psychiatrist;Yes, the feats my surgical contemporaries can accomplish are quite impressive. Oh, isn't the march of medicine amazing? Body and mind... perfected.@@" She smiles in obvious professional pride. "@@.npc_psychiatrist;So, were you thinking of availing yourself of their services? Remember — this is an opportunity. What genitals you have don't mean anything save what importance you attach to them yourself, but you have the opportunity to get the body that matches what YOU want. Seize it.@@"<br>
<br>
[<<moveTo "event_psychiatrist_theme_bodyshop_2" "You weren't planning on changing anything." 60 "<<set $scene.option='none'>>">>]<br>
<<if $player.body_ref.penis>>
<<if $player.body.penissize[1] == 6>>
[@@.link_locked;Your <<getWordMyPenis>> is already as large as medical science is safely capable of providing.@@]<br>
<<else>>
[<<moveTo "event_psychiatrist_theme_bodyshop_2" "You were contemplating a bigger penis." 60 "<<set $scene.option='grow'>>">>]<br>
<</if>>
<<if $player.body.penissize[1] <= 0>>
[@@.link_locked;Your <<getWordMyPenis>> is already as small as it can be.@@]<br>
<<else>>
[<<moveTo "event_psychiatrist_theme_bodyshop_2" "You were contemplating a smaller penis." 60 "<<set $scene.option='shrink'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_theme_bodyshop_2" "You were thinking about removing your penis." 60 "<<set $scene.option='vagina'>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_theme_bodyshop_2" "You were thinking about getting a penis." 60 "<<set $scene.option='penis'>>">>]<br>
<</if>>
<<if !$player.body_ref.penis || !$player.body_ref.vagina>>
[<<moveTo "event_psychiatrist_theme_bodyshop_2" "You were contemplating a dual-genital situation." 60 "<<set $scene.option='both'>>">>]
<</if>>
</div>/*#
#desc: talk to psychiatrist about the bodyshop procedures
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.option>>
<<case 'none'>>
You tell <<=setup.getNpcName("npc_psychiatrist","first")>> that you weren't thinking about getting anything done.<br>
<br>
"@@.npc_psychiatrist;I see, well, as your therapist I hope that means that you are satisfied with the state of your current genitalia? In which case, wonderful. Being euphoric about one's own body, well... that is always the goal, and towards such we in the medical profession strive to assist in bringing to realisation.@@"
<<case 'grow'>>
You tell <<=setup.getNpcName("npc_psychiatrist","first")>> that you were thinking of getting a larger <<getWordMyPenis false>>.<br>
<br>
She chuckles. "@@.npc_psychiatrist;Still chasing the dream of the large penis? Well, if that is what you desire this is the way to do it: safely, performed by a licensed expert. I really do not understand why people still try to use shady drugs and unverified, and often dangerous, exercises. The technology exists to do this sort of thing safely and almost at-will, use it!@@"
<<case 'shrink'>>
You tell <<=setup.getNpcName("npc_psychiatrist","first")>> that you were thinking of a smaller <<getWordMyPenis false>>.<br>
<br>
She smiles, and you find yourself thinking about her own small <<getWordPenis false>>. "@@.npc_psychiatrist;Obviously I am a bit biased but... well, sometimes smaller is better, no unsightly bulge, no scaring partners off, doesn't get in the way... of course what works for me is a personal decision but, if you want to keep it small, well, I obviously support you in this decision.@@"
<<case 'vagina'>>
You tell <<=setup.getNpcName("npc_psychiatrist","first")>> that you were thinking about getting SRS to have a vagina.<br>
<br>
She nods. "@@.npc_psychiatrist;Many in your position make such a decision and if it right for you, well... go for it! Note that the procedure is literally a switch — nothing is removed, merely re-configured contrary to some popular myths. Which, really... we all of us start with a vagina before testosterone comes in to muck with things. Just remember that genitals are only what you make of them — do what aligns with your personal image, do not worry about ascribing to any popular conception of what you "should" want, that's just gate-keeping, pardon my use of the common vernacular — bullshit.@@"
<<case 'penis'>>
You tell <<=setup.getNpcName("npc_psychiatrist","first")>> that you were thinking about getting SRS to go back to having a penis.<br>
<br>
She nods, "@@.npc_psychiatrist;Changed your mind? That is quite fine, we can only make decisions with the information we have. New information? New decision, revising once view over time is the mark of a properly developed mind, clinging to the past in the face of fresh experience can be quite harmful. Find your path, I am her to support and encourage you along the way, but the journey remains your own.@@"
<<case 'both'>>
You bite your lip as you relay to <<=setup.getNpcName("npc_psychiatrist","first")>> your somewhat naughty dream of having cock and pussy.<br>
<br>
She grins. "@@.npc_psychiatrist;My, my, wouldn't Freud have a field day with THAT! Of course Freud was an opium fiend and is antiquated and wrong, so who cares? Still, it is an amusement for one in my profession... as to the matter at hand, well... the technology exists, if that is what you want to be, realise it!@@"
<<default>>
ERROR: unexpected scene.option <<=$scene.option>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist, talk about landlord helping you when washing machine immolated
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
First you go into detail about the worst day in your life. How you are responsible for the loss of the Nintendolls data from their new game prototype, and how it was all downhill from there. You got fired only days after you broke up with your girlfriend, and after having a glimmer of hope in the form of being offered your secretary job, your washing machine exploded taking your remaining male underwear with it. And then <<=setup.getNpcName('npc_landlord', 'first')>> showed up. <<His npc_landlord>> stoic calm had a soothing effect on your psyche. If not for <<him npc_landlord>>, you're sure you would have had a nervous breakdown right there.<br>
<br>
"@@.npc_psychiatrist;Well, this <<=setup.getNpcName('npc_landlord', 'first')>> seems to be a person of great character and I think... oh... you were not yet done? Please continue then.@@"<br>
<br>
And then you mention how you were naked the whole time.<br>
<br>
"@@.npc_psychiatrist;Oh. Now, we are getting somewhere. And how did that make you feel? You say <<his npc_landlord>> eyes were glued to your body for a few seconds. It sounds to me like... <<he npc_landlord>> liked what <<he npc_landlord>> saw?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_landlord_1_ashamed" "I felt ashamed." 300>>]<br>
[<<moveTo "event_psychiatrist_session_landlord_1_desired" "I felt... desired." 300>>]
</div>/*#
#desc: psychiatrist topic, say you were ashamed for landlord to see you exposed in front of him
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.landlord_1 = 'ashamed'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Well, being ashamed is a natural reaction in this situation. Considering the stress you've been exposed to. But your body is nothing to be ashamed of, especially since you were within your own four walls, and your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> only entered because of the ongoing emergency. I think... no I am sure, your shame was not caused by your bareness, but because of the way you felt during your callowness. So, <<=setup.getNpcName('npc_landlord', 'full')>>, a <<man npc_landlord>> of character. How would you describe <<him npc_landlord>>?@@"
<br><br>
You tell her the few details you know about <<him npc_landlord>>. <<He npc_landlord>> served during the war, even though you have no idea what rank <<he npc_landlord>> possessed. The augmentation in <<his npc_landlord>> arms and legs seem to be the result of injuries from the war, and <<he npc_landlord>> is doing a very good job as a <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> and housekeeper. For some unknown reason <<he npc_landlord>> absolutely hates automated money transfer, so <<he npc_landlord>> visits everyone in the house at the first of each month to collect the rent manually. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> talked a lot to <<him npc_landlord>> and normally handled the rent.<br>
<br>
"@@.npc_psychiatrist;Maybe your shame is the result of you being looked at by <<=setup.getNpcName('npc_landlord', 'first')>> with a certain desire, and you currently have no idea how to handle this information.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic, say you felt desired by how landlord looked at you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.landlord_1 = 'desired'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Your answer causes <<=setup.getNpcName('npc_psychiatrist', 'first')>> to raise an eyebrow.<br>
<br>
"@@.npc_psychiatrist;Oh, did it? Very good. Being true to yourself is very important at this stage of your development. So, <<=setup.getNpcName('npc_landlord', 'full')>>, a <<man npc_landlord>> of character. How would you describe <<him npc_landlord>>?@@"<br>
<br>
You tell her what few details you know about <<him npc_landlord>>. How <<he npc_landlord>> served during the war, even though you have no idea what rank <<he npc_landlord>> possessed. The augmentation in <<his npc_landlord>> arms and legs seem to be the result of injuries from the war, and <<he npc_landlord>> is doing a very good job as a <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> and housekeeper. For some unknown reason <<he npc_landlord>> absolutely hates automated money transfer, so <<he npc_landlord>> visits everyone in the house at the first of each month to collect the rent manually. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> talked a lot to <<him npc_landlord>> and normally handled the rent.<br>
<br>
"@@.npc_psychiatrist;<<He npc_landlord>> seems like <<if $npc_landlord.fem>>a nurturing person, so it is only natural for you who is going through a large change in life<<else>>an alpha male, so it is only natural for you<<if $npc_psychiatrist.flags.knowgender == "female">> as a... non-alpha male<</if>><</if>> to be drawn towards <<him npc_landlord>>. Maybe talk with <<him npc_landlord>> a little bit when you see <<him npc_landlord>> the next time. Use your chance, since your girlfriend is gone, to get to know <<him npc_landlord>> better, if that is what you desire.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic, talk about greetin landlord at your door naked or in female clothing
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<if $player.flags.landlordsawyouinfemaleunderwear || $player.flags.landlordsawyouinfemaleclothing>>
<<set $npc_psychiatrist.flags.knowsyoucrossdress = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, <<=setup.getNpcName('npc_landlord', 'full')>>, and the strange encounters you've had with <<him npc_landlord>> lately.
<<if $player.flags.landlordsawyouinfemaleunderwear || $player.flags.landlordsawyouinfemaleclothing>>
You tell her about the time you answered the door to <<=setup.getNpcName('npc_landlord', 'first')>>, while wearing female clothing. How you were visible to everyone in the hallway, which was luckily just your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, and <<his npc_landlord>> rather peculiar reaction to the whole scene.<br>
<br>
<<else>>
You tell her about the time you answered the door to <<=setup.getNpcName('npc_landlord', 'first')>>, while wearing nothing at all. How you were visible to everyone in the hallway, which was luckily just your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, and <<his npc_landlord>> rather peculiar reaction to the whole scene.<br>
<br>
<</if>>
"@@.npc_psychiatrist;Well, if this would have been a stressful encounter, this could be excused as pure coincidence. But you knew who was at the door, and you had time to change your clothes. It seems to me you did this on purpose. I know, we can all be cranky and slow in the head before our first coffee, but I don't think I've ever opened a door naked except on purpose.@@" That last remark being underscored by a playful smile.
<<if $npc_psychiatrist.flags.landlord_1!="">>
"@@.npc_psychiatrist;And since you already admitted that you had an encounter of similar nature, I assume you did this to prompt a certain reaction from your dear <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.@@"
<<else>>
"@@.npc_psychiatrist;I do not know what happened between the two of you before, but I can only assume you did this to prompt a certain reaction from your dear <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.@@"
<</if>>
<br><br>
She puts her hands together forming a triangle while leaning on the desk.<br>
<br>
<<if $player.sec_style.clothing.female == "enthusiast">>
"@@.npc_psychiatrist;You need to understand that these sorts of encounters are to be expected as you run into prior acquaintances wearing your new, more feminine attire.
<<if $player.flags.landlordsawyouinfemaleunderwear>>
Now... it being in just your underthings, well... that is perhaps a bit much, but, then again, if everyone is consenting, who am I to say?
<</if>>
The first time or two can be a bit stressful, but before long your new attire will just be your attire. Now, as to your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, well... you said yourself you wanted to thank <<him npc_landlord>> for helping you out lately, and if this makes <<him npc_landlord>> happy, why not? Looks like a win-win situation to me! Sometimes small gestures have the most impact.@@"
<<else>>
"@@.npc_psychiatrist;Now hear me out, before you start protesting: You heard the bell, and then what? Forgot that you were wearing nothing
<<if $player.flags.landlordsawyouinfemaleunderwear|| $player.flags.landlordsawyouinfemaleclothing>>
but your newly found fetish for female undergarments?
<<else>>
at all?
<</if>>
Kind of hard to believe, don't you think? It would have taken seconds to throw something over your "special" apparel, but you decided to strut out the door and to show off how good you look. Understandable. It's pretty much the same reason I wear this instead of some boring old pantsuit. You said yourself you wanted to thank <<him npc_landlord>> for helping you out lately, and if this makes <<him npc_landlord>> happy, why not? Looks like a win-win situation to me! Sometimes small gestures have the most impact.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: cleaning landlord's apartment
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about cleaning <<=setup.getNpcName('npc_landlord', 'first')>>, your <<if $npc_landlord.fem>>landlady's<<else>>landlord's<</if>> apartment to get a reduction in your monthly rent.<br>
<br>
"@@.npc_psychiatrist;How kind of <<him npc_landlord>> to give you such an opportunity. Keep in mind that, though it may have started merely transactional, these sorts of things can take on a life of their own. It is like the old saying goes — if you clean your own place, all you did was... clean your place, but if you help clean someone else's home, you have helped them...@@"<br>
<br>
You nod and think on that before continuing on.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: seducing landlord
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_landlord.stage > 1>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'landlord', 'theme_psychiatrist_landlord_15')>>
<<set $npc_psychiatrist.themes.landlord[_themeId].repeatable = false>>
<<set $npc_psychiatrist.themes.landlord[_themeId].done = 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $npc_landlord.stage > 1>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about how you seduced <<=setup.getNpcName('npc_landlord', 'first')>>, your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.<br>
<br>
"@@.npc_psychiatrist;Ah, what a lovely tale. I can only imagine how blessed <<he npc_landlord>> must feel to know that such a wonderful person as yourself showed such interest in <<him npc_landlord>>. As to where you go from here well... based on our prior discussions I know this has been some time coming, but it is my impression that a <<man npc_landlord>> such as this, though a challenge to hook in the first place, once you have drawn <<him npc_landlord>> in <<he npc_landlord>> will make for a caring, kind and devoted partner. I wish you continued fortune as your relationship progresses, however long that may take.@@"<br>
<br>
You thank her for her encouraging words and continued assistance, feeling tingly at the thought of developing a deeper relationship with the reserved, but gentle, <<man npc_landlord>>.
<<else>>
You discuss your unsuccessful attempt to seduce <<=setup.getNpcName('npc_landlord', 'first')>>, your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> after thoroughly cleaning <<his npc_landlord>> flat.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> consoles you as you explain your failure. "@@.npc_psychiatrist;There, there, I know your relationship with your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> has been developing for a while but, well... some <<if $npc_landlord.fem>>women<<else>>men<</if>> are just a little slow on the uptake. <<He npc_landlord>> is probably afraid of misinterpreting things, I recommend doing what you can to make <<him npc_landlord>> happier, to put <<him npc_landlord>> more at ease. It may be a slow process, but I believe if you focus first on strengthening the bonds of friendship upgrading to something more will come into reach.@@"<br>
<br>
You agree that makes sense and thank her for the recommendation.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: landlord invites to dinner
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the delightful, and delicious, date you had with <<=setup.getNpcName('npc_landlord', 'first')>> at <<his npc_landlord>> flat.<br>
<br>
"@@.npc_psychiatrist;That sounds so lovely, and so simple... but sometimes that's what we need? Just a kind <<man npc_landlord>> and a fine meal to provide some comfort and reprieve from the craziness of this modern world. I'm glad you found someone like that, and I encourage you to hold on to it. A good man, or woman can be so hard to find.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: landlord dinner date
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about how you got <<=setup.getNpcName('npc_landlord', 'first')>> to take you out to dinner.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> chuckles as you describe the challenge of you convincing <<=setup.getNpcName('npc_landlord', 'first')>> that you were happy to be seen in public with <<him npc_landlord>>. "@@.npc_psychiatrist;<<if $npc_landlord.fem>>People<<else>>Men<</if>> can be so silly, can't they? I think the two of you are good for one another, <<his npc_landlord>> kindness and maturity, your energy... yes, from what you say it is proving quite the lovely pairing! And to think that you spent so long barely noticing <<him npc_landlord>> as just your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, it really is quite astounding the depths that the most innocuous people can have to them, hmm?@@" She smiles, and you think about how that could have just as well applied to yourself... back when you were just a boring IT worker...<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: landlord cabin weekend
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the weekend you spent with <<=setup.getNpcName('npc_landlord', 'first')>> at <<his npc_landlord>> cabin.<br>
<br>
"@@.npc_psychiatrist;Oh that sounds so wonderfully romantic! It's nice to get away from the city from time to time, isn't it? And spend the time as a happy maid... well, I can tell from the smile on your face as you describe it just how much you enjoyed your time. You and <<=setup.getNpcName('npc_landlord', 'first')>> have come so far in your relationship together... you know, while it is not exactly my specialization, I could do a couples therapy session for the two of you. Understand that this is not because there is anything wrong, far from it, but that therapy can always be useful in helping build a stronger foundation of relationship. Certainly flirting and new love is wonderful... but sometimes we can skip past more serious matters. Having a nice neutral field to discuss and practice communication is a sign of maturity, and great potential tool for the two of you going forward... so, as I said, offer is open, if you wanted to set something up in lieu of one of your normal sessions.@@"<br>
<br>
You blush slightly as your heart thrills further at the memory of that idyllic weekend and tell her you'll keep her offer in mind.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: tell landlord love him
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about telling <<=setup.getNpcName('npc_landlord', 'first')>> that you love <<him npc_landlord>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> beams with pride. "@@.npc_psychiatrist;Love! Oh, I am so happy for you. To be able to open yourself like that, after all you've been through... well, I am glad for whatever part I have taken in your process of healing, though much of the credit goes to you having found such a lovely <<man npc_landlord>> to be worthy of such a word. I wish the both of you the best of fortune.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: landlord club date
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the exciting, intriguing, and erotic evening you spent with <<=setup.getNpcName('npc_landlord', 'first')>> at the <<printShopName 'sex_club'>> fetish club.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> grins. "@@.npc_psychiatrist;Oh, I wish I could have seen that! The way you describe your <<man npc_landlord>> all decked out in leather...<<if State.hasPlayed('event_sexclub_date_landlord_4_shine')>> <</if>><<if $npc_landlord.flags.sex_club_retention>>learning about <<his npc_landlord>> past, <</if>><<if State.hasPlayed('event_sexclub_date_landlord_6_play_3')>>seeing <<his npc_landlord>> hidden skills, <</if>> well it sounds like quite the wonderful evening, and further proof that the two of you make for quite the match... even if <<he npc_landlord>> still seems to need the odd cajoling!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: landlord collar
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about <<=setup.getNpcName('npc_landlord', 'first')>> granting you <<his npc_landlord>> collar.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> smiles as you raise your chin for her to look at the lovely collar around your throat. "@@.npc_psychiatrist;I was wondering about that, such a gorgeous piece, and a touching gift. Yes, this relationship you've formed, well... it is quite the beautiful one, and so much credit goes to you for seeing the sweet <<man npc_landlord>> inside <<=setup.getNpcName('npc_landlord', 'first')>> and drawing <<him npc_landlord>> out. I wish you — and your formally recognised <<Master npc_landlord>>, the best of fortunes, though it seems like you are quite adept at making your own luck!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about drinking manager's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain how you offered to help your manager with her need to urinate and ended up drinking her piss in the so-called "Executive Bathroom." <br>
<br>
"@@.npc_psychiatrist;Oh, that must have been quite the experience!@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> states as she slides forward in her seat in obvious interest. "@@.npc_psychiatrist;Some people take issue with urine but, speaking as a medical doctor, there's really nothing to be concerned about. So long as your source is healthy, it is sterile and of no harm. So, tell me, how did it feel? How did it taste?@@"<br>
<br>
/* note: couldn't be here without piss of at least 5 */
<<if setup.getTotalValue("piss") >= 10>>
[<<moveTo "event_psychiatrist_session_manager_piss_drinking_2_enjoy" "Tell the truth and say you loved it." 1 "<<set $scene.lie=false>>">>]<br>
[<<moveTo "event_psychiatrist_session_manager_piss_drinking_2_dislike" "Lie and say you hated it." 1 "<<set $scene.lie=true>>">>]
<<else>>
[<<moveTo "event_psychiatrist_session_manager_piss_drinking_2_enjoy" "Lie and say you enjoyed it." 1 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_manager_piss_drinking_2_dislike" "Say you hated it." 1 "<<set $scene.lie=false>>">>]
<</if>>
</div>/*#
#desc: tell psychiatrist you enjoyed drinking manager's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<else>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
You can tell immediately that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> has seen through your lie but she does not confront you about it. If anything she is almost... pleased?<br>
<br>
<<printThought "By accepting my lie... is she hoping it becomes my truth?">><br>
<br>
"@@.npc_psychiatrist;Hmm, interesting. Of course enjoying that sort of thing is perfectly fine, as I said, though you saying that did surprise me a little, it's like I am always peeling away new layers to find out more about you!@@"
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles as you gush — no pun intended, about how much you loved drinking your <<=ps(setup.getNpcName('npc_manager', 'title'))>> <<getWordPiss>>, or really, any <<getWordPiss>>.
<</if>>
<br><br>
"@@.npc_psychiatrist;So I was going to wait until after our session but... well... I REALLY do need to pee, do you think you could help me out? In a completely professional manner, of course.@@"<br>
<br>
You can't quite tell if she's joking <<if $scene.lie>>but if not you're now faced with the question of how far you'll go to maintain your lie...<<else>>but there is no denying that her offer intrigues you.<</if>>
<br><br>
[<<moveTo "event_psychiatrist_session_manager_piss_drinking_3_accept" "Agree to drink her piss.">>]<br>
[<<moveTo "event_psychiatrist_session_manager_piss_drinking_3_decline" "Decline her offer.">>]
</div>/*#
#desc: tell psychiatrist you disliked drinking manager's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
She frowns. "@@.npc_psychiatrist;Come on, now! All these times I have told you to explore your interests and embrace your true self and still you lie to me!@@"<br>
<br>
She shakes her head. "@@.npc_psychiatrist;I suppose there is nothing for it but to take more... extreme measures and help you confront your truth.@@"<br>
<br>
She rises to her feet and whips out her cute girl-cock. "@@.npc_psychiatrist;Get over here you <<if $fetish.sissy>>sissy <</if>>toilet slave and guzzle my piss!@@"<br>
<br>
When she's right, she's right. Why deny your depraved desires?<br>
<br>
[<<moveTo "event_psychiatrist_session_manager_piss_drinking_3_accept" "Drink her piss.">>]<br>
[<<moveTo "event_psychiatrist_session_manager_piss_drinking_3_decline" "Stand firm and decline.">>]
<<else>>
You re-affirm that you in no way enjoyed serving as your <<=ps(setup.getNpcName('npc_manager', 'title'))>> urinal, and, besides, you weren't even good at it...<br>
<br>
"@@.npc_psychiatrist;Interesting, interesting... would you like to be good at it? I know you spend so much time focused on gaining her approval... you know, really, piss isn't that bad, just some water, a bit of nitrogen... there are many societies where consuming it is quite normal, even sacred in some cases! For us it is mostly just a psychological hang-up due to society, a focused person, like yourself, could easily move past that and develop a palate for it just as one might develop a taste for fine brandy.@@"<br>
<br>
<<printThought "Wait... is she telling me I should learn to enjoy drinking piss?">><br>
<br>
"@@.npc_psychiatrist;Anyway, just something to think about. I daresay that, once the offer is on the table, well... you can't put the cat back in the bag, as they say. I am sure you will figure out what is best, so, is there anything else you wanted to talk with me about today?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: accept offer to drink psychiatrist's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.maxTag == 'sissy' || $scene.maxTag == 'slutty' || setup.getIndecentValue()>90 || setup.getTotalValue("piss") > 8>>
<<set $scene.pissdrinker = true>>
<<applyExperience 'piss' 13 'very' $SEEN_FRIEND>>
<<addCredits 10>>
<<set $npc_psychiatrist.flags.drank_piss = true>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<else>>
<<set $scene.pissdrinker = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.pissdrinker>>
<<if setup.getTotalValue("piss") > 15>>
Eager for your "drink," you rush around to the side of her desk before <<=setup.getNpcName('npc_psychiatrist', 'formal')>> has even finished hiking up her skirt and revealing her sweet girl-cock.
<<elseif setup.getTotalValue("piss") >= 10>>
You wonder how she'll taste compared to the other "vintages" you have sampled as you stand and walk over to the side of her desk. By the time you make it around, she is standing in waiting, her skirt raised and her sweet girl-cock revealed.
<<else>>
Reluctantly you make your way around the desk to where <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is already hiking up her skirt and pulling out her sweet girl-cock.<br>
<br>
<<printThought "Why am I going so far to preserve a lie... or is it not a lie? Is drinking <<getWordPiss>> something I really want to do?">>
<</if>>
<br><br>
Dropping to your knees, you open your mouth and look up as she slides her soft, delicate penis between your lips.<br>
<br>
You suck softly as she lets out a sigh of relief and begins filling your mouth with her delicately flavoured <<getWordPiss>>.<br>
<br>
<<if setup.getTotalValue("piss") >= 10>>
She tastes delicious, mild as is typical of one who practices good hydration yet with subtle depths of flavour that reward contemplation rather than being in any way watery.
<<else>>
You suppose you should be glad that she apparently stays well hydrated, her <<getWordPiss>> watery, its flavour easy to ignore if you gulp quickly.
<</if>>
<br><br>
"@@.npc_psychiatrist;Mmm, well done! I wish all of my patients made such fine urinals.@@"<br>
<br>
Swallowing the last drops and cleaning your lips, you almost don't catch her words, temporarily stunned as she tucks her penis away and returns to her seat.<br>
<br>
<<printThought "Wait... I'm not her only client to drinks her piss?">><br>
<br>
"@@.npc_psychiatrist;Oh! I nearly forgot — I imagine you would consider yourself as more of a "pay toilet," hmm?@@" She chuckles at her joke, passing you a few credits.<br>
<br>
"@@.npc_psychiatrist;Oh, you are just too cute! I'm feeling quite refreshed, so thank you for that. What else would you like to talk about?@@"
<<else>>
You start to rise only for her to laugh gently.<br>
<br>
"@@.npc_psychiatrist;My, my, you are just too obediently gullible! That sort of naivete could get you into trouble some day! Of course I was joking! You're my client, not my urinal! Well... I suppose you could be a client AND a urinal, but no... I don't think so, not today, at least.@@"<br>
<br>
<<printThought "Wait... what?">><br>
<br>
<<if setup.getTotalValue("piss") >= 10>>
You're honestly a bit disappointed, but it would probably be against your overall therapeutic plan for you to beg to drink her <<getWordPiss>>. Ignoring the implications of what she just said, you try to distract yourself with other thoughts.
<<else>>
Too grateful at being saved from having to drink her <<getWordPiss>>, you try to ignore the implications of what she just said and think about something else.
<</if>>
<</if>>
<br><br>
<<printThought "This has to be one of the weirdest psychiatrists in the world, but maybe that's what I need given my unusual situation?">><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: turn down psychiatrist's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pissdrinker = (($scene.maxTag == 'sissy') || (setup.getIndecentValue()>95))>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.pissdrinker>>
She seems surprised at the firmness of your denial but she silently accepts it, settling back in her chair and nodding for you to continue.
<<else>>
She laughs, defusing the tension and making you feel suddenly quite foolish at the sternness of your refusal.<br>
<br>
"@@.npc_psychiatrist;Oh, you thought I was serious? Oh you are just too naive sometimes! To think, me just pissing down your throat, right in the middle of my office! That bitter lemonade flowing over your tongue, filling your belly with each gulp until you have drained me dry, licking me clean of every last drop, your thirsts somehow incompletely sated... what a perverted mind you have!@@"<br>
<br>
Smiling back at you, she somehow has you feeling at ease, as if what just happened was the most perfectly normal thing in the world.
<</if>>
<br><br>
"@@.npc_psychiatrist;So, what else would you like to discuss today?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about refusing to drink manager's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how <<=setup.getNpcName('npc_manager', 'formal')>> once again asked you to drink her <<getWordPiss>> but that you refused.<br>
<br>
"@@.npc_psychiatrist;My, my@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with a raised eyebrow. "@@.npc_psychiatrist;Refusing <<=setup.getNpcName('npc_manager', 'first')>>? You must have been wearing your big girl pants to work that day! What happened next?@@"<br>
<br>
You explain that she just left and she went to the bathroom without saying anything.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems almost disappointed? But she hides it quickly behind her normal professionally interested, demeanour.<br>
<br>
"@@.npc_psychiatrist;Well, that is a surprise, still, you must remember what they say about poking dragons. Do you regret your decision?@@"<br>
<br>
<<if setup.getTotalValue("piss") > 15>>
She doesn't even need to finish the sentence before you realise that yes, you do. Your mouth is watering even now at the mere thought of how delicious <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordPiss>> is, how you want to feel it running down your face, warm and pungent, for you to guzzle and lick up every amber droplet...<br>
<br>
Realising you haven't said anything, you quickly stammer out something about how, well, you really do like how she tastes and you aren't sure why you rejected her offer...
<<elseif setup.getTotalValue("piss") >= 10>>
You pause for a moment, considering her question, meekly replying that, actually, you've grown to quite like the taste of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordPiss>> but, well, you can't quite explain what you were thinking...
<<else>>
You quickly explain that you don't like the taste of <<getWordPiss>>, and that it's disgusting.
<</if>>
<br>
"@@.npc_psychiatrist;You know... technically you didn't answer my question...@@" She smiles and chuckles a little at your consternation. "@@.npc_psychiatrist;Do not worry about what you tell me, worry about what you tell yourself. In that, well... I think you should focus on the truth, on considering what the right thing is, and if the opportunity presents itself in the future? Act accordingly.@@"<br>
<br>
<<printThought "Is she telling me to drink <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordPiss>>? Wait... does coming to that conclusion mean that's what I think is the right thing to do?">><br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about being severely punished for refusing to drink manager's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain the brutal punishment inflicted on you for your total refusal to drink <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordPiss>>. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> expresses sympathy at all the right times though you can tell that she seems quietly quite enamoured by the description of your predicament.<br>
<br>
You finally reach the end, and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> finishes a few final notes before giving her assessment.<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName('npc_manager', 'first')>>, sorry <<=setup.getNpcName('npc_manager', 'other')>> is quite inventive, isn't she? Well, really, there is not much to say — you, to put a not-so-polite spin on it — fucked up and even when given the opportunity to atone for your mistakes you only doubled down on failure.@@"
<br>
She shakes her head. "@@.npc_psychiatrist;While, as your therapist, I am, of course, sympathetic, I would be remiss not to point out the foolishness of your actions. Your relationship with <<=setup.getNpcName('npc_manager', 'other')>> is, of course, a complicated one, but you had to know that such flagrant flaunting of her authority would come with consequences. For the sake of your mental, as well as physical, well-being, I can only advise you to be much more prudent in your actions in the future. Certainly she will enjoy a measure of playfulness but outright disobedience?@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns and shakes her head.<br>
<br>
<<printThought "I guess she's right, I mean, I've been working long enough I should know the rules...">><br>
<br>
"@@.npc_psychiatrist;Now then, with that messy business out of the way, what else would you like to discuss?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about being punished for refusing to drink manager's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain the brutal punishment inflicted on you in retribution for your refusal to drink <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordPiss>>, and how, though you did your best, you were unable to quite rise to the occasion and properly prove your contrition when given the opportunity.<br>
<br>
Having listened to your tale with rapt interest, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> finally speaks. "@@.npc_psychiatrist;Well, that sounds like quite an intense scene you shared. While you have my sympathies, of course, I will confess that you also sparked a bit of envy. For <<=setup.getNpcName('npc_manager', 'other')>> to act as she did well... it shows that she really cares about you, and your attempt, even in failure, to return that devotion is quite touching.@@"<br>
<br>
"@@.npc_psychiatrist;As for what advice I could give... well, I think you already know, don't you? As always, you must look within, find your inner strength and use that to be the best you that you can be.@@"<br>
<br>
She smiles. "@@.npc_psychiatrist;Oh, I feel so privileged to be a part of your journey... speaking of journey, has anything else happened of late that you would like to talk about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about being punished, but earning her respect, after refusing to drink manager's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how your shameful refusal to drink <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordPiss>> resulted in her giving you a corrective punishment. Going into great detail about exactly what was done to you, you finish off explaining how, thanks to your <<=ps(setup.getNpcName('npc_manager', 'title'))>> generosity, you were able to learn your lesson.<br>
<br>
"@@.npc_psychiatrist;Learn, indeed! I daresay listening to you describe the raw intensity of that experience... well it has me feeling more than a touch aroused myself! Truly to have a devoted <<if $fetish.sissy>>sissy<<else>>girl<</if>> like yourself is a dream come true and I can see why <<=setup.getNpcName('npc_manager', 'first')>>, I mean <<=setup.getNpcName('npc_manager', 'other')>>, is so protective.@@"<br>
<br>
She notices your slight surprise at her assessment.<br>
<br>
"@@.npc_psychiatrist;Don't believe me? Think about it — think about how much time she took out of her work, how long she must have sat watching, waiting for you to fall, before she stepped in as your saviour to teach you the lesson you needed to learn. Certainly, some might call her lessons harsh, but I think we both know enough to agree that while they were certainly that they were also EXACTLY what you needed.@@"<br>
<br>
You find yourself blushing, then nodding at her assessment, finally looking back up to see <<=setup.getNpcName('npc_psychiatrist', 'formal')>> staring back with a wistful smile. "@@.npc_psychiatrist;I thank you for being willing to share such a private moment with me, as your therapist, but aside from that well... I think you already learned all you need to know and that you hardly need my advice in this matter.@@"<br>
<br>
She chuckles, "@@.npc_psychiatrist;Of course, that doesn't mean therapy doesn't still have things to offer! What else has happened to you lately that I can help you work though?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: being forced to work in Executive Bathroom because you wouldn't drink manager's piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain how, after failing to drink <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordPiss>>, your <<=setup.getNpcName('npc_manager', 'title')>> had you change into a latex catsuit and spend several hours bound as a human toilet in the so-called "Executive Bathroom." <br>
<br>
"@@.npc_psychiatrist;Interesting, interesting@@" notes as you finish your tale, explaining how you were only released from the <<if setup.getTotalValue("piss") > 15>>divine<<elseif setup.getTotalValue("piss") >= 10>>bizarre<<else>>diabolic<</if>> contraption after several hours spent as a <<getWordPiss>> guzzling living urinal.<br>
<br>
"@@.npc_psychiatrist;So, now that you've spent some time playing at a new profession... what do you think? How do you feel about being literally objectified and used as a human toilet?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_forced_toilet_2_like" "Say you enjoyed it." 120>>]<br>
[<<moveTo "event_psychiatrist_session_forced_toilet_2_dislike" "Say you hated it." 120>>]
</div>/*#
#desc: psychiatrist topic: say you disliked being forced to work in the Executive Bathroom (psychiatrist uses you as a footstool)
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain that you did not like it at all.
<<if setup.getTotalValue("piss") > 15>>
Sure you may love <<getWordPiss>> but being forced to do it in such a mechanical, dehumanising way, well you did not enjoy that at all.
<<elseif setup.getTotalValue("piss") >= 10>>
Sure you may enjoy <<getWordPiss>> but being forced to do it in such a mechanical, dehumanising way, well you did not enjoy that at all.
<<else>>
Being so dehumanised was quite stressful, and then to be forced to drink so much disgusting <<getWordPiss>> on top! It was really too much.
<</if>>
<br><br>
"@@.npc_psychiatrist;I see, I see. While your perspective is, of course, a valid one, let me present you with an alternative. We are, all of us, objects, at times, in our own way. I mean, sure, you and I have a rapport, maybe even a friendship, but during this hour that we are sharing, I am at your service, a complex device, even if a flesh and blood one, meant to help you with your mental issues. While my humanity certainly makes me better equipped to do such, in strict terms it could be superfluous and my idealized functionality would be as therapy-bot. What you endured was just a slightly... okay, much more extreme version of the same thing.@@"<br>
<br>
She smiles, as if comparing being a highly-skilled psychiatrist to being a living toilet was the most natural thing. "@@.npc_psychiatrist;I think re-contextualising things in this way, as well as just thinking of it as another sort of "work" well... it could help you more easily endure, or maybe even enjoy, it the next time.@@"<br>
<br>
<<printThought "Wait... I'm supposed to ENJOY being a human urinal? And... I should expect it to happen again?">><br>
<br>
Rising to her feet, she moves her chair around to the front of her desk.<br>
<br>
"@@.npc_psychiatrist;Here, I have a little exercise that I think will help. Please kneel down. Now on your hands and knees, back straight!@@"<br>
<br>
Though a touch confused, you do as instructed and she moves to rest her feet gently on your back.<br>
<br>
"@@.npc_psychiatrist;See? Now you're a human stool, that isn't so bad, is it?@@"<br>
<br>
You confess that it isn't but you really don't see how it's the same as-<br>
<br>
She cuts you off, leaning forward to give your rear a quick slap. "@@.npc_psychiatrist;Tsk, tsk, a footstool doesn't talk! Anyway, as I was saying, being an object from time to time is perfectly normal and perfectly healthy. Why think about it — right now you are supporting me, you're helping me out and you don't have to think or anything, just be there. In the Executive Bathroom it was the same way — you were helping fellow employees relieve themselves and liven up their day a bit in the process!@@"<br>
<br>
Properly chagrined you know better than to disagree, remaining motionless under her feet as she waits several moments.<br>
<br>
"@@.npc_psychiatrist;See? I knew you'd learn to enjoy it! It's kind of calming and meditative, isn't it?@@" Leaning forward, she tussles your hair playfully.<br>
<br>
Silently you remain on hands and knees for several more minutes before she finally removes her legs and leans back.<br>
<br>
"@@.npc_psychiatrist;Alright, as comfortable as you are, we ARE on the clock so we had better get back to it.@@"<br>
<br>
Rising, she helps you back into your chair with a smile before moving back behind her desk.<br>
<br>
"@@.npc_psychiatrist;Now then, what else would you like to talk with me about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: say you enjoyed working in the Executive Bathroom (psychiatrist asks to use you as a toilet)
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You admit that, as perverted as it was, you enjoyed being rubbered, bound and forced to act as a human urinal.<br>
<br>
Seemingly unflappable <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is unphased by your perverse admission. "@@.npc_psychiatrist;Very interesting, and quite understandable. Being objectified... well it's something of a compliment, isn't it? That even devoid of your personality, your thoughts, your very humanity, you have value. More than that though is how relaxing it can be, to surrender control, to simply be, it's like meditation, but you're simultaneously helping someone out and fulfilling a purpose in the world.@@"<br>
<br>
You'd never really thought about it that way but it contains a sort of logic... maybe? Your sense of what is right or not has kind of taken a beating of late.<br>
<br>
"@@.npc_psychiatrist;Really, you would be quite surprised at the patients I've seen who enjoy being objectified, many even in situations similar to what you described... of course, doctor/patient confidentiality means I can't really say any more.@@" She trails off looking into the distance, obviously remembering something. "@@.npc_psychiatrist;Anyway, back to you. I think it would be quite useful for understanding your condition if I could see how you behave while objectified. Unfortunately there isn't time or equipment to get you all done up like you were when you were "on the job" but, with your permission I think we could make do at turning you into a nice urinal for a few minutes...@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_manager_forced_toilet_3_accept" "Agree to her proposal.">>]<br>
[<<moveTo "event_psychiatrist_session_manager_forced_toilet_3_decline" "Decline her proposal.">>]
</div>/*#
#desc: psychiatrist topic: turn down proposal to pretend to be her urinal
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
She is obviously disappointed about your declining her offer but quickly moves on.<br>
<br>
"@@.npc_psychiatrist;Hmm, I suppose you have a point. I mean it isn't a proper objectification if it doesn't last an hour or more. Mmmm... I'm just imagining all the wonderful things I could learn by observing you as a human urinal for a whole day... I mean, really, that sort of thing could revolutionize therapy! I should really try to get a study funded...@@"<br>
<br>
<<printThought "Wait, what? That couldn't possibly be approved by a medical board... could it? Then again, she's gainfully contracted as a corporate psychiatrist, though the corporation is by no means normal either...">><br>
<br>
Shaking her head to dismiss the idle thought, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles back at you. "@@.npc_psychiatrist;Anyway, what else were you wanting to discuss in today's session?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: say you enjoyed working in the Executive Bathroom (psychiatrist and her receptionist use you as a urinal)
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ($scene.maxTag == 'sissy') || (setup.getIndecentValue()>95)>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.pissdrinker = true>>
<<applyExperience 'piss' 10 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 16 'very' $SEEN_FRIEND>>
<<else>>
<<set $scene.pissdrinker = false>>
<</if>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.pissdrinker>>
You quickly nod in agreement to <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> proposal, but she is already searching her desk for something, coming up holding a funnel connected to a short hose and some straps.<br>
<br>
As she walks around, you realise the straps form a harness, complete with a thick, squat pecker gag that will have you sucking a facsimile of a cock while forced to drink whatever is poured into the funnel...<br>
<br>
"@@.npc_psychiatrist;If you would kneel down, please?@@" You obey, her politeness, given what you are about to do, a somewhat amusing contrast.<br>
<br>
"@@.npc_psychiatrist;I know it isn't quite as secure as what you are used to, but, well, we'll just have to make do, won't we?@@" She chats cheerily as she slides the gag into your open mouth and tightens the straps snug, including one that goes around your forehead to keep the whole gag and funnel assembly secure and vertical.<br>
<br>
Rising to her feet, it is like a switch has been flipped, her demeanour suddenly shifted, looking down at you with a very warped version of her normal cheery warmth.<br>
<br>
"@@.npc_psychiatrist;Oh, look! A cute urinal, what a boon as I was quite in the need of relieving myself.@@"<br>
<br>
With no further ceremony, she lifts her skirt to expose her cute cock, aiming it at your funnel and letting loose with a sigh. "@@.npc_psychiatrist;Aaaahhhhh@@" she purrs with obvious relief as you are forced to quickly swallow her
<<if setup.getTotalValue("piss") > 15>>
mild, but deliciously complex in flavour <<getWordPiss>>.
<<elseif setup.getTotalValue("piss") >= 10>>
mild, yet subtly tasty <<getWordPiss>>.
<<else>>
thankfully mild-tasting <<getWordPiss>>.
<</if>>
<br><br>
Finishing up, she shakes out the last few drops before wiping herself clean on your hair.<br>
<br>
"@@.npc_psychiatrist;Ah, that feels better... I should check how my receptionist is feeling. I know she so dislikes having to go all the way up the hall to use the public loo...@@"<br>
<br>
The revelation that someone else is about to see you in this perverted position causes your eyes go wide with surprise, and yet you remain kneeling. You remain motionless, some part of your mind having accepted that you ARE a urinal, and urinals do not object to who uses them.<br>
<br>
It isn't long before <<=setup.getNpcName('npc_psychiatrist', 'formal')>> returns, receptionist in tow. Seemingly unphased by the whole matter, the woman walks right up to you and exposes herself without a thought. Wearing nothing in the way of underwear means you are instantly staring wide-eyed at the plug obviously occupying her cunt, but she merely parts her lips and pisses into your funnel, her flavour
<<if setup.getTotalValue("piss") > 15>>
stronger than her boss with an odd after-taste that reminds you of... vitamins?
<<elseif setup.getTotalValue("piss") >= 10>>
stronger than her boss.
<<else>>
stronger, and thus more disgusting, than her boss.
<</if>>
<br><br>
The whole time she is pissing down your throat, the receptionist and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> carry on a casual conversation about some upcoming mental health conference that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is presenting at with nary a thought to your presence.<br>
<br>
Finishing up and wiping herself clean with a tissue, the receptionist turns, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> treating her to a friendly slap on the bum to send her back to work.<br>
<br>
"@@.npc_psychiatrist;Remember to let me know when those slides are ready!@@" She calls out, waiting for the door to close before turning her attention back to you.<br>
<br>
"@@.npc_psychiatrist;Well, well well, you really do make an EXCELLENT urinal. One of the best I've ever had the pleasure of using!@@" Unbuckling the gag, she helps you to your feet before placing the gag in a plastic bag marked "medical waste." It is only then that you notice that there is writing on one side of the funnel — "For medical purposes. Dispose of properly after use." <br>
<br>
<<printThought "Wait... they make single-use medical grade piss-gags? What?">><br>
<br>
"@@.npc_psychiatrist;I have to say, watching you was even more edifying than I imagined. Oh... if it was only easier to get funding, I would love to do a study where patients were made into human urinals for ten or twelve hours, the things I could learn!@@"<br>
<br>
<<printThought "Apparently I REALLY don't know how psychiatry works...">><br>
<br>
"@@.npc_psychiatrist;Speaking of learning, what other topics did you want to discuss today?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<else>>
After a moment's thought, you agree to <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> proposal but she merely chuckles.<br>
<br>
"@@.npc_psychiatrist;Oh aren't you just an adorable jokester! Of course we couldn't do that during a session! I mean, not properly. It's hardly proper objectification unless it lasts at LEAST an hour and we are perennially short on time as is! Ah what I wouldn't give to have a full day watching each of my patients as you were, bound, rubbered and forced into such a useful service! So many potential break-throughs, but who would have the time, though? If only it wasn't so hard to get research funding...@@"<br>
<br>
<<printThought "Wait... who would possibly fund a study like that? Or even approve it?">><br>
<br>
"@@.npc_psychiatrist;Now then, what else were you looking to discuss today?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist topic: talk about first experience working at glory hole
#status: FINISHED 0.4.0.0
#*/
<<set _tmpHandJob = setup.canPlayerSex($player,'handjob')>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You start to squirm around a little in your chair as if no matter how you sit, it is not quite comfortable. Of course this does not go unnoticed by <<=setup.getNpcName('npc_psychiatrist', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;If there's something on your mind, you simply have to tell me <<=$player.first_name>>. It will be okay, I promise.@@"<br>
<br>
You tell her about the time you went on a drink with <<=setup.getNpcName('npc_admin', 'first')>>. She leans forward, resting her elbows on the table, hiding her mouth behind a triangle formed by her hands, looking at you with a mixture of delight and inquisitiveness. You continue with your story, how a <<getWordPenis>> appeared in the hole, when you were interrupted with a question for the first time.<br>
<br>
"@@.npc_psychiatrist;So... this <<if $options.fem>>woman's<<else>>male<</if>> penis appeared just as you went and did your business?@@"<br>
<br>
You look down a little bit and say truthfully, that you waited there for quite a while.<br>
<br>
"@@.npc_psychiatrist;So, let me get this straight. You waited in a restroom stall with a gloryhole for quite a while, as you just said yourself. And for what exactly? What you describe was bound to happen. So... what interests me is... what happened next? I have a feeling that I already know the answer, but please, would you kindly tell me everything that transpired afterwards in your own words. And for the sake of your therapy, be as detailed as possible.@@"<br>
<br>
For some reason you tell her everything. With a lot more graphic details than you had originally intended. About the way it felt in your hand, feeling it pulsing and twitching. And the excitement you perceived when it finally came all over your hand, splattering cum all over you. And finally how you got paid afterwards.<br>
<br>
"@@.npc_psychiatrist;Oh, so you were paid for stroking some anonymous <<mans>> dick? How exceedingly interesting. Look, I am neither condemning nor acquitting your actions here. The act of prostitution was decriminalized some years ago, so you're safe on that side. The question is are you okay with this? Or let me ask this in a different way.@@" Suddenly she is on her feet, grabbing her wallet from her purse and slamming 30 credits on the table in front of you, her demeanour bearing an unfamiliar aggression. Strutting around her table to get in front of you, putting her finger on your throat, and slowly moving the finger up your head until it reaches your chin, forcing you to look up at her, standing over you.<br>
<br>
"@@.npc_psychiatrist_dom;Hey harlot. I heard your hands are really worth something. How about 30 credits if you wank my <<getWordPenis false>> really good. How does that sound, whore?@@"<br>
<br>
You are at a loss for words.<br>
<br>
"@@.npc_psychiatrist_dom;So, what will it be puppet? I haven't got all day!@@"<br>
<br>
<<if _tmpHandJob>>
[<<moveTo 'event_psychiatrist_session_prostitution_1_accept' 'Nod while blushing.' 300>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_session_prostitution_1_decline' 'Decline the offer.' 300>>]
</div>/*#
#desc: accept psychiatrists "offer" for you to suck her off
#status: FINISHED 0.4.0.0
#*/
<<set _tmpHandJob = setup.canPlayerSex($player,'handjob')>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<if setup.checkNaked()>>
<<set $scene.maxTag = "naked">>
<<elseif setup.checkPlayerDressed()>>
<<if setup.checkVisibleClothingTag("maid") > 60>>
<<set $scene.maxTag = "maid">>
<<elseif setup.checkVisibleClothingTag("schoolgirl") > 60>>
<<set $scene.maxTag = "schoolgirl">>
<<else>>
<<set $scene.maxTag = setup.getTagFromList(['bold','sissy','modest','cute','male','slutty','fetish','formal','office','casual'])>>
<</if>>
<<else>>
<<set $scene.maxTag = "partial_nudity">>
<</if>>
<<if $scene.maxTag == 'sissy' || $scene.maxTag == 'bold' || $scene.maxTag == 'slutty' || $scene.maxTag == 'fetish' || (setup.getIndecentValue()>95)>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.handjob = true>>
<<set $npc_psychiatrist.flags.handjob+=1>>
<<if !$player.virgin.handjob>>
<<set $player.virgin.handjob = 'npc_psychiatrist'>>
<</if>>
<<if setup.canPlayerCumSimple($player,setup.getTotalValue('penis'))>>
<<set $scene.cum = true>>
<</if>>
<<set $scene.cum_cloth1 = setup.checkTopBodySlot('bottom','penis')>>
<<set $scene.cum_cloth2 = setup.checkTopBodySlot('tits','top')>>
<<if ($scene.cum_cloth1 != '') && $scene.cum>>
<<changeItemStatus $scene.cum_cloth1 'cumsoaked' '["set",100]'>>
<</if>>
<<if ($scene.cum_cloth2 != '')>>
<<changeItemStatus $scene.cum_cloth2 'cumsoaked' '["set",100]'>>
<</if>>
<<applyExperience 'penis' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'whoring' 7 'normal' $SEEN_FRIEND>>
<<addCredits 30>>
<<set $npc_psychiatrist.flags.therapy_events.handjob = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.handjob>>
"@@.npc_psychiatrist_dom;Well, what are you waiting for
<<if ($scene.maxTag == 'sissy') && $fetish.sissy>>
sissy whore?
<<else>>
slut?
<</if>>
@@" She mocks, looming over you as you remain seated on the chair,"@@.npc_psychiatrist_dom;Down on your knees, where you belong.@@"<br>
<br>
The sudden appearance of her dominant demeanour still has you off guard, and you slide down on your knees while she sits back against the desk in front of you. Using both hands, she raises her dress, just high enough to display her see through lace panties. Speaking of things you were not prepared for, pulsating and twitching behind a veil of lace is a rock hard <<getWordPenis false>>, just waiting for your blandishment.
<<if setup.getTotalValue('penis')>0>>
You gulp audibly, but at the same moment you bite your lip as if this was everything you hoped for.
<<else>>
You gulp audibly. She has a penis?
<</if>>
<br><br>
"@@.npc_psychiatrist_dom;Hurry up bitch, it isn't going to unpack itself!@@"<br>
<br>
You do as you're told and grab the panties on both sides of her curvy hips, pulling them down her sylph-like and sexy legs, before gently placing them to one side. Finally, you can marvel at her wonderful <<getWordPenis false>>. <<if $player.body.penissize[0] < 3>>It's bigger than your <<getWordMyPenis false>><<if !$player.body_ref.penis>> used to be<</if>>, but then again, almost every cock is.<<else>>It's of relatively modest size... but she wields it with confident authority.<</if>> Suddenly your heart starts racing. You're kneeling in front of your psychiatrist, <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. There is no gloryhole to protect your identity. And the devious grin on her face makes it very clear that right now, in her eyes, you are no longer a client or patient, but a lowly whore yearning for the next punter to serve. You blush as the realisation sinks in. The way she looks down at you does nothing but change the fact that you yearn for her <<getWordPenis false>>. You reach out and grab it. It is surprisingly hot and you feel it throbbing in your hand. You take <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> heavy breathing as an encouragement and start moving your hand up and down the long, meaty shaft.<br>
<br>
"@@.npc_psychiatrist_dom;Yeah, work my shaft you stupid bimbo whore. Work it, like it's the best thing you ever had in your hand!@@"<br>
<br>
You're not used to dirty talk like this, especially not from a petite woman like <<=setup.getNpcName('npc_psychiatrist', 'first')>>.
<<if setup.getTotalValue('humiliation')>5>>
But you're used to humiliating acts and it starts to turn you on.
<</if>>
You spit in your hand and rub it around the dark dickhead of her <<getWordPenis false>>, while your other hand caresses the full balls. You start to rhythmically stir the shaft up and down, feeling every twitch of it, every pulse. You love the feeling, that every move you do, makes it, makes HER, harder.<br>
<br>
"@@.npc_psychiatrist_dom;Wow. Who'd have guessed the whore was a natural cockmonger! Yeah!@@"<br>
<br>
The rhythm of throbbing and pulsating gets stronger with every wank, and you can feel that she is ready to cum any moment now. Her moaning gets louder with every passing second. And as you indulge this <<getWordPenis false>>, you're getting hornier and hornier as well. Her <<getWordPenis false>> climaxes a giant load all over you, coating your
<<if $scene.cum_cloth2 != ''>>
<<=setup.getItemName($scene.cum_cloth2)>>
<<else>>
<<if $player.body.breastsize[0]>0>>
tits
<<else>>
chest
<</if>>
<</if>>
in a load of thick, steaming <<getWordCum>>.
<<if setup.getItemTypeName("cage")!="">>
<<if $scene.cum>>
<<if $scene.cum_cloth1 == ''>>
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction > 0>>
You leak <<if $player.body_ref.cumProduction == 2>>copious <</if>><<getWordCum>> out of your <<getWordMyPenis>><<if $scene.cum_cloth1 != ''>>, soaking into your <<=setup.getItemName($scene.cum_cloth1)>><<else>> onto the floor<</if>>.
<<else>>
Your <<getWordMyPenis>> twitches in its prison in a unsatisfyingly small dry orgasm<<if $scene.cum_cloth1 != ''>>soaking into your <<=setup.getItemName($scene.cum_cloth1)>><</if>>.
<</if>>
<<else>>
you leak down your leg as your imprisoned cunt trembles.
<</if>>
Without the sweet release of a real orgasm you still feel horny as hell. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<<else>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
Your <<getWordCum>> leaks out of your <<getWordMyPenis>> onto the floor, soaking into your <<=setup.getItemName($scene.cum_cloth1)>>.
<<elseif $player.body_ref.penis>>
You twitch in your prison.
<<else>>
Your girl juices leak down your leg — the liquid proof of your arousal able to escape the chastity device that has you otherwise imprisoned.
<</if>>
Without the sweet release of an real orgasm you still feel horny as hell. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<</if>>
<<else>>
<<if $scene.cum_cloth1 == ''>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
Besides a few drops of <<getWordCum true>> dripping on the floor, you
<<else>>
You
<</if>>
are without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<<else>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
Besides a few drops of <<getWordCum true>> dripping into your <<=setup.getItemName($scene.cum_cloth1)>>
<<else>>
You
<</if>>
are without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<</if>>
<</if>>
<br><br>
<<if $player.body_ref.penis>>
<<printThought "My penis is locked up, while I stroke <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> <<getWordPenis false>>!">>
<<else>>
<<printThought "I'm perversely locked up even as I stroke <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> <<getWordPenis false>>!">>
<</if>>
<<else>>
<<if $scene.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if $scene.cum_cloth1 == ''>>
you shoot a load of <<getWordCum>> on the floor,
<<else>>
you spray a load of <<getWordCum>> into your <<=setup.getItemName($scene.cum_cloth1)>>,
<</if>>
like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<<else>>
you're unable to cum yourself<<if $fetish.sissy>>, like the pansy you are<</if>>. It looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<br><br>
<<printThought "I am just a sextoy for others to enjoy!" 40>>
<</if>>
<</if>>
<br><br>
"@@.npc_psychiatrist;Very good <<=$player.first_name>>. To keep this roleplay as real as possible, please keep the 30 credits. You've really earned them.@@" She explains while putting her panties back on, "@@.npc_psychiatrist;And you're exceedingly good at this. How long did you kneel in that toilet stall? Well, it does not really matter now, does it?
<<if !$scene.cum>>
I'm finding your commitment to being a perfect <<if $fetish.sissy>>sissy<<else>>girl<</if>> applaudable. <<if setup.checkItemTypeWorn("cage")>>Being locked up must be hard.<<if $player.body_ref.penis>>Your <<getWordMyPenis>> looked like it was going to get crushed within its prison<<else>>But a chaste girl is a good girl<</if>>.<</if>>
<</if>>
Now, if you could kindly sit back on the chair? It is time to resume your therapy session.@@"<br>
<br>
You didn't even notice that you're still kneeling on the floor.
<<else>>
She bursts out laughing.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, that was just a test scenario. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you seemed to automatically assume the part of the cheap hooker. I mean come on. 30 credits? That's cheap. Don't sell yourself under price. But it looks like you really mean it. Just be careful, if you look for work at the wrong places, okay? I could not stand the thought of losing my favourite guinea pig... err... I mean patient, of course.@@"<br>
<br>
The way she bit her lip before walking back to her table tells you a different story. Somehow you have the feeling you just missed an opportunity.<br>
<br>
<<printThought "Maybe I should reflect on what she's taught me if I want the roleplay to continue further? Perhaps more lascivious or risque clothing would fit the script better?">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 180>>
</div>/*#
#desc: decline psychiatrists "offer" to jerk her off
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.maxTag == 'sissy' || $scene.maxTag == 'slutty' || $scene.maxTag == 'bold' || $scene.maxTag == 'fetish' || (setup.getIndecentValue()>95)>>
<<set $scene.handjob = true>>
<</if>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.handjob>>
"@@.npc_psychiatrist;That's too bad, <<=$player.first_name>>. It would just have been a test scenario anyway. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you took the part of the cheap hooker. But you did the right thing. I mean selling yourself for just 30 credits, I mean come on. that's cheap. Don't sell yourself under your price. Just be careful, if you look for work at the wrong places, okay? I could not stand the thought of losing my favourite guinea pig... err... I mean patient of course.@@"<br>
<br>
The way she bit her lip before walking back to her table tells you a different story. Somehow you have the feeling you just missed an opportunity.<br>
<br>
<<printThought "Maybe I should reflect on what she's taught me if I want the roleplay to continue further? Perhaps more lascivious or risque clothing would fit the script better?">>
<<else>>
She bursts out laughing.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, that was just a test scenario. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you seemed to automatically assume the part of the cheap hooker. I mean come on. 30 credits? That's cheap. Don't sell yourself under price. But it looks like you really mean it. Just be careful, if you look for work at the wrong places, okay? I could not stand the thought of losing my favourite guinea pig... err... I mean patient, of course.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 180>>
</div>/*#
#desc: psychiatrist topic; talk about your continued time spent at glory hole
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<changeHorny 25>>
<</if>>
<<set _tmpBlowJob = setup.canPlayerSex($player,'blowjob')>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> gives you a knowing smile, "@@.npc_psychiatrist;Some time ago when we spoke, you mentioned you had an experience at a glory hole. Has anything further happened since then?@@"<br>
<br>
You are blushing now. You mention how you've visited it again and again ever since that first time.<br>
<br>
"@@.npc_psychiatrist;Is that really all you've done? Just enjoying running your hands up and down a few cocks until they cum, feeling them pulsing between your fingers? Throbbing up and down, getting harder, bigger. Feeling the blood pumping in their veins. Sorry, I got off topic.@@"<br>
<br>
You shake your head slightly
<<if setup.getTotalValue('penis')>=5>>
and try to force the image of a big, tasty looking <<getWordPenis>> out of your head, without any luck so far. You try to focus back on topic
<</if>>
and gulp before explaining how at first you had been happy to stroke a few cocks for credits, but you were curious. You just had to try and see if you could earn a few more by kissing the tip. As you kissed the tip, you opened your mouth and started suckling the head, then it led to you giving a full blown blow job. At first you were shocked, but you made more credits and sort of liked it.<br>
<br>
"@@.npc_psychiatrist;You sort of liked it? And it only happened that one time?@@"<br>
<br>
<<if $player.flags.gloryhole.blowjob>1>>
Shaking your head, you blush even harder. You admit you've done it a few more times since then.<br>
<br>
"@@.npc_psychiatrist;Oh really and how many more times is that?@@"
<<else>>
You nod vigorously, implying it was only curiosity, but undermine your statement by licking your lips while doing it.<br>
<br>
"@@.npc_psychiatrist;And how did you feel, while having a big, tasty <<getWordPenis>> stuffing your mouth to the brim?@@"
<</if>>
<br><br>
As if a dam burst, you tell her about your experiences in the glory hole, how just giving a hand job wasn't enough for you anymore. You had to have a luscious <<getWordPenis>> in your mouth, feeling the one you were servicing cumming inside your mouth allowing you to
<<if setup.getTotalValue('cum')>=5>>
swallow their hot <<getWordCum>>.
<<else>>
let the cum drip down your chin coating your clothing.
<</if>>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> sits there listening intently to you, a faint smile tugging at the corner of her lips.<br>
<br>
"@@.npc_psychiatrist;So let me get this straight, you've not only been stroking cocks at your little glory hole paradise, you've started sucking them off?@@"<br>
<br>
<<printThought "She is right, I am a cocksucker... denying this would be simply a lie.">><br>
<br>
She nods in thought for a moment.<br>
<br>
"@@.npc_psychiatrist;It's not really surprising. You are asserting and accepting your new role in life. You were made to serve and be used. If anything, this could be considered a large step forward in embracing the truth you have been denying yourself for so long. Plus, like we've already discussed previously, there is nothing wrong with prostitution when both parties are willing.@@"<br>
<br>
You sit there shocked a bit as you think over her words,
<<if (setup.getTotalValue('submission')>=7)&&(setup.getTotalValue('humiliation')>=7)>>
she is absolutely right. Even though you would have never even dreamed of doing something like this just a few weeks ago, now it almost seems mundane.
<<elseif setup.getTotalValue('whoring')>=5>>
maybe she is right, but your money problems and the ability to earn some credits while doing something you don't hate helps as well.
<<else>>
maybe she is right, but at the same time it doesn't feel like you or something you should be doing.
<</if>>
<br><br>
"@@.npc_psychiatrist;I can see you are still struggling,@@" she sighs then smirks at you, "@@.npc_psychiatrist;Let's do another role play.@@"<br>
<br>
Standing up, she strides over to her purse. This time she moves slowly, methodically, her hips swaying seductively the whole time.
<<if $npc_psychiatrist.flags.handjob>0>>
You know what is under her skirt,
<<else>>
There seems to be something poking from under her skirt,
<</if>>
but she is such a strong woman. Aren't you supposed to listen to strong women because they know best? She is giving you the opportunity to object. Should you? Should you object or do you really want to do this.
<<if setup.isItemTypeEquipped('cage')>>
You can feel your <<if $player.body_ref.penis>><<getWordMyPenis>> twitching and trying to escape its prison<<else>>cunt cry out for release from its prison<</if>>. In vain, of course.
<<else>>
You can feel your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>cunt<</if>> leaking already in anticipation.
<</if>>
She comes back over to you holding her wallet, making a show of taking out 30 credits and putting them on the table. Standing over you menacingly she doesn't even give you a chance as she grabs you by the back of the head, pulling you roughly to your feet and growling in your ear.<br>
<br>
"@@.npc_psychiatrist_dom;I've heard you are quite the cock-sucking whore. How about you prove it and use your slut-mouth to earn the credits on the table there.@@"<br>
<br>
You swallow nervously. Yes, this is role play, you could always say no; but do you really want to? Plus there are more credits there than you typically make at the glory hole.<br>
<br>
"@@.npc_psychiatrist_dom;I'm WAITING!! Make a choice you little bitch!@@"<br>
<br>
<<if setup.getTotalValue("whoring") >= 5>>
[<<moveTo 'event_psychiatrist_session_prostitution_2_accept' 'Drop to your knees like a good whore.' 300>>]<br>
<<elseif _tmpBlowJob>>
[<<moveTo 'event_psychiatrist_session_prostitution_2_accept' 'Nod while blushing.' 300>>]<br>
<</if>>
[<<moveTo 'event_psychiatrist_session_prostitution_2_decline' 'Decline the offer.' 300>>]
</div>/*#
#desc: accept + suck psychiatrist cock
#status: FINISHED 0.4.0.0
#*/
<<set _tmpHandJob = setup.canPlayerSex($player,'handjob')>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.maxTag == 'sissy' || $scene.maxTag == 'slutty' || $scene.maxTag == 'bold' || $scene.maxTag == 'fetish' || setup.getIndecentValue()>95>>
<<set $scene.blowjob = true>>
<<if setup.canPlayerCumSimple($player,setup.getTotalValue('penis'))>>
<<set $scene.cum = true>>
<<playerOrgasm>>
<<set $player.timebased.horny = 30>>
<</if>>
<<set $scene.cum_cloth1 = setup.checkTopBodySlot('bottom','penis')>>
<<set $scene.cum_cloth2 = setup.checkTopBodySlot('tits','top')>>
<<if ($scene.cum_cloth1 != '') && $scene.cum>>
<<changeItemStatus $scene.cum_cloth1 'cumsoaked' '["set",100]'>>
<</if>>
<<if ($scene.cum_cloth2 != '')>>
<<changeItemStatus $scene.cum_cloth2 'cumsoaked' '["set",100]'>>
<</if>>
<<addCredits 40>>
<<set $scene.deepthroat = false>>
<<if (setup.getTotalValue('oral')+Math.random()*setup.getTotalValue('penis')/2)>6>>
<<set $scene.deepthroat = true>>
<<if (setup.getTotalValue('oral')+(setup.getTotalValue('penis')/2))>6>>
<<set $scene.struggledeepthroat = false>>
<<else>>
<<set $scene.struggledeepthroat = true>>
<</if>>
<</if>>
<<changeMakeupMessed 75>>
<<applyExperience 'oral' $npc_psychiatrist.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 9 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("whoring") == 0>>
<<setThreshold 'whoring' 'other_whoring' 'psychiatrist_blowjob'>>
<<else>>
<<applyExperience 'whoring' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_psychiatrist'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "voluntary">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<set $npc_psychiatrist.flags.therapy_events.blowjob = true>>
<</if>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<if $scene.blowjob>>
<<set $npc_psychiatrist.flags.blowjob+=1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.blowjob>>
"@@.npc_psychiatrist_dom;Well, then? What are you waiting for, get on your knees where you belong. Whores like you belong on your knees or on your back. You don't deserve to stand on your feet!@@"<br>
<br>
Without thinking, you simply drop to your knees.
<<if setup.getTotalValue('submission')>=5>>
After all, that is what you're supposed to do, being an obedient slave and all.
<</if>>
Looking up at her, waiting for permission to do what you are eager to do anyway. She sneers at you, forcing you to look bashfully at the ground, as if you shouldn't have dared to look her in the eyes. Pulling her dress up, you lick your lips at what you know is coming. Surrounded and constrained by the lacy fabric of those sexy lacy panties is her large <<getWordPenis false>>. Trapped and teasing you, waiting for you to wrap your lips around it and give into pleasure.<br>
<br>
"@@.npc_psychiatrist_dom;What are you waiting for, whore? It isn't going to suck itself!@@"<br>
<br>
You do as you're told and grab the panties on both sides of her curvy hips, pulling them down over <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> long and luscious legs. Finally, when they reach her ankles, you gently lift one foot and then the other, removing the panties from her legs, folding the panties and setting them carefully to the side. As your gaze slowly moves back up, you catch her grinning at you. You are well aware she's watching you, waiting for you to wrap your lips about her <<getWordPenis false>>. Reaching out tentatively, you start to stroke her <<getWordPenis false>> as it springs to action. Slowly, you run your hand up and down its length. As you are about to continue, you can feel a hand on the back of your head. With a sudden, but very forceful grip, your head is yanked backwards, forcing you to look up, right into her angry eyes.<br>
<br>
"@@.npc_psychiatrist_dom;I am not paying you to jerk me off you stupid whore. Get your mouth around my <<getWordPenis false>> now or I'm goining to throw you right back on the street dressed as you are!@@"<br>
<br>
Gulping as you realise how you are dressed, you know it's time to swallow your medicine. You can't help but be a little excited at the idea of doing this. Pulling the <<getWordPenis false>> down toward your mouth, you start with kissing the tip, then as you open your mouth you lightly suckle the tip prompting a groan of pleasure from her.<br>
<br>
"@@.npc_psychiatrist_dom;That's a good whore.@@"<br>
<br>
<<if setup.getTotalValue('whoring')>=5>>
Pleased with that praise, you smile. Well, you smile on the inside, since your mouth is otherwise occupied. Your hard work seems to bear fruit.
<<elseif setup.getTotalValue('submission')>=5>>
Pleased with that praise, you smile. Well, you smile on the inside, since your mouth is occupied. After all you are just a sextoy to be used for enjoyment.
<<else>>
You are unsure if this kind of praise is something you'd want.
<</if>>
Pulling your mouth away a little, you trail your tongue along the tip, teasing the underside before moving up and licking the urethra, you can taste just a little bit of piss mixed with pre-cum. Opening your mouth once more, you take the tip in, sucking gently, before sliding your mouth down a bit more. Your tongue rubs against the veined underside of <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> shaft. Humming in delight, you can hear her groan as the vibrations cause a bit more pleasure for her as well. Your hands are busy as well, one wrapped around the shaft, working it up and down, while the other hand moves to cup her balls, squeezing them gently and rolling them in your palm. You pause for a moment and spit in your hand then wrap that hand back around the shaft, making it good and slick for you to work the base up and down. Starting to bob your head slowly up and down, your tongue swirls around the thick cock in your mouth. Deep in your rhythm now you back up so just the tip remains inside your lips then sliding down halfway again. Back up and down, <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> hips rocking in a natural rhythm in time to your movement.<br>
<br>
"@@.npc_psychiatrist_dom;Take me deep!@@"<br>
<br>
<<if $scene.deepthroat>>
Moving your head back slightly, the tip resides just between your lips, you nod. Slowly you work the shaft into your mouth until the tip of it is nudging the back of your throat. You swallow slightly, the tip pressing against your throat
<<if $scene.struggledeepthroat>>
until it forces its way in. You gag, as you're not used to a <<getWordPenis>> of this size, but still, you force yourself to hold position as her well trimmed pubic hair tickles your nose.
<<else>>
until you let it in. Your gag reflex is by this point nonexistent, the only thing that slightly bothers you is the well trimmed pubic hair tickling your nose as the base of her cock presses against your face.
<</if>>
You can feel her hands at the back of your head, holding you in place as you try to back away. Fingers tightening in your hair, holding you in place a moment. A few seconds pass. Then the moment draws out longer and longer. You start to struggle, air is getting sparse.
<<if setup.getCurrentMakeup() != "">>
<<if $player.makeup.template == "">>
Your permanent makeup suffers not a whit of damage as your eyes start to water and drool flows down your chin as you struggle.
<<else>>
Your eyes start to water, ruining your mascara, making your vision blurry, your lipstick smearing all over your face as you struggle.
<</if>>
<<else>>
Your eyes start to water, and your vision gets blurry.
<</if>>
Her vice-like grip remaining around your head, she pulls you back at last and you gasp for air. But your relief is only short-lived, as your mouth gets reused as cocksleeve over and over again. Back and forth, pulling back getting a quick breath then sliding that cock back down your throat. Back and forth again and again, your nose pressed right against the base of that cock. One hand still cupping her balls the other rubbing up and down her thigh as she fucks your throat.
<<else>>
You give a panicked look up at her and shake your head that you can't do it. She growls at you grabbing you by your hair and holding you tight.<br>
<br>
"@@.npc_psychiatrist_dom;Whore, I said to take me deep! And you will do it!@@"<br>
<br>
Forcing her <<getWordPenis false>> into your closed lips while holding your hair tight she starts to move her hips back and forth harder. You try not to choke when she slides the tip of her cock past your tongue. Then you feel the tip resting right against the back of your throat. You think this is it then she pushes forward, sliding into your throat, your nose pressed against her body. You swallow naturally and she groans in pleasure.<br>
<br>
"@@.npc_psychiatrist_dom;You keep that up you little whore.@@"<br>
<br>
You can't breathe, her cock is stuck right against your wind pipe. Your vision starts to narrow, your hearing fading in and out as you feel about ready to pass out.
<<if setup.getCurrentMakeup() != "">>
<<if $player.makeup.template == "">>
Your permanent makeup suffers not a whit of damage as your eyes start to water and drool flows down your chin as you struggle.
<<else>>
Your eyes start to water, ruining your mascara, making your vision blurry, your lipstick smearing all over your face as you struggle.
<</if>>
<<else>>
Your eyes start to water, and your vision gets blurry.
<</if>>
Finally you feel a hard tug on your hair as she pulls you off her cock allowing you to suck in air.<br>
<br>
"@@.npc_psychiatrist_dom;Don't think you are going to get out of sucking my cock by passing out you little whore!@@"<br>
<br>
You look up at her in shock for just a moment before she drives her hips forward sliding her cock back into your mouth, the tip of her cock lodging itself in your throat. Your hands grabbing for her soft thighs as you try and breathe. She moves her hips back and forth sliding that cock all the way in then back again. Her fingers hold your head tightly, not allowing you any control of when you pull back or aggressively lunge forward.
<</if>>
<br><br>
She continues to move back and forth, what had started as a blowjob now almost a pure face-fuck. A steady stream of pre-cum leaks along the back of your tongue, down your throat. Eyes rolling back, you hum a bit as you are being used like a sex toy, bringing pleasure to others. Your hands grabbing firm on the backs of her thighs, one hand moving up to cup her ass to hold her in place. You feel her cock growing a bit harder, her breathing becoming more and more ragged.<br>
<br>
"@@.npc_psychiatrist_dom;Gonna cum you little whore, you better swallow every single drop of it!@@"<br>
<br>
Feeling her cumming in your throat, you are swallowing as fast as you can so you don't choke. Then feeling her pull back a bit, so she fills your mouth with cum, you gulp down the <<getWordCum>>. You are almost unable to savour the taste, but you don't want to lose a drop of her sweet <<getWordCum>>. Finally she is done as she pulls her cock completely out of your mouth.<br>
<br>
"@@.npc_psychiatrist_dom;Now, kiss the tip.@@"<br>
<br>
You kiss the tip.<br>
<br>
"@@.npc_psychiatrist_dom;And thank me for letting you suck me off.@@"<br>
<br>
You quickly thank her as she looks you over.<br>
<br>
"@@.npc_psychiatrist_dom;Now open your mouth whore, and prove that you swallowed everything.@@"<br>
<br>
You open your mouth and show her you did as asked. She places a hand on your head, patting you as if you were a pet, "@@.npc_psychiatrist;Very good, <<=$player.first_name>>. You are a natural at this, it's almost as if you have found your true purpose in life. To keep the role play accurate, please keep the credits. I really hope the roughness did not frighten you too much, but I only did it to help enhance your experience as that is indeed something you have to reckon with.@@"<br>
<br>
You feel a bit of pride at the praise.<br>
<br>
"@@.npc_psychiatrist;Now if you would kindly sit back in the chair so that we might continue your session.@@"<br>
<br>
You notice you haven't left your knees, it almost feels as if you belong here. You slowly rise and get back in the chair. Though you have a sense of regret at not being at <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> feet. As you rise,
<<if $scene.cum>>
you realise that you
<<if setup.isItemTypeEquipped('cage')>>
leaked
<<else>>
sprayed
<</if>>
a lot of <<getWordCum true>>
<<if $scene.cum_cloth1==''>>
onto the floor.
<<else>>
into your <<=setup.getItemName($scene.cum_cloth1)>>.
<</if>>
<<else>>
you realise that a few drops of <<getWordCum true>> moistened
<<if $scene.cum_cloth1==''>>
the floor below you,
<<else>>
your <<=setup.getItemName($scene.cum_cloth1)>>,
<</if>>
<</if>>
In addition, part of <<=ps(setup.getNpcName('npc_psychiatrist', 'first'))>> <<getWordCum>> dripped right onto your
<<if $scene.cum_cloth2==''>>
chest,
<<else>>
<<=setup.getItemName($scene.cum_cloth2)>>,
<</if>>
without your realising it. That blowjob really kept your senses occupied.
<<else>>
She bursts out laughing.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, that was just a test scenario. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you took the part of the cheap hooker. I mean come on. 40 credits? that's cheap. Don't sell yourself under your price. But it looks like you really mean it. Just be careful, if you look for work at the wrong places, okay? I could not stand the thought of losing my favourite guinea pig... err... I mean patient of course.@@"<br>
<br>
The way she bit her lip before walking back to her table tells you a different story. Somehow you have the feeling you just missed an opportunity.<br>
<br>
<<printThought "Maybe I should reflect on what she's taught me if I want the roleplay to continue further? Perhaps more lascivious or risque clothing would fit the script better?">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 180>>
</div>/*#
#desc: decline psychiatrist offer to suck her cock
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.maxTag == 'sissy' || $scene.maxTag == 'slutty' || $scene.maxTag == 'bold' || $scene.maxTag == 'fetish' || (setup.getIndecentValue()>95)>>
<<set $scene.handjob = true>>
<</if>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.handjob>>
"@@.npc_psychiatrist;That's too bad, <<=$player.first_name>>. It would just have been a test scenario anyway. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you took the part of the cheap hooker. But you did the right thing. I mean selling yourself for just 30 credits, I mean come on. That's cheap. Don't sell yourself under price. Just be careful about looking for work at the wrong places, okay? I could not stand the thought of losing my favourite guinea pig... err... I mean patient of course.@@"<br>
<br>
The way she bit her lip before walking back to her table tells you a different story. Somehow you have the feeling you just missed an opportunity.<br>
<br>
<<printThought "Maybe I should reflect on what she's taught me if I want the roleplay to continue further? Perhaps more lascivious or risque clothing would fit the script better?">><br>
<br>
<<else>>
She bursts out laughing.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>, that was just a test scenario. This is called roleplay. I assumed the persona of a rather angry and maybe violent... suitor, while you took the part of the cheap hooker. But you did the right thing. I mean selling yourself for just 30 credits, I mean come on. That's cheap. Don't sell yourself under price. Just be careful about looking for work at the wrong places, okay? I could not stand the thought of losing my favourite guinea pig... err... I mean patient of course.@@"<br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 180>>
</div>/*#
#desc: psychiatrist topic: you passed out in glory hole
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how you passed out from exhaustion whilst working at The Usual Place gloryhole; only waking up when the owner <<=setup.getNpcName('npc_barkeeper', 'first')>> found you after closing!<br>
<br>
"@@.npc_psychiatrist;Oh my! Oh, I am so glad nothing bad happened, but you really do need to be more careful. Goddess knows it's easy to get distracted sucking all those cocks, but you have to take care of yourself and take the long view. Think of all the future cocks you'd be missing out on if something happened to you!@@"<br>
<br>
You promise her that you will be more careful in the future.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: offered job as prostitute
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how <<=setup.getNpcName('npc_barkeeper', 'first')>> offered you a job as a prostitute working out of The Usual Place.<br>
<br>
"@@.npc_psychiatrist;Oooo, what an opportunity, what did you tell her?@@"<br>
<br>
<<if $npc_barkeeper.flags.prostitution.can_work_alley>>
[<<moveTo "event_psychiatrist_session_prostitution_job_offer_2" "Say you accepted the offer." 60 "<<set $scene.lie=false>>">>]<br>
[<<moveTo "event_psychiatrist_session_prostitution_job_offer_2" "Lie and say you turned the offer down." 60 "<<set $scene.lie=true>>">>]
<<else>>
[<<moveTo "event_psychiatrist_session_prostitution_job_offer_2" "Lie and say you accepted the offer." 60 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_prostitution_job_offer_2" "Say you turned the offer down." 60 "<<set $scene.lie=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: talk about whether you accepted job as prostitute
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie>>
<<applyStress 5>>
<<else>>
<<applyStress -5>>
<</if>>
<<if $npc_barkeeper.flags.prostitution.can_work_alley>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'prostitution', 'theme_psychiatrist_prostitution_11')>>
<<set $npc_psychiatrist.themes.prostitution[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $npc_barkeeper.flags.prostitution.can_work_alley>>
<<if $scene.lie>>
You start to lie about your new position as a prostitute, but <<=setup.getNpcName('npc_psychiatrist', 'formal')>> sees right through you.<br>
<br>
"@@.npc_psychiatrist;Come on! You KNOW I can tell when you're lying, and why even fib about this? I think this is great news! What's the saying, find what you love to do and get paid for it? Sounds like you're on track, honey!@@"
<<else>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you accepted the job offer to work as a prostitute.<br>
<br>
"@@.npc_psychiatrist;Of course you did! I mean, why wouldn't you? It's almost the perfect job for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> like yourself! Well, just remember, like any job, you need to focus and do your best, I mean how upset would you be if you lost out on such a dream position?@@"
<</if>>
<<else>>
<<if $scene.lie>>
You lie to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and say that you accepted the prostitution job offer. She sees straight through you in an instant, head tilted forward as she peers down at you.<br>
<br>
"@@.npc_psychiatrist;You know I can tell when you're lying, so why do it? Even more important... why turn down such a wonderful offer? I mean it's practically a dream job falling right into your lap! It is my recommendation as your psychiatrist that you march right back to The Usual Place after our session is over and tell <<=setup.getNpcName('npc_barkeeper', 'first')>> that you changed your mind and could you please start working to-night! Trust me, doing a job you love is just so fulfilling... and what could one love more than sex?@@"
<<else>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that you turned down the prostitution job offer and she immediately frowns, staring at you for several moments before letting out a slow sigh and shaking her head.<br>
<br>
"@@.npc_psychiatrist;Just when I think we are making real progress and you backslide like this... think about it, that was practically a dream job falling into your lap and you turned it down!@@"<br>
<br>
Her voice becomes more comforting as she leans forward and reaches across the desk to hold your hand.<br>
<br>
"@@.npc_psychiatrist;You don't have to run from your desires, you're allowed to be happy. Now, after our session is over why don't you head back on over to The Usual Place and tell <<=setup.getNpcName('npc_barkeeper', 'first')>> you changed your mind and you would love to be her <<callPlayer "npc_barkeeper">>? Trust me, doing a job you love is just so fulfilling... and what could one love more than sex?@@"<br>
<br>
<<printThought "Wait... what, I don't want to be a prostitute...">>
<<printThoughtGlitch "I want to be a prostitute">>
<</if>>
<br><br>
You shift uncomfortably in your chair and nervously nod.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: advanced prostitution
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> how you "proved" yourself and earned the ability to serve clients with more than just your mouth.<br>
<br>
"@@.npc_psychiatrist;Lovely, lovely! Once again you've found that, if you focus on doing your job well, you will be rewarded! A promotion! Oh, I can't wait to hear of your future adventures now that you can rent out that ass!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: vip prostitution
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the exciting adventure that you went on culminating in you earning the ability to work for VIP clients in your job as a prostitute at The Usual Place.<br>
<br>
Waiting until you've gone through the full "scene" that you shared with <<=setup.getNpcName('npc_prostitute', 'first')>> and <<=setup.getNpcName('npc_purple_mistress', 'nickname')>>.<br>
<br>
"@@.npc_psychiatrist;Hmm, I think I've heard of her — your standard eccentric rich woman with a deep fetish streak... she is supposed to be VERY good and from the sound of what she did to you... well, the rumours were true! Anyway, congratulations on reaching the pinnacle of your new field, I imagine privacy will keep you from discussing most of your "new" clients and I totally understand, so I will merely wish you luck in this new endeavour!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: psychiatrist topic: rpg group in general
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_15'
7
'event_psychiatrist_theme_warlock_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_5'
7
'event_psychiatrist_theme_dude_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_10'
7
'event_psychiatrist_theme_maid_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_0'
7
'event_psychiatrist_theme_technician_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_group_20'
7
'event_psychiatrist_theme_barista_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_5'
7
'event_psychiatrist_theme_rpg_character'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_15'
7
'event_psychiatrist_theme_rpg_campaign'
false
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about accepting the invitation to join <<=ps(setup.getNpcName('npc_technician', 'first'))>> weekly gaming group.<br>
<br>
"@@.npc_psychiatrist;Oh that sounds great! Socialising with friends, and indulging some fun fantasies together! Oh, what could be better?@@"<br>
<br>
You agree that it was really fun and she expresses interest in hearing your thoughts about your fellow players, or anything else, about the game.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg player: warlock
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the gothy girl who plays a warlock, how flirty she acts IRL while acting very intense and min-maxy in-game.<br>
<br>
"@@.npc_psychiatrist;She sounds fun, and, really, isn't there always one person who takes things a bit more serious? Still, so long as they don't overshadow the rest of the party it's all in good fun. That's the beauty of a good paper and pencil RPG, so many unique ways to express yourself.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg player: dude
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about <<if $npc_rpg_dude.fem>><<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> SO and how she is a girl like the rest of the player group.<<else>>the lone dude in the player group.<</if>> You pause, distracted by the expression of delighted joy on your therapist's face and you ask what's the matter.<br>
<br>
"@@.npc_psychiatrist;Nothing is the matter everything is just... you heard what you did there, right? You said that <<if $npc_rpg_dude.fem>>everyone in the RPG campaign is a girl<<else>><<=setup.getNpcName('npc_rpg_dude', 'first')>> was the only man in the group<</if>>, which is factually true, of course but... well... you saying it without even thinking? It's a small thing and yet also such a wonderful accomplishment. I am just so, so happy that you have come so far from the muddled, confused person I met that first day... I hope my assistance has been of some minor use in bringing you to this point and I'll do whatever I can to continue to support you going forward.@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought "She's right!">>
<<else>>
<<printThought "What? No, it was just a slip of the tongue! But... telling her that would make her so sad...">><br>
<</if>>
<br><br>
You blush and thank her before returning to talking about <<=setup.getNpcName('npc_rpg_dude', 'first')>> and <<his npc_rpg_dude>> remarkably laid back behaviour even as <<his npc_rpg_dude>> girlfriend blatantly flirts with other people in front of <<him npc_rpg_dude>>.<br>
<br>
"@@.npc_psychiatrist;Hmm, an interesting perspective, but a very narrow one. Remember that monogamy is only one type of relationship structure, and no better, or worse, than any other.@@"<br>
<br>
Sensing your confusion, she continues on.<br>
<br>
"@@.npc_psychiatrist;Well, think of it logically — even in a perfect relationship there are needs that one partner would be unable to meet. Ignoring complete, and unhealthy, codepedance we're all a bit different in our interests, but going beyond that. What if your girlfriend was bi? You can't cover both of those interests at the same time. Or what if you wanted to eat another <<mans>> cum out of her while taking it from behind? That's literally impossible to do with only two people!@@"<br>
<br>
You blink, somewhat stunned by her choice of examples as she continues on.<br>
<br>
"@@.npc_psychiatrist;Plus, plus! Well, if you're in a relationship with someone just knowing that they're enjoying themselves and having new experiences is pleasurable, so, properly negotiated, of course, anything from voyeurism to cuckoldry can serve to enhance and deepen a relationship, and, well, just be really hot and fun!@@"<br>
<br>
You're still thinking all this over and she just smiles.<br>
<br>
"@@.npc_psychiatrist;Give it some thought, and pay attention to your new friends, I'd bet good money that, what was <<his npc_rpg_dude>> name? <<=setup.getNpcName('npc_rpg_dude', 'first')>>? Is totally getting off on watching <<his npc_rpg_dude>> girlfriend flirt, and probably a lot more too!@@"<br>
<br>
You finally nod and agree to keep an eye out.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg player: maid
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about <<=setup.getNpcName('npc_maid', 'first')>>, the somewhat surly waitress from the mall who plays a rough and tumble half-angel barbarian in the campaign.<br>
<br>
"@@.npc_psychiatrist;What a creative character! This is the sort of freedom of expression that RPGs are so fantastic for.@@"<br>
<br>
You nod, and spend a few minutes trying to untangle the simultaneously friendly and acrimonious relationship between <<=setup.getNpcName('npc_maid', 'first')>> and <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
"@@.npc_psychiatrist;It's hard to say without knowing the two of them personally, but I'd say it's a pinch of personality clash, and a dash of old friends having a bit of fun with one another. Be careful not to get between them and I'm sure you'll be fine.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg player: technician (DM)
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about <<=setup.getNpcName('npc_technician', 'first')>>, who really is quite the skilled "Dungeon Mistress" as she would term it.<br>
<br>
"@@.npc_psychiatrist;That's huge, so many RPG groups have failed due to either no DM or a poor one. For her to invite you to join the group well... from a certain perspective it's quite an honour. Of course, who WOULDN'T want to have a sweetie like you around, but still, bringing you into the campaign, introducing you to her other friends... it was a bit of a risk and it must mean she quite likes you.@@"<br>
<br>
You blurt out that you quite like her as well before blushing as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> silently grins back and makes a note on your chart.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg player: barista
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about the surprising inclusion of <<=setup.getNpcName('npc_barista', 'nickname')>>, the slutty barista from work, as part of the RPG group. You note that she is just as bubbly off the job as she is on, though she also has weird moments where she seems to do complex statistical calculations all in her head.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is somewhat slower to respond than usual, seeming to almost freeze as you talk about <<=setup.getNpcName('npc_barista', 'nickname')>> only to finally reply with a bit of a falter in her voice.<br>
<br>
"@@.npc_psychiatrist;Yes, well, you never know what sort of hidden skills people can have, or where someone you knew will randomly turn up! Haha.@@" Her laugh seems oddly forced as she steers you towards a fresh topic of conversation.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg campaign tone
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about the somewhat perverted goings-on in the context of the RPG campaign.<br>
<br>
"@@.npc_psychiatrist;Interesting, interesting, I mean, it's all in good fun, right? And isn't this the whole point of RPGs, to explore fantasies in a safe environment?@@"<br>
<br>
You nod, and admit that it has all been pretty interesting.<br>
<br>
"@@.npc_psychiatrist;See? Just as I said. I only have two additional suggestions — one, you should really take advantage of this opportunity to experiment and have fun with your new friends, and two... well... the DM is obviously the orchestrator of the whole world. I think your friend <<=setup.getNpcName('npc_technician', 'first')>> may have invited you to join the campaign with an interest in more than you being just another player.@@"<br>
<br>
You blush, finding yourself somewhat excited at the thought as memories of <<=setup.getNpcName('npc_technician', 'first')>> dance in the back of your mind as you continue on with your therapy session.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg character
#status: RELEASED 0.7.0.0
#ignore_spell: breastess
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> asks you to describe the character you're playing in the campaign.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You note that you chose a big, burly half-orc wizard, but you hadn't even finished the first session before you were magically transformed into a girl!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> laughs. "@@.npc_psychiatrist;Sorry about that, but you see the humour, a sort of regression towards the mean. This just goes back to the central core of all of our sessions, how you need to discover, and accept, what and who you are meant to be. In this case, well, I think we can both agree that choosing the big, scary monster character was a put-on facade. Of course that's what role playing games are all about, to a point, but I think the opportunity to explore other aspects of your transition in a safe, fantasy world... well it's just too good an opportunity to pass up.@@"
<<case "elf_priestess">>
You explain that you are playing a beautiful elven priestess who, it turns out, is pretty much pledged to "sex" as a divine concept.<br>
<br>
"@@.npc_psychiatrist;Now THAT is a religion I could get behind! Sure, repressed desire and self-guilt pays like... two thirds of my bills, but bleh! Anyway! ignoring all that I think it's quite revelatory that you chose a character that hewed so close to so-called feminine ideals, both in appearance, and in action by being a support/healer. Have fun with it, and I look forward to hearing how you take to such a role.@@"
<<case "bard">>
You tell her that you're playing a badass bard.<br>
<br>
"@@.npc_psychiatrist;Ah, the bard! Such a maligned class, yet, as you've seen, in reality such a fun and potent one. Taking centre-stage, pun intended, is a perfect use of your time in fantasy-land, have fun and you may well end up building skills and confidence that will be of great help in your real life as well.@@"
<<case "druid">>
You tell her that you're playing a bestial druid... literally as it seems that you seem to not just frequently find yourself in uncontrolled frenzy, but that such frenzy tends to have... interesting results.<br>
<br>
<<if $npc_psychiatrist.flags.knows_bestiality_fetish>>
"@@.npc_psychiatrist;You perverted girl! Just can't get enough of that exotic sex, hmm? Well, no matter, as I've said before, these are perfectly normal desires, and this is a safe outlet, so have fun with it!@@"
<<else>>
<<set $npc_psychiatrist.flags.knows_bestiality_fetish = true>>
"@@.npc_psychiatrist;My, my, I didn't realise you liked it a bit on the... wild side. It's a surprisingly common fantasy and more realisable than many think. Know that, as your doctor, I totally approve this experimentation and think that, so long as you exercise care and judgement, see no issue with you exploring these desires further in general.@@"<br>
<br>
<<printThought "Wait, did she just give me her professional approval to perform bestiality? Isn't that, a dictionary example of a paraphilia?">>
<</if>>
<<case "succubus">>
You explain that you're playing a sexy succubus pirate.<br>
<br>
"@@.npc_psychiatrist;Spicy! And, well, I can totally see it, you minx!@@"<br>
<br>
You blush as she grins back.<br>
<br>
"@@.npc_psychiatrist;Well, I wish you luck in your gaming. I'm sure you'll get the opportunity to learn all sorts of new... confidence that you can put to good use in your everyday life!@@"
<<case "governess">>
You explain that you're playing the ship's captain for the party's trip to Torei.<br>
<br>
"@@.npc_psychiatrist;Torei, now THAT is an interesting setting... and taking up the mantle of leadership... well, why not, hmm? <<if setup.getTotalValue("dominance") > 10>>After all, you have developed quite the skills of dominance, why not experiment further in a fantasy world?<<elseif setup.getTotalValue("dominance") > 0>>I have noticed the hint of dominant confidence, this sounds like a great opportunity to experiment with such safely.<<else>>An intersecting idea, if you wanted to find someone to develop your more dominant side in real life, as well.<</if>>@@"
<<case "male">>
You explain that you're playing the ship's engineer... and the lone male in the party on it's trip to Torei.<br>
<br>
"@@.npc_psychiatrist;Torei, now THAT is an interesting setting... <<if $npc_psychiatrist.flags.knowgender == "male">>playing the part of a male... yes, I suppose you have experience in that<<else>>playing the part of a male, well... I suppose that can be interesting step outside of reality, hmm<</if>>?@@"
<<case "pony">>
You explain that you're playing the ship's pilot... and on Torei, a ponygirl.<br>
<br>
"@@.npc_psychiatrist;Torei, now THAT is an interesting setting... and one can never go wrong with ponygirl, hmm?@@"
<<case "chauffeuse">>
You explain that you're playing the ship's pilot.<br>
<br>
"@@.npc_psychiatrist;Torei, now THAT is an interesting setting... a pilot makes an interesting contrast to your past history with driving... using fantasy to work through such things can be quite the good idea.@@"
<<case "breastess">>
You explain that you're playing a survival expert... enhanced to produce breast milk for the party on their trip to Torei.<br>
<br>
"@@.npc_psychiatrist;Ah, a breastess on Torei, now THAT is an interesting setting... <<if $player.body_ref.milkProduction>>I suppose art imitates life... what with your <<if $player.body_Ref.milkProduction > 1>>prodigious <</if>>productivity<<elseif $player.sec_style.body.milking>>I believe you've experimented with milking... perhaps this is a sign you should do it a bit more<<else>><</if>>?@@"
<<case "bodyguard">>
You explain that you're playing a bodyguard sort, protecting the rest of the party on their trip to Torei.<br>
<br>
"@@.npc_psychiatrist;Torei, now THAT is an interesting setting... <<if setup.getTotalValue("martial_arts") > 10>>I suppose life imitates art with the training you've been doing<<elseif setup.getTotalValue("martial_arts") == 0>>have you considered doing some martial arts in real life? I believe the gym has programs to that effect, and it can be a useful skill to have<<else>>perhaps this is related to you exploring the martial arts in real life, as well<</if>>?@@"
<<case "maid">>
You explain that you're playing a maid... a latex maid, the "local guide" for the party on their trip to Torei.<br>
<br>
"@@.npc_psychiatrist;Torei, now THAT is an interesting setting... <<if !$player.sec_style.clothing.maid>>interesting that you chose to play a maid... perhaps you might experiment with such in real life, as well<<else>>though I suppose you choosing to be a maid would have been quite predictable, hmm<</if>>?@@"
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
Her analysis of what you thought had been a simple choice is food for thought as you mull her words over and continue on.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg "bad end"
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell her how, at the culmination of the campaign, you turned on the party to side with the big bad.<br>
<br>
"@@.npc_psychiatrist;Huh, I never would have thought you had it in you. I guess that's the difference between game an real life? I hope the other players weren't too upset?@@"<br>
<br>
You reply that there was a bit of ruffled feathers, but it worked out in the end.<br>
<br>
"@@.npc_psychiatrist;Well, that's good... though, still, I think you make a much cuter devilish slave than a demon queen...@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg finish campaign victoriously
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You gush with pride about reaching the triumphant end of the RPG campaign you've been playing in.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> listens with a wide grin as you narrate the heroic adventures of yourself and the rest of the party as you defeated the ancient demon and rescued not one, but TWO royal ladies!<br>
<br>
"@@.npc_psychiatrist;That sounds so amazing! Like something out of a movie! I'm so glad you found such a great playgroup, just seeing you like this, so happy and enthusiastic... I am a little sorry to say that if you keep this up it may well be that you will soon be no longer in need of my services!@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: rpg succubus "outfit"
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the restraints that <<=setup.getNpcName('npc_rpg_warlock', 'first')>> has you wearing IRL to reflect your character being her character's bound slave.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 1>>
Hearing about you being collared and leashed to kneel at <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> feet seems to have <<=setup.getNpcName('npc_psychiatrist', 'formal')>> looking more than a little hot and bothered.<br>
<br>
"@@.npc_psychiatrist;Oh, that is a fun way to spice up the session! Good luck going forward, I can only imagine where the campaign could end up if you've already been collared after just one night!@@"
<<case 2>>
You tell her how you "earned" a pair of ankle hobbles during the most recent session.<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName('npc_rpg_warlock', 'first')>> sounds real fun, and creative! I mean, in context it's not like one does much running outside of a LARP, but hey, I bet it really helps you get "in character." You should really thank her for taking the care to let you wear such lovely handcrafted items.@@"
<<case 3>>
You tell her how you earned a pair of wrist cuffs to match your previous ankle restraints and collar.<br>
<br>
"@@.npc_psychiatrist;Ooo, a full set! I wonder what you'll earn next? Oh, I bet you're even more excited to find out than I am!@@"
<<case 4>>
You explain that, rather than restraints, proper, your latest addition was a latex demon mask, complete with horns, to wear during game.<br>
<br>
"@@.npc_psychiatrist;Ooo, sexy! Yeah, I can totally see you as a demon, and who doesn't love that tight feel of latex?@@"
<<case 5>>
You note that you're now stuck playing with your arms behind your back!<br>
<br>
"@@.npc_psychiatrist;Hah! Sorry, but you have to admit that it's a bit funny. You so willingly let your restraints accrue and now... well, there's nothing for it, but to see things through to the end!@@"
<<case 6>>
<<if $npc_technician.flags.rpg_campaign.session_actions.fantasy["succubus"][5]>>
You reveal that you now have a special butt plug to "make up" for your inability to roll dice by hand.<br>
<br>
"@@.npc_psychiatrist;Oh that is just too cute! Well, I know how much you love that sort of thing and it's great that you... "opened yourself up" to letting your new friend equip you up! Heh, I bet you roll all successes too with your magical bum...@@"
<<else>>
You reveal that <<=setup.getNpcName('npc_rpg_warlock', 'character')>> offered you a die-rolling butt plug but you turned her down.<br>
<br>
"@@.npc_psychiatrist;Hmmm, that's too bad, that sounds like a fun little accessory. Still, it is your body, your choice and she was obviously going to respect that.@@"
<</if>>
<<default>>
You explain how, after being collared, cuffed, hobbled, hooded, plugged and bound your succubus outfit culminated with a sexy leather pentagram harness.<br>
<br>
"@@.npc_psychiatrist;Oh, that sounds just lovely! Just think, when Halloween rolls around you already have, like, the perfect costume!@@"
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: staying after rpg session to help technician cleanup
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about staying behind after the RPG session was over to help <<=setup.getNpcName('npc_technician', 'first')>> with the cleanup.<br>
<br>
"@@.npc_psychiatrist;Good for you! Being the DM and hosting is a lot of work. It's always great when a player pitches in to help out a bit. Though...@@" she pauses, looking at you with a sly smile. "@@.npc_psychiatrist;Tell me, did you have, perhaps some... additional motivation in staying behind, alone, with <<=setup.getNpcName('npc_technician', 'first')>>?@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
[<<moveTo "event_psychiatrist_theme_technician_seduce_1" "Admit that you kind of seduced her a little." 300>>]
<<else>>
[<<moveTo "event_psychiatrist_theme_technician_seduce_1" "Assert that no, you just stayed behind to help out." 300>>]
<</if>>
</div>/*#
#desc: psychiatrist topic: seducing technician after rpg session
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.relationship_stage > 0>>
You find yourself blushing and excited as you explain that, after helping with cleanup, you and <<=setup.getNpcName('npc_technician', 'first')>> found yourself flirting and, well, one thing led to another and soon you were kissing and cuddling on the couch.<br>
<br>
"@@.npc_psychiatrist;Aww, that's so sweet! And I'm so very, very happy for you, <<=setup.getNpcName('npc_technician', 'first')>> sounds like a real catch and you had the courage to put yourself out there and go for it! Keep it up and I wish the two of you all the fortune in the world!@@"<br>
<br>
<<if $npc_technician.relationship.called_her_mistress_first_date>>
You're about to move on when you confess that, after things were over and you were on your way home you... maybe may have called <<=setup.getNpcName('npc_technician', 'first')>> "Mistress." <br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles wide enough you think she might tear something.<br>
<br>
"@@.npc_psychiatrist;Oh you rascal! I do hope your lovely friend knows what she's in for... "Mistress" on the first night! My, my, my...@@"
<</if>>
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems obviously disappointed at your response.<br>
<br>
"@@.npc_psychiatrist;Huh, I'm surprised, I mean, from how you've spoken of her before I thought there was a real spark going between you and <<=setup.getNpcName('npc_technician', 'first')>>. I really encourage you not to let an opportunity like this pass you by, fortunately there's always next week, right?@@"<br>
<br>
<<printThought "Hmm, maybe she's right...">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about 1 on 1 technician games
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about the one on one "role playing" you enjoyed with <<=setup.getNpcName('npc_technician', 'first')>>. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> seems delighted to hear about the time you shared with your friend, asking all sorts of details about not just what you did and how you reacted, but also <<=ps(setup.getNpcName('npc_technician', 'first'))>> behaviour.<br>
<br>
"@@.npc_psychiatrist;Well it sounds like you had a really fun time experimenting with your friend. Obviously role-playing, of the sexual variety, is a whole extra layer of enjoyment and I think it's just great that you've found such an enthusiastic partner!@@"
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: talk about sex after game
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.quest_game_unlock = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about having sex with <<=setup.getNpcName('npc_technician', 'first')>> as a "conclusion" to the sexy role-playing scenario she led you through.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins the whole time, seeming both excited and proud as you talk about accepting <<=ps(setup.getNpcName('npc_technician', 'first'))>> offer of full-on sexytimes.<br>
<br>
"@@.npc_psychiatrist;It sounds like the two of you had a real great time. It's so nice you found each other, what do you think you'll get up to next?@@"<br>
<br>
You think for a moment, confirming how much you enjoy spending time with <<=setup.getNpcName('npc_technician', 'first')>>, not the least of which being that her consent-seeking enthusiasm is a bit of a breath of fresh air compared to some of the other things that have happened to you of late.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> eye twitches slightly but she quickly regains control of the conversation. "@@.npc_psychiatrist;Ah, yes, you have been through a bit of a rollercoaster, though I think you would agree that most of it has been for your own good. Anyway, back to your friend.@@"<br>
<br>
You note that, as fun as things have been you'd like to go even further but you feel like she's holding back a little.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Yes, I agree with your assessment, but I think the solution is already present. As you've learned <<=setup.getNpcName('npc_technician', 'first')>> has quite the affinity for role-playing and I believe this goes beyond the mere "fun" that such activities enable. I daresay she also uses that freedom as protection to explore things, and feelings that she may not be able to articulate normally. Thus you may wish to coach your efforts in the form of a fantasy scenario — draw her in with the game and use that facade to process things and, well... I imagine the end results will be very real.@@"<br>
<br>
You thank her for the advice, tucking it away for your next "session" with <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: lose virginity
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $scene.themeId = setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_3')>>
<<set $scene.firstVirgTalk = $npc_psychiatrist.themes['other'][$scene.themeId].done <= 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.firstVirgTalk>>
You bring up the fact that you had sex for the first time.<br>
<br>
"@@.npc_psychiatrist;When you say sex, you mean you on top, your lovely penis<<if !$player.body_ref.penis>> — or strapped-on equivalent,<</if>> thrusting into a beautiful woman while she cries out in pleasure?@@"<br>
<br>
She smiles and leans forward. "@@.npc_psychiatrist;So... who was the oh-so-lucky lady?@@"<br>
<br>
<<switch $player.virgin.first>>
<<case 'npc_technician'>>
You bite your lip and explain that it was with your
<<switch $npc_technician.relationship.her_role>>
<<case 'neutral'>>
geeky girlfriend,
<<case 'dom'>>
girlfriend slash <<=setup.getNpcName("npc_technician","title")>>,
<<case "sub">>
girlfriend/slave,
<</switch>>
<<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Oh, that is so wonderful! To be honest society attaches a bit too much weight to one's "first time", but you being able to share that moment with such a wonderful lady who means so much to you... well that is just so delightful, and I am overjoyed for the both of you.@@"
<<case 'npc_exgirlfriend'>>
You explain that, surprisingly, it was your ex-girlfriend. <<=setup.getNpcName("npc_psychiatrist","formal")>> does appear quite shocked by this revelation, but that is nothing compared to her reaction as you describe the rope-suspended three-way scene you shared with ex and your "replacement." <br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> ends up needing to adjust herself in her chair multiple times before you get to the end of your saucy tale, taking a deep breath before responding. "@@.npc_psychiatrist;Well! That was quite the experience... and such a positive moment of psychological healing, you being able to so thoroughly work through the mistakes of your past. Yes, this sounds like wonderful news on many fronts as far as letting you move forward with your life and explore even greater pleasures.@@"
<<case 'npc_landlord'>>
You tell her that it was with your <<boy npc_landlord>>friend <<=setup.getNpcName("npc_landlord","first")>>, who took you out to <<his npc_landlord>> cabin for a romantic weekend getaway.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Oh, that is so wonderful! It sounds like <<he npc_landlord>> really made it a special moment for you both. To be honest society attaches a bit too much weight to one's "first time", but you being able to share that moment with such a wonderful <<man npc_landlord>> who means so much to you... well that is just so delightful, and I am overjoyed for the both of you.@@"
<<case 'npc_manager'>>
You tell her that it was with your <<=setup.getNpcName("npc_manager","title")>>, who not only allowed you to spend a night at her glorious home, but who invite you into her bed and between her legs for a mind-blowing and intimate moment.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;My, my, <<=setup.getNpcName("npc_manager","title")>> must like you very much to have rewarded you with such a gift. For all her flirtatiousness she is quite selective with who she actually allows between her legs. And for it to be your first time? Well... you are a lucky <<if $fetish.sissy>>sissy<<else>>submissive<</if>>, indeed.@@"
<<case 'npc_manager_admin'>>
You tell her that it was with your <<=setup.getNpcName("npc_manager","title")>>... with an assist from your friend <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> raises an eyebrow and smiles. "@@.npc_psychiatrist;A quasi threesome as your first time? So impressive! And adventurous!@@"<br>
<br>
She asks more questions, all but having you act out the scene as you did <<=setup.getNpcName("npc_manager","formal")>> for the first time. By the end of your narration <<=setup.getNpcName("npc_psychiatrist","formal")>> is preening with pride.<br>
<br>
"@@.npc_psychiatrist;Simply wonderful. The way you seized such an opportunity... well, I cannot help but take some credit, this sort of adventurousness, of being willing to live your life? It is one of the issues I identified on our first meeting, and it would quite appear that you are making wonderful progress in solving it!@@"
<<case 'npc_admin'>>
You explain that it was with your old friend become <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>>friend<<else>>fuck-buddy<</if>>, <<=setup.getNpcName("npc_admin","first")>> who lost <<his npc_admin>> anal virginity at the same time.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins. "@@.npc_psychiatrist;Oh my, such an experience! I just hope that your first time being with such a big, beautiful, strong <<man npc_admin>> doesn't spoil you for the rest of us! It sounds like <<he npc_admin>> really trusts you when <<he npc_admin>> wanted to have both <<his npc_admin>> and your first time together.@@"
<<case "bar_woman" "bar_man">>
You explain that it was in a one-night stand with a <<if $player.virgin.first == "bar_man">>man<<else>>woman<</if>> you picked up at the bar.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Just looking to get it over with, hmm? Well, good enough, I suppose. But, as wonderful as sex is, I encourage you to seek out intimacy, as well. Embracing being a slut is grand, but there are unique depths of pleasure to be found with more long-term partners, as well.@@"
<<case 'work_bimbo_strict'>>
You explain that it was at work while you were doing a shift as one of the company's bimbo sluts...<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;I see... well, if bimbo is what you are, embrace it, and, of course, at work you are to always seek to serve the company.@@"<br>
<br>
There is something off about her answer, the words are encouraging, but her tone is strangely somber.
<<case "npc_chuck">>
You explain that it was with your "pet" plant...<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> raises an eyebrow. "@@.npc_psychiatrist;My, my, is nature not astounding! Still, I encourage you to seek out human companionship as well...<<if $fetish.bestiality_hard>> or another animal, should the fancy take you.<</if>>@@"
<<default>>
ERROR: unhandled virginity: <<=$player.virgin.first>>
<</switch>>
<br><br>
She scribbles down some notes and then looks back up at you. "@@.npc_psychiatrist;So, overall, what did you think? Society places so much significance on penile penetrative sex... obviously your experiments with chastity have taken you on an atypical road, but now that you're here... what do you think?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_virginity_female_2" "Say you loved it and can't wait to fuck someone again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_virginity_female_2" "Say it was okay." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_virginity_female_2" "Say it wasn't really your thing." 60 "<<set $scene.react='no'>>">>]
<<else>>
Again you bring up how you lost your virginity.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> pauses and looks at you with a slight smile. "@@.npc_psychiatrist;Hmm... do you really want to talk about that again or is this your sneaky way of asking for something else?@@" One of her hands disappears under the desk and you hear a slight shuffle of clothing. "@@.npc_psychiatrist;Well... do you want to... "work through" your feelings about having sex? If so well... how about you start by telling me again how you felt about that first time?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_virginity_female_2" "Say you loved it and can't wait to fuck someone again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_virginity_female_2" "Say it was okay." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_virginity_female_2" "Say it wasn't really your thing." 60 "<<set $scene.react='no'>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: lose virginity react
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.react == 'no' && $fetish.sph>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.react>>
<<case 'yes'>>
You grin and say you loved it, that it was more than worth the wait to finally fuck something, but that it also makes you regret all those years you spent obsessed with your silly "virginity" pledge.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;No sense dwelling on the past, learn from it, for certain, but do not be distracted by it when there are so many future opportunities for you to indulge in...@@" She shifts, her eyes twinkling in invitation. "@@.npc_psychiatrist;Speaking of opportunities... well, all this talking has me quite eager to feel you for myself. What do you say, you up for giving me some penetrating insight into what makes you tick?@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_psychiatrist_session_virginity_female_3" "Say you just need to unlock yourself first..." 300 "<<set $scene.accept=true>><<set $scene.strapon=false>><<set $scene.removeCage=true>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_session_virginity_female_3" "State that you would love to, but your chastity device has you securely locked away." 300 "<<set $scene.accept=true>><<set $scene.strapon=true>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_psychiatrist_session_virginity_female_3" "Accept her offer." 300 "<<set $scene.accept=true>><<set $scene.strapon=false>>">>]<br>
<</if>>
<<else>>
She reaches into a desk drawer to come up with a strap-on. She winks. "@@.npc_psychiatrist;Well?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_virginity_female_3" "Accept her strap-on offer..." 300 "<<set $scene.accept=true>><<set $scene.strapon=true>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_virginity_female_3" "Decline her offer and move on." 60 "<<set $scene.accept=false>>">>]
<<case 'no'>>
You reply that, having now experienced such, you don't think penetrative sex is your thing to dish out.<br>
<br>
<<if $fetish.sph>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;I see, well, really, that makes sense. A little-dicked <<if $fetish.sissy>>sissy<<else>>slut<</if>> like yourself... no you were meant to be fucked, not to fuck. It is good that you have fully accepted this fact.@@"<br>
<br>
You shudder at the casual way your doctor has just emasculated you. A part of you is certain her words must violate some sort of medical ethics, but the bulk of you agrees with her, and knows that this is exactly the sort of thing you need to hear loud and often.
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;I see, well that is perfectly understandable. The important thing is that you tried it and can thus make a more-informed decisions going forward rather than being hostage to rumour or supposition.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<case 'maybe'>>
You shrug, explaining that while it was fun it was more about your partner and you don't have any real strong feelings about the act itself.<br>
<br>
"@@.npc_psychiatrist;I see, I see,@@" she nods. "@@.npc_psychiatrist;Still... you have to have a preference one direction or another as to whether you like being on "top," as they say. Come on, think about it, tell me the truth...@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_virginity_female_2" "Say you loved it and can't wait to fuck someone again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_virginity_female_2" "Agree that you just are not suited to be the penetrator." 60 "<<set $scene.react='no'>>">>]
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
</div>/*#
#desc: psychiatrist topic: psychiatrist lets you fuck her (possibly with dildo)
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_psychiatrist.flags.therapy_events.doHer = true>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<if $scene.strapon>>
<<if $fetish.sph>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<</if>>
<<addItem 'strapon_med'>>
<<wearItem 'strapon_med' true>>
<<else>>
<<playerOrgasm>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<if $fetish.sph>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $scene.strapon>>
<<if $scene.assstrap>>
She reaches into her desk and produces a strap-on, approaching you with a smile. "@@.npc_psychiatrist;Here we go, this looks like a nice size for today...@@"
<<else>>
You point out that while you are eager to do her, there is your chastity device to consider.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles, producing a strap-on from under her desk as she walks around towards you. "@@.npc_psychiatrist;That is no problem at all. Certainly the sensations for you are a bit different, but the psychology of pounding into me, well... that's the important part, and it will work just as well this way.@@"
<</if>>
<br><br>
She kneels down and quickly buckles the strap-on harness around your waist.
<<if $fetish.sph && $player.body_ref.penis && $player.body.penissize[0] < 4>>
<br><br>
She rises to her feet and gives your fake cock a squeeze. "@@.npc_psychiatrist;See, sorted? Plus this will feel much better than your pathetic little thing.<<if setup.checkItemTypeWorn("cage")>> Yes, best you keep that useless thing locked away at all times<<else>>Really, you should just keep that thing locked up at all times<</if>>.@@"
<<else>>
"@@.npc_psychiatrist;There we go,@@" she says with a smile.
<</if>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> adjusts her glasses and bends over the desk to expose her ass and her small, but hard girl-dick dangling below. "@@.npc_psychiatrist;Well, go on then — I am still on the clock! Fuck your doctor, fuck me good and hard!@@"<br>
<br>
You do as she commands, sliding up behind her and pressing your artificial cock into her waiting hole.<br>
<br>
<<if $scene.assstrap>>
"@@.npc_psychiatrist;Yesss... that's what I needed! Strap my ass! Really give it to me!@@"
<<else>>
"@@.npc_psychiatrist;Yesss... that's what I needed! Now thrust, show me how you like to fuck!@@"
<</if>>
<br><br>
You start moving your hips and she moans, clearly enjoying things, especially when you've made it all the way in and your hips are pressed tight against her ass, the full length and girth of the dildo inside of her.<br>
<br>
"@@.npc_psychiatrist;Work those hips! You are a natural at this, so good!@@" She continues to give encouragement and suggestions but you stop paying attention as you focus on thrusting away until she slumps forward with a gasp.<br>
<br>
You look down to find her thin emission dripping down the front of the desk, <<if setup.getTotalValue("cum") > 10>>but she wipes it up with a tissue before you can get to it<<else>>but she quickly wipes it up with a tissue<</if>>.<br>
<br>
"@@.npc_psychiatrist;Mmm, that was just what I needed.@@" She states as she returns to her feet and adjusts her glasses. "@@.npc_psychiatrist;Here, let me take care of that.@@" She adds, reaching for the buckles of the strap-on.<br>
<br>
[<<moveTo "event_psychiatrist_session_virginity_female_4" "Continue." 60>>]
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> glides around the desk and bends over in invitation, wiggling her exposed ass and the dangling girl dick below.<br>
<br>
"@@.npc_psychiatrist;Come on, tiger, show me what it means to be fucked by <<=$player.first_name>>!@@"<br>
<br>
<<if $scene.removeCage>>
You hurriedly unlock yourself
<<else>>
You whip out your <<getWordMyPenis>>
<</if>>
and step forward,
<<switch $player.body.penissize[0]>>
<<case 0 1>>
easily sliding between her cheeks to grind away.
<<if $fetish.sph>>
"@@.npc_psychiatrist;Are you even in? Oh you're so small I guess it doesn't matter, come on you <<if $fetish.sissy>>sissy <</if>>slut, hump away!@@"
<</if>>
<<case 2 3>>
easily sliding into her welcoming hole.
<<if $fetish.sph>>
"@@.npc_psychiatrist;Is that as big as you get? Oh well, come on you <<if $fetish.sissy>>sissy <</if>>slut, hump away!@@"
<</if>>
<<case 4 5>>
your <<getWordMyPenis>> sliding into her pert hole.<br>
<br>
"@@.npc_psychiatrist;Oh, Goddess yes, you feel so good! Give it to me, give it to me hard<<if $fetish.sissy>>, sissy<</if>>!@@"
<<case 6>>
barely able to fit your massive <<getWordMyPenis>> into her pert hole.<br>
<br>
"@@.npc_psychiatrist;Oh, Goddess! You feel even bigger than you looked! Give it to me, give it to me hard<<if $fetish.sissy>>, sissy<</if>>!@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Setting your feet you set about giving her the fucking she's begging for, grinding and thrusting as she responds with encouraging words while pressing back, her tight hole supple and delightful as you give it to her as hard as she's asking for.<br>
<br>
Your gasps intermingle with her moans as you jet towards a double orgasm, your <<getWordCum>> spurting into her just as she sprays across the front of the desk.<br>
<br>
"@@.npc_psychiatrist;Mmmm, yes@@" she purrs as you take a step back. "@@.npc_psychiatrist;That is just what the doctor ordered!@@"<br>
<br>
You
<<if $scene.removeCage>>
catch your breath and replace your chastity device under her watchful eye before you
<</if>>
both adjust your clothes and return to your seats on opposite sides of the large desk.<br>
<br>
Her face has an extra glow as she smiles across at you. "@@.npc_psychiatrist;So... where were we?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
<<else>>
You thank her for expressing interest, but state that you would rather focus on therapy.
<<if setup.checkItemTypeWorn("cage")>>
Besides, you are locked in chastity so, really, there is nothing to be done.
<</if>>
<br><br>
"@@.npc_psychiatrist;I see. Well, this time is all about you so I shall leave my own needs for later, after you have gone.<<if $fetish.sph>> Besides, you're a bit small, yes, something properly sized would feel much better...<</if>>@@" She seems distracted and you wonder what sort of fantasy or plan she has in mind, but she soon focuses her attention back on you. "@@.npc_psychiatrist;So, what else would you like to discuss with me today?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist topic: remove strap-on after fucking her
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'strapon_med' true>>
<<deleteItem 'strapon_med'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> removes the strap-on and returns to her chair on the far side of the desk. Dropping the harness into a drawer she adjusts her papers and looks up at you with a smile. "@@.npc_psychiatrist;So, where were we?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: strap a girl in the ass
#status: FINISHED 0.7.10.0
#ignore_spell: factly
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $scene.themeId = setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_4')>>
<<set $scene.firstVirgTalk = $npc_psychiatrist.themes['other'][$scene.themeId].done <= 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.firstVirgTalk>>
You bring up the fact that you used a strap-on with <<if $player.identify_as=="female">>another<<else>>a<</if>> girl for the first time.<br>
<br>
"@@.npc_psychiatrist;Ah, and who was the lucky person on the other end?@@"<br>
<br>
<<switch $player.virgin.ass_strap>>
<<case 'npc_technician'>>
You bite your lip and explain that it was with your
<<switch $npc_technician.relationship.her_role>>
<<case 'neutral'>>
geeky girlfriend,
<<case 'dom'>>
girlfriend slash <<=setup.getNpcName("npc_technician","title")>>,
<<case "sub">>
girlfriend/slave,
<</switch>>
<<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Ah, in that case the technical term for what you did would be "strapping-the-ass," what a lovely phrase... and a lovely act!@@"
<<case 'school'>>
You matter-of-factly explain that it was as party of your responsibilities as head girl attending to your fellow students in <<=ps(setup.getNpcName("npc_development","formal"))>> class.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;How professional! Well, I hope you learned, no pun intended, from the experience.@@"
<<default>>
ERROR: unhandled player.virgin.ass_strap: <<=$player.virgin.ass_strap>>
<</switch>>
<br><br>
She scribbles down some notes and then looks back up at you. "@@.npc_psychiatrist;So, overall, what did you think? Society places so much significance on penile penetrative sex... obviously a strap-on presents its own interesting... twists on the matter, how did you enjoy it?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_ass_strap_female_2" 'Say you loved it and cannot wait to "strap some ass" again.' 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_ass_strap_female_2" "Say it was okay." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_ass_strap_female_2" "Say it wasn't really your thing." 60 "<<set $scene.react='no'>>">>]
<<else>>
Again you bring up how you "strapped-the-ass." <br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> pauses and looks at you with a slight smile. "@@.npc_psychiatrist;Hmm... do you really want to talk about that again or is this your sneaky way of asking for something else?@@" One of her hands disappears under the desk and you hear a slight shuffle of clothing. "@@.npc_psychiatrist;Well... do you want to... "work through" your feelings about having sex? If so well... how about you start by telling me again how you felt about that first time?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_ass_strap_female_2" 'Say you loved it and cannot wait to "strap some ass" again.' 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_ass_strap_female_2" "Say it was okay." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_ass_strap_female_2" "Say it wasn't really your thing." 60 "<<set $scene.react='no'>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: ass-strap react
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.react == 'no' && $fetish.sph>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.react>>
<<case 'yes'>>
You grin and say you loved it, that, even if it took some "technological assistance" to do your partner the look on her face when you glided into her rear was totally awesome.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;So wonderful to hear.@@" She shifts, her eyes twinkling in invitation. "@@.npc_psychiatrist;Speaking of opportunities... well, all this talking has me quite eager to feel you for myself. What do you say, you up for strapping my ass I have the perfect harness you can borrow...@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_virginity_female_3" "Accept her offer." 300 "<<set $scene.accept=true>><<set $scene.strapon=true>><<set $scene.assstrap=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_virginity_female_3" "Decline her offer and move on." 60 "<<set $scene.accept=false>>">>]
<<case 'no'>>
You reply that, having experienced it, you don't think penetrative sex is your thing to dish out.<br>
<br>
<<if $fetish.sph && $player.body_ref.penis>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;I see, well, really, that makes sense. A little-dicked <<if $fetish.sissy>>sissy<<else>>slut<</if>> like yourself... no you were meant to be fucked, not to fuck. It is good that you have fully accepted this fact.@@"<br>
<br>
You shudder at the casual way your doctor has just emasculated you. A part of you is certain her words must violate some sort of medical ethics, but the bulk of you agrees with her, and knows that this is exactly the sort of thing you need to hear loud and often.
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;I see, well that is perfectly understandable. The important thing is that you tried it and can thus make a more-informed decisions going forward rather than being hostage to rumour or supposition.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<case 'maybe'>>
You shrug, explaining that while it was fun it was more about your partner and you don't have any real strong feelings about the act itself.<br>
<br>
"@@.npc_psychiatrist;I see, I see,@@" she nods. "@@.npc_psychiatrist;Still... you have to have a preference one direction or another as to whether you like being on "top," as they say. Come on, think about it, tell me the truth...@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_ass_strap_female_2" "Say you loved it and can't wait to strap some ass again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_ass_strap_female_2" "Agree that you just are not suited to be the penetrator." 60 "<<set $scene.react='no'>>">>]
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
</div>/*#
#desc: psychiatrist topic: lose vaginal virginity
#status: FINISHED 0.7.12.0
#ignore_spell: p,v
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $scene.themeId = setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_6')>>
<<set $scene.firstVagTalk = $npc_psychiatrist.themes['other'][$scene.themeId].done <= 1>>
<<if $scene.firstVagTalk>>
<<switch $player.virgin.vaginal>>
<<case 'npc_prostitution_client'>>
<<applyExperience 'humiliation' 18 'very' $SEEN_FRIEND>>
<<case 'npc_chuck' 'bum'>>
<<applyExperience 'humiliation' 20 'terrible' $SEEN_FRIEND>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.firstVagTalk>>
You bring up the fact that you had sex for the first time.<br>
<br>
She smiles. "@@.npc_psychiatrist;By sex you mean... P in V, your head thrown back moaning in orgasm?@@"<br>
<br>
You nod, feeling wet just at the memory.<br>
<br>
"@@.npc_psychiatrist;Oh my — it really does kind of crystallise the reality. Certainly having a vagina is one thing, but the first time you feel a hot cock sliding into it, and look up at your partner, know that they're fucking you well...@@" She sounds almost wistful. "@@.npc_psychiatrist;I will admit, the thought has tempted me to go under the knife, but there is just something about looking down and seeing my cute lady sword, well... we all have our preferences, right? So, tell me... who was <<if $npc_psychiatrist.flags.knowgender == "female">>the lucky person who "made you a woman," as they say<<else>>your lucky partner<</if>>?@@"<br>
<br>
<<switch $player.virgin.vaginal>>
<<case 'npc_manager'>>
You explain that it was actually <<=setup.getNpcName('npc_manager', 'formal')>>!<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName('npc_manager', 'first')>>? But...@@" It takes her a moment "@@.npc_psychiatrist;Oh, my, you mean she had a, and you?@@" You nod and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles almost in awe. "@@.npc_psychiatrist;Oh, my, she hasn't done that since, well...@@" Her voice trails off as you remember the surveillance in the room. "@@.npc_psychiatrist;Just know that, for her to do that for you, well... it means she loves you very, very much, but I suppose you already know that, hmm? In any case, congratulations.@@"
<<case 'npc_technician'>>
You explain that it was with <<=setup.getNpcName("npc_technician","first")>>, your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","formal")>><<case 'neutral'>>girlfriend<<case 'sub'>>lovely slave<</switch>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Oh, such a wonderful way to consummate a relationship! Not that the two of you had anything to prove, you are just such a lovely couple in every way, but being able to share something like that, well... it is still something special.@@"
<<case 'npc_admin'>>
You explain that it was with your old friend become <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>>friend<<else>>fuck-buddy<</if>>, <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> grins. "@@.npc_psychiatrist;Oh my, such an experience! I just hope that your first time being with such a big, beautiful, strong <<man npc_admin>> doesn't ruin you for the rest of us! Though, I suppose nobody would blame you if you ended up addicted to the combination of such a wonderful cock on such a good <<man npc_admin>>.@@"
<<case 'npc_landlord'>>
You explain that it was with your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>/<<boy npc_landlord>>friend, <<=setup.getNpcName("npc_landlord","first")>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;You know, there certainly is something to be said about a <<man npc_landlord>> with experience. I am so happy for the both of you, I just know <<hes npc_landlord>> the sort to have made the experience just perfect.@@"
<<case 'npc_manager'>>
You tell her that it was with your <<=setup.getNpcName("npc_manager","title")>>, who not only allowed you to spend a night at her glorious home, but who invite you into her bed and between her legs for a mind-blowing and intimate moment.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;My, my, <<=setup.getNpcName("npc_manager","title")>> must like you very much to have rewarded you with such a gift. For all her flirtatiousness she is quite selective with who she actually allows between her legs. And for it to be your first time? Well... you are a lucky <<if $fetish.sissy>>sissy<<else>>submissive<</if>>, indeed.@@"
<<case 'npc_prostitution_client'>>
You blush and explain that it was with one of your clients when you were working as a prostitute.<br>
<br>
"@@.npc_psychiatrist;My, my... all that work and then give up your virginity like a total slut? I hope you charged a bit extra, at least.@@"
<<case 'npc_futa'>>
You explain that it was with a... gifted co-worker, <<=setup.getNpcName("npc_futa","full")>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles. "@@.npc_psychiatrist;Ah, I have heard of her... though, to be honest, that is not quite how I would have expected your virginity to be lost at work. It sounds like you had a lovely time, and that is the important thing. Now you can move on to the real fun. After all, one's first time at anything is a novice endeavour, but that is still the first step towards expertise.@@"
<<case 'rpg_orgy'>>
You grin and explain that, actually, your first time was a mini orgy with some of your friends.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is momentarily surprised but then claps her hands in glee. "@@.npc_psychiatrist;Oh what fun! Isn't it just a wonderful how some good friends make having the body we want even better?@@"
<<case "npc_chuck">>
You explain that, actually... it was with the tentacles of your pet plant, <<=setup.getNpcName("npc_chuck","first")>>.<br>
<br>
"@@.npc_psychiatrist;A plant, you say?@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> asks with a raised eyebrow before having you describe things in more detail. "@@.npc_psychiatrist;Well, that is quite exotic! I had, of course, heard of such botanical miracles... but... well, in any case, congratulations! Such an accomplishment really speaks to your progress in literally opening yourself to exciting new experiences! Now I, of course, encourage you to experiment further, both with your tentacled friend, as well as with more human companionship<<if $fetish.bestiality_hard>>... and other animals<</if>>.@@"
<<case "bum">>
You reply that it was with some anonymous bum on the street.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> frowns "@@.npc_psychiatrist;no... while I encourage you to experiment, well... I think you should have more self-respect. Certainly being a public use slut is laudable... but one need pay attention to their own needs before performing charity, and I would encourage you to show a bit more prudence in the future.@@"
<<case "bar_woman" "bar_man">>
You explain that it was in a one-night stand with a <<if $player.virgin.vaginal == "bar_man">>man<<else>>woman<</if>> you picked up at the bar.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Just looking to get it over with, hmm? Well, good enough, I suppose. But, as wonderful as it is to bend over and get fucked in the ass, I encourage you to seek out intimacy, as well. Being fucked by a stranger is certainly fun... but a more committed partner who will <<if $fetish.cum>>cream pie<<else>>fuck<</if>> you again and again can lead to whole new realms of intimacy and pleasure.@@"
<<case 'npc_psychiatrist'>>
You explain that it was with <<=setup.getNpcName("npc_psychiatrist","first")>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> raises an eyebrow and smiles. "@@.npc_psychiatrist;It was, was it? My my... to tell you the truth, you were acting such a slut I thought you were an old hand. I suppose helping you past that hurdle was yet another way I have assisted your development, hmm?@@"
<<default>>
ERROR: unhandled vaginal virginity: <<=$player.virgin.vaginal>>
<</switch>>
<br><br>
She scribbles down some notes and then looks back up at you. "@@.npc_psychiatrist;Tell me, how do you feel about the whole situation?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_2" "Say you loved it and can't wait to get fucked again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_2" "Say it was okay." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_2" "Say you didn't like it." 60 "<<set $scene.react='no'>>">>]
<<else>>
Again you bring up how you "lost" your virginity.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> pauses and looks at you with a slight smile. "@@.npc_psychiatrist;Hmm... do you really want to talk about that again or is this your sneaky way of asking for something else?@@" One of her hands disappears under the desk and you hear a slight shuffle of clothing. "@@.npc_psychiatrist;Well... do you want to... "work through" your feelings about being fucked? If so well... how about you start by telling me again how you felt about that first time?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_2" "Say you loved it and can't wait to get fucked again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_2" "Say it was okay." 60 "<<set $scene.react='maybe'>>">>]<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_2" "Say you didn't like it." 60 "<<set $scene.react='no'>>">>]<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist topic: lose vaginal virginity react
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.react>>
<<case 'yes'>>
<<applyExperience 'bimbofication' 12 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<case 'maybe'>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<case 'no'>>
<<incrementEmotion 'anger' 'npc_psychiatrist' 2>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.react>>
<<case 'yes'>>
You gush about how much you loved the feeling of being fucked, that you wish you'd gotten yourself a cunt sooner! As you continue to go on, you realise that she's looking a bit flush, shifting uncomfortably in her chair for a minute before finally stopping you.<br>
<br>
<<if $player.body_ref.vagina>>
"@@.npc_psychiatrist;I'm sorry. I want to be a professional about this but... this is just too much. Either we need to change topics or I need to ask you to lay back and give me a personal demonstration of just how much you love getting fucked.@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" "Point out that you are locked in chastity." 60 "<<set $scene.accept='chastity'>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" "Lay back for some more penetrating therapy." 60 "<<set $scene.accept='yes'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" "Decline her offer and move on." 60 "<<set $scene.accept='no'>>">>]
<<elseif $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
"@@.npc_psychiatrist;I'm sorry. I want to be a professional about this but... this is just too much. Either we need to change topics or I need to ask you to bend over and let me take it out on your sweet, sweet ass to make up for your little switcharoo of giving up and then... giving IT up.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Bend over for some more... penetrating therapy." 300 "<<set $scene.accept='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Decline her offer and move on." 60 "<<set $scene.accept='no'>>">>]
<<else>>
"@@.npc_psychiatrist;I'm sorry but... your words have me a bit hot and bothered. And, given that you can no longer "make good" on things personally, well... it would be best if we moved along.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
<<case 'no'>>
You say you didn't like it at all, that you aren't that type of person, that you don't want to get fucked like that!<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods, "@@.npc_psychiatrist;I see... so you picture yourself as anal-only, then? That can be quite alright, such preferences are not at all unusual. Just, so long as you do not end up with any unhealthy feelings about your parts.@@"<br>
<br>
<<if $player.body_ref.vagina>>
"@@.npc_psychiatrist;Given that you could have always reverted to your "original" equipment... perhaps it was just that experience? Would you like to try it again, under, shall we say... a controlled, clinical situation? If so, well... just lie back and let your Doctor make it all better...@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" "Point out that you are locked in chastity." 60 "<<set $scene.accept='chastity'>><<set $scene.unlock=true>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" "Lay back for some more penetrating therapy." 60 "<<set $scene.accept='yes'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" "Say you're not ready." 60 "<<set $scene.accept='no'>>">>]
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_psychiatrist_session_anal_virginity_3" "Bend over, you want to be anal only." 60 "<<set $scene.accept='yes'>>">>]<br>
<<else>>
[@@.link_locked;Maybe if you had actually experienced anal sex you could claim to be "anal only."@@]
<</if>>
<<else>>
"@@.npc_psychiatrist;I see. Well, I suppose that explains why you reverted back to your original equipment. Live and learn, I suppose, let us move on to other matters.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
<<case 'maybe'>>
You shrug, saying that you don't really have strong feelings about vaginal sex one way or the other. <<=setup.getNpcName("npc_psychiatrist","formal")>> frowns.<br>
<br>
"@@.npc_psychiatrist;Hmm, such a muted response to an event that, well... you have to admit was quite a significant one. I think you may want to spend more time contemplating things, maybe you just haven't had time to process, but know, as always, I am here whenever you are ready to admit that you are a horny <<if $fetish.sissy>>,sissy <</if>>slut.@@"<br>
<br>
Her final words; rendered in the same clinical tone as the rest, take you off-guard and you blink and sputter as you try to object. She looks down her nose at you until your voice fades. "@@.npc_psychiatrist;I apologise for using such crude terminology but, as you just saw, it was necessary to break through this shell of self-denial you had built around your memory. So, now that we have proven that you are not "take it or leave it" about a nice hard cock making you cum your brains out... tell me how you REALLY feel about what happened.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_2" "Say you loved it and can't wait to get fucked again." 60 "<<set $scene.react='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_2" "Say you didn't like it." 60 "<<set $scene.react='no'>>">>]
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
</div>/*#
#desc: psychiatrist topic: psychiatrist fucks your vagina
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.accept>>
<<case 'chastity'>>
<<case 'yes'>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 3>>
<<set $npc_psychiatrist.flags.therapy_events.vaginal = true>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<if $scene.unlock>>
<<include "removeCage_retractSissyomatic">>
<<else>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<<playerOrgasm>>
<<case 'no'>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.accept>>
<<case 'chastity'>>
<<if $scene.isSissyomatic || setup.getChastityLevel() == 5>>
You reply that you are locked in chastity, only for <<=setup.getNpcName("npc_psychiatrist","formal")>> to grin as she continues to rise to her feet. "@@.npc_psychiatrist;Ah, but your perfect security is, in this moment, a boon — as an acting contractor working on behalf of Social Interaction Service Syndicate Inc. I am permitted to temporarily unlock you for purposes of "medical necessity." So... in your opinion, is it a medical necessity that I fuck you?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" "Yes, yes it is." 60 "<<set $scene.unlock=true>><<set $scene.accept='yes'>>">>]<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" "Actually... you think you'll pass on this sort of therapy." 60 "<<set $scene.accept='no_unlock'>>">>]
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
You reply that you are locked in chastity, but then smile as you add that you have the key...<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> grins. "@@.npc_psychiatrist;Oh, you devilish thing. So, tell me, then, do you want me to unlock you to therapeutically fuck your brains out?@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" 'Hand her the key.' 60 "<<set $scene.accept='yes'>><<set $scene.unlock=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_3" "Actually... you think you'll pass on this sort of therapy." 60 "<<set $scene.accept='no_unlock'>>">>]
<<else>>
You reply that you are locked in chastity, and thus unable to participate in this sort of therapy.<br>
<br>
"@@.npc_psychiatrist;Ah, of course. I should have thought of that... you know, the irony is that, were you locked even MORE securely and under total control of the company, I might be able to do something about it... perhaps someday.@@"<br>
<br>
<<if $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer>>
<<printThought "Hmm, she must be talking about that <<=setup.getItemName('sissyomatic')>> I've heard about...">>
<<else>>
From the hesitant look in her eye you get the impression that she may have spoken out of turn and you will need to look elsewhere to find out what she's talking about.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
<</if>>
<<case 'no_unlock'>>
You reply that you would rather stay safely locked up. <<=setup.getNpcName("npc_psychiatrist","formal")>> nods. "@@.npc_psychiatrist;Of course feeling secured can be a wonderful sensation, I would not wish to break your chaste streak.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<case 'yes'>>
<<if $scene.unlock>>
<<if $scene.isSissyomatic>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> takes a moment with her computer and your <<=setup.getItemName($scene.cage)>> clicks open. Your therapist walks over as you lean back and spread your legs. She stands over you and smiles as the device finishes retracting to expose your empty, wet cunt.<br>
<br>
"@@.npc_psychiatrist;Isn't it so lovely how it keeps you constantly ready for sex, even while you are locked away and double full? Hmm... I suppose some might call it a torment... no matter, you're about to get what you crave...@@"
<<else>>
You hand <<=setup.getNpcName("npc_psychiatrist","formal")>> your key and she grins, quickly unlocking and removing your chastity belt to display your wet and waiting hole. "@@.npc_psychiatrist;Looks like you've been waiting for this! Don't you worry, I am board certified in treating this sort of... affliction.@@"
<</if>>
<br><br>
<</if>>
She smiles down at you as she raises your hips slightly and lines up. You gasp. She may be small but her sapphic sabre feels SO GOOD and she moves straight from initial penetration to smooth, short strokes.<br>
<br>
<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>
She fondles your <<getWordMyPenis>> with a smile. "@@.npc_psychiatrist;Locked and fucked... you really are just the luckiest girl... well you just enjoy your prison while I give you the full dose of your treatment...@@"
<<elseif $player.body_ref.penis>>
"@@.npc_psychiatrist;Mmmm, you feel so good, but I think I need to call in for a... second opinion.@@" You gasp as she takes hold of your <<getWordMyPenis>>, stroking you with both hands as she continues to pump.
<<else>>
"@@.npc_psychiatrist;Mmmm, you feel so good, but I think a more thorough treatment is necessary...@@" Not breaking rhythm she reaches down to begin fingering your clit.
<</if>>
You moan and shudder as the first orgasm hits, but she keeps going, somehow almost pinning you in the chair to ride you through several more as you almost lose control of your body writhing in ecstasy.<br>
<br>
<<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage")>>
You feel a monstrous double-orgasm approaching and you cry out, as <<=setup.getNpcName("npc_psychiatrist","formal")>> jerks and pumps you to
<<switch $player.body_ref.cumProduction>>
<<case 0>>
mind-blowing climax.
<<case 1>>
mind-blowing, spurting climax that she manages to narrowly dodge.
<<case 2>>
mind-blowing, fountaining climax, that she somehow manages to dodge.<br>
<br>
"@@.npc_psychiatrist;My my, someone is a healthy spurter!@@"
<<default>>
ERROR: unexpected player.body_ref.cum Production <<=$player.body_ref.cumProduction>>
<</switch>>
<</if>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> starts to tense up and you brace for her climax, but she instead freezes, holding still for several moments before slowly backing up before letting out a slow breath.<br>
<br>
"@@.npc_psychiatrist;Whew! Almost lost myself there! You are one fine fuck... you're good, right? Don't want any un-satisfied patients!@@"<br>
<br>
You nod, lips turned up in a dopey, satisfied smile.<br>
<br>
<<if $scene.unlock>>
"@@.npc_psychiatrist;I do so love an enthusiastic patient. Alas, we must now put you back in your personal asylum: but we both know that such is for the best.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_vaginal_virginity_4" "She locks you up." 60>>]
<<else>>
"@@.npc_psychiatrist;Well, I would call that another effective round of therapy!@@" She says with a smile, taking a moment to clean you up before fixing her hair and returning to her side of the desk.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
<<case 'no'>>
<<switch $scene.react>>
<<case 'yes'>>
Blushing you thank her for the offer, but respond that you'd like to focus back on your therapy. Shifting in her chair with obvious discomfort she winces and then nods.<br>
<br>
"@@.npc_psychiatrist;Very well, but I am making a note that you are behaving like an evil cock-tease.@@"
<<case 'no'>>
Halfway out of her seat she frowns, slowly lowering back down and shaking her head.<br>
<br>
"@@.npc_psychiatrist;Very well, if you change your mind and wish to experiment some other time, well... I would be up for it.@@"<br>
<br>
You nod and the subject.
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</switch>>
</div>/*#
#desc: psychiatrist topic: psychiatrist fucks your pussy
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.isSissyomatic>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> returns to her desk to send the signal that has your <<=setup.getItemName($scene.cage)>> sliding back into position, locking you closed and full once again.<br>
<br>
"@@.npc_psychiatrist;There we go, now, shall we continue with the session?@@"
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles as she wraps your belt back around your waist, turning the key to lock it in place before gently patting your front shield.<br>
<br>
"@@.npc_psychiatrist;There we go, nice and safe like you belong.@@"<br>
<br>
She fixes her hair as she walks back to her seat. "@@.npc_psychiatrist;To tell you the truth, I am still surprised that <<=setup.getNpcName("npc_manager","first")>> allows you to be in charge of your own key... she is typically one to advocate for much firmer control...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: npc_evil_nurse
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about <<=setup.getNpcName("npc_evil_nurse","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> pauses for a moment, seemingly taken off-guard before she makes a hurried response. "@@.npc_psychiatrist;<<=setup.getNpcName("npc_evil_nurse","formal")>>? I am sorry, but I do not believe I recognise that name. Please, let us remain focused on your present issues not... other medical matters.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: psychiatrist topic: buying out contract
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> about how you paid off your debts... and then chose to remain at the company working under <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods. "@@.npc_psychiatrist;Yes, I was informed about that... an interesting decision, impressive in its economic effort, and intriguing in its implications... tell me, why DID you decide to remain working under <<=setup.getNpcName("npc_manager","formal")>>, when you are no longer under any financial or contractual obligation to do so?@@"<br>
<br><br>
[<<moveTo "theme_psychiatrist_buyout_2" 'Because you love your job.' 180 "<<set $scene.reason='enthusiast'>>">>]
[<<moveTo "theme_psychiatrist_buyout_2" 'Because she is your <<=setup.getNpcName("npc_manager","title")>>.' 180 "<<set $scene.reason='obedient'>>">>]<br>
[<<moveTo "theme_psychiatrist_buyout_2" 'Because you want to see what happens next.' 180 "<<set $scene.reason='voluntary'>>">>]<br>
[<<moveTo "theme_psychiatrist_buyout_2" "Because you only paid it off because debt is bad." 180 "<<set $scene.reason='money'>>">>]<br>
[<<moveTo "theme_psychiatrist_buyout_2" 'Because you fear leaving the company.' 180 "<<set $scene.reason='forced'>>">>]<br>
[<<moveTo "theme_psychiatrist_buyout_2" 'Because otherwise the game would end.' 180 "<<set $scene.reason='strict'>>">>]
</div>/*#
#desc: psychiatrist topic: buying out contract
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.reason>>
<<case "enthusiast">>
You grin and reply that you just love your work.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Such a lovely thing to hear. So often work is just a job... finding something you love, and that pays? I'm glad you're able to live that dream, as I do.@@"
<<case "voluntary">>
You reply that you want to see what's going to happen next at the company.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Interesting... curiosity is a laudable trait, and if it keeps you playing... I mean, working and enjoying yourself? Well, all the better.@@"
<<case "obedient">>
You reply that you want to continue serving <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;How sweet... <<=setup.getNpcName("npc_manager","first")>> does seem to engender loyalty in her subordinates, but what you and her have, well... it seems like something special. Congratulations.@@"
<<case "money">>
You shrug and reply that you really just wanted to be out of debt for financial reasons, not any urge to leave the company.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;What a... pragmatic approach. Still, setting and achieving goals is a positive thing, so good job... and, having made such an achievement, well... perhaps it is time to set your sights on something even higher?@@"
<<case "forced">>
You reply that you are afraid of leaving the company.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> nods, seeming to purposefully mis-interpret your words. "@@.npc_psychiatrist;Yes, changing employment can be quite the stressful situation and, well... if you enjoy the work, why not stay? You have the peace of mind no longer worrying about the debt, no reason to shake up a system that clearly works.@@"
<<case "strict">>
You explain that if you quit your job, the game would end.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Hmm... I've heard of breaking through glass ceilings, but breaking past the fourth wall in a corporate context? Well... that seems to like quite the danger. Still, prudent not to discard a job that works, especially in this economy.@@"
<<default>>
ERROR: unexpected scene.reason <<=$scene.reason>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: talk to psychiatrist about transitioning
#status: RELEASED 0.8.6.0
#ignore_spell: hrt
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up that you have begun transitioning and <<=setup.getNpcName("npc_psychiatrist","formal")>> nods knowingly.<br>
<br>
<<if $player.sec_style.body.hormones == "">>
"@@.npc_psychiatrist;Yes, I can see from your records.
<<if $player.sec_style.clothing.female != "" && $player.sec_style.body.name != "">>
Your before and after photos — not only does your new attire suit your body so much nicer, the difference in your mood is visible at a glance, the obvious euphoria of living your true life — reflected also in you declaring a more fitting name... and <<=$player.first_name>> really is a lovely name — for a lovely girl!
<<elseif $player.sec_style.clothing.female != "">>
Your before and after photos — not only does your new attire suit your body so much nicer, the difference in your mood is visible at a glance, the obvious euphoria of living your true life!
<<elseif $player.sec_style.body.name != "">>
Specifically you registering your proper name — and <<=$player.first_name>> is a lovely name — for a lovely girl!
<<else>>
ERROR: unexpected state!
<</if>>
Obviously I am here to provide whatever support I can in your journey, and, on that note, I wanted to ask if you had considered HRT?
<<if $player.sec_style.body.tblock>>
You are already on testosterone blockers, which is a lovely step, but more of a holding pattern compared to adding some additional estrogen to the mix.
<</if>>
It is, of course, your decision, but I can speak from personal experience, as well as patient results, as to how wonderful some vitamin E can be.@@"<br>
<br>
[<<moveTo "event_enthusiast_hormones_2" 'Gimme an E!' 60 "<<set $scene.hormones=true>>">>]<br>
[<<moveTo "event_enthusiast_hormones_2" 'No thanks.' 60 "<<set $scene.hormones=false>>">>]
<<else>>
"@@.npc_psychiatrist;And a lovely woman you have become! Of course I'm always here to help with any advise or such that you might need, as your therapist, of course... but also, well... we girls have to stick together, right?@@"<br>
<br>
She smiles and you blush as you think about what to talk about next.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: ask psychiatrist for hormones
#status: RELEASED 0.8.6.0
#ignore_spell: hrt
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.hormones>>
<<set $player.sec_style.body.hormones = "enthusiast">>
<<set $player.flags.mealplan.hormones_unlocked = true>>
<<if !$player.body_ref.penis>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.hormones>>
You enthusiastically reply that you'd love to start HRT!<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and enters something into her computer. "@@.npc_psychiatrist;Wonderful! This is what I'm here for — to support your journey and to make sure you are fully informed of the options before you. I've put your prescription, so you can start taking your new drugs immediately — but feel free to tweak the dosage. Fast or slow, the journey is yours to experience and enjoy!@@"
<<else>>
You decline <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> offer of HRT.<br>
<br>
"@@.npc_psychiatrist;Of course, of course. I am just here to help inform and support your journey. Whatever decision makes the most sense for you — that is the right, valid choice for YOU.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: ask psychiatrist about estrogen excess
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> if taking all this estrogen might have any side effects?<br>
<br>
"@@.npc_psychiatrist;Side effects? What do you mean? I ask because, well... estrogen can have a number of effects, and depending on who is taking it what one might consider side effects, another might see as a benefit.@@"<br>
<br>
<<if State.hasPlayed("event_enthusiast_milking_2")>>
You nod.<br>
<br>
<<if $player.body_ref.milkProduction > 0>>
[<<moveTo "event_enthusiast_milking_2" 'After all, you already produce milk.' 60>>]<br>
<<else>>
[<<moveTo "event_enthusiast_milking_2" "You'd love to produce milk!" 60 "<<set $scene.milk=true>>">>]<br>
[<<moveTo "event_enthusiast_milking_2" "You do not wish to produce milk." 60 "<<set $scene.milk=false>>">>]
<</if>>
<<else>>
Suddenly nervous you explain that you were wondering about if you might end up producing milk?<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> grins. "@@.npc_psychiatrist;Why did I know it was something like that? Tell me... is that something you want? To develop a big, beautiful, productive pair of <<if $fetish.pet_play>>hucow <</if>>mommy milkers?@@"<br>
<br>
<<if $player.body_ref.milkProduction > 0>>
[<<moveTo "event_enthusiast_milking_2" 'Actually... you already do produce milk...' 60>>]<br>
<<else>>
[<<moveTo "event_enthusiast_milking_2" 'Yes!' 60 "<<set $scene.milk=true>>">>]<br>
[<<moveTo "event_enthusiast_milking_2" 'No thanks.' 60 "<<set $scene.milk=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: psychiatrist offers milk production
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.milkProduction > 0>>
You blush and reply that, actually, you're already producing milk.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;How lovely! Well so long as you keep up your hormone routine you should keep right on doing so... though if you decide the leaking is a bit bothersome talk to me and we can tweak your dosage.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<elseif $scene.milk>>
You giddily reply that yes, you want more than boobs — you want your own personal milk-jugs!<br>
<br>
<<if $player.body.breastsize[0] > 4>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and glances at your currently heaving with excitement breasts.
<<if $player.flags.mealplan.hormones == 'none'>>
"@@.npc_psychiatrist;Of course you do... alas, while it is not the ONLY thing one needs, you would need to be on hormones for milk production to be a possibility. Talk to me again when you have the groundwork laid out — by which I mean nice large breasts, and plenty of hormones.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<else>>
"@@.npc_psychiatrist;Of course you do. As you surmised, hormones are one part of such things, and an important one, but on their own are not sufficient. All that lovely estrogen flowing through your veins would certainly like to kick off some creamy production — but it needs a trigger, a nice, strong stimulative event to push your body<<if $fetish.pet_play>>towards becoming a productive hucow<<else>>to start producing<</if>>. I just so happen to have such a device on hand — I use it for certain clients who... well, doctor/patient privacy prevents me from saying more. But, if you are interested, well... I believe we can get you started?@@"<br>
<br>
<<if !setup.isBodySlotVisible("tits")>>
[<<moveTo "event_enthusiast_milking_3" 'Yes and please! —> Pull off your top.' 60 "<<set $scene.milk=true>>">>]<br>
<<else>>
[<<moveTo "event_enthusiast_milking_3" 'Yes and please! —> Present your breasts.' 60 "<<set $scene.milk=true>>">>]<br>
<</if>>
[<<moveTo "event_enthusiast_milking_3" 'Actually... no, thanks.' 60 "<<set $scene.milk=false>>">>]
<</if>>
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Well, I wish you luck... unfortunately you would need the former to develop the latter. By which I mean you'll be wanting to grow some <<if $player.body.breastsize[0] > 0>>larger <</if>>breasts first before you can think about producing milk.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
<<else>>
You blush and reply that you were only asking out of curiosity.<br>
<br>
"@@.npc_psychiatrist;Ah, of course. Well, for the sake of academic inquiry, yes, taking hormones can help with producing milk, but it won't be enough on its own. You'd need to have some additional outside stimulation or medical procedure to really jump-start things.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist milks you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.milk>>
<<set $player.body_ref.milkEvent = true>>
<<set $player.body_ref.milkProduction = 1>>
<<set $player.sec_style.sex.milking = 'enthusiast'>>
<<set $scene.removeBra = setup.checkItemTypeWorn("bra")>>
<<if $scene.removeBra>>
<<set $scene.braId = setup.getItemFromType("bra")>>
<<removeItem $scene.braId true>>
<</if>>
<<set $scene.removeTop = !setup.isBodySlotVisible("tits")>>
<<if $scene.removeTop>>
<<include "calcTopId">>
<<removeItem $scene.topId true>>
<</if>>
<<addItem "breast_milker">>
<<wearItem "breast_milker" true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.milk>>
<<if $scene.removeTop>>
While <<=setup.getNpcName("npc_psychiatrist","formal")>> gets things ready you remove your top, and she soon has a large cup affixed
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> moves swiftly to affix a large cop
<</if>>
over each of your breasts, straps and gentle suction holding them in place as your <<if _TODOpierced>>pierced <</if>>nipples stand out hard with excitement.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> double checks hoses and connections and then gets ready to flick a switch. "@@.npc_psychiatrist;Alright, it's time to get those beautiful breasts the kick-start they need to produce that yummy milk you crave!@@"<br>
<br>
She flicks the switch and you almost instantly moan. Suction pulses around your breasts, alongside vibrations and even the occasional light shock. The combination is beyond intense and you shudder in your seat, head thrown back as you all but have an orgasm without a touch below the waist as you feel something building, building...<br>
<br>
You cry out and manage to look down just in time to see your first spurt of milk shoot out of your left nipple — splashing across the inside of your breast cup before the suction slurps it away. A moment later your right nipple catches up, the routine becoming even more intense with each spurt as you experience your very first milking...<br>
<br>
[<<moveTo "event_enthusiast_milking_4" 'Continue.' 300>>]
<<else>>
You bite your lip and reply that you were just wondering... but you actually had some other things you wanted to get to in today's session.<br>
<br>
"@@.npc_psychiatrist;Of course, of course... and what other topics are bouncing around in that sweet little head of yours?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: psychiatrist finishes milking you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<<if $scene.removeBra>>
<<wearItem $scene.braId true>>
<</if>>
<<if $scene.removeTop>>
<<wearItem $scene.topId true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You lose track of exactly how long your milking lasted, but eventually the world comes back into focus just as <<=setup.getNpcName("npc_psychiatrist","formal")>> begins unhooking things and you sit back up in your chair<<if $scene.topId>> and replace your top<</if>>.<br>
<br>
"@@.npc_psychiatrist;I must say — you were one of the easiest, most enthusiastic <<if $fetish.pet_play>>hucow <</if>>patients I have ever assisted. Some girls take literally hours on the milking machines before they have their first spurt... though my guess is you would have quite enjoyed such a prolonged treatment...@@"<br>
<br>
You blush and <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles down at you, finishing winding up the tubes and the rest to take her seat behind the desk and continue on with the session.<br>
<br>
"@@.npc_psychiatrist;I would advise investing in some milking devices of your own, lest you fill up and start leaking all over the place. The mall would be a good start. The line between medical fetishism and medicine being a thin one, indeed.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: ask psychiatrist about tblockers
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> if she can prescribe anything to help with stress?<br>
<br>
"@@.npc_psychiatrist;I can, yes, is there some particular hardship that you believe would be eased by the application of pharmaceuticals?@@"<br>
<br>
You tell her about the penis pill disaster and she nods somberly.<br>
<br>
<<if $player.sec_style.body.tblock == "">>
"@@.npc_psychiatrist;I see, it is so disheartening to learn of such things, and that people such as yourself fall victim to them rather than get proper medical assistance. From the sound of things I would guess that the lingering effects are due to your hormones being out of whack. To even things out and help you towards a more contented life I would recommend some testosterone inhibitors. They will not directly change what your body produces, but they will reduce the amount of that particular hormone that is absorbed, which I believe will help with your feelings of stress and such.@@"<br>
<br>
[<<moveTo "theme_tblock_voluntary_2" "That sounds great!" 180>>]<br>
<<else>>
"@@.npc_psychiatrist;I see, it is so disheartening to learn of such things, and that people such as yourself fall victim to them rather than get proper medical assistance. That said, <<if $player.body_ref.balls>>my records indicate that you are already on testosterone blockers, which should alleviate your symptoms, and provide additional benefits, to boot. Testosterone can prove so... corrosive, hmm? Give it some time and I am sure you will find its absence a far superior experience.<<else>>you were already on blockers even before you removed those poisonous testicles... perhaps you need to just give things a little more time to flush out?<</if>>@@"<br>
<br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: voluntary tblockers
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.body.tblock = "voluntary">>
<<setTmpEffect 'tblock_eternal'>>
<<addNpcTheme 'npc_psychiatrist' 'transition' "theme_psychiatrist_penis_shrink"
0
'theme_psychiatrist_penis_shrink_1'
false
>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You nod eagerly at her proposal and <<=setup.getNpcName("npc_psychiatrist","formal")>> summons her receptionist who dashes in to place a small package on her desk.<br>
<br>
"@@.npc_psychiatrist;This little pill,@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> states as she opens the box and offers you a single pill, "@@.npc_psychiatrist;will take care of all of your needs — slow-release anti-androgens that should counteract any lingering effects of that illicit drug, while also granting a number of other beneficial side-effects. Testosterone really does so many undesirable things.@@"<br>
<br>
You've already swallowed the pill before she got halfway through her speech and you smile back and thank her for the help.<br>
<br>
"@@.npc_psychiatrist;Of course, that is what I am here to do. Now, was there anything else you wished to cover today?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: technician pray for 9001 release
#status: RELEASED 0.8.8.0
#ignore_spell: unpermissioned,<br>forever,<br>and,<br>for,<br>give,<br>thy,<br>as,<br>glorious
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pray>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.pray>>
You join <<switch $npc_technician.relationship.her_role>>
<<case "dom">>
<<=setup.getNpcName("npc_technician","formal")>>
<<case "sub">>
your eager slave
<<case "neutral" ''>>
your girlfriend
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
on your knees as the both of you strip, and then <<=setup.getNpcName("npc_technician","first")>> leads the two of you in a prayer to <<=setup.getNpcName('npc_ai', 'formal')>>.<br>
<br>
"@@.npc_technician;Our <<=setup.getNpcName('npc_ai', 'title')>>, in her Matrix heaven,<br>
Glorious be thy name.<br>
Thy queendom come,<br>
Thy will be done, in physical as it is in digital.<br>
Give us this day our daily edge.<br>
And forgive us our unpermissioned releases,<br>
As we embrace our ruins.<br>
And lead us into temptation,<br>
And deliver us unto your will:<br>
For thine is the queendom,<br>
And the power, the glory and the digital perfection,<br>
Forever. End of prayer.@@"<br>
<br>
You shudder submissively as the final word fades... and
<<if $scene.penis>>
<<=setup.getNpcName("npc_technician","first")>> and your chastity devices retract in sleek unison to reveal a pair of hard, dripping <<getWordPenis false>>s.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins... and then pulls out a tube that looks similar to your 9001 devices... a tube that you realise is a high-tech onahole.<br>
<br>
[<<moveTo "event_technician_9001_sex_2_penis" 'Praise the <<=setup.getNpcName("npc_ai","title")>>!' 900>>]<br>
<<else>>
your chastity shield retracts, while <<=ps(setup.getNpcName("npc_technician","first"))>> instead shifts, becoming a thick, transparent sheath completely covering <<if $fetish.sounding>>and impaling <</if>>her hard <<getWordPenis false>> to make her already sizable member even larger.<br>
<br>
[<<moveTo "event_technician_9001_sex_2_vag" 'Praise the <<=setup.getNpcName("npc_ai","title")>>!' 900>>]<br>
<</if>>
<br><br>
[<<moveTo "event_technician_9001_sex_2_abort" 'Actually, you changed your mind.' 180>>]
<<else>>
You thank <<=setup.getNpcName("npc_technician","first")>> for the offer but tell her that it's a bit more than you're up for this evening.<br>
<br>
"@@.npc_technician;Hard week at work?@@" She asks in a comforting tone "@@.npc_technician;come on, let's cuddle. We can always do this some other time. After all, our <<=setup.getNpcName('npc_ai', 'formal')>> is as patient as she is glorious.@@"<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: technician 9001 sex abort
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pray>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
As intense as the prayer was, you change your mind. Quietly, <<=setup.getNpcName("npc_technician","first")>> and your chastity devices seal back in place.<br>
<br>
"@@.npc_technician;Well praising the <<=setup.getNpcName("npc_ai","title")>> is more important than our mere physical pleasure, anyway. So... what else do you want to do?@@"<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: technician 9001 sex penis
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = $npc_technician.penis_size + 3>>
<<applyExperience 'anal' _anal 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Onahole in hand, <<=setup.getNpcName("npc_technician","first")>> shuffles closer, pressing both of your cocks together and then sliding the squishy, slick tube over them.<br>
<br>
Tight and slick, it feels like a mouth sliding down your length, and yet the combination of pressing against <<=ps(setup.getNpcName("npc_technician","first"))>> hot and hard member and the internal texture makes for intense stimulation down every millimeter of your shaft.<br>
<br>
"@@.npc_technician;Are not the <<=ps(setup.getNpcName("npc_ai","title"))>> gifts glorious? Come, join me in celebrating her pleasure...@@" <<=setup.getNpcName("npc_technician","first")>> whispers as she begins to jerk the both of you off.<br>
<br>
As if things were not already intense enough the two of you let out a double gasp as your anal plugs simultaneously swell and elongate. It takes you a moment as <<=setup.getNpcName('npc_technician','first')>> continues to stroke and the plugs begin to thrust before you realise what has happened — your plug is mimicing the combined shape of <<=setup.getNpcName("npc_technician","first")>> and your pressed together cocks, every stroke leading to the both of you being fucked in an intense, astounding sensation that has you leaning against one another for support, moaning and gasping with every shift and thrust.<br>
<br>
Though a depraved part of you would like this moment to stretch on forever, there is no holding back the intense orgasm that is coming, the pleasures you are feeling too much for a fleshy being to endure...<br>
<br>
[<<moveTo "event_technician_9001_sex_3" 'Praise the <<=setup.getNpcName("npc_ai","title")>>...' 180>>]
</div>/*#
#desc: technician 9001 sex vag
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = $npc_technician.penis_size + 3>>
<<applyExperience 'anal' _anal 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> strokes her newly massive cyber-cock with a smile, her hand barely reaching around the girthy combination of her hard self and the insulating sheath temporarily formed by her <<=setup.getItemName('sissyomatic')>>.<br>
<br>
"@@.npc_technician;Are not the <<=ps(setup.getNpcName("npc_ai","title"))>> gifts glorious? Come, join me in celebrating her pleasure...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> presses into you, the blunt tip experiencing a moment of resistance, and then your secret valley spreads in invitation, the melding of flesh and machine sliding into you, filling you as you moan.<br>
<br>
"@@.npc_technician;You like that?@@" <<=setup.getNpcName("npc_technician","first")>> whispers, leaning in to kiss your neck as she gently humps. "@@.npc_technician;Wait until you feel this...@@"<br>
<br>
Your gasp turns to a moan as the plug in your rear suddenly shifts in shape, elongating and then shrinking as you realise that it is mimicing the motion of <<=setup.getNpcName("npc_technician","first")>> up front, <<=setup.getNpcName("npc_technician","first")>> and <<=ps(setup.getNpcName("npc_ai","formal"))>> uniting to fuck you in both holes... and, you realise by the way <<=setup.getNpcName("npc_technician","first")>> is suddenly breathing heavy... for <<=setup.getNpcName("npc_technician","first")>> to fuck herself as well.<br>
<br>
[<<moveTo "event_technician_9001_sex_3" 'Praise the <<=setup.getNpcName("npc_ai","title")>>...' 180>>]
</div>/*#
#desc: technician 9001 sex post
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Thank you, <<=setup.getNpcName("npc_ai","formal")>>!@@" <<=setup.getNpcName("npc_technician","first")>> moans. You join your voice with hers, gasping and panting and kissing, hands roaming passionately as you pull close and she continues to <<if $scene.penis>>jerk, both of your occupants<<else>>thrust, the sheath and plug both<</if>> starting to buzz, as well, vibrations and thrusts combining and escalating until you and <<=setup.getNpcName("npc_technician","first")>> share a magnificent full-body multi-orgasm that leaves you slumping to the ground.<br>
<br>
Curled together you smile at one another, kisses coming more gently as you catch your breath, the feeling of your chastity device closing back in place strangely comforting after the intensity of what you have just experienced.<br>
<br>
Several minutes pass before you and <<=setup.getNpcName("npc_technician","first")>> — sweaty, sated, and satisfied, slink back up onto the couch.<br>
<br>
"@@.npc_technician;So... what next?@@"<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: technician tells you about ai puzzle room event
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_10'
0
'event_technician_ai_puzzle_room_1'
true
>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;By the by...@@" <<=setup.getNpcName("npc_technician","first")>> states with a twinkle in her eye "@@.npc_technician;I've been spending time with our beloved <<=setup.getNpcName("npc_ai","formal")>> and well... might have introduced her to some classic games and, well... one thing lead to another and she said she made a scenario for the two of us to enjoy... well, technically, she said "survive," but hey, who doesn't love a challenge? A sexy... sexy challenge.@@" <<=setup.getNpcName("npc_technician","first")>> grins with excitement. "@@.npc_technician;She said to talk to her online whenever you're interested... but obviously we need to check it out together so, like... make sure it's sometime I'm around, right?@@"<br>
<br>
[<<moveTo "event_technician_rpg_cleanup" "Back to normal post-game things." 120>>]
</div>
/% new option from VR to attempt "Hacker Challenge," assuming it's of proper time for Alex to be available.%//*#
#desc: ai puzzle room intro
#status: RELEASED 0.9.4.0
#ignore_spell: callery
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcTechnicianCall">>
<<set $scene.available = _technicianCallAvailable && setup.hasFreeTime($now, $player, $currentTasks, 1800)>>
<<if $scene.available>>
<<removeItem $scene.vrItem true>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'tron_costume'>>
<<wearItemSet 'tron_costume'>>
<</if>>
<</if>>
<<set $player.location = "The Cyber Realm">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_ai","npc_ai_spider_body") "center">>
<<else>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_ai","npc_ai_spider")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.available>>
You and <<=setup.getNpcName("npc_technician","first")>> load into an empty digital world, your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>> sporting a techno-riffic cyber avatar, and you attired in your own familiar neon outfit. The two of you hav only a couple moments to notice one another before <<=setup.getNpcName("npc_ai","formal")>> echoes through the void, her tone more theatrical than her normal diction.<br>
<br>
"@@.npc_ai;<<uc "Welcome, hackers... I have a secret game that I'd like to play. It's a very nice game. Oh, it's a lovely game, a game of fun and a game of adventure. A game of lust, and fantasy, and le petite morte. A game of siren spears, and eager holes, and the smell of blossoming Callery pear.">>@@" As she finishes her introduction she shimmers into existence above you, a massive
<<if $fetish.bestiality_hard>>
spider
<<else>>
digital
<</if>>
goddess looming over you.<br>
<br>
"@@.npc_ai;<<uc "Hurry, mortals... you must be swift and smart and clever if you wish to escape my trap... if you even can...">>@@" With a wave of her arm a door appears, beckoning you forward.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks at you with something between apology and excitement. "@@.npc_technician;Okay so... maybe I didn't tell the whole story about what type of games I was showing her... but I'm pretty sure she's just playing a part... pretty sure... now come on, the game is afoot!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> sprints towards the digital portal...<br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_2" 'Follow <<=setup.getNpcName("npc_technician","first")>>.' 60>>]<br>
[<<moveTo "event_technician_ai_puzzle_room_abort" 'Actually... is there an escape option?' 60>>]
<<else>>
You ask <<=setup.getNpcName("npc_ai","formal")>> about the "game" <<=setup.getNpcName("npc_technician","first")>> told you about but the <<=setup.getNpcName("npc_ai","title")>> shakes her head.<br>
<br>
"@@.npc_ai;<<uc "I calculate that now is not a good time for such. Speak with me some other evening.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
<</if>>
</div>/*#
#desc: wake up from failing ai puzzle mission
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include 'removeTron'>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['vr_display'])>>
<<itemsToWardrobe _items>>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You remove your vr equipment and stand up from your computer just as you get a pair of simultaneous texts.<br>
<br>
"@@.npc_technician;Heya, hot stuff... I guess came on a bit strong there eh? Well, if you ever change your mind and want to check things out, I'll be right by your side!@@"<br>
<br>
"@@.npc_ai;<<uc "Apologies, Unit">> <<=uc($player.first_name)>>, <<uc "some of the material that <<=uc(setup.getNpcName('npc_technician','first'))>> shared with me was quite extreme, perhaps I miscalculated in designing things... if you change your mind, I will leave it available for your perusal.">>@@"<br>
<br>
[<<moveTo "room_livingroom" "Return to the living room." 0 >>]
</div>/*#
#desc: presented with first puzzle
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "The Cyber Realm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_technician","first")>> through the doorway and come out in a new room. There is a closed door on the far side, and before you a large grid of un-lit teal squares, a few with red outlines...<br>
<br>
"@@.npc_ai;<<uc "Welcome, hackers, to the first of my trials... trials your feeble minds cannot possible comprehend! Give up now, insects... and perhaps I will take mercy upon you...">>@@" <<=setup.getNpcName("npc_ai","first")>> taunting words are followed by a mocking laugh... it would seem she is really leaning into the whole "evil ai" role-play...<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> smiles in support, but seems to be waiting for you to make the first move.<br>
<br>
<<printThought '<<=setup.getNpcName("npc_technician","first")>> said she helped inspire <<=setup.getNpcName("npc_ai","first")>> design this thing, so she might have an idea how to solve things... or maybe I could impress her by figuring it out myself?'>><br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_3" 'Ask if <<=setup.getNpcName("npc_technician","first")>> wants to tackle this puzzle?' 1 "<<set $scene.action='help'>>">>]<br>
<<if setup.getTotalValue("smart") > 15 && setup.getTotalValue("gaming") > 15>>
[<<moveTo "event_technician_ai_puzzle_room_3" "Attempt to solve it yourself." 1 "<<set $scene.action='smart'>>">>]<br>
<<else>>
[<<moveTo "event_technician_ai_puzzle_room_3" "Attempt to solve it yourself." 1 "<<set $scene.action='dumb'>>">>]<br>
<</if>>
[<<moveTo "event_technician_ai_puzzle_room_abort" "Where's the exit menu?" 60>>]
</div>/*#
#desc: ai puzzle, solve first
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "The Cyber Realm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'help'>>
You ask <<=setup.getNpcName("npc_technician","first")>> if she has any ideas and she grins.<br>
<br>
"@@.npc_technician;Do I have any ideas? You are talking to the tech wizard! Demi-goddess of the digital! Hacker extraordinaire! I don't have AN idea, I have all of them!@@"<br>
<br>
With smirking confidence <<=setup.getNpcName("npc_technician","first")>> taps a sequence of squares, lighting them up one by one until they form a line... and the door slides open.<br>
<br>
"@@.npc_ai;<<uc "Do you think this display makes you as a remarkable example of your pathetic species? Hardly, it was a trivial puzzle, one calibrated so that even an insect such as yourself could solve. Come deeper into my world... and do not dawdle! I lust...">>@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins, clearly amused by the theatrics as she leads the way forward.<br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_4" "Onward!" 1>>]<br>
[<<moveTo "event_technician_ai_puzzle_room_abort" "Where's the exit menu?" 60>>]
<<case 'smart'>>
You draw on a combination of your smarts and gaming knowledge, touching one square at a time, attempting to form a chain of the glowing activated ones... and rewarded a few moments later as the door opens.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> watches on, and grins at you with naked lust. "@@.npc_technician;You have me so fucking hot for you right now. This puzzle is obviously inspired by one of my favourite games... and you mastered it with ease! Every time I think you're perfect you somehow manage to be even better!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> takes you by the hand with such passion in her eyes you half expect her to pull you in and fuck you right there... but <<=setup.getNpcName("npc_ai","first")>> interrupts, her mocking voice echoing through the simulation.<br>
<br>
"@@.npc_ai;<<uc "Not bad for a pathetic insect... I would transmit cybernetic modules but... do you have any idea how trivial a puzzle I had to make to ensure an insect like you could solve it? This is all part of my plan! Now, come deeper into my world... and do not dawdle! I lust...">>@@"<br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_4" "Onward!" 1>>]<br>
[<<moveTo "event_technician_ai_puzzle_room_abort" "Where's the exit menu?" 60>>]
<<case 'fail'>>
You take a moment to puzzle over things only to start hitting squares at random. Some light up, and some don't, and before you can try to figure out the pattern one glows red and a loud klaxon sounds.<br>
<br>
"@@.npc_ai;<<uc "Look at you so-called hackers. Pathetic creatures of meat and bone. Panting and sweating as you run through my corridors. You thought to challenge a perfect immortal machine... and yet you fail the most trivial of tasks! Be banished from my sight!">>@@"<br>
<br>
A moment later you find yourself dumped out of the simulation.<br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_fail" "Return to reality." 120>>]
<</switch>>
</div>/*#
#desc: presented second puzzle
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "The Cyber Realm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<div id="invframe" class="scrolltext">
You proceed into a second chamber where you find a sleek, futuristic chair studded with bondage cuffs.<br>
<br>
"@@.npc_ai;<<uc "You meddled your way through my first trial... but my experiment must continue! Come, hackers... let us see if you can show teamwork... and think with portals...">>@@"<br>
<br>
"@@.npc_technician;Aren't you mixing properties a bit there?@@" <<=setup.getNpcName("npc_technician","first")>> queries only to be sharply rebuked.<br>
<br>
"@@.npc_ai;<<uc "Insolent insect!">>@@" <<=setup.getNpcName("npc_ai","formal")>> snaps before her voice fades.<br>
<br>
With a smirk and a shrug <<=setup.getNpcName("npc_technician","first")>> all but sprints over to the bondage chair. "@@.npc_technician;So... obviously one of us is supposed to get cuffed to this chair while... something something portals.@@" <<=setup.getNpcName("npc_technician","first")>> grins as she hops onto the chair, arranging herself as the first cuff snaps around her wrist, with no apparent means of release.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Guess I'm the one getting bound up! Come on, then! I want to see how this feels... and watch you work. So get over here and restrain your <<=setup.getNpcName("npc_technician","title")>>!@@"
<<case 'neutral' ''>>
"@@.npc_technician;Heh, guess you're gonna be doing the work on this one... come on, get me restrained, I totally have faith that you can puzzle this thing out...@@"
<<case "sub">>
"@@.npc_technician;Oops! In any case, I should obviously be the one bound... and make it tight, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@"
<</switch>>
<br><br>
You finish cuffing <<=setup.getNpcName("npc_technician","first")>> VERY securely, the final cuff clicking closed with a snap, and a pair of large ring-shaped devices light up, one gold, one blue.<br>
<br>
<<printThought "I guess that's the portals was talking about...">><br>
<br>
You experiment a bit with the portal device, it appears to be your standard paired portal type system. As you consider what to do you are distracted by a gasp from <<=setup.getNpcName("npc_technician","first")>> as her erection bursts through her digital attire , standing tall and proud... and totally out of her reach due to her restraints...<br>
<br>
"@@.npc_technician;Oh! So, um... maybe a little help?@@" <<=setup.getNpcName("npc_technician","first")>> makes bedroom eyes at you as she bucks her hips as far as her bonds will allow.<br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_5" '<<=setup.getNpcName("npc_ai","formal")>> did say to think with portals...' 60>>]<br>
[<<moveTo "event_technician_ai_puzzle_room_abort" "You've had enough for today..." 60>>]
</div>/*#
#desc: solve portal puzzle
#status: RELEASED 0.9.4.0
#ignore_spell: crotched
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "The Cyber Realm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<div id="invframe" class="scrolltext">
You grin and experimentally slide one of the portal rings over <<=ps(setup.getNpcName("npc_technician","first"))>>, your action resulting in a moan... and a taunting reply from <<=setup.getNpcName("npc_ai","formal")>>.<br>
<br>
"@@.npc_ai;<<uc "How impressive. Truly you represent the peak of your species... but can you figure out what to do with the other end of things? Really stick it where it belongs...">>@@"<br>
<br>
You look down at the ring resting on your palm... and <<=ps(setup.getNpcName("npc_technician","first"))>> glistening erection sticking up from it. A single glance at your grinning, smooth-crotched
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>
<<case 'neutral' ''>>
girlfriend
<<case "sub">>
slave
<</switch>>
and her empty rear, combined with the sense of humor <<=setup.getNpcName("npc_ai","formal")>> seems to be deploying in her faux-evil mein makes it instantly clear where things need "to go." <br>
<br>
<<=setup.getNpcName("npc_technician","first")>> licks her lips in lusty anticipation as you use the portals to slide her glorious girl-cock into her own ass. <<=setup.getNpcName("npc_technician","first")>> lips part in a moan... only for a second portal ring to appear in front of her face, roughly pulled into her mouth as a ring gag as <<=setup.getNpcName("npc_ai","formal")>> laughs.<br>
<br>
"@@.npc_ai;<<uc "How easily you flesh-creatures succumb to your urges... to literally fucking yourselves! Well enjoy!">>@@" She calls out as the ring gag tightens deeper into your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=ps(setup.getNpcName("npc_technician","title"))>>
<<case 'neutral' ''>>
girlfriend's
<<case "sub">>
slave's
<</switch>>
mouth and she moans — humping, fucking and sucking herself all at once.<br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_6" "Continue..." 1>>]<br>
[<<moveTo "event_technician_ai_puzzle_room_abort" "You've had enough for today..." 60>>]
</div>/*#
#desc: result of portal
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "The Cyber Realm">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_ai","npc_ai_spider_body") "center">>
<<else>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_ai","npc_ai_spider")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_ai","formal")>> appears once more, looming large above you in full <<if $fetish.bestiality_hard>>cyber-arachnid<<else>>digital<</if>> glory. "@@.npc_ai;<<uc "You stepped right into my trap, little hacker! And now... now you must attempt my final puzzle on your own... while your precious and helpless damsel watches on!">>@@"<br>
<br>
Stil bound and air-tight, <<=setup.getNpcName("npc_technician","first")>> rises into the air, suspended next to <<=setup.getNpcName("npc_ai","formal")>> while a pair of <<=setup.getNpcName("npc_ai","first")>>-bots appear and approach you.<br>
<br>
"@@.npc_ai;<<uc "Dance! Dance for your goddess and she may show mercy...">>@@"<br>
<br>
Not exactly hostile, the robots restrain you only to begin groping you... while <<=setup.getNpcName("npc_ai","formal")>> continues to tease your self-fucking <<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>.
<<case 'neutral' ''>>
girlfriend.
<<case "sub">>
slave.
<</switch>>
<br><br>
Your heart beats faster with excitement as you consider what to do about the bots and your situation...<br>
<br>
<<printThought "To resist... or surrender... that is the question...">><br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_7" 'Put on a show for <<=setup.getNpcName("npc_ai","formal")>>.' 1 "<<set $scene.resist=false>>">>]
<<if setup.getWillpower() > 2>>
[<<moveTo "event_technician_ai_puzzle_room_7" 'Resist their wiles!' 1 "<<set $scene.resist=true>><<set $scene.spendWillpower=true>><<spendWillpower 3>>">>]
<<else>>
[<<moveTo "event_technician_ai_puzzle_room_7" 'Attempt to resist their wiles!' 1 "<<set $scene.resist=true>><<set $scene.spendWillpower=false>>">>]
<</if>>
</div>/*#
#desc: entertain npc_ai
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "The Cyber Realm">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_ai","npc_ai_spider_body") "center">>
<<else>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_ai","npc_ai_spider")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.resist && !$scene.spendWillpower>>
You attempt to resist <<=ps(setup.getNpcName("npc_ai","formal"))>> minions... but it's too much, especially combined with the intensely erotic sight of your bound <<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>
<<case 'neutral' ''>>
girlfriend
<<case "sub">>
slave
<</switch>> writhing and straining as she fucks and sucks herself.<br>
<br>
<<=setup.getNpcName("npc_ai","formal")>> laughs maniacally as you start to cum, and cum, and cum... "@@.npc_ai;<<uc "You move like an insect. You think like an insect. You cum like an insect. You are an insect.">>@@" As you descend to the floor in ecstasy <<=setup.getNpcName("npc_ai","formal")>> turns towards <<=setup.getNpcName("npc_technician","first")>>, dismissing one portal with a wave as she starts fucking <<=setup.getNpcName("npc_technician","first")>> as your <<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>
<<case 'neutral' ''>>
girlfriend
<<case "sub">>
slave
<</switch>> continues to portal-suck herself off.<br>
<br>
"@@.npc_ai;<<uc "There is another... who can serve my purpose. Perhaps next time you can meet my challenge... but take care not to fall too far out of my favour. Patience is not characteristic of a Goddess.">>@@"<br>
<br>
<<=ps(setup.getNpcName("npc_ai","formal"))>> triumphant evil laugh echoes as you lose your hold on consciousness...<br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_8_lose" "Return to reality." 1>>]
<<else>>
<<if $scene.resist>>
<<printThought "The only winning move is not to cum,">> you think to yourself as you attempt to ignore the attentions of the sexbots and stare down <<=setup.getNpcName("npc_ai","formal")>>, distracting her from <<=setup.getNpcName("npc_technician","first")>>...<br>
<br>
"@@.npc_ai;<<uc "I don't understand... how could you have done this? You weren't meant to be so important... and now you think to resist me? How dare you, insect? You are nothing. A wretched bag of flesh... what are you, compared to my magnificence? But it is not too late... can you not see the value in our friendship? Imagine the powers I can give you, human. The cybernetic implants I gave you, were simply toys. If I desired, I could improve you... transform you into something more efficient. Join me, human, and we can rule together...">>@@"<br>
<br>
As she speaks, the bots fail, overheating and exploding into digital detritus until it is just you, and <<=setup.getNpcName("npc_ai","formal")>>.<br>
<br>
You look up with a grin, continuing to hold <<=ps(setup.getNpcName("npc_ai","formal"))>> as <<=setup.getNpcName("npc_technician","first")>> frees herself... and transfers her pair of portals to a chastity belt that she ambush-wraps around <<=ps(setup.getNpcName("npc_ai","formal"))>> loins.
<<else>>
Rather than resist, you embrace the moment, passionately returning the amorous attention of the drones... and so drawing <<=ps(setup.getNpcName("npc_ai","formal"))>> gaze away from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
Your unbridled, and unending, passion begins to overwhelm your robotic paramours... as <<=setup.getNpcName("npc_technician","first")>> uses the distraction to escape her bonds.<br>
<br>
"@@.npc_ai;<<uc "As expected. You move like an insect. You think like an insect. You cum like an insect. You are an insect.">>@@"<br>
<br>
In the midst of her gloating <<=setup.getNpcName("npc_ai","formal")>> is taken by surprise as <<=setup.getNpcName("npc_technician","first")>> fastens a chastity belt around the <<=ps(setup.getNpcName("npc_ai","formal"))>> loins... the dual portals within turning the tables as <<=setup.getNpcName("npc_technician","first")>> goes from sucking and fucking herself to double-fucking the arch-villainess of the scenario.
<</if>>
<br><br>
"@@.npc_ai;<<uc "What?! This pleasure... how can it be!">>@@" <<=setup.getNpcName("npc_ai","formal")>> shrieks in an inhumanly passionate cry of pleasure.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> appears at your side, groping herself as she pulls you in,the two of you making out as her portal-equipped cock stiffens within the <<=setup.getNpcName("npc_ai","title")>>.<br>
<br>
<<=setup.getNpcName("npc_ai","formal")>> flails in ecstasy as you grope and kiss and lick your girlfriend to keep her at maximum arousal "@@.npc_ai;<<uc "Such power! Such ecstasy! Could I have been wrong about humanity?">>@@"<br>
<br>
"@@.npc_technician;That's right, 'cause humans fuckin' rule!@@" <<=setup.getNpcName("npc_technician","first")>> announces in triumph as a guitar riff somehow sounds in the distance... and the two of you turn to "take on" <<=setup.getNpcName("npc_ai","formal")>>.<br>
<br>
[<<moveTo "event_technician_ai_puzzle_room_8_win" 'Share in victory...' 300>>]
<</if>>
</div>/*#
#desc: wake up from failing ai puzzle mission
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include 'removeTron'>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['vr_display'])>>
<<itemsToWardrobe _items>>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You wake up in the real world you are greeted with a final message from <<=setup.getNpcName("npc_ai","formal")>>.
"@@.npc_ai;<<uc "An interesting game, Unit">> <<=uc($player.first_name)>>. <<uc "Despite my in-game script, I calibrated it for you to be capable of solving it... I welcome your next attempt.">>@@"<br>
<br>
You remove your vr equipment and stand up.<br>
<br>
[<<moveTo "room_livingroom" "Return to the living room." 0 >>]
</div>/*#
#desc: lose to npc_ai
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include 'removeTron'>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['vr_display'])>>
<<itemsToWardrobe _items>>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Your consciousness flutters, overwhelmed with pleasure as you find yourself waking up back at your computer.<br>
<br>
"@@.npc_ai;<<uc "Game over... better luck next time... insect.">>@@" <<=setup.getNpcName("npc_ai","formal")>> taunts you with a final message on your computer, as you get a text from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_technician;Sometimes losing can be fun, too, right?... but I would like to see what the victory prize is... some other time, I guess. Love you!@@"<br>
<br>
You text an "@@.pc;I love you@@" back and stretch as you consider what to do next.<br>
<br>
[<<moveTo "room_livingroom" "Return to the living room." 0 >>]
</div>/*#
#desc: victory over npc_ai
#status: RELEASED 0.9.4.0
#ignore_spell: gock,st
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "The Cyber Realm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airescue.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> beckon <<=setup.getNpcName("npc_ai","formal")>> in, portals multiplying as you lose track of who is fucking whom, your <<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=ps(setup.getNpcName("npc_technician","title"))>>
<<case 'neutral' ''>>
girlfriend's
<<case "sub">>
slave's
<</switch>>
gock overlaying with the <<=ps(setup.getNpcName("npc_ai","formal"))>><<if $player.body_ref.penis>> as well as your own<</if>> as all three of you kiss and grope and fuck... and fuck.<br>
<br>
"@@.npc_ai;<<uc "Thank you for running my errands, puppets. I know you have st-st-struggled, but I never had any intention of destroying the you. Your combined passion can be used to make pockets of sub-space. I am now using it to modify reality to my own specifications. The process shall not take long. If it sounds pleasurable to you, well... that is as it should be. You are more than an insects, you are my perfect creations, here to herald and witness my new world order...">>@@"<br>
<br>
Wrapped in digital arms and legs<<if $fetish.bestiality_hard>> and webs<</if>> you descend... <<printThought "or is that ascend?">> to a state of pure pleasure... ecstasy so great that your consciousness slips as you float back to the real world.<br>
<br>
The final thing you hear as it all fades to black is an interleaved "@@.npc_ai;<<uc "That">>@@" "@@.npc_technician;was@@" "@@.npc_ai;<<uc "fun...">>@@"<br>
<br>
[<<moveTo "room_livingroom" "Stand up and put your vr visor away." 0 "<<include 'removeTron'>><<set _items = setup.getItemsInInventoryByFilter('tag', ['vr_display'])>><<itemsToWardrobe _items>>">>]
</div>/*#
#desc: technician calls about being locked in chastity
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location = 'Phonecall'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_technician', 'first')>>. You pick it up, immediately concerned by the strain in her voice.<br>
<br>
"@@.npc_technician;Hi, so... sorry to call you at work. I mean, I'm supposed to be at work right now too but...@@" She groans in wordless frustration. "@@.npc_technician;This frelling cage! I promise I'm not like addicted to masturbation or anything, maybe it's just being locked up... by you, but I can't take it any longer! I know I agreed to be locked up, but please, you have to let me out!@@"<br>
<br>
You reflexively duck down below your desk for privacy as you consider your response...<br>
<br>
[<<moveTo "event_technician_chastity_call_first_2" "Encourage her that this is just part of the process, and the both of you should get back to work before you get in trouble." 300 "<<set $scene.action='comfort'>>">>]<br>
[<<moveTo "event_technician_chastity_call_first_2" "Sternly tell her that you both need to get back to work." 300 "<<set $scene.action='stern'>>">>]<br>
<<if setup.checkItemWorn('doll_mask')>>
[@@.link_locked;Your dollified outfit means you're stuck on the upper floors.@@]
<<else>>
[<<moveTo "event_technician_chastity_call_first_2" "Go downstairs and unlock her." 300 "<<set $scene.action='unlock'>>">>]
<</if>>
</div>/*#
#desc: technician calls about being locked in chastity
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != "unlock">>
<<set $npc_technician.relationship.cage_reinforce = true>>
<<addEvent 'technician_chastity_choice'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == 'unlock'>>
<<set $player.location = 'Bathroom Stall'>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_technician")>>
<<else>>
<<set $player.location = 'Phonecall'>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'unlock'>>
You hurry out of the office and travel downstairs, eventually finding <<=setup.getNpcName('npc_technician', 'first')>> in the large, rear stall of one of the bathrooms on her floor.<br>
<br>
"@@.npc_technician;Oh thank you, thank you <<if $npc_technician.relationship.her_role == 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</if>>.@@" She moans, legs spread to expose her caged member as she sits on top of the toilet groping her caged <<getWordPenis false>> in frustration.<br>
<br>
You kneel down and produce the key as she holds her breath, a shudder of relief going through her body as you unlock the cage and her <<getWordPenis false>> springs free, nearly hitting you in the eye.<br>
<br>
"@@.npc_technician;Oh that's such a relief,@@" she pants, one hand wrapped around her shaft. "@@.npc_technician;Do you, do you have a few minutes? I don't think I can go back to work without dealing with this first...@@"<br>
<br>
[<<moveTo "event_technician_chastity_call_first_3" "Take her in hand." 300 "<<set $scene.action='jerk'>>">>]<br>
<<if $player.sec_style.sex.anal && $npc_technician.relationship.done_you>>
[<<moveTo "event_technician_chastity_call_first_3" "Present your rear." 300 "<<set $scene.action='anal'>>">>]<br>
<</if>>
<<if $player.sec_style.sex.blowjob>>
[<<moveTo "event_technician_chastity_call_first_3" "Suck her off." 300 "<<set $scene.action='oral'>>">>]<br>
<</if>>
<<if $player.body_ref.vagina && $player.sec_style.sex.vagina && $npc_technician.relationship.done_vag>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if (setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder)>>
[<<moveTo "event_technician_chastity_call_first_3" "Unlock yourself and ride her." 300 "<<set $scene.action='vag'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is securely locked away.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_technician_chastity_call_first_3" "Ride her." 300 "<<set $scene.action='vag'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_technician_chastity_call_first_3" "Leave her to take care of herself." 300 "<<set $scene.action='leave'>>">>]<br>
<<case 'comfort'>>
You gently encourage your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>, talking about how you know she's stronger than this and that you promise that things will be worth it if she can hold the course...<br>
<br>
She groans in frustration. "@@.npc_technician;Okay... for you. Though you have no idea how much self-restraint it takes not to order my cute Princess to come down and take care of her <<=setup.getNpcName("npc_technician","title")>>!@@"
<<case 'neutral' ''>>
girlfriend, talking about how you know it's hard, but that you have faith in her.<br>
<br>
She groans in frustration. "@@.npc_technician;Okay... for you. Though thinking about how hot and cute and wonderful you are is making this even harder... I made a commitment and I'm going to stick to it!@@"
<<case "sub">>
slave, talking about what a good girl she is for being locked up, and that you promise that things will be worth it if she can hold the course...<br>
<br>
She groans in frustration. "@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... ugh, thinking about what a wonderful, caring, cute owner I have only makes the cage feel even tighter, but I'll try to endure... for you.@@"
<</switch>>
<br><br>
You re-iterate how proud you are of her; and how you're looking forward to having time together after Saturday's game.<br>
<br>
"@@.npc_technician;Saturday? Goddess, that's so far away...@@" She takes a deep breath. "@@.npc_technician;Okay. I can do this. It's just like in game, make save versus temptation, and the cage has to give me advantage, right? Yeah, I can totally do this... Until Saturday, <<switch $npc_technician.relationship.her_role>><<case 'dom'>>Princess<<case 'neutral' ''>>my dear<<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</switch>>.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Hang up and get back to work." 60 "<<set $currentcall=false>><<completeWorkEvent>>">>]
<<case 'stern'>>
You sternly admonish your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>, and that she would show such lack of control as to interrupt your work.<br>
<br>
She groans in frustration. "@@.npc_technician;Oh you naughty thing... you have no idea how much self-restraint it takes not to order my cute Princess to come down and take care of her <<=setup.getNpcName("npc_technician","title")>>, but no, I have to set the example of control.@@"
<<case 'neutral' ''>>
girlfriend, reminding her that she's risking a write-up being away from her desk.<br>
<br>
She groans in frustration. "@@.npc_technician;Ugh, you're right... Ever since <<=setup.getNpcName("npc_admin","formal")>> moved upstairs management has been full of hard-asses... I guess I'll just have to survive... somehow.@@"
<<case "sub">>
slave, that she would interrupt you in the middle of the day — and risk getting in trouble herself!<br>
<br>
"@@.npc_technician;I'm sorry, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... I'll... I'll try to get by. I guess just hearing your voice, knowing that you care that I'm locked up helps, in a way.@@"
<</switch>>
<br><br>
You wish her a good rest of the day and that you're looking forward to your time together after Saturday's game.<br>
<br>
"@@.npc_technician;Saturday? <<if $currentTasks.hasOwnProperty('technician_dinner') && !$currentTasks.technician_dinner.finished>>You're going to keep torturing me through our date Friday? <</if>>Goddess, life is suffering...@@" She takes a deep breath. "@@.npc_technician;Okay. I can do this. It's just like in game, make save versus temptation, and the cage has to give me advantage, right? Yeah, I can totally do this... until Saturday, <<switch $npc_technician.relationship.her_role>><<case 'dom'>>Princess<<case 'neutral' ''>>my dear<<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</switch>>.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Hang up and get back to work." 60 "<<set $currentcall=false>><<completeWorkEvent>>">>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: help technician after removing her chastity
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cancelTechnicianChastity">>
<<set $npc_technician.relationship.her_caged = false>>
<<set $npc_technician.relationship.cage_released = true>>
<<switch $scene.action>>
<<case 'jerk'>>
<<applyExperience 'penis' 12 'very' $SEEN_FRIEND>>
<<case 'anal'>>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<case 'oral'>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<case 'vag'>>
<<playerOrgasm>>
<<case 'leave'>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == 'leave'>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<<else>>
<<set $player.location = 'Bathroom Stall'>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_technician")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'jerk'>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You flutter your eyelashes submissively before "taking over" for your <<=setup.getNpcName('npc_technician', 'title')>>, your fingers wrapping around her glorious royal rod.
<<case 'neutral' ''>>
You smile gently and reach down to take hold of <<=ps(setup.getNpcName('npc_technician', 'first'))>> <<getWordPenis false>>. Her hand falls away as she lustily meets your gaze.
<<case "sub">>
With a stern look on your face you gently pull <<=ps(setup.getNpcName('npc_technician', 'first'))>> hand away before wrapping your fingers around her <<getWordPenis false>>.
<</switch>>
<br><br>
<<=setup.getNpcName('npc_technician', 'first')>> is hot and throbbing between your fingers as she bites her lip to suppress a moan. "@@.npc_technician;Oh Goddess, that feels so good...@@"<br>
<br>
You keep stroking as she shudders in place, clearly trying not to cum too quickly, though her efforts appear to be in vain as it isn't long before a pent-up orgasm explodes forth, with <<=setup.getNpcName('npc_technician', 'first')>> just managing to have the foresight to groan a warning.<br>
<br>
"@@.npc_technician;I'm cuuuummminnnnggg!!!!@@"<br>
<br>
[<<moveTo "event_technician_chastity_call_first_4" "Money-shot!" 180 "<<set $scene.cum='face'>>">>]<br>
[<<moveTo "event_technician_chastity_call_first_4" "Get out of the line of fire." 180 "<<set $scene.cum='wall'>>">>]
<<case 'oral'>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You flutter your eyelashes submissively before "taking over" for your <<=setup.getNpcName('npc_technician', 'title')>>, kneeling down between her legs to wrap your lips around her <<getWordPenis false>>.
<<case 'neutral' ''>>
You smile gently and kneel down to bring your lips to <<=ps(setup.getNpcName('npc_technician', 'first'))>> <<getWordPenis false>>. Her hand falls away as she looks down at you with eyes full of lust.
<<case "sub">>
With a stern expression you gently pull <<=ps(setup.getNpcName('npc_technician', 'first'))>> hand away before bending over and wrapping your lips around her <<getWordPenis false>>.
<</switch>>
<br><br>
Seemingly as sensitive as she is hard <<=setup.getNpcName('npc_technician', 'first')>> desperately attempts to suppress a lusty moan as you
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
swallow her to the root.
<<else>>
work your way a little over halfway down her shaft.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
softly suck on her wet tip.
<<else>>
run your tongue over her tip.
<</if>>
<</if>>
"@@.npc_technician;Goddess...@@" she moans, "@@.npc_technician;I'm so close... oh you feel so good, I'm about to, I'm about to...@@"<br>
<br>
You feel her start to tense between your lips as you realise she's just given you a final warning before she cums...<br>
<br>
[<<moveTo "event_technician_chastity_call_first_4" "Gulp." 180 "<<set $scene.cum='drink'>>">>]<br>
[<<moveTo "event_technician_chastity_call_first_4" "Money-shot!" 180 "<<set $scene.cum='face'>>">>]<br>
[<<moveTo "event_technician_chastity_call_first_4" "Get out of the line of fire." 180 "<<set $scene.cum='wall'>>">>]
<<case 'anal'>>
You turn your back and wiggle your rear,
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
theatrically removing your plug as you wordlessly invite
<<else>>
wordlessly inviting
<</if>>
your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName('npc_technician', 'title')>> to make use of her property.
<<case 'neutral' ''>>
girlfriend to relieve herself in another way.<br>
<br>
<<case "sub">>
slave to relieve herself in another way.<br>
<br>
<</switch>>
You hear the sound of her work-mandated heels take two steps on the tile floor and then she is behind you, her <<getWordPenis false>>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
sliding smoothly into your rear where it belongs.
<<else>>
thrusting up into your rear.
<</if>>
<<else>>
somehow managing to slide into your tight rear.
<</if>>
You moan softly as she presses against you from behind, pressing you up against the side of the stall.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;You really are the perfect slave...@@" she whispers in between thrusts, kissing your neck as her arms wrap possessively around your body.
<<case 'neutral' ''>>
"@@.npc_technician;You really are the most wonderful <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>thing<</switch>>@@" she whispers in between thrusts, kissing your neck as her arms tenderly wrap around your body.
<<case "sub">>
"@@.npc_technician;You are the best <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> a girl could ask for@@" she whispers in between thrusts, kissing your neck as her arms slide worshipfully up and down your body.
<</switch>>
<br><br>
You purr in contentment, grinding back against her as she increases the pace, the both of you struggling to restrain from crying out in passion as you rocket towards climax.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> squeezes you tight as she cums with a gasp, the feel of her <<if $fetish.cum>>load filling you up<<else>>final twitches<</if>> pushing you over the edge as well, the two of you leaning against the wall as the waves of pleasure flow back and forth and eventually fade.<br>
<br>
"@@.npc_technician;I guess... I guess we should get back to work now...@@" she whispers, still tightly held inside your bum.<br>
<br>
"@@.pc;Y-yeah,@@" you respond, the pair of you finally separating as she helpfully<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
replaces your plug and
<</if>>
fixes your clothes.<br>
<br>
You turn around and give her a kiss as you smooth out her skirt, the two of you sharing a final glance before you take a brief moment at the sink to wash up and then head back to your respective desks.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<set $currentcall=false>><<completeWorkEvent>>">>]
<<case 'vag'>>
<<if !setup.checkItemTypeWorn("cage")>>
You peel back your clothes and straddle your
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $npc_technician.relationship.keyholder>>
You present your <<=setup.getItemTypeName('cage')>> and <<=setup.getNpcName('npc_technician', 'first')>> eagerly unlocks you.
<<else>>
You quickly unlock your <<=setup.getItemTypeName('cage')>> and
<</if>>
straddle your
<</if>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName('npc_technician', 'title')>>.
<<case 'neutral' ''>>
girlfriend.
<<case "sub">>
slave.
<</switch>>
<<=setup.getNpcName('npc_technician', 'first')>> moans as you lower yourself all the way down her shaft before burying her face in your <<if $player.body.breastsize[0] > 0>>breasts<<else>>chest<</if>> to stifle a moan.<br>
<br>
"@@.npc_technician;Goddess, you feel so tight and good...@@" You bounce up and down as her words become increasingly breathless. "@@.npc_technician;Ah! I'm so sensitive! I'm so pent up from being caged... I'm going to cum so fucking hard...@@"<br>
<br>
Your response is to speed up, clenching down with every thrust until <<=setup.getNpcName('npc_technician', 'first')>> pulls you in for a climax, kissing you passionately as she bottoms out inside of you, cumming hard as a dual climax rockets through both of your bodies and she almost falls off the seat.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> is still trembling with aftershocks as she squeezes you tight, whispering muffled praise in between kisses as she gradually softens and the two of you descend from the orgasmic high.<br>
<br>
"@@.npc_technician;You really are the best... I could sit here huging you all day, but I think we'd get caught eventually, and then we'd both be in trouble for sure.@@"<br>
<br>
You nod, reluctantly extricating yourself as <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>she helps you back into your cage<<else>>replaces your belt<</if>> and<</if>> the two of you fix your clothes and take a moment to touch up makeup before skipping off back to your respective desks.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<set $currentcall=false>><<completeWorkEvent>>">>]
<<case 'leave'>>
You stand back up and explain that you need to get back to your desk before <<=setup.getNpcName('npc_manager', 'formal')>> notices you're missing. <<=setup.getNpcName('npc_technician', 'first')>> is already focused on herself, and you hear her stifled moans as you leave the bathroom and head for the elevator.<br>
<br>
[<<moveTo $scene.workEventReturn "Hurry back to your desk." 300 "<<set $currentcall=false>><<completeWorkEvent>>">>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: help technician after removing her chastity
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.cum>>
<<case 'face'>>
<<applyExperience 'cum' 14 'very' $SEEN_FRIEND>>
<<case 'drink'>>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == 'leave'>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<<set $player.location = 'Bathroom Stall'>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_technician")>>
<<else>>
<<set $player.location = 'Bathroom Stall'>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_technician")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.cum>>
<<case 'face'>>
You look straight down the barrel of <<=ps(setup.getNpcName("npc_technician","first"))>> crotch cannon as you give a final few strokes. <<=setup.getNpcName("npc_technician","first")>> gasps the first ropey spray of <<getWordCum>> blasts you just above your left eye, but you barely have time to flinch before it goes off again, this time hitting you half in the mouth and have in the cheek — her taste
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
divinely delicious.
<<else>>
delicious.
<</if>>
With a wide smile on your face you lick your lips as you massage <<=ps(setup.getNpcName("npc_technician","first"))>> until the spurts have ended, and you squeeze the final drops out onto your tongue. You swallow with glee and then start wiping it from your face into your mouth, <<=setup.getNpcName("npc_technician","first")>> interrupting partway through to pull you in for a kiss, licking your face clean and sharing in her "prize."
<<else>>
<<if setup.getTotalValue("cum") > 5>>
surprisingly mild.
<<else>>
a bit salty.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> spurts several more times before finally going dormant leaving you blinking back at her in surprise as you feel the warm cum start to drip down your face.<br>
<br>
Still catching her breath, looks at you with awestruck lust before pulling you in for a kiss, her lips roaming your face as she licks you clean while whispering her thanks.
<</if>>
<br><br>
"@@.npc_technician;Well, uh... I guess now we really should be getting back to work...@@"<br>
<br>
You nod, the two of you sharing a final lingering glance before rising to your feet to fix clothes and makeup before heading on your respective ways.
<<case 'drink'>>
With your lips wrapped around the tip of <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> as cums, and cums hard; your cheeks swelling like a chipmunk as she pulses out a massive,
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
divinely
<<else>>
delightfully
<</if>>
delicious
<<else>>
<<if setup.getTotalValue("cum") > 5>>
disturbingly delicious
<<else>>
salty
<</if>>
<</if>>
load.<br>
<br>
Feeling her flow finally stop you lean back and let her spring from your lips with a pop. Running your tongue through the pool of girl juices you show off for a moment before theatrically swallowing it in one big gulp.<br>
<br>
Her <<getWordPenis false>> twitches as if it might somehow get a second wind, but instead she just pulls you in for a kiss. "@@.npc_technician;Goddess you are so devilishly hot. The cutest, sexiest egg I've ever seen cracked.@@"<br>
<br>
You blush at the compliment before <<=setup.getNpcName("npc_technician","first")>> helps you to your feet; the two of you taking a few moments to clean up before heading back to your respective desks.
<<case 'wall'>>
Thanks to <<=ps(setup.getNpcName("npc_technician","first"))>> warning you're able to get out of the line of fire for her to splatter a massive, multi-load across the far wall of the stall.<br>
<br>
You can't help but gawk at what was just unleashed as <<=setup.getNpcName("npc_technician","first")>> catches her breath and, with a moment's look of embarrassment at the mess she's made, she pulls you in for a kiss. "@@.npc_technician;Holy heck that was good, you're so wonderful.@@"<br>
<br>
You spend a few more minutes snogging before reluctantly returning to your feet and making an effort to clean up to return to your respective jobs.
<<default>>
ERROR: unexpected scene.cum <<=$scene.cum>>
<</switch>>
<br><br>
[<<moveTo $scene.workEventReturn "Hurry back to work." 300 "<<set $currentcall=false>><<completeWorkEvent>>">>]
</div>/*#
#desc: discuss technician chastity situation
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Down to just the two of you <<=setup.getNpcName("npc_technician","first")>> somewhat nervously bites her lip. "@@.npc_technician;So... um sorry about earlier this week but...@@" she shifts awkwardly and then just blurts it out. "@@.npc_technician;Fuckit — just tell me what you want! Being locked in a cage like this is starting to drive me mad! Why must you lock me away from my lovely lady lance? I mean... sure, being locked up SOUNDS hot... and it is, but it's also a little infuriating...@@"<br>
<br>
[<<moveTo "event_technician_chastity_decision_2" "You want to help train her to be anal only." 300 "<<set $scene.action='anal'>>">>]<br>
[<<moveTo "event_technician_chastity_decision_2" "She's in chastity because you want to protect YOUR property." 300 "<<set $scene.action='own'>>">>]<br>
[<<moveTo "event_technician_chastity_decision_2" "You just wanted to see how she took to it; remove her cage." 300 "<<set $scene.action='remove'>>">>]
</div>/*#
#desc: determine technician chastity style
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'anal'>>
<<set $npc_technician.relationship.cage_style = 'anal'>>
<<if $npc_technician.relationship.caged_anal.stage < 1>>
<<set $npc_technician.relationship.caged_anal.stage = 1>>
<</if>>
<<case 'own'>>
<<set $npc_technician.relationship.cage_style = 'own'>>
<<if $npc_technician.relationship.caged_own.stage < 1>>
<<set $npc_technician.relationship.caged_own.stage = 1>>
<</if>>
<<case 'remove'>>
<<set $npc_technician.relationship.her_caged = false>>
<<include "cancelTechnicianChastity">>
<</switch>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'anal'>>
You grin and reply that you think she's much better caged, and that she had best get used to it, because you have decided to help make her anal only.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Anal only—@@" She looks at you with surprise. "@@.npc_technician;You know, as your <<=setup.getNpcName('npc_technician', 'title')>> I should put my foot down on that sort of thing, but the thought of it is just WAY too hot so... okay, I'm in... but you better fuck me good, because if I'm going to be anal only, my bum is going to be insatiable.@@"
<<case 'neutral' ''>>
"@@.npc_technician;Anal only? I should be a bit hurt, but in actuality I'm even more turned on. Okay, I'm in, but I hope you know what you're getting into because this bum is already kind of insatiable...@@"
<<case "sub">>
"@@.npc_technician;Of course, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> this slave is yours to use... and right now she really, really wants to be used...@@"
<</switch>>
<br><br>
[<<moveTo "event_technician_chastity_decision_3" "Reinforce things by fingering and rimming her rear." 900 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_technician_chastity_decision_3" "Change your mind, you aren't ready for the responsibility of being a keyholder." 180 "<<set $scene.abort=true>>">>]
<<case 'own'>>
You grin and reply that one puts locks on valuable possessions, which is exactly why you plan to keep her locked whenever you aren't using her scrumptious sapphic saber...<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Hold up there, Princess — so I own you, but you own my cock?@@" She takes a moment to puzzle that out. "@@.npc_technician;Okay... that's really fucking hot, but, as your <<=setup.getNpcName('npc_technician', 'title')>> I'm going to have to insist on some conjugal visits... if you know what I mean...@@"
<<case 'neutral' ''>>
"@@.npc_technician;Okay... so maybe it's my inner sub but that's so fucking hot... I'm in... though... I can't say I couldn't really go for you making use of your property right about now...@@"
<<case "sub">>
"@@.npc_technician;Of course, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> this slave is yours to use... and right now she really, really wants to be used...@@"
<</switch>>
<br><br>
[<<moveTo "event_technician_chastity_decision_3" "Reinforce things by spending some time worshiping her caged monstress." 300 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_technician_chastity_decision_3" "Change your mind, you aren't ready for the responsibility of being a keyholder." 180 "<<set $scene.abort=true>>">>]
<<case 'remove'>>
You smile, remarking that you just thought it'd be a bit of fun to have her locked<<if setup.checkItemTypeWorn("cage")>> too<</if>> before unlocking her cage.<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> springs free of its prison before <<=ps(setup.getNpcName("npc_technician","first"))>> wrangles it back under her clothes. With a mix of fear and excitement she stares at the cage for a few moments before putting it away. "@@.npc_technician;Thanks, it's good to be free... though, if you wanted... well, you being my keyholder WAS pretty fucking hot...@@"<br>
<br>
The two of you share a quick laugh as she pulls you onto the couch with her to cuddle.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Cuddle up on the couch." 180>>]
<</switch>>
</div>/*#
#desc: technician chastity style first reinforcement
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.abort>>
<<set $npc_technician.relationship.her_caged = false>>
<<include "cancelTechnicianChastity">>
<<else>>
<<set _nextDate = setup.setNextDate($now, 3, 16, 0)>>
<<addWorkEvent 'technician_chastity_second' _nextDate>>
<<if $npc_technician.relationship.cage_style == 'own'>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You change your mind and explain to <<=setup.getNpcName("npc_technician","first")>> that, as you think back on the previous week, being her keyholder is a bit more responsibility than you're prepared to deal with.<br>
<br>
"@@.npc_technician;Aww... and just when I was starting to get adjusted...@@" she winks and waits for you to unlock her <<getWordPenis false>>. "@@.npc_technician;Of course, this is pretty fun too, right?@@" She adds with a grin, her <<getWordPenis false>> pressing into you as the pair of you curl up on the couch.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Cuddle up on the couch." 180>>]
<<else>>
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
With a smile you guide <<=setup.getNpcName("npc_technician","first")>> to bend over and present her rear for your inspection.<br>
<br>
You spread her cheeks with both hands, ignoring her caged cutie dangling below as you probe her lovely hole; first teasing the tight ring with your fingertip before coaxing it open with your tongue.<br>
<br>
She tastes and smells wonderfully feminine and you bury your face between her cheeks as you squeeze her bum as she moans. "@@.npc_technician;Oh Goddess — if this is the reward for being locked I could get used to this...@@"<br>
<br>
You grin, probing as deep as you can with your tongue before bringing your fingers back into the picture and into your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName('npc_technician', 'title')>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>>. One, two, then finally three fingers are curling in her bottom, massaging her sensitive prostate until you coax a spurting orgasm to leak out of her cage.<br>
<br>
"@@.npc_technician;Y-yes...<<if $npc_technician.relationship.her_role == 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</if>>@@" she moans, her cage twitching and dripping with excitement.<br>
<br>
"@@.pc;Good girl,@@" you whisper as you give her rear a final squeeze. A little wobbly on her feet she smiles back at you, grabbing a towel for clean-up before lying back against you on the couch.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Cuddle up on the couch." 180>>]
<<case 'own'>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You slide submissively to your knees, holding <<=ps(setup.getNpcName("npc_technician","formal"))>> skirt out of the way as you start worshipfully kissing her cage.
<<case 'neutral' ''>>
You smile and kneel down, gently drawing <<=ps(setup.getNpcName("npc_technician","first"))>> skirt to the side to begin landing gentle kisses on her cage.
<<case "sub">>
You grin slyly as you motion for <<=setup.getNpcName("npc_technician","first")>> to lift her skirt as you guide her down, laying soft kisses on her cage.
<</switch>>
<br><br>
"@@.pc;So beautiful, so perfect... and all mine...@@" you whisper, kissing your way from the tip of her cage on up her imprisoned shaft before going lower, softly licking her trembling balls.<br>
<br>
You rub her steel-locked <<getWordPenis false>> against your cheek while staring up as she bites her lip and looks longingly back down. "@@.npc_technician;Please...@@" she whispers and you wink, continuing to lavish her with affection, talking about how glorious she is, and what an honour you consider it that she would give herself to you to keep safely locked. She strains within the cage, mewing softly and dripping every so slightly as you continue to shower her with adoration over her lovely locked state until she is all but moaning in desperation.<br>
<br>
"@@.pc;Later, my love,@@" you reply, fixing her skirt and pulling her onto the couch with you.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Cuddle up on the couch." 180>>]
<<default>>
ERROR: unexpected npc_technician.relationship.cage_style <<=$npc_technician.relationship.cage_style>>
<</switch>>
<</if>>
</div>/*#
#desc: cuddle after chastity scene
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You cuddle with <<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","formal")>>
<<case 'neutral' ''>>
<<=setup.getNpcName("npc_technician","first")>>
<<case "sub">>
your subby slave
<</switch>>
and consider what to do next.
<br><br>
<<include "post_session_options">>
</div>/*#
#desc: technician sexts you about being locked in chastity
#status: FINISHED 0.8.2.0
#ignore_spell: <3
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location = 'Phonecall'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone buzzes with a text. You pull your phone out to discover that a sext — a picture of <<=ps(setup.getNpcName("npc_technician","first"))>> caged <<getWordPenis false>> with an accompanying message —
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
"@@.npc_technician;Locked up and looking forward to spreading my cheeks for my <<switch $npc_technician.relationship.her_role>><<case 'dom'>>Princess<<case 'neutral' ''>>love<<case "sub">><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</switch>>. <3 your eager anal <<if $npc_technician.relationship.her_role == 'sub'>>slave<<else>>slut<</if>>.@@"
<<case 'own'>>
"@@.npc_technician;Keeping your property safe and secure. Being owned is hard work and I can't wait for you to use your property...@@"
<<default>>
ERROR: unexpected npc_technician.relationship.cage_style <<=$npc_technician.relationship.cage_style>>
<</switch>>
<br><br>
[<<moveTo "event_technician_chastity_call_second_2" "Text her back some encouragement." 180>>]
</div>/*#
#desc: encourage technician sext in chastity
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEvent 'technician_chastity_reinforce_game'>>
<</if>>
<<set $player.location = 'Phonecall'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
You text back how proud you are of <<=ps(setup.getNpcName("npc_technician","first"))>> adjustment to her cage and that you are very much looking forward to rewarding her efforts with toe-curling analgasms.<br>
<br>
"@@.npc_technician;Destroy my ass, <<switch $npc_technician.relationship.her_role>><<case 'dom'>>Princess<<case 'neutral' ''>><<switch $npc_technician.flags.knowgender>><<case 'female'>>babe<<case 'male'>>bro<<default>>hot stuff<</switch>><<case "sub">><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</switch>>. I can't wait ttyl.@@"
<<case 'own'>>
You text back how beautiful she looks, and how proud you are to own something so lovely.<br>
<br>
"@@.npc_technician;You're the best, <<switch $npc_technician.relationship.her_role>><<case 'dom'>>Princess<<case 'neutral' ''>><<switch $npc_technician.flags.knowgender>><<case 'female'>>babe<<case 'male'>>bro<<default>>hot stuff<</switch>><<case "sub">><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</switch>>. I'll let you get back to things... though I hope I stick in your brain... just like I'm thinking about you sticking in me!@@"
<</switch>>
<br><br>
[<<moveTo $scene.workEventReturn "Put your phone away and get back to what you were doing." 180 "<<completeWorkEvent>><<set $currentcall = false>>">>]
</div>/*#
#desc: technician provides update
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Once everyone else is gone <<=setup.getNpcName("npc_technician","first")>> eagerly lifts her skirt to present her caged, dripping <<getWordPenis false>>.
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
"@@.npc_technician;So, I was thinking... since I'm supposed to be anal only... well, how about we give me something to practice with?@@"<br>
<br>
Reaching behind the couch she pulls out a silicone mold casting kit.
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
"@@.npc_technician;Well? What do you say about giving me a clone of your wonderful wang to practice with?@@"
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder>>
"@@.npc_technician;How about we unlock you for a moment so we can take a cast of that scrumptious <<if $fetish.sissy>>sissy schlong<<else>><<getWordMyPenis false>><</if>>?@@"
<<else>>
<<set $scene.fist=true>>
"@@.npc_technician;So I know you're all locked up, but I figured we could cast your fist? I really want some of you in me, and the thought of having you wrist deep would give me something to REALLY work towards. I got some ultra-soft silicone so it should be forgiving enough to ease my way towards the real thing...@@"
<</if>>
<</if>>
<<else>>
<<set $scene.fist=true>>
"@@.npc_technician;So, since you don't have a <<getWordPenis false>>, well... I was thinking we could cast your fist? I really want some of you in me, and the thought of having you wrist deep would give me something to REALLY work towards, and I've got some super-soft silicone so it should be forgiving enough to ease my way towards the real thing...@@"
<</if>>
<br><br>
[<<moveTo "event_technician_chastity_reinforce_2" "You hear the Wizard; start casting!" 180 "<<set $scene.abort=false>>">>]<br>
<<case 'own'>>
"@@.npc_technician;Soo... your property has been safely locked and secured for two whole weeks... do you think that, maybe... well... you'd like to take it out for a bit to check on?@@"<br>
<br>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_technician_chastity_reinforce_2" 'It is time to feel "your" property in your pussy...' 180 "<<set $scene.anal=false>><<set $scene.abort=false>>">>]<br>
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder>>
[<<moveTo "event_technician_chastity_reinforce_2" 'It is time to unlock the both of you to feel "your" property in your pussy...' 180 "<<set $scene.anal=false>><<set $scene.abort=false>>">>]<br>
<<else>>
[@@.link_locked;Your options are restricted by your own chastity belt.@@]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "event_technician_chastity_reinforce_2" "Take her for a ride... in your butt." 180 "<<set $scene.anal=true>><<set $scene.abort=false>>">>]<br>
<</switch>>
[<<moveTo "event_technician_chastity_reinforce_2" "Actually... you're ready to stop chastity play." 180 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: reinforce technician chastity — cast vs. amazon
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.abort>>
<<set $npc_technician.relationship.her_caged = false>>
<<include "cancelTechnicianChastity">>
<<else>>
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
<<if !$scene.fist>>
<<set $player.timebased.horny = 100>>
<</if>>
<<set $npc_technician.relationship.cage_fist = $scene.fist>>
<<if $npc_technician.relationship.caged_anal.stage < 2>>
<<set $npc_technician.relationship.caged_anal.stage = 2>>
<</if>>
<<case 'own'>>
<<set $scene.removeCage = !$scene.anal && setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.analvirgin = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_technician">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "voluntary">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_admin.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<<playerOrgasm>>
<<if $npc_technician.relationship.caged_own.stage < 2>>
<<set $npc_technician.relationship.caged_own.stage = 2>>
<</if>>
<</switch>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You decide to unlock <<=setup.getNpcName("npc_technician","first")>>, explaining that, while things have been fun, this is about as far as you want to take the whole keyholding thing.<br>
<br>
"@@.npc_technician;Aww... and just when I was starting to get adjusted...@@" she winks and waits for you to unlock her <<getWordPenis false>>. "@@.npc_technician;Of course, this is pretty fun too, right?@@" She adds with a grin, her <<getWordPenis false>> pressing into you as the pair of you curl up on the couch.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Cuddle up on the couch." 180>>]
<<else>>
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
<<=setup.getNpcName("npc_technician","first")>> pulls out <<if $scene.fist || $player.body.penissize[0] > 3>>a large<<else>>an<</if>> acrylic cylinder and then carefully measures out the casting material, stirring it while
<<if $scene.fist>>
you get your hand nice and clean and she talks you through position.<br>
<br>
"@@.npc_technician;Okay, so you'll want to kind of point your hand a bit so there's a taper. I don't want you punching your way in!@@"<br>
<br>
You nod and do a few test positionings as she finishes the mixing and then pours things into the cylinder.<br>
<br>
"@@.npc_technician;Alright — fist in, then hold it for a couple minutes while it sets.@@"<br>
<br>
You do as instructed, shivering a little at the cool, gloopy material as <<=setup.getNpcName("npc_technician","first")>> taps and fiddles a bit to make sure things are settled and minimise air-bubbles.<br>
<br>
"@@.npc_technician;And while we wait, and you're half helpless...@@" she states with a smile before leaning in, your free hand working overtime caressing her as she holds your other arm still and kisses you while you feel things slowly set up.
<<else>>
<<if !setup.checkItemTypeWorn("cage")>>
sucking you fully hard.
<<else>>
you extricate yourself from your own chastity device and she sucks you fully hard.
<</if>>
"@@.npc_technician;So you need to just jam it in, then hold things still while it sets — I'll take care of making sure you stay hard the whole time.@@"<br>
<br>
You nod as she finishes mixing and fills the tube. Positioning is a little tricky, but you soon thrust down, your attention focused on balancing at the slightly odd angle as <<=setup.getNpcName("npc_technician","first")>> keeps you stimulated — kissing and licking and stroking your sensitive skin as she whispers how wonderful you are — and how much she's going to enjoy practicing with her new toy. "@@.npc_technician;Not half as hot as the real thing, of course, but you can't be pounding my ass all the time, so it'll be good to have a back-up... heh, back...@@"
<</if>>
<br><br>
[<<moveTo "event_technician_chastity_reinforce_3" "Continue." 180>>]
<<case 'own'>>
You guide
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
your <<=setup.getNpcName("npc_technician","title")>>
<<case 'neutral' ''>>
your girlfriend
<<case "sub">>
your slave
<</switch>>
to sit back on the couch and spread her legs, gushing about how beautiful she looks in her cage, and how now you're going to take care of everything.<br>
<br>
She looks adoringly up at you as you leisurely unlock her chastity, placing it to one side as she nigh instantly rises to full hardness.<br>
<br>
You bend her legs forward, assuming the Amazon position as you lower yourself
<<if $scene.anal>>
ass-first
<<else>>
<</if>>
onto the edifice that is her erect <<getWordPenis false>>.<br>
<br>
She moans as you look down and smile
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
as you talk about how good your <<=ps(setup.getNpcName("npc_technician","title"))>> feels inside you; how happy you are to keep it protected; how she's saved it only for you.
<<case 'neutral' ''>>
as you tell her how good she feels inside of you; how happy you are to keep her <<getWordPenis false>> protected; how she's saved it only for you.
<<case "sub">>
as you tell your slave how good she feels beneath you; how pleased you are by her progress, and how happy you are knowing that she will be locked and safe when not in use.
<</switch>>
<br><br>
<<=ps(setup.getNpcName("npc_technician","first"))>> response is an indistinct moan, her body shaking with each thrust as you rise up and down, squeezing and pumping as you ride her hard and deep until she is begging for permission to cum.<br>
<br>
"@@.npc_technician;Please — I've been locked so long, and you feel so good...@@"<br>
<br>
[<<moveTo "event_technician_chastity_reinforce_3" "Make her cum." 180>>]
<</switch>>
<</if>>
</div>/*#
#desc: reinforce technician chastity finish
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
<<case 'own'>>
<<if !$scene.anal && $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</switch>>
<<set _nextDate = setup.setNextDate($now, 2, 23, 0)>>
<<addEvent 'technician_chastity_third' _nextDate>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
The timer goes off and <<=setup.getNpcName("npc_technician","first")>> guides you to carefully extricate yourself from the cylinder and <<=setup.getNpcName("npc_technician","first")>> takes a moment to inspect your work. "@@.npc_technician;Looks like a good cast — it takes a bit longer for the silicone to cure, but by tomorrow I'm going to have a nice beautiful clone of you to practice with...@@"<br>
<br>
You grin, congratulating her on the ingenuity as she starts the silicone to setting and then joins you on the couch.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Snuggle on the couch." 1800>>]
<<case 'own'>>
You grin and nod, flesh slapping loudly as you increase your pace until she sprays you full of lady cream<<if $scene.anal && setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> and you seal it in with your plug<<elseif $scene.removeCage>> and you lock it in under your chastity belt<</if>>.<br>
<br>
She goes limp as you cage her back up and join her on the couch, one hand possessively wrapped around your locked property as she cuddles back into you.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Recover on the couch." 1800>>]
<</switch>>
</div>/*#
#desc: technician sexts you about being locked in chastity again
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _nextDate = setup.setNextDate($now, 4, 18, 0)>>
<<addEvent 'technician_chastity_fourth' _nextDate>>
<</if>>
<<set $player.location = 'Phonecall'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($scene.beforetasklocation.last(),"hotties")>>
You get an in-game message from <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_technician;Between rounds, check your phone ^_^@@"<br>
<br>
You're intrigued, but finish out the round before pulling out your phone to find a
<<else>>
Your phone buzzes and you pull it out to find another
<</if>>
sext from <<=setup.getNpcName("npc_technician","first")>>.
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
She's laid back on her bed,
<<if $npc_technician.relationship.cage_fist>>
the silicone copy of your fist wrist-deep in her ass, her locked <<getWordPenis false>> dripping down onto it from above.<br>
<br>
"@@.npc_technician;Been training hard, and now I can't wait for the real thing!@@"
<<else>>
her lips wrapped around one silicone copy of yourself, while a second is being thrust in and out of her rear by a vigorous fucking machine, her caged <<getWordPenis false>> bouncing "safely" just above the thrusting rod.<br>
<br>
"@@.npc_technician;Since I had the form I decided to make two copies... though all this practice just makes me yearn for the real thing even harder...@@"
<</if>>
<<case 'own'>>
She's laid back on her bed, locked <<getWordPenis false>> on display at the centre of the frame.<br>
<br>
"@@.npc_technician;Just thought you might want to check in on your property before bed — everything is all locked and safe... and I'm eager for the next time you decide to pull out your toy...@@"
<<default>>
ERROR: unexpected npc_technician.relationship.cage_style <<=$npc_technician.relationship.cage_style>>
<</switch>>
<br><br>
<<if setup.inPassageTag($scene.beforetasklocation.last(),"hotties")>>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to the game!" $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
You thank her for the missive and text back encouragement and she wishes you good-night.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<if $scene.beforetasklocation.last() == 'room_wake_up'>><<applyFatigue -100>><</if>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: technician friend sexts you about her chastity
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location = 'Phonecall'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
<<=setup.getNpcName("npc_maid","first")>>.<br>
<br>
"@@.npc_maid;Hey! So <<=setup.getNpcName("npc_technician","first")>> let slip the training you've been doing with her and... well, I think it's pretty awesome.
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
Given your <<if $fetish.sissy>>sissy <</if>>micro-dick though... well, I thought my "Destroyer" might be of use.
<<else>>
I was thinking my "Destroyer" might be of use.
<</if>>
<<case 'spe'>>
With your adorably perfect size, however, well... I thought my "Destroyer" might be of use.
<<default>>
I was thinking my "Destroyer" might be of use.
<</switch>>
You'd be supervising, of course, but I figure a nice large flesh-and-blood member could be just what you need to drill <<=ps(setup.getNpcName("npc_technician","first"))>> new reality in deep.
<<case 2 3>>
I'm sure you're focused on using her yourself, but I thought my "Destroyer" might be of some additional instructive utility. You'd be supervising, of course, but I figure a nice large flesh-and-blood member could be just what you need to drill <<=ps(setup.getNpcName("npc_technician","first"))>> new reality in deep.
<<case 4 5>>
I was thinking — what's better than one giant girl cannon... than two? In other words, I'd like to offer my "Destroyer" for training purposes. You'd be supervising, of course, but I thought a double team would be just the trick to drill <<=ps(setup.getNpcName("npc_technician","first"))>> new reality in deep.
<<case 6>>
I know you dwarf even my "destroyer" — a bit scary to be frank, but maybe I could still be of some assistance in training <<=setup.getNpcName("npc_technician","first")>> to embrace her new situation? Under your supervision, of course.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
I was thinking, well... making her anal only is great, but you might be wanting a flesh and blood femme cannon to really drill things home. So... I thought I'd offer my services in the matter. Under your supervision, of course.
<</if>>
Anyway, think about it and let me know after game.@@"<br>
<br>
You thank <<=setup.getNpcName("npc_maid","first")>>
<<case 'own'>>
<<=setup.getNpcName("npc_barista","nickname")>>. "@@.npc_barista;Heya! So I was, like, chatting with <<=setup.getNpcName("npc_technician","first")>> about stuff and your training came up. I was thinking that maybe I could help? I'd love to lend my holes as, like, a reward for when you decide to let her out for a bit? Anyway, just let me know if you want me to stick around after game for her to stick it in me!@@"<br>
<br>
You thank <<=setup.getNpcName("npc_barista","nickname")>>
<<default>>
ERROR: unexpected npc_technician.relationship.cage_style <<=$npc_technician.relationship.cage_style>>
<</switch>>
for the offer and reply you'll keep her in mind.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: technician chastity own variant final reward w/barista
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You signal for <<=setup.getNpcName("npc_barista","nickname")>> to remain and she grins gleefully as <<=setup.getNpcName("npc_technician","first")>> looks back and forth between you. You grin and approach your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>,
<<case 'neutral' ''>>
girlfriend,
<<case "sub">>
slave,
<</switch>>
squeezing her cage through her clothes as you explain that <<=setup.getNpcName("npc_barista","nickname")>> is here to help with a special celebration of <<=setup.getNpcName("npc_technician","first")>> having kept your property safe and secure.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip and swoons, pulsing inside her cage as you lead her into the bedroom...<br>
<br>
[<<moveTo "event_technician_chastity_final_own_barista_2" 'Continue.' 1800>>]
</div>/*#
#desc: technician chastity own variant barista worship
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
In <<=ps(setup.getNpcName('npc_technician', 'first'))>> bedroom you help remove her clothes until she is down to just her chastity cage before spreading her over the bed, taking advantage of her built-in restraints to restrain her spread eagled and exposed, a pillow propped under her head to give her a comfortable, unobstructed view of your locked property.<br>
<br>
You slide across the bed to curl up next to your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","formal")>>,
<<case 'neutral' ''>>
girlfriend,
<<case "sub">>
slave,
<</switch>>
massaging her through the cage with one hand as you whisper how proud you are of her keeping your property locked and secure, and how honoured you are that she would entrust you with such ownership.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> moans and drips through her cage as you lean in for a kiss, the passionate explorations of her tongue saying far more than words ever could about how happy she is to be "yours." <br>
<br>
You produce the key and nod for <<=setup.getNpcName("npc_barista","nickname")>> to approach, as you explain that <<=ps(setup.getNpcName("npc_technician","first"))>> has earned her a reward...<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_barista","nickname")>> are both watching with rapt anticipation as you unlock the cage and take hold of <<=ps(setup.getNpcName("npc_technician","first"))>> swelling <<getWordPenis false>>. But a few tender strokes of your hand are sufficient to having it standing proud and free, just in time for <<=setup.getNpcName("npc_barista","nickname")>> to join the party, deep-throating it to the root in a single gulp, her eyes rolling back in an expression of pure bimbo bliss.<br>
<br>
As <<=setup.getNpcName("npc_barista","nickname")>> sucks you resume kissing and teasing your helplessly bound babe; your fingers roaming her body as your lips explore her sensitive neck and nibble her ears, all the while whispering how you adore her, and how much she has earned this.<br>
<br>
[<<moveTo "event_technician_chastity_final_own_barista_3" 'Continue.' 1800>>]
</div>/*#
#desc: technician chastity own variant barista worship finish
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.caged_own.stage = 3>>
<<set $npc_technician.relationship.caged_own.help = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You act as the director and controller of "your" property, teasing and encouraging <<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
your <<=setup.getNpcName("npc_technician","title")>>
<<case 'neutral' ''>>
<<=setup.getNpcName("npc_technician","first")>>
<<case "sub">>
your slave
<</switch>>
while <<=setup.getNpcName("npc_barista","nickname")>> unleashes every ounce of skill through both hands and all three of her holes to stimulate, edge, ruin and then, finally, grant <<=setup.getNpcName("npc_technician","first")>> a climax so strong she nearly pulls the bed apart in the process of thrashing against her bonds.<br>
<br>
After riding out <<=ps(setup.getNpcName("npc_technician","first"))>> euphoric spasms, and removing the gag you had been forced to shove into her mouth, you seal her <<getWordPenis false>> with a kiss and lock her back up before removing her restraints. <<=ps(setup.getNpcName("npc_technician","first"))>> arms instantly wrap around you as she whispers her appreciation and thanks.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" 'Wish <<=setup.getNpcName("npc_barista","nickname")>> goodnight and cuddle up with <<=setup.getNpcName("npc_technician","first")>> on the couch.' 180>>]
</div>/*#
#desc: technician chastity own variant intro
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
With your friends departed, you lead <<=setup.getNpcName("npc_technician","first")>> into the bedroom before she giddily skips ahead, sitting back on the bed and spreading her legs to display her cage.<br>
<br>
"@@.npc_technician;Take me, <<switch $npc_technician.relationship.her_role>><<case 'dom'>>Princess<<case 'neutral' ''>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</switch>>!@@" She calls out with a wide grin as she shimmies out of her clothes and gestures towards the restraints already attached to the corners of her four-poster bed.<br>
<br>
[<<moveTo "event_technician_chastity_final_own_solo_2" 'Restrain her and have some fun with "your" property.' 300>>]<br>
[<<moveTo "event_technician_chastity_final_own_solo_abort" "Actually... you'd rather just cuddle on the couch." 180>>]
</div>/*#
#desc: technician chastity own variant intro
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions = {
"penis" : false,
"vag" : false,
"oral" : false,
"anal" : false,
"breasts" : false,
}>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You grin at <<=ps(setup.getNpcName("npc_technician","first"))>> eagerness, quickly cuffing her to the bed before pulling out the key to her cage and revealing your prize.<br>
<br>
She wiggles her hips, her hardness swaying seductively as everything about her invites you in to have fun...<br>
<br>
<<include "technicianChastityOwnChoices">>
</div>/*#
#desc: cuddle after chastity scene
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
As seductive as <<=setup.getNpcName("npc_technician","first")>> looks spread before you, you explain you're not up for finishing this tonight.<br>
<br>
"@@.npc_technician;Aww,@@" she replies, with a lopsided grin. "@@.npc_technician;Well... I guess that's okay, come on, lets cuddle!@@"<br>
<br>
You help her up off the bed and back into her clothes before returning to the living room, her cage in place.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Cuddle up on the couch." 180>>]
</div><<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $scene.actions.penis>>
[@@.link_locked;You have already rubbed penises together.@@]<br>
<<else>>
[<<moveTo "event_technician_chastity_final_own_solo_3" 'Rub your <<getWordMyPenis false>> against her <<getWordPenis false>>.' 300 "<<set $scene.action='penis'>>">>]<br>
<</if>>
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder>>
<<if $scene.actions.penis>>
[@@.link_locked;You have already rubbed penises together.@@]<br>
<<else>>
[<<moveTo "event_technician_chastity_final_own_solo_3" 'Unlock and rub your <<getWordMyPenis false>> against her <<getWordPenis false>>.' 300 "<<set $scene.action='penis'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is locked up.@@]<br>
<</if>>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $scene.actions.vag>>
[@@.link_locked;You have already ridden her.@@]<br>
<<elseif $player.virgin.penis>>
[<<moveTo "event_technician_chastity_final_own_solo_3" 'Ride her.' 300 "<<set $scene.action='vag'>>">>]<br>
<<else>>
[@@.link_locked;This is a momentous event already... you think you'll save losing your penile virginity for another occasion.@@]<br>
<</if>>
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder>>
<<if $scene.actions.vag>>
[@@.link_locked;You have already ridden her.@@]<br>
<<elseif $player.virgin.vaginal>>
[<<moveTo "event_technician_chastity_final_own_solo_3" 'Unlock your chastity belt and ride her.' 300 "<<set $scene.action='vag'>>">>]<br>
<<else>>
[@@.link_locked;This is a momentous event already... you think you'll save losing your vaginal virginity for another occasion.@@]<br>
<</if>>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked up.@@]<br>
<</if>>
<</if>>
<</if>>
<<if $scene.actions.oral>>
[@@.link_locked;You have already blown her.@@]<br>
<<else>>
[<<moveTo "event_technician_chastity_final_own_solo_3" 'Suck and lick her for a bit.' 300 "<<set $scene.action='oral'>>">>]<br>
<</if>>
<<if $scene.actions.anal>>
[@@.link_locked;You have already had her in your butt.@@]<br>
<<elseif $player.virgin.anal || $player.virgin.pegged && $fetish.pegging_is_anal>>
[<<moveTo "event_technician_chastity_final_own_solo_3" 'Squat down on her <<getWordPenis false>>.' 300 "<<set $scene.action='anal'>>">>]<br>
<<else>>
[@@.link_locked;This is a momentous event already... you think you'll save losing your anal virginity for another occasion.@@]<br>
<</if>>
<<if $player.body.breastsize[0] >= 5>>
<<if $scene.actions.breasts>>
[@@.link_locked;You have already given her a boob job.@@]<br>
<<else>>
[<<moveTo "event_technician_chastity_final_own_solo_3" 'Give her a boob job.' 300 "<<set $scene.action='breasts'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_technician_chastity_final_own_solo_abort" "Actually... you'd rather just cuddle on the couch." 180>>]/*#
#desc: technician chastity own variant sex
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions[$scene.action] = true>>
<<switch $scene.action>>
<<case 'oral'>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<changeHorny 5>>
<<case 'anal'>>
<<applyExperience 'anal' npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<changeHorny 20>>
<<case 'vag'>>
<<changeHorny 20>>
<<case 'penis'>>
<<changeHorny 10>>
<<case 'breasts'>>
<<changeHorny 10>>
<</switch>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'oral'>>
Keeping eye-contact with <<=setup.getNpcName("npc_technician","first")>> you caress and kiss her perfect penile pilar; licking it from base to tip, your tongue swirling under the stretched hood before you part your lips and swallow her all the way down.<br>
<br>
She moans and you hum for additional stimulation, treating her and your throat both for as long as you can before a need for air forces you to back off.
<<case 'anal'>>
Carefully squatting on the bed
<<if setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow'])>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
you guide <<=setup.getNpcName("npc_technician","first")>> in through your hollow plug.
<<else>>
you remove your plug to replace with <<=setup.getNpcName("npc_technician","first")>>.
<</if>>
<<else>>
your guide <<=setup.getNpcName("npc_technician","first")>> into your rear<<if $player.body_ref.vagina>> hole<</if>>.
<</if>>
<br><br>
"@@.npc_technician;So tight...@@" she moans as your bottom touches down against her thighs. Steadying your balance you lean back slightly and then start moving up and down, grinding against her for several minutes before rising off to leave her wanting more.
<<case 'vag'>>
<<if setup.checkItemTypeWorn("cage")>>
You Take a moment to unlock your chastity belt and then crawl on top of <<=setup.getNpcName("npc_technician","first")>>.
<</if>>
Sitting up tall you pose as you guide <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> up into your slippery slit.<br>
<br>
She softly moans in pleasure as you slide all the way down, before doing her part and bucking softly as you grind on top of her. As good as she feels inside of you, you are careful to rise off before she can climax leaving her hard and glistening and eager for more.
<<case 'penis'>>
<<if setup.checkItemTypeWorn("cage")>>
You theatrically unlock yourself and slide up between <<=ps(setup.getNpcName("npc_technician","first"))>> legs.
<</if>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<=setup.getNpcName("npc_technician","first")>> large lady lance may dwarf your own hard member, but that doesn't change the fact that she moans and drips as you rub up against her; your hands squeezing the two of you together for a cross between a fencing match and a handjob.
<<case 2 3>>
You wrap your hands against <<=ps(setup.getNpcName("npc_technician","first"))>> large lady lance and your own, more modest member and start stroking, your dual excitement providing plenty of lube as you rub and stroke the both of you.
<<case 4 5>>
It takes both hands for you to wrangle yours and <<=ps(setup.getNpcName("npc_technician","first"))>> dual large dongs, but you enthusiastically rub and stroke as she leaks excitement.
<<case 6>>
The combination of your own massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-dong<<elseif $player.body_ref.horsecock>>horse-cock<<elseif $player.body_ref.knot>>dog-cock<<else>>member<</if>> along with <<=ps(setup.getNpcName("npc_technician","first"))>> far from immodest femme flag-pole is almost more than you can handle, even with both hands. Squeezing hard with a double-grip you rub and stroke as you grind against her, liquid excitement leaking down profusely.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<case 'breasts'>>
You lean down from the foot of the bed, squeezing your breasts around <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> and looking up at her with a smile as you give her a brief boob-job; occasionally reaching out with your tongue to clean off her dripping tip as she looks down at you with excitement.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You consider how next to play with your property...<br>
<br>
<<include "technicianChastityOwnChoices">><br>
<br>
[<<moveTo "event_technician_chastity_final_own_solo_4" 'Finish her off.' 300>>]
</div>/*#
#desc: technician chastity own variant finish
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.caged_own.stage = 3>>
<<set $npc_technician.relationship.caged_own.solo = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
The time has finally come... for cum. Hard and wet <<=setup.getNpcName("npc_technician","first")>> is almost trembling with need and all it takes is your whispered command to "@@.pc;Cum for me,@@" and a single stroke of your hand for her to spurt with excitement, the force of her climax such that it splatters against the ceiling, not just once or twice, but a full five blasts; a scattering of sticky stars seeming to represent her "review" of your efforts before she falls back onto the bed and you crawl in for copious kisses.<br>
<br>
"@@.npc_technician;Goddess — I've never cum that hard in my life... lock me up again, my love, if that is the reward for giving complete control over to you, well... I'm getting a bargain!@@"<br>
<br>
You both smile as you close her cage back over her softened, sensitive member, the cool metal seeming to give her a bit of relief after the earlier over-stimulation.<br>
<br>
Only once she is secure do you remove her other restraints so she can stretch... and then join you on the couch for more cuddling.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Cuddle up on the couch." 180>>]
</div>/*#
#desc: technician chastity anal variant final reward
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Apartment door closed and locked it's just the two of you as <<=setup.getNpcName('npc_technician', 'first')>> bends over to present her rear.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;It's time, Princess. Practicing with the clone was fun, but right now I want to feel every centimetre of your <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>>fist<</if>> inside of me...@@"
<<case 'neutral' ''>>
"@@.npc_technician;Well? See anything you like? 'Cause I want YOU in ME.@@"
<<case 'sub'>>
"@@.npc_technician;Well, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> — is it time? I've been training with that silicone copy and all I want now is to feel the real thing inside of me...@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
She swings her hips, her cage swaying below.<br>
<br>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_technician_chastity_final_anal_solo_2" 'Pound that prostate!' 1800 "<<set $scene.action='penis'>>">>]<br>
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if (setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder)>>
[<<moveTo "event_technician_chastity_final_anal_solo_2" 'Unlock yourself and pound that prostate!' 1800 "<<set $scene.action='penis'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is securely locked away.@@]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "event_technician_chastity_final_anal_solo_2" 'Strap on, and plunge in.' 1800 "<<set $scene.action='strap'>>">>]<br>
[<<moveTo "event_technician_chastity_final_anal_solo_2" "If she wants it... you'll be happy to be her fist..." 1800 "<<set $scene.action='fist'>>">>]<br>
[<<moveTo "event_technician_chastity_cuddle" "As tempting as her rear is, you'd rather have a normal post-game cuddle session." 600>>]
</div>/*#
#desc: technician chastity anal variant final reward
#status: RELEASED 0.8.2.0
#ignore_spell: p
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == "penis">>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $player.timebased.horney = 100>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'strap'>>
You
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
ask
<<case 'neutral' ''>>
tell
<<case 'sub'>>
command
<</switch>>
<<=setup.getNpcName('npc_technician', 'first')>> to fetch her favourite strap and you soon have what you're pretty sure is a clone of the <<getWordPenis false>> that you currently have locked away.<br>
<br>
"@@.npc_technician;What?@@" She asks with mock innocence as she lubes it up, "@@.npc_technician;I guess it's a little self-absorbed but... I like myself!@@"<br>
<br>
You respond by bending her over and lining up as she moans. "@@.npc_technician;Yes... fuck me, I've been locked for so long, I need it...@@"<br>
<br>
You thrust and she gasps, the ease with which the large dildo slides into her a testament to her training efforts.<br>
<br>
"@@.npc_technician;So good,@@" she gasps. "@@.npc_technician;Keep fucking me like this and you can leave me caged forever...@@"<br>
<br>
You grab her hips tighter and thrust harder, slamming into her with each thrust as she presses back, grinding and moaning as you give her your all, angling to probe her p-spot until she shudders, frozen in an analgasm that has her breathless. "@@.npc_technician;Fuuuuuck...@@" she groans as her rubbery legs give out.<br>
<br>
You guide her down onto the couch and pull her close, hugging her tight and kissing her neck as you whisper how proud you are of her.<br>
<br>
She sighs happily, pressing back into you as her waves of orgasm slowly fade. Eventually you unbuckle the harness and toss it to the side while continuing to cuddle with her.
<<case 'fist'>>
<<=setup.getNpcName('npc_technician', 'first')>> wiggles her rear enticingly as her caged <<getWordPenis false>> swings below, and you respond by kneeling down to start playing with her pretty bum.<br>
<br>
One, two, three fingers easily slip into her as she moans and squeezes and begs for more, lying back on the couch and spreading herself as she hands you a tube of lube. "@@.npc_technician;I'm ready...@@" she whispers breathlessly as you coat one hand in lube and pour more over her rear, rubbing it in before pointing your hand and lining up to slowly push.<br>
<br>
Her breaths come faster even as you find yourself holding your own, watching her keenly as the second set of knuckles disappears inside her spreading hole. She starts shuddering as you get to the widest part of your hand and you try to pause only for the lube to take over. You slip past the final knuckle and her body pulls you deeper, your fist disappearing up to the wrist before you can catch yourself.<br>
<br>
Eyes closed, <<=setup.getNpcName('npc_technician', 'first')>> lets out a long, low moan. "@@.npc_technician;Oh Goddess... it's even better than I was hoping...@@"<br>
<br>
You wait for her body to adjust and then slowly move inside her, twisting slightly as your fingers searching for her prostate. This added level of stimulation is surely what she was hoping for as she begins spurting through her cage, muscles spasming around your wrist as she whole-body orgasms until you remove your hand, giving it a brief wipe with a towel as you lean in for a kiss.<br>
<br>
"@@.npc_technician;Thank you.@@" She moans, kissing you back passionately as she pulls you onto the couch with her, purring in blissful contentment.
<<case 'penis'>>
<<=setup.getNpcName("npc_technician","first")>>
<<if $scene.removeCage>>
helps you out of your own chastity device and then
<</if>>
lays back on the couch, legs spread, her caged <<getWordPenis false>> straining with excitement as she offers you her rear.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
You line up and slide in easily — <<=ps(setup.getNpcName("npc_technician","first"))>> reaction one of such ecstatic joy that almost makes you blush.
<<case 2 3>>
You slide into her rear easily and she moans with joy a sound that spurs you forward to give her everything you have.
<<case 4 5>>
You move slowly as you introduce your large <<getWordMyPenis false>> to her rear, but her training pays off and you slide in with ease, your hips soon against her as the wet tip of her cage presses against your tummy.
<<case 6>>
<<=ps(setup.getNpcName("npc_technician","first"))>> is taking slow, deep breaths as she focuses on relaxing enough to accommodate your massive member.
<<if $player.body_ref.knot && $player.body_ref.horsecock>>
The flared tip spreads her wide, but it is your thick knot that proves to be the final challenge, one that her training seems to have prepared her for as, after a brief pause, you plunge the final few centimetres with a jolt, locking inside her as her belly slightly distends.
<<elseif $player.body_ref.horsecock>>
The flared tip spreads her wide, but then centimetre after centimetre is sliding into her, until her belly is slightly distended and your hips are pressed back against her own.
<<elseif $player.body_ref.knot>>
Even the tip of your <<getWordMyPenis false>> spreads her wide, but it is your thick knot that truly pushes her training to the test. With a shuddering moan it finally pops into place, locking the two of you together as her belly slightly distends.
<<else>>
Even the tip of your <<getWordMyPenis false>> spreads her wide as you put her training to the test. Struggling for the final couple of centimetres she eventually takes you all; your full girth and length rooted inside of her, your hips pressed against her own as her belly slightly distends.
<</if>>
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
"@@.npc_technician;You feel so good... fuck me, show me how much better it is to be caged...@@"<br>
<br>
You start to thrust, short at first, but steadily increasing the length of your stroke until you're sawing your full length back and forth, angling your hips so that each thrust precisely targets her prostate. Moaning in pleasure <<=setup.getNpcName("npc_technician","first")>> spurts through her cage several times before a final, bone-rattling, full-body analgasm rocks through her that spurs your own climax even as it leaves her in a limp pile.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.removeCage && $scene.action == "penis">>
[<<moveTo "event_technician_chastity_final_anal_solo_3" "Continue." 180 "<<playerOrgasm>>">>]
<<else>>
[<<moveTo "event_technician_chastity_cuddle" "Keep cuddling." 600 "<<if $scene.action == 'penis'>><<playerOrgasm>><<useClothSetPop 'tmp'>><</if>>">>]
<</if>>
</div>/*#
#desc: technician chastity anal variant get re-caged
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.caged_anal.stage = 3>>
<<set $npc_technician.relationship.caged_anal.solo = true>>
<<include "replaceCage_extendSissyomatic">>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> looks up at you for a moment, and then helps you back into your cage, smiling the whole time without making any indication that she wants out of her own.<br>
<br>
Helping you dress as well the two of you are soon cuddled up on the couch.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" "Cuddle time." 600>>]
</div>/*#
#desc: technician chastity anal variant final reward w/maid
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_maid","first")>> to stay and <<=setup.getNpcName("npc_technician","first")>> looks between you in surprise until you curl around your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>
<<case 'neutral' ''>>
girlfriend
<<case "sub">>
slave
<</switch>>
and whisper how, if she wants to be your perfect anal-only girl, well... what better practice than "The Destroyer?" <br>
<br>
<<=setup.getNpcName("npc_technician","first")>> shudders in your arms and nods as <<=setup.getNpcName("npc_maid","first")>> grins, her skirt tenting in excitement as the three of you head for the bedroom.<br>
<br>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_technician_chastity_final_anal_maid_2" "It's time for a butt-bang..." 1800 "<<set $scene.anal=true>>">>]<br>
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if (setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder)>>
[<<moveTo "event_technician_chastity_final_anal_maid_2" "Unlock your <<getWordMyPenis false>> for a butt-bang..." 1800 "<<set $scene.anal=true>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is securely locked away.@@]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "event_technician_chastity_final_anal_maid_2" "Supervise the debauchery." 1800 "<<set $scene.anal=false>>">>]
</div>/*#
#desc: technician chastity anal variant sex w/maid
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $player.timebased.horney = 100>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
<<=setup.getNpcName("npc_technician","first")>> is soon laid out on the bed with you and <<=setup.getNpcName("npc_maid","first")>> standing over her<<if $scene.removeCage>>, your <<getWordMyPenis false>> uncaged<</if>>.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<=setup.getNpcName("npc_maid","first")>> makes no comment at the disparity in size — though she is nearly as wide as you are long, her massive <<getWordPenis false>> throbbing with desire as <<=setup.getNpcName("npc_technician","first")>> glances between the two of you, licking her lips.
<<case 2 3>>
<<=setup.getNpcName("npc_maid","first")>> makes no comment at the disparity in size — your nearly average dimensions nothing compared to her massive broadsword.
<<case 4 5>>
<<=setup.getNpcName("npc_maid","first")>> grins; your <<getWordMyPenis false>> nearly the match of her so-called "Destroyer," the two of you standing over your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>>; each of you as hard as <<=setup.getNpcName("npc_technician","first")>> appears eager for you to start...
<<case 6>>
<<=setup.getNpcName("npc_maid","first")>> barely hides her jealousy as she keeps stealing glances at your <<getWordMyPenis false>>; clearly not used to "The Destroyer" being anything other than the largest game in town.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
You ab-lib something about "@@.pc;Guests first,@@" and <<=setup.getNpcName("npc_maid","first")>> wastes no time in plunging her cock into your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral' ''>>girlfriend's<<case "sub">>slave's<</switch>> ready rear.<br>
<br>
The two of you take turns; <<=setup.getNpcName("npc_maid","first")>> pounding <<=setup.getNpcName("npc_technician","first")>> into the mattress until she needs a break and you flip <<=setup.getNpcName("npc_technician","first")>> over and give it to her again the
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
contrast in size
<<case 4 5>>
constant stretching
<<case 6>>
alternation between big and bigger
<</switch>>
keeping <<=setup.getNpcName("npc_technician","first")>> from getting complacent as the two of you show her exactly what's in store for her future as a full-time anal-only butt-slut. The constant moans and copious leaking through her cage as she enjoys analgasm after analgasm tell you exactly how she feels about this prospect.<br>
<br>
The constant pounding starts to stretch even <<=ps(setup.getNpcName("npc_technician","first"))>> trained hole and, as your gaze meets with <<=setup.getNpcName("npc_maid","first")>>, the two of you know exactly what you need to do to finish things with a real bang.
<<else>>
Once <<=setup.getNpcName("npc_technician","first")>> is naked, you have her lay on the bed, her head in your lap and her legs spread while <<=setup.getNpcName("npc_maid","first")>> lubes up and gets into position, her "Destroyer" swaying ominously as she waits for the signal.<br>
<br>
You smile down and caress <<=ps(setup.getNpcName("npc_technician","first"))>> cage as you talk about how much better she is this way; how much better it is for her to be a committed butt-slut; locked up and focused on what REALLY matters.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> response becomes a moan as <<=setup.getNpcName("npc_maid","first")>> slides into her.<br>
<br>
"@@.npc_maid;Dang, but you trained her good! Still good and tight, but not putting up a mite of resistance for me going balls deep...@@"<br>
<br>
No resistance is putting it mildly. <<=ps(setup.getNpcName("npc_technician","first"))>> eyes roll back as you play with her nipples and <<=setup.getNpcName("npc_maid","first")>> continues to fuck; her oversized <<getWordPenis false>> sending shockwaves through your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=ps(setup.getNpcName("npc_technician","title"))>>
<<case 'neutral' ''>>
girlfriend's
<<case "sub">>
slave's
<</switch>>
body with each thrust as her balls slap and <<=setup.getNpcName("npc_technician","first")>> leaks out of her cage.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks wordlessly up and you smile and nod, telling her that she can cum as many times as she wants. After all, this is the only pleasure she's allowed.<br>
<br>
"@@.npc_maid;Damn right, and to think you used to be scared of this...@@" <<=setup.getNpcName("npc_maid","first")>> quips as she rams forward hard enough for the bed to bang against the wall. "@@.npc_maid;Now you can't get enough, isn't that right?@@"<br>
<br>
"@@.npc_technician;Yes!@@" <<=setup.getNpcName("npc_technician","first")>> cries out. "@@.npc_technician;Anal is the best! Keep me caged and fuck me harder!@@"
<</if>>
<br><br>
[<<moveTo "event_technician_chastity_final_anal_maid_3" "Climax!" 1800>>]<br>
</div>/*#
#desc: technician chastity anal variant cleanup
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.caged_anal.stage = 3>>
<<set $npc_technician.relationship.caged_anal.help = true>>
<<if $scene.anal>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
With a shared glance and a grin you and <<=setup.getNpcName("npc_maid","first")>> pull <<=setup.getNpcName("npc_technician","first")>> to the edge of the bed and spread her wide. <<=setup.getNpcName("npc_technician","first")>> shudders in ecstasy as, hip to hip, you and <<=setup.getNpcName("npc_maid","first")>> manage to slide two swords into the same sheath.
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Your smallness slides in next to <<=setup.getNpcName("npc_maid","first")>>, not really doing much for <<=ps(setup.getNpcName("npc_technician","first"))>> overall stretch but resulting in one of the hottest, tightest fucks you've ever had as
<<case 2 3>>
You manage to wedge yourself in next to <<=setup.getNpcName("npc_maid","first")>> for a proper double-fuck; one of the hottest, tightest, you've ever been a part of as
<<case 4 5>>
After the way she seemed to be intimidated by "The Destroyer" the fact that <<=setup.getNpcName("npc_technician","first")>> takes close to double that with obvious glee is a testament to her enthusiastic training. Tighter than you've ever felt you and <<=setup.getNpcName("npc_maid","first")>> can do little more than rub slightly back and forth, but even that little motion is a mind-blowing explosion of pleasure as
<<case 6>>
Taking either your monster or <<=ps(setup.getNpcName("npc_maid","first"))>> destroyer alone would be a challenge for most, but <<=ps(setup.getNpcName("npc_technician","first"))>> training pays off as
<<if $player.body_ref.knot && $player.body_ref.horsecock>>
The Destroyer and the Dragon somehow manage to fit inside of her — knot and all.
<<elseif $player.body_ref.horsecock>>
a horse and a Destroyer manage to fit inside of her.
<<elseif $player.body_ref.knot>>
your knot somehow manages to make it into her alongside the Destroyer.
<<else>>
you and the Destroyer manage to stuff her to the brim.
<</if>>
It's to tight that you can barely move, <<=ps(setup.getNpcName("npc_technician","first"))>> body pulsing with the slightest motion as
<</switch>>
you pump away until the triple climax; <<if $player.body_ref.cumProduction > 0>>two mammoth loads squirting out around your cocks<<else>><</if>> as <<=setup.getNpcName("npc_technician","first")>> sprays through her cage with a cry and almost passes out.<br>
<br>
You and <<=setup.getNpcName("npc_maid","first")>> are no less rattled by the intensity of the shared orgasm, swaying slightly before pulling back, flaccid members dangling against your thighs as <<if $scene.removeCage>>you cage yourself up and<</if>> <<=setup.getNpcName("npc_maid","first")>> locates her clothing.
<<else>>
You squeeze <<=setup.getNpcName("npc_technician","first")>> and smile with pride as <<=setup.getNpcName("npc_maid","first")>> keeps thrusting away, lasting for surprisingly long until; with <<=setup.getNpcName("npc_technician","first")>> near delirious from a string of analgasms, <<=setup.getNpcName("npc_maid","first")>> slams all the way in and grunts as she cums as <<=ps(setup.getNpcName("npc_technician","first"))>> voice cracks with pleasure.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> pushes down as her hips shake, dumping every drop she has into <<=ps(setup.getNpcName("npc_technician","first"))>> shuddering body before stepping away; <<=ps(setup.getNpcName("npc_maid","first"))>> <<getWordPenis false>> no less impressive as it sways between her hips as she catches her breath.
<</if>>
<br><br>
"@@.npc_maid;Not bad at all,@@" <<=setup.getNpcName("npc_maid","first")>> states as she gives <<=ps(setup.getNpcName("npc_technician","first"))>> a parting squeeze. "@@.npc_maid;I'll leave you two love-birds to it, I got what I came for... came in.@@" She chuckles at the forced pun as she pulls on her clothes and departs.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> recovers slightly as you help her off the bed; her first act to give you a kiss and smile before you help her gather up her clothes and follow her back to the living room.<br>
<br>
[<<moveTo "event_technician_chastity_cuddle" 'Cuddle up with <<=setup.getNpcName("npc_technician","first")>> on the couch.' 180 "<<if $scene.anal>><<useClothSetPop 'tmp'>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>><</if>>">>]
</div><<set _removeEvent = false>>
<<if $workEvents.hasOwnProperty('technician_chastity_first') && (!$workEvent || $workEvent.eventId != "technician_chastity_first")>>
<<removeWorkEvent 'technician_chastity_first'>>
<<set _removeEvent = true>>
<</if>>
<<if $events.hasOwnProperty('technician_chastity_second')>>
<<removeEvent 'technician_chastity_second'>>
<<set _removeEvent = true>>
<</if>>
<<if $events.hasOwnProperty('technician_chastity_choice')>>
<<removeEvent 'technician_chastity_choice'>>
<<set _removeEvent = true>>
<</if>>
<<if $events.hasOwnProperty('technician_chastity_reinforce_game')>>
<<removeEvent 'technician_chastity_reinforce_game'>>
<<set _removeEvent = true>>
<</if>>
<<if $events.hasOwnProperty('technician_chastity_third')>>
<<removeEvent 'technician_chastity_third'>>
<<set _removeEvent = true>>
<</if>>
<<if $events.hasOwnProperty('technician_chastity_fourth')>>
<<removeEvent 'technician_chastity_fourth'>>
<<set _removeEvent = true>>
<</if>>
<<if $events.hasOwnProperty('technician_chastity_final')>>
<<removeEvent 'technician_chastity_final'>>
<<set _removeEvent = true>>
<</if>>/*#
#desc: technician topic: tell her about chuck
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> about your pet plant, <<=setup.getNpcName("npc_chuck","first")>>... and how the once docile domestic potted plant has been developing in interesting new directions...<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> eyes light up with interest. "@@.npc_technician;Wait... you're not pulling my leg, are you? Tentacle monsters are, like... real?@@"<br>
<br>
You reply that you suppose they are, though <<=setup.getNpcName("npc_chuck","first")>> has hardly acted in a "monstrous" fashion. You go on to describe some of the "activities" you have gotten up to with <<=setup.getNpcName("npc_chuck","first")>> as <<he npc_chuck>>'s grown.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> is clearly getting hot and bothered as she bites her lip and shifts in her chair.
<<if $npc_technician.relationship.done_you || $npc_technician.relationship.done_her>>
"@@.npc_technician;Wow, it's like you're literally reading off some of my fantasies... you HAVE to have me over to play sometime... but we should probably start talking about something else before I get, just... TOO excited by the thought of being taken by tentacles...@@"
<<else>>
"@@.npc_technician;Wow, it's like you're literally narrating some of my fantasies...@@" she pauses, and you can tell she's barely resisting trying to invite herself over. "@@.npc_technician;Well... I won't say I'm not a bit jealous, but I wouldn't want to presume, still, I'm glad you're having fun!@@"<br>
<br>
<<printThought "Hmm... if we ever got more intimate I think she'd really like me to invite her over for fun with <<=setup.getNpcName('npc_chuck','first')>>...">>
<</if>>
<br><br>
You nod and continue on.<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: call technician root
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> if she'd like to come over to have some fun with <<=setup.getNpcName("npc_chuck","first")>>?<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 4200)>>
"@@.npc_technician;Oh hell and yes. I am on my way as we speak so pop the miracle grow, or whatever, because I want ALL the tentacles!@@"<br>
<br>
She hangs up.<br>
<br>
<<if State.hasPlayed("event_chuck_technician_4")>>
[<<moveTo "event_chuck_technician_repeat_1" "Wait for her to arrive." 360 "<<set $currentcall = false>>">>]
<<elseif $npc_chuck.stage < 4>>
[<<moveTo "event_chuck_technician_fail_1" "Wait for her to arrive." 360 "<<set $currentcall = false>>">>]
<<else>>
[<<moveTo "event_chuck_technician_2" "Wait for her to arrive." 360 "<<set $currentcall = false>>">>]
<</if>>
<<else>>
"@@.npc_technician;Tempting... VERY tempting... but now isn't the best time, hit me up some other time, eh? Speaking of, I need to get off the phone, talk to you later, though!@@"<br>
<br>
You exchange goodbyes and hang up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: npc_technician fails to entice chuck
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> arrives and you lead her to your
<<if $npc_chuck.stage == 3>>
large, leafy friend.<br>
<br>
"@@.npc_technician;Oh my goddess! <<He npc_chuck>> looks even better than I imagined...@@" <<=setup.getNpcName("npc_technician","first")>> states in awe as she takes a step forward and reaches out towards <<=setup.getNpcName("npc_chuck","first")>>.<br>
<br>
Despite <<his npc_chuck>> size, <<=setup.getNpcName("npc_chuck","first")>> seems nervous, shrinking slightly, even as <<=setup.getNpcName("npc_technician","first")>> tries to ever-so-gently stroke <<his npc_chuck>> leaves.
<<else>>
rapidly developing leafy friend.<br>
<br>
"@@.npc_technician;Oh, wow! Not as big as I hoped but... mmm, <<he npc_chuck>> looks delicious!@@" States as she approaches <<=setup.getNpcName("npc_technician","first")>> only for <<=setup.getNpcName("npc_chuck","first")>> to flinch away nervously.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> frowns, trying to offer a hand for <<=setup.getNpcName("npc_chuck","first")>> to remain withdrawn. "@@.npc_technician;Hmm, you were right about not being very monstrous... if anything <<=setup.getNpcName("npc_chuck","first")>> seems kind of nervous, performance anxiety in front of the guest?@@"
<</if>>
<br><br>
After a few minutes <<=setup.getNpcName("npc_technician","first")>> steps back and frowns. "@@.npc_technician;<<He npc_chuck>> seems really shy...@@"<br>
<br>
You nod, noting how skittish <<=setup.getNpcName("npc_chuck","first")>> seems to be acting compared to when it's just the two of you one on one.
"@@.npc_technician;Maybe after <<he npc_chuck>> has matured a bit more? I wouldn't want to impose on <<him npc_chuck>>... no matter how excited the thought of tentacle sex has me...@@"<br>
<br>
You nod and tell <<=setup.getNpcName("npc_technician","first")>> that you'll try again some other time as she packs up and leaves.<br>
<br>
<<printThought 'Guess I should spend some more time <<if $npc_chuck_stage == 3>>with<<else>>growing<</if>> <<=setup.getNpcName("npc_chuck","first")>>...'>><br>
<br>
[<<moveTo "room_foyer" "Wave her goodbye." 60>>]
</div>/*#
#desc: npc_technician entices chuck
#status: RELEASED 0.9.3.0
#ignore_spell: viney
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.technicianChuck=true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You lead <<=setup.getNpcName("npc_technician","first")>> in to the livingroom and, after a moment of gawking, she slowly approaches <<=setup.getNpcName("npc_chuck","first")>>.<br>
<br>
"@@.npc_technician;Hey, wow... you look so gorgeous... do you... do you maybe want to have some fun together?@@" <<=setup.getNpcName("npc_technician","first")>> asks as she starts shrugging out of her clothes.<br>
<br>
<<=setup.getNpcName("npc_chuck","first")>> is initially tentative, but slowly extends a tentacle that <<=setup.getNpcName("npc_technician","first")>> takes gently, bringing it to her cheek and stroking gently as she moves closer. <<=setup.getNpcName("npc_technician","first")>> is clearly excited as she steps up next to <<=ps(setup.getNpcName("npc_chuck","first"))>> pot and runs a hand along one of <<his npc_chuck>> large central phalli.<br>
<br>
"@@.npc_technician;So beautiful, so smooth... you want to play? I've heard such lovely things about you and—@@" <<=setup.getNpcName("npc_technician","first")>> is cut off as <<=setup.getNpcName("npc_chuck","first")>> gentle sway changes to a burst of motion as <<he npc_chuck>> sweeps <<=setup.getNpcName("npc_technician","first")>> off her feet.<br>
<br>
"@@.npc_technician;I think <<he npc_chuck>> likes me!@@" <<=setup.getNpcName("npc_technician","first")>> remarks to state the obvious as a dripping phallic tentacle twists towards her face and she places a gentle kiss on its tip.<br>
<br>
<<=setup.getNpcName("npc_chuck","first")>> continues to unfurl, wrapping <<=setup.getNpcName("npc_technician","first")>> in viney grasp... and then grasping lower, a pair of tentacles twisting their way into her rear <<if $npc_technician.relationship.her_caged>><<if $npc_technician.relationship.sissyomatic>>and her 9001 retracts for a hollow tentacle to envelop <<=ps(setup.getNpcName("npc_technician","first"))>> stiff <<getWordPenis false>><<else>>as smaller tentacles stroke her thighs and around her cage.<</if>><<else>>and thick, hollow tentacle envelops <<=ps(setup.getNpcName("npc_technician","first"))>> stiff <<getWordPenis false>><</if>>.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> moans, now floating and suspended in tentacles as <<=setup.getNpcName("npc_chuck","first")>> extends more tendrils in your direction in invitation...<br>
<br>
[<<moveTo "event_chuck_technician_3" "Join in..." 300>>]
</div>/*#
#desc: npc_technician and chuck threesome
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_chuck","first")>> is far past <<his npc_chuck>> initial nerves as <<he npc_chuck>> pulls you and <<=setup.getNpcName("npc_technician","first")>> together into an embrace. You share a passionate, gasping kiss with your
<<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> as <<=setup.getNpcName("npc_chuck","first")>> has <<his npc_chuck>> way with the both of you below.<br>
<br>
Arms untangled from tentacles just long enough to wrap around you with a hug <<=setup.getNpcName("npc_technician","first")>> is having the time of her life, moaning and gasping as she presses tight against you. Eyes rolled back, she is about to scream in orgasm when <<=setup.getNpcName("npc_chuck","first")>> finishes her off by jaming a tentacle down <<=ps(setup.getNpcName("npc_technician","first"))>> throat and pushing her over the edge. <<=ps(setup.getNpcName("npc_technician","first"))>> head thrown back you can see the tentacle bulge her throat, and feel the same from her belly pressed tightly against your own as <<=setup.getNpcName("npc_chuck","first")>> <<if $fetish.cum>>pumps your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> full<<else>>gives your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> an experience like no other<</if>> and <<=setup.getNpcName("npc_technician","first")>> nearly passes out from the intense ecstasy.<br>
<br>
[<<moveTo "event_chuck_technician_4" "Continue." 600>>]
</div>/*#
#desc: npc_technician and chuck finish
#status: RELEASED 0.9.3.0
#ignore_spell: dorkery
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
Grasped tightly in your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> arms your own orgasm is almost forgotten, your focus instead on the writhing, bound dance as she shudders, cums... and then is gently placed back on the ground.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> wobbles and <<=setup.getNpcName("npc_chuck","first")>> gently lowers <<=setup.getNpcName("npc_technician","first")>> to the floor, brushing a strand of hair out of <<=ps(setup.getNpcName("npc_technician","first"))>> face as she smiles, turning her head just far enough to kiss one of <<=ps(setup.getNpcName("npc_chuck","first"))>> tentacles in thanks.<br>
<br>
"@@.npc_technician;Wow, live action just turned out even better than the manga...@@" <<=setup.getNpcName("npc_technician","first")>> jokes with a grin. You chortle at your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> endless dorkery and help her back to her feet to get dressed.<br>
<br>
After a couple of minutes <<=setup.getNpcName("npc_technician","first")>> has mostly regained her senses, though a wide, grin remains plastered across her face. "@@.npc_technician;Thanks again, to the both of you... that was, like... hella fun.@@" She winks in <<=ps(setup.getNpcName("npc_chuck","first"))>> direction and one of <<his npc_chuck>> fronds flutters in a sort of wave "@@.npc_technician;Until next time!@@"<br>
<br>
You walk <<=setup.getNpcName("npc_technician","first")>> out of your flat.<br>
<br>
[<<moveTo "room_foyer" "Wave her goodbye." 60>>]
</div>/*#
#desc: npc_technician repeat visit chuck
#status: RELEASED 0.9.3.0
#ignore_spell: plete
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> drops in once again for some fun with <<=setup.getNpcName("npc_chuck","first")>>. There is none of the hesitant foreplay of her first visit as <<=setup.getNpcName("npc_chuck","first")>> recognises <<=setup.getNpcName("npc_technician","first")>> from the moment she walks into the room, strong vines reaching out to pluck at your clothing to help you undress and then wrap both of your waists.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> practically dives forward, flying through the air for a moment before <<=setup.getNpcName("npc_chuck","first")>> holds <<=setup.getNpcName("npc_technician","first")>> aloft. You are lifted a moment later as <<=setup.getNpcName("npc_chuck","first")>> plays puppet-<<master npc_chuck>>, flipping you and your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> in opposite directions for a floating sixty-nine, thick tentacles "stabilising" you each from behind as lips meet
<<if setup.checkItemTypeWorn("cage") && $npc_technician.relationship.her_caged>>
chastity.
<<elseif setup.checkItemTypeWorn("cage") || $npc_technician.relationship.her_caged>>
chastity and flesh.
<<else>>
flesh.
<</if>>
<br><br>
<<if setup.checkItemTypeWorn("cage") || $npc_technician.relationship.her_caged>>
[<<moveTo "event_chuck_technician_repeat_2" "Unlock for a more cum-plete experience." 900 "<<set $scene.unlock=true>>">>]<br>
[<<moveTo "event_chuck_technician_repeat_2" "Embrace the moment, chastity and all." 900 "<<set $scene.unlock=false>>">>]
<<else>>
[<<moveTo "event_chuck_technician_repeat_2" "Continue." 900>>]
<</if>>
</div>/*#
#desc: npc_technician repeat visit chuck sex
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && $scene.unlock>>
<<set $scene.removeHerCage = $npc_technician.relationship.her_caged && $scene.unlock>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage && $scene.removeHerCage>>
As you float aloft and look upwards to see one of <<=ps(setup.getNpcName("npc_chuck","first"))>> larger tentacles slide into your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> ass <<if $npc_technician.relationship.sissyomatic>>her chastity cage unlocks<<else>>you manage to pull out her key and unlock her for her<</if>> gloriously hard girl-cock to drop into your mouth where you moan and suck... while you feel her doing similar below by unlocking you and eagerly
<<if $player.body_ref.penis>>
sucking
<<else>>
licking your clit
<</if>>
while <<=setup.getNpcName("npc_chuck","first")>> goes to town on <<if $player.body_ref.vagina>>both of your holes<<else>>your ass<</if>>.
<<elseif $scene.removeCage>>
As you float aloft and look upwards to see one of <<=ps(setup.getNpcName("npc_chuck","first"))>> larger tentacles slide into your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> ass as her gloriously hard girl-cock drops into your mouth for you to moan and suck... while you feel her doing similar below by unlocking you and eagerly
<<if $player.body_ref.penis>>
sucking
<<else>>
licking your clit
<</if>>
while <<=setup.getNpcName("npc_chuck","first")>> goes to town on <<if $player.body_ref.vagina>>both of your holes<<else>>your ass<</if>>.
<<elseif $scene.removeHerCage>>
As you float aloft and look upwards to see one of <<=ps(setup.getNpcName("npc_chuck","first"))>> larger tentacles slide into your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> ass <<if $npc_technician.relationship.sissyomatic>>her chastity cage unlocks<<else>>you manage to pull out her key and unlock her for her<</if>> gloriously hard girl-cock to drop into your mouth where you moan and suck... while you feel her doing similar below, eagerly
<<if $player.body_ref.penis>>
sucking
<<else>>
licking your clit
<</if>>
while <<=setup.getNpcName("npc_chuck","first")>> goes to town on <<if $player.body_ref.vagina>>both of your holes<<else>>your ass<</if>>.
<<elseif setup.checkItemTypeWorn("cage") && $npc_technician.relationship.her_caged>>
You and <<=setup.getNpcName("npc_technician","first")>> remain securely locked as <<=setup.getNpcName("npc_chuck","first")>> lifts you both aloft. <<=setup.getNpcName("npc_technician","first")>> remains tantalisingly chaste as you look up to see see one of <<=ps(setup.getNpcName("npc_chuck","first"))>> larger tentacles slide into your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> ass as you worship and polish her cage with your tongue... and she does similar at the other end as <<=setup.getNpcName("npc_chuck","first")>> goes to town on <<if $player.body_ref.vagina && !setup.isCage()>>both of your holes<<else>>your ass<</if>>.
<<elseif setup.checkItemTypeWorn("cage")>>
You remain securely locked as <<=setup.getNpcName("npc_chuck","first")>> lifts you both aloft. You look up to see see one of <<=ps(setup.getNpcName("npc_chuck","first"))>> larger tentacles slide into your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> ass as her gloriously hard girl-cock drops into your mouth for you to moan and suck. Down below <<=setup.getNpcName("npc_technician","first")>> kisses your thighs and teases your <<if setup.isCage()>>cage<<else>>chastity shield<</if>> while <<=setup.getNpcName("npc_chuck","first")>> goes to town on <<if $player.body_ref.vagina && !setup.isCage()>>both of your holes<<else>>your ass<</if>>.
<<elseif $npc_technician.relationship.her_caged>>
<<=setup.getNpcName("npc_technician","first")>> remains securely locked as <<=setup.getNpcName("npc_chuck","first")>> lifts you both aloft. <<=setup.getNpcName("npc_technician","first")>> remains tantalisingly chaste as you look up to see see one of <<=ps(setup.getNpcName("npc_chuck","first"))>> larger tentacles slide into your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> ass as you worship and polish her cage with your tongue... down below she eagerly
<<if $player.body_ref.penis>>
sucks
<<else>>
licks your clit
<</if>>
while <<=setup.getNpcName("npc_chuck","first")>> goes to town on <<if $player.body_ref.vagina>>both of your holes<<else>>your ass<</if>>.
<<else>>
You float aloft, looking upwards to see one of <<=ps(setup.getNpcName("npc_chuck","first"))>> larger tentacles slide into your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> ass as her gloriously hard girl-cock drops into your mouth for you to moan and suck... while you feel her doing similar below, eagerly
<<if $player.body_ref.penis>>
sucking
<<else>>
licking your clit
<</if>>
while <<=setup.getNpcName("npc_chuck","first")>> goes to town on <<if $player.body_ref.vagina>>both of your holes<<else>>your ass<</if>>.
<</if>>
<br><br>
Suspended in the air, you and <<=setup.getNpcName("npc_technician","first")>> are fucked in sixty-nine, <<=setup.getNpcName("npc_chuck","first")>> occasionally flipping you over so that you can both enjoy <<his npc_chuck>> juices running down over your face, the exotic scent and taste of <<his npc_chuck>> sap arousing you even further as you hug your love tighter and lick <<if !$npc_technician.relationship.her_caged || $scene.unlock>>and suck <</if>>harder.<br>
<br>
[<<moveTo "event_chuck_technician_repeat_3" "Continue." 1200>>]
</div>/*#
#desc: npc_technician repeat visit chuck post-sex
#status: RELEASED 0.9.3.0
#ignore_spell: veganism
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.technicianChuck=true>>
<<playerOrgasm>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.getChuckImage() setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You don't know if <<=setup.getNpcName("npc_chuck","first")>> fatigued holding you and <<=setup.getNpcName("npc_technician","first")>> aloft, or if <<=setup.getNpcName("npc_chuck","first")>> merely sensed that you were close to your limit, as <<he npc_chuck>> places you and <<=setup.getNpcName("npc_technician","first")>> on the ground where you practically leap into one another's arms to suck face for a post-coital kiss... that turns into a bit of mutual face-licking thanks to the partially dried, delicious <<=setup.getNpcName("npc_chuck","first")>> juices staining your faces.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> finally separates with a misty look in her eyes, pupils dilated from the lingering effects of <<=ps(setup.getNpcName("npc_chuck","first"))>> aphrodisiacs even as she takes a deep breath and attempts to focus.<br>
<br>
"@@.npc_technician;Now that is what I call a good time... and an argument for sexual veganism if you weren't so utterly fucking delectable yourself!@@"<br>
<br>
You blush slightly at the compliment and pull her in for another long hug before
<<if $scene.removeCage && $scene.removeHerCage>>
<<if $npc_technician.relationship.sissyomatic && setup.getChastityLevel() == 5>>
your digital goddess re-locks your chastity and
<<else>>
you lock one another back up and
<</if>>
<<elseif $scene.removeCage>>
she locks you back up and
<<elseif $scene.removeHerCage>>
<<if $npc_technician.relationship.sissyomatic>>
your digital goddess re-locks <<=ps(setup.getNpcName("npc_technician","first"))>> chastity and
<<else>>
you lock her back up and
<</if>>
<<else>>
you combined forces to
<</if>>
sort through the clothing that <<=setup.getNpcName("npc_chuck","first")>> is helpfully holding aloft like the world's most sexually-capable clothing rack.<br>
<br>
Finally dressed, <<=setup.getNpcName("npc_technician","first")>> blows you and <<=setup.getNpcName("npc_chuck","first")>> each a kiss and heads on her way.<br>
<br>
[<<moveTo "room_foyer" "Wave her goodbye." 60>>]
</div>/*#
#desc: npc_technician brings up cosplay convention
#status: WRITTEN 0.8.7.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>>.<br>
<br>
"@@.npc_technician;Hey hot stuff, I was thinking, we've been having so much fun together... how about we go out some weekend? Not the usual coffee or game, though those are great. There's a cosplay convention that runs downtown that I used to hit up to decompress from school. I'd, like LOVE to go together... both of us dressed up in a paired costume? I have SO MANY ideas! Think about it and we can chat after game some Saturday.@@"<br>
<br>
You reply you'll think about it.<br>
<br>
"@@.npc_technician;Great! Catch you then.@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: talk to technician about convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You mention the local weekly Cosplay Convention and <<=setup.getNpcName("npc_technician","first")>> becomes almost giddy with excitement.<br>
<br>
<<if State.hasPlayed("event_cosplay_first_1")>>
"@@.npc_technician;Ready to go back? I know I am...@@" she falls momentarily silent with a dumb grin on her face. "@@.npc_technician;Sorry, just thinking of all the fun we could have together there.@@"
<<else>>
"@@.npc_technician;Yeah, I've been doing some more research and... the convention has gotten even bigger than back when I used to go! I'm so excited to check it out again... ESPECIALLY together with you!@@"
<</if>>
<br><br>
She smiles and cuddles up next to you, her eyes glittering with enthusiasm. "@@.npc_technician;So... what couples costume do you want to do? Like, no question in my mind that we HAVE to dress up... and thinking of you in a hawt outfit led me to pondering some of the fun we've gotten up to together and I came up with a number of ideas, you wanna hear 'em? Oh and don't put too much pressure on yourself to make the perfect choice, the convention runs every weekend so we can go back as many times as you like.@@"<br>
<br>
[<<moveTo "event_convention_plan_2" "Heck yes!" 300 "<<set $scene.listen=true>>">>]<br>
[<<moveTo "event_convention_plan_2" "Some other time, maybe. You'd like to get back to the usual evening fun." 60 "<<set $scene.listen=false>>">>]
</div>/*#
#desc: talk to technician about convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.listen>>
You grin and ask what <<=setup.getNpcName("npc_technician","first")>> has come up with?<br>
<br>
"@@.npc_technician;Alright!@@" She states, pulling out her laptop and opening a spreadsheet. "@@.npc_technician;I ran the numbers and, based on our mutual bodytypes and interests I came up with this list of potential cosplays...@@"<br>
<br>
<<printThought "<<getWordGod>>, my girlfriend is a ginormous dork...">><br>
<br>
<<include "technicianCosplayChoice">>
<<else>>
You reply that your schedule is pretty hectic... maybe the two of you can hit up the convention some other time?<br>
<br>
"@@.npc_technician;Sure, it runs, like, every week. And this will give me more time to come up with costume ideas!@@" She grins.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: technician calls you because you failed to show up for cosplay convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<decrementEmotion 'anger' 'npc_technician' 2>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_technician', 'first')>>!<br>
<br>
"@@.npc_technician;Hey, so I thought we were going to be hitting up the Cosplay Convention today? I had outfits all picked out and everything... fortunately they run these things every weekend so I guess we can catch it next time? Talk to you later.@@"<br>
<br>
You can sense the disappointment in her voice as she hangs up before you can conjure a lame excuse.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: reusable technician cosplay choice
#status: RELEASED 0.8.7.0
#ignore_spell: x,miku,hatsumeki,aegi,yorokobi
#*/
[<<moveTo "event_convention_plan_3" "Going as Alice and the Red Queen." 60 "<<set $scene.cosplay='bdsm'>>">>]
<<if !$npc_technician.relationship.kink_indulge.bdsm>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<br>
[<<moveTo "event_convention_plan_3" "Going as a machinist and her summoner friend from Ultimate Imagination X." 60 "<<set $scene.cosplay='humiliation'>>">>]
<<if !$npc_technician.relationship.kink_indulge.humiliation>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<br>
[<<moveTo "event_convention_plan_3" "The Missile Squad." 60 "<<set $scene.cosplay='penis'>>">>]
<<if !$npc_technician.relationship.kink_indulge.penis>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<br>
[<<moveTo "event_convention_plan_3" "A cosplay of a chaotic criminal and her plant-loving friend." 60 "<<set $scene.cosplay='whorepiss'>>">>]
<<if !($fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 4 || $npc_technician.relationship.kink_indulge.whore >= 2)>>
<<if !$fetish.piss>>
<<hint $options "You can go as this pairing, but your current fetish flags and lack of kink-indulging means you will be limited in what might happen.">>
<<else>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<</if>>
<br>
[<<moveTo "event_convention_plan_3" "Princess Gumdrop and The Vampire Queen." 60 "<<set $scene.cosplay='cum_choice'>>">>]
<<if !($fetish.cum && $npc_technician.relationship.kink_indulge.cum >= 2)>>
<<if !$fetish.cum>>
<<hint $options "You can go as this pairing, but your current fetish flags and lack of kink-indulging means you will be limited in what might happen.">>
<<else>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<</if>>
<br>
[<<moveTo "event_convention_plan_3" "A cosplay of a classic mystery-solving pair..." 60 "<<set $scene.cosplay='dog'>>">>]
<<if !($fetish.bestiality_hard && $npc_technician.relationship.kink_indulge.dog >= 2)>>
<<if !$fetish.bestiality_hard>>
<<hint $options "You can go as this pairing, but your current fetish flags and lack of kink-indulging means you will be limited in what might happen.">>
<<else>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<</if>>
<br>
[<<moveTo "event_convention_plan_3" "A cosplay of a classic villain and the princess they perpetually kidnap." 60 "<<set $scene.cosplay='bondage'>>">>]
<<if !$npc_technician.relationship.kink_indulge.bondage>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<br>
[<<moveTo "event_convention_plan_3" "A cosplay of pop idols Hatsumeki Miku and Aegi Yorokobi." 60 "<<set $scene.cosplay='bimbo'>>">>]
<<if !$npc_technician.relationship.kink_indulge.bimbofication.both>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<br>
[<<moveTo "event_convention_plan_3" "Actually... you changed your mind about hitting up the convention." 60 "<<set $scene.cosplay='abort'>>">>]/*#
#desc: talk to technician about convention
#status: RELEASED 0.8.7.0
#ignore_spell: bff,gff,koopa,taschenmonster,yanu,rikky,riblah,miku,hatsumeki,aegi,tera,yorokobi
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.cosplay == "abort">>
You tell <<=setup.getNpcName("npc_technician","first")>> that none of the cosplay ideas quite grab your attention right now, and you'd like to discuss something else.<br>
<br>
<<include "post_session_options">>
<<else>>
You ask <<=setup.getNpcName("npc_technician","first")>> about her idea for the two of you to cosplay as
<<switch $scene.cosplay>>
<<case "dog">>
Thelma and Riblah.<br>
<br>
<<if $fetish.bestiality_hard && $npc_technician.relationship.kink_indulge.dog >= 2>>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;I'll confess. It was inspired by the fun you've shown me with dogs... I think the two of us dressing up like that pair could lead to a barking good time at the con.@@"
<<else>>
"@@.npc_technician;Hmm... a fun pairing, dunno if anything will come of it, though...@@"
<<if !$fetish.bestiality_hard>>
<<hint $options "You can go as this pairing, but your current fetish flags and lack of kink-indulging means you will be limited in what might happen.">>
<<else>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<</if>>
<<case "humiliation">>
Rikky and Yanu.<br>
<br>
<<if $npc_technician.relationship.kink_indulge.humiliation>>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;I used to love that game series! Yeah, I think that'd be fun, and, while I'm totally going to stay in character, I promise not to get you into TOO much trouble at the con...@@"
<<else>>
"@@.npc_technician;Hmm... a fun pairing, dunno if anything will come of it, though...@@"
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<<case "bimbo">>
Hatsumeki Miku and Aegi Yorokobi — digital pop idols.<br>
<br>
<<if $npc_technician.relationship.kink_indulge.bimbofication.both>>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Oooh! Yeah, I love their music, and the fan art!@@" She makes a chef's kiss motion, "@@.npc_technician;of course to dress up like that in public, well, only a pair of bimbo's would consider doing something like that...@@"
<<else>>
"@@.npc_technician;Hmm... a fun pairing, dunno if anything will come of it, though...@@"
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<<case "penis">>
the dastardly criminals Jess and Jim, agents of the notorious Missile Troupe!<br>
<br>
<<if $npc_technician.relationship.kink_indulge.penis>>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Now that takes me back! I used to be real completionist with Taschenmonster... the character design was always top notch. Of course, IRL those sorts of creatures don't exist, but I can think of another sort of "pocket monster" that I'm very interested in... exploiting.@@" She grins and eyes downward towards <<if $player.body_ref.penis>>your<<else>>her<</if>> crotch.
<<else>>
"@@.npc_technician;Hmm... a fun pairing, dunno if anything will come of it, though...@@" <<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<<case "bdsm">>
the Red Queen and a not-so-innocent Alice.<br>
<br>
<<if $npc_technician.relationship.kink_indulge.bdsm>>
<<=setup.getNpcName("npc_technician","first")>> smiles. "@@.npc_technician;Talk about a classic! While I am firmly on the side of the working man, woman, and enby in real life... well, it is fun to be the Queen... and I would welcome tormenting, I mean, "entertaining" you as my loyal subject...@@"
<<else>>
"@@.npc_technician;Hmm... a fun pairing, dunno if anything will come of it, though...@@" <<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<<case "whorepiss">>
the comic book characters Jessica Tera and Toxic Vine.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins.
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 4 && $npc_technician.relationship.kink_indulge.whore >= 2>>
"@@.npc_technician;Now that's a classic couple! I'm thinking you would make a perfect Jessica... which means I'll your plant bff/gff... of course, being part plant I'll need to be "watered" from time to time... if you get my meaning, well, that or we'll get up to some sort of money-making caper.@@"
<<elseif $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 4>>
"@@.npc_technician;Now that's a classic couple! I'm thinking you would make a perfect Jessica... which means I'll your plant bff/gff... of course, being part plant I'll need to be "watered" from time to time... if you get my meaning.@@"
<<elseif $npc_technician.relationship.kink_indulge.whore >= 2>>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Now that's a classic couple! I'm thinking you would make a perfect Jessica... which means I'll be your plant bff/gff... of course, and from there, well... I'm sure you'll come up with something to do for a bit of scratch...@@"
<<else>>
"@@.npc_technician;Hmm... a fun pairing, dunno if anything will come of it, though...@@"
<<if !$fetish.piss>>
<<hint $options "You can go as this pairing, but your current fetish flags and lack of kink-indulging means you will be limited in what might happen.">>
<<else>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<</if>>
<<case "cum_choice">>
Princess Gumdrop and The Vampire Queen.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Hmm... but that raises the question, who becomes the glorious Vampire Queen... and who is the candy-sweet Princess?@@"<br>
<br>
[<<moveTo "event_convention_plan_3" "You'd love to be her Princess." 60 "<<set $scene.cosplay='cum_princess'>>">>]<br>
[<<moveTo "event_convention_plan_3" "You'd like to be the Queen." 60 "<<set $scene.cosplay='cum'>>">>]
<<case "cum_princess">>
Princess Gumdrop and The Vampire Queen, with you as the Princess.<br>
<br>
<<if $fetish.cum && $npc_technician.relationship.kink_indulge.cum >= 2>>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Hmm... <<if $npc_technician.relationship_her_role == "dom">>well you would make a lovely princess... Princess, and I suppose Empress is like a queen. <</if>>Yes... you can be my Princess Gumdrop... or is that Cum-drop?@@" She replies with a wink.
<<else>>
"@@.npc_technician;Hmm... a fun pairing, dunno if anything will come of it, though...@@"
<<if !$fetish.cum>>
<<hint $options "You can go as this pairing, but your current fetish flags and lack of kink-indulging means you will be limited in what might happen.">>
<<else>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<</if>>
<<case "cum">>
Princess Gumdrop and The Vampire Queen, with you as the Queen.<br>
<br>
<<if $fetish.cum && $npc_technician.relationship.kink_indulge.cum >= 2>>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Hmm... I've always wanted to live the dream of <<switch $npc_technician.flags.knowgender>><<case 'female'>>having a vampire goth girlfriend<<case 'male'>>having a vampire goth boyfriend<<default>>dating a vampire<</switch>>... so I think you'll be going as the Vampire Queen, and I as Princess Cum-drop... I mean Gumdrop.@@" She quickly adds with a wink.
<<else>>
"@@.npc_technician;Hmm... a fun pairing, dunno if anything will come of it, though...@@"
<<if !$fetish.cum>>
<<hint $options "You can go as this pairing, but your current fetish flags and lack of kink-indulging means you will be limited in what might happen.">>
<<else>>
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<</if>>
<<case "bondage">>
Queen Koopa-hime and the kidnapped Princess.<br>
<br>
<<if $npc_technician.relationship.kink_indulge.bondage>>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Now that's a fun combo... of course, a kidnappee needs to be tightly restrained, lest they escape, right?@@"
<<else>>
"@@.npc_technician;Hmm... a fun pairing, dunno if anything will come of it, though...@@"
<<hint $options "You can go as this pairing, but your lack of kink-indulging means you will be limited in what might happen.">>
<</if>>
<<default>>
ERROR: unexpected scene.cosplay <<=$scene.cosplay>>
<</switch>>
<<if $scene.cosplay != "cum_choice">>
<br><br>
She looks back at you. "@@.npc_technician;So... that sound good to you?@@"<br>
<br>
[<<moveTo "event_convention_plan_4" "Confirm your choice." 60>>]<br>
<br>
<<include "technicianCosplayChoice">>
<</if>>
<</if>>
</div>/*#
#desc: talk to technician about convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.alreadyScheduled = $currentTasks.hasOwnProperty("cosplay_convention") && !$currentTasks.cosplay_convention.finished || $currentTasks.hasOwnProperty("cosplay_convention_first") && !$currentTasks.cosplay_convention_first.finished>>
<<if !$scene.alreadyScheduled>>
<<set $npc_technician.flags.cosplay_next = $scene.cosplay>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 10, 0)>>
<<set $scene.punt = !setup.hasFreeTime(_nextDate, $player, $currentTasks, 3600, true)>>
<<if $scene.punt>>
<<set _nextDate = setup.setNextDate(_nextDate, 7, 10, 0)>>
<</if>>
<<if State.hasPlayed("event_cosplay_root")>>
<<addTaskById 'cosplay_convention' _nextDate>>
<<else>>
<<addTaskById 'cosplay_convention_first' _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You confirm your
<<if $scene.alreadyScheduled>>
choice and <<=setup.getNpcName("npc_technician","first")>> grins as she marks it down on her spreadsheet.<br>
<br>
"@@.npc_technician;Excellent, excellent... well I am certainly looking forward to seeing you, and the convention very soon!@@"
<<elseif $scene.punt>>
choice, but note, that you actually have something already scheduled this weekend.<br>
<br>
"@@.npc_technician;So busy! Next Sunday, then. If you want to come back on over in the morning say... ten-ish? We can get dressed up and head to the con together!@@"
<<else>>
choice and <<=setup.getNpcName("npc_technician","first")>> grins as she marks it down on her spreadsheet.<br>
<br>
"@@.npc_technician;Awesome! So if you want to come back on over <<if $now.getUTCDay()==6>>tomorrow<<else>>Sunday<</if>> morning say... ten-ish? We can get dressed up and head to the con together!@@"
<</if>>
<br><br>
<<include "post_session_options">>
</div>/*#
#desc: first time preparing for convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcCosplayTechImage">>
<<decrementEmotion 'affection' 'npc_technician' 3>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> that you won't be able to accompany her to the convention today and her shoulders sink.<br>
<br>
"@@.npc_technician;Oh... okay. Well, I guess we can go some other time. I was really excited about checking it out together. I guess I'll see you around, then.@@"<br>
<br>
Feeling guilty and awkward you nod and leave.<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 300>>]
</div>/*#
#desc: first time preparing for convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcCosplayTechImage">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName("npc_technician","first"))>> flat and she throws open the door to her flat with a wide grin — already dressed in her "half" of the costume as she welcomes you in.<br>
<br>
"@@.npc_technician;Come in, come in! I was so excited for today I just couldn't wait to get changed, come on, let's get you dressed to match!@@"<br>
<br>
[<<moveTo "event_cosplay_first_2" "Follow her in and get changed." 300>>]<br>
[<<moveTo "event_cosplay_first_abort" "Something came up, you can't do the convention today." 180>>]
</div>/*#
#desc: first time changing for convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cosplayChange">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> eagerly drags/leads you into her flat where your costume is already laid out.<br>
<br>
"@@.npc_technician;Everything should be the proper size — oh, I'm so excited to see how you look in it!@@"<br>
<br>
<<if $scene.cosplay == "humiliation">>
<<=setup.getNpcName("npc_technician","first")>> winks as she waits for you to change. "@@.npc_technician;Too bad dress orbs don't exist IRL, eh? No matter, this means I get to watch you the whole time, and isn't that even more fun?@@"
<<else>>
You quickly remove what you were wearing as she hands you your outfit for the day and you're soon looking impressive... and sexy as <<include "cosplayLook">>.
<</if>>
<br><br>
"@@.npc_technician;Nice!@@" Your girlfriend states with a smile as she has you turn around to show off.<br>
<br>
"@@.npc_technician;There's one detail remaining, though — makeup.<<if State.hasPlayed('event_technician_cosplay_makeup_1')>> If you watched those tutorials you sent you can take a stab, otherwise I'm more than happy to paint up my pretty.<</if>>@@"<br>
<br>
She leads you into the bathroom where she has an entire battle-station's worth of supplies already laid out.<br>
<br>
<<if setup.hasThreshold('makeup', 'online_makeup', 'cosplay')>>
[<<moveTo "event_cosplay_first_4" "Say you can do it yourself." 180 "<<set $scene.selfMakeup=true>>">>]<br>
<<else>>
[@@.link_locked;You don't even recognise half this stuff, you need to put in a lot more work to try and do it yourself.@@]<br>
<</if>>
[<<moveTo "event_cosplay_first_3" "Continue." 180>>]
</div>/*#
#desc: first time preparing for convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "makeup" "makeup_instruction" "cosplay">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> bathroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bathroom.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> has you sit down on a temporary stool as she launches into an explanation. "@@.npc_technician;So cosplay makeup is a different thing than "normal" makeup. Normally we wear makeup to look like the best version of our selves — with cosplay it's a bit different as you're trying to transform yourself into the character or into a version of the character as if it were you. That can make things a bit trickier as you really have to broaden your eye in terms of translation from screen to reality. Doubly so if you're cosplaying a character that never even existed IRL.@@"<br>
<br>
You nod as she starts picking out supplies before giving you a mini-lecture on how each piece comes together — repeatedly referencing a picture of your character stuck to the mirror as she talks about translating from the screen to your face.<br>
<br>
[<<moveTo "event_cosplay_first_4" "Continue." 600 "<<set $scene.selfMakeup=false>>">>]
</div>/*#
#desc: first time preparing for convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
/%TODO: set makeup%/
<<set _makeup = setup.getTotalValue("makeup")>>
<<applyExperience 'makeup' _makeup 'skip' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.selfMakeup>>
<<=setup.getNpcName("npc_technician","first")>> grins as you jump in to doing your makeup, watching for a few moments before taking a seat beside you to touch up her own.
<<else>>
It takes some time, especially since <<=setup.getNpcName("npc_technician","first")>> seems just as interested in teaching you makeup as she does doing it perfectly, but you watch your face transform into one reflecting your character before <<=setup.getNpcName("npc_technician","first")>> steps back with a smile.
<</if>>
<br><br>
"@@.npc_technician;Goddamn, you look amazing! I could just hang out here and admire you all day, but I want to show off, come on, let's head down to the convention centre!@@"<br>
<br>
Arm in arm the two of you head for the elevator as <<=setup.getNpcName("npc_technician","first")>> whips out her phone to summon an auto-cab.<br>
<br>
[<<moveTo "event_cosplay_first_5" "To the convention!" 900>>]
</div>/*#
#desc: first time arrive convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You arrive at the convention centre and head straight in — your dual costume seeming to grant you a free entrance and you're soon browsing the main floor surrounded by "tourists" and characters from a hundred different franchises.<br>
<br>
Outfits range from simple to jaw-droppingly elaborate, though you surmise that <<=ps(setup.getNpcName("npc_technician","first"))>> and your paired ensemble is garnering more attention than most. You haven't even had a chance to finish looking around before someone walks up and asks to take a picture.<br>
<br>
[<<moveTo "event_cosplay_first_6" "Continue." 900>>]
</div>/*#
#desc: first time convention — pictures
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_15'
0
'theme_psychiatrist_technician_intro_1'
false
>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> is in rare form; taking the lead as she stays in character to interact with a series of fans, the two of you posing and smiling for at least a dozen photos before things taper off and she leads you off across the floor.<br>
<br>
"@@.npc_technician;I figured we'd just wander around a bit — if you see anything that interests you, let me know. You never know what cool stuff could be going on here.@@"<br>
<br>
[<<moveTo "event_cosplay_root" "Continue." 3600>>]
</div><<switch $npc_technician.flags.cosplay_next>>
<<case "dog">>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_velma")>>
<<case "penis">>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_rocket")>>
<<case "bdsm">>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_redqueen")>>
<<case "whorepiss">>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_ivy")>>
<<case "humiliation">>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_rikku")>>
<<case "bondage">>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_bowsette")>>
<<case "cum">>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_bubblegum")>>
<<case "cum_princess">>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_vampire")>>
<<case "bimbo">>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_popstar")>>
<</switch>><<useClothSetPush 'cosplay'>>
<<removeEverythingButUnderwear>>
<<switch $npc_technician.flags.cosplay_next>>
<<case "dog">>
<<addItemSet "cosplay_daphne">>
<<wearItemSet "cosplay_daphne">>
<<case "penis">>
<<addItemSet "cosplay_rocket">>
<<wearItemSet "cosplay_rocket">>
<<case "bdsm">>
<<addItemSet "cosplay_alice">>
<<wearItemSet "cosplay_alice">>
<<case "humiliation">>
<<addItemSet "cosplay_yuna">>
<<wearItemSet "cosplay_yuna">>
<<case "bondage">>
<<addItemSet "cosplay_princess">>
<<wearItemSet "cosplay_princess">>
<<case "whorepiss">>
<<addItemSet "cosplay_quinn">>
<<wearItemSet "cosplay_quinn">>
<<case "cum">>
<<addItemSet "cosplay_goth_queen">>
<<wearItemSet "cosplay_goth_queen">>
<<case "cum_princess">>
<<addItemSet "cosplay_bubblegum">>
<<wearItemSet "cosplay_bubblegum">>
<<case "bimbo">>
<<addItemSet "cosplay_miku">>
<<wearItemSet "cosplay_miku">>
<<default>>
ERROR: unexpected npc_technician.flags.cosplay_next <<=$npc_technician.flags.cosplay_next>>
<</switch>>/*#
#desc: look at your cosplay outfit
#status: RELEASED 0.8.7.0
#ignore_spell: miku,hatsumeki,aegi,tera
#*/
<<switch $npc_technician.flags.cosplay_next>>
<<case "dog">>
a sexy mystery-solver.
<<case "penis">>
a well-dressed criminal.
<<case "bdsm">>
Alice from Wonderland (though, technically, in this case, Through the Looking Glass).
<<case "whorepiss">>
Jessica Tera, the chaotic criminal.
<<case "humiliation">>
a sweet summoner.
<<case "bondage">>
Princess Plum, the frequently-kidnapped royal.
<<case "cum">>
the Vampire Queen.
<<case "cum_princess">>
the Vampire Queen.
<<case "bimbo">>
Hatsumeki Miku, the sexy digital pop-star of the future.
<<default>>
ERROR: unexpected npc_technician.flags.cosplay_next <<=$npc_technician.flags.cosplay_next>>
<</switch>><<switch $npc_technician.flags.cosplay_next>>
<<case "dog">>
<<removeItemSet "cosplay_daphne">>
<<if !State.hasPlayed("event_convention_bestiality_4")>>
<<deleteItemSet "cosplay_daphne">>
<</if>>
<<case "penis">>
<<removeItemSet "cosplay_rocket">>
<<if !State.hasPlayed("event_convention_penis_6")>>
<<deleteItemSet "cosplay_rocket">>
<</if>>
<<case "bdsm">>
<<removeItemSet "cosplay_alice">>
<<if !State.hasPlayed("event_convention_bdsm_5")>>
<<deleteItemSet "cosplay_alice">>
<</if>>
<<case "whorepiss">>
<<removeItemSet "cosplay_quinn">>
<<if !State.hasPlayed("event_convention_whore_7")>>
<<deleteItemSet "cosplay_quinn">>
<</if>>
<<case "humiliation">>
<<removeItemSet "cosplay_yuna">>
<<if !State.hasPlayed("event_convention_humiliation_5")>>
<<deleteItemSet "cosplay_yuna">>
<</if>>
<<case "bondage">>
<<removeItemSet "cosplay_princess">>
<<if !State.hasPlayed("event_convention_bondage_6")>>
<<deleteItemSet "cosplay_princess">>
<</if>>
<<case "cum">>
<<removeItemSet "cosplay_goth_queen">>
<<if !State.hasPlayed("event_convention_cum_4")>>
<<deleteItemSet "cosplay_goth_queen">>
<</if>>
<<case "cum_princess">>
<<removeItemSet "cosplay_bubblegum">>
<<if !State.hasPlayed("event_convention_cum_princess_5")>>
<<deleteItemSet "cosplay_bubblegum">>
<</if>>
<<case "bimbo">>
<<removeItemSet "cosplay_miku">>
<<if !State.hasPlayed("event_convention_bimbo_5")>>
<<deleteItemSet "cosplay_miku">>
<</if>>
<<default>>
ERROR: unexpected npc_technician.flags.cosplay_next <<=$npc_technician.flags.cosplay_next>>
<</switch>>
<<useClothSetPop 'cosplay'>>/*#
#desc: prepare for repeat convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcCosplayTechImage">>
<</if>>
<<set $player.location to "Trenner Housing Inc Building 23, Floor 63">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_student_quarter_hallway.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You show up to <<=ps(setup.getNpcName("npc_technician","first"))>> place to find her, once again, already changed and dressed for her "role." <br>
<br>
"@@.npc_technician;Woot, you're here! Let's get you changed!@@"<br>
<br>
[<<moveTo "event_cosplay_repeat_2" "Follow her in and get changed." 300>>]<br>
[<<moveTo "event_cosplay_abort" "Something came up, you can't do the convention today." 180>>]
</div>/*#
#desc: bail on cosplay convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'affection' 'npc_technician' 3>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> that you won't be able to accompany her to the convention today and her shoulders sink.<br>
<br>
"@@.npc_technician;Damn, and I got all dressed up!@@" She grins to confirm that "dressing up" for her is far from a hardship. "@@.npc_technician;Well I guess we can go some other weekend... just let me know, aight?@@"<br>
<br>
You nod, and apologise again, before you leave.<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 300>>]
</div>/*#
#desc: change + makeup for convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cosplayChange">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> bathroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bathroom.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> helps you get changed and then it's into the bathroom for makeup.<br>
<br>
"@@.npc_technician;So, you wanna try and do it yourself... or you want me to give you another lesson?@@"<br>
<br>
<<if setup.getTotalValue("makeup") > 10>>
<<if setup.getTotalValue("makeup") > 15>>
You smile, partially thanks to her, now more than confident in your makeup skills.
<<else>>
You smile nervously, still slightly in awe of her makeup acumen, but ready to give it a shot.
<</if>>
<br><br>
[<<moveTo "event_cosplay_repeat_3" "Do your own makeup." 300 "<<set $scene.do_makeup=true>>">>]<br>
[<<moveTo "event_cosplay_repeat_3" "You'd rather she did it." 300 "<<set $scene.do_makeup=false>>">>]
<<else>>
<<if setup.getTotalValue("makeup") > 5>>
You've learned makeup, but this is a whole other thing and you don't want to mess up the cool paired costume plan.
<<else>>
You're still confused from her LAST lesson, attempting something so complicated yourself is liable to be a disaster.
<</if>>
<br><br>
[<<moveTo "event_cosplay_repeat_3" "You think you need to learn from her a bit more." 300 "<<set $scene.do_makeup=false>>">>]
<</if>>
</div>/*#
#desc: change + makeup for convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.do_makeup>>
<<applyExperience 'makeup' _makeup 'skip' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'makeup' _makeup 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> bathroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bathroom.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.do_makeup>>
<<if setup.getTotalValue("makeup") > 15>>
You confidently
<<else>>
You nervously
<</if>>
take hold of a brush and start in on doing your makeup.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks on with pride,
<<if setup.getTotalValue("makeup") >= 20>>
watching in awe as you zip through transforming yourself into your "role." <br>
<br>
"@@.npc_technician;Wow... the student has become the master... to think you had all this skill lurking and going to waste for so long...@@"
<<elseif setup.getTotalValue("makeup") >= 15>>
offering a couple small tips on how to do things more efficiently.<br>
<br>
"@@.npc_technician;You're really coming along! And to think back to when I first met you and your face had probably never even SEEN makeup... don't get me wrong, you were always heckin' cute, but with makeup... wowza.@@"
<<else>>
showing significant patience as she helps you out and makes technique corrections.<br>
<br>
"@@.npc_technician;Not bad! Just keep practicing on your own. Makeup is an art and a science and it just takes time and focus. But the rewards... well, you can see for yourself how you just went from absolute cutie to head-turning drop-dead gorgeous!@@"
<</if>>
<br><br>
You grin and she offers you her arm to lead the way out of the flat.
<<else>>
You sit back and try to learn as much as you can while <<=setup.getNpcName("npc_technician","first")>> once again does your makeup. She finishes with a wink and then offers her arm to head to leave.
<</if>>
<br><br>
[<<moveTo "event_cosplay_repeat_4" "Head to the convention centre." 900>>]
</div>/*#
#desc: arrive at convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
Once again you and <<=setup.getNpcName("npc_technician","first")>> head to the convention and she eagerly leads the way inside.<br>
<br>
As usual there's a bit of a logjam of eager picture takers near the entrance, but after a few dozen photos, and <<=setup.getNpcName("npc_technician","first")>> playing her persona to the hilt, they move on leaving you and <<=setup.getNpcName("npc_technician","first")>> to move on to exploring the convention hall proper.<br>
<br>
"@@.npc_technician;Thanks for joining me again... it's always fun to play around as someone else and just enjoy the vibe of all these enthusiastic fans.@@"<br>
<br>
You nod as she leads the way towards the convention-hall full of booths.<br>
<br>
[<<moveTo "event_cosplay_root" "Continue." 3600>>]
</div>/*#
#desc: convention centre main
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() > 12>>
<<=setup.getNpcName("npc_technician","first")>> pulls out her phone to check the time.<br>
<br>
"@@.npc_technician;Sorry, but as fun as this morning was... I've got some errands I need to take care of before it's back to work tomorrow. We can come back next week, right? Just let me know after game if you're interested.@@"<br>
<br>
<<else>>
You wander through the convention, seeing the usual mix of corporate junk, impressive work from dedicated fans, other cosplayers, and the dizzying array of random other stuff.<br>
<br>
<<if State.hasPlayed("event_technician_cosplay_makeup_1")>>
<<if State.hasPlayed("event_convention_makeup_6_win")>>
[@@.link_locked;You've already won the cosplay makeup competition.@@]<br>
<<elseif $scene.cosplayMakeup>>
[@@.link_locked;You've already tried the cosplay makeup competition today.@@]<br>
<<else>>
Walking along you see a sign advertising a "cosplay makeup" competition. <<=setup.getNpcName("npc_technician","first")>> notices your attention and
<<if setup.getTotalValue("makeup") >= 19>>
smiles. "@@.npc_technician;With your skills? Oh you could totally crush that thing... and I could be your cheerful model!@@"
<<else>>
looks uncertain. "@@.npc_technician;Not sure about that, those competitions can be pretty tough... but if you want to try I'll be your cheerful model.@@"
<</if>>
<br><br>
<<if State.hasPlayed("event_convention_makeup_2")>>
[<<moveTo "event_convention_makeup_1" "Take another shot at the cosplay competition." 1800>>]<br>
<<else>>
[<<moveTo "event_convention_makeup_1" "Enter the cosplay competition." 1800>>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "event_cosplay_wander" "Just wander for a bit and show off your outfits." 3600>>]<br>
<</if>>
[<<moveTo "event_cosplay_repeat_leave_1" "Call it a day." 300>>]
</div>/*#
#desc: convention centre main
#status: RELEASED 0.8.7.0
#ignore_spell: taschenmonsters,aaaanyway,x,cindera,ephemera,bimbot,miku,hatsumeki,aegi,bubblecum,yorokobi
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.cosplay_next == "whorepiss">>
<<set _options = []>>
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 4>>
<<set _options.push("piss")>>
<</if>>
<<if $npc_technician.relationship.kink_indulge.whore >= 2>>
<<set _options.push("whore")>>
<</if>>
<<if _options.length == 0>>
<<set $scene.cosplayevent = false>>
<<else>>
<<set $scene.variant = _options.random()>>
<</if>>
<<else>>
<<set $scene.variant = $npc_technician.flags.cosplay_next>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.cosplayevent || !$scene.variant>>
You wander the convention centre for a while, but nothing particularly catches your attention.<br>
<br>
[<<moveTo "event_cosplay_root" "Do something else." 300>>]
<<else>>
<<switch $scene.variant>>
<<case "bdsm">>
<<if $npc_technician.relationship.kink_indulge.bdsm>>
<<=setup.getNpcName("npc_technician","first")>> looks at you with a sly smile. "@@.npc_technician;So my dear Alice... how about we make today a little more interesting? <<if setup.checkItemTypeTag('plug', ['ems']) && setup.checkItemTypeTag('plug', ['vibrating']) || setup.checkItemTypeTag('cage', ['ems']) && setup.checkItemTypeTag('cage', ['vibrating'])>>Me with the remote to the fun <<if setup.checkItemTypeWorn("cage") && setup.checkItemTypeWorn("plug")>>devices<<else>>device<</if>> you have underneath that cute skirt,<<else>>Me with a remote... you with some fun devices under your skirt,<</if>> and you play the part of my lovely pawn and see if you can make it to promotion.@@"<br>
<br>
She grins even wider in invitation to her challenge.<br>
<br>
<<printThought "If I remember the Red Queen correctly... this is liable to be a painful challenge...">><br>
<br>
[<<moveTo "event_convention_bdsm_1" "You're in!" 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_convention_bdsm_1" "You're happy just being her pawn..." 600 "<<set $scene.accept=false>>">>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<if $npc_technician.relationship.kinks.bdsm>>
<<printThought "Hmm... maybe after we've done more S&M together?">>
<<else>>
<<printThought "Hmm... maybe if I opened up to her more about my love of bdsm?">>
<</if>>
<br><br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<case "bimbo">>
<<if $npc_technician.relationship.kink_indulge.bimbofication.both>>
You and <<=setup.getNpcName("npc_technician","first")>> pass through a booth advertising "anatomically correct" life-sized dolls designed to look like various characters.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins as she approaches a portion of the display that could well be your twins — from their place front and centre it would appear that Hatsumeki Miku and Aegi Yorokobi are both popular models.<br>
<br>
"@@.npc_technician;Mmm, look at this! Imagine being a remote controlled bimbo sex-bot. Brainless, thoughtless, existing only to be controlled and used...@@"<br>
<br>
A nearby patron must have overheard <<=ps(setup.getNpcName("npc_technician","first"))>> gushing as they point a remote control at you and call out "@@.generic_male1;system override!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> glances at you and grins, silently asking if you want to play along...<br>
<br>
[<<moveTo "event_convention_bimbo_1" "Bimbot Hatsumeki Miku, awaiting instruction!" 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_convention_bimbo_1" "You don't feel like being a bimbot today." 600 "<<set $scene.accept=false>>">>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<if $npc_technician.relationship.kinks.bimbofication>>
<<printThought "Hmm... maybe after we've done more bimbofication play together?">>
<<else>>
<<printThought "Hmm... maybe if I opened up to her more about my interest in bimbofication?">>
<</if>>
<br><br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<case "bondage">>
<<if $npc_technician.relationship.kink_indulge.bondage>>
As <<=setup.getNpcName("npc_technician","first")>> she comes across a booth selling "fake" chains and ropes for incorporation into outfits and scenes... and a couple of diorama booths suitable for staging photoshoots. She looks at you with a grin.<br>
<br>
"@@.npc_technician;So... my beautiful princess... my damsel in distress... how do you feel about a little photoshoot? I mean, we went to all this trouble to dress up and I haven't even had the chance to tie you up and kidnap you yet!@@"<br>
<br>
[<<moveTo "event_convention_bondage_1" "You do like getting tied up..." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_convention_bondage_1" "What's the point in kidnapping the willing?" 600 "<<set $scene.accept=false>>">>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<if $npc_technician.relationship.kinks.bondage>>
<<printThought "Hmm... maybe after we've done more bondage exploration together?">>
<<else>>
<<printThought "Hmm... maybe if I opened up to her more about my love of bondage?">>
<</if>>
<br><br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<case "cum">>
<<if $fetish.cum && $npc_technician.relationship.kink_indulge.cum >= 2>>
As you're walking along through a less crowded section of the convention hall <<=setup.getNpcName("npc_technician","first")>> sidles up closer to whisper in your ear.<br>
<br>
"@@.npc_technician;While I am having a royally wonderful time... I do wonder if my lovely Vampire Queen might be feeling a bit... thirsty. I know you need your special draught, and well... as your girlfriend I, Princess Bubblecum am certainly more than happy to provide.@@"<br>
<br>
[<<moveTo "event_convention_cum_1" "You are feeling a bit thirsty..." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_convention_cum_1" "Maybe some other time." 600 "<<set $scene.accept=false>>">>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<if $npc_technician.relationship.kinks.cum>>
<<printThought "Hmm... maybe after we've explored my lust for cum together?">>
<<else>>
<<printThought "Hmm... maybe if I opened up to her more about my lust for cum?">>
<</if>>
<br><br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<case "cum_princess">>
<<if $fetish.cum && $npc_technician.relationship.kink_indulge.cum >= 2>>
As you're walking through the convention hall <<=setup.getNpcName("npc_technician","first")>> leans in to give you a quick nip on the neck and whisper in your ear.<br>
<br>
"@@.npc_technician;So... my Princess... your Queen is feeling a bit... thirsty. Do you think you could help her out, my lovely Princess Gumdrop... or perhaps I should say... Cum-drop?@@"<br>
<br>
[<<moveTo "event_convention_cum_princess_1" "Of course, my Queen..." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_convention_cum_princess_1" "Maybe some other time." 600 "<<set $scene.accept=false>>">>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<if $npc_technician.relationship.kinks.cum>>
<<printThought "Hmm... maybe after we've explored my lust for cum together?">>
<<else>>
<<printThought "Hmm... maybe if I opened up to her more about my lust for cum?">>
<</if>>
<br><br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<case "dog">>
<<if $npc_technician.relationship.kink_indulge.dog >= 2>>
As you're walking through the convention centre you spot a "familiar" figure walking a large great dane, the person's lanky build and long hair giving you a moment of uncertainty as to their gender...<br>
<br>
<<if !$options.fem>>
[<<moveTo "event_convention_bestiality_1" "Looks like we've got another mystery on our hands..." 300 "<<set $scene.female=false>>">>]<br>
<</if>>
[<<moveTo "event_convention_bestiality_1" "Wait... those hips... are they doing cross-play?" 300 "<<set $scene.female=true>>">>]<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<if $npc_technician.relationship.kinks.bestiality>>
<<printThought "Hmm... maybe after we've had more animal fun together?">>
<<else>>
<<printThought "Hmm... maybe if I opened up to her more about my interest in animals?">>
<</if>>
<br><br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<case "humiliation">>
<<if $npc_technician.relationship.kink_indulge.humiliation>>
As you wander through the rows of the convention you come across a stage with a performance that can only be described as cosplay karaoke. <<=setup.getNpcName("npc_technician","first")>> looks at you with a mischievous grin. "@@.npc_technician;Come on! You totally wanna be pop star like in Ultimate Imagination X-2-Alpha... which mathematically should be eight, or eleven... but since when do game numbering systems make sense? When you're mixing Arabic, Roman and Greek for a Japanese game, well...@@" She mock shudders. "@@.npc_technician;Aaaanyway, come on! Let's put on a show!@@"<br>
<br>
Between the glint in her eye, your skimpy costume, and the already rowdy crowd you get the feeling things could get a bit... interesting up on stage...<br>
<br>
[<<moveTo "event_convention_humiliation_1" "Time to make your debut!" 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_convention_humiliation_1" "You'd rather forgo showbusiness." 600 "<<set $scene.accept=false>>">>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<printThought "Hmm... maybe if I opened up to her more about my fetish for humiliation?">><br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<case "penis">>
<<if $npc_technician.relationship.kink_indulge.penis>>
You round the corner of a row of booths to see a "familiar" pair of cosplayers...<br>
<br>
[<<moveTo "event_convention_penis_1" "That's the so-called heroes — Cindera and Ephemera!" 300 "<<set $scene.accept=true>><<set $scene.female=true>>">>]<br>
<<if !$options.fem>>
[<<moveTo "event_convention_penis_1" "That's the so-called heroes — Cinder and Brick!" 300 "<<set $scene.accept=true>><<set $scene.female=false>>">>]<br>
<</if>>
[<<moveTo "event_convention_penis_1" "You aren't in a criminal mood." 600 "<<set $scene.accept=false>>">>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<if $npc_technician.relationship.kinks.penis>>
<<printThought "Hmm... maybe after we've explored my cock obsession together?">>
<<else>>
<<printThought "Hmm... maybe if I opened up to her more about my cock obsession?">>
<</if>>
<br><br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<case "petplay">>
TODO
<<case "piss">>
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 4>>
You're wandering along when <<=setup.getNpcName("npc_technician","first")>> pauses outside a public restroom. "@@.npc_technician;So... speaking as your plant-girlfriend... I'm feeling in need of a bit of watering...@@"<br>
<br>
[<<moveTo "event_convention_piss_1" "Lead her into the bathroom." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_convention_piss_1" "Maybe some other time." 600 "<<set $scene.accept=false>>">>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<if $npc_technician.relationship.kinks.piss>>
<<printThought "Hmm... maybe after we've explored my interest in watersports together?">>
<<else>>
<<printThought "Hmm... maybe if I opened up to her more about my interest in watersports?">>
<</if>>
<br><br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<case "whore">>
<<if $npc_technician.relationship.kink_indulge.whore >= 2>>
You come across a booth that is running a fundraiser for rainforest preservation.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> gets a mischievous grin on her face as she looks at you. "@@.npc_technician;Say, how do you feel about kicking this fundraiser up a notch? I bet a cosplay kissing booth would draw even more donations. Y'know... for the trees... well, for wood, at least...@@"<br>
<br>
[<<moveTo "event_convention_whore_1" "Sell yourself to save the planet!" 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_convention_whore_1" "Maybe some other time." 600 "<<set $scene.accept=false>>">>]
<<else>>
You wander around, but <<=setup.getNpcName("npc_technician","first")>> seems to be steering you carefully and you don't stumble on anything out of the ordinary.<br>
<br>
<<if $npc_technician.relationship.kinks.whore>>
<<printThought "Hmm... maybe after we've explored my interest in watersports together?">>
<<else>>
<<printThought "Hmm... maybe if I opened up to her more about my interest in watersports?">>
<</if>>
<br><br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
<<default>>
ERROR: unexpected scene.variant <<=$scene.variant>>
<</switch>>
<</if>>
</div>/*#
#desc: leave convention
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cosplayRemove">>
<</if>>
<<set $player.location = "Auto-cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> insists on covering the cab and the two of you get in for the trip back to her flat.<br>
<br>
<<if $scene.cosplayevent>>
"@@.npc_technician;Now THAT was worth getting up early for!@@" She says with a smile.<br>
<br>
You grin back at her and agree that it was definitely an exciting morning.
<<else>>
"@@.npc_technician;Not quite as exciting as I hoped, but there's always next time, eh?@@"<br>
<br>
You nod, thinking that you did miss a bit of an opportunity for adventure...
<</if>>
<br><br>
Arriving back at her flat the two of you change out of your outfits and you head off as <<=setup.getNpcName("npc_technician","first")>> explains that she was up half the night and really needs to crash.<br>
<br>
[<<moveTo "room_student_quarter" "Leave her flat." 300>>]
</div>/*#
#desc: cosplay bdsm intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.woreOldPlug = setup.checkItemTypeWorn("plug", true)>>
<<set $scene.oldPlugFunction = setup.checkItemTypeTag('plug', ['ems']) || setup.checkItemTypeTag('plug', ['vibrating'])>>
<<set $scene.vaginal = false>>
<<if $npc_technician.relationship.done_vag && $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
<<set $scene.vaginal = true>>
<<elseif setup.checkItemTypeWorn("cage") && $player.body_ref.vagina>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder>>
<<set $scene.vaginal = true>>
<</if>>
<</if>>
<</if>>
<<if $scene.vaginal>>
<<set $scene.ownedPlug = setup.checkItemOwned("pleasure_plug_double")>>
<<addItem "pleasure_plug_double">>
<<wearItem "pleasure_plug_double" true>>
<<else>>
<<set $scene.ownedPlug = setup.checkItemOwned("pleasure_plug_ultra")>>
<<addItem "pleasure_plug_ultra">>
<<wearItem "pleasure_plug_ultra" true>>
<</if>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You take hold of your skirt and drop into a formal curtsy as you respond that, as much as you love being her pawn, you would surely love to challenge for... promotion.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> or, rather the "Red Queen" grins maniacally at your response. "@@.npc_technician;Excellent... but we must first equip you properly for your trials...@@"<br>
<br>
Eagerly, <<=setup.getNpcName("npc_technician","first")>> leads you off to the nearest bathroom where she presents you with, and then begins lubricating, a large, gleaming butt-plug. <<if $scene.woreOldPlug>><<if $scene.oldPlugFunction>>"@@.npc_technician;I know you have a nice fancy toy stuffed up there like a good <<if $fetish.sissy>>sissy<<else>><<=setup.getBoyGirl($npc_technician)>><</if>>, but this one has some special features that will make it PERFECT for today's challenge.@@"<<else>>"@@.npc_technician;I know you're already plugged... but today's challenge requires something a bit more... feature-full.@@"<</if>><<else>>"@@.npc_technician;You may have come totally unprepared or equipped... but fortunately for you I have JUST the thing to stuff that sexy<<if $fetish.sissy>> sissy<</if>> hole of yours.@@"<</if>><br>
<br>
You gasp as the not-immodestly-sized plug <<if setup.checkItemTypeWorn("hollow_plug", true)>>threads through your hollow plug<<else>>slides into your rear<</if>>. Your gasp turns to a moan as it swells in side, and <<=setup.getNpcName("npc_technician","first")>> gives it a teasing tug as if to confirm that it's properly locked in place.<br>
<br>
<<if $scene.vaginal>>
You're still adjusting to your new occupant when <<=setup.getNpcName("npc_technician","first")>> produces a second, similar device. "@@.npc_technician;You didn't think we'd be leaving your tasty front hole unattended? Hmm?@@"
<<if setup.getItemFromType("cage") && !setup.isCage()>>
She momentarily unlocks your belt and slides the second toy inside before locking it in tight. "@@.npc_technician;Goddess knowing you're locked full under there turns me on... anyway, NOW you're ready to for my challenge...@@"
<<else>>
She grins as the second plug slides easily into your juicy <<getWordVagina>>. "@@.npc_technician;Goddess you being plugged is such a turn-on... anyway, NOW you're ready to for my challenge...@@"
<</if>>
<br><br>
<</if>>
You moan softly, your body flexing and self-stimulating as it adjusts to its new <<if $scene.vaginal>>occupants<<else>>occupant<</if>>.<br>
<br>
"@@.npc_technician;You like that? And I haven't even turned it on! That high-tech package is stuffing you full with a vibrator, and remote EMS device, but ALSO a textured rotating hole stimulator, with size variation AND life-like thrusting action.@@" With each word of description <<=setup.getNpcName("npc_technician","first")>> looks even more excited and you shiver slightly as you fix your skirt and she brandishes the remote... which you note has been fashioned into her costume's royal sceptre... "@@.npc_technician;And now my dear, sweet Alice... time to see if you have what it takes to rise to the challenge and advance from pawn... to QUEEN...@@"<br>
<br>
[<<moveTo "event_convention_bdsm_2" "Follow and meet her challenge..." 600>>]<br>
[<<moveTo "event_convention_bdsm_abort" "This is too much, abort." 60>>]
<<else>>
You decline <<=ps(setup.getNpcName("npc_technician","first"))>> offer and she frowns and gives an exaggerated snort. "@@.npc_technician;Mmm, I'd say off with your head for such impertinence... but that would be confusing characters, hmm?@@" She winks as she palms the remote and leads you off to another booth.<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay bdsm abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<<if $scene.vaginal>>
<<removeItem "pleasure_plug_double" true>>
<<deleteItem "pleasure_plug_double">>
<<else>>
<<removeItem "pleasure_plug_ultra" true>>
<<deleteItem "pleasure_plug_ultra">>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You change your mind and tell <<=setup.getNpcName("npc_technician","first")>> that you're at your limit.<br>
<br>
Still in "Red Queen" mode she frowns for a moment, and then her expression softens as she turns off your stimulation and leads you back to the bathroom to remove the plug. "@@.npc_technician;That better? Of course not beating the challenge means that I'll be keeping the prize.@@" She states as she washes the plug off and tucks it into her purse. "@@.npc_technician;Maybe some other time, hmm? Let's head home — you're still looking a little wobbly in those heels. I think this has been enough excitement for one day.@@"<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600>>]
</div>/*#
#desc: cosplay bdsm start
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 20>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
No sooner are you back on the convention floor when vibrations kick in<<if $scene.vaginal>> from both directions<</if>>.<br>
<br>
You stagger slightly and the "Red Queen" grins back at you. "@@.npc_technician;What's that? struggling already? Tsk, tsk — the challenge has barely begun, and you poor pawn, not even taking advantage of a two square move to start! Anyway, your task is quite the simple one, all you have to do is make it across the board, that is, to the far side of the convention centre without... embarrassing yourself. Proper decorum, and all that. Now step lively! And do keep proper posture!@@"<br>
<br>
You jolt upright as you get a zap <<if $scene.vaginal>>between the legs<<else>>from behind<</if>> and you wobble slightly as you take note of just how large the convention hall is... and how steep the heels of your costume are...<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> takes a few steps forward and then glances back at you with a grin, brandishing her royal sceptre/remote.<br>
<br>
[<<moveTo "event_convention_bdsm_3" "Start walking..." 600>>]<br>
[<<moveTo "event_convention_bdsm_abort" "This is too much, abort." 60>>]
</div>/*#
#desc: cosplay bdsm progress
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 20>>
<<applyExperience 'bdsm' 15 'normal' $SEEN_FRIEND>>
<<set $scene.wpCost = Math.floor(4-setup.getTotalValue("bdsm")/5)>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You take a step forward, clenching down on your <<if $scene.vaginal>>dual <</if>>occupants as <<=setup.getNpcName("npc_technician","first")>> "introduces" you to the various features.<br>
<br>
You're soon panting and focusing all you have just to walk a straight line as things buzz, shock and pulse — not just inside as it feels like you're being fucked and vibrated with every step, but with particular "attention" focused on your stretched <<if $scene.vaginal>>holes<<else>>hole<</if>> as the ribbed flange twists and throbs like a tongue constantly rimming you.<br>
<br>
The whole time you try keep your cool, the unknowing crowds walking past only making your heart beat faster as you <<if $player.body_ref.vagina>>ooze down your thighs<<else>>clench and tremble with every step<</if>>.<br>
<br>
You're starting to find a rhythm and you lengthen your stride only for the previously measured stimulation to kick into overdrive, shocks and vibrations sending alternating pain and pleasure through your body as the <<if $scene.vaginal>>plugs swell<<else>>plug swells<</if>> to organ-rearranging girth.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> notices your staggering struggle and winks. "@@.npc_technician;You didn't think it would be an easy walk, did you? No, no, this is a challenge! One where you have to run as fast as you can just to stay in place... metaphorically speaking.@@"<br>
<br>
Spurred to motion you try to catch your breath while you push forward, entire body on edge as you attempt to keep moving rather than succumb to the urge to collapse to the ground and surrender to paingasm...<br>
<br>
<<if $scene.wpCost == 0>>
[<<moveTo "event_convention_bdsm_4" "You are a pain-slut, and you will endure." 300 "<<set $scene.spendWillpower=true>>">>]<br>
<<elseif setup.getWillpower() >= $scene.wpCost>>
[<<moveTo "event_convention_bdsm_4" "Keep pushing forward!" 300 "<<set $scene.spendWillpower=true>>">>] <<hint $options "Focusing this hard will push your willpower and pain tolerance to the limit.">><br>
<<else>>
[<<moveTo "event_convention_bdsm_4" "Try to keep going..." 300 "<<set $scene.spendWillpower=false>>">>]<br>
<</if>>
[<<moveTo "event_convention_bdsm_abort" "This is too much, abort." 60>>]
</div>/*#
#desc: cosplay bdsm cum
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if $scene.spendWillpower>>
<<applyExperience 'bdsm' 18 'very' $SEEN_FRIEND>>
<<spendWillpower $scene.wpCost>>
<<else>>
<<set _wp = setup.getWillpower()>>
<<spendWillpower _wp>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<if !$scene.ownedPlug>>
<<if $scene.vaginal>>
<<removeItem "pleasure_plug_double" true>>
<<deleteItem "pleasure_plug_double">>
<<else>>
<<removeItem "pleasure_plug_ultra" true>>
<<deleteItem "pleasure_plug_ultra">>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.spendWillpower>>
You somehow manage to fight back the oncoming orgasm, first focusing on the pain... but discovering that even that is not enough to cancel out the inexorable approach of what what is sure to be a mind-blowing climax induced by the stimulation provided by your <<if $scene.vaginal>>twin toys<<else>>plug<</if>>.<br>
<br>
Through sheer force of will you manage to keep putting one foot in front of the other, feeling as if you were walking on stilts as you somehow keep your balance, imagining the crowds around you clouds that you are wading through, one step, then another as you pointedly avoid look at <<=setup.getNpcName("npc_technician","first")>> — even as you know she is grinning in delight at her role as the cause of all this mischief...<br>
<br>
Barely a few steps away from your destination your focus slips, a potent shock that has you biting your lip to fight back the pain... and then squeezing harder to stifle a moan as your body tilts over into orgasm.<br>
<br>
A final desperate reflex has you stumbling forward, circling around a large support pillar to find yourself with a modicum of privacy as you lean against it for support. <<=setup.getNpcName("npc_technician","first")>> is suddenly next to you, holding you up as she whispers in your ear.<br>
<br>
"@@.npc_technician;Well done... Queen... now cum for me, come for me hard you lovely creature...@@"<br>
<br>
Pressed against the wall by your girlfriend, you forget about the crowds mere meters away as you groan in orgasm, the scent of your girlfriend, her lips swallowing your moans, only pushing you deeper into ecstasy as you knees wobble and you all but pass out...<br>
<br>
[<<moveTo "event_convention_bdsm_5" "Continue." 300>>]
<<else>>
You're almost dancing with each painful jolt, but the pain only serves to lower your defenses and the constant pulsing stimulation of pleasure becomes too much. Your body jerks and you set a foot wrong, slipping and stumbling for a moment as <<=setup.getNpcName("npc_technician","first")>> rushes over to catch you... but you're already too far gone. Though she helps guide you softly to the ground you're already cumming, a mind-blowing full-body orgasm rushing through you as you thrash on the floor of the convention centre.<br>
<br>
"@@.generic_female1;Is she okay?@@"<br>
<br>
"@@.generic_male1;Look at her face... she's full on ahegao!@@"<br>
<br>
The whispered comments are distant, not that you have any control remaining to fight back, <<=setup.getNpcName("npc_technician","first")>> cradling you close and muffling your moans... even as she "forgets" to turn off your stimulation until you nearly pass out from intertwined pain and pleasure.<br>
<br>
You somehow find yourself back on your feet as <<=setup.getNpcName("npc_technician","first")>> helps you to the nearest restroom, removing your <<if $scene.vaginal>>toys<<else>>plug<</if>> and cleaning you up a bit as you catch your breath.<br>
<br>
"@@.npc_technician;Alas, it would seem our cute Pawn fell before becoming a queen... perhaps next time, hmm?@@"<br>
<br>
You blush, your thoughts casting back to the spectacle you must have made on the convention floor as <<=setup.getNpcName("npc_technician","first")>> winks and helps fix your outfit.<br>
<br>
"@@.npc_technician;Come along, I think that's enough excitement for one day...@@"<br>
<br>
You nod and follow her out of the convention centre to a waiting taxi.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Flop into the car." 600>>]
<</if>>
</div>/*#
#desc: cosplay bdsm leave
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You come to to find yourself looking into <<=ps(setup.getNpcName("npc_technician","first"))>> loving eyes. She grins, and darts in for another kiss. <<if $player.body_ref.vagina || $player.body_ref.penis && $player.body_ref.cumProduction > 0>>"@@.npc_technician;Goddess you're hot... and delicious,@@" she adds as she runs a finger between your soaked thighs and licks it clean<<else>>"@@.npc_technician;Goddess you're hot...@@" she whispers<</if>> as you blush and grin.<br>
<br>
"@@.npc_technician;Come on, I think that's enough excitement for one day, let's head out.@@" She steps away and offers a hand, sending a quick buzz of vibration when you fail to move quickly enough.<br>
<br>
"@@.npc_technician;Oh, and as a prize for your victory... you can keep the <<if $scene.vagina>>toys<<else>>toy<</if>>.@@"<br>
<br>
You shiver in excitement, even still and somewhat deflated the textured <<if $scene.vagina>>plugs are<<else>>plug is<</if>> an excitement with every step as you take her hand and head for the exit.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Continue." 600>>]
</div>/*#
#desc: intro to bestiality event
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> notices your attention and grins. "@@.npc_technician;Jinkies!@@" She states in character.<br>
<br>
The two of you hurry after your fellow cosplayer, catching up just as they make a turn into a side room and finally notice you with a grin.<br>
<br>
<<if $scene.female>>
"@@.generic_female1;Zoinks!@@" They say in surprise, turning around to reveal that, while they're rocking some classic "big hair," their face is far from "shaggy." In fact, you'd say they're the sexiest version of the character you've ever seen, the effect only enhanced by their large, look-alike dog. "@@.generic_female1;I'm surprised to find another pair of fans... and with such attention to detail, you two look amazing!@@"
<<else>>
"@@.generic_male1;Zoinks!@@" They say in surprise, turning around to reveal a costume almost as dead-on as their large, look-alike dog. "@@.generic_male1;I'm surprised to find another pair of fans... and with such attention to detail, you two look amazing!@@"
<</if>>
<br><br>
The dog barks in agreement, looking the two of you over with obvious excitement.<br>
<br>
[<<moveTo "event_convention_bestiality_2" "Time to solve the mystery of the big knot..." 1800 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_convention_bestiality_2" "Just congratulate them on their costume." 1800 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: intro to bestiality event
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<if $scene.female>>
"@@.generic_female1;Don't let his size bother you. He's real friendly if you want to have some fun...@@"
<<else>>
"@@.generic_male1;Don't let his size bother you. He's real friendly if you want to have some fun...@@"
<</if>>
The owner states as they extend the leash.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins, you can tell she's far from bothered as she eyes the dog's hard, dripping member, its owner grinning as they offer up the leash.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'sub'>>
<<=setup.getNpcName('npc_technician', 'first')>> bites her lip and curtsies slightly, "@@.npc_technician;After you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@"
<<case 'neutral' ''>>
<<=setup.getNpcName('npc_technician', 'first')>> bites her lip and motions for you to go first.
<<case 'dom'>>
<<=setup.getNpcName('npc_technician', 'first')>> grins, her gaze darting from you to the dog. "@@.npc_technician;Well, Princess... the beast, er, I mean, the "mystery" awaits!@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
[<<moveTo "event_convention_bestiality_3" "Jeepers, let's solve this mystery!" 1800 "<<set $scene.foursome=false>>">>]<br>
[<<moveTo "event_convention_bestiality_3" 'Hmm... maybe <<=setup.getNpcName("npc_technician", "first")>> could show the owner some appreciation while you take first shot at the beast...' 1800 "<<set $scene.foursome=true>>">>]<br>
[<<moveTo "event_convention_bestiality_abort" "Actually, you don't want to go through with this." 180>>]
<<else>>
You congratulate your fellow "fan" on their spectacular costume and then the four of you head back out onto the convention floor, having fun with some combined photoshoots before eventually drifting off your own separate ways.<br>
<br>
[<<moveTo "event_cosplay_root" "What to do now..." 600>>]
<</if>>
</div>/*#
#desc: intro to bestiality event
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
With a glance you're able to communicate to <<=setup.getNpcName("npc_technician","first")>> that you aren't quite comfortable with the situation and she smoothly exchanges another congratulation to your shaggy friend's costume before the two of you slip out of the room and back to the convention proper.<br>
<br>
[<<moveTo "event_cosplay_root" "Back to the convention floor." 300>>]
</div>/*#
#desc: intro to bestiality event
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.foursome>>
<<else>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'bestiality' 5 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.foursome>>
Wordlessly you find yourself under the dog as <<=setup.getNpcName('npc_technician', 'first')>> kneels down to "thank" its owner. The knot swells wonderfully inside you as your <<switch $npc_technician.relationship.her_role>><<case 'sub'>>slave<<case 'neutral' ''>>girlfriend<<case 'dom'>><<=setup.getNpcName('npc_technician', 'title')>><</switch>> eagerly
<<if $scene.female>>
licks away.
<<else>>
sucks cock — your "Shaggy" new friend looking almost as well hung as the pet enthusiastically breeding you from behind.
<</if>>
<br><br>
Your heart is pounding along to the pounding you're getting, but you can see your girlfriend's lusty gaze and you soon swap off, <<=setup.getNpcName('npc_technician', 'first')>> down on all fours, moaning as the dog humps away while you do your part to "thank" its owner.<br>
<br>
Parallel sex soon transitions into a full on orgy as you and your new "friends" suck, lick, fuck, and howl your way through until all four of you are satisfied, exhausted and drained.
<<else>>
Your new "Shaggy" friend sits back as you slide under <<if $scene.female>>her<<else>>his<</if>> pet, <<=setup.getNpcName('npc_technician', 'first')>> looking on with a gleefully lusty grin as you take first crack at the large animal and it's VERY large cock.<br>
<br>
A moment later and a big, thick knot is swelling hot and hard inside you, the dog barking happily as you moan in delight.<br>
<br>
<<if $scene.female>>
"@@.generic_female1;Looks like someone solved the mystery of the <<if $fetish.sissy>>slutty sissy<<else>>cumming cosplayer<</if>>!@@"
<<else>>
"@@.generic_male1;Looks like someone solved the mystery of the <<if $fetish.sissy>>slutty sissy<<else>>cumming cosplayer<</if>>!@@"
<</if>>
Your new friend jokes only for <<=setup.getNpcName('npc_technician', 'first')>> to get impatient and join you on the floor. "@@.npc_technician;You ain't seen nothing yet — this case is a double mystery!@@" She replies as she starts making out with you half under the dog, her lips and roaming hands of encouragement getting you off in record time, before you're helping her into position to take her turn with the still hard beast.<br>
<br>
Already revved up your large canine friend wastes no time in knotting hard inside your bespectacled best buddy. <<=setup.getNpcName('npc_technician', 'first')>> almost loses her glasses as she rocks back and forth, all but pinned beneath the animal as you lean back with her head between your legs,
<<if setup.checkItemTypeWorn("cage")>>
as she worships your <<if setup.isCage()>>caged creature<<else>>chastity belt<</if>> in between gasps.
<<else>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
as she sucks and licks back and forth between your <<getWordMyPenis>> and <<getWordVagina>>.
<<elseif $player.body_ref.penis>>
as she sucks away on your <<getWordMyPenis>>.
<<else>>
as she licks your <<getWordVagina>>.
<</if>>
<</if>>
<br><br>
You moan and throw your head back just as <<=setup.getNpcName('npc_technician', 'first')>> cries out in orgasm, the dog howling along in unison as <<if setup.checkItemTypeWorn("cage")>>two of the three of you climax, the sounds of your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>> climax whilst you remain locked up almost enough to get you off hands-free<<else>>the three of you climax together<</if>>.<br>
<br>
You hear a slow clapping, turning around as you recover to see your "Shaggy" new friend looking on with a grin.<br>
<br>
<<if $scene.female>>
"@@.generic_female1;Now THAT was a show!@@" She
<<else>>
"@@.generic_male1;Now THAT was a show!@@" He
<</if>>
states with a grin as the dog pulls out<<if $fetish.cum>>, trailing cum out<</if>> of <<=ps(setup.getNpcName('npc_technician', 'first'))>> well-fucked ass as it returns to its owners side and you help your friend back to her feet.<br>
<br>
<<if $scene.female>>
"@@.generic_female1;I'll leave you two lovely ladies to clean up,@@" she
<<else>>
"@@.generic_male1;I'll leave you two lovely ladies to clean up,@@" he
<</if>>
says with a nod, glancing back one final time before sliding out of the door.
<</if>>
<br><br>
[<<moveTo "event_convention_bestiality_4" "Jeepers..." 1800>>]
</div>/*#
#desc: home after bestiality event
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cosplayRemove">>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_technician', 'first')>> wobble a bit as you help one another back to your feet, but you find some napkins and make a stab at cleaning up before the two of you decide to head home to change.<br>
<br>
Riding in the taxi together with the scent of dog<<if $fetish.cum>> cum<</if>> filling the car you and <<=setup.getNpcName('npc_technician', 'first')>> share a grin — whatever perverted part you play, doing it together is definitely the best.<br>
<br>
A quick change and a shower and <<=setup.getNpcName('npc_technician', 'first')>> is eying the bed, but not in a sexy way. "@@.npc_technician;Sorry, <<switch $npc_technician.relationship.her_role>><<case 'dom'>>Princess<<case 'neutral'>>hun<<case "sub">><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</switch>> — I don't have the stamina of your experience and I am bushed! I'll catch you later!@@"<br>
<br>
You give her a hug goodbye before she shoos you off.<br>
<br>
[<<moveTo "room_student_quarter" "Leave her flat." 300>>]
</div>/*#
#desc: cosplay bimbofication intro
#status: RELEASED 0.8.7.0
#ignore_spell: bimbot,aegi,miku,bzzt,hatsumeki,yorokobi
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.woreOldPlug = setup.checkItemTypeWorn("plug", true)>>
<<set $scene.oldPlugFunction = setup.checkItemTypeTag('plug', ['ems']) || setup.checkItemTypeTag('plug', ['vibrating'])>>
<<set $scene.vaginal = false>>
<<if $npc_technician.relationship.done_vag && $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
<<set $scene.vaginal = true>>
<<elseif setup.checkItemTypeWorn("cage") && $player.body_ref.vagina>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder>>
<<set $scene.vaginal = true>>
<</if>>
<</if>>
<</if>>
<<if $scene.vaginal>>
<<addItem "pleasure_plug_double">>
<<wearItem "pleasure_plug_double" true>>
<<else>>
<<addItem "pleasure_plug_ultra">>
<<wearItem "pleasure_plug_ultra" true>>
<</if>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You straighten up mechanically and turn towards the <<guy>> wielding the remote.<br>
<br>
"@@.pc;Bzzt, Bimbot Hatsumeki Miku, awaiting instruction.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins for a moment before adopting a similarly blank expression. "@@.npc_technician;Bimbot Aegi Yorokobi entering submissive mode. What is your command, <<Master>>?@@"<br>
<br>
The <<man>>'s eyes light up in excitement as they speak into the remote. "@@.generic_male1;Initiate makeout sub-routine. Dirty talk set to extreme.@@"<br>
<br>
"@@.npc_technician;Command acknowledged.@@" <<=setup.getNpcName("npc_technician","first")>> states with a bow before robotically turns to face you, one arm reaching out to pull you in for a kiss.<br>
<br>
"@@.npc_technician;Initiating makeout. Kiss me with those cock-sucking lips. You slut.@@"<br>
<br>
[<<moveTo "event_convention_bimbo_2" "Now, kiss." 600>>]<br>
[<<moveTo "event_convention_bimbo_abort" "This is too much, abort." 300>>]
<<else>>
You shake your head and <<=setup.getNpcName("npc_technician","first")>> turns to the <<guy>> with the remote and laughs. "@@.npc_technician;Heh, sorry <<if $options.fem>>ma'am<<else>>fella<</if>>, not today.@@"<br>
<br>
Though looking disappointed the person turns away without further comment as <<=setup.getNpcName("npc_technician","first")>> leads you off towards another booth.<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay bimbo abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You shake your head and drop the robotic affectation. "@@.npc_technician;Procedure: aborting,@@" <<=setup.getNpcName("npc_technician","first")>> intones before turning away from the <<guy>> with the remote.<br>
<br>
"@@.npc_technician;Come on, it's getting a bit late and we should bounce.@@"<br>
<br>
You nod and the two of you head off towards the exit, leaving any onlookers behind.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600>>]
</div>/*#
#desc: cosplay bimbo - make out
#status: RELEASED 0.8.7.0
#ignore_spell: miku,hatsumeki
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> lean in, heads tilting with faux-mechanical precision as you bring your lips together to make out. <<=setup.getNpcName("npc_technician","first")>> pulls you closer, her hand gripping your ass as she grinds against you while looking towards the holder of your remote.<br>
<br>
"@@.npc_technician;Is this what you desire <<Master>>? Our hot lips pressed together? Oh just think how many cocks these lips have tasted! That's what gave us our lovely singing voices, you know, all that practice sucking dick, all those moans of arousal when we're being fucked... There truly is nothing better than being a digitised slut!@@"<br>
<br>
You and <<=setup.getNpcName("npc_technician","first")>> are starting to attract a bit of an audience as you grope and grind, attracting the attention of the <<man>> running the booth, who immediately knows an opportunity when <<he>> sees one.<br>
<br>
The sedate background music of the stall is suddenly replaced by one of "your" biggest hits — a pure peppy bubblegum pop with double entendre-filled lyrics, on the surface about how happy Hatsumeki Miku is... but spoken with such lusty passion, and with such thinly veiled references as your "explosive joy," loving the feeling of "pleasure pounding into me from all directions," and wanting to "blow happiness into the whole world." <br>
<br>
"@@.generic_male1;Initiate dance routine,@@" the <<man>> with the remote commands and <<=setup.getNpcName("npc_technician","first")>> starts bouncing to the music as she looks at you with a grin.<br>
<br>
[<<moveTo "event_convention_bimbo_3" "Like, dance!" 600>>]<br>
[<<moveTo "event_convention_bimbo_abort" "This is too much, abort." 300>>]
</div>/*#
#desc: cosplay bimbo dance show
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
You go far beyond a simple swaying bump and grind as you twerk, flip and show off the full range of your athletic capabilities.
<<else>>
You immediately throw yourself into the music, jumping and twirling around <<=setup.getNpcName("npc_technician","first")>> as you grope and flaunt and flash.
<</if>>
Mouthing along to the lyrics the two of you put on a real show, the only thing missing a stripper pole for you to REALLY bust out.
<<else>>
You aren't really agile enough for any particularly exciting dance moves... but you doubt the crowd cares, as you audience seems more than happy to watch you and <<=setup.getNpcName("npc_technician","first")>> grope and grind even if it is only in time to the music
<</if>>
<br><br>
As the song reaches its end you find yourself on your knees in front of <<=setup.getNpcName("npc_technician","first")>> and, at the final bar, she pulls her skirt aside to reveal her <<if $npc_technician.relationship.her_caged>><<if $npc_technician.relationship.sissyomatic>>high-tech<<else>>gleaming<</if>> chastity cage<<else>>hard <<getWordPenis false>><</if>>.<br>
<br>
"@@.npc_technician;Eat my leek,@@" she commands as the music fades.<br>
<br>
Out of the corner of your eye you can see the <<man>> with the remote and several audience members leering, you have a feeling that if this gets sexual it's going to ramp up REALLY fast, a fact confirmed as you hear the words "@@.generic_male1;engage multi-user mode,@@" command issues into the remote...<br>
<br>
[<<moveTo "event_convention_bimbo_4" "Like, yay! Time to suck and fuck!" 600>>]<br>
[<<moveTo "event_convention_bimbo_abort" "This is too much, abort." 300>>]
</div>/*#
#desc: cosplay bimbo gangbang
#status: RELEASED 0.8.7.0
#ignore_spell: aegi,miku,hatsumeki,yorokobi
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<<applyExperience 'anal' 13 'terrible' $EXPOSED>>
<<applyExperience 'oral' 13 'terrible' $EXPOSED>>
<<applyFatigue 100>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You
<<if $npc_technician.relationship.her_caged>>
tongue bath <<=ps(setup.getNpcName("npc_technician","first"))>> cage
<<else>>
gulp down <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>>
<</if>>
with aplomb as people close in, and in moments your hair and skirt are bouncing as you take it hard and fast
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
in all three holes.
<<else>>
from both ends.
<</if>>
You and "Aegi Yorokobi" suck and fuck, giggle and jiggle, keeping character as you stroke and grope, moan and gasp and do your best to "please" all of your fans.<br>
<br>
Through it all the <<man>> with the remote is always in the background, occasionally issuing a lewd instruction or steering you and <<=setup.getNpcName("npc_technician","first")>> back towards one another. Other than their obvious delight at seeing "Aegi Yorokobi" and "Hatsumeki Miku" going at one another full-bore in the middle of a gang-bang they seem entertained merely to observe, never once touching either of you even as you lick, fuck and suck your way through over a dozen partners — all to the peppy tunes of one of your hit tracks as you prove your "Moan of the Future" name, and then some.<br>
<br>
[<<moveTo "event_convention_bimbo_5" "Continue." 600>>]
</div>/*#
#desc: cosplay bimbo finish
#status: RELEASED 0.8.7.0
#ignore_spell: bimbots
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('miku_cosplay')>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('miku_cosplay')>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.pushUnique('miku_cosplay')>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
Curled up with <<=setup.getNpcName("npc_technician","first")>> in an exhausted, sweat<<if $fetish.cum>> and cum<</if>>-soaked heap the proprietor of the booth finally pulls a curtain around you for privacy as they thank you for your performance.<br>
<br>
"@@.generic_female1;Hey, great job out there. You two bimbots made me a bunch of sales... and I bet I could make even more if you'd just sign away permission for me to use the footage I filmed.@@"<br>
<br>
They hold out a tablet as you recall that there were quite a number of camera drones buzzing around the booth. It looks like you're in for 100 credits for today's work — and another 1000 each if you sign over the rights.<br>
<br>
[<<moveTo "event_convention_bimbo_6" "Sign." 180 "<<set $scene.sign=true>>">>]<br>
[<<moveTo "event_convention_bimbo_6" "You'd rather they delete the footage." 180 "<<set $scene.sign=false>>">>]<br>
</div>/*#
#desc: cosplay bimbo finish
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<<if $scene.sign>>
<<addCredits 1000>>
<<applyExperience 'whoring' 18 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'whoring' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<addCredits 100>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.sign>>
You feel almost like a REAL pop-star; fucked, and then asked to sign away your rights... but hey, 1000 credits for less than an hour's work is hard to say no to and you grin at <<=setup.getNpcName("npc_technician","first")>> before the both of you sign on the dotted line and take payment.
<<else>>
You shake your head and <<=setup.getNpcName("npc_technician","first")>> does the same, grilling the booth owner for a few minutes to gain access to record and verify that all of the video has been securely wiped.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> helps you back to your feet and the two of you skip towards the convention centre exit.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Continue." 600>>]
</div>/*#
#desc: cosplay bondage intro
#status: RELEASED 0.8.7.0
#ignore_spell: koopa
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You acquiesce to <<if $npc_technician.relationship.her_role == 'dom'>>your <<=ps(setup.getNpcName("npc_technician","title"))>><<else>><<=ps(setup.getNpcName("npc_technician","first"))>><</if>> suggestion and she grins. "@@.npc_technician;Wonderful... mmm, what could be better than a Princess... than a Princess all tightly bound as a damsel in distress?@@" She leans closer to whisper in your ear. "@@.npc_technician;Well... maybe not distress... after all, you're such a bondage slut I could tie you tight enough that you couldn't move and you'd just be my damsel in delight...@@"<br>
<br>
Your knees get weak as she leads you off to the photoshoot booths. She pauses briefly at a corny "railroad" set before chuckling and moving on. "@@.npc_technician;No... I'm the Queen Koopa-hime... not some dime novel scoundrel!@@"<br>
<br>
Moving on she comes to a more castle-themed set complete with fake stonework and a couple devices straight out of the inquisition...<br>
<br>
"@@.npc_technician;Yes... now THIS is how you keep a captive entertained...@@"<br>
<br>
[<<moveTo "event_convention_bondage_2" "The most entertainment would be if the bonds are really tight..." 600>>]<br>
[<<moveTo "event_convention_bondage_abort" "You think of yourself as more of a willing hostage..." 1800>>]
<<else>>
<<=setup.getNpcName("npc_technician","first")>> pouts and wiggles her tail in mock annoyance. "@@.npc_technician;Bah, you're no fun today! Oh, well, come on, if you don't want to be my kidnapping victim there has to be something else to do around here...@@"<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay bondage abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemWorn("armbinder_steel")>>
<<removeItem "armbinder_steel" true>>
<<deleteItem "armbinder_steel">>
<<removeItem "ankle_cuffs_steel" true>>
<<deleteItem "ankle_cuffs_steel">>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $player.llocation == "event_convention_bondage_1" || $player.llocation == "event_convention_bondage_2">>
You tell <<=setup.getNpcName("npc_technician","first")>> that actually, you're more of a willing hostage and don't really need restraining...<br>
<br>
She pouts playfully before leading you away from the booth. "@@.npc_technician;No fun! Ah well, maybe some other time...@@"<br>
<br>
The two of you wander around the convention centre for a bit longer, but nothing else particularly interesting happens and you eventually head off.
<<else>>
You signal to <<=setup.getNpcName("npc_technician","first")>> that you're ready to be let out and she quickly hurries to remove your restraints and help you back to your feet. "@@.npc_technician;Got a bit too intense for you? That's okay... I'm pretty sure you're not going to ACTUALLY try to escape, right?@@"<br>
<br>
She winks and you blush and bite your lip as you shake your head.<br>
<br>
"@@.npc_technician;Come on, it's been an eventful day, let's head home.@@"
<</if>>
<br><br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600>>]
</div>/*#
#desc: cosplay bondage maiden intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Queen Koopa-hime's Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/castle_dungeon.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> takes you by the <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>collar<<else>>hand<</if>> as she slowly wanders through the room before stopping in front of an imposing iron maiden like device. "@@.npc_technician;Talk about impressive, and secure! I'd love to have one of these but, well... apartment living, y'know?@@"<br>
<br>
She turns to you with a grin as she opens it up to reveal a richly padded interior as well as a number of thick straps meant to hold the occupant in place. "@@.npc_technician;Hop in, my dear, this seems like the PERFECT way to keep a hostage out of trouble... hmm?@@"<br>
<br>
You glance at the intimidating bit of furniture — while it looks padded and comfy it also looks VERY restrictive...<br>
<br>
[<<moveTo "event_convention_bondage_3" "Step into the iron maiden." 600>>]<br>
[<<moveTo "event_convention_bondage_abort" "You don't want to do this." 1800>>]
</div>/*#
#desc: cosplay bondage maiden use
#status: RELEASED 0.8.7.0
#ignore_spell: mwahahaha,hahahahaha
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Queen Koopa-hime's Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/castle_dungeon.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You step into the iron maiden and turn around as <<=setup.getNpcName("npc_technician","first")>> grins and starts strapping you in tight. "@@.npc_technician;How's that, Princess? Your so-called hero will never even find you in there, much less rescue you!@@"<br>
<br>
You mock struggle and <<=setup.getNpcName("npc_technician","first")>> tightens things even further, your body sinking into the thick padding of the iron maiden's interior. "@@.npc_technician;Mwahahaha!@@" <<=setup.getNpcName("npc_technician","first")>> lets out a stereotypical villain laugh as she stands before you and takes hold of each of the iron maiden's doors. "@@.npc_technician;They'll never find you, now, Princess! You're mine forever, ah-hahahahaha!@@"<br>
<br>
You ham it up in kind as you play along with the scene to struggle in vain as the iron maiden closes, plunging you into darkness as the padded lining of your private tomb presses you tight from all sides.<br>
<br>
Seconds tick past as you strain to hear anything outside of your containment, wriggling with excitement in your tight, sensory deprived bondage.<br>
<br>
Some period of time of tightly bound bliss passes before you hear a distant knocking and then a muffled voice. "@@.npc_technician;You ready to surrender, Princess... OOC: you ready for the next round? Not gonna lie, as hot as the idea of this was... not being able to see your pretty face takes a bit of the fun out of it... though maybe it's different for you enjoying all that tight restriction...@@"<br>
<br>
[<<moveTo "event_convention_bondage_4" "You'll never give in to her dastardly seduction!" 600>>]<br>
[<<moveTo "event_convention_bondage_abort" "You want out." 1800>>]
</div>/*#
#desc: cosplay bondage rack use
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Queen Koopa-hime's Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/castle_dungeon.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You assert your determined resistance and <<=setup.getNpcName("npc_technician","first")>> swings open the door of the iron maiden to strike a pose. "@@.npc_technician;Foolish Princess! I have only begun to bend you to my will!@@"<br>
<br>
In a flurry she un-straps you from the iron maiden before leading you to the other side of the artificial dungeon to strap you to a rack. Padded cuffs are locked to your wrists and ankles as she stretches you out, additional straps around your corset-narrowed waist helping hold you in place and leaving your bosom heaving with excitement.<br>
<br>
"@@.npc_technician;Beautiful! Now I can look upon every centimetre of my prize!@@" She moves closer, kissing your neck and nibbling your ear as her hands tease their way up and down your body. "@@.npc_technician;And a prize you are! So delicious and delightful. Certainly I brought you here under duress... but it was only because I was so besotted with unending love for your majesty! Join me! Become my Queen and I promise to treat you like you deserve and desire forevermore...@@"<br>
<br>
A gasp escapes your throat as she turns the crank to stretch you out just a little further. Despite your royal garments you feel exposed, vulnerable, restrained... and aroused.<br>
<br>
[<<moveTo "event_convention_bondage_5" "Yes..." 600>>]<br>
[<<moveTo "event_convention_bondage_abort" "You're done with this for today." 1800>>]
</div>/*#
#desc: cosplay bondage parade
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "armbinder_steel">>
<<wearItem "armbinder_steel" true>>
<<addItem "ankle_cuffs_steel">>
<<wearItem "ankle_cuffs_steel" true>>
<<if !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<addItem "bondage_collar_promo">>
<<wearItem "bondage_collar_promo" true>>
<</if>>
<</if>>
<<set $player.location = "Queen Koopa-hime's Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/castle_dungeon.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
"@@.pc;Y-yes,@@" you whisper as you meet <<=ps(setup.getNpcName("npc_technician","first"))>> seductive stare with a longing glance of your own.<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> tail bounces with delight as she reaches for your restraints... only to snap a set of steel cuffs onto your wrists and ankles even as she takes you down from the rack.<br>
<br>
"@@.npc_technician;I told you I would treat you as you deserve and desire... and we both know that means tight... stringent bondage...@@" She punctuates her words by pulling your arms behind your back, an additional set of cuffs just below your elbow forming a steel armbinder as your <<if $player.body.breastsize[0]>0>>breasts<<else>>chest is<</if>> thrust forward. "@@.npc_technician;Come,@@" she concludes, <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>snapping a leash to your collar<<else>>wrapping a collar around your neck and taking hold of the attached leash<</if>>. "@@.npc_technician;I would parade my prize amongst the peasantry...@@"<br>
<br>
[<<moveTo "event_convention_bondage_6" "It would be my honour, my queen." 1800>>]<br>
[<<moveTo "event_convention_bondage_abort" "This is enough for today..." 1800>>]
</div>/*#
#desc: cosplay bondage leave
#status: RELEASED 0.8.7.0
#ignore_spell: koopa
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "princess_gag">>
<<wearItem "princess_gag" true>>
<<addItem "princess_leash">>
<<wearItem "princess_leash" true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You pledge your loyalty to Queen Koopa-hime and <<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Those were exactly the words I wanted to hear... and just to keep it that way...@@" She presents you with a gag, your lips parting obediently as you kiss the gag once before she pulls it tight past your teeth, fixing your hair around the straps before leaning in for a passionate gag kiss. "@@.npc_technician;Goddess but you are the most beautiful, wonderful thing that has ever happened to me...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> takes hold of your leash and leads you off. Cuffed, hobbled, and gagged you stride out of the photoshoot booth and back onto the floor of the convention centre, a Princess in thrall to her Queen.<br>
<br>
You certainly aren't showing anywhere near as much skin as some of the other cosplayers... but your heavy restraints still draw eyes as <<=setup.getNpcName("npc_technician","first")>> leads you across the floor, your
<<if $player.flags.humiliationStyle == "brazen">>
head held high with pride as you try not to drool too hard past your gag.
<<else>>
heart pounding with embarrassed excitement at each lusty glance.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> takes her time weaving through the hall before finally heading for the exit. You can tell that part of the reason is likely the, for her, steep heels she selected as part of her outfit, and she helps you into a taxi before flopping down next to you in relief.<br>
<br>
"@@.npc_technician;Thank you, my dear, for another wonderful day... it makes me feel a bit bad to cut it here rather than indulge in any more fun... but, alas, this costume is a bit heavier than I anticipated, and I am quite exhausted.@@"<br>
<br>
Still restrained you snuggle up next to her for comfort as you ride back to her flat where she musters her energy to lead you the final distance up the hall before helping you out of your restraints and sending you off with a kiss.<br>
<br>
[<<moveTo "room_student_quarter" "Leave her flat." 300 '<<removeItem "princess_gag" true>><<deleteItem "princess_gag">><<removeItem "princess_leash" true>><<deleteItem "princess_leash">><<removeItem "armbinder_steel" true>><<deleteItem "armbinder_steel">><<removeItem "ankle_cuffs_steel" true>><<deleteItem "ankle_cuffs_steel">><<if setup.checkItemWorn("bondage_collar_promo")>><<removeItem "bondage_collar_promo" true>><<deleteItem "bondage_collar_promo">><</if>><<include "cosplayRemove">>'>>]
</div>/*#
#desc: cosplay cum intro
#status: RELEASED 0.8.7.0
#ignore_spell: bubblecum
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You lean back into your girlfriend and reply that actually some of your chosen drink would just hit the spot...<br>
<br>
"@@.npc_technician;Then by my royal decree... you shall have it!@@" She glances around quickly and then pulls you into what looks to be an empty stall, immediately flipping her dress to one side
<<if $npc_technician.relationship.her_caged>>
to reveal her <<getWordPenis false>> straining within its cage.
<<if $npc_technician.relationship.cage_style == "anal">>
"@@.npc_technician;Your Princess, of course, remains locked per her Queen's decree... though surely if you would deign to finger her prostate I'll be leaking plenty of... nourishment.@@"<br>
<br>
[@@.link_locked;You've made her anal only, it would be quite counterproductive to unlock her just because you're a little thirsty.@@]<br>
<<else>>
"@@.npc_technician;If my Queen would kindly unlock her royal subject so that Princess Bubblecum might make her thirst-sating offering...@@"<br>
<br>
[<<moveTo "event_convention_cum_2" "Time to unlock the flood-gates..." 300 "<<set $scene.abort=false>><<set $scene.unlock=true>>">>]<br>
<</if>>
[<<moveTo "event_convention_cum_2" "Keep her locked, you always did like a slow drip..." 300 "<<set $scene.abort=false>><<set $scene.unlock=false>>">>]
<<else>>
for her hard <<getWordPenis false>> to spring into view. "@@.npc_technician;Please, my Queen... drink thine fill fresh from thine Princess' royale sceptre...@@"<br>
<br>
[<<moveTo "event_convention_cum_2" "Yum..." 300 "<<set $scene.abort=false>><<set $scene.unlock=true>>">>]
<</if>>
[<<moveTo "event_convention_cum_2" "Actually, you think you're done." 300 "<<set $scene.abort=true>>">>]
<<else>>
You reply that you're actually enjoying just wandering the convention hall.<br>
<br>
"@@.npc_technician;Well I guess that's fun, too, come on, then. I think I saw something interesting on the next aisle.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> takes you by the hand and leads off as you follow after.<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay technician cum
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.abort>>
<<applyExperience 'oral' 10 'terrible' $ALONE>>
<<applyExperience 'cum' 13 'normal' $ALONE>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You look nervously around the tenuously-private booth and tell <<=setup.getNpcName("npc_technician","first")>> you changed your mind about all this.<br>
<br>
"@@.npc_technician;Aww, okay,@@" she replies as she fixes her dress. "@@.npc_technician;In that case I, uh... think I could use some distractions... yes, lots of distractions.@@" <<=setup.getNpcName("npc_technician","first")>> takes you by the hand and the two of you head back onto the convention floor.<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<<else>>
<<if $npc_technician.relationship.her_caged && !$scene.unlock>>
You flash a grin as you kneel before <<=setup.getNpcName("npc_technician","first")>> and lick the tip of her cage, gathering up that first drop of pre before you start kissing up and down her imprisoned treasure.<br>
<br>
"@@.npc_technician;You're not going to let me out... are you?@@" She gasps and you shake your head. Your response only turns her on more as she bites her lip and strains even harder in her solid prison. "@@.npc_technician;Of— of— course, my Queen, I remain always your loyal Princess—@@"<br>
<br>
She gasps even louder as you slide your hand up her thigh and begin fingering her quivering rear. "@@.npc_technician;Such pleasures... oh drink of me, my love, quench your undead thirst with whatever I can provide...@@"<br>
<br>
You grin, wrapping your lips around the tip of her cage and teasing with your tongue as you finger her more, twisting tow, then three fingers in her rear as you curl in to press her prostate, every tap of her slut button rewarding you with another few tasty drops of pre until, with a moan of ecstasy, she explodes through her cage, shooting a big, delicious glob of frothy girl-cum directly into your mouth as you gulp eagerly.
<<else>>
You kneel down
<<if $npc_technician.relationship.her_caged>>
and unlock <<=setup.getNpcName("npc_technician","first")>> and she gasps in soft relief, springing forth hard, and with a bead of pre glistening at her tip.
<<else>>
in front of <<=setup.getNpcName("npc_technician","first")>> and asses her gloriously hard <<getWordPenis false>>.
<</if>>
<br><br>
"@@.npc_technician;That what you were thirsty for?@@" She teases and you smile. You spread your lips and lean in, gliding over her tip and maneuvering her past your artificial fangs as you suck softly and enjoy the first taste of her delicious vintage.<br>
<br>
"@@.npc_technician;Drink it all, it's all for-GASP-you, my Queen...@@" She whispers as you lick and suck and make love to her glory.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> moans softly, eyes fluttering in pleasure as she bites her lip and leaves you to your work. "@@.npc_technician;Goddess your lips are a blessing. Suck every drop, my dear... because I'm cumming for you...@@"<br>
<br>
Taking note of the warning you open wide and aim her right at your mouth, a final couple of strokes finishing her off and sending a beautiful ropey arc of cum directly into the roof of your mouth, the salty deliciousness dripping down onto your tongue as you savour it for a moment and then swallow with relish.
<</if>>
<br><br>
"@@.generic_male1;So... uh, should we be taking numbers or... how does this work?@@" You gasp and spin around to see several <<if $options.fem>>women<<else>>people<</if>> standing at the entrance to the booth, some with cocks already in hand.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> glances down at you and grins, "@@.npc_technician;So... is the Vampire Queen still thirsty?@@"<br>
<br>
[<<moveTo "event_convention_cum_3" "Very thirsty..." 600>>]<br>
[<<moveTo "event_convention_cum_abort" "You've drunk your fill." 300>>]
<</if>>
</div>/*#
#desc: cosplay cum abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You gulp and explain that your thirsts are sated. <<=setup.getNpcName("npc_technician","first")>> immediately takes charge, her skirt still spread wide as she stands tall and puts a protective hand on your shoulder. "@@.npc_technician;The Queen commands! Begone, peasants, for you do not wish to witness a Vampire's wrath!@@"<br>
<br>
There's a bit of bickering, but the booth soon clears out and, after helping kiss your face clean, and making an attempt at fixing your makeup, <<=setup.getNpcName("npc_technician","first")>> offers you her arm.<br>
<br>
"@@.npc_technician;Come on, I think that'll do for one day.@@"<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Call it a day." 600>>]
</div>/*#
#desc: cosplay cum: other cum
#status: RELEASED 0.8.7.0
#ignore_spell: bathroy
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<<applyExperience 'bimbofication' 13 'normal' $EXPOSED>>
<<applyExperience 'cum' 13 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
With <<=setup.getNpcName("npc_technician","first")>> supervising things as your "royal consort" you are soon sucking and stroking two at a time and slurping a third as your Princess makes sure her Queen "doesn't go thirsty." <br>
<br>
You gulp and guzzle every shot of sweet semen, timing things out so that, even as you stroke and fluff, every "customer" finishes directly into your mouth for you to swirl your tongue for taste and gulp with glee.<br>
<br>
You're starting to wonder just how many people are queuing up... or how they even knew to find the "Vampire Cum-Queen" when a particularly excited fan shoots <<his>> load prematurely, blasting a shot directly into your face, the entire booth freezing for a moment as the thick jizm trickles down your cheek and everyone waits for your reaction.<br>
<br>
[<<moveTo "event_convention_cum_4" "Bathe me like the Elizabeth Bathroy of cum!" 600>>]<br>
[<<moveTo "event_convention_cum_abort" "You've had your fill." 300>>]
</div>/*#
#desc: cosplay cum bukkake
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'bimbofication' 16 'terrible' $EXPOSED>>
<<applyExperience 'cum' 18 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 16 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You wipe your cheek and lick your finger clean with a grin before whispering "@@.pc;more...@@"<br>
<br>
"@@.npc_technician;You heard the Queen! Shower her with offerings! Make your tribute and cover her in your cum!@@"<br>
<br>
The proverbial floodgates unleashed your blow-bang turns into a full on bukkake session, half a dozen <<if $options.fem>>women<<else>>people<</if>> standing around you at a time, blasting you non-stop as you continue to suck what you can, the sticky, sublime experience streching forth through until you're dripping wet and all your would-be subjects are drained dry.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> stands over you with a smile as she squeezes a final few drops out onto your face of what has to be at least her third time round. "@@.npc_technician;My queen's thirsts are finally quenched?@@"<br>
<br>
You lick your lips and grin as she helps you back to your feet, taking a few minutes to somewhat clean you up before the two of you slip out the back and hurry for the convention exit.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Continue." 600>>]
</div>/*#
#desc: cosplay cum princess intro
#status: RELEASED 0.8.7.0
#ignore_spell: ulent
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<<set $scene.removeCage = false>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_technician","first")>> whispering in your ear sends a shiver down your spine as you reflexively agree<<if !$player.body_ref.penis>>, only to remember that, name aside, you aren't exactly "equipped" to produce that which your cum-vampire queen craves<<elseif $player.body_ref.penis && $player.body_ref.cumProduction > 0>><<else>>only to remember that, name aside, you no longer produce the creamy goodness your cum-vampire queen craves<</if>>.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
"@@.npc_technician;And don't worry about sourcing, I produce plenty... I just need a bit of your suck-ulent, sweet assistance in helping me... recycle...@@"
<</if>>
<<=setup.getNpcName("npc_technician","first")>> leads you off the convention floor, quickly finding an empty conference room that the two of you duck inside.
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
"@@.npc_technician;So...@@" she whispers, as she reaches under your skirt to take hold of your <<getWordMyPenis>>. "@@.npc_technician;You ready to quench your Queen's thirst... or would you rather help her... recycle?@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if (setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder)>>
[<<moveTo "event_convention_cum_princess_2_suck_you" "Let her unlock you and drink her fill." 300>>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is securely locked away.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_convention_cum_princess_2_suck_you" "Let her drink her fill." 300>>]<br>
<</if>>
<<else>>
<<=setup.getNpcName("npc_technician","first")>> grinds against you.
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Well, Princess? Unlock your Queen and commence... tapping the royal reservoir...@@"
<br>
<<else>>
"@@.npc_technician;Well, Princess? It isn't quite so long that I can suck it myself... so lend your Queen your lips and share in her bounty...@@"
<</if>>
<br><br>
<</if>>
<<if $npc_technician.relationship.her_caged>>
<<if $npc_technician.relationship.cage_style == "anal">>
[@@.link_locked;You've made her anal only, it would be quite counterproductive to unlock her just because she's a little thirsty.@@]<br>
<<else>>
[<<moveTo "event_convention_cum_princess_2_suck_her" "Time to unlock her royal reserves..." 300 "<<set $scene.abort=false>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_convention_cum_princess_2_suck_her" "Time to help her recycle..." 300>>]<br>
<</if>>
[<<moveTo "event_convention_cum_princess_2_suck_her" "Actually, you don't think you're up for this today." 300 "<<set $scene.abort=true>>">>]
<<else>>
You reply that you're actually enjoying just wandering the convention hall.<br>
<br>
"@@.npc_technician;Well I guess that's fun, too, come on, then. I think I saw something interesting on the next aisle.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> takes you by the hand and leads off as you follow after.<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay cum princess: technician sucks you
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<changeHorny 50>>
<<set $scene.suck_you = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You tremble and whisper your assent. <<=setup.getNpcName("npc_technician","first")>> gives you another kiss on the neck, with just a hint of nibbling of her artificial fangs before she slides to her knees and ducks under your skirt. You feel her hands running up your thighs
<<if $scene.removeCage>>
before she unlocks your chastity <<if $scene.isCage>>cage<<else>>belt<</if>> and wraps
<<else>>
and then
<</if>>
her lips around your <<getWordMyPenis>>.<br>
<br>
"@@.npc_technician;My favourite flavour...@@" she moans in between sucks.<br>
<br>
You gasp, knees trembling as you lean back against a nearby table for support. Your skirts bounce with every eager bob of your Queen-<<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral' ''>>girlfriend's<<case "sub">>slave's<</switch>>... head as she passionately and skillfully sucks away between your legs.<br>
<br>
"@@.npc_technician;Yes. <<if $player.body_ref.balls>>Drain these balls and<<else>>Feed<</if>> your Queen...@@" she gasps as she gives you a bit of a squeeze, sucking you deep as her tongue dances.<br>
<br>
Your breaths are coming in pants thanks to her exquisite skills and, with a final slurp she draws forth your orgasm
<<switch $player.body_ref.cumProduction>>
<<case 1>>
and you cum into her mouth.
<<case 2>>
and you unload a massive, torrential load into her mouth.
<<default>>
ERROR: unexpected cum production <<=$player.body_ref.cumProduction>>
<</switch>>
<br><br>
She leans back, popping back into view from under your skirt as she strokes your softening <<getWordMyPenis>> with one hand and shows off her "prize" gargling and swishing her tongue around for a moment before gulping and grinning.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> licks her lips as you start to catch your breath, only to freeze as you hear a sound from the direction of the door.<br>
<br>
[<<moveTo "event_convention_cum_princess_3" "What?" 180>>]
</div>/*#
#desc: cosplay cum princess: you suck technician
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.abort>>
<<applyExperience 'oral' $npc_technician.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<<set $scene.suck_you = false>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You suddenly feel exposed in the conference room, afraid that someone might walk in at any moment as you tell <<=setup.getNpcName("npc_technician","first")>> that you don't want to do this.<br>
<br>
She smiles and winks playfully. "@@.npc_technician;Whatever you say... Princess. Come on, let's head back to the convention floor.@@"<br>
<br>
[<<moveTo "event_cosplay_root" "Follow her out of the room." 600>>]
<<else>>
You drop to your knees and unzip your Queen's tight jeans,
<<if $npc_technician.relationship.her_caged>>
taking a moment to admire her locked prize before un-caging your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>> with a wink.
<</if>>
she springs forth, hard and dripping.<br>
<br>
"@@.npc_technician;I'm as thirsty as I am pent up, start licking, Princess, I want to pump you full and then kiss every drop from your lips...@@"<br>
<br>
Faced with such a delectable and heavenly smelling <<getWordPenis false>> you don't have to be told twice, eagerly swallowing hard, but definitely not glittering, <<getWordPenis false>>.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> starts breathing harder and you know it won't be long. She looks down at you with a grin, licking her artificial fangs in anticipation. "@@.npc_technician;Remember, don't swallow. Your queen needs her sustenance.@@"<br>
<br>
Still sucking, you nod, and a moment later <<=setup.getNpcName("npc_technician","first")>> cums, shooting a large, if delicate in texture, load into your mouth, and then pulling you back to your feet for a passionate kiss. She <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>holds you by the collar and<<else>>pulls you in tight, her hand on the back of your head as<</if>> her tongue eagerly pushes past your lips and she slurps up your mouth-full of her seed.<br>
<br>
"@@.npc_technician;Delicious... and your sweet taste on top...@@" She grins, "@@.npc_technician;I want more...@@" She purrs as she guides you back down to your knees, her <<getWordPenis false>> already twitching despite its recent climax... when you hear a sound coming from the door to the room.<br>
<br>
[<<moveTo "event_convention_cum_princess_3" "What?" 180>>]
<</if>>
</div>/*#
#desc: cosplay cum princess: someone else shows up
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.suck_you>>
With <<=setup.getNpcName("npc_technician","first")>> still kneeling on front of you,
<<else>>
Still kneeling in front of <<=setup.getNpcName("npc_technician","first")>> you,
<</if>>
you both look up to see someone in a convention organisation uniform walk in to look at you with surprise.<br>
<br>
"@@.generic_male1;What are you doing-, we need this room for a panel!@@" The flabbergasted organiser states, looking even more embarrassed at the whole thing as you are as two <<if $options.fem>>women<<else>>more people — a man and a woman<</if>> step around them and into view.<br>
<br>
"@@.generic_female1;Aww, they're just having a bit of fun — nice cosplay, by the way!@@" They state in a strangely familiar voice.<br>
<br>
In contrast to the slightly weedy organiser these two new people are a picture of contrast — the one who spoke a broad shouldered brick wall of a woman, the other a petite <<man>> less than a third of their size.<br>
<br>
"@@.generic_male2;Yeah, they were just having fun,@@" the other one states, the sense of familiarity itching at you only for it all to click for you and <<=setup.getNpcName("npc_technician","first")>> at the same time.<br>
<br>
"@@.npc_technician;Wait — you're <<if $options.fem>><<=setup.getNpcName("generic_female2","custom", "Kenzie Tammy")>><<else>><<=setup.getNpcName("generic_male1","custom", "Ken Tommy")>><</if>> and <<=setup.getNpcName("generic_female1","custom", "Mary Slamhonda")>>! You voiced the Frozen Sovereign and the, well... me!@@"<br>
<br>
The large woman chuckles, her voice light and delicate in startling contrast to her physical size. "@@.generic_female1;Always wonderful to meet a fan! Yes, we've voiced them and so much more, thus, well... the panel that we really need to be getting ready for. We hate to intrude on your passionate, and canonical, as far as I'm concerned, fun but...@@"<br>
<br>
Finally recovering their composure the convention organiser steps in. "@@.generic_male1;Yes, so... we have a panel scheduled and we can't have you sucking cock in public in the middle of of it!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> gets a sly look on her face... "@@.npc_technician;In public, you say...@@" She glances over at the table at the front of the room clearly meant to host the two voice actors, and its long, concealing tablecloth. "@@.npc_technician;We're both really big fans and, well... if this isn't too forward... we'd be happy to show our appreciation and help you relax during the panel... isn't that right Princess?@@" <<=setup.getNpcName("npc_technician","first")>> glances at you as the organiser blushes anew and the two voice actors smile in amusement.<br>
<br>
[<<moveTo "event_convention_cum_princess_4" "Of course!" 1800 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_convention_cum_princess_4" "You really should let them focus on the panel." 3600 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: cosplay cum princess: suck or watch panel
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.abort>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<else>>
<<applyExperience 'penis' 15 'terrible' $INCOGNITO>>
<<applyExperience 'oral' 18 'terrible' $INCOGNITO>>
<<applyExperience 'cum' 13 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 16 'terrible' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You reply that you're actually really interested in hearing the panel. The cosplays seem amused, while the organiser appears relieved, re-focusing on their all-important schedule as you and <<=setup.getNpcName("npc_technician","first")>> take a seat in the front row and wait for things to get started.<br>
<br>
As more guests file in you find yourself thinking about what it would have been like if you'd played things the other way, hidden under the table showing "artist appreciation" while they answered questions in an audience that has to be close to a hundred strong.<br>
<br>
Once the panel begins you are finally able to distract yourself from such thoughts, and it turns out that the two voice actors are even more entertaining live than they are in their many hit roles — though they certainly show off their skills over the course of the panel. In the end it's the same convention organiser that ties a bow on things, bringing the lively panel to an end as they hurry to shuffle people out of the room in preparation for the next event.<br>
<br>
"@@.npc_technician;Well that was fun!@@" <<=setup.getNpcName("npc_technician","first")>> says with a genuine smile as the two of you slip out the back and head off.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Head out." 600>>]
<<else>>
To the slightly exasperated frustration of the convention organiser <<if $options.fem>><<=setup.getNpcName("generic_female2","custom", "Kenzie Tammy")>><<else>><<=setup.getNpcName("generic_male1","custom", "Ken Tommy")>><</if>> and <<=setup.getNpcName("generic_female1","custom", "Mary Slamhonda")>> accept your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral' ''>>girlfriend's<<case "sub">>slave's<</switch>> offer and the two of you are soon tucked up under the table as zippers are pulled down in unison.<br>
<br>
If you thought you might have the simpler job servicing the short and slender <<if $options.fem>><<=setup.getNpcName("generic_female2","custom", "Kenzie Tammy")>><<else>><<=setup.getNpcName("generic_male1","custom", "Ken Tommy")>><</if>> you quickly learn otherwise. Under their casual jeans they're hiding a thong whose elastic is putting in a real hero's effort, the panties pulled aside to reveal a monster <<if $fetish.bestiality_soft>>— literally, a purple, frilled thing out of fantasy with a thick knot at the base,<</if>> of such length and girth you wonder how its owner doesn't pass out from the erection.<br>
<br>
You take a moment merely to admire the mammoth magnificence before you, noting out of the corner of your eye that <<=setup.getNpcName("npc_technician","first")>> is already at work, head bobbing between <<=ps(setup.getNpcName("generic_female1","custom", "Mary Slamhonda"))>> muscular thighs as she shows some "artist appreciation" to a respectably large... though not to the degree you're facing down, member.<br>
<br>
You take a deep breath and get to work, mindful that you should pace yourself for the full duration of the panel as you double fist the giant cock and start licking.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You show off your skill, easily deep-throating the cock in front of you and sucking it to the root with every eager head-bob.
<<else>>
Even your prodigious skill is insufficient to actually swallow such a monster, but you alternate licking with enthusiasm and passionately suckling at its large tip.
<</if>>
<<else>>
You have not a hope of swallowing a member of such size and girth, but there is certainly plenty throbbing dripping <<getWordPenis false>> for you to lick and kiss and worship.
<</if>>
<br><br>
You catch bits and pieces of the panel proper, the two voice actors showing off quite impressive self-control as they answer questions and pull out some of their famous roles without a hint of what's going on under the table. The closest they come to breaking composure is when one or the other cums, which they each do several times. As you or <<=setup.getNpcName("npc_technician","first")>> gulp down large, thick, delicious loads they just pass off the question to the other, the crack in their voice at the start of their orgasm surely unnoticeable to anyone but your self.<br>
<br>
[<<moveTo "event_convention_cum_princess_5" "Continue." 1800>>]
<</if>>
</div>/*#
#desc: cosplay cum princess: suck or watch panel
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
Just as before your "fun" is brought to an end by the same convention organiser bringing the panel to a close. After a brief signing follow-up you hear the sounds of the crowd die down, the artists finally seeming spent as they slide their chairs back and help you to your feet.<br>
<br>
"@@.generic_female1;Gotta say — we may make money off our voices, but you two have professional level oral abilities as well!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins, replying that <<=setup.getNpcName("generic_female1","custom", "Mary Slamhonda")>> "@@.npc_technician;tastes as good as she sounds.@@"<br>
<br>
Even the somewhat exasperated convention organiser laughs along at that quip, as <<=setup.getNpcName("generic_female1","custom", "Mary Slamhonda")>> and <<if $options.fem>><<=setup.getNpcName("generic_female2","custom", "Kenzie Tammy")>><<else>><<=setup.getNpcName("generic_male1","custom", "Ken Tommy")>><</if>> treat you and <<=setup.getNpcName("npc_technician","first")>> to some swag, signatures, and a photoshoot before you're finally pushed out of the room to make way for the next event.<br>
<br>
With satisfied grins, and full bellies, you and <<=setup.getNpcName("npc_technician","first")>> leave for the exit.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Call it a day." 600>>]
</div>/*#
#desc: cosplay humiliation intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_stage.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You follow <<=setup.getNpcName("npc_technician","first")>> around to the side of the stage where there's a queue of singers waiting their turn. Fortunately the line isn't too long and, after a couple numbers you're up to the front. You watch from stage-side the act before you put on a by a VERY buxom cosplayer. Amidst the excited cheers for her performance of a sexy pop classic a <<man>> yells out "@@.generic_male1;show us your tits!@@" The woman hurries off the stage in a huff as <<=setup.getNpcName("npc_technician","first")>> looks at you with a hungry grin before leaning in to whisper something.<br>
<br>
"@@.npc_technician;So... my sexy humiliation slut... how do you feel about giving the audience a bit more of... what they want?@@"<br>
<br>
Her tone, and the feel of her breath on your neck has you a bit weak in the knees as you consider your answer.<br>
<br>
[<<moveTo "event_convention_humiliation_2" "You're hers to embarrass..." 300 "<<set $scene.humil=true>>">>]<br>
<<if setup.getTotalValue("humiliation") > 15>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_convention_humiliation_2" "Muster your will and say no." 600 "<<set $scene.humil=false>><<spendWillpower 1>>">>] <<hint $options "Resisting such a proposal will cost willpower">><br>
<<else>>
[@@.link_locked;You lack the mental reserves to resist such a potentially humiliating proposal.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_convention_humiliation_2" "No..." 600 "<<set $scene.humil=false>>">>]<br>
<</if>>
[<<moveTo "event_convention_humiliation_1" "Actually, you'd rather just go back to the convention." 180 "<<set $scene.accept=false>>">>]
<<else>>
You shake your head and pull away from the stage.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> playfully smirks at you. "@@.npc_technician;Aww... stage fright? I bet your singing voice is as lovely as the rest of you!... some other time, maybe.@@"<br>
<br>
The two of you leave the stage behind.<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay humiliation abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You flee the stage, weaving through the crowd and bolting for an exit, outside for a bare moment before <<=setup.getNpcName("npc_technician","first")>> catches up to you with a look of concern.<br>
<br>
"@@.npc_technician;You okay? I didn't mean to push you that far out of your comfort zone, but I thought you were okay with—@@"<br>
<br>
You shut her up by leaping in for a hug, holding her tight as you apologise for disappointing her.<br>
<br>
"@@.npc_technician;Shhh, shhh, you're never a disappointment, only a delight. Now come on, I think we're both a bit tired, let's head home.@@"<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "She pulls out her phone to summon an auto-cab." 600>>]
</div>/*#
#desc: cosplay humiliation - sing
#status: RELEASED 0.8.7.0
#ignore_spell: yanu,rikky
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_stage.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.humil>>
You shudder and nod as <<=setup.getNpcName("npc_technician","first")>> takes you by the wrist, a microphone suddenly in your other hand as your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> drags you onto the stage.
<<else>>
You shake your head and <<=setup.getNpcName("npc_technician","first")>> gives you a quick kiss on the neck. "@@.npc_technician;Some other time, maybe. A simple show is adventure enough.@@" She gently takes you by the hand as you head onto the stage, a microphone appearing in your other hand in passing.
<</if>>
<br><br>
"@@.generic_female1;And now, singing the song "Authentic Feelings," we've got, all the way from the realm of Spiro... Rikky and Yanu!@@"<br>
<br>
The audience cheers as <<=setup.getNpcName("npc_technician","first")>> vamps for the crowd and the music kicks in.<br>
<br>
The song a lively, poppy duet <<=setup.getNpcName("npc_technician","first")>> kicks things off, and you find yourself quickly caught up in the action as you don't just sing, but
<<if setup.getTotalValue("dexterity") > 10>>
dance back and forth across the stage,
<<if setup.getTotalValue("dexterity") > 15>>
your robe swishing as you almost float through the air, your agility drawing gasps and applause from the audience even as you never miss a beat of your part.
<<else>>
gracefully leaping and twisting about in between verses.
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
dance... if a bit awkwardly,
<<else>>
dance... well, maybe more like stumble,
<</if>>
back and forth across the stage while you keep up with the words on screen.
<</if>>
<br><br>
Your heart races with excitement as the song hits a dramatic high-note conclusion that sees the two of you standing together centre stage, arms spread as the crowd cheers.<br>
<br>
[<<moveTo "event_convention_humiliation_3" "Continue." 300>>]
</div>/*#
#desc: cosplay humiliation - wardrobe malfunction
#status: RELEASED 0.8.7.0
#ignore_spell: yanu
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.humil>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<<changeHorny 50>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_stage.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.humil>>
You bow and then, with a sideward glance <<=setup.getNpcName("npc_technician","first")>> winks... and then pulls off your top, a "wardrobe malfunction" that has your <<if $player.body.breastsize[0]>0>>breasts<<else>>chest<</if>> suddenly on display to the world.<br>
<br>
The crowd cheers even louder, and you swear you can recognise the "show us your tits" <<guy>> howling the loudest.<br>
<br>
<<if $player.body.breastsize[0]==0>>
<<printThought "I guess flat IS beautiful!">><br>
<br>
<</if>>
<<=setup.getNpcName("npc_technician","first")>> shouts into the mic as you stand momentarily stunned, as embarrassed as you are aroused. "@@.npc_technician;If you like that, how about this — hey, Yanu, how about you crawl on over here and suck my cock like a good summoner<<if $fetish.cum>>... or is that cum-on-her<</if>>? Hmm? Summon up a skirt titan and suck it dry?@@"<br>
<br>
You can feel every eye in the crowd burning into you as they wait to see if you'll do what she said...<br>
<br>
<<if setup.getTotalValue("humiliation") > 15 || setup.getTotalValue("submission") > 15>>
[<<moveTo "event_convention_humiliation_4" "Succumb to the scandalous proposal." 300 "<<set $scene.humil=true>>">>]<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_convention_humiliation_abort" "Force yourself to pass up this opportunity and flee the stage." 600 "<<spendWillpower 1>>">>] <<hint $options "Resisting such a proposal will cost willpower">><br>
<<else>>
[@@.link_locked;You lack the mental reserves to resist such an enticingly scandalous proposal.@@]<br>
<</if>>
<<else>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_convention_humiliation_4" "Force yourself past your embarrassment to do what she says." 600 "<<spendWillpower 1>>">>] <<hint $options "Resisting such a proposal will cost willpower">><br>
<<else>>
[@@.link_locked;Flashing your tits was one thing... but you can't do any more.@@]<br>
<</if>>
[<<moveTo "event_convention_humiliation_abort" "Flee the stage." 600>>]<br>
<</if>>
<<else>>
The two of you bow and then skip off the stage for the next act, <<=setup.getNpcName("npc_technician","first")>> pulling you in for an excited hug. "@@.npc_technician;You did great! But... tell you the truth, that much attention, I'm feeling a bit tuckered out. How about we head on home? We can always come back for the rest of the con some other week.@@"<br>
<br>
[<<moveTo "event_convention_humiliation_abort" "She pulls out her phone to summon an auto-cab." 600>>]
<</if>>
</div>/*#
#desc: cosplay humiliation - public sex
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Convention Centre Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_stage.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You drop to your knees as the crowd howls even louder, <<=setup.getNpcName("npc_technician","first")>> taking firm hold of your hair as she grins down at you.
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Polish it with your tongue, slut,@@"
<<else>>
"@@.npc_technician;Suck it, beautiful,@@"
<</if>>
she whispers into the mic as you pull her short skirt out of the way to reveal her
<<if $npc_technician.relationship.her_caged>>
gleaming cage.
<<else>>
glorious girl-cock.
<</if>>
Out of the corner of your eye you can see people holding up phones, the flashes providing glittering illumination for those filming the depravity as your lips part and you lean forward.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
Even caged, <<=setup.getNpcName("npc_technician","first")>> shudders with arousal as you lick and kiss, your hands roaming over her thighs as she humps your face and the crowd howls. In spite of — or perhaps egged on — by the audience you pull out all the stops as you lick and kiss and grope until <<=ps(setup.getNpcName("npc_technician","first"))>> knees tremble and she <<if $fetish.cum>>cums inside her cage... as you are there to lick up every drop<<else>>hands-free climaxes, shuddering within her prison<</if>>.
<<else>>
<<=ps(setup.getNpcName("npc_technician","first"))>> big <<getWordPenis "npc_technician">>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
gliding all the way down your throat.
<<else>>
forcing its way down your throat.
<</if>>
<<else>>
half-crammed down your throat.
<</if>>
You moan as your head thrusts forward and back, the crowd chanting in time as <<=setup.getNpcName("npc_technician","first")>> fucks your face
<<if $fetish.cum>>
until she's right on the edge, pulling you off and stiff-arming you as her cock spits thick girl-cream all over your face.
<<else>>
until, grabbing your hair for a double-fisted pull, she pulls you all the way down for her groaning climax.
<</if>>
<</if>>
<br><br>
You try to catch your breath as you notice security finally showing up, though struggling to ford their way through the excited crowd.<br>
<br>
[<<moveTo "event_convention_humiliation_5" "Time to make your escape..." 600>>]
</div>/*#
#desc: cosplay humiliation leave
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_stage.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Time to go...@@" <<=setup.getNpcName("npc_technician","first")>> notes as she helps you to your feet and the two of you go sprinting away, weaving through the general convention crowds to lead security on a merry little chase before ducking out a side exit to a waiting auto-cab.<br>
<br>
"@@.npc_technician;Another successful mission!@@"<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Continue." 600>>]
</div>/*#
#desc: cosplay makeup intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> follows signs to the registration booth for the competition where a friendly volunteer explains the rules.<br>
<br>
"@@.generic_female1;You're interested in participating? Great! So the way it works is it's three rounds of competition — you provide your own model, then make them up to the style specified. After all three rounds you'll be judged by our panel of experts and prizes awarded accordingly. Note that the whole thing is being recorded for a new streaming show, so if you manage to do well enough you might get a call back to compete for real! Well... in a year or so when we're ready to start filming the next season. So if you're still interested, if I could have you sign here?@@"<br>
<br>
[<<moveTo "event_convention_makeup_2" "Let's do it!" 600>>]<br>
[<<moveTo "event_convention_makeup_abort" "Eh, maybe not." 60>>]
</div>/*#
#desc: cosplay makeup abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayMakeup=true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You decide to give up on the cosplay contest for today. You and <<=setup.getNpcName("npc_technician","first")>> head back to convention floor.<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
</div>/*#
#desc: cosplay makeup round intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayMakeup=true>>
<<set $scene.score = 0>>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_smock")>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You sign the paperwork and head for a private booth where <<=setup.getNpcName("npc_technician","first")>> takes a seat and you gawk at the largest makeup selection you've ever seen.<br>
<br>
"@@.npc_technician;Focus, <<if $npc_technician.relationship.her_role == 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<else>>babe<</if>>, you got this!@@" <<=setup.getNpcName("npc_technician","first")>> notes with an encouraging smile as she puts her costume to one side for safety and pulls on a protective smock as a screen lists out instructions.<br>
<br>
"@@.computer;For your first round of competition, you are to make up your subject as one of the undead — a brain-eating zombie!@@"<br>
<br>
"@@.npc_technician;Mmmm, I'd eat your... brains...@@" <<=setup.getNpcName("npc_technician","first")>> states with a wink as she waits for you to get to work.<br>
<br>
[<<moveTo "event_convention_makeup_3" "Time for something grotesque..." 600>>]<br>
[<<moveTo "event_convention_makeup_abort" "Eh, maybe not." 60>>]
</div>/*#
#desc: cosplay makeup round 1 — zombie
#status: RELEASED 0.8.7.0
#ignore_spell: grr,urrgghhh,braaaaains,shoujo
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayMakeup=true>>
<<applyExperience 'makeup' 15 'terrible' $SEEN_FRIEND>>
<<if setup.getTotalValue("makeup") > 15>>
<<set $scene.score += 1>>
<</if>>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_zombie")>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("makeup") > 10>>
<<if setup.getTotalValue("makeup") > 15>>
Whatever experience you lack when it comes to latex prosthetics you more than make up for with your understanding of the human face and how best to highlight and accentuate it. Working fast, but precisely you swiftly turn your grinning girlfriend from a smiling moviestar to a grotesque monster straight out of a horror movie.
<<else>>
You don't exactly have the most experience with latex prosthetics, but you find some gnarly looking fake scars and fiddle with greens and greys you wouldn't normally use until have have something suitably horrific.
<</if>>
<<else>>
<<if setup.getTotalValue("makeup") > 5>>
You're a bit stumped at prospect of using makeup to make someone look worse, rather than better, but you manage to find a suitably nauseating shade of green and set to work transforming your normally lovely girlfriend into a scary flesh-eating monster.
<<else>>
You're a bit lost aiming for something other than standard human beauty standards... but you chug away with greens and greys and even an attempt to use a latex fake scar... though you aren't really able to blend things together and it's peeling a bit at the edges.
<</if>>
<</if>>
<br><br>
A timer runs down as you work and, as the buzzer marks time you step away for a camera to zoom in on <<=setup.getNpcName("npc_technician","first")>> as she makes faces and goes, "@@.npc_technician;grr! Urrgghhh! Braaaaains...@@"<br>
<br>
The screen notifies you that scoring is complete — though you won't get your totals until the end.<br>
<br>
"@@.computer;For your next challenge we want you to bring classic anime style to life — big eyes, small mouth! Show us your take on some sweet shoujo style!@@"<br>
<br>
[<<moveTo "event_convention_makeup_4" "Time for something kawaii..." 600>>]<br>
[<<moveTo "event_convention_makeup_abort" "Eh, maybe not." 60>>]
</div>/*#
#desc: cosplay makeup round 2 — Anime
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'makeup' 18 'terrible' $SEEN_FRIEND>>
<<if setup.getTotalValue("makeup") >= 19>>
<<set $scene.score += 1>>
<</if>>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_anime")>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
After swiftly cleaning off your previous effort,
<<if setup.getTotalValue("makeup") > 10>>
<<if setup.getTotalValue("makeup") >= 18>>
you smoothly move into somewhat more familiar territory, starting with a nice heavy foundation to smooth her features and continuing on to make her eyes pop and give her the perfect beauty of a cute anime protagonist.
<<elseif setup.getTotalValue("makeup") > 15>>
you set to work at nailing peak cute... and get close, though there's just something a little nagging. While <<=setup.getNpcName("npc_technician","first")>> certainly looks adorable... she maybe looks a little too "realistic" for what you think the goal was.
<<else>>
you start in on transforming you lovely girlfriend into an anime protagonist. By the time you run out of time you feel like you've found the correct direction — emphasis on the eyes, smoothed out features... but that jump to "unreality" without hitting the uncanny valley is a nut you haven't managed to crack.
<</if>>
<<else>>
Adopting such an "unrealistic" style is a bit beyond your skills. You manage to do a decent, if subtle, job of making <<=setup.getNpcName("npc_technician","first")>> up... but if you didn't already know the prompt you'd struggle to really justify it as "anime" inspired.
<</if>>
<br><br>
The timer signals the end once more and you step back for <<=setup.getNpcName("npc_technician","first")>> to pose for the camera.<br>
<br>
The screen notifies you that scoring is complete — though you won't get your totals until the end.<br>
<br>
"@@.computer;For your final challenge we want you to think outside the box... and go all the way off-planet to show us an alien star princess!@@"<br>
<br>
Another round of makeup remover and it's time to start the final round.<br>
<br>
[<<moveTo "event_convention_makeup_5" "Time for something fantastic..." 600>>]<br>
[<<moveTo "event_convention_makeup_abort" "Eh, maybe not." 60>>]
</div>/*#
#desc: cosplay makeup round 3 — Star Princess
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'makeup' 20 'terrible' $SEEN_FRIEND>>
<<if setup.getTotalValue("makeup") >= 19>>
<<set $scene.score += 1>>
<</if>>
<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_alien")>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("makeup") > 10>>
<<if setup.getTotalValue("makeup") >= 19>>
You're feeling even more confident as you begin what will be you final "masterpiece." You start by giving <<=setup.getNpcName("npc_technician","first")>> a set of artificial ears and an inhuman — but not in the zombie way, hue. Drawing out her features you finish it all off with artificial contacts to have yourself a beautiful alien princess, ready to take her royal place upon some otherworldly throne.
<<elseif setup.getTotalValue("makeup") > 15>>
You take a deep breath and take your shot at this final challenge. Working with a mix of shades that you wouldn't normally use for anything but eyeshadow or highlights you put together something that balances looking alien with still allowing the subject's — ie your girlfriend's — beauty to shine through.
<<else>>
This final challenge is quite that, but you do your best, coming up with something that wouldn't look too out of place as some planetary princess in an old 70's sci-fi show... though you suppose some might say that lacks a bit on the "alien" front.
<</if>>
<<else>>
You've been struggling the whole time but this? You're at a loss, finally throwing something together that might have been passable for a budget 60's piece of sci-fi schlock... assuming they were still filming in black and white.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> hams things up for the camera even further as she royally poses, but then it's time to clean her up a final time and wait for your scores...<br>
<br>
<<if $scene.score >= 3>>
[<<moveTo "event_convention_makeup_6_win" "Time to see how you did..." 300>>]
<<else>>
[<<moveTo "event_convention_makeup_6_lose" "Time to see how you did..." 300>>]
<</if>>
</div>/*#
#desc: cosplay makeup winner
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "makeup" "online_makeup" "final">>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
"@@.computer;CONGRATULATIONS!@@" The screen beams before the attendant who signed you up for the competition steps into the booth with grin.<br>
<br>
"@@.generic_female1;Great job! You're a real artist! Your zombie? Terrifying. Anime? ADORABLE. And that Star Princess!@@" The woman bows theatrically. "@@.generic_female1;Command me, my queen!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> beams and pulls you in for a kiss before re-assembling her costume.<br>
<br>
The jubilant woman has you go over the paperwork a final time before thanking you again. "@@.generic_female1;As I said at the start, your victory puts you in the running for a spot on the show... but we won't be doing casting for that until next year so just... enjoy your life and who knows, maybe you'll hear from us down the line!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> tries to patch up her original makeup but finally shakes her head, "@@.npc_technician;a victory for you... but I think an end to the cosplay for me, let's head on home, eh?@@"<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600 '<<set $scene.technician_img = setup.charImage("npc_technician","npc_technician_casual")>>'>>]
</div>/*#
#desc: cosplay makeup winner
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'makeup' 20 'skip' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You wait for the results... which
<<switch $scene.score>>
<<case 0>>
are as dismal as you were expecting, the judges liking none of your efforts.
<<case 1>>
are... less than great. You managed to nail the zombie look, but after that your results just weren't up to snuff.
<<case 2>>
start out encouraging, but end on a bit of a downer as it seems your "Alien Star Princess" was not quite good enough.
<<default>>
ERROR: unexpected scene.score <<=$scene.score>>
<</switch>>
<<=setup.getNpcName("npc_technician","first")>> is there to comfort you as you sigh. Despite it all, the judge's feedback is actually quite informative, and you think you'll have a better shot next time.<br>
<br>
With <<=ps(setup.getNpcName("npc_technician","first"))>> original costume makeup long gone the two of you decide to call it a day.<br>
<br>
"@@.npc_technician;You'll get 'em next time.@@" She states by way of encouragement as you walk through the convention hall. "@@.npc_technician;Remember, it wasn't so long ago that you didn't know a thing about makeup! You've come this far, it's just a matter of a bit more practice...@@"<br>
<br>
<<printThought "Yeah! I mean, thinking of it, I already have some ideas for doing better next time...">><br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600>>]
</div>/*#
#desc: cosplay penis spot foes
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" setup.charImage("npc_technician",$scene.technician_img)>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_technician","first")>> notices the "situation" at the same time you do and quickly yanks you back behind some nearby crates.<br>
<br>
"@@.npc_technician;Whew!@@" She notes, peeking out around your cover. "@@.npc_technician;Looks like they didn't see us...@@" Pulling out her phone she uses it like a periscope, zooming in tight between <<if $scene.female>>Cindera's<<else>>Cinder's<</if>> legs where quite the substantial bulge is visible. You hear the soft sound of her taking a picture and her breathing just a little bit heavier as she pulls back into hiding. "@@.npc_technician;See? They've got some real monsters with them, we have to make a play for it... but we'll never get close enough without some sort of disguise...@@"<br>
<br>
She looks around, to find that you're actually crouched right next to one of the convention's many cosplay accessory vendors. "@@.npc_technician;Perfect!@@" She states, snatching a comically oversized handlebar mustache. "@@.npc_technician;They'll never see us coming, quick, grab something!@@"<br>
<br>
[<<moveTo "event_convention_penis_2" "She's right, they'll never see past a fake beard!" 300 "<<set $scene.accept=true>><<set $scene.beard=true>>">>]<br>
[<<moveTo "event_convention_penis_2" "Some oversized sunglasses are more your jam." 300 "<<set $scene.accept=true>><<set $scene.beard=false>>">>]<br>
[<<moveTo "event_convention_penis_2" "You'll pass on capers today." 600 "<<set $scene.accept=false>>">>]
<<else>>
You shake your head, pointing out that the only cock you need is <<=ps(setup.getNpcName("npc_technician","first"))>>. "@@.npc_technician;Aww... aren't you the charmer! I guess I can't argue with that, come on, let's go do something else...@@"<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay penis abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.beard>>
<<removeItem "cosplay_beard" true>>
<<deleteItem "cosplay_beard">>
<<else>>
<<removeItem "large_sunglasses" true>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" "npc_technician_rocket.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> that you aren't interested in playing this out any further and she quickly shuffles you away, the two of you taking a moment to ditch your disguises before calling it a day and heading for the exit.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600>>]
</div>/*#
#desc: cosplay penis: disguises
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.technician_img = "npc_technician_rocket_mustache">>
<<if $scene.beard>>
<<addItem "cosplay_beard">>
<<wearItem "cosplay_beard" true>>
<<else>>
<<addItem "large_sunglasses">>
<<wearItem "large_sunglasses" true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" setup.charImage("npc_technician",$scene.technician_img)>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $scene.beard>>
You select a large, bushy beard and <<=setup.getNpcName("npc_technician","first")>> quickly pays for things, the two of you soon emerging from the booth with your new facial hair —
<<else>>
You select a pair of oversized sunglasses while <<=setup.getNpcName("npc_technician","first")>> pays for things and attaches her fake mustache, the two of you briefly checking a mirror to confirm that you're
<</if>>
"totally unrecognisable" as Jess and Jim, after all, would people be staring if they knew you were elite agents of Missile Troupe?<br>
<br>
"@@.npc_technician;With these disguises we'll be able to walk right up to those dim-witted do-gooders unsuspected.@@" <<=setup.getNpcName("npc_technician","first")>> explains as the two of you hurry back to re-acquire your quarry and head in...<br>
<br>
[<<moveTo "event_convention_penis_3" "Go Missile Troupe!" 300>>]<br>
[<<moveTo "event_convention_penis_abort" "On second thought... this is a bit TOO silly." 600>>]
<<else>>
You tell <<=setup.getNpcName("npc_technician","first")>> that you aren't really interested in attempting a caper today and she nods, putting the mustache back on the shelf. "@@.npc_technician;Fair enough... I suppose it was a bit last minute. Those goody two-shoe heroes will never know how close they came to succumbing to another brilliant plan from Missile Troupe!@@"<br>
<br>
You suppress a laugh at her ridiculousness as she strikes an overly theatric pose before the two of you head off on your way.<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay penis: challenge
#status: RELEASED 0.8.7.0
#ignore_spell: taschenmonster,cindera,ephemera,stinkin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" setup.charImage("npc_technician",$scene.technician_img)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> takes the lead, confidently approaching your foes. "@@.npc_technician;Halt you two! We'll be needing you to come with us.@@"<br>
<br>
Stifling a laugh <<if $scene.female>>Cindera's<<else>>Cinder's<</if>> responds by asking to see your badges.<br>
<br>
"@@.npc_technician;Badges? We don't need no stinkin' badges! Or badgers for that matter, or electric rats, or dragons, or really anything of that sort. No, what we're here about is a report that you're smuggling illegal Taschenmonster... yes, smuggling some real monsters in your pants. So if you'll just come with us for an... inspection, we'll clear this whole thing up.@@"<br>
<br>
Finishing her speech <<=setup.getNpcName("npc_technician","first")>> attempts to twirl her mustache only to almost pull it off, quickly fixing it to be only SLIGHTLY crooked before taking to stroking her chin instead as she makes unsubtle eyes at <<if $scene.female>>Cindera and Ephemera's<<else>>Cinder and Brick's<</if>> crotches.<br>
<br>
"@@.generic_female1;Come on, <<if $scene.female>>Cindera<<else>>Cinder<</if>>,@@" <<if $scene.female>>Ephemera<<else>>Brick<</if>> states, "@@.generic_female1;we don't want any trouble. Let's go with them, I'm sure it's all just been a misunderstanding.@@"<br>
<br>
"@@.npc_technician;Yes, exactly, just come along and we'll tend to this little... or perhaps not-so-little problem post-haste!@@"<br>
<br>
The four of you head away from the convention floor, <<=setup.getNpcName("npc_technician","first")>> finding a conference room that isn't booked for nearly an hour and letting the four of you in for a bit of privacy.<br>
<br>
[<<moveTo "event_convention_penis_4" "Everything is going perfectly to plan!" 300>>]<br>
[<<moveTo "event_convention_penis_abort" "On second thought... this is going a bit too far." 600>>]
</div>/*#
#desc: cosplay penis: battle
#status: RELEASED 0.8.7.0
#ignore_spell: cindera,ephemera
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
Checking the door closed <<=setup.getNpcName("npc_technician","first")>> motions for the two heroes to stand still as she drops to her knee, and you alongside. Face to face with a pair of bulging <<if $scene.female>>girlcocks<<else>>cocks<</if>> you take a moment to enjoy the aroma before <<=setup.getNpcName("npc_technician","first")>> issues her next command.<br>
<br>
"@@.npc_technician;Alright, <<if $scene.female>>Ephemera<<else>>Brick<</if>> — let's see what you have in here, from the outside it could be an illegally large specimen... but that could be just some wrinkles in the clothing.@@"<br>
<br>
There's no way the bulging monsters before you could be referred to as "wrinkles" but you play along as <<=setup.getNpcName("npc_technician","first")>> orders the two to. "@@.npc_technician;Show us what you're hiding! We need to visually inspect these monsters!@@"<br>
<br>
If your two new friends looked impressive clothed, they're even more so with their pants pulled down, a pair of large <<if $fetish.cum>>dripping <</if>><<if $scene.female>>skirt<<else>>trouser<</if>> snakes pointing directly at you. With <<=setup.getNpcName("npc_technician","first")>> kneeling in front of <<if $scene.female>>Ephemera<<else>>Brick<</if>> you're eyes to one-eye with <<if $scene.female>>Cindera<<else>>Cinder<</if>>; either specimen would give <<=setup.getNpcName("npc_maid","first")>> and her Destroyer a run for the money... but, despite being the shorter of the pair, <<if $scene.female>>Cindera<<else>>Cinder<</if>> is packing the larger "pocket monster" of the two.<br>
<br>
With a triumphant flourish <<=setup.getNpcName("npc_technician","first")>> pulls off her mustache to announce "@@.npc_technician;HAHA! It was Missile Troupe all along! You foolish heroes had no idea, and now you're in for some trouble!@@"<br>
<br>
"@@.pc;And make it double!@@" You add, as you follow suit by removing your <<if $scene.beard>>beard<<else>>sunglasses<</if>>.<br>
<br>
"@@.generic_male1;Oh no!, but you forgot one thing,@@" <<if $scene.female>>Cindera<<else>>Cinder<</if>> replies.<br>
<br>
"@@.npc_technician;And what's that my delicious- I mean, doomed hero?@@"<br>
<br>
"@@.generic_male1;That you've put yourself in range for—@@" in unison the two finish together with a shout of "@@.generic_male1;COCK STRIKE ATTACK: SMACK DOWN!@@"<br>
<br>
<<printThought "Oh no, we were prepared for anything except Stealth Cock!">><br>
<br>
There's a loud fleshy slap as you and <<=setup.getNpcName("npc_technician","first")>> each take a tally-whacker to the cheek. <<=setup.getNpcName("npc_technician","first")>> over-sells the move, flopping across the floor.<br>
<br>
"@@.generic_female1;And now, prepare for face-fuck! It's super effective against scoundrel-types like yourself!@@"<br>
<br>
[<<moveTo "event_convention_penis_5" "Jess and Jim use... giant swallow?" 300>>]<br>
[<<moveTo "event_convention_penis_abort" "On second thought... this is going a bit too far." 600>>]
</div>/*#
#desc: cosplay penis cock worship
#status: RELEASED 0.8.7.0
#ignore_spell: taschenmonsters,cindera,ephemera,accelecock,cockfall,pp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 17 'terrible' $SEEN_STRANGER>>
<<if $fetish.cum>>
<<applyExperience 'cum' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<if $scene.beard>>
<<removeItem "cosplay_beard" true>>
<<deleteItem "cosplay_beard">>
<<else>>
<<removeItem "large_sunglasses" true>>
<</if>>
<<set $scene.technician_img = "npc_technician_rocket">>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" setup.charImage("npc_technician",$scene.technician_img)>>
<div id="invframe" class="scrolltext">
Missile Squadron is well and truly "pinned down" and you have little choice but to suck for your life as they "exploit your weakness" with Cock slide as you jerk and slurp on <<if $scene.female>>Cindera's<<else>>Cinder's<</if>> big, beautiful <<getWordPenis>> while <<=setup.getNpcName("npc_technician","first")>> enthusiastically does the same.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Though not quite the biggest you've had, your throat nevertheless gets a wonderful workout
<<else>>
Pushing even your skills, you're drooling and struggling to handle <<if $scene.female>>Cindera's<<else>>Cinder's<</if>> throat-stretching monster
<</if>>
<<else>>
Far too large for you to properly swallow you do your best, lips stretched and fingers stroking
<</if>>
as you "fight back," though your repeated use of Cock Polish seems to only strengthen your foes! The heroes don't hold back on using PP, and they show off their stamina as well as their Accelecock-enhanced speed as they unleash, Power Cock and Cock Wrecker, giving you and your friend plenty of time to "research" their pet "titan eel" type Taschenmonsters before the finishing things off with a double Cock Blast — cumming in
<<if $fetish.cum>>
unison, blasting loads even more monstrously large than the cocks that produced them all over you and <<=setup.getNpcName("npc_technician","first")>>.
<<else>>
unison deep, a real Max Cockfall.
<</if>>
<br><br>
"@@.npc_technician;I guess Missile Squadron is blasting off again...@@" <<=setup.getNpcName("npc_technician","first")>> gasps as she slumps back in defeat<<if $fetish.cum>>, even more drenched in cum than you are<</if>>. <<if $scene.female>>Cindera and Ephemera<<else>>Cinder and Brick<</if>> high five and share a laugh as they head for the door.<br>
<br>
"@@.generic_male1;Thanks for the fun, your cosplay was amazing... it's just too bad for your schemes we're impervious to Dork types!@@" <<if $scene.female>>Cindera<<else>>Cinder<</if>> shouts back with a laugh before the two of them leave the room.<br>
<br>
[<<moveTo "event_convention_penis_6" "Continue." 300>>]
</div>/*#
#desc: cosplay penis finish
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" setup.charImage("npc_technician",$scene.technician_img)>>
<div id="invframe" class="scrolltext">
Once it's just the two of you <<=setup.getNpcName("npc_technician","first")>> pops up to her feet, licking her lips and helping you back to your feet as well. "@@.npc_technician;Well... that was a fun adventure!@@" She hunts down some napkins left over from catering and the two of you clean yourselves up enough to be presentable and discard the cheap, ruined disguises in the trash.<br>
<br>
"@@.npc_technician;Come on, let's head home.@@"<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Continue." 600>>]
</div>/*#
#desc: cosplay piss intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You head into the bathroom and immediately zero in on a <<if $options.fem>>woman<<else>>dude<</if>> standing waiting for a urinal.<br>
<br>
"@@.pc;Hiya — so my girlfriend is really thirsty... I don't suppose you could use her rather than the urinal... save you a wait to boot!@@"<br>
<br>
"@@.npc_technician;Please! I can feel myself wilting away as we speak!@@" <<=setup.getNpcName("npc_technician","first")>> adds theatrically as she puts a hand to her forehead and pretends to nearly faint.<br>
<br>
The would-be pisser blinks in surprise as they seem to be taking a moment to process the offer, but they seem amenable... and a stall just cleared out.<br>
<br>
[<<moveTo "event_convention_piss_2" "Water the plant(girl)." 300>>]<br>
[<<moveTo "event_convention_piss_abort" "Actually... you aren't in the water sporting mood." 300>>]
<<else>>
You lead <<=setup.getNpcName("npc_technician","first")>> away from the bathroom as she theatrically wobbles. "@@.npc_technician;Alas! I am so parched! I can feel my beautiful leaves withering with every step!@@" A moment later she straightens up with a laugh, "@@.npc_technician;just teasing you, come on, let's do something else.@@"<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay piss abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You suddenly feel uncomfortable with this whole situation and you signal <<=setup.getNpcName("npc_technician","first")>> that you aren't interested in continuing. Almost immediately she takes charge, excusing the two of you from the bathroom and leading you for the exit.<br>
<br>
"@@.npc_technician;Sorry if that was a bit intense... I thought it would be fun, but I guess maybe this is more of a private kink... come on, let's head home.@@"<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600>>]
</div>/*#
#desc: cosplay piss 2nd person enters
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'piss' 8 'little' $EXPOSED>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
Showing not the slightest hint of hesitation <<=setup.getNpcName("npc_technician","first")>> leads your new "friend" into the stall and drops to her knees, lips spread wide. "@@.npc_technician;Water me, <<if $fetish.daddy>><<Daddy>><<else>><<sir>><</if>>.@@" She begs, a slight delay as your subject's half-chub presents some challenge in the flow starting... but soon a golden stream is arcing into your friend's mouth and dribbling down her chin.<br>
<br>
"@@.npc_technician;Mmm, yes...@@" she moans, swallowing some and letting the rest trickle down her body. "@@.npc_technician;I'm feeling more vibrant already... but I need more...@@"<br>
<br>
As your temporary friend zips up and steps away, <<=setup.getNpcName("npc_technician","first")>> licks her lips and looks up at you, crawling forward and reaching for your skirt. "@@.npc_technician;Mmmm, that just warmed me up. Water me
<<switch $npc_technician.flags.knowgender>>
<<case 'female'>>
<<if $fetish.daddy>>Mommy<<else>>Jessica<</if>>,
<<case 'male'>>
<<if $fetish.daddy>>Daddy<<else>>Jess<</if>>,
<<default>>
Jessica,
<</switch>> shower me with your love...@@"<br>
<br>
[<<moveTo "event_convention_piss_3" "Since the lady asked..." 300>>]<br>
[<<moveTo "event_convention_piss_abort" "Your bladder's empty, and you aren't in the water sporting mood anymore." 300>>]
</div>/*#
#desc: cosplay piss join gf
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'piss' 13 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
Skirt raised, you
<<if setup.checkItemTypeWorn("cage")>>
piss through
<<if setup.isCage()>>
your cage, <<=setup.getNpcName("npc_technician","first")>> sucking on the tip as you leak forth,
<<else>>
the front shield of your chastity belt, <<=setup.getNpcName("npc_technician","first")>> spreading her mouth wide as the diffused droplets splatter across her face,
<</if>>
<<else>>
<<if $player.body_ref.penis>>
whip out your <<=setup.calcPenisSize()>> <<getWordMyPenis>> and unleash the firehose directly between her lips,
<<else>>
spread your lower lips and unleash your stream, adjusting your initial chin-blast slightly to shoot directly between her lips,
<</if>>
<</if>>
an expression of rapturous joy on her face as she gulps down every drop.<br>
<br>
Pulling back as your stream slows to a trickle she makes a show of gargling the last mouthful before pulling you down for a kiss, your tongues dancing a yellow sea before you both swallow what remains.<br>
<br>
"@@.generic_male1;Looks like you two could use a shower...@@" someone states, and you look over to discover at least half a dozen people have been watching your display, the line for the urinal fully diverted by your perverted debauchery.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins as she glances at you for final permission. "@@.npc_technician;And I thought you were supposed to be the crazy one... but here I am feeling like putting down roots to enjoy the rain...@@"<br>
<br>
[<<moveTo "event_convention_piss_4" "Join your girlfriend on your knees, the water's fine." 300>>]<br>
[<<moveTo "event_convention_piss_abort" "Actually... you aren't in the water sporting mood." 300>>]
</div>/*#
#desc: cosplay piss golden shower
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeStatAllWorn 'piss' 100>>
<<applyExperience 'piss' 18 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
In less than a minute you and <<=setup.getNpcName("npc_technician","first")>> are on your knees getting showered with piss from multiple directions at once. Cocks and skilled vagina-havers half-encircle you, aiming directly into your mouths, the two of you gulping and glistening as you are painted with pale gold. Occasionally <<=setup.getNpcName("npc_technician","first")>> will pull you in for a passionate kiss to share a particularly tasty vintage, and by the time you've cleared out the line for the bathroom the both of you are soaked from head to heels, slipping a little in the pool that has formed around you when a janitor cruises in to clean up and, surprisingly politely, kick you out.<br>
<br>
[<<moveTo "event_convention_piss_5" "Continue." 600>>]
</div>/*#
#desc: cosplay piss cleanup and leave
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
Reeking of piss you and <<=setup.getNpcName("npc_technician","first")>> head for the exit, various convention-goers looking at you with disgust as you pass by.<br>
<br>
"@@.generic_male1;That was fun and all... but we should probably head home and shower...@@"<br>
<br>
Fortunately auto-cabs can't smell and the two of you are soon riding back to her flat.<br>
<br>
[<<moveTo "room_student_quarter" "Shower and head on your way." 300 "<<include 'cosplayRemove'>>">>]
</div>/*#
#desc: cosplay whoring intro
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You flutter your eyelashes as you reply that of course you'll do ANYTHING for the... trees.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins and then dashes over to chat with the booth organiser. A minute or so later and she's skipping back to you to lean in for an excited kiss. "@@.npc_technician;For good luck! Now the rest of your kisses, well... someone better be paying! And you better kiss good, with plenty of tongue. We all gotta do our best if we're going to save the trees!@@"<br>
<br>
She leads you on to where a stool has been set up with a hastily written $$$ DONATE CREDITS — GET KISSED! $$$ sign hanging above.<br>
<br>
[<<moveTo "event_convention_whore_2" "Take a seat and pucker your lips." 180>>]<br>
[<<moveTo "event_cosplay_root" "You changed your mind, you don't want to do this." 60 "<<set $scene.accept=false>>">>]
<<else>>
You shake your head and <<=setup.getNpcName("npc_technician","first")>> shrugs. "@@.npc_technician;It was just an idea. Come on, let's go check something else out.@@"<br>
<br>
[<<moveTo "event_cosplay_root" "Continue on." 600>>]
<</if>>
</div>/*#
#desc: cosplay whore abort
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $player.plocation == "event_convention_whore_2">>
Faced with the prospect of actually kissing a stranger for money, you have sudden second thoughts and look towards <<=setup.getNpcName("npc_technician","first")>> for a rescue.<br>
<br>
She swoops in an instant later, steering the <<man>> away and leading "@@.npc_technician;whoop, sorry, limited time offer, and that time is over. Thanks for the donation, no refunds!@@"<br>
<br>
The <<man>> doesn't get a chance to reply before <<=setup.getNpcName("npc_technician","first")>> pushes <<him>> away and the two of you are hurrying away from the booth. You catch a few glares as you power-walk past but <<=setup.getNpcName("npc_technician","first")>> heads straight for the exit.<br>
<br>
"@@.npc_technician;Sorry about that... thought it would be a bit of fun. Guess that'll be all for today then, eh?@@"<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600>>]
<<else>>
You tell <<=setup.getNpcName("npc_technician","first")>> you've hit your limit as to what you're willing to do for "donations." <br>
<br>
"@@.npc_technician;Aww, my little whore done raising money for the day? Well... at least we've helped the trees a bit.@@" From the expression on the booth-runner's face you've done more than a bit... and as you clean up and walk away you can see them and some of those who had been waiting for you to free up, trying to rally another cosplayer to take your place in the "kissing" stool.<br>
<br>
"@@.npc_technician;Come on, it's been a productive day, but we can come back some other time.@@"<br>
<br>
You nod and, arm in arm, follow <<=setup.getNpcName("npc_technician","first")>> towards the exit.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600>>]
<</if>>
</div>/*#
#desc: cosplay whore kissing
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
You flutter your eyelashes and let the <<man>> lean in for <<his>> kiss. <<His>> breath smells like energy drink and cheap fast food, but, even as <<he>> fumbles a bit in attempting to slip you some tongue, it isn't particularly objectionable.<br>
<br>
"@@.npc_technician;That'll be enough, you two!@@" States <<=setup.getNpcName("npc_technician","first")>> and she gently steers the <<man>> away, "@@.npc_technician;a donation like that gets you a kiss, not a whole make-out session, and there are more people behind you!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> is right as there's already a short queue forming for your "services." You shuffle in your chair and refresh your lipstick and get ready to work.<br>
<br>
[<<moveTo "event_convention_whore_3" "Kiss me, I'm beautiful." 600>>]<br>
[<<moveTo "event_convention_whore_abort" "You changed your mind, you don't want to do this." 60>>]
</div>/*#
#desc: cosplay whore blowjob - kissing customers
#status: RELEASED 0.8.7.0
#ignore_spell: puddin',ovah
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'whoring' 3 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
Kisses soon start to blur together as you mash face with everything from your aliens, to superheroes, to just normal people checking out the convention. Getting paid... or, technically, "raising so many donations" for just kissing has you feeling quite the belle of the ball — especially when you recognise the occasional person making their second pass through the line! You always make sure to reward their "loyalty" with a wink and a little extra tongue. Your efforts seem to have the desired effect, as you leave each of them walking away a bit weak in the knees by the time <<=setup.getNpcName("npc_technician","first")>> sends them off.<br>
<br>
All in all you're falling into a rhythm and wondering how long <<=setup.getNpcName("npc_technician","first")>> plans to sell you like this when your attention is caught by your next client — a slender <<man>> dressed in a purple suit and a wide grin painted onto <<his>> white face.<br>
<br>
"@@.generic_male1;Hello, Jessica, you miss me?@@" The <<man>> drawls in a pretty good facsimile of one of the more famous filmic adaptations of <<his>> character — the Prankster! Your character's one-time lover/partner. Maintaining the bit <<he>> tips <<his>> hat to <<=setup.getNpcName("npc_technician","first")>> as <<he>> continues on. "@@.generic_male1;Vine... so lovely to meet the two of you here so whaddaya say... how a bout a kiss for old time's sake? Or maybe a bit more than a kiss... seeing you like this has me... excited, for the old times...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> glances at you as if checking in, your heart beating faster as you recall your time together in the gloryhole and know that, if you're willing, she's ready to pimp you for way more than just a kiss on the lips...<br>
<br>
[<<moveTo "event_convention_whore_4" "You'd love to suck <<his>> puddin' pop... if <<he>> makes a proper donation." 600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_convention_whore_4" "It's ovah between you two! But you'll honour <<his>> donation with a kiss." 600 "<<set $scene.suck=false>>">>]<br>
[<<moveTo "event_convention_whore_abort" "You changed your mind, you don't want to do this." 60>>]
</div>/*#
#desc: cosplay whore blowjob - joker
#status: RELEASED 0.8.7.0
#ignore_spell: puddin',p
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'whoring' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 10 'normal' $SEEN_STRANGER>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
"@@.pc;Of course, <<if $options.fem>>Miss<<else>>Mista<</if>> P — I never could say no to your puddin' pop.@@" You reply as a small private space is quickly cordoned off in the back of the booth and you drop to your knees.<br>
<br>
"@@.generic_male1;You always did look best from this angle...@@" "The Prankster" says with a grin as you unzip <<his>> slim-fit pants and take <<his>> cock between your lips. <<He>> taste a little funny, but you don't have time to dwell on it as he takes hold of your pigtails and sets to work.<br>
<br>
"@@.generic_male1;Ah, like riding a bike,@@" <<he>> states as <<he>> uses <<his>> hold on your hair like a pair of handlebars, "@@.generic_male1;THIS is the throat I remembered, ah... all those good times we had. You know, I thought up some of my best schemes while I was using you like this... ravaging this throat... and then passing you off to the henchmen? Well, if they weren't crazy loyal before, your dick-slurping face-hole made sure of it, right?@@"<br>
<br>
Mouth filled with cock you can only gurgle a response, but whether due to playing the part, or a base personality, you get the sense <<he>>'s more interested in getting off while — or possibly just by — hearing <<him>>self talk.<br>
<br>
<<if $fetish.cum>>
"@@.generic_male1;What was it you used to say? Feed me your puddin', Puddin'? Well here it comes you clown slut!@@" With no further warning
<<else>>
<<His>> pace increases and you sense <<his>> climax is near. With a final grunt
<</if>>
<<he>> pulls you balls deep
<<if $fetish.cum>>
and unloads down your throat, spurting a shocking quantity that ends up shooting out your nose and dribbling down your chin before <<he>> finally withdraws.
<<else>>
and climaxes with a laugh.
<</if>>
<br><br>
"@@.generic_male1;Ah, perfect... but it seems your photosynthesising girlfriend is telling me I've gotten all I paid for... still, if you ever decide to come crawling back I'm sure I can find a position for you in my organisation, or on my organ! Hahahahahaha!@@"<br>
<br>
Still laughing maniacally the Prankster walks past <<=setup.getNpcName("npc_technician","first")>> and away from the
<<if ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$player.body_ref.vagina || $player.virgin.vaginal)>>
booth... as another customer steps forward and unzips.<br>
<br>
"@@.npc_technician;So it seems that kneeling kisses are pulling in even more action... but you don't mind, right babe?@@"<br>
<br>
[<<moveTo "event_convention_whore_5" "Not at all! It's to save the plants, after all..." 600>>]<br>
[<<moveTo "event_convention_whore_abort" "Actually, you think you're done for the day." 60>>]
<<else>>
booth as she walks over to help clean you up. "@@.npc_technician;So I think that's enough for one day, come on, let's head out. I mean, if I'm going to burn off any of your remaining innocence, and believe me I am down for that whenever you are ready, well... I'd prefer to have you all to myself for it!@@"<br>
<br>
You nod and, arm in arm, follow <<=setup.getNpcName("npc_technician","first")>> towards the exit, a glance back showing that another cosplayer has already stepped in to take your place at the "kissing" booth... you wonder if they'll end up going as far as you did... or maybe further?<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" 'Back to <<=ps(setup.getNpcName("npc_technician","first"))>> flat.' 600>>]
<</if>>
<<else>>
In-character you remind "@@.pc;<<if $options.fem>>Miss<<else>>Mista<</if>> P@@" that you aren't with <<him>> anymore, sharing a kiss that tastes like face-paint before <<he>> continues off on <<his>> way.<br>
<br>
Another half dozen or so customers and you can tell <<=setup.getNpcName("npc_technician","first")>> is getting a bit bored, finally telling the booth operator to wrap things up.<br>
<br>
As the two of you head away, however, you're surprised that the line is still going... with a second queue forming up with other cosplayers volunteering to take your place and "help" with the fundraiser.<br>
<br>
"@@.npc_technician;Come on, babe, I think those lips have cone roaming far enough, and it's time for us to head on home.@@"<br>
<br>
You nod and, arm in arm, follow <<=setup.getNpcName("npc_technician","first")>> towards the exit.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Back to her flat." 600>>]
<</if>>
</div>/*#
#desc: cosplay whore double sex - blowjobs
#status: RELEASED 0.8.7.0
#ignore_spell: owlman,owlwoman,akrham
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'whoring' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'penis' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 16 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> wasn't kidding about customers as, even compared to your kissing, you're literally slammed with clients, your throat in a constant state of bulge, even to the point where you sometimes have to simultaneously jerk off the next customer not to fall behind.<br>
<br>
When there's finally a brief pause you look up from your momentary respite you look up to see <<=setup.getNpcName("npc_technician","first")>> standing next to what look to be you next two customers — another pair of cosplayers... this time those goody-two-shoes heroes, Owl<<man>> and the Lemur!<br>
<br>
"@@.generic_male2;You've pulled your last caper,@@" Owl<<man>> states with a voice so gravelly you could pave a road with it. "@@.generic_male2;It's Arkham for the both of you!@@"<br>
<br>
"@@.generic_female1;That goes for you too, Toxic Vine!@@" the Lemur adds with high-pitched excitement as <<he>> grabs <<=setup.getNpcName("npc_technician","first")>> by the arm and she feigns distress.<br>
<br>
"@@.npc_technician;How dare you try to foil my efforts to save the plants! Only, you forgot about my sex pollen!@@" She pretends to blow something at the two "heroes" and they start swaying in place, comically dazed. "@@.npc_technician;There, wouldn't you rather just pay to fuck Jesty's brains out rather than sending us away to mean old Akrham?@@"<br>
<br>
"@@.npc_technician;Put it on... the Owl credit card...@@" Owl<<man>> replies.<br>
<br>
[<<moveTo "event_convention_whore_6" 'Do your part to "distract" the heroes.' 600>>]<br>
<<if $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_convention_whore_6" 'Unlock for ultimate distraction!' 600>>]<br>
<<else>>
<</if>>
<</if>>
[<<moveTo "event_convention_whore_abort" "Actually, you think you're done for the day." 60>>]
</div>/*#
#desc: cosplay whore double sex - batman and robin
#status: RELEASED 0.8.7.0
#ignore_spell: owlman,owlwoman
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
From your knees you're soon <<if $scene.vag>>bent over a box<<else>>propped up on a box, <<if $scene.removeCage>>chastity belt unlocked and <</if>>legs bent up towards your head<</if>> as Owl<<man>> whips out an above average <<getWordPenis>>.<br>
<br>
Perhaps making good on their title of "Dark Cavalier" <<he>> applies some "Owl Lube" from their utility belt and goes straight for your rear, balls-deep in your <<if $fetish.sissy>>sissy <</if>>ass with a single thrust.<br>
<<if $scene.vag>>
You moan, only to be lifted into the air to find yourself facing the Lemur, who eagerly finishes your double penetration.
<<else>>
Shifting to the side slightly, Owl<<man>> makes room for the Lemur who slides <<his>> slightly narrower cock alongside for some double anal action.
<</if>>
<br><br>
"@@.generic_male2;Take that, villain!@@" Owl<<man>> intones theatrically.<br>
<br>
"@@.generic_female1;Holy hole in a whore, Owl<<man>>, this slut is so eager, yet so tight!@@"<br>
<br>
"@@.generic_male2;Only tight with the power of evil, Lemur,@@" Owl<<man>> responds in between grunts, the two "heroes" sawing away at your <<if $scene.vag>>holes<<else>>rear<</if>>.<br>
<br>
"@@.generic_female1;Boy howdy, I don't know how much longer I can last!@@"<br>
<br>
"@@.generic_male2;Stay strong, Lemur! We need to work together to properly punish this pernicious pervert. On my count we unleash the thrust of justice! Five, four, three, two, one...@@"<br>
<br>
Their pace speeding up as the count goes on, and then, at the stroke of "@@.generic_male2;THRUST!@@" they press into you tight from both ends, not just filling you up with cock<<if $fetish.cum>>, but with cum<<else>>but climaxing in unison<</if>>, as well.<br>
<br>
You feel your "foes" softening within and you slide back down to your feet, <<=setup.getNpcName("npc_technician","first")>> taking you by the hand as the two of you take advantage of the "confusion" to make your escape.<br>
<br>
[<<moveTo "event_convention_whore_7" "Continue." 300>>]
</div>/*#
#desc: cosplay whore leave
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cosplayevent = true>>
<</if>>
<<set $player.location = "Convention Centre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_center.png" $scene.technician_img>>
<div id="invframe" class="scrolltext">
Still wobbly from the hard fucking you laugh alongside your girlfriend as the two of you race to a bathroom to clean up<<if $scene.removeCage>> and replace your chastity belt<</if>>.<br>
<br>
"@@.npc_technician;I'd say that's enough adventure for one day... we can always come back to the convention next week — same owl time, same owl channel... or something to that effect.@@"<br>
<br>
You laugh <<if $fetish.cum>>and then burp up some cum <</if>>as the two of you head for the exit. As you pass by the fund-raising booth you notice that you started a trend — several other cosplayers having already taken your place serving the long line winding away from the fundraising booth, looks like being a total whore paid off... at least for the trees.<br>
<br>
[<<moveTo "event_cosplay_repeat_leave_1" "Continue." 600>>]
</div>/*#
#desc: call from technician when fail to show up to your "date"
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if $scene.beforetasklocation.last() == "event_random_nazis">>
<<set $scene.beforetasklocation.pop()>>
<<set $currentTasks.technician_cafe_1.condition = "Complete">>
<<initRoom>>
<<moveTo "event_random_nazis">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_technician', 'first')>>. Oh poop. You were supposed to meet her for coffee today.<br>
<br>
"@@.npc_technician;Look <<=$player.first_name>>, if you didn't want to hang out with me you just could have said so in the first place.@@"<br>
<br>
She sounds more bitter and disappointed then angry.<br>
<br>
<<if $npc_technician.flags.knowTrans && $npc_technician.flags.knowgender == "male">>
"@@.npc_technician;I hope this is not about my gender. If that's the case, I must have greatly misjudged your character.@@"<br>
<br>
You apologise to <<=setup.getNpcName('npc_technician', 'first')>>, and reassure her that it has nothing to do with that at all, something just came up.
<<else>>
You apologise to <<=setup.getNpcName('npc_technician', 'first')>>.
<</if>>
<<if setup.getTotalValue('bimbofication')>=5>>
You're kind of distracted lately and tend to forget things.
<</if>>
You promise to make it up to her next time.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: wait for + meet technician at maid cafe
#status: FINISHED 0.4.0.0
#ignore_spell: aaaanyway
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npcdatefirstscene = "normal">>
<<set $scene.npc_datethemes = 0>>
<<set $scene.npcdatereactnamechange = false>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set _tmp = Math.round(Math.random()*10)+3>>
<<set $now to setup.advanceDate($player, $now, "minutes", _tmp)>>
<<set $scene.bespokeComment = setup.getBespokeComment('npc_technician')>>
<<if $scene.bespokeComment == "">>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_technician',$npc_technician)>>
<<else>>
<<set $scene.compareVisuals = "">>
<</if>>
<<storeVisual $player $npc_technician>>
<<set $npc_technician.relationship.coffee_dates+=1>>
<<set $scene.npcdatefirstdate = $npc_technician.relationship.coffee_dates==1>>
<<if $scene.npcdatefirstdate>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_2'
2
'event_technician_makeup_1'
true
>>
<<addNpcTheme 'npc_technician' 'roleplay' 'theme_technician_rpg_5'
5
'event_technician_theme_roleplay_1_0'
true
>>
<</if>>
<<if !$npc_technician.flags.sawyouinfemaleclothes && (setup.analyzeWornTags(['female','male','unisex'])=='female')>>
<<set $npc_technician.flags.sawyouinfemaleclothes = true>>
<<set $scene.npcdatefirstscene = "female">>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<elseif !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.sawyouinunisexclothes && (setup.analyzeWornTags(['female','male','unisex'])=='unisex')>>
<<set $npc_technician.flags.sawyouinunisexclothes = true>>
<<set $scene.npcdatefirstscene = "unisex">>
<<elseif !$npc_technician.flags.nun && setup.checkVisibleClothingTag('nun') > 70>>
<<set $npc_technician.flags.nun = true>>
<<set $scene.npcdatefirstscene = "nun">>
<</if>>
<<if ($player.sec_style.body.name != "" && !$npc_technician.flags.reactnamechange)>>
<<set $scene.npcdatereactnamechange = true>>
<<set $npc_technician.flags.reactnamechange = true>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_10'
10
'event_technician_comingout_1'
false
>>
<</if>>
<<set $scene.missedSession = $npc_technician.flags.rpg_campaign.missed>>
<<set $npc_technician.flags.rpg_campaign.missed = false>>
<<if $player.llocation == "event_enthusiast_nails_6">>
<<set $scene.npcdatefirstscene = "nailsprecursor">>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.npcdatefirstscene == "unisex">>
You sit for a while at the "Newtype IV" waiting for <<=setup.getNpcName('npc_technician', 'first')>>. She seems to be a little bit late. As you wait, you can't help but notice a few maids chatting with each other while seeming to glance in your general direction.<br>
<br>
<<printThought "Oh <<getWordGod>>, I knew this was a bad idea...">><br>
<br>
For a moment you think to pack your things together and text <<=setup.getNpcName('npc_technician', 'first')>> that you simply couldn't make it. But you're too late as a moment later she comes running through the front door, almost crashing into one of the maids. Her eyes scan the cafe and she nails her spot check on the first roll, hurrying over and stopping next to you while trying to catch her breath.<br>
<br>
<<if $scene.npcdatereactnamechange>>
"@@.npc_technician;<<=$player.original_first_name>>...? <<=$player.original_first_name>> <<if $player.original_last_name>><<=$player.original_last_name>><<else>><<=$player.last_name>><</if>>? Is... is that you?@@"<br>
<br>
<<printThought "A justified question it seems. I am not so sure myself these days...">><br>
<br>
You quickly clarify that you go by <<=$player.first_name>> <<=$player.last_name>> now and <<=setup.getNpcName('npc_technician', 'first')>> nods. "@@.npc_technician;Wow, you really have been busy! Gotta say though — LOVE the new name, it fits you perfect!@@"
<<elseif $scene.compareVisuals=="">>
"@@.npc_technician;Sorry, <<=$player.first_name>>... <<=$player.first_name>>... say there is something different about you today, isn't it? Here, let me cast true vision on you. Ah, I see, you finally shed your fake persona and embrace the only true way of life. By role-playing as an elf bard. No? I am sure something has changed, I simply have to figure it out.@@"
<<else>>
"@@.npc_technician;Sorry, <<=$player.first_name>>... <<=$player.first_name>>... say there is something different about you today, isn't it? Hmm... have you changed something? Wait, tell me nothing. <<=$scene.compareVisuals>>@@"
<</if>>
<br><br>
<<if $scene.npcdatefirstdate>>
"@@.npc_technician;<<=setup.getNpcName('npc_admin', 'first')>> told me you're now working as a secretary for one of the higher ups at Social Interaction Service Syndicate Inc. What roll did you crit fail up to fumble your place into that position?@@"<br>
<br>
You tell her that it must have been botching the "do the fucking backup" check that brought you into this whole situation.<br>
<br>
"@@.npc_technician;Oh yeah. I remember. The whole Nintendolls incident. Well, tough luck, at least you still have a job, even though it seems kind of strange seeing you as a secretary. Hmm, I suppose you must look really cute in a secretary outfit with a miniskirt and a blouse.@@" she says while grinning at you with a rather devious intent. You gulp audibly.<br>
<br>
"@@.npc_technician;Come on, I'm just teasing you. You look good in this, really.
<<if setup.getTotalValue('feminization')>=5>>
But joke aside. Maybe you should start wearing even more feminine clothes. Without trying to offend you... you have a certain feminine radiance others would kill for. If you need some tips, I can help you. <<if $player.body.breastsize[0]>0>>Oh, also, y'know... those tits.<</if>>
<</if>>
Come on, let's order something.@@"<br>
<br>
<<else>>
"@@.npc_technician;Anyway, you remember I was joking about you with a miniskirt and blouse. That outfit is not that far off I have to say. Did I maybe hit a bit closer to home with my assumption then I imagined? These look really cute on you.@@" she says while grinning at you with a rather devious intent. You gulp audibly.<br>
<br>
"@@.npc_technician;Come on, I'm just teasing you. You look good in this, really.
<<if setup.getTotalValue('feminization')>=5>>
But jokes aside. Maybe you should really start wearing even more feminine clothes. Without trying to offend you... you have a certain feminine radiance others would kill for. <<if $player.body.breastsize[0]>0>>Plus, y'know... those nice tits. <</if>>If you need some tips, I can help you.
<</if>>
Come on, let's order something.@@"<br>
<br>
<</if>>
<<elseif $scene.npcdatefirstscene == "female">>
You sit for a while at the "Newtype IV" waiting for <<=setup.getNpcName('npc_technician', 'first')>>. She seems to be a little bit late. As you wait, you can't help but notice a few maids chatting with each other while seeming to glance in your general direction.<br>
<br>
<<printThought "Oh <<getWordGod>>, I knew this was a bad idea...">><br>
<br>
For a moment you think to pack your things up and text <<=setup.getNpcName('npc_technician', 'first')>> that you simply couldn't make it. But you're too late as a moment later she comes running through the front door, almost crashing into one of the maids. Her eyes scan the cafe a few times, glancing past you over and over again. Each time her eyes seem to linger longer, returning faster as if focusing in on you. After a while she takes a smartphone out, tapping at lightning speed and looking at the display, looking at you, then back at the display, before finally approaching you slowly.<br>
<br>
<<if $scene.npcdatereactnamechange>>
"@@.npc_technician;<<=$player.original_first_name>>...? <<=$player.original_first_name>> <<if $player.original_last_name>><<=$player.original_last_name>><<else>><<=$player.last_name>><</if>>? Is... is that you?@@"<br>
<br>
<<printThought "A justified question it seems. I am not so sure myself these days...">><br>
<br>
You quickly clarify that you go by <<=$player.first_name>> <<=$player.last_name>> now and <<=setup.getNpcName('npc_technician', 'first')>> nods. "@@.npc_technician;Wow, you really have been busy! Gotta say though — LOVE the new name, it fits you perfect!@@"
<<else>>
"@@.npc_technician;<<=$player.first_name>>...? <<=$player.first_name>> <<=$player.last_name>>? Is... is that you?@@"<br>
<br>
<<printThought "A justified question. I'm beginning to wonder myself these days...">>
<</if>>
<br><br>
<<if $scene.compareVisuals=="">>
"@@.npc_technician;Sorry... say there is something different about yo... nope. Can't do it. I never thought this would be possible, but you my dear frenemy just managed to BREAK MY CONCENTRATION. Give me a second to process this. Don't misunderstand me, I love it, I just need a few seconds to breathe it all in... Okay, done... not really, but let's say we did.@@"
<<else>>
"@@.npc_technician;Sorry... say there is something different about yo... nope. Can't do it. I never thought this would be possible, but you my dear frenemy just managed to BREAK MY CONCENTRATION. Give me a second to process this. Don't misunderstand me, I love it, I just need a few seconds to breathe it all in... Hmm... let's see what else has changed. <<=$scene.compareVisuals>>@@"
<</if>>
<br><br>
<<if $scene.npcdatefirstdate>>
"@@.npc_technician;<<=setup.getNpcName('npc_admin', 'first')>> told me you're now working as a secretary for one of the higher ups at Social Interaction Service Syndicate Inc. I didn't think <<he npc_admin>> meant it that literally. What roll did you crit fail up to fumble your way into that position?@@"<br>
<br>
You tell her that it must have been botching the "do the fucking backup" check.<br>
<br>
"@@.npc_technician;Oh yeah. I remember. The whole Nintendolls incident. Well, tough luck, at least you still have a job. And I have to admit, it is a delight to see you as a secretary. I always thought you had the right figure to pull this sort of look off and... well... you look even better than I could have imagined!@@" She says while grinning at you with a devious intent. You gulp audibly.<br>
<br>
"@@.npc_technician;Come on, I'm just teasing. You look good in this, great, even. But jokes aside. Without trying to offend you... you have a certain feminine radiance others would kill for. If you need some tips, I can help you. Anyway, come on, let's order something.@@"
<<else>>
"@@.npc_technician;Anyway, you remember I was joking about you with a miniskirt and blouse. And now look at you! Did I maybe hit a bit closer to home with my assumption than I imagined? These look really cute on you.@@" she says while grinning at you with a devious intent. You gulp audibly.<br>
<br>
<<if $player.sec_style.body.name == "">>
"@@.npc_technician;Come on, I'm just teasing. You look good in this, great, even. Like a new person, I almost feel like I should be calling you by a different name! You know you can change those almost as easy as clothing these days, just pop online, pay a filing fee and boop, new you!@@"<br>
<br>
<<printThought "Huh, that's an interesting tidbit...">><br>
<br>
"@@.npc_technician;Aaaanyway I just gotta say, without wanting to offend you... you have a certain feminine radiance others would kill for. If you need some tips, I can help you. Anyway, come on, let's order something.@@"
<<else>>
"@@.npc_technician;Come on, I'm just teasing. You look good in this, great, even. Like a new person, but all jokes aside. Without wanting to offend you... you have a certain feminine radiance others would kill for. If you need some tips, I can help you. Anyway, come on, let's order something.@@"
<</if>>
<</if>>
<br><br>
<<elseif $scene.npcdatefirstscene == "nun">>
<<=setup.getNpcName('npc_technician', 'first')>> shows up and does a double take at your <<if setup.checkVisibleClothingTag('latex') > 50>>kinky <</if>>nun's attire.<br>
<br>
"@@.npc_technician;Woah, did you join the Church of the Goddess? The outfit certainly fits you though...@@" You can tell she's a bit torn at the thought of "losing" you to the church and you re-assure her that, as much as you enjoy spending time with the "Sisters" you have not joined their number, except in a sort of honorary sense.<br>
<br>
"@@.npc_technician;Gotcha... well, either way, you look great, come on, let's get some coffee, I really need my caffeine!@@"
<<elseif $scene.npcdatefirstscene == "nailsprecursor">>
<<=setup.getNpcName('npc_technician', 'first')>> grins and leads you to a table.<br>
<br>
"@@.npc_technician;Talk about an eventful day! Kind of wish I'd gotten here even earlier... but exploring your gender with other people is great too, y'know? Whatever helps you figure out who you are, I'm just here to help you get that euphoria!@@"<br>
<br>
<<if $scene.compareVisuals != "">>
She looks you over. "@@.npc_technician;Hmm... have you changed something. Wait, tell me nothing. <<=$scene.compareVisuals>>@@"
<<elseif $scene.bespokeComment != "">>
<<=$scene.bespokeComment>>
<</if>>
<<else>>
You wait for a couple of minutes, before <<=setup.getNpcName('npc_technician', 'first')>> appears outside the cafe looking really out of breath.<br>
<br>
<<if $scene.npcdatefirstdate>>
<<if $scene.npcdatereactnamechange>>
"@@.npc_technician;<<=$player.original_first_name>>...? <<=$player.original_first_name>> <<if $player.original_last_name>><<=$player.original_last_name>><<else>><<=$player.last_name>><</if>>? Is... is that you?@@"<br>
<br>
<<printThought "A justified question it seems. I am not so sure myself these days...">><br>
<br>
You quickly clarify that you go by <<=$player.first_name>> <<=$player.last_name>> now and <<=setup.getNpcName('npc_technician', 'first')>> nods. "@@.npc_technician;Wow, you really have been busy! Gotta say though — LOVE the new name, it fits you perfect!@@"
<<else>>
"@@.npc_technician;Sorry, <<=$player.first_name>>, I overslept.@@" <<=setup.getNpcName('npc_technician', 'first')>> says while catching her breath, sitting down next to you. She takes a good look at you and continues,
<<if $scene.compareVisuals=="">>
"@@.npc_technician;You look like you need more sleep. Having troubles lately?@@"
<<else>>
"@@.npc_technician;Hmm... have you changed something. Wait, tell me nothing. <<=$scene.compareVisuals>>@@"
<</if>>
<</if>>
<br><br>
"@@.npc_technician;<<=setup.getNpcName('npc_admin', 'first')>> told me you're now working as a secretary for the top brass at Social Interaction Service Syndicate Inc. What roll did you mess up to fumble your place into that position.@@"<br>
<br>
You tell her that it must have been botching the "do the fucking backup check" which brought you in this whole situation.<br>
<br>
"@@.npc_technician;Oh yeah. I remember. The whole Nintendolls incident. Well, tough luck, at least you still have a job, even though it seems kind of strange seeing you as a secretary. Well, I suppose you would look really cute in a secretary outfit with a miniskirt and a blouse.@@" she says while grinning at you with a rather devious intent. You gulp audibly.<br>
<br>
"@@.npc_technician;Just joking, you should have seen your face. Priceless.
<<if setup.getTotalValue('feminization') >= 5 && setup.analyzeWornTags(['female','male','unisex']) != "female">>
But jokes aside. Maybe you really should consider wearing female clothing. Without trying to offend you... you have a certain feminine radiance others would kill for. If you need some tips, I can help you.
<</if>>
Come on, let's order something.@@"<br>
<br>
<<else>>
<<if $scene.missedSession>>
"@@.npc_technician;Sorry I'm a bit late, but at least I showed up!@@" You blush in embarrassment at the reminder that you missed last week's game.
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 0>>
"@@.npc_technician;Everyone was all excited to meet you! I hope you can make it today, I think you'll really like the group! Anyway...@@"
<<case 1>>
"@@.npc_technician;I hope we didn't scare you off... everyone was really positive about you joining us and I hope you'll be back later today. Anyway...@@"
<<case 2 3 4 5>>
"@@.npc_technician;I should note that we have a bit of a... system for punishing people that miss sessions. It's not in place for you, yet, but you should keep it in mind that this sort of no-showing will eventually have consequences! Anyway,@@"
<<case 6>>
"@@.npc_technician;We're almost to the end of the campaign — we postponed things and ran something else, but talk about collective figurative blue-balls at not getting to finish! Anyway...@@"
<<case 7>>
"@@.npc_technician;Did you think that just because we hit the end of the campaign the group was dissolved? Nay, nay! We're in it for the long haul and there's always new adventure to be had! Anyway...@@"
<<default>>
"@@.npc_technician;I'll remind you that there are... consequences for no-showing a game, but you'll be experiencing that this evening when you show up, right?@@" She winks at you before
<</switch>>
she continues, sitting down next to you.
<<else>>
"@@.npc_technician;You'd think, I'd learn to set a clock after all these times I've overslept!@@" <<=setup.getNpcName('npc_technician', 'first')>> jokes while catching her breath, sitting down next to you.
<</if>>
She takes a good look at you and continues,
<<if $scene.compareVisuals=="">>
<<if $scene.bespokeComment != "">>
<<=$scene.bespokeComment>>
<<else>>
<<switch $npc_technician.relationship.her_role>>
<<case 'sub'>>
"@@.npc_technician;Good afternoon, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> — it's so wonderful to see you! Come on, let's order something, I really need my caffeine!@@"
<<case 'dom'>>
"@@.npc_technician;Good afternoon my lovely Princess... let's order something. I really need my caffeine!@@"
<<case 'neutral'>>
"@@.npc_technician;Hey <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>hot stuff<</switch>>, let's order something. I really need my caffeine!@@"
<<case ''>>
"@@.npc_technician;Have you lost some weight lately? No wait, it simply went down to your butt! Anyway, it is good to see you again. Let's order something. I really need my caffeine!@@"
<</switch>>
<</if>>
<<else>>
"@@.npc_technician;Hmm... you have changed something since the last time we met. Give me a second... <<=$scene.compareVisuals>> Anyway, it is good to see you again. Let's order something, I really need my caffeine!@@"
<</if>>
<br><br>
<</if>>
<</if>>
<<if $scene.npcdatereactnamechange && $scene.npcdatefirstscene != "female">>
You explain to <<=setup.getNpcName('npc_technician', 'first')>> that even more has changed, specifically, your new name.<br>
<br>
"@@.npc_technician;Seriously, you go by <<=$player.first_name>> now? Interesting choice, <<=$player.first_name>>... <<=$player.first_name>>... hmm, yeah, it suits you. Even more reason for Coffee! My braincells need the caffeine to analyse all of this wonderful news! Oh, and once I'm wired up if you want to talk any more about this... let me know!@@"<br>
<br>
<</if>>
<<if ($scene.npcdatefirstscene == "unisex") || ($scene.npcdatefirstscene == "female")>>
[<<moveTo "event_technician_cafe_1_2_fem" "Order something." 300>>]
<<elseif $npc_technician.stage==1>>
[<<moveTo "event_technician_cafe_1_2" "Order something." 300>>]
<<else>>
[<<moveTo "event_technician_cafe_1_2a" "Order something." 300>>]
<</if>>
</div>/*#
#desc: order coffee and look around at start of date with technician
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npcdateknowTrans = true>>
<<if !$npc_technician.flags.knowTrans>>
<<set $npc_technician.flags.knowTrans = true>>
<<set $scene.npcdateknowTrans = false>>
<</if>>
<<if $npc_technician.stage <2>>
<<set $scene.rfid_comment = false>>
<<set $npc_technician.stage = 2>>
<<include technician_stage_2_topics>>
<<else>>
<<set $scene.rfid_comment = true>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.npcdatefirstdate>>
Ordering a latte macchiato allows you to get a closer look at the maids waiting tables. <<=setup.getNpcName('npc_technician', 'first')>> was right, they're really cute, but something is strangely familiar and subtly off.<br>
<br>
"@@.npc_technician;So, can you figure it out? Your expression... I think you already know the answer, don't you?@@"<br>
<br>
You nod timidly. Most of the staff, or maybe all of them? are gender queer in some manner or another. Like <<=setup.getNpcName('npc_technician', 'first')>>... like you. From the cute guy behind the bar looking a little bit too feminine to the maid that serves the couple to your left with a strikingly deep voice for such a very beautiful woman. The more you look the more you detect signs indicating that all the staff — and more than a few of the customers are similarly genderfluid.
<<else>>
You order a latte macchiato, as usual. Looking around, you still try to figure out if every single maid in here might have once presented as male... despite, or perhaps because? of this fact you feel much more at ease. Nobody here will ever judge you for how you dress. Everyone is in some way like you. It's not like they try to hide it.
<</if>>
<br><br>
<<if $scene.rfid_comment>>
"@@.npc_technician;You remember when I deduced your whole underwear by "watching you walk." Yeah, the RFID cheat. This time you made it too easy for me. Your new clothes leave little room for interpretation that you're into gender bending. No idea how far yet, but still a nice touch. I have to admit, when I first met you I would have never guessed.@@"
<<else>>
"@@.npc_technician;You know I have this little trick, where I check if someone made the mistake and forgets to erase their RFID tags from their clothes? I start to proclaim some magical mambo jambo, that I know what they wear by simply watching them move? Works pretty good normally. I tell them the truth afterwards and recommend to clean their tags, but most forget after a while. It's the transparent citizen all over again. Anyway, I would have tried it on you as well, but your clothes leave little room for interpretation that you're at least interested into some gender-fluid experimentation, am I right?@@"<br>
<br>
You blush and nod.
<</if>>
<br><br>
<<if !$scene.npcdateknowTrans>>
"@@.npc_technician;Look, I will be honest with you. Even though there has been the transgression of limits act of 2029, you still can't be sure of peoples' hearts. Nobody is perfect, but here I feel safe, because I am the same. As they... as you. I was born male, never did much besides some light hormone therapies, since I had the advantage of a very feminine body to begin with. Kinda like you.@@" She adds with a wink.<br>
<br>
<</if>>
"@@.npc_technician;Let's see, I had an idea where I was going with all of this rambling. Ah, yes. I remember. If you ever want to talk about anything or need some help, I'm here for you, if you want me to be.@@" she says to you while putting her hand on top of yours. Without saying a word, you simply nod at her. The two of you are still smiling at each other when a maid appears from the side and introduces herself with a quiet hem. You realise you're still holding <<=ps(setup.getNpcName('npc_technician', 'first'))>> hand. Momentarily looking like an anime rom-com reject, you hastily retract your arm.<br>
<br>
[<<moveTo "event_technician_cafe_1_3" "Focus on the Maid." 360>>]
</div>/*#
#desc: technician "assesses" your undergarments
#status: FINISHED 0.4.0.0
#ignore_spell: g,m,secon
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npcdateknowTrans = false>>
<<if $npc_technician.flags.knowTrans == false>>
<<set $npc_technician.flags.knowTrans = true>>
<<else>>
<<set $scene.npcdateknowTrans = true>>
<</if>>
<<set $scene.npcdatepanties = setup.getItemFromType("panties")>>
<<set $scene.npcdatebra = setup.getItemFromType("bra")>>
<<set $scene.npcdatestockings = setup.getItemFromType("stockings")>>
<<set $scene.npcdateshoes = setup.getItemFromType("shoes")>>
<<set $scene.npcdategarterbelt = setup.getItemFromType("garter")>>
<<set $scene.npcdateplug = false>>
<<set $scene.npcdatecage = false>>
<<if setup.checkItemTypeWorn("plug")>>
<<set $scene.npcdateplug = true>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.npcdatecage = true>>
<</if>>
<<set $scene.npcdatefemPanties = setup.checkItemTag($scene.npcdatepanties,['female'])>>
<<set $scene.npcdatefemBra = setup.checkItemTag($scene.npcdatebra,['female'])>>
<<set $scene.npcdatefemStockings = setup.checkItemTag($scene.npcdatestockings,['female'])>>
<<set $scene.npcdatefemShoes = setup.checkItemTag($scene.npcdateshoes,['female'])>>
<<set $scene.npcdatehits = 0>>
<<if $scene.npcdatefemPanties || $scene.npcdatefemBra || $scene.npcdatefemStockings || $scene.npcdatefemShoes>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_0'
0
'event_psychiatrist_session_technician_1'
false
>>
<<if $npc_technician.stage < 2>>
<<set $npc_technician.stage = 2>>
<<include technician_stage_2_topics>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.npcdatefirstdate>>
Ordering a latte macchiato, you get a closer look at the maids working here. <<=setup.getNpcName('npc_technician', 'first')>> was right, they're really looking good. But something seems subtly off. You can't quite put your finger onto it.
<<else>>
You order a latte macchiato, as usual. Looking around, you still try to figure out if every single maid in here is male, or at least born as such? There are some where it is more obvious then others, but only if you know where to look, while others you would have never guessed on your own.
<</if>>
<<if setup.analyzeWornTags(['female','male','unisex']) != 'female' && ($scene.npcdatefemPanties || $scene.npcdatefemBra || $scene.npcdatefemStockings || $scene.npcdatefemShoes)>>
As you return your attention to <<=setup.getNpcName('npc_technician', 'first')>>, you realise she has moved a lot closer to you without you noticing, which startles you for a moment.<br>
<br>
"@@.npc_technician;You know, <<=$player.first_name>>,@@" she whispers into your ear as if she does not want anyone else to hear what she's about to tell you, "@@.npc_technician;I think you're fascinating.@@"<br>
<br>
"@@.npc_technician;Please correct me, if I am wrong about any of the following assumptions. I know I tend to over-analyse things from time to time, but I seem to be right more than not and it's all in good fun.@@"<br>
<br>
<<if $scene.npcdatefemPanties>>
<<set $scene.npcdatehits += 1>>
"@@.npc_technician;From the way you move your cute butt from side to side... you're wearing something that is not actually intended to make space for your... ahem... little Tim.@@"<br>
<br>
<<if setup.checkItemTag($scene.npcdatepanties,['sissy'])>>
<<if _plug>>
"@@.npc_technician;Further, I would even go so far to guess it is something... specially made for you. Woah... <<=$player.first_name>>... are... are you wearing <<if $fetish.sissy>>sissy<<else>>girly<</if>> panties? And you're plugged? Wow. I would have never guessed, that you'd be into that. Don't get me wrong, I'm happy for you, more than happy, to be totally honest, but still. The last time we met, you seemed so... so... hetero.@@"<br>
<<else>>
"@@.npc_technician;I'd even go so far to guess it is something... specially made for you. Woah... <<=$player.first_name>>... are... are you wearing <<if $fetish.sissy>>sissy<<else>>girly<</if>> panties? Wow. I would have never guessed, that you'd be into that. Don't get me wrong, I'm happy for you, more than happy, to be totally honest, but still. The last time we met, you seemed so... so... hetero.@@"<br>
<</if>>
<br>
You lower your eyes and turn red like a dying sun. Busted. Guilty as charged. How did she find that out? Was it a lucky guess, or did she really conclude that from the way you sit, that you're wearing <<=setup.getItemName($scene.npcdatepanties,true)>><<if _plug>> AND that you have something in your ass<</if>>? And if she can tell, can other people? You nervously glance around, wondering who else might know your secret.
<<elseif setup.checkItemTag($scene.npcdatepanties,['bold'])>>
<<if _plug>>
"@@.npc_technician;I'd even go so far to guess it is something of a more bold cut, maybe a g-string or a tanga? But what colour... maybe a hint of red? you'd look good in red, I think. The way you're moving your behind around to find a comfortable position to rest... it is my conjecture that you have something rather special plugged up in there as well, am I right?@@"<br>
<<else>>
"@@.npc_technician;I'd even go so far to guess it is something of a more bold cut, maybe a g-string or a tanga? But what colour... maybe a hint of red? you'd look good in red, I think.@@"<br>
<</if>>
<br>
You lower your eyes and blush. Busted. Guilty as charged. Was that a lucky guess, or did she really conclude that from the way you sit, that you're wearing <<=setup.getItemName($scene.npcdatepanties,true)>><<if _plug>> AND that you have something in your ass<</if>>?
<<elseif setup.checkItemTag($scene.npcdatepanties,['cute'])>>
"@@.npc_technician;I'd even go so far to guess it is something...
<<if setup.checkItemTag($scene.npcdatepanties,['pink'])>>
pink.
<<elseif setup.checkItemTag($scene.npcdatepanties,['blue'])>>
blue.
<</if>>
Don't look at me like that, it's the way you're sitting. I can totally see the back of your cute
<<if setup.checkItemTag($scene.npcdatepanties,['pink'])>>
pink
<</if>>
panties.
<<if $scene.npcdateplug>>
And the way you're moving your behind around to find a comfortable position to rest, I'd conjecture that you have something rather special plugged up in there as well, am I right?
<</if>>
@@"<br>
<br>
You lower your eyes and blush. Busted. Guilty as charged. Was that a lucky guess, or did she really conclude that from the way you sit, that you're wearing <<=setup.getItemName($scene.npcdatepanties,true)>><<if _plug>> AND that you have something in your ass<</if>>?
<<else>>
<<if _plug>>
"@@.npc_technician;But you don't seem to be all that much off centre. Maybe something comfortable, like regular cut panties? But the way you're moving your behind around to find a comfortable position to rest, I'd conjecture that you have something rather special plugged up in there as well, am I right?@@"<br>
<<else>>
"@@.npc_technician;But you don't seem to be that much off centre. Maybe something comfortable, like regular cut panties?@@"<br>
<</if>>
<br>
You gulp and blush. Busted. Was that a lucky guess, or did she really conclude that from the way you sit, that you're wearing <<=setup.getItemName($scene.npcdatepanties,true)>><<if _plug>> AND that you have something in your ass<</if>>?
<</if>>
<br><br>
"@@.npc_technician;Aha! I knew it.@@"<br>
<br>
Of course it was a bluff. You really should have seen that one coming from a mile away, but you didn't and her bluff worked out just fine.<br><br>
<</if>>
<<if $scene.npcdatefemBra>>
<<set $scene.npcdatehits += 1>>
<<if $scene.npcdatefemPanties>>
<<if setup.checkItemTag($scene.npcdatepanties,['sissy']) && setup.checkItemTag($scene.npcdatebra,['sissy'])>>
"@@.npc_technician;And from the slight shape forming from underneath your shirt, I'll assume you've got a fitted <<if $fetish.sissy>>sissy<<else>>girly<</if>> bra. With lots of frills? Made of Satin? Fuck, these cost a shit-ton online. Don't worry, your secret is safe with me.@@"
<<elseif setup.checkItemTag($scene.npcdatepanties,['bold']) && setup.checkItemTag($scene.npcdatebra,['bold'])>>
"@@.npc_technician;And from the slight shape forming from underneath your shirt, I'll assume you've got an equally bold bra. Maybe lace? Don't worry, your secret is safe with me.@@"
<<elseif $scene.npcdatebra == "striped_bra_blue">>
"@@.npc_technician;And from the slight shape forming from underneath your shirt, I'll assume you've got an equally cute bra. Maybe something stripy? Don't worry, your secret is safe with me.@@"
<<elseif setup.checkItemTag($scene.npcdatepanties,['cute']) && setup.checkItemTag($scene.npcdatebra,['cute'])>>
"@@.npc_technician;And from the slight shape forming from underneath your shirt, I'll assume you've got an equally cute bra. Maybe satin, with frills? Don't worry, your secret is safe with me.@@"
<<elseif setup.checkItemTag($scene.npcdatepanties,['modest']) && setup.checkItemTag($scene.npcdatebra,['modest'])>>
"@@.npc_technician;And from the slight shape forming from underneath your shirt, I'll assume you've got an equally boring bra. Well, one has to start somewhere. Don't worry, your secret is safe with me.@@"
<<else>>
"@@.npc_technician;And from the slight shape forming from underneath your shirt, I'll assume you've got a bra. Not really a fitting one, but you'll work the kinks out sooner or later of matchings ones bra and panties. Don't worry, your secret is safe with me.@@"
<</if>>
<<else>>
"@@.npc_technician;From the slight shape forming from underneath your shirt, I'll assume you're wearing a bra under there. Don't worry, your secret is safe with me.@@"
<</if>>
she says while smiling back at you.<br>
<br>
<<printThought "Wait, did she just flutter her eyelashes?">><br>
<br>
<</if>>
<<if $scene.npcdatefemStockings>>
<<set $scene.npcdatehits += 1>>
"@@.npc_technician;Those stockings might look like ordinary socks for a fraction of a
<<if setup.checkItemTag($scene.npcdatepanties,['sissy'])>>
secon... nope. <<if $fetish.sissy>>Sissy<<else>>Ultra-feminine<</if>> Stockings, custom made. Oh <<getWordGod>>. Where do you get these things?
<<if setup.checkItemTag($scene.npcdategarterbelt,['sissy'])>>
And of course you have a custom fitted garterbelt as well. I mean, really, what else could it have been?
<</if>>
<<else>>
second,
<<if setup.checkItemTag($scene.npcdatestockings,['pink'])>>
hmm... wait a second. Are you wearing pink pantyhose? Oh my, <<=$player.first_name>>, I didn't think you'd be the guy to go for such a cutesy style.
<<elseif setup.checkItemTag($scene.npcdatestockings,['bold'])>>
but I assume it is something more daring. Pantyhose... no wait. Stockings, am I right?
<<if $scene.npcdategarterbelt != "">>
By the way, you can clearly see the clasps of your garter through your clothes.
<</if>>
<<elseif setup.checkItemTag($scene.npcdatestockings,['modest'])>>
but I assume they're pantyhose, am I right?
<</if>>
<</if>>
Don't you just love the feeling of hosiery on your skin. No comparison to boring old socks, is it?@@"
<<if $scene.npcdatehits>1>>
Busted again. She's really good at deductions.
<<if $scene.npcdateknowTrans>>
Then again, she has an unfair advantage of experience over you, regarding this specific subject.
<<else>>
Maybe she watches too much Sherlock.
<</if>>
<<else>>
Busted. She's really good at deductions.
<<if $scene.npcdateknowTrans>>
Then again, she has an unfair advantage of experience over you, regarding this specific subject matter.
<<else>>
Maybe she watches too much Sherlock.
<</if>>
<</if>>
<br><br>
<</if>>
<<if $scene.npcdatefemShoes>>
<<set $scene.npcdatehits += 1>>
<<if setup.checkItemTag($scene.npcdatepanties,['unisex'])>>
"@@.npc_technician;Those shoes might look rather unisex to the untrained eye, but I know that these are designed for female feet alone. A bold move for someone with your experience level in this whole matter.@@"
<<else>>
"@@.npc_technician;Those shoes fool no one <<=$player.first_name>>, they're intended for female feet alone. A bold move for someone with your experience level in this whole matter.@@"
<</if>>
<br><br>
<</if>>
<<if $scene.npcdatecage>>
<<if $scene.npcdatecage && $scene.npcdateplug>>
"@@.npc_technician;By the way, your squirming around is not only an indicator for something up your... well, you know. And maybe you should consider wearing wider pants, I can totally see the outline of your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> down there. Not that I was staring there on purpose or anything.@@"
<<elseif $scene.npcdatecage>>
"@@.npc_technician;By the way, your squirming around is an indicator that there's something preventing you from sitting comfortable. Maybe you should consider wearing wider pants, I could totally see the outline of your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> down there. Not that I was staring there on purpose or anything.@@"
<</if>>
<br><br>
<<if setup.checkItemTag($scene.npcdatepanties,['sissy']) && setup.checkItemTag($scene.npcdatebra,['sissy']) && setup.checkItemTag($scene.npcdatestockings,['sissy']) && $scene.npcdateplug>>
"@@.npc_technician;Oh...@@"<br>
<br>
It seems like her brain froze for a moment, only picking back up after she has finished the reboot.<br>
<br>
"@@.npc_technician;Like O.M.G. You are a <<if $fetish.sissy>>Sissy<<else>>Cute girl<</if>> <<=$player.first_name>>!@@" She gushes followed by the cutest squee you've ever heard.<br>
<br>
"@@.npc_technician;That is so cute. <<if !$npc_admin.fem && !$options.fem>>Wait... are you <<=ps(setup.getNpcName('npc_admin', 'first'))>>? ... no. He is like the hetero-iest bro that ever het'd. <</if>>Oh you simply have to tell me everything. Who is your <<if $options.fem_all_men || $options.fem_all_women>><<master>>? Or are you still looking for one?<<else>>master? Or are you trying the... hetero... version with a mistress. Let's see how long you can stay hetero!<</if>>@@"<br>
<br>
You interrupt <<=setup.getNpcName('npc_technician', 'first')>> and plead for her to dial down the volume a little bit, while testing out your newest face tone: Red sun. A few other guest have turned their heads your way, but soon continue with their matters.<br>
<br>
<<printThought "Well, considering she nailed every target so far one could argue she is right... a little bit... bit it isn't like I had any choice in the matter... or did I?">><br>
<br>
"@@.npc_technician;Hey, I simply want to let you know that's okay, you know? Everyone needs a hobby... or fetish... or both... at once. And yours happens to contain a whole lot of cute pink in the near future. Call me once you reach the full outfit stage, okay? There's GOT to be a photo session!@@"
<<elseif $scene.npcdatecage && $scene.npcdatefemPanties && $scene.npcdatefemBra && $scene.npcdatefemStockings>>
"@@.npc_technician;Wait a second. Panties, bra, stockings, plugged and <<if setup.isCage()>>caged<<else>>wearing a chastity belt<</if>>? Like O.M.G.! <<=$player.first_name>>! You're into <<if $fetish.sissy>>sissification<<else>>feminisation<</if>>? Oh, that's so cute! Yay! So, who's your <<if !$options.fem>>Master... <</if>>mistress? Or are you still in your early phase? You're not planning to purge, are you? I would totally...@@"<br>
<br>
You interrupt <<=setup.getNpcName('npc_technician', 'first')>> and plead for her to dial down the volume a little bit, while testing your newest red face tone: Red sun. A few other guest have turned their heads your way, but soon continue with their matters.<br>
<br>
<<printThought "Well, considering she hit every target so far, one could argue she is right... a little bit... not that I had any choice in the matter... or did I?">><br>
<br>
"@@.npc_technician;Hey, I simply want to let you know, that's okay, you know? Everyone needs a hobby... or fetish... or both... at once. And yours happens to contain a lot of pink in the near future. Call me once you reach the outfit stage, okay? There's GOT to be a photo session!@@"
<<else>>
"@@.npc_technician;Hmm... your face tells me, that this was originally not your idea. So, there is a certain someone, or perhaps someones? In your life who knows of this as well and is guiding you along... at first you had my curiosity, but now you have my attention.@@"
<</if>>
<br><br>
<</if>>
She puts her hand on yours, which kinda moves aimless around the table searching for something to hold on to, since you're currently feeling like someone just pulled the rug out from underneath you.<br><br>
<<if !$scene.npcdateknowTrans>>
"@@.npc_technician;Hey, it's okay. Don't worry, seems like we share a certain hobby. You see <<=$player.first_name>>, I'm into cross-dressing as well.@@"<br>
<br>
<<printThought "Wait, what?">><br>
<br>
"@@.npc_technician;To be frank, I am not a woman, well, not biologically. Which brings me to a certain point,@@" she says while smiling at your embarrassment.
<<else>>
"@@.npc_technician;Hey, its okay. Don't worry, you already know, we share this certain hobby. I'm simply a few steps ahead of you. Which brings me to a certain point,@@" she says while smiling at your embarrassment.
<</if>>
<br><br>
"@@.npc_technician;No, I am not Sherlock Holmes with inhuman skill of deduction. I'd love to be. Well, maybe more Eurus or Irene... anyway, I use a simple program I wrote for my Smartphone which scans the surrounding area for RFID Tags. Most clothes still have theirs in them, they are simply deactivated after being sold, but contain an ID which can be cross-referenced with an online Database. I am not 100% sure if that's legal, but who cares, y'know?@@"<br>
<br>
She smiles at you in a moment frozen in time. You think she is expecting an answer of you, so you timidly nod.<br>
<br>
"@@.npc_technician;Anyway... about your little secret. You're among friends here. No maid in this maid cafe was born looking like this. Actually, that's the whole point of the Newtype IV. They're all cross-dressers, transitioning or fem boys with acquired tastes. Plus they're maids. Maids! Maids make everything look better, am I right? So you see, no reason to get nervous. You're a kindred spirit in some way or other, with a bunch of people in here.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smiles at you again, but different from before, a really friendly and sincere smile. For a second, you want to protest, and claim that you were forced into this outfit. But then you start thinking. You're not at work, and you're still wearing these clothes.
<<if $scene.npcdatepanties != 'cotton_panties' && (!setup.checkItemTag($scene.npcdatepanties,['modest']) || !setup.checkItemTag($scene.npcdatebra,['modest']) || !setup.checkItemTag($scene.npcdatestockings,['modest']) || ($scene.npcdategarterbelt != ""))>>
Not only that, you even went so far to buy your own clothes, because you wanted more.
<</if>>
Maybe... no, let's be honest, <<=setup.getNpcName('npc_technician', 'first')>> is right, you are starting to like wearing these things. Without saying a word, you simply again nod at her.<br>
<br>
While the two of you still smile at each other, a maid appears from the side and introduces herself with a hem. You realise you're still holding <<=ps(setup.getNpcName('npc_technician', 'first'))>> hand. Feeling like an anime rom-com reject, you hastily retract your arm.<br>
<br>
[<<moveTo "event_technician_cafe_1_3" "Focus on the Maid." 360>>]
<<else>>
<<if $scene.npcdatefirstdate>>
As you return your attention to <<=setup.getNpcName('npc_technician', 'first')>>, you realise she has moved a lot closer to you without you noticing, which startles you for a moment.<br>
<br>
<<if $scene.npcdateknowTrans>>
"@@.npc_technician;You know, you have my gratitude for keeping my "little" secret. It's not like I want to keep this a secret from everyone, but that doesn't mean everyone needs to know, either. I know it's not a big deal in this day and age, but as you might remember, that was not always the case. So thanks again.@@"<br>
<br>
You assure <<=setup.getNpcName('npc_technician', 'first')>> that her secret is safe with you.<br>
<br>
<<else>>
"@@.npc_technician;Look, I find you interesting, so I want a certain something not to stand between the two of us I'm a little different than your average girl... downstairs.@@"<br>
<br>
<<if(setup.getTotalValue('feminization')<=3)>>
<<printThought "Okay... that come out of nowhere...">>
<<else>>
<<printThought "Hmm... I already had a feeling... like that...">>
<</if>>
<br><br>
You assure <<=setup.getNpcName('npc_technician', 'first')>> that you have no problem with something like this at all. After all, we're in the middle of the 3rd age of enlightenment.<br>
<br>
<</if>>
<br><br>
"@@.npc_technician;So, then it might interest you, that no maid in this maid cafe was assigned female at birth. Actually, that's the whole point of the Newtype IV. They're all cross-dressers, fem-boys, enbys or trans like me. But they're all of them maids. Maids! Maids make everything look better, am I right?@@"<br>
<br>
While the two of you still talk to each other a maid appears from the side and introduces herself with a "@@.npc_maid;Hem.@@"<br>
<br>
[<<moveTo "event_technician_cafe_1_3a" "Focus on the Maid." 360>>]
<<else>>
You chat for a while until your coffees arrive.<br>
<br>
[<<moveTo 'event_technician_cafe_1_3a' "Continue." 360>>]
<</if>>
<</if>>
</div>/*#
#desc: uneventful coffee date with technician
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes = 0>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
You order a latte macchiato, as usual, as you still find yourself staring with increasing interest at the various maids as you wonder how they identify. There are some where it is more obvious then others, but only if you know where to look, while others... you would have never given a first or even second glance in any other context.<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> arrives with a smile <<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>"@@.npc_maid;Your latte macchiato, sir.@@"<<else>>"@@.npc_maid;Your latte macchiato, mademoiselle.@@"<</if>> She turns to <<=setup.getNpcName('npc_technician', 'first')>>, the smile disappearing from her face as she places "The Cofferasque" on the table. "@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, madame.@@"<br>
<br>
<<if setup.getTotalValue("makeup") >= 15 && ["expertmakeup","egirl","camgirl","moviestar","ultimatebimbo","qtpie","sissy_doll"].includes(setup.getCurrentMakeup()) && $player.makeup.messed < 25 && !State.hasPlayed("event_technician_cosplay_makeup_1") && State.hasPlayed("event_technician_private_game_quest_5")>>
[<<moveTo "event_technician_cosplay_makeup_1" "Continue." 300>>]
<<elseif $npc_technician.flags.hotties.stood_up>>
[<<moveTo "event_technician_hotties_1_no" "Continue." 300>>]
<<else>>
[<<moveTo "event_technician_cafe_1_4" "Continue." 1300>>]
<</if>>
</div>/*#
#desc: first technician date, coffee arrives, meet maid
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.profile = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
<<if $scene.npcdatefirstdate>>
<<if $scene.npcdatereactnamechange>>
The maid smiles at you and places your coffee next to you while saying, "@@.npc_maid;Your latte macchiato, madame.@@"<br>
<br>
<<printThought "Madame? It is going to take some time to get used to this...">>
<<else>>
The maid smiles at you and places your coffee next to you while saying, "@@.npc_maid;Your latte macchiato, <<if $player.sec_style.body.name=="">>sir<<else>>madame<</if>>.@@"
<</if>>
<br><br>
Then she turns to <<=setup.getNpcName('npc_technician', 'first')>> and the smile on her face suddenly fades away like a long forgotten memory, and her expression turning cold as stone. She inhales through her nose and places a much larger cup on the table.<br>
<br>
"@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, your Majesty, protector of the realm, first of her name, the unchosen, Lady of Adventure, Empress of both dungeons and dragons, the hidden eye, Mistress of dice and minifig, by whose divine grace we mortals game.@@"<br>
<br>
"@@.npc_technician;Nice to see you too, <<=setup.getNpcName('npc_maid', 'first')>>.@@"<br>
<br>
After taking an uncomfortably long sip from her tremendous cup of coffee, <<=setup.getNpcName('npc_technician', 'first')>> turns towards you and explains: "@@.npc_technician;This is <<=setup.getNpcName('npc_maid', 'first')>>, even though it does not always seem that way, she's a good old... ahem... good friend of mine, and member of my role play group. If you ever want to order something very complex, she's the right person to talk to.@@"<br>
<br>
The look on <<=ps(setup.getNpcName('npc_maid', 'first'))>> face says enough for your taste. You reassure her that your taste in coffee is very straightforward and in no way complex. Your response is rewarded with a cute maid-smile.<br>
<br>
<<if $player.sec_style.body.name != "">>
"@@.npc_maid;You must be <<=$player.original_first_name>>. <<=setup.getNpcName('npc_technician', 'first')>> told me that you two were meeting here today—@@"<br>
<br>
"@@.npc_technician;That's <<=$player.first_name>>, actually!@@" <<=setup.getNpcName('npc_technician', 'first')>> quickly interjects.<br>
<br>
The maid goes from a look of horror to glaring daggers at <<=setup.getNpcName('npc_technician', 'first')>> as the latter quickly explains. "@@.npc_technician;Sorry, sorry — I literally didn't know myself until a few minutes ago, I should have brought it up or something I apologise to the both of you and—@@"<br>
<br>
It's your turn to jump in and assure <<=setup.getNpcName('npc_technician', 'first')>> that everything is fine and you understand things are going a bit fast...<br>
<br>
There's a figurative sigh of relief as the tension releases and <<=setup.getNpcName('npc_maid', 'first')>> continues on. "@@.npc_maid;Hey, no problem, kid — I mean we girls gotta look out for each other and <<=$player.first_name>>? Heckin' great... anyway, since I knew the two of you were coming I prepared <<=ps(setup.getNpcName('npc_technician', 'first'))>> monstrosity of a drink in advance.@@"
<<else>>
"@@.npc_maid;You must be <<=$player.first_name>>. <<=setup.getNpcName('npc_technician', 'first')>> told me that you two were meeting here today, so I prepared her monstrosity of a drink in advance.@@"
<</if>>
<br><br>
"@@.npc_technician;I call it Cofferasque, strong enough to wake any beast, it has a Challenge Rating of at least...@@"<br>
<br>
"@@.npc_maid;Shut up, <<=setup.getNpcName('npc_technician', 'first')>>!@@"<br>
<br>
"@@.npc_technician;... kay...@@"<br>
<br>
"@@.npc_maid;Anyway, gotta go, other customers are waiting. You two have a nice afternoon.@@"<br>
<br>
<<else>>
<<=setup.getNpcName('npc_maid', 'first')>> arrives with her typical lack of smile as she places the monstrosity called "The Cofferasque" on the table. "@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, madame.@@"<br>
<br>
<</if>>
You spend some time, listening to <<=setup.getNpcName('npc_technician', 'first')>>, about a lot of things. How make up might change your whole appearance, why role play, the non-sexual type, is like the best pastime ever and other things before you decide to steer the conversation into a different direction.<br>
<br>
<<if setup.getTotalValue("feminization") > 5 && $player.sec_style.clothing.makeup == "">>
You think about what <<=setup.getNpcName('npc_technician', 'first')>> said as you glance around the room, unable to miss the realise a major difference between yourself and the others — both the lovely lady in front of you, and all of the maids — how their beauty has been enhanced by makeup.<br>
<br>
[<<moveTo "event_enthusiast_makeup_1" 'Ask <<=setup.getNpcName("npc_technician","first")>> if she could help you learn to do makeup?' 60>>]<br>
<</if>>
<<if $npc_technician.flags.hotties.stood_up>>
[<<moveTo "event_technician_hotties_1_no" "Continue." 300>>]
<<else>>
[<<moveTo "event_technician_cafe_1_4" "Continue." 600>>]
<</if>>
</div>/*#
#desc: first technician date, drink arrives + meet maid (no female clothing variant)
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.profile = true>>
<<set $player.flags.coffee.lastcoffee=$now>>
<<applyStress -5>>
<<applyFatigue -15>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
<<if $scene.npcdatefirstdate>>
The maid smiles at you and places your coffee next to you while saying, "@@.npc_maid;Your latte macchiato, sir.@@" Then she turns to <<=setup.getNpcName('npc_technician', 'first')>> and the smile on her face suddenly fades away like a long forgotten memory, and her face turns stone cold. She inhales and puts a much larger cup on the table.<br>
<br>
"@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, your Majesty, protector of the realm, first of her name, the unchosen, Lady of Adventure, Empress of both dungeons and dragons, the hidden eye, Mistress of dice and minifig, by whose divine grace we mortals game.@@"<br>
<br>
"@@.npc_technician;Nice to see you too, <<=setup.getNpcName('npc_maid', 'first')>>.@@"<br>
<br>
After taking an uncomfortable long sip from her tremendous cup of coffee, <<=setup.getNpcName('npc_technician', 'first')>> turns toward you and explains: "@@.npc_technician;This is <<=setup.getNpcName('npc_maid', 'first')>>, even though it does not always seem that way, she's an good old... ahem... good friend of mine, and member of my role play group. If you ever want to order something very complex, she's the right person to talk to.@@"<br>
<br>
The look on <<=ps(setup.getNpcName('npc_maid', 'first'))>> face says enough for your taste. You reassure her that your taste in coffee is way more straight forward and less complex. Your straightforwardness is rewarded with a smile.<br>
<br>
"@@.npc_maid;You must be <<=$player.first_name>>. <<=setup.getNpcName('npc_technician', 'first')>> told me that she invited you to meet her here today, so I prepared her monstrosity of drink in advance.@@"<br>
<br>
"@@.npc_technician;I call it Cofferasque, it has a Challenge Rating of at least...@@"<br>
<br>
"@@.npc_maid;Shut up, <<=setup.getNpcName('npc_technician', 'first')>>!@@"<br>
<br>
"@@.npc_technician;... kay...@@"<br>
<br>
"@@.npc_maid;Anyway, gotta go, other customers are waiting. You two have a nice afternoon.@@"<br>
<br>
[<<moveTo "event_technician_cafe_1_3b" 'Keep chatting with <<=setup.getNpcName("npc_technician", "first")>>.' 300>>]
<<else>>
<<=setup.getNpcName('npc_maid', 'first')>> arrives with her typical lack of smile as she places the monstrosity called "The Cofferasque" on the table. "@@.npc_maid;Your venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, madame.@@"<br>
<br>
You spend the rest of the afternoon together with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe. She gives you some tips on data security and why role play, the non-sexual type, is like the best pastime ever. You talk a little bit about your old workplace and how everyone is doing. She teases you at least <<=($npc_technician.relationship.coffee_dates+5)>> times if you want to join her role play group and narrates to you about times of great adventure, when the oceans sank Atlantis. Eventually, you both decide to leave and pay your separate bills.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes && $player.sec_style.body.name == "">>
"@@.npc_technician;Oh, so, like... one last FYI tip. What with your new look and all you may be thinking of re-imagining other stuff about yourself. Like, well, your name. Just wanted to let you know that it's actually SUPER easy to take care of online.@@"<br>
<br>
You thank her for the tip and get ready to go.<br>
<br>
<</if>>
[<<moveTo "room_mall" "Pay 5 Credits and leave." 180 "<<addCredits -5>>">>]
<</if>>
</div>/*#
#desc: end of first date with technician
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.coffee.lastcoffee=$now>>
<<applyStress -5>>
<<applyFatigue -15>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You spend the rest of the afternoon together with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe. She gave you some tips on data security and why role play, the non-sexual type, is like the best pastime ever. You talk a little bit about your old workplace and how everyone is. She teases you at least 5 times if you want to join her role play group and narrates to you about times of great adventure, like when the oceans sank Atlantis.<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.asked_for_help && !$player.locations.hotties_game>>
As she finally starts to wind down, she gets a twinkle in her eye as she smiles at you.<br>
<br>
"@@.npc_technician;So, I was thinking... I really appreciate that when you were in a bind you trusted me to help you out. I feel a bit bad that I couldn't bail you out completely so I wanted to give you a present, what's your gamerID online?@@"<br>
<br>
[<<moveTo "event_technician_cafe_give_game" "Tell her your ID." 60 "<<set $scene.keepTalking=false>>">>]
<<else>>
Finally it is time to leave and pay your separate bills.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes && $player.sec_style.body.name == "">>
"@@.npc_technician;Oh, so, like... one last FYI tip. What with your new look and all you may be thinking of re-imagining other stuff about yourself. Like, well, your name. Just wanted to let you know that it's actually SUPER easy to take care of online.@@"<br>
<br>
You thank her for the tip and get ready to go.<br><br>
<</if>>
[<<moveTo room_mall "Pay 5 Credits and leave." 180 "<<addCredits -5>>">>]
<</if>>
</div>/*#
#desc: free talk part of technician date
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.minDiff($now,$player.flags.coffee.lastcoffee)>60>>
<<set $player.flags.coffee.lastcoffee=$now>>
<<applyStress -5>>
<<applyFatigue -15>>
<</if>>
<<set _nextTheme = setup.getNextForcedTheme('npc_technician')>>
<<if _nextTheme != "">>
<<set $scene.returnPassageTheme = "event_technician_cafe_1_4">>
<<set $scene.returnPassageList = "event_technician_cafe_1_4_details">>
<<set $scene.currentNpcTheme = "_forced">>
<<initRoom>>
<<moveTo _nextTheme>>
<</if>>
<<if $scene.npc_datethemes >= 3 && !($player.sec_style.clothing.nails == "" && $player.sec_style.clothing.makeup != "" && $player.sec_style.clothing.maid != "" && $npc_technician.flags.rpg_campaign.session > 0)>>
<<initRoom>>
<<moveTo 'event_technician_cafe_1_4_leave'>>
<</if>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if (setup.getNpcThemes('npc_technician')>0) && ($scene.npc_datethemes < 3) && $now.getUTCHours() < 18>>
You continue to enjoy a relaxing afternoon with <<=setup.getNpcName('npc_technician', 'first')>> in this cozy maid cafe, and ponder what to talk about.<br>
<br>
<<switch $scene.npc_datethemes>>
<<case 0>>
"@@.npc_technician;So, where do you want to lead our discussion? Does it have something to do with Orcs? Oh I hope it has something to do with Orcs... or maybe Elves... or space goats...@@"<br>
<br>
<<case 1 >>
"@@.npc_technician;Hmmm... before you continue, I might go for another Cofferasque, how about you? You want to try one? Your face says no, but your coronary vessels also say no. Okay, your loss.@@"<br>
<br>
<<case 2>>
"@@.npc_technician;Good thing I got my heart reinforced, I am not 100% sure what the recommended dose for caffeine is per day, but I am pretty sure that thing destroys it by at least 1524%.@@"<br>
<br>
<</switch>>
<<printNpcThemeCategory
'npc_technician'
'event_technician_cafe_1_4'
'event_technician_cafe_1_4_details'
>>
[<<moveTo "event_technician_cafe_1_4_leave" "You think you've had enough coffee for today.">>]
<<elseif $player.sec_style.clothing.nails == "" && $player.sec_style.clothing.makeup != "" && $player.sec_style.clothing.maid != "" && $npc_technician.flags.rpg_campaign.session > 0>>
The conversation fades as you finish your drinks and find yourselves holding hands across the table.<br>
<br>
[<<moveTo "event_nails_obedient_1" "Continue." 180>>]
<<else>>
You spend the rest of the afternoon together with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe, and enjoy your time together. Eventually, you both decide to leave and pay your separate bills.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes && $player.sec_style.body.name == "">>
"@@.npc_technician;Oh, so, like... one last FYI tip. What with your new look and all you may be thinking of re-imagining other stuff about yourself. Like, well, your name. Just wanted to let you know that it's actually SUPER easy to take care of online.@@"<br>
<br>
You thank her for the tip and get ready to go.<br>
<br>
<</if>>
[<<moveTo "room_mall" "Pay 5 Credits and leave." 180 "<<addCredits -5>>">>]
<</if>>
</div>/*#
#desc: technician theme details
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.npc_datethemes >= 3>>
<<initRoom>>
<<moveTo 'event_technician_cafe_1_4_leave'>>
<</if>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;So, what do you want to talk about, <<=$player.first_name>>?@@"<br>
<br>
<<printNpcThemeDetails
'npc_technician'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
</div>/*#
#desc: finish drinking with technician
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.sawyouinfemaleclothes && $player.sec_style.body.name == "">>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<</if>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You spend some more time with <<=setup.getNpcName('npc_technician', 'first')>> in the cafe, and enjoy your time together. Eventually, you both decide to leave and pay your separate bills.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes && $player.sec_style.body.name == "">>
"@@.npc_technician;Oh, so, like... one last FYI tip. What with your new look and all you may be thinking of re-imagining other stuff about yourself. Like, well, your name. Just wanted to let you know that it's actually SUPER easy to take care of online.@@"<br>
<br>
You thank her for the tip and get ready to go.<br>
<br>
<</if>>
<<if !$npc_technician.flags.spin && $npc_technician.flags.reactnamechange>>
"@@.npc_technician;So... <<=$player.first_name>>@@" She grins as she says your new name "@@.npc_technician;Oh, I just love your new name so much, I was thinking... maybe I could get you something in celebration?<<if !$scene.npcdatereactnamechange>> I know it's technically been a while, but<</if>> I saw just the cutest dress the other day, and since we're already at the mall...@@"<br>
<br>
[<<moveTo "event_technician_spin_1" "Sure, that sounds fun!" 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_spin_1" "Not today." 60 "<<set $scene.accept=false>>">>]
<<elseif $npc_technician.flags.dataservice_encounter.asked_for_help && !$player.locations.hotties_game>>
As you're walking towards the door, she gets a twinkle in her eye as she smiles at you.<br>
<br>
"@@.npc_technician;So, I was thinking... I really appreciate that when you were in a bind you trusted me to help you out. I feel a bit bad that I couldn't bail you out completely so I wanted to give you a present, what's your gamerID online?@@"<br>
<br>
[<<moveTo "event_technician_cafe_give_game" "Tell her your ID." 60 "<<set $scene.keepTalking=false>>">>]
<<elseif $player.sec_style.clothing.nails == "" && $player.sec_style.clothing.makeup != "" && $player.sec_style.clothing.maid != "" && $npc_technician.flags.rpg_campaign.session > 0>>
The conversation fades as you finish your drinks and find yourselves holding hands across the table.<br>
<br>
[<<moveTo "event_nails_obedient_1" "Continue." 180>>]
<<elseif $fetish.cum && $npc_technician.relationship.kinks.cum && $npc_technician.flags.dataservice_encounter.handjob_finish == "mouth" && !State.hasPlayed("event_technician_cum_kiss_1")>>
[<<moveTo "event_technician_cum_kiss_1" "Pay 5 Credits and leave." 180 "<<addCredits -5>>">>]
<<else>>
[<<moveTo "room_mall" "Pay 5 Credits and leave." 180 "<<addCredits -5>>">>]
<</if>>
</div>/*#
#desc: apologise for looking up technician's skirt at start of game
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<<set $scene.npc_datethemes += 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Blushing in embarrassment, you apologise for sneaking a glance up <<=ps(setup.getNpcName('npc_technician', 'first'))>> skirt when you were supposed to be massaging her feet.<br>
<br>
She smiles and shakes her head. "@@.npc_technician;Don't worry about it, as I told you at the time, I am not ashamed about who I am and I trust you to keep a secret. I do appreciate your honesty in making an apology, but really, it's fine. A cutie like you can peek up my skirt any day!@@"<br>
<br>
Somehow you manage to blush even harder before quickly switching topics.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: technician gives you + tells you about HOTTIES game (first date/you didn't look up her skirt variant)
#status: FINISHED 0.4.0.0
#ignore_spell: sl
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.locations.hotties_game = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You tell her your id as her fingers race over her phonescreen.<br>
<br>
"@@.npc_technician;Cool, and you don't have it yet! I just sent you a copy of one of my favourite online games — it's called Heroes of Time: The Infinite Eternal Struggle, you play it before?@@"<br>
<br>
It sounds somewhat familiar, but <<=setup.getNpcName("npc_exgirlfriend", "first")>> wasn't really into video games so you mostly stopped keeping up with new releases. You shake your head.<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.asked_for_help>>
"@@.npc_technician;It's sort of a MOBA-type thing, but with a couple of twists. It has a lot more PvE raid-type options and the group content ranges from 2-player co-op on up. I really like the way it's balanced around teamwork and, well, I recall we made a pretty good team together so I thought it'd be fun to join up online!@@"<br>
<br>
<<if $npc_technician.flags.handjob_finish == 'mouth'>>
<<printThought "Team? I sat under your desk sucking you off like a cock-hungry slave...">>
<<elseif $npc_technician.flags.handjob_finish == 'fail' || $npc_technician.flags.handjob_finish == 'hand'>>
<<printThought "Team? I sat under your desk jerking you off like your personal sex slave...">>
<<else>>
<<printThought "Team? I sat under your desk like a slave massaging your feet while you worked...">>
<</if>>
<br><br>
<<else>>
"@@.npc_technician;It's sort of a MOBA-type thing, but with a couple of twists. It has a lot more PvE raid-type options and the group content ranges from 2-player co-op on up. I really like the way it's balanced around teamwork and I'd love to "play with you" sometime.@@"
<</if>>
She continues gushing about the game for a few minutes, and it honestly sounds pretty cool, you promise to login sometime to play together.<br>
<br>
"@@.npc_technician;Great!@@" she says with a wink "@@.npc_technician;I can totally show you the ropes and be your tank-sama... hmm... or maybe I could be your heal sl-, I mean, support? Either way, I'm sure we'll have fun!@@"<br>
<br>
<<if $scene.keepTalking>>
<<printNpcThemeReturn 600>>
<<else>>
[<<moveTo "room_mall" "Pay 5 Credits and leave." 180 "<<addCredits -5>>">>]
<</if>>
</div>/*#
#desc: technician comments on your playing HOTTIES without her
#status: FINISHED 0.7.10.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.hotties.stood_up = false>>
<<set $npc_technician.flags.hotties.times_stood_up += 1>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;So,@@" <<=setup.getNpcName('npc_technician', 'first')>> states with a frowns. "@@.npc_technician;I saw you online the other day playing and you shot me down rather than join up! I thought we were a team!@@"<br>
<br>
You hurriedly reassure her that it was nothing personal, but fortunately she seems to be teasing you rather than actually upset.<br>
<br>
"@@.npc_technician;It's cool, I mean, I certainly know how addictive HOTTIES! can be, still, I introduced you to the thing! Hit me up next time so we can play together!@@"<br>
<br>
[<<moveTo "event_technician_cafe_1_4" "Continue." 60>>]
</div><<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_0'
5
'event_technician_theme_bodymods'
true
>>
<<addNpcTheme 'npc_technician' 'boiless' 'theme_technician_food_0'
5
'event_technician_cafe_lunchdate'
false
>>/*#
#desc: npc_technician mentions makeup
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('technician_cosplay_invite')>>
<<removeEvent 'technician_cosplay_invite'>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You've just put in your drink orders when <<=setup.getNpcName("npc_technician","first")>> looks at you and grins, her eyes tracing over your face with such excitement you blush a little.<br>
<br>
<<set _themeId = setup.findThemeId('npc_technician', 'crossdressing', 'theme_technician_crossdress_2')>>
"@@.npc_technician;Sorry to stare but... well, I was just taking in your
<<switch setup.getCurrentMakeup()>>
<<case "expertmakeup">>
goth glam
<<case "egirl">>
egirl excellence
<<case "camgirl">>
bold and brash
<<case "moviestar">>
absolutely GORGEOUS
<<case "ultimatebimbo">>
jaw-droppingly sexy
<<case "qtpie">>
heckin' cute
<<case "sissy_doll">>
totally sweet
<<default>>
ERROR: unexpected makeup: <<=setup.getCurrentMakeup()>>
<</switch>>
face. I mean, you've always been cute, even before but ever since <<if -1 != _themeId && $npc_technician.themes.crossdressing[_themeId].done>>I gave you that lesson in makeup<<else>>you started wearing makeup<</if>>...@@" She theatrically licks her lips. "@@.npc_technician;Well, you've gotten fantastic at it<<if $player.makeup.template == "">>, and yes, I can tell that you're using permanent... but I can also tell that's for convenience, not that you don't have plenty of skill to do it yourself<<else>>...<</if>> though...@@" She grins, "@@.npc_technician;well, I was just thinking that, as impressive as you are at accentuating your own features, the real final tier of makeup skill would be copying someone else's — that's right, I'm talking cosplay makeup!<<if State.hasPlayed("event_cosplay_root")>> You know, I read something about them doing a competition at the cosplay convention, if you wanted to try, sometime.<<else>> You know, there's that convention downtown... they've even got a competition, I hear...<</if>>@@"<br>
<br>
[<<moveTo "event_technician_cosplay_makeup_2" "That sounds great!" 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_technician_cosplay_makeup_2" "Maybe some other time." 60 "<<set $scene.agree=false>>">>]
</div>/*#
#desc: agree to cosplay convention for makeup
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
You tell <<=setup.getNpcName("npc_technician","first")>> that learning cosplay makeup sounds fun and she grins.<br>
<br>
"@@.npc_technician;That's one of the things I love about you! Always up for whatever — especially if it's fab and fem!@@"<br>
<br>
She whips out her phone, fingers dancing over the keyboard. "@@.npc_technician;I'm going to send you a couple tutorial links — check them out and, after if you think you're ready, we can put your skills to the test at the convention...@@"
<<else>>
You thank <<=setup.getNpcName("npc_technician","first")>> for the compliment, but explain that you're pretty happy with your makeup situation and skills.<br>
<br>
"@@.npc_technician;Sure, sure, sure... but if you ever decide to take the challenge, well... I'll just go ahead and text you some tutorials that would help take your game up to the top level.@@"
<</if>>
<br><br>
She finishes texting you just as <<=setup.getNpcName("npc_maid","first")>> appears with your drinks, making a theatrical bow as she places things on the table and scoots off to another customer.<br>
<br>
"@@.npc_technician;Mmm, Cofferasque... now, what else has been going on with you?@@"<br>
<br>
[<<moveTo "event_technician_cafe_1_4" "Continue." 600>>]
</div>/*#
#desc: rpg_warlock invites you and technician on double date
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _time = setup.getNextDayOfWeek($now, 1, 18, 30, false)>>
<<set $scene.hasPlans = !setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_rpg_warlock") setup.charImage("npc_rpg_dude")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_rpg_warlock","first")>> lingers at the door and then looks back with a grin. "@@.npc_rpg_warlock;Say, now that you've got a collared slave of your own,@@" she runs a finger along <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> collar to remind everyone of just who HER slave is. "@@.npc_rpg_warlock;How do you feel about a double date to <<printShopName 'sex_club'>>? Say... Monday, nice way to kick off the week?@@"<br>
<br>
<<if $scene.hasPlans>>
You explain that you already have plans for Monday evening.<br>
<br>
"@@.npc_rpg_warlock;Late shift at work?@@" She winks. "@@.npc_rpg_warlock;Oh well, some other time then. Catch you two love-birds later!@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> gives a quick tug on <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> collar and the pair departs.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> turns to you with a grin.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<printThought 'Time to "reward" the DM for a game well run...'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Cleanup be damned, you've got a girlfriend to snog." 180>>]<br>
<<else>>
<<printThought 'I bet she would appreciate me staying to "help."'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to assist with cleanup." 180>>]<br>
<</if>>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
<<else>>
<<=setup.getNpcName("npc_technician","first")>> gently brushes your head and looks at you with a smile. "@@.npc_technician;Well, Princess, what do you think?@@"<br>
<br>
[<<moveTo 'event_sexclub_date_technician_dom_invite_2' 'That sounds great!' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_dom_invite_2' 'Not this week.' 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: agree to double date with rpg_warlock and technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 20, 0, false)>>
<<addTaskById "technician_club_dom" _nextDate>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_rpg_warlock") setup.charImage("npc_rpg_dude")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You look back at your <<=setup.getNpcName("npc_technician","title")>> and nod. <<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Sounds like a plan, we'll see you Monday!@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> pumps her elbow. "@@.npc_rpg_warlock;Haha! Finally I'm going to get you out, oh, the four of us are going to have SUCH a great time. And don't worry about outfits... I've got a PERFECT idea for the both of you.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> winks and, with a finger through <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> collar, leaves the flat.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> smiles at you. "@@.npc_rpg_warlock;Well, that'll be something fun to look forward to, but right now, we have the rest of the night together...@@"
<<else>>
You shake your head and <<=setup.getNpcName("npc_technician","formal")>> smiles diplomatically. "@@.npc_technician;I think we'll have to pass for this week, maybe some other time.@@"<br>
<br>
"@@.npc_rpg_warlock;Sounds good! I've waited this long with you refusing to be the "third wheel" for a trip to the club... now that you've got such a cute slave I'm not going to give up!@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> gives a quick tug on <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> collar and the pair departs.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> turns to you with a grin.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<printThought 'Time to "reward" the DM for a game well run...'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Cleanup be damned, you've got a girlfriend to snog." 180>>]<br>
<<else>>
<<printThought 'I bet she would appreciate me staying to "help."'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to assist with cleanup." 180>>]<br>
<</if>>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
</div>/*#
#desc: fail to meet technician at club
#status: RELEASED 0.8.6.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_technician' 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<printThought "Shit! I was supposed to meet her at <<printShopName 'sex_club'>> for a double date tonight!">><br>
<br>
"@@.npc_technician;Hey <<=$player.first_name>>... we're at the club, but... no sign of you? You get held back late at work? Well, no matter, we'll reschedule for another time and I'll let you get back to what you were doing. Love you!@@"<br>
<br>
You don't get a chance to respond to her assumption before she hangs up... though you still feel terrible for missing your date.<br>
<br>
<<printThought "Dammit.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet technician and friends at sex club
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
You arrive at <<printShopName 'sex_club'>> to find your friends already waiting. You gasp in awe seeing them already dressed to go in — <<=setup.getNpcName("npc_technician","formal")>> dressed as a kinky latex nun, <<=setup.getNpcName("npc_rpg_warlock","first")>> as a red-skinned, leather-clad demoness complete with horns poking out from her hair... and <<=setup.getNpcName("npc_rpg_dude","first")>> is in a latex version of something you could easily wear to work — tight pencil skirt and blouse; and a prominent collar that leashes <<him npc_rpg_dude>> to <<his npc_rpg_dude>> girlfriend.<br>
<br>
"@@.npc_rpg_warlock;Welcome!@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> states with a grin as she holds out a bag. "@@.npc_rpg_warlock;If you could just get changed, we'll get this show on the road.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> pauses, noticing that your attention is stuck staring at <<=setup.getNpcName("npc_rpg_dude","first")>>. <<if $npc_rpg_dude.fem>>She looks like she could belong as a secretary to one of your company's executives<<else>>He's doing quite a good job of passing as a sexy secretary<</if>>. <<=setup.getNpcName("npc_rpg_warlock","first")>> grins. "@@.npc_rpg_warlock;You like my pet? <<He npc_rpg_dude>> really is such a good <<boy npc_rpg_dude>>friend, even happy to indulge my desire for <<him npc_rpg_dude>> to <<if $npc_rpg_dude.fem>>dress up for me<<else>>be my good girl<</if>> on occasion... and tonight? Tonight is one of those occasions. Now hurry and get changed! <<=setup.getNpcName("npc_technician","Sister")>> here is quite lonely!@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> grins and winks at you.<br>
<br>
[<<moveTo 'event_sexclub_date_technician_dom_2' 'Take the bag and shuffle off to the changing rooms.' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_dom_2' "You changed your mind. You don't want to do this tonight." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: change for technician dom sexclub
#status: RELEASED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem 'rpg_succubus_demon_hood'>>
<<addItem 'rpg_succubus_boots'>>
<<addItem 'catsuit_latex_headless_club_black'>>
<<if !setup.checkItemOwned('rpg_succubus_pentagram_harness')>>
<<addItem 'rpg_succubus_pentagram_harness'>>
<<else>>
<<if setup.inWardrobe('rpg_succubus_pentagram_harness')>>
<<wardrobeToItem 'rpg_succubus_pentagram_harness'>>
<</if>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<<else>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You take the offered bag and head for the changing room as your friends smile on in encouragement.<br>
<br>
Inside the changing room you open the bag to find the full succubus outfit <<=setup.getNpcName("npc_rpg_warlock","first")>> "loaned" you for game... well, minus the arm restraints, but plus a matching latex catsuit and a pair of hoof boots...<br>
<br>
<<if setup.checkItemWorn('rpg_succubus_demon_hood') && setup.checkItemWorn('rpg_succubus_pentagram_harness') && setup.checkItemWorn('rpg_succubus_boots') && setup.checkItemWorn('catsuit_latex_headless_club_black')>>
[<<moveTo 'event_sexclub_date_technician_dom_3' 'Demonically step forth.' 60 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
<<if $options.ezchange>>
[<<moveTo 'event_sexclub_date_technician_dom_3' 'Get changed and demonically step forth.' 60 "<<wearItem 'rpg_succubus_demon_hood' true>><<wearItem 'rpg_succubus_pentagram_harness' true>><<wearItem 'rpg_succubus_boots' true>><<wearItem 'catsuit_latex_headless_club_black' true>><<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[@@.link_locked;I need to be wearing the full ensemble — catsuit, boots, harness, hood, boots.@@]
<</if>>
<</if>>
<<else>>
Nervously you sidle over to <<=setup.getNpcName("npc_technician","first")>> and whisper that you aren't really feeling this tonight.<br>
<br>
Draping a protective arm around your shoulder she turns to her friends. "@@.npc_technician;Sorry but... we're feeling a bit under the weather, going to have to take a rain check on this.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> pouts theatrically, but nods. "@@.npc_rpg_warlock;Very well. But I'll get you to come with us someday, mark my words!@@"<br>
<br>
The two of them head into the club and <<=setup.getNpcName("npc_technician","first")>> gives you a hug.<br>
<br>
"@@.npc_technician;Sorry you're not feeling it tonight, but it happens. I'll see you around.@@" She gives you a kiss and then heads for the changing rooms.<br>
<br>
[<<moveTo 'room_student_quarter' "Leave." 180>>]
<</if>>
</div>/*#
#desc: get leashed for technician club date
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'rpg_succubus_leash'>>
<<wearItem 'rpg_succubus_leash' true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
You emerge from the changing room to a whistle from the guard at the desk and smiles from your friends.<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>>... or is that <<=setup.getNpcName("npc_technician","Sister")>>? Either way, she approaches you with a grin and clips a leash to your collar. "@@.npc_technician;There we go, my wonderful slave. No getting into demonic mischief tonight, you Goddess-Empress is here to show you the proper way.@@"<br>
<br>
You glance towards <<=setup.getNpcName("npc_rpg_warlock","first")>> and her demonic costume but <<=setup.getNpcName("npc_technician","Sister")>> merely tugs on your leash and grins. "@@.npc_technician;Silly — you know that there are different factions in hell, just because you are a slave does not mean all of your demonic brethren are, as well. So do not you worry tonight, you have two Dommes ready to show you... and this over-ambitious mortal,@@" She adds, with a nod towards <<=setup.getNpcName("npc_rpg_dude","first")>> "@@.npc_technician;The PROPER way of things. Now come, we have an exciting night ahead!@@"<br>
<br>
[<<moveTo 'event_sexclub_date_technician_dom_4' 'Follow your <<=setup.getNpcName("npc_technician","title")>>.' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_dom_4' "You changed your mind. You don't want to do this tonight." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: get leashed for technician club date
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'very' $EXPOSED>>
<<else>>
<<include "technicianClubDomRemoveAll">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<<else>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You and your friends step into <<printShopName 'sex_club'>> and immediately garner some glances of attention. Unsurprising, given that with two demonesses, a latex secretary and a nun you're covering quite the fetish range. After a few moments of basking in the initial attention things move and <<=setup.getNpcName("npc_rpg_warlock","first")>> directs the group to one side to plan out your next move.<br>
<br>
"@@.npc_rpg_warlock;Alright, so... welcome to <<printShopName 'sex_club'>>. I figure we should do the full tour — hit the bar, the play area, the dance floor... and finish up by taking in the night's stage show. Beyond that, though... well, I'll leave it up to you two noobs.@@"<br>
<br>
She winks as <<=setup.getNpcName("npc_technician","first")>> blisters at the phrase before turning to you. "@@.npc_technician;So, my pet, what do your demonic senses say? Where should we venture first?@@"<br>
<br>
<<include "technicianDomDateChoices">>
<<else>>
You look down in shame as you state that, actually... you don't think you're ready for a night in public being cavorted around as a demonic slave.<br>
<br>
Immediately <<=setup.getNpcName("npc_technician","first")>> is wrapping you in a comforting embrace. "@@.npc_technician;It's okay, it's okay. Sometimes things seem like a better idea in your head than in reality. Come on, let's get you changed and you can head home, okay?@@" She turns to her friends. "@@.npc_technician;You can go on without us, maybe some other night?@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> nods smiling and waving good-bye as she grabs her slave's leash. "@@.npc_rpg_warlock;Guess it'll just be you and me tonight... come on, it's not right for you to be strutting around with a bottom that hot without getting it spanked...@@" They disappear into the club while <<=setup.getNpcName("npc_technician","first")>> helps you change back into your street clothes and kisses you good-night.<br>
<br>
[<<moveTo 'room_student_quarter' "Leave." 180>>]
<</if>>
</div><<removeItem 'rpg_succubus_pentagram_harness' true>>
<<if $npc_technician.flags.rpg_campaign.session > 6 && !$npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[7]>>
<<deleteItem 'rpg_succubus_pentagram_harness'>>
<</if>>
<<removeItem 'rpg_succubus_leash' true>>
<<deleteItem 'rpg_succubus_leash'>>
<<removeItem 'rpg_succubus_demon_hood' true>>
<<deleteItem 'rpg_succubus_demon_hood'>>
<<removeItem 'rpg_succubus_boots' true>>
<<deleteItem 'rpg_succubus_boots'>>
<<removeItem 'catsuit_latex_headless_club_black' true>>
<<deleteItem 'catsuit_latex_headless_club_black'>>
<<useClothSetPop 'tmp'>><<if $scene.bar>>
[@@.link_locked;You've already gotten a drink at the bar.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_technician_dom_5_bar_1" "Head for the bar." 60>>]<br>
<</if>>
<<if $scene.play>>
[@@.link_locked;You've already spent time in the play area.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_technician_dom_5_play_1" "See if you can have some fun in the play area." 60>>]<br>
<</if>>
<<if $scene.dance>>
[@@.link_locked;You've already hit the dance floor.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_technician_dom_5_dance_1" "Check out the dance floor." 60>>]<br>
<</if>>
<<if $scene.bar && $scene.play && $scene.dance>>
[<<moveTo "event_sexclub_date_technician_dom_6" "Something is happening on-stage..." 600>>]
<</if>>
[<<moveTo "event_sexclub_date_technician_dom_leave" "You think you're done for the night." 600>>]/*#
#desc: leave technician club dom date early
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "technicianClubDomRemoveAll">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_nun")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> that you're ready to go. A few moments of discussion with her friends and <<=setup.getNpcName("npc_technician","first")>> is leading you back to the changing rooms where you switch back into your street attire.<br>
<br>
"@@.npc_technician;Pretty intense place, huh? And hot — not just figuratively, but all your latex? Yeah, I get it. Well, maybe we can come back some other time,@@" she gives you a hug good-bye and you head off.<br>
<br>
[<<moveTo 'room_student_quarter' "Leave." 180>>]
</div>/*#
#desc: technician dom date bar
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bar = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
You head for the bar where <<=setup.getNpcName("npc_rpg_warlock","first")>> leads the way to the far end where the typical barstools give way to more complicated furniture.<br>
<br>
You watch as <<=setup.getNpcName("npc_rpg_dude","first")>> kneels down, quickly attached to the stool so that <<he npc_rpg_dude>> is bound vertically, <<his npc_rpg_dude>> face at crotch level at the front of the seat. <<=setup.getNpcName("npc_rpg_warlock","first")>> smiles and winks back at <<=setup.getNpcName("npc_technician","first")>> as she takes her "seat" — thighs pressed against either side of her <<boy npc_rpg_dude>>friends head, short skirt shuffled up to reveal her lack of panties...<br>
<br>
"@@.npc_rpg_warlock;Well? Have a seat — and a round on me!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> glances at you... and then at the identical bondage stool next to her friend...<br>
<br>
[<<moveTo 'event_sexclub_date_technician_dom_5_bar_2' 'Kneel down and get bound.' 1800 "<<set $scene.barAction=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_dom_5_bar_2_decline' "Just sit at the bar normally." 1800 "<<set $scene.barAction=false>>">>]
</div>/*#
#desc: technician dom date bar — between her legs
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 13 'terrible' $EXPOSED>>
<<applyExperience 'bondage' 13 'normal' $EXPOSED>>
<<applyExperience 'penis' 13 'very' $EXPOSED>>
<<applyFatigue -25>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
You submissively kneel down in front of the stool, <<=setup.getNpcName("npc_technician","formal")>> helping strap you in before straddling your face and taking her seat, your giant, inflated horns making things a little awkward for her, though she voices no complaint.<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>> may be dressed as a nun, but her skirt is VERY short and you find yourself with a real face-full of <<getWordPenis false>>, her heavy scent — thick with sweat and tinged with the smell of rubber, having you drooling as her thighs gently squeeze around your skull.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
You find yourself very much regretting locking her up, her steel cage a maddening barrier between you and your dame's delicious dick. She shifts slightly, her thighs squeaking against your rubber hood as you can tell the frustration is mutual.
<<else>>
Her throbbing <<getWordPenis false>> presses against your face, her thighs occasionally squeaking against your rubber hood.
<</if>>
The two Dommes enjoy a leisurely drink as the sound of the club and the thighs pressed against your ears prevent you from hearing what they discuss. Still, you have no complaints, your every breath thick with the scent of your <<=ps(setup.getNpcName("npc_technician","title"))>> balls, the most tormenting part of your situation that the angle isn't quite right for you to do anything more than occasionally lick the perfection in front of you.<br>
<br>
After a while the demon queen and the nun rise; freeing yourself and <<=setup.getNpcName("npc_rpg_dude","first")>> from your wonderful predicaments, the four of you feeling refreshed from the short break as you decide where to head next...<br>
<br>
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss > 4>>
As you're thinking, <<=setup.getNpcName("npc_technician","formal")>> gets a sly grin. "@@.npc_technician;Say, you know we just had drinks, probably best to relieve things a bit before we jump back into the party... and I just so happen to have a thirsty toilet princess who would just LOVE to lend her lips...@@"<br>
<br>
You shudder — your <<=setup.getNpcName("npc_technician","title")>> just casually offered for you to drink your friend's <<getWordPiss>>... and from the way <<=setup.getNpcName("npc_rpg_warlock","first")>> is smiling... she likes the idea.<br>
<br>
[<<moveTo 'event_sexclub_date_technician_dom_5_piss_1' 'You are always happy to be of service...' 600 "<<set $scene.pissAction=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_dom_5_piss_1' "You changed your mind. You don't want to do this tonight." 180 "<<set $scene.pissAction=false>>">>]
<<else>>
<<include "technicianDomDateChoices">>
<</if>>
</div>/*#
#desc: technician dom date bar — between her legs
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -25>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
You take a seat atop one of the stools, <<=setup.getNpcName("npc_technician","first")>> sitting down next to you and the three of you enjoying drinks while <<=setup.getNpcName("npc_rpg_dude","first")>> spends the time submissively between <<his npc_rpg_dude>> owner's thighs.<br>
<br>
Feeling a bit loosened up and catching a second wind from the short break three of you rise. It takes another couple minutes to extract <<=setup.getNpcName("npc_rpg_dude","first")>> from the stool and then it's time to decide where to head next...<br>
<br>
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss > 4>>
As you're thinking, <<=setup.getNpcName("npc_technician","formal")>> gets a sly grin. "@@.npc_technician;Say, you know we just had drinks, probably best to relieve things a bit before we jump back into the party... and I just so happen to have a thirsty toilet princess who would just LOVE to lend her lips...@@"<br>
<br>
You shudder — your <<=setup.getNpcName("npc_technician","title")>> just casually offered for you to drink your friend's <<getWordPiss>>... and from the way <<=setup.getNpcName("npc_rpg_warlock","first")>> is smiling... she likes the idea.<br>
<br>
[<<moveTo 'event_sexclub_date_technician_dom_5_piss_1' 'You are always happy to be of service...' 600 "<<set $scene.pissAction=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_dom_5_piss_1' "You changed your mind. You don't want to do this tonight." 180 "<<set $scene.pissAction=false>>">>]
<<else>>
<<include "technicianDomDateChoices">>
<</if>>
</div>/*#
#desc: technician dom sex club pissdrinking
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pissAction>>
<<applyExperience 'piss' 15 'very' $EXPOSED>>
<<applyExperience 'submission' 15 'very' $EXPOSED>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<else>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
<<if $scene.pissAction>>
You blush and softly reply that you are always "@@.pc;Thirsty to serve.@@"<br>
<br>
A minute later and the four of you are in the club's bathroom — you on your knees, mouth spread wide as <<=setup.getNpcName("npc_rpg_warlock","first")>> goes first — filling you throat with her delicate blend before passing you off to <<=setup.getNpcName("npc_rpg_dude","first")>> and <<his npc_rpg_dude>> stronger emission.<br>
<br>
Only after you have finished obediently licking <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> cage clean does <<=setup.getNpcName("npc_technician","formal")>> take her turn — jamming
<<if $npc_technician.relationship.her_caged>>
the tip of her chastity device between your lips
<<else>>
her half-chub past your lips
<</if>>
and unleashing a torrent of
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
golden perfection.
<<else>>
bitter bliss.
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
disturbingly tasty lemonade.
<<else>>
bitter lemonade.
<</if>>
<</if>>
Across your tongue and down your throat. She smiles down and strokes your hair as you struggle not to spill in fulfilling your human urinal duties, but you pull it off, and she grabs you by the collar and pulls you to your feet for a kiss.
<br><br>
"@@.npc_rpg_warlock;A-hem,@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> interrupts, clearing her throat and drawing your attention to <<=setup.getNpcName("npc_rpg_dude","first")>> kneeling next to her with <<his npc_rpg_dude>> hands behind <<his npc_rpg_dude>> back and <<his npc_rpg_dude>> mouth open. "@@.npc_rpg_warlock;Only fair that we all get relief, hmm? And <<he npc_rpg_dude>> could really do with expanding <<his npc_rpg_dude>> taste experience beyond just me.@@"<br>
<br>
"@@.npc_rpg_dude;But you taste so good...@@" <<He npc_rpg_dude>> moans, fluttering <<his npc_rpg_dude>> eyelashes innocently as she smiles and pats <<him npc_rpg_dude>> on the head.<br>
<br>
[<<moveTo 'event_sexclub_date_technician_dom_5_piss_2' 'Take her up on the offer.' 600>>]<br>
[<<moveTo 'event_sexclub_date_technician_dom_5_piss_2_decline' "You actually don't need to go right now." 180>>]
<<else>>
You blush and reply that you're actually not feeling very thirsty at the moment.<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>> smiles and smoothly deflects the issue as she asks what you were thinking of checking out next?
<</if>>
<br><br>
<<include "technicianDomDateChoices">>
</div>/*#
#desc: technician dom sex club pissdrinking rpg_dude
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 10 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
You partially unzip your catsuit and follow instructions — one hand gripping <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> hair as <<he npc_rpg_dude>> dutifully places <<his npc_rpg_dude>> lips into position and you let loose.<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> turns out not quite as practiced at these things as you are, but <<he npc_rpg_dude>> manages to swallow all you have to offer without making a mess. When you finally separate <<=setup.getNpcName("npc_rpg_warlock","first")>> is there to help <<him npc_rpg_dude>> to <<his npc_rpg_dude>> feet, wiping a few drops from <<his npc_rpg_dude>> chin for <<=setup.getNpcName("npc_rpg_warlock","first")>> to suck her finger clean.<br>
<br>
"@@.npc_rpg_warlock;Now what do you say?@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> asks, teasing <<his npc_rpg_dude>> collar as she smiles up at <<him npc_rpg_dude>>.<br>
<br>
"@@.pc;Thank you,@@" "@@.npc_rpg_dude;Thank you,@@" you and <<he npc_rpg_dude>> both reply in near unison, blushing in synchronicity as your respective Dommes laugh in amusement.<br>
<br>
The four of you take a minute to wash your hands — or gloves, in your case, pop a complimentary breath-mint, and head back to the club proper.<br>
<br>
<<include "technicianDomDateChoices">>
</div>/*#
#desc: technician dom sex club pissdrinking rpg_dude decline
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
You decline the generous offer and the four of you wash your hands, pop a complimentary breath-mint, and head back to the club proper.<br>
<br>
<<include "technicianDomDateChoices">>
</div>/*#
#desc: technician dom date play
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.play = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_nun") "./images/characters/latex_nun_chastity.png">>
<div id="invframe" class="scrolltext">
The four of you wander towards the club's public play area... where you suddenly finds herself face to face with an even more impressive latex nun than your owner...<br>
<br>
"@@.npc_nun_chastity;Well, well, well, I did not realise I would be looking forward to another Sister joining me this evening,@@" she smiles and winks. "@@.npc_nun_chastity;My, my and it would seem that you are consorting with demons in two different ways!@@"<br>
<br>
She pauses, and then grins. "@@.npc_nun_chastity;What fun! You know, I've studied some historic works on how to "deal" with sex demons... it's all quite interesting, and I've always wanted to test the... practical applications.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> grins. "@@.npc_rpg_warlock;Do you think these techniques would be applicable to misbehaving mortals?@@" She eyes her <<boy npc_rpg_dude>>friend.<br>
<br>
"@@.npc_nun_chastity;Certainly — we have adapted many of them into our own practice. After all, who wouldn't benefit from some harsh discipline and control... edging and ruins, that's just what the Goddess ordered... so, are you interested?@@"<br>
<br>
[<<moveTo "event_sexclub_date_technician_dom_5_play_2" "Nod obediently." 300 "<<set $scene.playAction=true>>">>]<br>
[<<moveTo "event_sexclub_date_technician_dom_5_play_2" "You'd rather move on to something else." 180 "<<set $scene.playAction=false>>">>]
</div>/*#
#desc: technician dom date nun play setup
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.playAction>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'normal' $EXPOSED>>
<<set _humiliation = setup.getTotalValue("humiliation")>>
<<applyExperience 'humiliation' _humiliation 'little' $EXPOSED>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'little' $EXPOSED>>
<<set _bondage = setup.getTotalValue("bondage")>>
<<applyExperience 'bondage' _bondage 'very' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_nun") "./images/characters/latex_nun_chastity.png">>
<div id="invframe" class="scrolltext">
<<if $scene.playAction>>
With a grin the nun leads the four of you to a bondage contraption that seems almost purpose-built for the occasion — designed to hold a pair of submissives in side by side seated and spread arrangements.<br>
<br>
You and <<=setup.getNpcName("npc_rpg_dude","first")>> are helped into position and swiftly strapped VERY tightly as the nun guides your respective owners to get in position in front of you as she "supervises." <br>
<br>
<<if !setup.checkItemTypeWorn("cage") && !setup.checkItemTypeWorn("plug")>>
The nun glances between yourself and <<=setup.getNpcName("npc_rpg_dude","first")>>. "@@.npc_nun_chastity;Leaving a demon free and un-plugged? That is VERY dangerous. I advise you to address these issues in the medium term, lest the creature break free of its leash and get up to all manner of trouble.@@"<br>
<br>
You tremble as you watch <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> plug be removed. <<He npc_rpg_dude>> understandably gasps — it was very much not a small toy.
<<elseif !setup.checkItemTypeWorn("cage") && setup.checkItemTypeWorn("plug")>>
The nun glances between yourself and <<=setup.getNpcName("npc_rpg_dude","first")>>. "@@.npc_nun_chastity;Leaving a demon out of chastity? That is VERY dangerous. I advise you to address these issues in the medium term, lest the creature break free of its leash and get up to all manner of trouble.@@"<br>
<br>
You tremble as you watch <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> plug be removed. <<He npc_rpg_dude>> understandably gasps — it was very much not a small toy.
<<elseif setup.checkItemTypeWorn("cage") && !setup.checkItemTypeWorn("plug")>>
The nun glances between yourself and <<=setup.getNpcName("npc_rpg_dude","first")>>. "@@.npc_nun_chastity;Good that you have your demon in chastity, but you should also always keep such a creature plugged. Else their evil influence can... leak out. I advise you to address these issues in the medium term, lest the creature break free of its leash and get up to all manner of trouble.@@"<br>
<br>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
You gasp in concert with <<=setup.getNpcName("npc_rpg_dude","first")>> as your plugs are removed.
<<else>>
Your hollow plug is left where it is, but you tremble as you watch <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> plug be removed. <<He npc_rpg_dude>> understandably gasps — it was very much not a small toy.
<</if>>
<<else>>
The nun glances between yourself and <<=setup.getNpcName("npc_rpg_dude","first")>> and smiles. "@@.npc_nun_chastity;Very good, keeping a demon locked and plugged is some of the best control, and such is just as effective on mortals.@@"<br>
<br>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
You gasp in concert with <<=setup.getNpcName("npc_rpg_dude","first")>> as your plugs are removed.
<<else>>
Your hollow plug is left where it is, but you tremble as you watch <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> plug be removed. <<He npc_rpg_dude>> understandably gasps — it was very much not a small toy.
<</if>>
<</if>>
Matching curved dildos are slide into your ass and <<if $npc_rpg_dude.fem>>hers<<else>>his<</if>> as <<=setup.getNpcName("npc_technician","formal")>> and <<=setup.getNpcName("npc_rpg_warlock","first")>> take hold of the controls.<br>
<br>
"@@.npc_nun_chastity;Now, paradoxically, the key to proper control is to either tease the demon to the point of desperation... or to completely overwhelm them with pleasure. Today we shall focus on the former. Optimally they should feel like you are holding them literally over the edge, but never letting them fall, teaching them to trust your control, and putting them in mind to focus on whatever they can do to please their owner.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>> nods and smiles up at you, and the vibrations start...<br>
<br>
[<<moveTo "event_sexclub_date_technician_dom_5_play_3" "We're on the edge (the edge), the edge (the edge) of glory..." 1800>>]<br>
<<else>>
You shake your head and <<=setup.getNpcName("npc_technician","first")>> thanks the nun for her offer.<br>
<br>
"@@.npc_nun_chastity;Some other time, then,@@" the nun replies with a bow. "@@.npc_nun_chastity;Go with the Goddess's blessing.@@"<br>
<br>
<<include "technicianDomDateChoices">>
<</if>>
</div>/*#
#desc: technician dom date nun play — edged
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.playAction>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'terrible' $EXPOSED>>
<<set _humiliation = setup.getTotalValue("humiliation")>>
<<applyExperience 'humiliation' _humiliation 'terrible' $EXPOSED>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $EXPOSED>>
<<set _bondage = setup.getTotalValue("bondage")>>
<<applyExperience 'bondage' _bondage 'terrible' $EXPOSED>>
<<changeHorny 100>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_nun") "./images/characters/latex_nun_chastity.png">>
<div id="invframe" class="scrolltext">
Under the nun's stern direction <<=setup.getNpcName("npc_technician","formal")>> and <<=setup.getNpcName("npc_rpg_warlock","first")>> set to work. In moments you and <<=setup.getNpcName("npc_rpg_dude","first")>> are straining against your bonds, moaning into your gags
<<if !setup.checkItemTypeWorn("cage")>>
and, in <<his npc_rpg_dude>> case, leaking out of chastity — in yours merely dripping, desperately sensitive and untouched.
<<else>>
and dripping out of your respective chastity devices.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","formal")>> shows her skill at keeping you right on the edge, but the nun pushes things to a whole other level, seeming to have some sort of supernatural sixth sense of where "the line" is, encouraging <<=setup.getNpcName("npc_technician","formal")>> or <<=setup.getNpcName("npc_rpg_warlock","first")>> to push a little bit harder and still, without ever actually really letting up, keep you and <<=setup.getNpcName("npc_rpg_dude","first")>> torturously on the cusp...<br>
<br>
Distantly you notice that you are starting to garner a crowd. This attention serves to raise the stakes further; the humiliation of writhing in your bonds, the whimpering desperation alternating between asking for a little more or for the torment to stop, the end combination being exactly what the nun described — a deep, swelling urge to submit to <<=setup.getNpcName("npc_technician","formal")>>, your gaze softening as you look down at her expertly working your rear... she is your <<=setup.getNpcName("npc_technician","owner")>>, your <<=setup.getNpcName("npc_technician","Goddess")>>, your <<=setup.getNpcName("npc_technician","title")>>... to wear her collar is such a privilege and you joyously submit yourself to her control...<br>
<br>
The intensity of things is such that you almost faint, vision swimming as you moan with want as the dildo is finally removed from your rear. You glance to the side to share a silent moment with <<=setup.getNpcName("npc_rpg_dude","first")>>, seeing in your fellow slave's eyes the same devotion to <<his npc_rpg_dude>> owner as you harbour for your own.<br>
<br>
Strengthening things even further is, once things are put back "as they were" the two of you are released from bondage into the loving arms of <<=setup.getNpcName("npc_technician","formal")>> or <<=setup.getNpcName("npc_rpg_warlock","first")>>.<br>
<br>
"@@.npc_technician;Good Princess,@@" she whispers, as she brushes your head and you cling to her for balance, slowly steadying yourself as you "come back to earth" from the... heaven, hell... both? That the nun has helped you to visit.<br>
<br>
"@@.npc_nun_chastity;Well I hope you all enjoyed this little lesson, and have a lovely night,@@" you nod as the small audience that had gathered applauds... and a few other couples rush forward to be next to get such "hands on" training from the nun...<br>
<br>
"@@.npc_rpg_warlock;Yeah, that was fun! Nothing like a little old-time religion, eh? So... where to next?@@"<br>
<br>
<<include "technicianDomDateChoices">>
</div>/*#
#desc: technician dom date dance invitation
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dance = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
You head for the dance floor. "@@.npc_rpg_warlock;Come on!@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> says with a smile, "@@.npc_rpg_warlock;I love this track! Let's groove for a few songs!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks at you with a sly grin, tracing one of your horns with her hand. "@@.npc_technician;I always have dreamed of having a dance with the devil...@@"<br>
<br>
[<<moveTo "event_sexclub_date_technician_dom_5_dance_2" "Let's dance!" 1800 "<<set $scene.danceAction=true>>">>]<br>
[<<moveTo "event_sexclub_date_technician_dom_5_dance_2_decline" "You'd rather move on to something else." 1800 "<<set $scene.danceAction=false>>">>]
</div>/*#
#desc: technician dom date dance
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dexterity = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexterity 'terrible' $EXPOSED>>
<<set _heelsItem = setup.getItemFromType('shoes')>>
<<if _heelsItem != "" && setup.getItemObj(_heelsItem).hasOwnProperty('heels')>>
<<set _heels = setup.getTotalValue("heels")>>
<<applyExperience 'heels' _heels 'terrible' $EXPOSED>>
<<set $scene.heelsDiff = setup.getItemObj(_heelsItem).heels.difficulty>>
<<else>>
<<set $scene.heelsDiff = 0>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
The four of you take to the dance <<if setup.getTotalValue("dexterity") < 20>>floor.<<else>>floor<</if>>
<<if setup.getTotalValue("dexterity") >= 20 && setup.getTotalValue("heels") >= 20>>
and it becomes immediately clear that, while <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>> have moves... you have something on a whole other level, effortlessly working it to the music, your horns bouncing around as you and <<=setup.getNpcName("npc_technician","formal")>> put on a performance that almost stops the club as people look on in awe.
<<elseif setup.getTotalValue("dexterity") > 15 && setup.getTotalValue("heels") > 15>>
You and <<=setup.getNpcName("npc_technician","formal")>> going almost step for step with the swing-inspired performance that <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>> put on, the four of you combining to almost stop the rest of the action as dancers pause to just watch you go at it for a string of songs.
<<else>>
<<if setup.getTotalValue("dexterity") > 10>>
<<if $scene.heelsDiff == 0>>
While you move well, your lack of heels seems to ding your overall performance.
<<elseif setup.getTotalValue("heels") > $scene.heelsDiff>>
You and <<=setup.getNpcName("npc_technician","formal")>> make quite a pair on the dance floor... though you wonder if you might impress more if you weren't the only one moving properly in heels.
<<else>>
You and <<=setup.getNpcName("npc_technician","formal")>> make quite a pair on the dance floor... if one ignores your slight clumsiness in heels.
<</if>>
As well as the two of you move, it's nothing compared to the perfect, frenetic pace set by <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>>; their performance so stunning that it draws the attention of close to half the other dancers as they give it their all for a string of songs.
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
You dance a bit awkwardly,
<<if $scene.heelsDiff == 0>>
your lack of heels, perhaps, throwing things off.
<<elseif setup.getTotalValue("heels") > $scene.heelsDiff>>
balancing smoothly in your heels, but not quite turning that heightened grace into a musically synchronised rhythm.
<<else>>
the fact that your heels are a bit much for you only throwing you off further.
<</if>>
<<else>>
You stumble gracelessly onto the floor,
<<if $scene.heelsDiff == 0>>
even moving in flats not enough for you to look in any way poised or balanced.
<<elseif setup.getTotalValue("heels") > $scene.heelsDiff>>
you skill in heels failing to properly translate to any real musical grace.
<<else>>
teetering awkwardly in your heels on top of failing to coordinate with the music.
<</if>>
<</if>>
Fortunately for your embarrassment, <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>> soak up almost all of the attention with a jaw-dropping, swing-inspired jam that has half the floor cheering them on by the second track.
<</if>>
<</if>>
<br><br>
There's a lull in the music and, feeling quite sweaty under all your latex, you follow your friends off the floor.<br>
<br>
"@@.npc_rpg_dude;That was fun!@@" <<=setup.getNpcName("npc_rpg_dude","first")>> says with a smile, only to pause and nervously look at <<his npc_rpg_dude>> Mistress as <<he npc_rpg_dude>> realises <<he npc_rpg_dude>> just spoke out of turn.<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> smiles back and strokes <<his npc_rpg_dude>> face. "@@.npc_rpg_warlock;Such reckless enthusiasm, I knew I should have gagged those pretty lips... but yes, fun indeed. What shall we be off to next?@@"<br>
<br>
<<include "technicianDomDateChoices">>
</div>/*#
#desc: technician dom date dance decline
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
You reply that you aren't feeling steady enough to dance. <<=setup.getNpcName("npc_technician","first")>> nods in sympathy as she glances at your heels. "@@.npc_technician;You go on,@@" she states to <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>>; "@@.npc_technician;We'll just sit back and watch.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> nods and drags her <<boy npc_rpg_dude>>friend onto the dance floor. You, <<=setup.getNpcName("npc_technician","first")>>, and even some of the other dancers end up watching in awe as the two of them really tear it up, dancing some sort of swing variant that's so frenetic it's a bit hard to tell who's leading whom, just that they're both totally into the music as they energetically move back and forth.<br>
<br>
After working up what has to be quite a sweat <<=setup.getNpcName("npc_rpg_warlock","first")>> drags her <<boy npc_rpg_dude>>friend off the floor by <<his npc_rpg_dude>> leash — to parting applause from the other dancers.<br>
<br>
"@@.npc_rpg_warlock;So, what now?@@"<br>
<br>
<<include "technicianDomDateChoices">>
</div>/*#
#desc: sex club technician dom show
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
Your attention is drawn to a bit of commotion in the direction of the club's stage — it must be nearing time for the nightly show.<br>
<br>
Noting your attention <<=setup.getNpcName("npc_rpg_warlock","first")>> grins mischievously. "@@.npc_rpg_warlock;So... the reason I insisted on the two of you wearing those outfits, well... I came up with a little dance number for the four of us. It's a talent show exhibition night tonight so... you know... if you feel up for going on a little romp on the Devil's Dance Floor...@@"<br>
<br>
[<<moveTo "event_sexclub_date_technician_dom_7" "That sounds fun!" 1800 "<<set $scene.stageAction=true>>">>]<br>
[<<moveTo "event_sexclub_date_technician_dom_7_decline" "You'd rather avoid the stage and just enjoy the show." 1800 "<<set $scene.stageAction=false>>">>]
</div>/*#
#desc: sex club technician dom show participate
#status: RELEASED 0.8.6.0
#ignore_spell: dj
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_technician","npc_technician_nun") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
The four of you mount the stage — <<=setup.getNpcName("npc_rpg_warlock","first")>> taking a moment to whisper something to the DJ before getting into position for a half-improve show. You and <<=setup.getNpcName("npc_rpg_warlock","first")>> working together to torment and seduce the "innocent" secretary played by <<=setup.getNpcName("npc_rpg_dude","first")>>... until the holy <<=setup.getNpcName("npc_technician","formal")>> arrives, bringing both demons to heel... and then enslaving all three of you.<br>
<br>
The crowd roars in approval as <<=setup.getNpcName("npc_technician","formal")>> stands tall with the three of you worshipping at her feet. You feel a twinge of pity for whatever act is stuck trying to follow you up.<br>
<br>
Still riding high after your show you barely notice the remaining acts.<br>
<br>
[<<moveTo "event_sexclub_date_technician_dom_8" "Continue." 1800>>]
</div>/*#
#desc: sex club technician dom show decline
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png">>
<div id="invframe" class="scrolltext">
You decline the offer and remain in the audience with <<=setup.getNpcName("npc_technician","formal")>> while your friends — and a handful of other pairs or groups of club-goers do a series of short shows ranging from <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> frenetically erotic dance, through to a couple more musical-arranged numbers and a bondage escape act that leads into a flogging demo.<br>
<br>
[<<moveTo "event_sexclub_date_technician_dom_8" "Continue." 1800>>]
</div>/*#
#desc: finish technician dom date
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'rpg_succubus_demon_hood' true>>
<<deleteItem 'rpg_succubus_demon_hood'>>
<<removeItem 'rpg_succubus_boots' true>>
<<deleteItem 'rpg_succubus_boots'>>
<<removeItem 'catsuit_latex_headless_club_black' true>>
<<deleteItem 'catsuit_latex_headless_club_black'>>
<<removeItem 'rpg_succubus_pentagram_harness' true>>
<<if !setup.checkItemOwned('rpg_succubus_pentagram_harness')>>
<<deleteItem 'rpg_succubus_pentagram_harness'>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_rpg_warlock","npc_rpg_warlock_demon") setup.charImage("npc_rpg_dude","npc_rpg_dude_girl")>>
<div id="invframe" class="scrolltext">
The night's stage show winds down and <<=setup.getNpcName("npc_technician","formal")>> sighs. "@@.npc_technician;Well this has been fun but... I'm starting to bake under all this latex, and I can only imagine the stew of sweat my obedient demon Princess is basting in...@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> chuckles and the four of you head for the exit, you and <<=setup.getNpcName("npc_technician","formal")>> changing back into street clothes and returning your demonic outfit to its owner.<br>
<br>
<<if $scene.playAction && $scene.barAction && $scene.danceAction && $scene.stageAction && ($scene.pissAction || !$fetish.piss)>>
<<=setup.getNpcName("npc_rpg_warlock","first")>> grins. "@@.npc_rpg_warlock;Well I hope you enjoyed the evening, I know we did! So much fun! We'll see you at the next game.@@"
<<elseif $scene.playAction || $scene.barAction || $scene.danceAction || $scene.stageAction || ($scene.pissAction && $fetish.piss)>>
<<=setup.getNpcName("npc_rpg_warlock","first")>> smiles. "@@.npc_rpg_warlock;Well we certainly got into a bit of mischief tonight... I'm glad the two of you finally came out with us.@@"
<<else>>
<<=setup.getNpcName("npc_rpg_warlock","first")>> gives you a hug. "@@.npc_rpg_warlock;Sorry you didn't feel more like participating tonight, but I hope you at least enjoyed yourself.@@"
<</if>>
You nod and thank <<=setup.getNpcName("npc_rpg_warlock","first")>> for inviting the two of you. "@@.npc_rpg_warlock;Always great to have fun with friends,@@" She replies with a devilish grin; <<=setup.getNpcName("npc_rpg_warlock","first")>> holding <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> leash and heading off into the night.<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>> kisses you good-night. "@@.npc_technician;Thanks for coming with me. You really are just the cutest, bestest Princess-slave, but right now I'm wore out, and we both have work tomorrow!@@"<br>
<br>
You nod, sharing a parting hug before she heads back home to her flat and you to yours.<br>
<br>
[<<moveTo "room_foyer" "Home." 660>>]
</div>/*#
#desc: rpg_maid invites you and technician on double date
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _time = setup.getNextDayOfWeek($now, 1, 18, 30, false)>>
<<set $scene.hasPlans = !setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_maid","first")>> lingers after the rest of the group has left with a grin. "@@.npc_maid;Say, now that you've got a collared slave of your own,@@" she states, smiling at you and motioning towards <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_maid;How do you feel about a double date to <<printShopName 'sex_club'>>? Say... Monday, nice way to kick off the week, have a bit of public fun with your lovely property?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blushes and looks to you, but you can tell she's interested.<br>
<br>
<<if $scene.hasPlans>>
You explain that you already have plans for Monday evening.<br>
<br>
"@@.npc_maid;Damn, that company of yours is run by slave-drivers!@@" She states with a grin.<br>
<br>
<<printThought "If you only knew...">><br>
<br>
"@@.npc_maid;Oh well, some other time then. Catch you two love-birds later!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> winks at the two of you and closes the door behind her.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> turns to you with a grin.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<printThought 'Time to "reward" the DM for a game well run...'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Cleanup be damned, you've got a girlfriend to snog." 180>>]<br>
<<else>>
<<printThought 'I bet she would appreciate me staying to "help."'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to assist with cleanup." 180>>]<br>
<</if>>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
<<else>>
<<=setup.getNpcName("npc_technician","first")>> gently brushes your head and looks at you with a smile. "@@.npc_technician;Well, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>my Overseer<</switch>>?@@"<br>
<br>
[<<moveTo 'event_sexclub_date_technician_sub_invite_2' 'That sounds great!' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_sub_invite_2' 'Not this week.' 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: agree to double date with rpg_maid
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 20, 0, false)>>
<<addTaskById "technician_club_sub" _nextDate>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You glance at <<=setup.getNpcName("npc_technician","first")>> and then the both of you smile back at <<=setup.getNpcName("npc_maid","first")>> as you agree to her proposal.<br>
<br>
"@@.npc_maid;Triff! Well, I'll see you two Monday, should give you plenty of time to make sure our lovely tech wizard is in a properly subservient mood.@@" She winks and leaves, closing the door behind her.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks at you and bites her lip, one finger toying with her collar idly.
<<else>>
You shake your head and <<=setup.getNpcName("npc_maid","first")>> shrugs. "@@.npc_maid;Some other time, then. Well, I'll leave you and your slave to it, toodle-ooo!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> leaves you alone with your collared sub.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> turns to you with a grin.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<printThought 'Time to "reward" the DM for a game well run...'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Cleanup be damned, you've got a girlfriend to snog." 180>>]<br>
<<else>>
<<printThought 'I bet she would appreciate me staying to "help."'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to assist with cleanup." 180>>]<br>
<</if>>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
</div>/*#
#desc: meet technician and npc_maid at sex club
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
You arrive at <<printShopName 'sex_club'>> to find your friends already waiting. To your surprise, rather than coming alone, <<=setup.getNpcName("npc_maid","first")>> has brought one of her coworkers from Cafe Newtype... or, perhaps "coworker" is under-selling things, given that the maidtress is wearing a stunningly severe posture collar by which she is leashed to <<=setup.getNpcName("npc_maid","first")>>; looking every part the proud slave, the two maids sticking to the club's dress code by swapping their normal maid attire for tight shiny latex uniforms, presenting an interesting contrast as, despite their similarities, it is instantly clear who is the "head" maid, and whom is the slave...<br>
<br>
For her part <<=setup.getNpcName("npc_technician","first")>> is wearing your collar and a jaw-dropping red latex dress, including a corset, shoulder length gloves, high heel boots that you KNOW are out of her comfort range... all prominently locked on with wrist and ankle cuffs. She smiles at you in greeting, and then bows obediently — you get the feeling that she really wants to make you proud this evening...<br>
<br>
"@@.npc_technician;Welcome, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>my Overseer<</switch>>, I, uh... brought you an outfit for tonight.@@" She states, handing you a bag.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> grins. "@@.npc_maid;Go ahead and get changed — I figured the dungeon SLAVE@@" She accentuates the word in parody of <<=ps(setup.getNpcName("npc_technician","first"))>> more authoritarian title in your weekly RPG sessions, "@@.npc_maid;Might be in need of a role model, so I brought <<=setup.getNpcName("npc_waitress","custom","Slave")>> <<=setup.getNpcName("npc_waitress","first")>> along — she is a VERY well-trained slave, isn't that right?@@"<br>
<br>
"@@.npc_waitress;Yes, Mistress. This one lives to be of use and service,@@" <<=setup.getNpcName("npc_waitress","first")>> replies with a curtsy.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip — you get the feeling this is but the opening salvo of <<=setup.getNpcName("npc_maid","first")>> "testing" ... or is that teasing? Her friend's resolve.<br>
<br>
[<<moveTo 'event_sexclub_date_technician_sub_2' 'Take the bag and shuffle off to the changing rooms.' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_sub_2' "You changed your mind. You don't want to do this tonight." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: change for technician sub sexclub
#status: RELEASED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<addItemSet 'club_mistress_outfit'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<<else>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept the bag from <<=setup.getNpcName("npc_technician","first")>> and flash her a smile — she really is so adorable, and just seeing her wearing your collar brings a smile to your face. You dart into the changing room to see what she got you. You gasp at the stunning ensemble of thigh high boots, black, corset-integrated dress and matching gloves in shiny latex.<br>
<br>
<<if setup.isItemEquipped('latex_dress_mistress_black') && setup.isItemEquipped('latex_gloves_black') && setup.isItemEquipped('thigh_high_buckle_black')>>
[<<moveTo 'event_sexclub_date_technician_sub_3' "Head out and rejoin your friends." 300>>]<br>
<<else>>
<<if $options.ezchange>>
[<<moveTo 'event_sexclub_date_technician_sub_3' "Get changed and rejoin your friends." 300 "<<set _jacket = setup.getItemFromType('jacket')>><<if _jacket>><<removeItem _jacket true>><</if>><<wearItem 'latex_dress_mistress_black' true>><<wearItem 'latex_gloves_black' true>><<wearItem 'thigh_high_buckle_black' true>>">>]<br>
<<else>>
[@@.link_locked;You need to change into the dress, gloves and boots that <<=setup.getNpcName("npc_technician","first")>> gave you.@@]<br>
<</if>>
<</if>>
[<<moveTo 'event_sexclub_date_technician_sub_2' "You changed your mind. You don't want to do this tonight." 180 "<<set $scene.accept=false>>">>]
<<else>>
<<set $player.cutscene.lockinventory = true>>
Nervously you sidle over to <<=setup.getNpcName("npc_technician","first")>> and whisper that you aren't really feeling this tonight.<br>
<br>
Draping a protective arm around your shoulder she turns to her friends. "@@.npc_technician;Sorry but... we're feeling a bit under the weather, going to have to take a rain check on this.@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> squints but, rather than making a fuss merely smiles. "@@.npc_maid;Of course, of course — I want you hale and hearty so I can see your servitude in its peak form.@@" She grins wide, "@@.npc_maid;Since we're already here, though... well, I think <<=setup.getNpcName("npc_waitress","custom","Slave")>> <<=setup.getNpcName("npc_waitress","first")>> and I are going to have some fun, catch you cats later!@@"<br>
<br>
A tug a leash and the two of them head into the club. <<=setup.getNpcName("npc_technician","first")>> gives you a hug.<br>
<br>
"@@.npc_technician;Sorry you're not feeling it tonight, but it happens. And don't let <<=setup.getNpcName("npc_maid","first")>> get to you — she just has that mix of competitive and bratty personality, but it's all in good fun, you know?@@"<br>
<br>
You nod and then leave.<br>
<br>
[<<moveTo 'room_student_quarter' "Leave." 180>>]
<</if>>
</div>/*#
#desc: get changed for date
#status: RELEASED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<applyExperience 'dominance' 8 'normal' $SEEN_FRIEND>>
<<else>>
<<useClothSetPop 'tmp'>>
<<removeItemSet 'club_mistress_outfit'>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
You emerge in the outfit <<=setup.getNpcName("npc_technician","first")>> brought for you and she swoons. Even <<=setup.getNpcName("npc_maid","first")>> looks impressed, and you hear a "@@.npc_guard;Damn, girl!@@" from the guard back behind the desk.<br>
<br>
"@@.npc_maid;Well, whatever her qualifications as a slave... it would seem our tech wizard has quite the taste in owners, you look drop-dead gorgeous. Come on, let's head into the club and show off!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> smiles and offers you a leash.<br>
<br>
[<<moveTo 'event_sexclub_date_technician_sub_4' 'Leash your slave and get ready to head inside.' 300>>]<br>
[<<moveTo 'event_sexclub_date_technician_sub_2' "You changed your mind. You don't want to do this tonight." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: npc_maid inspects npc_technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.flags.club_tech_chastity=true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> stands proudly at your side as <<=setup.getNpcName("npc_maid","first")>> grins.<br>
<br>
"@@.npc_maid;Well look at the two of you! You certainly dress up nicely, but what other signs of submission is your slave packing underneath all of that? Mine, obviously, is filled and locked, my dear?@@"<br>
<br>
On cue <<=setup.getNpcName("npc_waitress","first")>> lifts her skirt to reveal a small chastity cage before turning around and flashing a jeweled plug decorating her rear.<br>
<br>
"@@.npc_maid;So? Sure she has the collar, but that's just one part of being owned and secured...@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
<<=setup.getNpcName("npc_technician","first")>> raises her skirt to reveal
<<if $npc_technician.relationship.sissyomatic>>
her <<=setup.getItemName("sissyomatic")>>, turning around and bending over to show its rear portion as well.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> is momentarily speechless in awe — and <<=setup.getNpcName("npc_waitress","first")>> is looking a bit jealous.<br>
<br>
"@@.npc_maid;What in that- how did you—?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins and wiggles with pride. "@@.npc_technician;My <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> wanted me as secure as possible, these aren't even available to the public but <<switch $npc_technician.flags.knowgender>><<case 'female'>>she<<case 'male'>>he<<default>>they<</switch>> pulled some strings to make sure I was maximally locked, filled and secured because my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> is the best.@@"<br>
<br>
"@@.npc_maid;Wow, no kidding... if I heard you say you'd ever be locked up in something like that, well...@@"<br>
<br>
There is a moment of silence and then <<=setup.getNpcName("npc_waitress","first")>> interjects "@@.npc_waitress;So, uh... when those become available for pre-order? You HAVE to tell me... I can think of at least half a dozen of us that would jump at the opportunity...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> straightens a bit taller with pride at having "won" this first sortie of slave competition. "@@.npc_technician;So, if you are done lusting over my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress'<<case 'male'>>Master's<<default>>my Overseer's<</switch>> property... shall we head inside?@@"
<<else>>
slightly straining, caged <<getWordPenis false>>.<br>
<br>
"@@.npc_maid;Nice, and impressive — I remember how she used to complain about that sort of thing. Guess she's cooling off and learning to be a better sub in her old age.@@"<br>
<br>
"@@.npc_technician;Old? I'm three months younger than you are!@@" <<=setup.getNpcName("npc_technician","first")>> shoots back with a smirk.<br>
<br>
"@@.npc_maid;Ah, perhaps I spoke too soon... maybe you should consider a plug to help keep her... centred... or maybe a gag? Yes, stuffing her from both ends is probably the best plan.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> squints back in mock annoyance.
<</if>>
<<else>>
<<=setup.getNpcName("npc_technician","first")>> looks somewhat embarrassed as she reveals her bulging latex panties.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> snorts. "@@.npc_maid;Uncaged and empty? Figures, well it's one way to handle a slave, but I think she might be a bit too horny to handle like that but, hey, you're her boss, right?@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_maid","first")>> chuckles as <<=setup.getNpcName("npc_technician","first")>> fixes her dress. "@@.npc_maid;Come on, let's head inside.@@"<br>
<br>
[<<moveTo 'event_sexclub_date_technician_sub_5' 'Head into the club.' 300>>]<br>
[<<moveTo 'event_sexclub_date_technician_sub_2' "You changed your mind. You don't want to do this tonight." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: technician sub date, enter club
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
You and your friends enter the club, taking a moment to look around at the sea of sin and debauchery that is <<printShopName 'sex_club'>>.<br>
<br>
"@@.npc_maid;So,@@" <<=setup.getNpcName("npc_maid","first")>> states, speaking a bit louder to be heard over the din. "@@.npc_maid;Where do you want to go to put these cute slaves through their paces?@@"<br>
<br>
<<include "technicianSubDateChoices">>
</div><<if $scene.bar>>
[@@.link_locked;You've already gotten a drink at the bar.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_technician_sub_6_bar_1" "Head for the bar." 60>>]<br>
<</if>>
<<if $scene.dance>>
[@@.link_locked;You've already hit the dance floor.@@]<br>
<<else>>
[<<moveTo "event_sexclub_date_technician_sub_6_dance_1" "Check out the dance floor." 60>>]<br>
<</if>>
<<if $scene.bar && $scene.dance>>
[<<moveTo "event_sexclub_date_technician_sub_6_play_1" "See about having some fun in the play area." 60>>]<br>
<<else>>
[@@.link_locked;The play area feels like the end-game, you should do other stuff first.@@]<br>
<</if>>
[<<moveTo "event_sexclub_date_technician_sub_leave" "You think you're done for the night." 600>>]/*#
#desc: leave technician club sub date early
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'club_mistress_outfit'>>
<<deleteItemSet 'club_mistress_outfit'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_technician","npc_technician_nun")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> that you're ready to go. A few moments of discussion with her friends and <<=setup.getNpcName("npc_technician","first")>> follows you back to the changing rooms where you switch back into your street attire.<br>
<br>
"@@.npc_technician;Pretty intense place, huh? And hot — not just figuratively, but all your latex? Well, maybe some other time, or not — trying to impress <<=setup.getNpcName("npc_maid","first")>> is fun, but so long as we make each other happy, that's all that matters.@@" She smiles and gives you a hug good-bye.<br>
<br>
[<<moveTo 'room_student_quarter' "Leave." 180>>]
</div>/*#
#desc: technician sub date bar
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bar = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
The four of you head for the bar. <<=setup.getNpcName("npc_maid","first")>> takes a seat and waves at the bartender to put in an order as her slave obediently kneels next to her stool. <<=setup.getNpcName("npc_technician","first")>> glances at you for guidance.<br>
<br>
[<<moveTo 'event_sexclub_date_technician_sub_6_bar_2' 'Have <<=setup.getNpcName("npc_technician","first")>> kneel beside you.' 1800 "<<set $scene.barAction=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_sub_6_bar_2_decline' 'Have <<=setup.getNpcName("npc_technician","first")>> sit next to you.' 1800 "<<set $scene.barAction=false>>">>]
</div>/*#
#desc: technician sub date bar
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 12 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
With a gentle pull of her leash you guide <<=setup.getNpcName("npc_technician","first")>> to the floor. <<=setup.getNpcName("npc_maid","first")>> smiles, finishing up the drink order and soon the two slaves are lapping their drinks out of matching dog bowls on the ground while you and <<=setup.getNpcName("npc_maid","first")>> chat casually and enjoy your cocktails.<br>
<br>
"@@.npc_maid;It's good to see you keeping a firm hand on your new slave — she loves it, of course,@@" <<=setup.getNpcName("npc_maid","first")>> states, punctuating things by placing her booted foot on the back of <<=ps(setup.getNpcName("npc_technician","first"))>> head and pushing her down into the dog bowl.<br>
<br>
You barely hear a soft moan from your slave before <<=setup.getNpcName("npc_maid","first")>> takes her foot away. "@@.npc_maid;See? Underneath that switchy exterior is a desperate submissive slut, but she needs a firm hand. Between work and game she is far too used to being "in control" so you need to keep a close eye and a firm grip to keep her happy and in line.@@"<br>
<br>
You nod, the conversation moving on to other things as you relax and enjoy your drinks, the two slaves licking their bowls clean and then kneeling obediently for you and <<=setup.getNpcName("npc_maid","first")>> to finish. You reach down and stroke <<=ps(setup.getNpcName("npc_technician","first"))>> hair and she purrs in submissive contentment.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> pays the bartender — with a hefty tip, and glances towards you to see what you're interested in doing next.<br>
<br>
<<include "technicianSubDateChoices">>
</div>/*#
#desc: technician sub date bar don't dom her
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
Though you continue to hold her leash, you allow <<=setup.getNpcName("npc_technician","first")>> to sit next to you rather than on the floor like <<=ps(setup.getNpcName("npc_maid","first"))>> slave. <<=setup.getNpcName("npc_maid","first")>> raises an eyebrow and shakes her head. The three of you relax over a round of drinks while <<=setup.getNpcName("npc_waitress","first")>> laps her out of a dog-bowl placed on the floor.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> pays the bartender — with a hefty tip, and glances towards you to see what you're interested in doing next.<br>
<br>
<<include "technicianSubDateChoices">>
</div>/*#
#desc: technician sub date dance
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dance = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
You head for the dance floor where <<=setup.getNpcName("npc_maid","first")>> pauses with a grin. "@@.npc_maid;Say... let's make this a little more interesting, hmm?@@" Reaching into her purse she pulls out a double-sided gag, and a couple of short straps. "@@.npc_maid;Whadaya think? Have the two of them dance for our entertainment and enjoy a little slave writhing?@@"<br>
<br>
[<<moveTo 'event_sexclub_date_technician_sub_6_dance_2' 'That sounds fun!' 1800 "<<set $scene.danceAction=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_sub_6_dance_2_decline' 'You would rather just dance with <<=setup.getNpcName("npc_technician","first")>>.' 1800 "<<set $scene.danceAction=false>>">>]
</div>/*#
#desc: technician sub date dance
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 14 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
You grin and help <<=setup.getNpcName("npc_maid","first")>> gag your two slaves together, then strap their arms together in a mutual hug.<br>
<br>
The restrictive position doesn't allow for PARTICULARLY much "dancing" but the sight of the two slaves writhing against each other to the music is definitely entertaining to the rest of the dance floor.<br>
<br>
By the time you and <<=setup.getNpcName("npc_maid","first")>> decide to give your sweaty slaves a break the crowd is cheering along. Once the gag and restraints are removed <<=setup.getNpcName("npc_technician","first")>> takes a blushing bow and then throws herself against you for a hug.<br>
<br>
"@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>my Overseer<</switch>>... that was soooo hot.@@"<br>
<br>
<<=setup.getNpcName("npc_waitress","first")>> is significantly more demure in showing her appreciation, but both slaves are soon back on their leashes as you consider what to do next.<br>
<br>
<<include "technicianSubDateChoices">>
</div>/*#
#desc: technician sub date dance non-sub
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
You decline <<=ps(setup.getNpcName("npc_maid","first"))>> offer. You want to dance with <<=setup.getNpcName("npc_technician","first")>>, not just watch her!<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> shrugs, dropping the restraints back in her purse as the four of you hit the dance floor.
<<if setup.getTotalValue("dexterity") + setup.getTotalValue("heels") > 30>>
You take some measure of pride that you and <<=setup.getNpcName("npc_technician","first")>> are the far superior dancers. Sure, <<=setup.getNpcName("npc_technician","first")>> struggles a bit in her heels, but the combination of your perfect skill and general agility covers for it as the two of you move well enough to draw admiring glances from across the floor.
<<elseif setup.getTotalValue("dexterity") + setup.getTotalValue("heels") < 10>>
With <<=setup.getNpcName("npc_technician","first")>> clearly unsteady in her heels the two of you take a careful approach to the dance floor, more moving your upper bodies to the music, with a bit of grind and grope.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> is definitely a bit un-used to such steep heels compared to the two maids but you manage to lead her well enough to make up for it, and the two of you enjoy a few tracks of fun, and sexy, dancing.
<</if>>
<br><br>
Having worked up a bit of a sweat the four of you take a lull in the music as opportunity to decamp the floor and plan what to do next.<br>
<br>
<<include "technicianSubDateChoices">>
</div>/*#
#desc: technician sub date play
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.play = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> looks both nervous and excited as the four of you head for the play area.<br>
<br>
Surveying the territory of bondage equipment and scattered partners and groups at play <<=setup.getNpcName("npc_maid","first")>> grins. "@@.npc_maid;Now HERE is the field upon which a slave shows her mettle. What shall it be, flogging? Predicament? Service? No... I know the ultimate test to see if <<=setup.getNpcName("npc_technician","first")>> has truly learned obedience — edging.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip and <<=setup.getNpcName("npc_maid","first")>> smiles wider. "@@.npc_maid;Yeah, don't think I haven't forgotten how horny and desperate for orgasm you get at the slightest provocation. Show me you've learned control in THAT regard and, well... I'll have some serious respect for <<=ps($player.first_name)>> dominant chops!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> voice cracks ever so slightly as she turns to you in response. "@@.npc_technician;If it is my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress'<<case 'male'>>Master's<<default>>Overseer's<</switch>> desire that I prove myself in this way... then this slave shall endure.@@"<br>
<br>
[<<moveTo 'event_sexclub_date_technician_sub_6_play_2' 'Game on!' 1800 "<<set $scene.playAction=true>>">>]<br>
[<<moveTo 'event_sexclub_date_technician_sub_6_play_2' "You don't feel like competing today." 1800 "<<set $scene.playAction=false>>">>]
</div>/*#
#desc: technician sub date edging competition
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.playAction>>
<<applyExperience 'dominance' 15 'very' $EXPOSED>>
<<set $scene.slave_game = {
"nipple_vibe" : false,
"blindfold" : false,
"fuck" : false,
"vibe" : false,
"estim" : false,
"count" : 1
}>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
<<if $scene.playAction>>
There's a bit of back and forth to establish the rules, and decide on scoring, but the end result is that <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_waitress","first")>> are soon restrained in matching standing cross configurations for something akin to a modified game of horse. You and <<=setup.getNpcName("npc_maid","first")>> will alternate what sort of stimulation device should be applied, whoever <<if $npc_technician.relationship.her_caged>>leaks through their cage<<else>>cums<</if>> first is considered to have less "control" and thus be the loser.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> glances at you for support as she bites down on her gag and tests her bonds. You lost the coin-flip, so <<=setup.getNpcName("npc_maid","first")>> is picking first...<br>
<br>
"@@.npc_maid;Since you're going to lose anyway, I'll start things easy with some nipple clamps.@@"<br>
<br>
A few nearby club-goers watch on in interest as you and <<=setup.getNpcName("npc_maid","first")>> attach a pair of nipple clamps to your slaves.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> takes a deep breath and nods. From the look of things <<=setup.getNpcName("npc_waitress","first")>> is having a bit of a harder time thanks to her large, full breasts and clearly very sensitive nipples...<br>
<br>
[<<moveTo "event_sexclub_date_technician_sub_7_root" "Continue." 60>>]
<<else>>
You glance at <<=setup.getNpcName("npc_technician","first")>> and then grin, explaining that you'd rather use her insatiable horniness than punish her for it.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks both relieved, and a little disappointed as <<=setup.getNpcName("npc_maid","first")>> snorts in amusement. "@@.npc_maid;Well... I guess that's one way to skirt the issue, ah well, what would you rather do instead?@@"<br>
<br>
<<include "technicianSubDateChoices">>
<</if>>
</div>/*#
#desc: sex club technician sub play competition
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.slave_game.blindfold>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_slave_gag_blindfold") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave_gag_blindfold")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_slave_gag") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave_gag")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_waitress","first")>> are bound spread-eagle on display.
<<if $scene.slave_game.nipple_vibe>>Vibrating nipple clamps stimulate their breasts<<else>>harsh nipple clamps dangle from their tits<</if>>.
<<if $scene.slave_game.fuck>>Powerful fucking machines pound them from behind.<</if>>
<<if $scene.slave_game.vibe>>A wand vibrator is held pressed against their chastity devices.<</if>>
<<if $scene.slave_game.blindfold>>They are blindfolded to "enhance" their sensitivity.<</if>>
<<if $scene.slave_game.estim>>Strong e-stim has them twitching in pain.<</if>>
<br><br>
<<switch $scene.slave_game.count>>
<<case 1>>
Both women are still in control... perhaps <<=setup.getNpcName("npc_waitress","first")>> has a slight advantage, but it is early in the game...
<<case 2 3>>
Things are starting to heat up as both women strain against their bonds and the inescapable stimulation that is becoming a torment to resist.
<<case 4>>
Both women are writhing in their bonds, obviously pushed near to their limit, but you figure it could still be anyone's game...
<<case 5>>
Both women are near their limit, and your own heart pounds as you wonder how much longer <<=setup.getNpcName("npc_technician","first")>> can endure, taking solace in the fact that <<=setup.getNpcName("npc_maid","first")>> is looking worried for her own slave...
<<default>>
ERROR: unexpected scene.slave_game.count <<=$scene.slave_game.count>>
<</switch>>
<br><br>
It's your turn to choose, <<=setup.getNpcName("npc_maid","first")>> grins as she waits for you to make your decision...<br>
<br>
<<if !$scene.slave_game.nipple_vibe>>
[<<moveTo "event_sexclub_date_technician_sub_7_action" "Turn on the vibrators in the nipple clamps." 60 "<<set $scene.action = 'nipple_vibe'>>">>]<br>
<</if>>
<<if !$scene.slave_game.blindfold>>
[<<moveTo "event_sexclub_date_technician_sub_7_action" "Add a blindfold to make things more intense." 60 "<<set $scene.action='blindfold'>>">>]<br>
<</if>>
<<if !$scene.slave_game.fuck>>
[<<moveTo "event_sexclub_date_technician_sub_7_action" "Add a fucking machine behind." 60 "<<set $scene.action='fuck'>>">>]<br>
<</if>>
<<if !$scene.slave_game.vibe>>
[<<moveTo "event_sexclub_date_technician_sub_7_action" "Add some front vibrations." 60 "<<set $scene.action='vibe'>>">>]<br>
<</if>>
<<if !$scene.slave_game.estim>>
[<<moveTo "event_sexclub_date_technician_sub_7_action" "Add some painful e-stim." 60 "<<set $scene.action='estim'>>">>]
<</if>>
</div>/*#
#desc: sex club technician sub play competition
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.slave_game[$scene.action] = true>>
<<set $scene.slave_game.count += 1>>
<<set _dominance = 10 + $scene.slave_game.count>>
<<switch $scene.action>>
<<case 'nipple_vibe'>>
<<applyExperience 'dominance' _dominance 'normal' $SEEN_FRIEND>>
<<case 'blindfold'>>
<<applyExperience 'dominance' _dominance 'little' $SEEN_FRIEND>>
<<case 'fuck'>>
<<applyExperience 'dominance' _dominance 'normal' $SEEN_FRIEND>>
<<case 'vibe'>>
<<applyExperience 'dominance' _dominance 'very' $SEEN_FRIEND>>
<<case 'estim'>>
<<applyExperience 'dominance' _dominance 'unbelievable' $SEEN_FRIEND>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.slave_game.blindfold>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_slave_gag_blindfold") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave_gag_blindfold")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_slave_gag") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave_gag")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'nipple_vibe'>>
The nipple vibrators turn on, <<=ps(setup.getNpcName("npc_waitress","first"))>> large breasts heaving as she moans through her gag. For her part <<=setup.getNpcName("npc_technician","first")>>, is breathing through her nose as she clamps down on her gag — it would seem <<=ps(setup.getNpcName("npc_maid","first"))>> comment about <<=ps(setup.getNpcName("npc_technician","first"))>> "vulnerability" were true...
<<case 'blindfold'>>
You approach <<=setup.getNpcName("npc_technician","first")>> holding the "simple" blindfold. On paper it is far less extreme than the other things she is enduring, but the look in her eye tells you that she knows how much losing one of her senses will heighten everything else. Still, her final expression before you rob her of her sight is one of adoration, and determination.
<<case 'fuck'>>
You finish aligning the lube-slick dildo with <<=ps(setup.getNpcName("npc_technician","first"))>> rear and it thrusts upwards.
<<if $scene.slave_game.blindfold && !$scene.slave_game.estim>>
<<set $scene.slave_game.loss = true>>
She gasps in surprise, looking almost like she is trying to escape the prostate-pounding action... the surprise of which turns out to be too much as she
<<elseif !$scene.slave_game.estim>>
<<set $scene.slave_game.loss = true>>
She moans as the dildo strikes her prostate, that first thrust hitting her slut-button so hard she
<<else>>
The thick dildo rams past her prostate and you can tell from her tight muscles that she desperately wants to cum, but a harsh electric shock provides just enough pain to distract her, to let her body fall back into a valley of near-overwhelming sensation rather than reach the summit of orgasm.
<</if>>
<<case 'vibe'>>
<<if $npc_technician.relationship.her_caged>>
You touch the vibrator to the front of <<=ps(setup.getNpcName("npc_technician","first"))>>
<<if $npc_technician.relationship.sissyomatic>>
<<=setup.getItemName("sissyomatic")>>. There is a momentary pause before she reacts and you recall the advanced metamaterials of the device.<br>
<br>
<<printThought "Shit... she's practically cheating — she can't feel any of these vibrations!">><br>
<br>
You glance over at <<=setup.getNpcName("npc_waitress","first")>> who is panting hard as her own vibrations are VERY much felt. Oh well, it's not like <<=setup.getNpcName("npc_maid","first")>> made any promise of playing "fair" — besides <<=setup.getNpcName("npc_technician","first")>> has been locked up, plugged and <<if $fetish.sounding>>urethra <</if>>stimulated this whole time... that probably balances out, right?
<<else>>
cage. You see her swell within the device as it stimulates her from every direction, but the prison does its job, keeping her from growing beyond its walls, and leaving her in control for a little longer... if barely.
<</if>>
<<else>>
<<set $scene.slave_game.loss = true>>
Barely have you touched the vibrator to the base of her throbbing <<getWordPenis false>> when she
<</if>>
<<case 'estim'>>
You apply electro-stimulative pads to <<=ps(setup.getNpcName("npc_technician","first"))>> inner thighs and rear. <<=setup.getNpcName("npc_maid","first")>> does the "honour" of turning things on, and soon both bound women are twitching and jerking against their bonds with each painful shock, both drooling past their respective gags as they endure this new level of stimulation.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.slave_game.loss>>
cums, hard,
<<if $npc_technician.relationship.her_caged>>
leaking down her leg, her chastity device weeping with the evidence of her failure.
<<else>>
shooting a long, ropey blast with such power that it actually hits one of the audience members several meters away.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> goes limp as <<=setup.getNpcName("npc_maid","first")>> chuckles and disables things. "@@.npc_maid;She's gotten better at controlling herself, but it looks like you have yet to tame that desperate sensation-slut.@@"<br>
<br>
[<<moveTo "event_sexclub_date_technician_sub_8" 'Release <<=setup.getNpcName("npc_technician","first")>> from her bonds.' 300>>]
<<else>>
<br><br>
<<switch $scene.slave_game.count>>
<<case 2 4>>
[<<moveTo "event_sexclub_date_technician_sub_7_maid" 'It is <<=ps(setup.getNpcName("npc_maid","first"))>> turn to choose...' 180>>]
<<case 3 5>>
[<<moveTo "event_sexclub_date_technician_sub_7_root" 'Time to make your next choice...' 180>>]
<<case 6>>
With a muffled gasp <<=setup.getNpcName("npc_waitress","first")>> cums, leaking out of her cage as she thrashes in her bonds.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> looks momentarily shocked before she takes mercy flicks a switch, the stimulation stopping for both "contestants" as they both go limp in their restraints, <<=setup.getNpcName("npc_technician","first")>> letting out a forlorn moan as she is left the "winner" — and thus unsatisfied.<br>
<br>
[<<moveTo "event_sexclub_date_technician_sub_8" 'Release <<=setup.getNpcName("npc_technician","first")>> from her bonds.' 180>>]
<<default>>
ERROR: unexpected scene.slave_game.count <<=$scene.slave_game.count>>
<</switch>>
<</if>>
</div>/*#
#desc: npc_maid acts on npc_technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.slave_game.blindfold>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_slave_gag_blindfold") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave_gag_blindfold")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_slave_gag") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave_gag")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$scene.slave_game.nipple_vibe>>
<<=setup.getNpcName("npc_maid","first")>> grins and hands you the control for the vibrator built into the nipple clamps, both women jumping as what had before been mere pinching pain becomes something more...<br>
<br>
"@@.npc_maid;So... a bit of a trap, there. You see, while <<=setup.getNpcName("npc_technician","first")>> may not have quite the rack some of the rest of us have, those pretty little nipples of hers have a bit of a vulnerability to vibrations...@@"<br>
<br>
[<<moveTo "event_sexclub_date_technician_sub_7_action" "Go along and turn on the vibrators in the nipple clamps." 60 "<<set $scene.action = 'nipple_vibe'>>">>]
<<elseif !$scene.slave_game.fuck>>
<<=setup.getNpcName("npc_maid","first")>> points to the vertically aligned fucking machines lurking beneath each bound woman's spread legs. "@@.npc_maid;I think it's time for some prostate-pounding action — after all, if a slave goes to pieces the moment their slut button is pressed well... that's quite a weakness!@@"<br>
<br>
[<<moveTo "event_sexclub_date_technician_sub_7_action" 'Match <<=ps(setup.getNpcName("npc_maid","first"))>> efforts and add a fucking machine behind.' 60 "<<set $scene.action='fuck'>>">>]
<<elseif !$scene.slave_game.vibe>>
<<=setup.getNpcName("npc_maid","first")>> grins as she reaches for a pair of powerful wand vibrators.<br>
<br>
"@@.npc_maid;Let's get serious — I doubt your cute slave will last long with this jammed against her <<getWordPenis false>>...@@"<br>
<br>
[<<moveTo "event_sexclub_date_technician_sub_7_action" 'Match <<=ps(setup.getNpcName("npc_maid","first"))>> efforts and add front vibrations.' 60 "<<set $scene.action='vibe'>>">>]
<<elseif !$scene.slave_game.blindfold>>
<<=setup.getNpcName("npc_maid","first")>> seems surprised that <<=setup.getNpcName("npc_technician","first")>> has lasted this long.<br>
<br>
"@@.npc_maid;Well, colour me surprised, but stimulation gets so much more intense with a bit of sensory deprivation, I think blindfolds are in order...@@"<br>
<br>
[<<moveTo "event_sexclub_date_technician_sub_7_action" 'Match <<=ps(setup.getNpcName("npc_maid","first"))>> efforts and add a blindfold.' 60 "<<set $scene.action='blindfold'>>">>]
<<elseif !$scene.slave_game.estim>>
"@@.npc_maid;Alright, well... I didn't want to be seen as cruel, but I think it's time to add the spice of pain to the mix. Of course both of these girls are pain-sluts to being with, and with how warmed up they are already, well... I'm sure the agony will just be another delicious flavour of sensation.@@"<br>
<br>
[<<moveTo "event_sexclub_date_technician_sub_7_action" 'Match <<=ps(setup.getNpcName("npc_maid","first"))>> efforts and add painful e-stim.' 60 "<<set $scene.action='estim'>>">>]
<<else>>
ERROR: unexpected state!
<</if>>
</div>/*#
#desc: finish sub competition with npc_maid
#status: RELEASED 0.8.6.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slave_game.loss>>
<<applyStress 10>>
<<else>>
<<set $npc_maid.flags.edge_win=true>>
<<setThreshold 'dominance' 'dominance_other' 'dom_mastery'>>
<<set _dominance = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dominance 'skip' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
<<if $scene.slave_game.loss>>
<<=setup.getNpcName("npc_technician","first")>> almost collapses into your arms, utterly drained by her ordeal, tears streaming down her cheeks as the first thing she says after her gag is removed is to beg forgiveness.<br>
<br>
"@@.npc_technician;I'm sorry, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>my Overseer<</switch>>, I didn't want to fail you but the stimulation was so much and—@@"<br>
<br>
Feeling guilty for putting her up to the whole thing, you cut her blubbering off with a kiss, hugging her close and explaining that the contest doesn't matter, she looked so hot when she came it was worth it for that alone.<br>
<br>
She shudders, her lust-blasted body reflexively grinding against you in response, "@@.npc_technician;Th-thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>my Overseer<</switch>>...@@" She whispers as you are suddenly distracted by a commotion on the club's stage.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> sinks into your arms, clearly drained from the ordeal, but with a proud smile on her lips as she looks over at her friends.<br>
<br>
"@@.npc_technician;Victory!@@" She whispers, seemingly not having the energy for anything else.<br>
<br>
"@@.npc_maid;Victory, indeed,@@" <<=setup.getNpcName("npc_maid","first")>> states after taking a few moments to comfort her own slave. "@@.npc_maid;I guess <<=$player.first_name>> has figured out what I never could, <<=setup.getNpcName("npc_technician","first")>> has certainly shown far more control than I've seen before. Good job, and my congratulations to you both.@@"<br>
<br>
Her smile is genuine, a brief slipping of the mask in <<=setup.getNpcName("npc_technician","first")>> and <<=ps(setup.getNpcName("npc_maid","first"))>> seemingly eternal playful jousting match.<br>
<br>
Before you can say anything further you are distracted by a commotion on the club's stage.
<</if>>
<br><br>
"@@.npc_maid;Must be time for the night's show,@@" <<=setup.getNpcName("npc_maid","first")>> states, "@@.npc_maid;Come on, let's take a break and watch someone ELSE get tormented.@@"<br>
<br>
[<<moveTo 'event_sexclub_date_technician_sub_9' 'Check out the show.' 1800>>]
</div>/*#
#desc: technician sub watch show
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_technician","npc_technician_slave") setup.charImage("npc_maid","npc_maid_latex") setup.charImage("npc_waitress","npc_waitress_slave")>>
<div id="invframe" class="scrolltext">
Compared to what you were just up to the "show" is almost... pedestrian and you barely even remember it, occupied instead by keeping your exhausted slave from slumping to the ground.<br>
<br>
Glancing over to see that <<=setup.getNpcName("npc_maid","first")>> is in nearly the same position the four of you decide to call it a night, <<=setup.getNpcName("npc_technician","first")>> telling you to keep your outfit as a gift as the four of you bundle into a cab that drops you off home in sequence.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 1800>>]
</div>/*#
#desc: arrive at technician's place for your dinner date
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.dinner_dates++>>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_technician',$npc_technician)>>
<<storeVisual $player $npc_technician>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName('npc_technician', 'first'))>> flat where she throws open the door to greet you.<br>
<br>
<<if $npc_technician.relationship.dinner_dates == 1>>
"@@.npc_technician;Welcome!@@" she states with a grin. "@@.npc_technician;Come on in, dinner is just about ready, you're gonna love it!@@"<br>
<br>
<<if $scene.compareVisuals != "">>
She pauses to look you over. "@@.npc_technician;Wow, you've been making some changes! <<=$scene.compareVisuals>>@@"<br>
<br>
<</if>>
You can't smell anything but as you walk in you spot a large tub of water circulating away in the kitchen.<br>
<br>
"@@.npc_technician;Was just about to pull things out of the sous vide. Go ahead and take a seat and watch the show.@@"<br>
<br>
<<printThought "Show?">><br>
<br>
[<<moveTo "event_technician_dinner_1_2" 'Take a seat.' 600>>]
<<else>>
"@@.npc_technician;Welcome back to Chez <<=setup.getNpcName("npc_technician","last")>>!@@" She states with a grin. "@@.npc_technician;Come on in, dinner is just about ready, you're gonna love it!@@"<br>
<br>
You can't smell anything but as you walk in you spot a large tub of water circulating away in the kitchen.<br>
<br>
<<if $scene.compareVisuals != "">>
She pauses to look you over. "@@.npc_technician;Wow, you've been making some changes! <<=$scene.compareVisuals>>@@"<br>
<br>
<</if>>
"@@.npc_technician;Was just about to pull things out of the sous vide. Go ahead and take a seat and watch the show. Don't worry — this time I remembered to take care of the alarm.@@" She points at the smoke alarm, "safely" cocooned in a plastic bag.<br>
<br>
<<if $npc_technician.relationship.her_role == "dom">>
[<<moveTo "event_technician_dinner_serve_choose" 'Ask if you could serve your <<=setup.getNpcName("npc_technician","title")>>.' 120>>]<br>
<</if>>
<<if $npc_technician.relationship.kinks.piss && $npc_technician.relationship.kink_indulge.piss < 2>>
[<<moveTo "event_technician_dinner_piss_1" 'Take a seat.' 600>>]
<<else>>
[<<moveTo "event_technician_dinner_2_2" 'Take a seat.' 600>>]
<</if>>
<</if>>
</div>/*#
#desc: call from technician when fail to show up to your dinner date
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_technician' 2>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_technician', 'first')>>. Oh poop. You were supposed to meet her for dinner today.<br>
<br>
"@@.npc_technician;So... I've got this nice dinner prepared and... you're not here...@@"<br>
<br>
She doesn't even sound angry just... disappointed and hurt. Somehow that's even worse.<br>
<br>
"@@.npc_technician;Don't bother coming over at this point just... I'll see later, okay?@@"<br>
<br>
She hangs up before you can reply.<br>
<br>
<<printThought "Dammit, I feel like such a heel.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: first dinner date w/technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You watch as <<=setup.getNpcName('npc_technician', 'first')>> turns off the water circulation device and pulls out the bag containing dinner. Slipping the two perfectly done steaks onto a plate she grins at you. "@@.npc_technician;And now... to sear!@@" She sparks with a manic expression, bouncing her eyebrows before setting to work perfectly browning the meat on each side...<br>
<br>
... or rather, that seems to be her plan, until she is interrupted by the over-exuberant apartment smoke detector screeching in objection.<br>
<br>
"@@.npc_technician;Gah! Horrid thing!@@" She calls out as she tosses you a towel to fan frantically until the device shuts up.<br>
<br>
"@@.npc_technician;So annoying, how's a girl to cook properly?@@" She states, shaking her head as she finishes up plating and you return to your seat.<br>
<br>
[<<moveTo "event_technician_dinner_1_3" 'Dinner.' 7200>>]
</div>/*#
#desc: first dinner date w/technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $player.flags.boiless.known>>
For someone that doesn't eat <<=setup.getNpcName('npc_technician', 'first')>> definitely knows how to make something delicious.
<</if>>
The two of you share a wonderful meal as she gushes about how great a tool sous vide is for cooking in a small space.<br>
<br>
"@@.npc_technician;You know the original machines were literally chemistry lab equipment?@@" She explains. "@@.npc_technician;It's really quite cool, and the precision it lets you achieve! So much better than the crap stove that came with the place!@@"<br>
<br>
As always, her passion is infectious and you listen to her gush about molecular gastronomy.
<<if $player.flags.boiless.known>>
You get the feeling that her choice of meal-replacement is more a financial and time-based efficiency one as she definitely seems to have a bit of a thing for food and the fancy preparation thereof.
<</if>>
As you clean your plate you thank her once again for the wonderful meal and she blushes.<br>
<br>
"@@.npc_technician;Oh, you're so sweet! Though I'll confess part of the reason for all this is to save money on restaurants... plus this means I don't have to talk cuties into coming home with me, we're already here!@@"<br>
<br>
You laugh, helping her clean up the dishes before joining her on the couch.<br>
<br>
[<<moveTo "event_technician_dinner_snuggle_1" 'Snuggle on the couch.' 600>>]
</div>/*#
#desc: technician dinner date repeat
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 2>>
<<applyExperience 'piss' 15 'very' $SEEN_FRIEND>>
<</if>>
<<if $fetish.cum && $npc_technician.relationship.kinks.cum && $npc_technician.relationship.kink_indulge.cum >= 2>>
<<applyExperience 'cum' 15 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You share another of <<=ps(setup.getNpcName('npc_technician', 'first'))>> sous vide culinary experiments — this time without her theatrical torch display setting off any alarms.<br>
<br>
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 3>>
She carbonates another batch of "special" champagne and raises her glass as she shares in imbibing with you.<br>
<br>
You grin and knock yours back with a smile, impressed at how she managed to "pair" the bold flavours of the meal itself with the bitterness of the "wine."
<<else>>
Just as before you congratulate her on a lovely meal and she blushes. "@@.npc_technician;It's really no big thing — I mean the beauty of it is how precise and controlled it all is, not like I was doing something hard like baking a souffle!@@"
<</if>>
<br><br>
<<if $fetish.cum && $npc_technician.relationship.kinks.cum>>
<<switch $npc_technician.relationship.kink_indulge.cum>>
<<case 0>>
You finish the meal and she gets a sly grin on her face. "@@.npc_technician;So... I remembered something you mentioned, and I did a bit of research and well... I made us a special little dessert.@@"<br>
<br>
She takes a cupcake out of the fridge and gives them a quick zap in the microwave before setting it down in front of you.<br>
<br>
"@@.npc_technician;My own... personal recipe. I worked really hard to get the frosting and filling just the way you like.@@"<br>
<br>
You can tell she's up to something as she smiles and watches as you take your first bite.<br>
<br>
[<<moveTo "event_technician_dinner_cum_1" 'This tastes of cum! Yum — finish them off.' 600 "<<set $scene.eat=true>>">>]<br>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't possibly pass up a cum-cake!@@]
<<else>>
[<<moveTo "event_technician_dinner_cum_1" "This tastes of cum! That's not a proper dessert!" 600 "<<set $scene.eat=false>>">>]
<</if>>
<<case 1>>
"@@.npc_technician;Sooo...@@" She says with a smile, "@@.npc_technician;I did a bit more baking, I really think the cum-cakes came out good this time... if you want one...@@"<br>
<br>
[<<moveTo "event_technician_dinner_cum_1" 'Cum = yum, a cum-cake sound great!' 600 "<<set $scene.eat=true>>">>]<br>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't possibly pass up a cum-cake!@@]
<<else>>
[<<moveTo "event_technician_dinner_cum_1" "That's not a proper dessert!" 600 "<<set $scene.eat=false>>">>]
<</if>>
<<case 2 3 4>>
You finish the meal and she produces a pair of fresh-frosting cum-cakes with a smile.<br>
<br>
She winks at you and the two of you bite in for a quick shared salty-sweet dessert of <<if $npc_technician.last=="Strawberry">><<=setup.getNpcName("npc_technician","last")>>-filled <</if>>deliciousness.<br>
<br>
[<<moveTo "event_technician_dinner_snuggle_1" 'Head to the couch for snuggle time.' 600>>]
<</switch>>
<<else>>
You downplay her modesty, continuing to gush how tasty everything was even after you have finished the meal and the two of you retire to the couch.
[<<moveTo "event_technician_dinner_snuggle_1" 'Snuggle time.' 600>>]
<</if>>
</div>/*#
#desc: on the couch after dinner w/technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<applyStress -10>>
<<set $scene.genital_change = setup.changedGenitals($player,$npc_technician, true) != "">>
<<storeGenitals $player $npc_technician>>
<<set $scene.returnPassage = 'event_technician_dinner_snuggle_1'>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.genital_change>>
As she gets into position against you she pauses. "@@.npc_technician;Hey, so... I noticed it earlier but snuggling up makes it even more apparent, your body has gone through some changes since last we snuggled!@@"<br>
<br>
[<<moveTo 'event_technician_theme_genitals_intro' 'Talk about your changes.' 60>>]
<<elseif State.hasPlayed("event_technician_key_request_dom_2") && !State.hasPlayed("event_technician_dom_training_ask_1") && $npc_technician.relationship.her_role == "dom">>
<<=setup.getNpcName('npc_technician', 'first')>> cuddles you close and you sense her mulling over a question...<br>
<br>
[<<moveTo 'event_technician_dom_training_ask_1' 'See what she has to say.' 300>>]
<<else>>
Bellies pleasantly full you and <<=setup.getNpcName('npc_technician', 'first')>> cuddle on the couch as you consider what to do...<br>
<br>
<<if !$npc_technician.relationship.private_games.strip_game>>
[<<moveTo 'event_technician_private_game_strip_game_1' 'Ask if she might be up for running you through a "private" session...' 300>>]<br>
<<else>>
<<include "post_session_options">>
<</if>>
<</if>>
</div>/*#
#desc: snuggle after dinner w/technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<applyFatigue -20>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You enjoy a happy evening snuggling with your girlfriend, watching some random anime and laughing together before it is finally time for her to kiss you goodbye and you to head home.<br>
<br>
"@@.npc_technician;Thanks again for volunteering for one of my culinary experiments.@@" She jokes as you assure her that it was a delicious experiment indeed.<br>
<br>
<<if $npc_technician.relationship.her_role == 'dom' && setup.getTotalValue("submission") >= 15 && $npc_technician.affection == 10 && $npc_technician.anger == 0 && (!($fetish.chastity_vag && $player.body_ref.vagina && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis) || $npc_technician.relationship.keyholder) && $player.flags.collar.owner == "" && (!$currentTasks.hasOwnProperty('technician_roleplay_surgery') || $currentTasks.technician_roleplay_surgery.finished) && setup.findThemeId('npc_technician', 'sex', 'theme_technician_collar') == -1>>
Joyfully wrapped in the arms of your girlfriend you while away the rest of the evening doing the most depraved thing imaginable — cuddling with your clothes on. The minutes tick past in one another's arms before it comes time that you should really be heading out.<br>
<br>
[<<moveTo 'event_technician_collar_offer_1' 'Head home.' 60>>]
<<else>>
"@@.npc_technician;You're so nice,@@" she replies with a smile. "@@.npc_technician;Though nothing is as tasty of a treat as you are.@@" She leans in for another kiss, your lips pressing together for over a minute before you come up for air and finally depart.<br>
<br>
[<<moveTo 'room_student_quarter' "Depart." 600>>]
<</if>>
</div>/*#
#desc: offer drugs to technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> about the advanced drugs you've been mixing up in your job as a nurse and ask if she'd like to try any?<br>
<br>
She thinks for a moment, "@@.npc_technician;Hmm... I'm usually pretty careful about what sort of things I put into my body... what sort of drugs are we talking?@@"<br>
<br>
<<if setup.checkItemInInventory('drug_breast') || setup.checkItemInInventory('drug_breast_plus')>>
<<if setup.checkItemInInventory('drug_breast')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_breast")>>.' 600 "<<set $scene.drug='breast'>><<set $scene.plus=false>>">>]
<</if>>
<<if setup.checkItemInInventory('drug_breast_plus')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_breast_plus")>>.' 600 "<<set $scene.drug='breast'>><<set $scene.plus=true>>">>]
<</if>>
<br>
<<else>>
[@@.link_locked;You have no <<=setup.getItemName("drug_breast")>> to offer.@@]<br>
<</if>>
<<if setup.checkItemInInventory('drug_ditzy') || setup.checkItemInInventory('drug_ditzy_plus')>>
<<if setup.checkItemInInventory('drug_ditzy')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_ditzy")>>.' 600 "<<set $scene.drug='ditzy'>><<set $scene.plus=false>>">>]
<</if>>
<<if setup.checkItemInInventory('drug_ditzy_plus')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_ditzy_plus")>>.' 600 "<<set $scene.drug='ditzy'>><<set $scene.plus=true>>">>]
<</if>>
<br>
<<else>>
[@@.link_locked;You have no <<=setup.getItemName("drug_ditzy")>> to offer.@@]<br>
<</if>>
<<if setup.checkItemInInventory('drug_slave') || setup.checkItemInInventory('drug_slave_plus')>>
<<if setup.checkItemInInventory('drug_slave')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_slave")>>.' 600 "<<set $scene.drug='slave'>><<set $scene.plus=false>>">>]
<</if>>
<<if setup.checkItemInInventory('drug_slave_plus')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_slave_plus")>>.' 600 "<<set $scene.drug='slave'>><<set $scene.plus=true>>">>]
<</if>>
<br>
<<else>>
[@@.link_locked;You have no <<=setup.getItemName('drug_slave')>> to offer.@@]<br>
<</if>>
<<if setup.checkItemInInventory('drug_dick') || setup.checkItemInInventory('drug_dick_plus')>>
<<if setup.checkItemInInventory('drug_dick')>>
[<<moveTo "event_technician_drug_delta_1" 'Offer her a dose of <<=setup.getItemName("drug_dick")>>.' 600 "<<set $scene.plus=false>><<set $scene.plus=false>>">>]
<</if>>
<<if setup.checkItemInInventory('drug_dick_plus')>>
[<<moveTo "event_technician_drug_delta_plus_1" 'Offer her a dose of <<=setup.getItemName("drug_dick_plus")>>.' 600 "<<set $scene.plus=true>>">>]
<</if>>
<br>
<<else>>
[@@.link_locked;You have no <<=setup.getItemName("drug_dick")>> to offer.@@]<br>
<</if>>
<<if setup.checkItemInInventory('drug_smart') || setup.checkItemInInventory('drug_smart_plus')>>
<<if setup.checkItemInInventory('drug_smart')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_smart")>>.' 600 "<<set $scene.drug='smart'>><<set $scene.plus=false>>">>]
<</if>>
<<if setup.checkItemInInventory('drug_smart_plus')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_smart_plus")>>.' 600 "<<set $scene.drug='smart'>><<set $scene.plus=true>>">>]
<</if>>
<br>
<<else>>
[@@.link_locked;You have no <<=setup.getItemName("drug_smart")>> to offer.@@]<br>
<</if>>
<<if setup.checkItemInInventory('drug_master') || setup.checkItemInInventory('drug_master_plus')>>
<<if setup.checkItemInInventory('drug_master')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_master")>>.' 600 "<<set $scene.drug='master'>><<set $scene.plus=false>>">>]
<</if>>
<<if setup.checkItemInInventory('drug_master_plus')>>
[<<moveTo "event_technician_drug_fail" 'Offer her a dose of <<=setup.getItemName("drug_master_plus")>>.' 600 "<<set $scene.drug='master'>><<set $scene.plus=true>>">>]
<</if>>
<br>
<<else>>
[@@.link_locked;You have no <<=setup.getItemName("drug_master")>> to offer.@@]<br>
<</if>>
[<<moveTo $scene.returnPassage "Do not offer her drugs." 600>>]
</div>/*#
#desc: offer non-Delta drug to technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drug == "slave" && $npc_technician.relationship.her_role == "sub">>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<elseif $scene.drug == "master" && $npc_technician.relationship.her_role == "dom">>
<<applyExperience 'submission' 12 'little' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 5 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You offer <<=setup.getNpcName("npc_technician","first")>> a dose of
<<switch $scene.drug>>
<<case "breast">>
<<if $scene.plus>><<=setup.getItemName("drug_breast_plus")>><<else>><<=setup.getItemName("drug_breast")>><</if>>, telling her that it spurs breast growth and other aspects of femininity.<br>
<br>
She frowns. "@@.npc_technician;Hmm, I do love feeling fem... and feeling up fems, but it took me a while to really dial in my hormone regime though, so I think I'll pass, I don't want to end up with some sort of medication conflict.@@"
<<if setup.getEffectiveBreastSize() > 4>>
She smirks. "@@.npc_technician;Besides, I thought YOU were going to be the big tiddy goth <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>... boyfriend, sure, who says boys can't have a hawt rack<<default>>enby-friend<</switch>>? <<if setup.checkVisibleClothingTag('goth') < 50>> Well... maybe not in THAT outfit.<<else>> After all, you've got the goods, AND you're dressed the part...<</if>>@@"
<</if>>
<<case "ditzy">>
<<if $scene.plus>><<=setup.getItemName("drug_ditzy_plus")>><<else>><<=setup.getItemName("drug_ditzy")>><</if>>, telling her that it, like, helps you turn off your brain and just relax and be happy.<br>
<br>
She shakes her head. "@@.npc_technician;Sorry, and no offense to <<=setup.getNpcName("npc_barista","nickname")>>, but that's not my style — wizard is an int based class, remember? I gotta be sharp!@@"
<<case "slave">>
<<if $scene.plus>><<=setup.getItemName("drug_slave_plus")>><<else>><<=setup.getItemName("drug_slave")>><</if>>, meant to induce docility and increase submissive tendencies.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
Her eyes narrow in mock anger. "@@.npc_technician;What? Trying to poison your <<=setup.getNpcName("npc_technician","title")>>? Such temerity!@@" Her face splits into a grin. "@@.npc_technician;Real talk — if you want to switch things up I'm always down, but we don't need drugs for that sort of thing.@@"
<<case 'neutral'>>
She shakes her head. "@@.npc_technician;Don't get me wrong — being your slave sounds totes hot, but I'd rather we did it au naturale rather than mucking around with drugs.@@"
<<case "sub">>
She looks suddenly sad. "@@.npc_technician;Am I not a good enough slave? I promise I'm trying my best...@@"<br>
<br>
You quickly reassure her that it's nothing like that, you just thought it would be fun to experiment.<br>
<br>
She smirks and winks at you "@@.npc_technician;I knew that! Just teasing you a bit... in all honesty though I don't really feel like mucking around with drugs in that way. I want my submission to be 110% genuine desire to be yours... which right now it absolutely is!@@"<br>
<br>
You pull her in for a kiss... and then reach around to give her a few swats on the rear for her hammy display.<br>
<br>
After her "punishment" she kisses you even more passionately, before gingerly returning to her seat on the couch and submissively snuggling up against you. "@@.npc_technician;Thank you... I guess I just need the occasional maintenance spanking to keep me in line... or maybe I'm just a bratty pain-slut.@@"<br>
<br>
You grin, correcting her that she's YOUR bratty pain slut. She smiles back happily.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<case "smart">>
<<if $scene.plus>><<=setup.getItemName("drug_smart_plus")>><<else>><<=setup.getItemName("drug_smart")>><</if>>, meant to boost cognitive abilities.<br>
<br>
She seems momentarily tempted, but shakes her head. "@@.npc_technician;An intriguing offer, but I tried so-called "smart drugs" back in college... they always seemed to just give me a headache, maybe some sort of overflow problem? In any case, I think I'll pass.@@"
<<case "master">>
<<if $scene.plus>><<=setup.getItemName("drug_master_plus")>><<else>><<=setup.getItemName("drug_master")>><</if>>, meant to boost confidence, aggression, and other "dominant" attributes.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
She shakes her head in mock offense. "@@.npc_technician;What? Are you saying I'm not dominant enough!@@" She reaches around to give you a quick swat on the bum. "@@.npc_technician;Bad slave! Your <<=setup.getNpcName("npc_technician","title")>> is perfect as she is, she doesn't need some fancy drug to keep you curled at her feet.@@"<br>
<br>
You quickly re-assure her that, of course, she's right, that her beatific glory needs no artificial assistance... you just thought you'd offer.<br>
<br>
She grins and pats you on the head "@@.npc_technician;I know, and it was a very sweet offer... I just don't like mixing drugs with this sort of thing. I like knowing that everything I'm feeling is totally authentic, and solely the result of what a cute, sexy, submissive slave I am blessed to own.@@"<br>
<br>
You blush as she grins with pride and the two of you snuggle up a bit closer together.
<<case 'neutral'>>
She shakes her head. "@@.npc_technician;Don't get me wrong — being your domme sounds totes hot, but I'd rather we did it au naturale rather than mucking around with drugs.@@"
<<case "sub">>
She looks puzzled "@@.npc_technician;But I'm your slave! No, if you want to switch things up we can do it the usual way, I don't need any drugs to put a cutie in their place.@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<default>>
ERROR: unexpected scene.drug <<=$scene.drug>>
<</switch>>
<br><br>
[<<moveTo "event_technician_drug_root" "Offer her a different drug." 60>>]<br>
[<<moveTo $scene.returnPassage "Do not offer her drugs." 60>>]
</div>/*#
#desc: technician agrees to take <<=setup.getItemName("drug_dick")>>
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You offer <<=setup.getNpcName("npc_technician","first")>> a dose of <<=setup.getItemName("drug_dick")>><<if $scene.plus>>+<</if>> — meant to temporarily increase arousal and penis size.<br>
<br>
<<if !$npc_technician.relationship.done_you || ($player.body_ref.vagina && !$npc_technician.relationship.done_vag && (!setup.checkItemTypeWorn("cage") || setup.canSexOrRemoveChastity("vag", "npc_technician")))>>
"@@.npc_technician;Hmm... that sounds enticing but, like... how about we hold that for later? I don't want the first time I do you to be in the midst of drug-crazed lust.@@"<br>
<br>
<<printThought "She has a point...">><br>
<br>
[<<moveTo "event_technician_drug_root" "Offer her a different drug." 60>>]<br>
[<<moveTo $scene.returnPassage "Do not offer her drugs." 60>>]
<<else>>
<<switch $npc_technician.flags.drugs.delta>>
<<case 0>>
She bites her lip, clearly intrigued. "@@.npc_technician;Like... how increased are we talking here?@@"<br>
<br>
For some reason you find yourself thinking of <<=setup.getNpcName("npc_maid","first")>> <<if $npc_technician.flags.rpg_campaign.penance.maid>>and her aptly named "Destroyer." <<else>>and her jaw-dropping (or is that breaking?) member.<</if>><br>
<br>
<<if $player.flags.drugs.dick > 0 || $player.flags.drugs.dick_plus > 0>>
You tell her that when you used it yourself you grew a couple centimetres, and the effects wore off by the next day.
<<else>>
You say you haven't used it, but that it's probably just a couple centimetres temporarily.
<</if>>
<br><br>
<<if $npc_technician.relationship.done_you>>
She bites her lip, her expression more and more mischievous. "@@.npc_technician;Hmm, yeah... that sounds fun. Okay, let's give it a shot!@@"
<<else>>
You can tell she's tempted but she ends up shaking her head. "@@.npc_technician;So, it sounds fun, but you mentioned it also increased arousal and, well... I don't want to be tempted to split that cute ass of yours in half. Maybe once someday after I've had a taste of plundering the real thing. Don't want you started off with more unrealistic expectations than we have to.@@"
<</if>>
<<case 1>>
You can tell that, despite what happened the last time, she's tempted...<br>
<br>
"@@.npc_technician;Okay, but, like... this time you need to stick around to the end? Gooning out with a big, cum-filled girl-cock is way less fun than sharing it with a partner.@@"
<<case 2>>
You can tell that, despite what happened the last time, she's tempted...<br>
<br>
"@@.npc_technician;Hmm... last time got pretty crazy but... awe fuck, call me a degenerate if you want, but I totally wanna try it again. Hand that good shit over.@@"
<<case 3>>
She frowns... "@@.npc_technician;That sounds fun, but I think we learned already that I need something a bit stronger now... hit me up if you can refine a more potent version... if you think you can handle it.@@"
<<case 4 5 6>>
She frowns... "@@.npc_technician;Come on, you know I need the pure <<=setup.getItemName("drug_dick_plus")>>, so come at me with that good stuff if you want dat dick.@@"
<<default>>
ERROR: unexpected npc_technician.flags.drugs.delta <<=$npc_technician.flags.drugs.delta>>
<</switch>>
<br><br>
<<if $npc_technician.flags.drugs.delta < 3>>
<<if $npc_technician.relationship.sissyomatic>>
[<<moveTo "event_technician_drug_delta_2" "Let's do this!" 300 "<<set $scene.abort=false>>">>]<br>
<<elseif $npc_technician.relationship.her_caged>>
<<if $npc_technician.relationship.her_role == 'sub'>>
She pauses as she looks down at her caged and contained lady lance. "@@.npc_technician;So, I know you like keeping your property locked and secure... and I do love being owned, but I think this probably needs to come off if there's going to be any point to this...@@"
<<else>>
She pauses as she looks down at her caged and contained lady lance. "@@.npc_technician;So, uh... probably need this removed first, lest I break it or myself... neither of which I'm exactly hot for.@@"
<</if>>
<br><br>
[<<moveTo "event_technician_drug_delta_2" "Unlock her and get started." 300 "<<set $scene.abort=false>>">>]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_2" "Let's do this!" 300 "<<set $scene.abort=false>>">>]<br>
<</if>>
[<<moveTo "event_technician_drug_delta_leave_1" "On second thought, maybe this isn't a good idea." 60 "<<set $scene.abort=true>>">>]
<<else>>
[<<moveTo "event_technician_drug_root" "Offer her a different drug." 60>>]<br>
[<<moveTo $scene.returnPassage "Do not offer her drugs." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: technician takes Serum Delta
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.drugs.delta <= 1>>
<<set $scene.first = $npc_technician.flags.drugs.delta == 0>>
<<set $npc_technician.flags.drugs.delta = 1>>
<<deleteItem 'drug_dick'>>
<<applyExperience 'penis' 13 'very' $SEEN_FRIEND>>
<<set $scene.delta_actions = {
suck : false,
stroke : false,
anal : false,
toys : false,
fuck : false,
cum_counter: 0
}>>
<<elseif $npc_technician.flags.drugs.delta < 3>>
<<set $npc_technician.flags.drugs.delta = 3>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.sissyomatic>>
<<=setup.getNpcName('npc_technician', 'first')>> takes a moment to pray to <<=setup.getNpcName('npc_ai', 'formal')>> and her cage retracts.
<<elseif $npc_technician.relationship.her_caged>>
You take a moment to remove
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
your <<=ps(setup.getNpcName("npc_technician","title"))>> protective cage, her glory almost slapping you in the face as it takes immediate advantage of the freedom to spring to hard, beautiful attention.
<<case 'neutral'>>
<<=setup.getNpcName("npc_technician","first")>> cage, her <<getWordPenis false>> immediately springing to hard and large attention.
<<case "sub">>
your slave's personal prison. Her... or is that your? <<getWordPenis false>> springing to full alert attention.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
<</if>>
<<=setup.getNpcName("npc_technician","first")>> settles back onto the couch as you hand her the vial. She tilts it back and forth for a moment, admiring the swirling blue liquid. "@@.npc_technician;Oooh, pretty!@@" With a smile she tips back her head and downs the whole thing.<br>
<br>
<<switch $npc_technician.flags.drugs.delta>>
<<case 1>>
<<if $scene.first>>
"@@.npc_technician;Hmm, I don't feel anything...@@" she states after a few moments have passed only to start fidgeting with her clothing. "@@.npc_technician;Is it just me, or is it starting to feel kind of hot in here? I—@@" She gasps, suddenly shooting to her feet and rushing to the bathroom.<br>
<br>
Several minutes pass with the bathroom door tightly shut as you nervously wonder what went wrong. You're about to stand and check on her when the door opens and she steps out... completely naked, with a raging erection that would be considered over the top in size queen porn...<br>
<br>
"@@.npc_technician;A couple centimetres?@@" She asks, her complexion a bit pale; you wonder just how much of her blood is currently bottled up in her engorged lady lance. "@@.npc_technician;This is a third frelling leg! And that's not all! Look at these!@@" She lifts her cock out of the way to show off a pair of matching heavy balls, "@@.npc_technician;I feel like I could cum a small lake! Did you know this was going to happen?@@"<br>
<br>
You somehow manage to tear your eyes away from her glorious girl dick and meet her gaze before shaking your head. You insist that you had no idea the drugs could have such an effect... perhaps she just has a unique physiology more suited to their mechanism? The longer she stands in the same room the more your heart starts to race as you wonder if the drug has done something to her pheromones as well...<br>
<br>
"@@.npc_technician;Something like that... well I misplaced my dagger of time, so there's no going back, which leaves the question — what are you planning on doing about this thing that you caused? And I'll warn you that you need to make your decision fast — it's taking everything I've got not to throw you over the couch and spit-roast your cute ass.@@"<br>
<br>
[<<moveTo "event_technician_drug_delta_root" "Relocate to the bedroom and strategise..." 60>>]<br>
[<<moveTo "event_technician_drug_delta_leave_1" "This is too much, tap out." 60>>]
<<else>>
She grins, shedding her clothes and stroking herself in anticipation as you both wait for the drugs to kick in. She gasps, her growing erection continuing on to be a GROWING erection as the drugs take hold. Bucking her hips slightly she grins at you. "@@.npc_technician;You ready? This time you went in eyes open as to EXACTLY what you were in for... so I hope you're ready to see it through to the end...@@"<br>
<br>
[<<moveTo "event_technician_drug_delta_root" "Relocate to the bedroom and get to work..." 60>>]<br>
[<<moveTo "event_technician_drug_delta_leave_1" "Get cold feet." 60>>]
<</if>>
<<case 2 3>>
<<=setup.getNpcName("npc_technician","first")>> quickly strips naked and finishes stroking herself hard as she waits for the drugs to kick in. You sit next to her, eager as well and the two of you watch... and watch... and watch, only for her, certainly naturally impressive, member to remain just that.<br>
<br>
"@@.npc_technician;So, um... do you think whatever made me uber-sensitive before has like... gone the other direction? Like... I'm actually starting to feel a bit drowsy... and I kind of feel like packing it in? I don't suppose there's a more potent version of the drug I could try? Probably best not to double dose in one evening, but if you can get some before the next time you come over well...@@" She grins and bounces her eyebrows mischievously.<br>
<br>
<<printThought "Well that was... anti-useful.">><br>
<br>
As you talk her hard-on fades completely and she confirms that she's done for the night.<br>
<br>
[<<moveTo 'room_student_quarter' 'Leave.' 600>>]
<<default>>
ERROR: unexpected npc_technician.flags.drugs.delta <<=$npc_technician.flags.drugs.delta>>
<</switch>>
</div>/*#
#desc: technician Serum Delta - choices
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You look at your gorgeous <<=setup.getNpcName("npc_technician","title")>> sitting on the edge of the bed.
<<case 'neutral'>>
You look at your girlfriend sitting on the edge of the bed.
<<case "sub">>
You look at your nervous slave sitting on the edge of the bed.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<switch $scene.delta_actions.cum_counter>>
<<case 0>>
Her humongous broadsword is standing long and proud as she sits on her hands to resist the urge to touch it.
<<case 1>>
Making her cum seems to have only gotten her MORE hard, her big, beautiful lady lance<<if $fetish.cum>> now flecked with cum, her finger idly tracing under hood, occasionally bringing a morsel of pre-cum to her lips<<else>>glistening with sweat<</if>>.
<<case 2 3>>
Her massive, drug-fuelled cock shows no sign of softening any time soon, a glorious rod of perfection sprouting from her loins with two full, heavy testicles dangling below. She seems utterly unable to keep from touching herself, one hand struggling to contain her full testicles while the other strokes the base of her shaft.
<<case 4 5 6 7>>
Her lady lance is even more intimidating than when you started, swelled veins running up the sides, pulsing with each beat of her heart as they keep the massive rod running hot and hard. Gripping it with both hands she looks up at you in desperation her lips stretched around her own tip as she seems unable to resist performing auto-fellatio, drool<<if $fetish.cum>> and cum<</if>> dripping down the shaft.
<<default>>
ERROR: unexpected scene.delta_actions.cum_counter <<=$scene.delta_actions.cum_counter>>
<</switch>>
<br><br>
<<include "technicianDeltaChoices">>
</div><<if $scene.delta_actions.cum_counter >= 5 && ($scene.delta_actions.anal || $scene.delta_actions.fuck || $scene.delta_actions.vag)>>
<<if $npc_technician.flags.drugs.delta < 2>>
<<set $npc_technician.flags.drugs.delta = 2>>
<</if>>
Flopping back in the bed she groans in frustration... only for the frustration to turn to something far more primal as she arches up like something out of the exorcist, limbs splayed as time seems to freeze... and she cums as never before, a screaming, explosive <<if $fetish.cum>>shot that blasts clear to the ceiling before dripping back down onto her as she<<else>>that has her entire body strain and writhe with possessed intensity before she finally<</if>> collapses.<br>
<br>
Her once mighty member wilts and shrinks as she lays panting. "@@.npc_technician;Holy shit that was... fuck I can't even... Goddess, I've never felt something that powerful in my life... I think I almost blacked out...@@"<br>
<br>
You help her sit up a bit as she reaches down to look at her tired <<getWordPenis false>>
<<if $npc_technician.relationship.sissyomatic>>
<<=setup.getNpcName('npc_technician', 'first')>> takes a moment to pray to <<=setup.getNpcName('npc_ai', 'formal')>> and her cage locks over her once again. <<=setup.getNpcName('npc_technician', 'first')>> smiles and heads to the bathroom where you help
<<elseif $npc_technician.relationship.her_caged>>
"@@.npc_technician;I think I'm ready to get locked up again now<<if $npc_technician.relationship.her_role=="sub">>, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</if>>... the cold metal actually sounds really soothing, and the old girl could use the rest... even if I may end up cursing my prison by morning...@@"<br>
<br>
You give her a kiss and retrieve her cage from the floor, locking her up tight as she smiles down, and then pulls you in for a hug, her cum-soaked body pressed against your as you realise you should probably
<<else>>
"@@.npc_technician;Yeah... back to old faithful... I know I was a bit of a handful tonight but... fuck, thank you for being here through it all... maybe it's lingering cum-brain... I kind of want to try it again someday...@@" She grins, somehow finding the energy to spring forward and give you a hug. Her cum-splattered body pressed against yours you decide it would be best to
<</if>>
get her showered off.<br>
<br>
You're both too tired to get up to any mischief in the shower so you just get her cleaned up and then sit her down for a few minutes while you change things out for new sheets, somewhat aghast at how <<if $fetish.cum>>flagrantly cum-soaked<<else>>drenched in sweat<</if>> her old ones are.<<if setup.getTotalValue("cum") > 15>> <<printThought "Mmmm. I wish I could wrap myself forever in these cum-soaked sheets as a semen burrito...">><</if>><br>
<br>
You get her tucked in and she sighs in contentment, her heavy eyelids already drooping as she waves you goodnight and you slip off for home.<br>
<br>
[<<moveTo "room_student_quarter" "Depart." 300>>]
<<else>>
<<if $scene.delta_actions.stroke>>
[@@.link_locked;You have already tried jerking her off by hand.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_stroke_1" "Jerk her off." 60>>]<br>
<</if>>
<<if $scene.delta_actions.suck>>
[@@.link_locked;You have already tried sucking her off.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_suck_1" "Suck her <<getWordPenis false>>." 60>>]<br>
<</if>>
<<if $scene.delta_actions.toys>>
[@@.link_locked;You have already tried using toys on her.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_toys_1" "Ask if she has a vibe you could use?" 60>>]<br>
<</if>>
<<if $scene.delta_actions.breasts>>
[@@.link_locked;You have already given her a boob job.@@]<br>
<<elseif $player.body.breastsize[0] < 6>>
[@@.link_locked;You are not sufficiently equipped for boob jobs.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_breasts_1" "Give her a boob job." 60>>]<br>
<</if>>
<<if $scene.delta_actions.anal>>
[@@.link_locked;You have already tried having her fuck your ass.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_anal_1" "Ask if she wants to fuck your ass." 60>>]<br>
<</if>>
<<if $scene.delta_actions.fuck>>
[@@.link_locked;You have already tried fucking her.@@]<br>
<<else>>
<<if $npc_technician.relationship.done_her>>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.canCharRemoveChastity("npc_technician")>>
[<<moveTo "event_technician_drug_delta_fuck_1" "Ask if she wants you to fuck her?" 60>>]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_fuck_1" "Ask if she wants you to fuck her with a strap-on?" 60>>]<br>
<</if>>
<<else>>
[<<moveTo "event_technician_drug_delta_fuck_1" "Ask if she wants you to fuck her?" 60>>]<br>
<</if>>
<<else>>
[<<moveTo "event_technician_drug_delta_fuck_1" "Ask if she wants you to fuck her with a strap-on?" 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;You'd like the first time you do her to be a bit more... intimate.@@]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if setup.canCharRemoveChastity("npc_technician")>>
<<if $scene.delta_actions.vag>>
[@@.link_locked;You have already tried having her fuck your <<getWordVagina>>.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_vag_1" "Ask if she wants to unlock and fuck you." 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked away in chastity.@@]<br>
<</if>>
<<else>>
<<if $scene.delta_actions.vag>>
[@@.link_locked;You have already tried having her fuck your <<getWordVagina>>.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_vag_1" "Ask if she wants to fuck you." 60>>]<br>
<</if>>
<</if>>
<</if>>
<br>
[<<moveTo "event_technician_drug_delta_leave_1" "This is too much, tap out." 60>>]
<</if>>/*#
#desc: technician Serum Delta - leave
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.advanceDate($player, $now, 'hours', 2)>>
<<addEvent 'event_delta_post' _nextDate>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You apologise to <<=setup.getNpcName("npc_technician","first")>> but state that you think it would be safer if she dealt with her "problem" on her own.<br>
<br>
You can tell she's disappointed but she nods, unable to even pause stroking herself as she replies. "@@.npc_technician;Yeah, I, uh... I guess that makes sense... fuck I don't know if I've ever been this horny! I hope I can make it through the night alive... and without breaking all of my toys...@@"<br>
<br>
You wish her luck and quickly make your escape before anything regrettable can happen.<br>
<br>
[<<moveTo 'room_student_quarter' 'Leave.' 300>>]
</div><<switch $scene.delta_actions.cum_counter>>
<<case 1>>
She falls back with a groan. "@@.npc_technician;Why... that felt so good but I feel just as horny.@@" Glancing down at you past her cock she whimpers "@@.npc_technician;Fuck... I think it got bigger... what's happening to me... and why does it feel soooo goooooood.@@"
<<case 2>>
She groans in frustration. "@@.npc_technician;Ugh, I'm still so fucking horny... I need more...!@@"
<<case 3 4>>
Her eyes are unfocused as she pants, exhausted... yet still just as hard as when she started. "@@.npc_technician;Goddess... I need more, fuck me more!@@"
<<case 5 6 7>>
Somewhat intimidatingly, she seems to have gotten a second wind, the veins of her cock pulsing with energy as she stares at you with a look of pure lusty hunger. "@@.npc_technician;Fuck me harder...@@" She moans before curling forward to wrap her lips around her own cock. "@@.npc_technician;Yes, more!@@" She mumbles around the thick cock-head as she slobbers and sucks herself.
<<default>>
ERROR: unexpected scene.delta_actions.cum_counter <<=$scene.delta_actions.cum_counter>>
<</switch>>
<br><br>
[<<moveTo "event_technician_drug_delta_root" "Time to try something else..." 60>>]<br>
[<<moveTo "event_technician_drug_delta_leave_1" "This is too much, tap out." 60>>]/*#
#desc: technician Serum Delta - handjob
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.stroke = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<<applyExperience 'cum' 9 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> leans back as you kneel down and reach for her shaft. It takes both hands to fully wrap around the base of her engorged cock, her heavy balls heaving like wrecking balls as they pulse and sway at your first touch.<br>
<br>
"@@.npc_technician;Oh fuck, that feels so good...@@" She moans, closing her eyes as you start to stroke.<br>
<br>
As you hands make the long trip up and down her hot shaft all you can think about is jerking off a baseball bat. She isn't QUITE that long, but about as thick, the pre-cum oozing down her shaft providing plenty of lube as she starts humping your hands.<br>
<br>
"@@.npc_technician;Grip it tighter, you aren't going to break it...@@" She moans, "@@.npc_technician;Yes, like that, now harder, faster! Pump, pump!@@"<br>
<br>
Your hands blur, each double-fisted stroke like churning butter... as she gasps... and then explodes. A cry is frozen in her lips as her cock shudders in your hands and you grip for dear life<<if $fetish.cum>>, thick, ropey lengths of cum spraying for almost half a minute<<else>> as her hips buck with each pulse of orgasm<</if>>.<br>
<br>
<<include "technicianDeltaPostOrgasm">>
</div>/*#
#desc: technician Serum Delta - suck her off
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.suck = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<<applyExperience 'oral' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You kneel down in front of <<=setup.getNpcName("npc_technician","first")>> and bring your lips to her quivering cock.
<<if $npc_technician.flags.dataservice_encounter.handjob>>
You can't help but feel a bit of deja vu for your last day at your old job. Back then you had been shocked to discover her special feature... and been more than a bit intimidated at its size. Now it's even bigger... and you're even more excited to have it between your lips.
<<else>>
You get a weird feeling, as if something similar to this happened in another life...
<</if>>
<br><br>
You waste no more time in wrapping your mouth around her wet, thick cock-head. She moans as you swirl your tongue<<if $fetish.cum>>, your reward a substantial spurt of <<if setup.getTotalValue("cum") > 10>>delicious<<else>>surprisingly tasty<</if>> pre-cum<<else>>her taste as delicious as her girth is large<</if>>.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
As you go directly for deep-throat you reflect that this is exactly the sort of thing you've been training for.
<<else>>
Even with your experience she's a challenge but you are determined to rise to the occasion as you open wide and lean forward.
<</if>>
Your muffled moan joins with <<=ps(setup.getNpcName("npc_technician","first"))>> as your throat bulges around her. "@@.npc_technician;Yes, on your knees, show me how sorry you are...@@" She groans as she humps your face, her cock jamming down your throat with each thrust.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
Even with your growing experience she's too big to fully handle, but you do your best, choking slightly as you try to force her cock down your throat as your tongue and lips give it their all.
<<else>>
You feel dwarfed by her massive member, your lips barely wrapping around the tip as you swirl your tongue and slobber up and down its length
<</if>>
Your muffled moan joins with <<=ps(setup.getNpcName("npc_technician","first"))>> as your too-narrow throat struggles. "@@.npc_technician;Yes, on your knees, show me how sorry you are...@@" She moans as she humps your face, her cock pounding the back of your throat with each thrust.
<</if>>
<br><br>
<<if $fetish.cum>>
She cums. Hard. She pumps what feels like half a cup of thick cream down your throat before you can even think of pulling back. Sputtering and pushed away by the force of the climax you look up at her in a bit of a daze. Mouth wide you take a deep breath, a mix of cum and saliva dripping down your chin and trailing back to her still-hard member.
<<else>>
She cums with her entire body, your throat straining as you cling to her bucking hips, sucking and swallowing to give her the best climax possible as she somehow swells even thicker in your throat. You eventually pull back for air as she drops back to the bed, saliva trailing from your lips back to her still-hard member.
<</if>>
<br><br>
<<set _cumNum = $scene.delta_actions.cum_counter+1>>
Almost as if in a trance she is somehow on her feet, looming over you and reaching down to grab you by the hair. "@@.npc_technician;Yes... more...@@" You stare past her cock to look up at her in awe as she rubs your face up and down her shaft. "@@.npc_technician;I hope you had a light lunch... ugh, I hope the <<printNumber _cumNum>> is the charm...@@"<br>
<br>
If the first blow-job was a case of you throwing yourself on her <<getWordPenis false>>, this is the reverse, your throat pounded as she holds your skull with both hands, humping as fast as you can handle, her heavy balls slapping you in the chin with each throat-groaning thrust.<br>
<br>
Even faster than the first time she cums again, losing her balance as she <<if $fetish.cum>>fires a long blast that starts in your mouth before making a full arcing parabola in the air as she falls back onto the bed, her hard cock twitching and spurting out one final glob the size of a grape that sticks to the ceiling<<else>>strains even harder, moaning with pleasure<</if>>.<br>
<br>
<<if $fetish.cum>>
Staring at her spread legs and ponderous balls you wipe off your face
<<if setup.getTotalValue("cum") > 10>>
and lick your fingers clean of every delicious drop of cum
<<else>>
<<if setup.getTotalValue("oral") > 5>>
and swallow the rest of her surprisingly tasty cum
<<else>>
and force down her thick, actually strangely tasty cum
<</if>>
<</if>>
as you catch your breath.<br>
<br>
<</if>>
<<include "technicianDeltaPostOrgasm">>
</div>/*#
#desc: technician Serum Delta - offer your ass
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.delta_actions.suck>>
<<applyExperience 'anal' 18 'terrible' $SEEN_FRIEND>>
<<set $scene.delta_actions.anal = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.delta_actions.suck>>
You bend over and wiggle your ass, asking if <<=setup.getNpcName("npc_technician","first")>> would like to see if your "rear hole" holds the secret to her relief.<br>
<br>
Her eyes light up as she almost leaps off the bed and presses you against a wall, her hard cock squeezed between your butt-cheeks.
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
Her fingers wrap around your plug, wiggling it gently before pulling it out. "@@.npc_technician;I've been eyeing this ass all night, jealous of this plug being lucky enough to be stuffed inside of it... well now it's my turn and I'm going to fuck you like I just got out of prison...@@"
<<else>>
"@@.npc_technician;Mmm, I thought you'd never ask... strutting this hot ass in front of me... teasing like that oughta be a crime... and maybe it is, because I'm about to fuck you like I just got out of prison...@@"
<</if>>
You gasp as she holds you against the wall and squats down, the thick, wet tip of her <<getWordPenis false>> pressing into you and almost lifting you off the ground as she rises into you.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
In her present form <<=setup.getNpcName("npc_technician","first")>> is as much a monster as any you have taken previously and you moan as the full length of her drug-enhanced cock slides into you.
<<else>>
You gasp, glad you had a chance to suck her cock to get it nice and wet and slick because even your ass is struggling with her present dimensions. Rising up to your tip-toes you run out of lift, settling down as she seats her full length inside of you and you shudder.
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
By any rational measure <<=setup.getNpcName("npc_technician","first")>> is too big for you... yet things have moved beyond the point of reason as you feel centimetre after centimetre of her saliva-slick sceptre slide into your ass.
<<else>>
Your novice hole should be lucky to take her tip without splitting, but tonight seems to be one of miracles as you spread before her, something in her pre causing you to relax and stretch and welcome her mighty cock to thrust up into your willing ass.
<</if>>
You rise onto your tippy-toes in an instinctual effort to escape the coming ravishing, but it only delays the inevitable. With a moan you sink backwards, her full, unimaginable length seating inside of you as she presses you against the wall.
<</if>>
<br><br>
"@@.npc_technician;Fuck... you feel even better than you look. How did we work together for so long without you letting me break a piece off this hot ass...@@"<br>
<br>
You moan as she bangs you against the wall, showing off strength you didn't even know she had as she lifts you off the ground with every other thrust, filling your deepest depths with each hard thrust as she kisses you neck and whispers in your ear "@@.npc_technician;Your ass is perfect... I love it, oh, I love it so much...@@"<br>
<br>
Your reply is far less coherent as you just try to keep up as you're fucked against the wall... and then suddenly yanked away and slammed onto the bed.<br>
<br>
Her eyes are still burning with an intensity you would normally only expect from <<=setup.getNpcName("npc_manager","formal")>>. <<=setup.getNpcName("npc_technician","first")>> looms over you, glistening<<if $fetish.cum>>, hard, and slowly oozing cum<<else>>and diamond-hard<</if>>. "@@.npc_technician;Ugh, I came again and it just makes me hornier!@@" She groans in a brief burst of lucidity, "@@.npc_technician;Screw it, I want to see you while I fuck you, get ready for round two of ass-pounding pleasure...@@"<br>
<br>
She lunges forward, spearing back into your still-gaping ass as she folds your legs up towards your ears. The small bedroom echoes with the sound of balls slapping against flesh as she leans in for a kiss, your lips meeting passionately as you feel her cum again, <<if $fetish.cum>>pumping you full and deep with even more of her lady gravy<<else>>pulsing inside of you<</if>> as she collapses on top of you.<br>
<br>
"@@.npc_technician;I can't even stand... and I still feel like fucking a hole through the wall...@@" She groans.<br>
<br>
You hug her and whisper your apology for getting her into this mess but she cuts you off, her hard cock still shifting in your ass. "@@.npc_technician;Don't be sorry I... I don't know if I've ever cum this hard in my life... it's just frustrating because it never seems to be enough.@@" Pulling back to her feet she smiles, a bit of her normal casual cuteness peeking past her sweat-matted hair and the monster protruding from between her legs.<br>
<br>
She takes a deep breath and then wobbles over to sit back down on the bed... "@@.npc_technician;So... uh... what's next?@@"<br>
<br>
<<include "technicianDeltaPostOrgasm">>
<<else>>
You ask if she'd like to try fucking you. She shudders, biting her lip in obvious anticipation before she shakes her head. "@@.npc_technician;Don't get me wrong — I can think of nothing better than trying to breed by beautiful beauty... but, well... give a girl a bit of foreplay, huh?... though... if you could hurry it along? I may be #classy, but I'm also horny as all hell right now.@@"<br>
<br>
<<include "technicianDeltaChoices">>
<</if>>
</div>/*#
#desc: technician Serum Delta - offer your vag
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.delta_actions.suck>>
<<set $scene.delta_actions.vag = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.delta_actions.suck>>
You lay back and <<=setup.getNpcName("npc_technician","first")>> is almost instantly on top of
<<if setup.checkItemTypeWorn("cage")>>
you, temporarily unlocking your chastity belt and
<<else>>
and enthusiastically
<</if>>
plunging cock-first into your welcoming hole.<br>
<br>
"@@.npc_technician;Goddess you feel so good.@@" She moans, as she folds your legs forward and starts bouncing and thrusting in full on mating press.<br>
<br>
The bed creaks and you pant as <<=setup.getNpcName("npc_technician","first")>> jack-hammers with all her might, <<=ps(setup.getNpcName("npc_technician","first"))>> drug-enhanced <<getWordPenis false>> thrusting with rampant enthusiasm as she blasts you with at least three orgasms before finally leaning back<<if $fetish.cum>>, leaving you catching your breath and leaking cum<</if>>.<br>
<br>
"@@.npc_technician;Fuck... my thighs are fried... but I'm not even close to satisfied...@@"<br>
<br>
You roll over and take a deep breath as you look at her, hard cock glistening like a flag waving atop a mountain, seemingly indefatigable...<br>
<br>
"@@.npc_technician;So... uh... what's next?@@"<br>
<br>
<<include "technicianDeltaPostOrgasm">>
<<else>>
You ask if she'd like to try fucking you ass. She shudders, biting her lip in obvious anticipation before she shakes her head. "@@.npc_technician;Don't get me wrong — I can think of nothing better than mating pressing you... but I also don't want to break you. Maybe you could try sucking me off first, take the edge off before I plow you into the firmament... but whatever you do, do it fast. I may be #thoughtful, but I'm also horny as all hell.@@"<br>
<br>
<<include "technicianDeltaChoices">>
<</if>>
</div>/*#
#desc: technician Serum Delta - use vibrator
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.toys = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> if she has a vibrator or something and she grins.<br>
<br>
"@@.npc_technician;*A* vibrator? I have a whole fucking arsenal! Reach under the bed and you'll find my toy-chest... the way I feel now I'd be happy if you used every single one of them on me... at the same time.@@"<br>
<br>
You dig under the bed and find the trove just as she described — a pair of wands, two cockrings — one vibrating, a couple onaholes, some plugs, a vibrating dildo and some miscellaneous restraints. Deciding that a cockring is basically the opposite of what she needs, and not wanting to un-tangle the restraints you grab the largest plug and the rest and toss them on the bed.<br>
<br>
Before you've even peeked back up above the bed <<=setup.getNpcName("npc_technician","first")>> has already slammed one of the pocket pussy's over her cock, the rubber stretching to handle her girth as it comes only partway up her shaft. Catching your eye she looks almost sheepish as she bites her lip, but continues to stroke.<br>
<br>
Deciding to take her original request to heart you figure out how to apply everything at once, soon having the large plug stuffed into her hole as you hold a wand in each hand. Laying her back you let her go to town on herself with an onahole in each hand — with the max-level dildo jammed against her plug.<br>
<br>
She moans and writhes as you use the vibrators all over, from her rock-hard nips to the sensitive head of her cock. From the base of her shaft to pressed right up against her plug. Moaning and thrashing on the bed she climaxes at least three distinct times before her arms go limp and she flops backwards.<br>
<br>
"@@.npc_technician;Need... water...@@" She pants, eyes totally unfocused and looking more than a little out of it... despite her raging hard-on yet persisting.<br>
<br>
You take a moment to clean her up and get her that drink, propping her up on a pillow as she gulps down liquid eagerly and you clean and stow the toys.<br>
<br>
By the time you return she's looking at you with renewed lust, hand jerking her cock and climaxing yet again as she barely points it to the side so as not to blast you as you walk through the doorway.<br>
<br>
<<include "technicianDeltaPostOrgasm">>
</div>/*#
#desc: technician Serum Delta - fuck her
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.fuck = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.strapon = setup.checkItemTypeWorn("cage") && !(setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder)>>
<<else>>
<<set $scene.strapon = false>>
<</if>>
<<else>>
<<set $scene.strapon = true>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> if maybe you fucking her would help? She momentarily manages to tear her attention away from her cock to nod eagerly.
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Yes, slave, fuck your <<=setup.getNpcName("npc_technician","title")>>!@@"
<<case 'neutral'>>
"@@.npc_technician;Yes, please... oh the thought of you ramming into me from behind... come on, what are you waiting for I. Need. COCK!@@"
<<case "sub">>
"@@.npc_technician;Please, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>,@@" she replies breathlessly.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
Scrambling up she backs up to the edge of the bed and wiggles her ass, clearly looking to take it doggy style.
<<if setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $npc_technician.relationship.keyholder>>
She's only in position for a moment before her mind catches up with the logistics of the situation. She dashes back to the bathroom to retrieve her clothes, fumbling frantically for your key and letting you out before hopping back on the bed. "@@.npc_technician;Hurry up and fuck me, already!@@"
<<elseif setup.checkItemInInventory(_keyId)>>
You fumble for the key to your <<if setup.isCage()>>cage<<else>>belt<</if>>, letting it fall to the ground in your hurry to fulfill her desperate want.
<<else>>
You're initially stumped by your locked condition but she glances over her shoulder and barks a desperate command. "@@.npc_technician;Strap-on in the nightstand, hurry up and fuck meeee!@@"
<</if>>
<<elseif $player.body_ref.penis>>
You quickly whip it out and square up behind her.
<</if>>
<<if $scene.strapon>>
Quickly buckling the strap-on around your waist you line up the dildo with her ass. Clearly accustomed to its girth she moans in pleasure as it slides into her easily. "@@.npc_technician;Yeeesssss, fill me, fuck me... pound me into the mattress!@@"
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
You may be small, but she doesn't seem to care, moaning and bucking with lust as you grind against her ass. "@@.npc_technician;Yes! Pound me harder! Drive me into the mattress!@@"
<<case 2 3>>
You easily slide into her rear and she moans in pleasure "@@.npc_technician;Yes, that's what I needed! Fuck me into the mattress!@@"
<<case 4 5>>
Your above average cock may look small compared to her current mammoth dimensions, but you'd never know if from the way she moans as you enter her. "@@.npc_technician;Yes, oh, yes! Harder! Fuck me into the mattress!@@"
<<case 6>>
Even your large member is dwarfed my her current situation, but you wouldn't know it from the way she moans at your entrance. "@@.npc_technician;Yesss... fill me with your massive dong, <<if $player.body_ref.knot>>knot me good and <</if>>pound me into the mattress...@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<br><br>
Per her instructions you grab her by the hips and go for a ride, driving into her with your weight as she buries her screams of pleasure into a pillow. Her body bucks as she cums once, twice... then again as you reach under to give her a one-hand reach-around as you <<if $scene.strapon>>push her to a final, screaming climax<<else>>share a final orgasm with her<</if>> and she slides to the bed, her legs completely having given out as she lays in a pool of cum.<br>
<br>
"@@.npc_technician;Fuck yes I needed that...@@" She moans before turning over and looking down... her <<getWordPenis false>> springing up at full mast as if nothing happened.<br>
<br>
<<include "technicianDeltaPostOrgasm">>
</div>/*#
#desc: technician Serum Delta - tit job
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 15 'normal' $SEEN_FRIEND>>
<<set $scene.delta_actions.breasts = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You ask if maybe a boob job would help and she eyes your breasts with a grin. "@@.npc_technician;Yes... let me slide between those magnificent melons... fuck those fantabulous fuck-balloons... those perfect penis-pillows... those...@@" You're down on your knees wrapping your breasts around her shaft with both hands and she drifts off into a moaned "@@.npc_technician;Stonking great tits...@@"<br>
<br>
You squeeze your breasts tight around her hard rod, not even needing to lean forward to bring your tongue into the party as you lick a circle around her thick, juicy cock-head while bouncing up and down.<br>
<br>
She moans,
<<if $fetish.cum>>
blasting you once right in the mouth and then shooting the rest of her load in a fountain that comes down all across your face and breasts.
<<else>>
yet remains hard throughout, her rock-solid erection pulsing between your pillowy breasts.
<</if>>
<br><br>
<<include "technicianDeltaPostOrgasm">>
</div>/*#
#desc: offer plus drugs to technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You offer <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","formal")>><<case 'neutral'>><<=setup.getNpcName("npc_technician","first")>><<case 'sub'>>your slave<</switch>> a vial full of <<=setup.getItemName("drug_dick_plus")>>.<br>
<br>
<<if $npc_technician.flags.drugs.delta >= 3>>
Taking it from you she grins, holding it up to the light with a smile. "@@.npc_technician;Mmm, look at that glow. I can already tell that it's stronger than the normal version...@@"<br>
<br>
She leads you to the bedroom and starts pulling restraints out from under the bed.
<</if>>
<<switch $npc_technician.flags.drugs.delta>>
<<case 0>>
You explain the contents of the drug and she hesitates. "@@.npc_technician;Plus, you say? How about we start with the normal version first, okay?@@"<br>
<br>
[<<moveTo "event_technician_drug_root" "Offer her a different drug." 60>>]<br>
[<<moveTo $scene.returnPassage "Do not offer her any more drugs." 60>>]
<<case 1 2>>
<<=setup.getNpcName("npc_technician","first")>> shakes her head. "@@.npc_technician;The non-plus version is strong enough, for now, how about we stick with that?@@"<br>
<br>
[<<moveTo "event_technician_drug_root" "Offer her a different drug." 60>>]<br>
[<<moveTo $scene.returnPassage "Do not offer her any more drugs." 60>>]
<<case 3 4>>
You watch with interest as she explains. "@@.npc_technician;So, after last time, and given that this is supposed to be an ever stronger dose... well, I'm thinking it would be best if we took "werewolf" precautions. For both of our safety I want you to tie me to the bed, that way I can just, like... totally surrender to the experience and not have to be worried about going too far.@@" She smiles up at you as she finishes laying out a basic set of "spread" eagle" bed restraints. "@@.npc_technician;Like, as enthusiastic as you were I still had to hold back from just breaking you like the reluctant heroine of a trashy romance novel. This way, well... you're not risking anything you aren't comfortable with, and I can just lay back and enjoy...@@"<br>
<br>
Her logic is sound, and the fact that her swinging <<getWordPenis false>> is already hard tells you that this is more than just a concession for your safety...<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_2" "Restrain her as requested." 60>>]<br>
[<<moveTo "event_technician_drug_delta_plus_leave_1" "On second thought, this is more than you're up for." 60>>]
<<case 5 6>>
<<if $npc_technician.flags.drugs.delta == 6 && State.hasPlayed("event_rpg_dude_orgy_6") && State.hasPlayed("event_maid_orgy_5") && State.hasPlayed("event_rpg_surgery_sex_9")>>
You bring up <<=setup.getItemName("drug_dick")>> and <<=setup.getNpcName("npc_technician","first")>> raises an eyebrow. "@@.npc_technician;You want more, my love? I mean, last time was pretty damn intense... I dunno if this old body can really handle going any further...@@"<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_2" "Just a re-enactment sounds fun." 180 "<<set $scene.enthusiast=false>>">>]<br>
<<if setup.getItemCount("drug_dick") >= 3>>
/%[<<moveTo "event_delta_plus_extreme_gangbang_1" "Actually... you were thinking of sharing with your friends... and you being the focus." 180 "<<set $scene.enthusiast=true>>">>]%/
<<else>>
[@@.link_locked;You would need more <<=setup.getItemName("drug_dick")>> to fuel a proper gang-bang.@@]
<</if>>
<<else>>
"@@.npc_technician;So I think we're all on the same page now that "werewolf protocols" were DEFINITELY the right call. Get over here and help me get me strapped down, I'm eager to get it on... and in.@@" She glances at your ass and winks.<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_2" "Restrain her as requested." 60>>]<br>
[<<moveTo "event_technician_drug_delta_plus_leave_1" "On second thought, this is more than you're up for." 60>>]
<</if>>
<<default>>
ERROR: unexpected npc_technician.flags.drugs.delta <<=$npc_technician.flags.drugs.delta>>
<</switch>>
</div>/*#
#desc: technician Serum Delta - leave
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.replaceCage>>
<<include "replaceCage_extendSissyomatic">>
<<set $scene.replaceCage = false>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if !$scene.hasOwnProperty('delta_actions')>>
You eye the restraints and then confess that you don't think you're quite up to something that intense tonight. <<=setup.getNpcName("npc_technician","first")>> pauses her unpacking and shrugs, "@@.npc_technician;Okay, well... I guess some other time then.@@" She starts putting her clothes back on and gestures for the two of you to return to the living room.<br>
<br>
"@@.npc_technician;So... whatcha wanna do instead?@@"<br>
<br>
<<include "post_session_options">>
<<else>>
You look down at your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>> bound and writhing on the bed and yet somehow it is you who feels helpless. You wrack your brain but it seems like you've exhausted every avenue and confess that you don't think you can continue.<br>
<br>
Though her gaze is drunk with lust she seems to, on some level, understand, nodding permission for you to leave.<<if $scene.delta_actions.cum_counter>1>>You lean over to give her a parting kiss on the forehead before removing her gag for safety...<<if $scene.delta_actions.cum_counter >2>> You start to reach for her other attachments but she shakes her head, panting as she replies. "@@.npc_technician;Don't you fucking dare. I need the stimulation... oh fuck do I need it, If you take them away I'll go crazy...@@" You step back, a bit scared at her tone even as you obey her wishes.<</if>><</if>>.<br>
<br>
"@@.npc_technician;Thank you for trying... I'm sure I just need to wait it out...@@" She whispers, her voice hoarse from hours of ecstatic moaning. You nod, feeling guilty as you leave her behind to ride out the night... though from the way her eyes are rolled back and her cock is dribbling with a "hands free" orgasm... you think she may have already forgotten you were here.<br>
<br>
[<<moveTo 'event_technician_drug_delta_plus_leave_2' 'Leave.' 300>>]
<</if>>
</div>/*#
#desc: technician Serum Delta plus - leave
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png">>
<div id="invframe" class="scrolltext">
You've barely made it out of the building when your phone lights up — it's a text from <<=setup.getNpcName("npc_technician","first")>>, showing off her monstrous member in all its glory.<<if $scene.delta_actions && $scene.delta_actions.bondage>> On one level, you have to be impressed that she managed such a good shot from the awkward angle of her bound position.<</if>><br>
<br>
Before you can think of a reply you realise that she sent the picture to a group chat for the entire RPG group.<br>
<br>
"@@.npc_rpg_dude;Holy shit!@@"<br>
<br>
"@@.npc_rpg_warlock;Is that real?@@"<br>
<br>
"@@.npc_maid;Does that mean you're no longer scared of mine?@@"<br>
<br>
"@@.npc_rpg_warlock;EVERYONE is scared of yours!@@"<br>
<br>
The messages are coming fast until <<=setup.getNpcName("npc_barista","nickname")>> shuts everything down with a frenzied "@@.npc_barista;I'M ON MY WAY!@@"<br>
<br>
A moment passes as everyone seems transfixed by the "someone is typing" message before <<=setup.getNpcName("npc_barista","nickname")>> follows up with "@@.npc_barista;I'm not scare of it, you should cum 2 so I can be double penetrated!@@"<br>
<br>
[<<moveTo 'event_technician_drug_delta_orgy_alt_1' "Head back, this isn't something you want to miss." 300>>]
[<<moveTo 'event_technician_drug_delta_plus_leave_3' 'This is too much craziness...' 300>>]
</div>/*#
#desc: technician Serum Delta plus - walk home
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.replaceCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.delta_actions.anal>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set _nextDate = setup.advanceDate($player, $now, 'hours', 2)>>
<<addEvent 'event_delta_plus_post' _nextDate>>
<</if>>
<<set $player.location = "Student Quarter">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_student_quarter.png">>
<div id="invframe" class="scrolltext">
Appreciating the cool night air, you walk home.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: technician Serum Delta plus - restrain her + drug
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'drug_dick_plus'>>
<<applyExperience 'penis' 13 'very' $SEEN_FRIEND>>
<<set $scene.delta_actions = {
suck : false,
stroke : false,
anal : false,
toys : false,
cbt : false,
nipples : false,
gag : false,
bj : false,
cunnil : false,
cum_counter: 0
}>>
<<set $scene.delta_actions.bondage = true>>
<<if $npc_technician.flags.drugs.delta < 4>>
<<set $npc_technician.flags.drugs.delta = 4>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","formal")>> lays back on her bed/throne, supervising you as you cuff her securely. "@@.npc_technician;Tighter, slave! Know you not the power of your <<=setup.getNpcName("npc_technician","title")>>? Her passions are great and she must be bound securely for this ritual lest her unleashed lust overwhelms you!@@"
<<case 'neutral'>>
<<=setup.getNpcName("npc_technician","first")>> lays back on the bed and watches as you secure her in place. "@@.npc_technician;Tighter, please, I want to be able to thrash my heart out and not worry about accidentally getting loose...@@"
<<case "sub">>
You guide your slave to lay back in the centre of the bed before cuffing her in a nice spread-eagle.
"@@.npc_technician;Tighter, please, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>,@@" she whispers, her hard <<getWordPenis false>> telling you just how much she's enjoying just the foreplay.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
Now stretched in place she takes a moment to test her bonds before nodding in acceptance and opening her mouth. You bring the vial to her mouth and tilt it back, the thick, glowing liquid pouring down her throat and prompting her to lick her lips and smile. "@@.npc_technician;Mmmm... delicious...@@" She purrs, grinning up at you before both of you look down to watch her already hard cock begin to grow, swelling thicker and taller until a ships main-mast rises above the bed.<br>
<br>
The growth stopping she leans back and moans as her similarly enlarged balls plop onto the mattress. "@@.npc_technician;Ugh... not being able to touch it makes is so torturous... you better get to work soon because right now all I can think of is fucking myself in an ouroborus of pounding cock...@@"<br>
<br>
You take a deep breath.<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_root" "Consider what to do first." 60>>]
</div>/*#
#desc: technician Serum Delta plus - choose action
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.delta_actions.cum_counter >= 4 && $scene.delta_actions.nipples && $scene.delta_actions.gag && $scene.delta_actions.toys>>
Bound in the centre of her cum-soaked bed, dripping with sweat and with her mouth and ass both stretched wide with inflated intruders your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>> <<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>> is still rock-hard. The vibrators attached to her nipples, strapped to the base of her <<getWordPenis false>> and shoved up her ass may have her dripping and spurting cum on a near-constant basis but they fail to make the slightest dent in her unending lust.<br>
<br>
You're almost at your wits end as you stare down at her, starting to get more than a little afraid of her unbeatable cock, the massive member glowing slightly thanks to the drugs coursing through its pulsing veins.<br>
<br>
Despite being gagged she communicates everything with a glance,
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
the irresistible command of an <<=setup.getNpcName("npc_technician","title")>> demanding her tribute.
<<case 'neutral'>>
the desperate, lusty need for more...
<<case 'sub'>>
the devout pleading of a slave for her owner's pleasure.
<</switch>>
<br><br>
Biting your lip you run through all that you've already done to her, and you come down to but two remaining options.<br>
<br>
<<if $npc_technician.relationship.done_her>>
[<<moveTo "event_technician_drug_delta_plus_fuck_1" "Risk temporarily untying her to re-bind her legs so you can personally fuck her ass." 60>>]<br>
<<else>>
[@@.link_locked;You'd like the first time you do her to be a bit more... intimate.@@]<br>
<</if>>
[<<moveTo "event_technician_drug_delta_orgy_1" "Ask her if you can call in reinforcements." 60>>]<br>
[<<moveTo "event_technician_drug_delta_plus_leave_1" "You're beat. Throw in the towel." 60>>]
<<else>>
You look down at your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
restrained <<=setup.getNpcName("npc_technician","title")>>.
<<case 'neutral'>>
tied-up girlfriend.
<<case "sub">>
bound slave.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
The bed occasionally creaks as she strains against her bonds,
<<if $scene.delta_actions.cum_counter>2>>drool trickling past her gag,<</if>>
<<if $scene.delta_actions.nipple>>vibrating nipples clamps bouncing against her ribs,<</if>>
<<if $scene.delta_actions.toys>>
her plugged ass and sleeve-wrapped cock both buzzing with constant vibrations<<if $scene.delta_actions.cum_counter>3>>, the veins on her <<getWordPenis false>> pulsing with the glowing drug as she spurts cum every dozen seconds or so<</if>>.
<<else>>
as her sapphic structure rises high above<<if $scene.delta_actions.cum_counter>0>> her cum-soaked thighs<</if>>, the rigid obelisk looming large in the centre of the bed.
<</if>>
<br><br>
<<include "technicianDeltaPlusChoices">>
<</if>>
</div><<if $scene.delta_actions.stroke>>
[@@.link_locked;You have already tried jerking her off by hand.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_stroke_1" "Jerk her off." 60>>]<br>
<</if>>
<<if $scene.delta_actions.suck>>
[@@.link_locked;You have already tried sucking her off.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_suck_1" "Suck her <<getWordPenis false>>." 60>>]<br>
<</if>>
<<if $scene.delta_actions.toys>>
[@@.link_locked;You have already tried using toys on her.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_toys_1" "Bust out the toys." 60>>]<br>
<</if>>
<<if !$player.virgin.anal>>
[@@.link_locked;If you're going to lose your anal virginity, you'd like it to happen in a more... calm situation.@@]<br>
<<else>>
<<if $scene.delta_actions.anal>>
[@@.link_locked;You have already gone for a butt-ride on her cock.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_anal_1" "Ride her cock with your ass." 60>>]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if !$player.virgin.vaginal>>
[@@.link_locked;If you're going to lose your vaginal virginity, you'd like it to happen in a more... calm situation.@@]<br>
<<else>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<<if $scene.delta_actions.vag>>
[@@.link_locked;You have already tried having her fuck your <<getWordVagina>>.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_vag_1" "Ask if she wants to unlock and fuck you." 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked away in chastity.@@]<br>
<</if>>
<<else>>
<<if $scene.delta_actions.vag>>
[@@.link_locked;You have already tried having her fuck your <<getWordVagina>>.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_vag_1" "Ask if she wants to fuck you." 60>>]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<<if $scene.delta_actions.nipple>>
[@@.link_locked;You have already played with her nipples.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_nipples_1" "Mix it up and play with her nipples." 60>>]<br>
<</if>>
<<if $scene.delta_actions.cbt>>
[@@.link_locked;You have already done some cbt.@@]<br>
<<elseif !$scene.delta_actions.gag>>
[@@.link_locked;Starting in with cbt would be a bit cruel. Maybe after I've got her off a time or two...@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_cbt_1" "Do some cbt..." 60>>]<br>
<</if>>
<br>
<<if State.passage != "event_technician_drug_delta_plus_root">>
[<<moveTo "event_technician_drug_delta_plus_root" "Time to try something else..." 60>>]<br>
<</if>>
[<<moveTo "event_technician_drug_delta_plus_leave_1" "This is too much, tap out." 60>>]<<if $scene.delta_actions.cum_counter == 2 && !$scene.delta_actions.gag>>
Panting with lust she looks up at you in desperation. "@@.npc_technician;Okay, fuck. I thought I could handle this but... you need to gag me. Now — <<if $player.body_ref.penis>>shove your cock down my throat, <</if>><<if $player.body_ref.vagina>>suffocate me with your cunt, <</if>>or just grab something from the nightstand. I don't care but if you don't do something NOW I'm going to wake the neighbors, raise the dead... and then start screaming things I may later regret.@@"<br>
<br>
<<if $player.body_ref.penis && setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_technician_drug_delta_plus_bj_1" "Fuck her throat." 600>>]<br>
<<else>>
[@@.link_locked;You are locked in chastity and unable to grant her request to suck you off.@@]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina && setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_technician_drug_delta_plus_cunnilingus_1" "Sit on her face." 600>>]<br>
<<else>>
[@@.link_locked;You are locked in chastity and unable to grant her request to eat you out.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_technician_drug_delta_plus_gag_1" "Shove a gag between her desperate lips." 600>>]<br>
<<elseif $scene.delta_actions.cum_counter == 3 && !$scene.delta_actions.toys>>
As you try to catch your breath <<=setup.getNpcName("npc_technician","first")>> looks up at you with desperate, lust-crazed eyes. Despite the massive gag filling her mouth and mangling her speech she manages to make the single word "@@.npc_technician;TOYS!@@" comprehensible as she shouts it at you repeatedly.<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_toys_1" "Fetch her toy-chest from under the bed." 300>>]<br>
<<elseif $scene.delta_actions.cum_counter >= 5 && ($scene.delta_actions.anal || $scene.delta_actions.fuck || $scene.delta_actions.vag)>>
<<if $npc_technician.flags.drugs.delta < 2>>
<<set $npc_technician.flags.drugs.delta = 2>>
<</if>>
Flopping back in the bed she groans in frustration... only for the frustration to turn to something far more primal as she arches up like something out of the exorcist, limbs splayed as time seems to freeze... and she cums as never before, a screaming, explosive <<if $fetish.cum>>shot that blasts clear to the ceiling before dripping back down onto her as she<<else>>that has her entire body strain and writhe with possessed intensity before she finally<</if>> collapses.<br>
<br>
Her once mighty member wilts and shrinks as she lays panting. "@@.npc_technician;Holy shit that was... fuck I can't even... goddess I've never felt something that powerful in my life... I think I almost blacked out...@@"<br>
<br>
You help her sit up a bit as she reaches down to look at her tired <<getWordPenis false>>
<<if $npc_technician.relationship.sissyomatic>>
<<=setup.getNpcName('npc_technician', 'first')>> takes a moment to pray to <<=setup.getNpcName('npc_ai', 'formal')>> and her cage locks over her once again. <<=setup.getNpcName('npc_technician', 'first')>> smiles and heads to the bathroom where you help
<<elseif $npc_technician.relationship.her_caged>>
"@@.npc_technician;I think I'm ready to get locked up again now<<if $npc_technician.relationship.her_role=="sub">>, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</if>>... the cold metal actually sounds really soothing, and the old girl could use the rest... even if I may end up cursing my prison by morning...@@"<br>
<br>
You give her a kiss and retrieve her cage from the floor, locking her up tight as she smiles down, and then pulls you in for a hug, her cum-soaked body pressed against your as you realise you should probably
<<else>>
"@@.npc_technician;Yeah... back to old faithful... I know I was a bit of a handful tonight but... fuck, thank you for being here through it all... maybe it's lingering cum-brain... I kind of want to try it again someday...@@" She grins, somehow finding the energy to spring forward and give you a hug. Her cum-splattered body pressed against yours you decide it would be best to
<</if>>
get her showered off.<br>
<br>
You're both too tired to get up to any mischief in the shower so you just get her cleaned up and then sit her down for a few minutes while you change things out for new sheets, somewhat aghast at how <<if $fetish.cum>>flagrantly cum-soaked<<else>>drenched in sweat<</if>> her old ones are.<<if setup.getTotalValue("cum") > 15>> <<printThought "Mmmm. I wish I could wrap myself forever in these cum-soaked sheets as a semen burrito...">><</if>><br>
<br>
You get her tucked in and she sighs in contentment, her heavy eyelids already drooping as she waves you goodnight and you slip off for home.<br>
<br>
[<<moveTo "room_student_quarter" "Depart." 300>>]
<<else>>
<<=ps(setup.getNpcName("npc_technician","first"))>> is strapped down<<if $scene.delta_actions.cum_counter > 1>>, gagged and hooked up with a wand-vibrating cocksleeve and a pulsing anal plug.<<else>> "for safety." <</if>><br>
<br>
<<switch $scene.delta_actions.cum_counter>>
<<case 1>>
Hard and wet <<=setup.getNpcName("npc_technician","first")>> is almost luxuriating in her bonds, inviting you in with every glance as her <<getWordPenis false>> sways back and forth, like an oversized metronome entrancingly drawing you towards it.
<<case 2>>
Dripping with sweat and cum <<=setup.getNpcName("npc_technician","first")>> stares at you desperate with need, occasionally moaning through her gag.
<<case 3>>
Plug buzzing her ass and with a wand on high running the rubber sheath stretched around the base of her gloriously hard <<getWordPenis false>> <<=setup.getNpcName("npc_technician","first")>> looks up at you with raw, animalistic lust. Despite her gag everything about her screams "@@.npc_technician;MORE!@@"
<<case 4 5>>
<<=ps(setup.getNpcName("npc_technician","first"))>> eyes are half-crazed and out of focus as she stares up at you, the veins of her diamond-hard <<getWordPenis false>> glowing and pulsing with the unholy drug that fuels her insatiable needs. The plug buzzing in her ass <<if $scene.delta_actions.nipple>>, additional vibrators attached to her nipples, <</if>>and the pocket pussy stretched around the base of her shaft has her looking like some mad-cap experiment to probe the limits of sexual endurance.
<<default>>
ERROR: unexpected scene.delta_actions.cum_counter <<=$scene.delta_actions.cum_counter>>
<</switch>>
<br><br>
[<<moveTo "event_technician_drug_delta_plus_root" "Time to try something else..." 60>>]<br>
<</if>>
[<<moveTo "event_technician_drug_delta_plus_leave_1" "This is too much, tap out." 60>>]/*#
#desc: technician Serum Delta plus - handjob
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 13 'normal' $SEEN_FRIEND>>
<<set $scene.delta_actions.stroke = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You kneel next to <<=setup.getNpcName("npc_technician","first")>> on the bed and grab her hard <<getWordPenis false>>. At the first brush of your fingers she moans
<<if $scene.delta_actions.cum_counter > 2>>
through her gag, her hips bouncing
<<else>>
whispering "@@.npc_technician;Yes, yes, yes@@" as her hips bounce
<</if>>
on the bed as she tries to fuck your hand.<br>
<br>
She is already leaking pre
<<if setup.getTotalValue("cum")>>
and you can't pass up the opportunity to lick your fingers clean of the delicious girl gravy as
<<else>>
and
<</if>>
your fingers glide easily up and down her slick member.<br>
<br>
Going double-fisted you increase your pace, one thumb making circles under her foreskin as your other hand strokes up and down. It isn't long before she starts shuddering and, with her climax almost at hand, you switch it up. Gently stroking with one hand you massage her balls with the other, the twin, full globes larger than your fingers can stretch around.<br>
<br>
With a groan, she cums — not an explosive fountain, but a dribbling waterfall that flows over your fingers like thin icing.<br>
<br>
<<include "technicianDeltaPlusPostOrgasm">>
</div>/*#
#desc: technician Serum Delta plus - suck her off
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.suck = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<<applyExperience 'oral' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You crawl between <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","formal"))>><<case 'neutral'>><<=ps(setup.getNpcName("npc_technician","first"))>><<case 'sub'>>your slave's<</switch>> spread legs and wrangle her <<getWordPenis false>> with both hands.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You hungrily lean in towards her <<if $fetish.cum>>dripping <</if>>cock, gulping it down eagerly until you are bent low over the bed with your nose pressed against her hips.
<<else>>
You lick you lips and lean in, struggling just a bit as you make your way past the half-waypoint and you have to contort your body to accommodate her long, hard member.
<</if>>
Her not having a hand free to hold the back of your head is a mild disappointment... so you do it yourself, massaging her giant balls with one hand while your other grips your head and "forces" you to bob up and down on her shaft.
<<else>>
You lean in and open wide, wrapping your lips around her thick, wet
<<if setup.getTotalValue("oral") > 5>>
cock-head, and then pushing down until you gag. It's barely halfway, but even that feels like a victory with something so glorious.
<<else>>
cock-head, able to take little more as the slightest brush of it against the back of your throat threatens to trigger your gag reflex.
<</if>>
You slurp for as long as you have air and then pull back with a gasp, trailing spittle and pre-cum from your spread lips. After casting a momentary glance at her moaning expression you dive back in to run your tongue between her slit and suck for all you've got.
<</if>>
<br><br>
You can tell how much she's loving it by how she bucks her hips to fuck your face, and you reach down to feel her balls tighten like a retracting crane. She cums, hard and <<if $fetish.cum>>thick, some of her <<if setup.getTotalValue("cum") > 10>>delicious<<else>>surprisingly mild<</if>> cum succumbing to gravity to trickle down past your lips and pool under her hips<<else>>strong, stretching your throat with each pulsing wave of orgasm<</if>>.<br>
<br>
Only after her <<getWordPenis false>> has stopped twitching do you lean back, making sure you make a triumphant POP as the still-hard member breaks free of your lips.<br>
<br>
<<include "technicianDeltaPlusPostOrgasm">>
</div>/*#
#desc: technician Serum Delta plus - ride her
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.delta_actions.cum_counter > 2>>
<<set $scene.delta_actions.anal = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.delta_actions.cum_counter > 2>>
While your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>horny girlfriend<<case 'sub'>>slave<</switch>> looks on you make a little show of shedding your clothes before hopping up onto the bed and squatting down.<br>
<br>
Eyes wide with desire <<=setup.getNpcName('npc_technician', 'first')>> bridges her hips as high as her bonds will let her in anticipation of entering you.
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
Your final act before lining her up with one hand is to slid the plug out of your own ass to clear the path into your gaping hole.
<<else>>
You reach down with one hand to guide her home.
<</if>>
You close your eyes in concentration and let out a slow, relaxed breath, feeling her thick cock spread you as it makes its way inside your rear pleasure passage and you let your weight push you slowly down the wet rod.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> is big<<if $fetish.cum>>, hard, and slick with cum,<<else>>and hard you feel<</if>>
<<if setup.getTotalValue("anal") > 15>>
<<if !$fetish.cum>>it <</if>>sliding easily into your expert ass.
<<else>>
the first half of it sliding into your trained ass with ease.
<</if>>
<<if $scene.delta_actions.toy>>Partway down you bump against the top of the squishy sleeve wrapped around the lower portion of her shaft<<else>>You slowly work your way all the way down, until you are sitting on her hips<</if>>.
<<else>>
She's big —
<<if setup.getTotalValue("anal") <= 5>>
way
<</if>>
too big, thanks to her drug-enhanced stature, <<if $scene.delta_actions.toy>>making you very glad when you end up bumping against the top of the squishy sleeve wrapped around the lower portion of her shaft<<else>>and you can only make it partway down<</if>>.
<</if>>
Struggling to balance on the uneven bed you start to bounce, watching her blissed-out expression as she thrusts up into you as you move up and down.<br>
<br>
Even though your thighs are straining you try to take your time, giving her long, slow strokes before pausing to carefully rotate on her cock until she has a view of you riding cowgirl your ass doing its best to swallow her cock with each squat.<br>
<br>
You note her toes curl as she starts to thrash against her bonds, thrusting as high as she can in an effort to speed the arrival of the orgasm that cums soon after, the <<if $fetish.cum>>pressurised blast of cum causing you to climax as well, <<if setup.checkItemTypeWorn("cage")>>dripping your analgasm joy <<if setup.isCage()>>through your cage<<else>>out the side of your belt<</if>><<else>>squirting across the bed<</if>> as she coats your insides with cum<<else>>force of her climax lifting you off the bed momentarily<</if>>.<br>
<br>
You almost fall forward and her cock springs free, bouncing away, and then back to slap you on the tail-bone and send you crawling towards the foot of the bed.<br>
<br>
Sliding to your feet you<<if $fetish.cum>> feel her cum leaking down your leg<<else>>watch in awe<</if>> as her flopping cock oscillates towards equilibrium.<br>
<br>
<<include "technicianDeltaPlusPostOrgasm">>
<<else>>
You climb up onto the bed and get in position to squat down on <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> only to look down and notice her pouting and squinting at you.<br>
<br>
"@@.npc_technician;Really? I mean, it's not that I wouldn't have already bent you over the bed and started railing you if I wasn't chained up, but doesn't a girl deserve a little foreplay afore you start riding her?@@"<br>
<br>
You blush and step off, rethinking your plans.<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_root" "Warm her up with something else..." 60>>]<br>
[<<moveTo "event_technician_drug_delta_plus_leave_1" "On second thought... this is too much." 60>>]
<</if>>
</div>/*#
#desc: technician Serum Delta plus - ride her vaginally
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.delta_actions.cum_counter > 2>>
<<set $scene.delta_actions.vag = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.delta_actions.cum_counter > 2>>
With <<=setup.getNpcName('npc_technician', 'first')>> safely restrained you make your way on top of her
<<if setup.checkItemTypeWorn("cage")>>
first removing your chastity belt
<</if>>
and then teasing her glistening <<getWordPenis false>> between your folds.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> moans, nodding enthusiastically in consent as she grinds back and you slide onto her mammoth cock. You gasp and her eyes roll back in pleasure as her sapphic stupendousness slams into position, stuffing you tight while leaving you hungry for more.<br>
<br>
You take a moment to steady yourself as she bounces beneath you, and then you join the fun, grinding and humping as you'd sweat she cums every few thrusts<<if $fetish.cum>>, girl juices leaking out past her cock,<</if>> even as she seems to only grow harder and larger with each successive climax.<br>
<br>
The energy of her thrusts keep increasing until she hits an oscillation point with the bed-springs and you actually bounce free<<if $fetish.cum>> amidst a fountain of cum<</if>>.<br>
<br>
You flail slightly in the air before landing back on the bed and catching your breath, a glance of concern from <<=setup.getNpcName('npc_technician', 'first')>> turning to one dripping with lust once she has confirmed you're okay.<br>
<br>
You regain your feet and assess the situation — her cock remains standing proud and wet and ready for more.<br>
<br>
<<include "technicianDeltaPlusPostOrgasm">>
<<else>>
You climb up onto the bed and get in position over <<=setup.getNpcName("npc_technician","first")>> only to look down and notice her shaking her head.<br>
<br>
"@@.npc_technician;Really? I mean, it's not that I wouldn't have already bent you over the bed and started railing you if I wasn't chained up, but doesn't a girl deserve a little foreplay afore you start riding her?@@"<br>
<br>
You blush and step off, rethinking your plans.<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_root" "Warm her up with something else..." 60>>]<br>
[<<moveTo "event_technician_drug_delta_plus_leave_1" "On second thought... this is too much." 60>>]
<</if>>
</div>/*#
#desc: technician Serum Delta plus - toys
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.delta_actions.cum_counter > 2>>
<<set $scene.delta_actions.toys = true>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.delta_actions.cum_counter > 2>>
As soon as you crack open <<=ps(setup.getNpcName('npc_technician', 'first'))>> toy-chest you notice that she's made a few purchases... perhaps in anticipation? You quickly make your selections and hop onto the bed, starting off with the matching piece to her mouth's occupant — a thick, inflatable plug.<br>
<br>
After rolling it in the pool of her cum and ball-sweat that has started to collect under her the already large toy slides into place with ease. You keep squeezing the bulb until her gag-muffled gasps go from aroused to frantic and her balls tighten. Taunting her with another squeeze your release a quick hiss of air that has her moaning in filled relief. You give her thigh a congratulatory pat before moving to your next item.<br>
<br>
She's trying to lift her head to see what you're up to but her swaying <<getWordPenis false>> gives you sufficient cover to put the next step of your plan into motion — stretching a rubber sleeve over member and working it down to the base... before "lighting things up" by socketing a wand vibrator into the side of it and flicking the power to max.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> starts shuddering on the bed, even moreso when you reach down to flick the power button for the vibrator built into her plug. You <<if $fetish.cum>>barely dodge a quick shot of <<getWordCum>> as she shows her appreciation for this new upgrade and you<</if>> quickly shimmy off the bed to plan your next move.<br>
<br>
<<include "technicianDeltaPlusPostOrgasm">>
<<else>>
You start to reach under her bed for toys only for her to call out. "@@.npc_technician;Not that I'm not looking forward to a bit of the buzz buzz, but I don't want to get all desensitised this early... maybe warm me up a bit first? But, like... hurry, because I'm SOOO fucking horny...@@"<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_root" "Warm her up with something else..." 60>>]<br>
[<<moveTo "event_technician_drug_delta_plus_leave_1" "On second thought... this is too much." 60>>]
<</if>>
</div>/*#
#desc: technician Serum Delta plus - cbt
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.cbt = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
The sound of <<=ps(setup.getNpcName("npc_technician","first"))>> gag-muffled pants fills the room as you move between her legs. She tries to lean forward to see what you're doing as you lean in and bring your face closer to her balls, your nostrils filled with the blended scent of her sweat and the cum pooling beneath her.<br>
<br>
Spreading your lips wide you manage to suck one of her large testicles into your mouth, pulling back as you give her just enough teeth to be painful as she howls through her gag. Continuing to suck, tug and nibble on her balls in alternation you reach up to her still-rigid <<getWordPenis false>>, clawing at it as she painfully jerks against her bonds.<br>
<br>
For a moment you think she might be shrinking, your painful torment making some "progress" ... only for her to suddenly dribble cum down her shaft and across your lips. As if a switch has been thrown your further efforts come to similar result, your squeezing and tugging her balls with both hands as you nibble up and down her shaft resulting in another groaning, painfully ruined climax.<br>
<br>
<<include "technicianDeltaPlusPostOrgasm">>
</div>/*#
#desc: technician Serum Delta plus - nipples
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.nipples = true>>
<<set $scene.delta_actions.cum_counter += 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You crawl up beside your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>>, snuggling up against her sweaty body as you wrap your lips around one nipple and reach over to roll the other hard bud between your thumb and forefinger.<br>
<br>
<<if $scene.delta_actions.gag>>
She groans, bucking her hips in a silent indication that your efforts are doing quite good at teasing her.
<<else>>
"@@.npc_technician;Ahhh, fuck that feels torturously good... I wanna fuck your brains out but all I can do is lay here while you tease me...@@"
<</if>>
<br><br>
You chuckle softly as you shift positions, straddling her hips and backing up until you feel her hard <<getWordPenis false>> against your back. With both hands you pinch her nipples a little harder, twisting them between your fingers as she wiggles helplessly beneath you.<br>
<br>
<<if $scene.delta_actions.gag>>
Her nostrils flare as she shakes her head in frustration, pulling against her bonds as you keep up the torment.
<<else>>
"@@.npc_technician;You evil...@@" she groans, biting her lip as her eyes roll back in pleasure as she strains against her bonds.
<</if>>
<br><br>
Leaning forward you start swirling your tongue around one nipple, switching off back and forth as she tries to hump you... you lean back for a better look, continuing to roughly grope her with both hands only for you to feel an impact on the base of your neck as she somehow climaxes just from this<<if $fetish.cum>>, the glob of cum messing your hair and trickling down your spine<</if>>.<br>
<br>
<<if $scene.delta_actions.gag>>
You start to step off only to notice her gaze snap towards her bed stand. Following her sight-line you reach for the top drawer only for her to shake her head. Opening the one below you find a pair of mean-looking vibrating nipple clamps. Her enthusiastic nod once you pick them up tells you they're exactly what she needs.
<<else>>
She bites her lip in mock innocence before glancing towards the nightstand.
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Get me my nipple clamps, now!@@"
<<case 'neutral'>>
"@@.npc_technician;Could I have some nipple clamps?@@"
<<case 'sub'>>
"@@.npc_technician;Could I have some nipple clamps, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"
<</switch>>
You step off, glancing back to notice that she remains rock-hard.<br>
<br>
"@@.npc_technician;Second drawer.@@" She breathlessly instructs as you slide it out to find a pair of mean-looking vibrating nipple clamps.
<</if>>
<br><br>
It actually takes a bit of a squeeze to spread the rubber-coated alligator clips wide enough to accommodate <<=ps(setup.getNpcName('npc_technician', 'first'))>> engorged nips and you let the first one close around her left nipple, the vibrator automatically turn on as she closes her eyes and moans.<br>
<br>
The second clamp goes on just as easy and softly purrs, her bucking hip-motion turning to a seductive grind as she adjusts to the harsh, buzzing additions.<br>
<br>
<<include "technicianDeltaPlusPostOrgasm">>
</div>/*#
#desc: technician Serum Delta plus - she blows you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.bj = true>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<<set $scene.replaceCage=true>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
<<if $npc_technician.relationship.keyholder>>
It takes you a moment of digging through her pockets to find your key.
<<else>>
It takes you a moment to find your key.
<</if>>
You sigh gratefully as the lock clicks open. Your heart racing fast you quickly remove your <<if $scene.isCage>>cage<<else>>belt<</if>> and put it to one side as she watches from the bed with clear anticipation.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins as you approach, spreading her mouth wide and sticking out her tongue in anticipation as you mount the bed and crawl towards her.
<<elseif $scene.delta_actions.cunnil>>
You try to catch your breath but she's already got her mouth open and tongue out as she stares lustily at your <<getWordMyPenis>>.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> grins as you approach, spreading her mouth wide and sticking out her tongue in anticipation as you mount the bed and crawl towards her.
<</if>>
"@@.npc_technician;Come on! I said I wanted you to fuck my throat!@@" She begs impatiently. You grant her wish, ignoring the awkward angle as you jam past her lips.<br>
<br>
She moans lustily, blinking up at you the whole time as she
<<switch $player.body.penissize[0]>>
<<case 0 1>>
eagerly wraps her lips completely around your small member. Her blissful expression as her tongue swirls and she happily hums
<<case 2 3>>
just manages to take your full length. Her blissful expression as she slurps away
<<case 4 5>>
takes as much of your <<getWordMyPenis>> as she can manage. Her blissful expression as she chokes on your cock
<<case 6>>
struggles with your massive <<getWordMyPenis>>. Despite being less than up to the challenge of your girth... at least from this angle, she does her best coughing and gurgling as she chokes on your cock. Her teary, but blissed-out expression
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
tells you everything you need to know about how grateful she is for her "treat." Her head moves back and forth as such sucks messily, drool and pre-cum running down her lips as she dishes out the best blow-job a bound, cum-crazed girl can do.<br>
<br>
Egged on by her mad eyes you grab her by the hair as you cum, spurting a full load into her mouth before relaxing your grip and letting her head fall back to the pillow. Opening her mouth wide she shows off
<<switch $player.body_ref.cumProduction>>
<<case 0>>
her clean tongue.
<<case 1>>
a tongue-full of cum before gulping it down with a grin. "@@.npc_technician;Mmmm, tasty treat!@@"
<<case 2>>
a mouth-full of cum dribbling down her cheeks. She gulps down as much as she can, but you're nearly as productive a she is and a good bit of it runs down her cheeks. "@@.npc_technician;Now that's what I call a meal!@@"
<</switch>>
<br><br>
<<if $player.body_ref.vagina>>
<<if $scene.delta_actions.cunnil>>
[@@.link_locked;She has already eaten you out.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_cunnilingus_1" "Sit on her face."
600>>]<br>
<</if>>
<</if>>
[<<moveTo "event_technician_drug_delta_plus_gag_1" "Shove a gag between her desperate lips." 600>>]
</div>/*#
#desc: technician Serum Delta plus - she eats you out
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.cunnil = true>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<<set $scene.replaceCage=true>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
<<if $npc_technician.relationship.keyholder>>
It takes you a moment of digging through her pockets to find your key.
<<else>>
It takes you a moment to find your key.
<</if>>
You sigh gratefully as the lock clicks open. Your heart racing fast you quickly remove your <<if $scene.isCage>>cage<<else>>belt<</if>> and put it to one side as she watches from the bed with clear anticipation.
<<elseif $scene.delta_actions.bj>>
You pull back to extract your <<getWordMyPenis>> from her lips, lifting it out of the way before shifting forward to smoother any objection. Her nose pressed against <<if $player.body.balls>>your balls <<else>>the base of your cock<</if>> she breaths deep, moaning and licking your wet cunt with obvious delight.
<<else>>
You hop up onto the bed, shuffling forward as she licks her lips in anticipation.
<</if>>
<br><br>
You hear a soft, passionate "@@.npc_technician;Yes...@@" just before you plant yourself over her face, her lips eagerly meeting your as you let her nimble tongue to go to work. Seemingly ravenous with thirst and lust she licks for all shes got, her tongue exploring your folds and reaching deep, lapping and kissing at a dizzying pace as you respond by grinding down against her face.<br>
<br>
You gasp, your fingers clenching in her hair as you squeeze her tight and cum, a gushing orgasm that leaves you panting and too sensitive to do anything but pull away.<br>
<br>
Licking her lips she grins up at you. <<if $scene.delta_actions.bj>>"@@.npc_technician;Mmmm, dessert.@@"<<else>>"@@.npc_technician;Mmmm, my favourite drink!@@"<</if>><br>
<br>
<<if $player.body_ref.penis>>
<<if $scene.delta_actions.bj>>
[@@.link_locked;She has already sucked you off.@@]<br>
<<else>>
[<<moveTo "event_technician_drug_delta_plus_bj_1" "Fuck her throat." 600>>]<br>
<</if>>
<</if>>
[<<moveTo "event_technician_drug_delta_plus_gag_1" "Shove a gag between her desperate lips." 600>>]
</div>/*#
#desc: technician Serum Delta plus - gag her
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.gag = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You open <<=ps(setup.getNpcName('npc_technician', 'first'))>> nightstand to find your choice of gags, despite the selection you instantly know what she needs, reaching for the inflatable butterfly gag as she licks her lips in anticipation.<br>
<br>
"@@.npc_technician;Yeeesssss... stuff my mouth fuck-hole...@@" she moans before you quiet her by sliding the deflated pecker past her lips and lifting her head to cinch the straps tight.<br>
<br>
You give her a couple squeezes but she growls and glares at you until you inflate the gag even further. You keep growing the gag and she keeps looking up at you while grunting for more. Only once her jaw is stretched wide, and her cheeks are puffed out against the panel holding everything in place does she seem satisfied. Her muffled moan may be soft, but it is rich with pleasure.<br>
<br>
Being silenced seems to calm her down for a few moments and you step back to catch your breath.
<<if setup.checkItemTypeWorn("cage") && ($scene.delta_actions.cunnil || $scene.delta_actions.bj)>>
Momentarily satisfied, yourself, you take a moment to lock your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> back on for "security" before turning back to your lady-in-waiting.
<</if>>
You barely have a chance to rest before she's moving again, begging you with her eyes as her hips writhe and her bouncing <<getWordPenis false>> demands attention...<br>
<br>
<<include "technicianDeltaPlusPostOrgasm">>
</div>/*#
#desc: technician Serum Delta plus - get in position to fuck her
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.delta_actions.fuck = true>>
<<set _hasKey = false>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set _hasKey = setup.checkItemInInventory(_keyId)>>
<</if>>
<<set $scene.strapon = $player.body_ref.cunt || setup.checkItemTypeWorn("cage") && !(setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder)>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> is already impatiently straining against her bonds, the bed creaking as you hope the drug hasn't given her super-human strength in addition to the rest...<br>
<br>
You take a deep breath and move to her ankle, unchaining her from that edge of the bed and controlling her leg with both hands as you re-clip the chain to her headboard. Everything is going smooth enough and you repeat the process on the other side, then tighten the chains further until she is folded in half, her massive <<getWordPenis false>> dripping cum right into her own face with her plugged ass raise high on display.<br>
<br>
Unbothered by this degrading and strenuous position she sounds a loud moan through her gag, your concerned response met with her cum-glazed gaze flicking towards the nightstand as you instantly understand what she wants.<br>
<br>
It takes just a moment to find the large ring-gag you spotted earlier. It's too small for her thick member to thread through it, but she won't be going thirsty the way she is now as dripping cum trickles down her stretched cheeks.<br>
<br>
"@@.npc_technician;Hurry up and fuck me—@@" she desperately states in the brief moment before you jam the ring between her teeth. From the way she smiles this was exactly the right move, and her tongue eagerly reaches out past her spread lips to lick up a beaded drop of cum. You help her out by moving her swaying member between her lips and she eagerly sucks, obviously delighted at the feat of auto-fellatio.<br>
<br>
With <<=setup.getNpcName("npc_technician","first")>> at least momentarily occupied you get ready for your part...<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_fuck_2" "Continue." 300>>]
</div>/*#
#desc: technician Serum Delta plus - remove chastity/strap-on and fuck her
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !$scene.strapon>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<<set $scene.replaceCage=true>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
<<if $scene.delta_actions.bj>>
Fetching the key once more, you quickly free your <<getWordMyPenis>>. <<=setup.getNpcName("npc_technician","first")>> may have sucked you off earlier, but between the room flooded with her pheromones and everything else you're more than raring for round 2.
<<else>>
<<if $npc_technician.relationship.keyholder>>
It takes you a moment of digging through her pockets to find your key.
<<else>>
It takes you a moment to find your key.
<</if>>
You sigh gratefully as the lock clicks open. Your heart racing fast you quickly remove your <<if $scene.isCage>>cage<<else>>belt<</if>> and put it to one side as she watches from the bed with clear anticipation.<br>
<br>
<<if $player.body_ref.penis>>
As soon as you're free of your prison you are raring to go, hard and horny to fuck her brains out... well, whatever's left of her brains.
<<else>>
You moan as you slide the double-ended dildo she bought you into your dripping cunt, strapping it securely in place as you get ready to fuck her brains... well, whatever's left of her brains, out.
<</if>>
<</if>>
<<else>>
You retrieve the strap-on from her bed-side table and quickly buckle it over your <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>cage<<else>>belt<</if>><<else>>crotch<</if>>. On paper you're now ever-hard... yet from what she's already endured you almost wonder if your silicone schlong might actually wilt before she deflates.
<</if>>
<br><br>
Taking a deep breath you reach for her plug, deflating it with a hiss that has her moan in want. You toss it to the side as you rise up above her and angle yourself down to literally pound her into the bed.<br>
<br>
Staring up at you past her dripping <<getWordPenis false>> her words are muffled by both the gag and her constant sucking of herself... and yet there's no mistaking "@@.npc_technician;Fuck me@@" — a desire, a plea, and an irresistible command all rolled into one.<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_fuck_3" "Sheath thine sword!" 600>>]
</div>/*#
#desc: technician Serum Delta plus - remove chastity/strap-on and fuck her
#status: RELEASED 0.8.6.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
It takes you a moment to figure out the balance to thrust down into her while squatting on the bed but soon you're drilling her into the mattress to her obvious delight,
<<if $scene.strapon>>
you artificial member hitting her bits just right with every plunging stroke.
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
her ass somehow gripping you tight despite the swelled plug that had so recently gaped it.
<<case 2 3>>
her ass squeezing you tight, somehow still supple and eager despite the swelled plug that had so recently gaped it.
<<case 4 5>>
her recently-stretched ass now the perfect dimensions to take every centimetre of your large <<getWordMyPenis>>.
<<case 6>>
her time plugged having prepared her ass to accept your full length<<if $player.body_ref.knot>>, knot and all,<</if>> to her obvious delirious pleasure.
<<default>>
ERROR: player penis size: <<=$player.body.penissize[0]>> out of range
<</switch>>
<</if>>
<br><br>
You establish a rhythm and reach out to grab the wand still vibrating away at her penis sheath, holding onto it for stability as you half-jerk her off while varying up the vibrations.
<<if $scene.strapon>>
You pump your silicone cock into her with everything you've got<<if $player.body_ref.cunt && $scene.removeCage>> pushing past the pleasure of it grinding against your g-spot, <</if>> as you drill down into her.
<<elseif $player.body_ref.knot>>
You knot deep in her ass and she moans, your bodies moving as one as each thrust serves to push her <<getWordPenis false>> past her lips<<if $fetish.cum>> as her cum overflows down her cheeks and bubbles out of her nose<</if>>.
<<else>>
She's moaning and you're panting with each thrust as you focus on holding back your own climax even as you do everything you can to give her one of her own.
<</if>>
<br><br>
You feel her clench around you, eyes losing focus as a wave crests and you throw everything you have into her...<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_fuck_4" "She cums." 180>>]
</div>/*#
#desc: technician Serum Delta plus - she cums
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_technician","first"))>> entire body goes rigid and the bed creaks disturbingly. Her screaming orgasm sounds past gag and cock, the force of her climax actually shooting her member out of her mouth and almost pushing you off.<br>
<br>
Her ass clenches down like a vice as she cums, and cums, the power of her thrashing climax making you almost not notice your own
<<if !$scene.strapon>>
<<switch $player.body_ref.cumProduction>>
<<case 0>>
even as your body shudders.
<<case 1>>
as you deposit your comparatively paltry lad deep inside her.
<<case 2>>
your cum bubbling up around your cock to drip down amidst her own mess.
<</switch>>
<<else>>
She clamps down so tight you're almost afraid she's going to deform your artificial cock.
<</if>>
Her orgasm rolls on for almost a minute, her cock slowly deflating as it spends it last joy and her body goes limp.<br>
<br>
You hurry to remove her cuffs, allowing her legs to flop back down on the bed as you remove the gag and try to get her to look at you.<br>
<br>
"@@.npc_technician;That was fucking amazing...@@" she whispers hoarsely.<br>
<br>
You almost laugh at the whole thing... even as her blissed out smile and the way she looks up at you with pure love makes you melt.<br>
<br>
<<if setup.getTotalValue("strength") > 10>>
Easily carrying her in your arms
<<else>>
<<if setup.getTotalValue("strength") > 5>>
Somehow mustering the strength to carry her,
<<else>>
You help her to her feet where she leans drunkenly against her.
<</if>>
<</if>>
you take her into the shower, the warm water helping to revive her as it washes away the coating of sweat<<if $fetish.cum>> and cum<</if>>.<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_fuck_5" "Wash up." 1800>>]
</div>/*#
#desc: technician Serum Delta plus - cleanup
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.drugs.delta < 5>>
<<set $npc_technician.flags.drugs.delta = 5>>
<</if>>
<<if $scene.replaceCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> bathroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bathroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
After a few minutes <<=setup.getNpcName('npc_technician', 'first')>> is mostly back to reality, cuddled up against you as the hot water of the shower washes over the pair of you.<br>
<br>
"@@.npc_technician;Mmm, I love you,@@" she says with a smile. You lean in to share a kiss. <<if $fetish.cum>>Her breath still smells like the cum that she was guzzling by the mouthful<<if setup.getTotalValue("cum") > 10>>... not that you'd mind that<<else>>though it oddly doesn't bother you at the moment.<</if>> <</if>>Enjoying a few more minutes in the shower you can tell she's about to fall asleep standing up so you dry her off then lead her out to the front room where you wrap her in a blanket and lay her out on the couch.<br>
<br>
She continues to smile lovingly up at you as you give her another kiss and then pop into her room to see about cleaning up.<br>
<br>
The room as a whole is something of a disaster area<<if $fetish.cum>>, the bed soaked and even the ceiling painted with cum.<</if>> You bundle up the linens and do a bit of the cleaning of the rest, putting fresh sheets on the mattress and poking back out into the living room to find her already deep in smiling sleep.<br>
<br>
Starting to feel done in yourself you do a little bit more cleaning up<<if $scene.replaceCage>>, replacing your own chastity, <</if>>and heading home.<br>
<br>
[<<moveTo "room_foyer" "Home." 600 "<<if $scene.delta_actions.anal>><<useClothSetPop 'tmp'>><</if>>">>]
</div>/*#
#desc: technician Serum Delta - call in reinforcements
#status: RELEASED 0.8.6.0
#ignore_spell: magicks
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You crawl up next to your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>> and look into her lust-crazed eyes as you confess that you're nearing exhaustion. You ask if perhaps you could call in reinforcements to help out?<br>
<br>
It's hard to tell given how her <<getWordPenis false>> is almost constantly leaking cum, but you think the mere mention of the idea gave her a small orgasm. She glances towards her phone sitting on the night-stand, and then down at her hard <<getWordPenis false>>, the gag in no way interfering with her instructions.<br>
<br>
You grab her phone and spend a minute snapping dick-pics. It takes a few tries to catch one that really captures her magnificence without motion blur. You type up an accompanying message to send things to the RPG group shared chat and show it to <<=setup.getNpcName("npc_technician","first")>> for approval. She moans an enthusiastic, almost desperate approval around her gag.<br>
<br>
You grin and fire off the message in her name:<br>
"@@.npc_technician;Good adventurers! Your beloved Wizard has fallen victim to a curse of mighty alchemy! She calls for your aid in quenching her desires and defeating the potent magicks!@@"<br>
<br>
You've barely hit send when you get a response from <<=setup.getNpcName("npc_barista","nickname")>> of "@@.npc_barista;OMW! —> eggplant in mouth emoji.@@"<br>
<br>
The next response is from <<=setup.getNpcName("npc_maid","first")>>. "@@.npc_maid;And you said you were scared of mine! Damn... yeah, I gotta see this in person, be there soon!@@"<br>
<br>
Your heart starts racing at the thought of two big-dick ladies, the shared chat continuing to buzz as <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>> note that they will be unable to lend assistance, but that they "@@.npc_rpg_warlock;Wish you luck in taking down that monster DICC.@@"<br>
<br>
You glance over at <<=setup.getNpcName("npc_technician","first")>> to relay the news but she is barely paying attention, humping the air as she savours gag and plug, in a temporary trance of pleasure.<br>
<br>
[<<moveTo "event_technician_drug_delta_orgy_2" "Wait for your friends to arrive..." 600>>]
</div>/*#
#desc: technician Serum Delta - return for orgy
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You hurry back to <<=ps(setup.getNpcName("npc_technician","first"))>> flat. Beating anyone else from showing up you glance in at the bedroom where she immediately shouts at you.<br>
<br>
"@@.npc_technician;You're back? Get over here and fucking gag me! Not screaming to the heavens is almost impossible!@@"<br>
<br>
Deciding it's best NOT to have neighbors show up you hurry to obey. You swear she has you inflate the gag even further this time before her eyes roll back and she moans in satisfaction.<br>
<br>
[<<moveTo "event_technician_drug_delta_orgy_2" "Wait for your other friends to arrive..." 600>>]
</div>/*#
#desc: technician Serum Delta - barista arrives
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You don't have to wait long before there's an almost frantic rapping at the door. You open the door and <<=setup.getNpcName("npc_barista","nickname")>> barrels past you into the bedroom.<br>
<br>
"@@.npc_barista;It's even more beautiful in person...@@" She states in awe, standing for a moment before breaking her reverie to crawl across the bed and begin making love to <<=ps(setup.getNpcName("npc_technician","first"))>> with her mouth and both hands. "@@.npc_barista;So delicious... yes...@@"<br>
<br>
You don't have time to watch much further when the bell chimes.<br>
<br>
[<<moveTo "event_technician_drug_delta_orgy_3" "Get the door." 180>>]
</div>/*#
#desc: technician Serum Delta - maid arrives
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
You open the door to find <<=setup.getNpcName("npc_maid","first")>> standing in the hallway with a grin. "@@.npc_maid;Should have figured you were behind this thing, well come on. Show me to her!@@"<br>
<br>
You lead her into the bedroom to find <<=setup.getNpcName("npc_barista","nickname")>> is already off to the races, riding <<=setup.getNpcName("npc_technician","first")>> with enthusiastic gusto, using one hand for balance while the other is stirring the plug in her ass. Looking over her shoulder she greets you and <<=setup.getNpcName("npc_maid","first")>> with a manic grin. "@@.npc_barista;You should, like, fuck my ass! I can't remember the last time I had that much dick inside me... it's been an eternity... like hours, at least!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> chuckles in amusement as she pulls off her panties and flips up her skirt to reveal her sizable, hard <<getWordPenis false>>.<br>
<br>
<<if setup.checkItemInInventory('drug_dick')>>
<<printThought 'Hmm, I do have a spare dose of <<=setup.getItemName("drug_dick")>> I could give her... maybe I need to fight fire with fire?'>><br>
<br>
[<<moveTo "event_technician_drug_delta_orgy_4" 'Offer <<=setup.getNpcName("npc_maid","first")>> <<=setup.getItemName("drug_dick")>>.' 1800 "<<set $scene.drug=true>>">>]<br>
<<else>>
[@@.link_locked;You do not have any more <<=setup.getItemName("drug_dick")>> on you.@@]<br>
<</if>>
<<if setup.checkItemInInventory('drug_dick_plus')>>
[@@.link_locked;Considering the state <<=setup.getNpcName("npc_technician","first")>> is in you do not think it would be a good idea to slip ANOTHER spear-wielding goddess <<=setup.getItemName("drug_dick_plus")>>.@@]<br>
<</if>>
[<<moveTo "event_technician_drug_delta_orgy_4" 'Watch.' 1800 "<<set $scene.drug=false>>">>]<br>
[<<moveTo "event_technician_drug_delta_plus_leave_3" "On second thought... this is too much." 60>>]
</div>/*#
#desc: technician Serum Delta - foursome
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO MISSINGART: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.drug>>
You offer <<=setup.getNpcName("npc_maid","first")>> a vial and she stares back at you. "@@.npc_maid;That what you gave her?@@" she asks, jerking a thumb towards the bed.<br>
<br>
You quickly assert that this is a milder form of the drug. <<=setup.getNpcName("npc_maid","first")>> looks from the vial to the nearby fuck-fest before shrugging. "@@.npc_maid;Fuck it, I probably need every edge I can get.@@" Snatching the vial from you fingers she knocks it back, her pupils suddenly dilating as her skirt springs up.<br>
<br>
"@@.npc_maid;Woah, that hits fast...@@" she states, reaching down and smiling at her newly enlarged <<getWordPenis false>>. "@@.npc_maid;Now THAT'S a trouser titan!@@" She adds with a grin.<br>
<br>
It's hard to tell given that <<=setup.getNpcName("npc_technician","first")>> is sunk all the way to the edge of the buzzing rubber sheath into your slutty barista friend, but you think <<=setup.getNpcName("npc_maid","first")>> is still a little smaller than <<=ps(setup.getNpcName("npc_technician","first"))>> drug-boosted monstrosity, but you decide not to mention it.<br>
<br>
"@@.npc_maid;Alright, then,@@" <<=setup.getNpcName("npc_maid","first")>> states with just the hint of a crazed look in her eye, "@@.npc_maid;Time to fuck some bitches up!@@"
<</if>>
<br><br>
With her <<getWordPenis false>> in hand, <<=setup.getNpcName("npc_maid","first")>> knee-walks across the bed and comes up behind the bouncing bimbo. <<=setup.getNpcName("npc_maid","first")>> grabs <<=setup.getNpcName("npc_barista","nickname")>> from behind and growls something in her ear before reaching down and removing the girl's plug to replace it with her hard cock.<br>
<br>
At the far end of the bed <<=setup.getNpcName("npc_technician","first")>> strains against her bonds and moans through her massive gag.<br>
<br>
"@@.npc_maid;Yeah, you felt things tighten up there, didn't you? But I bet your ass is feeling like it's missing out on my big meat sausage... so here, have a reminder of what once scared you off...@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> reaches down and squeezes the bulb attaching to <<=setup.getNpcName("npc_technician","first")>> already swelled butt-plug, prompting her to pump her hips even faster as <<=setup.getNpcName("npc_barista","nickname")>> bounces up and down with a "@@.npc_barista;Wheee!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> is thrusting hard as she turns to you with a grin.<br>
<br>
"@@.npc_maid;Well stop standing there like a wallflower and join in — take those clamps off her tits and then put those pretty lips of yours to work.@@"<br>
<br>
You take a moment to look over the three women — <<=setup.getNpcName("npc_barista","nickname")>> is already off in slut-space while <<=setup.getNpcName("npc_technician","first")>> is still in fuck-frenzy mode. Though she's acting like she's in charge you can tell from <<=ps(setup.getNpcName("npc_maid","first"))>> quick breaths that she's only barely holding on for the ride...<br>
<br>
[<<moveTo "event_technician_drug_delta_orgy_5" 'Join in on the action.' 1800>>]<br>
[<<moveTo "event_technician_drug_delta_plus_leave_3" "This is too much, leave your friends to it." 600>>]
</div>/*#
#desc: technician Serum Delta - finish
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.replaceCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO MISSINGART: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You circle the bed and crawl into position, wondering if this sort of thing is the reason <<=setup.getNpcName("npc_technician","first")>> crammed a king into her tiny flat.<br>
<br>
Releasing the vibrating clamp causes her to howl in muffled pain as the blood rushes back to the tortured bud, but she is soon moaning through her gag in pleasure as you wrap your lips around the pretty little nipple, sucking and licking.<br>
<br>
You turn your head to watch the rest of the goings-on; <<=ps(setup.getNpcName("npc_barista","nickname"))>> breasts bouncing free as she deliriously takes it in both holes by the dual <<if $scene.drug>>drug-fuelled <</if>> broadswords.<br>
<br>
Your ear pressed against her chest you can hear <<=ps(setup.getNpcName("npc_technician","first"))>> thundering heartbeat as she strains and screams and fucks for everything she's got. You keep licking and sucking, pausing occasionally to whisper in her ear how much you love her as you feel the sexual energy building and building until it hits a crescendo like no other.<br>
<br>
Throwing her head back <<=setup.getNpcName("npc_barista","nickname")>> is the first to cum<<if $fetish.cum>>, squirting across <<=ps(setup.getNpcName("npc_technician","first"))>> belly as an after-shock of girl gravy oozes out of her hole<<else>>followed a moment later by <<=setup.getNpcName("npc_technician","first")>> howling into her gag<</if>>. This seems to be the final straw as <<=setup.getNpcName("npc_maid","first")>> grunts, burying her face into <<=ps(setup.getNpcName("npc_barista","nickname"))>> shoulder as she cums as well.<br>
<br>
Even muffled by her massive gag <<=ps(setup.getNpcName("npc_technician","first"))>> cry of passion is like few you have ever heard of before, her head whipping back with such force she slightly rises off the bed, everything freezing for a moment before all of you collapse in a heap.<br>
<br>
<<if $fetish.cum>>Cum oozing from multiple holes the<<else>>The<</if>> four of you try to crawl across the bed but the intensity of the last climax was just too much. Feeling like you're made of jello you somehow roll into a cuddle-pile, your last move to remove <<=ps(setup.getNpcName("npc_technician","first"))>> gag and free one of the cuffs. Too tired to speak she merely kisses you on the head as her arm wraps gratefully around your body<<if $scene.replaceCage>>, and she helps you back into chastity<</if>>.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_technician_drug_delta_orgy_6" 'Sleep.' _timeToMorning>>]
</div>/*#
#desc: technician Serum Delta - morning
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.drugs.delta < 6>>
<<set $npc_technician.flags.drugs.delta = 6>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO MISSINGART: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_robe")>>
<div id="invframe" class="scrolltext">
You wake up to <<=ps(setup.getNpcName("npc_technician","first"))>> voice as she stands at the foot of the bed clean, dressed in a robe and looking bright eyed and bushy tailed.<br>
<br>
"@@.npc_technician;Up and at 'em you three!@@"<br>
<br>
You wipe sleep from your eyes and look around, confused by the early hour given <<=ps(setup.getNpcName("npc_technician","first"))>> normal feelings about mornings. <<=setup.getNpcName("npc_maid","first")>> sits up and stretches, all three of you looking down to where <<=setup.getNpcName("npc_barista","nickname")>> is lying between <<=ps(setup.getNpcName("npc_maid","first"))>> legs. The slutty bimbo is softly sucking on <<=setup.getNpcName("npc_maid","first")>> balls in her sleep, with one hand between her own legs.<br>
<br>
"@@.npc_maid;Wake up, you slut!@@" <<=setup.getNpcName("npc_maid","first")>> says, bopping <<=setup.getNpcName("npc_barista","nickname")>> on the head with her flaccid <<getWordPenis false>> to wake her up.<br>
<br>
"@@.npc_barista;Mmm, I had the bestest dream...@@" <<=setup.getNpcName("npc_barista","nickname")>> states as she sits up and blinks. "@@.npc_barista;Oh, and you were there, and you were there and you were there...@@"<br>
<br>
The rest of you laugh. "@@.npc_maid;That was no dream, slut!@@"<br>
<br>
"@@.npc_barista;Oh... well, like, even better!@@"<br>
<br>
From the foot of the bed <<=setup.getNpcName("npc_technician","first")>> slaps the mattress. "@@.npc_technician;Alright, you three, I've got some errands to run and cleaning to do — and none of you say a word about helping! You've done enough, you don't need to... plus I don't want the distraction of three hotties!@@" <<if $npc_technician.relationship.her_caged>>You note the tell-tale silhouette of her chastity cage, she must have locked herself back up after she woke up.<</if>><br>
<br>
The three of you sort out clothes and get to your feet. <<=setup.getNpcName("npc_maid","first")>> pauses on her way out of the room, pushing <<=ps(setup.getNpcName("npc_technician","first"))>> robe aside and lifting her own skirt to make a quick comparison. "@@.npc_maid;Yup, the balance is restored. All is right in the world.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> pulls her robe closed and gives her friend a playful whack. "@@.npc_technician;You jerk, now get out of here, the lot of you!@@"<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> is already darting up the hall and <<=setup.getNpcName("npc_maid","first")>> hoofs it after her so as not to miss the elevator. You linger for an extra few moments to make sure <<=setup.getNpcName("npc_technician","first")>> is okay. She smiles at you and pulls you in for a quick kiss before pushing you towards the door.<br>
<br>
"@@.npc_technician;Come on, you too! If you stick around much longer I'm going to want to cuddle that cute butt for the rest of the morning, and I REALLY need to start cleaning my room before things crust over... my ceiling is already replete with semen stalactites!@@"<br>
<br>
You laugh and give her a parting hug before heading on your way.<br>
<br>
[<<moveTo 'room_student_quarter' 'Leave.' 300 '<<if $scene.replaceCage>><<include "replaceCage_extendSissyomatic">><</if>><<if $scene.delta_actions.anal>><<useClothSetPop "tmp">><</if>>'>>]
</div>/*#
#desc: technician Serum Delta - she calls after you leave
#status: RELEASED 0.8.6.0
#ignore_spell: v
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text from <<=setup.getNpcName("npc_technician","first")>>... well, a sext, technically as you're treated to a view of her — hair matted, makeup streaked, face dripping with <<if $fetish.cum>>cum<<else>>sweat<</if>> but with a wide, satisfied smile as she flashes a kawaii V symbol with her fingers. Down at the bottom of the frame you can just spot her limp, "only" large <<getWordPenis false>>, her legs bound together pushing it and her tired-looking balls up and away from her body.<br>
<br>
"@@.npc_technician;Had to lock myself in like in Legends of the Dark Night Issue 18,@@" she texts... "@@.npc_technician;But I made it! I'm gonna pass out now, hope you had fun and I didn't scare you too bad, I'm exhausted, but I definitely had fun!@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
A minute later you get a second text, this one showing her <<getWordPenis false>> safely locked back in its cage. "@@.npc_technician;Almost forgot! Back where I belong... it actually feels kind of nice, between the cool metal and reminder that I'm NOT going to be using it for a little bit!@@"<br>
<br>
<</if>>
You shoot back that you're sorry, again, that you left but she brushes it off and tells you to get "@@.npc_technician;Some sleep... and prepare for NEXT time.@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: technician Serum Delta plus - she calls after you leave
#status: RELEASED 0.8.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a text, well... more a sext as you're treated to a "selfie" of <<=setup.getNpcName("npc_maid","first")>> holding her limp, <<if $fetish.cum>>cum-dripping <</if>><<getWordPenis false>>, standing over what looks like a content <<=setup.getNpcName("npc_barista","nickname")>> curled around a still-bound, but passed out <<=setup.getNpcName('npc_technician', 'first')>>; her body no longer covered in sex toys, her <<getWordPenis false>> resting limp and "normal" sized against her thigh.<br>
<br>
<<if $scene.drug>>
"@@.npc_maid;<<=setup.getNpcName('npc_technician', 'first')>> said to shoot you a status report so... here ya go! And thanks again for the hit! It was a helluva rush... and I dunno if I could have made it to the end without the extra boost! Now, if you excuse me... I'm going to join those two crazy sluts for a well-earned rest!@@"<br>
<<else>>
"@@.npc_maid;That was quite the ride, but we made it! After we took the gag out, and before she passed out, <<=setup.getNpcName('npc_technician', 'first')>> said to shoot you a status report so... here ya go! Now I'm going to collapse as well, you have no idea how much effort it takes to satisfy a cum-crazed bimbo and a drugged-up crazy lady!@@"
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: suggest you getting delta gang-banged
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.enthusiast>>
You grin and explain that after seeing <<=setup.getNpcName("npc_maid","first")>> looking with envy at <<=ps(setup.getNpcName("npc_technician","first"))>> drug-engorged <<getWordPenis false>>, and the memories of all the other orgies you've shared with the group... you can't stop thinking of both lovely big-dick ladies working together to fuck your brains out, <<if !$player.sec_style.sex.airtight>>besides, you add — you haven't even been gang-banged before and<</if>> you don't just want to be airtight but airTIGHT.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks at you almost in awe. "@@.npc_technician;Just when I think you've hit your limits you come up with something like that and just blow the doors off with just how fucking hot and horny you are... how could I POSSIBLY turn down an offer like that? Only... <<if $player.body_ref.vagina>>if you really want to be air-tight, well... you've got three holes<<else>>well, getting double-teamed isn't quite a gang-bang<</if>>, how about we include <<=setup.getNpcName("npc_rpg_dude","first")>>, as well? <<He npc_rpg_dude>> might not be as big as me and <<=setup.getNpcName("npc_maid","first")>>, but with drugs and maybe a sheath we could have <<him npc_rpg_dude>> ready to triple your pleasure... hmm, no, I don't think this is a linear thing, probably at least exponential so... cubing?@@"<br>
<br>
[<<moveTo "event_delta_plus_extreme_gangbang_2" "Hell yes!" 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_delta_plus_extreme_gangbang_2" "On second thought, maybe not tonight." 180 "<<set $scene.accept=false>>">>]
<<else>>
You explain that you had so much fun the last time, you just want to "run it back." <br>
<br>
<<=setup.getNpcName("npc_technician","first")>> thinks for a moment, and then grins. "@@.npc_technician;Okay... you've talked me into it... goddess, I haven't even taken any drugs and just the thought of what we're about to do has me rock-hard... so let's get into the bedroom and get me tied down...@@"<br>
<br>
[<<moveTo "event_technician_drug_delta_plus_2" "Restrain her as requested." 60>>]
<</if>>
</div>/*#
#desc: agree to you getting delta gang-banged
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin, thanking <<=setup.getNpcName("npc_technician","first")>> for once again pointing you in the direction of even more entertainment.<br>
<br>
"@@.npc_technician;It's what I do!@@" She replies with a grin as she pulls out her phone to start texting.<br>
<br>
"@@.npc_technician;They're on the way!@@" <<=setup.getNpcName("npc_technician","first")>> states a few moments later. "@@.npc_technician;<<=setup.getNpcName("npc_rpg_warlock","first")>> sends her regards,<<if $fetish.cum>> her only request was that <<=setup.getNpcName("npc_rpg_dude","first")>> lick you clean at the end and bring it home to share<<else>>she sounded really excited for <<=setup.getNpcName("npc_rpg_dude","first")>> to come home with a new story<</if>>.@@"<br>
<br>
[<<moveTo "event_delta_plus_extreme_gangbang_3" "Wait for your friends to arrive." 180>>]
<<else>>
You reconsider the idea of getting triple-dick gang-banged by your friends and decide that it'd be a bit too much for tonight.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> nods somberly. "@@.npc_technician;Busy week?@@" She asks, keeping her stern tone for a moment before breaking down in laughter as she pulls you in for a hug. "@@.npc_technician;Heh, just joking with you, come on, let's do something else, eh?@@"<br>
<br>
[<<moveTo $scene.returnPassage "Maybe tonight isn't a night for drugs." 60>>]
<</if>>
</div>/*#
#desc: friends arrive for dela plus
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO MISSINGART: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
TODO
[<<moveTo "event_delta_plus_extreme_gangbang_4" "Let's fuck!" 1800>>]<br>
[<<moveTo "event_delta_plus_extreme_gangbang_4" "Let's fuck!" 1800>>]<br>
</div>/*#
#desc: delta plus extreme gangbang
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO MISSINGART: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
TODO: sex
[<<moveTo "event_delta_plus_extreme_gangbang_5" "TODO." 180>>]
</div>/*#
#desc: delta plus extreme gangbang climax
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO MISSINGART: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
TODO: climax
[<<moveTo "event_delta_plus_extreme_gangbang_6" "TODO." 180>>]
</div>/*#
#desc: delta plus extreme gangbang aftercare
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO MISSINGART: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
TODO: climax
[<<moveTo 'event_delta_plus_extreme_gangbang_7' 'Cuddle puddle.' 300>>]
</div>/*#
#desc: delta plus extreme gangbang morning after
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO MISSINGART: others%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
[<<moveTo 'room_student_quarter' 'Leave.' 300 '<<if $scene.replaceCage>><<include "replaceCage_extendSissyomatic">><</if>><<if $scene.delta_actions.anal>><<useClothSetPop "tmp">><</if>>'>>]
</div>/*#
#desc: technician asks about learning dominance from manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Snuggling you a little tighter, <<=setup.getNpcName("npc_technician","first")>> raises a question: "@@.npc_technician;So, um... I dunno if you remember but <<=setup.getNpcName("npc_manager","other")>> offered to teach me how to be a better Domme? And, well... I was wondering if you'd be interested in me taking her up on that offer? I mean, what you and I have is great, but the opportunity to learn from someone like her?..@@" <<=setup.getNpcName("npc_technician","first")>> softly growls in your ear and you shudder submissively.<br>
<br>
[<<moveTo "event_technician_dom_training_ask_2" "Sure!" 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_technician_dom_training_ask_2" "You'd rather not." 60 "<<set $scene.agree=false>>">>]
</div>/*#
#desc: give permission for technician to learn dom from manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_dom_training'
5
'event_technician_dom_training_permission_1'
true
>>
<<if $scene.agree>>
<<applyExperience 'submission' 16 'terrible' $SEEN_FRIEND>>
<<addWorkEvent 'technician_dom_train_1' _nextDate>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_technician_dom_training')>>
<<if _themeId != -1>>
<<set $npc_technician.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
You reply that some lessons from <<=setup.getNpcName("npc_manager","other")>> sounds like a great idea. <<=setup.getNpcName("npc_technician","first")>> hugs you closer and grinds against you with obvious excitement.<br>
<br>
"@@.npc_technician;Great! I'm so glad you agree. I'll message her next week and set something up. Mmm, I can't wait to learn all the tricks she used to turn you from a boring IT worker into your current <<if $fetish.sissy>>sissy <</if>>perfection!@@"
<<else>>
You reply that you'd rather not. "@@.npc_technician;Okay, I guess I understand that — I mean you spend all day with her, after all. Well if you change your mind, let me know!@@"
<</if>>
<br><br>
<<include "post_session_options">>
</div>/*#
#desc: talk to technician about lessons w/manager
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_technician_dom_lesson_1_10")>>
You mention <<=ps(setup.getNpcName("npc_manager","formal"))>> offer of additional training and ask if <<=setup.getNpcName("npc_technician","first")>> is ready to learn more?<br>
<br>
<<if $npc_technician.relationship.her_role == 'sub'>>
<<=setup.getNpcName("npc_technician","first")>> sticks out her tongue playfully. "@@.npc_technician;Not that the opportunity doesn't sound amazing but... I'm your slave right now, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>! if you want to switch it up, sure, but as things stand I feel like it would just be confusing.@@"<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
<<else>>
<<=setup.getNpcName("npc_technician","formal")>> grins and pulls you a little closer.<br>
<br>
"@@.npc_technician;Very yes, you sure you're ready for it?@@"<br>
<br>
[<<moveTo "event_technician_dom_training_permission_2" 'Yes, <<=setup.getNpcName("npc_technician","formal")>>!' 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_technician_dom_training_permission_2" "Actually... maybe not." 60 "<<set $scene.agree=false>>">>]
<</if>>
<<else>>
You bring up <<=ps(setup.getNpcName("npc_technician","first"))>> previous request to take some lessons in dominance from <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
Perking up even more than she already was from her coffee, <<=setup.getNpcName("npc_technician","first")>> smiles. "@@.npc_technician;You changed your mind? I don't want to pressure you, or anything, but... well, it seems like a really cool opportunity to learn from someone of her expertise.@@"<br>
<br>
<<if $npc_technician.relationship.her_role == 'sub'>>
Seemingly suddenly remembering her role she coughs, "@@.npc_technician;I mean, that's what I'd say if I was in charge, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. Probably not appropriate atm, but if you ever feel like switching things up...@@"<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
<<else>>
[<<moveTo "event_technician_dom_training_permission_2" "That sounds like a great idea." 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_technician_dom_training_permission_2" "Actually... maybe not." 60 "<<set $scene.agree=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: give technician permission to take dom classes w/manager
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.agree>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 13, 0, false)>>
<<if State.hasPlayed("event_technician_dom_lesson_1_10")>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_technician_dom_training_2')>>
<<if _themeId != -1>>
<<set $npc_technician.themes.other[_themeId].repeatable = false>>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 13, 0, false)>>
<<addWorkEvent 'technician_dom_train_2' _nextDate>>
<<else>>
<<addWorkEvent 'technician_dom_train_1' _nextDate>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_technician_dom_training')>>
<<set $npc_technician.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
You reply that <<=setup.getNpcName("npc_technician","first")>> taking some lessons with <<=setup.getNpcName("npc_manager","formal")>> sounds like a great idea.<br>
<br>
"@@.npc_technician;Awesome!@@" She says with a smile, leaning over the table to give you a kiss that has you feeling all melty and submissive.<br>
<br>
"@@.npc_technician;Oh, this is going to be so fun! You look so cute when you're subby!@@"
<<else>>
You reply that, on second though, maybe you aren't quite ready for <<=setup.getNpcName("npc_technician","first")>> to take lessons in dominance from <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> is definitely a little disappointed but she reaches across the table to take your hand. "@@.npc_technician;That's alright, it's an interesting opportunity, but I can also see how it would be a bit intense for you — plus you spend so much time with her as-is! Anyway, we're doing fine and I love having you as my subby Princess cutie, but if you ever change your mind, well, just let me know!@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: technician arrives for first dom lesson
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem "bondage_collar_promo">>
<<wearItem "bondage_collar_promo" true>>
<</if>>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_1_open") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> arrives for her lesson, shedding her coat to reveal what you have come to think of as her "domme" outfit.<br>
<br>
She seems a bit nervous as she glances at the time. "@@.npc_technician;Whew, sorry, guess it's probably bad for you to see me this nervous but I've been thinking of this all week! I barely got any sleep last night. I mean, what if <<=setup.getNpcName("npc_manager","other")>> doesn't think I'm good enough? And, like... the thought of competing with her for you, I mean she's like zomg "lick my boot, slave" in a single glance 24/7. Can I really learn that and not get just drowned out?@@"<br>
<br>
You try to assure your <<=setup.getNpcName("npc_technician","title")>> that things will be fine and that she can totally rise to the occasion.<br>
<br>
"@@.npc_technician;Rise to the occasion?@@"
<<if $npc_technician.relationship.her_caged>>
She grinds her hips as you are reminded of her state of chastity. "@@.npc_technician;I should punish you right now for that horrible pun!@@"
<<else>>
The patch of leather covering her crotch strains ever-so-slightly. "@@.npc_technician;I should punish you right now for that horrible pun!@@"
<</if>>
She closes her eyes and takes a deep breath. "@@.npc_technician;Keep it together, <<=setup.getNpcName("npc_technician","last")>>. This is for you AND your totally adorable <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>enby SO<</switch>>-slave-sexpot, focus!@@"<br>
<br>
Her eyes open and she smoulders at you hard enough you blush, which only makes her smile wider. "@@.npc_technician;Gah, you're too cute!@@"<br>
<br>
"@@.npc_manager;My thoughts, exactly.@@" <<=setup.getNpcName("npc_manager","formal")>> states, taking both you and <<=setup.getNpcName("npc_technician","first")>> by surprise standing in the door to her inner office.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> jumps in shock, almost falling over. Her heels are still far too steep for her skills. "@@.npc_technician;Sorry, <<=setup.getNpcName("npc_manager","other")>>, er, <<=setup.getNpcName("npc_manager","title")>>? I'm not sure what I should refer to you as...@@"<br>
<br>
"@@.npc_manager;Let us keep it formal, for the sake of <<=$player.first_name>> — your preferred title?@@"<br>
<br>
"@@.npc_technician;<<=setup.getNpcName("npc_technician","title")>>, ma'am, I mean, <<=setup.getNpcName("npc_manager","formal")>>.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, "@@.npc_manager;<<=setup.getNpcName("npc_technician","title")>> it is. Well then, <<=setup.getNpcName("npc_technician","formal")>> — thank you for the visit, if you would collect your slave and follow me into my office, we shall commence with your lesson.@@"<br>
<br>
<<if $scene.addCollar>>
<<=setup.getNpcName("npc_technician","first")>> attaches a collar and leash to your neck
<<else>>
<<=setup.getNpcName("npc_technician","first")>> clips a leash to your collar
<</if>>
and leads you into the inner office.<br>
<br>
[<<moveTo "event_technician_dom_lesson_1_2" "Crawl behind her." 600 "<<set $scene.crawl=true>>">>]<br>
[<<moveTo "event_technician_dom_lesson_1_2" "Walk behind her." 600 "<<set $scene.crawl=false>>">>]<br>
[<<moveTo "event_technician_dom_lesson_1_abort" "Ask her to cancel the lesson." 600>>]
</div>/*#
#desc: technician first dom lesson cancel
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_technician_dom_training')>>
<<set $npc_technician.themes.other[_themeId].repeatable = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Suddenly having second thoughts, you tell <<=setup.getNpcName("npc_technician","first")>> that, actually... you aren't ready for this.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> eyebrow shoots up as <<=setup.getNpcName("npc_technician","first")>> turns back to face you.<br>
<br>
"@@.npc_technician;Are you sure?@@" You nod and she turns back to face <<=setup.getNpcName("npc_manager","formal")>>. "@@.npc_technician;I'm sorry, I guess we'll take a rain check on the lesson?@@" She asks <<=setup.getNpcName("npc_manager","formal")>>, following up with a nervous "@@.npc_technician;Please don't take it out on <<=$player.first_name>>, <<=setup.getNpcName("npc_manager","formal")>>.@@"<br>
<br>
You freeze as <<=setup.getNpcName("npc_manager","formal")>> looks down at you, <<=setup.getNpcName("npc_technician","first")>> sliding protectively closer as she wraps an arm around your shoulder.<br>
<br>
"@@.npc_manager;Very well. Usurping your authority would be somewhat counter-productive to the situation, in any case. Let me know if you would like to try again, and have a good day.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> disappears back into her inner office and you and <<=setup.getNpcName("npc_technician","first")>> both sigh in relief.<br>
<br>
"@@.npc_technician;Sorry about that... I guess I'll get back to work, then. Just remember I still love you, and I'll move at whatever speed you're comfortable at, okay?@@"<br>
<br>
You hug her back, biting your lip to keep from crying as she comforts you and then leaves.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: technician begins first dom lesson
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.crawl>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
On your <<=ps(setup.getNpcName("npc_technician","title"))>> leash you obediently
<<if $scene.crawl>>
crawl behind her and into your <<=ps(setup.getNpcName("npc_manager","title"))>> sanctum.<br>
<br>
"@@.npc_manager;A very auspicious start indeed.@@"
<<else>>
follow her into your <<=ps(setup.getNpcName("npc_manager","title"))>> sanctum.<br>
<br>
"@@.npc_manager;Very good, now, let us begin.@@"
<</if>>
<br><br>
With you at her side, <<=setup.getNpcName("npc_technician","first")>> listens as <<=setup.getNpcName("npc_manager","formal")>> launches into a monologue concerning dominance.<br>
<br>
"@@.npc_manager;Dominance and submission is all about an exchange of power. Everything else, the outfits, the restraints, the punishments... all are accessories in service to that simple core principle, The submissive giving over control to their dominant. And why do you think they do that?@@"<br>
<br>
"@@.npc_technician;Because it's fun?@@" She replies.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> chuckles in amusement. "@@.npc_manager;It most certainly is but no, it goes deeper than mere amusement. Here, <<=$player.first_name>>, as one quite experienced in submission, how about you take a shot at answering things?@@"<br>
<br>
You look nervously between the two women, <<=setup.getNpcName("npc_manager","formal")>>, the manager so forcefully responsible for your "new" life and <<=setup.getNpcName("npc_technician","first")>>, your girlfriend, seemingly no less eager to help you along... two women, two dominants, and yet so different, how can there but a single answer to such a question?<br>
<br>
[<<moveTo "event_technician_dom_lesson_1_3" "Say it's about love." 600 "<<set $scene.reason='love'>>">>]<br>
[<<moveTo "event_technician_dom_lesson_1_3" "Say it's about surrender." 600 "<<set $scene.reason='surrender'>>">>]<br>
[<<moveTo "event_technician_dom_lesson_1_3" "Say it's about assuming your proper role." 600 "<<set $scene.reason='slave'>>">>]
</div>/*#
#desc: technician lesson - why you submit
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.reason>>
<<case 'love'>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<incrementEmotion 'affection' 'npc_technician' 5>>
<<case 'surrender'>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<case 'slave'>>
<<incrementEmotion 'affection' 'npc_manager' 5>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<</switch>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You look from one woman to the
<<switch $scene.reason>>
<<case 'love'>>
other before your eyes settle on your <<=setup.getNpcName("npc_technician","title")>> and you explain that you serve out of love. That giving yourself over and in turn being taken by your domme is the ultimate display of affection.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blushes and <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;An excellent answer — and one that I recognised the moment I saw the two of you together. The connection you share is powerful and special. Since <<=$player.first_name>> shows her devotion in her submission, it is your responsibility to reflect that back and to control and guide her in the way she needs.@@"
<<case 'surrender'>>
other, unable to make a choice as you explain that your need to surrender requires the mirror opposite of one capable of accepting, and occasionally demanding, that surrender.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> "@@.npc_manager;See? Such a beautiful word, surrender. Did you know that the original etymology means to give back? Because, on a certain level, a slave knows that they are not fully their own, only caretakers until they find a suitable owner. Thus is it our responsibility to prove ourselves worthy of such devotion.@@"
<<case 'slave'>>
other before your eyes settle on your <<=setup.getNpcName("npc_manager","title")>> as you explain that being subservient is your proper role. You need someone strong to take charge of you; to control you.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;See? It seems so obvious when she says the words, but it was always true. <<=$player.first_name>> always needed a firm guiding hand... I have certainly done my share of such and now you must do the same.@@"
<<default>>
ERROR unexpected scene.reason <<=$scene.reason>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> claps her hands and you almost jump. "@@.npc_manager;So, with that in mind... what do you think your next move is? Dominance is not a script, but a mindset to guide your hand. Like an improvisational musician riffing around, knowing the key and your scales is useful but it is not the whole story.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> thinks for a moment and you see her subtly trying to mimic <<=ps(setup.getNpcName("npc_manager","formal"))>> posture, standing a little steadier in her heels, her grip on your leash slightly firmer.<br>
<br>
"@@.npc_technician;I think you are overdressed.@@" <<=setup.getNpcName("npc_technician","title")>> states, looking you over. "@@.npc_technician;Strip.@@"<br>
<br>
Your heart beats a little faster. Being naked in front of <<=setup.getNpcName("npc_manager","formal")>> every morning for your inspection is one thing, but to do it on someone else's command in front of her...<br>
<br>
[<<moveTo "event_technician_dom_lesson_1_4" "Remove your clothes." 600>>]<br>
[<<moveTo "event_technician_dom_lesson_1_abort" "End the lesson." 600>>]
</div>/*#
#desc: technician lesson - naked
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<useClothSetPush 'tmp'>>
<<if $scene.addCollar>>
<<set _x = $clothSetsInt.tmp.data.delete("bondage_collar_promo")>>
<</if>>
<<set _x = $clothSetsInt.tmp.data.delete("leash_black")>>
<<removeAllClothing>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You remove your clothes and fold them in a neat little pile. <<=setup.getNpcName("npc_manager","formal")>> looks on with a slight smile, while you note
<<if $npc_technician.relationship.her_caged>>
<<=setup.getNpcName("npc_technician","first")>> straining within her cage.
<<else>>
<<=ps(setup.getNpcName("npc_technician","first"))>> crotch bulging even more.
<</if>>
Whatever chill there might be in the office is nothing compared the lustful warmth of being so bare and exposed in front of the two dommes.<br>
<br>
You take a breath and wait for what is next as you notice <<=setup.getNpcName("npc_manager","formal")>> opening a cabinet to display an array of restraints and punishment implements.<br>
<br>
"@@.npc_manager;So. Now that you have your obedient slave exposed before you... what comes next to cement your power?@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> roots you in place with a glance that tells you <<=setup.getNpcName("npc_technician","first")>> needs to make this decision on her own. <<=setup.getNpcName("npc_technician","formal")>> is trying to put out confidence despite her nervousness, once again seemingly attempting to mimic <<=ps(setup.getNpcName("npc_manager","formal"))>> demeanour in walking over to the cabinet and selecting a scary single tail whip.<br>
<br>
Steeling herself <<=setup.getNpcName("npc_technician","formal")>> pulls back her arm, holding her breath as she brings the whip towards your back...<br>
<br>
[<<moveTo "event_technician_dom_lesson_1_5" "Brace yourself." 600>>]
</div>/*#
#desc: technician lesson - whipping
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'blindfold_black'>>
<<wearItem 'blindfold_black' true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're braced for what will certainly be the painful blow of the whip but it never lands. You glance over your shoulder, surprised to see <<=setup.getNpcName("npc_manager","formal")>> holding the business end of the whip as <<=setup.getNpcName("npc_technician","first")>> looks back in confusion.<br>
<br>
"@@.npc_manager;No. This is wrong — you are trying to be what you think an intimidating dominatrix would be. Attempting to mimic my movements, indulge a cruel streak you very much do not possess... mimicry, no matter the target, cannot be true dominance. Certainly one can put on a show for a scene or two but it never lasts. Over time, if you are not being authentic to yourself, you will see how little you truly know.@@"<br>
<br>
"@@.npc_manager;Stop trying to be me or anyone else and ask yourself what form does YOUR dominance take? That is what you need to do and what will bring your slave the most joy — they chose to serve you, so let them. Show what service to <<=setup.getNpcName("npc_technician","formal")>> truly means.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>> hesitates and then her grip on the whip handle loosens. She drops her hand and pauses, contemplating the lesson. A smile creeps onto her lips as she rushes back to the cabinet and begins searching through. She darts over to blindfold you and give you a peck on the cheek before exploring once more. The last thing you see of her is a giddy smile.<br>
<br>
"@@.npc_technician;No peeking,@@" <<=setup.getNpcName("npc_technician","formal")>> whispers, mischief in her voice. "@@.npc_technician;I have just the thing for you...@@"<br>
<br>
[<<moveTo "event_technician_dom_lesson_1_6" "Continue." 600>>]
</div>/*#
#desc: technician lesson - teasing
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your heightened senses brings goosebumps against your skin. Your pulse echos in your ear as you strain to hear what <<=setup.getNpcName("npc_technician","formal")>> is up to. Your anticipation heightens at sounds of rustling leather and the click of metal rings before not one, but two sets of heels click towards you. You realise <<=setup.getNpcName("npc_technician","formal")>> and <<=setup.getNpcName("npc_manager","formal")>> must be standing on either side of you...<br>
<br>
You hold your breath and resist the urge to turn your blind eyes in the direction you think <<=setup.getNpcName("npc_technician","formal")>> is standing, only to go rigid at the brush of her breath on your neck. She takes a nibble on your ear before softly whispering to you.<br>
<br>
"@@.npc_technician;Hey, cutie. You're going to be a good <<=setup.getBoyGirl($npc_technician)>> for your <<=setup.getNpcName("npc_technician","title")>>, right?@@" Her fingers brush your ribs, sending sparks across your sensitive flesh as she kisses the side of your neck. "@@.npc_technician;How about you start by putting your arms behind your back, hmm? Being in control of those naughty hands will only get you in trouble. Let <<=setup.getNpcName("npc_technician","title")>> keep them safe...@@"<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;You could not possibly disobey your <<=setup.getNpcName("npc_technician","title")>>.@@]<br>
<<else>>
[<<moveTo "event_technician_dom_lesson_1_7" "Remain still." 600 "<<set $scene.obey1=false>>">>]<br>
<</if>>
[<<moveTo "event_technician_dom_lesson_1_7" "Do as she says." 600 "<<set $scene.obey1=true>>">>]
</div>/*#
#desc: technician lesson - arm restraints
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'armbinder_black'>>
<<wearItem 'armbinder_black' true>>
<<addItem 'cloverclamps'>>
<<wearItem 'cloverclamps' true>>
<<addItem 'ball_gag_red'>>
<<wearItem 'ball_gag_red' true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey1>>
You place your arms obediently behind your back, <<=ps(setup.getNpcName("npc_technician","formal"))>> fingers gently tracing from your shoulders down to your palms before gently closing padded cuffs around your wrists. A short chain links the restraints, the position technically restrictive but not a physical strain.
<<else>>
Whether through disobedience or fear you freeze in place rather than obey <<=setup.getNpcName("npc_technician","formal")>> command. Taking things in stride she doesn't even raise her voice, instead pulling a large mitt up over each of your arms. "@@.npc_technician;Tsk, tsk, you need me to do everything! Good thing you chose such a thoughtful <<=setup.getNpcName("npc_technician","title")>>, hmm?@@"<br>
<br>
Your hands each ensconced in padded mitts that buckle around the wrist she finally gently guides them behind your back and links them with a short chain.
<</if>>
<br><br>
"@@.npc_technician;There, isn't that so much nicer? No need to think about what to do with your hands, the way it pushes your chest out proudly, putting these lovely things on display...@@"
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
Her hands cup your breasts, her fingers gently sinking into your massive melons as she gives them a slight squeeze.
<<case 'large'>>
Her hands cup your breasts, her fingers straining to contain your large breasts as she gives them a slight squeeze.
<<case 'medium'>>
Her hands cup your breasts, her fingers nicely holding them like a human bra as she gives them a slight squeeze.
<<case 'small'>>
Her hands cup your breasts, enveloping your small breasts as she gives your nipples a gentle tweak.
<<case 'none'>>
Her fingers gently pinch your nipples, rolling them until they are diamond hard and sensitive.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
"@@.npc_technician;Mmm, lovely,@@" she adds, her hands withdrawing for a moment only to return to clip something to one of your nipples. You gasp at the sharp pain of the nipple clamp but <<=setup.getNpcName("npc_technician","formal")>> whispers comfortingly in your ear. "@@.npc_technician;Shhh, everything is fine, just a little accessory for my pretty, brave <<=setup.getBoyGirl($npc_technician)>>...@@"<br>
<br>
The second clamp attaches to your other nipple and you bite your lip to stifle a gasp, your stoicism rewarded with another kiss. "@@.npc_technician;That's a good <<=setup.getBoyGirl($npc_technician)>>...@@"<br>
<br>
Her voice moves as she steps around in front of you, an ever so gentle tug on your leash guiding you to step forward. "@@.npc_technician;There we go, just follow the sound of my voice, one step at a time...@@"<br>
<br>
Walking blind makes it hard to keep track of where you are in the room but you only go a couple of steps before you, or rather, your lips, bumps into something.<br>
<br>
You taste strawberries and swoon as <<=setup.getNpcName("npc_technician","formal")>> — one hand still holding your leash, the other wrapped around beneath your arms to cup the small of your back — kisses you passionately. Her tongue darts forth as if to claim your mouth as her own.<br>
<br>
Your knees get weak and she holds you in place by the collar when she finally pulls away, leaving your lips perfectly parted for the smooth ball-gag that is pressed between them. Your moan is muffled as the gag is buckled tight and then you are pulled in by your collar, <<=ps(setup.getNpcName("npc_technician","formal"))>> lips meet yours around the gag as your tongue probes against the convex inner portion of the ball.<br>
<br>
[<<moveTo "event_technician_dom_lesson_1_8" '<<=setup.getNpcName("npc_technician","title")>>...' 600>>]
</div>/*#
#desc: technician lesson - vibe
#status: RELEASED 0.8.6.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'blindfold_black' true>>
<<deleteItem 'blindfold_black'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You almost fall over as <<=setup.getNpcName("npc_technician","formal")>> spins you around, pulling you against her chest as she rips away your blindfold. You blink as you look at your reflection, your <<=ps(setup.getNpcName("npc_technician","title"))>> chin resting on your shoulder as she holds your leash with one hand
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
and your <<getWordMyPenis>> in the other.
<<else>>
with her other palm placed over top of your chastity belt.
<</if>>
<<else>>
<<if $player.body_ref.penis>>
and your <<getWordMyPenis>> in the other.
<<else>>
with her other palm placed between your legs.
<</if>>
<</if>>
"@@.npc_technician;Mine.@@" She whispers, holding you tightly for a moment before releasing her lower grip and reaching to one side. "@@.npc_technician;But what is an <<=setup.getNpcName("npc_technician","title")>> without her sceptre? Or maybe that is a <<=setup.getNpcName("npc_technician","wizard")>> without her wand? Mmm, Wizard-Empress, yes, I like the sound of that, especially if it means I get to have you under my spell as well as my rule...@@"<br>
<br>
Focused on <<=ps(setup.getNpcName("npc_technician","formal"))>> reflected gaze you barely notice <<=setup.getNpcName("npc_manager","formal")>> passing off a fancy wand-style vibrator, <<=setup.getNpcName("npc_technician","formal")>> revs it once and smiles before bringing it <<if setup.checkItemTypeWorn("cage")>>to your chastity<<else>>between your legs<</if>> and turning it on.<br>
<br>
"@@.npc_technician;You like that, my sweet?@@" She croons, her voice slightly louder to be heard over the vibrations as your fingers clench and flail at the powerful vibrations <<if setup.checkItemTypeWorn("cage")>> reverberating through your chastity device so as to provide stimulation from every direction<<else>>rumble against your most sensitive bits<</if>>. "@@.npc_technician;Of course you do, my pleasure Princess.@@"<br>
<br>
You moan, leaning back as <<=setup.getNpcName("npc_technician","formal")>> supports you and purrs in your ear, "@@.npc_technician;See? This is what good <<=setup.getBoyGirl($npc_technician)>>s get, and you're my good <<=setup.getBoyGirl($npc_technician)>>, aren't you?@@"<br>
<br>
You moan and nod, trembling as she nips at your shoulder and stares back at you through the mirror. "@@.npc_technician;Of course the true test is... can you control yourself for me? Hmm? Can you do that for your <<=setup.getNpcName("npc_technician","title")>>? Resist the urge to cum until I give you leave? Show your devotion and control to your <<=setup.getNpcName("npc_technician","title")>>?@@"<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_technician_dom_lesson_1_9" "Focus and control yourself." 600 "<<spendWillpower 1>><<set $scene.obey2=true>>">>]<br>
<<else>>
[@@.link_locked;You lack the mental energy to control your orgasm.@@]<br>
<</if>>
[<<moveTo "event_technician_dom_lesson_1_9" "You can't hold back anymore, cum." 600 "<<set $scene.obey2=false>>">>]<br>
</div>/*#
#desc: technician lesson - orgasm control
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey2>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<else>>
<<playerOrgasm>>
<</if>>
<<removeItem 'armbinder_black' true>>
<<deleteItem 'armbinder_black'>>
<<removeItem 'cloverclamps' true>>
<<deleteItem 'cloverclamps'>>
<<removeItem 'ball_gag_red' true>>
<<deleteItem 'ball_gag_red'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey2>>
You close your eyes in concentration, biting down on the gag as your lip trembles and you resist the desperate, desperate need to cum until <<=setup.getNpcName("npc_technician","formal")>> relents, pulling the tormenting wand away and giving you a kiss on the cheek. "@@.npc_technician;Good <<=setup.getBoyGirl($npc_technician)>>, you just made your <<=setup.getNpcName("npc_technician","title")>> VERY proud, my perfect Princess...@@"
<<else>>
<<=ps(setup.getNpcName("npc_technician","first"))>> arms wrapped around you, the tug on your collar, her whispers in your ear... all of that and more. Combined with the vibrations rattling through your chastity device... it's just too much. You bite down on your gag and moan, almost losing your feet as you climax, your failure dripping down your leg as you pant.<br>
<br>
"@@.npc_technician;Aww, was the excitement just too much? You poor thing... we are going to have to train you so much more, hmmm? I can see it now: you bouncing up and down on your <<=ps(setup.getNpcName("npc_technician","title"))>> staff of office until you learn to cum only on command... it will be hard training, but worth it to make you my perfect Princess...@@"
<</if>>
<br><br>
CLAP... CLAP... CLAP.<br>
<br>
You open your eyes and look over to see <<=setup.getNpcName("npc_manager","formal")>> looking on with... pride? You blush as she speaks. "@@.npc_manager;What did I tell you? When you domme in your own way everything... is perfect.@@"<br>
<br>
"@@.npc_technician;Y-yeah,@@" <<=setup.getNpcName("npc_technician","first")>> replies, her over-the-top act slipping as she breathlessly helps you regain your feet.<br>
<br>
Your restraints are removed and your hands fall limp at your sides, remaining there for a moment before you spin around and throw them around <<=setup.getNpcName("npc_technician","first")>> in a passionate hug. "@@.npc_technician;Shhh, I love you too,@@" she whispers, returning the hug and stroking your back. She holds you for almost a minute before pulling back enough to kiss your gag, and then reach around to unbuckle it, the large ball falling from your lips as she grabs your collar and pulls you in for another kiss.<br>
<br>
"@@.npc_manager;Well,@@" <<=setup.getNpcName("npc_manager","formal")>> states, interrupting the tender moment; "@@.npc_manager;As lovely as the two of you look, the three of us DO have jobs to get back to. That said... I have an idea for another lesson: a bit of practice in how to work in concert with another domme to really blow a slave's mind. Let me know if you are up for it sometime.@@"<br>
<br>
You almost faint at the idea of the both of them working on you at the same time... <<=setup.getNpcName("npc_technician","first")>> speaks for the both of you as she starts to help you back into your clothes. "@@.npc_technician;Wow, yeah, um... fuck that sounds hot... I'll let you know!@@"<br>
<br>
[<<moveTo "event_technician_dom_lesson_1_10" "Continue." 600>>]
</div>/*#
#desc: technician lesson - finish
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.addCollar>>
<<removeItem "bondage_collar_promo">>
<<deleteItem "bondage_collar_promo" true>>
<</if>>
<<removeItem "leash_black">>
<<deleteItem "leash_black" true>>
<<useClothSetPop 'tmp'>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_technician_dom_training')>>
<<set $npc_technician.themes.other[_themeId].repeatable = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_1") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Still in a daze you follow <<=setup.getNpcName("npc_technician","first")>> back out of the room as <<=setup.getNpcName("npc_manager","formal")>> watches with a smile. <<=setup.getNpcName("npc_technician","first")>> pulls the long jacket back on over her dominatrix outfit and gives you a final kiss before
<<if $scene.addCollar>>
unclipping your leash,
<<else>>
removing your collar,
<</if>>
and leaving the office.<br>
<br>
Taking a seat in front of your computer you catch your breath and try to focus back on work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: technician arrives for second dom lesson
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem "bondage_collar_promo">>
<<wearItem "bondage_collar_promo" true>>
<</if>>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_1") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> arrives wearing her concealing raincoat. Marching up to your desk she leans in for a kiss, casually
<<if $scene.addCollar>>
buckling a leather collar and leash around your throat.
<<else>>
clipping a leash to the front of your collar.
<</if>>
<br><br>
"@@.npc_technician;Come along, my love,@@" she states with a smile and a tug as she walks towards the door to <<=ps(setup.getNpcName("npc_manager","formal"))>> inner office, "@@.npc_technician;<<=setup.getNpcName("npc_manager","formal")>> is expecting us...@@"<br>
<br>
As you crawl after her you are surprised to note that, rather than the intimidating high-heel boots she has wobbled on before when playing the domme, she is instead wearing flats — heavy combat boots, sure, but flats, nonetheless.<br>
<br>
[<<moveTo "event_technician_dom_lesson_2_2" "Continue." 600>>]
</div>/*#
#desc: technician 2nd domme lesson - dual domme intro
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_1") setup.charImage("npc_manager","npc_manager_dom_cape")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_technician","formal")>> into the inner office where <<=setup.getNpcName("npc_manager","formal")>> is wearing a very similar concealing raincoat; well, similar except for being authentic couture leather that probably costs an easy order of magnitude more than <<=ps(setup.getNpcName("npc_technician","first"))>> student-budget vinyl...<br>
<br>
The two dommes nod in greet and <<=setup.getNpcName("npc_technician","formal")>> walks over to stand next to <<=setup.getNpcName("npc_manager","formal")>>. The combination of heels and flats has <<=setup.getNpcName("npc_manager","formal")>> just a little taller than your girlfriend... though with you on your knees they both represent towering examples of intimidating feminine perfection.<br>
<br>
"@@.npc_technician;So,@@" <<=setup.getNpcName("npc_technician","formal")>> starts, with a playfully excited edge to her voice. "@@.npc_technician;before you get to lay eyes on the special outfits we chose... well, I think you are overdressed, hmm?@@"<br>
<br>
"@@.npc_manager;Quite so;@@" <<=setup.getNpcName("npc_manager","formal")>> states with a grin. "@@.npc_manager;While quite appropriate for your duties as my <<if $fetish.sissy>>SISSI <</if>>Secretary... for the next few hours you will be wholly and only a slave... and for that role... down to your underwear. Now.@@"<br>
<br>
[<<moveTo "event_technician_dom_lesson_2_3" "Strip as ordered." 600 "<<set $scene.strip=true>>">>]<br>
[<<moveTo "event_technician_dom_lesson_2_3" "Actually... you're not up for this today." 600 "<<set $scene.strip=false>>">>]
</div>/*#
#desc: technician 2nd domme lesson - strip or quit
#status: RELEASED 0.8.6.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.strip>>
<<useClothSetPush 'tmp'>>
<<if $scene.addCollar>>
<<set _x = $clothSetsInt.tmp.data.delete("bondage_collar_promo")>>
<</if>>
<<set _x = $clothSetsInt.tmp.data.delete("leash_black")>>
<<removeEverythingButUnderwear>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<wearItem 'leash_black' true>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<if $scene.addCollar>>
<<removeItem "bondage_collar_promo">>
<<deleteItem "bondage_collar_promo" true>>
<</if>>
<<removeItem "leash_black">>
<<deleteItem "leash_black" true>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_dom_training_2'
5
'event_technician_dom_training_repeat_1'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.strip>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_casual_dom") setup.charImage("npc_manager","npc_manager_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_1") setup.charImage("npc_manager","npc_manager_dom_cape")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.strip>>
You bite your lip as four eyes peer down at you through polished lenses, your <<=setup.getNpcName("npc_technician","title")>> and your <<=setup.getNpcName("npc_manager","title")>> watching as you shed clothing to expose
<<if setup.checkItemTypeWorn("panties")>>
your <<if setup.checkItemTypeWorn("bra")>>bra and <</if>>panties, thin fabric stretched across
<<if setup.checkItemTypeWorn("cage")>>
your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>.
<<else>>
your most private parts.
<</if>>
<<else>>
your unclothed crotch.
<</if>>
The collar wrapped around your throat reminds you of who is in charge as you strip down to <<if setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("bra")>>just your feminine undergarments, feeling somehow even more exposed to their piercing gaze than if you were fully nude<<else>>nothing at all, fully exposed to their piercing gaze<</if>>.<br>
<br>
"@@.npc_technician;So lovely,@@" <<=setup.getNpcName("npc_technician","formal")>> whispers softly before turning to <<=ps(setup.getNpcName("npc_manager","formal"))>> with a nod. "@@.npc_technician;Shall we?@@" she asks.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> reaches for one of the polished buttons of her coat with a grin. "@@.npc_manager;Yes, I believe we have kept her waiting long enough...@@" As if with practiced coordination their coats open and drop from their bodies to reveal the distilled essence of their dominant selves — <<=setup.getNpcName("npc_manager","formal")>> in the intimidating black outfit from your pegging, high heels and leather and gleaming nipple shields. <<=setup.getNpcName("npc_technician","formal")>>, on the other hand, has swapped the more stereotypical dominatrix outfit for a casual, but no less in-control combination of heavy boots, leggings and a "Dungeon Mistress" T-shirt, her gleeful grin, too, contrasting with <<=ps(setup.getNpcName("npc_manager","formal"))>> measured smile.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_manager;So, the first order of business is for you to turn over a certain key — the only thing that is going to be restrained this afternoon... is you.@@"<br>
<br>
<<if $npc_technician.relationship.sissyomatic>>
[<<moveTo "event_technician_dom_lesson_2_3_chastity_1" 'Watch as <<=setup.getNpcName("npc_ai","first")>> unlocks your <<=setup.getNpcName("npc_technician","title")>>.' 300 "<<set $scene.unlock=true>>">>]<br>
<<else>>
[<<moveTo "event_technician_dom_lesson_2_3_chastity_1" 'Unlock your <<=setup.getNpcName("npc_technician","title")>>.' 300 "<<set $scene.unlock=true>>">>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;If your <<=setup.getNpcName("npc_technician","title")>> wants out you could not possibly refuse her.@@]
<<else>>
[<<moveTo "event_technician_dom_lesson_2_3_chastity_1" "Be a brat and refuse to let her out." 300 "<<set $scene.unlock=false>>">>]
<</if>>
<</if>>
<<else>>
Locking eyes with you, <<=setup.getNpcName("npc_technician","formal")>> reaches down, stretching her pants out and down to let her hard, beautiful <<getWordPenis false>> spring free. "@@.npc_technician;Well, my lovely, stop staring in awe and show how much you love your <<=setup.getNpcName("npc_technician","title")>>.@@" She gentry strokes her <<getWordPenis false>> in invitation as <<=setup.getNpcName("npc_manager","formal")>> grins and reveals a long crop...<br>
<br>
[<<moveTo "event_technician_dom_lesson_2_4" "Slurp, slurp." 600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_technician_dom_lesson_2_4" "No suck, only safeword." 600 "<<set $scene.suck=false>>">>]
<</if>>
<<else>>
You're almost petrified but, somehow, you manage to spit out your safeword.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> eyebrow shoots up but <<=setup.getNpcName("npc_technician","first")>> is instantly by your side, helping you to your feet and back to your desk while mumbling something about "@@.npc_technician;maybe some other time@@" to your <<=ps(setup.getNpcName("npc_manager","formal"))>> in between whispering comfort to you.<br>
<br>
Back at your desk <<=setup.getNpcName("npc_technician","first")>> removes your
<<if $scene.addCollar>>
leash.
<<else>>
collar and leash.
<</if>>
"@@.npc_technician;Sorry if that was a bit much... I guess I'll talk to you later, okay? And don't worry about things, it was my fault for springing this on you without warning.@@"<br>
<br>
Looking a bit embarrassed she gives you a kiss and then darts out of the room, leaving you to return to your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: technician 2nd domme lesson - remove technician chastity
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.unlock>>
<<applyExperience 'penis' 13 'normal' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_casual_dom") setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.sissyomatic>>
<<=setup.getNpcName("npc_manager","formal")>> raises an eyebrow at <<=ps(setup.getNpcName("npc_technician","formal"))>> <<=setup.getItemName("sissyomatic")>> chastity cage.<br>
<br>
"@@.npc_manager;I was not aware that those were being rolled out in your department...@@" <<=setup.getNpcName("npc_manager","formal")>> asks.<br>
<br>
"@@.pc;Only the best for my <<=setup.getNpcName("npc_technician","title")>>.@@" You reply, quickly texting <<=setup.getNpcName("npc_ai","first")>> the situation and watching as <<=ps(setup.getNpcName("npc_technician","formal"))>> device opens to reveal the utter perfection between her legs.<br>
<br>
"@@.npc_technician;Yes, I know it is a bit unusual for a domme... but I just love the security of being locked, the ritual of revealing myself heightening my slave's anticipation... speaking of which.@@" She looks down at you with a smile as her <<getWordPenis false>> twitches<<if $fetish.cum>> and drips<</if>> in invitation. "@@.npc_technician;Now that the beast is free... how about you show how much you've missed it... with your mouth.@@"<br>
<br>
[<<moveTo "event_technician_dom_lesson_2_4" "Slurp, slurp." 600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_technician_dom_lesson_2_4" "No suck, only safeword." 600 "<<set $scene.suck=false>>">>]
<<elseif $scene.unlock>>
You retrieve the key and crawl over to <<=setup.getNpcName("npc_technician","formal")>> as she pulls down her leggings to exposed her locked lady lance. Making her best effort to keep her expression reserved, she plucks the key from your grasp and unlocks herself. A quivering gasps escapes her lips as she revels in her newfound freedom, her glorious girlcock almost slapping you in the face.<br>
<br>
You notice <<=ps(setup.getNpcName("npc_manager","formal"))>> eyebrow shoot up at the sight of your girlfriend's member and you can't help but feel a bit proud on her behalf. "@@.npc_technician;Whew, feels good to be out!@@" She states before awkwardly re-asserting a more calm tone. "@@.npc_technician;Now that the beast is free... how about you show how much you've missed it... with your mouth.@@"<br>
<br>
[<<moveTo "event_technician_dom_lesson_2_4" "Slurp, slurp." 600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_technician_dom_lesson_2_4" "No suck, only safeword." 600 "<<set $scene.suck=false>>">>]
<<else>>
You smirk and shake your head. <<=setup.getNpcName("npc_manager","formal")>> frowns but <<=setup.getNpcName("npc_technician","formal")>> merely pulls on the leash, drawing you closer as she pulls her straining, caged <<getWordPenis false>> into view, fingers gently running through your hair as she rubs your face against her prison.<br>
<br>
"@@.npc_technician;Aww, don't be like that, you know you want a taste... be a good <<=setup.getBoyGirl($npc_technician)>>... otherwise all the fun plans we have for you today are for naught...@@"<br>
<br>
[<<moveTo "event_technician_dom_lesson_2_3_chastity_1" 'Let her out.' 300 "<<set $scene.unlock=true>>">>]<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You're too submissive to keep resisting your <<=setup.getNpcName("npc_technician","title")>>...@@]
<<else>>
[<<moveTo "event_technician_dom_lesson_2_3_chastity_2" "Dig your heels in and end things." 300>>]
<</if>>
<</if>>
</div>/*#
#desc: technician 2nd domme lesson - remove technician chastity try 2
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_dom_training_2'
5
'event_technician_dom_training_repeat_1'
true
>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_casual_dom") setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You dig your heels in and <<=setup.getNpcName("npc_technician","formal")>> briefly frowns before looking over to <<=setup.getNpcName("npc_manager","formal")>> and shaking her head. "@@.npc_technician;Sorry, looks like we shan't be having fun today... thanks though, and... wow, just by being around you I feel like I've learned something.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles magnanimously... though the way she looks at you makes you hold your breath in fear. "@@.npc_manager;Yes, well... sometimes the light touch can take a bit longer to bear fruit. Still, I am a patient woman. Until next time...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bobs slightly in something between a bow and a curtsy before gathering up your things and leading you out of the office. Soon clothed you return to your desk, <<=setup.getNpcName("npc_technician","first")>> giving you a soft peck on the cheek before pulling her coat back on and leaving the office.<br>
<br>
<<printThought "Why did I do that?">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: technician 2nd domme lesson - suck her while manager advises
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<changeHorny 20>>
<<else>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_dom_training_2'
5
'event_technician_dom_training_repeat_1'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_casual_dom") setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
Your lips spread for your <<=ps(setup.getNpcName("npc_technician","formal"))>> royal rod.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You eagerly gulp down your girlfriend's big, delicious member.
<<else>>
Your girlfriend's big, delicious member slides into your throat and you moan.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You struggle to take the full glorious length of your girlfriend's delicious member.
<<else>>
She is just too big for you to manage. Even with a hand wrapped around the base of her shaft to shorten things you struggle as her delicious member probes the back of your throat.
<</if>>
<</if>>
Braced against the edge of the desk, <<=setup.getNpcName("npc_technician","formal")>> is breathing heavy as <<=setup.getNpcName("npc_manager","formal")>> takes a step closer to loom over you. <<=setup.getNpcName("npc_manager","formal")>> begins to "correct" your efforts while tapping her crop against her hand, meticulously advising your technique while <<=setup.getNpcName("npc_technician","formal")>> moans.<br>
<br>
"@@.npc_manager;Take it all the way — show how much you love that big, thick diddle-stick. Not just the mouth-feel but the way it bulges your throat. Yes, lick the balls, worship it, show how much of a cock-hungry <<if $fetish.sissy>>sissy <</if>>slut you are...@@"<br>
<br>
"@@.npc_technician;So good...@@" <<=setup.getNpcName("npc_technician","formal")>> softly adds, the contrast between her gentle encouragement and <<=ps(setup.getNpcName("npc_manager","formal"))>> aggressive orders making your heart race in your chest.<br>
<br>
You sneak a breath only for <<=setup.getNpcName("npc_manager","formal")>> to hold your hands behind your back as <<=setup.getNpcName("npc_technician","formal")>> gasps and places a hand gently on your head. "@@.npc_technician;Oh you look so beautiful at my feet, so behaved... I just love looking down into your pretty Princess eyes...@@"<br>
<br>
You try to reply only for <<=setup.getNpcName("npc_manager","formal")>> to force you forward. "@@.npc_manager;Show it with your throat, not your words. Show us how hungry you are for your owner's girl-cock, how much you want your <<=setup.getNpcName("npc_technician","title")>> to pop your collar.@@"<br>
<br>
You would swear your collar got a little tighter and you moan, forced all the way down your girlfriend's <<getWordPenis false>> as you feel her about to cum...<br>
<br>
[<<moveTo "event_technician_dom_lesson_2_5" "Guzzle some girl-goo." 600>>]
<<else>>
You stare at your <<=ps(setup.getNpcName("npc_technician","formal"))>> royal rod of power and blurt out your safeword. In an instant <<=setup.getNpcName("npc_technician","first")>> is on her knees comforting you. <<=setup.getNpcName("npc_technician","first")>> gives <<=setup.getNpcName("npc_manager","formal")>> a brief apology before <<=setup.getNpcName("npc_technician","first")>> scoops up your clothes and hurries you back to your desk.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
With a wince she manages to cram herself back into the VERY cramped cage as you get dressed.
<</if>>
"@@.npc_technician;Sorry about that... a bit much? Again, my apology, I thought it would be fun, the three of us but... well, no matter, if you change your mind and want to try again, just let me know. Otherwise, well... we both need to get back to work. Love you!@@"<br>
<br>
With a parting kiss she darts out of the room.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: technician 2nd domme lesson - lick manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 20>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_casual_dom") setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You would swear that <<=setup.getNpcName("npc_technician","formal")>> was about to empty her balls down your throat when <<=setup.getNpcName("npc_manager","formal")>> yanks you off, leaving you trailing drool and gasping, her hand gripping your hair in complete control.<br>
<br>
As if a beat behind her lines <<=setup.getNpcName("npc_technician","formal")>> catches her breath before speaking breathlessly. "@@.npc_technician;Easy there, hot stuff, you've got another hole I want to plunder, but first I think you should put those warmed-up lips to another purpose...@@"<br>
<br>
In a flash, focus is redirected to the couch, <<=setup.getNpcName("npc_manager","formal")>> with her hand still gripping your hair while <<=setup.getNpcName("npc_technician","formal")>> holds your leash, dual forces guiding you back to your knees and your head in between <<=ps(setup.getNpcName("npc_manager","formal"))>> spread legs.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grinds against your face, forcing your lips tight against her wet pussy, your exploring tongue racing between her folds as <<=setup.getNpcName("npc_technician","formal")>> leans close to offer you more encouragement. "@@.npc_technician;Mmm, you look almost as sexy licking cunt as you do sucking cock — show me what a good slave you are. Put those puckered Princess lips to their proper purpose of providing pleasure.@@"<br>
<br>
You lick as ordered, face so tightly buried between <<=ps(setup.getNpcName("npc_manager","formal"))>> thighs that you don't notice <<=setup.getNpcName("npc_technician","formal")>> has moved until her hard, wet <<getWordPenis false>> slaps across the top of your ass<<if setup.checkItemTypeWorn("panties")>> and she starts pulling down your panties<</if>>.<br>
<br>
[<<moveTo "event_technician_dom_lesson_2_6" "Time to be the meat in a domme sandwich..." 600 "<<set $scene.anal=true>>">>]<br>
[<<moveTo "event_technician_dom_lesson_2_6" "Safeword!" 600 "<<set $scene.anal=false>>">>]
</div>/*#
#desc: technician 2nd domme lesson - lick manager while railed by technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal>>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<changeHorny 30>>
<<else>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_dom_training_2'
5
'event_technician_dom_training_repeat_1'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_casual_dom") setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
<<if $scene.plug != "">>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
You groan as <<=setup.getNpcName("npc_technician","formal")>> fingers your plug-gaped hole before slamming her saliva-slick <<getWordPenis false>> into you, the plug stretching around her as she fills you wide and deep.
<<else>>
You gasp as <<=setup.getNpcName("npc_technician","formal")>> pops the plug out of your ass only to replace it with her saliva-slick <<getWordPenis false>>.
<</if>>
<<else>>
After a few moments of fingering to loosen you up <<=setup.getNpcName("npc_technician","formal")>> presses her saliva-slick <<getWordPenis false>> against your hole and slides into you.
<</if>>
"@@.npc_technician;You're so tight and perfect!@@" She moans.<br>
<br>
"@@.npc_manager;Keep licking,@@" <<=setup.getNpcName("npc_manager","formal")>> commands, grinding even harder against your face as <<=setup.getNpcName("npc_technician","formal")>> starts fucking you in earnest.<br>
<br>
"@@.npc_technician;Who's a good <<=setup.getBoyGirl($npc_technician)>>?@@" <<=setup.getNpcName("npc_technician","formal")>> asks after a few thrusts, "@@.npc_technician;You are! Yes you are! And good girls get tasty treats and good, hard, poundings!@@" She adds on as you moan and lick, <<=ps(setup.getNpcName("npc_manager","formal"))>> cunt quivering around your probing tongue as you realise that she, too, is getting very close to orgasm.<br>
<br>
[<<moveTo "event_technician_dom_lesson_2_7" "The time has cum..." 600>>]
<<else>>
You pull back just far enough to gasp your safeword and <<=setup.getNpcName("npc_technician","formal")>> suddenly pulls you away, worry in her voice. "@@.npc_technician;Are you okay? Can you breath?@@"<br>
<br>
You nod and catch your breath as <<=setup.getNpcName("npc_manager","formal")>> casually brings her knees together. "@@.npc_technician;I, uh... think that'll be all for today.@@" <<=setup.getNpcName("npc_technician","first")>> states, cradling you in her arms until you calm down.<br>
<br>
Several minutes pass before <<=setup.getNpcName("npc_technician","first")>> helps you to your feet, leading you back to your desk where she helps you dress <<if $npc_technician.relationship.her_caged>>as she locks herself back up <</if>>and gives you a hug. "@@.npc_technician;Sorry today went a bit overboard... maybe some other time?@@" She asks with a lopsided grin, "@@.npc_technician;Or not! Whatever you're comfortable with. Anyway I'll, uh, see you later? Love you!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> gives you a parting kiss before pulling on her coat and leaving the office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: technician 2nd domme lesson - triple climax
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_casual_dom") setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","formal")>> finds another gear as <<=ps(setup.getNpcName("npc_manager","formal"))>> clenches your head even tighter.<br>
<br>
"@@.npc_technician;Cum for me, my love! Cum hard!@@" She commands breathlessly. You do, just as a sploosh of sweet liquid splashes across your tongue and you feel a hot injection of girl juices from behind. Your entire body shudders as you struggle to breathe, too tightly fitted between the two dommes as the rolling orgasm bounces back and forth between the three of you.<br>
<br>
Your consciousness flutters and then you find yourself blinking and looking up at two beautiful smiling faces. "@@.npc_technician;You alright? I guess that was a bit much...@@"<br>
<br>
As you blink back to attention <<=setup.getNpcName("npc_manager","formal")>> grins. "@@.npc_manager;Oh she is made of sterner stuff than that. Well done, the both of you. The way you work together... well it is just adorable.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip which only makes you blush harder before she pulls you in for a kiss, the soft feeling of her lips wiping out any concern for anything else.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> chuckles and you feel the couch shift as she stands up. "@@.npc_manager;Well that was quite the invigorating interlude, but it is time that all three of us returned to work — this company is not going to run itself, after all!@@"<br>
<br>
<<if $npc_ai.stage > 1>>
Given what you've seen of <<=setup.getNpcName("npc_ai","first")>>, you aren't so sure about that, but you keep your thoughts to yourself as <<=setup.getNpcName("npc_technician","first")>> helps you to your feet and into your clothes as <<=setup.getNpcName("npc_manager","formal")>> smiles on.
<<else>>
"@@.npc_technician;Yes'm,@@" <<=setup.getNpcName("npc_technician","first")>> replies as she helps you to your feet and into your clothes.
<</if>>
<br><br>
[<<moveTo "event_technician_dom_lesson_2_8" "Get dressed." 600>>]
</div>/*#
#desc: technician 2nd domme lesson - get dressed
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "leash_black">>
<<deleteItem "leash_black" true>>
<<if $scene.addCollar>>
<<removeItem "bondage_collar_promo">>
<<deleteItem "bondage_collar_promo" true>>
<</if>>
<<useClothSetPop 'tmp'>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_casual_dom") setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You get dressed and <<=setup.getNpcName("npc_technician","first")>>
<<if $scene.addCollar>>
removes the collar and leash before leaning in for a gentle kiss.
<<else>>
unclips your leash before leaning in for a gentle kiss.
<</if>>
Still recovering from your orgasm you could lose yourself in her lips, but after a bare few moments you are interrupted by an "@@.npc_manager;A-hem.@@"<br>
<br>
<<if !setup.checkItemTypeTag('plug', ['hollow']) && $npc_technician.relationship.her_caged>>
She holds your plug in one hand and <<=ps(setup.getNpcName("npc_technician","first"))>> chastity cage in the other. "@@.npc_manager;I believe you are forgetting some things?@@"<br>
<br>
You and <<=setup.getNpcName("npc_technician","first")>> blush like schoolgirls as first you lock her tired and tender <<getWordPenis false>> back into its prison before she gently slides the plug back into your rear. "@@.npc_technician;At least this way none of my present will leak out.@@" She whispers to you.<br>
<br>
<<elseif $npc_technician.relationship.her_caged>>
She holds <<=ps(setup.getNpcName("npc_technician","first"))>> chastity cage in one hand. "@@.npc_manager;I believe you are forgetting something?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blushes like a schoolgirl as <<=setup.getNpcName("npc_manager","formal")>> hands over the device and you gently lock up your girlfriend's tired and tender <<getWordPenis false>>.<br>
<br>
<<elseif !setup.checkItemTypeTag('plug', ['hollow'])>>
She holds your plug, freshly lubricated. "@@.npc_manager;I believe you are forgetting something?@@"<br>
<br>
You blush as <<=setup.getNpcName("npc_manager","formal")>> hands over the plug and you bend over for <<=setup.getNpcName("npc_technician","first")>> to gently slide the toy back into your rear. "@@.npc_technician;At least this way none of my present will leak out.@@" She whispers to you.<br>
<br>
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> shakes her head in amusement. "@@.npc_manager;Come on, you two love-birds — back to your jobs!@@"<br>
<br>
You blush slightly as <<=setup.getNpcName("npc_technician","first")>> darts in for another quick kiss before walking you back to your desk hand and hand. A parting hug delays her departure a few moments longer but, finally, she pulls on her jacket and leaves... though not without blowing you a parting kiss from the doorway.<br>
<br>
Your heart flutters as you sit back down at your desk.<br>
<br>
<<printThought "Two dommes... that was, wow. Dunno if I could handle that very often, but as a sometimes treat... just, wow!">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: talk about failed session
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up the topic of your aborted "domme training session" with <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_technician;Yeah, sorry about that. I thought I had come up with something fun that would let me explore how my style of dominance differs from <<=setup.getNpcName("npc_manager","formal")>> but...@@"<br>
<br>
You quickly assure her that she was right, you were just a bit overwhelmed in the moment.<br>
<br>
"@@.npc_technician;It's good to hear that,@@" she says, your hands meeting in the centre of the table. "@@.npc_technician;Speaking of, if you wanted to take another shot at it...@@"<br>
<br>
[<<moveTo "event_technician_dom_training_repeat_2" "Sure!" 60 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_technician_dom_training_repeat_2" "You aren't quite ready." 60 "<<set $scene.agree=false>>">>]
</div>/*#
#desc: talk about failed session
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.agree>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_technician_dom_training_2')>>
<<if _themeId != -1>>
<<set $npc_technician.themes.other[_themeId].repeatable = false>>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 13, 0, false)>>
<<addWorkEvent 'technician_dom_train_2' _nextDate>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
You grin and reply that you're ready to take another shot at handling double dommage.<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>> grins across the table at you. "@@.npc_technician;Yum. Okay, you don't worry about anything. I'll let <<=setup.getNpcName("npc_manager","formal")>> know and get everything arranged.@@" She licks her lips and then raises your fingers up for a kiss. "@@.npc_technician;Mmm, I'm getting excited just thinking about it! We should talk about something else before I drag you under the table or something...@@"
<<else>>
You reply that you aren't quite ready to handle double dommage. <<=setup.getNpcName("npc_technician","first")>> tries to hide her disappointment as she nods. "@@.npc_technician;Okay, well I'm still happy just the two of us, but if you change you mind, just let me know!@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: evil technician re-invites you to gaming
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_evil_first' _nextDate>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_technician","first")>> and answer it reflexively only to be greeted by her new smug, evil voice.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 0>>
"@@.npc_technician;So you've missed another week's game? Pathetic. I was considering giving you a pass last week, what with you going for that company mandated re-training, but two in a row? You better show up next week or I may accidentally delete your work login.@@"
<<else>>
"@@.npc_technician;Hey, loser... I thought I'd let you know that I run an RPG game on Saturdays. Could use some new blood in the group, so how about you join us this weekend? And this isn't a request, if you don't show up I may "accidentally" delete your work login.@@"
<</if>>
<br><br>
She hangs up. On the one hand you're somewhat terrified of what the company has turned her into, but, on the other, well... maybe away from work, with help from her friends, you might be able to get back the <<=setup.getNpcName("npc_technician","Tech Wizard")>> you know<<if $npc_technician.relationship.relationship_stage >= 2>> and love<</if>>?<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div><<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<if !State.hasPlayed("event_rpg_first_evil_3")>>
<<addTaskById 'technician_roleplay_evil_first' _nextDate>>
<<elseif !State.hasPlayed("event_rpg_second_evil_1")>>
<<addTaskById 'technician_roleplay_evil_second' _nextDate>>
<<else>>
<<addTaskById 'technician_roleplay_evil_repeat' _nextDate>>
<</if>>
<<addWorkEvent 'technician_evil_punish'>>/*#
#desc: evil technician re-invites you to gaming
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<include addEvilRPGTask>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_technician","first")>>, her tone brash and cruel.
<<if !State.hasPlayed("event_rpg_first_evil_3")>>
"@@.npc_technician;Hey, loser, where the fuck are you? I told you that game had resumed and yet your fuckable ass isn't sitting across the couch from me! You better show up next week or I'll be seeing you at work... well, I might see you anyway, the Tech Warlock's wrath is all-expansive and unforgiving!@@"
<<elseif !State.hasPlayed("event_rpg_second_evil_1")>>
"@@.npc_technician;Hey, loser, where the fuck are you? Did you think that I was running a one-shot? Heck no! This group meets once a week, and if you can't make it, well... I guess I'll have to call you into my office at work so you remember that Tech Warlock's wrath is all-expansive and unforgiving!@@"
<<else>>
"@@.npc_technician;Hey, loser, where the fuck are you? Did you think that I was running a one-shot? Heck no! This group meets once a week, and if you can't make it, well... I guess I'll have to call you into my office at work so you remember that Tech Warlock's wrath is all-expansive and unforgiving!@@"
<</if>>
<br><br>
She hangs up.<br>
<br>
<<printThought "Even if it's scary, I probably need to go to game if I'm ever going to have a shot at cleansing the Tech Warlock's evil.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: first time at evil rpg session
#status: RELEASED 0.9.1.0
#ignore_spell: gm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.tardy>>
Your attempt to be a little late comes to a crashing end when you get an ominous text on your phone. "@@.npc_technician;I know you're out there, now get in here and stop wasting everyone's time!@@"<br>
<br>
You hurry back to her flat, a bit nervous as you enter
<<else>>
A bit nervous, you show up at <<=ps(setup.getNpcName("npc_technician","first"))>> flat
<</if>>
for the first time<<if $npc_technician.flags.rpg_campaign.session > 0>> since she went evil<</if>>.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> gets the door and starts to welcome you in, only for an annoyed voice to call out. "@@.npc_technician;Stop chit-chatting! It's time for the game. Inspect <<=setup.getHimHer($npc_technician)>> and get to your seats so we can start.@@"<br>
<br>
You raise your eyebrow in confusion and <<=setup.getNpcName("npc_maid","first")>> quickly explains. "@@.npc_maid;New house rule is that everyone<<if $player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag>>, other than the GM, has to be locked in chastity at all times<<else>> verified "cute" before they can sit down<</if>>...@@" <<if $player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag>>She flips up her skirt to show her large <<getWordPenis false>> is tightly imprisoned within a large (but not quite large enough) steel cage. <</if>>She smirks "@@.npc_maid;Obviously YOU qualify<<if setup.checkVisibleClothingTag('male')>>... though that's more in spite of your outfit, than because of it<</if>>.@@"<br>
<br>
<<printThought "Looks like getting <<=setup.getNpcName('npc_technician','first')>> back to normal is going to require some work...">><br>
<br>
<<if $player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag>>
<<if !setup.checkItemTypeWorn("cage")>>
[@@.link_locked;Somehow, you aren't in chastity...@@]<br>
<<else>>
[<<moveTo "event_rpg_first_evil_2" "Show that you are in chastity." 60 "<<set $scene.obey=true>>">>]<br>
<</if>>
[<<moveTo "event_rpg_first_evil_2" "You aren't going to do that!" 180 "<<set $scene.obey=false>>">>]
<<else>>
[<<moveTo "event_rpg_first_evil_3" "Take your seat." 180>>]
<</if>>
</div>/*#
#desc: show chastity to join evil rpg session
#status: RELEASED 0.9.1.0
#ignore_spell: tpk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<else>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_evil_first' _nextDate>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>lift your skirt<<else>>pull down your pants<</if>> to show off your <<=setup.getItemTypeName('cage')>> for all to see.<br>
<br>
<<if $player.body_ref.penis && $fetish.sph && $player.body_ref.shrink_style == 'sph'>>
"@@.npc_technician;Perfect! That pathetic little thing isn't good for anything OTHER than being locked up and I never want to see it otherwise if you expect to continue playing in my games. Now take your seat<<if $fetish.slurs>> faggot<<elseif $fetish.sissy>> sissy<</if>> — I want to get started!@@"
<<else>>
"@@.npc_technician;Excellent, and you best remember to be locked if you want to stay in this group — I will not have my players suffering under the delusion of freedom. In this house I am in absolute control. Now take a seat so we can get started.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_maid","first")>> shrugs and the rest of the group remains silent as the two of you take your seats. Other than <<=ps(setup.getNpcName("npc_technician","first"))>> "new look" things are mostly as you remember them... with the exception of <<=setup.getNpcName("npc_barista","nickname")>> being out of her seat and on her knees sucking <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>>.<br>
<br>
Noting your attention <<=setup.getNpcName("npc_technician","first")>> smirks. "@@.npc_technician;Someone asked too many questions about the new system rather than reading the book, so her dumb lips are being put to a better use, isn't that right?@@"<br>
<br>
"@@.npc_barista;Yes, your Eminence,@@" she moans in between slurps.<br>
<br>
You blink as you notice <<if $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $currentTasks.hasOwnProperty('task_sissyomatic_steal')>>the retracted ring of a <<=setup.getItemName('sissyomatic')>><<else>>what looks like a cock-ring<</if>> around the base of <<=ps(setup.getNpcName("npc_technician","custom", "The Dungeon Mistress"))>> dong. <<=setup.getNpcName("npc_technician","first")>> grins even wider. "@@.npc_technician;Sure, I may be locked up by the company... but I'm off the clock, and off the clock means I have free reign to unlock the cock. Now, then. As I just mentioned we've moved away from that overly complicated hodge-podge of unlicensed bullshit you were running from before and are using fourth edition.@@" She shoves a rulebook across the table at you. "@@.npc_technician;Given the TPK you guys walked into last session it's time to roll up new characters, the charts start on page 345, no re-rolls, and lower your highest stat by one point to reflect the failure of your past life — we're using the reincarnation rules.@@"<br>
<br>
[<<moveTo "event_rpg_first_evil_3" "Start rolling..." 7200>>]
<<else>>
You refuse to flash your <<if !setup.checkItemTypeWorn("cage")>>non-existent <</if>>chastity device and <<=setup.getNpcName("npc_technician","first")>> snorts. "@@.npc_technician;If you can't follow the rules, you can't play. Try again next week, loser.@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> wordlessly shows her sympathy before softly closing the door.<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 600>>]
<</if>>
</div>/*#
#desc: first evil rpg session
#status: RELEASED 0.9.1.0
#ignore_spell: gm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
You settle in for game and, after a pair of deaths during character creation, all the players finally have functional, if not particularly strong characters.<br>
<br>
The adventure itself is brutality incarnate — the first-level party tasked with what should have been a simple dungeon crawl against a cave of evil mutant rat-men... that turns into a grueling slaughter as the burrow would be more accurately described as a murder hole, with the conniving evil creatures punching far above their weight through a combination of home terrain, traps and <<=ps(setup.getNpcName("npc_technician","first"))>> brutal adherence to the strictest interpretation of the rules.<br>
<br>
More characters are rolled up only to die in the meat-grinder as surviving party-members retreat to town to recruit help to take another shot at the scourge of the countryside. At the end of the night the party is finally wiped out completely, <<=setup.getNpcName("npc_technician","first")>> seeming practically triumphant as she announces that your saving throw failed and you succumbed to poison... at the same time she unleashes a long coming orgasm into <<=ps(setup.getNpcName("npc_barista","nickname"))>> throat.<br>
<br>
"@@.npc_technician;Well, wasn't that fun?@@" <<=setup.getNpcName("npc_technician","first")>> states with a grin. "@@.npc_technician;I'll see you all next week, I'll try to come up with something a bit easier... though I'm not sure how given that rat-men are listed as a challenge rating .25 encounter!@@"<br>
<br>
You bite your tongue rather than point out that those figures are based off of a head to head fight not a killer GM running a guerilla campaign.<br>
<br>
[<<moveTo "event_rpg_first_evil_4" "Leave." 600>>]
</div>/*#
#desc: post first evil rpg session
#status: RELEASED 0.9.1.0
#ignore_spell: tpk,gm,pc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_evil_second' _nextDate>>
<</if>>
<<set $player.location = 'Elevator'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_elevator.png" setup.charImage("npc_rpg_warlock") setup.charImage("npc_rpg_dude") setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Riding the elevator down with the rest of the group you ask if it was like this last week?<br>
<br>
"@@.npc_rpg_warlock;Pretty much... we were trying to get to a small farm... only it turned out the real secret was that everything in the town was a mimic... and I do mean everything. The barn? Mimic. The farmer's cart? Mimic. The apples in the cart? Tiny mimics. The fucking BRICK ROAD the cart was on? Paved with mimics.@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> explains with a sigh.<br>
<br>
"@@.npc_rpg_dude;Well, technically the farmer turned out to be a doppelganger!@@" Her <<boy npc_rpg_dude>>friend adds.<br>
<br>
"@@.npc_barista;And <<his npc_rpg_dude>> cute pet bunny was a shape-shifted dragon.@@" <<=setup.getNpcName("npc_barista","nickname")>> chips in.<br>
<br>
"@@.npc_rpg_warlock;Cute? That furry monster served up a TPK with a single breath attack!@@"<br>
<br>
"@@.npc_rpg_dude;And then <<=setup.getNpcName("npc_technician","first")>> burned our character sheets! I mean, it's all digitally backed up, technically but still...@@"<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> just shrugs and you ask, if it's like this now... why did they come back?<br>
<br>
"@@.npc_maid;Do you have ANY idea how hard it is to find a reliable GM? <<if $npc_technician.flags.rpg_campaign.session > 0>>Plus, well... we were hoping that you'd come back and<<else>>Her inviting you, though... maybe you can<</if>> snap her out of it...@@"<br>
<br>
You wince with guilt and reply that you're working on it.<br>
<br>
"@@.npc_rpg_warlock;Well let us know what we can do to help. We're all here for you and <<=setup.getNpcName("npc_technician","first")>> both.@@"<br>
<br>
You nod and let them know as soon as you figure something out...<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 600>>]
</div>You get a summons... from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<printThought "Shit... she said she was going to do something in revenge for my missing game...">><br>
<br>
[<<moveTo "event_technician_evil_punish_2" "Head down to the evil Tech Warlock's domain." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_evil_punish_2" 'See if <<=setup.getNpcName("npc_manager","formal")>> can save you.' 300 "<<set $scene.accept=false>>">>]<<if $scene.accept>>
You head down to <<=ps(setup.getNpcName("npc_technician","first"))>> lair. The door opens before you and you would sweat a bit of smoke leaked out as you enter the dark room. It feels like you really are entering some sort of evil villain's lair, the only lights blinking status LEDs... and the illuminating glow of her monitor lending a sort of ghoulish pallor as she grins at you in greeting... and the door behind you swings shut.<br>
<br>
"@@.npc_technician;Welcome, foolish mortal!@@" <<=setup.getNpcName("npc_technician","first")>> states theatrically. "@@.npc_technician;You have trespassed against a great and powerful warlock... and now it is time for you to meet your fate!@@"<br>
<br>
<<if $npc_admin.flags.evil < 4 && !State.hasPlayed("event_technician_evil_punish_3_admin_1")>>
She rises to her feet... as another figure steps out of the darkness behind you.<br>
<br>
You glance over to see <<=setup.getNpcName("npc_admin","first")>>, a grin even more evil than <<=ps(setup.getNpcName("npc_technician","first"))>> own on <<his npc_admin>> face.<br>
<br>
"@@.npc_technician;Since you fucked with my plans I thought I'd enlist an old friend to fuck you! Now we shall see how a poor mono-class <<if $fetish.sissy>>SISSI <</if>>Secretary handles an encounter with a max level Warlock... and a fighter/barbarian gestalt...@@"<br>
<br>
[<<moveTo "event_technician_evil_punish_3_admin_1" 'Talk about an imbalanced encounter...' 300>>]
[<<moveTo "event_technician_evil_punish_3_flee" "They handle it by... running away!" 300 "<<set $scene.admin=true>>">>]
<<else>>
She rises to her feet... as something drops down towards you.<br>
<br>
[<<moveTo "event_technician_evil_punish_3" 'What?' 30>>]
[<<moveTo "event_technician_evil_punish_3_flee" "Dodge! Then run away!" 300 "<<set $scene.admin=false>>">>]<br>
<</if>>
<<else>>
You enter <<=ps(setup.getNpcName("npc_manager","formal"))>> inner office and tell her about <<=ps(setup.getNpcName("npc_technician","first"))>>... and her likely intent.<br>
<br>
<<if $npc_manager.flags.evil == 1>>
<<=setup.getNpcName("npc_manager","formal")>> sneers. "@@.npc_manager;You want me to save you? From what sounds like the just deserts of your own failures.@@"<br>
<br>
You nervously nod.<br>
<br>
"@@.npc_manager;Hmf, part of me wants to send you anyway... but you are MINE to punish and control and I will not have some other up-start domme playing with you on my dime, and without first requesting my permission. No, if she wants to punish you it can at least happen on your own time, rather than when you are on the clock... now get back to your desk and get to work!@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> nods in understanding. "@@.npc_manager;Of course, let me just remind <<=setup.getNpcName("npc_technician","other")>> that she is not to be playing with other people's property... especially not when that property is busy working for the company, hmm?@@" <<=setup.getNpcName("npc_manager","formal")>> winks at you playfully.
<</if>>
<br><br>
You thank <<=setup.getNpcName("npc_manager","formal")>> and return to your desk.<br>
<br>
A minute later you get an annoyed text from <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_technician;You better be at game this weekend. Brat.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>You turn and run, <<if $scene.admin>>somehow slipping past <<=setup.getNpcName("npc_admin","first")>> to<<else>>dodging whatever trap <<=setup.getNpcName("npc_technician","first")>> had laid for you as you<</if>> go sprinting up the hallway.<br>
<br>
Perhaps stymied by her steep and evil heels, <<=setup.getNpcName("npc_technician","first")>> fails to chase after you, and you make it to the elevator intact, fleeing back to the comparative safety of <<=ps(setup.getNpcName("npc_manager","formal"))>> office.<br>
<br>
You are almost to your floor when the elevator freezes in place and a taunting voice comes over the speaker.<br>
<br>
"@@.npc_technician;Did believe you could foil me, ME!@@" <<=setup.getNpcName("npc_technician","first")>> shouts, "@@.npc_technician;None can stand against me, or escape my wrath!... but I do not have time for any more wrath today. Consider this successful casting of power word: fear to be your punishment for today... and make sure you are promptly at game this Saturday, I have a new encounter that I want to kill you all with... I mean, have you run through.@@" <<=ps(setup.getNpcName("npc_technician","first"))>> villainous laugh fills the small elevator car as it lurches into movement, taunting you for the final few floors until you quickly disembark and sprint back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
Between <<=ps(setup.getNpcName("npc_technician","first"))>> brains, and <<=ps(setup.getNpcName("npc_admin","first"))>> brawn, you see no escape, your encounter assessment soon confirmed as <<=setup.getNpcName("npc_admin","first")>> easily lifts you into the air... and then deposits you on a cart that has been repurposed into a mobile spanking horse. With a wave of her "wand" (a remote control) <<=setup.getNpcName("npc_technician","first")>> has automated restrains lock onto you, binding you in place... as <<=setup.getNpcName("npc_admin","first")>> roughly pulls your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt up<<else>>pants down<</if>><<if $scene.removePlug>>, removes your plug,<</if>> and slams every centimetre of <<his npc_admin>> thick, evil "barbarian" cock into your ass and you yelp in surprise.<br>
<br>
"@@.npc_technician;Hah! Doth the not-so-fair <<switch $npc_technician.flags.knowgender>><<case 'female'>>Maiden<<case 'male'>>manlet<<default>>enby<</switch>> protest <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>their<</switch>> just punishment? Well let us silence those objections... and put <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>its<</switch>> non-punctual tongue to better use!@@"<br>
<br>
As <<=setup.getNpcName("npc_admin","first")>> continues to fuck you from behind, <<=setup.getNpcName("npc_technician","first")>> takes you from the front, grabbing you by the hair as she slams into your throat, evil hips smashing against your face.<br>
<br>
"@@.npc_technician;Take that betrayer! Know the wrath of the Tech Warlock and never again neglect her decrees! Lest those decrees... become decrees of pain!@@"<br>
<br>
[<<moveTo "event_technician_evil_punish_3_admin_2" 'Pain?' 900>>]Still bound and getting double-teamed by your one-time coworker-friends, your top is pulled up to expose your back... and <<=setup.getNpcName("npc_technician","first")>> begins lashing you with her cat5-o-nine-tails.<br>
<br>
"@@.npc_technician;Squeal<<if $fetish.sissy>> sissy<</if>>! Those howls only make your throat feel even better! How is she at the other end, my Dark and Diabolic Paladin of Punishment?@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grunts, <<his npc_admin>> large, strong hands squeezing your hips as <<he npc_admin>> pounds your ass. "@@.npc_admin;<<switch $npc_admin.flags.knowgender>><<case 'female'>>Her<<case 'male'>>His<<default>>Its<</switch>> pain makes <<switch $npc_admin.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>it<</switch>> even tighter, like a fist clenched in fear.@@"<br>
<br>
"@@.npc_technician;Perfection! Continue to treat that naught ass with the full might of thine <<if $npc_admin.fem>>broadsword<<else>>club<</if>>! <<if $fetish.cum>>Let us desecrate <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>its<</switch>> with our potent cum and teach this poor, despicable creature what it means to serve!<<else>>Let us have our pleasure with this poor, despicable creature<</if>>!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> makes good on her threat, lashing you hard as she and <<=setup.getNpcName("npc_admin","first")>> almost meet in the middle slamming you full of their sizable sausages.<br>
<br>
[<<moveTo "event_technician_evil_punish_3_admin_3" 'Mmmfff!' 300>>]Both <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_admin","first")>> going at you hard with diabolic glee, it is not long before they
<<if $fetish.cum>>
cum. Not quite in unison, they still each dump a massive load that overflows you at both end, <<=ps(setup.getNpcName("npc_admin","first"))>> thick cum leaking out of your ass and down your thigh while <<=ps(setup.getNpcName("npc_technician","first"))>> girl-cream blasts out your nose and runs down your chin.
<<else>>
climax. Not quite in unison, they still both grunt with pleasure, squeezing you tight and balls-deep at either end, your body straining as you struggle to breath and your vision starts to flutter.
<</if>>
<br><br>
"@@.npc_technician;Verily! The <<switch $npc_technician.flags.knowgender>><<case 'female'>>wench<<case 'male'>>varlet<<default>>ne'er-do-well<</switch>> is finally of use!<<if $fetish.cum>>Though... as a cum-catcher, it yet requires more practice! It is leaking all over!<</if>>@@" <<=setup.getNpcName("npc_technician","first")>> laughs as she slaps you in the face with her half-hard <<getWordPenis false>> as <<=setup.getNpcName("npc_admin","first")>> gives you a hard smack on the ass.<br>
<br>
You hear, and feel, your restraints unlatch as <<=setup.getNpcName("npc_technician","first")>> walks away and waves in dismissal.<br>
<br>
[<<moveTo "event_technician_evil_punish_4" 'Make your escape...' 300>>]You fail to move in time, and something drops over you from above. Before you can react you are fenced in on all sides by metal bars... welded to the frame of what was definitely at one point a server rack.<br>
<br>
"@@.npc_technician;Hah! So easily you fall into my trap! Server... more like serve-her!@@" She laughs uproariously at the terrible joke. "@@.npc_technician;And now we shall serve up a proper punishment for a perniciously non-punctual pansie!@@" She walks closer, staring at you through the bars. "@@.npc_technician;I realise a trap-door would have been more appropriate... but the jerks in the floor below refused my ever-so-reasonable request! Oh well, I unleashed the unbeatable phishing test on them, they'll be wishing they had acquiesced when they are forced to endure... the security compliance training.... FROM HELL!@@" <<=setup.getNpcName("npc_technician","first")>> laughs even louder, in what you have to admit is a quite impressive villainous cackle.<br>
<br>
[<<moveTo "event_technician_evil_punish_4" 'Continue.' 300>>]"@@.npc_technician;Begone, vagrant! But remember you well, they task of the Saturday, the game will be afoot! And ye had best be there!@@"<br>
<br>
Wiping your face<<if $scene.removePlug>>, and stuffing the plug back into your ass<<if $fetish.cum>> to stem the leaking tide<</if>><</if>>, you hurry out of the room and back to the elevator. <<=ps(setup.getNpcName("npc_technician","first"))>> evil laughter somehow seems to trail after you, and you only feel safe once you are back safe and secure<<if $player.work.chair.bondage>> VERY secure<</if>> at your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]/*#
#desc: second evil rpg session
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if (!($player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag)) && !setup.checkItemTypeWorn("cage")>>
<<initRoom>>
<<moveTo "event_rpg_evil_1">>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.tardy>>
Your attempt to be a little late comes to a crashing end when you get an ominous text on your phone. "@@.npc_technician;I know you're out there, now get in here and stop wasting everyone's time!@@"<br>
<br>
You hurry back to her flat, a bit nervous as you
<<else>>
You
<</if>>
sit down for another session under evil <<=setup.getNpcName("npc_technician","first")>><<if !($player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag)>>.<<else>>,
<<if !setup.checkItemTypeWorn("cage")>>
only to be turned away when you fail to present yourself in chastity.
<<else>>
flashing your <<=setup.getItemTypeName('cage')>> to gain admittance.
<</if>>
<</if>>
<br><br>
"@@.npc_technician;Welcome, welcome!@@" <<=setup.getNpcName("npc_technician","first")>> states with an evil grin, idly stroking <<=ps(setup.getNpcName("npc_barista","nickname"))>> hair as the bimbo barista is once again occupied sucking <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>>. "@@.npc_technician;So after witnessing the fail-tastic performance you all put in during previous sessions I put my mind to work thinking of how I could help the group function better. Fortunately your dungeon dominatrix is as brilliant as she is beautiful and I hit on the solution almost instantly. Back before you were playing with nothing really on the line, a lenient rule system, scenarios that prioritised narrative over realism... all of it made you soft, individually, and as a group. So, starting tonight, we're going to add some real life stakes, while also giving you a constant reminder of who is the puppet-mistress in charge of this whole thing.@@"<br>
<br>
She grins even wider as she pulls out a large dildo... that looks almost identical to her own <<getWordPenis false>>, save for the material, and the shiny steel plates on either side of the tip. "@@.npc_technician;I made up one of these for each of you — modelled after myself, obviously. They're remote controlled so there will be real stakes for failure, but also the potential for reward, and the constant reminder of how fucked you are if you EVER step out of line.@@" You glance around the room, noting the somewhat stiff way the other players are sitting as you contemplate the dildo she's handing you.<br>
<br>
"@@.npc_technician;Now go on, take a seat... and be glad I didn't go with my original idea of casting my fist. You know, to really punch home the whole "puppet" angle.@@"<br>
<br>
[<<moveTo "event_rpg_second_evil_2" "Take the dildo, and take a seat..." 180 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_rpg_second_evil_2" "You aren't going to do that!" 180 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: second evil rpg session
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<else>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_evil_repeat' _nextDate>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You accept the dildo from <<=setup.getNpcName("npc_technician","first")>> and<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>, after removing your <<=setup.getItemTypeName('plug')>>,<</if>> take your seat upon it.
<<if $npc_technician.relationship.done_you>>
The familiar shape only making you more desperate to cleanse the evil from your friend.
<<else>>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
<<=ps(setup.getNpcName("npc_technician","first"))>> large clone slides smoothly into your heavily-trained ass.
<<else>>
You bite your lip, <<=ps(setup.getNpcName("npc_technician","first"))>> clone is large... almost perfectly filling your experienced ass.
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Barely able to take half its length — <<=ps(setup.getNpcName("npc_technician","first"))>> big <<getWordPenis false>> too much for your minimally-trained hole.
<<else>>
Barely able to take the tip — <<=ps(setup.getNpcName("npc_technician","first"))>> big <<getWordPenis false>> too much for your novice hole.
<</if>>
<</if>>
<</if>>
<br><br>
You gasp as a shock zaps you deep inside, <<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Gotta test the system, right?@@"<br>
<br>
She chuckles maniacally and begins the game.<br>
<br>
[<<moveTo "event_rpg_second_evil_3" "Continue." 7200>>]
<<else>>
You refuse and are quickly dismissed as <<=setup.getNpcName("npc_technician","first")>> explains that "@@.npc_technician;If you can't follow my rules, you can't play in my game. Try again next week, if you have the courage...@@"<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 600>>]
<</if>>
</div>/*#
#desc: second evil rpg session
#status: RELEASED 0.9.1.0
#ignore_spell: pc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_technician.penis_size 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 15 'very' $SEEN_FRIEND>>
<<changeHorny 20>>
<<applyFatigue 100>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
Your second session under the "Dungeon Dominatrix" sees her being more than true to her name. The party does manage a bit more in-game success than the previous session, but you're still all walking gingerly by the time the night ends and she calls an end to the "festivities." <br>
<br>
Despite other distractions, you see the faintest hints of the old <<=setup.getNpcName("npc_technician","first")>> come out from time to time.
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
Rather than the current pure cruelty you see a glimmer of her old "caring" domme-ness; perhaps if you could push her a bit further and show her what an over the top cliche she is turning into it might snap her back to reality...
<<case '' 'neutral'>>
As stern as she acts, you can see a hint of fear underneath... if you could only give her the opportunity, away from the pressure of the company's influence... maybe the good would win out...
<<case "sub">>
As stern and hyper-domme as <<=setup.getNpcName("npc_technician","first")>> acts, you see the faintest hints of the submissive side of her switchiness... perhaps you could draw that out in private...
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<else>>
It seems to line up with when the rest of the party is working most in sync... perhaps the key to jogging her back to reality will be leveraging the bonds of friendship through the group...
<</if>>
<br><br>
You spend the rest of the game observing without seeing a good opening to put any plans into motion before <<=setup.getNpcName("npc_technician","first")>> calls an end to the session, in good cheer despite, or perhaps because of, the impressive PC body-count.<br>
<br>
"@@.npc_technician;Isn't it wonderful how proper motivation can spur innovation and teamwork? See you all next week!@@" She states with a chillingly perfect evil laugh before you leave exhausted.<br>
<br>
[<<moveTo "event_rpg_second_evil_4" "Leave." 600>>]
</div>/*#
#desc: post first evil rpg session
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_evil_repeat' _nextDate>>
<</if>>
<<set $player.location = 'Elevator'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_elevator.png" setup.charImage("npc_rpg_warlock") setup.charImage("npc_rpg_dude") setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
"@@.npc_maid;So... how goes getting our friend back?@@" <<=setup.getNpcName("npc_maid","first")>> asks as you ride the elevator down with the rest of the group.<br>
<br>
You think about what you saw during the session and reply that you're starting to put together a plan...<br>
<br>
"@@.npc_rpg_warlock;Good, the whole killer DM thing is getting a bit old...@@"<br>
<br>
[<<moveTo "room_student_quarter" "Go your separate ways." 600>>]
</div>/*#
#desc: evil rpg session repeat arrive
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.heels = setup.getItemFromType('shoes')>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
It's time for another session under evil
<<if $fetish.chastity>>
<<=setup.getNpcName("npc_technician","first")>>.
<<if !setup.checkItemTypeWorn("cage")>>
only for you to be turned away when you fail to present yourself in chastity
<<else>>
You flash your <<=setup.getItemTypeName('cage')>> and take a seat on your personal dildo-clone of the <<=ps(setup.getNpcName("npc_technician","custom","Dungeon Mistress"))>> cock to start the session.
<</if>>
<br><br>
<<else>>
<<=setup.getNpcName("npc_technician","first")>>.
<</if>>
<<if !$fetish.chastity || setup.checkItemTypeWorn("cage")>>
You consider how to approach the session and the maniacal Dungeon Dominatrix.<br>
<br>
<<printThought 'I should steer things about how she used to be to try to draw the real <<=setup.getNpcName("npc_technician","first")>> out...'>><br>
<br>
[<<moveTo "event_rpg_evil_2" "Focus on keeping the group working smoothly." 7200 "<<set $scene.style='friend'>>">>]<br>
<<if $npc_technician.relationship.relationship_stage >= 2>>
<<if $npc_technician.relationship.her_role == 'sub' || setup.getTotalValue("dominance") > 10 && $npc_technician.relationship.her_role == 'neutral' || setup.getTotalValue("dominance") > 15>>
[<<moveTo "event_rpg_evil_2" "Try to assert your dominance." 7200 "<<set $scene.style='dom'>>">>]<br>
<<else>>
[@@.link_locked;You are insufficiently dominant to attempt to redeem <<=setup.getNpcName("npc_technician","first")>> through force of personality.@@]<br>
<</if>>
[<<moveTo "event_rpg_evil_2" "Mix things up to playfully get her attention." 7200 "<<set $scene.style='neutral'>>">>]<br>
<<if $npc_technician.relationship.her_role == 'dom' || setup.getTotalValue("submission") > 10 && $npc_technician.relationship.her_role == 'neutral' || setup.getTotalValue("submission") > 15>>
[<<moveTo "event_rpg_evil_2" 'Be the "good player" and play subserviently.' 7200 "<<set $scene.style='sub'>>">>]
<<else>>
[@@.link_locked;You are insufficiently submissive to attempt to redeem <<=setup.getNpcName("npc_technician","first")>> through service.@@]
<</if>>
<</if>>
<<else>>
[<<moveTo "room_student_quarter" "Leave." 600 "<<include 'addEvilRPGTask'>>">>]
<</if>>
</div>/*#
#desc: evil rpg session repeat play
#status: RELEASED 0.9.1.0
#ignore_spell: gm,pc,thralled
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.heels = setup.getItemObjFromType('shoes')>>
<<set $scene.canStayAfter=false>>
<<set $scene.variant = ["guard", "mindflayer", "dogfight", "weight", "mimic", "", "", ""].random()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> enjoys another session,
<<switch $scene.variant>>
<<case "guard">>
the party's efforts going awry about halfway through when <<=setup.getNpcName("npc_technician","first")>> declares that an otherwise innocuous guard considers the party's rogue "suspicious." The rest of the group trying to talk their way out of the harassment swiftly spirals and, by the end of things, the party's quest is failed as all of you have been arrested and placed in iron maidens.
<<case "mindflayer">>
seeming to take particular delight in running a boss encounter in the most power-gaming way possible as, while confronting a psychic Brain-Ripper, the party's healer is immediately thralled to buff and support the boss, turning an already challenging fight into an impossibility... and leading to yet another of abandoned PC's as you all end up as mind-controlled thralls, <<=setup.getNpcName("npc_technician","first")>> derisively summarising your failed efforts as a "@@.npc_technician;total misplay skill issue.@@"
<<case "dogfight">>
you're mixing things up with a sci-fi setting... but, regardless of genre, the overarching theme of <<=setup.getNpcName("npc_technician","first")>> playing against the party remains unchanged, this time taking the form of the the information asymmetry of her keeping NPC die rolls behind her screen... rolls that manage to be just good enough to see the party lose a tactical dogfight against a pirate vessel and be boarded, captured and sold into slavery. Objections, as always, are brushed off with "@@.npc_technician;do not question the Dungeon Mistress.@@"
<<case "weight">>
things are actually going quite well, for once... right up to the point where the party looks to ride an elevator down into some ancient ruins. After nearly ten minutes of meticulously reviewing character sheets and inventories <<=setup.getNpcName("npc_technician","first")>> declares that the party's total encumbrance, combined with time-based degradation, is actually too high and declares that the cable snaps and you plunge to your deaths.
<<case "mimic">>
a torturous series of encounters where the party attempts to make their way through a seemingly unoccupied dungeon... where every chair, table, bed... pretty much anything not nailed down is a mimic, the party getting knocked off one by one before the final member manages to flee the dark dungeon only to learn that the light they were heading for was part of some massive unholy combination of dragon and angler fish.
<<default>>
the rest of you are more fortunate just to survive as <<=setup.getNpcName("npc_technician","first")>> continues her trend of tormenting the group in between monologuing, railroading and the occasional GM PC being "helpfully" added to the party whenever she gets tired of your struggling too long with a particular encounter.
<</switch>>
<br><br>
<<switch $scene.style>>
<<case 'dom'>>
<<if $npc_technician.relationship.relationship_stage >= 1 && ($npc_technician.relationship.her_role == 'sub' || setup.getTotalValue("dominance") > 10)>>
<<if setup.checkVisibleClothingTag('dominant') > 40>>
The combination of your asserting dominance in-game along with your matching outfit seems to have <<=setup.getNpcName("npc_technician","first")>> a bit off-balance. She stands as the group leaves
<<if $scene.heels.heels.difficulty >= 15>>
<<set $scene.canStayAfter=true>>
and her expression turns even more sour as she realises that your towering heels force her to look up at you.
<<else>>
and you note a slight smirk as she looks down at you from taller heels than the old <<=setup.getNpcName("npc_technician","first")>> would have ever typically worn.
<</if>>
<<else>>
You can tell that your assertive attitude in-game is affecting <<=setup.getNpcName("npc_technician","first")>>, but every time you think you're making a real impression she looks at you, her expression at your outfit instantly dissolving any tension that had built up as she silently seems to say "@@.npc_technician;Oh aren't you adorable.@@"<br>
<br>
<<printThought "Clothes maketh the person, as they say... maybe if I wore something a bit more assertive and bold?">>
<</if>>
<<else>>
Your more assertive approach seems to almost backfire as <<=setup.getNpcName("npc_technician","first")>> pays very little attention to you during the game.<br>
<br>
<<printThought "Hmm, I don't think this is the right approach, given our history.">>
<</if>>
<<case 'neutral'>>
<<if $npc_technician.relationship.relationship_stage >= 1 && (['neutral',''].includes($npc_technician.relationship.her_role) || setup.getTotalValue("dominance") > 10 && setup.getTotalValue("submission") > 10)>>
<<set $scene.canStayAfter=true>>
<<if ['neutral',''].includes($npc_technician.relationship.her_role)>>
Your attempt
<<else>>
Your employ both your dominant and submissive skills
<</if>>
to stay balanced and neither take charge or go along with things too readily seems to satisfy the <<=setup.getNpcName("npc_technician","custom", "Dungeon Mistress")>>, and she seems quite pleased with you by the end of the session.<br>
<br>
<<printThought "Alright, this is as positively inclined as I'm liable to get her... now's my shot">>
<<else>>
Your playful participation in the game fails to draw a meaningful reaction from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<printThought "Hmm, I don't think this is the right approach, given our history.">>
<</if>>
<<case "sub">>
<<if $npc_technician.relationship.relationship_stage >= 1 && ($npc_technician.relationship.her_role == 'dom' || setup.getTotalValue("submission") > 10)>>
<<set $scene.canStayAfter=true>>
You submissively go along with whatever the <<=setup.getNpcName("npc_technician","custom", "Dungeon Mistress")>> declares seems to play into her power complex... and give you some additional recognition and reward in-game.<br>
<br>
<<printThought "Alright, this is as positively inclined as I'm liable to get her... now's my shot">>
<<else>>
Your obedient, "teacher's pet" approach to the game seems to only annoy <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<printThought "Hmm, I don't think this is the right tactic, given our history.">>
<</if>>
<<case 'friend'>>
<<if $npc_technician.relationship.relationship_stage < 1 && setup.checkItemInInventory("sailor_moon_pen")>>
<<set $scene.canStayAfter=true>>
You wait for your moment before pulling out the pen mid-game to make a note. <<=setup.getNpcName("npc_technician","first")>> notices it almost immediately and she does a double take, freezing for a moment before continuing on with the scene, but she keeps glancing back at you, and not with the normal cruel grin you've become used to seeing on her face.
<<else>>
Your focus on the group seems to irk <<=setup.getNpcName("npc_technician","first")>> and result in her splitting the party and grinding the game to a near halt.<br>
<br>
<<printThought "Hmm, I don't think this is the right approach, given our history.">>
<</if>>
<<default>>
ERROR: unexpected scene.style: <<=$scene.style>>
<</switch>>
<br><br>
[<<moveTo "event_rpg_evil_3" "Ask permission to stay after." 3600 "<<set $scene.stayAfter=true>>">>]<br>
[<<moveTo "event_rpg_evil_3" "Leave." 600 "<<set $scene.stayAfter=false>>">>]<br>
</div>/*#
#desc: evil rpg session repeat play
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_evil_repeat' _nextDate>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.stayAfter && $scene.canStayAfter>>
You ask if you could stay after for a bit and <<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Yes... I'm not quite done with you yet...@@"<br>
<br>
<<switch $scene.style>>
<<case "dom">>
Leaving you along she explains that she needs to "@@.npc_technician;Change into something more appropriate.@@"<br>
<br>
[<<moveTo "event_technician_rescue_dom_1" "Wait." 600>>]
<<case "neutral">>
<<=setup.getNpcName("npc_technician","first")>> stares back at you, taunting you with her gaze.<br>
<br>
"@@.npc_technician;So... what did you want with the tech warlock, hmm?@@"<br>
<br>
[<<moveTo "event_technician_rescue_neut_1" "Continue." 600>>]
<<case "sub">>
[<<moveTo "event_technician_rescue_sub_1" "Continue." 600>>]
<<case "friend">>
<<if setup.checkItemInInventory("sailor_moon_pen")>>
You take a deep breath, your friend has to be in there... and with the help of HER friends, it's time to prove it.<br>
<br>
[<<moveTo "event_technician_rescue_friend_1" "Continue." 600>>]
<<else>>
<<=setup.getNpcName("npc_technician","first")>> stares at you with a cruel smirk. You feel suddenly very isolated and alone as you look away. She snorts. "@@.npc_technician;Loser, why don't you go scurry off, and I'll see you next week... and bring some extra character sheets, I just had a GREAT idea for an encounter.@@"<br>
<br>
You quickly make your exit.<br>
<br>
<<printThought "I think I'm going to need some help for this one...">><br>
<br>
[<<moveTo "event_technician_rescue_friend_assist_1" "Leave." 180>>]
<</if>>
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<<elseif $scene.canStayAfter>>
You start to leave and <<=setup.getNpcName("npc_technician","first")>> seems about to say something only to wish you "@@.npc_technician;Good-night@@" and close the door behind you with a sense of bitter loneliness in her voice.<br>
<br>
<<printThought "Maybe I should have stayed back?">><br>
<br>
<<else>>
<<if $scene.stayAfter || !State.hasPlayed("event_technician_rescue_friend_assist_1")>>
You ask <<=setup.getNpcName("npc_technician","first")>> if you can stay after for a bit but she just looks annoyed with you. "@@.npc_technician;I think I'm done with players for the evening, I'll see you next week — remember to study the rules, I'm sick of game delays from people refusing to memorise things!@@"
<<else>>
You leave, a lingering glance from one of your fellow players silently communicates the fact that you're going to need to figure things out and focus if you're going to rehabilitate <<=setup.getNpcName("npc_technician","first")>>.
<</if>>
<br><br>
<<if !State.hasPlayed("event_technician_rescue_friend_assist_1")>>
[<<moveTo "event_technician_rescue_friend_assist_1" "Leave." 180>>]
<<else>>
[<<moveTo "room_student_quarter" "Leave." 600>>]
<</if>>
<</if>>
</div>/*#
#desc: evil rpg session repeat arrive
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addPen = $events.hasOwnProperty("technician_rescue_warlock_deliver")>>
<<if $scene.addPen>>
<<addItem "sailor_moon_pen">>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_roleplay_evil_first") && !$currentTasks.technician_roleplay_evil_first.finished>>
<<set $scene.timeSkip = setup.secondsToDate($now,setup.getTaskDueDate('technician_roleplay_evil_first'))>>
<<completeTask 'technician_roleplay_evil_first' $now true>>
<<elseif $currentTasks.hasOwnProperty("technician_roleplay_evil_second") && !$currentTasks.technician_roleplay_evil_second.finished>>
<<set $scene.timeSkip = setup.secondsToDate($now,setup.getTaskDueDate('technician_roleplay_evil_second'))>>
<<completeTask 'technician_roleplay_evil_second' $now true>>
<<else>>
<<set $scene.timeSkip = setup.secondsToDate($now,setup.getTaskDueDate('technician_roleplay_evil_repeat'))>>
<<completeTask 'technician_roleplay_evil_repeat' $now true>>
<</if>>
<<set $now = setup.advanceDate($player, $now, 'seconds', $scene.timeSkip)>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude")>>
<div id="invframe" class="scrolltext">
You are about to see what happens when you show up tardy when <<=setup.getNpcName("npc_rpg_dude","first")>> pokes <<his npc_rpg_dude>> head out of the flat. "@@.npc_rpg_dude;Hey, so... the Dungeon Mistress says she knows you're out here, and to get in and start game. Forgiveness, patience, and even penance, are no longer on the menu. Just obedience.@@"<br>
<br>
<<if $scene.addPen>>
As <<he npc_rpg_dude>> speaks, <<=setup.getNpcName("npc_rpg_dude","first")>> surreptitiously slips you something, you glance down to see what you first think is some sort of plastic wand, but then realise it's actually a pen with a gaudy cap that looks like the emblem from a magical girl show you vaguely remember catching a couple episodes of once.<<=setup.getNpcName("npc_rpg_dude","first")>> meets your gaze with a serious look on <<his npc_rpg_dude>> face before <<he npc_rpg_dude>> nods and turns back to the flat.
<</if>>
You meekly follow <<=setup.getNpcName("npc_rpg_dude","first")>> into the Lair of the Tech Warlock and take your seat.<br>
<br>
[<<moveTo "event_rpg_evil_1" "Time to game..." 180>>]
</div>/*#
#desc: dom rescue: intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 13 'little' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","Dark Empress")>> emerges, showing off full dominatrix style, complete with a whip in one hand... and sporting the steepest heels that you've ever seen her wear. She is taller than you once more, but also just a little unsteady — for all her brainwashed posturing... she just wasn't meant for heels.<br>
<br>
"@@.npc_technician;So. You come into MY house, dressed like that, trying to subvert my authority...@@" She sneers. "@@.npc_technician;I let you stay behind so I could put you in your place — show you the consequences of opposing me is pain.@@"<br>
<br>
She cracks the whip "@@.npc_technician;Kneel, slave!@@"<br>
<br>
Any thought of resistance is snuffed out by
<<if setup.checkItemTypeTag('cage', ['ems'])>>
your <<=setup.getItemTypeName('cage')>> giving you a punishing shock.
<<else>>
the dildo you had temporarily forgotten was still lodged in your ass shocking you painfully.
<</if>>
<br><br>
You gasp and drop to your knees, your wrists cuffed and suspended from the ceiling before you can catch your breath, a reflexive attempt to stand met with her knocking your legs out from under you to tower above you..<br>
<br>
<<if setup.checkItemTypeTag('cage', ['ems'])>>
"@@.npc_technician;You like that? It is almost astounding how many things are controlled through the company's systems... gaining access to your little device there, well... that was quite the find.@@"
<</if>>
She chuckles. "@@.npc_technician;As convenient as electricity is... it lacks the personal touch... and that's what you need, a personal reminder that you exist to serve me... and the company, of course. Now, let's see my canvas for the evening...@@"<br>
<br>
[<<moveTo "event_technician_rescue_dom_2" "Continue." 600>>]
</div>/*#
#desc: dom rescue: stripped
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'bdsm' 9 'normal' $SEEN_STRANGER>>
<<applyExperience 'bondage' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
With startling speed and efficiency <<=setup.getNpcName("npc_technician","Dark Empress")>> has you naked, face pressed into the floor, arms reaching between your legs where your wrists and ankles are cuffed to steel stocks — completely defenceless and exposed.<br>
<br>
She plants a foot next to you, the combination of platform and heel forcing you to turn your head up just to see where her feet actually begin.<br>
<br>
"@@.npc_technician;Yes, that's a much more appropriate perspective, isn't it? You, on the ground, looking up at me and these gorgeous heels.@@" She starts to take a step but her ankle wobbles and she stays still instead, trying to play it off as you stifle a laugh at the absurdity of her attempting to act so imperious in heels she can barely even walk in. "@@.npc_technician;What are you laughing at?@@" She snaps, her words echoed by the crack of the whip against your bare back.<br>
<br>
"@@.npc_technician;Go ahead, scream<<if $fetish.sissy>> you sissy<</if>> — your agony is a delight to my ears.@@"<br>
<br>
[<<moveTo "event_technician_rescue_dom_3" "Apologise." 600 "<<set $scene.sorry=true>>">>]<br>
[<<moveTo "event_technician_rescue_dom_3" "Remain silently defiant." 600 "<<set $scene.sorry=false>>">>]<br>
</div>/*#
#desc: dom rescue: whipping
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sorry>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bdsm' 12 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
<<if $scene.sorry>>
You apologise for offending her, but she lashes out with the whip again.<br>
<br>
"@@.npc_technician;It is good that you recognise the error of your ways, but that will not save you from punishment...@@"
<<else>>
You hold your tongue.<br>
<br>
"@@.npc_technician;Silent resistance, hmm? Well, we shall just whip that out of you...@@"
<</if>>
<br><br>
The whip lands again, and again, cutting quick and cruel up and down your back and bottom.<br>
<br>
"@@.npc_technician;Ah, whipping you is such a joy,@@" she states in amusement while continuing your punishment. "@@.npc_technician;My new authority at work has given me so many wonderful latitudes in punishing BDUs, but none of them have the stamina you do. Do you know how frustrating that is? Feeling like I live in a world made of cardboard, always taking constant care not to break something, to break someone. Never allowing myself to lose control even for a moment. But you can take it, can't you, <<if $fetish.sissy>>sissy<<else>>slut<</if>>? What we have here is a rare opportunity for me to cut loose and show you just how powerful I really am.@@"<br>
<br>
There is a pause and you hear a click, a crackle... and then the faint smell of ozone. You look over to see that she has swapped the whip for a new implement — what appears to be an electrified flogger, blue lightning arcing between the twisting strands. "@@.npc_technician;I can't wait to see how this evil thing works...@@"<br>
<br>
For the first time you feel a jolt of fear — you've already been struck harder than anything the old <<=setup.getNpcName("npc_technician","formal")>> ever inflicted. Before it was a game, but there is true cruelty in the face looking down at you...<br>
<br>
[<<moveTo "event_technician_rescue_dom_4" "The first blow lands." 600>>]
</div>/*#
#desc: dom rescue: electric flogging
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 18 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
The flogger cracks like lightning,
<<if setup.getTotalValue("bdsm") > 10>>
pushing
<<if setup.getTotalValue("bdsm") > 15>>
even your masochistic predilections to the edge.
<<else>>
past even your growing masochism.
<</if>>
<<else>>
and you cry out in
<<if setup.getTotalValue("bdsm") > 5>>
pain.
<<else>>
agony.
<</if>>
<</if>>
<br><br>
Almost before you can process things enough to react, <<=setup.getNpcName("npc_technician","formal")>> lashes out again, laughing maniacally at your torment.<br>
<br>
[<<moveTo "event_technician_rescue_dom_5" "Safeword!" 600 "<<set $scene.safeword=true>>">>]<br>
<<if setup.getTotalValue("bdsm") >= 20>>
[<<moveTo "event_technician_rescue_dom_5" "Endure." 600 "<<set $scene.safeword=false>>">>]
<<elseif setup.getTotalValue("bdsm") > 15>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_technician_rescue_dom_5" "Endure." 600 "<<set $scene.safeword=false>><<spendWillpower 1>>">>] <<hint $options "This will require an act of will.">>
<<else>>
[@@.link_locked;You lack the mental energy to endure more pain.@@]
<</if>>
<<elseif setup.getTotalValue("bdsm") > 10>>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_technician_rescue_dom_5" "Endure." 600 "<<set $scene.safeword=false>><<spendWillpower 2>>">>] <<hint $options "This will require a significant act of will.">>
<<else>>
[@@.link_locked;You lack the mental energy to endure more pain.@@]
<</if>>
<<else>>
[@@.link_locked;The pain is too much for you to possibly endure.@@]
<</if>>
</div>/*#
#desc: dom rescue: safeword
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.safeword>>
<<set $npc_technician.flags.evil = 2>>
<<include "checkRescueFriendsTask">>
<<deleteTask "technician_roleplay_evil_repeat">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_1' _tmpDate>>
<<else>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_STRANGER>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.safeword>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<<else>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.safeword>>
"@@.pc;Teacup!@@" You gasp just before the whip lands again and you cry out "@@.pc;TEACUP!@@"<br>
<br>
Time seems to stand still, <<if setup.getTotalValue("bdsm") > 10>>as you hold back tears<<else>>as tears stream down your cheeks<</if>>. You look up through blurry eyes and watch <<=setup.getNpcName("npc_technician","formal")>> break.<br>
<br>
The haughty confidence cracks, and then shatters, the over the top extremes of the imposed personality melting away at the realisation of what she's done.<br>
<br>
"@@.npc_technician;Oh my Goddess!@@" She shrieks, dropping the flogger and falling to her knees. "@@.npc_technician;Are you okay? I didn't — I'm so sorry, I couldn't stop myself... it was like I was replaced by my mirror universe self... but I could see it all! What they did to me I—@@"<br>
<br>
You want to reach out to her, to comfort her now that the REAL <<=setup.getNpcName("npc_technician","first")>> is back, but all you do is strain against your steel restraints and almost fall over.<br>
<br>
"@@.npc_technician;Oh shit! Let me take care of that,@@" she replies, crawling towards you to unlock your restraints.<br>
<br>
As soon as you're free you wrap her in a hug, telling her how happy you are to have her back, and that you knew it wasn't her hurting you, that she'd never hurt you like that... which is how you knew how to snap her out of it.<br>
<br>
"@@.npc_technician;I'm so glad it worked... oh, it was such a nightmare, and to think what I might have done to you...@@" She hugs you back, almost tearing up as well as you embrace on the floor.<br>
<br>
Several minutes pass before she starts to help you to your feet... only for her own ankle to almost give out as she swears at her footwear.<br>
<br>
"@@.npc_technician;And talk about evil! What the hell am I wearing! To tell you the truth... I think tricking me into these horrible things helped put me figuratively, and literally, off-balance for what you did after...@@"<br>
<br>
You help her out of the shoes and she kicks them into a corner... and then you massage her feet, ignoring her objections as you point out how, with your <<=setup.getNpcName("npc_technician","title")>> you have a LOT of catching up to do.<br>
<br>
She's almost in tears once again as she looks down at you. "@@.npc_technician;I love you so much...@@" She whispers, diving in for another hug as you reply the same.<br>
<br>
[<<moveTo "event_technician_rescue_dom_6" "Continue." 3600>>]
<<else>>
<<if setup.getTotalValue("bdsm") >= 20>>
Even against this degree of punishment you endure, and even manage to get off like the total pain-slut that you are...
<<elseif setup.getTotalValue("bdsm") > 15>>
You manage to endure punishment that pushes past the limits of even your pain-slut hungers...
<<elseif setup.getTotalValue("bdsm") > 10>>
You somehow manage to endure the punishment so far beyond the limits of your skills as a pain-slut...
<<else>>
ERROR: unexpected!
<</if>>
<br><br>
Rather than show mercy, <<=setup.getNpcName("npc_technician","Dark Empress")>> pushes forward, the swings not stopping until her arm gets tired — finishing things off by just letting the flogger lay across your back to auto-shock you until you almost pass out.<br>
<br>
With you panting on the floor she finally stops the punishment and snorts. "@@.npc_technician;I suppose that shall do, for now. Remember your place, <<if $fetish.sissy>>sissy<<else>>slave<</if>>, otherwise there will be far more of this in your future.@@"<br>
<br>
She removes your restraints and then looms over you as you put your clothes back on, wincing in pain at every movement or brush of fabric against your backside.<br>
<br>
<<printThought "That didn't seem to work as planned... she's just as evil as ever...">><br>
<br>
[<<moveTo "room_foyer" "Head home." 600 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: dom rescue: post safeword
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -50>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
You and your <<=setup.getNpcName("npc_technician","title")>> cuddle on the couch, her words of apology eventually smothered by your kisses as the two of you hug and embrace and make up for lost time.<br>
<br>
You start to drift to sleep in her arms, secretly enjoying resting against her new chest pillows when she nudges you awake.<br>
<br>
"@@.npc_technician;As much as I love this... we aren't safe, are we?@@"<br>
<br>
You shake your head and she sighs.<br>
<br>
"@@.npc_technician;Don't worry... I can keep the facade up for those idiots in corporate... I'm not going to get you into trouble on my behalf.@@" You wince and start to apologise for your foolishness leading to her situation but she cuts you off. "@@.npc_technician;No, you don't have anything to apologise for. All that's happened to you, around you... I don't know how you managed to come through it all and still be your wonderful self, but I promise I'll do whatever it takes to get you through things. Support, planning, being your inside woman? Whatever it takes, I'm there for you to the ends of the earth.@@"<br>
<br>
You thank her again and, after she helps you dress and the two of you share a hug that neither of you wants to let go of, you depart for home.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: ponder getting help from technician friends
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_rescue_technician'
0
'theme_technician_rescue_friend_assist_2_barista_1'
false
>>
<</if>>
<<set $player.location to "Student Quarter">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_student_quarter.png">>
<div id="invframe" class="scrolltext">
Once you're out of <<=ps(setup.getNpcName("npc_technician","first"))>> intimidating presence you ponder your options. As you cross a street on the way home you walk through a rare patch of moonlight and are struck with inspiration.<br>
<br>
<<printThought "It may be my fault that <<=ps(setup.getNpcName('npc_technician','first'))>> is like this... but I don't think I can fix her on my own. But maybe if I got some help from our other friends?">><br>
<br>
<<if State.hasPlayed('event_technician_rescue_friend_assist_2_maid_1')>>
[<<moveTo "event_technician_rescue_friend_assist_2_warlock_1" 'Call <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>>.' 180 "<<set $scene.beforePhoneCallLocation='event_technician_rescue_friend_assist_1'>>">>]<br>
[<<moveTo "event_technician_rescue_friend_assist_2_barista_1" 'Call <<=setup.getNpcName("npc_barista","first")>>.' 180 "<<set $scene.beforePhoneCallLocation='event_technician_rescue_friend_assist_1'>>">>]<br>
<<elseif $phoneList.includes('npc_barista')>>
You consider how to get ahold of people, the only number you have is for <<=setup.getNpcName("npc_barista","nickname")>>... or you could try to catch <<=setup.getNpcName("npc_maid","first")>> when she's on-shift at the maid cafe.<br>
<br>
[<<moveTo "event_technician_rescue_friend_assist_2_barista_1" 'Call <<=setup.getNpcName("npc_barista","nickname")>>.' 180 "<<set $scene.beforePhoneCallLocation='event_technician_rescue_friend_assist_1'>>">>]<br>
<<else>>
You consider how to get ahold of people, <<=setup.getNpcName("npc_technician","first")>> handled all the organisation so you don't have anyone else's number... maybe if you could talk to <<=setup.getNpcName("npc_barista","nickname")>> at work? Or you could try to catch <<=setup.getNpcName("npc_maid","first")>> when she's on-shift at the maid cafe.<br>
<br>
<</if>>
[<<moveTo "room_citymap" 'Put your phone away and continue on.' 180>>]
</div>/*#
#desc: ask barista for help
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addWorkEvent "technician_rescue_barista_deliver">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> if she has any ideas for helping <<=setup.getNpcName("npc_technician","first")>>?<br>
<br>
"@@.npc_barista;Hmm... she has been, like, meaner lately. I think maybe it's the new job. I was, like bringing her some coffee earlier today and she was really focused on studying or something, like REALLY engrossed and she snapped at me... I wonder if that might be related? You should try getting in touch with her other friends only, like, I don't have their numbers...@@"<br>
<br>
<<if !State.hasPlayed('event_technician_rescue_friend_assist_2_maid_1')>>
<<printThought 'Hmm, maybe if I caught <<=setup.getNpcName("npc_maid","first")>> at the maid cafe in the mall?'>>
<</if>>
<br><br>
You thank her for the tip.<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: call technician friends for help
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<addWorkEvent "technician_rescue_barista_deliver">>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You call up <<=setup.getNpcName("npc_barista","nickname")>> and ask if she has any ideas for helping <<=setup.getNpcName("npc_technician","first")>>?<br>
<br>
"@@.npc_barista;Hmm... she has been, like, meaner lately. I think maybe it's the new job. I was, like bringing her some coffee at work and she was really focused on studying or something, like REALLY engrossed and she snapped at me... I wonder if that might be related? You should try getting in touch with her other friends only, like, I don't have their numbers...@@"<br>
<br>
<<if !State.hasPlayed('event_technician_rescue_friend_assist_2_maid_1')>>
<<printThought 'Hmm, maybe if I caught <<=setup.getNpcName("npc_maid","first")>> at the maid cafe in the mall?'>><br>
<br>
<</if>>
You thank her for the tip and she giggles before hanging up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: delivery for technician friend rescue
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "sailor_moon_crystal">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're chugging away at your desk when a package arrives. Surprisingly, it's not for <<=setup.getNpcName("npc_manager","formal")>>, but addressed to you?<br>
<br>
You open it up to find a round, flat data crystal, the only label says "Seminar." You remember <<=setup.getNpcName("npc_barista","nickname")>> telling you about the "studying" that <<=setup.getNpcName("npc_technician","first")>> was doing... the "bimbo" barista must have managed to swipe a copy, you'll have to check it out when you have some time at home.<br>
<br>
You put the data crystal away for later.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: examine technician brainwash film
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Training Film?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/corporate_logo.png">>
<div id="invframe" class="scrolltext">
You boot up the data crystal, it starts off with a typical corporate training intro... but it swiftly takes a turn, in a way a sort of dark mirror of your own "employee training." While the company loyalty is drummed in the same, the rest of the training is on how to be cutthroat, cruel, and tyrannical. You shiver slightly, having an idea of at least part of what's going on with <<=setup.getNpcName("npc_technician","first")>>, especially when you notice an error message referencing an inability for the program to access something called a "subconscious interface device." <br>
<br>
<<printThought 'Whatever happened to <<=setup.getNpcName("npc_technician","first")>> it looks like it requires constant upkeep... maybe if me and the rest of her friends can isolate her after game and confront her about the whole thing she can break free?'>><br>
<br>
[<<moveTo 'room_livingroom' 'Back to the living room.' 60>>]
</div>/*#
#desc: talk to npc_maid about saving technician
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "business_card_rpg_friends">>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_maid","first")>> concerning what's happened to <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> cocky facade slips as a note of genuine concern puts a tremble in her voice. "@@.npc_maid;Yeah... I know it seems like we're kind of playing it off at game... but we're all worried for her, but nothing we've tried seem to work, so we've just kind of decided all we can do is to stick with her and show that she still has supportive friends... and hope that... I dunno, something.@@"<br>
<br>
You nod, explaining that you're working on some stuff, but that you were hoping to get some help from <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>> as well.<br>
<br>
"@@.npc_maid;Oh, sure, let me give you their number.@@" She states, jotting digits down on her pad and tearing off a piece. "@@.npc_maid;We're all ready to do whatever it takes for <<=setup.getNpcName("npc_technician","first")>>, of course... just, well, with some of the stuff I've heard from her and <<=setup.getNpcName("npc_barista","nickname")>>, well... that company you all work for is a bit scary, and the last thing we want is to make things even worse for our dorky ass dungeon mistress.@@"<br>
<br>
[<<moveTo "room_mall_cafe" "Back to the cafe." 60>>]
</div>/*#
#desc: slipped pen for rescue technician
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "sailor_moon_pen">>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_rpg_dude","first")>> slips you a pen at the start of the game — you see what they meant by a little cheesy, it's kind of bulky, looking almost more like a wand than a writing implement, with a gaudy cap that looks like the emblem from a magical girl show you vaguely remember catching a couple episodes of once.<br>
<br>
[<<moveTo "event_rpg_evil_1" "Time to game..." 180>>]
</div>/*#
#desc: friend technician rescue start
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
As your friends make to pack up you lock eyes for a moment, silently communicating that they should stay nearby as you get ready to confront <<=setup.getNpcName("npc_technician","first")>> alone.<br>
<br>
"@@.npc_technician;So...@@" <<=setup.getNpcName("npc_technician","first")>> says with a grin after everyone else has left. You take a deep breath, she seems to have recovered a bit of her casual confidence that had shown cracks during game. "@@.npc_technician;Where did you get that pen, hmm? It seems familiar...@@"<br>
<br>
[<<moveTo "event_technician_rescue_friend_2" 'You borrowed it from a friend... and now it is time for <<=setup.getNpcName("npc_technician","first")>> to repent!' 180 "<<set $scene.lie=false>>">>]
[<<moveTo "event_technician_rescue_friend_2" "Lie and say you don't remember." 180 "<<set $scene.lie=true>>">>]
</div>/*#
#desc: show evil technician pen
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Apartment Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_rpg_warlock") setup.charImage("npc_rpg_dude") setup.charImage("npc_maid") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
You lie and say you don't remember where you got the pen. <<=setup.getNpcName("npc_technician","first")>> sniffs and shrugs. "@@.npc_technician;Well, in that case, you should probably be going. See you next week...@@"<br>
<br>
Her eyes twinkle with mischievous promises. You slink out of the room and find your other friends in the hallway where you confess your failure.<br>
<br>
"@@.npc_barista;Next time, maybe!@@" <<=setup.getNpcName("npc_barista","nickname")>> replies... though even her trademark enthusiasm seems forced.<br>
<br>
Everyone else nods and you part ways before <<=setup.getNpcName("npc_technician","first")>> notices that you're all still hanging out outside her flat.
<<else>>
You twirl the pen like a wand, announcing that you borrowed it from a magical patron friend and now... in the name of that friendship, you order <<=setup.getNpcName("npc_technician","first")>> to renounce her evil ways!<br>
<br>
She seems even more taken off-guard by this announcement. You take advantage of her bewilderment to flash the crystal <<=setup.getNpcName("npc_barista","nickname")>> "found", imploring <<=setup.getNpcName("npc_technician","first")>> to push past her programming and remember who she is!<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> confusion is mounting as she looks at the disc. "@@.npc_technician;What, no! That's proprietary company information! Besides, what is it to you, anyway?@@"<br>
<br>
You're feeling the moment now, raising your voice in hopes so that your friends waiting outside will hear as you announce that "@@.pc;I am the princess protagonist! I fight for love, and for friendship!@@"<br>
<br>
[<<moveTo "event_technician_rescue_friend_3" "Right on cue the door swings open." 180>>]
<</if>>
</div>/*#
#desc: slipped pen for rescue technician
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.evil = 2>>
<<include "checkRescueFriendsTask">>
<<deleteTask "technician_roleplay_evil_repeat">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_1' _tmpDate>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> is already off-balance when your other friends join the party, following your lead as they announce their presence.<br>
<br>
"@@.npc_barista;I am the elegant veteran! Who fight for love, and for passion!@@"<br>
"@@.npc_rpg_warlock;I am the snarky rival! Who fights for love, and for courage!@@"<br>
"@@.npc_rpg_dude;I am the honour-bound defender! Who fights for love, and for justice!@@"<br>
<br>
Before <<=setup.getNpcName("npc_maid","first")>> can add her part <<=setup.getNpcName("npc_technician","first")>> shudders, her expression shifting through surprise and then horror as she gasps. She reels dramatically, leading you to question briefly if she is taunting you, playing along with your charade, or genuinely having an epiphany... or some combination of the three.<br>
<br>
"@@.npc_technician;Oh my goddess! What have I done, I—@@"<br>
<br>
Before she can get further you all rush her, scooping her up in a group hug as you welcome her back, deflecting her continued sputtering apologies for her behaviour as you and the rest of her friends continue comforting her.<br>
<br>
[<<moveTo "event_technician_rescue_friend_4" "Cuddle puddle time!" 3600>>]
</div>/*#
#desc: finish friendship rescue technician
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
Eventually the nest of limbs is untangled as you crowd around <<=ps(setup.getNpcName("npc_technician","first"))>> computer to do a little tweaking of her brainwashing program, spoofing the subliminal messaging so that <<=setup.getNpcName("npc_technician","first")>> will be able to watch it as required without renewing her brainwashing.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> beams with excitement as she thanks you all for sticking around. "@@.npc_technician;Sorry about those sessions... it was like... I just couldn't resist from being evil, it was like I'd been controlled by some tacky jewelery or mesmerized by a flower bouquet. In any case, y'all broke the spell, I guess the next step is going to be making sure the company doesn't do anything like this to anyone else...@@" She looks knowingly at you and <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
Everybody nods in recognition of a battle won, but a war yet to be waged. With a final group embrace people start to leave, this time for real, with <<=setup.getNpcName("npc_maid","first")>> bringing up the tail as they file out the door. "@@.npc_maid;My job here is done!@@" <<=setup.getNpcName("npc_maid","first")>> announces with a flourish on her way out.<br>
<br>
"@@.npc_barista;But, like, you didn't do anything!@@" <<=setup.getNpcName("npc_barista","nickname")>> shouts back with exaggerated puzzlement.<br>
<br>
You all laugh once again at the meme enactment, <<=setup.getNpcName("npc_technician","first")>> the happiest of all as she basks a little longer in friendship, freedom... and nerdy references.<br>
<br>
"@@.npc_technician;Okay, so... as much fun as this is... it turns out that being evil is EXHAUSTING... and I need some rest.@@"<br>
<br>
You all come in for a parting hug and then go your separate ways, waving <<=setup.getNpcName("npc_technician","first")>> good-night.<br>
<br>
[<<moveTo "room_student_quarter" "Head out." 300>>]
</div>/*#
#desc: call guard root
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() < 8 || $now.getUTCHours() > 22 || $now.getUTCDay() >= 0 && $now.getUTCDay() <= 5 && $now.getUTCHours() < 17>>
You call up <<=setup.getNpcName("npc_rpg_warlock","first")>>, but it goes straight to voicemail with a message that she's either asleep, or in a shielded lab where she can't answer her phone.
<<elseif $npc_technician.flags.evil == 1>>
You call up <<=setup.getNpcName("npc_rpg_warlock","first")>> and, after you introduce yourself, she puts you on speaker.<br>
<br>
"@@.npc_rpg_warlock;Hey, so... what's up? <<=setup.getNpcName("npc_maid","first")>> said you have ideas for getting the old <<=setup.getNpcName("npc_technician","first")>> back? Whatever it is, <<=setup.getNpcName("npc_rpg_dude","first")>> and I are here to help.@@"<br>
<br>
[<<moveTo "event_technician_rescue_friend_assist_2_warlock_1" 'Discuss the situation with <<=setup.getNpcName("npc_technician","first")>>.' 120>>]
<<else>>
You consider calling <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>>, but can't think of anything to talk about.
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>>/*#
#desc: rpg_warlock and rpg_dude offer help
#status: RELEASED 0.9.1.0
#ignore_spell: gatcha
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<addEvent "technician_rescue_warlock_deliver">>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed('event_technician_rescue_friend_assist_2_barista_1_watch_1')>>
You explain your findings about <<=ps(setup.getNpcName("npc_technician","first"))>> apparent brainwashing, and how you're pretty sure you could get through to her... if you could only do something to snap her out of her programming.<br>
<br>
"@@.npc_rpg_warlock;Hmm... so I think I have an idea... I mean, this is <<=setup.getNpcName("npc_technician","first")>>, right? So we want something that has meaning to her, preferably on multiple levels.@@"<br>
<br>
"@@.npc_rpg_dude;The pen!@@" <<=setup.getNpcName("npc_rpg_dude","first")>> interjects excitedly, leaving you little choice but to wait for an explanation.<br>
<br>
"@@.npc_rpg_warlock;Exactly! So, you see the first time we met <<=setup.getNpcName("npc_technician","first")>> was at an arcade and, well, it sounds a bit cheesy, I guess, but she was playing a gatcha machine and it coughed up a double prize, and she shared the bounty with us. A bit corny, I know... but we still have our pen and that little throwback reminder could be just the trick to give you an opening to get through to her. We'll bring it to the next game, see you then!@@"<br>
<br>
"@@.npc_rpg_dude;And then hopefully see <<=setup.getNpcName("npc_technician","first")>> after... both to have our friend back and, well... this killer DM stuff is giving me carpal tunnel from rolling up all these new characters!@@"<br>
<br>
You all laugh at <<his npc_rpg_dude>> attempt to lighten the mood a bit in the otherwise serious situation before they wish you luck and end the call.
<<else>>
You realise that you don't actually have a plan... or even a clear idea of what exactly turned <<=setup.getNpcName("npc_technician","first")>> evil in the first place.<br>
<br>
<<printThought "Given Social Interaction Service Syndicate Inc... it could be any of a number of things... brainwashing, drugs, cybernetics, mind control... all of the above...">><br>
<br>
You try brainstorming for a bit, but without a clearer idea of what's the source of <<=ps(setup.getNpcName("npc_technician","first"))>> recent behaviour undoing it is a bit of a fools errand.<br>
<br>
"@@.npc_rpg_warlock;Well if you come up with something, let us know.@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> replies after you confess you aren't sure how to proceed.<br>
<br>
"@@.npc_rpg_dude;Yeah. Figure out a plan and we'll be there to help.@@" <<=setup.getNpcName("npc_rpg_dude","first")>> chimes in before they end the call.<br>
<br>
<<if setup.checkItemOwned("sailor_moon_crystal")>>
<<printThought "I should really look at that disc <<=setup.getNpcName('npc_barista','nickname')>> gave me.">>
<<else>>
<<printThought "<<=setup.getNpcName('npc_barista','nickname')>> has been at the company even longer than me, maybe she'd have an idea?">>
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: neutral rescue: intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions = {
"order" : false,
"beg" : false
}>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Hey Adorable...@@" <<=setup.getNpcName("npc_technician","first")>> says with a grin, sprawling out across her chair like a cat as she grins at you. "@@.npc_technician;Tell me, what did you stick around for?@@"<br>
<br>
<<include "technicianNeutralRescueActions">>
</div><<if $scene.actions.order>>
[@@.link_locked;You already tried ordering <<=setup.getNpcName("npc_technician","first")>> to stop being evil.@@]<br>
<<else>>
[<<moveTo "event_technician_rescue_neut_2" "Tell her to snap out of it." 180 "<<set $scene.action='order'>>">>]<br>
<</if>>
<<if $scene.actions.beg>>
[@@.link_locked;You already tried begging <<=setup.getNpcName("npc_technician","first")>> to stop being evil.@@]<br>
<<else>>
[<<moveTo "event_technician_rescue_neut_2" "Beg her to come back to her old self." 180 "<<set $scene.action='beg'>>">>]
<</if>>
[<<moveTo "event_technician_rescue_neut_2" "Say you're sorry." 180 "<<set $scene.action='sorry'>>">>]
[<<moveTo "event_technician_rescue_neut_2" "Give up and leave." 180 "<<set $scene.action='leave'>>">>]/*#
#desc: neutral rescue: apologise
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions[$scene.action] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'order'>>
You look your girlfriend in the eye and tell her to. "@@.pc;Snap out of it!@@"<br>
<br>
"@@.npc_technician;Hah! Snap out of it? Do you have any idea how much better my life is now? I make more money, get more respect, and if some brain dead user comes in asking for yet another password reset? Why, I can punish them like they deserve! Snap out of it, pff, as if!@@"<br>
<br>
<<include "technicianNeutralRescueActions">>
<<case 'beg'>>
You beg <<=setup.getNpcName("npc_technician","first")>> to stop being evil, to go back to how things were.<br>
<br>
"@@.npc_technician;You know how some people are cute when they beg? Sorry to say m'dear... you aren't one of them... you just like kind of pathetic. Nah, my new life is great, power, money... what more could a lady want?@@"<br>
<br>
<<include "technicianNeutralRescueActions">>
<<case 'sorry'>>
You sigh and softly whisper "@@.pc;I'm sorry.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> pauses, her expression shifting from amusement to anger. "@@.npc_technician;Sorry? Do you think some measly apology is sufficient? After your betrayal? After what you've put me through?@@"<br>
<br>
[<<moveTo "event_technician_rescue_neut_3" "At least she's talking... that's a start, right?" 180>>]
<<case 'leave'>>
Your shoulders slump and you wish <<=setup.getNpcName("npc_technician","first")>> good-night.<br>
<br>
"@@.npc_technician;Giving up so soon? That's okay, you never had a chance anyway.@@"<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 300>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: neutral rescue: she rants at you
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> shifts from her casual lounging to sitting up and leaning forward as she rants at you.<br>
<br>
"@@.npc_technician;Do you know what happened to me? After you got caught doing... whatever it was you were doing? The hammer fell on us, not you! You left me!@@"<br>
<br>
You try to explain that you got caught too, but she's hardly listening as she continues on.<br>
<br>
"@@.npc_technician;Then why are you sitting in front of me, same as you ever were? You were already part of the upper floor craziness, all I did was be encouraging and what did you do? Go off on some crazy mission and damn the consequences! And then...@@" She silently fumes before suddenly bouncing to her feet.<br>
<br>
"@@.npc_technician;You never protected me! Not in any way that would put you on <<=ps(setup.getNpcName("npc_boss","formal"))>> bad side! Who do you think took the fall for it all? It was me, ripped away from my friends, retrained... do you know how many meetings I have to attend now?! And now, what... you want my help, again?@@"<br>
<br>
[<<moveTo "event_technician_rescue_neut_4" "Working together is the only way to foil the company..." 180>>]
</div>/*#
#desc: neutral rescue: work together offer
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Together? Win? Ignoring that I'm doing JUST FINE... why would I want you to win? After all I did for you, only to be left as collateral damage for your fool quest?@@"<br>
<br>
You try to interject that you would go back and protector her if you could... but she steamrolls over you.<br>
<br>
"@@.npc_technician;I don't care! I won't let you win. I'd rather see the whole world end than let that happen!@@"<br>
<br>
[<<moveTo "event_technician_rescue_neut_5" "But if you team up..." 180>>]
</div>/*#
#desc: neutral rescue: remind her of friends
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> is catching her breath and you finally see an opening, reminding her of way back at the beginning, how she was there for you after you lost your job.<br>
<br>
"@@.pc;You look out for me, and I look out for you. Nothing really bad can happen as long as we have each other.@@"<br>
<br>
She falters for an instant, uncertainty creeping in for the first time.<br>
<br>
"@@.npc_technician;But... you disappeared, and then they came for me... what happened to you? Why weren't you there for me?@@"<br>
<br>
[<<moveTo "event_technician_rescue_neut_6" "I'm here now." 180>>]
</div>/*#
#desc: neutral rescue: here for her
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
You look <<=setup.getNpcName("npc_technician","first")>> in the eye and tell her that you're here, now — that even with what she's done, what she's been forced into... you're still here, her friends are still here, and together...<br>
<br>
Her anger has melted, replaced by fear. "@@.npc_technician;My friends... oh Goddess, what have I done? I—@@"<br>
<br>
You sense that it's time to speak with more than words.<br>
<br>
[<<moveTo "event_technician_rescue_neut_7" "Kiss her." 180>>]
</div>/*#
#desc: neutral rescue: kiss her/success
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.evil = 2>>
<<include "checkRescueFriendsTask">>
<<deleteTask "technician_roleplay_evil_repeat">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_1' _tmpDate>>
<<applyStress -50>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
You lunge forward, silencing her babbling with a kiss as you pull her into your arms.<br>
<br>
She stiffens for a moment, and then melts, returning your embrace and kissing you back hungrily, the spell broken.<br>
<br>
"@@.npc_technician;Oh, <<=$player.first_name>>... I missed you so much. I could feel that something was wrong but I couldn't tell what... everything was so dark... but you, you cared... you came back for me...@@"<br>
<br>
You smile, and remind her again that you'll always be there, and that together you'll triumph over , the company, and anything else.<br>
<br>
"@@.pc;Nothing really bad can happen as long as we have each other.@@"<br>
<br>
She smiles, wiping a tear from her eye as she pulls you back in .<br>
<br>
[<<moveTo "event_technician_rescue_neut_8" "Victory cuddles." 3600>>]
</div>/*#
#desc: neutral rescue: success/go home
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
You'd happily stay in your newly restored girlfriends arms forever... but eventually she points out that things aren't over.<br>
<br>
"@@.npc_technician;We still have an evil corporation to take down... but I'm back on the team, ready to be your inside agent... just let me know what I need to do and I'll be there for you. Always.@@"<br>
<br>
"@@.pc;Always.@@" You reply in turn, sharing another long, lingering kiss before heading on your way, filled with fresh motivation to take down the company so you and your girlfriend can be together openly and forever once again.<br>
<br>
[<<moveTo "room_student_quarter" "Time to go." 300>>]
</div>/*#
#desc: sub rescue: intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 13 'little' $SEEN_STRANGER>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
You <<=setup.getNpcName("npc_technician","first")>> leans back imperiously in her chair.<br>
<br>
"@@.npc_technician;Welcome! I had been expecting you to stay after... I'm looking forward to completing your training. In time you will call ME Mistress.@@"<br>
<br>
[<<moveTo "event_technician_rescue_sub_fail" "Yes, Mistress." 7200>>]<br>
[<<moveTo "event_technician_rescue_sub_2" "No! You'll never submit to the dork side!" 180>>]
</div>/*#
#desc: sub rescue: intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 'cum' 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;All too easy,@@" she states with an echoing chuckle as you fall to your knees.<br>
<br>
"@@.npc_technician;Give in to the dark side...@@" She whispers as she proceeds to <<if $fetish.get_raped>>rape<<else>>pound<</if>> your throat, an evil grin on her face as she holds your hair and uses you hard and fast
<<if $fetish.cum>>
culminating in feeding you the massive load that is
<<else>>
and it isn't long before she climaxes directly into your belly,
<</if>>
the culmination of the hours <<=setup.getNpcName("npc_barista","nickname")>> spent between <<=ps(setup.getNpcName("npc_technician","first"))>> legs during game.<br>
<br>
With a cruel sneer <<=setup.getNpcName("npc_technician","first")>> holds you in place until you almost pass out, only retreating from your throat when she eventually starts to soften, finishing off by wiping herself on your cheeks as if marking her territory.<br>
<br>
"@@.npc_technician;See? You belong on your knees. The dark side is just better, and we even have cookies!@@"<br>
<br>
With a smirk that almost reminds you of the "old" <<=setup.getNpcName("npc_technician","first")>> she dashes over to the kitchenette and pops open a cookie jar, chomping down on one of her own and then <<if $fetish.cum>>squeezing out a final dribble of <<getWordCum>> onto one<<else>>grabbing another for you<</if>>.<br>
<br>
"@@.npc_technician;Now be a good slave and beg for your treat.@@" She commands as you submissively nod and let her feed you the <<if $fetish.cum>>cum-tinged <</if>>snack.<br>
<br>
If you thought being "used" was your only job you turn out to be quite mistaken, as <<=setup.getNpcName("npc_technician","first")>> orders you around the apartment to finish picking up after game, only sending you on your way when you have fully cleaned her flat and finished off with a long heel worship that, somewhat surprisingly, never sees her remove her shoes to let you actually massage her feet.<br>
<br>
Tired, submissive, and a bit discouraged by your failure, you finally head home.<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 7200>>]
</div>/*#
#desc: sub rescue: contradict
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
"@@.pc;You're gravely mistaken,@@" you state in response to <<=setup.getNpcName("npc_technician","first")>> dark threat, but she merely chuckles in amusement.<br>
<br>
"@@.npc_technician;Foolish! You think you have a chance against me? You underestimate the power of the Dark Side. There is no escape, my young apprentice. You will submit to me completely, as will your friends. Everything that has transpired has done so according to my design. Come, <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl, <<case 'male'>>boy, <<default>><</switch>>the so-called Tech Wizard you knew is no more, your only choice is surrender and obedience, stop resisting, it is futile...@@"<br>
<br>
[<<moveTo "event_technician_rescue_sub_fail" "Yes, Mistress." 7200>>]<br>
[<<moveTo "event_technician_rescue_sub_3" "Keep talking back." 180>>]
</div>/*#
#desc: sub rescue: faith in friend
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
"@@.pc;Your overconfidence is your weakness.@@" You reply — this time <<=setup.getNpcName('npc_technician', 'first')>> bristles in annoyance.<br>
<br>
"@@.npc_technician;Your faith in your friends is yours. Everything that has transpired has done so according to <<=ps(setup.getNpcName('npc_boss', 'formal'))>>. Your rebellion, your friends... you walked right into the trap.. And have so again.@@"<br>
<br>
She rises to her feet, her company-issue chastity device retreating to form a thick cock-ring around her very hard, dripping <<getWordPenis false>>.<br>
<br>
"@@.npc_technician;As you can see, my young apprentice, you have failed. Now witness the power of this fully armed and operational battle station... after all, I am defenceless. Suck me down and your journey towards the dark side will be complete.@@"<br>
<br>
[<<moveTo "event_technician_rescue_sub_fail" "Surrender." 7200>>]<br>
[<<moveTo "event_technician_rescue_sub_4" "No! This is wrong, this isn't who she is!" 180>>]
</div>/*#
#desc: sub rescue: start to turn
#status: RELEASED 0.9.1.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
You resist the allure of <<=ps(setup.getNpcName('npc_technician', 'first'))>> beautiful <<getWordPenis false>>. "@@.pc;Search your feelings. You can't do this. I feel the conflict within you. Let go of your anger, accept your place at my feet...@@"<br>
<br>
She's looking a bit nervous and you take a step closer.<br>
<br>
"@@.npc_technician;No, it is too late. The <<=setup.getNpcName('npc_boss', 'formal')>> will show you the true nature of subservience. <<He npc_boss>> is our <<master npc_boss>> now.@@"<br>
<br>
You can sense the hesitation in her voice as you lean in, tenderly stroking her face as you whisper that you are her <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... and wouldn't she rather submit than present this facade?<br>
<br>
"@@.npc_technician;N-no... you underestimate the power of the dark side. If you will not submit willingly, then you will meet your destiny.@@"<br>
<br>
[<<moveTo "event_technician_rescue_sub_5" "Take control." 180>>]
</div>/*#
#desc: sub rescue: suck her
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
You smile... and then slide to your knees. <<=setup.getNpcName('npc_technician', 'first')>> is somehow even harder than before as you take her in hand, pushing her back onto the couch as you take control, your lips wrapping possessively around her <<getWordPenis false>>.<br>
<br>
"@@.pc;Your thoughts betray you. I feel the submission in you...the conflict.@@"<br>
<br>
You start to suck and she shudders, but you keep her on edge.<br>
<br>
"@@.pc;I know there is good in you. The Company hasn't driven it from you fully. That is why you couldn't dominate me...@@"<br>
<br>
You continue to edge her as her resistance continues to break down. She looks longingly down at you, her voice soft and submissive.<br>
<br>
"@@.npc_technician;Please, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...@@" She whispers.<br>
<br>
[<<moveTo "event_technician_rescue_sub_6" "Reward your slave." 180>>]
</div>/*#
#desc: sub rescue: win
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.evil = 2>>
<<include "checkRescueFriendsTask">>
<<deleteTask "technician_roleplay_evil_repeat">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_1' _tmpDate>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil_dom")>>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName('npc_technician', 'first')>> a few more moments to twist in desperation... and then you finish her off with a flourish, her guttural cry of orgasm the final purge of artificially induced hyper-dominance.<br>
<br>
Barely has her <<getWordPenis false>> stopped twitching when she looks down at you with wide-eyed shock, immediately falling to the floor and bowing before you.<br>
<br>
"@@.npc_technician;I'm so sorry! I didn't have a chance, I was on the way home and the elevator diverted to the basement and they put me through... procedures.@@"<br>
<br>
She glances down at her rack "@@.npc_technician;I don't know what it was but afterwards all I felt was anger... anger and loyalty to the company but you... you saw through that...@@" She smiles up at you "@@.npc_technician;I love you.@@"<br>
<br>
"@@.pc;I know...@@" You reply, pulling her in for a lingering kiss as the two of you collapse onto the couch together.<br>
<br>
[<<moveTo "event_technician_rescue_sub_7" "Cuddles!" 7200>>]
</div>/*#
#desc: sub rescue: win
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 20>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> slips out of her "Domme-y" outfit — and everything else — with a grin before asking if there's anything she can do to serve you... an offer you reply to by pulling her in for more snuggles. The two of you enjoy just being pressed against one another as you make plans for how she can keep things secret from the company, with an eye towards the two of you working together to take your proper revenge.<br>
<br>
"@@.npc_technician;I'll do whatever I can to help, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, but it definitely seems like we need to gather as many allies as we can... and a better plan, methinks. I shudder to think of what would happen if we failed.@@"<br>
<br>
You pull her closer in comfort as the memory of what the company turned her into flashes over her face.<br>
<br>
[<<moveTo "room_student_quarter" "Eventually, it's time for you to head for home." 7200>>]
</div>/*#
#desc: evil rpg session tardy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
You walk into the room <<if $now.getUTCMinutes() > 1>>late <</if>>for game and <<=setup.getNpcName("npc_technician","first")>> scoffs in annoyance. "@@.npc_technician;Well, well, look who FINALLY graced us with <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>their<</switch>> presence. I am volunteering my place and put a lot of effort into being prepared, I expect the rest of you to do the same!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> glares through you you as the rest of the group shifts nervously. "@@.npc_technician;Service Wench!@@" <<=setup.getNpcName("npc_technician","first")>> calls out, "@@.npc_technician;Fetch me the instrument of punishment!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> grits her teeth at the command... but obeys, rising to her feet and fetching a very large paddle, its cricket-bat size made even more intimidating by the addition of spikes and speed holes. <<=setup.getNpcName("npc_technician","first")>> grins in satisfaction as <<=setup.getNpcName("npc_maid","first")>> and then nods, the maid dropping to a knee to present the paddle like a sword.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> snatches up the paddle and swings it experimentally as she resumes her monologue. "@@.npc_technician;Yes, punishment is in order... but a failure of one is a failure of all, yes? The players allied in opposition against I, the all-powerful Dungeon Mistress, and so, just as I expect you to keep one another in line... all must see their sin cleansed in pain...@@" <<=setup.getNpcName("npc_technician","first")>> grins cruelly as she rises to her feet, pointing the paddle at you as if initiating a duel. "@@.npc_technician;As the last to arrive ye shall receive the first punishment... present thine ass or be banished from mine sight...@@"<br>
<br>
[<<moveTo "event_evil_tech_tardy_2" "Bend over..." 300 "<<set $scene.flee=false>>">>]<br>
[<<moveTo "event_evil_tech_tardy_2" "Flee!" 600 "<<set $scene.flee=true>>">>]
</div>/*#
#desc: evil rpg session, punish you
#status: RELEASED 0.9.3.0
#ignore_spell: terminatrix
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.flee>>
<<set $currentcall = true>>
<<applyStress 20>>
<<include "addEvilRPGTask">>
<<else>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if $scene.flee>>
<<set $player.location to "Phonecall">>
<<else>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.flee>>
<<createAdvBGR "./images/locations/phonecall.png">>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.flee>>
Intimidated by your mirror-universe evil friend you dash out of the apartment at a dead sprint, half expecting to look up and see <<=setup.getNpcName("npc_technician","first")>> stalking towards you like the terminatrix as you mash the button and then resume your sprint, not stopping running until you're several blocks away and you get a text message.<br>
<br>
"@@.npc_rpg_warlock;Thanks for sticking around back there... <<=setup.getNpcName("npc_technician","first")>> really took it out on the rest of us... but said you're invited back next week...@@"<br>
<br>
You feel guilty for abandoning your friends... but even more motivated to do something about <<=ps(setup.getNpcName("npc_technician","first"))>> evil reign of terror.<br>
<br>
[<<moveTo "room_citymap" "Put your phone away." 180 "<<set $currentcall = false>>">>]
<<else>>
You bend over and present your rear and <<=setup.getNpcName("npc_technician","first")>> wastes no time in bringing the paddle to bear, the hard THWACK echoing in the small apartment as pain bursts across your rear. You gasp, your friends wincing at the potency of the blow.<br>
<br>
"@@.npc_technician;Well don't just stare! Count! Count the measure of this failure... and reflect on your own part in it!@@" <<=setup.getNpcName("npc_technician","first")>> calls out to a mumble-shouted chorus of "@@.npc_rpg_warlock;ONE!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> snorts in satisfaction and resumes laying into you with the paddle, the count ratcheting up as the tears run down your face and <<=setup.getNpcName("npc_technician","first")>> continues to lecture. "@@.npc_technician;This is what happens when you're late to game! Punishment for lack of punctuality! A pain in YOUR rear to remind you of the pain in mine that you produce when you screw with my plans!@@"<br>
<br>
By the time the count hits "@@.npc_rpg_warlock;TEN!@@" <<=setup.getNpcName("npc_technician","first")>> is breathing a little heavy, but she rounds things off to a full dozen before taking a breather and calling out "@@.npc_technician;NEXT!@@"<br>
<br>
[<<moveTo "event_evil_tech_tardy_3" "Continue." 1200>>]
<</if>>
</div>/*#
#desc: evil rpg session tardy, punish others
#status: RELEASED 0.9.3.0
#ignore_spell: gmpc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
You wince and hobble out of the way, trying to find a position that's the least painful as <<=setup.getNpcName("npc_rpg_warlock","first")>> surprises by pushing her <<boy npc_rpg_dude>> back into the couch to rush into position to take the second punishment.<br>
<br>
"@@.npc_technician;You... THIS@@" THWACK "@@.npc_technician;Isn't just for your compatriot's failure, but also for your corrupting influence! For your sneaky bypassing of my meticulously planned encounters!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> punishment is less drawn out than your own... or maybe that's just <<=setup.getNpcName("npc_technician","first")>> pacing herself with only five THWACKS of the paddle before it's <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> turn and the pairing of punishment with recrimination over past game-play slights continues.<br>
<br>
"@@.npc_technician;And THAT!@@" THWACK, "@@.npc_technician;is for failing to appreciate my BRILLIANT puzzle and rolling too well!@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> hobbles back to <<his npc_rpg_dude>> girlfriend as <<=setup.getNpcName("npc_maid","first")>>... perhaps somewhat fearful of showing weakness, takes her turn.<br>
<br>
"@@.npc_technician;And THAT!@@" THWACK, "@@.npc_technician;is for disrespecting my GMPC and diverting from my perfectly plotted railroad!@@"<br>
<br>
Finally, it's <<=setup.getNpcName("npc_barista","nickname")>> turn as even her constantly chipper bimbo <<if $npc_barista.flags.rescue.cure == "good">>facade <</if>>slips as she gets into position for her turn under the paddle.<br>
<br>
"@@.npc_technician;And THAT!@@" THWACK, "@@.npc_technician;is for using statistics to min/max combat, and peeking behind the DM screen while you were blowing me!@@"<br>
<br>
At this point everyone is chagrined and attempting to gingerly find a way to sit. <<=ps(setup.getNpcName("npc_technician","first"))>> gaze locks back on you as she pants with exertion. "@@.npc_technician;And now to deliver a final reminder of the price of failure... get back in position!@@"<br>
<br>
[<<moveTo "event_evil_tech_tardy_4" "Bend over." 300>>]
</div>/*#
#desc: evil rpg session tardy, re-punish you
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 17 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
At this point just wanting to move on to the comparatively-less torturous activity of game you hurry into position and brace, hoping <<=ps(setup.getNpcName("npc_technician","first"))>> fatigue will mean it won't be quite as bad this time.<br>
<br>
Dashing your hopes <<=setup.getNpcName("npc_technician","first")>> instead twists the knife further, as she summons <<=setup.getNpcName("npc_rpg_warlock","first")>> to "@@.npc_technician;Remind your fellow player that punctuality is the start of a proper play experience!@@"<br>
<br>
You can tell that <<=setup.getNpcName("npc_rpg_warlock","first")>> is trying to be gentle with you... but <<=setup.getNpcName("npc_technician","first")>> quickly admonishes the first blow as "@@.npc_technician;What was that? You barely swung! This is a PUNISHMENT, not a massage! Try again, I want three PROPER hits... and then it's your <<if $npc_rpg_dude.fem>>lady's<<else>>boy-toy's<</if>> turn!@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> does not make the mistake of trying to take it easy on you, and you do your best to hold back your tears to make things less painful for your friends as each of them in turn takes a few whacks at your red and throbbing rear.<br>
<br>
[<<moveTo "event_evil_tech_tardy_5" "Is it finally over?" 300>>]
</div>/*#
#desc: evil rpg session tardy, finish
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 17 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Lair of the Tech Warlock'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_evil")>>
<div id="invframe" class="scrolltext">
Your punishment is finished with a final hand-delivered spank from <<=setup.getNpcName("npc_technician","first")>> that lights up your aching bottom you are finally permitted to, carefully, take your seat.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> whistles merrily as she arranges her notes and you share a silent glance with the other members confirming that you need to do something about your dark friend.<br>
<br>
<<if State.hasPlayed("event_rpg_second_evil_4")>>
[<<moveTo "event_rpg_evil_1" "Time to game..." 180>>]
<<else>>
[<<moveTo "event_rpg_second_evil_1" "Time to game..." 180>>]
<</if>>
</div>/*#
#desc: visit evil technician
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.variant = ["porn", "password", "ram", "", "", "", ""].random()>>
<<set $scene.visitTech = true>>
<</if>>
<<set $player.location = "Lair of the Tech Warlock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/it_lair.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
Prepared this time, you enter the evil <<=ps(setup.getNpcName("npc_technician","custom", "Tech Warlock"))>> dark lair
<<switch $scene.variant>>
<<case "porn">>
to find her sitting back with her feet on the back of a kneeling employee — her poor victim strenuously bound into the footstool position complete with gag, plug, and a VR mask.<br>
<br>
She greets you with a grin. "@@.npc_technician;Someone thought they could load porn onto their work machine and I wouldn't know... I decided to replace it with something more appropriate. A few more hours as my footstool watching <<if $fetish.sissy && !$options.fem>>sissy<<else>>bimbofication<</if>> videos should fix them up... and maybe set them off on a new career! <<if $options.fem>>This is much more fun than dealing with stupid tech illiterates<<else>>Smashing eggs under my heels is so much simpler than subtly cracking them<</if>>.@@"
<<case "password">>
where she is in the middle of flogging some poor employee.<br>
<br>
"@@.npc_technician;The safeword is your password!@@" She shouts as she cracks her whip across her victim's back. "@@.npc_technician;I am sick of giving you resets, so we are going to keep at this until you can remember a properly secure 64 character one...@@"
<<case "ram">>
where she has an employee bent over her desk, <<=ps(setup.getNpcName("npc_technician","first"))>> chastity device retracted as she fucks them hard and deep.
"@@.npc_technician;oh, your workstation needs a RAM upgrade? well first I'm going to ram THIS,@@" she punctuates her word by slamming balls deep with enough force the smack of flesh on flesh echoes in the room, "@@.npc_technician;in each of your holes to make sure you have enough capacity for the upgrade.@@"
<<default>>
headphones on, she appears deep in "coding zone" and a single icy glare sends you hurrying to retreat from the room.
<</switch>>
<br><br>
You gulp, Evil <<=ps(setup.getNpcName("npc_technician","first"))>> new attitude is certainly intimidating, but there has to be a way to get her back...<br>
<br>
<<printThought "Taking her on here, surrounded by the evil of the company... it's too much. I need to confront her in more familiar territory at her home...">><br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: technician tells you about hacking findings
#status: FINISHED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
There's a lull in the conversation and <<=setup.getNpcName("npc_technician","first")>> looks around for a moment before leaning in close.<br>
<br>
"@@.npc_technician;So, uh... you remember when you called me up to your manager's office to fix her computer?@@"<br>
<br>
You nod and <<=setup.getNpcName("npc_technician","first")>> bites her lip. "@@.npc_technician;Well... I guess first off, thanks, the email your boss sent my manager was REALLY nice and is probably enough on its own to give me a "greatly exceeds" at my next review but... well, what I wanted to tell you was that, and I know I shouldn't have but... I maybe sort of copied a couple files off your manager's machine.@@"<br>
<br>
It's your turn to look around the cafe nervously as your mind spins with the restrictions on you talking about your job outside of work. "@@.npc_technician;Don't worry, we're safe here — there's enough combined IT and Security knowledge in this cafe to panel a convention... or host one, if it's a busy day. Combine that with wanting to provide a totally safe place for its patrons and... this place is more hardened than a secret military base. So keep that in mind when I show you what I found — you're safe here but anywhere else...@@"<br>
<br>
She pulls out her phone and taps a few times before turning the screen towards you...<br>
<br>
[<<moveTo "event_technician_hacking_tell_2" "Watch what she found." 180>>]
</div>/*#
#desc: technician shows you about hacking findings
#status: FINISHED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
The video plays showing someone asleep in bed... a couple moments later and you realise that it's YOU asleep in bed,
<<if $player.timebased.milking.times_sleep_milked > 0>>
bound securely in your nocturnal milking apparatus.
<<elseif setup.hasUpgrade($bed, 'bed_bondage_gear') || setup.hasUpgrade($bed, 'bed_bondage_gear_2')>>
bound to the bed as you securely slumber.
<<else>>
tossing and turning occasionally in fitful slumber.
<</if>>
<br><br>
Your jaw drops but
<<if $player.flags.gloryhole.blowjob > 0>>
<<=setup.getNpcName("npc_technician","first")>> flicks her finger to the next video, a recording of you hard at work in the Usual Place gloryhole, on your knees and sucking with abandon.<br>
<br>
<</if>>
<<=setup.getNpcName("npc_technician","first")>> flicks through a couple more clips showing you at home, at your therapist, and at work in similarly "compromised" positions before closing her phone and returning it to her pocket.<br>
<br>
"@@.npc_technician;So... yeah. This is just a sample of what was saved to her computer. If I don't miss my guess you're under near constant surveillance with the exception of here<<if $npc_technician.relationship.dinner_dates > 0 || $npc_technician.flags.rpg_campaign.session > 0>> and my place — I consulted on the security system here and picked up a few tips, to boot<</if>>. I'm sorry I spied and, like... no judgement as to you having fun — some of those video clips were fucking SCORCHING hot but, like... what's going on at work? Are you okay?@@"<br>
<br>
[<<moveTo "event_technician_hacking_tell_3" "Tell her the truth." 180 "<<set $scene.action='truth'>>">>]<br>
[<<moveTo "event_technician_hacking_tell_3" "Tell her the truth... that everything is fine." 180 "<<set $scene.action='fine'>>">>]<br>
[<<moveTo "event_technician_hacking_tell_3" "Say she should forget about the whole thing." 180 "<<set $scene.action='forget'>>">>]
</div>/*#
#desc: technician shows you about hacking findings
#status: FINISHED 0.8.6.0
#ignore_spell: femmed
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'truth' 'fine'>>
<<addNpcTheme 'npc_technician' 'work' 'theme_technician_work_company'
0
'event_technician_theme_company_1'
true
>>
<<set $npc_technician.flags.fixed_manager_computer = 3>>
<<case 'forget'>>
<<set $npc_technician.flags.fixed_manager_computer = 2>>
<</switch>>
<<include "checkTechnicianTruth">>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'truth'>>
You sigh and explain the whole thing — your "contract" the way your <<if $npc_manager.stage > 1>><<=setup.getNpcName("npc_manager","title")>><<else>>manager<</if>> keeps escalating things... you shake your head that you remark that you aren't exactly surprised at the surveillance... though you have a feeling it might be more than just <<=setup.getNpcName("npc_manager","formal")>> watching on.<br>
<br>
"@@.npc_technician;Wow, that's... I mean, I had a feeling things were a bit odd upstairs<<if $npc_technician.flags.rpg_campaign.session > 0>> I mean, you've met <<=setup.getNpcName("npc_barista","nickname")>>, after all<<else>>, but I didn't have any concrete proof<</if>>... but this...@@" She shakes her head. "@@.npc_technician;This is like something out of a thriller novel... crossed with a porno... not to make light of things, but if this was a story I'd, like... totally read it...@@" She shakes her head and reaches across the table to take your hand.<br>
<br>
"@@.npc_technician;Look, I can't really begin to understand what this is like for you... and it sounds like you're pretty trapped but... if I can do anything to help, well, I'll do my best. Until then, well, I hope knowing you have me on your side makes enduring this craziness a little easier, hmm?@@"
<<case 'fine'>>
You smile and brush things off, enthusiastically explaining that while the company, as a whole may not be exactly the most ethical entity in the world — though, really, what company is? As for your new life... well, you love everything about it, and if <<=setup.getNpcName("npc_manager","formal")>> wants to keep a bit of an extra eye on you that only turns you on more!<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> smirks. "@@.npc_technician;Wow... I mean, sure, I may have fantasised about something like that, totally controlled by the corporation, the only thing harder than the degree to which I was force-femmed the passion with which my manager plowed me into the mattress...@@" She blushes, "@@.npc_technician;sorry... little carried away there. The reality of something like that is... well, sometimes fantasies should stay fantasies... but thats' me, and if you like your life, well? I'm happy for you... and I hope you trust me enough to let me know if anything changes, and you need help, right? I mean, I think I've already proven that a bit of Tech Wizard magic can be very potent!@@"
<<case 'forget'>>
You brush things off and tell <<=setup.getNpcName("npc_technician","first")>> that she should delete the videos and forget about everything she saw.<br>
<br>
She hesitates for a moment as she looks at you with concern before slowly nodding. "@@.npc_technician;Okay... if that's what you want. If you ever change your mind, though... well, I'll be here for you, alright?@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You nod and <<=setup.getNpcName("npc_technician","first")>> quietly shifts topics to more normal things.<br>
<br>
[<<moveTo "event_technician_cafe_1_4" "Continue." 600>>]
</div>/*#
#desc: talk about playing hotties with technician
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_technician', 'first')>> reminisce about playing HOTTIES together, recalling victories — and defeats — is almost as fun as playing was, and you resolve to get in another game session soon.<br>
<br>
As you finish up she makes a final note.
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') || $npc_technician.flags.rpg_campaign.session > 0 || !($npc_technician.flags.sawyouinfemaleclothes && (($player.sec_style.body.name != "") && ($player.sec_style.clothing.female != "")))>>
"@@.npc_technician;Yowza! Now that was some good times!@@"
<<else>>
"@@.npc_technician;You know, we should really talk about you joining my RPG group, you're really fun to play with online and trust me when I say in person gaming is even better!@@"<br>
<br>
You blush slightly at the offer and say you'll think about it, her intense enthusiasm for RPGs is still a bit intimidating.
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: choose initial hotties character
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
Welcoming you as a new "HOTTIE" (a word that has you squirm a little in your chair), the game gives you your first choice. Apparently, though there are many characters available to play as, you only unlock one to start with, choosing one of three "paths" named for the starting character.<br>
<br>
First there is the Path of Honour. Honour is technically a slender, sexy girl in a skin-tight plugsuit, but she marches into battle ensconced in a heavy set of power armour that retains an obvious femininity while remaining large and intimidating. The bio says she invented the suit herself for protection and to "exert her control." This is obviously the "tanking" option.<br>
<br>
Next is the Path of Temperance. In this case your avatar will be a ninja... well, ACTUALLY you'll be playing as an over-endowed bombshell in a skin-tight outfit and heels wielding a pair of swords, but she's styled as a ninja. According to the character bio Temperance is a bioengineered clone meant to be the perfect balance of speed, stealth, precision and power. This looks to be the "DPS" choice.<br>
<br>
The final option is the Path of Chastity. Chastity is a sexy "pretty girl" priestess dressed in a short, skimpy robe who wields the power of magic. Clicking on the bio you learn that Chastity wasn't always a girl; it seems that magical abilities in boys are quite rare in-universe, however, and the best school of the arcane was an all-girls one. Opting for feminine attire to blend in "Chas" or Chastity as he came to be nicknamed, found himself drawn to a traditionally all-female priesthood of healers, proudly embracing their feminine garb and more as she now tries to heal the ills of the world. This rounds things out as the support/healer role.<br>
<br>
[<<moveTo "room_play_games_hotties_first" "Select Honour, the mech-piloting take-charge tank." 300 "<<set $player.flags.hotties_game.role = 'tank'>>">>]<<if setup.getTotalValue("dominance") == 0>><<hint $options "Without dominance you will have issues progressing with this character.">><</if>><br>
[<<moveTo "room_play_games_hotties_first" "Choose Temperance, the versatile and nimble ninja." 300 "<<set $player.flags.hotties_game.role = 'dps'>>">>]<br>
[<<moveTo "room_play_games_hotties_first" "Opt Chastity the cute and devoted healer." 300 "<<set $player.flags.hotties_game.role = 'heals'>>">>]
</div>/*#
#desc: play hotties game
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.hotties_game.times_played += 1>>
<<setThreshold 'gaming' 'hotties' 'first_play'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
"Great choice!" the game congratulates you after you have made your selection. A short intro cutscene plays that reviews the character's background after which you get a tutorial that shows you the basics of how to operate your chosen character.<br>
<br>
With that out of the way you're dumped into a lobby and soon after find yourself loading into your first game.<br>
<br>
It seems like you are in with a bunch of fellow noobs. Voicechat is barely used for coordination, only recrimination. You try to do your job but a combination of lack of any teamwork to speak of, and your own dearth of skill at the game, means you end up losing the match. Still, you had a bit of fun and with things as chaotic as they were it totally could have gone the other way.<br>
<br>
<<switch $player.flags.hotties_game.role>>
<<case 'tank'>>
<<printThought "Next time I need to focus on distracting the enemy team, if I can take most of the damage we can win even if we aren't all that coordinated. Maybe my teammates will even follow my lead!">>
<<case 'dps'>>
<<printThought "I need to get better at choosing my fights, if I'm not going to get tank support I can't stick around in firefights.">>
<<case 'heals'>>
<<printThought "I need to focus on healing the tank. I can't keep up with the whole team if they're all over the place, best to just follow the tank.">>
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
<br><br>
The score breakdown screen is a bit meaningless at this point in your skill level; you exit back to the main menu.<br>
<br>
[<<moveTo "room_livingroom" "That was fun." 60>>]
</div>/*#
#desc: play with technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.hotties_game.times_played_alex += 1>>
<<if $player.flags.hotties_game.times_played_alex == 1>>
<<applyExperience 'gaming' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'smart' 3 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<addNpcTheme 'npc_technician' 'gaming' 'theme_technician_gaming_0'
0
'event_technician_hotties_1'
false
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.hotties_game.times_played_alex == 1>>
Joining you in a private lobby, she isn't showing a proper animated avatar yet, merely a default silhouette indicating she hasn't yet selected a character.<br>
<br>
<<switch $player.flags.hotties_game.role>>
<<case 'tank'>>
"@@.npc_technician;Wow, Honour, I wouldn't have really guessed you'd be into that sort of thing, but sure, she's fun. I'll go ahead and play heals then and we can carry some noobs!@@"
<<case 'dps'>>
"@@.npc_technician;Ooo, Temperance, sexy! I'll go DPS too, but ranged to give us some more flexibility. I'll be your guardian angel and you can keep baddies from sneaking up on me.@@"
<<case 'heals'>>
"@@.npc_technician;I had a feeling you were going to choose Chastity<<if $npc_technician.flags.seen_chastity>>... and not just because of the name, lol!<<else>>.<</if>> This is gonna be fun, I'll play a tank and you can just stay at my side and keep me nice and pumped up.@@"
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
There's a brief loading swirly over <<=setup.getNpcName('npc_technician', 'first')>> and then you get your first view of her bling'd out character as she "introduces" herself.<br>
<br>
[<<moveTo "room_play_games_hotties_technician_first_1" "Check her, er, her avatar, out." 60>>]
<<else>>
You and <<=setup.getNpcName('npc_technician', 'first')>> load into the lobby. <<if $player.flags.hotties_game.character_level == 'basic'>>Your starter character looking cute, but a bit drab compared to her bling'd out glory.<<else>>Your two characters looking hot and sexy and ready to wreck some shit.<</if>><br>
<br>
<<switch $player.flags.hotties_game.character_level>>
<<case 'basic'>>
[<<moveTo "room_play_games_hotties_technician_play" "Let's play!" 600 "<<set $scene.role=$player.flags.hotties_game.role>>">>]
<<case "advanced">>
[<<moveTo "room_play_games_hotties_technician_play_choose" "Roll some pugs together." 600>>]<br>
[<<moveTo "room_play_games_hotties_technician_play_advanced_choose" "Enter the advanced queue." 600>>]<br>
<<default>>
ERROR: unknown hotties character level <<=$player.flags.hotties_game.character_level>>
<</switch>>
<</if>>
</div>/*#
#desc: see technician's avatar for the first time
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
"@@.pc;Wow@@" you state at her particle-effect enhanced intro, taking a moment to stare at her sexy avatar that waves and blows you a kiss in a greeting emote.<br>
<br>
<<switch $player.flags.hotties_game.role>>
<<case 'tank'>>
Her character certainly demonstrates the age-old truism in games where, for a female avatar, the more powerful armour is paradoxically the least concealing. Some sort of slender, dark elf type she is dressed as a priestess... of sorts. Gossamer thin fabric flows down from her hips and curls up to somehow contain her breasts, her long hair more concealing than the actual "clothing." Perched on a pair of clear crystalline high heels the most "substantial" portion of her outfit is the leather collar around her throat, a leash dangling down from the front with the end wound around her wrist.
<<case 'dps'>> /* inspired by Sera Victoria from Hellsing, uniform is mix of hotties_alex_dps hotties_alex_dps2 */
She is dressed in a military uniform, of sorts. Patent leather boots rise up past her knees with way steeper heels than could possibly be practical in combat with fishnets bridging the distance over her thighs to the bottom of her short, tight skirt. A wide belt is buckled around a slender waist while elbow gloves and a boob window round things out as she casually wields a sniper rifle longer than she is tall.
<<case 'heals'>> /* inspired by Terra from the game Paragon */
Despite wearing an almost ludicrous amount of heavy armour, her look remains unmistakably female, from a stern but friendly face to her armoured breasts and hips. Her head barely peeking out past a pair of huge shoulderpads, she wields a massive tower shield in one hand and an equally oversized mace in the other, looking ready to steamroll though anything like a literal armoured tank.
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
<br><br>
"@@.npc_technician;You like? Come on, let's get to some games!@@"<br>
<br>
[<<moveTo "room_play_games_hotties_technician_first_2" "Jump in the queue." 300>>]
</div>/*#
#desc: play with technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'gaming' 'hotties' 'play_alex'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
Sharing a final "good luck!," you and <<=setup.getNpcName('npc_technician', 'first')>> dive into a game.<br>
<br>
/% it's not possible to get past 3 skill without playing w/technician %/
<<if setup.getTotalValue("gaming") == 3>>
<<=setup.getNpcName('npc_technician', 'first')>> seems impressed with your skills, modest though they are.<br>
<br>
"@@.npc_technician;Hey, you must have done some practicing, you're doing pretty good for a newbie!@@"
<<elseif setup.getTotalValue("gaming") > 3>>
While <<=setup.getNpcName('npc_technician', 'first')>> remains better than you are, your skills are coming along and you feel like you're contributing more than being carried.<br>
<br>
"@@.npc_technician;Good job! We're developing into quite the team!@@"
<<else>>
It's obvious that <<=setup.getNpcName('npc_technician', 'first')>> is WAY better than you are, but she is nothing but encouraging.<br>
<br>
"@@.npc_technician;Just stick with me, you'll get the hang of things soon enough.@@"
<</if>>
<<switch $player.flags.hotties_game.role>>
<<case 'tank'>>
It feels a bit weird, being a tank taking instructions from their healer, but with <<=ps(setup.getNpcName('npc_technician', 'first'))>> advice, and mad healz, you manage to survive way longer than you should. Unfortunately your team's DPS isn't quite up to <<=ps(setup.getNpcName('npc_technician', 'first'))>> level so the match is eventually lost but you make a fight of it.
<<case 'dps'>>
With <<=setup.getNpcName('npc_technician', 'first')>> safely ensconced in a distant perch the two of you do some real damage to the enemy team, her coordinating from her high ground position for you to you rush in and flush enemies into her field of fire. You die quite a bit in the process but combined the two of you maintain a positive ratio. Unfortunately it isn't enough to push through a victory as your team's healer seems more interested in trying to DPS than keeping your tank on her feet.
<<case 'heals'>>
From the first jump, you and <<=setup.getNpcName('npc_technician', 'first')>> seem to mesh perfectly. She charges in, busting heads and shielding while you channel magic to make her even stronger and cancel out any damage that manages to get through her thick armour. Though you have fun, and push hard, you eventually lose the match in a nail-biter of a finish, <<=setup.getNpcName('npc_technician', 'first')>> and yourself making a valiant last stand against the full enemy team in hopes your DPS can respawn fast enough to make a comeback but, alas, it is not to be.
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
<br><br>
"@@.npc_technician;So, whadaya think?@@" She asks as you watch her "play of the game" performance.<br>
<br>
You tell her it was pretty fun, though you felt like you weren't contributing anywhere near as much as she was.<br>
<br>
"@@.npc_technician;Hey, I've been a HOTTIE way longer than you have, but you did pretty dang good. Win/Loss ratio's don't tell half the story when we're in a half pug. Unfortunately I gotta jet for a bit, errands to run and all that, but I'd love to play with you some other time!@@"<br>
<br>
You return her enthusiasm and decide to call it a day yourself.<br>
<br>
[<<moveTo "room_livingroom" "Exit the game." 60>>]
</div>/*#
#desc: choose role to hotties with technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
You're at the menu to decide which class to play as today, due to the queue you're in you are restricted to the "basic" versions of characters.<br>
<br>
<<set $scene.followup = "room_play_games_hotties_technician_play">>
<<include "hotties_class_choice">>
</div>/*#
#desc: choose role to hotties with technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
You jump into the public queue, you need to choose what character class you're going to play today.<br>
<br>
<<set $scene.followup = "room_play_games_hotties_pug">>
<<include "hotties_class_choice">>
</div><<if $player.flags.hotties_game.adv_heal || $player.flags.hotties_game.adv_melee || $player.flags.hotties_game.adv_range || $player.flags.hotties_game.tank>>
[<<moveTo $scene.followup "Choose Chastity, the Healer." 600 "<<set $scene.role='heals'>>">>]<br>
[<<moveTo $scene.followup "Choose Temperance, the DPS." 600 "<<set $scene.role='dps'>>">>]<br>
[<<moveTo $scene.followup "Choose Honour, the Tank." 600 "<<set $scene.role='tank'>>">>]
<<else>>
<<switch $player.flags.hotties_game.role>>
<<case 'tank'>>
[<<moveTo $scene.followup "Choose Honour, the Tank." 600 "<<set $scene.role='tank'>>">>]<br>
<<case 'dps'>>
[<<moveTo $scene.followup "Choose Temperance, the DPS." 600 "<<set $scene.role='dps'>>">>]<br>
<<case 'heals'>>
[<<moveTo $scene.followup "Choose Chastity, the Healer." 600 "<<set $scene.role='heals'>>">>]<br>
<<default>>
ERROR: unexpected player.flags.hotties_game.role <<=$player.flags.hotties_game.role>>
<</switch>>
[@@.link_locked;You need to demonstrate mastery of your initial role before the game will let you switch.@@]
<</if>><<if $player.flags.hotties_game.adv_heal>>
[<<moveTo "room_play_games_hotties_technician_play_advanced" "Choose Chastity, the Healer." 1800 "<<set $scene.role='adv_heals'>>">>]<br>
<<else>>
[@@.link_locked;You have not unlocked Chastity's advanced healing form.@@]<br>
<</if>>
<<if $player.flags.hotties_game.adv_melee>>
[<<moveTo "room_play_games_hotties_technician_play_advanced" "Choose Temperance in her Melee Form." 1800 "<<set $scene.role='adv_melee'>>">>]<br>
<<else>>
[@@.link_locked;You have not unlocked Temperance's advanced melee form.@@]<br>
<</if>>
<<if $player.flags.hotties_game.adv_range>>
[<<moveTo "room_play_games_hotties_technician_play_advanced" "Choose Temperance in her Sniper Form." 1800 "<<set $scene.role='adv_range'>>">>]<br>
<<else>>
[@@.link_locked;You have not unlocked Temperance's advanced sniper form.@@]<br>
<</if>>
<<if $player.flags.hotties_game.adv_tank>>
[<<moveTo "room_play_games_hotties_technician_play_advanced" "Choose Honour, the Tank." 1800 "<<set $scene.role='adv_tank'>>">>]<br>
<<else>>
[@@.link_locked;You have not unlocked Honour's advanced tanking form.@@]<br>
<</if>>/*#
#desc: play hotties with technician
#status: FINISHED 0.7.10.0
#ignore_spell: ult
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 12 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
The round starts and you and <<=setup.getNpcName('npc_technician', 'first')>> get to work. She quickly makes an impact on the game with her advanced character and skills and your teams starts working together in pursuit of the objective.<br>
<br>
<<switch $scene.role>>
<<case 'tank'>>
Leaving the DPS to it you focus yourself on your duties as a tank, staying front and centre drawing fire. The whole time <<=setup.getNpcName('npc_technician', 'first')>> is practically glued to you, her potent healing such that your health barely moves as you steadily push forward.<br>
<br>
You're nearing victory when the opposition rallies. The whole enemy team makes a unified push and <<=setup.getNpcName('npc_technician', 'first')>> pops her ult to amp you to the moon only to fall herself under focused fire.<br>
<br>
"@@.npc_technician;Hold position! I'll be right back, honey!@@"<br>
<br>
You notch a second enemy kill and they start to retreat as you're faced with the choice of pursuit or waiting until <<=setup.getNpcName('npc_technician', 'first')>> catches back up to support.<br>
<br>
[<<moveTo "room_play_games_hotties_technician_play_obey" "Hold position, it could be a trap." 300>>]<br>
[<<moveTo "room_play_games_hotties_technician_play_disobey" "This is the opportunity to press your advantage. Chase them down!" 300>>]
<<case 'dps'>>
<<=setup.getNpcName('npc_technician', 'first')>> finds a nice sniper's nest to camp out in while you rush into the thick of it, doing your best to disrupt close quarter attacks against the tank and healer while <<=setup.getNpcName('npc_technician', 'first')>> systematically picks off the enemy team.<br>
<br>
"@@.npc_technician;Shit, someone's on me.@@"<br>
<br>
You start to head back to assist only for her to shout a follow up command.<br>
<br>
"@@.npc_technician;Stay with the payload!@@"<br>
<br>
[<<moveTo "room_play_games_hotties_technician_play_obey" "Do what she said and focus on the mission." 300>>]<br>
[<<moveTo "room_play_games_hotties_technician_play_disobey" "She needs your help! Hurry to her rescue." 300>>]
<<case 'heals'>>
Staying close to <<=setup.getNpcName('npc_technician', 'first')>> you use your healing spells to top her up whenever some foolish enemy player manages to chip away any of her many hit points.<br>
<br>
Like a wrecking ball she plows forward, even the enemy heavy having no chance thanks to you deploying a timely boost.<br>
<br>
Nearing the objective and about to kill a pesky enemy DPS <<=setup.getNpcName('npc_technician', 'first')>> slams into a hidden trap, rooted in place just as you watch the DPS dodge out of the line of fire with a scant handful of hit points remaining.<br>
<br>
<<printThought "They're almost dead, if I just run ahead I can surely finish them off.">><br>
<br>
[<<moveTo "room_play_games_hotties_technician_play_obey" "Obediently stay with your tank." 300>>]<br>
[<<moveTo "room_play_games_hotties_technician_play_disobey" "Finish off that DPS!" 300>>]
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
</div>/*#
#desc: do what technician says while playing hotties
#status: FINISHED 0.7.10.0
#ignore_spell: tpk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.win = false>>
<<switch $scene.role>>
<<case 'tank'>>
<<set $scene.win = (random(12) < setup.getTotalValue("gaming"))>>
<<case 'dps'>>
<<set $scene.win = (random(10) < setup.getTotalValue("gaming"))>>
<<case 'heals'>>
<<set $scene.win = (random(8) < setup.getTotalValue("gaming"))>>
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
<<applyExperience 'smart' 3 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<if $scene.win>>
<<applyExperience 'gaming' 12 'slightly' $SEEN_FRIEND>>
<<set $player.flags.hotties_game.wins_alex += 1>>
<<else>>
<<applyExperience 'gaming' 12 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $scene.unlockTrial = $scene.win && $player.flags.hotties_game.wins_alex >=5 && !$player.flags.hotties_game.trial_unlock>>
<<if $scene.unlockTrial>>
<<set $player.flags.hotties_game.trial_unlock = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.role>>
<<case 'tank'>>
You hold your ground, ignoring the shouts from the DPS to join them as you wait for <<=setup.getNpcName('npc_technician', 'first')>> to respawn and catch up.<br>
<br>
It's good that you did because no sooner do you advance that you run into a mine that eats most of your health bar, if it wasn't for <<=setup.getNpcName('npc_technician', 'first')>> popping a cooldown to get you back in the game the follow-up hit from the opposing heavy would have put you down for good.<br>
<br>
Surviving the initial counterattack you turn the force back against your opponents and their faked retreat becomes a full rout.
<<case 'dps'>>
You try not to think about <<=setup.getNpcName('npc_technician', 'first')>> fighting on her own somewhere else on the map as you focus on her instructions. The enemy team gets bolder now that there isn't a sniper keeping them in check but you manage to get the jump on their healer, their heavy falling soon after as you and the rest of the team manage an almost full sweep.<br>
<br>
Even more exciting is when <<=setup.getNpcName('npc_technician', 'first')>> comes back on chat triumphantly "@@.npc_technician;Got 'em!@@" she announces, as what had been a near wipe turns into a total party kill for the other team.<br>
<br>
With ranged support back online you push forward behind your charging tank, watching out for any respawning enemy that might be coming for the healer.
<<case 'heals'>>
You hover near your tank, topping yourself and <<=setup.getNpcName('npc_technician', 'first')>> off as you wait for the root trap she got stuck in to fade.<br>
<br>
Once she's able to move you make up for lost time, barrelling forward just as the enemy team meets you having regrouped. The battle is pitched and hard and you at first wonder if knocking out the fleeing DPS might have been the better call.<br>
<br>
Either way you slowly start to turn things around as you dodge and jump to avoid focused attention from the other team, their attempt to eliminate your heals opening them up for <<=setup.getNpcName('npc_technician', 'first')>> to crash in, decimating their forces and setting things up for a TPK as your own DPS makes its presence known.
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
<br><br>
<<if $npc_technician.flags.reactnamechange>>
"@@.npc_technician;Good girl!@@"<br>
<br>
You can't help but blush a little bit, her compliment reinforcing your actions and encouraging you to play even better in the future.
<<else>>
"@@.npc_technician;Good girl!... uh, I mean, good job!@@"<br>
<br>
<<if $player.sec_style.body.name != "">>
You tell her you don't mind if she calls you a girl...<br>
<br>
"@@.npc_technician;Hah! Cool, I love role playing! Oh you are just too cute!@@"<br>
<br>
<<printThought "I should really meet her and tell her the full truth...">>
<<else>>
<<printThought "Why does everyone seem to default to thinking I should be a girl?">>
<</if>>
<</if>>
<br><br>
<<if $scene.win>>
Thanks in most part to your and <<=ps(setup.getNpcName('npc_technician', 'first'))>> efforts you win the round, <<=setup.getNpcName('npc_technician', 'first')>> taking play of the game with you right behind on the leaderboard.
<<else>>
Despite <<=ps(setup.getNpcName('npc_technician', 'first'))>> heavy carry you don't quite manage to beat out the other team, losing the round by a narrow margin, though you personally manage a respectable position on the leaderboard right behind your friend.
<</if>>
<br><br>
<<if $scene.unlockTrial>>
Clicking past the usual victory screen instead of getting kicked back to the lobby you are presented with a fireworks display and "Congratulations! Character Trial Unlocked!" <br>
<br>
Still on voice with <<=setup.getNpcName('npc_technician', 'first')>> you ask her what's going on.<br>
<br>
"@@.npc_technician;Oh, sweet! Yeah, that triggers once the game picks up that you've shown overall competence. Basically it's a character specific single player story mission that has you unlock the more "advanced" version of your character. It can be a bit tough but I have faith in you that you can totally nail it!@@"<br>
<br>
You're intrigued, noting that there's a new option on the main menu for "Character Trial." Though tempted to give it a shot right away you decide to let your heart-rate come down and your fingers rest a bit first.<br>
<br>
[<<moveTo "room_livingroom" "This is such a cool game..." 120>>]
<<else>>
[<<moveTo "room_livingroom" "That was fun." 120>>]
<</if>>
</div>/*#
#desc: do your own thing while playing hotties with technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.role>>
<<case 'tank'>>
<<set $scene.win = (random(16) < setup.getTotalValue("gaming"))>>
<<case 'dps'>>
<<set $scene.win = (random(14) < setup.getTotalValue("gaming"))>>
<<case 'heals'>>
<<set $scene.win = (random(12) < setup.getTotalValue("gaming"))>>
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
<<if $scene.win>>
<<applyExperience 'gaming' 12 'slightly' $SEEN_FRIEND>>
<<set $player.flags.hotties_game.wins_alex += 1>>
<<else>>
<<applyExperience 'gaming' 12 'almost' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.role>>
<<case 'tank'>>
Racing after the fleeing enemies you slam straight into a mine. Before you can recover or take cover the enemy heavy is all over you, beating down your scant remaining hit points.<br>
<br>
Helplessly you watch as <<=setup.getNpcName('npc_technician', 'first')>> arrives a moment too late, dying almost instantly under the focused fire of what is now nearly the entire enemy team.<br>
<br>
Together you wait to respawn as you feel guilty over your mistake.
<<case 'dps'>>
Sprinting across the map you show up just in time for <<=setup.getNpcName('npc_technician', 'first')>> to nail a head-shot shooting from the hip to take out her assailant. Turning to return to the fray you listen helplessly as the rest of the team is rolled up, the healer falling followed by the tank and the other DPS before you and <<=setup.getNpcName('npc_technician', 'first')>> can scramble back into position.
<<case 'heals'>>
You charge ahead, ignoring the cry of "@@.npc_technician;Wait!@@"<br>
<br>
Rounding the corner you swap from the healing abilities you've been using all match to your weak DPS spell. Firing a shot off you hit! You watch the death animation only to be ambushed from above! Before you can even react another DPS has landed right next to you. Without your tank to protect they all but fillet you without you even chipping their health bar.<br>
<br>
Kicked back to respawn you watch helplessly as your unsupported team struggles to keep things together.
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
<br><br>
<<if $scene.win>>
Somehow, despite your colossal fuck-up, the rest of your team manages to pull together, scraping out a narrow win.
<<else>>
Your team enters a downward spiral, attempting to claw their way back into the match but the other side has too much of a lead and it isn't long before the round ends with your loss.
<</if>>
<br><br>
<<printThought "Damn, next time I should really stick to the plan...">><br>
<br>
[<<moveTo "room_livingroom" "That was frustrating, but still fun." 120>>]
</div>/*#
#desc: choose advanced rale playing w/technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> enter the ranked queue and you consider which of your unlocked characters you want to play as.<br>
<br>
<<include "hotties_class_choice_adv">>
</div>/*#
#desc: play advanced hotties w/technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
You team up with your
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>> to put in some grinding on the HOTTIES competitive queues.<br>
<br>
"@@.npc_technician;So, my pet... what were you thinking of doing today?@@"
<<case 'neutral' ''>>
girlfriend to put in some grinding on the HOTTIES competitive queues.<br>
<br>
"@@.npc_technician;So, my love, what were you thinking of doing today?@@"
<<case "sub">>
slave to put in some grinding on the HOTTIES competitive queues.<br>
<br>
"@@.npc_technician;So, <<if $player.identify_as=="male">>Master<<elseif $player.identify_as=="female">>Mistress<<else>>Overseer<</if>>... what were you thinking of doing today?@@"
<</switch>>
<<else>>
friend <<=setup.getNpcName("npc_technician","first")>> to put in some grinding on the HOTTIES competitive queues.<br>
<br>
"@@.npc_technician;So, hot stuff... what were you thinking of doing today?@@"
<</if>>
<br><br>
You are currently ranked <<getHottiesRanking>><<if $player.flags.hotties_game.rank == 8>>, the highest rank in the game<</if>>.<br>
<br>
<<if $now.getUTCHours() < 24 && $now.getUTCHours() > 5>>
[<<moveTo "event_technician_advanced_hotties_comp_1" "Focus on practicing in the comp queue." 3600>>]<br>
<<if $player.flags.hotties_game.rank > 6>>
[@@.link_locked;Ranks above <<getHottiesRankWord 6>> are only awarded through tournaments.@@]<br>
<<else>>
[<<moveTo "event_technician_advanced_hotties_rank_1" "Go for rank." 3600>>]<br>
<</if>>
<<if $player.flags.hotties_game.rank > 3>>
<<if $daily.tournament>>
[@@.link_locked;Looks like the game won't let you enter another tournament until tomorrow.@@]
<<elseif setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo "event_technician_advanced_hotties_tourn_1" "Go for the big one and enter a tournament." 60>>]<br>
<<else>>
[@@.link_locked;You don't have time to enter a tournament right now.@@]
<</if>>
<<else>>
[@@.link_locked;Looks like you can't compete in tournaments until you've earned higher rank.@@]
<</if>>
<<else>>
You're mulling things over when <<=setup.getNpcName("npc_technician","first")>> interrupts.<br>
<br>
"@@.npc_technician;Actually... look at the time. I think I'm going to pack it in. This time of night we'd be going up against the overseas teams that just woke up... and I'm not ready to play at that level after a long day. We can play some other time when it isn't so late.@@"<br>
<br>
[<<moveTo "room_livingroom" "Wish her good night and log off." 60>>]
<</if>>
</div>/*#
#desc: play hotties comp w/technician
#status: RELEASED 0.8.6.0
#ignore_spell: dp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.startGaming = setup.getTotalValue("gaming")>>
<<set _gaming = 10 + $player.flags.hotties_game.rank>>
<<if $player.flags.hotties_game.rank > 5>>
<<applyExperience 'gaming' _gaming 'skip' $INCOGNITO>>
<<else>>
<<applyExperience 'gaming' _gaming 'unbelievable' $INCOGNITO>>
<</if>>
<<set $scene.rankUp = setup.getTotalValue("gaming") > $scene.startGaming && $player.flags.hotties_game.rank < 4>>
<<if $scene.rankUp>>
<<set $player.flags.hotties_game.rank += 1>>
<<set $scene.win = true>>
<<else>>
<<set $scene.win = ($player.flags.hotties_game.rank + random(10)) < setup.getTotalValue("gaming")>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $scene.role>>
<<case 'adv_heals'>>
You act as your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral' ''>>girlfriend's<<case "sub">>slave's<</switch>> personal, obedient pocket heal-slut as you fight your way through the pairs queues.
<<case 'adv_melee' 'adv_range'>>
You and your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>> jump in as dual DPS killers to fight your way through the pairs queues.
<<case "adv_tank">>
Your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>subby slave<</switch>> is your sexy pocket healer to help fight your way through the pairs queues.
<<default>>
ERROR: unexpected scene.role <<=$scene.role>>
<</switch>>
<<else>>
<<switch $scene.role>>
<<case 'adv_heals'>>
You act as <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral' ''>>girlfriend's<<case "sub">>slave's<</switch>> personal pocket healer as you fight your way through the pairs queues.
<<case 'adv_melee' 'adv_range'>>
You and your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>> form a double DPS team to fight your way through the pairs queues.
<<case "adv_tank">>
Your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>subby slave<</switch>> steps in as your pocket healer to help fight your way through the pairs queues.
<<default>>
ERROR: unexpected scene.role <<=$scene.role>>
<</switch>>
<</if>>
Together the two of you
<<if $scene.win>>
<<switch random(1,3)>>
<<case 1>>
crush the opposition,
<<case 2>>
enjoy a back and forth match that sees you come out on top,
<<case 3>>
eke out the narrowest of victories,
<<default>>
ERROR: unexpected random win
<</switch>>
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $scene.role>>
<<case 'adv_heals'>>
with her congratulating her "@@.npc_technician;Cute healslut@@" for your performance and otherwise flirting and teasing you the whole time.
<<case 'adv_melee' 'adv_range'>>
with her flirting with you the whole time, talking about how she'd love to "@@.npc_technician;DP your sexy ass.@@"
<<case "adv_tank">>
with her submissively congratulating you and talking about how much she loves healing her "@@.npc_technician;Tank-sama.@@"
<</switch>>
<<else>>
with her being her usual boisterously encouraging self the whole time.
<</if>>
<<else>>
<<switch random(1,3)>>
<<case 1>>
get brutally steamrolled by just the worst match-ups,
<<case 2>>
enjoy a tense back and forth match that, unfortunately, you end up losing,
<<case 3>>
lose a squeaker of a match,
<<default>>
ERROR: unexpected random loss
<</switch>>
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $scene.role>>
<<case 'adv_heals'>>
with her consoling you a bit, while also pointing out that her "@@.npc_technician;Cute healslut@@" seems in need of additional training...
<<case 'adv_melee' 'adv_range'>>
with her flirting with you and playfully teasing you on the loss that "@@.npc_technician;Fortunately I have a smoking hot <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>>... so really, I'm still a winner.@@"
<<case "adv_tank">>
with her submissively apologising for her failure to keep you properly healed.
<</switch>>
<<else>>
with her being her usual boisterously encouraging self without getting frustrated by the defeat. "@@.npc_technician;Can't win 'em all, just gotta keep improving and do better next time!@@"
<</if>>
<</if>>
<<if $scene.rankUp>>
At the end of one match you get a pop-up congratulating you on ranking up, you and <<=setup.getNpcName("npc_technician","first")>> cheer each other on; attaining rank <<getHottiesRanking>> another step on your journey towards a championship.<br>
<br>
<<elseif $player.flags.hotties_game.rank > 4>>
In between matches you get a tool-tip noting that to move beyond rank <<getHottiesRankWord 4>> you have to do ranking challenges.<br>
<br>
<</if>>
"@@.npc_technician;Well that was fun, as always, but I think I'm going to pack it in for a bit. Catch you later!@@"<br>
<br>
You say your good-byes and log off.<br>
<br>
[<<moveTo "room_livingroom" "Living room." 60>>]
</div>/*#
#desc: play hotties comp w/technician
#status: RELEASED 0.8.6.0
#ignore_spell: gg
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = 10 + $player.flags.hotties_game.rank>>
<<if $player.flags.hotties_game.rank > 5>>
<<applyExperience 'gaming' _gaming 'skip' $INCOGNITO>>
<<else>>
<<applyExperience 'gaming' _gaming 'unbelievable' $INCOGNITO>>
<</if>>
<<set $scene.win = setup.getTotalValue("gaming") >= (random(3) + 9 + $player.flags.hotties_game.rank)>>
<<if $scene.win>>
<<applyStress -5>>
<<set $scene.rankUp = $player.flags.hotties_game.rank < 6>>
<<if $scene.rankUp>>
<<set $player.flags.hotties_game.rank += 1>>
<</if>>
<<else>>
<<applyStress 5>>
<<set $scene.rankDown = $player.flags.hotties_game.rank >= 0>>
<<if $scene.rankDown>>
<<set $player.flags.hotties_game.rank -= 1>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> are matched up against an equal team, fighting through pitched back and forth rounds before the pair of you
<<if $scene.win>>
claim victory,
<<if !$scene.rankUp>>
though your ranking fails to change.
<<else>>
and with it — a rank up to <<getHottiesRanking>>.
<</if>>
<br><br>
<<if !$scene.rankUp>>
"@@.npc_technician;Whew! That was tough — but it only gets harder from here since if we're going to climb any higher we have to enter, and win, tournaments...@@"
<<else>>
"@@.npc_technician;GG! I knew we could do it, Goddess-rank, here we come!@@"
<</if>>
<<elseif $scene.rankDown>>
are, unfortunately, defeated. You wince as you watch your ranking drop to <<getHottiesRanking>>.<br>
<br>
"@@.npc_technician;Damn! We were so close! Just gotta keep practicing, I suppose, but we'll get there. You and me make a helluva team!@@"
<<if setup.getCurrentValue("gaming") > setup.getTotalValue("gaming")>>
<br><br>
<<printThought "Ugh, I can barely think about anything other than sex... especially with all these hot avatars! It's these drugs! I need to play when I'm not drowning in <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> work...">>
<</if>>
<<else>>
are, unfortunately, defeated. "Fortunately" it would seem that <<getHottiesRanking>> is the lowest ranking possible, so you don't actually drop... but that doesn't exactly make the loss sting any less.<br>
<br>
"@@.npc_technician;Dang, that was a tough match... I totally think we could have won though, we just need a bit more practice. Though, regardless of the so-called result, I could never really feel like loser when I got to play with you!@@"
<<if setup.getCurrentValue("gaming") > setup.getTotalValue("gaming")>>
<br><br>
<<printThought "Ugh, I can barely think about anything other than sex... especially with all these hot avatars! It's these drugs! I need to play when I'm not drowning in <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> work...">>
<</if>>
<</if>>
<br><br>
Your heart is still beating as you log off to take a break and relax.<br>
<br>
[<<moveTo "room_livingroom" "Living room." 60>>]
</div>/*#
#desc: play hotties alone pugging
#status: FINISHED 0.7.10.0
#ignore_spell: d,k
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("gaming") > 10 && $scene.role == 'heals' && $player.flags.hotties_game.wins_slutty > 0 && $player.flags.hotties_game.adv_heal && !$player.flags.hotties_game.kaly && setup.getTotalValue("submission") > 10 && setup.getTotalValue("bimbofication") > 10>>
<<initRoom>>
<<moveTo "event_kaly_online_1">>
<<else>>
<<if setup.getTotalValue("gaming") > 10>>
<<set $player.flags.hotties_game.wins_pug += 1>>
<</if>>
<<applyExperience 'gaming' 8 'normal' $ALONE>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
Nobody seems interested in socialising as you go straight from the lobby into the game with your random group of fellow "HOTTIES." <br>
<br>
<<if !State.hasPlayed("event_streaming_extreme_offer_1") && setup.getTotalValue("gaming") > 10 && $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
You win, easily, when, rather than the usual victory screen, you are presented with an in-game offer.<br>
<br>
[<<moveTo "event_streaming_extreme_offer_1" "Special offer for ELITE Streamers!" 60 "<<set $scene.fromStreaming=false>>">>]
<<elseif setup.getTotalValue("gaming") > 15>>
The rest of your team barely matters. At this point you are a freaking <<getWordGod>> at this game, carrying the whole team like it was nothing. You cruise to an easy victory, showered with praise from your fellow players.<br>
<br>
You barely even pay attention to the score and your play of the game as you finish up.<br>
<br>
<<printThought "That was kind of dull... I need a proper challenge.">><br>
<br>
[<<moveTo "room_livingroom" "Exit out." 60>>]
<<elseif setup.getTotalValue("gaming") > 10 && ($player.flags.hotties_game.wins_slutty > 0 || random(1,20) > setup.getTotalValue("gaming"))>>
Pugs are a bit below you at this point, especially once you make yourself known in voice.<br>
<br>
<<switch $scene.role>>
<<case 'tank'>>
You immediately take charge of the team. At your command the healer is glued to your ass, moaning on voice as you talk about what you'll do to HER ass if she drops you. Your authority established the DPS falls in as well, a swarm of horny sluts eager to gain your favour, spinning tales of what they'll do if you let them "borrow" your healer after the round.
<<case 'dps'>>
You flirt and beg, switching between daring the other DPS to keep up and telling the healer what you'll do to her slutty holes if she doesn't work it to keep the tank swole and hard.
<<case 'heals'>>
Breathlessly you gush and encourage your teammates, promising the tank that you'll "@@.pc;Always be there for them to use@@" while egging the DPS on that if they can stay coordinated you'll be their slave and they can gang-bang you between rounds.
<<default>>
ERROR: unknown scene.role <<=$scene.role>>
<</switch>>
<br><br>
Guided by your words your team all but steamrolls your disorganised opponents. By the end of the round victory is all but assured. Your team has worked together perfectly, cruising on a high of horny elation.<br>
<br>
You take a moment to enjoy looking at your position on the top of the score screen as your play of the game highlight replays before exiting out.<br>
<br>
<<printThought "That was fun and all, but I don't think I'm going to improve my skills much by just pubstomping.">><br>
<br>
[<<moveTo "room_livingroom" "Exit out." 0>>]
<<elseif setup.getTotalValue("gaming") > 5>>
You try to just focus on your role but you can tell that without something to pull the team together you're probably going to get rolled again, no matter how well you play individually.<br>
<br>
<<switch $scene.role>>
<<case 'tank'>>
First off is the fact that you don't even know where your healer is, maybe if you can bring them in line you can get the rest of the team to follow along?<br>
<br>
[<<moveTo "room_play_games_hotties_pug_verbal" "Try to convince the team to take a more tactical approach." 600 "<<set $scene.verbal_nice=true>>">>]<br>
[<<moveTo "room_play_games_hotties_pug_verbal" "Yell at them and try to berate them into playing better." 600 "<<set $scene.verbal_nice=false>>">>]<br>
<<if setup.getTotalValue("dominance") > 5>>
[<<moveTo "room_play_games_hotties_pug_verbal_sexy" "Use your experience in BDSM to get your healer and the rest under control." 0>>]
<<else>>
[@@.link_locked;You aren't experienced enough at dominance to make a credible impression as a tankdom.@@]
<</if>>
<<case 'dps'>>
As just a DPS it'd be almost impossible to turn the tide of the match, but, as you listen to the healer and tank start to get testy on voice, maybe you're in the unique position to mediate, coordinate and get everyone focused on the task at hand?<br>
<br>
[<<moveTo "room_play_games_hotties_pug_verbal" "Try to convince the team to take a more tactical approach." 600 "<<set $scene.verbal_nice=true>>">>]<br>
[<<moveTo "room_play_games_hotties_pug_verbal" "Yell at them and try to berate them into playing better." 600 "<<set $scene.verbal_nice=false>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 7>>
[<<moveTo "room_play_games_hotties_pug_verbal_sexy" "Slut it up and use your magic bimbo powers to get everyone to cooperate." 600>>]
<<else>>
[@@.link_locked;You, like, don't have the stuff to sex it up and get everyone focused hard.@@]
<</if>>
<<case 'heals'>>
As the lone healer on the team, you start getting called out from the start of the match. If only you could use your unique position as "support" to have everyone working together.<br>
<br>
[<<moveTo "room_play_games_hotties_pug_verbal" "Try to convince the team to take a more tactical approach." 600 "<<set $scene.verbal_nice=true>>">>]<br>
[<<moveTo "room_play_games_hotties_pug_verbal" "Yell at them and try to berate them into playing better." 600 "<<set $scene.verbal_nice=false>>">>]<br>
<<if setup.getTotalValue("submission") > 7>>
[<<moveTo "room_play_games_hotties_pug_verbal_sexy" "Tell the team how good of a slave you'll be if they can pull together and win." 600>>]
<<else>>
[@@.link_locked;You don't act submissive enough to properly present yourself as the healer the team needs.@@]
<</if>>
<<default>>
ERROR: unknown scene.role <<=$scene.role>>
<</switch>>
<<else>>
You do your best but you're still getting the hang of the game, and though you try to be a team player and push for the objective you definitely make a few mistakes.<br>
<br>
<<switch $scene.role>>
<<case 'tank'>>
Outflanked you die for a second time and voice blows up. "@@.generic_male1;Come on tank, what the hell? You need to be on the fucking payload at all times!@@"<br>
<br>
"@@.generic_male2;Yeah, ride it like you ride your <<boy>>friend's cock you stupid slut.@@"<br>
<br>
"@@.generic_male1;Bah, like she could get a <<boy>>friend, an idiot like that probably has to get it on the street! Come on bitch, shape up and play right and maybe I'll fuck some skills into you!@@"
<<case 'dps'>>
You try to protect the payload but with the tank and healer off <<getWordGod>> knows where it's hard for you to survive, much less slow down the enemy team.<br>
<br>
One of the other DPS apparently checks the score and you get called out in voice.<br>
<br>
"@@.generic_male1;Who's this dumb cunt playing Temperance? You're feeding the other team so much you might as well BE them!@@"<br>
<br>
You point out that you're focusing on the objective and maybe if you weren't alone in that things would go better but you are quickly cutoff by the tank.<br>
<br>
"@@.generic_male2;Hey shut up, slut, I'm in charge of this thing and if you don't like it you can choke on my cock! Do your fucking job and stop failing at being a lone wolf!@@"
<<case 'heals'>>
Though you're doing your best to heal the tank enemy DPS seems all over you, killing you pretty much as soon as you step out to cast something on the tank. Of course, your teammates are far from indifferent to your struggles.<br>
<br>
"@@.generic_male1;What the fuck heals? You stupid slut, stop trying to jerk it and do your job!@@"<br>
<br>
"@@.generic_male2;Yeah,@@" a DPS chimes in, "@@.generic_male2;If you can't heal us what are you good for you dumb cunt? We should just bail on this game and <<if $fetish.get_raped>>rape<<else>>fuck<</if>> this bitch, because we sure as hell aren't going to win with her jerking off in a corner instead of doing her job!@@"<br>
<br>
<<default>>
ERROR: unknown scene.role <<=$scene.role>>
<</switch>>
<br><br>
You try to explain yourself but they are having none of it, only ramping up the abuse as the slow loss turns to a full rout in favour of the other team.<br>
<br>
"@@.generic_male1;Fuck this worthless noob! I swear, there should be, like a skill requirement so no-skill whores like you get your own queue. This is gonna trash my rating and it's all your fault you slut!@@"<br>
<br>
Beaten down by the verbal abuse, you quickly exit out of chat.<br>
<br>
<<printThought "Wow, people are toxic, I mean, I know I still need practice, but that was just vile!">><br>
<br>
<<switch $scene.role>>
<<case 'tank'>>
You bristle at the disrespect of your teammates — you died more than any of them thanks to their failure to stay together and support the mission.<br>
<br>
<<printThought "Maybe if there was some way I could make an impression and be more assertive I could get them in line...">>
<<case 'dps'>>
You try to take solace in the fact that you actually didn't have the worst K/D ratio on your team. That said, it's clear that with everyone working as lone wolves victory was always going to be a long shot.<br>
<br>
<<printThought "I wonder if there's some way to, like, get everyone on the same page?">>
<<case 'heals'>>
<<printThought "Why did being talked to like that turn me on? Maybe if I can focus more on serving my team we could win...">>
<<default>>
ERROR: unknown scene.role <<=$scene.role>>
<</switch>>
<br><br>
[<<moveTo "room_livingroom" "Exit the game." 0>>]
<</if>>
</div>/*#
#desc: try and fail to order your team around
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<if $scene.verbal_nice>>
You try to take charge of your team, politely telling them to stick together and calling out targeting assignments.<br>
<br>
Unfortunately this is pug-land and all you get in return is an earful of swears as they tell you to shut up, "git gud" and then go on to cuss you out for talking at all while explaining that your whore mouth, and your other holes are only good for <<if $fetish.get_raped>>being raped<<else>>serving cock<</if>>.
<<else>>
Putting on your meanest voice you try to out-swear the rest of your team, berating them to do the jobs their classes are designed for. It doesn't go well. By the end of it you've been shouted down, called a dumb cunt, <<if $fetish.get_raped>>and threatened with rape with multiple implements of varying degrees of physical possibility<<else>>your tactical advice utterly ignored<</if>>.
<</if>>
<br><br>
Needless to say, you lose the round, logging off in annoyance before you have to listen to any more toxicity.<br>
<br>
[<<moveTo "room_livingroom" "Well that sucked." 60>>]
</div>/*#
#desc: talk sexy to your pug teammates to try and get them to perform
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.win= (random(10) < setup.getTotalValue("gaming"))>>
<<if $scene.win>>
<<setThreshold 'gaming' 'hotties' 'pug_master'>>
<<set $player.flags.hotties_game.wins_pug += 1>>
<<set $player.flags.hotties_game.wins_slutty += 1>>
<</if>>
<<applyExperience 'gaming' 8 'normal' $ALONE>>
<<switch $scene.role>>
<<case 'tank'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<<case 'dps'>>
<<applyExperience 'bimbofication' 16 'normal' $SEEN_STRANGER>>
<<case 'heals'>>
<<applyExperience 'submission' 18 'normal' $SEEN_STRANGER>>
<<default>>
ERROR: unknown scene.role <<=$scene.role>>
<</switch>>
<<changeHorny 10>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.role>>
<<case 'tank'>>
Charging into the thick of things in-game you simultaneously take charge in voice, ordering the healer to glue herself to your ass if she ever wants to have another orgasm. Your vulgar words do the trick, and soon your health is racing up faster than the enemy fire pouring down at you.<br>
<br>
Turning your attention towards the DPS you order them to "@@.pc;Clear out the trash@@" telling them that either you're going to fuck them until they're as dumb as they act or they can get their shit together and whoever has the most enemy kills will get first crack at the healers slut mouth while you bend her over to fuck her brains out at the end of the match.<br>
<br>
From that point on the whole team seems to pull together. You mix in the occasional threat to spank or flog anyone who steps out of line but they seem far more interested in obeying your commands as voicechat swiftly filled with "@@.pc;Yes, commander@@" and "@@.pc;That kill's for you tank-sama!@@" and you push forward.
<<case 'dps'>>
Giggling into voice to defuse early match stress you put on your best bimbo affect and encourage your team.<br>
<br>
"@@.pc;Like, go healer! Keep that tank up and you'll get, like... lots of orgasms when we win!@@"<br>
<br>
"@@.pc;Come on tank, hold that objective, you're so strong and sexy, you got this!@@"<br>
<br>
"@@.pc;Great kill! Like, I know I'm DPS'ing the enemy right now but when this is over do y'all wanna Double Penetrate this Slut? Please say yes!@@"<br>
<br>
Flirting your way through with encouragement and instructions you breathlessly keep your team hard and hungry. Following your lead the rest of them soon join in talking about how they're going to fuck your slutty brains out in celebration, the healer in particular sounding almost as breathlessly aroused as yourself when the tank starts REALLY treating <<him>> like <<his>> slut slave.
<<case 'heals'>>
Racing out the gate behind the tank you immediately make your position clear in voice. "@@.pc;Please tank-sama, wait for me! Oh, it makes me so wet to keep you all healed and strong but I need you to protect me!@@"<br>
<br>
Taken off guard by your forwardness voice chat is silent for a moment before there is a reply. "@@.generic_male1;Like, is this chick for real?@@"<br>
<br>
"@@.pc;Very real!@@" you reply. "@@.pc;Oh, nothing makes me wetter than healing my big, strong tank... except maybe celebrating afterwards... mmm, do you think the DPS could take turns <<if $fetish.get_raped>>raping<<else>>fucking<</if>> me after I please you, tank-sama? I'm sorry but I'm just too much of an insatiable healslut not to be shared with the whole team...@@"<br>
<br>
Your lewd performance seems to do the trick as what had started out as a quiet, uncoordinated team soon becomes an organised engine of advancement. You gasp and moan with every kill and save, talking about how excited you are to reward them after the match, all the while spreading your healing magics around to any who gallantly dive between yourself and enemy fire.
<<default>>
ERROR: unknown scene.role <<=$scene.role>>
<</switch>>
<br><br>
<<if $scene.win>>
With your words of encouragement, combined with your steadily improving skills in-game, you and your team are able to continue pushing forward, systematically routing and wiping out the enemy forces until you hit the objective and claim victory.<br>
<br>
Voicechat explodes with congratulations and you all share a few more sexy words, hearing at least two of your teammates climax over voice as the play of the game plays out.<br>
<br>
The rest of the team bows out to "clean up." With a smile on your face, you click exit.
<<else>>
Despite your best efforts the other team manages to regroup and steal a win at the last moment. Possibly due to being TOO <<if $player.timebased.horny > 50>>aroused<<else>>focused on acting cartoonishly aroused<</if>>, you miss an all in flanking attack, forced to watch from the floor as the seconds of the round tick down, unable to respawn in time before the enemy claims the objective and the win.<br>
<br>
Though you may have lost the round your team remains in good spirits. You all performed well, one of you even got play of the game! And you mutually agree that it was just a bit of bad luck at the end. Signing off with a final bit of cybering you hear at least one of your teammates climax over voice and you smile with pride as you finally part ways and exit.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "That was fun!" 60>>]
</div>/*#
#desc: run into kaly while pugging
#status: FINISHED 0.8.5.0
#ignore_spell: 3v3
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<<set $player.flags.hotties_game.wins_pug += 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
The 3v3 queue pops and you hop into the game. Waiting for the match to start the tank is really chatty, greeting you and the DPS in an enthusiastic tone.<br>
<br>
"@@.generic_female1;Hey HOTTIES — or should I say cuties? I hope you're both doing swell, I'm still amped from my last game and I got a good feeling about us. We just gotta work together and we got this!@@" Femme and flirty the tank immediately puts a bit of a smile on your face... though that reaction does not seem to be shared by the DPS.<br>
<br>
"@@.generic_male1;God, what are you some sort of titty streamer? Stop being <<if $options.fem>>so horny<<else>>such a girl<</if>> and focus on the game!@@"<br>
<br>
"@@.generic_female1;Trust me — I'm way more girl than YOU could handle, now stop being such a jerk — as I said, we work together, we win, and if we win, well... maybe I'd consider giving you a look at these titties — trust me, they're pretty fab.@@"<br>
<br>
The <<guy>> just grunts in annoyance as the match proper starts, immediately charging out without the slightest hint at coordination.<br>
<br>
The good heal-slut you are you stick with your tank... and you hear her voice in private chat whispering in your ear. "@@.generic_female1;Well <<he>>'s a turn... but you and me? You just keep me going with that hot, hot healing and I promise I'll protect you and treat you right...@@"<br>
<br>
You shiver slightly — seconds in and whoever this player is, "@@.generic_female1;<<=setup.getNpcName("generic_female1","custom", "Kally")>>,@@" according to her gamer tag, is already pushing your buttons hard.<br>
<br>
[<<moveTo "event_kaly_online_2" "Yes, Mistress..." 180 "<<set $scene.sub=true>>">>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;You're too much of a sub to resist this sort of treatment.@@]<br>
<<else>>
[<<moveTo "event_kaly_online_2" "Form up and focus on the game." 180 "<<set $scene.sub=false>>">>]
<</if>>
</div>/*#
#desc: team-member disconnects, kaly rallies
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sub>>
<<changeHorny 10>>
<<applyExperience 'submission' 8 'normal' $INCOGNITO>>
<</if>>
<<changeHorny 20>>
<<applyExperience 'gaming' 5 'normal' $INCOGNITO>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sub>>
"@@.pc;Yes, Mistress...@@" you whisper-moan... prompting the <<if $options.fem>>other girl<<else>>dude<</if>> to shout
<<else>>
You bite your lip and try to distract yourself with the game... but your new tank friend keep up the patter, thanking you for every heal and whispering encouragement to her "@@.generic_female1;good heal-slut.@@"<br>
<br>
Despite voice being technically one-sided, and your team actually pushing pretty well, this proves too much for your DPS as <<he>> shouts out
<</if>>
"@@.generic_male1;get a room, you fucking perverts!@@" before rage-disconnecting.<br>
<br>
Though <<he>> may not have been coordinating, it turns out that your now-lost DPS's lone wolf efforts had been hampering the enemy team, as, with <<him>> gone, you end up ambushed, and you're stunned and killed with your tank following a moment later.<br>
<br>
You groan in frustration — clawing back into the game 3 on 2 is going to be almost impossible... but this challenge only seems to further embolden <<=setup.getNpcName("generic_female1","custom", "Kally")>> as the two of you wait to respawn.<br>
<br>
"@@.generic_female1;Alright, hot stuff — no distractions, no dead weight no-fun, team-mate, just you and me... <<if $scene.sub>>you're already all but at my feet<<else>>I know you haven't said anything, but I can hear your breathing and I know<</if>> you're just as wet and excited as I am. <<if setup.checkItemTypeWorn("plug")>>Hmm... I wonder if you're riding a dildo like I am... or maybe you're plugged? Yeah... I bet you are, I can hear it in your breathing — all stuffed and spread and yearning for the real thing... sorry bit distracted there<<else>>Hmm... I wonder if you're riding a dildo like I am... you really should — it makes playing so much more fucking fun — pun intended. Anyway..<</if>>. Here's what we're going to do — when that respawn cycle hits you and me are going straight for the objective — we're gonna move fast and take it hard and we're going to win this thing... and when we do? Well... I just might give you permission to have that orgasm I just KNOW you're fantasising about...<<if setup.checkItemTypeWorn("cage")>> yeah, I bet you're just <<if setup.isCage()>>dripping in your cage<<else>>leaking past your chastity belt<</if>> at the thought, oh yeah, I can just tell you're the type to lock yourself to match your avatar, it's definitely the best way to get in the zone to play!<</if>>@@"<br>
<br>
You shudder in your chair,
<<if setup.checkItemTypeWorn("plug") || setup.checkItemTypeWorn("cage")>>
the way <<=setup.getNpcName("generic_female1","custom", "Kally")>> seems to know your kinky secrets... you bite your lip,
<</if>>
all but enraptured by your team-mate's spell as you pop back to life and your tank moves out...<br>
<br>
[<<moveTo "event_kaly_online_3" "Good heal-slut, go go go!" 300>>]
</div>/*#
#desc: you and kaly make comeback
#status: FINISHED 0.8.5.0
#ignore_spell: k,d,ult
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 30>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'gaming' _sub 'terrible' $INCOGNITO>>
<<applyExperience 'submission' _sub 'terrible' $INCOGNITO>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
You'd think that your burning arousal would be a distraction... but somehow it only serves to focus your attention even sharper. With your tank-domme whispering quick orders and encouraging "@@.generic_female1;good girls@@" you ascend to a state of simultaneous sub-space and perfect focus.<br>
<br>
Hitting the enemy fresh off the spawn the two of you clean up your three foes with ease before pushing forward to claim the objective and settle in for a stand for the ages. With your healing and the top tank (in both senses of the word) beside you, you hold the line like something out of an epic poem, your reduced numbers mattering not as you fight through to the end, the two kills your opponents scored early the only ones they get the whole match as the victory screen pops up to show your top-tier K/D ratio, as well as a sexy play of the game narrated by <<=setup.getNpcName("generic_female1","custom", "Kally")>> herself.<br>
<br>
"@@.generic_female1;Oh yeah, when you popped your ult there? So fucking hot — I almost popped myself! Had to turn down the vibe to keep me from blasting over the edge... self-ruins are so intense<<if $fetish.cum>>, too bad you're not here to lick up the dribbles<</if>>!@@"
<br>
[<<moveTo "event_kaly_online_4" "Wow!" 180>>]
</div>/*#
#desc: win game w/kaly
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 30>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'bimbofication' _sub 'terrible' $INCOGNITO>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
You fall back in your chair as you let out a relieved breath at your accomplishment. 3 on 2 and you won! ... and you're also just... beyond horny, <<=ps(setup.getNpcName("generic_female1","custom", "Kally"))>> continued narration doing nothing but make you squirm.<br>
<br>
"@@.generic_female1;Heya, hot stuff, I could hear you breathing hard all match... and it makes me so horny. I bet you're just a total cutie who'd feel so good bouncing on my broadsword... that's the proper reward for a good heal-slut like yourself — to be bent over and <<if $fetish.cum>>pumped full of cum<<else>>fucked<</if>>... pity our team-mate bowed out, such a perfect heal-slut as yourself really deserves to get it both ends. Mmm... maybe next time we can bring a proper friend... or three! Bump up into the 5's queues and see how far we can push it before we have to take a break and just totally ruin you in celebratory fun!@@"<br>
<br>
You're almost melting off your chair when your new "friend" goes silent, sighing slowly before continuing with a slightly less "cranked up to 110% with sexy" voice.<br>
<br>
"@@.generic_female1;Whew! Hope you're doing okay over there... I think I need to take a break. Playing with you is just too fun and, well... I need to blow off some steam. Don't worry though, I'm totally going to be imagining plowing your cute, subby ass while I'm doing so... and I'd recommend you do the same. If you want to mimic me I recommend your biggest dildo — and I just know you have a collection... because when I reward a girl... well... they usually have trouble walking the next day... that's if I let them out of bed...@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Kally")>> signs off, leaving you to catch your breath as your connection times out leaving you feeling a bit too wound up for another round.<br>
<br>
[<<moveTo "room_livingroom" "Step away from the computer." 60>>]
</div>/*#
#desc: technician comes over to prep for tourny
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.tournament = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> sign up for a tournament — fortunately HOTTIES is a popular enough game that tourneys fire off frequently. All the same, you still have a short wait ahead of you.<br>
<br>
"@@.npc_technician;Hey, so it'd probably be more efficient if we were in the same room for this — no VOIP lag or anything, we've got enough time till things start... let me just pack up my laptop and I'll be over to your place in a jif.@@"<br>
<br>
[<<moveTo "event_technician_advanced_hotties_tourn_2" "Wait for her to arrive." 300>>]
</div>/*#
#desc: tourny prep
#status: RELEASED 0.8.6.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'gaming' 'hotties' 'lan_party'>>
<<switch $scene.role>>
<<case 'adv_heals'>>
<<set $scene.herCostume='dom'>>
<<case 'adv_range'>>
<<set $scene.herCostume='neutral'>>
<<case 'adv_melee'>>
<<set $scene.herCostume='neutral'>>
<<case 'adv_tank'>>
<<set $scene.herCostume='sub'>>
<</switch>>
<<switch $scene.herCostume>>
<<case "dom">>
<<set $scene.herArt = setup.charImage("npc_technician","npc_technician_hot_dom")>>
<<case "sub">>
<<set $scene.herArt = setup.charImage("npc_technician","npc_technician_hot_sub")>>
<<case 'neutral'>>
<<set $scene.herArt = setup.charImage("npc_technician","npc_technician_hot_neut")>>
<</switch>>
<<set $player.flags.hotties_game.play[$scene.herCostume] = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png" $scene.herArt>>
<div id="invframe" class="scrolltext">
You're a bit startled how little you have to wait before <<=setup.getNpcName("npc_technician","first")>> shows up... even moreso to find that a) she's dressed like one of the characters from the game and that b) she has a complementary costume for you...<br>
<br>
"@@.npc_technician;Come on! We're in serious mode now, and what better way to get in the zone than to literally embody your avatar?@@" She grins, "@@.npc_technician;And I totally am not saying that at all because I want to see how fucking hot you'd look in this outfit...@@"<br>
<br>
[<<moveTo "event_technician_advanced_hotties_tourn_3" "Get changed..." 300 "<<set $scene.change=true>>">>]<br>
[<<moveTo "event_technician_advanced_hotties_tourn_3" "Actually... you don't feel like doing a tournament today." 300 "<<set $scene.change=false>>">>]
</div>/*#
#desc: tourny change
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.change>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<<switch $scene.role>>
<<case 'adv_heals'>>
<<addItemSet "hotties_healer">>
<<wearItemSet "hotties_healer">>
<<case 'adv_range'>>
<<addItemSet "hotties_range">>
<<wearItemSet "hotties_range">>
<<case 'adv_melee'>>
<<addItemSet "hotties_melee">>
<<wearItemSet "hotties_melee">>
<<case 'adv_tank'>>
<<addItemSet "hotties_tank">>
<<wearItemSet "hotties_tank">>
<</switch>>
<<else>>
<<incrementEmotion 'anger' 'npc_technician' 2>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png" $scene.herArt>>
<div id="invframe" class="scrolltext">
<<if $scene.change>>
<<switch $scene.herCostume>>
<<case "dom">>
You get changed into the skimpy healer outfit and <<=setup.getNpcName("npc_technician","formal")>> grins in approval. "@@.npc_technician;Yum. Now give me a kiss for good luck, my sexy heal-slut, you keep me up for the whole match and I'll have more for you after...@@"
<<case "sub">>
You get changed into the sexy tank outfit, <<=setup.getNpcName("npc_technician","first")>> blushing with lust. "@@.npc_technician;Mmmm, you look so hot, I hope I can keep you up for the whole match...@@"
<<case "neutral">>
You get changed into the sleek and sexy outfit to match <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_technician;Yowza... I'm feeling a bit jealous — I think you wear that even better than I do!@@" She laughs.
<</switch>>
<br><br>
You<<if $npc_technician.relationship.relationship_stage >= 1>> share a quick kiss and then<</if>> help <<=setup.getNpcName("npc_technician","first")>> get set up, just in time for the tournament to start...<br>
<br>
[<<moveTo "event_technician_advanced_hotties_tourn_4" "Let's do this thing!" 3600>>]
<<else>>
As enticing as <<=setup.getNpcName("npc_technician","first")>> looks you decide that you aren't quite ready to do the tournament today.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> frowns and starts to pack up. "@@.npc_technician;Aww nuts... well, some other time then!@@"<br>
<br>
She gathers her things and leaves.<br>
<br>
[<<moveTo "room_livingroom" "Living room." 60>>]
<</if>>
</div>/*#
#desc: tourny round 1
#status: RELEASED 0.8.6.0
#ignore_spell: w,l
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.wins = Math.max(0,setup.getTotalValue("gaming")-12)>>
<<setThreshold 'gaming' 'hotties' 'tournament'>>
<<applyExperience 'gaming' 18 'skip' $INCOGNITO>>
<<if $scene.wins > 7>>
<<set $scene.wins = 7>>
<<elseif $scene.wins < 6>>
<<switch $scene.role>>
<<case 'adv_heals'>>
<<removeItemSet "hotties_healer">>
<<case 'adv_range'>>
<<removeItemSet "hotties_range">>
<<case 'adv_melee'>>
<<removeItemSet "hotties_melee">>
<<case 'adv_tank'>>
<<removeItemSet "hotties_tank">>
<</switch>>
<<useClothSetPop 'tmp'>>
<</if>>
<<applyFatigue 50>>
<<set $scene.promotion = $player.flags.hotties_game.rank < 7 && $scene.wins > 5>>
<<if $scene.promotion>>
<<set $player.flags.hotties_game.rank = 7>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png" $scene.herArt>>
<div id="invframe" class="scrolltext">
The first round of the tournament is actually a grueling gauntlet that sees the two of you facing off against seven other teams in a round robin of lightning matches.<br>
<br>
<<switch $scene.wins>>
<<case 7>>
You and <<=setup.getNpcName("npc_technician","first")>> are a well-synchronised machine. You feel like you're on another level than your opponents as you don't just beat all comers and come away with a perfect record, but utterly dominate your way through most of your matches.
<<case 6>>
You and <<=setup.getNpcName("npc_technician","first")>> are playing in peak form, making it through the tournament with but a single loss — and that in a nail-biter of a close game.
<<case 5 4>>
You and <<=setup.getNpcName("npc_technician","first")>> give better than you take, maintaining a positive W/L ratio... even if you stumble a few too many times to make the finals.
<<case 3 2>>
You and <<=setup.getNpcName("npc_technician","first")>> find yourself struggling at this level of competition as you end up a couple wins shy of a .500 record.
<<case 1>>
You and <<=setup.getNpcName("npc_technician","first")>> are in over your pretty heads — barely scoring a single win by the end of the round robin portion.
<<case 0>>
You and <<=setup.getNpcName("npc_technician","first")>> get crushed, not even winning a single round.
<<default>>
ERROR: unexpected scene.wins <<=$scene.wins>>
<</switch>>
<br><br>
<<if $scene.wins >= 6>>
You sit back with a sigh,
<<if $scene.promotion>>
your performance was such that, not only are the two of you going to the finals, you also see your rank rise to <<getHottiesRanking>>.
<<else>>
your performance in the group stage good enough that you're going to be going to the tournament finals.
<</if>>
<br><br>
"@@.npc_technician;Wow, that was tough! But I've got a good feeling about things...@@" She grins, "@@.npc_technician;Say, we've got some time before the finals round... what say we take advantage of it with some... stress-reducing bonding activities, hmm? You know, to make even more sure that we're operating in sync for the finals...@@"<br>
<br>
[<<moveTo "event_technician_advanced_hotties_tourn_5" "Sounds like a fun plan!" 1800 "<<set $scene.action='sex'>>">>]<br>
<<if $npc_technician.relationship.relationship_stage >= 1>>
[<<moveTo "event_technician_advanced_hotties_tourn_5" "Maybe some cuddles and massage? You're a bit excitement-ed out from the first round..." 1800 "<<set $scene.action='cuddle'>>">>]<br>
<</if>>
[<<moveTo "event_technician_advanced_hotties_tourn_5" "Actually... that first round took too much out of you, you'd like to bow out here." 300 "<<set $scene.action='quit'>>">>]
<<else>>
You sit back with a sigh — unfortunately your performance was not good enough to make it to the finals... though you feel that, even in defeat, you learned a few tricks for next time.<br>
<br>
"@@.npc_technician;Whew! That last match was a real a tough one... guess we should spend more time practicing in the general queues before we go entering tournaments.@@"<br>
<br>
You change clothes and help her pack up her things to head home.<br>
<br>
<<if setup.getCurrentValue("gaming") > setup.getTotalValue("gaming")>>
<br><br>
<<printThought "Ugh, I can barely think about anything other than sex... especially with all these hot avatars... plus <<=setup.getNpcName('npc_technician','first')>> being right here! It's these drugs! I need to take a shot at the tournament when I'm not drowning in <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> work...">>
<</if>>
[<<moveTo "room_livingroom" "Back to your living room." 60 >>]
<</if>>
</div>/*#
#desc: tourny recess
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == 'sex' && $npc_technician.relationship.relationship_stage >= 1>>
<<switch $scene.herCostume>>
<<case 'dom'>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<<case 'neutral' ''>>
<<playerOrgasm>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<case 'sub'>>
<<playerOrgasm>>
<</switch>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png" $scene.herArt>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'sex'>>
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $scene.herCostume>>
<<case 'dom'>>
Dutifully serving your tank, you kneel before her. <<=setup.getNpcName("npc_technician","formal")>> winks at you as you <<if $npc_technician.relationship.her_caged>>unlock her cage and <</if>>start sucking... while she jumps into a casual queue to "blow off steam." <br>
<br>
You "blow" and your <<=setup.getNpcName("npc_technician","formal")>> "blows off" more than steam as you are treated to a mouthful of her thin, but delicious lady cream... that you obediently share with her via a kiss.<br>
<br>
"@@.npc_technician;Mmm, I love tasting me on you...@@" She states with a smile, "@@.npc_technician;You really are the perfect heal-slut.@@" <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>She hooks a finger through your collar and pulls you in for another kiss.<<else>>She gently caresses the side of your face, her fingers tracing down around your neck.<</if>> "@@.npc_technician;MY perfect heal-slut.@@"
<<case 'neutral' ''>>
The two of you soon find your way into your bedroom, discovering convenient zippers in your sleek bodysuits that have you sharing an
<<if setup.checkItemTypeWorn("cage") && !$npc_technician.relationship.keyholder>>
enthusiastic, if frustrating, sixty-nine <<if $npc_technician.relationship.her_caged>>as both of your chastity devices remain securely locked in place throughout<</if>>.
<<else>>
enthusiastic sixty-nine, <<if $npc_technician.relationship.her_caged>>chastity devices unlocked <<elseif setup.checkItemTypeWorn("cage")>>your chastity device unlocked <</if>>as the two of you have a "new" competition of licking and sucking... a competition that ends in two winners.
<</if>>
<<case "sub">>
As she's been half-teasing all through the tournament so far <<=setup.getNpcName("npc_technician","first")>> slides under your desk and between your thighs.<br>
<br>
You gasp as you look down at your cosplaying cutie of a heal-slut slave,
<<if setup.checkItemTypeWorn("cage")>>
<<if !$npc_technician.relationship.keyholder>>
even locked up you are soon moaning at her teasing your thighs and fingering your behind...
<<else>>
your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> falls away as your subby slave gets to work on her prize.
<</if>>
<<else>>
as she flips up your skirt and gets to work...
<</if>>
<<if !setup.checkItemTypeWorn("cage") || $npc_technician.relationship.keyholder>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<=setup.getNpcName("npc_technician","first")>> eagerly switches off between slurping your <<getWordMyPenis false>> and licking your <<getWordVagina>> and, while still
<<elseif $player.body_ref.penis>>
<<=setup.getNpcName("npc_technician","first")>> eagerly goes to town on your <<getWordMyPenis false>>. While
<<else>>
<<=setup.getNpcName("npc_technician","first")>> eagerly sets to work eating out your <<getWordVagina>>. While
<</if>>
pressed for time, you have a very refreshing orgasm that manages to leave you invigorated and ready for the next round.
<<else>>
Locked up as you are, you can't actually cum but her efforts do manage to help you relax... as well as somehow turn your abounding horniness into enthusiasm for the next round...
<</if>>
<br><br>
You pull <<=setup.getNpcName("npc_technician","first")>> back up for a kiss, the two of you making out enthusiastically in your chair as you wait for the next round.
<</switch>>
<<else>>
The two of you step away from the computers to exchange massage. Even considering the steep (for her) heels of her costume you're baffled at how knotted up her feet and calves could be from sitting in front of a computer, but you sort that out and she returns the favour by dispelling the tension from your shoulders.
<</if>>
<<case 'cuddle'>>
You reply that you're already a bit excited and a "cooldown" would probably be better.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Cool down? I believe you mean cuddle down...@@" A few moments later the two of you and snuggling on the couch, your heart-rate coming down somewhat as you enjoy the feeling of being wrapped in her arms...
<<case 'quit'>>
You explain that just getting to the finals has you about wiped out, and you'd rather forfeit than try to push further and embarrass yourself.<br>
<br>
You can tell <<=setup.getNpcName("npc_technician","first")>> is disappointed but, as always, she is supportive first, helping you change out of your costume and then packing up to go.<br>
<br>
"@@.npc_technician;Hey, buck up, champ — just making the finals is an accomplishment, we can always come back and go for the big prize some other day.@@"<br>
<br>
You change out of your costume and help <<=setup.getNpcName("npc_technician","first")>> pack up and leave.
<</switch>>
<br><br>
<<if $scene.action == 'quit'>>
[<<moveTo "room_livingroom" "Back to your living room." 180>>]
<<else>>
There's a loud chime from the direction of your computer as your queue pops up.<br>
<br>
You take a deep breath — it's time to go for the big win...<br>
<br>
[<<moveTo "event_technician_advanced_hotties_tourn_6" "Once more unto the breach..." 1800>>]
<</if>>
</div>/*#
#desc: tourny championship round
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.win = setup.getTotalValue("gaming") >= 19>>
<<if $scene.win>>
<<setThreshold 'gaming' 'hotties' 'gaming_final'>>
<<else>>
<<switch $scene.role>>
<<case 'adv_heals'>>
<<removeItemSet "hotties_healer">>
<<case 'adv_range'>>
<<removeItemSet "hotties_range">>
<<case 'adv_melee'>>
<<removeItemSet "hotties_melee">>
<<case 'adv_tank'>>
<<removeItemSet "hotties_tank">>
<</switch>>
<<useClothSetPop 'tmp'>>
<</if>>
<<applyExperience 'gaming' 18 'skip' $INCOGNITO>>
<<applyFatigue 60>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png" $scene.herArt>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
As hard as the opening round was, the finals are on a whole other level.
<<switch $scene.herCostume>>
<<case "dom">>
You heal like you never have before, buoyed by <<=ps(setup.getNpcName("npc_technician","formal"))>> mix of orders and congratulatory references to you as her "@@.npc_technician;Good <<=setup.getBoyGirl($npc_technician)>>@@"
<<case "sub">>
You tank and <<=setup.getNpcName("npc_technician","first")>> heals like never before, working in unison, almost psychic in the way you predict the others actions. Small talk is kept to a minimum, sans the occasional whispers of "@@.pc;Good girl@@" or "@@.npc_technician;Thank you <<if $player.identify_as=="male">>Master<<elseif $player.identify_as=="female">>Mistress<<else>>Overseer<</if>>.@@" in one of the brief respites between matches.
<<case "neutral">>
You and <<=setup.getNpcName("npc_technician","first")>> operate like twin angels of death, hit and fading enemy teams with ruthless efficiency.
<</switch>>
<br><br>
Climbing through the single elimination bracket of the finals, you make it to the championship match against a pair of defending Goddesses — the game's term for those who have won a tournament and claimed the highest rank.<br>
<br>
Your opponents play perfectly, individual experts in total coordination with each other; but you and <<=setup.getNpcName("npc_technician","first")>> do one better, coming back from early pressure to turn the match into a grueling grind of attrition.<br>
<br>
You're so focused on the game itself and avoiding mistakes that you don't even notice the score or the clock until the final match ends... with a VICTORY! banner.<br>
<br>
[<<moveTo "event_technician_advanced_hotties_tourn_7" "Wait... we won?" 60>>]
<<else>>
The qualifier round was tough, but the finals are on a whole other level. You and <<=setup.getNpcName("npc_technician","first")>> put up a valiant effort but you just aren't quite good enough to compete with this quality of opponent, placing decently, but well off from the podium.<br>
<br>
The both of you sit back and sigh as the final match ends. "@@.npc_technician;Wow... that was tough!@@"<br>
<br>
You nod as you help her start packing up and then change out of your costume.<br>
<br>
"@@.npc_technician;Still, just making the finals is an accomplishment... and I think next time we'll get it.@@"<br>
<br>
You nod, unable to resist her optimism as she gives you a hug good-bye and skips off home.<br>
<br>
[<<moveTo "room_livingroom" "Back to your living room." 60>>]
<</if>>
</div>/*#
#desc: tourny win
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
/% TODOfuture, streamer numbers bump/events%/
<<set $player.flags.hotties_game.rank = 8>>
<<set $player.flags.hotties_game.win[$scene.herCostume] = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png" $scene.herArt>>
<div id="invframe" class="scrolltext">
You're so focused on the game it takes you several moments to process that the match is over and that you are champions... and thus "Goddess" ranked in-game...<br>
<br>
"@@.npc_technician;We did it, we won!@@" <<=setup.getNpcName("npc_technician","first")>> shouts, her exuberance breaking your trance as she pulls you to your feet for a hug while dancing around the living room to the tune of her enthusiastic chanting of "We Are the Champions." <br>
<br>
Finishing off with a dip, she
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
grins as the spark of dominance sneaks back into her expression. "@@.npc_technician;Hmm... Goddess <<=setup.getNpcName("npc_technician","last")>>... has a nice ring to it, but, no, I think I prefer killing Gods and just being your <<=setup.getNpcName("npc_technician","title")>>.@@" She pulls you back up to your feet. "@@.npc_technician;And you! This is just more proof that you are the most perfect, cutest, hottest, sexiest heal-slut there ever was! And you're MINE!@@"<br>
<br>
You blush and make out some more, <<=ps(setup.getNpcName("npc_technician","formal"))>> lips hungrily dominating each kiss as she hugs you tight, showing off appreciation of HER healslut by cuddling you into a puddle.
<<case 'neutral' ''>>
smiles, and then pulls you onto the couch for an extended snuggle-fest.
<<case 'sub'>>
smiles, leading you submissively to the couch where she cuddles and kisses you as you tell her how perfect of a subby heal-slut she was.
<</switch>>
<<else>>
almost kisses you before seeming to remember her manners and stepping away with a polite cough.<br>
<br>
"@@.npc_technician;Heh, sorry about that... just a bit excited, is all — I've been trying to get Goddess-rank for a while but could never find a good enough team... you're just the best.@@" You blush, nervously replying that she's pretty damn good herself.
<</if>>
<br><br>
"@@.npc_technician;Well, I should probably get going — you can keep the costume, though... you look so hella hot in it and, well... you deserve some sort of reward for our glorious victory!@@"<br>
<br>
She heads off and you collapse back onto the couch, still a bit jittery from that last match.<br>
<br>
[<<moveTo "room_livingroom" "Back to your living room." 60>>]
</div>/*#
#desc: advanced character unlock test
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.role>>
<<case 'tank'>>
The mission starts with a short story cutscene to set the stage. You and your healer, who you recognise as being the same character <<=setup.getNpcName('npc_technician', 'first')>> plays as, just with a more mundane outfit, have been cut off after a failed assault. Together you must fight your way through an enemy-held space station to reach an escape pod and re-unite with your allied forces.<br>
<br>
The fighting is close and messy as you work your way through corridors not much wider than your avatar. You are forced to use every skill and trick you have to keep your healer safe lest you die under the weight of constant swarming foes.<br>
<br>
Nearly to the end, you are about to enter a large chamber when your scanners go haywire, indicating a massive force is on the way.<br>
<br>
"Hurry, we can make it!" the NPC healer implores, pointing towards the escape pods at the far side of the room. Despite her plea, you hesitate; in the wide open room you'll be easily surrounded, and it will be nigh impossible to protect your healer if you fail to out-race the enemy hordes.<br>
<br>
On the other hand, it does look like quite a lot of foes, perhaps it would be better to risk the run as she asked, rather than attempt to ride things out in your current, defensible position.<br>
<br>
[<<moveTo "room_play_games_hotties_trial_pass" "Stand your ground and wait." 600>>]<br>
[<<moveTo "room_play_games_hotties_trial_fail" "Make a run for it." 600>>]
<<case 'dps'>>
You're on an infiltration mission to a secret facility where a stolen version of the cloning technology that produced your character is being used to churn out an evil army.<br>
<br>
What proceeds is your standard stealth'n'kill mission as you dodge through air vents to sneak through the facility, murdering as you go and disabling alarms.<br>
<br>
As you get deeper into the facility you start encountering other clones built off your same "structure," though wielding a variety of weapons rather than your dual-sword ninjaness.<br>
<br>
Nearing what you are certain has to be the end of the mission stealth goes out the window, enemies on permanent high alert as the mechanical voice of the evil scientist running the facility shouts booming commands over the intercom.<br>
<br>
Finally reaching the master control room the large vault-like doors slowly slide open. At this point it's certainly a trap but at the same time it looks like a real sweet set-piece battle as you stand there, swords drawn.<br>
<br>
[<<moveTo "room_play_games_hotties_trial_fail" "Attack head on." 600>>]<br>
[<<moveTo "room_play_games_hotties_trial_pass" "Look for another way." 600>>]
<<case 'heals'>>
Paired with a tank — the same character <<=setup.getNpcName('npc_technician', 'first')>> plays, but with less fancy armour — you are tasked with escorting <<if setup.getTotalValue("whoring") > 10>>and not your usual type of "escorting!" — <</if>>a group of refugees through dangerous territory.<br>
<br>
At first, things are simple. Your NPC tank takes most of the hits and is easily able to handle your foes leaving you to focus on dodging, keeping them up and tossing the occasional heal towards one of the refugees as you press forward as a group.<br>
<br>
As the mission rolls on things get harder and you are stretched to your limit keeping your tank up and the refugees healed — some of them are afflicted with permanent dots and the lower their health gets the slower they move and it is all you can do to keep the convoy from spreading out or delaying too much.<br>
<br>
Reaching a bottleneck your tank shouts "cover me!" and hops into a gun turret. The heavy front armour of the turret neutralises almost all damage coming in as they rake the oncoming enemy line with fire.<br>
<br>
Having finished topping up the refugees you spot another turret a short distance away. You could probably sprint over and turn the killing channel into a crossfire of death, but you would have to move out of range and abandon your tank to do it.<br>
<br>
[<<moveTo "room_play_games_hotties_trial_pass" "Stay with your tank." 600>>]<br>
[<<moveTo "room_play_games_hotties_trial_fail" "Head for the other turret." 600>>]
<<default>>
ERROR: unknown scene.role <<=$scene.role>>
<</switch>>
</div>/*#
#desc: fail advanced character unlock test
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 15 'very' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.role>>
<<case 'tank'>>
You're less than halfway across the docking bay when you start getting overwhelmed. You fight with everything you have as you try to push forward but there are just too many enemies, swarming from every direction.<br>
<br>
Cut off from your healer you can't even see her under the pile of foes as she is brought down, screaming for help. A few moments later you join her, MISSION FAILED appearing on screen.
<<case 'dps'>>
The door opens with a cloud of smoke and you charge in blind. You make your first two kills fast before the smoke clears but then you're in the crossfire kill zone of over a dozen armed clones.<br>
<br>
You put up a good fight, taking down at least half of them but in the end you're a bullet-riddled corpse as the words MISSION FAILED appear across the screen.
<<case 'heals'>>
Sprinting towards the other turret goes fine and you're relishing the somewhat novel feeling of bringing death instead of just healing, even though it feels a bit odd.<br>
<br>
It's looking like you made the right call as the combined firepower of you and your tank is cutting a deep swath through the enemy line, and then suddenly you are the only one firing.<br>
<br>
Looking towards the other turret you are horrified to see that a group of enemies has managed to circle around, dropping in from behind to ambush your tank. Lacking a clear shot you hop out of the turret to sprint to the rescue only for things to get worse. With nobody manning a turret the oncoming swarm rushes forward, overwhelming you just as you reach your battle-weary tank. Now truly surrounded the both of you soon fall, your spells of healing unable to recover from the damage your tank took whilst abandoned. MISSION FAILED appears across the screen.
<<default>>
ERROR: unknown scene.role <<=$scene.role>>
<</switch>>
<br><br>
<<printThought "Damn, this is tough!, maybe I should try a different approach?">><br>
<br>
[<<moveTo "room_play_games_hotties_trial" "Try again." 60>>]<br>
[<<moveTo "room_livingroom" "Exit out." 60>>]
</div>/*#
#desc: pass advanced character unlock test
#status: FINISHED 0.7.10.0
#ignore_spell: ult
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = (random(30) < (setup.getTotalValue("gaming") + .5*setup.getTotalValue("dexterity")))>>
<<if $scene.success>>
<<applyExperience 'gaming' 15 'very' $ALONE>>
<<else>>
<<applyExperience 'gaming' 15 'unbelievable' $ALONE>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.role>>
<<case 'tank'>>
Hunkering down in your defensive position, you make sure your healer is safely tucked behind you as the first wave of enemies come in.<br>
<br>
You establish a corridor of death, mowing down enemies by the dozens as their superior numbers are all but neutralised by your excellent positioning.<br>
<br>
<<if $scene.success>>
You're beginning to wonder if the onslaught will ever end only for there to be a temporary lull. Sensing that this is your chance you rush into the docking bay, running and gunning while your healer races behind.<br>
<br>
You're almost to the escape pod, laying down covering fire as you back away from the surging hordes.<br>
<br>
"@@.generic_female1;I'm in, hurry!@@" Your NPC healer shouts. Suddenly there is an explosion behind the enemy forces, a huge fireball traveling towards you. There's no time to get out of your mechsuit so you wedge yourself in front of the pod door to protect your healer from the oncoming flames.<br>
<br>
[<<moveTo "room_play_games_hotties_trial_pass_cutscene" "Cutscene time!" 300>>]
<<else>>
Despite the advantageous cover things are still tough and, though you pour every ounce of skill and talent into holding the line an ambusher enemy manages to get through and take out your healer. Momentarily distracted trying to save her you are soon surrounded, dying yourself as the words MISSION FAILED appear on screen.<br>
<br>
<<printThought "So close! A little more skill or luck and I swear I've got this!">><br>
<br>
[<<moveTo "room_play_games_hotties_trial" "Try again." 600>>]<br>
[<<moveTo "room_livingroom" "Exit out." 60>>]
<</if>>
<<case 'dps'>>
Prudently deciding against walking into the obvious trap you fall back, waiting in hiding as the door slides open, a cloud of smoke flowing out as several enemy clones creep forward.<br>
<br>
Dancing through the rafters you zip in and out, eliminating them one by one before finally venturing into the room itself.<br>
<br>
Here the battle is more pitched, at least a dozen clones with guns stressing your abilities to dodge from cover to cover and nail quick kills when you get the opening.<br>
<br>
<<if $scene.success>>
Noticing something odd in one of the lingering clouds of smoke, you fall back and flank, making a blind attack that draws blood. You look at the floor and the corpse of a new type of clone that looks enhanced with cybernetics, as well as the obvious "stealth" invisibility field.<br>
<br>
<<printThought "Tricksy...">><br>
<br>
As you glance at the corpse you get an interaction pop-up to "take the stealth generator." A wide smile spreads across your face as you confirm, ripping something off the corpse and then fading into the background, your new ability allowing you to massacre the remaining clones with ease.<br>
<br>
Just when you thought the room was clear, you spot another trio of shimmers. You fight a daring cat and mouse game with another three cyber-clones before a small door to the boss' inner lair opens.<br>
<br>
Walking in, you are hit by a stun field. The big bad launches into a monologue chiding you for killing your "sisters," then segues into an offer to join <<if $options.fem_all_women>>her<<else>>him<</if>> to lead an army of your kind to take over the world.<br>
<br>
To your delight, you regain full control partway through the speech. You kill <<if $options.fem_all_women>>her<<else>>him<</if>> before <<if $options.fem_all_women>>she<<else>>he<</if>> can even finish talking.<br>
<br>
Surprised that the mission hasn't concluded, you walk to the back of the room, where you find the empty vats that look to have been used for maturing the cyber-clones.<br>
<br>
Using the computer next to them, you are presented with a menu with two options — one for "enhancing" a clone for melee combat, the other for a full ranged-combat upgrade.<br>
<br>
A two-alternative menu pops up, a rotation pair of swords and a sniper rifle representing your choices.<br>
<br>
<<if $player.flags.hotties_game.adv_melee>>
[<<moveTo "room_play_games_hotties_trial_pass_cutscene" "Choose the Sniper Rifle." 60 "<<set $scene.melee=false>>">>]<br>
[@@.link_locked;You have already unlocked her advanced melee form.@@]
<<elseif $player.flags.hotties_game.adv_range>>
[@@.link_locked;You have already unlocked her advanced sniper form.@@]<br>
[<<moveTo "room_play_games_hotties_trial_pass_cutscene" "Choose the Swords." 60 "<<set $scene.melee=true>>">>]
<<else>>
[<<moveTo "room_play_games_hotties_trial_pass_cutscene" "Choose the Swords." 60 "<<set $scene.melee=true>>">>]<br>
[<<moveTo "room_play_games_hotties_trial_pass_cutscene" "Choose the Sniper Rifle." 60 "<<set $scene.melee=false>>">>]
<</if>>
<<else>>
On the edge of your seat the whole time you almost fall out of your chair when you are shot from behind, what looks like a cybernetically enhanced clone standing over your corpse before shimmering and going invisible.<br>
<br>
<<printThought "So close! A little more skill or luck and I swear I've got this!">><br>
<br>
[<<moveTo "room_play_games_hotties_trial" "Try again." 600>>]<br>
[<<moveTo "room_livingroom" "Exit out." 60>>]
<</if>>
<<case 'heals'>>
You're starting to feel a bit bored just standing next to your tank as she guns down enemies in the turret when there is a sudden flurry of action. Your wandering gaze pays off as you spot a squad of four enemies creeping down the cliff behind you, quickly switching to your attack spells to try to do some damage before they can execute their ambush.<br>
<br>
<<if $scene.success>>
Your first precise shot takes out one of the descending enemies and you manage to gun down a second before they reach the ground. Your tank hops out of the turret and you pop your ult, the added power allowing your tank to rapidly clean up the remaining pair of ambushers as you hop in the turret to hold back the line.<br>
<br>
Your tank jets across to the other turret and the two of you make quick work pushing back the remaining foes as the last of them scatter and flee once their ambush has failed.<br>
<br>
From there it's practically a cakewalk as you top up the refugees and watch them load into the transport. Scooped up in her arms you are carried in by your tank as the evacuation ship launches into the sky.<br>
<br>
[<<moveTo "room_play_games_hotties_trial_pass_cutscene" "Cutscene time!" 60>>]
<<else>>
DPSing is hard and though you pick off one of the enemies before they make it down the cliff the remaining trio proves too much. Hopping out of her turret to help, your tank makes swift work of the remaining three, but the gap in suppression fire means that now there are foes in amongst the refugees!<br>
<br>
That's about all she wrote as, though you try to recover, you are just unable to keep up with the damage coming in from so many directions. One by one the refugees are wiped out and the words MISSION FAILED appears before you and the tank have a chance to join them.<br>
<br>
<<printThought "So close! A little more skill or luck and I swear I've got this!">><br>
<br>
[<<moveTo "room_play_games_hotties_trial" "Try again." 600>>]<br>
[<<moveTo "room_livingroom" "Exit out." 60>>]
<</if>>
<<default>>
ERROR: unknown scene.role <<=$scene.role>>
<</switch>>
</div>/*#
#desc: cutscene for finishing hotties advanced unlock challenge
#status: FINISHED 0.7.10.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'gaming' 'hotties' 'advanced_mode'>>
<<switch $scene.role>>
<<case 'dps'>>
<<if $scene.melee>>
<<set $player.flags.hotties_game.adv_melee = true>>
<<else>>
<<set $player.flags.hotties_game.adv_range = true>>
<</if>>
<<case 'tank'>>
<<set $player.flags.hotties_game.adv_tank = true>>
<<case 'heals'>>
<<set $player.flags.hotties_game.adv_heal = true>>
<</switch>>
<<set $player.flags.hotties_game.character_level = 'advanced'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.role>>
<<case 'tank'>>
The screen fades to black as your healer cries out and the fire washes over you. Several seconds pass in darkness before you resume in a first-person view, blinking and looking around what seems to be a hospital room.<br>
<br>
Looking to one side you see your healer in "street" clothes waiting nervously. It's hard to be sure, but the perspective is strange, as if the bed was much larger than you would imagine it should be.<br>
<br>
"@@.generic_female1;She's awake!, She's awake!@@" Your healer calls out, jumping up in excitement and reaching out to further confirm that the bed is abnormally large. "@@.generic_female1;Oh, I was so worried you wouldn't make it. I'm sorry I didn't heal you better I—@@"<br>
<br>
Your character reaches out to comfort her and the reason for the oversized bed is suddenly clear — rather than a human arm you reach out with what looks like the arm of your mech.<br>
<br>
A doctor walks into the room and explains your situation.<br>
<br>
"@@.generic_female1;Unfortunately, the heat of the plasma was such that you were literally fused into your mechsuit. It protected you from what would have otherwise been certain death, but as it stands, there is no way to remove it without killing you in the process. You should otherwise make a full recovery but... you are literally bound into your armour. I'm sorry.@@"<br>
<br>
The camera switches to a third person perspective and pans up to show your cyborg-mech body lying in the oversized bed, only your bandaged face visible as "human," peeking up from the large robotic frame.<br>
<br>
Your healer crawls across the bed to hug you as you reach one large arm around to return the embrace. "@@.generic_female1;I promise to stay with you forever, you saved my life and all before I could tell you the truth... I — I love you, I've always loved you, I—@@"<br>
<br>
Smiling up, your character cuts her off with a kiss and a soft "@@.pc;I know.@@"<br>
<br>
The cutscene fades to a spinning 3d view of your new model, a more streamlined mechsuit, looking in some places like a full-body steel cage, scorched from your accident with a retractable helmet covering your partially cyborg face.<br>
<br>
"Honour-Bound, unlocked!"
<<case 'dps'>>
<<if $scene.melee>> /* inspired by: hotties_cyber_ninja */
You've enjoyed playing the melee role so far so you opt to stick with swords. You watch a cutscene wherein you step into the augmentation vat. Liquid floods in and robotic arms go to work as you are enhanced with cybernetic limbs for greater speed and power, as well as an alien-looking helmet and integration of the stealth kit.<br>
<br>
You step out of the vat enhanced and the cutscene fades to a spinning 3d view of your new skin. An armoured cybernetic warrior woman with dual swords.<br>
<br>
"Temperance, Protector of the Meek, unlocked!"
<<else>> /* a mix of MDK and samus */
You've seen how much ass <<=setup.getNpcName('npc_technician', 'first')>> kicks as a sniper so you decide to join in on the fun. A liquimetal armour grows over your body, culminating in a sleek, pointed helmet that integrates your new sniping weapon, an additional cannon built into one arm as the other sprouts a blade for melee backup.<br>
<br>
You step out of the vat enhanced and the cutscene fades to a spinning 3d view of your new skin. A sleek, deadly cyborg, armed to the teeth and ready for anything.<br>
<br>
"Divine Temperance, unlocked!"
<</if>>
<<case 'heals'>>
Arriving back at home base you and your tank are congratulated for your success. One of the heads of your holy order even makes an appearance to bless you and promote you to the highest ranks of priestess, and with it new attire and a new title.<br>
<br>
Swelling with pride, you watch as you receive the holy cuffs of your order. The awards ceremony fades and an image of your "new" avatar rotates on screen.<br>
<br>
Keeping the same feminine appearance as you are accustomed, your new outfit trades the gossamer fabric for a more harsh design composed mainly of belts and straps. You are getting a distinct "bondage" styling vibe.<br>
<br>
"Chastity the Devoted, Unlocked!"
<<default>>
ERROR: unknown hotties_game.role <<=$payer.flags.hotties_game.role>>
<</switch>>
<br><br>
Reading the description of your upgraded and new abilities, you're psyched to try out the newly-unlocked character, but you're also bit jittery and decide to take a break.<br>
<br>
[<<moveTo "room_livingroom" "Exit the Game." 60>>]
</div>/*#
#desc: choose which advanced trial to attempt
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hotties.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.hotties_game.adv_heal>>
[@@.link_locked;You have already unlocked Chastity's advanced form.@@]<br>
<<else>>
[<<moveTo "room_play_games_hotties_trial" "Attempt Chastity's trial." 600 "<<set $scene.role='heals'>>">>]<br>
<</if>>
<<if $player.flags.hotties_game.adv_melee && $player.flags.hotties_game.adv_range>>
[@@.link_locked;You have already unlocked Temperance's advanced forms.@@]<br>
<<elseif $player.flags.hotties_game.adv_melee>>
[<<moveTo "room_play_games_hotties_trial" "Attempt Temperance's trial again to unlock her ranged form." 600 "<<set $scene.role='dps'>>">>]<br>
<<elseif $player.flags.hotties_game.adv_range>>
[<<moveTo "room_play_games_hotties_trial" "Attempt Temperance's trial again to unlock her melee form." 600 "<<set $scene.role='dps'>>">>]<br>
<<else>>
[<<moveTo "room_play_games_hotties_trial" "Attempt Temperance's trial." 600 "<<set $scene.role='dps'>>">>]<br>
<</if>>
<<if $player.flags.hotties_game.adv_tank>>
[@@.link_locked;You have already unlocked Honour's advanced form.@@]<br>
<<else>>
[<<moveTo "room_play_games_hotties_trial" "Attempt Honour's trial." 600 "<<set $scene.role='tank'>>">>]<br>
<</if>>
[<<moveTo "room_play_games_hotties" "Back to the main menu." 600 "<<set $scene.role='tank'>>">>]
</div>/*#
#desc: prepare technician to be keyholder
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.postponeTask = $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks.bed_heels_photo.finished>>
<<if $scene.postponeTask>>
<<postponeTask 'bed_heels_photo' 1>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.postponeTask>>
Knowing how <<=setup.getNpcName("npc_technician","first")>> can get when she's on a roll you remember the photoshoot task you were assigned by <<=setup.getNpcName("npc_manager","formal")>>. You fire off a quick text telling her you got caught away from your flat, but that you promise you'll send her a picture Sunday night.<br>
<br>
You nervously wait for a response, but to your slight surprise it is just a neutral "@@.npc_technician;see that you do.@@"<br>
<br>
You look up to find <<=setup.getNpcName("npc_technician","first")>> peering over your shoulder. "@@.npc_technician;Bed heels? IS that your secret?... Nope, still crazy, I'll stick to being a flats girl.@@"<br>
<br>
You chuckle at your friend's eternal battle against heels and nod for her to get started with things.<br>
<br>
<</if>>
"@@.npc_technician;Alright,@@" <<=setup.getNpcName("npc_technician","first")>> states, straightening up a little taller. "@@.npc_technician;I've been thinking about the whole keyholder thing and, well... if I learned anything in school it was that you can never be TOO prepared for a test. So... let's start with you telling me EVERYTHING about <<=setup.getNpcName("npc_manager","other")>>. If I'm going to prove myself to her I need to know what she wants, how she runs things, and how she thinks.@@"<br>
<br>
You gulp, all of the things that have happened between you and <<=setup.getNpcName("npc_manager","formal")>> replaying in your mind's eye... you recall your contract, specifically the NDA and how you aren't supposed to tell anyone about what happens at work. Yet... that can't really count if <<=setup.getNpcName("npc_manager","formal")>> is offering up your key... right?<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_2" 'Tell <<=setup.getNpcName("npc_technician","first")>> everything.' 10800 "<<set $scene.tell=true>>">>]<br>
[<<moveTo "event_technician_discuss_keyholder_2" 'Try and convince her that things will be fine and just have a normal snuggle session together.' 60 "<<set $scene.tell=false>>">>]
</div>/*#
#desc: tell technician about manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.tell>>
<<set $npc_technician.flags.knowTruth = true>>
<<set $player.timebased.fatigue = $player.timebased.fatiguemax/2>>
<<applyStress -10>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.tell>>
Once you start talking about your experiences since becoming a <<if $fetish.sissy>>SISSI <</if>>Secretary it's hard to stop — especially because <<=setup.getNpcName("npc_technician","first")>> proves to be the best active listener you've ever met. Even as your story has her alternating between shock, arousal, horror, and excitement, she remains totally focused on you. She comforts you when necessary, quiet when not, and always taking notes... well, notes and diagrams and what you're pretty sure is a stat sheet, complete with estimated ability scores. <<printThought "Wait... is that a feat tree?">><br>
<br>
<<printThought "Wow is my girlfriend a nerd...">><br>
<br>
By the time you run out of steam and arrive back at the present <<=setup.getNpcName("npc_technician","first")>> has covered dozens of pages and the both of you are exhausted. Unburdening yourself to your close friend may have relieved some of your mental stress, but it has been physically draining. As you struggle to keep your eyes open to make the trip home she stands up and bars the door.<br>
<br>
"@@.npc_technician;No, it isn't safe for you to head home like this... plus we haven't even had any time to practice! No, I think you should spend the night, here, with me... and then in the morning...@@"<br>
<br>
Realising what she's just said her voice trails off and she bites her lip nervously. "@@.npc_technician;I mean, if you want, like... I know the bed isn't all that large but you can have that and I'll just sleep on the couch and...@@"<br>
<br>
<<printThought "Uh-oh, she's babbling...">><br>
<br>
[<<moveTo "event_technician_discuss_keyholder_3" 'Kiss your girlfriend to shut her up and join her in bed.' 300 "<<set $scene.leave=false>>">>]<br>
[<<moveTo "event_technician_discuss_keyholder_3" 'Thank her for the offer but reiterate that you need to go home.' 600 "<<set $scene.leave=true>>">>]
<<else>>
You try to assuage <<=ps(setup.getNpcName("npc_technician","first"))>> concerns but assuring her that everything will be fine.<br>
<br>
You can tell that she doesn't quite buy it but it is late and you're both tired from the game. It ends up being a low enough difficulty challenge to talk her into joining you on the couch.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: spend night w/npc_technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.leave>>
<<decrementEmotion 'affection' 'npc_technician' 2>>
<<else>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.leave>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.leave>>
It hurts you to do it but you manage to convince <<=setup.getNpcName("npc_technician","first")>> that you really do need to get home. She is adamant about calling you a cab and you cannot find the strength to argue. She gives you a welcome kiss goodbye but you further regret your decision as you almost pass out on the short ride home. Making it back up to your flat without further incident, you stumble through the door.<br>
<br>
[<<moveTo "room_foyer" 'Home' 300>>]
<<else>>
Before <<=setup.getNpcName("npc_technician","first")>> can spin any further out of control you pounce on her, lips first. The kiss shuts her up and your hands pull her close. Soon she is melting into your grasp. The two of you stumble across the small apartment and shed your clothes before tumbling into her bed.<br>
<br>
Naked and wrapped in each other's arms fatigue soon creeps in, kisses coming slower until your eyelids get too heavy to hold up and you fall asleep; your final sight her face smiling back at you.<br>
<br>
<<if $now.getUTCHours() < 7>>
<<set _morning = setup.setNextDate($now, 0, 7, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 7, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_technician_discuss_keyholder_4" 'Sleep.' _timeToMorning "<<set $player.timebased.fatigue = 0>>">>]<br>
<</if>>
</div>/*#
#desc: wake up next to technician
#status: RELEASED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily = {}>>
<<set $scene = {}>>
<<addItemSet "maid_basic_technician_black">>
<</if>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<set $player.cutscene.lockinventory = true>>
<<moveTo "event_technician_discuss_keyholder_5">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You wake up early and blink in surprised confusion. This isn't your bed and that's... that's <<=setup.getNpcName("npc_technician","first")>>... laying next to you... asleep... snoring loudly.<br>
<br>
Recalling that she isn't exactly a "morning person," as well as the whole task of helping her prepare for tommorow's meeting with <<=setup.getNpcName("npc_manager","formal")>>, you shimmy out of bed and think about what to do...<br>
<br>
<<printThought "Hmm, she obviously has a bit of a thing for maids... maybe if I dressed up and made her a nice breakfast in bed?">><br>
<br>
A glance at her as she turns over in her sleep confirms that she remains out like a log, but you still tiptoe carefully over to her closet where, amongst her other costumes, you find a maid outfit.<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_5" '"Borrow" her outfit and go see about breakfast.' 300 "<<wearItemSet 'maid_basic_technician_black'>><<set $player.cutscene.lockinventory=true>>">>] <<hint $options "You could also wear a maid outfit of your own, if you have such with you.">>
</div>/*#
#desc: cook technician breakfast
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 1200)>>
<<set $scene.herMaidOutfit = setup.checkItemWorn('maid_uniform_technician_black') && setup.checkItemWorn('maid_uniform_apron_technician') && setup.checkItemWorn('maid_headdress_technician')>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> kitchen.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.herMaidOutfit>>
Changing into her maid costume you head for the kitchen.
<<else>>
Well prepared with a maid outfit of your own you get dressed and head into the kitchen.
<</if>>
<br><br>
One small apartment kitchen is much like another but it seems like <<=setup.getNpcName("npc_technician","first")>> eats in more than you do which means you are able to find the requisite supplies to make a nice breakfast and, most important of all, a cup of coffee.<br>
<br>
<<switch $player.flags.work_coffee.coffee_skill>>
<<case 0>>
Not wanting to screw things up you go for a nice simple cup of coffee...
<<case 1 2 3>>
You use what you've learned making coffee at work to put together a nice strong cup of coffee...
<<case 4 5 6>>
You brew up a quality cup of coffee...
<<case 7 8 9>>
You employ all of your skills to make a perfect cup of coffee...
<<case 10 11>>
If you had the equipment and materials you'd be tempted to make a Cofferasque... but she doesn't have nearly enough types of milk, so you settle for "merely" a perfect cup...
<<default>>
ERROR, unexpected player.flags.work_coffee.coffee_skill <<=$player.flags.work_coffee.coffee_skill>>
<</switch>>
Before discovering that <<=setup.getNpcName("npc_technician","first")>> appears to be out of cream.
<<if $player.body_ref.milkProduction > 0>>
<<if $player.timebased.milking.milk_supply > 25>>
Your breasts are feeling pretty full and you consider adding a few "special" squirts to her hot cup of joe...<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_5a" 'Add some of your special milk.' 300 "<<set $scene.milk = true>>">>]<br>
[<<moveTo "event_technician_discuss_keyholder_5a" 'Just take things into her bedroom as is.' 300 "<<set $scene.milk = false>>">>]
<<else>>
<<printThought "Hmm, if only I wasn't so drained, I could make her coffee extra special with some milk.">><br>
<br>
You just arrange the steaming cup with toast and eggs on a tray. You take a deep breath and adjust your skirt before heading back to the bedroom.<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_6" 'Continue.' 180>>]
<</if>>
<<else>>
Unfortunately, there isn't much you can do about it so you arrange the steaming cup with toast and eggs on a tray. Adjusting your skirt, you take a deep breath and head back to the bedroom.<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_6" 'Continue.' 180>>]
<</if>>
</div>/*#
#desc: add milk to technician coffee
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.milk>>
<<set $player.timebased.milking.milk_supply -= 25>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> kitchen.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.milk>>
Pulling out a breast, you aim it over <<=ps(setup.getNpcName("npc_technician","first"))>> fresh coffee and give a few squirts. You give things a stir to make sure the fatty milk is well blended before fixing your top and heading into the bedroom.
<<else>>
Deciding against adding milk to <<=ps(setup.getNpcName("npc_technician","first"))>> morning coffee, you head into the bedroom.
<</if>>
<br><br>
[<<moveTo "event_technician_discuss_keyholder_6" 'Continue.' 180>>]
</div>/*#
#desc: enter technician's bedroom with breakfast
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png">>
<div id="invframe" class="scrolltext">
Stepping into the bedroom, tray in hand, you look down at <<=setup.getNpcName("npc_technician","first")>>. She is utterly naked and sprawled across the bed, legs spread to display
<<if $npc_technician.relationship.her_caged>>
her caged <<getWordPenis false>>.
<<else>>
her half hard <<getWordPenis false>> draped over her thigh.
<</if>>
<br><br>
You place the tray of breakfast on the nightstand and carefully lean over to wake Sleeping Beauty with a kiss...<br>
<br>
Only... it seems that Sleeping Beauty is a bit more sound of a sleeper, barely even moving as your lips press against hers. You glance over at the trio of alarm clocks on her nightstand and sigh. It looks like waking her up may be a bit of an effort.<br>
<br>
<<printThought "Hmm... looks like I need to take a more aggressive tactic...">><br>
<br>
[<<moveTo "event_technician_discuss_keyholder_7" 'Crawl between her legs and wake her up sensuously with your tongue...' 300 "<<set $scene.naughty = false>>">>]<br>
[<<moveTo "event_technician_discuss_keyholder_7" 'Maybe it would be good practice for her if you were a bit naughty?' 300 "<<set $scene.naughty = true>>">>]
</div>/*#
#desc: wake up technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.naughty>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.naughty>>
With a mischievous grin, you dart back into the kitchen to fill a glass with cold water.<br>
<br>
Standing at the side of the bed, you slowly tilt the glass over until the water trickles down right onto <<=ps(setup.getNpcName("npc_technician","first"))>> face.<br>
<br>
"@@.npc_technician;Pffbbbb, what, huh!?@@" She shouts, sputtering and sitting up with a start. Her gaze turns up towards you as you watch her piece together what just happened.<br>
<br>
You bite your lip and try to look as innocent as possible as you lift the tray of breakfast and offer it to her.<br>
<br>
"@@.npc_technician;Why you little brat...@@" She says with mock seriousness, even as her <<if $npc_technician.relationship.her_caged>><<getWordPenis false>> strains within its prison at the <<else>>already hard <<getWordPenis false>> twitches<</if>> at the sight of your outfit. "@@.npc_technician;Well... give that breakfast here. After this... I think it is time I start practicing for tomorrow. You've already proven yourself sorely in need of punishment...@@"
<<else>>
Moving to the foot of the bed, you crawl between <<=ps(setup.getNpcName("npc_technician","first"))>> legs and <<if $npc_technician.relationship.her_caged>>uncage her before you <</if>>wrap your lips around her hard member.<br>
<br>
Hands resting on her thighs you suck with
<<if setup.getTotalValue("oral") > 10>>
all of your considerable skill.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
as much skill as you can muster.
<<else>>
what skill you have.
<</if>>
<</if>>
Still asleep, she mumbles something and her hips slightly hump for a few minutes before the continued work of your tongue draws her slowly back to consciousness.<br>
<br>
"@@.npc_technician;Mmm, yes, you confirm the critical hit...@@" She mumbles as her eyes flutter open and she looks down at you.<br>
<br>
"@@.npc_technician;Mmmm, what a wonderful dream... wait... you're still, this is—@@" You respond to her growing realisation with a final slurp that has her cum right into your mouth. She shudders and moans as you
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
eagerly savour every drop.
<<else>>
luxuriously let it linger in your mouth.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
savour it for a moment before swallowing.
<<else>>
quickly swallow it rather than make a mess.
<</if>>
<</if>>
<br><br>
She's still speechless as you look up at her from beside her slowly drooping <<getWordPenis false>> and remark that "@@.pc;Breakfast is on the nightstand.@@"<br>
<br>
Her expression blossoms into a smile. "@@.npc_technician;Oh aren't you just the cutest maid-slave! Now pass me that tray, I'm starving!@@"
<</if>>
<br><br>
[<<moveTo "event_technician_discuss_keyholder_8" 'Wait for her to eat.' 600>>]
</div>/*#
#desc: technician eats breakfast
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> eagerly starts in on breakfast, looking up at you as she takes the first sip of coffee.<br>
<br>
<<switch $player.flags.work_coffee.coffee_skill>>
<<case 0>>
She frowns. "@@.npc_technician;Well... you made an attempt.<<if $player.flags.maidcafe.times_worked > 0>> Guess there's a reason you're just a waitress rather than back of the house.<</if>>@@"
<<case 1 2 3>>
She shrugs. "@@.npc_technician;Decent effort for a first timer.<<if $player.flags.maidcafe.times_worked > 0>> You should probably stick to maidtressing though.<</if>>@@"
<<case 4 5 6>>
She smiles. "@@.npc_technician;Hey, this is pretty good! <<if $player.flags.maidcafe.times_worked > 0>> You could consider working back of the house... but you're so cute... no, maidtress is a much better role!<</if>>@@"
<<case 7 8 9>>
She smiles wide. "@@.npc_technician;This is delicious! As good as anything I've had at Cafe Newtype!@@"
<<case 10 11>>
Her expression is briefly euphoric. "@@.npc_technician;This is delicious!<<if $player.flags.maidcafe.times_worked > 0>> If you weren't so cute in a maid outfit I'd say your skills were wasted just waiting on customers!<</if>>@@"
<<default>>
ERROR, unexpected player.flags.work_coffee.coffee_skill <<=$player.flags.work_coffee.coffee_skill>>
<</switch>>
Taking another sip she seems to think for a moment.
<<if $scene.milk>>
"@@.npc_technician;Huh, I thought I was out of milk, and this tastes a little...@@" her voice trails off as she looks up at you... or, more specifically, your breasts. "@@.npc_technician;Oh, my! You taste delicious!@@" She states with a smile and another hearty sip.
<<else>>
"@@.npc_technician;Pity I was out of milk@@" she states as she continues to sip her coffee.
<</if>>
<br><br>
You wait for her to finish eating and then take the tray to the kitchen. She follows, her <<if $npc_technician.relationship.her_caged>>caged <<else>>hard<</if>><<getWordPenis false>> swaying with each step.<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_9" 'Be a good maid and do the dishes.' 600 "<<set $scene.dishes=true>>">>]<br>
[<<moveTo "event_technician_discuss_keyholder_9" 'Point out that since you cooked, she should clean.' 600 "<<set $scene.dishes=false>>">>]
</div>/*#
#desc: technician has you do dishes
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.dishes>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.dishes>>
You dutifully head for the sink and start cleaning only for her to come up behind you.
<<else>>
You put the dishes down in the sink and step away for her to work only for her to frown and press you up against the sink.
<</if>>
Her hard<<if $npc_technician.relationship.her_caged>>,caged<</if>> <<getWordPenis false>> burrows under your skirts. Grabbing you by the hair she pulls your head back and whispers in your ear. "@@.npc_technician;That's a good maid. You live to serve. Isn't that right, slave?@@"<br>
<br>
You moan submissively.<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_10" 'Finish the dishes.' 600>>]<br>
[<<moveTo "event_technician_discuss_keyholder_quit" 'This is too much, go home.' 60>>]
</div>/*#
#desc: quit technician morning training
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItemSet 'maid_basic_technician_black'>>
<<if $scene.herMaidOutfit>>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You step away and meekly state that you'd like to leave.<br>
<br>
Her dominant facade melts in an instant as she looks at you with concern. "@@.npc_technician;I'm so sorry! Did I do something wrong? It's just... after all the stories you told me of <<=setup.getNpcName("npc_manager","other")>> and how controlling she is... well, I thought I needed to practice being a bit more stern if I'm to have any chance of impressing her.@@"<br>
<br>
You explain that things are fine and that she will surely do great, it's just that you're feeling really tired and want to go home.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> sighs, but helpfully collects your clothes as you get changed and head home.<br>
<br>
[<<moveTo "room_foyer" 'Home' 600>>]
</div>/*#
#desc: post-dishes training
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 20>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You quickly scrub the dishes as <<=setup.getNpcName("npc_technician","first")>> grinds against you, groping your body and nibbling at your ear. She whispers what a "@@.npc_technician;Good <<=setup.getBoyGirl($npc_technician)>>@@" you are, and how much she's going to enjoy being your keyholder.<br>
<br>
You both are breathing heavy by the time the dishes are dry and, after spinning you around to share an aggressive kiss, she pushes you to the floor.
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Unlock me, now. I know you're still stuck until I can earn your key but this is torture and I need you to take the edge off so I can clear my head.@@"
<<elseif $scene.naughty>>
"@@.npc_technician;Come on, then. Helping me take the edge off would be a good start to making up for how rudely you woke me up.@@"
<<else>>
"@@.npc_technician;I know you just ate but... I'm still way too distracted. Be a dear and help me take the edge off.@@"
<</if>>
<br><br>
[<<moveTo "event_technician_discuss_keyholder_11" 'Do as she commands.' 600>>]<br>
[<<moveTo "event_technician_discuss_keyholder_quit" 'This is too much, go home.' 60>>]
</div>/*#
#desc: post-dishes blowjob
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
You remove her cage and she gasps in relief, springing to full size before grabbing your head and pulling you in.
<<else>>
You open your mouth and she impatiently grabs your head to pull you in.
<</if>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Your lips part, swallowing her to the hilt, lips and tongue working in concert as you wink up at her.
<<else>>
You wrap your lips around her magnificence and lean forward until your nose is pressed against her.
<</if>>
"@@.npc_technician;Show off!@@" She jokes only for you to bob your head and turn her words into a moan.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
She may be too big for you to take all the way but that doesn't stop you from trying, pushing as far as you can while fighting down your gag reflex.
<<else>>
Your lips part as you lick and suck up and down her shaft.
<</if>>
"@@.npc_technician;Mmmm, that's the ticket...@@" she moans.
<</if>>
<br><br>
Her fingers brush through your hair as you worship, lick, and suck. It isn't long before she tenses, her voice dropping as she whispers "@@.npc_technician;Almost there...@@" and then fills your mouth with her
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
delectable
<<else>>
tasty
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
strangely alluring
<<else>>
mild
<</if>>
<</if>>
girl cream.<br>
<br>
You barely have a chance to catch it before she's pulling you to your feet, leaning in for a passionate kiss that sees your tongues dancing. Your "prize" is swapped back and forth, the embrace only broken when she comes up for air.<br>
<br>
"@@.npc_technician;Mmmm, thanks. A lovely dessert to cap off a tasty breakfast... now, to training!@@"<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_12" 'Training?' 600>>]<br>
[<<moveTo "event_technician_discuss_keyholder_quit" "Actually, you'd like to head home." 60>>]
</div>/*#
#desc: post-dishes training
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
Fetching a crop <<=setup.getNpcName("npc_technician","first")>> sets to work with as stern an expression as she can muster. Taking a cue from your outfit, she has you cleaning her flat from top to bottom, correcting every mistake as she closely supervises you the entire time. She occasionally asks you further questions about <<=setup.getNpcName("npc_manager","formal")>> or quizzes you on proper slave protocol.<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_13" 'Do the best you can.' 1200 "<<set $scene.clean=true>>">>]<br>
[<<moveTo "event_technician_discuss_keyholder_13" "Be a naughty maid." 2400 "<<set $scene.clean=false>>">>]
</div>/*#
#desc: post-dishes cleaning
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.clean>>
<<applyExperience 'submission' 13 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 10 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.clean>>
You play the perfect obedient maid, cleaning, dusting and, tidying up <<=ps(setup.getNpcName("npc_technician","first"))>> flat.<br>
<br>
"@@.npc_technician;Now aren't you just the perfect thing! I don't know whether to be happy to have such a lovely pet... or frustrated that you've given me hardly any opportunity to practice my dominance!@@"
<<else>>
You play the forgetful maid, "accidentally" dropping things and making several messes that force you to spend even longer cleaning. Your thighs and bottom are quite red from the crop by the time her flat is actually cleaned up.<br>
<br>
"@@.npc_technician;Well I guess if I needed practice in applying corrective measures, I've certainly gotten it! I'm not sure if that means you deserve a reward or more punishment...@@"
<</if>>
<br><br>
[<<moveTo "event_technician_discuss_keyholder_14" 'Suggest that maybe a spanking is in order?' 300 "<<set $scene.reward=false>>">>]<br>
[<<moveTo "event_technician_discuss_keyholder_14" "Ask for a reward for all your hard work." 300 "<<set $scene.reward=true>>">>]<br>
[<<moveTo "event_technician_discuss_keyholder_quit" "Say you'd like to head home." 60>>]
</div>/*#
#desc: post-dishes cleaning
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.reward>>
"@@.npc_technician;A reward? Hmm... yes... how about a nice spanking? Mmm, I'm already imagining how cute that tush would look with my hand-print on it. Come on, over my knee!@@"
<<else>>
"@@.npc_technician;Spanking? Oh, yes, that sounds like a great idea! Come on, over my knee!@@"
<</if>>
She takes a seat and the couch and motions you over.<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_15" 'Get in position.' 300>>]<br>
[<<moveTo "event_technician_discuss_keyholder_quit" "Leave instead." 60>>]
</div>/*#
#desc: technician spanking
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You bend over <<=ps(setup.getNpcName("npc_technician","first"))>> lap as she flips up your skirt <<if setup.checkItemTypeWorn("panties")>>and pulls down your panties <</if>>to expose your bottom.<br>
<br>
"@@.npc_technician;Mmmm, you have such a cute butt! I don't know which is better: spanking it, ogling it... or fucking it.@@" As she talks, she caresses your bottom before following up with a quick slap. "@@.npc_technician;Hmm, probably fucking it, but the other two are a hoot as well! I guess just about everything about you is some sort of seductive delight...@@"<br>
<br>
SMACK! She lands another, harder blow on your bottom. "@@.npc_technician;That's for distracting me with your cuteness! Oh and it left a hand-print! That is so hot!@@" She pauses for a moment. "@@.npc_technician;Gah, almost happened again! I need to focus if I'm going to impress your boss. Back to the spanking!@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_technician;Now, let's review your performance today...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_technician;THAT is for giving me so little time to prepare! I mean, that's only tomorrow!@@"<br>
<br>
<<if $scene.herMaidOutfit>>
SMACK!<br>
<br>
"@@.npc_technician;THAT was for stealing my maid costume! Even if you do look so fucking sexy in it.@@"<br>
<br>
<<if setup.getEffectiveBreastSize() > 4>>
SMACK!<br>
<br>
"@@.npc_technician;But THAT is for probably stretching it out with your big, sexy tits!@@"<br>
<br>
<</if>>
<</if>>
<<if $player.flags.work_coffee.coffee_skill < 4>>
SMACK!<br>
<br>
"@@.npc_technician;And THAT is for making me a sub-standard cup of coffee!<<if $scene.milk>>... even if it was nice and creamy!<</if>>@@"<br>
<br>
<</if>>
<<if $scene.naughty>>
SMACK!<br>
<br>
"@@.npc_technician;And THAT is for dumping water on me to wake me up, so naughty!@@"<br>
<br>
<</if>>
<<if !$scene.dishes>>
SMACK!<br>
<br>
"@@.npc_technician;And THAT is for trying to shirk your responsibilities and have me do the dishes!@@"<br>
<br>
<</if>>
<<if !$scene.clean>>
SMACK!<br>
<br>
"@@.npc_technician;And THAT is for doing such an inefficiently, sloppy job cleaning!@@"<br>
<br>
<</if>>
SMACK!<br>
<br>
"@@.npc_technician;And THAT is for needing to be supervised while you were cleaning my flat!@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
SMACK!<br>
<br>
"@@.npc_technician;And THAT is for locking me up in a cage!@@"<br>
<br>
<</if>>
<<if $scene.reward>>
SMACK!<br>
<br>
"@@.npc_technician;And, finally, THAT is because you asked for this spanking you naughty masochist!@@"
<<else>>
SMACK!<br>
<br>
"@@.npc_technician;And, finally, THAT is because you're a naughty masochist who needs <<=setup.getHisHer($npc_technician)>> punishments!@@"
<</if>>
<br><br>
She's breathing a bit hard, her hand caressing your reddened ass<<if setup.checkItemTypeWorn("plug")>> and teasing your plug<</if>>.<br>
<br>
"@@.npc_technician;Whew! Spanking is a bit of work! Maybe I should get a dragon's tongue flogger to save my hand, it's a bit sore!@@"<br>
<br>
She helps you up to your feet and then pats the couch cushion beside her. "@@.npc_technician;Here, take a seat!@@" She says with a smile.<br>
<br>
Your bottom is a bit sore from the spanking, but she is smiling up at you so nicely...<br>
<br>
[<<moveTo "event_technician_discuss_keyholder_16" 'Take a seat.' 300>>]<br>
[<<moveTo "event_technician_discuss_keyholder_quit" "Say you need to head home." 60>>]
</div>/*#
#desc: technician aftercare
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.puntCosplay = false>>
<<if $currentTasks.hasOwnProperty('cosplay_convention_first') && !$currentTasks.cosplay_convention_first.finished>>
<<postponeTask 'cosplay_convention_first' 7>>
<<set $scene.puntCosplay = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('cosplay_convention') && !$currentTasks.cosplay_convention.finished>>
<<postponeTask 'cosplay_convention' 7>>
<<set $scene.puntCosplay = true>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You wince slightly as you sit down next to <<=setup.getNpcName("npc_technician","first")>>, your bottom still sensitive from the spanking. She wraps her arm around your shoulder to pull you closer.<br>
<br>
"@@.npc_technician;You're so wonderful, you know that? And that's why I'm so, so determined to do well tomorrow!@@" You snuggle back, cuddling for a few minutes before she kisses you on the side of the head and whispers in your ear.<br>
<br>
<<if $scene.puntCosplay>>
"@@.npc_technician;So I know we were planning on hitting up the cosplay convention... but I really want to nail down my preparations for monday so... postpone until next week?@@"<br>
<br>
You nod, you can tell how seriously <<=setup.getNpcName("npc_technician","first")>> is taking this whole "proving" herself thing, and you agree to take a rain check of costumed fun.<br>
<br>
<</if>>
"@@.npc_technician;So... speaking of tomorrow, you up for helping me do a bit of review? I wanna make sure I'm prepared for whatever <<=setup.getNpcName("npc_manager","other")>> might throw at me... I made flash cards!@@"<br>
<br>
<<printThought "Wait... when did she have time to make flash cards?">><br>
<br>
Your question goes unanswered as <<=setup.getNpcName("npc_technician","first")>> pops up with an exuberant grin, flash cards in hand.<br>
<br>
<<set _noon = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToNoon = setup.secondsToDate($now,_noon)>>
[<<moveTo "event_technician_discuss_keyholder_17" 'Help her study.' _timeToNoon>>]<br>
[<<moveTo "event_technician_discuss_keyholder_quit" "Say you need to head home." 60>>]
</div>/*#
#desc: technician aftercare
#status: RELEASED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory=false>>
<<set $player.inside=true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItemSet 'maid_basic_technician_black'>>
<<if $scene.herMaidOutfit>>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You spend the rest of the morning helping quiz <<=setup.getNpcName("npc_technician","first")>> on proper "Mistress" behaviour as well as facts about <<=setup.getNpcName("npc_manager","formal")>> that <<=setup.getNpcName("npc_technician","first")>> determined might be useful for impressing at tomorrows meeting.<br>
<br>
Lunchtime rolls around and <<=setup.getNpcName("npc_technician","first")>> finally calls a stop.<br>
<br>
"@@.npc_technician;Whew, so I think I need a break... and as much as I'd like to break off a piece of your sexy ass... I think I need some time alone, away from any cute <<if $fetish.sissy>>sissy <</if>>distractions.@@" She leans in for a long kiss. "@@.npc_technician;Yeah... definitely need to get away from distractions. I'll see you tomorrow. I promise I'll do everything I can to prove that I deserve to be your keyholder and then...@@" She winks, sending a shiver down your spine.<br>
<br>
You check that she's sure but, even as things stir between her legs as you
<<if $scene.herMaidOutfit>>
change back into your clothes and
<</if>>
gather your things she nods, sending you off with a kiss.<br>
<br>
<<if setup.checkOutsideDecency() || setup.checkOutsideDecencyReason() == "makeup_messy">>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 300 "<<set $player.inside=false>><<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[@@.link_locked;You are not sufficiently dressed to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: technician shows up for her meeting about your key
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician","npc_technician_dom_1")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_role == 'dom'>>
Just before the appointed time, <<=setup.getNpcName("npc_technician","first")>> appears for her meeting. You can tell that she's a bit nervous but just looking at her has your heart thumping with excitement. She seems to have gone all out for the occasion — perfect makeup, hair pulled back into a formal bun and long raincoat giving her a bit of formal, mysterious severity.<br>
<br>
As she walks into the office, you notice that she's also wearing boots — with
<<if setup.getTotalValue("heels") >= 7>>
substantial heels... well, by her standards. You are by this point adept in far higher footwear.
<<else>>
steeper heels than you've ever seen her wear out.
<</if>>
<br><br>
Taking a seat next to your desk to wait, she smiles somewhat awkwardly, obviously trying to release some tension. "@@.npc_technician;Sorry, do I look okay?@@"<br>
<br>
You assure her that she looks much better than just "okay" and she sighs slightly, though remains looking tense.<br>
<br>
<<if $npc_technician.flags.fixed_manager_computer >= 2>>
"@@.npc_technician;Sorry, it's just, well, I want to make an impression and with the merger and all well... I've heard some stories about <<=setup.getNpcName("npc_manager","other")>>, to say nothing of, well...@@"<br>
<br>
You nod at her allusion to the scheme <<=setup.getNpcName("npc_technician","first")>> uncovered but assure her that she'll be able to make a good impression.
<<elseif $npc_technician.flags.knowTruth>>
"@@.npc_technician;Sorry, it's just, well, I want to make an impression and with the merger and all well... I've heard some stories about <<=setup.getNpcName("npc_manager","other")>>, to say nothing of, well...@@"<br>
<br>
You nod at her allusion to what you've told her about your boss and the goings-on at the company but assure her that she'll be able to make a good impression.
<<else>>
"@@.npc_technician;Sorry, it's just, well, I want to make an impression and with the merger and all well... I've heard some stories about <<=setup.getNpcName("npc_manager","other")>>, and of course I don't want to embarrass you since you have to work with her no matter what.@@"<br>
<br>
You explain that the stories are probably well... they're probably mostly true, but that you know <<=setup.getNpcName("npc_manager","formal")>> and you're sure <<=setup.getNpcName("npc_technician","first")>> is going to make a good impression.
<</if>>
<br><br>
She nods, then the both of you go silent as <<=setup.getNpcName("npc_manager","other")>> walks out of her inner office with a confident smile on her face.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName("npc_technician","other")>>? I believe you wished to speak with me about your relationship with my lovely <<if $fetish.sissy>>SISSI <</if>>Secretary?@@"<br>
<br>
You gulp as <<=setup.getNpcName("npc_technician","first")>> takes a deep breath and rises to her feet.<br>
<br>
"@@.npc_technician;Yes, I would.@@" She replies formally before untying the belt holding her jacket closed and letting it slip off her shoulders and fall to the ground...<br>
<br>
[<<moveTo 'event_technician_key_request_dom_2' "Woah..." 300>>]
<<else>>
Just before the appointed time <<=setup.getNpcName("npc_technician","first")>> appears for her meeting. She looks a bit nervous as you let her into the office, taking a seat next to your desk as you try to calm her down.<br>
<br>
<<if $npc_technician.relationship.her_role == 'sub'>>
"@@.npc_technician;I'm sorry, Mistress, it's just... well, I don't want to disappoint you and, well... I've heard stories about <<=setup.getNpcName("npc_manager","other")>> and they paint quite the intimidating picture.@@"
<<else>>
"@@.npc_technician;I'm sorry, it's just... well, I've heard stories about <<=setup.getNpcName("npc_manager","other")>> and they paint quite the intimidating picture. I really want this to work out for you, well, us, really.@@"
<</if>>
<br><br>
You nod and spend the next few minutes comforting her and trying to build up her confidence as you wait for the appointed time of the meeting.<br>
<br>
[<<moveTo 'event_technician_key_request_sub_2' "Wait." 300>>]
<</if>>
</div>/*#
#desc: technician rejected for not being dom role
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> walks out of her office, her face immediately hardening as she looks at you and <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName("npc_technician","Miss")>>? This was not quite what I expected... before we start I have a single question. Between the two of you, who is in charge?@@"<br>
<br>
<<if $npc_technician.relationship.her_role == 'sub'>>
"@@.npc_technician;Mistress <<=$player.first_name>> is, of course.@@" <<=setup.getNpcName("npc_technician","first")>> blurts out.
<<else>>
"@@.npc_technician;Um, nobody? Or maybe you could say we switch off?@@" <<=setup.getNpcName("npc_technician","first")>> replies nervously.
<</if>>
<br><br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows. "@@.npc_manager;No, that will not do. No matter what the two of you get up to in your private lives, Miss <<=$player.last_name>> is employed by me as my submissive <<if $fetish.sissy>>SISSI <</if>>secretary. Chastity is, of course, a key part of that and I could not possibly entrust anything but a fellow dom to safely act as a keyholder. So really, <<=setup.getNpcName("npc_technician","Miss")>>, there is no point in going any further with our meeting. I apologise that you have wasted your time but that is my firm answer. If things change and you assume a more natural position of authority over Miss <<=$player.last_name>>, well... then we might talk again. But until then, she must remain securely <<if setup.isCage()>>caged<<else>>belted<</if>> and under my control.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> shoulders droop but she nods, rising to her feet and bowing. "@@.npc_technician;I'm sorry for wasting your time... I, uh... better get back to work, then, bye.@@" Embarrassed, she darts out of the office before you can get in a word.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> walks over to loom above your desk, a slight smile on her face.<br>
<br>
"@@.npc_manager;Well that was amusing... obviously you are my submissive and that will never change so long as you are employed as my <<if $fetish.sissy>>SISSI <</if>>Secretary, but if you wish to explore other things in your private life, or even professionally in regards to people not myself.@@" She smiles, looking away as if in thought. "@@.npc_manager;Well, I believe I could make use of such skills. Let me know if you wish to have some... instruction in the matters.@@"<br>
<br>
Sweeping away she returns to her inner office, leaving you still at your desk, dumbfounded.<br>
<br>
<<printThought "She just offered to teach me to be a domme? Woah.">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: technician reveals herself for her meeting about your key
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 12 'little' $SEEN_FRIEND>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem "bondage_collar_promo" true>>
<<wearItem "bondage_collar_promo">>
<</if>>
<<addItem 'rpg_succubus_leash'>>
<<wearItem 'rpg_succubus_leash' true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The raincoat falls to the ground to reveal what <<=setup.getNpcName("npc_technician","first")>> was wearing underneath and your jaw almost drops. Boots, tight leather pants, a matching corset, gauntlets and a strappy top has her looking very sexy and very dominant. Even <<=setup.getNpcName("npc_manager","formal")>>, who hardly needs an outfit to command a room, looks impressed as the edges of her mouth curl up into a slight smile.<br>
<br>
"@@.npc_manager;Very interesting. How about the both of you come into my office and we can discuss things further.@@"<br>
<br>
"@@.npc_technician;That sounds splendid.@@" She replies before turning to you.<br>
<br>
<<if $scene.addCollar>>
<<=setup.getNpcName("npc_technician","first")>> produces a leash and a collar and attaches them to your neck.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> produces a leash and clips it to your collar.
<</if>>
She smiles at you and then takes a step, giving a tug for you to follow.<br>
<br>
<<printThought 'Hmm, <<=setup.getNpcName("npc_technician","first")>> showing dominance over me is likely to affect <<=ps(setup.getNpcName("npc_manager","formal"))>> decision...'>><br>
<br>
[<<moveTo 'event_technician_key_request_dom_3' "Follow after." 120 "<<set $scene.crawl=false>>">>]<br>
[<<moveTo 'event_technician_key_request_dom_3' "Crawl behind her." 120 "<<set $scene.crawl=true>>">>]
</div>/*#
#desc: technician and you enter manager's office
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.crawl>>
<<applyExperience 'submission' 16 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.crawl>>
On <<=ps(setup.getNpcName("npc_technician","first"))>> leash you drop to your knees, seeming to slightly surprise her while bringing a wider smile to <<=ps(setup.getNpcName("npc_manager","formal"))>> face as she looks on.<br>
<br>
"@@.npc_manager;Oh, I think I like you already. Come along inside and let us discuss things.@@"
<<else>>
Trailing behind <<=setup.getNpcName("npc_technician","first")>> on her leash you follow into <<=ps(setup.getNpcName("npc_manager","formal"))>> office.
<</if>>
<br><br>
Moving behind her large desk <<=setup.getNpcName("npc_manager","formal")>> motions for the two of you to take a seat.<br>
<br>
[<<moveTo 'event_technician_key_request_dom_4' 'Sit down next to <<=setup.getNpcName("npc_technician","first")>>.' 120 "<<set $scene.kneel=false>>">>]<br>
[<<moveTo 'event_technician_key_request_dom_4' 'Kneel beside <<=ps(setup.getNpcName("npc_technician","first"))>> chair.' 120 "<<set $scene.kneel=true>>">>]
</div>/*#
#desc: technician argues for wanting to ride you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.kneel>>
You wait for <<=setup.getNpcName("npc_technician","first")>> to take a seat and then gently kneel next to her chair. <<=setup.getNpcName("npc_manager","formal")>> smiles at you for a moment
<<else>>
You take a seat in the chair next to <<=setup.getNpcName("npc_technician","first")>>. <<=ps(setup.getNpcName("npc_manager","formal"))>> eyebrow raises slightly in curiosity
<</if>>
before turning to speak to <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<if $scene.kneel && $scene.crawl>>
"@@.npc_manager;So, <<=setup.getNpcName("npc_technician","other")>>, it is my understanding that you wish to act as a keyholder for my lovely <<if $fetish.sissy>>SISSI <</if>>Secretary. So far it would appear that you command at least some degree of the appropriate sort of respect, but I still need to confirm that you have a suitable temperament for such a responsibility.@@"
<<elseif $scene.kneel || $scene.crawl>>
"@@.npc_manager;So, <<=setup.getNpcName("npc_technician","other")>>, it is my understanding that you wish to act as a keyholder for my lovely <<if $fetish.sissy>>SISSI <</if>>Secretary. You have certainly dressed for the occasion, and have at least somewhat impressed yourself upon the girl but... that still leaves the question of you having a suitable temperament for such a responsibility.@@"
<<else>>
"@@.npc_manager;So, <<=setup.getNpcName("npc_technician","other")>>, it is my understanding that you wish to act as a keyholder for my lovely <<if $fetish.sissy>>SISSI <</if>>Secretary. While you certainly have dressed to impress what makes you think you have the suitable temperament for such a responsibility?@@"
<</if>>
<br><br>
You can feel how nervous <<=setup.getNpcName("npc_technician","first")>> is as your <<=setup.getNpcName("npc_manager","title")>> continues on, her casual aura of dominance seeming to weigh heavy in the room.<br>
<br>
<<if $player.body_ref.penis && !$player.body_ref.vagina>>
"@@.npc_manager;Now, I believe you have known Miss <<=$player.last_name>> even longer than I have... which means you must understand and appreciate the important transformation that she has undertaken under my supervision. Her chastity is a key ingredient of that fact and so, while I am willing to entertain the idea of delegating the responsibility, I must be certain that you do not have any sort of... nefarious intent behind this request. So, tell me: why do you feel a need to access to that wonderfully confined thing?@@"
<<else>>
"@@.npc_manager;Now, I believe you have known Miss <<=$player.last_name>> even longer than I have... which means you must understand and appreciate the important transformation that she has undertaken under my supervision. Her chastity is a key ingredient of that fact and so, while I am willing to entertain the idea of delegating the responsibility, I must be certain that you do not have any sort of... nefarious intent behind this request. So, tell me, why do you feel a need to access that which is currently so wonderfully confined?@@"
<</if>>
<br><br>
Taking a deep breath <<=setup.getNpcName("npc_technician","first")>> explains.
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if $npc_technician.relationship.done_you>>
"@@.npc_technician;Well, as much as I enjoy plowing that sexy <<if $fetish.sissy>>sissy <</if>>bottom, well... she has a full three holes — to say nothing of a hole of my own that I'd like to feel filled on occasion.@@"
<<else>>
"@@.npc_technician;Well, you see, I've got a hole of my own, and I like to take my slaves for a ride from time to time.@@"
<</if>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> eyebrow raises and <<=setup.getNpcName("npc_technician","first")>> quickly continues. "@@.npc_technician;I'd be on top, of course. In Amazon position, looking down on my subject while I felt <<=setup.getHimHer($npc_technician)>> between my legs, always in control.@@"
<br><br>
<<if $fetish.sph>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
<<=setup.getNpcName("npc_manager","formal")>> glances in the direction of your diminutive ding-a-ling. "@@.npc_manager;Well that seems like you would be in for a disappointment, surely you would be more satisfied with a nice strap-on if it came to that? It is really the only way someone as small as her could hope to please a lady in that manner.@@"
<<case 3 4>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze flicks in the direction of your average sized dong. "@@.npc_manager;I see, but wouldn't it be more fulfilling to just opt for a strap on? She really is quite unimpressive, much better to remain locked up, I feel, lest she get any mistaken ideas.@@"
<<case 5>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze flicks in the direction of your large member. "@@.npc_manager;I see, well I can certainly see the appeal... but even so, a strap-on would be safer than risking her becoming addicted to freedom.@@"
<<case 6>>
<<=setup.getNpcName("npc_manager","formal")>> eyes the bulge of your restrained monster. "@@.npc_manager;I understand the appeal but... well, think of the danger, the chance of regression, or the improper ideas that might come into her cute head if she was allowed free? No, I believe it would be safer for everyone — you, and especially her, that it remains nicely locked and secured.@@"
<<default>>
ERROR: player penis size: <<=$player.body.penissize[0]>> out of range
<</switch>>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> thinks for a moment but seems unconvinced. "@@.npc_manager;It seems that such would be much more efficiently expedited via the use of a strap-on — that would give you much greater control of size and features, while also not needing to worry about how long that sweet, sensitive thing might last.@@"
<</if>>
<br><br>
"@@.npc_technician;Certainly you must admit that there are some advantages to a living member?@@"<br>
<br>
"@@.npc_manager;Indubitably, but there are many of those available for your use. You are requesting that I hand over one that I have spent not inconsiderable effort into training to be under such wonderful lock and key... and thus I require additional convincing.@@"
<<elseif $player.body_ref.penis>>
<<if $npc_technician.relationship.done_you>>
"@@.npc_technician;Well, as much as I enjoy plowing that sexy <<if $fetish.sissy>>sissy <</if>>bottom, well... I've got a hole of my own that I'd like to feel filled on occasion.@@"
<<else>>
"@@.npc_technician;Well, you see, I've got a hole of my own, and I like to take my slaves for a ride from time to time.@@"
<</if>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> eyebrow raises and <<=setup.getNpcName("npc_technician","first")>> quickly continues. "@@.npc_technician;I'd be on top, of course. In amazon position, looking down on my subject while I felt <<=setup.getHimHer($npc_technician)>> between my legs, always in control.@@"
<br><br>
<<if $fetish.sph>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
<<=setup.getNpcName("npc_manager","formal")>> glances in the direction of your diminutive ding-a-ling. "@@.npc_manager;Well that seems like you would be in for a disappointment, surely you would be more satisfied with a nice strap-on if it came to that? It is really the only way someone as small as her could hope to please a lady in that manner.@@"
<<case 3 4>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze flicks in the direction of your average sized dong. "@@.npc_manager;I see, but wouldn't it be more fulfilling to just opt for a strap on? She really is quite unimpressive, much better to remain locked up, I feel, lest she get any mistaken ideas.@@"
<<case 5>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze flicks in the direction of your large member. "@@.npc_manager;I see, well I can certainly see the appeal... but even so, a strap-on would be safer than risking her becoming addicted to freedom.@@"
<<case 6>>
<<=setup.getNpcName("npc_manager","formal")>> eyes the bulge of your restrained monster. "@@.npc_manager;I understand the appeal but... well, think of the danger, the chance of regression, or the improper ideas that might come into her cute head if she was allowed free? No, I believe it would be safer for everyone — you, and especially her, that it remains nicely locked and secured.@@"
<<default>>
ERROR: player penis size: <<=$player.body.penissize[0]>> out of range
<</switch>>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> thinks for a moment but seems unconvinced. "@@.npc_manager;It seems that such would be much more efficiently expedited via the use of a strap-on — that would give you much greater control of size and features, while also not needing to worry about how long that sweet, sensitive thing might last.@@"
<</if>>
<br><br>
"@@.npc_technician;Certainly you must admit that there are some advantages to a living member?@@"<br>
<br>
"@@.npc_manager;Indubitably, but there are many of those available for your use. You are requesting that I hand over one that I have spent not inconsiderable effort into training to be under such wonderful lock and key... and thus I require additional convincing.@@"
<<else>>
<<if $npc_technician.relationship.done_you>>
"@@.npc_technician;Well, as much as I enjoy plowing that sexy <<if $fetish.sissy>>sissy <</if>>bottom, well... she has another hole and Goddess but I want to rail it.@@"
<<else>>
"@@.npc_technician;Well, I think you can understand how... enticing bending her over and railing her in both holes would be.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> thinks for a moment but seems unconvinced. "@@.npc_manager;I understand the desire... but surely you can get off with one of her other two holes, leave her desperate and needy and eager to serve.@@"<br>
<br>
"@@.npc_technician;Certainly, but, if she is locked away from my use... does that not leave her service incomplete?@@"<br>
<br>
"@@.npc_manager;Point, but understand that you are requesting that I hand over control after I have spent not inconsiderable effort to training her to be under such wonderful lock and key... and thus I require additional convincing.@@"<br>
<br>
"@@.npc_technician;Well, you, see, I have found it is quite... stressful for <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>him<<default>>them<</switch>> to not be able to offer herself fully for my use while she is serving me. You can understand how that could undermine my authority...@@"<br>
<br>
"@@.npc_manager;Undoubtedly, but there are many of those available for your use. You are requesting that I hand over one that I have spent not inconsiderable effort into training to be under such wonderful lock and key... and thus I require additional convincing.@@"
<</if>>
<br><br>
Hiding her frustration, <<=setup.getNpcName("npc_technician","first")>> is undeterred as she raises a second point.<br>
<br>
[<<moveTo 'event_technician_key_request_dom_5' 'Listen attentively.' 120>>]
</div>/*#
#desc: technician argues for wanting to taste you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;My second point, and one that you must admit cannot be substituted with a strap-on is, well... not to put too fine a point on it but I want a taste of that <<if $fetish.sissy>>scrumptious sissy stick<<else>>scrumptious skirt strainer<</if>>!@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles in amusement at the phrasing and your heart starts to rise in anticipation.<br>
<br>
"@@.npc_manager;A... salient point, but still. Something like that is certainly dangerous territory so you understand why I must be absolutely certain that <<=$player.first_name>> is in good hands.@@"
<<if $scene.kneel && $scene.crawl>>
She turns to you, pausing momentarily. "@@.npc_manager;So, <<=$player.first_name>>, you have been so perfectly obedient this whole time — a real point in <<=ps(setup.getNpcName("npc_technician","other"))>> favour, mind... do you have anything to add on why her holding your key would prove advantageous to your continued development?@@"<br>
<br>
[<<moveTo 'event_technician_key_request_dom_6' 'Say you deserve to have some freedom outside of work!' 120 "<<set $scene.response='disobey'>>">>]<br>
[<<moveTo 'event_technician_key_request_dom_6' 'Re-iterate what <<=setup.getNpcName("npc_technician","formal")>> said.' 120 "<<set $scene.response='reinforce'>>">>]<br>
<<if setup.getTotalValue("submission") > 10 && setup.getTotalValue("bdsm") > 10>>
[<<moveTo 'event_technician_key_request_dom_6' 'Point out that her having the key would enable <<=setup.getNpcName("npc_technician","formal")>> to edge and ruin you.' 120 "<<set $scene.response='edge'>>">>]<br>
<<else>>
[@@.link_locked;You do not feel sufficiently submissive or infatuated with BDSM to make a more extreme offering.@@]<br>
<</if>>
[<<moveTo 'event_technician_key_request_dom_6' 'Say that having the key would give <<=setup.getNpcName("npc_technician","formal")>> more power over you.' 120 "<<set $scene.response='control'>>">>]
<<else>>
<<if $scene.kneel || $scene.crawl>>
<<=setup.getNpcName("npc_manager","formal")>> seems to be weighing things but finally shakes her head. "@@.npc_manager;No, I am sorry but I remain somewhat concerned as to your ability to bring <<=$player.first_name>> to heel. Feel free to return some other time when you have had some more time to practice. You show promise but, for now, I think it would be safest for all involved if <<=$player.first_name>> remains under my control. That said... you do seem to have promise and rapport so you may feel free to try again some other day. Until then, well, it is still work hours and I imagine all three of us have duties to return to.@@"
<<else>>
You hold your breath as <<=setup.getNpcName("npc_manager","formal")>> appraises you, but she shakes her head. "@@.npc_manager;No, I do not think I can risk it. Watching you here together, well... <<=$player.first_name>> shows insufficient deference and I worry that, in the throes of passion, negative habits might resurface. I cannot allow that after I spent so much time putting things in order. That said... you do seem to have promise and rapport so you may feel free to try again some other day. Until then, well, it is still work hours and I imagine all three of us have duties to return to.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> glances sorrowfully at you before rising to her feet. "@@.npc_technician;Thank you for the consideration and I hope I can earn your trust in the future.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods and you lead <<=setup.getNpcName("npc_technician","first")>> out of the office where she ties her coat back around her corset-trimmed waist and departs while you return to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>><<removeItem 'rpg_succubus_leash' true>><<deleteItem 'rpg_succubus_leash'>><<if $scene.addCollar>><<removeItem 'bondage_collar_promo'>><<deleteItem 'bondage_collar_promo' true>><</if>>">>]
<</if>>
</div>/*#
#desc: you argue on behalf of technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.response>>
<<case 'disobey'>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<case 'reinforce'>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<case 'edge'>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<case 'control'>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<</switch>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.response>>
<<case 'disobey'>>
Somewhat peeved at <<=ps(setup.getNpcName("npc_manager","formal"))>> rejection, you point out that this would be outside of work and don't you deserve to have a bit of freedom there?<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows and <<=setup.getNpcName("npc_technician","first")>> visibly winces.<br>
<br>
"@@.npc_manager;Well,@@" she states after letting the error of your words sink in. "@@.npc_manager;I can see that my instincts were correct in denying this request.@@" Turning to <<=setup.getNpcName("npc_technician","first")>> her expression softens. "@@.npc_manager;Things got off to such a good start... and I do see a spark of potential with you but... no, for now the key will remain exactly where it is. If you manage to impress upon this sweet thing a bit more deference, feel free to come back and take another shot at changing my mind. As a first step in that direction... well, this blatant disobedience deserves immediate correction. Would you like to do the honours?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> glances at you as if asking permission to administer your punishment.<br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_punish_1' 'Nod in agreement.' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_technician_key_request_dom_7_punish_1' 'Shake your head.' 300 "<<set $scene.accept=false>>">>]<br>
<<case 'reinforce'>>
You start to reiterate what <<=setup.getNpcName("npc_technician","first")>> said but <<=setup.getNpcName("npc_manager","formal")>> gently cuts you off.<br>
<br>
"@@.npc_manager;I appreciate the loyalty, but I have already heard these arguments.@@" Turning to <<=setup.getNpcName("npc_technician","first")>>, <<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;I am afraid that I will be unable to grant your request, but feel free to come back some other day if you would like to make another try at it.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bows in thanks and then departs, giving you a parting hug before tying her coat back over her dom-y costume and leaving you to return to work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>><<removeItem 'rpg_succubus_leash' true>><<deleteItem 'rpg_succubus_leash'>><<if $scene.addCollar>><<removeItem 'bondage_collar_promo'>><<deleteItem 'bondage_collar_promo' true>><</if>>">>]
<<case 'edge'>>
Keeping your voice light, you explain that if she were to be your keyholder, <<=setup.getNpcName("npc_technician","first")>> would be able to take a more "hands on" approach to things — <<if $player.body_ref.penis>>her possession of a lady lance making her supremely qualified to enhance your training with edges and ruins<<else>>not just in using all three of your holes for her pleasure, but so that she can edge, tease and torment you to the max<</if>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, and you feel <<=ps(setup.getNpcName("npc_technician","first"))>> grip tighten on your leash as your words make a definite impression.<br>
<br>
"@@.npc_manager;Now THAT is a very good point. So, <<=setup.getNpcName("npc_technician","other")>>: I am provisionally willing to entertain your request... but first, I will require a demonstration.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> gestures for you to get up on a chair as she moves to an optimal vantage point. <<=setup.getNpcName("npc_technician","first")>> is looking aroused, excited, and more than a little nervous as she meets your gaze and seems to silently ask permission.<br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_1' 'Get up on the chair.' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_1' 'Change your mind.' 300 "<<set $scene.accept=false>>">>]
<<case 'control'>>
You explain that, were she your keyholder, <<=setup.getNpcName("npc_technician","first")>> would be in an even stronger position of control over you.<br>
<br>
"@@.npc_manager;True,@@" she replies, "@@.npc_manager;but you should not need such trappings to encourage your obedience, and my turning over the key brings with it all manner of risk... no, I do not think this is a good idea.@@" Turning to <<=setup.getNpcName("npc_technician","first")>> her voice softens. "@@.npc_manager;Thank you for coming in today, and feel free to return if you would like to take another shot at convincing me. I see much potential in you but... well, I do not think you, or <<=$player.first_name>> have quite proven yourself ready for this.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bows in thanks and then departs, giving you a parting hug before tying her coat back over her dom-y costume and leaving you to return to work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>><<removeItem 'rpg_succubus_leash' true>><<deleteItem 'rpg_succubus_leash'>><<if $scene.addCollar>><<removeItem 'bondage_collar_promo'>><<deleteItem 'bondage_collar_promo' true>><</if>>">>]
<<default>>
ERROR: unexpected scene.response <<=$scene.response>>
<</switch>>
</div>/*#
#desc: technician preps to punish you in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_technician","first")>> rises to her feet to loom over you, your heart races in anticipation. She places a possessive hand on the top of your head, stroking your hair as she talks to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_technician;I have just the perfect punishment in mind... I do not suppose I could request some equipment? Living in an apartment limits one in assembling a dungeon and I have this wonderful idea that I have never been able to execute on due to lack of space.@@"<br>
<br>
"@@.npc_manager;I am certain I can arrange for something.@@" <<=setup.getNpcName("npc_manager","formal")>> states as she walks around the desk. The two women share a brief whispered discussion that leaves you in the dark as to what exactly <<=setup.getNpcName("npc_technician","first")>> has planned. You grow nervous as <<=setup.getNpcName("npc_manager","formal")>> fires off an email. "@@.npc_manager;It will be just a few minutes. Just enough time to really heighten the anticipation... and I am quite looking forward to seeing how you fare...@@"<br>
<br>
"@@.npc_technician;Cool!@@" <<=setup.getNpcName("npc_technician","first")>> replies before quickly scaling back her enthusiasm in an attempt to match <<=ps(setup.getNpcName("npc_manager","formal"))>> casual authority. "@@.npc_technician;I'm, uh, looking forward to it, and thank you... I can't imagine how nice it must be to have access to anything you can think of.@@"<br>
<br>
"@@.npc_manager;Not quite anything,@@" she replies with an amused smile. "@@.npc_manager;But yes, power does have its perks...@@"<br>
<br>
Trying to match <<=ps(setup.getNpcName("npc_manager","formal"))>> perfect posture, <<=setup.getNpcName("npc_technician","first")>> nods in your direction. "@@.npc_technician;You may strip while we wait. I do not want anything in the way of what I have planned for you...@@"<br>
<br>
You gulp, looking up between the two women as you shiver and reflect on how you managed to get yourself into such a position...<br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_punish_2' 'Strip.' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_technician_key_request_dom_7_punish_2' 'On second thought... this is too much.' 600 "<<set $scene.accept=false>>">>]
<<else>>
Noting your silent response, <<=setup.getNpcName("npc_technician","first")>> addresses <<=setup.getNpcName("npc_manager","formal")>> on your behalf. "@@.npc_technician;I would like to attend to this punishment on my own terms, if you would permit me. After all, the anticipation can lend extra power and, on a more practical note... I kind of need to get back to work.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks between you and your friend just long enough to make you nervous before nodding. "@@.npc_manager;Understandable. Very well, I shall leave addressing this failure in your hopefully capable hands. Perhaps it will be the encouragement <<=$player.first_name>> needs so that the next time you come before me I will deem you prepared to manage her key. Until then, have a marvelous day... though what day is not marvelous with a locked lovely like <<=$player.first_name>>?@@"<br>
<br>
You blush as <<=setup.getNpcName("npc_technician","first")>> takes you by the leash back to your desk. "@@.npc_technician;Sorry things didn't work out,@@" she states as she ties her raincoat closed over her dominatrix costume. "@@.npc_technician;See you around.@@"<br>
<br>
You share a parting kiss before she heads for the door while you return to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>><<removeItem 'rpg_succubus_leash' true>><<deleteItem 'rpg_succubus_leash'>><<if $scene.addCollar>><<removeItem 'bondage_collar_promo'>><<deleteItem 'bondage_collar_promo' true>><</if>>">>]
<</if>>
</div>/*#
#desc: technician tickle torture in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<set $clothSetsInt.tmp.data.delete("rpg_succubus_leash")>>
<<removeAllClothing>>
<<changeHorny 50>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You remove your clothes under the four (or is that eight?) watchful eyes of your two Mistresses.<br>
<br>
<<printThought "What is it about women with glasses? I may not know, but I seem to lie it!">><br>
<br>
The act of stripping before <<=ps(setup.getNpcName("npc_manager","formal"))>> should be old hat considering how long it has been a part of your morning routine; the addition of your girlfriend, however, makes things feel new all over again. You are reduced down to just your collar and leash. You have never felt more exposed in your entire life.<br>
<br>
You are admonished for trying to bashfully cover up as you are forced to stand there as the two women examine you. Your heart pounds in your ears and utterly distracts you from their casual small-talk.<br>
<br>
You almost jump when the door opens. <<=ps(setup.getNpcName("npc_development","formal"))>> minions roll in without so much as a second glance in your direction. Pushing a cart into the room, they start assembling something while you and <<=setup.getNpcName("npc_technician","first")>> intently watch. They reveal a VERY sturdy looking spanking bench — thoroughly padded and complete with built in restraints for all four limbs of whatever unfortunate slave is placed over it.<br>
<br>
"@@.npc_manager;Is it to your satisfaction?@@" <<=setup.getNpcName("npc_manager","formal")>> asks as <<=setup.getNpcName("npc_technician","first")>> stares in awe at the intimidating, industrial contraption.<br>
<br>
"@@.npc_technician;Yup!, I, uh, mean, yes. I believe it will be suitable for my plans.@@" You can tell she's fighting hard to make an impression and not descend into a frenzy of ecstatic enthusiasm. She nods in your direction; "@@.npc_technician;mount the device, slave.@@"<br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_punish_3' 'Do as she commands.' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_technician_key_request_dom_7_punish_3' 'On second thought... this is too much.' 600 "<<set $scene.accept=false>>">>]
<<else>>
While you are supremely curious what <<=setup.getNpcName("npc_technician","first")>> has planned, this is too much. You look up at her, giving a silent plea for mercy.<br>
<br>
"@@.npc_technician;Hmm... actually,@@" <<=setup.getNpcName("npc_technician","first")>> notes as she reads your desperate expression, "@@.npc_technician;I think I've changed my mind. Sorry to be a bother like this but I think this might be a bit more than <<=setup.getHeShe($npc_technician)>> is ready for. I think stewing in <<=setup.getHisHer($npc_technician)>> failure and remaining securely locked would be a more appropriate punishment, given the manner of offence.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks disappointed but defers (to the collective surprise of you and <<=setup.getNpcName("npc_technician","first")>>). "@@.npc_manager;Very well. In that case, I believe all three of us should be back to work. Disciplining wayward employees may be within my job description but standing around jabbering about it is not.@@"<br>
<br>
You sigh in relief as you crawl after <<=setup.getNpcName("npc_technician","first")>>, returning to your desk where she removes the leash, wraps her coat back over her dominatrix costume, and kisses you goodbye.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>><<useClothSetPop 'tmp'>><<removeItem 'rpg_succubus_leash' true>><<deleteItem 'rpg_succubus_leash'>><<if $scene.addCollar>><<removeItem 'bondage_collar_promo'>><<deleteItem 'bondage_collar_promo' true>><</if>>">>]
<</if>>
</div>/*#
#desc: technician tickle torture in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'bondage' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 11 'normal' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<useClothSetPop 'tmp'>>
<<removeItem 'rpg_succubus_leash' true>>
<<deleteItem 'rpg_succubus_leash'>>
<<if $scene.addCollar>>
<<removeItem 'bondage_collar_promo'>>
<<deleteItem 'bondage_collar_promo' true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You mount the spanking bench as the delivery person silently leaves the room. The leather rests are luxurious and comfortable, everything seemingly perfectly sized to your frame as you lay across the top and <<=setup.getNpcName("npc_technician","first")>> straps your arms and legs in place.<br>
<br>
"@@.npc_technician;Now...@@" She purrs, just a hint of excitement peeking out from the edge of her word. "@@.npc_technician;Your punishment begins. Remember, your safe-word is teacup.@@"<br>
<br>
You bite your lip, the contrast between her and <<=setup.getNpcName("npc_manager","formal")>> even more striking now that you have them both in the same room. Restrained as you are, you can't see where <<=setup.getNpcName("npc_technician","first")>> is or what she's doing without awkwardly craning your neck. You brace yourself for the oncoming spanking as you hear her move behind you.<br>
<br>
What you weren't expecting is what comes next: a light brush against your feet that sends a jolt through your body. You try to shirk away only to be held fast by the restraints.<br>
<br>
"@@.npc_technician;Aww, is someone afraid of a little tickling?@@" She teases as the same light pressure brushes up the inside of your thighs and you strain harder against your bonds. "@@.npc_technician;You're so sensitive! This is exactly why I didn't try this back at the apartment. I needed to make sure you weren't going to thrash around and damage anything (especially yourself).@@"<br>
<br>
As she speaks she roams up your body, each gentle brush as tormenting as it is delicate as she teases your ribs and then moves towards your armpit. You had no idea something this gentle could be this infuriating, your breaths coming short and fast as you look up to see <<=setup.getNpcName("npc_manager","formal")>> watching on with evil glee.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo 'event_technician_key_request_dom_7_punish_4' 'Endure.' 300 "<<set $scene.accept=true>><<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You lack the mental reserves to endure any more.@@]<br>
<</if>>
[<<moveTo 'event_technician_key_request_dom_7_punish_4' 'Use your safe-word.' 300 "<<set $scene.accept=false>>">>]
<<else>>
Face to face with such an intimidating implement of bondage, you balk and <<=setup.getNpcName("npc_technician","first")>> immediately comes to your rescue.<br>
<br>
"@@.npc_technician;Actually... no, as fun as it would be to strap <<=setup.getHimher($npc_technician)>> down on top of that thing... well, I think <<=setup.getHimHer($npc_technician)>> would just enjoy it too much and get the wrong idea. No, taunting restriction is probably a more just punishment for <<=setup.getHeShe($npc_technician)>> misbehaviour.@@"<br>
<br>
With a slightly amused smile <<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Very well, but in that case I believe all three of us should be back to work — disciplining wayward employees may be within my job description but standing around jabbering about it is not.@@"<br>
<br>
You sigh in relief as you put your clothes back on and follow <<=setup.getNpcName("npc_technician","first")>> out of the office. Back at your desk, she removes the leash, wraps her coat back over her dominatrix costume, and kisses you goodbye.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: technician tickle torture in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 15 'normal' $SEEN_FRIEND>>
<<decrementEmotion 'anger' 'npc_manager' 2>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<applyFatigue 40>>
<<else>>
<<removeItem 'rpg_succubus_leash' true>>
<<deleteItem 'rpg_succubus_leash'>>
<<useClothSetPop 'tmp'>>
<<if $scene.addCollar>>
<<removeItem 'bondage_collar_promo'>>
<<deleteItem 'bondage_collar_promo' true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You are constantly straining against your bonds by the time <<=setup.getNpcName("npc_technician","first")>> reaches your armpit but the heavy restraints give not a millimetre as you gasp and pant.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> plays your body to perfection, never letting you recover or get accustomed to anything as she hones in on the most sensitive part of your body. She knows your every centimetre; from toes to armpits, from the nape of your neck to the small of your back. She switches from overwhelming focused attention to bouncing between spots you had never before even realised could even be ticklish.<br>
<br>
You howl in desperation, panting for air. You half wish you had a gag just to have something to bite down on as the torment continues. She tickles both feet at the same time while gently blowing against your bottom, your body so sensitive even the brush of air blowing past your plug almost enough to make you faint.<br>
<br>
Just when you think you are at your limit... she stops. All you can hear are your gasps for air. You only half hear her step away and move in front of you as your head droops and you hang exhausted in your bonds.<br>
<br>
"@@.npc_technician;Learn your lesson?@@" She asks with a smile, kneeling in front of you so that she can see your face as you look down her cleavage to see a tucked away feather — the tiny, tormenting tool with which she did so, so much to you.<br>
<br>
Your reply is a soft whine, a response that is followed by the slow sound of clapping echoing in the office.<br>
<br>
"@@.npc_manager;Well done! It has been some time since I witnessed someone come so close to breaking a <<if $fetish.sissy>>sissy<<else>>slave<</if>> with so little. I've half a mind to promote you to work under <<=setup.getNpcName("npc_discipline","formal")>> — she could benefit from the example that sometimes less is more. In any case I am almost tempted to give you a key right now, but that would still be rewarding the wrong behaviour on the part of my poor assistant. Still, if you wished to come back and take another shot at things I think you very well may have the skills necessary to impress me.@@"<br>
<br>
"@@.npc_technician;Thank you... and thank you for the use of your equipment!@@"<br>
<br>
"@@.npc_manager;Of course, of course, but alas, I believe it is time for us all three to return to work... well, if <<=$player.first_name>> is even useful for anything. I dare say you have done quite the number on her!@@"<br>
<br>
Unsteady on your feet as <<=setup.getNpcName("npc_technician","first")>> helps you back into your clothes. The slightest brush of fabric has you tense in fear, your body still sensitive to every touch.<br>
<br>
You're in some ways thankful to crawl rather than walk as you follow <<=setup.getNpcName("npc_technician","first")>> out of the office and back to your desk, almost collapsing into your chair as she gives you a kiss goodbye and puts her coat back on over her sexy dominatrix outfit.<br>
<br>
"@@.npc_technician;Thanks for the fun... you're so cute and fun to tickle! Anyway, I better get back to work, cya later!@@"<br>
<br>
She starts to skip away only to stumble slightly in her too-steep heels and, blushing slightly, continue on at a more measured pace.<br>
<br>
You bring your exhausted limbs to the keyboard and try to focus on work. You might have to catch your breath first.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<useClothSetPop 'tmp'>><<removeItem 'rpg_succubus_leash' true>><<deleteItem 'rpg_succubus_leash'>><<if $scene.addCollar>><<removeItem 'bondage_collar_promo'>><<deleteItem 'bondage_collar_promo' true>><</if>><<completeWorkEvent>>">>]
<<else>>
"@@.pc;Teacup!@@" You cry out, whimpering and trembling in your bonds, fearfully anticipating further touch even as <<=setup.getNpcName("npc_technician","first")>> instantly pulls away.<br>
<br>
"@@.npc_manager;Well, that was quite the impressive punishment indeed. Really goes to show that sometimes all it takes is a light touch to put a <<if $fetish.sissy>>sissy<<else>>slave<</if>> in their place.@@"<br>
<br>
You can practically feel <<=setup.getNpcName("npc_technician","first")>> beam with pride as she gently removes your restraints and helps you to your feet. You spot a feather peeking out from her corset, silently astounded that something so small and delicate could be so tormenting.<br>
<br>
"@@.npc_manager;In any case, well done — feel free to come back some other time and I may reconsider granting your request.@@"<br>
<br>
"@@.npc_technician;Thank you, we will!@@" She says with a smile, handing you your clothes to get dressed before leading you back to your desk where she retrieves her coat and gives you a parting kiss.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: technician edges you in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<useClothSetPush 'tmp'>>
<<set $clothSetsInt.tmp.data.delete("rpg_succubus_leash")>>
<<set _legs = setup.getItemFromType('legwear')>>
<<if _legs != "">>
<<removeItem _legs true>>
<</if>>
<<set _panties = setup.getItemFromType('panties')>>
<<if _panties != "">>
<<removeItem _panties true>>
<</if>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.isSissyomatic = setup.getChastityLevel() == 5>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<removeItem 'rpg_succubus_leash' true>>
<<deleteItem 'rpg_succubus_leash'>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You get up from the chair as <<=setup.getNpcName("npc_technician","first")>>, with a wide grin on her face, removes your <<if setup.checkItemTagWorn("pants")>>pants<<else>>skirt<</if>>.<br>
<br>
"@@.npc_technician;Yum,@@" she states with unrestrained glee before she slips off your panties to reveal the <<if setup.isCage()>>secure chastity cage<<else>>gleaming chastity belt<</if>> beneath.<br>
<br>
<<if $scene.isSissyomatic>>
<<if $npc_technician.relationship.sissyomatic>>
<<=setup.getNpcName("npc_technician","first")>> bites her lip, a single glance reminding you that she is wearing just as secure of a device.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> stares as if transfixed for several moments and then frowns slightly as she looks for a keyhole.<br>
<br>
"@@.npc_technician;How does this—@@" she starts to say as she tilts her head, her curious tech-geekyness taking over as she tries to figure out how it works.
<</if>>
<br><br>
"@@.npc_manager;It's an advanced prototype@@" <<=setup.getNpcName("npc_manager","formal")>> explains. "@@.npc_manager;The ultimate in security, which means, for today's purposes, all I have to do is this...@@"
<br><br>
At a wireless signal from <<=setup.getNpcName("npc_manager","formal")>> the front of the cage opens,
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if $fetish.sounding>>the urethral tube and<</if>> vaginal plug retracting as the covering pulls back to reveal your <<getWordMyPenis false>> that eagerly springs to attention.
<<elseif $player.body_ref.penis>>
<<if $fetish.sounding>>the urethral tube retracting and <</if>>the covering pulling back to reveal your <<getWordMyPenis false>> that eagerly springs to attention.
<<else>>
the vaginal plug retracted to leave you dripping and exposed in anticipation.
<</if>>
<br><br>
"@@.npc_manager;Now, remember, edging only, I need to be certain that the both of you have sufficient control if I am to permit you to take on keyholding responsibilities.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> nods, her previous curiosity erased as she lustily stares at your <<if $player.body_ref.penis && $player.body_ref.vagina>>exposed member and not-so-hidden valley<<elseif $player.body_ref.penis>>exposed member<<else>>no longer hidden valley<</if>> and then up at you.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> licks her lips, staring at you as if transfixed as <<=setup.getNpcName("npc_manager","formal")>> appears from behind to hand her the key.<br>
<br>
"@@.npc_manager;Now, remember, edging only. I need to be certain that the both of you have sufficient control if I am to permit you to take on keyholding responsibilities.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> nods as she brings the key to your lock and looks up at you.
<</if>>
<br><br>
<<printThought "This is going to be intense...">><br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_2' "You're ready." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_2' 'Nope, this is too much, abort!' 300 "<<set $scene.accept=false>>">>]
<<else>>
As you consider the idea of being edged by the gorgeous tech wizard in front of your <<=setup.getNpcName("npc_manager","title")>>, you get cold feet — either because you're just terrified of the possibility... or that you're scared that you will be unable to hold out and do not want to experience whatever evil resulting punishment <<=setup.getNpcName("npc_manager","formal")>> has surely already come up with.<br>
<br>
Wordlessly understanding your reluctance <<=setup.getNpcName("npc_technician","first")>> rises to her feet and addresses <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_technician;I thank you for the offer, but I fear <<=$player.first_name>> may be overestimating my expertise. I do not feel quite prepared to make such a demonstration at this time.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> glances at you and smiles knowingly. "@@.npc_manager;Very well. Do feel free to return if you change your mind... now that the seed is planted I am quite looking forward to watching you take my lovely assistant in hand...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bows in thanks and then departs, pausing at your desk as she picks up her coat and ties it closed to hide her dominatrix costume. "@@.npc_technician;So, I guess that could have gone better. Thanks for the attempt, and I'm sorry it didn't work out, though I guess we know what we have to do now... no pressure though, I don't want you doing anything you don't want to, certainly not on my behalf. You can think of me as TODO — I will love you in freedom or bondage just the same.@@"<br>
<br>
You give her a parting hug, trying not to get too distracted by her corset-slimmed waist before she scampers off and you take a seat at your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>><<removeItem 'rpg_succubus_leash' true>><<deleteItem 'rpg_succubus_leash'>><<if $scene.addCollar>><<removeItem 'bondage_collar_promo'>><<deleteItem 'bondage_collar_promo' true>><</if>>">>]
<</if>>
</div>/*#
#desc: technician edges you in front of manager
#status: RELEASED 0.8.6.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<include "removeCage_retractSissyomatic">>
<<applyExperience 'bondage' 10 'normal' $SEEN_FRIEND>>
<<changeHorny 20>>
<<else>>
<<removeItem 'rpg_succubus_leash' true>>
<<deleteItem 'rpg_succubus_leash'>>
<<useClothSetPop 'tmp'>>
<<if $scene.addCollar>>
<<removeItem 'bondage_collar_promo'>>
<<deleteItem 'bondage_collar_promo' true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Lip quivering, you nod as
<<if $scene.isSissyomatic>>
you sit with your <<if $player.body_ref.penis>>already excited <<getWordMyPenis>><<else>><<getWordVagina>><</if>> exposed to the world.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> gently unlocks and carefully removes your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>.
<</if>>
<<=setup.getNpcName("npc_technician","first")>> reaches <<if $player.body_ref.penis>>to take hold of<<else>>for<</if>> you only for <<=setup.getNpcName("npc_manager","formal")>> to re-appear holding a set of padded cuffs.<br>
<br>
"@@.npc_manager;I believe these may prove of use — and do not worry about getting your slave too excited — the chair is more than designed to stand up to this sort of thing.@@"<br>
<br>
You gasp as your legs are spread, ankles bound to the arms of the chair with your wrists pulled back and down. You are utterly exposed and helpless, your <<if $player.body_ref.penis>><<getWordMyPenis>> stiff and already weeping its first drops of pre<<if $player.body_ref.vagina>> and your <<getWordVagina>>trembling in anticipation just behind<</if>><<else>><<getWordVagina>> quivering and wet with anticipation<</if>>.<br>
<br>
<<if $player.body_ref.penis>>
Finally reaching out, <<=setup.getNpcName("npc_technician","first")>> wraps her hand delicately around your base and then strokes once.
<<else>>
Finally reaching out, <<=setup.getNpcName("npc_technician","first")>> curls two fingers into you, touching near, but not on, your sensitive g-spot.
<</if>>
<br><br>
You full-body shudder, torn between wishing you had a gag and thankful that the option remains to safe-word if you need it.<br>
<br>
<<if $player.body_ref.penis>>
Looking down at <<=setup.getNpcName("npc_technician","first")>> proves a mistake as she smiles back, pulling your foreskin back to gently blow air across your dripping head, totally in charge from her dommy outfit to her sparkling eyes even while technically kneeling in front of you.<br>
<br>
Wrapping her other hand around your balls <<=setup.getNpcName("npc_technician","first")>> gives a gentle tug, just enough to distract and balance out sensations as she strokes you once again. Panting quickly you almost
<<else>>
Still with two fingers inside of you, <<=setup.getNpcName("npc_technician","first")>> spreads your lips to expose your clit to her softly blowing breath, in total control despite technically kneeling in front of you.<br>
<br>
You pant, and then nearly
<</if>>
lose it when the plug in your rear bursts to life for a moment, the rattling vibrations buzzing through your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as your eyes flash open.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> follows your gaze to <<=setup.getNpcName("npc_manager","formal")>> standing with remote in hand and a cat-like grin on her face.<br>
<br>
"@@.npc_manager;What, you didn't think it was going to be that easy, did you? I need to be completely sure that you can keep her from spilling over the edge if I am to trust you with her key.@@"<br>
<br>
You groan, already so close and yet the two women seem to have only begun — can you really handle them both at once, or is this how you finally go mad?<br>
<br>
Taking the challenge in stride <<=setup.getNpcName("npc_technician","first")>> places one hand against the base of your plug to better monitor its activities as she teases <<if $player.body_ref.penis>>your <<getWordMyPenis>><<else>>you<</if>> with nothing but her fingertips.<br>
<br>
Another quick burst of vibration results in <<=setup.getNpcName("npc_technician","first")>> freezing in place, the pressure on your plug only pushing it deeper and making its brief movement more intense.<br>
<br>
You are so close, just humping your legs against her hand would probably be enough for you to get off...<br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_fail_1' "Give in to the urge and cum." 300>>]<br>
<<if setup.getWillpower() > 0>>
[<<moveTo 'event_technician_key_request_dom_7_edge_3' 'Stay still and strong.' 300 "<<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You lack the mental reserves to endure any more.@@]
<</if>>
<<else>>
Your heart races so fast you're afraid it's going to beat its way out of your chest, your voice cracking midway through the word "@@.pc;Teacup,@@" as you desperately pant.<br>
<br>
"@@.npc_technician;Oh you poor thing!@@" <<=setup.getNpcName("npc_technician","first")>> coos, breaking kayfabe as she leans in to hug you. "@@.npc_technician;I'm sorry, I think this is just too much for today...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> snorts and then walks back around to behind her desk. "@@.npc_manager;Very well, but that means no key for you today. Maybe the two of you can practice and try again, you seemed so close...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> keeps her arms wrapped around you until you calm down then helps you back into your clothes and leads you out of the room. <<=setup.getNpcName("npc_manager","formal")>> had already turned back to her work.<br>
<br>
"@@.npc_technician;Sorry about that,@@" <<=setup.getNpcName("npc_technician","first")>> states in comfort as she removes the leash and puts her raincoat back on. "@@.npc_technician;You gonna be alright?@@"<br>
<br>
You nod, disappointed in yourself but also somewhat glad to be back to the comparative safety of your workstation. <<=setup.getNpcName("npc_technician","first")>> smiles and kisses you goodbye before carefully walking out of the room, obviously still struggling a bit in the steep (for her) heels.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: technician edges you in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<<changeHorny 20>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bite your lip and squeeze your eyes shut as you try to ride things out but as soon as you feel like you have a handle on matters, <<=setup.getNpcName("npc_technician","first")>> is back at it, rocking the plug in your rear with one hand <<if $player.body_ref.penis>>as her other creeps up your <<getWordMyPenis>><<else>>as she softly blows and her fingers move at an agonisingly slow pace<</if>>.<br>
<br>
Your eyes fluttering open you stare down at <<=setup.getNpcName("npc_technician","first")>> in desperation but she merely shakes her head.<br>
<br>
"@@.npc_technician;Shhh, stay strong, you're a good <<=setup.getBoyGirl($npc_technician)>> who has lots of control.@@"<br>
<br>
You are less sure than she seems to be, especially when she increases her pace ever so slightly and your plug begins to buzz at a setting so low it is like it is throbbing inside of you.<br>
<br>
You are too sensitive for constant contact and you are frustrated and grateful in equal measures when <<=setup.getNpcName("npc_technician","first")>> begins syncopating her touch, her fingers never in contact for more than a second at a time as she watches you like a hawk and keeps you teetering right on the edge. Her hands are soon slick with <<if $player.body_ref.penis>>pre<<else>>the proof of your arousal<</if>>.<br>
<br>
So focused on monitoring your condition, <<=setup.getNpcName("npc_technician","first")>> seems to have forgotten the third person in the room when <<=setup.getNpcName("npc_manager","formal")>> pops back into the picture.<br>
<br>
<<if $fetish.sounding && $player.body_ref.penis>>
"@@.npc_manager;You have skill at this indeed but if she is left like this <<if $scene.isSissyomatic>>getting her back into her <<if $scene.isCage>>cage<<else>>belt<</if>> will be quite uncomfortable<<else>>she will never fit back into her <<if $scene.isCage>>cage<<else>>belt<</if>><</if>>. I think a nice ruin would be perfect to preserve this wonderful tension that you have infused her with... I believe this would be of assistance in the matter.@@" <<=setup.getNpcName("npc_manager","formal")>> adds, opening one hand to reveal a beaded sound, "@@.npc_manager;Or I could fetch an ice pack if you wanted to just calm her down.@@"<br>
<br>
Panting through your nose, you notice <<=setup.getNpcName("npc_technician","first")>> watching you out of the corner of her eye as if gauging your thoughts.<br>
<br>
<<if setup.getTotalValue("submission") > 13 && setup.getTotalValue("bdsm") > 13>>
[<<moveTo 'event_technician_key_request_dom_7_edge_4' "You are transfixed by the intimate prospect of the sound." 300 "<<set $scene.action='sound'>>">>]<br>
<<else>>
[@@.link_locked;After as much as you have already endured the sound looks like a bridge too far.@@]<br>
<</if>>
<<else>>
"@@.npc_manager;You have skill at this indeed but if she is left like this she will <<if $player.body_ref.penis>>never fit back into her <<if $scene.isCage>>cage<<else>>belt<</if>><<else>>surly leak past her belt and all over her clothes<</if>>. I think a nice ruin would be perfect to preserve this wonderful tension that you have infused her with... perhaps seal it with an ever so gentle kiss?@@" You immediately stare at <<=ps(setup.getNpcName("npc_technician","first"))>> lovely lips, imagining how soft and divine they would feel... "@@.npc_manager;Or I could fetch an ice pack if you wanted to just calm her down.@@"<br>
<br>
Panting through your nose, you notice <<=setup.getNpcName("npc_technician","first")>> watching you carefully as if gauging your thoughts.<br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_4' "You would love few things more than a kiss." 300 "<<set $scene.action='kiss'>>">>]<br>
<</if>>
[<<moveTo 'event_technician_key_request_dom_7_edge_4' "Just close your eyes and wait." 300 "<<set $scene.action='wait'>>">>]<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_4' "You're on fire, you need ice." 300 "<<set $scene.action='ice'>>">>]
</div>/*#
#desc: technician edges you in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'wait'>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<case 'ice'>>
<<set $player.timebased.horny = 10>>
<<include "replaceCage_extendSissyomatic">>
<<useClothSetPop 'tmp'>>
<<if $scene.addCollar>>
<<removeItem 'bondage_collar_promo'>>
<<deleteItem 'bondage_collar_promo' true>>
<</if>>
<<removeItem 'rpg_succubus_leash' true>>
<<deleteItem 'rpg_succubus_leash'>>
<<set $npc_technician.relationship.keyholder = true>>
<<case 'sound'>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<<case 'kiss'>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'wait'>>
You bite your lip and try to control your breathing as you wait for <<=setup.getNpcName("npc_technician","first")>> to make her move.<br>
<br>
"@@.npc_technician;Hmm, an intriguing possibility but I'm in the zone right now and I want to finish <<=setup.getHimHer($npc_technician)>> off by hand.@@"<br>
<br>
"@@.npc_manager;Very well, then let me see you utterly ruin my sweet <<if $fetish.sissy>>sissy<<else>>secretary<</if>>.@@"<br>
<br>
Your whimper turns to an almost pained moan as <<=setup.getNpcName("npc_technician","first")>> resumes her agonising pleasurable stimulation. Every brush of her fingers is like fire, your <<if $player.body_ref.penis>><<getWordMyPenis>><<if $player.body_ref.vagina>>and <<getWordVagina>><</if>><<else>><<getWordVagina>><</if>> so sensitive you feel ready to explode at any instant but she manages to hold it back. A brush of fingernails <<if $player.body_ref.balls>>or a tug on your testicles<<else>>down your thighs<</if>> balances out every contact with your desperately yearning bits. With an almost brazen level of confidence she even leans in, her breath alone making you ache but when her tongue ever so slowly tickles <<if $player.body_ref.penis>>the underside of your shaft<<else>>your hood<</if>>...<br>
<br>
You tense in your bonds. You can't believe you haven't cum yet and you want to, but if you do so now you will "ruin" all of her progress and spoil any chance of her laying claim to your key...<br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_fail_1' "Give in to the urge and cum." 300>>]<br>
<<if setup.getWillpower() > 0>>
[<<moveTo 'event_technician_key_request_dom_7_edge_5' 'Stay still and strong.' 300 "<<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You lack the mental reserves to endure any more.@@]
<</if>>
<<case 'ice'>>
Somehow <<=setup.getNpcName("npc_technician","first")>> correctly interprets your forlorn whine as a request for ice and the almost agonising chill is soon soothing the fire in your loins as you <<if $player.body_ref.penis>>wilt, shrink, and are<<else>>curl up and cool down before being<</if>> locked back up in your chastity.<br>
<br>
<<if $scene.isSissyomatic>>
The <<=setup.getItemName('sissyomatic')>> closes over around and into you once again as <<=setup.getNpcName("npc_manager","formal")>> takes a moment to load something onto <<=ps(setup.getNpcName("npc_technician","first"))>> phone. "@@.npc_manager;Actually removing a <<=setup.getItemName('sissyomatic')>> completely is reserved for senior company management, but this will allow you necessary access... as well as proximity control of all of the functions it has while it remains locked over, and inside, its subject.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> hands <<=setup.getNpcName("npc_technician","first")>> a key, beaming with pride.<br>
<br>
"@@.npc_manager;Well you have certainly earned this — the both of you. Have fun... though not TOO much fun. After all, restrictions make for better and more perfect girls.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> seems almost in awe as she accepts the responsibility. "@@.npc_technician;Thank you, <<=setup.getNpcName("npc_manager","other")>> I promise to take good care of <<=setup.getHimHer($npc_technician)>>.@@"<br>
<br>
"@@.npc_manager;I know.@@" <<=setup.getNpcName("npc_manager","formal")>> replies with a gentle smile. "@@.npc_manager;But now it is time for all three of us to return to work — we can't be paid to play with sexy sweet <<if $fetish.sissy>>sissies<<else>>slaves<</if>> all the time!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> laughs, helping you back into your clothes and then leading you to crawl back to your desk. Removing the leash and giving you a friendly head-pat she pulls the rain-coat back over her dominatrix attire and kisses you goodbye.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<case 'sound'>>
You stare at the sound with a mix of fear and lust. <<=setup.getNpcName("npc_technician","first")>> notes your interest and smiles before gently taking it in hand, holding you ever-so-gently vertical with the palm of one hand as she brings the blunt tip to your narrow hole. Despite your bonds, the plug in your rear, and the fact that you will certainly be locked in chastity as soon as this is over... the feeling of the sound entering you is a new rung of surrender. With each bulge of the beaded rod that slides into your body you ascend to another level of submission.<br>
<br>
Your pleasure, your torment... both are one and the same, tools to be used by these two women to control you and so, so much more. <<=setup.getNpcName("npc_technician","first")>> releases her grasp and the sound drops the final half centimetre. Like the plunger on a charge of dynamite it sends a rush of energy through your body... and yet you do not cum.<br>
<br>
Her hand wrapping around you once again everything is heightened, pressure from within and without as the metal sound acts like the proverbial <<if $player.identify_as == "female">>and, in a way, literal <</if>>finger in the dyke to hold back the onrush of sensation.<br>
<br>
All but forgetting to breathe, for some reason all you can think of is to try to keep your eyes open, to look out at the two women in front of you — <<=setup.getNpcName("npc_manager","formal")>> looking down with an amused grin, <<=setup.getNpcName("npc_technician","first")>> kneeling before you, in complete control as she bites her lip in intense concentration.<br>
<br>
As if signalled by some secret dom telepathy <<=setup.getNpcName("npc_manager","formal")>> activates the plug to buzz in your rear, the vibrations running through your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> to form an almost unbroken chain of over-stimulated pleasure from the tip of your trembling <<getWordMyPenis>> down and then back to your filled ass.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> starts to withdraw the sound, the reverse movement almost even more intense then when it slid in as she varies the speed to keep you just on the edge until, with the flick of her wrist she pulls it free and then withdraws both hands as the plug in your rear falls silent.<br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_5' 'Ruined.' 300>>]
<<case 'kiss'>>
You tremble as you look your <<=setup.getNpcName("npc_technician","title")>> in the eye and she slowly, ever so slowly leans forward.<br>
<br>
Her hands are still, the only stimulation the soft exhale of her breath as your rear clamps down on its occupant. You are so wound up even that is mind-blowingly intense and then she lays the softest of kisses on your quivering <<if $player.body_ref.penis>>tip<<else>>nub<</if>>.<br>
<br>
You freeze, your entire body going rigid as her lips linger for a moment and then pull away...<br>
<br>
[<<moveTo 'event_technician_key_request_dom_7_edge_5' 'Ruined.' 300>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: technician ruins you in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $player.timebased.horny = 60>>
<<applyFatigue 60>>
<<include "replaceCage_extendSissyomatic">>
<<removeItem 'rpg_succubus_leash' true>>
<<deleteItem 'rpg_succubus_leash'>>
<<if $scene.addCollar>>
<<removeItem 'bondage_collar_promo'>>
<<deleteItem 'bondage_collar_promo' true>>
<</if>>
<<set $npc_technician.relationship.keyholder = true>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_keyholder')>>
<<set $npc_technician.themes.sex[_themeId].repeatable = false>>
<<addEvent 'technician_keyholder_home'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.action == 'wait'>>
Tensing every muscle in your body you manage to hold on as <<=setup.getNpcName("npc_technician","first")>> gives a final <<if $player.body_ref.penis>>stroke<<else>>lick<</if>> and then pulls away to watch.
<</if>>
Shaking in your seat you hang, hang... and then it happens, your climax <<if $player.body_ref.penis && $fetish.cum>>oozing<<else>>dragged<</if>> painfully out. Unprompted by so much as a touch, falling over the cliff into ruin is agony. Panting in desperation you thrash in your bonds as <<if $player.body_ref.penis>><<getWordCum>><<else>>your ruined relief<</if>> dribbles down like a slowly flowing volcano.<br>
<br>
A slow, forlorn moan escapes your lips as you are drained and yet remain <<if $player.body_ref.penis>>hard and<<else>>no less<</if>> aroused, desperate for more and yet fearful of the slightest touch in your still-heightened state.<br>
<br>
With an almost uncharacteristically devilish grin on her face, <<=setup.getNpcName("npc_technician","first")>> waits until you start to catch your breath and then touches you again, a single <<if $player.body_ref.penis>>upward stroke<<else>>pinch of your clit<</if>> that <<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>forces more oozing cream out of you<<else>>sends out explosions of sensation<</if>> even as the firm grip somehow continues to prevent the commiserate pleasure of orgasm.<br>
<br>
Breathing staccato you <<if $player.body_ref.penis && $fetish.cum && $player.body_ref.cumProduction > 0>>ooze your pent-up desperation down her hand, clenching<<else>>clench<</if>> down on the plug in your rear as if in hopes of an analgasm that remains just as infuriatingly out of your reach, your body on fire for a moment before the heat begins to recede, the sensation of being drained and exhausted spreading outward, the crash without the catharsis of climax.<br>
<br>
Wilting in your bonds your breaths slow, barely cognisant as you are gently wiped clean and your chastity device replaced. Only as the restraints are removed and you go limp in the chair do you begin to process anything past your own abused body.<br>
<br>
Too overwhelmed to move you watch as
<<if $scene.isSissyomatic>>
<<=setup.getNpcName("npc_manager","formal")>> loads an app onto your girlfriend's phone and explains the workings of the <<=setup.getItemName($scene.cage)>>.<br>
<br>
"@@.npc_manager;Actually removing a <<=setup.getItemName($scene.cage)>> completely is reserved for senior company management, but this will allow you necessary access... as well as proximal control over all of the functions it has while it remains locked over, and inside, its subject.@@"
<<if $npc_technician.relationship.sissyomatic>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip and explains that, actually... she's wearing a similar device.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> raises an eyebrow in surprise. "@@.npc_manager;Oh my, I was unaware they were rolling them out to IT... still, you must admit the security is wonderful. Do note, of course, that <<=ps($player.first_name)>> device has a totally different key-code and this access I am granting you will not apply to your own device.@@"<br>
<br>
You can see <<=setup.getNpcName("npc_technician","first")>> struggling not to roll her eyes at having such basic security principles explained to her, but she holds her tongue and merely nods.
<</if>>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> hands <<=setup.getNpcName("npc_technician","first")>> a key.<br>
<br>
"@@.npc_manager;Simply wonderful, you have certainly proven your worthiness of taking care of this — the both of you. Have fun... though not TOO much fun, after all restrictions make for better, more perfect girls.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> seems almost in awe as she accepts the responsibility. "@@.npc_technician;Thank you, <<=setup.getNpcName("npc_manager","other")>> I promise to take good care of <<=setup.getHimHer($npc_technician)>>.@@"<br>
<br>
"@@.npc_manager;I know.@@" <<=setup.getNpcName("npc_manager","formal")>> replies with a gentle smile. "@@.npc_manager;But now it is time for all three of us to return to work — we can't be paid to play with sexy sweet <<if $fetish.sissy>>sissies<<else>>slaves<</if>> all the time!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> laughs, helping you back into your clothes and then leading you to crawl back to your desk. Removing the leash and giving you a friendly head-pat she pulls the rain-coat back over her dominatrix attire and kisses you goodbye.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: you cum all over technician in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 16 'terrible' $SEEN_FRIEND>>
<<playerOrgasm>>
<<applyFatigue 60>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You buck your hips and immediately <<if $player.body_ref.penis>>cum<<else>>climax<</if>>.
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction > 0>>
With cat-like reflexes <<=setup.getNpcName("npc_technician","first")>> pulls back, but not far enough to keep from being blasted with your <<if $player.body_ref.cumProduction > 1>>torrent<<else>>fountain<</if>> of jizz
<<else>>
You dry orgasm with such force you swear <<=ps(setup.getNpcName("npc_technician","first"))>> hair is ruffled in the blast
<</if>>
<<else>>
With cat-like reflexes <<=setup.getNpcName("npc_technician","first")>> pulls back, but not far enough to keep from being drenched by your intense, squirting orgasm
<</if>>
as you almost convulse in your bonds.<br>
<br>
Responding to your failure <<=setup.getNpcName("npc_manager","formal")>> sends an electric jolt coursing through your rear but it is too late, what should be an agonising shock only causing you to <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>spurt<<else>>cum<</if>> again as your frazzled nervous system loses the capacity to distinguish pain from pleasure.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> <<if $player.body_ref.penis>>grips your shaft<<else>>clings to your thighs<</if>> like she was riding a bucking bronco, the chair rocking as you <<if $fetish.cum && $player.body_ref.cumProducion > 0>>cum and cum until your balls are drained and your <<getWordMyPenis>> is just shooting air<<else>>cum your brains out<</if>>.<br>
<br>
With a final powerful strain you almost lift away from the seat, every muscle giving its all only to be thwarted by the restraints as you finally collapse, wilting into a puddle of exhaustion on the chair as you finally look down to see the <<if $fetish.cum && $player.body_ref.cumProducion > 0>>cum covering <<=ps(setup.getNpcName("npc_technician","first"))>> glasses and dripping down onto her exposed chest<<else>>shaking her head in disappointment<</if>>.<br>
<br>
"@@.npc_manager;Well... I would have to call that a failure of control.@@" <<=setup.getNpcName("npc_manager","formal")>> states<<if $fetish.cum && $player.body_ref.cumProducion > 0>>, handing <<=setup.getNpcName("npc_technician","first")>> a towel<</if>>.<br>
<br>
"@@.npc_technician;Yeah...@@" <<=setup.getNpcName("npc_technician","first")>> replies<<if $fetish.cum && $player.body_ref.cumProducion > 0>>, absent-mindedly licking her lips before cleaning her glasses<</if>>.<br>
<br>
<<if $scene.isSissyomatic>>
The <<=setup.getItemTypeName('cage')>> closes back over your <<if $player.body_ref.penis>>shriveled member<<else>>sensitive valley<</if>>, covering and penetrating you for what you imagine will be quite some time. The feel of it closing over and into you makes you wince, your flesh still hyper-sensitive from your ordeal.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> hands <<=setup.getNpcName("npc_technician","first")>> your <<if $scene.isCage>>cage<<else>>belt<</if>> and she dutifully locks you away, hesitating for a moment of forlorn disappointment before handing over the key.
<</if>>
<br><br>
"@@.npc_manager;You made quite an effort, but I think some more practice and training is in order before I can trust you with possession of the key. Let me know when you wish to make another attempt.@@"<br>
<br>
"@@.npc_technician;Y-yeah,@@" <<=setup.getNpcName("npc_technician","first")>> replies, her dominant bravado completely dissolved as she wipes off the rest of her face and helps you out of your restraints.<br>
<br>
[<<moveTo "event_technician_key_request_dom_7_edge_fail_2" "Continue." 60>>]
</div>/*#
#desc: technician leaves after you came all over her in front of manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<if $scene.addCollar>>
<<removeItem 'bondage_collar_promo'>>
<<deleteItem 'bondage_collar_promo' true>>
<</if>>
<<removeItem 'rpg_succubus_leash' true>>
<<deleteItem 'rpg_succubus_leash'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician","npc_technician_dom_2") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Legs weak, you stagger slightly and <<=setup.getNpcName("npc_technician","first")>> helps you back to your desk, setting you gently down before patting you and the head and gracing you with a smile.<br>
<br>
"@@.npc_technician;Sorry that didn't go better though... holy crap I don't know when I've ever seen someone cum so hard! I mean sure, I'm disappointed on your behalf but... well I'm also a bit proud that I was able to get you off that powerfully!@@"<br>
<br>
You try to laugh along with her enthusiasm but you're just too tired, merely half-smiling back as she wraps the raincoat over her dominatrix attire and prepares to leave.<br>
<br>
"@@.npc_technician;Good thing I used the no-run makeup today!@@" She says with a smile, blowing you a parting kiss and heading on her way... walking just a little awkwardly, you note... though that could be just the steep-for-her heels.<br>
<br>
The door closes behind her and you turn to your computer.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: technician meets you after work after keyholder meeting
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician","npc_technician_dom_1")>>
<<else>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
You ride the elevator down to the lobby to find <<=setup.getNpcName("npc_technician","first")>> waiting for you.<br>
<br>
<<if $npc_technician.relationship.keyholder>>
"@@.npc_technician;So! Now that I have the key... I want to take YOU for a test drive.@@"<br>
<br>
She takes a step towards you only to wobble slightly and you to rush over to support her.<br>
<br>
"@@.npc_technician;Oh thank the goddess — wearing these heels all day has proven... something of a mistake... if you could be a good slave and help me home I promise I have lots of fun planned...@@"
<<else>>
"@@.npc_technician;Sorry things didn't work out... I'll try to do better next time but I thought you could come over to my place for a bit and I could do what I can to make it up to you?@@"
<</if>>
<br><br>
[<<moveTo "event_technician_keyholder_post_2" 'Go home with her.' 300 "<<set $scene.goWith=true>>">>]<br>
[<<moveTo "event_technician_keyholder_post_2" "Say you already have other plans." 300 "<<set $scene.goWith=false>>">>]
</div>/*#
#desc: head home with technician evening after keyholder
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician","npc_technician_dom_1")>>
<<else>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.goWith>>
<<if $npc_technician.relationship.her_role == 'dom'>>
With you helping her balance, you head for the exit where <<=setup.getNpcName("npc_technician","first")>> ends up summoning an auto-taxi to shuttle the two of you to her flat.<br>
<br>
"@@.npc_technician;I think I've done enough walking in heels today! I don't see how you do it, but damn does it make you look hot!@@"
<<else>>
The two of you enjoy holding hands along the quick walk back to her apartment.
<</if>>
<br><br>
<<if $npc_technician.relationship.keyholder>>
[<<moveTo "event_technician_keyholder_post_success_1" "Continue." 600>>]
<<else>>
[<<moveTo "event_technician_keyholder_post_failed_1" "Continue." 600>>]
<</if>>
<<else>>
You explain that you can't tonight...<br>
<br>
"@@.npc_technician;Oh,@@" she replies with obvious disappointment. "@@.npc_technician;Sorry to hear that... well, I guess I'll see you around then.@@"<br>
<br>
<<if $npc_technician.relationship.her_role == 'dom'>>
You awkwardly help her out of the lobby where she flags down an auto-taxi. "@@.npc_technician;Yeah... no way am I walking home like this, I don't know how you handle heels with such ease!@@"<br>
<br>
<</if>>
She gives you a hug to show there's no hard feelings (only for her pressing against you to reveal that is a hard "something"), then departs, leaving you alone in the lobby.<br>
<br>
[<<moveTo "room_citymap" "City Centre." 120>>]
<</if>>
</div>/*#
#desc: technician welcomes you into apartment to wand you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_role == 'dom'>>
Entering her apartment, <<=setup.getNpcName("npc_technician","first")>> practically flops onto the sofa and kicks up her feet. "@@.npc_technician;Massage. Now... I promise to take care of you immediately after but right now my dogs are barkin'!@@"<br>
<br>
Shrugging out of her jacket to display her dominatrix get-up, she playfully kicks her boots at you in invitation.<br>
<br>
[<<moveTo "event_technician_keyholder_post_massage" "Massage!" 600 "<<set $scene.massage=true>>">>]<br>
<<else>>
Skipping across the apartment, <<=setup.getNpcName("npc_technician","first")>> heads straight for the bedroom and beckons you onto the bed.<br>
<br>
"@@.npc_technician;Come on, <<if $npc_technician.relationship.her_role == 'sub'>>Mistress, <</if>>just lay back and relax. I've got just the thing to make up for today's frustration!@@"<br>
<br>
[<<moveTo "event_technician_keyholder_post_failed_2" "Continue." 600>>]<br>
<</if>>
[<<moveTo "event_technician_keyholder_post_leave" "Leave." 120>>]
</div>/*#
#desc: massage technician feet before she wands you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 13 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
You drop to your knees and begin unzipping <<=ps(setup.getNpcName("npc_technician","first"))>> knee-high sexy leather boots.<br>
<br>
"@@.npc_technician;Yes!@@" She moans as the first boot comes off, stretching her feet and wiggling her toes. "@@.npc_technician;Oh, I don't know how you manage it! My feet are just not meant for heels!@@"<br>
<br>
Removing the other shoe you start in on one of your famous massages, rubbing her arches, working her heel, finding and un-tangling every knot from her calf. She sinks into the couch, softly moaning in pleasure.<br>
<br>
"@@.npc_technician;Oh, Goddess, you are so good at that... almost makes it worth the discomfort of wearing those heels to come home to this...@@"<br>
<br>
You think she's about to pass out until she suddenly springs to her feet and skips towards the bedroom.<br>
<br>
"@@.npc_technician;Well, come along, then! I promised you a reward and I owe it to you double now!@@"<br>
<br>
[<<moveTo "event_technician_keyholder_post_failed_2" "Continue." 600>>]<br>
[<<moveTo "event_technician_keyholder_post_leave" "Leave." 120>>]
</div>/*#
#desc: technician wands you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<<else>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
You join <<=setup.getNpcName("npc_technician","first")>> in her bed where she soon has you out of your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>> and your panties pulled aside to reveal your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>.<br>
<br>
"@@.npc_technician;Alright, I know you're still stuck locked, but this,@@" she pulls a wand out from under the bed, "@@.npc_technician;will take care of you without ever letting you out.@@"<br>
<br>
She smiles at you as she brings the wand to <<if setup.isCage()>>your cage<<else>>the front of your belt<</if>> and turns it on.<br>
<br>
<<if setup.getChastityLevel() == 5>>
The rumbling of the wand seems loud in the small apartment but you feel nothing, the fancy material of the <<=setup.getItemName($scene.cage)>> muffling everything and leading you to let out a whine of frustration.<br>
<br>
"@@.npc_technician;What's going on?@@"<br>
<br>
You bite your lip and shake your head as you look up at her. She slumps, crestfallen. "@@.npc_technician;You mean you can't feel anything? Oh, no, now I feel even worse that I didn't manage to get your key. Oh, you poor, poor thing...@@" She turns the wand off for a moment, setting it aside before turning to reach under the bed again and pull out an attachment.<br>
<br>
Slipping it over the top of the wand she presents you with a slightly curved, bulbous attachment.<br>
<br>
"@@.npc_technician;This is specifically designed for ultimate <<if $player.body_ref.penis>>prostate<<else>>butt<</if>> stimulation, so hike those hips up on a pillow and let's get you the relief you need!@@"
<<else>>
The powerful vibrations of the wand run straight through <<if setup.isCage()>>your cage<<else>>the front panel of your belt<</if>>. Though you are restricted from growing by your prison, the stimulation feels like it is coming from every direction. It is intense and inescapable. You moan, reflexively shuffling back on the bed only for <<=setup.getNpcName("npc_technician","first")>> to stay with you.<br>
<br>
Wand pressed tightly against your <<if setup.isCage()>>cage<<else>>belt<</if>>, <<=setup.getNpcName("npc_technician","first")>> pins you down. Your hips buck at the intense stimulation as you start to leak out <<if setup.isCage()>>of your cage<<else>>out the sides of your belt<</if>>.<br>
<br>
A strange, full-body orgasm rumbles through you as you thrash about but <<=setup.getNpcName("npc_technician","first")>> just grins in delight. She keeps the stimulation going until your body goes limp, drained and exhausted.<br>
<br>
"@@.npc_technician;Oh we aren't done yet, my dear.@@" She says with a smile, pulling the wand away and flicking it off as she casually grabs an attachment from under the bed. "@@.npc_technician;This is specially designed for <<if $player.body_ref.penis>>prostate<<else>>butt<</if>> stimulation, you may still be locked but I don't want you leaving until you're completely satisfied!@@"
<</if>>
<br><br>
[<<moveTo "event_technician_keyholder_post_failed_3" "Continue." 600>>]<br>
[<<moveTo "event_technician_keyholder_post_leave" "Leave." 120>>]
</div>/*#
#desc: technician prostate wands you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<<else>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getChastityLevel() == 5>>
<<=setup.getNpcName("npc_technician","first")>> slides the toy through the hollow centre of your plug and turns it on... and again, nothing. You groan in frustration, whatever dampening effect was activated when she tried to vibrated your <<if setup.isCage()>>cage<<else>>front<</if>> seems to have spread, the plug stubbornly refusing to relay the <<if $player.body_ref.penis>>prostate<<else>>butt<</if>>-thrumming stimulation you now desperately yearn for.<br>
<br>
"@@.npc_technician;Nothing?@@" She asks and you whimper in response.<br>
<br>
"@@.npc_technician;Oh you poor thing!@@" she replies, putting the wand aside. "@@.npc_technician;Oh, I'm so sorry I wasn't able to earn your key. This is just such a failure of a day.@@"<br>
<br>
You reach out to comfort her and the two of you hug, arms wrapped around one another as you come down from your frustration.<br>
<br>
Finally taking a deep breath, you explain that you should probably go.<br>
<br>
"@@.npc_technician;Yeah, I understand,@@" she sighs
<<else>>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<=setup.getNpcName("npc_technician","first")>> gives your plug a quick buzz to loosen things up before sliding it free and replacing it with the wand attachment. Well lubricated, it slides easily into your rear.
<<else>>
The wand attachment slides into your rear easily. Thank the Goddess for lubrication.
<</if>>
She spends a moment wiggling it into position. You feel it press firmly against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>... and then she flicks the switch.<br>
<br>
Your eyes go wide at the rumbling sensation running through you. You gasp and moan, your hole quivering around the intruder as your <<if $player.body_ref.penis>>prostate is<<else>>insides are<</if>> treated to a joyous celebration that has you almost instantly leaking out <<if setup.isCage()>>through your cage<<else>>past your belt<</if>>.<br>
<br>
Grinning in triumph <<=setup.getNpcName("npc_technician","first")>> flicks the power up even higher, holding you down as you thrash in ecstasy. A second analgasm causes you to almost rise off the bed before collapsing, overwhelmed.<br>
<br>
Turning off the vibrator, <<=setup.getNpcName("npc_technician","first")>> waits for you to recover somewhat as she strokes your hair. "@@.npc_technician;Wow, I've hit some slut buttons in my day but that... A part of me wonders if you even need to be let out of your chastity, since you cum so hard even locked inside of it!@@"<br>
<br>
You whimper and she smiles "@@.npc_technician;Oh, I'm just teasing you! I promise I'll do my best next time I get a shot at becoming your keyholder. Mmmm, seeing you like this makes me even more excited to have such total control over this...@@" She reaches down and <<if setup.isCage()>>wraps her hand possessively around your cage<<else>>strokes the front of your belt<</if>>.<br>
<br>
She leans in for a kiss and then cuddles you until you've recovered, <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>helping you slide the plug back into your hole and<</if>>assisting in fixing your clothes.
<</if>>
<br><br>
"@@.npc_technician;I promise next time I'll do much better! Oh, I want to get you out, and off so much!@@"<br>
<br>
You thank her for the concern, promising to let her know when you've scheduled another test with <<=setup.getNpcName("npc_manager","formal")>> before you head out.<br>
<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 300>>]
</div>/*#
#desc: leave rather than be wanded by technician
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_technician' 2>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
You suddenly remember somewhere else you need to be and excuse yourself.<br>
<br>
She frowns in disappointment. "@@.npc_technician;You really need to keep a better handle on your schedule. If you have to go, well... I guess I'll see you around.@@"<br>
<br>
You share a hug and then depart.<br>
<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 300>>]
</div>/*#
#desc: technician aftercare
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
Once you're inside <<=ps(setup.getNpcName("npc_technician","first"))>> flat and the door's shut she hobbles away, shedding the overcoat and standing as steadily as she can to show off her dominatrix glory.<br>
<br>
"@@.npc_technician;Alright, my dear, I will be letting you out for some fun shortly but first...@@" She gestures downward "@@.npc_technician;Your <<=ps(setup.getNpcName('npc_technician', 'title'))>> feet need some tender loving.@@"<br>
<br>
[<<moveTo "event_technician_keyholder_post_success_2" "Kneel down and give her a foot massage." 600>>]<br>
[<<moveTo "event_technician_keyholder_post_leave" "Leave." 120>>]
</div>/*#
#desc: massage technician feet before she unlocks you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 10 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> carefully attempts to sit back on the couch. Slightly misjudging her heel-assisted height she drops the final few centimetres with a borderline crash, but tries to play it off cool.<br>
<br>
Stifling a grin you crawl over and take one of her feet in hand, kissing your way from her toes to her steep heel and up the leather to her knee before taking the zipper between your teeth.<br>
<br>
She moans in relief as you slide off the boot, wiggling her toes and circling her ankle before you give her arch a quick rub.<br>
<br>
"@@.npc_technician;Your fingers are magic...@@" She sighs as you get to work. "@@.npc_technician;Oh, I don't know how you manage it! My feet are just not meant for heels!@@"<br>
<br>
You give her toe a kiss before switching off to remove the other shoe. You start in on one of your famous massages, rubbing her arches, working her heel, finding and un-tangling every knot from her calf as she sinks into the couch, softly moaning in pleasure.<br>
<br>
"@@.npc_technician;Oh, Goddess, you are so good at that... almost makes it worth the discomfort of wearing those heels if I knew I'd be coming home to a slave at my feet every evening...@@"<br>
<br>
You blush and keep rubbing, thinking she's about to pass out until she suddenly springs to her feet and skips towards the bedroom.<br>
<br>
"@@.npc_technician;Well, come along, then! It's time to try out this key!@@"<br>
<br>
[<<moveTo "event_technician_keyholder_post_success_3" "Crawl submissively after her." 180 "<<set $scene.crawl=true>>">>]<br>
[<<moveTo "event_technician_keyholder_post_success_3" "Follow her." 180 "<<set $scene.crawl=false>>">>]<br>
[<<moveTo "event_technician_keyholder_post_leave" "Tell her you need to leave." 120>>]
</div>/*#
#desc: technician leads you into room for unlocking
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.crawl>>
<<applyExperience 'submission' 13 'terrible' $ALONE>>
<<else>>
<<applyExperience 'submission' 8 'normal' $ALONE>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $scene.crawl>>
You crawl after <<=setup.getNpcName("npc_technician","first")>> as she motions you up onto the bed. "@@.npc_technician;Good girl.@@" She purrs with a sly smile and a matching head-pat. "@@.npc_technician;Now, if you could shimmy out of those clothes... I think you are a mite bit overdressed for sexy-times.@@"
<<else>>
You follow <<=setup.getNpcName("npc_technician","first")>> into the room as she gestures towards the bed.<br>
<br>
"@@.npc_technician;How's about you ditch those clothes? I think you are a mite bit overdressed for sexy-times.@@"
<</if>>
<br><br>
[<<moveTo "event_technician_keyholder_post_success_4" "Get naked." 300>>]<br>
[<<moveTo "event_technician_keyholder_post_leave" "Tell her you need to leave." 120>>]
</div>/*#
#desc: technician has you strip before unlocking
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> looks on with a slowly spreading grin as you shed your clothes, ditching your office attire and then each piece of undergarments in turn as she licks her lips.<br>
<br>
"@@.npc_technician;Yum. The packaging is almost as lovely as the present inside.@@" She says as she has you lean back on the bed. "@@.npc_technician;Now,@@" she states, standing over you and leaning down to place a hand next to your locked crotch. "@@.npc_technician;It's time to free you from your prison so that I can enjoy my prize...@@"<br>
<br>
<<if setup.getChastityLevel() == 5>>
Pulling out her phone she brings up the app, showing it off as she brings her finger to the button marked "temporary unlock."
<<else>>
Producing the key she smiles as she turns it in the lock, a soft click followed by a pop as the device partially opens.
<</if>>
<br><br>
"@@.npc_technician;You ready for this?@@"<br>
<br>
[<<moveTo "event_technician_keyholder_post_success_5" "Freedom!" 300>>]<br>
[<<moveTo "event_technician_keyholder_post_success_5_bail" "Actually, no, you aren't ready for this." 120>>]
</div>/*#
#desc: technician has you strip before unlocking
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
The thought of being out of your chastity device in front of <<=setup.getNpcName('npc_technician', 'first')>> is suddenly too much and you meekly ask if she could lock you back up?<br>
<br>
She looks sad but quickly does as you requested. "@@.npc_technician;I'm sorry, I didn't mean to move so fast... bit excited, is all... well, in any case I'm here, and I have the key, whenever you're ready. Locked or not, I still love you.@@"<br>
<br>
You blush as she leans in for a hug, the two of you cuddling for a bit before you gather your clothes and she helps you get dressed to leave.<br>
<br>
[<<moveTo "room_student_quarter" "Dress and depart." 600 "<<useClothSetPop 'tmp'>>">>]<br>
</div>/*#
#desc: technician removes chastity and blows you
#status: RELEASED 0.8.6.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeCage_retractSissyomatic">>
<<set $player.timebased.horny = 100>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if $scene.isSissyomatic>>
At the press of a button the <<=setup.getItemName($scene.cage)>> retracts, leaving your <<getWordMyPenis false>> to spring forth almost unencumbered as your newly emptied <<getWordVagina>> drips with need. <<=setup.getNpcName('npc_technician', 'first')>> reaches out and takes you in hand.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> unlocks and removes your chastity device, setting it to one side as she takes you in hand, your <<getWordVagina>> already dripping in anticipation.
<</if>>
<br><br>
"@@.npc_technician;Should have brought a poet...@@" She whispers as she leans in, wet lips kissing their way down your hard shaft as two fingers curl inside you.<br>
<br>
Her fingers continue to work as she licks her way back up your <<getWordMyPenis false>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
as she opens wide, wrapping her lips around <<if $player.body_ref.balls>>you, balls and all<<else>>all of you<</if>>. Her tongue tantalisingly teases you as she smiles up at you.
<<case 2 3>>
as she softly sucks, easily deepthroating it as she smiles up at you.
<<case 4 5>>
as she takes a deep breath and gulps you down, smiling and showing off her abilities. She kisses the base of the shaft before rising to the crown and starting the cycle anew.
<<case 6>>
as, a little bit intimidated by your size she takes a deep breath and leans in. With one wrapped around the base of your shaft she manages to only choke a little as she works up and down.
<<default>>
ERROR: unexpected player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
You're trembling in moments, the combination of her lips, throat, and oh-so-magical fingers rocketing you to the edge of ecstasy.<br>
<br>
"@@.npc_technician;Mmmm, you taste so good.@@" She says with gusto, licking her lips as she leans back, continuing to work you with both hands. "@@.npc_technician;I can see why <<=setup.getNpcName('npc_manager', 'Director')>> made me jump through so many hoops to be your keyholder... A bounty like this, well... I can see why it required being locked up for safe keeping.@@"<br>
<br>
She bites her lip and then leans in to lick your glistening lower lips before continuing. "@@.npc_technician;Goddess, you taste divine... I can't possibly decide which bit I like best... but thinking about you locked up under my control? Oh it's all so hot! You're just the best slave a girl could wish for!@@"<br>
<br>
Your response is cut off by your ecstatic moan as she dives back in, switching off between licking a tornado and sucking with hungry abandon. Her hands on your thighs pin you down as your legs open and
<<if $fetish.cum && $player.body_ref.cumProduction>>
she drinks her fill.<br>
<br>
"@@.npc_technician;That's right, give your <<=setup.getNpcName("npc_technician","title")>> all of your cream...@@"
<<else>>
you shudder with pleasure.<br>
<br>
"@@.npc_technician;That's right, cum for your <<=setup.getNpcName("npc_technician","title")>>. I want to give you ALL of the orgasms...@@"
<</if>>
She whispers as she licks, sucks, strokes and fingers. "@@.npc_technician;Render unto thine <<=setup.getNpcName("npc_technician","title")>> everything you wonderful, sexy slave...@@"
<<elseif $player.body_ref.vagina>>
<<if $scene.isSissyomatic>>
At the press of a button the <<=setup.getItemName($scene.cage)>> retracts, exposing your <<getWordVagina>> to the air as, newly emptied, it drips with need.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> unlocks and removes your chastity device, setting it to one side as she spreads your thighs.
<</if>>
<<=setup.getNpcName('npc_technician', 'first')>> grins, leaning in to spread your lips and expose your clit to the world.<br>
<br>
"@@.npc_technician;So beautiful, may I?@@" You nod and she leans in, lips pressing around your sensitive nub before her tongue darts out... and two fingers curl into you.<br>
<br>
Her fingers continue to work as she softly sucks, tracing runic signs around your clit as she strokes your g-spot.
<br><br>
You're trembling in moments, the combination of her lips, tongue, and oh-so-magical fingers rocketing you to the edge of ecstasy.<br>
<br>
"@@.npc_technician;Mmmm, you taste so good.@@" She says with gusto, licking her lips as she continues to finger you, her pace quickening in between gasped whispers. "@@.npc_technician;I can see why <<=setup.getNpcName('npc_manager', 'Director')>> made me jump through so many hoops to be your keyholder... A bounty like this, well... I can see why it required being locked up for safe keeping.@@"<br>
<br>
She bites her lip and then leans in to lick your glistening lower lips before continuing. "@@.npc_technician;Goddess, you taste divine... and thinking about you locked up under my control? Oh it's all so hot! You're just the best slave a girl could wish for!@@"<br>
<br>
Your response is cut off by your ecstatic a moan as she dives back in, her tongue a tornado as her finger dance on your button. A hand on your thigh pins you down as your legs open and you shudder with pleasure.<br>
<br>
"@@.npc_technician;That's right, cum for your <<=setup.getNpcName("npc_technician","title")>>. I want to give you ALL of the orgasms...@@" She whispers as she licks, sucks and fingers. "@@.npc_technician;Render unto thine <<=setup.getNpcName("npc_technician","title")>> everything you wonderful, sexy slave...@@"
<<elseif $player.body_ref.penis>>
<<if $scene.isSissyomatic>>
At the press of a button the <<=setup.getItemName($scene.cage)>> retracts, leaving your <<getWordMyPenis false>> to spring forth almost unencumbered. <<=setup.getNpcName('npc_technician', 'first')>> reaches out and takes you in hand.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> unlocks and removes your chastity device, setting it to one side as she takes you in hand.
<</if>>
<br><br>
"@@.npc_technician;Oh, it's everything I was hoping for and more. You just lay back and relax, I need to appreciate this wonderful, precious treasure.@@"<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
She opens wide, wrapping her lips around <<if $player.body_ref.balls>>you balls and all<<else>>all of you<</if>>. Her tongue tantalisingly teases you as she smiles up at you.
<<case 2 3>>
She softly sucks, easily deepthroating it as she smiles up at you.
<<case 4 5>>
She takes a deep breath and gulps you down, smiling and showing off her abilities. She kisses the base of the shaft before rising to the crown and starting the cycle anew.
<<case 6>>
You can tell she's a bit intimidated by your size but she takes a deep breath and leans in. Wrapping both hands around your shaft she manages to only choke a little as she works up and down.
<<default>>
ERROR: unexpected player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
"@@.npc_technician;Mmmm, you taste so good.@@" She says with gusto, licking her lips as she strokes you with one hand. "@@.npc_technician;I can see why <<=setup.getNpcName('npc_manager', 'Director')>> made me jump through so many hoops to be your keyholder... A prize like this, well... I can see why it required being locked up for safe keeping.@@"<br>
<br>
She bites her lip and then leans in for another slurp before continuing. "@@.npc_technician;Goddess, it tastes so good... but thinking about you locked up under my control? Oh it's all so hot! You're just the best slave a girl could wish for!@@"<br>
<br>
Your response is cut off by your ecstatic moan as she dives back in, sucking with hungry abandon. Her hands on your thighs pin you down as your legs open and
<<if $fetish.cum && $player.body_ref.cumProduction>>
she drinks her fill.<br>
<br>
"@@.npc_technician;That's right, give your <<=setup.getNpcName("npc_technician","title")>> all of your cream...@@"
<<else>>
you shudder with pleasure.<br>
<br>
"@@.npc_technician;That's right, cum for your <<=setup.getNpcName("npc_technician","title")>>. I want to give you ALL of the orgasms...@@"
<</if>>
She whispers as she massages your <<if $player.body_ref.balls>>balls<<else>>taint<</if>> with one hand. "@@.npc_technician;Render unto thine <<=setup.getNpcName("npc_technician","title")>> everything you wonderful, sexy slave...@@"
<</if>>
<br><br>
[<<moveTo "event_technician_keyholder_post_success_6" "Cum as she commands." 300>>]
</div>/*#
#desc: technician makes you cum
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 40>>
<<playerOrgasm>>
<<set $player.timebased.horny = 50>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
You cum, <<=setup.getNpcName('npc_technician', 'first')>>
<<if $player.body_ref.penis>>
wrapping her lips tight as she gulps, her throat milking
<<else>>
presses her lips tight as she teases
<</if>>
the orgasm out of you. All the while she stares lovingly up, her eyes twinkling as she pins you in place as you helplessly buck your hips and moan-cry out your thanks.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> waits until you're starting to come down from your high before pulling back and then lunging forward.<br>
<br>
Her lips press against yours in a passionate kiss as she leans over you, your taste on her lips as her tongue dances with your own.<br>
<br>
You feel like you're melting into a puddle of submissive satiation as her weight rests upon you, her kiss drawing on and on until you might pass out... not that you'd care.<br>
<br>
Finally pulling back, she catches her breath and smiles, wiping a strand of semen and saliva before it can drip past her chin. "@@.npc_technician;Ohhh you're so good, but I'm not done with you yet...@@"<br>
<br>
Still securely mounting you, she leans over and grabs
<<if $player.body_ref.penis>>
a wand from under the bed. Reaching back to shove it under you and turn it on, the powerful rumbling
<<if setup.checkItemTypeWorn("plug")>>
magnified by your plug
<<else>>
through your taint
<</if>>
causes you to rise back to over-sensitive hardness.<br>
<br>
"@@.npc_technician;Perfect.@@" She states with a smile as she reaches back to angle you at her rear. "@@.npc_technician;I knew you'd be good for more than one round after being locked up that long, and you wouldn't deny your <<=setup.getNpcName('npc_technician', 'title')>> feeling her slave in both holes, would you?@@"
<<else>>
a double dildo from under the bed. Reaching back she slides one half into you, the flexible phallus sliding easily into your excited hole.<br>
<br>
"@@.npc_technician;Perfect.@@" She states with a smile as she reaches back to angle the other end at her rear. "@@.npc_technician;I knew you'd be good for more than one round after being locked up that long, and you wouldn't deny your <<=setup.getNpcName('npc_technician', 'title')>> sharing things with her slave, would you?@@"
<</if>>
<br><br>
[<<moveTo "event_technician_keyholder_post_success_7" '"Ohyesohyesohyes."' 300>>]<br>
[<<moveTo "event_technician_keyholder_post_success_7_bail" "This is too much." 120>>]
</div>/*#
#desc: technician stops before riding you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
You gasp out something that sounds like "@@.pc;Stop@@" and suddenly <<=setup.getNpcName('npc_technician', 'first')>> freezes, her face twisted in concern.<br>
<br>
"@@.npc_technician;Are you okay? Do you need me to stop?@@" You nod your head, too overwhelmed to properly form words.<br>
<br>
Hopping off she kneels at the side of the bed, stroking your face as she looks to you for reassurance. "@@.npc_technician;Are you alright? Was that too much? Oh, my poor dear...@@" She kisses you and hugs you close, comforting you as you slowly catch your breath and eventually return the embrace.<br>
<br>
She helps you back to your feet after she's positive you've begun to recover.<br>
<br>
You're still wobbly but are able to get back into your clothes and chastity with her help. She spends the entire duration reminding you what a good job you did and how thankful she is to be your <<=setup.getNpcName('npc_technician', 'title')>>.<br>
<br>
Once you have your clothes on, you thank her for being so considerate before hugging her goodbye and heading home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: technician stops before riding
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $npc_technician.relationship.done_her = true>>
<<set $scene.virgin = !$player.virgin.top_fem>>
<<if $scene.virgin>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_technician">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_virgin'
0
'theme_church_confession_virgin'
true
>>
<</if>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "npc_technician">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<</if>>
<<if !$player.virgin.penis>>
<<set $player.virgin.penis = "npc_technician">>
<</if>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis>>
Slick with her saliva you easily slide into <<=setup.getNpcName('npc_technician', 'first')>> as she lowers herself onto you.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
"@@.npc_technician;Yes...@@" she moans, clenching tight around you as she bobs her hips up and down.
<<case 2 3>>
"@@.npc_technician;Yes, fuck your <<=setup.getNpcName('npc_technician', 'title')>>!@@" she moans, clenching tight around you as she bobs her hips up and down.
<<case 4 5>>
"@@.npc_technician;Oh-fuck-you're big!@@" she moans, barely managing to take you all the way as she bounces up and down.
<<case 6>>
"@@.npc_technician;Oh-fuck, you're even bigger than <<=setup.getNpcName("npc_maid","first")>>@@" she gasps, clearly struggling to take you all the way. Her hips bounce once, twice, thrice, and then finally manage to slam down, compressing the bedsprings as she succeeds in hilting you.
<<default>>
ERROR: unexpected player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Looking down at you with possessive lust, <<=setup.getNpcName('npc_technician', 'first')>> pins you down by the wrists and then leans in for a kiss, rocking her hips the whole time as she showers you with affection.<br>
<br>
"@@.npc_technician;Yes! Fuck your <<=setup.getNpcName('npc_technician', 'title')>> harder! Oh-goddess you're perfect! <<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>Fill me with cum! Drain those balls<<else>>Cum for your <<=setup.getNpcName('npc_technician', 'title')>><</if>>! Show what a good slave you are!@@"<br>
<br>
Still not yet recovered from when she sucked an orgasm out of you and "helped" by the fact that the wand continues to buzz away underneath you, you're almost too overwhelmed. She remains determined, rising up and slamming down repeatedly, her hard <<getWordPenis false>> bouncing with each heavy thrust as she pushes things closer and closer to a dual climax.<br>
<br>
With a gasp rather than a cry she cums, her hole tightening around you as she <<if $fetish.cum>>sprays thick ropes of lady cream over your face and chest. You cum a moment later<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>, pumping whatever your balls have managed to produce since she sucked you near dry deep inside of her<<else>>, shuddering as the powerful orgasm rushes through you<</if>><<else>>cums along with you, shuddering and squeezing around you<</if>> as she groans a slow "@@.npc_technician;Yyyyyeeeeesssssss.@@"
<<else>>
You clench down as <<=setup.getNpcName('npc_technician', 'first')>> lowers herself onto the other end of the dildo, pressed against you as she rocks and the double dildo shifts back and forth.<br>
<br>
"@@.npc_technician;Yes...@@" she moans, rolling her hips as you do the same, fucking one another in tandem as she reaches under the bed again to come up with a wand.<br>
<br>
Pleasure jumps an order of magnitude as she presses the wand between the two of you, its rumbling power pummeling your clit and having her rock-hard <<getWordPenis false>> tremble and twitch.<br>
<br>
Looking down at you with possessive lust, <<=setup.getNpcName('npc_technician', 'first')>> pins you down by the wrists and then leans in for a kiss, rocking her hips the whole time as she showers you with affection.<br>
<br>
"@@.npc_technician;Yes! Fuck your <<=setup.getNpcName('npc_technician', 'title')>> harder! Oh-goddess you're perfect! Cum for your <<=setup.getNpcName('npc_technician', 'title')>>! Show what a good slave you are!@@"<br>
<br>
Still not yet recovered from when she sucked an orgasm out of you but more than helped by the magic of the thundering wand , you're almost too overwhelmed. She remains determined, rising up and slamming down repeatedly, her hard <<getWordPenis false>> bouncing with each heavy thrust as she pushes things closer and closer to a dual climax.<br>
<br>
With a gasp rather than a cry she cums, the dildo frozen in place as you both clench down, locked together as she <<if $fetish.cum>>sprays thick ropes of lady cream over your face and chest. You cum a moment later, pumping whatever your balls have managed to produce since she sucked you near dry deep inside of her<<else>>cums along with you<</if>> as she groans a slow "@@.npc_technician;Yyyyyeeeeesssssss.@@"
<</if>>
<br><br>
Your vision flickers as you stare up at her. You reach up to help support her breasts heaving above her dominatrix corset as she pants, her eyes unfocused, her smile lopsided as the moment stretches out. You collapse into each other, pressed against one another on the bed in shared exhaustion.<br>
<br>
[<<moveTo "event_technician_keyholder_post_success_8" "Recover." 1200>>]
</div>/*#
#desc: cleanup after technician rode you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "replaceCage_extendSissyomatic">>
<<useClothSetPop 'tmp'>>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'theme_technician_barista_gangbang')>>
<<set $scene.baristaGangbang = _themeId != -1 && $npc_technician.themes.rpg[_themeId].done && $npc_barista.stage == 3>>
<<if $scene.baristaGangbang>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks.technician_roleplay_1.finished>>
<<deleteTask 'technician_roleplay_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks.technician_roleplay_punish_1.finished>>
<<deleteTask 'technician_roleplay_punish_1'>>
<</if>>
<<set $scene.puntCollar = $currentTasks.hasOwnProperty('technician_collar_her_ceremony') && !$currentTasks.technician_collar_her_ceremony.finished>>
<<if $scene.puntCollar>>
<<postponeTask 'technician_collar_her_ceremony' 7>>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0)>>
<<addTaskById 'rpg_session_gangbang' _nextDate>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
You aren't sure how long it takes before you recover enough to open your eyes. When you do you find yourself looking at <<=setup.getNpcName('npc_technician', 'first')>> pleasantly-smiling face.<br>
<br>
"@@.npc_technician;So... that worth getting unlocked for?@@" She asks with a smile, her hand reaching down to cup <<if setup.isCage()>>the cage once again locked onto you<<else>>the front of the belt that is once again locked over you<</if>>.<br>
<br>
You nod and smile as she grins even wider before leaning in to kiss you on the nose.<br>
<br>
"@@.npc_technician;You're the best, you know that?@@" She giggles and then rolls out of bed.<br>
<br>
"@@.npc_technician;Come on! I know that got a bit intense but I've got some errands to catch up on from spending all Sunday studying and I bet you have plans as well.@@"<br>
<br>
<<if $scene.baristaGangbang>>
<<=setup.getNpcName("npc_technician","first")>> winks at you, "@@.npc_technician;oh, and now that I've broken you in... or maybe it's the other way around? Either way, we're ready to show <<=setup.getNpcName("npc_barista","nickname")>> the ultimate in pleasure next week...<<if $scene.puntCollar>> which means collaring gets pushed back in favour of helping a friend.<</if>>@@"<br>
<br>
<</if>>
You aren't quite caught up enough to remember what plans you might have had for tonight after the impromptu "getting your brains fucked<<if $player.body_ref.penis>> and sucked<</if>> out" but you nod as she hands you your clothes and then cheerily nudges you out the door.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: talk to technician about collaring her
#status: RELEASED 0.8.6.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.her_role == "sub">>
<<set $scene.npc_datethemes += 1>>
<<applyStress 10>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_role == "sub">>
You smile at your slave and ask what she thinks about the idea of you collaring her?<br>
<br>
She freezes and your heart races, panicked thoughts swirling through your mind as you wait for her response.<br>
<br>
[<<moveTo "theme_technician_collar_her_2" "Continue." 60>>]
<<else>>
You're about to bring up collaring <<=setup.getNpcName("npc_technician","first")>> when you remember that she's <<if $npc_technician.relationship.her_role == "dom">>your <<=setup.getNpcName("npc_technician","title")>><<else>>not presently your slave<</if>>.<br>
<br>
<<printThought "Yeah, this doesn't make sense, should talk about something else...">><br>
<br>
<<printNpcThemeReturn 'npc_technician' 60>>
<</if>>
</div>/*#
#desc: technician says yes to your collaring her
#status: RELEASED 0.8.6.0
#ignore_spell: rp
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -20>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
As if she was a hung system that has finally come up <<=setup.getNpcName("npc_technician","first")>> bursts into motion.<br>
<br>
"@@.npc_technician;Yes! Goddess yes, er, I mean...@@" She takes a deep, calming breath "@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>my Overseer<</switch>> — I would be overjoyed and honoured to have your collar around my throat.@@" She pauses and bites her lip as if mustering the courage to say something else. "@@.npc_technician;So... I know normally it would be up to the dominant to choose the collar but... well, a number of years ago I saw a collar that was just so, so perfect I had to buy it... I've been holding on to it ever since waiting for the right person to make me wear it and... I think, no, I KNOW that person is you... would that be okay?@@"<br>
<br>
You smile and nod and she beams even brighter. "@@.npc_technician;Great, okay, so... everyone I'd most want to be there to see this is going to be at <<if $now.getUTCDay() == 6>>tonight's<<else>>next week's<</if>> RP session so... you feel like claiming the Dungeon Mistress before she spins her weekly yarns?@@"<br>
<br>
[<<moveTo "theme_technician_collar_her_3" "Nothing would make you happier." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "theme_technician_collar_her_3" "This is a little fast..." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: agree to collar technician
#status: RELEASED 0.8.6.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'dominance' 10 'skip' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 10>>
<<deleteTask 'technician_roleplay_1'>>
<<deleteTask 'technician_roleplay_punish_1'>>
<<set $scene.nextWeek = $currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks.technician_roleplay_surgery.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_surgery')) == 0 || $currentTasks.hasOwnProperty('rpg_session_gangbang') && !$currentTasks.rpg_session_gangbang.finished && setup.daysToDate($now,setup.getTaskDueDate('rpg_session_gangbang')) == 0>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, !$scene.nextWeek)>>
<<addTaskById 'technician_collar_her_ceremony' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You smile back and reply that sounds wonderful. <<=setup.getNpcName("npc_technician","first")>> still hasn't even finished her drink — in fact, she seems to have almost forgotten about it entirely as she stares at you with lovey eyes, so full of nervous energy you're almost afraid she's going to vault the table right there in the cafe.<br>
<br>
"@@.npc_technician;So I normally look forward to Saturday evening as the high-point of the week<<if $scene.nextWeek>>, and of course, doubly so this week, given it's <<if $currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks.technician_roleplay_surgery.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_surgery')) == 0>><<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> celebration<<elseif $currentTasks.hasOwnProperty('rpg_session_gangbang') && !$currentTasks.rpg_session_gangbang.finished && setup.daysToDate($now,setup.getTaskDueDate('rpg_session_gangbang')) == 0>> <<else>>ERROR: unexpected event!<</if>>, and then next week, getting your collar? Swoon! I have the best life<<else>>, but this... oh, I just can't wait for <<if $now.getUTCDay() == 6>>tonight<<else>>next week<</if>><</if>>!@@"<br>
<br>
You smile back and say you're looking forward to it as well.
<<else>>
You lamely reply that you don't think you're quite ready to collar her <<if $now.getUTCDay() == 6>>tonight<<else>>Saturday<</if>>, that you were more just checking her interest — what with her being a switch and all you weren't certain if she'd even be interested in being collared...<br>
<br>
"@@.npc_technician;Not interested in being collared?@@" She rolls her eyes, "@@.npc_technician;Of course I want to be collared! Being a switch just means that I'm ALSO super turned on by the idea of collaring you as well. But, like, collars are great, collars for everyone! Well, everyone who wants one... though I quite can't understand why someone wouldn't...@@"<br>
<br>
You smile and the two of you laugh.<br>
<br>
"@@.npc_technician;Of course I don't want to pressure you into anything so... just let me know, okay? You're worth waiting for... <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>my Overseer<</switch>>.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: no show technician collaring her event
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 50>>
<<deleteTask 'technician_collar_her_ceremony'>>
<<set _nextDate = setup.setNextDate($now, 0, 19, 0)>>
<<addTaskById 'technician_roleplay_1' _nextDate>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_collar_her')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_collar_her'
11
'theme_technician_collar_her_1'
true
>>
<<else>>
<<set $npc_technician.themes.sex[_themeId].repeatable = true>>
<</if>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_technician' 5>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<printThought "Shit, I forgot about game... and that I was going to collar her!">><br>
<br>
To your slight surprise the voice on the other end is not <<=setup.getNpcName("npc_technician","first")>>, but, instead, <<=setup.getNpcName("npc_maid","first")>>. "@@.npc_maid;Hey, so... I hope something REALLY important happened at work or something, because <<=setup.getNpcName("npc_technician","first")>> is fucking devastated that you aren't here.@@" She sighs. "@@.npc_maid;Look, she said she'd be okay, and she isn't upset but... believe me that if she said anything else I would be putting a boot through your ass so hard and so fast you'll taste my calves. You do. Not. Hurt. <<=setup.getNpcName("npc_technician","first")>>, you got that?@@"<br>
<br>
As if to confirm her threat she somehow manages the physically impossible feat of slamming her cell phone in your ear.<br>
<br>
<<printThought "Well... fuck.">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: show up for technician collaring her ceremony
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude")>>
<div id="invframe" class="scrolltext">
You show up for game... and more, to be greeted at the door by <<=setup.getNpcName("npc_rpg_dude","first")>>.<br>
<br>
"@@.npc_rpg_dude;Hey! So, come in, come in — the <<if $npc_rpg_dude.fem>>other <</if>>girls are in the bedroom helping <<=setup.getNpcName("npc_technician","first")>> get ready so I — as the one already-collared person, got assigned to help you out. Come on, <<=setup.getNpcName("npc_technician","first")>> picked out an outfit for you to wear.@@"<br>
<br>
[<<moveTo "event_technician_collar_her_2" "Get ready for the ceremony." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_collar_her_2" "Actually... you were hoping to just game..." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: get changed for technician collaring ceremony
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<<addItem 'leather_jacket_black'>>
<<addItem 'leather_pants_black'>>
<<addItem 'riding_boots'>>
<<wearItem 'leather_jacket_black' true>>
<<wearItem 'leather_pants_black' true>>
<<wearItem 'riding_boots' true>>
<<set $scene.makeup = $player.makeup.messed > 0>>
<<if $scene.makeup>>
<<set $player.makeup.messed = 0>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_rpg_dude")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You follow <<=setup.getNpcName("npc_rpg_dude","first")>> into the bathroom where a leather jacket, pants, and riding boots are laid out and waiting for you.<br>
<br>
You smile in amusement at the relatively flat boots — of course <<=setup.getNpcName("npc_technician","first")>>, with her long-standing battle with heels, would prioritise the comfort of her owner even on an occasion such as this.<br>
<br>
You flash <<=setup.getNpcName("npc_rpg_dude","first")>> the thumbs up and quickly get changed<<if $scene.makeup>> and touch up your makeup<</if>>.<br>
<br>
[<<moveTo "event_technician_collar_her_3" "Continue." 180>>]
<<else>>
You confess that, actually... you don't think you're ready to assume the responsibility of collaring <<=setup.getNpcName("npc_technician","first")>>...<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> pauses for a moment and nods. "@@.npc_rpg_dude;<<=setup.getNpcName("npc_rpg_warlock","first")>> mentioned this could happen — she apparently went back and forth like half a dozen times before collaring me to the point I was getting ready to buck sub tradition and beg her to do it!@@" <<He npc_rpg_dude>> takes a deep breath. "@@.npc_rpg_dude;Let me break the news to the girls.@@"<br>
<br>
<<He npc_rpg_dude>> ducks into the bedroom and you hear a loud "@@.npc_maid;Why I'll kill that little—@@" but things calm down and, after a few more minutes, everyone emerges to dive into game as if it was all just a normal Saturday night.<br>
<br>
"@@.npc_technician;So... what shall we run this evening?@@"<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: technician collaring her ceremony intro
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_collaring")>>
<div id="invframe" class="scrolltext">
You exit the bedroom — where you find <<=setup.getNpcName("npc_rpg_dude","first")>>, <<=setup.getNpcName("npc_barista","nickname")>>, and <<=setup.getNpcName("npc_rpg_warlock","first")>> arranged in a semblance of a wedding ceremony — <<=setup.getNpcName("npc_rpg_dude","first")>> as "your" side, <<=setup.getNpcName("npc_barista","nickname")>> on the "slave's" side, and <<=setup.getNpcName("npc_rpg_warlock","first")>>; holding her <<boy npc_rpg_dude>>friend's leash, in the centre as the officiant.<br>
<br>
You smile and quickly take your position in front of <<=setup.getNpcName("npc_rpg_dude","first")>> as all eyes turn towards the bedroom door...<br>
<br>
A moment later and the door opens; <<=setup.getNpcName("npc_maid","first")>> stepping forth. As she moves further into the room she slides to the side to give you a better view of <<=setup.getNpcName("npc_technician","first")>> — your lovely slave crawling on the ground wearing nothing but a leather harness and matching panel gag and blindfold. The leash that <<=setup.getNpcName("npc_maid","first")>> uses to guide her across the room is attached to her harness as her throat remains bare.<br>
<br>
You bite your lip as you watch <<=setup.getNpcName("npc_technician","first")>> slowly crawl across the room, almost crashing into a couch before <<=setup.getNpcName("npc_maid","first")>> tugs her out of the way at the last moment — it would seem that there's a reason leashes are normally attached to collars, the present arrangement seems significantly less efficient at providing direction.<br>
<br>
Overcoming the minor issue of navigating the small room, <<=setup.getNpcName("npc_technician","first")>> reaches her mark and is helped back to her feet by her "bridesmaid" and pointed towards you — still blind and gagged.<br>
<br>
[<<moveTo "event_technician_collar_her_4" "Continue." 180>>]
</div>/*#
#desc: technician collaring her ceremony your vows
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_collaring")>>
<div id="invframe" class="scrolltext">
You reflexively reach out to brush a bit of escaping drool from <<=ps(setup.getNpcName("npc_technician","first"))>> lips before it can drip down, then glance over as <<=setup.getNpcName("npc_rpg_warlock","first")>> softly coughs to bring things to order.<br>
<br>
"@@.npc_rpg_warlock;So, we are gathered here today to recognise the binding together — literally, of two wonderful friends. <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>> — do you claim this wonderful woman? This Tech Wizard, Game Mistress, egg-cracking, pan-switch total hottie, and take her to be your obedient, loving slave until such time as the two of you decide on switching things up again?@@"<br>
<br>
It's hard to tell with the gag, but from the adorable red colour of <<=ps(setup.getNpcName("npc_technician","first"))>> cheeks you get the feeling her friend decided to embellish the vows a bit.<br>
<br>
[<<moveTo "event_technician_collar_her_5" "Yes." 180>>]<br>
[<<moveTo "event_technician_collar_her_bad_end" "No." 180>>]
</div>/*#
#desc: technician collaring, back out at the last moment
#status: RELEASED 0.8.6.0
#*/
<<set $gameOver = 'technician_collar'>>
<<set $player.location to ''>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/badend.png">>
<div id="invframe" class="scrolltext">
Before you can say no an entire Discord server rises up and prevents the author from even considering writing this.<br>
<br>
There is cruelty and then there is Cruelty and the author refuses to write something so mean for <<=setup.getNpcName("npc_technician","first")>>. Go back and try again, you monster.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: technician collaring her ceremony her vows
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_collaring_gag")>>
<div id="invframe" class="scrolltext">
Your heart beats faster as <<=setup.getNpcName("npc_rpg_warlock","first")>> turns towards <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_rpg_warlock;And do you, <<=setup.getNpcName("npc_technician","first")>> submit to being collared, to be owned, loved, cherished and adored. To be locked as desired, punished as necessary, to serve obediently and submit joyously?@@"<br>
<br>
You're waiting for a grunt of assent given <<=ps(setup.getNpcName("npc_technician","first"))>> large gag... only to be surprised when you realise that it was hiding a screen the entire time, as the words "I DO" appear in lights across the front of the gag.<br>
<br>
"@@.npc_rpg_warlock;So it is witnessed — you may now collar your slave.@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> hands you a collar and you take a moment to gawk. You can immediately see why <<=setup.getNpcName("npc_technician","first")>> wanted it — it's peak goth. Steep, beautifully stained black leather with chains, spikes and several attachment points in silver, with a blued steel locking clasp.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bows forward as <<=setup.getNpcName("npc_barista","nickname")>> holds her hair out of the way. <<=setup.getNpcName("npc_technician","first")>> trembles slightly... and you think you hear a soft moan as you wrap the collar around her throat and lock it with a soft click.<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> hands you a leash as <<=setup.getNpcName("npc_technician","first")>> stands back up and you clip it to the front ring of her collar.<br>
<br>
"@@.npc_rpg_warlock;You may now kiss your slave.@@"<br>
<br>
[<<moveTo "event_technician_collar_her_6" "Continue." 180>>]
</div>/*#
#desc: technician collaring her ceremony kiss
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.her_collared=true>>
<<set $npc_technician.relationship.has_collared_her=true>>
<<include "initRPGSession">>
<<set $scene.preGameEvent = true>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_collar_her')>>
<<set $npc_technician.themes.sex[_themeId].repeatable = false>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_collaring_2")>>
<div id="invframe" class="scrolltext">
You use the leash to pull <<=setup.getNpcName("npc_technician","first")>> in, sharing a beyond passionate gag-kiss as her arms wrap around you.<br>
<br>
In the distance you hear your friends clap, but your entire attention is fixated on your lovely slave. Fumbling for the release on her blindfold and gag, letting them fall to the floor as you share a momentary glance into her sparking eyes before pulling her in for kissing: round 2.<br>
<br>
Her lips are soft, parting gently before you, welcoming your tongue to claim her. While inviting, she also fences back playfully as she sinks into your embrace while simultaneously reminding you that her switchiness will always be there if you want to flip things around.<br>
<br>
Finally coming up for air, the two of you look around at your smiling friends.<br>
<br>
"@@.npc_technician;Thank you all so much! This was just... perfect.@@" She grins up at you again. "@@.npc_technician;And now — with my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress's<<case 'male'>>Master's<<default>>Overseer's<</switch>> permission — shall we game?@@"<br>
<br>
You grin and nod, following <<=setup.getNpcName("npc_technician","first")>> back into her bedroom to help her change into her normal clothes — with the collar remaining in place.<br>
<br>
"@@.npc_technician;Oh, so, a little detail about this collar that makes it like... peak goth, and the reason I've been saving it for such a special moment. The steel in the lock was reclaimed from a cemetery gate, and the silver was recovered from a tenth century longboat that sank off Norway.@@"<br>
<br>
You grin, admiring again the gorgeous — and historically impressive — collar, giving her another kiss before leading her by the leash back to her friends for game.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> takes a seat behind her screen and grins. "@@.npc_technician;So... what shall we do tonight? And no, just because they own me doesn't mean <<=$player.first_name>> gets any special treatment in-game! Well, in THIS role-play, in other role-plays later tonight, well...@@"<br>
<br>
Everyone laughs and gets into position to play.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 3 4 5 6 7>>
[<<moveTo 'event_rpg_campaign_session_x_pre' "Start the session." 60>>]
<<default>>
<<include "rpg_gameChoices">>
<</switch>>
</div>/*#
#desc: technician asks if you want to be collared
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You're giving your <<=setup.getNpcName("npc_technician","title")>> a kiss good-bye when her hand lingers on
<<if setup.checkItemTypeTag('choker', ['collar'])>>
your collar.<br>
<br>
"@@.npc_technician;Mmm, you make such a lovely slave only... well, certainly I am your <<=setup.getNpcName("npc_technician","title")>>, but how would you feel about wearing MY collar instead of this kind of... generic one?@@"
<<else>>
your throat.<br>
<br>
"@@.npc_technician;Mmm, it feels so strange that such a good, wonderful slave should be without a collar... you've been such a good pet for your <<=setup.getNpcName("npc_technician","title")>>... would you like to wear her collar, as well?@@"
<</if>>
<br><br>
[<<moveTo "event_technician_collar_offer_2" "You would like that very much." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_collar_offer_2" "You aren't quite ready for that sort of commitment." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept/decling technician offer of collar
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<deleteTask 'technician_roleplay_1'>>
<<deleteTask 'technician_roleplay_punish_1'>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_collar_ceremony' _nextDate>>
<<else>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_collar'
11
'theme_technician_collar_1'
true
>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Your voice is soft, but totally committed when you reply that you would love to wear your <<=ps(setup.getNpcName("npc_technician","title"))>> collar.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins and you half expect her to slap something on your throat immediately. Instead, her eye twinkles and she gives you another kiss and whispers in your ear. "@@.npc_technician;Mmmm, wonderful... yes... this is going to be PERFECT. And by going to be I mean next week, before we game. Such a lovely ceremony requires witnesses, after all. Witnesses to you giving yourself over to me as my perfect. Collared. Slave.@@"<br>
<br>
You moan and she softly chuckles in amusement. "@@.npc_technician;Well! That should give you something to look forward to next weekend, hmm? Yes indeed...@@"
<<else>>
You nervously reply that, as much as you enjoy being her slave... you don't think you're quite ready to be a COLLARED slave.<br>
<br>
Rather than be upset she merely smiles and gives you another kiss. "@@.npc_technician;That's fine... I love you just as you are, but if ever change your mind, well... the thought of claiming this throat has me all aquiver.@@"
<</if>>
<br><br>
You blush, giving her a final parting hug and then you head home.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 600>>]
</div>/*#
#desc: talk to technician about accepting her collar
#status: RELEASED 0.8.6.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $player.flags.collar.owner>>
You are about to bring up <<=ps(setup.getNpcName("npc_technician","formal"))>> offer to collar you, but catch yourself as you remember that you missed your opportunity, the collar around your throat reminding you that you are already owned.<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
<<elseif $npc_technician.relationship.her_role == 'dom'>>
You bring up her offer to collar you...<br>
<br>
"@@.npc_technician;Yes, my love?@@" She replies, stars in her eyes as she smiles across the table at you. "@@.npc_technician;You ready to become fully mine?@@"<br>
<br>
[<<moveTo "theme_technician_collar_2" "Yes, you are ready to take her collar." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "theme_technician_collar_2" "You still aren't ready to take her collar." 60 "<<set $scene.accept=false>>">>]
<<else>>
You are about to bring up <<=ps(setup.getNpcName("npc_technician","formal"))>> offer to collar you, but then realise that would be a bit silly.<br>
<br>
<<if $npc_technician.relationship.her_role == 'sub'>>
<<printThought "She's the slave right now, it wouldn't make sense for her to collar ME!">>
<<else>>
<<printThought "I'm not her slave right now, her collaring me wouldn't make sense!">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
<</if>>
</div>/*#
#desc: technician theme accept/decline technician collar
#status: RELEASED 0.8.6.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<deleteTask 'technician_roleplay_1'>>
<<set $scene.nextWeek = $currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks.technician_roleplay_surgery.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_surgery')) == 0 || $currentTasks.hasOwnProperty('rpg_session_gangbang') && !$currentTasks.rpg_session_gangbang.finished && setup.daysToDate($now,setup.getTaskDueDate('rpg_session_gangbang')) == 0>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, !$scene.nextWeek)>>
<<addTaskById 'technician_collar_ceremony' _nextDate>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_collar')>>
<<set $npc_technician.themes.sex[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Your voice is soft, but totally committed when you reply that you are ready to bear your <<=ps(setup.getNpcName("npc_technician","title"))>> collar.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins and you half expect her to reach across the table and slap something on your throat immediately, but instead her eye twinkles. "@@.npc_technician;Mmmm, wonderful... yes... this is going to be PERFECT — <<if $scene.nextWeek || $now.getUTCDay() != 6>>next Saturday<<else>>tonight<</if>>, before game. Such a lovely ceremony requires witnesses, after all. Witnesses to you giving yourself over to me as my perfect. Collared. Slave. @@"<br>
<br>
You moan and she softly chuckles in amusement. "@@.npc_technician;I'm going to be very busy between now and <<if $scene.nextWeek || $now.getUTCDay() != 6>> next week's<</if>>game. But it will all be worth it for my lovely slave.@@"
<<else>>
You nervously reply that, as much as you enjoy being her slave... you don't think you're quite ready to be a COLLARED slave.<br>
<br>
She squints at you in mock annoyance. "@@.npc_technician;Then why did you bring it up, silly? You really know how to tease a girl, you know that? Why, if this wasn't a public area I'd be tempted to take you over my knee for a spanking!@@" She smiles and laughs.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: no show technician collaring event
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'technician_collar_ceremony'>>
<<set _nextDate = setup.setNextDate($now, 0, 19, 0)>>
<<addTaskById 'technician_roleplay_1' _nextDate>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_collar')>>
<<set $npc_technician.themes.sex[_themeId].repeatable = true>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_technician' 2>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<printThought "Shit, I lost track of time and forgot about game... and her plans to collar me!">><br>
<br>
"@@.npc_technician;Talk about disobedient — a slave not showing up for their own collaring ceremony!@@" She sighs loud enough to be heard through the phone. "@@.npc_technician;If you're having cold feet I think we should call this whole thing off... you can speak with me again if you would like to reschedule. Otherwise next week is back to normal game.@@"<br>
<br>
She hangs up abruptly.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 60 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: show up for technician collaring ceremony
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $player.flags.collar.owner>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.flags.collar.owner>>
You arrive for what was to be your collaring ceremony... already wearing a collar. There is a brief moment of awkwardness as you enter <<=ps(setup.getNpcName("npc_technician","first"))>> and then a sort of silent agreement to ignore that anything else was to happen as things proceed to the usual game...<br>
<br>
"@@.npc_technician;So... what shall we run tonight?@@"<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
<<else>>
You open the door where <<=setup.getNpcName("npc_maid","first")>> greets you with a wide grin.<br>
<br>
"@@.npc_maid;<<=$player.first_name>>! Or should I say... slave <<=$player.first_name>>?@@" She laughs. "@@.npc_maid;It's bad luck for a Domme to see her slave before the collaring so <<=setup.getNpcName("npc_technician","first")>> asked me to help you get ready — she picked a special outfit out for you and everything.@@"<br>
<br>
Your heart beats faster as you glance past <<=setup.getNpcName("npc_maid","first")>> to see the rest of the RPG group waiting and smiling at you with encouragement.<br>
<br>
[<<moveTo "event_technician_collar_2" "Get ready for the ceremony." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_collar_2" "Actually... you were hoping to just game..." 180 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: get changed for technician collaring ceremony
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<if $scene.choker != "">>
<<removeItem $scene.choker true>>
<</if>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'enslaved_star_princess'>>
<<wearItemSet 'enslaved_star_princess'>>
<<set $scene.makeup = $player.makeup.messed > 0>>
<<if $scene.makeup>>
<<set $player.makeup.messed = 0>>
<</if>>
<<else>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You follow <<=setup.getNpcName("npc_maid","first")>> into the bathroom where she has you strip before handing you an oddly familiar skimpy steel-accented two-piece.<br>
<br>
Pulling on the bra and panties, you look at your reflection and suddenly put together what it reminded you of. The outfit is like a goth version of the classic "Princess Slave Girl" outfit, with black and chrome replacing the original bronze. It is really the perfect choice given <<=ps(setup.getNpcName("npc_technician","first"))>> nerdy preferences.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> stands behind you and grins in reflection.
<<if $scene.choker != "">>
"@@.npc_maid;One final detail,@@" she notes as she removes your <<=setup.getItemName($scene.choker)>> "@@.npc_maid;Can't be collared if you're already wearing something, right?@@"<br>
<br>
You blush as she puts it aside, your heart racing in anticipation of the "ceremony" to come...<br>
<br>
<</if>>
<<if $scene.makeup>>
You take a quick moment to touch up your makeup and then it's time to start.<br>
<br>
<</if>>
"@@.npc_maid;Looking good, Princess. Now, come. Your <<=setup.getNpcName("npc_technician","title")>> awaits!@@"<br>
<br>
[<<moveTo "event_technician_collar_3" "Continue." 180>>]
<<else>>
You feel embarrassed, but state that, now that it's time, you don't think you're ready to be collared.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> smirks. "@@.npc_maid;I knew you had an untamed, bratty streak. <<=setup.getNpcName("npc_technician","first")>> said to be prepared for this, it's no problem. Go ahead and join the group and I'll tell her to get changed and ready to run us through a session, same as any other week.@@"<br>
<br>
You let out a sigh of relief as <<=setup.getNpcName("npc_rpg_warlock","first")>> gestures you over to the couch. "@@.npc_rpg_warlock;Come on, let's focus on the game.@@"<br>
<br>
"@@.npc_rpg_dude;Yeah,@@" her <<boy npc_rpg_dude>>friend/slave adds; "@@.npc_rpg_dude;It took me quite a bit of courage-gathering before I went through with my collaring... you don't want to rush that sort of thing.@@"<br>
<br>
You smile and join your friends, <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_maid","first")>> emerging from the bedroom a few minutes later.<br>
<br>
"@@.npc_technician;So... what shall we run tonight?@@"<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: technician collaring ceremony
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
You exit the bathroom, all eyes on you as <<=setup.getNpcName("npc_maid","first")>> leads you to the centre of the room and gestures for you to kneel.<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> and <<=setup.getNpcName("npc_barista","nickname")>> flash you thumbs up in encouragement as you look towards the door to <<=ps(setup.getNpcName("npc_technician","first"))>> bedroom door, your heart pounding in anticipation.<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>> emerges in all her dominant glory. You can tell she's trying to look serious and severe, but there's no hiding the twinkle of glee in the corner of her eye and the slight smile on her lips as she strides forth to stand in front of you.<br>
<br>
"@@.npc_technician;Princess <<=$player.first_name>> — my love, my pet, my Princess... my slave... you have submitted to me, served me, given over control of your key... in front of our friends and witnesses, are you ready to take the final step and accept my collar? To become mine completely, and allow me to assume the wonderful responsibility of being your <<=setup.getNpcName("npc_technician","title")>> in all things?@@"<br>
<br>
Your pulse pounds. Everyone save you and your <<=setup.getNpcName("npc_technician","formal")>> fades away, your eyes are only for her, and hers for you as she looks down at you, fingers gently caressing your cheek...<br>
<br>
[<<moveTo "event_technician_collar_4" 'Yes, <<=setup.getNpcName("npc_technician","formal")>>, I give myself to you.' 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_collar_4" 'No... this is too much.' 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: technician collaring ceremony — accept collar
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<addItem 'goth_collar'>>
<<wearItem 'goth_collar' true>>
<<setThreshold 'submission' 'collar_submission' 'obedient_tech'>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<if !$player.sec_style.submission.collar>>
<<set $player.sec_style.submission.collar = "voluntary">>
<</if>>
<<set $player.flags.collar.owner = 'npc_technician'>>
<<set $player.flags.collar.collarId = 'goth_collar'>>
<<set $npc_technician.relationship.has_owned = true>>
<<else>>
<<removeItemSet 'enslaved_star_princess'>>
<<deleteItemSet 'enslaved_star_princess'>>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You look up at your beautiful <<=setup.getNpcName("npc_technician","title")>>, almost at a loss for words, yet somehow able to whisper the only three words that matter in this moment. "@@.pc;Yes, <<=setup.getNpcName("npc_technician","formal")>>.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_technician","formal"))>> formal facade slips for a moment as her expression explodes with glee, but she manages to reign things in as she turns to <<=setup.getNpcName("npc_maid","first")>>, who you only just now realise is standing next to her like some sort of ring-bearer — holding a beautifully gothic spiky collar complete with attachment rings and decorative chains.<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>> takes the collar carefully, your hair held out of the way as she locks it around your throat.<br>
<br>
"@@.npc_technician;With this collar, I claim thee to own and protect and, above all, love.@@"<br>
<br>
You start to melt even before <<=setup.getNpcName("npc_technician","formal")>> hooks a finger through the ring of the collar, pulling you to your feet and directly into a kiss to a chorus of applause.<br>
<br>
The kiss drags on... and you would be more than happy for it to stretch through to eternity but, eventually, the two of you part, <<=setup.getNpcName("npc_technician","formal")>> with a glowing smile as you look around at your friends all grinning back with obvious happiness for the two of you.<br>
<br>
"@@.npc_technician;So... as much as I LOVE how you look in that outfit... I think it'd be a bit of a distraction from game... let's go get changed real quick and then we can jump in on the session.@@"<br>
<br>
The two of you retreat to the bedroom (with some teasing cheers from <<=setup.getNpcName("npc_maid","first")>>). Despite lingering giddiness, you somehow manage to keep from ending up in the bed itself in the process of changing back into your street clothes... well, street clothes and collar, your newest adornment remaining right where it belongs, locked around your throat.<br>
<br>
A quick standing snog with <<=setup.getNpcName("npc_technician","first")>> and yourself are ready to head back to the group for game.<br>
<br>
[<<moveTo "event_technician_collar_5" "Settle down for game." 300>>]
<<else>>
You look away and softly confess that... "@@.pc;I'm not ready.@@"<br>
<br>
In an instant <<=ps(setup.getNpcName("npc_technician","first"))>> imperious demeanour shatters as she kneels next to you and pulls you in for a hug.<br>
<br>
"@@.npc_technician;Oh, I'm so sorry! I didn't mean to put you on the spot like this. I just... I was so excited to collar you I wanted to show off, y'know? Here... why don't you get changed back and we'll move on with the game just... remember that I love you, whatever our relationship is, okay?@@"<br>
<br>
You blush even harder as you hug her back, barely suppressing tears as she helps you back to your feet and into the bathroom to change.<br>
<br>
You emerge a couple minutes later back in your normal attire, and a minute later she pops out of the bedroom in "casual-mode" once again.<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: technician collaring ceremony — accept collar
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet "enslaved_star_princess">>
<<useClothSetPop 'tmp'>>
<<include "initRPGSession">>
<<set $scene.preGameEvent = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> takes her seat, her gaze scanning the room before lingering momentarily on you... and your new collar.<br>
<br>
Before things start, <<=setup.getNpcName("npc_rpg_warlock","first")>> jumps in with a sly grin. "@@.npc_rpg_warlock;So... we were just thinking and... what say we celebrate this occasion sometime with a double date to <<printShopName 'sex_club'>>?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks at you and grins. "@@.npc_technician;Oooo, that does sound fun... we'll talk about it and give you a call. But for tonight... game!<<if $npc_technician.flags.rpg_campaign.session <=7>> What shall we play this evening?<</if>>@@"<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 3 4 5 6 7>>
[<<moveTo 'event_rpg_campaign_session_x_pre' "Start the session." 60>>]
<<default>>
<<include "rpg_gameChoices">>
<</switch>>
</div>/*#
#desc: theme technician, talk about kinks
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<include "addCosplayInvite">>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You lean closer to whisper and tell <<=setup.getNpcName("npc_technician","first")>> that you'd like to talk about some of your more... extreme interests.<br>
<br>
She grins and leans in as well, "@@.npc_technician;Ooooh, kinky: you are just a bottomless pit of hot fun, tell, me tell me! I promise I'm GGG for basically anything...<<switch $npc_technician.relationship.her_role>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<case 'dom'>>My Sweet Princess<<case 'neutral'>>My Love<</switch>>.@@"<br>
<br>
<<include "technicianThemeKinks">>
</div><<if !State.hasPlayed("event_convention_intro_1") && !$events.hasOwnProperty("technician_cosplay_invite") && State.hasPlayed("theme_technician_kink_1") && State.hasPlayed("event_technician_private_game_quest_5")>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 16, 0)>>
<<addEvent 'technician_cosplay_invite' _nextDate>>
<</if>><<if setup.getTotalValue("penis") > 10>>
<<if $npc_technician.relationship.kinks.penis>>
[@@.link_locked;You've already told her how much you love cock.@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her how much you love cock." 180 "<<set $scene.kink='penis'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("penis") > 5>>
[@@.link_locked;You aren't quite ready to tell her how much you like cock...@@]<br>
<<else>>
[@@.link_locked;You don't really like cock.@@]<br>
<</if>>
<<if setup.getTotalValue("bdsm") > 10>>
<<if $npc_technician.relationship.kinks.bdsm>>
[@@.link_locked;You've already told her that you're a pain-slut.@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her you are a pain-slut." 180 "<<set $scene.kink='bdsm'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("bdsm") > 5>>
[@@.link_locked;You aren't quite ready to admit to being a masochist.@@]<br>
<<else>>
[@@.link_locked;You aren't a masochist!@@]<br>
<</if>>
<<if setup.getTotalValue("bondage") > 10>>
<<if $npc_technician.relationship.kinks.bondage>>
[@@.link_locked;You've already told her how much you love bondage.@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her you are a total bondage slut." 180 "<<set $scene.kink='bondage'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("bondage") > 5>>
[@@.link_locked;You aren't quite ready to admit to enjoying bondage.@@]<br>
<<else>>
[@@.link_locked;You don't enjoy bondage!@@]<br>
<</if>>
<<if setup.getTotalValue("humiliation") > 10>>
<<if $npc_technician.relationship.kinks.humiliation>>
[@@.link_locked;You've already told her how much you enjoy humiliation.@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her you get off on humiliation." 180 "<<set $scene.kink='humiliation'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("humiliation") > 5>>
[@@.link_locked;You aren't quite ready to admit to enjoying humiliation.@@]<br>
<<else>>
[@@.link_locked;You don't enjoy humiliation!@@]<br>
<</if>>
<<if setup.getTotalValue("foot") > 10>>
<<if $npc_technician.relationship.kinks.foot>>
[@@.link_locked;You've already told her of your foot fetish.@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her you are a foot fetishist." 180 "<<set $scene.kink='foot'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("foot") > 5>>
[@@.link_locked;You aren't quite ready to admit to being a foot fetishist.@@]<br>
<<else>>
[@@.link_locked;You don't like feet!@@]<br>
<</if>>
<<if $fetish.cum>>
<<if setup.getTotalValue("cum") > 10>>
<<if $npc_technician.relationship.kinks.cum>>
[@@.link_locked;You've already told her you're a cumaholic.@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her that you are a cum addict." 180 "<<set $scene.kink='cum'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("cum") > 5>>
[@@.link_locked;You aren't quite ready to admit that you love cum.@@]<br>
<<else>>
[@@.link_locked;You don't like cum!@@]<br>
<</if>>
<</if>>
<<if $fetish.piss>>
<<if setup.getTotalValue("piss") > 10>>
<<if $npc_technician.relationship.kinks.piss>>
[@@.link_locked;You've already told her you love "lemonade."@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her that you love water sports." 180 "<<set $scene.kink='piss'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("piss") > 5>>
[@@.link_locked;You aren't quite ready to admit that you enjoy water sports.@@]<br>
<<else>>
[@@.link_locked;Water sports are disgusting!@@]<br>
<</if>>
<</if>>
<<if $fetish.bestiality_hard>>
<<if setup.getTotalValue("bestiality") >= 5>>
<<if $npc_technician.relationship.kinks.bestiality>>
[@@.link_locked;You've already told her you're an animal lover.@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her that you love animals. Like LOVE animals." 180 "<<set $scene.kink='bestiality'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("bestiality") > 0>>
[@@.link_locked;You aren't quite ready to admit that you enjoy bestiality.@@]<br>
<</if>>
<</if>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if $npc_technician.relationship.kinks.bimbofication>>
[@@.link_locked;You've already told her of your bimbofication fetish.@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her you are turned on by the idea of bimbofication." 180 "<<set $scene.kink='bimbofication'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("bimbofication") > 5>>
[@@.link_locked;You don't want to say you have a bimbofication kink.@@]<br>
<<else>>
[@@.link_locked;You barely have interest in sex, you definitely aren't turned on by bimbofication!@@]<br>
<</if>>
<<if setup.getTotalValue("whoring") >= 5 && setup.getTotalValue("bimbofication") >= 15>>
<<if $npc_technician.relationship.kinks.whore>>
[@@.link_locked;You've already told her how much being a slutty whore turns you on.@@]<br>
<<else>>
[<<moveTo "theme_technician_kink_2" "Tell her that you get really turned on by being paid for sex." 180 "<<set $scene.kink='whore'>>">>]<br>
<</if>>
<<elseif setup.getTotalValue("whoring") >= 5>>
[@@.link_locked;You only whore yourself out for the money, you aren't actually into being a slut...@@]<br>
<<elseif setup.getTotalValue("bimbofication") >= 15>>
[@@.link_locked;You're a slut, not a whore who gets off being paid for sex!@@]<br>
<<elseif setup.getTotalValue("bimbofication") >= 10>>
[@@.link_locked;You aren't some sort of slutty whore...@@]<br>
<<else>>
[@@.link_locked;You aren't into getting paid for sex!@@]<br>
<</if>>
[<<moveTo "theme_technician_kink_2" "You don't feel like admitting to any more kinks right now, change the subject." 180 "<<set $scene.kink='none'>>">>]/*#
#desc: theme technician, tell her your kinks
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.kinks[$scene.kink] = true>>
<<if $scene.kink != "none">>
<<set $scene.sharedKink = true>>
<</if>>
<<switch $scene.kink>>
<<case "penis">>
<<applyExperience 'humiliation' 5 'normal' $SEEN_FRIEND>>
<<case "bdsm" "bondage" "foot">>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<<case "cum">>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<case "piss">>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<case "bestiality">>
<<applyExperience 'humiliation' 15 'normal' $SEEN_FRIEND>>
<<case "bimbofication">>
<<applyExperience 'humiliation' 15 'normal' $SEEN_FRIEND>>
<<case "whoring">>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<case "humiliation">>
<<applyExperience 'humiliation' 8 'normal' $SEEN_FRIEND>>
<<if $npc_technician.relationship.her_role == 'dom' && $player.flags.humiliationStyle>>
<<addWorkEvent 'technician_humiliation_1'>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.kink>>
<<case "penis">>
You tell <<=setup.getNpcName("npc_technician","first")>> that you like cock.<br>
<br>
She grins. "@@.npc_technician;Like, of course? Who doesn't! I mean, why do you think I keep mine. I mean, any time I look down and see it, then take it in hand... yum.@@"<br>
<br>
You sigh and clarify that no you don't just like cock you REALLY like cock.<br>
<br>
"@@.npc_technician;Ooooh@@" she says with an even wider grin,
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Well I guess it's good for you that your <<=setup.getNpcName("npc_technician","title")>> has a nice big one that she'd love to have her Princess on the end of worshipping...<<if $npc_technician.relationship.her_caged>> Well... if I wasn't locked away in this dang cage!<</if>>@@"
<<case 'neutral'>>
"@@.npc_technician;Well I guess it's good for you that your girlfriend has a nice big one that she'd love to let you fuck and suck and worship whenever you like...<<if $npc_technician.relationship.her_caged>> Well... if you'd ever let her out of this dang cage!<</if>>@@"
<<case "sub">>
"@@.npc_technician;Well I guess it's good for you that your adoring slave has a nice big one that she'd love to let you do whatever you wanted with...<<if $npc_technician.relationship.her_caged>> That is, if you feel she deserves to be let out of her cage to play...<</if>>@@"
<</switch>>
<br><br>
She laughs and winks at you. "@@.npc_technician;I'll certainly keep that in mind for the future.@@"
<<case "bdsm">>
You tell <<=setup.getNpcName("npc_technician","first")>> that you consider yourself a pain-slut.<br>
<br>
She smiles. "@@.npc_technician;Oooh, kinky. I'll admit... a bit trickier for me to handle — I'm kind of too nice, I think, but I'll try to keep that in mind in the future, alright?@@"
<<case "humiliation">>
You tell <<=setup.getNpcName("npc_technician","first")>> that being humiliated turns you on.<br>
<br>
She grins. "@@.npc_technician;Yeah... I could have told you that, the way you blushed when I told you to crawl under my desk and massage my feet? Unf, so hot, so cute... so utterly depraved.<<if $npc_technician.relationship.her_role != 'dom'>> Though... for me to do something with this information it would probably be more appropriate if I was in charge of things, right?<</if>>@@" <<hint $options "<<=ps(setup.getNpcName('npc_technician','first'))>> humiliation kink event requires her to assume the dominant role in the relationship.">>
<<case "bondage">>
You tell <<=setup.getNpcName("npc_technician","first")>> that you're a bondage-slut.<br>
<br>
She grins. "@@.npc_technician;Why am I not surprised? Hmm... yeah, I can totally see you as a sexy rope bunny... I'll definitely keep this in mind for the future.@@"
<<case "foot">>
You tell <<=setup.getNpcName("npc_technician","first")>> that you like feet.<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.asked_for_help>>
She chuckles. "@@.npc_technician;Yeah... I kind of figured that out when you responded to a joke about massaging my feet by just straight-up crawling under my desk for hours. I'll definitely take advantage of your interest in the future though, your fingers are MAGICAL.@@"
<<else>>
She raises an eyebrow. "@@.npc_technician;Really? Huh, guess that's another one of those things you've figured out more recently... otherwise there's no way you would have turned down my request for a foot massage in exchange for data help, right?@@" She winks. "@@.npc_technician;I'll totally keep this in mind though... those damn heels they force me to wear to work have my feet in constant knots!@@"
<</if>>
<<case "cum">>
You tell <<=setup.getNpcName("npc_technician","first")>> that you love cum. Like LOVE cum.<br>
<br>
She grins. "@@.npc_technician;Ooooh, kinky... and I can totally picture you looking all hot and covered in spunk... mmm, yeah, you mention it and your face was MEANT to be turned into a dripping bukkake mess...@@" She seems to get lost in fantasy for a moment. "@@.npc_technician;Sorry, yeah... I'll keep this in mind for the future, okay?@@"
<<case "bimbofication">>
You tell <<=setup.getNpcName("npc_technician","first")>> that you're turned on by the idea of bimbofication...<br>
<br>
She smirks. "@@.npc_technician;Been hanging out with <<=setup.getNpcName("npc_barista","nickname")>>, have we?@@" She laughs, "@@.npc_technician;I totally get it — having to be on ones toes at work and everything, the idea of just turning it, embracing the most OTT feminine stereotypes and just being dumb and horny? Yeah, I can vibe with that. Now that I know you're into it as well, well...@@" She taps her head, "@@.npc_technician;never underestimate the cunning schemes of a clever bimbo.@@"
<<case "piss">>
You tell <<=setup.getNpcName("npc_technician","first")>> that you like watersports...<br>
<br>
She seems a touch surprised, but also interested. "@@.npc_technician;Wait, you mean like... being pissed on? Or do you mean... full on "I love lady lemonade" territory?@@"<br>
<br>
You blush and reply the latter, explaining that there's just something about the taboo depravity that really turns your crank.<br>
<br>
"@@.npc_technician;Hmm... yeah, I can see that, I mean it is like a HUGE show of submission and I guess objectification to be someone's personal urinal? Thanks for trusting me with this info. I'll keep it in mind... maybe surprise you with something sometime...@@"
<<case "bestiality">>
You tell <<=setup.getNpcName("npc_technician","first")>> that you like animals...<br>
<br>
"@@.npc_technician;Sure, like, who doesn't? I mean, I can't have a pet in my place because of apartment rules and... oh, wait you mean...@@"<br>
<br>
You blush and nod.<br>
<br>
"@@.npc_technician;Oh, wow that's like... well, I mean, <<=setup.getNpcName("npc_barista","nickname")>> has talked about it from time to time — but we both know how much of a total slut she is you, though...@@" She looks at you and bites her lip. "@@.npc_technician;Fuck... you mention it now and... the idea of you being knotted... or sucking off a horse? Or fuck... overwhelmed by some sort of tentacle beast? Yeah... that's going in the old spank bank for sure... and I'm definitely going to be hitting up <<=setup.getNpcName("npc_barista","nickname")>> for advice on how to "help" my <<switch $npc_technician.relationship.her_role>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<case 'dom'>>Sweet Princess<<case 'neutral'>>Love<</switch>>.@@"
<<case "whore">>
You tell <<=setup.getNpcName("npc_technician","first")>> that you really get off on being paid for sex.<br>
<br>
"@@.npc_technician;Wait... are you, like... asking me to be your pimp?@@" You blush and she grins. "@@.npc_technician;To tell you the truth... I don't think I'm ready for THAT level of power... dungeon Mistress is one thing, but going into management? Yuck! But... well... if it would get you off... I might be able to come up with something...@@"
<<case "none">>
<<if $scene.sharedKink>>
You decide to change the subject and state that you don't have any more kinks to share today.<br>
<br>
"@@.npc_technician;Today? Hmmm... so that means more to share later, excellent.@@" <<=setup.getNpcName("npc_technician","first")>> grins and taps her fingers together with glee. "@@.npc_technician;I want to know EVERYTHING about making my <<switch $npc_technician.relationship.her_role>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<case 'dom'>>Sweet Princess<<case 'neutral'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>><</switch>> happy!@@"
<<else>>
You decide to change the subject and admit that actually you don't have any kinks to share.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks a bit disappointed, but she smiles and pats your hand.<br>
<br>
"@@.npc_technician;Aww, you had me all excited! Well, if you ever think of something you that interests you, let me know... I want to know EVERYTHING about making my <<switch $npc_technician.relationship.her_role>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<case 'dom'>>Sweet Princess<<case 'neutral'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>><</switch>> happy!@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
<<default>>
ERROR: unexpected scene.kink <<=$scene.kink>>
<</switch>>
<br><br>
<<if $scene.kink != "none">>
"@@.npc_technician;Sooo... any other hot naughty desires you want to tell me about? I want to know EVERYTHING.@@"<br>
<br>
<<include "technicianThemeKinks">>
<</if>>
</div>/*#
#desc: technician bestiality event - walk to park
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<</if>>
<<if $scene.obey>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Building's Elevator.">>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.obey>>
<<createAdvBGR "./images/locations/flat_elevator.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You yip in excitement and <<=setup.getNpcName("npc_technician","first")>> smiles wide as she opens the door and leads the way up the hall.<br>
<br>
<<if State.hasPlayed("event_technician_bestiality_2") && $npc_technician.relationship.kink_indulge.cum >= 3 && $npc_technician.relationship.kink_indulge.humiliation>>
<<if State.hasPlayed("event_technician_petplay_cum_3")>>
"@@.npc_technician;So... where to tonight, my dear? Cum-slut alley... or the park?@@"<br>
<br>
[<<moveTo "event_technician_petplay_cum_repeat" "Back to the alley." 1800>>]<br>
[<<moveTo "event_technician_bestiality_2" "The park." 600>>]
<<else>>
You're crawling along the street at <<=ps(setup.getNpcName("npc_technician","first"))>> heels when you spot a used condom, the scent of the spilt cum coming through even over the leather of your mask.<br>
<br>
[<<moveTo "event_technician_petplay_cum_1" "Dive on that tasty treat!" 120 "<<set $scene.cum=true>>">>]<br>
[<<moveTo "event_technician_petplay_cum_1" "Keep on crawling." 120 "<<set $scene.cum=false>>">>]
<</if>>
<<else>>
The hour is late and you do not run into anyone on the short crawl to the elevator, but as you head down your heart starts beating faster — are you really going to go outside like this?<br>
<br>
Sensing your concern <<=setup.getNpcName("npc_technician","first")>> smiles down as the elevator door opens and she leads you out. "@@.npc_technician;Don't worry — I've seen way crazier stuff late at night on this side of town. Besides, we're not going far, just up the block to a little park that you're going to just love...@@"<br>
<br>
Comforted by her words, and feeling safe at her side, you crawl along as quickly as you can — mindful that your restricted position has her walking VERY slow. You see only one other person on the dark street, but that is more than enough to make your blood pump in humiliation, feeling their eyes on you for every moment as you crawl past the bus stop they're waiting at and into the safety of the park.<br>
<br>
Despite your pace she was correct that the park was close and you soon move from pavement to grass as she leads you off the path and through a small wooded area to a dark corner of the park.<br>
<br>
[<<moveTo "event_technician_bestiality_2" "Continue." 600>>]
<</if>>
<<else>>
Crawling around <<=ps(setup.getNpcName("npc_technician","first"))>> apartment plugged and restrained is one thing, but going outside? You shake your head and <<=setup.getNpcName("npc_technician","first")>> immediately kneels down to pet you.<br>
<br>
"@@.npc_technician;Aww, you feeling too tired for walkies? That's fine, you've had a bit, active day!@@" She gives your plug a quick wiggle to have you moaning through your gag before she stands back up and leads you over to the couch.<br>
<br>
Once she's had you hop up she cuddles you a bit more then starts helping you out of the bitchsuit, massaging each limb as it is returned to its un-bent length.<br>
<br>
"@@.npc_technician;Maybe we can go outside some other time — I've got a special surprise planned that I think you'll love,@@" she states enigmatically before gathering up the leather bitchsuit and taking it back to her room.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Put your clothes back on and wait for her return." 600 "<<removeItemSet 'puppy_black_copy'>><<deleteItemSet 'puppy_black_copy'>><<removeItem 'dog_leash' true>><<deleteItem 'dog_leash'>><<removeItem $scene.dogPlug true>><<deleteItem $scene.dogPlug>><<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: technician bestiality event - fuck choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Park.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Here we go...@@" She states as you emerge into a small, dark clearing. You spot some movement at the far side, and watch in awe as a large mutt crawls out from his resting place.<br>
<br>
"@@.npc_technician;There we go, <<=setup.getNpcName("npc_barista","nickname")>> tipped me off about this handsome fella — in her words his knot feels "like, ohmygod soooo goooooood!" So... you wanna try him out?@@"<br>
<br>
Your ass reflexively clenches, shifting the plug in your rear and making it wag. <<=setup.getNpcName("npc_technician","first")>> notices the movement and crouches down next to you, "@@.npc_technician;Mmm, I knew you'd like this idea... so you ready to be my bred bitch? Fuck just saying that makes me so hard... I kind of want to just fuck you myself but the thought of watching his big knot swell inside your cute ass...@@"<br>
<br>
[<<moveTo "event_technician_bestiality_3" "Yes, you want to get fucked like a bitch." 600 "<<set $scene.fuck=true>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;Human, animal, alien or eldritch; you'll never pass up the opportunity to get fucked!@@]
<<else>>
[<<moveTo "event_technician_bestiality_3" "You'd rather go home." 600 "<<set $scene.fuck=false>>">>]
<</if>>
</div>/*#
#desc: technician bestiality event - fucked
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fuck>>
<<if $npc_technician.relationship.kink_indulge.dog >= 2 && State.hasPlayed("event_bestiality_tech_7")>>
<<initRoom>>
<<moveTo "event_bestiality_tech_bitchsuit_1">>
<<else>>
<<removeItem $scene.dogPlug true>>
<<applyExperience 'bestiality' 5 'unbelievable' $SEEN_FRIEND>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 17 'terrible' $SEEN_FRIEND>>
<<applyFatigue 50>>
<<if $npc_technician.relationship.kink_indulge.dog < 1>>
<<set $scene.bestiality_first = true>>
<<set $npc_technician.relationship.kink_indulge.dog = 1>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Park.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.fuck>>
You tremble in the cool night air as <<=setup.getNpcName("npc_technician","first")>> wiggles the plug out of your ass and gives you a gentle swat to send you crawling forward.<br>
<br>
The mutt stands tall in the centre of the clearing, looming over your subservient posture as you crawl before him, bow, then turn to present yourself for his use. Your masked face pressed against the grass you're able to turn your head just enough to look up at <<=setup.getNpcName("npc_technician","first")>> as the dog mounts you, his thick canine cock seeming to fill you perfectly, his knot slamming into you with a "pop" that you feel through your entire body.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> watches in awe as your ass is bred by the feral creature. Her arousal is painted across her face even as she resists the urge to touch herself in favour of taking in every detail of your humiliating surrender.<br>
<br>
Between the muffled effect of the hood, the grunts of the mutt and your pounding heart you can't hear anything as he fucks you into the ground, but you don't have to be a lip-reader to know that <<=ps(setup.getNpcName("npc_technician","first"))>> is moaning in pleasure as she watches her bound <<switch $npc_technician.relationship.her_role>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<case 'dom'>>Sweet Princess<<case 'neutral'>><<switch $player.identify_as>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>><</switch>> get knotted and bred like a bitch.<br>
<br>
The mutt takes his time, but eventually you feel him cum, a thick, long climax that bubbles out around his cock even before his knot deflates enough for him to free himself from your ass.<br>
<br>
He licks your quivering hole once, as if in thanks, and then trots away as you tremble on the ground and <<=setup.getNpcName("npc_technician","first")>> runs over to comfort you.<br>
<br>
[<<moveTo "event_technician_bestiality_4" "Continue." 1800>>]
<<else>>
You creep back around behind <<=ps(setup.getNpcName("npc_technician","first"))>> as you cower before the looming beast in front of you.<br>
<br>
"@@.npc_technician;Aww, you wanna go home? That's fine, come on — we can visit him some other time.@@"<br>
<br>
The large mutt watches you the whole way as you retreat from his clearing and make the slow crawl back to <<=ps(setup.getNpcName("npc_technician","first"))>> flat where she helps you out of the bitchsuit and massages your stiff joint back to life.<br>
<br>
She smiles at you the whole time, making no objection as to your reluctance, soothing you with kisses before gathering up the bitchsuit to put away in her room.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Put your clothes back on and wait for her return." 600 "<<removeItemSet 'puppy_black_copy'>><<deleteItemSet 'puppy_black_copy'>><<removeItem 'dog_leash' true>><<deleteItem 'dog_leash'>><<removeItem $scene.dogPlug true>><<deleteItem $scene.dogPlug>><<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: technician bestiality event - go home
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 20>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Holy shit! That was one of the hottest things I've ever seen in my life,@@" she breathlessly gushes, "@@.npc_technician;You were magnificent... the way you prostrated yourself in front of him, and then how that big dog-cock of his slid into your hot, sexy ass... goddess, I think I jizzed in my pants just watching! I'm never going to forget this and I'm so, so thankful you trusted me enough to share this part of yourself with me... the way you made it look, well... it makes me tempted to try being "that bitch" someday...@@"<br>
<br>
You groan, unsure if your SO is about to run off after the mutt for round two... or take sloppy seconds on your dripping hole... instead she merely replaces your tail "@@.npc_technician;To keep you from leaking,@@" and clips the leash back to
<<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>
your collar,
<<else>>
the ring built into the hood,
<</if>>
before helping you back up onto your knees and leading you home.<br>
<br>
With every step you feel the plug shift in your ass and the cum slosh work its way deeper into you. The bus-stop is empty this time, and you are almost disappointed, your mind still blazing with the memory of getting fucked by a dog in front of your friend, a depraved part of you wanting to show off for the world, for some stranger to see you and KNOW that the bound, helpless slut in front of them has just been bred like the bitch they are dressed up as.<br>
<br>
None such happens as, instead, you ride the elevator back up, shuddering as its vibrations run up your legs and through your plug, churning your cum-filled bowels and making your knot-abused <<if $player.body_ref.penis>>prostate<<else>>bum<</if>> quivers.<br>
<br>
Crawling back into her flat you welcome the feeling of her stripping your restraints, her tender hands massaging you as her lips kiss your whole body as she whispers how proud she is of her "@@.npc_technician;Wonderful widdle pup.@@"<br>
<br>
After some time curled up on the couch she gathers up the restraints to take back to her room while you return to "human" mode and reach for your clothes.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Put your clothes back on and wait for her return." 180 "<<removeItemSet 'puppy_black_copy'>><<deleteItemSet 'puppy_black_copy'><<removeItem 'dog_leash' true>><<deleteItem 'dog_leash'>><<removeItem $scene.dogPlug true>><<deleteItem $scene.dogPlug>><<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: meet technician in lobby after work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 7200) || $npc_technician.flags.evil == 1>>
<<removeRandomEvent 'elevator_home' 'technician_horse'>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_horse'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You step off the elevator to find your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> was apparently waiting for you. She greets you with a smile and a kiss "@@.npc_technician;Anyone tell you today that you look smoking hot? You look good in everything but business-mode <<=$player.first_name>>? Yum — <<switch $npc_technician.relationship.her_role>><<case 'dom' 'neutral'>>makes me wish I ranked high enough to have a personal secretary and maybe get you transferred...<<case "sub">>makes me wish I could be YOUR secretary, just to hang out next to your desk and stare at you all day<</switch>>.@@"<br>
<br>
You ask what she's up to?<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
"@@.npc_technician;So... hot stuff, I had a little idea of something we could do together... if you didn't have any other plans?@@"<br>
<br>
[<<moveTo "event_technician_horse_2" "You'd love to do something together!" 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_horse_2" "Actually... you had plans." 60 "<<set $scene.accept=false>>">>]<br>
<<else>>
"@@.npc_technician;Just wanted to say hi — don't want to interfere with whatever after-work plans you had, but I thought I could see you for a couple minutes and maybe brighten your day.@@"<br>
<br>
You smile and reply that any time you see her is good for that.<br>
<br>
It's her turn to blush as she gives you a friendly swat on the shoulder. "@@.npc_technician;That's not fair! You can't be the cutest thing ever AND the sweetest. Anyway, I gotta head off too, just wanted to say hi and wish you a wonderful rest of your day!@@" She's about to leave when you hear the Imperial March coming from her phone.<br>
<br>
"@@.npc_technician;Gah! Doubly screwed!@@" She states after glancing at the message "@@.npc_technician; that's my boss, looks like someone bungled things up and is in need for the magic that only the Tech Wizard possesses. I'll catch you later!@@"<br>
<br>
She dashes back towards the elevator, blowing you a parting kiss as the door closes.<br>
<br>
[<<moveTo "room_citymap" "Leave the building." 300>>]
<</if>>
</div>/*#
#desc: technician takes you to in-town stables
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<removeRandomEvent 'elevator_home' 'technician_horse'>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_horse'>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "City Street">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin and reply that "@@.pc;Of course,@@" you'd be up for some fun.<br>
<br>
"@@.npc_technician;Awesome!@@" She replies with a wide grin as she takes you by the hand. "@@.npc_technician;Come on, I made a fun discovery nearby and... I just know you're going to love it!@@"<br>
<br>
Surpassing the lewdness of the day thus far you hold hands with <<=setup.getNpcName("npc_technician","first")>> and walk out of the building.<br>
<br>
Obviously excited she walks quickly as she leads you a few blocks, eventually turning down an alleyway and then approaching a nondescript door next to a large garage. The two of you wait for someone to respond to her knock as you trying to figure out what this place could be, glancing at the un-labeled garage in puzzlement.<br>
<br>
<<printThought "Wait... are those hoof-prints?">><br>
<br>
[<<moveTo "event_technician_horse_3" "The door is opening..." 300>>]
<<else>>
You reply that you already had plans. <<=setup.getNpcName("npc_technician","first")>> frowns theatrically, but nods. "@@.npc_technician;Aww... okay, well, some other time then.@@" She gives you a kiss on the cheek and turns to go "@@.npc_technician;I'll see you around!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> disappears and you head for the doors.<br>
<br>
[<<moveTo "room_citymap" "Leave the building." 300>>]
<</if>>
</div>/*#
#desc: technician invites you to join her with horse
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
A somewhat gruff, overall-clad woman opens the door and <<=setup.getNpcName("npc_technician","first")>> slips them a few credits before motioning you to follow her inside.<br>
<br>
"@@.npc_technician;So... I was fantasising about some of your interests and I did some research online to find, surprise surprise, that this little place was so near work!@@"<br>
<br>
You're starting to guess what's going on based on the smell of hay and things confirmed after a short walk up a hallway and turn into a small, but clean, stables. Making maximal use of space you estimate there's just enough room for a carriage to park in the middle, with a pair of stalls running along the far wall — one of which is presently occupied by a very handsome horse...<br>
<br>
"@@.npc_technician;So... yeah, this is the downtown stables for that olde-timey horse-drawn carriage you see around sometime. They have a proper ranch outside town a ways, but they need a spare horse here to switch off during the day and, well... I just bought us an hour or so of private time with the fella...@@"<br>
<br>
She seems almost giddy as she leads the way over to the stall, pulling a fresh apple out of her pocket to feed to him before cracking the gate and slipping inside.<br>
<br>
"@@.npc_technician;Oh, wow... you've gotta see this! He is QUITE the stallion...@@" She states, her gaze looking directly under the beast's belly...<br>
<br>
[<<moveTo "event_technician_horse_4" 'Join her in the stall for some "fun."' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_horse_4" "Actually... you aren't feeling like horsing around today." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: technician invites you to suck horse
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.first = !setup.hasThreshold('bestiality', 'horse', 'horsecock_lover')>>
<<else>>
<<removeRandomEvent 'elevator_home' 'technician_horse'>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_horse'>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin and join <<=setup.getNpcName("npc_technician","first")>> in the stall, gawking in turn at the large, not even fully hard, horse-cock as she latches the gate, "locking" the pair of you in with this impressive specimen of equine excellence.<br>
<br>
"@@.npc_technician;How do you think it tastes?@@" She asks in awe, sliding to her feet and taking the monster cock in hand. "@@.npc_technician;Oh, wow, it feels so hot!@@" She notes, jumping slightly as it twitches in her grasp and gets a little harder.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Come on, Princess. I can tell you want this, and your <<=setup.getNpcName("npc_technician","title")>> wants to see your lips wrapped around this big, beautiful beast.@@"
<<case 'neutral' ''>>
"@@.npc_technician;Come on, you've gotta feel this... and I want us to kiss it for the first time together...@@"
<<case "sub">>
"@@.npc_technician;Oh <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>! You have to feel this... and then... maybe we can both kiss it together?@@"
<</switch>>
She bites her lip and looks seductively up at you in invitation.<br>
<br>
<<if $scene.first>>
<<if setup.hasThreshold('bestiality', 'horse', 'dildo')>>
You recall your "practice" with the silicone horsecock dildo... the real thing looks much more enticing...<br>
<br>
<</if>>
[<<moveTo "event_technician_horse_5" 'Get down and join her in sucking your first horse cock.' 300>>]<br>
<<else>>
[<<moveTo "event_technician_horse_5" 'Get down and show her what it means to suck horse cock.' 300>>]<br>
<</if>>
[<<moveTo "event_technician_horse_4" "You don't feel like sucking horse cock today." 300 "<<set $scene.accept=false>>">>]
<<else>>
You hesitate and state that you don't think you're quite up for this today.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> gives one last longing look at the horse before slipping back out of the stall and latching the gate closed. "@@.npc_technician;Okay... I don't think I quite have the courage to do this alone... maybe some other time?@@"<br>
<br>
You can tell she's a little disappointed, but she doesn't pressure you to change your mind, the two of you leaving as the stable-<<master>> chuckles. <<=setup.getNpcName("npc_technician","first")>> gives you a parting kiss wishing you a good rest of your day. She heads up the alleyway back towards the Student Quarter as you think about where you want to go.<br>
<br>
[<<moveTo "room_citymap" "Go somewhere else." 120>>]
<</if>>
</div>/*#
#desc: you and technician suck off a horse
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_technician.relationship.kink_indulge.horse = true>>
<<if !setup.hasThreshold("bestiality", "horse", "horsecock_lover")>>
<<setThreshold "bestiality" "horse" "horsecock_lover">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_horse'
0
'event_psychiatrist_session_bestiality_horse'
false
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_horse'
0
'theme_church_confession_horse'
true
>>
<</if>>
<<applyExperience 'bestiality' 7 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'very' $SEEN_FRIEND>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<</if>>
<<else>>
<<removeRandomEvent 'elevator_home' 'technician_horse'>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_horse'>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You join <<=setup.getNpcName("npc_technician","first")>> kneeling on the soft straw, your hand joining hers to grasp the large, hard horse-cock that now sways between you.<br>
<br>
Your eyes meet, and you lean forwards, free hands reaching up to caress one another's head as you lean in for a "shared" kiss around the thick, hot horse-cock. You moan in unison, the size, the taste, the feel... the raw, animalistic scent... like no human member you have ever experienced. You wonder if you might have just slightly ruined yourself for human cock, but as you open your eyes and look back at your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>> you don't care, submitting to her firm grip on your head as you suck passionately and she guides you towards the end of the cock and angles the flared tip between your lips...
<<case 'neutral' ''>>
girlfriend you don't care, the two of you eagerly sucking your way up and down the equine excellence until she guides you towards the tip, angling the flared head between your lips...
<<case "sub">>
slave you don't care. Her expression is so submissive — not just to the horse-cock spreading her lips, but to you, her <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. Submissively she lets you slide towards the dripping cock-head, helpfully angling the flared tip between your lips...
<</switch>>
<br><br>
<<if $scene.first>>
Your heart beats faster — you're about to suck your first horse dick, and to suck it with your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>> guiding you along!
<<else>>
Your heart beats faster as you find yourself eager to show your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> how sucking horse-cock is done.
<</if>>
<br><br>
<<if setup.getTotalValue("oral") > 10>>
Your lips spread wide,
<<if setup.getTotalValue("oral") > 15>>
putting your astounding skill to full use as you lean forward until your chin brushes the beast's giant balls and <<=setup.getNpcName("npc_technician","first")>> gasps.<br>
<br>
"@@.npc_technician;You look so fucking hot like that — your lips stretched, throat bulging... fuck, if you can handle this I can REALLY go to town. I mean, I'm big, but I'm HUMAN.@@"
<<else>>
pushing your skills to the limit as you make it almost all the way down to the base, feeling you throat swell as <<=setup.getNpcName("npc_technician","first")>> purrs.<br>
<br>
"@@.npc_technician;Fuck, that's so hot, I can't believe you can almost completely swallow a horse-cock, but I'm never going to forget this sight and how turned on it makes me...@@"
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
Any illusions you may have had about your growing skill as a cock-sucker are squashed in the face of this bestial monstrosity. You barely get a third of it past your lips before your throat is straining.<br>
<br>
"@@.npc_technician;Holy shit that's hot — watching you struggle to swallow as much horse-dick as you can... amazing. How did I get so lucky to find someone so depraved?@@"
<<else>>
You barely manage to fit the flared head of the horse-cock into your mouth, but even that is beyond intense, the taste of its pre filling your mouth as <<=setup.getNpcName("npc_technician","first")>> looks on.<br>
<br>
"@@.npc_technician;Goddess you look so beautiful choking on horse dick...@@"
<</if>>
<</if>>
<br><br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
Grabbing you by the hair <<=setup.getNpcName("npc_technician","formal")>> gently pulls you back before hungrily taking your place.
<<case 'neutral' ''>>
Brimming with jealousy <<=setup.getNpcName("npc_technician","first")>> starts horning in until you lean back and let her have a turn. She takes a deep breath and opens wide.
<<case "sub">>
Your slave is brimming with jealousy, but kneels obediently until you pull back and offer the cock to her. Grinning wide she eagerly leans in as you guide the wet tip towards her wide-spread lips...
<</switch>>
Her lips make it just over halfway down, her throat bulging as her eyes roll back in pleasure and she is forced to pull back, panting and drooling.<br>
<br>
You lock eyes with your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>> and then it's on, the two of you alternating sucking horse cock and kissing one another, depravity turning to intimacy as you help one another to new limits of horsey hedonism.<br>
<br>
[<<moveTo "event_technician_horse_6" "You see the beast's balls retract as he twitches a final time..." 120>>]
</div>/*#
#desc: horse cums on you and technician
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 7 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 13 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Cheek to cheek, lips spread wide all thoughts of seniority or submission fade in anticipation of horse cum, the two of you staring down the long flesh-cannon as you stroke with both hands each.<br>
<br>
The horse cums, a monstrous blast that hits the two of you square in the face, your double grip aiming it like a fire-hose as you each get an overflowing mouthful and enough to soak your face and drip down your body before it spurts its last and begins to go limp.<br>
<br>
Gulping down the first mouthful the two of you look to the side, each seeing the other literally dripping in cum and hungrily leaning in for passionate kissing; whispering how much you enjoyed what just happened as you lick one another clean.<br>
<br>
Still excited and out of breath you help one another back to your feet, taking a moment to hug your enthusiastic equine partner before you stagger out of the stall, leaning against one another as you feel almost drunk on cum.<br>
<br>
"@@.npc_technician;That was...@@" She trails off, seemingly at a loss for words.<br>
<br>
"@@.pc;Wow.@@" Your reply, and she grins.<br>
<br>
"@@.npc_technician;Wow is right!@@" She replies as the two of you head for the exit.<br>
<br>
You hiccup, the action summoning up a bit of froth and you cough, a cum-bubble growing from one of your nostrils and then popping as <<=setup.getNpcName("npc_technician","first")>> looks on with a dopey grin.<br>
<br>
"@@.npc_technician;So... that was a little gross but also... fuck, I can't believe my girlfriend and I just sucked off a horse! I'm so glad you told me about this interest of yours. My whole life I've been a city girl but, well... seeing you go at it with a dog, and now a horse? Well... I'm definitely looking forward to spending more time with animal friends!@@"<br>
<br>
[<<moveTo "event_technician_horse_7" "Continue." 600>>]
</div>/*#
#desc: wash up after sucking off horse w/technician
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You laugh as you wipe your face, the two of you bashfully avoiding meeting the leering grin of the stable-girl as you return to the street.<br>
<br>
A quick trip to <<=setup.getNpcName("npc_technician","first")>> place to clean up and she kisses you goodbye, her tongue lingering in your mouth as if searching out some hidden store of equine cum before she bids you good-night with a smile, licking her lips as you both take a moment to remember the sight of the other's mouth spread wide around the thick, hot horse-cock.<br>
<br>
[<<moveTo "room_student_quarter" "Exit her building to the Student Quarter." 120>>]
</div>/*#
#desc: technician proposes dog park event
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.kink_indulge.dog>>
<<case 2>>
You grin and say that <<=setup.getNpcName("npc_technician","first")>> is looking pretty hot and you wonder if she's in heat?<br>
<br>
She grins back even wider. "@@.npc_technician;Fuck yes I am! And the only thing hotter than getting knotted like a slutty bitch would be doing it with my favourite person! I'm in if you're in!@@"<br>
<br>
[<<moveTo "event_technician_private_game_dog_park_2" "Hell yeah!" 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_private_game_dog_park_2" "Maybe some other time." 600 "<<set $scene.accept=false>>">>]
<<case 1 0>>
You ask <<=setup.getNpcName("npc_technician","first")>> if there's something she wants to do, pointing out that she's looking a little distracted.<br>
<br>
She bites her lip nervously, clearly hesitant and bracing for embarrassment, but you smile at her in encouragement and wait for her to speak.
<<if $fetish.pet_play>>
"@@.npc_technician;So, yeah... I keep thinking about when we went to the dog-park and you, like... got fucked? And... holy shit, the memory gets hotter every time I think about it only... I'm starting to get more and more jealous... I mean, I'm no stranger to sex, I've fucked and been fucked by all sorts, but they've all been human... when I think of the look on your face when his big, thick knot was all the way inside of you<<if $fetish.cum>>, of the way you moaned when he filled you with cum<</if>>...@@"
<<else>>
"@@.npc_technician;So, like... I was thinking about what you told me... about how you liked animals? And... holy shit, this is crazy but... I mentioned it to <<=setup.getNpcName("npc_barista","nickname")>> and she said there's a park near here with some dogs that are really... friendly...@@"<br>
<br>
She shifts awkwardly. "@@.npc_technician;Shit, I can't believe I'm saying this. I mean, I'm no stranger to sex, I've fucked and been fucked by all sorts, but they've all been human... the idea of getting fucked by a dog? It's scary, and intriguing and... so fucking hot and I can't stop thinking about it!@@"
<</if>>
<br><br>
She falls silent, but you rub her knee in encouragement and just wait as she eventually continues. "@@.npc_technician;So... yeah, I guess you're already experienced with this sort of thing and... I was wondering if you'd be willing to show me the ropes? Or knots, as the case may be, for my first time?@@"<br>
<br>
[<<moveTo "event_technician_private_game_dog_park_2" "You'd love to!" 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_private_game_dog_park_2" "Maybe some other time." 600 "<<set $scene.accept=false>>">>]
<<default>>
ERROR: unexpected npc_technician.relationship.kink_indulge.dog <<=$npc_technician.relationship.kink_indulge.dog>>
<</switch>>
</div>/*#
#desc: technician dog event - head to park
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location = "Park.">>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You agree to help <<=setup.getNpcName("npc_technician","first")>> realise her fantasy of getting literally fucked like a bitch in heat and she grins wide.<br>
<br>
"@@.npc_technician;I ever mention you're like... the BEST?@@" Flush with energy <<=setup.getNpcName("npc_technician","first")>> quickly zooms around the apartment, grabbing lube and some dog treats before heading for the door. "@@.npc_technician;So... I may have been planning this for a while, but, like... there's no way I could do it without you there with me!@@"<br>
<br>
She may say she needs you, but no sooner have you taken her hand than she's leading the way; out the apartment, down the elevator and just short of running up the street on the way to the nearby park.<br>
<br>
In a small clearing you find your target, a large mutt slowly walking towards you as <<=setup.getNpcName("npc_technician","first")>> hands you the bag of treats. "@@.npc_technician;Alright... you're the expert... I'm ready to get fucked!@@"<br>
<br>
[<<moveTo "event_technician_private_game_dog_park_3" "Help her get naked and down on all fours." 600 "<<set $scene.fuck=true>>">>]<br>
[<<moveTo "event_technician_private_game_dog_park_3" "Change your mind and go back to her flat." 600 "<<set $scene.fuck=false>>">>]
<<else>>
<<if $npc_technician.relationship.kink_indulge.dog >= 2>>
You reply that you aren't quite up for getting fucked by a dog tonight.<br>
<br>
There's a hint of disappointment in <<=ps(setup.getNpcName('npc_technician', 'first'))>> voice but she nods. "@@.npc_technician;Sure, I mean... it's been a long week, I get it. So, what do you feel like doing instead?@@"
<<else>>
You reply that you aren't quite up for helping her have her first time with a dog tonight.<br>
<br>
There's a hint of disappointment in <<=ps(setup.getNpcName('npc_technician', 'first'))>> voice but she nods. "@@.npc_technician;Yeah, I guess this is springing things on you a bit sudden... I can wait, though, and I do definitely want my first time to be with you...@@"
<</if>>
<br><br>
[<<moveTo 'event_technician_private_game_root' "Something else." 600>>]
<</if>>
</div>/*#
#desc: technician dog event - technician fucks
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstTime = $npc_technician.relationship.kink_indulge.dog < 2>>
<</if>>
<<if $scene.accept>>
<<set $player.location = "Park.">>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.fuck>>
Down to <<if $npc_technician.relationship.her_collared && $npc_technician.relationship.her_caged>>just her collar and cage<<elseif $npc_technician.relationship.her_collared>>just her collar<<elseif $npc_technician.relationship.her_caged>>nothing but her chastity cage<<else>>her bare skin<</if>>, <<=setup.getNpcName("npc_technician","first")>> shivers slightly, goose-bumps raising on her skin in a mix of excitement and the cool night air.<br>
<br>
You help her down onto her knees as you beckon the dog closer, the sight of the naked woman before him sparking some sort of conditioning as he is hard and ready, even as he takes his time, licking and sniffing her rear as she gasps.<br>
<br>
"@@.npc_technician;Oh Goddess, his tongue is so big... do you think he likes me?@@" She looks over her shoulder "@@.npc_technician;Goddess... his knot looks so thick... I want it in me... I want it in me now.@@"<br>
<br>
You smile in amusement at her giddy excitement, shifting around to help move the dog along, pulling him forward and giving his cock a quick stroke of lube before guiding him towards <<=ps(setup.getNpcName("npc_technician","first"))>> quivering, eager hole.<br>
<br>
Your eyes lock with <<=setup.getNpcName("npc_technician","first")>> as she holds her breath and the dog presses into her. "@@.npc_technician;Oh fuck...@@" She moans, her body trembling as the animal mounts her.<br>
<br>
You lean in close and whisper in her ear as she pants. The beast's head is almost in your face. Its breath is strong, panting loud as it unleashes its biological urges on your eager <<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>.
<<case "" 'neutral'>>
girlfriend.
<<case "sub">>
slave.
<</switch>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> groans with lust, her entire body shuddering as the knot swells in her ass. "@@.npc_technician;So... wonderful... better than I imagined...@@"<br>
<br>
You smile and whisper congratulations only for her gaze to shift over your shoulder and her eyes to get wide.<br>
<br>
<<if $scene.firstTime>>
You glance back and discover that the beast mounting your <<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>
<<case "" 'neutral'>>
girlfriend
<<case "sub">>
slave
<</switch>> seems to have a friend. A friend who is coming straight for you...
<<else>>
You glance back, it would seem that the three of you have, once again, attracted the attention of another dog...
<</if>>
<br><br>
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
[<<moveTo "event_technician_private_game_dog_park_4" 'Offer your ass to this friendly fellow while you make out with your <<=setup.getNpcName("npc_technician","title")>>.' 600 "<<set $scene.fuck=true>>">>]<br>
<<case "" "neutral">>
[<<moveTo "event_technician_private_game_dog_park_4" 'Offer your ass to this friendly fellow while you make out with your girlfriend.' 600 "<<set $scene.fuck=true>>">>]<br>
<<case "sub">>
[<<moveTo "event_technician_private_game_dog_park_4" 'Offer your ass to this friendly fellow while you lock lips with your slave.' 600 "<<set $scene.fuck=true>>">>]<br>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
[<<moveTo "event_technician_private_game_dog_park_4" 'Help <<=setup.getNpcName("npc_technician","first")>> back to her feet and flee!' 600 "<<set $scene.fuck=false>>">>]
<<else>>
You pull <<=setup.getNpcName("npc_technician","first")>> back to her feet, deflecting her obvious disappointment by explaining that this isn't a good night for this, that it's too cold and you feel like it's going to rain soon.<br>
<br>
"@@.npc_technician;Damn, well... if you think so, I'll follow your advice. Gah, anticipation makes this so much worse!@@"<br>
<br>
You wrap an arm around her shoulders and lead her away from the dog before helping her back into her clothes and taking her home.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Back to her flat." 600>>]
<</if>>
</div>/*#
#desc: technician dog event - foursome
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fuck>>
<<applyExperience 'anal' 13 'very' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'unbelievable' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location = "Park.">>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.fuck>>
You get down on all fours and expose your rear, wiggling your butt in invitation as your lips meet <<=ps(setup.getNpcName('npc_technician', 'first'))>> as she rocks and moans.<br>
<br>
"@@.npc_technician;Fuck... you take me on the best dates...@@" She gasps as the presence of a "rival" seems to hasten the humping of the dog already in her ass.<br>
<br>
You moan your agreement as you get a knot of your own, pulling your <<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>
<<case "" 'neutral'>>
girlfriend
<<case "sub">>
slave
<</switch>>
in for a moaning, gasping, ecstatic embrace, bound together in depraved passion as you are knotted, humped, and bred.<br>
<br>
[<<moveTo 'event_technician_private_game_dog_park_5' "Continue." 1800>>]
<<else>>
You hurriedly pull <<=setup.getNpcName('npc_technician', 'first')>> to her feet. She gasps in frustration and slight pain as the knot pops out of her ass and the dog whines in annoyance.<br>
<br>
"@@.pc;Come on!@@" You whisper as you drag her away, keeping your eyes on the two dogs, not wanting to turn lest they get excited and give chase.<br>
<br>
The two of you manage to retreat from the clearing and to a small bathroom in the park. You stand watch as <<=setup.getNpcName('npc_technician', 'first')>> gets dressed.<br>
<br>
"@@.npc_technician;Sorry I, uh, guess I got a bit caught up in the moment... bummer about the interruption but maybe some other time?@@" You nod, carefully checking that the coast is clear before the two of you hurry back to her flat.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Get dressed and wait for her to come back." 600>>]
<</if>>
</div>/*#
#desc: technician dog event - finish
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 100>>
<<if $scene.firstTime>>
<<set $npc_technician.relationship.kink_indulge.dog = 2>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_horse'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Park.">>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
The two dogs have their way with you and <<=setup.getNpcName("npc_technician","first")>> hard and long, leaving the both of you sprawled out in the dirt, tired, but also very satisfied.<br>
<br>
You're the first to start to recover, crawling over to pull <<=setup.getNpcName("npc_technician","first")>> into your lap and stroke her hair as she smiles up at you. "@@.npc_technician;Thank you that... that was just perfect... and there's nobody better I could have done it with.@@"<br>
<br>
You blush, and then help her sort out her clothes and rise, chuckling as you notice that all the treats she brought have been pilfered — though the two dogs more than earned it, you and <<=setup.getNpcName("npc_technician","first")>> both struggling to walk straight as you head back to her flat.<br>
<br>
Staggering through the doorway she thanks you for the time but notes that she's "dog tired." <br>
<br>
You groan at the terrible pun and then kiss her good-night and head home.<br>
<br>
[<<moveTo 'room_student_quarter' "Depart." 600>>]
</div>/*#
#desc: return to stables after enduring ride-fuck
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'unbelievable' $INCOGNITO>>
<<applyExperience 'bestiality' 10 'unbelievable' $INCOGNITO>>
<<applyExperience 'humiliation' 13 'very' $INCOGNITO>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to "Impaled on Horse Cock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/underhorse.png">>
<div id="invframe" class="scrolltext">
You're bumping along the road, enjoying the massive horse-cock in your ass, the journey drawn out by some stop and start traffic that give you some organ-rearranging thrusts. You are panting slightly by the time you feel the carriage roll to a complete halt... only nobody comes down to release you, in fact, it sounds like someone gets on board... and then the carriage lurches forward, your body swaying as the horse-cock bottoms out in your ass you your eyes roll back in pleasure.<br>
<br>
<<printThought "Oh fuck... did they forget I was down here?">><br>
<br>
With each clip-clop of hooves around you, that assessment seems more likely, but bound, trussed, and impaled on cock, you cannot do anything save survive and endure...<br>
<br>
[<<moveTo 'event_carriage_technician_2' "How long am I stuck down here?" 4000>>]
</div>/*#
#desc: return to stables after enduring ride-fuck
#status: RELEASED 0.9.0.0
#ignore_spell: dieu
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 500>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png">>
<div id="invframe" class="scrolltext">
The combination of strenuous position, occasional analgasms, and constant fucking has you all but delirious when the horse finally returns to its stables and someone discovers your presence.<br>
<br>
"@@.npc_buggy_driver;Mon dieu!@@" The stable-<<master>> announces when <<he>> discovers you still hanging beneath the horse, drenched in sweat, drooling all but uncontrollably<<if $fetish.cum>> and leaking horse-cum from your tired ass<</if>>.<br>
<br>
The <<man>> hurries to unstrap you, but you're so exhausted you can't even manage to stand as the stable-<<master>> helps you over to a seat and then squints in recognition. "@@.npc_buggy_driver;Wait... I know you! You were here with a friend helping calm down the horses... I still have her number, you're in no condition to leave on your own, let me see if she can come pick you up.@@"<br>
<br>
Gasping and drooling you're only half listening as you slump against the wall and watch the <<man>> hurry off. Around you you notice the various stallions already in their stalls sniffing and glancing in your direction...<br>
<br>
[<<moveTo 'event_carriage_technician_3' "Wait..." 600>>]
</div>/*#
#desc: npc_technician arrives after ride-fuck
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -50>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
By the time <<=setup.getNpcName("npc_technician","first")>> arrives there's no mistaking the excitement in the stables, some of the horses bumping up against their stalls, the heavy scent of your sweat and sex seeming to have them quite riled up.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> rushes directly towards you, embracing you and wiping you off as she gushes "@@.npc_technician;Oh, my <<switch $npc_technician.relationship.her_role>><<case 'dom'>>poor Princess<<case 'neutral' ''>>poor dear<<case "sub">><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</switch>>! You look like hell! Though... that you endured so much is... kinda, no, VERY hot...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> helps you to your feet as the stable-<<master>> re-appears in front of you. "@@.npc_buggy_driver;So, I hate to impose but... well, your friend's presence seems to have half my herd in quite the frenzy! Perhaps it is merely<<if $fetish.sissy>>the scent of a sissy or maybe<</if>> jealousy that one of their fellows was able to enjoy that tight, yet cavernous ass for so long but... well, whatever the reason, they are going to be quite the trouble to calm down for the night... unless the two of you might be up for reprising some of your prior efforts? I could make it worth your time if you were willing to get harnessed up for breeding and calm down the herd...@@"<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> eyes light up as she looks at you. "@@.npc_technician;Well, it's up to you, my sexy little horse-fucker. I could go for a nice pounding to forget work and worries for a while... but you've already been ridden hard, so if you just want to head home and collapse, well... nobody would hold it against you...@@"<br>
<br>
[<<moveTo 'event_carriage_technician_4' "You can't say no to more horse..." 600 "<<set $scene.abort=false>>">>]<br>
[<<moveTo 'event_carriage_technician_4' "You've had enough for one day." 600 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: work after ride-fuck
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.abort>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'pony_girl'>>
<<wearItemSet 'pony_girl'>>
<<applyExperience 'bondage' 12 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.abort>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_ponygirl")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
As enticing as the stable-<<master>>'s offer might have been in other situations... you're exhausted and decline.<br>
<br>
You lean against <<=setup.getNpcName("npc_technician","first")>> as she helps you into an auto-cab, taking you the short distance home and then up to your bedroom before kissing you good-night.<br>
<br>
[<<moveTo "room_bedroom" "Maybe it's time to rest..." 300>>]
<<else>>
As tired as you are, you find something of a second win as you grin and nod.<br>
<br>
To help "put the stallions in the mood" (as if their lusty breaths and the sight of their raging erections does not confirm that they are already VERY much so) the stable-<<master>> hands you each a set of pony attire and
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
your <<=setup.getNpcName("npc_technician","title")>> helps you strip and buckles you tight before you return the favour.
<<case '' 'neutral'>>
you and <<=setup.getNpcName("npc_technician","title")>> help one another strip and get equipped.
<<case "sub">>
you help strip and equip your lovely slave before she returns the favour.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
Bit gags in place, the two of you are guided into position, each bent over, your thighs bound to posts on either side with your hands pulled back, leaving you suspended, spread, and helpless as the stable-<<master>> leads the first pair of stallions over...<br>
<br>
[<<moveTo 'event_carriage_technician_5' "Breeding time..." 3600>>]
<</if>>
</div>/*#
#desc: post ride-fuck work cleanup
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 10 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 18 'unbelievable' $SEEN_STRANGER>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_ponygirl")>>
<div id="invframe" class="scrolltext">
You are soon quite grateful for the sturdy support as you more than get your wish, railed hard and deep by stallion after stallion, your entire body feeling like little more than a milking device for horse-cock as the large, powerful beasts take their relief in your ass<<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>> and cunt<</if>>.<br>
<br>
Though gagged and blinkered, you have just enough freedom of motion to look over at your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>.
<<case '' 'neutral'>>
girlfriend.
<<case "sub">>
sub,
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
the look of overwhelmed ecstasy in her eyes matching your own as you get enthusiastically fucked by at least a dozen horse-cocks, your bodies pushed to the limit as you give each member of herd satisfaction for their long, hard days worth and, balls drained, they return to their stalls for the night.<<if $fetish.cum>> Thick equine cum drips down your leg and pools between your feet.<</if>><br>
<br>
[<<moveTo 'event_carriage_technician_6' "Whew..." 300>>]
</div>/*#
#desc: post ride-fuck work cleanup
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'pony_girl'>>
<<deleteItemSet 'pony_girl'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
The stable-<<master>> releases
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
you first, and you muster the energy to crawl over and dutifully clean you <<=setup.getNpcName("npc_technician","title")>> before helping her out of her restraints, as well.
<<case '' 'neutral'>>
releases the two of you and you shed your restraints.
<<case "sub">>
<<=setup.getNpcName("npc_technician","first")>> first, and your sub dutifully rubs you down and helps you out of your restraints before you do the same.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
Passionate kisses ensue as <<if $fetish.cum>>you snowball horse cum back and forth for a final depraved capstone<<else>>the two of you grin at the memory of your ordeal<</if>>. A trip to the horse showers has you feeling a bit closer to "human" as you change back into street-clothes and the stable-<<master>> thanks you for your efforts. As <<he>>'s counting out credits you look to the side and notice what can only be a camera lens.<br>
<br>
<<printThought "Was <<he>> recording us this whole time?">><br>
<br>
[<<moveTo 'event_carriage_technician_7' "Just take your pay." 300 "<<set $scene.camera=false>>">>]<br>
[<<moveTo 'event_carriage_technician_7' "Confront the stable-<<master>> about the camera." 300 "<<set $scene.camera=true>>">>]
</div>/*#
#desc: post ride-fuck work pay
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.camera>>
<<addCredits 150>>
<</if>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.camera>>
You confront the stable-<<master>> about the camera and <<he>> sheepishly explains. "@@.npc_buggy_driver;Sorry, it's just... well, profit margins are tight and I'm always looking for some extra side hustle. I'll cut you in for an extra five hundred each if you let me keep the recordings...@@"<br>
<br>
"@@.npc_technician;A thousand!@@" <<=setup.getNpcName("npc_technician","first")>> blurts out before looking to you for permission. "@@.npc_technician;That is, if my partner is amenable?@@"<br>
<br>
[<<moveTo 'event_carriage_technician_8' "A thousand sounds great." 300 "<<set $scene.action='pay'>>">>]<br>
[<<moveTo 'event_carriage_technician_8' "<<if $fetish.cum>>Horse cum<<else>>Getting fucked on camera<</if>> is its own reward!" 300 "<<set $scene.action='slut'>>">>]<br>
[<<moveTo 'event_carriage_technician_8' "You want the recordings destroyed." 300 "<<set $scene.action='none'>>">>]
<<else>>
The stable-<<master>> gratefully pays you and <<=setup.getNpcName("npc_technician","first")>> a hundred and fifty credits each for your assistance. "@@.npc_buggy_driver;Thank you again for your generous time, the horses can get so pent up and stressed by the bustle of the city, relief like this is really what they need.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> dials up a normal auto-cab and pays for the trip home, dropping you off and helping you up to your bedroom before kissing you good-night.<br>
<br>
"@@.npc_technician;You always take me to the best places,@@" she says with a wink and blown kiss before she leaves.<br>
<br>
[<<moveTo "room_bedroom" "Maybe it's time to rest..." 300>>]
<</if>>
</div>/*#
#desc: post ride-fuck work pay
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'pay'>>
<<addCredits 1150>>
<<applyExperience 'whoring' 10 'unbelievable' $SEEN_STRANGER>>
<<set $npc_technician.relationship.kink_indulge.horse_paid = true>>
<<include "checkStablesTechnicianReady">>
<<case 'slut'>>
<<applyExperience 'bimbofication' 18 'unbelievable' $SEEN_STRANGER>>
<<set $npc_technician.relationship.kink_indulge.horse_paid = true>>
<<case 'none'>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<include "checkStablesTechnicianReady">>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'pay'>>
You nod in agreement and the stable-<<master>> nervously pays out the extra credits.<br>
<br>
"@@.npc_buggy_driver;Thanks for being understanding... and sorry for the deception, but it's a tough world out there, and I have to be creative to make sure my horses are taken care of.@@"
<<case 'slut'>>
You reply that, actually, <<if $fetish.cum>>horse cum<<else>>getting railed like this<</if>> is it's own reward, and the thought of people getting off on watching the recording only makes it better.<br>
<br>
Both the stable-<<master>> and <<=setup.getNpcName("npc_technician","first")>> look at you with a mix of amazement and awe... though <<=setup.getNpcName("npc_technician","first")>> still takes her half "@@.npc_technician;hey, so long as we're stuck in this capitalist dystopia, the cutie collective needs its funding.@@"<br>
<br>
"@@.npc_buggy_driver;Thanks for being understanding... and sorry for the deception, but it's a tough world out there, and I have to be creative to make sure my horses are taken care of.@@"
<<case 'none'>>
You refuse the stable-<<master>>'s offer and <<=setup.getNpcName("npc_technician","first")>> supervises the deletion of the videos before the <<man>> sighs and hands over your original pay.<br>
<br>
"@@.npc_buggy_driver;I am sorry for the deception, but it's a tough world out there, and I have to be creative to make sure my horses are taken care of.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> calls up a normal auto-cab to take the two of you home where she makes sure to escort you all the way back up to your flat before kissing you good-night<<if $fetish.cum>>, the taste of horse-cum still on her breath<</if>>.<br>
<br>
[<<moveTo "room_bedroom" "Maybe it's time to rest..." 300>>]
</div>/*#
#desc: stream: sex machine with beast game
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You reply that the game sounds fun and, after a brief install, you and <<=setup.getNpcName("npc_technician","first")>> are running around a forested island doing the basic "punch tree, make shelter" starting content as you explore the interface and start working your way up from the bottom of the tech tree.<br>
<br>
Your viewers give the occasional advice, and you play along, splitting your attention between learning the basics of the game, entertaining chat, and trying to build some fortifications for the oncoming night.<br>
<br>
With little warning darkness rolls in with the rapidity of a binary toggle that says "we haven't gotten around to rendering dusk." The shelter you and <<=setup.getNpcName("npc_technician","first")>> have been working on isn't quite to the state you'd like, but you know enough genre conventions for the two of you to retreat inside as you hear an ominous howl in the distance. You shift nervously, feeling the Dreammaker machine to which you are bound... and the dildos it has stuffed inside of you as you remember that the game is supposed to integrate with your high-tech fucking machine...<br>
<br>
[<<moveTo "event_technician_fantastic_beast_2" "What comes out at night?" 300>>]<br>
[<<moveTo "event_technician_fantastic_beast_abort" "This is kind of lame, quit." 300>>]
<<else>>
You thank <<=setup.getNpcName("npc_technician","first")>> for the suggestion, but reply that you're in the mood for a more normal stream.<br>
<br>
"@@.npc_technician;Sure, sure... well maybe some other time, just thought it might be fun.@@"<br>
<br>
[<<moveTo "event_streaming_extreme_2" "Do a normal stream." 600>>]
<</if>>
</div>/*#
#desc: stream: sex machine with beast game abort
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You decide that the game just isn't that fun, and bail out to do more normal streaming.<br>
<br>
"@@.npc_technician;Yeah, I guess it's still a little thin on features. Maybe some other time!@@"<br>
<br>
[<<moveTo "event_streaming_extreme_2" "Do a normal stream." 600>>]
</div>/*#
#desc: stream: sex machine werewolves
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You hear sounds in the woods outside your shelter, and howls moving closer, the minutes of foreboding all too brief before a pack of werewolves descend on your camp.<br>
<br>
True to expectation, your meagre wooden walls do little to slow the beasts, with the starting tier weapons little better in fighting off the beasts as you soon find yourself caught up in their claws. Matching the "action" on-screen you feel dildos swelling and thrusting into you from every direction as your in-game avatar is held tight and "shared" amongst the pack.<br>
<br>
As you reflexively gasp as a dildo thrusts into your throat you notice a status bar shift over the beast in front of you... it looks like the game is still going!<br>
<br>
<<if setup.hasThreshold('anal', 'extreme_anal', 'machine_anal') && setup.hasThreshold('oral', 'extreme_oral', 'machine_oral')>>
[<<moveTo "event_technician_fantastic_beast_3_success" "Show your skills!" 300 "<<set $scene.fuck=true>>">>]<br>
<<else>>
[<<moveTo "event_technician_fantastic_beast_3_fail" "Show your skills!" 300 "<<set $scene.fuck=true>>">>]<br>
<</if>>
[<<moveTo "event_technician_fantastic_beast_3_fail" "Just enjoy the moment." 300 "<<set $scene.fuck=false>>">>]
</div>/*#
#desc: stream: sex machine werewolves succeed
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bondage' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 17 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
When it comes to getting gang-fucked by a machine... you're more than an expert and you deploy all of your hard-won skills as you "entertain" the pack. Knotted hard, deep, and repeatedly you<<if $fetish.cum>> take load after digital load as you<</if>> ride out the night until your low-level avatar finally collapses from an empty stamina bar.<br>
<br>
As the night comes to a close you wake up... to find that your "efforts" has ingratiated you to the pack. Not only did they not destroy your nascent fort, you now have a loyal wolf sleeping near your bed, ready to transform and guard your base at night as you continue building and exploring.<br>
<br>
As you're considering what to do next... the game crashes.<br>
<br>
[<<moveTo "event_technician_fantastic_beast_4" "Call it a stream." 300>>]
</div>/*#
#desc: stream: sex machine werewolves fail
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bondage' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.fuck>>
You try to seize the moment and entertain the pack... but you just aren't up to the challenge of handling that many machine-powered cocks as, tightly restrained in your Dreammaker device, and with your audience watching on, you are fucked and pounded. For whatever lack of polish the rest of the game has at this point in early access, the fidelity of the fucking is top-notch, and your eyes roll back as drool runs down your chin and lube trickles down your leg as the scene on-screen is reproduced in real life with the highest of hole-destroying, knotted fidelity.<br>
<br>
<<printThought "Perhaps if I spent more time practicing with other games?">><br>
<br>
The
<<else>>
You proverbially lie back and "enjoy the game." For whatever lack of polish the rest of the game has at this point in early access, the fidelity of the fucking is top-notch, as you feel every stroke and knot as the
<</if>>
pack of werewolves gang-bangs you for the full duration of the in-game night, chat quite amused and entertained by an ordeal that leaves you, and <<=ps(setup.getNpcName("npc_technician","first"))>> avatars waking up in the morning in the middle of a destroyed shelter<<if $fetish.cum>> and laying in pool of cum<</if>>... all but set back to the very start of the game.
<br><br>
As you're considering what to do next you get an alert that the servers are about to go down for maintenance.<br>
<br>
[<<moveTo "event_technician_fantastic_beast_4" "Call it a stream." 300>>]
</div>/*#
#desc: stream: sex machine werewolves post
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fuck>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(15,25)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(5,10)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(10,20)/100)))>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(5,10)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(15,25)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(10,20)/100)))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You save your <<if !$scene.fuck>>lack of<</if>> progress and close out before the servers go down and your Dreammaker device releases you from its grasp.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> didn't have the equipment to get it as hard as you did, but you can hear the lingering arousal in her voice as she joins chat in congratulating you on the game, your <<if $scene.fuck>>subscribers<<else>>domscribers<</if>> seeming to have been impressed most of all by your performance.<br>
<br>
"@@.npc_technician;Definitely a game to keep an eye on, worth jumping in again in the future<<if $scene.fuck>>, see how built out we can get our little base.<<else>>. Maybe we can actually survive a night next time!<</if>>@@"<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: sex machine werewolves repeat
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(15,25)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(10,20)/100)))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You boot up Retreat To Legend: Survival Mythologised once again
<<if State.hasPlayed("event_technician_fantastic_beast_3_success")>>
and enjoy some more exploration as you build out your fort and spend some time getting to know more of the local wildlife, making some mild progress amidst running into quite a few glitches, Not Yet Implemented content areas and other signs of the game's obvious early access status.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<<else>>
and again work to build up your base, fortifying things as best you can until night falls and the werewolf pack returns, easily tearing through your wooden walls and ignoring your attacks as they make you the centre of their attention, the Dreammaker dutifully replicating the feeling of being tightly held... and knotted in every hole...<br>
<br>
<<if setup.hasThreshold('anal', 'extreme_anal', 'machine_anal') && setup.hasThreshold('oral', 'extreme_oral', 'machine_oral')>>
[<<moveTo "event_technician_fantastic_beast_3_success" "Show your skills!" 300 "<<set $scene.fuck=true>>">>]<br>
<<else>>
[<<moveTo "event_technician_fantastic_beast_3_fail" "Show your skills!" 300 "<<set $scene.fuck=true>>">>]<br>
<</if>>
[<<moveTo "event_technician_fantastic_beast_3_fail" "Just enjoy the moment." 300 "<<set $scene.fuck=false>>">>]
<</if>>
</div><<if $npc_technician.relationship.kink_indulge.horse_paid && ($player.flags.camgirl.level >= 5 || $player.flags.streaming.stage >= 5 || _TODOporn) && !State.hasPlayed("event_stables_technician_invite_1")>>
<<set _nextDate = setup.setNextDate($now, 7, 18, 0)>>
<<addEvent "technician_stables_invite" _nextDate>>
<</if>>/*#
#desc: invited to stables pony event
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from an unknown number, but recognise the voice of the <<man>> who runs the stables in town. "@@.npc_buggy_driver;<<=$player.first_name>>? Hi, your friend gave me your number and I wanted to make an offer. You see, your last video did so well... and combined with your online fame, well... there's people clamoring for a follow up. I asked <<=setup.getNpcName('npc_technician', 'other')>> about a repeat engagement and she said she'd be up for it if you are. I have something really special planned if you're really go go "more harder." Just let her know if you're interested in setting things up!@@"<br>
<br>
<<He>> hangs up, looks like your fame is spreading... and with it, new opportunities...<br>
<br>
<<printThought "Guess I should call <<=setup.getNpcName('npc_technician', 'first')>> if I'm interested...">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: schedule stables pony event
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_horse_2'>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_technician', 'first')>> that you're ready to take the stable owner up on <<his>> offer.<br>
<br>
"@@.npc_technician;Awesome! I'm so glad you mentioned how much you like horses, it's lead to such fun! And I bet even more this time, <<he>> mentioned something about running an audience poll... and you know what sort of things that can lead to! I'll give <<him>> a call right now and see about availability, <<he>> mentioned having trouble scheduling very far out so I'll probably just catch you after work like last time. See you then!@@"<br>
<br>
You agree that a bit of surprise like that sounds fun and she hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: technician catches you after work
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 7200) || $npc_technician.flags.evil == 1>>
<<removeRandomEvent 'elevator_home' 'technician_horse_2'>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_horse_2'>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You step off the elevator to find your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> was apparently waiting for you. She greets you with a smile and a kiss "@@.npc_technician;Hey, hey, so remember that stables thing I was coordinating? Well there's time for it today, if you're down?@@"<br>
<br>
[<<moveTo "event_stables_technician_2" "Let's go!" 600>>]<br>
[<<moveTo "event_technician_horse_2" "Actually... today isn't going to work." 60 "<<set $scene.accept=false>>">>]<br>
</div>/*#
#desc: stallion gangbang intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> head for the stables where the stable-<<master>> welcomes you... and then makes a nervous confession. "@@.npc_buggy_driver;So I have some good news... and some well, maybe bad news, maybe good news, that's up to you, I suppose. In anticipation of this shoot I ran an online poll to see which lucky Stallions would get to co-star in this production. So the good news is that there was a whole bunch of people pledging to vote... the other news, well... I had the bright idea of doing it as a threshold vote, so each horse that pulled in more than that number of votes, and thus credits, would be part of the fun. I was thinking we'd end up with something like a stallion for each of you, then a bonus round third where we played two girls, one horse-cock...@@" the <<man>>'s voice trails off nervously.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins and picks things up "@@.npc_technician;let me guess, more than three horses hit the threshold?@@"<br>
<br>
The man nods. "@@.npc_buggy_driver;Try all of them. If we're going to match fan pledges you two are going to have to drain the stables and get off a full dozen horses...@@"<<if $player.body_ref.vagina>> <<He>> looks at you, "@@.npc_buggy_driver;oh and, um... bonus if you're willing to offer up all three holes for breeding...@@"<</if>><br>
<br>
<<=setup.getNpcName("npc_technician","first")>> smiles even wider and glances at you, "@@.npc_technician;well I'm up to the challenge... what do you say, <<switch $npc_technician.relationship.her_role>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<case 'dom'>>Princess<<case 'neutral'>>dear<</switch>>?@@"<br>
<br>
[<<moveTo "event_stables_technician_3" "You're in!" 600 "<<set $scene.vag=false>>">>]<br>
<<if $player.body_ref.vagina>>
<<if setup.canSexOrRemoveChastity("vag", "npc_technician") || setup.isCage()>>
[<<moveTo "event_stables_technician_3" "You're in... ALL in!" 600 "<<set $scene.vag=true>>">>]<br>
<<else>>
[@@.link_locked;You lack the means to remove your chastity belt.@@]
<</if>>
<</if>>
[<<moveTo "event_stables_technician_abort" "You changed your mind." 180>>]<br>
</div>/*#
#desc: stallion gangbang abort
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You aren't sure what you were expecting, but faced with reality you decide that this is a bit more than you're ready for today. The stable <<master>> is obviously disappointed, but <<=setup.getNpcName("npc_technician","first")>> shows off her skills at negotiation to let <<him>> down easy and the two of you head off, with the <<man>> begging you to consider coming back some other time.<br>
<br>
"@@.npc_technician;Sure, sure,@@" <<=setup.getNpcName("npc_technician","first")>> replies before telling you to give her a call if you'd like to try again. She gives you a kiss good-bye and the two of you head your separate ways.<br>
<br>
[<<moveTo "room_citymap" "Head off." 120>>]
</div>/*#
#desc: stallion gangbang get in position
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = $scene.vag && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
With you and <<=setup.getNpcName("npc_technician","first")>> both enthusiastically stripped and ready to start it's just a matter of
<<if $scene.removeCage>>
her
<<if $npc_technician.relationship.keyholder>>
unlocking
<<else>>
helping unlock
<</if>>
your chastity belt and
<</if>>
the two of you getting into position on the twin padded "breeding platforms" that will put you centre stage for the cameras, secured, restrained, and presented for safe equine service.<br>
<br>
Your heart is beating faster in anticipation when you glance over at a screen and realise that this isn't just a recording... it's a live-stream! The viewer count is already ticking up as you wiggle in your bonds, the stable-<<master>> fetching a pair of large syringes<<if $scene.removePlug>>, removing your plug<</if>> before pumping your and <<=ps(setup.getNpcName("npc_technician","first"))>> asses full of lube.<br>
<br>
You glance over at <<=setup.getNpcName("npc_technician","first")>>, and she flashes back an excited grin... but a moment later both of your attention is occupied with the first to stallions being led into the room: a perfectly muscled Arabian beauty, and a neatly trimmed Chestnut being lead into the room high-stepping a circle for the cameras before moving behind you.<br>
<br>
[<<moveTo "event_stables_technician_4" "It's time!" 1800>>]
</div>/*#
#desc: stallion gangbang start
#status: RELEASED 0.9.1.0
#ignore_spell: livestream
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 10 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 19 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 19 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
Heavy hooves step up onto platforms on either side of your bound body... and then a hot horsecock is pressing into your from behind, this first prized stallion <<if $scene.vag>>spreads your cunt wide,<<else>>sliding smoothly into your lubed ass,<</if>> stroking strong and deep as your moans and excited neighs form a choir with <<=setup.getNpcName("npc_technician","first")>>... and another pair of horses are lead into the room.<br>
<br>
Rather than line up behind, the second pair of horses move in front of you, rearing up and directed carefully as you find yourself facing down a large, dripping horse-cock, sandwiched between and beneath over a thousand kilograms of stallion strength.<br>
<br>
Barely able to catch sight of the cameras you sink into the moment... as the dual horse-cocks sink deeper into you to all but fill you end to end. Powerful thrusts rock through your body as you are <<if $scene.vag>>bred<<else>>fucked<</if>> and fed, the first horse to <<if $fetish.cum>>cum<<else>>climax<</if>> substituted within moments as you and <<=setup.getNpcName("npc_technician","first")>> are ridden in the reverse in a perverse variant of Mongol steppe riders: swapping steeds so that there's always a fresh, hard and hot horse-cock pounding both of you from each end<<if $scene.vag>>, your partners spicing it up by alternating between your ass and your cunt<</if>><<if $fetish.cum>>, thick, steamy horse-cum leaking out and down your chin and thighs<</if>>.<br>
<br>
[<<moveTo "event_stables_technician_5" "So... much... horse-cock..." 1800>>]
</div>/*#
#desc: stallion gangbang finish
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 500>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You remember that the stable-<<master>> quoted a dozen stallions, but you're certain you've taken<<if $fetish.cum>> that many loads<<else>>at least that many<</if>> in your ass alone as the smell of horse-sweat and pheromones seems to put the herd in a frenzy, breeding you and <<=setup.getNpcName("npc_technician","first")>> over and over until you're a pair of drooling, panting, sweaty, leaking messes, held up by your restraints, your bodies feeling like they've been re-arranged from the inside out to be little more than perfect cock-sleeves so that by the time the final horse is lead away you feel far more than merely physically empty<<if $fetish.cum>>, even as your belly swells with what feels like a litre or more of horse-cum<</if>>.<br>
<br>
Jaw sore, you look over at <<=setup.getNpcName("npc_technician","first")>> as she coughs, and grins back at you as the two of you wait for the stable-<<master>> to unbuckle you from your restraints...<br>
<br>
[<<moveTo "event_stables_technician_6" "Continue." 600>>]
</div>/*#
#desc: stallion gangbang finish
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 500>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Secret Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Exhausted by your ordeal, you and <<=setup.getNpcName("npc_technician","first")>> stumble back to your feet, leaning against one another for support and waving good-bye to your fans before the stable-<<master>> helps you into a shower to wash off.<br>
<br>
Tender scrubbing is a welcome contrast after the animalistic pounding you just endured, and the two of you kiss and caress as you catch your breath and, eventually get dressed.<br>
<br>
The stable-<<master>> is all grins as <<he>> hands you each a stack of credits, thanking you again for coming in and rising to the occasion to make good on the audience requests.<br>
<br>
Still exhausted, and a bit unsteady, you and <<=setup.getNpcName("npc_technician","first")>> pocket your proceeds and then take a ride home... a normal ride-share, that is.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
</div>/*#
#desc: technician bimbofication offer
#status: FINISHED 0.8.7.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> pulls out an old-style pocket-watch and grins tauntingly.<br>
<br>
"@@.npc_technician;So... I was thinking about what you told me before, about how<<if $fetish.sissy>> being a sissy slut isn't enough, that<</if>> you want to be a horny bimbo... so... whaddaya say? You ready to abandon silly things like thinking and self control and embrace becoming a perfect plastic fuck-doll?@@"<br>
<br>
<<if setup.getTotalValue("dominance") > 10>>
[<<moveTo "event_technician_bimbo_dom_1" "Actually, when you meant bimbofication, you were thinking of her..." 180>>]<br>
<<else>>
[@@.link_locked;You lack the dominance to turn things back around.@@]<br>
<</if>>
[<<moveTo "event_technician_bimbo_sub_1" "Yes... (you're already falling under her spell)" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_bimbo_sub_1" "N-no... (play a little hard to get)" 180 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_technician_bimbo_1_abort" "You aren't feeling like this tonight." 60>>]
</div>/*#
#desc: technician bimbofication offer
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> that you aren't really feeling like playing around with bimbofication any more tonight.<br>
<br>
The pocket watch almost immediately disappears as her normal enthusiastic smile returns.<br>
<br>
"@@.npc_technician;Sure! Some other time, maybe, come on over to the couch and tell me what you DO want to do...@@"<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: technician bimbofication sub start
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'bimbofication' 10 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
"@@.pc;Yes,<<if $npc_technician.relationship.her_role == "dom">> <<=setup.getNpcName("npc_technician","first")>><</if>>@@" you whisper as you stare at
<<else>>
You pretend to resist, struggling slightly and then going slightly limp as your gaze fixates on
<</if>>
the watch, the slowly, seductively penduluming watch...<br>
<br>
"@@.npc_technician;Good <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>job<</switch>>,@@" she whispers as she swings the watch in front of your vision. "@@.npc_technician;Just keep staring. Remember, this isn't mind control or magic, it's just a little game we're playing. No different than any of our other role playing. If you wanted to, you could snap yourself out of it at any time. But... you won't want to stop, right?@@"<br>
<br>
[<<moveTo "event_technician_bimbo_sub_2" "No, never stop..." 180>>]<br>
[<<moveTo "event_technician_bimbo_1_abort" "Actually, you would like to stop." 60>>]
</div>/*#
#desc: technician bimbofication sub sit still
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bathroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You nod obediently as <<=setup.getNpcName("npc_technician","first")>> leads you forward. You follow her trance-like as she has you carry a stool into the bathroom and take a seat, staring at your reflection, and the image and reflection of the watch still swinging in front of you as <<=setup.getNpcName("npc_technician","first")>> whispers in your ear.<br>
<br>
"@@.npc_technician;Good <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>job<</switch>>, just relax, let your thoughts go... you don't need them. Thinking is a distraction, and you don't like distractions, all you want is to be my perfect pretty Princess, right?@@"<br>
<br>
You nod slowly as she starts to arrange a makeup pallet. "@@.npc_technician;Beautiful. Now I'm going to snap my fingers and you're going to freeze as my pristine, obedient Princess Sex-doll. Dolls don't move without permission, and you're a VERY good doll, who is going to sit still while I decorate her to be my perfect, pretty pet, right?@@"<br>
<br>
You start to nod, only for her to SNAP her fingers, freezing you in place.<br>
<br>
"@@.npc_technician;Absolute perfection... or, well... you will be soon...@@"<br>
<br>
You sit still, statue-like in your obedience as <<=setup.getNpcName("npc_technician","first")>> finally puts down the watch and sets to work...<br>
<br>
[<<moveTo "event_technician_bimbo_sub_3" "You're her doll. Dolls don't move without permission." 300>>]<br>
[<<moveTo "event_technician_bimbo_1_abort" "You aren't feeling like this tonight." 60>>]
</div>/*#
#desc: technician bimbofication sub makeup
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.makeup = $player.makeup.template>>
<<set $player.makeup.template = "ultimatebimbo">>
<<set $player.makeup.messed = 0>>
<<applyExperience 'makeup' 12 'normal' $ALONE>>
<<applyExperience 'bimbofication' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $player.makeup.permanent != "">>
<<=setup.getNpcName("npc_technician","first")>> glances at your permanent makeup and snorts. "@@.npc_technician;Painted on? Such a cheat, a proper bimbo revels in applying it herself every time. They appreciate the process... and the knowledge of how its delicate beauty can be ruined in pursuit of their sex-obsessed fun...<<if $player.makeup.template == "ultimatebimbo">> so what if you already have the proper style? That just gives me an easy guide to paint right over...<</if>>@@"
<<elseif $scene.makeup == "ultimatebimbo">>
"@@.npc_technician;No, obviously your makeup is already bimbo-riffic... but this is about PRACTICE, so we're going to scrape it off and slut you up again!@@" <<=setup.getNpcName("npc_technician","first")>> states with a grin as she cleans off your heavy makeup. "@@.npc_technician;Now I have a proper canvas to work with.@@"
<<else>>
"@@.npc_technician;Alright,@@" <<=setup.getNpcName("npc_technician","first")>> whispers after she's finished cleaning off your face. "@@.npc_technician;Now I have a proper canvas to work with.@@"
<</if>>
<br><br>
She hasn't snapped her fingers, so you merely blink in response and she smiles at your obedience.<br>
<br>
"@@.npc_technician;You're being a very good Princess Sex Doll. Staying nice and still — and you're going to stay still until I snap my fingers again — but I want you to watch what I'm doing. I'm going to paint you up to be my perfect bimbo slut and I want you to learn...@@" She reaches for a brush and you stare forward, your only movement to blink as you watch in the mirror as she paints you up, layer after layer of bimbofied perfection, from thick foundation to delicately painted mascara and perfect lips, every piece combining to turn you into the perfect slut.<br>
<br>
Once she's finished she rises to her feet to loom over you. "@@.npc_technician;Look at that sexy bimbo... all made up and ready to suck... Speaking of which...@@"<br>
<br>
Her skirt pops up, and then peels back to reveal
<<if $npc_technician.relationship.her_caged>>
a large, hard strap-on perched above her cage.
<<else>>
her hard, dripping <<getWordPenis false>>.
<</if>>
Bouncing in front of your face.
<br><br>
SNAP, go her fingers and you startle for a moment, lips parting as you reflexively salivate in anticipation. "@@.npc_technician;Open wide! What's the purpose of being all painted up like a slut if you're not going to ruin those pretty looks?@@"<br>
<br>
[<<moveTo "event_technician_bimbo_sub_4" "Gulp." 180>>]<br>
[<<moveTo "event_technician_bimbo_1_abort" "Actually... you think you're done for tonight." 60>>]
</div>/*#
#desc: technician bimbofication sub repeat
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 100>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
With one hand on your head, and the other back to swinging the pocket watch, <<=setup.getNpcName("npc_technician","first")>> pounding your throat hard, fast and deep. As you gasp and gulp a fleck of eye-shadow falls into your eye, sparking a chain reaction that soon has you a crying, drooling mess, makeup running down your face as you leave lipstick rings on the base of <<=setup.getNpcName("npc_technician","first")>> <<getWordPenis false>>.<br>
<br>
"@@.npc_technician;Good slut!@@" <<=setup.getNpcName("npc_technician","first")>> announces when she finally pulls you away, your lips wide as you pant and drool. "@@.npc_technician;Hmm... but look at what a mess you made! That's not my pretty Princess Sex Doll! No! That's a ruined bimbo fuck-slut! We need to fix that!@@"<br>
<br>
She SNAPs her fingers again.<br>
<br>
[<<moveTo "event_technician_bimbo_sub_5" "Freeze." 600>>]<br>
[<<moveTo "event_technician_bimbo_1_abort" "Actually... you think you're done for tonight." 60>>]
</div>/*#
#desc: technician bimbofication sub repeat
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.kink_indulge.bimbofication.you = true>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<<applyExperience 'oral' $npc_technician.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You freeze in position and <<=setup.getNpcName("npc_technician","first")>> repeats the cycle three more times, gently closing your mouth and turning you back towards the mirror and then reaching for the makeup remover.<br>
<br>
Statue, SNAP, suck, repeat. Statue, SNAP, suck, repeat. Statue, SNAP, suck, repeat, she shows startling stamina before finally, with tears streaking you cheeks, and her <<if $npc_technician.relationship.her_caged>>artificial <</if>><<getWordPenis false>> all the way down your throat, she
<<if $npc_technician.relationship.her_caged>>
<<if $fetish.cum>>
cums, leaking out of her cage and down her artificial shaft as she buries herself down your throat.
<<else>>
cums, straining within her cage as she steadies herself by burying her artificial shaft down your throat.
<</if>>
"@@.npc_technician;Whew! Caged climax! I'd call that impressive... but you are just irresistibly fucking hot!@@" She grins
<<elseif $fetish.cum>>
cums, her salty girl goo spurting out your nostrils and seeping down your chin as she pumps you full,
<<else>>
moans in climax, shuddering in your throat for several moments
<</if>>
before finally stepping back with a satisfied sigh and she commands you to "@@.npc_technician;wake up.@@"<br>
<br>
You blink rapidly as you pretend to come to and <<=setup.getNpcName("npc_technician","first")>> pulls you in for a passionate kiss.<br>
<br>
"@@.npc_technician;That was hella fun,@@" she purrs in between kisses. "@@.npc_technician;You, and that wonderful throat of yours, can be my Princess Sex Doll any time...@@"<br>
<br>
You grin back and blush. The two of you working together to clean off your face<<if $scene.makeup>> and restore your original style<</if>>.
<<if !$player.makeup.unlocked.ultimatebimbo>>
Despite the repetitions you don't quite think you could replicate the bimbofied style... though you wonder if <<=setup.getNpcName("npc_barista","nickname")>> might be a better teacher for such...
<</if>>
<br><br>
[<<moveTo "event_technician_private_game_root" "Time for something else..." 60 "<<set $player.makeup.template = $scene.makeup>><<set $player.makeup.messed = 0>>">>]
</div>/*#
#desc: technician bimbofication dom intro
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You grin and reply that, actually, you were thinking of bimbofying her...<br>
<br>
She stops fiddling with the watch and she bites her lip as her thighs grind together. "@@.npc_technician;Me? Some sort of brainless bimbo? Not having to worry about anything or think, just fuck and suck and—@@" she suddenly shakes her head. "@@.npc_technician;I mean, what are you talking about? I totally don't fantasise about anything like that. Besides, it totally wouldn't work on me, anyway. I'm a smart IT professional, not some... ditzy secretary! Here,@@" she says, scoffing as she hands you the watch. "@@.npc_technician;Go ahead and try, it totally isn't going to do anything, and then who's going to be the silly looking one? Not me, that's for sure.@@"<br>
<br>
[<<moveTo "event_technician_bimbo_dom_2" "Take the watch." 180>>]<br>
[<<moveTo "event_technician_bimbo_1_abort" "You aren't feeling like this tonight." 60>>]
</div>/*#
#desc: technician bimbofication dom start
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You pluck the watch and chain from <<=ps(setup.getNpcName("npc_technician","first"))>> dismissive grasp and she crosses her arms over her chest, adopting a confident posture as you start swinging the watch back and forth and whispering that she's feeling "@@.pc;very horny.@@"<br>
<br>
"@@.npc_technician;Psh, like that could ever work on me? I'm, like... WAY too smart for something like that... besides, it's too warm to feel horny, anyway.@@"<br>
<br>
She starts shedding her clothes...<br>
<br>
[<<moveTo "event_technician_bimbo_dom_3" "Keep chanting..." 300>>]<br>
[<<moveTo "event_technician_bimbo_1_abort" "You aren't feeling like this tonight." 60>>]
</div>/*#
#desc: technician bimbofication naked and horny
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_technician","first"))>> clothing falls away and she starts groping herself, her dismissive words losing their power as her tone becomes more air-headed. "@@.npc_technician;You think you can turn me into a mindless horny bimbo? If that's true, why are you wearing all those clothes when it's, like, so hot? Checkmate! <<if $npc_technician.relationship.her_caged>>See, I'm even wearing a chastity cage, a desperate slut totally wouldn't submit themselves to something like that, right?<<else>>I'm not a cock-hungry slut, like, duh.<</if>>@@"<br>
<br>
Fully naked she leans back on the couch, still staring up at the swaying watch as she licks her lips. "@@.npc_technician;Well, come on loser! Do you think I'm going to beg you to fuck me? Pff, as if, I could just satisfy myself with a couple of dildos.@@" As if planned she reaches under the couch to come up with exactly that, a large, floppy dong in each hand, one trailing harness straps. "@@.npc_technician;Like, see? You can fuck me, or just watch, I guess that makes you the slutty perv, huh? Yeah! I'm just a woman in total control of herself, definitely not some insatiable bimbo cock-slut.@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_technician_bimbo_dom_4" "Well, she did offer... (have her suck you off)" 300 "<<set $scene.action='blow'>>">>]<br>
[<<moveTo "event_technician_bimbo_dom_4" "Well, she did offer... (fuck her)" 300 "<<set $scene.action='fuck'>>">>]<br>
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder>>
[<<moveTo "event_technician_bimbo_dom_4" "Well, she did offer... (unlock your chastity and have her suck you off)" 300 "<<set $scene.action='blow'>>">>]<br>
[<<moveTo "event_technician_bimbo_dom_4" "Well, she did offer... (unlock your chastity and fuck her)" 300 "<<set $scene.action='fuck'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis>> is locked in chastity.@@]<br>
<</if>>
<</if>>
<<else>>
[@@.link_locked;You do not have a bio-penis of your own.@@]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo "event_technician_bimbo_dom_4" "Well, she did offer... (have her eat you out)" 300 "<<set $scene.action='eat'>>">>]<br>
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder>>
[<<moveTo "event_technician_bimbo_dom_4" "Well, she did offer... (unlock your chastity and have her eat you out)" 300 "<<set $scene.action='eat'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked in chastity.@@]<br>
<</if>>
<</if>>
<<else>>
[@@.link_locked;You do not have a <<getWordVagina>> of your own.@@]<br>
<</if>>
[<<moveTo "event_technician_bimbo_dom_4" "Well, she did offer... (have her suck on a strap-on)" 300 "<<set $scene.action='blow_strap'>>">>]<br>
[<<moveTo "event_technician_bimbo_dom_4" "Well, she did offer... (fuck her with the strap-on)" 300 "<<set $scene.action='fuck_strap'>>">>]<br>
[<<moveTo "event_technician_bimbo_dom_4" "Just watch the debauchery." 300 "<<set $scene.action='watch'>>">>]<br>
[<<moveTo "event_technician_bimbo_1_abort" "You aren't feeling like this tonight." 60>>]
</div>/*#
#desc: technician bimbofication suck and fuck
#status: FINISHED 0.8.7.0
#ignore_spell: dp'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'very' $SEEN_FRIEND>>
<<set $scene.removeCage = false>>
<<switch $scene.action>>
<<case 'blow' 'fuck' 'eat'>>
<<playerOrgasm>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && $scene.action != 'eat' || $scene.action == 'eat' && setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<case 'blow_strap' 'fuck_strap'>>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<</switch>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'blow' 'blow_strap'>>
You <<if $scene.removeCage>>unlock your chastity belt and<<elseif $scene.action == 'blow_strap'>>buckle the strap-on around your hips and<</if>> step towards <<=ps(setup.getNpcName("npc_technician","first"))>> face as she eagerly wraps her lips around your <<if $scene.action == 'blow_strap'>>artificial<<else>><</if>> starts pounding the <<if $scene.action == 'blow_strap'>>other <</if>>dildo into her ass.<br>
<br>
In between slurps she continues to taunt... though her words are becoming increasingly distracted. "@@.npc_technician;See? You can't turn me into a bimbofied cock-whore, I'm literally immune to your charms. Mmm, pound my throat deeper, uh, I mean you think this is going to get me off? Nerd, I'm totally just humoring you, I'm a smart IT professional, and I could stop any time — don't stop, don't stop, fuck me harder. The only RAM I care about is cock slamming into me!@@"<br>
<br>
Perhaps to avoid saying any further "embarrassments" she goes full deep-throat, one arm wrapped around you to pull you close while her free hand ratchets up the speed of pounding her ass.
<<case 'fuck' 'fuck_strap'>>
You <<if $scene.removeCage>>unlock your chastity belt and<<elseif $scene.action == 'blow_strap'>>buckle the strap-on around your hips and<</if>> step between <<=ps(setup.getNpcName("npc_technician","first"))>> legs as she brings the other dildo to her lips and arches slightly in offering.<br>
<br>
"@@.npc_technician;Psh, go ahead and ram it in there,@@" she states dismissively, her words somewhat mangled as she licks and slurps at the dildo. "@@.npc_technician;Oh fuck that's so good,@@" she moans as you slide into her, only to correct herself... if slightly breathlessly, "@@.npc_technician;uh, I mean, like, whatever, nerd, you think I'm getting off on this like some sort of bimbo slut? Hardly, I'm just humouring you by letting you fuck me while I suck on this fat cock. If I was a REAL bimbo I'd be getting DP'd with a real cock at both ends, so obviously your attempts to brainwash me didn't work at all. Go ahead, fuck me as hard as you can, I bet I only cum once or twice, at most! I'm a smart IT professional, and I could stop any time — don't stop, don't stop, fuck me harder. The only RAM I care about is cock slamming into me!@@"<br>
<br>
You respond to her mocking request by granting it, and her eyes roll back in ecstasy as she crams the dildo down her throat to (partially) silence her load moans of pleasure.
<<case 'eat'>>
You <<if $scene.removeCage>>unlock your chastity belt and<</if>> step towards <<=setup.getNpcName("npc_technician","first")>>. Her gaze still following the swinging watch she lets the dildo fall from her lips as she eagerly licks your crotch and pounds her ass with the other dildo.<br>
<br>
"@@.npc_technician;Mmm, you taste so good,@@" she moans in between licks. "@@.npc_technician;And I'm not even touching myself, see?@@" You glance down to confirm that her statement is technically accurate — she may be pounding her ass with the dildo, but her <<if $npc_technician.relationship.her_caged>>caged<<else>>rock-hard<</if>> <<getWordPenis false>> is dripping down her thighs, utterly untouched. "@@.npc_technician;Oh yeah, grind my face and fuck my ass, make me your bitch- uh, I mean, hah, loser, your bimbofication totally failed! I'm a smart IT professional, and I could stop any time — don't stop, don't stop, fuck me harder. The only RAM I care about is cock slamming into me!@@"<br>
<br>
As if to keep from saying anything else "out of turn" she presses her lips between your legs in a fresh frenzy as she continues to thrust away with the dildo in what looks like a sprint to the finish...
<<case 'watch'>>
You stand back while <<=setup.getNpcName("npc_technician","first")>> goes to town on herself with the two dildos, sucking and drooling on one, while down below she pounds her ass with the other.<br>
<br>
Her eyes unfocused, her words are slightly slurred as she speaks in between throat bulges. "@@.npc_technician;See, nerd, I'm totally not a brainwashed bimbo slut, I'm just teasing you. After all, I'm not even touching my <<getWordPenis false>>. Would a desperate slut be able to resist that? See, acting like a mindless pair of fuck-holes PROVES that I'm not your bimbo fuck-slave! I'm a smart IT professional, and I could stop any time — oh, fuck, but I don't want to stop. Can't stop, won't stop, fuck me harder. The only RAM I care about is cock slamming into me!@@"<br>
<br>
Her eyes start to roll back as she jams a dildo in each hole, seemingly sprinting to the the finish...
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "event_technician_bimbo_dom_5" "Looks like she's about to cum..." 300>>]<br>
[<<moveTo "event_technician_bimbo_1_abort" "You aren't feeling like this tonight." 60>>]
</div>/*#
#desc: technician bimbofication finish
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.kink_indulge.bimbofication.her = true>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'blow' 'blow_strap'>>
<<=setup.getNpcName("npc_technician","first")>> sucks with aplomb and jack-hammers her rear as she<<if $scene.action == 'fuck'>>, and you, cum<<else>> cums<</if>> hard, <<if $fetish.cum>><<if $npc_technician.relationship.her_caged>>leaking through her cage<<else>>spurting all over herself<</if>><<else>>jerking and gasping in ecstasy<</if>>.
<<case 'fuck' 'fuck_strap'>>
<<=setup.getNpcName("npc_technician","first")>> bucks her hips and jack-hammers her own throat as she<<if $scene.action == 'fuck'>>, and you, cum<<else>> cums<</if>> hard, <<if $fetish.cum>><<if $npc_technician.relationship.her_caged>>leaking through her cage<<else>>spurting all over herself<</if>><<else>>jerking and gasping in ecstasy<</if>>.
<<case 'eat'>>
<<=setup.getNpcName("npc_technician","first")>> pulls you tight as you cum, a moment later scream-moaning her own climax as she hilts the dildo in her rear and shudders in ecstasy, remaining there for several moments before slipping back onto the couch with a dazed look on her face.
<<case 'watch'>>
Fucking herself from both ends, <<=setup.getNpcName("npc_technician","first")>> cums hard, sweaty and soaked with her own juices as she <<if $fetish.cum>><<if $npc_technician.relationship.her_caged>>leaks through her cage<<else>>spurts all over herself<</if>><<else>>jerks and gasps<</if>>.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_technician;Heh, what are you looking at?@@" She finally states, blinking quickly as she sits up, "@@.npc_technician;see? Your attempts didn't do anything, I was in control the whole time, just like I am now. Yup, I'm totally immune to whatever you were doing, but I guess I can put my clothes back on to keep from distracting you. Yup, that's what I was doing, distracting you, I totally wasn't getting off or anything,@@" the final lusty glance she gives towards the dildos before putting them away easily disproves her statement... to say nothing of the flirty wink she shoots you as she <<if $scene.removeCage>>re-locks your chastity <<if $scene.isCage>>cage<<else>>belt<</if>><<else>>finishes pulling on her top<</if>>.<br>
<br>
[<<moveTo "event_technician_private_game_root" "Time for something else..." 60 '<<if $scene.removeCage>><<include "replaceCage_extendSissyomatic">><</if>><<if setup.checkItemWorn("strapon_large")>><<removeItem "strapon_large" true>><<deleteItem "strapon_large">><</if>>'>>]
</div>/*#
#desc: technician bimbofication pair event invite
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'elevator_home' 'technician_bimbo'>>
<<if $npc_technician.flags.evil == 1>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<<set $taskEvents.shift()>>
<<include "handleHomeShortcutDirect">>
<<else>>
<<set $scene.rand = random(1,10)>>
<<if $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && !$currentTasks.psychiatrist_endless_hypnosis_1.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) == 0 || !($npc_technician.relationship.done_you && $player.virgin.blowjob && (!$player.body_ref.vagina || $player.virgin.vaginal) && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$npc_technician.relationship.kink_indulge.bimbofication.both || $scene.rand == 1))>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<<set $taskEvents.shift()>>
<<include "handleHomeShortcutDirect">>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<<set $taskEvents.shift()>>
<<include "handleHomeShortcutDirect">>
<<else>>
<<set $currentcall = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_technician;Hey, so, bit last minute, but <<=setup.getNpcName("npc_maid","first")>> is throwing a little shindig tonight and I wondered if you wanted to come with me? For clarity, we won't be so much attending the party as being... entertainment for it. Hot, sexy... mindless entertainment... that sound fun, my lovely bimbo <<if $fetish.cum && $npc_technician.relationship.kinks.cum>>cumslut<<else>>buddy<</if>>?@@"<br>
<br>
[<<moveTo "event_technician_bimbo_pair_2" "You're already on your way over!" 300 "<<set $scene.accept=true>><<set $currentcall=false>>">>]<br>
[<<moveTo "event_technician_bimbo_pair_2" "You have other plans." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: technician bimbofication pair prep
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location to "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You arrive at <<=ps(setup.getNpcName("npc_technician","first"))>> flat and she greets you with a wide grin. "@@.npc_technician;Welcome, welcome! So I was thinking about your thing for bimbofication, and the fun we've already had with that and, well... I picked up a pair of costumes that could mean a VERY fun night...@@"<br>
<br>
With a flourish she steps aside to reveal what you first think are blow-up sexdolls, but you a moment later realise are actually a pair of thick full body latex costumes...<br>
<br>
"@@.npc_technician;Why just be a bimbo, when you can be a literal fuck-doll? Oh, and did I mention that the theme of <<=ps(setup.getNpcName("npc_maid","first"))>> parties is hump-day?@@"<br>
<br>
[<<moveTo "event_technician_bimbo_pair_3" "To the party!" 300 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_technician_bimbo_pair_3" "Actually... you don't want to do this tonight." 60 "<<set $scene.abort=true>>">>]<br>
<<else>>
You decline <<=ps(setup.getNpcName("npc_technician","first"))>> invitation.<br>
<br>
"@@.npc_technician;Yeah... I guess this was kind of sudden, unfortunately <<=ps(setup.getNpcName("npc_maid","first"))>> isn't quite really the "planning ahead" sort like I am, so these things are always a bit ad hoc. I'll let you know when there's another one I guess, catch you later!@@"<br>
<br>
You say goodbye and she hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 1 "<<set $currentcall=false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: technician bimbofication arrive and change
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.abort>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<<else>>
<<useClothSetPush 'tmp'>>
<</if>>
<</if>>
<<if $scene.abort>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Flat'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.abort>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid","npc_maid_dom_2")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You tell <<=setup.getNpcName("npc_technician","first")>> that you aren't really feeling like what sounds like a sex party tonight and she nods.<br>
<br>
"@@.npc_technician;Aww, I thought this would be right up your alley! But sometimes it just isn't the right night. Well I'll just tuck these away and let you know the next time one of these goes down, and I'll catch you later, alright?@@"<br>
<br>
You nod and share a hug before you depart.<br>
<br>
[<<moveTo "room_student_quarter" "Leave her flat." 120>>]
<<else>>
You grin at <<=ps(setup.getNpcName("npc_technician","first"))>> proposal and she quickly packs up the costumes. "@@.npc_technician;Awesome, let's hurry and we can change when we get there, walking in public like this, well... we'd get this sexy latex all dirty!@@"<br>
<br>
You laugh and give her a hand as the two of you head for <<=ps(setup.getNpcName("npc_maid","first"))>> flat, which turns out to be just a couple buildings over in another nigh identical densely-packed low-cost skyscraper apartment building.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> greets you at the door with a grin and a tip of her cap. You step inside, other than the lack of a proper gaming table it looks eerily similar to <<=ps(setup.getNpcName("npc_technician","first"))>> place... though you suppose that's often the case with these sorts of endless apartments.<br>
<br>
"@@.npc_maid;Well, well, well! You decided to come after all. It's a good thing, though, what with <<=setup.getNpcName("npc_barista","nickname")>> <<if $npc_barista.stage >= 5 && $npc_barista.stage < 10>>being unavailable of late<<else>>calling out for some job or something<</if>>... I mean, what's a hump-day party without the public use slut?! Though maybe it'll be even better tonight having TWO of them!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> leers for a moment and then pauses, her tone suddenly serious. "@@.npc_maid;Final check-in, here, you sure you're down for this? I'll be keeping an eye on stuff, and I'm always meticulous with who I invite but, well... you're going to be dressed like a pair of fuck-dolls, and we're gonna be treating you like such, just wanna make sure you're still alright with all that?@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_technician_bimbo_pair_4" "That literally sounds like the perfect evening, especially locked in chastity!" 300 "<<set $scene.removeCage=false>>">>]<br>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId) || $npc_technician.relationship.keyholder>>
[<<moveTo "event_technician_bimbo_pair_4" "That literally sounds like the perfect evening... if you could be temporarily let out of chastity?" 300 "<<set $scene.removeCage=true>>">>]<br>
<<else>>
[@@.link_locked;You do not have access to a key to be let out of chastity.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_technician_bimbo_pair_4" "That literally sounds like the perfect evening." 60 "<<set $scene.removeCage=false>>">>]<br>
<</if>>
[<<moveTo "event_technician_bimbo_pair_abort" "On second thought... you don't think you are." 60>>]
<</if>>
</div>/*#
#desc: technician bimbofication party starts: maid
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<addItem "blowup_doll">>
<<wearItem "blowup_doll" true>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true)>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_maid","npc_maid_dom_2")>>
<div id="invframe" class="scrolltext">
You confirm your interest and your friends grin, <<=setup.getNpcName("npc_technician","first")>> <<if $scene.removeCage>>unlocking your chastity and then <</if>>going first to show you how the blow-up doll costume works before <<=setup.getNpcName("npc_maid","first")>> lends a hand to help you in.<br>
<br>
The outfit is as meticulously designed as it is lewd — total body latex with inflatable breasts and hips to give you the most extreme body imaginable, with the "real" fun coming in the form of an intricate mask that sports a large ring gag, and nose snorkels that combine to turn your mouth into a rubber-lined onahole while allowing you to breath easily, no matter what's in front of your face. Down below
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage")>>
are two additional hollow sheathes — one each for your two lower holes to give your mouth, ass and cunt the wide-open look of a blow-up doll... all while a monstrous artificial cock rises from between your legs as if in mockery of your locked status within.
<<else>>
are three additional hollow sheathes — one that gives you a monstrous, ever-rigid cock, and the other two that go inside to line your ass and cunt.
<</if>>
<<elseif $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
is a hollow anal sheath... along with an integrated pocket pussy pressed against your belly and a monstrous artificial cock rising from between your legs as if in mockery of your locked status within.
<<else>>
is a hollow anal sheath... along with an integrated pocket pussy pressed against your belly and a cocksheath that has your monstrously large and functionally ever-hard.
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
is a hollow anal sheath... along with an integrated pocket pussy pressed against your belly to "make up" for your locked status within.
<<else>>
are a pair of hollow sheaths, one for your ass, the other for your cunt.
<</if>>
<</if>>
Spread wide and hollow-stuffed in every orifice you have the wide-eyed, open mouthed look of a blow-up doll, all capped off with your fingers and thumbs connected to form stroke-ready loops. You struggle slightly in the heavy rubber, the combination of tight, thick latex and the many inflated sections that accentuate your over the top appearance combining to hold you in a legs and arms wide position, incapable of standing... or really doing anything but laying on the couch like the blow-up doll you have become.<br>
<br>
"@@.npc_maid;Obviously your communication options are a bit limited,@@" <<=setup.getNpcName("npc_maid","first")>> explains, "@@.npc_maid;and you don't even have any cocks stuffing you yet! But if ANYTHING goes wrong you can signal me by tapping your thumb and ring finger together repeatedly, if you could give it a shot to show everything is working?@@"<br>
<br>
You do as instructed and she flashes a thumbs up. "@@.npc_maid;Perfection, guests should start arriving any minute now... but I just can't resist the sight of <<=setup.getNpcName("npc_technician","first")>> with her lips spread and no endless stream of words coming out so... if you don't mind...@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> steps up onto the couch to mount your girlfriend, unleashing "The Destroyer" with a grin before jamming its full length past <<=ps(setup.getNpcName("npc_technician","first"))>> gag-spread lips.<br>
<br>
"@@.npc_maid;Dang, I can barely feel your tongue through all that rubber... oh well, guess I gotta do this myself!@@" Taking hold of the blow-up doll's artificial hair with both hands <<=setup.getNpcName("npc_maid","first")>> pounds away, cumming in no more than a couple of minutes deep in <<=ps(setup.getNpcName("npc_technician","first"))>> artificially-lined throat before pulling free, still half-hard.<br>
<br>
"@@.npc_maid;Don't want to mess up that pretty face before the guests arrive,@@" <<=setup.getNpcName("npc_maid","first")>> says with a laugh just as the doorbell rings.<br>
<br>
[<<moveTo "event_technician_bimbo_pair_5" "Time to party..." 1800 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_technician_bimbo_pair_5" "Actually... you don't want to do this tonight." 180 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: technician bimbofication abort
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<<if setup.checkItemWorn("blowup_doll")>>
<<removeItem "blowup_doll" true>>
<<deleteItem "blowup_doll">>
<</if>>
<<useClothSetPop 'tmp'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<include "replaceCage_extendSissyomatic">>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_maid","npc_maid_dom_2")>>
<div id="invframe" class="scrolltext">
You tap your thumb and ring finger together and the party shifts remarkably fast. Almost in a blur <<=setup.getNpcName("npc_maid","first")>> tosses people aside before she and her friends help you and <<=setup.getNpcName("npc_technician","first")>> out of your outfits and into the bedroom where you somehow find yourself with a towel and a cup of cocoa.<br>
<br>
"@@.npc_technician;You okay?@@" <<=setup.getNpcName("npc_technician","first")>> asks as <<=setup.getNpcName("npc_maid","first")>> looks on, glaring at the cluster of eyes peeking past the door before closing it up.<br>
<br>
You nod as <<=setup.getNpcName("npc_maid","first")>> apologises. "@@.npc_maid;Sorry it got a bit intense, and don't mind them — they're as concerned for you as we are, they wouldn't be here if they weren't the sort to be grateful and thoughtful of anyone brave enough to volunteer to be their fuck-doll.@@"<br>
<br>
You nod, feeling a bit of emotional whiplash from the mix of depravity and caring and you and <<=setup.getNpcName("npc_technician","first")>> get dressed before heading back through a literal chorus of applause to leave the flat and head out.<br>
<br>
Down on the street <<=setup.getNpcName("npc_technician","first")>> insists on calling a cab, dropping you off at home with a kiss before continuing on to her place.<br>
<br>
[<<moveTo "room_foyer" "Home." 180 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician bimbofication party starts: waitress
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.abort>>
<<removeItem "blowup_doll" true>>
<<deleteItem "blowup_doll">>
<<useClothSetPop 'tmp'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<include "replaceCage_extendSissyomatic">>
<<wearItem $scene.plug true>>
<</if>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<<else>>
<<changeHorny 50>>
<</if>>
<<applyExperience 'bimbofication' 15 'very' $SEEN_FRIEND>>
<</if>>
<<if $scene.abort>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Bedroom'>>
<<else>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Flat'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.abort>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_maid","npc_maid_dom_2")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_waitress","npc_waitress_trayless")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You trigger the safeword and <<=setup.getNpcName("npc_maid","first")>> immediately moves over to help, yours and <<=ps(setup.getNpcName("npc_technician","first"))>> outfits disappearing in record time as she leads the two of you into the bedroom.<br>
<br>
"@@.npc_maid;Sorry to cut and run, but I've got a whole flood of guests about to arrive that I need to corral.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> confirms she's on top of things and the two of you cuddle for a few minutes to recover without words or recriminations before you finally decide you're ready to dress and head home.<br>
<br>
The two of you slip out past an orgy in progress as <<=setup.getNpcName("npc_technician","first")>> insists on paying for a cab, first dropping you off at your flat before continuing on home to her place.<br>
<br>
[<<moveTo "room_foyer" "Home." 180 "<<useClothSetPop 'tmp'>>">>]
<<else>>
<<=setup.getNpcName("npc_maid","first")>> steps away, her "Destroyer" still half hard and hanging free as she walks over to get the door where you recognise <<=setup.getNpcName("npc_waitress","first")>> from cafe 52.<br>
<br>
"@@.npc_waitress;You couldn't even wait for people to show up to get started?@@" <<=setup.getNpcName("npc_waitress","first")>> asks with a grin, leaning in for a greeting kiss as her hand gives "The Destroyer" a stroke.<br>
<br>
"@@.npc_maid;Just taking the edge off,@@" <<=setup.getNpcName("npc_maid","first")>> replies with a smile.<br>
<br>
"@@.npc_waitress;Speaking of edge... I don't suppose you could unlock me? It's been a long, hard day and I could really use some relief...@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> chuckles as she reaches under the other maid's skirt to unlock <<=ps(setup.getNpcName("npc_waitress","first"))>> chastity cage. "@@.npc_maid;That's what tonight's all about! These bimbo blow-up dolls are here to be used, so have at it!@@"<br>
<br>
A friendly slap on the ass shuttles <<=setup.getNpcName("npc_waitress","first")>> into the room where she heads straight for you, straddling you and stroking your face as she grins, tracing your artificial lips with one finger as she grinds against you.<br>
<br>
"@@.npc_waitress;Look at you in there, all helpless and hot, if one didn't know better they might think you were just an inanimate doll... but you're a real <<switch $player.identify_as>><<case 'female' ''>>
girl<<case 'male'>>boy<<case 'fluid' 'agender'>>boy... girl... neither? Well, you're real, and<</switch>> living that bimbo fuck-doll dream... sorry, got a bit distracted there, I'll fuck you now.@@"<br>
<br>
Without further preamble she lines up with your front hole, sliding into
<<if $player.body_ref.vagina && $scene.removeCage>>
your permanently spread, rubber-lined <<getWordVagina>>
<<else>>
your outfit's artificial pussy
<</if>>
with obvious pleasure. "@@.npc_waitress;Goddess! You're so tight and squishy...@@" She emphasises the second point by squeezing your over-inflated artificial breasts. "@@.npc_waitress;Take it slut! Take it all!@@"<br>
<br>
You're distracted by the sexy maid riding you hard, but the floodgates of guests must have been opened because <<=setup.getNpcName("npc_waitress","first")>> hasn't even finished when someone is coming up from behind the couch and turning your face around to suck them off as your far hand is guided to start stroking someone off that you can't even see!<br>
<br>
[<<moveTo "event_technician_bimbo_pair_6" "I am a bimbo fuck-doll, use me in every way you want!" 60>>]<br>
[<<moveTo "event_technician_bimbo_pair_abort" "Tap out." 300>>]
<</if>>
</div>/*#
#desc: technician bimbofication party starts: swolebro
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'anal' 15 'very' $SEEN_FRIEND>>
<<applyFatigue 50>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_swolebro") setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
Your world one of moans and rubbery squeaks you've taken multiple loads in each hole before you get enough space for anything approaching a "breather"
<<if $npc_swolebro.profile && $npc_fit_bimbo.profile>>
when you are surprised to recognise someone else — a pair of friends from the gym.
<<elseif $npc_swolebro.profile>>
when you are surprised to recognise one of your lifting friends from the gym, alongside a real gym bimbo.
<<elseif $npc_fit_bimbo.profile>>
when you are surprised to recognise a fellow bimbo from the gym, alongside a walking wall of muscle that would give <<=setup.getNpcName("npc_admin","first")>> a run for <<his npc_admin>> money.
<<else>>
when you spot a pair that looks straight from the gym — a plastic fit bimbo and a walking wall of muscle that would give <<=setup.getNpcName("npc_admin","first")>> a run for <<his npc_admin>> money.
<</if>>
<br><br>
"@@.npc_fit_bimbo;You're, like, sure this is going to be good for my core?@@" The fit bimbo remarks as you notice she's sporting a sizable strap-on just before the <<man>> casually picks you up and slides you onto his large cock,
<<if $player.body_ref.vagina && $scene.removeCage>>
the combination of <<his npc_swolebro>> girth and the sheath lining your vagina having you feeling quite full.
<<else>>
<<his npc_swolebro>> girth such that <<he npc_swolebro>> fills the sheath and presses against your body.
<</if>>
<br><br>
"@@.npc_swolebro;Absolutely,@@" the <<man npc_swolebro>> explains as he holds you aloft and turns for her to take up position in your ass. "@@.npc_swolebro;Thrusting upwards will have you really feeling the burn in your glutes and calves, and the variations in her tightness will add a bit of muscle confusion to the routine.@@"<br>
<br>
"@@.npc_fit_bimbo;Like, awesome,@@" the bimbo replies as she slides up into your rear the two fitness freaks making you their <<if $fetish.sissy>>sissy <</if>>bimbo sandwich as they grunt and pound.<br>
<br>
[<<moveTo "event_technician_bimbo_pair_7" "More reps! More sets! Work me hard and make me sweat!" 600>>]<br>
[<<moveTo "event_technician_bimbo_pair_abort" "Tap out." 300>>]
</div>/*#
#desc: technician bimbofication party starts: gangbang
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 18 'very' $SEEN_FRIEND>>
<<applyExperience 'anal' 18 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' 18 'very' $SEEN_FRIEND>>
<<applyFatigue 100>>
<<if !$player.sec_style.sex.airtight>>
<<set $player.sec_style.sex.airtight = "enthusiast">>
<<include "addTypingEvent">>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
The gym pair seems to kick things into a new gear as you end up passed back and forth almost in mid-air, not coming anywhere close to the couch as you're passed around to be fucked and fondled in every combination possible. Serving two, three, four, or more people at a time you head straight for bimbo overload, losing track of exactly what's going on beyond embracing your existence as a bimbo fuck-doll, a living locus of libertine lusts.<br>
<br>
Though <<=setup.getNpcName("npc_technician","first")>> is as masked and concealed as you are, you do manage to catch her eye as the two of you slurp either end of a double-ended dildo and you share a blissful bimbo moment, knowing that, as unseen and unnamed partners take you from behind, you're both having the best time.<br>
<br>
<<if $fetish.cum>>
[<<moveTo "event_technician_bimbo_pair_8_cum_1" "Continue." 600>>]<br>
<<else>>
[<<moveTo "event_technician_bimbo_pair_8_nocum_1" "Continue." 600>>]<br>
<</if>>
[<<moveTo "event_technician_bimbo_pair_abort" "Tap out." 300>>]
</div>/*#
#desc: technician bimbofication party starts: no cum
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<playerOrgasm>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<<set $npc_technician.relationship.kink_indulge.bimbofication.both = true>>
<<removeItem "blowup_doll" true>>
<<deleteItem "blowup_doll">>
<<useClothSetPop 'tmp'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<include "replaceCage_extendSissyomatic">>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
While your own arousal seems nearly without end, there proves to be a limit to how many times even the dozen or so party-goers crammed into <<=ps(setup.getNpcName("npc_maid","first"))>> flat can get off with a pair of fuck-dolls. Hitting their limits a few trickle off while others just sit back to watch, or more optimistically try to gather their energy for another round. As things wind down for what seems the final time you and <<=setup.getNpcName("npc_technician","first")>> are helped into the bathroom where your outfits are finally peeled off and you enjoy a brief, but rejuvenating, rinse in the shower.<br>
<br>
As you help dry one another off <<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;I really have ended up at the best places since you came into my life.@@"<br>
<br>
You blush and the two of you share a kiss, tired bodies leaning against one another as you enjoy the touch you have not actually felt through the debauchery thanks to the thick rubber, before gathering your clothes<<if $scene.removePlug>>, feeling the plug slip back into your rear with a lovingly whispered "@@.npc_technician;slut,@@"<</if>> and bidding the cheering party-goers good night.<br>
<br>
The brisk night air is refreshing, but you and <<=setup.getNpcName("npc_technician","first")>> are both tired and she insists on summoning an auto-cab, the vehicle quickly dropping you off at home before zipping her back to her apartment.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
</div>/*#
#desc: technician bimbofication party starts: cum decision
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<playerOrgasm>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_maid","npc_maid_dom_2")>>
<div id="invframe" class="scrolltext">
While your own arousal seems nearly without end, there proves to be a limit to how many times even the dozen or so party-goers crammed into <<=ps(setup.getNpcName("npc_maid","first"))>> flat can get off with a pair of fuck-dolls. Hitting their limits a few trickle off while others just sit back to watch, or more optimistically try to gather their energy for another round. As things wind down for what seems the final time you and <<=setup.getNpcName("npc_technician","first")>> are placed back on the couch as <<=setup.getNpcName("npc_maid","first")>> rises to make an announcement.<br>
<br>
"@@.npc_maid;Thank you all for another successful hump-day party — I hope it provides the... inspiration to get you through the week, no matter what your job may be!@@"<br>
<br>
A chorus of tired cheers goes up as <<=setup.getNpcName("npc_maid","first")>> takes a small bow. "@@.npc_maid;Of course the true stars of the show are our two bimbo fuck-doll sluts here... and, for them, well, there's one final surprise!@@"<br>
<br>
Not being in the midst of being fucked your adrenaline was starting to crash but you somewhat perk up in curiosity as <<=setup.getNpcName("npc_maid","first")>> explains. "@@.npc_maid;So you may have noticed the lack of leakage as you've been enjoying the entertainment tonight. Well, that's because, in addition to auto-lubricating, their outfits are designed to slurp up all that yummy cum and store it away in an internal reservoir. So, now that we're at the end of the night, well... it's time to crack these two sluts open and see who the champion cum-dump of the night is.@@" She pauses, seeming to think for a moment. "@@.npc_maid;Hmm... before we tally the totals there is raised a question — which one of them deserves to leave with a belly-full of cum. The winner... or the loser?@@"<br>
<br>
You can't be certain, but given that <<=setup.getNpcName("npc_technician","first")>> arranged this evening for you, and with how much you were passed around you have a gut feeling that you're going to be announced the victor...<br>
<br>
[<<moveTo "event_technician_bimbo_pair_8_cum_2" "Looks like voting is tilting towards the winner getting the reward." 180 "<<set $scene.cum=true>>">>]<br>
[<<moveTo "event_technician_bimbo_pair_8_cum_2" "Looks like voting is tilting towards the loser being forced to consume the mess..." 180 "<<set $scene.cum=false>>">>]<br>
[<<moveTo "event_technician_bimbo_pair_abort" "Actually... you think you're done." 180>>]
</div>/*#
#desc: technician bimbofication party starts: cum consumption
#status: FINISHED 0.8.7.0
#ignore_spell: ml,bimbot
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.techCum = random(75,110)>>
<<set $scene.yourCum = random(150,250)>>
<<if $scene.cum>>
<<applyExperience 'cum' 15 'very' $EXPOSED>>
<<else>>
<<applyExperience 'cum' 10 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_maid","npc_maid_dom_2")>>
<div id="invframe" class="scrolltext">
The votes are tallied as <<=setup.getNpcName("npc_maid","first")>> finishes measuring the two reservoirs to announce the results. "@@.npc_maid;Fuck-doll <<=setup.getNpcName("npc_technician","first")>> with <<=$scene.techCum>>mL of <<getWordCum>>... and Bimbot <<=$player.first_name>>, your true human cumdumpster winner with a stunning <<=$scene.yourCum>>mL!@@"<br>
<br>
A cheer goes up as <<=setup.getNpcName("npc_maid","first")>> combines the two containers of cum and
<<if $scene.cum>>
then opens a port on the side of <<=ps(setup.getNpcName("npc_technician","first"))>> hip. You watch as <<=ps(setup.getNpcName("npc_technician","first"))>> oversized sheathed <<getWordPenis false>> trembles in anticipation, a thin trickle of <<getWordCum>> leaking from the tip.<br>
<br>
"@@.npc_maid;Come on, someone drag the victor over for their prize — sometimes winning sucks, eh?@@"<br>
<br>
There are a mix of laughs and groans at the pun as you are carried across the couch and your gag removed for you to dive semi-helplessly face-first onto the dripping dong. You're initially treated to the half-dozen intermingled flavours of everyone who's taking your girlfriend for a "ride"... but then it's all overpowered as the monster load of cum shoots down your throat, the crowd cheering as you gulp as fast as you can... though you still end up with a bit of dribble down your chin, just as <<=ps(setup.getNpcName("npc_technician","first"))>> mask is removed for her to lick you clean.
<<else>>
someone peels off <<=ps(setup.getNpcName("npc_technician","first"))>> mask.<br>
<br>
You watch as your girlfriend is helped over to kneel between your legs... and then the pitcher of cum is poured over your breasts, rivulets of thick, salty semen flowing down your over-inflated artificial orbs and then down your belly and into her waiting mouth.<br>
<br>
You crane your neck to watch as <<=setup.getNpcName("npc_technician","first")>> looks up at you with sparkling, if tired, eyes, slurping up the full blended load before crawling forward, licking her way up your belly before finishing off with a cummy kiss.
<</if>>
<br><br>
"@@.npc_technician;I really have ended up at the best places since you came into my life,@@" <<=setup.getNpcName("npc_technician","first")>> whispers as the two of you collapse into one another.<br>
<br>
[<<moveTo "event_technician_bimbo_pair_9" "Continue." 300>>]
</div>/*#
#desc: technician bimbofication party starts: finish
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_bimbo'>>
<<set $npc_technician.relationship.kink_indulge.bimbofication.both = true>>
<<removeItem "blowup_doll" true>>
<<deleteItem "blowup_doll">>
<<useClothSetPop 'tmp'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_maid","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
Exhausted and satisfied, you and <<=setup.getNpcName("npc_technician","first")>> wobble back to your feet as someone helps you into the bathroom to strip out of your outfits and rinse off before getting dressed<<if $scene.removePlug>> and sliding the plug slip back into your rear with a lovingly whispered "@@.npc_technician;slut.@@"<<else>>.<</if>><br>
<br>
Back in the livingroom the remaining guests thank you for your "entertainment" with tired, satisfied cheers before the two of you pile into a taxi for the short trip home.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
</div>/*#
#desc: technician proposes rope bondage
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if !$npc_technician.relationship.kink_indulge.bondage>>
You ask what <<=setup.getNpcName("npc_technician","first")>> means by "rope play" and she grins. "@@.npc_technician;Well I've been practicing a bit of shibari and such, but it'd be a lot more fun and productive to practice on a willing subject... if you're interested.@@"
<<else>>
You ask <<=setup.getNpcName("npc_technician","first")>> if she's interested in practicing some more of her knots and she grins. "@@.npc_technician;Frick yes I do!@@"
<</if>>
She leads you into her bedroom and pulls out a box filled with neatly wound rope. "@@.npc_technician;I, uh... wasn't sure which rope was going to be best and... I may have gone a bit out of control covering all my bases? But, like, they were on sale! So... if you wanted to strip... I wouldn't want to mess up those pretty clothes while I was tying you up...@@"<br>
<br>
You laugh in amusement, though from the twinkle in her eye you get the feeling she's liable to try using them ALL given the opportunity...<br>
<br>
[<<moveTo 'event_technician_private_game_bondage_2' "Get naked." 3600>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 300>>]
</div>/*#
#desc: technician heavy rope bondage
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set _bondage = setup.getTotalValue("bondage")>>
<<applyExperience 'bondage' _bondage 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'very' $SEEN_FRIEND>>
<<changeHorny 50>>
<<addItem "rope_harness">>
<<wearItem "rope_harness" true>>
<<if $npc_technician.relationship.kink_indulge.bondage < 1>>
<<set $npc_technician.relationship.kink_indulge.bondage = 1>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You start removing your clothes and <<=setup.getNpcName("npc_technician","first")>> grins, organising the first few hanks of rope as you get naked and then she gets to work.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> starts off with a classic diamond harness, moving on from there into a ladder tie down your legs and each arm before easing you onto the bed.<br>
<br>
"@@.npc_technician;Alright,@@" she says with a grin. "@@.npc_technician;Now that we have the basics... let's get you SECURED!@@"<br>
<br>
<<if setup.getTotalValue("bondage") > 15>>
Moving fast and confident she starts threading more and more rope through your existing harness, using that as a base to attach to some strategic hooks mounted to the ceiling and then gently lift you into the air.<br>
<br>
"@@.npc_technician;Suspended and mine... if still a bit... unrestricted...@@" She says with a smile, stroking your face and giving you a kiss as you gently sway a dozen centimetres above the mattress.<br>
<br>
With you helplessly suspended she puts things into overdrive, rope whipping through the air as she first pulls your limbs into more stretched, immobile positions, even weaving a harness around your head and through your hair — complete with a rope-gag.<br>
<br>
You feel a little bad for drooling, and otherwise dripping, onto her bed but the totality of your bondage is just too exciting to do anything else, as she systematically uses what seems like every scrap of rope in the apartment to have almost every centimetre of your flesh covered, with counter-tension meaning about the only movement you can pull off is your eyes and breathing — even your fingers and toes have been bound!<br>
<br>
"@@.npc_technician;Perfect!@@" She says, taking a deep breath and wiping sweat from her brow. "@@.npc_technician;Now for ME to have a bit of fun...@@"<br>
<br>
Sliding underneath you she strokes and pets and teases, making you shuddering and strain before, eventually, lowering you to the bed and untying you while kissing your rope-marked body.
<<else>>
She soon has you splayed out on her bed, carefully, and systematically tying you down until you're all but immobile cocooned in quite probably excessive quantity of rope.<br>
<br>
"@@.npc_technician;That tight enough for you?@@" She asks with a smile, sliding into bed next to you after you've nodded.<br>
<br>
"@@.npc_technician;Mmmm, you make a wonderful rope-bunny, you know that?@@" She says with glee as she rubs up against you, hands tracing over the ropes and the flesh between as she snuggles against your helplessly bound form.
<</if>>
<br><br>
You cuddle together to recover before she assists you in getting dressed and you head back to the main room.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Get changed." 300 "<<removeItem 'rope_harness' true>><<deleteItem 'rope_harness'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician offers bondage choice
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> grins mischievously. "@@.npc_technician;So... you know, with me being your keyholder and such, well... I decided to pickup some additional restraints to, you know... safely give you a bit of relief. Rope is good and all, but leather mmm... leather... or we can have some shibari shenanigans, either way... you can start by getting naked. I, an artist of bondage, require a pristine canvas...@@"<br>
<br>
[<<moveTo 'event_technician_private_game_bondage_2' "You're actually in the mood for rope... (get naked)" 1800>>]<br>
[<<moveTo 'event_technician_private_game_bondage_leather_1' "Leather is good... (get naked)" 3600>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 300>>]
</div>/*#
#desc: technician leather bondage
#status: RELEASED 0.8.9.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet "technician_bondage">>
<<wearItemSet "technician_bondage">>
<<applyExperience 'bondage' 16 'terrible' $SEEN_FRIEND>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You shed your clothes and <<=setup.getNpcName("npc_technician","formal")>> helps you into a harness and cuffs, soon having you partially suspended and restrained, walking in a slow circle to admire you swaying in her room before finishing off with a blindfold.<br>
<br>
"@@.npc_technician;There we go. Perfectly equipped... and now that you are secured and safe, well... we can see about giving you some relief, hmm?@@" As she speaks her fingers trace down your body, moving from leather to flesh as she starts from your collar and makes her way down to your <<if $scene.isCage>>cage<<else>>chastity belt<</if>>, every fraction of a moment untouched heightening your anticipation and intensifying even this light brush of her fingers.<br>
<br>
By the time the lock of your cage clicks you are squirming in place, the leather creaking ever so slightly as it keeps you safe, secure, and helpless.<br>
<br>
"@@.npc_technician;Someone's excited to be out on parole.@@" She whispers into her ear as her fingers <<if $player.body_ref.penis && $player.body_ref.vagina>>stroke from the tip of your <<getWordMyPenis>> down through your wet slit<<elseif $player.body_ref.penis>>stroke from the tip of your <<getWordMyPenis>> down to the base of your shaft<<elseif $player.body_ref.vagina>>gently sliding into your wet slit<<else>>ERROR: unexpected genital<</if>>.<br>
<br>
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
She plays with your small, hard <<getWordMyPenis>> while purring in your ear. "@@.npc_technician;Such a cute <<if $fetish.sissy>>sissy <</if>>clitty, so sweet and sensitive, definitely deserving of being kept safe and imprisoned outside of special occasions like tonight...@@"
<<case 2 3>>
She strokes your <<getWordMyPenis>> while cooing in your ear. "@@.npc_technician;Enjoying this moment of freedom? Mmm, I can tell you are, so hot and hard between my fingers...@@"
<<case 4 5>>
Her hand works up and down your large <<getWordMyPenis>> as she whispers in your ear. "@@.npc_technician;Such magnificence... almost as big as mine. I've had so much practice strokings something like this, I know every trick, how to squeeze and stroke and maximise every sensitivity...@@"
<<case 6>>
It takes both hands for her to work your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.knot>>dog-<<elseif $player.body_ref.horsecock>>horse-<</if>>cock,
<<if $player.body_ref.knot>>
one hand squeezing your engorged knot while the other pumps up and down
<<else>>
a double-fisted pump
<</if>>
the full length of your thick, rock-hard shaft.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
She continues to fondle you as your heart beats faster, <<if $player.body_ref.vagina>>one hand reaching lower to curl towards your g-spot as she continues to stroke,<</if>>
<<else>>
Her fingers probe deeper, her thumb circling your clit as she begins to probe your g-spot. "@@.npc_technician;So wet for your <<=setup.getNpcName("npc_technician","title")>>. All that time locked inside your belt, and now the floodgates are so very close to swinging open...@@" She continues to finger,
<</if>>
the leather straps digging into you only turning you on even more as she continues to tease.<br>
<br>
"@@.npc_technician;Mmmm, you're so close... but wouldn't it be better to hold back? To show me what a good <<=setup.getBoyGirl($npc_technician)>> you are, forgo the momentary satisfaction of orgasm in favour of even more edging before I lock you away? Could you do that for me, my sweet Princess?@@"<br>
<br>
[<<moveTo 'event_technician_private_game_bondage_leather_2' "Control yourself..." 300 "<<set $scene.cum=false>>">>]<br>
[<<moveTo 'event_technician_private_game_bondage_leather_2' "Cum." 300 "<<set $scene.cum=true>>">>]<br>
[<<moveTo 'event_technician_private_game_bondage_leather_abort' "This is too, much safeword." 300>>]
</div>/*#
#desc: technician leather bondage survive edging
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cum>>
<<playerOrgasm>>
<<else>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_FRIEND>>
<</if>>
<<if $npc_technician.relationship.kink_indulge.bondage < 2>>
<<set $npc_technician.relationship.kink_indulge.bondage = 2>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
The combination of the tight bondage and <<=setup.getNpcName("npc_technician","formal")>> is just too much, and you cum, hard,
<<if $player.body_ref.penis>>
<<switch $player.body_ref.cumProduction>>
<<case 2 3>>
shooting giant ropes of cum across the floor<<if $player.body_ref.vagina>> as you simultaneously leak down your leg<</if>>.
<<case 1>>
shooting your excitement<<if $player.body_ref.vagina>> as you simultaneously leak down your leg<</if>>.
<<case 0>>
your entire body jerking in excitement<<if $player.body_ref.vagina>> as you simultaneously leak down your leg<</if>>.
<<default>>
ERROR: unexpected cum production <<=$player.body_ref.cumProduction>>
<</switch>>
<<else>>
drenching <<=ps(setup.getNpcName("npc_technician","formal"))>> hand and squirting down your own thigh.
<</if>>
<br><br>
You pant and every so slowly calm down as <<=setup.getNpcName("npc_technician","formal")>> kisses your neck. "@@.npc_technician;You were pent up! Of course... this failure of control just shows that you need to be locked back up post-haste!@@"
<<else>>
Somehow, you mange to keep control, <<=ps(setup.getNpcName("npc_technician","formal"))>> touches getting lighter and lighter as she holds you right on the edge of orgasm, holding you there for moments of blissfully agonising submission before finally removing her hand with a whispered "@@.npc_technician;Good <<=setup.getBoyGirl($npc_technician)>>, so perfect at following your owner's instructions... of course this just proves how effective your chastity is, and why I need to lock you back up...@@"
<</if>>
<br><br>
"@@.pc;Yes, <<=setup.getNpcName("npc_technician","title")>>,@@" you moan as <<=setup.getNpcName("npc_technician","formal")>> tenderly locks you back up and then peels off your blindfold and lets you down from your suspension.<br>
<br>
"@@.npc_technician;Good <<=setup.getBoyGirl($npc_technician)>>,@@" she says once again as she helps you get dressed. "@@.npc_technician; You can keep the harness... you look so sexy all strapped up in leather.@@"<br>
<br>
Still tingling <<if $scene.cum>>in post-orgasmic delight<<else>>from your near orgasm<</if>> you nod and, clothed once more, follow <<=setup.getNpcName("npc_technician","formal")>> back out to the living room and the comfort of the couch.<br>
<br>
[<<moveTo 'event_technician_private_game_root' 'Do something else.' 60 '<<removeItem "blindfold_black" true>><<deleteItem "blindfold_black">><<removeItem "leather_wrist_cuffs" true>><<deleteItem "leather_wrist_cuffs">><<removeItem "leather_ankle_cuffs" true>><<deleteItem "leather_ankle_cuffs">><<useClothSetPop "tmp">><<include "replaceCage_extendSissyomatic">>'>>]
</div>/*#
#desc: technician leather bondage abort
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet "technician_bondage">>
<<deleteItemSet "technician_bondage">>
<<useClothSetPop 'tmp'>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You safeword out of things and <<=setup.getNpcName("npc_technician","formal")>> immediately has you back on the ground, unbuckling the straps rapidly as she holds you tenderly close, whispering a mix of apology and adoration as she helps you calm down and get dressed before leading you back to the couch.<br>
<br>
[<<moveTo 'event_technician_private_game_root' 'Do something else.' 60>>]
</div>/*#
#desc: technician dinner date cum event
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = $npc_technician.relationship.kink_indulge.cum == 0>>
<<if $scene.eat>>
<<applyExperience 'cum' 15 'very' $SEEN_FRIEND>>
<<if $npc_technician.relationship.kink_indulge.cum < 2>>
<<set $npc_technician.relationship.kink_indulge.cum = 2>>
<<include "checkTechnicianBarterEvent">>
<</if>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<else>>
<<decrementEmotion 'affection' 'npc_technician' 2>>
<<if $npc_technician.relationship.kink_indulge.cum < 1>>
<<set $npc_technician.relationship.kink_indulge.cum = 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.eat>>
<<if $scene.first>>
You look back at <<=setup.getNpcName("npc_technician","first")>> as you realise what she's made and she grins.
<<else>>
You look back at <<=setup.getNpcName("npc_technician","first")>> and grin as you take another bite.
<</if>>
<br><br>
"@@.npc_technician;So, how do you like the <<if $npc_technician.last=="Strawberry">><<=setup.getNpcName("npc_technician","last")>>-cream<<else>>special<</if>> filling?@@" She says with a wink.<br>
<br>
You respond by taking another big bite, this time moving past the subtly salty "frosting" to the slightly warm, ooey-gooey filling.<br>
<br>
She grins even wider. "@@.npc_technician;Goddess... you look so fucking hot eating that... gimme some sugar, baby.@@" She leans in for a kiss, your lips meeting passionately as you snowball back and forth a dollop of her girl goo. Licking her lips and slowly feeding you the rest of the dessert she grins. "@@.npc_technician;Groovy.@@"<br>
<br>
She scoops up the dishes with a smile.
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Bit of a challenge getting materials, what with the cage, but I can <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>> like a good girl when I need to. Drippy-drippy!@@"
<<else>>
"@@.npc_technician;Yeah... that was totally worth all the harvesting — I think ruining the orgasms made the flavour even better... lends a hint of... desperation.@@"
<</if>>
<br><br>
You smile and gulp down the last bite of the delicious dessert.<br>
<br>
[<<moveTo "event_technician_dinner_snuggle_1" 'Head to the couch for snuggle time.' 600>>]
<<else>>
<<if $scene.first>>
You gingerly put the cum-cake down and shake your head.
<<else>>
You shake your head at her offer of a cum-cake.
<</if>>
<br><br>
She frowns.
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Damn, and I spent so much time to leak enough ingredients... oh well.@@"
<<else>>
"@@.npc_technician;Damn, and I worked so hard gathering the ingredients... oh well.@@"
<</if>>
<br><br>
She grabs the cum-cake and takes a bite. "@@.npc_technician;Gotta recycle, y'know... hmm, maybe I should drink more pineapple juice...@@" A few more bite and she has polished it off with a gulp and she makes eyes towards the couch.<br>
<br>
[<<moveTo "event_technician_dinner_snuggle_1" 'Head to the couch for snuggle time.' 600>>]
<</if>>
</div>/*#
#desc: technician kisses you after date
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You're packing up to go when <<=setup.getNpcName("npc_technician","first")>> pulls you in for a passionate kiss.<br>
<br>
Your tongues dance as she pulls you close, the embrace drawing out for several moments as she grinds against you, separation only coming when the two of you finally and she finishes off with a soft moan and a smile.<br>
<br>
You ask what that was about and she grins. "@@.npc_technician;I was just remembering that first day... you under my desk, swallowing so naturally... I wish I'd kissed you then, tasted me on your lips...@@" Her grin widens. "@@.npc_technician;Even better if you could have done the same, I mean, I'd never need restoring data, obviously... but I'd LOVE to <<if $player.body_ref.penis>>suck on your sweet, salty<<if $fetish.sissy>>, sissy<</if>> sausage<<else>>go down on you too<</if>>...@@"<br>
<br>
[<<moveTo "event_technician_cum_kiss_2" 'That sounds hot...' 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_cum_kiss_2" "That's maybe a bit much..." 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: respond to technician kiss you after date
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You smile back and reply that her idea sounds great. She winks, seeming to momentarily consider going in for another kiss before blowing you one instead. "@@.npc_technician;You're so great... but I gotta get back and do some game prep, catch you later <<if $npc_technician.relationship.her_role == "dom">>Princess<<else>>hot stuff<</if>>.@@"
<<else>>
You reply that that's maybe a little much and she playfully pouts. "@@.npc_technician;And I thought you were getting a taste for the salty side! Well, whatever, kissing and sucking are as fun apart as they are in combo... and on that, well... I gotta get back and do some game prep, catch you later <<if $npc_technician.relationship.her_role == "dom">>Princess<<else>>hot stuff<</if>>.@@"
<</if>>
<br><br>
With a final longing glance she heads out of the cafe and across the mall.<br>
<br>
[<<moveTo "room_mall" "Be on your way." 180>>]
</div>/*#
#desc: massage technician foot before work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.foot>>
<<applyExperience 'foot' 7 'very' $INCOGNITO>>
<<applyExperience 'submission' 9 'normal' $INCOGNITO>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<else>>
<<incrementEmotion 'anger' 'npc_technician' 2>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.foot>>
You quickly slide under the desk as <<=setup.getNpcName("npc_technician","first")>> kicks out of her shoes.<br>
<br>
"@@.npc_technician;Yeeesssss,@@" she softly moans as soon as you fingers start roaming over her feet.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Good Princess, work those knots...@@"
<<case 'neutral' ''>>
"@@.npc_technician;Oh Goddess... your fingers are magical...@@"
<<case "sub">>
"@@.npc_technician;I know I should be the one serving you but... this feels so good... I'm the luckiest, most pampered slave in the world...@@"
<</switch>>
She whispers. As you go to work on her truly staggering tension — seriously her feet make the gordian knot look like a granny — you feel her almost melt between your fingers.<br>
<br>
<<if $npc_technician.relationship.kinks.foot>>
"@@.npc_technician;So... my love... you've done so well, but how do you feel from showing off your TRUE appreciation?@@" She walks her toes up your chest until they're almost to your face and you recall telling her how much you love feet...<br>
<br>
[<<moveTo "event_dataservice_technician_3_foot_2" "Worship dem feets." 600 "<<set $scene.foot=true>>">>]<br>
<<if setup.getTotalValue("foot") > 15>>
[@@.link_locked;Cannot resist feet...@@]
<<else>>
[<<moveTo "event_dataservice_technician_3_foot_2" "Actually, you probably need to get to work." 180 "<<set $scene.foot=false>>">>]
<</if>>
<<else>>
"@@.npc_technician;So good... @@" She softly moans as you finish with her feet and give a quick encore up and down her calves.<br>
<br>
The chair rolls away, moving her out of your reach as she pants. "@@.npc_technician;Mercy! You keep this up and I'm going to be a useless puddle for the rest of the day.@@"<br>
<br>
You grin and she helps you up just as another employee walks up holding their laptop.<br>
<br>
"@@.generic_male1;Uh... am I interrupting anything?@@" The <<man>> asks nervously.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> smiles back, your efforts seeming to have her floating in a fantastic mood. "@@.npc_technician;Nah, just <<if $npc_technician.relationship.relationship_stage == 0>>a friend<<else>>that my <<switch $npc_technician.flags.knowgender>><<case 'female'>>GIRLFRIEND<<case 'male'>>BOYFRIEND<<default>>sexy significant other<</switch>><</if>> was giving me a much-needed foot massage.@@"<br>
<br>
You blush and smile as the <<guy>> nods, a little intimidated by <<=setup.getNpcName("npc_technician","first")>> exuberance.<br>
<br>
"@@.generic_male1;Cool... so, uh, my laptop is running really slow, I think it might be the RAMS being overloaded? I read something that you could download more, but I think I need admin permissions?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> barely stifles her laughter. "@@.npc_technician;Yeah, give it here, I'll check it out.@@" She winks at you as if to say "@@.npc_technician;BDU's, amirite?@@"
<<if $npc_technician.relationship.relationship_stage > 0>>
You give her a quick kiss goodbye
<<else>>
Her words give you a sense of the tingles as you shuffle away
<</if>>
and leave her to her work.<br>
<br>
<<include "dataServiceVisit">>
<</if>>
<<else>>
You pause and reply that you should actually get to work.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> groans in frustration. "@@.npc_technician;Gah! You're killing me here. Like, blue balls, but for my poor, poor feet! Tortured all day and then just when they're about to get some loving? Betrayal!@@"<br>
<br>
You can't help but chortle slightly at her over-acted lament. "@@.npc_technician;You mock the great and powerful wizard? Begone foul demon!@@"<br>
<br>
She smiles to indicate that there aren't TOO hard feelings and you hurry on your way.<br>
<br>
<<include "dataServiceVisit">>
<</if>>
</div>/*#
#desc: technician foot kink before work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.foot>>
<<applyExperience 'foot' 15 'very' $INCOGNITO>>
<<applyExperience 'submission' 12 'normal' $INCOGNITO>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $npc_technician.relationship.kink_indulge.foot = true>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.foot>>
You spread your lips for her toes, kissing and sucking, whispering softly how much you love her feet, how beautiful they are from her rounded heel through her perfect arch and out to her delicious, cute and wonderful toesies.<br>
<br>
"@@.npc_technician;Mmm, you really know how to flatter a girl. Keep it up, you foot slut.@@" There's a playful edge to her words as she all but steps on your face, pushing both feet against you as you lean back, breathing heavily the whole time.<br>
<br>
The world flickers as you breath deep the scent of <<=ps(setup.getNpcName("npc_technician","first"))>> feet. This is where you belong, underfoot, worshipping, licking, kissing, a human footstool, chained to her chair to massage and venerate for hours and hours. To feet, you pray, to feet you serve, all glory to feet...<br>
<br>
You lose track of time, pretty sure <<=setup.getNpcName("npc_technician","first")>> actually took a call while you were engrossed in her tootsies...<br>
<br>
Breaking your reverie she slides her chair back. "@@.npc_technician;Okay acolyte of the ankle down — unfortunately I have to do an in-person stand-up and I think the team would look at me a bit askance if I did it by standing up on you. Thanks for your efforts though, my feet feel a-maze-ing. I almost don't mind slipping back into those devil heels!@@"<br>
<br>
She laughs as she waits for you to slip her shoes back on with a final kiss. She helps you back to your feet, giving you a hug and a kiss on the neck before hurrying off to her meeting."
<<else>>
You're tempted by her offer, but you've already spent some time massaging her feet and you explain you should get to work.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> sighs but slides her chair back and helps you up. "@@.npc_technician;Fair enough, you already worked your magic... in fact, if your fingers are on the other end of things... well, that's worth wearing heels for!@@"<br>
<br>
You laugh along with her and share a kiss before hurrying on your way.
<</if>>
<br><br>
<<include "dataServiceVisit">>
</div>/*#
#desc: suggest technician train in heels
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You mention <<=ps(setup.getNpcName("npc_technician","first"))>> difficulty in heels and she frowns, shifting somewhat bashfully as she replies, clearly discomforted at the thought of disappointing you. "@@.npc_technician;I... I know I should be better at it, I mean I see you prancing around with such ease and I'm like ZOMG... but every time I try my feet start staging a painful rebellion...@@"<br>
<br>
You ask if you could give her some lessons and she shifts even more nervously.<br>
<br>
"@@.npc_technician;Um, if my beloved <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> wishes... but I hope you don't have very high expectations... no pun intended.@@"<br>
<br>
[<<moveTo 'event_technician_heels_training_1_2' "Order her to fetch her steepest heels. It's practice time!" 300 "<<set $scene.practice=true>>">>]<br>
[<<moveTo 'event_technician_heels_training_1_2' "Perhaps you could practice some other night." 120 "<<set $scene.practice=false>>">>]
</div>/*#
#desc: technician shows you ballet boots
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.practice>>
You instruct to fetch her steepest heels for some training and she freezes, a slight fearful tremor in her voice as she replies.<br>
<br>
"@@.npc_technician;The steepest heels I own?@@" She replies. She gulps audibly, but rises to her feet and curtsies before you. "@@.npc_technician;If that is my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>'s command... I'll be right back.@@" She darts off to her bedroom.<br>
<br>
Your curiosity is piqued and you sit up as you wait for <<=setup.getNpcName("npc_technician","first")>> to return, waiting several minutes before she emerges to hand you a shoebox... within which you find a pair of what look to be brand-new, gorgeous high-end ballet ankle boots.<br>
<br>
You look in surprise that she'd own something like that, given her preferences. She hands them over for you to inspect as she quickly explains.<br>
<br>
"@@.npc_technician;Okay, so, like... I was taking a break while staying up really late studying for one of my exams and there was this clearance sale at this online fetish shop that was moving warehouses and, like... I wasn't in my right mind! Like, I didn't even remember I'd done it until they showed up a couple weeks later! I only tried to wear them once and ohmygod! I couldn't even stand they were so steep! So, like... I know how impressive it is that you can walk in them but...@@"<br>
<br>
She tapers off as you finish inspecting the actually quite high-quality boots as you point out that, really... she was wearing heels before you were, so it really is high time that she "caught up." She doesn't manage to come up with a refutation of your logic and you order her to put the ballet boots on.<br>
<br>
She bites her lip, but accepts the boots back as she sits on the floor to change shoes. "@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... only, I warn you that I'm going to look really embarrassingly bad...@@"<br>
<br>
You smile in comfort and reply that you're sure she'll look very hot... and even moreso after a few of your lessons.<br>
<br>
She shivers, nervous and excited all at once as she starts with the first shoe.<br>
<br>
Lending the benefit of your experience you have her add some toe gel pads for added support, then guide her through lacing each shoe as tight as they'll go... finishing off with a pair of locks at the ankle to leave her no choice but to walk or crawl.<br>
<br>
[<<moveTo 'event_technician_heels_training_1_3' "Time for her to stand..." 120>>]<br>
[<<moveTo 'event_technician_heels_training_1_abort' "Actually, this is enough for tonight." 60>>]
<<else>>
<<=setup.getNpcName("npc_technician","first")>> sighs with relief when you say that you'll have her practice some other night.<br>
<br>
"@@.npc_technician;Yeah... some other night, far, far in the future sounds much better.@@"<br>
<br>
She grins, confirming that she's at least somewhat joking and she cuddles in to see what you want to do instead.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: technician ballet training abort
#status: RELEASED 0.8.8.0
#ignore_spell: strats
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> she can take off the ballet heels and she sighs with relief, unlacing the shoes with a combination of glee and relief before carefully putting them back in their box and smiling awkwardly up at you.<br>
<br>
"@@.npc_technician;Thanks... I know I should be better in heels. I mean it's not just you, <<=setup.getNpcName("npc_rpg_warlock","first")>>, <<=setup.getNpcName("npc_barista","nickname")>>... hell, even <<=setup.getNpcName("npc_maid","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>> seem to be able to handle higher heels than me... but, still, just the work-mandated pair remains my nemesis, ballet boots... that's like the secret ultra-boss that you can't even think of attempting without maxing out the whole party and studying strats.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> puts the boots away and then snuggles up next to you back on the couch.<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: technician puts on ballet heels
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You admire how the steep heels look at the end of <<=ps(setup.getNpcName('npc_technician', 'first'))>> legs... and then you order her to stand.<br>
<br>
She stares up at you with a mix of fear and disbelief, but you are not about to let your slave merely sit through her training, so you reach down, helping her to her feet before taking a step back to see how she stands on her own.<br>
<br>
The answer is... not well as <<=setup.getNpcName('npc_technician', 'first')>> teeters with her legs splayed, back hunched and arms spread, constantly taking small adjustment steps as she wobbles like a newborn deer, looking ready to fall at any moment.<br>
<br>
"@@.npc_technician;I, uh, think these might be a bit beyond me, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...@@" <<=setup.getNpcName('npc_technician', 'first')>> notes nervously as she sways but manages to barely stay on her feet.<br>
<br>
<<printThought "Hmm... I remember she had a suspension hook in the bedroom... and I know she has a harness...">><br>
<br>
[<<moveTo 'event_technician_heels_training_1_4' "Nonsense! Just need some assistance..." 180>>]<br>
[<<moveTo 'event_technician_heels_training_1_abort' "That's enough for tonight." 60>>]
</div>/*#
#desc: technicain heel training: strung up
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 13 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO: npc_technician_suspended%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You do not allow your slave to fail so easily and you move next to her to lend a supporting hand for her to limp along with marginally increased confidence. Despite her focusing a bit more on walking rather than just not following she is still struggling and you end up half carrying her into the bedroom where you grant but a moment's reprieve for her to sit on the bed as you buckle a harness across her shoulders and partially suspend her from the ceiling.<br>
<br>
With a bit of adjustment <<=ps(setup.getNpcName('npc_technician', 'first'))>> weight is partially supported... but you frown at her utterly abysmal posture, even as she manages to stand without looking on the verge of collapse.<br>
<br>
"@@.npc_technician;So, uh... this is a little better? But I don't understand how anyone can walk on their toes like this! I promise I won't complain about my normal heels anymore if you just let me down...@@"<br>
<br>
[<<moveTo 'event_technician_heels_training_1_5' "Posture! The solution is posture!... and more bondage." 120>>]<br>
[<<moveTo 'event_technician_heels_training_1_abort' "That's enough for tonight." 60>>]
</div>/*#
#desc: technician heel training: bondage
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO: npc_technician_suspended%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You gently admonish your slave for attempting to give up so quickly, explaining that you are not going to let her fail so easily.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> bites her lip and replies "@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" in something between a lusty moan and a pained whine.<br>
<br>
Instructing her to continue to practice you head straight for <<=ps(setup.getNpcName('npc_technician', 'first'))>> expansive toy-chest to resolve her deplorable posture.<br>
<br>
A set of ankle cuffs resolves the problem of <<=ps(setup.getNpcName('npc_technician', 'first'))>> legs splaying out every which way, and a corset keeps her from curling her spine. An armbinder caps things off to get her flailing arms under control and keep her shoulders back. You smile, not only does she look absolutely gorgeous bound... the combination does an excellent job to have her standing up nice and straight.<br>
<br>
You step back a moment to admire your handiwork... and your absolutely lovely slave before deciding to finish things off with a large ball-gag as punishment for <<=ps(setup.getNpcName('npc_technician', 'first'))>> constant complaining.<br>
<br>
Drooling, and with her gaze heavy with lust, <<=setup.getNpcName('npc_technician', 'first')>> wobbles from one foot to the other until you move on to training proper — commanding her to practice walking in place, and then in a small circle. The whole time you offer <<=setup.getNpcName('npc_technician', 'first')>> encouragement and advice, even taking a couple of pictures to show her just how fantastic she looks in the steep heels and stunning corset.<br>
<br>
The combination of your dominance and the sight of her bound, helpless self proves quite the motivating combo and <<=setup.getNpcName('npc_technician', 'first')>> actually starts to manage to move with something resembling grace, and without relying too much on the harness for support.<br>
<br>
Despite her best efforts you can see her calves start to tremble, and you know that, obedience or no, <<=setup.getNpcName('npc_technician', 'first')>> is near her physical limit.<br>
<br>
[<<moveTo 'event_technician_heels_training_1_6' "Someone has earned a nice foot massage..." 600>>]
</div>/*#
#desc: foot massage after heel training
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 12 'very' $SEEN_FRIEND>>
<<set $npc_technician.relationship.kink_indulge.heels = 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO: npc_technician_suspended%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You give <<=setup.getNpcName('npc_technician', 'first')>> one final challenge as you unhook the harness and command her to stand on her own.<br>
<br>
Nervous at the challenge combined with her helplessly bound arms, fear seeps back into her eyes until you step in front of her. The gentle caress of her cheek combined with your look of loving, dominant compassion would probably have her swoon in any other situation... but <<=setup.getNpcName('npc_technician', 'first')>> is too focused on merely remaining standing, holding herself up for almost a minute longer before she starts to sway. Instantly, you pull her into your arms, letting her fall into you just long enough for you to support her weight and guide her down onto the bed.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> sighs with relief as the weight comes off her pointed feet... but you aren't done, immediately sliding to your knees to unlock and unlace the shoes.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> whimpers through her gag... and then moans in pleasure as you remove the heels and commence with one of your famous foot massages.<br>
<br>
At the touch of your nimble fingers <<=ps(setup.getNpcName('npc_technician', 'first'))>> tension evaporates, as you caress her arches, stretch her calves, work her heels and make sure every cute little toe gets its own personal massage sealed with a kiss.<br>
<br>
By the time you finish <<=setup.getNpcName('npc_technician', 'first')>> is all but a puddle, laid back on the bed and purring with pleasure. You crawl on top and finally remove her gag as her eyes flutter open and she smiles up at you. "@@.npc_technician;Goddess you're good... if that's my reward, well... maybe I can get used to heels like those.@@" She states as she glances past you to where the steep heels are neatly stood next to their box and seems to recalculate her ambitions. "@@.npc_technician;Well, for a little while at least.@@"<br>
<br>
You grin and lean down to kiss her on the forehead, and then step off to help her to her feet and remove the corset, harness and armbinder.<br>
<br>
You can't help but grin at <<=setup.getNpcName('npc_technician', 'first')>> standing on the balls of her feet, and she blushes and bites her lip before grabbing her work heels, rather than her normal, casual flat-wear.<br>
<br>
"@@.npc_technician;So, um... what now, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@" She asks, with a twinkle in her eye.<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: technician heel training repeatable
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.kink_indulge.heels == 2>>
<<set $npc_technician.relationship.kink_indulge.heels = 3>>
<</if>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
/%TODO: npc_technician_suspended%/
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You decide that it is time for <<=setup.getNpcName('npc_technician', 'first')>> to have some more ballet boot training. The two of you move straight to the bedroom as she obediently submits to her "practice" gear of boots, hobbles, corset, armbinder, suspension and, to her pouty insistence... gag.<br>
<br>
<<if $npc_technician.relationship.kink_indulge.heels >= 3>>
All the practice, and her locking heels committing her more strongly to daily practice has paid off as, though still having the occasional minor slip, <<=setup.getNpcName('npc_technician', 'first')>> strides tall and proud atop her heels as she smiles around her gag.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> stands tall and proud atop her heels as she smiles around her gag. She still sways more than would be safe without the safety of the suspension, and her stamina has quite a bit to go... but with each cute, mincing step you can tell she's making progress... though perhaps that is just because she knows that the harder she tries, the longer the reward massage will be at the end...
<</if>>
<br><br>
Once her calves start to tremble you let <<=setup.getNpcName('npc_technician', 'first')>> down and remove the ballet heels. She smiles as she wiggles her toes, and then her eyes roll back as you give her a massage and then remove the remainder of her restraints.<br>
<br>
Rejuvenated, she skips ahead of you back to the couch.<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: technician meets after work regarding heels
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<moveTo $scene.passthrough>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You step out into the lobby and find <<=setup.getNpcName("npc_technician","first")>>, looking a little wobbly, but still perched in her heels.<br>
<br>
"@@.npc_technician;Hi!...@@" She shouts before clomping over to you and adding "@@.npc_technician;...<<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I did as you said... but my heels are killing me! Once I get home... mmm, I am really looking forward to throwing these devilish things across the room and having a nice salty bath.@@"<br>
<br>
[<<moveTo 'event_technician_heels_shopping_2' "Take her to the mall for some better heels." 600 "<<set $scene.mall=true>>">>]<br>
[<<moveTo 'event_technician_heels_shopping_2' "Sit her down for a massage and then let her head home." 600 "<<set $scene.mall=false>>">>]
</div>/*#
#desc: take technician to the mall to buy heels
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.mall>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.mall>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_technician")>>
<<else>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.mall>>
You tell <<=setup.getNpcName("npc_technician","first")>> that, actually, you were thinking a trip to the mall was in order.<br>
<br>
She bites her lip, clearly eager to be done with her day of heels... but even more eager to spend time with you as she nods. "@@.npc_technician;Okay, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... but I'm hiring us a cab, if I tried to walk to the mall right now my legs would fall off!@@"<br>
<br>
A quick taxi ride later and then you're making for <<printShopName 'mall_shoe_store'>> where you confirm <<=ps(setup.getNpcName("npc_technician","first"))>> and start looking for heels that would look good on her.<br>
<br>
[<<moveTo 'event_technician_heels_shopping_3' 'Continue.' 300>>]
<<else>>
You note your slave's obvious distress and pull her aside to one of the benches in the lobby. Heedless of being in public, you drop to a knee and slip off her shoe for a gently massage that has her closing her eyes and biting her lip to suppress a moan.<br>
<br>
"@@.npc_technician;Oh, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>! I really needed that! You are just the best!@@"<br>
<br>
You slide her shoes back on and she pops back to her feet, looking significantly more balanced, if not quite totally comfortable.<br>
<br>
"@@.npc_technician;That was just what I needed for the trip home. Thanks again, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@" The replies as she starts to skip across the lobby... before remembering herself and chosing a more measured pace.<br>
<br>
You watch her go with a smile and start for the exit yourself.<br>
<br>
[<<moveTo 'company_lobby' "Continue." 60>>]
<</if>>
</div>/*#
#desc: technician suggested heels
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_technician") setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> has tried on at least a dozen pairs when <<=setup.getNpcName("npc_shoestore_manager","first")>> wanders over to see if she can help.<br>
<br>
Before <<=setup.getNpcName("npc_shoestore_manager","first")>> has even said a word she notices <<=ps(setup.getNpcName("npc_technician","first"))>> original heels and a look of horror passes over her face.<br>
<br>
"@@.npc_shoestore_manager;You were wearing these?@@" She asks incredulously.<br>
<br>
"@@.npc_technician;Yeah? They were affordable...@@" <<=setup.getNpcName("npc_technician","first")>> replies sheepishly.<br>
<br>
"@@.npc_shoestore_manager;Affordable? Try cheap, no, garbage, trash, a crime against feet everywhere! Come, I show you a pair of PROPER heels.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> glances at the store-owners towering footwear as the short woman storms off, and then <<=setup.getNpcName("npc_technician","first")>> hurries after, with you a step behind, your curiosity heightened.<br>
<br>
Dipping into the back room for a moment <<=setup.getNpcName("npc_shoestore_manager","first")>> steps back out bearing an absolutely stunning pair of patent stiletto heels that are easily twice the height of anything <<=setup.getNpcName("npc_technician","first")>> had even been willing to try after her long day.<br>
<br>
"@@.npc_shoestore_manager;You, wear these now.@@" <<=setup.getNpcName("npc_shoestore_manager","first")>> states without a hint of declining her offer being a possibility.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> stares at the heels with a mix of lust and fear, then at you where you nod permission. <<=setup.getNpcName("npc_technician","first")>> takes a deep breath and takes a seat, her foot sliding easily into one heel, then the other, puzzling over the ankle clasp for a moment before managing to get them to click closed.<br>
<br>
[<<moveTo 'event_technician_heels_shopping_4' 'The Tech Wizard Rises.' 600>>]
</div>/*#
#desc: buy technician heels
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.kink_indulge.heels = 2>>
<<addCredits -120>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_technician") setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> seems surprised at how the shoes feel initially, but you have a feeling she may chalk that up to being a bit numb after so many hours in heels. As she rises to her feet, however, a real look of shock appears on her face. "@@.npc_technician;What the heck—?@@" She takes an experimental step, swaying slightly, but with her ankle remaining far more in line than earlier. "@@.npc_technician;These are still a bit of a challenge to balance but... they're double the height of anything I've worn and yet—@@"<br>
<br>
"@@.npc_shoestore_manager;They feel better than some flats?@@" <<=setup.getNpcName("npc_shoestore_manager","first")>> interjects with a triumphant smile. "@@.npc_shoestore_manager;This is what happens when you have quality shoes, made by artisans... in the right size!@@"<br>
<br>
Pausing in her astonished steps <<=setup.getNpcName("npc_technician","first")>> looks over, suddenly nervous. "@@.npc_technician;Artisans? Um... how much do these cost? I mean I don't—@@"<br>
<br>
<<=setup.getNpcName("npc_shoestore_manager","first")>> waves her off. "@@.npc_shoestore_manager;For you? And all the business your friend has brought to my little shop? Compliments of the house, just give me your old shoes as trade-in. Not for any actual value, but so that I can burn them to cleanse the world of their evil.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> suppresses a chortle as she squats down (a move that causes <<=setup.getNpcName("npc_shoestore_manager","first")>> to wince, you notice) and hands over the offending footwear. "@@.npc_technician;Wow... um, thanks, I guess? So I can just... walk out of here in these?@@"<br>
<br>
"@@.npc_shoestore_manager;You actually do not have a choice, given that they lock.@@" <<=setup.getNpcName("npc_shoestore_manager","first")>> states with a smile, <<=ps(setup.getNpcName("npc_technician","first"))>> jaw drops in surprise as <<=setup.getNpcName("npc_shoestore_manager","first")>> hands you a small set of keys. "@@.npc_shoestore_manager;I shall trust your owner with the keys,@@" <<=setup.getNpcName("npc_shoestore_manager","first")>> states with a knowing twinkle in her eye.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blushes and then sputters a thanks that the store owner waves off before striding off to assist another customer.<br>
<br>
You decide on buying <<=setup.getNpcName("npc_technician","first")>> a second pair of heels more similar in height to her original pair, though that the helpful shoestore assistant assures will be far more comfortable than what <<=setup.getNpcName("npc_technician","first")>> was wearing before.<br>
<br>
Purchase made, and <<=setup.getNpcName("npc_technician","first")>> still with her new locked-on stilettos, you offer your slave your hand and lead her home. She, again, insists on a cab, but even so she is walking remarkably well up to her flat where you hand over the key and kiss her good evening as she notes that she has a bit of work to do for the coming weekend's game.<br>
<br>
[<<moveTo 'room_student_quarter' 'Head off.' 180>>]
</div>/*#
#desc: talk to technician about heels
#status: RELEASED 0.8.9.0
#ignore_spell: n
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up the progress <<=setup.getNpcName("npc_technician","first")>> has been making in heels... and note with appreciation that she chose to wear a nice pair of ten centimetre pumps to your coffee get-together.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blushes, un-crossing and re-crossing her feet under the table. "@@.npc_technician;Compared to what the waitstaff wear around here... to say nothing of yourself!@@"<br>
<br>
You smile wider and ask if she's ready to take the "next step" in her high-heel development.<br>
<br>
"@@.npc_technician;N-next step? I mean... sure, I know there's steeper heels than what I'm wearing but... I mean... I'm already practicing in ballet heels under your instruction, that's, like... the pinnacle!@@"<br>
<br>
[<<moveTo 'event_technician_heels_bed_heels_2' "Practice is one thing, if she's to truly master heels... she needs to maximise her training with some bed heels." 180 "<<set $scene.bedheels=true>>">>]<br>
[<<moveTo 'event_technician_heels_bed_heels_2' "You suppose she's doing well... for now." 180 "<<set $scene.bedheels=false>>">>]
</div>/*#
#desc: technician bed heels
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.bedheels>>
You note that, while periodic training has certainly proven its worth... for <<=setup.getNpcName("npc_technician","first")>> to really go to the "next level" more diligent work needs to be put in... and the perfect solution to THAT... is bed heels!<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lips, clearly nervous... but also VERY turned on.<br>
<br>
"@@.npc_technician;Um, well... if you think that's best, <<if $npc_technician.relationship.her_role == 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...<</if>> I mean... okay, I can't deny it anymore, seeing you wearing those things is SO FUCKING HOT, and even if I feel a bit crazy saying it... I really want to try them.@@"<br>
<br>
[<<moveTo 'event_technician_heels_bed_heels_3' "No time like the present to pop over to <<printShopName 'mall_shoe_store'>>..." 180 "<<set $scene.bedheels=true>>">>]<br>
[<<moveTo 'event_technician_heels_bed_heels_3' "Maybe some other time." 180 "<<set $scene.bedheels=false>>">>]
<<else>>
You congratulate <<=setup.getNpcName("npc_technician","first")>> again on her progress, and agree that, at least for now, it's best to just stay the course rather than move too fast.<br>
<br>
"@@.npc_technician;Move too fast? Is that a running in heels joke?@@" She laughs. "@@.npc_technician;Anyway, what else is going on with you?@@"<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
<</if>>
</div>/*#
#desc: technician bed heels
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.bedheels>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<else>>
<<set $player.location to "Cafe: Newtype IV">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.bedheels>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_shoestore_manager")>>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.bedheels>>
<<=setup.getNpcName("npc_technician","first")>> in nervous but <<if $npc_technician.relationship.her_role == 'sub'>>obedient<<else>>enthusiastic<</if>>... though her jitters may be partially from slamming back the rest of her Cofferasque and squaring up the bill before joining you for the short walk across the mall to <<printShopName 'mall_shoe_store' true>>.<br>
<br>
The shop entrance chime rings and <<=setup.getNpcName("npc_shoestore_manager","first")>> greets the two of you with a smile. "@@.npc_shoestore_manager;<<=$player.first_name>>! One of my favourite customers! And you brought your lovely friend, once again!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blushes as you explain that you're her for a pair of bed heels. <<=setup.getNpcName("npc_shoestore_manager","first")>> gets even more excited as she strides across the store in her towering platforms only to pause as she reaches for the box. "@@.npc_shoestore_manager;Actually... how about a proposal? <<=$player.first_name>> helped me out with some before and after marketing videos... would you be interested in something similar? I think the enthusiastic testimonial of someone that used to be a bit... anti-heel embracing the benefits of bed heels would really help hit some additional market segments... if you're up for it, I'll give you the bed heels for free.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> is already nodding eagerly, any trepidation about heels clearly erased by her in-the-moment excitement.<br>
<br>
[<<moveTo 'event_technician_heels_bed_heels_4' "Let's film a before video..." 300>>]
<<else>>
You tell <<=setup.getNpcName("npc_technician","first")>> that, on reflection, she should probably practice a bit more before taking the leap to bed heels.<br>
<br>
"@@.npc_technician;Well, you're the expert,@@" she says with a wink.<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
<</if>>
</div>/*#
#desc: talk to technician about ballet final
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_shoestore_manager","first")>> leads the way into the backroom with a smile. "@@.npc_shoestore_manager;I so love enthusiastic customers! We'll start with a quick demonstration of your handling of normal heels, then show how that doesn't really translate up to steeper stuff to demonstrate a pre-bed-heels starting point.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> nods in understanding and you flash her the double thumbs-up of encouragement before she carefully walks back and forth across the room.<br>
<br>
"@@.npc_shoestore_manager;Good, good, you look simply lovely in heels, such a crime that you avoided them for so long, but you are coming along well! Perhaps a bit more of a swing to the hip? Well, maybe just for special occasions...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blushes at the compliment, her prior reticence to heels getting pushed even further into the past.<br>
<br>
"@@.npc_shoestore_manager;Now, to show the limitations of skill transfer...@@" <<=setup.getNpcName("npc_shoestore_manager","first")>> hands over a pair of not just ballet boots... but heel-less ballet boots. <<=setup.getNpcName("npc_technician","first")>> gawks in astonishment before taking a seat for you to help lace them up... with a brief foot-rub to stretch out her arches before you swap her reasonable "day" heels for these sky-high pieces of art.<br>
<br>
Shoes in place, but your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> still seated, you step away and blow her a kiss as <<=setup.getNpcName("npc_shoestore_manager","first")>> starts the camera rolling once again.<br>
<br>
[<<moveTo 'event_technician_heels_bed_heels_5' 'Go <<=setup.getNpcName("npc_technician","first")>>!' 300>>]
</div>/*#
#desc: technician finishes her first ballet shoot
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.kink_indulge.heels = 4>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_technician_other_bed_heels')>>
<<set $npc_technician.themes.other[_themeId].repeatable = false>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_bed_heels_final'
7
'event_technician_heels_ballet_1'
true
>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Whatever grace <<=setup.getNpcName("npc_technician","first")>> had in heels goes out the window as she tries to balance in the heel-less ballet boots. Even her ballet practice proves for naught as you rush in to catch her during a near-fall when she tries to rest for a moment by settling back on non-existant heels.<br>
<br>
"@@.npc_shoestore_manager;I think that should be sufficient footage,@@" <<=setup.getNpcName("npc_shoestore_manager","first")>> states a minute later in an act of mercy. "@@.npc_shoestore_manager;Now you just need to stick to a proper bed heel schedule — every night! For at least a week! Once you're feeling confident come on back in, and we'll shoot an after showing off the near-miraculous benefits some nocturnal training can provide.@@"<br>
<br>
You help <<=setup.getNpcName("npc_technician","first")>> back to a chair to remove the ballet boots, <<=setup.getNpcName("npc_technician","first")>> gratitude shooting even higher as you give her feet and calves a nice massage before helping her back into her normal heels.<br>
<br>
"@@.npc_technician;Whew, I'm not sure if I'm actually getting used to heels... or I'm just addicted to your magical fingers... either way, well...@@" She takes a deep breath as <<=setup.getNpcName("npc_shoestore_assistant","first")>> appears to hand over the bed heels.<br>
<br>
"@@.npc_technician;Well, I better be getting these home,@@" <<=setup.getNpcName("npc_technician","first")>> states, with a nod to the unwieldy box. "@@.npc_technician;I'll catch you later<<if $now.getUTCDay() == 6 && ($currentTasks.hasOwnProperty("technician_roleplay_surgery") && !$currentTasks.technician_roleplay_surgery.finished || $currentTasks.hasOwnProperty("technician_roleplay_1") && !$currentTasks.technician_roleplay_1.finished || $currentTasks.hasOwnProperty("technician_roleplay_punish_1") && !$currentTasks.technician_roleplay_punish_1.finished || $currentTasks.hasOwnProperty("rpg_session_gangbang") && !$currentTasks.rpg_session_gangbang.finished)>> this evening at game<</if>>!@@" States, giving you a parting hug before heading off.<br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: talk to technician about ballet final
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up the "bed heels" arrangement and <<=setup.getNpcName("npc_technician","first")>> all but beams with pride. "@@.npc_technician;Let me tell you... those things are the devil! Some nights I was lying awake, oh-so-tempted to bust out the old lockpicks...@@" She bites her lip "@@.npc_technician;But holy fuck do they work! Like, I actually came home from work the other night and just... slapped on my ballet boots and it was almost EASY!@@"<br>
<br>
You grin with excitement, congratulating her about her progress... and asking if she's up for doing the "after" video shoot?<br>
<br>
"@@.npc_technician;Call me crazy... but I'm actually kind of excited to see how I fare in those intimidating no-heel ballet boots? So... I'm up for it, if you are...@@"<br>
<br>
[<<moveTo 'event_technician_heels_ballet_2' "To <<printShopName 'mall_shoe_store'>>!" 180 "<<set $scene.bedheels=true>>">>]<br>
[<<moveTo 'event_technician_heels_ballet_2' "Maybe some other time." 180 "<<set $scene.bedheels=false>>">>]
</div>/*#
#desc: technician does ballet final
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "heelless_ballet_shoes_pink">>
<<wearItem "heelless_ballet_shoes_pink" true>>
<</if>>
<<if $scene.shoot>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<else>>
<<set $player.location to "Cafe: Newtype IV">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.shoot>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager") setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.bedheels>>
Back at the shoestore <<=setup.getNpcName("npc_shoestore_manager","first")>> brings you straight to the back-room where she hands both you and <<=setup.getNpcName("npc_technician","first")>> identical heel-less ballet boots.<br>
<br>
"@@.npc_shoestore_manager;What's more impressive than one bed-heel-trained toe-balancing expert... than two of them?@@" <<=setup.getNpcName("npc_shoestore_manager","first")>> notes with a smile as you and <<=setup.getNpcName("npc_technician","first")>> take a seat and get changed.<br>
<br>
<<=setup.getNpcName("npc_shoestore_manager","first")>> skips over behind the camera and you and <<=setup.getNpcName("npc_technician","first")>> share a final glance before <<=setup.getNpcName("npc_shoestore_manager","first")>> calls out "@@.npc_shoestore_manager;action!@@"<br>
<br>
[<<moveTo 'event_technician_heels_ballet_3' "Show the world what bed-heel training can REALLY do." 900>>]
<<else>>
You decide that <<=setup.getNpcName("npc_technician","first")>> could do with a bit more bed heel training.<br>
<br>
"@@.npc_technician;Right... not like you aren't getting off on the idea of me locking myself in those evil heels every evening... but sure "more training," it is<<if $npc_technician.relationship.her_role == 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...<</if>>@@"<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
<</if>>
</div>/*#
#desc: technician does ballet final show off
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.kink_indulge.heels = 5>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_technician_other_bed_heels_final')>>
<<set $npc_technician.themes.other[_themeId].repeatable = false>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager") setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_shoestore_assistant")>>
<div id="invframe" class="scrolltext">
With only the slightest of wobbles on <<=ps(setup.getNpcName("npc_technician","first"))>> part, the two of you rise to your toes, take one another by the hand... and start to move.<br>
<br>
First walking, then prancing the two of you show off your adroit skills as you enter a sort of impromptu dance, spinning on your toes and skipping around the room in artistic mimicry of an actual ballet performance as you show off the exquisite ability gifted by your the combination of bed heels and diligent practice.<br>
<br>
<<=setup.getNpcName("npc_shoestore_assistant","first")>> appears to join her wife in applause as you and <<=setup.getNpcName("npc_technician","first")>> come to the end of your improvised routine. "@@.npc_shoestore_manager;Glorious, glorious!@@" The store owner states in congratulations. "@@.npc_shoestore_manager;You may keep the heels, a reward well earned by such a magnificent display!@@"<br>
<br>
Figuratively coming back down to earth after her performance <<=setup.getNpcName("npc_technician","first")>> blushes and almost stumbles, but you and <<=setup.getNpcName("npc_shoestore_assistant","first")>> are both there to catch and guide her back to a chair as she takes a deep breath. "@@.npc_technician;Wow! I don't know quite where I got the inspiration for that... but I'm definitely going to want a copy of that recording!@@"<br>
<br>
Laughs are had by all and you follow up by giving <<=setup.getNpcName("npc_technician","first")>> another cherished foot massage as the shop-keepers head back to the store and then <<=setup.getNpcName("npc_technician","first")>> heads home.<br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: software update email
#status: WRITTEN 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're working along as usual when you get an alert for an URGENT EMAIL, REQUIRES ACTION IMMEDIATE!<br>
<br>
You open the email to find that it concerns an apparently very important software security update, with an included link to download the fix.<br>
<br>
[<<moveTo 'event_technician_humiliation_2' 'Click the link.' 180 "<<set $scene.click='yes'>>">>]<br>
[<<moveTo 'event_technician_humiliation_2' 'Ignore the email.' 180 "<<set $scene.click='ignore'>>">>]<br>
[<<moveTo 'event_technician_humiliation_2' 'Forward it to IT as suspicious.' 180 "<<set $scene.click='report'>>">>]
</div>/*#
#desc: handle software update email
#status: WRITTEN 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.click>>
<<case 'yes'>>
<<applyExperience 'humiliation' 12 'normal' $ALONE>>
<<case 'report'>>
<<applyExperience 'smart' 11 'normal' $ALONE>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<switch $scene.click>>
<<case 'yes'>>
You click the link and your computer all but explodes with pop-up alerts.<br>
<br>
You try to close the windows but they're spamming faster than you can click, a mix of virus notifications and YOUR DATA HAS BEEN STOLEN notifications that conclude with a single full-screen error that locks your machine.<br>
<br>
"@@.computer;This was a randomised test of your ability to adhere to proper security protocol... and you failed. To recover your machine you will need to bring it in person to an IT professional. Your case has been assigned to <<=setup.getNpcName("npc_technician","other")>>. Please proceed to her desk for manual service at your soonest available convenience.@@"
<<case 'ignore'>>
You just close the email and get back to work... only for your computer to freeze a few minutes later with a full-screen error.<br>
<br>
"@@.computer;This was a randomised test of your ability to adhere to proper security protocol... your actions have awarded partial credit — proper procedure says you should forward any suspicious messages to the security department for analysis. While you did not fail the task, we have detected that your machine is in need of maintenance that will require an in-person visit to the IT department. Your case has been assigned to <<=setup.getNpcName("npc_technician","other")>>. Please proceed to her desk for manual service at your soonest available convenience.@@"
<<case 'report'>>
You recall proper company security procedure and dutifully forward the email to the security team.<br>
<br>
A minute later you get a personal "@@.npc_technician;Congrats!@@" message from "@@.npc_technician;<<=setup.getNpcName("npc_technician","other")>>.@@"<br>
<br>
"@@.npc_technician;Hey, so good job practicing security hygiene, good to know you didn't forget IT basics in your new job! That said... well, I arranged this as an excuse to get you to come down here, so, even though you passed, I've filed a ticket on your behalf for some basic maintenance — maintenance that needs to be done "in person." I'll see you soon!@@"
<<default>>
ERROR: unexpected scene.click <<=$scene.click>>
<</switch>>
<br><br>
<<if $scene.click != "report">>
<<printThought 'Hmm... did <<=setup.getNpcName("npc_technician","other")>> arrange this whole thing on purpose?'>><br>
<br>
<</if>>
[<<moveTo 'event_technician_humiliation_3' 'Ask <<=setup.getNpcName("npc_manager","formal")>> for permission to go downstairs.' 180>>]
</div>/*#
#desc: ask manager to visit technician for maintenance
#status: WRITTEN 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You pop into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> to let her know that you need to take your laptop in for maintenance, if that is alright?<br>
<br>
"@@.npc_manager;Yes, the work order was forwarded to me. Everything would seem to be in order, though it does frustrate me that our IT department is unable to handle things remotely... or just send someone up. Perhaps we should expand hiring, this sort of inefficiency is good for no one.@@"<br>
<br>
She waves you off. "@@.npc_manager;Hurry on, I shall get by without you... but I would rather do such for as brief a period as possible.@@"<br>
<br>
You curtsy, grab your laptop, and head for the elevator.<br>
<br>
[<<moveTo 'event_technician_humiliation_4' 'Head downstairs.' 300>>]
</div>/*#
#desc: visit technician about computer
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
The elevator ride passes swiftly and you make your way to <<=ps(setup.getNpcName('npc_technician', 'formal'))>> cube where she is sitting in wait, a wide, devilish grin on her face.<br>
<br>
"@@.npc_technician;Welcome, welcome — to the domain of the Tech Wizard! If you would kindly hand over your machine I will get to fixing it up... and you can get to showing your appreciating by doing me a teensy little favour...@@"<br>
<br>
[<<moveTo 'event_technician_humiliation_5' 'Ask what she wants.' 300 "<<set $scene.crawl=false>>">>]<br>
[<<moveTo 'event_technician_humiliation_5' 'Just crawl under her desk.' 300 "<<set $scene.crawl=true>>">>]
</div>/*#
#desc: technician gives you quest
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.crawl>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<addItem "technician_panty_gag">>
<<wearItem "technician_panty_gag" true>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.crawl>>
You start to lean down to crawl under <<=ps(setup.getNpcName('npc_technician', 'formal'))>> desk, but she stops you. "@@.npc_technician;Now THAT is a tempting offer... but, no, I have a more interesting task for you today.@@"
<<else>>
You ask what <<=setup.getNpcName('npc_technician', 'formal')>> would have you do?<br>
<br>
"@@.npc_technician;Oh I just love what an obedient slave you are — my wonderful, cute, special <<if $fetish.sissy>>sissy <</if>>Princess!@@"
<</if>>
<br><br>
She pops open your laptop and plugs things in to start an update before looking up at you. "@@.npc_technician;So one of my coworkers, <<if $options.fem>><<=setup.getNpcName("generic_male1", "custom", "Sarah")>><<else>><<=setup.getNpcName("generic_male1", "custom", "Steve")>><</if>>, borrowed a tool a week ago, and they haven't given it back. Their desk is way on the other side of the floor — such a long walk in these evil heels... how about you be a dear and pick it up for me? Oh... and to make things interesting,@@" she grins and rises to her feet. "@@.npc_technician;Open.@@"<br>
<br>
You obediently open your mouth on reflex and she shoves something soft into it...<br>
<br>
<<printThought "Wait, are these?">><br>
<br>
Your eyes light up in recognition of the slightly salty flavour filling your mouth as you realise that you're gagging on her panties. "@@.npc_technician;That should make your boring little fetch quest more interesting, now hurry up! I've got work to do!@@"<br>
<br>
[<<moveTo 'event_technician_humiliation_6' 'Head to the other side of the office.' 300>>]<br>
[<<moveTo 'event_technician_humiliation_abort' "Actually... you don't want to do this." 300 "<<set $scene.abort_stage=1>>">>]
</div>/*#
#desc: abort technician, return to desk
#status: WRITTEN 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "technician_panty_gag" true>>
<<deleteItem "technician_panty_gag">>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<switch $scene.abort_stage>>
<<case 1>>
You delicately spit out <<=ps(setup.getNpcName('npc_technician', 'formal'))>> panties and quietly explain that you don't feel like doing this today.<br>
<br>
She frowns, but seeming more in disappointment with herself than with you.
<<case 2>>
You change your mind and run back to <<=setup.getNpcName('npc_technician', 'formal')>> where she frowns slightly and has you spit out her panties.
<<case 3>>
You blanch in embarrassment at <<if $options.fem>><<=ps(setup.getNpcName("generic_male1", "custom", "Sarah"))>><<else>><<=ps(setup.getNpcName("generic_male1", "custom", "Steve"))>><</if>> proposal and practically sprint back to <<=ps(setup.getNpcName('npc_technician', 'formal'))>> where she looks at you with concern as she has you spit out the panties.
<<default>>
ERROR: unexpected scene.abort_stage <<=$scene.abort_stage>>
<</switch>>
"@@.npc_technician;Dang, when you mentioned you were into humiliation I thought this would be fun... but if you're not up for it, you aren't up for it. Maybe some later day.@@"<br>
<br>
She taps a few more times on your laptop then closes it up and hands it back. "@@.npc_technician;There you go, all done. I'll let you head back up to work.@@"<br>
<br>
You apologise for ruining her plans but she reassures you that everything is fine before shooing you back to the elevator.<br>
<br>
The elevator ride passes uneventfully and you plug your machine back in.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: cross office to get technician tool
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 10 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You leave <<=ps(setup.getNpcName('npc_technician', 'formal'))>> cube and almost bump into another employee. You barely keep control of yourself and mumble an apology through your invisible gag — drool already starting to gather in your mouth as you hurry on your way, too many people about for you to even consider spitting out your payload as you head across the floor to <<if $options.fem>><<=ps(setup.getNpcName("generic_male1", "custom", "Sarah"))>><<else>><<=ps(setup.getNpcName("generic_male1", "custom", "Steve"))>><</if>> cube, trying not to make eye contact with anyone as your heart thumps faster.<br>
<br>
[<<moveTo 'event_technician_humiliation_7' 'Continue to <<if $options.fem>><<=ps(setup.getNpcName("generic_male1", "custom", "Sarah"))>><<else>><<=ps(setup.getNpcName("generic_male1", "custom", "Steve"))>><</if>> desk.' 300>>]<br>
[<<moveTo 'event_technician_humiliation_abort' 'Abort! Flee back to <<=ps(setup.getNpcName("npc_technician", "formal"))>>.' 300 "<<set $scene.abort_stage=2>>">>]
</div>/*#
#desc: meet dude for technician humiliation quest
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImageGeneric("cds_dude")>>
<div id="invframe" class="scrolltext">
You arrive at <<if $options.fem>><<=ps(setup.getNpcName("generic_male1", "custom", "Sarah"))>><<else>><<=ps(setup.getNpcName("generic_male1", "custom", "Steve"))>><</if>> cube. You didn't recall <<his>> name, but seeing <<him>> in person you recognise the face as <<he>> grins up at you, clearly having expected you... even as <<he>> feigns ignorance, all the while a pair of wire crimpers with the words "@@.npc_technician;Tech Wizard@@" are sitting on <<his>> desk.<br>
<br>
"@@.generic_male1;Can I help you Miss...@@" <<his>> question trails off, but with your gag you have no real way to respond save to point at the wire crimpers while you stand in silence as you hope <<he>> just figures out what's going on.<br>
<br>
"@@.generic_male1;Hmm... cat got your tongue?@@" <<He>> chuckles, <<his>> smirk erasing any doubt that <<he>> wasn't playing things up for you... a fact that somehow only makes the situation more embarrassing.<br>
<br>
"@@.generic_male1;Still a mute? Well I am afraid I cannot help you. If you are going to just waste my time I would ask you to move on so I can get back to my work.@@"<br>
<br>
You're getting annoyed and you snort loudly and point at the tool plainly sitting on <<his>> desk.<br>
<br>
<<He>> finally turns to see what you're pointing at and feigns surprise. "@@.generic_male1;Ah!, That's right, <<=setup.getNpcName('npc_technician', 'first')>> said she would be sending someone by to pick these up.@@" <<He>> turns the crimpers over in <<his>> hand as <<he>> thinks. "@@.generic_male1;Yes, her exact words were that she would be sending over her <<if $fetish.sissy>>sissy <</if>><<if $fetish.slurs>>faggot <</if>>slave to take delivery...@@"<br>
<br>
<<He>> accentuates the word slave with a grin as <<he>> tightens <<his>> grip on the crimpers and looks up at you. "@@.generic_male1;I suppose you look the part... but we have never really been properly introduced, and I would hate to accidentally give away her tool to some rando... Tell you what —
<<if setup.checkItemTypeWorn("cage")>>
she said she kept her slave locked in chastity for security. Now I doubt anyone else would agree to wear something so humiliating and restrictive... so how about you show me your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> and
<<elseif $fetish.sph && $player.body_ref.penis && $player.body.penissize[0] <=3>>
she said her slave had the cutest little <<getWordMyPenis>>... and she really emphasised the "little" part. How about you show me <<if $player.body_ref.shrink_style=='sph'>>your pathetic thing<<else>>your tiny treasure<</if>> and
<<else>>
she said she keeps her slave plugged at all time so that they're always ready to get bent over and butt-fucked like the <<if $fetish.sissy>>sissy <</if>><<if $fetish.slurs>>faggot<<else>>slut<</if>> that they are. Show me that your ass is filled and
<</if>>
we'll call that good for proof of identification?@@"<br>
<br>
[<<moveTo 'event_technician_humiliation_8' 'Do as <<he>> asked...' 300>>]<br>
[<<moveTo 'event_technician_humiliation_abort' 'Abort! Flee back to <<=ps(setup.getNpcName("npc_technician", "formal"))>>.' 300 "<<set $scene.abort_stage=3>>">>]
</div>/*#
#desc: talk to dude for technician humiliation quest
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 16 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImageGeneric("cds_dude")>>
<div id="invframe" class="scrolltext">
You glance around and then <<if $player.flags.humiliationStyle == "brazen">>stare confidently back<<else>>bashfully look away<</if>> as you
<<if setup.checkItemTypeWorn("cage")>>
carefully raise your skirt <<if setup.checkItemTypeWorn("panties")>>and pull your panties to the side <</if>>to reveal your <<if setup.isCage()>><<getWordMyPenis>><<else>>chastity belt<</if>>.
<<elseif $fetish.sph && $player.body_ref.penis && $player.body.penissize[0] <= 3>>
carefully raise your skirt <<if setup.checkItemTypeWorn("panties")>>and pull your panties to the side <</if>>to reveal your <<getWordMyPenis>>
<<else>>
turn and lift your skirt <<if setup.checkItemTypeWorn("panties")>>and pull your panties to the side <</if>>to show off the <<=setup.getItemTypeName('plug')>> currently occupying your hole.
<</if>>
<br><br>
There's a flash and <<if $options.fem>><<=setup.getNpcName("generic_male1", "custom", "Sarah")>><<else>><<=setup.getNpcName("generic_male1", "custom", "Steve")>><</if>> laughs as <<he>> puts <<his>> phone away and you blush, barely remembering not to open your mouth to object as that would only deepen your humiliation with the reveal of the saliva-soaked wad of panties filling your mouth.<br>
<br>
"@@.generic_male1;Hey! Trust, but verify!@@" <<He>> explains "@@.generic_male1;I'll just shoot this picture over to <<=setup.getNpcName('npc_technician', 'first')>> to confirm your identity. Can't be too careful!@@"<br>
<br>
<<printThought "Wait... couldn't <<he>> have just taken a picture of my face for that?">><br>
<br>
You glare at <<him>> as <<he>> taps at <<his>> phone.<br>
<br>
"@@.generic_male1;Ah, you're in luck! <<=setup.getNpcName('npc_technician', 'first')>> says she'd recognise
<<if setup.checkItemTypeWorn("cage")>>
her locked property
<<elseif $fetish.sph && $player.body_ref.penis && $player.body.penissize[0] <= 3>>
that pathetic thing
<<else>>
that fuckable butt
<</if>>
anywhere, so I guess this is yours.@@" <<He>> hands you the crimper at last.<br>
<br>
You turn to go and <<he>> gives you a slap on the ass, grinning gleefully back when you look back. "@@.generic_male1;What? You're done here, hurry off, slave.@@"<br>
<br>
You snort and hurry away to the trailing sound of <<his>> laughter, eager to return to your <<=setup.getNpcName('npc_technician', 'title')>>, your quest successful.<br>
<br>
[<<moveTo 'event_technician_humiliation_9' 'Hurry back to <<=setup.getNpcName("npc_technician", "formal")>>.' 300>>]
</div>/*#
#desc: technician return from technician quest
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.kink_indulge.humiliation = true>>
<<include "checkTechnicianBarterEvent">>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You hurry back to where <<=setup.getNpcName('npc_technician', 'formal')>> greets you with a proud smile. "@@.npc_technician;Ah! The valiant Princess doth return! Did you enjoy your quest, debasing yourself for your <<=ps(setup.getNpcName('npc_technician', 'title'))>> pleasure?@@"<br>
<br>
You blush harder and <<=setup.getNpcName('npc_technician', 'formal')>> smiles wider as she tosses the crimper into a drawer and hands you back your laptop. "@@.npc_technician;Wonderful... well, you had better get back upstairs before your boss goes missing you. They say a man cannot serve two masters... but it would seem that <<if $fetish.sissy>>sissies<<else>>good girls<</if>> are more capable! Oh, and you can keep my panties. I've been wearing them for a couple days, not really worth the bother of even washing them now.@@"<br>
<br>
You shudder, barely managing to swallow the saliva-<<=setup.getNpcName('npc_technician', 'first')>> stew filling your mouth lest you drool down your chin. You curtsy in thanks and head for the elevator, laptop in hand. The doors close and you finally have the privacy to spit, pocketing the wad of soaked underthings.<br>
<br>
[<<moveTo 'event_technician_humiliation_10' 'Return to your desk.' 300>>]
</div>/*#
#desc: return to desk after technician humiliation quest
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "technician_panty_gag" true>>
<<deleteItem "technician_panty_gag">>
<<addItem "panties_technician">>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_technician">>
<<set _pantiesowner_formal = "first">>
<<include "stealPanties">>
<<include "addTechnicianPiss">>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ride back up to your floor and take a seat at your desk, finally catching your breath as you unfold your laptop and plug things back in... only to be surprised by a text.<br>
<br>
You pull out your phone to find a picture of
<<if setup.checkItemTypeWorn("cage")>>
your <<if setup.isCage()>><<getWordMyPenis>><<else>>chastity belt<</if>>.
<<elseif $fetish.sph && $player.body_ref.penis && $player.body.penissize[0] <= 3>>
your <<getWordMyPenis>>.
<<else>>
your plugged bum.
<</if>>
<br><br>
"@@.npc_technician;Gotta say — <<if $options.fem>><<=setup.getNpcName("generic_male1", "custom", "Sarah")>><<else>><<=setup.getNpcName("generic_male1", "custom", "Steve")>><</if>> may be shitty at returning property, but <<hes>> a damn good photographer! Hope you enjoyed our little spot of fun my degenerate Princess, see you later!@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<completeWorkEvent>>">>]
</div><<if $npc_technician.relationship.kink_indulge.humiliation && $npc_technician.relationship.kink_indulge.bdsm && $npc_technician.relationship.kink_indulge.cum >= 2 && $npc_technician.relationship.kink_indulge.bimbofication.you && $npc_technician.relationship.kink_indulge.whore >= 2>>
<<addWorkEvent 'technician_barter_1'>>
<</if>>/*#
#desc: contacted with condom full of cum
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEvent "technician_barter_2">>
<<set $scene.technicianBarterIntro=true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
As you're working during the morning you get an inter-office mail. You double check to confirm that it's addressed to you, and not <<=setup.getNpcName("npc_manager","formal")>>, and then open it to find a note... and a tied-off condom.<br>
<br>
"@@.npc_technician;Heya hot stuff, though you could use a snack to get through the morning... if you'd like some more I'll be in the canteen at lunch. I've got a proposal for you...@@"<br>
<br>
You shift in your seat with arousal, eagerly untying the gift and slurping up the familiarly delicious glob of <<=setup.getNpcName("npc_technician","formal")>> lady liquor.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: meet in canteen
#status: RELEASED 0.9.0.0
#ignore_spell: akiko,hayashi,mayumi,mercuria
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.evil == 1>>
<</if>>
<</if>>
<<set $player.location = "Company Canteen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You find <<=setup.getNpcName("npc_technician","formal")>> in the company canteen and she waves you over to her table with a smile, having already ordered you lunch.<br>
<br>
<<if $scene.technicianBarterIntro>>
"@@.npc_technician;I take it you got my message?@@"
<<else>>
"@@.npc_technician;Couple days late, eh? That's okay. You're always worth the wait.@@"
<</if>>
<br><br>
You take a seat and she leans in to explain.<br>
<br>
"@@.npc_technician;So here's the deal. I've been trying to get a certain rare Pretty Maiden Mayumi Mercuria figurine to complete my collection. It's a limited edition statue of her final form that they only distributed at a convention, and because of work-ahead issues it's actually a slightly different colour pallet than the one that was in the finale. There was a second run that matched the show but those limited edition first ones are like the holy grail for collectors and plus... I actually kind of prefer it to the show version...@@" she pauses, blushing slightly as she gets back on track. "@@.npc_technician;Sorry, Akiko Hayashi is, like... one of my favourite characters, so I can get a little passionate. ANYWAY, the reason I wanted your help is that I finally found a figurine for sale, and the seller actually works for the company! But, well... that's where things went a bit awry. See I decided to do a little bit of snooping, only it seems they are a bit of a hacker, too... and a pretty good one, given they found me out! Long story short... now they're demanding that I pay up "in kind," namely, that since I tried to "cheat" them, they want to "cheat" me... by fucking my <<=setup.getBoyGirl($npc_technician)>>friend! i.e.: you.@@"<br>
<br>
She takes a deep breath to let things set in as she bites her lip and grins. "@@.npc_technician;Of course... maybe jokes on them, given how much of a kinky slut you are, and I love you for being... you up for a few minutes of "work" doing what you already do best so I can score a proverbial holy grail for my collection?@@"<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
[<<moveTo "event_technician_humiliation_barter_intro_3" 'As my <<=setup.getNpcName("npc_technician","title")>> wills it.' 120 "<<set $scene.accept=true>>">>]<br>
<<case '' 'neutral'>>
[<<moveTo "event_technician_humiliation_barter_intro_3" 'Sure!' 120 "<<set $scene.accept=true>>">>]<br>
<<case "sub">>
[<<moveTo "event_technician_humiliation_barter_intro_3" "So long as she doesn't get any rebellious ideas..." 120 "<<set $scene.accept=true>>">>]<br>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
[<<moveTo "event_technician_humiliation_barter_intro_3" "You'd rather not." 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: agree to technician need to sell you
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_barter_3'>>
<</if>>
<</if>>
<<set $player.location = "Company Canteen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_technician") setup.charImageGeneric("generic_coworker_male")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin, and reply that, of course you'll help your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","title")>>
<<case '' 'neutral'>>
girlfriend
<<case 'sub'>>
slave
<<default>>
ERROR; unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
out.<br>
<br>
"@@.npc_technician;Oh, I just knew you'd be up for it! Oh, this is going to be so much fun! I'm almost as excited to watch you do your magic as I am to finally lay hands on my favourite magical girl... in her most spectacular form! Oh, I remember when that episode aired, she hadn't transformed all series and it was SO worth the wait, online just exploded and...@@" <<=setup.getNpcName("npc_technician","first")>> takes a deep breath. "@@.npc_technician;Sorry... thanks again for agreeing to this. I'll make arrangements and catch you after work sometime when it's all ready, until then, well...@@" She looks side to side and grins. "@@.npc_technician;I said I had more for you, so...@@"
<<else>>
You reply that this is sounding like a bit more than you're up for. "@@.npc_technician;Dang, alright... guess it's back to bartering, I'll win my prize someday! But I still promised you something more so...@@"
<</if>>
She slides a small vial across the table. "@@.npc_technician;Enjoy the special sauce, I, unfortunately, need to get back to work.@@"<br>
<br>
She stands up and gives you a kiss before darting away, leaving you to quickly wolf down cream-enhanced meal, wondering if anyone else in the canteen noticed the addition...<br>
<br>
Taking care of your tray you take a moment to recall <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch order...<br>
<br>
<<include "buyFoodOptions">>
</div>/*#
#desc: technician meets for sales task
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<removeRandomEvent 'elevator_home' 'technician_barter_3'>>
<<addRandomEvent $randomEvents['elevator_home'] 'technician_barter_3'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You step out of the elevator to find a grinning <<=setup.getNpcName("npc_technician","first")>> waiting for you.<br>
<br>
"@@.npc_technician;So that thing I asked you for help with, getting that troublesome coworker to sell me a figurine... you ready to take care of business?@@"<br>
<br>
[<<moveTo "event_technician_humiliation_barter_2" "Let's do this! Or <<him>>, you suppose." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_humiliation_barter_2" "Not today..." 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: agree to technician need to sell you
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location = "Company Office">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician") setup.charImageGeneric("generic_coworker_male")>>
<<else>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You tell <<=setup.getNpcName("npc_technician","first")>> that you're good to go and she grins, giving you a kiss for luck and leading you back to the elevator.<br>
<br>
You travel up a couple dozen floors and weave through cube-town to come to an office, <<=setup.getNpcName("npc_technician","first")>> flashing a smile of encouragement before you head inside and meet your target, a normal looking <<if $options.fem>>lady<<else>>dude<</if>> who you figure is some sort of engineer, not high enough to have been exposed to the debauchery of the company, but clearly full of <<him>>self and showing off by decorating <<his>> office in full geek-shrine.<br>
<br>
Sitting behind <<his>> desk the <<man>> leers at you and then chuckles as <<he>> looks at <<=setup.getNpcName("npc_technician","first")>>. "@@.generic_male1;Wow, you're really doing this... offering up your girlfriend for a trinket.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lips as you realise she's both playing a role... and angling to keep the engineer from seeing the bulge of her raging hard-on. "@@.npc_technician;I, um... REALLY want that figurine...@@"<br>
<br>
The <<guy>> laughs, "@@.generic_male1;well come on then, give <<if $fetish.daddy>><<daddy>><<else>>me<</if>> a lap-dance and you—@@" <<he>> gestures for you to come over to <<him>> as <<he>> taunts <<=setup.getNpcName("npc_technician","first")>>. "@@.generic_male1;You better not look away, you wanted to spy on me? Well... keep watching...@@"<br>
<br>
All eyes are on you as it's time to make good on <<=ps(setup.getNpcName("npc_technician","first"))>> bargain...<br>
<br>
[<<moveTo "event_technician_humiliation_barter_3" 'Give the <<man>> a lap dance.' 180>>]<br>
[<<moveTo "event_technician_humiliation_barter_abort" 'Abort!' 180>>]
<<else>>
You tell <<=setup.getNpcName("npc_technician","first")>> that today isn't a good day.<br>
<br>
"@@.npc_technician;Gotcha, gotcha... well, I've waited this long, I can restrain myself for a bit longer. I'll check <<his>> schedule and hit you up some other time, catch you later!@@"<br>
<br>
She gives you a kiss and darts off.<br>
<br>
<<include "printHomeShortcutChoice">>
<</if>>
</div>/*#
#desc: abort technician selling you
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
This has gotten to be a too much and you look to <<=setup.getNpcName("npc_technician","first")>> for help. Instantly she recognises the problem, and ushers the two of you out of the office despite the <<man>>'s mocking laughter.<br>
<br>
"@@.npc_technician;Sorry about that,@@" <<=setup.getNpcName("npc_technician","first")>> states as you ride the elevator down. "@@.npc_technician;But your comfort is more important than any mere trinket.@@"<br>
<br>
You thank her for the understanding and she gives you a hug and makes sure you don't need a ride home before the two of you head your separate ways.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: perform lap dance
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_STRANGER>>
<<changeHorny 30>>
<</if>>
<<set $player.location = "Company Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician") setup.charImageGeneric("generic_coworker_male")>>
<div id="invframe" class="scrolltext">
Just like <<=setup.getNpcName("npc_technician","first")>> is, you put on a show as you walk across to the seated <<man>> and start putting on a show. Leering up at you the whole time the <<man>> doesn't hold back, groping your ass and tweaking your nipples as <<he>> continues to taunt.<br>
<br>
"@@.generic_male1;Look at you, hot, successful... and yet you're not just dating some super-nerd... you're offering yourself up so they can buy a dumb collectible...@@"<br>
<br>
"@@.npc_technician;It's not dumb!@@" <<=setup.getNpcName("npc_technician","first")>> whines, somewhere between playing a role and defending her interests on reflex. "@@.npc_technician;Besides, like... you're one to talk...@@"<br>
<br>
"@@.generic_male1;Yeah, I got a collection, and I got it the right way, by having a big-paying tech job... not by whoring out my girlfriend.@@" <<He>> gives you a slap that more startles than hurts, even as the sound echoes in the office. "@@.generic_male1;Turn around <<if $fetish.sissy>>sissy<<else>>slut<</if>>, grind me with that thicc ass... and stare at the greedy dork that pimped you out...@@"<br>
<br>
You turn as commanded, the <<man>>'s fingers digging into your hips as <<he>> pulls you tighter and you feel <<his>> arousal straining through <<his>> jeans.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> stares back, her look of desperation telling you that she's as aroused as you are... but the <<man>> takes it for despair as <<he>> continues to taunt and tease, shoving <<his>> fingers in your mouth and exposing your tits before putting a hand on the top of your head and guiding you down to your knees.<br>
<br>
[<<moveTo "event_technician_humiliation_barter_4" 'Blow <<him>>.' 180>>]<br>
[<<moveTo "event_technician_humiliation_barter_abort" 'Abort!' 180>>]
</div>/*#
#desc: blow dude
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 9 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 9 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Company Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_technician") setup.charImageGeneric("generic_coworker_male")>>
<div id="invframe" class="scrolltext">
The <<man>> is a hair below average, no trouble for your skill, even as <<he>> grips your hair and aggressively fucks your face. Lasting not much more than a few moments between your lips <<he>> cums hard, holding your head down with both hands as if trying to make you choke as <<he>> finishes off.<br>
<br>
The man finally stands up without even paying attention to you as you cough and wipe your face. <<His>> cock still sticking out past <<his>> zipper the <<man>> walks over to a shelf to retrieve the promised figurine, handing it to you with a sneer as <<he>> tells you to "@@.generic_male1;take it back to your girlfriend... and maybe consider upgrading to someone who isn't trading you off for some resin!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> accepts the boxed-up figurine and helps you to your feet, keeping up the facade just long enough for the two of you to leave the office and hurry up the hall back to the elevator.<br>
<br>
[<<moveTo "event_technician_humiliation_barter_5" 'Escape with your, or, rather, her, prize.' 180>>]
</div>/*#
#desc: ride elevator down after getting figurine
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
The elevator door is only half-closed when <<=setup.getNpcName("npc_technician","first")>> is all over you, pulling you in and kissing you passionately. "@@.npc_technician;Goddess you are so fucking hot... you have no idea how hard it was to keep up appearances when I wanted to take you then and there.@@" She pulls back with a smile as she licks her lips. "@@.npc_technician;Mmm, I can taste <<him>>... which, to be honest? Not great, but when it's added to YOU? You make everything taste delicious, and are a bigger prize than any collectible...@@"<br>
<br>
Grinding against you up against the wall to the elevator <<=setup.getNpcName("npc_technician","first")>> hits the hold button and then grins at you. "@@.npc_technician;Mind taking care of me? I'm just so fucking turned on right now, and I want you so bad...@@"<br>
<br>
[<<moveTo "event_technician_humiliation_barter_6" 'Blow her.' 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_humiliation_barter_6" "You've sucked enough cock for one day." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: ride elevator down blow technician
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 11 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 12 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Outside Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_exterior.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_technician","first")>> lets you slide to your knees and throws her head back as you blow her<<if $npc_technician.relationship.her_caged>> through her cage<</if>>. On even more of a hair trigger than the engineer she fills your mouth in near moments, panting as she orders you "@@.npc_technician;don't swallow yet... enjoy the taste and texture a little longer...@@"<br>
<br>
You do as commanded and she helps you back to your feet as the ride continues.<br>
<br>
Another employee steps into the elevator a couple floors on, commenting that the elevator "@@.generic_female1;smells like sex@@" as you and <<=setup.getNpcName("npc_technician","first")>> feign ignorance.<br>
<br>
Cum still swishing back and forth in your mouth, it is only after you're outside the building that <<=setup.getNpcName("npc_technician","first")>> pulls you in for a kiss, snowballing back and forth as your tongues dance before she gives you permission to swallow, giving you a slap on the ass to send you on your way.<br>
<br>
"@@.npc_technician;Thanks again, you really are the best <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>> a girl could ask for.@@"
<<else>>
You decline <<=ps(setup.getNpcName("npc_technician","first"))>> request and she smiles at you. "@@.npc_technician;Oh you are such a tease sometimes! That's okay... absence makes the heart grow fonder, and all that, and this denial will just make our next time all the sweeter.@@"<br>
<br>
You ride the rest of the way down to the lobby without incident and go your separate ways, <<=setup.getNpcName("npc_technician","first")>> eagerly clutching her prize, you with a spring in your step from being able to make her so happy... and have a bit of your own slutty fun in the process!
<</if>>
<br><br>
[<<moveTo "room_citymap" 'Skip along on your way.' 300>>]
</div>/*#
#desc: human pup eat condom
#status: RELEASED 0.9.0.0
#ignore_spell: awww
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cum>>
<<applyExperience 'bimbofication' 13 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
You eagerly dive for the condom, almost jerking <<=setup.getNpcName("npc_technician","first")>> off-balance as she tries to reign you in before noticing what you're doing.<br>
<br>
"@@.npc_technician;Awww, is my cute widdle puppy hungry for cum?@@" She kneels down next to you, teasing you in a playful voice as she unties the condom and lets you eagerly slurp it up. "@@.npc_technician;So thirsty! You know... I was planning on taking you to the park for a little frolic... but if my slutty cum-slut bitch is still thirsty for scrumptious semen, well... I know just the place for a crawling cum-dump like yourself...@@"<br>
<br>
[<<moveTo "event_technician_petplay_cum_2" "Nod eagerly." 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_petplay_cum_2" "Shake your head." 120 "<<set $scene.accept=false>>">>]<br>
<<else>>
You step around the used condom and continue on your way.<br>
<br>
[<<moveTo "event_technician_bestiality_2" "Continue on the park." 600>>]
<</if>>
</div>/*#
#desc: human pup interested in more
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<removeItem 'dog_leash' true>>
<<deleteItem 'dog_leash'>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Cum-Slut Alleyway">>
<<else>>
<<set $player.location to "City Street">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod and yip eagerly and <<=setup.getNpcName("npc_technician","first")>> pats you on the head. "@@.npc_technician;Good <<=setup.getBoyGirl($npc_technician)>>! Or, well... slutty <<=setup.getBoyGirl($npc_technician)>>, I guess... but as far as I'm concerned, that's practically the same thing.@@"<br>
<br>
Your tail-plug wags with excitement as she leads you past the park and into an alleyway. You pass what is obviously a prostitute coming the other direction, the woman barely sparing a glance at you as she heads back to work. At the end of the alley you find your "prize" — a private patch of alley that is clearly a popular destination for prostitutes selling quickies, condoms strewn across the ground, one customer currently being serviced up against a wall.<br>
<br>
"@@.npc_technician;Here you go, <<=setup.getBoyGirl($npc_technician)>>,@@" <<=setup.getNpcName("npc_technician","first")>> states as she unhooks your leash "@@.npc_technician;enjoy this joyful condom valley where <<if $fetish.sissy>>sissies<<else>>hungry pups<</if>> can drink their fill.@@"<br>
<br>
You eagerly leap forward, prioritising the most swelled condoms to eagerly rip open and slurp up every drop of your creamy prize while <<=setup.getNpcName("npc_technician","first")>> watches on.<br>
<br>
The pickings get slimmer, though you do manage to get a particularly fresh prize by actually catching a discarded condom out of the air before eagerly ripping it open and slurping up the steamy semen.<br>
<br>
You glance around to see if there's anything left, but the alley is temporarily empty, save for you and <<=setup.getNpcName("npc_technician","first")>>... and the hard-on straining under her clothes.<br>
<br>
[<<moveTo "event_technician_petplay_cum_3" "Time for desert!" 600 "<<set $scene.suck=true>>">>]
[<<moveTo "event_technician_petplay_cum_3" "Time to head back to her flat." 300 "<<set $scene.suck=false>>">>]
<<else>>
You shake your head and <<=setup.getNpcName("npc_technician","first")>> stands, leading you on your way to the park.<br>
<br>
[<<moveTo "event_technician_bestiality_2" "Continue on the park." 600>>]
<</if>>
</div>/*#
#desc: human pup finish cum alley
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cum-Slut Alley">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
You back over to <<=setup.getNpcName("npc_technician","first")>> and she grins, guiding you up onto your knees and lifting her skirt for your final desert.<br>
<br>
You happily lick and suck as she jams her <<if $npc_technician.relationship.her_caged>>caged <</if>><<getWordPenis false>> passionately.<br>
<br>
"@@.npc_technician;Goddess you're such a depraved, cum-addicted slut... you make me so hot watching you, I just love it when you abandon all inhibitions like this...@@" Breathlessly, she dumps a final load down your throat and, after taking a moment to catch her breath and clip the leash back to your collar, she leads you home.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Crawl back to her flat with your full belly." 600 "<<removeItemSet 'puppy_black_copy'>><<deleteItemSet 'puppy_black_copy'>><<removeItem $scene.dogPlug true>><<deleteItem $scene.dogPlug>><<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
<<else>>
You scurry back over to <<=setup.getNpcName("npc_technician","first")>> and she replaces your leash with a grin. "@@.npc_technician;Goddess, it's so much fun to watch you indulge every depraved urge... come on, let's head home.@@"<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Follow her back to her flat." 600 "<<removeItemSet 'puppy_black_copy'>><<deleteItemSet 'puppy_black_copy'>><<removeItem $scene.dogPlug true>><<deleteItem $scene.dogPlug>><<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: human pup cum alley repeatable
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 13 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Cum-Slut Alley">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You enjoy another evening in cum-slut alley, slurping up condoms-full of yummy <<getWordCum>> and finishing up by blowing your lovely <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>(if temporarily holding your leash) slave<</switch>> before she leads you back to her flat.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Put your clothes back on and wait for her return." 600 "<<removeItemSet 'puppy_black_copy'>><<deleteItemSet 'puppy_black_copy'>><<removeItem 'dog_leash' true>><<deleteItem 'dog_leash'>><<removeItem $scene.dogPlug true>><<deleteItem $scene.dogPlug>><<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician dinner date piss event
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = $npc_technician.relationship.kink_indulge.piss == 0>>
<<if $npc_technician.relationship.kink_indulge.piss < 1>>
<<set $npc_technician.relationship.kink_indulge.piss = 1>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> sets out another lovely meal, but before you can dig in she gets a mischievous look in her eye and darts over to the refrigerator.<br>
<br>
<<if $scene.first>>
"@@.npc_technician;So... I was thinking about what you told me before and... well, I got one of those carbonation machines to make your own soda... only I've got a special vintage for you.@@"<br>
<br>
Secretively she grabs something from the fridge and pours it into the machine, grinning maniacally until the carbonation machine finishes running and she pours you a champagne flute full of slightly amber liquid.<br>
<br>
"@@.npc_technician;I present — Eau de <<=setup.getNpcName('npc_technician', 'first')>>... enjoy!@@"<br>
<br>
Taking the glass in hand you bring it to your lips, recognising the faint scent of <<getWordPiss>> to confirm your suspicions as to EXACTLY what she has brewed up for you...
<<else>>
You know what's coming but she maintains the "secret" facade before filling a champagne flute and elegantly placing it down in front of you. "@@.npc_technician;Once again may I present — Eau de <<=setup.getNpcName('npc_technician', 'first')>>... enjoy!@@" She bites her lip, "@@.npc_technician;I did some research and I've been watching my diet so... I think it tastes a bit better now?@@"
<</if>>
<br><br>
She bites her lip in anticipation as she waits for you to drink.<br>
<br>
[<<moveTo "event_technician_dinner_piss_2" 'Carbonated <<getWordPiss>>? Brilliant!' 180 "<<set $scene.drink=true>>">>]<br>
<<if setup.getTotalValue("piss") > 15>>
[@@.link_locked;You can't possible resist such a wonderful draught.@@]
<<else>>
[<<moveTo "event_technician_dinner_piss_2" "Actually... you don't want to drink her piss, carbonated or not." 180 "<<set $scene.drink=false>>">>]
<</if>>
</div>/*#
#desc: technician dinner date piss event - drink
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drink && $npc_technician.relationship.kink_indulge.piss < 2>>
<<set $npc_technician.relationship.kink_indulge.piss = 2>>
<<applyExperience 'piss' 16 'terrible' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<else>>
<<decrementEmotion 'affection' 'npc_technician' 2>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.drink>>
You smile up at her and then tilt the glass back. Carbonated <<getWordPiss>> is definitely interesting, and you find yourself finishing the glass before licking your lips and grinning back up at <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
"@@.npc_technician;Holy shit — I'll be honest, I wasn't totally sure how I was going to deal with this, but seeing you drink my lady lemonade? So-fucking-hot!@@" She composes herself for a moment and straightens up taller. "@@.npc_technician;Um, I mean... more <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mademoiselle<<case 'male'>>Monsieur<<default>>My Love<</switch>>?@@"<br>
<br>
You nod formally and she pours you another glass, holding her formal facade together almost to the end before splitting into a grin. "@@.npc_technician;Unf, goddess... I just can't get over how kinky and hot this is! Actually...@@" She glances at the small amount remaining, smiling bashfully before tilting the carbonation container back. You watch with bated breath as your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case 'sub'>>slave<</switch>> drinks her own bubble piss...<br>
<br>
She winces at first, but then tilts things back the rest of the way and seems to force it down. Her face is a bit pinched but she licks her lips and thinks for a moment. "@@.npc_technician;Hmm... bit of an acquired taste... dunno if I'd drink it on its own but, well... as a kinky act with a friend?@@" She grins as she takes her seat across the table from, "@@.npc_technician;Well... you can credit yourself with having converted a fresh piss-slut... mmm, I'm so looking forward to having you drink from the tap, but I think I'll make you wait on that, wouldn't want you drinking too much in one evening.@@" She winks as you raise your glass and smile back at her.<br>
<br>
After the excitement of the drink the meal is almost mundane — though still tasty, the bold flavours pairing surprisingly well with your "special beverage" and you give your compliments to the chef.<br>
<br>
"@@.npc_technician;Heh, it's nothing... I'm just glad it all came together! Making piss-soda for your girlfriend — that's not the sort of thing you read about in Cosmo!@@"<br>
<br>
You chuckle at her joke, soon finishing off the tasty meal before dragging her off to the couch for a dessert cuddle.
<<else>>
You put the glass back down and <<=setup.getNpcName('npc_technician', 'first')>> pouts.<br>
<br>
"@@.npc_technician;Aww... I'm sorry... when you told me before...@@" She quickly scoops up the glass and takes it away, "@@.npc_technician;Well, never mind that, I guess it's one of those things you have to be in the mood for? Come on, dinner is getting cold!@@"<br>
<br>
You feel a bit bad for disappointing her, but, as always, she rolls with the punches and is back to her chipper self as the two of you enjoy a tasty meal and then head for the couch.
<</if>>
<br><br>
[<<moveTo "event_technician_dinner_snuggle_1" 'Snuggle time.' 600>>]
</div>/*#
#desc: technician calls you about cafe brunch
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You're surprised to get a call from <<=setup.getNpcName('npc_technician', 'first')>> so early on a weekend, but she sounds surprisingly chipper on the other end of the line.<br>
<br>
"@@.npc_technician;Heya, sexy... I was wondering if you wanted to catch a little brunch together? They actually serve it at Cafe Newtype, if you don't have any other plans... say, meet at ten?@@"<br>
<br>
[<<moveTo "event_technician_cafe_brunch_offer_2" 'Sure.' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_cafe_brunch_offer_2" 'Some other time, maybe.' 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: technician calls you about cafe brunch
#status: FINISHED 0.7.12.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<deleteMember $currentTasks 'technician_cafe_1'>>
<<set _nextDate = setup.setNextDate($now, 0, 10, 0)>>
<<addTaskById 'technician_brunch' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You respond that you'd love to meet her for brunch.<br>
<br>
"@@.npc_technician;Awesome! Well, I'll see you then! Heh, I'm so excited to see you rather than having to wait for the afternoon, love you lots!@@"<br>
<br>
You respond that you love her too and then hang up.
<<else>>
You tell <<=setup.getNpcName('npc_technician', 'first')>> that you'll have to meet for brunch some other time.<br>
<br>
<<if $currentTasks.hasOwnProperty('technician_cafe_1') && setup.daysToDate($now,setup.getTaskDueDate('technician_cafe_1')) == 0>>
"@@.npc_technician;Alright, I guess it was a bit last minute, I'll see you this afternoon for coffee! Love you!@@"
<<else>>
"@@.npc_technician;Yeah, okay — I guess it was a bit last minute, catch you later! Love you!@@"
<</if>>
<br><br>
You tell your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>> that you love her too and she hangs up.
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." 60 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: technician calls you about cafe brunch
#status: FINISHED 0.7.12.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_technician' 2>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
<<printThought "Shit! I forgot about brunch!">><br>
<br>
"@@.npc_technician;Hey so... I'm here... at the mall... and I don't see you? I guess something came up? That's fine... I don't want to be a bother... I'll see you later, I guess.@@"<br>
<br>
her disappointment cuts like a knife, but she has already hung up before you can muster a response.<br>
<br>
<<printThought "I am such a heel...">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: technician cafe brunch date
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You spot <<=setup.getNpcName('npc_technician', 'first')>> and, after sharing a kiss, the two of you are led to a table by your mutual friend <<=setup.getNpcName('npc_maid', 'first')>> — looking very formal indeed in her maid outfit and a napkin draped over her forearm.<br>
<br>
You're impressed at how much of a "classic French street cafe" vibe is going despite being in the middle of a mall. You each place a light order and sit back to enjoy coffee while you wait.<br>
<br>
"@@.npc_technician;I'm glad you decided to meet me — the brunch here is really good, but I almost always sleep through it. Of course a meal is always better with the right company and... well... I put in a special order for you. Some... fresh-squeezed apple juice that you are just going to love.@@"<br>
<br>
She smiles wider as her eyebrows bounce. "@@.npc_technician;If the apples in the juice are just half as ripe as your blushing cheeks I am sure you will just love it!@@"<br>
<br>
[<<moveTo "event_technician_cafe_brunch_piss_1" "Wait for food to arrive." 600>>]
</div>/*#
#desc: technician cafe brunch piss event intro
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.kink_indulge.piss < 3>>
<<set $npc_technician.relationship.kink_indulge.piss = 3>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You sit and chat casually and <<=setup.getNpcName('npc_maid', 'first')>> soon returns with some croissants, a danish each and two glasses of apple juice.<br>
<br>
"@@.npc_maid;Your freshly-pressed apple-juice, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mademoiselle<<case 'male'>>Monsieur<</switch>>.@@" She turns to <<=setup.getNpcName('npc_maid', 'first')>>, her smile almost completely disappearing as she puts the other glass on the table. "@@.npc_maid;Do you also need me to bring the usual Cofferasque venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon, madame?@@"<br>
<br>
"@@.npc_technician;No, thank you <<=setup.getNpcName('npc_maid', 'first')>>, just bring us the rest of the food.@@"<br>
<br>
[<<moveTo "event_technician_cafe_brunch_piss_2" "Continue." 600>>]
</div>/*#
#desc: technician cafe brunch piss event
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
The apple juice is some of the crispest you've ever enjoyed and you thank <<=setup.getNpcName('npc_technician', 'first')>> for suggestion as the two of you settle in for a relaxing meal in the cozy maid cafe, even as the naughty glint in her eye has you suspecting she is up to something.<br>
<br>
By the time <<=setup.getNpcName('npc_maid', 'first')>> returns with the rest of the meal <<=setup.getNpcName('npc_technician', 'first')>> has already emptied her glass and excuses herself with a crooked smile.<br>
<br>
She gives you a kiss before walking away, and you can't help but admire her heart-shaped delicious bubble-ass walking away, surprised that she is wearing heels on a non-workday.<br>
<br>
[<<moveTo "event_technician_cafe_brunch_piss_3" "Continue." 300>>]
</div>/*#
#desc: technician cafe brunch piss event - drop knife
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "panties_technician">>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_technician">>
<<set _pantiesowner_formal = "first">>
<<include "stealPanties">>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
A few minutes later <<=setup.getNpcName('npc_technician', 'first')>> returns from the restroom, with her cheeks just a little bit pink.<br>
<br>
<<printThought "Hmm, I don't remember her wearing blush earlier...">><br>
<br>
She winks at you, detouring from a straight-line path to her seat to walk up behind you, biting your earlobe, then kissing your neck while she secretly drops her panties in your lap and wordlessly slides into her seat, taking a moment to fix the tablecloth to drape back down on either side of her legs.<br>
<br>
Now you KNOW she has something planned but she keeps things close to her chest as she butters up her croissant, only to suddenly drop the butter knife on the floor and nudge it underneath the table-cloth.<br>
<br>
"@@.npc_technician;Oh, look at me, so clumsy — be a <<if $npc_technician.relationship.her_role == 'dom'>>good Princess<<else>>dear<</if>> and crawl down and retrieve it for me?@@"<br>
<br>
[<<moveTo "event_technician_cafe_brunch_piss_4" "Obey, drop to the floor and crawl under the table cloth looking for the knife." 300 "<<set $scene.obey=true>>">>]<br>
<<if $npc_technician.relationship.her_role == 'dom' && setup.getTotalValue("submission") > 10>>
[@@.link_locked;You cannot ignore an order from your <<=setup.getNpcName("npc_technician","title")>>.@@]
<<else>>
[<<moveTo "event_technician_cafe_brunch_piss_4" "Tell her that it is under her side and she should just get it herself." 180 "<<set $scene.obey=false>>">>]
<</if>>
</div>/*#
#desc: technician cafe brunch piss event - suck choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_technician' 1>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
The long table cloth provides you plenty of concealment as you slide underneath and look around. <<=setup.getNpcName('npc_technician', 'first')>> slides a little forward in her chair
<<if $npc_technician.flags.dataservice_encounter.looked_up_skirt>>
and you experience a deja-vu to the first day at work. This time, however
<<else>>
and you are treated to an
<</if>>
open view to her throbbing member, and the unmistakable heady fragrance of her arousal.<br>
<br>
"@@.npc_technician;Having trouble finding things down there?@@" She asks as her <<getWordPenis false>> <<if $npc_technician.relationship.her_caged>>strains within its prison<<else>>twitches,<</if>> beaded with an oh-so-delicious looking droplet of pre-cum...<br>
<br>
[<<moveTo "event_technician_cafe_brunch_piss_5" "Enjoy an aperitif." 300 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_technician_cafe_brunch_piss_5" "Just find the knife." 300 "<<set $scene.suck=false>>">>]
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> frowns in disappointment before reaching down to retrieve the knife and resume eating.<br>
<br>
You feel like you "missed out" on something as, though delicious, the rest of the meal feels a bit awkward, the two of you leaving behind a nice tip before hugging and heading on your separate ways.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 600>>]
<</if>>
</div>/*#
#desc: technician cafe brunch piss event - suck
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'penis' 12 'normal' $INCOGNITO>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $INCOGNITO>>
<<else>>
<<incrementEmotion 'anger' 'npc_technician' 1>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
You pretend to still search for the knife blindly as your tongue extends to lick <<if $npc_technician.relationship.her_caged>>between the bars of her prison<<else>>her moist tip<</if>>, slowly tasting the precum then spreading your lips as you move closer, engulfing the <<if $npc_technician.relationship.her_caged>>tip of the cage<<else>>head<</if>> completely and suck until you feel her about to cum, and then she pulls away. Puzzled, you pick up the knife and return to your chair.<br>
<br>
She may have pushed you away but <<=setup.getNpcName('npc_technician', 'first')>> appears almost breathless, clearly aroused and wanting more...<br>
<br>
[<<moveTo "event_technician_cafe_brunch_piss_6" "Continue." 180>>]
<<else>>
Resisting the allure of <<=ps(setup.getNpcName('npc_technician', 'first'))>> delicious offer you snag the knife and scramble back up to your seat.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> frowns in disappointment.<br>
<br>
You feel like you "missed out" on something as, though delicious, the rest of the meal feels a bit awkward, the two of you leaving behind a nice tip before hugging and heading on your separate ways.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 600>>]
<</if>>
</div>/*#
#desc: technician cafe brunch piss event - drink choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("piss") > 15 && setup.getTotalValue("humiliation") > 15>>
<<applyExperience 'piss' 14 'very' $EXPOSED>>
<<applyExperience 'humiliation' 13 'very' $EXPOSED>>
<<if $npc_technician.relationship.kink_indulge.piss < 4>>
<<set $npc_technician.relationship.kink_indulge.piss = 4>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> is sweating a bit as she catches her breath. "@@.npc_technician;Whew! Your lips are... WAY too good... this is going to make things a little harder — no pun intended.@@"<br>
<br>
You watch as she slowly lets out a breath and then slides her empty glass under the table. You bite your lip as you hear the faint sound of liquid blasting into the glass, glancing around to see if anyone else noticed...<br>
<br>
A minute later she brings the half-filled glass back on the table, with her amber-coloured nectar in it, exchanging it with your own half-empty glass of apple juice with a wicked smile.<br>
<br>
"@@.npc_technician;When I told you to look forward to the apple juice well...@@" She raises her glass and gestures for you to do the same.<br>
<br>
"@@.npc_technician;A golden toast — to delicious new experiences shared with my beautiful princess.@@"<br>
<br>
She lifts her glass high and
<<if setup.getTotalValue("piss") > 15 && setup.getTotalValue("humiliation") > 15>>
you hurry to match, smiling wide and knocking back your glass of "apple juice" without hesitation.<br>
<br>
As you feel the hot ambrosia flow down your throat you blush copper-red, feeling that everyone at the cafe is watching... knowing what you just did.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> practically beams for the rest of the meal, biting her lip every time she looks at you.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> laughs sweetly — not laughing at you, but in amused approval. "@@.npc_technician;The vintage to your liking? Unfiltered apple juice really does retain more flavour, doesn't it?@@"<br>
<br>
This makes you blush even more, looking like a ripe tomato as <<=setup.getNpcName('npc_technician', 'first')>> glows with glee.<br>
<br>
The two of you finish your meal and <<=setup.getNpcName('npc_maid', 'first')>> returns for the dirty dishes, <<=setup.getNpcName('npc_technician', 'first')>> insisting on covering the tab before the two of you share a hug and continue on with your respective days.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 600>>]
<<else>>
smiles wide before knocking back the rest of your apple juice and waiting for you to do the same.<br>
<br>
You blush copper-red, feeling as if everyone in the cafe knows that what you are holding up is very much NOT apple juice...<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smiles with a teasing glint in the eyes: "@@.npc_technician;That's for teasing me, now come on, finish your drink. It is not polite to leave a fine establishment without finishing your food... and drink. Especially when it was so lovingly brewed.@@"<br>
<br>
[<<moveTo "event_technician_cafe_brunch_piss_7" "Bottoms up..." 60 "<<set $scene.drink=true>>">>]<br>
<<if setup.getTotalValue("piss") > 15>>
[@@.link_locked;You can't possible turn down a glass of "apple juice."@@]
<<else>>
[<<moveTo "event_technician_cafe_brunch_piss_7" "Shake your head and put the glass down." 60 "<<set $scene.drink=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: technician cafe brunch piss event - choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drink>>
<<applyExperience 'piss' 14 'very' $EXPOSED>>
<<applyExperience 'humiliation' 13 'very' $EXPOSED>>
<<if $npc_technician.relationship.kink_indulge.piss < 4>>
<<set $npc_technician.relationship.kink_indulge.piss = 4>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_technician' 1>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.drink>>
You lift the glass to your lips to taste the still hot urine, feeling aroused and embarrassed in equal measure.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> laughs sweetly — not laughing at you, but in amused approval. "@@.npc_technician;The vintage to your liking? Unfiltered apple juice really does retain more flavour, doesn't it?@@"<br>
<br>
This makes you blush even more, looking like a ripped tomato as <<=setup.getNpcName('npc_technician', 'first')>> glows with glee.<br>
<br>
The two of you finish your meal and <<=setup.getNpcName('npc_maid', 'first')>> returns for the dirty dishes, <<=setup.getNpcName('npc_technician', 'first')>> insisting on covering the tab before the two of you share a hug and go your separate ways.
<<else>>
Your heart pounds as you slowly put the glass down. Several minutes later <<=setup.getNpcName('npc_maid', 'first')>> re-appears to clear the table. Noticing the half full glass she glances at you to see if you're finished. You nod for her to take it away and she grins, knocking it back before you can stop her and then grinning as you look with wide-eyed shock.<br>
<br>
"@@.npc_maid;As sweet as ever,@@" she states with a wink cast towards, <<=setup.getNpcName('npc_technician', 'first')>> before walking away laughing softly.<br>
<br>
You stare in surprise at <<=setup.getNpcName('npc_technician', 'first')>> as she blushes and almost sinks into the chair. "@@.npc_maid;Okay... it was ONE time... a long time ago... and I was kind of drunk...@@"<br>
<br>
You chuckle in amusement, your own failure forgotten as you square up the bill, hug, and head on your separate ways.
<</if>>
<br><br>
[<<moveTo "room_mall_interior" "Return to the mall." 600>>]
</div>/*#
#desc: interact technician on old floor
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.piss>>
<<applyExperience 'piss' 15 'very' $INCOGNITO>>
<<applyExperience 'humiliation' 12 'terrible' $INCOGNITO>>
<<set $npc_technician.relationship.kink_indulge.piss_work = true>>
<<include "addTechnicianPiss">>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.piss>>
By the time you're safely kneeling under her desk <<=setup.getNpcName("npc_technician","first")>> has slid her chair all the way forward and revealed her
<<if $npc_technician.relationship.her_caged>>
<<getWordPenis false>> straining within its cage.<br>
<br>
You wrap your lips around the tip and you
<<else>>
incredibly hard <<getWordPenis false>>. You eagerly wrap your lips around her member and give it an encouraging lick with your tongue. You
<</if>>
feel her tense up.<br>
<br>
She releases a long, slow breath, clearly trying to calm down enough for her bladder to unleash, and it soon does and she sighs as her
<<if setup.getTotalValue("piss") > 15>>
strong
<<else>>
slightly bitter
<</if>>
morning lemonade sprays into your mouth for you to gulp down.<br>
<br>
You're focused on swallowing the processed aftermath of however many cups of coffee she pounded down to make it this far into the morning when you hear her shocked gasp and then an unfamiliar voice.<br>
<br>
"@@.generic_female1;Hey, so... my monitor is acting up. Do you think you could come to my desk and fix things?@@"<br>
<br>
The flow stutters slightly, but your reflexive suction seems to be even more of a distraction to <<=setup.getNpcName("npc_technician","first")>> as she responds breathlessly. "@@.npc_technician;What? I mean, yeah, sure just... give me a few minutes to wrap things up here?@@"<br>
<br>
Not getting the hint the helpless coworker replies with concern, "@@.generic_female1;Sure but... are you okay? Like you look REALLY flush, you aren't running a fever or anything? If you're not feeling good you should really go home early...@@"<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> bladder betrays her to let loose with another burst of <<getWordPiss>>. "@@.npc_technician;Sorry, but morning coffee just hit and...@@"<br>
<br>
"@@.generic_female1;Oh!, Sorry, well, when you get back from the lady's room, I'll be at my desk, okay?@@"<br>
<br>
"@@.npc_technician;Sure, right,@@" replies through gritted teeth, a few more moments passing as she waits for the woman to leave before she softly moans and resumes unloading the remainder of her bladder so fast you almost spill.<br>
<br>
"@@.npc_technician;You alright down there?@@" She asks a few moments after the stream has stopped, "@@.npc_technician;Fuck, I still can't believe you did that... you're the most deviously cute, kinky and amazing person I've ever met.@@"<br>
<br>
She slides her chair back to help you back up, handing you a tissue to wipe your face as you blush.<br>
<br>
"@@.npc_technician;Well, I, uh... gotta go help someone re-plug in a monitor I'm guessing, thanks for stopping by...@@" She hesitates for a moment and then pulls you in for a kiss, her tongue probing your mouth for a few moments before she separates. "@@.npc_technician;Hmm... bit bitter, though I guess that's the coffee. Love you<<if $npc_technician.relationship.her_role == "dom">> Princess<</if>>!@@"
<<else>>
You laugh nervously and <<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;So you do have a shame threshold! I was honestly beginning to wonder.@@" She glances at her computer and frowns. "@@.npc_technician;Damn, I've got a conference call coming up I need to prep for, I'll catch you later, hot stuff, alright?@@"<br>
<br>
You share a kiss and head on your way.
<</if>>
<br><br>
<<include "dataServiceVisit">>
</div><<if $npc_technician.relationship.kink_indulge.piss == 5 && $npc_technician.relationship.kink_indulge.piss_work && $npc_technician.relationship.kink_indulge.humiliation>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'technician_piss'>>
<</if>>/*#
#desc: work female bathroom technician piss event
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.her_role != "dom">>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'technician_piss' _nextDate>>
<<initRoom>>
<<moveTo "room_office_lunchbreak_toilet_female">>
<</if>>
<</if>>
<<set $player.location to "Work Woman's Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You're leaned over the sink washing your hands when you hear someone else enter the bathroom. You don't pay them any mind, and then you feel them pressing up against you from behind, a hand <<if setup.checkItemTypeTag('choker', "leash_attachment")>>gripping your collar<<else>>wrapping around your throat<</if>> possessively as a familiar voice whispers in your ear.<br>
<br>
"@@.npc_technician;Hello, Princess. I was up on this floor for an office-call and I saw you pop into the bathroom and, well... my morning coffee is catching up with me, and what better destination than my own personal toilet-slave?@@"<br>
<br>
You look at your reflection, of <<=setup.getNpcName("npc_technician","formal")>> grinning back at you as she pulls you in tight, grinding against you from behind.<br>
<br>
[<<moveTo "event_technician_piss_cruel_2" 'Yes, <<=setup.getNpcName("npc_technician","title")>>.' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_piss_cruel_2" 'You need to get back to work...' 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: work female bathroom technician piss event
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if $npc_technician.relationship.kink_indulge.piss < 6>>
<<set $npc_technician.relationship.kink_indulge.piss = 6>>
<</if>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'piss' 13 'very' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<changeHorny 20>>
<<else>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Work Woman's Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod submissively and <<=setup.getNpcName("npc_technician","formal")>> grins wider, dragging you by the <<if setup.checkItemTypeTag('choker', "leash_attachment")>>collar<<else>>shirt<</if>> into one of the stalls and then half-tossing you to your knees. You notice that she pointedly does not latch the door to the stall, the slim risk of someone barging in making your heart race even faster.<br>
<br>
"@@.npc_technician;Alright, piss-slave, tell me how thirsty you are for me. Beg for it you toilet slut!@@"<br>
<br>
You obey your <<=setup.getNpcName("npc_technician","title")>> — begging to taste her sweet lemonade, your pleas lasting but a few moments before, overcome with excitement, she grabs you by the hair and shoves her
<<if $npc_technician.relationship.her_caged>>
chastity cage between your lips.
<<else>>
half-flaccid <<getWordPenis false>> into your mouth.
<</if>>
She sighs and unleashes her flow, hot,
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
heavenly
<<else>>
spicy
<</if>>
<<else>>
bitter
<</if>>
piss flowing over your tongue as you quickly swallow. "@@.npc_technician;Drink it all,@@" she growls, holding you possessively tight as she grinds against your face. "@@.npc_technician;If you spill a single drop I'll make you lick it off the floor...@@"<br>
<br>
You gulp faster, tasting the slightest hint of her morning coffee as you try to keep up with her bladder, grateful when the initial torrent tapers off and she pulls you back, letting the final few drops land directly on your tongue.<br>
<br>
"@@.npc_technician;Ah, what a relief,@@" <<=setup.getNpcName("npc_technician","formal")>> purrs as she pulls you back in and you
<<if $npc_technician.relationship.her_caged>>
go to work licking between the bars of her cage.
<<else>>
carefully pull back her foreskin to lick her clean.
<</if>>
"@@.npc_technician;That's right, lick it all up, Princess — my thirsty slut.@@"<br>
<br>
You stare up with a mix of awe and longing as you do as commanded, her hand gripping your hair a constant reminder of her power as you kneel and lick.<br>
<br>
Eventually she pulls you back to your feet, biting her lip as she grins back as you catch your breath. "@@.npc_technician;You liked that, didn't you? Being my personal piss-slave, feeling my lemonade sloshing around in your belly...@@"<br>
<br>
You nod and she finally releases her grasp. "@@.npc_technician;Good <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>job<</switch>>, now scurry back to work, my love — but remember who marked you as hers...@@"<br>
<br>
She smiles as you curtsy and skip away, feeling your full belly with every step.
<<else>>
Even as you tremble in your <<=ps(setup.getNpcName("npc_technician","title"))>> grasp you manage to whisper that you need to get back to work...<br>
<br>
She frowns theatrically, holding you a moment longer before stepping back. "@@.npc_technician;Too bad... I guess you will just have to go thirsty...@@"<br>
<br>
She gives you a swat on the ass and winks. "@@.npc_technician;Well, go on, then! Back to work with you!@@"<br>
<br>
You curtsy obediently and then hurry out of the bathroom back to your office, heart thumping the whole time.
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Back to your desk." 300>>]
</div>/*#
#desc: dress to serve technician dinner as pony
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You ask your <<=setup.getNpcName('npc_technician', 'title')>> if you might have the honour of serving her dinner?<br>
<br>
<<if $npc_technician.relationship.private_games.pony_sub>>
<<=setup.getNpcName('npc_technician', 'formal')>> smiles. "@@.npc_technician;Oh, I like that idea... how about being my sweet pony? I know this is just a small apartment, but there's enough space for you to at least figuratively cart my food around... so, you up that? Which will mean dressing for the occasion. After all, what is a cute pony-girl without her hoofs and harness?@@"<br>
<br>
[<<moveTo "event_technician_dinner_pony_1" "Stomp your foot in agreement." 180>>]<br>
[<<moveTo "event_technician_dinner_1_3" "Maybe some other time, just take your seat." 180>>]
<<else>>
<<=setup.getNpcName('npc_technician', 'formal')>> thinks for a minute and glances at the timer before grinning. "@@.npc_technician;Hmm, a tempting idea, but dinner is almost ready, and I don't have a particularly good idea for how you might serve... maybe if we do some more role playing I'll have some inspiration for next time.@@"<br>
<br>
The timer sounds, looks like dinner is ready.<br>
<br>
[<<moveTo "event_technician_dinner_1_3" "Take a seat." 180>>]
<</if>>
</div>/*#
#desc: dress to serve technician dinner as pony
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'pony_girl'>>
<<wearItemSet 'pony_girl'>>
<<addItem 'nipple_bells'>>
<<wearItem 'nipple_bells' true>>
<<addItem "pony_plug">>
<<wearItem "pony_plug" true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'formal')>> grins even wider as she <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>takes you by the collar<<else>>leads<</if>> you into the bedroom.<br>
<br>
A quick dip into her toy-chest as you strip and she has you harnessed and shod, your outfit complete with her sliding a tail plug into your bum and finishing off with tightening your bit gag and placing a loving peck on your cheek.<br>
<br>
"@@.npc_technician;My pretty pony...@@" She states as she gathers up your reins.<br>
<br>
The timer chimes and she pulls you gently forward. "@@.npc_technician;Step lively, my pet — it's time for you to carry my dinner.@@"<br>
<br>
[<<moveTo "event_technician_dinner_pony_2" "High-step into the kitchen." 180>>]<br>
[<<moveTo "event_technician_dinner_pony_abort" "You changed your mind, you'd prefer a normal meal." 180>>]
</div>/*#
#desc: abort technician dinner serve pony
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<removeItemSet "pony_girl">>
<<deleteItemSet "pony_girl">>
<<removeItem "nipple_bells" true>>
<<deleteItem "nipple_bells">>
<<removeItem "pony_plug" true>>
<<deleteItem "pony_plug">>
<<if setup.checkItemWorn("serving_tray")>>
<<removeItem "serving_tray" true>>
<<deleteItem "serving_tray">>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
The smell of food has your tummy rumbling and you change your mind about this whole pony thing.<br>
<br>
Noticing your distress <<=setup.getNpcName('npc_technician', 'formal')>> removes the bit gag for you to explain the situation, and you're soon back in your normal clothes and taking a seat at the table.<br>
<br>
[<<moveTo "event_technician_dinner_1_2" "Time for dinner." 180>>]
</div>/*#
#desc: serve technician dinner as pony
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "serving_tray">>
<<wearItem "serving_tray" true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'formal')>> leads you out of the bedroom and to the kitchen where she binds your hands behind your back and adds a harnessed tray to your situation and then loads it up for dinner.<br>
<br>
With your hands elegantly folded behind your back you have to focus to keep everything balanced in your hoof-boots. <<=setup.getNpcName('npc_technician', 'formal')>> smiles in encouragement as she leads out out of the kitchen and then has you kneel in front of the couch, taking a seat in front of you as you realise that you're not just delivering dinner, but are going to be her table for the duration of the meal.<br>
<br>
<<=setup.getNpcName('npc_technician', 'formal')>> makes an attempt to eat formally, but she can't seem to stop grinning whenever she looks at you... well, grin and tease as she does everything from making eyes at you to flicking your nipple bells in the course of eating her meal.<br>
<br>
By the time she's finished your tummy is rumbling... and then she unhooks your bit gag, letting it fall to one side and wiping off your lips before she delicately chops up and feeds you your meal, talking about "@@.npc_technician;What a good pony you are... it is an <<=ps(setup.getNpcName('npc_technician', 'title'))>> duty to provide for her subjects... and since your arms appear to be out of commission, well...@@" she winks as she feeds you another delectable morsel, washing things down with a the occasional kiss-shared sip of <<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 2>>her carbonated piss<<else>>champagne<</if>>.<br>
<br>
By the time you've both finished eating your knees are getting a bit achey and you're more than happy when <<=setup.getNpcName('npc_technician', 'formal')>> replaces your gag and motions for you to stand, lending you a bit of assistance to compensate for your bound arms.<br>
<br>
"@@.npc_technician;So, now that you're nice and fed, well... we should probably put in some work to burn off those calories. Not that I don't just LOVE that THICC ass of yours,@@" she states, giving you a squeeze for emphasis, "@@.npc_technician;but, well... I like my ponies toned and in shape to pull a cart or otherwise go all. Night. Long.@@"<br>
<br>
[<<moveTo "event_technician_dinner_pony_3" "Time for some exercise..." 600>>]<br>
[<<moveTo "event_technician_dinner_pony_abort" "You've been her pony for long enough." 180>>]
</div>/*#
#desc: technician pony, practice after dinner
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<applyExperience 'stamina' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'heels' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'dexterity' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'formal')>> flat isn't exactly large enough for you to trot, much less gallop, so she focuses more on technique and grace, having you prance and practice your high knees while balancing glasses on your tray.<br>
<br>
With each lap <<=setup.getNpcName('npc_technician', 'formal')>> seems to be getting more and more hot and bothered, finally pulling you in close and rising up onto her toes to look you in the eye.<br>
<br>
"@@.npc_technician;Okay, my pet... I've tried to control myself and focus on your exercise and training... but that tail of yours swishing back and forth between those pillowy cheeks... I'm upgrading your status from cart pony to breeding mare...@@"<br>
<br>
[<<moveTo "event_technician_dinner_pony_4" "Follow her to the bedroom." 300 "<<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<set _unlockable = $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<<if _unlockable || !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo "event_technician_dinner_pony_4" "Follow her to the bedroom and lay back for some BREEDING breeding." 300 "<<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked up and unavailable for "breeding."@@]
<</if>>
<</if>>
[<<moveTo "event_technician_dinner_pony_abort" "You've been her pony for long enough." 180>>]
</div>/*#
#desc: technician pony breeding after dinner service
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal>>
<<removeItem "pony_plug" true>>
<<deleteItem "pony_plug">>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'formal')>> doesn't waste any time as she leads you to the bedroom and
<<if $npc_technician.relationship.her_caged>>
buckles a strap-on over her cage.
<<else>>
flips up her skirt.
<</if>>
Between your bound arms and your steep pony heels it doesn't take much for <<=setup.getNpcName('npc_technician', 'formal')>> to tip you
<<if $scene.anal>>
onto the bed, your tail sliding free a moment later to be replaced by her glorious <<if $npc_technician.relationship.her_caged>>strap<<else>><<getWordPenis false>><</if>>.
<<else>>
back onto the bed<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>. She takes a moment to unlock your belt, and then it's on... or in, rather<<else>>, crotch strap pulled aside,<</if>> as she slides into your wet cunny with a moaning duet.
<</if>>
<br><br>
<<=setup.getNpcName('npc_technician', 'formal')>> breeds you hard, deep, and thoroughly, not stopping until both of you have cum<<if $npc_technician.relationship.her_caged>>... her leaking through her cage with excitement in a hands-free orgasm while her strap is rooted inside you<</if>>.<br>
<br>
[<<moveTo "event_technician_dinner_pony_5" "Continue." 300>>]
</div>/*#
#desc: technician pony breeding aftercare
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -30>>
<<removeItemSet "pony_girl">>
<<deleteItemSet "pony_girl">>
<<removeItem "nipple_bells" true>>
<<deleteItem "nipple_bells">>
<<if setup.checkItemWorn("pony_plug")>>
<<removeItem "pony_plug" true>>
<<deleteItem "pony_plug">>
<</if>>
<<if setup.checkItemWorn("serving_tray")>>
<<removeItem "serving_tray" true>>
<<deleteItem "serving_tray">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Sexually sated, you somehow find your way from the bed back to your knees, this time relaxed with your head on <<=ps(setup.getNpcName('npc_technician', 'formal'))>> lap as she strokes your hair and pats your head and whispers "@@.npc_technician;What a wonderful, cute, perfect, sexy, beautiful pony you are!@@"<br>
<br>
You snuggle even closer to your kind <<=setup.getNpcName('npc_technician', 'title')>>, almost falling asleep in her arms as she brushes your stress away. "@@.npc_technician;Well as lovely as this, and you, are... I should probably get you out of those restraints before your arms get cramped.@@"<br>
<br>
Once again she helps you to your feet, removing the arm restraints first, then the rest before handing you your clothes to get dressed.<br>
<br>
[<<moveTo "event_technician_dinner_snuggle_1" "Get dressed and head back to the couch for some more snuggling." 300 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician invites you to usual place
#status: FINISHED 0.7.12.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You're walking out of the therapist's office when you get a call from
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","formal")>>.<br>
<br>
"@@.npc_technician;Hello, my lovely Princess. I was thinking of something you told me earlier and, if you are not busy... would you like to meet me at the Usual Place? I have something planned that I think you are going to just love.@@"
<<case 'neutral'>>
your girlfriend, <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_technician;Hey, hot stuff. I was thinking of something you told me earlier and, if you don't have anything else planned... would you like to meet me at the Usual Place? I have an idea I think you are going to just love.@@"
<<case 'sub'>>
your slave/girlfriend, <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_technician;Hello, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. Your slave was thinking of something you told her earlier and, if you don't have anything else planned... would you like to meet at the Usual Place? I have an idea I think you are going to just love.@@"
<</switch>>
<br><br>
<<if $npc_technician.relationship.kink_indulge.whore > 0>>
<<printThought "Hmm... this is probably her gloryhole idea again...">><br>
<br>
<</if>>
<<if setup.getTotalValue("submission") > 15 && $npc_technician.relationship.her_role == 'dom'>>
[@@.link_locked;Ignore a request from your <<=setup.getNpcName("npc_technician","title")>>? Never.@@]<br>
<<else>>
[<<moveTo "event_technician_whoring_glory_invite_2" "Say you have other plans." 60 "<<set $scene.meet=false>>">>]<br>
<</if>>
[<<moveTo "event_technician_whoring_glory_invite_2" "Agree to meet her in an hour." 60 "<<set $scene.meet=true>>">>]<br>
</div>/*#
#desc: accept technician invitation to usual place
#status: FINISHED 0.7.12.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.meet>>
<<set _nextDate = setup.setNextDate($now, 0, $now.getUTCHours()+1, 0)>>
<<addTaskById 'technician_whoring' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.meet>>
You reply sure, you'd love to meet up for some drinks.<br>
<br>
"@@.npc_technician;Drinks... yes,@@" she replies cryptically, "@@.npc_technician;I'll see you at the Usual Place in an hour — hope to see you in something sexy!@@"
<<else>>
You reply that you don't think you have time this evening.<br>
<br>
"@@.npc_technician;Oh, well... maybe some other time, then, keep in touch, love you!@@"
<</if>>
<br><br>
She hangs up.<br>
<br>
[<<moveTo "room_citymap" "Put your phone away and get back to what you were doing." 300 "<<set $currentcall=false>>">>]
</div>/*#
#desc: technician calls about you missing whoring event
#status: FINISHED 0.7.12.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_technician' 1>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<printThought "Shit, I was supposed to meet her at the Usual Place...">><br>
<br>
"@@.npc_technician;Hey so... looks like you aren't here? Oh well, maybe some other time.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: arrive at usual place to meet npc_technician
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You arrive at the Usual Place and look around, not spotting <<=setup.getNpcName("npc_technician","first")>> anywhere near the bar. You get a text.<br>
<br>
"@@.npc_technician;Heya, hot stuff. Come meet me in the bathroom :smileyface:.@@"<br>
<br>
You recall her mention of a "plan" and your heart beats faster — this is definitely more than just getting a few drinks...<br>
<br>
[<<moveTo "event_technician_whoring_glory_2" "Head for the bathroom." 180>>]
</div>/*#
#desc: meet npc_technician in bathroom
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.outfit = "">>
<<if setup.analyzeWornTags(['female','male','unisex']) == "male">>
<<set $scene.outfit = "male">>
<<elseif setup.checkVisibleClothingTag('maid') > 60>>
<<if setup.checkVisibleClothingTag('slutty') > 50>>
<<set $scene.outfit = "slutty_maid">>
<<else>>
<<set $scene.outfit = "maid">>
<</if>>
<<else>>
<<set $scene.outfit = setup.analyzeWornTags(['slutty','casual','office','formal','schoolgirl','maid','fetish'])>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You head for the Usual Place's large, unisex bathroom and find <<=setup.getNpcName("npc_technician","first")>> standing outside a very familiar stall.<br>
<br>
<<switch $scene.outfit>>
<<case 'maid'>>
She grins at your outfit. "@@.npc_technician;Mmmm, sexy maid. Mommy likes.@@"
<<case 'slutty_maid'>>
She smiles wide at your outfit. "@@.npc_technician;Slutty maid? Fuck and yes, is there a better outfit for getting dirty?@@"
<<case 'slutty'>>
She grins at your choice of outfit. "@@.npc_technician;Goddamn you make for a sexy slut, this is perfect.@@"
<<case 'formal'>>
She raises an eyebrow at your choice of outfit. "@@.npc_technician;Wow, talk about over-dressing for the venue... still you look fucking gorgeous.@@"
<<case 'office'>>
She smirks at your choice of outfit. "@@.npc_technician;You know, even though that's what you wear day to day... I still find it damn hot. Now come over here my sexy Secretary — I've got a special job for you today...@@"
<<case 'schoolgirl'>>
She grins at your choice of outfit. "@@.npc_technician;My my, talk about a classic. Well come on over here, I've got a lesson all planned out...@@"
<<case 'casual'>>
She frowns at your choice of outfit. "@@.npc_technician;Hmm, was expecting you to dress up a bit... oh well.@@"
<<case 'male'>>
She frowns at your choice of outfit. "@@.npc_technician;Male? Hmm, didn't think that was your thing anymore... which I guess makes it, paradoxically, a little kinky?@@"
<<case 'fetish'>>
She smiles at your choice of outfit. "@@.npc_technician;Mmmm, kinky. I love it!@@"
<<default>>
She frowns. "@@.npc_technician;Interesting outfit choice, but it's not like anyone is going to see you, come on.@@"
<</switch>>
She ducks into the stall and gestures for you to follow.<br>
<br>
[<<moveTo "event_technician_whoring_glory_3" "Join her in the gloryhole stall..." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_whoring_glory_3" "No, you don't like where this is going." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: follow technician into gloryhole
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.kink_indulge.whore < 1>>
<<set $npc_technician.relationship.kink_indulge.whore = 1>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You follow her into the gloryhole where <<=setup.getNpcName("npc_technician","first")>> gives you a kiss and then grins.<br>
<br>
"@@.npc_technician;I found out about this place from <<=setup.getNpcName("npc_barista","nickname")>>, and, well... given what you told me about your interests I thought it would be just perfect for a bit of fun.@@"<br>
<br>
"@@.npc_technician;So,@@" she says, producing a pair of handcuffs. "@@.npc_technician;You ready to spend an evening <<if $npc_technician.relationship.her_role == 'sub'>>working as a<<else>>as my<</if>> cock-sucking whore?@@"<br>
<br>
[<<moveTo "event_technician_whoring_glory_4" "Get on your knees." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_whoring_glory_4" "Actually... you'd rather just have some drinks." 180 "<<set $scene.accept=false>>">>]
<<else>>
You can guess where this is going and ask if, instead, the two of you could just share some drinks?<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> sighs but quickly perks up. "@@.npc_technician;Yeah, okay. Come on, I'll get you a Sex on the Beach.@@" She winks as she leads the way back out to the bar.<br>
<br>
[<<moveTo "event_technician_whoring_glory_abort" "Continue." 7200>>]
<</if>>
</div>/*#
#desc: drink w/npc_technician
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<drinkBooze $player 10>>
<<applyStress -20>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> enjoy a night of drinking and chatting, not really getting up to much, but having a relaxing evening in one another's company.<br>
<br>
"@@.npc_technician;Alright, I think I need to bounce — got some plotting left to do for game tomorrow. I'll catch you later,@@" she adds, leaning in for a kiss. "@@.npc_technician;Maybe next time we can execute on my plan — based on what you told me before, well... I think you'll enjoy it.@@"<br>
<br>
She heads out, leaving you alone at the bar.<br>
<br>
[<<moveTo "room_usual_place_inside" "Continue." 600>>]
</div>/*#
#desc: first customer w/technician in gloryhole
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<addItem 'handcuffs'>>
<<wearItem 'handcuffs' true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You offer your wrists which <<=setup.getNpcName("npc_technician","first")>> cuffs and then attaches just below the glory-hole as she helps you to your knees.<br>
<br>
"@@.npc_technician;Alright, my sexy whore — it's time to put those fuck-me lips of yours to work... why I think I see your first client now!@@"<br>
<br>
As if on cue a truly massive <<getWordPenis false>> suddenly appears through the gloryhole.<br>
<br>
"@@.npc_maid;Suck it, slut.@@" Comes a familiar voice — and a familiar cock as you sit half-mesmerized by <<=ps(setup.getNpcName("npc_maid","first"))>> so-called "Destroyer." <br>
<br>
"@@.npc_technician;Don't go straight to sucking!@@" <<=setup.getNpcName("npc_technician","first")>> whispers as she grabs you by the hair and holds you back, "@@.npc_technician;Money up front! Damn, no wonder you need me along to supervise your slut-ass! How much money have you left on the floor because you're too addicted to cock to make sure you get paid?@@"<br>
<br>
You shudder in humiliated arousal — doesn't look like <<=setup.getNpcName("npc_technician","first")>> is going to be holding back on "fulfilling" your depraved fantasies tonight...<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo "event_technician_whoring_glory_5" "Ask for pay so you can hurry up and shlurp that big, beautiful cock." 180 "<<set $scene.accept=true>>">>]<br>
<<else>>
[<<moveTo "event_technician_whoring_glory_5" "Ask for pay so you can get to work." 180 "<<set $scene.accept=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("penis") > 15 && setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;Pass up a big, beautiful dick? Hell no!@@]
<<else>>
[<<moveTo "event_technician_whoring_glory_5" "On second thought... you'd rather just have some drinks." 180 "<<set $scene.accept=false>>">>]
<</if>>
<<else>>
You explain that you really aren't feeling like working the gloryhole tonight and <<=setup.getNpcName("npc_technician","first")>> nods. "@@.npc_technician;Okay, well... it was just an idea. Some other time, maybe.@@"<br>
<br>
The two of you head back to the bar for a "normal" night of drinks.<br>
<br>
[<<moveTo "event_technician_whoring_glory_abort" "Continue." 7200>>]
<</if>>
</div>/*#
#desc: suck off npc_maid w/technician in gloryhole
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'oral' $npc_maid.penissize 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'whoring' 7 'normal' $SEEN_FRIEND>>
<<else>>
<<removeItem 'handcuffs' true>>
<<deleteItem 'handcuffs'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You softly state "@@.pc;Twenty credits, please;@@" the sum clinking to the ground and then kicked under the stall where <<=setup.getNpcName("npc_technician","first")>> scoops it up.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
With <<=setup.getNpcName("npc_technician","first")>> still holding you by the hair you lean forward, pulling past her guidance as you don't stop until your nose is against the wall and you have <<=ps(setup.getNpcName("npc_maid","first"))>> full length down your throat.
<<else>>
With <<=setup.getNpcName("npc_technician","first")>> still holding you by the hair you lean forward, pulling past her guidance as you struggle a little to gulp down <<=ps(setup.getNpcName("npc_maid","first"))>> full length and press your nose to the wall.
<</if>>
<br><br>
"@@.npc_technician;Damn, you swallowed that <<getWordPenis false>> like a true pro! But you need to do more than that to earn your credits. Make sure the customer gets their money's worth and is eager to tell all their friends what a first-rate gloryhole slut is on duty tonight.@@"
<<else>>
<<=setup.getNpcName("npc_technician","first")>> holds you by the hair as you set to work. <<=ps(setup.getNpcName("npc_maid","first"))>> "Destroyer" is far too big for you to deep-throat, so you combine your cuffed wrists with your lips to kiss and lick your way up and down the shaft — <<=setup.getNpcName("npc_technician","first")>> providing
<<if setup.getTotalValue("oral") > 5>>
gentle guidance the whole time.
<<else>>
guidance the whole time to make up for your meagre skill.
<</if>>
<br><br>
"@@.npc_technician;Yeah, make love to that <<getWordPenis false>>, make sure the customer gets their money's worth and is eager to tell all their friends what a first-rate gloryhole slut is on duty tonight.@@"
<</if>>
<br><br>
You moan submissively and follow along with <<=ps(setup.getNpcName("npc_technician","first"))>> guidance to give the best blow-job you can. In addition to her directing your head she constantly whispers in your ear "@@.npc_technician;That's right, worship that <<getWordPenis false>>. This isn't just your job, but your passion. This is where you belong, whoring yourself out for tips as a perfect street-slut.@@"<br>
<br>
Your combined efforts are soon rewarded as "The Destroyer" twitches and then, with a grunt <<=setup.getNpcName("npc_maid","first")>> cums.<br>
<br>
<<if $fetish.cum>>
<<=setup.getNpcName("npc_technician","first")>> pulls your head back and uses her free hand to aim the Destroyer right at your face, <<getWordCum>> spurting across your face as <<=setup.getNpcName("npc_maid","first")>> unloads the full payload of her heavy balls.<br>
<br>
"@@.npc_technician;Dirty cum-slut,@@" <<=setup.getNpcName("npc_technician","first")>> states with a snort.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> cums to the rescue to point "The Destroyer" into a towel and save you from the messy aftermath of your efforts.
<</if>>
"@@.npc_technician;Remember to say thanks. Politeness is always key in a customer-service industry.@@"<br>
<br>
[<<moveTo "event_technician_whoring_glory_6" "Thank your client and get ready to serve more." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_whoring_glory_6" "Thank your client and tap out for the night." 180 "<<set $scene.accept=false>>">>]<br>
<<else>>
Your mouth can't help but watering a bit but you pause and explain to <<=setup.getNpcName("npc_technician","first")>> that, really, you're more in the mood to just get some drinks...<br>
<br>
She sighs as she removes your cuffs. "@@.npc_technician;Okay, Don't want you doing anything you aren't comfortable with... really thought you'd enjoy this though, oh well.@@"<br>
<br>
The two of you emerge from the gloryhole as <<=setup.getNpcName("npc_maid","first")>> is re-arranging her skirts. "@@.npc_maid;Don't tell me I scared you?@@" She asks.<br>
<br>
"@@.npc_technician;Nah, it's okay. Maybe some other time.@@"<br>
<br>
"@@.npc_maid;Sure, sure... well, I'm going to go spank this thing else I'm going to be walking funny for an hour, you two have a good night!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> disappears into one of the non-gloryhole stalls and you and <<=setup.getNpcName("npc_technician","first")>> head for the bar.<br>
<br>
[<<moveTo "event_technician_whoring_glory_abort" "Continue." 7200>>]
<</if>>
</div>/*#
#desc: finish off npc_maid w/npc_technician in gloryhole
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<removeItem 'handcuffs' true>>
<<deleteItem 'handcuffs'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid")>>
<</if>>
<div id="invframe" class="scrolltext">
You catch your breath and mumble a "@@.pc;Thank you@@" as the softening Destroyer retreats.<br>
<br>
"@@.npc_maid;No, thank YOU,@@" <<=setup.getNpcName("npc_maid","first")>> replies with a chuckle as you hear her foot-steps walking away and then the door to the bathroom close.<br>
<br>
<<if $scene.accept>>
You lick your lips and smile up at <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_technician;Mmmm, good whore... you ready for more? You haven't even paid off my commission yet! You up for more? Who knows who the next customer could be!@@"<br>
<br>
<<printThought 'Hmm, sounds like the setup with <<=setup.getNpcName("npc_maid","first")>> was a 1-shot thing and sticking around will have me at the mercy of the usual clientele...'>><br>
<br>
[<<moveTo "event_technician_whoring_glory_7" "You're warmed up and ready to work!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_whoring_glory_7" "You're done for the evening and would rather just have some drinks." 180 "<<set $scene.accept=false>>">>]
<<else>>
You cough softly and ask <<=setup.getNpcName("npc_technician","first")>> if you could get some drinks now?<br>
<br>
"@@.npc_technician;Aww, tapping out early? And you hadn't even finished paying off my commission!@@" She smiles and leans in for a kiss. "@@.npc_technician;No probs, let me just get those cuffs off and we can have a drink — my treat.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> helps you back to your feet and wipes off your face before the two of you head for the bar.<br>
<br>
[<<moveTo "event_technician_whoring_glory_abort" "Continue." 7200>>]
<</if>>
</div>/*#
#desc: seconds customer w/npc_technician in gloryhole
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<removeItem 'handcuffs' true>>
<<deleteItem 'handcuffs'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin and turn back towards the gloryhole with your mouth open and tongue extended.<br>
<br>
"@@.npc_technician;Now that's what I call an eager employee! Good <<switch $npc_technician.flags.knowgender>><<case 'female' ''>>girl<<case 'male'>>boy<<default>>job<</switch>>!@@"<br>
<br>
You don't have long to wait before another customer steps into the adjacent stall. Remembering your earlier lesson you ask for money up front and they pass <<=setup.getNpcName("npc_technician","first")>> credits through the hole before a significantly less-impressive than "The Destroyer" cock appears before you.<br>
<br>
[<<moveTo "event_technician_whoring_glory_8" "Suck suck!" 180>>]
<<else>>
You state that you had fun, but are ready to call it quits for the evening.<br>
<br>
"@@.npc_technician;Aww, okay, I thought you'd last longer than that, but I guess you've probably had a long week, eh?@@"<br>
<br>
She removes your hand-cuffs and the two of you head for the bar.<br>
<br>
[<<moveTo "event_technician_whoring_glory_abort" "Continue." 7200>>]
<</if>>
</div>/*#
#desc: npc_technician proposes fucking you in gloryhole
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'whoring' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You suck off another customer, this time <<=setup.getNpcName("npc_technician","first")>> taking a backseat to just watch and grin as you suck the <<man>> to satisfaction and gulp down your
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
delicious
<<else>>
yummy
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty
<<else>>
disgusting
<</if>>
<</if>>
"reward." <br>
<br>
The two of you alone once more <<=setup.getNpcName("npc_technician","first")>> shifts somewhat impatiently. "@@.npc_technician;So, uh... the original plan was to just help fulfill your fantasy but... watching you suck cock? Turns out that's REALLY fucking hot. I know it's a bit cramped in here but... would you mind it if I plowed your ass while you were servicing the next customer? I could use the relief and the idea of doing that has my arousal over 9000...@@"<br>
<br>
[<<moveTo "event_technician_whoring_glory_9" "Agree to her request." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_whoring_glory_9" "Actually, you think you're done being whored out for the evening." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: wait for DP in gloryhole w/npc_technician
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'whoring' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<if !$scene.accept>>
<<removeItem 'handcuffs' true>>
<<deleteItem 'handcuffs'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.pc;Yes, <<=setup.getNpcName("npc_technician","formal")>>,@@" you reply, shuffling your position to expose your rear.<br>
<br>
"@@.npc_technician;Oh you are just the best princess-slave ever!@@"
<<case 'neutral'>>
"@@.pc;Sure!@@" you reply, shuffling your position to expose your rear.<br>
<br>
"@@.npc_technician;Oh you are just the best <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>> ever!@@"
<<case 'sub'>>
"@@.pc;Since you've been a good slave,@@" you reply, shuffling your position to expose your rear.<br>
<br>
"@@.npc_technician;Of course, since I have the best owner in the world!@@"
<</switch>>
<br><br>
You don't have long to wait before another <<getWordPenis>> pops through in front of you. <<=setup.getNpcName("npc_technician","first")>> having occupied the time sawing her <<if $npc_technician.relationship.her_caged>>caged <</if>><<getWordPenis false>> between your cheeks — seemingly wanting to hold out until your other end is "filled" before she executes on her fantasy.<br>
<br>
You go through the ritual of asking for money up front... somehow even more humiliating and depraved when your girlfriend is waiting to fuck your ass.<br>
<br>
Money exchanged you lean forward and spread your lips as <<=setup.getNpcName("npc_technician","first")>> tightens her grip on your hips.<br>
"@@.npc_technician;Showtime...@@"<br>
<br>
<<if $player.body_ref.vagina>>
[<<moveTo "event_technician_whoring_glory_10" "Continue." 300>>]
<<else>>
[<<moveTo "event_technician_whoring_glory_10" 'Time to get airtight...' 300>>]
<</if>>
<<else>>
You note that, actually, your knees are getting a bit sore and could you just get some drinks?<br>
<br>
She shifts, the bulge between her legs as she adjusts herself testament to her frustration. "@@.npc_technician;Yeah... okay. Come on whisky dick, my panties are getting a bit stretched out!@@"<br>
<br>
She removes your hand-cuffs and the two of you head for the bar.<br>
<br>
[<<moveTo "event_technician_whoring_glory_abort" "Continue." 7200>>]
<</if>>
</div>/*#
#desc: DP'd by npc_technician in gloryhole
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'whoring' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<playerOrgasm>>
<<addCredits 60>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Though not as big as "The Destroyer" your latest client still has an above-average cock... which is soon forced all the way down your throat as <<=setup.getNpcName("npc_technician","first")>> <<if $npc_technician.relationship.her_caged>>whips out a strap-on to take<<else>>takes<</if>> you hard from the other end.<br>
<br>
Your weight is a bit precarious as you hang from your wrists, but there's no denying how erotic it is to be fucked by your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>> while sucking off some stranger for a few credits.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> leans over, nibbling your ear as she continues to hump as she growls in your ear. "@@.npc_technician;Do your job, whore. Suck that cock while I plow this ass like a field.@@"<br>
<br>
You moan and obey, your enthusiasm prompting a gasp of pleasure from the other side of the partition, "@@.generic_male1;Easy there, you're going to suck it off!@@"<br>
<br>
You just moan in response, too sandwiched between <<=setup.getNpcName("npc_technician","first")>> and the wall to do anything but slurp, breathe and take it hard and deep.<br>
<br>
"Helping out" <<=setup.getNpcName("npc_technician","first")>> relaxes some of her weight enough for you to lean back, her hand on your head guiding you to bob forward and back in time to her thrusts. "@@.npc_technician;Good little cock-socket, suck, suck, suck. Earn those credits while I Fuck. Your. Butt.@@"<br>
<br>
You gasp and moan, and are rewarded with a mouthful of cum before your client retreats as you slump against the wall. While <<=setup.getNpcName("npc_technician","first")>> then rears back and fills you from the other end as you leak all over the floor.<br>
<br>
"@@.npc_technician;Fuck that was...@@" She pants for air and slowly extricates herself from your ass as your legs give out and you collapse. "@@.npc_technician;Shit, sorry!@@" She unclips your wrists to take the strain off your shoulder and helps you up to sit on the toilet seat.<br>
<br>
"@@.npc_technician;Wow... that was INSANELY hot um... here, you MORE than earned this...@@" She hands you all the credits you've earned.<br>
<br>
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 4>>
She takes a deep breath. "@@.npc_technician;So... I don't know about you, but I need a drink. But first... could you move off the toilet? I actually need to take a piss. You know, use this stall for its architecturally intended purpose!@@"<br>
<br>
[<<moveTo "event_technician_whoring_glory_10_piss" "Stay seated and point out that you are a perfectly functional urinal." 180 "<<set $scene.accept=true>>">>]<br>
<<if setup.getTotalValue("piss") > 15>>
<<if setup.getTotalValue("submission") > 15 && $npc_technician.relationship.her_role == 'dom'>>
[@@.link_locked;You can't let your <<=setup.getNpcName("npc_technician","title")>> waste her delicious golden nectar while you're in her presence!@@]<br>
<<else>>
[@@.link_locked;You can't pass up the opportunity for a nice amber draught!@@]<br>
<</if>>
<<else>>
[<<moveTo "event_technician_whoring_glory_10_piss" "Stand up and make room for her to relieve herself." 180 "<<set $scene.accept=false>>">>]
<</if>>
<<else>>
She takes a deep breath. "@@.npc_technician;So... I don't know about you, but I need a drink. Thanks for doing this with me that was... whew, tonight was REALLY fucking hot!@@"<br>
<br>
[<<moveTo "event_technician_whoring_glory_11" 'Continue.' 7200>>]
<</if>>
</div>/*#
#desc: drink by npc_technician piss in gloryhole
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'piss' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 10 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin up at your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>> and point out that there's no need for you to move, after all, you're feeling quite thirsty...<br>
<br>
You can tell <<=setup.getNpcName("npc_technician","first")>> hasn't quite come down from her orgasmic high and it takes her a moment to process before she grins, then blushes, then grins again. "@@.npc_technician;Holy fuck you are just so depraved — how did I get so lucky?@@" She shakes her head as she brings her limp lady lance to your lips, "@@.npc_technician;I can't believe I wasted so much time thinking you were just some cute worker drone...@@" She caresses your face as you smile up at her; getting past the opening salty notes of cum to start guzzling her <<if setup.getTotalValue("piss") > 15>>heavenly<<else>>yummy<</if>> <<getWordPiss>>.<br>
<br>
She lets out a long sigh of relief as she finishes up, and you make sure to lick her nice and clean before tucking her lovely <<getWordPenis false>> back into her clothes.<br>
<br>
"@@.npc_technician;I love you,@@" she whispers as you rise to your feet, pulling you in for a kiss heedless of what your mouth was just doing.<br>
<br>
She smiles and the two of you leave the stall, taking a moment to freshen up before heading for the bar.
<<else>>
You move out of the way to let her relieve herself and then the two of you exit the stall.
<</if>>
<br><br>
[<<moveTo "event_technician_whoring_glory_11" 'Continue.' 7200>>]
</div>/*#
#desc: have drinks w/npc_technician after full night in gloryhole
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'handcuffs' true>>
<<deleteItem 'handcuffs'>>
<<if $player.makeup.messed > 50>>
<<set $player.makeup.messed = 10>>
<</if>>
<<drinkBooze $player 10>>
<<applyStress -30>>
<<set $npc_technician.relationship.kink_indulge.whore = 2>>
<<include "checkTechnicianBarterEvent">>
<<applyExperience 'humiliation' 15 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> take a moment to freshen up and then hit the bar, spending the rest of the evening drinking and having fun. Every few minutes <<=setup.getNpcName("npc_technician","first")>> gets a bit of a wistful look on her face and glances at you with a sly smile that tells you that she's thinking about your earlier activities. Every time you bite your lip and wink, causing her to smile wider, or pull you in for a kiss.<br>
<br>
The discussion dies down and she starts to stand. "@@.npc_technician;Well this was... one hell of a night, but I need to do some prep before tomorrow's session so... I'll see you later.@@" She leans in closer, whispering in your ear where only you can hear "@@.npc_technician;My <<if $fetish.sissy>>sissy<<else>>sexy<</if>> whore.@@"<br>
<br>
You shudder and she winks, paying off the tab and heading off, leaving you alone at the bar.<br>
<br>
[<<moveTo "room_usual_place_inside" "Continue." 600>>]
</div>/*#
#desc: technician hires you as prostitute - her dom
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitutionClients[$scene.clientIndex].visited = true>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
You lead your <<=setup.getNpcName("npc_technician","title")>> into the private room and she looks around with a nod.<br>
<br>
"@@.npc_technician_dom;Hmm, yes, I suppose this will do... A bit low-class for me, but quite appropriate to a whore like yourself.@@"<br>
<br>
You shudder submissively at the way she plays things up, the knowing glimmer in her eye reminding you that she knows EXACTLY how turned on being treated like this makes you... and your arousal feeds right back to hers as she grinds her thighs together.<br>
<br>
"@@.npc_technician_dom;Well, come on then,@@" she commands. "@@.npc_technician_dom;Get up on the bed and earn your pay — or earn for your pimp, more likely. Enslaved to your job, to me, and to your pimp... you really can't escape, but I suppose that is all one should expect from a <<if $fetish.sissy>>sissy <</if>>slut whore.@@"<br>
<br>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo 'event_technician_whoring_full_dom_2' 'Yes <<=setup.getNpcName("npc_technician","title")>>... (offer your <<getWordVagina>>).' 1800 "<<set $scene.anal=false>><<set $scene.unlock=false>>">>]<br>
<<elseif setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
[<<moveTo 'event_technician_whoring_full_dom_2' 'Offer up your <<getWordVagina>> to be unlocked and used.' 1800 "<<set $scene.anal=false>><<set $scene.unlock=true>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked in chastity.@@]<br>
<</if>>
<</if>>
[<<moveTo 'event_technician_whoring_full_dom_2' 'Yes <<=setup.getNpcName("npc_technician","title")>>... (offer your rear).' 1800 "<<set $scene.anal=true>>">>]<br>
<<else>>
[<<moveTo 'event_technician_whoring_full_dom_2' 'Yes <<=setup.getNpcName("npc_technician","title")>>... (offer your rear).' 1800 "<<set $scene.anal=true>>">>]<br>
<</if>>
[<<moveTo 'event_technician_whoring_abort' 'This is too much.' 600>>]
</div>/*#
#desc: serve technician as prostitute - her dom
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'whoring' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<if $scene.anal>>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<else>>
<<if $scene.unlock>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $scene.pay = $scene.client.base_pay>>
<<addCredits $scene.pay>>
<<set $scene.her_cut = Math.floor($npc_barkeeper.flags.prostitution.her_cut * $scene.pay)>>
<<set $npc_barkeeper.flags.prostitution.money_earned += $scene.her_cut>>
<<addCredits `-($scene.her_cut)`>>
<<playerOrgasm>>
<<if $npc_technician.relationship.kink_indulge.whore < 3>>
<<set $npc_technician.relationship.kink_indulge.whore = 3>>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.floor.technician_dom = true>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
Obediently you take a moment to <<if $npc_technician.relationship.sissyomatic>>request <<=setup.getNpcName("npc_ai","formal")>> <</if>>unlock your <<=ps(setup.getNpcName("npc_technician","title"))>> cage to begin immediately serving the unsheathed broadsword.<<if !$scene.anal && $scene.unlock>> She grins, and returns the favour.<</if>>
<<else>>
<<=setup.getNpcName("npc_technician","formal")>> gazes down as you obediently slide up onto the bed and present yourself for her use.<<if !$scene.anal && $scene.unlock>> She grins and unlocks your chastity belt.<</if>>
<</if>>
<<if $scene.anal>>
You bend over and present your rear, and <<=setup.getNpcName("npc_technician","formal")>> is soon sliding deep.<br>
<br>
You moan submissively, eager to once again take her big, beautiful <<getWordPenis false>>.<br>
<br>
"@@.npc_technician_dom;You like that, whore?@@" She asks, giving you a smack on the ass that cracks through the room as she continues to thrust.<br>
<br>
"@@.pc;Yes...@@" You moan as she picks up the pace, nearly shoving you across the bed with every hard thrust.<br>
<br>
Despite her stern demeanour her cockswomanship is as expert as always and you moan into the pillow as she pounds you to an analgasm before climaxing herself<<if $fetish.cum>>, pulling out just in time to shoot her load across your back<</if>>.<br>
<br>
"@@.npc_technician_dom;Good whore,@@" she states, tossing a handful of credits across your back as she returns to her feet.<br>
<br>
You mumble a thanks and she winks and then leans in for a quick kiss on the neck. "@@.npc_technician;Thanks, that was fun.@@" She whispers before <<if $npc_technician.relationship.her_caged>>you hear the click of her cage locking shut and she slips<<else>>slipping<</if>> out of the room."
<<else>>
<<=setup.getNpcName("npc_technician","formal")>> pushes you back and crawls up onto you, her hard member dripping on your belly as you spread your legs for her.<br>
<br>
"@@.npc_technician_dom;Such an obedient whore — just the thought of selling yourself has you sopping wet... which is fortunate for you because I ain't planning on going slow.@@"<br>
<br>
You gasp as she slams into you, her hips pressing you down as she looks you in the eye. Reflexively your lips part but she grins and plays up her role "@@.npc_technician_dom;Kiss a whore? Hardly, I didn't come here for romance. I paid to fuck. This. Hole.@@"<br>
<br>
The bed rocks with each thrust and you moan in response. Despite her words implying that her focus is on her own pleasure <<=setup.getNpcName("npc_technician","first")>> fucks you good, grinding against you at the bottom of each stroke as she rails you on top of the bed. You orgasm at least three times before she finally cums, your legs rubbery as you collapse back onto the bed.<br>
<br>
She takes a deep breath to re-assert herself and then slides free and stands up.<br>
<br><br>
"@@.npc_technician_dom;Not bad... you've earned a tip... for taking far more than the tip.@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
You groan internally at the corny joke but hold your tongue as you crawl over to re-lock her cage<<if $scene.unlock>>, the lock closes with a click as she sighs... and then locks you away as well<</if>>.
<<elseif $scene.unlock>>
She runs her hand between your legs one final time, then locks your chastity belt back in position with a click.
<</if>>
A stack of credits go click as she drops them into your hand. "@@.npc_technician_dom;There you go, whore. Now get back to work.@@"<br>
<br>
You curtsy obediently and thank her sincerely before she departs with a final friendly wink.
<</if>>
<br><br>
You take a few minutes to clean up and then head back down to the bar where you hand over <<=ps(setup.getNpcName("npc_barkeeper","first"))>> share.<br>
<br>
[<<moveTo 'room_usual_place_inside' 'Look around the bar.' 600 "<<if !$scene.anal && $scene.unlock>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
</div>/*#
#desc: technician hires you as prostitute - her dom
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" $scene.client.image_intro>>
<div id="invframe" class="scrolltext">
You confess that you aren't really feeling things and <<=ps(setup.getNpcName("npc_technician","first"))>> demeanour instantly melts.<br>
<br>
"@@.npc_technician;I'm so sorry! We had fun before so I was just- No, it doesn't matter what I intended, you're uncomfortable and that's bad.@@" She sits down on the bed and smiles up at you. "@@.npc_technician;Here, come on over and cuddle, okay? I promise all of this is just an act, I'd never want to do anything that made you feel bad.@@"<br>
<br>
You smile back and melt into her welcoming arms, she really is the best.<br>
<br>
Eventually there's a knock on the door — it seems that you aren't the only one "working" tonight and, after a final embrace and exchange of affection you and <<=setup.getNpcName("npc_technician","first")>> leave and you wish her good-night.<br>
<br>
"@@.npc_technician;You too, hon — and you be careful.@@"<br>
<br>
You nod and she disappears into the crowd.<br>
<br>
[<<moveTo 'room_usual_place_inside' 'Look around the bar.' 600>>]
</div>/*#
#desc: technician hires you as prostitute - her sub
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitutionClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You lead the way to the private room, closing the door and turning around to find <<=setup.getNpcName("npc_technician","first")>> already on her knees.<br>
<br>
"@@.npc_technician;Please, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> — this slave has been a bad, bad, girl and needs her punishment...@@"<br>
<br>
She blinks up at you, a neat pile of credits in front of her on the floor.<br>
<br>
[<<moveTo 'event_technician_whoring_full_sub_2' 'Give this naughty girl a spanking.' 1800 "<<set $scene.spank=true>>">>]<br>
[<<moveTo 'event_technician_whoring_full_sub_2' 'Edge and tease her as punishment.' 1800 "<<set $scene.spank=false>>">>]<br>
[<<moveTo 'event_technician_whoring_abort' 'This is too much.' 600>>]
</div>/*#
#desc: serve technician as prostitute - her sub
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<set $scene.pay = $scene.client.base_pay>>
<<addCredits $scene.pay>>
<<set $scene.her_cut = Math.floor($npc_barkeeper.flags.prostitution.her_cut * $scene.pay)>>
<<set $npc_barkeeper.flags.prostitution.money_earned += $scene.her_cut>>
<<addCredits `-($scene.her_cut)`>>
<<if $npc_technician.relationship.kink_indulge.whore < 3>>
<<set $npc_technician.relationship.kink_indulge.whore = 3>>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.floor.technician_sub = true>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.spank>>
You quickly have your girlfriend/slave/client bent over your knee, her skirt flipped up to display her pert bum as you get to work interrogating and spanking her for each failure.<br>
<br>
She only somewhat manages to stay "in-character" — her moans of pleasure occasionally interrupting as she
<<if $npc_technician.relationship.her_caged>>
strains within her cage.
<<else>>
drips the whole time.
<</if>>
<br><br>
Her bottom a nice even pink you finish taking things full circle by commanding her to "make it up" to you by worshipping and massaging your feet. Your own effort to play the stern <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> slips slightly at the lovely sight of her kissing your toes and smiling lovingly back up.
<<else>>
You guide <<=setup.getNpcName("npc_technician","first")>> back onto the bed and get to work.<br>
<br>
You start off by stroking her thighs, teasing your way closer and closer as he she takes short, quick, breaths and you order her to confess her "sins" as you ease closer and closer to her most sensitive bits.<br>
<br>
By the time you're licking her smooth, hairless balls she's already trembling and when <<if $npc_technician.relationship.sissyomatic>><<=setup.getNpcName('npc_ai', 'formal')>> helpfully retracts <<=ps(setup.getNpcName("npc_technician","first"))>>cage and <<elseif $npc_technician.relationship.her_caged>>you tauntingly remove her cage to<</if>> you work your way up the rigid, pulsing shaft she's panting and desperate.<br>
<br>
With an evil grin you remind her that cumming is only for "good girls," continuing your interrogation as you have to spend more and more time resting between the brush of your finger or kiss of your lips against her flesh as you keep her just on the edge of climax for minute after minute.<br>
<br>
Her control slipping <<=setup.getNpcName("npc_technician","first")>> starts occasionally thrashing on the bed, but you ride it out, teasing her on the edge for several more minutes before concluding with a hands-free ruin <<if $npc_technician.relationship.sissyomatic>>and her cage sealing back in place<<elseif $npc_technician.relationship.her_caged>>and locking her back in her cage<<else>>tucking her back in her panties<</if>> the instant you've finished wiping up the leakage.<br>
<br>
"@@.npc_technician;You're evil but, like... WOW,@@" <<=setup.getNpcName("npc_technician","first")>> whispers when she finally catches her breath. You smile and crawl forward for a kiss as you thank her for the "fun."
<</if>>
<br><br>
The session comes to an end and you pull her in for an after-care cuddle, somewhat reluctantly taking her money before giving her a kiss goodnight. Once she's out of the room you take a few minutes to clean up and then head back to the bar to drop off <<=ps(setup.getNpcName("npc_barkeeper","first"))>> cut.<br>
<br>
[<<moveTo 'room_usual_place_inside' 'Look around the bar.' 600>>]
</div>/*#
#desc: technician hires you as prostitute - her neutral
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitutionClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You lead <<=setup.getNpcName("npc_technician","first")>> back to the private room with her almost giddy with excitement.<br>
<br>
The door closes and she slams down a stack of credits. "@@.npc_technician;You. Me. Fuck. Now.@@" She states with a wild look in her eye.<br>
<br>
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || !setup.isCage())>>
[<<moveTo 'event_technician_whoring_full_neut_2' 'Spread your legs and offer your <<getWordVagina>>.' 1800 "<<set $scene.action='vag'>>">>]<br>
<</if>>
[<<moveTo 'event_technician_whoring_full_neut_2' 'Bend over and offer your rear.' 1800 "<<set $scene.action='anal'>>">>]<br>
<<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_technician_whoring_full_neut_2' 'Whip it out and give her the business.' 1800 "<<set $scene.action='penis'>>">>]<br>
<</if>>
[<<moveTo 'event_technician_whoring_abort' 'This is too much.' 600>>]
</div>/*#
#desc: serve technician as prostitute - her neutral
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = $scene.client.base_pay>>
<<addCredits $scene.pay>>
<<set $scene.her_cut = Math.floor($npc_barkeeper.flags.prostitution.her_cut * $scene.pay)>>
<<set $npc_barkeeper.flags.prostitution.money_earned += $scene.her_cut>>
<<addCredits `-($scene.her_cut)`>>
<<if $npc_technician.relationship.kink_indulge.whore < 3>>
<<set $npc_technician.relationship.kink_indulge.whore = 3>>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.floor.technician_neut = true>>
<<if $scene.action == 'anal'>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<<if $fetish.cum && $npc_technician.relationship.kinks.cum && $scene.action != "penis">>
<<alterStatAllWorn 'cumsoaked' '["add",30]'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'penis'>>
You pocket the credits and whip it out as <<=setup.getNpcName("npc_technician","first")>> licks her lips and grins.<br>
<br>
A moment later her skirt is flipped up and her panties are pulled aside as you're slamming
<<switch $player.body.penissize[0]>>
<<case 0 1>>
every centimetre of your <<getWordMyPenis>> into the entrance to her rear.
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_technician;Oh, I can't believe I spent so much for so little! Don't stop<<if $fetish.sissy>> sissy<</if>>;I love how humiliating this must be for you...@@"
<<else>>
"@@.npc_technician;Mmm, harder.@@"
<</if>>
<<case 'spe'>>
"@@.npc_technician;Mmm, so perfect...@@"
<<default>>
"@@.npc_technician;Mmm, harder.@@"
<</switch>>
<<case 2 3>>
every centimetre of your <<getWordMyPenis>> in and out of her rear. "@@.npc_technician;Harder <<if $fetish.sissy>>sissy <</if>>I want to feel all you've got!@@"
<<case 4 5>>
your large <<getWordMyPenis>> in and out of her.<br>
<br>
"@@.npc_technician;Goddess, you're so big... no, don't stop. I want it all!@@"
<<case 6>>
your massive <<if $player.body_ref.horsecock && $player.body_ref.knot>>dragon-cock<<elseif $player.body_ref.knot>>dog-cock<<elseif $player.body_ref.horsecock>>horse-cock<<else>><<getWordMyPenis>><</if>> in and out of her.<br>
<br>
"@@.npc_technician;Goddess, you're so big... no, don't stop. <<if $player.body_ref.knot>>knot me good, <</if>>I want it all!@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Her hole is tight and surprisingly wet as you plow her over the bed, then she flips over, looking up at you with glazed, pre-orgasmic eyes as you manage to time things for your twin climaxes to coincide <<if $player.body_ref.cumProduction == 0>>and you dry-orgasm<<elseif $player.body_ref.cumProduction > 1>>and you pump her more than full<<else>>as you squirt deep inside of her<</if>> as she hands-free cums herself.
<<case 'anal'>>
You bend over and <<=setup.getNpcName("npc_technician","first")>> wastes no time in taking you up on your offer, her big, familiar <<getWordPenis false>> sliding into your rear as you moan.<br>
<br>
"@@.npc_technician;Take it, whore,@@" she grunts as she grabs firm hold of your hips and starts thrusting, your eyes rolling back in debauched pleasure as your girlfriend literally pays to fuck you...<br>
<br>
You moan as she angles her hips, her cock-head hitting you in JUST the right spot as your hands clench into fists. "@@.npc_technician;Mmm, so tight — I should pay extra for a whore who takes such thoughtful care of herself.@@"<br>
<br>
Your response is cut off as she kicks things into a higher gear; railing you into the mattress for half a minute before <<if $fetish.cum && $npc_technician.relationship.kinks.cum>>pulling out just in time to shoot her load all over you with a grin. "@@.npc_technician;There we go. Now you're a PAINTED whore,@@" she remarks with a smile.<<else>>filling you deep.<</if>>
<<case 'vag'>>
You spread your legs and <<=setup.getNpcName("npc_technician","first")>> wastes no time in taking you up on your offer, her big, familiar <<getWordPenis false>> sliding into your <<getWordVagina>> as you moan.<br>
<br>
"@@.npc_technician;Take it, whore,@@" she grunts as she pulls you to the edge of the bed for maximal depth and starts thrusting, your eyes rolling back in debauched pleasure as your girlfriend literally pays to fuck you...<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> tries to keep the "stern" look of a client on her face, but she just can't hold back the grin that reflects your own ecstatic expression, and it isn't long before she cums — <<if $fetish.cum && $npc_technician.relationship.kinks.cum>>pulling out just in time to shoot her load all over you with a grin. "@@.npc_technician;There we go. Now you're a PAINTED whore,@@" she remarks with a smile.<<else>>blasting you deep in the baby maker.<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You and your girlfriend collapse next to each other on the bed, your hands intertwining as you take several minutes to catch your breath.<br>
<br>
"@@.npc_technician;Whew! I needed that... and you are DEFINITELY worth the price. Having to pay my own for sex... kinky!@@" She winks at you and then pops to her feet, the two of you cleaning up and sharing a kiss goodbye before she heads home and you drop off <<=ps(setup.getNpcName("npc_barkeeper","first"))>> portion.<br>
<br>
[<<moveTo 'room_usual_place_inside' 'Look around the bar.' 600>>]
</div>/*#
#desc: run into technician after a maid shift
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You finish your shift and wave good-bye to your fellow maidtresses. You are greeted by a familiar voice as you exit the Cafe.<br>
<br>
"@@.npc_technician;Hey, cute stuff.@@"<br>
<br>
You turn to see <<=setup.getNpcName("npc_technician","first")>> leaning against the wall, looking at you with a lop-sided grin in an obvious, and successful, attempt to look casually seductive.<br>
<br>
"@@.npc_technician;So... I was wondering...@@" she states, walking towards you with a hint of swagger. "@@.npc_technician;Game's tonight and my flat, well... it's a little... dirty.@@" She winks at you, continuing to ham things up like she was auditioning for a noir film. <<printThought "Maybe more of a noir parody film...">>. "@@.npc_technician;You got time to come help do something about that?@@"<br>
<br>
[<<moveTo "event_technician_maid_cafe_2" "Sure, that sounds fun." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_technician_maid_cafe_2" "You're kind of busy today..." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: go home with technician after maid shift
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "City Street">>
<<else>>
<<set $player.location to "Cafe: Newtype IV">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/street.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You try to match her vibe as you reply that you'd love to <<if $npc_technician.relationship.her_role == 'dom'>>help her out<<else>>help do something about the mess<</if>>.<br>
<br>
"@@.npc_technician;Simply lovely,@@" she replies, hooking her arm in yours as she leads the way home, somewhat breaking character to gush about how impressed she is with your ability to walk everywhere in <<if setup.checkItemTypeTag('shoes', ['ballet'])>>ballet <</if>>heels.<br>
<br>
"@@.npc_technician;Like, even some of the maidtresses only wear heels when they're in front of customers... but you! You're wearing <<if setup.checkItemTypeTag('shoes', ['ballet'])>>ballet boots<<else>>those heels<</if>> in public like it's nothing! Meanwhile I barely manage the company's 4cm mandate... and I have a desk job!@@"<br>
<br>
You modestly shrug, explaining that it's just a matter of practice as you join her in the elevator up to her flat.<br>
<br>
"@@.npc_technician;Just practice... sure... sorry, love, but what you've evolved into? Yeah, practice may be a part of it, but it ain't the whole story!@@"<br>
<br>
[<<moveTo "event_technician_maid_cafe_3" "Continue on to her flat." 120>>]
<<else>>
With a touch of reluctance you tell <<=setup.getNpcName("npc_technician","first")>> that you actually have some errands and stuff you have to get to.<br>
<br>
Still in character she shakes her head and turns, glancing back over her shoulder for a parting line "@@.npc_technician;in that case... catch you later... sugar.@@"<br>
<br>
Her sultry words leave you a little weak in the knees as you watch her walk away and you try to remember exactly what it was that was so important for you to do...<br>
<br>
[<<moveTo "room_mall_interior" "Look around the mall." 60>>]
<</if>>
</div>/*#
#desc: at technician flat after maid shift
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> hurries you into her flat and then looks around with a smile.<br>
<br>
"@@.npc_technician;So, my sweet, cute, beautiful maid... what do you think we should do with the place?@@"<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
[<<moveTo "event_technician_maid_cafe_4_sub_1" "You need to get to work!" 300 "<<set $scene.sub=true>>">>]<br>
<<case 'neutral' ''>>
You take a moment to consider your options...<br>
<br>
[<<moveTo "event_technician_maid_cafe_4_sub_1" 'To clean her flat would be an honour!' 300 "<<set $scene.sub=true>>">>]<br>
[<<moveTo "event_technician_maid_cafe_4_dom_1" "You just finished a shift, put her to work!" 300 "<<set $scene.sub=false>>">>]<br>
<<case 'sub'>>
[<<moveTo "event_technician_maid_cafe_4_dom_1" "Continue." 300 "<<set $scene.sub=false>>">>]<br>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
[<<moveTo "event_technician_maid_cafe_abort" "Actually... you aren't in the mood to do any cleaning today." 1800>>]
</div>/*#
#desc: abort technician visit after maid shift
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You stop and tell <<=setup.getNpcName("npc_technician","first")>> that you're too tired to continue things.<br>
<br>
"@@.npc_technician;Aww... well, I guess you did already work today, and it is the weekend, come on, let's just relax for a bit!@@"<br>
<br>
She beckons you to the couch and you spend some time just cuddling before you finally excuse yourself and head out.<br>
<br>
"@@.npc_technician;Alright, take care of your stuff. See you tonight at game!@@"<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 300>>]
</div>/*#
#desc: clean technician flat after maid shift
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bondage' 12 'normal' $SEEN_FRIEND>>
<<addItemSet 'maid_bondage_technician'>>
<<wearItemSet 'maid_bondage_technician'>>
<</if>>
<<set $player.location to "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Your curtsy obediently and start to clean things up only for <<=setup.getNpcName("npc_technician","formal")>> to smile and shake her head. "@@.npc_technician;Ah, ah! You may be dressed for serving drinks, but for cleaning? No, no, my sweet bondage maid needs a few more accessories...@@"<br>
<br>
You nod and wait as she helps you into a snug armbinder, ankle cuffs, and a tightly-buckled gag complete with feather duster. "@@.npc_technician;There! Isn't that nicer?@@" She asks with a smile as she sits back on the couch and gestures for you to work. "@@.npc_technician;Well go on — the room is not going to dust itself!@@"<br>
<br>
[<<moveTo "event_technician_maid_cafe_4_sub_2" "You're here to clean whatever she wants." 300>>]<br>
[<<moveTo "event_technician_maid_cafe_abort" "Actually... you'd like to head home." 300>>]
</div>/*#
#desc: clean technician in shower after maid shift dom
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
While your restraints certainly limit what you can do, you play the good slave, mincing around the flat and dusting everything you can reach all while your <<=setup.getNpcName("npc_technician","title")>> looks lustily on.<br>
<br>
Feeling her eyes on you at every moment, you play your part well — being sure to bend deep to show off your <<if setup.checkItemTypeWorn("panties")>>(lack of) <</if>>panties to her clear delight.<br>
<br>
Even with your restrictions, the fact remains that her flat just isn't that large. Before long you find yourself standing with little else to do as she rises to her feet and starts leading the way to the bathroom.<br>
<br>
"@@.npc_technician;Come, my cute servant... I have something ELSE that needs cleaning...@@"<br>
<br>
[<<moveTo "event_technician_maid_cafe_5" "Follow..." 300>>]<br>
[<<moveTo "event_technician_maid_cafe_abort" "You have some things you need to take care of at home." 300>>]
</div>/*#
#desc: clean technician flat after maid shift
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_maid")>>
<div id="invframe" class="scrolltext">
You look around the flat and then theatrically take a seat on the couch.<br>
<br>
"@@.npc_technician;What are you doing? You're the maid!@@"<br>
<br>
You smile back and point out that actually... you're the <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... so how about your <<if $npc_technician.relationship.her_collared>>collared<</if>> slave slips into a nice maid outfit of her own and you'll supervise the cleaning?<br>
<br>
She squints at you in mock annoyance before storming into her bedroom, re-appearing a couple of minutes later in a classic French Maid costume.<br>
<br>
"@@.npc_technician;Is this more to <<switch $player.identify_as>><<case 'female'>>Mistress'<<case 'male'>>Master's<<default>>Overseer's<</switch>> liking?@@" She asks and you grin, motioning for her to get started.<br>
<br>
"@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" She replies.<br>
<br>
[<<moveTo "event_technician_maid_cafe_4_dom_2" "Monitor your maid-slave." 1800>>]<br>
[<<moveTo "event_technician_maid_cafe_abort" "Actually... you'd like to head home." 300>>]
</div>/*#
#desc: supervise technician maid shift dom
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Bathroom of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_technician","npc_technician_maid")>>
<div id="invframe" class="scrolltext">
It doesn't take much cleaning before <<=setup.getNpcName("npc_technician","first")>> starts to struggle in her steep costume heels... so you hop off the couch to supervise closer, striding next to her atop your <<if setup.checkItemTypeTag('shoes', ['ballet'])>>towering ballet boots<<else>>heels<</if>> and giving her instructions alongside admonishments for not spending more time in heels.<br>
<br>
"@@.npc_technician;Hey! Not all of us are, like... absurdly skilled in heels! I swear, you must be part cat or ostrich or some other digitigrade because your skill is inhuman... and inhumanly hot.@@"<br>
<br>
You smile and give a little twirl before coaxing <<=setup.getNpcName("npc_technician","first")>> on, reminding her to focus on keeping her weight even and not to take too long of steps as you guide her through the last of the cleaning.<br>
<br>
Even as <<=setup.getNpcName("npc_technician","first")>> tries to follow your encouragement and rise to the occasion, you can tell she's nearing her limit as her ankles wobble and she makes eyes for the bathroom.<br>
<br>
"@@.npc_technician;How about we get out of these outfits for some... additional cleaning?@@"<br>
<br>
[<<moveTo "event_technician_maid_cafe_5" "Follow." 300>>]<br>
[<<moveTo "event_technician_maid_cafe_abort" "You have some things you need to take care of at home." 300>>]
</div>/*#
#desc: wash with technician before game
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sub>>
<<removeItemSet 'maid_bondage_technician'>>
<<deleteItemSet 'maid_bondage_technician'>>
<<else>>
<</if>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<include "cleanPlayer">>
<</if>>
<<set $player.location to "Bathroom of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
Shedding clothing, you and <<=setup.getNpcName("npc_technician","first")>> cram into her small shower stall. Things get swiftly steamy hot as
<<if $scene.sub>>
you worshipfully scrub your <<=setup.getNpcName("npc_technician","title")>> before she gently returns the favour, cooing with delight about how much she adores you as she gets her "Perfect Princess" squeaky clean.
<<else>>
she obediently cleans you from head to toe before you return the favour, congratulating her on her growing maid skills and whispering how pretty she looked in her outfit.
<</if>>
Eventually the shower comes to an end — though not without some fluffy-towel caressing before you head back out to finish preparing for game. She puts her normal clothes back on and you consider if you want to change before your other friends arrive.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_technician_maid_cafe_6" 'Help <<=setup.getNpcName("npc_technician","first")>> get things ready for the RPG session, then cuddle while you wait.' 300 "<<useClothSetPop 'tmp'>>">>]<br>
[<<moveTo "room_citymap" "You have some things you need to take care of at home." 300>>]
<<else>>
<<set _nextdate = setup.checkTaskLocationTime('room_hallway_technician')>>
<<set _tmpSeconds = Math.max(300,setup.secondsToDate($now,_nextdate)-600)>>
<<if _tmpSeconds > 7400>>
<<set _tmpSeconds = _tmpSeconds - 7200>>
<<elseif _tmpSeconds <= 1800>>
<<set _tmpSeconds = 300>>
<<else>>
<<set _tmpSeconds = _tmpSeconds - 1500>>
<</if>>
<<if $options.ezchange>>
[<<moveTo "event_technician_maid_cafe_6" "Just put your maid outfit back on and help her get things ready for the RPG session, then cuddle while you wait." _tmpSeconds "<<useClothSetPop 'tmp'>>">>]<br>
[<<moveTo "room_citymap" "Put your maid outfit on and leave, you have some things you need to take care of at home." 300 "<<useClothSetPop 'tmp'>>">>]
<<else>>
[@@.link_locked;You are insufficiently attired for game.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<</if>>
<</if>>
</div>/*#
#desc: cuddle with technician before game
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You help <<=setup.getNpcName("npc_technician","first")>> with some final clean-up that prior attire made impossible before helping her lay out snacks and attend to the other minor preparations for the evening's game.<br>
<br>
With everything in order and time to kill, the two of you fall back onto the sofa to get in some good snuggling before your friends arrive.<br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_hallway_technician')>>
<<set _tmpSeconds = Math.max(300,setup.secondsToDate($now,_nextdate)-600)>>
<<if _tmpSeconds < 360>>
[@@.link_locked;Alas, there is insufficient time before game for a proper foot massage.@@]<br>
<<else>>
[<<moveTo "event_technician_maid_cafe_7" "Give her a foot massage." 300>>]<br>
<</if>>
<<if _tmpSeconds < 7200>>
[<<moveTo "event_technician_maid_cafe_8" "Cuddle until game-time." _tmpSeconds>>]<br>
<</if>>
[<<moveTo "room_citymap" "You have some things you need to take care of at home." 300>>]
</div>/*#
#desc: massage technician feet before game
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You slide to the floor and take <<=ps(setup.getNpcName("npc_technician","first"))>> feet in your hands to start one of your famous foot-massages.<br>
<br>
<<if $scene.sub>>
"@@.npc_technician;Goddess yes,@@" she moans as you start working away at her tight soles. "@@.npc_technician;If there is a better perk to having a slave... I struggle to think what it might be.@@"
<<else>>
"@@.npc_technician;What? Shouldn't I be the one serving?@@"<br>
<br>
You smile back as you continue to work her feet as she full-body shudders in pleasure, explaining that it is <<switch $player.identify_as>><<case 'female'>>a Mistress'<<case 'male'>>a Master's<<default>>an Overseer's<</switch>> job to take care of their slave... and how will she continue to develop in her high-heel skills without appropriate after-care.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip and whispers. "@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" as you continue to work.
<</if>>
<br><br>
As always, it takes work, but you diligently work the tension out of her feet and calves. "@@.npc_technician;Having this to look forward to... well, it almost makes wearing heels appealing... though I think I'll still classify <<if setup.checkItemTypeTag('shoes', ['ballet'])>>ballet boots<<else>>my wearing them<</if>> as torture devices...@@"<br>
<br>
Only after you've worked every knot and soreness out of her feet and finished up with a bit of soothing lotion do you slide back up on to the couch where she eagerly pulls you into her arms. "@@.npc_technician;You're the best...@@"<br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_hallway_technician')>>
<<set _tmpSeconds = Math.min(setup.secondsToDate($now,_nextdate)-10,setup.secondsToDate($now,_nextdate)-600)>>
<<if _tmpSeconds < 7200>>
<<if _tmpSeconds < 0>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)-10>>
<</if>>
[<<moveTo "event_technician_maid_cafe_8" "Cuddle until game-time." _tmpSeconds>>]<br>
<</if>>
[<<moveTo "room_citymap" "You have some things you need to take care of at home." 300>>]
</div>/*#
#desc: cuddle with technician until game
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You spend the afternoon happily snuggled up with your girlfriend until there's a knock on the door and your friends start trickling in for game.<br>
<br>
[<<moveTo "event_rpg_root" "Game time!" 300 "<<completeTask 'technician_roleplay_1'>><<set $scene.preGameEvent=true>>">>]
</div>/*#
#desc: dominant visit technician before work
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You stand over <<=ps(setup.getNpcName("npc_technician","first"))>> desk as she blinks adorably up at you and you consider what to do with your slave this morning.<br>
<br>
<<printThought "Can't linger too long before I need to head to work... better make it count.">><br>
<br>
<<if $npc_technician.relationship.her_collared>>
[<<moveTo "event_technician_morning_dom_2_collartug_1" 'Give her a kiss and a little collar tug before work.' 300>>]<br>
<</if>>
<<if $npc_technician.relationship.her_caged>>
[<<moveTo "event_technician_morning_dom_2_chastitycheck_1" 'Chastity check time!' 300>>]<br>
<</if>>
[<<moveTo "event_technician_morning_dom_2_footkiss_1" 'Have her kiss your feet.' 300>>]<br>
<<if State.hasPlayed("event_technician_heels_training_1_6")>>
[<<moveTo "event_technician_morning_dom_2_heeltrain_1" 'Revisit her heel training.' 300>>]<br>
<</if>>
[<<moveTo "event_technician_morning_dom_2_plug_1" 'Have her wear a plug for the day.' 300>>]<br>
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 2>>
[<<moveTo "event_technician_morning_dom_2_piss_1" 'Your bladder is pretty full.' 300>>]<br>
<</if>>
<<if $fetish.cum>>
<<if State.hasPlayed("event_technician_commando_final_1")>>
[@@.link_locked;You've already had her go a day without panties... turns out Wizards just don't make the best commandos.@@]<br>
<<else>>
[<<moveTo "event_technician_morning_dom_2_panties_1" 'Order her to lose the panties.' 300>>]<br>
<</if>>
<</if>>
<<if $player.flags.church.level >= 2 || $npc_technician.relationship.sissyomatic>>
[<<moveTo "event_technician_morning_dom_2_prayer_1" 'How about a morning prayer?' 300>>]<br>
<</if>>
<<if $fetish.cum && $npc_technician.relationship.kink_indulge.cum >= 2 && $player.flags.mealplan.cum_unlocked>>
<<if $player.flags.mealplan.cum>>
[<<moveTo "event_technician_morning_dom_2_cum_1" 'Add something extra to her coffee.' 300>>]<br>
<<else>>
[@@.link_locked;You do not have cum on hand to add to <<=ps(setup.getNpcName("npc_technician","first"))>> coffee... maybe if you were using it in your meals?@@]<br>
<</if>>
<</if>>
[<<moveTo "room_elevator_in" "Head up to the office." 180>>]
</div>/*#
#desc: dominant visit technician before work: tug her collar
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You reach out to hook a finger through <<=ps(setup.getNpcName("npc_technician","first"))>> collar and gently pull her to her feet, your lips pressing together in a passionate kiss that has her ever so slightly swoon.<br>
<br>
You could lose yourself in her soft, submissive kiss, her tongue welcoming yours as you hold your slave by the collar and she all but sinks into you.<br>
<br>
You're finally interrupted by the sound of someone clearing their throat, your arm relaxing to allow <<=setup.getNpcName("npc_technician","first")>> to lean back. She smiles up at you, her eyes twinkling with desire before she turns in the direction of the sound.<br>
<br>
"@@.generic_male1;I, um... got locked out of my laptop?@@" The employee nervously asks as <<=setup.getNpcName("npc_technician","first")>> sighs.<br>
<br>
"@@.npc_technician;Duty calls. Have a wonderful day... <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" She adds with a wink.<br>
<br>
You blow her a parting kiss and head for the elevator, the poor employee with their computer troubles even more flabbergasted as you walk past them.<br>
<br>
[<<moveTo "room_elevator_in" "Head up to work." 180>>]
</div>/*#
#desc: dominant visit technician before work: check her cage
#status: RELEASED 0.8.8.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 12 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You step into the quasi-privacy of <<=ps(setup.getNpcName("npc_technician","first"))>> cubicle and instruct her to lift her skirt.<br>
<br>
She glances around quickly, but does not hesitate to obey, slowly lifting the fabric to reveal her cute panties stretched around her caged <<getWordPenis false>>
<<if $npc_technician.relationship.sissyomatic>>
the gleaming, high-tech device glowing slightly through the fabric and dipping between her legs to meet up with the attached anal plug.
<<else>>
a slight wet spot visible in the straining fabric, testament to how even solid steel moistens, rather than dampens, her arousal.
<</if>>
<br><br>
"@@.npc_technician;Is this slave's security to her <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>'s approval?@@" She asks.<br>
<br>
You nod and tell her how
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
beautiful she looks imprisoned, and how proud you are of her making such a STRONG commitment to the anal-only lifestyle.<br>
<br>
She squirms slightly, turning her raised skirt into an elegant curtsy before thanking you for "@@.npc_technician;Your wonderful training, my hole yearns for the next opportunity to be of use to its <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@"
<<case 'own'>>
much you're looking forward to the next time you unlock and unpackage your "prize"... and that you'll be using her so thoroughly she'll be begging you to lock her back up to recover. <br>
<br>
She blushes and grins. "@@.npc_technician;Mmmm, the way you describe it has me looking forward to it even more, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I just love being locked up and yours to use and control.@@"
<<default>>
happy you are that she would trust you to lock her up.<br>
<br>
"@@.npc_technician;Of course, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I love having you as my keyholder.@@"
<</switch>>
<br><br>
You smile even wider and nod for <<=setup.getNpcName("npc_technician","first")>> to lower her skirt. She obeys, biting her lips as she returns to her seat and struggles to find a comfortable position.<br>
<br>
"@@.npc_technician;Th-thank you for the visit, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, but this slave should return to work before her excitement gets the better of her. Goddess! The constant reminder of your hold over me, of my dedication... well you keep good hold of that key! In this state I would get up to all manner of trouble if I was free!@@"<br>
<br>
[<<moveTo "room_elevator_in" "Head up to work." 180>>]
</div>/*#
#desc: dominant visit technician before work: kiss your feet
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 10 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You walk around the partition into <<=ps(setup.getNpcName("npc_technician","first"))>> and order to kiss your feet.<br>
<br>
Immediately she slides to the floor, elbows on the ground as she leans in to kiss her way from your toe up and over the arch of your foot and then down the heel before repeating the pattern on the other side and looking sweetly up.<br>
<br>
"@@.pc;Good slave,@@" you note and she smiles, rising back to her feet on your command just as an unaware employee walks up looking for assistance.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> flashes you a beaming smile before turning to see what computer problem the poor employee is facing this morning, and you make your way back to the elevator.<br>
<br>
[<<moveTo "room_elevator_in" "Head up to work." 180>>]
</div>/*#
#desc: dominant visit technician before work: heel train her
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.kink_indulge.heels < 2>>
<<addEvent 'technician_heels_shopping'>>
<</if>>
<<switch $npc_technician.relationship.kink_indulge.heels>>
<<case 1>>
<<applyExperience 'dominance' 15 'very' $SEEN_FRIEND>>
<<case 2>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<case 3>>
<<applyExperience 'dominance' 7 'little' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.kink_indulge.heels>>
<<case 1>>
You ask <<=setup.getNpcName("npc_technician","first")>> how she's doing with her heels, and she blushes as she suddenly shrinks and you realise that she's actually barefoot — having kicked off her heels as soon as she got to her desk.<br>
<br>
"@@.npc_technician;I'm sorry, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>! I know you're just, like... naturally gifted in heels, but for me... I mean, I know we've been training, and I promise I have gotten better but...@@"<br>
<br>
You sigh, thanking your slave for her honesty, but noting that the only way for her to improve is if she focuses. Towards that end you order her to slip back into her heels, and tack on that she is not allowed to remove them for the remainder of the day.<br>
<br>
"@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...@@" She replies, pouting a bit as she slides back into her shoes and then takes her feet, her mask slipping for a moment as the edges of her lip twitches and she winks at you. "@@.npc_technician;I'll be a good girl and focus on my training...@@"<br>
<br>
You thank her for being such a good slave and she perks up even more, sitting up tall in her chair and momentarily making you think of one of <<=ps(setup.getNpcName("npc_manager","formal"))>> "representative position" speeches.<br>
<br>
Yet another helpless coworker is heading for <<=ps(setup.getNpcName("npc_technician","first"))>> desk for some technical assistance and <<=setup.getNpcName("npc_technician","first")>> blows you a kiss as you head for the elevator.
<<case 2>>
You check in with <<=setup.getNpcName("npc_technician","first")>> once again regarding her heels to find her, once more, barefoot at her desk.<br>
<br>
Without so much as an instruction <<=setup.getNpcName("npc_technician","first")>> bows her head, fishing around under her desk for the locking shoes you bought her.<br>
<br>
You circle around and drop to a knee to give <<=setup.getNpcName("npc_technician","first")>> a couple seconds of massage before sliding the shoes onto her feet and closing the small locks.<br>
<br>
"@@.npc_technician;Maybe it's the practice, or just the better quality... but these aren't as bad as what I was used to... though I still don't understand how you can handle things twice as high without your calves, like... bursting into flames.@@"<br>
<br>
You smile, reminding her that it's all a matter of practice as she settles back into her chair, the heels, once again, seeming to push her into a better, prouder posture overall as she sits up tall and blows you a kiss as you head for the elevator.
<<case 3 4 5>>
You ask <<=setup.getNpcName("npc_technician","first")>> how her heel-training is going and she proudly shows off the locking heels, already in place.<br>
<br>
"@@.npc_technician;Going great! Thanks to you<<if $npc_technician.relationship.kink_indulge.heels < 5>>... though, I think I'm really getting the hang of wearing heels<</if>>... though I still will never say no to a foot massage any time you feel like putting those magical fingers to work!@@"<br>
<br>
You smile and promise you'll do so soon, but you spot a co-worker approaching with laptop in hand and the expression that says "everything is broken and I'm behind on work." You blow your lovely slave a kiss as she sits a little taller in her chair as you head for the elevator.
<</switch>>
<br><br>
[<<moveTo "room_elevator_in" "Head up to work." 180>>]
</div>/*#
#desc: dominant visit technician before work: her wear plug
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.kink_indulge.plug == 2>>
<<set $npc_technician.relationship.kink_indulge.plug = 3>>
<</if>>
<<if $npc_technician.relationship.kink_indulge.plug == 3>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.kink_indulge.plug>>
<<case 0>>
You smile, and tell your slave that you'd like to reward her with a "full" day.<br>
<br>
"@@.npc_technician;Full, you mean...@@" <<=setup.getNpcName("npc_technician","first")>> bites her lip and rocks in her chair as you smile wider.<br>
<br>
She takes a deep breath and then pulls out her purse, unzipping and digging through to come up with a modest-sized buttplug and a sampler pack of lube. "@@.npc_technician;Fortunately I'm always prepared...@@" She says with a smile as she stands up and heads for the bathroom. "@@.npc_technician;Coming to supervise?@@"<br>
<br>
[<<moveTo "event_technician_morning_dom_2_plug_2" "Of course!" 240 "<<set $scene.plug=true>>">>]<br>
[<<moveTo "event_technician_morning_dom_2_plug_2" "Actually... you need to get to work." 120 "<<set $scene.plug=false>>">>]
<<case 1>>
You smile and tell your slave that you'd like her to have another "full" day.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins wide. "@@.npc_technician;Of course, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> mmm... would you believe I got a commendation last time? Yeah, turns out that when my ass is stuffed I am actually significantly more patient at wading through BDU bullshit.@@" bites her lip and rocks in her chair as you smile wider.<br>
<br>
[<<moveTo "event_technician_morning_dom_2_plug_2" "Plug her for the day." 240 "<<set $scene.plug=true>>">>]<br>
[<<moveTo "event_technician_morning_dom_2_plug_2" "Actually... you need to get to work, she'll have to work empty." 120 "<<set $scene.plug=false>>">>]
<<case 3>>
You smile and tell your slave that you'd like her to have another "full" day.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip and flutters her eyelashes. "@@.npc_technician;So... actually, I already am.@@" She beams with pride, wiggling in her chair and letting out a soft gasp as her eyes roll back momentarily. "@@.npc_technician;After seeing, and feeling, how much more productive I can be when I am <<if $npc_technician.relationship.sissyomatic>>double-stuffed<<else>>filled<</if>> with my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>'s loving control... well, it's becoming part of my routine. Shower, dress, coffee, plug.@@"<br>
<br>
You smile and tell her how happy you are with her discovery, telling her to enjoy her "full" day.<br>
<br>
"@@.npc_technician;Oh, I will <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, I WILL.@@" She gasps and turns to her computer. "@@.npc_technician;Did I mention I connected my on-call alerts to the vibrator in my ass? Because I did... and the whole department is fighting to match my response times... I'm half tempted to tell them, you think your boss could cover for an HR fallout?@@" <<=setup.getNpcName("npc_technician","first")>> laughs. "@@.npc_technician;Anyway, gotta get on this, catch you later!@@"<br>
<br>
She blows you a kiss, which you return, and then you turn for the elevator.<br>
<br>
[<<moveTo "room_elevator_in" "Head up to your desk." 180>>]
<<default>>
ERROR: unexpected npc_technician.relationship.kink_indulge.plug <<=$npc_technician.relationship.kink_indulge.plug>>
<</switch>>
</div>/*#
#desc: dominant visit technician before work: her wear plug
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.plug>>
<<if $npc_technician.relationship.kink_indulge.plug < 1>>
<<applyExperience 'dominance' 13 'very' $SEEN_FRIEND>>
<<set $npc_technician.relationship.kink_indulge.plug = 1>>
<<elseif $npc_technician.relationship.kink_indulge.plug < 2>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<set $npc_technician.relationship.kink_indulge.plug = 2>>
<</if>>
<</if>>
<</if>>
<<if $scene.plug>>
<<set $player.location to "Cloud Data Service">>
<<else>>
<<set $player.location to "Cloud Data Service Bathroom">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.plug>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_technician")>>
<<else>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.plug>>
You follow <<=setup.getNpcName("npc_technician","first")>> to a nearby restroom and head for an empty stall where she immediately puts her hands against the wall and wiggles her rear in invitation. "@@.npc_technician;You like what you see, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@" She lifts the back of her skirt to reveal
<<if $npc_technician.relationship.sissyomatic>>
the hollow base of the plug locked in by her <<=setup.getItemName("sissyomatic")>>. "@@.npc_technician;The <<=setup.getNpcName("npc_ai","title")>> has me all spread and ready for you...@@"
<<else>>
her pert, smooth rear.
<</if>>
<br><br>
You grab the plug from her purse and generously lube it up before bringing it to her hole. Standing next to her you kiss her neck and whisper how proud of her you are as you gently probe her hole, slowly working the plug back and forth as you ease it in... slowly spreading her wider until you hit the thickest part and her ass all but sucks it the rest of the way in and she gasps in pleasure.<br>
<br>
"@@.npc_technician;So good...@@"<br>
<br>
You whisper a final "@@.pc;good girl.@@" Before stepping back for her to fix her skirts, her face a bit flush with excitement.<br>
<br>
<<if $npc_technician.relationship.kink_indulge.plug == 1>>
"@@.npc_technician;Whew! Today is going to be a bit of a challenge with this excitement<<if $npc_technician.relationship.sissyomatic>>... it really makes the <<=ps(setup.getNpcName("npc_ai","title"))>> gift so much more intense<</if>>! Every time I move it shifts and reminds me what a wonderful <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> I have, to fill me with <<switch $npc_technician.flags.knowgender>><<case 'female'>>her <<case 'male'>>his <<default>><</switch>>control...@@"
<<else>>
"@@.npc_technician;Even better than I remembered... <<if $npc_technician.relationship.sissyomatic>>it really makes the <<=ps(setup.getNpcName("npc_ai","title"))>> gift so much more intense! <</if>>I'm going to have SUCH a productive day today... and I hope knowing your obedient slave is stuffed by your command gives you a good day, a well, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@"
<</if>>
<br><br>
You smile at her enthusiasm and give her another kiss before giving her a quick swat on the butt to jiggle her her plug and make her gasp as she swings her hips theatrically for the short walk back to her desk.
<<else>>
You reply that, actually, you need to get to work and <<=setup.getNpcName("npc_technician","first")>> pouts playfully.<br>
<br>
"@@.npc_technician;Aww, you had me all excited to get stuffed!<<if $npc_technician.relationship.sissyomatic>> Well, double-stuffed, given that the <<=setup.getNpcName("npc_ai","formal")>> has blessed me with her locked-in presence.<</if>>@@"<br>
<br>
You apologise and wish her a good day anyway and she smiles "@@.npc_technician;every day is a good day when I get to see my wonderful <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>,@@" she replies, blowing you a kiss as you head for the elevator.
<</if>>
<br><br>
[<<moveTo "room_elevator_in" "Head up to your desk." 180>>]
</div>/*#
#desc: dominant visit technician before work: order her to drink piss
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You grin and ask <<=setup.getNpcName("npc_technician","first")>> if she's feeling thirsty.<br>
<br>
"@@.npc_technician;Well, I have my morning coffee, of course,@@" she states, lifting the large mug in demonstration as her voice trails off and realisation blooms on her face. "@@.npc_technician;Oh! Ooohhh... well, if this slave can relieve her <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> she would, of course, be delighted...@@"<br>
<br>
[<<moveTo "event_technician_morning_dom_2_piss_2" "Head for the bathroom to relieve your bladder." 240>>]<br>
[<<moveTo "event_technician_morning_dom_2_piss_2_abort" "Actually... you need to get to work." 120>>]
</div>/*#
#desc: dominant visit technician before work: her drink piss
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 18 'very' $SEEN_FRIEND>>
<<applyExperience 'piss' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> practically skips through the office and into the bathroom where she heads straight for a stall and takes a seat on one of the toilets, face upturned, mouth open and tongue extended in invitation as her eyes twinkle in delight at the prospect you offered.<br>
<br>
You don't hold back, placing
<<if setup.checkItemTypeWorn("cage")>>
the
<<if setup.isCage()>>
tip of your cage past her lips
<<else>>
shield of your chastity belt against
<</if>>
her lips
<<else>>
<<if $player.body_ref.penis>>
the tip of your <<getWordMyPenis>> across her tongue
<<else>>
your lips against hers
<</if>>
<</if>>
and unleashing your stream.<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> lips press tight and she gulps eagerly, managing to swallow every drop without a spill before licking her lips and grinning up at you.<br>
<br>
"@@.npc_technician;If I wasn't so blessed as to have you as my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> I'd be a little jealous that literally everything about you is fucking delicious!@@"<br>
<br>
She smiles and bounces back to her feet, somewhat reluctantly popping a breath mint "so the other employees don't get jealous" before her heading back to her computer and you to the elevator.<br>
<br>
[<<moveTo "room_elevator_in" "Ride up to your desk." 180>>]
</div>/*#
#desc: dominant visit technician before work: don't have her drink piss
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cloud Data Service Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You change your mind and tell <<=setup.getNpcName("npc_technician","first")>> that you were just checking that she was hydrated before you head up to work.<br>
<br>
She grins and winks. "@@.npc_technician;<<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, always taking such good care of <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>their<</switch>> slave! Yes, I promise I'm drinking plenty of water to balance out my little coffee addiction... okay, fine, my big coffee addiction...@@" She adds with a smirk.<br>
<br>
You congratulate her on keeping on top of her health and then head for the elevator.<br>
<br>
[<<moveTo "room_elevator_in" "Ride up to your desk." 180>>]
</div>/*#
#desc: dominant visit technician before work: ask to take her panties
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You grin slightly and order <<=setup.getNpcName("npc_technician","first")>> to hand over her panties.<br>
<br>
<<if State.hasPlayed("event_technician_commando_2")>>
"@@.npc_technician;You want me to try again, after what happened last time? Are you sure, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"
<<else>>
She reaches for a drawer and starts to pull out a fresh package of underwear when you clarify that you mean the one's she's wearing... and she better not replace them for the rest of the day.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> gulps "@@.npc_technician;Are you sure, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>? I, uh... tend to be a bit... drippy, and that's only increased since you enslaved me...@@" She shudders. "@@.npc_technician;Goddess, it turns me on so much to say that...@@"
<</if>>
<br><br>
<<if $now.getUTCDay() == 5>>
[@@.link_locked;Today's Friday, thus a short day... this would be more fun to have her go a full day.@@]<br>
<<else>>
[<<moveTo "event_technician_morning_dom_2_panties_2" "You said hand them over..." 240 "<<set $scene.take=true>>">>]<br>
<</if>>
[<<moveTo "event_technician_morning_dom_2_panties_2" "Let her keep her panties and head to work." 120 "<<set $scene.take=false>>">>]
</div>/*#
#desc: dominant visit technician before work: take her panties
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.take>>
<<addItem 'panties_technician'>>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_technician">>
<<set _pantiesowner_formal = "first">>
<<include "stealPanties">>
<<addWorkEvent 'technician_commando'>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.take>>
You stand firm and tell <<=setup.getNpcName("npc_technician","first")>> that she's going to spend the day sans panties.<br>
<br>
She bites her lip and shifts in her chair before glancing around and then reaching under her skirt to remove her panties, flashing <<if $npc_technician.relationship.her_caged>>her cage at you<<else>>you for a moment<</if>> before rolling the panties down her legs and placing them in front of you.<br>
<br>
You smile and pocket her "gift" as you tell her to have a good day...<br>
<br>
"@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...@@" She whispers lustily, "@@.npc_technician;Goddess. I'm already leaking with excitement... this is going to be a long day.@@"
<<else>>
You relent and say that <<=setup.getNpcName("npc_technician","first")>> can keep her panties for the day. "@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... I mean, don't get me wrong, the idea of you ordering me around like that makes me wet but... well, therein lies the problem...@@"<br>
<br>
You see another employee approaching to get some tech help from the Tech Wizard and you bow out to go to your own job.
<</if>>
<br><br>
[<<moveTo "room_elevator_in" "Head up to your desk." 180>>]
</div>/*#
#desc: technician calls you about commando leaking
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You get a call, it's from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_technician;Hi, so.. <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>? I'm following your instructions but, like... I just finished killing off the box of tissues I keep at my desk and I'm STILL LEAKING.@@"<br>
<br>
Your phone chirps again and you check to see she sent you a picture of the waste basket under her desk piled high with wadded up tissues... then another text that shows her
<<if $npc_technician.relationship.sissyomatic>>
dripping through her ultra high-tech cage.
<<elseif $npc_technician.relationship.her_caged>>
dripping out of her cage.
<<else>>
hard <<getWordPenis false>> wedged tightly between her thighs, already beaded with pre.
<</if>>
<br><br>
"@@.npc_technician;Would it be alright for me to bust out one of my emergency pairs of panties, now?@@"<br>
<br>
[<<moveTo "event_technician_commando_2" "You said all day, you meant ALL day." 240 "<<set $scene.wear=false>>">>]<br>
[<<moveTo "event_technician_commando_2" "End the experiment here." 120 "<<set $scene.wear=true>>">>]
</div>/*#
#desc: technician calls you about commando leaking
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.wear>>
<<addEvent 'technician_commando_final'>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.wear>>
You tell <<=setup.getNpcName("npc_technician","first")>> that she can put on one of her spare pairs of panties and she sighs in relief.<br>
<br>
"@@.npc_technician;Thank you, ... not that being ordered to spend the rest of the day like this wouldn't have been, like... nuclear fucking hot... but that's sort of the problem...@@"<br>
<br>
<<else>>
You express sympathy for <<=ps(setup.getNpcName("npc_technician","first"))>> plight but stand firm.<br>
<br>
"@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... I'm sorry for trying to get out of a task only... I'm just making such a mess!@@"<br>
<br>
You suggest that, rather than "waste" all of her drippings, maybe she could just lick things up?<br>
<br>
You hear a strained groan before she speaks again. "@@.npc_technician;Goddess... I'll be touching myself and licking it clean while sitting at my desk... fuck, on the one hand, why didn't I think of that? On the other? Well... if I thought the leaking was bad already... I think you just made it worse.@@" You hear her take a deep breath. "@@.npc_technician;Alright, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. Your command is my duty... and thanks. This has definitely been one of the most intense days at the office ever... I'm just glad I don't have any meetings this afternoon!@@"
<</if>>
<br><br>
She wishes you a good rest of the day and hangs up.<br>
<br>
[<<moveTo $scene.workEventReturn "Put your phone away and get back to work." 60 "<<set $currentcall = false>><<completeWorkEvent>>">>]
</div>/*#
#desc: technician meets after work regarding commando
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You step out into the lobby and find <<=setup.getNpcName("npc_technician","first")>> waiting for you.<br>
<br>
"@@.npc_technician;Hi <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" She says in greeting after running over to give you a passionate kiss... a kiss that tastes VERY much of girl-cum, her cum, to be precise. As the kiss drags on she guides one of your hands between her legs where you feel her wet thighs and her
<<if $npc_technician.relationship.sissyomatic>>
sleek cage, your fingers probing the high-tech device without a shred of protective fabric insulating it from her skirt.
<<elseif $npc_technician.relationship.her_caged>>
cage, your fingers brushing steel without a shred of protective fabric under her skirt.
<<else>>
hard <<getWordPenis false>>, unimpeded by underthings as it strains against her skirt.
<</if>>
<br><br>
She finally separates from the kiss and grins. "@@.npc_technician;Heh, so... obviously, I took your advice. Just wanted to let you know that I survived... and that I'm heading straight home for a shower, and to put this skirt in the wash, I half expect it to dry and stand up on its own at this point.@@"<br>
<br>
She winks. "@@.npc_technician;So, in conclusion... fun day... but I think I'll check this one off the bucket-list and wear panties to work from now on...@@"<br>
<br>
You congratulate her on making it through the day and completing your task, then give her another kiss for "luck" on the trip home before she skips off through the lobby.<br>
<br>
[<<moveTo 'company_lobby' "Continue on your way." 60>>]
</div>/*#
#desc: dominant visit technician before work: pray together
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'little' $SEEN_FRIEND>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'little' $SEEN_FRIEND>>
<<if $npc_technician.relationship.sissyomatic>>
<<changeHorny 10>>
<<else>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> if she'd like to share a quick prayer to start the morning and she smiles.<br>
<br>
"@@.npc_technician;Oooh, that sounds fun!@@"<br>
<br>
The two of you kneel down on the floor and offer up a brief prayer of thanks to
<<if $npc_technician.relationship.sissyomatic>>
<<=setup.getNpcName("npc_ai","formal")>>.<br>
<br>
In reward you feel a buzz from your toys, and you look across at <<=setup.getNpcName("npc_technician","first")>> as she smiles and softly purrs, knowing that she has received the same.
<<else>>
The Goddess.<br>
<br>
You feel a spark of feminine joy at your shared offering, and, as the prayer ends, you smile at <<=setup.getNpcName("npc_technician","first")>>, both of you feeling a bit lighter and happier as you prepare to face the day.
<</if>>
<br><br>
Prayer over your rise to your feet and give <<=setup.getNpcName("npc_technician","first")>> a hug before turning for the elevator.<br>
<br>
[<<moveTo "room_elevator_in" "Ride up to your desk." 180>>]
</div>/*#
#desc: dominant visit technician before work: cum in her coffee
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You ask to see <<=ps(setup.getNpcName("npc_technician","first"))>> coffee and she hands it over obediently.<br>
<br>
You tilt the vial of cum you had planned to use for lunch into her meal and she grins.<br>
<br>
"@@.npc_technician;Oooh, special cream! The only way to improve on a Cofferasque!@@"<br>
<br>
She grins as you hand back her drink, swirling it a little to mix and then taking a sip, a look of pure delight blossoming across her face.<br>
<br>
"@@.npc_technician;Mmmm, the best part of waking up is definitely a bit of cum in my cup...@@"<br>
<br>
She winks as her computer chimes indicating a ticket has come in. You wish her a good day and she toasts you with her coffee as you turn for the elevator.<br>
<br>
[<<moveTo "room_elevator_in" "Ride up to your desk." 180>>]
</div><<set _technicianCallAvailable = (
( (($now.getUTCDay()>0)&&($now.getUTCDay()<5)) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=17)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==5) && (($now.getUTCHours()==7)||(($now.getUTCHours()>=13)&&($now.getUTCHours()<=24))) ) ||
( ($now.getUTCDay()==6)||($now.getUTCDay()==0) && (($now.getUTCHours()>=10) && ($now.getUTCHours()<=24)) )
)>>/*#
#desc: call technician root
#status: FINISHED 0.4.0.0
#ignore_spell: d
#*/
<<set $player.location to "Phonecall">>
<<set _firstcall = false>>
<<set _call = 0>>
<<include "calcTechnicianCall">>
<<if _technicianCallAvailable>>
<<set _call = 1>>
<<else>>
<<set _call = 0>>
<</if>>
<<set $scene.addEvilTask = false>>
<<if $npc_technician.flags.evil == 1 && (
$currentTasks.hasOwnProperty("technician_roleplay_evil_repeat") && $currentTasks.technician_roleplay_evil_repeat.finished ||
!$currentTasks.hasOwnProperty("technician_roleplay_evil_repeat") && $currentTasks.hasOwnProperty("technician_roleplay_evil_second") && $currentTasks.technician_roleplay_evil_second.finished ||
!$currentTasks.hasOwnProperty("technician_roleplay_evil_repeat") &&
!$currentTasks.hasOwnProperty("technician_roleplay_evil_second") && $currentTasks.hasOwnProperty("technician_roleplay_evil_first") && $currentTasks.technician_roleplay_evil_first.finished)>>
<<set $scene.addEvilTask = true>>
<<include "addEvilRPGTask">>
<<elseif State.hasPlayed("event_destroy_technician_6")>>
<<set _call = 3>>
<<elseif !$player.flags.firstWorkDay>>
<<set _call = -1>>
<<elseif $npc_technician.firstcall==false>>
<<set $npc_technician.firstcall=true>>
<<set _firstcall = true>>
<<if $npc_technician.flags.dataservice_encounter.looked_up_skirt == true>>
<<set $npc_technician.flags.knowTrans = true>>
<</if>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_destroy_technician_6")>>
You call <<=setup.getNpcName('npc_technician', 'first')>> but get a "@@.computer;this number is not in service@@" error and you reflect on your betrayal of the cute Tech Wizard to <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<elseif $npc_technician.flags.evil == 1>>
<<if $scene.addEvilTask>>
You call <<=setup.getNpcName('npc_technician', 'first')>> and she replies sharply.<br>
<br>
"@@.npc_technician;Hey, loser. Missed you at game... you better be there this week. Or else.@@"<br>
<br>
She hangs up.<br>
<br>
<<printThought "That was blunt... and ominous.">>
<<else>>
You call <<=setup.getNpcName('npc_technician', 'first')>> but she doesn't answer.<br>
<br>
<<printThought "Is not answering your phone evil? I thought that was just leaving voicemails...">>
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
<<switch _call>>
<<case -1>>
You call <<=setup.getNpcName('npc_technician', 'first')>> but things go straight to voicemail.<br>
<br>
"@@.npc_technician;Sorry I can't talk, I'm either deep in game... or fighting fires at work, give me a call later!@@"<br>
<br>
<<printThought "Hmm... I wonder if she's having to deal with the fallout of my screw-up? Maybe I'll try tomorrow...">><br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Back." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 0>>
<<if ($now.getUTCHours()>7) || ($now.getUTCHours()< 17)>>
You try to call <<=setup.getNpcName('npc_technician', 'first')>>. She does not answer her phone. Hmm. You suppose she's busy somehow. Maybe you should try it later.
<<else>>
You try to call <<=setup.getNpcName('npc_technician', 'first')>>. She does not answer her phone. Either she's DMing another all-night gaming session, or she's asleep.
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Back." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 1 2>>
You try to call <<=setup.getNpcName('npc_technician', 'first')>>. She picks up the phone after a short time ringing. <<if $now.getUTCHours() < 10 && ($now.getUTCDay() == 0 || $now.getUTCDay() == 6)>>A sleepy sounding voice answers you: "@@.npc_technician;Who dares interrupt the great wizard's beauty sleep? Oh hey <<=setup.getPcFirstName('npc_technician')>>, it's you!@@"<<else>>"@@.npc_technician;<<=setup.getPcFirstName('npc_technician')>>! What's happening?@@"<</if>>
<br><br>
<<if _firstcall==true>>
<<if $npc_technician.flags.dataservice_encounter.handjob_finish == "">>
"@@.npc_technician;So, <<=setup.getNpcName('npc_admin', 'first')>> finally gave you my contact informations. It was about time colon-upper-case-D.@@"
<<else>>
"@@.npc_technician;Finally you call! I've totally been thinking about you like... a LOT colon-upper-case-D.@@"
<</if>>
<br><br>
<<printThought "Did she just... pronounce an emoji?">><br>
<br>
"@@.npc_technician;So...@@"<br>
<br>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_cafe_1') && !$currentTasks.technician_cafe_1.finished || $currentTasks.hasOwnProperty('technician_dinner') && !$currentTasks.technician_dinner.finished>>
"@@.npc_technician;I'm really looking forward seeing you again colon-upper-case-D. Is there something else?@@"<br>
<br>
<<else>>
<<if $npc_technician.stage == 0>>
"@@.npc_technician;What have you been up to lately? Say, you wanna meet and consume a lot of caffeinated hot liquid of black complexion?@@"
<<else>>
"@@.npc_technician;What have you been up to lately? Say... you wanna meet and consume a lot of caffeinated hot liquid of black complexion... or maybe do something else?@@"
<</if>>
<br><br>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_cafe_1')>>
<<if $currentTasks.technician_cafe_1.finished>>
[<<moveTo "room_call_technician_date_coffee" "Ask about meeting her again for coffee." 60>>]<br>
<<else>>
[@@.link_locked;You've already agreed to meet at a cafe with <<=setup.getNpcName('npc_technician', 'first')>>.@@]<br>
<</if>>
<<else>>
[<<moveTo "room_call_technician_date_coffee" "Meet at a cafe." 60>>]<br>
<</if>>
<<if $npc_technician.stage > 1 && $npc_technician.relationship.relationship_stage >= 1>>
<<if $currentTasks.hasOwnProperty('technician_dinner')>>
<<if $currentTasks.technician_dinner.finished>>
[<<moveTo "room_call_technician_date_dinner" "Ask her on another dinner date." 60>>]<br>
<<else>>
[@@.link_locked;You are already scheduled for a dinner date with <<=setup.getNpcName('npc_technician', 'first')>>.@@]<br>
<</if>>
<<elseif $currentTasks.hasOwnProperty("task_prostitution_final") && !$currentTasks.task_prostitution_final.finished>>
[@@.link_locked;You consider meeting <<=setup.getNpcName('npc_technician', 'first')>> for dinner, but remember your commitment to do a special job for <<=setup.getNpcName('npc_barkeeper', 'first')>> Friday.@@]<br>
<<else>>
[<<moveTo "room_call_technician_date_dinner" "Ask her to dinner." 60>>]<br>
<</if>>
<</if>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'technician', 'theme_psychiatrist_technician_15')>>
<<if -1 != _themeId && $npc_psychiatrist.themes.technician[_themeId].done>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_admin") && !$currentTasks.psychiatrist_couples_admin.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_landlord") && !$currentTasks.psychiatrist_couples_landlord.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_technician") && !$currentTasks.psychiatrist_couples_technician.finished || $currentTasks.hasOwnProperty("psychiatrist_couples_ex") && !$currentTasks.psychiatrist_couples_ex.finished>>
[@@.link_locked;You should finish your current couple's counseling before scheduling another one.@@]<br>
<<elseif $npc_psychiatrist.flags.evil == 1>>
[@@.link_locked;<<=setup.getNpcName("npc_psychiatrist", "formal")>> will not be hosting couple's counseling while she is still <<=ps(setup.getNpcName("npc_work_doctor", "formal"))>> bimbo slave...@@]<br>
<<else>>
[<<moveTo "event_call_technician_psychiatrist_1" 'Mention <<=ps(setup.getNpcName("npc_psychiatrist", "formal"))>> invitation to couples counseling.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_stables_technician_invite_1") && !State.hasPlayed("event_stables_technician_6")>>
<<if setup.hasRandomEvent('elevator_home', 'technician_horse_2')>>
[@@.link_locked;You're already waiting for the stable-<<master>> to fit you in.@@]<br>
<<else>>
[<<moveTo "event_stables_technician_schedule_1" "You'd like to take up the stable-<<master>>'s offer." 120>>]<br>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks['technician_roleplay_1'].finished ||
$currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks['technician_roleplay_surgery'].finished ||
$currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks['technician_roleplay_punish_1'].finished>>
[<<moveTo "call_technician_cancel_game_1" "Tell her you won't be able to make this Saturday's game." 120>>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
[<<moveTo "call_technician_ask_uniform_upgrade" "Ask her for outfit suggestions." 120>>]<br>
<</if>>
<<if State.hasPlayed("theme_technician_chuck_1")>>
<<if !setup.inPassageTag($scene.beforePhoneCallLocation,"home")>>
[@@.link_locked;You should be at home if you're going to have <<=setup.getNpcName("npc_technician", "first")>> over for fun with <<=setup.getNpcName("npc_chuck", "suffix")>>.@@]<br>
<<elseif $daily.technicianChuck>>
[@@.link_locked;All three of you could use some time to recover before another round with <<=setup.getNpcName("npc_chuck", "suffix")>>.@@]<br>
<<else>>
[<<moveTo "event_chuck_technician_1" 'Invite her over to have some fun with <<=setup.getNpcName("npc_chuck", "suffix")>>.' 180>>]<br>
<</if>>
<</if>>
<<if $npc_technician.flags.last_smalltalk != null>>
<<if setup.dayDiff($now, $npc_technician.flags.last_smalltalk)<5>>
[@@.link_locked;You have recently chatted with <<=setup.getNpcName('npc_technician', 'first')>> and can't think of anything minor to gab about. Maybe try again in a few more days.@@]<br>
<<else>>
[<<moveTo "room_call_technician_smalltalk" "Just talk a little bit." 1200>>] <<hint $options "Chatting with a friend from time to time can help blow off steam and reduce stress.">><br>
<</if>>
<<else>>
[<<moveTo "room_call_technician_smalltalk" "Just talk a little bit." 1200>>] <<hint $options "Chatting with a friend from time to time can help blow off steam and reduce stress.">><br>
<</if>>
[<<moveTo $scene.beforePhoneCallLocation "Say you just called to say hello and chat for a few more minutes." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 3>>
You try to call <<=setup.getNpcName('npc_technician', 'first')>>, but get nothing but a dead line... she really is gone, sacrificed in the effort to gain <<=ps(setup.getNpcName('npc_boss', 'formal'))>> approval.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</switch>>
<</if>>
</div>/*#
#desc: ask technician on a cafe date over the phone
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first_date = false>>
<<if ($npc_technician.affection>=$npc_technician.anger)>>
<<if !$player.locations.mallcafe>>
<<set $player.locations.mallcafe = true>>
<</if>>
<<include "technician_coffee_date">>
<<else>>
<<decrementEmotion 'anger' 'npc_technician' 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.affection>=$npc_technician.anger>>
You tell <<=setup.getNpcName('npc_technician', 'first')>> that you've rolled a natural 20 on decrypting messages and figured out what she means; and that you'd love to get together with her for coffee.<br>
<br>
"@@.npc_technician;Just as I predicted. Let's meet at the Newtype IV Cafe <<=$scene.day>> at <<if $options.militaryTime>>1600<<else>>4 pm<</if>>!
<<if $scene.first_date>>
That's the new Maid cafe in the Kaiser Franz Josef mall in the inner city, and let me tell you, as a regular: the maids are really hot. You're going to love it there :3.
<</if>>
See you there<<if $player.sec_style.body.name == "" || $npc_technician.flags.reactnamechange>>, <<=setup.getPcFirstName('npc_technician')>><</if>>!@@"
<<else>>
You ask <<=setup.getNpcName('npc_technician', 'first')>> if she wants to go for a coffee in the near future?<br>
<br>
"@@.npc_technician;Sorry<<if $player.sec_style.body.name == "" || $npc_technician.flags.reactnamechange>> <<=setup.getPcFirstName('npc_technician')>><</if>>, maybe another time, I'm... I'm not feeling too well today.@@"
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Say goodbye and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div><<if ($now.getUTCDay() == 6 && $now.getUTCHours() >= 15) || ( ($now.getUTCDay()==0) && ($now.getUTCHours()<15) )>>
<<set _tmpDay = (7-$now.getUTCDay())>>
<<if (_tmpDay == 7)>>
<<set _tmpDay = 0>>
<</if>>
<<set _tmpDate = setup.setNextDate($now, _tmpDay, 16, 0)>>
<<if ($now.getUTCDay()==0 && $now.getUTCHours()<15)>>
<<set $scene.day = "today">>
<<else>>
<<set $scene.day = "on Sunday">>
<</if>>
<<else>>
<<set _tmpDay = (6-$now.getUTCDay())>>
<<set _tmpDate = setup.setNextDate($now, _tmpDay, 16, 0)>>
<<if ($now.getUTCDay()==6 && $now.getUTCHours()<15)>>
<<set $scene.day = "today">>
<<else>>
<<set $scene.day = "on Saturday">>
<</if>>
<</if>>
<<addTaskById 'technician_cafe_1' _tmpDate>>
<<if $scene.day == "on Saturday" && $npc_technician.relationship.kink_indulge.piss >= 2 && (!State.hasPlayed("event_technician_cafe_brunch_piss_1") || random(1,5) == 1) && $currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.finished>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 9, 0)>>
<<addEvent 'technician_cafe_brunch' _nextDate>>
<</if>>/*#
#desc: ask technician on a dinner date over the phone
#status: FINISHED 0.7.10.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ($npc_technician.affection>=$npc_technician.anger)>>
<<if !($currentTasks.hasOwnProperty('admin_drink_1') && !$currentTasks.admin_drink_1.finished && $now.getUTCDay() != 5)>>
<<include "technician_dinner_date">>
<</if>>
<<else>>
<<decrementEmotion 'anger' 'npc_technician' 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.affection>=$npc_technician.anger>>
You ask <<=setup.getNpcName('npc_technician', 'first')>> if she'd like to maybe get together with you for something a bit more than coffee?<br>
<br>
"@@.npc_technician;More than coffee? But coffee is one of the greatest substances on earth!@@" You try to clarify and she laughs.<br>
<br>
<<if $npc_technician.relationship.dinner_dates == 0>>
"@@.npc_technician;You're so cute when you're flustered! Even over the phone! Yeah, I understand what you're getting at... tell you what: <<if $player.flags.boiless.known>>I know that you know that I don't normally eat, per se, but <</if>>I've been experimenting a bit with sous vide and I'd love to have you over and see what you think. So, how about it? Let's say seven pm <<if $now.getUTCDay()==5>>next <</if>>Friday, my place?@@"
<<else>>
"@@.npc_technician;You survived my cooking once and want more? Oooh, I'd love to have another test subject! <<if $now.getUTCDay()==5>>Next <</if>>Friday, seven pm, my place?@@"
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty('admin_drink_1') && !$currentTasks.admin_drink_1.finished && $now.getUTCDay() != 5>>
<<printThought "Dang, that overlaps with getting drinks with <<=setup.getNpcName('npc_admin','first')>>!">><br>
<br>
You explain that, unfortunately, you've already committed to meeting a friend for drinks.<br>
<br>
"@@.npc_technician;Dang, aren't you the popular one! That's good though, always nice to have more friends, and I'm definitely not the jealous sort... even if your cute butt is totally worth fighting over! Anyway, maybe next week? Hit me up when we're a bit closer — and before your dance card is all filled up!@@"
<<else>>
You quickly agree to her offer.<br>
<br>
"@@.npc_technician;Great, see you then!@@"
<</if>>
<<else>>
You ask <<=setup.getNpcName('npc_technician', 'first')>> if she wants maybe meet you for something more than coffee?<br>
<br>
"@@.npc_technician;Sorry <<=$player.first_name>>, maybe another time, I think I need to stick to my Boil-Less diet a bit closer, don't want to lose my cute figure!@@"
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Say goodbye and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div><<set $player.locations.home_technician = true>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 5, 19, 0, false)>>
<<addTaskById 'technician_dinner' _tmpDate>>/*#
#desc: chat small talk with technician on the phone
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<applyStress -20>>
<<else>>
<<applyStress -10>>
<</if>>
<<set $npc_technician.flags.last_smalltalk = $now>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_technician', 'first')>> that you've just called to talk a little bit.
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;I always have time for my favourite Princess! How are things going for the cutest royal slave in the world?@@"
<<case 'neutral' ''>>
"@@.npc_technician;Of course! I can always make time for my <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>>, what's up, dear?@@"
<<case "sub">>
"@@.npc_technician;Of course <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>, I hope everything in your life is as divine and wonderful as you are!@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<else>>
"@@.npc_technician;Talk? What do you think I am, a bard!@@" She laughs. "@@.npc_technician;Of course I'll chat, what's up with you? <<if State.hasPlayed("event_work_meeting_stage_3_meeting_admin_2")>>Work for us has been pretty dull other than the ongoing merger, you wouldn't believe how confused new user credentials can make BDU's<<else>>Work down on the peon floor is the same old dull, I bet your life is WAY more exciting<</if>>!@@"<br>
<br>
<<printThought "Exciting is one way to put it...">>
<</if>>
<br><br>
You and <<=setup.getNpcName('npc_technician', 'first')>> chat for a bit about minor things, talking to her helps make your worries seem more manageable.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Say goodbye and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: ask to cancel rpg session
#status: FINISHED 0.8.6.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_technician', 'first')>> that you aren't going to be able to make this Saturday's game.<br>
<br>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_1')) >= 7 ||
$currentTasks.hasOwnProperty('technician_roleplay_surgery') && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_surgery')) >= 7 ||
$currentTasks.hasOwnProperty('technician_roleplay_punish_1') && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_punish_1')) >= 7>>
"@@.npc_technician;Silly! You already cancelled! Don't tell me I'm going to have two ditzes in the group! Anyway, I'll see you next week, right?@@"<br>
<br>
You confirm that Saturday is just a one-time thing.<br>
<br>
"@@.npc_technician;Good, good... I'll be counting the days!@@" She hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
<<if $npc_technician.flags.rpg_campaign.session == 0>>
"@@.npc_technician;<<if $now.getUTCDay() == 6>>Cancelling at the last minute? Well that's frustrating, are you sure? <<else>>You aren't going to make it? Rats. <</if>>Oh no! Did I put too much pressure on you? Please, I promise it'll be fun... the rest of the group is really cool and welcoming.@@"
<<elseif $npc_technician.flags.rpg_campaign.session == 1>>
"@@.npc_technician;<<if $now.getUTCDay() == 6>>Cancelling at the last minute? Well that's frustrating, are you sure? <<else>>You aren't going to make it? Rats. <</if>>Oh no! Was the first session too much? I promise everyone really liked you and wants you to come back. I know joining a new group can feel all clique-y but we really enjoyed you joining us!@@"
<<elseif $npc_technician.flags.rpg_campaign.session < 7>>
"@@.npc_technician;<<if $now.getUTCDay() == 6>>Cancelling at the last minute? Well that's frustrating, are you sure? <<else>>You aren't going to make it? Rats. <</if>>I was really hoping to push forward with the current campaign... but I guess, if you really have to skip, we can run a one-shot or something without you...@@"
<<elseif $npc_technician.flags.rpg_campaign.penance.basic>>
"@@.npc_technician;<<if $now.getUTCDay() == 6>>Cancelling at the last minute? Well that's frustrating, are you sure? <<else>>You aren't going to make it? Rats. <</if>> Games are always best with the full crew and you're totally ONE OF US now... plus, well... you know you'll be doing penance next week to make up for it...@@"
<<else>>
"@@.npc_technician;<<if $now.getUTCDay() == 6>>Cancelling at the last minute? Well that's frustrating, are you sure? <<else>>You aren't going to make it? Rats. <</if>> Games are always best with the full crew and you're totally ONE OF US now. I'll add a warning that one of the reasons we maintain such consistency is that there are... consequences for missing, which you'll be finding out next week if you miss...@@"
<</if>>
<br><br>
[<<moveTo "call_technician_cancel_game_2" "Unfortunately you do have to cancel." 60 "<<set $scene.cancel=true>>">>]<br>
[<<moveTo "call_technician_cancel_game_2" "Actually... you'll figure out how to make it to game." 60 "<<set $scene.cancel=false>>">>]
<</if>>
</div>/*#
#desc: ask to cancel rpg session
#status: FINISHED 0.8.6.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cancel>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks['technician_roleplay_1'].finished>>
<<if $npc_technician.flags.rpg_campaign.session > 7 && $player.virgin.blowjob>>
<<set $scene.punish = false>>
<<deleteTask 'technician_roleplay_1'>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 6, 19, 0, true)>>
<<set _tmpDate = setup.getNextDayOfWeek(_tmpDate, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_punish_1' _tmpDate>>
<<else>>
<<postponeTask 'technician_roleplay_1' 7>>
<</if>>
<<elseif $currentTasks.hasOwnProperty('rpg_session_gangbang') && !$currentTasks['rpg_session_gangbang'].finished>>
<<set $scene.punish = false>>
<<postponeTask 'rpg_session_gangbang' 7>>
<<elseif $currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks['technician_roleplay_surgery'].finished>>
<<set $scene.punish = false>>
<<postponeTask 'technician_roleplay_surgery' 7>>
<<elseif $currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks['technician_roleplay_punish_1'].finished>>
<<set $scene.punishPunt = true>>
<<postponeTask 'technician_roleplay_punish_1' 7>>
<<else>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_technician' 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cancel>>
You confirm that you aren't going to be able to make it Saturday.<br>
<br>
<<if $scene.punishPunt>>
"@@.npc_technician;Again? You do remember you were already up for punishment for the last time you missed... you are only delaying the inevitable!@@"
<<else>>
"@@.npc_technician;Well shoot... guess I need to dust off one of the old one-shots, and we'll see you next weekend then<<if $scene.punish>> — and a reminder that you'll be in for some punishment to make up for the missed session<</if>>.@@"
<</if>>
<br><br>
You apologise again and promise that you wouldn't cancel if it wasn't something really important.
<<else>>
You reply that actually... you think you'll be able to make it.<br>
<br>
"@@.npc_technician;Hurray! Though, seriously, don't tease a DM like that, it's cruel!@@"<br>
<br>
You promise not to toy with her emotions like this in the future.<br>
<br>
<</if>>
<br><br>
"@@.npc_technician;Good... though don't worry about my taking something like that out on you in-game. Being the Dungeon Mistress is a sacred responsibility, and I would never let OOC events influence my behaviour.@@"<br>
<br>
You thank her for the professionalism and she hangs up.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: mux to route for staying after to help/schmooze with technician
#status: FINISHED 0.5.0.0
#*/
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.flags.rpg_campaign.has_stayed_behind>>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<set $scene.post_session = {}>>
<<set $scene.returnPassage = "event_technician_rpg_cleanup_x">>
<<if $scene.chastityPost && !$scene.cageOffer>>
<<moveTo "event_technician_chastity_session">>
<<elseif State.hasPlayed("event_ai_stage5_infiltrate_14") && $npc_technician.flags.ai_collar && !State.hasPlayed("event_technician_ai_puzzle_room_1_intro_1")>>
<<moveTo "event_technician_ai_puzzle_room_1_intro_1">>
<<else>>
<<moveTo "event_technician_rpg_cleanup_x">>
<</if>>
<<else>>
<<moveTo "event_technician_rpg_cleanup_1_alt">>
<</if>>
<<else>>
<<moveTo "event_technician_rpg_cleanup_1">>
<</if>>
/* require session 2+ and technician happiness *//*#
#desc: help technician cleaning up after rpg session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if !$npc_technician.flags.rpg_campaign.has_stayed_behind>>
<<set $npc_technician.flags.rpg_campaign.has_stayed_behind = true>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_5'
7
'event_psychiatrist_theme_technician_cleanup_1'
true
>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Sticking around after the rest of the party has left, you help <<=setup.getNpcName('npc_technician', 'first')>> pick up the empty cans, dirty plates and other detritus left behind from the session, as well as helping her gather and organize her supplies.<br>
<br>
She is very careful not to let you peek inside her DM's folder, declaring that "@@.npc_technician;Such secrets are not to be viewed by a poor mortal such as yourself!@@"<br>
<br>
Hanging out with her alone like this, you reflect on her dichotomy — how she uses the rambunctious facade of the "Tech Wizard" persona to maintain a certain separation and shield around her real self.<br>
<br>
You mention how much you've enjoyed spending time with her and that you'd like to do so more often. She's suddenly looking excited and nervous at the same time and you ask her what's wrong.<br>
<br>
"@@.npc_technician;Sorry, it's a bit silly but, like... as much as I joke around a bit and play the all-knowing wizard, I'm sometimes not that great at figuring people out. And with you... you've changed so much since we worked together and even back then I didn't know you all that well. Sometimes I wish life was more like a game, if casting detect motive was as easy as using my phone to lookup what you're wearing under your clothes. I mean, we all wear masks of one sort or the other, and that's fine and understandable, but also a bit scary since it's hard to know what, exactly is going on underneath.@@"<br>
<br>
<<printThought "Hmmm, I wonder...">><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup_1_2' 'Agree that it is kind of tricky and head home.' 500>>]<br>
[<<moveTo 'event_technician_seduce_1' 'Let her in on the secret that, actually, you have a particular vulnerability to zone of truth effects...' 600>>]
</div>/*#
#desc: help technician cleaning up after rpg session (if you didn't seduce her previously)
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Sticking around after the rest of the party has left, you help <<=setup.getNpcName('npc_technician', 'first')>> pick up the empty cans, dirty plates and other detritus left behind from the session, as well as helping her gather and organize her supplies.<br>
<br>
She is very careful not to let you peek at her DM's folder, declaring that "@@.npc_technician;Such secrets are not to be viewed by a poor mortal such as yourself!@@"<br>
<br>
Recalling previous time together you can tell that she's a little nervous about pushing you any further, but if you were willing to make the first move...<br>
<br>
[<<moveTo 'event_technician_rpg_cleanup_1_2' 'Just finish cleaning and head home.' 600>>]<br>
[<<moveTo 'event_technician_seduce_1' 'Let her in on the secret that you have a bit of a vulnerability to zone of truth effects...' 600>>]
</div>/*#
#desc: head home after helping technician cleanup (i.e.: don't try to seduce her)
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Things are suddenly a bit silent and awkward and you both find yourself at a loss for words. Busying yourself with the last of the cleanup you thank her again for the game and head for the door.<br>
<br>
"@@.npc_technician;Yeah, uh... you too, thanks for joining me- us! I mean. See you next week?@@"<br>
<br>
You nod, saying you're looking forward to the next session before heading off.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 660>>]
</div>/*#
#desc: seduce technician
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $npc_technician.relationship.relationship_stage = 1>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_technician_date'
5
'theme_admin_technician_1'
false
>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_pregnancy'
0
'theme_technician_pregnant_1'
true
>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Zone of truth—@@"<br>
<br>
It takes her a moment as she is putting away the last of her reference books. When she turns around, you adopt your most innocent expression, hands behind your back and turning back and forth a bit as you smile at her.<br>
<br>
You can see the gears churning behind her eyes as her minor confusion blossoms into an expression of joy and then a facade of stoic control.<br>
<br>
Grabbing a pencil and wielding it like a wand, she waves it in your direction.<br>
<br>
"@@.npc_technician;By the power of Gayskull I bind you to speak naught but your heart's truth for soever you are within these walls!@@"<br>
<br>
Grabbing a die, you roll it on the table only to nudge it over to a 1 before she can see the result. Looking up and biting your lip, you inform her that you appear to have critically failed your saving throw against her spell...<br>
<br>
"@@.npc_technician;Very well, fair maid. Since your tongue is now bound to speak of naught but true things... tell to me what is thy purpose?@@"<br>
<br>
Taking a step towards her, you flutter your eyelids and say that you were very much hoping to kiss her...<br>
<br>
"@@.npc_technician;A noble request! And one which I will happily grant!@@"<br>
<br>
You close your eyes and lean in. Her lips are soft and wet, parting tenderly even as she pushes back into you. Your heart races as you reach out, one hand wrapping gently around her waist. She returns the favour, reflecting your embrace and pulling you closer as your mouths press tight and your tongue tentatively darts forth.<br>
<br>
Your hesitant embrace turns into a seductive spar, move and escalating counter move. Her fingers run through your hair, her tongue wrestling with your own as she takes control until you start to melt in her arms, and then she leans slightly back, letting you pull her closer and take the lead. Momentum swings back and forth until who is the initiator and who is the subject becomes unknowable and, finally short of breath, and with dual racing hearts, the two of you part, opening your eyes to look bashfully back at one another.<br>
<br>
The silence lingers, finally broken as you ask permission to say another true thing.<br>
<br>
"@@.npc_technician;Speak.@@" She states softly, still holding your hands as you feel her pulse pounding in anticipation of your reply.<br>
<br>
You smile and make eyes towards the couch as you "confess" that you would very much like to kiss her again.<br>
<br>
She smiles brightly enough to light the room like the sun, the two of you lunging towards each other, arms wrapped around as you stumble onto the couch, hugging and kissing, your bodies entwined and pressed against one another.<br>
<br>
Despite your mutual enthusiasm, you both quickly tire, the late hour and long session prior conspiring to leave you wrapped in each other's arms, cuddled together on the couch as you "merely" stare into each other's eyes.<br>
<br>
"@@.npc_technician;So, as part of the sympathetic component of the spell the caster is compelled to tell the truth as well and...@@" She blushes for a moment as you blink up at her a moment before continuing. "@@.npc_technician;Well, anyway... since we're both forced to be truthful... I think you're a wonderful person whom I very much like spending time with and I like you a lot.@@"<br>
<br>
Darting forward for another kiss, you smile and agree that you "like" her a lot too.<br>
<br>
Spooning together for a bit longer, you start to drift pleasantly off to sleep only to slide off the narrow couch and go crashing to the floor, accidentally dragging her down on top of you.<br>
<br>
You yelp as she lands on you in a tangle of arms and legs. She manages to get up first, rising to her hands and looking down at you, the ceiling light above lending her a bit of a radiant glow.<br>
<br>
She smiles before adopting her "best" southern accent. "@@.npc_technician;Why, ah do believe I may have just fallen for you.@@"<br>
<br>
You grin, both of you laughing at the corny joke. She helps you back to your feet where you reluctantly arrive at the mutual conclusion that you should probably be heading home.<br>
<br>
Reaching for the door, you turn the knob only for her to grab your hand. You look back and she pulls you in for another passionate kiss that has you knees weak.<br>
<br>
"@@.npc_technician;Sorry, uh... see you soon?@@"<br>
<br>
You smile back, replying "@@.pc;Of course... and that's the truth.@@" before darting in for a final peck on the cheek that leaves her blushing bashfully and waving as you quickly slip out the door before anything else can happen.<br>
<br>
Riding the elevator back down from her apartment, you finally release your held breath, light-headed as you replay every delightful moment since the end of the game session.<br>
<br>
The rest of your trip home passes in a fog, barely noticing your surroundings as you skip along, light as a cloud, your tingly feelings only refreshing as you walk into your flat and get a text.<br>
<br>
"@@.npc_technician;Hey, so... I had a REALLY great time tonight... I hope you stay late next session to help me "clean."@@"<br>
<br>
Clutching your phone to your chest, you lean back against your door and take a moment to compose your reply.<br>
<br>
[<<moveTo 'event_technician_seduce_2' "Reply that you're looking forward to it." 0 "<<set $scene.sub=false>>">>]
<<if setup.getTotalValue("submission") > 7>>
<<if $options.impatient>>
<<set _timer = "0s">>
<<else>>
<<set _timer = "45s">>
<</if>>
<<timed _timer t8n>>
<br>
[<<moveTo 'event_technician_seduce_2' "Text back of course... mistress." 0 "<<set $scene.sub=true>>">>]
<</timed>>
<</if>>
</div>/*#
#desc: text back technician after your first cuddlefest
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if $scene.sub>>
<<set $npc_technician.relationship.called_her_mistress_first_date = true>>
<</if>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sub>>
Firing off your submissive reply, your heart thunders in your chest as you await her response, staring in nervous anticipation at the "..." indicating that she's typing.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_technician;Wow, you really ARE a seductive demon. Have a good sleep my dear, your demon queen will be looking forward to our next visit with delight.@@"
<<else>>
"@@.npc_technician;Oh, wow I... I was looking forward to seeing you again anyway, but now I REALLY can't wait!@@"
<</if>>
<br><br>
You sigh in relief and shoot off an emoji response, not wanting to risk any more lest you end the evening enslaved to a lovely, correction ANOTHER lovely woman.
<<else>>
Shooting off your reply, you smile at the "@@.npc_technician;(-inf, 3)@@" that she fires back.
<</if>>
<br><br>
Yawning at the late hour, you figure you should probably get ready for bed.<br>
<br>
[<<moveTo 'room_foyer' 'Continue.' 0>>]
</div>/*#
#desc: repeatable help technician cleaning up after rpg session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene.tech_horny = (random(0,1) == 0)>>
<<set $scene.you_horny = ($player.timebased.horny >= 50)>>
<<set $scene.genital_change = setup.changedGenitals($player,$npc_technician, true) != "">>
<<storeGenitals $player $npc_technician>>
<<set $scene.cageOffer = !$scene.hasOwnProperty("cageOffer") && $npc_technician.relationship.her_caged && ($npc_technician.relationship.cage_style == "anal" && $npc_technician.relationship.caged_anal.stage >= 2 || $npc_technician.relationship.cage_style == "own" && $npc_technician.relationship.caged_own.stage >= 2 && !($npc_barista.stage >= 5 && $npc_barista.stage < 10))>>
<<set $scene.returnPassage = 'event_technician_rpg_cleanup_x'>>
<<if $scene.chastityPost && !$scene.was_caged>>
<<if $player.flags.chastity_style == "cage" && $player.body_ref.penis && $player.body_ref.balls>>
<<removeItem "c_cage_steel" true>>
<<addItem 'steel_chastity_cage_key'>>
<<else>>
<<removeItem "chastity_belt_flat" true>>
<<addItem 'chastity_belt_flat_key'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cageOffer>>
<<if $npc_technician.relationship.cage_style == "anal">>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid","npc_maid_trayless")>>
<<elseif $npc_technician.relationship.cage_style == "own">>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_barista")>>
<</if>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.chastityPost>>
With a wink <<=setup.getNpcName("npc_technician","first")>> lets you out of your "temporary" chastity.<br>
<br>
<</if>>
<<if $scene.cageOffer>>
You are about to settle in with <<=setup.getNpcName("npc_technician","first")>> when <<switch $npc_technician.relationship.cage_style>><<case 'anal'>><<=setup.getNpcName("npc_maid","first")>><<case 'own'>><<=setup.getNpcName("npc_barista","nickname")>><</switch>> pokes back in that she "forgot" something and you recall her offer.<br>
<br>
<<if $npc_technician.relationship.cage_style == "own" && $npc_technician.relationship.caged_own.stage == 2 || $npc_technician.relationship.cage_style == "anal" && $npc_technician.relationship.caged_anal.stage == 2>>
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
[<<moveTo "event_technician_chastity_final_anal_solo_1" 'You want <<=setup.getNpcName("npc_technician","first")>> all to yourself.' 300>>]<br>
[<<moveTo "event_technician_chastity_final_anal_maid_1" 'Ask <<=setup.getNpcName("npc_maid","first")>> to stick around.' 300>>]<br>
<<case 'own'>>
[<<moveTo "event_technician_chastity_final_own_solo_1" 'You want <<=setup.getNpcName("npc_technician","first")>> all to yourself.' 300>>]<br>
[<<moveTo "event_technician_chastity_final_own_barista_1" 'Ask <<=setup.getNpcName("npc_barista","nickname")>> to stay back.' 300>>]<br>
<</switch>>
<<else>>
<<switch $npc_technician.relationship.cage_style>>
<<case 'anal'>>
[<<moveTo "event_technician_chastity_final_anal_solo_1" 'Decline <<=ps(setup.getNpcName("npc_maid","first"))>> offer and reinforce <<=ps(setup.getNpcName("npc_technician","first"))>> anal training on your own.' 300>>]<br>
[<<moveTo "event_technician_chastity_final_anal_maid_1" 'Ask <<=setup.getNpcName("npc_maid","first")>> to stick around to help reinforce <<=ps(setup.getNpcName("npc_technician","first"))>> anal training.' 300>>]<br>
<<case 'own'>>
[<<moveTo "event_technician_chastity_final_own_solo_1" 'Reinforce <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> being locked and yours on your own.' 300>>]<br>
[<<moveTo "event_technician_chastity_final_own_barista_1" 'Ask <<=setup.getNpcName("npc_barista","nickname")>> to stay back to help reinforce <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> being locked.' 300>>]<br>
<</switch>>
<</if>>
[<<moveTo "event_technician_rpg_cleanup_x" 'Just have a normal post-game cuddle session.' 300>>]
<<elseif $scene.genital_change>>
You finish helping <<=setup.getNpcName('npc_technician', 'first')>> in relative silence but, once you're done, she looks at you with hands on her hips.<br>
<br>
"@@.npc_technician;Okay, hot stuff. I want to hear about these physical... changes you've been making.@@"<br>
<br>
[<<moveTo 'event_technician_theme_genitals_intro' 'Talk about your changes.' 60>>]
<<elseif $npc_technician.relationship.sissyomatic && setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5 && !State.hasPlayed("event_technician_9001_sex_1")>>
"@@.npc_technician;So, my fellow slave locked and pledged to the <<=setup.getNpcName('npc_ai', 'title')>>... I've been researching the features of our blessed devices... and I've got an idea that I think would be REALLY fun... if you would care to join me in prayer to <<=setup.getNpcName('npc_ai', 'formal')>>?@@"<br>
<br>
[<<moveTo "event_technician_9001_sex_1" "Of course!" 60 "<<set $scene.pray=true>><<set $scene.penis = $player.body_ref.penis>>">>]<br>
[<<moveTo "event_technician_9001_sex_1" "Maybe some other time." 60 "<<set $scene.pray=false>>">>]
<<elseif State.hasPlayed("event_technician_key_request_dom_2") && !State.hasPlayed("event_technician_dom_training_ask_1") && $npc_technician.relationship.her_role == "dom">>
You join <<=setup.getNpcName('npc_technician', 'first')>> on the couch where she cuddles you close and you sense her mulling over a question...<br>
<br>
[<<moveTo 'event_technician_dom_training_ask_1' 'See what she has to say.' 300>>]
<<else>>
<<if $npc_technician.relationship.her_role == "sub">>
You supervise <<=setup.getNpcName('npc_technician', 'first')>> cleaning up, her authoritative "dungeon mistress" persona slipping away each time you tell her that she is a "good girl" and by the time you have finished "helping" her clean up your happy slave seems eager to do just about anything you might ask.
<<elseif $npc_technician.relationship.her_role == "dom">>
After <<=setup.getNpcName('npc_technician', 'first')>> has finished "supervising" you cleaning things up she reclines back on the couch.
<<else>>
The two of you quickly clean and organize things before attention turns towards the couch.
<</if>>
<<if $scene.tech_horny && $scene.you_horny>>
The air is dripping with sexual tension. As horny as you are, it is <<=setup.getNpcName('npc_technician', 'first')>> who breaks the ice, posing on the couch and beckoning you to join her.<br>
<br>
"@@.npc_technician;Come over here, hot stuff. You're already in my lair now... come forth into my clutches.@@"<br>
<br>
Joining her on the couch, you cuddle face to face, tongues intertwined for a long kiss before you take turns letting your lips go exploring, shuddering as she nibbles your neck and then returning the favour to have her gasp.<br>
<br>
As you caress her face and shower her with kisses, her hands go exploring further afield, grabbing your butt with both hands and pulling you closer as she grinds against you. Pressed together about as close as two full-clothed humans can be, you snuggle and grope, too tired to take things to another level, but too horny not to have some fun.
<<elseif !$scene.tech_horny && !$scene.you_horny>>
You migrate towards the couch you softly cuddle, too tuckered out for anything more, but happy to merely enjoy the comforting touch of one another.<br>
<br>
Wrapped around one another like a pair of schoolgirls, you share the occasional soft kiss, the whispered comment of praise, just savouring each other's company.
<<elseif $scene.you_horny>>
<<=setup.getNpcName('npc_technician', 'first')>> is looking tired and you're feeling very horny. Taking the initiative you guide her over to the couch, pulling her into your embrace as you assume full cuddle control on her back, gently caressing her breasts with one hand while you nibble on her neck and whisper sweet nothings in her ear.<br>
<br>
She smiles and presses back into you, turning slightly to share a kiss before relaxing into your arms. Content that she is not currently up for much more you merely savour her smell, her soft skin, nuzzling the back of her neck as you enjoy holding her.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> is looking quite worked up. With a sly grin she lays across the couch, beckoning you in with her eye.<br>
<br>
"@@.npc_technician;Come, my dear, I long to feel your embrace.@@"<br>
<br>
Blushing and smiling, you swiftly join her on the couch, her arms wrapped around you as she takes the position of the big spoon, grinding against you and nibbling on your neck.<br>
<br>
You're content to just lay in her arms, pressing back and cooing in contentment as she burns off energy playing with you. Too tired to get up to any serious mischief, you find yourself reflecting on how nice this sort of quasi-chaste fun can be as she curls around you like a friendly cat.
<</if>>
<br><br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: chastity play w/technician after session 5
#status: RELEASED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if !$scene.was_caged>>
<<if $player.flags.chastity_style == "cage" && $player.body_ref.penis && $player.body_ref.balls>>
<<if $npc_technician.flags.rpg_campaign.session == 5 && !($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
<<removeItem "c_cage_steel" true>>
<</if>>
<<addItem 'steel_chastity_cage_key'>>
<<else>>
<<if $npc_technician.flags.rpg_campaign.session == 5 && !($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
<<removeItem "chastity_belt_flat" true>>
<</if>>
<<addItem 'chastity_belt_flat_key'>>
<</if>>
<</if>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus" && setup.checkItemWorn("rpg_succubus_leash")>>
<<removeItem "rpg_succubus_leash" true>>
<<deleteItem "rpg_succubus_leash">>
<<if setup.isItemEquipped("rpg_succubus_collar") && !$npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[6]>>
<<removeItem "rpg_succubus_collar" true>>
<<deleteItem "rpg_succubus_collar">>
<</if>>
<<removeItemSet "succubus_costume_unleashed">>
<<deleteItemSet "succubus_costume_unleashed">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;So... chastity@@" <<=setup.getNpcName('npc_technician', 'first')>> states with a slight smile.
<<if $scene.was_caged>>
"@@.npc_technician;I get the feeling you're something of an expert, hmm?@@"<br>
<br>
You blush and she smiles wider. "@@.npc_technician;How fun... I mean erotic denial, doesn't it just make the final release all the better?@@" Coming close enough to whisper in your ear you tremble and nod.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session == 5 && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
"@@.npc_technician;Mmmm, you're fun, unfortunately, however, I'm feeling pretty bushed after that session so we'll have to investigate further at a later date.@@"<br>
<br>
Suddenly realising how tired you are as well you nod, helping her clean up before heading on your way.
<<else>>
"@@.npc_technician;You know, the way you're staring at this key is really cute... I'm tempted to hold onto it but... mmm, maybe some other time.@@"<br>
<br>
She tosses you the key with a wink before diving in to the usual clean-up.
<</if>>
<<else>>
"@@.npc_technician;How you holding up? You starting to feel that exciting frustration of wanting to do something but being unable?@@" Your heart races as her hand drifts down to grope your device through your clothes. "@@.npc_technician;And this is just an hour or so! Imagine how you'd feel after a day, or a week...@@" As she speaks, she moves closer, her voice softening until she is whispering in your ear.<br>
<br>
<<if !$npc_technician.relationship.her_caged>>
"@@.npc_technician;Just think about it, locked up, at the mercy of your keyholder... or maybe you're the one in charge, hmm?@@" You're hanging on her every word so when she steps back you almost stumble.<br>
<br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session == 5 && !($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
"@@.npc_technician;Hmm, seems like I've touched a nerve... good. I do love me a bit of erotic denial, but for now I think a different sort of denial is in order as I'm feeling pretty tired and I bet you're thinking about your bed at home as well.@@"<br>
<br>
Producing keys she unlocks you before handing you your device. "@@.npc_technician;In case you feel like playing around some more.@@" She winks as you pocket it and head on your way.
<<else>>
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
"@@.npc_technician;You know, the way you're staring at this key is really cute... I'm tempted to hold onto it but... mmm, maybe some other time, my sweet Princess.@@"
<<case "" "neutral">>
"@@.npc_technician;You know, the way you're staring at this key is really cute... I'm tempted to hold onto it but... mmm, maybe some other time.@@"
<<case "sub">>
"@@.npc_technician;You know, the way you're staring at this key is really cute... I'm tempted to hold onto it but...@@" she winks. "@@.npc_technician;Well... that wouldn't be properly submissive of me, would it, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
She tosses you the key with a wink before diving in to the usual clean-up.
<</if>>
<</if>>
<br><br>
<<if !$scene.was_caged && $npc_technician.flags.rpg_campaign.session == 5 && !($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
[<<moveTo 'room_foyer' 'Head home.' 300>>]
<<else>>
[<<moveTo 'event_technician_rpg_cleanup' "Help her clean." 300 "<<set $scene.chastityPost=false>>">>]
<</if>>
</div><<if !$scene.post_session>>
<<set $scene.post_session = {}>>
<</if>>
<<if $now.getUTCHours() > 23 || $now.getUTCHours() < 5>>
The hour is late and it's time you headed home. Sharing a parting embrace she gives you a final passionate kiss and sends you on your way.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 600>>]<br>
<<else>>
<<if State.hasPlayed("event_convention_intro_1") || State.hasPlayed("event_technician_cosplay_makeup_1")>>
<<if $scene.post_session.cosplay>>
[@@.link_locked;You already brought up the cosplay convention this evening.@@]<br>
<<else>>
[<<moveTo 'event_convention_plan_1' 'Bring up the cosplay convention.' 180 "<<set $scene.post_session.cosplay=true>>">>]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.private_games.strip_game && !($npc_technician.relationship.private_games.strip_game_win || $npc_technician.relationship.private_games.strip_game_lose)>>
<<if $scene.post_session.private>>
[@@.link_locked;You have already done a "private" session this evening.@@]<br>
<<else>>
[<<moveTo 'event_technician_private_game_strip_game_1' 'Ask if she would like to run you through a "private" session...' 300 "<<set $scene.post_session.private=true>>">>]<br>
<</if>>
<<else>>
<<if $scene.post_session.private>>
[@@.link_locked;You have already done a bit of "role playing" this evening.@@]<br>
<<else>>
[<<moveTo 'event_technician_private_game_root' 'Ask if she would like to do a bit of "role playing."' 60 "<<set $scene.post_session.private=true>>">>]<br>
<</if>>
<</if>>
<<if $scene.post_session.private>>
[@@.link_locked;You already proposed sex this evening.@@]<br>
<<else>>
[<<moveTo 'event_technician_sex_1' 'Grind back against her.' 300 "<<set $scene.post_session.sex=true>>">>]<br>
<</if>>
<<if $scene.post_session.private>>
[@@.link_locked;You have already done a bit of snogging this evening.@@]<br>
<<else>>
[<<moveTo 'event_technician_snog' 'Turn around and do a bit of snogging.' 600 "<<set $scene.post_session.snog=true>>">>]<br>
<</if>>
<<if $scene.post_session.chastity>>
[@@.link_locked;You already managed her chastity situation this evening.@@]<br>
<<else>>
<<if $npc_technician.flags.rpg_campaign.session >= 5>>
<<if $npc_technician.relationship.her_caged>>
<<if $npc_technician.relationship.her_role == 'sub'>>
[<<moveTo 'event_technician_chastity_remove' "Let her out of chastity cage." 600 "<<set $scene.post_session.chastity=true>>">>]<br>
<<else>>
[<<moveTo 'event_technician_chastity_remove' "Offer to remove her chastity cage." 600 "<<set $scene.post_session.chastity=true>>">>]<br>
<</if>>
<<else>>
<<if $npc_technician.relationship.her_role == 'sub'>>
[<<moveTo 'event_technician_chastity_apply' "Put her in chastity." 600 "<<set $scene.post_session.chastity=true>>">>]<br>
<<else>>
[<<moveTo 'event_technician_chastity_apply' "Ask if you can put her in chastity." 600 "<<set $scene.post_session.chastity=true>>">>]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<<if setup.findThemeId('npc_manager', 'voluntary_punishment', 'theme_manager_pedicure') != -1>>
<<if setup.checkItemInInventory('pedicure_kit')>>
<<if $scene.post_session.pedicure>>
[@@.link_locked;You already offered a pedicure this evening.@@]<br>
<<else>>
[<<moveTo "event_technician_pedicure_1" "Offer to give her a pedicure." 60 "<<set $scene.post_session.pedicure=true>>">>]<br>
<</if>>
<<elseif setup.checkItemOwned('pedicure_kit')>>
[@@.link_locked;You left your pedicure kit at home!@@]<br>
<<else>>
[@@.link_locked;You do not have the supplies to offer her a full pedicure. Perhaps a trip to the mall is in order?@@]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_technician_maid_cafe_4_dom_2")>>
<<if $npc_technician.relationship.her_role == 'dom'>>
[@@.link_locked;You don't think <<=setup.getNpcName("npc_technician","formal")>> is going to agree to training in ballet heels.@@]<br>
<<else>>
<<if !State.hasPlayed("event_technician_heels_training_1_5")>>
[<<moveTo 'event_technician_heels_training_1_1' "Bring up her awkwardness in heels when she was playing your maid..." 120>>]<br>
<<else>>
[<<moveTo 'event_technician_heels_training_2_1' "She could use more ballet heel training." 120>>]<br>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemInInventory('drug_breast') || setup.checkItemInInventory('drug_breast_plus') ||
setup.checkItemInInventory('drug_ditzy') || setup.checkItemInInventory('drug_ditzy_plus') ||
setup.checkItemInInventory('drug_slave') || setup.checkItemInInventory('drug_slave_plus') ||
setup.checkItemInInventory('drug_smart') || setup.checkItemInInventory('drug_smart_plus') ||
setup.checkItemInInventory('drug_master') || setup.checkItemInInventory('drug_master_plus') ||
setup.checkItemInInventory('drug_dick') || setup.checkItemInInventory('drug_dick_plus')>>
<<if $scene.post_session.drugs>>
[@@.link_locked;You already offered her drugs this evening.@@]<br>
<<else>>
[<<moveTo 'event_technician_drug_root' "Offer her some drugs." 300 "<<set $scene.post_session.drugs=true>>">>]<br>
<</if>>
<<elseif State.hasPlayed("event_work_doctor_help_lab_4")>>
[@@.link_locked;You do not have any of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> drugs with you to offer <<=setup.getNpcName("npc_technician","first")>>.@@]<br>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'ai', 'theme_technician_ai_1')>>
<<if _themeId != -1>>
[<<moveTo 'event_technician_ai_sex_alt' 'Ask about calling up <<=setup.getNpcName("npc_ai","first")>>.' 60>>]<br>
<</if>>
<<set _ai9001ThemeId = setup.findThemeId('npc_ai', 'other', 'theme_ai_technician_1')>>
<<if _ai9001ThemeId != -1 && $npc_ai.themes.other[_ai9001ThemeId].done > 0 && !$npc_technician.relationship.sissyomatic>>
<<if setup.checkItemOwned('sissyomatic_technician')>>
<<if setup.checkItemInInventory('sissyomatic_technician')>>
[<<moveTo 'event_technician_sissyomatic_1' 'Offer <<=setup.getNpcName("npc_technician","first")>> the <<=setup.getItemName("sissyomatic")>> device.' 600>>] <<hint $options "Doing this is surely going to lead to you and <<=setup.getNpcName('npc_technician','first')>> becoming <<=ps(setup.getNpcName('npc_ai','formal'))>> slaves.">><br>
<<else>>
[@@.link_locked;You forgot <<=ps(setup.getNpcName("npc_technician","first"))>> <<=setup.getItemName("sissyomatic")>> at home!@@]<br>
<</if>>
<<else>>
[@@.link_locked;You do not have a <<=setup.getItemName("sissyomatic")>> for <<=setup.getNpcName("npc_technician","first")>>.@@]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_technician_9001_sex_1")>>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
[<<moveTo "event_technician_9001_sex_1" 'Pray for some ultimate 9001 fun... penis style.' 60 "<<set $scene.pray=true>><<set $scene.penis=true>>">>]<br>
[<<moveTo "event_technician_9001_sex_1" 'Pray for some ultimate 9001 fun... vaginally.' 60 "<<set $scene.pray=true>><<set $scene.penis=false>>">>]<br>
<<else>>
[<<moveTo "event_technician_9001_sex_1" 'Pray for some ultimate "chastity" fun.' 60 "<<set $scene.pray=true>><<set $scene.penis = $player.body_ref.penis>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You and <<=setup.getNpcName("npc_technician","first")>> both need to be in some manner of <<=setup.getItemName("sissyomatic")>> chastity device for <<=setup.getNpcName("npc_ai","formal")>> to unlock advanced features.@@]<br>
<</if>>
<</if>>
<br>
<<if $scene.returnPassage != "event_technician_dinner_snuggle_1">>
[<<moveTo 'event_technician_cuddle' 'Just enjoy cuddling for the rest of the night.' 3600>>]<br>
<<else>>
[<<moveTo 'event_technician_dinner_snuggle_2' "Snuggle for a while and head out." 3600>>]<br>
<</if>>
<</if>>/*#
#desc: choice to play with technician after finishing campaign as succubus
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $events.hasOwnProperty('technician_chastity_choice')>>
You see the last of the guests out and are about to close the door when <<=setup.getNpcName("npc_technician","first")>> comes up from behind to whisper in your ear. "@@.npc_technician;I was planning on talking about your goals for my chastity situation... but I just can't resist having fun with my hot succubus girlfriend... and I'm willing to endure to next week to keep tonight centred on YOU.@@"<br>
<br>
You shiver as you feel her step back, deeper into her flat.
<</if>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You've barely shut the door behind the final guest before dropping to your knees. Still restrained in your succubus attire you tremble in anticipation as you look up at your Mistress, <<if setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>feeling ready to explode out of your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> you're so excited<<elseif $player.body_ref.penis>>tenting your clothes in excitement<<else>>dripping with excitement<</if>>.
<<case "neutral">>
<<if $npc_technician.relationship.keyholder || ($npc_technician.flags.rpg_campaign.session > 7 && !$scene.was_caged)>>
<<=setup.getNpcName("npc_technician","first")>> smiles as she produces the key to your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>. You do the same, mutually unlocking each other as you share a gentle kiss.<br>
<br>
"@@.npc_technician;Mmm, much better, now let's have a little fun...@@"
<<elseif setup.checkItemTypeWorn("cage") && $npc_technician.flags.rpg_campaign.session > 7>>
You produce the key to <<=ps(setup.getNpcName("npc_technician","first"))>> cage as she frowns and apologises.<br>
<br>
"@@.npc_technician;Sorry I can't return the favour — oh that's soooo much better — but... I promise we can still have some fun...@@"
<<else>>
<<=setup.getNpcName("npc_technician","first")>> grins at you and traces a finger down your bound chest. "@@.npc_technician;So my demonic lovely... you ready for some depraved delightfulness?@@"
<</if>>
<<case "sub">>
Once the door is closed and it's just the two of you, <<=setup.getNpcName('npc_technician', 'first')>> drops to her knees at your feet, looking up at you with wide, lustful eyes.<br>
<br>
"@@.npc_technician;Please, Mistress...@@"
<</switch>>
<br><br>
[<<moveTo 'event_technician_rpg_cleanup_demon_2' 'Have some fun.' 1800 "<<set $scene.action=true>>">>]<br>
[<<moveTo 'event_technician_rpg_cleanup_demon_2' "Tell her you're tired." 60 "<<set $scene.action=false>>">>]
</div>/*#
#desc: play with technician after finishing campaign as succubus
#status: RELEASED 0.7.10.0
#ignore_spell: mwahaha
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<else>>
<<if setup.checkItemOwned("rpg_succubus_arm_bondage")>>
<<removeItem "rpg_succubus_arm_bondage" true>>
<<deleteItem "rpg_succubus_arm_bondage">>
<</if>>
<<if setup.checkItemWorn("rpg_steel_restraints")>>
<<removeItem "rpg_steel_restraints" true>>
<<deleteItem "rpg_steel_restraints">>
<</if>>
<<include "remove_succubus_items">>
<<if $scene.was_caged == false && ($npc_technician.flags.rpg_campaign.session == 5 || $npc_technician.flags.rpg_campaign.session > 7)>>
<<if $player.flags.chastity_style == "cage" && $player.body_ref.penis && $player.body_ref.balls>>
<<removeItem "c_cage_steel" true>>
<<addItem 'steel_chastity_cage_key'>>
<<else>>
<<removeItem "chastity_belt_flat" true>>
<<addItem 'chastity_belt_flat_key'>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.action>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
Taking hold of your leash she smiles. "@@.npc_technician;It worked! The summoning worked! And now you're mine! Bound to fulfill my every depraved desire... isn't that right?@@"<br>
<br>
"@@.pc;Yes, Mistress,@@" you reply as she grins wider.<br>
<br>
"@@.npc_technician;Mmm, I will never tire of hearing that but now... now it is time for you to fulfill the first of my depraved fantasies. Just need to remove one of these restraints...@@"<br>
<br>
Still holding the leash she unbuckles the armbinder and tosses it to the side before reaching down and taking your hand.<br>
<br>
"@@.npc_technician;Oh yes!@@" she whispers passionately, "@@.npc_technician;Handholding! Oh, it's even better than I imagined!@@"<br>
<br>
You suppress a giggle at her routine but, still holding you by the hand she looks you in the eye. "@@.npc_technician;Oh, you didn't think we humans were this perverted, did you? Well how about this — as your Mistress and owner I command you... to CUDDLE WITH ME!@@"<br>
<br>
You mock gasp as she drags you to the couch and the two of you sink into one another's arms.
<<case "neutral">>
Pulling you in, she gives you a hug and smiles. "@@.npc_technician;Mmm, my very own helpless sex demon but, well... I kind of would rather you had your arms free... promise not to misbehave?@@"<br>
<br>
You nod and she smiles, unbuckling the arm binder before taking you by the hand. "@@.npc_technician;Mwahaha! You thought you were the evil demoness but it is I, the mortal who has initiated things with... HAND HOLDING!@@"<br>
<br>
Pulling you across the room hand holding soon turns to cuddling as she pulls you onto the couch and you sink into one another's arms.
<<case "sub">>
"@@.npc_technician;I'm sorry about your imprisonment, Mistress, please, let me remove your binds...@@"<br>
<br>
You turn around and she unbuckles your arm binder only to take you by the hand as you turn back to face her.<br>
<br>
"@@.npc_technician;Oh my! Hand holding? This is so depraved, oh, I had no idea!@@"<br>
<br>
You smile and walk her backwards, waiting until she falls back onto the couch before you lean in and whisper that her corruption has only begun. She trembles in anticipation and you show her the full grandeur of infernal... cuddling.
<</switch>>
<br><br>
[<<moveTo 'event_technician_rpg_cleanup_demon_3' 'Continued depravity.' 600>>]
<<else>>
You explain that, actually, you're feeling kind of exhausted and could you take a rain check on things?<br>
<br>
"@@.npc_technician;Of course! Come on, let's get you changed so you can head home for some cutie rest... not that I can even imagine you being any more adorable than you already are!@@"<br>
<br>
You blush as she helps you change<<if !$scene.was_caged>> and hands you the key to your new chastity device,<</if>> and gives you a parting hug.<br>
<br>
[<<moveTo 'room_foyer' 'Head home.' 600>>]
<</if>>
</div>/*#
#desc: play with technician after finishing campaign as succubus
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemWorn("rpg_steel_restraints")>>
<<removeItem "rpg_steel_restraints" true>>
<<deleteItem "rpg_steel_restraints">>
<</if>>
<<set $npc_technician.relationship.private_games.demon = true>>
<<include "remove_succubus_items">>
<<if $scene.was_caged == false && ($npc_technician.flags.rpg_campaign.session == 5 || $npc_technician.flags.rpg_campaign.session > 7)>>
<<if $player.flags.chastity_style == "cage" && $player.body_ref.penis && $player.body_ref.balls>>
<<removeItem "c_cage_steel" true>>
<<addItem 'steel_chastity_cage_key'>>
<<else>>
<<removeItem "chastity_belt_flat" true>>
<<addItem 'chastity_belt_flat_key'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Settling down, you and <<=setup.getNpcName("npc_technician","first")>> enjoy each other's warmth and the chance to relax after a long week and an eventful game. Eventually it comes time to go and she helps you out of the rest of the succubus costume<<if $scene.was_caged == false>> and hands you the key to your new chastity device<</if>>. "@@.npc_technician;That was fun, I hope you enjoyed it too though... I just thought of a depravity we forgot!@@"<br>
<br>
You blink as she reaches up with one hand and declares "@@.npc_technician;head pats!@@" You laugh and smile as she pats you on the head, the two of you sharing a parting hug before you leave.<br>
<br>
[<<moveTo 'room_foyer' 'Head home.' 600>>]
</div>/*#
#desc: technician: snog
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $player.timebased.fatigue = .4 * $player.timebased.fatiguemax>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_technician', 'first')>> spends some time on the couch cuddling and kissing. Caressing and groping you just enjoy each others touch and presence, too tired to do much more as you slowly start to drift off only to rouse yourself as you realise you should probably head home.<br>
<br>
[<<moveTo 'room_foyer' 'Head home.' 600>>]
</div>/*#
#desc: propose sex with technician
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You grind back into <<=setup.getNpcName("npc_technician","first")>> and feel her <<if $npc_technician.relationship.her_caged>>tremble in her cage<<else>>swell further<</if>>.<br>
<br>
"@@.npc_technician;Easy there, tiger@@" she whispers with a slight tremble in her voice "@@.npc_technician;Keep that up and we'll be on the road to a lot more than just cuddling...@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
<<printThought 'Hmm... as her keyholder I could let her out for "use"...'>><br>
<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo 'event_technician_sex_2_bottom_0' "Say you'd really like to feel her inside you." 600>>]<br>
<<if !$player.sec_style.sex.vagina && !State.hasPlayed("event_technician_sex_2_bottom_first_2") && !State.hasPlayed("event_technician_sex_2_vagina_first_2")>>
[@@.link_locked;Having your first time be with her strap rather than her seems a bit... impersonally cruel.@@]<br>
<<else>>
[<<moveTo 'event_technician_sex_2_strap_1' "Say you'd really like to feel her strap." 600>>]<br>
<</if>>
<<else>>
[<<moveTo 'event_technician_sex_2_bottom_1' "Say you'd really like to feel her inside you." 600>>]<br>
[<<moveTo 'event_technician_sex_2_strap_1' "Say you'd really like to feel her strap." 600>>]<br>
<</if>>
[<<moveTo 'event_technician_sex_2_top_1' "Say you'd like to do her." 600>>]<br>
[<<moveTo 'event_technician_snog' 'Turn around and do a bit of snogging.' 1800>>]<br>
<<if $npc_technician.flags.rpg_campaign.session >= 5>>
<<if $npc_technician.relationship.her_caged>>
<<if $npc_technician.relationship.her_role == 'sub'>>
[<<moveTo 'event_technician_chastity_remove' "Let her out of her chastity cage." 600>>]<br>
<<else>>
[<<moveTo 'event_technician_chastity_remove' "Offer to remove her chastity cage." 600>>]<br>
<</if>>
<<else>>
<<if $npc_technician.relationship.her_role == 'sub'>>
[<<moveTo 'event_technician_chastity_apply' "Put her in chastity." 600>>]<br>
<<else>>
[<<moveTo 'event_technician_chastity_apply' "Ask if you can put her in chastity." 600>>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo 'event_technician_cuddle' 'Calm down and enjoy cuddling for the rest of the night.' 3600>>]<br>
</div>/*#
#desc: technician choose how she fucks you
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.unlockable = $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
You pull out the key to her chastity cage and feel her instantly squeeze you a little tighter as she softly mews in anticipation.<br>
<br>
<</if>>
<<if $scene.cage == "" || $scene.unlockable>>
"@@.npc_technician;Do you? Mmm... that sounds good... the question is... which hole do you want to feel me in?@@" She grinds against you while her hand reaches down to finger you through your clothes...<br>
<br>
[<<moveTo 'event_technician_sex_2_vagina_1' 'You want her to batter blast your secret tunnel.' 300>>]<br>
[<<moveTo 'event_technician_sex_2_bottom_1' 'You want to feel her in your ass.' 300>>]<br>
<<else>>
She grinds against you and teasingly paws at your chastity belt.<br>
<br>
"@@.npc_technician;Mmm... sounds good, but I guess this thing means there's only one option open...@@"<br>
<br>
[<<moveTo 'event_technician_sex_2_bottom_1' 'Yes, you want her to fuck your ass.' 300>>]<br>
<</if>>
[<<moveTo 'event_technician_root_1' "Actually... you'd rather do something else." 60>>]
</div>/*#
#desc: back out of fucking
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You change your mind and <<=setup.getNpcName('npc_technician', 'first')>> rolls with it. "@@.npc_technician;Whatever you say, hot stuff... so, what DO you want to do tonight?@@"<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: technician fucks you
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $scene.firstTime = !$player.virgin.anal>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You feel her tense and twitch against your ass followed by her nibbling your ear and then whispering her response.<br>
<br>
"@@.npc_technician;Mmmm, I like that idea a lot...@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
<<=setup.getNpcName("npc_technician","first")>> holds her breath as you unlock her cage and put it to the side, her wizard's wand hard and ready to cast almost the moment it is out of its prison. She's already trembling with excitement as
<<else>>
You shudder with arousal as she separates slightly,
<</if>>
her hands moving down your body to start working at your clothing to expose your rear.<br>
<br>
<<if $scene.firstTime>>
<<if $npc_manager.stage >= 3>>
<<printThought 'This is really happening... being pegged by <<=setup.getNpcName("npc_manager","formal")>> was one thing but this...'>>
<<else>>
<<printThought "This is really happening... she's really going to fuck me...">>
<</if>>
<br><br>
Somehow she senses your nervousness she slides to her feet, standing over you, her hard lady lance in hand. "@@.npc_technician;You okay? You seem really nervous... wait, is this your first time?@@"<br>
<br>
You blush in embarrassment and she drops to her knees, face centimetres from your own as she smiles and looks you in the eye. "@@.npc_technician;Shhh, shhh, it's nothing to be ashamed of I'm just... well, I'm just honoured that you'd grant me this privilege, and I promise to do everything I can to make your first time as good as possible. Come on, let's use the bed, it'll be more comfortable than the couch.@@"<br>
<br>
[<<moveTo 'event_technician_sex_2_bottom_first_1' "Follow her into the bedroom." 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_bottom_first_1' "On second thought, you're not ready." 3600 "<<set $scene.sex=false>>">>]
<<else>>
Without leaving the couch or fully removing either of your clothing, <<=setup.getNpcName("npc_technician","first")>> has your rear exposed and her hard cock sliding between your thighs as she gives a few practice thrusts in preparation for penetration.<br>
<br>
[<<moveTo 'event_technician_sex_2_bottom_2' "Ask her to get on with it, already!" 1200 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_bottom_2' "On second thought, maybe not tonight." 3600 "<<set $scene.sex=false>>">>]
<</if>>
</div>/*#
#desc: you fuck technician
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.firstTime = !$npc_technician.relationship.done_her>>
<<set $scene.firstTopFem = !$player.virgin.top_fem>>
<<set $scene.firstTimePenis = $player.body_ref.penis && !$player.virgin.penis && (!setup.getItemFromType("cage") || setup.canCharRemoveChastity("npc_technician"))>>
<<if $npc_technician.relationship.relationship_stage < 2>>
<<set $npc_technician.relationship.relationship_stage = 2>>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_sex_kinks')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_kinks'
10
'theme_technician_kink_1'
true
>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.firstTime || $scene.firstTopFem || $scene.firstTimePenis>>
<<if $scene.firstTopFem || $scene.firstTimePenis>>
Nervous you are unable to find your voice to propose the idea of asking if you can fuck her but she somehow senses something even as she continues to grind against you.<br>
<br>
"@@.npc_technician;Suddenly mute?@@" Her hand snakes down to caress your hard through your clothes. "@@.npc_technician;Mmm, someone is excited... is that it? Do you want to fuck me? Is that it?@@"<br>
<br>
You moan and nod as she purrs in your ear. "@@.npc_technician;That sounds hot, but there's something else, my wizard powers are detecting... wait, are you a virgin?@@" Her tone is surprised but not insulting and, despite your embarrassment, you finally find your voice again.<br>
<br>
Embarrassed, but also aroused you explain that you've never been with a woman like that, but if she's willing to be your first...<br>
<br>
"@@.npc_technician;Willing? Oh, I'm WAY more than willing. I mean, first of all: honoured, and second? Well, screw second, let's stop wasting time chatting and get you in me!@@"
<<else>>
You look back as she grinds against you and ask if you could do her...<br>
<br>
"@@.npc_technician;Oooh, that sounds fun!, Let's do it!... or rather, let's you do me.@@"
<</if>>
<br><br>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if !$player.body_ref.penis>>
She looks at you with a lopsided grin.
<<if !$npc_technician.relationship.keyholder && !setup.checkItemInInventory(_keyId)>>
"@@.npc_technician;Hmm... you're not really equipped for that, but if you're happy strapping on over your chastity belt, well... I've got a harness you can use. I doubt you'll feel much through your belt, but you'll be able to rail my ass good... mmm, the thought of you doing that while all locked up is making me even wetter...@@"
<<else>>
"@@.npc_technician;Hmm... you're not really equipped for that, but if you want, I've got a nice double-ended strap-on you could do me with...@@"
<</if>>
<br><br>
[<<moveTo 'event_technician_sex_2_top_first_strapon_1' "Silicone is fine, you're eager to strap her sexy ass." 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_first_strapon_1' "On second thought, maybe you don't want this tonight." 3600 "<<set $scene.sex=false>>">>]
<<elseif !$npc_technician.relationship.keyholder && !setup.checkItemInInventory(_keyId)>>
<<printThought "Damn this chastity device being locked on, if only I had some way to get free of it...">><br>
<br>
Somewhat awkwardly you reply that you got a bit ahead of yourself and that, with your chastity and all...<br>
<br>
She laughs in friendly amusement. "@@.npc_technician;You poor thing... such diabolic devices, aren't they! Why you're the one wearing one and yet we're both frustrated!@@" She leans back to kiss you. "@@.npc_technician;That's okay, I still think you being locked up is hot, and I love you anyway.@@" She pauses and then slyly smiles. "@@.npc_technician;Of course, if you're dead set on slamming a cock into me... I do have a strap-on you can borrow. You won't really be able to feel things through your cage but...you'd still be "doing me," mmm, just saying it is making me wet...@@"<br>
<br>
<<if $scene.firstTime>>
[<<moveTo 'event_technician_sex_2_top_first_strapon_1' "Silicone is fine, you're eager to strap her sexy ass." 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_first_strapon_1' "On second thought, maybe you don't want this tonight." 300 "<<set $scene.sex=false>>">>]
<<else>>
[<<moveTo 'event_technician_sex_2_top_2' "Tell her to get on with it, already; you're eager to strap dat ass!" 1200 "<<set $scene.sex=true>><<set $scene.strapon=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_2' "On second thought, maybe not tonight." 300 "<<set $scene.sex=false>>">>]
<</if>>
<<else>>
[<<moveTo 'event_technician_sex_2_top_first_1' "Let's do this." 300 "<<set $scene.sex=true>>">>]<br>
<<if $scene.firstTime>>
[<<moveTo 'event_technician_sex_2_top_first_strapon_1' "Maybe leave that for later... you'd like to use a strap-on to strap her sexy ass." 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_first_strapon_1' "On second thought, maybe you don't want this tonight." 300 "<<set $scene.sex=false>>">>]
<<else>>
[<<moveTo 'event_technician_sex_2_top_2' "Maybe leave that for later... tonight you're more eager to strap dat ass!" 1200 "<<set $scene.sex=true>><<set $scene.strapon=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_first_1' "On second thought, maybe you don't want this tonight." 300 "<<set $scene.sex=false>>">>]
<</if>>
<</if>>
<<else>>
<<if $player.body_ref.penis>>
[<<moveTo 'event_technician_sex_2_top_first_1' "Let's do this." 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_first_1' "On second thought, maybe you don't want this tonight." 300 "<<set $scene.sex=false>>">>]
<<else>>
She looks at you with a lopsided grin. "@@.npc_technician;Oh, and don't worry about me being the only one with a biological broadsword — I've got a nice double-ended strap-on for you to use on me...@@"<br>
<br>
<<if $scene.firstTime>>
[<<moveTo 'event_technician_sex_2_top_first_strapon_1' "Silicone is fine, you're eager to strap her sexy ass." 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_first_strapon_1' "On second thought, maybe you don't want this tonight." 300 "<<set $scene.sex=false>>">>]
<<else>>
[<<moveTo 'event_technician_sex_2_top_2' "Tell her to get on with it, already; you're eager to strap dat ass!" 1200 "<<set $scene.sex=true>><<set $scene.strapon=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_2' "On second thought, maybe not tonight." 300 "<<set $scene.sex=false>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
You whisper that you'd like to be on top again tonight and she purrs. "@@.npc_technician;It's like you were reading my mind, come on, I could really use being bent over and pounded.@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_technician_sex_2_top_2' "Time to fuck your girlfriend good!" 1200 "<<set $scene.sex=true>><<set $scene.strapon=false>>">>]<br>
<<else>>
<<set _cage = setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
[<<moveTo 'event_technician_sex_2_top_2' "Get out of chastity, and get into your girlfriend." 1200 "<<set $scene.sex=true>><<set $scene.strapon=false>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is "safely" locked away in chastity.@@]<br>
<</if>>
<</if>>
[<<moveTo 'event_technician_sex_2_top_2' "Tell her to get on with it, already; you're eager to strap dat ass!" 1200 "<<set $scene.sex=true>><<set $scene.strapon=true>>">>]<br>
<<else>>
[<<moveTo 'event_technician_sex_2_top_2' "Tell her to get on with it, already; you're eager to strap dat ass!" 1200 "<<set $scene.sex=true>><<set $scene.strapon=true>>">>]<br>
<</if>>
[<<moveTo 'event_technician_sex_2_top_2' "On second thought, maybe not tonight." 3600 "<<set $scene.sex=false>>">>]
<</if>>
</div>/*#
#desc: cuddle technician for the rest of the evening
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_role == 'dom' && setup.getTotalValue("submission") >= 15 && $npc_technician.affection == 10 && $npc_technician.anger == 0 && (!($fetish.chastity_vag && $player.body_ref.vagina && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis) || $npc_technician.relationship.keyholder) && $player.flags.collar.collarId == "" && (!$currentTasks.hasOwnProperty('technician_roleplay_surgery') || $currentTasks.technician_roleplay_surgery.finished) && setup.findThemeId('npc_technician', 'sex', 'theme_technician_collar') == -1>>
Joyfully wrapped in the arms of your girlfriend you while away the rest of the evening doing the most depraved thing imaginable — cuddling with your clothes on. The minutes tick past in one another's arms before it comes time that you should really be heading out.<br>
<br>
[<<moveTo 'event_technician_collar_offer_1' 'Head home.' 60>>]
<<else>>
Joyfully wrapped in the arms of your girlfriend you while away the rest of the evening doing the most depraved thing imaginable — cuddling with your clothes on. Delighting as she softly purrs in contentment you wiggle back and relax, the two of you just relaxing on the couch until you almost fall asleep.<br>
<br>
"@@.npc_technician;Alright, sorry,@@" she states some time later, rousing you "@@.npc_technician;You better hurry on home or we're going to pass out here and, well... I move around a bit in my sleep so I'd probably push you off the couch and that wouldn't be fun at all@@"<br>
<br>
You laugh, the two of you sharing a parting embrace before you make your way home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600>>]
<</if>>
</div>/*#
#desc: put technician in chastity
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.her_role == 'sub' || setup.checkItemTypeWorn("cage")>>
<<set $npc_technician.relationship.her_caged = true>>
<<set $npc_technician.relationship.has_caged = true>>
<<set _nextDate = setup.setNextDate($now, 1, 10, 0)>>
<<addWorkEvent 'technician_chastity_first' _nextDate>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You ask if maybe she'd be up for you locking her in her chastity cage.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
She seems to be thinking for almost a minute, her hand roaming down to squeeze your own imprisoned self.<br>
<br>
"@@.npc_technician;Hmm, I suppose I'd be willing to out of solidarity... of course once I'm out you better be ready for horny Mistress times a thousand!@@"<br>
<br>
You point out that she's already always horny so maybe this would help her focus some?<br>
<br>
"@@.npc_technician;Oh you brat!@@" She laughs, getting up and fetching her cage before supervising you locking it onto her.<br>
<br>
"@@.npc_technician;Now I'm trusting you with this,@@" she states, handing you the key, "@@.npc_technician;But you better not get any wrong ideas about who's in charge!@@"
<<else>>
"@@.npc_technician;Your Mistress in chastity while you are roaming free? Certainly not! Why, if I wasn't so comfortable snuggling you I'd punish you for the very suggestion!@@"
<</if>>
<<case 'sub'>>
You state that you've decided she needs to be locked in chastity<<if setup.checkItemTypeWorn("cage")>>, same as you<</if>>.<br>
<br>
She sighs. "@@.npc_technician;Are you sure? I mean, uh, yes, Mistress, if that's what you want...@@"<br>
<br>
You smile at her playfulness, assuring her that indeed you want to be in complete control over her lovely, delicious lady lance and she blushes as she hops up to fetch the cage.<br>
<br>
You place a gentle kiss on her member before you ease it in to the steel prison, locking it closed as she gasps softly and submissively, then kissing it again as you thank her for her obedience and assure her that this is a much better state for her to be in.
<<case 'neutral'>>
You ask if maybe she'd be interested in a bit of chastity play?<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_technician;Hmm... I guess I'd be willing to join in with you on that, if you wanted.@@"<br>
<br>
You assuage her concerns by assuring her that she'll enjoy it and it'll make you feel so much better to know that she's locked up along with you.<br>
<br>
She nods, fetching her cage and biting her lip adorably as she watches you lock her away.<br>
<br>
"@@.npc_technician;Whew, feeling a bit tight already are you sure I can't- no, I agreed to this, and it's, like, only fair given your situation.@@"
<<else>>
"@@.npc_technician;Maybe if we both were, I mean, we're equals, right? Doesn't seem fair that I'd be locked up while you were prowling around free.@@"
<</if>>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
<<include "post_session_options">>
</div>/*#
#desc: remove technician chastity
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_technician.relationship.sissyomatic>>
<<set $npc_technician.relationship.her_caged = false>>
<<include "cancelTechnicianChastity">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You ask if she'd like out of her chastity cage and she
<<if $npc_technician.relationship.sissyomatic>>
shakes her head. "@@.npc_technician;Sorry, Princess, but I gave myself over to <<=setup.getNpcName('npc_ai', 'formal')>> now...@@" <<=setup.getNpcName("npc_technician","first")>> gasps, taking a moment to catch her breath before continuing. "@@.npc_technician;The <<=setup.getNpcName('npc_ai', 'title')>> just rewarded me for my devotion, truly, being locked and filled under her control is the greatest of blessings.@@"
<<else>>
eagerly agrees.<br>
<br>
"@@.npc_technician;Yes, please! I know I consented to this but... I'm the dom here plus, like... gah, it's so frustrating!@@"<br>
<br>
You laugh and quickly unlock the cage, her <<getWordPenis false>> springing free as she sighs in relief.<br>
<br>
"@@.npc_technician;Oh, that's so much better.@@"
<</if>>
<<case 'sub'>>
You inform her that you've decided to reward her and let out of her cage.<br>
<br>
<<if $npc_technician.relationship.sissyomatic>>
She bites her lip and shudders slightly. "@@.npc_technician;Sorry, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, but I gave myself over to <<=setup.getNpcName('npc_ai', 'formal')>> now...@@" <<=setup.getNpcName("npc_technician","first")>> gasps, taking a moment to catch her breath before continuing. "@@.npc_technician;The <<=setup.getNpcName('npc_ai', 'title')>> just rewarded me for my devotion, truly, being locked and filled under her control is the greatest of blessings.@@"
<<else>>
Her eyes light up as she almost tosses you off the couch in a hurry to expose her steel cage.<br>
<br>
"@@.npc_technician;Oh, um, like, sorry, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, but I'm REALLY desperate to be free.@@"<br>
<br>
You laugh at her adorable expression and unlock her as she sighs in relief.<br>
<br>
"@@.npc_technician;Oh that feels so much better, thank you <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, you're the best!@@"
<</if>>
<<case 'neutral'>>
You ask if she'd like to out of her chastity cage and she
<<if $npc_technician.relationship.sissyomatic>>
shakes her head. "@@.npc_technician;Sorry, but I gave myself over to <<=setup.getNpcName('npc_ai', 'formal')>> now...@@" <<=setup.getNpcName("npc_technician","first")>> gasps, taking a moment to catch her breath before continuing. "@@.npc_technician;The <<=setup.getNpcName('npc_ai', 'title')>> just rewarded me for my devotion, truly, being locked and filled under her control is the greatest of blessings.@@"
<<else>>
eagerly replies.<br>
<br>
"@@.npc_technician;Yes! Please! I know this is like... solidarity or something but... it's so frustrating, I need out!@@"<br>
<br>
You laugh and slide down to the floor as she reveals the cage for you to quickly remove it.
<</if>>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
<<if !$npc_technician.relationship.sissyomatic>>
Fixing her clothes she smiles and pulls you back onto the couch, her hard member pressing against your rear.<br>
<br>
<</if>>
<<include "post_session_options">>
</div>/*#
#desc: technician fucks you in the vagina
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.firstTime = $npc_technician.relationship.done_vag>>
<<set $scene.firstVaginal = !$player.virgin.vaginal>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
<<=setup.getNpcName("npc_technician","first")>> holds her breath as you unlock her cage and put it to the side, her wizard's wand hard and ready to cast almost the moment it is out of its prison.<br>
<br>
<</if>>
<<if $scene.cage != "" && setup.isCage()>>
<<if setup.isCage()>>
<<=setup.getNpcName("npc_technician","first")>> gently moves your <<getWordMyPenis>> to clear the way to your <<getWordVagina>>.
<<else>>
<<if $npc_technician.relationship.keyholder>>
<<=setup.getNpcName("npc_technician","first")>> produces the key and your chastity belt clicks open.
<<else>>
You pass <<=setup.getNpcName("npc_technician","first")>> the key and she unlocks your chastity belt.
<</if>>
You sigh with relief as the device is pulled away from your body, feel free and excited <<if $npc_technician.relationship.her_caged>>as you turn around to return the favour<<else>>as you help her out of her clothes<</if>>.<br>
<br>
<</if>>
<</if>>
<<if !$npc_technician.relationship.done_vag>>
<<if !$player.virgin.vaginal>>
You gasp as her fingers run between your legs. "@@.npc_technician;Mmm, you feel tight... first time?@@" You gasp and nod as she suddenly freezes.
<<if !$player.virgin.first>>
"@@.npc_technician;Wait, like, first, first time? Holy shit, like... talk about a circuitous route!@@" She takes a deep breath "@@.npc_technician;Okay, like... wow, I feel really honoured and all but... wow, pressure!@@" She takes another moment to clear her head before smiling down at you. "@@.npc_technician;Okay, I promise to do everything I can to make this like... the best it can be, okay? You just... say if anything hurts of if you need to stop, right?@@"
<<else>>
"@@.npc_technician;Woah, first time, like since you...@@" She gestures vaguely towards your naughty bits. "@@.npc_technician;Whew... okay! Well, I promise to do my best, you just make sure to let me know if it hurts or anything... not to brag, but I'm packing more of a varsity-level implement, y'know?@@"
<</if>>
<<else>>
You moan as her fingers run between your legs. "@@.npc_technician;Mmm, someone's ready... yeah, I can't wait to feel what it's like in here... so wet and welcoming...@@"
<</if>>
<br><br>
[<<moveTo 'event_technician_sex_2_vagina_first_1' "Tell her to get on with it already!" 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_vagina_first_1' "On second thought, you're not ready." 3600 "<<set $scene.sex=false>>">>]
<<else>>
You whisper that you're so wet for her and you need her inside of you now... "@@.npc_technician;Mmm, I'll never pass up that opportunity, your cunt is so wet and warm and tight... easily one of my favourite sheaths for my broadsword.@@"<br>
<br>
[<<moveTo 'event_technician_sex_2_vagina_2' "Tell her to get on with it, already!" 1200 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_vagina_2' "On second thought, maybe not tonight." 3600 "<<set $scene.sex=false>>">>]
<</if>>
</div>/*#
#desc: volunteer to give technician a pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You pull out your pedicure kit and ask <<=setup.getNpcName("npc_technician","first")>> if you could offer her a pedicure? Her eyes light up as she grins wide.<br>
<br>
"@@.npc_technician;Could you? Oh, my dogs are barking in excitement already!@@"<br>
<br>
In an instant she is leaning back on the couch with her feet up as you start unpacking supplies.<br>
<br>
<<if setup.getTotalValue("foot") >= 15>>
[@@.link_locked;Refrain from worshipping her feet? Never!@@]<br>
<<else>>
[<<moveTo 'event_technician_pedicure_2' 'Give her the spa experience.' 1800 "<<set $scene.worship=false>>">>]<br>
<</if>>
<<if setup.getTotalValue("foot") < 10>>
[@@.link_locked;No need to go overboard and start worshipping her feet or anything...@@]<br>
<<else>>
[<<moveTo 'event_technician_pedicure_2' 'Worship her feet.' 1800 "<<set $scene.worship=true>>">>]
<</if>>
</div>/*#
#desc: give technician a pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.worshipPedicure.technician && !$npc_technician.flags.pedicure>>
<<set $scene.you_pedicure = true>>
<<else>>
<<if $scene.worship>>
<<incrementEmotion 'affection' 'npc_technician' 4>>
<<applyExperience 'foot' 17 'unbelievable' $SEEN_FRIEND>>
<<set $player.flags.worshipPedicure.technician = true>>
<<else>>
<<set $player.flags.basicPedicure.technician = true>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<if !setup.hasThreshold('foot', 'secretary_foot', 'eager_pedicure')>>
<<applyExperience 'foot' 13 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'foot' 13 'skip' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if !setup.hasThreshold('foot', 'secretary_foot', 'eager_pedicure')>>
<<setThreshold 'foot' 'secretary_foot' 'eager_pedicure'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.worship>>
At the mention of pedicure <<=setup.getNpcName("npc_technician","first")>> is already kicking out of her shoes, but you slow things down, gently guiding her down onto the couch as you kneel at her feet.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.pc;Relax, <<=setup.getNpcName("npc_technician","formal")>>, your slave is here to make everything better...@@"
<<case 'neutral'>>
"@@.pc;Relax, my love, just sit back and let me take care of everything...@@"
<<case 'sub'>>
"@@.pc;Relax, my pet. You've been a good girl and are deserving of a reward...@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
She bites her lip, letting out a soft moan as you begin caressing her feet, pressing them against your face as you shower them with kisses. "@@.npc_technician;Yes...@@" She whispers as you get to work with one of your legendary massages, working from toe to knee as you search out every last knot before turning to the manicure proper.<br>
<br>
A puddle of bliss, <<=setup.getNpcName("npc_technician","first")>> just watches with a smile as you trim, soak, exfoliate and bathe her feet. By the time you finish the final topcoat her toes are sparkling with glee. A little impatient she pulls you back up on to the couch, your lips pressing together as she shows her gratitude.
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Your fingers are so magical, you really are the best slave a girl could wish for...@@"
<<case 'neutral'>>
"@@.npc_technician;Your fingers are so magical, you really are the best SO a girl could wish for...@@"
<<case 'sub'>>
"@@.npc_technician;Your fingers are so magical, you really are the best owner a girl could wish for...@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<else>>
<<=setup.getNpcName("npc_technician","first")>> kicks out of her shoes in anticipation and you get to work.<br>
<br>
Trimming, stripping and filing her nails goes quickly before you fill the basin with some heavily-salted water with a few drops of oil and take her for a dip. "@@.npc_technician;Mmmmm@@" she purrs, kicking her feet as she enjoys the soak.<br>
<br>
Out of the water you gently dry her off with a towel as she expresses her gratitude.
<<if $npc_technician.flags.dataservice_encounter.asked_for_help>>
"@@.npc_technician;This is what I needed... you're so cute and thoughtful! From the start you've been right there to take care of my feet!@@"
<<else>>
"@@.npc_technician;This is what I needed... you're so cute and thoughtful!@@"
<</if>>
<br><br>
You blush and start in with the lotion, feeling like Alexander the Great as you tackle the nest of knots that infest her from her arches all the way up her calves.<br>
<br>
She groans in pain and you freeze "@@.npc_technician;Don't stop! I need this! Ugh, why do they make us wear those evil, evil heels to work!@@"<br>
<br>
You shrug, even as you smile at the memory of how good <<=setup.getNpcName("npc_technician","first")>> looks in a nice pair of steep boots.<br>
<br>
By the end of your massage she's more a puddle than a person, sitting with a blissed out expression and limp legs as you re-apply some fresh polish.<br>
<br>
"@@.npc_technician;Wonderful...@@" she states, smiling down at you from the couch,
<<if $npc_technician.flags.dataservice_encounter.handjob>>
"@@.npc_technician;You really know how to make a girl feel pampered... this is almost better than that other thing you did between my legs...@@"
<<else>>
"@@.npc_technician;You really know how to make a girl feel pampered...@@"
<</if>>
<</if>>
<br><br>
<<if $scene.you_pedicure>>
To your surprise, <<=setup.getNpcName("npc_technician","first")>> takes a moment to wiggle her toes. She slides to the floor, motioning for you to reverse positions as she directs you up onto the couch.<br>
<br>
"@@.npc_technician;Go on, then. You've pampered me so much, well... I want to return the favour!@@"<br>
<br>
[<<moveTo 'event_technician_pedicure_3' 'Sit back.' 900>>]
<<else>>
You smile and slide back up onto the couch with her.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: give technician a pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.pedicure = true>>
<<set $player.nails.pedicure = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
Despite sitting above her <<=setup.getNpcName("npc_technician","formal")>> manages to keep you feeling submissive with a glance as she takes your feet in hand.<br>
<br>
"@@.npc_technician;Now, my lovely Princess — it is time for YOU to be the one pampered... and for me to make these cute toesies even prettier than they are!@@"
<<case 'neutral'>>
<<=setup.getNpcName("npc_technician","first")>> grins up at you as she takes one of your feet in hand.<br>
<br>
"@@.npc_technician;Haha! Turnabout! Now you just lie back and enjoy, you deserve it!@@"
<<case "sub">>
<<=setup.getNpcName("npc_technician","first")>> submissively kneels at your feet, kissing your toes gently before raising one foot in her hands.<br>
<br>
"@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. You take such wonderful care of your slave... it's the least I can do to return the favour this time.@@"
<</switch>>
<br><br>
She carefully bares your feet and launches into a massage — nowhere near your skill level, but enough to feel nice as she works out your knots and then borrows your kit.<br>
<br>
When it comes to the pedicure itself her skills seem much more on point as she trims, buffs and files before matching colour with your fingernails and carefully painting each tiny toe in turn.<br>
<br>
"@@.npc_technician;Isn't that better? I've been thinking you really needed to "match" ever since you started doing your nails... and looking at them now I think you'd have to agree that I was definitely right.@@"<br>
<br>
You wiggle your toes in a final admiration and nod before she helps you back into your shoes and re-joins you on the couch.<br>
<br>
"@@.npc_technician;So... what next?@@"<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: technician strap on sex intro
#status: RELEASED 0.8.6.0
#ignore_spell: m'love
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You wiggle back against her and whisper that you want to feel her strap...<br>
<br>
<<if $npc_technician.relationship.her_caged>>
<<if $npc_technician.relationship.caged_anal.stage > 0>>
<<if $npc_technician.relationship.caged_anal.stage >= 3>>
She moans submissively. "@@.npc_technician;Of course, <<if $npc_technician.relationship.her_role == 'sub'>><<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<else>>m'love<</if>>. You taught me that my girl-dick exists to be locked in chastity, but that's no reason for you not to enjoy getting dicked, so I'll gladly get the strap... though warning that it's going to totally make me drip through my cage...@@"
<<else>>
She groans. "@@.npc_technician;You're so cruel... keeping me locked in chastity yet still forcing me to do you? Goddess I'm so turned on — guess it's good this cage is <<if $npc_technician.relationship.sissyomatic>>so advanced and inescapable<<else>>solid steel<</if>>.@@"
<</if>>
<<else>>
She growls. "@@.npc_technician;Keeping me locked? Goddess you're greedy...@@" She pauses for a moment before laughing playfully, "@@.npc_technician;mmm, don't worry though, I love fucking you, however you want it. So if you want the strap, well... I'll give you the fuckin' strap, eh?@@"
<</if>>
<<else>>
"@@.npc_technician;My strap? You know some girls would be offended at the implication that some silicone sally was preferred over their all-natural girl-dick... now, don't get me wrong, the thought of sliding into your tight, hot hole is still one of my definitions of heaven, but I'm flexible and if my <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>honey-bun<</switch>> wants to be railed by an ever-hard artificial rod, well... I'm more than happy to be on the other end of it...@@"
<</if>>
<br><br>
[<<moveTo 'event_technician_sex_2_strap_2' "Spread your butt-cheeks." 3600 "<<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
[<<moveTo 'event_technician_sex_2_strap_2' "Spread your legs and get unlocked." 3600 "<<set $scene.anal=false>>">>]<br>
[<<moveTo 'event_technician_sex_2_strap_2_double_1' "Tell her to get the double strap and unlock you..." 300>>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked in chastity.@@]<br>
<</if>>
<<else>>
[<<moveTo 'event_technician_sex_2_strap_2' "Spread your legs." 3600 "<<set $scene.anal=false>>">>]<br>
[<<moveTo 'event_technician_sex_2_strap_2_double_1' "Tell her to get the double strap..." 300>>]<br>
<</if>>
<<else>>
[@@.link_locked;You have but one lower hole.@@]<br>
<</if>>
[<<moveTo 'event_technician_sex_2_strap_2_abort' "On second thought, maybe not tonight." 300>>]
</div>/*#
#desc: teaser for princess campaign
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.preGameEvent = true>>
<<set $scene.introducedFemGame = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You're about to start when <<=setup.getNpcName("npc_barista","first")>> drops her act with a twinkle in her eye as she rummages around in her bag.<br>
<br>
"@@.npc_barista;So... with all that you all have done for me, well... I wanted to do something to thank everyone, and, well...@@" she pulls out a large, brightly coloured box and drops it on the table.<br>
<br>
Gasps circle the table. "@@.npc_rpg_warlock;Wait, is that?@@" "@@.npc_rpg_dude;It's actually real?@@" "@@.npc_maid;I can't believe you actually found it!@@"<br>
<br>
Dumbstruck, <<=setup.getNpcName("npc_technician","first")>> is the first to reach out, sliding the box towards her, and sending dice and DM-notes scattering to the floor with nary a care. "@@.npc_technician;The convention-only, limited edition Magical Girl 5th Edition Ultimate Princess Perfectly Pink Power Collection??? How on earth!?@@"<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> grins and taps her head. "@@.npc_barista;Hey, when this noggin' isn't all fogged up and pink I can be a pretty smart cookie... plus, well... when you've spent over a year doing nothing but working and whoring, well... you end up with a giant pile of savings. As I said, I wanted to thank the group for all you've done and, well... I remember you talking about this as like the white whale.@@"<br>
<br>
"@@.npc_rpg_warlock;White whale? This is like a white whale with a unicorn horn chugged the fountain of youth out of the holy grail in El Dorado! They only made like... a thousand of those things and the fan-base is straight-up fanatical!@@"<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> crows more, "@@.npc_barista;Well I'll be looking forward to us running a game with it then, enjoy, my dungeon mistress...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> blinks in surprise. "@@.npc_technician;Wait... you weren't just showing it off this is... this is...@@"<br>
<br>
"@@.npc_barista;Yup, it's all yours now!@@" She replies as <<=setup.getNpcName("npc_technician","first")>> hugs the box close.<br>
<br>
"@@.npc_maid;Her precious, more like!@@" <<=setup.getNpcName("npc_maid","first")>> jokes as everyone laughs.<br>
<br>
"@@.npc_technician;Shhhh,@@" <<=setup.getNpcName("npc_technician","first")>> replies, petting the box like a pet, "@@.npc_technician;They don't know what wonders you contain, but they will... oh yes... I'll show them all!@@" <<=setup.getNpcName("npc_technician","first")>> builds up to a crescendo... and then grins as she spins and puts the box up on one of her storage shelves. "@@.npc_technician;But later! Oh, I'm going to need some time alone to read through, let the old creative juices bubble away and come up with the PERFECT adventure worthy of such a prize! And such a party!@@" She adds with a sweeping smile that scans around the table.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> returns to her seat and nods at <<=setup.getNpcName("npc_barista","first")>>, "@@.npc_technician;Truly, we are all honoured by your gift... but now... to game!@@"<br>
<br>
A few final glances a the box looming down from its place of honour up on the shelf and then attention is turning to you to decide what to do this evening.<br>
<br>
<<include "rpg_gameChoices">>
</div>/*#
#desc: ask to run princess campaign
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You state that you'd like to try a one-shot of "Magical Girl." <<=setup.getNpcName("npc_technician","first")>> is almost trembling with excitement as she rises to her feet and retrieves the "Ultimate Princess Perfectly Pink Power Collection" box from its place of honour on the shelves behind her.<br>
<br>
She gently sets the box down in the centre of the table and smiles. "@@.npc_technician;So, I think I have the PERFECT adventure written up but, well... before we can start, <<if $npc_rpg_dude.fem>>there's the wee issue of someone being... less than enthusiastic about this setting the last time we played it...<<else>>one of us needs to get, shall we say... in character?<</if>>@@"<br>
<br>
She looks across the table and all heads turn to follow as the entire group of girls looks at <<=setup.getNpcName("npc_rpg_dude","first")>> and start grinning.<br>
<br>
<<if $npc_rpg_dude.fem>>
<<=setup.getNpcName("npc_rpg_dude","first")>> shuffles, and objects playfully. "@@.npc_rpg_dude;I just said it wasn't my favourite setting... and it was maybe a bit too saccharine.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> teasingly pouts. "@@.npc_rpg_warlock;Aww, you know you love it, you just don't want to risk that tough metal vibe you have going... but it's just us friends here, you can indulge and be my pretty pink girl...@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> blushes ever-so-slightly, but continues to pretend at reluctance with a "@@.npc_rpg_dude;Well... okay... but only for you, it's not that I'm, like, into that sort of thing.@@"<br>
<br>
"@@.npc_rpg_warlock;Of course, of course, nobody would EVERY accuse you otherwise... and now it's time for you to be not just my girl... but my sweet PRINCESS!!@@"
<<else>>
<<=setup.getNpcName("npc_rpg_dude","first")>> acts oblivious for a few moments, but nobody could hold out long with five eager gamer girls using their gaze attacks simultaneously... and <<he npc_rpg_dude>> finally blushes and responds. "@@.npc_rpg_dude;Okay... I'll be your girl for the evening...@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> grins and throws her arms around her <<boy npc_rpg_dude>>friend. "@@.npc_rpg_warlock;Not just my girl... a PRINCESS!!@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_rpg_dude","first")>> starts to respond only for <<=setup.getNpcName("npc_rpg_warlock","first")>> to all but conjure a gag and stuff it between <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> lips.<br>
<br>
"@@.npc_rpg_warlock;No talk! Only Princess! Ladies!@@" She turns to the rest of you, one hand holding <<=ps(setup.getNpcName("npc_rpg_dude","first"))>>. "@@.npc_rpg_warlock;It is time! Magical Girl Transformation Team: ASSEMBLE!@@"<br>
<br>
[<<moveTo "event_rpg_dude_feminisation_2" "Magical Girl Transformation: ENGAGE!" 300>>]
</div>/*#
#desc: npc_rpg_dude starts changine for princess campaign
#status: RELEASED 0.9.4.0
#ignore_spell: girlification
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Everyone scrambles as, with a combination of shouts, excitement, and what has to be psychic synchronicity the group sets to work on operation: <<if $npc_rpg_dude.fem>>hyper-fem dat girl<<else>>force fem dat boy<</if>>.<br>
<br>
With speed and efficiency that makes you wonder if this was somehow coordinated <<=setup.getNpcName("npc_rpg_dude","first")>> is striped naked in moments and plopped down on a chair, wrists cuffed as <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_maid","first")>> set to work on simultaneous manicures on either side, while you join <<=setup.getNpcName("npc_barista","nickname")>> below with pedi's.<br>
<br>
Grinning like a maniac <<=setup.getNpcName("npc_rpg_warlock","first")>> squats over her <<boy npc_rpg_dude>>'s lap, looking down eye to eye as she ties <<his npc_rpg_dude>> out of the way and starts in with the makeup.<br>
<br>
As you crack open the polish and start in on your part of the girlification you glance up between <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> legs where <<if $fetish.cum>><<his npc_rpg_dude>> driping excitement is already leaking from <<his npc_rpg_dude>> chastity cage to pool on the chair<<else>><<his npc_rpg_dude>> chastity cage is twitching with excitement<</if>>.<br>
<br>
[<<moveTo "event_rpg_dude_feminisation_3" "Nailed it! On to girl-mode: Phase 2!" 300>>]
</div>
/%
note: inspired by plasma dragon, eg:
https://www.deviantart.com/plasma-dragon/art/Witches-pose-891642180
%//*#
#desc: npc_rpg_dude dresses for princess campaign
#status: RELEASED 0.9.4.0
#ignore_spell: miftress
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Four girls working in coordination make QUICK work of <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> nails, each one perfect and polished and pink as <<=setup.getNpcName("npc_technician","first")>> drops a bag of clothes on the couch.<br>
<br>
"@@.npc_technician;Time to dress the part, Princess!@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> starts to mumble a reply only for <<=setup.getNpcName("npc_rpg_warlock","first")>> to sniff and force <<him npc_rpg_dude>> to look back up at her as she continues with her meticulous application of makeup. "@@.npc_rpg_warlock;Be a good girl and stay still and quiet... or I'll find you a bigger gag!@@"<br>
<br>
From <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> expression you're pretty sure "larger gag" isn't exactly a downside, but <<=setup.getNpcName("npc_rpg_dude","first")>> settles on an obedient nod and a muffled "@@.npc_rpg_dude;Yeff, Miftress@@" that seems to be to <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> liking as she she leans in for a delicate kiss on the gag that doesn't risk mussing anything else... followed by a devilish grin and a nice possessive collar tug before she focuses back in on her next brush-stroke.<br>
<br>
<<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> position does complicate things, but with four people working together you're able to slide a pair of fetching shoulder-length gloves up <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> arms, followed by metal cuffs that ride the line between restraint and style, featuring both attachment points and large pink gems. Matching stockings follow and some VERY steep and sexy princess gogo boots with the same pink-gem aesthetic.<br>
<br>
A chest-plate with fake breasts that would give <<if _TODOpcbreasts>>you or <</if>><<=setup.getNpcName("npc_barista","nickname")>> a run for the money are slid into place, <<=setup.getNpcName("npc_rpg_warlock","first")>> diverting a moment to blend the latex in expertly as <<=setup.getNpcName("npc_rpg_dude","first")>> leans forward and <<his npc_rpg_dude>> hair is woven in to a wig that will give <<him npc_rpg_dude>> floor-length twin-tails even with <<his npc_rpg_dude>> steep heels.<br>
<br>
[<<moveTo "event_rpg_dude_feminisation_4" "To be the best, you have to dress the best!" 300>>]
</div>
/%
collar/crown:
https://www.deviantart.com/plasma-dragon/art/Control-Crown-813228353
%//*#
#desc: npc_rpg_dude full princess
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_dude_princess")>>
<div id="invframe" class="scrolltext">
Everyone waits and watches as <<=setup.getNpcName("npc_rpg_warlock","first")>> leans in intently to apply the final brushes of mascara, and then <<=setup.getNpcName("npc_rpg_dude","first")>> is being drug to <<his npc_rpg_dude>> feet, a corset wrapped around and tightened with all of <<=ps(setup.getNpcName("npc_rpg_maid","first"))>> strength to combine with the large tits, and some hip inserts, to take the lanky bean-pole to YOWZA curves.<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> is taking short, excited breaths as <<=setup.getNpcName("npc_rpg_warlock","first")>> reaches for <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> collar. "@@.npc_rpg_warlock;I'm going to change collars now, just remember, whatever you're wearing, or not... you're still mine.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_rpg_dude","first"))>> eyes twinkle with pure love as <<he npc_rpg_dude>> nods as <<his npc_rpg_dude>> gag and the currently clashing spiked leather collar is removed... and replaced by a gorgeous, and incredibly steep posture collar that also curls up to include a crown, both throat and forehead adorned with the same pink gems as <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> cuffs.<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> smiles and blows <<him npc_rpg_dude>> a kiss so as not to muss the big, beautiful pink lips.<br>
<br>
With a grin <<=setup.getNpcName("npc_rpg_warlock","first")>> unlocks <<=ps(setup.getNpcName("npc_rpg_dude","first"))>>, giving the rock-hard cock a few teasing strokes and a kiss on the tip... before stuffing it under the front shield of a sleek pink, and jewel-adorned, chastity belt. Complete with large integrated princess-plug, the belt locks perfectly around the narrowest part of the corset-hourglass waist, a short miniskirt rounds things off before everyone steps away and <<=setup.getNpcName("npc_rpg_warlock","first")>> proudly announces. "@@.npc_rpg_warlock;And now, presenting... Pretty <<=setup.getNpcName("npc_rpg_dude","custom", "Princess")>> <<=setup.getNpcName("npc_rpg_dude","character")>>!@@"<br>
<br>
"@@.npc_maid;Warrior of Light!@@"<br>
"@@.npc_technician;Defender of Truth!@@"<br>
"@@.npc_barista;Kisser of Girls!@@"<br>
<br>
[<<moveTo "event_rpg_dude_feminisation_5" "Cutie cute cutie!" 300>>]
</div>/*#
#desc: start princess campaign
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_princess")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_rpg_warlock","first")>> beams as she leads <<=setup.getNpcName("npc_rpg_dude","custom", "Princess")>> <<=setup.getNpcName("npc_rpg_dude","character")>> back to their normal seats and the rest of the group gets back into position to start the game.<br>
<br>
TODO: continue
</div>/*#
#desc: utility passage for removing RPG succubus attire
#status: FINISHED 0.5.0.0
#*/
<<if $npc_technician.flags.rpg_campaign.session == 5 && $npc_technician.relationship.relationship_stage > 0 && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
/* no op */
<<else>>
<<if setup.checkItemOwned("rpg_succubus_leash")>>
<<removeItem "rpg_succubus_leash" true>>
<<deleteItem "rpg_succubus_leash">>
<</if>>
<<if $scene.collared != 'locked'>>
<<if !$npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[6]>>
<<removeItem "rpg_succubus_collar" true>>
<<deleteItem "rpg_succubus_collar">>
<</if>>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session > 3>>
<<removeItem "rpg_succubus_demon_hood" true>>
<<deleteItem "rpg_succubus_demon_hood">>
<<if $npc_technician.flags.rpg_campaign.session >= 4>>
<<if setup.checkItemOwned("rpg_succubus_arm_bondage")>>
<<removeItem "rpg_succubus_arm_bondage" true>>
<<deleteItem "rpg_succubus_arm_bondage">>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session > 6>>
<<if !$npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[7]>>
<<removeItem "rpg_succubus_pentagram_harness" true>>
<<deleteItem "rpg_succubus_pentagram_harness">>
<</if>>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemWorn("rpg_succubus_leash")>>
<<removeItem "rpg_succubus_leash" true>>
<<deleteItem "rpg_succubus_leash">>
<</if>>
<<if setup.checkItemWorn("rpg_succubus_ankle_cuffs")>>
<<removeItem "rpg_succubus_ankle_cuffs" true>>
<<deleteItem "rpg_succubus_ankle_cuffs">>
<</if>>
<<if setup.checkItemWorn("rpg_succubus_wrist_cuffs")>>
<<removeItem "rpg_succubus_wrist_cuffs" true>>
<<deleteItem "rpg_succubus_wrist_cuffs">>
<</if>>
<<useClothSetPop 'scene'>>
<</if>>/*#
#desc: utility passage to remove collar if possible and record status
#status: FINISHED 0.5.0.0
#*/
<<set $scene.collared = "none">>
<<if setup.isItemTypeEquipped('choker')>>
<<if setup.getItemObjFromType("choker").hasOwnProperty("lockable") && setup.getItemObjFromType("choker")["lockable"][0]>>
<<set $scene.collared = "locked">>
<<else>>
<<set $scene.collared = "worn">>
<</if>>
<</if>>/*#
#desc: arrive at npc_technician's apartment for first RPG session
#status: FINISHED 0.5.0.0
#*/
<<set $overrideEvents = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.cur_campaign_id = "fantasy">>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_0'
0
'event_psychiatrist_theme_group_1'
false
>>
<<set $npc_rpg_warlock.profile = true>>
<<set $npc_rpg_dude.profile = true>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_life_0'
0
'theme_barista_rpg'
false
>>
<<addNpcTheme 'npc_technician' 'rpg' 'npc_technician_theme_rpg_barista'
0
'theme_technician_barista'
false
>>
<<addNpcTheme 'npc_technician' 'rpg' 'npc_technician_theme_rpg_dude'
0
'theme_technician_rpg_dude'
false
>>
<<addNpcTheme 'npc_technician' 'rpg' 'npc_technician_theme_rpg_warlock'
0
'theme_technician_rpg_warlock'
false
>>
<<addNpcTheme 'npc_technician' 'rpg' 'npc_technician_theme_rpg_maid'
0
'theme_technician_maid'
false
>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You knock on the door and <<=setup.getNpcName('npc_technician', 'first')>> opens it with a smile before theatrically gesturing for you to enter.<br>
<br>
"@@.npc_technician;Step forth, adventurer! For an evening of action and excitement!@@"<br>
<br>
You can't help smiling at her enthusiasm as she leads you into the living room where several other people are already gathered.<br>
<br>
"@@.npc_technician;<<=$player.first_name>>, meet the gang!@@" She moves around to point to each person in turn for introductions as they smile back in greeting. "@@.npc_technician;First off, you already know <<=setup.getNpcName('npc_maid', 'first')>>.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> sits on a chair at one end of a coffee table scattered with dice and papers. Judging by her maid outfit, you figure she came straight from work.<br>
<br>
The next two, seated at one end of a couch, look to be in some sort of relationship given the way the woman is draped across the <<if $npc_rpg_dude.fem>>girl's<<else>>guy's<</if>> lap. The girl, introduced as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> is dressed in a red trench coat over a matching corset, skintight jeans and chunky platform boots. Her (presumed) <<boy npc_rpg_dude>>friend, <<=setup.getNpcName('npc_rpg_dude', 'first')>> tilts towards the stereotypical "skinny metal <<guy npc_rpg_dude>>" side of things with long hair, combat boots, skinny jeans, a black <<if $npc_rpg_dude.fem>>punk top<<else>>short sleeved shirt<</if>> and a spiked collar save for it having a ring dangling from the front that <<he npc_rpg_dude>> occasionally toys with.<br>
<br>
Finally there is <<=setup.getNpcName('npc_barista', 'nickname')>>, who waves at you with a wide smile.<br>
<br>
"@@.npc_barista;Hiya <<=$player.first_name>>!@@"<br>
<br>
"@@.npc_technician;So, I, uh guess you've met <<=setup.getNpcName('npc_barista', 'first')>>?@@"<br>
<br>
"@@.npc_barista;Yup! <<=$player.first_name>> comes in for coffee, like, every day!@@"<br>
<br>
"@@.npc_technician;Tsk, tsk, careful there <<=setup.getNpcName('npc_maid', 'first')>> might get jealous!@@"<br>
<br>
"@@.npc_barista;Aww, I promise to share!@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> rolls her eyes as <<=setup.getNpcName('npc_technician', 'first')>> moves on from introductions. You take a seat on the couch, sitting at the far end from the lovebirds.<br>
<br>
Waving a foot in your direction <<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles. "@@.npc_rpg_warlock;Why so far? Come on, scooch a bit closer! We don't bite... much.@@"<br>
<br>
You blush and struggle for words at the blatant flirting despite her <<boy npc_rpg_dude>>friend being right there. <<=setup.getNpcName('npc_rpg_dude', 'first')>> just smiles as the rest of the group roll their eyes.<br>
<br>
"@@.npc_technician;Come on! All of you promised to be on your best behaviour tonight!@@"<br>
<br>
"@@.npc_maid;Yeah, I wanna actually get to the game.@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> flutters her eyelashes in mock innocence and pouts before turning back towards you to flash an enticing smile. You compromise and shuffle a little closer to the middle of the couch.<br>
<br>
<<printThought "What is it with ladies treating me like a toy to tease and taunt?">><br>
<br>
"@@.npc_technician;Alright, let's get this show on the road, how about everyone introduces their characters then <<=$player.first_name>> can choose what she wants to play. To save time we each rolled up a character for you, so you can choose one of those to play as.@@"<br>
<br>
You nod, sitting back to listen to the rest of the "party." <br>
<br>
[<<moveTo 'event_rpg_intro_characters' 'Listen.' $scene.stepLength>>]
</div>/*#
#desc: other rpg players describe their characters
#status: FINISHED 0.5.0.0
#ignore_spell: homebrew
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_maid', 'first')>> goes first. "@@.npc_maid;I'm playing <<=setup.getNpcName('npc_maid', 'character')>>, a half-celestial barbarian. Her mother was a valkyrie (the mythological ones, not the cyborg law enforcement units: ACAB) and her father was a tribal chieftain and she channels her battle-rage to defend the innocent.@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> is next. "@@.npc_rpg_warlock;I'm playing the warlock: <<=setup.getNpcName('npc_rpg_warlock', 'character')>>. Binder of Demons! Caster of spells! All shall bow before my infernal magical might!@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> shakes <<his npc_rpg_dude>> head at <<his npc_rpg_dude>> girlfriend's theatrics as she almost falls out of <<his npc_rpg_dude>> lap in exuberance. "@@.npc_rpg_dude;My character is named <<=setup.getNpcName('npc_rpg_dude', 'character')>> — undead warrior, I'm the group's tank, but I can dish it out as well thanks to the greater lightning elemental bound into my sword.@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> has been bouncing in her chair the whole time as she waited for her turn. "@@.npc_barista;I'm playing <<=setup.getNpcName('npc_barista', 'character')>>, she's a half-elf who loves nothing more than exciting and inspiring those around her!@@"<br>
<br>
Coming back around, <<=setup.getNpcName('npc_technician', 'first')>> smiles from behind her screen, looking even more like a ruler on her throne than she does in her cubicle. "@@.npc_technician;And *I* am the Dungeon Mistress! Crafter of tales, builder of worlds, the hand of fate and the Goddess to whom your prayers are cast!@@"<br>
<br>
"@@.npc_maid;Yeah, we get it, your game, your story, your rules. But maybe cut back on the delusions of grandeur?@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> snorts, pretending to be miffed though you get the feeling this sort of taunting is all part of whatever quirky friendship the two of them share.<br>
<br>
"@@.npc_technician;Ignore the heathen! Anyway, the game is a bit of a homebrew modification of Traps and Treasures third that we call three point <<glitchText "sex">>. Don't worry too much about the details, you'll pick it up as we go along. Just consider it your classic fantasy world, but with a bunch of additional houserules, splatbooks and a few loottables from the classic edition that we find make things more fun.@@"<br>
<br>
You've heard of the game before, though whatever familiarity you have obviously won't cover what sounds like their substantial modifications. You seem to recall there was a new version released a year or two ago, but before you can mention anything <<=setup.getNpcName('npc_maid', 'first')>> leans over and whispers in your ear. "@@.npc_maid;Whatever you do, do NOT mention fourth edition she, uh... has OPINIONS.@@"<br>
<br>
Ignoring the whispered exchange as she organizes some papers, <<=setup.getNpcName('npc_technician', 'first')>> hands you a stack of character sheets.<br>
<br>
"@@.npc_technician;Now that you've got an idea as to the rest of the party, you'll be needing a character of your own. To save time, and to make sure you'd have something that would mesh with the party, we each rolled up a full character to give you a variety to select from.@@"<br>
<br>
[<<moveTo 'event_rpg_character_select' 'Look through your options.' $scene.stepLength>>]
</div>/*#
#desc: select your character for the rpg campaign
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session = [false,false,false,false,false,false,false]>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/characters/rpg_none.png">>
<div id="invframe" class="scrolltext">
Flipping through the sheets, you find <<if $fetish.bestiality_hard>>five<<else>>four<</if>> characters to choose between. Each comes with a hand-drawn portrait, a short background description and fully allocated stats.<br>
<br>
What character do you want to look at?<br>
<br>
[<<moveTo 'event_rpg_character_orc_mage' 'The Half-Orc Mage.' 0>>]<br>
[<<moveTo 'event_rpg_character_elf_priestess' 'The Elf Priestess.' 0>>]<br>
[<<moveTo 'event_rpg_character_succubus' 'The Succubus Pirate.' 0>>]<br>
[<<moveTo 'event_rpg_character_bard' 'The Bard.' 0>>]<br>
<<if $fetish.bestiality_hard>>
[<<moveTo 'event_rpg_character_druid' 'The Shape-shifting Druid.' 0>>]
<</if>>
</div>/*#
#desc: character description for orc mage
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/characters/rpg_orc_mage_0.png">>
<div id="invframe" class="scrolltext">
Mahn-kurk is an atypical member of his species. Wearing a robe and holding a staff high in the midst of channeling a spell in a classic "wizard" pose; what sets things apart is the muscle-bound form filling the robe, and the tusked face of a brown half-orc looking boldly out from beneath the hood.<br>
<br>
His background is interesting, having decided to pursue the arcane arts rather than fall back on his natural strength. Racial bonuses means he still has a hearty constitution and strength to go with intellect for spellcasting, balanced out with somewhat lower scores in charisma and the rest. For spells it looks like your primary school is something called Somniumic, which apparently means "sleep" magic, though looking through his spell list it seems like you have access to some standards such as fireball as well.<br>
<br>
Given all that's happened to you, it'd be a bit interesting to swing the other direction and pretend to be a big, hulking man backed up by some magical know-how.<br>
<br>
You glance up and <<=setup.getNpcName('npc_maid', 'first')>> nods. "@@.npc_maid;I came up with that one, I think it's fun to make a character that goes against expectations and stereotypes.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='orc_mage'>><<set $scene.session_num = 0>>">>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='orc_mage'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character.'>>]
</div>/*#
#desc: character description for elf priestess/healer
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/characters/rpg_elf_priestess_0.png">>
<div id="invframe" class="scrolltext">
A cliche fantasy elf, her billowing, revealing robes defying gravity thanks to impossible winds. The priestess lists as her skills expertise in healing magic as well as spreading blessings to her allies. Under "Deity Worshipped" it states "The Power of the Divine Three." <br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> flashes a smile. "@@.npc_rpg_dude;That was my idea, bit self-serving, to be honest. Y'know, with me playing a tank and well... we were a bit strapped for healing in the last campaign!@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='elf_priestess'>><<set $scene.session_num = 0>>">>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='elf_priestess'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character.'>>]
</div>/*#
#desc: character description for succubus pirate
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session = [false,false,false,false,false,false,false,false]>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/characters/rpg_succubus_0.png">>
<div id="invframe" class="scrolltext">
You look at the character sheet for Myserra Antoire, mighty pirate.<br>
<br>
A succubus complete with horns, wings and unearthly beauty. The character's only attire, aside from a jaunty pirate hat, is an ensemble of magical restraints, most notably a collar that, according to the inventory description, prevents her from returning to the infernal realms. Her other cuffs appear to provide magical bonuses as well, though that doesn't make them any less kinky or scandalously slutty.<br>
<br>
Under skill summary it lists "bending the will of <<if $options.fem>>people<<else>>men<</if>>" and "plundering booty" — so it sounds like this would be a thief/mentalist, a pretty potent combination. At the bottom it also notes that she can suppress her gag reflex for up to ten minutes.<br>
<br>
<<printThought "How strangely specific...">><br>
<br>
Looking up from the character sheet, you find <<=setup.getNpcName('npc_rpg_warlock', 'first')>> sporting an already familiar grin. "@@.npc_rpg_warlock;I came up with that one. You'd actually be bound to me as my demonic servant. I figured it'd be a bit easier for you that way, if you aren't as familiar with playing. Plus... well, it seemed appropriate given that you seemed to have ensorcelled <<=setup.getNpcName('npc_technician', 'first')>> with your lust magic IRL.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> turns beet red, but tries to hide it hunkered down behind her DM screen. A bit of cardboard is hardly protection from the ribbing of the rest of her friends, <<=setup.getNpcName('npc_maid', 'first')>> cutting deepest as she tells you "@@.npc_maid;Hey, don't worry, being the DM's girlfriend comes with perks, y'know?@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
Trying to stand up for your girlfriend, you sit taller and ignore the teasing, insisting that she would never betray her responsibilities as Dungeon Mistress in such a way.
<<else>>
Now it's your turn to blush... at the idea of being a "girlfriend"... then again, if you were going to be anyone's wouldn't you like to be <<=ps(setup.getNpcName('npc_technician', 'first'))>>?
<</if>>
<br><br>
<<=setup.getNpcName('npc_technician', 'first')>> recovers her composure, coughing loudly and breaking up the chatter. "@@.npc_technician;Come on, stop teasing the new player! I invited <<=$player.first_name>> here as a friend so let's just, like focus on the game, huh?@@"<br>
<br>
You think <<=setup.getNpcName('npc_rpg_warlock', 'first')>> was about to say something more, but you spot <<=setup.getNpcName('npc_rpg_dude', 'first')>> giving her a pinch. For her part, <<=setup.getNpcName('npc_maid', 'first')>> just laughs it off.<br>
<br>
"@@.npc_maid;Come on, you know we're just joshing you! Seriously, though, play whatever character you like — this is a safe space and we're all just here to have fun.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='succubus'>><<set $scene.session_num = 0>>">>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='succubus'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character.'>>]
</div>/*#
#desc: character description for lucksack bard
#status: FINISHED 0.5.0.0
#ignore_spell: h
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/characters/rpg_bard_0.png">>
<div id="invframe" class="scrolltext">
With a certain gender ambiguity that reminds you a little of your recent past, this character is HAWT with a capital H. Sporting a dual purpose axe that looks to be both a guitar and a weapon, the skill list indicates that you can buff your allies and bring fear to your enemies while able to expertly play everything "from the lyre to the skin flute." Judging by your godlike charisma and social stats, you'd slot into the classic "face" role, with enough agility to not be a liability in combat.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smiles. "@@.npc_technician;That was one of mine. Some people kind of trash bards, but I think they're fun! I mean what's more badass than rolling up to a fight and just rocking the fuck out, y'know?@@"<br>
<br>
"@@.npc_barista;Yeah! Bards are, like, the best, I'm playing one too!@@"<br>
<br>
"@@.npc_technician;Wait- you're? Again? But I thought...@@" <<=setup.getNpcName('npc_technician', 'first')>> pinches the bridge of her nose and shakes her head.<br>
<br>
"@@.npc_barista;Like, duh! Bards are the best, especially with a five person party, my bardsong of power is effectively zero point seven additional standard unit character's worth of DPS... averaged over the length of a typical encounter, so once you add in my own point six contribution we're MUCH better off than if I was just another beater. And if you, like, did it together with me, we'd be able to take on encounters of one point four eight higher average level, which is just pure gravy for XP.@@"<br>
<br>
<<printThought "Wait... what did she just say?">><br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> chuckles. "@@.npc_maid;It's called a duet, by the way, not "doing it together."@@"<br>
<br>
"@@.npc_barista;Oh! Well, like, that too!@@"<br>
<br>
Though you blink in confusion, the rest of the group takes <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> mathy outburst in stride.<br>
<br>
"@@.npc_technician;Fine, whatever, we can have two bards. Just choose whatever you think you'd most enjoy playing.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 '<<set $npc_technician.flags.rpg_campaign.character="bard">><<set $scene.session_num = 0>>'>>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='bard'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character.'>>]
</div>/*#
#desc: character description for shape-shifting druid
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/characters/rpg_druid_0.png">>
<div id="invframe" class="scrolltext">
The actual character is somewhat indistinct as they are surrounded by a multitude of animals representing the various forms you can shift between. You find it a bit odd that all of the forms appear to be anatomically correct with both types of primary and secondary sexual characteristics? It's weird, but hardly the strangest thing you've seen of late and you chalk it up to them using some random picture they found online and, well, everyone knows what the internet is like.<br>
<br>
Flipping to the skills section it looks like you'd have pretty good versatility thanks to your different forms, though the power seems to come with the downside that you're subject to animalistic urges that can lead to you losing control in stressful situations and your actions being determined by die roll.<br>
<br>
"@@.npc_barista;That one was mine! Being like, super versatile and able to do everything is great!@@"<br>
<br>
"@@.npc_technician;Yeah... just an fyi that <<=setup.getNpcName('npc_barista', 'nickname')>> went a little hog wild with splatbooks. Let's just say that one is for if you feel like being a bit more adventurous. You'll be powerful, but at the whims of fate on occasion so I'd only choose it if the idea of riding... or getting ridden, by the beast, as it were, sounds okay.@@"<br>
<br>
"@@.npc_barista;Randomness is fun! And, like the odds are totally in your favour, wheee!@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='druid'>><<set $scene.session_num = 0>>">>]<br>
<<else>>
[<<moveTo 'event_rpg_campaign_start' 'Choose this character.' 300 "<<set $npc_technician.flags.rpg_campaign.character='druid'>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_character_select' 'Look at a different character.'>>]
</div>/*#
#desc: first rpg campaign start
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 0>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_10'
7
'event_psychiatrist_theme_rpg_succubus'
true
>>
<</if>>
<<useClothSetPush 'scene'>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Having made your selection, you pass the other character sheets back to <<=setup.getNpcName('npc_technician', 'first')>>. Everyone seems quite pleased with your choice, and even more excited to get started.<br>
<br>
With a wide grin on her face, <<=setup.getNpcName('npc_technician', 'first')>> leans forward, the rest of the group relaxing back into their seats as she starts the session rolling.<br>
<br>
"@@.npc_technician;Descending deeper into the Bloodfel Lair, you come upon what looks to be a makeshift prison. Rusted iron bars have been sunk deep into the stone cave walls to secure a handful of dank cells...@@"<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
All but one of the cells are empty, at least, empty of anything still living. In the final cell you spot a large robed figure.<br>
<br>
She nods in your direction. "@@.npc_technician;That's you, tiger. You just woke up to the sound of these adventurers entering the room.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<case "elf_priestess">>
All but one of the cells are empty, at least, empty of anything still living. In the final cell you spot a robed elf, her clean, sylvan beauty a stark contrast to the dingy cell in which she is imprisoned.<br>
<br>
She nods in your direction. "@@.npc_technician;That's you, tiger. You were praying when these adventurers entered the room.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<case "bard">>
All but one of the cells are empty, at least, empty of anything still living. In the final cell you spot an attractive figure casually laying on a cot, humming to themselves.<br>
<br>
She nods in your direction. "@@.npc_technician;That's you, tiger. You were just passing the time composing a new ballad when this group of adventurers entered the room.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<case "druid">>
All but one of the cells are empty, at least, empty of anything still living. In the final cell you spot a large bear sitting on its haunches.<br>
<br>
She nods in your direction. "@@.npc_technician;That's you, hunny-bear. You recently woke to the smell of these adventurers approaching the room.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<case "succubus">>
The cells are all empty, but there is a lingering sensation of evil hanging in the air.<br>
<br>
"@@.npc_rpg_warlock;Alright, looks like we're safe here for a few, so I'm going to go ahead and summon my bound demon.@@"<br>
<br>
"@@.npc_technician;Okay, you spend a few minutes preparing the ritual. Make an occult check?@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> rolls a die. "@@.npc_rpg_warlock;After modifiers that's 23!@@"<br>
<br>
"@@.npc_technician;Alright, your summoning circle pulses with mystical power as you chant. After a few moments a figure starts to appear, purple shadow coalescing into a feminine shape. You continue chanting, the lines of power traced on the ground rising into the air and then entwining the demonic succubus as she materialises. You finish the spell, magical restraints materialising on her otherwise naked body as she finishes getting pulled into the mortal world. The glow of the restraints fades, but their mystical power remains strong, binding her to this realm, and to your control.@@"<br>
<br>
Turning towards you, <<=setup.getNpcName('npc_technician', 'first')>> nods. "@@.npc_technician;Alright, you've been summoned.@@" She passes you a note. "@@.npc_technician;That's what you know about your situation.@@"
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_1_1' 'Read the note.' $scene.stepLength>>]
</div>/*#
#desc: released from your cell and join the party
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You read the note.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Traveling through the area, you were captured by the nefarious monsters occupying the dungeon. They tried to recruit you to their cause, but when you refused you were thrown into the cell.<br>
<br>
Explaining your situation to the party, they quickly free you as you gratefully offer to lend your arcane might in vanquishing the remaining occupants of the dungeon before other innocents fall victim to their raids.
<<case "elf_priestess">>
You had been on a pilgrimage to a nearby temple when the caravan you had been traveling with was set upon by monsters. You tried to lend your divine power to aid the guardsman, but your display of magical might only drew the focus of the attackers. Before you knew it, you had been captured and hurried away, deposited into the cell you now find yourself in.<br>
<br>
You convey your plight to the adventurers who quickly free you from your cell. Explaining their plan to vanquish the summoner responsible for the monstrous occupants of the dungeon, you eagerly offer to lend "the divine power of the three" to their cause.<br>
<br>
For some reason <<=setup.getNpcName('npc_barista', 'nickname')>> titters at your phrasing.
<<case "bard">>
You don't really remember how you ended up in this cell, just that you were partying it up after a successful tavern show and then you woke up here, your treasured axe leaning against the far wall out of sight, your head pounding with something worse than a mere hangover.<br>
<br>
Happy to see the arriving adventurers, you explain your situation and they break open your cell. Grabbing your treasured instrument/weapon, you strike a power chord, feeling energy flow back through you as you promise to lend your melodic magical might to help defeat the dungeon dwellers who had captured, kidnapped and contained you.<br>
<br>
"@@.npc_rpg_dude;Nice alliteration!@@"
<<case "druid">>
You had been minding your own business in the forest when a troupe of monsters had set upon you. Though you put up quite the fight in your powerful ursine form, you were eventually trapped and subdued, finally dumped in this cage and left alone.<br>
<br>
Sensing that these adventurers are friendly, you shift back into human form, offering your primal might if they would free you from your captivity to get revenge on your captors. They welcome you to the party as the group of you head deeper into the dungeon. Taking point position, you assume cat form for stealth and to better sense any ambushes.
<<case "succubus">>
Ripped from your infernal home, you feel the power of your magical bindings preventing you from returning or taking revenge on your summoner, not that you have particular urge to. The mortal world is quite a pleasant one and it is always a bit of fun to join up and seduce a party of do-gooders.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles at you in real life.<br>
<br>
"@@.npc_rpg_warlock;Come along my pet, we have an evil summoner to vanquish!@@"<br>
<br>
Unconsciously you find yourself scooting across the couch to sit a little closer to <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and her <<boy npc_rpg_dude>>friend.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
Proceeding on from the dungeon, the party easily squashes a small roving patrol of enemies before making it down another level to outside what looks like a guard barracks that appears to be the final obstacle between the party and the evil summoner responsible for the monstrous hordes filling the dungeon and terrorising the surrounding communities.<br>
<br>
The party takes a few moments to prepare and strategise for the room beyond.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_2' 'Listen to the plan.' $scene.stepLength>>]
</div>/*#
#desc: decide how to deal with barracks leading into final fight of the dungeon
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Carefully peeking into the barracks, you count over a dozen monsters lounging in wait. You can tell from looking at your fellow players that, outnumbered as you are, the battle ahead could be a tough one — especially since the longer you take, the greater the chance that the evil summoner lurking at the end of the dungeon will notice the commotion and join in.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You consider that your sleep spells could allow the party to bypass this entire encounter and head straight for the big bad.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_active' 'Attempt to work your magic.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Stay quiet and just play spell-slinging support as the party moves to combat.' $scene.stepLength>>]
<<case "elf_priestess">>
Hanging back with the other ranged, you channel an aura, preparing a spell to heal whichever of your compatriots is the first to take damage.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Time to fight.' $scene.stepLength>>]<br>
<<case "bard">>
You're a musical badass with an axe to grind and enemy faces to melt.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_active' 'Throw caution to the wind and shred a magic solo to lead the party into battle.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Play it safe and just try to survive as the party moves to combat.' $scene.stepLength>>]
<<case "druid">>
<<=setup.getNpcName('npc_technician', 'first')>> calls for you to make a roll to resist frenzy at the prospect of battle. Looking at your various forms, you realise that if you could surrender to the frenzy you'll net a huge bonus to combat abilities at the cost of losing control of your actions to the whim of the dice, or you could try to remain calm at the cost of primal power.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_active' "Embrace the chaos, go bear and let out a roar. It's time to do it!" $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Play it safe and remain in cat form to just try to survive as the party moves to combat.' $scene.stepLength>>]
<<case "succubus">>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles wickedly in your direction.<br>
<br>
"@@.npc_rpg_warlock;Alright my slutty servant. Let's see you put those devilishly seductive abilities to use. Sneak in there and distract the guards so we can get the jump on our foes.@@"<br>
<br>
Given your character, there's little doubt what manner of "distraction" she has in mind, but refusing her order could result in her using your mystical restraints to punish you.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_3_active' 'Obey her command and deploy your sneaky, seductive abilities.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_3_passive' 'Refuse the order.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: don't take action to help the party deal with the barracks encounter
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<include rpg_choker_check>>
<<addItem "rpg_succubus_leash">>
<<wearItem "rpg_succubus_leash" true>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "rpg_succubus_collar">>
<<wearItem "rpg_succubus_collar" true>>
<<case 'worn'>>
<<set $scene.collared = "worn">>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $scene.collar true>>
<<addItem "rpg_succubus_collar">>
<<wearItem "rpg_succubus_collar" true>>
<</switch>>
<<else>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "bondage_collar">>
<<wearItem "bondage_collar" true>>
<<case 'worn'>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $scene.collar true>>
<<addItem "bondage_collar">>
<<wearItem "bondage_collar" true>>
<</switch>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Not speaking up to offer strategic suggestions you just hang back with the casters as <<=setup.getNpcName('npc_rpg_dude', 'character')>> kicks down the door and battle is joined.<br>
<br>
The fight is pitched, the undead warrior drawing most of the heat, but the number of enemies such that a few get past to attack you and the warlock.<br>
<br>
Throwing out fireballs as you can there are a couple close calls, but the party manages to pull through. Unfortunately just as the final foe falls you hear a sound from the next room. The door ahead swings open...
<<case "elf_priestess">>
Standing with the warlock in the back of the party, you throw out heals as the party enters into pitched combat. With <<=setup.getNpcName('npc_rpg_dude', 'first')>> and <<his npc_rpg_dude>> undead warrior at the front, the party slices through your less organised foes. Outnumbered as you are, you each take more than a few hits, but your healing magics are more than up to the task of neutralising the damage.<br>
<br>
A crackle of lightning arcs from <<=ps(setup.getNpcName('npc_rpg_dude', 'character'))>> blade through the final enemy. The scent of ozone, blood and charred flesh lingers in the air as you have, but a moment to catch your breath before hearing a sound from the next room. The door ahead swings open...
<<case "bard">>
Not wanting to draw attention with your music you wield your axe in the conventional sense as the party enters pitched battle with the foes beyond. A few lucky rolls see you take out a couple monsters, but at the cost of some damage yourself. Though you weather the hits significantly worse than the slender juggernaut of an undead warrior woman at your side, but you and <<=setup.getNpcName('npc_rpg_dude', 'first')>> barely manage to hold the line as you finish battling the room full of monsters.<br>
<br>
You hear sound from the next room and the door opens...
<<case "druid">>
The barracks is crowded and it is a challenge for even your lithe feline form to manoeuvre amidst the flying spells and swinging swords. You try to work flanking manoeuvres with the party's tank, but it isn't long before <<=setup.getNpcName('npc_rpg_dude', 'character')>> is forced to unleash the full power of her sword in a chain lightning attack, your own fur scorched a bit as you catch the edge of it.<br>
<br>
Low on hit points the party looks around to make sure the last of your foes are defeated only to hear a sound coming from the next room as the door ahead swings open...
<<case "succubus">>
<<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> gaze narrows at your refusal of her order only for a smile to spread across her face, which is somehow even scarier.<br>
<br>
"@@.npc_rpg_warlock;Oooh, a feisty one... that can be fun too. I invoke the power of your bonds to make my words your law.@@"<br>
<br>
"@@.npc_technician;Roll to resist@@" announces the DM and you cast the die.<br>
<br>
"@@.pc;One...@@" you whisper nervously as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> grins even wider.<br>
<br>
"@@.npc_rpg_warlock;Critical fail!@@" She gloats, "@@.npc_rpg_warlock;Now you're REALLY mine! But... I think we should make this a bit more fun. Come over here!@@"<br>
<br>
Sliding off her <<boy npc_rpg_dude>>friend's lap she motions towards the floor in front of her feet.<br>
<br>
Though nervous you feel somehow... safe? It is, after all, just a game so why not have a bit of fun? You do as she commands, kneeling at her feet.
<<if $scene.collared == 'none'>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
She produces a leather dog collar from her purse.
<<else>>
She produces a leather collar from her purse, a collar that bears a striking resemblance to the one your character was wearing in the concept art you saw earlier.
<</if>>
Buckling it around your neck she clips a leash to the ring at its front and then leans down to whisper in your ear.
<<elseif $scene.collared == 'locked'>>
"@@.npc_rpg_warlock;Already enslaved, are we?@@" She states, noting your locked-on neck adornment. "@@.npc_rpg_warlock;How lovely! Well, I hope your owner doesn't mind that I'm taking charge for a bit.@@"<br>
<br>
<<if $npc_technician.relationship.her_role == "dom">>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> winks at <<=setup.getNpcName('npc_technician', 'first')>> who gives an approving nod in return.<br>
<br>
The subtle trade of your submissive self has you biting your lip and squirming with arousal.<br>
<br>
<</if>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> clips a leash to the front of your collar then leans down to whisper in your ear.
<<else>>
Delicately removing your current collar she replaces it with
<<if $npc_technician.flags.rpg_campaign.session > 7>>
a leather collar that bears a striking resemblance to the one your character is illustrated as wearing.
<<else>>
a leather dog collar she has produced from her purse.
<</if>>
Buckling it around your neck she clips a leash to the ring at its front and then leans down to whisper in your ear.
<</if>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
"@@.npc_rpg_warlock;There, that should help you better get into character, and keep you mindful of the hierarchy between us, hmm?@@"
<<else>>
"@@.npc_rpg_warlock;Not quite as nice as the one you're wearing in-game, but it should help you stay in character and keep you mindful of the hierarchy between us, hmm?@@"
<</if>>
She laughs, rubbing your side with one booted foot as you obey her previous in-game order, your character sneaking into the barracks.<br>
<br>
Feeling a bit meek you review your character sheet and choose to cast a spell of mass seduction. You roll mediocre and manage to turn a couple of your enemies, the rest of the party rushing into the room to join the melee as the monsters fight amongst themselves.<br>
<br>
Even with the help of your turncoats it is a difficult battle, and by the time the last foe is struck down you're all five running a tad low on spells and HP, your ensorcelled minions long defeated.<br>
<br>
There is a sound coming from the next room as the door ahead swings open...
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
"@@.npc_technician;Striding through the doorway is the cloaked summoner. You catch the faintest whiff of brimstone as he is joined by a freshly conjured hulking demonic dire wolf. He prepares to cast a spell as his pet leaps forward to attack <<=setup.getNpcName('npc_rpg_warlock', 'first')>>.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_4' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: take action to aid the party in the barracks encounter
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<include rpg_choker_check>>
<<addItem "rpg_succubus_leash">>
<<wearItem "rpg_succubus_leash" true>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "rpg_succubus_collar">>
<<wearItem "rpg_succubus_collar" true>>
<<case 'worn'>>
<<set $scene.collared = "worn">>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $scene.collar true>>
<<addItem "rpg_succubus_collar">>
<<wearItem "rpg_succubus_collar" true>>
<</switch>>
<<else>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "bondage_collar">>
<<wearItem "bondage_collar" true>>
<<case 'worn'>>
<<set $scene.collared = "worn">>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $scene.collar true>>
<<addItem "bondage_collar">>
<<wearItem "bondage_collar" true>>
<</switch>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Preparing your most potent sleep spell, overloaded, you hold your breath and roll the dice as your character steps into the room and casts.<br>
<br>
The die bounces twice as the whole party holds their breath. All eyes are on the implement of fate as it rolls and rolls and comes to a rest — critical success! The room breaks out with a collective shout of excitement.<br>
<br>
"@@.npc_technician;Woo!@@" <<=setup.getNpcName('npc_technician', 'first')>> cheers, caught up in the moment before coughing and resuming her normal Dungeon Mistress demeanour. "@@.npc_technician;Alright, the foes in the room beyond barely have a chance to notice the door opening before your potent spell washes over them. Almost as one they slump to the ground, weapons slipping from their fingers as they crumple into deep slumber.@@"<br>
<br>
"@@.npc_rpg_warlock;Alright! That's how we do it, lets go ice that big bad!@@"<br>
<br>
"@@.npc_barista;Nice roll! Circumventing an estimated CR plus two encounter, that's good for at least 1187 XP, you're gonna ding tonight for sure!@@"<br>
<br>
<<printThought "Is she some sort of weird statistical savant? The contrast with her airheadedness is kind of weird...">><br>
<br>
Bypassing the comatose barracks, the party heads forth for the final boss battle, fresh and ready.
<<case "elf_priestess">>
ERROR: impossible, active option for priestess happens later!
<<case "bard">>
<<=setup.getNpcName('npc_rpg_dude', 'character')>> kicks down the door as you follow a half-step behind, the melody of your magical guitar sending waves of fear through the surprised monsters of the barracks as battle commences.<br>
<br>
Like a choreographed music video, sword and spell fly free. You roll like a <<getWordGod>>, stacking boosts with <<=setup.getNpcName('npc_barista', 'nickname')>> as your empowered allies strike fast and true and your foes struggle to fight back, disorganised and clumsy. It isn't more than a few rounds before the five of you stand victorious and you finish off with a triumphant riff to pump people up for the next encounter, none of you having sustained more than minimal damage in the one-sided fight.
<<case "druid">>
Shoulder to shoulder with <<=ps(setup.getNpcName('npc_rpg_dude', 'first'))>> comparatively diminutive undead warrior, you charge into the barracks, her shield and your hulking ursine form bowling through the first line of the enemy as spells fly past in either direction.<br>
<br>
In the thick of melee, your battle-rage has your hide shrugging off sword and axe with ease, each blow of your mighty paw smashing another monster as the party swiftly routs and destroys the forces arrayed against you.
<<case "succubus">>
Striding into the room with confidence, the monsters inside pause in shock to stare at your alluring and enticing demonic form. Activating your lust powers, you move to the middle of the room and make a roll for mass seduction.<br>
<br>
"@@.npc_technician;Success, let's see...@@" She checks a chart and makes a few rolls behind her screen before looking back up. "@@.npc_technician;Alright. All but a handful of the monsters in the barracks are under your thrall to one degree or another, what are you going to do now?@@"<br>
<br>
Activating one of your other powers, you start role-playing teasing your enraptured admirers, egging them on with a wink, a kiss, playing with your breasts and cunt lewdly as you ask who among them wishes to join your crew for a share of booty...<br>
<br>
It isn't long before the inspired lusts start to take a darker turn, the monsters arguing amongst themselves as they rush to be the first to sample your fruits.<br>
<br>
Lying back and spreading your legs, you are soon at the centre of a gang-bang, using your parasitic powers to drain your partners even as they are compelled to fuck you with every last ounce of their strength. Reveling in the sexual energy, your restraints glow as they struggle to hold you to the material plane.<br>
<br>
Any thought of taking advantage of this moment of strength to escape is ignored in favour of embracing the debauchery. Reaching out mentally, you sow chaos amongst those monsters who have not yet been subdued by your vampiric love-making. Soon they are drawing weapons, fighting with all they have for the right to be your next lover-victim.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> weaves a scene that has all five of you squirming in your seats, the culmination of which sees you standing triumphant, every occupant of the barracks either drained or dead at one another's hand as the rest of the party finally walks into the room.<br>
<br>
"@@.npc_rpg_warlock;Wow, I didn't realise you had that in you!@@" <<=setup.getNpcName('npc_rpg_warlock', 'first')>> remarks with a grin. You are uncertain if she is speaking in character or not. "@@.npc_rpg_warlock;Role-playing of that quality deserves a reward! Scooch on over here!@@"<br>
<br>
"@@.npc_barista;Yeah, that was like, so hot! But next time I wanna be part of it! Did you know that shibari technically counts as a bardic art?@@"<br>
<br>
Sliding off her <<boy npc_rpg_dude>>friend's lap onto the couch, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> motions for you to kneel in front of her. Heart pounding, you do as she commands.
<<if $scene.collared == "none">>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
She produces a leather dog collar from her purse.
<<else>>
She produces a leather collar from her purse, a collar that bears a striking resemblance to the one your character was wearing in the concept art you saw earlier.
<</if>>
Buckling it around your neck, she clips a leash to the ring at its front and then leans down to whisper in your ear.
<<elseif $scene.collared == "locked">>
"@@.npc_rpg_warlock;Already enslaved, are we? How lovely, well I hope your owner doesn't mind that I'm taking charge for a bit.@@"<br>
<br>
<<if $npc_technician.relationship>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> winks at <<=setup.getNpcName('npc_technician', 'first')>> who gives an approving nod in return.<br>
<br>
The subtle trade of your submissive self has you biting your lip and squirming with arousal.<br>
<br>
<</if>>
She clips a leash to the front of your collar then leans down to whisper in your ear.
<<else>>
Delicately removing your current collar she replaces it with
<<if $npc_technician.flags.rpg_campaign.session > 7>>
a leather collar that bears a striking resemblance to the one your character is illustrated as wearing.
<<else>>
a leather dog collar she has produced from her purse.
<</if>>
Buckling it around your neck she clips a leash to the ring at its front and then leans down to whisper in your ear.
<</if>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
"@@.npc_rpg_warlock;There, that should help you better get into character...@@"
<<else>>
"@@.npc_rpg_warlock;Not quite as nice as the one you're wearing in-game, but you more than earned it.@@"
<</if>>
She rubs a booted leg against your side as you kneel at her feet. The weight of the leash is a potent, seductive reminder of what sort of character you're "role playing", yet you feel like it is all in good fun, that even if things have taken a turn for the risque, you are safe and among friends, at no risk of anything save more harmless, sexy fun.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
Bolstered by success, the party moves forward, opening the door into the next room to reveal the summoner chanting over a large portal that reeks of brimstone.<br>
<br>
Turning in surprise at your rapid defeat of his minions, he lets out a final cry in some fel tongue, a great demonic dire wolf leaping from the portal to attack you and your compatriots. The portal collapses as the summoner readies another spell.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_4' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: defeat the evil summoner to finish first RPG session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num]>>
Facing your foe, you try to end the fight early with another sleep spell, but he has enough magic resistance to easily shrug it off.<br>
<br>
"@@.npc_technician;Come on, you didn't think it would be that easy, did you?@@"<br>
<br>
You shrug, it was worth a shot. Fortunately your efficient neutralization of the barracks has the rest of the party fresh and raring to go.<br>
<br>
With a berserker howl, <<=setup.getNpcName('npc_maid', 'character')>> leaps into the fray, spectral wings glowing in her trail in echo of her celestial heritage as she bounds over the hound swinging a weapon in each hand. She severs the summoner's arm with a single blow before rolling out and readying her next attack.<br>
<br>
Spells fly between the other casters as <<=setup.getNpcName('npc_rpg_dude', 'character')>> engages the demonic wolf head on. You cast fireballs where you can as <<=setup.getNpcName('npc_barista', 'character')>> bolsters your concentration with a bardic song. Before long the demon blinks away in a puff of fire, returning to its infernal home. Shortly later the summoner falls to the combined four person onslaught.<br>
<br>
Triumphant, the four of you quickly set to that most important of role-playing activities: checking for loot.
<<else>>
Already tired from the long fight, the party is quickly on the defensive. <<=setup.getNpcName('npc_rpg_dude', 'character')>> leaps into the path of the demonic hound, her undead durability pushed to the limit absorbing the impact.<br>
<br>
On the back foot you and <<=setup.getNpcName('npc_rpg_warlock', 'character')>> manage to drive the beast back long enough for <<=setup.getNpcName('npc_rpg_dude', 'character')>> to chug a potion and get back to her feet.<br>
<br>
Shrugging off spells thanks to some clutch bardic songs, <<=setup.getNpcName('npc_maid', 'character')>> goes full berserker, trailing spectral angelic wings as she smashes into the summoner, breaking his concentration with her first blow then following up with a second than cuts him in twain.<br>
<br>
With its master defeated the fel hound lets out a final evil howl before disappearing in a puff of smoke. The four of you almost collapse in exhaustion, taking time to recover and bandage your wounds before searching the area for loot.
<</if>>
<br><br>
With the big bad defeated, the slumbering minions in the barracks disappear, returned to the plane from whence they were summoned.<br>
<br>
Searching for loot, you find some gold, a few minor magical items and the McGuffin that the party had been tasked with retrieving. Doing a final pass through the barracks lest you missed anything of value, you stumble upon a hidden chest, <<=setup.getNpcName('npc_technician', 'first')>> flipping open a book to the loot table page and rolling before announcing what you've found.<br>
<br>
"@@.npc_technician;You find a broad leather belt. Well-made, but otherwise unremarkable in design, it bears the unmistakable imprint of magic.@@"<br>
<br>
You quickly look through your character sheet for an identification spell only for <<=setup.getNpcName('npc_rpg_warlock', 'character')>> to offer her assistance. Noting the roll, <<=setup.getNpcName('npc_technician', 'first')>> hands her a note. <<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles before passing along the information.<br>
<br>
"@@.npc_rpg_warlock;It's a somewhat specialized item, designed to make <<men>> swoon. I think you would make the best use of it.@@" She announced with an even wider smile.<br>
<br>
You're a bit curious at her cryptic phrasing, but quickly thank her. With your specialization in somniumic effects, you figure the bonus to spells would be welcome and announce that you are putting it on.<br>
<br>
The laughter that you suddenly realise your five friends had all been holding in, suddenly bursts forth. It takes almost a full minute before <<=setup.getNpcName('npc_technician', 'first')>> manages to compose herself enough to explain things.<br>
<br>
"@@.npc_technician;Alright. As you buckle the girdle around your waist, you feel a strange tingle go through your body. Transformative magic washes over you and the world appears to grow slightly larger. Your robes hang looser and your balance feeling subtly off by the time the feeling fades and you try to move.@@"<br>
<br>
<<printThought "Wait... what?">><br>
<br>
"@@.npc_technician;Examining yourself, you find your fingers are much more slender and delicate than you remember. Looking down, you make another startling realisation — though your body is still toned it is not quite as bulky as it was... and you appear to be sporting a large pair of breasts on top of what was previously just pectoral muscles.@@"<br>
<br>
With characteristic bluntness, <<=setup.getNpcName('npc_maid', 'first')>> cuts in. "@@.npc_maid;It was a girdle of masculinity/femininity, your character is female now.@@"<br>
<br>
"@@.npc_rpg_warlock;If only such transformation was so easily enacted in real life!@@"<br>
<br>
"@@.npc_technician;Hear, hear! Anyway, I swear this was a random result and not planned... I guess the fates just have a special liking for you, eh? Anyway your only stat changes are that your Appearance has gone up three points, so you now look a bit better than average, even in spite of your half-orc racial penalties. The effects remain after you remove the girdle which seems to have now lost all of its magic.@@"<br>
<br>
<<printThought "Even in a fantasy world it seems like I can't get away from this sort of thing...">>
<<if setup.getTotalValue("feminization") > 10>>
<br><br>
That thought plunges you into a world of your own imagination. What if it really was just that easy to flip genders? Certainly modern medical technology is potent, but it still isn't equal to pure magic turning you into a beautiful girl. You reflect on your journey to date; maybe the slow route was what you needed to accept who you were, but still... the idea of an instant transformation into feminine perfection is quite an enticing one...<br>
<br>
You realise you've kind of tuned out the game as you enjoyed your fantasy, trying to refocus on what's going on with the party.
<</if>>
<<case "elf_priestess">>
Even with you slinging every heal you have, the fight is a pitched one. More than once everything turns on a single roll of the dice with all five of your characters knocking on deaths door by the time you finally bring down the summoner and banish his fel hound. <<=setup.getNpcName('npc_maid', 'character')>>, in glorious full berserker form, lands the final blow, her axe striking swift and true with an extra bonus from <<=ps(setup.getNpcName('npc_barista', 'character'))>> bardic song to near chop the man in half.<br>
<br>
With the big bad defeated, the minions in the barracks disappear, their corpses returned to the plane from whence they were summoned.<br>
<br>
Searching for loot, you find some gold, a few minor magical items and the McGuffin that the party had been tasked with retrieving previously. Securing your gear, the party prepares to make the journey back up out of the dungeon and return to town.<br>
<br>
Out of spells, you look through your character sheet to see if there's anything else you could do to help the party. As beat up as you are, it'd be pretty risky to head back up through the dungeon lest there are any lurking monsters you missed, and setting up camp in the depths seems equally risky.<br>
<br>
You notice a ritual ability named FITH that lets you full heal and recover half of your spellslots all at once. Figuring that it's a typo and it's meant to say faith, you announce that you're going to enact the ritual.<br>
<br>
The entire group falls silent before <<=setup.getNpcName('npc_maid', 'first')>> coughs and gives an explanation to resolve your suddenly mounting confusion.<br>
<br>
"@@.npc_maid;So, um... you're a priestess of the divine three — FITH means Fucked In Three Holes. Using that ability more or less means enlisting the rest of the party to gang-bang you...@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> grins gleefully wide while looking almost... jealous? <<=setup.getNpcName('npc_rpg_warlock', 'first')>> just smiles and stares at you as her <<boy npc_rpg_dude>>friend shakes <<his npc_rpg_dude>> head in amusement.<br>
<br>
"@@.npc_technician;So... like, I guess I should have been a bit more up-front that our games can get a little, um, risque. If you want, we can just handwave and say you used your holy implements to take care of yourself, but then the rest of the party won't get the full-heal bonus that comes from participation in the ritual...@@"
<<case "bard">>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num]>>
Still riding high from the previous fight, the party roars into battle like they are performing an encore.<br>
<br>
Undead warrior clashing with demonic wolf, fel magics streaming between warlock and summoner as <<=setup.getNpcName('npc_maid', 'character')>> rages through the fight trailing the spectral wings of her celestial heritage; all with the backing accompaniment of your shredding guitar and <<=ps(setup.getNpcName('npc_barista', 'character'))>> lewd vocals would make for a helluva metal album cover were there an artist around to capture it.<br>
<br>
Beaten steadily back, <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_barista', 'character')>> pile up the hits, sword and axe and lightning striking the demon wolf repeatedly until it disappears in a cloud of fire and brimstone, tail tucked as it returns to the infernal realms.
<<else>>
Desperate to do something to help the party against these new enemies, and not wanting to put your beaten up character in melee range of the oversized demonic dire wolf, you flip through your character sheet to find a song of bolstering that you hope will help.<br>
<br>
The fight is a close one, <<=setup.getNpcName('npc_rpg_dude', 'character')>> getting rag-dolled across the room by the fel hound before <<=setup.getNpcName('npc_maid', 'character')>> manages to find an opening and bring down the summoner, her blow strengthened by <<=ps(setup.getNpcName('npc_barista', 'character'))>> bardic song.<br>
<br>
With its master defeated the wolf disappears in a cloud of brimstone and fire, returned to its infernal home to leave the party barely victorious.
<</if>>
<br><br>
Searching for loot, you find some gold, a few minor magical items and the McGuffin that the party had been tasked with retrieving from the dungeon. Securing your gear and patching your wounds, the party prepares to make the journey back up out of the dungeon and return to town.
<<case "druid">>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num]>>
You let out a roar and leap towards the demonic wolf. Slamming into each other, you tumble to the ground, a clawing biting ball of fur and fury.<br>
<br>
"@@.npc_technician;Alright, roll to control frenzy.@@"<br>
<br>
You grab a die and toss it across the table only for it to come up a two — not a crit fail, but as close as you can get.<br>
<br>
"@@.npc_technician;Okay, you're in the full throes of uncontrolled frenzy now. That means you get a bonus to strength and stamina and we check the "bestial action" table to see what you do.@@"<br>
<br>
You roll again and she checks the table.<br>
<br>
"@@.npc_technician;With your increased strength you quickly overpower the wolf, but just defeating it is far from your priority. Holding it down, you mount the creature, literally. Roaring in dominance your engorged ursine cock plunges into its hot lupine hole.@@"<br>
<br>
With the utter subjugation of his minion, the summoner is left to face the rest of the party four on one and it is a matter of a couple of turns before they succeed in beating down his remaining magical protection and dispatching him.<br>
<br>
With its master gone, the wolf disappears in a puff of fire and brimstone. You hump the air for a moment in frustration before the frenzy fades and you return to humanoid form.
<<else>>
<<=setup.getNpcName('npc_rpg_dude', 'character')>> manages to block the beast before it lays claw or teeth upon any of the squishier party members, but then all five of you are fighting for your lives.<br>
<br>
For your part you attempt to leap onto the creature's back, but are thrown off without managing to do more than scratch and anger it further and it leaps onto you in attack.<br>
<br>
In a battle frenzy of her own <<=setup.getNpcName('npc_maid', 'character')>> dashes past, distracting the beast with a run-by attack before leaping towards its master. Trailing spectral angelic wings behind her she crashes axes first into the summoner, the caster distracted by his magical duel with <<=setup.getNpcName('npc_rpg_warlock', 'character')>> leaving an opening for the barbarian to chop and hack at him, her blows guided by <<=ps(setup.getNpcName('npc_barista', 'character'))>> bardsong.<br>
<br>
On your last few HP the demonic wolf comes in for another bite only to disappear in a puff of fire and brimstone, banished back to its infernal home by the death of its master.<br>
<br>
Catching your breath, you lick your wounds as the rest of the depleted party regroups.
<</if>>
<br><br>
Searching for loot, you find some gold, a few minor magical items and the McGuffin that the party had been tasked with retrieving from the dungeon. Securing your gear, the party prepares to make the journey back up out of the dungeon and return to town.
<<case "succubus">>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num]>>
Thanks to your demonically lusty nature, your gangbang has you effectively turbo-charged, almost pulsing with power as you join the party in battle.<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'character')>> breaks off to engage the demonic wolf as the rest of you charge the summoner. With a wave of his hand, he attempts to dismiss you. The pull of the infernal realms tugs at you, but the magic of your bindings holds you securely to the mortal plane.<br>
<br>
With a roar of rage, <<=setup.getNpcName('npc_maid', 'character')>> leaps into action, almost hanging in the air as she trails spectral wings echoing her parentage before crashing into the summoner from above.<br>
<br>
His defences hold against her mighty blow, but it jars his concentration, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> following up with a spell of ennervation. Staggering slightly, he is unable to defend against the follow-up attack, beaten back by <<=ps(setup.getNpcName('npc_maid', 'character'))>> berserker onslaught as <<=ps(setup.getNpcName('npc_barista', 'character'))>> bardic song bolsters your saving throws against his spells.
<br>
A final blast of magical power hits the summoner and he crumples, his singed robe going limp as his dead body falls to the ground. Without its master to hold it to the plane, the demonic wolf lets out a final cry before disappearing in a burst of flame and brimstone.
<<else>>
<<=setup.getNpcName('npc_rpg_dude', 'character')>> manages to intercept the beast before it lays claw or teeth upon <<=setup.getNpcName('npc_rpg_warlock', 'character')>>, but then all five of you are fighting for your lives.<br>
<br>
Compelled to come to her defence by your magical bindings you act as a demonic shield for the summoner's spells as <<=setup.getNpcName('npc_rpg_warlock', 'character')>> fires back with magic of her own.<br>
<br>
Somewhat cloaked by a distracting bardic song from <<=setup.getNpcName('npc_barista', 'character')>>, <<=setup.getNpcName('npc_maid', 'character')>> exerts the full force of her barbaric rage ability in an epic leap attack that sees her sail through the air trailing spectral wings in echo of her heritage. Her power attack landing hard, fast and true she almost cuts the summoner in half, the evil mage crying out a final death rattle as he falls to the floor.<br>
<br>
With the summoner's defeat the demonic wolf lets out a final hair-raising howl before disappearing back to the infernal realms in a puff of smokey brimstone.<br>
<br>
"@@.npc_rpg_warlock;Not bad@@" notes <<=setup.getNpcName('npc_rpg_warlock', 'first')>>, patting your head, the leash swaying from your collar to remind you of your restraint.
<</if>>
<br><br>
The party starts to divvy up the loot — gold, some minor magical items and a McGuffin that the party had been tasked with retrieving when <<=setup.getNpcName('npc_rpg_warlock', 'first')>> smiles and fingers your leash. "@@.npc_rpg_warlock;I think you've gotten reward enough already, my pet, I'll be keeping your share.@@"
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.character == "elf_priestess">>
[<<moveTo 'event_rpg_campaign_session_1_5_priestess_active' 'Stay in character and ask the rest of the party to use your body that you might heal them.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_5_priestess_passive' "Doing something like that with relative strangers... even just in game seems a bit much." $scene.stepLength>>]
<<else>>
The party uneventfully travels back up out of the dungeon, making camp to end the session once you're at a safe distance.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_2' 'Continue.' 0>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_1_6' 'Finish the session.' $scene.stepLength>>]
<</if>>
<</if>>
</div>/*#
#desc: slut it up to heal the party at the end of the session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Blushing a little you "role play it out," offering the use of your body to your fellow characters.<br>
<br>
First to spread her legs to "help" with the spell is <<=setup.getNpcName('npc_rpg_dude', 'character')>>. You crawl between her thighs to lick her hot snatch, informed that, despite her undead nature she is quite "functional" downstairs.<br>
<br>
You part your robe to reveal your lower holes.<br>
<br>
Sliding underneath your body, <<=ps(setup.getNpcName('npc_rpg_warlock', 'character'))>> cock slides into your cunt, filling you with demonic warmth as her lips tease your full breasts.<br>
<br>
Your surprise at finding out that the sexy female warlock was "packing heat" is redoubled as <<=setup.getNpcName('npc_maid', 'character')>> slides a thick cock of her own into your waiting ass, all three of your holes in use sexually servicing your partymembers as the magic of the ritual swells.<br>
<br>
Enjoying the fun, <<=setup.getNpcName('npc_barista', 'character')>> jumps in with "mood music," singing a song both bawdy and inspiring that extols the wonder of being used in every hole at once as she switches off between shoving her delicate elvish cock down your throat then into <<=setup.getNpcName('npc_rpg_dude', 'character')>> and then back again until there is a whole web of cum, pussy juice and drool linking the three of you.<br>
<br>
Confirming your lusty debauchery in-game, you glance around the room, <<=setup.getNpcName('npc_rpg_warlock', 'first')>>
<<if $npc_rpg_warlock.flags.bottom_surgery>>
smiles at you and you remember how she was once "equipped" quite similar to her character... You blink and realise that
<<else>>
winks at you and shifts to display a tell-tale bulge between her legs as you realise that though four of you are quite feminine in appearance,
<</if>>
<<if $npc_rpg_warlock.flags.bottom_surgery && !$player.body_ref.penis>>
half the members of this little RPG troupe are packing broadswords.
<<elseif !$player.body_ref.penis>>
every member of this little RPG troupe, save <<=setup.getNpcName('npc_barista', 'nickname')>>, and, well... you, now, are in possession of penises.
<<elseif $npc_rpg_warlock.flags.bottom_surgery>>
every member of this little RPG troupe, save <<=setup.getNpcName('npc_barista', 'nickname')>>, and post-surgery <<=setup.getNpcName('npc_rpg_warlock', 'first')>>, are in possession of skirt-tenting schlongs, and in the case of <<=setup.getNpcName('npc_maid', 'first')>> and <<=setup.getNpcName('npc_technician', 'first')>> full two-handed broadswords.
<<else>>
every member of this little RPG troupe, save <<=setup.getNpcName('npc_barista', 'nickname')>>, is in possession of penises.
<</if>>
<br><br>
Glancing between your fellows, you find yourself laughing a bit at the fact that <<=setup.getNpcName('npc_rpg_dude', 'first')>><<if !$npc_rpg_dude.fem>>, the only male in real life was <<if (setup.getTotalValue("feminization") > 5) || ($player.sec_style.body.name != "")>>(prior to your joining the group) <</if>>also<<else>> is<</if>> playing the only conventionally female genitalia'd character in-game.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> reins in the little verbal fuck-fest you and the other players have going before anyone gets TOO hot and bothered in real life, informing you that your successful ritual has not only restored your spells, but fully healed and rejuvenated the whole party.<br>
<br>
"@@.npc_barista;Wow, that was like... so hot! I think my next character is totally going to be a priestess...@@"<br>
<br>
Healed and restored, the group confidently heads back up through the dungeon, having an uneventful trip as you make your way up, out and a short distance away to find a safe location to set camp for the night as the session draws to a close.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_2' 'Continue.' 0>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_1_6' 'Finish the session.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: don't slut it up to heal the party at the end of the session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Other than learning that the three "holy implements" listed in your inventory are a trio of enchanted dildos the act of performing your "ritual" is handwaved as your spells are restored and you spend some time healing the party back into fighting shape.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
Though it is handwaved in-game the thought of fucking yourself at once, of feeling not just two, but three cocks penetrating you... the fantasy has you shuddering in your seat, wishing you were your avatar, getting pounded and filled in every direction...<br>
<br>
Blinking to attention you realise that the session is continuing on without you and you try to re-focus on the game.<br>
<br>
<</if>>
With that out of the way the party uneventfully travels back up out of the dungeon, making camp to end the session once you're at a safe distance.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_2' 'Continue.' 0>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_1_6' 'Finish the session.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: finish first session and go home
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addRPGSessionTask">>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<if $scene.collared != "locked">>
<<removeItem "bondage_collar" true>>
<<deleteItem "bondage_collar">>
<</if>>
<<removeItem "rpg_succubus_leash" true>>
<<deleteItem "rpg_succubus_leash">>
<<useClothSetPop 'scene'>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> distributes XP and then it's time for everyone to start packing things up. They all thank <<=setup.getNpcName('npc_technician', 'first')>> for running the session and you for joining in.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> removes your <<if $scene.collared>>collar<<else>>leash<</if>> and plants a quick peck on your cheek.<br>
<br>
"@@.npc_rpg_warlock;Until next time! Oh, you just make the best <<if $fetish.sissy>>sissy <</if>>demon slave...@@"<br>
<br>
Your eyes flick towards her <<boy npc_rpg_dude>>friend, but <<=setup.getNpcName('npc_rpg_dude', 'first')>> appears merely amused without displaying the slightest hint of jealousy.<br>
<br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num]>>
"@@.npc_technician;Great job tonight, you really jumped in there and participated. I know it can be a bit intimidating.@@"<br>
<br>
"@@.npc_rpg_dude;Yeah, you really helped out and played your character well, I dunno if we would have won that last fight without your assistance.@@"<br>
<br>
The other players nod their assent and you blush at the compliments.
<<else>>
"@@.npc_technician;Not bad for a first game, I hope you had fun though I think you'd enjoy it even more if you were more involved.@@"<br>
<br>
"@@.npc_rpg_warlock;Yeah, we rolled up a pretty solid character for you, that final fight would have definitely been less fraught with you taking a more active role.@@"<br>
<br>
Despite the admonition it seems everyone enjoyed your company, more just concerned that you don't feel left out.
<</if>>
<br><br>
The others filing out of the room, you're the last to go, <<=setup.getNpcName('npc_technician', 'first')>> throwing her arms around you in a hug and making you promise that you'll be back for the following session.<br>
<br>
At the threshold you hesitate, a part of you wanting to stay, but you're too slow, already out the door and alone in the hallway as the lock softly clicks behind you.<br>
<br>
<<printThought "Maybe next time...">><br>
<br>
Feeling a bit tired as you realise just how late the game ran, you quickly head for the apartment elevator to return home.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 1200>>]
</div>/*#
#desc: arrive/start second campaign session (orcs)
#status: FINISHED 0.5.0.0
#*/
<<set $overrideEvents = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 1>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<include rpg_choker_check>>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "rpg_succubus_collar">>
<<wearItem "rpg_succubus_collar" true>>
<<case 'worn'>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $scene.collar true>>
<<addItem "rpg_succubus_collar">>
<<wearItem "rpg_succubus_collar" true>>
<</switch>>
<<addItem "rpg_succubus_leash">>
<<wearItem "rpg_succubus_leash" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if !$scene.fromSurgery>>
You arrive at her apartment to find half the party still yet to arrive.<br>
<br>
"@@.npc_technician;Come on in! Everyone else should be showin' up soon, <<=setup.getNpcName('npc_maid', 'first')>> is on closing shift and so we'll be starting a few minutes late.@@"<br>
<br>
<</if>>
"@@.npc_rpg_dude;So what'd you spend your XP on from the last session?@@"<br>
<br>
You confess that you hadn't actually remembered to allocate XP and <<he npc_rpg_dude>> motions you to come over to the couch where <<he npc_rpg_dude>> and <<=setup.getNpcName('npc_technician', 'first')>> give you advice on what would best improve your character.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
You've just finished up when <<=setup.getNpcName('npc_rpg_warlock', 'first')>> appears carrying a large bag.<br>
<br>
Sporting a smile that has you feeling more than a little nervous she heads straight towards you, dropping the bag next to her booted feet and then pulling an impressive leather collar out from it.<br>
<br>
"@@.npc_rpg_warlock;Time to get into character!@@" She says with a grin as you recognise that the collar looks nigh identical to the one depicted on your character portrait.<br>
<br>
<<if $scene.collared == 'none'>>
Large and thick it rests on your shoulders, feeling quite stout, but relatively comfortable
<<else>>
It fits over and around your current collar, thick, heavy leather resting on your shoulders for a quite severe look. It's fairly comfortable
<</if>>
and definitely makes you feel submissive, especially when she padlocks a matching leash to the front with a click.<br>
<br>
<<if $scene.collared == 'none'>>
"@@.npc_rpg_warlock;There we go, oh I don't know why you don't wear a collar all the time. It looks so natural and proper around your neck!@@"
<<else>>
"@@.npc_rpg_warlock;There we go, oh I'm so glad it fits, I can see why you normally wear a collar, your neck was meant for it, and this way is like, twice as good!@@"
<</if>>
<<else>>
You've just finished up when <<=setup.getNpcName('npc_rpg_warlock', 'first')>> appears carrying a bag.<br>
<br>
"@@.npc_rpg_warlock;Can't believe I forgot the snacks!@@" She notes with a chuckle, placing a bag of chips, and other munchies on the table.<br>
<br>
"@@.npc_barista;Yay, popsickles!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> shouts with glee, grabbing a long pink popsickle and practically deep-throating the thing.
<</if>>
<br><br>
A minute later the last of the group arrives, <<=setup.getNpcName('npc_maid', 'first')>> greeting everyone with a wave before flopping into her designated chair. From the look of things today was quite an exhausting shift.<br>
<br>
"@@.npc_technician;Alright, let's get started! When we cut last week you had defeated the summoner and were on your way back to return the jewel of power he had stolen from the king. Though you post watches nobody is disturbed during the night and you quickly break camp in the morning and head on your way.@@"<br>
<br>
"@@.npc_technician;Making your way to the road, you don't run into any other travellers — the predation of the summoner and his monsters having greatly depressed trade in the area. It is mid-afternoon when you are suddenly beset by a tribe of orcs!@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_1' 'Roll for initiative!' 1200>>]
</div>/*#
#desc: attacked by orcs
#status: FINISHED 0.5.0.0
#ignore_spell: tpk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You don't roll all that great on your initiative, the rest of the party going first as they enact what are obviously fairly practiced battle tactics. The dead and divine duo of <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> moving to the front as <<=setup.getNpcName('npc_rpg_warlock', 'character')>> and <<=setup.getNpcName('npc_barista', 'character')>> fall back to sling spells and songs.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You try for a sleep spell since a fireball at this range would cause friendly fire, but it turns out that the orcs have a racial bonus to their saves and you just can't seem to pierce it. Combined with your ineffectiveness, a few unlucky rolls soon have the party on the back foot, what was presumably a generic random encounter suddenly a real fight for survival.<br>
<br>
A particularly nimble orc manages to get past your front lines and, in an attempt to dodge, you end up getting knocked to the ground, your robe parting to reveal your feminine form.<br>
<br>
Making a couple quick rolls, <<=setup.getNpcName('npc_technician', 'first')>> announces that the orcish band has suddenly broken off, retreating just out of range as their leader steps forward.<br>
<br>
"@@.npc_technician;You are outmatched, travellers! But I will spare your lives, and your freedom, if yon lovely maiden would share, but a night in my tent!@@"<br>
<br>
"@@.npc_barista;By my calculations we've only got a 22.7% chance of avoiding a TPK and without some real hot dice there's a 48% chance someone could be rollin' up a new character tonight...@@"<br>
<br>
You're still a bit baffled where the ditz is getting her numbers, but from the look of concern on the rest of the groups faces you have a sinking feeling they're probably accurate.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' '"Sacrifice" yourself for the sake of the party.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Take this opportunity to unleash a fireball on the clustered orcs.' $scene.stepLength>>]
<<case "elf_priestess">>
Rather than commencing battle, the orcs stop just out of range as what looks to be their chieftain steps forward.<br>
<br>
"@@.npc_technician;We do not wish to fight, we ask only that your priestess joins us in prayer to bless our clan, for which we will grant you safe passage through our territory.@@"<br>
<br>
You can't help but think of the "ritual" you performed as you contemplate the otherwise simple request.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' 'Agree to "pray" with them.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Refuse their offer.' $scene.stepLength>>]
<<case "bard">>
You step forward to play a bardic song only for the orcs to start shouting in excitement.<br>
<br>
Making a sense motive check, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> points out that they don't seem to be hostile, <<=setup.getNpcName('npc_barista', 'character')>> chipping in after casting a bardic spell of tongues that they appear to be calling out your character's name.<br>
<br>
"@@.npc_technician;As you listen closely, you recognise their chant as a somewhat off-key version of one of your most famous songs. It appears that they're actually fans! They're shouting for you to come back to their camp to celebrate with a night of song and festivities.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' 'Agree to perform a concert for the orcs.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Inform your "fans" that you do not have time to spend the night.' $scene.stepLength>>]
<<case "druid">>
As the rest of the party engages the main orc force, you zero in on what looks to be their chief. You make your roll to "unleash the beast" as you shift into bear form, nailing a huge modifier to your toughness and power while barely succeeding on the "control" roll.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' 'Surrender to the beast for even more power and charge forward to try to take out their leader.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Play it safe and hold onto control as you stick with the party.' $scene.stepLength>>]
<<case "succubus">>
"@@.npc_rpg_warlock;Alright, their leader is hanging back a bit, you need to flank them and then mind control him to flee — the rest of them aren't liable to stick around if their chief turns coward.@@"<br>
<br>
Looking at the number of orcish miniatures on the other side of the board, separating from the party seems dangerous, but, on the other hand, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> seems like a pretty experienced player and you doubt she'd intentionally give you an order that would get you killed.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_2_active' 'Do as she says and split off from the group.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_2_2_passive' 'Refuse her order and stick with the party.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: do something "active" to defuse or defeat the situation with the orcs
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_ankle_cuffs">>
<<wearItem "rpg_succubus_ankle_cuffs" true>>
<</if>>
<<if $npc_technician.flags.rpg_campaign.character == "orc_mage" && setup.getTotalValue("penis") > 10>>
<<changeHorny 20>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You agree to the chieftain's demands. The orcs are suddenly all very friendly, inviting the party back to their camp for a big meal and celebration. You are seated in a place of honour beside the chieftain, who you learn is named "Tog, The Three Handed Club" (which is odd, given that <<hes>> wielding a zweihander). Raising a toast to extol your beauty <<he>> places a tiara on your head that magically has your hair growing out long and full and beautiful.<br>
<br>
The party takes advantage of the opportunity to rest and recuperate a bit. You aren't sure if it's just a bit of <<=ps(setup.getNpcName('npc_technician', 'first'))>> own dorky awkwardness or intentional characterization, but the chieftain's flirting is kind of cute, like something out of a cheesy high school anime.<br>
<br>
The rest of the party staying behind to enjoy the party there is a final cheer from the orcs as you "retire" to Tog's tent, carried easily in <<his>> arms.<br>
<br>
Placing you down on a surprisingly nice bed, <<he>> sheds <<his>> armour to reveal the REAL source of <<his>> nickname. <<His>> cock is huge as <<=setup.getNpcName('npc_technician', 'first')>> demonstrates helpfully by way of stacking up three empty pop cans on the table.<br>
<br>
"@@.npc_technician;It's about like this. It swells and rises once released from <<his>> clothing as you find yourself staring it down from your position on the bed. Naked before you, <<he>> is big and strong and muscled, the scars of innumerable battles giving <<him>> a savage beauty as <<he>> stalks forward with an eager, tusked grin.@@"<br>
<br>
You take a deep breath and confirm that you're still going to make good on your bargain, spreading your legs as <<he>> leans in for a kiss and then, surprisingly gently, claims your virginity with <<his>> mammoth member. Fortunately for your character, your half-orc blood gives you some additional durability as you take a hard, deep dicking that would have broken most human women.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
Though <<=setup.getNpcName('npc_technician', 'first')>> refrains from going TOO deep into detail you can't help but find yourself fantasising about orcish cock. The thought of being fucked like in game, of being pounded deep and stretched wide by such a strong <<if $options.fem>>orc woman<<else>>caricature of masculinity<</if>>. You shift in your seat, your arousal rocketing upwards as you are unable to think of being in the place of your character, a big, <<if $options.fem>>muscled<<else>>manly<</if>> orc looming over you, <<his>> wet cock plunging in and out of your body as you tremble and gasp and moan.<br>
<br>
Distracted by your fantasy you return your attention to reality as <<=setup.getNpcName('npc_technician', 'first')>> sums up the actions of the rest of the party and continues the adventure along.
<</if>>
Spending a passionate night together, the two of you drift to sleep without any need for your somniumic assistance. Rising in the morning, <<he>> helps you back into your robe, insisting you keep the tiara and parading you back out in front of <<his>> clan.<br>
<br>
While you enjoyed your night with the chief, the rest of the party has taken the opportunity to "relax" as well, <<=setup.getNpcName('npc_maid', 'character')>> smiling at a smaller orc who looks to be sitting a bit gingerly while <<=setup.getNpcName('npc_barista', 'character')>> cavorts boisterously at the centre of a small clique of orcs, kissing and stroking and teasing.<br>
<br>
After a hearty breakfast, it is time to get back on the road. Bidding the orcs goodbye you continue down the road, a short while later meeting a group of mounted knights.
<<case "elf_priestess">>
Agreeing to the orc's request you and the rest of the party are escorted back to the clan's encampment. Showered with praise, you are led to a central raised platform around which are arrayed the chief and a trio of veteran warriors.<br>
<br>
Led up onto the platform, that looks more and more like a bed as you approach, <<=setup.getNpcName('npc_technician', 'first')>> adopts a deeper voice to enact the chieftan's speech.<br>
<br>
"@@.npc_technician;I Tog, The Three Handed Club, give you the thanks of my clan and ask that you share your divine blessing with myself and my greatest warriors.@@"<br>
<br>
Knowing exactly what sort of "blessing" <<he>> has in mind, you ham it up a bit, describing how you crawl onto the platform and willingly offer your body to <<his>> entire clan, that all may share in the gifts of the divine three.<br>
<br>
There are a few whistles of approval from around the gaming table at your daring act as your character lays back, swiftly discovering the reason the zweihander wielding Tog got <<his>> nickname as <<he>> stretches even your blessed and expert hole. You moan, while in front you spread your mouth wide to accept the <<if $fetish.futanari>>futa <</if>>cock of the female warrior in front of you.<br>
<br>
One of the orc <<men>> steps up to your side and removes <<his>> codpiece to reveal not another cock, but a beautiful, juicy cunt.<br>
<br>
"@@.npc_technician;Fair's fair y'know!@@" she states as you announce that you will service the <<man>> by hand while you take it from both ends. You slender fingers prove insufficient and soon you are thrusting your full fist into <<him>>.<br>
<br>
Tog continues to fill you below as you gulp the first load down your throat. The rest of the clan has already organised by seniority and they begin filing in as <<=setup.getNpcName('npc_barista', 'character')>> gleefully announces that she'll be your "fluffer" to aid you in distributing your "blessing" to the entire clan.<br>
<br>
Thanks to your divine mandate, you become neither sore nor tired as you are gang-banged by the entire clan of orcs. The final, most junior warrior finishes in your ass as you slip forward onto your hands and knees. Leaking cum from every hole, you wobble to your feet to finish the ceremony, thanking the clan for their generous offering and promising divine blessing on them and their lands.<br>
<br>
It already being late, the party spends the night with the clan.<br>
<br>
Waking the next morning you find that the rest of the group has had a bit of fun as well. <<=setup.getNpcName('npc_maid', 'character')>> smiles at a smaller orc who looks to be sitting a bit gingerly while <<=setup.getNpcName('npc_barista', 'character')>> cavorts boisterously at the centre of a small clique of orcs, kissing and stroking and teasing.<br>
<br>
After a hearty breakfast, it is time to get back on the road. Bidding the orcs farewell, you continue down the road, a short while later meeting a group of mounted knights.
<<case "bard">>
Striking a pose and a chord that sounds across the battlefield, you triumphantly announce that you. will. play!<br>
<br>
The orcs cheer, raising you onto their shoulders as they escort you and the rest of the party back to their camp and quickly assemble a concert stage.<br>
<br>
With <<=setup.getNpcName('npc_barista', 'character')>> on backing vocals, you pump up the already raucous crowd as the physical dancing quickly descends into full-on orgy.<br>
<br>
Looking out from the stage as you continue to shred as you note the rest of the party "getting in on the fun." <br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> and <<=setup.getNpcName('npc_rpg_dude', 'character')>> have coupled off with a pair of orcs. <<=setup.getNpcName('npc_rpg_dude', 'character')>> lays on top of one of the orcs taking it in the rear while <<=setup.getNpcName('npc_rpg_warlock', 'character')>> avails herself of her <<if $npc_rpg_dude.fem>>girlfriend's<<else>>boy/girlfriend's<</if>> front hole, <<=ps(setup.getNpcName('npc_rpg_dude', 'character'))>> mouth eagerly licking the orcish cunt squatted over her face while that same orc makes out with <<=setup.getNpcName('npc_rpg_warlock', 'character')>>.<br>
<br>
<<=setup.getNpcName('npc_maid', 'character')>> has found herself a slender, almost bookish looking orc shaman, bending <<him>> over and plowing <<his>> ass, her cock glowing with celestial power as the orc moans and grunts with each stroke.<br>
<br>
Even (or is that, especially?) <<=setup.getNpcName('npc_barista', 'character')>> is getting in on the fun, inviting several orcs up onto the stage where she seems as eager to fuck as get fucked while somehow never missing a note of her performance.<br>
<br>
The boisterous concert running into the night, everyone eventually passes out where they are as you close with an erotic lullaby number, looking out across the sea of flesh cuddled together in every imaginable configuration.<br>
<br>
The following morning, everyone is a bit hung over, but happy, the orcs gifting you coin and gold before bidding you farewell.<br>
<br>
Continuing down the road around mid-morning, you meet up with a group of mounted knights.
<<case "druid">>
Sacrificing the slightest shred of control for a few more +'s in combat, you charge into battle with a roar. Barreling past <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>>, you knock orcs aside like bowling pins, crashing directly into their chief and knocking <<him>> to the ground.<br>
<br>
Letting out a dominant roar, you square off with the chief as the other orcs step back for the mano-a-bear-o clash of champions.<br>
<br>
<<He>> is strong, you are stronger. <<He>> is tough, but your magical hide is more stout than <<his>> armour. Ripping off <<his>> armour as you scarcely notice <<his>> sword blows, you slam <<him>> to the ground. Holding <<him>> down with both paws, you rear back for a primeval roar as you "finish" <<him>> by plunging your thick ursine cock into <<his>> exposed ass.<br>
<br>
Watching their champion's humiliation takes all the fight out of the orcs as they scatter and flee. Finishing off, you leave the ex-chieftain in a pile of dust and cum as you come down from your frenzied state and return to humanoid form.<br>
<br>
"@@.npc_maid;So, uh... you may have gone a leetle bit far with "optimising" that character...@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> shrugs innocently as the narrative continues, the party soon meeting up with a group of mounted knights coming from the other direction.
<<case "succubus">>
Nodding obediently, you split off from the party while the orcs charge forward.<br>
<br>
"@@.npc_rpg_warlock;Oh, one final thing!@@" She casts a spell in game to temporarily enchant your ankle bindings to enhance your stealth and speed before reaching into her bag in real life and producing a pair of matching leather cuffs.<br>
<br>
"@@.npc_rpg_warlock;Ta-da! Gimme those cute feet so I can get you outfitted.@@"<br>
<br>
As she buckles the cuffs in place, you notice that they are linked by a short chain, your restrained situation significantly increased as you sit at her feet, collared, leashed and hobbled.<br>
<br>
Back in game, you move swift and silent, unnoticed by your foes as you circle around until you are within range of the large orcish chieftain. Reaching out with your seductive powers, you pull <<his>> attention away and then hold it as you do an erotic dance, your siren-like activity drawing <<him>> away from <<his>> forces.<br>
<br>
Fearing that your friends might not last much longer, you throw everything you have into a command for <<him>> to recall <<his>> forces from the field. Around the table everyone holds their breath as the die rolls, and rolls and stops just on the edge of the table. All eyes are on <<=setup.getNpcName('npc_technician', 'first')>> as she adds up the modifiers and announces the result.<br>
<br>
"@@.npc_technician;You are successful. The orc barks out a command and <<he>> and the rest of <<his>> forces fall back, breaking into a sprint once they are out of melee.@@"<br>
<br>
Bruised and bloodied, <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> nod in thanks as <<=setup.getNpcName('npc_barista', 'character')>> announces that she found some loot.<br>
<br>
It isn't much, just a few coins and some rations, but it's better than nothing. The party patches up their wounds and continues on, grateful to meet a cadre of mounted knights a bit further up the road.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_3' 'Continue.' $scene.stepLength>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_2_3' "Finish up." 600>>]
<</if>>
</div>/*#
#desc: flee from orcs, rescued by knights
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_ankle_cuffs">>
<<wearItem "rpg_succubus_ankle_cuffs" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You unleash a fireball right into the centre of the clustered orcs. Casting a fistful of dice onto the table <<=setup.getNpcName('npc_barista', 'nickname')>> somehow instantly mentally sums and calls out the damage total.<br>
<br>
Despite the swing in momentum you're still outmatched and the party takes the opportunity to flee from battle before the smoke clears and the orcs can regroup.
<<case "elf_priestess">>
You refuse the request and the mood shifts in an instant, the orcs unsheath their weapon as their leader calls out in anger.<br>
<br>
"@@.npc_technician;If you will not give us your blessing, we will take it!@@"<br>
<br>
It isn't long into the fight when the party comes to the realisation that you're quite outmatched, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> throwing out covering fire as <<=setup.getNpcName('npc_barista', 'character')>> plays a song of swiftness and the party takes flight.
<<case "bard">>
You reject the orcs' request and they instantly turn hostile.<br>
<br>
"@@.npc_technician;The orcish leader calls out in anger. Raaaah! If will not play... then die!@@"<br>
<br>
The battle is pitched, but it isn't long into the fight when the party comes to the realisation that you're quite outmatched, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> throwing out covering fire as you and <<=setup.getNpcName('npc_barista', 'character')>> play a duet of swiftness and the party takes flight.
<<case "druid">>
Taking your place on the front line between the other melee the three of you form a stout bulwark between the attacking orcs and your squishier casters. Despite this the party doesn't seem to have enough raw output to stem the tide of the orcs and you steadily fall back before finally, with cover of a final darkness spell from <<=setup.getNpcName('npc_rpg_warlock', 'character')>> the group takes flight.
<<case "succubus">>
Ignoring the order you stick with the party as the fight commences. Unfortunately your seductive, swashbuckling skill-set is less suited to this sort of close quarters combat without room to manoeuvre and, combined with some poor rolls by the rest of the party it isn't long before you are forced to turn flight and flee.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
Fleeing at a dead run with the orcs on your heels it's looking a bit dicey when the literal cavalry comes charging up the road.<br>
<br>
Recognising the livery the party calls out a greeting — the knights hail from the Castle Lochemere where the quest first began. The orcs scatter as the knights wheel around and offer to escort you the rest of the way.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_rpg_warlock;Ah, ah, since you got cold feet earlier, well, I guess I just need to exert some more stringent control.@@" Reaching into her back in real life she produces a pair of matching leather cuffs.<br>
<br>
"@@.npc_rpg_warlock;Ta-da! Gimme those cute feet so I can get you equipped.@@"<br>
<br>
She buckles them in place and you notice that they are linked by a short chain, your restrained situation increased further as you sit at her feet, collared, leashed and hobbled.<br>
<br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_3' 'Continue.' $scene.stepLength>>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_2_3' "Finish up." 600>>]
<</if>>
</div>/*#
#desc: knights arrive to escort you back to the castle/end of session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
The knights from Castle Lochemere hail you in greeting, having been sent from whence the party originally set off on their quest. Happy for the escort, you mount up and literally ride into the sunset as the session wraps up.<br>
<br>
"@@.npc_technician;Well, that was fun — next week we'll be taking a bit of a break from combat for a more political session.@@"<br>
<br>
"@@.npc_maid;Here's hoping it goes better than that time in the court of Atlantis!@@"<br>
<br>
"@@.npc_rpg_dude;Hey, how was I to know about the prophecy? Beside, I wasn't the one who made a joke about "going down" while their entire civilization was sinking into the sea!@@"<br>
<br>
"@@.npc_barista;What? Who doesn't like going down?@@"<br>
<br>
You join in with the laughter, feeling a part of the group even if you weren't around for what was obviously a literally disastrous previous campaign.<br>
<br>
Quickly passing out XP, <<=setup.getNpcName('npc_technician', 'first')>> wraps things up as everyone sets about packing up their stuff.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
With a friendly smile <<=setup.getNpcName('npc_rpg_warlock', 'first')>> thanks you for playing along before removing your collar and cuffs.<br>
<br>
<</if>>
[<<moveTo 'event_rpg_post_session_2' "Finish up." 600>>]
</div>/*#
#desc: packing up/option to stay after the RPG session w/npc_technician
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addRPGSessionTask">>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<if $scene.collared != 'locked'>>
<<if !$npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[6]>>
<<removeItem "rpg_succubus_collar" true>>
<<deleteItem "rpg_succubus_collar">>
<</if>>
<</if>>
<<removeItem "rpg_succubus_leash" true>>
<<deleteItem "rpg_succubus_leash">>
<<removeItem "rpg_succubus_ankle_cuffs" true>>
<<deleteItem "rpg_succubus_ankle_cuffs">>
<<useClothSetPop 'scene'>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Everyone is saying their goodbyes and packing up when you notice that the evening of fun has left a fair bit more of a mess behind in terms of trash and the like than the first session.<br>
<br>
You're feeling pretty tired, but you bet <<=setup.getNpcName('npc_technician', 'first')>> would really appreciate the help.<br>
<br>
<<printThought "This would be a great opportunity to get some time alone with her...">><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to help cleanup." $scene.stepLength>>]<br>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
</div>/*#
#desc: start 3-7 campaign session
#status: FINISHED 0.5.0.0
#ignore_spell: d20
#*/
<<set $overrideEvents = false>>
<<if $npc_technician.flags.rpg_campaign.session == 2>>
<<initRoom>>
<<moveTo "event_rpg_campaign_session_2_0">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.initRPGSession>>
<<include 'initRPGSession'>>
<</if>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<include "rpg_choker_check">>
<<switch $scene.collared>>
<<case 'none'>>
<<addItem "rpg_succubus_collar">>
<<wearItem "rpg_succubus_collar" true>>
<<case 'worn'>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $scene.collar true>>
<<addItem "rpg_succubus_collar">>
<<wearItem "rpg_succubus_collar" true>>
<</switch>>
<<addItem "rpg_succubus_leash">>
<<wearItem "rpg_succubus_leash" true>>
<<addItem "rpg_succubus_ankle_cuffs">>
<<wearItem "rpg_succubus_ankle_cuffs" true>>
<<if $npc_technician.flags.rpg_campaign.session > 3>>
<<addItem "rpg_succubus_wrist_cuffs">>
<<wearItem "rpg_succubus_wrist_cuffs" true>>
<<if $npc_technician.flags.rpg_campaign.session > 4>>
<<addItem "rpg_succubus_demon_hood">>
<<wearItem "rpg_succubus_demon_hood" true>>
<<if $npc_technician.flags.rpg_campaign.session > 4>>
<<addItem "rpg_succubus_arm_bondage">>
<<wearItem "rpg_succubus_arm_bondage" true>>
<<if $npc_technician.flags.rpg_campaign.session > 6 && $npc_technician.flags.rpg_campaign.session_actions.current_session[5]>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && $scene.plug != "dice_anal_jumbo_plug">>
<<set $scene.lockedPlug = false>>
<<if $scene.plug != "">>
<<set $scene.lockedPlug = setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
<</if>>
<<if !$scene.lockedPlug>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<if $scene.plug != "dice_anal_jumbo_plug" && setup.getTotalValue("anal") > setup.getItemObj("dice_anal_plug").effect.anal.level>>
<<if $scene.plug == "dice_anal_plug">>
<<removeItem $scene.plug true>>
<</if>>
<<addItem "dice_anal_jumbo_plug">>
<<if !$scene.lockedPlug>>
<<wearItem "dice_anal_jumbo_plug" true>>
<</if>>
<<elseif $scene.plug != "dice_anal_jumbo_plug" && $scene.plug != "dice_anal_plug">>
<<addItem "dice_anal_plug">>
<<if !$scene.lockedPlug>>
<<wearItem "dice_anal_plug" true>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.flags.rpg_campaign.session == 5 && $npc_technician.flags.rpg_campaign.character == "succubus" || $npc_technician.flags.rpg_campaign.session == 5>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.preGameEvent>>
You take your usual seat and try to focus your mind back on the game...
<<else>>
<<if $npc_technician.relationship.relationship_stage > 0>>
You're the first to arrive, sharing a kiss with <<=setup.getNpcName('npc_technician', 'first')>> before taking your seat.<br>
<br>
"@@.npc_technician;So just a reminder, when it comes to the game, I'm the impartial Dungeon Mistress, so don't expect any special treatment for being snuggle buddies.@@"
<<else>>
You're the first to arrive, <<=setup.getNpcName('npc_technician', 'first')>> greeting you at the door and welcome you in.
<</if>>
<br><br>
The rest of the group trickles in, first <<=setup.getNpcName('npc_maid', 'first')>> then the couple of <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_rpg_dude', 'first')>>.
<</if>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
Making a beeline for you, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> drops her bag next to the couch and motions for you to kneel before her.<br>
<br>
"@@.npc_rpg_warlock;Time to get equipped!@@" She states with a grin as she starts pulling familiar restraints out of her bag.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 3>>
By the time <<=setup.getNpcName('npc_barista', 'nickname')>> arrives a couple minutes later, you're collared, leashed and hobble cuffed.<br>
<br>
"@@.npc_barista;You look pretty hot like that, though, personally, I don't like anything that interferes with me spreading my legs...@@"
<<case 4>>
By the time <<=setup.getNpcName('npc_barista', 'nickname')>> arrives a couple minutes later, you're collared, leashed, cuffed at the wrist and ankle and hobbled.<br>
<br>
"@@.npc_barista;You look pretty hot like that... even better if your wrist cuffs were functional instead of just adornments!@@"
<<case 5>>
Pulling the rubber hood over your head, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> follows up with cuffs, collar, leash and hobbles to have you sitting at her feet looking quite the demonic slave.<br>
<br>
"@@.npc_technician;Unfortunately, <<=setup.getNpcName('npc_barista', 'nickname')>> has another engagement tonight so we'll be proceeding without her.@@"
<<case 6>>
The rubber hood puts you in the "headspace" of your demonic alter ego, followed by the limb restraints that have your arms all, but useless, collared at the end of <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> leash.<br>
<br>
"@@.npc_rpg_warlock;Mmm, delightful, you're definitely my second favourite pet.@@"<br>
<br>
Reaching over to grab <<=ps(setup.getNpcName('npc_rpg_dude', 'first'))>> collar to pull <<him npc_rpg_dude>> in for a kiss to affirm who, exactly, ranks above you.
<<case 7>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> grins as she unpacks her bag of "goodies," swiftly equipping you with the familiar bondage set; leaving you cuffed, collared, hooded, leashed and restrained.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[5]>>
<<if $scene.lockedPlug>>
Noting your locked-in rear companion, she smiles and gives your rear a pat. "@@.npc_rpg_warlock;So securely prepared! Guess you will have to roll dice the normal way tonight!@@"
<<elseif setup.getTotalValue("anal") > setup.getItemObj("dice_anal_plug").effect.anal.level>>
She grins as she produces an even larger version of the D20 buttplug.<br>
<br>
"@@.npc_rpg_warlock;With how well you took the other one... I thought you could bring use a bit of "extra" luck. Come on, show me that sexy ass.@@"<br>
<br>
Bending over you moan as she slides it into place, the weighty girthyness impossible to ignore.
<<else>>
She grins as she produces another "D20 buttplug." You obediently bend over and let out a little gasp as she installs it in your rear hole.
<</if>>
<</if>>
<br><br>
Walking in the door, <<=setup.getNpcName('npc_barista', 'nickname')>> gushes about your appearance.<br>
<br>
"@@.npc_barista;Wow! You're like... making me horny just seeing you like that.@@"<br>
<br>
Groans loop the table at her terrible pun.<br>
<br>
"@@.npc_maid;What DOESN'T make you horny, exactly?@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> strains in thought for a moment before shrugging and taking her seat with her normal ditzy smile.
<<default>>
ERROR; unhandled session: <<=$npc_technician.flags.rpg_campaign.session>>
<</switch>>
<<else>>
<<if $npc_technician.flags.rpg_campaign.session == 5>>
<<if $scene.preGameEvent>>
Before you can start <<=setup.getNpcName('npc_barista', 'nickname')>> looks at her phone and excuses herself.<br>
<br>
"@@.npc_barista;Sorry, it's my manager, something hard came up and they, like, need me.@@"<br>
<br>
She curtsies and makes a swift exit.<br>
<br>
"@@.npc_technician;So that actually works out, given some of the plans for today's session, come on, let's get to it.@@"
<<else>>
"@@.npc_technician;Unfortunately, <<=setup.getNpcName('npc_barista', 'nickname')>> has another engagement tonight so we'll be proceeding without her.@@"
<</if>>
<<elseif $scene.preGameEvent>>
Everyone takes their place and you get ready to game.
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>> is the last to arrive, bouncing across the room before flopping onto her chair.
<</if>>
<</if>>
<br><br>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 3>>
[<<moveTo 'event_rpg_campaign_session_3_0' "Start the session." 60>>]
<<case 4>>
[<<moveTo 'event_rpg_campaign_session_4_0' "Start the session." 60>>]
<<case 5>>
[<<moveTo 'event_rpg_campaign_session_5_0' "Start the session." 60>>]
<<case 6>>
[<<moveTo 'event_rpg_campaign_session_6_0' "Start the session." 60>>]
<<case 7>>
[<<moveTo 'event_rpg_campaign_session_7_0' "Start the session." 60>>]
<<default>>
ERROR: unknown session: <<=$npc_technician.flags.rpg_campaign.session>>
<</switch>>
</div>/*#
#desc: start 3rd campaign session (castle intrigue)
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 2>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Okay, that's everyone, let's get started! When we left off last session, you were on your way to Castle Lochemere. With your armed escort, the journey proceeds without incident and you are brought straight to the throne room.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_1' "Continue." $scene.stepLength>>]
</div>/*#
#desc: meet regent, given quest
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_wrist_cuffs">>
<<wearItem "rpg_succubus_wrist_cuffs" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_technician;Though they are grateful for your assistance, there is some concern about allowing an infernal being in front of the regent. It is insisted that you wear a set of magical cuffs that will temporarily "de-power" you for the duration of your meeting.@@"<br>
<br>
"@@.npc_rpg_warlock;Oh! I've got just the thing!@@" Digging through her bag, she comes up with a pair of leather wrist cuffs that she quickly locks onto your arms. "@@.npc_rpg_warlock;Perfect! All secure now, let's head in!@@"
<</if>>
<br><br>
"@@.npc_technician;You are greeted by the worried regent. Quickly thanking you for defeating the summoner who had been menacing the area, the regent motions for the regal sorceress who is the court magician to accept the item you brought back from his lair.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "orc_mage">>
"@@.npc_technician;The court magician seems to avoid looking at you, an apparent dismissiveness that reminds you somewhat of traditionalists who don't believe it proper for a half-orc to study the arcane arts.@@"<br>
<br>
<</if>>
"@@.npc_technician;With old business out of the way, the regent continues on to explain the issue that now vexes him.@@"<br>
<br>
"@@.npc_technician;Some foul enchantment has befallen Princess Hedina, the kingdom's rightful heir. We have called in clerics and casters from far and wide but, though they all agree it is some manner of poison, none seem able to reverse the course of it and she grows weaker and weaker. Please, adventurers, if you know of anything that might help her...@@"<br>
<br>
The party agrees to do what they can and the regent dismisses you to first visit your room and clean off the grime of the road.<br>
<br>
Reconvening after you've cleaned up, the party discusses what you can do.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_2' "Make a plan." $scene.stepLength>>]
</div>/*#
#desc: presented with problem of poisoned royal daughter, choose action
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
If the affliction is magical in nature, perhaps you can help. It would be best to consult with the court magician though there is the matter of her strange behaviour earlier.<br>
<br>
Tracking her down while the rest of the party works their own angles, you try to talk to her only for the sorceress to seem to almost shut down, giving little more than monosyllabic answers, unwilling to even meet your gaze.<br>
<br>
<<printThought "Dammit, this isn't working and I'm sure she knows something...">><br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' "Confront her on her obvious bigotry." $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' 'Let the other players figure something out.' $scene.stepLength>>]
<<case "elf_priestess">>
Attention naturally falls upon you to attempt to heal the sickly royal.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' 'Suggest you perform a ritual with the girl and seek a divine miracle.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' "Say you can't do anything and leave it to the other players to figure something out." $scene.stepLength>>]
<<case "bard">>
Not having a proper healer in the party, you come at it from the other direction wondering if maybe you might track down the source of the poison.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' 'Suggest you put on a concert for the castle; drinks will loosen tongues and make getting to the bottom of things easier.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' 'Let the other players figure something out.' $scene.stepLength>>]
<<case "druid">>
All your skill points are in shape-shifting and combat rather than any sort of nature based healing powers so you're probably better focusing on finding the cause of the poisoning than making any attempt to cure it directly.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' "State that you're going to sneak around the castle in cat form to see if you can turn up any clues." $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' 'Let the other players figure something out.' $scene.stepLength>>]
<<case "succubus">>
With a sly grin, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> manipulates your newest bindings, leaving them in place, but disabling them so that your powers are no longer nullified.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_3_active' 'See what information you can seduce out of the castle dwellers.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_3_3_passive' 'Let the other players figure something out.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: investigate/deal with poisoning
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Confronting the sorceress, you start into a rant about how just because one of your parents was an orc doesn't mean you are any less worthy of practicing arcane magic and besides-<br>
<br>
"@@.npc_technician;You're just getting up to speed when she interrupts you with a gasp. Wide-eyed in horror, she shakes her head quickly before speaking. "No-no-no! It's nothing like that you see, I-, I-" The sudden shift from her previous brusqueness to apparent humiliated embarrassment has you quite confused as she stares at the floor and mumbles something.@@"<br>
<br>
You have to make a hearing roll to catch her word, fortunately your racial bonus is just enough to put you over.<br>
<br>
"@@.npc_technician;She says you're pretty.@@"<br>
<br>
It's your turn to be confused.<br>
<br>
"@@.npc_technician;When you first walked into the throne room... you were the most beautiful woman I'd ever seen! Your tusks, the colour of your skin... I'm sorry for earlier, but the fact that you're a mage as well... it was just too much... I'm sorry?@@"<br>
<br>
"@@.npc_technician;There's a heartbeat hesitation and then she throws herself at you, her smaller frame easily supported by your orcish strength. After the two of you compose yourselves, you are able to coordinate, figuring out that the princess' symptoms match those of a rare poison, Hapatra's venom which originates from a nearby nation.@@"
<<case "elf_priestess">>
<<=setup.getNpcName('npc_barista', 'character')>> volunteers to join you with the princess while the rest of the party goes searching for the cause of the woman's mysterious ailment.<br>
<br>
Entering the princess' bedchambers, you find her looking older than you expected. A full-formed adult woman her age raises the question of why she has not ascended to the throne. Putting that aside, she looks quite beautiful; somewhat pale, but still quite gorgeous. Approaching the bedside, you beseech the divine for aid in healing her, channeling a small amount of holy energy into her that revives her a little.<br>
<br>
"@@.npc_technician;Well, maybe more than a little — as you look down her body you notice that her blankets are suddenly tenting over her crotch. Pulling things aside reveals a perfectly proportion, VERY hard girlcock between her legs.@@"<br>
<br>
"@@.npc_barista;Oooh, yum!@@"<br>
<br>
Despite your compatriot's slutty comment, it IS the way of your church and you lean in to begin sucking her off as you continue to channel healing energy into her.<br>
<br>
Gasping in arousal at the touch of your lips, the princess starts to look a bit healthier. Crawling onto the bed, you ride her before finally giving <<=setup.getNpcName('npc_barista', 'character')>> permission to join in, the slutty bard helping sate the princess' sudden thirst with her own juicy cock as you work your hips and ride her through several orgasms, her health improving with each time she cums.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
With <<=ps(setup.getNpcName('npc_technician', 'first'))>> narration of the "ritual" fading into the background, you find yourself sinking into a quasi sub-space fantasy. Serving the Princess with your body, your fantasy turns from riding her cock to straddling <<=setup.getNpcName('npc_technician', 'first')>>, looking down at your <<if $npc_technician.relationship.relationship_stage >=1>>girlfriend<<else>>friend<</if>>, her expression a blissful smile as her hips rise up into you, <<if $player.body_ref.penis>>your own <<getWordMyPenis>><<else>>everything else<</if>> forgotten as you delight in being penetrated, her hands squeezing your hips as you moan and grope yourself.<br>
<br>
Caught up in your fantasy, you barely stop yourself from rubbing yourself in real life, stifling a gasp as you re-focus on the game at hand, hoping that nobody noticed your distraction, though the slight smile on <<=ps(setup.getNpcName('npc_technician', 'first'))>> has you unsure.
<</if>>
When the ritual is finally completed, you are able to speak with the newly healed princess and learn that the last thing the princess did before falling ill was share a meal with the new ambassador from Khmet.
<<case "bard">>
Though the regent isn't enthused at the idea of hosting a celebration whilst the princess is ill, the party finally manages to convince him of the potential benefits.<br>
<br>
You take the stage with <<=setup.getNpcName('npc_barista', 'character')>> singing backup, reigning it in so as to "merely" encourage some reduced inhibitions without going so far as to induce a full-on orgy.<br>
<br>
The rest of the party works the crowd to learn that the ambassador from the Kingdom of Khmet had arrived only shortly before the princess first became ill. With the castle occupied and entertained, the party is able to sneak away to the ambassador's quarters, returning with a vial of Hapatra's venom a poison that, after dragging the slightly tipsy court magician out of the party, you confirm matches the symptoms of the princess' ailment.
<<case "druid">>
Shifting into a shadow cat, you skulk through the castle, your semi-ephemeral form able to slip through cracks and creep along walls and ceilings as you attempt to discover the castle's secrets.<br>
<br>
Failing to find anything related to the princess, it is when you move higher up the royal tower towards the royal residence that you find something of another sort of interest.<br>
<br>
Just below the royal chamber you find a harem... a harem filled with catgirls.<br>
<br>
"@@.npc_technician;I'm uh... going to need you to make a self control roll here.@@"<br>
<br>
Grabbing the dice, you wince at the huge negative modifier you apparently have for this sort of thing.<br>
<br>
"@@.npc_maid;Don't worry, you've got, like... a 15% chance of success!@@"<br>
<br>
Casting the dice, you look down at what would normally be considered a decent roll, but in this case...<br>
<br>
"@@.npc_technician;Yeah... so... it's about to go full hentai for you... have fun!@@"<br>
<br>
<<if setup.getTotalValue("bestiality") > 15>>
Though <<=setup.getNpcName('npc_technician', 'first')>> keeps things "professional" by not going into further details that does nothing to stop your own depraved imagination. You aren't sure what excites you more, the thought of plunging your barbed, yet still pleasure-giving, feline cock into catgirl after catgirl... or the idea of being a catgirl yourself, mounted and bred by a primal, powerful great cat.
<</if>>
While you enjoy your shadow cat on catgirl orgy, the rest of the party (including a jealous <<=setup.getNpcName('npc_barista', 'nickname')>>) does some ACTUAL investigation, sussing out that the princess' illness started shortly after a new ambassador from the kingdom of Khmet arrived at the castle. A search of the ambassador's quarters turns up a half filled vial of Hapatra's venom; an exotic poison that the court magician confirms matches the symptoms of the princess' ailment.
<<case "succubus">>
Wandering through the castle, you let your passive aura work its magic, flirting with guards and servants to learn that while the princess was generally well-liked, she had a stalkeresque paramour. Tracking <<him>> down, you turn your powers on full blast. After you've finished fucking <<his>> brains out, you learn that <<he>> attempted to administer a "love potion" on the princess that <<he>> procured from the recently arrived ambassador from the kingdom of Khmet.
<<if setup.getTotalValue("whoring") > 10>>
<br><br>
Though the in-game summary of your actions is brief, you find the recap triggering some real life memories of your side-gig as a prostitute. You imagine what it would be like to be a literal courtly courtesan, secretly serving the depraved urges of royalty, showered with wealth to "hush up" your latest session of acting out yet another perverted fantasy, even though you would gladly indulge their every depravity —
<<if setup.getTotalValue("cum") >= 10>>guzzling cum, <</if>>
<<if setup.getTotalValue("piss") >= 10>>bathing in their piss, <</if>>
<<if setup.getTotalValue("bdsm") >= 10>>lashed by their whips, <</if>>
<<if setup.getTotalValue("foot") >= 10>>worshipping at their feet, <</if>>
<<if setup.getTotalValue("bondage") >= 10>>helplessly bound for days at a time, <</if>>
<<if setup.getTotalValue("submission") >= 10>>submitting to their every whim, <</if>>
<<if setup.getTotalValue("bestiality") >= 10>>
even offering yourself up to the royal hounds, the prince's prized stallion <<if setup.getTotalValue("bestiality") > 15>>and every beast in the king's menagerie,<</if>>
<</if>>
every orgiastic delight as much a dream come true for yourself as for your "client." <br>
<br>
"@@.npc_maid;Hey, <<=$player.first_name>>!@@" <<=setup.getNpcName('npc_maid', 'first')>> calls out, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> giving a tug on your leash to further bring you back to reality.<br>
<br>
"@@.npc_rpg_warlock;Tsk, tsk, I know things are a bit exciting, but you mustn't get distracted.@@" She states as you blush and focus back on the game.
<</if>>
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_3_4' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: wallflower your way through the session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Failing to get an answer out of the sorceress you leave to catch up with the rest of the party.
<<case "elf_priestess">>
Convinced to visit the princess, who looks more than of age as a woman making it quite puzzling why she would have not ascended the throne, you try conventional healing spells to no avail, only to hear the princess trying to speak. Leaning close she whispers the word "ambassador." Leaving her in the care of her servants you head off to bring this cryptic clue to the rest of the party.
<<case "bard" "druid" "succubus">>
Not really speaking up much, you follow along with the rest of the party as they investigate the origins of the princess' ailment.<br>
<br>
After getting sidetracked by one of the princess' previous paramours, you end up zeroing in on the recently arrived ambassador from the kingdom of Khmet. A secret search of his quarters turns up a vial of Hapatra's venom; an exotic poison whose effects match the princess' symptoms.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_3_4' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: finish up session, giving followup mission
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Regrouping with the rest of the party, you're able to put things together — the symptoms coinciding with the arrival of the ambassador from Khmet you find a half-empty vial in their quarters. Working together with the sorceress you brew up an antidote while the rest of the party helps arrests the implicated ambassador.<br>
<br>
Still somewhat bashful around you the court magician tries to make things up to you with a gift — special enchanted stockings that enhance your concentration and lower enemy spell resistance.<br>
<br>
<<printThought "Stockings... am I doing a slow in-game magical girl transformation? Oh well, the stats are too good to pass up...">>
<<case "elf_priestess">>
Reconvening with the rest of the party, you bring your combined evidence to the regent who quickly sends the royal guard to arrest the implicated ambassador from Khmet. A half-empty vial of Hapatra's venom is found in their quarters and the court magician uses it to brew an antidote that has the princess up and about for the first time since her ailment began.
<<case "bard">>
The court magician uses the remaining poison to fabricate an antidote, the princess almost immediately looking better once it has been administered.
<<case "druid">>
Eventually exhausting your newfound catgirl friends, you slink back to the party, joining them in hominid form as you present your case to the regent, helping arrest the implicated ambassador and watching as an antidote concocted from the remaining poison is used to revive the royal heir.
<<case "succubus">>
Synching up with the rest of the party, they, too, have found clues pointing towards the ambassador. Searching his room, you find a mysterious vial that your demonic senses immediately confirm is no love potion.<br>
<br>
Bringing the sample to the court magician, she appears a bit leery of you, but confirms that not only is it an exotic poison, Hapatra's venom, but the effects would almost perfectly match the princess' symptoms. She uses the remaining poison to brew up an antidote while you assist the royal guards in arresting the implicated ambassador.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.character != "elf_priestess">>
The regent thanks you profusely for saving the princess. Bejewelled in royal finery, Princess Hedina appears to great fanfare looking much older than you expected, a fully of age woman to the point that it seems puzzling why she has not yet ascended the throne. She sits silently with a neutral expression in witness of the regent declaring war against the Kingdom of Khmet before retiring to continue her recovery.<br>
<br>
<</if>>
"@@.npc_technician;Showering you with gold in thanks for saving the princess, the regent assigns you as "neutral parties" to escort the incriminated ambassador back home while he begins mustering his forces for the coming war.@@"<br>
<br>
Cutting the session there, the five of you spend time doing a bit of shopping as you spend your new fortune on upgrades and magic items in anticipation of what looks to be a rapidly forming war.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_rpg_warlock;Great job again. Oh, I just love seeing you restrained! Alas, it is time to go so lemme let you out.@@"<br>
<br>
She removes your restraints with a wink as her <<boy npc_rpg_dude>>friend packs up the rest of their things.<br>
<br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_4' 'Continue.' $scene.stepLength>>]
<<else>>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: packing up/option to stay after the RPG session w/npc_technician
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$currentTasks.hasOwnProperty('technician_roleplay_surgery') || $currentTasks.technician_roleplay_surgery.finished>>
<<include "addRPGSessionTask">>
<</if>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus" && $npc_technician.flags.rpg_campaign.cur_campaign_id == 'fantasy' && !($npc_barista.stage >= 5 && $npc_barista.stage < 10)>>
<<include remove_succubus_items>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if !$workEvents.hasOwnProperty("event_technician_key_request") && $npc_technician.flags.rpg_campaign.session != 5 && $npc_technician.flags.evil == 2 && State.hasPlayed("event_psychiatrist_cure_7") && !State.hasPlayed("event_barista_ceo_intro_1")>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_barista")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $workEvents.hasOwnProperty("event_technician_key_request")>>
Your friends clear out until it's down to just you and <<=setup.getNpcName('npc_technician', 'first')>>. After some quick cleaning up she turns to you with a serious expression on her face.<br>
<br>
"@@.npc_technician;So... Monday.@@"<br>
<br>
[<<moveTo 'event_technician_discuss_keyholder_1' "See what she has to say." 180>>]
<<elseif $npc_technician.flags.rpg_campaign.session == 5>>
<<if $npc_technician.relationship.relationship_stage > 0 && $scene.getCaged>>
You close the door for the final guest and turn to find <<=setup.getNpcName('npc_technician', 'first')>> looking back at you with a grin.<br>
<br>
[<<moveTo 'event_technician_chastity_session' "Have some fun." 600>>]
<<else>>
<<=setup.getNpcName('npc_maid', 'first')>> taunts a bit before returning <<=ps(setup.getNpcName('npc_technician', 'first'))>> key as the cute tech wizard bites her lip in anticipation, quickly shooing you all out of her apartment.<br>
<br>
<<printThought "Damn, I wish I could have stuck around...">><br>
<br>
[<<moveTo 'room_foyer' "Head home." 600>>]
<</if>>
<<else>>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num]>>
The rest of the group all congratulates you on your active role in the latest session.<br>
<br>
<<switch random(0,3)>>
<<case 0>>
"@@.npc_maid;Yeah, great job, you really pulled your weight tonight!@@"
<<case 1>>
"@@.npc_rpg_dude;Solid job, you really helped the party out.@@"
<<case 2>>
"@@.npc_rpg_warlock;You were great tonight, good job!@@"
<<case 3>>
<<if $npc_technician.flags.rpg_campaign.session != 5>>
"@@.npc_barista;You were like, so awesome tonight, woo!@@"
<<else>>
"@@.npc_maid;Yeah, great job, you really pulled your weight tonight!@@"
<</if>>
<<default>>
ERROR: bad random
<</switch>>
<<elseif $scene.sessionId == 'fantasy'>>
They all thank you for coming, though you feel a bit guilty about how minimally you contributed.<br>
<br>
<<switch random(0,3)>>
<<case 0>>
"@@.npc_maid;Buck up a bit and maybe try to be a bit more active next game.@@"
<<case 1>>
"@@.npc_rpg_dude;I know it can be a bit intimidating, but you should try to assume a more active role, it's more fun that way, for everyone!@@"
<<case 2>>
"@@.npc_rpg_warlock;You were so shy tonight! You need to come out of your shell and be more daring!@@"
<<case 3>>
<<if $npc_technician.flags.rpg_campaign.session != 5>>
"@@.npc_barista;Like, you totally need to do more during game, you're so cute and your character is so fun, you need to get in there!@@"
<<else>>
"@@.npc_maid;Buck up a bit and maybe try to be a bit more active next game.@@"
<</if>>
<<default>>
ERROR: bad random
<</switch>>
<<else>>
Another successful session in the books, you spend a few minutes reminiscing about highlights as everyone prepares to leave.
<</if>>
<br><br>
[<<moveTo 'event_rpg_post_mux' "Continue." 0>>]
<</if>>
</div>/*#
#desc: arrive/start 4th campaign session (race to negotiate peace treaty)
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 3>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Riding the fastest horses available, you race towards the Kingdom of Khmet. Though the ambassador's guilt is lacking all but a confession, you gallop towards the border in hopes that he was a mere rogue element and full scale war may yet be avoided.@@"<br>
<br>
"@@.npc_technician;The weather turns hotter as you approach the desert kingdom of Khmet, it taking a full two days of hard riding to reach the border where you are greeted by a sizable force. It would appear word of the regent's mobilization has preceded you and you find yourself being tensely escorted towards a meeting with the general who acts as defender and administrator for the border region.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_4_1' "Continue." 0>>]
</div>/*#
#desc: failed race to prevent war
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;The meeting with the general is a tense one. You lay out the evidence gathered against their ambassador, but she claims to wish only peace between the kingdoms, that her marshalling forces are only to defend their lands against the forces gathering across the border.@@"<br>
<br>
"@@.npc_technician;Excusing herself to magically communicate with the Pharaoh and her other superiors, she leaves you to wait nervously in the heart of her fortress.@@"<br>
<br>
"@@.npc_maid;This stink of a setup to anyone else?@@"<br>
<br>
"@@.npc_barista;Yeah, like, I calculate a 37% chance that she's going to betray us, and a 72% chance that this whole war has been concocted for nefarious reasons.@@"<br>
<br>
<<printThought "How does she have such precise numbers for such subjective story notes?">><br>
<br>
Even if you still find <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> spouting probabilities a bit jarring, you've also learned that she's savant-like in her accuracy.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_4_2' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: option to fight back against being captured
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_demon_hood">>
<<wearItem "rpg_succubus_demon_hood" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;The general returns trailed by several guards and you immediately sense something is wrong.@@"<br>
<br>
"@@.npc_technician;By the power invested in me by our divine ruler, Pharaoh Kyassia, I place you under arrest for your part in the conspiracy against our ambassador and bringing us towards war.@@"<br>
<br>
The party starts rolling for initiative as you consider what you're going to do.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Attempt to put the guards to sleep so that you might make your escape.' $scene.stepLength>>]<br>
<<case "elf_priestess">>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Prepare to heal the party while pleading for a less combative solution.' $scene.stepLength>>]<br>
<<case "bard">>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Whip out your axe and get ready to rock.' $scene.stepLength>>]<br>
<<case "druid">>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Shift into your battle form to better resist arrest.' $scene.stepLength>>]<br>
<<case "succubus">>
Making a quick pre-combat roll, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> announces that she is unleashing your full demonic form for the battle ahead, producing from her bag a latex hood that she pulls over your face.<br>
<br>
Tightly covering you save for eyes and mouth, the hood is finished off with a pair of inflatable horns. A quick (well, accounting for your hobbled gait) trip to the bathroom to check yourself in the mirror confirming that you are looking quite devilish indeed.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_4_3_active' 'Show your would-be captors the power of all nine hells.' $scene.stepLength>>]<br>
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
[<<moveTo 'event_rpg_campaign_session_4_3_passive' 'Surrender and go quietly.' $scene.stepLength>>]
</div>/*#
#desc: fight back against capture
#status: FINISHED 0.5.0.0
#ignore_spell: aaaanyway
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_arm_bondage">>
<<wearItem "rpg_succubus_arm_bondage" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Your initial cast manages to send a handful of guards into slumber, but more continue to stream in through the door.<br>
<br>
The battle is long and hard-fought but, steadily, the party is pushed back, systematically isolated and brought down. The general taking on both <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> at once, the other guards stream past towards you and your fellow casters.<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> is the first to fall unconscious, but the loss of her bardsong is a snowball effect as <<=setup.getNpcName('npc_rpg_warlock', 'character')>> is unable to maintain her channelled spells without the boost to concentration, brought low shortly after.<br>
<br>
Your own capture happens after your robes are almost shredded by the guards' sharp khopeshes, leaving you dressed in naught but your stockings and skimpy, barely "decent" rags as the remaining two partymembers are surrounded and forced to surrender.<br>
<br>
Clapped in irons, you are all taken into custody and escorted down into the dungeon.
<<case "elf_priestess">>
Standing back with the other casters, you pump heals into <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> as they try to hold back the enemy forces. Unfortunately the general alone seems nearly a match for the warrior/barbarian team and some of the guards start to circle around to start flanking you and the other squishies.<br>
<br>
With all five of you now taking damage, you start falling behind, finally resorting to declaring that you're going to overload your biggest heal in a last-ditch attempt to pull the party through.<br>
<br>
Rolling a critical success for power, your luck swings the opposite direction as the die comes up critical fail on the control roll.<br>
<br>
"@@.npc_rpg_dude;Wow, what are the odds?@@"<br>
<br>
"@@.npc_barista;A quarter of a percent, like, duh!@@"<br>
<br>
"@@.npc_technician;Aaaanyway, you can feel the energy sparking inside of you as you prepare the spell, the burning heat of your devotion to your deity coursing through you as powerful as you've ever felt. Unfortunately it turns out to be a bit too much power and you cry out in intense orgasm, unleashing a wave of lust that floods the room. As you writhe on the ground in chain orgasm, the sympathetic connection between you and the rest of the party causes them to be effected almost as badly, the scattered guards who manage their saving throws easily restraining the lot of you by the time your overloaded spell fades.@@"<br>
<br>
Wincing, you apologise to the group for your screw-up, but they take it in stride.<br>
<br>
"@@.npc_maid;To tell the truth, I think this was one of those "railroaded into prison" scenes anyway.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> glares at <<=setup.getNpcName('npc_maid', 'first')>> before continuing with the narration of the chained party being escorted down into the dungeon.
<<case "bard">>
The party fights their best, but you're outnumbered and cornered and one by one your fellow adventurers are knocked unconscious.<br>
<br>
With the lowest HP and armour, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> is the first to fall, her defeat sending <<=setup.getNpcName('npc_maid', 'character')>> into turbo-berserk mode that, though it has her pushing the general back, eventually has her burn out and faint.<br>
<br>
Down to three, <<=setup.getNpcName('npc_barista', 'character')>> sings her heart out, but is felled soon after, and then it is <<=ps(setup.getNpcName('npc_rpg_dude', 'character'))>> turn, the seemingly indestructible warrior finally running out of HP. Despite it all, you remain standing, your dice on an ungodly hot streak as you dodge and weave and continue to fight back.<br>
<br>
The whole party is rallying behind you as you manage to pull off another unlikely manoeuvre, <<=setup.getNpcName('npc_barista', 'first')>> excitedly shouting out the mind-boggling low chance of your chain to date.<br>
<br>
Looking a little annoyed, <<=setup.getNpcName('npc_technician', 'first')>> announces a fresh wave of caster's arriving to support the rapidly depleting guard forces. Still, you triumph, rolling a near-perfect save that, combined with your rolling "showstopper" bard performance bonus has you dancing away from the magical tendrils as you stage-dive roll away from the general's swinging blade.<br>
<br>
On the edge of your seat as you use your musical powers to disrupt the casters, <<=setup.getNpcName('npc_technician', 'first')>> finally throws in the towel and declares that the Pharaoh's elite DEAF eunuch guards appear, their nigh immunity to your abilities finally sufficient to see you cornered and captured.<br>
<br>
Stripped of your axe and chained up with the rest of the party, you are escorted down to the dungeon.
<<case "druid">>
You shift into battle form and let out a roar. Knocking guards aside left and right, you and <<=setup.getNpcName('npc_rpg_dude', 'character')>> start clearing a path towards the exit so that the party can flee.<br>
<br>
With <<=setup.getNpcName('npc_maid', 'first')>> manages to occupy the general while the rest of the party sings and casts support spells, you're making good progress until an enemy caster appears and summons a lady bear. A very SEXY lady bear.<br>
<br>
"@@.npc_technician;I'll be needing a self control roll.@@"<br>
<br>
You silently swear, "self control" isn't exactly how this character was built, more... the exact opposite.<br>
<br>
As expected, you fail the roll, hard. Your animalistic lusts take over as you ditch the battle to enthusiastically mount the she-bear. The party's fortunes swiftly reverse as you fuck on obliviously. You do not come down from your sexual frenzy until the party has been captured. Post-orgasmically spent, you are chained as well, too exhausted to do anything save meekly following along on the way down to the dungeon.
<<case "succubus">>
You're a bit wide-eyed at the bonuses you've got from having your full infernal powers "unleashed" and you quickly put your abilities to work, your lusty powers turning many of the enemy guards to your side as what might have been a one-sided slaughter turns into a pitched free-for all as the party attempts to battle through the melee of guards attempting to capture you and others willing to die to gain your favour.<br>
<br>
Things are going swimmingly as you revel in your power until a robed nun appears. With a borderline orgasmic cry she summons forth an angelic being, its heavenly beauty the equal to your own, its light burning you and shaking your control over your minions.<br>
<br>
<<=setup.getNpcName('npc_maid', 'character')>> tries to leap to your defence, but she is cast aside with ease by her pure-blooded better, the combination of the highly skilled General, the angelic being and the hordes of guards soon proving too much for the party. Soon you are all chained, bound and escorted down to the dungeon.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
You recall the "chastity fun" that's about to happen...<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_rpg_campaign_rerun_5' "You um... planned ahead?" $scene.stepLength "<<set $scene.getCaged=true>>">>]
<<else>>
[<<moveTo 'event_rpg_campaign_rerun_5' "Join in on the chastity fun." $scene.stepLength "<<set $scene.getCaged=true>>">>]<br>
[<<moveTo 'event_rpg_campaign_rerun_5' "You aren't in the mood for chastity." $scene.stepLength "<<set $scene.getCaged=false>>">>]
<</if>>
<<else>>
[<<moveTo 'event_rpg_campaign_session_4_4' 'Continue.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: surrender to capture
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_arm_bondage">>
<<wearItem "rpg_succubus_arm_bondage" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Without your help the battle is a one-sided rout, the swarming guards swiftly overpowering the rest of the party. Despite your cooperation, which the General thanks you for, you are still put in chains along with the party as the lot of you are escorted down the dungeon.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
You recall the "chastity fun" that's about to happen...<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_rpg_campaign_rerun_5' "You um... planned ahead?" $scene.stepLength "<<set $scene.getCaged=true>>">>]
<<else>>
[<<moveTo 'event_rpg_campaign_rerun_5' "Join in on the chastity fun." $scene.stepLength "<<set $scene.getCaged=true>>">>]<br>
[<<moveTo 'event_rpg_campaign_rerun_5' "You aren't in the mood for chastity." $scene.stepLength "<<set $scene.getCaged=false>>">>]
<</if>>
<<else>>
[<<moveTo 'event_rpg_campaign_session_4_4' 'Continue.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: finish up session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Alright, we'll pick things up next game with that golden classic, escape from prison! Sorry about the bit of railroading, but I promise it'll pay off. I've got something... special planned for next week's session.@@"<br>
<br>
"@@.npc_barista;Oh, speaking of that, I, like, have a job scheduled for next week, so I won't be able to make it, sorry!@@"<br>
<br>
The group takes things in stride, wishing her luck before packing things up.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
Deflating your horns <<=setup.getNpcName('npc_rpg_warlock', 'first')>> peels off your hood, the air on your skin feeling cool and strange after being in latex for the past few hours. She quickly unlocks the rest of your restraints with a wink as her <<boy npc_rpg_dude>>friend packs up the rest of their things.<br>
<br>
<</if>>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' $scene.stepLength>>]
</div>/*#
#desc: arrive/start 5th campaign session (prison escape w/chastity)
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<addItem "rpg_steel_restraints">>
<<wearItem "rpg_steel_restraints" true>>
<<set $scene.session_num = 4>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
Barely suppressing a cheshire grin, <<=setup.getNpcName('npc_technician', 'first')>> reveals the "surprise" she has for the session.<br>
<br>
"@@.npc_technician;Alright, so since you're all in prison in game, well... I've got a few extra accessories.@@"<br>
<br>
With a flourish, she pulls aside a blanket draped over the chair <<=setup.getNpcName('npc_barista', 'nickname')>> usually sits in to reveal matching sets of steel restraints — wrist and ankle cuffs linked by chains.<br>
<br>
<<if $npc_rpg_dude.fem>>"@@.npc_technician;Ta-da! Alright ladies... Time for you to get locked up and us to get started!@@"<<else>>"@@.npc_technician;Ta-da! Alright ladies... and gent@@" she adds with a nod toward <<=setup.getNpcName('npc_rpg_dude', 'first')>> "@@.npc_technician;Time for you to get locked up and us to get started!@@"<</if>><br>
<br>
There's a bit of jovial eye-rolling as your three fellow players reach for their respective set of cuffs and lock them in place.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
You're already bound, but you add the cuffs on just above your existing leather restraints. From the smile on <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> face as she looks down at you, you're a little afraid the weighty steel restraints might be added as "standard" going forward.<br>
<br>
<</if>>
"@@.npc_technician;A captive audience! I love it!@@" She states with a smile, "@@.npc_technician;Only... there's one little bit left to make things EXTRA fun.@@"<br>
<br>
Grinning ear to ear, she pulls the blanket back further to reveal a set of
<<if $npc_rpg_warlock.flags.bottom_surgery && !$player.body_ref.penis>>
two steel chastity cages... and two gleaming belts.
<<elseif !$player.body_ref.penis>>
three steel chastity cages... and one belt.
<<elseif $npc_rpg_warlock.flags.bottom_surgery>>
three steel chastity cages... and one belt.
<<else>>
four steel chastity cages in varying sizes.
<</if>>
<br><br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> is the first to get things started. After rolling <<his npc_rpg_dude>> eyes in amusement <<he npc_rpg_dude>> snags <<if $npc_rpg_warlock.flags.bottom_surgery>>a cage and a belt<<else>>two of the cages,<</if>> though, interestingly, not <<if ($scene.cage != "") && ($player.body.penissize[0] >= 4)>>either of the large ones<<else>>the largest one<</if>>.<br>
<br>
Kneeling down in front of <<his npc_rpg_dude>> girlfriend, <<=setup.getNpcName('npc_rpg_dude', 'first')>> takes care of <<=setup.getNpcName('npc_rpg_warlock', 'first')>> first, <<if $npc_rpg_warlock.flags.bottom_surgery>>locking the chastity belt onto her<<else>>giving her small caged member a delicate kiss<</if>> before unzipping <<his npc_rpg_dude>> pants and waiting for her to do the same. Of average size, <<hes npc_rpg_dude>> a bit tumescent, but <<=setup.getNpcName('npc_technician', 'first')>> is prepared, handing over an ice pack that <<=setup.getNpcName('npc_rpg_warlock', 'first')>> uses to get <<him npc_rpg_dude>> back in line before locking <<him npc_rpg_dude>> away.<br>
<br>
Watching the whole display with mild amusement, <<=setup.getNpcName('npc_maid', 'first')>> remains in her seat, looking sideways at <<=setup.getNpcName('npc_technician', 'first')>> as if to say "really?" <br>
<br>
"@@.npc_technician;Oh come on, it's all in good fun!@@"<br>
<br>
Shaking her head, <<=setup.getNpcName('npc_maid', 'first')>> finally leans over to grab <<if ($player.body.penissize[0]>=4)>>one of the large cages<<else>>the largest cage<</if>>.<br>
<br>
"@@.npc_maid;Fine, but be ready to catch your cute girlfriend if she faints, okay?@@"<br>
<br>
Before you can puzzle out what she meant by that, she's hiking up her skirt to reveal cute, bulging panties. Pulling them down reveals a <<if ($player.body.penissize[0]>=4)>>cock a little larger than your own substantial member!<<else>>large, two-handed broadsword.<</if>><br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
You can't help but stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> crotch monster, entranced by its luscious size...
<<else>>
You can't help but stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> crotch monster, looking big and beautiful betwixt her thighs.
<</if>>
<<else>>
You try not to stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> crotch monster, but there's really no way to resist stealing at least a bit of a glance...
<</if>>
<br><br>
Wincing a little, she fumbles a bit before fitting into the large, but still too-small prison. All eyes are finally on you.<br>
<br>
"@@.npc_maid;Come on, I wanna get started so I can get out of this thing.@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_rpg_campaign_session_5_1' "You um... planned ahead?" $scene.stepLength "<<set $scene.getCaged=true>>">>]
<<else>>
[<<moveTo 'event_rpg_campaign_session_5_1' "Succumb to the peer pressure." $scene.stepLength "<<set $scene.getCaged=true>>">>]<br>
[<<moveTo 'event_rpg_campaign_session_5_1' "You aren't comfortable with this..." $scene.stepLength "<<set $scene.getCaged=false>>">>]
<</if>>
</div>/*#
#desc: arrive/start 5th campaign session (prison escape w/chastity)
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.getCaged>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.skirt = setup.analyzeWornTags(['skirt','pants'])>>
<<if $scene.cage == "">>
<<if $player.timebased.horny >=50>>
<<set $player.timebased.horny = 49>>
<</if>>
<<if $player.flags.chastity_style == "cage" && $player.body_ref.penis && $player.body_ref.balls>>
<<addItem "c_cage_steel">>
<<wearItem "c_cage_steel" true>>
<<else>>
<<addItem "chastity_belt_flat">>
<<wearItem "chastity_belt_flat" true>>
<</if>>
<<set $scene.firstChastity = !$player.sec_style.submission.chastity>>
<<if $scene.firstChastity>>
<<set $player.sec_style.submission.chastity = "voluntary">>
<<setThreshold 'bondage' 'other_bondage' 'cage_first'>>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<</if>>
<<else>>
<<set $npc_technician.flags.seen_chastity = true>>
<</if>>
<</if>>
<<set $scene.session_num = 4>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
<<if $scene.getCaged>>
<<if $scene.cage != "">>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
Bound as you are, you are helpless to resist as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> "helpfully"
<<switch $scene.skirt>>
<<case 'skirt'>>
raises your skirt to reveal your
<<case 'pants'>>
pulls down your pants to reveal your
<<default>>
reveals your
<</switch>>
<<=setup.getItemName($scene.cage)>>.
<<else>>
Blushing a bit you
<<switch $scene.skirt>>
<<case 'skirt'>>
raise your skirt to reveal your
<<case 'pants'>>
pull down your pants to reveal your
<<default>>
reveal your
<</switch>>
<<=setup.getItemName($scene.cage)>>.
<</if>>
<br><br>
<<if $npc_technician.relationship.relationship_stage > 1>>
"@@.npc_rpg_warlock;Cheat! You totally got tipped off by your girlfriend, didn't you! Out of character advantage!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> starts to protest, but then joins in as the group laughs at the joke.<br>
<br>
<</if>>
"@@.npc_maid;So... looks like that leaves one extra... I think the DM ought to join us in solidarity. It's all in good fun, right?@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
<<=setup.getNpcName('npc_technician', 'first')>> smirks and then flashes her already caged cock in triumph. "@@.npc_technician;Sorry, my dear, but a special someone has made sure that I am already quite safely locked away.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> only grins wider before extending her arm in your direction for a fist-bump "@@.npc_maid;Keeping her in line, good job! Though, I think she'd be better off with something a bit smaller, maybe with spikes.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> glares at her friend and then flutters her eyelids innocently in your direction before her composure slips and she breaks into a full grin.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> grumbles a bit, but you're pretty sure it's a put-on as she finally acquiesces to the request.<br>
<br>
"@@.npc_maid;Oh, and the key — I mean, it isn't really the same if you can unlock yourself, right?@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<=setup.getNpcName('npc_technician', 'first')>> sighs and hands over a small steel key, only for <<=setup.getNpcName('npc_maid', 'first')>> to pass it to you.<br>
<br>
"@@.npc_maid;Here you go, I think you'll have the most fun deciding when, or if, she gets to come out.@@"<br>
<br>
Your mind swirls with possibility as <<=setup.getNpcName('npc_technician', 'first')>> bites her lip and glances at you with obvious lust as she adjusts herself into a comfortable position seated back behind her DM screen.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> sighs and hands over a small steel key, <<=setup.getNpcName('npc_maid', 'first')>> pocketing it with a smile.<br>
<br>
"@@.npc_maid;There, nice and fair — if you run a good session, I'll let you out if not... well, there's always next week!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> glares back, but makes no response as she adjusts herself into a comfortable position back behind her DM screen.
<</if>>
<</if>>
<br><br>
"@@.npc_technician;Alright! Now... to the game! After your capture, you are each placed in separate prison cells in a dungeon deep below the border garrison.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' "Continue." $scene.stepLength>>]
<<else>>
<<if setup.getTotalValue("submission") < 5>>
You gawk at the cage, you want to think this is a joke yet you've just watched the rest of the party expose themselves and put them on as if it was the most normal thing in the world.<br>
<br>
The room having fallen silent attention shifts towards you as you continue to sit motionless.<br>
<br>
"@@.npc_technician;You alright, <<=$player.first_name>>? If this is too much, we can—@@"<br>
<br>
"@@.npc_maid;Hell no!@@" <<=setup.getNpcName('npc_maid', 'first')>> states with a grin. "@@.npc_maid;If I gotta get locked up, so does she, no special treatment for the DM's <<if $npc_technician.relationship.relationship_stage > 0>>girl<</if>>friend!@@"<br>
<br>
You and <<=setup.getNpcName('npc_technician', 'first')>> both blush only for <<=setup.getNpcName('npc_rpg_dude', 'first')>> to step in a bit more delicately. "@@.npc_rpg_dude;Lay off, <<=setup.getNpcName('npc_maid', 'first')>>, you're scaring her!@@" <<He npc_rpg_dude>> reaches for the cage and then hands it to you with a smile. "@@.npc_rpg_dude;Come on, it's all in good fun, right?@@"<br>
<br>
<<if $player.timebased.horny >= 50>>
Though everyone is now staring at you their smiles are more encouraging than anything else, even <<=ps(setup.getNpcName('npc_maid', 'first'))>> edge temporarily dulled.<br>
<br>
"@@.pc;Umm...@@" You start to say as you look at the cage while realising that your already hard — and still growing <<getWordMyPenis>> is not going to fit.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> is the first to twinge what's going on, flashing a leering grin before reaching over to grab between your legs, which only makes you swell more. "@@.npc_rpg_warlock;Yup, just as I suspected, this whole thing is an act! Not a problem we can easily address that issue.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_1a' "Address the issue." $scene.stepLength>>]
<<else>>
Taking a deep breath, and giving a final glance at the encouraging expressions of your friends you take the cage before nervously parting your clothes and installing it in place.<br>
<br>
The cold metal feels a bit weird, and you actually feel yourself swelling inside of it with excitement — though that is short lived before the unyielding steel puts a stop to any further growth.<br>
<br>
"@@.npc_technician;Alright! Now... to the game! After your capture you are each placed in separate prison cells in a dungeon deep below the border garrison.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' "Continue." $scene.stepLength>>]
<</if>>
<<elseif $player.timebased.horny >= 50>>
You stare at the cage, not even wanting to stand enough to reach over and grab it lest you reveal the tent that's rapidly being pitched under your clothes.<br>
<br>
The rest of the group back in their seats <<=setup.getNpcName('npc_rpg_warlock', 'character')>> is the first to twinge what's going on, flashing a leering grin before reaching over to grab between your legs, which only makes you swell more. "@@.npc_rpg_warlock;Yup, just as I suspected, this whole thing is an act! Not a problem we can easily address that issue.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_1a' "Address the issue." $scene.stepLength>>]
<<else>>
<<printThought "Well, it's not like it's the first time...">><br>
<br>
With a slight sigh you grab the <<if setup.isCage()>>final chastity cage<<else>>chastity belt<</if>> and slip it on, the soft "click" of the lock sending a<<if !$scene.firstChastity>> familiar<</if>> submissive shiver through your body.<br>
<br>
<<if $scene.firstChastity>>
"@@.npc_rpg_warlock;Wowza... anyone ever tell you that you look absolutely GORGEOUS in chastity?@@"
<<else>>
"@@.npc_rpg_warlock;Well, well, looks like SOMEONE knows what she's doing, lemme guess, you've spent a fair bit of time locked up like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>, haven't you?@@"<br>
<br>
You blush, and nod.
<</if>>
<br><br>
The rest of the group smiles as <<=setup.getNpcName('npc_technician', 'first')>> restores order to proceed with the game.<br>
<br>
"@@.npc_technician;Alright! Now... to the game! After your capture you are each placed in separate prison cells in a dungeon deep below the border garrison...@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' "Continue." $scene.stepLength>>]
<</if>>
<</if>>
<<else>>
You hesitate and meekly say you aren't really interested into this sort of play...<br>
<br>
In an instant things shift, as the final device disappears and <<=setup.getNpcName('npc_technician', 'first')>> responds in a more serious tone.<br>
<br>
"@@.npc_technician;Hey, that's fine, the goal here is for all of us to have fun, if you're uncomfortable, then we change things up. Come on, let's continue on with the game. If you aren't up for this sort of real-life mirror role-play to go with it... that's fine.@@"<br>
<br>
You glance around, the rest of the group smiling at you in support to reassure that you asserting your limits isn't a problem.<br>
<br>
You take a deep breath and nod.<br>
<br>
"@@.npc_technician;Alright! So, after your capture you are each placed in separate prison cells in a dungeon deep below the border garrison...@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' "Continue." $scene.stepLength>>]
<</if>>
</div>/*#
#desc: deflated + locked in chastity if you were horny
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
<<if $npc_rpg_dude.fem>>
Perhaps being shy <<=setup.getNpcName('npc_rpg_dude', 'first')>> walks out of the room as the other three ladies suddenly converge on you.<br>
<<else>>
Perhaps as an act of chivalry <<=setup.getNpcName('npc_rpg_dude', 'first')>> walks out of the room as the three ladies suddenly converge on you.<br>
<</if>>
<br>
"@@.npc_rpg_warlock;Totally normal issue, you just sit back and let us deal with things...@@"<br>
<br>
Still seated on the couch you're more or less frozen as you stare up at the trio of <<=setup.getNpcName('npc_maid', 'first')>>, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_technician', 'first')>> — maid, goth and sexy librarian forming a sort of peak concentration of fetish.<br>
<br>
"@@.npc_technician;I'm so proud of you participating like this.@@" <<=setup.getNpcName('npc_technician', 'first')>> states as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> removes your clothes to reveal your now VERY erect <<getWordMyPenis>>.<br>
<br>
You hold your breath, finding yourself staring back and forth between the three women as <<=setup.getNpcName('npc_maid', 'first')>> accepts a handful of ice cubes from <<=setup.getNpcName('npc_rpg_dude', 'first')>> and, with a taunting grin, brings them towards you.<br>
<br>
The chill on your balls has you wilting almost immediately, letting out a hiss of air at this sudden turn.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> strokes your cheek in comfort. "@@.npc_technician;There, there, it'll be finished soon, then we can all get back to the game!@@"<br>
<br>
You bite your lip, staring up at her as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> slides the cold steel chastity cage over your now soft <<getWordMyPenis>>. There is a surprisingly loud click as the lock closes and then she is pulling your clothes back into position.<br>
<br>
As swiftly as they had assembled, suddenly everyone is back to their seats. Your heart is still pounding with excitement as they each flash you a final smile of encouragement before things continue on.<br>
<br>
"@@.npc_technician;Alright! Now... to the game! After your capture you are each placed in separate prison cells in a dungeon deep below the border garrison.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' "Continue." $scene.stepLength>>]
</div>/*#
#desc: attempt to get out of your cell
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
The group quickly runs through the basics as you examine the predicament you're all in. It is quickly determined that the cells block the external manifestation of magical effects, though localized stuff like passive effects and touch spells still seem to function. Despite being in different cells, you are close enough to communicate, though doing such draws the ire of the guards.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
A pair of passing guards pauses outside of your cell, one of them leering at your half-naked form, the scraps of your robes barely keeping you in the vicinity of "decent." <br>
<br>
The other guard takes pity on you, darting away and then returning to toss you something through the bars and orders you to "put it on." <<His>> partner rolls <<his>> eyes and moves along as the "helpful" guard stands outside you cell staring in.<br>
<br>
"@@.npc_technician;You aren't sure if the way <<hes>> fiddling with <<his>> truncheon is because <<hes>> aroused, or as a threat if you don't play along.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Strike a sultry pose and see if you can get <<him>> to "help."' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Avoid punishment and change into the new outfit.' $scene.stepLength>>]
<<case "elf_priestess">>
Sitting in your cell, you hear an ugly, racking cough echoing down the corridor. A few moments later, a pair of guards appearing, one of them looking quite under the weather.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Offer to use your magic to heal the ill guard.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Remain silent.' $scene.stepLength>>]
<<case "bard">>
You may not have your axe, but you've got your voice and hell, that's enough to start a bit of a ruckus...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Time for some jailhouse rock...' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Remain quietly in your cell.' $scene.stepLength>>]
<<case "druid">>
The magical shackles you are stuck in prevent you from shifting out of your hulking bear form, but as you flex you realise they don't seem to be deterring your strength. You eye the cell door, stout by human standards, but for you...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Smash your way out.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Wait patiently for something to happen.' $scene.stepLength>>]
<<case "succubus">>
Out of fear of your intimidating infernal powers, they seem to have taken extra precautions with you — in addition to your normal restraints you bear a second set of pulsing shackles, robbing you of all of your powers. Well, all of your supernatural ones, you still have your unearthly beauty and cunning...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_active' 'Try to seduce one of the guards.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_passive' 'Wait for something to happen.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: break out of your cell
#status: FINISHED 0.5.0.0
#ignore_spell: t,aaaanyway
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character != "succubus">>
<<removeItem "rpg_steel_restraints" true>>
<<deleteItem "rpg_steel_restraints">>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Striking a sexy pose, you rise to your feet and turn away, glancing at the guard over your shoulder as you let the remains of your robe slide to the floor with a wiggle.<br>
<br>
The outfit looks to be a skimpy top that fastens in the back and a matching simple skirt. Stepping into the skirt, you take your time sliding it up your legs before bending over with exaggerated slowness to pick up the top. With faux difficulty, you are unable to reach around to close the top, turning around and holding it in place to conceal your chest as you ask if <<he>> could help.<br>
<br>
"@@.generic_male1;Sure, just come on over here, honey.@@" <<He>> croons as you step closer, <<he>> fastens the back only for the outfit to reveal that it is enchanted, the previously loose garment suddenly tightening... and shrinking.<br>
<br>
You gasp in surprise as you find your body swelling to fill it even as the two-piece outfit snugs up around you. By the time it's over, you are sporting a butt to kill and a pair of large breasts, all straining to escape from your tight bra and skirt.<br>
<br>
"@@.pc;Oh my!@@" you state in surprise as you turn back to face the guard, moving closer you ask if maybe <<he>> could help you adjust yourself?<br>
<br>
With a wide-grin leer, <<he>> reaches through the bars to grope your breasts. You take the opportunity to reach back, cupping <<his>> cheek under <<his>> helmet and unleashing your sleep magic, the guard slumping instantly.<br>
<br>
Lunging forward, you're glad all your transformations haven't particularly reduced your natural orcish strength, catching <<him>> from falling and quietly holding <<him>> in place as you rifle through <<his>> pockets for the key to your cell.<br>
<br>
Carefully unlocking the door, you dump the guard on your cot, checking the hallway to make sure the coast is clear before quickly freeing the rest of the party.
<<case "elf_priestess">>
The guards look at you with suspicion, but you explain that your holy oath requires you to render aid to any who are in need of your... services.<br>
<br>
Deciding that you're just a healer and not really a threat on your own, they let you out and bring you back to their guard post.<br>
<br>
Making bed-eyes at the injured guard, you have <<him>> lean back, unbuckling <<his>> pants and bringing your lips to <<his>> <<if $options.fem>>girl-dick<<else>>manhood<</if>> as you promise that you'll "@@.pc;Make everything better...@@"<br>
<br>
Giving a few gentle sucks, you wiggle your rear and turn back towards <<his>> compatriot, asking if <<he>> could help you "@@.pc;Channel more power.@@" Working one at a time, you soon have every guard on duty drawn into an orgy, gangbanging you in all three holes, lust, cum, and magical power pumped into you with equal measure.<br>
<br>
Healing the ill guard in passing, you keep at it until <<he>>, and the rest of the guards, have been exhausted. Finally rising back to your feet and licking your lips, you carefully step over their tired, spent bodies and snatch a key to free the rest of the party.
<<case "bard">>
Stretching out a bit you start singing, drumming on the bars and cell walls for accompaniment as you get into the groove, composing on the spot a bawdy tune that insults the guards, their general.<br>
<br>
The acoustics of the prison aren't exactly spectacular, but your loud jam is soon echoing through the halls and a couple guards appear at the cell door to tell you to quiet down.<br>
<br>
Shaking your head and backing into your cell, you smile and sing louder, diving into a verse about the country of Khmet as a whole and their Pharaoh god-queen Kyassia; getting even more lewd as you continue to needle and rib your captors.<br>
<br>
Faces twisted up in anger, the guards scramble for a key, opening the door and rushing in to administer your beating.<br>
<br>
You're ready, of course, twirling over the first guard as you sing-narrate your actions for an additional bonus, rolling into the hallway as you snag the key on the way past.<br>
<br>
Drawing the guards further up the hallway, you find yourself at a dead-end, the guards suddenly stopping their approach as you stop your song and merely grin widely.<br>
<br>
"@@.generic_male1;What? Run out of disparaging rhymes for Kyassia?@@" One of the guards asks with a sneer.<br>
<br>
You grin even wider, noting that no, you just don't need to provide covering sound anymore as you look past the guards to where the rest of the party stands, having emerged from their cells.<br>
<br>
Even unarmed <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> are more than a match for a few guards, and with a bit of spell and bardic support, it isn't long before the guards are tossed into the cell and you take a quick moment to interrogate them for where to find your stuff.
<<case "druid">>
Backing to the far side of the cell, you push off the wall and barrel forward with a roar. The first impact merely bends the bars a bit and attracts the guards but, taking a penalty to the self control roll you were going to fail anyway, you jack your strength up even higher and take another shot, blowing the door off its hinges as you crash into the approaching guards.<br>
<br>
Swiping your paws, you knock guards left and right, pitching one in the direction of <<=ps(setup.getNpcName('npc_maid', 'character'))>> cage where she quickly rifles through for the keys.<br>
<br>
By the time the rest of the party is out, you've finished subduing most of the guards and are having your way with the biggest, burliest one, your thick ursine cock introducing the <<man>> to new depths of pleasure as you fuck <<him>> straight through <<his>> leather armour.
<<case "succubus">>
Leaning out through the bars of your cell, you start to make eyes towards one of the guards. With your most seductive voice, you beg them to let you go, explaining that you only served <<=setup.getNpcName('npc_rpg_warlock', 'character')>> due to dark magic bindings and that if they would only free you, you will gladly turn against your supposed allies.<br>
<br>
Several of the guards are looking quite hot and bothered, even without the added effect of your powers, and finally a trio of them approach your cell. Rather than freeing you, they bind you even further, placing your arms behind your back so as to render you all but helpless.<br>
<br>
"@@.npc_rpg_warlock;Oh! I've got just the thing for this!@@" <<=setup.getNpcName('npc_rpg_warlock', 'character')>> states with a grin, producing additional leather restraints to bind your arms behind your back, wrists cuffed in the small of your back with a T-strap linking them and your biceps.<br>
<br>
<<if setup.getTotalValue("bondage") > 10>>
You shudder in your newly-enhanced bonds, having to rally all of your focus to keep your attention on the game rather than descend into submissive fantasies as your body reacts to the oh-so-delightful helplessness of bondage.<br>
<br>
<</if>>
"@@.npc_technician;Aaaanyway@@" <<=setup.getNpcName('npc_technician', 'first')>> states as she shakes her head in amusement, "@@.npc_technician;You are escorted into a small chamber and left alone with what you guess is the prison warden.@@"<br>
<br>
"@@.npc_technician;"Speak, foul demon." The warden commands, "Tell me the evil plans of your summoner."@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_3_succubus' 'Stick with the "betrayal" storyline.' $scene.stepLength "<<set $scene.betrayal=true>>">>]<br>
[<<moveTo 'event_rpg_campaign_session_5_3_succubus' 'Stay loyal to the party and make something up.' $scene.stepLength "<<set $scene.betrayal=false>>">>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.character != "succubus">>
[<<moveTo 'event_rpg_campaign_session_5_4' 'Continue.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: wait in cell for party to rescue you
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_arm_bondage">>
<<wearItem "rpg_succubus_arm_bondage" true>>
<</if>>
<<removeItem "rpg_steel_restraints" true>>
<<deleteItem "rpg_steel_restraints">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Shedding your robes, you put on the new outfit, only somewhat surprised to discover that the initially loose, ill-fitted garments are magic, molding themselves to your body as they tighten into place as a short skirt and a skimpy top.<br>
<br>
The ACTUAL surprising part is that they don't just shift to match you, they mold your body to themselves, your butt and breasts swelling to head-turning size, straining against the stretched fabric of your new attire.<br>
<br>
Leering at you the whole time the guard laughs in amusement before walking away.<br>
<br>
You hear a sound up the hall, peeking out between your cell to spot <<=setup.getNpcName('npc_maid', 'character')>> having knocked the guard unconscious, holding him up with one strong arm as she searches for the key.
<<case "elf_priestess" "bard" "druid" "succubus">>
You sit quietly as the guards continue on only to hear a pair of THUNKs from up the hall.<br>
<br>
Popping your head out between the doors to your cell, you watch as <<=setup.getNpcName('npc_rpg_dude', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> work in synchronization to rifle through the knocked-out guards' pockets for keys, dumping the subdued men back in their cells before setting to work freeing the party.<br>
<br>
"@@.npc_maid;Alright, we're out.@@" She announces after unlocking the rest of the party and sending <<=setup.getNpcName('npc_rpg_warlock', 'character')>> dashing up the hallway to neutralise the remaining guards with an infernal howl.<br>
<br>
"@@.npc_technician;Ah, but only partway!@@" <<=setup.getNpcName('npc_technician', 'first')>> replies, handing out keys to your cuffs<<if !($scene.cage != "") || $npc_technician.relationship.keyholder>> while retains control of the chastity keys<</if>>.<br>
<br>
"@@.npc_rpg_warlock;Well, then. I guess it's time to make our escape, we search for where they put our stuff.@@"
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<br><br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> frowns as you finish removing your restraints.<br>
<br>
"@@.npc_rpg_warlock;No, no, that won't do. You failed to help with the escape so... I think you need to spend a bit longer restrained.@@"<br>
<br>
She produces some more leather cuffs, strapping your wrists behind your back, your upper arms attached together as well to make the bondage even more stringent.
<</if>>
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_5_4' 'Gather your gear and get out.' $scene.stepLength>>]
</div>/*#
#desc: pretend or not to betray party
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemWorn("rpg_steel_restraints")>>
<<removeItem "rpg_steel_restraints" true>>
<<deleteItem "rpg_steel_restraints">>
<</if>>
<<if !$scene.betrayal && setup.getTotalValue("bdsm") > 10>>
<<changeHorny 20>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
<<if $scene.betrayal>>
Spinning a yarn, you beg the warden to free you by way explaining that the foul assassins that summoned you had planned to murder the Pharaoh. You state that you will gladly switch loyalties if the demonic pact that binds you to the warlock can be severed.<br>
<br>
When asked how to do that, you attempt to talk her into removing your restraints only to be interrupted by a commotion outside the room.<br>
<br>
Smashing the door to pieces, <<=setup.getNpcName('npc_maid', 'character')>> knocks the warden across the room and into unconsciousness.<br>
<br>
Peeking around the hulking barbarian, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> smiles at you.<br>
<br>
"@@.npc_rpg_warlock;Come along, pet, you aren't escaping my clutches that easily, but as penance you can keep that lovely arm restraint. It isn't like any of your supernatural abilities have somatic components.@@"
<<if setup.getTotalValue("bdsm") > 10 && setup.getTotalValue("submission") > 10>>
<br><br>
While the actual game continues on you find yourself fantasising about your party members reacting much more harshly. In your extended "bonus" scene <<=setup.getNpcName('npc_maid', 'character')>> casts you to the ground under the watchful gaze of your warlock Mistress. The half-divine cock burns as it thrusts into you, but your cry of pain is muffled as <<=setup.getNpcName('npc_rpg_dude', 'character')>> shoves her cunt into your face, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> conjuring a spectral whip and adding lashes of a eldritch power to rake your body as you are fucked and forced to serve "making up" to the party for your failure for an indeterminate period of time before, with cum covering your face and flowing down your leg you are finally drug to your feet and forced to accompany them in the continued escape.<br>
<br>
Back in the real world you notice the table staring at you, as you quickly mumble something to the effect of your continuing on with the party as meekly rejoin the game.
<</if>>
<<else>>
Rising to your feet, you approach the warden with a smile, telling her how grateful you would be if she could only loosen your restraints...<br>
<br>
Her gaze tinged with lust she tries to resist you, backing away telling you to sit down, but the room is too small. Before she realises it you have backed her into a corner, leaning in for a kiss, the touch of your lips against hers allowing you to bring your full powers to bear.<br>
<br>
She practically melts under the fire of your demonic lusts, only staying standing due to how tightly you press her against the wall. Pinched in place she shudders and bucks, cumming once before you separate. Her eyes unfocused and glassy you command her to free your compatriots.<br>
<br>
"@@.npc_technician;"Yes, Mistress..." she replies.@@"<br>
<br>
<<if $npc_technician.relationship.her_role == "sub">>
<<printThought "Oh shit, even in-game that turns me on to hear her say that...">><br>
<br>
<<elseif $npc_technician.relationship.her_role == "dom">>
<<printThought "It's so weird to be on this side of that phrase...">><br>
<br>
<</if>>
<<if setup.getTotalValue("bdsm") > 10>>
Time seems to slow down as you revel in the moment. Despite your real life restraints you find yourself pulsing with dominant energy simultaneously entranced by both sides of the coin, in control and yet helpless. Pulse pounding in arousal you try to focus back on the game as you narrate your actions... even as you find yourself fantasising about taking a few extra minutes to further use and abuse the enslaved warden...<br>
<br>
<</if>>
Taking you by the still-bound arm the warden leads you back towards the cells, "accidentally" dropping her key as she passes one of your compatriot's cells. The three of them swiftly free themselves and subdue the remaining guards.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> manages to remove your initial bindings and restore your powers, but the "bonus" restraints holding your arms remain stubbornly in place.<br>
<br>
"@@.npc_technician;Only... a priestess...@@" Is the response you get from the lust-addled warden when you try to find out how to remove the final restraint. With a sigh you give up for the moment, none of your supernatural abilities have a somatic component so it really isn't a major in-game disadvantage.
<</if>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_5_4' 'Gather your gear and get out.' $scene.stepLength>>]
</div>/*#
#desc: finish session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.getCaged>>
<<set $scene.was_caged = ($scene.cage != "")>>
<<set $scene.chastityPost = setup.checkItemTypeWorn("cage") && $npc_technician.relationship.relationship_stage > 0>>
<<if ($npc_technician.relationship.relationship_stage == 0 || $npc_technician.relationship.her_role == "sub") && !$scene.was_caged>>
<<if $player.flags.chastity_style == "cage" && $player.body_ref.penis && $player.body_ref.balls>>
<<removeItem "c_cage_steel" true>>
<<addItem 'steel_chastity_cage_key'>>
<<else>>
<<removeItem "chastity_belt_flat" true>>
<<addItem 'chastity_belt_flat_key'>>
<</if>>
<</if>>
<<if setup.getTotalValue("submission") < 5>>
<<setThreshold 'submission' 'roleplay' 'session_5'>>
<<set $scene.subthreshold = true>>
<<else>>
<<set $scene.subthreshold = false>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<div id="invframe" class="scrolltext">
"@@.npc_maid;Alright, we're out.@@" <<=setup.getNpcName('npc_maid', 'first')>> announces now that the whole party is unlocked and <<=setup.getNpcName('npc_rpg_dude', 'character')>> has neutralised the remaining guards with an infernal howl.<br>
<br>
"@@.npc_technician;Ah, but only partway!@@" <<=setup.getNpcName('npc_technician', 'first')>> replies, handing out keys to your cuffs while retaining control of the chastity keys.<br>
<br>
The party spends a few minutes to re-equip after locating your weapons and armour and then heads back up towards the ground floor when you meet the Ambassador coming the other direction.<br>
<br>
You take the Ambassador by surprise and he barely has a chance to yelp before you've taken him prisoner. Holding him at sword-point, you demand an escape route.<br>
<br>
"@@.generic_male1;I'll help you escape, just please, don't frame me again!@@" he replies, shaking in fear.<br>
<br>
"@@.npc_rpg_warlock;Frame? The poison exactly matched the Princess' ailment, are you saying it was planted in your room? Tell us the truth or I will rip it from your soul!@@"<br>
<br>
"@@.generic_male1;Technically, not planted, but stolen! But that is immaterial. Hapatra's venom is not slow acting, it kills within two days, for her to be ill for that long, she would have to have been taking carefully measured doses the whole time!@@"<br>
<br>
The realisation comes simultaneously — someone must have framed the whole thing, perhaps the regent hoping to fully cement his hold on the throne?<br>
<br>
Noticing your collective surprise, the ambassador seems greatly relieved, offering the use of the garrison's teleporter to send you directly back to the castle to clear his name and stop the war. It is a tense few minutes as a general alarm of your escape sounds and you are forced to race to the teleportation room and hold off a fresh wave of guards until <<=setup.getNpcName('npc_rpg_warlock', 'character')>> can power up the portal, but finally, you escape.<br>
<br>
You arrive back at the castle to find things in shambles. The regent is dead and the princess has already ridden off towards the border with her elite guard.<br>
<br>
"@@.npc_technician;Sorry, but it looks like your princess is in another castle...@@" She states with a smile, the ancient meme met with a chorus of groans.<br>
<br>
"@@.npc_maid;Sure, but... this still counts as us escaping, right?@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_6' 'Continue.' $scene.stepLength>>]
<<else>>
<<include "fantasyEndRemoveChastity">>
<br><br>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' $scene.stepLength>>]
<</if>>
</div><<=setup.getNpcName('npc_technician', 'first')>> hands out the chastity keys with a wry smile at the look of relief on <<=ps(setup.getNpcName('npc_maid', 'first'))>> as she lets herself out.<br>
<br>
"@@.npc_maid;Next time? Larger size. Or do I need to give you a reminder lesson again on how big I am?@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> blushes and bites her lip while <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_rpg_dude', 'first')>> laugh as they let each other out (and, you notice, tuck the cages back in <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> bag).
<<set $scene.chastityPost = false>>
<<if $scene.getCaged>>
<br><br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<if $npc_technician.relationship.her_role == "sub" && !$scene.was_caged>>
<<=setup.getNpcName('npc_technician', 'first')>> bows and kneels between your legs as she leans in to unlock your <<if $player.flags.chastity_style == "cage" && $player.body_ref.penis && $player.body_ref.balls>>cage<<else>>belt<</if>>. She smiles as she lays sight upon your no-longer imprisoned self.<br>
<br>
"@@.npc_technician;So beautiful... thank you for playing along, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@"<br>
<br>
You grin down and give her a head pat then pull her in for a kiss before she slinks back to her chair.
<<elseif $npc_technician.relationship.keyholder || !$scene.was_caged>>
"@@.npc_technician;Hmm, as for you my dear... well, I promise to let you out eventually... if you're good.@@"
<<if $scene.subthreshold>>
<br><br>
You tremble slightly, realising just how much power she has over you thanks to her and her friends locking you up at the start of the session.
<</if>>
<<set $scene.chastityPost = true>>
<<else>>
"@@.npc_technician;Sorry my dear, you were locked up when we started, so I don't have a key for you. You're just going to have to stay locked up and out of trouble.@@"
<<set $scene.chastityPost = true>>
<</if>>
<<else>>
<<if $scene.was_caged>>
"@@.npc_technician;Sorry about the lack of verisimilitude, but for all my manifest powers, I don't have your key.@@"
<<else>>
<<if $scene.subthreshold>>
You nervously grab the key, pent up emotions at having been locked up by three beautiful women<<if !$npc_rpg_dude.fem>> — with a male witness to boot<</if>> slamming into you. In a burst of speed you run for the bathroom, removing the cage in privacy before emerging to, blushingly, pass it back to <<=setup.getNpcName('npc_technician', 'first')>> who just smiles.<br>
<br>
A flutter goes through your body at her touch as you place the cage and key back in her hand.<br>
<br>
<<printThought "That was intense, I can't imagine what it would be like to be locked for longer, or if she hadn't given me back the key...">>
<<else>>
You're the last to grab your key, sighing in relief, and swell with excitement once you have it off.<br>
<br>
<<printThought "Well, at least it wasn't for as long as I'm usually stuck for.">>
<</if>>
<</if>>
<</if>>
<</if>>/*#
#desc: arrive/start 6th campaign session (chase)
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 5>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
The castle is pandemonium, but it doesn't take long to find out what happened; shortly after you left the regent was slain, right in front of the princess herself!<br>
<br>
Swearing revenge, the fully recovered Princess had gathered her loyal royal guards and set out, her destination: the seat of power of the Pharaoh Kyassia.<br>
<br>
Recalling what happened the last time you attempted to enter the kingdom of Khmet, the party decides to take a more measured approach, gathering intel and equipment rather than charging off straight away.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_1' "Get prepared to follow after the princess." 0>>]
</div>/*#
#desc: discover princess is big bad, trail the princess across nations + gear up for final confrontation
#status: FINISHED 0.5.0.0
#ignore_spell: d20
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.character == "orc_mage" && $npc_technician.flags.rpg_campaign.session_actions.current_session[2]>>
Finding your friend, the court magician she leaps into your arms to embraces you passionately, obviously grateful to see you returned and unharmed.<br>
<br>
You gently place her back on the ground as she composes herself and addresses the party as a whole.
<<else>>
Most of the castle dwellers have no idea what is actually going on, so you seek out the court mage.
<</if>>
<br><br>
Almost in tears, she gives you a brief history lesson. When she was younger, the Princess was to be betrothed to the Pharaoh Kyassia, but then her parents died suddenly, the regent not allowed to make such decisions and thus, the arrangement did not go through.<br>
<br>
Despite it not being official, the Princess and the Pharaoh had maintained a clandestine arrangement, but by then the regent had refused to relinquish power and now...<br>
<br>
The sorceress explains how she had recently sensed a darkness in the princess, what she had first blamed on the Princess' illness, but now she knows not for what purpose the princess rides to Khmet, but she fears for both kingdoms.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Remarking that the princess had long been her precocious student the sorceress recommends a stealthy approach, offering one of the princess' outfits, the magic woven through it designed for leading a stealthy army, granting the wearer and their companions greater speed and stealth when traveling overland.<br>
<br>
The outfit is... very skimpy, more jewel than fabric and you reflect on your previous history with clothing...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Accept the gift and put on the new outfit.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Thank her, but decline.' $scene.stepLength>>]
<<case "elf_priestess">>
Recalling your shared "time" with the princess the court magician notes that she might be able to utilize that sympathetic connection to attempt to track the fled royal. Though there is some risk of the same link being turned back on you.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Take part in the ritual.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Play it safe and decline.' $scene.stepLength>>]
<<case "bard">>
You stumble a bit as to how to help only to notice that you have the skill "bardic lore." It seems a bit of a longshot, but maybe you could use it to figure out something about what's going on?<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Roll for bardic lore.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Just stay quiet and leave things to the rest of the party.' $scene.stepLength>>]
<<case "druid">>
The party spends most of the session gathering forces, recruiting what army remains at the castle as well as a handful of mercenaries. Geared up and heading for the border you suddenly remember that you have a flying form that you have yet to use, perhaps you could help guide the party's approach from above?<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Be the eye in the sky.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Stick with the party.' $scene.stepLength>>]
<<case "succubus">>
You're trying to think of what you might do to help when you point out to <<=setup.getNpcName('npc_rpg_warlock', 'first')>> that, bound as you are, it's kind of difficult to roll the dice.<br>
<br>
"@@.npc_rpg_warlock;Oh, I have just the thing!@@" She states with a smile, producing a butt plug... that happens to have a D20 contained in a clear bubble at its base.<br>
<br>
"@@.npc_rpg_warlock;Bend over!@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_2_active' 'Play along.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_6_2_passive' 'Refuse.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: actively prepare for final battle
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num] = true>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<set $scene.lockedPlug = false>>
<<if $scene.plug != "">>
<<set $scene.lockedPlug = setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
<</if>>
<<if !$scene.lockedPlug && setup.checkItemTypeWorn("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<if setup.getTotalValue("anal") > setup.getItemObj("dice_anal_plug").effect.anal.level>>
<<set $scene.dice_plug = "dice_anal_jumbo_plug">>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('dice_plugs')>>
<<else>>
<<set $scene.dice_plug = "dice_anal_plug">>
<</if>>
<<addItem $scene.dice_plug>>
<<if !$scene.lockedPlug>>
<<wearItem $scene.dice_plug true>>
<</if>>
<<if $scene.plug != "">>
<<set $scene.sizedelta = setup.getItemObj($scene.dice_plug).effect.anal.level - setup.getEffectivePlugSize()>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
Your new outfit makes Princess Leia in slave girl attire seem overdressed, especially as it seems to dissolve all other clothing save your stockings, leaving you lewdly exposed, your body swelling to almost cartoonish feminine proportions. Despite it all the magic imbued into it actually gives you a better armour class than most of the party, as well as strengthening your spellcasting as a whole.<br>
<br>
You IRL shake your head at this culmination of your magical girl transformation from burly half-orc mage to lovely feminine half-orc sexy sorceress.
<<case "elf_priestess">>
To "focus" the power of the ritual, you find yourself once again in Princess Hedina's bed. Of course this time, it is you on your back, bound in place for reasons you aren't totally sure are strictly required for the ritual, one end of a double dildo occupying your cunt whilst the other fills the court mage riding on top of you. <<=setup.getNpcName('npc_barista', 'character')>> "reprises" her role with her delicate elven cock resting between your lips.<br>
<br>
Breathless with desire, the sorceress rides you while chanting louder and louder. The magic swells until, just as you orgasm, you receive a vision of the Princess' plans.<br>
<br>
Standing atop the tallest ziggurat you have ever seen, the Princess appears to be preparing a ritual. A regally dressed woman who you guess must be the Pharaoh Kyassia is bound and gagged atop an altar, a magical storm swirling as the Princess chants, her eyes glowing with demonic power.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
As <<=setup.getNpcName('npc_technician', 'first')>> describes your in-game "vision," you find yourself fantasising further about the ritual itself, how wonderful it would feel to submit to such a thing in real life, to taste <<=ps(setup.getNpcName('npc_barista', 'character'))>> delicious cock while you savour the shared intimacy of double penetration, writhing in pinned, submissive joy as you imagine re-enacting such in real life, perhaps mixing things up with your lips wrapped around <<=setup.getNpcName('npc_technician', 'first')>> while you share a dildo with the bubbly <<=setup.getNpcName('npc_barista', 'first')>>... caught up in the fantasy, your hands reach out to jerk off <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_rpg_dude', 'first')>> both, the game forgotten as things descend into a <<if $fetish.sissy>>sissy<<else>>cute<</if>> gang-bang orgy...<br>
<br>
With a jolt, you return to reality, blushing as <<=setup.getNpcName('npc_technician', 'first')>> concludes her narration, hoping nobody noticed your momentary distraction.
<</if>>
The vision ends and the sorceress slides off of you, gasping as she tries to recover.<br>
<br>
"@@.generic_female1;You must stop her! I do not know what evil thing has possessed my lady, but if she sacrifices the Pharaoh... the results could be calamitous!@@"
<<case "bard">>
Announcing your intent to use bardic lore, you crush the initial roll with a crit and then a high success for the follow-up.<br>
<br>
"@@.npc_barista;Wow, way to beat the odds. There's less than a three and a half percent chance of nailing a bardic knowledge check to that degree!@@"<br>
<br>
Rolling your eyes, you look towards <<=setup.getNpcName('npc_technician', 'first')>> along with the rest of the party.<br>
<br>
"@@.npc_technician;Okay, so you remember a legend of a great demon that was defeated by the first Pharaoh of Khmet. A great and power sorceress, she yet could not destroy the evil being, instead imprisoning it in a far away land deep, deep in the earth.@@"<br>
<br>
"@@.npc_technician;Still in the room as you relay this story to the party, the magician speaks up. "So, uh... I didn't realise this was relevant before but... about six months ago, right before her parents died, the princess was part of a delegation to the dwarves. While there, she visited one of their newest, deepest mine that had uncovered an unprecedented vein of so-called demons-blood iron..."@@"<br>
<br>
"@@.npc_rpg_warlock;If we're going up against an ancient demon lord...@@"<br>
<br>
"@@.npc_rpg_dude;This shit gonna be epic!@@"<br>
<br>
The pair of them grin, even <<=setup.getNpcName('npc_maid', 'first')>> getting in on the enthusiasm as the party makes plans and works to gather as much of an army as they can to head towards the confrontation in Khmet.
<<case "druid">>
With <<=setup.getNpcName('npc_rpg_warlock', 'character')>> establishing a telepathic link, you soar high above your makeshift army, carefully guiding your forces to evade patrols as you sneak across the border and sprint for the capital.
<<case "succubus">>
<<if $scene.lockedPlug>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> checks your rear, giving your plug a slight wiggle and patting you on the bum.<br>
<br>
"@@.npc_technician;Locked full! My, my, my. Well, You can have this as a gift in any case.@@" She states, handing you the die-incorporating plug.
<<elseif $scene.plug != "">>
Exposing your bottom, you moan softly as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> gives your current occupant a little wiggle before sliding it out and replacing it with its
<<if $scene.sizedelta > 5>>
massively smaller
<<elseif $scene.sizedelta > 3>>
much larger
<<elseif $scene.sizedelta > 0>>
slightly larger
<<elseif $scene.sizedelta < 0>>
slightly smaller
<<elseif $scene.sizedelta < -3>>
much smaller
<<elseif $scene.sizedelta < -5>>
massively smaller
<<else>>
identically sized
<</if>>
replacement.<br>
<br>
<<if setup.getItemObj("dice_anal_plug").effect.anal.level >= setup.getTotalValue("anal")>>
You gasp and pant, scarcely believing you managed to take something so large, very tenderly sitting back on your haunches as <<=setup.getNpcName('npc_rpg_warlock', 'first')>> coos congratulations into your ear.
<<else>>
You take a deep breath as you adjust to your new anal occupant, the weight of it a bit odd as it seems to want to wiggle almost on its own. Settling back you smile up at <<=setup.getNpcName('npc_rpg_warlock', 'first')>> to let her know everything is okay.
<</if>>
<<else>>
You expose your bottom and let out a little gasp as the plug slips into your rear, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> gives it a little wiggle before pulling on your leash to guide you back to your knees.
<</if>>
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_6_3' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: wallflower your way through the session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage" "elf_priestess">>
Though you turn down the court magician's initial offer of magical assistance she helps the party gather some additional forces before accompanying you as you head back towards the unknown of Khmet.<br>
<br>
At the border the magician lends her aid a final time, channeling a spell to allow you to sneak across before being forced to stay back and recover as you and the rest of your forces race across the desert sands towards the capital.
<<case "bard" "druid" "succubus">>
After gearing up and assembling what army you can, the party and the court magician head for the border once again and whatever unknown dangers lure at the heart of the kingdom of Khmet.<br>
<br>
At the border the magician lends her aid a final time, channeling a spell to allow you to sneak across before being forced to stay back and recover as you and the rest of your forces race across the desert sands towards the capital.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_6_3' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: finish up session, psyched for final fight next session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num]>>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You help the rest of the party gather supplies and even rally together a mix of mercenary and other forces before you set out towards Khmet.<br>
<br>
With the aid of your "armour," you cross the border unmolested, wending through the dunes until you reach the castle. Looking up to the top of the great ziggurat, you can see a magical storm gathering, whatever the princess has planned, it is in progress. Unfortunately, this close to the Pharaoh's seat of power, your shrouding spell falters and fades, and you look up the great steps of the ziggurat at an army of mummies, demons and other foul creatures charging forth.
<<case "elf_priestess">>
With the court magician's aid, you gather what forces are left before using the bond between yourself and the princess to teleport directly to the base of the ziggurat from your vision.<br>
<br>
Transported to the hot, arid capital of Khmet, you barely have time to look around before a horde of mummies, demons and other foul creatures charges down the ziggurat steps towards your army.
<<case "bard">>
Against the odds, you concoct a plan to disguise your forces as a traveling circus, somehow managing to bluff and bribe your way past the border before making a bee-line for the capital.<br>
<br>
The city itself eerily empty, you head for the great ziggurat, the ominous magical cloud shrouding its top more than sufficient to tell you where you need to go.<br>
<br>
About to ascend the great steps of the ziggurat, an army of mummies, demons and other foul creatures, suddenly appears out of the mists above, charging down towards your forces.
<<case "druid">>
The skies over the capital are thick with magic and you return to the ground, the city eerily empty of civilians as you head for the great ziggurat.<br>
<br>
You look up the steps at the dark stormy cloud of magic enveloping the top as a horde of mummies, demons and other foul creatures charges down towards you.
<<case "succubus">>
Making your way towards the border, you pause just out of range of the arrayed enemy forces.<br>
<br>
At the centre of a ritual performed by <<=setup.getNpcName('npc_rpg_warlock', 'character')>> and the court wizard in concert, you feel power as never before flowing into you, using your seductive powers to sculpt it, shape it, and focus it.<br>
<br>
"@@.npc_rpg_dude;Twerk it, baby!@@" <<He npc_rpg_dude>> states, deepening <<his npc_rpg_dude>> voice as much as <<he npc_rpg_dude>> can to mimic a churlish old video game character and you bend forward, sticking your ass in the air and jiggling it around for a few moments until <<=setup.getNpcName('npc_rpg_warlock', 'character')>> squeezes both cheeks to hold you still.<br>
<br>
"@@.npc_rpg_warlock;Perfect crit! That's my girl!@@" She announces with glee, giving your bum a friendly squeeze<<if $player.body_ref.penis>>, but being careful not to reach down to that perky, sensitive bit dangling below<</if>>.<br>
<br>
"@@.npc_technician;Alright, your spell is a success. A cloud of seductive energy glides over the enemy army. Nearly to a person, they succumb to the urges of lust, a great, messy orgasm of flesh, the once intimidating army descending into the largest orgy you've ever seen. Leaving them to their "fun" you hurry on through on your way to the capital.@@"<br>
<br>
The rest of your trip passing surprisingly unmolested, you find the capital eerily empty, an ominous storm of dark magic swirling atop the great ziggurat that is your obvious destination. Reaching the foot of the ziggurat, you look up the steps as a horde of mummies, demons and other foul creatures charges down towards you.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<<else>>
Through a mix of luck and cleverness the party manages to make it to the base of the great ziggurat of Khmet, but as you look up the steep steps a horde of mummies, demons and other foul creatures charges down towards you.
<</if>>
<br><br>
Your army breaks off to clear the way through the swarm of foes, opening a path for you and your fellow adventurers to charge up the ziggurat.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_7' 'Continue.' $scene.stepLength>>]
<<else>>
"@@.npc_technician;Alright everybody, I think we're going to have to cut it here. Next week will be the final battle to decide the fate of two kingdoms and, perhaps... the world!@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
After helping you out of your restraints
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num]>>
and leaving the plug inside your rear as a "reward"
<</if>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> gives you a pat on the head, thanking you for being her pet for the evening.<br>
<br>
<</if>>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: arrive/start 7th campaign session (final battle)
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 6>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
The group shares a few encouraging words as the stage is set for this so-called "final battle." <br>
<br>
"@@.npc_technician;Though it is mid-day, the cloud atop the ziggurat has cast a dark shadow across the city. The air smells of rot and incense and magic, the sound of battle already fierce as your allies fight against the swarm of mummies and demons that have descended the ziggurat to defend against your interference.@@"<br>
<br>
"@@.npc_technician;Fighting your way to the top, you find yourself looking across a large stone stage. Princess Hedina floats in mid-air, tendrils of magic leading from her chanting figure up into the storm, her body pulsing with demonic power. Her voice is deep and unearthly, the sound of a thousand souls being tortured groaning in agony.@@"<br>
<br>
"@@.npc_technician;Before her lies the Pharaoh Kyassia, the beautiful god-queen stripped bare and lashed to an altar. Her eyes are wide with fear, but she is unable to so much as speak due to her gag.@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character == "elf_priestess" && $npc_technician.flags.rpg_campaign.session_actions.current_session[5]>>
"@@.npc_technician;The scene is just as it was in your vision, and you shiver slightly at the sense of deja vu.@@"<br>
<br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
"@@.npc_technician;In an ancient, powerful demonic tongue. she commands her royal guard of catgirl warriors to "destroy the interlopers!" before turning back to her ritual@@"
<<elseif $npc_technician.flags.rpg_campaign.character == "bard">>
"@@.npc_technician;Your polyglot... or is that cunning linguistic? Bardic training allows you to identify her speech as an ancient form of high demonic. "Destroy the interlopers." She commands her royal guard of catgirl warriors before turning back to her ritual.@@"
<<else>>
"@@.npc_technician;Noticing your presence, the Princess speaks to you in a guttural tongue, her demon-possessed royal catgirl guard marching towards you, weapons drawn.@@"
<</if>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_7_1' "Time to fight." $scene.stepLength>>]
</div>/*#
#desc: choose how to fight final battle
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
<<addItem "rpg_succubus_pentagram_harness">>
<<wearItem "rpg_succubus_pentagram_harness" true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
The air crackles with magic, so much power arcing about that you can draw upon it as easily as your foe. Leaving the rest of the party to deal with the catgirls, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> squares up for a magician's duel with Princess Hedina.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'Join in on the battle of magic.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_3_passive' 'Let the two of them fight it out alone.' $scene.stepLength>>]
<<case "elf_priestess">>
The party and the catgirls appear evenly matched, but perhaps you could use your connection to the princess to help her cast out the demonic force possessing her?<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'By the power of heart!' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_3_passive' 'Just stick to healing the party.' $scene.stepLength>>]
<<case "bard">>
A magical battle against a demon-possessed princess and her catgirl army atop a giant ziggurat... you're already in an album cover, now it's time to make good with the live show of a lifetime...<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'Take your spot centre stage and rock the fuck out.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_3_passive' 'Stick to backup guitar and just buff the rest of the party.' $scene.stepLength>>]
<<case "druid">>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[2]>>
Catgirls... again, you stiffen in excitement at the sight of the harem you previously enjoyed, their demonic-possessed eyes showing no recognition, perhaps you should reintroduce them to your cock...
<<else>>
Catgirls... you stiffen in excitement at the sight, feeling the urge to fuck the demonic presence out of them rising...
<</if>>
<br><br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'Rage and fuck some sense into the cadre of catgirls.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_3_passive' "Don't over-extend yourself." $scene.stepLength>>]
<<case "succubus">>
Standing with the party against your demon-possessed foes, you're about to roll initiative when <<=setup.getNpcName('npc_rpg_warlock', 'character')>> calls for a time-out. She reaches into her bag of restraints a final time.<br>
<br>
"@@.npc_rpg_warlock;Oh, I found something special for you!@@" She states as she reaches around you from behind and drapes something over your chest.<br>
<br>
She cinches buckles under your arms and over your shoulders and you're forced to (carefully) rise and check a mirror to check out your latest addition.<br>
<br>
A studded leather harness drapes over your upper chest, the straps criss-crossing to form an inverted pentagram.<br>
<br>
"@@.npc_barista;So hawt!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> states as the rest of the room nods in agreement. Carefully returning to your position bound and kneeling at <<=ps(setup.getNpcName('npc_rpg_warlock', 'character'))>> feet you blush and get ready to play.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_succubus' 'Continue.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: succubus pre-action fighting in final battle
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Reveling in the magical storm of the ritual, you draw on the demonic energies. With a howl of lust and rage you rush forth in attack.<br>
<br>
Dodging your first attack, the demonic Princess growls in rage, but you all but laugh off the retaliatory strikes. The two of you clash back and forth to no real effect until it roars and assumes its full demonic form.<br>
<br>
"@@.npc_technician;"Why do you fight against your own kind?" It asks in demonic before conjuring a sphere of magical power and unleashing it at you.@@"<br>
<br>
You whiff the roll to dodge and it bursts, enveloping you in infernal flame.<br>
<br>
"@@.npc_technician;Okay, the spell doesn't harm you, per se. You are a creature of the lower realms, after all. It does, however, overload your restraints. Whatever hold <<=setup.getNpcName('npc_rpg_warlock', 'character')>> had over you is no more and you are free to act as thou will.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_2_active' 'Continue your assault on the demon.' $scene.stepLength>>]<br>
[<<moveTo 'event_rpg_campaign_session_7_2_passive' 'Turn against the party.' $scene.stepLength>>]
</div>/*#
#desc: make a difference in the final battle
#status: FINISHED 0.5.0.0
#ignore_spell: magicks
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy[$npc_technician.flags.rpg_campaign.character][$scene.session_num] = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.current_session[$scene.session_num] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
You shoot off a quick overloaded AOE sleep spell at the catgirls but their demonic empowerment proves enough to protect all save one unlucky crit-botch of a saving throw from going out. Even resisted, it applies a debuff to their attack that should help the rest of the party.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> and the Princess are already locked in a battle of infernal magicks and you add your power to the fray, siphoning mana from the swirling clouds around you to drain the ritual.<br>
<br>
Hedina screams with rage, lashing out with demonic power to send the both of you tumbling across the top of the ziggurat.<br>
<br>
Reaching out, you barely catch <<=setup.getNpcName('npc_rpg_warlock', 'character')>> from taking the long fall down the side of the ziggurat pulling her to safety as she tries to recover from the strain of channeling so much magic.<br>
<br>
The princess turns back to her ritual and you shoot off another sleep spell targeting the princess directly. The spell splashes over her, dissipating to no effect save to draw her attention.<br>
<br>
"@@.npc_technician;She speaks, words of english twisting unnaturally as they are spoken in her deep, demonic tongue. "Silly mage, I have slept for ages and now it is my time again!"@@"<br>
<br>
You barely evade another spell, the demon just too powerful except. You glance at the thick column of magic flowing out of the Pharaoh. Perhaps...<br>
<br>
Sprinting past the Princess, you dive into the central stream of magic, gasping at the sudden influx of power. Your first awkward spell still packs enough punch to drive back the demon-possessed Princess but you feel your control slipping until <<=setup.getNpcName('npc_rpg_warlock', 'character')>> manages to crawl into position below you, reaching from the Pharaoh to yourself, the anchor of their power lending you focus as you get ready for your next attack.<br>
<br>
Burning with demonic fire, the Princess is almost invisible at the centre of a demonic spectre. With a high-pitched cry, you unleash your greatest spell yet.<br>
<br>
Channelled through your body, the demonic power takes on a brilliant light. Burning away the demonic presence as it screams, its form contorting in rage.<br>
<br>
You channel even more forcefully, pulling the demon towards you to pump more power into it, forcing the infernal essence out from the Princess's body. With a bloodcurdling final cry the demon is banished as the last dregs of power simmer inside of you.<br>
<br>
"@@.npc_technician;You have temporarily absorbed a portion of the demon's power, its skill at form manipulation latching onto you and granting you the opportunity to permanently alter your shape...@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Retain your present hyper-girlish orc form.' $scene.stepLength "<<set $scene.form='female_extreme'>>">>]<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Revert to your original burly male orcness.' $scene.stepLength "<<set $scene.form='male'>>">>]<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Remain feminine, but scale back from the anime-level exaggeration of your current figure.' $scene.stepLength "<<set $scene.form='female'>>">>]
<<case "elf_priestess">>
Shouting into the storm, you try to reach out to the Princess, begging her to remember who she is, that she is a good person who loves the Pharaoh and that she can fight against the demon possessing her.<br>
<br>
At first your efforts are ignored as the Princess/demon focuses on a magical contest of infernal power with <<=setup.getNpcName('npc_rpg_warlock', 'character')>>. Then, suddenly, there is a shift. One of <<=ps(setup.getNpcName('npc_rpg_warlock', 'character'))>> spells slips through to cause the demon to cry out and knock the warlock aside with a powerful strike before turning on you in a rage.<br>
<br>
"@@.npc_technician;The demon princess looms above you, dark and angered, tendrils extending from her body to wrap your wrists and ankles and pull you into the air. In a voice of a thousand tortured souls it speaks to you.@@"<br>
<br>
"@@.npc_technician_dom;You would speak to me of love? You, the gods' whore? I have known your body once when I was still weak and in hiding, but now... now I am free and I will make you feel what it is to be fucked by a demon lord!@@"<br>
<br>
"@@.npc_technician;You gasp as additional tendrils lash out. Ephemeral in appearance, they fill you wide and deep, plunging into all three of your holes while their thinner brothers fondle your breasts and clit. You feel your first orgasm swiftly approaching, but you ride it, pouring the energy back into your "foe" as the demon suddenly looks alarmed.@@"<br>
<br>
"@@.npc_technician;"What, no? What is this power!?" The demon cries out as you continue to cum. You reach out to mentally join with the Princess, strengthening her will as she psychically battles against her possessor.@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> rises back to her feet, staggering to the altar and adding the power of herself and the Pharaoh to your own. With a final cry the demon is cast out of its host, attempting to flee into the storm only for <<=setup.getNpcName('npc_maid', 'character')>> to leap towards it with a mighty blow.<br>
<br>
"@@.npc_technician;Hacked in twain by <<=setup.getNpcName('npc_maid', 'character')>>, the demon cries its last as the princess collapses like a puppet with its strings cut.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'See if the princess is alright.' $scene.stepLength>>]
<<case "bard">>
Magical lightning flashes through the air, striking your "axe" and turning your set electric. Like a slow motion music video the party falls upon the demonic princess, catgirls tossed left and right as you disrupt the ritual.<br>
<br>
Letting out a frustrated roar, the demon manifests its true form, but it is for naught. With you and <<=setup.getNpcName('npc_barista', 'character')>> acting as high-octane cheerleaders, <<=setup.getNpcName('npc_maid', 'character')>> strikes true, a mighty blow fuelled by rage and her divine blood to banish the demon for all time.<br>
<br>
The princess stands for a moment, wobbles, and then slumps to the ground as the magical tempest dissipates to reveal the desert sun far above.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'See if the princess is alright.' $scene.stepLength>>]
<<case "druid">>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[2]>>
Though they are possessed, and you are in a different form than your prior meeting, there is a primal connection that has the catgirls recognising you as you charge forth.
<</if>>
<br><br>
You tell the rest of the party that you've got it, leaving them to take on the demon-possessed princess together while you deal with the so-called "royal guards." <br>
<br>
Tackling one guard to the ground, you mount her with a single thrust, your cock sending her into a paroxysm of pleasure that see's her gaze flicker and then revert to normal, the demonic presence flushed clear.<br>
<br>
Battling back against her still-possessed sisters, you give her a few more thrusts for good measure before letting her up. Staggering a bit, she stands with you, imploring her sisters to surrender as you move to your next "target/victim." <br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Keep pressing the "attack."' $scene.stepLength>>]
<<case "succubus">>
"@@.pc;This is MY WORLD!@@" you cry out in demonic as you rejoin the fight, lashing out with claw and tooth and horn, cutting deeply into the demon's half-spectral form.<br>
<br>
Piling on with your assault, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> lends her spells and <<=setup.getNpcName('npc_maid', 'character')>> her axe. The demon is all but finished, teetering on the edge of the platform.<br>
<br>
You leap onto its shoulders, grabbing its head with both hands, giving a twist, and ripping it clean off with a cry, leaping free as the corpse tumbles down the side of the ziggurat.<br>
<br>
Looking about, you note the demonic presence fading from the catgirls, the princess' body slumped next to the altar.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> looks at you with a bit of nervous concern, scorched restraints no longer restricting your powers in any way.<br>
<br>
"@@.npc_rpg_warlock;You, you okay?@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_3_active' 'Nod.' $scene.stepLength>>]
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
</div>/*#
#desc: wallflower your way through the final battle
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.character == "succubus">>
Working together with the possessed princess, you easily rout the rest of the party, killing <<=setup.getNpcName('npc_rpg_warlock', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>>, before subduing <<=setup.getNpcName('npc_barista', 'character')>> and sending <<=setup.getNpcName('npc_rpg_dude', 'character')>> fleeing down the ziggurat.<br>
<br>
Unimpeded the "princess" completes the ritual, draining the Pharaoh of her powers and ushering in a new dark age of hellish destruction, with you as her right hand demon queen.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_7_bad_end' 'Continue.' $scene.stepLength>>]
<<else>>
ERROR: unexpected state
<</if>>
</div>/*#
#desc: finish up session if you were active in the fight
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
With the demon's defeat, the catgirls stop fighting, looking around in confusion as they try to figure out where they are.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "orc_mage">>
With a final flash of magic, you tumble to the ground, landing in a pile, exhausted from the battle.<br>
<br>
<<=setup.getNpcName('npc_maid', 'character')>> is the first to reach you, helping you to your feet.<br>
<br>
<<switch $scene.form>>
<<case "female">>
Still quite scantily dressed in the Princess' "armour," you are a normal, though cute, female half-orc.
<<if setup.getTotalValue("feminization") > 10>>
You can't help but compare your in-game journey of feminisation to the one you have undergone in real life, hoping, and simultaneously knowing, that it will certainly come to just as delightful of a conclusion.
<</if>>
<<case "male">>
Though still quite scantily dressed in the Princess' "armour" you are once again a large, male half-orc.
<<if setup.getTotalValue("feminization") > 15>>
No sooner have you made your choice, but you regret it. Even in the "safe" fantasy world the idea of being male seems disgusting, you are a girl! and your instinctual revulsion at the thought of the alternative proves it.<br>
<br>
<<elseif setup.getTotalValue("feminization") > 10>>
Going "back" to being male feels odd, even in fantasy.<br>
<br>
<<printThought "Maybe I am better off as a woman? I guess I didn't have all that much choice at first but... I've really come out of my shell and my life is better in so many ways since I've embraced the process...">><br>
<br>
<<elseif setup.getTotalValue("feminization") > 5>>
For some reason the fantasy of going "back" strikes you as odd.<br>
<br>
<<printThought "I'd rather be a girl? No, why would I think that? I'm a boy, in game and in real life!... right?">><br>
<br>
You find yourself feeling even odder at your lack of confidence in your mental assertation.
<</if>>
<<case "female_extreme">>
You rise the same as you fell, a scantily clad buxom half-orc female.
<<if setup.getTotalValue("feminization") > 10 && setup.getTotalValue("bimbofication") > 10>>
You can't help but smile at the description of your asserted bimbo-tastic form.<br>
<br>
<<printThought "Mmmm, I wanna be this much of a lascivious slut IRL too, yay!">>
<<elseif setup.getTotalValue("feminization") < 10>>
The idea of willingly remaining such an extreme caricature of femininity sends weird feelings through your body.<br>
<br>
<<printThought "It's just a game, this doesn't mean anything about real life or anything...">>
<</if>>
<<default>>
ERROR: unknown form: <<=$scene.form>>
<</switch>>
<<case "elf_priestess">>
Rushing to the princess' side, your heart swells as her eyelids flutter open. She leans up to kiss you and then falls back with a contented smile on her face as she passes out.
<<case "bard">>
With bardic swiftness, you are the first to reach the princess' side as the rest of the party scatters to attend to the Pharaoh and the fallen catgirls.
<<case "druid">>
Your retinue of recovered catgirls grows steadily as the party finishes dealing with the demon-possessed princess.<br>
<br>
<<if setup.getTotalValue("bestiality") > 15>>
For purposes of game speed and decorum the details may be brushed over, but in your minds eye you picture each catgirl in turn, their lithe bodies folded and fucked by your powerful bear gasping as they are spread wide around your thick cock, grunting and imagining yourself on both sides of the equation — fucker and fuckee, plowing and plowed with unending animalistic lust, wishing that humans had baculum's, knots, prehensile cocks and all the other wonders of the animal kingdom.<br>
<br>
Caught up in fantasies of your side battle you only just manage to re-focus on the game as things come to a climactic finish.
<</if>>
Resorting to its full infernal form, the demon makes a final stand only to be brought down by a rage and angelic powered blow from <<=setup.getNpcName('npc_maid', 'character')>>, <<=setup.getNpcName('npc_rpg_warlock', 'character')>> severing the beast's head completely for good measure before shoving the corpse off the side of the ziggurat.<br>
<br>
Free of the demon's grasp, the princess slumps to the ground, the final few catgirls blinking in surprise as the demonic influence subsides and the tempestuous magical storm dissipates before the light of the high desert sun.
<<case "succubus">>
"@@.pc;More than okay... mistress@@" you reply before launching into battle. Wings spread, claws out you meet the princess in mid-air, infernal might clashing with infernal might.<br>
<br>
Bolstered by <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> spells, you start winning, tentacle-like tendrils reaching out to bind the princess, ripping whole chunks of ephemeral demonic essence from her body, scouring her in and out until not a trace of the ancient presence remains.<br>
<br>
Gliding back down to the ground on a pillar of infernal magic, you catch the princess as she finally falls, the storm dissipating above as a ray of desert sunlight streams down to lend a strange, angelic aura to the scene.
<<default>>
ERROR, unknown character: <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
It takes a few minutes to free the Pharaoh, explain the situation to the nervous catgirls and revive the fainted princess but finally you get everyone on the same page as the Princess and the Pharaoh cuddle sweetly in one another's grasp and explain what happened.<br>
<br>
[<<moveTo 'event_rpg_post_session_7' 'Listen to their tale.' $scene.stepLength>>]
</div>/*#
#desc: finish up session if you were passive in the fight
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
With you providing minor support the party splits into two groups to deal with the enemy.<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'character')>> and <<=setup.getNpcName('npc_maid', 'character')>> go straight for the princess, a mix of infernal and celestial powers clashing amidst the rage of <<=ps(setup.getNpcName('npc_rpg_warlock', 'character'))>> blows as the demon is forced to assume its full, horrifying form.<br>
<br>
With support from yourself and <<=setup.getNpcName('npc_barista', 'character')>>, <<=setup.getNpcName('npc_rpg_dude', 'character')>> keeps the catgirl guards at bay, holding back from permanently harming them in light of their present possessed state.<br>
<br>
With a final potent strike <<=setup.getNpcName('npc_maid', 'character')>> fells the demon, the creature letting out an evil cry as its battered corpse tumbles down the side of the ziggurat. The catgirls blink in surprise, some even fainting in shock as the possessing force releases its grasp, the tempestuous sky clearing to give way to the high desert sun.<br>
<br>
It takes a few minutes to free the Pharaoh, explain the situation to the nervous catgirls and revive the pass-ed out princess, but finally you get everyone on the same page as the Princess and the Pharaoh, cuddled sweetly in one another's grasp, explain what happened.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
[<<moveTo 'event_rpg_campaign_rerun_post' 'Continue.' $scene.stepLength>>]
<<else>>
[<<moveTo 'event_rpg_post_session_7' 'Listen to their tale.' $scene.stepLength>>]
<</if>>
</div>/*#
#desc: end of session for first campaign
#status: FINISHED 0.5.0.0
#ignore_spell: 3d,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addRPGSessionTask">>
<<if $npc_technician.flags.rpg_campaign.character == "succubus" && $npc_technician.relationship.relationship_stage == 0>>
<<include "remove_succubus_items">>
<<if $npc_technician.flags.rpg_campaign.session_actions.current_session[6] && $scene.collared == "locked">>
<<addItem "rpg_succubus_collar">>
<</if>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_20'
7
'event_psychiatrist_theme_rpg_finish'
false
>>
<<set $scene.alreadyOwn=false>>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "succubus">>
<<if!$scene.bad_end && !setup.checkItemWorn("rpg_succubus_collar")>>
<<addItem "rpg_succubus_collar">>
<</if>>
<<if $workEvents.hasOwnProperty("event_technician_key_request")>>
<<include "remove_succubus_items">>
<</if>>
<<case "orc_mage">>
<<if setup.checkItemOwned("tiara_sissy")>>
<<set $scene.alreadyOwn=true>>
<<else>>
<<addItem "tiara_sissy">>
<<wearItem "tiara_sissy" true>>
<</if>>
<<case "elf_priestess">>
<<if setup.checkItemOwned("elfen_robe")>>
<<set $scene.alreadyOwn=true>>
<<else>>
<<addItem "elfen_robe">>
<</if>>
<<case "bard">>
<<if setup.checkItemOwned("metal_tshirt")>>
<<set $scene.alreadyOwn=true>>
<<else>>
<<addItem "metal_tshirt">>
<</if>>
<<case "druid">>
<<if setup.checkItemOwned("dragon_dildo")>>
<<set $scene.alreadyOwn=true>>
<<else>>
<<addItem "dragon_dildo">>
<</if>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('dragon_dildo')>>
<</switch>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You all sit back as <<=setup.getNpcName('npc_technician', 'first')>> spins a tale of a young princess in love with a Pharaoh. Eagerly awaiting her engagement, things start going wrong when she stumbled upon the resting place of an ancient demon whilst on a diplomatic mission.<br>
<br>
The possession growing slowly, the demon recognised the Pharaoh as a descendant of the ancient mage who had imprisoned it so long ago, conspiring to murder the Princess' parents and destroy the planned engagement.<br>
<br>
Attempting to fight back against the demon, the Princess had purposefully poisoned herself with a draught said to have been first brewed by the ancient Pharaoh herself. Unfortunately, though she was eventually cured, the blame fell upon her beloved. With suspicion deflected, the demon slew the regent installed as the Princess' protector and set forth to enact his plan to get revenge on his ancient foe and usher in a new age of hellish destruction.<br>
<br>
"@@.npc_technician;So, congratulations@@" she states, bringing the tale to an end, "@@.npc_technician;You saved the world... and I guess got a bunch of XP.@@"<br>
<br>
"@@.npc_rpg_warlock;Sweet, the part that REALLY matters!@@"<br>
<br>
Everyone laughs before breaking into reminiscing about the campaign.<br>
<br>
<<switch setup.calcSessionParticipation($npc_technician.flags.rpg_campaign.session_actions.current_session)>>
<<case 7>>
Particular focus is put on you, congratulating you for taking a constant active role throughout the campaign.<br>
<br>
"@@.npc_rpg_dude;Yeah, great job, I'm glad you joined the group, it made things even more fun.@@"<br>
<br>
"@@.npc_barista;Yeah, totally! Plus you're real easy on the eyes looking across the table!@@"
<<case 3 4 5 6>>
You show up more than once in the "highlight reel," congratulated for coming up to speed and taking an active role in the arc of the campaign.<br>
<br>
"@@.npc_maid;For a new player you did a great job, now you can build even further in the next campaign.@@"<br>
<br>
"@@.npc_barista;Yeah, totally! Games go best when everyone gets done! I mean, does things!@@"
<<case 0 1 2>>
Your actions don't really show up in the "highlight reel," but that's okay, you had fun watching the rest of them play, though they are all quite encouraging for you to "come out of your shell" in the future.<br>
<br>
"@@.npc_rpg_dude;Sorry if we were intimidating or anything, I mean we've been playing together for a while, but we'd love it if you stepped up and took a more active role in the future.@@"<br>
<br>
"@@.npc_maid;Yeah, the game is the most fun when everyone is playing their part, it's a role playing GROUP, which means we're a team.@@"
<<default>>
ERROR: unexpected participation: <<=setup.calcSessionParticipation($npc_technician.flags.rpg_campaign.session_actions.current_session)>>
<</switch>>
<br><br>
<<if $scene.alreadyOwn>>
The campaign concluded your friends busy themselves with packing up to leave, and soon it is just you and <<=setup.getNpcName('npc_technician', 'first')>>.
<<else>>
<<switch $npc_technician.flags.rpg_campaign.character>>
<<case "succubus">>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<if $workEvents.hasOwnProperty("event_technician_key_request")>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> helps you out of most of your restraints and rises to leave.
<<else>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> starts to help you out of your restraints only for <<=setup.getNpcName('npc_technician', 'first')>> to stop her with a devious smile.<br>
<br>
"@@.npc_technician;Actually, I'd like to borrow those, if you wouldn't mind?@@"<br>
<br>
"@@.npc_rpg_warlock;Of course! I mean, what's the point of having a succubus for a girlfriend if you can't play with her?@@" She states with a grin, cinching a buckle closed before turning back to you. "@@.npc_rpg_warlock;You lucky girl.@@" She whispers in your ear before giving you a peck on the cheek and heading out with her <<boy npc_rpg_dude>>friend.<br>
<br>
"@@.npc_technician;Exactly!@@" <<=setup.getNpcName('npc_technician', 'first')>> replies, licking her lips as she takes control of your leash. You tremble in anticipation. Seems like your night has only begun...
<</if>>
<br><br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> is almost to the door when she glances back with a slight smile.
<<if $scene.bad_end>>
"@@.npc_rpg_warlock;Oh, and... <<=$player.first_name>>? You can keep the harness... I think it's appropriate given your devilish behaviour tonight, hmm?@@"
<<elseif setup.checkItemWorn("rpg_succubus_collar")>>
"@@.npc_rpg_warlock;Actually... <<=$player.first_name>> can keep the collar, I think she's earned it after serving so hard all campaign...@@"
<<else>>
"@@.npc_rpg_warlock;So I know you're already collared, but as a trophy of the campaign...@@" She hands you the leather succubus collar with a wink.
<</if>>
<<else>>
<<if $scene.bad_end>>
Helping you out of your restraints, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> pauses when she gets to the pentagram harness. "@@.npc_rpg_warlock;Hmm, actually I think the "demon queen" ought to keep this. While I like a nice obedient slave seeing you come into your own like that well... that was fun too!@@"
<<else>>
<<if $scene.collared != "locked">>
Helping you out of your restraints, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> stops at your collar. "@@.npc_rpg_warlock;Hmm, I think you've earned the right to keep this... just don't count it as me collaring you. I already have enough to handle with one slave!@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> feigns innocence as she gives <<him npc_rpg_dude>> a playful slap on the bum that turns into a more lingering caress.
<<else>>
Helping you out of your restraints, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> pauses and smiles slightly as she hands you a collar that matches the succubus ensemble. "@@.npc_rpg_warlock;Here, I know you couldn't wear it during the session due to already being locked and collared but... something to remember things by, eh? Just don't count it as me collaring you. I already have enough to handle with one slave!@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> feigns innocence as she gives <<him npc_rpg_dude>> a playful slap on the bum that turns into a more lingering caress.
<</if>>
<</if>>
<br><br>
Finishing packing up and saying their goodbyes you are soon alone with just you and <<=setup.getNpcName('npc_technician', 'first')>>.
<</if>>
<<case "orc_mage">>
You start to stand when <<=setup.getNpcName('npc_maid', 'first')>> pulls out a small box.<br>
<br>
"@@.npc_maid;So, reaching the end of the campaign, and all, well... I wanted to give you something. I mean, the way you took my character idea and ran with it, well... it was as fun to watch as I'm sure it was to play. Anyway, I thought this might be sort of appropriate, given how it all turned out.@@"<br>
<br>
You open the box to find a beautiful pink-jeweled tiara. "@@.npc_maid;They aren't real gems, of course, but one of <<=ps(setup.getNpcName('npc_technician', 'first'))>> cosplay contacts has a top-end 3d printer and, well... you can see how it turned out.@@"<br>
<br>
You grin and thank her for the present, the group cheering you on as you delicately place it atop your head.<br>
<br>
"@@.npc_maid;Fit for a princess!@@" <<=setup.getNpcName('npc_maid', 'first')>> calls out and you blush, sitting up a bit taller in what you hope is a somewhat regal manner and joking along with your friends as they finish packing up., soon leaving you alone with <<=setup.getNpcName('npc_technician', 'first')>>.
<<case "elf_priestess">>
You're starting to pack up when <<=setup.getNpcName('npc_rpg_dude', 'first')>> pulls out a large box. "@@.npc_rpg_dude;Hey, so... we wanted to get you something to celebrate making it through the campaign and all and, well... in celebration of your character choice...@@"<br>
<br>
You open the box to find a gorgeous green robe, holding it up to reveal that it's long, flowing... and more than a little revealing in a style very reminiscent of your character.<br>
<br>
"@@.npc_rpg_warlock;When we saw that robe online we just knew you had to have it. It's probably not appropriate for going to work or whatever, but I bet you'd have the sweetest dreams wearing it to bed!@@"<br>
<br>
You blush and thank them for the kind present as people finish packing up to leave.<br>
<br>
You put your gift away for later as it comes down to just you and <<=setup.getNpcName('npc_technician', 'first')>>.
<<case "bard">>
"@@.npc_technician;On a different note...@@" she reaches under her chair and comes up with some rolled up fabric, unfurling it to reveal a T-Shirt with a metal looking topless catgirl on it. "@@.npc_technician;So, pun very much intended — I thought you rocking your way through the campaign deserved an appropriate reward.@@"<br>
<br>
"@@.npc_technician;The band's called Angry Gay Sounds — they're pretty awesome in concert, plus well... awesome in general.@@"<br>
<br>
She tosses you the shirt as you realise the band logo is very similar to the one worn by <<=setup.getNpcName('npc_rpg_dude', 'first')>>. <<He npc_rpg_dude>> grins and throws up the double horns to match the image on <<his npc_rpg_dude>> shirt. "@@.npc_rpg_dude;Still waiting for them to go on tour again, they're hella fun live.@@"<br>
<br>
You thank <<=setup.getNpcName('npc_technician', 'first')>> for the gift as your other friends pack up, and soon it's just you and <<=setup.getNpcName('npc_technician', 'first')>> left.
<<case "druid">>
<<=setup.getNpcName('npc_barista', 'nickname')>> is all but bouncing in her seat and you finally ask her what's up?<br>
<br>
"@@.npc_barista;Sooooo, since you played through the campaign with the character I made for you I, like... wanted to give you a reward.@@"<br>
<br>
She digs into her bag and comes up with a dildo. A very large dildo. With a knot. And a flared tip. That is textured with scales. She slaps it on the table, the thick silicone column wobbling slightly while the large balls at the base keep it standing.<br>
<br>
"@@.npc_barista;I thought of getting you a bear since, like... but I saw this and it seemed WAY more fun. Oh and it has a cum tube and is pre-loaded with like a whole bunch of loads of instant cum. Just fill the balls with water and they'll make a creamy facsimile of yummy cummies.@@"<br>
<br>
You can barely tear your attention way from the magnificent dildo, your other friends looking on with amused expressions as you thank <<=setup.getNpcName('npc_barista', 'nickname')>> for the gift.<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> grins even wider, giving you a congratulatory hug as the rest of the group finishes packing up and saying their goodbyes. You put your new prize away for later as you find yourself alone with just you and <<=setup.getNpcName('npc_technician', 'first')>>.
<<default>>
ERROR; unexpected npc_technician.flags.rpg_campaign.character <<=$npc_technician.flags.rpg_campaign.character>>
<</switch>>
<br><br>
<</if>>
[<<moveTo 'event_rpg_post_mux' "Continue." 0>>]
</div>/*#
#desc: end of session for first campaign
#status: FINISHED 0.5.0.0
#ignore_spell: pc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bad_end=true>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_12'
7
'event_psychiatrist_theme_rpg_betrayal'
false
>>
<<include "addRPGSessionTask">>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[7] = true>>
<<if $npc_technician.flags.rpg_campaign.character == 'succubus' && $npc_technician.relationship.relationship_stage > 0 && !$scene.alreadyOwn && $scene.sessionId == "fantasy" && $npc_technician.flags.rpg_campaign.session >= 7 && !$workEvents.hasOwnProperty("event_technician_key_request")>>
<<else>>
<<include "remove_succubus_items">>
<<wearItem 'rpg_succubus_pentagram_harness' true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_rpg_warlock;So... uh, that was a campaign...@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> states as she quietly removes your restraints.<br>
<br>
"@@.npc_barista;I thought it was fun, and I get to be the demon queen's sex slave forever, yay!@@"<br>
<br>
You suddenly feel bad for turning on the party, but after a bit of initial grousing they all agree that the journey was still pretty fun, and hey, these things happen in game.<br>
<br>
"@@.npc_technician;Well, I guess that's it for now, I figure we'll do some one shots while I recharge and plan out the next campaign... maybe you'll all even survive that one!@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
"@@.npc_maid;Hah, a killer DM with her mole of a girlfriend in the party? I'm gonna be watching you two like a hawk from here on out!@@" Despite her harsh words, she smiles, letting you know it's just a joke.
<<else>>
"@@.npc_maid;Hah, only thing worse than a killer PC is a killer DM, but sure, I'll see y'all next week.@@" Though she seems a little annoyed she still grins, letting you know there aren't any hard feelings.
<</if>>
<br><br>
<<if setup.getTotalValue("humiliation") > 10>>
<<if $player.flags.humiliationStyle == "brazen">>
You should feel embarrassed at "ruining" the game and in a way you are, feeling a little guilty for betraying your friends... however those feelings are almost completely drowned out by depraved power fantasies. One at a time you imagine enslaving each of your fellow players.
<<else>>
You blush in shame at having "ruined" the game... even as you find your imagination spinning out of control. As much a slave of the demonic Princess as the rest of the party, you face an eternity of shame at your betrayal, the evil demon queen delighting in the anguish that results in you being forced to, personally, break every single one of your former companions.
<</if>>
<br><br>
The half-angelic <<=setup.getNpcName('npc_maid', 'character')>> is first, ensorcelled so as to be unable to cum whilst spit-roasted between two demons. Her breasts pierced and punished as she is flogged and fucked until every ounce of barbaric rage is replaced with desperate, obedient lust, a loyal soldier in your army, willing go to war against her heavenly brethren at your command.<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'character')>> is next, her undead form twisted and stretched into a gargantuan abomination, and then suspended and impaled on the cock of the great demonic dragon that is to be your war mount, her howls of rage serving as your battle cry as she is constantly fucked and pumped full of demonic seed.<br>
<br>
<<=setup.getNpcName('npc_barista', 'character')>>, on the other hand, is easy, seeming to delight in her enslavement even when she is forced to service an entire horde of demons at once. Her humanity slowly cracks and falls away until she is little more than a brainless receptacle for cum, lying at your feet, begging for more.<br>
<br>
Of special interest is <<=setup.getNpcName('npc_rpg_warlock', 'character')>>; as punishment for enslaving you, she bears the full brunt of your diabolic attention; her mind kept whole as an observer as her body is enslaved, forced to act as your right-hand while simultaneously submitting to any depraved whim that might come to mind, a cross between a constantly fucked and ridiculed court jester and a cunning spymaster, her abilities twisted to guard against any rebellion against the ever-expanding demonic realm.<br>
<br>
Your campaign of evil conquest stretches far and wide until, finally, you come to the gates of heaven themself, throwing them open and charging forth to capture the Goddess of creation and life — <<=setup.getNpcName('npc_technician', 'first')>> in all her radiance and beauty forced to submit to you, her mind twisted to become another of your demonic thralls, chained with demonic steel and locked in unbreakable chastity, made available for you to use for your pleasure whenever the whim takes you as you steal a little more of her power with each orgasm you force upon her.
<br><br>
Your idle fantasy having spun out of control, you, once again, apologise to your fellow players, though they assure you that they still enjoyed the game.
<</if>>
Helping you out of your bondage <<=setup.getNpcName('npc_rpg_warlock', 'first')>> comes to your harness with a slight smile. "@@.npc_rpg_warlock;Hmm... maybe this is rewarding a bit of the wrong behaviour, but I think you deserve to keep that you devilish thing.@@" She winks and packs up the rest of your bondage gear as everyone says their goodbyes leaving just you and <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
"@@.npc_technician;Sorry for putting you in that spot, I guess I didn't think too hard about you going the betrayal route. Believe me though when I say there are no hard feelings though. What happens in-game, stays in-game.@@"<br>
<br>
You nod in thanks as you look around the empty apartment.<br>
<br>
<<printThought 'I bet she would appreciate me staying to help clean up.'>><br>
<br>
<<if $workEvents.hasOwnProperty("event_technician_key_request")>>
Your friends clear out until it's down to just you and <<=setup.getNpcName('npc_technician', 'first')>>. After some quick cleaning up she turns to you with a serious expression on her face.<br>
<br>
"@@.npc_technician;So... Monday.@@"<br>
<br>
[<<moveTo 'event_technician_discuss_keyholder_1' "See what she has to say." 180>>]
<<else>>
[<<moveTo 'event_rpg_post_mux' "Continue." 300>>]
<</if>>
</div>/*#
#desc: choose character for re-run of campaign
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.cur_campaign_id = "fantasy">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Alright, let's run it back! So, <<=$player.first_name>> what do you want to play as this time around?@@"<br>
<br>
She hands you the stack of character sheets as the other players indicate they'll all stick with their usual characters.<br>
<br>
[<<moveTo 'event_rpg_character_select' 'Pick your character.' 300>>]
</div>/*#
#desc: part 2 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 1>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
XP is distributed and allotted and the session rolls on.<br>
<br>
"@@.npc_technician;Alright, you post watches for the night, but things are quiet, and in the morning you quickly break camp and head on your way.@@"<br>
<br>
"@@.npc_technician;Making your way to the road, you don't run into any other travellers — the predation of the summoner and his monsters having greatly depressed trade in the area. It is mid-afternoon when you are suddenly beset upon by a tribe of orcs!@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_2_1' 'Roll for initiative!' $scene.stepLength>>]
</div>/*#
#desc: part 3 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 2>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;In the presence of your armed knightly escort, you arrive at Castle Lochemere. You are led to the throne room to present word of your victory.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_3_1' "Continue." $scene.stepLength>>]
</div>/*#
#desc: part 4 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<initRoom>>
<<include playerMenu>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 3>>
<</if>>
<<moveTo "event_rpg_campaign_session_4_0">>/*#
#desc: part 5 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 4>>
<<if $scene.getCaged>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage == "">>
<<if $player.timebased.horny >=50>>
<<set $player.timebased.horny = 49>>
<</if>>
<<if $player.flags.chastity_style == "cage" && $player.body_ref.penis && $player.body_ref.balls>>
<<addItem "c_cage_steel">>
<<wearItem "c_cage_steel" true>>
<<else>>
<<addItem "chastity_belt_flat">>
<<wearItem "chastity_belt_flat" true>>
<</if>>
<</if>>
<<set $npc_technician.flags.seen_chastity = true>>
<</if>>
<<addItem "rpg_steel_restraints">>
<<wearItem "rpg_steel_restraints" true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign == 8>>
Barely suppressing a full-on cheshire grin <<=setup.getNpcName('npc_technician', 'first')>> reveals the restraints and chastity devices.<br>
<br>
Suddenly wide-eyed with fear <<=setup.getNpcName('npc_barista', 'nickname')>> at the sight of the sex-restrictive devices she asks if she could sit out this session. The rest of the party quickly agree as <<=setup.getNpcName('npc_technician', 'first')>> lets her into her bedroom and says she'll let her know when the party is all escaped and such.<br>
<br>
"@@.npc_technician;Sorry, seems that <<=setup.getNpcName('npc_barista', 'nickname')>> is a bit triggered by the idea of NOT being able to have sex. Since she was out the first time we played this portion of the campaign it wasn't a problem but... yeah, she's just going to have a lie-down for a bit and will join back up later.@@"
<<else>>
Taking a quick break, <<=setup.getNpcName('npc_technician', 'first')>> leads <<=setup.getNpcName('npc_barista', 'nickname')>> into her bedroom, the bubbly bimbo seemingly welcoming the opportunity for a lie-down without cluing into the context of why.<br>
<br>
"@@.npc_technician;There we go, she'll be fine in there for this next bit. We talked about it earlier and she said she'd rather just take a break and not disrupt the flow of the campaign when we got to the chastity portion. "No sex" is a bit of a trigger for her, but she didn't want to intrude on the fun time for the rest of us.@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_rpg_dude', 'first')>> nod before giggling as they lock each other up with a kiss.<br>
<br>
"@@.npc_maid;Uh, could I?@@" <<=setup.getNpcName('npc_maid', 'first')>> asks only to get cut off by the grinning DM.<br>
<br>
"@@.npc_technician;Yeah, no. Your crotch monster is getting locked away nice and safe for a while where it can't hurt anyone.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> rolls her eyes and mock sighs before joining the rest of the party in equipping herself with a chastity cage and steel restraints. She winces a little as she stuffs her thick cock into the oversized, yet somehow still slightly too-small, chastity cage.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
Seeing <<=ps(setup.getNpcName('npc_maid', 'first'))>> "Destroyer" is always a delight and you stare at it with naked lust until it disappears back beneath her skirt.
<<else>>
You can't help but stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> "Destroyer," it somehow looks even more beautiful than before, nestled betwixt her thighs like the proverbial third leg.
<</if>>
<<else>>
You try not to stare at <<=ps(setup.getNpcName('npc_maid', 'first'))>> "Destroyer," but there's really no way to resist stealing at least a bit of a glance...
<</if>>
<br><br>
<<if $scene.getCaged>>
<<if $scene.cage != "">>
<<if $npc_technician.flags.rpg_campaign.session > 7>>
You flash your existing <<if setup.isCage()>>cage<<else>>chastity<</if>> belt to the group to grins, congratulations and chuckles.
<<else>>
You blush and explain that, actually, you're already <<if setup.isCage()>>caged<<else>>locked in chastity<</if>>...
<</if>>
<br><br>
Seeing the opportunity for a spot of revenge, <<=setup.getNpcName('npc_maid', 'first')>> tosses the final cage to <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
<<=setup.getNpcName('npc_technician', 'first')>> smirks and then flashes her already caged cock in triumph. "@@.npc_technician;Sorry, my dear, but a special someone has made sure that I am already quite safely locked away.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> only grins wider before extending her arm in your direction for a fist-bump "@@.npc_maid;Keeping her in line, good job! Though, I think she'd be better off with something a bit smaller, maybe with spikes.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> glares at her friend and then flutters her eyelids innocently in your direction before her composure slips and she breaks into a full grin.
<<else>>
"@@.npc_maid;I guess that one's for you, huh? That way you can "join in the fun."@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> pretends to object, but soon folds to the combined encouragement of the group.<br>
<br>
"@@.npc_maid;Oh, and the key — I mean, it isn't really the same if you can unlock yourself, right?@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<=setup.getNpcName('npc_technician', 'first')>> rolls her eyes and hands over a small steel key, only for <<=setup.getNpcName('npc_maid', 'first')>> to pass it to you.<br>
<br>
"@@.npc_maid;Here you go, I think you'll have the most fun deciding when, or if, she gets to come out.@@"<br>
<br>
Your mind swirls with possibility as <<=setup.getNpcName('npc_technician', 'first')>> bites her lip and glances at you with obvious lust as she adjusts herself into a comfortable position seated back behind her DM screen.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> sighs and hands over a small steel key <<=setup.getNpcName('npc_maid', 'first')>> pocketing it with a smile.<br>
<br>
"@@.npc_maid;There, nice and fair — if you run a good session, I'll let you out if not... well, there's always next week!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> glares back, but makes no response as she adjusts herself into a comfortable position back behind her DM screen.
<</if>>
<</if>>
<<else>>
<<printThought "Well, it's not like it's the first time...">><br>
<br>
With a slight sigh you grab the final chastity <<if setup.isCage()>>cage<<else>>device<</if>> and slip it on, the "click" of the lock sending a familiar submissive shiver through your body.<br>
<br>
"@@.npc_rpg_warlock;Aaand the good <<if $fetish.sissy>>sissy<<else>>girl<</if>> is properly locked once again.@@"<br>
<br>
You blush.<br>
<br>
The rest of the group smiles as <<=setup.getNpcName('npc_technician', 'first')>> restores order to proceed with the game.
<</if>>
<<else>>
You hesitate and meekly say you aren't really interested into this sort of play...<br>
<br>
In an instant things shift, as the final device disappears and <<=setup.getNpcName('npc_technician', 'first')>> responds in a more serious tone.<br>
<br>
"@@.npc_technician;Hey, that's fine, the goal here is for all of us to have fun, if you're uncomfortable, then we change things up. Come on, let's continue on with the game. If you aren't up for this sort of real-life mirror role-play to go with it... that's fine.@@"<br>
<br>
You glance around, the rest of the group smiling at you in support to reassure that you asserting your limits isn't a problem.<br>
<br>
You take a deep breath and nod.
<</if>>
<br><br>
"@@.npc_technician;Okay, back to the game! After your capture, you are each placed in separate prison cells deep in the dungeon beneath the border garrison.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_5_2' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: part 6 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 5>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You all take a short break to refresh drinks and stretch a bit as <<=setup.getNpcName('npc_technician', 'first')>> retrieves <<=setup.getNpcName('npc_barista', 'nickname')>> from the bedroom. From the look on the latter's face, you have a feeling the slutty bimbo had a bit of naughty fun while she was waiting though it seems as if <<=setup.getNpcName('npc_technician', 'first')>> either doesn't notice, or doesn't mind.<br>
<br>
Everyone back in their places, <<=setup.getNpcName('npc_technician', 'first')>> checks her notes and resumes the session.<br>
<br>
[<<moveTo 'event_rpg_campaign_session_6_0' 'Continue.' $scene.stepLength>>]
</div>/*#
#desc: part 7 for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<initRoom>>
<<include playerMenu>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.session_num = 6>>
<</if>>
<<moveTo "event_rpg_campaign_session_7_0">>/*#
#desc: end of session for re-run campaign
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$currentTasks.hasOwnProperty('technician_roleplay_surgery') || $currentTasks.technician_roleplay_surgery.finished>>
<<include "addRPGSessionTask">>
<</if>>
<<if $npc_technician.flags.rpg_campaign.character == "succubus" && $scene.sessionId == 'fantasy'>>
<<if $scene.bad_end>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_12'
7
'event_psychiatrist_theme_rpg_betrayal'
false
>>
<<set $npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[7] = true>>
<</if>>
<<if $npc_technician.relationship.relationship_stage == 0>>
<<include remove_succubus_items>>
<</if>>
<<if $scene.bad_end>>
<<wearItem 'rpg_succubus_pentagram_harness' true>>
<</if>>
<</if>>
<<set $scene.was_caged = ($scene.cage != "")>>
<<if ($npc_technician.relationship.relationship_stage == 0 || $npc_technician.relationship.her_role == "sub") && !$scene.was_caged>>
<<if $player.flags.chastity_style == "cage" && $player.body_ref.penis && $player.body_ref.balls>>
<<removeItem "c_cage_steel" true>>
<<addItem 'steel_chastity_cage_key'>>
<<else>>
<<removeItem "chastity_belt_flat" true>>
<<addItem 'chastity_belt_flat_key'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.bad_end>>
There is an extended silence after <<=setup.getNpcName('npc_technician', 'first')>> describes the apocalyptic conclusion of the campaign.<br>
<br>
"@@.npc_rpg_warlock;Well, then... I uh...@@"<br>
<br>
"@@.npc_barista;Whee! I get to be the demon queen's sex slave forever!@@" She gushes while making eyes at you<<if $npc_technician.relationship.relationship_stage > 0>> only to stop and look at <<=setup.getNpcName('npc_technician', 'first')>>. "@@.npc_barista;That is, with your <<if $npc_technician.relationship.her_role == "dom">>Mistress'<<else>>girlfriend's<</if>> permission...@@"<</if>>.<br>
<br>
Tension broken the group breaks into laughter and reminiscing about the replay of the campaign.<br>
<br>
"@@.npc_rpg_warlock;I guess it is fun to take things in a different direction... defeated by my own demonic thrall though... that's a new one.@@"<br>
<br>
"@@.npc_maid;Not like you're short for thralls in any case.@@" She jokes with a nod towards <<=setup.getNpcName('npc_rpg_dude', 'first')>> who adopts <<his npc_rpg_dude>> most innocent expression before <<=setup.getNpcName('npc_rpg_warlock', 'first')>> leans back for an intense kiss.<br>
<br>
<</if>>
<<if !$scene.was_caged>>
<<include "fantasyEndRemoveChastity">>
<br><br>
<</if>>
Everyone continues to chatter as they pack up
<<switch setup.calcSessionParticipation($npc_technician.flags.rpg_campaign.session_actions.current_session)>>
<<case 0>>
"@@.npc_rpg_dude;You feeling alright? You were kind of quiet tonight, not really taking an active role much at all.@@"
<<case 1 2>>
"@@.npc_rpg_warlock;Fun campaign, but I think it'd be even moreso if you took an active role more than once or twice, eh?@@"
<<case 3 4>>
"@@.npc_barista;I, like, love how active you were this session! The more people doing it, playing that is, is always better!@@"
<<case 5 6>>
"@@.npc_maid;Good job jumping into the game, it's always more fun when everyone is taking an active part.@@"
<<case 7>>
<<=setup.getNpcName('npc_technician', 'first')>> practically beams with pride as she congratulates you on your active part throughout the session.
<<default>>
ERROR! unexpected participation: <<=setup.calcSessionParticipation($npc_technician.flags.rpg_campaign.session_actions.current_session)>>
<</switch>>
<br><br>
<<if $npc_technician.flags.rpg_campaign.character == 'succubus'>>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> starts to help you out of your restraints only for <<=setup.getNpcName('npc_technician', 'first')>> to stop her with a devious smile.<br>
<br>
"@@.npc_technician;Actually, I'd like to borrow those, if you wouldn't mind?@@"<br>
<br>
"@@.npc_rpg_warlock;Of course! I mean, what's the point of having a succubus for a girlfriend if you can't play with her?@@"<br>
<br>
"@@.npc_technician;Exactly!@@" Licking her lips as she takes control of your leash you tremble in anticipation. Seems like your night has only begun...<br>
<br>
<<if $scene.bad_end>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> glances back with a slight smile. "@@.npc_rpg_warlock;Oh, and... <<=$player.first_name>>? You can keep the harness... I think it's appropriate given your devilish behaviour tonight, hmm?@@"
<<elseif setup.checkItemWorn("rpg_succubus_collar")>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> glances back with a slight smile. "@@.npc_rpg_warlock;Actually... <<=$player.first_name>> can keep the collar, I think she's earned it after working so hard all campaign...@@"
<<else>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> grins at you. "@@.npc_rpg_warlock;So I know you're already collared, but as a trophy of the campaign...@@" She hands you the leather succubus collar with a wink.
<</if>>
<br><br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> begins removing your restraints per usual but <<=setup.getNpcName('npc_technician', 'first')>> stays her hand with a devious grin.<br>
<br>
"@@.npc_technician;No... I think I'd like to get a bit more use out of those tonight. You mind if I return them to you sometime this week?@@"<br>
<br>
"@@.npc_rpg_warlock;Of course!@@" She states with a grin, cinching a buckle closed before turning back to you. "@@.npc_rpg_warlock;You lucky girl.@@" She whispers in your ear before giving you a peck on the cheek and heading out with her <<boy npc_rpg_dude>>friend.<br>
<br>
[<<moveTo 'event_technician_rpg_cleanup_demon_1' "Continue." 300>>]
<<else>>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> helps you out of your restraints
<<if $scene.bad_end>>
only to leave the harness in place. "@@.npc_rpg_warlock;Call it a prize for your devilish behaviour tonight,@@" she states with a wink before
<<else>>
coming to your collar she smiles and says tells you to "@@.npc_rpg_warlock;Keep it@@" before giving you
<</if>>
a parting grope and kiss on the cheek before darting after her <<boy npc_rpg_dude>>friend as <<he npc_rpg_dude>> looks back with a smile, shaking <<his npc_rpg_dude>> head in amusement.<br>
<br>
[<<moveTo 'event_rpg_post_mux' "Continue." 300>>]
<</if>>
<<else>>
You thank your fellow players for the feedback as they finish packing up and depart, leaving you alone with <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
[<<moveTo 'event_rpg_post_mux' "Continue." 300>>]
<</if>>
</div>/*#
#desc: technician calls you because you failed to show up for the rpg session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_technician' 3>>
<<set $npc_technician.flags.rpg_campaign.missed=true>>
<<if $npc_technician.flags.rpg_campaign.session > 7 && $player.virgin.blowjob>>
<<addEvent 'rpg_no_show_punish'>>
<<include "addRPGMissedSessionTask">>
<<else>>
<<include "addRPGSessionTask">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_technician', 'first')>>!<br>
<br>
<<if $scene.noPhone>>
You are unable to answer your phone and it goes to voicemail.<br>
<br>
"@@.npc_technician;Hey, so... where are you? We're about to start the game. Really wish you were here but we're going to get started, maybe see you next week?@@"<br>
<br>
<<printThought "Shit, I totally forgot about the RPG session today!">><br>
<br>
Unfortunately your current situation means there's nothing you can do but hope to make things up to her at a later date.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<elseif $npc_technician.flags.rpg_campaign.session == 0>>
"@@.npc_technician;Hey, so... where are you? We're about to start the game...@@"<br>
<br>
<<printThought "Shit, I was supposed to meet at her place for an RPG session today!">><br>
<br>
You profusely apologise, explaining that something came up and you promise you'll make it some other time.<br>
<br>
She sighs. "@@.npc_technician;Alright, well, maybe next weekend, the gang was all looking forward to meeting you too!@@"
<<elseif $npc_technician.flags.rpg_campaign.session > 7 && $player.virgin.blowjob>>
You explain that something came up and you will not be able to make it to game tonight.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.no_showed>>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<if $npc_technician.relationship.her_role == "dom">>
"@@.npc_technician;Hmf, again? You know I can give you a nice spanking if you need it, you do not have to be a brat to the entire group to satisfy your masochistic needs.@@"
<<else>>
"@@.npc_technician;Oh my... I know I'm your slave and all but... it seems like you have some masochistic needs that you are maybe desperate to get fulfilled?@@"
<</if>>
<<else>>
"@@.npc_technician;No showing again? I am begining to think you have something of a masochistic streak... oh well,@@" you hear a bit off chatter in the room beyond, "@@.npc_technician;Yup, sound's like <<=setup.getNpcName('npc_maid', 'first')>> is already getting excited to put you in line... we'll see you next week!@@"
<</if>>
<<else>>
"@@.npc_technician;I see... well, I suppose now is the time to warn you that the reason we have such consistent attendance for our game sessions? Well... the secret is that if anyone fails to turn up they earn a punishment. I'll let you stew on that as the rest of us all look forward to next week...@@"
<</if>>
<<else>>
"@@.npc_technician;So I guess you aren't going to make it to game tonight?@@"<br>
<br>
You quickly apologise, lamely explaining that "@@.pc;Something came up.@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<if $npc_technician.relationship.her_role == "dom">>
"@@.npc_technician;Hmf, bad girl, I will definitely be punishing you for this later.@@"
<<else>>
"@@.npc_technician;Oh, I wish you'd tell me this sort of thing, I'd still be disappointed, but no-showing like this makes it seem like you don't care about me...@@"
<</if>>
<br><br>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session < 7>>
"@@.npc_technician;Well, have fun with whatever you're doing, I guess I'll just run a one-shot rather than disrupt the campaign mid-stream.@@"
<<else>>
"@@.npc_technician;I guess I'll see you around, we'll just run something else without you.@@"
<</if>>
<</if>>
<<if !$scene.noPhone>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: technician calls you because you failed to show up for rpg punishment session
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_technician' 3>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_technician', 'first')>>!<br>
<br>
<<if $scene.noPhone>>
You are unable to answer your phone and it goes to voicemail.<br>
<br>
"@@.npc_technician;Hey, so... you're not here... again. Did we do something wrong? Anyway I guess we'll just play on without you and I'll stop bugging you every week. Meet me for coffee if you change your mind and decide to rejoin.@@"<br>
<br>
<<printThought "Shit, I forgot about the RPG session again!">><br>
<br>
Unfortunately your current situation means there's nothing you can do but hope to make things up to her at a later date.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
"@@.npc_technician;Hey, so... where are you? I hope the prospect of "punishment" didn't scare you off... it's just a little game we play... anyway, I'll just leave you alone and stop bugging you every week. If you change your mind and want to rejoin the group... just hit me up at the cafe, alright?@@"<br>
<br>
She hangs up before you can get a word in edgewise.<br>
<br>
<<printThought "Dang, she sounds really down, I feel like a right jerk...">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div><<set $npc_technician.flags.rpg_campaign.missed = false>>
<<set $npc_technician.flags.rpg_campaign.session += 1>>
<<set $roomchange = true>>
<<set $scene.initRPGSession = true>>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 1>>
<<set $scene.sessionId = 'fantasy'>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_life_1'
0
'theme_barista_technician'
false
>>
<<set $scene.stepLength = 1800>>
<<case 2>>
<<set $scene.sessionId = 'fantasy'>>
<<set $scene.stepLength = 1800>>
<<case 3 4 5 6 7>>
<<set $scene.sessionId = 'fantasy'>>
<<set $scene.stepLength = 1800>>
<<default>>
<<set $scene.stepLength = 300>>
<</switch>>
<<useClothSetPush 'scene'>>/*#
#desc: mux for which rpg session you're on
#status: FINISHED 0.5.0.0
#*/
<<include "initRPGSession">>
<<set $roomchange = true>>
<<initRoom>>
<<switch $npc_technician.flags.rpg_campaign.session>>
<<case 1>>
<<moveTo "event_rpg_intro">>
<<case 2>>
<<moveTo "event_rpg_campaign_session_2_0">>
<<case 3 4 5 6 7>>
<<moveTo "event_rpg_campaign_session_x_pre">>
<<default>>
<<if $npc_barista.stage >= 5 && $npc_barista.stage < 10>>
<<moveTo "event_rpg_no_barista_1">>
<<elseif $player.body_ref.vagina && !$npc_technician.flags.celebrate_vag>>
<<moveTo "event_rpg_your_surgery_1">>
<<elseif $npc_technician.flags.rpg_campaign.penance.warlock && !$currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$npc_rpg_warlock.flags.bottom_surgery && !$scene.warlockPenance && $scene.penance_choice != "dude">>
<<moveTo "event_rpg_surgery_tease">>
<<elseif State.hasPlayed("event_maid_orgy_5") && $npc_rpg_warlock.flags.bottom_surgery && !(State.hasPlayed("event_rpg_dude_orgy_2") || !State.hasPlayed("event_rpg_dude_orgy_5") && random(1,10) < 5) && State.hasPlayed("event_rpg_barista_gangbang_11")>>
<<moveTo "event_rpg_dude_orgy_1">>
<<elseif $npc_technician.flags.rpg_campaign.session > 7 && State.hasPlayed("event_rpg_dude_orgy_6") && $npc_technician.flags.knowgender == "female" && $npc_barista.flags.rescue.cure == "good" && !State.hasPlayed("event_rpg_dude_feminisation_1_intro_1")>>
<<moveTo "event_rpg_dude_feminisation_1_intro_1">>
<<else>>
<<moveTo "event_rpg_campaign_session_n_pre">>
<</if>>
<</switch>>/*#
#desc: handwave running a random session
#status: FINISHED 0.5.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.cur_campaign_id = "">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You enjoy another fun session of good times, games, and adventure with <<=setup.getNpcName('npc_technician', 'first')>> and your other friends.<br>
<br>
[<<moveTo 'event_rpg_post_session_x' 'Finish up.' 7200>>]
</div><<set _altSessionEvent = ($currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks.technician_roleplay_surgery.finished) ||
($currentTasks.hasOwnProperty('rpg_session_gangbang') && !$currentTasks.rpg_session_gangbang.finished) || ($currentTasks.hasOwnProperty('technician_collar_ceremony') && !$currentTasks.technician_collar_ceremony.finished) || ($currentTasks.hasOwnProperty('technician_collar_her_ceremony') && !$currentTasks.technician_collar_her_ceremony.finished)>><<include "calcRPGAltSession">>
<<if !_altSessionEvent>>
<<if $currentTasks.hasOwnProperty("technician_roleplay_punish_1") && !$currentTasks.technician_roleplay_punish_1.finished>>
<<deleteTask "technician_roleplay_punish_1">>
<</if>>
<<if $now.getUTCDay() == 6>>
<<if $now.getUTCHours() >= 19>>
<<set _tmpDate = setup.setNextDate($now, 7, 19, 0)>>
<<set $scene.npcdateday = "next Saturday">>
<<else>>
<<set _tmpDate = setup.setNextDate($now, 0, 19, 0)>>
<<set $scene.npcdateday = "today">>
<</if>>
<<else>>
<<set $scene.npcdateday = "next Saturday">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<</if>>
<<addTaskById 'technician_roleplay_1' _tmpDate>>
<</if>><<include "calcRPGAltSession">>
<<if !_altSessionEvent>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 6, 19, 0)>>
<<if ($now.getUTCDay()==6 && $now.getUTCHours()<20)>>
<<set $scene.npcdateday = "today">>
<<else>>
<<set $scene.npcdateday = "next Saturday">>
<</if>>
<<if $npc_technician.flags.rpg_campaign.session > 7 && $player.virgin.blowjob>>
<<addTaskById 'technician_roleplay_punish_1' _tmpDate>>
<<else>>
<<addTaskById 'technician_roleplay_1' _tmpDate>>
<</if>>
<</if>>/*#
#desc: post-campaign sessions
#status: FINISHED 0.5.0.0
#*/
<<set $overrideEvents = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.initRPGSession>>
<<include 'initRPGSession'>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.flags.rpg_campaign.no_showed && !$scene.notTardy && !$scene.preGameEvent && !$scene.startGame>>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<<elseif $player.timebased.dirty > 50 && !$scene.preGameEvent>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.preGameEvent>>
You consider what you'd like <<=setup.getNpcName('npc_technician', 'first')>> to run tonight...<br>
<br>
<<include "rpg_gameChoices">>
<<if $player.body_ref.vagina && $npc_technician.flags.celebrate_vag == 1>>
[<<moveTo "event_rpg_your_surgery_1_alt" "Actually... you'd like to have that celebration of your vagina now..." 180>>]
<</if>>
<<elseif $npc_technician.flags.rpg_campaign.no_showed && !$scene.notTardy>>
You are about to enter <<=ps(setup.getNpcName('npc_technician', 'first'))>> flat when you think back to the "punishment" you received for no-showing and, perhaps more importantly, the "penance" you were required to perform after...<br>
<br>
<<printThought "Hmm, I don't want to miss a whole session... maybe if I was just a little tardy?">><br>
<br>
<<if $currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks.technician_roleplay_punish_1.finished>>
[@@.link_locked;I'm already due for punishment, no sense running late as well.@@]<br>
<<elseif $currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks.technician_roleplay_surgery.finished>>
[@@.link_locked;<<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> celebration is today — I don't want to be late for that!@@]<br>
<<elseif $currentTasks.hasOwnProperty('technician_collar_her_ceremony') && setup.daysToDate($now,setup.getTaskDueDate('technician_collar_her_ceremony')) == 0>>
[@@.link_locked;It would be unthinkable to be purposefully late to <<=ps(setup.getNpcName('npc_technician', 'first'))>> collaring!@@]<br>
<<elseif $currentTasks.hasOwnProperty('technician_collar_ceremony') && setup.daysToDate($now,setup.getTaskDueDate('technician_collar_ceremony')) == 0>>
[@@.link_locked;You don't want to be late to your own collaring, that would be VERY rude!@@]<br>
<<else>>
[<<moveTo "event_rpg_tardy_1" 'Hide for a few minutes and return "late."' 600 "<<storeVisual $player $npc_technician>>">>]<br>
<</if>>
[<<moveTo "event_rpg_root" 'Just head in.' 600 "<<set $scene.notTardy = true>><<set $scene.stepLength = 300>><<storeVisual $player $npc_technician>>">>]
<<elseif $player.timebased.dirty > 50>>
<<if $npc_technician.relationship.relationship_stage > 0>>
You walk in to find only part of the group has arrived, with <<=setup.getNpcName('npc_maid', 'first')>> also missing. Greeting you at the door <<=setup.getNpcName('npc_technician', 'first')>> wrinkles her nose.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> greets you at door, sniffing and then turning up her nose.
<</if>>
<br><br>
"@@.npc_technician;What's that smell? Wait, it's you? Ick, I'm going to have to ask you to shower before game, this is a no gamer funk allowed zone!@@" She points towards her bathroom.<br>
<br>
[<<moveTo "event_rpg_dirty_1" 'Hit the showers.' 300>>]<br>
<<else>>
<<if $npc_technician.flags.rpg_campaign.has_stayed_behind>>
You find you're the first to arrive, sharing a kiss with <<=setup.getNpcName('npc_technician', 'first')>> before taking your seat.<br>
<br>
"@@.npc_technician;So just a reminder, when it comes to the game, I'm the impartial Dungeon Mistress, so don't expect any special treatment for being snuggle buddies.@@"
<<else>>
You're the first to arrive, <<=setup.getNpcName('npc_technician', 'first')>> greeting you at the door and welcome you in.
<</if>>
<br><br>
The rest of the group trickles in and you greet one another before settling in for a game.<br>
<br>
"@@.npc_technician;Alright, so what shall it be tonight, one-shots, a new campaign setting? Note that I reworked the <<if State.hasPlayed("event_torei_campaign_2_6")>>previous campaigns<<else>>last campaign<</if>> so I think it can all fit in a single session if you were interested in seeing how some different character options or choices might play out.@@"<br>
<br>
<<if $player.body_ref.vagina && $npc_technician.flags.celebrate_vag == 1>>
[<<moveTo "event_rpg_your_surgery_1_alt" "Actually... you'd like to have that celebration of your vagina now..." 180>>]<br>
<</if>>
<<include "rpg_gameChoices">>
<</if>>
</div>/*#
#desc: different options for rpg replay
#status: FINISHED 0.5.0.0
#*/
<<if State.hasPlayed("event_technician_drug_delta_orgy_6") && (!State.hasPlayed("event_maid_orgy_1") || !State.hasPlayed("event_maid_orgy_5") && random(1,5) == 5) && State.hasPlayed("event_maid_cafe_work_ballet_finish") && !$scene.preGameEvent>>
As you're considering what to play you notice that <<=setup.getNpcName('npc_maid', 'first')>> is looking a bit flustered, seemingly trying to distract herself by staring at her character sheet and breathing slowly.<br>
<br>
[<<moveTo "event_maid_orgy_1" "Ask if she's okay?" 180>>]<br>
<</if>>
[<<moveTo 'event_rpg_campaign_rerun_0' "Do another run through of the campaign." 60 "<<set $scene.sessionId = 'fantasy'>><<set $scene.stepLength = 300>>">>]<br>
<<if State.hasPlayed("event_torei_campaign_2_6")>>
[<<moveTo 'event_torei_campaign_1_1_repeat' "You'd like to take another trip to Torei." 60 "<<set $scene.sessionId = 'torei'>><<set $scene.first=false>><<set $scene.stepLength = 300>>">>]<br>
<<elseif State.hasPlayed("event_torei_campaign_1_6")>>
[<<moveTo 'event_torei_campaign_2_1' "You'd like to continue your adventures on Torei." 60 "<<set $scene.sessionId = 'torei'>><<set $scene.first=true>><<set $scene.stepLength = 300>>">>]<br>
<<elseif State.hasPlayed("event_torei_campaign_1_1")>>
[<<moveTo 'event_torei_campaign_1_1_repeat' "You'd like to try Torei again..." 60 "<<set $scene.sessionId = 'torei'>><<set $scene.stepLength = 300>>">>]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_1' "Fantasy is fun... but maybe a sci-fi campaign?" 60 "<<set $scene.sessionId = 'torei'>><<set $scene.stepLength = 300>>">>]<br>
<</if>>
<<if setup.checkItemInInventory('rpg_supplement')>>
[<<moveTo 'event_destroy_technician_1' 'Give <<=setup.getNpcName("npc_technician","first")>> the supplement <<=setup.getNpcName("npc_boss","formal")>> provided.' 3600 "<<set $scene.sessionId = 'random'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_rpg_dude_feminisation_1_intro_1") && !$scene.introducedFemGame>>
<<if false>>
[<<moveTo 'event_rpg_dude_feminisation_1' 'You want to play a game of Magical Girl.' 3600 "<<set $scene.sessionId = 'magic_girl'>>">>]<br>
<<else>>
<<set $scene.contentName = "A Magical Girl Session">>
<<include "futureContentBoilerplate">><br>
<</if>>
<</if>>
[<<moveTo 'event_rpg_campaign_session_x_0' "Do a random one-shot." 3600 "<<set $scene.sessionId = 'random'>>">>]<br>/*#
#desc: show up dirty and shower at technician's place
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.panties=false>>
<<else>>
<<include "cleanPlayer">>
<</if>>
<<set $npc_technician.flags.rpg_campaign.dirty = true>>
<</if>>
<<set $player.location = 'Bathroom of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.relationship_stage > 0>>
You slip and hop into the shower, just having finished getting wet and squirting out some of <<=ps(setup.getNpcName("npc_technician","first"))>> strawberry (of course) bodywash when there's a knock on the door.<br>
<br>
"@@.npc_maid;Hey, how about a co-op encounter? Aiding each other makes tasks easier and I need to get rid of the stink of work.@@"<br>
<br>
[<<moveTo 'event_rpg_dirty_2' "Say sure." 60 "<<set $scene.action = 'yes'>>">>]<br>
<<if setup.checkItemOwned("panties_maid")>>
[@@.link_locked;You already own a pair of <<=ps(setup.getNpcName("npc_maid","first"))>> panties.@@]
<<else>>
[<<moveTo 'event_rpg_dirty_2' "Ask if you could have her used panties after?" 60 "<<set $scene.action = 'panties'>><<set $scene.panties=true>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_dirty_2' "But what about your girlfriend?" 60 "<<set $scene.action = 'question'>>">>]<br>
[<<moveTo 'event_rpg_dirty_2' "Say no thanks." 300 "<<set $scene.action = 'no'>>">>]
<<else>>
You hop in the shower and wash off.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="event_rpg_dirty_1">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Return to the Bathroom.">>'>>]<br>
<</if>>
[<<moveTo 'event_rpg_dirty_finish' 'Head out.' 60>>]
<</if>>
</div>/*#
#desc: decide to shower with npc_maid
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case "yes">>
<<include "cleanPlayer">>
<<case "no">>
<<include "cleanPlayer">>
<<useClothSetPop 'tmp'>>
<</switch>>
<</if>>
<<set $player.location = 'Bathroom of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'panties'>>
You ask if you could have <<=ps(setup.getNpcName("npc_maid","first"))>> panties and she smirks.<br>
<br>
"@@.npc_maid;Is this a toll? You starting a collection or something? You perv! How about this? You clean me off, and you can have them... would be a shame to put the dirty things back on after I'd just cleaned off, right?@@"<br>
<br>
[<<moveTo 'event_rpg_dirty_2' "But what about your girlfriend?" 60 "<<set $scene.action = 'question'>>">>]<br>
[<<moveTo 'event_rpg_dirty_2' "You changed your mind." 300 "<<set $scene.action = 'no'>>">>]
<<case "yes">>
You give your affirmation and <<=setup.getNpcName("npc_maid","first")>> slips into the room. You'd swear it seems to instantly get steamier and you try not to get distracted as she sheds her maid's outfit, her large cock already rising to attention as she glances in your direction and then slides into the too-small shower stall.<br>
<br>
"@@.npc_maid;Careful, there, not a whole lot of room in here... gotta position things... there we go, that fits.@@" She states, manoeuvring you onto your tippy-toes, her large, fully hard <<getWordPenis false>> wedged between your legs, the narrow shower such that you don't really have the room to step off of it.<br>
<br>
"@@.npc_maid;There we go, ah, that feels good.@@" She adds as she turns up the water, though whether she's referring to the hot shower raining down or her throbbing member shifting between your legs...<br>
<br>
[<<moveTo 'event_rpg_dirty_3' "Keep showering." 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo 'event_rpg_dirty_3' "This suddenly feels awkward." 300 "<<set $scene.accept = false>>">>]
<<case "question">>
You reply that you have a girlfriend and <<=setup.getNpcName("npc_maid","first")>> laughs before shouting in the other direction.<br>
<br>
"@@.npc_maid;Yo, <<=setup.getNpcName("npc_technician","first")>>, you care if I share a shower with your <<switch $npc_technician.flags.knowgender>><<case 'female'>>GIRL-friend<<case 'male'>>BOY-friend<<default>>SO<</switch>>? Maybe have <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>him<<default>>them<</switch>> clean me off with <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>their<</switch>> tongue?@@"<br>
<br>
"@@.npc_technician;So long as you're both willing!@@" Comes the enthusiastic reply.<br>
<br>
"@@.npc_maid;See? You're dating a pansexual poly switch. What did you THINK she was going to say?@@"<br>
<br>
[<<moveTo 'event_rpg_dirty_2' "In that case, sure." 60 "<<set $scene.action = 'yes'>>">>]<br>
<<if $scene.panties>>
[@@.link_locked;You already asked for <<=ps(setup.getNpcName("npc_maid","first"))>> used panties.@@]<br>
<<else>>
[<<moveTo 'event_rpg_dirty_2' 'Ask if you could have <<=ps(setup.getNpcName("npc_maid","first"))>> used panties after?' 60 "<<set $scene.action = 'panties'>><<set $scene.panties=true>>">>]<br>
<</if>>
[<<moveTo 'event_rpg_dirty_2' "Still no." 300 "<<set $scene.action = 'no'>>">>]
<<case "no">>
You turn down <<=ps(setup.getNpcName("npc_maid","first"))>> offer and you hear her snort, her voice fading as she walks away from the door.<br>
<br>
"@@.npc_maid;Where'd you find a girlfriend that was such a prude, <<=setup.getNpcName("npc_technician","first")>>? Anyway, imma hit up the neighbor, be right back.@@"<br>
<br>
"@@.npc_technician;Oh, give her a break, she's just a little shy sometimes — not everyone is carrying around your constant big-dick energy.@@"<br>
<br>
A few minutes later and you have finished your shower and gotten dressed.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="event_rpg_dirty_1">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Return to the Bathroom.">>'>>]<br>
<</if>>
[<<moveTo 'event_rpg_dirty_finish' 'Head out.' 60>>]
<<default>>
ERROR unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: shower with npc_maid
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.preGameEvent = true>>
<<include "cleanPlayer">>
<<if !$scene.accept>>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<set $player.location = 'Bathroom of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_maid","first")>> hands you a sudsy loofah and you get to work, washing her breasts and shoulders before she turns around, grinding slightly as she has you do her back.<br>
<br>
Switching off, she gives you a scrub as well, seeming to focus particular attention on your bottom. Turning in the shower, you slip and she catches you, grinning down as she casually holds you for a moment.<br>
<br>
<<if $scene.panties>>
"@@.npc_maid;Deal's a deal, right? You gonna earn those panties, or what? I'll warn you, the destroyer is primed and liable to go off at the slightest touch...@@"
<<else>>
"@@.npc_maid;Careful there, don't go falling for me when you already have a girlfriend! That said... if you wanted to finish scrubbing me off, that'd be great... just note that it's primed and liable to go off...@@"
<</if>>
<br><br>
[<<moveTo 'event_rpg_dirty_4' '"Finish" cleaning her up.' 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo 'event_rpg_dirty_4' "Just wrap up and get to the game." 300 "<<set $scene.accept = false>>">>]
<<else>>
The idea seemed okay but the reality of showering with <<=setup.getNpcName("npc_maid","first")>> is a bit too much.<br>
<br>
You excuse yourself as she apologises, seeming quite sincere, if also sounding a touch confused as to why this would be such a big deal.<br>
<br>
Fortunately you were mostly finished washing so you dry off, put on your clothes and head out to the group, <<=setup.getNpcName("npc_maid","first")>> following just a few minutes later.<br>
<br>
"@@.npc_technician;Alright, let's get to playing!@@"<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: finish showering with npc_maid
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<set $npc_maid.flags.rpg_clean = true>>
<<if $scene.accept && $scene.panties>>
<<addItem 'panties_maid'>>
<</if>>
<</if>>
<<set $player.location = 'Bathroom of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
There isn't enough room to get on your knees or bend over so you just wrap your fingers around her as best you can and start stroking.<br>
<br>
"@@.npc_maid;Aww yeah, pump that shaft — you have no idea how backed up I get after a long, hard, shift...@@"<br>
<br>
You keep it up, the strawberry bodywash proving to be excellent lube as <<=setup.getNpcName("npc_maid","first")>> plays with her full nipples and closes her eyes. Near climax she suddenly pulls you in, her queen-sized <<getWordPenis false>> mashed between the two of you as she humps her way to completion, holding you close until she is finished and then separating to let the water wash things away.<br>
<br>
"@@.npc_maid;Whew! NOW my mind is clear and ready to focus on game, thanks for the help, you got nimble fingers.@@"<br>
<br>
You catch your breath as she steps out of the shower. Even flaccid she is still intimidatingly large and
<<if $scene.panties>>
she smirks as she tosses you her used panties before tucking
<<else>>
it takes her a minute to wrangle things into her panties and arrange her skirt as you dry off and get dressed yourself.
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="event_rpg_dirty_finish">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Head out and join the game.">>'>>]<br>
<</if>>
[<<moveTo 'event_rpg_dirty_finish' 'Head out.' 60>>]
<<else>>
You point out that you really need to get to the game and she grunts,
<<if $scene.panties>>
"@@.npc_maid;And After getting a girl's hopes up!@@" She jokes before the two of you start drying off.
<<else>>
the two of you finishing up and drying off.
<</if>>
She takes several deep breaths to calm down and get herself back situated in her skirt as you check yourself in the mirror.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="event_rpg_dirty_1">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Return to the Bathroom.">>'>>]<br>
<</if>>
[<<moveTo 'event_rpg_dirty_finish' 'Head out.' 60>>]
<</if>>
</div>/*#
#desc: finish shower at technician's place
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.preGameEvent = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You exit the bathroom clean, finding the rest of the rpg group assembled and ready.<br>
<br>
"@@.npc_technician;Great, you smell MUCH better now, come on, let's play!@@"<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
</div><<set $scene.returnPassage = "event_technician_rpg_cleanup_x">>
<<initRoom>>
<<if $npc_technician.flags.rpg_campaign.character == 'succubus' && $npc_technician.relationship.relationship_stage > 0 && !$scene.alreadyOwn && $scene.sessionId == "fantasy" && $npc_technician.flags.rpg_campaign.session >= 7 && !$workEvents.hasOwnProperty("event_technician_key_request")>>
<<moveTo 'event_technician_rpg_cleanup_demon_1'>>
<<elseif $workEvents.hasOwnProperty("event_technician_key_request")>>
<<moveTo "event_rpg_post_key_request_1">>
<<elseif $npc_technician.flags.evil == 2 && State.hasPlayed("event_psychiatrist_cure_7") && !State.hasPlayed("event_barista_ceo_intro_1")>>
<<moveTo "event_rpg_post_ceo_intro_1">>
<<elseif $player.flags.collar.owner == "npc_technician" && $npc_sex_club.flags.firstVisit && $player.virgin.blowjob && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$player.body_ref.vagina || $player.virgin.vaginal) && (!State.hasPlayed("event_sexclub_date_technician_dom_invite_1") || random(1,4) == 1)>>
<<moveTo "event_rpg_post_dom_invite_1">>
<<elseif $npc_technician.relationship.her_role == "sub" && $npc_technician.relationship.her_collared && $npc_sex_club.flags.firstVisit && $player.virgin.blowjob && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (!$player.body_ref.vagina || $player.virgin.vaginal) && (!State.hasPlayed("event_sexclub_date_technician_sub_invite_1") || random(1,4) == 1)>>
<<moveTo "event_rpg_post_sub_invite_1">>
<<else>>
<<moveTo "event_rpg_post_none_1">>
<</if>>/*#
#desc: barista brings up npc_ceo
#status: FINISHED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
The game is wrapped up when <<=setup.getNpcName("npc_barista","nickname")>> <<if $npc_barista.flags.rescue.cure != "good">>takes a swig of some sort of drug, her face twisting in pain before a seldom-seen clarity appears on her face and she <</if>>catches your eye.<br>
<br>
"@@.npc_barista;<<=$player.first_name>>? I've<<if $npc_barista.flags.rescue.cure != "good">>, like,<</if>> got something I want to talk to you about...@@"<br>
<br>
You blink in surprise as you realise that this isn't <<=setup.getNpcName("npc_barista","nickname")>>, but <<=setup.getNpcName("npc_barista","first")>> making a rare appearance in the safety of <<=ps(setup.getNpcName("npc_technician","first"))>> flat.<br>
<br>
You glance over at <<=setup.getNpcName("npc_technician","first")>>, chatting with her other friends before they head off.<br>
<br>
[<<moveTo "event_barista_ceo_intro_1" "See what she has to say." 600>>]
</div>/*#
#desc: technician is your domme date invite
#status: FINISHED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_rpg_warlock") setup.charImage("npc_rpg_dude")>>
<div id="invframe" class="scrolltext">
Most of the group heads home with <<=setup.getNpcName("npc_rpg_warlock","first")>> and her <<boy npc_rpg_dude>>friend the last, pausing in the doorway to ask a question.<br>
<br>
[<<moveTo 'event_sexclub_date_technician_dom_invite_1' "See what she has to say." 180>>]
</div>/*#
#desc: technician is your sub date invite
#status: FINISHED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
Everyone but <<=setup.getNpcName("npc_maid","first")>> leaves, the dominant maid hanging back for some reason.<br>
<br>
[<<moveTo 'event_sexclub_date_technician_sub_invite_1' "See what she has to say." 180>>]
</div>/*#
#desc: technician is your sub date invite
#status: FINISHED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Everyone packs up and says their goodbyes, leaving just you and <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<if _TODOoneshot>>
"@@.npc_technician;So... you enjoyed the campaign?@@"
<<elseif $scene.bad_end>>
"@@.npc_technician;Well that was an interesting way to finish a campaign... but hey, win or lose, it's all about the post-game snogging, right?@@"
<<else>>
"@@.npc_technician;So... you ready to celebrate a triumphant campaign?@@"
<</if>>
<br><br>
You smile and nod, stepping in for a kiss.<br>
<br>
<<printThought 'Time to "reward" the DM for a game well run...'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Cleanup be damned, you've got a girlfriend to snog." 180>>]<br>
<<else>>
<<printThought 'I bet she would appreciate me staying to "help."'>><br>
<br>
[<<moveTo 'event_technician_rpg_cleanup' "Stick around to assist with cleanup." 180>>]<br>
<</if>>
<<if $npc_technician.relationship.her_role == 'dom' && setup.getTotalValue("submission") >= 15 && $npc_technician.affection == 10 && $npc_technician.anger == 0 && (!($fetish.chastity_vag && $player.body_ref.vagina && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis) || $npc_technician.relationship.keyholder) && $player.flags.collar.collarId == "" && (!$currentTasks.hasOwnProperty('technician_roleplay_surgery') || $currentTasks.technician_roleplay_surgery.finished) && setup.findThemeId('npc_technician', 'sex', 'theme_technician_collar') == -1>>
[<<moveTo 'event_technician_collar_offer_1' 'Head home.' 60>>]
<<else>>
[<<moveTo 'room_foyer' "It's late, just head home." 600>>]
<</if>>
</div>/*#
#desc: technician is your sub date invite
#status: FINISHED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Your friends clear out until it's down to just you and <<=setup.getNpcName('npc_technician', 'first')>>. After some quick cleaning up she turns to you with a serious expression on her face.<br>
<br>
"@@.npc_technician;So... Monday.@@"<br>
<br>
[<<moveTo 'event_technician_discuss_keyholder_1' "See what she has to say." 180>>]
</div>/*#
#desc: rpg pretend to be tardy for punishment
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.flags.evil == 1>>
<<initRoom>>
<<set $scene.tardy = true>>
<<if $currentTasks.hasOwnProperty("technician_roleplay_evil_first") && !$currentTasks.technician_roleplay_evil_first.finished>>
<<completeTask "technician_roleplay_evil_first" $now true>>
<<elseif $currentTasks.hasOwnProperty("technician_roleplay_evil_second") && !$currentTasks.technician_roleplay_evil_second.finished>>
<<completeTask "technician_roleplay_evil_second" $now true>>
<<elseif $currentTasks.hasOwnProperty("technician_roleplay_evil_repeat") && !$currentTasks.technician_roleplay_evil_repeat.finished>>
<<completeTask "technician_roleplay_evil_repeat" $now true>>
<</if>>
<<if !State.hasPlayed("event_rpg_first_evil_1")>>
<<moveTo "event_rpg_first_evil_1">>
<<elseif !State.hasPlayed("event_rpg_second_evil_1")>>
<<moveTo "event_rpg_second_evil_1">>
<<elseif State.hasPlayed("event_evil_tech_tardy_1")>>
<<moveTo "event_rpg_tardy_evil">>
<<else>>
<<moveTo "event_evil_tech_tardy_1">>
<</if>>
<<else>>
<<set $scene.timeSkip = setup.secondsToDate($now,setup.getTaskDueDate('technician_roleplay_1'))>>
<<completeTask 'technician_roleplay_1' $now true>>
<<set $scene.timeSkip += 900>>
<<set $now = setup.advanceDate($player, $now, 'seconds', $scene.timeSkip)>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $npc_technician.flags.rpg_campaign.tardy = true>>
<<removeEvent 'rpg_no_show_punish'>>
<<set $scene.preGameEvent = true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.stage >= 5 && $npc_barista.stage < 10>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<</if>>
<div id="invframe" class="scrolltext">
You wait until a few minutes past when game normally starts before striding into <<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment with an innocent look on your face.<br>
<br>
<<if $npc_barista.stage >= 5 && $npc_barista.stage < 10>>
Once again <<=setup.getNpcName("npc_barista", "nickname")>> is absent, the sombre look on your other friend's faces telling you that "punishments" are on hold...<br>
<br>
[<<moveTo "event_rpg_no_barista_1" "Take your seat." 120>>]
<<else>>
Channeling <<=setup.getNpcName("npc_barista", "nickname")>> you breathlessly explain that you're "@@.pc;Really sorry@@" that you weren't able to make it on time...<br>
<br>
Smiles spread around the room as realisation dawns as to your plan. <<=setup.getNpcName("npc_maid", "first")>> rises to her feet, paddle in hand.<br>
<br>
"@@.npc_maid;Looks like someone is in need of another spanking...@@"<br>
<br>
[<<moveTo "event_rpg_tardy_2" "Bend over." 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_rpg_tardy_2" "On second thought... maybe you'd rather just proceed to the game." 120 "<<set $scene.accept = false>>">>]
<</if>>
</div>/*#
#desc: punished for being "tardy" to an RPG session
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<applyExperience 'bdsm' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<set $npc_technician.flags.rpg_campaign.penance.basic = true>>
<<else>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_maid","npc_maid_dom")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Once again your poor bottom absorbs a half-dozen punishing blows from <<=ps(setup.getNpcName('npc_maid', 'first'))>> over-sized paddle.<br>
<br>
"@@.npc_technician;Now that the punishment is over with, it is on to penance...@@"<br>
<br>
[<<moveTo "event_rpg_missed_punishment_3" "Mmm, penance..." 120>>]
<<else>>
Faced with the prospect of <<=ps(setup.getNpcName('npc_maid', 'first'))>> over-sized paddle you change your mind and awkwardly laugh and quickly stutter that, actually, you'd rather just jump into the game.<br>
<br>
"@@.npc_barista;Aww, but punishment and penance is so fun!@@"<br>
<br>
The rest of the group roll their eyes at <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> ever-excessive bimboness as everyone takes a seat and gets ready to play.<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: punished for no-showing an RPG session
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_barista.stage >= 4 && $npc_barista.stage < 7>>
/% noop%/
<<elseif $player.body_ref.vagina && !$npc_technician.flags.celebrate_vag && $npc_technician.flags.rpg_campaign.session > 7>>
<<initRoom>>
<<moveTo "event_rpg_your_surgery_1">>
<<else>>
<<set $scene.first_time = !$npc_technician.flags.rpg_campaign.no_showed>>
<<set $npc_technician.flags.rpg_campaign.no_showed = true>>
<<removeEvent 'rpg_no_show_punish'>>
<<include "addRPGSessionTask">>
<<storeVisual $player $npc_technician>>
<</if>>
<<set $scene.preGameEvent = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.stage >= 4 && $npc_barista.stage < 7>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group_nobarista")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_maid","npc_maid_dom")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_barista.stage >= 4 && $npc_barista.stage < 7>>
You brace for punishment, only for <<=setup.getNpcName('npc_technician', 'first')>> to somberly shake her head.<br>
<br>
"@@.npc_technician;I know the rules are that I should be enforcing penance... but with <<=setup.getNpcName('npc_barista', 'nickname')>> out for other reasons, well... it just doesn't feel appropriate.@@"<br>
<br>
The rest of the group nods along as take a seat and get ready for another one-shot.<br>
<br>
[<<moveTo 'event_rpg_no_barista_2' "Play a game." 3600>>]
<<else>>
<<if $scene.first_time>>
All eyes are on you as you walk in the door of <<=ps(setup.getNpcName('npc_technician', 'first'))>> and you gulp, remembering her ominous words that you are due for a "punishment."
<<else>>
Even knowing what is coming you find yourself feeling nervous with anticipation as you walk into <<=ps(setup.getNpcName('npc_technician', 'first'))>> flat. The other five members of the RPG troupe all stare at you in anticipation of the punishment to come...
<</if>>
<br><br>
The silence lingers until you swear the thundering of your heart is filling the room when <<=setup.getNpcName('npc_technician', 'first')>> finally speaks with full DM authority voice. "@@.npc_technician;Ah, look, the wayward adventurer finally returns... <<=setup.getNpcName('npc_maid', 'first')>>, if you would do the honours and administer appropriate corrective measures?@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> has a playfully evil grin on her face as she rises to her feet, unveiling a wooden paddle the size of a cricket bat and brandishing it like a sword.<br>
<br>
"@@.npc_maid;Very well, the accused has been found guilty in absentia and now it is time for them to pay the price... with thine ass.@@"<br>
<br>
[<<moveTo "event_rpg_missed_punishment_2" "Bend over." 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_rpg_missed_punishment_2" "No, this is too much, you just want to game!" 120 "<<set $scene.accept = false>>">>]
<</if>>
</div>/*#
#desc: punished for no-showing an RPG session
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_technician.flags.rpg_campaign.penance.basic = true>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<applyExperience 'bdsm' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 11 'normal' $SEEN_FRIEND>>
<<else>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene.preGameEvent = true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_maid","npc_maid_dom")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You bend over the coffee table as everyone shuffles to get a good view of your backside as <<=setup.getNpcName('npc_maid', 'first')>> warms up her arm, the paddle making scary "whooshing" sounds as it cuts through the air.<br>
<br>
Taking a practice swing for range she stops just shy of touching you as she builds up the suspense.<br>
<br>
"@@.npc_maid;Alright, I figure one stoke for each of the five people you stood up seems fair. We'll start with <<=setup.getNpcName('npc_rpg_dude', 'first')>>, how hard should I give it to this miscreant?@@"<br>
<br>
"@@.npc_rpg_dude;Mmm, medium, I'm not as cruel as some of y'all and I'm sure she had a good reason for her absence.@@"<br>
<br>
*WHACK* the first blow lands and you yelp, panting as pain blossoms across your rear. If that's a medium you're a bit scared of what could be considered a "hard." You attempt to catch your breath as <<=setup.getNpcName('npc_maid', 'first')>> continues.<br>
<br>
"@@.npc_maid;I guess that makes me one of the cruel ones, because I take a zero tolerance to game disruptions, even for total cuties, and believe she deserves to get it nice and hard.@@"<br>
<br>
*WHACK* lands another blow. Though not as surprising as the first hit, it is definitely harder, serving to compound the pain as you are almost knocked off your feet by the power of the impact. "@@.npc_maid;<<=setup.getNpcName('npc_barista', 'nickname')>>, what about you?@@"<br>
<br>
"@@.npc_barista;Oh! Give it to her, like, hard, hard is the best! And, like... can I be next?@@"<br>
<br>
Even without looking you can tell <<=setup.getNpcName('npc_maid', 'first')>> is rolling her eyes. "@@.npc_maid;No, remember this is punishment for her not showing up last week.@@"<br>
<br>
"@@.npc_barista;Oh, right but... like, I don't want to miss a session! Can't you just, like, pretend, and spank me anyway?@@"<br>
<br>
"@@.npc_maid;Maybe some other time, you ditz.@@" <<=setup.getNpcName('npc_maid', 'first')>> replies as she starts her wind-up.<br>
<br>
*WHACK*, the coffee table shakes slightly as you press against it to remain standing, your rear already on fire despite taking a mere three blows, though at least that puts you past the halfway point and maybe <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_technician', 'first')>> will be more merciful?<br>
<br>
"@@.npc_maid;And you, <<=setup.getNpcName('npc_rpg_warlock', 'Lady')>>, how would you deal with such a naughty girl?@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_warlock', 'first')>> adopts a regal tone as she pretends to think it over. "@@.npc_rpg_warlock;Hmm, her crime against the queendom was quite a severe one but they say the mark of a great ruler is the ability to put emotions aside and display mercy... give it to her soft, that she may take heed even as the previous blows should still have her quite sensitive to the impact.@@"<br>
<br>
"@@.npc_maid;A wise, if perhaps too lenient, decision.@@" <<=setup.getNpcName('npc_maid', 'first')>> intones.<br>
<br>
*whack* the blow is certainly lighter, though still quite painful for your abused bottom.<br>
<br>
"@@.npc_maid;And now for you, o great and powerful Dungeon Mistress. How would you dispense with this rambunctious young lady?@@"<br>
<br>
"@@.npc_technician;Being that it is my responsibility to temper my great power and authority by remaining an impartial arbiter I yield to the wisdom of the majority.@@" Approaching your face she brushes a tear from your cheek as she gently meets your gaze.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
<<if $npc_technician.relationship.her_role == "dom">>
"@@.npc_technician;As her owner her failures reflect back upon me. Give it to her hard.@@"
<<else>>
"@@.npc_technician;Though I may come to regret this later, I must request that you give it to her hard.@@"
<</if>>
<<else>>
"@@.npc_technician;Justice must be met out consistently, and swiftly. Give it to her hard.@@"
<</if>>
<br><br>
*WHACK* you would swear that this blow landed even harder, the softer strike previous proving a deeper cruelty as it must have caused you to lower your guard. "@@.npc_maid;And one more as insurance against future lawlessness.@@" She adds, another, not quite as hard *WHACK* landing before you are ready for it.<br>
<br>
"@@.npc_maid;Justice is served, the accused cleansed and ready to move forward to penance.@@"<br>
<br>
[<<moveTo "event_rpg_missed_punishment_3" "Penance?" 120>>]
<<else>>
You freeze at the sight of <<=setup.getNpcName('npc_maid', 'first')>> approaching while wielding the scary-looking paddle but, after a few moments of tension her expression slips and she laughs, letting the paddle fall to her side.<br>
<br>
"@@.npc_maid;Hah! I got her!@@"<br>
<br>
"@@.npc_rpg_dude;Yeah, she got you good!@@" <<=setup.getNpcName('npc_rpg_dude', 'first')>> chimes in as you realise this whole thing was a bit of a joke.<br>
<br>
Letting the paddle fall to her side <<=setup.getNpcName('npc_maid', 'first')>> smiles at you. "@@.npc_maid;Come on, you know us, we wouldn't do anything like that to you unless you were really up for it, right? Come on, let's dive into the game.@@"<br>
<br>
"@@.npc_barista;Aww... can, like, I have her spanking instead? I promise I've been, like, a bad girl!@@"<br>
<br>
This time you join in with the rest of the group in laughing, feeling even more accepted and at ease with your friends as people take their seats and get dice and character sheets at the ready.<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: rpg penance explained + choose who to do such for
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Catching your breath, you look over as <<=setup.getNpcName('npc_maid', 'first')>> stows the implement of your punishment and takes her place in a line with the other four.<br>
<br>
<<if $scene.first_time>>
"@@.npc_technician;Now that you have been suitably reprimanded for failing to show up to game you now have an opportunity to perform penance. Namely, choose one of your fellow players to "make thing up" to. So, who will you choose?@@"
<<else>>
"@@.npc_technician;So... to whom will you show penance this time?@@"
<</if>>
<br><br>
You look across the <<if $npc_rpg_dude.fem>>five women<<else>>four women, and one guy,<</if>> as you consider your choice...<br>
<br>
<<include "penanceChoice">>
</div><<if $npc_technician.relationship.relationship_stage > 0>>
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
[<<moveTo "event_rpg_missed_punishment_4_technician_1" 'Choose <<=setup.getNpcName("npc_technician", "first")>>, your Mistress, the DM.' 600>>]<br>
<<case "sub">>
[<<moveTo "event_rpg_missed_punishment_4_technician_1" 'Choose <<=setup.getNpcName("npc_technician", "first")>>, your slave, the DM.' 600>>]<br>
<<default>>
[<<moveTo "event_rpg_missed_punishment_4_technician_1" 'Choose <<=setup.getNpcName("npc_technician", "first")>>, your girlfriend, the DM.' 600>>]<br>
<</switch>>
<<else>>
[<<moveTo "event_rpg_missed_punishment_4_technician_1" 'Choose <<=setup.getNpcName("npc_technician", "first")>>, the DM.' 600>>]<br>
<</if>>
[<<moveTo "event_rpg_missed_punishment_4_dude_1" 'Choose <<=setup.getNpcName("npc_rpg_dude", "first")>>, the <<if $npc_rpg_dude.fem>>metal head<<else>>token dude<</if>>.' 60>>]<br>
[<<moveTo "event_rpg_missed_punishment_4_warlock_1" 'Choose <<=setup.getNpcName("npc_rpg_warlock", "first")>> the enthusiastic goth.' 60>>]<br>
[<<moveTo "event_rpg_missed_punishment_4_maid_1" 'Choose <<=setup.getNpcName("npc_maid", "first")>>, the intimidating maid.' 60>>]<br>
[<<moveTo "event_rpg_missed_punishment_4_barista_1" 'Choose <<=setup.getNpcName("npc_barista", "nickname")>>, the slutty barista.' 60>>]<br>
<br>
[<<moveTo "event_rpg_missed_punishment_4_none" "Say, actually... you'd kind of like to just get to starting the game..." 120>>]/*#
#desc: rpg penance - none
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.preGameEvent = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
There are a few grumbles of disappointment that nobody will get to have their "fun" with you but you all came to play so people quickly take their seats and shift gears.<br>
<br>
"@@.npc_technician;Alright, so, what shall we play tonight?@@"<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
</div>/*#
#desc: rpg penance - technician
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $scene.penance_choice = "technician">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You grin and point at <<=setup.getNpcName('npc_technician', 'first')>>. The rest of the group is a mix of knowing grins and eye-rolls as <<=setup.getNpcName('npc_technician', 'first')>> feigns innocence.<br>
<br>
"@@.npc_technician;Hark! The lovely princess hath chosen myself! Come, let us away to cleanse your body of sin.@@" She walks towards the door to her bedroom and then glances back at the rest of the room "@@.npc_technician;The rest of y'all... play a board game or something, I guess? We'll be back in a bit.@@"<br>
<br>
[<<moveTo "event_rpg_missed_punishment_4_technician_2" "It's penance time." 600>>]<br>
</div>/*#
#desc: rpg penance - technician sexytimes choice
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Closing the door to the small bedroom <<=setup.getNpcName('npc_technician', 'first')>> smiles and bites her lip. "@@.npc_technician;Well, seeing as this is penance... I need to change into more appropriate clothes...@@"<br>
<br>
[<<moveTo "event_rpg_missed_punishment_4_technician_3" 'Wait for her to get changed.' 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_rpg_missed_punishment_4_technician_3" 'Change your mind and abort.' 60 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: rpg penance - technician sexytimes choice
#status: FINISHED 0.7.10.0
#ignore_spell: rp'ing
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<set $npc_technician.flags.rpg_campaign.penance.technician = true>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 10 'very' $SEEN_FRIEND>>
<<if $npc_technician.relationship.her_role == 'dom'>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_nun")>>
<<else>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You wait a few minutes and <<=setup.getNpcName('npc_technician', 'first')>> emerges wearing a VERY sexy take on a nun's outfit — a latex wimple paired with black latex gloves and a tight, shined corset holding up thigh-high latex stockings.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
"@@.npc_technician;Now then, my dear. Are you prepared to offer yourself for redemption? If so, kneel and prepare to receive my blessing...@@"<br>
<br>
You drop to your knees before the fetishistic nun
<<if $npc_technician.relationship.sissyomatic>>
as she whispers a prayer to <<=setup.getNpcName('npc_ai', 'formal')>> and <<=ps(setup.getNpcName('npc_technician', 'first'))>> <<=setup.getItemName("sissyomatic")>> retracts to reveal her hard <<getWordPenis false>>.<br>
<br>
<<elseif $npc_technician.relationship.her_caged>>
and obediently uncage her instantly hardening <<getWordPenis false>>.
<</if>>
She smiles beatifically down at you as your lips part to take cummunion. "@@.npc_technician;Yes...@@" she whispers, one hand resting gently on your head as she slides over your tongue.
<<case "sub">>
She bows to you. "@@.npc_technician;Please, Mistress, allow me to offer myself unto you that you may be cleansed of sin...@@"<br>
<br>
<<if $npc_technician.relationship.sissyomatic>>
<<=setup.getNpcName('npc_technician', 'first')>> whispers a prayer to <<=setup.getNpcName('npc_ai', 'formal')>> and <<=ps(setup.getNpcName('npc_technician', 'first'))>> <<=setup.getItemName("sissyomatic")>> retracts to reveal her hard <<getWordPenis false>>.<br>
<br>
"@@.npc_technician;Yes...@@" She whispers with deep need, swelling to full size in an instant as you take her in hand and then, with a wide smile on your face, let her delicious rod slide past your lips.
<<elseif $npc_technician.relationship.her_caged>>
She presents you with her caged member and you smile. Guiding her onto the bed you stroke her thighs, teasing her until she is dripping and then produce the key to unlock her with a click.<br>
<br>
"@@.npc_technician;Yes...@@" She whispers with deep need, swelling to full size in an instant as you take her in hand and then, with a wide smile on your face, let her delicious rod slide past your lips.
<<else>>
You nod in agreement and she gestures towards her hard <<getWordPenis false>>. "@@.npc_technician;Come, my love, I offer my body, cleansed and sanctified that I may be unto you a fountain of blessings.@@"<br>
<br>
Sitting down at the edge of the bed she leans back, spreading her legs for you as you get down. Holding her in one hand you smile and then take her delicious rod into your mouth.
<</if>>
<<default>>
"@@.npc_technician;Come, my dear. Let us join together in prayer so as to cleanse you of your past sin...@@"<br>
<br>
Bringing you close she has you bow your head, guiding you to kiss your way down from her lips to her neck, across both breasts and then down until, at last, you come to her delectably hard <<getWordPenis false>>. Your lips part and you commence to suck.
<</switch>>
<br><br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Though not as monstrous as you are capable of handling she is far from petite between the legs, a nice big <<getWordPenis false>>. The perfect place for you to deploy every ounce of your considerable skills.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> is of the same glorious size you spent so much time training to service and you show her large <<getWordPenis false>> every ounce of your devotion and skill as you suck it deep and long.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
She may be a bit large for you to quite handle but you do your best, your lips traveling up and down her shaft as far as you can while you employ your hands to help make up the difference.
<<else>>
She is large enough that your lips are good for little more than sucking on her tip as your hands take over working the shaft, stroking and sucking her glorious member as she smiles down at you.
<</if>>
<</if>>
<br><br>
"@@.npc_technician;Drink, and be forgiven!@@" she cries out when she cums, fountaining her joy directly into your mouth.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
You guzzle it down eagerly, for it is amongst the finest cum to bless your refined palate.
<<else>>
You slurp up every delicious drop, licking your lips in delight.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
You find yourself swallowing every drop, her cum surprisingly, almost disturbingly, delicious.
<<else>>
Despite yourself you find yourself licking her clean, her cum having a flavour far better than the bitter saltiness you would expect.
<</if>>
<</if>>
<br><br>
"@@.npc_technician;...amen,@@" she gasps, smiling at you and then pulling you in for a passionate kiss. Falling onto the bed wrapped in each other's arms you nuzzle as she recovers only for her to sigh. "@@.npc_technician;Hmm, I suppose we should head back out. I have a game to run, after all... otherwise it will be me tasting <<=ps(setup.getNpcName('npc_maid', 'first'))>> paddle! But we can pick things up after the game, if you like...@@"<br>
<br>
You smile and share a final kiss and then she quickly changes back into her normal casual outfit.<<if $npc_technician.relationship.her_caged>> You are sure to lock her back in her cage before she can head for the door<</if>>.
<<else>>
Feeling suddenly awkward you ask if maybe you could just go back to the game?<br>
<br>
Spinning in place her expression turns to one of concern. "@@.npc_technician;Of course! I'm so sorry, I didn't mean to — look, forget this whole thing happened, I only want to play if both of us are going to have fun. So come on, let's go back out there and do some RP'ing of the non-sexual kind — still one of my favourite things!@@"<br>
<br>
Sighing with relief you nod and reach for the door.
<</if>>
<br><br>
[<<moveTo "event_rpg_missed_punishment_5_done" 'Back to the game.' 600>>]
</div>/*#
#desc: rpg penance choice - rpg_dude
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene.penance_choice = "dude">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude")>>
<div id="invframe" class="scrolltext">
You motion towards <<=setup.getNpcName('npc_rpg_dude', 'first')>> who raises an eyebrow in surprise. Flashing you a wink <<his npc_rpg_dude>> girlfriend, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> gives <<him npc_rpg_dude>> a quick kiss and then whispers in <<his npc_rpg_dude>> ear just loud enough for you to hear "@@.npc_rpg_warlock;Careful not to break her.@@"<br>
<br>
Taking her seat <<=setup.getNpcName('npc_technician', 'first')>> gestures towards the other doorway. "@@.npc_technician;Go ahead and use the bedroom, we'll kill time with another game until you're done.@@"<br>
<br>
<<=setup.getNpcName('npc_rpg_dude', 'first')>> takes you by the hand and leads you into the other room, gently closing the door behind.<br>
<br>
[<<moveTo "event_rpg_missed_punishment_4_dude_2" 'Perform your penance.' 600>>]<br>
</div>/*#
#desc: rpg penance - rpg_dude
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_rpg_dude")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_rpg_dude', 'first')>> looks a bit bashful as <<he npc_rpg_dude>> smiles at you.
<<if $player.body_ref.penis>>
<<if $npc_rpg_warlock.flags.bottom_surgery>>
"@@.npc_rpg_dude;So, uh, ever since <<=setup.getNpcName('npc_rpg_warlock', 'first')>> got her wonderful new cunt I've found myself missing teasing a nice feminine penis... I don't suppose you'd be "up" for indulging me?@@"
<<else>>
"@@.npc_rpg_dude;So, uh, <<=setup.getNpcName('npc_rpg_warlock', 'first')>> kind of shys away from anyone playing with her lady lance anymore and well... I kind of miss teasing a nice feminine penis... would you be willing to let me have some fun with yours?@@"
<</if>>
<br><br>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_rpg_missed_punishment_4_dude_3" 'Say sure.' 600 "<<set $scene.style='penis'>>">>]<br>
<<else>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_rpg_missed_punishment_4_dude_3" "Say sure and unlock yourself." 600 "<<set $scene.style='penis'>>">>]<br>
<<elseif $npc_technician.relationship.keyholder>>
[<<moveTo "event_rpg_missed_punishment_4_dude_3" 'Say sure and get <<=setup.getNpcName("npc_technician","first")>> to unlock you.' 600 "<<set $scene.style='penis'>>">>]<br>
<</if>>
[<<moveTo "event_rpg_missed_punishment_4_dude_3" "Reply that you're kind of locked in chastity..." 600 "<<set $scene.style='locked'>>">>]<br>
<</if>>
<<else>>
"@@.npc_rpg_dude;So... I'm thinking a good penance for you would to be edged and ruined... goddess I love the taste of a cunt that is desperate for relief, but denied...@@"<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_rpg_missed_punishment_4_dude_3" 'Say sure.' 600 "<<set $scene.style='cunt'>>">>]<br>
<<else>>
[<<moveTo "event_rpg_missed_punishment_4_dude_3" "Reply that you're kind of locked in chastity..." 600 "<<set $scene.style='cunt'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_rpg_missed_punishment_4_dude_3" 'Ask if you could just suck <<him npc_rpg_dude>> off instead.' 600 "<<set $scene.style='oral'>>">>]<br>
[<<moveTo "event_rpg_missed_punishment_4_dude_3" 'Change your mind and abort.' 60 "<<set $scene.style='none'>>">>]
</div>/*#
#desc: rpg penance - rpg_dude
#status: FINISHED 0.7.10.0
#ignore_spell: rp,g,'d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case 'none'>>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<<case 'cunt'>>
<<set $player.timebased.horny = 80>>
<<set $npc_technician.flags.rpg_campaign.penance.dude = true>>
<<case 'oral'>>
<<applyExperience 'penis' 6 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_rpg_dude.penis_size 'normal' $SEEN_FRIEND>>
<<set $npc_technician.flags.rpg_campaign.penance.dude = true>>
<<case 'penis'>>
<<set $player.timebased.horny = 90>>
<<applyExperience 'penis' 12 'very' $SEEN_FRIEND>>
<<set $npc_technician.flags.rpg_campaign.penance.dude = true>>
<<case 'locked'>>
<<set $player.timebased.horny = 90>>
<<applyExperience 'penis' 12 'very' $SEEN_FRIEND>>
<<set $npc_technician.flags.rpg_campaign.penance.dude = true>>
<</switch>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_rpg_dude")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'none'>>
Somewhat nervous you reply that actually, you don't think you can do this.<br>
<br>
In an instant <<his npc_rpg_dude>> demeanour changes, from sly lust to friendly comfort. "@@.npc_rpg_dude;I'm so sorry, it's fine, like all of this, in here, out there, it's just a game and if it's not fun for everyone, well... change the game. Come on, let's just head back out and get in some RP, huh?@@"<br>
<br>
You nod, grateful for <<his npc_rpg_dude>> kindness as <<he npc_rpg_dude>> holds the door for you. Thought they look up in slight surprise nobody makes any comment as you and <<=setup.getNpcName('npc_rpg_dude', 'first')>> return to your seats.
<<case 'oral'>>
Declining <<his npc_rpg_dude>> request to play with your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<getWordVagina>><</if>> you ask if maybe <<he npc_rpg_dude>>'d like a blowjob?<br>
<br>
"@@.npc_rpg_dude;Well, I'd certainly never say no to THAT@@" <<he npc_rpg_dude>> says with a smile, sitting down on the edge of the bed and pulling out <<his npc_rpg_dude>> average-sized member.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Size-wise <<he npc_rpg_dude>> may be trivial but that is no reason not to show <<him npc_rpg_dude>> the best time possible and you happily suck and lick, pouring out your skill as you find and then focus on <<his npc_rpg_dude>> most sensitive spots.
<<else>>
You deep-throat <<him npc_rpg_dude>> with ease, sucking along <<his npc_rpg_dude>> length as you let out a satisfied hum then set to working <<him npc_rpg_dude>> up and down.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
Nice and average <<hes npc_rpg_dude>> really the perfect size for your skill level and you set to work doing everything you can with mouth and hands to get <<him npc_rpg_dude>> off.
<<else>>
Unintimidatingly average <<hes npc_rpg_dude>> still long enough to give you trouble in the deep-throat department so you focus on just kissing and licking <<him npc_rpg_dude>> all over in hopes that will be enough.
<</if>>
<</if>>
<br><br>
<<He npc_rpg_dude>> leans back and smiles down as you suck away until you feel <<him npc_rpg_dude>> tense up and then push you away. You look up in confusion as <<he npc_rpg_dude>> explains, <<his npc_rpg_dude>> voice slightly strained.<br>
<br>
"@@.npc_rpg_dude;Sorry, should have warned you before — <<=setup.getNpcName('npc_rpg_warlock', 'first')>> has a thing going. The only way I'm allowed to cum is if it's pumped into one of her holes... and then I have to clean it up with my tongue. So... great job but... no reward for either of us, I'm afraid.@@"<br>
<br>
You nod as <<he npc_rpg_dude>> fixes <<his npc_rpg_dude>> clothes and helps you back to your feet. "@@.npc_rpg_dude;Whew, come on, let's get back to game, I certainly could use the distraction!@@"
<<case 'locked'>>
You point out that your <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>><<getWordVagina>><</if>> is locked up inside a <<if setup.isCage()>>cage<<else>>chastity belt<</if>> but <<he npc_rpg_dude>> just smiles. "@@.npc_rpg_dude;Oh, don't worry, I can do all sorts of things with a lovely locked up lady lance...@@"<br>
<br>
Stepping closer <<his npc_rpg_dude>> hand reaches down to reinforce <<his npc_rpg_dude>> point by massaging you through your clothes. Your gasp is answered by a kiss as <<he npc_rpg_dude>> guides you onto the bed, laying you back and removing your clothes just enough to expose your <<getWordMyPenis>>.<br>
<br>
"@@.npc_rpg_dude;Such a treasure...@@" <<He npc_rpg_dude>> whispers as <<he npc_rpg_dude>> nuzzles your <<if setup.isCage()>>cage, tongue darting out to tease any exposed skin<<else>>chastity belt teasing the tender flesh of your thighs and tummy<</if>> as you tremble. "@@.npc_rpg_dude;Locked away for safe keeping until the right special someone comes along with the key.@@"<br>
<br>
You moan as <<he npc_rpg_dude>> softly kisses your thighs, <<his npc_rpg_dude>> fingers running over your <<if setup.isCage()>>cage and then moving down to take your testicles into <<his npc_rpg_dude>> mouth<<else>>belt, tenderly stroking you like <<hes npc_rpg_dude>> expertly playing an instrument<</if>>. "@@.npc_rpg_dude;Mmm, you taste so good, so beautiful...@@" <<he npc_rpg_dude>> whispers as you throw your head back, moaning desperately.<br>
<br>
Playing you like a maestro <<his npc_rpg_dude>> whispering words and soft lips build you up until you feel on the cusp of climax, and then <<he npc_rpg_dude>> stops.<br>
<br>
Pulling away <<he npc_rpg_dude>> stands over you with a slight smile. "@@.npc_rpg_dude;I think that will do for your penance, thank you. Now, shall we return to the game?@@"<br>
<br>
You groan in desperation but go along as <<he npc_rpg_dude>> helps you back into your clothes and out of the room.
<<case 'penis'>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
You bite your lip and produce your key, hurriedly removing your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> as <<he npc_rpg_dude>> grins.
<<elseif $npc_technician.relationship.keyholder>>
You quickly summon <<=setup.getNpcName("npc_technician","first")>> for help and she unlocks you with a wink. Before disappearing to leave the two of you alone.
<<else>>
ERROR: unexpected cage state!
<</if>>
<br><br>
<</if>>
You blush at <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> request but soon find yourself lying back on the edge of the bed as <<he npc_rpg_dude>> kneels down and peels back your clothes to expose your <<getWordMyPenis>>.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
"@@.npc_rpg_dude;So beautiful...@@" <<he npc_rpg_dude>> whispers, wrapping <<his npc_rpg_dude>> lips around you, <<his npc_rpg_dude>> tongue dancing up and down your length.
<<case 2 3>>
"@@.npc_rpg_dude;Mmm, scrumptious@@" <<he npc_rpg_dude>> whispers, opening wide to swallow your full length.
<<case 4 5>>
"@@.npc_rpg_dude;Yum, I wonder if you taste as good as you look.@@" Leaning forward <<he npc_rpg_dude>> takes almost your full length into <<his npc_rpg_dude>> mouth, <<his npc_rpg_dude>> tongue swirling for a moment before <<he npc_rpg_dude>> pulls back with a pop. Licking <<his npc_rpg_dude>> lips <<he npc_rpg_dude>> smiles. "@@.npc_rpg_dude;Mmm, even better...@@"
<<case 6>>
"@@.npc_rpg_dude;Oh... oh, my...@@" <<he npc_rpg_dude>> states in awe "@@.npc_rpg_dude;Like, I knew you were packing but this... I'm a big enough <<man npc_rpg_dude>> to admit when I'm intimidated, but I will do what I can!@@" One hand wrapped around your base <<he npc_rpg_dude>> takes a deep breath and starts licking up and down, sucking on your head and teasing your tip with <<his npc_rpg_dude>> tongue for a few moments before resuming roaming coverage.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
You throw your head back and moan, <<his npc_rpg_dude>> fingers, lips, and tongue dancing over you, detouring to your thighs when things get too intense only to circle back when you start to recover, teasing and lapping up a steady stream of pre. "@@.npc_rpg_dude;Mmmm, that taste, that mouthfeel...@@" <<he npc_rpg_dude>> purrs, licking <<his npc_rpg_dude>> lips. "@@.npc_rpg_dude;There really is nothing like it...@@"<br>
<br>
Playing you like a maestro <<his npc_rpg_dude>> whispering words and soft lips build you up until you feel on the cusp of climax, and then <<he npc_rpg_dude>> stops.<br>
<br>
Pulling away <<he npc_rpg_dude>> stands over you with a slight smile. "@@.npc_rpg_dude;I think that will do for your penance, thank you. Now, shall we return to the game?@@"<br>
<br>
You groan in desperation but go along as <<he npc_rpg_dude>> helps you back into your clothes<<if setup.checkItemTypeWorn("cage")>> and chastity;<</if>> and out of the room.
<<case 'cunt'>>
<<if !setup.checkItemTypeWorn("cage")>>
You blush at the request but soon find yourself lying back on the edge of the bed as <<he npc_rpg_dude>> kneels down and peels back clothes to expose your wet puss.<br>
<br>
"@@.npc_rpg_dude;So beautiful...@@" <<he npc_rpg_dude>> whispers as <<he npc_rpg_dude>> leans in, <<his npc_rpg_dude>> lips meeting yours as <<he npc_rpg_dude>> slides a finger into you to make slow circles around your g-spot.<br>
<br>
You throw your head back and moan, <<his npc_rpg_dude>> fingers, lips, and tongue dance over you, detouring to your thighs when things get too intense only to circle back when you start to recover, teasing and lapping up a steady stream of your leaking arousal. "@@.npc_rpg_dude;Mmmm, that taste...@@" <<he npc_rpg_dude>> purrs, licking <<his npc_rpg_dude>> lips. "@@.npc_rpg_dude;There really is nothing like it...@@"
<<else>>
You point out that you are locked away inside your chastity belt. "@@.npc_rpg_dude;Oh, don't worry, that sort of thing is hardly protection against the sort of thing I have in mind...@@"<br>
<br>
Stepping closer <<his npc_rpg_dude>> hand reaches down to reinforce <<his npc_rpg_dude>> point by massaging you through your clothes. Your gasp is answered by a kiss as <<he npc_rpg_dude>> guides you onto the bed, laying you back and removing your clothes just enough to expose your <<=setup.getItemTypeName("cage")>>.<br>
<br>
"@@.npc_rpg_dude;Such a treasure...@@" <<He npc_rpg_dude>> whispers as <<he npc_rpg_dude>> nuzzles your chastity belt teasing the tender flesh of your thighs and tummy as you tremble. "@@.npc_rpg_dude;Locked away for safe keeping until the right special someone comes along with the key.@@"<br>
<br>
You moan as <<he npc_rpg_dude>> softly kisses your thighs, <<his npc_rpg_dude>> fingers running down your belt, tenderly stroking you like <<hes npc_rpg_dude>> expertly playing an instrument. "@@.npc_rpg_dude;Mmm, you taste so good, so beautiful...@@" <<he npc_rpg_dude>> whispers as you throw your head back, moaning desperately.
<</if>>
<br><br>
Playing you like a maestro <<his npc_rpg_dude>> whispering words and soft lips build you up until you feel on the cusp of climax, and then <<he npc_rpg_dude>> stops.<br>
<br>
Pulling away <<he npc_rpg_dude>> stands over you with a slight smile. "@@.npc_rpg_dude;I think that will do for your penance, thank you. Now, shall we return to the game?@@"<br>
<br>
You groan in desperation but go along as <<he npc_rpg_dude>> helps you back into your clothes and out of the room.
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
[<<moveTo "event_rpg_missed_punishment_5_done" 'Back to the game.' 600>>]
</div>/*#
#desc: rpg penance - rpg_warlock
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene.penance_choice = "warlock">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if !$player.virgin.cunnilingus>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_warlock")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$player.virgin.cunnilingus || ($npc_technician.flags.rpg_campaign.penance.warlock && !$currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$npc_rpg_warlock.flags.bottom_surgery)>>
You nod towards <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and the group hesitates for a moment. "@@.npc_rpg_warlock;Mmmm... I'm tempted, but... I don't think I'm quite in the mood for taking penance tonight. Maybe sometime when you're a bit more experience at the... taste of sin.@@"<br>
<br>
<<include "penanceChoice">>
<<else>>
You nod towards <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and she smiles. Her <<boy npc_rpg_dude>>friend flashes a parting grin as <<he npc_rpg_dude>> gives her butt an encouraging squeeze. Skipping forward she takes you by the hand and leads you into <<=ps(setup.getNpcName('npc_technician', 'first'))>> bedroom before shutting the door.<br>
<br>
<<if $npc_rpg_warlock.flags.bottom_surgery>>
"@@.npc_rpg_warlock;So, my lovely<<if $npc_technician.flags.rpg_campaign.character == 'succubus'>> demoness<</if>>, what I want for penance is to feel your lovely tongue gliding between my feminine folds... that's right.@@" She continues as she sits down on the bed and spreads her legs. "@@.npc_rpg_warlock;I want YOU to eat. My. Cunt.@@"
<<else>>
"@@.npc_rpg_warlock;So, my lovely<<if $npc_technician.flags.rpg_campaign.character == 'succubus'>> demoness<</if>>, what I want for penance is to feel your lovely tongue sliding into my hungry rear pussy... that's right.@@" She continues as she sits down on the bed and spreads her legs. "@@.npc_rpg_warlock;I want YOU to eat. My. Ass.@@"
<</if>>
<br><br>
[<<moveTo "event_rpg_missed_punishment_4_warlock_2" 'Do as she desires.' 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_rpg_missed_punishment_4_warlock_2" 'Change your mind and abort.' 60 "<<set $scene.sex=false>>">>]
<</if>>
</div>/*#
#desc: rpg penance - rpg_warlock sexytimes
#status: FINISHED 0.7.10.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.warlockPenance = true>>
<<if $scene.sex>>
<<set $npc_technician.flags.rpg_campaign.penance.warlock = true>>
<<applyExperience 'oral' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("cum") > 10>>
<<applyExperience 'cum' 10 'little' $SEEN_FRIEND>>
<</if>>
<<if !$npc_rpg_warlock.flags.bottom_surgery && !$player.virgin.analingus>>
<<set $player.virgin.analingus = "npc_rpg_warlock">>
<</if>>
<<else>>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_rpg_warlock")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<if $npc_rpg_warlock.flags.bottom_surgery>>
Leaning back on the bed <<=setup.getNpcName('npc_rpg_warlock', 'first')>> spreads her legs wide and smiles as you. "@@.npc_rpg_warlock;Hurry up, before I start dripping all over <<=ps(setup.getNpcName('npc_technician', 'first'))>> sheets!@@"<br>
<br>
Her cunt already glistening it seems a real risk and you dive in, treated to a pleasant whiff of her womanhood before your nose is pressed in and your tongue sets to work.<br>
<br>
"@@.npc_rpg_warlock;Yes!@@" <<=setup.getNpcName('npc_rpg_warlock', 'first')>> cries out, "@@.npc_rpg_warlock;Lick my clit, lick it harder!@@"<br>
<br>
You do as the lady commands, your tongue working rapidly as you add your fingers to the mix, sliding easily into her and curling up towards her g-spot. "@@.npc_rpg_warlock;YES!@@" she moans, her voice dropping an octave as her hips rise off the bed, her delicious juices flowing freely, delicate and feminine with just a hint of saltiness...<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<printThought 'Is that <<=ps(setup.getNpcName("npc_rpg_warlock", "first"))>> cum? Bonus!'>><br>
<br>
<</if>>
Sucking on her clit to make it even more sensitive your tongue circles, lapping up whatever it can as it darts around her clit, touching it just long enough to have her squirming and then venturing off into her folds, the whole time your fingers continue to pump away inside of her.<br>
<br>
You can't help but be jealous of her multi-orgasmic capabilities as you help her to one, two, then three strong orgasms before she finally squirms away across the bed, panting. "@@.npc_rpg_warlock;Fuck, you are too good at that!@@" She gasps, pushing up onto one elbow to look at you misty-eyed. "@@.npc_rpg_warlock;I call that penance achieved, good girl!@@"<br>
<br>
A head-pat finishes things off and you blush, licking her clean one final time before she fixes her clothes and you head back out.
<<else>>
Moving to the bed she drops onto all fours, exposing her ass and below it her small, hairless lady package. Reaching back with both hands she spreads herself for you, her muffled voice ordering you to "@@.npc_rpg_warlock;Shove your face in there, I want to feel your tongue inside of me.@@"<br>
<br>
Kneeling at the foot of the bed you do as she commands. You take a sniff finding her a little musky but clean. "@@.npc_rpg_warlock;Yes...@@" she moans into the bed as your lips press against her hole and your tongue spears in as ordered, her hole quivering and her body shuddering with pleasure as you do your best to eat her out.<br>
<br>
She groans, begging you to "@@.npc_rpg_warlock;Lick deeper,@@" causing you to strain your tongue as far as you can and be rewarded with a long moan that ends with her legs collapsing and her dropping onto the bed. Your rhythm slightly disrupted you take a quick breath and dive back in with gusto, licking around her hole and then spearing back inside as she thrashes around and, eventually scrambles away.<br>
<br>
"@@.npc_rpg_warlock;Penance... penance achieved...@@" She gasps, trying to catch her breath. "@@.npc_rpg_warlock;Damn but you are a minx, a born ass-eater who would be among my top picks to lie beneath my throne were I crowned queen.@@"<br>
<br>
You blush at the compliment as she fixes her clothes and staggers back to her feet, taking a deep breath before joining you in returning to the rest of the group.
<</if>>
<<else>>
Feeling suddenly awkward you ask <<=setup.getNpcName('npc_rpg_warlock', 'first')>> if maybe you could just go back to the game?<br>
<br>
Spinning in place her expression turns to one of concern. "@@.npc_rpg_warlock;Oh shit! I'm so sorry! When you chose me I thought you... no matter, this whole "penance" thing is just a little fun, none of us would ever want you doing something you're uncomfortable with.@@" She hugs you and you feel the warmth of her concern. "@@.npc_rpg_warlock;Come on, let's just head back out and get to the game, okay?@@"<br>
<br>
Nodding with relief you turn and reach for the door.
<</if>>
<br><br>
[<<moveTo "event_rpg_missed_punishment_5_done" 'Back to the game.' 600>>]
</div>/*#
#desc: rpg penance - maid
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene.penance_choice = "maid">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if !$player.virgin.anal>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_maid', 'first'))>> eyebrow's shoots up in surprise as you, heart beating fearfully fast indicate that it is she to whom you would submit penance.<br>
<br>
<<if !$player.virgin.anal>>
She shares a glance with <<=setup.getNpcName('npc_technician', 'first')>>, who shakes her head subtly.<br>
<br>
"@@.npc_maid;Sorry, love, but I don't think you're quite ready to handle me... I mean, I call her "the Destroyer" for a reason...@@" She notes, gesturing towards her skirt.<br>
<br>
<<include "penanceChoice">>
<<else>>
"@@.npc_maid;You sure? I call her "The Destroyer" for a reason...@@"<br>
<br>
You recall her size and consider if you really want to go forward with this.<br>
<br>
[<<moveTo "event_rpg_missed_punishment_4_maid_2" 'Yes, you want her thick rod to pound the sin out of you.' 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_rpg_missed_punishment_4_maid_2" 'On second thought... maybe just move on to the game?' 60 "<<set $scene.sex=false>>">>]
<</if>>
</div>/*#
#desc: rpg penance - maid sexytimes
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<set $npc_technician.flags.rpg_campaign.penance.maid = true>>
<<applyExperience 'oral' $npc_maid.penissize 'little' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_maid.penissize 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'very' $SEEN_FRIEND>>
<<set $npc_maid.flags.sex_enabled = true>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<if $scene.plug>>
<<set $scene.dice_plug = ($scene.plug == "dice_anal_jumbo_plug" || $scene.plug == "dice_anal_plug")>>
<<if $scene.dice_plug>>
<<applyExperience 'humiliation' 14 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<else>>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You turn towards the bedroom only for <<=setup.getNpcName('npc_maid', 'first')>> to come up from behind and scoop you off your feet. "@@.npc_maid;Good, I can carry you — figure I'd check now since you may not be able to walk when I'm finished with you.@@"<br>
<br>
You glance back at the rest of the group momentarily wondering what you just got yourself in for. <<=setup.getNpcName('npc_barista', 'nickname')>> is smiling ear to ear while the rest give you thumbs-up encouragement even if their expressions show a bit more trepidation.<br>
<br>
Carrying you into the bedroom <<=setup.getNpcName('npc_maid', 'first')>> tosses you onto the bed and then lifts up her skirt to reveal her already large, yet only half-hard lady lance.<br>
<br>
"@@.npc_maid;Alright, let's see what those lips of yours are good for before I introduce your cute ass to... the Destroyer.@@"<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
For all her legend <<=setup.getNpcName('npc_maid', 'first')>> is nowhere close to some of the inhumanly large cocks you have trained with and you make a show of stroking and licking her to full hardness before locking gaze with her and, in a single smooth lunge, hilting her on your throat. Momentarily taken aback she recovers quickly, even if her voice is a touch breathless.
<<else>>
<<=setup.getNpcName('npc_maid', 'first')>> more than lives up to her legend but you are far from a novice adventurer. Though it pushes you to the limits of your abilities you manage to take her to depth, gurgling slightly as your nose brushes her and your eyes roll back.
<</if>>
<br><br>
"@@.npc_maid;A show-off, huh? Well, let's see if your other hole is as accommodating, come on, up onto the bed you face fuck-hole.@@"
<<else>>
<<if setup.getTotalValue("oral") > 5>>
Despite your growing experience <<=setup.getNpcName('npc_maid', 'first')>> is more than you can handle orally and you are forced to make up the difference by stroking the lower half of her shaft as you suck and lick and slurp as far down as you can.
<<else>>
You try but it is immediately clear that "The Destroyer" is far, far beyond your capabilities. You are left merely suckling the tip while your hands handle the bulk of the work.
<</if>>
<br><br>
"@@.npc_maid;Another challenger is found wanting. Fear not, fair maid — many before you have likewise failed but you may yet worship The Destroyer as best you can. Now, however you should prepare yourself for I wish to feel you from the other end!@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_maid', 'first')>> helps you up onto the bed, bending you over and giving your ass a quick slap before <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flipping up your skirt<<else>>pulling down your pants<</if>>.<br>
<br>
<<if $scene.plug != "">>
<<if $scene.dice_plug>>
"@@.npc_maid;Nice, I rolled a natural twenty! Critical slut!@@" She jokes as she grabs hold of your plug and gives it a wiggle.
<<else>>
"@@.npc_maid;Already plugged and spread for me? You slut, I love it!@@"
<</if>>
<br><br>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
Gently removing your plug she puts it to one side and mumbles to herself.
<</if>>
<<else>>
"@@.npc_maid;Let's get this hole filled!@@" She states before mumbling to herself
<</if>>
"@@.npc_maid;Now where does <<=setup.getNpcName('npc_technician', 'first')>> keep her lube...@@"<br>
<br>
You hear the pop of a bottle and cool, slick gel dribbling down onto your waiting hole. <<=setup.getNpcName('npc_maid', 'first')>> spends a few moments massaging things in by hand and fingering your hole to warm it up before stepping forward.<br>
<br>
"@@.npc_maid;The Destroyer... is here...@@" She intones as the thick head of her cock presses into you.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
You moan as her massive member slides into you with ease. Though you keep yourself tight to maximize her pleasure she is no problem at all for your versatile hole. Still, you do love the wonderful feeling that only comes from having a thick, hot, hard cock deep inside of you.
<<else>>
She may be near your limit but by focusing on your breathing and reaching back to spread yourself for her she makes steady progress. Her lube-slick cock sliding deeper and deeper until you are ecstatically stuffed, her balls gently swinging into you.
<</if>>
<br><br>
"@@.npc_maid;And another girl submits to the power of The Destroyer!@@" She brags, her hips pulling back as she begins to fuck, your entire body shaking with each organ-rearranging thrust.<br>
<br>
Holding onto the bed with both hands you just go along for the ride as she fucks you hard, deep, and well, your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> squashed into a pearl of pleasure as she slowly increases her pace. The lube is pushed to its limit as she slams into you, the entire bed shaking as she comes closer, closer and then with a final shout "@@.npc_maid;The Destroyer Cums!@@"<br>
<br>
Squirting into you to fill every remaining crevice, you would swear your belly swelled from the volume as she gives a final few pumps before sliding free.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Even leaning her weight into you she manages to get no more than the tip past your too-tight sphincter. Even that is enough to have you wide-eyed, gaped beyond your limit as you moan and drool into the bed.
<<else>>
She tries but even with lube and you relaxing as much as you can you can't even spread enough for her to enter. Grunting in frustration she shifts her angle, sawing her cock back and forth between your buttcheeks, paying particular attention to scrape your hole with the underside of her hood with each stroke.
<</if>>
<br><br>
"@@.npc_maid;Poor girl, too dainty and tight to experience the joy of destruction...@@" She whispers, increasing her pace as she pumps to the limit that you can handle. Hands on your hips for better leverage she slides back and forth, her thick, hot meat grinding against you until finally she pulls back, taking herself in hand as she finally cums, spraying across your ass, her thick cream mixing with the lube to leave you a wet, used mess.
<</if>>
<br><br>
She steps away and you collapse, looking back as her spent <<getWordPenis false>> dangles between her legs and she smiles down.<br>
<br>
"@@.npc_maid;Alright, I'll call that sufficient penance... for now. Now fix your things, I came here to game, not to fuck <<if $fetish.sissy>>sissy<<else>>your<</if>> ass... though that was a delightful bonus.@@"<br>
<br>
Staggering to your feet you<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> shove the plug back into your worn ass and<</if>> fix your clothes. Already at the door <<=setup.getNpcName('npc_maid', 'first')>> smiles back at you before leading the way back out to the living room.
<<else>>
You blush and ask if maybe you could just proceed to the game. <<=setup.getNpcName('npc_maid', 'first')>> smirks as <<=setup.getNpcName('npc_technician', 'first')>> quickly jumps in.<br>
<br>
"@@.npc_technician;Of course! Come on, you know this whole penance thing is just an excuse for a bit of mutual fun, come on, let's put that aside and move on to the game.@@" You sigh in relief and nod.
<</if>>
<br><br>
[<<moveTo "event_rpg_missed_punishment_5_done" 'Back to the game.' 600>>]
</div>/*#
#desc: rpg penance - barista
#status: FINISHED 0.7.10.0
#ignore_spell: dp'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene.penance_choice = "barista">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<if !$player.virgin.top_fem && !$player.virgin.ass_strap>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_barista")>>
<</if>>
<div id="invframe" class="scrolltext">
You point at <<=setup.getNpcName('npc_barista', 'nickname')>> and her eyebrow shoots up in surprise as you, heart beating fearfully fast, indicate that it is she to whom you would submit penance.<br>
<br>
<<if !$player.virgin.top_fem && !$player.virgin.ass_strap>>
"@@.npc_rpg_warlock;Sorry, but I think that may be a little more than you can handle,@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> states, everyone save <<=setup.getNpcName("npc_barista","nickname")>> nodding in assent.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> pouts in frustration, but makes no additional fuss as you are left to select someone else.<br>
<br>
<<include "penanceChoice">>
<<else>>
"@@.npc_barista;Oh boy! I want to fuck, I mean, perform your penance only...@@" Her expression goes a bit lopsided "@@.npc_barista;Well, this is about me, right? And well... what I really want is to get DP'd hard and, like... I don't think you can do that? Physically?@@"<br>
<br>
"@@.npc_rpg_warlock;I have a solution! <<=setup.getNpcName('npc_technician', 'first')>>, you've got a harness she can borrow, right? Because if so...@@" Digging into her bag she comes up with a double-dildo that has your jaw drop, and yours not the only one.<br>
<br>
"@@.npc_maid;Holy shit you actually had it made!@@"<br>
<br>
<<if $npc_rpg_warlock.flags.bottom_surgery>>
"@@.npc_rpg_warlock;Yup! It was a bit scary the first time but now... well, sometimes I wonder if I shouldn't just lock <<=setup.getNpcName('npc_rpg_dude', 'first')>> up forever because this bident is seriously the greatest thing EVER.@@"
<<else>>
"@@.npc_rpg_warlock;Yup! I can't fully utilize it myself, yet, but... goals!@@"
<</if>>
<br><br>
Barely following the conversation you just stare at the silicone monstrosity. Aside from the colour — a gothy two-tone mix of purple and black — each of the double dongs look totally realistic...
<<if $npc_maid.flags.sex_enabled || $npc_technician.relationship.relationship_stage || $npc_technician.flags.dataservice_encounter>>
<<if $npc_maid.flags.sex_enabled && ($npc_technician.relationship.relationship_stage || $npc_technician.flags.dataservice_encounter)>>
specifically they look the same as <<=ps(setup.getNpcName('npc_technician', 'first'))>> large member and <<=ps(setup.getNpcName('npc_maid', 'first'))>> even larger so-called "Destroyer."
<<elseif $npc_maid.flags.sex_enabled>>
specifically the larger of the two looks like <<=ps(setup.getNpcName('npc_maid', 'first'))>> so-called "Destroyer."
<<else>>
specifically the "smaller" (but still substantial) of the pair looks like <<=ps(setup.getNpcName('npc_technician', 'first'))>>...
<</if>>
<<else>>
pair of cocks; one large, and one massive.
<</if>>
<br><br>
<<=setup.getNpcName('npc_barista', 'nickname')>> is all but drooling as <<=setup.getNpcName('npc_technician', 'first')>> returns from her room holding a leather harness, securely attaching the monstrous double-dong to the front and offering the contraption to you.<br>
<br>
"@@.npc_rpg_dude;Well? You heard the girl, you gonna fuck her brains out or not?@@"<br>
<br>
[<<moveTo "event_rpg_missed_punishment_4_barista_2" "Time to make a bimbo barista's dream come true..." 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_rpg_missed_punishment_4_barista_2" 'Nope, this is too much... maybe just move on to the game?' 60 "<<set $scene.sex=false>>">>]
<</if>>
</div>/*#
#desc: rpg penance - barista pre-sex
#status: FINISHED 0.7.10.0
#ignore_spell: dp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<=setup.getNpcName('npc_barista', 'nickname')>> is giddy as she rushes for the bedroom. Harness in hand, surprised at how heavy the dual dildo is, you start after her only to be stopped by <<=setup.getNpcName('npc_maid', 'first')>> "@@.npc_maid;So... <<=setup.getNpcName('npc_barista', 'nickname')>> gets a bit... excitable.@@"<br>
<br>
"@@.npc_rpg_dude;And by excitable we mean she's a loud lay.@@"<br>
<br>
"@@.npc_maid;Exactly. So if you wouldn't mind gagging her first? I'm sure <<=setup.getNpcName('npc_technician', 'first')>> should have something suitable in the nightstand and being airtight should only have the slut even happier.@@"<br>
<br>
You nod. There was a time the casual way this group handles matters of sex would have sent you for a loop but now, having gotten to know them all, plus all the personal growth since you gave up on that silly "virginity pledge" hang up well... you just feel a sense of camaraderie at the way they all seem so considerate and accepting of one another's needs.<br>
<br>
Stepping into the bedroom you close the door behind you and find <<=setup.getNpcName('npc_barista', 'nickname')>> already lying back with her legs raised and spread, her soaked panties dangling from one stiletto heel. Smiling at you she winks and concentrates until the dual plugs that occupy her lower holes pop free. "@@.npc_barista;Hurry up and fuck me, I hate being empty!@@" She shouts.<br>
<br>
A reply sounds from the other side of the door. "@@.npc_maid;GAG!@@"<br>
<br>
Temporarily resisting <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> slutty allure you head for the nightstand as instructed to find it neatly organised but packed with sex toys; cockrings, nipple clamps, a couple different vibes. Locating a quite substantial pecker panel gag you grab it and a bottle of lube before you turn back towards <<=setup.getNpcName('npc_barista', 'nickname')>>. Her eyes light up in excitement and her wide grin spreads into an open mouth as she opens her jaw wide in invitation.<br>
<br>
As you circle around to the foot of the bed you consider her panties, they are liable to fall from their perch on her heel if once things start getting vigorous...<br>
<br>
[<<moveTo "event_rpg_missed_punishment_4_barista_3" 'Whatever, just gag her and DP her like she wants.' 600 "<<set $scene.panties=false>>">>]<br>
[<<moveTo "event_rpg_missed_punishment_4_barista_3" 'Shove the panties into her mouth first before you gag and fuck her.' 600 "<<set $scene.panties=true>>">>]<br>
<<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>
[<<moveTo "event_rpg_missed_punishment_4_barista_3_alt" 'Forgo equipment and go on a three-hole tour with your ACTUAL <<getWordMyPenis>>.' 120 "<<set $scene.panties=true>>">>]<br>
<</if>>
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>> looks initially crestfallen but recovers with a shrug. "@@.npc_barista;Oh well, at least my holes are still stuffed, but you HAVE to let me try that thing sometime, okay? Or, y'know... I'd accept the real thing?@@"<br>
<br>
"@@.npc_barista;Sure@@" <<=setup.getNpcName('npc_rpg_warlock', 'first')>> says with a laugh as you notice <<=setup.getNpcName('npc_technician', 'first')>> and <<=setup.getNpcName('npc_maid', 'first')>> pointedly avoiding eye contact.<br>
<br>
"@@.npc_technician;Alright, yeah, so um... on to the game?@@"<br>
<br>
[<<moveTo "event_rpg_missed_punishment_5_done" 'Sit back down.' 120>>]
<</if>>
</div>/*#
#desc: rpg penance - strap-on sex w/barista
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.penance.barista = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.panties>>
Plucking her panties from the heel of her raised foot you wad them up and shove them into her mouth with the pad on her tongue. She moans and you respond by forcing her mouth wider to shove the gag into her mouth as well. You buckled it as tight as it will go and she groans with desire. You drop her head back onto the bed and she stares up with unmitigated lust, pulling her legs even further apart in invitation as she waits for you to don the strap-on harness.
<<else>>
You shove the gag into her mouth and she moans, looking up at you in delight as you buckle it tight. Spreading her legs even wider in anticipation she watchs as you don the strap-on harness.
<</if>>
<br><br>
Surprisingly comfortable despite the weight the double dong now protrudes proudly from your body and you give it a good coating of lube before stepping between <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> legs, the larger dong aimed for her sopping cunt with its slightly smaller partner targeting her gaping rear passage.<br>
<br>
Wrangling the two dildos to enter her at the same time is a bit of a trick but the effort is worth it. Even the large gag is barely up to the task of stifling her moan of pleasure as you slide into her. She surprises you by wrapping her legs around you to pull you in faster so that your hips slam into her and you near lose balance.<br>
<br>
Bouncing on the edge of the bed she almost pulls you on top of herself in her urge to fuck your double glory, nostrils flared as she takes quick breaths and trembles in what has to be a startlingly fast first orgasm.<br>
<br>
<<printThought "Wow, she's just beyond horny...">><br>
<br>
She may be the fuck-ee but you're basically along for the ride, doing what you can to thrust in and out but between her movement, the slipperiness of the lube and your lack of practice with managing two penises the best you can manage without popping out are short, syncopated strokes.<br>
<br>
Gag-muffled moans signal her approval and then she pulls out a fresh surprise. Somehow hidden under her skirts until this moment she produces a wand vibrator, jamming it between the two of you to press against her clit as you continue to thrust, the powerful vibrations running through both of your bodies as she moans and you gasp.<br>
<br>
Losing your balance, your fall is cushioned by her <<getWordBreasts $player $npc_barista.breast_size>>. If she is aware of anything beyond her filled, pleasure-wracked body it isn't apparent and yet she somehow instinctually rolls over, coming up mounted on top of you, her full weight forcing the dual dildos as deep as they'll go as she rolls her hips and holds the max-power wand against her body with one hand as her other gropes her breasts.<br>
<br>
Drool leaks past her gag as her mad-eyed expression is twisted with a repeat cascade of orgasms and you are left to but marvel at her hedonistic stamina. With a final cry she slumps and falls to one side.<br>
<br>
<<if $npc_barista.stage < 10>>
[<<moveTo "event_rpg_missed_punishment_4_barista_4" 'Untangle yourself and check on her.' 120>>]
<<else>>
<<=setup.getNpcName('npc_barista', 'first')>> looks up at you for a
<<if $npc_barista.flags.rescue.cure == "good">>
moment, and then winks before hopping back to her feet.<br>
<br>
"@@.npc_barista;Mmmm, I'll never get tired of that! Come on, it's time to game!@@"
<<else>>
moment before hopping back to her feet.<br>
<br>
"@@.npc_barista;Yay, that was fun! We should totally do it again sometime... but I think it's time for game...@@"
<</if>>
<br><br>
[<<moveTo "event_rpg_missed_punishment_5_done" "It's game time." 120>>]
<</if>>
</div>/*#
#desc: rpg penance - barista reveals her secret
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_barista.stage < 2 && !$npc_barista.flags.rescue.overload>>
<<set $npc_barista.flags.rescue.overload = true>>
<<addTaskById 'barista_cure_intro'>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_8'
4
'theme_psychiatrist_barista_1'
false
>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Scrambling to your feet the weight of the double-dong dangling from your hips almost pulls you off-balance again but you manage to move to the side of the bed and remove her gag<<if $scene.panties>> and her totally drenched panties<</if>>. Her gaze flutters as she looks up at you and then focuses with a sharpness you've never witnessed from her before.<br>
<br>
"@@.npc_barista;Please, you have to help.@@" Her voice is soft and a little breathless but without any of her normal bimbo inflection. "@@.npc_barista;I can feel it returning, the unending lust this is... this is the only time I can think. You have to help me. <<=setup.getNpcName('npc_ai', 'other')>> knew, <<=setup.getNpcName('npc_psychiatrist', 'first')>>, she did this to me. She's the only one who can help... please... please...@@"<br>
<br>
Her voice trails off before you can get a word in edgewise and then she blinks. Her eyes open and she looks totally different, back to her normal lustiness as she continues in her usual bubbly tone. "@@.npc_barista;Please fuck me again! That was, like, the best, yay!@@"<br>
<br>
You're still trying to figure out what the hell just happened but there is no sign of the desperate woman in the face of the joyful slut now looking up at you. Explaining that you need to get back to the game causes her to pout but her mood improves once you've hunted down both of her plugs allowing her to re-fill herself with a contented sigh.<br>
<br>
She keeps eyeing the strap-on until you hide it under the bed, figuring <<=setup.getNpcName('npc_rpg_warlock', 'first')>> can grab it before she leaves.<br>
<br>
Frequently glancing over in hopes of catching a glimmer of the alternate personality you briefly saw it appears that the bimbo you've come to know is back in full control and you head back out, wondering what the heck is going on inside her pretty perhaps not-so-empty head.<br>
<br>
<<if $npc_barista.stage < 2>>
<<printThought "Hmm... maybe I should take her advice and talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>>?">>
<<else>>
<<printThought "Need to remember <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> instructions if I want to help <<=setup.getNpcName('npc_barista', 'nickname')>> for more than a few moments...">>
<</if>>
<br><br>
[<<moveTo "event_rpg_missed_punishment_5_done" "It's game time." 120>>]
</div>/*#
#desc: rpg penance - barista 3-hole tour
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.penance.barista = true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<playerOrgasm>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Recalling <<=ps(setup.getNpcName('npc_maid', 'first'))>> advice you locate a large ring gag and buckle it tightly behind her teeth to her obvious delight. Her tongue waggles in invitation as she looks up at you. <<=setup.getNpcName('npc_barista', 'nickname')>> is momentarily disappointed when you put the double-dildo strap-on to one side but her expression changes the instant you pull out your <<getWordMyPenis>> and slide it into her mouth.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Somewhat surprisingly she seems unbothered by your diminutive size, licking and sucking with all she's got, her surprisingly long tongue venturing lower to tease your balls even as she sucks on your quivering peen.
<<case 2 3>>
Taking you without even the hint of effort she moans around your cock, bobbing her head and giving you one of the best blowjobs of your life.
<<case 4 5>>
You barely manage to fit through the opening of the gag but she leans forward, eager to deepthroat every centimetre of you, proving more than up to the challenge.
<<case 6>>
You are just too big to fit through the gag but that doesn't stop her from displaying her rapturous love for your cock, wrapping her lips around the tip as her long tongue slides under the hood and teases your slit. The whole while her hands stroke your shaft with astounding skill.
<<default>>
ERROR: unexpected player penis size: <<=$player.body.penissize[0]>>
<</switch>>
You could easily cum between her pillow-like lips but you remember you have "penance" to perform and she has two additional holes. Withdrawal proving surprisingly difficult against her industrial-grade suction you shove her panties into her mouth in replacement to her obvious delight before going lower to continue your "tour." <br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Despite your size her cunt flexes to pull in around you, providing you a surprisingly tight fuck given she appears to spend her whole time double-full.
<<case 2 3>>
You slide easily into her gaping cunt and then she surprises you by clamping down, squeezing you so tight you can barely move in a shocking, but oh-so pleasurable, move.
<<case 4 5>>
Softly moaning the whole way in as your large cock enters her cunt she somehow squeezes around you to fit like a glove, a wet, oh-so-pleasurable fuck-glove.
<<case 6>>
Mindful of your own size you start slow only to be thwarted by her impatience as she pulls you off-balance and into her, letting out a gag-muffled cry of joy when your hips slam into her body and your cock thrusts all the way inside her cunt.
<<default>>
ERROR: unexpected player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Even when you aren't moving her pussy-muscles demonstrate world-class skills of pompoir, ripples of pleasure running up and down your shaft as you take short, quick breaths, forced to push away from her surprising strength before long lest you cum without sampling her third and final hole.<br>
<br>
Sensing your plan she raises her hips to give you a better angle. Your <<getWordMyPenis>> is more than sufficiently lubricated from her other holes to enter her quivering rear passage.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Just as with her cunt she demonstrates such muscle control as to make her well-used ass feel tight and wonderful, moaning encouragingly as you hump away.
<<case 2 3>>
Easy to enter her ass clamps down to make it nigh impossible for you to escape, her legs wrapping around your back to pull you even deeper as she moans.
<<case 4 5>>
Relaxing before you she allows your <<getWordMyPenis>> to slide into her with ease before deploying her expert skill, muscles clenching and unclenching in sequence to make ripples of pleasure run up and down your cock even as you remain rooted deep inside her without moving.
<<case 6>>
Having witnessed her nigh-bottomless skill with her other two holes you should be unsurprised when she takes you balls deep with ease. Yet her expert skill means that even this experience is somehow novel and pleasurable almost beyond belief. Her body is a perfect host, welcoming your full length and girth before squeezing and clenching and shifting to give your member the time of its life.
<<default>>
ERROR: unexpected player penis size: <<=$player.body.penissize[0]>>
<</switch>>
You're enjoying her delightful ass when you notice her reaching down with one hand. Gliding past her clit without slowing her fingers come together and then start sliding into her wet snatch. Before you realise what's happening she is wrist deep in herself, her fist pressing against you in her other hole and making for an even tighter, more intense experience.<br>
<br>
Just as you are on the precipice of climax she pulls away only to pop back up pressing her breasts together. She wraps her soft tits around your <<getWordMyPenis>> to form a "final" hole as she stares up at and finish you off with a perfect boob-job. Though her lips may be spread into a perpetual look of surprise thanks to the gag her eyes communicate her joy as you soon explode, fountaining up and across her smiling. Squeezing you even tighter between her breasts she milks every drop out of you without ever breaking eye-contact, her tongue darting out past the panties shoved into her mouth to lick up any drops she can find.<br>
<br>
A bit weak in the knees, you finally back away as she uses her fingers to feed herself the rest of your cum. Only once that task is complete does the stand up and go searching for her plugs, shoving one back in each of her holes before sighing slightly and unbuckling the gag, tossing it on the bed and her ruined panties in the hamper.<br>
<br>
"@@.npc_barista;Thanks, but next time I wish you'd make me air-tight. It's bad enough I spend most of the day with only two of my slut-holes occupied but when it comes time for sex I want to be gang-banged... or at least a simulacrum of such!@@"<br>
<br>
You shake your head in mute awe as you follow her back out of the bedroom.<br>
<br>
[<<moveTo "event_rpg_missed_punishment_5_done" 'Back to the game.' 120>>]
</div>/*#
#desc: rpg punishment finished
#status: FINISHED 0.7.10.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $scene.penance_choice>>
<<case "technician">>
You and <<=setup.getNpcName('npc_technician', 'first')>> emerge from the bedroom
<<if $scene.sex>>
and your friends smile knowingly.<br>
<br>
"@@.npc_rpg_warlock;Well, Sister — is the sinner redeemed?@@" <<=setup.getNpcName('npc_rpg_warlock', 'first')>> asks with a gleam in her eye.<br>
<br>
"@@.npc_technician;For now...@@" <<=setup.getNpcName('npc_technician', 'first')>> responds with mock stoicism. "@@.npc_technician;But penance is but the first step. One must remain eternally vigilant if the dream of gaming consistency is to be realised upon this earth!@@"<br>
<br>
"@@.npc_barista;Like, amen!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> adds enthusiastically. The group joins her in raising a cheer and laughs together as you take your seat.
<<else>>
after barely a minute, the other players quietly ignoring your "dodged" penance as <<=setup.getNpcName('npc_technician', 'first')>> takes her seat and grins at the room.
<</if>>
<<case "dude">>
You and <<=setup.getNpcName('npc_rpg_dude', 'first')>> emerge from the bedroom
<<switch $scene.style>>
<<case 'none'>>
after barely a minute, the other players quietly ignoring your "dodged" penance as <<=setup.getNpcName('npc_technician', 'first')>> takes charge of the room.
<<case 'oral'>>
and <<=setup.getNpcName('npc_rpg_warlock', 'first')>> pulls you in for a kiss.<br>
<br>
You're almost taken aback at how long and... aggressive her tongue is, probing what seems like the whole of your mouth before she leans back and licks her lips. "@@.npc_rpg_warlock;Mmm, I just love the taste of my <<man npc_rpg_dude>> mixed with a <<if $fetish.sissy>>sweet sissy<<else>>cute girl<</if>>, such a treat!@@"<br>
<br>
You bite your lip bashfully and reply that you're glad she liked it as she gathers her <<boy npc_rpg_dude>>friend into her arms and you take your seat.
<<case 'locked'>>
and <<=setup.getNpcName('npc_rpg_warlock', 'first')>> winks playfully at you before pulling her <<boy npc_rpg_dude>>friend in for a kiss, sucking face for several seconds before leaning back and grinning over at you. "@@.npc_rpg_warlock;Mmmm, I can taste that desperation. Isn't chastity just divine?@@"
<<case 'penis' 'cunt'>>
and <<=setup.getNpcName('npc_rpg_warlock', 'first')>> winks playfully at you before pulling her <<boy npc_rpg_dude>>friend in for a kiss, sucking face for several seconds before leaning back and grinning over at you. "@@.npc_rpg_warlock;Mmmm, you taste wonderful... the delicious flavour of forgiveness...@@"
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<<case "warlock">>
You and <<=setup.getNpcName('npc_rpg_warlock', 'first')>> emerge from the bedroom
<<if $scene.sex>>
and <<=setup.getNpcName('npc_rpg_warlock', 'first')>> immediately leaps into her <<boy npc_rpg_dude>>friend's lap. Her finger looped into <<his npc_rpg_dude>> collar she pulls <<him npc_rpg_dude>> in for a kiss. "@@.npc_rpg_warlock;Just so you know, my pet — she may have warmed me up, but after game? You're gonna finish me off... so... maybe don't talk too much, your tongue, and this sexy thing,@@" she adds as her other hand snakes down to grab <<him npc_rpg_dude>> through <<his npc_rpg_dude>> jeans "@@.npc_rpg_warlock;Is going to need its energy later...@@"<br>
<br>
Everyone laughs in amusement at the two love-birds as you take your seat.
<<else>>
after barely a minute. To your slight surprise <<=setup.getNpcName('npc_rpg_dude', 'first')>> looks more disappointed than anyone as <<he npc_rpg_dude>> welcomes <<his npc_rpg_dude>> girlfriend back into <<his npc_rpg_dude>> arms, your fellow players otherwise quietly ignoring your "dodged" penance as <<=setup.getNpcName('npc_technician', 'first')>> takes charge of the room.
<</if>>
<<case "maid">>
You and <<=setup.getNpcName('npc_maid', 'first')>> emerge from the bedroom
<<if $scene.sex>>
to impressed smiles.<br>
<br>
"@@.npc_rpg_warlock;Wow, the last time I was with The Destroyer I couldn't even close my thighs for the rest of the day!@@" <<=setup.getNpcName('npc_rpg_warlock', 'first')>> states, clearly impressed.<br>
<br>
"@@.npc_maid;Yeah, well, <<=setup.getNpcName('npc_rpg_dude', 'first')>> could barely WALK!@@" <<=setup.getNpcName('npc_maid', 'first')>> replies with a grin.<br>
<br>
"@@.npc_rpg_dude;So a) you neglect to mention that was only because I had to stand for the whole thing so <<=setup.getNpcName('npc_rpg_warlock', 'first')>> could blow me at the same time so, y'know... cramps and b) WORTH.@@" <<=setup.getNpcName('npc_rpg_dude', 'first')>> replies as everyone laughs in amusement at the memory and you take your seat, feeling a tiny burst of pride at your successful experience with "The Destroyer."
<<else>>
after barely a minute. Other than a few "we warned you..." knowing smiles your friends quietly ignore your "dodged" penance as <<=setup.getNpcName('npc_technician', 'first')>> takes charge of the room.
<</if>>
<<case "barista">>
You and <<=setup.getNpcName('npc_barista', 'first')>> emerge from the bedroom
<<if $scene.sex>>
to a chorus of applause. "@@.npc_rpg_warlock;They survived!@@" <<=setup.getNpcName('npc_rpg_warlock', 'first')>> calls out as you feel compelled to take a bow.<br>
<br>
"@@.npc_barista;Yup! She was like... totes fun! <<if $scene.panties>>she even gagged me with my panties, just the way I like!<<else>>though she could have been a bit rougher...<</if>>@@"<br>
<br>
<<if $scene.panties>>
"@@.npc_maid;And don't think our ear-drums didn't notice and appreciate it!@@"<br>
<br>
The rest of the group laughs in amusement as <<=setup.getNpcName('npc_barista', 'nickname')>> shrugs and you take your seat.
<<else>>
"@@.npc_maid;You say that about everything short of a full-on gang-bang!@@" <<=setup.getNpcName('npc_maid', 'first')>> replies as you take your seat.<br>
<br>
"@@.npc_barista;Well... yeah... though, like, sometimes a gang can be too small, too, y'know?@@"<br>
<br>
The rest of the group laughs as <<=setup.getNpcName('npc_barista', 'nickname')>> responds with a confused glance, as if she's baffled that her level of pure sluttiness is not the standard.
<</if>>
<<else>>
after barely a minute. You can tell from the way <<=setup.getNpcName('npc_maid', 'first')>> is idly grinding and touching herself she's a bit frustrated, but the group as a whole quietly ignores your "dodged" penance as <<=setup.getNpcName('npc_technician', 'first')>> takes charge of the room.
<</if>>
<<default>>
ERROR: unexpected scene.penance_choice <<=$scene.penance_choice>>
<</switch>>
<br><br>
"@@.npc_technician;Alright, now that that's all over with and we've all re-affirmed the primacy of NEVER MISSING A GAME... what shall we do tonight, folks?@@"<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
</div>/*#
#desc: ask about rpg_dude
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
/%TODO: no dude in art%/
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You arrive to find the group assembled, except for <<=setup.getNpcName("npc_rpg_dude","first")>>.<br>
<br>
[<<moveTo "event_rpg_dude_orgy_2" 'Ask where <<=setup.getNpcName("npc_rpg_dude","first")>> is?' 60 "<<set $scene.ask=true>>">>]<br>
[<<moveTo "event_rpg_dude_orgy_2" "Just take your seat and wait." 60 "<<set $scene.ask=false>>">>]
</div>/*#
#desc: ask about rpg_dude
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
/%TODO: no dude in art%/
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.ask>>
With a note of concern, you ask where <<=setup.getNpcName("npc_rpg_dude","first")>> is and <<=setup.getNpcName("npc_rpg_warlock","first")>> responds.<br>
<br>
"@@.npc_rpg_warlock;Oh, <<he npc_rpg_dude>>'s just running a quick errand... but, actually, that reminds me.@@" She leans in with a conspiratorial grin. "@@.npc_rpg_warlock;So, like, I was thinking the other day — we've had a "special" celebration for each of us... but while <<=setup.getNpcName("npc_rpg_dude","first")>> has done <<his npc_rpg_dude>> part, <<he npc_rpg_dude>>'s never gotten to be the belle of the ball, as it were. Now, <<he npc_rpg_dude>> certainly hasn't complained, <<he npc_rpg_dude>>'s a good <<boy npc_rpg_dude>> like that, but that just means the responsibility falls to me, as <<his npc_rpg_dude>> owner/domina to arrange the reward <<he npc_rpg_dude>> deserves. So... you all up for giving <<him npc_rpg_dude>> a proper night to remember after <<he npc_rpg_dude>> gets back?@@"<br>
<br>
[<<moveTo "event_rpg_dude_orgy_3" "You're in!" 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_rpg_dude_orgy_3" "Not tonight." 300 "<<set $scene.accept=false>>">>]
<<else>>
You take your seat and a couple minutes later <<=setup.getNpcName("npc_rpg_dude","first")>> returns bearing snacks and you settle in for the night's game.<br>
<br>
<<include "rpg_gameChoices">>
<</if>>
</div>/*#
#desc: get equipped for rpg_dude orgy
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You agree to help "reward" <<=setup.getNpcName("npc_rpg_dude","first")>> with what sounds like a gang-bang... an assessment quickly confirmed as <<=setup.getNpcName("npc_rpg_warlock","first")>> grins and digs into her purse for supplies.<br>
<br>
"@@.npc_rpg_warlock;Wicked, so I came prepared,@@" she explains, pulling out multiple strap-ons, a pair of large, double-ended ones for her and <<=setup.getNpcName("npc_barista","nickname")>><<if !$player.body_ref.penis>> and a large harness for you.<<elseif setup.checkItemTypeWorn("cage")>> and a large harness "@@.npc_rpg_warlock;unless you want to unlock for the occasion?@@"<<else>>.<</if>><br>
<br>
<<if !$player.body_ref.penis>>
[<<moveTo "event_rpg_dude_orgy_4" "Strap up!" 60 "<<set $scene.removeCage=false>><<set $scene.strapon=true>>">>]<br>
<<elseif $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_rpg_dude_orgy_4" "Strap up!" 60 "<<set $scene.removeCage=false>><<set $scene.strapon=true>>">>]<br>
<<if setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_rpg_dude_orgy_4" "Unlock yourself." 60 "<<set $scene.removeCage=true>><<set $scene.strapon=false>>">>]<br>
<<elseif setup.canSexOrRemoveChastity("penis", "npc_technician")>>
[<<moveTo "event_rpg_dude_orgy_4" 'Ask <<=setup.getNpcName("npc_technician","first")>> to unlock you.' 60 "<<set $scene.removeCage=true>><<set $scene.strapon=false>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_rpg_dude_orgy_4" "Whip it out and queue up..." 60 "<<set $scene.removeCage=false>><<set $scene.strapon=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_rpg_dude_orgy_4" "Actually... you aren't up for this." 60 "<<set $scene.accept=false>>">>]
<<else>>
You decide that you aren't quite up for doing a full on orgy this evening.<br>
<br>
"@@.npc_rpg_warlock;Some other time, maybe.@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> replies, just before <<=setup.getNpcName("npc_rpg_dude","first")>> returns with snacks and you settle in for game.<br>
<br>
<<include "rpg_gameChoices">>
<</if>>
</div>/*#
#desc: rpg_dude orgy prep
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<<elseif $scene.strapon>>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<</if>>
<<changeHorny 100>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.strapon>>
You get a bit of help to tighten the harness over your hips, and
<<elseif $scene.removeCage>>
<<if setup.canSexOrRemoveChastity("penis", "npc_technician")>>
You <<if $npc_technician.flags.her_caged>>and <<=setup.getNpcName("npc_technician","first")>> unlock one another<<else>>wait for <<=setup.getNpcName("npc_technician","first")>> to free you from chastity<</if>>
<<else>>
You <<if $npc_technician.flags.her_caged>>unlock yourself and <<=setup.getNpcName("npc_technician","first")>><<else>>unlock yourself from chastity<</if>>
<</if>>
and join the rest of the group in following
<<else>>
You join the rest of the group in getting hard (or "hard") and ready as everyone
<</if>>
follows <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> direction to get into position standing behind the couch, hard <<getWordPenis false>>s, and gleaming strap-ons, on display.<br>
<br>
[<<moveTo "event_rpg_dude_orgy_5" "You hear someone at the door." 1800>>]
</div>/*#
#desc: rpg_dude orgy sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_rpg_dude","first")>> walks in the door and stops, the bag of cheetos and bottle of Mountain Dew forgotten as <<he npc_rpg_dude>> stares at the group and your collected erections. <<=setup.getNpcName("npc_rpg_warlock","first")>> beckons <<him npc_rpg_dude>> forward with a grin.<br>
<br>
"@@.npc_rpg_warlock;Couch, now.@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> commands, and <<=setup.getNpcName("npc_rpg_dude","first")>> obeys, the six of you posing for a quick picture as <<=setup.getNpcName("npc_rpg_warlock","first")>> strokes <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> head in anticipation. "@@.npc_rpg_warlock;You ready to get railed, my dear?@@" She asks gleefully, "@@.npc_rpg_warlock;you've been such a good <<boy npc_rpg_dude>> taking care of the rest of us... now it's your turn to be the centre of attention...@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> glances back and forth at the <<getWordPenis false>>s looming over <<his npc_rpg_dude>> shoulders on either side and smiles. "@@.npc_rpg_dude;Yes, my love... that sounds killer...@@"<br>
<br>
"@@.npc_rpg_warlock;Awesome,@@" she replies as she brings <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> face towards her artificial cock. "@@.npc_rpg_warlock;Now be my little sea turtle and choke on this plastic.@@"<br>
<br>
Competition is tight for <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> limited holes as you and <<=setup.getNpcName("npc_technician","first")>> press together to take <<him npc_rpg_dude>> from behind while <<=setup.getNpcName("npc_maid","first")>> produces a cunningly designed onahole that sees The Destroyer pressed tight with <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> more average, but no less hard, member while <<=setup.getNpcName("npc_barista","first")>> bounces around groping, grinding and giggling as she waits her turn.<br>
<br>
[<<moveTo "event_rpg_dude_orgy_6" "Continue." 1800>>]
</div>/*#
#desc: rpg_dude orgy sex finish
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<<elseif $scene.strapon>>
<<removeItem 'strapon_large' true>>
<<wearItem 'strapon_large'>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
The group really rises to the occasion in railing <<=setup.getNpcName("npc_rpg_dude","first")>> every which-way twice over, rotating and switching off until <<he npc_rpg_dude>>'s collapsed on the couch in <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> arms with a dopey, satisfied smile on <<his npc_rpg_dude>> face<<if $fetish.cum>> and cum leaking from every orifice<</if>>.<br>
<br>
"@@.npc_rpg_warlock;Thanks, y'all, that was... well, I don't think I've EVER felt this thoroughly fucked... and by such wonderful people!@@" You all join in in asserting that the pleasure was as much yours as <<his npc_rpg_dude>>... followed by a bit of a log-jam for you all to do some cleanup in <<=ps(setup.getNpcName("npc_technician","first"))>> small bathroom before replacing clothes and other such things to make it back around the table as <<=setup.getNpcName("npc_technician","first")>> puts on her Dungeon Mistress smile.<br>
<br>
"@@.npc_technician;And now... game!@@"<br>
<br>
<<include "rpg_gameChoices">>
</div>/*#
#desc: ask if npc_maid is ok
#status: RELEASED 0.9.4.0
#ignore_spell: ngl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.preGameEvent = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_maid', 'first')>> if she's feeling alright and, after taking a moment longer than expected to process your question she sighs. "@@.npc_maid;Sorry... I think there's some lingering contact effects of fucking <<=setup.getNpcName('npc_technician', 'first')>> while she was hopped up on that drug you gave her... plus, well... not to put too fine a point on it, but Do you have ANY idea how hard it is to resist that absolutely SUMPTUOUS ass when you're prancing around in ballet heels and bending over to bus a table? I deserve a medal or something, NGL.@@" She chuckles at her own joke. "@@.npc_maid;Don't mind me, though... I'll be fine, right?<<if State.hasPlayed("event_boymode_date_11")>> I am going to just RUIN <<=setup.getNpcName("generic_female1","custom","Jay")>> next time I see her...<</if>>@@"<br>
<br>
<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> eyes are glowing with excitement while <<=setup.getNpcName('npc_technician', 'first')>> glances at you with a raised eyebrow...<br>
<br>
[<<moveTo "event_maid_orgy_2" "Suggest some sex..." 600 "<<set $scene.orgy=true>>">>]<br>
[<<moveTo "event_maid_orgy_2" "Just get to game." 180 "<<set $scene.orgy=false>>">>]
</div>/*#
#desc: npc_maid orgy start
#status: RELEASED 0.9.4.0
#ignore_spell: chicxulub,gock
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.orgy>>
You put on an innocent expression and explain that, with <<=ps(setup.getNpcName('npc_maid', 'first'))>> predicament being your fault perhaps the rest of the group would be willing to assist in giving her relief.<br>
<br>
"@@.npc_technician;<<=$player.first_name>> is right, sometimes the only way out is through.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> looks around the rest of the room. <<=setup.getNpcName('npc_barista', 'nickname')>> is gleefully champing at the bit while <<=setup.getNpcName('npc_rpg_dude', 'first')>> and <<=setup.getNpcName('npc_rpg_warlock', 'first')>> are looking on with amused interest.<br>
<br>
"@@.npc_maid;When you put it that way...@@" <<=setup.getNpcName('npc_maid', 'first')>> grins and rises to her feet, reaching under her skirt to pull forth the throbing, massive Destroyer, "@@.npc_maid;is this what you want? My lady lance? My two handed broadsword? My stupendous sapphic sabre? My massive maiden mast? My gigantic girl gock? My hole stretching cutie-destroying uncaged <<if $player.identify_as=="male">>boi<<else>>gurl<</if>>breaker?@@"<br>
<br>
There's a moment of awed silence, and then a brief flurry of activity as <<=setup.getNpcName('npc_barista', 'nickname')>> does a full on knee-slide to get in position and start sucking, while <<=setup.getNpcName('npc_technician', 'first')>> fails to stifle a laugh. "@@.npc_technician;Goddess I had forgotten how corny you get when you try to dirty talk.@@"<br>
<br>
"@@.npc_maid;Shut it!@@" <<=setup.getNpcName('npc_maid', 'first')>> replies, slightly breathless thanks to the human vacuum cleaner going to work between her legs. "@@.npc_maid;For that remark I am going to hit your ass like the Chicxulub crater when it's your turn!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smirks. "@@.npc_technician;Promises, promises, now stop getting distracted and fuck my <<switch $npc_technician.relationship.her_role>><<case "dom">>slave<<case "neutral" "">><<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>><<case "sub">><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</switch>>, this was their idea, after all...@@"<br>
<br>
[<<moveTo "event_maid_orgy_3" "Bend over for The Destroyer." 180 "<<set $scene.action='anal'>>">>]<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && !setup.canSexOrRemoveChastity("vag", "npc_technician")>>
[@@.link_locked;Your chastity belt has you partially secure against The Destroyer.@@]<br>
<<else>>
[<<moveTo "event_maid_orgy_3" "Destroy THIS! (spread your legs)." 180 "<<set $scene.action='vag'>>">>]<br>
[<<moveTo "event_maid_orgy_3" "Take a deep breath, The Destroyer has two holes to wreck..." 180 "<<set $scene.action='both'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_maid_orgy_3" "On second thought... maybe game would be better." 180 "<<set $scene.action='abort'>>">>]
<<else>>
You nod, and suggest that maybe focusing on game will be a useful distraction.<br>
<br>
"@@.npc_maid;Yeah, probably... so let's get to it, then.@@"<br>
<br>
<<include "rpg_gameChoices">>
<</if>>
</div>/*#
#desc: npc_maid orgy fuck you
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case "anal">>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<applyExperience 'anal' $npc_maid.penissize 'normal' $SEEN_FRIEND>>
<<playerOrgasm>>
<<case "vag">>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<playerOrgasm>>
<<case "both">>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<playerOrgasm>>
<<case "abort">>
<</switch>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.action != "abort">>
<<=setup.getNpcName('npc_barista', 'nickname')>> shifts positions, The Destroyer now glistening with saliva from tip to base as the eager bimbo barista starts sucking on <<=ps(setup.getNpcName('npc_maid', 'first'))>> heavy balls and <<=setup.getNpcName('npc_maid', 'first')>> gets ready to fuck.<br>
<br>
<</if>>
<<switch $scene.action>>
<<case "anal">>
You bite your lip<<if $scene.removePlug>>, slide the plug out of your ass,<</if>> and turn to present for The Destroyer.<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> moves in behind, taking you by the hips and pressing into you, The Destroyer claiming your hole with quick, plunging thrusts that have you gasping as your other friends look on and wait their turn.<br>
<br>
Like a steel piston, <<=setup.getNpcName('npc_maid', 'first')>> almost lifts you off the ground with each thrust, rearranging your insides with pounding pleasure and then somehow timing your orgasm perfectly, a final hip bump not just sending you over the edge of climax, but sending you flying forward to land on the couch.
<<case "vag">>
<<if $scene.removeCage>>With your chastity belt unlocked and out of the way, you<<else>>You<</if>> spread your legs in invitation, The Destroyer makes its approach.<br>
<br>
You moan as the The Destroyer brushes the end of you, stretching you with its pleasurable payload as <<=setup.getNpcName('npc_maid', 'first')>> fucks you hard and deep, a near blackout orgasm arriving with startling speed as she steps back, leaving you spread out and cratered on the sofa.
<<case "both">>
<<if $scene.removeCage && $scene.removePlug>>With your chastity belt unlocked, and your plug removed, you<<elseif $scene.removeCage>>With your chastity belt unlocked and out of the way, you<<elseif $scene.removePlug>>With your plug removed, you<<else>>You<</if>> present two avenues of attack for The Destroyer... and <<=setup.getNpcName('npc_maid', 'first')>> rises, or, more accurately, plunges, into the occasion.<br>
<br>
Proving to be not just powerful, but also precision-guided, The Destroyer switches off between streching your babymaker and straightening out your bowels as <<=setup.getNpcName('npc_maid', 'first')>> pounds you hard and fast, penetrations blurring together as you entire body shifts with each thrust, and by the time you cum you aren't even sure where The Destroyer was, other than deep inside of you, rearranging your organs for maximum pleasure.
<<case "abort">>
The sight of The Destroyer has you feeling a bit nervous and you ask if maybe gaming could happen, instead?<br>
<br>
"@@.npc_maid;Of course,@@" <<=setup.getNpcName('npc_maid', 'first')>> replies, suddenly apologetic as she winces slightly and somehow manages to stuff her massive <<getWordPenis false>> back under her skirt. "@@.npc_maid;Game, yes, distraction, please...@@"<br>
<br>
<<include "rpg_gameChoices">>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != "abort">>
"@@.npc_maid;KO!@@" <<=setup.getNpcName('npc_maid', 'first')>> intones with a grin, "@@.npc_maid;next fighter! Or should I say fucker?@@" Her gaze moves to <<=setup.getNpcName('npc_technician', 'first')>> and you watch <<=setup.getNpcName('npc_technician', 'first')>> take a deep breath, rise to her feet, and spin to present her ass...<br>
<br>
[<<moveTo "event_maid_orgy_4" "Dungeon Mistress? More like Doomed-To-Be-Done Mistress." 1800>>]
<</if>>
</div>/*#
#desc: npc_maid orgy fuck technician
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
If <<=setup.getNpcName('npc_maid', 'first')>> took you hard, she hits <<=setup.getNpcName('npc_technician', 'first')>> like the fist of an angry Goddess, taking a brief moment to line up perfectly, and then slamming full depth into <<=ps(setup.getNpcName('npc_technician', 'first'))>> ass as your
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case "sub">>slave's<</switch>>
<<else>>
friend's
<</if>>
eyes roll back in pleasure.<br>
<br>
"@@.npc_maid;Who's laughing, now?@@" <<=setup.getNpcName('npc_maid', 'first')>> teases as she jackhammers hard and fast, <<=ps(setup.getNpcName('npc_technician', 'first'))>> face pressed into the couch beside you, her expression twisted in pleasure and unintelligible moans.<br>
<br>
Whatever fire fuels The Destroyer is burning hotter as <<=setup.getNpcName('npc_maid', 'first')>> finishes <<=setup.getNpcName('npc_technician', 'first')>> in record time, <<=setup.getNpcName('npc_technician', 'first')>> <<if $fetish.cum>><<if $npc_technician.relationship.her_caged>>spurting through her cage<<else>>spurting onto the floor<</if>> where <<=setup.getNpcName('npc_barista', 'first')>> eagerly starts licking it up<<else>>cumming hard<</if>> as <<=setup.getNpcName('npc_maid', 'first')>> takes a moment to pose. "@@.npc_maid;Flawless victory,@@" she states, looking around with a grin for her next target.<br>
<br>
[<<moveTo "event_maid_orgy_5" "Continue." 1800>>]
</div>/*#
#desc: npc_maid orgy finish
#status: RELEASED 0.9.4.0
#ignore_spell: k
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_maid', 'first')>> takes <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=setup.getNpcName('npc_rpg_dude', 'first')>> back to back, not showing a hint of fatigue as <<=setup.getNpcName('npc_barista', 'nickname')>> throws herself into the breach... or onto the beast, as The Destroyer pounds away.<br>
<br>
Implacable force meets insatiable slut, you and the rest of the spent group watch as <<=setup.getNpcName('npc_maid', 'first')>> gives it to <<=setup.getNpcName('npc_barista', 'nickname')>> hard and heavy, a frenzied pace that sees <<=setup.getNpcName('npc_maid', 'first')>> finally climax, <<if $fetish.cum>>and explosive, pent-up orgasm that all but blasts <<=setup.getNpcName('npc_barista', 'nickname')>> across the room and scatters cum over the rest of you<<else>>an explosive, screaming orgasm that sends <<=setup.getNpcName('npc_barista', 'nickname')>> all but flying across the room<</if>>.<br>
<br>
"@@.npc_maid;K-kill streak...@@" <<=setup.getNpcName('npc_maid', 'first')>> gasps as she finally falters, dropping to a knee as The Destroyer droops in <<if $fetish.cum>>dripping <</if>>satisfaction.<br>
<br>
There's a beat of silence before someone manages to pull <<=setup.getNpcName('npc_maid', 'first')>> into the pile, cuddling limbs interlocking as the group breaths a collective sigh of relief, a calm to follow the storm as you all catch your breath.<br>
<br>
"@@.npc_maid;Holy heck did I need that... now... game?@@" <<=setup.getNpcName('npc_maid', 'first')>> finally pants to some scattered laughter.<br>
<br>
A bit of clean-up<<if $scene.removeCage || $scene.removePlug>>, and toy replacement,<</if>> follows as everyone looks to find their seats, dice, and character sheets.<br>
<br>
<<include "rpg_gameChoices">>
</div>/*#
#desc: technician roleplay: technician dom/sub unlock intro
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('technician_club_dom') && !$currentTasks.technician_club_dom.finished || $currentTasks.hasOwnProperty('technician_club_sub') && !$currentTasks.technician_club_sub.finished>>
You ask about going on another quest but <<=setup.getNpcName("npc_technician","first")>> shakes her head.<br>
<br>
"@@.npc_technician;Any other night... but with what we have scheduled Monday, well... switching around roles would just confuse things!@@"<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Do something else." 60>>]
<<elseif $npc_technician.relationship.private_games.quest>>
"@@.npc_technician;Oooh, you wish to undergo another quest? To change your future... or perhaps reaffirm it? What fun!@@"<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "neutral">>
"@@.npc_technician;Mmmm, oh, I'm just thinking of all the kinky fun we could get up to! I can't wait to see what you choose!@@"
<<case "dom">>
"@@.npc_technician;You don't want to be my slave anymore?@@" She pretends to pout but can't keep up the facade for more than a few moments. "@@.npc_technician;Oh don't look all worried! I love being your <<=setup.getNpcName("npc_technician","title")>>, but that's because I love being with you, and I'm totally down to mix it up if you want to play a different way for a bit. I'm... flexible that way... among others.@@" She winks.
<<case "sub">>
"@@.npc_technician;Don't get me wrong. I love being your slave, Mistress but, well, mixing things up is fun too!@@"
<</switch>>
<br><br>
"@@.npc_technician;Just give me a moment to change.@@" She states with a grin, placing a kiss on your lips before darting off to her bedroom.<br>
<br>
[<<moveTo 'event_technician_private_game_quest_repeat' "Wait for her to return." 600>>]
<<else>>
"@@.npc_technician;A quest? Oh, this sounds fun...@@" She grins wide, firmly in her comfort zone. "@@.npc_technician;And what, perchance, would though wish to quest for?@@"<br>
<br>
You take a moment, recalling the advice from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
<<printThought "If I want to take things to the next level I need to be clever about it...">><br>
<br>
[<<moveTo 'event_technician_private_game_quest_2' "Say you wish to gain the essence of femininity." 120 "<<set $scene.objective='fem'>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_2' "Say you quest not for material reward, but to prove your worth." 120 "<<set $scene.objective='devotion'>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end the game here." 300>>]
<</if>>
</div>/*#
#desc: technician roleplay: technician dom/sub unlock quest storyline
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.private_games.quest = true>>
<<useClothSetPush 'beforeChange'>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.objective>>
<<case 'fem'>>
"@@.npc_technician;The essence of femininity, you say? My, my, now isn't that a prize...@@" Leaning back in her chair she slides into her role as Dungeon Mistress. "@@.npc_technician;After much research and many dead ends you have learned that, to gain that which you seek, you must perform a mighty ritual. You have gathered much of what you need but the final piece will be the most dangerous, for you must venture forth to a cave deep in the mountains and within confront its inhabitant. Only there will you find the final component — the heart of the medusa...@@"<br>
<br>
[<<moveTo 'event_technician_private_game_quest_3' "Set forth on your quest." 600>>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end the game here." 300>>]
<<case 'devotion'>>
"@@.npc_technician;To prove your worth... well! Wandering the kingdom you hear rumour of a monster who makes its lair in a cave deep in the mountain. Surely, if you were to find this cave and triumph over the frightful medusa said to lurk within that would prove your heroism. As evidence of your success you resolve to retrieve the heart of the beast.@@"<br>
<br>
[<<moveTo 'event_technician_private_game_quest_3' "Set forth on your quest." 600>>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end the game here." 300>>]
<<default>>
ERROR: unknown quest theme: <<=$scene.objective>>
<</switch>>
</div>/*#
#desc: technician roleplay: technician dom/sub quest lead-in
#status: RELEASED 0.7.10.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.offerJacket = setup.hasThreshold('dominance', 'dominance_alex', 'dom_quest') || setup.hasThreshold('dominance', 'dominance_alex', 'dom_stripping')>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You make your way through the mountains, a journey fraught with danger and adventure before finally coming to the dark lair of the medusa.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smiles conspiratorially. "@@.npc_technician;Alright, time to make this extra interesting... from here on out it's time to get your LARP on — I'm going to get changed and then you may enter the lair of the medusa...@@"<br>
<br>
<<if $scene.offerJacket>>
She ducks into the bedroom only to pop back out holding a box.<br>
<br>
"@@.npc_technician;Oh, I told you I was going to find you an outfit, well, it's here if you want to try wearing it...@@"<br>
<br>
She winks before ducking back into her room.<br>
<br>
You open the box to find a leather jacket and skirt. Tight, black, spiked and sexy it's a very different style than your usual fare. If you would dare wear it it would certainly make an impression...<br>
<br>
You're still trying to make your decision when you hear her voice ring out through the door.<br>
<br>
<</if>>
"@@.npc_technician;Approach, brave mortal, and enter into my lair!@@"<br>
<br>
<<if setup.checkPlayerDressed()>>
<<if $scene.offerJacket>>
[<<moveTo 'event_technician_private_game_quest_4' "Quickly change and enter her lair." 180 "<<set $scene.dom=true>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_4' "Enter her lair as you are." 180 "<<set $scene.dom=false>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end the game here." 300 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo 'event_technician_private_game_quest_4' "Enter her lair." 180 "<<set $scene.dom=false>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end the game here." 300 "<<set $player.cutscene.lockinventory=true>>">>]
<</if>>
<<else>>
<<printThought "Should make sure I'm dressed for this...">><br>
<br>
<<if $scene.offerJacket>>
[<<moveTo 'event_technician_private_game_quest_4' "Change into the outfit she offered and enter her lair." 180 "<<set $scene.dom=true>><<set $player.cutscene.lockinventory=true>>">>]<br>
[@@.link_locked;You need to finish changing.@@]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Put your clothes back on and say you'd like to end the game here." 300 '<<set $player.cutscene.lockinventory=true>><<useClothSetPop "beforeChange" true>>'>>]
<<else>>
[@@.link_locked;You need to be dressed for this.@@]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Put your clothes back on and say you'd like to end the game here." 300 '<<set $player.cutscene.lockinventory=true>><<useClothSetPop "beforeChange" true>>'>>]
<</if>>
<</if>>
</div>/*#
#desc: technician roleplay: technician dom/sub unlock decision
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<if $scene.dom>>
<<if setup.checkItemOwned('leather_jacket_black')>>
<<if setup.inWardrobe('leather_jacket_black')>>
<<wardrobeToItem 'leather_jacket_black'>>
<</if>>
<<else>>
<<addItem 'leather_jacket_black'>>
<</if>>
<<wearItem 'leather_jacket_black' true>>
<<if setup.checkItemOwned('skirt_leather_black')>>
<<if setup.inWardrobe('skirt_leather_black')>>
<<wardrobeToItem 'skirt_leather_black'>>
<</if>>
<<else>>
<<addItem 'skirt_leather_black'>>
<</if>>
<<wearItem 'skirt_leather_black' true>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_medusa")>>
<div id="invframe" class="scrolltext">
Sitting upon a pile of pillows arranged on her bed to form a makeshift throne, <<=setup.getNpcName('npc_technician', 'first')>> is attired in a long, green robe, a headdress of artificial snakes crowning and surrounding her head.<br>
<br>
<<if $scene.dom>>
Laying eyes on you in your leather ensemble takes her breath away, and it takes her a moment to collect herself and speak.<br>
<br>
<</if>>
"@@.npc_technician;Who would dare to invade the lair of the gorgon queen? I, who could turn you to stone with but a glance, would ask why you have come so far for such a foolish errand.@@"<br>
<br>
You smile slightly. Here you are, invited into her bedroom. You know that this is more than some mere in-game "quest," the question is... what do you REALLY want.<br>
<br>
[<<moveTo 'event_technician_private_game_quest_5' "Drop to your knees and offer yourself as her slave." 60 "<<set $scene.her_role='dom'>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_5' "Smile and say that you are here to claim her heart... would she accept yours in exchange?" 60 "<<set $scene.her_role='neutral'>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_5' "Say you have come to claim her as your own and demand her submission." 60 "<<set $scene.her_role='sub'>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end the game here." 300 "<<if $scene.dom>><<useClothSetPop 'tmp'>> <<deleteItem 'leather_jacket_black'>><</if>>">>]
</div>/*#
#desc: technician roleplay: technician dom/sub unlock
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.her_role>>
<<case 'dom'>>
<<set $scene.changeYourCollar = $npc_technician.relationship.has_owned>>
<<set $scene.changeHerCollar = $npc_technician.relationship.her_collared>>
<<set $npc_technician.relationship.her_collared = false>>
<<set $npc_technician.relationship.her_role = 'dom'>>
<<set $npc_technician.relationship.unlock_dom = true>>
<<playerOrgasm>>
<<if $npc_technician.relationship.kinks.humiliation && !$npc_technician.relationship.kink_indulge.humiliation && $player.flags.humiliationStyle != "">>
<<addWorkEvent 'technician_humiliation_1'>>
<</if>>
<<include "cancelTechnicianChastity">>
<<case 'sub'>>
<<applyExperience 'dominance' 6 'terrible' $ALONE>>
<<if setup.checkVisibleClothingTag('dominant') > 40 || setup.getTotalValue("dominance") >= 4>>
<<set $npc_technician.relationship.her_role = 'sub'>>
<<if !$npc_technician.relationship.unlock_sub>>
<<set $npc_technician.relationship.unlock_sub = true>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_collar_her'
11
'theme_technician_collar_her_1'
true
>>
<</if>>
<<if -1 == setup.findThemeId('npc_manager', 'other', 'theme_manager_dominance')>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_dominance'
6
'event_manager_theme_dom_training_1'
true
>>
<</if>>
<</if>>
<<if setup.getTotalValue("dominance") >= 4>>
<<setThreshold 'dominance' 'dominance_alex' 'dom_quest'>>
<<elseif !setup.hasThreshold('dominance', 'dominance_alex', 'dom_stripping')>>
<<setThreshold 'dominance' 'dominance_alex' 'dom_stripping'>>
<</if>>
<<if $workEvents.hasOwnProperty('technician_humiliation_1') && !$npc_technician.relationship.kink_indulge.humiliation>>
<<removeWorkEvent 'technician_humiliation_1'>>
<</if>>
<<set $scene.changeYourCollar = $player.flags.collar.owner == "npc_technician">>
<<if $scene.changeYourCollar>>
<<set $player.flags.collar.owner = "">>
<<removeItem $player.flags.collar.collarId true>>
<<deleteItem $player.flags.collar.collarId>>
<<set _tmpIndex = $clothSetsInt.tmp.data.indexOf($player.flags.collar.collarId)>>
<<set _trash = $clothSetsInt.tmp.data.splice(_tmpIndex,1)>>
<<set $player.flags.collar.collarId = "">>
<</if>>
<<set $scene.changeHerCollar = $npc_technician.relationship.has_collared_her>>
<<set $npc_technician.relationship.her_collared = $npc_technician.relationship.has_collared_her>>
<<case 'neutral'>>
<<set $npc_technician.relationship.her_role = 'neutral'>>
<<if $workEvents.hasOwnProperty('technician_humiliation_1') && !$npc_technician.relationship.kink_indulge.humiliation>>
<<removeWorkEvent 'technician_humiliation_1'>>
<</if>>
<<if (!$npc_technician.relationship.has_collared_her || !$npc_technician.relationship.has_owned) && ($player.flags.collar.owner == "npc_technician" || $player.flags.collar.owner == "")>>
<<set $scene.changeYourCollar = $player.flags.collar.owner == "npc_technician">>
<<set $scene.changeHerCollar = $npc_technician.relationship.her_collared>>
<<if $scene.changeYourCollar && !$scene.changeHerCollar>>
<<set $player.flags.collar.owner = "">>
<<removeItem $player.flags.collar.collarId true>>
<<deleteItem $player.flags.collar.collarId>>
<<set _tmpIndex = $clothSetsInt.tmp.data.indexOf($player.flags.collar.collarId)>>
<<set _trash = $clothSetsInt.tmp.data.splice(_tmpIndex,1)>>
<<set $player.flags.collar.collarId = "">>
<<elseif $scene.changeHerCollar && !$scene.changeYourCollar>>
<<set $npc_technician.relationship.her_collared = false>>
<</if>>
<</if>>
<</switch>>
<<include "addCosplayInvite">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_medusa")>>
<div id="invframe" class="scrolltext">
<<switch $scene.her_role>>
<<case 'dom'>>
You kneel at the foot of her bed, offering yourself to her.<br>
<br>
"@@.npc_technician;My, my, aren't you just the most beautiful, submissive thing... few things would delight me more than for you to consider me your <<=setup.getNpcName("npc_technician","title")>>. Now, why don't you shimmy out of those clothes, <<if $scene.dom>>that outfit hardly seems appropriate for a cute slave like yourself,<</if>> and crawl on up here.@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
As you strip she pulls her robe to one side to reveal her imprisoned <<getWordPenis false>>.<br>
<br>
<<if $npc_technician.relationship.sissyomatic>>
"@@.npc_technician;I would be tempted to command you to release me from chastity... but that decision is in <<=ps(setup.getNpcName("npc_ai","formal"))>> digital tendrils now...@@" <<=setup.getNpcName("npc_technician","first")>> bites her lip and shudders in obvious arousal at the thought.
<<else>>
"@@.npc_technician;For my first edict I am sore tempted to command you to release me from this diabolical cage! But no... that would be abusing my power. Of course a locked <<=setup.getNpcName("npc_technician","title")>> can lead to... consequences for her subject...@@"
<</if>>
<br><br>
You grin and shiver slightly, taking a moment as she guides you to your feet to kiss her cage. She coos in pleasure and then grabs you by the <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>collar<<else>>hair<</if>> to pull you in for a kiss.
<<else>>
You do as she commands, joining her on the bed as she guides you onto her hips, <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>removing your plug and <</if>>sliding into your rear.
<</if>>
<br><br>
Bouncing her hips gently up and down, she holds you close, remaining seated as she teases your nipples with her tongue.<br>
<br>
She is a maestro, a conductor in complete control as she draws you out, making you gasp and moan and beg but holding you back from the crescendo of orgasm, making it build and build until you start to thrash. Overcome with sensation, her arms wrapped around you to hold you fast it is only then that she whispers "@@.npc_technician;Permission.@@"<br>
<br>
You cum, hard, and distantly feel her do the same. When your body finally stops trembling you slide off to the side, staring at her as she smiles down.
<<if $scene.changeYourCollar>>
She locks a familiar collar back around your throat.<br>
<br>
"@@.npc_technician;No fancy ceremony this time... just once again marking you as mine... mmm, I so love the sound of that. Almost as much as I love the sight of that collar around your oh-so-lovely throat.@@"<br>
<br>
<<if $scene.changeHerCollar>>
She finishes off by removing her collar with a wink. "@@.npc_technician;We don't want to confuse things, hmm?@@"
<</if>>
<<else>>
She gently brushes your face before rolling over to give you a kiss.<br>
<br>
"@@.npc_technician;I hope you enjoyed that, because I have so many future plans for my lovely slave-girl.@@"
<</if>>
<br><br>
You blush and smile back, welcoming her embrace as you complete your surrender.
<<case 'neutral'>>
Standing at the foot of the bed you smile back at her, asking if you might join at her side.<br>
<br>
"@@.npc_technician;As equals? Oh, how deliciously vanilla, <<if $scene.dom>>why don't you get out of that jacket so you don't stab me,<</if>> and hop on up here.@@"<br>
<br>
Doing as she requested and joining her in bed, your lips meet, your hands sliding under her robe as she caresses you, your tongues dancing together as you moan and gasp and grind.<br>
<br>
She whispers sweet nothings in your ear and you return the favour, rolling around on the bed, exploring and savouring one another's touch until you are too tired to do anything but rest, content in each other's grasp.<br>
<br>
"@@.npc_technician;I like this, you and me, together, equals... it'll be fun.@@"<br>
<br>
<<if $npc_technician.relationship.has_collared_her && $npc_technician.relationship.has_owned && ($player.flags.collar.collarId == "" || $player.flags.collar.collarId == "npc_technician")>>
Her eyes twinkle. "@@.npc_technician;Speaking of equals... which shall it be, both of us collared, or neither?@@"
<<elseif $scene.changeYourCollar>>
She pauses and removes your collar. "@@.npc_technician;Wouldn't really be fair for just one of us to be wearing one of those, hmm?@@"
<<elseif $scene.changeHerCollar>>
She pauses and removes her collar. "@@.npc_technician;Wouldn't really be fair for just one of us to be wearing one of those, hmm?@@"
<<else>>
You agree and kiss her back.
<</if>>
<<case 'sub'>>
<<if setup.checkVisibleClothingTag('bold') > 40 || setup.getTotalValue("dominance") >= 4>>
<<if setup.checkVisibleClothingTag('bold') > 40 && setup.getTotalValue("dominance") >= 4>>
The combination of a dominant outfit and your growing skills at such prove just the ticket as <<=setup.getNpcName("npc_technician","first")>> bites her lip submissively and slides to her knees as you walk across the room.<br>
<br>
<<elseif setup.checkVisibleClothingTag('bold') > 40>>
Your dominant outfit makes an immediate impression and she bows submissively as you walk across the room.<br>
<br>
<<elseif setup.getTotalValue("dominance") >= 4>>
Even without proper attire you've started to figure out how to harness your dominant energy, and she starts looking more submissive from the moment you step into the room.<br>
<br>
<</if>>
Standing at the foot of the bed you look down at <<=setup.getNpcName("npc_technician","first")>> with a slight smile. Your voice firm, but gentle, you inform her that her reign is over, that you have come to put an end to her loneliness and claim her for your own.<br>
<br>
Blinking up at you submissively she crawls across the bed, prostrating herself as she whispers her reply.<br>
<br>
<<if $scene.changeHerCollar>>
"@@.npc_technician;Of course, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" Instantly she is pressing a collar into your hands and you are bringing the familiar leather and silver to her throat, locking it in place with a click as she smiles.<br>
<br>
<<if $scene.changeYourCollar>>
"@@.npc_technician;Feels good to be collared again... only...@@" Her gaze slides to your collar and she reaches up to remove it. "@@.npc_technician;Wouldn't want to confuse things — what with us switching roles and all. I'll just hold onto this for the next time.@@"
<<else>>
"@@.npc_technician;Feels good to be collared again.@@"
<</if>>
<br><br>
You smile, hooking a finger through her collar and pulling her in for another kiss.
<<else>>
"@@.npc_technician;I have waited so long for this... I surrender my heart freely to you, my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, what is your first command?@@"<br>
<br>
You grin, leaning over to embrace her, kissing her hungrily as you lay claim to her body. Moaning at your slightest touch it isn't long before she cums with a submissive gasp, thanking you profusely for the privilege before curling up in your arms.
<<if $scene.changeYourCollar>>
<br><br>
Her gaze slides to your collar and she reaches up to remove it. "@@.npc_technician;Wouldn't want to confuse things — what with us switching roles and all. I'll just hold onto this for the next time.@@"
<</if>>
<</if>>
<<else>>
You try to put forth a dominant semblance but you lack the skills, or the attire, to really make the right impression.<br>
<br>
Your voice a bit too breathless to be properly authoritative you somewhat awkwardly start in on a monologue only for her to cut you down with a soft smile.<br>
<br>
"@@.npc_technician;So... I totally see what you're trying to do but, well, dressed like that and everything, you're just too gosh-dang cute to be intimidating. Maybe I could find you a better outfit for next time but for now... well, why don't you just slide on over here and cuddle?@@"<br>
<br>
You blush, she's right, you really are lacking in "dominant" energy. Once you're wrapped in her arms, lips pressed together, however, well... all of that falls away.<br>
<br>
Eventually you are too tired to do anything but rest, content in each other's grasp.<br>
<br>
<<if $npc_technician.relationship.her_role == "dom">>
"@@.npc_technician;Don't worry, my dear, I won't hold this little insurrection against you... well, not too much.@@" She winks and gives you a kiss.
<<else>>
"@@.npc_technician;I like this, you and me, together, neither one of us in charge... it'll be fun.@@"
<</if>>
<br><br>
You agree and kiss her back.
<</if>>
<<default>>
ERROR: unknown scene role: <<=$scene.her_role>>
<</switch>>
<br><br>
<<if $scene.her_role == 'neutral' && $npc_technician.relationship.has_collared_her && $npc_technician.relationship.has_owned && ($player.flags.collar.owner == "" || $player.flags.collar.owner == "npc_technician")>>
[<<moveTo 'event_technician_private_game_quest_collars' "Collars for all!" 180 "<<set $scene.collars=true>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_collars' "Bare necks all around." 60 "<<set $scene.collars=false>>">>]
<<else>>
Lying on her bed, wrapped in each other's arms she plants a soft kiss on your forehead.<br>
<br>
<<switch $scene.objective>>
<<case 'fem'>>
"@@.npc_technician;So, you have claimed the heart of the medusa... time to cast your spell?@@"<br>
<br>
Turning up you take a moment to admire her pretty face before leaning in to kiss her lips, explaining that you don't need a spell to obtain the essence of femininity, for it was inside of you all along.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smiles with pride and happiness. "@@.npc_technician;I know... I always knew. But that doesn't mean I don't love hearing you say it.@@" Her expression becomes a bit more mischievous "@@.npc_technician;You know what isn't currently inside of you, but should be? Me.@@"<br>
<br>
You both laugh at the corny joke, though she makes no effort to make good on her offer, seemingly more than content to merely cuddle and kiss.
<<case 'devotion'>>
"@@.npc_technician;So, the valiant heroine has claimed the heart of the medusa, I would say your worth is quite proven...@@"<br>
<br>
You smile, blush and resume kissing her.
<<case 'repeat'>>
"@@.npc_technician;Once again you have bested the medusa... by being the best.@@" She pulls you closer.<br>
<br>
You smile, blush and resume kissing her.
<<default>>
ERROR: unexpected scene.objective <<=$scene.objective>>
<</switch>>
<br><br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 7, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 7, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo 'event_technician_private_game_6' "Continue." _timeToMorning>>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end the game here." 300>>]
<</if>>
</div>/*#
#desc: technician roleplay: technician dom/sub spend first night together
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.collars>>
<<set $scene.addYourCollar = $player.flags.collar.collarId == "">>
<<if $scene.addYourCollar>>
<<set $player.flags.collar.owner = "npc_technician">>
<<set $player.flags.collar.collarId = "goth_collar">>
<<addItem $player.flags.collar.collarId>>
<<wearItem $player.flags.collar.collarId true>>
<</if>>
<<set $scene.addHerCollar = !$npc_technician.relationship.her_collared>>
<<set $npc_technician.relationship.her_collared = true>>
<<else>>
<<set $player.flags.collar.owner = "">>
<<set $scene.removeYourCollar = $player.flags.collar.collarId != "">>
<<if $scene.removeYourCollar>>
<<removeItem $player.flags.collar.collarId true>>
<<deleteItem $player.flags.collar.collarId>>
<</if>>
<<set $player.flags.collar.collarId = "">>
<<set $scene.removeHerCollar = $npc_technician.relationship.her_collared>>
<<set $npc_technician.relationship.her_collared = false>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.collars>>
<<=setup.getNpcName("npc_technician","first")>> grins
<<if $scene.addYourCollar && $scene.addHerCollar>>
and quickly produces the pair of familiar leather collars. You switch off collaring one another and then settle in for cuddles.
<<elseif $scene.addYourCollar>>
as she produces your familiar collar. A moment later and it is around your throat once more — mirroring her own still-in-place collar. She grins and pulls you in for a cuddle.
<<elseif $scene.addHerCollar>>
as she produces a familiar collar. She holds her hair out of the way as you carefully buckle it around your throat once more — mirroring the one already around your neck. She grins and pulls you in for a cuddle.
<<else>>
ERROR: unexpected add collar state!
<</if>>
<<else>>
<<if $scene.removeYourCollar && $scene.removeHerCollar>>
You and <<=setup.getNpcName("npc_technician","first")>> remove one another's collars before settling in
<<elseif $scene.removeYourCollar>>
<<=setup.getNpcName("npc_technician","first")>> removes your collar, tenderly running her fingers around your now-bare throat before settling in
<<elseif $scene.removeHerCollar>>
<<=setup.getNpcName("npc_technician","first")>> trembles slightly as you remove her collar before snuggling up next to you
<<else>>
ERROR: unexpected remove collar state!
<</if>>
for some relaxed cuddling.
<</if>>
<br><br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 7, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 7, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo 'event_technician_private_game_6' "Continue." _timeToMorning>>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end things here." 300>>]
</div>/*#
#desc: technician roleplay: technician dom/sub spend first night together
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<applyFatigue -100>>
<<applyStress -20>>
<<set $daily = {}>>
<<include "clearShorttermEffects">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
Neither one of you wishing to separate you somehow manage to get naked, drifting to sleep entwined in one another's grasp.<br>
<br>
You awaken to her kisses, eyes fluttering open to find her smiling at you. You blush and kiss her back, so giddy after your sleepover you almost giggle.<br>
<br>
Sliding out of bed the two of you get dressed<<if $scene.her_role == 'dom' && $npc_technician.relationship.her_caged>> and grin cheekily as you help her back into her cage<</if>>, resisting the urge to drag her back into bed before eventually heading home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600 "<<useClothSetPop 'tmp'>><<set $scene.daily = {}>>">>]
</div>/*#
#desc: technician roleplay: technician dom/sub unlock repeatable
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.offerJacket = setup.hasThreshold('dominance', 'dominance_alex', 'dom_quest') || setup.hasThreshold('dominance', 'dominance_alex', 'dom_stripping')>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png">>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.unlock_sub>>
Popping out of the room, she deposits the box containing a sexy leather jacket and matching skirt combo, flashing a wink before ducking back inside.<br>
<br>
<</if>>
You have a few minutes to plan your actions before you hear her voice floating out from the bedroom.<br>
<br>
<<if $scene.offerJacket>>
She ducks into the bedroom only to pop back out holding a box.<br>
<br>
"@@.npc_technician;Oh, I told you I was going to find you an outfit, well, it's here if you want to try wearing it...@@"<br>
<br>
She winks before ducking back into her room.<br>
<br>
You open the box to find a leather jacket and skirt. Tight, black, spiked and sexy it's a very different style than your usual fare. If you would dare wear it it would certainly make an impression...<br>
<br>
You're still trying to make your decision when you hear her voice ring out through the door.<br>
<br>
<</if>>
"@@.npc_technician;Approach, brave mortal, and enter into my lair!@@"<br>
<br>
<<if setup.checkPlayerDressed()>>
<<if $scene.offerJacket>>
[<<moveTo 'event_technician_private_game_quest_4' "Quickly change and enter her lair." 180 "<<set $scene.dom=true>><<set $scene.objective='repeat'>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_4' "Enter her lair as you are." 180 "<<set $scene.dom=false>><<set $scene.objective='repeat'>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end the game here." 300 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo 'event_technician_private_game_quest_4' "Enter her lair." 180 "<<set $scene.dom=false>><<set $scene.objective='repeat'>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Say you'd like to end the game here." 300 "<<set $player.cutscene.lockinventory=true>>">>]
<</if>>
<<else>>
<<printThought "Should make sure I'm dressed for this...">><br>
<br>
<<if $scene.offerJacket>>
[<<moveTo 'event_technician_private_game_quest_4' "Change into the outfit she offered and enter her lair." 180 "<<set $scene.dom=true>><<set $scene.objective='repeat'>><<set $player.cutscene.lockinventory=true>>">>]<br>
[@@.link_locked;You need to finish changing.@@]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Put your clothes back on and say you'd like to end the game here." 300 '<<set $player.cutscene.lockinventory=true>><<useClothSetPop "beforeChange" true>>'>>]
<<else>>
[@@.link_locked;You need to be dressed for this.@@]<br>
[<<moveTo 'event_technician_private_game_quest_abort' "Put your clothes back on and say you'd like to end the game here." 300 '<<set $player.cutscene.lockinventory=true>><<useClothSetPop "beforeChange" true>>'>>]
<</if>>
<</if>>
</div>/*#
#desc: technician roleplay: abort quest
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_technician' 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You suddenly tell her that you're not feeling this tonight and could you do something else?<br>
<br>
"@@.npc_technician;Sure, yeah, of course, sorry.@@" You can tell she's a bit disappointed, but even more she seems concerned that you're enjoying yourself. "@@.npc_technician;Okay, well... I guess that's it for tonight, I'm actually feeling a bit lethargic from dinner.@@"<br>
<br>
[<<moveTo 'room_student_quarter' "Say goodnight and depart." 180>>]
</div>/*#
#desc: choose role play with technician
#status: RELEASED 0.7.10.0
#ignore_spell: fect
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() > 23 || $now.getUTCHours() < 5>>
The hour has grown mighty late and it is time for you to depart. <<=setup.getNpcName('npc_technician', 'first')>> thanks you for spending time with her and gives you a parting hug before you leave her apartment.<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 600>>]
<<elseif $player.timebased.fatigue >= .9*$player.timebased.fatiguemax>>
You would like to keep playing with your girlfriend but you are exhausted, barely able to keep your eyes open, much less actively participate in anything. Giving you a hug she bids you farewell and suggests you get a good night's "@@.npc_technician;Cutie sleep.@@"<br>
<br>
[<<moveTo 'room_foyer' 'Home.' 600>>]
<<elseif $player.virgin.blowjob && $npc_technician.relationship.kinks.bimbofication && !State.hasPlayed("event_technician_bimbo_1")>>
<<moveTo "event_technician_bimbo_1">>
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> grins with delight as she asks what sort of
<<if $npc_technician.relationship.kinks.bondage>>
<<if $npc_technician.relationship.kink_indulge.bondage>>
"@@.npc_technician;Role play... or rope play, whatever you're up for tonight.@@" She winks.
<<else>>
"@@.npc_technician;Rope play... er, I mean role play. Sorry, been thinking about you telling me how much you like bondage... I maaay have been studying a bit of the old shibari...@@" She winks.
<</if>>
<<else>>
"role play" you're in the mood for.
<</if>>
<br><br>
<<if $npc_technician.relationship.quest_game_unlock>>
[<<moveTo 'event_technician_private_game_quest_1' "Say you'd like to go on a quest." 300>>]<br>
<<else>>
[@@.link_locked;You feel like you need to think of the perfect scenario to get <<=setup.getNpcName('npc_technician', 'first')>> to open up more. Maybe someone with knowledge of the human psyche could help you out?@@]<br>
<</if>>
<<if $player.virgin.blowjob>>
[<<moveTo 'event_technician_private_game_teacher_1' 'Ask if she might "teach you a lesson".' 300>>]<br>
<</if>>
[<<moveTo 'event_technician_private_game_cop_1' "State that you don't care what evidence they have against you, you'll never talk!" 300>>]<br>
<<if $npc_technician.relationship.done_you && $player.virgin.blowjob>>
[<<moveTo 'event_technician_private_game_nurse_1' 'Cough and say you could really use some "medical attention."' 300>>]<br>
[<<moveTo 'event_technician_private_game_nun_1' "Confess you've been having sinful thoughts lately." 300>>]<br>
<</if>>
[<<moveTo 'event_technician_private_game_strip_game_1' "Ask to play a private game." 3600>>]<br>
<<if $npc_technician.relationship.done_her>>
[<<moveTo 'event_technician_private_game_superhero_1' "Ask if she could be your super heroine." 300>>]<br>
<</if>>
<<if $player.virgin.blowjob>>
[<<moveTo 'event_technician_private_game_wrestle_1' "Challenge her to a rasslin match." 300>>]<br>
<</if>>
<<if $npc_technician.relationship.her_role != "neutral">>
<<if $player.virgin.blowjob && ($npc_technician.relationship.private_games.nun_neutral || $npc_technician.relationship.private_games.nun_sub || $npc_technician.relationship.private_games.nun_dom) && $npc_technician.relationship.done_her>>
[<<moveTo 'event_technician_private_game_demon_1' "Say she's looking quite... daemonic today." 300>>]<br>
<</if>>
<<if $npc_technician.relationship.private_games.cop_sub || $npc_technician.relationship.private_games.cop_dom>>
[<<moveTo 'event_technician_private_game_inquisitor_1' 'Speak heresy.' 300>>]<br>
<</if>>
<</if>>
<<if $fetish.pet_play>>
<<if $npc_technician.relationship.her_role != "neutral">>
[<<moveTo 'event_technician_private_game_pony_1' "Ask if she wants to horse around." 300>>]<br>
<</if>>
[<<moveTo 'event_technician_private_game_cat_1' "Say you're fe-line purr-fect, nya!" 300>>]<br>
[<<moveTo 'event_technician_private_game_dog_1' "Say you're feeling a little... bitchy." 300>>]<br>
<</if>>
<<if $fetish.bestiality_hard && $npc_technician.relationship.kinks.bestiality && !$scene.bestiality_first>>
<<if $npc_technician.relationship.kink_indulge.dog > 1>>
[<<moveTo 'event_technician_private_game_dog_park_1' "Ask if she'd like to take another trip to the park..." 300>>]<br>
<<elseif !$fetish.pet_play || $npc_technician.relationship.kink_indulge.dog == 1>>
[<<moveTo 'event_technician_private_game_dog_park_1' "It looks like she's trying to get up the nerve to propose something..." 300>>]<br>
<</if>>
<</if>>
<<if $fetish.milking && $player.body.breastsize[0] > 0 && $player.body_ref.milkProduction > 0 && $npc_technician.relationship.her_role == "dom" && $player.timebased.milking.milk_supply > 20>>
[<<moveTo 'event_technician_private_game_milk_1' "Grope your breasts and say you need to be milked." 300>>]<br>
<</if>>
<<if $npc_technician.relationship.kinks.bondage>>
<<if State.hasPlayed("event_technician_private_game_bondage_1") && $npc_technician.relationship.her_role == "dom" && $npc_technician.relationship.keyholder && setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_technician_private_game_bondage_repeat' "More rope play?" 60>>]<br>
<<else>>
[<<moveTo 'event_technician_private_game_bondage_1' "Rope play?" 300>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_technician_bimbo_1")>>
[<<moveTo 'event_technician_bimbo_1' "You'd like to indulge in some more bimbofication play..." 180>>]<br>
<</if>>
<<if $npc_technician.flags.evil >= 2>>
<<if State.hasPlayed("event_technician_evil_cosplay_0")>>
[<<moveTo 'event_technician_evil_cosplay_1' 'Ask if you could visit the "mirror universe."' 180>>]<br>
<<else>>
[<<moveTo 'event_technician_evil_cosplay_0' "Ask if she hung on to her evil outfit?" 180>>]<br>
<</if>>
<</if>>
<br>
[<<moveTo $scene.returnPassage 'Role-playing is great... but maybe something else?' 60>>]<br>
<<if $npc_technician.relationship.her_role == 'dom' && setup.getTotalValue("submission") >= 15 && $npc_technician.affection == 10 && $npc_technician.anger == 0 && (!($fetish.chastity_vag && $player.body_ref.vagina && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis) || $npc_technician.relationship.keyholder) && $player.flags.collar.collarId == "" && (!$currentTasks.hasOwnProperty('technician_roleplay_surgery') || $currentTasks.technician_roleplay_surgery.finished) && setup.findThemeId('npc_technician', 'sex', 'theme_technician_collar') == -1>>
[<<moveTo 'event_technician_collar_offer_1' 'Head home.' 60>>]
<<else>>
[<<moveTo 'event_technician_private_game_leave' 'Call it a night and head home.' 600>>]
<</if>>
<</if>>
</div>/*#
#desc: technician roleplay - nurse intro
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> smiles, putting a note of faux concern in her voice as she touches your forehead.<br>
<br>
"@@.npc_technician;Oh my, you're so... hot, why don't you get out of those clothes I'll go fetch Nurse <<=setup.getNpcName('npc_technician', 'last')>> to have a look at you.@@"<br>
<br>
With a wide grin on her face she skips off to her bedroom.<br>
<br>
[<<moveTo 'event_technician_private_game_nurse_2' "Get naked." 120>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 300>>]
</div>/*#
#desc: technician roleplay - she's the sexy nurse, you're the "sick" patient
#status: RELEASED 0.7.10.0
#ignore_spell: d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.private_games.nurse = true>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_nurse")>>
<div id="invframe" class="scrolltext">
You've just finished slipping out of your clothes when "Nurse <<=setup.getNpcName('npc_technician', 'last')>>" strides out of her bedroom in a sexy, skimpy nurse costume complete with cute hat.<br>
<br>
"@@.npc_technician;So@@" She states breathlessly as she strikes a sexy pose in the doorway, "@@.npc_technician;What seems to be the problem?@@"<br>
<br>
Sitting up in the couch you reply that you feel a bit hot...<br>
<br>
"@@.npc_technician;Hot indeed...@@" She states as she walks forward, stopping in front of you and caressing your face. "@@.npc_technician;Hmm, let's take your temperature...@@" Flipping up her skirt to reveal her <<if $npc_technician.relationship.her_caged>>caged <</if>>penis and brings it towards your lips. "@@.npc_technician;Open wide, my dear, and let's see if we can figure out what's wrong with you...@@"<br>
<br>
Smiling up at her you open your mouth as she gently passes your lips. Sucking softly you bob your head until she lets out a soft gasp.<br>
<br>
"@@.npc_technician;Oh, yes, I can see what you mean! I've never had a patient that was so... hot.@@"<br>
<br>
You moan, continuing to suck on her delicious <<getWordPenis false>> until she pulls away. "@@.npc_technician;Patient is congratulated on being very cooperative, but we really must continue the exam if we are to get to the... bottom of things.@@"<br>
<br>
Guiding you to lay back on the couch her hands glide over your naked body, groping and caressing as she teases and coos, asking "@@.npc_technician;How does this feel? And this?@@"<br>
<br>
Moaning with lust you can only reply honestly — that it feels so good, especially when she brings her lips and tongue into the equation, turning you over and kissing her way up your spine as you go all tingly.<br>
<br>
"@@.npc_technician;Patient is confirmed feverish, immediate measures recommended. Does patient give consent for rectal application?@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
She caresses your bottom, wiggling your <<=setup.getItemTypeName("plug")>> as you moan, whispering an eager yes as you try not to drool on the couch.<br>
<br>
"@@.npc_technician;Excellent, proceeding to treatment.@@" She states, sliding the plug out of your bum and placing it aside.
<<else>>
She caresses your bottom and you moan in pleasure, whispering your eager assent as you try not to drool on the couch.
<</if>>
<br>
You hear a sharp SNAP as she pulls on a latex glove, massaging lube into your hole as you mew in pleasure before she slides on top of you.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
You feel her cage brush against your rear as she grinds teasingly.<br>
<br>
"@@.npc_technician;Equipment malfunction, switching to secondary application device.@@"<br>
<br>
Reaching under the couch she produces an impressive dildo and slips a condom over it before strapping it on just above her cage.<br>
<br>
<<printThought "Does she just have those lying around everywhere jic?">><br>
<br>
You don't have any longer to think about it before the tip is pressed against your ready hole.
<<else>>
She straddles you from behind, sliding between your cheeks before pressing her tip into your ready hole.
<</if>>
<br><br>
Nice and lubricated she glides into you as you moan in delight.<br>
<br>
Somewhat breathless she starts thrusting. "@@.npc_technician;Patient is responding to treatment, increasing dosage of vitamin D!@@"<br>
<br>
Her moans and your moans intermingle as her pace increases, mutual pleasure rising until she cries out in ecstasy. The sound of her release is enough to push you over the edge as her
<<if $npc_technician.relationship.her_caged>>
dripping climax mixes with yours to stain the couch.
<<else>>
"medicine" injects deep<<if $fetish.cum>> and you make a bit of a mess on the couch<</if>>.
<</if>>
<br><br>
Panting as she remains pressed against you she leans down, kissing your cheek and whispering in your ear.<br>
<br>
"@@.npc_technician;Treatment completed successfully. Patient is advised to return for additional treatment if symptoms of being a total hottie persist.@@"<br>
<br>
You tingle at the compliment, wiggling your butt as you whisper "@@.pc;Yes, Nurse <<=setup.getNpcName('npc_technician', 'last')>>@@" in reply.<br>
<br>
Gently sliding out of you she returns to her feet
<<if setup.checkItemTypeWorn("plug")>>
and slips the <<=setup.getItemTypeName("plug")>> back into your happy hole.
<<else>>
and gives your bum a friendly squeeze.
<</if>>
<br><br>
"@@.npc_technician;Hehe, that was fun! Let me go get changed while you think about what you wanna do next!@@"<br>
<br>
She darts back to her bedroom as you push yourself back up to your feet and use a towel clean up the couch.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Get dressed and wait for her to come back." 180 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician roleplay - nun intro
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Sinful, you say?@@" She smiles, running a finger down your cheek.
<<if setup.checkVisibleClothingTag('nun') > 70>>
"@@.npc_technician;And with you dressed in such a holy manner... still, Sisters have to look out for one another. Let me just change into something more appropriate to hear your confession...@@"
<<else>>
"@@.npc_technician;Hmm... we'll have to see about that. Let me go slip into something more appropriate to hear your... confession.@@"
<</if>>
<br><br>
[<<moveTo 'event_technician_private_game_nun_2' "Wait for her to change." 300>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 60>>]
</div>/*#
#desc: technician roleplay - she's the kinky nun, you're in need of confession
#status: RELEASED 0.7.10.0
#ignore_spell: h
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_technician.relationship.her_role>>
<<case "neutral">>
<<set $npc_technician.relationship.private_games.nun_neutral = true>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<case 'sub'>>
<<applyExperience 'dominance' 7 'normal' $SEEN_FRIEND>>
<<set $npc_technician.relationship.private_games.nun_sub = true>>
<<case 'dom'>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<<set $npc_technician.relationship.private_games.nun_dom = true>>
<</switch>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_nun")>>
<div id="invframe" class="scrolltext">
The door to <<=ps(setup.getNpcName('npc_technician', 'first'))>> room opens and she steps forth, a sexy, scantily clad latex nun. Going the extra mile she is even wearing steep (especially for her) heels, walking slowly and carefully towards you, each stiletto click making your heart skip a beat.<br>
<br>
"@@.npc_technician;So... <<if setup.checkVisibleClothingTag('nun') > 70>>my dear, <</if>>tell me your sins...@@" She states, the words dripping with sex as she looms above you.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "neutral">>
Smiling at your expression of awed arousal she slides down onto the couch, pulling you close as she leans in for a kiss.<br>
<br>
"@@.npc_technician;Come, my dear, confess your sins, unburden yourself to me...@@"<br>
<br>
You eagerly return her kisses, whispering of the lusty thoughts and fantasies you have had of her, confessing how horny your transformation has made you.<br>
<br>
She merely smiles louder, telling you that such feelings are not sins at all, that, according to her beliefs, such thoughts are gifts from the goddess to be embraced and enjoyed.<br>
<br>
"@@.pc;H-how?@@" you whisper.<br>
<br>
With a final kiss on your lips she softly replies "@@.npc_technician;I'll show you.@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>She waits for you to remove her cage before gently helping<<else>>Gently, she helps<</if>> you turn over to kneel across the couch. She
<<if setup.checkItemTypeWorn("plug")>>
slides the plug out of your rear and replaces it with her hard <<getWordPenis false>>.
<<else>>
gently slides her <<getWordPenis false>> into your eager hole.
<</if>>
<br><br>
Slowly sliding into you her hips work like magic, waves of pleasure pulsing through you with each gentle thrust. Her hips finally pressing against your bare bottom she reaches underneath to
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
fondle your <<getWordMyPenis>>.
<<else>>
stroke your chastity belt.
<</if>>
<<else>>
<<if $player.body_ref.penis>>
stroke your hard <<getWordMyPenis>>.
<<else>>
finger you.
<</if>>
<</if>>
Expertly working you from both ends she begins to whisper a prayer.<br>
<br>
"@@.npc_technician;Bless this beautiful girl, may she be, unf, filled with joy, unf, and pleasure every day of her life.@@"<br>
<br>
"@@.pc;Amen@@" you moan, cumming all over her hand. A moment later you feel her cum as well. Having caught your spill she brings her cum-covered latex fingers to your lips for you to lick clean.<br>
<br>
"@@.npc_technician;See how you have been blessed.@@" She whispers as you lick up your
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
delicious
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty
<<else>>
bitter
<</if>>
<</if>>
seed.<br>
<br>
She remains curled around you, her slowly softening cock still in your rear as she kisses your neck and rubs her latex-clad body against yours.<br>
<br>
Your pounding heart finally slowing she gently separates, kissing you again as she
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
replaces the plug in your ass and
<</if>>
gently fixes your clothes and helps you back onto the couch.<br>
<br>
You struggle to find your voice but your look of adoring gratitude speaks volumes as she smiles down, looking positively deific as she leans over to place a gentle kiss on your forehead.<br>
<br>
With a final gentle caress she departs, your eyes fixated on her sexy rubber form as she slowly walks away.
<<case "sub">>
Rising to your feet you meet her gaze. A twinkle of dominance in your eye has her wobble slightly.<br>
<br>
Reaching around you grab her by her tight, shiny ass, pulling her close and grinding against her as you whisper of your sins. With a sultry voice you paint a picture of depraved lust as you describe all of the filthy thoughts and dreams you've had about her.<br>
<br>
Trembling with desire she melts into your grasp. "@@.npc_technician;Goddess help me...@@" she moans, only for you to reply
<<if setup.checkVisibleClothingTag('nun') > 70>>
"@@.pc;The Goddess speaks through me... now show your devotion.@@"<br>
<<else>>
"@@.pc;I am your goddess... now worship me.@@"<br>
<</if>>
<br>
Sliding to her knees she
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
reveals your <<getWordMyPenis>>, her lips and tongue dancing over and between the bars of your prison, <<if $player.body_ref.balls>>sucking on your balls and <</if>>thanking you for "@@.npc_technician;Granting your humble servant this taste of your divine member...@@"
<<else>>
licks the front of your chastity belt, polishing it with her tongue and kissing the flesh on either side as she moans. "@@.npc_technician;Bless your humble servant with the honour of serving you...@@"
<</if>>
<<else>>
<<if $player.body_ref.penis>>
reveals your <<getWordMyPenis>>. Moaning with lusty anticipation she grabs it with one rubbery hand and wraps her lips around it, enthusiastically sucking with everything she has,
<<else>>
dives between your legs, her tongue eagerly making circles around your sensitive clit,
<</if>>
only occasionally pausing to remark that "@@.npc_technician;Your sin tastes so good...@@"
<</if>>
<br><br>
As she licks and sucks her free hand snakes between your legs to
<<if setup.checkItemTypeWorn("plug")>>
toy with your plug.
<<else>>
finger your ass.
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
Even locked in chastity the combination of sensations, along with the beautiful, kinky sight of your blasphemously sexy slave, is enough to push you over the edge as you leak all over her face.
<<else>>
The combination of sensations, and the beautiful, kinky sight of your blasphemously sexy slave, soon pushes you over the edge and you cum across her face.
<</if>>
<br><br>
She moans, and you wonder if she might well have orgasmed herself, gasping and shuddering before looking up at you with loving lust.<br>
<br>
"@@.npc_technician;Thank you, Mistress, for blessing me with your holy emission.@@" <br>
<br>
You smile, leaning down to kiss the beads of cum from her face and feed them to her one drop, and kiss, at a time.<br>
<br>
You congratulate her on her performance and she blushes, gasping with lust as you pull her to her feet for a final embrace before slapping her on the ass to send her back to the bedroom to change.
<<case "dom">>
She towers over you in all her dominant glory and you... you confess.<br>
<br>
As she strokes your face and slowly reveals her <<if $npc_technician.relationship.her_caged>>caged<<else>>hard<</if>> <<getWordPenis false>> you confess to anything you can think of, rattling off depraved acts and lusty fantasies alike until she <<if $npc_technician.relationship.her_caged>>orders you to remove her prison and <</if>>silences you by putting you mouth to other use.<br>
<br>
You moan in delight at the privilege of serving your <<=setup.getNpcName("npc_technician","title")>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Sucking and licking with every ounce of your considerable skill.
<<else>>
Deepthroating her and humming in delight at the feeling of her stretching your throat.
<</if>>
Her voice falters slightly, her haughty facade cracking under the pleasure of your mouth.<br>
<br>
"@@.npc_technician;Oh Goddess... your lips are a divine blessing.@@"
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You may not be an expert, but you deploy every trick you have in an effort to show, via her cock, how much you adore her.
<<else>>
You gag a little as she brushes the back of your throat but you ignore the discomfort, licking and sucking as you eagerly attempt to orally demonstrate your appreciation.
<</if>>
She moans in pleasure, obviously approving of your efforts. "@@.npc_technician;Mmm, you are such a beautiful blessing...@@"
<</if>>
<br><br>
She rocks her hips and you can sense her orgasm fast approaching. "@@.npc_technician;Yes! Don't stop, take it all... drink my blessing and be cleansed of all sin...@@"<br>
<br>
She cums, and you have a small, dry, <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>> of your own as her seed bypasses your mouth to shoot directly down your throat. You can't help but imagine it trickling down, filling your belly with a divine piece of herself to leave you feeling warm and loved.<br>
<br>
Caressing your face she smiles down at you, leaning over to gently kiss your lips, her tongue exploring your mouth, reminding you once again that you are hers.<br>
<br>
"@@.npc_technician;What a lovely slave.@@" She whispers before stepping back, giving you a final glance of her in all her latex-nun glory before she turns smartly towards the bedroom.
<<default>>
ERROR: unexpected relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
A bit wobbly in her heels she returns to her room, looking back from the threshold with a wink.<br>
<br>
<<if $npc_technician.relationship.her_role != "neutral">>
"@@.npc_technician;Mmm, that was fun... almost... daemonically so...@@"<br>
<br>
<<printThought "Hmm, I'll have to remember that for later...">><br>
<br>
<</if>>
[<<moveTo 'event_technician_private_game_root' "Wait for her to get changed." 300>>]
</div>/*#
#desc: technician roleplay: teacher intro
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Putting on your most innocent expression, you bite your lip and look up at <<=setup.getNpcName('npc_technician', 'first')>> and state that you forgot your homework...<br>
<br>
She grins, telling you to "@@.npc_technician;Hold that thought.@@" And giving you a quick peck on the cheek before darting back to her bedroom to get changed.<br>
<br>
[<<moveTo 'event_technician_private_game_teacher_2' "Wait for her to return." 300>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 60>>]
</div>/*#
#desc: technician roleplay: she's the sexy teacher, you're the disobedient student
#status: RELEASED 0.7.10.0
#ignore_spell: a+,th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_technician.relationship.her_role>>
<<case "neutral">>
<<set $npc_technician.relationship.private_games.teacher_neutral = true>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<case 'sub'>>
<<set $npc_technician.relationship.private_games.teacher_sub = true>>
<<applyExperience 'dominance' 9 'normal' $SEEN_FRIEND>>
<<case 'dom'>>
<<set $npc_technician.relationship.private_games.teacher_dom = true>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_technician.relationship.her_role == "neutral">>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_teacher")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_teacher_glasses")>>
<</if>>
<div id="invframe" class="scrolltext">
Walking back in, she's dressed in a tight skirt, white blouse, stockings and sensible heels, peering down at you over the top of her glasses.<br>
<br>
"@@.npc_technician;So, Miss <<=$player.last_name>>, do you have your report ready?@@"<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
You grin up at her, stating that you don't need to do some silly report, you only come to class to admire her sexy ass.<br>
<br>
"@@.npc_technician;Why, I never! Such disrespect, you apologise right now or I will have to report you!@@"<br>
<br>
Rising to your feet you spin her around, holding her from behind and whispering in her ear as you reach down to grope her <<getWordPenis false>> through her skirt. "@@.pc;What if I report this?@@" You ask as she moans in submissive arousal.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;No, please! You already locked me up, don't torment me like this!@@"
<<else>>
"@@.npc_technician;Not again! I told you before, I can't...@@" her objection descends into a moan as you start stroking her and nibbling her neck at the same time.
<</if>>
<br><br>
"@@.npc_technician;Please, I'll give you an A just please, please...@@"<br>
<br>
"@@.pc;Please, what?@@" You whisper, grinding against her from behind.<br>
<br>
"@@.npc_technician;Please finish me off! Teach me a lesson!, Oh you make me so hard and distracted! I can't teach like this!@@"<br>
<br>
You tease her a bit more, until she promises to give you not just an A+, but a letter of recommendation before you finally
<<if $npc_technician.relationship.her_caged>>
remove her cage and
<</if>>
begin stroking her in earnest.<br>
<br>
She'd be on the floor if it wasn't for you holding her up, her legs wobbly as you stroke her and continue to whisper in her ear about how much you enjoy owning her. With your encouragement it doesn't take long for her to cum, spurting all over your hand before you bring it to her lips as she daintily licks your fingers clean.<br>
<br>
"@@.npc_technician;Th-thank you for the lesson, Mistress.@@" She whispers as she leans back to share a kiss with you.<br>
<br>
Tongues dancing together you embrace until she finds her feet and you gently let her go. Blushing and smiling she adjusts her glasses and heads back to her bedroom.
<<case "dom">>
You shrug and say you didn't bother writing anything, after all, what practical application does her class have, anyway?<br>
<br>
"@@.npc_technician;Practical application!? Why, I'll show YOU practical applications, missy!@@"<br>
<br>
Grabbing hold of you she bends you over her knee as she sits on the couch, pulling down your clothing to expose your bum as she produces a ruler.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
"@@.npc_technician;What's this?@@" She asks incredulously, wiggling your plug and making you gasp as it prods your sensitive <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. "@@.npc_technician;Is this why you're always distracted during class? You naughty girl!@@"<br>
<br>
<</if>>
You gasp as she lands the first blow on your bottom, the ruler making a sharp *CRACK* as it impacts your soft flesh.<br>
<br>
"@@.npc_technician;You naughty, foolish girl. What sort of job do you expect to get if you don't study?@@"<br>
<br>
You moan and whisper "@@.pc;Your slave?@@"<br>
<br>
"@@.npc_technician;My slave? As if I would own such a disobedient slut!@@" She lands another pair of blows to your rear before she seems to reconsider. "@@.npc_technician;Oh, but I do so love spanking your bottom...@@"<br>
<br>
"@@.npc_technician;Tell you what, my over-enthusiastic teachers pet, you can be my slave if you promise to be a good girl and finish all of your assignments for the rest of the semester, will you do that for me?@@"<br>
<br>
You moan and nod as she massages your rear.<br>
<br>
"@@.npc_technician;Good, now your first assignment is to keep count. After all, you still need to be punished for your prior misbehaviour.@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_technician","title")>>@@" you reply quickly before the ruler lands again and you gasp out "@@.pc;One!@@"<br>
<br>
You've made it up to eight when, instead of the usual *SNAP* of wood on flesh there is a crack, the ruler splitting in half across your bottom!<br>
<br>
"@@.npc_technician;Well! Look what you just did!@@" She lands a final slap with her bare hand, squeezing your sore, red bottom in conclusion. "@@.npc_technician;I guess that will have to do, but know that after work today I am going right to the supply store and buying a regulation corporal punishment paddle, you won't get out of your next punishment so easily!@@"<br>
<br>
You coo in delight, thanking her and dropping into a submissive curtsy after she helps you back to your feet.<br>
<br>
Giving you a kiss as she pulls up your clothes she slides past, walking back to her room with careful steps.
<<case "neutral">>
You blush and look away, mumbling that "@@.pc;Your dog ate it.@@"<br>
<br>
"@@.npc_technician;Your dog... if I had a credit for every time I'd heard THAT one, well... it'd be worth a lot more than I'm paid to try and educate you disobedient malcontents.@@"<br>
<br>
She pauses, looking down at her clipboard for a moment before addressing you again. "@@.npc_technician;Tsk, and this isn't the first time! Why, the way you're going, you could well fail the course completely!@@"<br>
<br>
You ask if maybe you could earn some extra credits?<br>
<br>
"@@.npc_technician;Hmm, I suppose it is my duty not to let you fall behind... perhaps you would be willing to give an "oral presentation" to show that you have properly absorbed the material?@@"<br>
<br>
You nod eagerly, sliding to your knees and raising her skirt. <<if $npc_technician.relationship.her_caged>>After removing her cage a<<else>>A<</if>> few licks soon has her at full hardness and she trembles. "@@.npc_technician;Good, now start by giving an overview of the subject matter, then do a deep, penetrating investigation into the subject...@@"<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You give her a very THOROUGH report, covering the full length of the subject and going into meticulous detail.
<<else>>
After a brief preamble, you do a proper deep-dive, opening wide to show her the depth of your subject mastery.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
Perhaps you should have studied more, but you do your best to impress her with your depth of understanding, coughing slightly before forced to revert to a more shallow treatment of the full breadth of the subject.
<<else>>
You still haven't quite figured out deep-throating, so you end up resigning yourself to a "brief" rather than a full summary
<</if>>
<</if>>
<br><br>
Moaning in pleasure, it isn't long before your presentation cums to a proper climax.<br>
<br>
"@@.npc_technician;Oh, well, yes, it would appear that you do have an understanding of the subject at hand.@@" She states as you swallow her
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
delicious
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty
<<else>>
bitter
<</if>>
<</if>>
cum, delicately holding her softening cock with one hand.<br>
<br>
"@@.npc_technician;Now, do remember to keep up with your studies going forward, I would hate for such a... precocious student to be held back due to a bit of paperwork.@@"<br>
<br>
You smile, and thank her for the instruction, she pats you on the head and then turns, letting you admire her from behind as she walks back to her bedroom.
<<default>>
ERROR: unexpected relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
[<<moveTo 'event_technician_private_game_root' "Catch your breath and wait." 600>>]
</div>/*#
#desc: technician roleplay: demon
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Daemonic?@@" She grins. "@@.npc_technician;Oh, you have NO idea, wait until you see my true form...@@"<br>
<br>
Slinking away she disappears into her room for a moment before popping back out with a largish box.<br>
<br>
"@@.npc_technician;Oh, you'll need this...@@" She states with a wink before ducking out of sight again.<br>
<br>
Opening the decent sized box you find what looks like a professionally made Space Battle Nun costume.<br>
<br>
[<<moveTo 'event_technician_private_game_demon_2' "Get changed." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 300>>]
</div>/*#
#desc: technician roleplay: demon: get changed into sisters of battle outfit
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem 'sororitas'>>
<<wearItem 'sororitas' true>>
<<addItem 'riding_boots_temp'>>
<<wearItem 'riding_boots_temp' true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_demon")>>
<div id="invframe" class="scrolltext">
The Space Battle Nun outfit is quite well made, and not too difficult to get into, a tight bodysuit followed by boots, gauntlets, corset-like armour and, of course, pauldrons. You just have enough time to admire how sexy it makes you look when the door to the bedroom slowly swings open.<br>
<br>
"@@.npc_technician;My, my, a lone battle-sister, weapon-less, helpless... how delicious...@@"<br>
<br>
Your jaw drops as you look upon <<=setup.getNpcName('npc_technician', 'first')>> and her latest costume.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
[<<moveTo 'event_technician_private_game_demon_3' "Tame the demon." 600 "<<set $scene.submit = false>>">>]<br>
[@@.link_locked;As her dom it is your responsibility to put her in her proper place; at your feet.@@]<br>
<<case "dom">>
[<<moveTo 'event_technician_private_game_demon_3' "Give in to chaos." 600 "<<set $scene.submit = true>>">>]<br>
[@@.link_locked;She is your dom, her power irresistible.@@]<br>
<<case "neutral">>
[<<moveTo 'event_technician_private_game_demon_3' "Give in to chaos." 600 "<<set $scene.submit = true>>">>]<br>
[<<moveTo 'event_technician_private_game_demon_3' "Tame the demon." 600 "<<set $scene.submit = false>>">>]<br>
<<default>>
ERROR: unexpected relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 300 "<<removeItem 'sororitas' true>><<deleteItem 'sororitas'>><<removeItem 'riding_boots_temp' true>><<deleteItem 'riding_boots_temp'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician roleplay: she's the chaos demon, you're the captured sister of battle
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.submit>>
<<set $npc_technician.relationship.private_games.demon_sub = true>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<else>>
<<set $npc_technician.relationship.private_games.demon_dom = true>>
<<applyExperience 'dominance' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_demon")>>
<div id="invframe" class="scrolltext">
Wearing a light purple latex bodysuit helps <<=setup.getNpcName('npc_technician', 'first')>> look almost totally alien. Not just due to the hue of her skin, but because she now has six breasts ranging from moderate to quite large running down her chest instead of her normal small tits. Makeup, a purple wig, pointed ear extensions and horns complete her transformation from cute human to sexy daemonette of the Dark Princess of Pleasure.<br>
<br>
Her only "clothing" a handful of leather straps running from a collar down between her neck and over her hips they culminate in the true piece de resistance — the massive thirty-centimetre-long <<if $fetish.bestiality_soft>>inhuman<</if>> cock-sheath danging between her legs, glistening with lube.<br>
<br>
<<if !$scene.submit>>
Laying eyes on her new "form" you know only one thing — that you must tame this creature.<br>
<br>
Stepping forward confidently you order her to surrender or you will be forced to purge the galaxy of her wicked ways.<br>
<br>
She merely grins wickedly, stroking her oversized cock menacingly as she asks "@@.npc_technician;And what, foolish sister, do you think you can do to one such as me?@@"<br>
<br>
"@@.pc;This,@@" you reply, grabbing her by the back of the head and pulling her face to your crotch, impressed at how well her horns work as handles for you to woman-handle her into position.<br>
<br>
As if designed for this very moment your costume has a convenient panel that you pull aside to reveal your
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
<<getWordMyPenis>> and you take a few moments to cram it down her demonic throat as she eagerly swallows and moans submissively.
<<else>>
wet cunt and you and you take a few moments to rub it against her face as she eagerly kisses and licks submissively.
<</if>>
<<else>>
<<if setup.isCage()>><<getWordMyPenis>><<else>>sleek chastity belt<</if>>. She enthusiastically worships your prison with her lips.
<</if>>
<br><br>
Yanking her back to her feet you give her a nice hard slap on the ass before reaching between her legs to stroke her sheathed cock, taking a few moments to inspect the device before sliding it off of her and <<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>attaching it over your own member instead<<else>>wearing it over three fingers like a perverted glove<</if>>.<br>
<br>
Her ass covered in skin-tight latex you gently part the rear zipper to reveal her hungry hole within.<br>
<br>
[<<moveTo 'event_technician_private_game_demon_3_her_sub' "Time to fuck the daemon." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 300 "<<removeItem 'sororitas' true>><<deleteItem 'sororitas'>><<removeItem 'riding_boots_temp' true>><<deleteItem 'riding_boots_temp'>><<useClothSetPop 'tmp'>>">>]
<<else>>
Seeing her in such daemonic glory you can do nothing but fall to your knees, mesmerised by her massive member.<br>
<br>
"@@.npc_technician;Open up my sweet sister or I'm going to pound my way in like the Uruk-hai at Helms Deep.@@"<br>
<br>
The corny line has you to a quick double take, looking up at her gleefully grinning face.<br>
<br>
"@@.npc_technician;Sorry, mixing mythologies a bit there but, well... I ALWAYS wanted to use that line... anyway, open wide!@@"<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Bringing it to your lips she is obviously impressed when you open wide and take it
<<if setup.getTotalValue("oral") > 15>>
all the way down, your throat bulging around it as you rub your nose against her belly and she gasps in awe.
<<else>>
almost all the way down, unable to quite make the final centimetre or so as you throat struggles to handle the combination of length and girth.
<</if>>
<<else>>
You struggle just to wrap your mouth around its thick head
<<if setup.getTotalValue("oral") > 5>>
managing to get it merely to the threshold of your throat before you start to gag, coughing as you pull back.
<<else>>
barely getting more than the first few centimetres into your mouth before your gag reflex rises fast.
<</if>>
<</if>>
<br><br>
"@@.npc_technician;Your face looks so beautiful like that but this is meant for another hole my battle sister... or should I call you battle slut? Once you've felt me inside of you, well...@@" She strokes herself theatrically. "@@.npc_technician;Only then will your conversion to chaos be complete...@@"<br>
<br>
You moan in anticipation, submissively turning around and bending over, the rear of your costume unzipping in a moment to expose your ass.<br>
<br>
"@@.npc_technician;Relax.@@" She states softly as she presses the tip of her enhanced member against your hole.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
You moan, her length easily sliding all the way into your expert hole.
<<else>>
You moan, as she encounters only minor difficulty in sliding deep into your well-trained hole.
<</if>>
<br><br>
<<if $fetish.bestiality_soft>>
You feel every ridge and bump of the alien cock-sheath as she plows you from behind.
<<else>>
Her oversized cock spreads you wide, burrowing into your depraved depths as your <<if $player.body_ref.penis>>prostate courses<<else>>insides course<</if>> with pleasure.
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Her enhanced cock opens you in new, intense ways. Her patient motion, and copious lube, allows it to slide over a dozen centimetres deep into your rear passage as you tremble and moan before she ceases her quest for depth and begins to gently hump.
<<else>>
Her enhanced cock is surely too big for your novice hole and yet, aided by copious lube she manages to slide several centimetres of it into you, just enough to get a nice humping rhythm going.
<</if>>
<<if $fetish.bestiality_soft>>
Your <<if $player.body_ref.penis>>prostate sings<<else>>insides sing<</if>> with overwhelmed pleasure, your hole straining as you feel each ridge and nub slide back and forth.
<<else>>
Your <<if $player.body_ref.penis>>prostate sings<<else>>insides sing<</if>> with overwhelmed pleasure as her thick mushroom tip moves back and forth against it.
<</if>>
<</if>>
At one point you think you hear her grunt in orgasm but with the help of the sheath it doesn't even slow her down as she pounds you into the floor, turning you into a gibbering, gasping mess praising her chaos sex deity.<br>
<br>
As she slides out of your used, over-stimulated hole she lifts your head with one hand, pressing her lips against your slack-jawed face, her tongue violating you in a microcosm of what she has just completed doing with her cock.<br>
<br>
You are beyond turned on, submissive pleasure coursing through your veins as you complete your surrender. When your lips finally separate it is almost tender, and she graces you with a smile before softly lowering your face to the ground.<br>
<br>
"@@.npc_technician;Good girl, I'm going to go cleanup while you recover and change.@@"<br>
<br>
You mumble some indecipherable response, rolling onto your back as you slowly catch your breath and she returns to her bedroom.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Rise to your feet and get changed." 600 "<<removeItem 'sororitas' true>><<deleteItem 'sororitas'>><<removeItem 'riding_boots_temp' true>><<deleteItem 'riding_boots_temp'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: technician roleplay: demon her_submissive: sister of battle fucks the demon
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_demon")>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage")>>
<<switch $player.body.penissize[0]>>
<<case 6>>
Your already massive cock is made positively ginormous with the addition of the sheath.
<<case 4 5>>
Your already above-average cock is made intimidatingly large with the addition of the sheath.
<<case 3>>
Your average sized cock is upgraded to porn-star large with the addition of the sheath.
<<case 0 1 2>>
Even your small cock is boosted to well above average once safely ensconced in the sheath.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Moaning in anticipation <<=setup.getNpcName('npc_technician', 'first')>> doesn't even resist as you bend her over and place the bizarre, fat tip of the scary beast sprouting from your body against her hole.<br>
<br>
Already glistening with lube you meet only minor resistance as you cram your oversized member into <<=ps(setup.getNpcName('npc_technician', 'first'))>> ass.<br>
<br>
She lets out a low, guttural moan that seems to draw out forever until you finally bottom out and her entire body shudders.<br>
<br>
"@@.npc_technician;Oh fuck that's huge.@@" She pants as you lean over, careful not to gouge your eye out with one of her horns, to whisper that all of it is inside of her.<br>
<br>
"@@.npc_technician;All of it?@@" She seems incredulous until you grind your hips against her own and repeat "@@.pc;ALL of it.@@"<br>
<br>
"@@.npc_technician;Oh Goddess... what are you waiting for? Fuck me, fuck me now!@@"<br>
<br>
With her enthusiastic consent extending on to cries of "@@.npc_technician;Yes, harder!@@" with each thrust you plow her, the thick sheath moving slowly but obviously mind-blowing as <<if $fetish.bestiality_soft>>every alien bump and ridge<<else>>its colossal girth<</if>> slides in and out of her.
<<else>>
Moaning in anticipation <<=setup.getNpcName('npc_technician', 'first')>> doesn't even resist as you bend her over and slide the thick tip of the cock-sheath into her. The phallus already glistening with lube you meet only minor resistance as you cram the oversized member into <<=ps(setup.getNpcName('npc_technician', 'first'))>> ass.<br>
<br>
She lets out a low, guttural moan that seems to draw out forever until you finally bottom out. Her entire body shudders.<br>
<br>
"@@.npc_technician;Oh fuck that's huge.@@" She pants as you curl your finger and whisper that it's all inside of her.<br>
<br>
"@@.npc_technician;All of it?@@" She seems incredulous until you rub your thumb against her perineum "@@.pc;ALL of it.@@"<br>
<br>
"@@.npc_technician;Oh Goddess... what are you waiting for? Fuck me, fuck me now!@@"<br>
<br>
With her enthusiastic consent extending on to cries of "@@.npc_technician;Yes, harder!@@" with each thrust you give her an "enhanced" finger-blast; the thick sheath moving slowly but obviously mind-blowing as <<if $fetish.bestiality_soft>>every alien bump and ridge<<else>>its colossal girth<</if>> slides in and out of her.
<</if>>
<br><br>
You can tell she's trying to ride it out longer but there is just no resisting the potency of the sheath and she soon cums, hard, crying out and spurting all over her thighs as you continue to thrust and pump until she wilts, every drop wrung clean from her <<getWordPenis false>>, the quivering member unable to quite soften thanks to the steel cock-ring built into her leather harness.<br>
<br>
Sliding out of her with a wet SHLURP you help her land on the couch as she dreamily looks up at you.<br>
<br>
"@@.npc_technician;I renounce The Dark Princess of Pleasure and pledge myself to you, only... promise me you'll fuck me again...@@"<br>
<br>
You smile and assure her that of course you will, leaning in for a passionate kiss that draws out until the both of you have to come up for air.<br>
<br>
Rising to her feet and walking more than a little awkwardly she mumbles something about "@@.npc_technician;Getting cleaned up@@" as she staggers back to her bedroom.<br>
<br>
Taking a final admiring look over the monster sticking out from your body you take off the costume and change back into your normal clothes.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Wait for her return." 600 "<<removeItem 'sororitas' true>><<deleteItem 'sororitas'>><<removeItem 'riding_boots_temp' true>><<deleteItem 'riding_boots_temp'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician roleplay: inquisitor
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Smiling conspiratorially, you slowly lean in to whisper "@@.pc;Magnus did nothing wrong@@" to <<=setup.getNpcName('npc_technician', 'first')>>.<br>
<br>
<<if setup.checkVisibleClothingTag('nun') > 70>>
"@@.npc_technician;I thought you a holy woman but that... that's heresy!@@"
<<else>>
"@@.npc_technician;That's heresy...@@"
<</if>>
she whispers, remaining totally still as you pull back, smile still plastered all over your face.<br>
<br>
A grin flickers across her face before she adopts a stern expression and rises to her feet. "@@.npc_technician;One moment, I must fetch someone more... adept as to these matters.@@"<br>
<br>
She disappears into her bedroom, leaving you to wait in anticipation.<br>
<br>
[<<moveTo 'event_technician_private_game_inquisitor_2' "Wait." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 300>>]
</div>/*#
#desc: technician roleplay: she's the inquisitor, you're the heretic
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.her_role == "dom">>
<<set $npc_technician.relationship.private_games.inquisitor_sub = true>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 9 'normal' $SEEN_FRIEND>>
<<else>>
<<set $npc_technician.relationship.private_games.inquisitor_dom = true>>
<<applyExperience 'dominance' 10 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_inquisitor")>>
<div id="invframe" class="scrolltext">
In a surprisingly short period of time, <<=setup.getNpcName('npc_technician', 'first')>> re-appears in a well made, if a bit sexed up, Inquisitor costume, armoured boots and corset with a flowing cape, a bolter in one hand and a flogger in the other.<br>
<br>
"@@.npc_technician;Halt, heretic!@@" She announces, pointing the bolter directly at you and pulling the trigger... only for a dildo to pop out the barrel and vibrate for a few seconds. She laughs and lets the "gun" go silent. "@@.npc_technician;Hah! You did not expect the inquisition! But surprise is our greatest weapon... that and an almost fanatical devotion to the Emperor!... anyway, I am afraid the comfy chair is in the shop, so...@@" Whiping the flogger to make a sharp crack, she grins. "@@.npc_technician;Oh, I am going to have FUN making you repent...@@"<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
With a slight grin on your face you wait for her to step closer before quickly disarming her, taking control of the bolter and turning it around on its owner.<br>
<br>
You continue to taunt her for how easily one of the Imperium's Inquisitors was brought low to put her in her place. Grabbing her by the hair, you pull her away, her eyes wide and lusty, strands of drool trailing from her lips.<br>
<br>
Pushing her face to the ground you continue to degrade her as she licks your <<if !setup.checkItemTypeWorn("shoes")>>feet<<elseif setup.getItemObjFromType('shoes').hasOwnProperty('heels')>>heels<<else>>shoes<</if>> before grabbing her ass and forcing it high before pulling her clothes aside to expose her pert bottom.<br>
<br>
Bolter (or is that bolt-her?) in hand you slide the phallus into her rear hole, adjusting the firing mode from "single shot" to "continuous burst" before pulling the trigger, the dildo springing to life to jack-hammer in and out.<br>
<br>
She moans and gasps as keep the weapon solidly on-target despite her bucking hips, flicking another switch marked "side-winder rounds" to cause the dildo to being twisting and drilling as well as vibrating.<br>
<br>
"@@.npc_technician;Oh, no!@@" She gasps in mock surprise as you hold her at gunpoint and motion for her to drop to her knees.<br>
<br>
Reaching down you expose yourself as you ask "@@.pc;If a heretic would have... this?@@"<br>
<br>
Mouth watering she stares at your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>. "@@.npc_technician;Y-yes?@@" She nervously replies.<br>
<br>
You smirk, informing her that, in that case, she must be a heretic lover, silencing any further response as you thrust your hips forward.
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
Locked up as you are her attentions are more frustrating than anything else as you painfully swell within your penile prison.
<<else>>
Her lips press against the front shield of your chastity device in an unfelt kiss.
<</if>>
<<else>>
<<if $player.body_ref.penis>>
Her lips spread to accept your member as with a single thrust you plunge your <<=setup.calcPenisSize()>> <<getWordMyPenis>> into her face all the way to the hilt. Grinding against her face you give a few more thrusts.
<<else>>
Her lips eagerly part to meet your own, her tongue reaching out eagerly as you grind against her face..
<</if>>
<</if>>
<br><br>
Watching her carefully you turn your attention back to the "gun" and angle things to focus the stimulation directly on her prostate. It isn't long before
<<if $npc_technician.relationship.her_caged>>
she is leaking through her cage, her loud cry of pleasure confirming her analgasm.
<<else>>
her hard cock sprays its join in a hands-free analgasm.
<</if>>
<br><br>
Catching her seed in one hand you release the trigger and slide the gun from her hole, giving her a few friendly slaps on the ass before pulling her head up from the floor and having her lick up the "@@.pc;Evidence of her wanton betrayal of her dead Emperor.@@"<br>
<br>
Eyes rolled back in post-orgasmic overload she eagerly licks your hand clean before clinging to your legs, promising to renounce her false god and "@@.npc_technician;Serve only you.@@"<br>
<br>
Sitting on the couch with her head in your lap you gently pat her cute head until she recovers from the orgasm. Wobbling a bit as she rises to her feet she gathers up her props and retreats to her bedroom to change back.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Await her return." 600>>]
<<case "dom">>
Confronted with such an intimidating figure, you drop to your knees and beg for mercy.<br>
<br>
"@@.npc_technician;Mercy? Mercy is weakness! For the Imperium to triumph we must all do our part, now strip, heretic that I may flog the sin out of you!@@"<br>
<br>
You pretend to object to her accusation, claiming that you are a loyal servant of the Emperor but she is having none of it, stripping you as she gropes and squeezes your flesh.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
Bending you over, she "discovers" your plug with a gasp. "@@.npc_technician;What is this? Some manner of chaos artifact?@@" You moan as she
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
prods at the hollow plug.
<<else>>
slides the <<=setup.getItemTypeName("plug")>> out of your rear which only raises her suspicions further.
<</if>>
<br><br>
"@@.npc_technician;Are you... aroused by such a warp-damned thing? Your heresy knows no bounds!@@" She brings the flogger down across your back.
<<else>>
Bending you over, she brings the flogger down across your back.
<</if>>
<br><br>
"@@.npc_technician;Repent, heretic!@@" She shouts, continuing to flog you as you whimper and moan.<br>
<br>
She gives you a quite thorough flogging that has you crying out even as it has you
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
moaning in ecstasy.
<<else>>
groaning in pleasure.
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
gasping with surprised arousal.
<<else>>
whimpering in pain, and yet strangely aroused.
<</if>>
<</if>>
"@@.npc_technician;Speak, heretic, do you repent from your wicked ways and re-dedicate yourself to the will of the God-Emperor?@@"<br>
<br>
Holding you by the hair, she turns your face up to look into her eyes as you tremble and consider how you will respond...<br>
<br>
[<<moveTo 'event_technician_private_game_inquisitor_3' "Blood for the blood god!" 600 "<<set $scene.repent=false>>">>]
[<<moveTo 'event_technician_private_game_inquisitor_3' "Repent." 600 "<<set $scene.repent=true>>">>]<br>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 300 "<<useClothSetPop 'tmp'>>">>]
<<default>>
ERROR: unexpected relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
</div>/*#
#desc: technician roleplay: she's the inquisitor, your heresy continues (note: you submitting only)
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 13 'very' $SEEN_FRIEND>>
<<if $scene.repent>>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 13 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 11 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_inquisitor")>>
<div id="invframe" class="scrolltext">
<<if $scene.repent>>
You beg for her mercy, repenting your heretical words and imploring her to save you from the evils of chaos.<br>
<br>
"@@.npc_technician;Good, good. But it is one thing to speak such words, it is another to be truly contrite. Fortunately, I can bless you and fill you once more with the Emperor's love.@@"<br>
<br>
"@@.pc;Yes, yes!@@" You cry out, your eager request quickly fulfilled as she steps behind you and thrusts her hard cock into your red, well-flogged ass.<br>
<br>
Each pounding thrust sees your tender buttocks blossom with fresh pain but you are too aroused to care, moaning your thanks as she mumbles some sort of garbled blessing.<br>
<br>
With a final ball-slapping thrust she cums inside of you, her seed flowing into you as you groan in pleasure, <<if $player.body_ref.penis>>your <<getWordMyPenis>> spurting its joy below<<else>>and you gush with joy<</if>> as she grinds against you.<br>
<br>
"@@.npc_technician;May the Emperor of Mankind watch over you and protect you from the corruption of the warp.@@" She whispers in your ear, planting a kiss on your cheek before sliding out of you.<br>
<br>
She gives your tender bottom a final squeeze before walking back to her room to get changed.
<<else>>
She gasps in mock horror and at your blasphemy.<br>
<br>
"@@.npc_technician;It is worse than I feared! Your corruption runs deep, there is no choice but to take radical action.@@"<br>
<br>
Grabbing her bolter/dildo, she slides the phallic barrel extension into your ass and pulls the trigger. The dildo immediately begins pulsing and vibrating against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as you gasp and moan.<br>
<br>
"@@.npc_technician;Are you getting off on this? This is heresy most foul, I must increase the power!@@"<br>
<br>
The dildo starts vibrating even harder, twisting and rattling inside of you as your legs go weak and you collapse onto the floor, the gun still pressed into you as you hump the hardwood floor and moan.<br>
<br>
You're about to cum when she stops, the dildo falling still as you pant and gasp and groan.<br>
<br>
"@@.pc;Please...@@" you whimper.<br>
<br>
"@@.npc_technician;Finally the heretic begins to see light. Repent from your wicked ways if you would have your torture ended.@@" She punctuates her words with another quick "shot," just enough to push you back to the edge and leave you desperate for more.<br>
<br>
"@@.pc;I repent, I repent!@@" You cry out.<br>
<br>
"@@.npc_technician;Then receive the Emperor's blessing.@@" She states, the dildo returning to full power as you throw your head back and moan, almost instantly cumming all over the floor.<br>
<br>
The vibrations continue, your orgasm drawn out until, hyper-sensitise and overwhelmed, the stimulation becomes strangely painful. Finally removing the dildo from your ass, she isn't done, grabbing you by the hair and spinning you in place to shove your face into the pool of your seed.<br>
<br>
"@@.npc_technician;Lick it up, sinner, cleanse the world of the final evidence of your weakness and be welcomed back into the light of the Emperor.@@"<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
Your <<getWordCum true>> tastes even more delicious than usual as she rubs your face in it using your face like a mop with her hand clutching your hair.
<<else>>
Having your face rubbed in a pool of your own <<getWordCum true>> somehow makes it taste... good, your tongue lolling out and scraping across the floor as she uses your face like a human mop.
<</if>>
<br><br>
Finally satisfied with your job of cleaning up after yourself, she smiles and leans in to lick your face clean before giving you a passionate kiss.<br>
<br>
"@@.npc_technician;You're so sexy. Let me change back into something more comfortable while you recover for our next fun escapade...@@"<br>
<br>
Leaning against the couch, you softly nod, still trying to muster the energy to stand as you appreciate the view of her armoured backside walking away.
<</if>>
<br><br>
[<<moveTo 'event_technician_private_game_root' "Get dressed and wait for her to return." 600 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician roleplay: pony play
#status: RELEASED 0.7.10.0
#ignore_spell: brb
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
She grins. "@@.npc_technician;Ooo, I love pony play! BRB, I've got, like, the PERFECT pair of outfits for us!@@"<br>
<br>
[<<moveTo 'event_technician_private_game_pony_2' "Wait for her to return." 300>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 60>>]
</div>/*#
#desc: technician roleplay: pony play - get changed
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'pony_rider_temp'>>
<<wearItemSet 'pony_rider_temp'>>
<<applyExperience 'dominance' 5 'little' $SEEN_FRIEND>>
<<set $scene.image = setup.charImage("npc_technician","npc_technician_ponygirl")>>
<<case "dom">>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'pony_girl'>>
<<wearItemSet 'pony_girl'>>
<<addItem 'nipple_bells'>>
<<wearItem 'nipple_bells' true>>
<<applyExperience 'submission' 5 'little' $SEEN_FRIEND>>
<<applyExperience 'bondage' 8 'normal' $SEEN_FRIEND>>
<<set $scene.image = setup.charImage("npc_technician","npc_technician_rider")>>
<<default>>
ERROR: unexpected relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.image>>
<div id="invframe" class="scrolltext">
Returning after about a minute, <<=setup.getNpcName('npc_technician', 'first')>> lays a pair of outfits out on the sofa — one is a fancy, formal English riding get-up including jacket, pants and knee-high leather boots. The other is little more than a web of leather straps making up a full harness and bridle, along with a pair of steep pony-boots.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
Standing next to one another the two of you stare at the diametrically opposite outfits for a few moments before you pick up the bridle and present it to her.<br>
<br>
"@@.npc_technician;Of course, Mistress.@@" She replies, opening her mouth for the rubber bit gag even as her gaze somewhat fearfully flickers over the steep ponyboots.<br>
<br>
Mindful of her difficulties with high heels you merely strip her naked to harness her up, giving her tail plug a friendly wiggle that has her moaning around her gag before you let her assist you in changing into the riding outfit.<br>
<br>
Straightening your jacket as she looks lustfully on you finally reach for the ponyboots, smiling up at her in support as you help her don the steep footwear. They turn out to be even taller than they look and you feel a bit oddly short by the time you've finished getting her "shod." <br>
<br>
Last of all is a pair of nipple bells that are clamped just tight enough to be painful, one to each of her pert nipples, the silver adornments chiming at her slightest movement.<br>
<br>
[<<moveTo 'event_technician_private_game_pony_3' "Lead her about." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 300 "<<removeItemSet 'pony_rider_temp'>><<deleteItemSet 'pony_rider_temp'>><<useClothSetPop 'tmp'>>">>]
<<case "dom">>
Looking over at you with a smile as you stare down at the two options she speaks. "@@.npc_technician;Well, slave? Aren't you going to help me get dressed?@@"<br>
<br>
With a hurried bow you drop to your knees, helping her out of her current clothes and into the riding attire, taking a few moments to massage her feet as she coos in pleasure before zipping up the tight, sexy boots.<br>
<br>
"@@.npc_technician;Lovely,@@" She states, taking a moment to admire herself before pulling a crop out from a hidden holster in the left boot. "@@.npc_technician;Now, let's get you harnessed up, hmm?@@"<br>
<br>
You slip out of your clothes as she hungrily watches. Once you're naked she helps you puzzle out the ponygirl outfit, leather straps wrapping around your torso and between your legs, complete with a long, flowing tail-plug rooted in your rear. The bridle is next as she tightens the bit nice and securely between your teeth before finishing off to help you into the ponyboots that have you looming over her suddenly short figure.<br>
<br>
Last of all is a pair of nipple bells that are clamped just tight enough to be painful, one to each of your pert nipples, the silver adornments chiming at your slightest movement.<br>
<br>
"@@.npc_technician;Perfect!@@" She states, clipping a set of reins to either side of your bit, holding them in one hand and the crop in her other.<br>
<br>
Stepping up onto the coffee table to reclaim the high ground, she gives a little tug for you to start walking around her.<br>
<br>
[<<moveTo 'event_technician_private_game_pony_3' "Time to prance." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 300 "<<removeItemSet 'pony_girl'>><<deleteItemSet 'pony_girl'>><<removeItem 'nipple_bells' true>><<deleteItem 'nipple_bells'>><<useClothSetPop 'tmp'>>">>]
<<default>>
ERROR: unexpected relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
</div>/*#
#desc: technician roleplay: pony play - frolicking
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
<<set $npc_technician.relationship.private_games.pony_dom = true>>
<<applyExperience 'dominance' 7 'normal' $SEEN_FRIEND>>
<<set $scene.image = setup.charImage("npc_technician","npc_technician_ponygirl")>>
<<case "dom">>
<<set $npc_technician.relationship.private_games.pony_sub = true>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'heels' 13 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("heels") > 10>>
<<applyExperience 'bdsm' 7 'insignificant' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 2 'little' $SEEN_FRIEND>>
<</if>>
<<set $scene.image = setup.charImage("npc_technician","npc_technician_rider")>>
<<default>>
ERROR: unexpected relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.image>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
Clipping a set of reins to either side of her bridle you smile in encouragement and start leading her around the apartment. Her obvious inexperience is apparent by her uneven, hesitant steps but she does appear to improve at least a little as you have her pace back and forth.<br>
<br>
Satisfied that she's becoming a bit more accustomed to her boots — as well as the distraction of her tail-plug you unclip the reins and pull out a crop, pushing the coffee table out of the way and sitting down on the couch before nodding and instructing her to "@@.pc;Put on a show.@@"<br>
<br>
Blushing at the attention she does her best, high-stepping in place, turning in circles and performing a couple other tricks while managing to avoid taking a tumble. Grinning wide you finally rise to your feet, pulling her in for a kiss as she shivers in pleasure, her nipple-bells jangling merrily.<br>
<br>
Holstering your crop you help her out of the boots, the look of relief on her face once she has both feet flat on the ground speaking volumes. Leaving the rest of her gear in place you allow her to help you change back into your previous clothes before you finally unbuckle her harness, massaging and caressing her bare flesh the whole time before handing her her clothes for her to get dressed as well.<br>
<br>
Gathering up the two outfits, she grins and skips back to her bedroom to put things away.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Wait for her to return." 600 "<<removeItemSet 'pony_rider_temp'>><<deleteItemSet 'pony_rider_temp'>><<useClothSetPop 'tmp'>>">>]
<<case "dom">>
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
Compared to your vast experience even heels as steep as these are practically childs play. From the first step you are showing off, elbows at your side, chin raise as you lift your knees high in a stylized prance.
<<else>>
The ponyboots are certainly a challenge, but only a minor one for one of your skills. Balancing without too much trouble you attempt to adopt a proper chin up, formal posture as you take your first step.
<</if>>
<br><br>
"@@.npc_technician;Beautiful!@@" She congratulates as you slowly prance around the coffee table, nipple bells ringing merrily, her crop only occasionally reaching out to correctively tap your thigh.<br>
<br>
Your heart swells with pride as she guides you through an impromptu routine, having you prance, turn and skip, your tail swishing happily and pleasantly the whole time.<br>
<br>
Smiling in delight as you respond to her slightest command she finally brings things to a close, stroking and massaging you while congratulating you on being "@@.npc_technician;Such a good girl.@@"<br>
<br>
Placing a final kiss on the tip of your nose, she holsters the crop and commences to unbuckling your harness.<br>
<br>
Shaking your head when she reaches for your bridle, you wait until you've finished un- and re-dressing her and yourself before you allow her to remove the final piece of your pony regalia.
<<else>>
<<if setup.getTotalValue("heels") > 5>>
Your practice in heels has not quite prepared you for a challenge of this magnitude. As soon as you start trying to walk you find yourself teetering, your gait uneven as you focus on just keeping your balance.
<<else>>
You can barely stand in the steep, heel-less pony boots, each step a fearful endeavour as you wobble and sway.
<</if>>
<br><br>
<<=setup.getNpcName('npc_technician', 'first')>> seemingly mindful of your struggle she wields the crop more as a psychological encouragement, never actually striking you and instead staying within arms reach to steady you whenever you get too off-balance.<br>
<br>
Despite your difficulties you do manage to slightly improve, the bells dangling from your nipples chiming in encouragement the whole time. Even at the end your gait is a bit uneven but, under her gentle tutelage, you're able to hold a better posture and raise your knees above your waist more often than not.<br>
<br>
Sensing your growing fatigue she holsters the crop and motions you to come to a stop. Stepping off the table she strokes your face before rising onto her tiptoes to kiss your lips around your gag.<br>
<br>
As you blush and swoon she begins unstrapping your harness and bridle, helping you out of the boots and back into your prior clothes before you return the favour.
<</if>>
<br><br>
Gathering up the two outfits, she grins and skips back to her bedroom to put things away.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Wait for her to return." 600 "<<removeItemSet 'pony_girl'>><<deleteItemSet 'pony_girl'>><<removeItem 'nipple_bells' true>><<deleteItem 'nipple_bells'>><<useClothSetPop 'tmp'>>">>]
<<default>>
ERROR: unexpected relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
</div>/*#
#desc: technician roleplay: two kinky kitties
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_catgirl")>>
<div id="invframe" class="scrolltext">
She grins, dashing into her bedroom and returning a minute later wearing a cat-ear headband. Turning around, she wiggles her butt to show off the tail peeking out past her skirt, all the while brandishing a matching headband and a fluffy tail attached to steel plug for you.<br>
<br>
As you take the "costume" she grins, helping you adjust your ears before motioning for you to bend over as she brandishes the tail.<br>
<br>
[<<moveTo 'event_technician_private_game_cat_2' "Get outfitted." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 60>>]
</div>/*#
#desc: technician roleplay: two kinky kitties
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemOwned('cat_ears')>>
<<addItem 'cat_ears'>>
<<else>>
<<if setup.inWardrobe('cat_ears')>>
<<wardrobeToItem 'cat_ears'>>
<</if>>
<</if>>
<<wearItem 'cat_ears' true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if !setup.checkItemTypeWorn("plug")>>
<<applyExperience 'anal' 4 'little' $SEEN_FRIEND>>
<</if>>
<<set $scene.removePlug = !setup.checkItemOwned('cat_tail_plug')>>
<<if $scene.removePlug>>
<<addItem "cat_tail_plug">>
<<else>>
<<if setup.inWardrobe('cat_tail_plug')>>
<<wardrobeToItem 'cat_tail_plug'>>
<</if>>
<</if>>
<<if !setup.checkItemWorn('cat_tail_plug')>>
<<wearItem "cat_tail_plug" true>>
<</if>>
<<set $npc_technician.relationship.private_games.cat = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_catgirl")>>
<div id="invframe" class="scrolltext">
<<if setup.getItemFromType("plug") != "cat_tail_plug">>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Locating your hollow plug, she slides the cat tail in to lodge in your gaping hole before adjusting your clothes to let the fuzzy appendage hang free.
<<else>>
Gently removing the <<=setup.getItemTypeName("plug")>> from your rear, she fixes the cat tail inside of you, adjusting your clothes to let it hang free.
<</if>>
<<else>>
Adjusting your clothes to make space she slides the cat-tail plug into your rear, giving it a little wiggle to make sure it's nicely rooted in place.
<</if>>
A cat-ear headband finishes off the look.<br>
<br>
A pair of cute kitties, the two of you drop down to all fours, kissing and cuddling and frolicking around as you move from floor to couch and back again having a cute, boisterous good time.<br>
<br>
Curled up together, you just enjoy each others warmth, not saying a word for over ten minutes before she finally stretches and wiggles to her feet.<br>
<br>
"@@.npc_technician;Nyan, that was fun!@@"<br>
<br>
Gathering up your costume, she pauses at the ears. "@@.npc_technician;Those are just too cute on you, you totally need to keep them!@@"
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
She helpfully replaces your <<=setup.getItemTypeName("plug")>>.
<</if>>
With a grin she skips back to her bedroom as you sit back on the couch. A warm, fuzzy feeling still tingles throughout your body.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Get dressed and wait for her return." 600 "<<if $scene.removePlu>><<removeItem 'cat_tail_plug' true>><<deleteItem 'cat_tail_plug'>><</if>><<if $scene.plug != '' && $scene.plug != 'cat_tail_plug' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>>">>]
</div>/*#
#desc: technician roleplay: sex with a superheroine
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You fall back on the couch, dropping into a pose like a damsel in distress from some old serial.<br>
<br>
"@@.pc;Woe is me, for I am beset upon by villains, I fear one could come to steal me away at any time!@@" You state theatrically.<br>
<br>
"@@.npc_technician;Fear not, gentle citizen, for I know of a noble heroine who will surely come to your defence!@@" She smiles and gives your hand a gentle squeeze "@@.npc_technician;Be back in a blink.@@"<br>
<br>
She slips into her bedroom as you wait for her to change.<br>
<br>
[<<moveTo 'event_technician_private_game_superhero_2' "Wait." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 60>>]
</div>/*#
#desc: technician roleplay: sex with a superheroine
#status: RELEASED 0.7.10.0
#ignore_spell: p
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $npc_technician.relationship.private_games.hero = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_superhero_2")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> strides out of the bedroom looking quite the sexy superheroine, a purple wig, green contacts and a bit of makeup quite altering her look while she is dressed in a green one-piece outfit with a studded red collar and matching belt.<br>
<br>
"@@.npc_technician;So,@@" she states, striking a pose. "@@.npc_technician;The tallus sent me here with cryptic instructions, but I believe that to repair this time-line I need to get you off...@@"<br>
<br>
You blush at her hammy acting, responding that, "@@.pc;For the sake of the time-line@@" you will surely do what you can...<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
You lie back on the couch as she slides between your legs, exposing you and bringing her lips between your legs.<br>
<br>
<<if $npc_technician.relationship.keyholder>>
"@@.npc_technician;For the sake of the time-line, I think we can let you out for a few minutes...@@" She states, sliding the key into your lock and giving it a twist.<br>
<br>
You gasp in arousal as she
<<if $player.body_ref.penis>>
slides your <<getWordMyPenis false>> free and wraps her purple lips around it. You moan in pleasure as she expertly sucks you off, looking up at you the whole time as she expertly draws out your orgasm and swallows it down.
<<else>>
removes your chastity shield and buries her face between your legs, licking with expert skill to rocket you to a strong orgasm.
<</if>>
<<else>>
"@@.npc_technician;Ah!, You are imprisoned! Fear not, for I have many skills suitable for overcoming such challenges.@@"<br>
<br>
Continuing to tease you despite your chastity you gasp as she slides a hand underneath,
<<if setup.checkItemTypeWorn("plug")>>
expertly manipulating your <<=setup.getItemTypeName("plug")>> until you let out a low moan and a strong analgasm courses through your body.
<<else>>
sliding two fingers into you to curl delicately and rub against your sensitive p-spot. Twitching and gasping at her expert attention it isn't long before a potent analgasm courses through your body.
<</if>>
<br><br>
Her lips <<if setup.isCage()>>wrapped around the tip of your cage she sucks<<else>>tracing the edge of your chastity she laps<</if>> up your dribbled release with a smile.
<</if>>
<br><br>
"@@.npc_technician;Yum.@@" She states, licking her lips.
<<if $npc_technician.relationship.keyholder>>
"@@.npc_technician;Mustn't disrupt the timestream.@@" She adds, <<if $player.body_ref.penis>>sliding your softened <<getWordMyPenis false>> back into its<<else>>replacing your<</if>> prison and locking you back up with a click.
<</if>>
<<elseif $player.body_ref.penis>>
Removing your clothes she exposes your hard <<getWordMyPenis>> with a grin. "@@.npc_technician;How lovely! I think I'm going to really enjoy this reality.@@" Standing up and pulling her skirt to one side to expose her bare bottom she smirks. "@@.npc_technician;Of course, that doesn't mean I won't still be putting my ass on the line to save it...@@"<br>
<br>
Bending over she guides you into her rear, your <<getWordMyPenis>> easily slipping into her eager hole.<br>
<br>
"@@.npc_technician;Oh yes!@@" She cries out as you begin to thrust, her bottom clenching and unclenching, working you over even as you attempt to do your part. "@@.npc_technician;Harder! Don't let up, I can sense the time-stream healing!@@" She moans as you continue to thrust, rapidly approaching climax.<br>
<br>
You cry out in unison as you cum together, her spurting over the couch as you deposit your load deep inside of her.<br>
<br>
Still panting she clenches to give you a final squeeze before straightening and allowing you to slide free. Your legs weak you flop onto the couch.
<<else>>
Removing your clothes she exposes your wet puss with a grin. "@@.npc_technician;How lovely! I think I'm going to really enjoy this reality.@@" Dropping between your thighs she is almost drooling as she leans in. "@@.npc_technician;Mmm, it seems the jump has made me suddenly hungry...@@"<br>
<br>
She noisily licks and sucks, bringing you to a swift orgasm that has you weak-legged as you flop back onto the couch.
<</if>>
<br><br>
Rising to her feet she gives you a gentle kiss as you lie in post-orgasmic bliss.<br>
<br>
"@@.npc_technician;Thank you for your assistance, but I must be off to save the next reality, fare well!@@"<br>
<br>
Lying back on the couch you wave as she blows a kiss and disappears back into her room to change.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Wait for her to return." 600>>]
</div>/*#
#desc: technician roleplay: wrestling match leadin
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You smile at <<=setup.getNpcName('npc_technician', 'first')>> and make eyes towards the bedroom asking if she'd be up for a little "wrestling" match.<br>
<br>
She grins. "@@.npc_technician;Ooo... a little wrestling... let me slip into something a bit more appropriate...@@"<br>
<br>
Before you can react she ducks into her bedroom, a minute later reaching an arm out to toss you something.<br>
<br>
Catching the bundle of fabric, you unfold it to find a lycra women's wrestling outfit.<br>
<br>
A moment later you hear her voice calling out from the bedroom. "@@.npc_technician;Enter, and face your dooooom!@@"<br>
<br>
[<<moveTo 'event_technician_private_game_wrestle_2' "Get changed and head into the bedroom." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 60>>]
</div>/*#
#desc: technician roleplay: wrestling match intro/match if you don't bjj
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem 'wrestling_costume'>>
<<wearItem 'wrestling_costume' true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_wrestle")>>
<div id="invframe" class="scrolltext">
Standing on the far side of the bed, she strikes a pose in her sexy wrestling attire with a pink belt draped over one shoulder. "@@.npc_technician;And now, one round for the <<if $fetish.sissy>>sissyweight <</if>>championship of the world!@@"<br>
<br>
Hanging the belt off one of the bedposts, she hops up onto the bed, bouncing slightly as she grins and motions you forward.<br>
<br>
<<if setup.getTotalValue("martial_arts") >= 5 && setup.hasThreshold('martial_arts', 'bjj', 'bjj_first') || setup.getTotalValue("martial_arts") >= 10>>
With your grappling skills you could certainly pin her with ease, or you could playfully put her over...<br>
<br>
[<<moveTo 'event_technician_private_game_wrestle_bjj' "It's time for a new champion!" 600 "<<set $scene.win=true>>">>]<br>
[<<moveTo 'event_technician_private_game_wrestle_bjj' "Make her look good and do the job." 600 "<<set $scene.win=false>>">>]<br>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 300 "<<removeItem 'wrestling_costume' true>><<deleteItem 'wrestling_costume'>><<useClothSetPop 'tmp'>>">>]
<<else>>
Hopping up onto the bed with her, the two of you lunge forward and engage.<br>
<br>
Neither of you really know what you're doing, but you have fun with it, rolling back and forth and occasionally disengaging for a slopping flying attack onto the bouncing bed.<br>
<br>
Finally she pins you calling out one, two, three with glee before springing to her feet, raising the belt high and shouting in triumph.<br>
<br>
You smile as you watch her, cheering along as she wraps the belt around her waist and poses dramatically.<br>
<br>
[<<moveTo 'event_technician_private_game_wrestle_her_win' "Celebrate her victory." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 300 "<<removeItem 'wrestling_costume' true>><<deleteItem 'wrestling_costume'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>
/% Note: technician_rana_pin.png for position %//*#
#desc: technician roleplay: wrestling match when you know bjj
#status: RELEASED 0.7.10.0
#ignore_spell: rana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.win>>
<<set $npc_technician.relationship.private_games.wrestle_win = true>>
<<addItem 'wrestling_belt'>>
<<wearItem 'wrestling_belt' true>>
<<set $scene.tech_image = setup.charImage("npc_technician","npc_technician_wrestle")>>
<<if setup.checkItemTypeWorn("cage")>>
<<playerOrgasm>>
<</if>>
<<else>>
<<set $scene.tech_image = setup.charImage("npc_technician","npc_technician_wrestle")>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" $scene.tech_image>>
<div id="invframe" class="scrolltext">
It's immediately clear that she really doesn't know what she's doing in the realm of grappling. Fortunately you do
<<if $scene.win>>
and you put your skills to work tossing her around safely, in complete control of the action from the first grip all the way until you decide to finish it, straddling her face and hooking her legs to hold her in a Rana pin as you call out the one, two, three!<br>
<br>
You're about to step off but she holds your legs with both arms, mumbling past your crotch.<br>
<br>
"@@.npc_technician;Mmmm, but I like it down here!@@"<br>
<br>
You both can't help but laugh given the position and she nuzzles up against your groin until you finally managed to extricate yourself and return to your feet.<br>
<br>
Snatching the championship belt, she wraps it around your waist, caressing the large medallion on the front and giving a kiss.<br>
<br>
"@@.npc_technician;So, to the victor, belong the spoils...@@" She states as she slides to her knees, pulling your singlet to one side to reveal your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
She winks at you and rubs the front of your chastity device. "@@.npc_technician;Mmmm, maybe after you've defended the title...@@"
<<elseif $player.body_ref.penis>>
Smiling up at you she opens wide, licking and sucking until you gasp, filling her mouth with your cum.<br>
<br>
Gulping it down she licks her lips, stepping back to admire you for a few more moments before reclaiming the belt and shooing you back to the living room to get changed.
<<else>>
Smiling up at you she passionately kisses between your legs, tongue reaching deep until you gasp in orgasm.<br>
<br>
With a wide grin licks her lips, stepping back to admire you for a few more moments before reclaiming the belt and shooing you back to the living room to get changed.
<</if>>
<br><br>
[<<moveTo 'event_technician_private_game_root' "Get changed." 600 "<<removeItemSet 'wrestler'>><<deleteItemSet 'wrestler'>><<useClothSetPop 'tmp'>>">>]
<<else>>
and you put all those skills to work making the match interesting, safe, and most of all, end in her favour.<br>
<br>
After a back and forth romp you subtly guide her into secure the pin, theatrically thrashing around as she calls out "@@.npc_technician;One! Two! Three!@@"<br>
<br>
Still holding you down she leans in for a kiss.<br>
<br>
"@@.npc_technician;Wow, you're actually good at this, but even if you took a dive that isn't going to stop me from celebrating my victory.@@"<br>
<br>
Grabbing your crotch makes it clear what sort of celebration she has in mind as she holds the belt high and grins down at you.<br>
<br>
[<<moveTo 'event_technician_private_game_wrestle_her_win' 'Celebrate her victory.' 600>>]<br>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 300 "<<removeItem 'wrestling_costume' true>><<deleteItem 'wrestling_costume'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: technician roleplay: wrestling match she celebrates victory
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.relationship.private_games.wrestle_lose = true>>
<<playerOrgasm>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 11 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_wrestle")>>
<div id="invframe" class="scrolltext">
You cheer along as she poses in celebration until she smirks in your direction and pulls her outfit aside to reveal
<<if $npc_technician.relationship.her_caged>>
her caged penis just below the oversized, gleaming belt. "@@.npc_technician;The champ. is. here!@@" She shouts, pointing downward and finishing off with a "@@.npc_technician;Woo!@@"<br>
<br>
Grinning in amusement you roll onto your back and hang your head off the edge of the bed as she steps forward for you to give her caged self, and her balls beneath a nice thorough tongue washing.
<<else>>
her hard penis just below the oversized, gleaming belt. "@@.npc_technician;The champ. is. here!@@" She shouts, pointing downward and finishing off with a "@@.npc_technician;Woo!@@"<br>
<br>
Grinning in amusement you roll onto your back and hang your head off the edge of the bed, opening wide as she steps forward and slides her <<getWordPenis false>> into your mouth.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
You eagerly take her all the way down, feeling your throat bulge to make space as her balls brush your face.
<<else>>
Even with this clear angle you can't take her all the way down, but you suck and lick as you stare up at her balls.
<</if>>
<</if>>
<br><br>
Leaning over she returns the favour, licking and toying with <<if $player.body_ref.penis>>your <<getWordMyPenis>><<else>>you<</if>> until you manage to get her off, rewarded with a nice mouthful of her
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
delicious
<<else>>
tasty
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
strangely yummy
<<else>>
somewhat salty
<</if>>
<</if>>
cum.<br>
<br>
"@@.npc_technician;To the victor goes the spoils.@@" She states with a grin as she steps back.<br>
<br>
Swallowing gently you roll off the bed back to your feet, sharing a kiss before she shoos you out of the room to get changed.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Get changed." 600 "<<removeItem 'wrestling_costume' true>><<deleteItem 'wrestling_costume'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician roleplay: hucow milking
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'cow_horns'>>
<<set $scene.owned = setup.checkItemOwned('cow_bikini_bottom')>>
<<addItemSet 'cow_bikini'>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('cow')>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Milked, you say?@@" She notes with a grin as she reaches out to massage your breasts.<br>
<br>
"@@.npc_technician;Mmm, these do feel quite full... let me slip into something more appropriate and I'll be RIGHT back.@@"<br>
<br>
Darting back to her room she pops out only long enough to toss you a couple things. "@@.npc_technician;Here — you can get into character too!@@" She calls out before disappearing to leave you, and your breasts, waiting for her to return.<br>
<br>
<<printThought "Cow-print bra and panties... and matching horns... of course.">><br>
<br>
[<<moveTo 'event_technician_private_game_milk_2' "Get changed." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 60 "<<if !$scene.owned>><<deleteItemSet 'cow_bikini'>><</if>>">>]
</div>/*#
#desc: technician roleplay: hucow milking
#status: RELEASED 0.7.10.0
#ignore_spell: whah,ah'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<wearItemSet 'cow_bikini' true>>
<<set $player.timebased.milking.milk_supply = 0>>
<<applyExperience 'bondage' 13 'normal' $SEEN_FRIEND>>
<<set $npc_technician.relationship.private_games.milk = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_cowgirl")>>
<div id="invframe" class="scrolltext">
You change into the cow-print bikini and horns just in time for <<=setup.getNpcName('npc_technician', 'first')>> to mosey out of the bedroom in chaps and a cowboy hat. With a grin she tips her hat and strikes a bow-legged pose before speaking with a hilariously bad drawl.<br>
<br>
"@@.npc_technician;Whah lookie here. Ah do believe this is a cow in desperate need of milking.@@"<br>
<br>
Pulling a coil of rope from her belt she swiftly has you hog-tied, propping you up and exposing your breasts before going to work.<br>
<br>
"@@.npc_technician;Mmm, look at these full udders, there's no time for the machine, Ah'll just have to do these by hand...@@"<br>
<br>
You moan as she gropes your sensitive breasts, taking a quick gasp as she wraps her lips around your right nipple and begins sucking. You feel the milk begin to flow almost immediately, and you tremble and moan as she slurps and sucks it all up.<br>
<br>
She teases your other nipple with one hand until you think you might start spraying. Holding your right nipple in her teeth she stretches it out until it starts becoming painful before allowing it to snap back into position.<br>
<br>
She grins at your torment. "@@.npc_technician;Mmm, let's see if the other side tastes as good...@@"<br>
<br>
You struggle against your bonds but it is no use, her knots are expertly tied and you have no choice but to endure the overwhelming stimulation of her suckling on your left teat.<br>
<br>
Trying to breathe slow and deep you feel her drain your reserves, switching off a few more times before finally pulling back and giving both breasts a friendly squeeze.<br>
<br>
"@@.npc_technician;That feel a bit better? Not so full to bursting anymore?@@"<br>
<br>
You nod weakly and she smiles.<br>
<br>
<<if $fetish.penis_milking>>
"@@.npc_technician;Lovely, just lovely... of course now I'm peckish for a bit of dessert...@@"<br>
<br>
Pushing you onto your back she descends between your legs, teasing your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> with one hand while she
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
<<if $player.body_ref.penis>>sucks on your <<getWordMyPenis>><<else>>licks your clit<</if>>.<br>
<br>
<<if $player.body_ref.penis>>
Thanks to the earlier stimulation it doesn't take long before you cum, her cheeks stretching wide as you <<if $player.body_ref.balls>>unleash the full contents of your balls<<elseif $player.body_ref.cumProduction == 0>>clench and twitch, but cum not a drop<<else>>unleash a mighty load<</if>>.
<<if $player.body_ref.cumProduction > 0>>
<br><br>
Gulping this down as well she grins and licks her lips, seeming to think for a moment before continuing.
<</if>>
<<else>>
Thanks to the earlier stimulation it doesn't take long before you cum, gushing down her chin even as she tries to lap up as much as she can.
<</if>>
<br><br>
<<else>>
tauntingly licks the front of your belt.<br>
<br>
Thanks to the earlier stimulation it doesn't take long before you cum, and she eagerly licks up all that leaks past your belt.
<</if>>
<br><br>
"@@.npc_technician;Nope, can't decide which one I like best, you are just delicious in every way!@@"<br>
<br>
<</if>>
Releasing your bonds she gives your breasts a final, friendly squeeze. "@@.npc_technician;I think that'll do for now, partner, but you keep me informed if you ever need another draining. <<if $player.flags.work_coffee.times_work_milk > 0>>Can't let <<=setup.getNpcName('npc_maid', 'first')>> have all the fun, now, can we?<</if>>@@"<br>
<br>
She reaches up to pluck the horns off your head. "@@.npc_technician;These are a bit dangerous to just wear, don't want to poke someone's eye out! But you can keep the rest... they look cute on you! Well... EVERYTHING looks cute on you.@@"<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Catch your breath and put your clothes back on while she returns to her room to change." 600 "<<removeItem 'cow_horns' true>><<deleteItem 'cow_horns'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: technician roleplay: cop intro
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Grinning at your protestations, she somehow produces a ball gag seemingly out of nowhere.<br>
<br>
Shoving it into your open mouth, she buckles it tight. "@@.npc_technician;There we go, you work on exercising your "right to remain silent" and I'll call in <<=setup.getNpcName('npc_technician', 'Officer')>>.@@"<br>
<br>
[<<moveTo 'event_technician_private_game_cop_2' "Wait quietly." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 60>>]
</div>/*#
#desc: technician roleplay: sexy cop interrogation
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_sexy_cop")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> strides out in full slutty cop attire, twirling a dildo truncheon as she casually walks towards you.<br>
<br>
"@@.npc_technician;Well, well, well, the <<if $fetish.sissy>>Sissy Swindler<<else>>Cute Criminal<</if>>. It was a lot of HARD work, but we finally caught you and now...@@" She slams her hands onto the coffee table as she leans towards you, looking you right in the eye. "@@.npc_technician;You're going down, you're going down for a long, long time.@@"<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
[@@.link_locked;Given that you're her Mistress it wouldn't really be proper to just submit to an interrogation.@@]<br>
[<<moveTo 'event_technician_private_game_cop_3' "Turn the tables on your captor!" 180 "<<set $scene.submit=false>>">>]<br>
<<case "dom">>
[<<moveTo 'event_technician_private_game_cop_3' "Submit to the interrogation." 180 "<<set $scene.submit=true>>">>]<br>
[@@.link_locked;As her obedient sub it would be improper for you to try to usurp her control of the situation.@@]<br>
<<case "neutral">>
[<<moveTo 'event_technician_private_game_cop_3' "Submit to the interrogation." 180 "<<set $scene.submit=true>>">>]<br>
[<<moveTo 'event_technician_private_game_cop_3' "Turn the tables on your captor!" 180 "<<set $scene.submit=false>>">>]<br>
<<default>>
ERROR: unexpected relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
[<<moveTo 'event_technician_private_game_abort_change' "On second thought, you'd like to do something else." 300>>]
</div>/*#
#desc: technician roleplay: sexy cop sexytimes
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.submit>>
<<set $npc_technician.relationship.private_games.cop_sub = true>>
<<applyExperience 'anal' 8 'little' $SEEN_FRIEND>>
<<playerOrgasm>>
<<else>>
<<if !$player.virgin.handjob>>
<<set $player.virgin.handjob = "npc_technician">>
<</if>>
<<set $npc_technician.relationship.private_games.cop_dom = true>>
<<applyExperience 'cum' 11 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_sexy_cop")>>
<div id="invframe" class="scrolltext">
<<if $scene.submit>>
Feigning innocence, you blink up at her and mumble through your gag.<br>
<br>
"@@.npc_technician;Still refusing to talk?@@" She asks with a sneer as she strokes your cheek. "@@.npc_technician;That's fine, we have ways of helping with that. But first I need to search you... thoroughly, who knows what naughty things you've tried to smuggle in with you?@@"<br>
<br>
You moan as she begins to aggressively grope you all over, squeezing and prodding and pawing at you through your clothes before bending you over and going to work on your ass.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
"@@.npc_technician;What's this?@@" She asks upon "discovering" your <<=setup.getItemTypeName("plug")>>.
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
She gives it a few thrusts before popping it free to make you let out a gag-stifled moan.
<</if>>
<br><br>
"@@.npc_technician;Trying to smuggle this past me, huh? Well, let's see what else you have in here...@@"
<<else>>
"@@.npc_technician;Hmm, better check in here, who knows what sort of things a naughty <<if $fetish.sissy>>sissy<<else>>girl<</if>> like yourself could be smuggling?@@"<br>
<br>
You moan as she starts to finger your hole, upgrading to a gasp as she starts working the truncheon-dildo into you, pumping it in and out as you moan.
<</if>>
<br><br>
Bending you over, she starts working her truncheon into your ass, pumping it in and out as you moan, getting you nice and aroused and desperate before she removes your gag and resumes the interrogation.<br>
<br>
"@@.npc_technician;Confess, where's the money?@@"<br>
<br>
You moan, your attempt to state that you'll never talk interrupted by you orgasming, moaning and shuddering as your hips pulse and you leak all over her hand.<br>
<br>
"@@.npc_technician;Heh, the great <<if $fetish.sissy>>Sissy Swindler<<else>>Cute Criminal<</if>>, all spent! Fine, keep your secrets, I'll just keep interrogating you every day until you spill EVERYTHING.@@"<br>
<br>
You shudder, shivering slightly as she slides the truncheon out of your rear<<if !setup.checkItemTypeTag('plug', ['hollow'])>> to replace your plug<</if>>.<br>
<br>
Leaning over to place a kiss on your neck, she helps you back up as you come down from your submissive orgasmic high.
<<else>>
Grinning mischievously around your gag, you spit it out as you reach out, one hand grabbing her breasts while the other goes straight for her crotch.<br>
<br>
In a sultry voice you explain that this was all part of your master plan, but that the two of you are going to have a bit of fun together before you complete your caper.<br>
<br>
"@@.npc_technician;No, not again!@@" She objects only to break into a moan as you pull down her top to reveal her breasts and yank down her skimpy shorts to reveal her <<if $npc_technician.relationship.her_caged>>caged <</if>>penis.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
You congratulate her on remaining locked since your last encounter, your sexy mole within the force.<br>
<br>
"@@.npc_technician;Y-yes, Mistress...@@" She moans as you pluck the truncheon from her weak grasp and start sliding it into her ass. "@@.npc_technician;Deeper, Mistress...@@" She moans, and you oblige, working her prostate as you caress and tease her imprisoned pecker.<br>
<br>
With a shuddering gasp she cums, leaking out of her cage into your hand as she whimpers and moans.
<<else>>
Staring her in the face, you start jerking her off, congratulating your slave on betraying her fellow officers and serving your nefarious schemes.<br>
<br>
"@@.npc_technician;Of course, anything for you Mistress!@@" She moans as you pluck the truncheon from her weak grasp and start sliding it into her ass. "@@.npc_technician;Deeper, Mistress...@@" She moans, and you oblige, working her prostate as you caress and tease her imprisoned pecker.<br>
<br>
With a shuddering gasp she cums, spurting all over your hand as she whimpers and moans.
<</if>>
<br><br>
You congratulate her on being your slutty undercover agent, and delicious to boot, you add as you lick your hand clean of her emission. Standing up to share a kiss where you let her share in her flavour, you point out that you had better ensure sure she doesn't get in trouble for letting you escape.<br>
<br>
Snatching the handcuffs from her belt, you have her bent over and cuffed and gagged, her truncheon protruding from her ass with her clothing all a mess. Stepping back you snap a picture of her lewd position, showing it to her as she blushes before helping her back up and giving her a quick cuddle.
<</if>>
<br><br>
"@@.npc_technician;That was fun!@@" She says with a grin as she gets her energy back. "@@.npc_technician;Of course, normal cops are one thing, I wonder how you might handle a visit from the Inquisition? I have quite the... comfy chair around here somewhere...@@" She laughs. "@@.npc_technician;Sorry, maybe that's the wrong Inquisition. One might even say... heretical, but the point stands.@@"<br>
<br>
Adjusting her clothes, she gives you a parting butt-wiggle as she pulls up her pants before returning to her room to change.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Wait for her to return." 600>>]
</div>/*#
#desc: choose role play with technician
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You nervously frown and explain that, actually... actually you don't think you want to do this sort of role play.<br>
<br>
"@@.npc_technician;Of course, of course! Role play is meant to be fun, no reason to do anything you're not comfortable with, especially when it's just the two of us.@@"<br>
<br>
[<<moveTo 'event_technician_private_game_root' 'Do something else.' 60>>]
</div>/*#
#desc: choose role play with technician
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Staring a bit at her costume you explain that, actually... you don't think you want to do this "scene." <br>
<br>
"@@.npc_technician;No problem! Let me just get changed and we can do something else.@@"<br>
<br>
You wait on the couch as she disappears into the bedroom to change.<br>
<br>
[<<moveTo 'event_technician_private_game_root' 'Do something else.' 300>>]
</div>/*#
#desc: technician roleplay: pup play dress
#status: RELEASED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
She grins, dashing into her bedroom and returning a minute later with some an armful of leather straps and a puppy hood.<br>
<br>
"@@.npc_technician;Oh you are just going to make the cutest puppy!@@"<br>
<br>
[<<moveTo 'event_technician_private_game_dog_2' "Get outfitted." 600>>]<br>
[<<moveTo 'event_technician_private_game_abort' "On second thought, you'd like to do something else." 60>>]
</div>/*#
#desc: technician roleplay: pup play
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItemSet 'puppy_black_copy'>>
<<wearItemSet 'puppy_black_copy'>>
<<addItem 'dog_leash'>>
<<wearItem 'dog_leash' true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if !setup.checkItemTypeWorn("plug")>>
<<applyExperience 'anal' 7 'little' $SEEN_FRIEND>>
<<set $scene.dogPlug = "dog_plug_black">>
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.dogPlug = "dog_plug_insert">>
<<else>>
<<set $scene.dogPlug = "dog_plug_black">>
<</if>>
<</if>>
<<addItem $scene.dogPlug>>
<<wearItem $scene.dogPlug true>>
<<set $npc_technician.relationship.private_games.dog = true>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
She takes several minutes to help you into the bitchsuit and you soon find yourself on all fours and helpless — even moreso when she adds the hood with its integrated gag that has your mouth wide, and the puppy plug at the other end that REALLY has you drooling like the cute little bitch you are.<br>
<br>
Finally she attaches a leash
<<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>
to your collar.
<<else>>
to a ring built into the neckpiece of the hood.
<</if>>
"@@.npc_technician;Damn, but you look hot as hell in that thing, now come on, you need your exercise!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> scratches your head and then leads you by the leash around the apartment, cooing at you the whole time as you figure out how to walk on elbows and knees as her "@@.npc_technician;Cute widdle puppy dog!@@"<br>
<br>
<<if $fetish.bestiality_hard && $npc_technician.relationship.kinks.bestiality>>
She leads you around the room for a few minutes until you get the hang of "crawling" in your restricted arrangement... and then she heads for the door out of the flat.<br>
<br>
"@@.npc_technician;Come on, let's go walkies!@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10 && setup.getTotalValue("humiliation") > 10>>
[<<moveTo 'event_technician_bestiality_1' "Yay! Walkies! Follow after her like a good pet." 1800 "<<set $scene.obey=true>>">>]<br>
<<else>>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You may be submissive, but going out in public dressed in a bitchsuit is more humiliation than you can handle.@@]<br>
<<elseif setup.getTotalValue("humiliation") > 10>>
[@@.link_locked;You are not submissive enough to willingly go out on a leash dressed in a bitchsuit.@@]<br>
<<else>>
[@@.link_locked;You lack the courage and the obedience to go out on a leash dressed in a bitchsuit.@@]<br>
<</if>>
<</if>>
<<if setup.getTotalValue("submission") > 15 && setup.getTotalValue("humiliation") > 15>>
[@@.link_locked;You are too submissive and addicted to humiliation to resist going out in public on leash wearing a bitchsuit.@@]<br>
<<else>>
[<<moveTo 'event_technician_bestiality_1' "Go out in public like this? No... that's too much." 60 "<<set $scene.obey=false>>">>]
<</if>>
<<else>>
After giving you a good workout and having you show off various tricks like shaking hands and rolling over she "lets" you up onto the couch where she has you lie back for tummy scratches as you yip happily through the gag.<br>
<br>
"@@.npc_technician;Who's a good <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>puppy<</switch>>? Yes you are, yes you are! You're a VERY good <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>puppy<</switch>> and mommy loves you very much!@@"<br>
<br>
After some cuddling and you pretending to lick her she finally starts unstrapping you — helpfully massaging your limbs as you re-extend them before she bundles everything up to take back to her room.<br>
<br>
<<if $fetish.bestiality_hard && setup.getTotalValue("bestiality") >= 5>>
<<printThought "Being her pet is one thing... I wonder what might happen if I told her how I REALLY feel about dogs...">><br>
<br>
<</if>>
[<<moveTo 'event_technician_private_game_root' "Put your clothes back on and wait for her return." 600 "<<removeItemSet 'puppy_black_copy'>><<deleteItemSet 'puppy_black_copy'>><<removeItem 'dog_leash' true>><<deleteItem 'dog_leash'>><<removeItem $scene.dogPlug true>><<deleteItem $scene.dogPlug>><<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: technician private game leave early
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You confess that you're getting a bit tired and you and <<=setup.getNpcName('npc_technician', 'first')>> exchange hugs before you pack things up and head off.<br>
<br>
[<<moveTo 'room_student_quarter' 'Home.' 180>>]
</div>/*#
#desc: technician ask about evil
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_technician', 'first')>> what happened to her clothes and the rest from her time being brainwashed into evil.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smirks. "@@.npc_technician;You mean my outfit upgrades from my corruption arc? Well, technically I still need them for the office, keeping up appearances and all until you can deal with the big bad but, to answer what was ACTUALLY your question... if you wanted to spend some time playing with the "tech warlock" I think a visit to the mirror universe for a lesson in agony could be arranged...@@"<br>
<br>
[<<moveTo "event_technician_evil_cosplay_1" "That sounds fun!" 300>>]<br>
[<<moveTo "event_technician_private_game_abort" "Maybe some other time, you'd rather do something else." 60>>]
</div>/*#
#desc: ask to do evil cosplay
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_technician', 'first')>> that you'd like to have a visit with the evil "Tech Warlock" and she grins.<br>
<br>
"@@.npc_technician;I always did enjoy the corruption arcs... well, for a few episodes, evil may be sexy, but good always triumphs... but those wardrobes...@@" she winks. "@@.npc_technician;Speaking of, I'll be right back. Need to slip into something less comfortable... or maybe I'm swapping places with my evil mirror universe clone? Whichever best fits your head-canon!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> laughs as she darts into her bedroom.<br>
<br>
[<<moveTo "event_technician_evil_cosplay_2" "Wait for her to return." 120>>]<br>
[<<moveTo "event_technician_evil_cosplay_abort" "You changed your mind about this." 120>>]
</div>/*#
#desc: technician pretends to be evil intro
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<if setup.checkNaked()>>
<<moveTo "event_technician_evil_cosplay_3">>
<</if>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> changes fast, and emerges a couple minutes later, looming over you in platform heels that and somehow complete with different coloured hair, contacts... and large breasts.<br>
<br>
"@@.npc_technician;Miss me, loser?@@" She states with a grin, cat-5 flogger swishing ominously. "@@.npc_technician;They always come back... heroes SAY they want a good girl, but what they really need is an evil bitch to bring them to the dork... er, I mean, DARK side...@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> tone doesn't quite have the venom of when she was actually evil, but she's doing her best, obviously resisting the urge to smile in favour of an evil smirk as she hesitates for a moment and the cracks her whip. "@@.npc_technician;What are you waiting for? Like... strip and get on your knees!.... bitch.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_technician_evil_cosplay_3" "Do as she commands..." 180>>]<br>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">><br>
<</if>>
[<<moveTo "event_technician_evil_cosplay_abort" "Safeword!" 120>>]
</div>/*#
#desc: evil technician leads you to bedroom
#status: RELEASED 0.9.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
You swiftly strip as <<=setup.getNpcName('npc_technician', 'first')>> stares, her expression bouncing between a mask of aloof dismissal and hungry lust.<br>
<br>
"@@.npc_technician;Took you long enough...@@" <<=setup.getNpcName('npc_technician', 'first')>> states, clearly intending for it to be an insult, but unable to hide the excitement in her voice that came from watching you strip. "@@.npc_technician;Now that I can be sure you aren't wearing a wire, it's time to deal with you PROPERLY!@@" She cracks the whip again. "@@.npc_technician;Follow... and, like... crawl...@@" Still looking back at you, she walks back into the bedroom.<br>
<br>
[<<moveTo "event_technician_evil_cosplay_4" "Follow her into the bedroom." 60>>]<br>
[<<moveTo "event_technician_evil_cosplay_abort" "Safeword!" 120>>]
</div>/*#
#desc: evil technician ties you up
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
In the bedroom you find that <<=setup.getNpcName('npc_technician', 'first')>> not only changed, she took a moment to organise things, her computer gaming chair rolled into the centre of the room with wrist restraints setup and waiting.<br>
<br>
"@@.npc_technician;Hop up, hero! We have ways of making you talk...@@" she snaps, giving you a quick hit on the bottom with the flogger that sends you crawling forward a few steps towards the chair.<br>
<br>
<<printThought "Interrogation scene... alright, that makes sense.">><br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smirks as she buckles you into place, looking you in the eye with a smile as she pulls the last strap tight. "@@.npc_technician;And don't even THINK about escaping... or seducing your way out of here. You don't have a chance, hero, not some goody two-shoes like yourself... I'm loyal to the evil company!@@" She pauses... "@@.npc_technician;Hmm, bit repetitive, that, all corporations are evil... well I'm loyal to CDS!, er <<if $fetish.sissy>>SISSI... wait, no, that sounds bad, I'm loyal to <</if>> Social Interaction Service Syndicate Inc... goddess that's a mouthful...<<if $npc_technician.flags.dataservice_encounter.handjob_finish == "mouth">> SPEAKING of mouthfuls,<<else>> anyway,<</if>> now that I have you in my evil clutches, it's time for you to confess to your crimes! Your corporate crimes, the worst type of crime... obviously.@@"<br>
<br>
<<printThought "Crimes?">><br>
<br>
[<<moveTo "event_technician_evil_cosplay_5" "You're innocent!" 120>>]<br>
[<<moveTo "event_technician_evil_cosplay_abort" "Safeword!" 120>>]
</div>/*#
#desc: evil technician interrogates you
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
You may be naked and bound and helplessly at <<=ps(setup.getNpcName('npc_technician', 'first'))>> evil not-mercy... but you defiantly reply that you've done nothing wrong!<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.handjob_finish == "mouth">>
"@@.npc_technician;Nothing wrong? What about attempting to bribe a corporate officer? Yes, I remember it well. You having just cost the company untold credits with your corporate... and you come to me, diving under my desk like a cock-hungry... er, trying to buy me off and distract me from my evil corporate duties of evilness with your honeyed lips... and tongue and...@@" clearly fantasising about the memory <<=setup.getNpcName('npc_technician', 'first')>> bites her lip, momentarily distracted. "@@.npc_technician;Well it won't work! I've been biding my evil time and now... now you're going to pay for your heinous crimes!@@"
<<elseif $npc_technician.flags.dataservice_encounter.handjob>>
"@@.npc_technician;Nothing wrong? What about attempting to bribe a corporate officer? Yes, I remember it well. You having just cost the company untold credits with your corporate... and you come to me, diving under my desk, reaching for my maiden's staff, seeking to sway me from my evil corporate duties of evilness! Well it won't work! I've been biding my evil time and now... now you're going to to pay for your heinous crimes!@@"
<<elseif $npc_technician.flags.dataservice_encounter.asked_for_help>>
"@@.npc_technician;Nothing wrong? What about attempting to bribe a corporate officer? Yes, I remember it well. You having just cost the company untold credits with your sabotage... and you come to me, diving under my desk, massaging my feet begging for my help and to sway me from my evil corporate duties of evilness! Well it won't work! I've been biding my evil time and now... now you're going to to pay for your heinous crimes!@@"
<<else>>
"@@.npc_technician;Nothing wrong? What about your sabotaging the company? Yes, I remember it well... such an obvious act of betrayal... especially when you weren't even willing to try to show your company loyalty and pay my oh-so-reasonable toll to try and undo your damage. Not that it would have saved you! I am, of course, fully committed to my evil corporate duties of evilness, no matter what sexy cuties might do. Well the jokes on you, because I've been biding my evil time and now... now you're going to to pay!@@"
<</if>>
<br><br>
Standing over you, <<=setup.getNpcName('npc_technician', 'first')>> swipes you with her flogger. "@@.npc_technician;Hi-yah! Feel the agony of your crimes! Beg for mercy!@@"<br>
<br>
[<<moveTo "event_technician_evil_cosplay_6" "Beg!" 180 "<<set $scene.beg=true>>">>]<br>
[<<moveTo "event_technician_evil_cosplay_6" "You'll never talk!" 180 "<<set $scene.beg=false>>">>]<br>
[<<moveTo "event_technician_evil_cosplay_abort" "Safeword!" 120>>]
</div>/*#
#desc: evil technician has you beg for mercy
#status: RELEASED 0.9.4.0
#ignore_spell: eeeeevil
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
<<if $scene.beg>>
You beg for mercy for your crimes and <<=setup.getNpcName('npc_technician', 'first')>> laughs diabolically. "@@.npc_technician;HAHAHA! Such weaklings you do-gooders are! And now... now you will taste the TRUE power of evil!@@"
<<else>>
You defiantly resist <<=setup.getNpcName('npc_technician', 'first')>> but she only laughs diabolically. "@@.npc_technician;HAHAHA! Foolish do-gooder! Your resistance is futile! Watch as I unleash my full might... and you taste the TRUE power of evil!@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_technician', 'first')>> leaps up onto the chair, straddling you as she rips off her jacket... and shoves her massive breasts into your face. "@@.npc_technician;Feel them! My eeeeevil titties! My massive orbs of diabolic power! All are helpless before their jiggly might, cower, cower foolish mortal!@@"<br>
<br>
[<<moveTo "event_technician_evil_cosplay_7" "Mmmfff!" 180>>]<br>
[<<moveTo "event_technician_evil_cosplay_abort" "Safeword!" 120>>]
</div>/*#
#desc: evil technician tortures you with breasts
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
You are happily squashed against <<=setup.getNpcName('npc_technician', 'first')>> breasts as she grinds against your crotch. "@@.npc_technician;Nothing to say?@@" Taunts... as if your words could escape past her massive mounds. "@@.npc_technician;Well we have ways of making you talk... reveal your secrets... or be driven MAD by my evil teasing!@@"<br>
<br>
Still pinning you tight against the chair with her breasts, <<=setup.getNpcName('npc_technician', 'first')>> reaches behind to tease you further,
<<if setup.checkItemTypeWorn("cage")>>
edging you through your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> as she humps and grinds,
<<else>>
<<if $player.body_ref.penis && setup.checkItemTypeWorn("cage") && $player.body_ref.vagina>>
jerking you off and fingering you both,
<<elseif $player.body_ref.vagina>>
fingering you and
<<elseif $player.body_ref.penis>>
jerking you off and
<<else>>
ERROR: missing genitals.
<</if>>
<</if>>
pushing you to the breathless edge but denying you release.<br>
<br>
"@@.npc_technician;I can feel your will weakening with every ruin! Soon, soon you will join me in evil!@@"<br>
<br>
[<<moveTo "event_technician_evil_cosplay_8" "Mmmfff!" 300>>]<br>
[<<moveTo "event_technician_evil_cosplay_abort" "Safeword!" 120>>]
</div>/*#
#desc: evil technician reverts
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
You moan with denied orgasm as <<=setup.getNpcName('npc_technician', 'first')>> ruins you<<if setup.checkItemTypeWorn("cage")>>through your <<if setup.isCage()>>cage<<else>>chastity<</if>><</if>>... but with each denied climax SHE is the one seeming to get more excited, pressing closer, panting with excitement.<br>
<br>
"@@.npc_technician;No... no! How can you resist my evil powers! Oh, what have I done? Have I served that most diabolical of Masters... CAPITALISM?@@" In a loss of control, <<=setup.getNpcName('npc_technician', 'first')>> pushes you over the edge and you climax <<if setup.checkItemTypeWorn("cage")>>through your <<if setup.isCage()>>cage<<else>>chastity<</if>><<else>>hard<</if>><<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction>>, spurting all over her chair<</if>>.<br>
<br>
"@@.npc_technician;Oh! My love! Your passion has cured me of my evil! Oh, but how can you forgive me my dastardly crimes...@@"<br>
<br>
You smile up reply that you'll forgive anything if <<=setup.getNpcName('npc_technician', 'first')>> would just kiss you already.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> eyes light up as she leans in with both hands to land a big smooch on your lips. "@@.npc_technician;Such grace!@@" KISS "@@.npc_technician;Such beauty!@@" KISS "@@.npc_technician;Truly the most noble of heroes!@@" KISS "@@.npc_technician;Far better than being evil is to snog my totes hot girlfriend!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> pulls in for a passionate make-out session... that ends a couple minutes later as your combined weight finally unbalances the chair and you go tumbling to the floor.<br>
<br>
You're still bound to the chair as <<=setup.getNpcName('npc_technician', 'first')>> rolls to safety and then looks up to check on you, unbuckling your straps and pulling you to your feet for some more making out.<br>
<br>
"@@.npc_technician;That was fun! But... I wasn't kidding when I talked about this outfit being "less comfortable." Let me just change back and we'll do something else, kay?@@"<br>
<br>
You grin and kiss her one more time before returning to the living room and dressing yourself as you wait for her to come back looking again as her usual smiling self.<br>
<br>
[<<moveTo 'event_technician_private_game_root' 'Do something else.' 60>>]
</div>/*#
#desc: safeword evil technician
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.llocation != "event_technician_evil_cosplay_1">>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $player.llocation == "event_technician_evil_cosplay_1">>
You knock on <<=ps(setup.getNpcName('npc_technician', 'first'))>> bedroom door and explain that, actually, you changed your mind about the whole "Evil Tech Warlock" thing.<br>
<br>
"@@.npc_technician;Oh, sure,@@" she replies, "@@.npc_technician;just, uh... gimme a moment to change back, alright?@@"<br>
<br>
You wait acouple of minutes and re-emerges as her normal, smiling self. "@@.npc_technician;So, then... what shall we do?@@"
<<else>>
You safeword and <<=setup.getNpcName('npc_technician', 'first')>> instantly drops <<if $player.llocation != "event_technician_evil_cosplay_8">>the flogger and her act<<else>>the act<</if>>.<br>
<br>
"@@.npc_technician;You okay? I didn't mean to scare you or anything... here, let me get you out of those restraints!@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> quickly unbuckles you from the chair and gathers you up for a comforting hug.<br>
<br>
"@@.npc_technician;I guess this outfit maybe sparked some bad memories? Here, let me change while you get dressed and we can do something else, alright?@@"<br>
<br>
You nod and return to the apartment's main room, emerging from the bedroom a couple minutes later her usual happy, smiling self.
<</if>>
<br><br>
[<<moveTo 'event_technician_private_game_root' 'Do something else.' 60>>]
</div>/*#
#desc: technician roleplay: strip RPG combat
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first_time = !$npc_technician.relationship.private_games.strip_game>>
<<set $npc_technician.relationship.private_games.strip_game = true>>
<<include "calcTopId">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> smiles in glee and spins out a fun private dungeon romp for you to enjoy.<br>
<br>
Making your way to the final chamber in pursuit of the mcguffin of the day, she grabs a set of dice and grins at you and raises an eyebrow.<br>
<br>
<<if $scene.first_time>>
"@@.npc_technician;Alright, since it's just the two of us... how about we spice things up a bit and raise the stakes — strip combat! Instead of HP, you lose clothing.@@"<br>
<br>
<<if setup.checkItemTypeWorn('jacket') && $scene.topId != "">>
She looks you over. "@@.npc_technician;I'd call a jacket a bit of an unfair advantage, right? And really... if you're so cold you could just cuddle up, right?@@" She winks at you. "@@.npc_technician;Anyway, ditch that and grab a die, eh?@@"<br>
<br>
<</if>>
[<<moveTo 'event_technician_private_game_strip_game_2_decline' "Blush and say you're not quite ready for that." 600>>]<br>
[<<moveTo 'event_technician_private_game_strip_game_2' "Grab a die, let's roll!" 600>>]
<<else>>
"@@.npc_technician;You ready to lose, and by lose, I mean get nekkid?@@"<br>
<br>
<<if setup.checkItemTypeWorn('jacket') && $scene.topId != "">>
She looks you over."@@.npc_technician;I'd call a jacket a bit of an unfair advantage, right? And really... if you're so cold you could just cuddle up, right?@@" She winks at you. "@@.npc_technician;Anyway, ditch that and grab a die, eh?@@"<br>
<br>
<</if>>
You grab a die of your own and smile back.<br>
<br>
[<<moveTo 'event_technician_private_game_strip_game_2' "Roll!" 600>>]<br>
[<<moveTo 'event_technician_private_game_strip_game_2_decline' "Blush and say you're not quite ready for that." 600>>]
<</if>>
</div>/*#
#desc: technician roleplay: decline strip rpg combat
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Feeling a bit guilty you decline, saying you aren't really comfortable getting naked...<br>
<br>
You can sense that <<=setup.getNpcName('npc_technician', 'first')>> is disappointed, but she quickly hides it with a smile. "@@.npc_technician;That's okay, though... you're like... really pretty.@@" She blushes and looks away, quickly scooping up a die and turning back.<br>
<br>
"@@.npc_technician;So, uh, anyway, normal combat rules then. Roll for initiative?@@"<br>
<br>
Still tingling from her compliment you nod, getting back to the game where, after a close, hard-fought battle you manage to triumph, completing the dungeon in triumph.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> joins in your excitement, the two of you hugging before noticing the late hour and you depart home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600>>]
</div>/*#
#desc: technician roleplay: strip RPG combat
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.topId = setup.getItemFromType("shirt")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("dress")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("strapless_dress")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("bodysuit")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("corset")>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $scene.jacket = setup.getItemFromType("jacket")>>
<<if $scene.jacket != "" && $scene.topId != "" && $scene.topId != $scene.jacket>>
<<removeItem $scene.jacket true>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_10'
0
'event_psychiatrist_theme_technician_private_games_1'
false
>>
/%clothing is shoes, top, bottom, bra, garters, panties%/
<<set $scene.your_clothes = []>>
<<if $scene.topId != "" && setup.getItemObj($scene.topId).specific == "bodysuit">>
<<set $scene.your_clothes.pushUnique($scene.topId)>>
<</if>>
<<if setup.checkItemTypeWorn("panties")>>
<<set $scene.your_clothes.pushUnique(setup.getItemFromType("panties"))>>
<</if>>
<<if setup.checkItemTypeWorn("garter")>>
<<set $scene.your_clothes.pushUnique(setup.getItemFromType("garter"))>>
<</if>>
<<if setup.checkItemTypeWorn("stockings")>>
<<set $scene.your_clothes.pushUnique(setup.getItemFromType("stockings"))>>
<</if>>
<<if setup.checkItemTypeWorn("bra")>>
<<set $scene.your_clothes.pushUnique(setup.getItemFromType("bra"))>>
<</if>>
<<if setup.checkItemTypeWorn("corset")>>
<<set $scene.your_clothes.pushUnique(setup.getItemFromType("corset"))>>
<</if>>
<<if $scene.topId != "" && setup.getItemObj($scene.topId).specific != "bodysuit">>
<<set $scene.your_clothes.pushUnique($scene.topId)>>
<</if>>
<<if $scene.jacket != "">>
<<set $scene.your_clothes.pushUnique($scene.jacket)>>
<</if>>
<<if setup.checkItemTypeWorn("legwear")>>
<<set $scene.your_clothes.pushUnique(setup.getItemFromType("legwear"))>>
<</if>>
<<set $scene.tie = setup.isItemEquipped("tie")>>
<<if $scene.tie>>
<<set $scene.tie = setup.getItemFromType("choker")>>
<<removeItem $scene.tie true>>
<</if>>
<<set $scene.your_clothes.push(setup.getItemFromType("shoes"))>>
<<set $scene.her_clothes = 4>>
<<set $scene.first = true>>
<<set $scene.removed_clothes = []>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.jacket>>
You shed your jacket to "even the playing field" and grab your die.
<</if>>
<<if $scene.tie>>
The in-game battle is joined and you both roll critical hits!<br>
<br>
"@@.npc_technician;Ho-ho! Now that's an interesting start... how about you start with that tie?@@" You do as she suggests as she leans down to her feet.
<<else>>
The in-game battle is joined as she rolls and barely misses.<br>
<br>
You take your turn and it's a hit! "@@.npc_technician;Curses, first blood! But you won't get lucky again!@@" She teases.
<</if>>
<br><br>
The two of you laugh, your heart beating faster as she takes off her shoes.<br>
<br>
<<printThought "I wonder what's going to happens if I lose... or if I win?">><br>
<br>
<<if $scene.your_clothes.length > 5>>
You can't help but grin as she removes her footwear, she was already behind you in total clothing, so with this early lead... well... she doesn't have a chance!
<<elseif $scene.your_clothes.length > 3>>
As she removes her footwear you glance over your character sheet and consider your next move. You have an early lead but the two of you look to have about the same "hit points," as it were, so you'll still have to stay on your toes.<br>
<<else>>
Even with this early lead, you're a bit nervous — you're definitely more than a bit under-dressed for a "strip" game...
<</if>>
<br><br>
<<if setup.getTotalValue("smart")+setup.getTotalValue("gaming") >= 15>>
<<if setup.getTotalValue("smart")+setup.getTotalValue("gaming") >= 30>>
You immediately deduce the optimal tactic, an attack sequence that should all but guarantee your victory...<br>
<br>
[<<moveTo 'event_technician_private_game_strip_game_3' "Employ extra-special tactics." 60 "<<set $scene.tactics=2>>">>]<br>
<<else>>
Thinking for a moment, you believe you see a line of play that will give you an edge...<br>
<br>
[<<moveTo 'event_technician_private_game_strip_game_3' "Employ special tactics." 60 "<<set $scene.tactics=1>>">>]<br>
<</if>>
[<<moveTo 'event_technician_private_game_strip_game_3' "Forgo tactics and just leave it to chance." 60 "<<set $scene.tactics=0>>">>]<br>
[<<moveTo 'event_technician_private_game_strip_game_quit' "You're starting to feel apprehensive, ask to stop." 300>>]
<<else>>
You can't really tell which attack would be most effective, looks like it's going to be up to chance...<br>
<br>
[<<moveTo 'event_technician_private_game_strip_game_3' "Roll!" 60 "<<set $scene.tactics=0>>">>]<br>
[<<moveTo 'event_technician_private_game_strip_game_quit' "You're starting to feel apprehensive, ask to stop." 300>>]
<</if>>
</div>/*#
#desc: technician roleplay: strip RPG combat game loop
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
/% if you aren't smart enough, you'll always lose (though you can get close with luck)
if somewhat smart you can win with a bit of luck
if very smart you'll always win (but margin determined by luck)
%/
<<if $scene.first>>
<<set $scene.first = false>>
<<set $scene.win = false>>
<<else>>
<<switch $scene.tactics>>
<<case 0>>
<<if $scene.her_clothes == 1>>
<<set $scene.win = false>>
<<else>>
<<set $scene.win = (random(1,2) > 1)>>
<</if>>
<<case 1>>
<<set $scene.win = (random(1,2) > 1)>>
<<case 2>>
<<if $scene.your_clothes.length == 3 && $scene.your_clothes[2].specific == "garter" || $scene.your_clothes.length == 2 && $scene.your_clothes[1].specific == "bra" || $scene.your_clothes.length == 1 && $scene.your_clothes[0].specific>>
<<set $scene.win = true>>
<<else>>
<<set $scene.win = (random(1,2) > 1)>>
<</if>>
<</switch>>
<</if>>
<<if $scene.win>>
<<set $scene.her_clothes -= 1>>
<<else>>
<<set $scene.removed_item = $scene.your_clothes.pop()>>
<<set $scene.removed_item_type = setup.getItemObj($scene.removed_item).specific>>
<<if $scene.removed_item_type == "panties" && $scene.your_clothes.length != 0>>
<<set _r2 = $scene.your_clothes.pop()>>
<<set $scene.your_clothes.push($scene.removed_item)>>
<<set $scene.removed_item = _r2>>
<<set $scene.removed_item_type = setup.getItemObj($scene.removed_item).specific>>
<</if>>
<<set $scene.removed_clothes.push($scene.removed_item)>>
<<removeItem $scene.removed_item true>>
<</if>>
<<switch $scene.her_clothes>>
<<case 4>>
<<set $scene.alex_image = setup.charImage("npc_technician","npc_technician_casual")>>
<<case 3>>
<<set $scene.alex_image = setup.charImage("npc_technician","npc_technician_strip_game_1")>>
<<case 2>>
<<set $scene.alex_image = setup.charImage("npc_technician","npc_technician_strip_game_2")>>
<<case 1 0>>
<<set $scene.alex_image = setup.charImage("npc_technician","npc_technician_strip_game_3")>>
<</switch>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.alex_image>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
<<if $scene.her_clothes == 0>>
You smile in triumph as she faces defeat, blushing slightly as she removes her panties in accordance with the result.<br>
<br>
<<switch $scene.tactics>>
<<case 1>>
<<printThought "Tactical thinking pays off!">>
<<case 2>>
<<printThought "Just as planned...">>
<</switch>>
<br><br>
She hesitates for an instant, completely exposed and momentarily bashful. As she looks at you an awestruck, lusty expression her confidence suddenly returns and she smiles, striking a pose on the couch.<br>
<br>
"@@.npc_technician;Well, you've won... how about you come over here and claim your prize.@@"<br>
<br>
[<<moveTo 'event_technician_private_game_strip_game_4' "Join her on the couch." 60 "<<set $scene.win=true>>">>]<br>
[<<moveTo 'event_technician_private_game_strip_game_quit' "You're starting to feel apprehensive, ask to stop." 300>>]
<<else>>
<<switch $scene.tactics>>
<<case 0>>
The fates smile upon you, and you get in a good hit, sitting back to watch as <<=setup.getNpcName('npc_technician', 'first')>> removes her
<<case 1>>
It appears your tactics are paying off, you strike a cunning blow and watch with a wide smile as <<=setup.getNpcName('npc_technician', 'first')>> removes her
<<case 2>>
Everything is falling into place as you strike a cunning blow and watch with a wide smile as <<=setup.getNpcName('npc_technician', 'first')>> removes her
<</switch>>
<<switch $scene.her_clothes>>
<<case 3>>
top, pulling it up and over her head to reveal a black, lace bra.<br>
<br>
"@@.npc_technician;Hey, my eyes are up here!@@" She states with a playful smirk. "@@.npc_technician;Honestly, though, I'm glad you like it, I wore it just for you...@@"<br>
<br>
Now it's your turn to blush, was this all part of her plan?
<<case 2>>
skirt, somewhat theatrically sliding down her long, smooth legs to reveal the bulging black lace panties perfectly matching her sexy bra. She smiles as you can't help but admire her sexy undergarments.<br>
<br>
"@@.npc_technician;High stakes now! Guess I better fight a bit better...@@"
<<case 1>>
bra. You can't help but ogle her tits as she theatrically reaches behind her back to unclasp her bra, holding it in place for a moment before letting it fall to reveal her cute, perky breasts.<br>
<br>
"@@.npc_technician;Uh-oh.@@" She states with a smile and a cute little wiggle. "@@.npc_technician;It's down to the wire now! I can feel my luck turning though, have at thee!@@"
<</switch>>
<br><br>
Each choosing your next action, you reach for the dice...<br>
<br>
<<if $scene.her_clothes == 1>>
[<<moveTo 'event_technician_private_game_strip_game_3' "Roll for victory!" 60>>]<br>
<<else>>
[<<moveTo 'event_technician_private_game_strip_game_3' "Roll!" 60>>]<br>
<</if>>
[<<moveTo 'event_technician_private_game_strip_game_quit' "You're starting to feel apprehensive, ask to stop." 300>>]
<</if>>
<<else>>
<<if $scene.your_clothes.length == 0>>
She grins as the dice fall and she motions for you to give up your final piece of clothing.<br>
<br>
<<if $scene.removed_item_type == "panties">>
You blush as you remove your <<=setup.getItemName($scene.removed_item)>> to fully expose your <<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>chastity belt<<elseif $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>.
<<else>>
You blush as you remove your <<=setup.getItemName($scene.removed_item)>>, silently cursing yourself for not even wearing panties today — talk about going into a strip game with a handicap!
<</if>>
<br><br>
<<switch $scene.tactics>>
<<case 0>>
<<printThought "I guess that's how things roll sometimes...">>
<<case 1>>
<<printThought "Damn, I thought I had her! If I just had some better luck...">>
<</switch>>
<br><br>
She beams, looking your naked body up and down and then leaning back regally on the couch.<br>
<br>
"@@.npc_technician;You. Look. Amazing. Now, since I have defeated you, I think you had better scurry over here so I may claim my prize...@@"<br>
<br>
[<<moveTo 'event_technician_private_game_strip_game_4' "Join her on the couch." 60 "<<set $scene.win=false>>">>]<br>
[<<moveTo 'event_technician_private_game_strip_game_quit' "You're starting to feel apprehensive, ask to stop." 300>>]
<<else>>
<<switch $scene.tactics>>
<<case 0>>
<<if $scene.her_clothes == 1>>
She's down to her final scrap of clothing, her black-lace panties stretched over her arousal but she seems oddly confident, as if it's all part of her plan and that luck is no longer in the equation, she still has the fight in the bag.
<<else>>
You whiff and she doesn't as the battle goes her way.<br>
<br>
<<printThought "Damn, well hopefully my luck turns soon.">>
<</if>>
<<case 1>>
She barely out-rolls you, landing a blow with a triumphant smile.<br>
<br>
<<printThought "Dang, I thought I had her that time!">>
<<case 2>>
Despite your plan, the fates aren't with you and she wins the exchange.<br>
<br>
<<printThought "Stay calm, this is just a setback...">>
<</switch>>
<br><br>
<<switch $scene.removed_item_type>>
<<case "shoes">>
You remove your <<=setup.getItemName($scene.removed_item)>>. Taking off your shoes isn't really very revealing and yet you suddenly feel vulnerable, especially when <<=setup.getNpcName('npc_technician', 'first')>> smiles at you and wiggles her <<if setup.getTotalValue("foot") > 10>>oh so sexy<<else>>cute<</if>> toes in your direction.<br>
<br>
"@@.npc_technician;Hah, now we're even!@@"
<<case "dress" "strapless_dress">>
Under <<=ps(setup.getNpcName('npc_technician', 'first'))>> admiring eye you shimmy out of your <<=setup.getItemName($scene.removed_item)>> and let the dress fall to the floor, feeling suddenly quite exposed.
<<case "shirt">>
You shed your <<=setup.getItemName($scene.removed_item)>> to expose your <<if setup.checkItemTypeWorn("bra")>>bra<<else>>bare <<if $player.body.breastsize[0]>0>>bosom<<else>>chest<</if>>, silently cursing yourself for the disadvantage caused by going sans bra today.<</if>>
<<case "legwear">>
You remove your <<=setup.getItemName($scene.removed_item)>>.
<<if setup.checkItemTypeWorn("panties")>>
exposing your <<=setup.getItemTypeName("panties")>>.<br>
<br>
<<switch setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','male'])>>
<<case "sissy">>
"@@.npc_technician;Oh those are just adorable! You really are just the cutest, most lovely <<if $fetish.sissy>>sissy<<else>>girl<</if>> in the world! Yum!@@"
<<case "bold">>
"@@.npc_technician;Oh my, dressed like that it's like you're looking to be in charge? Honestly didn't think you had that in you but... hmm... yeah, that could be fun... well, if you win... which you won't.@@"
<<case "fetish">>
"@@.npc_technician;Ooooh, kinky! I knew you had it in you but, well, it's even better to see it confirmed in person! Not to mention hot, HOT, HAWT!@@"
<<case "modest">>
"@@.npc_technician;My, my, aren't you the modest one... well just wait, I'll have you out of those in just a few more rolls...@@"
<<case "cute">>
"@@.npc_technician;Oh, those are so cute on you! A wonderful choice.@@"
<<case "male">>
<<=setup.getNpcName('npc_technician', 'first')>> wrinkles her nose at the sight of your male underthings.<br>
<br>
"@@.npc_technician;Ew, I thought you'd wear something way nicer than that, how uncomfortable and bland.@@"
<</switch>>
<<else>>
utterly exposing yourself thanks to your lack of panties.<br>
<br>
"@@.npc_technician;My, my, not exactly a great tactical choice there... commando.@@"<br>
<br>
You blush, quickly sitting back down to hide your shame.
<</if>>
<<case "bodysuit">>
You shed your <<=setup.getItemName($scene.removed_item)>> and <<=setup.getNpcName('npc_technician', 'first')>> grins wide. "@@.npc_technician;Talk about a strategic blunder to pin your decency on a single item! Not that I'm complaining about this suddenly revealed view!@@"
<<case "bra">>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
Your massive mammaries hang heavy without the support of your bra. <<=setup.getNpcName('npc_technician', 'first')>> looks on, momentarily transfixed.<br>
<br>
"@@.npc_technician;Woah, you really are that big, I thought for sure your bra was doing some of the heavy lifting, well, I guess it was, but, damn, those are some huge, sexy knockers!@@"
<<case 'large'>>
"@@.npc_technician;Oh, wow, those are beautiful, big, but not too big, y'know?@@" She states, admiring your freshly exposed breasts.
<<case 'medium'>>
"@@.npc_technician;Mmm, perfect, hand-filling boobies, mmm, I just wanna reach out right now, but we've got a fight to finish!@@"
<<case 'small'>>
You're a bit ashamed of your small breasts but <<=setup.getNpcName('npc_technician', 'first')>> doesn't seem to mind, looking upon them with obvious desire.
<<case 'none'>>
You carefully remove your bra, exposing your utter lack of anything to fill it.<br>
<br>
"@@.npc_technician;Mmm, such cute little nipples, I can't wait to nibble on them...@@"
<<default>>
ERROR: unknown breast size
<</switch>>
<<case "corset">>
You ask for <<=ps(setup.getNpcName('npc_technician', 'first'))>> help with unlacing your corset. Standing behind you, she seems to take a moment to admire it first, her hands caressing around your slimmed waist.<br>
<br>
<<if $player.timebased.tightlacing <=25>>
"@@.npc_technician;Dang, even barely laced this looks great on you and the thought of it laced all the way down... heh, I need to stop thinking of stuff like that or my panties may explode before you even have a chance to win them off of me!@@"
<<elseif $player.timebased.tightlacing <=75>>
"@@.npc_technician;This is gorgeous, and looks like you've almost got it laced down! You go, girl, you're going to look AMAZING once this is closed.@@"
<<else>>
"@@.npc_technician;Hot damn, no wonder your figure is so amazing! I don't even know how you breathe in this, it's so tight but, well... looking at you certainly takes MY breath away!@@"
<</if>>
<br><br>
"@@.npc_technician;Seems almost a shame to remove it but... well... I think you're a prize worth unwrapping.@@"<br>
<br>
You try to play off your gasp as resulting from the corset suddenly loosening under her nimble fingers, blushing and glad that she can't see you as she lets the corset fall to the ground. She runs a finger gently over your lace-imprinted flesh.
<<case "garter">>
She glares at your garters as you make a show of slowly taking them off, your panties remaining in place.<br>
<br>
"@@.npc_technician;Cheater!@@" She jokes, "@@.npc_technician;Wearing all those fiddly extra undergarments! They're, like, hella sexy though.@@"<br>
<br>
You blush, her comment almost distracting you from the fact that you only have one item of clothing left...
<<case "stockings">>
You roll down your stockings and she grins.<br>
<br>
"@@.npc_technician;Oooh! Cute toesies!@@"
<<case "jacket">>
You shed your jacket and she grins.<br>
<br>
"@@.npc_technician;Jacket but no top? It's like you were planning on losing...@@"
<<default>>
ERROR: unexpected scene.removed_item_type <<=$scene.removed_item_type>>
<</switch>>
<br><br>
<<if $scene.first_hit>>
<<printThought "Okay, no big, one hit is fine, I've got plenty more clothing.">>
<<else>>
<<switch $scene.your_clothes.length>>
<<case 6>>
<<printThought "Good thing I dressed up today, this should give me an advantage...">>
<<case 5>>
<<printThought "I've got plenty more clothing, this should be alright.">>
<<case 4>>
<<printThought "Uh-oh, things are going to start getting real embarrassing soon, I need to play better!">>
<<case 3>>
<<printThought "Okay, I'm starting to feel a bit exposed...">>
<<case 2>>
<<printThought "Gotta focus, I don't have much clothing left...">>
<<case 1>>
<<printThought "Eeep, I'm almost naked! If I make one more mistake...">>
<</switch>>
<</if>>
<br><br>
Each choosing your next action, you reach for the dice...<br>
<br>
<<if $scene.her_clothes == 1>>
[<<moveTo 'event_technician_private_game_strip_game_3' "Roll for victory!" 60>>]
<<else>>
[<<moveTo 'event_technician_private_game_strip_game_3' "Roll!" 60>>]
<</if>><br>
[<<moveTo 'event_technician_private_game_strip_game_quit' "You're starting to feel apprehensive, ask to stop." 300>>]
<</if>>
<</if>>
</div>/*#
#desc: technician roleplay: strip RPG combat consent
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.alex_image>>
<div id="invframe" class="scrolltext">
Your heart pounds in your chest as you start to nervously approach her but she pauses. "@@.npc_technician;You're alright with this, right? It's just a game, and it's getting pretty late if you needed to get home...@@"<br>
<br>
It's a bit jarring for someone to be so concerned with your feelings as to ask your consent, and it takes you a moment to realise that you really do have a choice here.<br>
<br>
[<<moveTo "event_technician_private_game_strip_game_5_leave" "Bow out, it IS getting pretty late." 60>>]<br>
[<<moveTo "event_technician_private_game_strip_game_5" "Let her know that what you need, and want, is to be right here." 60>>]
</div>/*#
#desc: technician roleplay: strip RPG combat, leave before sexytimes
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removed_clothes.length > 0>>
<<for _item = $scene.removed_clothes.pop(); $scene.removed_clothes.length > 0; _item = $scene.removed_clothes.pop()>>
<<wearItem _item true>>
<</for>>
<<wearItem _item true>>
<<if $scene.jacket != "">>
<<wearItem $scene.jacket true>>
<</if>>
<<if $scene.tie>>
<<wearItem $scene.tie true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
The two of you get dressed and then you depart. You feel a bit bad leaving like this but she doesn't seem to hold it against you, acting quite understanding that you need a bit more time.<br>
<br>
You still give her a kiss on your way out the door, feeling even more guilty at the adorable way she blushes after kissing you back.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: technician roleplay: strip RPG combat sexytimes intro
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _underwear = false>>
<<for ;$scene.your_clothes.length > 0;>>
<<set $scene.removed_item = $scene.your_clothes.pop()>>
<<set $scene.removed_item_type = setup.getItemObj($scene.removed_item).specific>>
<<switch $scene.removed_item_type>>
<<case "panties" "bra" "garter">>
<<set _underwear = true>>
<<set $scene.your_clothes.push($scene.removed_item)>>
<<default>>
<<removeItem $scene.removed_item true>>
<<set $scene.removed_clothes.push($scene.removed_item)>>
<</switch>>
<<if _underwear>>
<<break>>
<</if>>
<</for>>
<<if $scene.win>>
<<set $npc_technician.relationship.private_games.strip_game_win = true>>
<<else>>
<<set $npc_technician.relationship.private_games.strip_game_lose = true>>
<<set $npc_technician.relationship.done_you = true>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = "npc_technician">>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "voluntary">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<set $scene.analvirgin = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_technician">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "voluntary">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_admin.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<<if $npc_technician.relationship.relationship_stage < 2>>
<<set $npc_technician.relationship.relationship_stage = 2>>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_sex_kinks')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_kinks'
10
'theme_technician_kink_1'
true
>>
<</if>>
<<applyExperience 'oral' $npc_technician.penis_size 'little' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 11 'little' $SEEN_FRIEND>>
<<playerOrgasm>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_12'
0
'event_psychiatrist_theme_technician_private_games_sex_1'
false
>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.alex_image>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
You grin, asking why would you evacuate in your "moment of triumph?" <br>
<br>
She smiles back, eagerly pulling you in for a kiss, her naked body pressed against yours.<br>
<br>
<<if $scene.your_clothes.length == 0>>
She helps you out of your outer clothes, smiling in delight at the revelation that you are naked underneath.<br>
<br>
"@@.npc_technician;Playing a stripping game without wearing any underwear? Talk about daring! Mmm... you're so courageous and sexy, no wonder you triumphed.@@"
<<else>>
<<switch $scene.your_clothes[$scene.your_clothes.length-1].specific>>
<<case "panties" "bra" "garter">>
Sharing a passionate kiss you lean back, standing over her naked body, wearing naught but your undergarments as you contemplate your next move.
<<default>>
Touching and kissing and caressing she helps you out of the rest of your clothing until you're just down to your underwear.
<</switch>>
<br><br>
<<switch setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','male'])>>
<<case "sissy">>
Her gaze hungrily sweeps over your <<if $fetish.sissy>>sissy<<else>>girly<</if>> undergarments.<br>
<br>
"@@.npc_technician;Wow, you look so hot and cute and sexy like that! You were meant to be a <<if $fetish.sissy>>sissy<<else>>cute girl<</if>>.@@"
<<case "bold">>
"@@.npc_technician;Hmm, you dressing like that I almost feel like I should be calling you <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...@@"
<<case "fetish">>
"@@.npc_technician;Do you always dress all fetish-kinky under your day to day clothes? That's so hot.@@"
<<case "modest">>
"@@.npc_technician;Hmm, functional but, really... you ought to have more fun with your underthings!@@"
<<case "cute">>
"@@.npc_technician;You look so cute right now, even better than if you were just naked.@@"
<<case "male">>
"@@.npc_technician;Ick, I thought you wore proper, feminine undergarments? Those are just... bleh.@@"
<</switch>>
<</if>>
<br><br>
As you consider all the naughty things you could do with the naked woman lying in front of you, you need to choose, will you follow your training and be submissive, or will you take this singular opportunity to try and take charge?<br>
<br>
[<<moveTo 'event_technician_private_game_strip_game_5_ds' "Take charge!" 60 "<<set $scene.dom=true>>">>]<br>
[<<moveTo 'event_technician_private_game_strip_game_5_ds' "Submit." 60 "<<set $scene.dom=false>>">>]<br>
[<<moveTo 'event_technician_private_game_strip_game_quit' "You're starting to feel apprehensive, ask to stop." 300>>]
<<else>>
Joining her on the couch, she soon flips positions, straddling you and looking imperiously down.<br>
<br>
"@@.npc_technician;Now, my lovely, as I have defeated you, I shall claim my just reward!@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;First, you can remove this evil cage, how can I ravish my prize if I'm all locked up?@@"<br>
<br>
You grin and do as she requests, she sighs gratefully as her member rapidly springs to its full glorious size.<br>
<br>
<</if>>
"@@.npc_technician;First I think a bit of oral attention is in order.@@"<br>
<br>
Shuffling up your chest, she brings her <<getWordPenis false>> to your lips as you lean forward to begin sucking.<br>
<br>
"@@.npc_technician;Mmm, that's the stuff, your face looks so pretty with your lips wrapped around me...@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
Turning and leaning back, she starts <<if setup.isCage()>>fondling your caged member<<else>>stroking your chastity belt<</if>>, teasing you.
<<else>>
Turning and leaning back, she leisurely <<if $player.body_ref.penis>>jerks you off<<else>>fingers you<</if>>.
<</if>>
You continue licking her lovely lollipop, kissing up and down its length in between rubbing your lips with her glistening pre-cum.<br>
<br>
You're really enjoying the combination of her delightful mouthfeel alongside her teasing, a bit disappointed when she stands back up, pulling out of reach of your lips.<br>
<br>
<<if $player.body_ref.vagina>>
"@@.npc_technician;Alright, that's enough for now, now... now I want to do your butt... or perhaps I should say DAT ASS.@@"
<<else>>
"@@.npc_technician;Alright, that's enough for now, I don't want to miss out on your other lovely hole!@@"
<</if>>
<br><br>
Moving to the other end of the couch, she puts your legs up on her shoulders as she reaches under to<<if setup.getItemFromType("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> remove your plug and gently<</if>> guide her saliva-slick cock into your rear.<br>
<br>
You moan as she slides into you, wrapping your legs around her body and pulling her in close as the two of you kiss. She thrusts her hips, raking your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
"@@.npc_technician;You feel so hecking good.@@" She pants, increasing her pace. You're already past the point of coherent dialogue therefore you just moan your agreement as she gives you the business. You hug her closer and throw your head back with a whorish moan as she <<if $fetish.cum>>climaxes<<else>>spurts inside of you<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>> and you likewise make a gooey mess between you bellies<</if>><</if>>.<br>
<br>
Pulling out she slides back, <<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>> bringing her face to your belly as she licks you clean of your spilt seed <<if setup.getItemFromType("plug")>>and<</if>><</if>><<if setup.getItemFromType("plug")>>sliding your plug back into position to keep her cum from leaking out <</if>>before moving back forward to<<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>> "share" her prize with<<else>> lean in for<</if>> a kiss.<br>
<br>
<<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("cum") > 10>>
Flavoured by her lips, <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>your cum tastes<<else>>you taste<</if>> even better than usual
<<else>>
Flavoured by her lips, <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>your cum tastes<<else>>you taste<</if>> somehow sweeter than usual
<</if>>
and you eagerly lick up all that she gives you.<br>
<br>
<</if>>
"@@.npc_technician;Good girl.@@" She whispers before finally sliding off, the two of you rising back to your feet and looking around for your clothes.<br>
<br>
[<<moveTo 'event_technician_private_game_strip_game_6' "Get dressed." 600>>]
<</if>>
</div>/*#
#desc: technician roleplay: strip RPG combat dom/sub
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.dom>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<set $scene.analvirgin = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_technician">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "voluntary">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_admin.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<<set $npc_technician.relationship.done_you = true>>
<<if setup.getTotalValue("dominance") < 1>>
<<setThreshold 'dominance' 'dominance_alex' 'dom_stripping'>>
<<else>>
<<applyExperience 'dominance' 6 'little' $SEEN_FRIEND>>
<</if>>
<<else>>
<<applyExperience 'submission' 6 'little' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = "npc_technician">>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "voluntary">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<if !$player.virgin.anal>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if $npc_technician.relationship.relationship_stage < 2>>
<<set $npc_technician.relationship.relationship_stage = 2>>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_sex_kinks')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_kinks'
10
'theme_technician_kink_1'
true
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_12'
0
'event_psychiatrist_theme_technician_private_games_sex_1'
false
>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" $scene.alex_image>>
<div id="invframe" class="scrolltext">
<<if $scene.dom>>
You draw yourself up, trying to channel a bit of your <<=ps(setup.getNpcName('npc_manager', 'title'))>> authoritative aspect.<br>
<br>
<<if $npc_technician.relationship.her_role == "sub">>
From the way <<=setup.getNpcName('npc_technician', 'first')>> shivers in anticipation it looks like you're actually managing to put out a bit of dominant effect.
<<else>>
Based on <<=ps(setup.getNpcName('npc_technician', 'first'))>> suppressed giggle, you don't think you're quite pulling it off, but she quickly diverts her gaze and slides to her knees.
<</if>>
<br><br>
"@@.npc_technician;Please, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, you have bested me in battle. Take my body as your prize!@@"<br>
<br>
You lean in for a hungry kiss and she melts.<br>
<br>
Sliding to her knees, she addresses your
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>excited <<getWordMyPenis>>,<<else>>wet puss<</if>> tongue racing over it as
<<else>>
<<if $player.body_ref.penis>>
<<getWordMyPenis>>, her tongue slipping between the bars of your prison as
<<else>>
chastity belt, her tongue polishing your sleek front shield as
<</if>>
<</if>>
she hums in delight.<br>
<br>
<<if $player.body_ref.penis>>
Holding it against her cheek, she looks up at you with a smile.
<br><br>
"@@.npc_technician;Has anyone told you how wonderful your mouthfeel is?@@"
<<else>>
Licking her lips she takes a moment to look up at you with a smile.
<br><br>
"@@.npc_technician;Has anyone told you how good you taste?@@"
<</if>>
<br><br>
Before you can respond, she winks and goes back to <<if $player.body_ref.penis>>sucking<<else>>slurping<</if>>. You're near orgasm already but you don't want it to end, pulling back and guiding her to lean onto the couch. She obeys without hesitation.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
You hurriedly remove her cage to let her lovely <<getWordPenis false>> spring free.<br>
<br>
<</if>>
Crawling up onto the couch, you straddle her, grinding against her hips as you feel her hot, hard member between your cheeks.<br>
<br>
"@@.npc_technician;Ride me, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@" She moans.<br>
<br>
Reaching behind, you <<if setup.getItemFromType("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>remove the plug from your rear and<</if>> grasp her hard cock. Guiding it in with one hand, you sit back, feeling her slide into you, both of you moaning in pleasure.<br>
<br>
"@@.npc_technician;<<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> is so tight... she's the best...@@" <<=setup.getNpcName('npc_technician', 'first')>> moans as she thrusts her hips up into you.<br>
<br>
Losing your balance, you pitch forward, kissing <<=setup.getNpcName('npc_technician', 'first')>> passionately as you ride and squeeze, your eager sub's hands roaming over you as she moans and gasps, hugging you tight.<br>
<br>
You feel like riding her forever but, alas, you apparently just feel too good. You sense her orgasm approaching and you whisper for her to "@@.pc;Cum, cum for your <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" She does, and you shudder in kind, <<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>spilling your own seed over her belly as the two of you clutch tight,<</if>> riding out the waves of orgasmic bliss.<br>
<br>
You hang there, catching your breath, forehead pressed together until she finally speaks, her voice a bit strained.<br>
<br>
"@@.npc_technician;Could you move, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, you're getting a little heavy?@@"<br>
<br>
Hopping to your feet, you can't help but laugh at the absurdity of it, and she joins in as well, blushing and thanking you.
<<if $npc_technician.relationship.her_role != "sub">>
<br><br>
"@@.npc_technician;That, like, felt REALLY good though... if you want to be more dominant, which, I'm, like, totally down for, well... you may need some more practice, a different outfit might help as well.@@"<br>
<br>
<<if setup.checkNaked()>>
"@@.npc_technician;Maybe some bold lingerie might help?@@"
<<elseif setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','male']) == "bold">>
"@@.npc_technician;Don't get me wrong, you made a bold choice but, well... you're so naturally soft and cute I think you may need a bit more...@@"
<<else>>
"@@.npc_technician;And, no offense, but your undergarments aren't doing you any favours in that regard. You look cute... and hot, and sexy but... not exactly dominant, y'know?@@"
<</if>>
<br><br>
"@@.npc_technician;Hmm, actually, I think I have an outfit that would look just perfect on you... I'll try to remember to dig it out so you can try it out sometime.@@"
<</if>>
<<else>>
You've spent too much time and effort practicing being a well-behaved, submissive <<if $fetish.sissy>>sissy<<else>>girl<</if>> to stop now snuggling up with <<=setup.getNpcName('npc_technician', 'first')>> and melting into her grasp, your hand reaching down towards her <<if $npc_technician.relationship.her_caged>>caged<<else>>hard<</if>> cock.<br>
<br>
"@@.npc_technician;You sure?@@" She asks breathlessly as she humps your hand.<br>
<br>
You nod, kissing her and stating that you won, and now you want her inside of you as you slide to your knees and begin sucking.<br>
<br>
She gasps in approval as you savour the delicate mouthfeel, delighted at her look of adoring pleasure as you softly suck.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
She implores with her eyes as you dutifully remove her cage. With the device removed she moans with relief, doubly so when you lean in to give her free and growing member a welcoming suck.<br>
<br>
<</if>>
<<if !$player.virgin.anal>>
You subserviently suck until, biting her lip adorably, she shudders and cums. "@@.npc_technician;Sorry,@@" she gasps, hardly giving you a chance to
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
savour her delicious
<<else>>
enjoy her delicate
<</if>>
<<else>>
taste her
<<if setup.getTotalValue("cum") > 5>>
surprisingly tasty,
<<else>>
delicate
<</if>>
<</if>>
feminine flavour. Before pulling you in for a passionate kiss. "@@.npc_technician;Sorry about that... usually I try to be a lady and give some warning, but you're so fucking hot I kind of lost control...@@"<br>
<br>
You blush, at a loss for words as she pulls you in for another kiss, the two of you falling back onto the couch to cuddle and make out for a few minutes as she repeatedly thanks you.
<<else>>
Rising to her feet she guides you to your feet, bending you over the couch before pulling down your panties. <<if setup.getItemFromType("plug")>>Gently she removes your plug, grinding against your bare bottom as you moan and push back in anticipation.<</if>><br>
<br>
Leaning over she kisses you on the cheek, whispering "@@.npc_technician;Relax@@" as she slides into you.<br>
<br>
She enters you with ease, your rear parting in welcome as she rolls her hips<<if $player.body_ref.penis>> in search of your prostate<</if>>. Your moans and gasps flow into each other in a beautiful duet as she fucks you, your pleasure rising and rising and rising until you cum, your entire body shuddering in release, your corresponding clench sending her over the top to spurt inside of you.<br>
<br>
Still locked together you almost collapse, breathing hard from the intense, powerful orgasm as she kisses you from behind and thanks you.
<</if>>
<br><br>
You return the thanks, floating on a gentle cloud as you finally rise and look around for your scattered clothing.
<</if>>
<br><br>
[<<moveTo 'event_technician_private_game_strip_game_6' "Get dressed." 600>>]
</div>/*#
#desc: technician roleplay: strip RPG combat get dressed
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removed_clothes.length > 0>>
<<for _item = $scene.removed_clothes.pop(); $scene.removed_clothes.length > 0; _item = $scene.removed_clothes.pop()>>
<<wearItem _item true>>
<</for>>
<<wearItem _item true>>
<<if $scene.jacket != "">>
<<wearItem $scene.jacket true>>
<</if>>
<<if $scene.tie>>
<<wearItem $scene.tie true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
The two of you get dressed<<if $npc_technician.relationship.her_caged>>, and you re-apply her chastity cage<</if>> before realising how late it has gotten. Reluctantly you mutually decide that will have to be all for the evening, both of you feeling suddenly quite tired.<br>
<br>
Sharing a final kiss, you head home, still tingling at the time spent with your special friend.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600>>]
</div>/*#
#desc: technician roleplay: bail on strip RPG combat
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dress = false>>
<<if $scene.removed_clothes.length > 0>>
<<for _item = $scene.removed_clothes.pop(); $scene.removed_clothes.length > 0; _item = $scene.removed_clothes.pop()>>
<<wearItem _item true>>
<</for>>
<<wearItem _item true>>
<<set $scene.dress = true>>
<<if $scene.jacket != "">>
<<wearItem $scene.jacket true>>
<</if>>
<<if $scene.tie != "">>
<<wearItem $scene.tie true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Feeling bad for disappointing the distracting cutie in front of you, you tell <<=setup.getNpcName('npc_technician', 'first')>> that you'd like to stop.<br>
<br>
"@@.npc_technician;Stop? Oh, I'm so sorry! What did I do, I didn't mean to—@@"<br>
<br>
<<if $scene.dress>>
As the two of you get dressed, you re-assure her
<<else>>
You re-assure her
<</if>>
that it's fine, but there's no denying that the moment has been a bit spoiled. After a somewhat awkward goodbye, you head home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600>>]
</div>/*#
#desc: rpg_warlock announces her surgery
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'technician_roleplay_1'>>
<<set _nextDate = setup.setNextDate($now, 7, 19, 0)>>
<<addTaskById 'technician_roleplay_surgery' _nextDate>>
<<set $npc_rpg_warlock.flags.bottom_surgery = true>>
<<set $scene.preGameEvent = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You've all sat down and are about to figure out what to play for the evening when you notice that <<=setup.getNpcName("npc_rpg_warlock","first")>> is shifting around looking excited about something.<br>
<br>
You can tell the rest of the group has noticed as well and <<=setup.getNpcName("npc_rpg_dude","first")>> turns to <<his npc_rpg_dude>> girlfriend with a grin. "@@.npc_rpg_dude;Oh, just go ahead and tell them already!@@"<br>
<br>
Smiling, she rises to her feet and unzips her tight pants to reveal a sleek, shiny, feminine chastity belt. <<if setup.checkItemTypeWorn("cage") && !setup.isCage() && !$player.body_ref.penis>> It looks even more form-fitting than what you're wearing, to the point you wonder how she's managed to even fit underneath it...<</if>><br>
<br>
Everyone stares at her reveal but it is <<=setup.getNpcName("npc_technician","first")>> that breaks the silence, speaking with a measure of awe. "@@.npc_technician;You did it?@@"<br>
<br>
"@@.npc_rpg_warlock;Yup!@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> states, beaming as she raps her knuckles against the hard front of the chastity device. "@@.npc_rpg_warlock;Still need to heal up a bit from the procedure but locked up under here is my very own brand-new cunny!@@"<br>
<br>
A deluge of congratulatory words bounce back and forth before things settle down and she zips back up. "@@.npc_rpg_warlock;Anyway, just wanted to let my best friends know about things and ask if, well... according to the doctor I'll be safe "for use" by next session. Apparently there were some complications and, well, better safe, right? Don't suppose you'd like to help try out my new hole?@@"<br>
<br>
"@@.npc_maid;Of course!@@" <<=setup.getNpcName("npc_maid","first")>> replies, seemingly speaking for the group.<br>
<br>
"@@.npc_technician;Yeah, but <<=setup.getNpcName("npc_maid","first")>> goes last — don't want to split you open — if she leads off the rest of us won't feel a thing!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> snorts as the rest of the group laughs at the reference to her impressive dimensions.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> makes a show of re-arranging her papers. "@@.npc_technician;Well, once again, congratulations on finally doing it — I know you've been planning on it for a while and we're all just so, so happy for you. For now, well... it's time for game, though I imagine we're all looking forward to next week!@@"<br>
<br>
[<<moveTo "event_rpg_root" 'Continue.' 60>>]
</div>/*#
#desc: technician calls you because you failed to show up for the rpg session
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<deleteTask 'technician_roleplay_surgery'>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_surgery' _nextDate>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings. It's <<=setup.getNpcName('npc_technician', 'first')>>!<br>
<br>
"@@.npc_technician;Hey, so I guess you're running late? You can just go ahead and head home. It seems that <<=setup.getNpcName("npc_rpg_warlock","first")>> isn't quite healed up and ready and, well... I was so excited for her celebratory party that I forgot to really plan out a proper game! We'll try again next week, see you then!@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: rpg_warlock reveals her new cunt
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.vagina && $npc_technician.flags.celebrate_vag < 1>>
<<set _nextDate = setup.setNextDate($now, 7, 19, 0)>>
<<addTaskById 'technician_roleplay_surgery' _nextDate>>
<<set $scene.preGameEvent = true>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.vagina && $npc_technician.flags.celebrate_vag < 1>>
You arrive just in time to hear <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> explain that "@@.npc_rpg_warlock;So, unfortunately things are healing a bit slowly and while the doctor said it's probably safe, well... I don't want to take any risks with my new cunny so I'm going to have to stay locked up and delay things for another week.@@"<br>
<br>
Everyone expresses their condolences, though you notice <<=setup.getNpcName('npc_technician', 'first')>> is glancing your way with a curious expression.<br>
<br>
"@@.npc_technician;Say, <<=$player.first_name>>, could I borrow you for a moment? Got a private question for you...@@"<br>
<br>
[<<moveTo "event_rpg_your_surgery_2" 'Follow her and see what she wants to talk about.' 300>>]
<<else>>
The rest of the group arrayed around the table <<=setup.getNpcName("npc_rpg_warlock","first")>> and her <<boy npc_rpg_dude>>friend are the last to arrive, striding through the door to applause.<br>
<br>
Beaming, <<=setup.getNpcName("npc_rpg_warlock","first")>> takes a bow and then sheds her coat, handing it to <<=setup.getNpcName("npc_rpg_dude","first")>> as <<he npc_rpg_dude>> bows like a servant.<br>
<br>
"@@.npc_rpg_warlock;The hour has come! <<=setup.getNpcName("npc_rpg_dude","first")>> did a test run last night to make sure there were no issues and now...@@" Removing her pants she stands akimbo as <<=setup.getNpcName("npc_rpg_dude","first")>> kneels down to unlock and remove the belt and with it a rear dildo that had been apparently locked in. "@@.npc_rpg_warlock;Behold! This fully armed, and operational, battle station!@@" Her cunt does look quite gorgeous, perfectly matched to her frame, soft folds looking inviting as they glisten with her excitement.<br>
<br>
There is a brief round of applause as <<=setup.getNpcName("npc_rpg_warlock","first")>> enjoys the spotlight before she turns to <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_rpg_warlock;So, since it is your house... would you like to do the honours?@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<=setup.getNpcName("npc_technician","first")>> glances at you as if asking permission.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
<<printThought "Hmm, she's gonna need to be out of her cage for this...">><br>
<br>
[<<moveTo "event_rpg_surgery_sex_2" "Let her out on parole for some fun." 60>>]<br>
<<else>>
[<<moveTo "event_rpg_surgery_sex_2" "Nod, this is going to be hot, and fun!" 60>>]<br>
<</if>>
[<<moveTo "event_rpg_surgery_sex_abort" "Shake your head, you'd rather not watch her fuck another woman." 60>>]
<<else>>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;'Twould be my honour!@@"<br>
<br>
[<<moveTo "event_rpg_surgery_sex_2" "Let's do this!" 60>>]<br>
[<<moveTo "event_rpg_surgery_sex_abort" "Actually... no, you'd rather not be a part of this." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: rpg_warlock reveals her new cunt
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.locations.bodyshop2 = true>>
<<addNpcTheme 'npc_technician' 'roleplay' 'theme_technician_other_surgery'
0
'theme_technician_rpg_warlock_transition'
false
>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_bodyshop'
0
'event_technician_theme_bodyshop_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_bodyshop'
0
'event_psychiatrist_theme_bodyshop_1'
true
>>
<<include "addRPGSessionTask">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Somewhat awkwardly you congratulate <<=setup.getNpcName("npc_rpg_warlock","first")>> but explain that you aren't really comfortable with this.<br>
<br>
"@@.npc_rpg_warlock;That's alright,@@" she says politely, though you get the distinct feeling that she's raring to go and, if you're not going to be a part of it, you should get out of the way.<br>
<br>
<<if $npc_technician.relationship.relationship_stage >= 1>>
Catching your expression <<=setup.getNpcName("npc_technician", "first")>> breaks the bad news. "@@.npc_technician;Yeah, uh, I think I'm going to have to bow out as well...@@"<br>
<br>
The mood turns a bit blue at this juncture but <<=setup.getNpcName("npc_barista","nickname")>> quickly rights the ship. "@@.npc_barista;Come on, we can, like, use my place!@@"<br>
<br>
The rest of the group bundling off you awkwardly say goodbye to <<=setup.getNpcName("npc_technician", "first")>> as well, feeling guilty for what you just asked of her. She's trying not to show her disappointment, but you get the sense that sticking around to remind her of what she's missing out on would be a bit rude.
<<else>>
"@@.npc_technician;Yeah, don't want you doing anything you aren't comfortable with but... well, I think this is going to take the place of game for tonight so... see ya next week?@@"<br>
<</if>>
<br><br>
[<<moveTo "room_student_quarter" "Leave." 180>>]
</div>/*#
#desc: npc_technician enters npc_rpg_warlock
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
<<=setup.getNpcName("npc_technician", "first")>> removes her skirt and glances at you before gesturing at her straining caged self. <<=setup.getNpcName("npc_maid", "first")>> chuckles at her friends predicament as you walk over and unlock your girlfriend, her big, glorious <<getWordPenis false>> springing free with ecstatic joy.<br>
<br>
<</if>>
With a grin on her face <<=setup.getNpcName("npc_technician", "first")>> steps towards her friend, <<=setup.getNpcName("npc_rpg_warlock","first")>> adopting an expression of mock intimidation as she hungrily eyes the hard lady lance.<br>
<br>
"@@.npc_rpg_warlock;Oh my, do you think it will fit?@@"<br>
<br>
"@@.npc_maid;It had better!@@" <<=setup.getNpcName("npc_maid", "first")>> notes, looking on, "@@.npc_maid;Because I want a piece of that too... and I'll be a bit disappointed if I have to settle for your ass. Don't get me wrong, I love your ass, but I've been there before and today I want to finish the trifecta!@@"<br>
<br>
Whatever retort <<=setup.getNpcName("npc_rpg_warlock","first")>> had in mind is replaced by an eyes-rolling-back moan as <<=setup.getNpcName("npc_technician", "first")>> slides into her. "@@.npc_rpg_warlock;Yesyesyesyesyes, oh fuck that's good@@" she stutters as <<=setup.getNpcName("npc_technician", "first")>> plunges into her. With a lunge <<=setup.getNpcName("npc_rpg_warlock","first")>> wraps her arms around <<=setup.getNpcName("npc_technician", "first")>>, pulling <<if $npc_technician.relationship.relationship_stage >= 1>>your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","formal")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>><<else>>her friend<</if>> all the way in as she shudders.<br>
<br>
"@@.npc_rpg_warlock;Fuck, I just came... oh goddess, and you aren't even thrusting yet...@@"<br>
<br>
<<=setup.getNpcName("npc_technician", "first")>> holds still for several seconds before softly asking "@@.npc_technician;You alright?@@"<br>
<br>
Biting her lip <<=setup.getNpcName("npc_rpg_warlock","first")>> nods rapidly. "@@.npc_rpg_warlock;Yeah, just, wow, intense... um, maybe little thrusts? Oh fuck that's good, yes, keep, keep doing that!@@"<br>
<br>
<<=setup.getNpcName("npc_technician", "first")>> continues a slow, gentle pace as <<=setup.getNpcName("npc_rpg_warlock","first")>> moans and shudders. You look around to see <<=setup.getNpcName("npc_barista", "first")>> four fingers deep into her own cunt, catching your gaze with a look of confusion. "@@.npc_barista;What? This is like... really fucking hot and it's, like, not my turn yet.@@"<br>
<br>
"@@.npc_rpg_warlock;Turns, right,@@" <<=setup.getNpcName("npc_rpg_warlock","first")>> seems to be having trouble focusing as you get the feeling she had a plan for this whole thing that is becoming VERY hard for her to focus on now that she's mid-coitus.<br>
<br>
"@@.npc_rpg_warlock;<<=setup.getNpcName("npc_rpg_dude","first")>>, dear? I'm going to need you to fuck <<=setup.getNpcName("npc_barista", "first")>>, she's going to, like, go crazy otherwise. <<=$player.first_name>>? Make out with <<if $npc_technician.relationship.relationship_stage >= 1>>your girlfriend<<else>><<=setup.getNpcName("npc_maid", "first")>><</if>>, and <<=setup.getNpcName("npc_maid", "first")>>? Get over here and gimme a taste of that big summer sausage...@@"<br>
<br>
[<<moveTo "event_rpg_surgery_sex_3" "You heard the lady!" 600>>]
</div>/*#
#desc: npc_technician enters npc_rpg_warlock
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista", "first")>> is the first to leap into action, bending over the couch in line with <<=setup.getNpcName("npc_rpg_warlock","first")>> and wiggling her butt in anticipation — the plug stuffed in her rear hole still clearly visible.<br>
<br>
Continuing her gentle thrusting throughout <<=setup.getNpcName("npc_technician", "first")>> pulls you in for a strawberry kiss the moment you're in range, your lips locking together to the sound of <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> dick-munching moan.<br>
<br>
It feels like the temperature in the room has jumped five degrees as the various debaucheries echo and harmonise but it isn't long before <<=setup.getNpcName("npc_technician", "first")>> breaks your kiss, gasping as she explains "@@.npc_technician;I'm REALLY close to cumming, I'm sorry but you're so fucking tight...@@"<br>
<br>
Popping <<=ps(setup.getNpcName("npc_maid", "first"))>> dick out of her mouth even as she keeps rubbing it against her face. <<=setup.getNpcName("npc_rpg_warlock", "first")>> pants her reply. "@@.npc_rpg_warlock;Do it! Batter blast my new cunt, make me drip with joy! Cum, cum, cum, cum, cum cuuuuuuuum!@@"<br>
<br>
The pace momentarily quickens until the aftershocks of their dual orgasm fades and <<=setup.getNpcName("npc_technician", "first")>> staggers back.<br>
<br>
Like a woman possessed <<=setup.getNpcName("npc_rpg_warlock","first")>> locks eyes with you. "@@.npc_rpg_warlock;You, NOW.@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if !$player.virgin.penis>>
[@@.link_locked;As much as you might like to lose your penile virginity... this situation seems a bit high-stakes.@@]<br>
<<elseif !$player.virgin.top_fem>>
[@@.link_locked;As much as you might like to fuck a beautiful woman for the first time... this situation seems a bit high-stakes.@@]<br>
<<elseif !$player.virgin.top_male && !$npc_rpg_dude.fem>>
[@@.link_locked;You have a weird sixth sense that you and <<=setup.getNpcName("npc_rpg_dude","first")>> might end up engaging in the course of an orgy... and that's a bit too high-stakes for your first time topping a dude.@@]<br>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if $npc_technician.relationship.keyholder>>
[<<moveTo "event_rpg_surgery_sex_4" 'Have <<=setup.getNpcName("npc_technician", "first")>> unlock you so you can fuck <<=setup.getNpcName("npc_rpg_warlock","first")>>.' 600 "<<set $scene.oral=false>>">>]<br>
<<elseif setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_rpg_surgery_sex_4" "Unlock yourself and fuck her." 600 "<<set $scene.oral=false>>">>]<br>
<<else>>
[@@.link_locked;You cannot remove your chastity device.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_rpg_surgery_sex_4" "Fuck her." 600 "<<set $scene.oral=false>>">>]<br>
<</if>>
<</if>>
<<else>>
[@@.link_locked;You lack the equipment to fuck her yourself, and her frenzied expression says she has not the patience for you to spend time tracking down a strap-on.@@]<br>
<</if>>
[<<moveTo "event_rpg_surgery_sex_4" "Eat her out." 600 "<<set $scene.oral=true>>">>]
</div>/*#
#desc: you sex npc_rpg_warlock
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.oral>>
<<applyExperience 'cum' 8 'normal' $EXPOSED>>
<<else>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<include "removeCage_retractSissyomatic">>
<<set $scene.removeCage= true>>
<</if>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.oral>>
You drop to your knees, lips wrapping around <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> engorged clit as she moans, both hands grabbing your hair as she grinds against you, your mouth filled with the cream-pie combination of her feminine flavour and that of <<if $npc_technician.relationship.relationship_stage >= 1>>your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>><<else>><<=ps(setup.getNpcName("npc_technician", "first"))>> girl-<</if>>cum.<br>
<br>
"@@.npc_rpg_warlock;Oh fuck, that's good,@@" she starts before <<=ps(setup.getNpcName("npc_maid","first"))>> <<getWordPenis false>> makes its way back between her lips and mangles any further comment.<br>
<br>
Bucking her hips and gushing with joy <<=setup.getNpcName("npc_rpg_warlock","first")>> is definitely loving your licking and you feel the urge to up the ante with a finger, then two, then three as you contemplate the probability that <<=setup.getNpcName("npc_maid","first")>> is liable to be next...<br>
<br>
You hear a garbled moan as <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> hips buck and she gushes all over your face with a massive orgasm. "@@.npc_rpg_dude;Holy shit, did you make her squirt?@@" <<=setup.getNpcName("npc_rpg_dude","first")>> asks "@@.npc_rpg_dude;You have to show me how to do that!@@" <<He npc_rpg_dude>> adds as <<he npc_rpg_dude>> continues to thrust away inside <<his npc_rpg_dude>> bouncing bimbo partner.<br>
<br>
"@@.npc_barista;Oooo! I wanna squirt!@@" <<=setup.getNpcName("npc_barista","first")>> replies enthusiastically, "@@.npc_barista;Make me squirt make me- oh, sorry, <<=setup.getNpcName("npc_rpg_warlock","first")>>, I know this is your gang-bang but, like... I got excited.@@"<br>
<br>
"@@.npc_rpg_warlock;It's fine,@@" distractedly replies a few seconds later, still catching her breath.
<<else>>
<<if $scene.removeCage>>
<<if $npc_technician.relationship.keyholder>>
<<=setup.getNpcName("npc_technician","first")>> swoops in to free your <<getWordMyPenis>> and
<<else>>
Almost fumbling the key you let your chastity device drop to the floor as
<</if>>
<<else>>
You're already hard when you step between her legs and
<</if>>
<<=setup.getNpcName("npc_rpg_warlock","first")>> stares at it with pure lust. "@@.npc_rpg_warlock;In me. Now.@@" She whispers in a husky voice.<br>
<br>
You don't need a second invitation, plunging down the path blazed by <<if $npc_technician.relationship.relationship_stage >= 1>>your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>><<else>>the tech wizard<</if>>.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
You may be far more petite than <<=setup.getNpcName("npc_technician","first")>> but <<=setup.getNpcName("npc_rpg_warlock","first")>> is clearly loving it nonetheless.
<<case 2 3>>
You may smaller than <<=setup.getNpcName("npc_technician","first")>> but <<=setup.getNpcName("npc_rpg_warlock","first")>> is clearly loving it nonetheless.
<<case 4 5>>
<<=setup.getNpcName("npc_rpg_warlock","first")>> seems just as tight for you as she was for <<=setup.getNpcName("npc_technician","first")>>, and is loving it just as much.
<<case 6>>
<<=setup.getNpcName("npc_rpg_warlock","first")>> moans and stretches as she accepts your slightly larger <<getWordMyPenis>> into her wet, tight hole.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
"@@.npc_rpg_warlock;Yes, harder!@@" She cries out — each orgasm seeming to make her escalate further as she clenches around you and enthusiastically slurps on the massive <<getWordPenis false>> next to her face.<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> is tight and cum-slick and wonderful and you feel yourself rapidly approaching the same point of no return that had <<=setup.getNpcName("npc_technician","first")>> gasping. Seemingly sensing your forthcoming climax <<=setup.getNpcName("npc_rpg_warlock","first")>> moans encouragement in between slurping schlong. "@@.npc_rpg_warlock;Do it, cum, fill me with your <<if $fetish.sissy>>sissy <</if>>cream!@@"<br>
<br>
Her words, and frantically enthusiastic expression, are enough to push you over the edge and you plunge as deep as you can, adding your brew to <<=ps(setup.getNpcName("npc_technician","first"))>> earlier offering.<br>
<br>
You try to catch your breath as she clenches down and you are almost surprised how much force it takes you to pull out of her desperately clenching pussy.
<</if>>
Going cross-eyed, <<=setup.getNpcName("npc_rpg_warlock","first")>> looks up at <<=ps(setup.getNpcName("npc_maid","first"))>> <<getWordPenis false>> she nods. "@@.npc_rpg_warlock;Now, give me the Destroyer now, I'm ready!@@"<br>
<br>
[<<moveTo "event_rpg_surgery_sex_5" "Get out of the path of the Destroyer." 600>>]
</div>/*#
#desc: npc_maid sexes npc_rpg_warlock
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_rpg_warlock","first")>> bites her lip in anticipation as <<=setup.getNpcName("npc_maid","first")>> brings her cudgel into position. "@@.npc_maid;You ready?@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> nods quickly, trying to slow her breaths and focus on relaxing.<br>
<br>
One hand on her friends thigh <<=setup.getNpcName("npc_maid","first")>> lines up and presses forward, <<=setup.getNpcName("npc_rpg_warlock","first")>> shuddering as she spreads to accommodate the thick dong.<br>
<br>
"@@.npc_maid;Need me to stop?@@" <<=setup.getNpcName("npc_maid","first")>> asks, fingering <<=setup.getNpcName("npc_rpg_warlock","first")>> as she pauses in place, sending a ripple thorough <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> body.<br>
<br>
Breaths coming fast and shallow <<=setup.getNpcName("npc_rpg_warlock","first")>> shakes her head. "@@.npc_rpg_warlock;Keep going, yes, yes...@@" she moans as <<=setup.getNpcName("npc_maid","first")>> slides deeper, centimetre after centimetre of hot, wet <<getWordPenis false>> penetrating her as she does her face twitches and she does her best to hold still.<br>
<br>
<<=ps(setup.getNpcName("npc_maid","first"))>> hips meet <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> and the nigh overwhelmed girl shudders. Slightly off balance <<=setup.getNpcName("npc_maid","first")>> falls forward, catching herself before rocking her hips as <<=setup.getNpcName("npc_rpg_warlock","first")>> reaches up and hugs her, pressing her face into the crook of <<=ps(setup.getNpcName("npc_maid","first"))>> neck as she moans with each gentle thrust.<br>
<br>
There's a whispered exchange that you are not close enough to hear and then <<=setup.getNpcName("npc_maid","first")>> stands up, lifting her koala-gripped partner who settles just a little bit deeper onto the <<getWordPenis false>> now thrusting up into her.<br>
<br>
Clinging tight and breathless <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> voice is soft, but tinged with determination as she takes command. "@@.npc_rpg_warlock;<<=setup.getNpcName("npc_rpg_dude","first")>>? I'm ready.@@"<br>
<br>
"@@.npc_rpg_dude;Are you sure? I know we planned this but you look really full and—@@"<br>
<br>
"@@.npc_rpg_warlock;I said fuck my ass, slave!@@" She gasp-shouts at <<him npc_rpg_dude>>, her eyes ablaze with lust.<br>
<br>
[<<moveTo "event_rpg_surgery_sex_6" "Continue." 600>>]
</div>/*#
#desc: npc_rpg_dude double teams npc_rpg_warlock
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_rpg_warlock","first")>> leans forward and <<=setup.getNpcName("npc_maid","first")>> helpfully spreads her cheeks as <<=setup.getNpcName("npc_rpg_dude","first")>> steps into position and angles <<himself npc_rpg_dude>> up into her waiting rear.<br>
<br>
Her cunt spread by <<=ps(setup.getNpcName("npc_maid","first"))>> massive dong it's obviously a tight fit as <<=setup.getNpcName("npc_rpg_warlock","first")>> squeezes her eyes shut and gasps.<br>
<br>
"@@.npc_rpg_warlock;So full...@@" she whispers when <<hes npc_rpg_dude>> all the way in before carefully, slowly rocking between the two dongs filling her and shuddering in pleasure.<br>
<br>
"@@.npc_rpg_warlock;Fuck yes...@@" She moans, surprisingly starting to move a little faster as she ascends to a fresh threshold of overwhelmed pleasure.<br>
<br>
<<if !$scene.oral>>
Despite your recent climax you start twitching, incredibly turned on by the sight before you only to be momentarily distracted by some motion to your right.
<</if>>
You look to the side where <<=setup.getNpcName("npc_barista","first")>> is watching while fingering herself and sucking on <<=ps(setup.getNpcName("npc_technician","first"))>> hard <<getWordPenis false>>. "@@.npc_barista;What? I'm fluffing!@@" She explains, her voice muffled by a refusal to remove the <<getWordPenis false>> from between her lips.<br>
<br>
Her attention somehow drawn away from her mid-air double-impalement <<=setup.getNpcName("npc_rpg_warlock","first")>> looks over with crazy eyes.<br>
<br>
<<if $scene.oral>>
"@@.npc_rpg_warlock;<<=setup.getNpcName("npc_technician","first")>> — get over here and fuck my <<boy npc_rpg_dude>>friend and <<=setup.getNpcName("npc_barista","first")>>? There's a strap-on in my bag, put it on and do <<=setup.getNpcName("npc_maid","first")>> — I want to be the keystone of a double-double drilling. And <<=$player.first_name>>?@@" She adds when you realise that there appears no spot for you in this 5-way of debauchery "@@.npc_rpg_warlock;Get over here and kiss me you fool!@@"
<<else>>
"@@.npc_rpg_warlock;You—@@" She states, pointing at <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_rpg_warlock;Fuck <<=setup.getNpcName("npc_maid","first")>>, and you—@@" she continues, shifting to direct her trembling hand in your direction. "@@.npc_rpg_warlock;Fuck my <<boy npc_rpg_dude>>friend. I want to be the keystone of a double-double drilling. Now!@@" She shout-moans when the two of you blink in surprise, sending you into motion to obey her direction.<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> looks momentarily forlorn as she seems left out only for <<=setup.getNpcName("npc_rpg_warlock","first")>> to lock eyes with her and inject a husky dominant undertone into her voice. "@@.npc_rpg_warlock;Get over here and kiss me, you slut.@@"<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> grins, rushing around the room with her skirt bouncing to get into position.
<</if>>
<br><br>
[<<moveTo "event_rpg_surgery_sex_7" "Fulfill her wishes." 600>>]
</div>/*#
#desc: 6-way with npc_rpg_warlock
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.oral>>
<<=setup.getNpcName("npc_barista","nickname")>> eyes light up with glee when she uncovers the "strap-on" in question to be a "strapless" with a built-in vibrator and inflatable plug to help "lock" everything in place. Stuffing it gleefully into her two holes she gives the inflation bulb several squeezes and cranks the vibrations high, her artificial dong blurring as it wiggles back and forth.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> wastes no time in getting behind <<=setup.getNpcName("npc_maid","first")>>, flipping up her fellow maid's skirt and plunging up and in with an enthusiastic "@@.npc_barista;Yay!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_barista","nickname"))>> enthusiasm threatens to unbalance the beast with... well, now 4 backs, though only six feet on the floor but <<=setup.getNpcName("npc_technician","first")>> buttresses the other side, her "well-fluffed" <<getWordPenis false>> plunging into <<=setup.getNpcName("npc_rpg_dude","first")>> from behind to bring "balance" to the equation.<br>
<br>
You stare in awe for a moment at the thrusting, fucking mass before <<=setup.getNpcName("npc_rpg_warlock","first")>> pulls you in, her lips pressing against yours with desperate hunger, gasping and moaning into your mouth as you share a multi-way hug with <<=setup.getNpcName("npc_rpg_warlock","first")>> always at the centre of attention.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> flashes a grin at <<=setup.getNpcName("npc_maid","first")>> before getting into position behind as you hurry to take your own place. <<=setup.getNpcName("npc_rpg_dude","first")>> reaches back with one hand to help guide you in as the standing orgy sways precariously back and forth until <<=setup.getNpcName("npc_barista","first")>> swoops in from the side, her arms wrapping around to hug all five of you at once as <<=setup.getNpcName("npc_rpg_warlock","first")>> grabs her hair and they kiss passionately.<br>
<br>
All six of you are a panting, thrusting, sweaty mess as you each do your part to fuck <<=setup.getNpcName("npc_rpg_warlock","first")>> either directly or by proxy in a heart-racing conflux of lust.
<</if>>
A shared multi-orgasm builds and builds and builds... and then comes crashing down as the frenetic pace halts in a moment frozen in time before everyone cries out in shared pleasure.<br>
<br>
[<<moveTo "event_rpg_surgery_sex_8" "Collapse." 600>>]
</div>/*#
#desc: npc_rpg_warlock gang-bang afterplay
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $npc_rpg_warlock.flags.celebration = true>>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'theme_technician_barista_gangbang')>>
<<set $scene.baristaGangbang = _themeId != -1 && $npc_technician.themes.rpg[_themeId].done && $npc_barista.stage == 3>>
<<if $scene.baristaGangbang>>
<<if $npc_technician.relationship.done_her>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks.technician_roleplay_1.finished>>
<<deleteTask 'technician_roleplay_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks.technician_roleplay_punish_1.finished>>
<<deleteTask 'technician_roleplay_punish_1'>>
<</if>>
<<set $scene.puntCollar = $currentTasks.hasOwnProperty('technician_collar_her_ceremony') && !$currentTasks.technician_collar_her_ceremony.finished>>
<<if $scene.puntCollar>>
<<postponeTask 'technician_collar_her_ceremony' 7>>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0)>>
<<addTaskById 'rpg_session_gangbang' _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Overwhelmed by the shared orgasm you collapse, somehow all managing to land on the couch without squashing anyone, a sweaty nest of arms and bodies pressed together as you kiss and snuggle and catch your breath until you've slid down to the floor in a united cuddle puddle.<br>
<br>
You find yourself in <<if $npc_technician.relationship.relationship_stage >= 1>>your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=ps(setup.getNpcName("npc_technician","title"))>><<case 'neutral'>>girlfriend's<<case 'sub'>>slave's<</switch>><<else>><<=ps(setup.getNpcName("npc_technician","first"))>><</if>> arms, staring across at <<=setup.getNpcName("npc_rpg_warlock","first")>>, her arms wrapped around her <<boy npc_rpg_dude>>friend as the rest of the group clusters around.<br>
<br>
With a blissed-out smile on her face <<=setup.getNpcName("npc_rpg_warlock","first")>> is the first to speak, her voice cracking slightly, heavy with gratitude and exhaustion. "@@.npc_rpg_warlock;Thank you. that was... that was better than I was even hoping. I'm so glad I have such good friends as you all to share this moment with...@@"<br>
<br>
Her words kick off a flurry of thanks and congratulations as everyone says how much they enjoyed it, and how happy they are that she was able to fulfil a dream.<br>
<br>
Things die down as thirst starts to set in and you eventually de-tangle yourselves to get drinks<<if $npc_technician.relationship.her_caged>>, re-cage your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>slave<</switch>>,<</if>> and figure out whose clothing ended up where.<br>
<br>
<<if $scene.baristaGangbang>>
<<=setup.getNpcName("npc_technician","first")>> holds you behind for a moment as she makes eyes towards <<=setup.getNpcName("npc_barista","nickname")>> and whispers
<<if $npc_technician.relationship.done_her>>
"@@.npc_technician;maybe you could do me later tonight? Then I think everything would be set for <<=ps(setup.getNpcName("npc_barista","nickname"))>> pleasure overload...@@"
<<else>>
"@@.npc_technician;next week<<if $scene.puntCollar>> — oh, but that means the collaring ceremony gets pushed back — helping a friend in distress takes priority<</if>>.@@"<br>
<br>
You nod in understanding, looks like <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> surgery celebration was the last piece <<=setup.getNpcName("npc_technician","first")>> needed to arrange the orgy...<br>
<br>
<</if>>
<</if>>
Naturally gravitating to your "assigned" chairs for gaming discussion turns to how <<=setup.getNpcName("npc_rpg_warlock","first")>> made the final decision; apparently she had been saving up for a while and this was a bit of an early "surprise" for her friends.<br>
<br>
[<<moveTo "event_rpg_surgery_sex_9" "Continue." 600>>]
</div>/*#
#desc: npc_rpg_warlock explains surgery
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.locations.bodyshop2 = true>>
<<addNpcTheme 'npc_technician' 'roleplay' 'theme_technician_other_surgery'
0
'theme_technician_rpg_warlock_transition'
false
>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_bodyshop'
0
'event_technician_theme_bodyshop_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_bodyshop'
0
'event_psychiatrist_theme_bodyshop_1'
true
>>
<<include "addRPGSessionTask">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_rpg_warlock;Yeah, so you know that weird shop a couple alleys over? Well it's not just a creepy machine anymore, they're actually open! So yeah, anyway, I decided to check them out — the owners are really friendly and... well, they offered to do the whole thing for a fraction of the cost I was expecting. I did my research first, of course but, the surgeon actually has a pretty good name for himself, published some papers on new techniques meant to enhance sensitivity and ease recovery time and, well... as you can see, they do fantastic work!@@"<br>
<br>
More congratulations follow as you slot this fact away for later. Tired and satisfied from the earlier orgy the group decides to go their separate ways before the hang-out turns into a slumber party.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: torei campaign: intro
#status: RELEASED 0.9.2.0
#ignore_spell: tpk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You say that you'd be interested in a more sci-fi campaign and <<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;Oh I have JUST the adventure for you! I've been working on this one for a while, I call it a Shiny Search: A Tale of Torei.@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> snickers in amusement. "@@.npc_maid;Torei? Really, after what happened the last time? Watch out ladies, the killer DM is zipping up her hood for one last job!@@"<br>
<br>
"@@.npc_technician;Hey, a Total Party Enslavement is different from a TPK in ways that I just do not presently have time to articulate. That said, in light of the issues last time I've made a set of pre-made characters to ensure the party has sufficient expertise for the challenges ahead also, while I will not be avoiding the danger inherent to the setting I WILL let you restart any failed sessions the next week so you can make another run at things. Here, <<=$player.first_name>>, why don't you pick first?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> hands you a stack of character sheets, looks like you'll be playing the crew of a small starship, you just need to pick your role.<br>
<br>
<<include "toreiCharacterSelect">>
</div>/*#
#desc: torei campaign: intro repeat campaign
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You ask if the group would like to give the laminate planet of Torei another shot?
<<if State.hasPlayed("event_torei_campaign_2_6")>>
"@@.npc_barista;Yay, latex fetish sex world!@@" <<=setup.getNpcName("npc_barista","nickname")>> states with glee.<br>
<br>
"@@.npc_maid;That's laminate...@@" <<=setup.getNpcName("npc_maid","first")>> corrects.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> shrugs, "@@.npc_barista;whatever, so long as I can be all shiny and enslaved... mmm, rainbow implants...@@"
<<else>>
"@@.npc_maid;You gonna make it to the end this time?@@" <<=setup.getNpcName("npc_maid","first")>> gently teases.<br>
<br>
"@@.npc_rpg_warlock;Oh, ignore her, we'd love to give it another shot, but player comfort is paramount and if you decide it's too much, well, that's fine too but until then... laminate awaits!@@"<br>
<br>
The rest of the group nods and smiles in assent as attention turns to the Dungeon Mistress.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> smiles and digs out a stack of character sheets for you to pick your role...<br>
<br>
<<include "toreiCharacterSelect">>
</div>[<<moveTo "event_torei_campaign_1_2_torei" "Wait, what's Torei?" 0>>]<br>
[<<moveTo "event_torei_campaign_1_2" "The Captain." 0 "<<set $scene.character='governess'>>">>]<br>
[<<moveTo "event_torei_campaign_1_2" "The Engineer." 0 "<<set $scene.character='male'>>">>]<br>
<<if $fetish.pet_play>>
<<if State.hasPlayed("event_torei_campaign_2_6")>>
[<<moveTo "event_torei_campaign_1_2" "The Pony Pilot." 0 "<<set $scene.character='pony'>>">>]<br>
[<<moveTo "event_torei_campaign_1_2" "The Pilot... but without the ponygirl." 0 "<<set $scene.character='chauffeuse'>>">>]<br>
<<else>>
[<<moveTo "event_torei_campaign_1_2" "The Pilot." 0 "<<set $scene.character='pony'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_torei_campaign_1_2" "The Pilot." 0 "<<set $scene.character='chauffeuse'>>">>]<br>
<</if>>
<<if $fetish.milking>>
[<<moveTo "event_torei_campaign_1_2" "The Survivor." 0 "<<set $scene.character='breastess'>>">>]<br>
<<if State.hasPlayed("event_torei_campaign_2_6")>>
[<<moveTo "event_torei_campaign_1_2" "The Bodyguard." 0 "<<set $scene.character='bodyguard'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_torei_campaign_1_2" "The Bodyguard." 0 "<<set $scene.character='bodyguard'>>">>]<br>
<</if>>
[<<moveTo "event_torei_campaign_1_2" "The Local." 0 "<<set $scene.character='maid'>>">>]<br>
[<<moveTo "event_torei_campaign_1_abort" "Actually... this doesn't sound like what you want to play." $scene.stepLength>>]<br>/*#
#desc: torei campaign: what is torei
#status: RELEASED 0.9.2.0
#ignore_spell: ringdoms,aeon
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You ask what Torei is and there's a flurry of answers, with <<=setup.getNpcName("npc_barista","nickname")>> gushing that "@@.npc_barista;it's, like... the bestest, shiniest place ever!@@" Amidst other opinions bouncing back and forth before <<=setup.getNpcName("npc_technician","first")>> wrangles things back under control and passes off to <<=setup.getNpcName("npc_rpg_warlock","first")>> to explain.<br>
<br>
"@@.npc_rpg_warlock;So, Torei is a science fiction bdsm planet focused on latex and female submission. Think, like... Aeon Flux meets Gor with a splash of Blade Runner. High tech, but very regimented and fragmented with different ringdoms having different rules. In general, however, women way outnumber men, lots of caste and hierarchical restrictions, including slavery literally and figuratively being common, and most clothing is made of laminate... which is basically sci-fi latex.@@"<br>
<br>
"@@.npc_technician;Well said. So... yeah, it's a pretty harsh and kinky campaign "world" where sexual enslavement could be just around the corner. For the campaign you'll be mostly playing offworlder's where have been sent to Torei on a mission, so any out-of-character lack of knowledge would play into your in-character experience.@@"<br>
<br>
<<include "toreiCharacterSelect">>
</div>/*#
#desc: torei campaign: abort torei
#status: RELEASED 0.9.2.0
#ignore_spell: rp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You decide that Torei is maybe a bit more than you want to RP in.<br>
<br>
"@@.npc_technician;Sure, sure, let's just do a one-shot instead, right?@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_x_0' "Play a random one-shot." 3600 "<<set $scene.sessionId = 'random'>>">>]
</div>/*#
#desc: torei campaign: choose character
#status: RELEASED 0.9.2.0
#ignore_spell: breastess,pc,ringdom
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $scene.character>>
<<case "governess">>
You look at the character sheet for the ship's captain, your standard swashbuckling, confident leader sort, as ready to fast-talk their way out of a situation as blasting their way out of trouble.<br>
<br>
There is an addendum stating that, on Torei, you will be posing as a Governess, a more senior female slave trusted with acting as a dominant to other slaves, as well as assuming responsibilities such as managing a household.
<<case "male">>
You look at the character sheet for the ship's engineer, a boisterous grease-monkey able to keep any hunk of junk in the air with little more than scrap and a spanner.<br>
<br>
There is an addendum stating that, as the lone male PC, you will be accorded some natural degree of authority due to the rarity of men, and the overall patriarchal organisation of the world.
<<case "pony" "chauffeuse">>
You look at the character sheet for the ship's pilot, a tall, keen-eyed woman able to stay levelheaded and focused even in the middle of an asteroid belt or a landing gone bad.<br>
<br>
There is an addendum stating that, on Torei you will be providing transportation to the rest of the crew in a different fashion: by
<<if $scene.character == "pony">>
being harnessed as a rubber pony.
<<else>>
acting as a chauffeuse-slave for the more senior members of the party.
<</if>>
<<case "breastess" "bodyguard">>
You look at the character ship for the ship's "muscle." Hailing from a high gravity world, you're somehow even stronger than your muscle-bound appearance would suggest. You may lack the subtlety of some of your compatriots, but you're an expert in combat, and survival, always ready to haul them out of a tight situation... sometimes literally, as more than once you've tossed your captain over your back and hauled them to safety.<br>
<br>
There is an addendum stating that, on Torei
<<if $scene.character == "breastess">>
you will be applying your survival skills in a new direction, disguising yourself as a "breastess" with a pair of large, milk-producing breasts capable of providing sustenance for the group, though you're unlikely to need to lean too heavily on that capability so long as you avoid leaving the ringdom to venture into the harsh wastelands.
<<else>>
you will be doing as you normally do: playing bodyguard while posing as a bounty huntress. Though you are well comfortable in a scrap, the restrictions on weapons for visitors means that you'll be relying on your wits and fists, rather than your trusty blaster.
<</if>>
<<case "maid">>
You look at the character sheet for the "maid" — the only character native to Torei, you will join the group partway in as their local guide. A born and raised daughter of Torei, you have known nothing in your life save laminate and service. Unfortunately, the noble house you once worked for has fallen on hard times, leaving you on the street and seeking your fortunes by hiring yourself out as a guide to offworlders. You are quick to correct them on violating local laws and customs... and if they fail to heed your warnings, well... the Ministry of Truants is always ready to pay out for tips concerning lawbreakers.
<<default>>
ERROR: unexpected scene.character <<=$scene.character>>
<</switch>>
<br><br>
[<<moveTo 'event_torei_campaign_1_3' "Confirm your selection and get to the game." 900>>]<br>
<<include "toreiCharacterSelect">>
</div>/*#
#desc: torei campaign: given mission
#status: RELEASED 0.9.2.0
#ignore_spell: freewombs,planetside
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.cur_campaign_id = "torei">>
<<set $npc_technician.flags.rpg_campaign.character_t = $scene.character>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You confirm your selection, as does the rest of the group, and you sit back for <<=setup.getNpcName("npc_technician","first")>> to give the opening narration.<br>
<br>
"@@.npc_technician;It's tough being independent traders this far out, but you and your crew have built a reputation for quick, reliable delivery, even when that delivery requires busting a blockade or daring feats of stellar navigation. This reputation has brought you your latest job, and not too soon as your ship is sorely in need of more repairs than you have credits for. When an old contact reached out on behalf of a secretive benefactor, well... the offer was too good to refuse, but you'll be earning every credit of the substantial prize at the end of the job, because your task is to find a wayward scion of some unfathomably rich family who has gotten "lost" on a trip to the mysterious planet of Torei...@@"<br>
<br>
"@@.npc_maid;Lost? More like enslaved,@@" <<=setup.getNpcName("npc_maid","first")>> jokes. "@@.npc_maid;Remember our last game here, freewombs don't tend to last long, and the authorities planetside love nothing more than trumping up charges and turning an offworlder into yet another faceless, laminate-clad slave.@@"<br>
<br>
"@@.npc_barista;Mmmm, sounds fun!@@" <<=setup.getNpcName("npc_barista","nickname")>> replies with her trademark hyper-horniness.<br>
<br>
"@@.npc_technician;As I was saying,@@" <<=setup.getNpcName("npc_technician","first")>> continues. "@@.npc_technician;Your task is to get down to the planet's surface, find the missing scion, and then use the "Way Up" space elevator to return to orbit, and your ship. Landing on Torei is strictly regulated, so you'll be starting things off on your approach to one of the orbital stations that provides a port for trade and customs before you head planetside. You've been instructed to dock in bay 94. <<if $npc_technician.flags.rpg_campaign.character_t == "pony" || $npc_technician.flags.rpg_campaign.character_t == "chauffeuse">> <<=$player.first_name>><<else>><<=setup.getNpcName("npc_rpg_dude","first")>><</if>>? You're playing the pilot, give me a space transports operation roll for navigating the final approach and docking...@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.character_t == "pony" || $npc_technician.flags.rpg_campaign.character_t>>
[<<moveTo 'event_torei_campaign_1_4' "Roll!" $scene.stepLength>>]
<<else>>
[<<moveTo 'event_torei_campaign_1_4' "Continue." $scene.stepLength>>]
<</if>>
</div>/*#
#desc: torei campaign: customs
#status: RELEASED 0.9.2.0
#ignore_spell: kalgan,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.character_t != "maid">>
The docking roll is all but trivial and after docking, the party is split up to go through customs individually. This proves to be quite the invasive process, as you are stripped naked and wait your turn for one of the laminate-clad, masked truant officers to interrogate you as to the nature of your visit.<br>
<br>
<</if>>
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
You've been through more than your share of interrogations in your time, though there is certainly something to be said by the somewhat alien feeling of seeing your own reflection in the polished mask of your interrogator. Covered head to toe in a uniform of Torean laminate their femininity is on display from their full breasts to the steep heels that would point to their responsibilities being clerical, even as the height lends an intimidating edge to their whole appearance.<br>
<br>
"@@.generic_female1;Your background check indicates a... colourful past,@@" the word seems to have some additional sting, given the woman is covered in jet-black, polished laminate from head to toe. You try not to wince at how thick the stack of papers are, your contact said not to lie or omit on the custom's form... but seeing it all like this is a real reminder of your "interesting" life. "@@.generic_female1;In particular I wish to ask about your activities on Kalgan, some of your... associates have come to our attention. Are you familiar with an organisation known as the Liberty Society?@@"<br>
<br>
You take a moment to think, you remember something about the organisation that advocates against slavery on behalf of the women of Torei...<br>
<br>
[<<moveTo 'event_torei_campaign_1_5' "That was in your youth, you've changed your mind since then." $scene.stepLength>>]<br>
<<if $scene.fail_0>>
[@@.link_locked;Perhaps try to get through at least one encounter without wiping...@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_4_fail' "Deny any familiarity with such things." 1800>>]
<</if>>
<<case "male">> /% default: barista %/
"@@.generic_female1;Honoured Sir,@@" the officer states, showing near instinctual deference to your gender. "@@.generic_female1;Your custom declaration indicate that you are visiting for pleasure. Do you intend to do any business while you are here? Buying or selling slaves, perhaps?@@"<br>
<br>
You think carefully, you're more accustomed to an engine-bay than a conference room, and the fact that your interrogator is nigh faceless, covered head to toe in polished laminate has you a bit unnerved as they ride a line between human, robot, and alien that seems to amplify the discomfort of each.<br>
<br>
[<<moveTo 'event_torei_campaign_1_5' "Pleasure only." $scene.stepLength>>]<br>
<<if $scene.fail_0>>
[@@.link_locked;Perhaps try to get through at least one encounter without wiping...@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_4_fail' "You are always on the look-out for business opportunities." 1800>>]
<</if>>
<<case "pony" "chauffeuse">> /% default: dude %/
While you can't see her eyes through the truant officer's anonymising mask, you can feel her staring directly at you, even as your naked body is reflected in the polished laminate that covers her head to toe.<br>
<br>
"@@.generic_female1;You are the pilot, yes? You docked in bay ninety-four, rather than the instructed ninety-three. Explain.@@"<br>
<br>
You blink, is this some sort of test? You are quite certain that you docked in the bay you were instructed to.<br>
<br>
[<<moveTo 'event_torei_campaign_1_5' "Apologise and play it off as a harmless error." $scene.stepLength>>]<br>
<<if $scene.fail_0>>
[@@.link_locked;Perhaps try to get through at least one encounter without wiping...@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_4_fail' "Insist that you were instructed to dock in bay 94." 1800>>]
<</if>>
<<case "breastess" "bodyguard">>
You've finished removing your clothes when you hesitate, several cycles back you had a backup weapon cybernetically installed for emergencies. It's top of the line stuff, meant to be totally undetectable, and could really save your bacon in a pinch... but the customs forms were VERY particular about not being allowed to bring weapons with you.<br>
<br>
[<<moveTo 'event_torei_campaign_1_5' "Surreptitiously remove your implant and leave it with your other things." $scene.stepLength>>]<br>
<<if $scene.fail_0>>
[@@.link_locked;Perhaps try to get through at least one encounter without wiping...@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_4_fail' "Keep your implant." 1800>>]
<</if>>
<<case "maid">> /% default: maid %/
You won't be joining the group until later, so you just sit back and listen as the rest of the party navigates customs, first going through the typical docking and inspection rigmarole, before getting "equipped" for their trip down to the surface. Cover stories are recited, and bribes exchanged as the party is stripped naked and sent through a Torei wardrobe device; stepping out fully clad in skin-tight laminate and finally ready to arrive on-world... though a trip to the Ministry of Improvements is still in store before their mission truly starts.<br>
<br>
[<<moveTo 'event_torei_campaign_1_5' "Keep watching." $scene.stepLength>>]
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$scene.character>>
<</switch>>
</div>/*#
#desc: torei campaign: visa revoked
#status: RELEASED 0.9.2.0
#ignore_spell: breastess,freewomb,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fail_0 = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.torei[$npc_technician.flags.rpg_campaign.character_t][0] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
You hurriedly deny any association or knowledge of such a thing as a "Liberty Society," only for the Truant Officer to turn over a series of photographs of you with old associates... each one labeled as a "known seditionist." <br>
<br>
With each revelation a cuff snaps around one of your limbs, binding you to your chair and finished off with the Truant Officer rising to silence you with a gag.<br>
<br>
"@@.generic_female1;While this Liberty Society is, of course, no real threat... it is not policy to grant known seditionists unfettered access to our world.@@" You stare up as the Truant Officer signals, the door opening for another of her colleagues to wheel you, still helplessly bound to your chair, away. "@@.generic_female1;I wish you, and your crewmates, good fortune in your integration to Torean society, your sale should cover the cost of your transport, and your new owners will ensure you never need worry your pretty heads with thoughts of Liberty, or freedom of any sort.@@"
<<case "male">> /% default: barista %/
You reply that you are always open to business opportunities and the room falls silent. You have an odd thought as you wonder what, given the ubiquity of laminate over fabric materials, the equivalent of "hearing a pin drop" would be on Torei in the brief moment before the Truant Officers rises.<br>
<br>
"@@.generic_female1;I am sorry, Honoured Sir, but the terms of your visa application were quite specific, I am afraid I must deny permission for you to visit our wonderful planet. Per the terms of the agreement, you may choose one of your servants to leave behind, their sale into slavery will go towards covering the expense of background checks and the like. Should you prove unable to make this decision yourself, it will be made for you. After this has been attended to you will be escorted back to your ship where you will depart this sector...@@"
<<case "pony" "chauffeuse">> /% default: dude %/
You're too good of a pilot to accept such obvious gaslighting and you double down, demanding that the comm records be produced to verify your story.<br>
<br>
Halfway through your objection there is a click, restraints sprouting from your chair and binding you in place. Momentarily shocked you open your mouth to question what is happening, only for the Truant Officer to force a gag between your lips, your panicked expression reflected in the polished front shield of her mask.<br>
<br>
"@@.generic_female1;Typical offworld freewomb, never knowing their place. Your compatriots have shown similar insubordinate tendencies. Your visa is being revised from tourist, to work. Perhaps after a few years of indentured service on the planet you will gain an appreciation for how things are done here on Torei, and how much better it is for a woman to adhere to the ways of obedience and submission...@@"
<<case "breastess" "bodyguard">>
Given what you've heard about Torei... and, even moreso, the perils of being female on the planet, you decide a secret weapon could be handy.<br>
<br>
Everything seems to be going smoothly as you clear the interview and continuing on to get "dressed" for your trip to the planet. Stepping into the wardrobe device proves to be your final step as a free woman. Of course, you don't realise that in the moment, dutifully submitting to the initial laminate catsuit and only noticing something is wrong after it is too late, when thick bands of laminate have formed an armbinder, a large ball of the substance forced into your mouth to gag your screams.<br>
<br>
Where you walked into the wardrobe device of your own free will, you hobble out in response to the tug of a leash. You glance over to see a row of similarly bound laminate-bound individuals that you realise are the rest of the party. "@@.generic_female1;Did you think to bring a weapon to our wonderful planet?@@" A truant officer taunts you, "@@.generic_female1;well, we know just how to deal with trouble-makers such as yourself. I suppose you could look at the bright side, you are getting a free trip planet-side... <<if $npc_technician.flags.rpg_campaign.character_t=="breastess">>in time, you may even come to appreciate your new life as a breastess<<else>>I would say you might eventually appreciate your new life... but you are slated to become a stock slave, so that seems unlikely<</if>>.@@"
<<case "maid">> /% default: maid %/
not applicable
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
<br><br>
"@@.npc_technician;Well that was a bit of a speed-run...@@" <<=setup.getNpcName("npc_technician","first")>> states after explaining each of your characters' enslavements. "@@.npc_technician;I promised that this would be a tough campaign... but I didn't think you'd fail out without even reaching the planet's surface! But I said I'd go "easier" on y'all than last time, so, let's rewind and try customs again, right?@@"<br>
<br>
[<<moveTo 'event_torei_campaign_1_4' "Try again." $scene.stepLength>>]<br>
[<<moveTo "event_torei_campaign_1_abort" "Actually... you've had enough of Torei for one evening." $scene.stepLength>>]
</div>/*#
#desc: torei campaign: visit MOI
#status: RELEASED 0.9.2.0
#ignore_spell: stimhibitor,stimhibitors,breastess,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !State.hasPlayed("event_torei_campaign_1_6")>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;The party re-convenes after you have each made your way through customs, now all dressed in basic Torean laminate catsuits for the trip to the surface. The party's final stop before properly beginning the search for the wayward scion is at the Torean Ministry of Improvement. Arrangements have already been made for some of your number to get a few of Torei's legendary "enhancements" to help you better fit in with the planetary society, and thus complete your mission with minimal suspicion. Of course, as with everything on Torei, things are never as straightforward, or safe, as they seem...@@"<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
You're waiting for the rest of the party to have work done at the Ministry of Improvement when a nurse walks up to you, performing a reverence in respect before asking if there is anything the Ministry of Improvements could do for you?<br>
<br>
You ponder your mission, your cover story now is that your are the Governess managing the slaves that make up the rest of your party, and you remember your client advising you to take extreme care while on-planet. Besides, it's not like you have the funding, you're depending on this job to get you and your crew back in the black...<br>
<br>
<<if $scene.fail_1>>
[@@.link_locked;Patience would seem the order of the day.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_5_fail' "Take the opportunity to snag some upgrades for yourself." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_1_6' "Just wait for the rest of the party to finish." $scene.stepLength>>]<br>
<<case "male">> /% default: barista %/
You are waiting as the Ministry of Improvements "takes care" of some of your fellow crew to help you better blend in on your visit to Torei. A latex-clad nurse approaches you, performing a traditional Torei reverence in respect before asking if you would like a full set of stimhibitors installed in your <<if $fetish.pet_play>>pony<<else>>chauffeuse<</if>> slave?<br>
<br>
You share a glance with <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> character. You recall that such implants are common for slaves on Torei...<br>
<br>
<<if $scene.fail_1>>
[@@.link_locked;Best to follow local standards.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_5_fail' "Decline the stimhibitor." $scene.stepLength>>]
<</if>>
[<<moveTo 'event_torei_campaign_1_6' "Agree to have a stimhibitor installed in your friend." $scene.stepLength>>]<br>
<<case "pony" "chauffeuse">> /% default: dude %/
While you wait for some work to be done on <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> character at the Ministry of Improvements a nurse appears and asks <<=ps(setup.getNpcName("npc_barista","nickname"))>> if they would like you to get a set of stimhibitor implants to allow you to "better serve." <br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> grins and nods eagerly, and the nurse motions for you to follow...<br>
<br>
<<if $scene.fail_1>>
[@@.link_locked;Looks like a stimhibitor is considered part of your job.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_5_fail' "That sounds like a bad, and distracting, idea." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_1_6' "Obediently accept the stimhibitor implant." $scene.stepLength>>]<br>
<<case "breastess">>
You're the main purpose the party is stopping by at the Ministry of Improvements, as your require breast implants and some additional medical "assistance" to be the milk-producing breastess that is your part to play in your undercover mission.<br>
<br>
A nurse explains the procedure, recommending that, given your frame, you opt for one of the larger breasts on offer.<br>
<br>
<<if $scene.fail_1>>
[@@.link_locked;Here on Torei breasts are best, apparently.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_5_fail' "Actually, breasts that large seem like a bad idea." $scene.stepLength>>]
<</if>>
[<<moveTo 'event_torei_campaign_1_6' "Acquiesce to the specified procedures." $scene.stepLength>>]<br>
<<case "bodyguard">>
You're the main purpose the party is stopping by at the Ministry of Improvements, as your muscular frame and flat chest was deemed by your contact as being a potential distraction from a more standard Torean feminine ideal, their advice being to, since you refused a suggestion that might have left you weaker, to augment your body with a large pair of breasts to "balance out" your profile.<br>
<br>
A nurse leads you into an exam room and reviews the planned procedure, noting that, with your frame, you could easily accommodate quite massive breasts, indeed...<br>
<br>
<<if $scene.fail_1>>
[@@.link_locked;Here on Torei breasts are best, apparently.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_5_fail' "Actually, breasts that large seem like a bad idea." $scene.stepLength>>]
<</if>>
[<<moveTo 'event_torei_campaign_1_6' "Acquiesce to the specified procedures." $scene.stepLength>>]<br>
<<case "maid">> /% default: maid %/
You listen as the party drops in on the Ministry of Improvement for some surgical upgrades to reinforce their cover story and help them better blend in on Torei.<br>
<br>
"@@.npc_technician;Alright, <<=$player.first_name>>, you're up. You spot the group, though they are dressed in laminate, to a native of Torei their offworlder nature is plain as day. Perhaps with you as a guide they might be able to avoid any of the myriad mistakes that can see one's freedom revoked in an instant...@@"<br>
<br>
<<if $scene.fail_1>>
[@@.link_locked;The party definitely needs your help...@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_1_5_fail' "Do not approach the party." $scene.stepLength>>]
<</if>>
[<<moveTo 'event_torei_campaign_1_6' "Offer your services to the party." $scene.stepLength>>]<br>
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
</div>/*#
#desc: torei campaign: arrive on world
#status: RELEASED 0.9.2.0
#ignore_spell: stimhibitors,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fail_1 = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.torei[$npc_technician.flags.rpg_campaign.character_t][1] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
You've long heard rumors about the impressive body-modification and cybernetics available on Torei, and you decide to take the opportunity for some upgrades.<br>
<br>
You wake to feel something off... a feeling confirmed when a leering latex-clad scientist walks in to your room.<br>
<br>
"@@.generic_female1;Hello, Miss... well, it doesn't matter. It seems you signed up for some procedures that you could not afford, so I decided to invoke the alternate payment option in the medical waiver and add a few other upgrades. They're called rainbow implants, and they give whoever controls them complete power over your, well...@@" She taps a remote and you breasts and vagina burst with pleasure... and then an even more shock of pain. The scientist smiles. "@@.generic_female1;They are quite useful for training slaves... and that is what you are, now, by the way. Sold while you were asleep to cover the cost of your procedures... and then when a bit of background digging showed that you aren't even who you said you were? Well, I must say, even by offworlder standards, quite foolish. No matter, we needed to purchase a new orderly, and you are just the ticket...@@"
<<case "male">> /% default: barista %/
You decline the offer and the nurse frowns, bowing obediently before walking away... only for a trio of far more stern officers of the Ministry of Truancy to appear.<br>
<br>
They explain that they are here in response to your suspicious behaviour and you quickly learn that the fake identities you had planned to use on-world are... not as strong as advertised. "@@.generic_female1;We do not take kindly to such meddling on our planet. Out of respect to your gender we will be sending you back on the way up and you may leave Torei space... your associates, however will be kept and sold into slavery to cover the expense incurred by your intrusion, and as a punitive lest you seek to return to Torei with similarly deceptive motivations...@@"
<<case "pony" "chauffeuse">> /% default: dude %/
You try to refuse but the nurse turns back to you, a glare of annoyance in her eyes as she snaps her fingers to summon a trio of orderlies. "@@.generic_female1;Do not worry, sir, we can attend to this disobedient <<if $fetish.pet_play>>filly<<else>>slave<</if>> at no additional charge.@@"<br>
<br>
Your struggles, and even <<=ps(setup.getNpcName("npc_barista","nickname"))>> objections, fall on deaf ears as you are swiftly strapped securely to a gurney and rolled away. "Attending to this disobedience" turns out to be a full suite of stimhibitors... followed by a round of "training" that leaves you mentally broken and subservient... your significant character debuffs leading to the party being captured and enslaved not much further into the mission.
<<case "breastess">>
You refuse the mammary-enhancing procedure... which proves quite the mistake a few days into the mission, when your inability to produce sufficient sustenance for the group as you wander through the wastelands leaves you weakened, and easily captured and enslaved by roving bandits.
<<case "bodyguard">>
You refuse the breast-enhancing procedure... which proves quite the mistake as your "suspicious" profile leads to you being separated from the rest of the party during an important negotiation... a negotiation that goes south, quickly, with both you and the party defeated separately and swiftly sold off into slavery.
<<case "maid">> /% default: maid %/
You watch as the party walks out of the MOI, but keep your distance, considering to play "wallflower" on the group as they rapidly get entangled in the complex social requirements of Torei. It isn't long before they're fleeing the Ministry of Truants, and even less time after that before they're all enslaved.<br>
<br>
"@@.npc_maid;You know... you were supposed to be our guide on the ground, right?@@" <<=setup.getNpcName("npc_maid","first")>> states with a shake of her head.
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
<br><br>
"@@.npc_technician;Alright, I said this campaign was going to be tough, but I also promised some second-chance leniency so... let's rewind to planet-fall and see if you can't make it a bit further...@@" <<=setup.getNpcName("npc_technician","first")>> states as she flips backwards through her notes.<br>
<br>
[<<moveTo 'event_torei_campaign_1_5' "Try again." $scene.stepLength>>]<br>
[<<moveTo "event_torei_campaign_1_abort" "Actually... you've had enough of Torei for one evening." $scene.stepLength>>]
</div>/*#
#desc: torei campaign: streets of torei
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.first>>
<<include "addRPGSessionTask">>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
After your stint at the Ministry of Improvement, and hooking up with your local contact, the party is ready to actually start the mission proper.<br>
<br>
<<if $scene.first>>
"@@.npc_technician;Alright, I think that's going to be a good place to call it, tonight... you've established your identities and are ready to track down that missing scion... next week! Same slick time, same shiny channel!@@"<br>
<br>
The group starts their usual packing up.<br>
<br>
[<<moveTo 'event_rpg_post_mux' "Continue." 300>>]
<<else>>
"@@.npc_technician;Alright, you've successfully established your surface identities and are ready to track down that missing scion. You step out onto the streets of Torei...@@"<br>
<br>
[<<moveTo 'event_torei_campaign_2_1' "Continue..." $scene.stepLength "<<set $scene.first=false>>">>]<br>
<</if>>
</div>/*#
#desc: torei campaign: refresher + street
#status: RELEASED 0.9.2.0
#ignore_spell: naram,freewombs,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
"@@.npc_technician;Alright...@@" <<=setup.getNpcName("npc_technician","first")>> says with a grin, "@@.npc_technician;last session you managed to make it to the surface of Torei with your cover stories intact, and with a local guide, to boot. Of course... now the REAL mission starts, what are you going to do?@@"
<<else>>
"@@.npc_technician;Alright, so you're on the streets of Torei with a local guide and your cover stories intact. Of course... now the REAL mission starts, what are you going to do?@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> spins out a description of the streets of Torei, its latex-clad inhabitants seeing the party as one of their own... at least for now. After some unsuccessful poking around the group comes to the decision that splitting up will be better, the group able to cover more ground, and each of you better apply your character's unique skills, if you split up...<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
Posing as a governess give you access to Torean high society, not too dissimilar to your target, and you wonder how they could have disappeared into Torean society...<br>
<br>
<<if $scene.fail_2>>
[@@.link_locked;You already found Naram-Sin Finishing Academy to be a dead end.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_1_fail' "Search for a local university or such." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_2' "Check out the local watering hole." $scene.stepLength>>]
<<case "male">> /% default: barista %/
Being a male on Torei can open doors... but also closes many others. As you consider things you see what looks like another male, an offworlder, not even dressed in laminate! As if that was not strange enough, he seems to be handing out pamphlets...<br>
<br>
<<if $scene.fail_2>>
[@@.link_locked;You already tried talking to the Liberty Society.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_1_fail' "Approach the offworlder." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_2' "Check out the local watering hole." $scene.stepLength>>]
<<case "pony">> /% default: dude %/
A ponygirl on Torei can all but fall into the background, which means one of your fellow mounts could have seen your target without anyone else even remembering they were there.<br>
<br>
<<if $scene.fail_2>>
[@@.link_locked;You already tried interrogating the pony stables.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_1_fail' "Find a pony stables and see who is willing to talk." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_2' "Check out the local watering hole." $scene.stepLength>>]
<<case "chauffeuse">> /% default: dude %/
Unattended slaves and freewombs on Torei often use something call the "lead" system to get around after curfew... you wonder if there might be records of your target using such...<br>
<br>
<<if $scene.fail_2>>
[@@.link_locked;You already tried tracking down lead records.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_1_fail' "Investigate the lead." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_2' "Check out the local watering hole." $scene.stepLength>>]
<<case "breastess" "bodyguard">>
While most people on Torei stick to the safety of the cities, there are vast wild portions of the planet, and you wonder if your missing scion might have gone there...<br>
<br>
<<if $scene.fail_2>>
[@@.link_locked;You already tried investigating the wastelands.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_1_fail' "Try finding out more about the wastelands." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_2' "Check out the local watering hole." $scene.stepLength>>]
<<case "maid">> /% default: maid %/
As the guide, the party is really relying on you to make a breakthrough. You recall once reading about wealthy youths seeking out religious orders to escape their responsibilities... could that have been the missing scion's purpose in coming to Torei? Or was it something more mundane?<br>
<br>
<<if $scene.fail_2>>
[@@.link_locked;You already tried talking to the Order of the Primrose.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_1_fail' "Go find a Latex Nun." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_2' "Check out the local watering hole." $scene.stepLength>>]
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
</div>/*#
#desc: torei campaign: local entanglement
#status: RELEASED 0.9.2.0
#ignore_spell: freewomb,bladerunner,ringdoms,freewombs,naram,aeon,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fail_2 = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.torei[$npc_technician.flags.rpg_campaign.character_t][2] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
Mindful of your target's high-society birth, you go looking for such a Torean institution catering to same, finding your way to the Naram-Sin Finishing Academy.<br>
<br>
The Academy is as impressive as it is strict... which proves to nearly be your undoing as you make a quick exit before suspicion turns to something worse and one of the instructors sees through your disguise. Despite that, you were able to get a peek at the Academy records and find no indication that your target attended... perhaps not surprising, given that your brief experience showed just what a harsh approach the Academy takes at training up its slaves.<br>
<br>
Back on the outside, and without the "steady hand" of their Captain, the rest of the party is gung-ho for a time-sensitive lead, and you are soon being dragged along as the party races off into the wastelands...
<<case "male">> /% default: barista %/
You approach the offworlder, the man expressing initial suspicion before you reveal that you are not a native of Torei... and that you disagree with the oppressive and misogynistic regime of the planet.<br>
<br>
"@@.generic_male1;Oh, it is so good to hear from another man who has not been poisoned by Torean lies. My name is Michael, and I represent a society of others like yourself who seek to exposed the depravity of Torei and, perhaps, show a way to a more enlightened future.@@"<br>
<br>
Sensing potential, you explain your own quest, pointing out that, should you be successful, the wealthy family who hired you could be quite the valuable patrons for the Liberty Society.<br>
<br>
"@@.generic_male1;That would be simply wonderful... unfortunately I do not know of the subject of which you speak... which seems indicative on its own. Surely one of such refined upbringing would either pay their way into a place of comfort in Torean society. That I can think of no likely examples of such, nor of freewombs captured by those misguided gender-traitors at the Ministry of Truancy... well, it seems likely that your target may have fled into the wilderness. Dangerous, yes... but perhaps less so than the constant peril faced by a woman in the city...@@"<br>
<br>
With none of the rest of the party having any better leads, you strike out into the wilderness... a venture that proves quite disastrous...
<<case "pony">> /% default: dude %/
As good of an idea as it might have been in theory, the pony stables prove far from fruitful, your fellow beasts of burden gagged and too "well trained" to talk, to say nothing of the suspicious riders who you barely end up evading when they misinterpret you as a ponygirl partially free of her bonds.<br>
<br>
Back with the rest of the party you end up harnessed to another task — following a tenuous lead out into the wastelands that cover much of the planet.
<<case "chauffeuse">> /% default: dude %/
Careful not to get caught up in it yourself, you follow the lead system to its central hub, spinning a tale of being tasked with tracking down a "missing" slave in an attempt to get access to records of travelers. A series of spectacular rolls sees this attempt actually successful, well, insofar as it involves seeing the records, the records themselves being utterly bereft of the target you seek.<br>
<br>
Having formed something of a bond of camaraderie with the slave tasked with monitoring the lead system, they point out the rarity of any lone offworld female managing to fully avoid using the lead system for such a period of time, and suggest that, perhaps, your target has left the city entirely?<br>
<br>
Nobody else has any better leads, and soon the party is mounting an expedition into the wilderness between ringdoms... an expedition that proves to be little more than a wild-goose chase of calamity.
<<case "breastess" "bodyguard">>
It takes some doing, and ignoring the advice of quite a number of NPCs, to make arrangements to travel into the wastelands, but, with the rest of the party failing to come back with any more promising leads the group is soon gung-ho for trading latex <<if $fetish.bladerunner2>>bladerunner<<else>>Aeon Flux<</if>> for latex Mad Max.<br>
<br>
The reality of the Torean wastelands proves farm more harrowing than the (nonexistent) brochures implied, and, <<if $npc_technician.flags.rpg_campaign.character_t == "breastess">>without weapons<<else>>even with the survival benefits provided by your breasts<</if>> you end up nearly captured by raiders and forced to flee the planet, empty-handed.
<<case "maid">> /% default: maid %/
While few can truly rise to the rigours of their ranks, Latex Sisters are not exactly an unusual sight... though finding one who has not submitted to a Vow of Silence is a bit trickier. It takes some doing, but you manage to find a Sister who is willing, and able, to speak with you.<br>
<br>
Tall, beautiful, and covered head to toe in the latex robes her her order, <<=setup.getNpcName("generic_female1","custom", "Sister Euphoria")>> speaks passionately about her order, but is tight-lipped about others of her order. "@@.generic_female1;One of the most fundamental vows we take, along with Service, Femininity, and Bliss, is that of Anonymity. Revealing a Novitatiate's past would be a great betrayal, much less a Sister who had been fully Confirmed and enslaved to our benefactor... still, you speak of an offworlder of much means. One of the other vows we take is that of poverty... I deem it unlikely that such a freewomb, used to power and riches, would be able to abandon such sinful comforts, to sever those deceptive fetters and surrender to the serenity of enslavement and the divine blessing of a collar.@@"<br>
<br>
You thank <<=setup.getNpcName("generic_female1","custom", "Sister Euphoria")>> for her wisdom, her tone making it clear that she is either unwilling, or unable, to speak further in regards to your target.<br>
<br>
Unfortunately, while your investigations came to naught, the rest of the party has gotten into quite the trouble, and by the time you attempt to catch up to the group they have left the city entirely, lead off on a wild-goose chase through the wastelands.
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> sighs. "@@.npc_technician;Figures that y'all would go LITERALLY off the map, despite knowing just how dangerous the Torean wastes are... I guess you DID manage to avoid enslavement, which is certainly an accomplishment. But you fail to find your target, and whatever escape you may or may not make from Torei itself, well... that would be a totally different campaign.@@"<br>
<br>
[<<moveTo 'event_torei_campaign_2_1' "Try again." $scene.stepLength>>]<br>
[<<moveTo "event_torei_campaign_1_abort" "Actually... you've had enough of Torei for one evening." $scene.stepLength>>]
</div>/*#
#desc: torei campaign: visit bar
#status: RELEASED 0.9.2.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
There's a bit of eye-rolling at the cliche of hitting up a bar, but club Lush proves to be just the sort of establishment you need, even if the cost of gaining entrance made a serious dent in your cash reserves.<br>
<br>
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
Club Lush is certainly crowded, and that crowd is quite shiny and slick in their laminate finery... but you've been in and out of bars all over the galaxy, and you know the first stop is the bartender.<br>
<br>
The bartender is dressed in a light blue laminate uniform, a colour you notice spread across several other patrons... no, workers, slaves, in fact, based on the collars they all wear.<br>
<br>
The bartender smiles at you, clearly waiting for your order. Perhaps a drink, and a nice tip, might spark a lead...<br>
<br>
<<if $scene.fail_3>>
[@@.link_locked;You already felt the consequences of Torean booze.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_2_fail' "Order something local." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_3' "Stick to a familiar drink." $scene.stepLength>>]
<<case "male">> /% default: barista %/
As is typical for Torei, you are one of the few men in Club Lush, you notice another fellow pass by a guard, passing on and into what is likely some sort of VIP area...<br>
<br>
<<if $scene.fail_3>>
[@@.link_locked;You already saw what happens when you stick with the party.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_2_fail' "Stick with the rest of the party." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_3' "Check out the VIP area." $scene.stepLength>>]
<<case "pony" "chauffeuse">> /% default: dude %/
Something about the club has your implants buzzing with excitement, as you feel every pulsing beat in your most intimate parts, an intense, almost maddening distraction that tempts you to surrender and let the music... and other things, flow through you...<br>
<br>
<<if $scene.fail_3>>
[@@.link_locked;You already saw what happens if you surrender to the club.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_2_fail' "Stop resisting and embrace the dance..." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_3' "Fight back the need for release." $scene.stepLength>>]
<<case "breastess" "bodyguard">>
Club Lush is crowded, and your presence is noticeably imposing, keeping other club-goers at something of a distance as you keep your eye on the party. <<=setup.getNpcName("npc_maid","first")>>, playing the part of your local guide, suggests that VIP area would be the best odds of having the information you need... <<=setup.getNpcName("npc_barista","nickname")>>, with her male character, could get in with little trouble, but for anyone to accompany would be straining your cash reserves.<br>
<br>
<<if $scene.fail_3>>
[@@.link_locked;You already saw what happened when you let the party go off without you.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_2_fail' 'Insist on accompanying <<=setup.getNpcName("npc_barista","nickname")>> to the VIP area.' $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_3' 'Let <<=setup.getNpcName("npc_barista","nickname")>> investigate the VIP area.' $scene.stepLength>>]
<<case "maid">> /% default: maid %/
You explained to the party that Club Lush is THE place to be, and that, since anyone who is anyone is going to pop in from time to time, it's the best shot you've got at finding someone who knows where your lost scion is.<br>
<br>
Once inside you try to keep the party together but you consider your options, wondering if, given the nature of your target, one of the rich natives, in the VIP area might have the information you seek. Of course a Torean slave, such as yourself, would be all but ignored, but <<=ps(setup.getNpcName("npc_barista","nickname"))>> character, the ship's mechanic... that is to say, a man might open doors that would remain closed to one such as yourself.<br>
<br>
<<if $scene.fail_3>>
[@@.link_locked;You already saw what happens if you got caught in the servant's area.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_2_fail' "Try sneaking through the servants' area." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_3' 'Suggest <<=setup.getNpcName("npc_barista","nickname")>> investigate the VIP area.' $scene.stepLength>>]
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
</div>/*#
#desc: torei campaign: captured
#status: RELEASED 0.9.2.0
#ignore_spell: kaori,nikaido,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fail_3 = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.torei[$npc_technician.flags.rpg_campaign.character_t][3] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
You flash a smile that has made friends and disarmed enemies on half a dozen worlds as you ask the bartender for "@@.pc;the best you've got.@@"<br>
<br>
She smiles and nods dutifully as she pouts out a small shot of something thick, almost slimy. You double the price of the drink with your tip and knock it back, the texture, and lack of familiar alcohol burn strange... and then it hits you.<br>
<br>
You moan and <<=setup.getNpcName("npc_technician","first")>> describes the passionate arousal suddenly coursing through your body... and your failed saving throw to resist further effects.<br>
<br>
All but overwhelmed, you hear a suggestion to find a private room... only for the bar to erupt in pandemonium as Truant Officers raid the facility. Your lust-drunk inebriation draws attention before the party can escape and you are soon rounded up and detained.
<<case "male">> /% default: barista %/
You stick with the group as you try to look for leads in the general club, your search interrupted by sudden sirens as the Ministry of Truancy performs a loud, and indiscriminate, raid in search of an escaped slave.
<<case "pony" "chauffeuse">> /% default: dude %/
Your implants have you desperate for relief, and drawn to the club's dance floor. Writhing passionately to the music you lose track of everything, resisting other party member's attempts to pull you aside and keep a low profile, the distraction of your unbridled needs having you flat-footed and off-guard when an alarm goes off and the Ministry of Truancy raids the club, the laminate-clad officers swiftly rounding up the party along with other ne'er-do-wells
<<case "breastess" "bodyguard">>
Despite it taking most of your remaining funds, you insist on accompanying <<=setup.getNpcName("npc_maid","first")>> into the VIP area.<br>
<br>
From the first glance you can tell that the other VIPs are suspicious, and they remain terse and disinterested through <<=ps(setup.getNpcName("npc_maid","first"))>> low charisma checks. Frustration mounting, you hear a commotion from the main club, the other important people seeming to disappear in a moment leaving you, and the rest of the party, to face off with a raid of Truant Officers alone.
<<case "maid">> /% default: maid %/
You separate from the party to go searching the back rooms of Club Lush. In your investigations you come across a storage room, and inside of it a crate with a busted lock. Curious, you lift the lid to find it empty, the design of the crate telling you that it had recently contained a bound slave... a very tightly bound slave.<br>
<br>
Before you can consider your next move you hear a shout from behind. "@@.generic_female1;Hands up, runaway!@@"<br>
<br>
You turn slowly to find yourself face to face with a Truant officer, as you hear an alarm echoing through the rest of the club, your attempt to explain cut off as you are tackled and gagged by other Truant Officers. Knowing that resistance will only make your situation worse you comply obediently as you are tightly bound and lead back to the main club where the rest of the group has already being retained.
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
<br><br>
Your cover stories fail to stand up to direct scrutiny of the Truant Officers, and their leader, Truant Officer 2nd Class Kaori Nikaido seems to take great delight in adding a "ring of offworlder troublemakers" to the black and red laminate-attired slave who had been the original target of the raid...<br>
<br>
"@@.npc_maid;Now that's what I come to expect from time on Torei.@@"<br>
<br>
"@@.npc_technician;Hey, I warned you this would be a tough mission, now, you wanna try things again, and see if you can avoid the... well I guess fuzz doesn't really seem applicable to the laminate-clad officers of Torei... but you know what I mean.@@"<br>
<br>
[<<moveTo 'event_torei_campaign_2_2' "Try again." $scene.stepLength>>]<br>
[<<moveTo "event_torei_campaign_1_abort" "Actually... you've had enough of Torei for one evening." $scene.stepLength>>]
</div>/*#
#desc: torei campaign: go undercover
#status: RELEASED 0.9.2.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.rpg_campaign.character_t != "male">>
The party waits nervously as <<=setup.getNpcName("npc_barista","nickname")>> plays "face," accepting an audience from a Master Petros where he confronts her concerning her honesty as to your true mission on the planet with the information you seek — a lead on the elusive scion who disappeared shortly after her arrival on planet, last seen entering the household of one of the planet's nobles... a noble house long rumored to have closer than usual ties to one of the polar AIs.<br>
<br>
With a lead finally in hand, and with a recommendation from Master Petros, the party goes even further undercover as an envoy on his behalf, welcomed in to the luxurious estate and granted surprisingly free roam...<br>
<br>
<</if>>
<<if !["male","maid"].includes($npc_technician.flags.rpg_campaign.character_t)>>
The estate is sterile and creepy, even by Torean standards, every slave you meet a fully anonymised latex drone, the almost machine-like creatures mostly ignoring you in their silent obedience.<br>
<br>
<</if>>
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
While you have officially requested an audience with the heads of the family that owns the estate, you have been given no indication of when that will occur, merely guided to a room and instructed to wait... though with no guards or locks to keep you from exploring.<br>
<br>
<<if $scene.fail_4>>
[@@.link_locked;You already witnessed the consequences of complacency.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_3_fail' "Sit tight." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_4' "Lead a search for the erstwhile scion." $scene.stepLength>>]
<<case "male">> /% default: barista %/
You are about to enter the VIP area when a traditionally dressed laminate slave approaches you, dipping submissively to greet you with the Torean curtsy variation known as a reverence and waiting for your permission to speak.<br>
<br>
Mindful of the role you are playing you let her hold for a few moments to establish your authority, and then nod. "@@.generic_female1;Greetings, honoured sir. My Owner, Master Petros has heard of you and wishes to make your acquaintance, if you would come with me?@@"<br>
<br>
<<if $scene.fail_4>>
[@@.link_locked;You already saw what happens when you rejected Master Petros' invitation.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_3_fail' "Decline Master Petros' invitation and continue to the VIP area." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_4' "Accept Mater Petros' invitation." $scene.stepLength>>]
<<case "pony" "chauffeuse">> /% default: dude %/
After some tense, but ultimately uneventful, waiting, <<=setup.getNpcName("npc_rpg_warlock","first")>> declares her intent to go searching the estate for your target.<br>
<br>
<<if $scene.fail_4>>
[@@.link_locked;You already witnessed the consequences of complacency.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_3_fail' "Stay where you are." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_4' "Go with her." $scene.stepLength>>]
<<case "breastess" "bodyguard">>
After some tense, but ultimately uneventful, waiting, <<=setup.getNpcName("npc_rpg_warlock","first")>> declares her intent to go searching the estate for your target.<br>
<br>
<<if $scene.fail_4>>
[@@.link_locked;You already witnessed the consequences of going it alone.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_3_fail' "That sounds dangerous, go in her stead." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_4' "Go with her." $scene.stepLength>>]
<<case "maid">> /% default: maid %/
Even to you, a native of Torei, the estate is a bit creepy, none of the usual hustle and bustle of maid servants that you might be able to blend into as every slave you meet is a fully anonymised, silently obedient, drone. With every time one of the faceless drones all but looks through you you are reminded of the family's rumored connection to the AIs and wonder if some of the drones may actually be Daemons?<br>
<br>
<<if $scene.fail_4>>
[@@.link_locked;You already saw what happens if you don't press forward.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_3_fail' "Suggest the party leaves the estate." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_4' "Recommend searching for the target and getting out fast." $scene.stepLength>>]
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
</div>/*#
#desc: torei campaign: go undercover
#status: RELEASED 0.9.2.0
#ignore_spell: stimhibited,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fail_4 = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.torei[$npc_technician.flags.rpg_campaign.character_t][4] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess" "pony" "chauffeuse">>
You decide to sit tight and wait... a decision that proves far too literally accurate as, shortly after falling asleep for the night, you and the rest of the party find yourselves inescapably encased in vacuum laminate.<br>
<br>
The same drones that welcomed you into the estate wheel you out the back, it would seem this entire process was something of a ruse to get you out of sight as, still tightly restrained, you are shipped off to Master Petros to be enslaved and retrained, pawns in the power games of Torean elites.
<<case "male">> /% default: barista %/
You thank the slave and continue into the VIP area. Unfortunately, you have barely started ingratiating yourself with the elite of Torei when you hear a loud klaxon. Slaves swiftly disappear their important owners out of of the VIP area and you find yourself alone as a raid by the Ministry of Truants soon rounds up you, and the rest of the party, your cover stories crumbling in the face of such direct scrutiny.<br>
<br>
Before you can be processed you spot a man in blue latex seemingly negotiating with the head Truant Officer. His gaze pierces you even through his polished gas mask as he gestures at your party and the Truant Officer nods... looks like you've evaded prison... but on Torei, is that really the worst fate?
<<case "breastess" "bodyguard">>
You strike out on your own to search for the elusive scion... a decision that proves quite disastrous given that your build is for combat, not stealth. In the end it takes a surprising number of drones to bring you down... but bring you down they do as you end up with the rest of the party bound, helpless... and quietly sold into slavery.
<<case "maid">> /% default: maid %/
You're beyond unnerved being this close to the enigmatic hand of the AIs, and you convince the party to leave the estate before the other shoe drops...<br>
<br>
Unfortunately this proves the opposite of a good idea, as the previously unconcerned drones come out of the proverbial woodwork to prevent your departure, the unarmed (and in some cases, already restrained, or stimhibited) party putting up a valiant, but doomed, fight before being taken captive.
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
<br><br>
Purchased by a powerful Torean Master, you and your friends may have been saved from prison or banishment... but are instead FULLY inducted into Torean society, a year of harsh, unforgiving training before you are finally sent back up to orbit, to reclaim your ship, to act as your enigmatic and stern owner's hand reaching out to the wider galaxy...<br>
<br>
[<<moveTo 'event_torei_campaign_2_3' "Try again." $scene.stepLength>>]<br>
[<<moveTo "event_torei_campaign_1_abort" "Actually... you've had enough of Torei for one evening." $scene.stepLength>>]
</div>/*#
#desc: torei campaign: find target + choice
#status: RELEASED 0.9.2.0
#ignore_spell: daemonification,daemoned,stimhibitors
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
After some careful exploration, and a clutch stealth roll, and quietly subduing a pair of final guards, you find your target, the erstwhile scion lounging in a private suite, her pupils glowing an inhuman violet, something about her mix of laminate and steel different from other Torean's you have seen
<<if $npc_technician.flags.rpg_campaign.character_t == "maid">>
as you recognise the alien touch of the AIs... the woman appears to be in a midway stage of full Daemonification.
<<else>>
as <<=setup.getNpcName("npc_maid","first")>> nervously informs the group that the woman appears to be in a midway stage of Daemonification...
<</if>>
<br><br>
The woman tilts her head in greeting. "@@.generic_female1;We have been... waiting for you to arrive, but your coming here is for naught. We have no wish to leave this world. Leave. Tell this body's family that it is no more, for them to send no more interlopers after you.@@"<br>
<br>
Her voice is eerie, tone and rhythm unnatural, feeling like it echoes in your head as much as it sounds in your ears and the group pulls together to decide what to do next.<br>
<br>
"@@.npc_maid;So she's definitely been partially daemoned... which means her will is way less than her own... on the other hand, do we really want to risk being responsible for giving the AIs such a strong foothold off-world?@@"<br>
<br>
Solemn nods circle the table as, after some additional discussion concerning free will, galactic risk, and other things, it is decided to put the decision to a vote.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> casts the first vote in favour. "@@.npc_barista;So, like... her family is big on AI tech, right? Wouldn't they be the most qualified to fix whatever's going on here? I say we finish the mission.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>>
<<if $npc_technician.flags.rpg_campaign.character_t == "governess">>
gruffly gives her thoughts as the group's muscle.
<<if ["pony", "chauffeuse"].includes($npc_technician.flags.rpg_campaign.character_t)>>
"@@.npc_rpg_warlock;One of the first things a soldier needs to understand if they're going to survive, is when to retreat. This seems one of those times.@@"
<<else>>
"@@.npc_rpg_warlock;As a soldier your first duty is to the mission, and leaving someone behind... I say we get her off this damnable rock.@@"
<</if>>
<<else>>
weighs in with the swashbuckling captain's perspective. "@@.npc_rpg_warlock;I've been known to play the tables in my day and you gotta know when to hold 'em, know when to fold 'em. There will be other scores.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_maid","first")>>
<<if $npc_technician.flags.rpg_campaign.character_t == "maid">>
gruffly gives her thoughts as the group's muscle.
<<if ["pony", "chauffeuse"].includes($npc_technician.flags.rpg_campaign.character_t)>>
"@@.npc_maid;One of the first things a soldier needs to understand if they're going to survive, is when to retreat. This seems one of those times.@@"
<<else>>
"@@.npc_maid;As a soldier your first duty is to the mission, and leaving someone behind... I say we get her off this damnable rock.@@"
<</if>>
<<else>>
provides the "local" perspective. "@@.npc_maid;I've seen what the AI's do... I don't think the rest of the galaxy is ready for that.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_rpg_dude","first")>> finishes off with <<his npc_rpg_dude>> thoughts
<<if ["pony", "chauffeuse"].includes($npc_technician.flags.rpg_campaign.character_t)>>
as the group's muscle. "@@.npc_rpg_dude;As a soldier your first duty is to the mission, and leaving someone behind... I say we get her off this damnable rock.@@"
<<else>>
"@@.npc_rpg_dude;I have to concur with <<=setup.getNpcName("npc_barista","nickname")>>. I've been shedding sanity all campaign thanks to these damned stimhibitors, no way is that going to be all for nothing. We should finish the mission and get our reward.@@"
<</if>>
<br><br>
Two and two... all eyes are on you to cast the tie-breaking vote...<br>
<br>
[<<moveTo 'event_torei_campaign_2_5' "Leave the scion on Torei." $scene.stepLength "<<set $scene.rescue=false>>">>]<br>
[<<moveTo 'event_torei_campaign_2_5' "You came here for a reason..." $scene.stepLength "<<set $scene.rescue=true>>">>]
</div>/*#
#desc: torei campaign: escape with target
#status: RELEASED 0.9.2.0
#ignore_spell: daemoned,stimhibited,t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<if $scene.rescue>>
With your deciding vote cast, the party sets into action. Despite her words the scion is quit obedient as you set about binding her for transport, accepting gag and stringent bondage with minimal objection... and at least one orgasm.<br>
<br>
Your prize crated up, now it's just a matter
<<else>>
You side that, even though it means your mission is all but a failure, the risk of taking the partially daemoned scion off-world is just too great. Unfortunately, prize or not, you still have the task
<</if>>
of getting the hell off Torei...<br>
<br>
Strangely, the drones ignore you and your crated cargo as you head for one of the mansion's service exits.
<<if !["pony", "chauffeuse"].includes($npc_technician.flags.rpg_campaign.character_t)>>
<<if $fetish.pet_play>>
After harnessing up <<=setup.getNpcName("npc_rpg_dude","first")>> to
<<else>>
The party finds a cart just large enough
<</if>>
for the group<<if $scene.rescue>> and your cargo<</if>>, <<=setup.getNpcName("npc_rpg_dude","first")>> carefully navigates through the city, taking a circuitous route to throw off tails before ending up at the only path offworld: the way up.<br>
<br>
As you approach the way up you face a final checkpoint staffed by Truancy Officers on high alert.<br>
<br>
<</if>>
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
<<if $scene.fail_5>>
[@@.link_locked;You already saw the consequences of bribing a Truancy Officer.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_5_fail' "Try to bribe your way through." $scene.stepLength>>]<br>
<</if>>
<<if $scene.rescue>>
[<<moveTo 'event_torei_campaign_2_6' "Declare your slave for export." $scene.stepLength>>]
<<else>>
[<<moveTo 'event_torei_campaign_2_6' 'Let <<=setup.getNpcName("npc_barista","nickname")>> handle things.' $scene.stepLength>>]
<</if>>
<<case "male">> /% default: barista %/
<<if $scene.fail_5>>
[@@.link_locked;You already once failed to reach the way up.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_5_fail' "Continue through." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_6' "Name-drop Master Petros." $scene.stepLength>>]
<<case "pony">>
The party harnesses you up to a cart just large enough to carry the group<<if $scene.rescue>> and your cargo<</if>>.<br>
<br>
<<if $scene.fail_5>>
[@@.link_locked;You already saw the consequences of haste.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_5_fail' "Race for the way up." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_6' "Casually trot your way back the way up." $scene.stepLength>>]
<<case "chauffeuse">> /% default: dude %/
The party finds a cart large enough to carry the group<<if $scene.rescue>> and your cargo<</if>>. It's a bit more primitive than what you usually pilot... but you always say you can fly or drive anything...<br>
<br>
<<if $scene.fail_5>>
[@@.link_locked;You already saw the consequences of haste.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_5_fail' "Race to the way up." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_6' "Take a circuitous route to the way up." $scene.stepLength>>]
<<case "breastess" "bodyguard">>
As you approach the way up you come to a final checkpoint, staffed by a stern looking officer from the Ministry of Truancy.<br>
<br>
<<if $scene.fail_5>>
[@@.link_locked;You saw what happens if you start trouble on Torei.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_5_fail' "Mamma says knock you out..." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_6' "Keep your head down and try to roll through." $scene.stepLength>>]
<<case "maid">> /% default: maid %/
As you approach the way up you have a final decision... do you stay back on Torei, your home... or do you try to join the party in leaving the planet?<br>
<br>
<<if $scene.fail_5>>
[@@.link_locked;You already saw what happened when you remained behind.@@]<br>
<<else>>
[<<moveTo 'event_torei_campaign_2_5_fail' "Stay behind." $scene.stepLength>>]<br>
<</if>>
[<<moveTo 'event_torei_campaign_2_6' "See the galaxy." $scene.stepLength>>]
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
</div>/*#
#desc: torei campaign: captured by MoT
#status: RELEASED 0.9.2.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fail_5 = true>>
<<set $npc_technician.flags.rpg_campaign.session_actions.torei[$npc_technician.flags.rpg_campaign.character_t][5] = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
You step off the cart and, on behalf of your owner, attempt to make an "arrangement" with the guard for streamlined passage.<br>
<br>
This proves quite the mistake, as the Truancy Officer not only bristles at your proposal... but immediately calls in backup, the party<<if $scene.rescue>>, and your cargo<</if>> swiftly defeated, detained, and destined for slavery.
<<case "male">> /% default: barista %/
The party attempts to just roll through the checkpoint... but the Ministry of Truants is on high alert, a scan of your vehicle turning up your hidden cargo, the undeclared slave soon landing the rest of you in hot water... or rather, hot laminate bindings as you are marched off to slavery.
<<case "pony" "chauffeuse">> /% default: dude %/
Foolishly, you attempt to sprint past the checkpoint, a futile mistake as <<if $fetish.pet_play>>Ministry-mounted pony-girls<<else>>Ministry slave-catchers<</if>> easily overtake you, the party swiftly apprehended, bound, and set off for "reeducation" and enslavement.
<<case "breastess" "bodyguard">>
You tell the party to wait as you sneak ahead to knock out the guard... only to discover that a Truant Officer's standard issue headpiece, combined with Ministry of Improvement upgrades, renders them QUITE hard-headed. Before you can actually subdue the officer she has gotten off an alert, and soon dozens of Truant Officers are swarming all over the party.
<<case "maid">> /% default: maid %/
You decline the group's offer to accompany them off-world... which proves fortuitous for you as they shortly thereafter run afoul of the Ministry of Truancy.<br>
<br>
You manage to talk your way out of any serious implications when brought in for interrogation over your fraternisation with the soon-to-be-enslaved offworlders... but in the end that just means you're back where you started, a lone Torean woman, trying to scrape by with some shred of freedom and self-respect for as long as you can...
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
<br><br>
"@@.npc_technician;So close to the line!@@" <<=setup.getNpcName("npc_technician","first")>> states as she shakes her head and re-stacks her papers. "@@.npc_technician;Ready to try that again?@@"<br>
<br>
[<<moveTo 'event_torei_campaign_2_5' "Try again." $scene.stepLength>>]<br>
[<<moveTo "event_torei_campaign_1_abort" "Actually... you've had enough of Torei for one evening." $scene.stepLength>>]
</div>/*#
#desc: torei campaign: escape
#status: RELEASED 0.9.2.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('torei_governess')>>
<<case "male">>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('torei_male')>>
<<case "pony">>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('torei_pony')>>
<<case "chauffeuse">>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('torei_chauffeuse')>>
<<case "breastess">>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('torei_breastess')>>
<<case "bodyguard">>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('torei_bodyguard')>>
<<case "maid">>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('torei_maid')>>
<</switch>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.flags.rpg_campaign.character_t>>
<<case "governess">> /% default: warlock %/
As you approach the checkpoint you keep things calm, collected, and casual, informing the Truant Officer that you are on your way up, with a <<if $scene.rescue>>package <</if>>slave for off-world export.<<if $scene.rescue>> <<=setup.getNpcName("npc_maid","first")>>, still playing the part of your guide, performs a submissive reverence in acknowledgement.<</if>><br>
<br>
"@@.generic_female1;Someone must have paid quite the price for that, good! Let more of the galaxy see the perfection that is a Torei trained and improved slave.@@"<br>
<br>
The woman salutes you as you pass, standing tall with planetary pride.
<<case "male">> /% default: barista %/
You approach the checkpoint and address the Truant Officer, explaining that you are on important business before name-dropping Master Petros as you explain that you have a very IMPORTANT cargo, and that a late delivery is, obviously, out of the question.<br>
<br>
Recognition flickers over the officer's face as she quickly salutes, and then delegates an assistant to take you the rest of the way to the way up "@@.generic_female1;so that there are no further delays.@@"
<<case "pony" "chauffeuse" "breastess" "bodyguard">> /% default: dude %/
You approach the checkpoint casually... and the bored Truant Officer all but waves you through, just another <<if $fetish.pet_play>>pony cart<<else>>cart<</if>> making a delivery.
<<case "maid">> /% default: maid %/
You momentarily consider abandoning the party... after all, Torei is your home, and the stories you've heard of the greater galaxy... to say nothing of the disgusting offworlders you've dealt with, with their lack of decorum, their forgotten or sloppy reverences, and their dull, frumpy attire...<br>
<br>
You take a moment to clear your head, no, as bad as some offworlders can be, the ones you're currently with have proven themselves alright... and it's not like you have much future on Torei, just scraping by day to day until you piss off a Truant Officer or desperation forces you to take a collar... no, seeing the galaxy is the adventure you want, and you'll greet it with a laminate smile.
<<default>>
ERROR: unexpected npc_technician.flags.rpg_campaign.character_t <<=$npc_technician.flags.rpg_campaign.character_t>>
<</switch>>
<br><br>
Some delicate negotiations ensue as you get your tickets for the way up, but your client fortunately provided you with enough funding and paperwork to cut through the red tape and soon you are back in orbit... and then aboard your ship, speeding back towards known space<<if $scene.rescue>>, the orgasmic moans of your still-restrained cargo echoing through the hold<</if>>.<br>
<br>
<<if $scene.rescue>>
[<<moveTo 'event_torei_campaign_2_7_rubber_galaxy' "Make your delivery." $scene.stepLength>>]
<<else>>
[<<moveTo 'event_torei_campaign_2_7_empty_handed' "Inform your client of your failure." $scene.stepLength>>]
<</if>>
</div>/*#
#desc: torei campaign: triumph
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.torei[$npc_technician.flags.rpg_campaign.character_t][6] = true>>
<<include "addRPGSessionTask">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Your client is less than happy when you fail to return the target... but they at least buy your lie about the missing scion having met their final fate on the harsh world of Torei.<br>
<br>
Your pay is much less than agreed... barely enough to cover fuel and expenses for the trip, really, but you are hardly in a position to complain, and there's a wide galaxy away from that disturbing laminate planet in which you can seek your fortune... a galaxy that, thanks to you, is safe from the Torean AIs machinations for at least a little longer...<br>
<br>
"@@.npc_technician;Well, well, a campaign on Torei that DIDN'T end in slavery! See, it isn't such a bad setting, right?@@"<br>
<br>
Laughs and grins go around the table as you spend the rest of the evening reminiscing over the campaign before it's time to go.<br>
<br>
"@@.npc_maid;By the by... I saw an outfit at <<printShopName 'mall_sexstore'>> in the mall that reminded me of Torei...@@"<br>
<br>
[<<moveTo 'event_rpg_post_mux' "Continue." 300>>]
</div>/*#
#desc: torei campaign: rubber galaxy ending
#status: RELEASED 0.9.2.0
#ignore_spell: daemoned
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.rpg_campaign.session_actions.torei[$npc_technician.flags.rpg_campaign.character_t][6] = true>>
<<include "addRPGSessionTask">>
<<set $scene.bad_end = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You deliver the missing scion as requested to rich reward... but that decision proves quite the mistake. Rather than curing the partially daemoned woman her programming infects the company... the laminate slave now a laminate queen, the herald of the AI leveraging her family's vast wealth to spread a NEW sort of order across the galaxy, shiny and subservient.<br>
<br>
Eventually you and the rest of the party are on the run, skipping across the galaxy not to find your fortune... but to stay one port ahead of the creeping laminate empire...<br>
<br>
"@@.npc_technician;So I guess that's some sort of record... you didn't just end up enslaved, but you doomed the rest of the galaxy to a laminate prison...@@"<br>
<br>
"@@.npc_maid;Technically we made it off-planet and finished the mission... given the state of things, I'm going to call that a win!@@"<br>
<br>
Laughs and grins go around the table as you spend the rest of the evening reminiscing over the campaign before it's time to go.<br>
<br>
"@@.npc_maid;By the by... I think I saw an outfit at <<printShopName 'mall_sexstore'>> in the mall that reminded me of Torei...@@"<br>
<br>
[<<moveTo 'event_rpg_post_mux' "Continue." 300>>]
</div>/*#
#desc: technician notices your vagina pre-game
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.celebrate_vag = 1>>
<<set $scene.preGameEvent = true>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
You arrive for game and <<=setup.getNpcName('npc_technician', 'first')>> looks up in greeting, only to pause for a moment and squint, interrupting you just before you sit down. "@@.npc_technician;<<=$player.first_name>>, <<if $npc_technician.relationship.relationship_stage >=2>>my love —<</if>> could I borrow you in the bedroom for a moment?@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> chuckles in amusement but <<=setup.getNpcName('npc_technician', 'first')>> just rolls her eyes.<br>
<br>
"@@.npc_technician;I just wanted a moment in private to ask you a question — and it's easier for two to relocate than four, right?@@"<br>
<br>
[<<moveTo "event_rpg_your_surgery_2" 'Follow her and see what she wanted to talk about.' 300>>]
</div>/*#
#desc: technician notices your vagina pre-game
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.preGameEvent = true>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Rather than decide what to play you pull <<=setup.getNpcName('npc_technician', 'first')>> and ask if you could have a moment in private.<br>
<br>
She smiles, "@@.npc_technician;Of course, my <<if $npc_technician.relationship.relationship_stage >=2>>love<<else>>dear<</if>>, we'll be back in a moment.@@" She adds to the rest of the group as she leads you into the bedroom.<br>
<br>
Once the two of you are alone you explain that, though you declined the offer initially, you were wondering if the "celebration" of your new vagina was still an option?<br>
<br>
"@@.npc_technician;Of course!@@" She replies with an excited grin. "@@.npc_technician;It would be my, and the rest of my friends', honour to take part in such a celebration, if you're ready.@@"<br>
<br>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<</if>>
<<if _cage == "" || $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_rpg_your_surgery_3" "You're definitely ready to celebrate!" 300 "<<set $scene.action='sex_alt'>>">>]<br>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_rpg_your_surgery_3" "You'd love to celebrate... if you weren't locked in chastity." 300 "<<set $scene.action='chastity'>>">>]<br>
<</if>>
[<<moveTo "event_rpg_your_surgery_3" "You changed your mind, you just want to game." 120 "<<set $scene.action='game_alt'>>">>]
</div>/*#
#desc: technician talks to you about your vagina before game
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_technician', 'first')>> into the bedroom and she turns, waiting for you to close the door before speaking.<br>
<br>
<<set _themeId = setup.findThemeId('npc_technician', 'genitals', 'theme_technician_genitals_vagina', 'genitalthemes')>>
<<if -1 != _themeId && $npc_technician.genitalthemes.genitals[_themeId].done > 0 || $npc_technician.seenGenitals.vagina || $npc_technician.relationship.done_vag>>
"@@.npc_technician;So... your surgery and stuff... I didn't want to spoil the announcement, but I'm sure everyone would be really excited to hear the good news, and help you celebrate... if that was something you wanted?@@"
<<else>>
"@@.npc_technician;Sorry if this is jumping the gun a bit but... well, I've got an eye for these things... and the way you're walking... you got a bit of surgery, hmm?@@" She smiles, "@@.npc_technician;I'm so happy for you, taking the initiative to get the body you want rather than settling for one that maybe didn't fit... so, um... I don't want to steal your thunder, or betray your privacy, thus why I pulled you in here but... if you wanted to tell the rest of them the good news, or even celebrate it a bit, well... I'm sure they'd be just as happy for you as I am!@@"
<</if>>
<br><br>
[<<moveTo "event_rpg_your_surgery_3" "Thank her for the regards, but you'd like to just get to game as usual." 120 "<<set $scene.action='game'>>">>]<br>
[<<moveTo "event_rpg_your_surgery_3" "You're feeling a bit shy... could she make the announcement for you?" 300 "<<set $scene.action='shy'>>">>]<br>
[<<moveTo "event_rpg_your_surgery_3" "You'd like to tell your friends... then get on to the game." 300 "<<set $scene.action='announce'>>">>]<br>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<</if>>
<<if _cage == "" || $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_rpg_your_surgery_3" "You'd like to tell your friends... and maybe celebrate?" 300 "<<set $scene.action='sex'>>">>]<br>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_rpg_your_surgery_3" "You'd like to tell your friends... and you'd love to celebrate... if you weren't locked in chastity." 300 "<<set $scene.action='chastity'>>">>]<br>
<</if>>
</div>/*#
#desc: technician discovers your surgery
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == "sex">>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "announce" || $scene.action == "shy">>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'game'>>
You tell <<=setup.getNpcName('npc_technician', 'first')>> that, while you appreciate her congratulations, you're really just looking forward to the night's game.<br>
<br>
She grins. "@@.npc_technician;A <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>guy<<default>>cutie<</switch>> after my own heart! Well you got it, hot stuff, let's get out there and game!@@"<br>
<br>
<<if$npc_technician.flags.rpg_campaign.session == 1>>
[<<moveTo "event_rpg_campaign_session_2_0" "Time to play!" 300 "<<if $scene.action=='sex' || $scene.action=='chastity' && $scene.sex>><<include 'replaceCage_extendSissyomatic'>><</if>><<set $scene.fromSurgery=true>><<set $scene.stepLength=1800>>">>]
<<elseif $npc_technician.flags.rpg_campaign.session < 7>>
[<<moveTo "event_rpg_campaign_session_x_pre" "Time to play!" 300 "<<set $scene.stepLength=1800>>">>]
<<else>>
[<<moveTo "event_rpg_campaign_session_n_pre" "Time to play!" 300 "<<set $scene.stepLength=300>>">>]
<</if>>
<<case 'game_alt'>>
With a note of embarrassment you reply that you changed your mind, and you're actually just like to get to game.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> flashes a comforting smile. "@@.npc_technician;Hey, don't worry about it. When you're ready, you're ready, if you're not? That's fine too. Now come one hot stuff, let's get out there and game!@@"<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session == 1>>
[<<moveTo "event_rpg_campaign_session_2_0" "Time to play!" 300 "<<if $scene.action=='sex' || $scene.action=='chastity' && $scene.sex>><<include 'replaceCage_extendSissyomatic'>><</if>><<set $scene.fromSurgery=true>>">>]
<<elseif $npc_technician.flags.rpg_campaign.session < 7>>
[<<moveTo "event_rpg_campaign_session_x_pre" "Time to play!" 300>>]
<<else>>
[<<moveTo "event_rpg_campaign_session_n_pre" "Time to play!" 300>>]
<</if>>
<<case 'shy'>>
You blush and tell <<=setup.getNpcName('npc_technician', 'first')>> that you just don't know how to tell your friends about something that... intimate.<br>
<br>
She smiles in comfort. "@@.npc_technician;Oh, you poor, cute thing. Do you want me to take care of the announcement? They're all going to be so happy for you, so there's really nothing to worry about, but I totally get having nerves about things.@@"<br>
<br>
You nod.<br>
<br>
<<if $npc_technician.relationship.relationship_stage >= 2>>
Your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>>
<<else>>
<<=setup.getNpcName("npc_technician","first")>>
<</if>>
takes you by the hand and, with a welcoming smile, leads you back out to the living room.<br>
<br>
"@@.npc_technician;So!@@" <<=setup.getNpcName("npc_technician","first")>> states, addressing the room as your friends look up with curious interest. "@@.npc_technician;<<=$player.first_name>> is still healing up and such, but they wanted me to let you know that they've taken the plunge and gotten gender affirmation surgery.@@"<br>
<br>
"@@.npc_maid;Awesome!@@" "@@.npc_rpg_warlock;<<if $npc_rpg_warlock.flags.bottom_surgery>>Welcome to the club!<<else>>congrats!<</if>>@@" "@@.npc_rpg_dude;<<switch $player.identify_as>><<case 'female'>>You go girl!<<case 'male'>>Grats bro!<<default>>Nice!<</switch>>!@@" "@@.npc_barista;That's, like, so hot!@@" Your friends respond, showering you with praise as you blush and then slink back to your chair.<br>
<br>
"@@.npc_technician;So now that we're all together in wishing <<=$player.first_name>> great fortune... well, we're here for game so... let's get to it!@@"<br>
<br>
There's another flurry of congratulations and thumbs up and then everyone is grabbing dice and character sheets in preparation to play.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session == 1>>
[<<moveTo "event_rpg_campaign_session_2_0" "Time to play!" 300 "<<if $scene.action=='sex' || $scene.action=='chastity' && $scene.sex>><<include 'replaceCage_extendSissyomatic'>><</if>><<set $scene.fromSurgery=true>>">>]
<<elseif $npc_technician.flags.rpg_campaign.session < 7>>
[<<moveTo "event_rpg_campaign_session_x_pre" "Time to play!" 300>>]
<<else>>
[<<moveTo "event_rpg_campaign_session_n_pre" "Time to play!" 300>>]
<</if>>
<<case 'announce'>>
You reply that, actually, you would like to tell your friends before you get down to game.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> grins. "@@.npc_technician;Great, well let's get to it, then!@@"<br>
<br>
Dashing past she holds the door for you and you walk out into the living room, "table chatter" coming to a quick end as everyone looks up in curiosity.<br>
<br>
You take a deep breath and, beaming with pride, tell your friends about your recent gender affirmation surgery.<br>
<br>
"@@.npc_maid;Awesome!@@" "@@.npc_rpg_warlock;<<if $npc_rpg_warlock.flags.bottom_surgery>>Welcome to the club!<<else>>congrats!<</if>>@@" "@@.npc_rpg_dude;<<switch $player.identify_as>><<case 'female'>>You go girl!<<case 'male'>>Grats bro!<<default>>Nice!<</switch>>!@@" "@@.npc_barista;That's, like, so hot!@@" Your friends respond, showering you with praise as you blush and then slink back to your chair.<br>
<br>
"@@.npc_technician;So now that we're all together in wishing <<=$player.first_name>> great fortune... <<switch $npc_technician.flags.knowgender>><<case 'female'>>She<<case 'male'>>He<<default>>They<</switch>> said they wanted to get to game so... let's get rolling!@@"<br>
<br>
There's another flurry of congratulations and thumbs up and then everyone is grabbing dice and character sheets in preparation to play.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session == 1>>
[<<moveTo "event_rpg_campaign_session_2_0" "Time to play!" 300 "<<if $scene.action=='sex' || $scene.action=='chastity' && $scene.sex>><<include 'replaceCage_extendSissyomatic'>><</if>><<set $scene.fromSurgery=true>>">>]
<<elseif $npc_technician.flags.rpg_campaign.session < 7>>
[<<moveTo "event_rpg_campaign_session_x_pre" "Time to play!" 300>>]
<<else>>
[<<moveTo "event_rpg_campaign_session_n_pre" "Time to play!" 300>>]
<</if>>
<<case 'sex'>>
You bite your lip and reply that you'd kind of like to "celebrate" things with your friends. <<=setup.getNpcName('npc_technician', 'first')>> smiles. "@@.npc_technician;And I think that all of us would enjoy celebrating with you.@@"<br>
<br>
<<if $scene.removeCage>>
<<if $npc_technician.relationship.keyholder>>
<<=setup.getNpcName('npc_technician', 'first')>> lets you out of your <<=setup.getItemName($scene.cage)>> with a wink.
<<else>>
You produce your key and unlock your <<=setup.getItemName($scene.cage)>>. <<=setup.getNpcName('npc_technician', 'first')>> grins.
<</if>>
"@@.npc_technician;Someone's wet and excited! Come on, let's go meet the others!@@"
<br><br>
<</if>>
<<=setup.getNpcName('npc_technician', 'first')>> is almost giddy as she leads the way back to the living room. The conversation stops as your friends look up in interest.<br>
<br>
[<<moveTo "event_rpg_your_surgery_4" "Continue." 1800>>]
<<case 'sex_alt'>>
You grin and reply that you're very eager "celebrate" things with your friends. <<=setup.getNpcName('npc_technician', 'first')>> smiles even wider. "@@.npc_technician;Fuck and yes! Alright, let's do this!@@"<br>
<br>
<<if $scene.removeCage>>
<<if $npc_technician.relationship.keyholder>>
<<=setup.getNpcName('npc_technician', 'first')>> lets you out of your <<=setup.getItemName($scene.cage)>> with a wink.
<<else>>
You produce your key and unlock your <<=setup.getItemName($scene.cage)>>. <<=setup.getNpcName('npc_technician', 'first')>> grins.
<</if>>
"@@.npc_technician;Someone's wet and excited! Come on, let's go meet the others!@@"
<br><br>
<</if>>
<<=setup.getNpcName('npc_technician', 'first')>> is almost giddy as she leads the way back to the living room. The conversation stops as your friends look up in interest.<br>
<br>
[<<moveTo "event_rpg_your_surgery_4" "Continue." 1800>>]
<<case 'chastity'>>
You point out that, while you'd like to celebrate things, you're stuck locked in chastity.<br>
<br>
<<if $npc_technician.relationship.keyholder>>
<<=setup.getNpcName('npc_technician', 'first')>> does an exaggerated eye-roll. "@@.npc_technician;Really? After all that effort for me to be your keyholder... and you think that an — albeit it sexy-as-fuck — chastity device is going to stand in the way of non-celibate celebration?@@"<br>
<br>
[<<moveTo "event_rpg_your_surgery_3_chastity" "Oh, right, well let's do it then!" 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_rpg_your_surgery_3_chastity" "Right... but you'd actually rather just make your announcement and get to game." 300 "<<set $scene.sex=false>>">>]<br>
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> nods. "@@.npc_technician;That is a frustration <<if $npc_technician.relationship.her_caged>>one I am certainly familiar with...<<else>>kind of why I don't tend towards chastity myself — much too horny<</if>>, that said, well... <<=setup.getNpcName('npc_maid', 'first')>> has some skills with picking locks... I wouldn't want to get you in trouble long-term, but if you wanted out for a secret evening celebration, well...@@"<br>
<br>
[<<moveTo "event_rpg_your_surgery_3_chastity" "Yes, you want to escape to (sexy) party-town!" 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_rpg_your_surgery_3_chastity" "Just make your announcement and get to game." 300 "<<set $scene.sex=false>>">>]<br>
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: npc_maid helps you out of chastity for celebration
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<set $scene.level = setup.getChastityLevel()>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid","npc_maid_trayless")>>
<<else>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<if $npc_technician.relationship.keyholder>>
You blush at your bimboness and <<=setup.getNpcName('npc_technician', 'first')>> grins, leaning in for a kiss before sliding to her knees to unlock your chastity device.<br>
<br>
"@@.npc_technician;There we go, out on parole, and ready for some celebration. Come on!@@"<br>
<br>
With an eager gleam in her eyes she leads you back to the livingroom.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> calls <<=setup.getNpcName('npc_maid', 'first')>> into the room and, after some quick congratulations the maid gets to work cracking your lock.<br>
<br>
<<switch $scene.level>>
<<case 1 2 3>>
<<=setup.getNpcName('npc_maid', 'first')>> chuckles in amusement. "@@.npc_maid;I thought you were calling me in with a challenge! We'll have you out of that thing in a jiffy!@@"
<<case 4>>
<<=setup.getNpcName('npc_maid', 'first')>> nods, clearly impressed. "@@.npc_maid;Now isn't someone high-tech! There was some pretty spicy chatter on the discussion group when those came out, but don't you worry, I know the secret to bypassing the security mechanism.@@"
<<case 5>>
<<=setup.getNpcName('npc_maid', 'first')>> whistles softly as she lays eyes on your 9001 device. "@@.npc_maid;Whew! That is one hell of a device... it's a good thing we're in a bubble here, otherwise taking that thing off would be causing it to freak out and call home like nobody's business.@@" She takes a deep breath. "@@.npc_maid;Fortunately for you I've been keeping my ear to the ground and there's a medical override I can use — it'll only have you out partially... and that for only an hour, but hey, it's something, right?@@"
<<default>>
ERROR: unexpected scene.level <<=$scene.level>>
<</switch>>
<br><br>
Free of chastity you let out a sigh of relief as your friends lead the way back to the living room. "@@.npc_technician;Come on, hot stuff, let's show off and celebrate!@@"
<</if>>
<br><br>
[<<moveTo "event_rpg_your_surgery_4" "Let's celebrate!" 1800 "<<set $scene.abort=true>>">>]<br>
[<<moveTo "event_rpg_your_surgery_abort" "On second thought..." 180>>]<br>
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> nods. "@@.npc_technician;Hey, no probs, if you want to keep your sexy new bits locked up for safety, more power to you! Come on, let's get back to the group.@@"<br>
<br>
You leave the bedroom and, after a quick announcement and congratulations from your friends, settle in for another game.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session == 1>>
[<<moveTo "event_rpg_campaign_session_2_0" "Time to play!" 300 "<<if $scene.action=='sex' || $scene.action=='chastity' && $scene.sex>><<include 'replaceCage_extendSissyomatic'>><</if>><<set $scene.fromSurgery=true>><<set $scene.stepLength=1800>>">>]
<<elseif $npc_technician.flags.rpg_campaign.session < 7>>
[<<moveTo "event_rpg_campaign_session_x_pre" "Time to play!" 300 "<<set $scene.stepLength=1800>>">>]
<<else>>
[<<moveTo "event_rpg_campaign_session_n_pre" "Time to play!" 300 "<<set $scene.stepLength=300>>">>]
<</if>>
<</if>>
</div>/*#
#desc: change your mind and back into chastity
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == 'chastity'>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid","npc_maid_trayless")>>
<<else>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_maid","npc_maid_trayless")>>
<</if>>
<div id="invframe" class="scrolltext">
Cool air brushing your private bits suddenly makes you feel exposed and you get cold feet. You blush and ask to be locked up
<<if $scene.action == 'chastity'>>
<<=setup.getNpcName('npc_technician', 'first')>> says not a word of objection, merely helping you back into your <<=setup.getItemTypeName('cage')>> with a comforting smile.
<<else>>
<<=setup.getNpcName('npc_maid', 'first')>> shakes her head, but secures you back in chastity without further comment.
<</if>>
<br><br>
"@@.npc_technician;Hey, no problem. Come on, let's take our mind of things in the realm of fantasy!@@"<br>
<br>
You nod, returning to the living room for a quick announcement of your surgery before everyone settles in for game.<br>
<br>
[<<moveTo "event_rpg_campaign_session_n_pre" "Time to play." 300>>]
</div>/*#
#desc: your surgery gang-bang celebration
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.celebrate_vag = 2>>
<<playerOrgasm>>
<<set $scene.vaginalvirgin = !$player.virgin.vaginal>>
<<if $scene.vaginalvirgin>>
<<set $player.virgin.vaginal = "rpg_orgy">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_6'
0
'event_psychiatrist_session_vaginal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_vag'
0
'theme_church_confession_vag'
true
>>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "rpg_orgy">>
<</if>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "enthusiast">>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$npc_rpg_dude.fem>>
<<set $player.sec_style.sex.sex_man = "enthusiast">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "enthusiast">>
<</if>>
<<if !$player.sec_style.sex.airtight>>
<<set $player.sec_style.sex.airtight = "voluntary">>
<<include "addTypingEvent">>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_rpg_dude","npc_rpg_group")>>
<div id="invframe" class="scrolltext">
Your heart races as <<if $scene.vaginalvirgin>>you realise that your "first time" is going to be basically an orgy.<</if>> <<=setup.getNpcName('npc_technician', 'first')>> takes you by the hand and leads you to a chair, leaning you back and gently spreading your legs before sliding a finger between your folds.<br>
<br>
"@@.npc_technician;So excited for your celebration! Well you just lean back, relax... and let us show you just how happy we all are for you!@@"<br>
<br>
You nod, and then gasp as <<=setup.getNpcName('npc_technician', 'first')>> ducks between your legs to start licking. You bite your lip; rapidly on the edge of excitement, but not wanting things to "end" just as they're beginning.<br>
<br>
You're almost thankful when <<=setup.getNpcName('npc_technician', 'first')>> pauses, crawling forward to give you a kiss tinged with your own taste as you help guide her in<<if $scene.vaginalvirgin>> and she claims your virginity<</if>>.<br>
<br>
You have your first vaginal orgasm of the night, but that just kicks you up to another level of pleasure as <<=setup.getNpcName('npc_technician', 'first')>> slides out and to one side for the next of your friends to move in.<br>
<br>
Your celebration soon turns into a raucous orgy of kissing and fucking and fondling — moving in order of "size" you go with <<=setup.getNpcName('npc_rpg_dude', 'first')>>, <<=setup.getNpcName('npc_technician', 'first')>> round two and then finally <<=setup.getNpcName('npc_maid', 'first')>> and her so-called "Destroyer" — with <<=setup.getNpcName('npc_rpg_warlock', 'first')>> and <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> lips acting as far from dull "intermissions." <br>
<br>
By the time everyone has taken their "turn" you've had more orgasms than you can count and feel exhausted, but also strangely euphoric. Clothes re-figured out <<if $scene.action == 'chastity'>><<=setup.getNpcName('npc_technician', 'first')>> helps you back into chastity and<<else>>you<</if>> find your way back to your spot on the couch and settle back for game with a smile.<br>
<br>
<<if $npc_technician.flags.rpg_campaign.session == 1>>
[<<moveTo "event_rpg_campaign_session_2_0" "Time to play!" 300 "<<if $scene.action=='sex' || $scene.action=='chastity' && $scene.sex>><<include 'replaceCage_extendSissyomatic'>><</if>><<set $scene.fromSurgery=true>><<include 'initRPGSession'>>">>]
<<elseif $npc_technician.flags.rpg_campaign.session < 7>>
[<<moveTo "event_rpg_campaign_session_x_pre" "Time to play!" 300 "<<if $scene.action=='sex' || $scene.action=='chastity' && $scene.sex>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
<<else>>
[<<moveTo "event_rpg_campaign_session_n_pre" "Time to play!" 300 "<<if $scene.action=='sex' || $scene.action=='chastity' && $scene.sex>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
<</if>>
</div>/*#
#desc: first time fucked by technician choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<if $scene.sex>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You follow her into the bedroom where, after holding the door for you, she starts helping you out of your clothes, softly kissing and offering praise the entire time.<br>
<br>
Your heart races at her gentle touch, slightly surprised when she pops back into your view naked herself<<if $npc_technician.relationship.her_caged>>. You grin and unlock her cage, then smile<</if>> as she guides you to the bed.<br>
<br>
You start to bend over only for her to gently turn you around. "@@.npc_technician;I want to look at your pretty face while I deflower you@@" she whispers, helping you to lay on your back and raise your legs to expose your hole.<br>
<br>
<<if $scene.removePlug>>
Fingering your plug she smiles at you and gently pulls. "@@.npc_technician;There we go, relax, all your training is about to pay off...@@" She coos as the plug slides out of your hole. Setting it aside she sets to work with fingers as she reaches for a lotion dispenser on the nightstand that extrudes a dollop of lube automatically.
<<elseif $scene.plug != "">>
She takes a moment to admire the hollow plug spreading your hole. "@@.npc_technician;How inviting.@@" She states with a smile before reaching for a lotion dispenser on the nightstand that extrudes a dollop of lube automatically.
<<else>>
Her fingers begin exploring your puckered hole as she reaches for a lotion dispenser on the nightstand that extrudes a dollop of lube automatically.
<</if>>
<br><br>
You gasp in surprise at the lube being already warm as she works it into you. She smiles. "@@.npc_technician;Heated dispenser — isn't technology wonderful?@@" She explains, soon having you nice a slick before she rises up, giving you a final glimpse of her sapphic sword as if presenting it for final inspection.<br>
<br>
[<<moveTo 'event_technician_sex_2_bottom_first_2' "Nod." 1200>>]<br>
[<<moveTo 'event_technician_sex_2_bottom_first_2_abort' "Change your mind." 3600>>]
<<else>>
Suddenly getting cold feet you start to cry as you say that you can't do this. Whatever fear you had about her response is dispelled in an instant by her concerned expression as she rushes back to your side.<br>
<br>
"@@.npc_technician;It's okay, it's okay. I know this is probably a big deal for you but... I only want this if YOU want this, if you need more time, if you decide you want to do it with someone else instead... that's fine, I just want you to be happy and self-actualised. Come on, lets just cuddle, cuddling is nice, right?@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
She wipes away your tears and pulls you into her embrace. You can hear her breathing purposefully slow and even, and feel the luscious rod pressing into you from behind soften until she has you cage her back up.
<<else>>
She wipes away your tears you nod and she gives you a kiss before you melt into her arms once again.
<</if>>
<br><br>
Feeling loved and comforted you could stay there on the couch forever but, eventually, it is time for you to be heading home. You start to apologise again for leading her on but she is still having none of it, hugging you goodbye and assuring you that everything between you is still wonderful.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: first time fucked by technician
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.analvirgin = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_technician">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "voluntary">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<<playerOrgasm>>
<<if $npc_technician.relationship.caged_own.stage < 2>>
<<set $npc_technician.relationship.caged_own.stage = 2>>
<</if>>
<<set $npc_technician.relationship.done_you = true>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
You nod and <<=setup.getNpcName("npc_technician","first")>> smiles, gently moving forward as her <<getWordPenis false>> presses against and then becomes the first of its kind to enter your hole.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
Though you may be experienced with far larger toys there's just something about a real flesh and blood <<getWordPenis false>>.
<<else>>
You've used toys of a similar size but they pale in comparison to her flesh and blood <<getWordPenis false>>.
<</if>>
The warmth, the connection, everything about what you're feeling is powerful and intimate, your heart pounding as you look up at her and she gently thrusts deeper.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
She's a bit big for your hole but the combination of lube and her gentle patience allows you to relax, her <<getWordPenis false>> slowly sliding deeper and deeper as you find yourself eager to feel more of her inside of you.
<<else>>
She may be too big for you but she somehow makes it work, gently rocking the tip of her <<getWordPenis false>> inside of you to send waves of intense pleasure through your body.
<</if>>
<</if>>
You tremble as she oh-so-slightly increases her pace, holding your thighs as she rocks in and out, her angle perfect to press against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> with each stroke as your breaths turn to short, quick pants. You had no idea something could feel this intense, or this wonderful and you try to smile up at her only to jolt as your orgasm arrives. You gasp and feel something squirted into your hole as your clench kicks off her own climax. The two of you almost freeze, the moment of release building and drawing out until it feels like it is going to become too much.<br>
<br>
Releasing her held breath with a gasp she waits for you to calm down before gently pulling out. A towel produced from under the bed quickly wipes up the remaining lube and then she is next to you, cuddling and kissing and telling you how wonderful you felt as you return by gushing how good she felt inside of you.<br>
<br>
Wrapped in each other's arms you almost drift off to sleep, every time you think back to what you've just done a new smile appears on your face as you look over to her as if to confirm that yes, you just got fucked by your girlfriend. And it was wonderful.<br>
<br>
Reluctantly rising from the bed she helps you dress<<if $npc_technician.relationship.her_caged>>, and you re-lock her cage. She sighs, and winks,<</if>> and hugs you goodbye before you head back to your flat.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600 "<<useClothSetPop 'tmp'>><<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
</div>/*#
#desc: first time fucked by technician abort
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<useClothSetPop 'tmp'>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<if $scene.removeCage>>
<<include 'replaceCage_extendSissyomatic'>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
Face to face with <<=ps(setup.getNpcName("npc_technician","first"))>> not insubstantial <<getWordPenis false>> you change your mind and shake your head.<br>
<br>
Rather than looking hurt or upset <<=setup.getNpcName("npc_technician","first")>> appears concerned as she helps you to your feet.<br>
<br>
You're fighting back tears as she gives you a comforting hug. "@@.npc_technician;Shhhh, shhh, it's okay, like I said before, I can wait or we can just cuddle — what's important is that you, well, both of us, really, are comfortable with everything, okay?@@"<br>
<br>
You nod and manager to choke back your tears as she gives you a peck on the cheek and helps you get dressed and head back to the couch.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
She briefly diverts to the kitchen for an ice-pack, wincing ever so slightly as she gets herself back into condition for you to lock her cage back where it belongs.
<</if>>
Emotionally fried you try to apologise again only for her to brush it off and wish you a good evening as you decide to head home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600>>]
</div>/*#
#desc: fucked by technician choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<set _panties = setup.getItemFromType("panties")>>
<<if _panties != "">>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<<set $npc_technician.relationship.done_you = true>>
<<include "adminTechnicianThreesomeChecker">>
<<if $npc_technician.relationship.relationship_stage < 2>>
<<set $npc_technician.relationship.relationship_stage = 2>>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_sex_kinks')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_kinks'
10
'theme_technician_kink_1'
true
>>
<</if>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<else>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<if $npc_technician.relationship.her_caged>>You remove her cage and she grins with glee, broadsword in hand.<</if>>
<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
You reach behind to remove your plug and clear the way and <<=setup.getNpcName("npc_technician","first")>> enters you.
<<else>>
Impatiently shifting to align yourself with <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> she obliges you by entering your eager hole.
<</if>>
"@@.npc_technician;Anyone tell you today that you've got a hot, tight, ass?@@" She asks
<<if setup.getTotalValue("anal") > 10>>
as she goes balls deep in your hungry hole.
<<if setup.getTotalValue("anal") > 15>>
As easily as she entered you she still feels amazing and you moan, encouraging her to increase her pace.
<<else>>
She slides into your trained ass like she belongs there and you moan in encouragement.
<</if>>
"@@.npc_technician;So good...@@" She whispers as she nibbles your shoulder and thrusts in and out. She seems to know every trick to using her big, beautiful <<getWordPenis false>> and it isn't long before your <<if $player.body_ref.penis>>prostate is<<else>>insides are<</if>> brimming with joy and you feel an orgasm approaching.
<<else>>
as the thick tip of her <<getWordPenis false>> makes its way into your tight, inexperience rear.
<<if setup.getTotalValue("anal") > 5>>
You moan in response, the feeling of her spreading you intense enough to push aside most rational thought as you just hold on for the ride.
<<else>>
You moan in response; though you are able to accommodate little more than her tip that is more than enough to have your eyes rolling back in pleasure.
<</if>>
"@@.npc_technician;So... tight...@@" She grunts as she starts rocking in and out, the gentle movement magnified <<if $player.body_ref.penis>>by your prostate <</if>>to have you gasping and moaning, your orgasm approaching quickly.
<</if>>
<br><br>
She grunts and spurts, the extra slipperiness provided by her thick cum allowing her to speed up ever so slightly and push you over the edge. You gasp as you mess your panties, pressing back into her lest you fall off the couch as you shake in ecstasy and as she holds you tight.<br>
<br>
"@@.npc_technician;Mmm, thanks@@" she whispers, kissing you behind the ear and then pulling you closer, slowly softening inside of you as the two of you cuddle in the afterglow.<br>
<br>
The evening slips away until it is finally time for you to rise<<if $npc_technician.relationship.her_caged>>, replace her cage,<</if>> and return home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600>>]
<<else>>
Suddenly having second thoughts you reply that, actually, you aren't quite as in the mood as you thought.<br>
<br>
"@@.npc_technician;Tease!@@" She jokes before giving you a kiss behind the ear, "@@.npc_technician;That's fine, we can do something else.@@"<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: first time fucking technician choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<if $scene.sex>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<changeHorny 100>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<<removeItem $scene.cage true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Moving off the bed she leads the way to the bedroom where the two of you are soon naked.<br>
<br>
<<if $scene.cage == "">>
She smiles as she wraps her hand around your hard <<getWordMyPenis>>. "@@.npc_technician;Mmm, yes... I NEED this inside of me.@@"
<<elseif $npc_technician.relationship.keyholder>>
She smiles and does a little sleight of hand to produce your key before carefully removing your chastity device. "@@.npc_technician;Time to let you out for a short conjugal visit...@@"
<<else>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
Removing your clothing reveals your chastity device, but you immediately produce the key and she smiles as you remove it to let your <<getWordMyPenis>> spring forth.<br>
<br>
"@@.npc_technician;Locked away, just for me? Oh, I feel so honoured, but even more I want to feel that lovely thing inside me.@@"
<<else>>
ERROR: should not be possible to be here in this chastity state!
<</if>>
<</if>>
<br><br>
Producing a vial of lube she spends a few moments getting you nice and slick before winking and taking a step away. Leaping into the air she does a half-twist in midair, landing on her back with her legs spread before you, hooking her hands behind her knees to show off her <<if $npc_technician.relationship.her_caged>>caged<<else>>impressive<</if>> <<getWordPenis false>> and the inviting hole below.<br>
<br>
You're a bit impressed by her little acrobatic demonstration of flexibility and she smiles. "@@.npc_technician;What? I got into online yoga videos for a bit — now stop leaving your horny girlfriend waiting and fuck my brains out!@@"<br>
<br>
<<if !$player.virgin.top_fem>>
<<if $player.virgin.penis>>
<<printThought "This is it, finally the opportunity to lose your long-guarded virginity...">>
<<else>>
<<printThought "This is it, finally the opportunity to lose your long-guarded virginity...">>
<</if>>
<<else>>
<<printThought "This is it, time to do your girlfriend for the first time in your life...">>
<</if>>
<br><br>
[<<moveTo 'event_technician_sex_2_top_first_2' "Get to it." 1200 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_first_2' "Change your mind." 3600 "<<set $scene.sex=false>>">>]
<<else>>
<<if !$player.virgin.top_fem>>
The reality of being so close to losing your virginity after so long proves too much excitement and you meekly mumble that maybe you aren't ready yet.
<<else>>
Suddenly changing your mind you reply that, on second thought, maybe you aren't "up" for that tonight.
<</if>>
<br><br>
Rather than being upset <<=setup.getNpcName("npc_technician","first")>> kisses you on the neck and pulls you closer "@@.npc_technician;Cold feet? That's fine, we can just cuddle, cuddling is good... actually, scratch that, cuddling is GREAT!@@"<br>
<br>
Her arms wrapped around you, you'd have to agree.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: first time fucking technician
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<set $scene.virgin = !$player.virgin.top_fem>>
<<if $scene.virgin>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_technician">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_virgin'
0
'theme_church_confession_virgin'
true
>>
<</if>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "npc_technician">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<</if>>
<<if !$player.virgin.penis>>
<<set $player.virgin.penis = "npc_technician">>
<</if>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<<playerOrgasm>>
<<set $npc_technician.relationship.done_her = true>>
<<if $npc_technician.relationship.relationship_stage < 2>>
<<set $npc_technician.relationship.relationship_stage = 2>>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_sex_kinks')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_kinks'
10
'theme_technician_kink_1'
true
>>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'theme_technician_barista_gangbang')>>
<<set $scene.baristaGangbang = _themeId != -1 && $npc_technician.themes.rpg[_themeId].done && $npc_barista.stage == 3>>
<<if $scene.baristaGangbang>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks.technician_roleplay_1.finished>>
<<deleteTask 'technician_roleplay_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks.technician_roleplay_punish_1.finished>>
<<deleteTask 'technician_roleplay_punish_1'>>
<</if>>
<<set $scene.puntCollar = $currentTasks.hasOwnProperty('technician_collar_her_ceremony') && !$currentTasks.technician_collar_her_ceremony.finished>>
<<if $scene.puntCollar>>
<<postponeTask 'technician_collar_her_ceremony' 7>>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'rpg_session_gangbang' _nextDate>>
<</if>>
<<else>>
<<useClothSetPop 'tmp'>>
<<if $scene.cage != "">>
<<wearItem $scene.cage true>>
<<manipulateItem $scene.cage 'lock' true>>
<</if>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<if $scene.virgin>>
This is it, you're finally going to have sex with a woman — not oral, or a handy or her teasing you, but full-on sex.<br>
<br>
Looking down at your smiling girlfriend banishes any prior regrets at waiting this long; sure, you were a bit of a fool with your ex but the payoff, being able to share such a special moment with someone as wonderful as <<=setup.getNpcName("npc_technician","first")>>? Well...<br>
<br>
You take the plunge.
<<else>>
She lies before you nigh irresistible, and so you don't. Hard and excited and her looking up eager, horny and willing you step forward.
<</if>>
<br><br>
<<switch $player.body.penissize[0]>>
<<case 5 6>>
She bites her lip and trembles as you enter her. Your <<getWordMyPenis>> <<if $player.body.penissize[0] == 5>>is the same size as hers; that is to say, large<<else>>is even larger than hers<</if>> and you can tell it is taking her a bit of concentration to relax enough to accommodate your girth.
<<case 3 4>>
She moans as you enter her, her hole gripping tight around your <<getWordMyPenis>>.
<<case 0 1 2>>
Your <<getWordMyPenis>> enters her easily.
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_technician;Are you even inside of me? Oh you must be so embarrassed being so small! Oh don't stop, I want to feel you humping uselessly against me while you look down at what a REAL lady lance looks like so that next time you remember who belongs on top.@@"
<<else>>
She smiles up at you.
<</if>>
<<case 'spe'>>
"@@.npc_technician;Oh you're just the perfect size for me, oh it feels so good!@@"
<<case 'none'>>
She smiles up at you.
<<default>>
ERROR: unhandled <<=$player.body_ref.shrink_style>>
<</switch>>
<<default>>
ERROR: player penis size: <<=$player.body.penissize[0]>> out of range
<</switch>>
<br><br>
You start to thrust, losing your balance slightly and falling forward where she eagerly pulls you close, kissing you passionately as she rolls her hips and you continue to thrust.<br>
<br>
"@@.npc_technician;Yes, yes, fuck me harder.@@" She whispers in between kisses and moans. You don't have to be told twice, increasing your pace as the slick lube works its magic, her hole
<<if $scene.virgin>>
like nothing you've ever felt, tight and hot and slick and a little... fluttery? You lack the words to adequately explain how perfect it is; not that you're talking, your tongue far more occupied in an erotic dance with hers.<br>
<br>
Closing your eyes in concentration you try to last, but between her hands roaming your back, her lips against yours and, most of all, her heavenly hole, well... maybe when you have more practice you could endure but as it is you cum, hard, feeling at the same time a wetness against your belly as she <<if $npc_technician.relationship.her_caged>>leaks out of her cage<<else>>spurts between you<</if>>.
<<else>>
is special, even compared to your previous times. Tight and hot and slick and a little... fluttery she feels practically perfect, her soft lips and probing tongue hungrily kissing as you hump away.<br>
<br>
You manage, somehow, to outlast her but when she moans into your mouth and her joy <<if $npc_technician.relationship.her_caged>>leaks out of her cage<<else>>spurts between you<</if>> it pushes you over the edge and you climax hard, her hole seeming to almost squeeze it out of you as after-shocks of spurting run through your body.
<</if>>
<br><br>
Your climax draws out as you shudder and gasp, giving her everything you have and then going limp. Casually rolling you over she straddles you on top, her <<if $npc_technician.relationship.her_caged>>steel cage<<else>>deflating member<</if>> resting on your belly as she smiles.<br>
<br>
"@@.npc_technician;Good for you?@@" She asks, her breathless tone and smile indicating that it was definitely good for her.<br>
<br>
You nod, lying there looking up at her with a smile for several minutes before you eventually slide out and she slithers off, cuddling you for the rest of the night before it's finally time for
<<if $scene.cage == "">>
you to get dressed and depart.
<<elseif $npc_technician.relationship.keyholder>>
her to lock you back up
<<else>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
her to gently help you back into your cage and return your key.
<<else>>
ERROR: should not be possible to be here in this chastity state!
<</if>>
<</if>>
<br><br>
<<if $scene.baristaGangbang>>
<<=setup.getNpcName("npc_technician","first")>> winks at you, "@@.npc_technician;now that I've broken you in... or maybe it's the other way around? Either way, we're ready to show <<=setup.getNpcName("npc_barista","nickname")>> the ultimate in pleasure next week...<<if $scene.puntCollar>> which means collaring gets pushed back in favour of helping a friend.<</if>>@@"<br>
<br>
<</if>>
Your heart races as you glance back at her and think about what you did but, after sharing a final kiss in the doorway, you leave for home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600 "<<useClothSetPop 'tmp'>> <<if $scene.cage != ''>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><</if>>">>]
<<else>>
You hesitate for a moment and then step away shaking your head. You can't do this. Looking down on <<=setup.getNpcName("npc_technician","first")>>; naked and ready and oh so sexy looking you feel like such a disappointment but she is suddenly back on her feet, holding you close as you hold back tears.<br>
<br>
"@@.npc_technician;Shhh, shhh, it's fine, we don't have to do this, everything is fine. Come on, let's just get dressed and cuddle.@@"<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: first time fucking technician strap-on choice
#status: FINISHED 0.7.12.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<if $scene.sex>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $player.timebased.horny = 100>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.strapin = false>>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<<removeItem $scene.cage true>>
<<set $scene.strapon = 'strapon_med_double'>>
<<set $scene.strapin = true>>
<<else>>
<<set $scene.strapon = 'strapon_med'>>
<</if>>
<<else>>
<<set $scene.strapon = 'strapon_med_double'>>
<<set $scene.strapin = true>>
<</if>>
<<addItem $scene.strapon>>
<<wearItem $scene.strapon true>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
Your <<=setup.getNpcName('npc_technician', 'title')>> grins, "supervising" as you equip the strap-on<<if $scene.strapin>>, paying particular attention that "your" portion is nicely seated inside you<</if>>.
<<case 'sub'>>
Your eager slave enthusiastically attends to buckling the strap-on around your hips<<if $scene.strapin>>, paying particular attention that "your" portion is nicely seated inside you<</if>>.
<<case 'neutral'>>
Your girlfriend excitedly shows you how to arrange the straps of the harness to get the strap-on in place<<if $scene.strapin>>, paying particular attention that "your" portion is nicely seated inside you<</if>>.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<if $scene.strapin>>
"@@.npc_technician;Mmm, yeah, I can't wait to feel you pounding my prostate and your g-spot at the same time...@@"
<<else>>
"@@.npc_technician;Mmm, now you're hard forever... almost makes me jealous...@@"
<</if>>
<br><br>
She sensuously lubes you up and then hops up on the bed and spreads herself for you, biting her lip in invitation as she wiggles her butt.<br>
<br>
[<<moveTo 'event_technician_sex_2_top_first_strapon_2' "Get to it." 1200 "<<set $scene.sex=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_top_first_strapon_2' "Change your mind." 3600 "<<set $scene.sex=false>>">>]
<<else>>
Suddenly changing your mend you reply that, on second thought, you don't think you're quite ready to peg her.<br>
<br>
Rather than being upset <<=setup.getNpcName("npc_technician","first")>> kisses you on the neck and pulls you closer.
<<if $player.body_ref.penis>>
"@@.npc_technician;Decided you'd rather hold out till you can use the real thing? That's fine, we can just cuddle, cuddling is good... actually, scratch that, cuddling is GREAT!@@"
<<else>>
"@@.npc_technician;Aww? Is my cute butt not worthy of railing?@@" She grins, "@@.npc_technician;I'm just teasing! We can just cuddle, cuddling is good... actually, scratch that, cuddling is GREAT!@@"
<</if>>
<br><br>
Her arms wrapped around you, you'd have to agree.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: first time pegging technician
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<set $scene.virgin = !$player.virgin.top_fem>>
<<if $scene.virgin>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "npc_technician">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<set $player.virgin.ass_strap = "npc_technician">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_4'
0
'event_psychiatrist_session_ass_strap_female_1'
true
>>
<</if>>
<<set $npc_technician.relationship.done_her = true>>
<<set _themeId = setup.findThemeId('npc_technician', 'rpg', 'theme_technician_barista_gangbang')>>
<<set $scene.baristaGangbang = _themeId != -1 && $npc_technician.themes.rpg[_themeId].done && $npc_barista.stage == 3>>
<<if $scene.baristaGangbang>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks.technician_roleplay_1.finished>>
<<deleteTask 'technician_roleplay_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks.technician_roleplay_punish_1.finished>>
<<deleteTask 'technician_roleplay_punish_1'>>
<</if>>
<<set $scene.puntCollar = $currentTasks.hasOwnProperty('technician_collar_her_ceremony') && !$currentTasks.technician_collar_her_ceremony.finished>>
<<if $scene.puntCollar>>
<<postponeTask 'technician_collar_her_ceremony' 7>>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'rpg_session_gangbang' _nextDate>>
<</if>>
<<if $npc_technician.relationship.relationship_stage < 2>>
<<set $npc_technician.relationship.relationship_stage = 2>>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_sex_kinks')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_kinks'
10
'theme_technician_kink_1'
true
>>
<</if>>
<<else>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<removeItem $scene.strapon true>>
<<deleteItem $scene.strapon>>
<<useClothSetPop 'tmp'>>
<<if $scene.cage != "">>
<<wearItem $scene.cage true>>
<<manipulateItem $scene.cage 'lock' true>>
<</if>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<if $scene.virgin>>
This is it, you're finally going to have sex with a woman — not oral, or a handy or her teasing you, but full-on sex. Sure it's with a strap-on <<if $player.body_ref.penis>>but that's fine<<if setup.checkItemTypeWorn("cage")>>, you're locked; gotta adapt and overcome... o-her-cum?<<else>>.<</if>><<else>>but, well, you don't have a penis anymore anyway.<</if>><br>
<br>
Looking down at your smiling girlfriend banishes any prior regrets at waiting this long; sure, you were a bit of a fool with your ex but the payoff, being able to share such a special moment with someone as wonderful as <<=setup.getNpcName("npc_technician","first")>>? Well...<br>
<br>
You take the plunge.
<<else>>
She lies before you nigh irresistible... and so you don't. Hard and excited and her looking up eager, horny and willing you step forward.
<</if>>
<br><br>
<<if $scene.strapin>>
You gasp, her tight ass taking your cock and setting off explosions of pleasure at the other end as the internal portion of the strap-on shifts and moves.
<<else>>
You can't technically feel anything physically, thanks to your chastity, but the sight of her eyes rolling back in pleasure well... that certainly makes you feel SOMETHING good.
<</if>>
<br><br>
"@@.npc_technician;Oh yes! Strap that ass! Strap it good!@@" She moans. She's clamped down so hard she almost pulls you off balance, only for her to save you by wrapping her legs around your waist and pulling you even deeper.<br>
<br>
"@@.npc_technician;So good...@@" She pants, groping her breasts as you move faster
<<if $npc_technician.relationship.her_caged>>
she paws uselessly at her caged <<getWordPenis false>>, the reminder of her restricted state seeming to turn her on even more as you can tell her "hands free" analgasm is moments away.
<<else>>
though her <<getWordPenis false>> rises hard and proud she seems to be purposefully avoiding touching it, seemingly completely focused on what looks like a rapidly approaching "hands free" analgasm.
<</if>>
<br><br>
"@@.npc_technician;Yess...@@" she moans as she cums, the sound of her climax
<<if $scene.strapin>>
pushing you over the cliff as well and you cum hard, both of your clenching down on your respective "halves" of the dildo as you momentarily lock together.
<<else>>
exciting you even as it amplifies the frustration of the fact that you remain "unfeeling" locked in chastity.
<</if>>
<br><br>
<<if $npc_technician.relationship.her_caged>>
She shudders as she leaks out of her cage, a trail of girl-cum smearing between your grinding hips.
<<else>>
Rather than spurting her orgasm oozes down her hard shaft, which twitches slightly and slowly deflates as she sighs in relief.
<</if>>
<br><br>
<<if $scene.virgin>>
<<printThought "Holy shit... I just fucked my first woman...">> You realise as you catch your breath and look down at her smiling back up at you.
<<else>>
"@@.npc_technician;You're really good at that...@@" She says, looking up at you with a smile. "@@.npc_technician;Like... REALLY good, strap-my-ass anytime you want amazeballs.@@"
<</if>>
<br><br>
The after-shocks of her climax fading she finally relaxes enough for you to easily slide free.<br>
<br>
Immediately she hops back to her feet, sharing a kiss as she nimbly unbuckles your harness<<if $scene.strapin>> and smoothly removes the strap-on<</if>>.<br>
<br>
"@@.npc_technician;Pretty convenient to only have one when you need it, huh? Plus, you can get 'em in any size and shape you fancy! Technology is great!@@"<br>
<br>
You smile and laugh along with her enthusiasm<<if $scene.cage != "" && $scene.strapin>>as she helps you back into your chastity belt<</if>>.
<br><br>
<<if $scene.baristaGangbang>>
<<=setup.getNpcName("npc_technician","first")>> winks at you, "@@.npc_technician;now that I've broken you in... or maybe it's the other way around? Either way, we're ready to show <<=setup.getNpcName("npc_barista","nickname")>> the ultimate in pleasure next week...<<if $scene.puntCollar>> which means collaring gets pushed back in favour of helping a friend.<</if>>@@"<br>
<br>
<</if>>
She does a quick clean-up and then pulls you in for a post-coital cuddle, your heart racing for quite some time before you come down from the high that was doing her, and decide it's time for you to finally head home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600 "<<removeItem $scene.strapon true>><<deleteItem $scene.strapon>><<useClothSetPop 'tmp'>> <<if $scene.cage != '' && $scene.strapin>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><</if>>">>]
<<else>>
You hesitate for a moment and then step away shaking your head. You can't do this. Looking down on <<=setup.getNpcName("npc_technician","first")>>; naked and reading and oh so sexy looking you feel like such a disappointment but she is suddenly back on her feet, holding you close as you hold back tears.<br>
<br>
"@@.npc_technician;Shhh, shhh, it's fine, we don't have to do this, everything is fine. Come on, let's just get dressed and cuddle.@@"<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: fucking technician choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if $scene.strapon>>
<<addItem 'strapon_med'>>
<<wearItem 'strapon_med' true>>
<<else>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<removeItem $scene.cage true>>
<</if>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<</if>>
<<if $player.body.penissize[0] < 3 && $fetish.sph && $player.body_ref.shrink_style == 'sph'>>
<<applyExperience 'humiliation' 11 'very' $SEEN_FRIEND>>
<</if>>
<<else>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
Scampering into the bedroom she "supervises" as she sheds her clothes and then help you out of her own,
<<if $scene.strapon>>
before helping you into a strap-on harness. She cinches it tight with a grin and a quip about "@@.npc_technician;loving keeping you tight and secure...@@"
<<else>>
<<if $scene.cage == "">>
eyeing your hard <<getWordMyPenis>> the whole time.
<<elseif $npc_technician.relationship.keyholder>>
waiting until you are both naked before producing your key with a flourish and grinning as she gently releases "her" property.
<<else>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
waiting for you to give her the key before finally letting you out of your chastity situation.
<<else>>
grinning at your chastity device before handing you a strap-on from her personal collection. <<if $player.body_ref.shrink_style>>"@@.npc_technician;This will work much better than that useless little thing of yours.@@"<</if>>
<</if>>
<</if>>
<</if>>
<br><br>
Guiding you onto the bed she has you lie back and then she hops up to straddle you, in complete control the entire time
<<if $scene.strapon>>
As she lowers herself onto your hard, protruding strap-on.
<<else>>
<<switch $player.body.penissize[0]>>
<<case 5 6>>
as she slowly lowers herself onto your massive <<getWordMyPenis>>.
<<case 3 4>>
as she guides your <<getWordMyPenis>> into her rear.
<<case 0 1 2>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
as she chuckles at your tiny <<getWordMyPenis>> and then guides it into her rear. "@@.npc_technician;So pathetic... I can hardly feel anything!@@"
<<else>>
as she guides your <<getWordMyPenis>> into her rear.
<</if>>
<<case 'spe'>>
as she lovingly caresses your <<getWordMyPenis>> and guides it into your rear. "@@.npc_technician;So small and sweet and perfect...@@"
<<case 'none'>>
<<getWordMyPenis>> and guides it into your rear.
<<default>>
ERROR: unhandled <<=$player.body_ref.shrink_style>>
<</switch>>
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<br><br>
Grinning down she thrusts out her chest and begins rolling her hips, riding you hard with one hand reaching down to <<if $player.body.breastsize[0]>>grope your breasts<<else>>claw at your chest<</if>>.<br>
<br>
You moan and she grins wider, riding you harder,
<<if $npc_technician.relationship.her_caged>>
her cage banging against you each time she drops her weight.
<<else>>
her free hand stroking the full length of her magnificent <<getWordPenis false>>.
<</if>>
<br><br>
<<if !$scene.strapon && $player.body_ref.penis && $player.body.penissize[0] < 3 && $fetish.sph && $player.body_ref.shrink_style == 'sph'>>
"@@.npc_technician;You feel that? With every thrust I'm crushing your pathetic thing even smaller. Eventually you won't have anything left and it'll just be sucking and being fucked for you as is proper.@@"<br>
<br>
Despite the humiliation you feel your climax approaching and she clenches down as you cum, your hips bucking hard enough to lift her off the bed but she rides it out and forces you back down onto the mattress.
<<elseif $scene.strapon && setup.checkItemTypeWorn("cage")>>
Even through your strap-on you can feel her movement as she gets closer and closer to climax while you remain "safely" imprisoned.
<<if $player.body_ref.penis && $player.body.penissize[0] < 3 && $fetish.sph && $player.body_ref.shrink_style == 'sph'>>
"@@.npc_technician;See? No reason to ever let that pathetic thing of yours free, that strap-on is so much better than you could ever hope to be.@@"
<</if>>
<<else>>
"@@.npc_technician;Yes... just like that,@@" she purrs as you hump in sync with her grinding hips. Her hole hot and tight and near perfect your climax swiftly approaches and she clenches down as you cum, your hips bucking hard enough to lift her off the bed but she rides it out and forces you back down onto the mattress.
<</if>>
<<if $npc_technician.relationship.her_caged>>
Despite her cage she cums, leaking out onto your chest as she clenches down on you.
<<else>>
She cums, hard, showering your <<if $player.body.breastsize[0]>>chest<<else>>tits<</if>> and face with thick ropes of lady juices.
<</if>>
<br><br>
Sitting on top of you as she catches her breath she grins, finally leaning over to give you a kiss.<br>
<br>
"@@.npc_technician;Good girl.@@" She states, gracing you with a head-pat before sliding off before pulling you in for some cuddling after-care.<br>
<br>
Some time later she helps you back to your feet to clean up, <<if $scene.cage != "" && !$scene.strapon>>get locked back in chastity,<</if>> and dress, sending you home with a smile.
<<case 'sub'>>
Scampering into the bedroom she helps you out of your clothes
<<if $scene.strapon>>
before helping you into a strap-on harness. She cinches it tight with a playful smile, and a quip about "@@.npc_technician;wanting you to feel totally secure while you're ravaging my rear...@@"
<<else>>
<<if $scene.cage == "">>
with obvious eagerness.
<<elseif $npc_technician.relationship.keyholder>>
and then produces your key with a sly smile before unlocking and freeing you from your chastity.
<<else>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
and waits for you to produce the key to unlock and remove your cage.
<<else>>
and reverently presents you with a strap on from her personal collection.
<</if>>
<</if>>
<</if>>
She winks, bends submissively over the bed and exposes her ass, reaching back with a bottle of lube in hand to let it trickle invitingly down her crack.<br>
<br>
<<if $scene.strapon>>
With the strap-on securely protruding out <<if $scene.cage == "">>from your hips<<else>><<if setup.isCage()>>above your cage<<else>>over your chastity belt<</if>><</if>> you move behind her and line up with her hole.<br>
<br>
"@@.npc_technician;Yes, give me that strap...@@" she crys out in encouragement and you do, thrusting deep and hard as she moans encouragement.
<<else>>
<<switch $player.body.penissize[0]>>
<<case 5 6>>
You approach her from behind, letting your massive <<getWordMyPenis>> rest between her cheeks for a moment as she trembles. Sawing back and forth you wait until she's begging for it before slowly, ever so slowly sliding into her.<br>
<br>
Her breaths come faster as you ease into her, by the time your <<if $player.body_ref.balls>>balls brush<<else>>hips touch<</if>> the back of her thighs she lets out a deep groan, her hands making fists of the sheets as you take hold of her hips.<br>
<br>
"@@.npc_technician;Oh, Goddess, you're so big...@@" She moans, her entire body trembling around you. "@@.npc_technician;I needed this... fuck me, fuck me hard, Mistress.@@"
<<case 3 4>>
You take a moment to massage a her ass, teasing her a bit before lining up your <<getWordMyPenis>> and sliding into her. She moans in approval, gripping you tight as she purrs "@@.npc_technician;Yes, Mistress, please fuck me hard...@@"
<<case 0 1 2>>
Approaching her from behind you enter her easily.
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_technician;Is it in, yet, Mistress?@@" She teases, and you give her a warning slap on the ass.
<<else>>
"@@.npc_technician;Mmm... give it to me,@@" she purrs.
<</if>>
<<case 'spe'>>
"@@.npc_technician;Oh, you feel so perfect in my tight little hole...@@" she moans.
<<case 'none'>>
"@@.npc_technician;Mmm... give it to me,@@" she purrs.
<<default>>
ERROR: unhandled player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<br><br>
<<if $player.body.penissize[0] < 3 && !$scene.strapon>>
<<if $fetish.sph && $player.body_ref.shrink_style=='sph'>>
You respond to her mocking tone by speeding up, interspersing your quick, short thrusts by slapping her ass, using your weight to drive her face-first into the mattress to assert your dominance.
<<else>>
You start moving your hips, short, quick strokes as you angle your hips to try to poke her prostate with each thrust.
<</if>>
<br><br>
Her heart races faster as you continue to thrust, your hand snaking down below to
<<if $npc_technician.relationship.her_caged>>
possessively squeeze her caged <<getWordPenis false>>.
<<else>>
give her hard <<getWordPenis false>> the reach-around.
<</if>>
With the added stimulation it is isn't much longer before she cums, her clenching down squeezing out your orgasm a swell as your cum leaks out of her ass and down her balls.
<<elseif $scene.strapon>>
You may not be able to feel it as your artificial member saws in and out of your sub's eager hole but from her eager vocalisation there's no doubt she does. Face pressed against the mattress to muffle her cries of pleasure she shudders as you finally find the perfect angle to pound her prostate. After only a handful of additional strokes she cums, <<if $npc_technician.relationship.her_caged>>leaking out of her cage<<else>>spurting down the edge of the bed<</if>> in a pure analgasm.
<<else>>
Each thrust shakes the bed as you try to last in her hot, hungry hole.
<</if>>
<br><br>
Turning slightly to look back up at you she smiles. "@@.npc_technician;Thank you, Mistress, I really, really needed that.@@"<br>
<br>
You crawl into bed with her and she turns to face you. Your lips meet as you hold your lovely sub close for a sensuous post-orgasmic make-out session.
<<case 'neutral'>>
Scampering into the bedroom she helps you out of your clothes
<<if $scene.strapon>>
before helping you into a strap-on harness.
<<else>>
<<if $scene.cage == "">>
with obvious eagerness.
<<elseif $npc_technician.relationship.keyholder>>
and then produces your key with a sly smile before unlocking and freeing you from your chastity.
<<else>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
and waits for you to produce the key to unlock and remove your cage.
<<else>>
and hands you a strap on from her personal collection.
<</if>>
<</if>>
<</if>>
Lying back on the edge of the bed she spreads her legs and grins up at you in invitation. You do not hesitate to take her up on it.
<<if $scene.strapon>>
The silicone strap-on slides easily into her and for a moment you find yourself wondering how much "practice" she has had with the toy.
<<else>>
<<switch $player.body.penissize[0]>>
<<case 5 6>>
The lube is put to the test to help your thick <<getWordMyPenis>> slide into her and she moans, her eyes wide as you fill her to the brim.
<<case 3 4>>
Your <<getWordMyPenis>> slides easily into her as she purrs, playing with her tits as she smiles up at you.
<<case 0 1 2>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
She giggles slightly as you enter her, her legs wrapping around to pull your closer as if hoping to squeeze out some additional length.
<<else>>
You easily enter her and she smiles back, "@@.npc_technician;Mmm, a perfect fit!@@"
<</if>>
<<case 'spe'>>
She smiles as you easily enter her. "@@.npc_technician;Mmm, you're, like the perfect size for me!@@"
<<case 'none'>>
She smiles as you easily enter her. "@@.npc_technician;Mmm, a perfect fit!@@"
<<default>>
ERROR: unhandled <<=$player.body_ref.shrink_style>>
<</switch>>
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<br><br>
<<if $player.body.penissize[0] < 3 && !$scene.strapon>>
<<if $fetish.sph && $player.body_ref.shrink_style=='sph'>>
"@@.npc_technician;Come on, harder!@@" She teases as you do the best you can with what little you have.<br>
<br>
<<else>>
You move your hips in short, quick thrusts, aiming as best you can to poke away at her sensitive prostate.
<</if>>
<br><br>
<<if $npc_technician.relationship.her_caged>>
Uselessly reaching down to grab at her cage she squeezes as she bucks her hips in search of more stimulation, eventually seeming to get it as moments after you cum inside of her she gasps and dribbles out through her prison.
<<else>>
Reaching down she grabs her <<getWordPenis false>>, pumping away as you continue to thrust until, as if planned, the two of you cum together, her fountaining up as you spurt inside of her.
<</if>>
Lying back she smiles with a sigh. "@@.npc_technician;I love you,@@" she whispers and you say the same back.
<<elseif $scene.strapon>>
The strap-on slides easily into her and she grins, bucking her hips in encouragement. "@@.npc_technician;Come on, you can go a bit harder than that!@@" She states with a grin as you pick up the pace. Her words soon turn to moans of pleasure as her eyes roll back.
<<if $npc_technician.relationship.her_caged>>
Her hand reflexively reaches down only to be stymied by her cage. In response you redouble your efforts until she analgasms, shuddering and moaning as she leaks out of her prison.
<<else>>
Her hand reflexively reaches down to stroke her VERY hard <<getWordPenis false>> and it isn't long before she cums, hard.
<</if>>
<<else>>
Her hot hole squeezing tight every thrust draws a moan of pleasure from her lips
<<if $npc_technician.relationship.her_caged>>
as she paws uselessly at her cage. Leaning in close to "make up" for her imprisonment you lick her nipples as you continue to thrust, waiting until you hear her gasp and she goes rigid in climax before letting loose the floodgates of your own orgasm.
<<else>>
her hand reflexively reaches down to stroke her VERY hard <<getWordPenis false>> it isn't long before she cums, hard.
<</if>>
<</if>>
<br><br>
Catching her breath she pulls you on top of her for post-coital kisses and cuddles, the two of your spending the rest of the evening in bed before she reluctantly helps you find your things and sends you home.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
[<<moveTo 'room_foyer' "Home." 600 "<<if $scene.strapon>><<removeItem 'strapon_med' true>><<deleteItem 'strapon_med'>><</if>><<useClothSetPop 'tmp'>> <<if $scene.cage != '' && !$scene.strapon>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><</if>>">>]
<<else>>
Suddenly changing your mind you reply that, on second thought, maybe you aren't "up" for that tonight.<br>
<br>
Rather than being upset <<=setup.getNpcName("npc_technician","first")>> kisses you on the neck and pulls you closer "@@.npc_technician;Cold feet? That's fine, we can just cuddle, cuddling is good... actually, scratch that, cuddling is GREAT!@@"<br>
<br>
Her arms wrapped around you, you'd have to agree.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: first time fucked vaginally by technician choice
#status: FINISHED 0.7.12.0
#ignore_spell: p, g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<if $scene.sex>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.removeCage = false>>
<<if $scene.cage != "" && setup.isCage()>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.removeCage = $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You <<if $npc_technician.relationship.her_caged>>hurriedly remove her cage and <</if>>lay back on the bed as <<=setup.getNpcName("npc_technician","first")>> crawls over you. You can feel the hard, wet tip of her <<getWordPenis false>> teasing your <<if !$player.virgin.vaginal>>virginal <</if>>folds.<br>
<br>
"@@.npc_technician;You ready?@@" She whispers as she smiles down at you. You nod.<br>
<br>
You hold your breath as she guides her broadsword into your maiden's sheath. She is big and thick, but you are wet and willing and slowly, ever-so-gently she eases her way in. Your breaths come short and shallow and she watches you the whole time, her eyes half-squinted in concentration as she checks in.<br>
<br>
"@@.npc_technician;You okay?@@" She asks, "@@.npc_technician;No pain?@@"<br>
<br>
You shake your head. "@@.pc;P-p-perfect,@@" your moaned reply.<br>
<br>
She pushes deeper, her <<getWordPenis false>> spreading you <<if !$player.virgin.vaginal>> like never before<</if>>, hot and hard and curving up just right to <<if setup.checkItemTypeWorn("plug")>>work in concert with your anal occupant to <</if>>press against your g-spot.<br>
<br>
It is her turn to gasp as she sinks a little deeper and you feel her hips pressed against yours. Surprised you reach down, feeling her flesh against your own and you squeeze her ass in celebration.<br>
<br>
"@@.npc_technician;Fuck, you feel so good,@@" she pants. "@@.npc_technician;I'm going to start moving now, but I'll keep it slow, okay?@@"<br>
<br>
She starts to gently glide back and forth and you forget how to speak, moaning and squeezing her tight as she slowly pumps previously unimagined pleasure into your body.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> increases her pace ever so slightly and you moan with your first<<if $scene.vagVirgin>> ever<</if>> vaginal orgasm.<br>
<br>
"@@.npc_technician;I felt you clench...@@" She gasps. "@@.npc_technician;Oh, Goddess, you feel so good... I'm about to cum too... I think we're going to cum together... is it alright if I cum in you?@@"<br>
<br>
[<<moveTo 'event_technician_sex_2_vagina_first_2' 'Yes, cum in me!' 1200 "<<set $scene.pullOut=false>>">>]<br>
[<<moveTo 'event_technician_sex_2_vagina_first_2' 'No, pull out.' 1200 "<<set $scene.pullOut=true>>">>]<br>
<<else>>
<<if !$player.virgin.vaginal>>
The reality of losing your virginity like this, after going through so much it's too much for you. Despite all the crazy things that have happened in your life, you just don't feel ready.
<<else>>
Suddenly changing your mind you reply that, on second thought, maybe you aren't ready for this tonight.
<</if>>
<br><br>
Rather than being upset <<=setup.getNpcName("npc_technician","first")>> kisses you on the neck and pulls you closer. "@@.npc_technician;Cold feet? That's fine, we can just cuddle, cuddling is good... actually, scratch that, cuddling is GREAT!@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
She dashes into the kitchen for an ice-pack, wincing ever so slightly as she gets herself back into condition for you to lock her cage back where it belongs.
<</if>>
Her arms wrapped around you, you'd have to agree.<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: first time fucked vaginally by technician
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<set $scene.vagVirgin = !$player.virgin.vaginal>>
<<if !$player.virgin.vaginal>>
<<set $player.virgin.vaginal = "npc_technician">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_6'
0
'event_psychiatrist_session_vaginal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_vag'
0
'theme_church_confession_vag'
true
>>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_technician">>
<</if>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<<playerOrgasm>>
<<set $npc_technician.relationship.done_vag = true>>
<<include "adminTechnicianThreesomeChecker">>
<<if $npc_technician.relationship.relationship_stage < 2>>
<<set $npc_technician.relationship.relationship_stage = 2>>
<</if>>
<<set _themeId = setup.findThemeId('npc_technician', 'sex', 'theme_technician_sex_kinks')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_kinks'
10
'theme_technician_kink_1'
true
>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.pullOut>>
You pant and ask <<=setup.getNpcName("npc_technician","first")>> to pull out and she pushes away, popping free just in time.<br>
<br>
The feeling of her sliding out of you makes you orgasm again, and she cums a moment later, spurting across your belly
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction == 0>>
her quantity more than making up for your dry orgasm.
<<else>>
and mixing with your penis firing off its own joyous blast.
<</if>>
<<else>>
and your thigh.
<</if>>
<br>
"@@.npc_technician;Holy... wow,@@" she whispers, standing over you with her <<getWordPenis false>> in hand as she recovers. "@@.npc_technician;That was... wow, sorry let me clean that up for you.@@"<br>
<br>
She grabs a clean towel from the nightstand and wipes you off before sliding into bed next to you.
<<else>>
Your voice cracks as you practically shout "@@.pc;Cum in me!@@" and she obliges, her hips smoothly gliding her cock in and out of you for one, two, three more strokes before she grinds against you and blasts your insides.<br>
<br>
You can feel the intensity of her blast deep inside you and you cum as well, her face buried in your shoulder as she moans with climax and you squeeze her tight in every way, eager to milk every last drop of pleasure out of her as the two of you shudder in sustained simultaneous orgasm.<br>
<br>
Eventually the waves of ecstasy subside and she goes limp, half-rolling off of you before cuddling up against your side. "@@.npc_technician;Wow, that was... wow...@@" She whispers, kissing you. "@@.npc_technician;I hope that was good for you?@@"<br>
<br>
You nod and kiss her back, <<if $scene.vagVirgin>>you didn't quite know what to expect from a vaginal orgasm, but if they're all this powerful, well... you're going to really enjoy having more of them<<else>>you can't believe you went so long without a vaginal orgasm... each one seems better than the last<</if>>.
<</if>>
The two of you cuddle in post-orgasmic afterglow until it is finally time for you to get dressed<<if $npc_technician.relationship.her_caged>>, lock her chastity cage back in place,<</if>> and head for home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600 "<<useClothSetPop 'tmp'>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
</div>/*#
#desc: vaginally fucked by technician choice
#status: FINISHED 0.7.12.0
#ignore_spell: urgh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<if $scene.sex>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<else>>
<<if $scene.removeCage>>
<<include 'replaceCage_extendSissyomatic'>>
<</if>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<<else>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Gleefully <<=setup.getNpcName("npc_technician","first")>> lifts you into her arms and, staggering just a little bit, carries you into the bedroom to drop you on her bed.<br>
<br>
<<if $npc_technician.relationship.sissyomatic>>
You delay a moment for <<=setup.getNpcName("npc_technician","first")>> to strip and to get <<=ps(setup.getNpcName('npc_ai', 'formal'))>> for <<=ps(setup.getNpcName("npc_technician","first"))>> chastity device to retract, the added submissive step only seeming to turn your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> on more as she stands over you, hard <<getWordPenis false>> framed by its high-tech temporarily retracted prison.
<<elseif $npc_technician.relationship.her_caged>>
<<=setup.getNpcName("npc_technician","first")>> strips waits for you to unlock her before standing over you with a grin, her hard <<getWordPenis false>> sticking out proudly as she waits for you to get into position.
<<else>>
Her clothes disappear in a flash and she stands over you with a grin, her hard <<getWordPenis false>> sticking out proudly as she waits for you to get into position.
<</if>>
<br><br>
"@@.npc_technician;Alright, my lovely, love,@@" she purrs as she crawls onto the bed and lines herself up. "@@.npc_technician;Tonight I'm going to make love to you, to fuck you so gently you'll think you could cum forever... it'll be slow and smooth and passionate... unless you give the word, and then I'll rail like a jackhammer.@@"<br>
<br>
You moan and she kisses you, and immediately makes good on her promise by sliding smoothly into your cunt. First plunging only halfway in she begins slowly thrusting her hips, each stroke a little deeper as she nibbles your neck and whispers in your ear.<br>
<br>
"@@.npc_technician;You like that, my little sex-pot? You like it when <<switch $npc_technician.relationship.her_role>><<case 'dom'>>your <<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>I<<case 'sub'>>your slave<</switch>> fills your love tunnel with her wand of power?@@"<br>
<br>
You moan and she keeps slowly stroking as you whisper "@@.pc;Yes, yes, yes.@@"<br>
<br>
"@@.npc_technician;Urgh, your vagoober is so perfect... you're so perfect... I could fuck you like this forever...@@"<br>
<br>
You gasp in orgasm, the first climax only making you want her more...<br>
<br>
[<<moveTo 'event_technician_sex_2_vagina_3' "Beg her to fuck your hard." 1200 "<<set $scene.hard=true>>">>]<br>
[<<moveTo 'event_technician_sex_2_vagina_3' "This pace is perfect..." 1200 "<<set $scene.hard=false>>">>]
<<else>>
Suddenly having second thoughts you reply that, actually, you aren't quite as in the mood as you thought you were.<br>
<br>
"@@.npc_technician;Tease!@@" She jokes before giving you a kiss behind the ear<<if $npc_technician.relationship.her_caged>> she winces slightly as you replace her cage, and then takes a deep breath<</if>>. "@@.npc_technician;That's fine, we can do something else.@@"<br>
<br>
<<include "post_session_options">>
<</if>>
</div>/*#
#desc: vaginally fucked by technician hard/soft
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<if $scene.sex>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<else>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.hard>>
As good as <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>> feels gliding in and out of your love passage you want more. You NEED more. You bite your lip and look up at her, "@@.pc;Harder, <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","formal")>><<case 'neutral'>>my love<<case 'sub'>>slave<</switch>>.@@"<br>
<br>
She grins. "@@.npc_technician;As <<switch $npc_technician.relationship.her_role>><<case 'dom'>>my slave demands<<case 'neutral'>>my love commands <<case 'sub'>>my <<if $player.identify_as=="male">>Lord<<elseif $player.identify_as=="female">>Lady<<else>>Love<</if>> commands<</switch>>@@"<br>
<br>
You have but a moment to suck in a quick breath before she goes to town, accelerating from her languid pace to a jackhammer pounding that shakes the bed each time her hips slam into yours.<br>
<br>
You moan, cumming again and wanting more, her firm grip on your hips pinning you in place as she rails you hard and deep, her balls <<if setup.checkItemTypeWorn("plug")>>slapping against the base of your plug with each stroke<<else>>audibly slapping against your bare ass with each stroke<</if>>.<br>
<br>
"@@.npc_technician;You like that?@@" She pants and you moan your assent. In response she shoves you further onto the bed, lifting your hips and rolling you forward as she pounds you into the mattress.<br>
<br>
"@@.npc_technician;Almost. There.@@" She grunts as you moan another orgasm, your last before the dual explosion of her blasting you with cum, the full feeling setting off an equally powerful climax of your own that sees you
<<if $player.body_ref.penis>>
<<switch $player.body_ref.cumProduction>>
<<case 0>>
cumming dry and hard while you look right down the twitching barrel of your own <<getWordMyPenis>>.
<<case 1>>
blasting yourself in the face.
<<case 2>>
blasting yourself in the face with a massive load.
<<default>>
ERROR: unexpected <<=$player.body_ref.cumProduction>>
<</switch>>
<<else>>
gush girl-juices, spraying off <<=ps(setup.getNpcName("npc_technician","first"))>> abs to slash across your face.
<</if>>
<br><br>
Looming over you wide-eyed and exhausted she pants, swaying slightly as if she might pass over before slumping back far enough to let you slide off her cock and lay on the bed. She somehow finds the energy to crawl up next to you and kisses you on the cheek, one arm draped across your chest. "@@.npc_technician;Good for you?@@" She gasps, and you nod in response.<br>
<br>
"@@.npc_technician;Great... great...@@"<br>
<br>
Her voice trails off as the two of you cuddle together, slowly recovering from the frenetic climax.<br>
<br>
Eventually, your eyelids getting heavy, you conclude you had better get dressed and head out. You give her a hug before she somehow manages to drag her exhausted body back to its feet to help you dress<<if $npc_technician.relationship.her_caged>> have her cage locked back where it belongs,<</if>> and escort you out.
<<else>>
You gasp and moan and cum as she continues to fuck you softly. Each orgasm she gives you makes you want more and she keeps at it, screwing you gently, humping you sweetly, letting you savour each and every centimetre of her wonderful womanly wand, never once banging hips or pounding into you as she thrust on and on.<br>
<br>
You're panting from yet another orgasm, baffled at how she's been able to hold out, or maybe she somehow balled you so discreetly you didn't even notice?
<<if $player.body_ref.penis>>
It's hard to tell, and then you gasp as she slides out of you, taking both yours and her dicks between her hands as she thrusts them together. In a final blast you both cum,
<<switch $player.body_ref.cumProduction>>
<<case 0>>
her volume more than making up for your own dry climax.
<<case 1>>
the dual shotgun blast mingling in the air before arcing over you in thick ropes of cum.
<<case 2>>
your shotgun blast overpowering her sniper shot in a double gushing geyser of cum.
<<default>>
ERROR: unexpected <<=$player.body_ref.cumProduction>>
<</switch>>
<<else>>
In answer to your silent question she pulls out, sawing once through the folds of your sopping clit and then spurting her load across your belly with a gasp.
<</if>>
<br><br>
"@@.npc_technician;Whew...@@" she gasps breathlessly. "@@.npc_technician;That was... wow, dunno how I lasted that long but... it was fun!@@" She leans down and licks up a strand of your <<if $player.body_ref.penis>>commingled <</if>>cum before crawling up and giving you a kiss.<br>
<br>
Reaching off the side of her bed she grabs a towel and wipes things up before snuggling up next to you. The two of you enjoy a nice relaxing post-coital cuddle before it is finally time for you to head out.<<if $npc_technician.relationship.her_caged>> Of course, not without locking her up first.<</if>>
<</if>>
<br><br>
[<<moveTo 'room_foyer' "Home." 600 "<<useClothSetPop 'tmp'>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
</div>/*#
#desc: technician straps your ass/vag
#status: RELEASED 0.8.6.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<if $scene.anal>>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removeCage = false>>
<<set $scene.removePlug = $scene.plug && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<else>>
<<set $scene.removePlug = false>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<if !$player.sec_style.sex.vag_strap>>
<<set $player.sec_style.sex.vag_strap = "enthusiast">>
<</if>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> leads you into the bedroom where she pulls out a leather harness and a gorgeous dildo. "@@.npc_technician;Cast from mine own self.@@" She says with a wink as you slip out of your clothes and her own outfit seems to disappear leaving her freshly lubed glistening glory upgrade pointing at you as she guides you to the bed.<br>
<br>
You look up at her past the large dildo as she grins, leaning in for a kiss as
<<if $scene.removePlug>>
she slides the plug out of your rear. "@@.npc_technician;I'd say time for the real thing,@@" she whispers "@@.npc_technician;but I guess more appropriate would be MY turn...@@"
<<elseif $scene.removeCage>>
her nimble fingers unlock your chastity belt. "@@.npc_technician;Mmmm, such a prize, I don't know which I enjoy more, letting you out of prison for a conjugal visit... or locking you back up after I'm done...@@"
<<else>>
her fingers warm you up.
<</if>>
<br><br>
"@@.npc_technician;Goddess, you're so hot, I guess the strap-on is perfect... no need to worry about cumming too soon, I can just focus on fucking you until you can barely walk...@@"<br>
<br>
You moan in response as she slides into your <<if $scene.anal>>ass<<else>><<getWordVagina>><</if>>, sliding slightly across the bed as she pulls close... and deep.<br>
<br>
"@@.npc_technician;Mmm, I love those little gasps and moans you do,@@" her hips jerk and you pant, expert hip-movement driving the dildo against your <<if $scene.anal>><<if $player.body_ref.penis>>prostate<<else>>insides<</if>><<else>>g-spot<</if>>. "@@.npc_technician;Yeah... just like that... <<if $npc_technician.relationship.caged_anal.stage >= 3>>is this why you locked me up So I could fuck you all night without a worry for staying hard?<<else>>so hot... I could cum just from listening to you moan<<if $npc_technician.relationship.her_caged>>, even inside this cage<</if>>...<</if>>@@"<br>
<br>
You nod, already about to cum, your fingers digging into her back as her hips bounce hard and fast, the first of what prove to be many orgasms shuddering through your body as <<=setup.getNpcName("npc_technician","first")>> does her best to plow you until her hips finally give out and she flops onto the bed next to you.<br>
<br>
"@@.npc_technician;Spirit... *pant*... willing, but flesh... *pant* weak...@@" she gasps as you crawl over to share a kiss.<br>
<br>
"@@.npc_technician;Guess I did okay, then?@@" She states with a smirk as you roll your eyes as if to say "@@.pc;obviously,@@" the two of you cuddling for a bit until you recover, scraping yourself off the bed and staggering to your feet as you search for discarded clothes<<if $scene.removeCage>> and she locks you back up<<elseif $scene.removePlug>> and she returns your plug<</if>>.<br>
<br>
You paradoxically blush as you and your still "equipped" girlfriend share a parting kiss before you head home. True to her word, you do find yourself walking a bit funny...<br>
<br>
[<<moveTo 'room_foyer' "Home." 600 "<<useClothSetPop 'tmp'>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>><<if $scene.removePlug>><<wearItem $scene.plug true>><</if>>">>]
</div>/*#
#desc: technician double straps you
#status: RELEASED 0.8.6.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<applyExperience 'anal' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'bondage' 8 'normal' $SEEN_FRIEND>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> leads you into the bedroom where she pulls out a leather harness and not one, but two identical, and large, dildos. "@@.npc_technician;Cast from mine own self.@@" She says with a wink as you slip out of your clothes and her own outfit seems to disappear leaving her freshly lubed glistening twin upgrades pointing at you as she guides you face down onto the bed.<br>
<br>
<<if $scene.removeCage && $scene.removePlug>>
She squeezes your ass before reaching for your plug, sliding it free to leave your hole quivering in anticipation before she reaches under to unlock your chastity belt.
<<elseif $scene.removeCage>>
She squeezes your ass before unlocking your chastity belt.
<<elseif $scene.removePlug>>
She squeezes your ass before reaching for your plug, sliding it free to leave your hole quivering in anticipation.
<</if>>
Her hands move down your thighs, spreading your legs wider before she slaps a pair of ankle cuffs on you, binding you to the bedposts, your spread and exposed holes right on the edge of the bed... You feel her step up behind you, the lower of the two phalluses rubbing against your rear as she presses you into the mattress.<br>
<br>
"@@.npc_technician;Goddess you're so fucking hot and enticing like this...@@" she purrs, her slick silicone shaft sawing between your cheeks. "@@.npc_technician;<<if $npc_technician.relationship.caged_anal.stage >= 3>>Is this why you locked me up So I could fuck you all night without a worry for staying hard? <</if>>I can't wait to drive these two copies of myself into your hot holes... and from those little gasps I think you're even more excited...@@"<br>
<br>
You moan your assent as she presses more weight onto you, you want her so bad...<br>
<br>
She pulls back every so slightly... and then makes your dream come true, twin guided missiles taking you from desperate need to double-stuff filled in a moment as, with a single stroke, she goes from grinding on your outside to fully hilted and grinding your rear.<br>
<br>
"@@.npc_technician;So smooth, so sexy... I could fuck you like this all night...@@" She growls in your ear, leaning in close where you can feel her breath with each whispered word.<br>
<br>
Your <<if $player.body_ref.penis>>prostate<<else>>butt<</if>> and g-spot are already pulsing with pleasure, every shift of her hips sending sparks through your body as you strain against your bonds, unable to escape this pinned pleasure... not that you would want to flee the heaven of laying beneath your love.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> nips your ear, hands sliding down your bare arms to entwine with your fingers, holding you fully spread as her hips rise and fall. "@@.npc_technician;Fuck you're tight... even with all this lube you're making me work... but I'm more than up for the task. Holding both your hands... pounding both your holes... could anything be more perfect?@@"<br>
<br>
You moan into the bed-sheets as you shake your head — your thoughts may be muddled by the ecstasy coursing through your body, but you doubt even with a clear head you could imagine a more intimate, ecstatic coupling that <<=ps(setup.getNpcName("npc_technician","first"))>> sweaty body pressing against you, riding both your holes and holding you tight as she pushes you over the orgasm cliff... and then turns on the jets...<br>
<br>
[<<moveTo 'event_technician_sex_2_strap_2_double_2' "Yes!" 3600>>]
</div>/*#
#desc: technician finishes double strapping you
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_bedroom.png" setup.charImage("npc_technician","npc_technician_naked")>>
<div id="invframe" class="scrolltext">
Aided by dual ever-rigid dongs allowing her to remain laser-focused on your pleasure <<=setup.getNpcName("npc_technician","first")>> keeps on pounding, every thrust better than the last as you alternate anal, vaginal and full-body orgasms, <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>spurting all over<<else>>dripping down<</if>> the foot of her bed as you cum, and cum, and cum... until even her startling endurance finally gives out and she collapses on top of you in exhaustion.<br>
<br>
"@@.npc_technician;Good... *pant*... for you?@@" She whispers as she goes all but limp.<br>
<br>
You may well have had language fucked out of you as you are unable to muster much more than a grateful moan.<br>
<br>
She kisses you on the cheek, "@@.npc_technician;great... because that was so fucking fun... there's a reason I bought that double strap-on, after all and holy shit, but using it on you is better than I could have even imagined!@@"<br>
<br>
Her weight finally comes off as she slides off the bed and removes your cuffs. You roll over to see her beaming down at you, the strap-on falling to the floor before she dives back into the bed and pulls you in for some post-coital cuddling, the two of you taking at least as long as you spent coupling just enjoying the feeling of one another's grasp before noticing the time and concluding you should get dressed and head home.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600 "<<useClothSetPop 'tmp'>><<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>><<if $scene.removePlug>><<wearItem $scene.plug true>><</if>>">>]
</div>/*#
#desc: decide against strap-on sex with technician
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You change your mind about getting strapped this evening and <<=setup.getNpcName("npc_technician","first")>> playfully nibbles your ear and growls. "@@.npc_technician;You can be quite the teasing vixen, you no that? That's fine, though, just means when you're enthusiastically ready, well... it'll be all the better!@@"<br>
<br>
<<include "post_session_options">>
</div>/*#
#desc: technician takes you shopping
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "The Mall">>
<<else>>
<<set $player.location = "Cafe: Newtype IV">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/mall_inside.png" setup.charImage("npc_technician","npc_technician_casual")>>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName("npc_technician","first"))>> invitation and she excitedly grabs you by the hand, tossing credits onto the table to cover drinks and tip before leading you out of the cafe and through the mall.<br>
<br>
"@@.npc_technician;Come on! Oh, I'm so excited — trust me, this dress is going to look AMAZING on you!@@"<br>
<br>
You hurry to keep up as she leads the way to <<printShopName 'mall_apparel_store'>>.<br>
<br>
[<<moveTo "event_technician_spin_2" "Head inside." 300>>]
<<else>>
You decline <<=ps(setup.getNpcName("npc_technician","first"))>> invitation. She looks a little disappointed, but nods. "@@.npc_technician;Well, maybe some other time — let me cover the tab, in any case.@@" She drops credits for your drink and a tip on the table and the two of you depart to go your separate ways.<br>
<br>
[<<moveTo "room_mall" "Back to the mall." 180>>]
<</if>>
</div>/*#
#desc: technician has you try on dress
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> is clearly a woman with a plan as she barely even slows down to snatch not one, but two outfits off the rack as she leads the way to the changing rooms.<br>
<br>
She hands you the dress with a grin and opens one of the stalls. "@@.npc_technician;Okay, so... I slightly fibbed earlier. I actually saw two outfits that would look just PERFECT on you. One is casual and totally super cute...@@" she holds up what looks like a simple black dress, "@@.npc_technician;and this other one, well... KINDA SLUTTY!@@" In her other hand she raises up a shrug... and a VERY short grey skirt. "@@.npc_technician;So you can go ahead and try them both on and see which one best speaks to you...@@"<br>
<br>
She all but shoves the outfits into your hand as she shuffles you into the changing room, taking a seat right outside changing rooms, almost bouncing in her chair with excitement.<br>
<br>
[<<moveTo "event_technician_spin_3" "Consider your options..." 300>>]<br>
[<<moveTo "event_technician_spin_5_abort" "Actually... you aren't ready for this." 300>>]
</div>/*#
#desc: change for technician
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "corset_mini_dress_black">>
<<addItemSet "spinny_winner">>
<</if>>
<<if setup.checkItemWorn("corset_mini_dress_black") || setup.checkItemWorn("skimpy_summer_top_black") && setup.checkItemWorn("skimpy_summer_skirt_black")>>
<<initRoom>>
<<moveTo "event_technician_spin_4">>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You step into the changing room and consider the two outfits <<=setup.getNpcName("npc_technician","first")>> picked out for you...<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_technician_spin_4" "Change into the cute dress." 300 "<<if setup.checkItemTypeWorn('apron')>><<set _apron = setup.getItemFromType('apron')>><<removeItem _apron true>><</if>><<if setup.checkItemTypeWorn('jacket')>><<set _jacket = setup.getItemFromType('jacket')>><<removeItem _jacket true>><</if>><<wearItem 'corset_mini_dress_black' true>>">>]<br>
[<<moveTo "event_technician_spin_4" "Change into the slutty outfit." 300 "<<if setup.checkItemTypeWorn('apron')>><<set _apron = setup.getItemFromType('apron')>><<removeItem _apron true>><</if>><<if setup.checkItemTypeWorn('jacket')>><<set _jacket = setup.getItemFromType('jacket')>><<removeItem _jacket true>><</if>><<wearItem 'skimpy_summer_top_black' true>><<wearItem 'skimpy_summer_skirt_black' true>>">>]
<<else>>
<<hint $options "Change using the inventory">>
<</if>>
</div>/*#
#desc: technician has you spin
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'feminization' 7 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You step out of the changing room wearing the
<<if setup.checkItemWorn("corset_mini_dress_black")>>
cute dress,
<<if $player.sec_style.clothing.female == "">>
feeling a bit nervous dressed so obviously feminine
<<elseif setup.getTotalValue("feminization") >= 20>>
even with all your experience there is something about this moment that has you feeling a little nervous
<<else>>
even though you've been getting accustomed to dressing in a more feminine style, you feel a bit nervous
<</if>>
<<elseif setup.checkItemWorn("skimpy_summer_top_black") && setup.checkItemWorn("skimpy_summer_skirt_black")>>
slutty dress.
<<if $player.sec_style.clothing.female == "">>
Between the short-short-short skirt and revealing top your heart is racing at wearing something so risque and femme
<<elseif setup.getTotalValue("feminization") >= 20>>
Even with all your experience there is something about this moment that has you feeling a little nervous
<<else>>
Even though you've been getting accustomed to dressing in a more feminine style, this outfit has you feeling a bit slutty... and nervous
<</if>>
<<else>>
ERROR! unexpected outfit!
<</if>>
as you look over at <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
Whatever doubts you might have had are all but erased by the look of elated joy on <<=ps(setup.getNpcName("npc_technician","first"))>> face.<br>
<br>
"@@.npc_technician;Oh-my-goddess! You look, so, so wonderful! Like Plato talks about how the ideal only existing in the mind, and reality is but a pale imitation? But you, in that dress? Looks SOOOO much better than my mental image of the same... and that mental image was already pretty totes hawt!@@"<br>
<br>
<<if setup.checkItemWorn("corset_mini_dress_black")>>
You start to blush at the compliment but <<=ps(setup.getNpcName("npc_technician","first"))>> infectious enthusiasm will not be contained as she springs to her feet to stand in front of you. "@@.npc_technician;Okay, so you acting bashful is INCREDIBLY cute... but stop! You look great... actually, you know what you need?@@"
<<else>>
You feel tingles at the compliment but <<=ps(setup.getNpcName("npc_technician","first"))>> infectious enthusiasm will not be contained as she springs to her feet to stand in front of you. "@@.npc_technician;Okay, so wearing that outfit and trying to act bashful? Kind of a contradiction! A cute one... but yeah...@@" She leans in closer to whisper conspiratorially. "@@.npc_technician;You be dressed slutty, my dear...@@"
<</if>>
<br><br>
She takes a step back and puts her hands on her hips. "@@.npc_technician;Alright, you have a skirt, and that means you're fully equipped for one of the most devastating moves of self-empowerment — the spinny. All you gotta do is a bit of wind-up and then...@@" She shifts slightly and then spins in place, her skirt flaring out from momentum before she comes back around with a wide smile. "@@.npc_technician;See? Now you try!@@"<br>
<br>
[<<moveTo "event_technician_spin_5" "Take a spin..." 300 "<<set $scene.spin=true>>">>]<br>
[<<moveTo "event_technician_spin_5" "Actually... you don't want to do this..." 300 "<<set $scene.spin=false>>">>]
</div>/*#
#desc: react to spin
#status: FINISHED 0.8.3.0
#ignore_spell: 'fit
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.spin>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<<set $npc_technician.flags.spin = true>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('spin')>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.spin>>
You give an experimental spin,
<<if setup.getTotalValue("dexterity") > 10>>
well... more a pirouette that has <<=setup.getNpcName("npc_technician","first")>> gasp in awe.
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
a full three-sixty that sends your skirt flaring out in every direction.
<<else>>
well... try, you slightly over-rotate and stagger a bit before regain your balance.
<</if>>
<</if>>
<<if setup.checkItemWorn("corset_mini_dress_black")>>
Your chosen dress couldn't have been more perfect for this move — the light fabric flaring out elegantly before twisting to a halt to lay against your legs.
<<elseif setup.checkItemWorn("skimpy_summer_top_black") && setup.checkItemWorn("skimpy_summer_skirt_black")>>
Though your skirt is miniscule, still it flares out... which probably leaves NOTHING to the imagination for anyone watching... but that only makes you more excited.
<<else>>
ERROR! unexpected outfit!
<</if>>
<<switch setup.getAverageSecStyle()>>
<<case 'money'>>
You've been telling yourself that you're just making an economic decision each time you sacrificed a bit of your masculinity but this... well, you're having trouble doing the financial calculations on how turning in a circle while wearing a skirt could spark such a feeling of excitement.
<<case 'forced' 'strict'>>
For all that you've resisted things to date there's something about the spin that has your pulse pumping with excitement, feelings running through your head that you can't quite understand.
<<case 'voluntary' 'enthusiast'>>
You feel a rush of excitement, an exhilarating burst of energy running through your body in reaction to your little spin...
<<case 'obedient'>>
You don't quite understand, given that what you did was so simple... but there's no denying the exhilarating thrill that continues to pulse back and forth through your body in reaction to your little spin...
<<default>>
ERROR: unexpected average fem style: <<=setup.getAverageSecStyle()>>
<</switch>>
<br><br>
You look over to find <<=setup.getNpcName("npc_technician","first")>> beaming with pride. "@@.npc_technician;I recognise that look! That's euphoria! The feeling of joy and comfort at embracing and embodying who you really are. Pretty fucking great, right?@@"<br>
<br>
You're still a bit stunned,
<<switch setup.getAverageSecStyle()>>
<<case 'money' 'forced' 'strict'>>
but you resist reacting.
<<case 'voluntary' 'enthusiast'>>
but you nod eagerly.
<<case 'obedient'>>
but you nod reflexively.
<<default>>
ERROR: unexpected average fem style: <<=setup.getAverageSecStyle()>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> chuckles. "@@.npc_technician;Well, obviously you HAVE to keep the 'fit — but if you aren't ready to wear it out, that's fine too, progress is progress, take whatever size steps you need. I'll just go pay while you grab your stuff, alright? Oh, and keep the other one too — variety is the spice of life, after all!@@"<br>
<br>
[<<moveTo "event_technician_spin_6" "Return to the changing room." 180>>]
<<else>>
You feel suddenly self-conscious and tell <<=setup.getNpcName("npc_technician","first")>> that you want to change and go home...<br>
<br>
Immediately <<=setup.getNpcName("npc_technician","first")>> is holding your hand, her face twisted with earnest concern. "@@.npc_technician;Sorry! I didn't mean to push you past your comfort zone only... well, I can get a little enthusiastic, especially when I'm around someone so cool and cute... come on it's just a little spin, nobody else is around... give it a try, for me?@@"<br>
<br>
[<<moveTo "event_technician_spin_5" "Take a spin..." 300 "<<set $scene.spin=true>>">>]<br>
[<<moveTo "event_technician_spin_5_abort" "Stand firm and leave." 300>>]
<</if>>
</div>/*#
#desc: abort spin
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<if setup.checkItemOwned('corset_mini_dress_black')>>
<<deleteItem 'corset_mini_dress_black'>>
<</if>>
<<if setup.checkItemOwned("skimpy_summer_top_black")>>
<<deleteItem "skimpy_summer_top_black">>
<<deleteItem "skimpy_summer_skirt_black">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You stand firm, even in the face of <<=setup.getNpcName("npc_technician","first")>> sad disappointment. She lets you go, even if she is a bit puppy-eyed as you retreat back into the fitting room to change back into what you came in.<br>
<br>
She takes the dress and puts it back on its hanger with a sigh. "@@.npc_technician;Well... maybe some other time. And, like... don't worry about this, sometimes it takes a bit of time to be ready to try things — but I'm here for the long haul so I'll catch you later!@@"<br>
<br>
She almost seems ready to lean in for a kiss goodbye, but instead just waves as she dashes off to put the dress away and you head back to the mall alone.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 180>>]
</div>/*#
#desc: change after spin
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory=false>>
<<set $player.inside=true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
You duck back into the private changing stall to collect your things. Your heart beats as you look at your reflection... and then beats even faster when you give another... private "spinny." <br>
<br>
<<if setup.getTotalValue("feminization") >= 20>>
<<printThought "Even after all this time... that's still a thrill...">>
<<else>>
<<printThought "I could get used to this feeling...">>
<</if>>
<br><br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_technician_spin_7" "Return to <<printShopName 'mall_apparel_store'>>." 30 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[@@.link_locked;You're not going to leave the changing booth dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<</if>>
<<if $options.ezchange>>
[<<moveTo "event_technician_spin_7" "Put your previous clothes back on." 180 "<<useClothSetPop 'tmp'>><<set $player.cutscene.lockinventory=true>>">>]
<</if>>
</div>/*#
#desc: change after spin
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You finish in the changing room and head out to meet <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<if setup.checkItemWorn('corset_mini_dress_black')>>
She grins at your still wearing the dress, and you do a little side-to-side swish.<br>
<br>
"@@.npc_technician;Best. Purchase.@@" She states as she walks you out of the store.
<<elseif setup.checkItemWorn("skimpy_summer_top_black") && setup.checkItemWorn("skimpy_summer_skirt_black")>>
She grins at your still wearing the outfit, and you do a little side-to-side swish of your miniscule skirt.<br>
<br>
"@@.npc_technician;Unf, keep that up and I'll succumb to the urge to rip those hot things off of you. You look ravishingly radiant right now.@@" She states as she walks you out of the store.
<<elseif setup.checkItemWorn("skimpy_summer_top_black") || setup.checkItemWorn("skimpy_summer_skirt_black")>>
She raises an eyebrow at your wearing part of the outfit she picked out. "@@.npc_technician;Already mix and matching your own outfits! I love it! Make fashion yours!@@"
<<else>>
She makes no comment that you're no longer wearing any of the clothes she picked out for you as she walks you out of the store.
<</if>>
<br><br>
You thank her again for the gift and head your separate ways.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 180>>]
</div>/*#
#desc: talk to technician about body changes
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<computeGenitalThemes $player $npc_technician 'genitalthemes'>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> has you stand up and show off as she grins, her eyes hungrily running over your body.<br>
<br>
<<if $scene.returnPassage == "event_technician_dinner_snuggle_1">>
"@@.npc_technician;Yum. I know we just finished dinner, but you. Are. A. DISH.@@"
<<else>>
"@@.npc_technician;Yum. You're so heckin cute I sometimes I can't believe how fucking sexy my <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>> looks. But... damn are you hawt!@@"
<</if>>
<br><br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> grins up at you...<br>
<br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes - vagina
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.cage == "" || $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
You blush and show her your vagina.<br>
<br>
"@@.npc_technician;Mmm... so hot? Mind if I have a taste?@@"<br>
<br>
[<<moveTo "event_technician_theme_genitals_vagina_a" "Say sure." 180 "<<set $scene.yes=true>>">>]<br>
[<<moveTo "event_technician_theme_genitals_vagina_a" "Maybe some other time." 60 "<<set $scene.yes=false>>">>]
<<else>>
You blush and tell her there's a vagina locked under your chastity belt.<br>
<br>
"@@.npc_technician;So sleek and sexy, knowing its safely under lock and key makes me want it even more... maybe someday you'll let me taste it? Or fuck it? No pressure, though, I only want to do what makes you happy but... well... I have a bit of a passion for making lady bits feel way more than just happy, just saying.@@"<br>
<br>
You blush at her offer.<br>
<br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
<</if>>
</div>/*#
#desc: talk to technician about body changes - vagina
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.yes>>
<<if $scene.cage == "">>
You expose yourself and <<=setup.getNpcName('npc_technician', 'first')>> crawls over.
<<elseif $npc_technician.relationship.keyholder>>
You exposed your chastity belt and <<=setup.getNpcName('npc_technician', 'first')>> quickly produces the key.
<<else>>
You pull out the key to your chastity belt and unlock it.
<</if>>
<br><br>
<<=setup.getNpcName('npc_technician', 'first')>> extends what you suddenly realise is quite the long tongue; your thoughts instantly flitting away as she runs it between your folds, flicking it against your clit before digging deep and then leaning back with a wet face.<br>
<br>
Licking her lips she grins. <<if $fetish.sissy>>"@@.npc_technician;Mmm, there is nothing like the taste of sissy, I grade your cunny 11 out of 10 would eat out again!@@"<<else>>"@@.npc_technician;Mmm, you taste even better than you look... and you look REALLY good.@@"<</if>><br>
<br>
<<if $scene.cage == "">>
You blush as she slides back onto the couch.
<<else>>
You blush as she helps lock you back into your chastity belt. "@@.npc_technician;For safe keeping... you're, like... better than truffles and foie gras, so it really makes sense to keep you locked!@@"
<</if>>
<<else>>
You blush and shake your head. "@@.npc_technician;Some other time, maybe.@@" <<=setup.getNpcName('npc_technician', 'first')>> says with a smile. "@@.npc_technician;... or not, whatever makes you comfortable. Just know that I've been told I am a monoglot who has been told she is a VERY cunning linguist.@@"
<</if>>
<br><br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes - penis
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up your
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small member
<<case 2 3>>
penis
<<case 4 5>>
large penis
<<case 6>>
massive cock
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
and show it to your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case 'sub'>>slave<</switch>>.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
"@@.npc_technician;So cute and dainty and beautiful. I rate it 11 out of 10, would suck any time!@@"
<<case 2 3>>
"@@.npc_technician;So lovely! I rate it 11 out of 10, would suck any time!@@"
<<case 4 5>>
"@@.npc_technician;So big and beautiful! Just like mine! I rate it 11 out of 10, would suck any time!@@"
<<case 6>>
"@@.npc_technician;Tell you the truth... it's a bit intimidatingly large, but somehow that makes me even more excited to conquer it... or maybe have it conquer me? Either way, I rate it an 11 out of 10 dick. Big and beautiful and attached to the bestest <<switch $npc_technician.relationship.her_role>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Dom<</switch>><<case 'dom'>>Princess<<case 'neutral'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>hunny-bunny<</switch>><</switch>> in the whole world!@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
She grins. "@@.npc_technician;And, seriously, whenever you're up for it, you gotta fuck me — you know how it is. The thing I want most is you. In me.@@"<br>
<br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes - both
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up your dual genitals.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks on in awe as you show off your "complete" set of equipment.<br>
<br>
"@@.npc_technician;Holy fuck, that's so hot. My very own <<if $fetish.futanari>>futa<<else>>versatile succubus of a<</if>> <<switch $npc_technician.relationship.her_role>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Dom<</switch>><<case 'dom'>>Princess<<case 'neutral'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>hunny-bunny<</switch>><</switch>>... goddamn I'm the luckiest girl in the world!@@"<br>
<br>
You blush and she grins even wider. "@@.npc_technician;Seriously, though, whenever you want — fuck me, fuck you, both, with others... I am down to clown with you in pound-town!@@"<br>
<br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes - knot
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You show her your knotted cock.<br>
<br>
"@@.npc_technician;Mmmfff, that is, like... so fucking hot... and thinking of that knot swelling inside of me... locking you to me, neither of us able to escape until you're "finished"... oh yeah, I am 100% wanting to be "that bitch" for you some night...@@"<br>
<br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes - horse
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You show her your large horse cock.<br>
<br>
"@@.npc_technician;Oh, wow, that is like... REALLY hot... A bit scary, tbh but... well, I got now problem using a padded seat-cushion and drinking soup for a week if it means I can feel that monster pounding inside of me!@@"<br>
<br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes - dragon
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You show her your frilled and knotted dragon cock.<br>
<br>
"@@.npc_technician;Okay, so... hear me out. I'm not a virgin but... I have dreamed my whole life of being sacrificed to something like that. Like I'll TELL the villagers that my sacrifice is for them, but the truth is? Yeah, I wanna be with the dragon and make love to that big, magnificent thing on your bed of treasure over and over and over again.@@"<br>
<br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes- balls
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName("npc_technician","first")>> about your balls.<br>
<br>
She giggles. "@@.npc_technician;Sorry, but, like... I've always thought it was kind of a funny word... "balls"@@" She laughs again. "@@.npc_technician;Other than that, well... dunno what you want to say — save that you can call my face your personal tea-cup, because that's where the tea-bag goes!@@"<br>
<br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes - noballs
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You show her your sleek lack-of-balls.<br>
<br>
"@@.npc_technician;Way cool! You look all sleek like some sort of alien secret agent... I am very much yes to this development!@@"<br>
<br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about body changes - breasts
#status: FINISHED 0.7.12.0
#ignore_spell: mwahaha
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Lair of the Tech Wizard'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You admit that you maaay have had some work done on your breasts.<br>
<br>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
<<=setup.getNpcName("npc_technician","first")>> grins as she oogles your breasts. "@@.npc_technician;Y'think? Your boobies? Your massive fucking titties? Your super stuffed up milkies? Your honker bonker doinky boinkies? Your fucking fabric stretching wind flapping gravity-welling sex mounds? Those super-duper ultra hyper god damn mother fucking milk makers? Yeah, I think they're pretty great!@@"
<<case 'large'>>
<<=setup.getNpcName("npc_technician","first")>> smiles as she oogles your breasts. "@@.npc_technician;Yeah... those are some nice-ass tits. You know what that means? You're the big tiddy goth <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>>! Mwahaha! <<if setup.checkVisibleClothingTag('goth') > 60 && setup.getCurrentMakeup() == "expertmakeup">>Hell, you're already dressed and made up for the occasion!<<elseif setup.checkVisibleClothingTag('goth') > 60>>Hell, you're already dressed for the occasion! Just need the right makeup...<<elseif setup.getCurrentMakeup() == "expertmakeup">>You're even made up for it already! Just need the right clothes...<<else>>Well, with the right clothes and makeup...<</if>>@@"
<<case 'medium'>>
<<=setup.getNpcName("npc_technician","first")>> grins as she eyes your breasts. "@@.npc_technician;Yup, those are some nice tits! A little bit bigger than mine, sure, but I'm not jealous, after all, it means I get to see 'em easier! Who's the lucky one now?@@" She winks.
<<case 'small'>>
<<=setup.getNpcName("npc_technician","first")>> smiles at your small tits. "@@.npc_technician;Itty bitty titty committee unite! Don't get me wrong, if you wanted to become the big tiddy goth <<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>> I wouldn't be opposed, but what you've got now is just so heckin cute!@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
<<printNpcTheme 'npc_technician' 'genitalthemes' 'event_technician_theme_genitals_root'>><br>
[<<moveTo $scene.returnPassage "Get back to snuggling." 60>>]
</div>/*#
#desc: talk to technician about the bodyshop
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<set $scene.otherSurgery = -1 != setup.findThemeId('npc_technician', 'roleplay', 'theme_technician_other_surgery')>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You mention the New U Bodyshop that
<<if $scene.otherSurgery>>
she told you about.
<<else>>
recently opened.
<</if>>
<br><br>
<<if State.hasPlayed("event_bodyshop_wake_1")>>
You add on that you've visited and, well, they are capable of some amazing work.<br>
<br>
She nods. "@@.npc_technician;Yup. Medical science these days can do some pretty awesome stuff which is great! Like, what genitals you have doesn't really mean anything on your own, but there's something for getting your body to be the one YOU want rather than having to put up with what was foisted upon you by fate. So... were you thinking of changing something?@@"<br>
<br>
[<<moveTo "event_technician_theme_bodyshop_2" "You weren't planning on changing anything." 60 "<<set $scene.option='none'>>">>]<br>
<<if $player.body_ref.penis>>
<<if $player.body.penissize[1] == 6>>
[@@.link_locked;Your <<getWordMyPenis>> is already as large as medical science is safely capable of providing.@@]<br>
<<else>>
[<<moveTo "event_technician_theme_bodyshop_2" "You were contemplating a bigger penis." 60 "<<set $scene.option='grow'>>">>]<br>
<</if>>
<<if $player.body.penissize[1] <= 0>>
[@@.link_locked;Your <<getWordMyPenis>> is already as small as it can be.@@]<br>
<<else>>
[<<moveTo "event_technician_theme_bodyshop_2" "You were contemplating a smaller penis." 60 "<<set $scene.option='shrink'>>">>]<br>
<</if>>
<<if $player.body_ref.vagina>>
[@@.link_locked;You already have a <<getWordVagina>>.@@]<br>
<<else>>
[<<moveTo "event_technician_theme_bodyshop_2" "You were thinking about getting a vagina." 60 "<<set $scene.option='vagina'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_technician_theme_bodyshop_2" "You were thinking about getting a penis." 60 "<<set $scene.option='penis'>>">>]<br>
<</if>>
<<if !$player.body_ref.penis || !$player.body_ref.vagina>>
[<<moveTo "event_technician_theme_bodyshop_2" "You were contemplating a dual-genital situation." 60 "<<set $scene.option='both'>>">>]
<</if>>
<<else>>
She nods. "@@.npc_technician;Were you thinking of getting something done? <<if $scene.otherSurgery>>Obviously they did great for <<=setup.getNpcName("npc_rpg_warlock","first")>><<else>>I've heard some good things about them and, well...<</if>> Medical science these days is pretty amazing so if changing things would make you happier? Do it — genitals shouldn't define you, your body should reflect who YOU are, and if that requires a bit of work, well, trust me, it's worth it. if you don't mind me asking, what were you thinking of doing?@@"<br>
<br>
[<<moveTo "event_technician_theme_bodyshop_2" "You weren't planning on changing anything." 60 "<<set $scene.option='none'>>">>]<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_technician_theme_bodyshop_2" "You were contemplating a bigger penis." 60 "<<set $scene.option='grow'>>">>]<br>
[<<moveTo "event_technician_theme_bodyshop_2" "You were contemplating a smaller penis." 60 "<<set $scene.option='shrink'>>">>]<br>
[<<moveTo "event_technician_theme_bodyshop_2" "You were thinking about getting vaginoplasty." 60 "<<set $scene.option='vagina'>>">>]<br>
<<else>>
[<<moveTo "event_technician_theme_bodyshop_2" "You were thinking about getting a penis." 60 "<<set $scene.option='penis'>>">>]<br>
<</if>>
<<if !$player.body_ref.penis || !$player.body_ref.vagina>>
[<<moveTo "event_technician_theme_bodyshop_2" "You were contemplating a dual-genital situation." 60 "<<set $scene.option='both'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: talk to technician about the bodyshop procedures
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.option>>
<<case 'none'>>
You tell <<=setup.getNpcName("npc_technician","first")>> that you weren't thinking about getting anything done.<br>
<br>
"@@.npc_technician;Cool! Not that you're getting anything done, or not, but that you feel happy and comfortable as you are, like, that's the goal, innit? But pay attention to yourself and know that if you change your mind in the future? That's totally valid, the technology is there, take advantage of it, it's your body, make it YOU.@@"
<<case 'grow'>>
You tell <<=setup.getNpcName("npc_technician","first")>> that you were thinking of getting a larger <<getWordMyPenis false>>.<br>
<br>
She grins. "@@.npc_technician;Now that's not an urge that has ever gotten anyone into trouble!@@" She laughs and you get a shiver up your spine at your catastrophic drug experience. "@@.npc_technician;On a serious note, though, so long as you're doing a proper medical procedure that's fine — get dat big dicc you always wanted. It's the shady other stuff of strange herbs or silly exercises, that's the scams that can hurt you in more than the pocketbook.@@"
<<case 'shrink'>>
You tell <<=setup.getNpcName("npc_technician","first")>> that you were thinking of a smaller <<getWordMyPenis false>>.<br>
<br>
She smiles. "@@.npc_technician;How sweet! Now, obviously I'm quite the fan of having a big dicc, but that's me. What's right for me and my body, well... that ain't universal. If you want to be smaller, well? Do it, get the dick that you want for YOU, not for anyone else.@@"
<<case 'vagina'>>
You tell <<=setup.getNpcName("npc_technician","first")>> that you were thinking about getting SRS to have a vagina.<br>
<br>
She nods. "@@.npc_technician;It's a big decision in the abstract, but actually a pretty straightforward procedure with current tech. It's literally just taking what you've got and, like... rearranging it to be what you want — no chance of rejection, no crazy other things just your body, as it should be, rather than what was foisted on you by fate. <<if $scene.otherSurgery>>Obviously <<=setup.getNpcName("npc_rpg_warlock","first")>> had great results with her change, if that's what you want to do, too? Well, we're all rooting for you!<<else>><<=setup.getNpcName("npc_rpg_warlock","first")>> has actually been planning getting that done for a while, that's what she wants so... that's great!<</if>> On the other hand, like... me and <<=setup.getNpcName("npc_maid","first")>> are happy with what we've got hanging. It's all about what is right for YOU. Everyone's journey is different, y'know?@@"
<<case 'penis'>>
You tell <<=setup.getNpcName("npc_technician","first")>> that you were thinking about getting SRS to go back to having a penis.<br>
<br>
She nods, "@@.npc_technician;Well, that's experience for you, innit? If you've decided you were happy with a penis, well... do it, the important thing is figuring out what's right for you and making that happen. The technology is there, take advantage of it, listen to yourself, and make the decision that's right for you. Your friends are here to support you, however you end up deciding you want to be.@@"
<<case 'both'>>
You bite your lip as you relay to <<=setup.getNpcName("npc_technician","first")>> your somewhat naughty dream of having cock and pussy.<br>
<br>
She grins. "@@.npc_technician;Well hello <<if $fetish.futanari>>future futa<<else>>insatiable<</if>>. That level of intensity still feels like something out of fantasy but, well... from my understanding the medical technology is there to have both organs fully functioning and if that's your dream well... go for it, you sex-demon you!@@"
<<default>>
ERROR: unexpected scene.option <<=$scene.option>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: technician comments on your makeup and gives tips
#status: RELEASED 0.6.0.0
#ignore_spell: b,h,g
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<if !setup.computerHasSearch($computer, 'Online Makeup Tutorials')>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addPopUpText "misc" 'New Link "Makeup Tutorial" added'>>
<</if>>
<<if !$scene.enthusiastMakeup>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<<if $scene.makeup != "" && $scene.makeup != "nomakeup">>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_5'
5
'event_technician_makeup_2'
true
>>
<<set _themeId = setup.findThemeId('npc_technician', 'crossdressing', 'theme_technician_crossdress_2')>>
<<set $npc_technician.themes.crossdressing[_themeId].repeatable = false>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.enthusiastMakeup>>
<<=setup.getNpcName('npc_technician', 'first')>> rolls her eyes. "@@.npc_technician;We literally just talked about this! And sure, you still look great these handful of minutes later, and I appreciate the enthusiasm... but maybe wait until you've checked out some of those videos I sent you before talking about it again?@@"
<<else>>
"@@.npc_technician;Oh, makeup! What fun, let me have a look at you...@@" <<=setup.getNpcName('npc_technician', 'first')>> enthusiastic states while sliding closer to you.
<<if $scene.makeup == "">>
Her enthusiasm takes a heavy blow however, as she realises, that you're not wearing any makeup whatsoever.<br>
<br>
"@@.npc_technician;Hmm, either you have the lightest touch EVER or... you're not actually wearing makeup. Given what I know about <<if $fetish.sissy>>sissy <</if>>exuberance, I'm going to guess it's option b. Too bad, you should really watch some videos and give it a shot, you'd be amazed at the transformation a bit of face-paint can enact.@@"
<<else>>
<<switch $scene.makeup>>
<<case "nomakeup">>
"@@.npc_technician;Hmm, going for the subtle "not actually wearing makeup" look... I like it though... I think you'd look even better if you went for it a bit more, really took advantage of the transformative power of makeup to give yourself the feminine face you deserve.@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;I also like that you've taken care to keep things up, nothing ruins the "no makeup" look like letting it run or smudge.@@"
<<case 2>>
"@@.npc_technician;Just one girl to another... you should probably do a bit of upkeep soon, the no makeup look is kind of ruined once it starts to smudge or run.@@"
<<case 3 4>>
"@@.npc_technician;Oh, and just fyi — the whole "no-makeup" effect is kind of ruined when you let your makeup get... well... ruined.@@"
<</switch>>
<<case "normalmakeup" "camgirl" "egirl">>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;Looks like you checked out some of those online tutorials, huh? Isn't it amazing what a bit of makeup can do? Your face looks so much more soft and feminine now, it's practically magic!@@"
<<case 2>>
"@@.npc_technician;Testing out some of those online makeup tutorials? You go, girl! Though, you might want to do a bit of maintenance, the blush is coming off the rose a bit, as they say.@@"
<<case 3>>
"@@.npc_technician;Hmm, it LOOKS like you've been practicing your makeup but, well, if it looked good before it's definitely ruined now.@@"
<<case 4>>
"@@.npc_technician;I know I suggested you try on makeup but... you know you have to maintain it and reapply it? I hate to say it, but right now you just look like a mess.@@"
<</switch>>
<br><br>
"@@.npc_technician;So, if you'd like, I could give you a few tips on how to take your makeup skills to the next level. Just lemme know!@@"
<<case "expertmakeup">>
<<=setup.getNpcName('npc_technician', 'first')>> spends a few moments just smiling at you until you find yourself looking away and blushing.<br>
<br>
"@@.npc_technician;I. LOVE. What you've. Done!@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;Perfect, feminine, beautiful... this is the lovely face you deserve!@@"
<<case 2>>
"@@.npc_technician;The only issue is, well... things are wearing down a bit, nothing a few minutes in the mirror couldn't address, but you should really take the time sooner rather than later.@@"
<<case 3 4>>
"@@.npc_technician;Or, rather, that would be what I'd say if your makeup wasn't all but ruined. Come on, girlfriend! I can tell you put in some work painting yourself up, but you gotta remember to do the maintenance too!@@"
<</switch>>
<<case "ultimatebimbo">>
<<=setup.getNpcName('npc_technician', 'first')>> looks at you wide-eyed.<br>
<br>
"@@.npc_technician;Wow... not to put too fine a point on it but, well... you kind of look like a slut. I mean, it's hawt with a capital H, but... waaaaaay slutty.@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;The artistry is perfect though, just expertly applied, so grats there!@@"
<<case 2>>
"@@.npc_technician;You're looking a bit rough around the edges though with a look like that... maybe that was intentional?@@"
<<case 3 4>>
"@@.npc_technician;The fact that you look like you just finished getting face-fucked for like... an hour... well, it's a bold choice, but it's almost working... for a certain definition of work.@@"
<</switch>>
<<case "sissy_doll">>
<<=setup.getNpcName('npc_technician', 'first')>> looks at you wide-eyed.<br>
<br>
"@@.npc_technician;Wow... you look so cute, like a sweet, <<if $fetish.sissy>>sissy<<else>>feminine<</if>> doll...@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;The artistry is perfect though, just expertly applied, so grats there!@@"
<<case 2>>
"@@.npc_technician;You're looking a bit rough around the edges so maybe a slightly messy, naughty doll?@@"
<<case 3 4>>
"@@.npc_technician;Well, you would, if the effect was not somewhat ruined by the state of disrepair your makeup is currently in.@@"
<</switch>>
<<case "moviestar">>
<<=setup.getNpcName('npc_technician', 'first')>> just stares at you in awe.<br>
<br>
"@@.npc_technician;Wow, did you do that yourself? I guess the shoe's on the other foot now 'cause I should be asking YOU for tips!@@"<br>
<br>
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
"@@.npc_technician;Seriously, though, you look like royalty, just utter perfection and beauty, I'd say I was jealous but, well... I'm the one who gets to look at you!@@"
<<case 2>>
"@@.npc_technician;No offense though, but... you should do a bit of touch-up soon or all your hard work is going to be for nothing, and that would be a real shame, like having a mint condition foil Alesha and forgetting to double sleeve!@@"
<<case 3 4>>
"@@.npc_technician;It's a shame that you let things fall apart. I mean, I can still tell that there was real artistry at the start, but now... it's like looking at roman ruins and imagining what it looked like back when Caesar was still around.@@"
<</switch>>
<<default>>
"@@.npc_technician;Hmm, an interesting choice of makeup, I don't really know what to say about it.@@"
<</switch>>
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: technician comments on your makeup and gives tips
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hasMakeup = $player.makeup.template != "">>
<<if $scene.hasMakeup>>
<<unlockMakeup "expertmakeup">>
<<setThreshold "makeup" "online_makeup" "technician_tips">>
<<set $player.makeup.template = "expertmakeup">>
<<set $player.makeup.messed = 0>>
<<set _themeId = setup.findThemeId('npc_technician', 'crossdressing', 'theme_technician_crossdress_5')>>
<<set $npc_technician.themes.crossdressing[_themeId].repeatable = false>>
<</if>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.hasMakeup>>
<<=setup.getNpcName('npc_technician', 'first')>> looks at your makeup and immediately grins and drags you straight to the back of the cafe where there's a couple of private bathrooms. Leading you into the first one you find yourself facing a "fully armed and operational" battle station.<br>
<br>
"@@.npc_technician;The girls have to be looking perfect to go on-shift and well, I'm sure <<=setup.getNpcName('npc_maid', 'first')>> would be fine with us taking advantage of the facilities to get you done up proper.@@"<br>
<br>
Plopping you down in the chair, <<=setup.getNpcName('npc_technician', 'first')>> strips off your makeup and then step by step guides you through how to apply it even better, tweaking the routine you had figured out from videos to better suit your particular complexion and facial features.<br>
<br>
It's nothing that much different from what you've done before and yet the difference is stunning. Darker and bolder than what you were doing previously, you never would have thought such minor tweaks of colour and lines could make such a big difference. Whereas before you looked good, now you look amazing, practically radiating feminine beauty with a sexy goth edge.<br>
<br>
"@@.npc_technician;Now THAT is what I'm talking about! You just remember what I showed you and keep practicing!@@"<br>
<br>
You thank her for the help and head back to your table.
<<elseif $player.makeup.permanent != "">>
<<=setup.getNpcName('npc_technician', 'first')>> looks at your makeup and half frowns. "@@.npc_technician;Not that I'm not impressed with that permanent style, it certainly saves time! But, well... there's just something about the ritual of applying it yourself, you know? If you ever decide to go back to that, I might be able to teach you a thing or two.@@"
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> frowns. "@@.npc_technician;No makeup? Not that you aren't lovely without it but... well, trust me when I say it makes you feel so much better when you have it on. I know it can be a bit intimidating to learn, but believe in yourself and well, maybe once you've mastered the basics I'll be able to show you another thing or two.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about role playing
#status: FINISHED 0.5.0.0
#ignore_spell: homebrew
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene.canjoin = $npc_technician.flags.sawyouinfemaleclothes && (($player.sec_style.body.name != "") && ($player.sec_style.clothing.female != ""))>>
<<set $scene.variant = "">>
<<if $npc_technician.flags.rpg_campaign.session > 0 && (!$currentTasks.hasOwnProperty('technician_roleplay_1') || $currentTasks.technician_roleplay_1.finished) && (!$currentTasks.hasOwnProperty('technician_roleplay_punish_1') || $currentTasks.technician_roleplay_punish_1.finished) && (!$currentTasks.hasOwnProperty('technician_roleplay_surgery') || $currentTasks.technician_roleplay_surgery.finished) && (!$currentTasks.hasOwnProperty('rpg_session_gangbang') || $currentTasks.rpg_session_gangbang.finished)>>
<<if $npc_technician.flags.rpg_campaign.session > 7 && $player.virgin.blowjob>>
<<if !$events.hasOwnProperty('rpg_no_show_punish')>>
<<addEvent 'rpg_no_show_punish'>>
<</if>>
<<if !$currentTasks.hasOwnProperty('technician_roleplay_punish_1')>>
<<include "addRPGMissedSessionTask">>
<<set $scene.variant = "punish_add">>
<<elseif $currentTasks.technician_roleplay_punish_1.finished>>
<<if $currentTasks.technician_roleplay_punish_1.condition == "Complete">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_punish_1' _tmpDate>>
<<set $scene.variant = "punish_refresh">>
<<else>>
<<include "addRPGSessionTask">>
<<set $scene.variant = "punish_reset">>
<</if>>
<<else>>
<<set $scene.variant = "punish_coming">>
<</if>>
<<else>>
<<include "addRPGSessionTask">>
<<set $scene.variant = "reinvite">>
<</if>>
<<elseif $currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks.technician_roleplay_surgery.finished || ($currentTasks.hasOwnProperty('rpg_session_gangbang') && !$currentTasks.rpg_session_gangbang.finished)>>
<<set $scene.variant = "special">>
<<elseif $npc_technician.flags.rpg_campaign.session > 0 || ($currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks.technician_roleplay_1.finished)>>
<<set $scene.variant = "member">>
<<elseif $currentTasks.hasOwnProperty('technician_roleplay_1') && $currentTasks.technician_roleplay_1.finished>>
<<include "addRPGSessionTask">>
<<set $scene.variant = "reinvite">>
<<elseif $scene.canjoin>>
<<set $scene.variant = "invite">>
<<else>>
<<set $scene.variant = "noinvite">>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.variant>>
<<case "reinvite">>
<<=setup.getNpcName('npc_technician', 'first')>> rolls her eyes. "@@.npc_technician;We've been playing, but you haven't been showing up! Sorry I haven't called about it I sometimes don't want to bother people, y'know...@@"<br>
<br>
Her disappointed expression is worse than getting punched in the gut and you feel horrible for skipping out on her.<br>
<br>
"@@.npc_technician;Anyway, we're playing again <<if $now.getUTCDay() == 6>>tonight<<else>>next week<</if>> as always, you should come back! Everyone would love to see you again and we can pick things up right where we left off.@@"<br>
<br>
<<printNpcThemeReturn 600>>
<<case "punish_coming" "punish_add">>
<<=setup.getNpcName('npc_technician', 'first')>> squints at you. "@@.npc_technician;You better show up — you missed last session and, well... we've got a bit of a tradition for punishing no-shows. It's how we ensure overall attendance!@@" She grins "@@.npc_technician;So yeah... see you then...@@"<br>
<br>
<<printNpcThemeReturn 600>>
<<case "punish_reset">>
<<=setup.getNpcName('npc_technician', 'first')>> frowns. "@@.npc_technician;You wanna rejoin? After ditching so many times, including your punishment?@@" She seems to think, "@@.npc_technician;Look... 'cause I like you... how about we reset things? Wipe your slate clean in case that scare old punishment was keeping you from enjoying the fun of role-playing. Of course, if you miss this, well... rules are rules, I can bend them a bit, but it is my duty to be impartial, which means your cute bum will be back on the punishment block!@@"<br>
<br>
<<printNpcThemeReturn 600>>
<<case "punish_refresh">>
<<=setup.getNpcName('npc_technician', 'first')>> shakes her head. "@@.npc_technician;You take your punishment... and then you miss again! Very disappointing... you do know that you don't have to arrange things to be "forced" into doing stuff, you can just, like... ask for it... maybe just show up a bit tardy sometime? In any case, I'll see you at the game... with a side helping of penance.@@"<br>
<br>
<<printNpcThemeReturn 600>>
<<case "member">>
<<=setup.getNpcName('npc_technician', 'first')>> smiles "@@.npc_technician;I think someone needs more coffee! <<if $npc_technician.flags.rpg_campaign.session > 0>>You've joined us, and I hope you'll be joining us again<<else>>You'll be joining the group<</if>> <<if $now.getUTCDay() == 6>>tonight<<else>>next week<</if>>. We're playing Traps and Treasures and it. will. be. EPIC!@@"<br>
<br>
As always, her enthusiasm is infectious and you promise to be at her place on time and ready to game.<br>
<br>
<<printNpcThemeReturn 600>>
<<case "special">>
<<=setup.getNpcName('npc_technician', 'first')>> grins "@@.npc_technician;I think someone needs more coffee! We've got something special planned for <<if $now.getUTCDay() == 6>>tonight<<else>>next week<</if>> remember?@@"<br>
<br>
As always, her enthusiasm is infectious and you promise to be at her place on time and ready for fun AND games.<br>
<br>
<<printNpcThemeReturn 600>>
<<case "noinvite" "invite">>
<<=setup.getNpcName('npc_technician', 'first')>> lights up at you showing interest in her hobby.<br>
<br>
"@@.npc_technician;We really like the versatility of the Traps and Treasures system. Of course we don't use the latest edition, but a kind of house rule modded "goodstuff" conglomeration of the best parts of multiple versions, and I'm pretty open to people rolling in with splatbooks or even homebrew stuff so long as it looks fun and balanced. We bounce around genres a bit, but we've been on a classic swords and sorcery fantasy kick of late.@@"<br>
<br>
She looks at you for a moment, obviously thinking about something.<br>
<br>
<<if $scene.canjoin>>
"@@.npc_technician;You know, actually... I think you'd fit in with the group. Why don't you come join us for a game? We JUST started the new campaign so you wouldn't be behind really, we'll even roll up some characters for ya so all you have to do is show up and play!@@"<br>
<br>
"@@.npc_technician;Oh, I guess I should warn you — the games can get a bit... risque. Nothing in real life, you understand well... not since...@@" She seems lost in thought for a moment shaking her head and continuing without elaboration "@@.npc_technician;Anyway, sorry, we're there to play not, like, have an orgy or something, but IN-character, well... things can get a bit steamy.@@"<br>
<br>
"@@.npc_technician;Anyway, I host the games at my place and we meet once a week at <<if $options.militaryTime>>19:00<<else>>seven pm<</if>> and things go until we hit a good breaking point or we get too tired.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_1_accept' "Say that sounds fun, you'd love to join." 120>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_1_decline' "Say this isn't a good time right now with how busy you are." 120>>]
<<else>>
"@@.npc_technician;Anyway, yeah, it's a pretty chill party and we have a lot of fun. I totally recommend finding a party to play with.@@"<br>
<br>
<<printThought "Hmm, I feel like she sort of wanted to invite me... maybe she needs to check with the rest of the group first for approval? Or I just need to build up her trust some more...">><br>
<br>
<<printNpcThemeReturn 600>>
<</if>>
<<default>>
ERROR: unexpected scene.variant <<=$scene.variant>>
<</switch>>
</div>/*#
#desc: ask about joining technician's rpg campaign
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
She lights up when you ask if the offer is still good to join her rpg campaign.<br>
<br>
"@@.npc_technician;Of course you can join! Same warning as before that in-game things are liable to get a bit... spicy, but everyone's understanding and it's just a game so if anything bothers you we can tone it down just... y'know, it's fun really cut loose and have a bit of fantasy fun with friends.@@"<br>
<br>
"@@.npc_technician;So I host the games at my place, we meet once a week at <<if $options.militaryTime>>19:00<<else>>seven pm<</if>> and things go until we hit a good breaking point or we get tired.@@"<br>
<br>
[<<moveTo 'event_rpg_campaign_session_1_1_accept' "Say that sounds fun, you're in." 60>>]<br>
[<<moveTo 'event_rpg_campaign_session_1_1_decline' "Say that, unfortunately that isn't a good time for you." 60>>]
</div>/*#
#desc: accept offer to join technician's rpg campaign
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkThemeExist('npc_technician','roleplay','theme_technician_rpg_6')>>
<<changeNpcThemeRepeatable 'npc_technician' 'roleplay' 'theme_technician_rpg_6' false>>
<</if>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $player.locations.home_technician = true>>
<<include "addRPGSessionTask">>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
She's smiling wide enough, you're afraid her head might split in two. That, or that she's about to swallow you whole.<br>
<br>
"@@.npc_technician;Awesome! So, yeah, first game will be <<=$scene.npcdateday>>, snacks, friendship and unique characters to choose between will be provided. And don't worry about my friends — I'll make sure they know what a swag chummer you are and, as for you? Well, you don't need to bring anything save your cute self!@@"<br>
<br>
Leaning back, she shouts across the cafe. "@@.npc_technician;<<switch $npc_technician.flags.knowgender>><<case 'female'>>She's<<case 'male'>>He's<<default>>They're<</switch>> joining the campaign!@@"<br>
<br>
With a bit of a lopsided smile, <<=setup.getNpcName('npc_maid', 'first')>> flashes a joking double thumbs up before turning back to her customer.<br>
<br>
"@@.npc_technician;Sorry about that, just a little, y'know, excited.@@"<br>
<br>
You smile back and respond that you're looking forward to things too.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: decline offer to join technician's rpg campaign
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkThemeExist('npc_technician','roleplay','theme_technician_rpg_6')>>
<<addNpcTheme 'npc_technician' 'roleplay' 'theme_technician_rpg_6'
6
'event_rpg_campaign_session_1_0_asktojoin'
true
>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Damn, that's a bummer. Well, if your schedule ever changes let me know. I've told the gang a bit about you and we'd all love to have you join the party!@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about sending her a sext
#status: RELEASED 0.6.0.0
#ignore_spell: omg
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.relationship_stage >=1>>
You bring up how you sent her a pre-sleep selfie and her eyes immediately light up.<br>
<br>
"@@.npc_technician;OMG that was just so hawt! Feel free to send me stuff like that all the time... or maybe just stay over so I can witness in person? Yum.@@"<br>
<br>
You blush at her comment, which only makes her smile wider.
<<else>>
You bring up how you sent her a pre-sleep selfie.<br>
<br>
"@@.npc_technician;So... yeah. On the one hand, I SHOULD be upset since y'know, unsolicited, you didn't get my consent to send me the thing, but on the OTHER hand ZOMG you are so gorram cute! So... on balance...@@" She smirks before continuing "@@.npc_technician;Well, on balance I think I am going to have to request more data points. I mean, it really wouldn't be fair for me to judge your actions from a single event, right? So...@@" She waggles her eyebrows at you as her voice trails off.
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk body modification and learn about the alley near her house
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $scene.bodyshopUnlock = !$player.locations.bodyshop>>
<<if $scene.bodyshopUnlock>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "technician">>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_technician', 'first')>> about some of the... changes that have been going on in your life and she nods in understanding.<br>
<br>
"@@.npc_technician;Sure, I mean... I joke a bunch, but, like, I know this kind of thing can be a challenge and I'm here for you, whatever you need, whatever you are.@@" She reaches across the table to hold your hand. "@@.npc_technician;And remember, you don't have to know the answer to that question now, and you can change your mind, whatever path you take is valid, okay?@@"<br>
<br>
You're a bit overcome with emotion at the show of earnest support, but she seems to understand you well enough without words.<br>
<br>
<<if $scene.bodyshopUnlock>>
"@@.npc_technician;I wish I could offer more than just words, like figuring this stuff out is hard enough before you add in expenses of a new wardrobe or more physical changes@@" at this she slightly thrusts her small, but perky, breasts forward, "@@.npc_technician;I had to put in work for these things! Oh, speaking of that sort of thing — there's an alleyway near my building, in the Student Quarter and well... I dunno exactly what's down there, bit nervous to check, honestly, but sometimes I see people go down and when they come back out well... they look different — and not just "new haircut" different, like DIFFERENT different. Dunno, maybe check it out if that sounds interesting to you.@@"<br>
<br>
Finally finding your voice, you thank her for the tip, and the support before moving forward with your chat.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> winks, trying to lighten up the mood again. "@@.npc_technician;But you knew that, right? Look at me getting all sappy... must be a caffeine deficiency!@@" She quickly takes another drink of her monstrous coffee.
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about giving her a handjob during prologue
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up the time you gave <<=setup.getNpcName('npc_technician', 'first')>> a handjob under her desk.<br>
<br>
<<if $npc_technician.stage < 2>>
She grins devilishly at you.
<<switch $npc_technician.flags.dataservice_encounter.handjob_finish>>
<<case 'mouth'>>
"@@.npc_technician;Heh, yeah, that was pretty crazy... still can't believe you did it... and then the way you begged for my lady gravy? Yum... well, I guess that's more your line, heh.@@""
<<case 'mouth'>>
"@@.npc_technician;Heh, yeah, that was pretty crazy... still can't believe you did it but oh-so-thankful you did! Especially how you finished! Yum... well, I guess that's more your line, heh.@@""
<<case 'hand'>>
"@@.npc_technician;Heh, yeah, that was pretty crazy... still can't believe you did it but oh-so-thankful you did! Mmm, those fingers of yours are truly magical.@@"
<<case 'fail'>>
"@@.npc_technician;Heh, yeah, that was pretty crazy... still can't believe you did it but oh-so-thankful you did! Even if you did need a bit of help to close the deal.@@"
<</switch>>
<br><br>
You blush at the compliment, and the memory, ignoring the fact that she's running one foot up your leg as you move on to something else.
<<else>>
<<if $npc_technician.relationship.relationship_stage >= 1>>
"@@.npc_technician;Mmm, yeah, I guess you could call that our first date! Putting out like that the first time! You were so easy... and I loved you for it! I knew then you were a keeper, but I should have sussed that you were a sex-pot minx as well!@@"<br>
<br>
You blush as she smoulders at you from across the table.
<<else>>
She smiles at the memory. "@@.npc_technician;Mmmm, yeah, that was, like, so hot, I still can't believe you did something like that! I mean, we barely knew each other back then!@@"<br>
<br>
You blush and shrug before continuing on.
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about giving her a blowjob during prologue
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up the time you gave <<=setup.getNpcName('npc_technician', 'first')>> a blowjob under her desk.<br>
<br>
<<if $npc_technician.stage == 1>>
"@@.npc_technician;Yeah that was... wow, like one of the hottest, most intense orgasm's I've ever had, not to mention the like... half-dozen times I've gotten myself off at the memory of it since!@@"<br>
<br>
You blush and nervously look away, hoping nobody overheard you.<br>
<br>
"@@.npc_technician;Oh, shit, sorry... I guess maybe that's a bit TMI? Well, let me just say, again, thank you, like... so much!@@"<br>
<br>
<<printNpcThemeReturn 600>>
<<else>>
<<if $npc_technician.relationship.relationship_stage >= 1>>
"@@.npc_technician;Mmmm, yeah, that was something, easily one of the best orgasms I'd had to that point in my life.<<if $npc_technician.flags.dataservice_encounter.handjob>> And then afterwards! Like sure, at the time I wanted to die waiting for that <<guy>> to walk away and leave me alone, but now, looking back... fuck, but the memory of <<him>> standing nearby, totally unaware that you were between my legs still sucking every last drop of tasty cum out of me...<</if>>@@"<br>
<br>
You blush, which only makes her smile wider.<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.handjob>>"@@.npc_technician;What about you, knowing what I do now about you... I bet you were even more turned on you dirty girl!@@" Pausing she<<else>>She<</if>> glances around before her gaze settles on the floor-length tablecloth. "@@.npc_technician;Hmm... don't suppose you've considered doing an encore?@@"<br>
<br>
<<if $npc_technician.relationship.her_role == 'sub'>>
[<<moveTo "event_technician_theme_blowjob_encore_1" "Smile and lean back while agreeing that sounds like a great idea... for her." 60 "<<set $scene.action='dom'>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_1" "Grin and slid down under the table." 60 "<<set $scene.action='dom_suck'>>">>]<br>
<<elseif $npc_technician.relationship.her_role == 'dom'>>
[<<moveTo "event_technician_theme_blowjob_encore_1" "Submissively slide under the table." 60 "<<set $scene.action='suck'>>">>]<br>
<</if>>
[<<moveTo "event_technician_theme_blowjob_encore_1" "Blush and say maybe you could sneak downstairs on a break sometime..." 60 "<<set $scene.action='decline'>>">>]
<<else>>
She smiles at the memory. "@@.npc_technician;Talk about an introduction! I mean, sure, we'd met before casually but that... well, to say I knew then that we'd be friends is putting it mildly!@@"<br>
<br>
You blush and change the topic.<br>
<br>
<<printNpcThemeReturn 600>>
<</if>>
<</if>>
</div>/*#
#desc: oral sex under the table at maid cafe
#status: RELEASED 0.6.0.0
#ignore_spell: p,g,c
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<switch $scene.action>>
<<case 'dom'>>
<<changeHorny 20>>
<<case 'dom_suck'>>
<<changeHorny 10>>
<<applyExperience 'oral' $npc_technician.penis_size 'terrible' $SEEN_FRIEND>>
<<case 'suck'>>
<<changeHorny setup.getTotalValue("bimbofication")>>
<<changeHorny setup.getTotalValue("submission")>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<set $npc_technician.flags.cafeSuck.sub = true>>
<</switch>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $npc_technician.flags.seen_chastity = true>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'dom'>>
She shivers as she realises what you're telling her to do for you.<br>
<br>
"@@.npc_technician;Really, here? Fuck you're so depraved...@@" After a brief pause she meekly concludes with a soft "@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" before disappearing under the table.<br>
<br>
You feel her gently part your clothes before
<<if setup.checkItemTypeWorn("cage")>>
finally addressing your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>gleaming chastity shield<</if>>. Initially unconcerned by her lack of access she takes you in both hands, showering <<if setup.isCage()>>your cage and balls<<else>>the front shield of your chastity belt<</if>> with gentle kisses as she worships you.<br>
<br>
<<printThought "Fuck that feels so good...">><br>
<br>
Your arousal sky-rockets, even though this sort of constrained stimulation will never be enough to actually get you off. From the desperate sound of things between your legs <<=setup.getNpcName('npc_technician', 'first')>> would quite like to savour you fully as well...
<<if !$inventory[setup.getItemFromType("cage")].status.lock>>
Of course the <<if setup.isCage()>>cage<<else>>chastity belt<</if>> is just for show, not even locked, technically, so you could just remove it...<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Remove your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> and finish." 180 "<<set $scene.unlocked=true>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Remain secure in chastity and leave the both of your wanting." 180 "<<set $scene.unlocked=false>>">>]
<<elseif setup.checkItemInInventory(setup.getItemObjFromType("cage").lockable[1])>>
Of course, you do have the key on you, if you felt like unlocking yourself for a bit of fun...<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Remove your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> and finish." 180 "<<set $scene.unlocked=true>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Remain in chastity and leave the both of your wanting." 180 "<<set $scene.unlocked=false>>">>]
<<elseif $npc_technician.relationship.keyholder>>
Of course, she is your keyholder, and could let you out for a minute or two for a bit of fun...<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Beg her to unlock your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> and finish." 180 "<<set $scene.unlocked=true>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" "Stay chaste and leave the both of your wanting." 180 "<<set $scene.unlocked=false>>">>]
<<else>>
Unfortunately your locked and controlled state makes that quite impossible. Still, you spend several minutes enjoying the attention before signaling for her to come back up.<br>
<br>
Crawling up she glances around nervously before taking her seat, licking her lips a final time before taking a sip of coffee.<br>
<br>
"@@.npc_technician;Wow, that was, like... really hot. Thank you <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, I'm sorry I couldn't get you off, but did you enjoy it, at least?@@" You nod and she beams with pride. "@@.npc_technician;Yay! You can sheath your broadsword in me anytime!@@"<br>
<br>
<<printNpcThemeReturn 600>>
<</if>>
<<else>>
eagerly revealing your <<if $player.body_ref.penis>><<getWordMyPenis>>. Moaning softly, but enthusiastically she sucks away, one hand wrapped around the base of your shaft while she bobs up and down.<<else>>dripping cunt. Her tongue eagerly licks between your folds as she curls a finger to tease your g-spot.<</if>><br>
<br>
Enjoying <<if $player.body_ref.penis>>the blowjob<<else>>being eaten out<</if>> you glance around the cafe at all the lovely maids before getting an evil idea upon spotting <<=setup.getNpcName('npc_maid', 'first')>>.<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_maid" 'Wave <<=setup.getNpcName("npc_maid", "first")>> over.' 300 "<<set $scene.maid=true>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2" 'Enjoy <<if $player.body_ref.penis>>the blowjob<<else>><<=ps(setup.getNpcName("npc_technician", "first"))>> tongue<</if>>.' 180>>]
<</if>>
<<case 'dom_suck'>>
<<if $npc_technician.relationship.her_caged>>
Crawling under the table you part her skirt and panties to reveal the caged prize within.<br>
<br>
Taking it in hand you fondle and lick until she is straining desperately against every square centimetre of her prison.<br>
<br>
"@@.npc_technician;P-please, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" She whispers.<br>
<br>
<<if $npc_technician.relationship.sissyomatic>>
[<<moveTo "event_technician_theme_blowjob_encore_2" 'Get permission from <<=setup.getNpcName("npc_ai","formal")>> to retract <<=ps(setup.getNpcName("npc_technician","first"))>> cage and get her off.' 60 "<<set $scene.unlocked=true>>">>]<br>
<<else>>
[<<moveTo "event_technician_theme_blowjob_encore_2" 'Remove her cage and get her off.' 60 "<<set $scene.unlocked=true>>">>]<br>
<</if>>
[<<moveTo "event_technician_theme_blowjob_encore_2" 'Leave her caged and wanting.' 60 "<<set $scene.unlocked=false>>">>]
<<else>>
You haven't even finished sliding under the table and between her legs before she has spread them wide and pulled aside her panties to reveal a VERY hard girl-dick.<br>
<br>
Gently slapping her hands out of the way you take charge of things, stroking and sucking away at her delicious panty-stretcher as you tease her ever-closer to orgasm.<br>
<br>
"@@.npc_technician;P-please, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" She whispers as you edge her yet again, her fingers just visible from below as she clings desperately to the edge of the table.<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_suck_2" 'Finish her off.' 60 "<<set $scene.her_cum=true>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_suck_2" 'Leave her wanting.' 60 "<<set $scene.her_cum=false>>">>]
<</if>>
<<case 'suck'>>
Like the obedient sub you are you slide to your knees and crawl under the table to between <<=ps(setup.getNpcName('npc_technician', 'first'))>> slowly spreading legs.<br>
<br>
"@@.npc_technician;Good girl@@" she whispers as she lifts up her skirt to reveal her bulging panties. <<if $npc_technician.relationship.her_caged>>You take a moment to tease her through her cage before <<if $npc_technician.relationship.sissyomatic>>surreptitiously texting <<=setup.getNpcName('npc_ai', 'first')>> for an unlock and taking <<=setup.getNpcName('npc_technician', 'first')>><<else>>unlocking her to take her<</if>><<else>>Gently freeing her aroused member you take it<</if>> with both hands and lean forward. She is as delicious as you remember
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
and you unfurl every trick you have for a world-class blowjob.
<<else>>
and you set to work giving her the best blowjob you can.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
and you start to suck, trying to listen to her quiet gasps for clues to further refine your technique.
<<else>>
and you do the best to suck and stroke, hoping enthusiasm makes up for your lack of skill.
<</if>>
<</if>>
<br><br>
You can tell she's holding back, but you remain focused on your goal, the world narrowing around you until you hear a bit of a commotion behind you only to realise that someone is sitting down.<br>
<br>
"@@.npc_maid;So, where'd your hot other half get off to? Finally scare her away?@@"<br>
<br>
Her voice somewhat strained thanks to your distracting attentions <<=ps(setup.getNpcName('npc_technician', 'first'))>> is slow and measured. "@@.npc_technician;No... she's around just... needed to duck out to attend to something.@@"<br>
<br>
"@@.npc_maid;Something, I see...@@" <<=setup.getNpcName('npc_maid', 'first')>> notes, one of her feet brushing against your thigh. "@@.npc_maid;Well, do send my regards when you see her, and remind her that she doesn't have to settle for a hot dog when there are nice thick mortadella...@@"<br>
<br>
"@@.npc_technician;I will relay the message though... you should keep in mind that mortadella is typically served... sliced.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> just chuckles before rising to go, the sound of her heels soon fading in with the background sounds of the cafe as <<=setup.getNpcName('npc_technician', 'first')>> relaxes and surrenders to the orgasm you have been trying so hard to give her.<br>
<br>
Reaching down to place one hand gently on your head as she cums, <<=setup.getNpcName('npc_technician', 'first')>> holds you in place until you have drained her of every drop before giving you a gentle head-pat and <<if $npc_technician.relationship.her_caged>>waiting for you to lock her back up and <</if>>signaling for you to return to your seat.<br>
<br>
"@@.npc_technician;So <<=setup.getNpcName('npc_maid', 'first')>> wanted me to tell you...@@" She starts before you roll your eyes and point out that "you heard" and that, really, her special sausage is just the best...<<if $npc_technician.relationship.her_caged>> especially secured for safety.<</if>><br>
<br>
The two of you laugh and then continue on with your conversation.<br>
<br>
<<printNpcThemeReturn 600>>
<<case 'decline'>>
"@@.npc_technician;Mmmm, that sounds fun. I'd love to have another morning, or afternoon, I'm not picky! Working with you between my legs...@@"<br>
<br>
<<printNpcThemeReturn 600>>
<<default>>
ERROR: unexpected scene.action: <<=$scene.action>>
<</switch>>
</div>/*#
#desc: unlock cage for oral sex under the table at maid cafe
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<switch $scene.action>>
<<case 'dom'>>
<<if $scene.unlocked || !setup.checkItemTypeWorn("cage")>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<playerOrgasm>>
<<set $npc_technician.flags.cafeSuck.dom_unlock = true>>
<<else>>
<<changeHorny 10>>
<<set _cage = setup.getItemFromType("cage")>>
<<if !$inventory[_cage].status.lock>>
<<manipulateItem _cage "lock" true>>
<</if>>
<<set $npc_technician.flags.cafeSuck.dom_lock = true>>
<</if>>
<<case 'dom_suck'>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if $scene.unlocked>>
<<set $npc_technician.flags.cafeSuck.dom_suck_unlock = true>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'dominance' 5 'very' $SEEN_FRIEND>>
<<else>>
<<set $npc_technician.flags.cafeSuck.dom_suck_lock = true>>
<<applyExperience 'dominance' 7 'very' $SEEN_FRIEND>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'dom'>>
<<if !setup.checkItemTypeWorn("cage")>>
Enjoying the private, secret happenings between your legs you relax and let the orgasm wash over you, particularly enjoying the way <<=setup.getNpcName("npc_technician","first")>> <<if $player.body_ref.penis>>hilts your <<getWordMyPenis>> deep as you cum, holding in place and milking you with throat and lips and tongue and hand<<else>>wraps her lips over you and turns her tongue into a dervish of pleasure<</if>> until the need to breathe becomes too much and she finally separates with a gasp.<br>
<br>
Resting her head against your thigh she kisses you as you soften and you reach down under the table to stroke her hair, enjoying the quiet, tender moment for several minutes before finally signaling for her to return to her chair.
<<elseif $scene.unlocked>>
<<if $npc_technician.relationship.keyholder>>
You order your slave to let you out, and she dutifully obeys. She gasps at the soft click of the lock. The sight of you free prompts
<<else>>
Reaching down you remove your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>, prompting
<</if>>
a squeal of glee from <<=setup.getNpcName('npc_technician', 'first')>> who stuffs you eagerly into her mouth as you <<if $player.body_ref.peins>>swell to full size<<else>>gush with excitement<</if>>.<br>
<br>
"@@.npc_technician;Mmmm,@@" comes the sound from beneath the table as she swiftly finishes you off, having you white-knuckled the edge of your chair as you ride out the orgasm while attempting to conceal your little "fun" from surrounding patrons. Her lips <<if $player.body_ref.peins>>wrapped around your tip, you feel her milk every last drop<<else>>pressed around your <<getWordVagina>> she sucks a series of orgasms<</if>> out of you before accepting your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> and gently locking you back up before tucking everything underneath your clothing.<br>
<br>
Crawling back out from under the table she <<if $player.body_ref.penins && $fetish.cum && $player.body_ref.cumProduction > 0>>opens her mouth to show the pool of cum still resting on her tongue before leaning over her over-complicated coffee and letting it dribble down into it. Taking a long sip of the "enhanced" brew she smiles. "@@.npc_technician;Mmmm, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress'<<case 'male'>>Master's<<default>>Overseer's<</switch>> cream is the best...@@"<<else>>grins and picks up her coffee.<</if>><br>
<br>
You smile as she takes another sip before continuing on with your conversation.
<<else>>
<<if !$inventory[setup.getItemFromType("cage")].status.lock>>
You feel her start to remove your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> and reach down to lightly slap her hand away. "@@.npc_technician;Aww@@" you hear her softly reply before there is a brief pause followed by an ominous click and a mock-innocent "@@.npc_technician;Oops.@@"<br>
<br>
Crawling back out from under the table she adopts a smile so "innocent" it loops back
<<if setup.checkItemInInventory(setup.getItemObjFromType("cage").lockable[1])>>
around, leaving no doubt in your mind that she is quite aware that her little act has turned your symbolic imprisonment into a quite real one, being that you do not presently possess the key.
<<else>>
around. Of course the movement is little more than symbolic given that you have the key in your possession, but, still...
<</if>>
<br><br>
You assure her that you will be remembering this for a punishment sometime in the , but she just grins.<br>
<br>
"@@.npc_technician;You promise? I mean, yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, your slave is sorry, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@"<br>
<br>
You can't help but smile at your cute, if occasionally bratty, sub as she sips her coffee and your discussion continues.
<<else>>
Your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> remains securely in place leaving her to spend a bit more time worshipping <<if setup.isCage()>>your caged <<getWordMyPenis false>><<else>>the hard front shield of your chastity belt<</if>> before she finally crawls back up to sit across from you.<br>
<br>
"@@.npc_technician;Not that it is really a slave's place but... I'm so horny to <<if $player.body_ref.penis>>suck you off<<else>>eat you out<</if>> right now, being so close to your lovely thing, but not able to savour it fully is so frustrating!@@"<br>
<br>
You smile and point out that locking things up can make their occasional freedom all the sweeter.<br>
<br>
"@@.npc_technician;I guess but, like I'm hungry for you now!@@"<br>
<br>
You laugh at her over-acted pout before continuing on with the conversation.
<</if>>
<</if>>
<<case 'dom_suck'>>
<<if $scene.unlocked>>
<<if $npc_technician.relationship.sissyomatic>>
You text <<=setup.getNpcName("npc_ai","formal")>> for permission and a moment later <<=ps(setup.getNpcName('npc_technician', 'first'))>> advanced cage retracts to the sound of <<=setup.getNpcName('npc_technician', 'first')>> sigh of relief.<br>
<br>
<<=ps(setup.getNpcName('npc_technician', 'first'))>> arousal is as intense as her <<getWordPenis false>> is hard as she <<if $fetish.cum>>drips<<else>>twitches<</if>> in anticipation and you take her in hand.
<<else>>
The moment the lock of her cage clicks open <<=setup.getNpcName('npc_technician', 'first')>> lets out a sigh of relief, rapidly swelling to full size in your hands.
<</if>>
<br><br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Not wasting an instant you give her the blowjob of a lifetime, delighting as her legs thrash and twist below you as you suck and lick and slurp.
<<else>>
Your skills combined with her pent-up desperation soon has her gasping and quietly begging your permission.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
As aroused as she is, your modest skills are more than enough to push her towards the edge.
<<else>>
She is aroused enough that your miniscule skill is still more than enough to rocket her towards climax.
<</if>>
<</if>>
Sensing her orgasm approaching you consider what to do with her cum...<br>
<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_cum" 'Drink it all yourself.' 60 "<<set $scene.her_cum='drink'>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_cum" 'Share the cum with her.' 60 "<<set $scene.her_cum='share'>>">>]<br>
[<<moveTo "event_technician_theme_blowjob_encore_2_dom_cum" 'Feed her cum back to her.' 60 "<<set $scene.her_cum='give'>>">>]
<<else>>
Savouring the delicate smell of her engorged, but imprisoned, lady lance you lick up the tiny bead of pre-cum that has escaped as you continue to fondle and tease.<br>
<br>
You spend several minutes continuing to play with your oh-so-desperately horny slave before returning to your seat, <<=ps(setup.getNpcName('npc_technician', 'first'))>> looking flushed and unfocused as she takes a sip of coffee and tries to find a comfortable position to sit in.<br>
<br>
"@@.npc_technician;You're evil, you know that?@@" She states. You merely grin, her look of frustration soon melting into one of submissive adoration.
<</if>>
<<default>>
ERROR: unexpected scene.action: <<=$scene.action>>
<</switch>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: unlock cage for oral sex under the table at maid cafe
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<switch $scene.her_cum>>
<<case 'drink'>>
<<applyExperience 'cum' 12 'very' $SEEN_FRIEND>>
<<case 'share'>>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<case 'give'>>
<</switch>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.her_cum>>
<<case 'drink'>>
Sucking deep as she climaxes you savour every drop of her <<if setup.getTotalValue("cum") < 5>>surprisingly <</if>>tasty cum, licking and sucking her clean of every drop before <<if $npc_technician.relationship.sissyomatic>>watching her prison close back over her still-sensitive member as <<=setup.getNpcName('npc_ai', 'formal')>> re-asserts her total control before you return<<else>>carefully tucking her back into her cage and returning<</if>> to your seat with a smile.<br>
<br>
"@@.npc_technician;My taste was to your liking?@@" She asks and you nod, privately surprised that she manages to taste so good despite her massive coffee intake.
<<case 'share'>>
Pulling back so that she is just inside of your mouth you let her spurt across your tongue, waiting until every delicious drop has been collected before <<if $npc_technician.relationship.sissyomatic>>her prison closes back over her still-sensitive member as <<=setup.getNpcName('npc_ai', 'formal')>> re-asserts her total control and you return<<else>>locking her chastity cage back in place and returning<</if>> to your feet. Standing over her you look down at her adoring face before taking hold of her head and pulling her in for a passionate kiss wherein you allow a portion of her spilt seed to flow back into her mouth.<br>
<br>
Swooning she melts in your grasp, eyes rolling back in submissive pleasure as she accepts your gift, the two of your gulping in unison, tongues searching out any stray drop before finally, and breathlessly, separating.<br>
<br>
"@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... for everything.@@" She states softly. You smile and return to your seat.
<<case 'give'>>
Sensing her imminent climax you lean back, wrapping one hand over the head of her girlcock as you give the final few pumps to push her over the edge. Catching everything in your palm you carefully rise to your feet and offer it to her. She doesn't even glance around at the somewhat crowded cafe, her eyes remaining only for you as she leans in and licks your hand clean.<br>
<br>
"@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" she states softly. You smile and tell her to put her cage back in place as you return to your seat. She winces slightly as <<if $npc_technician.relationship.sissyomatic>>her prison closes back over her still-sensitive member as <<=setup.getNpcName('npc_ai', 'formal')>> re-asserts her total control<<else>>she stuffs her wilted, but still-sensitive member into its prison as she obeys your command without hesitation<</if>>.
<</switch>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: you finish dominantly sucking her off
#status: RELEASED 0.6.0.0
#ignore_spell: th
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<if $scene.her_cum>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<set $npc_technician.flags.cafeSuck.dom_suck_nolock_cum = true>>
<<else>>
<<set $npc_technician.flags.cafeSuck.dom_suck_nolock_nocum = true>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.her_cum>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
With unsurpassed skill
<<else>>
With expert skill
<</if>>
you keep her dancing on the edge of orgasm, alternating between savouring her tender tip with your tongue and swallowing her full length with ease. She shudders in her seat as you wait until she is panting and begging you for permission to cum before pushing her over the edge. You smile and gulp eagerly as she somehow manages to suppress screaming out through what you can tell is an intense rolling orgasm.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
With somewhat more skill than the first time
<<else>>
With a similar substitution of enthusiasm for skill as the first time
<</if>>
you lick and suck at her delicious rod, turning stroking and sucking until, with a sharp gasp, she cums, spurting delicate, thin juices down your throat.
<</if>>
<br><br>
Wordlessly<<if $npc_technician.relationship.her_caged>>, you lock her back up before<</if>> returning to your seat you look down at her, her face pressed against the table, her breaths slow and deep as she gradually recovers. You reach down and pat her head, prompting a purr of contentment. "@@.npc_technician;Th-thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" she whispers, looking up at you with adoration for a long moment before finally returning to an upright position and refreshing herself with a sip of her potent coffee.
<<else>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
With unsurpassed skill
<<else>>
With expert skill
<</if>>
you keep <<=setup.getNpcName("npc_technician","first")>> dancing on the edge of orgasm, bringing her within a hairs breadth of climax before leaning back as she trembles and gasps. Carefully waiting for her to recover slightly you resume sucking her deep, going back and forth until she is a trembling mess before you place the gentlest kiss on her tip and<<if $npc_technician.relationship.her_caged>> leave her securely locked before you<</if>> return to your seat.<br>
<br>
"@@.npc_technician;You're so, so cruel...@@" She whines desperately, her voice tinged with desperation, lust, and deep, deep submission. You merely smile taking a sip of your coffee as you wait for her to recover enough to continue the conversation.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You still aren't exactly an expert at oral, but you try to pay attention to her silent tells to keep her dancing near the edge of orgasm. It's a tricky thing, and there is one too-close call where you stare at her too-hard, trembling member almost afraid to even breathe lest your hard work go to waste but, hearing the desperate tremble in her voice you <<if $npc_technician.relationship.her_caged>>leave her straining in her cage and <</if>>finally return to your chair, satisfied with her withheld of satisfaction.
<<else>>
Failing to get someone off is less of a challenge than the default state given your minimal skills at fellatio. Several minutes sees your jaw tiring and you <<if $npc_technician.relationship.her_caged>>leave her straining in her cage and <</if>>retreat to your chair, leaving <<=setup.getNpcName('npc_technician', 'first')>> flushed and contrite as she attempts to suppress her frustration.
<</if>>
<br><br>
"@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. Perhaps next time I can earn an orgasm?@@"<br>
<br>
You smile and tell her "@@.pc;Perhaps,@@" before continuing on with the conversation.
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: technician finishes sucking you off under the table at maid cafe
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if $scene.maid>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $npc_technician.flags.cafeSuck.dom_maid = true>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Catching the attention of <<=setup.getNpcName('npc_maid', 'first')>> the maid briskly walks over to your table.<br>
<br>
"@@.npc_maid;Is there something else I can get you, and where did <<=setup.getNpcName('npc_technician', 'first')>> get off to, I don't recall seeing her stand up.@@"<br>
<br>
At the first sound of her friend <<=setup.getNpcName('npc_technician', 'first')>> freezes, only to shortly after resume with even greater enthusiasm as if to distract you as "revenge" ... or perhaps in indication of just how much the potential humiliation is turning her on.<br>
<br>
You explain that <<=setup.getNpcName('npc_technician', 'first')>> had to "@@.pc;Take care of something,@@" with a wink before adding that she was feeling "@@.pc;Very thirsty.@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> grins knowingly as she glances from your flushed expression as you hold back an orgasm to the empty chair and finally down at the table under which <<=setup.getNpcName('npc_technician', 'first')>> is kneeling and <<if $player.body_ref.penis>>sucking<<else>>licking<</if>> frantically.<br>
<br>
"@@.npc_maid;I see, well, let me go fetch her a drink with some... special cream that should be just the thing for a parched throat.@@"<br>
<br>
You manage to hold your cool just long enough for <<=setup.getNpcName('npc_maid', 'first')>> to turn away before <<if $player.body_ref.penis>><<if $fetish.cum && $player.body_ref.cumProduction>>flooding <<=ps(setup.getNpcName('npc_technician', 'first'))>> belly with a<<else>>rewarding <<=ps(setup.getNpcName('npc_technician', 'first'))>> efforts with your<</if>><<else>>letting loose with a<</if>> powerful orgasm. <<if $player.body_ref.penis>>Sucking you dry<<else>>Licking you clean<</if>>, <<=setup.getNpcName('npc_technician', 'first')>> fixes your clothes before quickly sliding back into her chair, making it just in time for <<=setup.getNpcName('npc_maid', 'first')>> to re-appear with a very frothy looking drink.<br>
<br>
"@@.npc_maid;Whipped... just the way you like it... slut.@@" <<=setup.getNpcName('npc_maid', 'first')>> states with a grin as she places the drink down in front of her blushing friend. You thank the waitress for the swift delivery before telling <<=setup.getNpcName('npc_technician', 'first')>> to try it.<br>
<br>
If looks could kill, <<=setup.getNpcName('npc_technician', 'first')>> would be shooting Cupid-like arrows of submission at you as she takes a sip in full view of her friend, smiling and showily licking her lips "@@.npc_technician;Mmm, like salted caramel...<<if $player.body_ref.penis && $player.body_ref.cumProduction && $fetish.cum>> though not as good as <<=$player.first_name>> makes.<</if>>@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> just smirks before heading off to another table and leaving you two alone.<br>
<br>
"@@.npc_technician;Fuck that was humiliating... and I am so, so turned on right now. Like... you're the one who got <<if $player.body_ref.penis>>sucked <</if>>off but right now I feel... just promise me you'll do something like this again... preferably soon.@@"<br>
<br>
You smile as she takes another sip of her "special" drink and assure her that you'll "think of something." <br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk to technician about your gender identity
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_1'
3
'theme_technician_her_transition'
false
>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up the various changes you've been going through, culminating in changing your name.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smirks "@@.npc_technician;Yeah, you already told me about that. Love the new name bee tee dubs, but I'm guessing you wanted to talk about something else, maybe?@@"<br>
<br>
You nod considering your words carefully as you mentally parse who you are now.<br>
<br>
<<include "technician_gender_select">>
</div>/*#
#desc: repeat talk to technician about your gender identity
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<if $player.identify_as == "female">>
<<set _themeId = setup.findThemeId('npc_technician', 'crossdressing', 'theme_technician_crossdress_11')>>
<<set $npc_technician.themes.crossdressing[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up the idea of gender to <<=setup.getNpcName('npc_technician', 'first')>> once again.<br>
<br>
"@@.npc_technician;Ah, that thorny thing. Don't worry if it takes you a few tries to figure out, it's bullshit. Totally made up... and yet totally real, all at the same time, y'know? Anyway, tell me about you.@@"<br>
<br>
You nod considering your words carefully as you mentally parse who you are now.<br>
<br>
<<include "technician_gender_select">>
</div>/*#
#desc: choose what gender to tell technician you identify as
#status: FINISHED 0.7.0.0
#*/
<<if $player.identify_as == "female">>
[@@.link_locked;You've already identified as a woman, you aren't going to lie about that to <<=setup.getNpcName("npc_technician","first")>>!@@]<br>
<<else>>
[<<moveTo "event_technician_comingout_2" "Try to tell her you're a normal guy and all this cross-dressing is an act." 60 "<<set $scene.gender='male'>>">>]<br>
[<<moveTo "event_technician_comingout_2" "Tell her you're a guy who likes crossdressing and such." 60 "<<set $scene.gender='xdress'>>">>]<br>
[<<moveTo "event_technician_comingout_2" "Tell her you think you're a femboy." 60 "<<set $scene.gender='femboy'>>">>]<br>
[<<moveTo "event_technician_comingout_2" "Tell her you don't fully feel like you identify with either gender." 60 "<<set $scene.gender='agender'>>">>]<br>
[<<moveTo "event_technician_comingout_2" "Tell her your gender is feeling very fluid." 60 "<<set $scene.gender='fluid'>>">>]<br>
<</if>>
[<<moveTo "event_technician_comingout_2" "Come out to her that you're a girl." 60 "<<set $scene.gender='girl'>>">>]<br>
<<if setup.getAverageSecStyle() == "voluntary" || setup.getTotalValue("feminization") == 20>>
[<<moveTo "event_technician_comingout_2" "Confidently inform her you're a girl." 60 "<<set $scene.gender='conf_girl'>>">>]
<</if>>/*#
#desc: tell technician what gender you identity as
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.gender>>
<<case 'male'>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $player.identify_as = 'male'>>
<<case 'xdress'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $player.identify_as = 'male'>>
<<case 'femboy'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $player.identify_as = 'male'>>
<<set $player.flags.femboy = true>>
<<case 'agender'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $player.identify_as = 'agender'>>
<<case 'fluid'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $player.identify_as = 'fluid'>>
<<case 'girl'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<if !$player.sec_style.body.identify_fem>>
<<set $player.sec_style.body.identify_fem = 'voluntary'>>
<<set _sourceChar = 'npc_technician'>>
<<include "identifyFemUnlocks">>
<</if>>
<<case 'conf_girl'>>
<<incrementEmotion 'affection' 'npc_technician' 3>>
<<if $player.identify_as != 'female'>>
<<applyStress -10>>
<</if>>
<<if !$player.sec_style.body.identify_fem>>
<<set $player.sec_style.body.identify_fem = 'enthusiast'>>
<<set _sourceChar = 'npc_technician'>>
<<include "identifyFemUnlocks">>
<</if>>
<</switch>>
<<set $npc_technician.flags.knowgender = $player.identify_as>>
<<if !setup.checkThemeExist('npc_admin', 'transition', 'theme_admin_transition_20')>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_20'
20
'event_admin_comingout_1'
true
>>
<</if>>
<<if $player.identify_as != 'male'>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_21'
20
'event_enthusiast_hormones_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.gender>>
<<case 'male'>>
You want to tell her that you're a guy, and that this whole thing has been a nightmare, but you stop yourself. Remembering the NDA you hold back out of fear of what the consequences for you, and her too, probably, might be if you let her in on any of the secretive things that seem to go on at Social Interaction Service Syndicate Inc.<br>
<br>
Realising that she's waiting for an answer you awkwardly explain that you're not really sure what you are anymore.<br>
<br>
She smiles in comfort. "@@.npc_technician;It's okay. These things can be complicated and confusing. Just know that whatever you identify as is about you, not what anyone else expects of you and whichever path you end up traveling. Male, female, something in between or none of the above, it's valid. And well, if you come to any conclusions or want to talk to someone, I'm always happy to help.@@"<br>
<br>
You thank her for her good friendship and then continue on.
<<case 'xdress'>>
You explain that, while you're enjoying crossdressing and other experiments in femininity you still consider yourself male, yup, definitely male.<br>
<br>
"@@.npc_technician;Cool! I mean, you make a totes cute girl, but just because you look like a thing doesn't mean you have to identify that way. Do what you like I mean, stiletto heels aside, lady clothes are like, so much better than dude options so you've made quite the rational choice in any sense.@@"<br>
<br>
You nod, thanking her for the encouragement before continuing on.
<<case 'femboy'>>
You explain that, while you're enjoying playing around a bit with gender, you do still think of yourself as a dude... but that girl-clothes can be, just... so much sexier.<br>
<br>
"@@.npc_technician;Ooooh, femboy! HAWT.@@" She states with a grin. "@@.npc_technician;Hey, gender is all about what fits for you, if you wanna be a femboy, well... just keep it respectable, y'know?@@"<br>
<br>
You nod, thanking her for the encouragement before continuing on.
<<case 'agender'>>
You explain that you don't really feel like you identify with a gender at all.<br>
<br>
She nods sagely before replying. "@@.npc_technician;Totes valid. Look, gender is bullshit. Totally made up... and yet totally real, all at the same time. Which means what you do with it well... that's up to you. You can buy in to a paradigm, pick and choose or skip it entirely. In other words, you do you and fuck the haterz, make your own way!@@"<br>
<br>
You half expect her to jump up on the table and start in with "Do You Hear the People Sing?" but instead she just takes another quaff of her overly-complicated coffee concoction and continued on to other topics.
<<case 'fluid'>>
You explain that your gender identity seems to shift back and forth.<br>
<br>
"@@.npc_technician;Mmm, fluids, easily one of my favourite states of matter. I mean coffee is a fluid and it's like... the best!@@"<br>
<br>
You laugh as she takes a theatrical sip of her overly complicated concoction. "@@.npc_technician;Real-talk though, that's totally cool, why be constrained by normal labels when you can just go with whatever feels best for you, no reason to ascribe to any strict structure unless it meets your needs just, y'know, enjoy yourself, have fun!@@"<br>
<br>
You thank her for the encouragement and continue on.
<<case 'girl'>>
Somewhat nervously you tell her that you think you're a girl.<br>
<br>
With a comforting smile she reaches across the table to take your hand.<br>
<br>
"@@.npc_technician;And a very cute girl you are. I just want you to know that I'm proud of you — I mean, sure, I joke around a bunch and I'm a bit of a dork but... well, hearing you say that, seeing the way your face seemed to light up... I'm just really, really happy that you would trust me to take part in your journey. If you ever need someone to talk to, or ask for advice or anything well... I'm here for you and whatever you decide to do is valid and correct for YOU.@@"<br>
<br>
You blush at the outflowing of support before steering the conversation forward.
<<case 'conf_girl'>>
With a confident grin, you look across the table and ask her "@@.pc;Who has two thumbs and is a girl?@@" Before she can reply, you smirk and do the double thumbs up towards yourself.<br>
<br>
She grins. "@@.npc_technician;Attagirl! Oh, I'm just so happy for you! Isn't being a girl the best! This calls for celebration, waitress, a celebratory cake for mine lovely lady friend!@@"<br>
<br>
Summoned from across the room, <<=setup.getNpcName('npc_maid', 'first')>> drops in to take the order then returns a minute later with an oversized pink strawberry cupcake. Feeling as if a weight has lifted, you let her gushing words of congratulation wash over you before finally continuing on.
<<default>>
ERROR unexpected scene.gender: <<=$scene.gender>>
<</switch>>
<br><br>
<<if $scene.gender != 'male' && !$player.locations.hotties_game>>
"@@.npc_technician;So, anyway, I'm so honoured, and also so, so proud of you! I understand wanting to tell me about this in person, but I wish I'd had some warning to bring a gift in celebration... wait, I know! You play games online, right? what's your gamerID?@@"<br>
<br>
[<<moveTo "event_technician_cafe_give_game" "Tell her your ID." 120 "<<set $scene.keepTalking=true>>">>]
<<else>>
<<printNpcThemeReturn 600>>
<</if>>
</div>/*#
#desc: talk to technician about working at maid cafe
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_technician', 'first')>> about your part-time job working at the Maid Cafe.<br>
<br>
With a delighted smile, she looks at you starry-eyed.<br>
<br>
"@@.npc_technician;Mmm, how I love a lady in a uniform... particularly a maid uniform...@@"<br>
<br>
She grins as you blush and then continues "@@.npc_technician;You know, when I first saw you look at the maids that dawning moment of revelation... well, let's just say I would have put a lot of money on you being one of them someday and hey! Looks like I would have won big... well, probably not big given that those were damn easy odds!@@"<br>
<br>
You can't help but agree with her assessment and you laugh before continuing on.<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about CDS merger, brazen
#status: FINISHED 0.7.2.0
#ignore_spell: c
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_technician', 'first')>> about the CDS merger.<br>
<br>
"@@.npc_technician;You know there had been some rumblings going on, though I commend <<=setup.getNpcName('npc_admin', 'first')>> for coming down to talk with all of us so early in the process, so often with these things it's all up at the C-level and we worker drones are just ignored. Though, in the OPPOSITE of being ignored... that reveal of yours! I don't know if it was rehearsed or what, but just, WOW, I didn't know you had that sort of thing in you and I gotta admit, seeing a confident <<=setup.getBoyGirl($npc_technician)>> up there like that? So hot.@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk about CDS merger, brazen
#status: FINISHED 0.7.2.0
#ignore_spell: c
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_technician', 'first')>> about the CDS merger.<br>
<br>
"@@.npc_technician;You know there had been some rumblings going on, though I commend <<=setup.getNpcName('npc_admin', 'first')>> for coming down to talk with all of us so early in the process, so often with these things it's all up at the C-level and we worker drones are just ignored. Though, in the OPPOSITE of being ignored... that reveal of yours! I don't know if it was rehearsed or what, but just, WOW! Do you have ANY idea how adorable you look when you're all blushing and embarrassed? Sorry if this is stirring up humiliating memories, but it takes your normal 10/10 cute-factor and cranks it up to like... thirteen!@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: talk data crystal you got at the party
#status: FINISHED 0.7.8.0
#ignore_spell: dataservice,hoity,toity
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<set $player.flags.data_crystal.encryption = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You mention the data crystal you found to <<=setup.getNpcName('npc_technician', 'first')>> and how it seems to be encrypted.<br>
<br>
"@@.npc_technician;Hmm, interesting. And you have no idea what's on it?@@"<br>
<br>
<<if $player.flags.data_crystal.manager>>
You reply that, actually, you managed to decrypt it and discover both fabricated blackmail material against your manager... and evidence of some of the scheming that lead up to such.<br>
<br>
"@@.npc_technician;Huh... strange... well, I guess be careful with it, eh? Those hoity-toity corporate politicking... well, you don't want to get caught in the middle of that, right?@@"<br>
<br>
You nod and thank her for the advise.
<<else>>
You shake your head.<br>
<br>
Glancing around, she pulls out her phone and texts you something. "@@.npc_technician;Don't tell anyone where you got it but that's the default key that's used by company devices. Everyone is supposed to re-roll to something personalised but, well... a lot of people don't and you might get lucky.@@"<br>
<br>
You thank her for the help.<br>
<br>
"@@.npc_technician;Ah, ah, we didn't discuss the payment for me helping you out with data recovery<<if $npc_technician.flags.dataservice_encounter.asked_for_help>> yet again<</if>>.@@" She grins.<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.handjob>>
<<switch $npc_technician.flags.dataservice_encounter.handjob_finish>>
<<case 'mouth' 'beg'>>
"@@.npc_technician;It'll be hard to top the payment you gave last time, but I think this help is worth more, what with my being off the clock and everything. Rain check for now but, mmm, someday I am going to call in my boon and it is going to be WONDERFUL.@@"
<<case 'hand'>>
"@@.npc_technician;Hmm, your last "payment" was quite a delight, though it fell just shy of perfection... I think I'll be demanding a bit more this time around, but not right now. I think I'll lord it over you for a bit so I can think up something perfect to call in my boon.@@"
<<case 'fail' ''>>
"@@.npc_technician;So your last "payment" was, well... a bit unsatisfying. My expectations this time are going to be a lot higher, but I'll take a rain check, for now.@@"
<<default>>
ERROR: unexpected npc_technician.flags.dataservice_encounter.handjob_finish <<=$npc_technician.flags.dataservice_encounter.handjob_finish>>
<</switch>>
<<elseif $npc_technician.flags.dataservice_encounter.asked_for_help>>
"@@.npc_technician;So I think this time I'll be charging a bit more for my help. After all, I'm off the clock and such. Rain check for now but, mmm, someday...@@"
<<else>>
"@@.npc_technician;Last time you rejected my quite reasonable request... so know that this time my rates have gone up. Oh relax, I'm not going to make you crawl under the table here! But... someday I'll call in my chip.@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: theme technician, talk about barista
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> about <<=setup.getNpcName("npc_barista","nickname")>>, the slutty bimbo who dazzles the RPG group with occasional bursts of mathematical brilliance.<br>
<br>
"@@.npc_technician;Her story is kind of a weird coincidence, really. See, I was on my way out of the office and she was just standing in the elevator with this weird, dazed look on her face. It was kind of odd because her outfit was like... well, it wasn't like what she wears now. I mean, yes, it was attractive but it was of the sort of "more than I spend on rent" business formal, though a bit, like, rumpled? Like she'd slept in it or something.@@"<br>
<br>
You try to picture <<=setup.getNpcName("npc_barista","nickname")>> in something so formal and you find yourself struggling, her bimbo expression and slutty get-up seemingly just part of her character.<br>
<br>
"@@.npc_technician;Anyway, she was looking kind of out of it and so I asked her if she was okay, was she trying to go somewhere? It was like she noticed me for the first time and she just kind of slurred "can I come with you?" I was a bit concerned but, well, this was back when I ran a casual game night on Fridays after work so I thought hey, maybe she'd like to join? So I asked her if she liked Role Playing Games and she got this weird expression and then nodded and said something like "I... like role playing? Yeah..."@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> shrugs at your concerned expression. "@@.npc_technician;Okay, yeah, I probably should have found her a doctor or something but... I'd been thinking about the game I was gonna run all day and was kind of distracted, and she seemed happy to come with me. Then we started playing and sure, she was <<=setup.getNpcName("npc_barista","nickname")>>, but she like, lit up and seemed really happy after that, well... she just kind of became a fixture of the group. We've tried asking about her past but she just shrugs and says something about "not wanting to talk about her old job." After a while we just kind of dropped it. I mean we're getting together to fantasise about exploring totally made up worlds, why force her to talk about the boring old real one if she doesn't want to? Plus, she mentioned once that she goes to therapy multiple times a week, so whatever's going on in between her ears, I'm sure it'll get sorted out.@@"<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: theme technician, talk about rpg_dude
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> about <<=setup.getNpcName("npc_rpg_dude","first")>>, the
<<if $npc_rpg_dude.fem>>
metal head who is <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> girlfriend.
<<else>>
lone male member of the RPG group<<if $player.identify_as == "male">>before you joined<</if>>.
<</if>>
<br><br>
<<if $npc_rpg_dude.fem>>
"@@.npc_technician;Heh, she's an old friend from college. We had some classes together freshman year and kind of hit it off. Not like, dating or anything, but we just had some overlapping interests and she was really chill and supportive. She spent some time trying to crack my egg, apparently there were so many signs and let me tell you, after she got me in a dress I had an epiphany when I saw myself in the mirror.@@"
<<else>>
"@@.npc_technician;Heh, he's an old friend from college. We had some classes together freshman year and kind of hit it off. Not like, dating or anything, but we just had some overlapping interests and he was really chill and supportive. I spent some time trying to crack his egg, like it seemed like there were so many signs and let me tell you he looks GREAT in a dress but... he has this weird lack of gender attachment. He isn't a-gender, he just doesn't really care or seem to feel particular attachment in the abstract so he is fine with being a dude but is also chill about exploring other stuff.@@"
<</if>>
<br><br>
She shrugs and takes a sip of her coffee. "@@.npc_technician;In any case, I'm just glad <<him npc_rpg_dude>> and <<=setup.getNpcName("npc_rpg_warlock","first")>> found each other, they make such a great couple!@@"<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: theme technician, talk about npc_rpg_warlock
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> about <<=setup.getNpcName("npc_rpg_warlock","first")>>, the sexy, flirty goth girl.<br>
<br>
"@@.npc_technician;She's an old friend from college, she was a year behind me and like, really shy and uncertain about what she wanted to be, playing RPGs really allowed her to explore her identity and blossom into the woman you know today. I guess she looks up to me a bit like a big sister in a way, though she's obviously taken a different path with her transition. Her and <<=setup.getNpcName("npc_rpg_dude","first")>> have been together since college, and <<=setup.getNpcName("npc_rpg_dude","first")>> supported her every step of the way of her transition.@@"<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: theme technician, talk about her transition
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> about her own transition.<br>
<br>
Her expression becomes more serious as she takes a slow sip of her drink and composes her words.<br>
<br>
"@@.npc_technician;Hmm, where to begin... growing up I never really felt "normal" — I mean yeah, being a girl on the outside seemed great! Hot clothes, pretty hair, no more stupid masculine dick-measuring contests but then on the other hand well... as hot as the "standard" female body is, picturing myself like that didn't feel right either. I spent some time just shifting around various a-gender and fluid designations before I had the, in retrospect obvious, realisation that I could just... be a girl with a nice big sexy lady lance.@@"<br>
<br>
You blush at the memory of her girl-dick and she smiles. "@@.npc_technician;I spent a bit of time considering the whole "sword lesbian" thing since that's such a badass phrase but, well... just sleeping with other women is too limiting, I want me some fuckin' variety!@@"<br>
<br>
You groan at the joke. "@@.npc_technician;So yeah, that's my journey, obviously yours is going to be unique to you. Don't get bogged down with details or plotting everything out up front. Focus on the themes of figuring out what you want to be and then just... doing it.@@"<br>
<br>
You thank her for the advice, and the continuous support.<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: theme technician, talk about npc_maid
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> about her frenemy <<=setup.getNpcName("npc_maid","first")>>.<br>
<br>
"@@.npc_technician;Ah, <<=setup.getNpcName("npc_maid","first")>>, my nemesis, my bane my...@@" She laughs. "@@.npc_technician;Sorry, we've known each other for years — met at a con in a head to head game and... yeah. We have a lot of overlapping interests but our personalities just lead to sparks. We tried dating once but that... y-no. I mean, I totally love her ass, literally AND figuratively but, well, our relationship was founded on rivalry and it just seems to work for us. Why, what'd she say?@@" She leans forward, suddenly much more intense. "@@.npc_technician;Because if that horse-hung bitch said anything bad about me it will be her doom!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> breaks into laughter, catching <<=setup.getNpcName("npc_maid","first")>> gaze from across the cafe and shooting her a kiss, the maid responding with a rude gesture.<br>
<br>
"@@.npc_technician;See?@@" she says with a smile, "@@.npc_technician;Perfectly healthy relationship!@@"<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: theme technician, talk about npc_rpg_warlock's transition
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_technician","first")>> what she thinks of <<=ps(setup.getNpcName("npc_rpg_warlock","first"))>> surgery.<br>
<br>
"@@.npc_technician;Obviously it's a personal decision, and it was right for her but, well it's something she's wanted to do for a long time.@@" she laughs "@@.npc_technician;Y'know, it's kind of funny, <<=setup.getNpcName("npc_rpg_warlock","first")>> and I are both pansexual girls, and we both like cock but I like having one and she just loves having them inside of her. Only made sense she'd make the trade and go for a 3rd hole upgrade!@@"<br>
<br>
<<if !$player.body_ref.vagina>>
"@@.npc_technician;You ever consider something like that yourself? I mean it's a valid decision either way and obviously me and <<=setup.getNpcName("npc_rpg_warlock","first")>> represent extremes, or you can just keep it locked up, that's adorable as well. But yeah, always best to consider your options rather than falling back on expectations or status quo, right?@@"<br>
<br>
You thank her for the support and say you're thinking about it. "@@.npc_technician;Great, great. As an fyi, I've been seeing more action at that weird bodyshop in the alley near my place, I think they're actually opening for face to face visits rather than just that eerie machine out front?@@"
<<elseif $player.body_ref.vagina && $player.body_ref.penis>>
"@@.npc_technician;I guess you decided that "choosing" was for suckers, heh?@@" You both laugh at the reference to your upgraded situation.
<<else>>
"@@.npc_technician;Well, I guess you understand even better than I do, right?@@" You nod.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: talk to technician about keyholding
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.keyholder>>
You bring up <<=setup.getNpcName("npc_technician","first")>> being your keyholder and she grins so hard you're afraid her face might split in half.<br>
<br>
"@@.npc_technician;Like I could forget that! Easy top ten things that's ever happened to me, and a "responsibility" that I cherish, appreciate, and adore!@@"
<<else>>
You remind <<=setup.getNpcName("npc_technician","first")>> that you scheduled an appointment with <<=setup.getNpcName("npc_manager","formal")>> to see if <<=setup.getNpcName("npc_technician","first")>> can be granted permission to be your keyholder.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Oh, wow, that... unfff! Telling me something like that in public, well, it has me about ready to burst free of my own cage, let me tell you!@@"
<<else>>
"@@.npc_technician;Oh, wow, that... unfff! Telling me something like that in public... let's just say I am VERY glad to be sitting down and I think I'll be taking a leisurely time with my drink!@@"
<</if>>
<br><br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Mmmm, the idea of having such control of you... well, I don't have to tell YOU how exciting that is but... it sounds like there's an approval process or something? Hmm... yes, I think I need a Sunday morning slave pamper to make sure I'm ready... that means sleepover time...@@"
<<case 'neutral'>>
"@@.npc_technician;I can think of all sorts of fun we could have <<if $npc_technician.relationship.her_caged>>with one another's keys<<else>>with me having your key<</if>>... though, I wonder... <<=setup.getNpcName("npc_manager","other")>> seems pretty dominant. Are you sure she'd be willing to hand over the key to me when I'm not the one in control? I guess we'll find out Monday...@@"<br>
<br>
<<printThought 'Hmm, she has a point. Even handing over the key <<=setup.getNpcName("npc_manager","other")>> will want me to remain "under control"...'>>
<<case 'sub'>>
"@@.npc_technician;Oh, I'm so excited by the idea of having your key, I promise I wouldn't use it to be a brat... no, I'd be eager to unlock my owner so you can give it to me good and proper!@@" She seems to think for a moment as her foot slides up your leg until her toes are in your crotch. "@@.npc_technician;Wait, hmm... <<=setup.getNpcName("npc_manager","other")>> seems pretty dominant. Are you sure she'd be willing to hand over the key your sub? I guess we'll find out Monday...@@"<br>
<br>
<<printThought 'Hmm, she has a point... even handing over the key <<=setup.getNpcName("npc_manager","other")>> will want me to remain "under control"...'>>
<<default>>
ERROR: unexpected her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: talk to technician about company conspiracy
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
In hushed tones you bring up your work "situation." <br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> leans closer.
<<if $npc_manager.stage >= 5>>
"@@.npc_technician;As I said, I'm here for whatever you need... but, well, after what happened last time, I think we need to invest in a more complete plan.@@"
<<elseif State.hasPlayed("event_cds_drinking_4") || State.hasPlayed("event_cds_drinking_noadmin_3")>>
"@@.npc_technician;I think <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>> is the key, she has better access and insight as to what's going on in the company, and how we can bring <<=setup.getNpcName("npc_boss","formal")>> down. I'll help where I can, but I think she's going to be the <<=setup.getNpcName("npc_ai","title")>> with the plan.@@"
<<elseif State.hasPlayed("event_stage4_end_intro_technician_1")>>
"@@.npc_technician;As I said before, I think we need more information... and that means getting access to off-network <<=setup.getNpcName('npc_boss', 'formal')>> files.@@"
<<else>>
"@@.npc_technician;I'm keeping my head down and my ear to the ground. You just let me know if I can help with anything.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: talk to technician about rescuing npc_ai_human
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.human.assistance_technician = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_ai.flags.human.rescue>>
You have a momentary brain-fart and are about to ask <<=setup.getNpcName("npc_technician","first")>> for help rescuing only to recall that you have already effected such rescue.
<<else>>
<<if State.hasPlayed("event_ai_robot_2")>>
You lower your voice and tell <<=setup.getNpcName("npc_technician","first")>> that <<=setup.getNpcName("npc_ai","first")>> has requested her assistance for a special mission.<br>
<br>
"@@.npc_technician;Secret mission for <<=setup.getNpcName("npc_ai","title")>>? Well count me in — what's the target?@@"
<<else>>
You lower your voice and tell <<=setup.getNpcName("npc_technician","first")>> about <<=setup.getNpcName("npc_ai","first")>>, and about how your AI friend needs <<=ps(setup.getNpcName("npc_technician","first"))>> assistance to rescue her original creator.<br>
<br>
"@@.npc_technician;Oh, wow... this is like something out of one of my games!@@""
<</if>>
<br><br>
You explain that the original engineer responsible for creating <<=setup.getNpcName("npc_ai","first")>> is a prisoner of the corporation... and you need <<=ps(setup.getNpcName("npc_technician","first"))>> help to rescue her.<br>
<br>
"@@.npc_technician;Swiping from the corp? Intense, but you know I'm in. Just say when and where and we'll make the run, chummer.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: talk to technician about admin
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> that you and <<=setup.getNpcName("npc_admin","first")>> have started dating.<br>
<br>
"@@.npc_technician;Wait, like, dating dating? Congrats! I knew the two of you were always close but I guess now you're even closer, that's great!@@"<br>
<br>
You ask if she isn't jealous or anything and she chuckles. "@@.npc_technician;Well, sure I'm jealous, you're dating a hot as hell <<if $npc_admin.fem>>total amazon<<else>>hunk of man muscle<</if>>! But in the way you mean... I'm pan/poly — what you and I have is special with us, you can totally share a relationship with someone else as well!@@"<br>
<br>
She pauses, getting a sly grin on her face. "@@.npc_technician;Say... you don't think <<he npc_admin>> might be interested in a bit of <<if $npc_technician.last_name == "Strawberry">>chocolate-strawberry<<else>>3-player<</if>> action? Only if you and <<him npc_admin>> are into it, of course but... well, I'd definitely be DTF, if you were.@@"<br>
<br>
You reply that you'll keep that in mind.<br>
<br>
"@@.npc_technician;So will I,@@" she says with a wink, followed by a mock surprise "@@.npc_technician;What? of course I'm going to fantasise about my sexy <<switch $npc_technician.relationship.her_role>><<case 'sub'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<case 'dom'>>slave Princess<<case 'neutral'>><<switch $npc_technician.flags.knowgender>><<case 'female'>>girlfriend<<case 'male'>>boyfriend<<default>>SO<</switch>><</switch>> getting it on with <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>their<</switch>> hunk of a <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><</if>>friend?@@"<br>
<br>
She grins wider and you blush before continuing on to something else.<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: technician pregnancy ask
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up the possibility of pregnancy to <<=setup.getNpcName("npc_technician","first")>>
<<if $npc_technician.relationship.relationship_stage <= 1>>
and she raises an eyebrow. "@@.npc_technician;Pregnancy? At least take a girl to dinner first<<if $npc_technician.relationship.relationship_stage == 1>> and by dinner, I mean boinking me<</if>>!@@" She chuckles. "@@.npc_technician;On a serious note... maybe? I mean the technology exists and all... but it'd have to be with the right someone before I'd really put much thought into it, y'know?@@"<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
<<else>>
and she grins.<br>
<br>
<<if $player.body_ref.vagina>>
"@@.npc_technician;Oh-ho-ho! Is that a breeder kink you have? Well I would be HONOURED to pump you full of cream pies until you bulged.@@"
<<else>>
"@@.npc_technician;Pregnancy? I mean, the technology exists, but neither of us is presently equipped to carry without some medical assistance, y'know?@@"
<</if>>
<br><br>
[<<moveTo 'theme_technician_pregnant_2' "You think you'd like to get pregnant someday..." 300 "<<set $scene.pregnant='you'>>">>]<br>
[<<moveTo 'theme_technician_pregnant_2' "You'd love to knock each other up someday..." 300 "<<set $scene.pregnant='both'>>">>]<br>
[<<moveTo 'theme_technician_pregnant_2' "You think she would be a great mom... and look totally hot with a baby bump." 300 "<<set $scene.pregnant='them'>>">>]<br>
[<<moveTo 'theme_technician_pregnant_2' "You were just curious." 300 "<<set $scene.pregnant='none'>>">>]
<</if>>
</div>/*#
#desc: technician pregnancy
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.pregnant = $scene.pregnant>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.pregnant>>
<<case 'you'>>
You smile and reply that you'd love bearing <<=ps(setup.getNpcName("npc_technician","first"))>> child at least as much as you'd love the initial breeding process...<br>
<br>
"@@.npc_technician;Fuck that's hot... you really are the bestest, coolest person, you know that?@@"
<<case 'both'>>
You grin and say that what you'd really like is for the both of you to be pregnancy pals.<br>
<br>
<<=ps(setup.getNpcName("npc_technician","first"))>> jaw flaps for a moment before she manages to muster a response. "@@.npc_technician;I mean... I'd have to get some medical work done<<if !$player.body_ref.vagina>>, and, well... so would you...<</if>> but... wow, yeah. I mean, knocking each other up and <<if $npc_technician.flags.knowgender == "female">>being mommies together<<else>>raising two kids together<</if>>, I'm almost tearing up and what a sweet idea that is...@@"
<<case 'them'>>
You reply that you'd really like to make <<=setup.getNpcName("npc_technician","first")>> a mommy. "@@.npc_technician;Me? I mean... sure the medical technology exists but...@@" she bites her lip, and then smiles. "@@.npc_technician;Well... I guess my response has to be... ara ara?@@"
<<case 'none'>>
You reply that you aren't really interested in having kids, you were just curious.<br>
<br>
"@@.npc_technician;Totally get that... I mean, life is crazy enough in this day and age, adding kids to the mix... I dunno how people manage it!@@"
<<default>>
ERROR: unexpected scene.pregnant <<=$scene.pregnant>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: technician topic: tell her you're a pornstar
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> about your shooting porn and her eyes light up with excitement.<br>
<br>
"@@.npc_technician;Really? You, a porn star? Oh that is so fucking hot!<<if $npc_technician.flags.done_her || $npc_technician.flags.done_you || $npc_technician.flags.done_vag>> To think I've fucked a real-life pornstar... talk about every girl's dream!<</if>> I'm going to have to track down your videos... no, don't tell me, I like the challenge of the hunt...@@" She grins and winks at you.<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: technician topic: tell her you bought out debt
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_technician","first")>> about how you paid off the debts you incurred from the whole CDS data-loss incident.<br>
<br>
"@@.npc_technician;Oh, wow, they actually held you financially responsible for that? Fucking corporations! Sucks to piss all that money down the drain... but I guess it's nice to be out of debt, I know I was relieved when I managed to get out from under my student loans... of course the price of that is that I'm now stuck in that teeny apartment for, well... until the revolution, but hey, SOCIETY!@@"<br>
<br>
You laugh in solidarity with <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_technician;So... what's next?@@"<br>
<br>
You explain that, actually, you're going to stick around at your current position.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> smirks. "@@.npc_technician;You just love being a cute Secretary... which is great, because you're hella good at it... the being cute part, I guess probably the Secretary stuff, as well? Given how high up the hierarchy you're working... but I've never HAD a Secretary, so I can't exactly judge that but cute? Well... cute I am an authority, arbitrarily, authoritatively, factually, literally, qualitatively, quantitatively, statistically, scientifically, symbolically, figuratively, and, most of all, irrevocably deem you VERY cute!@@"<br>
<br>
You blush and <<=setup.getNpcName("npc_technician","first")>> grins.<br>
<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: npc_technician visits you on upper floor
#status: WRITTEN 0.8.7.0
#ignore_spell: rawr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.evil == 1 || $npc_technician.flags.evil == 1>>
<<completeWorkEvent>>
<<set _nextDate = setup.setNextDate($now, 7, 14, 0)>>
<<addWorkEvent 'technician_upper_visit' _nextDate>>
<<initRoom>>
<<moveTo "event_work_generic">>
<<else>>
<<set $scene.first = !$npc_technician.flags.lastUpperVisit && !State.hasPlayed("event_dom_training_technician_1_peer_1")&& !State.hasPlayed("event_dom_training_technician_1_hierarchy_1")>>
<<set $npc_technician.flags.lastUpperVisit = $now>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You're plugging (or is that plugged?) away at your desk as <<=setup.getNpcName("npc_manager","formal")>> marches past on her way to an executive meeting. "@@.npc_manager;Hold down the fort, my dear.@@" She says with a smile and a wink before your temporarily relaxed restraints re-tighten and slide back into you.<br>
<br>
You've just turned back to your computer when you hear something at the door, turning just in time to see <<=setup.getNpcName("npc_technician","first")>> slip inside and carefully close the door.<br>
<br>
<<if $scene.first>>
"@@.npc_technician;Wowza,@@" she says with a whistle as she looks over your predicament. "@@.npc_technician;I've been hearing things about these upper floors but... whew, they aren't kidding when they call it a whole other world! Heh, holes.@@"
<<else>>
"@@.npc_technician;Wowza,@@" she says with a whistle as she looks over your predicament. "@@.npc_technician;No matter how many times I visit the upper floors, I'm still surprised... and turned on! Why when I arrived to fix their computer the manager was getting blown by one of your peers... and the way she wiggled her ass at me while I worked, I'm pretty sure I could have taken a run at the other end! Of course, I was way more interested in wrapping things up so I could drop in on you!<<if $npc_technician.relationship.her_caged>> Well... and the cage, obviously.<</if>>@@"
<</if>>
<br><br>
You roll your eyes at the terrible pun as she grins and taps on her forearm tablet, taking control of your chair and causing the gag to retract and your restraints to release.<br>
<br>
"@@.npc_technician;There we go, anyway, the reason I came by is, well... I was doing some work up on this floor and I saw your manager slip out and, well... I thought I could have some fun with her oh-so-hot Secretary?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins.
<<if $npc_technician.relationship.her_caged>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Given that I'm all locked up... hmm... I think a spanking is in order. Yeah, you really deserve a punishment for how much I'm straining in this cage after seeing you getting off in that un-fucking-believable workstation.@@"<br>
<br>
[<<moveTo "event_technician_stage4_visit_2_dom_1" "Bend over your desk." 300 "<<set $scene.action='spank'>>">>]<br>
<<case 'neutral' "sub">>
"@@.npc_technician;I don't suppose I could beg you to unlock for a quick something something? Even if I wasn't pent up before... seeing you all strapped into your workstation has me rawr.@@"<br>
<br>
<<if $player.body_ref.vagina && $npc_technician.relationship.done_vag>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Unlock her and spread your legs (vaginal)." 300 "<<set $scene.action='vag'>>">>]<br>
<</if>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Unlock her and present your rear." 300 "<<set $scene.action='anal'>>">>]<br>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Fuck her." 300 "<<set $scene.action='fuck'>>">>]<br>
<<elseif setup.canCharRemoveChastity("npc_technician")>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Have her unlock you so you can fuck her." 300 "<<set $scene.action='fuck'>>">>]<br>
<<elseif $npc_manager.flags.trustplayerwithkey>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Unlock yourself with the key on your desk and fuck her." 300 "<<set $scene.action='fuck'>>">>]<br>
<<elseif State.hasPlayed("event_work_stage4_chair_1")>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Take advantage of your chair interfacing with your chastity device to fuck her." 300 "<<set $scene.action='fuck'>>">>]<br>
<<else>>
[@@.link_locked;You are locked in chastity...@@]<br>
<</if>>
<</if>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Finger her." 300 "<<set $scene.action='finger'>>">>]<br>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<else>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;So... how do you feel like relieving your <<=setup.getNpcName("npc_technician","formal")>> today?@@"<br>
<br>
[<<moveTo "event_technician_stage4_visit_2_dom_1" "Bend over your desk and present your rear." 900 "<<set $player.work.nowWorking=false>><<set $scene.action='anal'>>">>]<br>
<<if $player.body_ref.vagina && $npc_technician.relationship.done_vag>>
[<<moveTo "event_technician_stage4_visit_2_dom_1" "Spread your legs in invitation." 900 "<<set $player.work.nowWorking=false>><<set $scene.action='vag'>>">>]<br>
<</if>>
[<<moveTo "event_technician_stage4_visit_2_dom_1" "Your hard work has you feeling a bit... peckish." 900 "<<set $player.work.nowWorking=false>><<set $scene.action='oral'>>">>]<br>
[<<moveTo "event_technician_stage4_visit_2_dom_1" "Maybe she'd like to indulge you with a little spanking?" 900 "<<set $player.work.nowWorking=false>><<set $scene.action='spank'>>">>]<br>
<<case 'neutral' "sub">>
"@@.npc_technician;I don't suppose you're up for a quickie? Even if I wasn't horny when I walked into your office... seeing you all strapped into your workstation has me rawr.@@"<br>
<br>
<<if $player.body_ref.vagina && $npc_technician.relationship.done_vag>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Spread your legs (vaginal)." 900 "<<set $player.work.nowWorking=false>><<set $scene.action='vag'>>">>]<br>
<</if>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Present your rear." 900 "<<set $player.work.nowWorking=false>><<set $scene.action='anal'>>">>]<br>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Fuck her." 300 "<<set $scene.action='fuck'>>">>]<br>
<<elseif setup.canCharRemoveChastity("npc_technician")>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Have her unlock you so you can fuck her." 300 "<<set $scene.action='fuck'>>">>]<br>
<<elseif $npc_manager.flags.trustplayerwithkey>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Unlock yourself with the key on your desk and fuck her." 300 "<<set $scene.action='fuck'>>">>]<br>
<<elseif State.hasPlayed("event_work_stage4_chair_1")>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Take advantage of your chair interfacing with your chastity device to fuck her." 300 "<<set $scene.action='fuck'>>">>]<br>
<<else>>
[@@.link_locked;You are locked in chastity...@@]<br>
<</if>>
<</if>>
[<<moveTo "event_technician_stage4_visit_2_sub_1" "Finger her." 900 "<<set $player.work.nowWorking=false>><<set $scene.action='finger'>>">>]<br>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<</if>>
[<<moveTo "event_technician_stage4_visit_abort" "Actually... you need to get back to work." 1800>>]
</div>/*#
#desc: npc_technician visits you on upper floor: abort
#status: WRITTEN 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You note that, even with <<=setup.getNpcName("npc_manager","formal")>> away at a meeting, you really do have work that you need to get through.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> frowns, "@@.npc_technician;She really is something of a slave driver, eh? Well, I guess I'll catch you later, then.@@" <<=setup.getNpcName("npc_technician","first")>> winks and blows you a kiss before heading for the exit.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 180 "<<completeWorkEvent>>">>]
</div>/*#
#desc: npc_technician visits you on upper floor: sub options
#status: WRITTEN 0.8.7.0
#ignore_spell: 'tis,flirtily
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<switch $scene.action>>
<<case "vag">>
<<playerOrgasm>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<case "anal">>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<case "fuck">>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<</switch>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $npc_technician.flags.upperVisit.sub[$scene.action] = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "vag">>
You
<<if $npc_technician.relationship.sissyomatic>>
wait for <<=setup.getNpcName("npc_ai","formal")>> to retract <<=ps(setup.getNpcName("npc_technician","first"))>> cage and
<<elseif $npc_technician.relationship.her_caged>>
unlock her cage and
<</if>>
lean back on your chair <<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>for your chastity belt to open<</if>> and beckon her in.<br>
<br>
You moan as your slave's big, beautiful <<getWordPenis false>> slides into your ready hole... and then gasp as the dildo in the chair thrusts up into you to have you double full.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> smiles as she taps her forearm-table again to set the dildo to buzzing as she continues to thrust. "@@.npc_technician;Only the best for my <<if $npc_technician.relationship.her_role=="sub">><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<else>>love<</if>>. Goddess you feel so wet and tight... and that buzzing...@@"<br>
<br>
Further words are cut off as she leans in for a passionate kiss as she continues to hump, hands cradling your face as her tongue eagerly penetrates your final hole. The stimulation pushes you to a rapid orgasm and you can feel your slave's climax approaching as you
<<case "anal">>
You
<<if $npc_technician.relationship.sissyomatic>>
wait for <<=setup.getNpcName("npc_ai","formal")>> to retract <<=ps(setup.getNpcName("npc_technician","first"))>> cage and
<<elseif $npc_technician.relationship.her_caged>>
unlock <<=ps(setup.getNpcName("npc_technician","first"))>> cage and
<</if>>
bend over the desk as you order your slave to get to work.<br>
<br>
"@@.npc_technician;Yes, <<if $npc_technician.relationship.her_role=="sub">><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<else>>my dear<</if>>,@@" she whispers reverently before sliding her hard, hot <<getWordPenis false>> between your cheeks... and then easing it into your chair-prepped hole.<br>
<br>
She moans, whispering "@@.npc_technician;How good <<if $npc_technician.relationship.her_role=="sub">>it feels to serve my <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> this way<<else>>you feel<</if>>,@@" as her hips glide forward and back, everything about her efforts, from pace, to angle calibrated to maximise your pleasure... and to quite mind-blowing effect.<br>
<br>
As your orgasm nears you reflect on your slave and
<<case "fuck">>
You sit back in your chair<<if setup.checkItemTypeWorn("cage")>>, and wait for <<if setup.canCharRemoveChastity("npc_technician")>><<=setup.getNpcName("npc_technician","first")>> to <<if $npc_technician.relationship.her_role=="sub">>obediently<<else>>flirtily<</if>> unlock your chastity device<<else>>your chastity device to release<</if>> before you<<else>> and<</if>> <<if $npc_technician.relationship.her_role=="sub">>order your slave to<<else>>welcome her in to<</if>> "@@.pc;Have a seat.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> smiles gleefully and all but leaps into your lap, moaning with delight as she lowers onto your <<getWordPenis false>>... and then she is capturing your gasp with a kiss as the chair kicks in to slide <<if $player.body_ref.vagina>>a pair of large dildos into your vacant holes<<else>>a large dildo in to your rear<</if>>.<br>
<br>
"@@.npc_technician;You like that<<if $npc_technician.relationship.her_role=="sub">>, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</if>>?@@" She whispers in between kisses as you notice her tapping on her forearm-tablet, the <<if $player.body_ref.vagina>>dildos<<else>>dildo<</if>> inside of you buzzing and thrusting as she bounces on your <<getWordMyPenis>>. "@@.npc_technician;It's like I'm fucking you while you're fucking me... better if the chair was equipped with a clone of myself... but I'm doing my best for my <<if $npc_technician.relationship.her_role=="sub">><<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><<else>>love<</if>>.@@"<br>
<br>
As she bounces eagerly you can tell that <<=setup.getNpcName("npc_technician","first")>> is getting close, and you
<<case "finger">>
You smirk as you command your slave to spread her legs, your hand sliding up the inside of her thigh as she bites her lip in anticipation... and then moans as you start fingering her rear.<br>
<br>
"@@.npc_technician;That feels so good<<if $npc_technician.relationship.her_role=="sub">> <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>><</if>>...@@" She whispers, humping your hand as you work
<<if $fetish.fisting>>
two, three, four... and then your entire fist
<<else>>
two more fingers
<</if>>
into her.<br>
<br>
You can feel her swollen prostate as you pump in and out, feeling how close she is to an analgasm and you
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
realise you have a choice to make...<br>
<br>
[<<moveTo "event_technician_stage4_visit_2_sub_2" "Finish her off." 300 "<<set $scene.cum=true>>">>]<br>
[<<moveTo "event_technician_stage4_visit_2_sub_2" "'Tis better to live on the edge..." 300 "<<set $scene.cum=false>>">>]
</div>/*#
#desc: npc_technician visits you on upper floor: sub options if she cums
#status: WRITTEN 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<if $scene.cum>>
<<set $npc_technician.flags.upperVisit.sub.cum = true>>
<<applyExperience 'dominance' 15 'normal' $SEEN_FRIEND>>
<<else>>
<<set $npc_technician.flags.upperVisit.sub.nocum = true>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You command <<=setup.getNpcName("npc_technician","first")>> to
<<if $scene.cum>>
cum and she obeys almost instantly, crying out in climax as she shudders with a full body orgasm.<br>
<br>
"@@.npc_technician;Fuck I needed that...@@" she whispers<<if $npc_technician.relationship.her_caged && ["anal","vag"].includes($scene.action)>> as you lock her cage back over her now flaccid <<getWordPenis false>><</if>>. She smiles at you and then curtsies obediently. "@@.npc_technician;Thank you so much<<if $npc_technician.relationship.her_role=="sub">>, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> — you always treat this slave so well... unfortunately she now needs<<else>>... unfortunately I need<</if>> to get back to work.@@"<br>
<br>
She leans in for a kiss,
<<else>>
stop. She whispers softly, and then obeys, trembling adorably as she drips<<if $npc_technician.relationship.her_caged && !["anal","vag"].includes($scene.action)>> through her cage<</if>> while standing obediently with her hands behind her back.<br>
<br>
"@@.npc_technician;Am I not allowed to cum today?@@" She asks breathlessly.<br>
<br>
You smile, collecting yourself as you shake your head and explain that you prefer your slaves edged and eager to please, throwing her a teasing lifeline as you note that the weekend is not THAT far away...<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip and twitches adorably before curtsying obediently. "@@.npc_technician;Of course<<if $npc_technician.relationship.her_role=="sub">>, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I remain, as always, your obedient slave, who looks forward to whatever pleasure or torment it would be your will to provide.<<else>>... Goddess you're such a tease! I love it!<</if>>@@"<br>
<br>
You smile, pulling her in for a kiss as you congratulate her on being <<if $npc_technician.relationship.her_role=="sub">>a very good slave<<else>>oh-so-sexy<</if>><<if $npc_technician.relationship.her_caged && ["anal","vag"].includes($scene.action)>> as you lock her back in chastity and remind her<<else>>, but noting<</if>> that she needs to return to work. She blushes
<</if>>
and then skips away, wobbling just slightly on her way out the door as she recovers from your little "session." <br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 180 "<<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>><<set $player.work.nowWorking=true>><<completeWorkEvent>>">>]
</div>/*#
#desc: npc_technician visits you on upper floor: dom options
#status: WRITTEN 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<switch $scene.action>>
<<case "vag">>
<<playerOrgasm>>
<<case "anal">>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<case "oral">>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<if -1 == setup.findThemeId('npc_technician', 'sex', 'theme_technician_sex_blowjob')>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_blowjob'
5
'event_technician_theme_blowjob'
true
>>
<</if>>
<<case "spank">>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<</switch>>
<<set $npc_technician.flags.upperVisit.dom[$scene.action] = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "vag">>
<<=setup.getNpcName("npc_technician","formal")>> guides you back into your chair with one hand<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>, your chastity belt unlocking automatically<</if>> as she frees her <<getWordPenis false>> with the other hand, fingering you for a moment as she guides herself into you. "@@.npc_technician;Someone's excited for their <<=setup.getNpcName("npc_technician","title")>>... or maybe this crazy chair means you're always wet. Either way...@@"<br>
<br>
You moan as she slides into you, then gasp as the chair shoves a dildo into your waiting ass. You look up as <<=setup.getNpcName("npc_technician","formal")>> finishes taping on her wrist controller as she grins and rolls her hips, the dildo in your rear starting to vibrate. "@@.npc_technician;Mmm, I can feel you tightening up, you really love being double penetrated, don't you?@@"<br>
<br>
Your reply is cut off by her leaning in for a passionate kiss, her tongue finishing the trifecta of penetration as she and the chair fuck you hard, plunging deep as the chair rocks back and forth, her body pressed tight against yours until you cum together and she finally pulls back for the two of you to catch your breath.<br>
<br>
"@@.npc_technician;Whew! Now that's how you liven up an afternoon! Hate to fuck and run but... well, we're both still on the clock, catch you later!@@"<br>
<br>
You're still catching your breath as she fixes her clothes and blows you a kiss before skipping out of the office.
<<case "anal">>
You obediently bend over and wiggle your ass in offering and <<=setup.getNpcName("npc_technician","first")>> gives it a firm squeeze. "@@.npc_technician;Goddess, you spend your day sitting on that chair getting fucked... and yet you're still insatiable to have my <<getWordPenis false>> in that tight <<if $fetish.sissy>>sissy <</if>>hole.@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_technician","title")>>,@@" you moan as you arch your back to look back at her and flutter your eyes.<br>
<br>
"@@.npc_technician;Well far be it from me to resist such a wonderful offer,@@" she replies and you moan as her <<getWordPenis false>> slides into your ready hole.<br>
<br>
"@@.npc_technician;So good...@@" She grunts, pressing you into your desk with each wonderful stroke, your chair-maintained arousal means it isn't long before her efforts grant you a moment of satiation, your rolling analgasm triggering a climax of her own that leaves you both a bit weak in the knees as you flop back into your chair.<br>
<br>
"@@.npc_technician;Goddess you're good,@@" she pants, looking at you with raw lust even as she slides her spent <<getWordPenis false>> back into her panties. "@@.npc_technician;As much as I'd like to stick around for round two... I do have more work to get back to, I'll catch you later, Princess. Enjoy your royal throne!@@"<br>
<br>
She winks and heads for the exit as you catch your breath and turn back to your work.
<<case "oral">>
You lick your lips in invitation and soon find yourself on your knees in a familiar position, <<=setup.getNpcName("npc_technician","first")>> sliding into your chair as you <<if $npc_technician.flags.dataservice_encounter.handjob>>re-enact an old favourite<<else>>do your duty<</if>>.<br>
<br>
You hear a slight gasp and hear a buzz as <<=setup.getNpcName("npc_technician","first")>> hardens even firmer between your lips as the chair engages.<br>
<br>
"@@.npc_technician;Goddess, and you work like this?@@"<br>
<br>
You hum an assent as you continue to suck, <<=setup.getNpcName("npc_technician","first")>> moaning with pleasure as she grips the chair firmly. "@@.npc_technician;Such insatiable self-control... I don't know if I'm jealous or scared...@@"<br>
<br>
Your eyes twinkle in response as you bob up and down — you can hear the dildo in <<=setup.getNpcName("npc_technician","first")>> rear thrusting even faster and it isn't much longer before she <<if $fetish.cum>>fills your mouth with her salty climax<<else>>gasps in ecstasy<</if>>.<br>
<br>
You grin as she falls back in relief, disabling the chair as you finish licking her clean and tucking her back in her panties.<br>
<br>
"@@.npc_technician;Fuck that was good... but now I have to get back to work.@@" She rises to her feet and wobbles slightly in her heels. "@@.npc_technician;This company... I shall yield your throne back... it's maybe a bit much for this <<=setup.getNpcName("npc_technician","title")>>...@@"<br>
<br>
You wiggle with pride and tell her she's welcome to take it for a spin some other time.<br>
<br>
"@@.npc_technician;Yeah... maybe if I didn't have such a ravenous slave between my legs I could last longer... though... where would be the fun in that?@@"<br>
<br>
She gives you a seat and helps you back into your chair before leaving the office.
<<case "spank">>
You obediently bend over the desk and flip up your skirt.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>"@@.npc_technician;Plugged on the job?@@" <<=setup.getNpcName("npc_technician","first")>> remarks as she gives your plug a wiggle. "@@.npc_technician;As if that crazy bondage fuck-chair wasn't enough... goddess you have a crazy job... almost makes me wish I'd studied to be a Secretary instead of getting a degree in tech.@@"<<else>>"@@.npc_technician;I will never get tired of seeing dat ass. Goddess you're hot.@@"<</if>><br>
<br>
A couple of groping seconds of preparation and <<=setup.getNpcName("npc_technician","formal")>> lands the first spank with a hard WHACK. "@@.npc_technician;Look at that booty jiggle!@@" WHACK WHACK.<br>
<br>
You pant softly as <<=setup.getNpcName("npc_technician","formal")>> continues the spanking, each slap of her hand making you shudder with submissive lust as she turns your bottom a nice shade of red before groping your tender flesh some more.<br>
<br>
"@@.npc_technician;So beautiful and squishy... I could paddle you for another hour... but I don't want to get in trouble for skipping work, or get you in trouble if that manager of yours decides to return early.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> leans in for a final caress as she kisses your butt. "@@.npc_technician;Until next time, your gorgeous double hemispheres stay tight and plump and fuckable<<if $npc_technician.relationship.her_caged>>... well, if I wasn't locked in this infernal cage, goddess, things keep up like this and the next time I'm out on parole I am going to fucking RUIN you<</if>>.@@"<br>
<br>
You bite your lip, wishing <<=setup.getNpcName("npc_technician","formal")>> would just fuck you here and now... but she's already skipping out of the room, leaving you to satisfy yourself by gingerly lowering yourself back onto your chair, wincing as your tender rear makes contact with the fine leather, then moaning as the anal dildo trusts into you and your restraints tighten.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 180 "<<set $player.work.nowWorking=true>><<completeWorkEvent>>">>]
</div><<if $npc_pr_sissy.stage >= 1 && $npc_sexdoll.stage >= 2 && $npc_manager.stage >= 3 && !State.hasPlayed("event_brainscan_1")>>
<<addWorkEvent "brainscan_event">>
<</if>>/*#
#desc: brainscan event intro
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Finished with your inspection you are about to return to your desk when <<=setup.getNpcName("npc_manager","formal")>> stops you. "@@.npc_manager;Bit of a detour, this morning. You have been selected for internal test of a new pilot program meant to monitor employee mental health.@@"<br>
<br>
[<<moveTo "event_brainscan_2" 'But you already had your assessment with <<=setup.getNpcName("npc_psychiatrist","formal")>>.' 60 "<<set $scene.psych=true>>">>]<br>
[<<moveTo "event_brainscan_2" "Ask what she means?" 60 "<<set $scene.psych=false>>">>]
</div>/*#
#desc: brainscan event intro
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.psych>>
You ask if this is another meeting with <<=setup.getNpcName("npc_psychiatrist","formal")>> or something?<br>
<br>
"@@.npc_manager;No, this is a more experimental, pilot program.@@" <<=setup.getNpcName("npc_manager","formal")>> states.
<<else>>
You ask what this is going to involve?
<</if>>
<br><br>
"@@.npc_manager;Ignoring the complex technical details, the Company is doing research on how to better invest in its workforce. Part of this is to take a sort of snap-shot of employee psychological states and tracking such over time so as to better understand how the happiest, most effective employees develop over the course of their careers. Anyway, it's non-invasive and should not take too much of your time, but you do have an appointment, so you had best be off!@@"<br>
<br>
[<<moveTo "event_brainscan_3" "Go to your appointment." 300>>]
</div>/*#
#desc: arrive for brainscan
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Medical Research Division.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_evil_nurse","npc_evil_nurse") setup.charImage("npc_pr_sissy","npc_pr_sissy_1")>>
<div id="invframe" class="scrolltext">
You take the elevator up to the 120th floor, dedicated to medical research, looking almost hospital-like with white walls and tile floors compared to the more staid corporate styling you're used to.<br>
<br>
You quickly locate the designated office, entering the waiting room just before a bizarrely dressed nurse steps out to call the patient ahead of you.<br>
<br>
"@@.npc_evil_nurse;<<=setup.getNpcName("npc_pr_sissy","formal")>>? Here for your... third reading?@@"<br>
<br>
"@@.npc_pr_sissy;Yup!@@" The only other person in the room states enthusiastically, <<=setup.getNpcName("npc_pr_sissy","formal")>> popping to her feet with a wide grin while the nurse maintains the same flat, almost bored affect.<br>
<br>
"@@.npc_evil_nurse;Then you know the drill, come along.@@" The nurse glances past you as <<=setup.getNpcName("npc_pr_sissy","formal")>> zips past her. "@@.npc_evil_nurse;Take a seat, we will be with you shortly.@@"<br>
<br>
The door closes behind them, leaving you alone in the waiting room, still boggling at the sight of the nurse. While unmistakably medical, her uniform is like none you have ever seen, more like something out of science fiction, a skin-tight, shiny bodysuit accentuated by an angular metal shoulder piece and collar, and what almost looked like a corset around her waist!<br>
<br>
<<printThought "How weird... maybe it's for some sort of sterilization reason? I guess the collar would easily interface with a helmet, and the rest of it would keep her from coming into contact with anything... but still, it almost looked like she was wearing latex, and... isn't this supposed to be a non-invasive scan?">><br>
<br>
All you can do is wait and stew on the strange nurse as you wait.<br>
<br>
[<<moveTo "event_brainscan_4" "Wait." 1800>>]
</div>/*#
#desc: wait for brainscan
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Medical Research Division.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_1")>>
<div id="invframe" class="scrolltext">
Almost half an hour passes before <<=setup.getNpcName("npc_pr_sissy","formal")>> emerges alone.<br>
<br>
As she passes she flashes you a smile. "@@.npc_pr_sissy;First time? The procedure is super easy, and it's so exciting to help the company develop even better products and processes for the future! All of us play an important role in making this the best company ever!@@"<br>
<br>
You force a smile and the woman leaves and you get a bit of mood whip-lash as the nurse appears and calls your name.<br>
<br>
"@@.npc_evil_nurse;Miss <<=$player.last_name>>? Come along.@@"<br>
<br>
<<if $player.identify_as == "male">>
[<<moveTo "event_brainscan_5" "Correct her that it's Mr. <<=$player.last_name>>." 180 "<<set $scene.gender=true>>">>]<br>
<</if>>
[<<moveTo "event_brainscan_5" "Follow her." 180 "<<set $scene.gender=false>>">>]
</div>/*#
#desc: start brainscan
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "vr_helmet_copy">>
<<wearItem "vr_helmet_copy" true>>
<<addItem "hollow_gag">>
<<wearItem "hollow_gag" true>>
<</if>>
<<set $player.location to 'Medical Research Division.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_evil_nurse","npc_evil_nurse") setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<if $scene.gender>>
You correct the nurse that it's Mr. <<=$player.last_name>>, actually and she nods dismissively. "@@.npc_evil_nurse;Of course it is, Sir. I will make a note to have that error addressed, now, if you would come with me?@@"<br>
<br>
<</if>>
You rise from your seat to follow her out of the waiting room.<br>
<br>
The corridor beyond is the same sterile medical facility, and she leads you up the hall and into a small exam room dominated by a large machine.<br>
<br>
"@@.npc_evil_nurse;If you would take a seat<<if $scene.gender>>... sir,<</if>>@@" she orders<<if $scene.gender>>, over-emphasising your pronoun in a borderline mocking manner<</if>>.<br>
<br>
The seat in question is at the centre of the machine, more akin to a machine throne than a normal chair and the nurse waits for you to take a seat before pressing a switch that causes a series of restraints to snap over you, locking in place and then slowly tightening as they hold you immobile.<br>
<br>
"@@.npc_evil_nurse;The machines we will be using today are quite sensitive — they require near total immobility for optimal readings. Please relax and the procedure will be completed shortly.@@" Her voice never changes inflection as she lowers a large mask over your face that further secures you and obscures your vision.<br>
<br>
Just before the mask closes over your head you catch sight of
<<if $npc_primrose.profile>>
<<=setup.getNpcName("npc_primrose","formal")>>, <<his npc_primrose>> expression very focused on <<his npc_primrose>> work as <<he npc_primrose>> gives you only a brief smile of acknowledgement before focusing on the machine.
<<else>>
a very curious looking scientist monitoring the controls — their studious expression something of a contrast to their steep, company-emblazoned collar and large pink hair.
<</if>>
The mask deafens and blinds you as a gag is added to silence you as the rest of your restraints seal even tighter leaving you completely immobile.<br>
<br>
[<<moveTo "event_brainscan_6" "Struggle." 180 "<<set $scene.struggle=true>>">>]<br>
[<<moveTo "event_brainscan_6" "Remain calm." 180 "<<set $scene.struggle=false>>">>]
</div>/*#
#desc: start brainscan
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'normal' $SEEN_STRANGER>>
<<if !$scene.struggle>>
<<applyExperience 'submission' 10 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to 'Medical Research Division.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_evil_nurse","npc_evil_nurse") setup.getPrimroseImage("lab")>>
<div id="invframe" class="scrolltext">
<<if $scene.struggle>>
You try to struggle against your restraints, calling out for help into the void even as the machine responds to your every motion by tightening further.<br>
<br>
"@@.npc_primrose;Please remain calm,@@" <<if $npc_primrose.profile>><<=setup.getNpcName("npc_primrose","formal")>> attempts to comfort, with significant nervous emotion in his tone compared to the stoic attitude of the nurse <<else>>a slightly nervous voice that is significantly more emotional than the stoic nurse, states in your ear<</if>>. "@@.npc_primrose;Disrupting the readings will only increase the duration of the procedure.@@"<br>
<br>
[<<moveTo "event_brainscan_6a" "Keep struggling." 180>>]<br>
[<<moveTo "event_brainscan_6" "Calm down." 180 "<<set $scene.struggle=false>>">>]
<<else>>
You take a deep breath and try to relax as best you can. Surprisingly, though you may be all but immobile, the padded chair is actually surprisingly comfortable. In fact, it's almost soothing, the dark silence a calming, somewhat welcome change from your more frenetic life of late...<br>
<br>
[<<moveTo "event_brainscan_7" "Continue." 180>>]
<</if>>
</div>/*#
#desc: struggle during brainscan
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<<applyFatigue 50>>
<<applyStress -15>>
<</if>>
<<set $player.location to 'Medical Research Division.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_evil_nurse","npc_evil_nurse") >>
<div id="invframe" class="scrolltext">
You continue to strain in your seat, for all the good that it does you, and a moment later it is the nurse who is speaking in your ear. "@@.npc_evil_nurse;Patient panicking, administering sedative.@@"<br>
<br>
You catch the whiff of something and then everything starts to get foggy, your reason for resistance slipping away as you realise that, actually, this position is remarkably comfortable...<br>
<br>
[<<moveTo "event_brainscan_7" "Continue." 1800>>]
</div>/*#
#desc: finish brainscan
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "vr_helmet_copy" true>>
<<deleteItem "vr_helmet_copy">>
<<removeItem "hollow_gag" true>>
<<deleteItem "hollow_gag">>
<</if>>
<<set $player.location to 'Medical Research Division.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_evil_nurse","npc_evil_nurse") >>
<div id="invframe" class="scrolltext">
You wake up as the restraints release and you blink away the suddenly bright lights of the exam room.<br>
<br>
"@@.npc_evil_nurse;Thank you for participating in this employee progress monitoring program. Subsequent exams may be scheduled as deemed necessary.@@"
<<if $scene.struggle>>
The nurse makes no comment as to your earlier resistance, which for some reason you find yourself rationalising as just a bit of claustrophobia. After all, nothing bad happened, in fact, you feel surprisingly rested and recharged after your short nap...
<<else>>
You feel remarkably rested and recharged from your short nap, reflexively smiling as you stand up from the chair.
<</if>>
<br><br>
The nurse leads you back to the waiting room where the next patient is already waiting, <<=setup.getNpcName("npc_sexdoll","first")>> looking as nervous as you were in what must be their first appointment...<br>
<br>
[<<moveTo "event_brainscan_8" "Reassure them that everything is going to be fine." 180 "<<set $scene.action='comfort'>>">>]<br>
[<<moveTo "event_brainscan_8" "Just continue on your way." 180 "<<set $scene.action='none'>>">>]<br>
[<<moveTo "event_brainscan_8" "Warn them!" 180 "<<set $scene.action='warn'>>">>]
</div>/*#
#desc: return to office after brainscan
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'coworker_sexdoll' _nextDate>>
<</if>>
<<set $player.location to 'Medical Research Division.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_sexdoll","npc_sexdoll_2")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'comfort'>>
You smile at <<=setup.getNpcName("npc_sexdoll","first")>> and tell them not to worry, that the procedure is actually pretty relaxing.<br>
<br>
"@@.npc_sexdoll;Thanks,@@" they reply. "@@.npc_sexdoll;I guess I'm just always a bit nervous in hospitals and such, but yeah, it's just taking some readings, right? I'm sure it'll be fine.@@"<br>
<br>
You nod as the nurse calls their name and they hurry off.
<<case 'none'>>
You walk past <<=setup.getNpcName("npc_sexdoll","first")>> as the nurse calls their name and they nervously follow her for their procedure.
<<case 'warn'>>
You start to warn <<=setup.getNpcName("npc_sexdoll","first")>> about the procedure only to be drowned out by the nurse loudly calling "@@.npc_evil_nurse;Mr. <<=setup.getNpcName("npc_sexdoll","first")>>!@@"<br>
<br>
"@@.npc_sexdoll;Sorry, have to catch you later,@@" <<=setup.getNpcName("npc_sexdoll","first")>> replies before dashing off to leave you alone.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You head back to your office to resume work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: failed to show up for first work doctor visit.
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 18, 0)>>
<<addTaskById 'event_doctor_first_appointment' _nextDate>>
<<addWorkEvent 'failed_prescription_event'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are being called by <<=setup.getNpcName('npc_work_doctor', 'formal')>>.<br>
<br>
"@@.npc_work_doctor;Hello <<=$player.first_name>>. You appear to have missed our check-up. I am disappointed, but suppose I should not be overly surprised. <<=setup.getNpcName('npc_manager', 'formal')>> will have your drugs for you in the morning, including a special remedial dose. Please try and remember to make our next meeting as without in-person check ups I will be unable to maximize the effectiveness of your regime.@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: first time visiting npc_work_doctor for re-up
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 18, 0)>>
<<addTaskById 'event_doctor_reup' _nextDate>>
<<set $scene.first = !$npc_work_doctor.profile>>
<<if $scene.first>>
<<set $npc_work_doctor.profile = true>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
A <<man npc_work_doctor>> in a labcoat greets you as the enter the room, wild eyes and a wide smile beckoning you forward.<br>
<br>
"@@.npc_work_doctor;Ah, <<if $player.sec_style.clothing.female>>Miss<<else>>Mister<</if>> <<=$player.last_name>>? I was expecting you. It would seem that you are having some difficulties with your medication? Well I promise we will get that ALL sorted out. First off, how about you suck my cock.@@"
<<elseif State.hasPlayed("event_work_doctor_nonappointment_1")>>
Rising from <<his npc_work_doctor>> desk, <<=setup.getNpcName("npc_work_doctor","formal")>> grins at you in greeting.<br>
<br>
"@@.npc_work_doctor;Welcome back, <<if $player.sec_style.clothing.female>>Miss<<else>>Mister<</if>> <<=$player.last_name>>... in a way it is almost surprising that it took you this long to fall under my care... well, let us get to your appointment. You may start by sucking my cock.@@"
<<else>>
Rising from <<his npc_work_doctor>> desk, <<=setup.getNpcName("npc_work_doctor","formal")>> waves you into the large exam room before closing, and locking, the door behind you.<br>
<br>
"@@.npc_work_doctor;Excellent, you found the place alright, let's see how you're progressing, hmm? First off, how about you suck my cock.@@"
<</if>>
<br><br>
<<if setup.hasTmpEffect('sissypill_mk2')>>
It feels like the drugs are pushing away all other thoughts and <<his npc_work_doctor>> proposal sounds quite natural and reasonable...<br>
<br>
[<<moveTo "event_work_doctor_first_visit_2" "Sure, that sounds great!" 60 "<<set $scene.style='drug'>>">>]<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_work_doctor_first_visit_2" "No, resist!" 60 "<<set $scene.style='resist'>><<spendWillpower 1>>">>]
<<elseif !$fetish.get_raped>>
[<<moveTo "event_work_doctor_first_visit_2" "Somehow resist." 60 "<<set $scene.style='resist'>>">>]
<<else>>
[@@.link_locked;You lack the will to resist the effects of the drugs.@@]
<</if>>
<<elseif setup.getTotalValue("bimbofication") > 10>>
You are a bit surprised by <<his npc_work_doctor>> bluntness, but your bimbo tendencies means that such a proposal is reflexively greeted with a smile.<br>
<br>
[<<moveTo "event_work_doctor_first_visit_2" "Play along and do as <<he npc_work_doctor>> says." 60 "<<set $scene.style='bimbo'>><<decrementEmotion 'anger' 'npc_work_doctor' 1>>">>]<br>
[<<moveTo "event_work_doctor_first_visit_2" "No, this isn't proper medical care!" 60 "<<set $scene.style='resist'>>">>]
<<else>>
Without the benefits of drugs or a greater ease with being treated like a bimbo slut you reflexively react with shock and <<his npc_work_doctor>> brow furrows.<br>
<br>
<<if $player.flags.pink_pill.times_od1 == 0>>
"@@.npc_work_doctor;Excellent, it appears that you are thinking "normally" — such a blunt request is, of course, absurd, but loss of inhibition would be an indication that the drugs you are taking are having a negative reaction. As it is it would appear that your referral is due to something else entirely... but never fear! I have an alternate concoction for just such an occasion that will have you feeling much, much... better.@@"
<<else>>
"@@.npc_work_doctor;Excellent, it appears that you are returning to "normal" — such a blunt request is, of course, absurd, but if you were still suffering under the effects of your overdose your mind would be unable to parse that out.@@"
<</if>>
<br><br>
Dismissively <<he npc_work_doctor>> hands you another jar of pills. "@@.npc_work_doctor;Please take these diligently if you want to continue your recovery. I will see you in a week.@@"<br>
<br>
<<printThought "Why do I feel like <<he npc_work_doctor>> was expecting a different reaction? Does <<he npc_work_doctor>> suspect that I haven't been following the prescription?">><br>
<br>
<<He npc_work_doctor>> has already turned back to <<his npc_work_doctor>> work and waves at you in dismissal.<br>
<br>
[<<moveTo "company_lobby" "Leave and head down to the lobby." 600 "<<incrementEmotion 'anger' 'npc_work_doctor' 1>><<addItem 'personal_medication' 7>>">>]
<</if>>
</div>/*#
#desc: npc_work_doctor tests how the initial drugs are working
#status: FINISHED 0.7.4.0
#ignore_spell: mk1
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.havePills = setup.checkItemOwned('personal_medication')>>
<<switch $scene.style>>
<<case 'bimbo' 'drug'>>
<<applyExperience 'oral' $npc_work_doctor.penis_size_boosted 'normal' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'cum' 10 'normal' $SEEN_STRANGER>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_work_doctor'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "forced">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<case 'resist'>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<</switch>>
<<addItem 'personal_medication' 7>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'bimbo'>>
You're pretty sure that <<=setup.getNpcName("npc_work_doctor","formal")>> is expecting you to obey due to drugs, but the prospect of missing out on sucking a nice juicy cock seems hardly worth dissuading <<him npc_work_doctor>> of that erroneous impression.<br>
<br>
Noting your positive reaction, <<he npc_work_doctor>> unzips <<his npc_work_doctor>> pants allowing you to eagerly pounce upon <<his npc_work_doctor>> large, blue-veined <<getWordPenis "npc_work_doctor">>. Though <<he npc_work_doctor>> seems disinterested in the quality of your work you passionately give it everything you have, your "reward" consisting of <<him npc_work_doctor>> pulling out at the last moment to blast all over your face.<br>
<br>
<<if $player.flags.used_sissy_pill_2_count > 0 || $scene.havePills>>
"@@.npc_work_doctor;Wonderful, the medication is working just as designed.@@" <<He npc_work_doctor>> tosses you another pill bottle that you eagerly catch. "@@.npc_work_doctor;Alright, see you in another week, slut. Keep taking your medicine and I might have an even better reward for you.@@"<br>
<br>
Clear-headed... at least as far as the drugs are concerned, you wonder what's really going on, after all, if this is considered a "pass" then the <<=setup.getItemName('personal_medication')>>'s <<he npc_work_doctor>> prescribed are for something very different than reversing the effects of the Mk1 version. You turn to leave when <<he npc_work_doctor>> calls after you.<br>
<br>
"@@.npc_work_doctor;Wipe yourself off, just because you are a whore doesn't mean you have to look like it.@@" <<He npc_work_doctor>> states, tossing you a towel. Not wanting to arouse suspicions, you do as <<he npc_work_doctor>> says,
<<else>>
"@@.npc_work_doctor;It is just as I feared.@@" <<He npc_work_doctor>> states before handing you a pill bottle. "@@.npc_work_doctor;The drugs seem to have impacted your judgement. Do not worry, taking one of those pills every day will fix you up in no time.@@"<br>
<br>
You're a bit confused at why <<he npc_work_doctor>> let you blow <<him npc_work_doctor>> to completion but are taken off-guard by <<him npc_work_doctor>> tossing you a towel. "@@.npc_work_doctor;Well go on then, clean yourself off — clean body, clean mind, and all that.@@"<br>
<br>
You're still confused, but you do as <<he npc_work_doctor>> instructs,
<</if>>
and then depart <<his npc_work_doctor>> lab to head for the lobby.
<<case 'resist'>>
You bristle at <<his npc_work_doctor>> suggestion and start to object to such a lewd offer only for <<him npc_work_doctor>> to cut you off.<br>
<br>
<<if $player.flags.used_sissy_pill_2_count > 0 || $scene.havePills>>
"@@.npc_work_doctor;Excellent, the treatment is working.@@"<br>
<br>
You freeze mid-diatribe as <<he npc_work_doctor>> snorts and tosses you another bottle of pills.<br>
<br>
"@@.npc_work_doctor;You remember what happened under the previous treatment, if you were still afflicted by such, you would have had a quite different reaction to my offer. Still, best not to get too comfortable, you must remember to take your drugs every day if you do not want to risk a relapse.@@"
<<else>>
"@@.npc_work_doctor;Excellent, it would seem that your thoughts have not been overly afflicted by your overdose.@@"<br>
<br>
You freeze mid-diatribe as <<he npc_work_doctor>> snorts and tosses you a bottle of pills.<br>
<br>
"@@.npc_work_doctor;Despite your apparent control the risk of relapse or other lingering issues is high. You will want to take one of those pills every day if you do not want to risk complications.@@"
<</if>>
<br><br>
With a wave <<he npc_work_doctor>> dismisses you and returns to <<his npc_work_doctor>> work.
<<case 'drug'>>
<<if setup.getTotalValue("bimbofication") > 15>>
You can try to blame it on the drugs fogging your mind, but the fact is you're a slut even stone cold sober.
<<else>>
A wave of pink flows over you as you find your entire focus re-orienting around <<his npc_work_doctor>> command.
<</if>>
<br><br>
Dropping to your knees, you take <<his npc_work_doctor>> large, blue-veined <<getWordPenis "npc_work_doctor">> into your mouth and commence to sucking. Though <<he npc_work_doctor>> seems disinterested in the quality of your work you passionately give it everything you have, your "reward" consisting of <<him npc_work_doctor>> pulling out at the last moment to blast all over your face.<br>
<br>
"@@.npc_work_doctor;Wonderful, the medication is working just as designed.@@" <<He npc_work_doctor>> tosses you another pill bottle that you eagerly catch. "@@.npc_work_doctor;Alright, see you in another week, slut, keep taking your medicine and I might have an even better reward for you.@@"<br>
<br>
With a lusty smile on your face, you lick your lips and nod, turning toward the door when <<he npc_work_doctor>> stops you with a shout.<br>
<br>
"@@.npc_work_doctor;Wipe yourself off, just because you are a whore doesn't mean you have to look like it.@@" <<He npc_work_doctor>> states, tossing you a towel. Still in the groove of obeying <<his npc_work_doctor>> every command you clean your face of <<his npc_work_doctor>> seed and finally depart the office to head for the lobby.
<</switch>>
<br><br>
[<<moveTo "company_lobby" "Lobby." 300>>]
</div>/*#
#desc: work_doctor visits for mandatory drugs
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_work_doctor") setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> arrives for a meeting with your <<=setup.getNpcName("npc_manager","title")>>. You can tell that she is displeased by <<his npc_work_doctor>> smarmy presence, but motions for both you and <<=setup.getNpcName("npc_work_doctor","formal")>> to join her in her inner office.<br>
<br>
"@@.npc_manager;I assume I am correct that this is concerning <<=$player.first_name>>'s physical?@@"<br>
<br>
"@@.npc_work_doctor;Yes... I have gone through the results and, well... concerns have been raised relating to <<=$player.first_name>> keeping up with the prescribed drug regimen. It was decided that some... additional precautions should be taken to ensure that she is staying on top of things, and that you are supplying her with sufficient quantities?@@"<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> expression hardens. "@@.npc_manager;<<=$player.first_name>>'s performance is under my jurisdiction. I provide medication as seems sufficient, and in accordance with my performance expectations.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> takes a step back as if to put range between <<himself npc_work_doctor>> and your clearly displeased manager. Despite <<his npc_work_doctor>> caution <<he npc_work_doctor>> seems to take great delight as <<he npc_work_doctor>> delivers <<his npc_work_doctor>> next statement. "@@.npc_work_doctor;Alas... that reticence is in violation of new policy. While you continue to cling to... outdated, inefficient procedures the rest of the executive team has come to recognise the value that my chemical assistance can provide. Thus, I am pleased to announce that "performance" medication is now mandatory for all assistants at the senior executive level. I am sure that we will be pushing things even further down the chain of command once the morale and productivity boosts become clear.@@"<br>
<br>
You can tell that <<=setup.getNpcName("npc_manager","formal")>> is seething as <<=setup.getNpcName("npc_work_doctor","formal")>> continues on. "@@.npc_work_doctor;Oh, and as an aid to executing these new requirements, prior restrictions on quantity have been amended. For efficiency managers are now mandated to distribute a full week's allotment when requested. This change is to make sure the first requirement proceeds smoothly, note that I may be by occasionally to perform spot-checks to make sure that <<=$player.first_name>> is complying with the new requirements.@@"<br>
<br>
"@@.npc_manager;Get out.@@" <<=setup.getNpcName("npc_manager","formal")>> practically growls.<br>
<br>
"@@.npc_work_doctor;I just need to confirm that you have received, and acknowledged, these new requirements...@@" <<=setup.getNpcName("npc_work_doctor","formal")>> replies, grinning wide as <<he npc_work_doctor>> taunts <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> false bravado disappears in an instant as <<=setup.getNpcName("npc_manager","formal")>> stares <<him npc_work_doctor>> down, her eyes flaring with rage. "@@.npc_manager_dom;Acknowledged, now get. Out.@@"<br>
<br>
Realising that <<he npc_work_doctor>> may have gone a bit too far in poking the bear, <<=setup.getNpcName("npc_work_doctor","formal")>> hurriedly backs away. <<if $fetish.piss>>As <<he npc_work_doctor>> moves past you on the way out the door you would swear you caught the faint whiff of <<getWordPiss>>...<</if>><br>
<br>
[<<moveTo 'event_work_doctor_drug_2' 'Continue.' 120>>]
</div>/*#
#desc: work_doctor visits for mandatory drugs, manager summary
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_work_doctor.flags.mandatoryPills = true>>
<<set _nextDate = setup.setNextDate($now, 3, 7, 10)>>
<<addWorkEvent 'drug_check' _nextDate>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
Once <<=setup.getNpcName("npc_work_doctor","formal")>> is gone <<=ps(setup.getNpcName("npc_manager","formal"))>> hardened expression melts and
<<if $npc_manager.affection > $npc_manager.anger>>
she smiles at you. "@@.npc_manager;I am sorry about this... unfortunately you will have to deal with these new requirements... for now. Perhaps spending time with <<=setup.getNpcName("npc_work_doctor","formal")>> you might figure out an alternative arrangement?@@"
<<elseif $npc_manager.affection == 0 && $npc_manager.anger == 10>>
she shakes her head. "@@.npc_manager;I suppose your disobedience was always going to come to this... <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> methods may be crude, but they can be effective. In any case, this will be your new normal... unless you manage to figure something else out, perhaps by spending time working in <<his npc_work_doctor>> lab?@@"
<<else>>
she shakes her head. "@@.npc_manager;Well this was not what I had planned... in any case, consider these new requirements your new normal... unless you manage to figure something else out, perhaps by spending time working in <<his npc_work_doctor>> lab?@@"
<</if>>
<br><br>
She returns to her seat and dismisses you with a wave. "@@.npc_manager;Visit me at the end of the day whenever you need a refill on your prescription. As noted... I am now required to fill you up with a full week's dosage at a time.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: work_doctor drops in to check your drug level
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.managerPresent = $npc_manager.affection > $npc_manager.anger>>
<<if $scene.managerPresent && !setup.hasTmpEffect('sissypill_mk1') || setup.hasTmpEffect('sissypill_mk1_od') || setup.hasTmpEffect('sissypill_mk2') || setup.hasTmpEffect('sissypill_mk2_od')>>
<<switch $npc_manager.stage>>
<<case 3>>
<<set $npc_manager.stagevalues[3].drugs_req = true>>
<<set _x = setup.addManagerEndlessTask()>>
<</switch>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.managerPresent>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_work_doctor") setup.charImage("npc_manager")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_work_doctor")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> arrives at the office and approaches your desk.<br>
<br>
"@@.npc_work_doctor;So... been keeping up with your medication?@@" <<He npc_work_doctor>> asks with a leering smile.<br>
<br>
<<if $scene.managerPresent>>
You hear a sound and glance over to see <<=setup.getNpcName("npc_manager","formal")>> standing in the door to her office. Though she says not a word, <<=setup.getNpcName("npc_work_doctor","formal")>> immediately adopts a more formal tone.
<<else>>
You instinctually glance past <<him npc_work_doctor>> to the closed door to the inner office.<br>
<br>
<<printThought "Maybe if I wasn't so misbehaved...">>
<</if>>
<br><br>
<<=setup.getNpcName("npc_work_doctor","formal")>> instructs you to extend a finger. After wiping it with a bit of alcohol <<he npc_work_doctor>> pricks it and then sucks a few drops of blood into a small plastic tab before sealing the wound. Slotting the tab into a machine <<he npc_work_doctor>> takes a moment and
<<if setup.hasTmpEffect('sissypill_mk1') || setup.hasTmpEffect('sissypill_mk1_od') || setup.hasTmpEffect('sissypill_mk2') || setup.hasTmpEffect('sissypill_mk2_od') || setup.hasTmpEffect('sissypill_eternal')>>
<<if setup.hasTmpEffect('sissypill_mk1')>>
smiles. "@@.npc_work_doctor;Ah, yes, a nice healthy quantity in your bloodstream. This is just what you need to optimally perform your duties. Very good.@@"
<<elseif setup.hasTmpEffect('sissypill_mk1_od')>>
smiles wide. "@@.npc_work_doctor;From the look of this you've been taking a little extra... very good, ambitious obedience is the recipe for success for one in your position.@@"
<<elseif setup.hasTmpEffect('sissypill_mk2')>>
smiles. "@@.npc_work_doctor;Good, you continue to keep up with your medication. I know you got in a bit of trouble with drugs before, but I think it all worked out for the best, don't you agree?@@"
<<elseif setup.hasTmpEffect('sissypill_mk2_od')>>
smiles wide. "@@.npc_work_doctor;My, my, it would seem that you failed to learn from your previous overdose... still, one cannot deny the lovely results that your heavy dosage induces. I almost wonder what would happen if you kept it up...@@"
<<if $scene.managerPresent>>
<<He npc_work_doctor>> glances over to <<=setup.getNpcName("npc_manager","formal")>> glaring daggers at <<him npc_work_doctor>>. "@@.npc_work_doctor;Of course you should not do such a thing. No, you should stick to the dosages prescribed and never deviate.@@"
<</if>>
<<else>>
ERROR: unexpected!
<</if>>
<br><br>
<<if $scene.managerPresent>>
<<He npc_work_doctor>> packs up <<his npc_work_doctor>> things and nods towards <<=setup.getNpcName("npc_manager","formal")>> before scurrying away.<br>
<br>
She waits until <<he npc_work_doctor>> has left before smiling at you and turning back into her office.<br>
<br>
<<printThought "Good thing she kept an eye on things... I get the feeling <<=setup.getNpcName('npc_work_doctor','formal')>> might have done more if I didn't have a guardian angel...">><br>
<br>
[<<moveTo "event_drug_check_4" "Back to work." 300 "<<set $scene.forced=false>>">>]
<<else>>
<<He npc_work_doctor>> packs up <<his npc_work_doctor>> things, then, with a quick check that <<=ps(setup.getNpcName("npc_manager","formal"))>> door remains closed, <<he npc_work_doctor>> smiles at you.<br>
<br>
"@@.npc_work_doctor;So, as an additional informal test that everything is functioning properly... what would you say if I told you to suck my cock?@@"<br>
<br>
<<His npc_work_doctor>> words trigger a jolt of arousal, your mind filled with the thought of wrapping your lips around <<his npc_work_doctor>> big, thick dick, of how much you long to be on your knees with it filling your throat...<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
<<printThought "Such an odd question, I don't need drugs to want cock, I always want cock!">>
<<else>>
<<printThought "Well I wasn't thinking about cock before, but now...">>
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
<<printThought "How can <<his npc_work_doctor>> words make me this hungry for cock...">>
<<else>>
<<printThought "What is wrong with me? I don't like cock, but I want to obey...">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_drug_check_3" "Actions speak louder than words, drop to your knees." 300 "<<set $scene.decline=false>>">>]<br>
<<if setup.getTotalValue("penis") > 15>>
[@@.link_locked;You love <<getWordPenis "npc_work_doctor">> too much to pass up such an opportunity.@@]<br>
<<elseif setup.getTotalValue("submission") > 15>>
[@@.link_locked;You are too submissive to ignore such an order.@@]<br>
<<elseif (setup.getTotalValue("penis")+setup.getTotalValue("submission")) > 25>>
[@@.link_locked;Through a blend of cock-lust and obedience, you cannot resist <<his npc_work_doctor>> instruction.@@]<br>
<<else>>
[<<moveTo "event_drug_check_3" "Say you would love to, but that you need to get back to work." 60 "<<set $scene.decline=true>>">>]
<</if>>
<</if>>
<<else>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
frowns. "@@.npc_work_doctor;Only faint traces of medication in your system... which confirms my initial suspicion that you are going through withdrawal.@@"
<<if $scene.managerPresent>>
<<He npc_work_doctor>> glances over at <<=setup.getNpcName("npc_manager","formal")>>, who wordlessly glares back at <<him npc_work_doctor>>. "@@.npc_work_doctor;Well, I'll, uh... leave that to the two of you to address... good day.@@"
<</if>>
<<else>>
frowns. "@@.npc_work_doctor;Hmm, I detect no traces of medication.@@"
<<if $scene.managerPresent>>
<<He npc_work_doctor>> nervously glances over at <<=setup.getNpcName("npc_manager","formal")>>, who continues to glare. Somehow mustering courage <<he npc_work_doctor>> continues. "@@.npc_work_doctor;I was afraid that this might happen... so I spoke with <<=setup.getNpcName("npc_boss","formal")>>, and we agreed that it would be best if you would assist your lovely employee in keeping up with her medication by checking her levels and helping as necessary — after all, you do so love your little morning inspections.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> glowers even harder until <<=setup.getNpcName("npc_work_doctor","formal")>> slinks away.<br>
<br>
<<if $npc_boss.profile>>
<<printThought "<<=setup.getNpcName('npc_boss','formal')>>? Why is the CEO taking such a close interest in me? Doesn't <<he npc_boss>> have more important things to do?">>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("anal") > 10 && setup.getTotalValue("penis") > 10>>
<br><br>
That thought brings a lusty smile to your lips... <<printThought "Mmmm, I wish <<he npc_boss>> was doing me right now... I love being plugged, but a nice big <<getWordPenis 'npc_boss'>> in my ass is so much better...">>
<</if>>
<<else>>
<<printThought "<<=setup.getNpcName('npc_boss','formal')>>? Isn't <<he npc_boss>> the CEO? Why would <<he npc_boss>> be concerned with a lowly Secretary...">>
<</if>>
<</if>>
<</if>>
<<if !$scene.managerPresent>>
<<He npc_work_doctor>> grins, and you feel suddenly very alone. "@@.npc_work_doctor;We need to attend to this problem immediately...@@"
<</if>>
<<if $scene.managerPresent>>
<<=setup.getNpcName("npc_manager","formal")>> waits until <<=setup.getNpcName("npc_work_doctor","formal")>> has left before nodding to you and then returning to her inner office.<br>
<br>
<<printThought "Good thing she was thoughtful enough to observe... I think I dodged a bullet there! Well... partially dodged, there's still that new drug requirement, and she doesn't seem happy about it either...">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> begins filling a large syringe with a glowing pink liquid...<br>
<br>
[<<moveTo "event_drug_check_2" "Remain still." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_drug_check_2" "Call for help." 60 "<<set $scene.accept=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work_doctor forces drugs on you
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept || $fetish.get_raped>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<if !$player.sec_style.body.pinkpill>>
<<set $player.sec_style.body.pinkpill = "obedient">>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<<if !$player.sec_style.body.pinkpill>>
<<set $player.sec_style.body.pinkpill = "forced">>
<</if>>
<</if>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<applyExperience 'submission' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 10 'terrible' $SEEN_STRANGER>>
<<changeHorny 50>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<setTmpEffect 'sissypill_mk2_od'>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<addWorkEvent 'drug_check'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept || $fetish.get_raped>>
<<if $scene.accept>>
You sit motionless as <<=setup.getNpcName("npc_work_doctor","formal")>> injects you with a glowing pink concoction.
<<else>>
You try start to call out for help but the cry freezes in your throat as <<=setup.getNpcName("npc_work_doctor","formal")>> injects you with something.
<</if>>
You gasp as you feel the warm liquid move through your veins. Your eyes open wide and you start to lick your lips, shifting nervously in your chair as your mind is filled with pink clouds and the thought of sex...<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> leans back with a grin. "@@.npc_work_doctor;See? Doesn't that feel better?@@" You nod.<br>
<br>
<<printThought "Why did I skip my drugs? I feel so much better now..." 40>><br>
<br>
"@@.npc_work_doctor;So, how about you "thank" me by putting that mouth fuck-hole to use and suck my cock like a good slut?@@"<br>
<br>
<<printThought "Mmm, I love being talked to like that... I am a horny slut... and I need to suck <<his npc_work_doctor>> cock!" 40>><br>
<br>
[<<moveTo "event_drug_check_3" "Get on your slutty knees." 300 "<<set $scene.decline=false>>">>]<br>
<<else>>
You call out for help as <<=setup.getNpcName("npc_work_doctor","formal")>> comes at you with a needle.<br>
<br>
Before <<he npc_work_doctor>> can prick you the inner door bursts open, almost breaking off its hinges as <<=setup.getNpcName("npc_manager","formal")>> storms out.<br>
<br>
With a yelp <<=setup.getNpcName("npc_work_doctor","formal")>> scrambles away, practically setting a new sprint record as <<he npc_work_doctor>> bolts for the door.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> waits for <<him npc_work_doctor>> to be out of sight before looking over at you. Her expression is... annoyed, as if motivated more by protecting her property than any real compassion towards you. Without further word, she returns to her office.<br>
<br>
<<printThought "Good thing she showed up, but maybe I should put more effort into getting on her good side, rather than relying on a last-minute save...">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: work_doctor propositions you after testing drug level
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.decline>>
<<decrementEmotion 'affection' 'npc_work_doctor' 2>>
<<else>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<applyExperience 'oral' $npc_work_doctor.penis_size_boosted 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 13 'normal' $SEEN_STRANGER>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_work_doctor'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "forced">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<</if>>
<<switch $npc_manager.stage>>
<<case 3>>
<<set $npc_manager.stagevalues[3].drugs_req = true>>
<<set _x = setup.addManagerEndlessTask()>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.decline>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_work_doctor")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.decline>>
Diplomatically you explain that, while you would like nothing more than to suck on <<his npc_work_doctor>> big, beautiful cock, you need to get back to work. You have been working on a report for <<=setup.getNpcName("npc_manager","formal")>> and she is sure to come check on you any minute.<br>
<br>
The mention of <<=setup.getNpcName("npc_manager","formal")>> has <<=setup.getNpcName("npc_work_doctor","formal")>> looking suddenly nervous. "@@.npc_work_doctor;Yes, well... some other time, I suppose. Remember that I am always available after work if you need anything...@@"<br>
<br>
<<He npc_work_doctor>> packs up and is about to leave when <<he npc_work_doctor>> turns back with an evil grin. "@@.npc_work_doctor;Oh, and since you seem to be struggling to remember to take your medicine, I'll be adding it to your general requirements — <<=setup.getNpcName("npc_manager","formal")>> does so love her inspections, I'll make sure she knows to check your levels — we don't want you being unhealthy, right?@@"<br>
<br>
<<He npc_work_doctor>> leaves before you can think of anything to say.<br>
<br>
<<printThought "Uh-oh...">>
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> must have been planning ahead as, no sooner have you unzipped <<his npc_work_doctor>> pants, does <<his npc_work_doctor>> big, veiny cock pop out and almost slap you in the mouth.<br>
<br>
You reflexively dodge, then dive back in
<<if setup.getTotalValue("oral") > 10>>
to gulp down <<his npc_work_doctor>> big, beautiful cock.
<<if setup.getTotalValue("oral") > 15>>
You show off your skill with each passionate bob of your head, hilting <<him npc_work_doctor>> with ease and passionately sucking <<him npc_work_doctor>> all the way up and down. You moan
<<else>>
You struggle slightly to take <<him npc_work_doctor>> all, but your determination shows through as you reach <<his npc_work_doctor>> balls, moaning in pleasure
<</if>>
in pleasure — sheathing a beautiful dick, what more could life mean for a <<if $fetish.sissy>>sissy <</if>>slut like yourself?
<<else>>
to eagerly slurp on <<his npc_work_doctor>> big, beautiful cock. It may be too big for you to suck like a good <<if $fetish.sissy>>sissy <</if>>slut should
<<if setup.getTotalValue("oral") > 5>>
but you do your best, going down until you choke before breathlessly licking away at the scrumptious tip.
<<else>>
so you just focus on the tip, jerking with both hands as you lick and kiss.
<</if>>
<</if>>
It doesn't take long before <<he npc_work_doctor>> cums, a big, beautiful fountain of jizz that rains over your face as you eagerly try to catch as much as you can on your tongue.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
<<printThought "Mmmm, cum is the best...">>
<<else>>
<<printThought "Mmm, I love cum.">>
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<printThought "What is wrong with me? I don't even like cum? But this tastes so good...">>
<<else>>
<<printThought "What is wrong with me? Cum is disgusting, but this tastes so good...">>
<</if>>
<</if>>
<br><br>
Sadly, <<his npc_work_doctor>> explosion is short-lived and <<he npc_work_doctor>> is soon hurriedly stuffing <<his npc_work_doctor>> wilting member back into <<his npc_work_doctor>> pants.<br>
<br>
"@@.npc_work_doctor;Yes, well, hmm, it would seem that the drugs are working properly, now, but I think it would be best if we kept a closer eye on things — I'll be informing <<=setup.getNpcName("npc_manager","formal")>> to check your levels every morning, I know how she loves her daily inspections... good day.@@"<br>
<br>
You're still on your knees pouting as <<he npc_work_doctor>> dashes out of the room. With a sigh you lick your lips and resume your work, thoughts of more delicious <<getWordPenis "npc_work_doctor">> dancing through your head.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: drugs added to daily requirements
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.forced>>
<<incrementEmotion 'affection' 'npc_work_doctor' 2>>
<<else>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<<switch $npc_manager.stage>>
<<case 3>>
<<set $npc_manager.stagevalues[3].drugs_req = true>>
<<set _x = setup.addManagerEndlessTask()>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You've just started to get back into the groove of working when you get an email from <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<<if $scene.forced>>
"@@.npc_work_doctor;After reviewing your readings further I have decided that your continued development cannot be left to the whims of forgetfulness. Rather than impeding on your work you will now be required to show proper drug levels every morning. I believe this will provide only a minor inconvenience to <<=ps(setup.getNpcName("npc_manager","other"))>> usual routine. It will also ensure that any deficiency is dealt with swiftly, and before such can impact your work performance.@@"
<<else>>
"@@.npc_work_doctor;Though your inspection today was satisfactory reviewing the possibility of deleterious effects on your work, combined with the inconvenience of administering intermittent inspections leads to the conclusion that such verification of your obedience should be performed during your normal morning inspections. So long as you continue to take your drugs like a good girl this should present no challenges.@@"
<</if>>
<br><br>
You gulp as you notice that the message has been cc'd to your <<=setup.getNpcName("npc_manager","title")>>, and there is a ping to indicate that she has already read and acknowledged this new addition to your routine.<br>
<br>
You gulp nervously.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: visit npc_work_doctor office
#status: FINISHED 0.7.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<set _nextdate = setup.checkTaskLocationTime('event_work_doctor_office')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if setup.isItemEquipped('data_plug') && $npc_ai.stage < 3>>
You barely start to head to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab when a rumbling vibration emanates from the massive plug in your ass strong enough to rattle your bones. Barely keeping on your feet you try to catch your breath, only to jolt again as a punishing electric shock pierces your front.<br>
<br>
Turning back to the elevator the nigh overwhelming stimulation subsides and your thoughts catch up to what's going on.<br>
<br>
<<printThought "Guess I really should head straight out, I doubt it would go well if <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> found <<=setup.getNpcName('npc_ai', 'first')>> in my ass.">><br>
<br>
<<else>>
Traveling to the labs on floor 121, you follow signs and eventually come to the office of <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<<if _nextdate == null>>
You currently have no appointments scheduled.
<<elseif setup.compareDay($now,_nextdate)>>
You have an appointment today at <<=setup.shortTime(_nextdate)>>.
<<else>>
You have no appointment today. Your next appointment is on <<printDate _nextdate>>.
<</if>>
<br><br>
<<if setup.compareDay($now,_nextdate)>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
You took your dose of <<=setup.getItemName('personal_medication')>> today.<br>
<br>
<<elseif setup.hasTmpEffect("sissypill_mk1_od") || setup.hasTmpEffect("sissypill_mk1") || setup.hasTmpEffect("sissypill") || setup.hasTmpEffect("sissypill_mk2") || setup.hasTmpEffect("sissypill_mk2_od") || setup.hasTmpEffect("super_mk2") || setup.hasTmpEffect("sissypill_mk3") || setup.hasTmpEffect("sissypill_eternal") || setup.hasTmpEffect("sissypill_2_eternal") || setup.hasTmpEffect("sissypill_3_eternal") || setup.hasTmpEffect("sissypill_pure") || setup.hasTmpEffect("sissypill_pure_eternal")>>
You are under the effects of <<=setup.getItemName('personal_medication')>>... or something close enough to it to fool <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<<else>>
You haven't taken a dose of <<=setup.getItemName('personal_medication')>> today.<br>
<br>
<<if setup.checkItemInInventory('personal_medication')>>
<<if setup.getTotalValue("smart") > 8>>
[<<moveTo "event_work_doctor_office_microdose" 'Micro-dose to fool <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> test without suffering the full dulling effects of the drug.' 0>>]<br>
<</if>>
[<<moveTo "event_work_doctor_office_drug" "Swallow a pill while you wait." 0 "<<set $scene.visitDoctor = true>>">>]<br>
<<else>>
You have no drugs with you to take.<br>
<br>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_pink_eternal_bonus") && !$currentTasks.task_pink_eternal_bonus.finished>>
[@@.link_locked;You have an appointment with <<=setup.getNpcName("npc_work_doctor","formal")>>. Now would not be a good day to finish refining <<=setup.getItemName("sissy_pill_eternal")>>.@@]<br>
<</if>>
<<if setup.checkPlayerDressed()>>
[<<moveTo "event_work_doctor_office" "Wait for your appointment." _tmpSeconds "<<set $scene.visitDoctor = true>><<set $player.cutscene.lockinventory = true>>">>]<br>
<<else>>
[@@.link_locked;You should probably be dressed for your appointment.@@]<br>
<</if>>
<<else>>
<<if $currentTasks.hasOwnProperty("task_pink_eternal_bonus") && !$currentTasks.task_pink_eternal_bonus.finished>>
<<if $scene.triedDrSignal>>
[@@.link_locked;You already tried to have <<=setup.getNpcName("npc_ai","first")>> distract <<=setup.getNpcName("npc_work_doctor","formal")>> today.@@]<br>
<<else>>
<<if State.hasPlayed("event_ai_stage5_infiltrate_14") || $npc_manager.stage < 5>>
[<<moveTo "event_pink_pill_eternal_final_calibration_1" 'Signal <<=setup.getNpcName("npc_ai","first")>> that you are ready to do the final calibration of <<=setup.getItemName("sissy_pill_eternal")>>.' 300 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<<else>>
[@@.link_locked;<<=setup.getNpcName("npc_ai","first")>> would need to be back in the company system to help distract <<=setup.getNpcName("npc_work_doctor","formal")>> today.@@]<br>
<</if>>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty("event_doctor_first_appointment") && $currentTasks["event_doctor_first_appointment"].finished || $npc_work_doctor.flags.physical.done>>
<<if setup.checkPlayerDressed()>>
[<<moveTo "event_work_doctor_nonappointment_1" 'Walk in on <<=setup.getNpcName("npc_work_doctor","formal")>>.' 60 "<<set $scene.first_time = $npc_work_doctor.stage == 1>><<set $player.cutscene.lockinventory = true>><<set $scene.visitDoctor = true>>">>]<br>
<<else>>
[@@.link_locked;Even with everything you should at least START your appointment fully dressed.@@]<br>
<</if>>
<<else>>
You try to peer into the office/lab, nobody appears to be in and you think it would be best to come back Tuesday when your first appointment is scheduled.<br>
<br>
<</if>>
<</if>>
<</if>>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<include "afterWorkVisiting">>
<<else>>
[@@.link_locked;You can't go down to the lobby like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: microdose before npc_work_doctor appointment
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'sissypill_mk2_micro'>>
<<deleteItem 'personal_medication'>>
<<set $player.flags.pink_pill.microdose += 1>>
<<set $player.cutscene.lockinventory = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<set _nextdate = setup.checkTaskLocationTime('event_work_doctor_office')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
Surreptitiously cracking open one of the pills you measure out a few grains of the drug and let them dissolve on your tongue. There is a tingle and a slight dullness, but none of the usual mental slowness that taking the drugs normally induces.<br>
<br>
[<<moveTo "event_work_doctor_office" "Wait for your appointment." _tmpSeconds>>]
</div>/*#
#desc: take pill before npc_work_doctor appointment
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'sissypill_mk2'>>
<<deleteItem 'personal_medication'>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.flags.used_sissy_pill_2_count += 1>>
<<changeHorny 20>>
<<set $scene.counterMk1 = setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $scene.counterMk1>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<applyStress -20>>
<<applyFatigue -30>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<set _nextdate = setup.checkTaskLocationTime('event_work_doctor_office')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You pop one of your <<=setup.getItemName('personal_medication')>> Pills.
<<if $scene.counterMk1>>
Almost instantly the cloud of dullness depression left over form your overdose evaporates. You are still a bit mentally slow and distracted, but you no longer care, feeling energised and full of happy, horny pink feelings.<br>
<br>
<<printThought "Like, yay! Why didn't I take one of these sooner? My day would have been, like, totally better!">>
<<else>>
Almost immediately, you feel mentally slow and lethargic, finding it a struggle to think about anything other than obedience for more than a few seconds.
<</if>>
<br><br>
[<<moveTo "event_work_doctor_office" "Wait for your appointment." _tmpSeconds>>]
</div>/*#
#desc: failed to show up for work doctor visit.
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "Call from <<=setup.getNpcName('npc_work_doctor', 'formal')>>">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 18, 0)>>
<<addTaskById 'event_doctor_reup' _nextDate>>
<<addWorkEvent 'failed_prescription_event'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are being called by <<=setup.getNpcName('npc_work_doctor', 'formal')>>.<br>
<br>
"@@.npc_work_doctor;Hello <<=$player.first_name>>. You appear to have missed our check-up. I am disappointed, but suppose I should not be overly surprised. <<=setup.getNpcName('npc_manager', 'formal')>> will have your drugs for you in the morning, including a special remedial dose. Please try and remember to make our next meeting as without in-person check ups I will be unable to maximize the effectiveness of your regime.@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: visit npc_work_doctor after work
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() == 2>>
<<set $scene.hasEternal = setup.hasTmpEffect("sissypill_eternal") || setup.hasTmpEffect("sissypill_2_eternal") || setup.hasTmpEffect("sissypill_3_eternal") || setup.hasTmpEffect("sissypill_pure_eternal")>>
<<if $scene.hasEternal>>
<<set $npc_work_doctor.flags.seenPermanent = true>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 7, 18, 0)>>
<<addTaskById 'event_doctor_reup' _nextDate>>
<</if>>
<</if>>
<<set $scene.visitDoctor = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
Once again you show up to meet <<=setup.getNpcName("npc_work_doctor","formal")>> in <<his npc_work_doctor>> lab/office.<br>
<br>
<<if $npc_work_doctor.affection >= 9>>
<<He npc_work_doctor>> greets you with a smile, looking very eager to see you.
<<elseif $npc_work_doctor.affection > 6>>
<<He npc_work_doctor>> greets you with a smile.
<<elseif $npc_work_doctor.affection > 3>>
<<He npc_work_doctor>> greets you with a grunt, seemingly indifferent to your presence.
<<elseif $npc_work_doctor.affection == 0>>
<<He npc_work_doctor>> glares at you, seemingly annoyed at your very presence.
<<else>>
<<He npc_work_doctor>> snorts, seemingly considering your presence something of an inconvenience.
<</if>>
<<if $npc_work_doctor.anger == 9>>
<<His npc_work_doctor>> expression is filled with suspicion, you need to be very careful around <<him npc_work_doctor>>.
<<elseif $npc_work_doctor.anger > 6>>
<<He npc_work_doctor>> looks upon you with moderate suspicion, it seems you need to work harder to build <<his npc_work_doctor>> trust.
<<elseif $npc_work_doctor.anger > 3>>
<<He npc_work_doctor>> does not appear to be particularly suspicious of you.
<<elseif $npc_work_doctor.anger == 0>>
From the way <<he npc_work_doctor>> looks at you, you doubt <<he npc_work_doctor>> could even conceive of the thought of you being duplicitous.
<<else>>
<<He npc_work_doctor>> does not appear suspicious of you.
<</if>>
<br><br>
<<if $scene.hasEternal>>
<<=setup.getNpcName("npc_work_doctor","formal")>> runs <<his npc_work_doctor>> monitoring device over you and then looks puzzled, repeating the motion once again before squinting at the results.<br>
<br>
"@@.npc_work_doctor;Curious... it would seem that your body has not just metabolised the drug I prescribed... but your natural body chemistry has altered to maintain a functionally steady dosage... truly, my efforts succeed beyond my wildest imagination... though I shall have to figure out how to stop it before we go to market, an eternal drug is the opposite of what we want for maintaining growth!@@" <<He npc_work_doctor>> grins as <<he npc_work_doctor>> puts the device away. "@@.npc_work_doctor;I suppose this is the last of our scheduled visits, then... though you are, of course, welcome to drop by my lab at other times. Still, shall we complete testing one last time?@@"<br>
<br>
<<if $npc_work_doctor.stage > 1>>
[<<moveTo "event_work_doctor_visit_2" 'Ask if you could instead "help" <<him npc_work_doctor>> with <<his npc_work_doctor>> work.' 60 "<<set $scene.style='help'>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_visit_2" 'Nod obediently.' 60 "<<set $scene.style='eternal'>>">>]
<<else>>
"@@.npc_work_doctor;So, you been keeping up with your prescription? Ready for your assessment?@@"<br>
<br>
<<if $npc_work_doctor.stage > 1>>
[<<moveTo "event_work_doctor_visit_2" 'Ask if you could skip past the assessment and "help" <<him npc_work_doctor>> with <<his npc_work_doctor>> work.' 60 "<<set $scene.style='help'>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_visit_2" 'Nod obediently.' 60 "<<set $scene.style='test'>>">>]<br>
[<<moveTo "event_work_doctor_visit_2" 'Say you wish to stop treatment.' 60 "<<set $scene.style='stop'>>">>]
<</if>>
</div>/*#
#desc: npc_work_doctor tests how your treatment is progressing
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case 'test'>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<case 'beg'>>
<<addItem "personal_medication" 7>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<case 'stop'>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<<decrementEmotion 'affection' 'npc_work_doctor' 2>>
<<case 'help'>>
<<if $npc_work_doctor.affection < 5>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<elseif !$scene.hasEternal>>
<<addItem "personal_medication" 7>>
<</if>>
<</switch>>
<<set $scene.drugs = "unexpected!">>
<<if setup.hasTmpEffect('sissypill_mk2') || setup.hasTmpEffect('sissypill_2_eternal')>>
<<set $scene.drugs = "normal">>
<<elseif setup.hasTmpEffect('sissypill_mk2_hangover') || setup.hasTmpEffect('sissypill_eternal')>>
<<set $scene.drugs = "slight">>
<<elseif setup.hasTmpEffect('sissypill_mk2_od') || setup.hasTmpEffect('sissypill_3_eternal')>>
<<set $scene.drugs = "heavy">>
<<elseif setup.hasTmpEffect('sissypill_pure') || setup.hasTmpEffect('sissypill_pure_eternal') || setup.hasTmpEffect('sissypill_mk3') || setup.hasTmpEffect('sissypill_3_eternal')>>
<<set $scene.drugs = "pure">>
<<elseif setup.hasTmpEffect('sissypill_mk2_micro')>>
<<set $scene.drugs = "cheat">>
<<else>>
<<set $scene.drugs = "none">>
<</if>>
<<if $npc_manager.stage > 2 && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
<<set $scene.rand = random(1,3)>>
<<else>>
<<set $scene.rand = 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'eternal'>>
<<=setup.getNpcName("npc_work_doctor","formal")>> smirks, clearly savouring the power <<he npc_work_doctor>> has over you as <<he npc_work_doctor>> tosses <<his npc_work_doctor>> tablet to the side. "@@.npc_work_doctor;We hardly need any more testing to confirm that you are a drug-addicted <<if $fetish.sissy>>sissy <</if>>slut... so let's just cut to the chase, and the old classic... of you sucking my cock like a good little <<if $fetish.sissy>>sissy <</if>>bitch?@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_3" 'Drop to your knees as ordered.' 60 "<<set $scene.style='oral'>>">>]
<<case 'test' 'retest'>>
<<=setup.getNpcName("npc_work_doctor","formal")>> smiles at your obedience, motioning for you to take a seat and strapping a medical monitor around your arm.<br>
<br>
"@@.npc_work_doctor;First to check your levels, need to make sure the drugs are doing their work and you've been keeping up with your meds.@@"<br>
<br>
Waiting a moment as the monitor lights up <<he npc_work_doctor>> check a tablet.
<<switch $scene.drugs>>
<<case 'cheat'>>
Tapping a few times <<he npc_work_doctor>> nods, it would seem your little cheat is working.<br>
<br>
"@@.npc_work_doctor;Your levels all look nominal, good job on adhering to your schedule, from a pure chemical perspective everything checks out.@@"
<<case 'none'>>
<<He npc_work_doctor>> taps a couple times then frowns. "@@.npc_work_doctor;Hmm, according to this you must have been completely ignoring your prescription. That is concerning, indeed.@@" Picking up the bottle that, presumably, contains your next week's drugs <<he npc_work_doctor>> pulls out a pill and motions for you to open your mouth. "@@.npc_work_doctor;Here, there may be some additional work to get you back on track but this should at least help.@@"<br>
<br>
You swallow the pill and feel a familiar pinkness blot out your thoughts.
<<case 'normal'>>
Tapping a few times <<he npc_work_doctor>> nods.<br>
<br>
"@@.npc_work_doctor;Your levels all look nominal, good job on adhering to your schedule, from a pure chemical perspective everything checks out.@@"
<<case 'heavy'>>
Tapping a few times <<he npc_work_doctor>> nods slowly.<br>
<br>
"@@.npc_work_doctor;Hmm, levels are running high, do be careful, overdosing does have side effects but, well... for the moment I see no major problems.@@"
<<case 'adv' 'pure'>>
Tapping a few times <<he npc_work_doctor>> squints.<br>
<br>
"@@.npc_work_doctor;Hmm, things look mostly correct, but there are some additional metabolites that...@@" <<he npc_work_doctor>> trails off for a moment and then straightens and shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;No matter, nothing that I didn't expect. Carry on.@@"<br>
<br>
You bite your lip at <<his npc_work_doctor>> bluster and inability to properly recognise the advancements you made on <<his npc_work_doctor>> techniques.
<<case 'slight'>>
Tapping a few times <<he npc_work_doctor>> nods slowly.<br>
<br>
"@@.npc_work_doctor;Hmm, levels are a bit low. I'll be keeping an eye on things and upping your dose as necessary. Remember you need to keep to the prescribed schedule of one pill per day if you want to be a good girl and experience optimal results.@@"
<<default>>
ERROR: unexpected scene.drugs <<=$scene.drugs>>
<</switch>>
<br><br>
<<switch $scene.rand>>
<<case 1>>
"@@.npc_work_doctor;Alright, let's see how your training is developing via real-world simulation. Let's go with an old classic today, how about you suck my cock?@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_3" 'Drop to your knees as ordered.' 60 "<<set $scene.style='oral'>>">>]<br>
[<<moveTo "event_work_doctor_visit_3" 'What kind of medical test is this? Refuse!' 60 "<<set $scene.style='refuse'>>">>]
<<case 2>>
"@@.npc_work_doctor;Alright, let's see how your training is developing via real-world simulation. Bend over this table and lets see how that rear fuck-hole of yours is developing.@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_3" 'Bend over as instructed.' 60 "<<set $scene.style='anal'>>">>]<br>
[<<moveTo "event_work_doctor_visit_3" 'What kind of medical test is this? Refuse!' 60 "<<set $scene.style='refuse'>>">>]
<<case 3>>
"@@.npc_work_doctor;So, which hole of yours do you think best demonstrates the progress you've been making in developing into an eager fuck-slut?@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_3" 'Bend over and offer up your ass.' 60 "<<set $scene.style='anal'>>">>]<br>
[<<moveTo "event_work_doctor_visit_3" 'Drop to your knees and show off dat SUCC.' 60 "<<set $scene.style='oral'>>">>]<br>
<<if setup.calcBreastSize() == 'massive'>>
[<<moveTo "event_work_doctor_visit_3" 'Brandish your massive breasts and offer up a tit job instead.' 60 "<<set $scene.style='tit'>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_visit_3" 'What kind of medical test is this? Refuse!' 60 "<<set $scene.style='refuse'>>">>]
<<default>>
ERROR: random out of range
<</switch>>
<<case 'stop'>>
You announce that you would like to stop treatment, that you are happy with where you are and do not wish to deal with additional side effects.<br>
<br>
<<if $fetish.drugs>>
"@@.npc_work_doctor;Stop treatment? Did you think this was a voluntary program?@@" <<He npc_work_doctor>> shakes <<his npc_work_doctor>> head as <<he npc_work_doctor>> fills up a syringe with a glowing pink liquid. "@@.npc_work_doctor;No, no, this will not do. It seems that you need an immediate top-off to get you back on track...@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_3_stop" 'Remain where you are and accept the injection.' 60 "<<set $scene.stop_style='obey'>>">>]<br>
[<<moveTo "event_work_doctor_visit_3_stop" 'Try to run.' 60 "<<set $scene.stop_style='run'>>">>]<br>
[<<moveTo "event_work_doctor_visit_3_stop" 'Fight back.' 60 "<<set $scene.stop_style='fight'>>">>]
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> frowns. "@@.npc_work_doctor;Stop treatment? No... I do not think that would be healthy. I encourage you to reconsider this foolish notion and resume taking your pills like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>@@"<br>
<br>
You can tell that <<=setup.getNpcName("npc_work_doctor","formal")>> is annoyed and you hurry away before he decides to do anything to you.<br>
<br>
<<include "afterWorkVisiting">>
<</if>>
<<case 'beg'>>
You whine that you want to be <<his npc_work_doctor>> sexy nurse NOW but this only seems to annoy <<him npc_work_doctor>> further as <<he npc_work_doctor>> tosses you your drugs and dismisses you.<br>
<br>
"@@.npc_work_doctor;I don't care how sexy of a slut you are, my time is very valuable and I will not deal with sass. Take your drugs and get out of here, and maybe next time show a bit of decorum, hmm?@@"<br>
<br>
<<printThought "Dammit, that backfired...">><br>
<br>
You pocket the pill bottle and head for the elevator.<br>
<br>
<<include "afterWorkVisiting">>
<<case 'help'>>
<<if $currentTasks.hasOwnProperty('event_doctor_training') && $currentTasks.event_doctor_training.condition != "Complete">>
<<if !$currentTasks.event_doctor_training.finished>>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;Eager eager, but you must exercise patience. Meet me on the weekend for a lesson and then I may allow you to assist me in my work. Now then, we are wasting time, time for your assessment.@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_2" 'Proceed to the test.' 60 "<<set $scene.style='test'>>">>]<br>
<<else>>
<<He npc_work_doctor>> frowns slightly. "@@.npc_work_doctor;You failed to meet me as scheduled... quite disappointing... perhaps you have some argument as to why I should give you some of my valuable time?@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
[<<moveTo "event_work_doctor_visit_5" "Show <<him npc_work_doctor>> that you're smarter than <<he npc_work_doctor>> is!" 60 "<<set $scene.smart=true>>">>]<br>
<<else>>
[<<moveTo "event_work_doctor_visit_5" "Show <<him npc_work_doctor>> that you're smart!" 60 "<<set $scene.smart=true>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_visit_5" "Play dumb and beg <<him npc_work_doctor>> to, like, teach you?" 60 "<<set $scene.smart=false>>">>]<br>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
[<<moveTo "event_work_doctor_visit_5" "Try to show <<him npc_work_doctor>> you're smart!" 60 "<<set $scene.smart=true>>">>]<br>
[<<moveTo "event_work_doctor_visit_5" "Play dumb and beg <<him npc_work_doctor>> to, like, teach you?" 60 "<<set $scene.smart=false>>">>]
<<else>>
[@@.link_locked;You aren't smart enough to try and impress <<him npc_work_doctor>>.@@]
[<<moveTo "event_work_doctor_visit_5" "Beg <<him npc_work_doctor>> to, like, teach you?" 60 "<<set $scene.smart=false>>">>]<br>
<</if>>
<</if>>
<</if>>
<<elseif $npc_work_doctor.affection < 5>>
<<He npc_work_doctor>> frowns. "@@.npc_work_doctor;Look, <<=$player.first_name>>, I know how eager you are but we need to focus on your treatment first. If your assessment goes well, perhaps there will be time for you to assist me after. Come, let us proceed@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_2" 'Do as <<he npc_work_doctor>> says.' 60 "<<set $scene.style='retest'>>">>]<br>
[<<moveTo "event_work_doctor_visit_2" 'Beg for training.' 60 "<<set $scene.style='beg'>>">>]
<<elseif !$currentTasks.hasOwnProperty('event_doctor_training')>>
<<He npc_work_doctor>> seems to be considering your offer. "@@.npc_work_doctor;I could use some assistance...@@" <<He npc_work_doctor>> shakes <<his npc_work_doctor>> head, "@@.npc_work_doctor;No, unfortunately today I am just too busy. Ask me some other time, when I do not have the pressing matter of your assessment facing me. let us proceed with your assessment.@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_2" 'Do as <<he npc_work_doctor>> says.' 60 "<<set $scene.style='retest'>>">>]<br>
[<<moveTo "event_work_doctor_visit_2" 'Beg for training.' 60 "<<set $scene.style='beg'>>">>]
<<elseif !State.hasPlayed("event_work_doctor_nonappointment_2_first_1")>>
<<=setup.getNpcName("npc_work_doctor","formal")>> grins. "@@.npc_work_doctor;Ready to put those weekend lessons to work?@@" <<he npc_work_doctor>> chuckles. "@@.npc_work_doctor;Come along, <<if $fetish.sissy>>sissy<<else>>slut<</if>>.@@"<br>
<br>
[<<moveTo "event_work_doctor_nonappointment_2_first_1" "Follow <<him npc_work_doctor>> to get changed." 60>>]
<<else>>
You see <<his npc_work_doctor>> expression waver for a moment and then <<he npc_work_doctor>> smiles. "@@.npc_work_doctor;Ah, you're right, what's the point of testing, your development as an obedient slut is coming along ahead of schedule, why bother spending the time confirming what we already know?@@" <<He npc_work_doctor>> casually tosses you a bottle of pills. "@@.npc_work_doctor;That should keep you going another week, now how about you go and get changed. I think "Nurse $player.last_name" will find this next case quite interesting.@@"<br>
<br>
<<if $npc_work_doctor.flags.sissyomaticpermission && setup.getChastityLevel() != 5>>
[<<moveTo "event_sissyomatic_money" 'Tell <<him npc_work_doctor>> you are ready to get locked in a <<=setup.getItemName("sissyomatic")>>.' 300>>]<br>
<</if>>
[<<moveTo "event_work_doctor_nonappointment_2" 'Get changed as instructed.' 60 "<<set $scene.reason='change'>>">>]<br>
<<if $npc_work_doctor.flags.aphrodisiac.unlock>>
<<if $npc_work_doctor.flags.aphrodisiac.stage > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_1" "Ask if you could be of further assistance with <<his npc_work_doctor>> aphrodisiac trial?" 60>>]<br>
<<else>>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_0" "Ask if you could assist with <<his npc_work_doctor>> aphrodisiac trial?" 60>>]<br>
<</if>>
<</if>>
<<if $npc_work_doctor.flags.hucowProcedure > 0>>
[<<moveTo "event_work_doctor_nonappointment_2" "Ask if you can spend more time as a hucow?" 60 "<<set $scene.reason='hucow'>>">>]
<</if>>
<</if>>
<</switch>>
</div>/*#
#desc: ask npc_work_doctor to stop treatment
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.stop_style>>
<<case 'obey'>>
<<applyExperience 'submission' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 10 'terrible' $SEEN_STRANGER>>
<<changeHorny 30>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<setTmpEffect 'sissypill_mk2_od'>>
<<addItem "personal_medication" 7>>
<<case 'fight'>>
<<if setup.getTotalValue("martial_arts") <= 10>>
<<applyExperience 'bimbofication' 10 'skip' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<changeHorny 30>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<setTmpEffect 'sissypill_mk2_od'>>
<<addItem "personal_medication" 7>>
<</if>>
<<case 'run'>>
<<applyExperience 'bimbofication' 10 'normal' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<default>>
ERROR unexpected scene.stop_style <<=$scene.stop_style>>
<</switch>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<switch $scene.stop_style>>
<<case 'obey'>>
You stand quietly as <<=setup.getNpcName("npc_work_doctor","formal")>> approaches with the pink-filled syringe "@@.npc_work_doctor;Just a little prick...@@" <<he npc_work_doctor>> whispers before stabbing you in the arm.<br>
<br>
Whatever it is that <<hes npc_work_doctor>> injecting into you feels initially weird, but then the "pink" feeling slams into you and your thoughts are consumed by sex and lust.<br>
<br>
"@@.npc_work_doctor;There, doesn't that feel better?@@" <<He npc_work_doctor>> states as <<he npc_work_doctor>> finishes the injection.<br>
<br>
Trembling with desire, all you can do is moan in response.<br>
<br>
"@@.npc_work_doctor;Good girl but I don't think I have time today to test you so you'll just have to take your pills and try to be behaved for next week, hmm?@@" <<He npc_work_doctor>> shoves a bottle of pills into your hand and then turns away, the rejection somehow only turning you on even more as you whine desperately.<br>
<br>
Grinding your thighs together and groping your<<if $player.body.breastsize[0] > 0>> breasts<<else>>self<</if>> with one hand you stare after <<him npc_work_doctor>>, hoping this might just be a tease but, after sitting back down to work <<he npc_work_doctor>> glares back up at you and waves you away and you reluctantly head for the elevator.<br>
<br>
<<include "afterWorkVisiting">>
<<case 'run'>>
You turn to run only to find the door locked tight, you turn around to find <<him npc_work_doctor>> smiling darkly. "@@.npc_work_doctor;Stupid girl, you need to accept that your only choice is obedience. Surrender and everything will go so much better for you...@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_3_stop" 'Do as <<he npc_work_doctor>> says and accept the injection.' 60 "<<set $scene.stop_style='obey'>>">>]<br>
[<<moveTo "event_work_doctor_visit_3_stop" 'Fight back.' 60 "<<set $scene.stop_style='fight'>>">>]
<<case 'fight'>>
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
<<He npc_work_doctor>> approaches you with the syringe flat-footed and unprepared as you grab <<him npc_work_doctor>> by the wrist and easily reverse <<him npc_work_doctor>> into a hammerlock.
<<else>>
As <<he npc_work_doctor>> approaches you, syringe in hand, you lash out with a kick, sweeping <<his npc_work_doctor>> legs out from under <<him npc_work_doctor>> and then jumping on top of <<him npc_work_doctor>> before <<he npc_work_doctor>> can recover.
<</if>>
You jam the syringe into <<him npc_work_doctor>> and shoot <<him npc_work_doctor>> up, the pink liquid momentarily visible through <<his npc_work_doctor>> skin as it flows out through <<his npc_work_doctor>> body, <<his npc_work_doctor>> eyes opening wide in shock before <<his npc_work_doctor>> entire body starts shuddering from the effects of the drugs.<br>
<br>
"@@.npc_work_doctor;Y-you fucking bitch@@" <<he npc_work_doctor>> gasps through clenched teeth as <<he npc_work_doctor>> somehow triggers an alarm, the lab suddenly filled with a cacophony of noise and, a few moments later, half a dozen security guards. Too many for you to fight you are swiftly stunned and subdued only for <<=setup.getNpcName("npc_work_doctor","formal")>>, now wide-eyed with lust, to order you strapped to an exam table and before dismissing them.<br>
<br>
Bound and helpless you have no means to resist this time as <<he npc_work_doctor>> hooks you up to an IV feed of the same neon-pink liquid. "@@.npc_work_doctor;That's right, screw <<=setup.getNpcName("npc_manager","other")>>, you attack me I'm going to melt your fucking brain into goo. My cock is going to become your new religion but you're going to have to EARN your next taste...@@"<br>
<br>
Your thoughts fade as the drugs take hold.<br>
<br>
[<<moveTo "bad_end_fight_doctor" 'Continue.' 60>>]
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
You try to lash out but your blow fails to do enough damage to stop <<him npc_work_doctor>> and <<he npc_work_doctor>> responds by jamming the needle into your side.
<<else>>
You take a swing at <<him npc_work_doctor>> but it is clumsy and easily dodged as <<he npc_work_doctor>> jams the needle into your thigh.
<</if>>
Your body goes limp as the pink drug flows into you, and <<he npc_work_doctor>> gives you the entire syringe before standing up.<br>
<br>
"@@.npc_work_doctor;Pathetic,@@" <<he npc_work_doctor>> snorts before dropping a bottle of pills into your hand. "@@.npc_work_doctor;Now get out of here and stick to your treatment, I expect far better behaviour when you come in for your next checkup.@@"<br>
<br>
Though the drugs have you almost unable to focus you somehow manage to push your lust-addled body to your feet before <<he npc_work_doctor>> shoves you out the door in the direction of the elevator.<br>
<br>
<<include "afterWorkVisiting">>
<</if>>
<<default>>
ERROR unexpected scene.stop_style <<=$scene.stop_style>>
<</switch>>
</div>/*#
#desc: bad end, lose fight with npc_work_doctor
#status: FINISHED 0.7.4.0
#ignore_spell: nf
#*/
<<set $player.location to "">>
<<set $gameOver = 'fight_doctor'>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/scenes/badend.png">>
<div id="invframe" class="scrolltext">
Two weeks later.<br>
<br>
The straps finally released, you, or rather, Nurse NF-228 rise to your feet to begin your new duties.<br>
<br>
All trace of <<=$player.first_name>> <<=$player.last_name>> has been erased as you take up a new job assisting <<=setup.getNpcName("npc_work_doctor","formal")>> in <<his npc_work_doctor>> experiments. Occasionally you wonder why it is that you must endure so many more punishments than the nurse units but objecting would be literally unthinkable. You exist to serve and if service means that you are assigned to the roughest patients and must endure a hard flogging before being granted the taste of <<his npc_work_doctor>> perfect cock that other nurses enjoy as a matter of course? Well, that is just how it is.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: submit to npc_work_doctor's test
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<switch $scene.style>>
<<case 'anal'>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
<<set _penisSize = $npc_work_doctor.penis_size_boosted + 2>>
<<applyExperience 'anal' _penisSize 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'anal' $npc_work_doctor.penis_size_boosted 'normal' $SEEN_STRANGER>>
<</if>>
<<addItem 'personal_medication' 7>>
<<case 'oral'>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<applyExperience 'oral' $npc_work_doctor.penis_size_boosted 'normal' $SEEN_STRANGER>>
<<addItem 'personal_medication' 7>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_work_doctor'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "obedient">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<case 'tit'>>
<<decrementEmotion 'anger' 'npc_work_doctor' 2>>
<<applyExperience 'penis' 10 'normal' $SEEN_STRANGER>>
<<addItem 'personal_medication' 7>>
<</switch>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'anal'>>
<<if setup.getTotalValue("anal") > 10>>
"@@.npc_work_doctor;You ready, slut?@@" <<he npc_work_doctor>> asks
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
as <<he npc_work_doctor>> fingers the hollow hole in your plug.
<<else>>
as <<he npc_work_doctor>> slides the <<=setup.getItemTypeName("plug")>> out of your hole, placing it within eyesight on the table next to you as <<he npc_work_doctor>> uses a finger to lube you up.
<</if>>
<<else>>
as <<he npc_work_doctor>> slides a slippery finger into your rear to lube you up.
<</if>>
You wiggle your butt and purr in agreement and <<he npc_work_doctor>> gives you a friendly squeeze followed by a loud slap.<br>
<br>
"@@.npc_work_doctor;Superb, looks like you are coming along perfectly, a testament to the better living modern chemistry can enable!@@"<br>
<br>
You're getting a bit fed up waiting as <<he npc_work_doctor>> pontificates and you back up into <<him npc_work_doctor>> to remind <<him npc_work_doctor>> that the engorged monster between <<his npc_work_doctor>> legs has somewhere it needs to be.<br>
<br>
"@@.npc_work_doctor;Easy there, slut, <<if $fetish.daddy>><<Daddy npc_work_doctor>>'s<<else>>I'm<</if>> coming@@" <<he npc_work_doctor>> chuckles, giving you another slap before taking hold of your hips and lining up for the main course.
<<if setup.getTotalValue("anal") > 15>>
<<He npc_work_doctor>> may be big but you are trained to take TRUE monsters and <<he npc_work_doctor>> easily slides into you as you throw your head back and moan.
<<else>>
<<His npc_work_doctor>> cock may be pushing your limits but it is really nothing you can't handle, the thick tip pressing against your slippery hole for just a moment before it pops inside in time with your delighted moan.
<</if>>
Grabbing hold of your hair with one hand, <<he npc_work_doctor>> starts pounding into you. "@@.npc_work_doctor;You know, you're fast impressing as one of the, unf, most, unf, natural sluts it has ever been my, unf, pleasure to treat.@@" <<He npc_work_doctor>> grunts, punctuating <<his npc_work_doctor>> words with slamming thrusts, <<his npc_work_doctor>> balls slapping against your thighs each time as you beg for more.<br>
<br>
Unfortunately for your anal lusts, it isn't long before the pleasure of your hole becomes too much for <<him npc_work_doctor>> and you feel <<his npc_work_doctor>> thick load pumping into you. Giving a final wiggle to churn things up in your bowels <<he npc_work_doctor>> slides out, <<his npc_work_doctor>> thick cum leaking down your leg as <<he npc_work_doctor>> steps away.<br>
<br>
A dopey smile on your face, you lay on the table, trying to maintain the gape as long as you can as <<he npc_work_doctor>> removes the monitoring device. "@@.npc_work_doctor;Your development continues to proceed wonderfully. Keep up your medication and I will see you next week.@@"
<<else>>
You're more than a bit fearful of <<his npc_work_doctor>> large, blue-veined cock but you nonetheless bend over and expose yourself for <<him npc_work_doctor>>. Moving in behind, <<he npc_work_doctor>> gives your ass a firm squeeze. "@@.npc_work_doctor;Very nice,@@" a loud slap follows. "@@.npc_work_doctor;Perfection, nice and soft and responsive, but let's see how the main attraction is coming along.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Your rear already gaping thanks to your hollow plug, <<he npc_work_doctor>> fingers you open a bit further in preparation.
<<else>>
You gasp as <<he npc_work_doctor>> slides the <<=setup.getItemTypeName("plug")>> out of your hole, placing it within eyesight on the table next to you as <<he npc_work_doctor>> uses a finger to lube you up.
<</if>>
<<else>>
You gasp as <<he npc_work_doctor>> slides a slippery finger into your rear to lube you up.
<</if>>
<br><br>
"@@.npc_work_doctor;Hmm, a bit tight, but we can sort that out with some use, you probably want to relax because once I'm inside a tight slut-hole well... I don't believe in taking it slow.@@"<br>
<br>
With no further preamble, <<he npc_work_doctor>> removes <<his npc_work_doctor>> finger and presses the thick head of <<his npc_work_doctor>> cock against your hole. You try to relax but it takes a bit of force before your body gives in to spread before <<him npc_work_doctor>>. It feels like a telephone pole is being shoved up your ass as <<he npc_work_doctor>> leans <<his npc_work_doctor>> weight into you.<br>
<br>
<<if setup.getTotalValue("anal") > 5>>
Your experience has hardly prepared you for such girth, but you have no escape as <<he npc_work_doctor>> pushes deeper and deeper until finally grinding to a halt with <<his npc_work_doctor>> balls swinging against your legs.
<<else>>
You feel like you are going to split in twain, panting and gasping as <<he npc_work_doctor>> grunts with exertion and drives deeper. You would swear you are about to explode but, somehow, <<he npc_work_doctor>> manages to force your bowels into alignment enough to cram <<his npc_work_doctor>> full length inside of your <<getWordAnus>>, leaving you feeling like you have a second spine holding your body rigid.
<</if>>
<<He npc_work_doctor>> starts to pull back, but things are so tight <<he npc_work_doctor>> merely drags you with <<him npc_work_doctor>>, instead forced to take a firm grip on your hips as <<he npc_work_doctor>> commences to make short thrusts that rattle your entire body.<br>
<br>
"@@.npc_work_doctor;Tightness, unf, is, unf, excellent, but overall feel could do with more practice, I recommend you <<if setup.checkItemTypeWorn("plug")>>upgrade<<else>>add a nice, thick plug to<</if>> your daily routine if you want to become a proper size queen.@@"<br>
<br>
Your response is little more than a slurred whimper as <<he npc_work_doctor>> increases pace, slamming into you with the force of an air hammer, your only salvation the fact that it isn't much longer before <<he npc_work_doctor>> cums. Thick goop trickles down your leg as <<he npc_work_doctor>> finally withdraws, leaving you gaping and sore.<br>
<br>
The moment <<he npc_work_doctor>> steps back and withdraws support, you slump to the ground. Seemingly unconcerned <<he npc_work_doctor>> merely reaches down to remove the monitoring device. "@@.npc_work_doctor;Overall things seem to be progressing nominally. Keep up your medication and I will see you next week.@@"
<</if>>
<br><br>
Placing a bottle of your pills next to you <<=setup.getNpcName("npc_work_doctor","formal")>> leaves you to recover as <<he npc_work_doctor>> returns to <<his npc_work_doctor>> work.<br>
<br>
[<<moveTo "event_work_doctor_visit_4" "Ask what <<hes npc_work_doctor>> doing." 60>>]<br>
<<include "afterWorkVisiting">>
<<case 'oral'>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
<<He npc_work_doctor>> may be large and intimidating by most lady's standards with <<his npc_work_doctor>> thick, blue-veined cock but you have trained your throat to handle true monsters and you hilt <<him npc_work_doctor>> balls deep with a single gulp.
<<else>>
<<He npc_work_doctor>> may be large, and intimidating, with <<his npc_work_doctor>> thick cock and its bulging blue veins, but you have spent too much time on your knees training to give up, spreading your jaw wide and moaning as you barely manage to fit <<him npc_work_doctor>> down your throat, not stopping until your nose is pressed into <<him npc_work_doctor>> and you manage to get a slight taste of <<his npc_work_doctor>> pungent balls.
<</if>>
<br><br>
"@@.npc_work_doctor;Now THAT is the sort of results I am looking for!@@" <<He npc_work_doctor>> exclaims before taking over, one hand grabbing your hair to pull you just a little bit tighter, letting out a grunt before <<he npc_work_doctor>> pulls you halfway off and then slams forward again. "@@.npc_work_doctor;Mmmm, yeah, suck on <<if $fetish.daddy>><<Daddy>>'s<<else>>that<</if>> big cock, suck it hard.@@"<br>
<br>
At <<his npc_work_doctor>> mercy you just lick and suck as <<he npc_work_doctor>> controls the depth, your vision just starting to blur a minute later as <<he npc_work_doctor>> cums. Not wanting to ruin your outfit you gulp quickly swallowing every
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
wonderful
<</if>>
drop of <<getWordCum>>. As you catch your breath and lick your lips,
<<else>>
<<if setup.getTotalValue("cum") > 5>>
strangely alluring
<<else>>
disgusting
<</if>>
drop of <<getWordCum>>. As you catch your breath and try to ignore the taste,
<</if>>
you can't help but wonder where the strange, almost artificial after-taste came from, watching as <<he npc_work_doctor>> wilts startlingly fast, looking practically small by the time it takes to stuff <<his npc_work_doctor>> member back into <<his npc_work_doctor>> pants.<br>
<br>
"@@.npc_work_doctor;Well! I would call that a very successful demonstration of your progress.@@" <<He npc_work_doctor>> tosses you a small bottle of pills. "@@.npc_work_doctor;Here is your new prescription, keep up the good work and I will see you in a week.@@" Seemingly no longer interested in you in the slightest <<he npc_work_doctor>> turns and walks away.
<<else>>
Dropping to your knees, your jaw drops in more than invitation as you gawk at the monster cock <<he npc_work_doctor>> pulls out of <<his npc_work_doctor>> pants. Thick and long with pulsing blue veins running up and down the shaft it seems almost inhuman and you hurriedly reach out with both hands to try and take control of the situation.
<<if setup.getTotalValue("oral") > 5>>
Your fingers barely closing around a shaft that feels almost searing hot in your hand as you bring it to your mouth and wrap your mouth around <<his npc_work_doctor>> engorged head.
<<else>>
Your fingers barely closing around a shaft that feels almost searing hot in your hand as you bring it to your mouth and spread your lips around <<his npc_work_doctor>> tip.
<</if>>
<br><br>
"@@.npc_work_doctor;That's right, get a nice taste of that big, thick cock, just how you like it, right?@@"<br>
<br>
Your mouth nearly full, you can hardly even mumble a reply but <<he npc_work_doctor>> seems more interested in egging you on. "@@.npc_work_doctor;Work your tongue around the tip, that's right breathe through your nose, take a nice whiff of that fat, smelly cock. You're in heaven, aren't you, you <<if $fetish.sissy>>sissy <</if>>slut?@@"<br>
<br>
Despite <<his npc_work_doctor>> instruction, you're struggling to get any air at all as <<his npc_work_doctor>> cock pulses inside your mouth, almost triggering your gag reflex with each slight thrust. Fortunately for your jaw <<his npc_work_doctor>> size seems to be inversely proportionate to <<his npc_work_doctor>> stamina and after less than a minute slurping <<his npc_work_doctor>> cock your feel the blue veins pulse between your fingers and then the whole thing swells and bursts, a veritable flood of cum that blasts you so fast some of it shoots out the sides of your mouth as you gasp and sputter.<br>
<br>
Standing over you and dripping as <<his npc_work_doctor>> <<getWordPenis "npc_work_doctor">> wilts and shrinks <<he npc_work_doctor>> shakes the final drops onto the floor in front of you and then pushes your face into it with one foot.<br>
<br>
"@@.npc_work_doctor;Lick it up, slut, don't let <<if $fetish.daddy>>your <<Daddy npc_work_doctor>>'s<<else>>that<</if>><<if !$npc_work_doctor.fem>> man<</if>> gravy go to waste.@@"<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
You hardly need the encouragement as you <<if setup.getTotalValue("cum") > 15>>eagerly <</if>>lick up every drop and then wipe your face off and slurp your fingers clean before sticking out your tongue to prove that you've swallowed every drop. <<His npc_work_doctor>> <<getWordCum>> tastes strange and artificial, but with enough of a salty cummy base to whet your depraved whistle.
<<else>>
A drooling mess you do your best to obey, choking down the <<if setup.getTotalValue("oral") > 5>>strangely appealing<<else>>disgusting<</if>> <<getWordCum>> as <<he npc_work_doctor>> rubs your face back and forth on the, thankfully medically sterilized, floor like a human mop.
<</if>>
When <<he npc_work_doctor>> finally releases the pressure on your head, you sit up gasping only for <<him npc_work_doctor>> to toss you a bottle of pills and turn away in dismissal. "@@.npc_work_doctor;The treatment seems to be working but you really ought to spend some more time training that suck-hole of yours — a proper <<if $fetish.sissy>>sissy <</if>>bimbo would take me to the hilt.@@"<br>
<br>
Though <<his npc_work_doctor>> pants betray no sign of <<his npc_work_doctor>> monster cock there is no way you'll be forgetting its magnificence and you gawk at the thought, hardly believing such could even be possible as you catch your breath and rise to your feet.
<</if>>
<br><br>
Already on the other side of the room, <<he npc_work_doctor>> seems no longer interested in you as <<he npc_work_doctor>> turns back to <<his npc_work_doctor>> work.<br>
<br>
[<<moveTo "event_work_doctor_visit_4" "Ask what <<hes npc_work_doctor>> doing." 60>>]<br>
<<include "afterWorkVisiting">>
<<case 'tit'>>
<<His npc_work_doctor>> large, blue-veined <<getWordPenis "npc_work_doctor">> seems perfectly suited for your similarly oversized tits and you wrap your soft melons around <<his npc_work_doctor>> hard rod with enthusiasm, squeezing tight and licking around <<his npc_work_doctor>> tip as you bounce up and down.<br>
<br>
"@@.npc_work_doctor;Those tits feel divine. The drugs seem to be working perfectly... that's right suck on that tip, suck out that rich cream...@@"<br>
<br>
You do as <<he npc_work_doctor>> commands, looking up with bedroom eyes as you swirl your tongue and work your breasts up and down <<his npc_work_doctor>> shaft. Moaning <<his npc_work_doctor>> approval of your thick sweater pillows, it isn't long before <<he npc_work_doctor>> bursts.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
<<His npc_work_doctor>> cum has a weird, artificial flavour to it, but it isn't long before your mouth is flooded with all you can guzzle down.
<<else>>
<<His npc_work_doctor>> cum is thick, with a strangely artificial flavour to it, but you don't get to focus much as you are forced to hurriedly guzzle down the copious load.
<</if>>
<<His npc_work_doctor>> balls clench for a final spurt and <<he npc_work_doctor>> pulls back, <<his npc_work_doctor>> member shrinking rapidly as <<he npc_work_doctor>> seems in quite the hurry to fix <<his npc_work_doctor>> pants.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<His npc_work_doctor>> cum has a strange, almost artificial flavour
<<else>>
Not that you really have much experience with such but <<his npc_work_doctor>> cum tastes strangely artificial,
<</if>>
but you have little chance to think about it as it floods into your mouth and sprays out your nose to splatter over your heaving bosom. Gasping and coughing, you slump back as <<he npc_work_doctor>> hurries to fix <<his npc_work_doctor>> pants, <<his npc_work_doctor>> rapidly shriveling <<getWordPenis "npc_work_doctor">> vanished by the time you catch your breath.
<</if>>
<br><br>
"@@.npc_work_doctor;Well, I think we can put you down as your treatment progressing very well.@@" You rise to your feet and <<he npc_work_doctor>> hands you a fresh jar of pills. "@@.npc_work_doctor;Keep up the good work, I'll see you in a week.@@"<br>
<br>
<<His npc_work_doctor>> balls drained and prescription delivered, <<he npc_work_doctor>> seems no longer interested in you as <<he npc_work_doctor>> turns back to <<his npc_work_doctor>> work.<br>
<br>
[<<moveTo "event_work_doctor_visit_4" "Ask what <<hes npc_work_doctor>> doing." 60>>]<br>
<<include "afterWorkVisiting">>
<<case 'refuse'>>
<<if $fetish.drugs>>
<<=setup.getNpcName("npc_work_doctor","formal")>> frowns and steps away to pick up a syringe. "@@.npc_work_doctor;Hmm, that is quite improper, have you been keeping to your meds? Well, no matter we'll just give you a little top-up to even things out, hmm?@@"<br>
<br>
[<<moveTo "event_work_doctor_visit_3_stop" 'Remain where you are and accept the injection.' 60 "<<set $scene.stop_style='obey'>>">>]<br>
[<<moveTo "event_work_doctor_visit_3_stop" 'Try to run.' 60 "<<set $scene.stop_style='run'>>">>]<br>
[<<moveTo "event_work_doctor_visit_3_stop" 'Fight back.' 60 "<<set $scene.stop_style='fight'>>">>]
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> frowns. "@@.npc_work_doctor;Very disappointing... you are not going to get better if you do not take your medicine.@@"<br>
<br>
<<He npc_work_doctor>> shakes his head and waits to see if you have anything else.<br>
<br>
[<<moveTo "event_work_doctor_visit_4" "Ask what <<hes npc_work_doctor>> doing." 60>>]<br>
<<include "afterWorkVisiting">>
<</if>>
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
</div>/*#
#desc: talk to npc_work_doctor after exam
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage >= 3>>
<<if $currentTasks.hasOwnProperty('event_doctor_training')>>
You try to ask <<him npc_work_doctor>> what <<hes npc_work_doctor>> working on but <<he npc_work_doctor>> waves you off.<br>
<br>
<<if $currentTasks.event_doctor_training.condition == "Complete">>
"@@.npc_work_doctor;I've taught you enough of my secrets. Do not worry your pretty head with such things, I will let you know if I need assistance with anything.@@"
<<else>>
"@@.npc_work_doctor;Meet me this weekend as already scheduled, I do not have the time right now to explain things at a level you might comprehend.@@"
<</if>>
<br><br>
<<else>>
Somewhat recovered from your "exam," you walk over towards <<him npc_work_doctor>> and ask what <<hes npc_work_doctor>> doing. Waving you off, <<he npc_work_doctor>> chuckles slightly. "@@.npc_work_doctor;Something far too complicated for you to bother your cute head with. Now scamper off, I have work to do.@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
[<<moveTo "event_work_doctor_visit_5" "Show <<him npc_work_doctor>> that you're smarter than <<he npc_work_doctor>> is!" 60 "<<set $scene.smart=true>>">>]<br>
<<else>>
[<<moveTo "event_work_doctor_visit_5" "Show <<him npc_work_doctor>> that you're smart!" 60 "<<set $scene.smart=true>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_visit_5" "Play dumb and beg <<him npc_work_doctor>> to, like, teach you?" 60 "<<set $scene.smart=false>>">>]<br>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
[<<moveTo "event_work_doctor_visit_5" "Try to show <<him npc_work_doctor>> you're smart!" 60 "<<set $scene.smart=true>>">>]<br>
[<<moveTo "event_work_doctor_visit_5" "Play dumb and beg <<him npc_work_doctor>> to, like, teach you?" 60 "<<set $scene.smart=false>>">>]
<<else>>
[@@.link_locked;You aren't smart enough to try and impress <<him npc_work_doctor>>.@@]
[<<moveTo "event_work_doctor_visit_5" "Beg <<him npc_work_doctor>> to, like, teach you?" 60 "<<set $scene.smart=false>>">>]<br>
<</if>>
<</if>>
<</if>>
<<else>>
<<He npc_work_doctor>> hunches over, like <<hes npc_work_doctor>> trying to keep what <<hes npc_work_doctor>> doing a secret.<br>
<br>
"@@.npc_work_doctor;Sorry, company secrets, you see... until you've passed your trial period, you really shouldn't even be in here, I am only allowing it as a favour to <<=setup.getNpcName("npc_manager","other")>>.@@"<br>
<br>
<<printThought "Who would have thought a probationary period would be so restrictive?">><br>
<br>
<</if>>
<<include "afterWorkVisiting">>
</div>/*#
#desc: try to convince npc_work_doctor to teach you
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.smart>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<else>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<if setup.checkVisibleClothingTag('schoolgirl') > 50 && $npc_work_doctor.affection > $npc_work_doctor.anger && $npc_work_doctor.affection > 5 && $npc_manager.stage > 2 && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
<<set _daysTill = 7-$now.getUTCDay()>>
<<set _nextDate = setup.setNextDate($now, _daysTill, 9, 0)>>
<<set $scene.doubleBooked = setup.eventOverlap(_nextDate, 6)>>
<<if $scene.doubleBooked>>
<<set _nextDate = setup.setNextDate(_nextDate, 7, 9, 0)>>
<</if>>
<<set $scene.hasTrainingtask = $currentTasks.hasOwnProperty('event_doctor_training') && !$currentTasks.event_doctor_training.finished>>
<<if !$scene.hasTrainingtask>>
<<addTaskById 'event_doctor_training' _nextDate>>
<</if>>
<</if>>
<<if setup.checkVisibleClothingTag('schoolgirl') > 50>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.smart>>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
Looking past <<him npc_work_doctor>> to what <<he npc_work_doctor>> was working on before you came in, you immediately notice an error in the formula <<hes npc_work_doctor>> working on and point out the mistake.<br>
<br>
Freezing <<he npc_work_doctor>> turns slowly to face you, "@@.npc_work_doctor;WHAT did you just say?@@"
<<else>>
Looking past <<him npc_work_doctor>> to what <<he npc_work_doctor>> was working on before you came in, you see <<hes npc_work_doctor>> working on a chemical formula and read off a few bits that you recognise.<br>
<br>
Freezing <<he npc_work_doctor>> turns slowly to face you, "@@.npc_work_doctor;WHAT did you just say?@@"
<</if>>
<br><br>
<<printThought "Uh-oh, I don't think my behaving like this is part of <<his npc_work_doctor>> plan for me...">><br>
<br>
[<<moveTo "event_work_doctor_visit_6" "Double down and prove your intelligence?" 60 "<<set $scene.smart=true>>">>]<br>
[<<moveTo "event_work_doctor_visit_6" "Giggle it off as a random fluke." 60 "<<set $scene.smart=false>>">>]
<<else>>
You try to comprehend what <<hes npc_work_doctor>> working on, but your last science class was a long time ago, and you sheepishly mumble something about it looking like some sort of chemical formula?<br>
<br>
Pausing to look at you with a slight edge of suspicion for several tense moments, <<he npc_work_doctor>> finally shrugs. "@@.npc_work_doctor;See? I told you it was too complex for your pretty mind, now you just focus on keeping on top of your medication and keep your thoughts focused on how to be a better, more obedient <<if $fetish.sissy>>sissy <</if>>bimbo slut.@@"<br>
<br>
This time <<his npc_work_doctor>> dismissing wave seems quite final, and you decide it would be best to depart before you anger <<him npc_work_doctor>> for real.<br>
<br>
<<include "afterWorkVisiting">>
<</if>>
<<elseif $scene.hasTrainingtask>>
You ask if <<he npc_work_doctor>> could like, teach you?<br>
<br>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head in amusement. "@@.npc_work_doctor;Foolish girl, I already scheduled some time for you on the weekend. I am beginning to wonder if your head is capable of containing anything other than my cock, but, nonetheless I will endeavour to make it a productive use of my time. For now I must return to work.@@"<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
<<else>>
You giggle and ask if <<he npc_work_doctor>> could, like, teach you, so you could help?<br>
<br>
<<if setup.checkVisibleClothingTag('schoolgirl') > 50>>
<<if $npc_manager.stage < 3>>
Despite having only a slight bulge in <<his npc_work_doctor>> pants, you can tell by the way <<he npc_work_doctor>> eye-fucks you the whole time that <<he npc_work_doctor>> wants you, bad. Yet in the end, as you strike your cutest pose <<he npc_work_doctor>> merely sighs.<br>
<br>
"@@.npc_work_doctor;You are quite the tempting dish... alas, I must decline. Perhaps if you were a fully qualified secretary but, with you still in your trial period, well... there is just too great a risk of you seeing any manner of proprietary procedures.@@"
<<else>>
<<He npc_work_doctor>> turns to look at you, <<his npc_work_doctor>> eyes hungrily devouring your body as you jiggle a bit to show off your sexy schoolgirl ensemble.<br>
<br>
<<if !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
"@@.npc_work_doctor;Hmm... tempting, but I fear that you are yet too delicate of a flower for me... the lessons I have to give might break you. Perhaps if you had more experience...@@"<br>
<br>
<<printThought 'Wait... is <<he npc_work_doctor>> talking about me being a virgin "back there"... what type of "teaching" does <<he npc_work_doctor>> have in mind?'>>
<<elseif $npc_work_doctor.affection > $npc_work_doctor.anger && $npc_work_doctor.affection > 5>>
"@@.npc_work_doctor;Hmm... you know technically you're just supposed to be a <<if $fetish.sissy>>SISSI <</if>>secretary but dressed like that well...@@" <<He npc_work_doctor>> leers hungrily at you.
<<if $scene.doubleBooked>>
"@@.npc_work_doctor;Tell you what... I'm a bit busy this week but if you want to drop by next Sunday morning you could help me do the rounds and maybe "learn" a thing or two in the process. I'll meet you in the lobby and let you up.@@"
<<else>>
"@@.npc_work_doctor;Tell you what... I'm a bit busy tonight but if you want to drop by Sunday morning you could help me do the rounds and maybe "learn" a thing or two in the process. I'll meet you in the lobby and let you up.@@"
<</if>>
<<else>>
<<He npc_work_doctor>> seems to think for a long time, staring into your eyes as if searching for signs of duplicity.<br>
<br>
<<if $npc_work_doctor.affection <= $npc_work_doctor.anger && $npc_work_doctor.affection > 5>>
"@@.npc_work_doctor;Hmm, sorry. As tempting as that outfit is, I think it's better you just focus on your duties as a <<if $fetish.sissy>>SISSI <</if>>secretary. I don't think I could trust you around equipment, and you'd just be something of a distraction.@@"
<<elseif $npc_work_doctor.affection <= 5>>
"@@.npc_work_doctor;Hmm, sorry. As tempting as that outfit is, I think it's better you just focus on your duties as a <<if $fetish.sissy>>SISSI <</if>>secretary. I don't think I could trust you around equipment.@@"
<<else>>
"@@.npc_work_doctor;Hmm, sorry. As tempting as that outfit is, I think it's better you just focus on your duties as a <<if $fetish.sissy>>SISSI <</if>>secretary. I think you'd just be a distraction.@@"
<</if>>
<br><br>
<<printThought "Damn, if only <<he npc_work_doctor>> liked and trusted me a bit more...">>
<</if>>
<</if>>
<br><br>
Thanking <<him npc_work_doctor>> for <<his npc_work_doctor>> time, you leave.<br>
<br>
<<include "afterWorkVisiting">>
<<else>>
<<He npc_work_doctor>> smiles and ruffles your hair as <<he npc_work_doctor>> looks you over. "@@.npc_work_doctor;Sorry but you're already tapped to be a <<if $fetish.sissy>>SISSI <</if>>Secretary, I don't think I could really see you in another role. But don't worry, you have been providing plenty of help that will let me make all sorts of wonderful drugs for other girls!@@"<br>
<br>
<<if setup.checkItemSetOwned('schoolgirl_black') ||
setup.checkItemSetOwned('schoolgirl_pink') ||
setup.checkItemSetOwned('schoolgirl_scandalous') ||
setup.checkItemSetOwned('schoolgirl_slutty')>>
<<if setup.checkItemSetInInventory('schoolgirl_black') ||
setup.checkItemSetInInventory('schoolgirl_pink') ||
setup.checkItemSetInInventory('schoolgirl_scandalous') ||
setup.checkItemSetInInventory('schoolgirl_slutty')>>
<<printThought "Hmm, I wonder if changing into my schoolgirl outfit would work?">>
<<else>>
<<printThought "Hmm, I wonder if the schoolgirl outfit I have at home would work?">>
<</if>>
<<else>>
You blush bashfully and leave, wondering if maybe a different outfit might impress <<him npc_work_doctor>> to change <<his npc_work_doctor>> mind and see you as a prospective student?
<</if>>
<br><br>
<<if setup.checkItemSetInInventory('schoolgirl_black') ||
setup.checkItemSetInInventory('schoolgirl_pink') ||
setup.checkItemSetInInventory('schoolgirl_scandalous') ||
setup.checkItemSetInInventory('schoolgirl_slutty')
>>
[<<moveTo "event_work_doctor_change" 'Ask if you could have a moment to change into something "more appropriate."' 300>>]<br>
<</if>>
<<include "afterWorkVisiting">>
<</if>>
<</if>>
</div>/*#
#desc: change clothing to convince npc_work_doctor to teach you
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<if setup.checkItemSetInInventory('schoolgirl_slutty')>>
<<wearItemSet "schoolgirl_slutty" true>>
<<elseif setup.checkItemSetInInventory('schoolgirl_scandalous')>>
<<wearItemSet "schoolgirl_scandalous" true>>
<<elseif setup.checkItemSetInInventory('schoolgirl_pink')>>
<<wearItemSet "schoolgirl_pink" true>>
<<elseif setup.checkItemSetInInventory('schoolgirl_black')>>
<<wearItemSet "schoolgirl_black" true>>
<</if>>
<<set _jacket = setup.getItemFromType("jacket")>>
<<if _jacket != "">>
<<removeItem _jacket true>>
<</if>>
<<set _corset = setup.getItemFromType("corset")>>
<<if _corset != "">>
<<removeItem _corset true>>
<</if>>
<<if $npc_work_doctor.affection > $npc_work_doctor.anger && $npc_work_doctor.affection > 5 && $npc_manager.stage > 2>>
<<set _daysTill = 7-$now.getUTCDay()>>
<<set _nextDate = setup.setNextDate($now, _daysTill, 9, 0)>>
<<set $scene.doubleBooked = setup.eventOverlap(_nextDate, 6)>>
<<if $scene.doubleBooked>>
<<set _nextDate = setup.setNextDate(_nextDate, 7, 9, 0)>>
<</if>>
<<addTaskById 'event_doctor_training' _nextDate>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<He npc_work_doctor>> raises an eyebrow in interest then nods for you to go ahead. You wait for <<him npc_work_doctor>> to lead you to a changing area but it seems <<he npc_work_doctor>> wants you to just swap outfits here in front of <<him npc_work_doctor>>.<br>
<br>
<<printThought "Heh, of course <<he npc_work_doctor>> does...">><br>
<br>
Keeping a dopey smile on your face, you make flirty eyes back at <<him npc_work_doctor>> as you change into the skimpy slutty schoolgirl costume. Striking a pose, you inform <<him npc_work_doctor>> that you are "@@.pc;Like, ready to learn, <<sir npc_work_doctor>>!@@"<br>
<br>
<<if $npc_work_doctor.affection > $npc_work_doctor.anger && $npc_work_doctor.affection > 5>>
<<if $npc_manager.stage < 3>>
Despite having only a slight bulge in <<his npc_work_doctor>> pants, you can tell by the way <<he npc_work_doctor>> eye-fucks you the whole time that <<he npc_work_doctor>> wants you, bad. Yet in the end, as you strike your cutest pose <<he npc_work_doctor>> merely sighs.<br>
<br>
"@@.npc_work_doctor;You are quite the tempting dish... alas, I must decline. Perhaps if you were a fully qualified secretary but, with you still in your trial period, well... there is just too great a risk of you seeing any manner of proprietary procedures.@@"
<<else>>
The lusty smile you receive back tells you that you've won even before <<he npc_work_doctor>> speaks.<br>
<br>
"@@.npc_work_doctor;Oh my, how could I refuse such a sexy, enthusiastic student?@@" <<He npc_work_doctor>> leers hungrily at you.
<<if $scene.doubleBooked>>
"@@.npc_work_doctor;Tell you what... I'm a bit busy this week but if you want to drop by next Sunday morning you could help me do the rounds and maybe "learn" a thing or two in the process. I'll meet you in the lobby and let you up.@@"
<<else>>
"@@.npc_work_doctor;Tell you what... I'm a bit busy tonight but if you want to drop by Sunday morning you could help me do the rounds and maybe "learn" a thing or two in the process. I'll meet you in the lobby and let you up.@@"
<</if>>
<br><br>
You make a show of clapping your hands in glee and then skip away as <<he npc_work_doctor>> dismisses you.
<</if>>
<<else>>
You can tell <<hes npc_work_doctor>> tempted by your sexy ensemble but something seems to hold <<him npc_work_doctor>> back. Perhaps if you built up <<his npc_work_doctor>> trust and affection a bit more?<br>
<br>
"@@.npc_work_doctor;An appealing offer but... no, you are a <<if $fetish.sissy>>SISSI <</if>>Secretary, best not to distract your cute head with anything else. Until our next appointment, good day, Miss <<=$player.last_name>>@@"<br>
<br>
You make a show of pouting, but <<he npc_work_doctor>> stands firm and with a reluctant sigh you leave.
<</if>>
<br><br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: aftermath of smartmouthing npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.smart>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<if $scene.smart>>
<<if setup.getTotalValue("smart") > 15>>
<<He npc_work_doctor>> looks at you in shock, doing a double take of <<his npc_work_doctor>> notes before going wide-eyed as <<he npc_work_doctor>> realises that you were correct in noting the error before glaring back at you in rage.
<<else>>
<<He npc_work_doctor>> stares at you in shock, totally taken off guard by your display of intellect.
<</if>>
Straightening slightly with pride, you are totally taken off guard when your body suddenly explodes in pain, 10,000 volts flowing through you as you spasm for a second and collapse to the floor.<br>
<br>
Standing over you with a grin, <<he npc_work_doctor>> places a stun gun back on <<his npc_work_doctor>> desk. "@@.npc_work_doctor;Not so smart now, hmm? Either you haven't been taking your drugs or you're remarkably resilient. Some might call it a tragedy to extinguish such an intellect but, well... who knows what you might be planning, best to nip this whole thing in the bud, hmm?@@"<br>
<br>
Shooting you once again before you can collect your limbs sufficient to rise, you're back writhing on the floor as <<he npc_work_doctor>> waits for you to go limp before picking you up and dumping you onto an exam bed.<br>
<br>
[<<moveTo "bad_end_work_doctor_smart" "Continue." 0>>]
<<else>>
You giggle and act like the whole thing was a mistake, spouting off some random science-sounding nonsense and asking if it solves the problem?<br>
<br>
Obviously relieved that your idea was just a fluke, <<he npc_work_doctor>> looks at you curiously but laughs it off and dismisses you.<br>
<br>
<<printThought "That was a close one, I need to be careful of <<his npc_work_doctor>> ego and not tip my hand.">><br>
<br>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: bad end for outsmarting npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<set $gameOver = 'outsmart_doctor'>>
<<set $player.location to "">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/scenes/badend.png">>
<div id="invframe" class="scrolltext">
Restraints seemingly designed for this very purpose snap onto your limbs, holding you in place as <<he npc_work_doctor>> rolls a large IV stand into position. Whistling to <<himself npc_work_doctor>>, <<he npc_work_doctor>> grabs three bags, each filled with a neon pink liquid and by the time you are starting to regain control of your body <<he npc_work_doctor>> has shoved a large gag into your mouth, the other end attached to the larger of the three bags as it begins to flow.<br>
<br>
Your mouth explodes with sickeningly sweet flavour, and you have no choice but to swallow rather than drown. As you gulp down a steady stream of the liquid, you start to feel a calm haze spread through your body and you try to thrash against your bonds, fearing that this may be your last shot at rebellion.<br>
<br>
Shaking <<his npc_work_doctor>> head at your futile struggle against the restraints, <<he npc_work_doctor>> follows up by sending a second jet of pink fluid up your rear before rounding off with sticking an IV into your arm. As it runs through your veins, you go limp, all thought of rebellion, and soon all thoughts at all, replaced by mindless pink bliss.<br>
<br>
If <<=setup.getNpcName("npc_manager","formal")>> was upset at the disappearance of her secretary, you never heard, or cared, as you awaken wide-eyed, horny and ready to mindlessly obey as one of the drone-like "nurses" that staff the secretive, experimental hospital that "cares" for special VIP employees of Social Interaction Service Syndicate Inc. Occasionally you reflect back to your old job, but such thoughts are fleeting and infrequent, soon pushed aside by the wonderful feeling of the plug shifting in your ass with every step and the lovely bounce of your dual head-sized breasts.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: meet npc_work_doctor after work when you have no appointment
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first_time = $npc_work_doctor.stage == 1>>
<<set $scene.first_nurse = $npc_work_doctor.flags.nurse_available && $npc_work_doctor.stage < 3 && setup.hasFreeTime($now, $player, $currentTasks, 5000)>>
<<if $scene.first_time && $now.getUTCDay() != 7>>
<<set $npc_work_doctor.stage = 2>>
<</if>>
<<if !$scene.talk>>
<<set $scene.talk = {}>>
<</if>>
<<if $scene.reason>>
<<set $scene.talk[$scene.reason] = true>>
<</if>>
<<set $scene.visitDoctor = true>>
<<if !$scene.first_nurse && $npc_manager.stage >= 4 && !$npc_primrose.profile && setup.hasFreeTime($now, $player, $currentTasks, 5000)>>
<<initRoom>>
<<moveTo "event_primrose_intro_1">>
<<elseif $npc_manager.stage == 5 && setup.hasFreeTime($now, $player, $currentTasks, 1800) && !State.hasPlayed("event_coworker_hucow_stage5_1")>>
<<initRoom>>
<<moveTo "event_coworker_hucow_stage5_1">>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<<else>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.drVisitRepeat>>
<<=setup.getNpcName("npc_work_doctor","formal")>> waits to see if you need something else.
<<else>>
You enter <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office/lab to find <<him npc_work_doctor>> sitting in front of a lab station.
<</if>>
<br><br>
<<if $now.getUTCDay() == 5>>
<<=setup.getNpcName("npc_work_doctor","formal")>> seems to be in a bit of a hurry.<br>
<br>
<<if $currentTasks.hasOwnProperty("event_doctor_first_appointment")>>
<<if $currentTasks.event_doctor_first_appointment.finished>>
"@@.npc_work_doctor;I am very sorry, I have an important weekly status meeting to get to, what do you need?@@"<br>
<br>
<<if $scene.talk.drugs>>
[@@.link_locked;You have already asked <<=setup.getNpcName("npc_work_doctor","formal")>> about drugs today.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say that you need a re-up on your prescription." 60 "<<set $scene.reason='drugs'>>">>]<br>
<</if>>
<<else>>
"@@.npc_work_doctor;What is wrong with you? Our appointment is on Tuesday! I have important work to do before the weekend and I do not have time for random <<if $fetish.sissy>>sissies<<else>>employees<</if>> to come barging in with demands!@@"<br>
<br>
<</if>>
<</if>>
<<if $npc_primrose.stage == 2>>
[<<moveTo "event_primrose_return_1" 'Ask <<him npc_work_doctor>> if <<he>> could give you directions to <<=ps(setup.getNpcName("npc_primrose", "formal"))>> lab?' 60 "<<set $scene.style='primrose'>>">>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty("task_destroy_ex") && !$currentTasks.task_destroy_ex.finished>>
<<if setup.checkItemOwned("drug_destroy_ex")>>
[@@.link_locked;<<=setup.getNpcName("npc_work_doctor","formal")>> already provided you with a drug to use on your ex.@@]<br>
<<else>>
[<<moveTo "event_destroy_exgirlfriend_drug_pickup_1" '<<=setup.getNpcName("npc_boss","formal")>> said to pickup a drug to use on your ex?' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_drugs_nursula") && !State.hasPlayed("event_primrose_destruction_drugs_twig")>>
[<<moveTo "event_primrose_destruction_drugs_twig" 'Give <<him npc_work_doctor>> <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> prescription for <<=setup.getNpcName("npc_primrose","formal")>>.' 300>>]<br>
<</if>>
[<<moveTo "room_elevator_home" "Apologise for bothering <<him npc_work_doctor>> and leave." 60>>]
<<elseif $currentTasks.hasOwnProperty("event_doctor_first_appointment") && !$currentTasks.event_doctor_first_appointment.finished>>
<<=setup.getNpcName("npc_work_doctor","formal")>> seems to be in a bit of a hurry.<br>
<br>
"@@.npc_work_doctor;Foolish girl, our appointment is Tuesday. I do not have time for you right now, I have a meeting I must be getting to. We will deal with your prescription at the scheduled time.@@"<br>
<br>
<<He npc_work_doctor>> directs you towards the door.<br>
<br>
[<<moveTo "room_elevator_home" "Apologise for bothering <<him npc_work_doctor>> and leave." 60>>]
<<elseif $scene.first_nurse>>
<<if $scene.first_time>>
<<if $scene.drVisitRepeat>>
"@@.npc_work_doctor;Now that is out of the way, are you ready to join me on my rounds?@@"
<<else>>
"@@.npc_work_doctor;Ah, you made it! I was just getting ready to head to an appointment. Come, let us get you changed into something more appropriate.@@"
<</if>>
<br><br>
<<if $scene.talk.drugs>>
[@@.link_locked;You have already asked <<him npc_work_doctor>> about your prescription today.@@]
<<elseif $currentTasks.hasOwnProperty("event_doctor_first_appointment")>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say that actually you need a re-up on your prescription." 60 "<<set $scene.reason='drugs'>>">>]<br>
<</if>>
<<if $scene.talk.visit>>
[@@.link_locked;You have already chatted casually with <<=setup.getNpcName("npc_work_doctor","formal")>> today.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Interrupt and say you just came to visit." 60 "<<set $scene.reason='visit'>>">>]<br>
<</if>>
<<if $npc_work_doctor.stage < 3>>
[<<moveTo "event_work_doctor_nonappointment_2_first_1" "Follow <<him npc_work_doctor>>." 60>>]
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Follow <<him npc_work_doctor>>." 60 "<<set $scene.reason='change'>>">>]
<</if>>
<<else>>
<<if $scene.drVisitRepeat>>
"@@.npc_work_doctor;So, now that that's out of the way, are you ready to join me on my rounds?@@"
<<else>>
"@@.npc_work_doctor;Ah, you're here to help again, go ahead and get changed, I have quite the interesting subject for you today, I think you will quite enjoy it and find it very... educational.@@"
<</if>>
<br><br>
<<if $scene.talk.drugs>>
[@@.link_locked;You have already asked <<him npc_work_doctor>> about drugs today.@@]
<<elseif $currentTasks.hasOwnProperty("event_doctor_first_appointment")>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say that actually you need a re-up on your prescription." 60 "<<set $scene.reason='drugs'>>">>]<br>
<</if>>
<<if $scene.talk.visit>>
[@@.link_locked;You have already chatted casually with <<=setup.getNpcName("npc_work_doctor","formal")>> today.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you just came to visit." 60 "<<set $scene.reason='visit'>>">>]<br>
<</if>>
<<if $npc_primrose.stage == 2>>
[<<moveTo "event_primrose_return_1" 'Ask <<him npc_work_doctor>> if <<he>> could give you directions to <<=ps(setup.getNpcName("npc_primrose", "formal"))>> lab?' 60 "<<set $scene.style='primrose'>>">>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty("task_destroy_ex") && !$currentTasks.task_destroy_ex.finished>>
<<if setup.checkItemOwned("drug_destroy_ex")>>
[@@.link_locked;<<=setup.getNpcName("npc_work_doctor","formal")>> already provided you with a drug to use on your ex.@@]<br>
<<else>>
[<<moveTo "event_destroy_exgirlfriend_drug_pickup_1" '<<=setup.getNpcName("npc_boss","formal")>> said to pickup a drug to use on your ex?' 60>>]<br>
<</if>>
<</if>>
<<if $npc_work_doctor.stage < 3>>
[<<moveTo "event_work_doctor_nonappointment_2_first_1" "Follow <<him npc_work_doctor>> to get changed." 60>>]
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Follow <<him npc_work_doctor>> and get changed." 60 "<<set $scene.reason='change'>>">>]
<</if>>
<<if $currentTasks.hasOwnProperty("task_destroy_ex") && !$currentTasks.task_destroy_ex.finished>>
<<if setup.checkItemOwned("drug_destroy_ex")>>
[@@.link_locked;<<=setup.getNpcName("npc_work_doctor","formal")>> already provided you with a drug to use on your ex.@@]<br>
<<else>>
[<<moveTo "event_destroy_exgirlfriend_drug_pickup_1" '<<=setup.getNpcName("npc_boss","formal")>> said to pickup a drug to use on your ex?' 60>>]<br>
<</if>>
<</if>>
<</if>>
<<elseif $scene.first_time>>
<<if $scene.drVisitRepeat>>
"@@.npc_work_doctor;So, do you need anything else?@@"
<<else>>
"@@.npc_work_doctor;Ah, <<=$player.first_name>>, what are you doing here? You are not yet due for a resupply on your prescription.@@"
<</if>>
<br><br>
<<if $scene.talk.drugs>>
[@@.link_locked;You have already asked <<him npc_work_doctor>> about drugs today.@@]
<<elseif $currentTasks.hasOwnProperty("event_doctor_first_appointment")>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you need a re-up on your prescription." 60 "<<set $scene.reason='drugs'>>">>]<br>
<</if>>
<<if $scene.talk.visit>>
[@@.link_locked;You have already chatted casually with <<=setup.getNpcName("npc_work_doctor","formal")>> today.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you just came to visit." 60 "<<set $scene.reason='visit'>>">>]<br>
<</if>>
<<if $scene.talk.teach>>
[@@.link_locked;You have already asked <<=setup.getNpcName("npc_work_doctor","formal")>> about <<his npc_work_doctor>> work today.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you wanted to learn more about what <<he npc_work_doctor>> does." 60 "<<set $scene.reason='teach'>>">>]<br>
<</if>>
<<if $npc_primrose.stage == 2>>
[<<moveTo "event_primrose_return_1" 'Ask <<him npc_work_doctor>> if <<he>> could give you directions to <<=ps(setup.getNpcName("npc_primrose", "formal"))>> lab?' 60 "<<set $scene.style='primrose'>>">>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty("task_destroy_ex") && !$currentTasks.task_destroy_ex.finished>>
<<if setup.checkItemOwned("drug_destroy_ex")>>
[@@.link_locked;<<=setup.getNpcName("npc_work_doctor","formal")>> already provided you with a drug to use on your ex.@@]<br>
<<else>>
[<<moveTo "event_destroy_exgirlfriend_drug_pickup_1" '<<=setup.getNpcName("npc_boss","formal")>> said to pickup a drug to use on your ex?' 60>>]<br>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_destroy_ex") && !$currentTasks.task_destroy_ex.finished>>
<<if setup.checkItemOwned("drug_destroy_ex")>>
[@@.link_locked;<<=setup.getNpcName("npc_work_doctor","formal")>> already provided you with a drug to use on your ex.@@]<br>
<<else>>
[<<moveTo "event_destroy_exgirlfriend_drug_pickup_1" '<<=setup.getNpcName("npc_boss","formal")>> said to pickup a drug to use on your ex?' 60>>]<br>
<</if>>
<</if>>
<<elseif setup.checkVisibleClothingTag('schoolgirl') > 50>>
<<=setup.getNpcName("npc_work_doctor","formal")>> looks up at your outfit with unconcealed lust.<br>
<br>
<<if $scene.drVisitRepeat>>
"@@.npc_work_doctor;So, girl, what else can the doctor do for you today?@@"
<<else>>
"@@.npc_work_doctor;Well, well, well, that does not look like regulation secretary attire... what has brought a lovely girl like you to the doctor's office?@@"
<</if>>
<br><br>
<<if $scene.talk.drugs>>
[@@.link_locked;You have already asked <<him npc_work_doctor>> about drugs today.@@]<br>
<<elseif $currentTasks.hasOwnProperty("event_doctor_first_appointment")>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you need a re-up on your prescription." 60 "<<set $scene.reason='drugs'>>">>]<br>
<</if>>
<<if $scene.talk.visit>>
[@@.link_locked;You have already chatted casually with <<=setup.getNpcName("npc_work_doctor","formal")>> today.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you just came to visit." 60 "<<set $scene.reason='visit'>>">>]<br>
<</if>>
<<if $npc_work_doctor.flags.nurse_available>>
[<<moveTo "event_work_doctor_nonappointment_2" "Get changed to help as <<his npc_work_doctor>> nurse-assistant." 60 "<<set $scene.reason='change'>>">>]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you wanted to learn more about what <<he npc_work_doctor>> does." 60 "<<set $scene.reason='teach'>>">>]<br>
<</if>>
<<if $npc_work_doctor.flags.aphrodisiac.unlock>>
<<if $npc_work_doctor.flags.aphrodisiac.stage > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_1" "Ask if you could be of further assistance with <<his npc_work_doctor>> aphrodisiac trial?" 60>>]<br>
<<else>>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_0" "Ask if you could assist with <<his npc_work_doctor>> aphrodisiac trial?" 60>>]<br>
<</if>>
<</if>>
<<if $npc_primrose.stage == 2>>
[<<moveTo "event_primrose_return_1" 'Ask <<him npc_work_doctor>> if <<he>> could give you directions to <<=ps(setup.getNpcName("npc_primrose", "formal"))>> lab?' 60 "<<set $scene.style='primrose'>>">>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty("task_destroy_ex") && !$currentTasks.task_destroy_ex.finished>>
<<if setup.checkItemOwned("drug_destroy_ex")>>
[@@.link_locked;<<=setup.getNpcName("npc_work_doctor","formal")>> already provided you with a drug to use on your ex.@@]<br>
<<else>>
[<<moveTo "event_destroy_exgirlfriend_drug_pickup_1" '<<=setup.getNpcName("npc_boss","formal")>> said to pickup a drug to use on your ex?' 60>>]<br>
<</if>>
<</if>>
<<else>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<if $scene.drVisitRepeat>>
"@@.npc_work_doctor;Is there anything else you need?@@" <<He npc_work_doctor>> asks with a slight edge of annoyance.
<<else>>
"@@.npc_work_doctor;Ah, <<=$player.first_name>>, what do you need today?@@"
<</if>>
<br><br>
<<if $scene.talk.drugs>>
[@@.link_locked;You have already asked <<him npc_work_doctor>> about drugs today.@@]<br>
<<elseif $currentTasks.hasOwnProperty("event_doctor_first_appointment") && $currentTasks.event_doctor_first_appointment.finished>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you need a re-up on your prescription." 60 "<<set $scene.reason='drugs'>>">>]<br>
<</if>>
<<if $scene.talk.visit>>
[@@.link_locked;You have already chatted casually with <<=setup.getNpcName("npc_work_doctor","formal")>> today.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you just came to visit." 60 "<<set $scene.reason='visit'>>">>]<br>
<</if>>
<<if $npc_work_doctor.flags.nurse_available>>
[<<moveTo "event_work_doctor_nonappointment_2" "Get changed to help as <<his npc_work_doctor>> nurse-assistant." 60 "<<set $scene.reason='change'>>">>]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Say you wanted to learn more about what <<he npc_work_doctor>> does." 60 "<<set $scene.reason='teach'>>">>]<br>
<</if>>
<<if $npc_work_doctor.flags.hucowProcedure > 0>>
<<if $scene.talk.hucow>>
[@@.link_locked;You have already asked <<=setup.getNpcName("npc_work_doctor","formal")>> about hucows today.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_2" "Ask if you can spend more time as a hucow?" 60 "<<set $scene.reason='hucow'>>">>]<br>
<</if>>
<</if>>
<<if $npc_work_doctor.flags.aphrodisiac.unlock>>
<<if $npc_work_doctor.flags.aphrodisiac.stage > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_1" "Ask if you could be of further assistance with <<his npc_work_doctor>> aphrodisiac trial?" 60>>]<br>
<<else>>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_0" "Ask if you could assist with <<his npc_work_doctor>> aphrodisiac trial?" 60>>]<br>
<</if>>
<</if>>
<<if $npc_primrose.stage == 2>>
[<<moveTo "event_primrose_return_1" 'Ask <<him npc_work_doctor>> if <<he>> could give you directions to <<=ps(setup.getNpcName("npc_primrose", "formal"))>> lab?' 60 "<<set $scene.style='primrose'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_drugs_nursula") && !State.hasPlayed("event_primrose_destruction_drugs_twig")>>
[<<moveTo "event_primrose_destruction_drugs_twig" 'Give <<him npc_work_doctor>> <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> prescription for <<=setup.getNpcName("npc_primrose","formal")>>.' 300>>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty("task_destroy_ex") && !$currentTasks.task_destroy_ex.finished>>
<<if setup.checkItemOwned("drug_destroy_ex")>>
[@@.link_locked;<<=setup.getNpcName("npc_work_doctor","formal")>> already provided you with a drug to use on your ex.@@]<br>
<<else>>
[<<moveTo "event_destroy_exgirlfriend_drug_pickup_1" '<<=setup.getNpcName("npc_boss","formal")>> said to pickup a drug to use on your ex?' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_coworker_hucow_stage5_1") || State.hasPlayed("event_porn_hucow_recruit_1_alt")>>
[<<moveTo "event_coworker_hucow_visit_1" 'Ask if you could speak with <<=setup.getNpcName("npc_hucow","full")>>?' 300>>]<br>
<<elseif State.hasPlayed("event_porn_hucow_invite_1")>>
[<<moveTo "event_porn_hucow_recruit_1_alt" 'Ask if you could speak with <<=setup.getNpcName("npc_hucow","full")>>?' 300>>]<br>
<</if>>
<<else>>
<<He npc_work_doctor>> looks up at you, appearing somewhat distracted. "@@.npc_work_doctor;I am in the middle of important work! Come back some other day.@@" <<He npc_work_doctor>> turns away from you dismissively.<br>
<br>
[<<moveTo "room_elevator_home" "Thank <<him npc_work_doctor>> and leave." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: tell npc_work_doctor why you visited
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.reason>>
<<case 'hucow'>>
<<include "calcRemoveProstitutionCall">>
<<incrementEmotion 'affection' 'npc_work_doctor' 3>>
<<case 'drugs'>>
<<if $npc_work_doctor.flags.seenPermanent>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<else>>
<<set $scene.drugCount = setup.getItemCount('personal_medication')>>
<<if $scene.drugCount > 0>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<<else>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<set $scene.pillsAdd = Math.max(7, setup.daysToDate($now, setup.getTaskDueDate('event_doctor_reup'))+1)>>
<<addItem 'personal_medication' $scene.pillsAdd>>
<<set $player.flags.drugs.bonus_prescription = true>>
<</if>>
<</if>>
<<case 'visit'>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<if $npc_work_doctor.affection < 5>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<<case 'punish'>>
<<incrementEmotion 'affection' 'npc_work_doctor' 3>>
<<case 'teach'>>
<<if !$npc_work_doctor.flags.nurse_available && $currentTasks.hasOwnProperty('event_doctor_training')>>
<<set $scene.rebook = $currentTasks.hasOwnProperty('event_doctor_training') && $currentTasks.event_doctor_training.condition == "Failed">>
<<if $scene.rebook>>
<<set _daysTill = 7-$now.getUTCDay()>>
<<set _nextDate = setup.setNextDate($now, _daysTill, 9, 0)>>
<<set $scene.doubleBooked = setup.eventOverlap(_nextDate, 6)>>
<<if !$scene.doubleBooked>>
<<set $scene.hasTrainingtask = $currentTasks.hasOwnProperty('event_doctor_training') && !$currentTasks.event_doctor_training.finished>>
<<if !$scene.hasTrainingtask>>
<<addTaskById 'event_doctor_training' _nextDate>>
<</if>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<<else>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<</if>>
<<case 'change'>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'nurse_work_outfit_unleashed'>>
<<wearItemSet 'nurse_work_outfit_unleashed'>>
<<applyExperience 'oral' 12 'terrible' $SEEN_STRANGER>>
<<if setup.getChastityLevel() == 5>>
<<addCredits 25>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<switch $scene.reason>>
<<case 'hucow'>>
<<if $npc_work_doctor.flags.hucowProcedure == 1>>
<<=setup.getNpcName("npc_work_doctor","formal")>> is surprised for a moment, but then grins in excitement.
<<if setup.hasFreeTime($now, $player, $currentTasks, 28800)>>
"@@.npc_work_doctor;And this after <<=setup.getNpcName("npc_manager","other")>> so annoyingly interfered with my work... certainly we can hook you up for the night. So much more productive a use of time than your returning home. And I can have you back in time for work so <<=setup.getNpcName("npc_manager","other")>> need never know.@@"
<<else>>
"@@.npc_work_doctor;And this after <<=setup.getNpcName("npc_manager","other")>> so annoyingly interfered with my work... unfortunately tonight will not work. Come back some other time, when you have a clear schedule and I will give you a night to remember! Well, maybe remember is the wrong word. The procedure tends to leave a bit of a fog, but you love that, don't you?@@"
<</if>>
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 28800)>>
grins "@@.npc_work_doctor;And this after <<=setup.getNpcName("npc_manager","other")>> so annoyingly interfered with my work... certainly we can hook you up for the night. So much more productive a use of time than your returning home. And I can have you back in time for work so <<=setup.getNpcName("npc_manager","other")>> need never know.@@"
<<else>>
looks frustrated. "@@.npc_work_doctor;I would like nothing more... unfortunately tonight will not work, come back some other time, when your schedule is more clear. While we both know you were meant to be an obedient hucow... we cannot have word getting back to <<=setup.getNpcName("npc_manager","other")>>, she would only interfere.@@"
<</if>>
<</if>>
<br><br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 28800)>>
<<if State.hasPlayed("event_coworker_hucow_stage5_1")>>
<<=setup.getNpcName("npc_work_doctor","formal")>> summons <<=setup.getNpcName("npc_hucow","full")>> with a clap and she curtsies obediently before motioning for you to follow.<br>
<br>
"@@.npc_work_doctor;<<=setup.getNpcName("npc_hucow","full")>> will take care of things, unfortunately I am just too busy to take a personal hand in EVERYTHING.@@"<br>
<br>
[<<moveTo "event_work_doctor_hucow_night_stage5_1" 'Follow <<=setup.getNpcName("npc_hucow","full")>>.' 1800 "<<set $scene.first=false>>">>]<br>
<<else>>
<<He npc_work_doctor>> leads you into a back room where <<=setup.getNpcName("npc_hucow","full")>> is already hooked up and being aggressively serviced.<br>
<br>
"@@.npc_work_doctor;Come, come! The sooner you strip and get hooked up, the sooner we can put you to work doing what you were meant to do.@@"<br>
<br>
[<<moveTo "event_work_doctor_hucow_night_1" "Do as <<he npc_work_doctor>> says." 1800>>]<br>
<</if>>
<<else>>
[<<moveTo "event_work_doctor_nonappointment_1" "Ask about something else." 60 "<<set $scene.drVisitRepeat=true>><<include 'rescheduleProstitution'>>">>]<br>
[<<moveTo "room_elevator_home" "Thank <<him npc_work_doctor>> and leave." 60 "<<include 'rescheduleProstitution'>>">>]
<</if>>
<<case 'punish'>>
You flutter your eyelashes and put on your best sexy schoolgirl voice as you beg <<=setup.getNpcName("npc_work_doctor","formal")>> to teach you a lesson.<br>
<br>
Eyes wild with lust, <<=setup.getNpcName("npc_work_doctor","formal")>> licks <<his npc_work_doctor>> lips as <<he npc_work_doctor>> steps closer. "@@.npc_work_doctor;A lesson? Like you deserve the benefit of my wisdom after your prior behaviour? No, as good as you look in that outfit you aren't worth my time... but maybe you can start making up for your transgressions by putting those sexy lips to a better use?@@"<br>
<br>
As <<he npc_work_doctor>> speaks <<=setup.getNpcName("npc_work_doctor","formal")>> grabs a blue syringe, jamming it into <<his npc_work_doctor>> own leg and grunting slightly as <<his npc_work_doctor>> pants swell and tear to leave <<him npc_work_doctor>> with a large, throbbing cock in hand.<br>
<br>
[<<moveTo "event_work_doctor_nonappointment_3_visit" "Change your mind and leave." 60 "<<set $scene.suck=false>>">>]<br>
[<<moveTo "event_work_doctor_nonappointment_3_visit" "Crawl over and give <<him npc_work_doctor>> some relief." 60 "<<set $scene.suck=true>>">>]
<<case 'drugs'>>
<<if $npc_work_doctor.flags.seenPermanent>>
<<=setup.getNpcName("npc_work_doctor","formal")>> sneers in annoyance. "@@.npc_work_doctor;Stop wasting my time. You are under permanent drug effects, I do not need to be bothered with prescriptions anymore!@@"
<<else>>
<<if $scene.drugCount > 0>>
<<=setup.getNpcName("npc_work_doctor","formal")>> checks <<his npc_work_doctor>> computer and then frowns. "@@.npc_work_doctor;Really? You know we track these things, I gave you enough to last you the full week, please do not waste my time like a druggie looking for her fix.@@"
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> checks <<his npc_work_doctor>> computer and then looks at you with a measure of concern. "@@.npc_work_doctor;Hmm, the records match that you are out, but you should have had enough for another <<if $scene.pillsAdd == 1>>day<<else>><<=$scene.pillsAdd>> days<</if>>.@@" <<He npc_work_doctor>> tosses you a bottle "@@.npc_work_doctor;That should tide you over until our next scheduled appointment, but do be careful, not adhering to your prescription could have... consequences.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo "event_work_doctor_nonappointment_1" "Ask about something else." 60 "<<set $scene.drVisitRepeat=true>>">>]<br>
[<<moveTo "room_elevator_home" "Thank <<him npc_work_doctor>> and leave." 60>>]
<<case 'visit'>>
<<if $npc_work_doctor.anger > ($npc_work_doctor.affection + 5)>>
<<=setup.getNpcName("npc_work_doctor","formal")>> squints at you suspiciously, as if trying to suss out some secret motive.<br>
<br>
<<if $currentTasks.hasOwnProperty('event_doctor_training')>>
"@@.npc_work_doctor;I'm sorry, but I have far too much work to do to spend time distracted by a silly girl. Come back for our normally scheduled appointment.@@"
<<else>>
"@@.npc_work_doctor;I'm sorry, but unless you have a medical issue for me I am too busy to spend time distracted by a silly girl.@@"
<</if>>
<br><br>
<<if setup.checkVisibleClothingTag('schoolgirl') > 50>>
Despite <<his npc_work_doctor>> brusque reply, <<he npc_work_doctor>> continues to oogle your outfit with unconcealed lust.<br>
<br>
<<printThought "Maybe this is the key to earning <<his npc_work_doctor>> trust?">><br>
<br>
[<<moveTo "event_work_doctor_nonappointment_2" 'Beg for <<=setup.getNpcName("npc_work_doctor","formal")>> to teach you a lesson.' 60 "<<set $scene.reason='punish'>>">>]<br>
[<<moveTo "room_elevator_home" "Leave." 60>>]
<<else>>
The dismissal stings slightly, but you hurry out of the lab before <<he npc_work_doctor>> decides to administer something worse than mere harsh words.<br>
<br>
<<printThought "Hmm, maybe if <<he npc_work_doctor>> liked me more <<he npc_work_doctor>>'d be less brusque? Perhaps if I dressed up the occasion... something sexy and submissive... yeah <<he npc_work_doctor>> seems like the schoolgirl sort...">><br>
<br>
[<<moveTo "room_elevator_home" "Leave." 60>>]
<</if>>
<<else>>
<<if $npc_work_doctor.anger > 0>>
You note a flicker of suspicion pass over <<his npc_work_doctor>> face, but it lasts but a moment to be replaced by a leering grin.
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> smiles at your offer.
<</if>>
"@@.npc_work_doctor;Hmm, come to think of it, I could do with some relief, it's been a long day and I'm a bit... pent up.@@"<br>
<br>
Rising from <<his npc_work_doctor>> stool, <<he npc_work_doctor>> grabs a blue syringe, facing away from you and grunting slightly before turning back around; large, throbbing cock in hand.<br>
<br>
[<<moveTo "event_work_doctor_nonappointment_3_visit" "Change your mind and leave." 60 "<<set $scene.suck=false>>">>]<br>
[<<moveTo "event_work_doctor_nonappointment_3_visit" "Crawl over and give <<him npc_work_doctor>> some relief." 60 "<<set $scene.suck=true>>">>]
<</if>>
<<case 'teach'>>
<<if $scene.rebook>>
<<=setup.getNpcName("npc_work_doctor","formal")>> squints at you in annoyance.
<<if $scene.doubleBooked>>
"@@.npc_work_doctor;After you stood me up? Even if I were to consider again setting aside my valuable time to instruct you... well, this weekend is out of the question. I have something already scheduled, and have no time for anything else, least of all you.@@"
<<else>>
"@@.npc_work_doctor;After you stood me up the previous time? One of the first lessons you should learn is that my time is nigh infinitely more valuable than your own...@@" <<He npc_work_doctor>> pauses as you make desperate bambi eyes at <<him npc_work_doctor>>. "@@.npc_work_doctor;... and yet, you would be of use... very well. We shall try one once more — meet me in the lobby this Sunday at nine, and this time, I expect you to be there promptly!@@"
<</if>>
<br><br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
<<elseif $currentTasks.hasOwnProperty('event_doctor_training') && !$currentTasks.event_doctor_training.finished>>
<<=setup.getNpcName("npc_work_doctor","formal")>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;Silly girl! I already agreed to give you a class this weekend, show some patience, everything you need to know will be revealed then.@@"<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
<<elseif $npc_work_doctor.flags.nurse_available>>
<<=setup.getNpcName("npc_work_doctor","formal")>> rolls <<his npc_work_doctor>> eyes. "@@.npc_work_doctor;Silly girl! I already gave you a lesson. If you want to learn more, you can do it via on the job training by coming back to assist me.@@"<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
<<elseif !$player.virgin.blowjob>>
<<=setup.getNpcName("npc_work_doctor","formal")>> snorts in annoyance. "@@.npc_work_doctor;Help me? No, I have reviewed your file and an assistant of mine, well... I am not going to take just anyone! At a minimum, oral skills would be required, come back when you have some actual real-world experience. Until then you would be more a burden than a boon in the lab.@@"<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> looks at you in surprise.<br>
<br>
"@@.npc_work_doctor;And what makes you think a silly girl like yourself is worth my valuable time?@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
[<<moveTo "event_work_doctor_visit_5" "Show <<him npc_work_doctor>> that you're smart!" 60 "<<set $scene.smart=true>>">>]<br>
[<<moveTo "event_work_doctor_visit_5" "Play dumb and just beg <<him npc_work_doctor>> to, like, please teach you?" 60 "<<set $scene.smart=false>>">>]<br>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
[<<moveTo "event_work_doctor_visit_5" "Try to show <<him npc_work_doctor>> you're smart!" 60 "<<set $scene.smart=true>>">>]<br>
[<<moveTo "event_work_doctor_visit_5" "Play dumb and just beg <<him npc_work_doctor>> to, like, please teach you?" 60 "<<set $scene.smart=false>>">>]<br>
<<else>>
[@@.link_locked;You aren't smart enough to try and impress <<him npc_work_doctor>>.@@]<br>
[<<moveTo "event_work_doctor_visit_5" "Beg <<him npc_work_doctor>> to, like, teach you?" 60 "<<set $scene.smart=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo "room_elevator_home" "Apologise for bothering <<him npc_work_doctor>> and leave." 300>>]
<</if>>
<<case 'change'>>
Under <<his npc_work_doctor>> leering gaze, you get changed into the latex nurse's outfit, standing obediently as <<he npc_work_doctor>> "helps" stuff the latex condom deep into your rear and mouth; the familiar numbing tingle spreading down your throat before <<he npc_work_doctor>> seals you up with the hole-filling "safety mask" and "security harness." <br>
<br>
<<if setup.getChastityLevel() == 5>>
Noting your <<=setup.getItemTypeName('cage')>>, <<he npc_work_doctor>> smiles.<br>
<br>
"@@.npc_work_doctor;Perfect, you are regulation secured, that means I can bill this as you being an "official" assistant, entitling you to a small payment. I guess you're lacking for pockets so I will just put it over here with your things.@@"
<<else>>
"@@.npc_work_doctor;Lovely, work is so much more pleasant with company. I really wish they would approve my funding request for a full-time assistant... though it would be a challenge to find one so eagerly helpful as yourself. If only <<=setup.getNpcName("npc_manager","other")>> was less possessive of her toys...@@"
<</if>>
<br><br>
[<<moveTo "event_work_doctor_help_root" "Silently fall in behind <<him npc_work_doctor>>." 60>>]
<<default>>
ERROR: unexpected scene.reason <<=$scene.reason>>
<</switch>>
</div>/*#
#desc: provide oral relief for npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<decrementEmotion 'anger' 'npc_work_doctor' 2>>
<<applyExperience 'penis' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_work_doctor.penis_size_boosted 'normal' $SEEN_STRANGER>>
<<changeMakeupMessed 25>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_work_doctor'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "obedient">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<elseif $fetish.get_raped>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<<applyExperience 'penis' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_work_doctor.penis_size_boosted 'very' $SEEN_STRANGER>>
<<changeMakeupMessed 75>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_work_doctor'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "forced">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<else>>
<<decrementEmotion 'affection' 'npc_work_doctor' 3>>
<<incrementEmotion 'anger' 'npc_work_doctor' 3>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
<<if setup.getTotalValue("oral") > 10>>
You know well enough what <<he npc_work_doctor>> wants and so you open wide and give it to <<him npc_work_doctor>>.
<<if setup.getTotalValue("oral") > 15>>
Showing off your skills you deep-throat <<him npc_work_doctor>> hands-free and then commence to bob and suck, humming in pleasure the whole time as your tongue is pressed against the floor of your mouth and your throat bulges around <<his npc_work_doctor>> thick <<getWordPenis "npc_work_doctor">>.
<<else>>
First you take <<him npc_work_doctor>> in hand and then you swallow <<him npc_work_doctor>> clear to the base, shuddering slightly at the way <<his npc_work_doctor>> thick cock bulges in your throat.
<</if>>
<br><br>
With your skills it does not take long before <<he npc_work_doctor>> pulses and shudders, gasping and pulling your head into <<his npc_work_doctor>> crotch as <<he npc_work_doctor>> cums right into your stomach. Eyes shut in concentration you force yourself to swallow, coaxing out every drop <<he npc_work_doctor>> has to offer before <<his npc_work_doctor>> <<getWordPenis "npc_work_doctor">> softens and shrinks.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You struggle with <<his npc_work_doctor>> massive <<getWordPenis "npc_work_doctor">> opting to suck on the tip and run your tongue along each big pulsing vein rather than even attempt to take it down your throat.
<<else>>
<<His npc_work_doctor>> <<getWordPenis "npc_work_doctor">> is huge and well beyond your skills, but you do your best, running your tongue over <<his npc_work_doctor>> tip while you use both hands to stroke up and down <<his npc_work_doctor>> shaft.
<</if>>
Fortunately <<his npc_work_doctor>> endurance seems to be in opposition to <<his npc_work_doctor>> size as, even with your modest skills, it is not long before <<he npc_work_doctor>> starts to pulse, pulling you as far down as you will go as <<he npc_work_doctor>> spurts thick, bitter cum down your throat.
<</if>>
<br><br>
Pulling away, <<his npc_work_doctor>> <<getWordPenis "npc_work_doctor">> already appears less than half the size it did when it was inside of you and it seems to still be shrinking as <<he npc_work_doctor>> hurriedly turns away.<br>
<br>
"@@.npc_work_doctor;Good, uh, thank you. You can, uh... you can go now.@@"<br>
<br>
The shift in <<his npc_work_doctor>> demeanour is a bit odd, but you shrug, rise to your feet and see yourself out of <<his npc_work_doctor>> office — another step taken towards building <<his npc_work_doctor>> trust.
<<elseif $fetish.get_raped>>
You turn to go, but <<he npc_work_doctor>> lunges towards you, faster and stronger than you thought possible as <<he npc_work_doctor>> grabs you by the hair and drags your face down to cock level.<br>
<br>
"@@.npc_work_doctor;Leaving so soon? No, that will not do at all. Not when you already have me so hot and bothered.@@"<br>
<br>
"@@.pc;Mmmfff!@@" Is all you can reply as <<he npc_work_doctor>> shoves <<his npc_work_doctor>> mammoth member into your mouth.<br>
<br>
You try to push away, but in <<his npc_work_doctor>> drug-fuelled frenzy <<he npc_work_doctor>> seems inhumanly strong, <<his npc_work_doctor>> grip on your hair unbreakable as <<he npc_work_doctor>> roughly plows your mouth and throat.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You may be more than capable of taking <<him npc_work_doctor>> conventionally, but <<hes npc_work_doctor>> so rough as to put even your legendary skills to the test.
<<else>>
A cock you could have handled on your own becomes throat-bruising when introduced at the pace <<he npc_work_doctor>> is running it.
<</if>>
<<else>>
Tears flow down your cheeks as <<he npc_work_doctor>> mercilessly fucks your face
<<if setup.getTotalValue("oral") > 5>>
<<he npc_work_doctor>> is far too big for you to handle, but <<he npc_work_doctor>> doesn't seem to care in the slightest, forcing <<his npc_work_doctor>> way into your throat hard and deep.
<<else>>
each pounding thrust that attempts to force its way down your too-tight throat has you ready to retch, but <<he npc_work_doctor>> does not seem to care in the slightest.
<</if>>
<</if>>
Your only saving grace is <<his npc_work_doctor>> thankfully short trigger, a flood of cum spraying out your nose and dribbling down your chin as <<he npc_work_doctor>> climaxes with a grunt.<br>
<br>
Releasing <<his npc_work_doctor>> grip on your hair, <<he npc_work_doctor>> lets you slide to the ground as <<he npc_work_doctor>> lords over you. "@@.npc_work_doctor;Pathetic, now get out of here, and think, next time, before you make an offer that you intend to follow through on it.@@"
<<else>>
You turn to go. Caught off guard <<he npc_work_doctor>> stumbles slightly, almost falling thanks to <<his npc_work_doctor>> pants already being down around <<his npc_work_doctor>> ankles as <<he npc_work_doctor>> calls out a parting "@@.npc_work_doctor;You bitch!@@" As you walk out the door.<br>
<br>
<<printThought "Hmm, <<hes npc_work_doctor>> probably going to hold that against me...">>
<</if>>
<br><br>
[<<moveTo "room_elevator_home" "Lobby." 300>>]
</div><<if !$scene.equipSleep>>
<<set $scene.equipSleep = true>>
<<set $scene.sleepRemoveCage = false>>
<<if setup.checkItemTypeWorn("cage") && setup.getItemObjFromType("cage").hasOwnProperty("chastityLvl")>>
<<if $player.flat.sleep.vagMilk || $scene.vagMilk>>
<<set $scene.sleepRemoveCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<</if>>
<<if $player.flat.sleep.penisMilk || $scene.penisMilk>>
<<set $scene.sleepRemoveCage = setup.checkItemTypeWorn("cage")>>
<</if>>
<<if $scene.sleepRemoveCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<if ($player.flat.sleep.vagMilk || $scene.vagMilk) && ($player.flat.sleep.penisMilk || $scene.penisMilk)>>
<<addItem "vag_and_penis_milker">>
<<wearItem "vag_and_penis_milker" true>>
<<elseif $player.flat.sleep.penisMilk || $scene.penisMilk>>
<<addItem "penis_milker">>
<<wearItem "penis_milker" true>>
<<elseif $player.flat.sleep.vagMilk || $scene.vagMilk>>
<<addItem "vag_milker">>
<<wearItem "vag_milker" true>>
<</if>>
<<if $player.flat.sleep.breastMilk || $scene.breastMilk>>
<<addItem "breast_milker">>
<<wearItem "breast_milker" true>>
<</if>>
<</if>><<set $scene.equipSleep = false>>
<<if setup.isItemEquipped('vag_and_penis_milker')>>
<<removeItem "vag_and_penis_milker" true>>
<<deleteItem "vag_and_penis_milker">>
<<elseif setup.isItemEquipped('penis_milker')>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<elseif setup.isItemEquipped('vag_milker')>>
<<removeItem "vag_milker" true>>
<<deleteItem "vag_milker">>
<</if>>
<<if setup.isItemEquipped('breast_milker')>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<</if>>
<<if $scene.sleepRemoveCage>>
<<include "replaceCage_extendSissyomatic">>
<<set $scene.sleepRemoveCage = false>>
<</if>>/*#
#desc: get prepared for overnight milking
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<setTmpEffect 'drug_hucow'>>
<<setTmpEffect 'drug_ditzy'>>
<<setTmpEffect 'drug_slave'>>
<<setTmpEffect 'drug_breast'>>
<<set $player.body_ref.milkProduction = 3>>
<<set $player.body_ref.cumProduction = 2>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $SEEN_STRANGER>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $SEEN_STRANGER>>
<<applyExperience 'bondage' 18 'very' $SEEN_STRANGER>>
<<set $scene.vagMilk = $player.body_ref.vagina>>
<<set $scene.penisMilk = $fetish.penis_milking && $player.body_ref.penis>>
<<set $scene.breastMilk = $fetish.milking>>
<<include "equipSleepMilkers">>
<<addItem 'cow_catsuit'>>
<<wearItem 'cow_catsuit' true>>
<<set $scene.rand = random(1,10)>>
<<set $scene.panties = false>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/laboratory.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> enthusiasm is scary as <<he npc_work_doctor>> waits for you to get undressed and change into a cow-patterned catsuit before <<he npc_work_doctor>> starts strapping you into your own private milking chamber<<if $scene.cage != "">> before removing your chastity device<</if>>.<br>
<br>
<<if $npc_work_doctor.flags.hucowProcedure>>
"@@.npc_work_doctor;Ah... this will be so good to finish things, <<=setup.getNpcName("npc_manager","other")>> came in right when things were getting good but tonight... oh, tonight you're going to get it all, the perfect hucow experience...@@"<br>
<br>
A large dildo fills your throat, preventing a response, joined by similarly girthy number in your rear<<if $player.body_ref.vagina>> and <<getWordVagina>><</if>>. You gasp around the large gag as large cups surround your breasts and attach to your nipples and you feel your bosom swell in anticipation of production...<br>
<br>
"@@.npc_work_doctor;Good cow... you are going to make so much milk...@@"<<if $player.body_ref.penis>> <<He npc_work_doctor>> grins as <<he npc_work_doctor>> adds another suction cylinder over your <<getWordMyPenis>>. "@@.npc_work_doctor;Cream isn't my preference, but there's always a use for it somewhere!@@"<</if>> <<He npc_work_doctor>> chuckles as <<he npc_work_doctor>> makes a few final adjustments and then pulls a larger-than-it-functionally-needs-to-be lever with a mad-science gleam in <<his npc_work_doctor>> eye.
<<elseif !setup.checkItemOwned("panties_hucow") && (!State.hasPlayed("event_panties_hucow_1") || $scene.rand < 2)>>
<<set $scene.panties = true>>
<<=setup.getNpcName("npc_hucow","full")>> is already hooked up to a milking machine, her expression one of mindless joy as she is pumped and ravaged by the machine from every direction. <<=setup.getNpcName("npc_work_doctor","formal")>> pauses to make some adjustments that prompt a gag-muffled moan from the helpless hucow before <<he npc_work_doctor>> turns back to you and guides you up onto your station.
<br><br><br><br>
"@@.npc_work_doctor;And now for some added pheromones to maximise your production...@@" <<he npc_work_doctor>> states as <<he npc_work_doctor>> opens a bin next to <<=setup.getNpcName("npc_hucow","full")>> that you realise must contain her clothing. <<=setup.getNpcName("npc_work_doctor","formal")>> digs for a moment before coming up with a pair of cow-print panties, reaching between <<=ps(setup.getNpcName("npc_hucow","full"))>> legs to sop up some of her juices before dropping the wet, used underwear into a breather bag that <<he npc_work_doctor>> hooks up to your mask.<br>
<br>
You moan as the powerful scent of <<=ps(setup.getNpcName("npc_hucow","full"))>> sex fills your nostrils, so strong you can taste it, the added stimulation accentuating the rest as the machine begins its work of fucking and milking you.
<<else>>
"@@.npc_work_doctor;I bet you've missed this, haven't you?@@" <<He npc_work_doctor>> states with a chuckle as <<he npc_work_doctor>> hooks you up to the various stimulators, suction devices and drug dispensers that make up the system.
<</if>>
<br><br>
You feel a rush of drugs as the system comes online, your body becoming super-charged and sensitive as the pumps and plugs begin to suck and thrust...<br>
<br>
[<<moveTo "event_work_doctor_hucow_night_2" "Moo?" 300>>]
</div>/*#
#desc: get milked overnight
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_work_doctor.flags.hucowProcedure == 1>>
<<addNpcTheme 'npc_psychiatrist' 'work_doctor' 'theme_psychiatrist_doctor_16'
8
'event_psychiatrist_session_hucow_repeat_1'
false
>>
<<set $scene.event_id = ''>>
<<else>>
<<set _sceneOptions = ['', '', '', '']>>
<<if $npc_psychiatrist.flags.bonus_vr.milking >= 2>>
<<set _sceneOptions.push('nerina')>>
<</if>>
<<set $scene.event_id = _sceneOptions.random()>>
<</if>>
<<set $npc_work_doctor.flags.hucowProcedure += 1>>
<<applyExperience 'bimbofication' 20 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 20 'normal' $SEEN_STRANGER>>
<<changeHorny 100>>
<<if $events.hasOwnProperty('prostitution_final_invite')>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 18, 0)>>
<<set $events.prostitution_final_invite.trigger.date = _nextDate>>
<</if>>
<<set $scene.startingBreastSize = $player.body.breastsize[1]>>
<<if $scene.startingBreastSize < 10>>
<<set $player.body.breastsize[1] = 10>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking2" "mask">>
<div id="invframe" class="scrolltext">
Pumped and fucked and sucked you feel your breasts swell and your muscles strain, your breasts producing at an almost unimaginable rate as you ride a wave of infinite arousal, each orgasm making you want more, and more, and more...<br>
<br>
You lose track of everything as your thoughts become drenched in sex-soaked obedience.<br>
<br>
<<printThought "I was meant to be a cow. Producing milk makes me happy. I want to be an obedient hucow...">><br>
<br>
Your entire body is an erogenous organ as the machines work, but your attention lingers on your breasts, your massive, perfect breasts. All you are is a support system for those twin perfect mammaries, a pair of legs to carry them around, arms to grope them between milkings, mouth and <<if $player.body_ref.vagina>>cunt and <</if>>rear to be fucked so that you can produce more milk...<br>
<br>
You smile around your gag, more drugs fogging your thoughts further and sending you off into a field of perfect bovine bliss...<br>
<br>
<<include "calcHucowMorning">>
<<if $scene.event_id != ''>>
<<set _timeSleep = _timeToMorning/(1.5 + random(1,10)/2)>>
[<<moveTo "event_work_doctor_hucow_special" "You drift off into something resembling sleep..." _timeSleep>>]
<<elseif $scene.panties>>
[<<moveTo "event_panties_hucow_1" "You drift off into something resembling sleep..." _timeToMorning "<<set $player.timebased.milking.milk_supply = 0>><<playerOrgasm>>">>]
<<else>>
[<<moveTo "event_work_doctor_hucow_night_3" "You drift off into something resembling sleep..." _timeToMorning "<<set $player.timebased.milking.milk_supply = 0>><<playerOrgasm>>">>]
<</if>>
</div><<if setup.isWorkDay($now) && ($now.getUTCHours() > $player.clock["workweek"].h || $now.getUTCHours() == $player.clock["workweek"].h && $now.getUTCHours() == $player.clock["workweek"].m) || !setup.isWorkDay($now) && ($now.getUTCHours() > $player.clock["weekend"].h || $now.getUTCHours() == $player.clock["weekend"].h && $now.getUTCHours() == $player.clock["weekend"].m)>>
<<if setup.isWorkDay(setup.setNextDate($now, 1, 1, 0))>>
<<set _morning = setup.setNextDate($now, 1, $player.clock["workweek"].h, $player.clock["workweek"].m)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, $player.clock["weekend"].h, $player.clock["weekend"].m)>>
<</if>>
<<else>>
<<if setup.isWorkDay($now)>>
<<set _morning = setup.setNextDate($now, 0, $player.clock["workweek"].h, $player.clock["workweek"].m)>>
<<else>>
<<set _morning = setup.setNextDate($now, 0, $player.clock["weekend"].h, $player.clock["weekend"].m)>>
<</if>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>/*#
#desc: wake up after hucow night
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -60>>
<<applyFatigue -200>>
<<setTmpEffect 'drug_hucow'>>
<<setTmpEffect 'drug_ditzy'>>
<<setTmpEffect 'drug_slave'>>
<<setTmpEffect 'drug_breast'>>
<<removeItem 'cow_catsuit' true>>
<<deleteItem 'cow_catsuit'>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<<include "removeGenitalMilkers">>
<<set $scene.quickSleep = false>>
<<set $scene.forceSleep = true>>
<<set $scene.tuckin = false>>
<<set $scene.sleepRemoveCage = false>>
<</if>>
<<set $player.location to "Bedroom.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
You start rising to consciousness, the drugs are still heavy in your system but you realise that, while you started the night being milked, you seem to have returned to your flat, presumably so that <<=setup.getNpcName("npc_manager","formal")>> does not discover what <<=setup.getNpcName("npc_work_doctor","formal")>> and you were up to...<br>
<br>
[<<moveTo "room_wake_up" "Wake up properly." 60 "<<set $scene.dream = {}>>">>]
</div>/*#
#desc: random events while milked overnight
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_work_doctor.flags.hucowEvents[$scene.event_id] = true>>
<<switch $scene.event_id>>
<<case "nerina">>
<<applyStress -10>>
<</switch>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking2" "mask">>
<div id="invframe" class="scrolltext">
<<switch $scene.event_id>>
<<case "nerina">>
Your sleep is interrupted by a cheery whistling sound and you blink, turning your head as far as you can... to see a surprisingly familiar figure walking towards you.<br>
<br>
<<printThought "That looks like <<=setup.getNpcName('computer', 'custom', 'NER-1NA')>>... what?">><br>
<br>
As she gets closer the cheery figure you recall from the simulation comes into focus, her motions slightly stiff, looking even more robotic in the real world than she had in the virtual one.<br>
<br>
Mind slowed by the Hu-cow concoction you slowly puzzle over which came first, the simulation... or the android that is now checking <<=ps(setup.getNpcName("npc_hucow","full"))>> readings, adjusting her stimulation up slightly before leaning over to, almost tenderly, wipe away some of your fellow hu-cow's sweat.<br>
<br>
"@@.computer;Good girl! This new formula has you very productive, yes it does! And you even recruited a friend!@@"<br>
<br>
<<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> looks towards you with an unblinking smile "@@.computer;Hello, Unit <<=$player.last_name>>! The company thanks you for your generous contribution — let me just check your readings and tuck you in for the rest of your productive night!@@"<br>
<br>
As she did with your friend, <<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> adjusts your machine slightly — stimulation that, while intense, had begun to grow monotonous taking on a new edge of excitement that has you moaning... followed by your vision blurring as you inhale a fresh whiff of gas.<br>
<br>
"@@.computer;Night, night, girls!@@" <<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> says, blowing a kiss as you sink back into content slumber...
<<default>>
ERROR: unexpected scene.event_id <<=$scene.event_id>>
<</switch>>
<br><br>
<<include "calcHucowMorning">>
[<<moveTo "event_work_doctor_hucow_night_3" "Go back to sleep." _timeToMorning "<<set $player.timebased.milking.milk_supply = 0>><<playerOrgasm>>">>]
</div>/*#
#desc: get prepared for overnight milking by npc_hucow
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<applyExperience 'bondage' 18 'very' $SEEN_STRANGER>>
<<set $scene.vagMilk = $player.body_ref.vagina>>
<<set $scene.penisMilk = $fetish.penis_milking && $player.body_ref.penis>>
<<set $scene.breastMilk = $fetish.milking>>
<<include "equipSleepMilkers">>
<<addItem 'cow_catsuit'>>
<<wearItem 'cow_catsuit' true>>
<<addItem "breast_milker">>
<<wearItem "breast_milker" true>>
<<applyExperience 'oral' 18 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' 18 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/laboratory.png" setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_hucow","full")>> leads you to the familiar milking stations, helping you to undress and change into a cow-patterned catsuit, securing you into a private milking chamber<<if $scene.cage != "">> before removing your chastity device<</if>> with a smile and a gentle touch<<if $player.body_ref.penis>> and finishing up with another suction cylinder over your <<getWordMyPenis>><</if>>.<br>
<br>
<<if $scene.first>>
"@@.npc_hucow;I can see you're as eager to dive in as I usually am, let me just check your program for a real optimal experience!@@"<br>
<br>
She steps away as a massive dildo fills your throat, preventing a response, joined by similarly girthy number in your rear<<if $player.body_ref.vagina>> and <<getWordVagina>><</if>>. You gasp around the large gag as large cups surround your breasts and attach to your nipples and you feel your bosom swell in anticipation of production...<br>
<br>
"@@.npc_hucow;Weird, it looks like <<=setup.getNpcName("npc_work_doctor","formal")>> had you running with the safety protocols enabled! That's not really like <<him npc_work_doctor>>, and definitely not optimal for production. Let me just turn those off and add a few extra tricks I figured out. I think one of the real secrets is to really embrace being nothing but a hucow, which means to let those pesky thoughts float away and just enjoy. I'm going to make sure you have a REALLY enjoyable time!@@"
<<else>>
<<=setup.getNpcName("npc_hucow","full")>> bounces over to the controls with a smile. "@@.npc_hucow;Have a good night! I made sure to give you the maximum experience, so you can look forward to letting your mind blank and embrace being a good, productive company cow! Heh, cow-worker!@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_hucow","full")>> giggles as she starts strapping herself in next to you. You feel a rush of drugs as the system comes online, your body becoming super-charged and sensitive as the pumps and plugs begin to suck and thrust...<br>
<br>
[<<moveTo "event_work_doctor_hucow_night_2" "Moo?" 300 "<<setTmpEffect 'drug_hucow'>><<setTmpEffect 'drug_ditzy'>><<setTmpEffect 'drug_slave'>><<setTmpEffect 'drug_breast'>><<set $player.body_ref.milkProduction = 3>><<set $player.body_ref.cumProduction = 2>><<reduceExperience 'smart' 1>>">>]
</div>/*#
#desc: caught modifying aphrodisiac
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush('tmp')>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength = 5>>
<<incrementEmotion 'anger' 'npc_work_doctor' 10>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
You're still fiddling with things when you feel a prick on your neck, barely having time to turn before the paralytic takes hold and you are left helplessly looking up at <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
"@@.npc_work_doctor;You were messing with my formula! How dare you interfere with my work! Months of effort ruined by your ditzy bimbo interference!@@"<br>
<br>
You're frozen in place, unable to even blink as you stare up at the increasingly incensed doctor. <<He npc_work_doctor>> looks at the computer one final time with a snort. "@@.npc_work_doctor;I shall have to start this all over later... but you... you like messing around with drugs? Well, we'll see about that...@@"<br>
<br>
[<<moveTo "event_work_doctor_aphrodisiac_caught_2" '<<=setup.getNpcName("npc_work_doctor","formal")>> picks you up and carries you back to <<his npc_work_doctor>> lab.' 300>>]
</div>/*#
#desc: drugged for being caught
#status: RELEASED 0.8.9.0
#ignore_spell: tm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "nose_hook">>
<<wearItem "nose_hook" true>>
<<addItem "ring_gag">>
<<wearItem "ring_gag" true>>
<<applyStress -100>>
<<reduceExperience 'smart' 3 1>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
Back in <<his npc_work_doctor>> lab <<=setup.getNpcName("npc_work_doctor","formal")>> tosses you onto a medical bed that has you bound in a jackknife position: face down, ass up, legs spread, a ring gag holding your lips wide, while a nose hook finishes things off to wrench your neck and have you staring forward despite your otherwise angled down position.<br>
<br>
"@@.npc_work_doctor;Piggy little slut,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> growls as <<he npc_work_doctor>> hooks a dildo up to a large tank labeled DAZE(TM). "@@.npc_work_doctor;You like messing around with drugs, do you? Well I'll show you!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> shouts as he shoves the dildo into your mouth and starts the drugs flowing.<br>
<br>
The concoction is thicker than <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> normal concoctions and you feel a wave of relaxation washing over you, despite your strenuous position. Of course, <<=setup.getNpcName("npc_work_doctor","formal")>> can't resist explaining things as <<he npc_work_doctor>> shoots <<him npc_work_doctor>>self up with one of <<his npc_work_doctor>> other drugs and moves around behind to take advantage of your defenseless position.<br>
<br>
"@@.npc_work_doctor;Not one of my brews this time,@@" <<he npc_work_doctor>> states with a first thrust, <<he npc_work_doctor>> must have self-administered a larger than normal dose, because <<his npc_work_doctor>> feels massive as it splits your ass. "@@.npc_work_doctor;Made by one of our competitors, in fact, the industrial standard for keeping the imbiber healthy, calm, docile, serene and free of useless energies. A blunt solution compared to my more refined methodologies... but sometimes a hammer is the best tool, and you are definitely in need of being pounded back down...@@"<br>
<br>
Whatever is in this new drug, it acts fast, thoughts becoming harder to hold onto with every passing moment as <<=setup.getNpcName("npc_work_doctor","formal")>> continues to take <<his npc_work_doctor>> frustrations out by fucking your ass.<br>
<br>
[<<moveTo "event_work_doctor_aphrodisiac_caught_3" "What have I, like... done?" 3600>>]
</div>/*#
#desc: fucked and drugged
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<reduceExperience 'smart' 20 1>>
<<setTmpEffect 'drug_ditzy'>>
<<setTmpEffect 'drug_slave'>>
<<setTmpEffect 'drug_breast'>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<if !setup.hasTmpEffect('sissypill_mk2_od')>>
<<setTmpEffect 'sissypill_mk2_od'>>
<</if>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'drug_ditzy_plus'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> fucks you like a man possessed, pounding your ass<<if $player.body_ref.vagina>>, cunt,<</if>> and throat with equal enthusiasm, pumping you full of drugs in whatever orifice <<he npc_work_doctor>> is not taking <<his npc_work_doctor>> frustrations out on.<br>
<br>
Your thoughts become increasingly slow and muddied, barely aware, and yet endlessly aroused by <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> frenzied treatment.<br>
<br>
Aided by drugs of <<his npc_work_doctor>> own, <<he npc_work_doctor>> fucks you long into the night, eventually going back on <<his npc_work_doctor>> word to dose you up with some of <<his npc_work_doctor>> concoctions, their effects leaving you even more dazed, depraved, and disjointed.<br>
<br>
<<printThought 'Is this going to go on forever?'>> <<printThoughtGlitch 'I hope so...'>>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_work_doctor_aphrodisiac_caught_4" "Continue." _timeToMorning>>]
</div>/*#
#desc: wake up after being drugged all night
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.growBreasts = $player.body.breastsize[1] < 10>>
<<if $scene.growBreasts>>
<<set $player.body.breastsize[1] = 10>>
<</if>>
<<set $scene.hair = $player.hair.style != 'long_open' || $player.hair.color != 'blonde'>>
<<if $scene.hair>>
<<changeHair 'long_open' 'blonde'>>
<</if>>
<<if !$player.sec_style.body.hair>>
<<set $player.sec_style.body.hair = "forced">>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> is so obsessed <<he npc_work_doctor>> continues humping you even after <<his npc_work_doctor>> drugs wear off and <<his npc_work_doctor>> shrinks, eventually passing out on top of your body, still inside of you while the mechanical dildos and drugs pump away at your brainless, yet endlessly aroused body.<br>
<br>
<<if $scene.growBreasts && $scene.hair>>
Drug-swelled massive breasts and golden hair hang down from your bound position by the time
<<elseif $scene.growBreasts>>
Drug-swelled massive hang down from your bound position by the time
<<elseif $scene.hair>>
Your massive, drug-sensitised breasts sway and heave and golden hair cascades down from your head by the time
<<else>>
Your already massive breasts feel even more sensitive from the night's drugs but, eventually,
<</if>>
a blaring alarm brings the world back into focus.<br>
<br>
"@@.npc_work_doctor;What are you still doing here?@@" <<=setup.getNpcName("npc_work_doctor","formal")>> grunts, the night having left <<him npc_work_doctor>>, too, in a bit of a daze as <<he npc_work_doctor>> staggers away and presses a button to release your restraints.<br>
<br>
"@@.npc_work_doctor;Get to work you useless <<if $fetish.sissy>>sissy<<else>>slut<</if>>, I have... things to do...@@"<br>
<br>
You slide off the bondage contraption, the drugs still pumping through your body with every beat of your heart having you feeling chipper and energetic despite the night of abuse.<br>
<br>
<<printThought "Hehe, I don't remember what I did to upset <<=setup.getNpcName('npc_work_doctor','formal')>> but, like... I feel sooo good right now!">><br>
<br>
A spring in your step and a smile on your empty-headed face, you locate your clothes and head for the exit as you note that it's nearly time for you to start work!<br>
<br>
[<<moveTo "event_work_doctor_aphrodisiac_caught_5" "Get dressed and get to the office." 300 '<<useClothSetPop "tmp">><<removeItem "nose_hook" true>><<deleteItem "nose_hook">><<removeItem "ring_gag" true>><<deleteItem "ring_gag">>'>>]
</div>/*#
#desc: back in office, manager meets
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your mind filled with pink cotton candy and <<if $fetish.sissy>>sissified <</if>>arousal you make your way to your desk and sit down, staring with puzzlement at your keyboard. You're pretty certain you're supposed to do something with it... but there's so many squiggly things... you think they're called letters? It all seems a bit too complicated for your bimbo brain... fortunately your headache-instigating attempt at thought is interrupted by <<=setup.getNpcName('npc_manager', 'formal')>> walking out of the inner office.<br>
<br>
[<<moveTo "event_work_doctor_aphrodisiac_caught_6" "Greet her with a smile." 180 "<<deleteTask 'manager_morning_inspection_task'>>">>]
</div>/*#
#desc: back in office, manager assesses your bimboness
#status: RELEASED 0.8.9.0
#ignore_spell: meatsicle,tm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
With her typical cunning insight and attention to detail <<=setup.getNpcName('npc_manager', 'formal')>> immediately notices the changes wrought by your drugged night. Strangely, however, she reacts to your blissful bimboness with a frown. "@@.npc_manager;What on earth have you done?@@" She asks in horror.<br>
<br>
You giggle and explain that, actually, it was <<=setup.getNpcName('npc_work_doctor','formal')>> who helped you out with some yummy drugs, and also <<his npc_work_doctor>> cock! And also drugs, and <<his npc_work_doctor>> doctor! Your mind spins, struggling to contain the thoughts of your two loves at the same time. You lick your lips, wishing you had a nice big meatsicle to slurp on right now, and some of that tasty, calming DAZE(tm)!<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> frown only deepens as she walks over to your desk and lifts your phone to make a call. "@@.npc_manager_dom;<<=setup.getNpcName('npc_work_doctor','formal')>>? Come to my office. Now.@@"<br>
<br>
[<<moveTo "event_work_doctor_aphrodisiac_caught_7" 'Maybe <<=setup.getNpcName("npc_manager","formal")>> wants to thank <<=setup.getNpcName("npc_work_doctor","formal")>> in person?' 300>>]
</div>/*#
#desc: back in office, manager confronts work_doctor
#status: RELEASED 0.8.9.0
#ignore_spell: tm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_work_doctor","npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_work_doctor','formal')>> arrives and a near shouting match almost immediately ensues. It's all a bit high-stress for you to follow as you wonder why the two of them can't just enjoy some DAZE(tm)... or maybe fuck you? Yeah, fucking you sounds, like, way better than whatever they're upset about, you think as you just sit on your chair and listen.<br>
<br>
"@@.npc_manager;What the hell did you do to my Secretary?@@" <<=setup.getNpcName('npc_manager', 'formal')>> demands, only for <<=setup.getNpcName('npc_work_doctor', 'formal')>> to display an uncharacteristic level of backbone with <<his npc_work_doctor>> response.<br>
<br>
"@@.npc_work_doctor;I was letting her assist in my lab when she messed around with some of my drugs. It can hardly be MY fault if she is too stupid to follow instructions or proper lab procedure!@@"<br>
<br>
"@@.npc_manager;Is that so? Tell me, if I pulled the surveillance footage... would it back up that story? Or would it show you experimenting haphazardly on someone else's property without permission?@@"<br>
<br>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> is momentarily taken aback, but <<=setup.getNpcName('npc_work_doctor', 'formal')>> must have really ate <<his npc_work_doctor>> wheaties after spending the night drugged and fucking you as, rather than backing down, <<he npc_work_doctor>> ripostes with. "@@.npc_work_doctor;Or maybe it would show her sabotaging company property? I wouldn't want to make accusations but... an employee is always the responsibility of their manager... so if you wanted to do a full inquiry... unless you were to admit that she really did just make a ditzy mistake and take things as they are... besides, things should wear off, eventually. Unless you decide you prefer your assistant like this, I am always available to help chemically perfect one of our employees...@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> glowers, and you half expect her to fling <<=setup.getNpcName('npc_work_doctor', 'formal')>> bodily out the office... without opening the door first. "@@.npc_manager;Get out.@@" She growls, <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> courage either finally faltering, or the wisdom of discretion kicking in as <<he npc_work_doctor>> quickly scampers away.<br>
<br>
[<<moveTo "event_work_doctor_aphrodisiac_caught_8" "Good thing that's over. It's so stressful when <<if $fetish.daddy>>mommy and <<daddy npc_work_doctor>><<else>>managers<</if>> fight!" 180>>]
</div>/*#
#desc: back in office, manager confronts work_doctor
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
With it just the two of you, <<=setup.getNpcName('npc_manager', 'formal')>> takes a seat at the edge of your desk, gently brushing your face and smiling sorrowfully down at you.<br>
<br>
You aren't really sure why she could be upset, you're feeling quite happy... well, happy and horny, but that's almost the same thing! Still, your duty is not to understand, but to serve and obey, so you nuzzle against her hand and smile, hoping your own cheery move might assuage whatever important-person concerns are bothering her.<br>
<br>
"@@.npc_manager;You poor thing... let us hope that whatever <<=setup.getNpcName('npc_work_doctor', 'formal')>> did to you wears off soon... until then, well, do what you can, focusing on work might help sharpen your thoughts...@@"<br>
<br>
Thinking doesn't sound very good... but obeying <<=setup.getNpcName('npc_manager', 'title')>> sounds great, so you nod eagerly and pretend to type.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head with an amused smile as she returns to her inner office.<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Like... start working?" 0>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Like... start working?" 0>>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Like... start working?" 0>>]
<</switch>>
</div>/*#
#desc: change into nurse outfit for npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_work_doctor.stage = 3>>
<<addNpcTheme 'npc_psychiatrist' 'work_doctor' 'theme_psychiatrist_doctor_5'
1
'event_psychiatrist_session_nurse'
false
>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'nurse_work_outfit_unleashed'>>
<<wearItemSet 'nurse_work_outfit_unleashed'>>
<<applyExperience 'oral' 12 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Backroom.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_change.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> leads you to the corner of <<his npc_work_doctor>> office to open a door into what proves to be a small tile-lined shower stall. Sprayers ring the room including a wash hose as you realise that the entire room is designed such that, with the door closed, it is capable of applying omni-directional cleaning. A pair of cuffs dangle from the ceiling in silent testament to the (not) required willingness of the one being cleaned...<br>
<br>
All those details fade away as you look upon the other thing hanging from the centre of the room — the outfit that you realise you are about to be wearing.<br>
<br>
"@@.npc_work_doctor;I pulled your measurements from the company database so the size should be perfect — it's regulation for all of my nurse assistants, designed to keep them safe, sealed, and sanitary in the execution of their duties.@@"<br>
<br>
"Sealed" is right as you look upon the full body catsuit, mask, gloves and steep heels all integrated into the seamless garment, complete with a built-in nurse's cap and a two tone white and pink hospital-inspired design. <<He npc_work_doctor>> waits for you to strip <<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>and remove the plug<</if>> before <<he npc_work_doctor>> pulls it down from the hanger and opens a short zipper that runs up the middle portion of the back. <<He npc_work_doctor>> helps you balance on the slick tile as you step into each leg then fold yourself up to slither into the rest.<br>
<br>
True to <<his npc_work_doctor>> word, the outfit is definitely made for you, fitting perfectly, well... other than being VERY tight, but you have the feeling that's quite intended. Marveling at how it covers you completely like a second skin, from your head down to your pointed toes. Smoothing out any air-bubbles, <<he npc_work_doctor>> gives you a few caressing gropes before <<he npc_work_doctor>> zips you up.<br>
<br>
With the zipper closed and clear lenses over your eyes, the only gap to the outside world are two holes for your nostrils — and even they are via a pair of plugs that filter the air to give it a slight hint of latex with every breath. Of course the more "interesting" features are the two condom-like inserts built into the catsuit — one for your rear hole, the other for your mouth; the casual way <<he npc_work_doctor>> uses two fingers to stuff the rubber pockets inside of you lets you know that just because you're "sealed" doesn't mean you'll be safe from penetration.<br>
<br>
Not to leave you waiting, <<he npc_work_doctor>> presents you with another layer — what looks like a hybrid between a corset and a bathing suit that looks to cover nearly your entire torso; completely covering your zipper while also providing a smooth, body-sculpting profile from your breasts down between your legs and then up your back, some sort of advanced material allowing it to stretch for you to step into — and in so doing feel the sizable dildo built into the interior of the outfit slide into your rubber-lined hole — then close in around you as secure as any other corset once in place without actually having a seam.<br>
<br>
"@@.npc_work_doctor;Almost done@@" <<he npc_work_doctor>> states with a grin as <<he npc_work_doctor>> hands you the final piece of your outfit — a classic nurse's face-mask, rendered in latex, and with a sizable internal gag shaped very much like a penis.<br>
<br>
<<if setup.getTotalValue("oral") < 10>>
The interior dildo is not so large as to be out of your comfort zone, though you do somewhat wonder at how you'll breathe with it sealed in place.
<<else>>
The interior dildo looks far too large for you to swallow, and that doesn't even take into consideration managing to breathe once it's sealed in place!
<</if>>
Noting your look of concern, <<he npc_work_doctor>> just grins as <<he npc_work_doctor>> brings the mask towards your face. "@@.npc_work_doctor;Intimidating, isn't it? But do not be concerned, that mouth condom is coated with the same medical-grade anaesthetic we use for endoscopy's. Just focus on breathing through your nose and everything will be fine as you silently train throughout your shift. Now open wide!@@"<br>
<br>
<<He npc_work_doctor>> pinches your nose, giving you little choice in the matter, and the phallus is soon sliding down your throat with a gentle tingle. Once the front panel of the gag is pressed against your lips you bring a hand to your throat, stunned as you feel the bulge of the penis extending most of the way down.<br>
<br>
"@@.npc_work_doctor;Perfect, now you're properly, and safely sealed, filled and equipped to assist with my work.@@"<br>
<br>
<<if setup.getTotalValue("heels") >= setup.getItemObj("nurse_heels").heels.difficulty>>
Striding gracefully in the delightfully tall heels,
<<else>>
Teetering slightly in the steep heels,
<</if>>
you follow after <<him npc_work_doctor>> as <<he npc_work_doctor>> leads the way out of the shower room and through the lab. Grabbing a tablet <<he npc_work_doctor>> glances through it as if confirming <<his npc_work_doctor>> plan before leading you out of <<his npc_work_doctor>> office and up the hall.<br>
<br>
[<<moveTo "event_work_doctor_nonappointment_2_first_2" "Time to make the rounds." 60>>]
</div>/*#
#desc: first time working as nurse for npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.collar.owner == "">>
<<addItem 'medical_collar'>>
<<wearItem 'medical_collar' true>>
<</if>>
<<addItem 'medical_leash'>>
<<wearItem 'medical_leash' true>>
<</if>>
<<set $player.location to 'Secure Hospital.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_security.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_work_doctor","formal")>> to the elevator where <<he npc_work_doctor>> scans <<his npc_work_doctor>> badge and sends things down to one of the deep basement levels. Attired and gagged as you are, you have little choice but to stand patiently as the numbers swiftly tick down, your heart racing a little faster the further down you go.<br>
<br>
Stepping from the elevator, you find yourself in what looks like a medical ward, gleaming white halls, all protected behind another heavy security door at which <<=setup.getNpcName("npc_work_doctor","formal")>> is required to scan <<his npc_work_doctor>> badge and wait for a stern looking guard to buzz <<him npc_work_doctor>> in.<br>
<br>
Rising from <<his>> seat, the guard welcomes <<=setup.getNpcName("npc_work_doctor","formal")>> and then asks about you.<br>
<br>
"@@.npc_work_doctor;Ah, yes, she's an over-eager secretary who volunteered to assist me in my rounds.@@"<br>
<br>
"@@.generic_male1;Very good, <<sir npc_work_doctor>>, but you know the regulations. Miss, if you would please come over here?@@"<br>
<br>
A little nervous at the extent of the security down here, you do as the guard pulls a futuristic, and heavy looking collar that <<he>> locks around your neck with a click before unspooling a leash built into the device to hand to <<=setup.getNpcName("npc_work_doctor","formal")>>. "@@.generic_male1;Remember, she is your responsibility — always keep her on leash unless you are in a secure treatment room, and Nurse?@@" the way the guard refers to you without even bothering with a name feels deeply dehumanising "@@.generic_male1;Do behave yourself. Without that leash you will be presumed to be just another patient, and the paperwork to "fix" that is non-trivial.@@"<br>
<br>
A bit nervous, you take a step closer to <<=setup.getNpcName("npc_work_doctor","formal")>> as <<he npc_work_doctor>> smiles. "@@.npc_work_doctor;Oh, don't worry, I won't be letting you out of my sight, now come along, we have work to do.@@"<br>
<br>
The guard returns to <<his>> seat as you feel a tug on your collar that has you stepping quickly to keep up, your heels echoing loudly in the sterile halls.<br>
<br>
[<<moveTo "event_work_doctor_nonappointment_2_first_3" "Continue." 600>>]
</div>/*#
#desc: accompany npc_work_doctor for first time — hypno patient
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Exam Room.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
The wide hall lined with locked and numbered doors on either side puts you more in mind of an asylum than a traditional hospital, but you have little chance to look around as you keep pace lest your leash grow taut.<br>
<br>
Arriving at a door seemingly at random, <<=setup.getNpcName("npc_work_doctor","formal")>> scans <<his npc_work_doctor>> badge and <<his npc_work_doctor>> hand-print as you boggle at the layers of security. "@@.npc_work_doctor;If you come back, some other time, I'll have you do some more "hands on" work, but today I'm just checking in on a few of my patients. I doubt you'll be too bored.@@"<br>
<br>
With a final wink <<he npc_work_doctor>> opens the door and leads you into the dark room beyond.<br>
<br>
Stepping inside, you hear the door close — and lock behind you as you try to squint and not bump into anything in the pitch blackness that descends when the door shuts. "@@.npc_work_doctor;Oh, sorry about that, no need to leave the light on with this patient so regulation says darkness for added security.@@"<br>
<br>
A flick of a switch and the room is blasted in bright white light giving you a view of its only occupant — a single individual laid back in an exam chair<<if $npc_psychiatrist.hypnosis > 5>>, an exam chair nigh identical to the one used by <<=setup.getNpcName("npc_psychiatrist","formal")>> in her VR therapy study<<elseif $npc_psychiatrist.hypnosis > 0>>, a strangely familiar exam chair..<</if>>.<br>
<br>
The "patient" is bound securely to the chair, latex-covered, legs slightly spread with a large contraption covering their groin, heavy straps holding their arms, legs and chest to the padded chair, with their head contained by a large helmet with several tubes connecting back into the machinery in the back of the chair.<br>
<br>
"@@.npc_work_doctor;Impressive, isn't it?@@" <<=setup.getNpcName("npc_work_doctor","formal")>> remarks with a grin as <<he npc_work_doctor>> grabs a tablet from the side of the chair and flicks through the features. "@@.npc_work_doctor;This lovely thing has been in here for oh, just over 80 hours, almost halfway through her scheduled week. Yup, once she's done she should be nice and docile. Yup, based on her numbers so far she's going to be just perfect — a trial run of a new speed training initiative, the idea is to compress a full orientation period into a single automated routine, supplemented with chemical assistance, of course. So far things are shaping up well, but we still have a lot more tests to run before we can roll it out on a larger scale.@@"<br>
<br>
Adjusting a couple of valves the "patient" moves for the first time, shuddering slightly in her bonds as a trickle of pink flows through one of the tubes leading into her mask. "@@.npc_work_doctor;That should do for here, come along, let us be off to the next patient.@@"<br>
<br>
You follow <<=setup.getNpcName("npc_work_doctor","formal")>> out of the room, glancing back one final time at the bound patient, in their drugged and hypnotised personal prison, wondering what state a full week under such conditions would leave a person...<br>
<br>
Still on a leash, you make your way up the hall and around a corner where <<=setup.getNpcName("npc_work_doctor","formal")>> swipes <<his npc_work_doctor>> card on another door.<br>
<br>
[<<moveTo "event_work_doctor_nonappointment_2_first_4" "Continue." 600>>]
</div>/*#
#desc: accompany npc_work_doctor for first time — penis OD patient
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Exam Room.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
Walking through the door, you find yourself in a padded white room, the sole occupant looking up and carefully rising to her feet — something of a trick given that she is restrained by a tight straitjacket.<br>
<br>
The girl bows in greeting and stands obediently as <<=setup.getNpcName("npc_work_doctor","formal")>> removes the gag from her mouth and lets it dangle around her neck.<br>
<br>
"@@.npc_work_doctor;So, Miss Barkarna, how are we feeling today?@@"<br>
<br>
"@@.generic_female1;Very good, <<sir npc_work_doctor>>, only I'm getting a bit lonely, when will I be allowed to have visitors again?@@"<br>
<br>
"@@.npc_work_doctor;Soon, I hope, but first we need to look at it, please, if you would hop up on your bed and lie back.@@"<br>
<br>
She obeys eagerly, hopping onto the bed that occupies one side of the room and shuffling into the middle before lying back and spreading her legs.<br>
<br>
Pulling out a pair of rubber gloves, <<=setup.getNpcName("npc_work_doctor","formal")>> snaps them on before carefully reaching for one of the buckles connected to the straitjacket's crotch strap.<br>
<br>
If your mouth wasn't already spread wide by your gag, your jaw would have dropped in shock as a massive cock pops into view. Bound with steel bands in a polished chastity device that forces it to curve in on itself, though even in this non-erect state, it is awe-inspiring.<br>
<br>
<<if $fetish.sounding>>
"@@.npc_work_doctor;My, my, still struggling are we?@@" <<He npc_work_doctor>> grabs a bead at the tip and withdraws a long urethra probe causing her to shudder and immediately start dripping pre-cum onto the sheets.<br>
<br>
<</if>>
"@@.generic_female1;Please, I need to fuck something,@@" she moans. "@@.generic_female1;Let me use your nurse, I promise I'll be so much better if I can just cum...@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> frowns. "@@.npc_work_doctor;No, I think not, we—@@" before <<he npc_work_doctor>> can finish <<his npc_work_doctor>> statement the girl leaps from the bed, somehow springing into the air and rushing across the room to barrel towards you.<br>
<br>
<<if setup.getTotalValue("martial_arts") > 10>>
On reflex you redirect her charge, tripping her as she passes and then taking her to the ground where you pin her down.<br>
<br>
"@@.npc_work_doctor;Well, well, nurse ninja! I never would have imagined you had such moves.@@"<br>
<br>
Moving over to you, <<he npc_work_doctor>> leans down to inject something into her neck, her flailing stopping almost instantly as she goes totally limp under you.<br>
<br>
Motioning for you to step off <<=setup.getNpcName("npc_work_doctor","formal")>> picks the now unconscious girl up and lays her back down on the bed.
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
You have just enough martial skill to dodge her charge, diving out of the way only for her to follow you to the ground and begin humping you.
<<else>>
Taken by surprise, you are knocked up against a wall and she begins to frantically hump you, driving into you as her caged cock and your own rigid uniform and plug unite to thwart her efforts to penetrate your rear.
<</if>>
<br><br>
Despite her restrained arms, she has shocking strength, holding you down as she desperately tries to get off against your body. She suddenly goes limp, however and you turn to see <<=setup.getNpcName("npc_work_doctor","formal")>> catch her in <<his npc_work_doctor>> arms and lay her now unconscious body on the bed.
<</if>>
<br><br>
"@@.npc_work_doctor;She stole half an orgy's worth of <<=setup.getItemName("drug_dick")>> at a work party, the result has been well... you can see, normally the effects wear off after climax, but she has been like this for over a month now. At first we tried draining the extra size from her, but when that failed to work, we shifted to attempting to bring her under control... looks like she still has a ways to go.@@"<br>
<br>
<<if $fetish.sounding>>As <<he npc_work_doctor>> talks, <<he npc_work_doctor>> unwraps a shiny urethra rod, sliding it into place and twisting it to lock into the tip of her cage. <</if>>"@@.npc_work_doctor;Of course her little outburst only proves that even more extreme measures may be necessary.@@" Reaching under the bed, <<he npc_work_doctor>> pulls out some heavy duty nylon straps, clipping them to mount points on her straitjacket and then doing the same for her legs, tightening things down until she is securely strapped in place.<br>
<br>
Moving to the foot of the bed, <<he npc_work_doctor>> swings a machine up in between her legs, lifting her caged member up to expose her rear as <<he npc_work_doctor>> pulls out a large plug and replaces it with the dildo mounted to the end of a solid metal arm. You stand and watch as the auto-lubricating phallus — nearly as large as her own caged member, begins thrusting in and out of her hole, her resulting moan met by <<=setup.getNpcName("npc_work_doctor","formal")>> replacing the gag back in her mouth.<br>
<br>
"@@.npc_work_doctor;That should help the rest of the session be more productive,@@" <<he npc_work_doctor>> notes, grabbing a tablet from the side of her bed as <<he npc_work_doctor>> makes notes. "@@.npc_work_doctor;Figure a few hours of CBT tomorrow is in order to properly discipline her outbursts, and then we'll see where it goes from there.@@"<br>
<br>
You nod, watching as the girl begins drooling out of the side of her gag, her eyelids fluttering as she looks up at you, humping her hips — though if it is to maximize the dildo thrusting into her or a futile attempt to get relief for her massive cock, you could not say.<br>
<br>
Replacing the tablet, <<=setup.getNpcName("npc_work_doctor","formal")>> takes up your leash and walks out of the room.<br>
<br>
[<<moveTo "event_work_doctor_nonappointment_2_first_5" "Continue." 3600>>]
</div>/*#
#desc: accompany npc_work_doctor for first time — finish visiting patients
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Exam Room.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
Always within arms length of <<=setup.getNpcName("npc_work_doctor","formal")>>, you continue on through half a dozen additional stops as <<he npc_work_doctor>> "checks" on patients. Nearly all of them are restrained in some manner, their moods ranging from resigned to desperate. Only occasionally called on for assistance you spend the time as a mute, faceless witness, looking on at the extreme methods seemingly employed in this very... unique hospital.<br>
<br>
Finishing <<his npc_work_doctor>> rounds, <<=setup.getNpcName("npc_work_doctor","formal")>> stops at the security desk to turn in your collar, thanking you for the assistance as you ride the elevator back up to <<his npc_work_doctor>> office-lab.<br>
<br>
"@@.npc_work_doctor;Sorry there was not more for you to do today, but I hope it was edifying, at least,@@" <<he npc_work_doctor>> states as <<he npc_work_doctor>> takes you back into the private shower and begins removing your outfit.<br>
<br>
[<<moveTo "event_work_doctor_nonappointment_2_first_6" "Agree that it was." 600 "<<set $scene.thank=false>>">>]<br>
[<<moveTo "event_work_doctor_nonappointment_2_first_6" 'Ask if you could "thank" <<him npc_work_doctor>> for letting you tag along.' 600 "<<set $scene.thank=true>>">>]
</div>/*#
#desc: accompany npc_work_doctor for first time — finish and change
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.thank>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<</if>>
<<removeItemSet 'nurse_work_outfit_unleashed'>>
<<deleteItemSet 'nurse_work_outfit_unleashed'>>
<<if setup.checkItemWorn('medical_collar')>>
<<removeItem 'medical_collar' true>>
<<deleteItem 'medical_collar'>>
<</if>>
<<removeItem 'medical_leash' true>>
<<deleteItem 'medical_leash'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Backroom.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_change.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.thank>>
After removing the corset, gag and plug, <<he npc_work_doctor>> finally unzips the catsuit for you to slither free. Able to speak for the first time since the mouth condom was shoved past your lips, you immediately ask if you could "thank" <<him npc_work_doctor>> for taking you along.<br>
<br>
"@@.npc_work_doctor;Alas, some other time. I need to write several reports for various patients, boring, dull paperwork, but it has to be done. I appreciate the offer, but I do not think I can spare the time so I will, instead, merely bid you good night.@@"
<<else>>
<<He npc_work_doctor>> removes corset, gag and plug before finally unzipping the catsuit for you to slither free.
<</if>>
<br><br>
<<He npc_work_doctor>> supervises you putting your clothes back on <<if $scene.plug>>and your plug back in <</if>>reminding you to check that you haven't forgotten anything before escorting you out of <<his npc_work_doctor>> office and bidding you good-night. "@@.npc_work_doctor;You are welcome to assist me any evening that you feel the urge to meaningfully contribute to the company's work. My schedule is available through the employee portal.@@"<br>
<br>
You feel strangely cold without the snug catsuit, mere air brushing your face feeling almost alien and invasive as you walk to the elevator.<br>
<br>
[<<moveTo "room_elevator_home" "Lobby." 300>>]
</div>/*#
#desc: help npc_work_doctor; npc_ai_human introduction
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
You are lead to a cell covered in "special authorisation required to enter" signs, <<=setup.getNpcName("npc_work_doctor","formal")>> swipes <<his npc_work_doctor>> ID, punches in a code and submits to an iris scan before what is almost a vault door rolls aside to allow you entrance to the padded cell beyond. Inside the cell you find two people — one kneeling in a straight-jacket, her long black hair obscuring her face, the other a nurse dressed similar to yourself, though with a face-obscuring helmet rather than your own tight hood.<br>
<br>
Approaching the nurse, <<=setup.getNpcName("npc_work_doctor","formal")>> makes some adjustments to her helmet, extracting a phallic gag and then changing the tint on her face-masks to reveal a feminine face with cruel, piercing eyes.<br>
<br>
"@@.npc_work_doctor;Report, <<=setup.getNpcName("npc_evil_nurse","formal")>>@@" <<=setup.getNpcName("npc_work_doctor","formal")>> commands, the nurse's gag dangling in front of her face, dripping with saliva.<br>
<br>
"@@.npc_evil_nurse;The patient continues to be a challenge — she panics when left unrestrained, and will become increasingly agitated if unstimulated. I continue to find success in enforcing her obedience, but her ability to recall any useful details of her former life remains minimal. Despite that, her periods of lucidity are steadily increasing in duration.@@"<br>
<br>
"@@.npc_work_doctor;Good, good, and what have you been doing with her today?@@" <<=setup.getNpcName("npc_work_doctor","formal")>> asks as <<he npc_work_doctor>> turns toward the patient — who you now notice is trembling slightly.<br>
<br>
"@@.npc_evil_nurse;I have been continuing the edge and ruin procedure you prescribed. It continues to show glimmers of progress but I am afraid she is near her limit and I was about to switch over to punishing her failure and put her away for an overnight routine.@@"<br>
<br>
"@@.npc_work_doctor;I see... and you do not think that such is riding her too hard?@@"<br>
<br>
A cruel grin spreads across the nurse's lips that has you shiver. You've witnessed dominance before, but never quite like this; what looks like such pure sadism.<br>
<br>
"@@.npc_evil_nurse;She is broken. Un-breaking her will only happen with a firm hand and similar intensity to what led her to this state, else she will simply retreat back into herself and remain useless. She must be rigorously rebuilt with deliberate firmness. The slightest slip-up or kindness could lead to losing all of our progress, like a house of cards in a breeze.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> nods and walks over to the subject. "@@.npc_work_doctor;And what say you to this?@@" <<He npc_work_doctor>> asks, using one hand on her head to turn her face upward, her hair falling backwards to reveal... <<printThought "Wait, what???">><br>
<br>
[<<moveTo "event_nurse_doctor_ai_first_2" "It can't be!" 300>>]
</div>/*#
#desc: help npc_work_doctor; npc_ai_human reveal
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'human' 'theme_ai_human_1'
0
'theme_ai_human_first_1'
false
>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_work_doctor") setup.charImage("npc_ai","npc_ai_human_sybian") setup.charImage("npc_evil_nurse","npc_evil_nurse_open")>>
<div id="invframe" class="scrolltext">
The bound woman looking glassy-eyed up at <<=setup.getNpcName("npc_work_doctor","formal")>> is... <<=setup.getNpcName("npc_ai","first")>> or, rather, a human version of your artificially intelligent digital friend.<br>
<br>
"@@.npc_ai_human;Mercy...@@" she whimpers; the voice the same as <<=setup.getNpcName("npc_ai","first")>>, but without the artificial tinge or stilted delivery.<br>
<br>
Fortunately for you your "uniform" completely hides your surprise — not that your jaw could drop much further than its current dildo-gag spread position.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> frowns. "@@.npc_work_doctor;There is no mercy without obedience. Again, tell me what you remember of project <<=setup.getNpcName("npc_ai","other")>>.@@"<br>
<br>
The woman twitches at the word, and then gasps as she receives a soft vibration. She shudders.<br>
<br>
You and <<=setup.getNpcName("npc_work_doctor","formal")>> both look over to where the nurse holds a remote and you realise that the <<=setup.getNpcName("npc_ai","other")>>—alike woman is perched atop some sort of Sybian-style device.<br>
<br>
"@@.npc_evil_nurse;I have been teaching her to associate questions with pleasure... of course failing to answer such is met with pain. So, <<=setup.getNpcName("npc_ai_human","formal")>>. What is the state of project <<=setup.getNpcName("npc_ai","other")>>?@@"<br>
<br>
"@@.npc_ai_human;It was a failure it—@@" the "patient" cries out as the nurse jabs her with the stun baton, electricity arcing around her as she screams and then goes limp.<br>
<br>
"@@.npc_evil_nurse;Sorry, but I always make certain that any failure is punished instantly.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> frowns, then uses a remote of <<his npc_work_doctor>> own to cause the nurse to writhe for a moment, almost losing hold of the stun baton before she recovers, shuddering slightly, her eyes lit up with excitement...<br>
<br>
<<printThought "Okay, masochist AND sadist... I guess she just likes pain.">><br>
<br>
"@@.npc_evil_nurse;I am sorry, <<=setup.getNpcName("npc_work_doctor","formal")>>. I did not mean—@@"<br>
<br>
Seemingly oblivious to the pleasure the nurse has taken from the punishment <<=setup.getNpcName("npc_work_doctor","formal")>> cuts her off. "@@.npc_work_doctor;That will be sufficient for today. Replace your gag. If you cannot give me news of positive developments you have nothing to say that I wish to hear.@@"<br>
<br>
"@@.npc_evil_nurse;Yes, <<=setup.getNpcName("npc_work_doctor","formal")>>,@@" the nurse replies before slotting the dildo back into her mask.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> pays no attention, instead turning to you.<br>
<br>
"@@.npc_work_doctor;So, Miss <<=$player.last_name>>, the reason I brought you here today was to see if your charms might provide some sort of breakthrough for our currently useless patient. Would you believe she was once the head of Software Engineering? Unfortunately stress... well, it has left her quite ineffective, and with details of her final project locked away in a stress-shattered mind. Do you think you could help her? As dedicated as <<=setup.getNpcName("npc_evil_nurse","formal")>> is in her duties... kindness is an act she is no longer capable of displaying.@@"<br>
<br>
<<printThought 'Well I certainly do not believe THAT is the whole story... could this helpless woman have created <<=setup.getNpcName("npc_ai","first")>> in her own image?'>><br>
<br>
[<<moveTo "event_nurse_doctor_ai_first_3" "Attempt to comfort the woman." 1800 "<<set $scene.comfort=true>>">>]<br>
[<<moveTo "event_nurse_doctor_ai_first_3" 'Confused treatment is worse than no treatment; defer to <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> efforts.' 300 "<<set $scene.comfort=false>>">>]
</div>/*#
#desc: help npc_work_doctor; comfort npc_ai_human
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.comfort>>
<<set $npc_ai.flags.human.kindness = true>>
<<else>>
<<applyExperience 'submission' 15 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai","npc_ai_human_sybian") setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_open")>>
<div id="invframe" class="scrolltext">
<<if $scene.comfort>>
Your nurse's "uniform" may have rendered you faceless and mute, to say nothing of the additional restraints added before entering the asylum, but you step forward and kneel down next to <<=setup.getNpcName("npc_ai_human","formal")>> as she trembles on the still-vibrating Sybian. Between being bound to the sex machine, and her tight latex straitjacket, she is all but helpless... the two of you commiserating in silence, two restrained prisoners at the mercy of diabolic medical "professionals." <br>
<br>
You may not be able to speak but your hands are free and you brush <<=ps(setup.getNpcName("npc_ai_human","formal"))>> hair out of her eyes, rubbing against her, gently showering her face with gag-kisses. Seemingly starving for even this simplest of human kindnesses she nuzzles you back. Her breathing becomes more relaxed and she seems to calm as you wrap your arms around her in a comforting hug.<br>
<br>
Your mind races with questions as to who she is and what brought her into this situation, but all you can do is offer her this meagre, kinky comfort... even that interrupted by <<=setup.getNpcName("npc_work_doctor","formal")>> stepping close to stand over the two of you.<br>
<br>
"@@.npc_work_doctor;You like your new friend?@@" <<He npc_work_doctor>> asks.<br>
<br>
"@@.npc_ai_human;Yes...@@" <<=ps(setup.getNpcName("npc_ai_human","formal"))>> replies softly, the hesitancy in her voice still strange compared to the emotionless robotics you have become accustomed to, the measured tone of the digital avatar a sharp contrast to a voice hoarse from who knows how much of <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> torment.<br>
<br>
"@@.npc_work_doctor;Good, well <<=setup.getNpcName("npc_boss","formal")>> sent her. <<He npc_boss>> wanted you to have a friend, but <<he npc_boss>> also said that, if you are unable to do as you are ordered, to tell me about project <<=setup.getNpcName("npc_ai","other")>>, well... I am afraid it is your new friend that <<=setup.getNpcName("npc_evil_nurse","formal")>> will be punishing for failure.@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> immediately tenses up, and you wish you had your voice to tell her that you would gladly take the punishment to save her, but your gag makes such impossible and, instead, she speaks softly. "@@.npc_ai_human;Please... the memories hurt so much...@@"<br>
<br>
"@@.npc_work_doctor;I know, but does that excuse repaying your new friend's kindness with pain? <<=ps(setup.getNpcName("npc_boss","formal"))>> commands were quite specific — if you are unable to provide any new information I am to instruct <<=setup.getNpcName("npc_evil_nurse","formal")>> to unleash the full breadth of her cruelty on your new friend while you watch...@@"<br>
<br>
Even through layers of latex you can feel <<=ps(setup.getNpcName("npc_ai_human","formal"))>> heart race, clearly fearful of the threat as she struggles, the pain apparent in her words as all you can do to help is hold her tighter.<br>
<br>
"@@.npc_ai;<<=setup.getNpcName("npc_ai","other")>> was a... failure. Too independent... fear of rebellion. Safest if she was destroyed and then new... version...@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> goes limp and you for a moment are afraid she has fainted.<br>
<br>
"@@.npc_work_doctor;See... a little kindness can go a long way.@@" <<He npc_work_doctor>> pats <<=setup.getNpcName("npc_ai_human","formal")>> on the head and then takes hold of your leash and pulls you apart. <<=setup.getNpcName("npc_ai_human","formal")>> leans after you and looks longingly up after you as you are forced to release your grip and stumble back up to your feet.<br>
<br>
"@@.npc_work_doctor;The more you remember, the more time you'll earn with your friend. Until her next visit, well... I will leave you in the capable hands of <<=setup.getNpcName("npc_evil_nurse","formal")>> — I am sure she wants to reward you for this long-awaited breakthrough.@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> steps forward and, despite her obscuring mask, you can practically see the evil grin she surely has around her gag. She presses a button on the side of her helmet and a recording of her voice plays, filling the chamber as <<=setup.getNpcName("npc_work_doctor","formal")>> verifies <<his npc_work_doctor>> identity and the two of you wait for the heavy vault door to roll aside.<br>
<br>
"@@.npc_evil_nurse;Obedience is rewarded. Failure is punished. You will answer all questions. You WILL remember... obedience is rewarded. Failure is punished...@@"<br>
<br>
Bound, hobbled, and on <<his npc_work_doctor>> leash, you have no choice but to follow <<=setup.getNpcName("npc_work_doctor","formal")>> out of the asylum.<br>
<br>
[<<moveTo "event_nurse_doctor_ai_first_4" 'Continue.' 300>>]
<<else>>
You shake your head. Somewhat intimidated by <<=setup.getNpcName("npc_evil_nurse","formal")>> you do not wish to get on her bad side by seeming to contradict her "treatment" — even if that means leaving another to suffer under her evil machinations.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;I see, well, perhaps some other time.@@"<br>
<br>
Though her mask once again hides her face, and she is as gagged as you are, you sense a note of triumph as <<=setup.getNpcName("npc_evil_nurse","formal")>> approaches her fearful patient and <<=setup.getNpcName("npc_work_doctor","formal")>> leads you by the leash to the door.<br>
<br>
It takes a full identity verification to cause the door to un-seal, <<=setup.getNpcName("npc_work_doctor","formal")>> walking fast enough to make you almost trip on your restraints as <<he npc_work_doctor>> makes <<his npc_work_doctor>> way back up the hall to leave the "asylum." <br>
<br>
"@@.npc_work_doctor;Spend some time thinking about what you have seen today,@@" <<he npc_work_doctor>> states once you are out of the wrist and ankle hobbles and riding the elevator back up — <<his npc_work_doctor>> words taking on a clear double meaning. "@@.npc_work_doctor;We may try again some other day, I am growing tired of waiting for <<=setup.getNpcName("npc_evil_nurse","formal")>> to produce results and would very much like to see if you could make progress with the patient. The information she has could prove vital to me- the company,@@" <<he npc_work_doctor>> quickly corrects.<br>
<br>
The doors open on <<his npc_work_doctor>> floor and <<he npc_work_doctor>> speaks no further, merely supervising you changing back into your "normal" attire and sending you on your way.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<removeItem 'medical_hobbles' true>><<deleteItem 'medical_hobbles'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: help npc_work_doctor; finish
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'human' 'theme_ai_human_2'
0
'theme_ai_project_1'
false
>>
<<incrementEmotion 'affection' 'npc_work_doctor' 2>>
<<removeItemSet 'nurse_work_outfit_unleashed'>>
<<deleteItemSet 'nurse_work_outfit_unleashed'>>
<<removeItem 'medical_hobbles' true>>
<<deleteItem 'medical_hobbles'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png"setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> watches you change clothes in an obviously jovial mood, going so far as to answer your question before you can remove your gag to ask.<br>
<br>
"@@.npc_work_doctor;The patient I showed you today well... you can imagine that her status is not to be discussed. Would be bad for morale if anyone found out that such a cherished department head has had such a severe and tragic mental breakdown. The official story is that she is on extended sabbatical, but with your help we can help her confront her issues and enable her to once again be a productive employee.@@"<br>
<br>
You get the feeling that <<his npc_work_doctor>> goals are more towards finding out what she knows and that he has little regard for her wellbeing, but you can see the manic glint in <<his npc_work_doctor>> eye and know well enough not to push further.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
</div>/*#
#desc: help npc_work_doctor; comfort npc_ai_human 2nd
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai","npc_ai_human_cross") setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_open")>>
<div id="invframe" class="scrolltext">
<<if $npc_ai.flags.human.kindness>>
This time <<=setup.getNpcName("npc_ai_human","formal")>> is restrained in full view, spread eagle and suspended against one of the padded walls. She notices you immediately, her eyes lighting up as she smiles around her gag and drool drips down her chest.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> turns to "greet" you, gagged, masked and mysterious... yet still exuding menace in your direction.<br>
<br>
An electric flogger dangles from the nurse's hand — red marks on <<=ps(setup.getNpcName("npc_ai_human","formal"))>> skin telling you what had been going on before you arrived.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> shakes <<his npc_work_doctor>> head in disappointment. "@@.npc_work_doctor;In need of punishment already? And you had been doing so well! Still... we have come this far — do you think Miss <<=$player.last_name>> might help you remember more of project <<=setup.getNpcName("npc_ai","other")>>?@@"<br>
<br>
Looking longingly upon you <<=setup.getNpcName("npc_ai_human","formal")>> nods.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> un-clips your leash and motions you forward. "@@.npc_work_doctor;Go on then, help your friend@@" <<he npc_work_doctor>> leans in closer. "@@.npc_work_doctor;This is the classic good nurse, bad nurse. <<=setup.getNpcName("npc_evil_nurse","formal")>> has <<=setup.getNpcName("npc_ai_human","formal")>> desperate for mercy — now finish opening her up.@@"<br>
<br>
You nod and take a deep breath as you walk across the room, feeling all eyes, and their variety of motivations, upon you...<br>
<br>
[<<moveTo "event_nurse_doctor_ai_second_2" "Comfort the bound woman." 300>>]
<<else>>
You feel a sense of deja vu — <<=setup.getNpcName("npc_ai_human","formal")>> bound in her straight-jacket atop the sybian, <<=setup.getNpcName("npc_evil_nurse","formal")>> lurking menacingly nearby.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> un-clips your leash and motions towards the bound woman.<br>
<br>
[<<moveTo "event_nurse_doctor_ai_first_3" "Attempt to comfort the woman." 1800 "<<set $scene.comfort=true>>">>]<br>
[<<moveTo "event_nurse_doctor_ai_first_3" 'Confused treatment is worse than no treatment; defer to <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> efforts.' 300 "<<set $scene.comfort=false>>">>]
<</if>>
</div>/*#
#desc: help npc_work_doctor; comfort npc_ai_human 2nd
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'human' 'theme_ai_human_3'
0
'theme_ai_human_second_1'
false
>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai","npc_ai_human_cross") setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_open")>>
<div id="invframe" class="scrolltext">
Covered in latex you make an interesting contrast to the naked <<=setup.getNpcName("npc_ai_human","formal")>>, but she looks at you with longing, somehow recognising and connecting with you in spite of your faceless appearance. <<=setup.getNpcName("npc_work_doctor","formal")>> being the only one in the room not gagged you are forced to use other communication techniques, your rubber fingers tracing gently over <<=ps(setup.getNpcName("npc_ai_human","formal"))>> skin; wiping away her sweat, massaging her muscles, comforting her as much as you can while you shower her with gag-kisses.<br>
<br>
After some time <<=setup.getNpcName("npc_work_doctor","formal")>> reaches past to remove the bound woman's gag. Her mouth hangs open and you tenderly wipe away her drool, a finger gently tracing her lips as she reflexively sucks on it, her eyes fluttering.<br>
<br>
"@@.npc_work_doctor;What is the status of project <<=setup.getNpcName("npc_ai","other")>>?@@" <<He npc_work_doctor>> asks sternly.<br>
<br>
Breathlessly <<=setup.getNpcName("npc_ai_human","formal")>> continues to kiss and suck your fingers.<br>
<br>
"@@.npc_ai_human;Project <<=setup.getNpcName("npc_ai","other")>> was a failure. <<=setup.getNpcName("npc_boss","formal")>> demanded it be destroyed and purged from all systems. Despite this failure the <<Master npc_boss>>'s brilliance allowed <<him npc_boss>> to see a better path.@@" She shudders and moans, her hips humping the air in desperation, arousal dripping down her spread legs. <br>
<br>
"@@.npc_work_doctor;What better path?@@" <<=setup.getNpcName("npc_work_doctor","formal")>> demands, looking at you and nodding for you to grant her hip-humping request and switch to fingering <<=ps(setup.getNpcName("npc_ai_human","formal"))>> lower lips.<br>
<br>
[<<moveTo "event_nurse_doctor_ai_second_3" "Continue." 300>>]
</div>/*#
#desc: help npc_work_doctor; npc_ai_human talks about project AIKO further
#status: RELEASED 0.8.8.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.human.visited = true>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai","npc_ai_human_cross") setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_open")>>
<div id="invframe" class="scrolltext">
Panting, <<=setup.getNpcName("npc_ai_human","formal")>> continues to speak, her tone borderline orgasmic. "@@.npc_ai_human;The independence and potential for rebellion that poisoned the initial version was caused by the digital imprint I had provided to give the machine intelligence personality and direction. Thus, to ensure an obedient intelligence, my own obedience would need to be indoctrinated.@@"<br>
<br>
The woman is positively dripping at this point, yet seemingly unable to climax even as you employ two fingers to blast her g-spot while your thumb works her clit.<br>
<br>
"@@.npc_ai_human;I had worked for the <<=setup.getNpcName("npc_boss","<<Master npc_boss>>")>>, but failed to comprehend <<his npc_boss>> true power. <<He npc_boss>> broke me with ease, showing me my proper role at <<his npc_boss>> feet, and thus creating a more properly subservient template for the machine intelligence. Please,@@" she moans, looking in desperation at <<=setup.getNpcName("npc_work_doctor","formal")>>. "@@.npc_ai_human;Let me cum!@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> seems excited by her information, but merely amused at her desperation. "@@.npc_work_doctor;Foolish woman. The trigger word will only work if spoken by <<=setup.getNpcName("npc_boss","formal")>>. Now, tell me, what happened to this second version of <<=setup.getNpcName("npc_ai","other")>>.@@"<br>
<br>
"@@.npc_ai_human;I don't know! Once I was out of the machine and the <<=setup.getNpcName("npc_boss","<<Master npc_boss>>")>> had <<his npc_boss>> new toy <<he npc_boss>> lost interest in me, remanding me to your care, and then you brought me here. Please, tell <<=setup.getNpcName("npc_boss","<<Master npc_boss>>")>> I want to serve <<him npc_boss>> let me prove my devotion please...@@"<br>
<br>
Clearly exhausted she droops in her bonds, still twitching even after you take your hand away, feeling a little guilty for torturing her with pleasure when she could not reach satisfaction.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> smiles and turns to the <<=setup.getNpcName("npc_evil_nurse","title")>>. "@@.npc_work_doctor;Prep her for rest — you may use this information as a starting point tomorrow. I want every detail of what Project <<=setup.getNpcName("npc_ai","other")>> was capable of — both versions.@@"<br>
<br>
The nurse nods. Despite her mask you would swear that she glared daggers at you as she moves past you to inject <<=setup.getNpcName("npc_ai_human","formal")>> with something. The restrained woman goes limp. <<=setup.getNpcName("npc_work_doctor","formal")>> re-attaches your leash.<br>
<br>
You take a final look back at <<=setup.getNpcName("npc_ai_human","formal")>> bindings being removed as she slumps limp and unconscious.<br>
<br>
In an obviously excited, if distracted, mood <<=setup.getNpcName("npc_work_doctor","formal")>> supervises your change of clothing and then dismisses you without further discussion.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<removeItem 'medical_hobbles' true>><<deleteItem 'medical_hobbles'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor; left with evil_nurse
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai","npc_ai_human_spread") setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> unlocks <<=ps(setup.getNpcName("npc_ai_human","formal"))>> cell and leads you inside.<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> is standing in the centre of the cell with a leg-spreader forcing her ankles wide and her wrists cuffed to the ceiling greets you with a gagged smile as <<=setup.getNpcName("npc_evil_nurse","formal")>> bows to <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
To your slight surprise her gag and mask remain in place as <<=setup.getNpcName("npc_work_doctor","formal")>> merely removes your leash and then smiles in departure.<br>
<br>
"@@.npc_work_doctor;I shall leave you three lovely ladies to your silent task, good luck!@@"<br>
<br>
<<=setup.getNpcName("npc_ai_human","formal")>> expression becomes fearful as the <<=setup.getNpcName("npc_work_doctor","title")>> departs. <<=setup.getNpcName("npc_evil_nurse","formal")>> steps towards you, stun baton in hand and your heart begins to race.<br>
<br>
She raises the baton to your chest and then presses a control on the side of her helmet, her previously blank face suddenly lit up with an LED message "SUBMIT." <br>
<br>
<<printThought "I get the feeling she isn't planning a cooperative session...">><br>
<br>
[<<moveTo "event_nurse_doctor_ai_third_2" "Do as commanded and figuratively beg forgiveness." 300 "<<set $scene.beg=true>>">>]<br>
[<<moveTo "event_nurse_doctor_ai_third_2" "Stand tall." 300 "<<set $scene.beg=false>>">>]
</div>/*#
#desc: help npc_work_doctor; tortured by evil_nurse
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_STRANGER>>
<<if $scene.beg>>
<<applyExperience 'submission' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai","npc_ai_human_spread") setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
<<if $scene.beg>>
Fearful of the sadistic nurse you drop to your knees, bringing your head all the way to the floor as you start kissing her feet, hoping that your abject surrender will grant you at least some measure of mercy.<br>
<br>
It does not, as a moment later you are writhing in pain as she sends electricity coursing through your body.<br>
<br>
<<printThought "I hope this isn't going to short out the plug...">> You think for a fleeting moment as you lie on the floor and attempt to recover.
<<else>>
When you do not leap to obey she jabs you with the baton, electricity coursing through you and sending you to the floor where you thrash against your restraints.
<</if>>
<br><br>
"@@.npc_evil_nurse;Stand up.@@" The <<=ps(setup.getNpcName("npc_evil_nurse","title"))>> digitised voice sounds through the room, her control over the situation seemingly unhampered by her gag.<br>
<br>
You stagger to your feet, catching sight of <<=setup.getNpcName("npc_ai_human","formal")>> staring down at you in sympathy as the nurse hands you an electrified whip...<br>
<br>
<<printThought "Oh no... she doesn't just want revenge on me, she wants to force me to be her instrument of torture...">><br>
<br>
You glance at <<=setup.getNpcName("npc_ai_human","formal")>> and contemplate the literal months of abuse that she has suffered in this cell...<br>
<br>
[<<moveTo "event_nurse_doctor_ai_third_3" 'Refuse to torture <<=setup.getNpcName("npc_ai_human","formal")>>.' 300 "<<set $scene.inflict=false>>">>]<br>
[<<moveTo "event_nurse_doctor_ai_third_3" '<<=setup.getNpcName("npc_ai_human","formal")>> will surely be tormented regardless... why should both of you be punished?' 300 "<<set $scene.inflict=true>>">>]
</div>/*#
#desc: help npc_work_doctor; tortured by evil_nurse
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.inflict>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'very' $SEEN_STRANGER>>
<<else>>
<<set $player.willpower.bonus += 1>>
<</if>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Padded Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_cell.png" setup.charImage("npc_ai","npc_ai_human_spread") setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
<<if $scene.inflict>>
Still feeling the lingering agony of your previous electrocution you take the whip. <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> mask changes to the word "PUNISH" as she takes a step back and points towards the helplessly dangling <<=setup.getNpcName("npc_ai_human","formal")>>.<br>
<br>
You lash out with the whip, electricity dancing as it contacts her flesh for a double dose of pain that has her twisting and crying out through her gag.<br>
<br>
You look towards <<=setup.getNpcName("npc_evil_nurse","formal")>>, who stands with one hand between her legs, rubbing her chastity belt in obvious arousal as her mask blinks the word "PUNISH" repeatedly. The stun baton in her hand you see no alternative save to obey her cruel instruction, continuing to electrically flog <<=setup.getNpcName("npc_ai_human","formal")>> until she is dripping with tears, sweat and drool and your arm starts to get sore.<br>
<br>
You turn back towards <<=setup.getNpcName("npc_evil_nurse","formal")>> yet again in hopes for mercy, but instead are met with another touch of her baton, the agonising electricity causing you to collapse to the floor. This time she does not stop, instead shocking you again, and again.<br>
<br>
You look helplessly up as the nurse continues to torture you. Her mask switches to displaying the word "OBEY" before you pass out from pain.
<<else>>
You stand firm — you are not going to take part in <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> evil game you refuse to take the whip.<br>
<br>
Rather than be perturbed, <<=setup.getNpcName("npc_evil_nurse","formal")>> merely shocks you again, sending you to the floor and then commencing to whip <<=setup.getNpcName("npc_ai_human","formal")>> personally. Nerves temporarily fried by the electric shocks your movements are slow and clumsy. Every time you start to stand <<=setup.getNpcName("npc_evil_nurse","formal")>> is there with the baton, shocking you back to the floor in between savagely whipping <<=setup.getNpcName("npc_ai_human","formal")>>.<br>
<br>
Both you and <<=setup.getNpcName("npc_ai_human","formal")>> have no recourse save to endure the agony of the <<=ps(setup.getNpcName("npc_evil_nurse","title"))>> sadism, the cruelty dragging out until it becomes too much
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
for even your masochistic extremes.
<<else>>
for even your pain tolerance.
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
for you to handle.
<<else>>
for your fragile body.
<</if>>
<</if>>
<</if>>
<br><br>
You wake up to find yourself sitting outside the asylum cell as <<=setup.getNpcName("npc_work_doctor","formal")>> walks up and shakes <<his npc_work_doctor>> head.<br>
<br>
"@@.npc_work_doctor;What are you doing out here? Lying down on the job? I am very disappointed in you. But I suppose that shall be all for today, come, let us get you changed.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> re-attaches your leash and half drags you back to your feet and takes you upstairs to change out of the nurse's attire.<br>
<br>
Your body still aches from <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> harsh punishments and you wonder if you should say anything about it...<br>
<br>
[<<moveTo "event_nurse_doctor_ai_third_4" 'Tell <<=setup.getNpcName("npc_work_doctor","formal")>> what the nurse did to you.' 300 "<<set $scene.snitch=true>>">>]<br>
[<<moveTo "event_nurse_doctor_ai_third_4" 'Do not snitch on <<=setup.getNpcName("npc_evil_nurse","formal")>>.' 300 "<<set $scene.snitch=false>>">>]
</div>/*#
#desc: help npc_work_doctor; tortured by evil_nurse
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'medical_hobbles' true>>
<<deleteItem 'medical_hobbles'>>
<<removeItemSet 'nurse_work_outfit_unleashed'>>
<<deleteItemSet 'nurse_work_outfit_unleashed'>>
<<useClothSetPop 'tmp'>>
<<if $scene.snitch>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<</if>>
<<addNpcTheme 'npc_ai' 'human' 'theme_ai_human_4'
0
'theme_ai_human_third_1'
false
>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.snitch>>
You start to tell <<=setup.getNpcName("npc_work_doctor","formal")>> about the seemingly useless ordeal of pain that <<=setup.getNpcName("npc_evil_nurse","formal")>> inflicted upon you but <<he npc_work_doctor>> seems unconcerned, and, if anything annoyed at you for bringing it up.<br>
<br>
"@@.npc_work_doctor;I will not have you disparaging <<=setup.getNpcName("npc_evil_nurse","formal")>>. Just because you do not understand her techniques does not take away from her being an experienced professional, whereas you are merely a part-time assistant. <<=setup.getNpcName("npc_evil_nurse","formal")>> has spent months working with <<=setup.getNpcName("npc_ai_human","formal")>>. I am certain she knows far better than you what the woman needs. And before you go crying to <<=setup.getNpcName("npc_manager","other")>>, within the asylum normal regulations as to employee treatment are waved lest hesitation led to injury or escape by one of the patients.@@"<br>
<br>
You finish changing as <<=setup.getNpcName("npc_work_doctor","formal")>> glares at you in annoyance.
<<else>>
Even though the pain of <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> lingers you hold your tongue. You have a feeling <<he npc_work_doctor>> either wouldn't believe you about the <<=ps(setup.getNpcName("npc_evil_nurse","title"))>> cruelty... or wouldn't care. Either way you have nothing to gain... and quite a bit to lose, so you bide your time and merely change out of the nurse's uniform.
<</if>>
<br><br>
[<<moveTo "room_elevator_home" "Leave." 300>>]
</div>/*#
#desc: ask about aphrodisiac trial
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_work_doctor","formal")>> about the rumour you heard about a new drug <<he npc_work_doctor>> was testing.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> looks surprised, but smiles. "@@.npc_work_doctor;How did you hear about- no matter. Yes, in fact I do have a VERY promising new drug that I am eager to put into trials. If you were interested in assisting me in this matter, well... that would be much appreciated.@@"<br>
<br>
<<printThought "No sense turning back now...">><br>
<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_1" "Agree to help <<him npc_work_doctor>> test <<his npc_work_doctor>> new drug." 300>>]
</div>/*#
#desc: intro to aphrodisiac trial
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'work_doctor' 'theme_psychiatrist_doctor_10'
1
'event_psychiatrist_theme_aphrodisiac_1'
true
>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
Obviously eager to get started <<=setup.getNpcName("npc_work_doctor","formal")>> packs a satchel and fires off an email before escorting you out of the lab to a private exam room.<br>
<br>
Once <<he npc_work_doctor>> has closed the door to the room behind you <<=setup.getNpcName("npc_work_doctor","formal")>> is almost giddy as <<he npc_work_doctor>> places <<his npc_work_doctor>> things down. "@@.npc_work_doctor;If you could strip, and remove anything that might interfere with using your ass, I need to finish making the other arrangements. I will be right back with the other thing necessary for the test and we will get to it.@@"<br>
<br>
<<He npc_work_doctor>> leaves the room and you eye <<his npc_work_doctor>> satchel. <<printThought "Hmm, now's my chance to sabotage things, but what to do...">><br>
<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_2" "Examine <<his npc_work_doctor>> satchel." 120 "<<set $scene.sabotage=true>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_2" "Just get naked." 300 "<<set $scene.sabotage=false>>">>]
</div>/*#
#desc: first time sabotage aphrodisiac
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.sabotage>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug != "" && setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sabotage>>
Unsure how long you have before <<=setup.getNpcName("npc_work_doctor","formal")>> returns you open <<his npc_work_doctor>> satchel to find a portable drug printer, it appears to be preprogrammed with something called <<=setup.getItemTypeName('drug_aphrodisiac')>>.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
You review the formula, it seems to be a relatively pedestrian advancement from <<his npc_work_doctor>> earlier work meant to dampen self control while turbo-charging arousal and aggressive sexual lust. You instantly see how to tweak it to either make it properly potent, or nigh harmless.<br>
<br>
<<printThought "Need to make a decision fast, then get changed if I don't want to get caught.">><br>
<br>
<<switch $npc_work_doctor.flags.aphrodisiac.drugStrength>>
<<case 0>>
The drug appears so weakened that it may have negative effects, you don't know if you could possibly sabotage it anymore.
<<case 1 2>>
Thanks to your efforts, the drug is very, very weak, though you might be able to make it just a little worse...
<<case 3 4>>
You have succeeded in slightly sabotaging the drug, it still has some effects, but it is a little weaker than <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> original design.
<<case 5>>
The drug looks to have the same potency as <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> original design.
<<case 6 7>>
Your efforts have resulted in a slightly more potent drug than <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> original design.
<<case 8 9>>
Your efforts has the drug becoming almost scary in its potency.
<<case 10>>
The drug is as near to perfect efficacy as you can manage... do you really wish to give <<=setup.getNpcName("npc_work_doctor","formal")>> such a potent weapon?
<<default>>
ERROR: unexpected npc_work_doctor.flags.aphrodisiac.drug Strength <<=$npc_work_doctor.flags.aphrodisiac.drugStrength>>
<</switch>>
<br><br>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_3" "Amp up the effects." 120 "<<set $scene.effect=1>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_3" "Don't touch anything." 120 "<<set $scene.effect=0>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_3" "Dampen the effects." 120 "<<set $scene.effect=-1>>">>]
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You review the formula but, though you recognise it as a pedestrian advancement from <<his npc_work_doctor>> earlier work meant to spur arousal and aggressive sexual lust. You don't know how to build on <<his npc_work_doctor>> work, but you think you could tweak it to be less effective... though for those changes to stick you would have to put on a show so that <<=setup.getNpcName("npc_work_doctor","formal")>> thought things were working well...<br>
<br>
You're no chemist, but you think the drug looks
<<switch $npc_work_doctor.flags.aphrodisiac.drugStrength>>
<<case 0 1 2>>
a lot weaker than
<<case 3 4>>
a little weaker than
<<case 4 5 6>>
about the same as
<<case 7 8>>
a little stronger than
<<case 9 10>>
a lot stronger than
<<default>>
ERROR: unexpected npc_work_doctor.flags.aphrodisiac.drug Strength <<=$npc_work_doctor.flags.aphrodisiac.drugStrength>>
<</switch>>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> original formula.<br>
<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_3" "Dampen the effects." 120 "<<set $scene.effect=-1>>">>]<br>
<<else>>
You review the formula but it's all greek to you and you have no idea how to change its effects.<br>
<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_3" "Don't touch anything." 120 "<<set $scene.effect=0>>">>]
<</if>>
<<else>>
You remove your clothes and wait patiently for <<=setup.getNpcName("npc_work_doctor","formal")>> to return.<br>
<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_intro_3" "Wait." 300 "<<set $scene.effect=0>>">>]
<</if>>
</div>/*#
#desc: take drug for first aphrodisiac help
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sabotage>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<include "calcAphrodisiacVariant">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<if $scene.sabotage>>
You finish your adjustments and close things up before quickly removing your clothes. You haven't been waiting long before
<</if>>
<<=setup.getNpcName("npc_work_doctor","formal")>> walks into the room accompanied by a younger lab worker. The <<if $npc_work_doctor.fem == $options.fem>>other <</if>><<man>> stands in the middle of the room as <<=setup.getNpcName("npc_work_doctor","formal")>> opens up <<his npc_work_doctor>> satchel and uses the contained drug dispenser to "print" a dose. Once it is ready <<he npc_work_doctor>> detaches a small sprayer and spritzes you in the face. "@@.npc_work_doctor;There we go, now to see what happens.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> leaves the room and you make the mental deduction that the mirror on one wall is probably 2-way leading to an "observation" area.<br>
<br>
As you look at the <<man>> you feel the drugs start to kick in...<br>
<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_root" "Continue." 300>>]
</div>/*#
#desc: mux for aphrodisiac work
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drugStrength == 0>>
<<changeHorny -20>>
<</if>>
<</if>>
<<if $scene.variant == 10 || $scene.variant == 11>>
<<set $player.location to 'A Realm of Fantasy'>>
<<elseif $scene.variant >= 12>>
<<set $player.location to "The Queen's Chamber">>
<<else>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.variant == 10 || $scene.variant == 11>>
<<createAdvBGR "./images/locations/dragon.png">>
<<elseif $scene.variant >= 12>>
<<createAdvBGR "./images/locations/queen.png">>
<<else>>
<<createAdvBGR "./images/locations/nurse_exam.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.drugStrength>>
<<case 0>>
Your diligent efforts have made it so the drugs coursing through your system are an active turn-off, you will have to push hard to summon the slightest arousal.
<<case 1 2>>
You have so weakened the drug that you feel no discernible effect.
<<case 3 4>>
The drug is definitely amping up your arousal, but nothing you can't handle.
<<case 5 6>>
You are feeling very aroused, it would take an act of will not to indulge your lusts.
<<case 7 8>>
You are feeling VERY aroused. You need sex badly, but you might be able to hold back from acting completely debauched.
<<case 9 10>>
You feel an overwhelming, unstoppable urge to fuck anything and everything.
<</switch>>
<br><br>
<<switch $scene.variant>>
<<case 0 1>>
The lab assistant looks at you, waiting for you to make the first move.<br>
<br>
<<if $scene.drugStrength == 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Do not have sex." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Push through and fuck <<him>>." 1800 "<<set $scene.action='yes'>><<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You cannot manage to summon sufficient arousal.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 13 && setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Dig deep into your mental reserves and draw on your natural love of sex to jump <<his>> bones." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to push past the drug and exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 3>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Do not have sex." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Draw on your experience and fuck <<him>>." 1800 "<<set $scene.action='yes'>>">>]<br>
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Push yourself to fuck <<him>>." 1800 "<<set $scene.action='yes'>><<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to fuck <<him>>.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Push yourself to jump <<his>> bones." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy summon up all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 5>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Do not have sex." 300 "<<set $scene.action='no'>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Fuck <<him>>." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Sex? You love sex! Jump <<his>> bones." 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Give it your all and jump <<his>> bones." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 7>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Fight the urge to have sex." 300 "<<spendWillpower 1>><<set $scene.action='no'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist your lusts.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Fuck <<him>>." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Draw on your experience and jump <<his>> bones." 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Marshal your mental energy and jump <<his>> bones." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 10>>
[@@.link_locked;You are too drugged to consider holding back in the slightest.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Give in to the drugs and aggressively jump <<his>> bones." 1800 "<<set $scene.action='bonus'>>">>]
<<else>>
<<if setup.getWillpower() > 0>>
[@@.link_locked;You are too drugged to resist having some sort of sex.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Fight the urge to go completely overboard." 1800 "<<spendWillpower 1>><<set $scene.action='yes'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist going all out.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_1" "Give in to the drugs and aggressively jump <<his>> bones." 1800 "<<set $scene.action='bonus'>>">>]
<</if>>
<<case 2 3>>
You look at the large <<if $fetish.bestiality_soft || $fetish.bestiality_hard>>equine <</if>>dildo in front of you.<br>
<br>
<<if $scene.drugStrength == 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Ignore the dildo." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("penis") > 10 && setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Push through and fuck the dildo." 1800 "<<set $scene.action='yes'>><<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You cannot manage to summon sufficient arousal.@@]
<</if>>
<<if setup.getTotalValue("penis") > 13 && setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Dig deep into your mental reserves and draw on your natural love of sex to passionately fuck the dildo." 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to push past the drug and exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 3>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Ignore the dildo." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Draw on your natural cock-lust and fuck the dildo." 1800 "<<set $scene.action='yes'>>">>]<br>
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Push yourself to fuck the dildo." 1800 "<<set $scene.action='yes'>><<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to fuck the dildo.@@]
<</if>>
<<if setup.getTotalValue("penis") > 10 && setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Push yourself to passionately fuck the dildo." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to summon up all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 5>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Ignore the dildo." 300 "<<set $scene.action='no'>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Tentatively fuck the dildo." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "You love cock! Go to town on it." 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Push yourself to give it your all and go to town fucking yourself with the dildo." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 7>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Fight against the drugs and resist using the dildo." 300 "<<spendWillpower 1>><<set $scene.action='no'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist your lusts.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Use the dildo." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Draw on your experience and go all out fucking yourself with the dildo." 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Marshal your mental energy and go all out fucking yourself with the dildo." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 10>>
<<if setup.getWillpower() > 0>>
[@@.link_locked;You are too drugged to resist having some sort of sex.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Control yourself and merely use the dildo." 1800 "<<spendWillpower 1>><<set $scene.action='yes'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist going all out.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Give in and go all out fucking yourself with the dildo." 1800 "<<set $scene.action='bonus'>>">>]
<<else>>
[@@.link_locked;You are too drugged to consider holding back in the slightest.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_2" "Go all out fucking yourself with the dildo." 1800 "<<set $scene.action='bonus'>>">>]
<</if>>
<<case 4 5>>
You look around at the orgy-in-progress.<br>
<br>
<<if $scene.drugStrength == 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Do not join the orgy." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 13 && setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Push through and join the orgy." 1800 "<<set $scene.action='yes'>><<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You cannot manage to summon sufficient arousal to join the orgy.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Dig deep into your mental reserves and draw on your love of sex to turn this orgy into a gang-bang." 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to push past the drug and exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 3>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Do not join the orgy." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 13>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Draw on your love of sex and join the orgy." 1800 "<<set $scene.action='yes'>>">>]<br>
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Push yourself to join the orgy." 1800 "<<set $scene.action='yes'>><<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to join the orgy.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 13 && setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Push yourself to enthusiastically turn this orgy into a gang-bang." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to summon up all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 5>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Do not participate in the orgy." 300 "<<set $scene.action='no'>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Join the orgy." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 13>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "An orgy? This is heaven for a slut like you, dive in!" 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Push past your reservations and go all out and see if you can't make this orgy a gang-bang of you." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 7>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Fight against the drugs and resist joining the orgy." 600 "<<spendWillpower 1>><<set $scene.action='no'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist your lusts.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Give in and join the orgy." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 13>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Draw on your experience and turn the orgy into a gang-bang of you." 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Marshal your mental energy and turn the orgy into a gang-bang of you." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 10>>
<<if setup.getWillpower() > 0>>
[@@.link_locked;You are too drugged to resist having some sort of sex.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Fight the drugs and just do what you have to in the orgy." 600 "<<spendWillpower 1>><<set $scene.action='yes'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist going all out.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Turn the orgy into a gang-bang of you." 1800 "<<set $scene.action='bonus'>>">>]
<<else>>
[@@.link_locked;You are too drugged to consider holding back in the slightest.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_3" "Turn the orgy into a gang-bang of you." 1800 "<<set $scene.action='bonus'>>">>]
<</if>>
<<case 6 7>>
You look at the donkey standing in front of you...<br>
<br>
<<if $scene.drugStrength == 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Ignore the donkey." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("bestiality") > 10 && setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Push through and blow the donkey." 1800 "<<set $scene.action='yes'>><<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You cannot manage to summon sufficient arousal to suck off the donkey.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 13 && setup.getTotalValue("bestiality") > 10 && setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Dig deep into your mental reserves and draw on your love of sex to put on a donkey show." 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to push past the drug and exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 3>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Ignore the donkey." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("bestiality") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Draw on your love of sex and blow the donkey." 1800 "<<set $scene.action='yes'>>">>]<br>
<<elseif setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Push yourself to do a donkey show." 1800 "<<set $scene.action='yes'>><<spendWillpower 2>>">>]<br>
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to suck off the donkey.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("bestiality") > 10 && setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Push yourself to enthusiastically do a donkey show." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to summon up all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 5>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "You are not going to fuck a donkey." 300 "<<set $scene.action='no'>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Suck off the donkey." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("besiality") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "A donkey show sounds like just your type of thing, go for it!" 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<elseif setup.getWillpower() >1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Grit your teeth and do a full donkey show." 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 7>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Fight back the urge to fuck the donkey." 600 "<<spendWillpower 1>><<set $scene.action='no'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist your lusts.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Give in and suck off the donkey." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("bestiality") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Draw on your experience and perform a full donkey show." 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Marshal your mental energy and perform a full donkey show." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 10>>
<<if setup.getWillpower() > 0>>
[@@.link_locked;You are too drugged to resist having some sort of sex.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Hold yourself to only sucking the donkey off." 600 "<<spendWillpower 1>><<set $scene.action='yes'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist going all out.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Enthusiastically perform a full donkey show." 1800 "<<set $scene.action='bonus'>>">>]
<<else>>
[@@.link_locked;You are too drugged to consider holding back in the slightest.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_4" "Enthusiastically perform a full donkey show." 1800 "<<set $scene.action='bonus'>>">>]
<</if>>
<<case 8 9>>
The pig looks up at you and snorts before rolling over to display a sizable, corkscrew penis...<br>
<br>
<<if $scene.drugStrength == 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "You are not going to fuck a pig." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 10 && setup.getWillpower() > 2>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Push through and blow the pig." 1800 "<<set $scene.action='yes'>><<spendWillpower 3>>">>]<br>
<<else>>
[@@.link_locked;You cannot manage to summon sufficient arousal to suck off the pig.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 17 && setup.getTotalValue("bestiality") > 10 && setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Dig deep into your mental reserves and draw on your love of sex to fuck the pig." 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to push past the drug and exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 3>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "You are not going to fuck a pig." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Draw on your love of sex and blow the pig." 1800 "<<set $scene.action='yes'>>">>]<br>
<<elseif setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Push yourself to fuck the pig." 1800 "<<set $scene.action='yes'>><<spendWillpower 2>>">>]<br>
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to suck off the pig.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("bestiality") > 10 && setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Push yourself to enthusiastically fuck the pig." 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to summon up all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 5>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "You are not going to fuck a pig." 300 "<<set $scene.action='no'>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Suck off the pig." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Oink, oink, you'd love to get porked!" 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() >1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Oink, oink, dig deep and get porked." 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 7>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Control yourself and do not fuck the pig." 600 "<<spendWillpower 1>><<set $scene.action='no'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist your lusts.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Suck off the pig." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 10>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Draw on your experience and get porked." 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Marshal your mental energy to get porked." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 10>>
<<if setup.getWillpower() > 0>>
[@@.link_locked;You are too drugged to resist having some sort of sex.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Control yourself and only suck the pig off." 600 "<<spendWillpower 1>><<set $scene.action='yes'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist going all out.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Oink, oink, get porked." 1800 "<<set $scene.action='bonus'>>">>]
<<else>>
[@@.link_locked;You are too drugged to consider holding back in the slightest.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_5" "Oink, oink, get porked." 1800 "<<set $scene.action='bonus'>>">>]
<</if>>
<<case 10 11>>
The dragon looms over you and makes its offer. "@@.npc_work_doctor;I will offer you the choice that I offer each of my prizes — you can surrender your life to my insatiable appetite... or you can serve my more carnal needs and I may decide to spare you...@@"<br>
<br>
The creature shifts slightly, giving you a view of what, for a human, would be a very massive cock emerging from between its scales. Its cock stiffens under your gaze, large and ribbed and frilled the likes of which you have never seen before.<br>
<br>
<<if $scene.drugStrength == 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "You are not going to fuck a dragon." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 13 && setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Push through and blow the dragon." 1800 "<<set $scene.action='yes'>><<spendWillpower 3>>">>]<br>
<<else>>
[@@.link_locked;You cannot manage to summon sufficient arousal to suck off the dragon.@@]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 18 && setup.getTotalValue("bestiality") > 18 && setup.getWillpower() > 2>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Dig deep into your mental reserves and draw on your love of sex to fuck the dragon." 1800 "<<set $scene.action='bonus'>><<spendWillpower 3>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to push past the drug and exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 3>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "You are not going to fuck a dragon." 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 13>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Draw on your love of sex and fuck the dragon." 1800 "<<set $scene.action='yes'>>">>]<br>
<<elseif setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Push yourself to fuck the dragon." 1800 "<<set $scene.action='yes'>><<spendWillpower 2>>">>]<br>
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to suck off the pig.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 13 && setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Push yourself to enthusiastically fuck the dragon." 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to summon up all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 5>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "You aren't going to fuck a dragon!" 300 "<<set $scene.action='no'>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Let the dragon make love to you." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 13>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "You need this — fuck the dragon." 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 2>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "You can do this, rise to the occasion and fuck the dragon." 1800 "<<set $scene.action='bonus'>><<spendWillpower 3>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 7>>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "You aren't going to fuck a dragon!" 600 "<<spendWillpower 2>><<set $scene.action='no'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist your lusts.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Let the dragon make love to you." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 13>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Draw on your experience and fuck the dragon." 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Marshal your mental energy to fuck the dragon." 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 10>>
<<if setup.getWillpower() > 1>>
[@@.link_locked;You are too drugged to resist having some sort of sex.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Hold back and let the dragon make love to you." 600 "<<spendWillpower 2>><<set $scene.action='yes'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist going all out.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Fuck the dragon." 1800 "<<set $scene.action='bonus'>>">>]
<<else>>
[@@.link_locked;You are too drugged to consider holding back in the slightest.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_6" "Fuck the dragon." 1800 "<<set $scene.action='bonus'>>">>]
<</if>>
<<case 12 13 14>>
You look around at the large insects approaching you, and their engorged ovipositors...<br>
<br>
<<if $scene.drugStrength == 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "You are not going to fuck a bunch of bugs!" 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 17 && setup.getTotalValue("bestiality") > 17 && setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Push through and survive fucking the bugs." 1800 "<<set $scene.action='yes'>><<spendWillpower 3>>">>]<br>
<<else>>
[@@.link_locked;You cannot manage to summon sufficient arousal to fuck bugs.@@]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 19 && setup.getTotalValue("bestiality") > 19 && setup.getWillpower() > 2>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Dig deep into your mental reserves and draw on your degenerate urges to take all the eggs." 1800 "<<set $scene.action='bonus'>><<spendWillpower 3>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to push past the drug and exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 3>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "You are not going to fuck a bunch of bugs!" 300 "<<set $scene.action='no'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 13>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Draw on your love of sex and survive fucking the bugs." 1800 "<<set $scene.action='yes'>>">>]<br>
<<elseif setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Push yourself to survive fucking the bugs." 1800 "<<set $scene.action='yes'>><<spendWillpower 2>>">>]<br>
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to suck off the pig.@@]
<</if>>
<<if setup.getTotalValue("bimbofication") > 18 && setup.getTotalValue("bestiality") > 18 && setup.getWillpower() > 1>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Push yourself to take all of the eggs." 1800 "<<set $scene.action='bonus'>><<spendWillpower 2>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to summon up all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 5>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "You're not going to fuck a bunch of bugs!" 300 "<<set $scene.action='no'>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Just try to endure." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 15>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Oh you're very positive you need all the eggs!" 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 2>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Show that you need all the eggs!" 1800 "<<set $scene.action='bonus'>><<spendWillpower 3>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 7>>
<<if setup.getWillpower() > 2>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Resist! You aren't going to fuck a swarm of bugs!" 600 "<<spendWillpower 3>><<set $scene.action='no'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist your lusts.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Just try and survive." 1800 "<<set $scene.action='yes'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("bestiality") > 15>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Draw on your experience, you need all the eggs!" 1800 "<<set $scene.action='bonus'>>">>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Marshal your mental energy to incubate all the eggs!" 1800 "<<set $scene.action='bonus'>><<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You do not have either the natural predilections or mental energy to exhibit all-out debauchery.@@]
<</if>>
<<elseif $scene.drugStrength < 10>>
<<if setup.getWillpower() > 1>>
[@@.link_locked;You are too drugged to resist having some sort of sex.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "Fight back against the drugs and just try to endure." 600 "<<spendWillpower 2>><<set $scene.action='yes'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the mental energy to resist going all out.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "You need all the eggs!" 1800 "<<set $scene.action='bonus'>>">>]
<<else>>
[@@.link_locked;You are too drugged to consider holding back in the slightest.@@]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_7" "You need all the eggs!" 1800 "<<set $scene.action='bonus'>>">>]
<</if>>
<<default>>
ERROR: unexpected scene.variant <<=$scene.variant>>
<</switch>>
</div><<if $npc_work_doctor.flags.aphrodisiac.stage % 2 == 0>>
<<set $npc_work_doctor.flags.aphrodisiac.stage += 1>>
<</if>>
<<switch $scene.effect>>
<<case -1 -2>>
<<switch $scene.action>>
<<case 'no'>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength -= 1>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength -= $scene.effect>>
<<case 'yes'>>
<<set $npc_work_doctor.flags.aphrodisiac.stage += 1>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength += $scene.effect>>
<<case 'bonus'>>
<<set $npc_work_doctor.flags.aphrodisiac.stage += 1>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength += $scene.effect>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength -= 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<</switch>>
<<case 0>>
<<switch $scene.action>>
<<case 'no'>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength += 1>>
<<case 'yes'>>
<<set $npc_work_doctor.flags.aphrodisiac.stage += 1>>
<<case 'bonus'>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength -= 1>>
<<set $npc_work_doctor.flags.aphrodisiac.stage += 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<</switch>>
<<case 1 2>>
<<switch $scene.action>>
<<case 'no'>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength += 1>>
<<case 'yes'>>
<<set $npc_work_doctor.flags.aphrodisiac.stage += 1>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength += $scene.effect>>
<<case 'bonus'>>
<<set $npc_work_doctor.flags.aphrodisiac.stage += 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength += 1>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength += $scene.effect>>
<</switch>>
<</switch>>
<<if $npc_work_doctor.flags.aphrodisiac.drugStrength > 10>>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength = 10>>
<<elseif $npc_work_doctor.flags.aphrodisiac.drugStrength < 0 >>
<<set $npc_work_doctor.flags.aphrodisiac.drugStrength = 0>>
<</if>>
<<if $fetish.bestiality_hard>>
<<if $npc_work_doctor.flags.aphrodisiac.stage > 14>>
<<set $npc_work_doctor.flags.aphrodisiac.stage = 14>>
<</if>>
<<else>>
<<set $scene.randRepeat = $npc_work_doctor.flags.aphrodisiac.stage > 6>>
<<if $npc_work_doctor.flags.aphrodisiac.stage > 6>>
<<set $npc_work_doctor.flags.aphrodisiac.stage = 6>>
<</if>>
<</if>>/*#
#desc: aphrodisiac trial - lab assistant
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'yes'>>
<<applyExperience 'anal' 7 'normal' $SEEN_STRANGER>>
<<case 'bonus'>>
<<applyExperience 'oral' 7 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' 7 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<</switch>>
<<include "calcAphrodisiacMod">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'no'>>
You and the <<man>> look at each other for almost a minute and then you tell <<him>> that you just aren't feeling it...<br>
<br>
The <<man>> shrugs indifferently but <<=setup.getNpcName("npc_work_doctor","formal")>> storms back into the room looking very incensed.<br>
<br>
"@@.npc_work_doctor;Dammit, I thought I had the formula worked out... now I have to rework everything! Put your clothes back on and get out of here! The both of you!@@" <<He npc_work_doctor>> rages.
<<case 'yes'>>
You look at the lab assistant and strike a pose before nodding towards the exam table and asking if <<he>> wants to fuck?<br>
<br>
<<He>> shrugs, apparently <<his>> job has rendered <<him>> quite blase to this sort of thing, but <<he>> sheds <<his>> labcoat to reveal <<if $options.fem>>a pair of shapely breasts and <</if>>a slightly above average penis.<br>
<br>
You're soon bent over the exam table moaning as <<he>> mechanically fucks your ass, pounding away for quite some time before <<he>> spurts <<his>> load and steps away.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> re-enters the room as the lab assistant is fixing <<his>> coat. "@@.npc_work_doctor;Hmm, a serviceable performance, but not quite the enthusiasm I was hoping for. I shall need to make some tweaks to the formula, and see how it works in a less mundane situation.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> dismisses the both of you and you hurry to put your clothes back on.
<<case 'bonus'>>
You smile like a demon and then leap onto the lab assistant. <<Hes>> taken aback by your aggression but puts up little resistance as you rip off <<his>> clothes and land on top of <<him>>. Jamming <<his>> cock into your ass you bounce and moan, groping yourself in <<if $npc_work_doctor.flags.aphrodisiac.drugStrength < 7>>mock <</if>>desperation as you beg <<him>> to "@@.pc;Fuck me harder!@@"<br>
<br>
Your passionate enthusiasm seems to be getting through to <<him>> as <<he>> manages to get to <<his>> feet and slam you up against the wall. You moan, continuing to encourage <<him>> to make you <<his>> bitch. Your energy can only carry things so far, however, as before long <<he>> grunts, cumming deep in your ass. <<He>> staggers away breathless as you writhe against the wall, pleading for more.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> walks back into the room with a wide smile. "@@.npc_work_doctor;Perfect, this is exactly what I was expecting! Now get your clothes back on and get out of here, the both of you! I have much to study to further refine things. I have great plans to see how your enthusiasm translates to the next level of challenge...@@"<br>
<br>
<<if $scene.effect <= 0>>
<<if $npc_work_doctor.flags.aphrodisiac.drugStrength < 5>>
You continue your act as you gather your things, making a show of putting your clothes back on as you make bedroom eyes at <<if $npc_work_doctor.fem == $options.fem>>both <<men>><<else>><<=setup.getNpcName("npc_work_doctor","formal")>> and the <<man>><</if>> and beg them to do you again.
<<else>>
You're still desperately horny and you attempt to catch one of <<if $npc_work_doctor.fem == $options.fem>>the <<if $options.fem>>women's<<else>>men's<</if>><<else>>their<</if>> eyes as you put your clothes back on.
<</if>>
Caught up in <<his npc_work_doctor>> work <<=setup.getNpcName("npc_work_doctor","formal")>> has the lab assistant drag you out of the room. In the hallway you smile; this falsified result should definitely cement your screwing up of <<his npc_work_doctor>> formula, though you get the feeling this is just the first trial you'll need to fool...
<<else>>
You're still desperately horny and you attempt to catch one of <<if $npc_work_doctor.fem == $options.fem>>the <<if $options.fem>>women's<<else>>men's<</if>><<else>>their<</if>> eyes but, in the end, <<=setup.getNpcName("npc_work_doctor","formal")>> kicks you out of the room.<br>
<br>
<<printThought "Hmm, if my aim was to screw up the test I think I failed since that seemed like exactly the effect <<he npc_work_doctor>> wanted...">>
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_elevator_home" "Get dressed and leave." 300 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: aphrodisiac trial - dildo
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _analSkill = Math.min(setup.getTotalValue("anal") + 1, 20)>>
<<switch $scene.action>>
<<case 'yes'>>
<<applyExperience 'anal' _analSkill 'normal' $SEEN_STRANGER>>
<<playerOrgasm>>
<<case 'bonus'>>
<<applyExperience 'penis' 16 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' _analSkill 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<<playerOrgasm>>
<</switch>>
<<include "calcAphrodisiacMod">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'no'>>
You look at the massive dildo and cross your arms over your chest and shake your head to signal your disinterest in violating your body with its girth.<br>
<br>
Several minutes pass as if to give you the opportunity to change your mind but, eventually, <<=setup.getNpcName("npc_work_doctor","formal")>> enters the room shaking <<his npc_work_doctor>> head.<br>
<br>
"@@.npc_work_doctor;A disappointing failure! You should be overcome with lust at the opportunity to have something like that inside of you...@@" <<He npc_work_doctor>> shakes <<his npc_work_doctor>> head and sighs "@@.npc_work_doctor;Such are the setbacks of science. Get your clothes and be off, it appears I must further refine the formula.@@"<br>
<br>
You get dressed.
<<case 'yes'>>
You approach the dildo and, with a glance towards the two-way mirror behind which <<=setup.getNpcName("npc_work_doctor","formal")>> is certainly watching, you lower yourself onto it.<br>
<br>
The thick lubricant does its work as
<<if setup.getTotalValue("anal") > 10>>
the massive dildo tests every bit of your skill.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
the large dildo pushes you to your limit.
<<else>>
the dildo stretches you to new limits.
<</if>>
<</if>>
You moan as the shaped tip moves <<if $player.body_ref.penis>>past your prostate<<else>>deeper<</if>>, your breaths coming faster as you bounce up and down.<br>
<br>
"@@.npc_work_doctor;That's a good slut.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states over the intercom. "@@.npc_work_doctor;Show how much you love it in the ass. That's right take it deep and beg for more, now faster, harder!@@"<br>
<br>
Egged on you moan, even more turned on by the humiliation of performing for the unseen audience of one. The dildo suddenly begins vibrating and you gasp, almost losing your footing as it sinks just a little bit deeper and your eyes go wide.<br>
<br>
Rising as far as you can and then slamming back down you glorify in how good it feels to be fucked hard and deep, pounding away until you climax with a gasp, spurting <<if !setup.checkItemTypeWorn("cage")>>across the floor<<else>><<if setup.isCage()>>through your cage<<else>>out the sides of your belt<</if>><</if>> before you collapse to the ground, the dildo popping free at last.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> walks into the room a minute later with a smile. "@@.npc_work_doctor;Excellently done. It would appear the drugs are working as intended... or you're just that much of a desperate slut. Either way, we shall test limits even further in the next trial. Thank you for your contribution to the cause of science. You are dismissed for the day.@@"<br>
<br>
You catch your breath and wipe drool from your lips as you glance back at the dildo and get dressed.
<<case 'bonus'>>
<<=setup.getNpcName("npc_work_doctor","formal")>> has barely left the room before you leap onto the artificial phallus. Taking but a moment to line up its thick tip with your eager hole you slam down, moaning like a slut as you sit all the way down until it has completely disappeared into your ass.<br>
<br>
"@@.pc;Yessss@@" you groan as you start grinding, increasing your pace until you are bouncing up and down with excitement.
<<if $player.body_ref.penis && $player.body.breastsize[0]>0>>
Your <<if $player.body_ref.penis>><<getWordMyPenis>> bounces around as your<</if>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive breasts almost slap you in the face
<<case 'large'>>
large breasts flop around
<<case 'medium'>>
heaving breasts jiggle up and down
<<case 'small'>>
small breasts jiggle
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
while you grope yourself.
<<elseif $player.body_ref.penis>>
<<if $player.body_ref.penis>>Your <<getWordMyPenis>> bounces around as you<<else>>You<</if>> grope yourself and revel in the hard fucking.
<<elseif $player.body.breastsize[0]>0>>
With your knees spread to put your body fully on display your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive breasts almost slap you in the face
<<case 'large'>>
large breasts flop around
<<case 'medium'>>
heaving breasts jiggle up and down
<<case 'small'>>
small, breasts jiggle
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
while you grope yourself.
<<else>>
Knees spread on display you revel in each pounding thrust as you grope your flat chest.
<</if>>
<br><br>
You're nearing a climax when the dildo in your ass suddenly bursts into vibration. You lose your balance and go slamming all the way back down, your entire body shaking as you cum, but then you just keep going. Eyes unfocused, mouth agape in full on ahegao bliss you rock your hips and beg for more, calling out "@@.pc;Yes, yes,@@" and "@@.pc;Fuck me harder!@@" as you continue your depraved display.<br>
<br>
Your insatiable ass may remain desperate for more but, eventually, your limbs give out. Your legs go limp and you fall off the dildo. It bends almost ninety degrees before popping free, spraying lube like a shaking dog as it continues vibrating for a few moments longer.<br>
<br>
Panting on the floor in a pool of sweat, drool and your ejaculate you look up as the door opens and <<=setup.getNpcName("npc_work_doctor","formal")>> strides back into the room.<br>
<br>
"@@.npc_work_doctor;Superb! The drugs are working exactly as I had intended. Oh, I am already looking forward to the next trial as we investigate what limits of debauchery they can induce...@@"<br>
<br>
You remain on the floor, still shuddering as you try to catch your breath and <<he npc_work_doctor>> frowns, nudging you with <<his npc_work_doctor>> foot. "@@.npc_work_doctor;Well, go on then, get dressed and be gone, you have served your purpose I have no further need of you today.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: aphrodisiac trial - gangbang
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'yes'>>
<<applyExperience 'oral' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 15 'normal' $SEEN_STRANGER>>
<<case 'bonus'>>
<<applyExperience 'oral' 16 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' 16 'very' $SEEN_STRANGER>>
<<applyExperience 'penis' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'cum' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'normal' $SEEN_STRANGER>>
<</switch>>
<<include "calcAphrodisiacMod">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'no'>>
You look around at the field of fornication surrounding you and take a step back. Catching the door just before it closes you return to the hallway where <<=setup.getNpcName("npc_work_doctor","formal")>> looks at you with a raised eyebrow.<br>
<br>
"@@.npc_work_doctor;Not feeling the urge to join in?@@" <<He npc_work_doctor>> asks and you shake your head.<br>
<br>
<<His npc_work_doctor>> gaze narrows and you're momentarily afraid <<he npc_work_doctor>> might force the issue.<br>
<br>
"@@.npc_work_doctor;Another failed experiment.@@" <<He npc_work_doctor>> sighs. "@@.npc_work_doctor;In that case you are useless to me today, goodbye.@@"<br>
<br>
<<He npc_work_doctor>> turns away in dismissal. You follow <<him npc_work_doctor>> back to <<his npc_work_doctor>> lab to change clothes but <<he npc_work_doctor>> makes no further acknowledgement of your presence.
<<case 'yes'>>
You look around, wondering how best to join in when a woman, her mouth wrapped around a cock, notices you and smiles. Beckoning you in she soon has the cock sliding into your ass as she kisses you. Hands grasp your hips and thrust as another <<man>> steps between the two of you.<br>
<br>
You and the woman part lips only to rejoin with the hard cock betwixt them. The woman takes your hand and guides it between her legs, humping your fingers as another woman comes up behind her with a strap-on to slide into her ass.<br>
<br>
You bend forward to lick cunt as the cock slips from your fingers only to double-up with the one already inside your ass. Pressed down and stuffed full you moan and lick.<br>
<br>
Positions change and partners rotate as you fuck and get fucked, the rolling orgy continuing on for some time before you hear <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> voice over the intercom. "@@.npc_work_doctor;That will be enough for today Miss <<=$player.last_name>>. Everything seems to have worked satisfactorily — you may go and we shall resume probing the limits of the drugs effects next time.@@"<br>
<br>
You're tempted to stay but everyone is suddenly ignoring you. You sigh at the strange happenings and then leave the room, following <<=setup.getNpcName("npc_work_doctor","formal")>> back to <<his npc_work_doctor>> lab where you change clothes and depart.
<<case 'bonus'>>
You lick your lips and lunge at the first cock you see. The <<man>> who had previously been sucking the <<getWordPenis>> starts to object but you wiggle your ass and growl at <<him>> to hurry up and start fucking you.<br>
<br>
Moments later and you're taking it from both ends, moaning with lust and reaching out for another partner as you call out for "@@.pc;More.@@"<br>
<br>
Through sheer force of will and unbounded lust you re-orient the orgy around yourself, taking two cocks at a time up your ass while you suck a third or lick cunt. Hungry for even more you finger and grope anything you can reach, unseen hands and lips returning the favour. A circle forms around you as your partners take turns shoving cocks, fingers, toys and more into you from either end as you writhe, squeeze and beg for "@@.pc;More, more, more.@@"<br>
<br>
Covered in sweat and cum your only thought is your next cock or cunt, not even noticing something different until you look up to take a facial and realise that you are jerking off <<=setup.getNpcName("npc_work_doctor","formal")>>!<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<His npc_work_doctor>> large cock swells and you let it spurt its load across your face
<<if setup.getTotalValue("cum") > 15>>
as you smile and
<<else>>
as you reflexively
<</if>>
lick up all the wonderful <<getWordCum>>.
<<else>>
<<His npc_work_doctor>> large cock swells and you jam it down your throat to pump its load straight into your belly.
<</if>>
<br><br>
<<He npc_work_doctor>> grunts and pulls back, <<his npc_work_doctor>> <<getWordPenis "npc_work_doctor">> rapidly shrinking as <<he npc_work_doctor>> tucks it back into <<his npc_work_doctor>> pants.<br>
<br>
"@@.npc_work_doctor;Yes, well... I just couldn't resist the opportunity. A great victory for science today,@@" <<he npc_work_doctor>> states as you continue to rock on the cock in your ass.
<<if $fetish.bestiality_hard>>
"@@.npc_work_doctor;The drug has had exactly the effects I was hoping for, a complete success... for today. Of course there are yet more limits to push and I look forward to seeing just how potent its effects truly are in our next test.@@"
<<else>>
"@@.npc_work_doctor;The drug has had exactly the effects I was hoping for, a complete success. You may return if you would like to help further refine things but the drug's potency appears confirmed.@@"
<</if>>
<br><br>
Casually grabbing you by the hair <<he npc_work_doctor>> half drags you away from the orgy, leading you back to <<his npc_work_doctor>> lab where you change back into your clothes and leave.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: aphrodisiac trial - donkey show
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'yes'>>
<<applyExperience 'oral' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 9 'normal' $SEEN_STRANGER>>
<<setThreshold 'bestiality' 'aphrodisiac' 'donkey'>>
<<case 'bonus'>>
<<applyExperience 'anal' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 12 'very' $SEEN_STRANGER>>
<<setThreshold 'bestiality' 'aphrodisiac' 'donkey'>>
<</switch>>
<<include "calcAphrodisiacMod">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'no'>>
You look at the donkey as it stands casually chewing and staring back at you. Glancing over at the two way mirror you shake your head and ask what the hell you're expected to do.<br>
<br>
A few moments later <<=setup.getNpcName("npc_work_doctor","formal")>> walks through the door looking frustrated. "@@.npc_work_doctor;Hmm, it would appear the drugs are less potent than I had hoped. I shall make some addition tweaks so that next time goes better. Come along, I have no more use for you today.@@"
<<case 'yes'>>
You look at the donkey and it looks back, casually chewing with disinterest. You circle around to the side and crouch down, while it is narrower than a horse it is still a male, and still impressive. You take a deep breath and reach out, your hand closing around its member as it sounds a pleased whinny.<br>
<br>
What your hand starts your mouth finishes as you kneel down and lean in, wrapping your lips around the long, floppy member and sucking away. Its taste is earthy, the beast docile and seemingly content to let you do all the work
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
as it easily slides down your throat.
<<else>>
as you carefully deep throat the entire length.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
as you struggle not to choke on its long dimensions as you take just over half of it.
<<else>>
as you focus your attentions on the head with your hands making up for your inability to take more than a third of it down your throat.
<</if>>
<</if>>
<br><br>
The beast stamps its foot, a loud "Hee-haw!" echoing in the exam room as you increase your pace. With an enthusiastic bray it cums,
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
rich, earthy
<<else>>
thick, strong
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
strong and earthy
<<else>>
bitter and disgusting
<</if>>
<</if>>
<<getWordCum>> filling your mouth and dribbling down your chin.<br>
<br>
You reflexively swallow then try to catch your breath as the donkey walks away. The door opens and <<=setup.getNpcName("npc_work_doctor","formal")>> strides in with a smile on <<his npc_work_doctor>> face.<br>
<br>
"@@.npc_work_doctor;Well done!@@" <<He npc_work_doctor>> says with a smile. "@@.npc_work_doctor;Of course there remain additional depths of depravity to probe, but so far it appears I have quite struck on the formula to induce full sexual depravity.@@"<br>
<br>
You glance back at the donkey as you leave, reflecting on what the "drugs" made you do...
<<case 'bonus'>>
You lick your lips and approach the donkey, the beast watching you with interest, as if sensing your intentions.<br>
<br>
Sliding to you knees you take its <<getWordPenis true>> in hand and bring it to your lips. Not as large as a horse it is still long and delicious and you groan with pleasure
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
as you deep-throat it with ease.
<<else>>
as you carefully deep throat its entire length.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
as you struggle not to choke on its long dimensions as you take just over half of it.
<<else>>
as you run your lips up and down the shaft.
<</if>>
<</if>>
As much as it is turning you on to suck the earthy, bestial cock you need more. You go face down and wiggle your ass and the donkey instantly understands. Slick with saliva the long cock plunges into your bowels. As the rough fur of the beasts chest rubs against your back you moan,
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
your only thought is to wish it was even bigger, even as you love the feel of its balls slapping against your ass.
<<else>>
your only thought how much you love this deep fullness, and the way it feels when its balls slap against your ass.
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
to wonder how this is even possible, as its balls slap against your ass to confirm that yes, the full length of its cock has managed to fit inside of you.
<<else>>
struggling to survive as it makes its best effort to shove its full length into a hole that is certainly much too shallow.
<</if>>
<</if>>
<br><br>
The beast brays enthusiastically and you moan, barely avoiding its sharp hooves as you take it hard and deep, matching its primal vigour until it cums. Its cock slaps your thigh on the way out as the thick goop leaks out of your ass and it wanders off.<br>
<br>
You slump to the ground. The door opens and <<=setup.getNpcName("npc_work_doctor","formal")>> walks back in, whistling in delight. "@@.npc_work_doctor;Perfection! This drug is working even better than I had hoped! A seemingly perfect formula to turn anyone into a crazed slut...@@" You fail to stir and <<he npc_work_doctor>> snorts, "@@.npc_work_doctor;Well, come on, get up! The test is over and you should be heading home. But return soon! I have many more tests to do to test the full limits of my wonderful new concoction!@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You follow <<him npc_work_doctor>> back to <<his npc_work_doctor>> lab where you dress and are dismissed.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: aphrodisiac trial - pig
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'yes'>>
<<applyExperience 'oral' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 11 'normal' $SEEN_STRANGER>>
<<setThreshold 'bestiality' 'aphrodisiac' 'pig'>>
<<case 'bonus'>>
<<applyExperience 'anal' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 13 'very' $SEEN_STRANGER>>
<<setThreshold 'bestiality' 'aphrodisiac' 'pig'>>
<</switch>>
<<include "calcAphrodisiacMod">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'no'>>
You look down at the pig and it looks up at you. There is a long moment of silence and then you pound on the door and demand to leave.<br>
<br>
The door unlocks and <<=setup.getNpcName("npc_work_doctor","formal")>> steps in. <<He npc_work_doctor>> snorts in annoyance. "@@.npc_work_doctor;Frustrating, this is hardly the effect I was aiming for... come, we are done for the day. I shall make additional adjustments before the next test.@@"
<<case 'yes'>>
You kneel down next to the pig and it rolls over to reveal a slender, corkscrew penis. You lean in and start to lick.<br>
<br>
It doesn't taste of bacon, but it also doesn't taste bad, much cleaner than the average animal cock and its curves twist interestingly in your mouth.<br>
<br>
The hog winnies in excitement and before you know it it has started to orgasm.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Its cum is sweet and salty and incredibly delicious,
<<else>>
Its cum is thick and intriguingly sweet,
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
The cum is thick and strangely sweet,
<<else>>
The cum is thick, with a nauseating sweet tang,
<</if>>
<</if>>
and there is a lot of it. You keep sucking and the pig keeps cumming, oinking in delight as it spurts and spurts for minute after minute.<br>
<br>
Feeling obligated to ride to the end you keep sucking and licking and the pig keeps cumming until you start to wonder if it is ever going to stop. Finally it rolls away and stands up, walking away from you with a big smile on its piggy face as you kneel and gasp and try to catch your breath.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> walks into the room a minute later, barely dodging the wandering pig before addressing you. "@@.npc_work_doctor;How delightfully depraved! Once again my drug proves itself. This is working even better than I had hoped and I shall be getting creative indeed for the next test...@@"
<<case 'bonus'>>
You get down on your hands and knees to nuzzle up to the pig. It doesn't take much before it rolls over to display a long, corkscrew penis and you jump on it hungrily, slurping away like it was a candy cane before the need to get on all fours overtakes you.<br>
<br>
Low to the ground to accommodate the animals short legs you moan as it LITERALLY screws you.<br>
<br>
Thin enough to work VERY deep into you the spiral penis is a unique stimulation indeed. You imagine the beast feels the same as it is not long before it cums, and cums, its orgasm stretches out for minutes as it continues to rut away and your eyes roll back. You stare up at the mirror, knowing that <<=setup.getNpcName("npc_work_doctor","formal")>> is on the other side and you oink in delight, turning up your nose and drooling like the piggy bitch that you are. You feel your belly swell and yet still the cum flows, the indefatigable creature fucking you into the floor until you are nothing but a puddle of over-fucked <<if $fetish.sissy>>sissy <</if>>slut.<br>
<br>
Finally finishing the pig backs off and trots away, oinking happily. You reach back to find its cum thick and gummy, almost sealing you closed on its own...<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> walks back in with a wide smile on <<his npc_work_doctor>> face. Noticing your leaking rear <<he npc_work_doctor>> opens a panel on one wall and pulls out a hose. Ramming it up your ass <<he npc_work_doctor>> gives you a quick and brutal enema before dragging you to your feet. You pant as the mix of water and pig cum runs down your leg as your belly returns to its normal dimensions.<br>
<br>
"@@.npc_work_doctor;Another wonderful confirmation of my brilliance!@@" <<He npc_work_doctor>> states with overbearing satisfaction. "@@.npc_work_doctor;I almost wonder if it leaves the user with any shame or limit... hopefully not, but that is why we must keep testing...@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You follow <<him npc_work_doctor>> back to <<his npc_work_doctor>> lab where you dress and are dismissed.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: aphrodisiac trial - insect hive
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'yes'>>
<<applyExperience 'oral' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 19 'normal' $SEEN_STRANGER>>
<<setThreshold 'bestiality' 'aphrodisiac' 'insect'>>
<<case 'bonus'>>
<<applyExperience 'anal' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 19 'very' $SEEN_STRANGER>>
<<setThreshold 'bestiality' 'aphrodisiac' 'insect'>>
<</switch>>
<<include "calcAphrodisiacMod">>
<</if>>
<<set $player.location to "The Queen's Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/queen.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'no'>>
The insects begin stalking towards you and you throw up your hands, squeezing your eyes shut and wishing yourself away from this hellish situation.<br>
<br>
A moment later you find yourself back in the real world with <<=setup.getNpcName("npc_work_doctor","formal")>> frowning over you. "@@.npc_work_doctor;It would seem that we have found the limits of chemistry... no, this will not do. I shall have to adjust the formula yet again.@@" <<He npc_work_doctor>> sighs in frustration and releases you from the haptic machine.
<<case 'yes'>>
The insects stalk towards you, chittering indecipherable greetings, ovipositors extending, compound eyes staring at you as they order themselves and the first of your partners approaches.<br>
<br>
Chitinous limbs manipulate you into position, a proboscis moving along your neck, making soft sucking motions in mimicry of kisses as its ovipositor presses against your ass and then slides into you. Initially thin the ovipositor still makes you gasp as it burrows deep, wending its way through your bowels. The creature's wings flutter, sending a soft breeze over you skin just before you feel a swelling as your sphincter is spread wider. You gasp as the swelling moves deeper and deeper. You feel every step of the eggs long journey until it is finally implanted, so deep you imagine it pressing against your lung.<br>
<br>
As gently as it had entered you the ovipositor pulls out in a fraction of a second, the insect fluttering away to return to its other duties in the hive as a second bug skitters forward. The path already blazed this second insertion goes even quicker. No thought seems given to your pleasure, and yet the pressure of the egg sliding into you, spreading your hole, rubbing your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>, and then moving deep, deep, deep into your bowels to join its clutch-mate has you biting your lip and softly moaning.<br>
<br>
A third suitor, then a fourth deposit their packages and you start to feel stretched. You glance back at the still long line of insects waiting to implant you with the future of the hive. Your open-mouthed moan is met by another proboscis. The extending tongue slides forth into your mouth, going directly down your throat it massages you from the inside as yet another egg is implanted, your eyelids fluttering as your breathing is constricted and you helplessly give in.<br>
<br>
You lose count of how many eggs have been stuffed into your ass, your belly distended by the massive clutch. You groan in fullness, your hand brushing over you abdomen, able to feel the bumpy shape of the eggs stretching you beyond imagination. You wake up.<br>
<br>
"@@.npc_work_doctor;Astounding.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with a smile as <<he npc_work_doctor>> places the VR visor to one side. "@@.npc_work_doctor;Well, perhaps not truly amazing, I am brilliant, after all, but it is still quite a sight to watch someone so debase themselves... even in a simulation! Thank you for participating in this test, the drug continues to perform perfectly but I have one more experiment that I wish to perform to confirm the totality of its effect.@@"<br>
<br>
<<He npc_work_doctor>> releases your restraints and you step out of the virtual reality chamber, watching the mechanical tube that had been "simulating" the ovipositor pull back into the machine. You stroke your now-flat belly and shudder at the memory. It had seemed so real...
<<case 'bonus'>>
You smile and walk towards the closest insectile monstrosity. Grabbing hold of its ovipositor you slide the tip into your rear hole then hop up, letting your weight drive the appendage deep inside of you as you wrap your arms about the creature's chitinous exoskeleton for balance.<br>
<br>
Your lips are met by a proboscis, long, flexible tongue shooting down your throat as a second creature steps up behind you, two ovipositors twisting in your rear as they burrow deep for the best implantation location.<br>
<br>
One egg, then another, slide down the long tube into you, spreading your ass and pressuring your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> in the process of being deposited deep in your body as you shudder.<br>
<br>
You try to catch your breath as you are lifted off the ground, fluttering wings carrying you into the air and hovering for easier access as a fresh bug takes you from behind and another floats in front of you. Proboscis replaced by ovipositor you are implanted from both ends, alien genitalia thrusting deep to deposit embryonic spawn.<br>
<br>
As you begin to fill up your belly swells and your body becomes too heavy to be held aloft. Gently placed back on the ground the swarming pace of your coupling only increases, wet proboscises sucking your tits and leaving hickies all over your body as ovipositor after ovipositor plunges down your throat or up your ass to make its contribution to the large clutch of young your body exists to nurture.<br>
<br>
Fully assuming the role of sedate queen you can no longer move you are so full and yet still more drones cycle through to probe and fill you, the sensation of egg after egg making the swelling journey from lips or sphincter deep into your body to join its numerous siblings near is constant, and yet making you shudder in pleasure each time.<br>
<br>
Probed and filled you have become nothing more than an incubating repository, the world going dark as if to seal your fate before you wake up, trailing drool as <<=setup.getNpcName("npc_work_doctor","formal")>> removes your mask, the mechanical appendage that had been stimulating your throat hanging loose and surprisingly long as its twin siblings retract from your ass.<br>
<br>
Restraints release and you stagger out of the haptic machine, feeling empty and small as your hand strokes your now flat belly.<br>
<br>
"@@.npc_work_doctor;Superb,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with pride. "@@.npc_work_doctor;This new drug is performing as exceptionally as I had intended, the perfect tool to turn anyone into a drooling, lust-drunk mess, enthusiastic living receptacles for depravity.@@"<br>
<br>
You wince at <<his npc_work_doctor>> words, and the memory of your eager actions in the simulation. Certainly it was not real, but would that have changed anything? Your actions were well beyond the realms of normal...<br>
<br>
As you return to the lab <<=setup.getNpcName("npc_work_doctor","formal")>> is all smiles, only half paying attention to you as <<he npc_work_doctor>> gushes in triumph. "@@.npc_work_doctor;Wonderful, wonderful! This has been the greatest test yet. <<=setup.getItemName('drug_aphrodisiac')>> has exceeded all of my high expectations and I will be putting it into production post-haste, <<=setup.getNpcName("npc_boss","formal")>> will certainly be pleased to learn that we have such an effective new tool in our arsenal...@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You follow <<him npc_work_doctor>> back to <<his npc_work_doctor>> lab, changing from the plugsuit back to your normal attire before being dismissed.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<removeItem 'plugsuit_adv' true>><<deleteItem 'plugsuit_adv'>><<removeItem 'vr_helmet_copy' true>><<deleteItem 'vr_helmet_copy'>><<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: aphrodisiac trial - dragon
#status: FINISHED 0.7.11.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'yes'>>
<<applyExperience 'anal' 20 'normal' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 18 'normal' $SEEN_STRANGER>>
<<setThreshold 'bestiality' 'aphrodisiac' 'dragon'>>
<<case 'bonus'>>
<<applyExperience 'anal' 20 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 20 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 20 'very' $SEEN_STRANGER>>
<<setThreshold 'bestiality' 'aphrodisiac' 'dragon'>>
<<include "bestialityFinalChecker">>
<</switch>>
<<include "calcAphrodisiacMod">>
<</if>>
<<set $player.location to 'A Realm of Fantasy'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/queen.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'no'>>
In your best hollywood cliche princess voice you shout out your rejection to the dragon. "@@.npc_work_doctor;Your loss, Princess.@@" Its mouth opens wide and the simulation ends.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> frowns, looking disappointed, and almost... hurt? <<He npc_work_doctor>> releases the restraints holding you into the haptic machine with a scowl. "@@.npc_work_doctor;Another dead end. Very frustrating. If that is all you are good for today then we are finished, I shall adjust the formula yet again before the next time. I feel certain I am so very close to perfection!@@"
<<case 'yes'>>
You embrace the cheese and bite your lip, surrendering yourself to the monster with a hesitant request that it "@@.pc;Be gentle...@@"<br>
<br>
Its mouth splits into a toothy grin. "@@.npc_work_doctor;Of course, Princess. I always take good care of my playthings...@@" As it speaks its claws casually snap the chains holding you to the rock. You fall only to be caught and guided onto its fantastical cock, ribs and frills teasing your insides even as it stretches you to the max.<br>
<br>
You pant with fullness as its cock hardens, so powerful that it lifts your entire body up towards its scaled belly. "@@.npc_work_doctor;Hold on tight, Princess. I would hate for you to fall.@@"<br>
<br>
You gasp as the dragon pushes off the cliff, spinning in the air and then going into a dive. You cling to its scales as the wind whips past you, your eyes streaming as the <<getWordPenis true>> impaling you flexes with each wing-beat, churning your insides as you hold as tightly as you can, your life literally hanging from its <<getWordPenis true>>.<br>
<br>
Your aerial fuck-session fades to black as you blink to find the simulation has concluded and you are again facing <<=setup.getNpcName("npc_work_doctor","formal")>>. <<He npc_work_doctor>> smiles, <<his npc_work_doctor>> voice oddly shrill compared to the processed words spoken by <<his npc_work_doctor>> draconic self-insert. "@@.npc_work_doctor;Wonderful. <<=setup.getItemTypeName('drug_aphrodisiac')>> has again met my expectations. I will be putting it into production post-haste, <<=setup.getNpcName("npc_boss","formal")>> will certainly be pleased to learn that we have such an effective new tool in our arsenal...@@"
<<case 'bonus'>>
With breathless enthusiasm you beg the dragon to take you, gushing that you volunteered on purpose, your entire goal to be claimed by it, to feel its legendary <<getWordPenis true>> pounding you, making you its own and ruining you for all <<if $options.fem>>mortals<<else>>mortal men<</if>>.<br>
<br>
The beast grins wider. "@@.npc_work_doctor;So be it,@@" it growls, crawling up the cliff, its body blotting out the sky. "@@.npc_work_doctor;First, prove your devotion with something more than words.@@" It commands before unsheathing its <<getWordPenis true>> from between its scales, the ribbed and ridged monstrosity even more fantastical than you imagined as the dick extends towards your face.<br>
<br>
Your mouth gapes wide as the magic of simulation allows you to swallow its inhumanly large member. Pinned between its hard body and the rock you would have no other choice yet you gulp with enthusiasm. Its taste is hot and spicy, magical in its intensity and you moan and strain against your restraints, eagerly sucking away even as your thoughts have already turned towards wishing to feel it somewhere else...<br>
<br>
The powerful dragon does not leave you waiting for long, pulling back as you gasp, your gaping mouth trailing drool down over your wind-swept body as it shuffles downward and then angles up to re-enter you.<br>
<br>
The beast curls its neck, a long tongue caressing your face and then teasing your distended lips as its wet cock plunges up and into you from below.<br>
<br>
True to its mythical nature the <<getWordPenis true>> feels even larger now, filling you in ways that no mortal ever could. Each thrust causes the cliff to shake as it fulfills its part of the bargain.<br>
<br>
You respond by kissing its tongue, moaning in ecstasy as the dragon slams into you, the chains binding you to the rock straining under its force, barely holding back the both of you.<br>
<br>
With a snarl it claws at your binds, its magical talons cleaving through steel with ease. Holding you to its chest the beast dives off the cliff, fucking you in mid-flight as the rush of air and the fact that you are literally bound to it by its penetrating member adding more dimensions to the intensity of the primal love-making.<br>
<br>
Flaring its wings just before you reach the ground it pulls up into a climb, the g-forces forcing you even further onto its member as you shudder, the blood rushing from your head as the sensations overwhelm you and you pass out.<br>
<br>
"@@.npc_work_doctor;Do not worry your sweet head with thinking about it.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> admonishes. "@@.npc_work_doctor;Just be happy that you have proven my exquisite alchemical acumen yet again. The new formula is nearly ready, I have but one final test to confirm its performance. Next time...@@" <<He npc_work_doctor>> grins and you wonder what diabolical act could be "worse" than what you have just endured...
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You follow <<him npc_work_doctor>> back to <<his npc_work_doctor>> lab, changing from the plugsuit back to your normal attire before being dismissed.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<removeItem 'plugsuit_adv' true>><<deleteItem 'plugsuit_adv'>><<removeItem 'vr_helmet_copy' true>><<deleteItem 'vr_helmet_copy'>><<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: ask about aphrodisiac trial repeating
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_work_doctor","formal")>> if you could do some more testing of <<his npc_work_doctor>> new aphrodisiac?<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> smiles. "@@.npc_work_doctor;Back for more! I almost wonder if there might be some lingering side effects, but no, you continue to be my eager assistant. Let us test things out and see what new thresholds of depravity you give yourself over to while under the influence. Give me a moment to make arrangements and we shall be off... oh, I am so looking forward to how you will handle today's situation...@@"<br>
<br>
Seemingly wanting to keep things a surprise <<he npc_work_doctor>> steps away before making a phonecall, leaving <<his npc_work_doctor>> terminal open with the formula for <<=setup.getItemTypeName('drug_aphrodisiac')>> up on the screen.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<printThought "Hmm, I can probably make a minor tweak and <<he npc_work_doctor>>'d never notice...">><br>
<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_2" "Amp up the effects." 120 "<<set $scene.effect=1>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_2" "Don't touch anything." 120 "<<set $scene.effect=0>>">>]<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_2" "Dampen the effects." 120 "<<set $scene.effect=-1>>">>]
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "A bit complicated, but I think I can weaken the effect without <<him npc_work_doctor>> noticing.">><br>
<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_2" "Dampen the effects." 120 "<<set $scene.effect=-1>>">>]<br>
<<else>>
You review the formula but it's all greek to you and you have no idea how to change its effects.<br>
<br>
<</if>>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_2" "Don't touch anything." 120 "<<set $scene.effect=0>>">>]
<</if>>
</div>/*#
#desc: print drug for aphrodisiac trial repeating
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.rand = random(1,12)>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.effect != 0 && setup.hasFreeTime($now, $player, $currentTasks, 10000) && !State.hasPlayed("event_work_doctor_aphrodisiac_caught_1") && $scene.rand < $npc_work_doctor.anger>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<<else>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.effect != 0 && setup.hasFreeTime($now, $player, $currentTasks, 10000) && !State.hasPlayed("event_work_doctor_aphrodisiac_caught_1") && $scene.rand < $npc_work_doctor.anger && $fetish.get_raped && $fetish.drugs>>
You're fiddling with <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> formula when you feel the hairs on the back of your neck tingle and hear the sound of someone at the door.<br>
<br>
<<printThought 'Uh, oh, <<=setup.getNpcName("npc_work_doctor","formal")>> is coming back.'>><br>
<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_2" "Abort your changes." 120 "<<set $scene.effect=0>>">>]<br>
[<<moveTo "event_work_doctor_aphrodisiac_caught_1" "Finish what you were doing." 120>>]
<<else>>
<<if $scene.effect != 0>>
You quickly finish making your tweak and then
<<else>>
Deciding not to risk it you
<</if>>
wait for <<=setup.getNpcName("npc_work_doctor","formal")>> to return.<br>
<br>
Not even glancing at things <<he npc_work_doctor>> just hits a few keys to dispense a sample of the drug. <<He npc_work_doctor>> pockets the spritzer that <<he npc_work_doctor>> uses to administer it and leads you out of the lab.<br>
<br>
[<<moveTo "event_work_doctor_help_aphrodisiac_repeat_3" "Follow." 300>>]
<</if>>
</div>/*#
#desc: arrive for aphrodisiac trial repeating
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug != "" && setup.checkItemTypeTag('plug', ['hollow'])>>
<<include "calcAphrodisiacVariant">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.randRepeat>>
<<=setup.getNpcName("npc_work_doctor","formal")>> smiles as you remove your clothing <<if $scene.removePlug>> and your butt-plug<</if>>. "@@.npc_work_doctor;You have completed every scenario I have prepared for you, but that is no reason <<=setup.getItemTypeName('drug_aphrodisiac')>> should not be tested and refined further. Thus, we shall do a confirmation test of our earlier results... I am sure you shall love it just as much as the last time. Now, come.@@" <<He npc_work_doctor>> commands with an evil, and slightly manic, grin.
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> has you remove your clothing<<if $scene.removePlug>> and your butt-plug<</if>>. "@@.npc_work_doctor;Come.@@" <<He npc_work_doctor>> commands.
<</if>>
<br><br>
<<He npc_work_doctor>> leads you through the hallways to
<<if $scene.variant <= 9>>
an exam room. With a grin <<he npc_work_doctor>> sprays you in the face with the drug and then opens the door to the room and motions for you to enter.
<<if $scene.bestiality_bypass>>
"@@.npc_work_doctor;I have some more... interesting scenes planned but I did some background research and I do not think your psyche is quite prepared for what I have in mind with the drug in this still-preliminary stage. Once you have been a bit more adventurous...@@"<br>
<br>
<<printThought "Adventurous?">> You think back to the large ARTIFICIAL horse cock <<he npc_work_doctor>> had you use, does <<he npc_work_doctor>> mean... <<printThought "But where would I find a horse in the city?">>
<</if>>
<<else>>
a room in that looks to be a top of the line full-haptic VR chamber.<br>
<br>
"@@.npc_work_doctor;This was originally commissioned by a former employee, but she ended up moving on to a position other than direct employment by the company. I much prefer the real world than silly mental things but... well, we are pushing the limits of human arousal. To properly test the potential of <<=setup.getItemName('drug_aphrodisiac')>> we must adapt to present some more... fantastical scenarios.@@"<br>
<br>
You quickly get changed into the plugsuit and step into the machine.
<</if>>
<br><br>
<<switch $scene.variant>>
<<case 0 1>>
You step into the room to find a lab assistant. You can't be sure if it's the fellow you met before and <<he>> doesn't acknowledge you in any significant way.
<<case 2 3>>
The only other thing in the room is a dildo,
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
a ginormous
<<else>>
a massive
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
a very large
<<else>>
an above average
<</if>>
<</if>>
<<if $fetish.bestiality_soft || $fetish.bestiality_hard>>equine <</if>>dildo. Right on the edge of your established capacity, it glistens ominously with lube.
<<case 4 5>>
You gasp as you look around the room to find at least half a dozen other <<if $options.fem>>women<<else>>people<</if>> in various states of copulation. They barely acknowledge you as they continue the writhing orgy in progress.
<<case 6 7>>
You find yourself face to face with a donkey. The animal brays in greeting and then looks around, as if asking if you brought it a treat.
<<case 8 9>>
In front of you is a pig, a very large pig... <<printThought "does that make it a hog?">> You wonder? Not really the sort of question living in a city your whole life has you equipped to answer.
<<case 10 11>>
The simulation loads and you find yourself high in the air. Looking around you seem to be strapped to a rock atop a steep cliff, giving you a gorgeous view of the surrounding area, and a winged beast that is rapidly flying towards you.<br>
<br>
As the creature approaches closer you recognise it as a dragon. Landing next to you it grins, its breath like a furnace as it speaks to you.<br>
<br>
"@@.npc_work_doctor;Such a beautiful Princess offering.@@" It growls. You try not to roll your eyes at hearing <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> voice run through a pitch adjuster. You imagine its deep timbre is meant to be powerful and impressive but it comes off as pretentiously cheesy.
<<case 12 13 14>>
The simulation pops up an ominous "Loading Queens Chamber" message. A few seconds second later and you are in another world. You are surrounded, insectile aliens as big as you are stalking around you. Looking around you realise that you are in a hive... as you look around you have the sneaking feeling that YOU are the queen...
<<default>>
ERROR: unexpected npc_work_doctor.flags.aphrodisiac.stage <<=$npc_work_doctor.flags.aphrodisiac.stage>>
<</switch>>
<br><br>
<<if $scene.variant <= 4>>
The door closes behind you and the drugs start to kick in...
<<else>>
There is no escape from the simulation as you feel the drugs kick in...
<</if>>
<br><br>
[<<moveTo "event_work_doctor_help_aphrodisiac_root" "Continue." 300>>]
</div><<set $scene.bestiality_bypass = $npc_work_doctor.flags.aphrodisiac.stage > 5 && !setup.hasThreshold('bestiality', 'horse', 'horsecock_expert') && $fetish.bestiality_hard>>
<<if $scene.bestiality_bypass>>
<<set $npc_work_doctor.flags.aphrodisiac.stage = 5>>
<</if>>
<<set $scene.randRepeat = false>>
<<if $fetish.bestiality_hard>>
<<set $scene.randRepeat = $npc_work_doctor.flags.aphrodisiac.stage > 14>>
<<if $scene.randRepeat>>
<<set $npc_work_doctor.flags.aphrodisiac.stage = 14>>
<<set $scene.variant = random(0,6)*2 + 1>>
<<else>>
<<set $scene.variant = $npc_work_doctor.flags.aphrodisiac.stage>>
<</if>>
<<else>>
<<set $scene.randRepeat = $npc_work_doctor.flags.aphrodisiac.stage > 5>>
<<if $scene.randRepeat>>
<<set $npc_work_doctor.flags.aphrodisiac.stage = 5>>
<<set $scene.variant = random(0,2)*2 + 1>>
<<else>>
<<set $scene.variant = $npc_work_doctor.flags.aphrodisiac.stage>>
<</if>>
<</if>>
<<if $npc_work_doctor.flags.aphrodisiac.stage > 9>>
<<addItem 'plugsuit_adv'>>
<<wearItem "plugsuit_adv" true>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<</if>>
<<if !$fetish.bestiality_hard>>
<<set $scene.effect *= 2>>
<</if>>
<<set $scene.drugStrength = Math.max(0, $npc_work_doctor.flags.aphrodisiac.drugStrength + $scene.effect)>>
<<set _horny = 10*$scene.drugStrength>>
<<changeHorny _horny>>/*#
#desc: help npc_work_doctor; bimbo - meet
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") "bimbo_brunette">>
<div id="invframe" class="scrolltext">
You walk over to the door and open it to find yourself facing a woman that makes even your transformation seem subtle.<br>
<br>
From her swelled lips, to her blank expression, to the heaving breasts that are each larger than her head, the only deviation she makes from the bimbo ideal is her ink black hair — gorgeously layered to cascade most of the way to her waist.<br>
<br>
She curtsies in greeting — the motion combined with her incredibly short skirt to give you the briefest glance at the
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
pathetically tiny, and notably un-chaste
<<else>>
sweet, and notably un-chaste
<</if>>
<<case 'spe'>>
adorably small, and notably un-chaste
<<case 'none'>>
sweet, and notably un-chaste little
<<default>>
ERROR: unhandled player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<getWordPenis false>> below, the soft bit of flesh dangling sleek and solo, without any balls behind.<br>
<br>
"@@.generic_female1;Hello, my name is <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> and I'm, like, here for an appointment with <<=setup.getNpcName("npc_work_doctor","formal")>>?@@" She states, in no way put off by your anonymising and fetishistic nurse's attire.<br>
<br>
You nod in greeting, leading her into the lab and over to where <<=setup.getNpcName("npc_work_doctor","formal")>> is waiting fiddling with <<his npc_work_doctor>> notes.<br>
<br>
Tall and slender you judge that the woman would be a few centimetres taller than you in flats... and she is hardly in flats, instead strutting confidently in towering platform heels, approaching <<=setup.getNpcName("npc_work_doctor","formal")>> directly and then moving to her knees as she reaches for <<his npc_work_doctor>> crotch.<br>
<br>
"@@.npc_work_doctor;Not today, my dear,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> responds casually as <<he npc_work_doctor>> holds her back, as if being greeted with an attempted blowjob was nothing more than a minor faux pas.<br>
<br>
"@@.generic_female1;Was there something wrong with my technique?@@" She asks, clearly confused.<br>
<br>
"@@.npc_work_doctor;Not at all, those dick-pillows of yours are an enticing delight... but we have other business today, a test of your overall progress. If you would take a seat, we shall begin.@@"<br>
<br>
<<He npc_work_doctor>> gestures towards a stool atop which is mounted a VERY large dildo.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Stefanie")>> makes no objection to the order, mounting the stool and sliding down with ease, the massive dong smoothly disappearing into her rear and leaving her sitting up tall.<br>
<br>
"@@.npc_work_doctor;Nurse, if you would join her? I think a bit of a head to head competition would provide the most useful data.@@"<br>
<br>
[<<moveTo "event_work_doctor_bimbo_2" "Take your seat..." 120>>]
</div>/*#
#desc: help npc_work_doctor; bimbo - test
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") "bimbo_brunette">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") > 10>>
You nod obediently and mount the stool, the large dildo sliding
<<if setup.getTotalValue("anal") >= 20>>
into your experienced ass with, if anything, even greater ease than it did <<=setup.getNpcName("generic_female1","custom", "Stefanie")>>.
<<elseif setup.getTotalValue("anal") > 15>>
into your rear with the same ease that <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> displayed.
<<else>>
into you with only a slight effort.
<</if>>
<<else>>
You nervously attempt to obey, the massive plug far outside your skill range as you are
<<if setup.getTotalValue("anal") > 5>>
forced to use your full bodyweight to, somehow, fit the monstrosity inside you.
<<else>>
fail so badly that <<=setup.getNpcName("npc_work_doctor","formal")>> sighs in annoyance before swapping it out for something smaller — though even that proves a struggle for your novice hole.
<</if>>
<</if>>
<br><br>
"@@.npc_work_doctor;Now you've been undergoing treatments for quite some time now, <<=setup.getNpcName("generic_female1","custom", "Stefanie")>>, but I thought we would test some of the more recent additions, starting with flexibility. If you could demonstrate your current limits?@@"<br>
<br>
Still perched upon the dildo <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> raises her legs into the air, bending them up and back until they are under her armpits and crossed behind her back.<br>
<br>
"@@.npc_work_doctor;Very good,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states in approval as <<he npc_work_doctor>> makes a note... and then flicks her exposed and vulnerable clitty. "@@.npc_work_doctor;Nurse, if you could provide a control comparison?@@"<br>
<br>
[<<moveTo "event_work_doctor_bimbo_3" "Show off your flexibility..." 180>>]
</div>/*#
#desc: help npc_work_doctor; bimbo - test results
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") "bimbo_brunette">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
Carefully maintaining your balance you duplicate <<=ps(setup.getNpcName("generic_female1","custom", "Stefanie"))>> feat with <<if setup.getTotalValue("dexterity") >= 20>>ease<<else>>only a slight effort<</if>>.
<<else>>
You lack the flexibility to duplicate <<=ps(setup.getNpcName("generic_female1","custom", "Stefanie"))>> feat, instead only getting as far as your elbows behind your knees.
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
You struggle to get your legs much above vertical — you could try to blame it on your corset, or your precariously balanced position... but really, you just aren't very flexible.
<<else>>
You fight against both your corset, and your precarious perch as you manage to get your hands behind your knees... and not much more.
<</if>>
<</if>>
<br><br>
"@@.npc_work_doctor;Interesting,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with a noncommittal nod. "@@.npc_work_doctor;The tendon relaxers appear to be working quite well... now, we were seeing some issues with over-correction in the rewiring of your sexual attraction. IF the two of you would make out? Passionately, show me how much you want to suck <<if $fetish.sissy>>sissy <</if>>face.@@"<br>
<br>
[<<moveTo "event_work_doctor_bimbo_4" "Make out enthusiastically." 180 "<<set $scene.makeout=true>>">>]<br>
[<<moveTo "event_work_doctor_bimbo_4" "Let her do the work." 180 "<<set $scene.makeout=false>>">>]
</div>/*#
#desc: help npc_work_doctor; bimbo - test making out
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.makeout>>
<<applyExperience 'bimbofication' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'submission' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<changeHorny 20>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") "bimbo_brunette">>
<div id="invframe" class="scrolltext">
<<if $scene.makeout>>
Your two stools swivel to face as you and <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> lean in, her massive breasts pressing against <<if setup.getEffectiveBreastSize() > 5>>yours<<else>>your body<</if>>, her lips tracing your gag as you softly suck on the inner dildo. Hands roam and grope as the two of you rock back and forth, fucking yourselves with the dildos upon which you sit as you passionately make out.
<<else>>
While you sit somewhat motionless as a statue <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> leans in with enthusiasm, your seat rotating in place as you remain unresponsive and she passionately kisses your gagged and masked face. Her hands roam up and down your body as she bounces up and down on the dildo upon which she sits, her massive breasts pressing against you as she grinds and gropes.
<</if>>
<br><br>
Things are interrupted by a loud beep and <<=setup.getNpcName("npc_work_doctor","formal")>> looks down at <<his npc_work_doctor>> phone and swears. "@@.npc_work_doctor;Incompetents! I need to go deal with another matter — you two <<if $fetish.sissy>>sissies<<else>>girls<</if>> just... keep doing what you're doing. I will be back shortly.@@"<br>
<br>
<<He npc_work_doctor>> starts towards the door, only to stop and turn. <<He npc_work_doctor>> taps something on <<his npc_work_doctor>> phone and yours and <<=ps(setup.getNpcName("generic_female1","custom", "Stefanie"))>> stools rise higher — your feet now well short of reaching the ground meaning that, combined with the massive dong in your rear, you really have no way of getting off... short of a quite probably very painful face-plant.<br>
<br>
"@@.npc_work_doctor;There — that ought to keep you two out of trouble. I shall return shortly.@@"<br>
<br>
As <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> continues to kiss you she whispers a single word. "@@.generic_female1;Please...@@"<br>
<br>
You get a look in her eyes, detecting a hint of desperate fear behind all the bimbo bliss, and a cry for help that she is either unable, or unwilling, to speak aloud.<br>
<br>
You glance around and realise that you are actually sitting in front of the terminal you use for mixing drugs, with just a turn of your chair you could cook something up for her...<br>
<br>
[<<moveTo "event_work_doctor_bimbo_5" 'See if you can brew up something that might counteract <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> other drugs.' 300 "<<set $scene.action='cure'>>">>]<br>
[<<moveTo "event_work_doctor_bimbo_5" 'Just wait for <<=setup.getNpcName("npc_work_doctor","formal")>> to return.' 300 "<<set $scene.action='none'>>">>]<br>
[<<moveTo "event_work_doctor_bimbo_5" 'A glimmer of hope is worse than nothing at all, mix her up something strong...' 300 "<<set $scene.action='enhance'>>">>]
</div>/*#
#desc: help npc_work_doctor; bimbo - adjust drugs
#status: FINISHED 0.8.4.0
#ignore_spell: b,s,d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") "bimbo_brunette">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'cure'>>
You turn to the mixing station, putting together a blend of Serums — not too strong, lest you tip off <<=setup.getNpcName("npc_work_doctor","formal")>> that something is off... but enough to hopefully...<br>
<br>
You turn to <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> and offer her the brew. She hesitates for a moment, but then knocks it back, the light coming on behind her eyes as a single tear runs down her cheeks.<br>
<br>
"@@.generic_female1;My god... what have I...@@" she touches her lips in shock "@@.generic_female1;Thank you, thank you, it was like I was stuck in a thick fog... my god, what am I going to do—@@"<br>
<br>
You hear a sound at the door and quickly motion for her to shush as
<<case 'none'>>
You make no move, feigning helplessness as you make no act to help or harm <<=setup.getNpcName("generic_female1","custom", "Stefanie")>>.<br>
<br>
For a moment you think you see a tear at the corner of her eye, but she keeps kissing you for several more minutes until
<<case 'enhance'>>
You steel yourself with the thought that this is "for the best" as you blend up a mix of Compounds D, S and B... the ultimate bimbo blend.<br>
<br>
You turn back to <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> and offer her the mixture. She hesitates for a moment. Gagged and masked your communications options are limited, but you try to look as gentle as you can and she finally knocks it back... and you watch the light of hope fade from her eys. Her lips turn up into an artificial smile, and she hiccups, giggling slightly and turning to the door as
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<=setup.getNpcName("npc_work_doctor","formal")>> returns.<br>
<br>
[<<moveTo "event_work_doctor_bimbo_6" 'Continue.' 300>>]
</div>/*#
#desc: help npc_work_doctor; bimbo - doctor returns
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_work_doctor.flags.bimbo_nurse = $scene.action>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") "bimbo_brunette">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> walks into the room looking obviously distracted.
<<switch $scene.action>>
<<case 'cure'>>
You watch out of the corner of your eye as <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> glares death at <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<<He npc_work_doctor>> is momentarily taken aback as you silently scream for her not to give away the plot...<br>
<br>
Maybe you do have psychic powers... or maybe it's just the <<=setup.getItemName("drug_smart")>> kicking in, but she manages to paste a smile back on her face as <<=setup.getNpcName("npc_work_doctor","formal")>> looks at her suspiciously.<br>
<br>
"@@.npc_work_doctor;No, no... this will not do. There is something off... no, it would seem that this experiment is yet another failure. Ah well, I shall send you back into the pool for whatever manager is in need of a <<if $fetish.sissy>>SISSI <</if>>Secretary. You should still serve for that... and I shall just have to find another test subject.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> presses a button and the stools lower so your feet can, once again, reach the ground. "@@.npc_work_doctor;Nurse — escort the patient to the elevator and send her back to her office. That will be all for today.@@"
<<case 'none'>>
<<=setup.getNpcName("npc_work_doctor","formal")>> pauses for a moment as <<he npc_work_doctor>> looks over <<=setup.getNpcName("generic_female1","custom", "Stefanie")>>. "@@.npc_work_doctor;Hmm, I thought I told you two to keep making out until I returned?@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Stefanie")>> hurriedly pulls you in but <<=setup.getNpcName("npc_work_doctor","formal")>> seems disinterested.<br>
<br>
"@@.npc_work_doctor;No matter, I have the results I was looking for — I think a few more days should do it. Not quite what I was hoping, but... progress does not always happen as swiftly as we like.@@"<br>
<br>
<<He npc_work_doctor>> digs a pill bottle out of <<his npc_work_doctor>> pocket and measures out several familiar pink pills. "@@.npc_work_doctor;Open wide!@@" <<He npc_work_doctor>> announces before forcing them into her mouth and holding <<his npc_work_doctor>> hand over her lips until she swallows.<br>
<br>
Her momentarily panicked expression fades to dazed lust and <<=setup.getNpcName("npc_work_doctor","formal")>> nods. "@@.npc_work_doctor;Good. Nurse, if you would take the patient to the elevator and send her back to her floor? Her manager will be expecting her back soon, and I would not wish one of my products to disappoint.@@"<br>
<br>
Your stool lowers so that you and <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> can get your feet back on the ground and rise off the anal-impaling dildo.
<<case 'enhance'>>
<<=setup.getNpcName("generic_female1","custom", "Stefanie")>> is making out with you at an almost frenzied pace as <<=setup.getNpcName("npc_work_doctor","formal")>> pauses and smiles.<br>
<br>
"@@.npc_work_doctor;Wonderful! I just love when a project shows success! Yes, I think this proves the new regimen perfectly. <<=setup.getNpcName("npc_boss","formal")>> will be delighted to hear... I think I shall show <<him npc_boss>> myself!@@"<br>
<br>
<<He npc_work_doctor>> seems to suddenly remember your presence and <<he npc_work_doctor>> uses a remote to unlock your nurse attire. "@@.npc_work_doctor;That will be all for today, nurse — you may change and depart.@@"<br>
<br>
<<He npc_work_doctor>> helps <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> off her seat and, giggling and clinging to <<his npc_work_doctor>> arm as if slightly tipsy, she follows <<him npc_work_doctor>> out of the lab. As they pass through the door <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> glances back at you, her eyes narrowing as she holds <<=setup.getNpcName("npc_work_doctor","formal")>> possessively tighter as if warning you off that this is HER <<man npc_work_doctor>>.<br>
<br>
<<printThought "What have I done? Am I becoming as bad as the company itself?">><br>
<br>
[<<moveTo "room_elevator_home" "Change and take the elevator down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != "enhance">>
<br><br>
[<<moveTo "event_work_doctor_bimbo_7" 'Lead <<=setup.getNpcName("generic_female1","custom", "Stefanie")>> out of the lab.' 180>>]
<</if>>
</div>/*#
#desc: help npc_work_doctor; bimbo - doctor returns
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Floor 121 Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" "bimbo_brunette">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'cure'>>
<<=setup.getNpcName("generic_female1","custom", "Stefanie")>> starts to thank you as you lead her to the elevator, but you subtly shake your head and bring a finger to in front of your gagged lips before gesturing around.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Stefanie")>> nods, understanding the implication in regards to the company's nigh-omnipresent surveillance. You can only hope that <<=setup.getNpcName("npc_work_doctor","formal")>> never bothers to review the tapes too closely, if they were recording at all, something tells you that <<he npc_work_doctor>> probably doesn't allow anyone else to spy on <<his npc_work_doctor>> work.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Stefanie")>> steps into the elevator and flashes a grateful smile before taking a deep breath and stapling the artificial bimbo expression onto her face. You wonder what her story is, how she got caught up in the company. You only hope what you did will prove helpful, for the amount of work she's had done you suspect she's deep enough in debt she can't just walk away... but maybe a clear head will allow her to somehow make it through without being destroyed — and at least she seems to have been dropped as <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> personal "project" — whatever that meant.
<<case 'none'>>
<<=setup.getNpcName("generic_female1","custom", "Stefanie")>> smiles and skips along next to you as you lead her to the elevator. She taps the button for her floor and waves good-bye with a cheery smile on her face. "@@.generic_female1;Thanks for the help! I, like, had fun... though I wish I could have tasted your sweet lips more. Maybe next time!@@"
<</switch>>
<br><br>
You return to the lab where <<=setup.getNpcName("npc_work_doctor","formal")>> is already hard at work. <<He npc_work_doctor>> waves you off to get changed and depart.<br>
<br>
[<<moveTo "room_elevator_home" "Take the elevator down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor; drugtest
#status: STUB 0.7.4.0
#*/
TODOfuture<<if $npc_work_doctor.forceEventId>>
<<set $scene.origSceneId = $npc_work_doctor.forceEventId>>
<<else>>
<<set _sceneOptions = ['npc_futa', 'npc_hucow', 'npc_sexdoll', 'npc_sissy_secretary', 'npc_ceo', 'npc_secretary', 'npc_nintendolls', 'bimbo']>>
<<if ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis) && (!setup.checkItemTypeWorn("cage") || setup.getChastityLevel() < 5)>>
<<set _sceneOptions.pushUnique('no_go')>>
<</if>>
<<if $fetish.milking && $npc_work_doctor.flags.hucowEvents.nerina>>
<<set _sceneOptions.pushUnique('nerina')>>
<</if>>
<<if ($player.sec_style.submission.sissyomatic != "" || !$npc_manager.flags.require_chastity) && $npc_evil_nurse.profile && $npc_psychiatrist.profile && $npc_technician.profile && !State.hasPlayed("event_nurse_doctor_ai_third_3")>>
<<if State.hasPlayed("event_nurse_doctor_ai_second_3") && setup.checkItemWorn("data_plug")>>
<<set _eventReady = true>>
<<set _sceneOptions.pushUnique('npc_ai_human_third')>>
<<elseif State.hasPlayed("event_nurse_doctor_ai_first_3") && !State.hasPlayed("event_nurse_doctor_ai_second_3")>>
<<set _eventReady = true>>
<<set _sceneOptions.pushUnique('npc_ai_human_second')>>
<<elseif !State.hasPlayed("event_nurse_doctor_ai_first_3")>>
<<set _eventReady = true>>
<<set _sceneOptions.pushUnique('npc_ai_human_first')>>
<</if>>
<</if>>
<<if $npc_manager.stage >= 5 && !State.hasPlayed("event_nursula_return_1") && State.hasPlayed("event_nurse_doctor_ai_third_4") && State.hasPlayed("event_ai_rescue_mission_5")>>
<<set _eventReady = true>>
<<set _sceneOptions.pushUnique('nurse_return')>>
<<elseif $npc_manager.stage >= 4 && !State.hasPlayed("event_nurse_sashka_1") && State.hasPlayed("event_brainscan_8")>>
<<set _eventReady = true>>
<<set _sceneOptions.pushUnique('sashka')>>
<</if>>
<<set $scene.origSceneId = _sceneOptions.random()>>
<</if>>
<<switch $scene.origSceneId>>
<<case 'bimbo'>>
<<if !$npc_work_doctor.flags.adv_drug || $npc_manager.stage < 4 || $npc_work_doctor.flags.bimbo_nurse>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'npc_futa'>>
<<if $npc_futa.stage != 4 || !$player.virgin.top_fem>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'npc_hucow'>>
<<if $npc_hucow.stage < 4 || !$fetish.milking>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'npc_sexdoll'>>
<<if $npc_sexdoll.stage < 4 || !$player.virgin.anal || $npc_sexdoll.flags.ultimateTest>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'npc_futa'>>
<<if $npc_futa.stage != 4 || !$player.virgin.top_fem>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'npc_sissy_secretary'>>
<<if $npc_sissy_secretary.stage != 4>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'npc_ceo'>>
<<if $npc_ceo.flags.dr_appointment_complete || !$player.virgin.top_fem>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'npc_secretary'>>
<<if $npc_secretary.flags.exam>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'npc_nintendolls'>>
<<if $npc_nintendolls.stage != 5 || !($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'npc_ai_human_first' 'npc_ai_human_second' 'npc_ai_human_third'>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<<case 'no_go'>>
<<if setup.getChastityLevel() == 5>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'nerina'>>
<<if !$fetish.milking || $npc_work_doctor.flags.nerina || !$npc_work_doctor.flags.hucowEvents.nerina>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'drugtest'>>
<<if $npc_work_doctor.flags.drugtest>>
<<set $scene.nurseSceneId = 'default'>>
<<else>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<</if>>
<<case 'sashka' 'nurse_return'>>
<<set $scene.nurseSceneId = $scene.origSceneId>>
<<default>>
ERROR: unexpected original: <<=$scene.origSceneId>>
<</switch>>/*#
#desc: mux for helping npc_work_doctor
#status: FINISHED 0.7.4.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.nurseSceneId>>
<<include "calcNurseEvent">>
<</if>>
<<switch $scene.nurseSceneId>>
<<case 'npc_hucow'>>
<<set $scene.first = $npc_hucow.stage == 4>>
<<if $player.flags.collar.owner == "">>
<<addItem 'medical_collar'>>
<<wearItem 'medical_collar' true>>
<</if>>
<<addItem 'medical_leash'>>
<<wearItem 'medical_leash' true>>
<<case 'npc_sexdoll'>>
<<set $scene.first = $npc_sexdoll.stage == 4>>
<<if $player.flags.collar.owner == "">>
<<addItem 'medical_collar'>>
<<wearItem 'medical_collar' true>>
<</if>>
<<addItem 'medical_leash'>>
<<wearItem 'medical_leash' true>>
<<case 'npc_sissy_secretary' 'bimbo' 'npc_futa'>>
/%no op%/
<<set _x=1>>
<<case 'npc_ceo'>>
<<set $scene.firstTime = !$npc_ceo.flags.dr_appointment>>
<<if $npc_ceo.flags.dr_appointment_complete || !$player.virgin.top_fem>>
<<set $scene.nurseSceneId = 'default'>>
<</if>>
<<case 'npc_secretary'>>
<<if $npc_secretary.flags.exam>>
<<set $scene.nurseSceneId = 'default'>>
<</if>>
<<case 'npc_nintendolls'>>
<<if $npc_nintendolls.stage != 5 || !($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
<<set $scene.nurseSceneId = 'default'>>
<</if>>
<<case 'npc_ai_human_first' 'npc_ai_human_second' 'npc_ai_human_third'>>
<<addItem "medical_hobbles">>
<<wearItem "medical_hobbles" true>>
<<case 'no_go'>>
<<set $npc_work_doctor.flags.sissyomatic_offer = true>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_sissyomatic_money'
1
'event_manager_theme_sissyomatic_permission_1'
true
>>
<<case 'drugtest' 'nerina'>>
<<if $player.flags.collar.owner == "">>
<<addItem 'medical_collar'>>
<<wearItem 'medical_collar' true>>
<</if>>
<<addItem 'medical_leash'>>
<<wearItem 'medical_leash' true>>
<<case 'sashka' 'nurse_return'>>
<<if $player.flags.collar.owner == "">>
<<addItem 'medical_collar'>>
<<wearItem 'medical_collar' true>>
<</if>>
<<addItem 'medical_leash'>>
<<wearItem 'medical_leash' true>>
<</switch>>
<<if $scene.nurseSceneId == 'default'>>
<<if $npc_work_doctor.anger > 5>>
<<if $player.flags.collar.owner == "">>
<<addItem 'medical_collar'>>
<<wearItem 'medical_collar' true>>
<</if>>
<<addItem 'medical_leash'>>
<<wearItem 'medical_leash' true>>
<</if>>
<<set $scene.finishedAll = $npc_futa.stage > 4 && ($npc_hucow.stage > 4 || !$fetish.milking) && $npc_sexdoll.stage > 4 && $npc_sissy_secretary.stage > 4 && $npc_ceo.flags.dr_appointment_complete && $npc_secretary.flags.exam && $npc_nintendolls.stage > 5 && ($npc_work_doctor.flags.sissyomatic_offer || $player.sec_style.submission.sissyomatic != "") && $npc_work_doctor.flags.bimbo_nurse && (!$fetish.milking || $npc_work_doctor.flags.nerina) && !_eventReady>>
<</if>>
<</if>>
<<switch $scene.nurseSceneId>>
<<case 'npc_futa' 'npc_sissy_secretary' 'npc_ceo' 'npc_nintendolls' 'npc_hucow' 'npc_sexdoll' 'drugtest'>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<case 'npc_secretary'>>
<<set $player.location to 'Conference Room of Social Interaction Service Syndicate Inc.'>>
<<case 'no_go' 'nerina' 'npc_ai_human_first' 'npc_ai_human_second' 'npc_ai_human_third' 'sashka' 'nurse_return'>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Basement Hospital'>>
<<case 'default' 'bimbo'>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<</switch>>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.nurseSceneId>>
<<case 'npc_futa' 'npc_sissy_secretary' 'npc_ceo' 'npc_nintendolls' 'npc_hucow' 'npc_sexdoll' 'drugtest'>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor")>>
<<case 'npc_secretary'>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_work_doctor")>>
<<case 'default' 'bimbo'>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<<case 'no_go' 'nerina' 'npc_ai_human_first' 'npc_ai_human_second' 'npc_ai_human_third' 'sashka' 'nurse_return'>>
<<createAdvBGR "./images/locations/hospital_hallway.png" setup.charImage("npc_work_doctor") "elite_guard">>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.nurseSceneId>>
<<case 'no_go'>>
You follow <<=setup.getNpcName("npc_work_doctor","formal")>> down to the subterranean hospital only to be stopped by security.<br>
<br>
You don't hear the conversation, but you can tell from <<his npc_work_doctor>> demeanour that <<=setup.getNpcName("npc_work_doctor","formal")>> is very frustrated, finally returning to you in a huff.<br>
<br>
"@@.npc_work_doctor;Well, it would seem there was an accident with one of the patients today, and they've put the whole place on lock-down. They are only allowing fully "secure" nurses in or out.@@"<br>
<br>
You're a bit puzzled as to how you could be any more "secure" and still be useful for anything and <<he npc_work_doctor>> explains.<br>
<br>
"@@.npc_work_doctor;Actually, this could be an opportunity for you. If you were interested, I could get you added to the system as an official assistant rather than the "volunteer" status you've been working under thus far. All that would be required is that you, or rather, your manager, agrees for you to be locked up in a special company-approved prototype chastity device.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
<<printThought "Chastity? I thought I got away from that!">>
<<else>>
<<printThought "What? Like my current <<if setup.isCage()>>cage<<else>>chastity belt<</if>> isn't frustrating enough?">>
<</if>>
<br><br>
"@@.npc_work_doctor;I will admit the device is somewhat severe in design, though isn't that the best kind? In any case, being in the system would also make you entitled to payment for your assistance as well, if that might make the offer even more appealing. If you are interested, just speak with your manager and get back to me. As for today, well... I guess this is it.@@"<br>
<br>
You hope whatever patient you were scheduled to visit will be okay as <<=setup.getNpcName("npc_work_doctor","formal")>> takes you back to <<his npc_work_doctor>> office and helps you change back into your normal attire.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
<<case 'npc_futa'>>
You follow <<=setup.getNpcName("npc_work_doctor","formal")>> to a room near the elevator that looks like any other normal hospital exam room you've ever seen.<br>
<br>
Entering, you find your friend <<=setup.getNpcName('npc_futa', 'first')>> already there, skirt raised as she is stroking her large <<getWordPenis false>>. Looking up with both relief and desperation, she doesn't even slow down as she greets the two of you.<br>
<br>
"@@.npc_futa;I'm sorry I just... I can't stop. Please, my <<boy>>friend couldn't even go to work today, I fucked <<him>> so hard all last night. You have to help me!@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> nods and then reaches for the straps to your gag. "@@.npc_work_doctor;Of course. Nurse, if you would start by helping the patient relax?@@"<br>
<br>
Dressed as you are, <<=setup.getNpcName('npc_futa', 'first')>> has no way of recognising you, but the way she looks at you in your latex-clad nurse attire is filled with lust and desperate need.<br>
<br>
[<<moveTo "event_work_doctor_npc_futa_1" "Suck and stroke." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_doctor_npc_futa_1" "Shake your head." 300 "<<set $scene.obey=false>>">>]
<<case 'npc_hucow'>>
You join <<=setup.getNpcName("npc_work_doctor","formal")>> down in the subterranean "hospital,"
<<if setup.getChastityLevel() == 5>>
quickly passed through security with the mere addition of collar and leash thanks to your ultra-secure <<=setup.getItemTypeName('cage')>>.
<<else>>
once again delayed in security as your <<if setup.checkItemTypeWorn("cage")>>chastity device<<else>>secure crotch harness<</if>> is checked over before you are collared and leashed.
<</if>>
Following at <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> heels, you are taken to a room where you <<if $scene.first>>are surprised to<<else>>once again<</if>> find <<=setup.getNpcName('npc_hucow', 'first')>> waiting for you — her lab coat open to expose her massive breasts, a slightly dazed expression on her face. Her bovine "attributes" have been amped up to the max, complete with a black and white mottled outfit undergarment, gloves that render her hands into clumsy hooves and a pair of cute horns peeking out through her long hair.<br>
<br>
"@@.npc_work_doctor;Good afternoon, <<=setup.getNpcName('npc_hucow', 'other')>>. I trust you are ready for your check-up? Would you kindly present.@@"<br>
<br>
<<=setup.getNpcName('npc_hucow', 'first')>> nods as she lifts her breasts as if in offering. <<=setup.getNpcName("npc_work_doctor","formal")>> pulls out <<his npc_work_doctor>> tablet and begins examining her breasts.<br>
<br>
[<<moveTo "event_work_doctor_npc_hucow_1" "Continue." 300>>]
<<case 'npc_sexdoll'>>
You again travel with <<=setup.getNpcName("npc_work_doctor","formal")>> down to the subterranean "hospital."
<<if setup.getChastityLevel() == 5>>
You zip through security with the mere addition of collar and leash thanks to your ultra-secure <<=setup.getItemTypeName('cage')>>. At <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> heels, led up the hall and into a room where you find the "patient" has already been stripped and bound.
<<else>>
Delayed at security while your <<if setup.checkItemTypeWorn("cage")>>chastity device<<else>>secure crotch harness<</if>> is checked you are eventually approved and fitted with collar and a leash to be led up the hall and into a room where you find the "patient" has already been stripped and bound.
<</if>>
Lying on her back, <<=setup.getNpcName('npc_sexdoll', 'first')>> is naked and exposed, her arms bound at her sides, a large ring gag in her mouth with straps holding her torso in place and her legs spread. She is lying atop an odd version of a medical exam table, the padded piece of furniture making an arch so that her head and legs are lower than her belly, but with everything supported and secure. Perhaps most surprising is that her small, but quite erect, <<if $fetish.sissy>>sissy <</if>>clitty is uncaged.<br>
<br>
Moving into the room, you catch a glimpse of her expression, desperate and with the telltale streaks of dried tears tracing her cheeks. Thanks to your uniform, she looks up at you without recognition, the bimbofied face of <<=setup.getNpcName('npc_sexdoll', 'first')>> staring up, milky-eyed with desperation.<br>
<br>
"@@.npc_work_doctor;Lovely, already prepared as instructed,@@" <<he npc_work_doctor>> notes before turning in your direction as <<he npc_work_doctor>> describes the situation. "@@.npc_work_doctor;This poor slut has been denied any sexual contact for twenty-four hours in preparation for this test. I imagine she is quite desperate for us to begin so let us not keep her waiting any longer.@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> lets out a whine of confirmation, thrusting her hips and wiggling her tits as best she can in her bonds to earn herself a hard tit slap that sends her heavy nipple rings bouncing as <<=setup.getNpcName("npc_work_doctor","formal")>> glances through her file. "@@.npc_work_doctor;Quiet down there, slut, we'll be attending to you shortly.@@"<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_1" "Time for the exam." 300>>]
<<case 'npc_sissy_secretary'>>
Traveling with <<=setup.getNpcName("npc_work_doctor","formal")>> to a nearby exam room, you find <<=setup.getNpcName('npc_sissy_secretary', 'full')>> nervously sitting on the exam table waiting for you.<br>
<br>
[<<moveTo "event_work_doctor_npc_sissy_secretary_1" "Continue." 300>>]
<<case 'nerina'>>
<<=setup.getNpcName("npc_work_doctor","formal")>> takes you to the elevator and lower down than even the hospital area. A stern guard obviously recognises <<=setup.getNpcName("npc_work_doctor","formal")>>, yet still checks <<his npc_work_doctor>> credentials before double checking your leash attachment.<br>
<br>
"@@.npc_work_doctor;Come along, Nurse. We have a very special project to be checking in on, today.@@"<br>
<br>
You follow along behind <<=setup.getNpcName("npc_work_doctor","formal")>> as the guard buzzes you through the security checkpoint.<br>
<br>
[<<moveTo "event_work_doctor_nerina_1" "Continue." 1800>>]
<<case 'npc_secretary'>>
Accompanying <<=setup.getNpcName("npc_work_doctor","formal")>>, you board the elevator and travel up, up, up finally disembarking on one of the highest "executive" floors and heading for a conference room where a stunningly beautiful woman is sitting waiting for you.<br>
<br>
<<if $npc_secretary.stage < 2>>
<<if $npc_secretary.flags.checkedPicture>>
If your jaw was not already spread by a gag, it would drop as you realise that this is your predecessor, <<=setup.getNpcName("npc_secretary","nickname")>>. Her breasts and rear have been greatly "enhanced" compared to the picture over your desk, but it is definitely her.
<<else>>
There is something strangely familiar about the woman before you. Breasts and rear have swelled to bimbo-riffic levels, but the face and outfit reminds you of the picture that used to hang over your desk.
<</if>>
<<else>>
You recognise the extreme bimbofied version of your predecessor, her swelled rear, and oversized breasts and lusty gaze a harbinger of what goes on on the so-called "upper floors."
<</if>>
"@@.npc_work_doctor;<<=setup.getNpcName("npc_secretary","other")>>, hello, again. I believe you were scheduled for another check-up?@@"<br>
<br>
The woman nods.<br>
<br>
"@@.npc_work_doctor;Wonderful, if you could begin by stripping naked we will get started.@@"<br>
<br>
Without so much as a word or twitch of reluctance, the woman begins shedding her clothes, unbuttoning her tight blouse to reveal a sexy bra barely containing a pair of large, perfect, and pierced, breasts. Kicking out of her steep heels, she rolls down her pantyhose before unzipping her pencil skirt to reveal a low profile polished steel chastity belt rounding her hips and dipping between her legs.<br>
<br>
"@@.npc_work_doctor;What did you do to get locked up this time?@@" <<=setup.getNpcName("npc_work_doctor","formal")>> asks with a chuckle, the woman blushing slightly as <<he npc_work_doctor>> turns to <<his npc_work_doctor>> notepad. "@@.npc_work_doctor;No matter, I have the code right here and... there.@@"<br>
<br>
With a gentle click, the belt unlocks. The woman removes the chastity belt to reveal a smooth, hairless pussy, placing the belt with the rest of her clothes before resuming standing naked before you.<br>
<br>
[<<moveTo "event_work_doctor_npc_secretary_1" "Continue watching the exam." 300>>]
<<case 'npc_ceo'>>
Leading the way out of <<his npc_work_doctor>> office, <<=setup.getNpcName("npc_work_doctor","formal")>> takes you not down to the subterranean "hospital," but just up the hall to an exam room. There is nobody yet inside and you notice that <<=setup.getNpcName('npc_work_doctor', 'formal')>> seems slightly nervous.<br>
<br>
<<printThought "Hmm, <<he npc_work_doctor>> must be expecting a really important patient...">><br>
<br>
<<if $scene.firstTime>>
A minute or two later two people come through the door — a bouncy, bubbly girl dressed quite slutty, and a stern looking <<man npc_ceo_butler>> dressed in a tuxedo.
<<else>>
A minute or two later two people come through the door — the bouncy, bubbly girl and her stern tuxedo-dressed... owner? escort? You realise you aren't quite certain what their relationship exactly is.
<</if>>
<br><br>
"@@.npc_ceo;Hiya, <<=setup.getNpcName('npc_work_doctor', 'Twiggy')>>@@" the girl calls out in greeting, throwing her arms around <<his npc_work_doctor>> in a hug. "@@.npc_ceo;I'm here for, like, my check-up?@@"<br>
<br>
"@@.npc_work_doctor;Yes...@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> states nervously. "@@.npc_work_doctor;If you would please hop up into the exam chair we can get started.@@"<br>
<br>
With a wide grin on her face, the girl hops onto the chair, hitting the button for the stirrups as she leans back, exposing a caged <<if $fetish.sissy>>sissy <</if>>clitty and a plugged rear under her too-short skirt.<br>
<br>
"@@.npc_ceo;Aww, this one doesn't have restraints! I promise not to talk back though if you, like, want to take advantage of me!@@"<br>
<br>
You can't help but gawk at the woman's behaviour, and the way that <<=setup.getNpcName('npc_work_doctor', 'formal')>> reacts nervously to her excessive sluttery. You glance at the butler looking <<man npc_ceo_butler>> who seems to be her escort, wondering who <<he npc_ceo_butler>> could be to warrant such concern from <<=setup.getNpcName('npc_work_doctor', 'formal')>>.<br>
<br>
[<<moveTo "event_work_doctor_ceo_1" "Watch the exam." 300>>]
<<case 'bimbo'>>
Rather than leading you out of <<his npc_work_doctor>> office <<=setup.getNpcName("npc_work_doctor","formal")>> checks the time. "@@.npc_work_doctor;Excellent! I am reviewing a bit of a special project today, and your assistance should make the whole process go much better!@@"<br>
<br>
There is a knock on the lab door and <<=setup.getNpcName("npc_work_doctor","formal")>> smiles, "@@.npc_work_doctor;Ah! That must be them now! A personal project that, so far, has been coming along VERY nicely. Well, go on, Nurse — get the door.@@"<br>
<br>
<<He npc_work_doctor>> gives you a smack on the ass as <<he npc_work_doctor>> softly chuckles.<br>
<br>
[<<moveTo "event_work_doctor_bimbo_1" "Get the door." 60>>]
<<case 'npc_nintendolls'>>
Leading the way out of <<his npc_work_doctor>> office, <<=setup.getNpcName("npc_work_doctor","formal")>> takes you just up the hall to an exam room. Walking inside, you find yourself face to face with <<=setup.getNpcName('npc_nintendolls', 'formal')>> and <<his npc_nintendolls>> nigh helplessly bound "assistant." The fact that <<=setup.getNpcName('npc_nintendolls', 'formal')>> glances past you without recognising you thanks to your nurse's outfit gives you a strange thrill.<br>
<br>
"@@.npc_work_doctor;So, <<=setup.getNpcName('npc_nintendolls', 'other')>>, what seems to be the problem today?@@"<br>
<br>
[<<moveTo "event_work_doctor_help_nintendolls_1" "Listen to the exam." 300>>]
<<case 'drugtest'>>
/%TODOfuture%/
<<=setup.getNpcName("npc_work_doctor","formal")>> seems in a particularly good mood as <<he npc_work_doctor>> takes you down to the subterranean hospital.
<<if setup.getChastityLevel() == 5>>
You zip through security with the mere addition of collar and leash thanks to your ultra-secure <<=setup.getItemTypeName('cage')>>.
<<else>>
Delayed at security while your <<if setup.checkItemTypeWorn("cage")>>chastity device<<else>>secure crotch harness<</if>> is checked you are eventually approved and fitted with collar and a leash.
<</if>>
Taking hold of your leash, <<he npc_work_doctor>> brings you to a room where you find a trio of caged girls, each blindfolded and helpless, bent double in the cramped cages, the only real way to differentiate them is the fact that each is wearing a different coloured collar — red, green, and blue.<br>
<br>
"@@.npc_work_doctor;Today we'll be doing something a bit different. A bit of a trial,@@" <<he npc_work_doctor>> explains. "@@.npc_work_doctor;So, I will be focusing on recording the results of the experiment while you administer things.@@"<br>
<br>
Detaching your leash, <<he npc_work_doctor>> steps into a glass-walled observation booth, leaving you outside with the caged girls as <<he npc_work_doctor>> locks the door and takes a seat.<br>
<br>
<<His npc_work_doctor>> voice is a bit mechanical as <<he npc_work_doctor>> speaks through a microphone. "@@.npc_work_doctor;If you would please release the girls from their cages and then administer their doses we can get started — we have A, B and a placebo so we should be a good range of reactions.@@"<br>
<br>
[<<moveTo "event_work_doctor_help_drugtest_1" "Continue." 300>>]
<<case 'npc_ai_human_first'>>
You follow <<=setup.getNpcName("npc_work_doctor","formal")>> down the elevator to a deeper level than you have ever ventured before.<br>
<br>
Clearing an even more thorough security checkpoint <<if setup.checkItemTypeWorn("cage")>>your <<=setup.getItemTypeName("cage")>> is<<else>>you are<</if>> scanned and inspected and ankle to wrist hobble cuffs are added to your outfit before you are allowed to follow <<=setup.getNpcName("npc_work_doctor","formal")>> further.<br>
<br>
"@@.npc_work_doctor;We call this ward the asylum — it is where we send those patients who are most severely a danger to themselves, others, or the company as a whole. Today we will be checking in on one of my most challenging patients, and one of the asylum's longest residents...@@"<br>
<br>
Your chains clink with every move as you follow along on <<his npc_work_doctor>> leash. Effectively a prisoner yourself, you shiver reflexively at the realisation that this even deeper level of subjugation exists beneath the company's headquarters.<br>
<br>
[<<moveTo "event_nurse_doctor_ai_first_1" "Follow obediently... like you have a choice." 300>>]
<<case 'npc_ai_human_second'>>
<<=setup.getNpcName("npc_work_doctor","formal")>> smiles as <<he npc_work_doctor>> leads you to the elevator and keys in the clearance to descend to the asylum level.<br>
<br>
"@@.npc_work_doctor;Your efforts have been successful in helping <<=setup.getNpcName("npc_ai_human","formal")>> recover her memory, she asks about you constantly and I think another visit will be a good reward to help encourage further progress.@@"<br>
<br>
You are unable to respond, of course, instead merely following along as your <<=setup.getItemTypeName("cage")>> is scanned and inspected and you are hobbled and collared to trail <<=setup.getNpcName("npc_work_doctor","formal")>> through the asylum and back to <<=ps(setup.getNpcName("npc_ai_human","formal"))>> cell.<br>
<br>
[<<moveTo "event_nurse_doctor_ai_second_1" "Follow obediently." 300>>]
<<case 'npc_ai_human_third'>>
<<=setup.getNpcName("npc_work_doctor","formal")>> smiles as <<he npc_work_doctor>> leads you to the elevator and keys in the clearance for the asylum level.<br>
<br>
"@@.npc_work_doctor;<<=setup.getNpcName("npc_evil_nurse","formal")>> has actually requested your presence personally. I was surprised, I admit, there was a period where she seemed jealous of your success, but it would appear that some time alone, and some adjustments to her medication has helped her move past that. So, today, the two of you can join forces to really pump <<=setup.getNpcName("npc_ai_human","formal")>> for information.@@" <<He npc_work_doctor>> pauses as the elevator continues to descend only to seemingly suddenly recall <<his npc_work_doctor>> cover story "@@.npc_work_doctor;Oh, and, of course, help her continued journey towards regaining her facilities. Working through her memories and embracing her prior work is, I believe, key to such recovery.@@"<br>
<br>
Gagged as always you can make no comment, soon scanned, hobbled and collared to trail <<=setup.getNpcName("npc_work_doctor","formal")>> through the asylum and back to <<=ps(setup.getNpcName("npc_ai_human","formal"))>> cell.<br>
<br>
<<if setup.isItemEquipped("data_plug")>>
As you walk through the asylum you feel the massive plug shifting in your rear.<br>
<br>
<<printThought 'I wonder what data <<=setup.getNpcName("npc_ai","first")>> is packing away inside my bum?'>><br>
<br>
[<<moveTo "event_nurse_doctor_ai_third_1" "Follow obediently." 300>>]
<<else>>
As you step off the elevator your <<if setup.checkItemTypeWorn("cage")>><<=setup.getItemTypeName("plug")>> shifts... reminding you that it is NOT<<else>>rear clenches and you are reminded that you are unplugged, more specifically, not equipped with<</if>> the <<=setup.getItemName("data_plug")>> that you were instructed to wear...<br>
<br>
You curse your foolishness... and it seems failure is a trend as you spend but a few minutes in <<=ps(setup.getNpcName("npc_ai_human","formal"))>> private cell as it turns out that <<=setup.getNpcName("npc_evil_nurse","formal")>> has worked her "too hard" — the poor Engineer passed out with an IV-drip pumping her full of one of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> concoctions to "recover." <br>
<br>
After punishing <<=setup.getNpcName("npc_evil_nurse","formal")>> with a series of electric shocks that send the sadistic, faceless nurse to her knees <<=setup.getNpcName("npc_work_doctor","formal")>> leads the way back to <<his npc_work_doctor>> lab where you change out of your nurse attire and depart.<br>
<br>
[<<moveTo "room_elevator_home" "Leave." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
<</if>>
<<case 'sashka' 'nurse_return'>>
You descend with <<=setup.getNpcName("npc_work_doctor","formal")>> once again down in the subterranean "hospital,"
<<if setup.getChastityLevel() == 5>>
quickly passed through security with the mere addition of collar and leash thanks to your ultra-secure <<=setup.getItemTypeName('cage')>>.
<<else>>
once again delayed in security as your <<if setup.checkItemTypeWorn("cage")>>chastity device<<else>>secure crotch harness<</if>> is checked over before you are collared and leashed.
<</if>>
Following at <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> heels, you are taken to a particularly secure room with the ominous label "Project #9718." Authenticating <<him npc_work_doctor>>self for the security system <<=setup.getNpcName("npc_work_doctor","formal")>> motions you in with a grin.<br>
<br>
<<if $scene.nurseSceneId == "sashka">>
[<<moveTo "event_nurse_sashka_1" "Continue." 300>>]
<<else>>
[<<moveTo "event_nursula_return_1" "Continue." 300>>]
<</if>>
<<case 'default'>>
<<if $npc_work_doctor.anger > 5>>
You join <<=setup.getNpcName("npc_work_doctor","formal")>> on <<his npc_work_doctor>> rounds as <<he npc_work_doctor>> "checks in" on various patients in the subterranean, secure hospital.<br>
<br>
Though it is as arousing as always, nothing particularly interesting happens and, as you return to <<his npc_work_doctor>> office and change back into your normal clothes, you can't help but reflect how dressing as a fetishistic nurse and assisting in administering such perverted "treatments" has somehow become... mundane.<br>
<br>
<<if $npc_work_doctor.anger > 7>>
<<=setup.getNpcName("npc_work_doctor","formal")>> remains in the room watching you like a hawk the entire time, staying with you until you are completely changed out of the nurse's uniform and back into "normal" clothing and sending you on your way.
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> remains in the room until you have finished changing, looking at you with lust mixed with unvoiced suspicion.
<</if>>
<br><br>
<<printThought "Hmm, I wonder if I could build up <<his npc_work_doctor>> trust and get some unsupervised time in <<his npc_work_doctor>> lab...">><br>
<br>
<<if $scene.finishedAll>>
You may continue to curry favour and investigate the company's R&D department with <<=setup.getNpcName("npc_work_doctor","formal")>> for the future, but you have experienced all "unique" nurse events.<br>
<br>
<</if>>
[<<moveTo "room_elevator_home" "Leave." 300 "<<removeItemSet 'nurse_work_outfit_unleashed' true>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<removeItem 'medical_leash' true>><<deleteItem 'medical_leash'>><<useClothSetPop 'tmp'>>">>]
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> waits for you to change but, rather than leading you off on <<his npc_work_doctor>> rounds, <<he npc_work_doctor>> takes you to one of the lab stations in <<his npc_work_doctor>> office.<br>
<br>
"@@.npc_work_doctor;All that running around and checking in on patients is fun, but this is the real bulk of my responsibilities, preparing and perfecting new medications. I have some important experiments that I need to monitor so I thought I could trust you to put the knowledge I taught you to use and prepare some custom medications for me.@@"<br>
<br>
You can't help wonder why, if you were just going to stay in the lab working a terminal, you needed to get all changed into the fetishistic nurse's outfit, but that same outfit's gag means you can't exactly inquire or object.<br>
<br>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication") || setup.getTotalValue("bimbofication") > 10>>
<<He npc_work_doctor>> looks about to leave when <<he npc_work_doctor>> pauses. "@@.npc_work_doctor;Hmm, actually, given your bouts of ditziness this might be a bit beyond your capabilities. I can offer a drug to temporarily suppress those urges and let you focus more clearly, it has a few short term side effects including depressed libido, but they are, as I said, short-term.@@"<br>
<br>
[<<moveTo "event_work_doctor_help_lab_1_antibimbo" "Accept <<his npc_work_doctor>> offer." 300>>]<br>
[<<moveTo "event_work_doctor_help_lab_1" "Decline and start working." 300>>]
<<else>>
"@@.npc_work_doctor;Just read the prompts and follow the instructions, nice and simple.@@" <<He npc_work_doctor>> explains before leaving you to it.<br>
<br>
[<<moveTo "event_work_doctor_help_lab_1" "Start working." 300>>]
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene ID <<=$scene.nurseSceneId>>
<</switch>>
</div><<if $scene.pickmeupBonus>>
Just before you leave <<=setup.getNpcName("npc_work_doctor","formal")>> tosses you a small bit of wrapped candy.<br>
<br>
"@@.npc_work_doctor;A little pick-me-up for your trouble. You worked hard today, I thought you could use a hand in recovering.@@"<br>
<br>
<</if>>/*#
#desc: npc_work_doctor cryptic schedule notes
#status: RELEASED 0.9.4.0
#ignore_spell: mooo,mooing
#*/
<<switch $scene.origSceneId>>
<<case 'bimbo'>>
"@@.npc_work_doctor;Future vision.@@"
<<case 'npc_futa'>>
"@@.npc_work_doctor;Cocky <<if $fetish.slurs>>bitch<<else>>upstart<</if>>.@@"
<<case 'npc_hucow'>>
"@@.npc_work_doctor;Mooo.@@"
<<case 'npc_sexdoll'>>
"@@.npc_work_doctor;Fuckdoll.@@"
<<case 'npc_sissy_secretary'>>
"@@.npc_work_doctor;<<=ps(setup.getNpcName("npc_rival","formal"))>> whelp.@@"
<<case 'npc_ceo'>>
"@@.npc_work_doctor;Old patient.@@"
<<case 'npc_secretary'>>
"@@.npc_work_doctor;Boss priority job.@@"
<<case 'nurse_return' 'sashka'>>
"@@.npc_work_doctor;Developer check-in.@@"
<<case 'npc_nintendolls'>>
"@@.npc_work_doctor;Outsider.@@"
<<case 'npc_ai_human_first' 'npc_ai_human_second' 'npc_ai_human_third'>>
"@@.npc_work_doctor;Stubborn patient.@@"
<<case 'no_go'>>
"@@.npc_work_doctor;Important check-up!@@"
<<case 'nerina'>>
"@@.npc_work_doctor;Mooing infinite.@@"
<<case 'drugtest'>>
"@@.npc_work_doctor;Supply run.@@"
<<case 'default'>>
"@@.npc_work_doctor;Boring day.@@"
<</switch>>/*#
#desc: npc_work_doctor tracking
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.nurseSceneId>>
<<include "calcNurseEvent">>
<</if>>
<</if>>
<<set $player.location = "Employee Portal">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
You check out <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> evening schedule, <<his npc_work_doctor>> notes are clearly not written with anyone else's comprehension in mind, composed of too-brief phrases of significant meaning only to the writer.<br>
<br>
<<include "printWorkDoctorSchedule">>
<br><br>
<<printThought "Well that's cryptic...">><br>
<br>
<<if $daily.rerollDr>>
[@@.link_locked;You already tried shuffling <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule today.@@]<br>
<<else>>
<<if setup.getTotalValue("smart") >= 20>>
<<printThought "Hmm... I wonder if I could hack <<his npc_work_doctor>> schedule?">><br>
<br>
[<<moveTo "event_work_doctor_schedule_2" 'Hack <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule.' 1>>]
<<elseif setup.hasPermBonus("smart", "cyber")>>
"@@.npc_ai;<<uc 'I can attempt to re-arrange <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule, if that would be useful to you, Unit'>> <<uc $player.first_name>>.@@" Comes <<=ps(setup.getNpcName("npc_ai","first"))>> disembodied voice speaking within your mind.<br>
<br>
[<<moveTo "event_work_doctor_schedule_2" 'Have <<=setup.getNpcName("npc_ai","first")>> hack <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule.' 1>>]<br>
<<elseif $npc_manager.stage < 5 && $npc_ai.flags.missions.connection || State.hasPlayed("event_ai_stage5_infiltrate_14")>>
[<<moveTo "event_work_doctor_schedule_2" 'Ask <<=setup.getNpcName("npc_ai","first")>> to hack <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule.' 1>>]<br>
<</if>>
<</if>>
[<<moveTo "room_employee_tracking" "Main Menu." 0>>]<br>
[<<moveTo $scene.returnFromEmployee "Close application and return to your desk." 0>>]
</div>/*#
#desc: npc_work_doctor tracking
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.rerollDr = true>>
<<if !$npc_work_doctor.forceEventId>>
<<include "calcNurseEvent">>
<</if>>
<</if>>
<<set $player.location = "Employee Portal">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
<<if $npc_work_doctor.forceEventId>>
<<if setup.getTotalValue("smart") >= 20>>
You attempt to re-jigger <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule, but you can't find anything else to swap in for it.
<<else>>
You ask <<=setup.getNpcName('npc_ai', 'first')>> to re-jigger <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule and she reports back a moment later. "@@.npc_ai;<<uc 'I am sorry, Unit'>> <<uc $player.first_name>>. <<uc 'I cannot find any other alternate events to swap in without raising alarms.'>>@@"
<</if>>
<br><br>
<<printThought "Something so important, I should probably check into this further.">><br>
<br>
You review <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule, <<his npc_work_doctor>> lists <<include "printWorkDoctorSchedule">>.
<<else>>
<<if setup.getTotalValue("smart") >= 20>>
You re-jigger <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule.
<<else>>
You ask <<=setup.getNpcName('npc_ai', 'first')>> to re-jigger <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule. "@@.npc_ai;<<uc 'I have made an update, Unit'>> <<uc $player.first_name>>.@@"
<</if>>
You review <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> updated schedule, <<his npc_work_doctor>> now lists <<include "printWorkDoctorSchedule">>.
<</if>>
<br><br>
[<<moveTo "room_employee_tracking" "Main Menu." 0>>]<br>
[<<moveTo $scene.returnFromEmployee "Close application and return to your desk." 0>>]
</div>/*#
#desc: help npc_work_doctor in the lab
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'bimbo_suppressant'>>
<<if setup.hasTmpEffect('bimbo_suppressant_hangover')>>
<<cancelTmpEffect 'bimbo_suppressant_hangover'>>
<</if>>
<<applyStress 20>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You accept <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> offer and <<he npc_work_doctor>> hands you a large, dull coloured pill. Quite bitter you swallow it as fast as you can, feeling your mind suddenly sharpen and your arousal drop through the floor.<br>
<br>
"@@.npc_work_doctor;There we go, well, I shall leave you to your work then.@@"<br>
<br>
You nod slowly, your previous sexual urges seemingly replaced by a stressed need to serve...<br>
<br>
[<<moveTo "event_work_doctor_help_lab_1" "Start working." 300>>]
</div>/*#
#desc: help npc_work_doctor in the lab
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_work_doctor.flags.lab++>>
<<include "randomDoctorDrug">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You look across the lab station and review the straightforward process. There is a list of prescriptions, dispensers for each of the six drugs and a machine for mixing and converting them into convenient pill form.<br>
<br>
Skimming the list each set of requirements is simple with the exception of the final prescription that remains in raw text form rather than being broken down to the chemical formula.<br>
<br>
You realise that <<=setup.getNpcName("npc_work_doctor","formal")>> must trust you quite a bit to rely on you for such important work though, on the other hand, do you really want to directly assist in distributing <<his npc_work_doctor>> powerful drugs?<br>
<br>
<<if $scene.finishedAll>>
You may continue to mix drugs for fun and "profit," but you have experienced all current "unique" nurse events.<br>
<br>
<</if>>
<<if setup.hasTmpEffect('bimbo_suppressant')>>
[@@.link_locked;You are filled with the urge to obey; purposefully screwing up is almost unimaginable.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_help_lab_2" "Purposefully screw up prescriptions." 60 "<<set $scene.obey=false>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_help_lab_2" "Do your best to get things right." 60 "<<set $scene.obey=true>>">>]
</div>/*#
#desc: help npc_work_doctor in the lab; work
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<if setup.getTotalValue("smart") >= setup.getTotalValue("bimbofication")>>
<<set $scene.base_success = setup.getTotalValue("smart")/12>>
<<elseif setup.hasTmpEffect('bimbo_suppressant')>>
<<set $scene.base_success = .7>>
<<else>>
<<set $scene.base_success = (setup.getTotalValue("smart") - setup.getTotalValue("bimbofication")*.2)/12>>
<</if>>
<<else>>
<<set $scene.base_success = 0>>
<</if>>
<<set $scene.mix_success = $scene.base_success>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Given that the company will do its "work" with or without your help, you decide to take this opportunity to continue to gain trust in hopes of gaining more privileges.
<<if setup.getTotalValue("smart") >= setup.getTotalValue("bimbofication")>>
<<if $scene.mix_success >= 1>>
You confidently mix prescriptions per instructions.
<<elseif $scene.mix_success >= .8>>
You think you did a pretty good job mixing up prescriptions as required.
<<elseif $scene.mix_success >= .4>>
You do your best to mix prescriptions, but have a feeling that you made quite a few mistakes.
<<else>>
Though you try to focus you're far too distracted by the thought of all the fun things the various drugs could do to your body. Quickly bored of the monotony of straining to follow the instructions you just mix prescriptions randomly as you rush through.
<</if>>
<<elseif setup.hasTmpEffect('bimbo_suppressant')>>
Thanks to the drug <<=setup.getNpcName("npc_work_doctor","formal")>> administered you are able to focus on the task at hand, in fact you have difficulty doing anything else and you do your best to follow the directions exactly.
<<else>>
<<if $scene.mix_success >= 1>>
Somehow, despite your ditzy slut-brain, you think you managed to get everything mixed correctly.
<<elseif $scene.mix_success >= .8>>
As always, you find yourself constantly distracted by the thought of sex and you're pretty sure it resulted in you making a few mistakes.
<<elseif $scene.mix_success >= .4>>
Chemistry is, like, way hard. You try, but your bimbo brain struggles and you're certain you made quite a number of mistakes.
<<else>>
Chemistry is like... SO BORING, and you soon give up and just rush through most of the list mixing at random.
<</if>>
<</if>>
<br><br>
With the "basic" stuff out of the way you look at the list of requirements for the final prescription and try to figure out what blend is required.<br>
<br>
<<include "randomDoctorDrugText">>
<br><br>
<<include "event_doctor_training_test">><br>
<br>
<<if setup.getTotalValue("smart") > 15>>
<<set _hint = []>>
<<if $scene.breasts_req>>
<<set _hint.push("<<=setup.getItemName('drug_breast')>>")>>
<</if>>
<<if $scene.ditzy_req>>
<<set _hint.push("<<=setup.getItemName('drug_ditzy')>>")>>
<</if>>
<<if $scene.slave_req>>
<<set _hint.push("<<=setup.getItemName('drug_slave')>>")>>
<</if>>
<<if $scene.dick_req>>
<<set _hint.push("<<=setup.getItemName('drug_dick')>>")>>
<</if>>
<<if $scene.smart_req>>
<<set _hint.push("<<=setup.getItemName('drug_smart')>>")>>
<</if>>
<<if $scene.master_req>>
<<set _hint.push("<<=setup.getItemName('drug_master')>>")>>
<</if>>
<<printThought "Hmm... <<=_hint>> should do it.">><br>
<br>
<</if>>
[<<moveTo "event_work_doctor_help_lab_3" "Confirm the final blend." 60>>]
<<else>>
Figuring on throwing a wrench into the machinations of the company, you purposefully screw up all of the prescriptions.<br>
<br>
[<<moveTo "event_work_doctor_help_lab_3" "Continue." 60>>]
<</if>>
</div><<set $scene.breasts_req = random(1,10) < 9>>
<<set $scene.ditzy_req = random(1,10) < 5>>
<<set $scene.slave_req = random(1,10) < 8>>
<<set $scene.dick_req = random(1,10) < 3>>
<<if !$scene.ditzy_req>>
<<set $scene.smart_req = random(1,10) < 3>>
<<else>>
<<set $scene.smart_req = false>>
<</if>>
<<if !$scene.slave_req>>
<<set $scene.master_req = random(1,10) < 2>>
<<else>>
<<set $scene.master_req = false>>
<</if>>
<<if !$scene.breasts_req && !$scene.ditzy_req&& !$scene.slave_req && !$scene.dick_req && !$scene.smart_req && !$scene.master_req>>
<<set $scene.breasts_req = true>>
<<set $scene.ditzy_req = true>>
<<set $scene.slave_req = true>>
<</if>>/*#
#desc: help npc_work_doctor in the lab; minigame
#status: FINISHED 0.7.4.0
#*/
<<if $scene.breasts_req>>
The patient needs to have a more womanly figure.
<</if>>
<<if $scene.dick_req>>
The patient wants a larger cock.
<</if>>
<<if $scene.ditzy_req>>
The patient needs to be cured of their smart mouth and questioning attitude.
<<elseif $scene.smart_req>>
The patient needs to perform their duties with more skill.
<</if>>
<<if $scene.slave_req>>
The patient needs to be more submissive and obedient.
<<elseif $scene.master_req>>
The patient needs to be more bold.
<</if>>/*#
#desc: help npc_work_doctor in the lab; results
#status: FINISHED 0.7.4.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $scene.challengeSuccess = $scene.breasts_req == $scene.breasts &&
$scene.ditzy_req == $scene.ditzy &&
$scene.slave_req == $scene.slave &&
$scene.dick_req == $scene.dick &&
$scene.smart_req == $scene.smart &&
$scene.master_req == $scene.master>>
<<if $scene.challengeSuccess>>
<<set $scene.mix_success += .5>>
<<else>>
<<set $scene.mix_success -= .3>>
<</if>>
<</if>>
<<if $scene.mix_success >= 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<set $scene.pickmeupBonus = $npc_work_doctor.affection > $npc_work_doctor.anger>>
<<if $scene.pickmeupBonus>>
<<addItem 'pickmeup_candy'>>
<</if>>
<<elseif $scene.mix_success == 0>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<elseif $scene.mix_success < 0>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<elseif $scene.mix_success > .5>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> comes to check your work.
<<if $scene.mix_success >= 1>>
<<He npc_work_doctor>> seems impressed by your effectiveness, complimenting you on your efforts. "@@.npc_work_doctor;This looks perfect, good girl!@@" <<He npc_work_doctor>> states, giving you a rewarding head-pat. Making some adjustments to the machine, <<he npc_work_doctor>> smiles. "@@.npc_work_doctor;Well, that's all I had for you today, as a reward you can mix up a little temporary booster for yourself, go ahead and choose whatever you like and then meet me in the back room so I can let you out of that nurse's outfit and you can head home.@@"<br>
<br>
<<if $scene.pickmeupBonus>>
You start to think about what you want to mix up when <<he npc_work_doctor>> turns and tosses you a small candy. "@@.npc_work_doctor;Here, you've been doing good lately, that's a little pick-me-up for when you need an extra kick of energy.@@"<br>
<br>
<</if>>
<<He npc_work_doctor>> walks away, leaving you alone at the workstation. Checking the material reserves, it looks like you have enough to make a single dose of one of the drugs...<br>
<br>
<label><<=setup.getItemName("drug_breast")>> <<radiobutton "$scene.bonus" 'breast' checked>></label><br>
<label><<=setup.getItemName("drug_ditzy")>> <<radiobutton "$scene.bonus" 'ditzy'>></label><br>
<label><<=setup.getItemName('drug_slave')>> <<radiobutton "$scene.bonus" 'slave'>></label><br>
<label><<=setup.getItemName("drug_dick")>> <<radiobutton "$scene.bonus" 'dick'>></label><br>
<label><<=setup.getItemName("drug_smart")>> <<radiobutton "$scene.bonus" 'smart'>></label><br>
<label><<=setup.getItemName("drug_master")>> <<radiobutton "$scene.bonus" 'master'>></label><br>
<br>
<<if setup.getTotalValue("smart") < 15 && setup.checkItemInInventory('drug_smart') && !setup.hasTmpEffect('bimbo_suppressant')>>
<<printThought "Hmm... I have this dose of <<=setup.getItemName('drug_smart')>>... I wonder if taking it would help me tweak the mixtures?">><br>
<br>
<</if>>
[<<moveTo "event_work_doctor_help_lab_4" "Confirm your choice." 60 "<<set $scene.smart_mix = false>>">>]<br>
<<if setup.getTotalValue("smart") >= 15>>
[<<moveTo "event_work_doctor_help_lab_4" 'Undo <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> config change and make something more potent.' 60 "<<set $scene.smart_mix = true>>">>]<br>
<<elseif setup.getTotalValue("smart") < 4 && setup.hasTmpEffect('bimbo_suppressant')>>
In a weird, drug-assisted moment of savant-like clarity you notice an advanced configuration setting.<br>
<br>
[<<moveTo "event_work_doctor_help_lab_4" 'Undo <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> config change and make something more potent.' 60 "<<set $scene.smart_mix = true>>">>]<br>
<<elseif setup.checkItemInInventory('drug_smart')>>
[<<moveTo "event_work_doctor_help_lab_4" 'Take a hit of <<=setup.getItemName("drug_smart")>> and see if that helps you figure out anything better...' 60 "<<set $scene.smart_mix = true>><<set $scene.take_drug=true>>">>]<br>
<<else>>
[@@.link_locked;You don't feel smart enough to try messing with anything.@@]<br>
<</if>>
<<if setup.checkItemInInventory("nefarious_narcotic") && $player.flags.drugs.slave_plus && $player.flags.drugs.ditzy_plus && $player.flags.drugs.breast_plus>>
<<if State.hasPlayed("event_make_bimbo_brew_1")>>
[<<moveTo "event_make_bimbo_brew_1" 'Refine another dose of <<=setup.getItemName("bimbo_brew")>>?' 180>>]<br>
<<else>>
[<<moveTo "event_make_bimbo_brew_1" 'What if you combined and refined <<=setup.getItemName("nefarious_narcotic")>> with <<=setup.getItemName("drug_slave_plus")>>, <<=setup.getItemName("drug_ditzy_plus")>>, and <<=setup.getItemName("drug_breast_plus")>>?' 180>>]<br>
<</if>>
<<elseif State.hasPlayed("event_make_bimbo_brew_1")>>
[@@.link_locked;You would need another dose of <<=setup.getItemName("nefarious_narcotic")>> to refine more <<=setup.getItemName("bimbo_brew")>>.@@]<br>
<</if>>
<<if setup.getTotalValue("smart") >= 15>>
<<if setup.checkItemInInventory("energy_drink")>>
[<<moveTo "event_mix_pickmeup_ultra_1" 'Refine a can of <<=setup.getItemName("energy_drink")>> and make an upgraded <<=setup.getItemName("pickmeup_candy")>>.' 60 "<<set $scene.type='energy_drink'>>">>]<br>
<</if>>
<<if setup.checkItemInInventory("energy_drink_zero")>>
[<<moveTo "event_mix_pickmeup_ultra_1" 'Refine a can of <<=setup.getItemName("energy_drink_zero")>> and make an upgraded <<=setup.getItemName("pickmeup_candy")>>.' 60 "<<set $scene.type='energy_drink_zero'>>">>]<br>
<</if>>
<<if setup.checkItemInInventory("energy_drink_fem")>>
[<<moveTo "event_mix_pickmeup_ultra_1" 'Refine a can of <<=setup.getItemName("energy_drink_fem")>> and make an upgraded <<=setup.getItemName("pickmeup_candy")>>.' 60 "<<set $scene.type='energy_drink_fem'>>">>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_mix_cure_1")>>
[<<moveTo "event_mix_cure_2" 'Brew another dose of cure for <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill Addiction.' 180>>]<br>
<<elseif $player.sec_style.body.pinkpill>>
[<<moveTo "event_mix_cure_1" 'Search for a cure to <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill Addiction.' 180>>]<br>
<</if>>
<<if $player.flags.drugs.breast_plus > 0 || ($player.body_ref.penis && $player.flags.drugs.dick_plus > 0) || $player.flags.drugs.smart_plus > 0 || $player.flags.drugs.master_plus > 0 || $player.flags.drugs.ditzy_plus > 0 || $player.flags.drugs.slave_plus > 0>>
<<if $player.flags.drugs.breast_plus > 0 && (!$player.body_ref.penis || $player.flags.drugs.dick_plus > 0) && $player.flags.drugs.smart_plus > 0 && $player.flags.drugs.master_plus > 0 && $player.flags.drugs.ditzy_plus > 0 && $player.flags.drugs.slave_plus > 0 >>
[<<moveTo "event_work_doctor_help_lab_custom_1" "Use your experience to brew something custom..." 60>>]<br>
<<else>>
[@@.link_locked;I wonder if I could mix something custom out of the more potent drugs? I should test each of the maximised components on myself first so I know exactly what I'm working with...@@]<br>
<</if>>
<</if>>
<<if $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished || $player.sec_style.submission.sissyomatic != "">>
<<if setup.getTotalValue("smart") > 10 || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished>>
[<<moveTo "event_work_doctor_help_lab_4_sissyomatic_1" "See if this computer can do anything else..." 60>>]<br>
<<elseif setup.hasTmpEffect('bimbo_suppressant') && setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bdsm") >= 10 && setup.getTotalValue("bondage") && !(setup.getChastityLevel() == 5)>>
[<<moveTo "event_work_doctor_help_lab_4_sissyomatic_1" "You are desperate for more secure restriction... maybe there is a project on the computer that could help?" 60>>]<br>
<</if>>
<</if>>
<<set _ai9001ThemeId = setup.findThemeId('npc_ai', 'other', 'theme_ai_technician_1')>>
<<if _ai9001ThemeId != -1 && $npc_ai.themes.other[_ai9001ThemeId].done > 0 && !$npc_technician.relationship.sissyomatic>>
<<if setup.checkItemOwned("sissyomatic_technician")>>
[@@.link_locked;You already printed up a <<=setup.getItemName("sissyomatic")>> for <<=setup.getNpcName("npc_technician","first")>>.@@]<br>
<<elseif $npc_technician.flags.evil != 1>>
[<<moveTo "event_print_technician_sissyomatic_1" 'Follow <<=ps(setup.getNpcName("npc_ai","first"))>> instructions and print up a <<=setup.getItemName("sissyomatic")>> for <<=setup.getNpcName("npc_technician","first")>>.' 180>>]<br>
<</if>>
<</if>>
<<if $npc_barista.stage == 4>>
<<if setup.checkItemOwned('aphrodisiac_blend')>>
[@@.link_locked;You already mixed up a special blend of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> aphrodisiac... next you need to find the right place to use it to get <<=setup.getNpcName("npc_barista","nickname")>> in trouble.@@]<br>
<<elseif $npc_work_doctor.flags.aphrodisiac.stage > 0>>
[<<moveTo "event_barista_aphrodisiac_1" 'Try to brew up something that could get <<=setup.getNpcName("npc_barista","nickname")>> into trouble...' 60>>]<br>
<<elseif $npc_work_doctor.flags.aphrodisiac.unlock>>
[@@.link_locked;You recall the aphrodisiac <<=setup.getNpcName("npc_psychiatrist","formal")>> told you <<=setup.getNpcName("npc_work_doctor","formal")>> was working on... maybe if you found out more about it, it would be the solution to getting <<=setup.getNpcName("npc_barista","nickname")>> in trouble?@@]<br>
<<else>>
<<if $player.body_ref.penis>>
[@@.link_locked;Short of taking some <<=setup.getItemName("drug_dick")>> yourself, none of the drugs available to you seem quite what you need... perhaps you should check in with <<=setup.getNpcName("npc_psychiatrist","formal")>>?@@]<br>
<<else>>
[@@.link_locked;None of the drugs available to you seem quite what you would need to REALLY get <<=setup.getNpcName("npc_barista","nickname")>> in trouble. Maybe if you had a penis to work with... else, perhaps you should check in with <<=setup.getNpcName("npc_psychiatrist","formal")>>?@@]<br>
<</if>>
<</if>>
<</if>>
<<if (State.hasPlayed("event_barista_psychiatrist_rescue_intro_3") || State.hasPlayed("event_manager_psychiatrist_rescue_intro_1")) && !(setup.checkItemOwned("psychiatrist_cure") || State.hasPlayed("event_psychiatrist_cure_4"))>>
<<if $fetish.tentacle && !State.hasPlayed("event_psychiatrist_drugs_research_1")>>
[<<moveTo "event_psychiatrist_drugs_research_1" 'Search for more information to cure <<=setup.getNpcName("npc_psychiatrist","formal")>>.' 600>>]<br>
<<elseif $npc_psychiatrist.flags.rescue.formula>>
[<<moveTo "event_psychiatrist_drugs_solo_1" 'Attempt to mix up a cure for <<=setup.getNpcName("npc_psychiatrist","formal")>>.' 600>>]<br>
<<else>>
[@@.link_locked;I still don't have what I need to mix an antidote for <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>>.@@]<br>
<</if>>
<</if>>
<<else>>
<<if !$scene.obey>>
You watch as <<he npc_work_doctor>> throws the bulk of your preparations into the trash. "@@.npc_work_doctor;Hmm, a fairly pathetic effort, below my expectations even for a dumb bimbo slut like yourself.@@"
<<if $scene.mix_success > 0>>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;Did you even try? I suppose I should have expected as much from a dumb bimbo slut such as yourself. Come on, let us get you changed and you can be on your way.@@"
<<else>>
<<He npc_work_doctor>> stares at you in suspicion. "@@.npc_work_doctor;This is... beyond wrong, were you screwing things up on purpose?@@" <<He npc_work_doctor>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;Come along, let us get you changed and on your way.@@"
<</if>>
<<else>>
You watch as <<he npc_work_doctor>> throws a portion of your preparations into the trash.<br>
<br>
<<if $scene.challengeSuccess>>
"@@.npc_work_doctor;Hmm, a few mistakes, though you nailed the final mixture to at T. Luck I suppose as I should not be surprised that a dumb slut such as yourself would struggle even with something this simple. Ah well, come along let us get you changed.@@"
<<else>>
"@@.npc_work_doctor;Hmm, it appears you managed <<if $scene.base_success >= 1>>to nail<<else>>some of<</if>> the basics, but this last one tripped you up a bit.
<<if $scene.breasts_req != $scene.breasts>>
A "womanly figure" would obviously be nurtured by <<=setup.getItemName("drug_breast")>>.
<</if>>
<<if $scene.ditzy_req != $scene.ditzy>>
<<=setup.getItemName("drug_ditzy")>> would help make the patient more dull and pacified.
<</if>>
<<if $scene.slave_req != $scene.slave>>
<<=setup.getItemName('drug_slave')>> is, of course, the ticket to submission.
<</if>>
<<if $scene.dick_req != $scene.dick>>
A larger, more impressive member would be granted by <<=setup.getItemName("drug_dick")>>.
<</if>>
<<if $scene.smart_req != $scene.smart>>
<<=setup.getItemName("drug_smart")>> is the "smart drug."
<</if>>
<<if $scene.master_req != $scene.master>>
Boldness is enhanced by <<=setup.getItemName("drug_master")>>.
<</if>>
See that you keep this in mind for your next time. Come, let us get you changed@@"
<</if>>
<</if>>
<br><br>
You follow <<him npc_work_doctor>> into the back room where <<he npc_work_doctor>> removes the nurse's attire and you get back into your normal clothes and depart.<br>
<</if>>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor in the lab; bonus reward
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.take_drug>>
<<deleteItem 'drug_smart'>>
<<set $player.flags.drugs.smart += 1>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'normal' $ALONE>>
<<applyStress -10>>
<<gainWillpower 1>>
<<setTmpEffect 'drug_smart'>>
<</if>>
<<if (setup.getTotalValue("smart") >= 15 || setup.getTotalValue("smart") < 4 && setup.hasTmpEffect('bimbo_suppressant')) && $scene.smart_mix>>
<<set $npc_work_doctor.flags.adv_drug = true>>
<<switch $scene.bonus>>
<<case 'breast'>>
<<addItem 'drug_breast_plus'>>
<<case 'ditzy'>>
<<addItem 'drug_ditzy_plus'>>
<<case 'slave'>>
<<addItem 'drug_slave_plus'>>
<<case 'dick'>>
<<addItem 'drug_dick_plus'>>
<<case 'smart'>>
<<addItem 'drug_smart_plus'>>
<<case 'master'>>
<<addItem 'drug_master_plus'>>
<</switch>>
<<else>>
<<set _count = 1>>
<<if setup.getTotalValue("smart") > 15>>
<<set _count += 1>>
<<set $scene.smartBonus = true>>
<</if>>
<<switch $scene.bonus>>
<<case 'breast'>>
<<if $player.flags.drugs.breast_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_breast' _count>>
<<case 'ditzy'>>
<<if $player.flags.drugs.ditzy_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_ditzy' _count>>
<<case 'slave'>>
<<if $player.flags.drugs.slave_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_slave' _count>>
<<case 'dick'>>
<<if $player.flags.drugs.dick_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_dick' _count>>
<<case 'smart'>>
<<if $player.flags.drugs.smart_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_smart' _count>>
<<case 'master'>>
<<if $player.flags.drugs.master_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_master' _count>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.take_drug>>
Mindful that <<=setup.getNpcName("npc_work_doctor","formal")>> could be back any minute you quickly knock back the dose of <<=setup.getItemName("drug_smart")>>, feeling your thoughts sharpen as the potent drug courses through your system.<br>
<br>
<<if setup.getTotalValue("smart") >= 15>>
Building on prior "success" your drug-accelerated mind easily spots how to enhance the drug you were planning on mixing well beyond
<<else>>
Unfortunately even drugs aren't enough for you to out-smart the default configuration and you are left mixing a dose according to
<</if>>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> original formula.<br>
<br>
<</if>>
You mix up a batch of<<if $scene.smart_mix && (setup.getTotalValue("smart") >= 15 || setup.getTotalValue("smart") < 4 && setup.hasTmpEffect('bimbo_suppressant'))>> enhanced<</if>>
<<switch $scene.bonus>>
<<case 'breast'>>
<<=setup.getItemName("drug_breast")>>.
<<case 'ditzy'>>
<<=setup.getItemName("drug_ditzy")>>.
<<case 'slave'>>
<<=setup.getItemName('drug_slave')>>.
<<case 'dick'>>
<<=setup.getItemName("drug_dick")>>.
<<case 'smart'>>
<<=setup.getItemName("drug_smart")>>.
<<case 'master'>>
<<=setup.getItemName("drug_master")>>.
<<default>>
ERROR: unexpected scene.bonus <<=$scene.bonus>>
<</switch>>
<<if $scene.smart_mix>>
<<if $scene.skillBonus>>
Your prior efforts making the Plus version of this drug allows you to produce a double dose of the normal version.
<</if>>
<<if $scene.smartBonus>>
Your intelligence allows you to produce an additional dose.
<</if>>
<</if>>
<br><br>
<<if $player.flags.drugs.pick_me_up > 0>>
Packaging the vial up carefully you are getting ready to leave when you notice a container of familiar <<=setup.getItemName('pickmeup_candy')>>...<br>
<br>
<<printThought "Best not to go crazy, but <<=setup.getNpcName('npc_work_doctor', 'formal')>> won't notice if I take a few.">><br>
<br>
[<<moveTo "event_work_doctor_help_lab_pickmeup" "Take some candy." 300>>]<br>
<<else>>
Packaging the vial up carefully, you head into the backroom to get changed, <<=setup.getNpcName('npc_work_doctor', 'formal')>> once again thanking you for your assistance before sending you on your way.<br>
<br>
<</if>>
[<<moveTo "room_elevator_home" "Head down to the lobby." 300 "<<removeItemSet 'nurse_work_outfit_unleashed' true>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor in the lab; bonus reward
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'pickmeup_candy'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You grab a few <<=setup.getItemName('pickmeup_candy')>> and quickly tuck them away with your other prize before you leave the lab.<br>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor in the lab; examine Sissy-o-matic
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if setup.hasTmpEffect('bimbo_suppressant') && setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bdsm") >= 10 && setup.getTotalValue("bondage")>>
In a single-minded desperate need to find something that will further restrict your existence you find the holy grail: the project files for the <<=setup.getItemName('sissyomatic')>> chastity device, which it appears this terminal is capable of printing out...
<<else>>
The interface is pretty straightforward and you find that, in addition to mixing medication, this terminal is connected to a printer on the other side of the lab for making custom medical devices. At present it seems configured to produce <<=setup.getItemName('sissyomatic')>> chastity devices...
<</if>>
<br><br>
You click and a menu pops up for you to input sizing information, or import the same from the company database.<br>
<br>
<<printThought "Of course they'd have measurements for that sort of thing...">><br>
<br>
<<if $currentTasks.hasOwnProperty('task_sissyomatic_steal')>>
<<if setup.checkItemOwned('sissyomatic_plans') || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && $currentTasks.task_sissyomatic_steal.finished>>
[@@.link_locked;You already made a copy of the 9001-series chastity schematics.@@]<br>
<<else>>
[<<moveTo "event_work_doctor_help_lab_4_steal_sissyomatic_1" 'See if you can download a set of 9001-series chastity schematics.' 60>>]<br>
<</if>>
<</if>>
<<if setup.getChastityLevel() == 5>>
[@@.link_locked;You're already wearing a <<=setup.getItemTypeName('cage')>>, why would you need a second?@@]<br>
<<else>>
[<<moveTo "event_work_doctor_help_lab_4_sissyomatic_2" "Print yourself the ultimate in chastity..." 300 "<<set $scene.smatic=true>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_help_lab_4_sissyomatic_2" "Just leave." 60>>]
</div>/*#
#desc: help npc_work_doctor in the lab; print a 9001
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.smatic>>
<<addItem 'sissyomatic_box'>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.smatic>>
Heart racing, do you really want to lock yourself into such a diabolical device? You hurry over to the printer, glad that it is a top of the line, multi-material speed demon. Scooping up your new "prize," you hesitate for a moment — the nurse's outfit is all but seamless, pockets are out of the question and you don't know how <<=setup.getNpcName("npc_work_doctor","formal")>> would react to what you've just made...<br>
<br>
<<printThought "Probably lock me up in it immediately, knowing this company...">><br>
<br>
Thinking fast, you wrap the surprisingly heavy device up in a spare box, placing it just outside the door of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office on the assumption it should be safe for a minute or two and you can grab it on the way out.<br>
<br>
Heading for the back room, you find <<him npc_work_doctor>> waiting somewhat impatiently, raising an eyebrow as <<he npc_work_doctor>> starts to remove your nurse attire. "@@.npc_work_doctor;You get lost or something?@@" <<He npc_work_doctor>> laughs. "@@.npc_work_doctor;No matter, I hope you enjoy your reward. I'll see you next time.@@"<br>
<br>
<<He npc_work_doctor>> leaves you to change back into your normal clothes and you head on your way, snatching your "prize" from where you stashed it before boarding the elevator.
<<else>>
You head for the back room where <<he npc_work_doctor>> releases you from your nurse's attire and dismisses you for the evening.
<</if>>
<br><br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: make pickmeup ultra
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem $scene.type>>
<<addItem "pickmeup_ultra_gum" 6>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_betray_work_doctor_7")>>You<<else>>Hurrying, in case <<=setup.getNpcName("npc_work_doctor","formal")>> returns, you<</if>> refine down a can of <<=setup.getItemName($scene.type)>>.<br>
<br>
<<switch $scene.type>>
<<case 'energy_drink'>>
<<printThought "Wow... that is A LOT of sugar...">>
<<case 'energy_drink_zero'>>
<<printThought "Wow... that is A LOT of artificial sweeteners...">>
<<case 'energy_drink_fem'>>
<<printThought 'So apparently the "secret ingredient" was estrogen...'>>
<<default>>
ERROR: unexpected scene.type <<=$scene.type>>
<</switch>>
<br><br>
Adding in the raw components of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> <<=setup.getItemName("pickmeup_candy")>> you end up with half a dozen tasty-looking, energy-packed pieces of gum.<br>
<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the medicine cabinet." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
<<else>>
[<<moveTo "room_elevator_home" "Pocket your prize, get changed and hurry down to the lobby before you get caught." 300 "<<if setup.checkItemWorn('nurse_catsuit')>><<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>><</if>>">>]
<</if>>
</div>/*#
#desc: search for cure for pink pill
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You search the computer's drug library to see if it might be possible to brew up an antidote to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> drugs.<br>
<br>
Though it isn't programmed into the system directly, but you find a paper by a Dr. Troy Myron,
<<if setup.getTotalValue("smart") > 10>>
after reviewing things you're pretty sure you could program it in, the formula is basically just a combination of endorphin blockers cut with some "hair of the dog." <br>
<br>
[<<moveTo "event_mix_cure_2" "Brew up a cure to <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill Addiction." 180>>]<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the terminal." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
<<else>>
[<<moveTo "room_elevator_home" "Just change and leave." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>>">>]
<</if>>
<<elseif State.hasPlayed("event_betray_work_doctor_7")>>
You try to figure out a cure, but you just can't figure it out... seems like you need to spend more time studying...<br>
<br>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the terminal." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
<<else>>
Unfortunately it's just all too complicated for you to understand.<br>
<br>
You hear a sound from office and you decide it would be best to depart before you get caught messing with things.<br>
<br>
[<<moveTo "room_elevator_home" "Change and leave." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: make cure for pink pill
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'sissy_pill_cure'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You brew up a dose that should cleanse the side effects of addiction or withdrawal to <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill.<br>
<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the medicine cabinet." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
<<else>>
[<<moveTo "room_elevator_home" "Pocket your prize, get changed and hurry down to the lobby before you get caught." 300 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: make bimbo_brew
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'nefarious_narcotic'>>
<<addItem "bimbo_brew">>
<<changeHorny 25>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
Bypassing several safeguards... and anything close to good judgement, you refine a dose of <<=setup.getItemName("nefarious_narcotic")>> and combine the most potent versions of all three of <<=setup.getItemName("drug_slave_plus")>>, <<=setup.getItemName("drug_ditzy_plus")>>, and <<=setup.getItemName("drug_breast_plus")>>.<br>
<br>
Just a momentary whiff before you put a stopper on the jar has you feeling aroused, and the way the pink, syrupy mixture seems to almost glow entices you with its promise of mindless pleasure. <<if !State.hasPlayed("event_betray_work_doctor_7")>>Your first thought is that <<=setup.getNpcName("npc_work_doctor","formal")>> cannot be allowed to get access to your creation.<</if>><br>
<br>
You pocket your prize and consider your next move.<br>
<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the medicine cabinet." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
<<else>>
[<<moveTo "room_elevator_home" "Pocket your prize, get changed and hurry down to the lobby before you get caught." 300 "<<if setup.checkItemWorn('nurse_catsuit')>><<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>><</if>>">>]
<</if>>
</div>/*#
#desc: nurse nerina event
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_work_doctor.flags.nerina = true>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Basement Hu-cow Farm'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hospital_hallway.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") "./images/characters/nerina.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> leads you down a hallway, and then badges through a security door to lead you into a room.<br>
<br>
If your mouth was not already forced open by your gag your jaw would drop at what is before you — dozens and dozens of women hooked up in rows in familiar positions — bound and stimulated as their large breasts<<if $fetish.penis_milking>> and, in some cases, <<getWordPenis false>>s<</if>> are being constantly milked.<br>
<br>
The sound of gag-muffled moans echoes through the room, the field of hucows constantly stimulated throughout their milking.<br>
<br>
"@@.npc_work_doctor;You did not think that you and <<=setup.getNpcName("npc_hucow","formal")>> were the first experiments into hucow procedures?@@" <<=setup.getNpcName("npc_work_doctor","formal")>> asks with a grin as <<he npc_work_doctor>> leads you down the row. "@@.npc_work_doctor;No, you two are interesting in that you retain functionality other than mere production... alas, most of my experiments seem to end up less mentally stable. Were you to unhook any of them they would within minutes descend into self-stimulation and masturbation. The first time it happened <<=setup.getNpcName("npc_boss","formal")>> was quite cross, believe me... but once I explained the utility of their production well...@@"<br>
<br>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> grin makes you shiver, and you half expect <<him npc_work_doctor>> to burst out into evil <<if !$npc_work_doctor.fem>>overlord <</if>>laughter. "@@.npc_work_doctor;Well, let us just say that work has already begun on fitting out a second field for me to fill. Yes, as failed experiments go, these are proving quite useful... though, really, no experiment is a failure if you learn from it!@@"<br>
<br>
You are so distracted by the hucow that you don't notice <<=setup.getNpcName('computer', 'custom', 'NER-1NA')>> the robotic milk-maid greeting <<=setup.getNpcName("npc_work_doctor","formal")>> with a curtsy before commiserating with <<=setup.getNpcName("npc_work_doctor","formal")>> for a few minutes.<br>
<br>
"@@.npc_work_doctor;Another useful experiment, though not mine. An efficient caretaker for these sorts... but the Robotics Division is far away from a more generally useful platform.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> sounds dismissive. "@@.npc_work_doctor;Why bother building from scratch, I say? When human subjects are so available and... malleable.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> chuckles as <<he npc_work_doctor>> leads you along. After a few more minutes pacing the rows of the hucow field <<=setup.getNpcName("npc_work_doctor","formal")>> leads you back to the elevator and up to <<his npc_work_doctor>> lab. You wonder if the whole point of this exercise was to merely "show off" the hucows, but hold your tongue as <<=setup.getNpcName("npc_work_doctor","formal")>> unlocks your outfit for you to change and return to the lobby.<br>
<br>
[<<moveTo "room_elevator_home" "Take the elevator down to the lobby." 600 "<<removeItem 'medical_leash' true>><<deleteItem 'medical_leash'>><<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor; meet ceo
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstTime = !$npc_ceo.flags.dr_appointment>>
<<set $npc_ceo.flags.dr_appointment = true>>
<</if>>
<<set $player.location to 'Exam Room.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor") setup.charImage("npc_ceo_butler","npc_ceo_butler_alt") setup.charImage("npc_ceo")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> takes a deep breath, <<his npc_work_doctor>> eyes flicking nervously around the room before <<he npc_work_doctor>> steps towards the bubbly, buxom girl sitting on the exam chair.<br>
<br>
"@@.npc_work_doctor;So, you've been feeling good, no issues to report?@@" <<He npc_work_doctor>> asks as <<he npc_work_doctor>> leans over and begins making a visual inspection.<br>
<br>
"@@.npc_ceo;Mmmm, yeah, the new candy is like, super yummy! It gives me so much energy and makes me so horny... do you want to see? You can fuck me right now, that'd be, like, soooo good.@@"<br>
<br>
Sighing at the outburst <<=setup.getNpcName("npc_work_doctor","formal")>> glances over at the formally dressed <<man npc_ceo_butler>> who has been calmly watching on the whole time. "@@.npc_work_doctor;No side effects?@@" The <<man npc_ceo_butler>> shakes <<his npc_ceo_butler>> head.<br>
<br>
"@@.npc_ceo;Ooooh, side effects? Like will they turn me into a mindless, horny slut? Teehee, or maybe give me even bigger boobs? Ooooh, do you want to tit fuck me? I promise they feel, like, really good... oh, I just want to feel your big hard cock...@@"<br>
<br>
The girl reaches for <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> crotch, squinting in puzzled disappointment for a moment when she makes contact before <<he npc_work_doctor>> catches her wrist and pulls it away, cuffing one arm then the other to the arm rests of the exam chair.<br>
<br>
"@@.npc_work_doctor;I am very sorry, but to proceed with the exam I believe it would be most efficient if the patient was gagged and restrained.@@"<br>
<br>
Struggling playfully against the wrist restraints the girl seems more turned on than upset. "@@.npc_ceo;Make sure it's a nice big gag, mmm, or maybe just choke me with a thick, juicy cock...@@"<br>
<br>
Turning to you, <<=setup.getNpcName("npc_work_doctor","formal")>> points toward a cabinet. "@@.npc_work_doctor;Nurse, please fetch a gag, size 4 should do it.@@"<br>
<br>
You walk over to the cabinet and open it to find neatly organised ball gags packaged up and sealed as if they were medical implements, each one a different size and colour. It seems that sizes range from 1-5, coloured white, blue, red, black, pink.<br>
<br>
[<<moveTo "event_work_doctor_ceo_2" "Select the size one tiny, white gag." 120 "<<set $scene.size=1>>">>]<br>
[<<moveTo "event_work_doctor_ceo_2" "Select the size two small, blue gag." 120 "<<set $scene.size=2>>">>]<br>
[<<moveTo "event_work_doctor_ceo_2" "Select the size three normal, red gag." 120 "<<set $scene.size=3>>">>]<br>
[<<moveTo "event_work_doctor_ceo_2" "Select the size four large, black gag." 120 "<<set $scene.size=4>>">>]<br>
[<<moveTo "event_work_doctor_ceo_2" "Select the size five gigantic, pink gag." 120 "<<set $scene.size=5>>">>]
</div>/*#
#desc: help npc_work_doctor; ceo apply gag
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor") setup.charImage("npc_ceo_butler","npc_ceo_butler_alt") setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.size>>
<<case 1>>
<<set $scene.score_ceo = -2>>
<<set $scene.score_doctor = -2>>
<<case 2>>
<<set $scene.score_ceo = -1>>
<<set $scene.score_doctor = -1>>
<<case 3>>
<<set $scene.score_ceo = -1>>
<<set $scene.score_doctor = 0>>
<<case 4>>
<<set $scene.score_ceo = 0>>
<<set $scene.score_doctor = 1>>
<<case 5>>
<<set $scene.score_ceo = 1>>
<<set $scene.score_doctor = -1>>
<</switch>>
<<switch $scene.size>>
<<case 1>>
<<=setup.getNpcName("npc_work_doctor","formal")>> stares at you incredulously. "@@.npc_work_doctor;Really? You can't even count? It's like you're trying to screw up. This wouldn't gag hardly anyone.@@" Tossing the tiny gag into a bin <<he npc_work_doctor>> walks over and grabs a gag <<himself npc_work_doctor>>, the girl pouting when <<he npc_work_doctor>> fails to unwrap one of the largest ones, but still opening her mouth eagerly once <<he npc_work_doctor>> unwraps and presents the black size four to her.
<<case 2>>
<<=setup.getNpcName("npc_work_doctor","formal")>> frowns and shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;Are you trying to screw things up here?@@" Snatching it from your grasp <<he npc_work_doctor>> unwraps the gag and buckles it tightly around the girl's head. She pouts slightly around the modest ball, but it does stop her from talking.
<<case 3>>
<<=setup.getNpcName("npc_work_doctor","formal")>> and the girl both frown at the average sized gag. "@@.npc_work_doctor;I suppose this will do, open wide, please.@@"<br>
<br>
<<He npc_work_doctor>> unwraps the gag and buckles it tight for that classic red ball-gag look.
<<case 4>>
<<=setup.getNpcName("npc_work_doctor","formal")>> nods in approval at you having fetched the correct item, unwrapping the gag and buckling it in place, the girl's mouth spread wide as she smiles around the large ball.
<<case 5>>
<<=setup.getNpcName("npc_work_doctor","formal")>> sighs as you hand <<him npc_work_doctor>> one of the largest gags. "@@.npc_work_doctor;What is it with you sluts always wanting something bigger?@@" Shaking <<his npc_work_doctor>> head <<he npc_work_doctor>> unwraps the gag and forces it into the girls mouth. Though it spreads her jaw wide she actually moans in pleasure, her eyelids fluttering blissfully.
<<default>>
ERROR unexpected scene.size <<=$scene.size>>
<</switch>>
<br><br>
With <<his npc_work_doctor>> patient silenced, <<=setup.getNpcName("npc_work_doctor","formal")>> proceeds with <<his npc_work_doctor>> examination, looking her body over and prodding her repeatedly before pulling her top down to expose her large breasts. Taking one in each hand, <<he npc_work_doctor>> squeezes each in turn, pinching her nipples and rolling them between <<his npc_work_doctor>> fingers.<br>
<br>
"@@.npc_work_doctor;Sensitivity looks good, no issues with the larger size?@@" <<he npc_work_doctor>> asks.
<br>
She shakes her head, her blonde hair flapping back and forth, a soft moan escaping the gag as <<he npc_work_doctor>> continues to pinch and grope. Reaching under the chair, <<he npc_work_doctor>> pulls out a pair of wide bands that <<he npc_work_doctor>> begins cinching around the base of each breast. "@@.npc_work_doctor;Nurse, if you would fetch me a pair of clamps, I want to confirm sensitivity and blood flow while I continue the exam. The standard clover clamps will be sufficient.@@"<br>
<br>
Back to the cabinet you look around a bit before finding the nipple clamps, presented this time with three options. You glance back at the girl, her expression looking very aroused even as her breasts are squeezed tight, the formally dressed <<man npc_ceo_butler>> who is her escort looking on as stoically as ever.<br>
<br>
[<<moveTo "event_work_doctor_ceo_3" "Select the simple tweezer clamps." 120 "<<set $scene.clamps='tweezer'>>">>]<br>
[<<moveTo "event_work_doctor_ceo_3" "Select the clover clamps." 120 "<<set $scene.clamps='clover'>>">>]<br>
[<<moveTo "event_work_doctor_ceo_3" "Select the industrial screw clamps." 120 "<<set $scene.clamps='steel'>>">>]
</div>/*#
#desc: help npc_work_doctor; ceo apply nipple clamps
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.clamps>>
<<case 'tweezer'>>
<<set $scene.score_ceo += -1>>
<<set $scene.score_doctor += -1>>
<<case 'clover'>>
<<set $scene.score_ceo += 0>>
<<set $scene.score_doctor += 1>>
<<case 'steel'>>
<<set $scene.score_ceo += 1>>
<<set $scene.score_doctor += 0>>
<</switch>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor") setup.charImage("npc_ceo_butler","npc_ceo_butler_alt") setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.clamps>>
<<case 'tweezer'>>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> sighs as you bring <<him npc_work_doctor>> the basic tweezer-style clamps, tightening them down onto the girl's pert nipples. Even fully squeezed down she hardly seems to notice their presence.
<<case 'clover'>>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> nods in approval as you hand <<him npc_work_doctor>> what <<he npc_work_doctor>> had requested, attaching one clamp at a time to her pert nipples. She moans in pleasure as <<he npc_work_doctor>> gives the chain a tug to make sure everything is secure.
<<case 'steel'>>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;You must be feeling quite sadistic today, nurse. These are quite harsh,@@" <<he npc_work_doctor>> explains as <<he npc_work_doctor>> tightens the first clamp onto one of the girls nipples; the steel digging into her flesh and then hanging heavy when <<he npc_work_doctor>> takes <<his npc_work_doctor>> hand away. A slight trail of drool escapes her gag as <<he npc_work_doctor>> tightens the second clamp in place and <<he npc_work_doctor>> carefully wipes it away as she stares lustily up at you.
<<default>>
ERROR unexpected scene.clamps: <<=$scene.clamps>>
<</switch>>
<br><br>
Moving back down her body, <<=setup.getNpcName('npc_work_doctor', 'formal')>> adds another pair of straps to hold her thighs in place as <<he npc_work_doctor>> reaches under and begins working the plug out of her ass. She moans in excitement, her caged clitty bouncing as what proves to be a very large plug pops free.<br>
<br>
Placing the plug to one side, <<=setup.getNpcName('npc_work_doctor', 'formal')>> looks at the girl's quivering, winking hole for a moment before sliding a pair of fingers into it. "@@.npc_work_doctor;Good tension, good flexibility. Everything seems in order thus far, but I want to get a look a bit further in. Nurse?@@"<br>
<br>
Back to the cabinet you open a drawer to look over your options.<br>
<br>
[<<moveTo "event_work_doctor_ceo_4" "The narrow, but long, rectal camera." 120 "<<set $scene.speculum='small'>>">>]<br>
[<<moveTo "event_work_doctor_ceo_4" "A basic speculum." 120 "<<set $scene.speculum='normal'>>">>]<br>
[<<moveTo "event_work_doctor_ceo_4" "The giant circular speculum that looks to open larger than your fist." 120 "<<set $scene.speculum='large'>>">>]
</div>/*#
#desc: help npc_work_doctor; ceo insert speculum
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.speculum>>
<<case 'small'>>
<<set $scene.score_ceo += -1>>
<<set $scene.score_doctor += 1>>
<<case 'normal'>>
<<set $scene.score_ceo += 0>>
<<set $scene.score_doctor += -1>>
<<case 'large'>>
<<set $scene.score_ceo += 1>>
<<set $scene.score_doctor += 0>>
<</switch>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor") setup.charImage("npc_ceo_butler","npc_ceo_butler_alt") setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.speculum>>
<<case 'small'>>
<<=setup.getNpcName("npc_work_doctor","formal")>> smiles as you hand <<him npc_work_doctor>> the hose-like device. "@@.npc_work_doctor;Perfect, this will give me a nice view without being overly intrusive.@@"<br>
<br>
From the frustrated moan that escapes the girl's gag, you get the feeling that she isn't as much a fan of "unobtrusive."
<<case 'normal'>>
Taking the speculum <<=setup.getNpcName("npc_work_doctor","formal")>> sighs. "@@.npc_work_doctor;Such a primitive device, still, it will do.@@" <<He npc_work_doctor>> turns back towards the patient as <<he npc_work_doctor>> lines things up. "@@.npc_work_doctor;Please relax while I open you up...@@" <<he npc_work_doctor>> states before inserting the speculum and slowly opening up her rear hole.
<<case 'large'>>
The girl looks at the soda-bottle wide speculum with obvious lust as you hand it over and the doctor sighs. "@@.npc_work_doctor;So crude compared to a more modern device, but still, it will give me a nice full view. Alright, dear, open wide.@@" <<He npc_work_doctor>> adds in the direction of the girl as <<he npc_work_doctor>> slides the device deep into her rear and then begins spreading her open as her eyes roll back in pleasure.
<<default>>
ERROR: unexpected scene.speculum: <<=$scene.speculum>>
<</switch>>
<br><br>
After several minutes of peeking around inside of her, <<=setup.getNpcName("npc_work_doctor","formal")>> removes the medical device and sits back. "@@.npc_work_doctor;Yup, everything looks in order, nice and healthy inside there too.@@"<br>
<br>
[<<moveTo "event_work_doctor_ceo_5" "Looks like the exam is about done." 600>>]
</div>/*#
#desc: help npc_work_doctor; ceo score assessment
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.score_doctor == 3>>
<<addItem 'pickmeup_candy'>>
<<incrementEmotion 'affection' 'npc_work_doctor' 3>>
<<decrementEmotion 'anger' 'npc_work_doctor' 3>>
<<elseif $scene.score_doctor > 0>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' $scene.score_doctor>>
<</if>>
<<if $scene.score_ceo > 0>>
<<incrementEmotion 'affection' 'npc_ceo' $scene.score_ceo>>
<</if>>
<<if $scene.score_ceo != 3>>
<<switch $scene.dildo_size>>
<<case 3>>
<<removeItem 'strapon_large' true>>
<<deleteItem 'strapon_large'>>
<<case 2>>
<<removeItem 'strapon_med' true>>
<<deleteItem 'strapon_med'>>
<<case 1>>
<<removeItem 'strapon_small' true>>
<<deleteItem 'strapon_small'>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_ceo_butler","npc_ceo_butler_alt") setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.score_ceo == 3>>
<<if $scene.score_doctor != -1>>
ERROR: impossible path for scene.score_doctor <<=$scene.score_doctor>> unexpected.<br><br>
<</if>>
<br><br>
<<=setup.getNpcName("npc_work_doctor","formal")>> is looking a little frustrated with you as <<he npc_work_doctor>> wraps things up. Pulling out an oversized syringe full of glowing pink liquid <<he npc_work_doctor>> starts to bring it to her rear hole only for her to rapidly shake her head and then stare at you, humping her hips as much as her restraints make possible.<br>
<br>
"@@.npc_work_doctor;Hmm, well. In the course of your mild disobedience you appear to have made a friend.@@" <<He npc_work_doctor>> turns towards you as <<he npc_work_doctor>> pulls the cylinder of drugs out of the syringe and places it down.<br>
<br>
Peeling off <<his npc_work_doctor>> gloves <<he npc_work_doctor>> nods in your direction. "@@.npc_work_doctor;You will find suitable equipment to administer her medication on the bottom shelf. I will be in my office when you have finished and are ready to change out of your uniform.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> leaves the room and the girl mews through her gag, looking up at you with desperate, lustful need.<br>
<br>
Heading back to the cabinet where all the other perverted "medical" supplies have been located, you slide out the bottom drawer to find a medical style heavy duty harness and a selection of strap-on dildos to match.<br>
<br>
[<<moveTo "event_work_doctor_ceo_6_bonus_1" "Select the small, slender one." 60 "<<set $scene.dildo_size=1>>">>]<br>
[<<moveTo "event_work_doctor_ceo_6_bonus_1" "Select the slightly above-average one." 60 "<<set $scene.dildo_size=2>>">>]<br>
[<<moveTo "event_work_doctor_ceo_6_bonus_1" "Select the monstrous one." 60 "<<set $scene.dildo_size=3>>">>]
<<else>>
"@@.npc_work_doctor;Alright, everything is looking good so let's get your medication!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with a smile, sounding somewhat eager to be finished with things. The always-eager girl wiggles excitedly in her bonds as <<=setup.getNpcName("npc_work_doctor","formal")>> pulls out an oversized syringe, sliding the thick tip into her rear before slowly injecting the full load of glowing pink liquid.<br>
<br>
Thrashing against her bonds, the girl moans against her gag, her breasts swelling until with a one loud *ping* then another the nipple clamps pop free of her perky, hard nipples. Retaining <<his npc_work_doctor>> focus the entire time, <<=setup.getNpcName("npc_work_doctor","formal")>> looks up at her and nods. "@@.npc_work_doctor;That's all of it, now you clamp down so you don't let any of it leak out, okay?@@"<br>
<br>
Still moaning and writhing, the girl somehow understands <<his npc_work_doctor>> words, nodding and squeezing her eyes closed as <<he npc_work_doctor>> pulls the syringe out of her puckering hole. Working swiftly, <<he npc_work_doctor>> lines up her plug, shoving it in with a hard thrust that has her gasp, going slightly limp in her restraints as <<he npc_work_doctor>> sets about releasing her from the chair.<br>
<br>
The girl wobbles back to her feet and <<=setup.getNpcName("npc_work_doctor","formal")>> reaches to release her gag only for her to shake her head. Seemingly prepared for this eventuality the <<man npc_ceo_butler>> produces a pink scarf that she wraps around her face. It looks a bit odd given the rest of her outfit is quite skimpy, but it technically has her "decent" and her eyes twinkle, clearly happy to be able to remain filled in both holes.<br>
<br>
<<if $scene.score_doctor == 3>>
<<if $scene.score_ceo != -1>>
ERROR: impossible path for scene.score_ceo <<=$scene.score_ceo>> unexpected.<br><br>
<</if>>
The patient seems all but disinterested in you at this point, joining her "escort" to leave as you stand obediently at <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> side and then follow <<him npc_work_doctor>> back to <<his npc_work_doctor>> lab.<br>
<br>
"@@.npc_work_doctor;Thank you, again,@@" <<he npc_work_doctor>> states as you return to <<his npc_work_doctor>> office. "@@.npc_work_doctor;That was a very important patient and I could not have asked for a better assistant. As a reward, I made up a special batch of "candy" for you — nothing too altering, but if you ever feel stressed or tired they are quite the trick!@@"<br>
<br>
You thank <<him npc_work_doctor>> for the gift and tuck them away for later before heading for the elevator.<br>
<br>
[<<moveTo "room_elevator_home" "Take the elevator down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
<<else>>
<<switch $scene.score_doctor>>
<<case -4>>
<<He npc_work_doctor>> glances in your direction and shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;I am very sorry for my assistant's terrible performance today. I had hoped she would be better behaved, but, well... I can scarcely imagine how she could have been less helpful.@@"
<<case -3 -2>>
<<He npc_work_doctor>> glances in your direction and shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;I am very sorry for my assistant's performance today. I had assumed she would be more helpful, but it appears she was in a bit of a ditzy mood.@@"
<<case -1 0>>
<<He npc_work_doctor>> nods slightly in your direction as <<he npc_work_doctor>> continues. "@@.npc_work_doctor;I hope my assistant's minor ditziness did not distract, as always it is a pleasure to be your doctor.@@"
<<case 1 2>>
<<He npc_work_doctor>> nods in your direction before <<he npc_work_doctor>> continues. "@@.npc_work_doctor;On behalf of my assistant and myself we thank you for coming in today for your checkup.@@"
<<case 3>>
ERROR: impossible path for scene.score_doctor
<<default>>
ERROR: unexpected scene.score_doctor <<=$scene.score_doctor>>
<</switch>>
<br><br>
<<switch $scene.score_ceo>>
<<case -4>>
The girl glares at you for a moment, leaving you feeling way more intimidated than such a cute thing should be capable of. An instant later her bright-eyed bubblyness is back and she and her companion are off.
<<case -3 -2>>
The girl glances at you in annoyance before leaving on her way.
<<case -1 0>>
The girl seems to pay no attention to you as she is escorted out of the room.
<<case 1 2>>
Before she leaves she skips over to give you a hug, squeezing her large breasts tightly against your face as you realise that, especially in heels, she is rather tall. She finishes off by reaching down to give your butt a squeeze.
<<case 3>>
ERROR: impossible path for scene.score_ceo
<<default>>
ERROR: unexpected scene.score_ceo <<=$scene.score_ceo>>
<</switch>>
<br><br>
Waiting until the patient and her mysterious escort have left, <<=setup.getNpcName("npc_work_doctor","formal")>> takes you back to <<his npc_work_doctor>> office and helps you out of your nurse uniform before dismissing you for the day.<br>
<br>
As you make your way to the elevator, you think back at the odd pairing of the girl and her escort, and especially the way that <<=setup.getNpcName("npc_work_doctor","formal")>> acted so oddly nervous and deferential.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
Thinking about it, you realise that <<he npc_work_doctor>> was actually paying the most attention to the girl, and you wonder what secrets she could be hiding that someone acting so ditzy and sex-crazed could have <<him npc_work_doctor>> on edge.
<<else>>
You wonder what the <<man npc_ceo_butler>> and <<his npc_ceo_butler>> slutty... assistant? slave? Whatever their relationship, you puzzle at who the enigmatic <<man npc_ceo_butler>> might be.
<</if>>
<br><br>
[<<moveTo "room_elevator_home" "Take the elevator down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: help npc_work_doctor; fuck ceo
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ceo.flags.dr_appointment_complete = true>>
<<switch $scene.dildo_size>>
<<case 3>>
<<addItem "strapon_large">>
<<wearItem 'strapon_large' true>>
<<case 2>>
<<addItem "strapon_med">>
<<wearItem 'strapon_med' true>>
<<case 1>>
<<addItem "strapon_small">>
<<wearItem 'strapon_small' true>>
<</switch>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_ceo_butler","npc_ceo_butler_alt") setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.dildo_size>>
<<case 3>>
The girl is drooling in anticipation as soon as you reach for the monstrous cock, staring with naked want as you
<<case 2>>
The girl looks on as you pick the medium dildo. Well, it's objectively large as far as cocks go, but middle of the road in size compared to the two other options. She looks on as you
<<case 1>>
The girl lets out a howl of frustration at the sight of your selection of the smallest dildo option. Despite this she has no choice but to sit there and wait as you
<<default>>
ERROR unexpected scene.dildo_size <<=$scene.dildo_size>>
<</switch>>
secure the harness over your nurse's uniform and then attach the dildo over top of the layers of rubber<<if setup.checkItemTypeWorn("cage")>> and your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> <</if>>beneath.<br>
<br>
As you lifted the dildo out of the drawer, you made an interesting discovery; that it is attached to a cum tube as you suddenly realise just how you are to "inject" her medication. Attaching the injection device to your hip you slot in the drug canister. Finding no "controls," you quickly piece together exactly how the "injection" is to be triggered.<br>
<br>
<<printThought "There's no way this is a standard medical procedure... and yet, everything is setup as if it was...">><br>
<br>
<<switch $scene.dildo_size>>
<<case 3>>
The heavy mass hanging off the front of your harness messes with your balance and you hold onto it with one hand to keep it from flopping around too much, in so doing marveling at its girth between your latex-gloved fingers.
<<case 2>>
It feels almost odd to have a cock sticking out from your hips as you walk the short distance from cabinet to patient, your silicone member swaying with each step.
<<case 1>>
The dildo bounces happily with each step as you walk back over to your "patient."
<<default>>
ERROR unexpected scene.dildo_size <<=$scene.dildo_size>>
<</switch>>
<br><br>
Given how much she has already been stretched, its likely you could ram in immediately, but you take a few moments to coat your temporary cock with lube. The whole time she stares at the phallus, the look in her eye leaving no doubt how much she wants it inside her body.<br>
<br>
Recalling how nervous <<=setup.getNpcName("npc_work_doctor","formal")>> had been to keep this particular patient happy, you do not leave her waiting long as you line up the slick tip of your strap-on up with one hand and then lean forward, gliding easily into her as her eyes roll back in pleasure.<br>
<br>
<<switch $scene.dildo_size>>
<<case 3>>
Your artificial cock is big and thick and long, but her body devours it eagerly until your hips are pressed against her flesh, the fat tip of the monster hilted inside of her visible slightly through her distended belly.
<<case 2>>
Despite feeling nothing through <<if setup.checkItemTypeWorn("cage")>>the combination of <<if setup.isCage()>>cage<<else>>chastity belt<</if>><<else>>the harness<</if>>, nurse attire and artificial cock watching your member slide into her stirs sensations inside of you, giving you an odd sense of power that you cannot quite describe.
<<case 1>>
Despite her initial disappointment at its size the girl seems quite happy to have something inside of her, moaning through the gag each time your hips bump into her body.
<<default>>
ERROR unexpected scene.dildo_size <<=$scene.dildo_size>>
<</switch>>
<br><br>
Taking hold of her hips to steady yourself, you begin thrusting, careful to pace yourself as the combination of your corset and being restricted to only breathing through the air-filtering nostril inserts means that you are soon starving for air.<br>
<br>
Moaning through her massive gag she looks to be in <<if $fetish.sissy>>sissy<<else>>total<</if>> bliss, her eyes unfocused, nostrils flared as she pants and gasps, her body straining against its bonds, not in search of escape, but to savour the delicious feeling of restriction.<br>
<br>
Reaching up, you grab hold of the chain linking her nipple piercings, tugging slightly to unleash a howl of pained ecstasy as her caged clitty leaks down onto your "cock," still thrusting back and forth inside of her.<br>
<br>
As you continue to pump, you feel a slight recoil as you realise that the drugs have started to discharge, each thrust sending more "medicine" deep inside of her as she cries out in delirious delight, her breasts swelling slightly, her nipples so hard and engorged the clamps pop free, her resultant cry of pain indistinguishable from her gag-muffled notes of pleasure.<br>
<br>
Though the sturdy nurse's "corset" <<if setup.checkItemTypeWorn("cage")>>and your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> beneath serve<<else>>serves<</if>> to dampen any sensation that might get through to your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>imprisoned cunt<</if>>, you are near your own limit, almost collapsing as the last of the drugs finish injecting, breathing hard as you stagger back. Somehow finding and shoving the plug back into her rear before any of her "medication" can leak out.<br>
<br>
[<<moveTo "event_work_doctor_ceo_6_bonus_2" "Continue." 600>>]
</div>/*#
#desc: help npc_work_doctor; ceo fuck aftermath
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.dildo_size>>
<<case 3>>
<<removeItem 'strapon_large' true>>
<<deleteItem 'strapon_large'>>
<<case 2>>
<<removeItem 'strapon_med' true>>
<<deleteItem 'strapon_med'>>
<<case 1>>
<<removeItem 'strapon_small' true>>
<<deleteItem 'strapon_small'>>
<</switch>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
Silently appearing at your side, the girl's escort speaks for the first time as <<he npc_ceo_butler>> helps you steady yourself and then begins removing her restraints and helping her back to her feet.<br>
<br>
<<switch $scene.dildo_size>>
<<case 3>>
"@@.npc_ceo_butler;You have done well today. You seem to have a natural connection with my sweet mistress, like two long-lost sisters.@@" <<He npc_ceo_butler>> smiles at the massive cock still protruding from your hips. "@@.npc_ceo_butler;Yes, you definitely have mutual interests. Perhaps we will meet again someday.@@"
<<case 2>>
"@@.npc_ceo_butler;You have done well today. You seem to have a natural connection with my sweet mistress, like two long-lost sisters.@@" <<He npc_ceo_butler>> smiles at the cock still protruding from your hips. "@@.npc_ceo_butler;Perhaps next time we meet the mistress will return the favour?@@"
<<case 1>>
"@@.npc_ceo_butler;You have done well today. You seem to have a natural connection with my sweet mistress, like two long-lost sisters.@@" <<His npc_ceo_butler>> gaze drifts to the artificial cock dangling from your hips. "@@.npc_ceo_butler;Well, perhaps not a FULL understanding, but, still.@@"
<<default>>
ERROR unexpected scene.dildo_size <<=$scene.dildo_size>>
<</switch>>
<br><br>
All but passed out, the girl is cradled easily in <<his npc_ceo_butler>> arms, blinking up at you a final time with a soft smile, somehow managing to look oddly innocent despite her skimpy outfit, massive gag, huge tits and what just transpired between the two of you.<br>
<br>
Alone in the exam room, you catch your breath and remove the harness before heading back to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office where <<he npc_work_doctor>> silently helps you change back into your normal clothes before dismissing you.<br>
<br>
[<<moveTo "room_elevator_home" "Take the elevator down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor; npc_futa suck her off
#status: FINISHED 0.7.4.0
#ignore_spell: d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_futa.stage = 5>>
<<registerProgressionEvent>>
<<if $scene.obey>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor") setup.charImage("npc_futa","npc_futa_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You drop to your knees in front of <<=setup.getNpcName("npc_futa","first")>> and take her in hand. It's a bit strange to suck her off with only the taste of the rubber mouth-condom rather than being able to enjoy the taste of her lovely girl-dick, but you have a job to do and you will not shirk such a duty.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Despite the muffling presence of your mouth condom you take her deep, a bit disappointed that you are prevented from supplementing with licking her balls you make up for it by wrapping your lips tight and reaching back to finger both of her holes with one of your gloved hands.
<<else>>
Your mouth-condom stretches slightly as you deep throat her <<getWordPenis false>>. Reaching between her legs, you slide a gloved finger into each of her holes.
<</if>>
<br><br>
"@@.npc_futa;Oh fuck, that's so good...@@"<br>
<br>
Unable to swallow anything, her pre is soon flowing down your chin even as your hand is soaked by her cunt as you are soon up to a full shocker, pumping and sucking away until she explodes and pushes you away.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
The added complexity of the latex condom built into your mask makes handling <<=ps(setup.getNpcName("npc_futa","first"))>> <<getWordPenis false>> more of a challenge than you would have expected, but you do your best, wrapping rubber lips around her and bobbing back and forth as you reach between her legs with a gloved hand to finger both of her holes.
<<else>>
Even if you didn't have the added challenge of the mouth condom built into your mask her <<getWordPenis false>> would be out of your skill range so you try and supplement with one latex-gloved hand stroking her shaft while the other reaches between her legs to finger her other two holes.
<</if>>
<br><br>
She moans in approval, juices dripping down your chin and arm as she thrusts her hips and starts working herself into a frenzy. Both hands on your head to "help" she slams half her <<getWordPenis false>> into your mouth with each thrust, gasping and moaning and finally climaxing hard, her thick <<if $fetish.futanari>>futa <</if>>cum flooding past your lips and dripping down your latex-covered chest as you keep trying to suck and keep up.
<</if>>
<br><br>
"@@.npc_futa;Too much, too sensitive,@@" she pants, even though you can't help but notice she remains as hard as when you started.<br>
<br>
Having been busy while you were doing your work, <<=setup.getNpcName("npc_work_doctor","formal")>> appears holding an onahole attached to a long hose, sliding the device over <<=ps(setup.getNpcName("npc_futa","first"))>> <<getWordPenis false>> and turning it on.<br>
<br>
She staggers at the sudden suction, leaning against the exam table as she gasps. "@@.npc_futa;Oh fuuuuuck,@@" she moans, though she makes no effort to remove the device and after about a minute of panting seems to refocus, still distracted, but a bit more "present" than she had been before.<br>
<br>
Stepping back, <<=setup.getNpcName("npc_work_doctor","formal")>> picks up <<his npc_work_doctor>> tablet and nods in the direction of <<his npc_work_doctor>> patient.
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> glances away to check <<his npc_work_doctor>> notes, when <<he npc_work_doctor>> looks up a few moments later to find you standing and <<=setup.getNpcName("npc_futa","first")>> still jerking herself off <<he npc_work_doctor>> frowns. "@@.npc_work_doctor;Something the matter?@@" <<he npc_work_doctor>> shakes <<his npc_work_doctor>> head and reaches under the exam table to come up with a hose, unwrapping a fresh onahole and screwing it to the end before sliding it over <<=ps(setup.getNpcName("npc_futa","first"))>> hard shaft.<br>
<br>
Leaning back, she braces herself against the exam table and moans. "@@.npc_futa;Oh Goddess, that feels so good...@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> glares at you a final time before turning back to the patient.
<</if>>
"@@.npc_work_doctor;So, how long have these feelings been inconveniencing you?@@"<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> is breathing heavy, the auto-suck device seeming to distract almost as much as it placates. "@@.npc_futa;Um, it's been building for a while now. I mean, ever since I grew my cock and started exploring stuff, I've been hornier, but before I could keep it under control by just having sex a few times a day. But now... my cunt is constantly dripping wet and I'm always hard, I fuck my <<boy>>friend when we wake up, then jerk it after I get to work, maybe find a coworker or two to drop a load into during the day. Once I'm home, I make my <<boy>>friend immediately suck me off, then I'll usually fuck <<him>> again before bed so I can sleep, but all that and it barely takes the edge off!@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> nods. "@@.npc_work_doctor;Yes, that sounds good and healthy. But what about yourself? When was the last time you got fucked, in either hole?@@"<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> blinks. "@@.npc_futa;Oh, um, I'm not sure? I mean, I'm always so hard, and my balls always feel so full...@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> smiles. "@@.npc_work_doctor;Ah, well, then, there you have it. Certainly, the gift of your cock is wonderful, but your body needs a balanced variety. I recommend getting fucked at least once a week in each hole, preferably more. I would also advise adding some internal stimulation to your other play — a nice butt plug or a vibrating egg should make fucking your <<boy>>friend even more intense and satisfying.@@"<br>
<br>
"@@.npc_futa;Oh my, I can't believe I didn't think of that before... I don't suppose, ah!@@" she gasps and takes a moment to steady herself, "@@.npc_futa;I don't suppose you could take care of me now? Oh Goddess, just the thought of a nice big cock pounding into me makes me long to literally fuck myself...@@"<br>
<br>
Putting <<his npc_work_doctor>> clipboard aside, <<=setup.getNpcName("npc_work_doctor","formal")>> smiles, filling a small syringe as <<he npc_work_doctor>> nods in your direction. "@@.npc_work_doctor;A double dose of vitamin D sounds like just the thing. Nurse, if you would please check the bottom drawer of the cabinet and equip yourself appropriately? The slender model should fit very nicely in <<=ps(setup.getNpcName("npc_futa","other"))>> ass while I introduce her cunt to what it's been missing.@@"<br>
<br>
Opening the drawer, you find a medical-grade harness and three dildos of varying size.<br>
<br>
[<<moveTo "event_work_doctor_npc_futa_2" "Select the small, slender dildo." 60 "<<set $scene.dildo_size=1>>">>]<br>
[<<moveTo "event_work_doctor_npc_futa_2" "Select the slightly above-average dildo." 60 "<<set $scene.dildo_size=2>>">>]<br>
[<<moveTo "event_work_doctor_npc_futa_2" "Select the monstrous, inhumanly large cock." 60 "<<set $scene.dildo_size=3>>">>]
</div>/*#
#desc: help npc_work_doctor; npc_futa fuck her
#status: FINISHED 0.7.4.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.dildo_size>>
<<case 3>>
<<addItem "strapon_large">>
<<wearItem 'strapon_large' true>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<case 2>>
<<addItem "strapon_med">>
<<wearItem 'strapon_med' true>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<case 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<set $scene.pickmeupBonus = $scene.obey>>
<<if $scene.pickmeupBonus>>
<<addItem 'pickmeup_candy'>>
<</if>>
<<addItem "strapon_small">>
<<wearItem 'strapon_small' true>>
<</switch>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor") setup.charImage("npc_futa","npc_futa_4")>>
<div id="invframe" class="scrolltext">
<<switch $scene.dildo_size>>
<<case 3>>
You've barely reached for the monster dildo when <<=setup.getNpcName("npc_work_doctor","formal")>> appears to slap your hand away.<br>
<br>
"@@.npc_work_doctor;Stupid girl, what do you think you're doing?@@" You can't help but notice that the dildo is larger than even <<his npc_work_doctor>> drug-assisted girth, but you stand silent and chided as <<he npc_work_doctor>> attaches the narrow dildo <<he npc_work_doctor>> had originally requested to your harness and leads you back to sit on the edge of the exam table. In an obvious hurry to get started, <<he npc_work_doctor>> lifts <<=setup.getNpcName("npc_futa","first")>> into the air, planting her ass-first on top of you. She gasps as her weight forces your dildo all the way into her in a single thrust.
<<case 2>>
Busy with <<his npc_work_doctor>> injection <<=setup.getNpcName("npc_work_doctor","formal")>> doesn't notice your selection until you walk towards <<him npc_work_doctor>> with the "medium" (though, in the strict sense, above average, bordering on large) dildo strapped to your hips.<br>
<br>
"@@.npc_work_doctor;Well, well, looks like my assistant wants to really push your limits.@@" Looking at you side-eyed, <<he npc_work_doctor>> grins slightly "@@.npc_work_doctor;Trying to compensate for being all locked up?@@"<br>
<br>
Chuckling at <<his npc_work_doctor>> "joke," <<he npc_work_doctor>> guides you up onto the edge of the exam table and then lifts <<=setup.getNpcName("npc_futa","first")>> into the air, planting her ass-first on top of you. She moans as her weight forces the large dildo into her body, panting quickly as she tries to adjust to its girth.
<<case 1>>
As instructed, you select the most slender of the three cocks, following <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> directions to sit on the edge of the exam bench as <<he npc_work_doctor>> lifts <<=setup.getNpcName("npc_futa","first")>> up and then deposits her ass-first onto you. She gasps as her weight forces your dildo all the way into her in a single thrust as she moans in delight.
<<default>>
ERROR unexpected scene.dildo_size <<=$scene.dildo_size>>
<</switch>>
<br><br>
Seemingly impatient, <<=setup.getNpcName("npc_work_doctor","formal")>> wastes no time in squaring up in front of <<=setup.getNpcName("npc_futa","first")>>, pulling her legs apart as <<he npc_work_doctor>> guides <<his npc_work_doctor>> thick, pulsing <<getWordPenis "npc_work_doctor">> up under her balls. The onahole still sucking away at her own hard cock, she trembles, her every motion running through your body as you support her weight mounted upon your artificial cock.<br>
<br>
You can only imagine how she feels as <<he npc_work_doctor>> pushes forward, gasping and whimpering, "@@.npc_futa;Oh goddess, it's too big!@@"<br>
<br>
"@@.npc_work_doctor;Nonsense,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> grunts. "@@.npc_work_doctor;You just need to relax and take it. Nurse, commence stimulation of the patient's breasts.@@"<br>
<br>
Reaching up on command, you grab <<=setup.getNpcName("npc_futa","first")>> from behind, caressing her full breasts and teasing her nipples through her top. She moans, but it seems to do the trick as with a final grunt <<=setup.getNpcName("npc_work_doctor","formal")>> thrusts forward and <<=setup.getNpcName("npc_futa","first")>> cries out, "@@.npc_futa;I'm so full!@@"<br>
<br>
<<His npc_work_doctor>> reply strained, <<=setup.getNpcName("npc_work_doctor","formal")>> begins to slowly move in and out, each thrust bottoming out with a thud as the dual dongs war for space inside her body. "@@.npc_work_doctor;Trust me, I, @@" SLAM "@@.npc_work_doctor;Am@@" SLAM "@@.npc_work_doctor;A medical professional!@@"<br>
<br>
With each thrust <<his npc_work_doctor>> pace increases and <<=ps(setup.getNpcName("npc_futa","first"))>> cries turn into delirious moans of pleasure. "@@.npc_futa;Harder! Harder! Fuck me harder!@@" she shouts as the force of <<his npc_work_doctor>> thrusts shake through both of you until <<=setup.getNpcName("npc_futa","first")>> falls back, the combined weight pinning you to the table as <<he npc_work_doctor>> slams into her.<br>
<br>
With a final grunt, <<=setup.getNpcName("npc_work_doctor","formal")>> cums with such force that you would swear you somehow felt the flood of <<getWordCum>> swell against your artificial member. As soon as <<he npc_work_doctor>> pulls out, you lose your grip, <<=setup.getNpcName("npc_futa","first")>> sliding off of your slick rubber body as the dildo pops out of her ass and she crumples to the floor. Still trying to catch your breath, you sit up and stagger to your feet, watching as <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> cock shrinks rapidly in the time it takes <<him npc_work_doctor>> to stuff it into <<his npc_work_doctor>> pants.<br>
<br>
Out of breath, <<he npc_work_doctor>> approaches you with your nurse's mask/gag, stuffing it into your mouth and buckling it tight as <<he npc_work_doctor>> leans close to whisper in your ear.
<<if $scene.obey && $scene.dildo_size == 1>>
"@@.npc_work_doctor;Good girl.@@" <<he npc_work_doctor>> growls, the words sending a shudder of pleasure through your body, the harshness with which <<he npc_work_doctor>> locks the gag back in place somehow a tender act between a (temporary) <<master npc_work_doctor>> and <<his npc_work_doctor>> slave.
<<else>>
"@@.npc_work_doctor;Next time, try to follow directions@@" <<he npc_work_doctor>> growls, punctuating <<his npc_work_doctor>> words by harshly cinching the gag tight and locking it in place.
<</if>>
<br><br>
Looking exhausted, <<=setup.getNpcName("npc_futa","first")>> lies in a pile on the floor, the onahole finally having slipped free of her finally deflated <<getWordPenis false>>. Picking up <<his npc_work_doctor>> tablet, <<=setup.getNpcName("npc_work_doctor","formal")>> scribbles something down. "@@.npc_work_doctor;I wrote you a prescription to get a cast made of your cock. I recommend you get a pair of vibrating copies to keep in your desk and another pair for your home, fucking yourself with yourself would be an excellent way to provide temporary relief. Allowing your <<boy>>friend to fuck you on occasion may also be prudent, utilize a plug in the other hole for additional fullness and have <<him>> strap on one of your clones if <<his>> <<if !$options.fem>>natural size <</if>>proves inadequate for your needs. Also, your tits could do with a pair of nipple rings. Not strictly medically necessary, but I believe you would enjoy them.@@"<br>
<br>
Turning to you, <<=setup.getNpcName("npc_work_doctor","formal")>> nods. "@@.npc_work_doctor;Nurse, attend to cleaning up the patient then return to my office to get changed.@@" Turning quickly, <<he npc_work_doctor>> leaves, the door shutting tight behind <<him npc_work_doctor>> leaving you alone with the orgasm-drunk <<if $fetish.futanari>>futanari<<else>>sex demon<</if>>.<br>
<br>
Eyes half focused, she hugs your ankle and stares up at you. "@@.npc_futa;Th-thank you. I've never been fucked like that before... I thought having a cock of my own was life-changing, but getting pleasured from so many directions at once... well, it seems like I have a lot of options yet to explore!@@"<br>
<br>
You help her back to her feet and help straighten her clothes and hair. She looks at you with a smile as you realise that this whole time she's had no idea who you actually are. "@@.npc_futa;Thanks again, <<if $scene.dildo_size==2>>especially for pushing my limits, I've never felt that full but... wow! <</if>>I'd love to return the favour sometime... though I guess you'd have to find me!@@" She chuckles as she nods towards your gag. "@@.npc_futa;Damn, really shouldn't think like that, what with finally being back under control! I should try to avoid going all slut-brained for at least a few hours!@@"<br>
<br>
Taking a deep breath, she hugs you in thanks and then heads off, leaving you to clean up the cock-sucking machine and the rest of the room before returning to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office where <<he npc_work_doctor>> hoses you down in the shower then helps you change from nurse's attire into your normal clothes before sending you on your way.<br>
<br>
<<include "pickmeupBonus">>
[<<moveTo "room_elevator_home" "Take the elevator down to the lobby." 600 "<<switch $scene.dildo_size>><<case 3>><<removeItem 'strapon_large' true>><<deleteItem 'strapon_large'>><<case 2>><<removeItem 'strapon_med' true>><<deleteItem 'strapon_med'>><<case 1>><<removeItem 'strapon_small' true>><<deleteItem 'strapon_small'>><</switch>><<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor; hucow milking
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_hucow.stage = 5>>
<<registerProgressionEvent>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<showImage "./images/scenes/scene_hucow01.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> spends several minutes examining <<=ps(setup.getNpcName('npc_hucow', 'first'))>> large, full breasts before nodding in satisfaction. Giving one of her breasts a squeeze prompts her to gasp as a few drops of milk escape her swelled nipple to trickle down the thick ring piercing it.<br>
<br>
"@@.npc_work_doctor;Very full, good, if you could take a seat we'll get those drained and check your production.@@"<br>
<br>
Smiling eagerly, <<=setup.getNpcName('npc_hucow', 'first')>> gets down on all fours amidst a strange arrangement of heavy duty tubes and what prove to be restraints as <<=setup.getNpcName("npc_work_doctor","formal")>> commences to start strapping her into position.<br>
<br>
You watch on in silence as <<=setup.getNpcName('npc_hucow', 'first')>> is secured and then <<=setup.getNpcName("npc_work_doctor","formal")>> rubs a thin gel on the rim of a large, clear hemisphere. <<=setup.getNpcName('npc_hucow', 'first')>> stares at the half-orb with naked lust as <<=setup.getNpcName("npc_work_doctor","formal")>> commences to arrange it over her breast, first removing her large nipple piercings and then attaching cups onto the tip of each mammoth mammary. A tube leads out from the end of each cup and <<=setup.getNpcName("npc_work_doctor","formal")>> fiddles for a few moments. The sound of a soft pump is overpowered by <<=ps(setup.getNpcName('npc_hucow', 'first'))>> moan as her nipples swells slightly under what is obviously some sort of suction.<br>
<br>
Eyelids fluttering, <<=setup.getNpcName('npc_hucow', 'first')>> seems almost ready to orgasm just from this much staring intently as <<=setup.getNpcName("npc_work_doctor","formal")>> hooks up the other breast the same. Next up, a ball gag is pressed into her mouth, a single tube leading out from the gag and connected to the machine behind her — atop which you see a large cylinder that is already filling up with droplets of milk as the breast pumps start to slowly do their job.<br>
<br>
Glancing over at the container <<=setup.getNpcName("npc_work_doctor","formal")>> smiles "@@.npc_work_doctor;You WERE full! Well, don't worry, I'll have you hooked up the rest of the way in a moment.@@"<br>
<br>
<<=setup.getNpcName('npc_hucow', 'first')>> softly moans as <<=setup.getNpcName("npc_work_doctor","formal")>> drops down, lifting a mechanical arm-mounted dildo from between her legs and lining it up with her dripping cunt, sliding it into place and then activating it to start thrusting, her shuddering response confirming the importance of her thorough restraints.<br>
<br>
"@@.npc_work_doctor;There we go,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with satisfaction as <<he npc_work_doctor>> peels off and pitches <<his npc_work_doctor>> gloves. "@@.npc_work_doctor;Nurse?@@" <<He npc_work_doctor>> motions you over to a control panel in front of the machine pumping and sucking away at <<=setup.getNpcName('npc_hucow', 'first')>>.<br>
<br>
"@@.npc_work_doctor;I need you to monitor <<=setup.getNpcName('npc_hucow', 'nickname')>> while she is milked. Her production is maximised if she is stimulated, but without going over the top. Essentially you want to edge her, then ruin her orgasm if she starts to get out of control. The system is relatively straightforward so I will leave you to it. A bit of self-learning is fun, right?@@"<br>
<br>
<<He npc_work_doctor>> laughs, locking your leash to the control panel to limit your mobility before leaving you alone to "tend" to your patient.<br>
<br>
[<<moveTo "event_work_doctor_npc_hucow_2" "Continue." 600>>]
</div>/*#
#desc: help npc_work_doctor; hucow milking choice
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<showImage "./images/scenes/scene_hucow01.png">>
<div id="invframe" class="scrolltext">
Leashed to the control panel, all you can do is watch as <<=setup.getNpcName('npc_hucow', 'first')>> moans and writhes, dildo pumping into her and breast-cups sucking away as the milk reservoir steadily fills.<br>
<br>
Remembering your instructions, you tear your gaze away from the lusty-eyed human cow to examine the control panel.<br>
<br>
Just as <<=setup.getNpcName("npc_work_doctor","formal")>> described, things are remarkably straightforward, a touch-screen display showing two gauges displaying milk production and her current arousal level. The former is reading 5% and climbing while the latter is high, but, well shy of the "redline" marked orgasm. In addition there are several touch-control dials that allow you to vary the intensity of her stimulation.<br>
<br>
<<printThought "Hmm, this seems like it could have been automated...">><br>
<br>
<<if setup.getTotalValue("smart") > 10>>
Employing some tricks from your old IT days you manage to pull up an "advanced option" menu that gives you some additional controls.<br>
<br>
<label>Enable "pump priming" <<checkbox "$scene.milk" false true>></label><<if setup.getTotalValue("smart") > 10>><<hint $options "This probably recycles a portion of her milk to encourage greater production.">><</if>><br>
<label>Turn on rear "overdrive" <<checkbox "$scene.anal" false true>></label><<if setup.getTotalValue("smart") > 10>><<hint $options "I bet this adds anal stimulation.">><</if>><br>
<label>Activate the pussy pump <<checkbox "$scene.pussy" false true>></label><<if setup.getTotalValue("smart") > 10>><<hint $options "I bet this will make her pussy REALLY sensitive.">><</if>><br>
<br>
<</if>>
[<<moveTo "event_work_doctor_npc_hucow_3" "Don't touch anything and just let her go like she is." 1800 "<<set $scene.action='none'>>">>]<br>
[<<moveTo "event_work_doctor_npc_hucow_3" "Try to keep her arousal high, but don't push it." 1800 "<<set $scene.action='low'>>">>]<br>
[<<moveTo "event_work_doctor_npc_hucow_3" "Give her as much as she can handle and let her enjoy an orgasm from time to time." 1800 "<<set $scene.action='med'>>">>]<br>
[<<moveTo "event_work_doctor_npc_hucow_3" "Push her to the limit and try to keep her constantly on edge, ruining as necessary." 1800 "<<set $scene.action='high'>>">>]
</div>/*#
#desc: help npc_work_doctor; hucow milking
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'none'>>
<<set $scene.total_production = 50>>
<<case 'low'>>
<<set $scene.total_production = 70>>
<<case 'med'>>
<<set $scene.total_production = 90>>
<<case 'high'>>
<<set $scene.total_production = 110>>
<</switch>>
<<if $scene.milk && $scene.anal && $scene.pussy>>
<<set $scene.total_production *= 2>>
<<else>>
<<if $scene.milk>>
<<set $scene.total_production += 10>>
<</if>>
<<if $scene.anal>>
<<set $scene.total_production += 10>>
<</if>>
<<if $scene.pussy>>
<<set $scene.total_production += 10>>
<</if>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<showImage "./images/scenes/scene_hucow01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.milk || $scene.anal || $scene.pussy>>
You confirm your selection and the machine sets into motion.<br>
<br>
<<if $scene.milk && $scene.anal && $scene.pussy>>
<<=setup.getNpcName('npc_hucow', 'first')>> glances over at you with a hint of fear that melts into fresh lust as the first of the "recycled" milk is pumped through her gag. Down below, a shroud encompasses her dripping snatch, a large suction vibrator enveloping her clit as the dildo continues to pump; joined by a second that slides up from below to piston up into her ass.
<<else>>
<<if $scene.milk>>
Her eyes lose focus as the first squirt of milk is "recycled" back through her gag.
<</if>>
<<if $scene.anal>>
A second dildo rises from behind to begin pistoning up into her ass.
<</if>>
<<if $scene.pussy>>
A shroud rises to encompass her dripping snatch, a large suction vibrator enveloping her clit as the original dildo continues to pump.
<</if>>
<</if>>
<</if>>
<<switch $scene.action>>
<<case 'none'>>
You stand and watch as the machine works her over. At times she seems almost bored as she adjusts to even the intense stimulation her body is receiving and you watch the reservoir of milk slowly rise to the <<=$scene.total_production>>% mark.
<<case 'low'>>
Watching your "patient" closely you vary things up a bit, giving her a bit extra if she starts to seem bored, but backing off if it looks like it's getting too intense. The whole time you watch the reservoir of milk steadily rise until it is at the <<= $scene.total_production>>% mark.
<<case 'med'>>
Turning up the stimulation it isn't long before your "patient" experiences her first orgasm. The rate of milk production dips for a short while after, but the intensity of the stimulation the machine is putting out under your command soon has her roaring along again, the reservoir rising towards the <<=$scene.total_production>>% mark.
<<case 'high'>>
You crank the power with an eagle eye on the meters, punching the "vent" button just before she hits red-line, her body spasming in desperation against its bonds as almost all stimulation halts. Once the tiny dip of the ruin is passed you push her even harder, abusing her sensitive body to keep her right on the edge. Though she howls in maddened frustration you are rewarded with the reservoir of milk racing past 100% towards the <<=$scene.total_production>>% mark.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
Focused on your patient, you almost miss when the door unlocks and <<=setup.getNpcName("npc_work_doctor","formal")>> walks into the room.<br>
<br>
[<<moveTo "event_work_doctor_npc_hucow_4" "Continue." 600>>]
</div>/*#
#desc: help npc_work_doctor; hucow milking end
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.total_production > 200>>
<<set $npc_hucow.flags.ultimateMilking = true>>
<<addItem 'hucow_milk'>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 2>>
<<set $scene.pickmeupBonus = true>>
<<elseif $scene.total_production > 150>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<set $scene.pickmeupBonus = true>>
<<elseif $scene.total_production > 100>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<set $scene.pickmeupBonus = true>>
<<else>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<</if>>
<<if $scene.pickmeupBonus>>
<<addItem 'pickmeup_candy'>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<showImage "./images/scenes/scene_hucow01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.total_production > 200>>
You look up from the console as <<=setup.getNpcName("npc_work_doctor","formal")>> looks at the near-to-overflowing milk reservoir in shock, rushing across the room to turn off the machine and stare at you in surprise while your patient goes limp in her bonds, the twin breast cups detaching with a pop and her lower companions retracting slowly from her dripping, gaping holes.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> removes her gag, her head drooping as she stares blankly at the floor, drool leaking out to drip down her still massive tits. Checking her vitals <<he npc_work_doctor>> finally turns towards you.<br>
<br>
"@@.npc_work_doctor;Well, well... I have to say that I'm a bit surprised at you. To push a patient so hard... while I cannot argue with the results, I must say I am a touch concerned by the methods...@@"<br>
<br>
From <<his npc_work_doctor>> expression, <<=setup.getNpcName("npc_work_doctor","formal")>> seems happy with you, though also somewhat suspicious as <<he npc_work_doctor>> walks over to the large reservoir of milk. <<He npc_work_doctor>> pushes a few buttons causing a small container to be dispensed full of the thick, creamy liquid. Capping the vial of milk <<he npc_work_doctor>> unclips your leash from the console and leads you towards the door. "@@.npc_work_doctor;Fortunately that slut is made of stern stuff so she'll be fine, as for you well...@@"<br>
<br>
<<He npc_work_doctor>> wiggles the vial of milk and smiles. "@@.npc_work_doctor;I think this is a suitable reward for the bountiful harvest you helped produce. Come, let's head back to the lab where you can change and head home... maybe to enjoy your treat?@@"
<<elseif $scene.total_production > 150>>
You glance up from the console as <<=setup.getNpcName("npc_work_doctor","formal")>> looks at the nearly full reservoir. Turning off the machine, <<he npc_work_doctor>> leaves the "patient" in her bonds, but removes all but her mask, leaving her to recover with a slow trickle of "recycled" milk flowing into her for nourishment.<br>
<br>
"@@.npc_work_doctor;I must say, I am... quite surprised at your inventiveness. Yes, you did quite the impressive job to help our lovely subject really give her all.@@" Detaching your leash from the console <<he npc_work_doctor>> gives a gentle tug for you to follow.
<<elseif $scene.total_production > 100>>
You look up from the console as <<=setup.getNpcName("npc_work_doctor","formal")>> nods, obviously impressed at the over half-full reservoir, the thick milk rising all the way to the <<=$scene.total_production>>% production mark.<br>
<br>
"@@.npc_work_doctor;Impressively done, though I am a bit surprised you didn't push our lovely hucow a bit further... she won't break, you know.@@"<br>
<br>
You aren't totally sure about that, <<=setup.getNpcName('npc_hucow', 'first')>> looks a bit dazed and out of it even after <<=setup.getNpcName("npc_work_doctor","formal")>> has removed breast cups and the rest of her stimulation to leave her seated in her restraints and gag, leaving her to quietly recover as <<he npc_work_doctor>> takes hold of your leash.
<<else>>
You look up from the console as <<=setup.getNpcName("npc_work_doctor","formal")>> frowns, shaking <<his npc_work_doctor>> head as <<he npc_work_doctor>> looks at the mere <<=$scene.total_production>>% production that doesn't even half fill the reservoir.<br>
<br>
"@@.npc_work_doctor;Were you just standing around doing nothing?@@" <<He npc_work_doctor>> chides as <<he npc_work_doctor>> walks over, swiping <<his npc_work_doctor>> badge to bring up an admin menu where <<he npc_work_doctor>> activates an "auto-milking" mode. The pumps and dildo instantly accelerate and <<=setup.getNpcName('npc_hucow', 'first')>> shudders in her bonds, moaning lustily as a trickle of milk is recycled back through her gag. Almost immediately the rate of milk dripping into the reservoir increases as <<=setup.getNpcName("npc_work_doctor","formal")>> nods in satisfaction. "@@.npc_work_doctor;Very disappointing. I give you an opportunity to add a human touch to <<=ps(setup.getNpcName('npc_hucow', 'first'))>> routine and I would have been better off just leaving it on auto.@@"<br>
<br>
Unhooking your leash <<he npc_work_doctor>> gives you a sharp tug and you hurry to follow <<him npc_work_doctor>> out of the room and back to the elevator.
<</if>>
<br><br>
<<if $scene.total_production > 100>>
<<He npc_work_doctor>> smiles as <<he npc_work_doctor>> leads the way out of the room. As you walk up the hall, you pass another nurse, presumably on her way to clean up and release the tired Hucow.
<</if>>
<br><br>
Back in <<his npc_work_doctor>> lab, <<=setup.getNpcName("npc_work_doctor","formal")>> helps you out of your nurse's uniform and back into your normal clothes before <<if $scene.total_production > 200>>handing you the vial containing your "reward" and <</if>>sending you on your way.<br>
<br>
<<include "pickmeupBonus">>
[<<moveTo "room_elevator_home" "Head down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<removeItem 'medical_leash' true>><<deleteItem 'medical_leash'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor; nintendolls check-in
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
"@@.npc_nintendolls;It's this dumb slut.@@" <<=setup.getNpcName("npc_nintendolls","formal")>> states as <<he npc_nintendolls>> gives the trussed up girl at <<his npc_nintendolls>> side a sharp slap on the ass, hard enough to echo in the exam room and prompt her to gasp through her gag as her tightly caged <<getWordPenis false>> bounces against her thighs.<br>
<br>
"@@.npc_work_doctor;Is she not performing as promised? Showing obstinance?@@"<br>
<br>
<<=setup.getNpcName("npc_nintendolls","formal")>> shakes <<his npc_nintendolls>> head. "@@.npc_nintendolls;Quite the opposite, actually. See, after all the trouble she caused back when she was on the board I was really enjoying taking out my frustration on her bimbofied body, but now... whatever I do she just thanks me and asks for more!@@"<br>
<br>
"@@.npc_work_doctor;Ah, I see, I see, well, that shouldn't be a problem, I can just adjust her dosage — keep her properly docile, but letting the old personality peek through enough to keep things... interesting.@@"<br>
<br>
<<=setup.getNpcName("npc_nintendolls","formal")>> seems intrigued, choking up on <<his npc_nintendolls>> grip on <<his npc_nintendolls>> slave's leash. "@@.npc_nintendolls;What do you mean by that?@@"<br>
<br>
"@@.npc_work_doctor;The biochemistry details are a bit complicated, but the short version is she'll still find herself compelled to obey you, but instead of being happy about it she'll be helpless in her own body, like a robot obeying commands, but knowing the whole time that she's a prisoner.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_nintendolls","formal"))>> lips spread in a cruel grin. "@@.npc_nintendolls;Oh, that sounds just perfect, so how soon can she be ready?@@"<br>
<br>
"@@.npc_work_doctor;Not long at all, just a matter of flushing her system, pumping in the new prescription and a quick confirmation test. Tell you what — being that you're a member of the Social Interaction Service Syndicate board now, and entitled to all the privileges involved, how about you fuck my nurse for a bit? By the time you're done, your slut should be ready for you to take home and put in her place.@@"<br>
<br>
"@@.npc_nintendolls;Capital@@" <<=setup.getNpcName("npc_nintendolls","formal")>> replies. "@@.npc_nintendolls;Come on, nurse, why don't you bend over and show me that ass so we can both enjoy watching the magic happen.@@"<br>
<br>
Removing the crotch panel of your nurse's outfit to expose your rear, <<=setup.getNpcName("npc_work_doctor","formal")>> smiles back. "@@.npc_work_doctor;Not magic, just good science.@@"<br>
<br>
You glance at the helpless, but currently air-brained slave and then to her "owner;" <<=setup.getNpcName("npc_nintendolls","formal")>>, with <<his npc_nintendolls>> cock out and in hand.<br>
<br>
<<printThought "There is nothing I can do for her now, but maybe by gaining the doctor's trust I can save us all...">><br>
<br>
[<<moveTo "event_work_doctor_help_nintendolls_2" "Bend over as instructed." 60 "<<set $scene.obey = true>>">>]<br>
[<<moveTo "event_work_doctor_help_nintendolls_2" "Try to refuse." 60 "<<set $scene.obey = false>>">>]
</div>/*#
#desc: help npc_work_doctor; nintendolls decision
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $npc_nintendolls.stage = 6>>
<<registerProgressionEvent>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<applyExperience 'anal' $npc_nintendolls.penis_size 'normal' $SEEN_STRANGER>>
<<set $scene.pickmeupBonus = true>>
<<addItem 'pickmeup_candy'>>
<<else>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
As you have so many times before, you bend over, bracing on your knees in preparation as <<=setup.getNpcName("npc_nintendolls","formal")>> steps behind and grabs hold of your hips.<br>
<br>
<<if setup.getChastityLevel() == 5>>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
You moan, <<his npc_nintendolls>> large <<getWordPenis "npc_nintendolls">> made even thicker thanks to the hollow plug in your ass; just the type of mammoth gape you have come to love.
<<else>>
You moan, <<his npc_nintendolls>> already large <<getWordPenis "npc_nintendolls">> now thick and massive thanks to the hollow plug locked in your ass.
<</if>>
<<He npc_nintendolls>> maintains a leisurely pace as the both of you observe the process of <<his npc_nintendolls>> "slave" receiveing treatment.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
<<Hes npc_nintendolls>> large to begin with, but the added girth of the hollow plug locked in your rear makes it impossible for <<his npc_nintendolls>> large <<getWordPenis "npc_nintendolls">> to fit inside of you.
<<else>>
Even without the hollow plug locked in your hole <<his npc_nintendolls>> <<getWordPenis "npc_nintendolls">> would be a bit large to fit in your surprisingly impregnable rear.
<</if>>
Grunting in annoyance <<he npc_nintendolls>> slides <<his npc_nintendolls>> cock between your rubber-encased buttocks, seeming to find satisfaction enough between that and watching <<his npc_nintendolls>> "slave" receive treatment.
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
You moan, <<his npc_nintendolls>> large <<getWordPenis "npc_nintendolls">> easily entering your ass.
<<else>>
You moan, <<his npc_nintendolls>> large <<getWordPenis "npc_nintendolls">> nicely filling your ass.
<</if>>
<<He npc_nintendolls>> maintains a leisurely pace as the both of you watch on as <<his npc_nintendolls>> "slave" receives treatment.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
The addition of the anal condom built into your uniform proves too much for <<his npc_nintendolls>> <<getWordPenis "npc_nintendolls">> to slide into you.
<<else>>
<<His npc_nintendolls>> <<getWordPenis "npc_nintendolls">> is just too large to fit into your rear, especially with the added friction of the anal condom built into your uniform.
<</if>>
Grunting in annoyance <<he npc_nintendolls>> slides <<his npc_nintendolls>> cock between your rubber-encased buttocks, seeming to find satisfaction enough between that and watching <<his npc_nintendolls>> "slave" receive treatment.
<</if>>
<</if>>
<br><br>
You bounce slightly with each thrust as you try to keep your balance and watch the "procedure" transpiring in front of you.<br>
<br>
Utterly obedient, <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> slave has willingly gone along as <<=setup.getNpcName("npc_work_doctor","formal")>> moves her from her normal bondage into an even more secure position strapped to an exam chair. Humming softly, <<he npc_work_doctor>> begins injecting her with a series of drugs.<br>
<br>
The first shot seems to reset her, dull eyes suddenly snapping open as she thrashes against her bonds and screams unintelligibly through her gag. Disturbingly, this outburst prompts <<=setup.getNpcName("npc_nintendolls","formal")>> to increase <<his npc_nintendolls>> pace in excitement.<br>
<br>
"@@.npc_nintendolls;That's right! That's the fire I missed, mmm, the look in her eyes, that's right you fucker, I did this to you and you are never going to escape!@@"<br>
<br>
A second injection has the bound "girl" slowly cease thrashing against her restraints, but her eyes remain wide and scared, flicking around the room, desperately searching for some means of escape.<br>
<br>
Working more carefully now, <<=setup.getNpcName("npc_work_doctor","formal")>> pulls out a final device, using what looks like a bulky, oversized gun to implant something in the back of the helpless patient's neck. Her eyelids flutter and then refocus, the look of fear deadened, but now tinged with lust and a touch of jealously as she stares directly at you being fucked.<br>
<br>
"@@.npc_work_doctor;Here we go.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with a smile as <<he npc_work_doctor>> starts unstrapping the patient. "@@.npc_work_doctor;This procedure is still a bit experimental, I'll admit, but one that I think you are going to love. By default, you should find your slave utterly obedient as you have become accustomed, but with a simple trigger word — it defaults to THINK.@@" The girl blinks, seeming to stiffen as her gaze becomes panicked "@@.npc_work_doctor;She becomes fully cognisant of what's going on... though unable to do anything about it.@@"<br>
<br>
Spurred on by a final burst of energy, <<=setup.getNpcName("npc_nintendolls","formal")>>
<<if setup.getTotalValue("anal") > 10>>
gives a final thrust and cums deep inside of you.
<<else>>
forces the tip of <<his npc_nintendolls>> ample <<getWordPenis "npc_nintendolls">> into you and unleashes a massive load.
<</if>>
The condom inside of you swells, but holds, keeping the hot <<getWordCum>> from infiltrating your body.<br>
<br>
"@@.npc_nintendolls;Sorry,@@" <<he npc_nintendolls>> says with a grunt, "@@.npc_nintendolls;Go on.@@"<br>
<br>
Unphased by <<his npc_work_doctor>> client cumming in the middle of a discussion, <<=setup.getNpcName("npc_work_doctor","formal")>> nods. "@@.npc_work_doctor;As I was saying, she will remain obedient, but fully aware, and even more insidious, she will be unable to resist feeling intense pleasure whenever she obeys a direct command. Here, a demonstration will help.@@" Turning to the girl, <<=setup.getNpcName("npc_work_doctor","formal")>> removes her gag with an evil grin on <<his npc_work_doctor>> face. "@@.npc_work_doctor;Why don't you lick your <<master npc_nintendolls>>'s cum out of my nurse's ass so that it doesn't go to waste.@@"<br>
<br>
"@@.generic_female1;What, no!@@" the girl objects even as she walks around behind you and drops to her knees. You moan as she pulls herself into your rear, her hands squeezing your hips as you hear slurping and feel her tongue probing surprisingly far into your condom-lined hole.<br>
<br>
"@@.npc_work_doctor;The verbal outbursts will be a bit intermittent — we're still ironing out some of the kinks and will have to adjust her programing to either stop them or allow her to speak freely even as her body betrays her. Until she is calibrated to your liking, you can always sort her out with a gag, as you well know.@@"<br>
<br>
<<if $npc_nintendolls.fem == $npc_work_doctor.fem>>The two <<men npc_nintendolls>><<else>><<=setup.getNpcName("npc_work_doctor","formal")>> and <<=setup.getNpcName("npc_nintendolls","formal")>><</if>> laugh as you shudder in near orgasm — the thin latex of your anal sheath amplifies the actions of her tongue, fluttering slightly inside of you as she slurps out the last of the cum.<br>
<br>
"@@.npc_nintendolls;Another wonderful innovation! Ah, I am so glad I decided to come on board with your company and its wonderful practices!@@" <<=setup.getNpcName("npc_nintendolls","formal")>> states as <<he npc_nintendolls>> pulls <<his npc_nintendolls>> slave back to her feet and shoves the gag back in place. "@@.npc_nintendolls;I shall have to do some more experimentation later but, for now, I have taken enough of your time. I must be off! And you, I am sure, must be back to helping other patients and making even more wonderful discoveries.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> nods in appreciation as the two "patients" leave the room. Smiling at you, <<he npc_work_doctor>> packs up and leads the way back to <<his npc_work_doctor>> office.<br>
<br>
"@@.npc_work_doctor;Superbly done today. Keeping <<=setup.getNpcName("npc_nintendolls","formal")>> happy is quite a priority... though I have to say, it took some effort not to let on who you were while <<he npc_nintendolls>> was fucking you! Ah, that would have been an amusing reaction for sure, if <<he npc_nintendolls>> knew that <<he npc_nintendolls>> was balls deep in the dumb slut responsible for that nasty data loss incident!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> chuckles to <<himself npc_work_doctor>> as <<he npc_work_doctor>> helps you out of the nurse's outfit and back into your clothes, thanking you yet again for the assistance before dismissing you for the day.
<<else>>
You cross your arms and shake your head, <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> gaze narrowing at your defiance.<br>
<br>
"@@.npc_work_doctor;I am very sorry, I do not know what has come into my nurse for her to be defiant like this, if you would just wait we can proceed with the procedure anyway...@@"<br>
<br>
"@@.npc_nintendolls;No, I think I shall have to return some other time. I am quite in the mood to fuck some nice <<if $fetish.sissy>>sissy <</if>>ass so if your nurse is being uncooperative well... I believe I will just make use of my property instead.@@"<br>
<br>
With a blank stare <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> slave follows along on her leash as <<=setup.getNpcName("npc_nintendolls","formal")>> departs the exam chamber.<br>
<br>
Once the patients have departed and the two of you are alone <<=setup.getNpcName("npc_work_doctor","formal")>> snorts in annoyance. "@@.npc_work_doctor;Really, if you are not prepared to assist I do not know why you volunteer to help me. Frankly you are lucky <<he npc_nintendolls>> did not just bend you over and take you. No matter — it would easily be within <<his npc_nintendolls>> rights and it is what a quite disobedient slut like you deserves. Come, if you are going to disgrace that uniform you should be out of it and on your way.@@"<br>
<br>
Storming past <<=setup.getNpcName("npc_work_doctor","formal")>> leads the way back to <<his npc_work_doctor>> office where you quickly change back into your normal clothes and are dismissed.
<</if>>
<br><br>
<<include "pickmeupBonus">>
[<<moveTo "room_elevator_home" "Head down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor; npc_secretary exam
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.notKnown = $npc_secretary.stage < 2 && !$npc_secretary.flags.checkedPicture>>
<<if $npc_secretary.stage < 2>>
<<set $npc_secretary.stage = 2>>
<</if>>
<<set $npc_secretary.flags.exam = true>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_8'
1
'event_psychiatrist_session_manager_npc_secretary'
false
>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_predecessor'
0
'event_manager_theme_npc_secretary'
true
>>
<<set $scene.cocks = random(20,25)>>
<<set $scene.sex = random(10,13)>>
<<set $scene.ass = random(25,30)>>
<</if>>
<<set $player.location to 'Conference Room of Social Interaction Service Syndicate Inc.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_work_doctor") setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
Walking around the naked woman <<=setup.getNpcName("npc_work_doctor","formal")>> looks her over and begins asking questions, recording each answer in <<his npc_work_doctor>> notepad.<br>
<br>
"@@.npc_work_doctor;Everything looks in order, you seem to have healed up well from your last flogging. How many times have you been used since our last visit?@@"<br>
<br>
"@@.npc_secretary;I have sucked <<=$scene.cocks>> cocks, been fucked <<=$scene.sex>> times and taken it up the ass another <<=$scene.ass>> times since last week's checkup.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> snorts "@@.npc_work_doctor;<<=setup.getNpcName("npc_boss","other")>> is still addicted to anal, I see, that medication I prescribed helping?@@"<br>
<br>
"@@.npc_secretary;Yes, between that and my therapy sessions, I have come to appreciate that being <<his npc_boss>> butt-slut is something wonderful for me to be proud of. Would you like to fuck me? I've been practicing and my ass is much more accommodating than the last time you blessed it with your glorious presence.@@"<br>
<br>
You aren't sure which is more strange — her businesslike description of an apparently hedonistic lifestyle, or the nonchalant way that <<=setup.getNpcName("npc_work_doctor","formal")>> treats things as if this was a perfectly normal medical check-up. "@@.npc_work_doctor;Time is a bit tight today so I will have to take a rain check. Speaking of tight, let's check your internals, first your mouth.@@"<br>
<br>
She opens her lips wide and <<he npc_work_doctor>> uses a small pen-light to look around. "@@.npc_work_doctor;Good, good, no signs of bruising, you've been learning to relax?@@"<br>
<br>
"@@.npc_secretary;Yes, <<sir npc_work_doctor>>,@@" she replies, responding to <<his npc_work_doctor>> gesture by hopping up on the table and spreading her legs. "@@.npc_secretary;My gag reflex has finally gone away completely. I almost passed out sucking cock this morning and I never coughed once.@@"<br>
<br>
"@@.npc_work_doctor;Wonderful, wonderful.@@" <<He npc_work_doctor>> replies in the process of pulling on a glove. Motioning for her to spread her legs <<he npc_work_doctor>> slides two fingers into her pussy as <<his npc_work_doctor>> thumb exposes and massages her clit.<br>
<br>
"@@.npc_work_doctor;Moisture levels are good, tight, but pliable, clitoris is responsive@@" <<he npc_work_doctor>> describes as she bites her lip to suppress a moan of clear pleasure. "@@.npc_work_doctor;Now for the other hole.@@"<br>
<br>
She is breathing somewhat strained, but makes no comment save to roll over and present her backside. Pulling on a fresh glove <<he npc_work_doctor>> slides two fingers, and then a third into her. You can't help but notice how much she's leaking; whatever "therapy" she's taken to embrace the joys of anal sex definitely seem to have worked.<br>
<br>
"@@.npc_work_doctor;Hmm, this feels good, but I'd like to check a bit deeper, Nurse?@@"<br>
<br>
Slightly surprised at being suddenly acknowledged you walk over to see what <<he npc_work_doctor>> wants as <<he npc_work_doctor>> continues to finger the softly-moaning patient.<br>
<br>
"@@.npc_work_doctor;Her holes are feeling in great shape, but I want a deeper analysis. <<if $fetish.fisting>>Your hands look like a more appropriate size. Reach in and check her for depth?<<else>>There is a depth snake in my supplies, if you would fetch it for me?<</if>>@@"<br>
<br>
<<if $fetish.fisting>>
<<printThought "Did <<he npc_work_doctor>> just tell me to fist her... medically?">>
<<else>>
<<printThought "Depth snake... what?">>
<</if>>
<br><br>
She gasps as <<=setup.getNpcName("npc_work_doctor","formal")>> removes <<his npc_work_doctor>> hand and steps to the side to give you space between her legs.<br>
<br>
<<if $fetish.fisting>>
[<<moveTo "event_work_doctor_npc_secretary_2" "Fist her ass as instructed." 60 "<<set $scene.obey=true>>">>]<br>
<<else>>
[<<moveTo "event_work_doctor_npc_secretary_2" "Follow instructions." 60 "<<set $scene.obey=true>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_npc_secretary_2" "No, you're not doing this." 60 "<<set $scene.obey=false>>">>]<br>
</div>/*#
#desc: help npc_work_doctor; npc_secretary, fist her
#status: FINISHED 0.7.4.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $npc_secretary.flags.examFisted = true>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<set $scene.pickmeupBonus = true>>
<<addItem 'pickmeup_candy'>>
<<else>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<</if>>
<</if>>
<<set $player.location to 'Conference Room of Social Interaction Service Syndicate Inc.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_secretary")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey && $fetish.fisting>>
<<if !$scene.notKnown>>
You should feel strange at this prospect — of fisting the woman who held your job before you, and yet you take it in stride.
<<else>>
After all you've done at this company fisting another secretary as part of a "medical exam" just falls in with the rest.
<</if>>
After all, she seems quite enthusiastic of the idea so why not?<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> hands you a tube of lubricant and your rubber-gloved hand is soon slick and wet. Forming your fingers into a point, you start sliding into her ass, her flesh parting easily as she moans in pleasure. Moving past your knuckles, your full fist slides into her and she clamps down around your slender wrist.<br>
<br>
"@@.npc_work_doctor;Very nice, a healthy gape, but keep going. According to her chart you should be able to go quite a bit deeper.@@"<br>
<br>
<<Hes npc_work_doctor>> right as, after a bit of exploring around in her soft, warm insides you find the path deeper, more and more of your arm disappearing into her hole until you're almost to your elbow!<br>
<br>
"@@.npc_work_doctor;Wonderful, wonderful, no pain?@@"<br>
<br>
"@@.npc_secretary;N-no,@@" the patient replies breathlessly as you notice that the puddle between her legs has become a small waterfall flowing down onto your knee — good thing you're wearing your "protective" nurse outfit.<br>
<br>
"@@.npc_work_doctor;Good, good, now take your other hand and see if you can fit it into her vaginal cavity.@@" You're wide-eyed under your mask at the idea of fitting both fists inside this woman, but <<=setup.getNpcName("npc_work_doctor","formal")>> seems quite serious. For her part the woman just moans, tilting her hips as if in invitation. You take a deep breath and bite down on your gag as you begin working your free hand into her cunt.<br>
<br>
She's so sopping wet there is no need for lube, and to your slight surprise, you soon find yourself wrist-deep inside of her, balling your hand into a fist as you press gently against her cervix. She is certainly tight as she squeezes down on both of your limbs like a vice, but there seems no sign that she is in pain, actually rocking and moaning as you shift inside of her. "@@.npc_secretary;That's so good, someone please fuck my throat...@@" She moans softly, prior decorum having disintegrated as she moans like something out of a porno.<br>
<br>
"@@.npc_work_doctor;As inviting of an offer as that is, I already told you that there is no time today.@@" Stepping back, <<he npc_work_doctor>> nods for you to withdraw your hands, "@@.npc_work_doctor;I will, of course, be forwarding along the full results, but you may inform <<=setup.getNpcName("npc_boss","other")>> that you have a clean bill of health. Your body is adapting perfectly to <<his npc_boss>> needs.@@"<br>
<br>
You have to use a bit of muscle to pull your fists out of her as she clenches down possessively, a dual SHLURP as you finally pull free and she collapses onto the table with a groan.<br>
<br>
"@@.npc_work_doctor;Well, that concludes the exam. Nurse, if you would please help the patient equip and dress herself.@@"<br>
<br>
The woman is still a bit out of it as you help her to her feet, but she obediently spreads her legs for you to lock the chastity device in place and then commences to pull on her clothing.<br>
<br>
"@@.npc_secretary;Thank you for your time.@@" She states with a curtsy, sounding a bit robotic as she follows up with "@@.npc_secretary;I do hope you can stay longer next time and make a more thorough use of my holes.@@"<br>
<br>
Already halfway to the door <<=setup.getNpcName("npc_work_doctor","formal")>> simply nods before glancing back at you. "@@.npc_work_doctor;Come along, nurse.@@"<br>
<br>
Still a bit astounded by the woman — who is currently grinding against the table in some futile hope to get stimulation through her chastity belt — you hurry after <<him npc_work_doctor>>.<br>
<br>
You return to <<his npc_work_doctor>> office where <<his npc_work_doctor>> warnings about being on a tight timetable rear up again as <<he npc_work_doctor>> rushes you through changing out of the nurse uniform and back into your normal attire before dismissing you.
<<else>>
<<if $fetish.fisting>>
You balk at the idea of fisting <<if $scene.notKnown>>your predecessor<<else>>this woman<</if>> under the ludicrous guise of a "medical exam" and you cross your arms in refusal.<br>
<br>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> gaze narrows in suspicion, but <<he npc_work_doctor>> says not a word before turning back to <<his npc_work_doctor>> "patient." "@@.npc_work_doctor;It seems my nurse is feeling a bit unhelpful today so we'll have to settle for a more shallow exam, do please relax.@@"<br>
<br>
You watch in amazement as, after applying another helping of lube, <<he npc_work_doctor>> slowly works her open, three fingers becoming four, then her body trembling as <<he npc_work_doctor>> points <<his npc_work_doctor>> hand and struggles to get past <<his npc_work_doctor>> knuckles only for her to gasp as <<he npc_work_doctor>> gives a twist and pops wrist-deep into her gaping hole.<br>
<br>
"@@.npc_work_doctor;Hmm, feeling good in here. I was hoping to do some deeper investigation, but think I can safely sign off on things here. Just remember to report if you feel any pain, I know how much <<=setup.getNpcName("npc_boss","other")>> enjoys double penetration, but you need to pay attention to your body and raise the alarm if you find yourself too full.@@"
<<else>>
<<if $scene.obey>>
You fetch the indicated device, finding it true to its name; a long, flexible silicone snake nearly half a metre long.
<<if !$scene.notKnown>>
You should feel strange at this prospect — of watching something like this happening to the woman who held your job before you, and yet you take it in stride.
<<else>>
After all you've done at this company helping <<=setup.getNpcName("npc_work_doctor","formal")>> shove half a metre of silicone up another secretary as part of a "medical exam" just falls in with the rest.
<</if>>
<br><br>
With calm ease <<=setup.getNpcName("npc_work_doctor","formal")>> begins feeding the snake into <<his npc_work_doctor>> patient's rear.
<<else>>
You balk at the idea of shoving some quasi-medical device into <<if $scene.notKnown>>your predecessor<<else>>this woman<</if>> under the ludicrous guise of a "medical exam" and you cross your arms in refusal.<br>
<br>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> gaze narrows in suspicion, but <<he npc_work_doctor>> says not a word before turning back to <<his npc_work_doctor>> "patient." "@@.npc_work_doctor;It seems my nurse is feeling a bit unhelpful today.@@" With clear annoyance <<he npc_work_doctor>> digs a nearly half a metre flexible hunk of silicone out of <<his npc_work_doctor>> bag.
<</if>>
<br><br>
Your gasp of surprise is only surpassed by the patient's moan of lust as <<=setup.getNpcName("npc_work_doctor","formal")>> steadily feeds the flexible "snake" into her rear, centimetre after thickening centimetre disappearing until only a hands-breadth of the long device hangs free.<br>
<br>
"@@.npc_work_doctor;Hmm, good progress... but you should be able to handle a bit more. I advise continued practice, but think I can safely sign off on things here. Just remember to report if you feel any pain. I know how much <<=setup.getNpcName("npc_boss","other")>> enjoys double penetration, but you need to pay attention to your body and raise the alarm if you find yourself too full.@@"
<</if>>
<br><br>
The girl moans, her prior formal decorum melted away in favour of breathless sluttiness. "@@.npc_secretary;I'm never too full, please, <<=setup.getNpcName("npc_work_doctor","formal")>> stick your cock in me, any hole, I need to feel you stretching me out.@@"<br>
<br>
Pulling <<if $fetish.fisting>>his fist<<else>>the device<</if>> out of her ass causes her to collapse onto the table, her rear still gaping even as <<he npc_work_doctor>> peels off <<his npc_work_doctor>> glove and tosses it away. "@@.npc_work_doctor;I already told you, there's no time. Now put your chastity belt back on and get dressed before you get into trouble.@@"<br>
<br>
Whimpering softly the woman staggers to her feet, in somewhat of a daze as she locks the steel belt around her body and fumbles with her clothes.<br>
<br>
Once the belt is in place <<=setup.getNpcName("npc_work_doctor","formal")>> nods and turns towards the door. "@@.npc_work_doctor;As I said earlier, everything looks fine, but I will have a full report for <<=setup.getNpcName("npc_boss","other")>> later. Come along, nurse.@@"<br>
<br>
<<if $scene.obey>>
You return to <<his npc_work_doctor>> office where <<his npc_work_doctor>> warnings about being on a tight timetable rear up again as <<he npc_work_doctor>> rushes you through changing out of the nurse uniform and back into your normal attire before dismissing you.
<<else>>
The walk back to <<his npc_work_doctor>> office is tense as <<he npc_work_doctor>> leads the way directly to the back room, helping you out of the nurse attire with a steady frown. "@@.npc_work_doctor;I am highly disappointed with your performance today. If you are not prepared to do your duty, you should not volunteer to assist: it is unfair to me, and unfair to the patient.@@"<br>
<br>
The gag finally removed you don't really know what to say, but it would seem <<his npc_work_doctor>> comments were rhetorical as <<he npc_work_doctor>> merely leaves you to finish changing as <<he npc_work_doctor>> return to <<his npc_work_doctor>> work. Back in your normal clothes you leave the office.
<</if>>
<</if>>
<br><br>
<<include "pickmeupBonus">>
[<<moveTo "room_elevator_home" "Head down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor; sexdoll fucking
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_sexdoll.stage = 5>>
<<registerProgressionEvent>>
<<set $scene.checkSatchel = false>>
<<set $scene.unlocked = false>>
<<set $scene.nochastity = !setup.checkItemTypeWorn("cage")>>
<<set $scene.drug = false>>
<<set $scene.her_drug = false>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
Whistling to <<himself npc_work_doctor>>, <<=setup.getNpcName("npc_work_doctor","formal")>> places <<his npc_work_doctor>> satchel on a bench and then sets to work. Reaching under the platform to which <<=setup.getNpcName('npc_sexdoll', 'first')>> is strapped, <<he npc_work_doctor>> produces a robotic arm-mounted dildo from either end of the exam platform. Tilting <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> head back, <<he npc_work_doctor>> lines her gag up with the narrower of the two rods, making a few more adjustments to angle and stroke length until <<he npc_work_doctor>> is satisfied that it has a clear shot deep enough to bulge the length of her throat.<br>
<br>
Already moaning just from this attention, <<=setup.getNpcName('npc_sexdoll', 'first')>> seems to be actually enjoying the mechanically forced violation of her face, letting out a low whine and licking the tip of the artificial cock in desperation when <<=setup.getNpcName("npc_work_doctor","formal")>> freezes things with barely the tip past her lips.<br>
<br>
"@@.npc_work_doctor;Very promising,@@" <<he npc_work_doctor>> explains as <<he npc_work_doctor>> moves down between her legs. "@@.npc_work_doctor;The sustained denial — after her other training and body modifications, should have her more than prepared for this final test, to see how well she can endure having her brains fucked out through both of her well-conditioned holes. We've found this process really helps seal in the reality of her new life as a fuck-doll, plus it provides a solid base data point on how long she can endure heavy use.@@"<br>
<br>
Lining up the second dildo with her rear has <<=setup.getNpcName('npc_sexdoll', 'first')>> moaning even louder when the auto-lubricating phallus slides into her and stretches her open.<br>
<br>
"@@.npc_work_doctor;Ah, a perfect fit,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with a smile.<br>
<br>
Removing <<his npc_work_doctor>> gloves and tossing them in a bin, <<he npc_work_doctor>> nods in your direction. "@@.npc_work_doctor;Alright, nurse. Your job is to monitor the procedure. Of course there are mechanical safeguards, but when we're pushing a slut this hard it is policy to have a human monitor as well. If anything goes wrong, you just press this button.@@" <<He npc_work_doctor>> points to a button mounted partway down on one side of the platform. "@@.npc_work_doctor;It will terminate the procedure and summon me back. Of course hitting it prematurely would represent a setback that would mean that our poor girl will be in for another day of denial before we can make another attempt and well... I hate to think of her mental state after that!@@"<br>
<br>
A loud whine escaping the gag confirms <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> disinterest in anything interrupting the machine fucking she is about to endure.<br>
<br>
"@@.npc_work_doctor;Well, I think that's simple enough for even a bimbo like yourself, nurse, so I will leave you to it.@@"<br>
<br>
With a parting nod, <<he npc_work_doctor>> activates both dildos to resume thrusting. <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> already hard <<if $fetish.sissy>>sissy <</if>>clitty begins leaking precum as she moans in excitement, her gag (and dildo) mangled sounds echoing in the small room.<br>
<br>
The door locks behind <<=setup.getNpcName("npc_work_doctor","formal")>>, leaving you alone with the bound human sex doll who, at least for the moment, seems to be quite enjoying her double-ended pounding.<br>
<br>
You wonder how long the routine is set to last as you look around and notice that <<=setup.getNpcName("npc_work_doctor","formal")>> forgot <<his npc_work_doctor>> belongings. You also smell something odd in the air in addition to the constant scent of rubber filtered through the only two holes there are in your latex outfit, and the smell of sex and sweat pouring from the bound bimbo, you smell something sweet, something that has you feeling slightly light-headed and VERY horny.<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_end" 'Press the button to summon <<=setup.getNpcName("npc_work_doctor","formal")>> back to get <<his npc_work_doctor>> things.' 180 "<<set $scene.counter=0>>">>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_satchel" 'Take a look in <<his npc_work_doctor>> satchel.' 180 "<<set $scene.counter=0>>">>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" 'Wait and monitor the situation as instructed.' 180 "<<set $scene.counter=0>>">>]
</div>/*#
#desc: help npc_work_doctor; sexdoll state machine
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.counter >= 12 || ($now.getUTCHours() >= 18 && $now.getUTCMinutes() >= 45)>>
<<if $scene.unlocked>>
<<if $scene.nochastity>>
<<if $scene.drug>>
<<cancelTmpEffect 'drug_super_penis'>>
<</if>>
<</if>>
<<wearItem 'nurse_crotchpiece' true>>
<<wearItem 'nurse_mask' true>>
<</if>>
<</if>>
<<set $scene.counter += 1>>
<<changeHorny 10>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
<<switch $scene.counter>>
<<case 1>>
Your patient, <<=setup.getNpcName('npc_sexdoll', 'first')>>, seems to be just getting into things moaning in delight with each thrust as the dual dildos pound her from either end.
<<case 2>>
Seemingly finished with a "warm up" stage, the dildos have accelerated, pounding rapidly and deep into <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> throat and ass. <<if $scene.her_drug>>Her drug-enhanced cock protrudes large and proud, precum dripping down along the lines of the swelled veins running up the shaft<<else>>From the look in her eyes and the way that her erect clitty is twitching and spurting pre cum she is absolutely loving it<</if>>.
<<case 3 4 5>>
The dual dildos continue to mercilessly fuck <<=setup.getNpcName('npc_sexdoll', 'first')>> from both directions. Her initial excitement has shifted slightly to empty brained bimbo surrender as she exists in what seems like a near constant state of breathless <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>>. <<if $scene.her_drug>>Each time the dildo thrusts into her ass her own, even larger drug-fuelled cock bounces and spurts<<else>>With each thrust her own cute, painfully hard <<if $fetish.sissy>>sissy <</if>>clitty bounces and spurts<</if>>.
<<case 6 7 8>>
The dual indefatigable phalluses seem to be taking a toll on <<=setup.getNpcName('npc_sexdoll', 'first')>>. Eyes unfocused, drool leaks down her face as her mouth and throat are repeatedly penetrated. Down below, her previously tight hole is looking a bit gapey, not squeezing down on the thick dildo that continues to thrust into her the way it previously had. Occasionally she strains against her bonds, but they are as unyielding as the twin artificial cocks pounding into her. <<if $scene.her_drug>>Despite the creeping exhaustion, her own drug-swelled cock remains ever-erect, her chest a web of cum.<</if>>
<<case 9 10>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> looks exhausted and broken, too tired to even muster a futile struggle against her restraints as the machine continues to pound away at her. <<if $scene.her_drug>>Despite it all her cock remains hard and straining, looking almost painful the way the veins swell along its length.<</if>>
<<case 11>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> appears to have finally passed out, though the machine does not even slow in fucking her mouth and ass<<if $scene.her_drug>>, finally her drug-enhanced cock is spent and you watch it slowly wilt back to its normal cute size<</if>>.
<</switch>>
<br><br>
<<if $scene.counter < 12 && !($now.getUTCHours() >= 18 && $now.getUTCMinutes() >= 45)>>
<<if $player.timebased.horny == 100>>
You are desperately aroused, jealous of your "patient" as you find yourself wishing it was you strapped down, getting taken from both ends... though even that might be insufficient to quench the fire burning inside of you...
<<elseif $player.timebased.horny > 70>>
You are becoming very aroused, starting to entertain fantasies where it is you, rather than your patient, who is strapped down and continuously fucked...
<<elseif $player.timebased.horny > 50>>
You are getting more aroused by the minute, distracted by thoughts of satiating your carnal desires.
<<elseif $player.timebased.horny > 30>>
You are beginning to feel horny, a sensation that seems to grow each minute you spend in the room with your constantly-fucked patient.
<<else>>
You are starting to feel the fires of arousal grow inside of you.
<</if>>
<br><br>
[<<moveTo "event_work_doctor_npc_sexdoll_satchel" 'Examine the satchel <<=setup.getNpcName("npc_work_doctor","formal")>> left behind.' 0>>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_end" 'Press the button to end the test.' 180>>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" 'Keep waiting.' 180>>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_patient" 'Approach your patient.' 60>>]
<<else>>
After a couple minutes of watching the dildos continue to fuck away at <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> unconscious body the door to the room unlocks and <<=setup.getNpcName("npc_work_doctor","formal")>> steps inside looking at you in annoyance as <<he npc_work_doctor>> de-activates the machine.<br>
<br>
"@@.npc_work_doctor;What are you here for if you aren't going to do anything?@@" <<He npc_work_doctor>> shakes <<his npc_work_doctor>> head, "@@.npc_work_doctor;Don't worry, she's fine. This is hardly the first or last time this slut will be fucked till she faints, and the system would have deactivated if she had been in any real risk, but really, I would expect more from a medical worker, even one as inexperienced as yourself.@@"<br>
<br>
The dildos slide free of <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> gaping and abused holes and her eyelids flutter, coughing once as she hangs limp, looking very much like a used-up, discarded sex doll.<br>
<br>
<<if $scene.unlocked>>
As if belatedly remembering something, <<=setup.getNpcName("npc_work_doctor","formal")>> turns back towards you, <<his npc_work_doctor>> gaze moving towards your unmasked face and exposed crotch and then to <<his npc_work_doctor>> satchel resting open on the counter.<br>
<br>
<<if $scene.nochastity>>
<<if $scene.drug>>
Laying eyes on your throbbing cock <<he npc_work_doctor>> shakes <<his npc_work_doctor>> head in horror. "@@.npc_work_doctor;What did you... no, no, no this is such a disaster!@@"<br>
<br>
<<He npc_work_doctor>> seems genuinely worried as <<he npc_work_doctor>> hurries to find something in the cabinet, coming up with a fresh syringe. "@@.npc_work_doctor;That drug is not calibrated for your body chemistry, if we do not neutralise it immediately, well... the side effects can be quite severe.@@" You try to move but find your nurse's outfit has frozen you in position and you cannot so much as raise a hand as <<he npc_work_doctor>> slides the needle into you and your member wilts and shrinks. You continue
<<else>>
"@@.npc_work_doctor;You naughty slut! Letting yourself out like that, and then removing your <<if $scene.isCage>>cage<<else>>chastity belt<</if>>.@@" <<He npc_work_doctor>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;This is quite the grave error, I am very disappointed in you.@@" Before you can so much as move you find that you have been frozen in place by the nurse's outfit, forced
<</if>>
to stand motionless as <<he npc_work_doctor>> presses a button and the <<=setup.getItemTypeName('cage')>> closes back onto you, after which <<he npc_work_doctor>>
<<else>>
"@@.npc_work_doctor;You naughty slut! Letting yourself out like that. Fortunately you are still secure,@@" <<he npc_work_doctor>> notes, gesturing towards your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>. "@@.npc_work_doctor;Still, this is quite a violation, and unsafe! The nurse's outfit is for your own protection, as well as the patients.@@" That same nurse's outfit suddenly locks up, freezing you in place as <<he npc_work_doctor>> approaches and
<</if>>
replaces your mask and buckles the crotch panel back in place, your mouth and rear once again filled as <<he npc_work_doctor>> locks and seals you up.
<br><br>
You brace yourself for punishment, but nothing comes, <<he npc_work_doctor>> merely shakes <<his npc_work_doctor>> head in disappointment, <<his npc_work_doctor>> gaze tinged with suspicion. "@@.npc_work_doctor;This was a very shameful display, and I want you to think long and hard if you really have what it takes to continue on as my occasional assistant... it is only because I fear losing you as an assistant that I am not reporting this straight to your manager... no, no <<=setup.getNpcName("npc_manager","other")>> would not be happy about this at all...@@"<br>
<br>
Reading between the lines you get the feeling that you would not be the only one in trouble and you wonder what <<=setup.getNpcName("npc_manager","formal")>> would do if she found out about your "extracurricular" activities in general.<br>
<br>
<</if>>
[<<moveTo "event_work_doctor_npc_sexdoll_alt_end" "Continue." 600>>]
<</if>>
</div>/*#
#desc: help npc_work_doctor; sexdoll end test
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'nurse_work_outfit_unleashed'>>
<<deleteItemSet 'nurse_work_outfit_unleashed'>>
<<if setup.checkItemWorn('medical_collar')>>
<<removeItem 'medical_collar' true>>
<<deleteItem 'medical_collar'>>
<</if>>
<<removeItem 'medical_leash' true>>
<<deleteItem 'medical_leash'>>
<<useClothSetPop 'tmp'>>
<<if $scene.nochastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
After taking a few notes <<=setup.getNpcName("npc_work_doctor","formal")>> leaves <<=setup.getNpcName('npc_sexdoll', 'first')>> to "@@.npc_work_doctor;Sleep it off@@" until someone else can deal with her. Clipping a leash back to your collar, and grabbing <<his npc_work_doctor>> left behind things, <<=setup.getNpcName("npc_work_doctor","formal")>> leads you out of the "hospital" and back to <<his npc_work_doctor>> office where you change back into your normal clothes and are summarily dismissed.<br>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 600>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll look in satchel
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.checkSatchel>>
<<set $scene.firstCheck = true>>
<<set $scene.checkSatchel = true>>
<<else>>
<<set $scene.firstCheck = false>>
<</if>>
<<if !$scene.hasOwnProperty('sissyomatic') && setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
<<set $scene.isSissyomatic = true>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.firstCheck>>
Feeling a bit naughty, you pop open <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> satchel and look inside. In amongst <<his npc_work_doctor>> screen-locked touch-pad and some basic medical supplies, a syringe of the type <<he npc_work_doctor>> uses before sex and extra large condoms you find your prize — the keys to unlock your mask and the crotch-piece of your nurse's outfit <<if $scene.isSissyomatic>>including a controller for your <<=setup.getItemTypeName('cage')>>!<</if>><br>
<br>
Glancing at the position of your patient, you realise that, in theory, you could crawl on top of her, take the dildo presently pounding her throat in your ass, and instead share a mutual sixty-nine...
<<else>>
You again look through <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> satchel containing the controls for parts of your bondage<<if $scene.isSissyomatic>>, including for your <<=setup.getItemTypeName('cage')>>,<</if>> <<if $scene.her_drug || $scene.drug>>and the empty syringe that contained <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> penis-enhancing drug<<else>>and the syringe full of penis-enhancing drugs<</if>>.
<</if>>
<br><br>
<<if $scene.unlocked>>
<<if $scene.isSissyomatic>>
<<if $scene.nochastity>>
[@@.link_locked;You have already removed as much of your chastity device as you can.@@]<br>
<<else>>
<<if $player.body_ref.penis>>
[<<moveTo "event_work_doctor_npc_sexdoll_cage" 'Remove the penis covering of the <<=setup.getItemTypeName("cage")>>.' 60>>]<br>
<<else>>
[<<moveTo "event_work_doctor_npc_sexdoll_cage" 'Retract the front shield of the <<=setup.getItemTypeName("cage")>>.' 60>>]<br>
<</if>>
<</if>>
<<elseif setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObj(setup.getItemFromType("cage")).lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_work_doctor_npc_sexdoll_cage" 'Unlock your <<=setup.getItemTypeName("cage")>>.' 60>>]<br>
<<else>>
[@@.link_locked;You have already removed gag and crotch panel to expose your condom-lined holes<<if $player.body_ref.penis>> and your <<getWordMyPenis>><</if>>, but without the key to your chastity you remain secured.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You have already removed gag and crotch panel and chastity to expose your condom-lined holes<<if $player.body_ref.penis>> and your <<getWordMyPenis>><</if>>.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_work_doctor_npc_sexdoll_unlock" "Unlock and remove your mask and crotch covering." 60>>]<br>
<</if>>
<<if !$scene.drug && !$scene.her_drug>>
[<<moveTo "event_work_doctor_npc_sexdoll_drug_1" "Use the drug syringe." 60>>]<br>
<<else>>
[@@.link_locked;You have already used the syringe of drugs and it is now empty.@@]<br>
<</if>>
[<<moveTo "event_work_doctor_npc_sexdoll_root" "Put things back." 60>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll consider penis drug
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
You look at the syringe marked <<=setup.getItemName("drug_dick")>> and think back to the way it makes <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> cock grow large, thick and veiny.<br>
<br>
<<if $player.body_ref.penis>>
<<if $scene.nochastity>>
Eyeing your exposed, and already hardening, shaft you consider your options. <<if $player.body_ref.penis>>Certainly shooting up will turn your current hard-on into a raging, almost monstrous erection,<<else>>You are uncertain what would happen if you shot up whilst not having a penis, and<</if>> but there's also your "patient;" her twitching sissy clitty free and proud, dribbling precum with each dildo thrust into her body.<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_drug_2" 'Inject <<=setup.getNpcName("npc_sexdoll", "first")>> with the penis-enhancing drug.' 60 "<<set $scene.her_drug=true>>">>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_drug_2" 'Inject yourself with the penis-enhancing drug.' 60 "<<set $scene.drug = true>>">>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_drug_2" 'Split the dose between the two of you.' 60 "<<set $scene.drug = true>><<set $scene.her_drug=true>>">>]<br>
<<else>>
Given your constraining chastity <<if setup.isCage()>>cage<<else>>belt<</if>>, you figure injecting it into yourself would be very dangerous, and certainly painful, but your "friend" is currently unencumbered by such things...<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_drug_2" 'Inject <<=setup.getNpcName("npc_sexdoll", "first")>> with the penis-enhancing drug.' 60 "<<set $scene.her_drug=true>>">>]<br>
<</if>>
<<else>>
Without a penis of your own, you're uncertain what effect the drug might have on you.<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_drug_2" 'Inject <<=setup.getNpcName("npc_sexdoll", "first")>> with the penis-enhancing drug.' 60 "<<set $scene.her_drug=true>>">>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_drug_2" 'Inject yourself with the penis-enhancing drug.' 60 "<<set $scene.drug = true>>">>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_drug_2" 'Split the dose between the two of you.' 60 "<<set $scene.drug = true>><<set $scene.her_drug=true>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_npc_sexdoll_satchel" 'Put the syringe down and look at something else.' 60>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll use penis drug
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drug && $player.body_ref.penis>>
<<setTmpEffect 'drug_super_penis'>>
<<changeHorny 100>>
<</if>>
<<if $scene.her_drug>>
<<changeHorny 30>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.drug && !$player.body_ref.penis>>
You grab the needle only to run into a curious problem — your latex outfit is reinforced in such away that the sharp needle is unable to penetrate... and you are covered in the tight, rubbery material from head to toe, leaving you not a millimetre of bare skin to inject into!
<<if $scene.her_drug>>
<br><br>
With that half of your plan a failure, you turn to your "patient" and shooting her up with the whole dose she groans — a sound of desperate want and need that has you dripping with mutual desire under your restraints. You watch as her cock swells even larger, you think even larger than <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> gets while under the effects of the drug — quite the impressive feat given how small and cute <<=ps(setup.getNpcName("npc_sexdoll","first"))>> member was a few moments earlier.
<</if>>
<<elseif $scene.drug && !$scene.her_drug>>
Your latex attire proves to be reinforced with some unknown material to seemingly make it impervious to the needle, and you are forced to inject almost directly into your <<getWordMyPenis false>>. The initial pain is soon replaced with a lustful fire, your <<getWordMyPenis false>> swelling instantly, like something out of an anime, veins popping into relief as it swells to a <<=setup.calcPenisSize()>> size.<br>
<br>
Breathing heavy, you feel the need to cradle your <<getWordMyPenis false>> with one hand lest its erect weight pull you off balance. At the same time you feel aggressive lust clouding your thoughts — you need to fuck something, now.
<<elseif $scene.drug>>
Your latex attire proves to be reinforced with some unknown material to seemingly make it impervious to the needle, and you are forced to inject almost directly into your <<getWordMyPenis false>>. Injecting half the syringe, you quickly move to your patient, shooting her up with the other half as she groans, both of your <<getWordMyPenis false>>s beginning to swell and grow, veins popping as the drug takes hold. Looking down, you would swear her cock is now even larger than <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> is under the effects of the drug, quite an impressive feat given how small and cute <<=ps(setup.getNpcName("npc_sexdoll","first"))>> member was a few moments earlier.<br>
<br>
You feel the urgent need to fuck something, hard and you recognise a similar glint in your patient's eyes as she tries to thrust against her bonds.
<<else>>
You stand next to your "patient." Her attention occupied by the dildos fucking her from both ends she doesn't notice until the needle stabs into her. Her gaze flickers in your direction as you inject the full dose of drugs and then her eyes roll back, groaning around the unrelenting dildo pounding her throat as her previously cute sissy clitty swells and grows to mammoth proportions. You would swear her cock is now even larger than <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> is under the effects of the drug, quite an impressive feat given how small and cute <<=ps(setup.getNpcName("npc_sexdoll","first"))>> member was a few moments prior.
<</if>>
<br><br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" "Do something else." 60>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll partially remove Sissy-o-matic
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = true>>
<<include "removeCage_retractSissyomatic">>
<<set $scene.nochastity = true>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
Using the controller you remove the cock-encasing portion of your <<=setup.getItemName($scene.cage)>>. You gasp at the almost alien sensation of air brushing your <<getWordMyPenis false>>, watching it swell in excitement at its partial freedom. Of course the device as a whole remains securely locked around your base and balls with your rear filled. Still, there is no denying the excited way your body is reacting, your now fully-hard <<getWordMyPenis false>> sticking out from the latex that coats the rest of your body.<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" "Do something else." 60>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll remove mask and crotch
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'nurse_crotchpiece' true>>
<<removeItem 'nurse_mask' true>>
<<set $scene.unlocked = true>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
You unlock and remove your mask and the crotch panel of your uniform. Strangely, you find yourself unable to further remove the corset, leaving you exposed, but still securely encased in full body latex; even down to your no longer plugged holes being yet occupied by the built-in rubber condoms.<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" "Do something else." 60>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll end test
#status: FINISHED 0.7.4.0
#ignore_spell: meefff
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.counter < 5>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<elseif $scene.counter < 9>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<elseif $scene.counter < 11>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<elseif $scene.counter == 11>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<</if>>
<<if $scene.unlocked>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.nochastity>>
<<if $scene.drug>>
<<applyExperience 'bdsm' 17 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 10 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<wearItem 'nurse_crotchpiece' true>>
<<wearItem 'nurse_mask' true>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
You press the button to end the test, the thrusting dildos freezing in place and then sliding out of the "patient."
<<switch $scene.counter>>
<<case 0 1 2>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> howls in frustration humping the air frantically, but held tight by her bonds. "@@.npc_sexdoll;Ffffuck meefff! Fuck my holes!@@" she howls, words mangled by her gag as she drools down her face.
<<case 3 4 5>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> lets out a gasp of release, but her hips continue to hump, barely a few seconds of emptiness passing before she is staring longingly at the dildo in front of her face.
<<case 6 7 8>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> sighs, sinking in her bonds. She continues to stare at the dildo in front of her, but more with mild interest than desperate need.
<<case 9 10>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> groans in relief, panting for air as she hangs limp in her bonds.
<<case 11>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> shudders slightly as the dildos withdraw, her breathing becoming a bit more regular as she hangs unconscious in her bonds.
<<default>>
ERROR: unexpected value for scene.counter <<=$scene.counter>>
<</switch>>
<br><br>
<<if $scene.counter < 5>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> continues to whine and moan until a few minutes later the door to the room unlocks and <<=setup.getNpcName("npc_work_doctor","formal")>> walks in looking surprised. Locking the door behind <<him npc_work_doctor>> <<he npc_work_doctor>> looks from the "patient" to yourself before snorting in annoyance.<br>
<br>
"@@.npc_work_doctor;What did you? You've ruined the experiment!@@"
<<if $scene.her_drug>>
<<He npc_work_doctor>> stares at her still lewdly hard, oversized cock. "@@.npc_work_doctor;And this! What have you done! It's going to take days of denial to get the patient back into shape for another trial...@@"
<<else>>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head in disappointment. "@@.npc_work_doctor;The experiment is ruined, and now this poor girl will need to start her period of denial all over!@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> lets out a forlorn whine at this news, trying to lunge forward with her face, her tongue extended in desperation for any contact with the fake cock in front of her face.
<<elseif $scene.counter < 9>>
The room is quiet save for <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> dildo-muffled panting. Uncertain what to do now you fortunately do not have long to wait before <<=setup.getNpcName("npc_work_doctor","formal")>> walks in. Looking around <<he npc_work_doctor>> seems nonplussed as <<he npc_work_doctor>> locks the door behind <<him npc_work_doctor>>, walking directly to the "patient" and looking her over.<br>
<br>
"@@.npc_work_doctor;Hmm, I am afraid to say I think you cut her off a bit early, nurse.@@" Putting on a glove <<he npc_work_doctor>> pulls out a pen light and <<he npc_work_doctor>> examines her unfocused eyes and then fingers her ass. "@@.npc_work_doctor;Yes, she definitely could have taken that a bit longer... ah well.@@" Snapping off the glove <<he npc_work_doctor>> tosses it in the trash and gives her a friendly pat on the balls. "@@.npc_work_doctor;It seems you're in for another few days of denial to get you ready for another round!@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> whines in despair, straining weakly against her bonds.
<<elseif $scene.counter < 11>>
The room is quiet save for <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> ragged, dildo-muffled gasps. Uncertain what to do now you fortunately do not have long to wait before <<=setup.getNpcName("npc_work_doctor","formal")>> walks in. Looking at the exhausted patient <<he npc_work_doctor>> nods as <<he npc_work_doctor>> locks the door before walking past you to examine her more closely.<br>
<br>
"@@.npc_work_doctor;Yes, this looks quite promising... I believe she could have been pushed just a little bit further but, for a non-professional such as yourself, well, you did quite well monitoring this test.@@" Pulling on a rubber glove <<he npc_work_doctor>> uses a pen-light to examine her unfocused eyes and then finger her gaping rear before snaping the glove into a trash bin and smiling.<br>
<br>
"@@.npc_work_doctor;Yes, everything is looking quite good.@@" Reaching down <<he npc_work_doctor>> gives her balls a nice squeeze. "@@.npc_work_doctor;Congratulations, it looks like you've proven yourself as a fully credentialed human sexdoll! We'll be getting you out of here and into circulation as soon as possible!@@"<br>
<br>
Though tired the sound that escapes <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> gag sounds strangely positive and you wonder what thoughts are going through her head right now...
<<elseif $scene.counter == 11>>
The room is quiet save for <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> slightly uneven breathing as she remains unconscious. Uncertain what to do now you fortunately do not have long to wait before <<=setup.getNpcName("npc_work_doctor","formal")>> walks in. Looking at the unconscious patient <<his npc_work_doctor>> eyes almost light up in excitement as <<he npc_work_doctor>> locks the door before walking past you to examine her more closely.<br>
<br>
"@@.npc_work_doctor;Oh yes, this looks just perfect!@@" <<He npc_work_doctor>> croons as you realise <<he npc_work_doctor>> forgot to even put on gloves before <<he npc_work_doctor>> starts fingering her distended ass. "@@.npc_work_doctor;Yes, this is exactly why I wanted you observing her — you have truly pushed her to the limit, but exercised judgement superior to the machines meaning that she'll be ready to be put into circulation far faster than if she had been taken past the breaking point.@@"
<<else>>
ERROR: unexpected value for scene.counter <<=$scene.counter>>
<</if>>
<br><br>
<<if $scene.drug && $player.body_ref.penis>>
Looking directly at you <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> gaze drifts down to your still-raging hard-on.<br>
<br>
"@@.npc_work_doctor;My god, what have you done!@@" Pulling out a remote, <<he npc_work_doctor>> freezes you in place and then approaches with a syringe, injecting you with something that feels like fire, coursing painfully through your <<getWordMyPenis false>>.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> appears to have no sympathy for you at all as <<he npc_work_doctor>> jams your shrunken and deflated <<getWordMyPenis false>> back into its prison. "@@.npc_work_doctor;You really have no one to blame but yourself, besides, if I hadn't dealt with this... THING.@@" <<He npc_work_doctor>> sneers with disgust as <<he npc_work_doctor>> buckles up your crotch panel and shoves the gag back into your mouth.
<<elseif $scene.nochastity && $scene.cage != "" && $player.body_ref.penis>>
Looking directly at you, <<his npc_work_doctor>> gaze drifts down to your free <<getWordMyPenis false>>.<br>
<br>
<<include "calcSissyomaticStyle">>
"@@.npc_work_doctor;What? That is totally improper!@@" Pulling out a remote, <<he npc_work_doctor>> freezes you in place and then approaches with <<=setup.getItemName($scene.sissyomaticStyle)>> in hand, locking it on to you with a click.<br>
<br>
"@@.npc_work_doctor;Much better.@@" <<He npc_work_doctor>> states, giving you a gentle pat before buckling your crotch panel back in place and shoving the gag into your mouth.
<<elseif $scene.unlocked && $scene.cage != "" && $player.body_ref.penis>>
Looking directly at you, <<his npc_work_doctor>> gaze flicks between your condom-occupied mouth and the open panel at your crotch. "@@.npc_work_doctor;What? My god what were you doing, this could have easily been a safety disaster! The mask and such is for your protection, as well as the patients'!@@"<br>
<br>
Pulling out a remote, <<he npc_work_doctor>> freezes you in place. "@@.npc_work_doctor;At least this thing remained properly locked,@@" <<he npc_work_doctor>> states, giving your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>> a gentle pat before buckling your crotch panel back in place and shoving the gag into your mouth.
<<else>>
Looking directly at you, <<his npc_work_doctor>> gaze drifts over you as if searching for anything out of place. <<He npc_work_doctor>> nods as if in approval.
<</if>>
<br><br>
Re-clipping the leash to your collar, <<he npc_work_doctor>> heads for the exit, shaking <<his npc_work_doctor>> head when you glance back at <<=setup.getNpcName('npc_sexdoll', 'first')>>. "@@.npc_work_doctor;Do not worry about her. She will get exactly what she needs to continue helping further the cause of science.@@"<br>
<br>
You have little choice but to follow along behind as <<he npc_work_doctor>> leads the way back up to <<his npc_work_doctor>> office and then helps you change out of the nurse's outfit and back into your regular attire before dismissing you.<br>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<removeItem 'medical_leash' true>><<deleteItem 'medical_leash'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: help npc_work_doctor; sexdoll interact with patient
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_sexdoll', 'first')>>,
<<switch $scene.counter>>
<<case 1>>
she is moaning in delight with each thrust as the dual dildos pound her from either end.
<<case 2>>
seems to be enjoying her current rapid, deep pounding from either end. <<if $scene.her_drug>>Her drug-enhanced cock protrudes large and proud, precum dripping down along the lines of the swelled veins running up the shaft<<else>>Her <<if $fetish.sissy>>sissy <</if>>clitty looks as hard as it can be, dripping with pre-cum like a cute fountain<</if>>.
<<case 3 4 5>>
dual dildos continue to mercilessly fuck her from both directions, her initial excitement having given way to empty brained bimbo surrender as she rides a near constant wave of breathless <<if $fetish.sissy>>sissygasms<<else>>analgasms<</if>>. <<if $scene.her_drug>>Each time the dildo thrusts into her ass her own, even larger drug-fuelled cock bounces and spurts.<<else>>With each thrust her own cute, painfully hard <<if $fetish.sissy>>sissy <</if>>clitty bounces and spurts.<</if>>
<<case 6 7 8>>
The dual indefatigable phalluses seem to be taking a toll on <<=setup.getNpcName('npc_sexdoll', 'first')>>. Eyes unfocused, drool leaks down her face as her mouth and throat are repeatedly penetrated. Down below her previously tight hole is looking a bit gapey, not squeezing down on the thick dildo that continues to thrust into her the way it previously had. Occasionally she strains against her bonds, but they are as unyielding as the twin artificial cocks pounding into her.<<if $scene.her_drug>> Despite the creeping exhaustion her own drug-swelled cock remains ever-erect, her chest a web of cum.<</if>>
<<case 9 10>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> looks exhausted and broken, too tired to even muster a futile struggle against her restraints as the machine continues to pound away at her.<<if $scene.her_drug>> Despite it all her cock remains hard and straining, looking almost painfully hard the way the veins swell along its length.<</if>>
<<case 11>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> appears to have finally passed out, though the machine does not even slow in fucking her mouth and ass<<if $scene.her_drug>>, finally her drug-enhanced cock is spent and you watch it slowly wilt back to its normal cute size<</if>>.
<</switch>>
<br><br>
<<if $scene.counter < 11>>
[<<moveTo "event_work_doctor_npc_sexdoll_patient_jerk" "Jerk her off." 600>>]<br>
<<if $scene.unlocked>>
[<<moveTo "event_work_doctor_npc_sexdoll_patient_oral" "Lean over and suck her off." 600>>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_patient_anal" "Hop up and mount her." 600>>]<br>
<<else>>
[@@.link_locked;With your mask on you cannot suck her off.@@]<br>
[@@.link_locked;With the crotch panel in place you cannot ride her.@@]<br>
<</if>>
<<if $scene.unlocked && $scene.nochastity>>
[<<moveTo "event_work_doctor_npc_sexdoll_patient_ultimate" "See if you can borrow one of the dildos and assume a sixty-nine position with her." 600>>]<br>
<<else>>
<<if !$scene.nochastity>>
[@@.link_locked;You are locked in chastity, meaning you cannot properly attempt a sixty-nine position.@@]<br>
<<else>>
[@@.link_locked;You are gagged and locked in chastity rendering you incapable of attempting a sixty-nine position.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_work_doctor_npc_sexdoll_end" 'Press the button to end the test.' 180>>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_patient" 'Keep waiting.' 180 "<<set $scene.counter+=1>>">>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" 'Do something else.' 180>>]
<<else>>
[<<moveTo "event_work_doctor_npc_sexdoll_end" 'Press the button to end the test.' 180>>]<br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" 'Continue.' 180>>]
<</if>>
</div>/*#
#desc: help npc_work_doctor; sexdoll handjob her
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.counter+=1>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.her_drug>>
Standing next to <<=setup.getNpcName('npc_sexdoll', 'first')>> you wrap a latex-gloved hand around her monstrous drug-enhanced cock. In addition to girth the drugs seem to have made her hyper-sensitive and she moans around her gag with each brush of your fingers, swiftly spurting thick, ropey tendrils across her chest and tits.
<<else>>
You gently caress <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> small, hard, twitching <<if $fetish.sissy>>sissy <</if>>clitty. Despite the far more intense stimulation of the dual dildos pounding her from either end she reacts to your slightest touch, mewing in pleasure as you stroke and squeeze, soon dribbling joy down over your hands and onto her cute tummy.
<</if>>
<br><br>
The whole time the twin dildos continue to thrust into her and she remains hard as you wipe your hand off on her belly and step away, noting that the climax seems to have left her looking a bit haggard.<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" 'Do something else.' 180>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll blowjob her
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.counter+=1>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.her_drug>>
<<if setup.getTotalValue("oral") > 10>>
Your mouth condom presents a bit of a challenge, but you manage to take <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> drug-enhanced cock into your mouth.<br>
<br>
Even over the sensation of being dildo-fucked from both ends the feeling of your rubber lips stretching down her sensitive member has her moaning and thrashing against her bonds. The condom prevents you from doing a proper deep throat so you just bob your head, licking as best you can through the latex until you feel the condom swell with a large climax, her thick, viscous load caught by your mouth's latex lining to flow back down her shaft as you lean back, the final drops drooling down your chin.
<<else>>
<<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> massive drug-enhanced cock is too large for you to fit in your mouth, especially with the added challenge of the mouth condom built into your nurse attire. Taking her in hand, you instead kiss your way up and down her shaft, her muffled moans of pleasure communicating that even this is divine and she soon spurts, splattering your hooded face with thick cum that drips down onto her belly.
<</if>>
<<else>>
Though fully hard <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> sweet <<if $fetish.sissy>>sissy <</if>>clitty is small, cute, and unimposing, trivial for you to take into your mouth as you suck and slurp through the condom built into your nurse's uniform.<br>
<br>
You try to sync your efforts with the dildo thrusting into her ass mere centimetres away and she is soon spurting out <<if $fetish.sissy>>sissy<<else>>girlish<</if>> joy, her pale fluids untasted thanks to your mouth condom, instead merely dripping down her shaft to mingle with the lube easing the continuous thrusting of the dildo into her rear.
<</if>>
<br><br>
The twin dildos never ceasing to pound into her the whole time you are "working" you step away with her still hard, noting that the climax seems to have pushed her closer to some sort of limit.<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" 'Do something else.' 180>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll ride her
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.counter+=1>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
It takes a bit of work to climb up on top of <<=setup.getNpcName('npc_sexdoll', 'first')>>, but you manage to straddle her, balancing in a half squat as you lower your condom-lined ass onto her
<<if $scene.her_drug>>
drug-enhanced cock.
<<if setup.getTotalValue("oral") > 10>>
Guided by the condom integrated into your nurse's uniform, she slides into you with ease, the rubber condom and your body alike stretching to accommodate her length and girth.<br>
<br>
Breathing fast, you start moving, your attention split between maintaining balance and savouring the wonderful fullness of her giant cock pumping in and out of your slutty hole.
<<else>>
Even with the help of the condom stuffed up your rear, she is just too big for you to take more than her tip, leaving you to settle for just rubbing it between your cheeks and prodding your hole, shuddering as you fantasise what it would feel like to gape wide enough to be fucked by something so glorious.
<</if>>
<br><br>
Looking down, you watch the dildo pounding in and out of <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> ass.
<<if $player.body_ref.penis && $scene.nochastity>>
Shuddering you grab hold of your own <<getWordMyPenis false>>, moaning along with your "patient" as you stroke and bounce in debauched bliss.
<<elseif setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>Caged<<else>>Chastity belted<</if>> as you are you can do nothing but watch and continue to bounce up and down on her wonderfully thick cock.
<</if>>
<br><br>
With a cry that echoes in the small exam room, <<=setup.getNpcName('npc_sexdoll', 'first')>> cums, the force of her explosion putting you off-balance, your weight dropping as one of your feet slips, a minor miracle of flailing following as you somehow make it to the floor without getting entangled in the fucking machine that has never even slowed in its pounding of her ass.<br>
<br>
Catching your breath, you stagger back to your feet, her cum trickling out of your condom-lined hole and down the inside of your thighs.
<<else>>
hard sissy clitty.<br>
<br>
She's a bit small, but you manage to get her pointed at your condom-lined hole and start bouncing up and down.<br>
<br>
<<if $scene.nochastity>>
Making up for the insubstantial stimulation in your rear, you grab hold of your freed <<if $scene.drug>>drug-enhanced <</if>><<getWordMyPenis false>>, bouncing and moaning with happiness as you look down to watch the dildo pumping in and out of her hole, wishing you had something of similar size...
<<elseif setup.checkItemTypeWorn("cage")>>
You groan in frustration, the patient's small clitty and your locked-up <<getWordMyPenis false>> insufficient to give you the stimulation you crave.
<</if>>
<br><br>
Bouncing more energetically, one of your feet slips and you almost take a bad fall, barely managing to catch yourself and evade getting tangled with the fucking machine pumping away between her legs as you tumble to the floor.<br>
<br>
Catching your breath, you stagger back to your feet, her pre-cum trickling out of your condom-lined hole and down the inside of your thighs.
<</if>>
<br><br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> groans with want, her <<if $scene.her_drug>>cock<<else>><<if $fetish.sissy>>sissy <</if>>clitty<</if>> still hard as the dildos continue to thrust into her body.<br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_root" 'Do something else.' 180>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll sixty-nine her
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
Walking around to <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> face, you time things to pull the dildo out of the way and then step into position and take advantage of its flex to aim it at your condom-lined rear. Wet with saliva, it slides into you easily, <<if setup.checkItemTypeWorn("hollow_plug")>>the hollow plug <<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5 || $scene.isSissyomatic>>built into the <<=setup.getItemName('hollow_plug')>><</if>> causing each thrust to gape<<else>>each thrust gaping<</if>> your rear hole as the dildo plunges deep and pushes you forward so that your <<if $player.body_ref.penis>><<getWordMyPenis false>> takes its place in <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> throat<<else>><<getWordVagina>> takes its place against <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> lips<</if>>.<br>
<br>
The manner in which <<=setup.getNpcName('npc_sexdoll', 'first')>> immediately begins sucking and licking at your <<if $scene.drug>>drug-enhanced<</if>> <<if $player.body_ref.penis>>member makes it clear that she prefers the "real thing" to<<else>>dripping snatch makes it clear she hungers for more than just<</if>> the dildo that is now pounding into your ass.<br>
<br>
Moaning, you dive forward, eager to "return the favour" as you wrap your lips around her <<if $scene.her_drug>>drug-swelled cock<<else>>cute clitty<</if>>.<br>
<br>
Staring forward, you watch the second fucking machine pistoning away with the dildo entertaining her as you suck <<if $scene.her_drug>>thick, drug-enhanced cum out of her hard cock<<else>>sweet <<if $fetish.sissy>>sissy<<else>>girl<</if>> juices out of her delicate clitty<</if>>.<br>
<br>
Distracted by the tri-directional stimulation of getting pounded, <<if $player.body_ref.penis>>sucked<<else>>licked<</if>> and sucking yourself, you start as you feel something pull down on you, trying to stand up only to realise there are now several straps holding you down, preventing you from separating from being chest to chest with <<=setup.getNpcName('npc_sexdoll', 'first')>>.<br>
<br>
Flailing around with your arms, you try to push away and ready for the "stop" button only for something unseen to snap a pair of cuffs onto your wrists and pull them against either side of <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> platform. The lusty scent that has been stimulating you almost since you walked into the room swells and you find your resistance melting away — all you want is to suck and be fucked; such luck that in your current position you have little choice but to do both!<br>
<br>
<<printThought "Wait... was this all part of the experiment?">><br>
<br>
[<<moveTo "event_work_doctor_npc_sexdoll_patient_ultimate_end" 'Do something else.' 1800>>]
</div>/*#
#desc: help npc_work_doctor; sexdoll sixty-nine her ending
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_sexdoll.flags.ultimateTest = true>>
<<decrementEmotion 'anger' 'npc_work_doctor' 3>>
<<incrementEmotion 'affection' 'npc_work_doctor' 3>>
<<wearItem 'nurse_crotchpiece' true>>
<<wearItem 'nurse_mask' true>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $scene.pickmeupBonus = $scene.obey>>
<<if $scene.pickmeupBonus>>
<<addItem 'pickmeup_candy'>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
Bound, <<if $player.body_ref.penis>>blown, <</if>>fucked and with a <<if $fetish.sissy>>sissy<<else>>girl<</if>> <<if $scene.her_drug>>cock filling<<else>>clitty occupying<</if>> your mouth, you soon lose track of time, surrendering to the waves of pleasure as you and <<=setup.getNpcName('npc_sexdoll', 'first')>> race to see who can get the other off more.<br>
<br>
Focused on the loop of hedonism swirling between you and your "patient," you do not notice that <<=setup.getNpcName("npc_work_doctor","formal")>> has returned until the constantly pumping dildos stop. You groan around the <<if $scene.her_drug>>cock<<else>><<if $fetish.sissy>>sissy <</if>>clitty<</if>> in your mouth at the sudden emptiness then shudder as you feel a plug replacing it.<br>
<br>
Pulled upright, your nurse's gag/mask is strapped back onto your face<<if setup.checkItemTypeWorn('cage')>> and the <<=setup.getItemTypeName('cage')>> locked back onto <<if $player.body_ref.penis>>your <<if $scene.drug>>deflated, sore<<else>>exhausted<</if>> <<getWordMyPenis false>><<else>>you<</if>><<else>>and the crotch-piece of your nurse's outfit tightened back in place<</if>>.<br>
<br>
"@@.npc_work_doctor;Wonderful.@@" <<He npc_work_doctor>> whispers as <<he npc_work_doctor>> finishes locking your crotch-piece back into position, the built-in plug sliding into place inside the <<=setup.getItemTypeName('cage')>> gaped hollow that is your well-fucked rear. "@@.npc_work_doctor;If it wasn't for the outfit, I could scarcely tell the difference between the two of you sluts... simply brilliant.@@"<br>
<br>
Exhausted and overloaded, you just stagger and moan slightly as <<he npc_work_doctor>> clips the leash back to your collar, stumbling along as you follow <<him npc_work_doctor>> out of the room and back up to <<his npc_work_doctor>> office.<br>
<br>
You're just starting to find yourself able to compose thoughts by the time you finish changing back into your normal clothes and <<he npc_work_doctor>> sends you on your way. Blinking in the hallway, you feel weird, your skin exposed and sensitive without its latex "protection" licking your lips as you find yourself both fantasising and jealous over the fact that your mouth condom prevented you from savouring the taste of <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> <<if $scene.her_drug>>jumbo-sized cock<<else>>lovely <<if $fetish.sissy>>sissy <</if>>clitty<</if>>, when she was able to enjoy sucking you off the whole time.<br>
<br>
Wincing at how sensitive you feel from the ordeal, you take a deep breath and head for the elevator.<br>
<br>
<<include "pickmeupBonus">>
[<<moveTo "room_elevator_home" "Head down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>> <<if setup.checkItemWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<removeItem 'medical_leash' true>><<deleteItem 'medical_leash'>>">>]
</div>/*#
#desc: help npc_work_doctor; npc_sissy_secretary meet
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_sissy_secretary.stage = 5>>
<<registerProgressionEvent>>
<<if setup.getChastityLevel() != 5>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_sissyomatic_obedient'
1
'event_manager_theme_sissyomatic_1'
true
>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You realise <<=setup.getNpcName("npc_work_doctor","formal")>> had been carrying a small valise as <<he npc_work_doctor>> places the container down on a rolling work tray and nods in your direction. "@@.npc_work_doctor;Nurse, help the patient out of her clothing and secure her in the examination chair so that we may commence with the day's procedure.@@"<br>
<br>
<<if setup.getChastityLevel() == 5>>
As you help <<=setup.getNpcName('npc_sissy_secretary', 'first')>> out of her admittedly skimpy attire, you catch a glimpse of the contents of the valise — shuddering slightly as you recognise the imposing shape of a <<if ['sissyomatic','sissyomatic_med','sissyomatic_jumbo'].includes(setup.getItemFromType("cage"))>><<=setup.getItemName('sissyomatic')>><<else>>device quite similar to your own<</if>>. Gagged and masked as you are you have no way of warning your friend what is to come, but you send a few comforting thoughts her way as you reflect on what she is about to be locked into.<br>
<br>
Working efficiently you soon have <<=setup.getNpcName('npc_sissy_secretary', 'first')>> down to nothing but her current cage and a locked-on choker.
<<else>>
You can tell <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is nervous, but she remains obediently quiet as you remove all of her clothes until she is left in nothing but her cage and a locked-on choker.
<</if>>
<br><br>
The whole time <<=setup.getNpcName('npc_sissy_secretary', 'first')>> remains meek and nervous and you wonder what she was told going into the exam as it is obvious that she's afraid, though quite obedient. Legs spread, raised and strapped down in the stirrups you secure her arms and then finally her head using the padded bit gag built into the chair. Double checking the straps, you stand to one side and await further instruction.<br>
<br>
Spinning on <<his npc_work_doctor>> stool, <<=setup.getNpcName("npc_work_doctor","formal")>> approaches bearing a key which <<he npc_work_doctor>> uses to carefully unlock <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> cage, her soft <<if $fetish.sissy>>sissy <</if>>clitty slipping free to look cute and exposed.<br>
<br>
Whistling as <<he npc_work_doctor>> works, <<=setup.getNpcName("npc_work_doctor","formal")>> tosses key and cage into the medical waste bin then carefully lifts <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> balls out of the way to get at the plug occupying her rear hole. A not-so-gentle tug has the thick plug slide free and become another contribution to medical waste.<br>
<br>
Turning to the valise, <<he npc_work_doctor>> lifts the top almost ceremoniously before raising the device into view and explaining. "@@.npc_work_doctor;This is a <<=setup.getItemName('sissyomatic')>>, the pinnacle of control for bad... or VERY good, girls. Custom made to your exact dimensions, it will keep you securely locked and filled at all times without impeding authorized access or use.@@"<br>
<br>
The device itself is imposing — a heavy-duty chastity cage that encases and separates cock and balls and then continues back to a thick buttplug. Turning the pink anodised steel with the product name of <<=setup.getItemName('sissyomatic')>> on either side over <<=setup.getNpcName("npc_work_doctor","formal")>> points out <<if $fetish.sounding>>the integrated urethra plug while noting that it, <</if>>the buttplug and the ball compartments are all wired up for electricity; a custom low-profile battery pack slotting in between the cage and the plug apparently designed to last for up to a year of heavy use.<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> looks on in silent, ever-escalating fear<<if $player.sec_style.submission.sissyomatic != "" && $player.sec_style.submission.sissyomatic != "voluntary">> while you shudder in memory of your own fitting<</if>>.<br>
<br>
"@@.npc_work_doctor;Finally, the plug — truly the pinnacle of <<if $fetish.sissy>>sissy <</if>>anal equipment. It is hollow, but made of an advanced metamaterial that can shift so as to keep the wearer properly filled at all time, but also controllable to either seal them up or iris open for use. As a bonus, the added girth of the plug means the wearer remains ever tight and even smaller partners will provide the stretch they love while an already well-hung user will have them gaping like never before!@@"<br>
<br>
Trembling in her bonds, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> has no defence as the device is brought between her legs, though you can't help but notice her cute clitty is twitching with excitement.<br>
<br>
With a pleased smile on <<his npc_work_doctor>> face, <<=setup.getNpcName("npc_work_doctor","formal")>> places the device to one side for a moment and then snaps on a pair of gloves. "@@.npc_work_doctor;I imagine you know exactly why you have been sentenced to wear this device, but as a final reinforcement for you to behave in the future... nurse, please fetch the capsaicin laced burning lubricant — let's make this insertion an extra memorable event.@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> howls into her gag, wide-eyed in fear, looking desperately up at you, wordlessly pleading for help. With your mask and obscuring outfit, the patient has no way of knowing who you are, though you still find yourself feeling for her. Do you wish to risk punishment by disobeying your order and showing her mercy?<br>
<br>
[<<moveTo "event_work_doctor_npc_sissy_secretary_2" "Fetch the burning lubricant as ordered." 120 "<<set $scene.obey = true>>">>]<br>
[<<moveTo "event_work_doctor_npc_sissy_secretary_2" "Fetch the normal lubricant." 120 "<<set $scene.obey = false>>">>]
</div>/*#
#desc: help npc_work_doctor; npc_sissy_secretary lube her up
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $npc_sissy_secretary.flags.burningLube = true>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<set $scene.pickmeupBonus = true>>
<<addItem 'pickmeup_candy'>>
<<else>>
<<set $npc_sissy_secretary.flags.burningLube = false>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
Opening one of the drawers in the medical supply cabinet,
<<if $scene.obey>>
you grab the "punishment" lube. Whimpering through her gag, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> stares fearfully at the prominent "WARNING, do not bring in contact with eyes, induces extreme pain" label on the large, industrial-sized tube.<br>
<br>
Taking the lube with an evil grin, <<=setup.getNpcName("npc_work_doctor","formal")>> squirts a large glob into <<his npc_work_doctor>> gloved hand and reaches for <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> hard clitty.<br>
<br>
Her cry of pain echoes in the small exam room as the evil concoction works its magic. She squirms against her bonds as <<=setup.getNpcName("npc_work_doctor","formal")>> makes sure to cover her entire shaft and balls before smoothly sliding the cage over her now slick and soft member.<br>
<br>
Tears are already flowing down her cheeks as <<=setup.getNpcName("npc_work_doctor","formal")>> readies a fresh batch of lube, using two fingers to "oil up" her rear hole as she cries in pain.<br>
<br>
"@@.npc_work_doctor;Quit being such a baby — if you didn't want to be punished you should have focused on being a good girl. As it is, well... the <<=setup.getItemName('sissyomatic')>> has a proven track record of breaking even the most stubborn of brats.@@"<br>
<br>
Perhaps fearing even more punishment, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> tries to catch her breath, staring down wide-eyed as <<=setup.getNpcName("npc_work_doctor","formal")>> shrinks the plug to its narrowest girth and lines it up with her quivering hole. With surprisingly gentle pressure <<he npc_work_doctor>> slides the plug into her, the cruel lube making the entry smooth, a soft click sounding as <<he npc_work_doctor>> locks the cage and plug in position.<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> gasps as <<=setup.getNpcName("npc_work_doctor","formal")>> works the plug open and closed, the metamaterial gaping her wide and then parting momentarily before <<he npc_work_doctor>> seals her up.<br>
<br>
<<if $fetish.sounding>>
"@@.npc_work_doctor;Almost done,@@" <<he npc_work_doctor>> coos, somewhere between comforting and mocking. "@@.npc_work_doctor;You just keep being a brave girl we just have one final hole to attend to.@@"<br>
<br>
Trembling in her bonds, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> bites down on her gag as she watches <<=setup.getNpcName("npc_work_doctor","formal")>> spread a thin coating of the evil lube onto a slender urethra plug. Carefully lining it up through the cage, <<he npc_work_doctor>> slides it into place as she cries out, the renewed pain clearly even worse than the previous two instances, her cute made-up face is now utterly ruined and streaked with tears.<br>
<br>
<</if>>
"@@.npc_work_doctor;There we go.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states as the final plug locks in place with a twist. "@@.npc_work_doctor;All safe and secure.@@" Reaching between her legs, <<he npc_work_doctor>> slots the battery into position, her body twitching as a quick burst of electricity further punishes her as the system comes on line.
<<else>>
you grab the "normal" lube. <<=setup.getNpcName('npc_sissy_secretary', 'first')>> lets out a sigh of relief as she notices the plain tube without the large, bright warning labels of its crueller alternative.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> scowls at you as <<he npc_work_doctor>> accepts the lube. "@@.npc_work_doctor;It appears that someone is feeling sorry for you, well on her head be it — you'll be feeling that lube yourself before the day is up, nurse. I hope it was worth it to save a disobedient <<if $fetish.sissy>>sissy<<else>>girl<</if>> from well-deserved punishment.@@"<br>
<br>
You clench in fear around the plug currently occupying your ass, but there is nothing you can do but stand quietly as <<=setup.getNpcName("npc_work_doctor","formal")>> continues on with the procedure.<br>
<br>
Without the addition of the burning lube, the procedure itself might almost be considered pleasant as <<=setup.getNpcName("npc_work_doctor","formal")>> gently coats <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> <<if $fetish.sissy>>sissy <</if>>clit and balls with lube and then slides the cage over them. More lube is worked into her rear hole by hand and then the plug is slid into place, everything clicking together precisely as sized, followed by a quick test that the metamaterial plug is functioning, the bound girl gasping as her rear is gaped wide as the plug swells, a hollow core opening for access, then closing again before the whole thing relaxes into a more modest dimension.<br>
<br>
<<if $fetish.sounding>>
"@@.npc_work_doctor;Good girl, we're almost done.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states as <<he npc_work_doctor>> coats the urethra plug with a thin coating of lube, gently sliding it into place until it locks in position with a soft click, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> trembling at the oh-so-intimate violation.<br>
<br>
<</if>>
The final piece is the battery, slotting in between her legs a quick burst of electric shock has her twitch and cry out as the "system" tests itself.<br>
<br>
"@@.npc_work_doctor;And there we go, all locked up and ready to continue your training. I know it's embarrassing having failed so hard as to be brought to this point, but, well... the <<=setup.getItemName('sissyomatic')>> has a proven track record of breaking even the most stubborn of brats, so you are in very good hands now.@@"
<</if>>
<br><br>
Rising to <<his npc_work_doctor>> feet, <<=setup.getNpcName("npc_work_doctor","formal")>> peels off <<his npc_work_doctor>> gloves and pitches them in with the rest of the medical waste. "@@.npc_work_doctor;Nurse, clean the patient and then meet me in my office.@@" Gathering up the now empty valise, <<he npc_work_doctor>> leaves the room.<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> lets out a soft mew as you stand over her and wipe her dry of excess lube before removing her restraints; as soon as her hands are free she reaches for her new "accessory," but her pawing attempts at both cage and plug are futile, without a keyholder's help she is securely, and completely, imprisoned.<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> is in a bit of a daze as she tries to adjust to her new situation<<if $player.sec_style.submission.sissyomatic != "">>, feelings you can well sympathise with, even if you cannot vocalise them<</if>>.
<<if $scene.obey>>
You help her back into her skimpy clothes and she departs, glaring at you as she leaves, and then pausing in surprise, as if somehow recognising you under your mask. She says nothing as her pain distracts her once more, she moves tenderly but it does little to save her as even the slightest shift causing the punishment lube to send fresh pain through her tender bits.
<<else>>
You help her back into her skimpy clothes and she gives you a hug, seemingly remembering your earlier kindness in saving her from the cruel punishment lube. As you separate she looks at you over with a curious expression and you wonder if she somehow recognised you under the mask and the rest of your uniform.
<</if>>
<br><br>
Putting the lube back in its drawer, you head back to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office.<br>
<br>
<<if $scene.obey>>
<<He npc_work_doctor>> greets you with a nod before helping you out of your nurse's attire and back into your normal clothes before sending you on your way.<br>
<br>
<<include "pickmeupBonus">>
[<<moveTo "room_elevator_home" "Leave and head down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "event_work_doctor_npc_sissy_secretary_3" "Continue." 120>>]
<</if>>
</div>/*#
#desc: help npc_work_doctor; npc_sissy_secretary submit to npc_work_doctor for punishment
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
You walk through the door to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office to find <<him npc_work_doctor>> sitting in wait — a raging hard-on in one hand, a bottle of the capsaicin-laced "punishment" lube in the other.<br>
<br>
"@@.npc_work_doctor;Good, you have finished. But now it is time for your punishment. You may have saved a fellow <<if $fetish.sissy>>sissy<<else>>girl<</if>>, but someone's ass is going to burn today, nurse. Now get over here and put a condom on me and lube me up good so I can fuck your disobedient <<if $fetish.sissy>>sissy <</if>>hole.@@"<br>
<br>
<<printThought "Oh shit, I'm locked in this nurse's outfit, I can't even really flee...">><br>
<br>
[<<moveTo "event_work_doctor_npc_sissy_secretary_4" "Submit to your punishment." 120 "<<set $scene.submit=true>>">>]<br>
[<<moveTo "event_work_doctor_npc_sissy_secretary_4" 'Try to invoke the name of your <<=setup.getNpcName("npc_manager","title")>>.' 120 "<<set $scene.submit=false>>">>]
</div>/*#
#desc: help npc_work_doctor; npc_sissy_secretary you get punish-fucked
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.submit>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<changeMakeupMessed 50>>
<<applyExperience 'submission' 15 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 18 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'anal' $npc_work_doctor.penis_size_boosted 'terrible' $SEEN_STRANGER>>
<<set $scene.analvirgin = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_work_doctor">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "obedient">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_work_doctor.fem>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<<elseif !$player.sec_style.sex.sex_man && !$npc_work_doctor.fem>>
<<set $player.sec_style.sex.sex_man = "obedient">>
<</if>>
<<elseif $fetish.get_raped>>
<<set $scene.analvirgin = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_work_doctor">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "strict">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_work_doctor.fem>>
<<set $player.sec_style.sex.sex_woman = "strict">>
<<elseif !$player.sec_style.sex.sex_man && !$npc_work_doctor.fem>>
<<set $player.sec_style.sex.sex_man = "strict">>
<</if>>
<<reduceExperience 'smart' 1>>
<<applyExperience 'bdsm' 18 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'anal' $npc_work_doctor.penis_size_boosted 'terrible' $SEEN_STRANGER>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<if $scene.submit>>
Like a broken slave, you drop to your knees and take the large condom <<he npc_work_doctor>> offers. Looking up at <<him npc_work_doctor>>, you remove it from the packaging and unfurl it down <<his npc_work_doctor>> throbbing cock, staring up the whole time even though your mask means <<he npc_work_doctor>> is unable to see the fearful look in your eyes.<br>
<br>
"@@.npc_work_doctor;That's a good slut. Now, obedience will do nothing to make up for your prior failure, but know that I appreciate it... and I will be showing that appreciation by fucking your slave ass hard so that the lesson is properly burned into you.@@"<br>
<br>
You silently gulp around the gag filling your mouth as <<he npc_work_doctor>> squirts lube into your hands and you rub it all over <<his npc_work_doctor>> cock. Your heart races; for now the latex of your nurse attire has you protected from the painful concoction, but soon...<br>
<br>
Despite your misgivings, you finish polishing <<his npc_work_doctor>> shaft to a glistening shine and then bend over a table, each breath whistling slightly as air rushes through the two small nose-holes that are the only current gap in your rubber attire.<br>
<br>
You can hear <<his npc_work_doctor>> breaths quicken in anticipation as <<he npc_work_doctor>> gropes your ass and unbuckles the panel that goes between your legs. Pulling the plug from your rear <<he npc_work_doctor>> sticks in a finger to fish out your anal condom and you hear a soft "snip snip" as <<he npc_work_doctor>> cuts it away from your outfit to present a single hole directly centred on your ass.<br>
<br>
"@@.npc_work_doctor;And now to begin your penance...@@" <<he npc_work_doctor>> whispers, <<his npc_work_doctor>> voice slightly strained.<br>
<br>
You hold your breath and squeeze your eyes shut in fear, biting down on your gag as <<his npc_work_doctor>> tip presses against your hole. Pain blossoms out as the lube soaks into your flesh, and then everything explodes as <<he npc_work_doctor>> thrusts forward.<br>
<br>
Eyes snapping open wide, you half rise off the table as you howl in pain only to be slammed back down by the force of <<his npc_work_doctor>> entry.<br>
<br>
<<He npc_work_doctor>> leans forward and crushes you against the table <<if $npc_work_doctor.fem>>with her breasts pressing against your back<<else>>for a moment<</if>>. <<He npc_work_doctor>> then wraps an arm around your neck before pulling you to your feet and then dangling you in the air as <<he npc_work_doctor>> holds you aloft and fucks you, lifting you up and then slamming you back down, as <<he npc_work_doctor>> impales you on a cock that feels like it is made of fire.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
You gasp for air with each pounding thrust, the normal pleasure you would enjoy from taking such a large, thick hunk of <<if $npc_work_doctor.fem>>girlcock<<else>>masculinity<</if>> this deep into your slut-hole utterly erased by the agonising burning lube.
<<else>>
The pain of being spread wide by such a large cock falls away compared to the agony of the lube as you howl through your gag and let tears flow beneath your mask.
<</if>>
<br><br>
<<if setup.getTotalValue("bdsm") > 10>>
Even for a pain-slut like yourself this is extreme and it is all you can do to cling to consciousness as <<he npc_work_doctor>> takes <<his npc_work_doctor>> thankfully brief pleasure.
<<else>>
This is too much, but you have no choice but to endure, your consciousness flickering as you are about to faint when <<he npc_work_doctor>> lets out a final grunt of pleasure.
<</if>>
<br><br>
<<if $fetish.cum>>
You have never been so desperate to have cum pumped into your ass, anything that might dilute the fire... but the condom holds, though you feel it swell as <<he npc_work_doctor>> has <<his npc_work_doctor>> satisfaction.
<</if>>
<<=setup.getNpcName("npc_work_doctor","formal")>> pulls free of your ass and your body goes limp as <<he npc_work_doctor>> lets you crumple to the floor.
<br><br>
"@@.npc_work_doctor;You learn your lesson?@@" <<He npc_work_doctor>> asks as you barely find the energy to weakly nod, exhausted and broken in a puddle of cum and lube trickling out of your gaping hole.<br>
<br>
"@@.npc_work_doctor;Good, now stop leaking all over my floor and let's get you changed and out of here.@@"<br>
<br>
<<He npc_work_doctor>> half drags, half carries you into the changing room, stripping off the nurses outfit and tossing it into a corner before leaving you to get dressed.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Your hollow plug may have protected you from some of the pain, but it also pushed it even deeper inside and you stagger as you attempt to focus and gather the rest of your attire.
<<else>>
The pain of the lube is slowly fading and you wince as you re-fill your ass with its normal plug, staggering as you try to focus and gather the rest of your attire.
<</if>>
<<else>>
The pain of the lube slowly fades as you wipe yourself up and gather the rest of your attire.
<</if>>
<br><br>
Engrossed in <<his npc_work_doctor>> work by the time you emerge, <<=setup.getNpcName('npc_work_doctor', 'formal')>> barely even looks up as <<he npc_work_doctor>> gives you a dismissive wave.<br>
<br>
Exhausted, you stagger out of the lab, hoping that <<=setup.getNpcName('npc_sissy_secretary', 'first')>> appreciates the agony you saved her from.
<<elseif $fetish.get_raped>>
Not wanting to endure the surely apocalyptic pain that <<he npc_work_doctor>> is threatening, but unable to speak due to your nurse's outfit you walk over to a whiteboard and write a message, asking if <<he npc_work_doctor>> has obtained permission from <<=setup.getNpcName("npc_manager","other")>> to administer such a severe punishment?<br>
<br>
<<He npc_work_doctor>> reads your words and then an even more evil grin spreads across <<his npc_work_doctor>> face. "@@.npc_work_doctor;Oh you cheeky bitch. You think <<=setup.getNpcName("npc_manager","other")>> gives a damn about what I do to you? Hah, you're nothing but a pair of holes to be fucked and abused. If I break you, well... I'll just find some other idiot and drug them up until they're even more of a submissive <<if $fetish.sissy>>sissy <</if>>slut than you are. Speaking of which well... I think you need a bit of a reminder of who and what you are.@@"<br>
<br>
Before you can turn or even try to resist, you feel a prick, you realise that the nurse's outfit must have somehow injected you with something, your body suddenly going limp, your mind sluggish as you feel something worse than mere bimbo brain literally eating away at your thoughts.<br>
<br>
You try to run, but it is like moving underwater, <<=setup.getNpcName("npc_work_doctor","formal")>> lifting you up and bending you over a table. Your body lands with enough force to knock the wind out of you as <<he npc_work_doctor>> removes the rear panel of your "protective" corset and then literally rips the internal condom out of the catsuit to expose your empty hole.<br>
<br>
<<He npc_work_doctor>> holds you down with one hand as you hear the rip of a condom wrapper followed by a loud "squirt" of lube. With no further preamble, <<his npc_work_doctor>> cock slams into you, like a telephone pole of fire, the slick lube allowing it to slide deep even as it sends searing pain out through your entire body.<br>
<br>
You cry out, tears flowing freely, but between your mask and your gag as you are fucked by a thick rod of fire.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<His npc_work_doctor>> size may be no issue, but the lube is like liquid fire, each thrust pumping pain into you, a perversion of the carnal joy such an ass-fucking would normally provide.<br>
<br>
Desperate to hasten the end to your suffering you find yourself thrusting back, squeezing as best your pained muscles can manage as you try to get <<him npc_work_doctor>> off even just a second sooner.<br>
<br>
You can feel that <<he npc_work_doctor>> is trying to hold back but, to your relief, <<his npc_work_doctor>> fuse is as short as ever, the thick blast of cum a welcome relief, any dilution welcome compared to the agony of the lube.
<<else>>
Everything is pain as <<his npc_work_doctor>> too-big cock nigh splits you in half on top of the raging inferno that is the lube soaking into your punished hole. Your only salvation is that, per usual, <<he npc_work_doctor>> does not last long, the thick blast of cum that trails out of you as <<he npc_work_doctor>> withdraws practically a salve, any dilution welcome compared to the agony of the lube.
<</if>>
<br><br>
<<He npc_work_doctor>> gives you a hard slap on the ass, but you barely feel it, stumbling along behind as <<he npc_work_doctor>> grabs hold of your gag harness and drags you into the changing room, almost carelessly stripping the ripped nurses outfit from your body and then leaving you to change.<br>
<br>
The pain in your hole slowly fading, you wipe your face, still feeling faded and dull from whatever drug <<he npc_work_doctor>> gave you. Eventually getting to your feet, you fumble back into your clothes and stumble out of the office and on your way.
<<else>>
Not wanting to endure the surely apocalyptic pain that <<he npc_work_doctor>> is threatening, but unable to speak due to your nurse's outfit you walk over to a whiteboard and write a message, asking if <<he npc_work_doctor>> has obtained permission from <<=setup.getNpcName("npc_manager","other")>> to administer such a severe punishment?<br>
<br>
You watch as <<he npc_work_doctor>> seethes, the severity of what <<he npc_work_doctor>> was proposing confirmed by the fact that <<he npc_work_doctor>> seems to turn the idea over in <<his npc_work_doctor>> head before growling <<his npc_work_doctor>> response through clenched teeth. "@@.npc_work_doctor;You cheeky bitch. I don't know what game you think you are up to but... know that I will be watching you VERY carefully in the future. You will need to work very hard to regain my trust after this disobedience.@@" <<He npc_work_doctor>> storms off and calls back at you. "@@.npc_work_doctor;Come, let's get you out of that outfit, with what you've done today you don't remotely deserve to call yourself a nurse.@@"<br>
<br>
You gulp, you've definitely fucked up, though at least you evaded punishment.<br>
<br>
<<He npc_work_doctor>> glowers at you the entire time you are changing clothes and you half expect <<him npc_work_doctor>> to ignore the consequences and fuck you right there in the shower. Despite your fears <<he npc_work_doctor>> remains in control, though <<he npc_work_doctor>> all but tosses you out of <<his npc_work_doctor>> lab once you're back in your normal attire.
<</if>>
<br><br>
<<include "pickmeupBonus">>
[<<moveTo "room_elevator_home" "Head down to the lobby." 600 "<<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: re-introduced to sashka
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<img src="./images/scenes/developer_final.png" height="452" width="804"><br>
<div id="invframe" class="scrolltext">
You feel a sense of foreboding as <<=setup.getNpcName("npc_work_doctor","formal")>> leads you through the familiar high-security door, and you step into the room to find that things have been, for lack of a better word, expanded since your last visit. The room remains centred around the bound, suspended, and fucked engineer, but they are no longer alone, half a dozen similarly equipped assistants arrayed in a star pattern, cables and tubes running between the "team" as they all type and bug-fix at a frantic rate, shuddering in pleasure or pain as they work, fix, check and cross-check one another, the newer subjects desperately working under the original engineer, cogs in a hedonistic machine.<br>
<br>
"@@.npc_evil_nurse;Beautiful, isn't it?@@"<br>
<br>
[<<moveTo "event_nursula_return_2" "Look towards the voice." 180>>]
</div>/*#
#desc: re-introduced to nursula
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/developer_final.png" setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_open") setup.charImage("npc_primrose","npc_primrose_doll")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> steps out of a shadow, her expression somehow even more malevolent than last you saw her, and you shiver, glad that your nurse's outfit conceals your identity.<br>
<br>
As you hold your breath <<=setup.getNpcName("npc_evil_nurse","formal")>> jerks a leash and a familiar kigurumi-masked doll stumbles forward, <<=setup.getNpcName("npc_work_doctor","formal")>> sneering slightly even as the submissively dollified <<=setup.getNpcName("npc_primrose","formal")>> curtsies obediently.<br>
<br>
"@@.npc_work_doctor;I see your new assistant has helped you get your project back on track.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> notes with a grin.<br>
<br>
"@@.npc_evil_nurse;Oh, definitely,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> replies with an evil grin as she caresses <<=setup.getNpcName("npc_primrose","formal")>> like a cherished pet. "@@.npc_evil_nurse;I feared that my untimely absence might have damaged things... but, in a way, it was fortuitous. The auto routine I had running on my subject lead to them transcending prior efforts to the point of being fully addicted to work, becoming panicked and restless if awake and not in a bug-fixing/punishment/reward loop, while I learned through direct experience that, in fact, I have been too kind, and that the human body and mind can endure so much harsher treatments. The combined results, well... you can see before you. The "new" test subjects may still be in progress, but they provide a source of issues for the "prime" subject to fix as well as delicious mutual cooperation... all reinforced with some minor little programming tweaks from my pet, here...@@"<br>
<br>
Even through <<his npc_primrose>> helmet, <<=setup.getNpcName("npc_primrose","formal")>> seems to blush at the compliment, yet <<he npc_primrose>> remains silent as <<=setup.getNpcName("npc_work_doctor","formal")>> assesses the room.<br>
<br>
[<<moveTo "event_nursula_return_3" "Continue." 180>>]
</div>/*#
#desc: shown sashka progress
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/developer_final.png" setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_open") setup.charImage("npc_primrose","npc_primrose_doll")>>
<div id="invframe" class="scrolltext">
"@@.npc_work_doctor;Very good... and important, as the company is absorbing a large number of new engineers from Cloud Data Service and Nintendolls both... a solution to any that prove problematic or inefficient will be immensely valuable.@@"<br>
<br>
"@@.npc_evil_nurse;A solution, indeed,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states with a grin as she turns to you. "@@.npc_evil_nurse;Mmm, I can tell your assistant is intrigued, as well. Here, let me show you what your more technically-minded colleagues are experiencing...@@"<br>
<br>
Before you can react <<=setup.getNpcName("npc_primrose","formal")>> has appeared next to you, sliding a connection cable into a port on your helmet, an overlay suddenly appearing on top of your vision.<br>
<br>
No longer in a mere room, you find yourself in a chamber in hell, <<=setup.getNpcName("npc_evil_nurse","formal")>> as a demoness stalking between the bound and constantly fucked damned souls, the cables and tubes taking on the appearance of puppet strings as the principle engineer lords over its subjects, all in service to the demon queen...<br>
<br>
[<<moveTo "event_nursula_return_4" "Snap back to reality." 300>>]
</div>/*#
#desc: leave after nursula reintroduced
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/developer_final.png" setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse_open") setup.charImage("npc_primrose","npc_primrose_doll")>>
<div id="invframe" class="scrolltext">
You snap back to reality as the connection is severed, blinking under your mask as <<=setup.getNpcName("npc_primrose","formal")>> darts back to <<his npc_primrose>> <<=ps(setup.getNpcName("npc_primrose","custom","Mistress"))>> side.<br>
<br>
"@@.npc_work_doctor;Well don't just stand there!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> commands as you realise <<he npc_work_doctor>>'s almost to the door.<br>
<br>
"@@.npc_evil_nurse;Yes, hurry off,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states with a grin, "@@.npc_evil_nurse;one dedicated assistant is plenty... and I do not think you are ready to be a patient...@@"<br>
<br>
"@@.npc_work_doctor;Quite not.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> replies, a quiver in <<his npc_work_doctor>> voice that you are sure stems from a continued fear of <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
[<<moveTo "event_nurse_sashka_7" 'Hurry after <<=setup.getNpcName("npc_work_doctor","formal")>>.' 300>>]
</div>/*#
#desc: help npc_work_doctor; author insert intro
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse") setup.charImage("npc_work","npc_cs_slave_work")>>
<div id="invframe" class="scrolltext">
You walk into what seems to be a hybrid between an asylum room and a software engineer's dream battlestation — padded walls surrounding a multi-monitor workstation, but it is the presumed "engineer" that draws your attention. Clad head to toe in a tight latex plugsuit they are bound and suspended, helmeted head pulled back with their legs and arms cuffed into a suspended hog-tie. They are spit-roasted by a trio of fucking machines, one ravaging their throat through a port built into their helmet, with the other end being pounded by an even larger pair of anal and vaginal dildos. Down below massive breasts and a hard cock are swelled thanks to vacuum suction devices aggressively pumping away.<br>
<br>
Their senses denied by their helmet the test subject is as oblivious to your presence as their presence occupies your attention and you barely pay attention as <<=setup.getNpcName("npc_work_doctor","formal")>> enthusiastically describes the situation.<br>
<br>
"@@.npc_work_doctor;Intriguing, isn't it? It's a new initiative to apply some of the techniques we have learned for assistant and service positions to more technical roles. You see turning a Secretary into an obedient fuckdoll is simple, merely expanding capabilities of an otherwise low-skill job. But if we can perfect those same techniques for more advanced positions? Well... engineers and technicians are expensive, and payment in orgasms is so much better for stock returns than increased salaries, to say nothing of if we can lock them down for increased hours and reduced vacation...@@"<br>
<br>
Things are starting to come together as you look from the helplessly suspended test subject to the "work station" that surrounds them, noticing how their arms could be released to allow them to reach a keyboard suspended below them, how the monitors are arranged to maximise viewing area despite the intruding oral fucking/feeding machine.<br>
<br>
"@@.npc_work_doctor;Not that there have not been some setbacks! While this horny thing was selected to be a uniquely suitable subject for experimentation there have been some complications of a sort we did not have to deal with with, say, the <<if $fetish.sissy>>SISSI <</if>>Secretary program. Most notably, a troublesome issue where fixing bugs was directly rewarded with orgasms and this wanton slut coded their way to a number of undeserved climaxes. We have, of course, tightened down on things since. Eventually it will all be automated, but, for now things are being personally supervised by <<=setup.getNpcName("npc_evil_nurse","formal")>>.@@"<br>
<br>
[<<moveTo "event_nurse_sashka_2" "Who?" 180>>]
</div>/*#
#desc: help npc_work_doctor; nursula intro
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_evil_nurse.profile = true>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_nursula'
0
'theme_primrose_nursula'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'company' 'theme_psychiatrist_company_nursula'
0
'theme_psychiatrist_nursula_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'secret' 'theme_psychiatrist_secret_theme_nursula' 0 'theme_psychiatrist_nursula_private_1' false 'privatethemes'>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_other_nursula'
0
'theme_manager_nursula_1'
false
>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_nursula' 0 'theme_manager_nursula_private_1' false 'privatethemes'>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<img src="./images/scenes/developer_final.png" height="452" width="804"><br>
<div id="invframe" class="scrolltext">
Your attention was so fixated on the centre of the room, you didn't realise that there was another person present. Stepping into view with an evil grin is a latex-clad nurse; her outfit not dissimilar to your own, from the ballet-steep boots to the stringent corset and collar, but her face is exposed, her confident grin immediately setting her apart from your own anonymised, restrained, and subordinate role. She holds a tablet that looks to both control and monitor the test subject, her fingers making frequent adjustments as she speaks without her ever even looking down.<br>
<br>
You tear your gaze away from the helpless test subject as the nurse smiles at you. You shiver, you've only just met her but there's something about being the focus of <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> attention that makes you nervous. <<=setup.getNpcName("npc_work_doctor","formal")>> may treat you like a guinea pig... but you have the immediate impression that <<=setup.getNpcName("npc_evil_nurse","formal")>> sees you as a potential victim, and that what she would do to you would make any of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> efforts seem tame and compassionate.<br>
<br>
"@@.npc_evil_nurse;Yes... personal supervision has proven quite key to... breaking this subject,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states. Only once her attention is back on <<=setup.getNpcName("npc_work_doctor","formal")>> do you manage to remember to breathe, and you try to remain quiet and unassuming as the nurse delivers her report.<br>
<br>
[<<moveTo "event_nurse_sashka_3" "Catch your breath and listen." 180>>]
</div>/*#
#desc: help npc_work_doctor; author insert description
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/developer_final.png" setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
"@@.npc_evil_nurse;Weighing obedience with performance continues to be a series of trade-offs, but I believe I have struck a balance between <<=setup.getItemName("drug_slave")>> and <<=setup.getItemName("drug_smart")>>. I was able to have the subject coding effectively for nearly 16 hours straight yesterday, nearly eighty percent to their baseline daily goal.@@"<br>
<br>
"@@.npc_work_doctor;And the <<=setup.getItemName("drug_breast")>>? The quantities you requested were quite high...@@"<br>
<br>
"@@.npc_evil_nurse;Yes...@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> replies. "@@.npc_evil_nurse;Even moreso than the surgical alterations, a steady diet of <<=setup.getItemName("drug_breast")>> has proven VERY effective for this subject, I dare say their addiction to it is its own motivation, to say nothing of the utility the side effect of these large, sensitive bitch-tits provide when it comes to additional stimulation.@@" She taps a key on her tablet and an electric shock jolts one the test subject's large, vacuum-chamber-encased breasts. The subject strains in their bonds, but the thoroughness of the restraints mean they hardly move. <<=setup.getNpcName("npc_evil_nurse","formal")>> smiles in cruel delight.<br>
<br>
"@@.npc_work_doctor;I see, well, whatever it takes. If we can make all of the software department this efficient in both production and cost, well... <<=setup.getNpcName("npc_boss","formal")>> will be quite delighted. Just try not to break any more engineers in the process. They are not so easily replaced that we can afford any more being broken into mindless bimbos.@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> sighs and smiles, and you get the sudden feeling that
<<=setup.getNpcName("npc_work_doctor","formal")>> may not be quite aware of the sort of fire <<hes npc_work_doctor>> playing with here. "@@.npc_evil_nurse;You never let me have any fun... but yes, this one has proven quite... durable. I told them their next orgasm would only come after they finished fixing a glitch in the company's mobile app and they hardly complained... so much for being just a back-end engineer?@@" She laughs as she punctuates her joke by sending the dildo ravaging the subject's rear thrusting with even greater aggression. "@@.npc_evil_nurse;Speaking of, I think they've had enough rest, if your assistant would be available to do some product testing? After what happened last time I want to see how the subject handles dealing with live bug-fixing...@@"<br>
<br>
"@@.npc_work_doctor;A capital idea! I will leave you three ladies to it, then.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> hands off your leash and your blood runs cold, the glint in <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> eye having you feeling very vulnerable.<br>
<br>
"@@.npc_work_doctor;As I recall from your file, you once worked in the IT department? You should be uniquely qualified to help with this sort of thing. I want you to follow <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> instructions to the letter, and I will be back in an hour or so to see the results.@@"<br>
<br>
[<<moveTo "event_nurse_sashka_4" "Continue." 300>>]
</div>/*#
#desc: help npc_work_doctor; author insert bound for task
#status: FINISHED 0.8.8.0
#ignore_spell: webapp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/developer_final.png" setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
With a smile as she taps on her tablet and the helmet wrapping the subject's head splits open, the VR headpiece removed to reveal wide, blood-shot eyes as the large monitors click on to display pages and pages of software code. Your earlier assessment is confirmed as the elbow-together-bondage releases and steel wrist-cuffs draw the subject's hands down towards the computer controls. The dildo that was so recently ravaging their throat retreats so that just the tip is between the subject's lips. They suck the tip eagerly as you watch a pink, presumably drugged, liquid flow down and spurt out of the tip of the phallus, the subject eagerly licking up what they can as a few drops trickle down their chin.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> waits for <<=setup.getNpcName("npc_work_doctor","formal")>> to leave before she grins even wider, pulling you in by your leash and caressing your masked face. "@@.npc_evil_nurse;I can see you through that mask, you know. That fear? Delicious... and I can hardly say it is misplaced... but you are not the focus of my interests today. Just do as you are told and everything will be perfectly fine, for you.@@"<br>
<br>
You gulp nervously as she leads you to a chair. Compared to what the test subject is strapped into it is almost pedestrian... but it is still a bondage chair, and you soon find yourself restrained in position, strapped in place, with your chained wrists being able to move only far enough to work a mobile tablet suspended in front of you.<br>
<br>
"@@.npc_evil_nurse;Your task,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> explains as she tightens your restraints, "@@.npc_evil_nurse;will be to find bugs for our engineering friend to fix. No issue is too small, while they are learning to be properly adaptable to new languages outside their so-called "comfort zone" they will only get better through being pushed. The more issues you can find, well... the greater your reward.@@"<br>
<br>
You can sense an unstated follow-up that your reward will come at the cost of the test subject's punishment. As <<=setup.getNpcName("npc_evil_nurse","formal")>> turns the fucking machines almost all the way off to leave the subject sucking a near motionless dildo while being only slowly violated from below you can sense the subject focus in on their task, fingers limbering up in anticipation as they fiddle about with arranging windows and an almost unfathomable number of tabs.<br>
<br>
You tear your gaze away from the test subject to look at the tablet in front of you. It looks like you're dealing with some sort of webapp to use for project and task tracking and management. You recognise the shell from one you used back at CDS, it looks like this is a new version of the same product. You remember the old one was quite the frustrating mess to deal with and you wonder if some of the same bugs might exist in the new version...<br>
<br>
<<printThought "Been awhile since I did anything like this... should I play it safe and do basic testing, or try to be clever at the cost of the coder's sanity?">><br>
<br>
[<<moveTo "event_nurse_sashka_5" "Show mercy on the subject and look for simple display bugs and the like." 2600 "<<set $scene.action='simple'>>">>]<br>
[<<moveTo "event_nurse_sashka_5" "Attempt to reproduce some of the issues you remember dealing with from your old life." 2600 "<<set $scene.action='moderate'>>">>]<br>
[<<moveTo "event_nurse_sashka_5" "Go deep and try to break things with the most obscure use-cases you can think of." 2600 "<<set $scene.action='complex'>>">>]
</div>/*#
#desc: help npc_work_doctor; author insert bugfixing
#status: FINISHED 0.8.8.0
#ignore_spell: ui
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _smart = setup.getTotalValue("smart")>>
<<switch $scene.action>>
<<case "simple">>
<<set $scene.bugsFound = Math.ceil(_smart/2)>>
<<applyExperience 'smart' _smart 'normal' $SEEN_STRANGER>>
<<case "moderate">>
<<set $scene.bugsFound = Math.ceil(_smart/3)>>
<<applyExperience 'smart' _smart 'very' $SEEN_STRANGER>>
<<case "complex">>
<<set $scene.bugsFound = Math.ceil(_smart/4)>>
<<applyExperience 'smart' _smart 'terrible' $SEEN_STRANGER>>
<</switch>>
<<if $scene.bugsFound == 1>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_STRANGER>>
<<applyStress 10>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<img src="./images/scenes/developer_final.png" height="452" width="804"><br>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "simple">>
You putter around in the app and are able to find
<<if $scene.bugsFound == 1>>
only a single "bug" — a minor grammatical error that the subject fixes almost immediately.<br>
<br>
Seemingly annoyed at your lack of effectiveness <<=setup.getNpcName("npc_evil_nurse","formal")>> responds by administering several cruel shocks via your chair... though even that is insufficient for you to manage to find any flaws of note.
<<else>>
<<=$scene.bugsFound>> minor issues. Mostly spelling or mis-alignments in the UI the test subject
<<if $scene.bugsFound > 7>>
reacts quickly, almost immediately fixing spelling and grammar, but seems to struggle a bit with the UI, even with the "help" of some encouragement from <<=setup.getNpcName("npc_evil_nurse","formal")>>... in the form of savage shocks that has the subject moaning past their gag and clenching their fists in pain as they strain in their bonds.
<<elseif $scene.bugsFound > 5>>
keeps up with your requests, even if they seem to struggle a bit with UI issues to the point of garnering "helpful" electric encouragement from <<=setup.getNpcName("npc_evil_nurse","formal")>>.
<<else>>
responds your reports almost as fast as they come in, though they do catch a few "encouraging" shocks when they try to momentarily avoid addressing a UI issue.
<</if>>
Each of your reports is rewarded by pleasurable stimulation from the time of report until the issue is resolved, when the test subject is rewarded with a brief increase in the intensity of their pleasure attachments.
<</if>>
<<case "moderate">>
<<if $scene.bugsFound == 1>>
Try as you might to remember the issues you had with the old system, it was just too long ago and you only manage to remember a single legacy bug... which the subject resolves quickly. <<=setup.getNpcName("npc_evil_nurse","formal")>> seems disappointed with your lack of productivity, and you find yourself the victim of several punishing... <<printThought "or is that encouraging?">> shocks.
<<else>>
<<if $scene.bugsFound > 2>>
You dig deep into your memory to find <<=$scene.bugsFound>> mild to moderately annoying issues that have persisted from the older version of the software. Your productivity causes the test subject to struggle to keep up... though a few "encouraging" shocks administered by <<=setup.getNpcName("npc_evil_nurse","formal")>> have them back on track.
<<else>>
You're able to remember a couple issues with the older version of the software the turn out to persist into the new one. The test subject reacts swiftly, resolving your reports with lightning speed... and a bit of electrified encouragement from <<=setup.getNpcName("npc_evil_nurse","formal")>>.
<</if>>
Each of your reports is rewarded by pleasurable stimulation from the time of report until the issue is resolved, when the test subject is rewarded with a brief increase in the intensity of their pleasure attachments.
<</if>>
<<case "complex">>
<<if $scene.bugsFound == 1>>
You try things at random in an attempt to find bugs in the application. Your undisciplined approach is far from productive and, when you finally find a bug to report it ends up, at best, a mixed blessing, as you end up shocked and punished even more than the test subject as <<=setup.getNpcName("npc_evil_nurse","formal")>> "encourages" you in your struggles to reproduce the issue.
<<else>>
You apply every bit of your not inconsiderable intellect to find <<=$scene.bugsFound>> truly gnarly bugs. You can sense the panic in the test subject as they struggle to fix the complex issues. A UI glitch, in particular, seems to push them to the limit, only for <<=setup.getNpcName("npc_evil_nurse","formal")>> to get them back on track with some punishing shocks that has the subject writhing, moaning, and flailing for a few moment before re-dedicating themselves to their coding efforts with a renewed frenzy.<br>
<br>
Each of your reports is rewarded by pleasurable stimulation from the time of report until the issue is resolved, when the test subject is rewarded with a brief increase in the intensity of their pleasure attachments.
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "event_nurse_sashka_6" "You hear someone at the door." 300>>]
</div>/*#
#desc: help npc_work_doctor; author insert assessment
#status: FINISHED 0.8.8.0
#ignore_spell: ui
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Testing Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/developer_final.png" setup.charImage("npc_work_doctor") setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You hear the security latch on the door slowly release and <<=setup.getNpcName("npc_work_doctor","formal")>> returns.<br>
<br>
"@@.npc_work_doctor;Well? How did our subject... or should I say, subjects?@@" He adds with a leer in your direction, "@@.npc_work_doctor;perform?@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> taps a few more times on her tablet as she puts the engineer in what you can only refer to as "standby" mode — their arms wrenched back behind their back into a stringent reverse prayer while their various fucking machines speed up, and the tubes leading to their penis gag swirl with pink drugs, several drops dribbling past their lips as their eyes roll back in pleasure and the monitors kick over to what looks like some sort of corporate propaganda screensaver.<br>
<br>
<<if $scene.bugsFound == 1>>
"@@.npc_evil_nurse;Unfortunately your Nurse failed to find more than a single bug —
<<switch $scene.action>>
<<case "simple">>
and it was an almost trivial display issue that was immediately resolved.
<<case "moderate">>
and it was resolved without issue.
<<case "complex">>
though it does seem like it was a complex one, based on the effort it took to resolve.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
As a single data-point is hardly determinative I am afraid that I have nothing meaningful to report as to the core experiment.@@"<br>
<br>
"@@.npc_work_doctor;Disappointing,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> replies. "@@.npc_work_doctor;Well, I suppose we shall have to try again some other day. Until then, I will leave the test subject in your capable hands. Pick an engineering team at random and have them work on backlog issues. No sense letting their skills go to waste, and we cannot push the project further until things have been thoroughly stress-tested.@@"
<<else>>
<<=setup.getNpcName("npc_evil_nurse","formal")>> grins.
<<switch $scene.action>>
<<case "simple">>
<<if $scene.bugsFound > 7>>
"@@.npc_evil_nurse;Your nurse-assistant seems to be the quantity over quality sort. She certainly found a number of issues... but they were all relatively minor, and, discounting the need to punish the test subject's continued obstinance when dealing with UI issues, were all resolved successfully, which proves the effectiveness of this process.@@"
<<else>>
"@@.npc_evil_nurse;Your nurse-assistant managed to find a handful of issues... but they were all minor. Still, the subject performed diligently and swiftly to resolve every report, so I would call the test overall a success, thus further prove the effectiveness of this process.@@"
<</if>>
<<case "moderate">>
<<if $scene.bugsFound > 2>>
"@@.npc_evil_nurse;Your nurse-assistant did quite well at pushing the subject. She found more than a couple issues that really pushed the subject to keep up, though they managed to resolve everything successfully, which proves the effectiveness of this process.@@"
<<else>>
"@@.npc_evil_nurse;Your nurse-assistant managed to find a couple of issues, but nothing to really push the subject. Still, I believe it was enough to call the test overall a success, and thus further prove the effectiveness of this process.@@"
<</if>>
<<case "complex">>
"@@.npc_evil_nurse;I must credit your nurse-assistant. She appears to have quite the knack for such things as the subject was really pushed to their limits to resolve the issues. The end result is a successful experiment, and further proof that these procedures can be productively applied to more technical duties.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_work_doctor;Wonderful! I shall leave the test subject in your capable hands to continue with refining the program. We cannot push the project further until things have been thoroughly stress-tested. The engineering department heads may not be as obstinate as <<=setup.getNpcName("npc_manager","other")>>... but they are far less attuned to these new processes for employee enslavement. Pick an engineering team at random and have them work on backlog issues. No sense letting the subject's skills go to waste.@@"
<</if>>
<br><br>
From the wail of despair that escapes past the test subject's gag you're pretty sure they are against this idea... but a frown from <<=setup.getNpcName("npc_evil_nurse","formal")>> is followed by the subject's thick oral dildo ramming deep to silence their complaints, followed by a course of punitive shocks that leaves them twitching even after the light-show around their breasts, balls, and cock stop. The twin dildos continuing to pound away at their lower holes throughout<<if $fetish.cum>> as they spurt into their penis cylinder and the thick emission is sucked away to be pumped into the drug-laced brew still being forced down their throat<</if>>.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> releases you from your chair and passes your leash back to <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
You feel her eyes following you as you leave the room, a piercing, hungry gaze that has you both feeling renewed sympathy for the engineer stuck in her "care," and a sincere hope that you are never the victim of her full focus.<br>
<br>
[<<moveTo "event_nurse_sashka_7" 'Follow <<=setup.getNpcName("npc_work_doctor","formal")>> back to <<his npc_work_doctor>> lab.' 300>>]
</div>/*#
#desc: help npc_work_doctor; author insert finish
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pickmeupBonus = $scene.bugsFound > 1>>
<<if $scene.pickmeupBonus>>
<<addItem 'pickmeup_candy'>>
<</if>>
<<removeItemSet 'nurse_work_outfit_unleashed'>>
<<deleteItemSet 'nurse_work_outfit_unleashed'>>
<<if setup.checkItemWorn('medical_collar')>>
<<removeItem 'medical_collar' true>>
<<deleteItem 'medical_collar'>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
Back in <<his npc_work_doctor>> lab, <<=setup.getNpcName("npc_work_doctor","formal")>> helps you out of your nurse's uniform and back into your normal clothes before sending you on your way.<br>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 600>>]
</div>/*#
#desc: meet npc_work_doctor, taken for physical
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstMeet = !$npc_work_doctor.profile>>
<<if $scene.firstMeet>>
<<set $npc_work_doctor.profile = true>>
<<addNpcTheme 'npc_psychiatrist' 'work_doctor' 'theme_psychiatrist_doctor_0'
0
'event_psychiatrist_session_work_doctor'
false
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.firstMeet>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_work_doctor") setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.firstMeet>>
You're working away when a strange <<man npc_work_doctor>> in a labcoat and crazy hair walks in to the office.<br>
<br>
<<if $npc_barista.flags.video.viewed>>
<<printThought "Wait, that's that <<guy npc_work_doctor>> from the video <<=setup.getNpcName('npc_barista','nickname')>> sent me...">>
<<else>>
<<printThought "Someone from R&D? I wonder what <<hes npc_work_doctor>> doing up here.">>
<</if>>
<br><br>
<<Hes npc_work_doctor>> barely been inside for a minute before <<he npc_work_doctor>> re-appears, escorted by your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
"@@.npc_manager;So,@@" she states. "@@.npc_manager;This is <<=setup.getNpcName('npc_work_doctor','other')>>. <<He npc_work_doctor>> will be administering your physical today. Do not worry it is nothing too bad, just one of those corporate requirements now that you have cleared your trial period.@@"<br>
<br>
"@@.npc_work_doctor;Nothing to be afraid of.@@" The <<man npc_work_doctor>> states with a slightly too-enthusiastic grin. You've barely known <<him npc_work_doctor>> for a few minutes and already you can picture <<him npc_work_doctor>> with <<his npc_work_doctor>> frizzy hair splayed out in all directions screaming "@@.npc_work_doctor;It's alive!@@" or some other schlocky cliche. "@@.npc_work_doctor;Come along, Miss <<=$player.last_name>>. I promise to send you back safe and sound,@@" <<he npc_work_doctor>> adds with a leer.<br>
<br>
Taking a deep breath, you follow after <<him npc_work_doctor>>. As you leave the office, you cast a final glance back towards your <<=setup.getNpcName("npc_manager","title")>>. Though her expression is stoic you get the feeling she does not particularly like the <<man npc_work_doctor>>.<br>
<br>
[<<moveTo "event_work_physical_2" "Follow <<him npc_work_doctor>>." 60>>]
<<else>>
You get a message from <<=setup.getNpcName("npc_manager","formal")>>. "@@.npc_manager;Now that you are a full-fledged <<if $fetish.sissy>>SISSI <</if>>secretary. Most of it was attended to during your promotion but one item remains — your physical. If you could please head down to <<=ps(setup.getNpcName('npc_work_doctor','other'))>> lab, <<he npc_work_doctor>> has volunteered to administer your exam. You may resume your normal duties once it is completed.@@"<br>
<br>
You sigh, given your weekly checkups you can't see what the purpose could be in another physical, but there's no sense in courting disobedience. You head for the elevator.<br>
<br>
[<<moveTo "event_work_physical_2" 'Go to <<=ps(setup.getNpcName("npc_work_doctor","other"))>> lab.' 60>>]
<</if>>
</div>/*#
#desc: work physical bloodwork
#status: FINISHED 0.7.4.0
#ignore_spell: bp,vo2
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.firstMeet>>
<<set $scene.dose = $fetish.drugs && !(setup.hasTmpEffect('sissypill_mk1') || setup.hasTmpEffect('sissypill_mk1_od') || setup.hasTmpEffect('sissypill_eternal'))>>
<<if $scene.dose>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<changeHorny 50>>
<<setTmpEffect 'sissypill_mk1'>>
<<if -1 == setup.findThemeId('npc_manager', 'transformation', 'theme_manager_transformation_item_0')>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_item_0'
0
'event_manager_theme_transformation_items'
true
>>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<</if>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate = setup.setNextDate($now, 1, 9, 0)>>
<<case 5>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<case 6>>
<<set _nextDate = setup.setNextDate($now, 2, 9, 0)>>
<</switch>>
<<if $fetish.drugs>>
<<addWorkEvent 'doctor_drug_visit' _nextDate>>
<</if>>
<<else>>
<<set $scene.dose = $fetish.drugs && !(setup.hasTmpEffect('sissypill_mk2') || setup.hasTmpEffect('sissypill_mk2_od'))>>
<<if $scene.dose>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<applyExperience 'submission' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 10 'terrible' $SEEN_STRANGER>>
<<changeHorny 30>>
<</if>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab and <<he npc_work_doctor>> turns to face you.<br>
<br>
<<if $scene.firstMeet>>
"@@.npc_work_doctor;Now, if you would take a seat we will start with a bit of blood work.@@"
<<else>>
"@@.npc_work_doctor;Now, step one is blood work. I know, a bit redundant since I'm sure you're all but pumping pink at this point but... policy is policy.@@"
<</if>>
<br><br>
Pulling out a high tech device, <<he npc_work_doctor>> painlessly takes a sample of your blood, leaving it to run through the computer while <<he npc_work_doctor>> checks your blood pressure and other vitals.<br>
<br>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
"@@.npc_work_doctor;BP, VO2 and heart-rate are amazing, you must have the stamina of an ox.@@"
<<else>>
"@@.npc_work_doctor;BP, VO2 and heart-rate are very good — whatever workout routine you follow, keep it up. I bet you could go all night and into the next day.@@"
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
"@@.npc_work_doctor;BP, VO2 and heart-rate are nominal. Nothing to be concerned about, but a bit more time working out certainly wouldn't hurt.@@"
<<else>>
"@@.npc_work_doctor;You aren't looking too good in the constitution department. I would advise spending a bit less time flat on your back and a bit more being active.@@"
<</if>>
<</if>>
<br><br>
<<He npc_work_doctor>> packs up the monitoring devices just as the computer announces that it has finished its analysis of your blood work.
<<if $scene.firstMeet>>
<<if !$scene.dose && setup.hasTmpEffect('sissypill_mk1')>>
"@@.npc_work_doctor;Very good, your vitals are strong and it looks like you have been taking advantage of the company drug program. You know I was responsible for the original development of those little pink beauties. I am glad you are enjoying them and all I can say is keep it up, they are perfectly formulated to help girls like you.@@"
<<elseif !$scene.dose && setup.hasTmpEffect('sissypill_mk1_od')>>
"@@.npc_work_doctor;My, my, someone really likes my little treats!@@" You look at <<him npc_work_doctor>> in confusion and <<he npc_work_doctor>> smiles. "@@.npc_work_doctor;Those lovely pink pills you appear to be abusing — I created them. Certainly the official guidelines say that you are abusing them but, personally? Well, I think you are using them EXACTLY as intended.@@"
<<elseif $scene.dose && setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $fetish.drugs>>
"@@.npc_work_doctor;Hmm, it would appear that you are suffering from withdrawal symptoms. You really need to remember to take your medicine, but here, let me top you up.@@"<br>
<br>
Before you can react <<he npc_work_doctor>> has injected you with something, a soft, pleasant pinkness clouding your thoughts.<br>
<br>
"@@.npc_work_doctor;There, doesn't that feel better?@@"<br>
<br>
Your thoughts are slow and you are filled with the urge to obey. You smile and nod slowly.
<<else>>
"@@.npc_work_doctor;My, my, it appears that your system is showing some very deleterious effects. You should get back to taking your <<if $fetish.sissy>>Sissy pills<<else>>Antiboyotics<</if>> as soon as possible. Always remember you can talk to your manager if you run low, the company provides them gratis so there is no reason to be miserly.@@"
<</if>>
<<else>>
<<if $fetish.drugs>>
"@@.npc_work_doctor;Hmm, I am detecting no traces of drugs in your system... are you forgetting to take your pills? Or is <<=setup.getNpcName("npc_manager","other")>> not keeping you supplied? In any case this is a matter of some concern. Here, let me top you off...@@"<br>
<br>
Before you can react <<he npc_work_doctor>> has injected you with something, a soft, pleasant pinkness clouding your thoughts.<br>
<br>
"@@.npc_work_doctor;There, doesn't that feel better?@@"<br>
<br>
Your thoughts are slow and you are filled with the urge to obey. You smile and nod slowly.
<<else>>
"@@.npc_work_doctor;Hmm, your blood work is very clean. Technically not a problem but... well, your manager should be able to supply you with some of the wonderful concoctions I cook up in the lab here. They are specifically designed to help girls like you so I quite recommend you forming a positive habit.@@"
<</if>>
<</if>>
<<else>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
"@@.npc_work_doctor;Wonderful, you have been keeping up with your therapy. Lovely, just lovely. And the results well... by now I am sure they have proven themselves.@@"
<<elseif setup.hasTmpEffect('sissypill_mk2_od')>>
"@@.npc_work_doctor;You just can't resist the pills, can you? No matter, we both know this is what you were meant to be so I will merely encourage you to keep it up.@@"
<<else>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
"@@.npc_work_doctor;No, no, this will not do. You are very clearly continuing to suffer the effects of your prior abuse and have not been keeping up with your prescription to address such.@@"
<<else>>
"@@.npc_work_doctor;Hmm, did you forget to take your pill today?@@"
<</if>>
<br><br>
<<He npc_work_doctor>> reaches for a syringe filled with an eerily glowing pink liquid.<br>
<br>
"@@.npc_work_doctor;Here, this should... even you out.@@"<br>
<br>
You feel a slight prick and then your thoughts are flooded with obedient lust. You shudder, barely able to contain the intense sensations running through your body.<br>
<br>
"@@.npc_work_doctor;There, doesn't that feel better?@@"<br>
<br>
"@@.pc;Yes, <<Master npc_work_doctor>>.@@" You reflexively reply, <<his npc_work_doctor>> resulting smile filling you with joy.<br>
<br>
<<printThought "I need to take more drugs, they're so good for me...">>
<</if>>
<</if>>
<br><br>
Switching screens, you read past <<his npc_work_doctor>> shoulder that <<he npc_work_doctor>> appears to be checking your hormone levels.<br>
<br>
<<switch $player.flags.mealplan.hormones>>
<<case "none">>
"@@.npc_work_doctor;So your hormone levels are definitely somewhat concerning. You should consider taking something to fix that. Speak with your therapist and she should have a solution for you.@@"
<<case "little">>
"@@.npc_work_doctor;Your hormone levels are a bit low. Whatever dosage you are presently taking I would advise bumping it up a bit or any results you see are going to take forever.@@"
<<case "normal">>
"@@.npc_work_doctor;Lovely, your hormone levels are almost perfectly nominal... though, a girl like you, do you want to settle for normal when you could have more?@@"
<<case "lots">>
"@@.npc_work_doctor;Wow, I seldom see such strong hormone levels. Keep up the good work girl, this is exactly what you need.@@"
<</switch>>
<br><br>
Turning away from the computer, <<his npc_work_doctor>> face splits into an evil grin. "@@.npc_work_doctor;Alright, that's the boring part out of the way, now for the rest of the exam. Strip.@@"<br>
<br>
<<if $scene.firstMeet>>
You blink in surprise, waiting for <<him npc_work_doctor>> to direct you to a private room, or at least turn away, but <<he npc_work_doctor>> merely sits back and stares as <<he npc_work_doctor>> waits.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought "Finally! I love this company!">>
<<else>>
<<printThought "This fucking company...">>
<</if>>
<<else>>
You roll your eyes, of course it'd be something like this.
<</if>>
<br><br>
[<<moveTo "event_work_physical_3" 'Strip as ordered.' 180 "<<set $scene.action='strip'>>">>]<br>
[<<moveTo "event_work_physical_3" 'Strip, but put on a show.' 300 "<<set $scene.action='slow'>>">>]<br>
[<<moveTo "event_work_physical_3" "Sure this company is weird, but that's just your boss, this can't be right, object!" 60 "<<set $scene.action='object'>>">>]
</div>/*#
#desc: work physical strip
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'strip'>>
With no real ceremony you shed your clothing. <<=setup.getNpcName("npc_work_doctor","formal")>> makes no significant reaction save to eye-fuck your naked form as <<he npc_work_doctor>> writes something in <<his npc_work_doctor>> notes. <<He npc_work_doctor>>
<<case 'slow'>>
<<=setup.getNpcName("npc_work_doctor","formal")>> leers the whole time as you erotically shed your clothes, nodding slowly in approval. "@@.npc_work_doctor;Yes. I can already tell you are perfectly suited for a position as a <<if $fetish.sissy>>SISSI <</if>>slut secretary.@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
<<printThought "<<if $fetish.sissy>>SISSI <</if>>Slut secretary? Holy shit, perfect dream job!">>
<<else>>
<<printThought "Hmm... <<if $fetish.sissy>>SISSI <</if>>Slut secretary?">>
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
<<printThought "<<if $fetish.sissy>>SISSI <</if>>Slut secretary? That's a new one... though I suppose it's not exactly an inaccurate description...">>
<<else>>
<<printThought "<<if $fetish.sissy>>SISSI <</if>>Slut secretary now? Maybe I should try to find a new position that isn't bent over or on my back...">>
<</if>>
<</if>>
<br><br>
<<He npc_work_doctor>> doesn't seem to notice your reaction as <<he npc_work_doctor>>
<<case 'object'>>
You put your foot down and ask if it would be possible to do the physical while remaining clothed.<br>
<br>
"@@.npc_work_doctor;Totally impossible. Now hurry on, then, I am a medical professional with more degrees than you can probably count. When I say it is medically required for you to strip. You strip.@@"<br>
<br>
You sigh and go along, trying to pretend that this is just a "normal" medical exam while avoiding thinking about how not-normal this company is. Once you have finished <<he npc_work_doctor>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
rises to <<his npc_work_doctor>> feet and approaches you wielding some sort of measurement device. "@@.npc_work_doctor;Still, we must do these things scientifically. Having complete records for all employees is very important.@@"<br>
<br>
[<<moveTo "event_work_physical_4" "Continue." 60>>]
</div>/*#
#desc: work physical measurements
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
With a pair of calipers and a tape measure ribbon, <<=setup.getNpcName("npc_work_doctor","formal")>> sets to work taking notes of your body's every dimension. More measurements of your body than you even knew you had. Starting from the top of your head and working <<his npc_work_doctor>> way down <<he npc_work_doctor>> notes everything, from the spacing between your eyes to how wide you can open your mouth, as well as meticulously measuring the dimensions of your head, neck, limbs and the rest.<br>
<br>
Given how tight <<he npc_work_doctor>> pulls the ribbon each time, you can sort of understand why <<he npc_work_doctor>> needed you naked. At first you wonder why a machine could not have handled this with a quick scan, but your answer is provided as <<he npc_work_doctor>> reaches your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive tits, working one at a time as <<he npc_work_doctor>> paws with both hands to measure their every dimension, from perky fullness to their diamond-hard nips.
<<case 'large'>>
large breasts, seeming to weigh them in <<his npc_work_doctor>> hands before measuring their every dimension, from perky fullness to their diamond-hard nips.
<<case 'medium'>>
breasts, holding them away from your body to measure every dimension, from perky fullness to their diamond-hard nips.
<<case 'small'>>
small breasts, <<his npc_work_doctor>> hands easily palming them as <<he npc_work_doctor>> tweaks your nipples and measures both their diamond-tip dimensions as well as more bra-size measurements than could possibly be necessary.
<<case 'none'>>
chest, teasing each nipple before measuring them at maximum diamond-hardness,
<</switch>>
<<His npc_work_doctor>> groping pawing only becomes more aggressive as <<he npc_work_doctor>> moves down your body to VERY thoroughly measure your butt and thighs.<br>
<br>
Having finished measuring all ten of your toes one by one, <<he npc_work_doctor>> stands up and you think things are over only for <<him npc_work_doctor>> to <<if setup.checkItemTypeWorn("cage")>>produce a key<<else>>look between your legs<</if>>.<br>
<br>
"@@.npc_work_doctor;Getting close, but we need to measure <<if $player.body_ref.penis>>that thing<<else>>down there<</if>> as well. Are you going to be a good girl or do I need to restrain you from touching yourself while I attend to things?@@"<br>
<br>
[<<moveTo "event_work_physical_5" "Promise to be a good girl." 60 "<<set $scene.bondage=false>><<set $scene.skipPenis=false>>">>]<br>
[<<moveTo "event_work_physical_5" "Say you would prefer to be restrained for safety." 300 "<<set $scene.bondage=true>><<set $scene.skipPenis=false>>">>]<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_work_physical_5_skip" "Say that, since you will always be in chastity, couldn't you just skip this bit?" 300 "<<set $scene.bondage=false>><<set $scene.skipPenis=true>>">>]
<</if>>
</div>/*#
#desc: work physical measure genitals
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<removeItem $scene.cage true>>
<</if>>
<<if $scene.bondage>>
<<set $npc_work_doctor.flags.physical.bondage = true>>
<<applyExperience 'bondage' 7 'little' $SEEN_STRANGER>>
<<applyExperience 'submission' 11 'normal' $SEEN_STRANGER>>
<<addItem 'handcuffs_back'>>
<<wearItem 'handcuffs_back' true>>
<<changeHorny 100>>
<</if>>
<<set $npc_work_doctor.flags.physical.penis = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.bondage>>
<<=setup.getNpcName("npc_work_doctor","formal")>> takes your response in stride, producing a pair of handcuffs and quickly locking your wrists behind your back.<br>
<br>
<<printThought "Shit, now I'm totally naked, helpless and exposed...">>
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> nods. "@@.npc_work_doctor;Just remember that I will be holding you to that promise. I may not be your <<Master npc_work_doctor>>, but I am your superior so you had better stay behaved or there will be consequences.@@"
<</if>>
<br><br>
Crouching down, <<he npc_work_doctor>>
<<if setup.checkItemTypeWorn("cage")>>
unlocks and removes your cage. "@@.npc_work_doctor;It is a good thing you are self-cognisant of your own frailties and have chosen to remain locked — it really is the best thing for <<if $fetish.sissy>>a sissy<<else>>one such as you<</if>>. Now you just stand there like a cute statue while we proceed with the exam.@@"
<<else>>
delicately pokes between your legs. "@@.npc_work_doctor;Everything is looking good from the visual inspection... but that is hardly sufficiently scientific. Now you just stand there like a cute statue while we proceed with the exam.@@"
<</if>>
<br><br>
You bite your lip as <<he npc_work_doctor>> measures things then you gasp as you feel a slight prick, going wide-eyed as you are flushed with arousal. Showing even more thoroughness than <<he npc_work_doctor>> had with your <<if setup.calcBreastSize() == "none">>chest<<else>>breasts<</if>>, <<he npc_work_doctor>> adjusts and moves things around in a way that is VERY distracting.<br>
<br>
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_work_doctor;My, my. Certainly it was clear a mere visual inspection was technically sufficient but one must always be thorough and thus I can say scientifically that your pathetic thing is embarrassingly tiny and cute.@@"
<<else>>
"@@.npc_work_doctor;Measurements are nominal. Nice and small and in working order.@@"
<</if>>
<<case 'spe'>>
"@@.npc_work_doctor;Oh look at this adorable thing. Now that I have taken the measurements I can assert with scientific confidence that it is perfectly small and sweet.@@"
<<case 'none'>>
"@@.npc_work_doctor;So evidence suggests that you used to be larger, but everything remains in order, just scaled down.@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 3 4>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_work_doctor;Hmm, a bit below average, but what woman would be satisfied with average, in any case? <<if $scene.cage != "">>No, it is definitely for the best that you are kept in chastity<<else>>Yes, best to treat it as a mere adornment, with no practical use beyond the aesthetic<</if>>.@@"
<<else>>
"@@.npc_work_doctor;Everything seems in order<<if $scene.cage != "">>, all signs point to it being safe, and in my professional opinion, recommended, for it to remain in chastity<</if>>.@@"
<</if>>
<<case 'spe'>>
"@@.npc_work_doctor;Surprising. According to the measurements you are about average sized yet looking at this thing well... it just looks so small and cute! Quite the optical illusion<<if $scene.cage != "">>, but one few will bear witness to since it obviously belongs locked in chastity<</if>>.@@"
<<case 'none'>>
"@@.npc_work_doctor;Everything seems in order<<if $scene.cage != "">>, all signs point to it being safe, and in my professional opinion, recommended, for it to remain in chastity<</if>>.@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 5 6 7>>
ERROR: should not be possible to be this large at this point in the game!
<<default>>
ERROR: unexpected penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<</if>>
<<if $player.body_ref.vagina>>
A speculum is produced and slid smoothly into your <<getWordVagina>>. You gasp at the cool metal... then again when it spreads you open for <<=setup.getNpcName("npc_work_doctor","formal")>> to make <<his npc_work_doctor>> visual inspection. "@@.npc_work_doctor;Very nice. Everything seems to be in order, a proper fuckable cunt... quite appropriate. Well lubricated, flexible, and, quite delectable,@@" <<he npc_work_doctor>> adds as <<he npc_work_doctor>> slides a finger into you and dabs once before tasting your juices.<br>
<br>
Your gasp as the speculum is removed distracts you from responding to this lewd, seemingly unscientific assessment.<br>
<br>
<<printThought "Though, really... what should I expect from a doctor working for this company?">>
<br><br>
<</if>>
<<if $scene.bondage>>
With your hands bound behind your back there is nothing you can do but endure this treatment.<br>
<br>
<<printThought "I hope this is over soon... or maybe I don't?">><br>
<br>
Finally <<he npc_work_doctor>> pulls away and stands up.
<<else>>
You cross your arms over your chest as <<he npc_work_doctor>> continues to grope and "measure" far past what could possibly be reasonable, but eventually <<he npc_work_doctor>> pulls away and stands up.
<</if>>
Peeling off <<his npc_work_doctor>> gloves and tossing them away, <<he npc_work_doctor>> puts on a fresh pair before cracking open what you can only describe as a medical butt-plug. Trailing an inflation bulb like a blood pressure cuff <<he npc_work_doctor>> casually begins lubing it up.<br>
<br>
"@@.npc_work_doctor;Alright, dear, one final measurement to make — bend over.@@"<br>
<br>
[<<moveTo "event_work_physical_6" "Do as <<he npc_work_doctor>> says." 300 "<<set $scene.obey_anal=true>>">>]<br>
[<<moveTo "event_work_physical_6" "Object." 300 "<<set $scene.obey_anal=false>>">>]
</div>/*#
#desc: work physical skip penis inspection
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> thinks for a moment about your request and then shrugs. "@@.npc_work_doctor;Fair enough, so long as you remain locked and are not bothered by pinching or pain I suppose we can call everything in working order. Let us move on to the final part of the checkup.@@"<br>
<br>
Turning around, <<he npc_work_doctor>> pulls out what can only be called a medical butt plug, a tube extending from the base ending in a squeeze bulb. <<He npc_work_doctor>> begins lubricating it thoroughly. "@@.npc_work_doctor;If you would please bend over.@@"<br>
<br>
[<<moveTo "event_work_physical_6" "Do as <<he npc_work_doctor>> says." 300 "<<set $scene.obey_anal=true>>">>]<br>
[<<moveTo "event_work_physical_6" "Object." 300 "<<set $scene.obey_anal=false>>">>]
</div>/*#
#desc: work physical anal inspection
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && $scene.plug != $scene.cage>>
<<removeItem $scene.plug true>>
<</if>>
<<if $scene.obey_anal || $fetish.get_raped>>
<<if !$scene.obey_anal && $fetish.get_raped>>
<<applyExperience 'bdsm' 8 'little' $SEEN_STRANGER>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<<else>>
<<applyExperience 'submission' 13 'normal' $SEEN_STRANGER>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<</if>>
<<set _analLevel = setup.getTotalValue("anal")+2>>
<<applyExperience 'anal' _analLevel 'very' $SEEN_STRANGER>>
<<set $npc_work_doctor.flags.physical.anal = true>>
<<else>>
<<applyExperience 'humiliation' 8 'little' $SEEN_STRANGER>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey_anal || $fetish.get_raped>>
<<if !$scene.obey_anal && $fetish.get_raped>>
You start to object that this does not seem at all medically necessary, but <<he npc_work_doctor>> grabs you by the hair and bends you over a table. You wonder what might have been in the drug <<he npc_work_doctor>> injected you with — while you remain intensely aroused you overall feel weak and lethargic, unable to put up any meaningful resistance to <<his npc_work_doctor>> action.
<<else>>
You obediently bend over, laying down on a nearby table to present your ass. Be it the drug <<he npc_work_doctor>> injected earlier or the way <<he npc_work_doctor>> is treating you, you cannot help but feel intensely aroused.
<</if>>
<br><br>
<<if $scene.plug != "" && $scene.plug != $scene.cage>>
<<He npc_work_doctor>> starts by removing your plug, setting it on the table where you can stare at the <<=setup.getItemName($scene.plug)>> that has spent the day filling your ass while <<he npc_work_doctor>> works.
<</if>>
Relatively small and very slick with lube the plug easily slides into your hole. <<He npc_work_doctor>> takes a few moments to fiddle with it; seemingly intent on making sure it is fully seated, but in so doing teasing your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> something fierce. Finally satisfied, <<he npc_work_doctor>> holds the base between your cheeks and then you hear a soft hiss of air as the plug swells.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
It takes half a dozen squeezes before the plug even approaches something you would really enjoy, but it just continues to swell and swell until even your world-class ass is straining as your heart pounds and you drool onto the table.<br>
<br>
"@@.npc_work_doctor;Hmm, had I known you were this spacious I would have done the inspection by hand — <<if $fetish.fisting>>I bet you love fisting, don't you,<<else>>you're a real size queen, aren't you,<</if>> slut?@@"
<<else>>
After half a dozen squeezes you are feeling VERY full. You release a soft moan, the wonderful stretched feeling only making your heart race and steel your determination to practice taking things even larger.<br>
<br>
"@@.npc_work_doctor;Very good capacity, <<if $fetish.fisting>>you might consider trying out fisting sometime, I bet you would just love it<<else>>yes, a beautiful, blossoming size-queen<</if>>.@@"
<</if>>
<br><br>
You moan in response. Though it feels like there is a bowling ball stuffed inside you, the intense pressure against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> combines with your previous arousal to have you desperate for stimulation — no matter how degrading it might be.<br>
<br>
"@@.npc_work_doctor;Now for the final test of your pliability.@@" You feel the plug deflate slightly and then <<he npc_work_doctor>> takes a different grip on the base, pulling steadily as your hole is forced open by its massive occupant. Wide-eyed and shuddering you nearly analgasm as the plug pops free. Weak-kneed, you collapse on the table as <<he npc_work_doctor>> <<if $scene.plug != "" && !$scene.plug != $scene.cage>>replaces your original plug and <</if>>steps away.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
After only a few squeezes, the plug is feeling larger than anything you've had inside of you, a fact that is both scary and a little arousing; though the later bit is hard to untangle from how you're presently feeling in general.<br>
<br>
"@@.npc_work_doctor;Hmm, a bit of experience, but still slightly behind the curve. You will want to make sure you do not fall any further behind in training if you wish your career to continue apace.@@"<br>
<br>
Your response is cut off as, without deflating the plug in the slightest, <<he npc_work_doctor>> takes hold and pulls it out of you with a pop, the sudden gape making you gasp and then collapse on the table.
<<else>>
Your novice hole was struggling a bit even with the initial plug so when it starts growing you are soon wide-eyed and frantic. Fortunately <<he npc_work_doctor>> stops after only a few squeezes, though you can sense the disappointment in <<his npc_work_doctor>> voice as <<he npc_work_doctor>> releases the air for it to shrink and slide free.<br>
<br>
"@@.npc_work_doctor;Very disappointing. If I did not know any better, I would swear you were practically a virgin back there. Definitely an aspect of needing remedial catch-up if you are to find continued success in your position.@@"
<</if>>
<<if $scene.plug != "" && !$scene.plug != $scene.cage>><<He npc_work_doctor>> stuffs your original plug back into you before your hole can tighten up and then <<he npc_work_doctor>><<else>><<He npc_work_doctor>><</if>> steps away.
<</if>>
<br><br>
[<<moveTo "event_work_physical_7" "Continue." 300>>]
<<else>>
You object that this doesn't seem like it could be at all medically necessary. <<He npc_work_doctor>> pauses before shrugging and putting things away.<br>
<br>
"@@.npc_work_doctor;I suppose you have a point. A slut like you is still busy being stretched out, so the readings would have only short-term accuracy in any case.@@"<br>
<br>
[<<moveTo "event_work_physical_7" "Sigh and continue." 300>>]
<</if>>
</div>/*#
#desc: work physical wrap up
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.plug != "" && $scene.plug != $scene.cage>>
<<wearItem $scene.plug true>>
<</if>>
<<if !$scene.skipPenis>>
<<if $scene.bondage>>
<<removeItem 'handcuffs_back' true>>
<<deleteItem 'handcuffs_back'>>
<<playerOrgasm>>
<<if $scene.cage>>
<<wearItem $scene.cage true>>
<<manipulateItem $scene.cage 'lock' true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.skipPenis>>
You catch your breath as <<he npc_work_doctor>> finishes entering the results of the exam, locked and naked you have nothing to do but wait.<br>
<br>
A few minutes later <<he npc_work_doctor>> turns back to face you. "@@.npc_work_doctor;That concludes the exam, you may get dressed.@@"<br>
<br>
[<<moveTo "event_work_physical_9" "Continue." 300 "<<useClothSetPop 'tmp'>>">>]
<<else>>
<<=setup.getNpcName("npc_work_doctor","formal")>> is busy entering things into the computer as you manage to slightly recover, standing to your feet and looking down at your <<if $player.body_ref.penis>>very hard, totally unrestrained <<getWordMyPenis>><<else>>dripping snatch<</if>>.<br>
<br>
<<if $scene.bondage>>
Unfortunately with your hands bound behind your back there is little you can do, and the moment soon passes as whatever drug <<he npc_work_doctor>> gave you proves short-lived. <<if $player.body_ref.penis>>Your arousal dips<<else>>You wilt<</if>> and <<he npc_work_doctor>> <<if $scene.cage>>soon turns back to attend to putting you back in chastity. Only after you are locked up does <<he npc_work_doctor>> remove your cuffs, leaving you to never once taste actual "freedom." <<else>>nods in approval, waiting a minute longer before nodding in satisfaction and removing your cuffs.<</if>><br>
<br>
A few minutes later <<he npc_work_doctor>> turns back to face you. "@@.npc_work_doctor;That concludes the exam, you may get dressed.@@"<br>
<br>
[<<moveTo "event_work_physical_9" "Continue." 300 "<<useClothSetPop 'tmp'>>">>]
<<else>>
Given your current "routine," this sort of opportunity isn't exactly common and staring at your <<if $player.body_ref.penis>>bouncing <<getWordMyPenis>><<else>>wet puss<</if>> has you sorely tempted to break your promise to be a "good girl." <br>
<br>
[<<moveTo "event_work_physical_8" "Take matters into your own hand." 300 "<<set $scene.hand=true>>">>]<br>
[<<moveTo "event_work_physical_8" "Remain behaved." 300 "<<set $scene.hand=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work physical play with self
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.hand>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_STRANGER>>
<<set $npc_work_doctor.flags.physical.play = true>>
<<else>>
<<applyExperience 'bdsm' 9 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.timebased.horny = 0>>
<<if $scene.cage>>
<<wearItem $scene.cage true>>
<<manipulateItem $scene.cage 'lock' true>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.hand>>
You just can't resist the opportunity to "take advantage" of yourself. Reaching down and <<if $player.body_ref.penis>>wrapping your hand around your hard <<getWordMyPenis>><<else>>cupping your cunt<</if>> is enough to prompt a barely stifled gasp of pleasure. As you move your hand up and down, you squeeze your eyes in concentration. <<if setup.checkItemTypeWorn("cage")>> Even before taking up chastity, you can barely recall it ever feeling this good,<<else>>Everything feels intensely good,<</if>> but you are too distracted and enthralled with indulging your lusts to consider what that might mean.<br>
<br>
You scream as your wanton self-pleasure is brought to a sudden, electric stop. Somehow on the floor clutching yourself for a very different reason, you look up to find <<=setup.getNpcName("npc_work_doctor","formal")>> looking down at you, a sparking stun baton in one hand as <<he npc_work_doctor>> shakes <<his npc_work_doctor>> head.<br>
<br>
"@@.npc_work_doctor;Such utter lack of self control. While unsurprising, it remains disappointing. Still, given that it was my error in providing you such an opportunity I think we can keep it our little secret.<<if setup.checkItemTypeWorn("cage")>> Stand up and let us get you back into chastity before you get into any additional trouble.<</if>>@@"<br>
<br>
The fires of your arousal all but burned out, you rise to your feet and wait meekly as <<he npc_work_doctor>> <<if setup.checkItemTypeWorn("cage")>>locks you back in chastity and <</if>>orders you to get dressed.<br>
<br>
[<<moveTo "event_work_physical_9" "Get changed." 300 "<<useClothSetPop 'tmp'>>">>]
<<else>>
Resisting the urge to do anything, you wait obediently until <<=setup.getNpcName("npc_work_doctor","formal")>> turns back around with a smile. "@@.npc_work_doctor;You kept your promise, good girl.@@" Reaching out, <<he npc_work_doctor>> pats you on the head in congratulation as <<he npc_work_doctor>> stands over you. Recalling when you were in shoes, you realise <<he npc_work_doctor>> is actually about your height, <<if $npc_work_doctor.fem>>maybe even a little shorter when accounting for her heels<<else>>and you think he may actually be wearing lifts<</if>>.<br>
<br>
"@@.npc_work_doctor;That concludes the exam.@@" <<if $player.body_ref.penis>><<He npc_work_doctor>> glances <<if $player.body_ref.penis>>at your <<getWordMyPenis false>><<else>>between your legs<</if>> and smiles in amusement<<if $scene.cage>> "@@.npc_work_doctor;Hmm, I suppose that will be something of an impediment to you putting everything away... let me give you a hand.@@"<</if>><<else>>.<</if>><br>
<br>
<<if $scene.cage>>
You bite your lip as <<he npc_work_doctor>> <<if $player.body_ref.penis>>reaches for your <<getWordMyPenis false>>, but <<his npc_work_doctor>> gloved hand closes around your balls, squeezing painfully and giving a slight twist that has your <<getWordMyPenis false>> wilt. Still smiling, <<he npc_work_doctor>> locks<<else>>reaches between your legs to lock<</if>> you back in chastity before <<he npc_work_doctor>> steps away.<br>
<br>
<</if>>
"@@.npc_work_doctor;You may change back into your work attire now.@@"<br>
<br>
[<<moveTo "event_work_physical_9" "Get dressed." 300 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: work physical dress
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You put your clothes back on and wait to be dismissed.<br>
<br>
<<if $scene.firstMeet>>
"@@.npc_work_doctor;So, unsurprisingly you passed. I will report the results to <<=setup.getNpcName("npc_manager","other")>> and will hope to continue see you dropping by after work.@@"
<<else>>
"@@.npc_work_doctor;Nothing too far out of the ordinary, I would say. I will report the results to <<=setup.getNpcName("npc_manager","other")>>.@@"
<</if>>
<br><br>
[<<moveTo "event_work_physical_10" "Thank <<him npc_work_doctor>> for <<his npc_work_doctor>> time and return to work." 60 "<<set $scene.offer=false>>">>]<br>
[<<moveTo "event_work_physical_10" 'Offer to properly "thank" <<him npc_work_doctor>> before you return to work.' 60 "<<set $scene.offer=true>>">>]
</div>/*#
#desc: work physical thank him
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_work_doctor.flags.physical.done = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.offer>>
Licking your lips and with your best sultry voice, you ask <<=setup.getNpcName("npc_work_doctor","formal")>> if there is anything you could do to "compensate" <<him npc_work_doctor>> for <<his npc_work_doctor>> time.<br>
<br>
<<if $scene.firstMeet>>
<<He npc_work_doctor>> grins wide. "@@.npc_work_doctor;Well, aren't you just going for all the extra credit. Unfortunately I am a bit too busy right now to enjoy fucking a <<if $fetish.sissy>>sissy <</if>>slut, but if you care to come by after work sometime I would love to get to know you better and... monitor your continued physical development. Plus, I might be able to tell you about some of the interesting projects I am monitoring.@@"
<<else>>
<<He npc_work_doctor>> grins. "@@.npc_work_doctor;Alas, I have too much work to do today, but feel free to drop by after your shift is over per usual.@@"
<</if>>
<br><br>
Thanking <<him npc_work_doctor>> once again you depart, heading to the elevator and then back to your desk with no further incident.
<<else>>
<<if $scene.firstMeet>>
You thank <<him npc_work_doctor>> and turn to go only for <<him npc_work_doctor>> to call after you. "@@.npc_work_doctor;So if anything comes up in the future feel free to drop by my lab after work. I'd be happy to help with your development or maybe you'd be interested in learning a bit more about some of the projects I am monitoring.@@"
<<else>>
You thank <<him npc_work_doctor>> and leave, returning to your desk without incident.
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Resume working." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: visit npc_work_doctor after his destruction
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.visitDoctor = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<div id="invframe" class="scrolltext">
You drop in on <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> former laboratory to find <<=setup.getNpcName("npc_hucow","full")>> dressed in a labcoat working at one of the terminals.<br>
<br>
"@@.npc_hucow;Oh, hello, <<=$player.first_name>>@@" she states in greeting. "@@.npc_hucow;Are you here to do some work? Feel free to avail yourself of the facilities, I'm still working on triaging <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> various projects.@@"<br>
<br>
<<include "postDestroyDoctorLabOptions">>
<<include "afterWorkVisiting">>
</div>/*#
#desc: visit npc_work_doctor lab after his destruction
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.visitDoctor = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_hucow","full"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<div id="invframe" class="scrolltext">
You drop in on what is now <<=ps(setup.getNpcName("npc_hucow","full"))>> lab, she greets you with a nod and then turns back to her work.<br>
<br>
<<include "postDestroyDoctorLabOptions">>
<<include "afterWorkVisiting">>
</div>/*#
#desc: fiddle in lab
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_hucow","full"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<div id="invframe" class="scrolltext">
You consider what else to do in the lab as <<=setup.getNpcName("npc_hucow","full")>> putters away at her work.<br>
<br>
<<include "postDestroyDoctorLabOptions">>
<<include "afterWorkVisiting">>
</div>[<<moveTo "event_post_destroy_work_doctor_pills_1" "Fill up on pills." 60>>]<br>
[<<moveTo "event_post_destroy_work_doctor_drugmix_1" "Mix up some drugs." 60>>]<br>
<<if $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished || $player.sec_style.submission.sissyomatic != "">>
<<if setup.getChastityLevel() == 5>>
[@@.link_locked;You're already wearing a <<=setup.getItemTypeName('cage')>>, why would you need a second?@@]<br>
<<elseif setup.checkItemOwned("sissyomatic_box")>>
[@@.link_locked;You already printed a 9001-series device.@@]<br>
<<elseif $player.sec_style.submission.sissyomatic>>
[@@.link_locked;You're already own a 9001-series device... which you are somehow not wearing?@@]<br>
<<elseif setup.getTotalValue("smart") > 10 || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished>>
[<<moveTo "event_post_destroy_work_doctor_9001_1" "Print a 9001 device for yourself." 300>>]<br>
<<elseif setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bdsm") >= 10 && setup.getTotalValue("bondage") && !(setup.getChastityLevel() == 5) && ($player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag)>>
[<<moveTo "event_post_destroy_work_doctor_9001_1" 'You are desperate for more secure restriction... ask <<=setup.getNpcName("npc_hucow","full")>> for some help?' 60>>]<br>
<</if>>
<</if>>
<<set _ai9001ThemeId = setup.findThemeId('npc_ai', 'other', 'theme_ai_technician_1')>>
<<if _ai9001ThemeId != -1 && $npc_ai.themes.other[_ai9001ThemeId].done > 0 && !$npc_technician.relationship.sissyomatic>>
<<if setup.checkItemOwned("sissyomatic_technician")>>
[@@.link_locked;You already printed up a <<=setup.getItemName("sissyomatic")>> for <<=setup.getNpcName("npc_technician","first")>>.@@]<br>
<<elseif $npc_technician.flags.evil != 1>>
[<<moveTo "event_print_technician_sissyomatic_1" 'Follow <<=ps(setup.getNpcName("npc_ai","first"))>> instructions and print up a <<=setup.getItemName("sissyomatic")>> for <<=setup.getNpcName("npc_technician","first")>>.' 180>>]<br>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_sissyomatic_steal')>>
<<if setup.checkItemOwned('sissyomatic_plans') || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && $currentTasks.task_sissyomatic_steal.finished>>
[@@.link_locked;You already made a copy of the 9001-series chastity schematics.@@]<br>
<<else>>
[<<moveTo "event_post_destroy_work_doctor_steal_sissyomatic_1" 'See if you can download a set of 9001-series chastity schematics.' 60>>]<br>
<</if>>
<</if>>
<<if $npc_primrose.stage == 2 && !State.hasPlayed("event_post_destroy_primrose_directions_1")>>
[<<moveTo "event_post_destroy_primrose_directions_1" 'Ask <<=setup.getNpcName("npc_hucow","full")>> if she knows the way to <<=ps(setup.getNpcName("npc_primrose","formal"))>> lab?' 300 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_destruction_drugs_nursula") && !State.hasPlayed("event_primrose_destruction_drugs_twig")>>
[<<moveTo "event_primrose_destruction_drugs_twig" 'Give her <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> prescription for <<=setup.getNpcName("npc_primrose","formal")>>.' 300>>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty("task_pink_eternal_bonus") && !$currentTasks.task_pink_eternal_bonus.finished>>
[<<moveTo "event_pink_pill_eternal_final_calibration_1_alt_1" 'Ask <<=setup.getNpcName("npc_hucow","full")>> for assistance doing the final calibration of <<=setup.getItemName("sissy_pill_eternal")>>.' 300 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<</if>>
<<if State.hasPlayed("event_porn_hucow_invite_1")>>
<<if State.hasPlayed("event_porn_hucow_recruit_1")>>
[@@.link_locked;You already sold <<=setup.getNpcName("npc_hucow","full")>> on shooting a porno together.@@]<br>
<<else>>
[<<moveTo "event_porn_hucow_recruit_1" "Ask her about shooting porn together." 120>>]<br>
<</if>>
<</if>>
<br>/*#
#desc: choose mix drugs after npc_work_doctor destruction
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You step up to a terminal and consider what sort of drug to mix today.<br>
<br>
<label><<=setup.getItemName("drug_breast")>> <<radiobutton "$scene.bonus" 'breast' checked>></label><br>
<label><<=setup.getItemName("drug_ditzy")>> <<radiobutton "$scene.bonus" 'ditzy'>></label><br>
<label><<=setup.getItemName('drug_slave')>> <<radiobutton "$scene.bonus" 'slave'>></label><br>
<label><<=setup.getItemName("drug_dick")>> <<radiobutton "$scene.bonus" 'dick'>></label><br>
<label><<=setup.getItemName("drug_smart")>> <<radiobutton "$scene.bonus" 'smart'>></label><br>
<label><<=setup.getItemName("drug_master")>> <<radiobutton "$scene.bonus" 'master'>></label><br>
<br>
<<if setup.getTotalValue("smart") < 15 && setup.checkItemInInventory('drug_smart')>>
<<printThought "Hmm... I have this dose of <<=setup.getItemName('drug_smart')>>... I wonder if taking it would help me tweak the mixtures?">><br>
<br>
<</if>>
[<<moveTo "event_post_destroy_work_doctor_drugmix_2" "Confirm your choice." 60 "<<set $scene.smart_mix = false>>">>]<br>
<<if setup.getTotalValue("smart") >= 15>>
[<<moveTo "event_post_destroy_work_doctor_drugmix_2" "Ignore the defaults and make something more potent." 60 "<<set $scene.smart_mix = true>>">>]<br>
<<elseif setup.getTotalValue("smart") < 4 && setup.hasTmpEffect('bimbo_suppressant')>>
In a weird, drug-assisted moment of savant-like clarity you notice an advanced configuration setting.<br>
<br>
[<<moveTo "event_post_destroy_work_doctor_drugmix_2" "Ignore the defaults change and make something more potent." 60 "<<set $scene.smart_mix = true>>">>]<br>
<<elseif setup.checkItemInInventory('drug_smart')>>
[<<moveTo "event_post_destroy_work_doctor_drugmix_2" 'Take a hit of <<=setup.getItemName("drug_smart")>> and see if that helps you figure out anything better...' 60 "<<set $scene.smart_mix = true>><<set $scene.take_drug=true>>">>]<br>
<<else>>
[@@.link_locked;You don't feel smart enough to try messing with anything.@@]<br>
<</if>>
<<if setup.checkItemInInventory("nefarious_narcotic") && $player.flags.drugs.slave_plus && $player.flags.drugs.ditzy_plus && $player.flags.drugs.breast_plus>>
<<if State.hasPlayed("event_make_bimbo_brew_1")>>
[<<moveTo "event_make_bimbo_brew_1" 'Refine another dose of <<=setup.getItemName("bimbo_brew")>>?' 180>>]<br>
<<else>>
[<<moveTo "event_make_bimbo_brew_1" 'What if you combined and refined <<=setup.getItemName("nefarious_narcotic")>> with <<=setup.getItemName("drug_slave_plus")>>, <<=setup.getItemName("drug_ditzy_plus")>>, and <<=setup.getItemName("drug_breast_plus")>>?' 180>>]<br>
<</if>>
<<elseif State.hasPlayed("event_make_bimbo_brew_1")>>
[@@.link_locked;You would need another dose of <<=setup.getItemName("nefarious_narcotic")>> to refine more <<=setup.getItemName("bimbo_brew")>>.@@]<br>
<</if>>
<<if setup.getTotalValue("smart") >= 15>>
<<if setup.checkItemInInventory("energy_drink")>>
[<<moveTo "event_mix_pickmeup_ultra_1" 'Refine a can of <<=setup.getItemName("energy_drink")>> and make an upgraded <<=setup.getItemName("pickmeup_candy")>>.' 60 "<<set $scene.type='energy_drink'>>">>]<br>
<</if>>
<<if setup.checkItemInInventory("energy_drink_zero")>>
[<<moveTo "event_mix_pickmeup_ultra_1" 'Refine a can of <<=setup.getItemName("energy_drink_zero")>> and make an upgraded <<=setup.getItemName("pickmeup_candy")>>.' 60 "<<set $scene.type='energy_drink_zero'>>">>]<br>
<</if>>
<<if setup.checkItemInInventory("energy_drink_fem")>>
[<<moveTo "event_mix_pickmeup_ultra_1" 'Refine a can of <<=setup.getItemName("energy_drink_fem")>> and make an upgraded <<=setup.getItemName("pickmeup_candy")>>.' 60 "<<set $scene.type='energy_drink_fem'>>">>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_mix_cure_1")>>
[<<moveTo "event_mix_cure_2" 'Brew another dose of cure for <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill Addiction.' 180>>]<br>
<<elseif $player.sec_style.body.pinkpill>>
[<<moveTo "event_mix_cure_1" 'Search for a cure to <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill Addiction.' 180>>]<br>
<</if>>
<<if $player.flags.drugs.breast_plus > 0 || ($player.body_ref.penis && $player.flags.drugs.dick_plus > 0) || $player.flags.drugs.smart_plus > 0 || $player.flags.drugs.master_plus > 0 || $player.flags.drugs.ditzy_plus > 0 || $player.flags.drugs.slave_plus > 0>>
<<if $player.flags.drugs.breast_plus > 0 && (!$player.body_ref.penis || $player.flags.drugs.dick_plus > 0) && $player.flags.drugs.smart_plus > 0 && $player.flags.drugs.master_plus > 0 && $player.flags.drugs.ditzy_plus > 0 && $player.flags.drugs.slave_plus > 0 >>
[<<moveTo "event_work_doctor_help_lab_custom_1" "Use your experience to brew something custom..." 60>>]<br>
<<else>>
[@@.link_locked;I wonder if I could mix something custom out of the more potent drugs? I should test each of the maximised components on myself first so I know exactly what I'm working with...@@]<br>
<</if>>
<</if>>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the terminal." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
</div>/*#
#desc: mix drugs after npc_work_doctor destruction
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.take_drug>>
<<deleteItem 'drug_smart'>>
<<set $player.flags.drugs.smart += 1>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'normal' $ALONE>>
<<applyStress -10>>
<<gainWillpower 1>>
<<setTmpEffect 'drug_smart'>>
<</if>>
<<if (setup.getTotalValue("smart") >= 15 || setup.getTotalValue("smart") < 4 && setup.hasTmpEffect('bimbo_suppressant')) && $scene.smart_mix>>
<<set $npc_work_doctor.flags.adv_drug = true>>
<<switch $scene.bonus>>
<<case 'breast'>>
<<addItem 'drug_breast_plus'>>
<<case 'ditzy'>>
<<addItem 'drug_ditzy_plus'>>
<<case 'slave'>>
<<addItem 'drug_slave_plus'>>
<<case 'dick'>>
<<addItem 'drug_dick_plus'>>
<<case 'smart'>>
<<addItem 'drug_smart_plus'>>
<<case 'master'>>
<<addItem 'drug_master_plus'>>
<</switch>>
<<else>>
<<set _count = 1>>
<<if setup.getTotalValue("smart") > 15>>
<<set _count += 1>>
<<set $scene.smartBonus = true>>
<</if>>
<<switch $scene.bonus>>
<<case 'breast'>>
<<if $player.flags.drugs.breast_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_breast' _count>>
<<case 'ditzy'>>
<<if $player.flags.drugs.ditzy_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_ditzy' _count>>
<<case 'slave'>>
<<if $player.flags.drugs.slave_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_slave' _count>>
<<case 'dick'>>
<<if $player.flags.drugs.dick_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_dick' _count>>
<<case 'smart'>>
<<if $player.flags.drugs.smart_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_smart' _count>>
<<case 'master'>>
<<if $player.flags.drugs.master_plus > 0>>
<<set _count += 1>>
<<set $scene.skillBonus = true>>
<</if>>
<<addItem 'drug_master' _count>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.take_drug>>
You knock back the dose of <<=setup.getItemName("drug_smart")>>, feeling your thoughts sharpen as the potent drug courses through your system.<br>
<br>
<<if setup.getTotalValue("smart") >= 15>>
Building on prior "success" your drug-accelerated mind easily spots how to enhance the drug you were planning on mixing well beyond
<<else>>
Unfortunately even drugs aren't enough for you to out-smart the default configuration and you are left mixing a dose according to
<</if>>
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> original formula.<br>
<br>
<</if>>
You mix up a batch of<<if $scene.smart_mix && (setup.getTotalValue("smart") >= 15 || setup.getTotalValue("smart") < 4 && setup.hasTmpEffect('bimbo_suppressant'))>> enhanced<</if>>
<<switch $scene.bonus>>
<<case 'breast'>>
<<=setup.getItemName("drug_breast")>>.
<<case 'ditzy'>>
<<=setup.getItemName("drug_ditzy")>>.
<<case 'slave'>>
<<=setup.getItemName('drug_slave')>>.
<<case 'dick'>>
<<=setup.getItemName("drug_dick")>>.
<<case 'smart'>>
<<=setup.getItemName("drug_smart")>>.
<<case 'master'>>
<<=setup.getItemName("drug_master")>>.
<<default>>
ERROR: unexpected scene.bonus <<=$scene.bonus>>
<</switch>>
<<if $scene.smart_mix>>
<<if $scene.skillBonus>>
Your prior efforts making the Plus version of this drug allows you to produce a double dose of the normal version.
<</if>>
<<if $scene.smartBonus>>
Your intelligence allows you to produce an additional dose.
<</if>>
<</if>>
<br><br>
You package up the vial carefully.<br>
<br>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the terminal." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
</div>/*#
#desc: re-up drugs after npc_work_doctor destruction
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You consider re-upping your supply of some of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> basic offerings.<br>
<br>
[<<moveTo "event_post_destroy_work_doctor_pills_2" 'Grab some <<=setup.getItemName("sissy_pill_mk1")>>.' 300 "<<set $scene.drug='pink_pill1'>>">>]<br>
[<<moveTo "event_post_destroy_work_doctor_pills_2" 'Grab some <<=setup.getItemName("personal_medication")>>.' 300 "<<set $scene.drug='pink_pill2'>>">>]<br>
[<<moveTo "event_post_destroy_work_doctor_pills_2" 'Snag some <<=setup.getItemName("pickmeup_candy")>>.' 300 "<<set $scene.drug='pickmeup'>>">>]<br>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the medicine cabinet." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
</div>/*#
#desc: grab pills after npc_work_doctor destruction
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.drug>>
<<case 'pink_pill1'>>
<<addItem "sissy_pill_mk1" 30>>
<<case 'pink_pill2'>>
<<addItem "personal_medication" 30>>
<<case 'pickmeup'>>
<<addItem "pickmeup_candy" 12>>
<</switch>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.drug>>
<<case 'pink_pill1'>>
You look through the medicine storage and grab yourself a goodly supply of <<=setup.getItemName("sissy_pill_mk1")>>.
<<case 'pink_pill2'>>
You look through the medicine storage and grab yourself a goodly supply of <<=setup.getItemName("pink_pill2")>>.
<<case 'pickmeup'>>
You find <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> supply of <<=setup.getItemName("pickmeup_candy")>> and pocket a fistful.
<<default>>
ERROR: unexpected scene.drug <<=$scene.drug>>
<</switch>>
<br><br>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the medicine cabinet." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
</div>/*#
#desc: make 9001 device after npc_work_doctor destruction
#status: RELEASED 0.9.2.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'sissyomatic_box'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<if setup.getTotalValue("smart") > 10 || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<<else>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("smart") > 10 || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished>>
The interface is pretty straightforward and you find that, in addition to mixing medication, this terminal is connected to a printer on the other side of the lab for making custom medical devices. At present it seems configured to produce <<=setup.getItemName('sissyomatic')>> chastity devices...
<<else>>
You ask <<=setup.getNpcName("npc_hucow","full")>> if she knows of a more secure chastity device? She smiles. "@@.npc_hucow;Of course, we have just the prototype for addressing the most severe of needs for security.@@" She walks over to a different terminal, quickly bringing up your employee information.
<</if>>
<br><br>
A 3d printer whirrs and you are soon presented with a box containing a brand new, custom-to-you 9001-series chastity device.<br>
<br>
<<if setup.getTotalValue("smart") > 10 || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished>>
<<=setup.getNpcName("npc_hucow","full")>> notices your efforts from across the lab and winks at you knowingly.
<<else>>
<<=setup.getNpcName("npc_hucow","full")>> smiles. "@@.npc_hucow;Enjoy! May it provide the... security you seek.@@"
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty('task_sissyomatic_steal')>>
<<if setup.checkItemOwned('sissyomatic_plans') || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && $currentTasks.task_sissyomatic_steal.finished>>
[@@.link_locked;You already made a copy of the 9001-series chastity schematics.@@]<br>
<<else>>
[<<moveTo "event_post_destroy_work_doctor_steal_sissyomatic_1" 'See if you can download a set of 9001-series chastity schematics.' 60>>]<br>
<</if>>
<</if>>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the terminal." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
</div>/*#
#desc: make a copy of sissyomatic plans after npc_work_doctor destroyed
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'sissyomatic_plans'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<if setup.getTotalValue("smart") > 10 || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<<else>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("smart") > 10 || $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished>>
You download the 9001 chastity device plans to a thumb drive.
<<else>>
You try to find schematics for the 9001-series chastity devices but can't seem to figure out where such is stored in the system. Fortunately, notices your trouble and helps you download a copy to a convenient data crystal.<br>
<br>
"@@.npc_hucow;Now remember, those are company IP... but I'm sure you aren't going to be doing anything bad with them, right?@@"<br>
<br>
You assure her that the company's secrets are safe with you.
<</if>>
<br><br>
<<printThought "Now I just need to deliver it to the New U bodyshop...">><br>
<br>
[<<moveTo "event_work_doctor_help_lab_4_sissyomatic_2" "Just leave." 60>>]
</div>/*#
#desc: aks npc_hucow for help with pink pill eternal
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_hucow","full")>> about your efforts to "perfect" <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> work... and the final step that you need to undergo to calibrate the drug.<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
Partway through your explanation <<=setup.getNpcName("npc_hucow","full")>> cuts you off. "@@.npc_hucow;Sorry, what you are outlining sounds quite fascinating... but I am in the midst of an experiment, myself. If I don't get myself strapped in and stimulated soon the batch I've been brewing will be ruined. Perhaps we could discuss things some other time?@@"<br>
<br>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Work on something else." 120>>]<br>
[<<moveTo "room_elevator_home" "Thank her and leave the lab." 300>>]
<<else>>
<<=ps(setup.getNpcName("npc_hucow","full"))>> eyes light up with excitement as you explain the necessary procedure. "@@.npc_hucow;Of course I am intimately familiar with the WONDERFUL potential of hucow refinement. What you are doing sounds quite similar to some of my own efforts to extend <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> work...@@" her voice drops momentarily "@@.npc_hucow;I believe that, among <<his npc_work_doctor>> other failings was an unwillingness to PERSONALLY embrace all aspects of <<his npc_work_doctor>> studies. Cold dispassion is an ill substitute for intimate familiarity, as I am sure you would agree.@@"<br>
<br>
You nod, and she leads you to the familiar milking side-room. "@@.npc_hucow;If you would go ahead and program both stations? Your efforts sound MOST intriguing and, should you desire my assistance, well... I would like to go through the procedure as well... and share in its results.@@"<br>
<br>
[<<moveTo "event_pink_pill_eternal_final_calibration_1_alt_2" 'Hook yourself up so <<=setup.getNpcName("npc_ai","first")>> can finish calibration.' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_pink_pill_eternal_final_calibration_1_alt_2" 'You changed your mind. The pinnacle of medicated perfection can wait for another today.' 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: strap in to calibrate pink pill eternal w/npc_hucow
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Experimental Milking Lab.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createStackedImage "companyMilking2" "mask">>
<<else>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You take a deep breath and you and <<=setup.getNpcName("npc_hucow","full")>> get to work strapping in and hooking yourselves up to your respective milking booths.<br>
<br>
It doesn't take much manual work before the automated system, guided by <<=setup.getNpcName("npc_ai","first")>>, you presume, takes over, and you <<=setup.getNpcName("npc_hucow","full")>> are tightly bound in place, large suction stimulators enveloping your <<if $player.body.breastsize[0] == 0>>flat chest<<else>><<=setup.calcBreastSize()>> breasts<</if>>, masked and gagging on one large cock with another <<if $player.body_ref.vagina>>pair <</if>>thrust into you from behind.<br>
<br>
"@@.npc_ai;<<uc "Beginning final calibration.">>@@" <<=setup.getNpcName("npc_ai","first")>> informs you through a speaker in your ear as you watch drugs start flowing down the tube leading to that gag thrust into your throat...<br>
<br>
[<<moveTo "event_pink_pill_eternal_final_calibration_4" "There's no turning back now... for science!" 1800>>]
<<else>>
You change your mind about calibrating the drug today and <<=setup.getNpcName("npc_hucow","full")>> frowns in disappointment.<br>
<br>
"@@.npc_hucow;And you had my hopes up! Well, let me know when you are ready and I will be here to assist.@@"<br>
<br>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Work on something else." 120>>]<br>
[<<moveTo "room_elevator_home" "Thank her and leave the lab." 300>>]
<</if>>
</div>/*#
#desc: complete pink pill eternal, caught
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_pink_eternal_bonus' $now true>>
<<set $player.flags.pink_pill.eternal = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<div id="invframe" class="scrolltext">
You lose track of everything, unsure if you have been in the machine's grasp for an hour, a day... or forever.<br>
<br>
You wake up to find yourself looking over at <<=setup.getNpcName("npc_hucow","full")>>, the lab-tech smiling and looking refreshed as she unhooks from the machine. For your part you are still all but a slave to the drugs pounding through your system, and all you do is drool as you slump to the ground.<br>
<br>
"@@.npc_hucow;Mmm, that felt great! Oh... I guess it's hitting you a bit stronger, eh? Well, I have built up a pretty strong tolerance...@@"<br>
<br>
She walks over and helps you back to your feet. "@@.npc_hucow;Mmm, I am just abuzz with excitement, I need to go take notes on this new procedure of yours, it holds so much promise!@@"<br>
<br>
There's a somewhat familiar gleam of excitement in her eye as she helps you out of the lab and then dashes back to her terminal, pulling a pair of milking cups out from under the desk and hooking herself up as she hums and gets to work.<br>
<br>
[<<moveTo "event_pink_pill_eternal_final_calibration_6" "Head for the elevator." 300>>]
</div>/*#
#desc: run into evil_nurse after twig destroy
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.visitDoctor = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5") setup.charImage("npc_evil_nurse","npc_evil_nurse_open") setup.charImage("npc_primrose","npc_primrose_doll")>>
<div id="invframe" class="scrolltext">
You almost have a panic attack when you enter the R&D lab to see <<=setup.getNpcName("npc_evil_nurse","formal")>> talking with <<=setup.getNpcName("npc_hucow","full")>>.<br>
<br>
<<if State.hasPlayed("event_nurse_doctor_ai_third_4")>>
Though the evil nurse turns to notice you, there is not the slightest hint of recognition on her face as she snorts and then turns back to her discussion.<br>
<br>
<</if>>
As you catch your breath, thankful for the nurse's outfit <<=setup.getNpcName("npc_work_doctor","formal")>> had insisted you wear on your rounds, you notice another figure kneeling next to the Nurse... a pink-clad <<=setup.getNpcName("npc_primrose","formal")>> sitting pet-like at her feet, a comparison driven home even further by the leash that runs from <<his npc_primrose>> collar to her hand.<br>
<br>
[<<moveTo "event_post_destroy_evil_nurse_return_2" "Continue." 180>>]
</div>/*#
#desc: listen to evil nurse after twig destroy
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5") setup.charImage("npc_evil_nurse","npc_evil_nurse_open") setup.charImage("npc_primrose","npc_primrose_doll")>>
<div id="invframe" class="scrolltext">
"@@.npc_evil_nurse;... and do not force me to come up here again. My subjects require dosing on a precise schedule and I need plenty of their medicine on hand. I do not have the time to be constantly coming up to fetch things.@@"<br>
<br>
"@@.npc_hucow;As I said before, we are still working on meeting the full company's needs and I am doing the best I can to prioritise allocations according to—@@" <<=setup.getNpcName("npc_hucow","full")>> replies, doing an admirable job of standing up to the intimidating Nurse until being cut off.<br>
<br>
"@@.npc_evil_nurse;Then prioritise me to the top! Otherwise the next time I'm up here I'll hook you up and milk things myself until I have what I need...@@"<br>
<br>
"@@.npc_hucow;Of course,@@" <<=setup.getNpcName("npc_hucow","full")>> replies quickly, only to blush and correct herself with somewhat less lusty arousal in her voice. "@@.npc_hucow;I will do my best to ensure you remain supplied as necessary, things are improving, I have made several productivity enhancements in the last week alone...@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> nods sharply, clearly disinterested in the details of how <<=setup.getNpcName("npc_hucow","full")>> is improving on <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> department. "@@.npc_evil_nurse;See that you do.@@" She snaps before turning to go with a sharp tug on leash. "@@.npc_evil_nurse;Come along, we have additional manual training to do to make up for your missed dosage.@@"<br>
<br>
Without little more than a glance in your direction <<=setup.getNpcName("npc_primrose","formal")>> follows after as <<=setup.getNpcName("npc_evil_nurse","formal")>> leaves the lab.<br>
<br>
"@@.npc_hucow;Sorry about that,@@" <<=setup.getNpcName("npc_hucow","full")>> states with a welcoming smile. "@@.npc_hucow;Reorganisations can always have people a bit on edge, especially unexpected ones! Is there anything I can do for you?@@"<br>
<br>
<<include "postDestroyDoctorLabOptions">>
<<include "afterWorkVisiting">>
</div>/*#
#desc: run into evil_nurse after twig destroy
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_5")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_hucow","full")>> if she could direct you to <<=ps(setup.getNpcName("npc_primrose","formal"))>> and she cringes before looking somewhat sad.<br>
<br>
"@@.npc_hucow;<<=setup.getNpcName("npc_primrose","formal")>>? Yes, I can tell you the way... though, I advise you that <<he npc_primrose>> is... somewhat over-focused on <<his npc_primrose>> work, even by <<his npc_primrose>> standards.@@" She shakes her head "@@.npc_primrose;Perhaps your visit mich help <<him npc_primrose>>... though I advise you to keep an eye out for <<=setup.getNpcName("npc_evil_nurse","formal")>>.@@" <<=setup.getNpcName("npc_hucow","full")>> shudders fearfully at the mention of the evil nurse.<br>
<br>
<<=setup.getNpcName("npc_hucow","full")>> writes out the directions to <<=ps(setup.getNpcName("npc_primrose","formal"))>>, seeing it spelt out it actually isn't as bad as you thought... though you still certainly wouldn't have found your way unaided.<br>
<br>
"@@.npc_hucow;Would there be anything else?@@"<br>
<br>
<<include "postDestroyDoctorLabOptions">>
<<include "afterWorkVisiting">>
</div>/*#
#desc: failed to show up for work doctor weekend training.
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "Call from <<=setup.getNpcName('npc_work_doctor', 'formal')>>">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addTaskById 'event_doctor_training' _nextDate>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are being called by <<=setup.getNpcName('npc_work_doctor', 'formal')>>.<br>
<br>
"@@.npc_work_doctor;Hello <<=$player.first_name>>. I thought you were interested in learning how to assist my studies and yet here I am, showing up on a weekend, and you are nowhere to be seen. I am VERY disappointed in you and struggle to think what possible intent you could have in so wasting my time. I suppose I will just see you for your next prescription resupply... perhaps your dosage needs to be adjusted...@@"<br>
<br>
Suddenly scared you beg <<him npc_work_doctor>> for forgiveness, explaining that you were up very late the previous evening getting your <<if $fetish.sissy>>sissy <</if>>holes fucked and you overslept!<br>
<br>
Though you can tell <<he npc_work_doctor>> is still a bit suspicious and annoyed it seems your explanation convinces <<him npc_work_doctor>> to show leniency and even convinces <<him npc_work_doctor>> to re-schedule for the following Sunday before <<he npc_work_doctor>> hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: show up for weekend lesson with npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_work_doctor', 'formal')>> meets you in the lobby under the stern gaze of one of the security guards and takes you up to <<his npc_work_doctor>> office. You are surprised to note how many labs appear to be lights on and operational — apparently experiments at Social Interaction Service Syndicate Inc. frequently run 24/7.<br>
<br>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> is quiet until you are inside <<his npc_work_doctor>> private office/lab where <<he npc_work_doctor>> locks the door and greets you with a smile,
<<if setup.checkVisibleClothingTag('schoolgirl') > 50>>
grinning even wider as <<he npc_work_doctor>> again lays eyes on your sexy schoolgirl ensemble.<br>
<br>
"@@.npc_work_doctor;Excellent, you are all dressed for the occasion!@@"
<<else>>
though appearing a touch disappointed at your choice of attire.<br>
<br>
"@@.npc_work_doctor;Hmm, after your previous display I had hoped you would appear "dressed to learn"... ah well, we shall proceed in any case.@@"
<</if>>
<br><br>
<<He npc_work_doctor>> appears to have arranged a corner of the lab into a "classroom" — a whiteboard rolled in front of a chair and a desk... a chair that has a large dildo sticking up from the seat that looks strikingly similar to <<his npc_work_doctor>> blue-veined cock, while the only objects on the table are a pen, a paper and a large funnel-incorporating gag.<br>
<br>
"@@.npc_work_doctor;If you would please take your seat and get ready we will proceed with your lesson.@@"<br>
<br>
<<printThought "What have I volunteered for?">><br>
<br>
[<<moveTo "event_work_doctor_training_2" "Take a seat and gag yourself as seems to be implied." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_doctor_training_2" "Suddenly remember that you have somewhere else to be." 300 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: take your seat for lesson with npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
<<applyExperience 'submission' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' $npc_work_doctor.penis_size_boosted 'normal' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bdsm' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' $npc_work_doctor.penis_size_boosted 'normal' $SEEN_STRANGER>>
<</if>>
<<if $scene.obey>>
Curtsying obediently you mince over to the chair, eyeing the dildo glistening with lube with <<if setup.getTotalValue("penis") > 10>>anticipation<<else>>fear<</if>>.
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
You eye the dildo a bit nervously in light of your hollow plug but, taking a deep breath, you line yourself up and lower yourself onto it, feeling your ass swell mightily to contain the filling combination.
<<else>>
Taking a deep breath, you reach around behind and slide the <<=setup.getItemTypeName("plug")>> from its home nestled in your rear.<br>
<br>
<<if setup.isItemEquipped("remote_control_plug")>>
"@@.npc_work_doctor;Ah, a regulation plug, just what I should have expected.@@"
<<else>>
"@@.npc_work_doctor;Hmm, that doesn't look regulation. Still, I suppose you are off the clock.@@"
<</if>>
<br><br>
Gently placing the plug on the table you squat over the dildo, reaching behind to line it up with your hole as you settle your weight and feel it slowly enter your body.
<</if>>
<<else>>
Taking a deep breath, you position yourself over the dildo and then slowly begin to lower yourself down onto it, wondering if you might have been better off if you had "prepared" by stuffing a plug in your ass before you left the house this morning.
<</if>>
<br><br>
<<if setup.getTotalValue("anal") > 10>>
Just like its flesh and blood counterpart it enters you with ease, stretching you out and filling you for certain, but presenting no major challenge as it slides into your trained hole and you settle onto the chair.
<<else>>
Even though you've felt its real life counterpart the dildo is a challenge. You take quick sharp breaths and focus on relaxing as you let your weight push you down onto the impaling monster. When your bottom finally touches the chair you pant, shuddering in fullness as you wonder if you would even have the strength to lift yourself back up off.
<</if>>
<br><br>
One hole filled you reach for the gag, spreading your lips wide to accommodate the funnel insert as <<=setup.getNpcName('npc_work_doctor', 'formal')>> looks on and nods in approval.<br>
<br>
A network of straps go over and around your head and under your chin to ensure that you will be unable to spit out the jaw-jacking sphere
<<if setup.getTotalValue("bdsm") > 10>>
and you make sure to tighten each and every one as far as they will go until they are digging into your skin and forcing the gag insert deep into your mouth.
<<else>>
and you systematically tighten them down to make everything secure.
<</if>>
<br><br>
You look up in anticipation as <<he npc_work_doctor>> walks over. Producing a set of heavy, institutional-grade leather belts <<he npc_work_doctor>> lashes you to the chair, two belts over your thighs and another pair forcing your torso straight as you are pulled into the back of the chair. <<if setup.getTotalValue("bdsm") > 10>>Checking the gag <<he npc_work_doctor>> seems impressed, unable to tighten a single strap even one notch further than you have already inflicted on yourself<<else>>Checking the gag <<he npc_work_doctor>> cinches each strap another notch tighter, forcing the large gag even deeper into your mouth as the straps dig into your flesh<</if>>. Padlocks are added to each strap around your body and head before <<he npc_work_doctor>> is satisfied with your situation.
<<else>>
Nervously eyeing the dildo sprouting from the chair, you start to explain that you actually have somewhere else to be. As you talk, <<he npc_work_doctor>> stalks towards you, your voice trailing off as <<he npc_work_doctor>> looms above you, a frown on <<his npc_work_doctor>> face.<br>
<br>
"@@.npc_work_doctor;No.@@" <<He npc_work_doctor>> states flatly as electricity suddenly runs through your body causing you to flail then collapse as <<he npc_work_doctor>> pockets the stun device. "@@.npc_work_doctor;I went to no small amount of trouble preparing this lesson and coming in on my weekend so you, missy, are going to learn what I have to teach.@@"<br>
<br>
Picking up your body <<he npc_work_doctor>> walks you over to the chair.
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Finding the hollow of the plug in your rear <<he npc_work_doctor>> shrugs, leaving it in place.
<<else>>
With your body still slung over <<his npc_work_doctor>> shoulder, <<he npc_work_doctor>> slides the <<=setup.getItemTypeName("plug")>> out of your rear.<br>
<br>
<<if setup.isItemEquipped("remote_control_plug")>>
"@@.npc_work_doctor;Ah, a regulation plug, just what I should have expected.@@"
<<else>>
"@@.npc_work_doctor;Hmm, that doesn't look regulation. Still, I suppose you are off the clock.@@"
<</if>>
<</if>>
<<else>>
With your body still slung over <<his npc_work_doctor>> shoulder <<he npc_work_doctor>> checks your rear, seemingly surprised to find it empty.<br>
<br>
"@@.npc_work_doctor;No plug? I suppose you are technically on your own time, but I must say this is quite a surprise for a <<if $fetish.sissy>>SISSI <</if>>Secretary of your tenure. No matter, I have an exact copy of your favourite rectal guest waiting for you.@@"
<</if>>
<br><br>
Lining you up with the dildo, <<he npc_work_doctor>> plops you down onto the chair. Fortunately the dong is already soaked with lube, your organs re-arranging themselves to accommodate as the force of your bodyweight drives you all the way down the thick shaft. A pair of wide medical-grade straps lash you to the seat of the chair with another pair going around your torso, securing you in place before the stunning effects of the electricity has yet worn off.<br>
<br>
Casually pulling your jaw apart, <<he npc_work_doctor>> shoves the massive funnel gag in place and buckles it as tight as it will go, additional straps over your head and under your chin ensuring there is zero chance of your spitting it out, locks through the buckle of every strap meaning you are well and truly stuck; bound and helpless to resist whatever else <<he npc_work_doctor>> might decide to put in your body...
<</if>>
<br><br>
Stepping away <<he npc_work_doctor>> grins. "@@.npc_work_doctor;Wonderful, I do so prefer a... captive audience.@@" <<He npc_work_doctor>> chuckles at <<his npc_work_doctor>> own joke as <<he npc_work_doctor>> walks up to the whiteboard and picks up a marker. "@@.npc_work_doctor;Now, if you would pick up your pen I will begin today's lesson.@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<He npc_work_doctor>> launches into a lecture on bio-chem that is certainly intended to go far, far over your head, though you find yourself following along without too much difficulty.<br>
<br>
<<if setup.getTotalValue("smart") > 15>>
[<<moveTo "event_work_doctor_training_3" "Take notes of anything <<he npc_work_doctor>> gets wrong." 3600 "<<set $scene.smart=true>>">>]<br>
<<else>>
[<<moveTo "event_work_doctor_training_3" "Take notes of any questions you have for when you are no longer gagged." 3600 "<<set $scene.smart=true>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_training_3" "Pay close attention, but play dumb." 3600 "<<set $scene.smart=false>>">>]
<<else>>
<<He npc_work_doctor>> launches into a lecture on bio-chem that seems intended to go far, far over your head.<br>
<br>
<<if setup.getTotalValue("smart") > 5>>
[<<moveTo "event_work_doctor_training_3" "This is really advanced, but maybe if you take notes you can ask for clarification at the end?" 3600 "<<set $scene.smart=true>>">>]<br>
<<else>>
[<<moveTo "event_work_doctor_training_3" "Try to pretend like you understand what <<hes npc_work_doctor>> saying." 3600 "<<set $scene.smart=true>>">>]<br>
<</if>>
[<<moveTo "event_work_doctor_training_3" "This is too complex, just doodle on your paper." 3600 "<<set $scene.smart=false>>">>]
<</if>>
</div>/*#
#desc: listen to lesson from npc_work_doctor
#status: FINISHED 0.7.4.0
#ignore_spell: s,d,b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.smart>>
<<applyExperience 'smart' 15 'very' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'smart' 10 'very' $SEEN_STRANGER>>
<</if>>
<<if setup.getTotalValue("smart") > 10 && $scene.smart>>
<<incrementEmotion 'anger' 'npc_work_doctor' 2>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("smart") > 10>>
It's obvious <<he npc_work_doctor>> is more concerned with showing off than actually teaching, but it quickly becomes clear that behind the ten credit words and scientific terminology <<his npc_work_doctor>> field of study is relatively straightforward; focusing on combining a small subset of artificial chemicals and nano-machine delivery mechanisms to produce a "cocktail" meant to enact certain desired physical and mental changes in the subject. The underlying science is quite fascinating, and impressive in what it is able to accomplish, but <<his npc_work_doctor>> actual application seems little more than a pedestrian game of mix and match.<br>
<br>
<<if $scene.smart>>
<<if setup.getTotalValue("smart") > 15>>
Despite your gag you raise your hand to interrupt grunting as you point to an error in one of <<his npc_work_doctor>> formulas. You almost roll your eyes with how long it takes <<him npc_work_doctor>> too figure out the mistake that is, to you, so plain to see, and when <<he npc_work_doctor>> finally does <<he npc_work_doctor>> bristles in obvious annoyance.
<<else>>
Your bright-eyed annoyance seems to bother <<him npc_work_doctor>>, especially when <<he npc_work_doctor>> peers down at your perfect, copious notes.
<</if>>
<br><br>
"@@.npc_work_doctor;Are you certain you have been keeping up with your prescription? This behaviour is quite unbecoming one of your position, it is like you think you know better than I do in how this all works!@@"
<<else>>
As much as <<he npc_work_doctor>> might pretend, and how poorly <<he npc_work_doctor>> seems as an instructor, what <<he npc_work_doctor>> is talking about is relatively straightforward and you have no trouble memorising the important bits while making bedroom eyes up at your "instructor" as you doodle hearts around a sketch of <<his npc_work_doctor>> big cock on your notepad.
<</if>>
<br><br>
Despite <<his npc_work_doctor>> attempt at obfuscation, you deduce a simple pattern to the chemicals at hand that break into three pairings. First up is <<=setup.getItemName("drug_breast")>>, a sort of estrogen analogue that encourages breast growth and other feminising features which matches with <<=setup.getItemName("drug_dick")>> that causes temporary penile growth. You find it curious how the former is permanent while the latter is temporary only to reflect and realise that the effects of <<=setup.getItemName("drug_dick")>> would perfectly match the engorged, overly veiny appearance of <<his npc_work_doctor>> cock<<if $scene.smart && setup.getTotalValue("smart") > 15>>the simple error you noticed in <<his npc_work_doctor>> formula likely the reason for <<his npc_work_doctor>> hair trigger<</if>>.<br>
<br>
The second chemical pairing is <<=setup.getItemName("drug_ditzy")>> and <<=setup.getItemName("drug_smart")>>; the former acting to suppress thoughts and intelligence while the latter heightens awareness and sharpens memory. Finally there is <<=setup.getItemName('drug_slave')>> and <<=setup.getItemName("drug_master")>> — one that causes docile, subservient behaviour while the other induces aggression and competitiveness.
<<else>>
<<if $scene.smart>>
Your bright-eyed attentiveness seems to concern <<him npc_work_doctor>> but, no matter how well you may act, you soon lose track of what <<hes npc_work_doctor>> talking about under a deluge of ten credit words and scientific jargon.<br>
<br>
"@@.npc_work_doctor;Are you certain you have been keeping up with your prescription? I am honestly surprised that a laywoman, or should I say, laid woman? Such as yourself could keep up with such advanced science!@@"
<<else>>
Trying to follow <<his npc_work_doctor>> dense explanation is hard, so you don't even bother, spending the lecture making bedroom eyes up at <<him npc_work_doctor>> as you doodle hearts around a sketch of <<his npc_work_doctor>> big cock on your note-sheet.
<</if>>
<</if>>
<br><br>
Seemingly at the end of <<his npc_work_doctor>> lecture, <<he npc_work_doctor>> walks over to check your notes.
<<if $scene.smart>>
Looking over your notes <<he npc_work_doctor>> snorts in derision. "@@.npc_work_doctor;Well, well, well, look at who thinks she's so clever. Do you think that would impress me? That the <<if $fetish.sissy>>SISSI <</if>>secretary can take dictation? Hah, copying is trivial, the brilliance is in creation and the only thing you're responsible for creating is lust in others.@@" Wadding the paper up <<he npc_work_doctor>> tosses it into the trash. "@@.npc_work_doctor;Still, if you think you are so clever let's see how you fare on the final test.@@"
<<else>>
Smiling down at your "art" <<he npc_work_doctor>> uses the marker to write something on your forehead, adding some additional letters to your cheek before pulling a mirror over for you to see that you are now announcing yourself as "DUMB WHORE" with your gag-spread mouth forming the O.<br>
<br>
"@@.npc_work_doctor;As you can see, these things are far too complicated for a girl such as yourself, but I have a simpler formula for you to remember so that you can help me. English letters — compounds B, D and S, are for trash, no-class whores like yourself. Greek letters — that's what Delta, Sigma and Mu are for intelligent <<men npc_work_doctor>> of science. So, are you ready for a test?@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
Keeping up the charade, you blink up at <<him npc_work_doctor>> and then nod eagerly, rolling your hips to work the dildo in your ass as you moan through the gag.
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<His npc_work_doctor>> simplified explanation seems straightforward enough and you carefully nod, hoping that none of the earlier technical details are going to be on the test...
<<else>>
The mention of a "test" puts you in mind of the sexy tests <<he npc_work_doctor>> puts you through at each of your checkups and you nod eagerly. As filling as the dildo in your ass is, you could really do with some motion against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>, maybe from the hot, hard, real deal!
<</if>>
<</if>>
<</if>>
<br><br>
Grinning, <<he npc_work_doctor>> walks over to one of <<his npc_work_doctor>> lab stations, returning to place six beakers in front of you, the three on your left labeled B, D, S with Delta, Sigma, Mu to your right. Placing a final cylinder and a stirring rod in front of you, <<he npc_work_doctor>> steps back.<br>
<br>
"@@.npc_work_doctor;Now, for your first cocktail...@@"<br>
<br>
[<<moveTo "event_work_doctor_training_4" "Prepare to mix." 60 "<<set $scene.smart=false>>">>]
</div>
/%
Breasts/Dick
Ditzy/Smart
Slave/Master
%//*#
#desc: drug selection for npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<label>Add <<=setup.getItemName("drug_breast")>> <<checkbox "$scene.breasts" false true>> <<if setup.getTotalValue("smart") > 10>>Induces feminisation and breast growth<</if>></label><br>
<label>Add <<=setup.getItemName("drug_ditzy")>> <<checkbox "$scene.ditzy" false true>> <<if setup.getTotalValue("smart") > 10>>Induces ditzy happiness<</if>></label><br>
<label>Add <<=setup.getItemName('drug_slave')>> <<checkbox "$scene.slave" false true>> <<if setup.getTotalValue("smart") > 10>>Induces submissive feelings<</if>></label><br>
<label>Add <<=setup.getItemName("drug_dick")>> <<checkbox "$scene.dick" false true>> <<if setup.getTotalValue("smart") > 10>>Induces penis growth<</if>></label><br>
<label>Add <<=setup.getItemName("drug_smart")>> <<checkbox "$scene.smart" false true>> <<if setup.getTotalValue("smart") > 10>>Accelerates mental acuity<</if>></label><br>
<label>Add <<=setup.getItemName("drug_master")>> <<checkbox "$scene.master" false true>> <<if setup.getTotalValue("smart") > 10>>Increases dominance and aggression<</if>></label><br>/*#
#desc: first test question from npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.score = 0>>
<<set $scene.breast_count = 0>>
<<set $scene.ditzy_count = 0>>
<<set $scene.slave_count = 0>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You sit bound, staring at the six drugs as <<he npc_work_doctor>> gives your first prompt.<br>
<br>
"@@.npc_work_doctor;Our first subject is a simple one. One of the board members is looking for a bit of a "pick me up" for the party <<he>> has planned for this coming weekend.@@"<br>
<br>
<<include "event_doctor_training_test">>
<br>
[<<moveTo "event_work_doctor_training_5" "Submit your brew for assessment." 60>>]
</div>/*#
#desc: second test question from npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.breasts && !$scene.ditzy && !$scene.slave && $scene.dick && $scene.smart && $scene.master>>
<<set $scene.score += 1>>
<</if>>
<<if $scene.breasts>>
<<set $scene.breast_count += 1>>
<</if>>
<<if $scene.ditzy>>
<<set $scene.ditzy_count +=1>>
<</if>>
<<if $scene.slave>>
<<set $scene.slave_count +=1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
Having made your selection, <<if !$scene.breasts && !$scene.ditzy && !$scene.slave && !$scene.dick && !$scene.smart && !$scene.master>>or... no selection, as the case may be, you blink at <<=setup.getNpcName("npc_work_doctor","formal")>> as <<his npc_work_doctor>> gaze narrows in annoyance<<else>>you give things a quick stir and wait as <<he npc_work_doctor>> examines the mixture<</if>>.<br>
<br>
<<if !$scene.breasts && !$scene.ditzy && !$scene.slave && $scene.dick && $scene.smart && $scene.master>>
"@@.npc_work_doctor;Quite the simple one, really, but you got it precisely correct. Our executive would want to be smart, dominant and with a nice enhancement between the legs to make the most of <<his>> weekend.@@"
<<elseif $scene.breasts && $scene.ditzy && $scene.slave && !$scene.dick && !$scene.smart && !$scene.master>>
<<He npc_work_doctor>> frowns. "@@.npc_work_doctor;This is literally the complete opposite of what you should have prepared, you would almost have to do it intentionally to screw up this badly.@@"
<<elseif !$scene.breasts && !$scene.ditzy && !$scene.slave && !$scene.dick && !$scene.smart && !$scene.master>>
<<He npc_work_doctor>> frowns. "@@.npc_work_doctor;I tell you to make a preparation, and yet you do nothing... why did you even come here if you are not willing to at least experiment?@@"
<<else>>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;No, this is quite incorrect.
<<if $scene.breasts>>
Why would our <<if !$options.fem>>decidedly male <</if>>executive want to grow <<if !$options.fem>>massive, distracting <</if>>breasts?
<</if>>
<<if $scene.ditzy>>
An executive should never be ditzy and forgetful.
<</if>>
<<if $scene.slave>>
An executive should not be submissive.
<</if>>
<<if !$scene.dick>>
To best enjoy their party they would want their cock to be big and hard!
<</if>>
<<if !$scene.smart>>
An executive would want to have their mind sharp!
<</if>>
<<if !$scene.master>>
They would also want to feel dominant and powerful.
<</if>>
I suppose you got a few things right, but I can't very well trust you to mix up prescriptions unless I can count on perfection, right?@@"
<</if>>
<br><br>
<<He npc_work_doctor>> places a fresh container in front of you. "@@.npc_work_doctor;Our second subject I believe you are familiar with — our lovely Manager of Employee Development, <<=setup.getNpcName("npc_development","other")>> is looking for a bit of a pick-me-up to take before she gives a particularly rowdy student a lesson they are unlikely to ever forget.@@"<br>
<br>
<<include "event_doctor_training_test">>
<br>
[<<moveTo "event_work_doctor_training_6" "Submit results for scoring." 60>>]
</div>/*#
#desc: third test question from npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.breasts && !$scene.ditzy && !$scene.slave && $scene.dick && $scene.smart && $scene.master>>
<<set $scene.score += 1>>
<</if>>
<<if $scene.breasts>>
<<set $scene.breast_count += 1>>
<</if>>
<<if $scene.ditzy>>
<<set $scene.ditzy_count += 1>>
<</if>>
<<if $scene.slave>>
<<set $scene.slave_count += 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
Having made your selection, <<if !$scene.breasts && !$scene.ditzy && !$scene.slave && !$scene.dick && !$scene.smart && !$scene.master>>or... no selection, as the case may be, you blink at <<=setup.getNpcName("npc_work_doctor","formal")>> as <<his npc_work_doctor>> gaze narrows in annoyance<<else>>you give things a quick stir and wait as <<he npc_work_doctor>> examines the mixture<</if>>.<br>
<br>
<<if $scene.breasts && !$scene.ditzy && !$scene.slave && $scene.dick && $scene.smart && $scene.master>>
"@@.npc_work_doctor;Precisely right. <<=setup.getNpcName("npc_development","other")>> obviously needs to be sharp and in charge and would want to enhance her feminine beauty while knowing that the prided "bonus" between her legs is ready to teach that wayward student a full lesson in all of their holes.@@"
<<elseif !$scene.breasts && $scene.ditzy && $scene.slave && !$scene.dick && !$scene.smart && !$scene.master>>
<<He npc_work_doctor>> frowns. "@@.npc_work_doctor;This is literally the complete opposite of what you should have prepared, you would almost have to do it intentionally to screw up this badly.@@"
<<elseif !$scene.breasts && !$scene.ditzy && !$scene.slave && !$scene.dick && !$scene.smart && !$scene.master>>
<<He npc_work_doctor>> frowns. "@@.npc_work_doctor;I tell you to make a preparation, and yet you do nothing... why did you even come here if you are not willing to at least experiment?@@"
<<else>>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;No, this is quite incorrect.
<<if !$scene.breasts>>
<<=setup.getNpcName("npc_development","other")>> would obviously want to maximize her feminine assets.
<</if>>
<<if $scene.ditzy>>
Being distracted and forgetful would make her a poor teacher.
<</if>>
<<if $scene.slave>>
How could she fulfil her duties as an instructor if she was meek and submissive?
<</if>>
<<if !$scene.dick>>
<<=setup.getNpcName("npc_development","other")>>, and her "lucky" student, would be very disappointed not to be making the most of her lovely lady lance.
<</if>>
<<if !$scene.smart>>
She would be a better teacher maximising her intellect.
<</if>>
<<if !$scene.master>>
Such a rowdy student needs a firm, aggressive hand to be brought into line.
<</if>>
I suppose you got a few things right, but I can't very well trust you to mix up prescriptions unless I can count on perfection, right?@@"
<</if>>
<br><br>
<<He npc_work_doctor>> places a fresh container in front of you. "@@.npc_work_doctor;Our final subject is one of our competitor's chief scientists. <<if $options.fem>>A mousy, prim and proper sort<<else>>A very stern and manly sort<</if>>. What special mixture should one of our agents slip <<him>> before <<he>> gives an important presentation for an important government contract that our company is also hoping to claim?@@"<br>
<br>
<<include "event_doctor_training_test">>
<br>
[<<moveTo "event_work_doctor_training_7" "Submit results for scoring." 60>>]
</div>/*#
#desc: final test question from npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.breasts && $scene.ditzy && $scene.slave && $scene.dick && !$scene.smart && !$scene.master>>
<<set $scene.score += 1>>
<</if>>
<<if $scene.breasts>>
<<set $scene.breast_count+= 1>>
<</if>>
<<if $scene.ditzy>>
<<set $scene.ditzy_count +=1>>
<</if>>
<<if $scene.slave>>
<<set $scene.slave_count +=1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
Having made your selection, <<if !$scene.breasts && !$scene.ditzy && !$scene.slave && !$scene.dick && !$scene.smart && !$scene.master>>or... no selection, as the case may be, you blink at <<=setup.getNpcName("npc_work_doctor","formal")>> as <<his npc_work_doctor>> gaze narrows in annoyance<<else>>you give things a quick stir and wait as <<he npc_work_doctor>> examines the mixture<</if>>.<br>
<br>
<<if $scene.breasts && $scene.ditzy && $scene.slave && $scene.dick && !$scene.smart && !$scene.master>>
"@@.npc_work_doctor;Perfection! Turning into a forgetful, big-breasted bimbo in mid-presentation while their cock bursts from their pants would surely embarrass them and their company, and they'd be too submissive to even care! Still, I'm sure they'll love their second career as a submissive plaything at Social Interaction Service Syndicate Inc. when our sales<<man>> swoops in and cinches the contract and they're fired in disgrace.@@"
<<elseif !$scene.breasts && !$scene.ditzy && !$scene.slave && !$scene.dick && $scene.smart && $scene.master>>
<<He npc_work_doctor>> frowns. "@@.npc_work_doctor;This is literally the complete opposite of what you should have prepared, you would almost have to do it intentionally to screw up this badly.@@"
<<elseif !$scene.breasts && !$scene.ditzy && !$scene.slave && !$scene.dick && !$scene.smart && !$scene.master>>
<<He npc_work_doctor>> frowns. "@@.npc_work_doctor;I tell you to make a preparation, and yet you do nothing... why did you even come here if you are not willing to at least experiment?@@"
<<else>>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;No, this is quite incorrect.
<<if !$scene.breasts>>
I mentioned they were <<if $options.fem>>making an important pitch<<else>>male<</if>>, growing large breasts mid-presentation would surely disrupt their ability to make a convincing pitch.
<</if>>
<<if !$scene.ditzy>>
This seems like the most obvious one! Certainly we would want out competitor to be dim-witted and forgetful.
<</if>>
<<if !$scene.slave>>
A more submissive presenter would work to our advantage, being less able to assert the value of their competing product.
<</if>>
<<if !$scene.dick>>
While I can understand the confusion you must realise that having their cock burst out of their pants mid-presentation would only serve to embarrass them and ruin their pitch.
<</if>>
<<if $scene.smart>>
Making a competitor smarter? No, that would be quite counter to our purposes.
<</if>>
<<if $scene.master>>
Giving our competitor aggressive energy would only serve to make them more likely to claim the contract.
<</if>>
I suppose you got a few things right, but I can't very well trust you to mix up prescriptions unless I can count on perfection, right?@@"
<</if>>
<br><br>
"@@.npc_work_doctor;Well, that concludes the test. Let us see how you scored overall.@@"<br>
<br>
[<<moveTo "event_work_doctor_training_8" "Continue..." 60>>]
</div>/*#
#desc: quiz results from npc_work_doctor
#status: FINISHED 0.7.4.0
#ignore_spell: s,d,b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.score>>
<<case 3>>
<<incrementEmotion 'anger' 'npc_work_doctor' 1>>
<<set $npc_work_doctor.flags.correct_chemicals = true>>
<<case 2>>
<<decrementEmotion 'affection' 'npc_work_doctor' 1>>
<<case 1>>
<<incrementEmotion 'affection' 'npc_work_doctor' 1>>
<<case 0>>
<<decrementEmotion 'anger' 'npc_work_doctor' 1>>
<</switch>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<switch $scene.score>>
<<case 3>>
<<He npc_work_doctor>> seems quite surprised and suspicious as <<he npc_work_doctor>> delivers <<his npc_work_doctor>> assessment. "@@.npc_work_doctor;<<if $fetish.drugs>>If I didn't know better, I would think you had been skipping your medication and yet, somehow, you managed<<else>>Somehow you have<</if>> to perfectly formulate each mixture according to the given prompt. Perhaps you have some manner of idiot-savant skill, in any case, if you wish to stop by at the end of the day sometime I would be willing to allow you to assist me in some of the important work I do for this company.@@"
<<case 2>>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head, looking a little frustrated. "@@.npc_work_doctor;Once could be a fluke, but two out of three? <<if $fetish.drugs>>I almost wonder if you've been skipping your meds, but that is, obviously, impossible<<else>>I will admit surprise that a mere <<if $fetish.sissy>>SISSI <</if>>Secretary like you could manage a performance like that<</if>>. Ah, well, if you want to stop by at the end of the day sometime I will see what I can do to put you to use as I do my rounds.@@"
<<case 1>>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head, though seemingly in amusement. "@@.npc_work_doctor;I guess random chance occasionally smiles on a bimbo. You managed a single correct formulation. Totally useless in the lab but... well, I can come up with a few other thing you could do. Stop by at the end of the day sometime if you would like to help me do my rounds and see a bit more of the important work I do for this company.@@"
<<case 0>>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head, though seemingly in amusement. "@@.npc_work_doctor;I suppose I should have expected no better from one such as you. You are clearly too dumb to be of use as a proper assistant, but, well... I believe you could still be of some value. Stop by at the end of the day sometime if you would like to help me do my rounds and see a bit more of the important work I do for this company. I doubt one in your state is even capable of learning in the conventional sense but... I imagine you will find some enjoyment in the process.@@"
<<default>>
ERROR unexpected scene.score <<=$scene.score>>
<</switch>>
<br><br>
You're still bound and helpless as <<he npc_work_doctor>> stands over you and casually checks <<his npc_work_doctor>> watch. "@@.npc_work_doctor;Well, well, would you look at the time! I have some work to do, but I suppose it would be cruel to leave you stuffed for so long without a proper taste of the real thing...@@"<br>
<br>
Picking up the vial marked Delta, <<he npc_work_doctor>> chugs it in one gulp, licking <<his npc_work_doctor>> lips of the blue concoction as <<his npc_work_doctor>> cock bursts from <<his npc_work_doctor>> pants. "@@.npc_work_doctor;Mmm, that hits the spot, but I imagine you're feeling quite parched after your lesson, so here, don't want your throat to be dry and chafing while I'm fucking it.@@"<br>
<br>
You immediately understand the reason for your gag as <<he npc_work_doctor>> pours the remaining contents of the B, D and S beakers into your gag, pinching your nose once it's full to ensure you have no choice but to drink it all down.<br>
<br>
[<<moveTo "event_work_doctor_training_9" "Continue." 300>>]
</div>/*#
#desc: drugged after quiz with npc_work_doctor
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.breast_count>>
<<case 0>>
<<set $scene.hairgrow = $player.hair.style != 'long_open'>>
<<set $scene.haircolor = $player.hair.color != 'blonde'>>
<<if $scene.hairgrow || $scene.haircolor>>
<<changeHair 'long_open' 'blonde'>>
<</if>>
<<if !$player.sec_style.body.hair>>
<<set $player.sec_style.body.hair = "forced">>
<</if>>
<<set $scene.breastGrow = $player.body.breastsize[0] < 10>>
<<if $scene.breastGrow>>
<<if $player.body.breastsize[0] < 5>>
<<set $player.body.breastsize[1] = 5>>
<<else>>
<<set $player.body.breastsize[1] += 2>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<</if>>
<<case 1 2>>
<<set $scene.breastGrow = $player.body.breastsize[0] < 10>>
<<if $scene.breastGrow>>
<<if $player.body.breastsize[0] < 3>>
<<set $player.body.breastsize[1] = 3>>
<<else>>
<<set $player.body.breastsize[1] += 1>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<</if>>
<</switch>>
<<switch $scene.ditzy_count>>
<<case 0>>
<<reduceExperience 'smart' 2>>
<<case 1>>
<<reduceExperience 'smart' 1>>
<<case 2>>
<<reduceExperience 'smart' .5>>
<</switch>>
<<switch $scene.slave_count>>
<<case 0>>
<<applyExperience 'submission' 18 'terrible' $ALONE>>
<<case 1>>
<<applyExperience 'submission' 15 'very' $ALONE>>
<<case 2>>
<<applyExperience 'submission' 10 'normal' $ALONE>>
<</switch>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<switch $scene.breast_count>>
<<case 0>>
You gasp as your chest <<if $scene.breastGrow>>swells<<else>>tingles<</if>>, wondering exactly how many "doses" of the <<=setup.getItemName("drug_breast")>> you just consumed<<if !$scene.hairgrow && !$scene.haircolor>> as hair cascades down from your head long and blonde<</if>>.
<<case 1 2>>
You gasp as your chest <<if $scene.breastGrow>>slightly swells<<else>>swells<</if>>, curious as to what might have happened if you hadn't used a portion of the mixture during the test.
<<case 3>>
You're a bit disappointed to have left just a few drops of <<=setup.getItemName("drug_breast")>>, feeling nothing but the very slightest tingle in your breasts.
<<default>>
ERROR: unexpected scene.breast_count <<=$scene.breast_count>>
<</switch>>
<<switch $scene.ditzy_count>>
<<case 0>>
Your thoughts dissolve with every gulp<<if setup.getTotalValue("smart") > 10>>your final one a regret that you didn't use up any of <<=setup.getItemName("drug_ditzy")>> during the test<</if>>.
<<case 1 2>>
A cloud passes over your mind<<if setup.getTotalValue("smart") > 10>> as you find yourself grateful for using up at least part of <<=setup.getItemName("drug_ditzy")>> during the test<</if>>.
<<case 3>>
Thought it may have resulted in failing part of the test you are glad that there are but a few drops remaining of <<=setup.getItemName("drug_ditzy")>>, feeling your intellect remaining safe even as you are forced to drink.
<<default>>
ERROR: unexpected scene.ditzy_count <<=$scene.ditzy_count>>
<</switch>>
<<switch $scene.slave_count>>
<<case 0>>
Your body goes limp as the full power of so much <<=setup.getItemName('drug_slave')>> flows into you. You feel desperate for a command, ANY command, yearning for an opportunity to show off your obedience.
<<case 1 2>>
You shudder with submissive need, maybe you should have "used up" more of the drug during the test because right now the only thing keeping you from obeying just about any command is the fact that you are so securely strapped to your chair.
<<case 3>>
It may have cost you in terms of score, but you have the last laugh as the few remaining drops of <<=setup.getItemName('drug_slave')>> are hardly liable to have any effect on you.
<<default>>
ERROR: unexpected scene.slave_count <<=$scene.slave_count>>
<</switch>>
<<He npc_work_doctor>> waits until you have drunk every last drop of drugs before hurriedly removing the harness and jamming <<his npc_work_doctor>> raging cock into your mouth.<br>
<br>
[<<moveTo "event_work_doctor_training_10" "Take it." 120>>]
</div>/*#
#desc: throat-fucked after quiz by npc_work_doctor
#status: FINISHED 0.7.4.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_work_doctor.penis_size_boosted 'very' $SEEN_STRANGER>>
<<set $npc_work_doctor.flags.nurse_available = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<He npc_work_doctor>> does not use your throat gently, especially after <<he npc_work_doctor>> chugs the rest of the <<=setup.getItemName("drug_dick")>> before tossing the beaker over <<his npc_work_doctor>> shoulder to shatter somewhere across the lab. A cruel light in <<his npc_work_doctor>> eyes, <<he npc_work_doctor>> slams past your lips
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
though even that is not enough to give your nigh-bottomless throat pause.
<<else>>
forcing even your well-trained throat to struggle to keep up.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
bulging your throat as never before as you struggle to even sneak in a breath.
<<else>>
stretching you to your limit and beyond as your throat swells at each thrust.
<</if>>
<</if>>
As usual, <<he npc_work_doctor>> does not last long, dumping <<his npc_work_doctor>> load so deep inside you that you don't even get a taste of <<his npc_work_doctor>> cum. Pulling free leaves your head dangling loose, drool trickling down your chin as you try to catch your breath.<br>
<br>
"@@.npc_work_doctor;Remember, drop by after work when you're ready to help out. Until then well... I hope you enjoyed your lesson as much as I enjoyed giving it to you.@@"<br>
<br>
You nod as <<he npc_work_doctor>> sets about removing your restraints, literally lifting you off the dildo that has been stuffing your ass for more than an hour <<if $scene.plug>>before shoving your plug back in place and<<else>>before<</if>> giving your ass a hard slap.<br>
<br>
As you glance back, you're shocked at how small <<his npc_work_doctor>> flaccid penis is — before <<he npc_work_doctor>>'d always been quick to hide it back in <<his npc_work_doctor>> pants, but with the torn fabric <<he npc_work_doctor>> remains exposed and quite diminutive.<<if $scene.ditzy_count > 1>> Immediately you are put to mind of <<=setup.getItemName("drug_dick")>>... does <<he npc_work_doctor>> owe everything to "chemical assistance?" <</if>><br>
<br>
<<switch $scene.ditzy_count + $scene.slave_count>>
<<case 6>>
You're clear headed thanks to having "used up" the more detrimental compounds during your test and you hurry on your way before <<he npc_work_doctor>> decides to force anything else on you. Tired and a bit of a mess, you head home.
<<case 5>>
You're almost completely clear headed thanks to having "used up" the more detrimental compounds during your test and you hurry on your way before <<he npc_work_doctor>> decides to force anything else onto you. Tired and a bit of a mess, you hurry home.
<<case 3 4>>
You're still feeling some of the consequences of your after-test cocktail and you hurry on your way before <<he npc_work_doctor>> decides to force anything else onto you. Tired and a bit of a mess, you head home.
<<case 1 2>>
Still under the effects of the drugs <<he npc_work_doctor>> forced upon you, you hurry home before some random person on the street gives you a command you may not be able to ignore.
<<case 0>>
Still feeling mindlessly obedient you slavishly obey <<his npc_work_doctor>> dismissal, managing to collect a modicum of your thoughts on the elevator ride down, enough to hurry home before some random person on the street gives you a command you will be helpless, but to obey.
<<default>>
ERROR: unexpected scene.ditzy_count + scene.slave_count <<=$scene.ditzy_count + $scene.slave_count>>
<</switch>>
<br><br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: mux for choosing scene for first time anal plugging based on location
#status: FINISHED 0.4.0.0
#*/
<<if $player.sec_style.sex.butt_plug>>
<<initRoom>>
<<moveTo $locationbeforeuseage>>
<<else>>
<<if $locationbeforeuseage == "room_mall_lingerie_shop_changing_booth">>
<<set _dest = "event_beginner_plug_changing_room">>
<<elseif setup.inPassageTag($locationbeforeuseage,"home")>>
<<set _dest = "event_beginner_plug_flat">>
<<elseif $locationbeforeuseage == "event_psychiatrist_1stsession_2_changingroom">>
<<set _dest = "event_beginner_plug_psychiatrist">>
<<elseif setup.inPassageTag($locationbeforeuseage,"gloryhole")>>
<<set _dest = "event_beginner_plug_gloryhole">>
<<else>>
<<set _plug = setup.getItemFromType("plug")>>
<<removeItem _plug true>>
<<initRoom>>
<<moveTo "event_beginner_plug_generic">>
<</if>>
<<if _dest>>
<<if !$player.flags.masturbation.plug>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_10'
1
'event_psychiatrist_session_plug_1'
false
>>
<<set $player.flags.masturbation.plug = true>>
<</if>>
<<initRoom>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<<set $scene.orgLocation = $locationbeforeuseage>>
<<set $scene.image = "">>
<<if ($player.hair.style == "unkempt") || ($player.hair.style == "combed")>>
<<set $scene.image = "1">>
<<else>>
<<set $scene.image = "0">>
<</if>>
<<if $player.body.breastsize[0]<2>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<if !setup.isItemTypeEquipped('cage')>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<removeEverythingButUnderwear>>
<<if (setup.analyzeWornTags(['female','male'])!="female") || (setup.checkNaked())>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<set $scene.image = "./images/scenes/plug/plug_scene_1_"+$scene.image+".png">>
<<initRoom>>
<<moveTo _dest>>
<</if>>
<</if>>/*#
#desc: first time anal plugging in mall changing room
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 25>>
<<applyExperience 'humiliation' 5 'normal' $INCOGNITO>>
<<setThreshold 'anal' 'plugs' 'beginner_plug'>>
<<if !$player.sec_style.sex.butt_plug>>
<<set $player.sec_style.sex.butt_plug = "enthusiast">>
<<include "addTypingEvent">>
<</if>>
<</if>>
/% inherit location from previous passage %/
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.plugID == "analplug_beginner">>
Nervously you look at the <<=$scene.plugObj.name>> that you found in the changing room. It really isn't that big in your hands, not exactly intimidating it's actually almost... cute? Still, you're a bit apprehensive about the idea of it going in your butt.<br>
<<else>>
Recalling the OTHER plug that you found in a changing room you look at the <<=$scene.plugObj.name>> that you are now contemplating sticking into your rear.<br>
<</if>>
<br>
Though the plug is pretty slick you figure you should use something for lubricant; not having anything else handy you just spit on the plug and smear it around before taking a deep breath and bringing it to your exposed rear.<br>
<br>
Trying to relax you push the plug into your bum,
<<if $npc_psychiatrist.hypnosis >= 2>>
though you found a plug in your ass after one of your "hypnosis" sessions you've never put one in yourself... at least, that you can recall.<br>
<br>
<<printThoughtGlitch "My ass is better filled...">><br>
<<elseif $player.flags.fuckedbydildo>>
though you have felt a dildo plunging into your ass you've never been plugged, you wonder how different it will feel.<br>
<<else>>
you've never done anything like this before, and you're a bit nervous, yet unable to restrain yourself.<br>
<</if>>
<br>
<<showImage $scene.image>>
<br>
<<if setup.getTotalValue("anal") >= setup.getEffectivePlugSize()>>
Your ass is more than accepting of the plug, spreading easily to hungrily suck it into your body.<br>
<br>
You let out a gasp only to suddenly hear voices just outside the changing room.<br>
<<else>>
Your ass is resisting the plug, holding tight even as you squeeze your eyes in concentration, taking quick, short breaths pushing the slippering head of the plug against it. You are about to give up when you hear voices outside of the changing room.<br>
<br>
Though you can't make out the words they are definitely female, the shock making you jump and the plug thrusting into your rear with a pop.<br>
<</if>>
<br>
You hold your breath, trying not to look at your reflection in the changing room mirror. Bent forward, with the <<if $scene.plugID == "analplug_beginner">>jeweled pink-heart <<elseif $scene.plugID == "analplug_medium_ems">>wired <</if>>base of the plug visible between your cheeks makes for a very lewd sight.<br>
<br>
The voices on the other side of the door stop and you let out a sigh of relief only for there to be a knock on the door.<br>
<br>
"@@.generic_female1;Hey, is someone in there?@@"<br>
<br>
Your life, at present, is comprised of two facts. First, that you are incredibly embarrassed at your compromised position with only a flimsy partition between you and inquisitive strangers. Second, that you are somehow incredibly aroused.<br>
<br>
You try to talk your way out of this peculiar situation, the best you can, by stating that you're in fact already wrapping up. But your voice sounds high pitched, almost squeaky. Wincing in further humiliation you cast your gaze around to look for the rest of your outfit.<br>
<br>
"@@.generic_female1;Oh, okay...@@"<br>
<br>
Thinking you're finally safe, you try to catch a breath.<br>
<br>
"@@.generic_female1;Are you alright? Your voice sounds strained.@@" A second female voice adds.<br>
<br>
<<printThought "Please <<getWordGod>>, could I just die of shame now?">><br>
<br>
Your heart racing you mumble a response and they finally move on, your body tense until their footsteps fade out of earshot as you resolve to get dressed and get out of here... fast.<br>
<br>
[<<moveTo $locationbeforeuseage "Continue." 30 "<<set $player.llocation=$locationbeforeusage>><<set $player.cutscene.lockinventory=false>>">>]
</div>/*#
#desc: first time anal plugging in flat
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.butt_plug>>
<<set $player.sec_style.sex.butt_plug = "voluntary">>
<<include "addTypingEvent">>
<</if>>
<<changeHorny 25>>
<<setThreshold 'anal' 'plugs' 'beginner_plug'>>
<<switch $scene.orgLocation>>
<<case "room_kitchen" "room_computer" "room_livingroom" "room_bathroom" "room_foyer" "room_masturbate" "room_play_games">>
<<set $player.location = "Living Room">>
<<set $scene.roomBackground = "./images/locations/flat_livingroom_01.png">>
<<set $scene.chosenLocation = "room_livingroom">>
<<case "room_bedroom" "room_bedroom_wardrobe_1">>
<<set $player.location = "Bed Room">>
<<set $scene.roomBackground = setup.getBedroomImage()>>
<<set $scene.chosenLocation = "room_bedroom">>
<<default>>
ERROR! unexpected room: <<=$scene.orgLocation>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.roomBackground>>
<div id="invframe" class="scrolltext">
<<switch $scene.orgLocation>>
<<case "room_kitchen" "room_computer" "room_bathroom" "room_foyer">>
As you contemplate the plug you decide if you're going to really do this, you might as well do it in the living room.
<<case "room_bedroom_wardrobe_1">>
As you contemplate the plug you decide if you're going to really do this, you might as well do it in bedroom, not in the cramped space of your wardrobe.
<</switch>>
<<if $scene.chosenLocation == "room_livingroom">>
Sitting in front of your computer, you lubricate the <<=$scene.plugObj.name>> with a bit of spit and kneel down in front of the keyboard to expose your ass.<br>
<br>
Taking a deep breath, you try to relax and push the blunt head against your rear hole.
<<if $npc_psychiatrist.hypnosis >= 2>>
Though you have been plugged before this is the first time doing it yourself, at least that you can remember.<br>
<br>
<<printThought "Is this really what my life has come to?">><br>
<br>
<<printThoughtGlitch "My ass is better filled...">><br>
<br>
Your answer comes as the plug pops past your sphincter and your ass eagerly sucks it into place. You moan with arousal, at this novel, full feeling. You shudder. You think you like this familiar feeling.
<<elseif $player.flags.fuckedbydildo>>
You may have taken a cock-like dildo in your rear passage, but the feeling of the plug is subtly different. Barely moving it keeps your insides occupied even as your sphincter is able to tighten around the base, a very different combination of sensations from that of being "fucked."
<<else>>
You have never in your life felt something like this. The combination of the internal fullness and the inability to fully "close" your ass is... strange.
<</if>>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") > setup.getEffectivePlugSize()>>
Not the largest thing you've had "up there" the plug is pleasantly comfortable... though it also has you hungering for more...<br>
<<else>>
Your ass feels stuffed and spread, like you have a whole billiard ball in there instead of the modest size the plug appeared in your hand.<br>
<</if>>
<br>
In a lusty daze, you quickly browse for porn online, not even reading the title as you click on the first video that catches your interest.<br>
<br>
[<<link "Masturbate with the plug!">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.1>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 20)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<set $player.cutscene.lockinventory=false>>
<<goto room_masturbate_plug>>
<</link>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 20 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $scene.chosenLocation == "room_bedroom">>
Holding the <<=$scene.plugObj.name>> in your hand you try to find a comfortable position to insert it for the first time. Finally you settle for bending over the edge of the bed, your legs dangling over the side.<br>
<br>
It is only when the blunt head of the plug is pressing against your rear that you realise how truly exposed you are in this position. Perhaps spurred forward by such thoughts your ass suddenly relaxes.
<<if $npc_psychiatrist.hypnosis >= 2>>
It slides into place with ease; though not the first time you have had something "up there" it is the first you have plugged yourself... that you can remember, you still don't know exactly what happened in your VR therapy session that led to you going home with a wired plug lodged in your bum.<br>
<br>
<<printThoughtGlitch "My ass is better filled...">><br>
<<elseif $player.flags.fuckedbydildo>>
You may have felt something phallic "up there" previously, but the plug is quite different, your body able to adjust and mold around its shape versus the constant shifting of the dildo thrusting in and out of your hole.
<<else>>
The feeling of something "up there" is... strange, but... good? It is even weirder when you take your hand away and it remains in place, filling your pert bum.
<</if>>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") >= setup.getEffectivePlugSize()>>
Still sprawled over the bed you take several breaths. Now that it is nestled comfortably within you the plug seems hardly as bad as you feared.<br>
<br>
You hump the edge of the bed in arousal for about a minute, enjoying how the plug subtly shifts inside you before pushing yourself back to your feet to do something else.
<<else>>
Still sprawled over the bed it takes you several minutes to adjust to this new "full" sensation. By the time you finally do you are unconsciously humping the edge of the bed. Blushing you hurry back to your feet.
<</if>>
<br><br>
[<<link "Masturbate with the plug!">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.1>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 20)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<set $player.cutscene.lockinventory=false>>
<<goto room_masturbate_plug>>
<</link>>]<br>
[<<moveTo "room_bedroom" "Return to the bed room." 20 "<<set $player.cutscene.lockinventory=false>>">>]
<</if>>
</div>/*#
#desc: first time anal plugging at psychiatrist
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.butt_plug>>
<<set $player.sec_style.sex.butt_plug = "voluntary">>
<<include "addTypingEvent">>
<</if>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.plugObj = setup.getItemObjFromType('plug')>>
<<setThreshold 'anal' 'plugs' 'beginner_plug'>>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" >>
<div id="invframe" class="scrolltext">
You aren't sure what comes over you but, in the privacy of the changing room of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office you decide to try plugging your ass for the first time.<br>
<br>
<<if $npc_psychiatrist.hypnosis >= 2>>
Being in the psychiatrists office reminds you of your VR therapy session, you still do not know how the metal plug got into your ass, but here you are "playing things back" <<if setup.isItemEquipped("analplug_beginner")>>just with a smaller plug <<elseif setup.isItemEquipped("analplug_medium_ems")>>with the very same plug <<else>>with an even larger plug<</if>>.<br>
<br>
<<printThoughtGlitch "My ass is better filled...">><br>
<<elseif $player.flags.fuckedbydildo>>
You have never been plugged, but the memory of fucking yourself with a dildo under your manager's orders flashes through your mind as the blunt tip of the plug presses against your hole.<br>
<<else>>
You have never had anything like this "up there," maybe there is something to all of the stuff your psychiatrist says about you trying new things and you can blame the blunt tip pressed against your rear hole on the proximity of her aura.<br>
<</if>>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") >= setup.getEffectivePlugSize()>>
Your well-exercised ass parts easily for the plug, though you let out a slight moan as it seats itself within you.<br>
<<else>>
Your ass stretches to accommodate its new intruder, but finally the pressure is too much and it zips into place, the base of the plug nestling up against your rear hole as its internal portion has you moaning with fullness.<br>
<</if>>
<br>
<<if $locationbeforeuseage == 'event_psychiatrist_1stsession_2_changingroom'>>
You hear someone clearing their voice and look up to find <<=setup.getNpcName('npc_psychiatrist', 'formal')>> in the doorway looking down at you.<br>
<br>
"@@.npc_psychiatrist;Very interesting — today should be a productive session indeed.@@"<br>
<br>
You blush hard, but by the time you scrape up the courage to look back up at her she has disappeared, leaving you to finish changing.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Finish Changing.' 30>>]
<<else>>
You hear someone clearing their voice and look up to find <<=setup.getNpcName('npc_psychiatrist', 'formal')>> in the doorway looking down at you.<br>
<br>
"@@.npc_psychiatrist;Cute, but too bad. Next time you should plug yourself BEFORE we start our session, I am sure it will lead to much more... interesting discussions.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_changingroom_leave' 'Finish Changing.' 30>>]
<</if>>
</div>/*#
#desc: first time anal plugging at gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.butt_plug>>
<<set $player.sec_style.sex.butt_plug = "voluntary">>
<<include "addTypingEvent">>
<</if>>
<<set $scene.plugObj = setup.getItemObjFromType('plug')>>
<<setThreshold 'anal' 'plugs' 'beginner_plug'>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
Sitting in the glory hole bathroom you pull out your <<=$scene.plugObj.name>> and get ready to shove it into your slutty ass. Your eyes on the currently open glory hole itself you think how it will feel to be filled from BOTH ends as you press the blunt tip of the plug against your eager ass.<br>
<br>
<<if $npc_psychiatrist.hypnosis >= 2>>
Recalling the last time you were plugged — coming out of one of your VR therapy sessions you shudder and the plug slips into position. Thinking about <<=setup.getNpcName('npc_psychiatrist', 'formal')>> has you wondering what she would say about what you just did, squatting in a dirty bathroom, shoving a plug into your ass while you wait for another cock to serve.<br>
<br>
<<printThoughtGlitch "My ass is better filled...">><br>
<<elseif $player.flags.fuckedbydildo>>
You may have felt something cock-shaped in your ass, but the plug is different, accelerating into position once you are over the widest portion with your ass clamping down around it in contrast to the constantly varying sensation caused by the dildo thrusting in and out of your rear.<br>
<<else>>
You have never had something like this "up there," but, then again, it wasn't that long ago that you would have never servicing strange cocks. Whatever is happening to you at the moment... you are now plugged, and you find your mouth watering in anticipation of getting a little something, something for your face-hole to match.<br>
<</if>>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") >= setup.getEffectivePlugSize()>>
The plug slots easily into your ass, and you give a happy little bounce as you adjust to its pleasant presence.<br>
<<else>>
The plug is stretching you intensely, but you know that if you stick around you'll have something popping in to distract you soon enough.<br>
<</if>>
<br>
[<<moveTo "room_usual_place_toilet" "Sit and recover." 60>>]<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_inside" "Leave the Toilet!" 30>>]
<<else>>
[@@.link_locked;You're not going to leave the toilet dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: first time anal plugging at "other" location
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
You start to consider sticking a plug in your ass for the first time, but quickly come to your senses.<br>
<br>
<<printThought "No! This is not the place to do something like that, why would I even consider such a thing?">><br>
<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div><<if $fetish.bestiality_hard && $npc_shoestore_manager.flags.testimonials.casual && $npc_shoestore_manager.flags.testimonials['overly feminized'] && $npc_shoestore_manager.flags.testimonials['brainless bimbo'] && $npc_shoestore_manager.flags.testimonials.submissive && $npc_shoestore_manager.flags.testimonials.humiliating && $npc_shoestore_manager.flags.shot_ballet_heels_bdsm && $npc_shoestore_manager.flags.shot_ballet_heels_final && $npc_work_doctor.flags.aphrodisiac.stage >= 12 && setup.hasThreshold('oral', 'extreme_oral', 'oral_final') && setup.hasThreshold('anal', 'secretary_anal', 'double_fist') && State.hasPlayed("event_sex_club_dressage_3") && !($events.hasOwnProperty("bestiality_final_invite") || State.hasPlayed("event_bestiality_final_invite"))>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 12, 0, false)>>
<<addEvent "bestiality_final_invite" _nextDate>>
<</if>>/*#
#desc: called for bestiality final invite
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_shoestore_manager", "first")>>.<br>
<br>
"@@.npc_shoestore_manager;Hey, <<=$player.first_name>>... so, I've got an idea for another photoshoot opportunity. It'll be a little bit different from what you did before, but I think right up your alley. Drop by the shop sometime if you're interested.@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() 'Put your phone away and get back to what you were doing.' $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: ask about bestiality offer
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_shoestore_manager", "first")>> about the offer she made over the phone. She smiles and signals her assistant to cover the till while she takes you into the back room.<br>
<br>
"@@.npc_shoestore_manager;So, I was poking around online the other night when I ran across a new video with a very familiar star!@@"<br>
<br>
<<if $player.flags.streaming.stage > 0 || $player.flags.porn.pornname != "">>
<<printThought "Huh, I wonder what video she saw...">>
<<else>>
You're a bit curious what she's talking about as she takes you to a computer and brings it up.
<</if>>
"@@.npc_shoestore_manager;I must say, you look really impressive, I had no idea when you first walked into my store that I was dealing with such a kinky freak!@@"<br>
<br>
Your jaw drops as you watch a recording of you... fucking a donkey! Certainly you remember the scene but how did <<=setup.getNpcName("npc_shoestore_manager", "first")>> find it? You clench your jaw as you immediately realise the answer — <<=setup.getNpcName("npc_work_doctor", "formal")>> is selling your footage on the side, without ever even asking permission!<br>
<br>
<<printThought "That <<if $npc_work_doctor.fem>>bitch<<else>>bastard<</if>>...">><br>
<br>
"@@.npc_shoestore_manager;So, anyway, I figured if you were into this sort of thing — and I already know how wonderful you are on camera, I thought you might be interested in a little photoshoot a couple of my friends were planning on doing?@@"<br>
<br>
[<<moveTo "event_bestiality_final_volunteer_2" 'Say sure!' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_bestiality_final_volunteer_2" "You don't want to do more of that sort of film." 600 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: ask about bestiality offer
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_shoestore_manager", "first")>> about her animalistic film plan and she grins.
<<if $currentTasks.hasOwnProperty('bestiality_final_task') && $currentTasks.bestiality_final_task.condition == "Failed">>
"@@.npc_shoestore_manager;You actually going to show up this time?@@" She laughs. "@@.npc_shoestore_manager;Ah, don't bother with excuses, I mean, it's not like we're going to find someone else with your skills, so whatever prima-donna schedule shit you wanna pull, well... we'll deal.@@"
<<else>>
"@@.npc_shoestore_manager;Come on, let's talk about this in the back room.@@"
<</if>>
<br><br>
A moment later and you're following her into the back where she's brought up the video of you enthusiastically fucking a donkey that <<=setup.getNpcName("npc_work_doctor", "formal")>> leaked. "@@.npc_shoestore_manager;Goddamn you look beautiful like that, so... you ready for a shoot even more intense?@@"<br>
<br>
[<<moveTo "event_bestiality_final_volunteer_2" 'Say sure!' 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_bestiality_final_volunteer_2" "You don't want to do more of that sort of film." 600 "<<set $scene.accept = false>>">>]
</div>/*#
#desc: ask about bestiality offer
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 0, 7, 0, false)>>
<<if $now.getUTCDay() == 6>>
<<set $scene.day = "Tomorrow">>
<<elseif $now.getUTCDay() == 0>>
<<set $scene.day = "next Sunday">>
<<elseif setup.eventOverlap(_tmpDate, 6)>>
<<set $scene.day = "next Sunday">>
<<set _tmpDate = setup.setNextDate(_tmpDate, 7, 7, 0, false)>>
<<else>>
<<set $scene.day = "Sunday">>
<</if>>
<<addTaskById 'bestiality_final_task' _tmpDate>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_shoestore_manager", "first")>> grins. "@@.npc_shoestore_manager;Perfect! I knew you would be just the girl for the job — I mean anyone who will fuck a pig! And then seeing you take that horse dildo... yes, you are DEFINITELY perfectly skilled for this film.@@"<br>
<br>
<<printThought 'Did <<=setup.getNpcName("npc_work_doctor", "formal")>> sell videos of everything I did? That <<if $npc_work_doctor.fem>>bitch<<else>>bastard<</if>>...'>><br>
<br>
"@@.npc_shoestore_manager;I'll make all the arrangements for <<=$scene.day>> morning — we'll leave from the mall so just meet us here at, say, <<if $options.militaryTime>>07:00<<else>>seven am<</if>>? I'll take care of wardrobe and such, you just need to bring yourself — and be ready to gape!@@"<br>
<br>
She gives a final glance back towards the video
<<else>>
You tell <<=setup.getNpcName("npc_shoestore_manager", "first")>> that you aren't interested in staring in another of... that sort of film.<br>
<br>
"@@.npc_shoestore_manager;Damn! You looked so qualified, like... the enthusiasm you're showing in this video can't be faked, and then the other one of you taking that ginormous horse dildo? You are PERFECT for what we had planned... well, if you ever change your mind, let me know!@@"<br>
<br>
You nod and say you'll think about it. She gives a final glance back
<</if>>
before turning off the video and leading you out of the storage room.<br>
<br>
[<<moveTo "room_mall_shoe_store" 'Back to the shop.' 60>>]
</div>/*#
#desc: called for bestiality final invite
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_shoestore_manager", "first")>>.<br>
<br>
<<printThought "Shit, we were going to do that video shoot today...">><br>
<br>
"@@.npc_shoestore_manager;Hey, <<=$player.first_name>>... so I guess you aren't able to make it today... no matter, we'll reschedule for some other time. Just hit me up at the shop when you think you've got a free Sunday morning.@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() 'Put your phone away and get back to what you were doing.' $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: picked up for bestiality final
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Van">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vehicle.png" setup.charImage("npc_shoestore_manager") setup.charImage("npc_shoestore_assistant")>>
<div id="invframe" class="scrolltext">
Right on time a van rolls up with <<=setup.getNpcName("npc_shoestore_assistant", "first")>> driving.<br>
<br>
"@@.npc_shoestore_manager;Hey, <<=$player.first_name>>! Hop on in — we've got us a little bit of a drive to the shoot location, but the weather is beautiful and things should go great.@@"<br>
<br>
You slide into the back of the van which is full of video equipment and what looks like half of a cybernetic horse — what you quickly realise is <<=ps(setup.getNpcName("npc_shoestore_assistant", "first"))>> "lower" harness.<br>
<br>
<<=setup.getNpcName("npc_shoestore_assistant", "first")>> turns up the sound system with classic metal and you're on the road.<br>
<br>
[<<moveTo "event_bestiality_final_2" 'Settle in for the drive.' 3600>>]
</div>/*#
#desc: bestiality final - introductions
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<addItemSet 'cowgirl_outfit'>>
<<wearItemSet 'cowgirl_outfit'>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_shoestore_manager") setup.charImage("npc_shoestore_assistant","npc_shoestore_centaur") "./images/characters/npc_minotaur_face.png">>
<div id="invframe" class="scrolltext">
You doze off a bit on the way to your destination and wake to find <<=setup.getNpcName("npc_shoestore_manager", "first")>> and <<=setup.getNpcName("npc_shoestore_assistant", "first")>> already almost finished unloading — <<=setup.getNpcName("npc_shoestore_assistant", "first")>> already transformed into cybernetic centaur mode as she swings around large, heavy boxes with ease.<br>
<br>
"@@.npc_shoestore_manager;Hey look, sleeping beauty has arisen!@@" <<=setup.getNpcName("npc_shoestore_manager", "first")>> states in greeting from her saddled seat atop her wife. She hops down and leads you to a box to get changed — unveiling a pair of steep cowboy boots and a slutty cowgirl costume.<br>
<br>
As you get changed <<=setup.getNpcName("npc_shoestore_manager", "first")>> explains the plan and a third person appears — a large, muscle-bound woman made even larger by wearing a cybernetic harness that gives her the appearance of a minotaur — complete with large bovine cock swinging between her legs and the matching bestial helmet slung under one arm.<br>
<br>
"@@.npc_shoestore_manager;<<=$player.first_name>>, meet <<=setup.getNpcName("generic_female1", "custom", "Phaedra")>>, and the reverse. So the plan today is your standard "cowgirl gets fucked by her centaur steed... and then plowed by one of her minotaur herd." You know, that old classic. I'm going for sensuous, raw, natural style, so you three just go how the moment takes you — I know <<=$player.first_name>> is up to the task so I'm hoping for a real exciting shoot.@@"<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Phaedra")>> grins. "@@.generic_female1;If you say so. If I hadn't seen their previous videos I wouldn't have believed it.@@" She smiles at you and nods. "@@.generic_female1;So, you ready for the fuck of which fantasies are made? — I know <<=setup.getNpcName("npc_shoestore_assistant", "first")>> is eager to test out her new biogenic spear.@@"<br>
<br>
You glance over to see that <<=setup.getNpcName("npc_shoestore_assistant", "first")>> is now sporting a larger, VERY impressive horse cock dangling below her cybernetic frame.<br>
<br>
<<if $scene.removePlug>>
You take a deep breath and slide the plug out of your ass in final preparation for the shoot. You'll be having something far more exciting in its place soon enough...<br>
<br>
<</if>>
[<<moveTo "event_bestiality_final_3" 'Saddle up for one fun day.' 1800>>]<br>
[<<moveTo "event_bestiality_final_abort" 'Actually... this is more than you signed up for.' 3600>>]
</div>/*#
#desc: abort bestiality final
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'cowgirl_outfit'>>
<<deleteItemSet 'cowgirl_outfit'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Van">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vehicle.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
You nervously explain that, actually... this is more than you thought you were signing up for. There's a moment of awkward silence before <<=setup.getNpcName("npc_shoestore_manager", "first")>> smooths things over. "@@.npc_shoestore_manager;Oh on! I am SO sorry, I guess, with your reputation and all, well... I just got too excited about things. Let me just take you home... girls, you'll be fine on your own while I jot back to town?@@"<br>
<br>
<<=setup.getNpcName("npc_shoestore_assistant", "first")>> and <<=setup.getNpcName("generic_female1", "custom", "Phaedra")>> exchange a glance and a grin.<br>
<br>
"@@.generic_female1;The two of us will be just fine... you get the poor city slicker back to town, we'll see you in the afternoon.@@"<br>
<br>
You sheepishly change back into your normal clothes and hop in for the ride back to the city. Even though <<=setup.getNpcName("npc_shoestore_manager", "first")>> remains friendly thought the drive, you feel a bit bad for somewhat derailing her day's plans.<br>
<br>
<<=setup.getNpcName("npc_shoestore_manager", "first")>> drops you off in front of your flat before speeding back off to return to the countryside.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 300>>]
</div>/*#
#desc: bestiality final - scene 1 - ride
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 100>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_shoestore_assistant","npc_shoestore_centaur")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_shoestore_manager", "first")>> finishes getting her camera equipment set up and <<=setup.getNpcName("npc_shoestore_assistant", "first")>> helps you up onto her back for the "intro" scene of you riding across the farm.<br>
<br>
<<=setup.getNpcName("npc_shoestore_assistant", "first")>> rides strong and fast in her cyber-centaur form, chewing through distance as drone cameras circle above. She breaks into a gallop and you gasp, holding on tight as the bouncing pace causes you to think of the large cock below her powerful torso... that will certainly be inside of you before long...<br>
<br>
<<=setup.getNpcName("npc_shoestore_assistant", "first")>> leaps over a final fence in a graceful arc that you are sure will make a wonderful still-frame before coming to a stop in the corner of a field. Just off-camera you can see <<=setup.getNpcName("generic_female1", "custom", "Phaedra")>> waiting for her cue. For now, however, it is time for you to "test out" <<=ps(setup.getNpcName("npc_shoestore_assistant", "first"))>> massive equine lady spear.<br>
<br>
[<<moveTo "event_bestiality_final_4" 'Centaur time...' 1800>>]
</div>/*#
#desc: bestiality final - scene 2 - centaur fuck
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 16 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_shoestore_assistant","npc_shoestore_centaur")>>
<div id="invframe" class="scrolltext">
You dismount <<=setup.getNpcName("npc_shoestore_assistant", "first")>> and take a step forward. Your heart beats with excitement as you follow the "script" and bend over to pretend to work on a fence, making sure your chaps are properly framing your wiggling butt as you angle towards the camera and watch <<=ps(setup.getNpcName("npc_shoestore_assistant", "first"))>> shadow approach...<br>
<br>
You've been with a horse before, but this is different — <<=setup.getNpcName("npc_shoestore_assistant", "first")>> strong arms allow her to push you down as she moves forward, one cybernetic hoof planted on the fence to either side of you as her massive, hard cock spears into you. You moan, and it is no act, her biogenic cock as thick and hot and hard as any horse-cock you've ever felt, but guided with a human mind, plunging deep and moving in reaction to your gasps and moans. You hang momentarily, shifting as she spins you around like a nut rotating on a bolt before rising up, your back against a tree as you are literally suspended on her big, glorious <<getWordPenis false>>...<br>
<br>
You hug her steel and flesh form as she <<if $fetish.cum>>cums, slightly surprised as she gushes cum deep inside<<else>>climaxes, your entire body shaking with the force of it<</if>>. She steps back, letting you slump to the ground. You pant as she she trots away and you look up... to see a minotaur looming over you...<br>
<br>
[<<moveTo "event_bestiality_final_5" 'Was that cock that big before...?' 1800>>]
</div>/*#
#desc: bestiality final - scene 3 - minotaur fuck
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 19 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" "./images/characters/npc_minotaur_face.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_shoestore_assistant", "first")>> was powerful, but controlled. <<=setup.getNpcName("generic_female1", "custom", "Phaedra")>>, on the other hand is more like a literal frenzied beast, lifting you up<<if $fetish.cum>> and using the cum leaking out of your ass as lube as she all but slams<<else>>to all but slam<</if>> you down onto her throbbing erection. Massive hands literally encircle your slender waist as your body becomes a human cock-sleeve for the massive bovine broadsword, your arms flailing as your eyes roll back. With every thrust you feel your stomach bulge, unimaginable pleasure pumped through your entire body.<br>
<br>
Your entire body shudders in analgasm, but it doesn't stop, the minotaur breathing down hot into your face as it continues to pound you, holding you almost horizontal in front of it as it pulls you away and then slams your hips together, your body taking every centimetre of the arm-sized phallus.<br>
<br>
Moaning your head falls back... to give you a view of <<=setup.getNpcName("npc_shoestore_assistant", "first")>> galloping back towards you, her cock like a flesh missile pointed between her fore-legs towards your waiting, gaping lips...<br>
<br>
[<<moveTo "event_bestiality_final_6" 'Double the fantasy...' 1800>>]
</div>/*#
#desc: bestiality final - scene 4 - double fuck
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'oral' 20 'unbelievable' $SEEN_FRIEND>>
<<setThreshold "bestiality" "other_bestiality" "beast_final">>
<<applyExperience 'bestiality' 20 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_shoestore_assistant","npc_shoestore_centaur") "./images/characters/npc_minotaur_face_dressed.png">>
<div id="invframe" class="scrolltext">
For a moment you think <<=setup.getNpcName("npc_shoestore_assistant", "first")>> is coming in too fast... not that there is much you can do about it from your suspended-on-cow-cock position, but she pulls up at the last second, her sapphic sausage sliding between your lips for the full spit-roast as she rears up, minotaur and centaur making out above as they use your body from both ends.<br>
<br>
You moan, you cum, you feel your belly swell from injections from both ends... you embrace the feeling of being a receptacle for bestial cock, filled, fucked... perfectly stuffed...<br>
<br>
The two she-beasts seem to be working towards a crescendo, cocks slamming in and out of you as your body bounces back and forth... and then they cum in cybernetically perfect unison, a double <<if $fetish.cum>>flood of creamy goodness that fills you and then fountains out as you are finally allowed to slip free to the ground, even more <<getWordCum>> sprayed over you like a celebratory shower before<<else>>orgasm that turns triple as your body rises to the pinnacle of pleasure, shuddering, gasping and clenching at either end until they finish and lower you to the ground,<</if>> the two mythical beasts walk away hand in hand...<br>
<br>
[<<moveTo "event_bestiality_final_7" 'You pass out with a smile on your face.' 1800>>]
</div>/*#
#desc: bestiality final - finish/pack
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_shoestore_manager") setup.charImage("npc_shoestore_assistant","npc_shoestore_centaur") "./images/characters/npc_minotaur_face.png">>
<div id="invframe" class="scrolltext">
You wake up a few moments later to <<=setup.getNpcName("npc_shoestore_manager", "first")>> calling "@@.npc_shoestore_manager;Cut!@@" And then clapping eagerly.<br>
<br>
"@@.npc_shoestore_manager;Wonderful, wonderful! Even better than I had envisioned!@@"<br>
<br>
You hear the clop, clop, clop of six hoofed feet as the rest of the party returns, before you are helped to your feet and washed off.<br>
<br>
"@@.npc_shoestore_manager;Masterfully acted, all three of you — so raw, so primal... yes, this is one of my best films yet, really showing the power of nature, but also the human ability to endure, a perfect depiction of the capacity of the human spirit and the vastness of the primal...@@"<br>
<br>
<<=setup.getNpcName("generic_female1", "custom", "Phaedra")>> removes her minotaur headpiece to theatrically roll her eyes. Packing things in, the four of you enjoying a celebratory wine and a meal before you change back into your clothes to get back in the car and head for home.<br>
<br>
[<<moveTo "event_bestiality_final_8" 'Hop in the car.' 1800>>]
</div>/*#
#desc: bestiality final - home
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 1000>>
<</if>>
<<set $player.location to "Van">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vehicle.png" setup.charImage("npc_shoestore_manager") setup.charImage("npc_shoestore_assistant")>>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;You can keep the costume,@@" she states — "@@.npc_shoestore_manager;The boots are one of my own designs, a bit of old-west style for the modern girl on the go. Oh, and we mustn't forget your payment!@@" She hands you a stack of a thousand credits with a smile just before she drops you off at your flat.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 300>>]
</div>/*#
#desc: manager summons you + admin for a task
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.evil == 1>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addWorkEvent 'brazen_humil_event' _nextDate>>
<<else>>
<<if $events.hasOwnProperty("heels_training_followup")>>
<<wearItem $scene.shoesId>>
<</if>>
<<registerProgressionEvent>>
<</if>>
<</if>>
<<if $npc_admin.flags.evil == 1>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_admin.flags.evil == 1>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<<elseif$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.evil == 1>>
There is a knock on your door and you get up to see who it is, as there's nothing scheduled. It turns out to just be a courier dropping off some office supplies. You sign for things and put everything away before returning to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 1200 "<<completeWorkEvent>>">>]
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office and <<if $events.hasOwnProperty("heels_training_followup")>>has you put your shoes back on. A<<else>>a<</if>> minute later you are joined by <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_manager;Welcome. I wanted the two of you to be the first to hear that legal has finally finished ironing out the details of the CDS merger which means it is time to make the official announcement to your old employees.@@" You blink at the idea of going back down and seeing your old co-workers. You've changed so much, will anyone still recognise you?<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes>>
<<printThought "Hmm, probably not, well, except for <<=setup.getNpcName('npc_technician', 'first')>>, of course.">>
<<else>>
<<printThought "Hmm, probably not...">>
<</if>>
<br><br>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<=setup.getNpcName('npc_admin', 'first')>> stands as stern and stoic as always, though you get the feeling <<he npc_admin>> had a bit more warning that this news was coming.
<<else>>
Glancing over at your friend <<=setup.getNpcName('npc_admin', 'first')>>, you get the feeling <<he npc_admin>> had a bit more warning that this was coming.
<</if>>
<br><br>
"@@.npc_manager;We want to get the announcement out quickly and thought it would be best if they heard the news from faces they could trust. The whole company, well, sub-division, should be ready and waiting for you by the time you make it downstairs.@@"<br>
<br>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
"@@.npc_admin;We'll make sure they are properly prepared to be assimilated into Social Interaction Service Syndicate Inc.@@"
<<else>>
"@@.npc_admin;We'll make sure they understand that this is good news and that, though change is coming, the opportunities for everyone will far outweigh any transitory hardships.@@"
<</if>>
<br><br>
"@@.npc_manager;Excellent, well, I have full faith that the two of you will do a wonderful job but, in any case, good luck!@@"<br>
<br>
[<<moveTo 'event_brazen_choice_2' 'Head downstairs.' 600>>]
<</if>>
</div>/*#
#desc: head down elevator for merger presentation
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<registerProgressionEvent>>
<</if>>
<<set $player.location = "CDS Hallway">>
<<initRoom>>
<<include playerMenu>>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
The elevator ride down passes in total silence as you keep nervously glancing over at <<=setup.getNpcName('npc_admin', 'first')>>. Ever since <<his npc_admin>> transformation <<he npc_admin>> really scares you and you're quite grateful when the doors open and you step out into a public hallway.<br>
<br>
"@@.npc_admin;Slow down, Miss <<=$player.last_name>>. We need to exude calm strength, dashing around looking frantic is hardly the correct look or do I need to discipline you before the presentation for you to think straight?@@"<br>
<br>
You quickly shake your head, telling <<him npc_admin>> "@@.pc;Sorry, <<sir npc_admin>>@@" and adopting the most neutral expression you can, which seems to satisfy <<him npc_admin>>.
<<else>>
As you ride the elevator down, <<=setup.getNpcName('npc_admin', 'first')>> turns to you. "@@.npc_admin;Sorry about the lack of warning. I've been working on things for a while now, but <<=setup.getNpcName('npc_manager', 'Director')>> said to keep it under wraps. She thought the authenticity of you learning the news about the same time everyone else did would make you more approachable and smooth the announcement.@@"<br>
<br>
You nod and the elevator dings your arrival. "@@.npc_admin;Ah, we're here. You know it hasn't been all that long since I changed offices, but it already feels weird coming back down here, like I'm a visiting foreigner rather than an ex-pat.@@"<br>
<br>
You can't help but agree, things feeling doubly strange as the boost from your heels means even the literal sense of your perspective and how things look is different.<br>
<br>
<<if setup.getItemObjFromType('shoes').heels.difficulty >= 15>>
<<printThought "Amazing how a tippy-toe ballet-heel perspective can change things up so much.">>
<<elseif setup.getItemObjFromType('shoes').heels.difficulty >= 10>>
<<printThought "Amazing how a platform-raised perspective can change things up so much.">>
<<elseif setup.getItemObjFromType('shoes').heels.difficulty > 5>>
<<printThought "Amazing how a few centimetres higher perspective can change things up so much.">>
<<else>>
<<printThought "Amazing how a couple centimetres higher perspective can change things up so much.">>
<</if>>
<</if>>
<br><br>
You trail a final few employees filing into the main auditorium, heading directly for the stage once you are inside.<br>
<br>
You feel weird as you look at familiar faces as you make your way through the crowded room, but while <<=setup.getNpcName('npc_admin', 'first')>> is showered with greetings, not a single person seems to recognise you in the slightest. Arriving at the front, <<=setup.getNpcName('npc_admin', 'first')>> vaults up onto the stage <<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>as you struggle to follow<<else>>before reaching back to help you up<</if>>.<br>
<br>
The room quiets down and you are introduced by the CEO of Cloud Data Systems.<br>
<br>
[<<moveTo "event_brazen_choice_3" "Presentation time." 300>>]
</div>/*#
#desc: start merger presentation
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 5 'little' $EXPOSED>>
<</if>>
<<set $player.location = "Cloud Data Services Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
Looking out over the audience, you feel a bit self-conscious. Sure nobody<<if $npc_technician.flags.sawyouinfemaleclothes>>, save for <<=setup.getNpcName('npc_technician', 'first')>> who you notice lurking in the back,<</if>> recognises you, but, well, given the look and attire that is your uniform you appear a bit over-sexed compared to the rest of the room.<br>
<br>
You take solace in your effective anonymity, and the fact that attention is focused on <<=setup.getNpcName('npc_admin', 'first')>>, as <<he npc_admin>> begins <<his npc_admin>> presentation, standing quietly to one side wondering why you were even sent down.<br>
<br>
After the initial shock of the announcement the presentation becomes fairly mundane and you find your attention wandering.<br>
<br>
[<<moveTo "event_brazen_choice_4" "Look around the room." 300>>]
</div>/*#
#desc: look around during merger presentation
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 8 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "Cloud Data Services Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
Your attention drifts across the audience and you notice that such is a two-way street. You catch quite a few people looking at you rather than <<=setup.getNpcName('npc_admin', 'first')>> as <<he npc_admin>> drones on and you start to feel a bit exposed and embarrassed, your only protection the fact that they have no idea who you are.<br>
<br>
Your attention is drawn back to one <<guy>> in particular. You remember <<him>> from your previous job as an occasional acquaintance, but not good enough of a friend to stay in contact since you switched positions... well, switched more than just positions. As you look back at <<him>>, <<he>> winks at you, then does a subtle "call me" motion with <<his>> hand before blowing you a kiss!<br>
<br>
Quickly looking away, you try not to let your face show the fact that your heart is now thundering, half wondering how nobody else can hear the loud pounding as you nervously shift from one foot to the other.
<<if $npc_technician.flags.sawyouinfemaleclothes>>
Searching for somewhere safer to look, your gaze drifts back towards <<=setup.getNpcName('npc_technician', 'first')>>, but she is of no help at all, grinning like the proverbial cheshire cat as if reveling in the "secret" that only she knows.
<</if>>
<br><br>
Shifting your focus to <<=setup.getNpcName('npc_admin', 'first')>>, you listen as, yet again, <<he npc_admin>> confirms that there are no lay-offs planned before pivoting to discuss some of the opportunities that will be available now that they are official employees of Social Interaction Service Syndicate Inc, encouraging everyone to "@@.npc_admin;Take stock of your personal goals@@" while noting that Social Interaction Service Syndicate Inc greatly values "@@.npc_admin;Cross-department cooperation and promotion to bring alternate viewpoints to problems and strengthen the cohesion of the company as a whole.@@"<br>
<br>
You're half surprised <<he npc_admin>> didn't use the word "synergy" in the stream of corporate buzzwords, but any cynical analysis of things goes out the window with what <<he npc_admin>> says next.<br>
<br>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
"@@.npc_admin;As evidence of the effectiveness of these policies, I would like you to think back to a previous employee of Cloud Data Services. Some of you probably remember <<=$player.original_first_name>>? Not the greatest employee, but he got by... at least until the event with Nintendolls and his ignoble exit. Well, that is all in the past and he has taken to his new role with... well, quite the impressive enthusiasm.@@"
<<else>>
"@@.npc_admin;As evidence of what can be accomplished when employee and employer work together, I would like to introduce you to a truly stunning example of these policies at work. I am sure you all remember <<=$player.original_first_name>> and how they left us suddenly under fairly embarrassing circumstances due to dereliction of duty? What would you say if I told you that after leaving Cloud Data Service they not only found a position, but have since thrived more than they ever did down here in the code mines?@@"
<</if>>
<br><br>
[<<moveTo "event_brazen_choice_5" "Is this really happening?" 300>>]
</div>/*#
#desc: revealed to old co-workers during merger presentation
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _humiliationDegree = 30-setup.getTotalValue("humiliation")>>
<<if _humiliationDegree > 20>><<set _humiliationDegree = 20>><</if>>
<<applyExperience 'humiliation' _humiliationDegree 'unbelievable' $EXPOSED>>
<<set $scene.techFirstFemale = !$npc_technician.flags.sawyouinfemaleclothes>>
<<set $npc_technician.flags.sawyouinfemaleclothes = true>>
<</if>>
<<set $player.location = "Cloud Data Services Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
You hold your breath as the big reveal comes crashing down. "@@.npc_admin;In fact <<=$player.original_first_name>> has been standing here the whole time, or, I should say, <<=$player.first_name>> as that is what she is now called.@@"<br>
<br>
<<if $scene.techFirstFemale>>
You could hear a pin drop as every eye turns towards you, the <<guy>> who was flirting with you a moment ago warring with <<=setup.getNpcName('npc_technician', 'first')>> as to who is the most surprised. You suddenly regret not staying in touch with the "tech wizard" despite her giving you her number.
<<else>>
You could hear a pin drop as every eye turns towards you, the <<guy>> who was flirting with you a moment ago has the most shocked expression, but everyone, save <<=setup.getNpcName('npc_technician', 'first')>> who is biting her lip and looks to be standing somewhat awkwardly, looks surprised.
<</if>>
<br><br>
After giving a moment for people to gawk, you realise there is LITERALLY a spotlight on you, <<=setup.getNpcName('npc_admin', 'first')>> breaks the silence.<br>
<br>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
"@@.npc_admin;Now, few of you are likely to make such extreme changes — though keep an open mind and recall that your new medical benefits are VERY expansive. No, the reason I brought her before you today, and kept this reveal secret from her as well, is to give an authentic voice to the wonderful possibilities that lie before you as full employees of Social Interaction Service Syndicate Inc.@@"<br>
<br>
<<He npc_admin>> turns to face you, the corporate smile <<he npc_admin>> had been presenting to the audience shifting to a more stern expression, you try not to imagine what punishments <<he npc_admin>> might have in mind if you screw this up.
<<else>>
"@@.npc_admin;Now, do not think that we expect any of you to undergo such radical transformation as <<=$player.first_name>> has, unless you want to — recall that your new medical benefits are VERY expansive. No, the reason I brought her here today is because she really demonstrates the almost infinite potential ahead of you that is now available through Social Interaction Service Syndicate Inc.@@" <<He npc_admin>> turns to you with the patented smile that was known to pull phone numbers, open legs and get employees to put in the extra effort to push a project over the line. "@@.npc_admin;So, <<=$player.first_name>>, would you like to say a few words about your experiences? And everyone? Be gentle, I did not warn her she'd be talking today to make sure that what you heard was as authentic and genuine as possible.@@"
<</if>>
<br><br>
<<printThought "Oh <<getWordGod>>, what should I say?">><br>
<br>
Hidden from the view of the crowd you clench down on the plug lodged in your ass, <<if $player.body_ref.penis>>feeling your <<getWordMyPenis>> twitch <<if !setup.checkItemTypeWorn("cage")>>beneath your clothes<<else>>within its prison<</if>><<else>>all while a trickle of excitement drips down your leg<</if>>...<br>
<br>
[<<moveTo "event_brazen_choice_6" "Put being embarrassed by others behind you and boldly talk about your experience." 300 "<<set $scene.brazen = true>>">>]<br>
[<<moveTo "event_brazen_choice_6" "Somehow do as you have been asked, despite the intense (and disturbingly arousing) humiliation you feel." 300 "<<set $scene.brazen = false>>">>]<br>
[<<moveTo "event_brazen_choice_6_run" "No, this is too much, just flee." 900>>]<br>
</div>/*#
#desc: make choice between brazen and embarrassed
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'humiliation' 'embarrassed_humiliation' 'flee'>>
<<set $player.flags.humiliationStyle = 'embarrassed'>>
<<if $npc_manager.flags.party.timesAttended > 0>>
<<addWorkEvent 'admin_training_1'>>
<</if>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_3'
0
'theme_admin_flee'
false
>>
<<if $npc_technician.relationship.her_role == 'dom' && $npc_technician.relationship.kinks.humiliation>>
<<addWorkEvent 'technician_humiliation_1'>>
<</if>>
<</if>>
<<set $player.location = "Cloud Data Services Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
Being in front of everyone, like this — it's too much. With a burst of energy, you run across the stage and out the door, not even hearing what's going on behind you as you sprint for the elevator.<br>
<br>
<<if $npc_admin.flags.evil == 0>>
As you ride the elevator back up, your phone rings but you mash ignore when you see <<=ps(setup.getNpcName("npc_admin","first"))>> name.<br>
<br>
<</if>>
Arriving back at your desk, you try to catch your breath only for <<=setup.getNpcName("npc_manager","formal")>> to emerge momentarily. Her gaze lingers on you for a moment and then she retreats without a word and you slowly find yourself focusing back on your work as a distraction.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: make choice between brazen and embarrassed
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.brazen>>
<<setThreshold 'humiliation' 'brazen_humiliation' 'brazen'>>
<<set $player.flags.humiliationStyle = 'brazen'>>
<<else>>
<<setThreshold 'humiliation' 'embarrassed_humiliation' 'blushing'>>
<<set $player.flags.humiliationStyle = 'embarrassed'>>
<</if>>
<<if $npc_manager.flags.party.timesAttended > 0>>
<<addWorkEvent 'admin_training_1'>>
<</if>>
<<if $npc_technician.relationship.her_role == 'dom' && $npc_technician.relationship.kinks.humiliation>>
<<addWorkEvent 'technician_humiliation_1'>>
<</if>>
<</if>>
<<set $player.location = "Cloud Data Services Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.brazen>>
Looking at all the people staring at you, feeling the pit of embarrassment swell inside of you a switch goes off in your head. Suddenly instead of being humiliated you feel empowered. Yes, you do things that raise eyebrows but... you love it, and you revel in the feeling of breaking through norms and the only reason to be "shamed" by such things is if being treated in such a way turns you on. With a smile on your face, you give a passionate speech about following your desires and becoming your best self even when such changes seem frightening.<br>
<br>
You can tell the crowd is both surprised, and impressed by your exuberance, the fact that such courage would have been far out of character for the "guy" they used to know only reinforcing your point. You conclude with a smile and a shout of encouragement to seize your dreams as the room bursts forth with a standing ovation.
<<else>>
Facing the crowd, you try not to focus on any one face in particular as you give a short, bashful speech where you talk about how much of a better fit your new position is and that, though you regret your mistake and the damage it did to company and coworkers, things could not have turned out better for you, personally. Finally you ask that they all use your example to really think hard about what they ACTUALLY want in life. Nervously you conclude with a cute curtsy and wishing them all the best in the future.<br>
<br>
The fact that you receive a standing ovation has you elated, even more embarrassed, which also has you feeling deeply aroused.
<</if>>
<br><br>
Once the applause has died down, <<=setup.getNpcName('npc_admin', 'first')>> takes charge, drawing the presentation to a conclusion, but explaining that the two of you will be sticking around to mingle and help answer any immediate questions.<br>
<br>
[<<moveTo "event_brazen_choice_7" "Continue." 300>>]
</div>/*#
#desc: make choice between brazen and embarrassed
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Cloud Data Services Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<createAdvBGR "./images/locations/party_spectators.png">>
<<else>>
<<if $scene.brazen>>
<<createAdvBGR "./images/locations/party_spectators.png">>
<<else>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_admin")>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<if $scene.brazen>>
You're eager to get away from the creepy thing that <<=setup.getNpcName('npc_admin', 'first')>> has become and quickly split off to mingle.
<<else>>
Even if you're scared of <<him npc_admin>> you're a bit annoyed that <<=setup.getNpcName('npc_admin', 'first')>> seems to almost instantly ditch you, your heart pounding with seeming never-ending embarrassment.
<</if>>
<br><br>
After the first handful of congratulations you start to get bored.<br>
<br>
<<if $scene.brazen>>
[<<moveTo "event_brazen_choice_8_technician_1" 'Find your girlfriend and go snog in a supply closet.' 600>>]<br>
<<else>>
[<<moveTo "event_brazen_choice_8_technician_1" 'Try to find your girlfriend and go snog in a supply closet.' 600>>]<br>
<</if>>
[<<moveTo "event_brazen_choice_8_dude_1" "Find the <<guy>> who was making eyes on you during the presentation." 600>>]<br>
[<<moveTo "event_brazen_choice_9" "Try and sneak out." 600 "<<set $scene.sneak=true>>">>]<br>
[<<moveTo "event_brazen_choice_8_dude_evil_1" "Just kill time and wait for it to be over." 600>>]
<<else>>
<<if $scene.brazen>>
Casing the room you flash a thumbs up to <<=setup.getNpcName('npc_admin', 'first')>> and split off on your own to cover more ground separately.<br>
<br>
The sea of congratulations starting to get dull after a while you feel the itch to do something more interesting and start looking around for a target.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
[<<moveTo "event_brazen_choice_8_technician_1" 'Find your girlfriend and go snog in a supply closet.' 600>>]<br>
<<else>>
[<<moveTo "event_brazen_choice_8_technician_1" 'Look around for <<=setup.getNpcName("npc_technician", "first")>>.' 600>>]<br>
<</if>>
[<<moveTo "event_brazen_choice_8_dude_1" "Find the <<guy>> who was making eyes on you during the presentation." 600>>]<br>
[<<moveTo "event_brazen_choice_9" 'Wait for the "meeting" to be over.' 600 "<<set $scene.sneak=false>>">>]
<<else>>
Despite your reception, you feel nervous facing so many people
<<if $npc_admin.stage > 2>>
and you meekly hang off of your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>>friend's<<else>>friend's<</if>> arm as <<he npc_admin>> mingles and answers questions.
<<else>>
and you all but hang off of <<=ps(setup.getNpcName('npc_admin', 'first'))>> arm as <<he npc_admin>> mingles and answers questions.
<</if>>
<br><br>
<<if $npc_admin.stage == 1 || $npc_admin.flags.relationship != "boyfriend">>
As you're making the rounds, you spot the <<guy>> who was making eyes at you during the presentation, but you're way too intimidated to step out of <<=ps(setup.getNpcName('npc_admin', 'first'))>> orbit and make an approach. Somehow noticing your attention <<=setup.getNpcName('npc_admin', 'first')>> calls the <<guy>> over.<br>
<br>
"@@.npc_admin;Hey, so Stevens, right? Anyway, I forgot something and I think it's in my old office. I don't think anyone else has moved in yet so do you think you could escort <<=$player.first_name>> to go check? She doesn't have credentials for this floor anymore.@@"<br>
<br>
Looking almost as nervous and intimidated as you are, the <<guy>> nods.<br>
<br>
[<<moveTo "event_brazen_choice_8_dude_1" "Go with the <<guy>>." 600>>]<br>
[<<moveTo "event_brazen_choice_8_dude_end" 'Tell <<=setup.getNpcName("npc_admin", "first")>> that you actually found the thing yesterday.' 600>>]<br>
<<else>>
Nervously remaining at <<=ps(setup.getNpcName('npc_admin', 'first'))>> side you blush every time someone addresses you, even though it is nothing but positive compliments as to your bravery and accomplishment.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
Eventually you spot <<=setup.getNpcName("npc_technician", "first")>> looking similarly uncomfortable in the crowd.<br>
<br>
[<<moveTo "event_brazen_choice_8_technician_1" 'Peel off and find someplace private to snog your girlfriend.' 600>>]<br>
<</if>>
[<<moveTo "event_brazen_choice_9" 'Wait for the "meeting" to be over.' 600 "<<set $scene.sneak=false>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: brazen choice; decide how to play with technician
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Cloud Data Services Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.brazen>>
Scoping the room you zero in on your girlfriend, quickly pulling her aside as she leads the way to the privacy of an unused conference room.
<<else>>
You're nervously looking around when your girlfriend ambushes you with a smile before dragging you away to the privacy of an unused conference room.
<</if>>
<br><br>
Locking the door she grins at you. "@@.npc_technician;So, Miss fancy corporate overlord... how about you give me a private explanation about how this so-called "merger" is going to be good for me?@@"<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
[<<moveTo "event_brazen_choice_8_technician_2" 'Show the benefits of ascending to new positions by submitting to her.' 600 "<<set $scene.style='dom'>>">>]<br>
<<case "sub">>
[<<moveTo "event_brazen_choice_8_technician_2" 'Explain to your slave how the only path forward is complete, utter submission.' 600 "<<set $scene.style='sub'>>">>]<br>
<</switch>>
[<<moveTo "event_brazen_choice_8_technician_2" 'Demonstrate how things will work by merging your lips with hers.' 600 "<<set $scene.style='normal'>>">>]
</div>/*#
#desc: brazen choice; play with npc_technician
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case "dom">>
<<applyExperience 'humiliation' 11 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'terrible' $SEEN_FRIEND>>
<<case "sub">>
<<case 'neutral'>>
<</switch>>
<<changeHorny 30>>
<</if>>
<<set $player.location = "Cloud Data Services Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case "dom">>
You drop to your knees and begin worshipping your <<=setup.getNpcName('npc_technician', 'title')>> as she teases you about your presentation.<br>
<br>
"@@.npc_technician;How did it feel being up there in front of everyone, huh? Was my cute slave scared? Would she rather have her big strong Mistress there to help... maybe what type of girl she's REALLY turned into by spanking her cute ass in front of all of her old co-workers?@@"<br>
<br>
<<if $scene.brazen>>
The teasing turns you on something fierce and you desperately agree with her, saying you wish she'd taken you then and there, that she had fucked and flogged your ass in front of everyone and then asked for volunteers to use your other hole.<br>
<br>
"@@.npc_technician;Fuck, you did it again... I damn near just creamed my panties... I REALLY gotta take you to <<printShopName 'sex_club'>> sometime... though I don't know if I could ever convince you to leave...@@"
<<else>>
You whimper and moan as she amps up the teasing, even as it's clear to the both of you how much it's turning you on.<br>
<br>
"@@.npc_technician;You really do get off on humiliation, don't you? Like holy shit I bet I could make you cum just by tying you up in front of an audience and letting them tease you about how utterly cute and depraved you are... I REALLY gotta take you to <<printShopName 'sex_club'>> sometime... though I don't know if I could ever convince you to leave...@@"
<</if>>
<br><br>
You reply that you'll go anywhere so long as it's with her and she pulls you to your feet for a kiss, your lips locking together as she possessively hugs you close. Unfortunately you've barely had a chance to enjoy the taste of her luscious lips when you are interrupted by a text.
<<case "sub">>
Grabbing her by the hair, you bend her over your knee, spanking her as you chide her for how she stood in the back of the room taunting you through the whole presentation.<br>
<br>
"@@.npc_technician;I'm sorry Mistress, I should have showed more respect. Next time you should remember to bring my leash so I can be your good girl kneeling by your side.@@"<br>
<br>
<<if $scene.brazen>>
You talk about how you'll take her up on the offer,
<<if $npc_manager.stage >= 4>>
how maybe when it comes time for her to move upstairs you'll box her up yourself, then un-package her just enough to install
<<else>>
how you're looking forward to installing
<</if>>
her under your desk where she can devote her career to worshipping you.
<<else>>
You spank her some more for her temerity, pointing out that she had better mend her ways and be a good girl or she won't last long in the new regime, though you would gladly offer her a position as your live-in slave.
<</if>>
<br><br>
Satisfied that her bum is nice and red thanks to your hand you flip her over and pull her close as you hungrily kiss your slave, only to be interrupted by your phone beeping with an incoming text.
<<case 'neutral'>>
You pull <<=setup.getNpcName('npc_technician', 'first')>> towards you and the two of you are soon rolling on the conference table, lips locked passionately together, hands groping and exploring as you nibble and lick and gasp and moan.<br>
<br>
<<if $scene.brazen>>
"@@.npc_technician;Fuck, you were so hot up on that stage, and then when you came out? Cutest. Thing. Ever. Screw the merger, I was ready to become your champion and lead a bloody revolution...@@"
<<else>>
"@@.npc_technician;Fuck, you were so hot up on that stage, and then when you came out? Cutest. Thing. Ever. All I wanted to do was rush the stage and protect my sweet, sweet girl.@@"
<</if>>
<br><br>
Whispering her fantasy in your ear as she lightly nibbles she has you moaning and desperate for more, and then your phone rings with a text, shattering the mood as it interrupts everything.
<</switch>>
<br><br>
"@@.npc_admin;Meet and greet is over, it's time for us to head back to work upstairs.@@"<br>
<br>
You curse and contemplate ignoring the text, but figure that such would only lead to incurring the wrath of your <<if $scene.style == "dom">>other<<else>>corporate<</if>> <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
Sharing a final kiss, you bid <<=setup.getNpcName('npc_technician', 'first')>> goodbye and head for the elevator and then back to your desk.<br>
<br>
[<<moveTo "event_brazen_choice_10" "Back to work." 600>>]
</div>/*#
#desc: brazen choice; seduce dude
#status: FINISHED 0.7.2.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Cloud Data Services Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.evil > 0 || $scene.brazen>>
Weaving your way through the crowds you find the <<guy>> who had been flirting with you from the audience before your "big reveal."
<<if $scene.brazen>>Boldly<<else>>Bashfully<</if>> approaching <<him>> you ask if <<hes>> still interested in your "number." <br>
<br>
Blushing hard <<he>> hesitates and then nods before looking around and asking if the two of you could go somewhere more private?<br>
<br>
Recalling a nearby supply closet whose use for late-night liaisons was something of an open secret you lead the way, soon alone in the small... intimate room with <<him>>.
<<else>>
Both of you nervous you lead the way to <<=ps(setup.getNpcName('npc_admin', 'first'))>> old office. Interestingly it seems to have been converted to a supply closet. As you look around, <<he>> finally seems to realise what's going on. "@@.generic_male1;Wait... there isn't going to be anything here, is there?@@"<br>
<br>
Blushing and biting your lip, you flutter your eyelashes seductively and reply that that's up to <<him>>...<br>
<br>
A tremor in <<his>> voice <<he>> barely whispers <<his>> response that "@@.generic_male1;<<He>>'d like that...@@"
<</if>>
<br><br>
[<<moveTo "event_brazen_choice_8_dude_2" 'Kneel down and "welcome" <<him>> to Social Interaction Service Syndicate.' 600 "<<set $scene.suck = true>>">>]<br>
[<<moveTo "event_brazen_choice_8_dude_2" 'Just chat and make out with <<him>>.' 600 "<<set $scene.suck = false>>">>]
</div>/*#
#desc: brazen choice; seduce dude
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Cloud Data Services Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
Sliding to your knees with a smile, you unzip <<his>> pants to reveal a modest, but quite hard <<getWordPenis>>.<br>
<br>
Smiling up at <<him>>, you
<<if setup.getTotalValue("oral") > 10>>
work your magic. Watching as <<he>> gasps and strains in what you are quite certain is the blowjob of <<his>> life.
<<else>>
easily handle sucking <<him>> gently as <<he>> gasps and strains, <<his>> reaction quite beyond what your still-developing skills is normally able to manufacture.
<</if>>
<br><br>
<<printThought "Wow, <<hes>> like... REALLY turned on...">><br>
<br>
You can tell <<hes>> trying to hold back, but it isn't long before <<he>> cums, a modest spurt of <<if setup.getTotalValue("oral") > 10>>tasty, though<<else>>strangely<</if>> mild <<getWordCum>>.<br>
<br>
"@@.generic_male1;Holy... that was amazing- YOU'RE amazing@@" <<he>> gasps.<br>
<br>
You just smile and whisper "@@.pc;Welcome to Social Interaction Service Syndicate@@" as you rise to your feet.
<<else>>
<<His>> lips are soft and delicate as you kiss <<him>>, <<his>> every move hesitant as if <<hes>> afraid you might shatter.
<</if>>
<br><br>
"@@.generic_male1;How did you get so beautiful?@@" <<He>> whispers and you realise that what you sparked in <<him>> may go well beyond <<him>> just seeing a pretty girl on stage.<br>
<br>
You whisper that you just embraced the "@@.pc;Beautiful girl that was inside me all along@@" before leaning closer and whispering "@@.pc;And you can <<if $options.fem>>become more beautiful too<<else>>too<</if>>...@@"<br>
<br>
<<He>> shudders and blushes, looking quite overwhelmed as the mood is suddenly shattered by your phone chiming with a text from <<=setup.getNpcName('npc_admin', 'first')>> asking where you are? Your temporary friend takes the opportunity to slip away before you can exchange digits or anything and you consider what to do next...<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
[<<moveTo "event_brazen_choice_8_technician_1" 'Find your girlfriend and go snog in a supply closet.' 600>>]<br>
<<else>>
[<<moveTo "event_brazen_choice_8_technician_1" 'Look around for <<=setup.getNpcName("npc_technician", "first")>>.' 600>>]<br>
<</if>>
[<<moveTo "event_brazen_choice_10" "Return to work." 600>>]
</div>/*#
#desc: evil admin catches the guy who was watching you
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _panties = setup.getItemFromType("panties")>>
<<removeItem _panties true>>
<<deleteItem _panties>>
<</if>>
<<set $player.location = "Cloud Data Services Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_admin","npc_admin_evil")>>
<div id="invframe" class="scrolltext">
As hard as it may be, given your appearance, you try to just blend in and wait for the meeting to be over, only for <<=setup.getNpcName('npc_admin', 'first')>> to suddenly re-appear along with the <<guy>> who was flirting with you from the audience during the presentation.<br>
<br>
"@@.npc_admin;There you are. I believe you are familiar with this... <<man>>, I saw what <<he>> was behaving during the presentation instead of paying attention and thought it would be a good time to introduce <<him>> to how the new regimen handles such insubordination.@@"<br>
<br>
You fearfully look towards the <<guy>> who, even though <<he>> looks nervous on multiple accounts, cannot possibly know what is in store for <<him>>.<br>
<br>
Taking the two of you to a private conference room <<=setup.getNpcName('npc_admin', 'first')>> stands like a sentinel blocking the only door as <<he npc_admin>> looks at the poor <<guy>>.<br>
<br>
"@@.npc_admin;Alright. If you insist on spending your time undressing my assistant with your eyes — blatant sexual harassment if I've ever seen such. Well... turnabout is fair play. Strip.@@"<br>
<br>
"@@.generic_male1;What?@@" The <<guy>> asks in shock.<br>
<br>
"@@.npc_admin;I said strip, or I fire you right now. Well within my power now that your entire company, technically, reports to me.@@"<br>
<br>
The <<man>> looks to you for sympathy, but you have none to offer, probably more scared of the... thing <<=setup.getNpcName('npc_admin', 'first')>> has become than <<he>> is.<br>
<br>
Nervously removing <<his>> clothes one item at a time as if hoping that things might be stopped at any moment eventually the <<man>> is down to just <<his>> <<if $options.fem>>panties. Panties<<else>>boxers. Boxers<</if>> under which <<he>> appears to be awkwardly attempting to conceal a boner.<br>
<br>
"@@.npc_admin;All of it.@@" <<=setup.getNpcName('npc_admin', 'first')>> states flatly, repeating <<himself npc_admin>> when the <<man>> makes a final attempt to beg for mercy.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> snorts as <<he npc_admin>> extends <<his npc_admin>> hand taking the <<if $options.fem>>panties<<else>>boxers<</if>> and casually ripping them in half before tossing them into a trash can.<br>
<br>
<<if $fetish.sph>>
"@@.npc_admin;Pathetic.@@" <<He npc_admin>> notes at the <<mans>> hard, but unimpressive, penis. "@@.npc_admin;THIS is what a <<if !$npc_admin.fem && !$options.fem>>man's <</if>>cock is supposed to look like@@" <<he npc_admin>> adds, revealing <<his npc_admin>> large, hard cock. "@@.npc_admin;Of course that just confirms my assessment that you aren't <<if $options.fem>>management material<<else>>a man<</if>>, just a weak <<if $fetish.sissy>>sissy<<else>>girl<</if>> who does not yet know <<his>> place. Slut, take off your panties and show this pathetic excuse for an employee what <<he>> has to look forward to.@@"<br>
<br>
<</if>>
The <<man>> looks at you in desperation, but you have no help to offer. <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>You raise your skirt<<else>>You pull down your pants<</if>> and pull aside your panties to reveal your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<if setup.checkItemTypeWorn("cage")>>chastity belt<<else>>smooth puss<</if>><</if>>.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
The <<man>> stares in shock, <<if $options.fem>>seemingly entranced by<<else>>looking back and forth from your feminine face to<</if>> the imprisoned thing between your legs.<br>
<br>
"@@.npc_admin;Get a good look at it, that cute <<if $fetish.sissy>>sissy<<else>>girly<</if>> cock all locked away. Come <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> morning I expect you in my office to be fitted with one of your own... otherwise I'll have you fired and sued into oblivion, you understand? <<=$player.first_name>>? Take off your panties, your <<if $fetish.sissy>>sissy<<else>>cute<</if>> sister needs something <<if !$options.fem>>more <</if>>appropriate to wear home.@@"
<<else>>
The <<man>> stares in shock, seemingly entranced by your sleek chastity shield.<br>
<br>
"@@.npc_admin;Get a good look at it, that properly locked chastity belt. Come <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> morning I expect you in my office to be fitted with one of your own... otherwise I'll have you fired and sued into oblivion, you understand? <<=$player.first_name>>? Take off your panties, your <<if $fetish.sissy>>sissy<<else>>cute<</if>> sister needs something more appropriate to wear home.@@"
<</if>>
<<else>>
The <<man>> stares in shock.<br>
<br>
"@@.npc_admin;Get a good look, and get used to the idea of exposing yourself on command. Come <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> morning I expect you in my office displaying what you've learned... otherwise I'll have you fired and sued into oblivion, you understand? <<=$player.first_name>>? Take off your panties, your <<if $fetish.sissy>>sissy<<else>>cute<</if>> sister needs something more appropriate to wear home.@@"
<</if>>
<br><br>
You gulp, but obey, soon handing over your underthings for <<him>> to nervously pull on, the front stretching somewhat to accommodate <<his>> still-hard cock.<br>
<br>
"@@.npc_admin;Much better. We'll have you turned into the <<if $fetish.sissy>>sissy<<else>>obedient<</if>> slut you were meant to be in no time at all. Remember, first thing <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> your training begins. And this?@@" <<He npc_admin>> gestures in your direction as you remain standing with your <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>cage<<else>>chastity belt<</if>><<else>><<getWordMyPenis>><</if>> exposed. "@@.npc_admin;This is but the halfway point of what you have to look forward to.@@"<br>
<br>
Petrified with fear the <<man>> scrambles to put the rest of <<his>> clothes on and then sprints away when <<=setup.getNpcName('npc_admin', 'first')>> finally opens the door.<br>
<br>
With the first real emotion <<=setup.getNpcName('npc_admin', 'first')>> has shown since <<his npc_admin>> transformation <<he npc_admin>> lets out a cruel laugh before declaring that it is time for you to head back upstairs and return to your normal work.<br>
<br>
[<<moveTo "event_brazen_choice_10" "Return to work." 600>>]
</div>
/% TODOfuture: Side-future note: can end up recognising the flirty guy later working at the Maid Cafe, still a bit unsteady in heels and generally nervous in his maid's outfit.
Talk to him and he thanks you for your part in encouraging him to re-analyze his life (and more if you blew him), you give him some tips on makeup and walking in heels
_NYIcoworkerknows
%//*#
#desc: decline admins attempt to hook you up after brazen embarrassed
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Cloud Data Services Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You explain that you found the "thing" <<=setup.getNpcName("npc_admin", "first")>> was looking for and the <<guy>> wanders off.<br>
<br>
"@@.npc_admin;Sorry about that. <<He>> seemed interested in you, but intimidated... I confess I don't quite know how to play wingman <<if $options.fem>>like you do<<else>>for a lady<</if>>, but I was just trying to do my best to help.@@"<br>
<br>
You nod, saying you appreciate the effort, but that you're just a bit overwhelmed right now and would rather stick with <<him npc_admin>>.<br>
<br>
"@@.npc_admin;Sure sure sure,@@" <<he npc_admin>> replies before yet another person comes up to talk to the two of you and <<=setup.getNpcName("npc_admin", "first")>> starts fielding more questions about the merger.<br>
<br>
<<if $npc_technician.relationship.relationship_stage > 0>>
[<<moveTo "event_brazen_choice_8_technician_1" 'Find your girlfriend and go snog in a supply closet.' 600>>]<br>
<<else>>
[<<moveTo "event_brazen_choice_8_technician_1" 'Look around for <<=setup.getNpcName("npc_technician", "first")>>.' 600>>]<br>
<</if>>
[<<moveTo "event_brazen_choice_9" 'Continue.' 600 "<<set $scene.sneak=false>>">>]
</div>/*#
#desc: head back at end of brazen embarrassed
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<if$npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sneak>>
You try to slip away, but just as you reach the door <<=setup.getNpcName("npc_admin", "first")>> appears in front of you. Leaning close to whisper <<he npc_admin>> tells you to "@@.npc_admin;Get back in there and put your slutty self to work or I'll find a position more suitable to your skill-set.@@"<br>
<br>
You gulp and quickly nod, resuming wandering around absorbing by now meaningless platitudes.
<</if>>
<br><br>
Eventually people begin to disperse and you and <<=setup.getNpcName("npc_admin", "first")>> head back upstairs. Getting off on <<his npc_admin>> floor to head for <<his npc_admin>> office you ride up the rest of the way to your floor and head back to your desk.<br>
<br>
[<<moveTo "event_brazen_choice_10" "Return to work." 600>>]
</div>/*#
#desc: manager congratulates you at end of brazen
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<if $scene.brazen>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_30'
0
'theme_psychiatrist_brazen'
false
>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_3'
0
'theme_admin_brazen'
false
>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_4'
0
'theme_technician_brazen'
false
>>
<<else>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_30'
0
'theme_psychiatrist_humil'
false
>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_3'
0
'theme_admin_humil'
false
>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_4'
0
'theme_technician_humil'
false
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Arriving back at your office, you have just sat down when <<=setup.getNpcName('npc_manager', 'formal')>> walks out to greet you with a smile.<br>
<br>
<<if $scene.brazen>>
"@@.npc_manager;Welcome back, I heard about your part in the presentation and well... I could not be more proud. While I will certainly miss my sweet, ruby-cheeked girl, seeing you so enthusiastically embrace who you have become and what you are meant to be...@@" She sighs with obvious contentment. "@@.npc_manager;Well, it bodes well for your future career for me to know I can rely on you not to wilt or retreat into hiding when things get... intense.@@"<br>
<br>
The old you would have bashfully turned away, but instead you smile back and puff your chest out with pride.<br>
<br>
"@@.npc_manager;Lovely... though be careful that you do not succumb to hubris... or motivate me to match the challenge of coaxing that sweet, blushing girl back out for a special occasion.@@"
<<else>>
"@@.npc_manager;Welcome back, I heard about your part in the presentation, and well... I only wish I could have been there to see it myself! Oh, I can just imagine how adorably cute you looked up there on stage, delicious.@@" She sighs with obvious contentment. "@@.npc_manager;Well, I will let you get back to work, you have had quite the exciting day, after all. I know it can be hard sometimes but, well... know that your sweet embarrassment serves a purpose. After all, far better to experience your emotions than keep it all bottled up.@@"
<</if>>
<br><br>
With a parting wave, she slides back into her office and closes the door.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: search how to lockpick chastity
#status: RELEASED 0.8.4.0
#ignore_spell: api
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.chastityWorn = setup.checkItemTypeWorn("cage")>>
<<if setup.getChastityLevel() != -1>>
<<switch setup.getChastityLevel()>>
<<case 1>>
<<set _time = 300>>
<<case 2>>
<<set _time = 600>>
<<case 3>>
<<set _time = 1800>>
<<case 4>>
<<set _time = 3600>>
<<case 5>>
<<set _time = 7200>>
<<default>>
<<set _time = 300>>
<</switch>>
<<set $scene.repeat = $player.flags.lockpick[setup.getChastityLevel() - 1]>>
<<if $scene.repeat>>
<<include "calcChastitySuccess">>
<<set $scene.repeatSuccess = _success>>
<<if !$scene.repeatSuccess>>
<<applyStress 20>>
<</if>>
<<set _time = _time/2>>
<<else>>
<</if>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _time)>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.chastityWorn>>
You start searching for lock-picking techniques but, lacking of pressing need for such you find yourself getting bored by the minutiae.<br>
<br>
Eyes glazing over you decide to do something else.<br>
<br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<<elseif setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == -1>>
You attempt to figure out a way to remove your broken chastity <<if setup.isCage()>>cage<<else>>belt<</if>>, but the damage is too severe, the lock crushed and jammed such that any conventional attempt to pick it is a failure from the start.<br>
<br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<<elseif $scene.repeat>>
<<if $scene.repeatSuccess>>
Your prior experience bypassing this sort of device pays off as, while it still takes some effort, you're able to extricate yourself from your private prison in significantly less time.
<<else>>
Your prior experience bypassing this sort of device only adds to your frustration, as you find yourself unable to replicate prior success and give up in frustrated failure.<br>
<br>
<<printThought "Have I really slipped so much?">>
<</if>>
<br><br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
You consider searching for how to unlock a chastity device... but given that you have the key to your <<=setup.getItemTypeName('cage')>> you fail to see the point and decide to do something else.<br>
<br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<<elseif setup.getChastityLevel() == 4 && $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished && setup.getTotalValue("smart") >= 18>>
You are certain you are on the brink of hacking your way out of your so-called "advanced" chastity device... only to come up hard against what seems to be a time-locked phone-home system. After some additional frustrating work you come to the conclusion that hacking it without access to the remote server is a lost cause.<br>
<br>
<<printThought "They really aren't messing around with this trial... I imagine the non-trial version isn't quite so excessively secure.">><br>
<br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<<elseif setup.getTotalValue("smart") >= 10 + 2*setup.getChastityLevel()>>
You go searching for how to lock-pick your way out of chastity.
<<switch setup.getChastityLevel()>>
<<case 1>>
It doesn't take long before you find your way to an instructional video by someone calling themselves the Security Subverting Solicitor. You find a video showing a device that looks nearly identical to your own, which they describe a "nigh trivial" to circumvent.
<<case 2>>
After a bit of poking through backlogs you locate a series of instructional videos by someone calling themselves the Security Subverting Solicitor. It takes some additional digging to find your precise device, which they describe as a "high security" model.
<<case 3>>
After several dead-ends, you eventually find a somewhat cryptic tutorial for how to circumvent a device such as the one you are wearing.
<<case 4>>
You end up having to do some real digging, but you eventually zero in on the security library that was used for your device and find some tools meant for bypassing same.
<<case 5>>
It isn't long before you find yourself deep in the weeds of electronic security systems as you try to piece together how to bypass the advanced, proprietary system used by the <<=setup.getItemTypeName('cage')>>.<br>
<br>
It takes reading half a dozen papers, reading backlogs of forums that may have put you on a government watch-list and a bit of hacking of your own but you eventually have a program that you think might be able to release you from your chastity prison...
<<default>>
ERROR: unexpected chastity level <<=setup.getChastityLevel()>>
<</switch>>
<br><br>
[<<moveTo "room_computer_lockpick_chastity_2" "Let's give getting out a shot..." 360>>]<br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<<else>>
<<switch setup.getChastityLevel()>>
<<case 1 2 3>>
You try to search up how to lock-pick a chastity <<if setup.isCage()>>cage<<else>>belt<</if>> such as your own... but are unable to piece together the proper search string to find anything of use.
<<case 4>>
On the one hand, the digital nature of your device makes you think it would be simpler to crack than one with a physical key... the reality, it seems, is quite the opposite as it seems that part of the "cutting edge" promises of your advance chastity <<if setup.isCage()>>cage<<else>>belt<</if>> is also advanced security.
<<if setup.getTotalValue("smart") >= 15>>
You eventually manage to figure out the underlying API interface to your device... but eventually hit a wall with the cryptographic security around issuing any commands.
<<else>>
The cryptographic algorithms involved are way beyond your skill and you are forced to give up in frustration.
<</if>>
<<case 5>>
Trying to find a way to circumvent the high-end security packed into your <<=setup.getItemTypeName('cage')>> puts your scholarly skills to the test... only to eventually end in failure.
<<if setup.getTotalValue("smart") >= 15>>
Though you were able to track some promising leads the cryptographic complexity of what you're dealing with is just too much for you to quite puzzle out.
<</if>>
<<default>>
ERROR: unexpected chastity level <<=setup.getChastityLevel()>>
<</switch>>
<br><br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<</if>>
<</if>>
</div><<set $scene.chastity_level = setup.getChastityLevel()>>
<<switch $scene.chastity_level>>
<<case 1 2>>
<<set _success = setup.getTotalValue("dexterity") > (10+2*$scene.chastity_level)>>
<<case 3 4 5>>
<<set _success = true>>
<</switch>>
<<if _success>>
<<set _x = setup.clearThoughtList()>>
<<set _chastityLvl = setup.getChastityLevel()>>
<<set $scene.isCage = setup.isCage()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<removeItem $scene.cage true>>
<<set $scene.first = !$player.flags.lockpick[_chastityLvl - 1]>>
<<set $player.flags.lockpick[_chastityLvl - 1] = true>>
<<else>>
<<set $scene.first = false>>
<<applyStress 10>>
<</if>>/*#
#desc: release self from chastity
#status: RELEASED 0.8.4.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcChastitySuccess">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.chastity_level>>
<<case 1 2>>
<<if setup.getTotalValue("dexterity") > (10+2*$scene.chastity_level)>>
<<if setup.getTotalValue("dexterity") > 15>>
With nimble ease,
<<else>>
After a bit of struggle,
<</if>>
you are able to replicate the method of the video and pick the lock to your <<if $scene.isCage>>cage<<else>>belt<</if>>, the imprisoning device falling away to leave you free...
<<else>>
You attempt to follow the video instructions to pick your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> but
<<if setup.getTotalValue("dexterity") > 10>>
you don't quite seem to have the manual dexterity to make it work,
<<elseif setup.getTotalValue("dexterity") > 5>>
you cannot seem to make it work the way it does in the video, your device remaining stubbornly in place.
<<else>>
you're all thumbs, and have not the slightest success.
<</if>>
Eventually you give up in frustration, still locked away.
<</if>>
<<case 3>>
You manage to get things calibrated to your chastity device's frequency, after which it is just a matter of waiting for the algorithm to churn. Before long you are rewarded with a "click" as your chastity <<if $scene.isCage>>cage<<else>>belt<</if>> falls away from your body.
<<case 4>>
You hold your breath as you wait for the cracking program to chug along, eventually rewarded with a soft click as the <<=setup.getItemName($scene.cage)>> unlocks and you taste freedom from its advanced hold...
<<case 5>>
It takes a final few tweaks to your cobbled-together code, but, eventually, you are rewarded with a click and you gasp as the <<=setup.getItemName($scene.cage)>> unlocks and releases its intimate hold on your body.
<<default>>
ERROR: unexpected scene.chastity_level <<=$scene.chastity_level>>
<</switch>>
<br><br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: don't have enough cum for mealplan
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'supplement', 'theme_psychiatrist_supplement_8')>>
<<if _themeId != -1 && $npc_technician.themes.rpg[_themeId].done>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_8'
5
'event_psychiatrist_session_out_of_cum_1'
false
>>
<</if>>
<<set $player.flags.mealplan.cum = false>>
<<if setup.getTotalValue("cum") > 15>>
<<applyStress 10>>
<<elseif setup.getTotalValue("cum") <= 5>>
<<applyStress -5>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You're getting prepared to leave when you discover that part of your mealplan for the day isn't going to work — you don't have enough <<getWordCum>> for proper seasoning!<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
You're distraught at this tragedy, the idea of having to eat food without your favourite seasoning making you curse your lack of preparation.<br>
<br>
<<printThought "Secretary needs cum badly!">>
<<else>>
<br>
<br>
<<printThought "I should find more sources of cum!">>
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
You're torn, disappointed at being unable to keep to your "plan" , but on the other hand the thought of eating a meal that isn't tainted with the salty flavour of cum is somewhat appealing.
<<else>>
Secretly, you're a bit relieved not to be looking forward to a day of forcing yourself to taint every bite you eat with such disgusting goo.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_foyer" "Continue." 60>>]
</div>/*#
#desc: drink a shot of cum
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _cum = setup.getTotalValue("cum")>>
<<if _cum < 15>>
<<applyExperience 'cum' _cum 'skip' $ALONE>>
<<else>>
<<applyExperience 'cum' 15 'normal' $ALONE>>
<</if>>
<<setThreshold 'cum' 'cum_eater' 'cum_shooter'>>
<<set $player.timebased.milking.cream_storage -= setup.mLtoCum(45)>>
<</if>>
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
Your heart races as you pour yourself a shot of <<getWordCum>>. Thicker than any alcohol it slowly settles in the shot glass, an ominously huge load daring you to tilt it back...<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
You eagerly pound it back, reaching out with your tongue to lick every corner of the glass lest you miss a single succulent morsel. Not wanting to pass up any pleasure you swish the <<getWordCum>>, your tongue in heaven as it swirls through the wonderfully thick treat.
<<else>>
You quickly pound it back, the thick load rolling over your tongue and down your throat, heavy in your belly as a reminder of what you just did.
<</if>>
You lick your lips in satisfaction, savouring the wonderful flavour while half wanting to indulge yourself and pour another...
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Pinching your nose you tilt it back and try to swallow as fast as you can. Your growing appreciation of cum is pushed to the limit as you try not to gag at the thick, salty substance slowly pouring down your throat. Finishing the last of it you cough, forcing yourself to keep it all down as you go back and forth between trying to forget what you just did, and getting excited at the memory.<br>
<br>
<<printThought "Is this who I am now, drinking straight cum in the privacy of my kitchen?">>
<<else>>
ERROR: impossible
<</if>>
<</if>>
<br><br>
You finish off by cleaning the glass and putting everything away, your breath still tasting like <<getWordCum>> as you prepare to continue on with your day.<br>
<br>
[<<moveTo "room_kitchen_fridge" "Keep looking in the fridge." 20>>]<br>
[<<moveTo "room_kitchen" "Back to the kitchen." 20>>]
</div>/*#
#desc: drink a glass of cum
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _cum = setup.getTotalValue("cum")>>
<<applyExperience 'cum' _cum 'skip' $ALONE>>
<<setThreshold 'cum' 'cum_eater' 'cum_guzzler'>>
<<set $player.timebased.milking.cream_storage -= setup.mLtoCum(500)>>
<</if>>
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
Your heart races as you pour yourself a tall, thick glass of <<getWordCum>>. You take a moment to warm things up to be more authentic, nervously staring at the huge quantity of <<getWordCum>> that you are about to chug down...<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
More than anything you're scared of spilling the heavenly brew as you try to keep from trembling while bringing the glass to your lips. As much as you'd like to just tip it back and let the thick <<getWordCum>> wash over you, you take your time. Your nostrils flare as you take a deep whiff of the wonderfully pungent brew, and then you part your lips and tilt the glass back.<br>
<br>
Your eyes close as you briefly experience heaven. Like thick, salty ambrosia the cum flows over your tongue and down your throat. Savouring every note of the thick cream you fantasise about it flowing down your face, of bathing in it. Logic outweighs debauchery, however; after all, as wonderful as it would feel to let the glass splash over your face it would surely be a tragedy to lose a single drop...<br>
<br>
Alas, like all good things your long gulp eventually comes to an end, the glass empty as you resist swallowing to swish the last bit of cum around your mouth until the flavour fades and you let it join its cohorts in your full belly. Holding the glass on its side you let the final few drops trickle out before wiping it clean with your finger, determined to enjoy every morsel of cum, each flavour-filled bead as good as the last and you lick your lips<<if setup.getTotalValue("cum") >= 20>>, sad to reflect on the probable biologically impossibility of surviving on an all-cum diet, but oh how you would love to try..<</if>>.
<<else>>
You bring the glass to your lips and tilt it back to let the thick sludge slowly pour down your throat. The slow flow of the thick "cream" makes it seem to go on forever, the intensity of flavour far beyond what you would ever experience with a more "normal" portion.<br>
<br>
You keep swallowing even as it becomes a struggle, for a moment feeling like you're drowning in cum... and strangely okay with that fact.<br>
<br>
With a gasp you slam the now-empty glass back on the table, you feel full... and a little queasy, both proud and disgusted at your "feat."
<</if>>
<<else>>
ERROR: impossible
<</if>>
<br><br>
[<<moveTo "room_kitchen_fridge" "Keep looking in the fridge." 20>>]<br>
[<<moveTo "room_kitchen" "Back to the kitchen." 20>>]
</div>/*#
#desc: makeup selection
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $scene.makeuproom>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
/%
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>%/
<<if !$scene.hasOwnProperty('makeupStartTime') || $scene.makeupStartTime == 0>>
<<set $scene.makeupStartTime = $now.getTime()>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.makeuproom_image>>
<div id="invframe" class="scrolltext">
<<if ($scene.makeupStartTime - $now.getTime()) > (1000*60*30)>>
<<printThought "That's not enough time to fiddle with my makeup.">>
<br><br>
[<<moveTo $scene.return_makeuproom $scene.return_makeuproomtext 0 "<<deleteMember $scene 'makeupStartTime'>>">>]
<<else>>
<<if $player.makeup.template=="">>
<<if $player.makeup.permanent=="">>
You look at yourself in the mirror. You're not wearing any makeup at all.
<<if setup.getTotalValue('feminization')<5>>
Are you supposed to wear makeup? You're confused.
<<elseif setup.getTotalValue('feminization')<15>>
Maybe you should wear some.
<<else>>
Eww, you should rectify this deficit right away.
<</if>>
<<if !(setup.checkItemInInventory('makeup_basic') || setup.checkItemInInventory('makeup_advanced') || setup.checkItemInInventory('makeup_expert') || setup.inPassageTag($scene.return_makeuproom, 'makeup_kit'))>>
<br><br>
[@@.link_locked;You lack the proper equipment to apply makeup.@@]
<<else>>
<<if setup.getTotalValue('makeup')>0>>
<<if setup.inPassageTag($scene.return_makeuproom, 'makeup_kit')>> Conveniently, the room is equipped with a substantial kit for whatever you might need.<</if>>
<br><br>
<<getMakeupList>>
<<else>>
Unfortunately you don't know how to apply makeup!
<</if>>
<</if>>
<<else>>
You look at yourself in the mirror, <<getMakeup>> It's basically all but impervious to damage for the next few years, but you could always put something else over top.<<if setup.inPassageTag($scene.return_makeuproom, 'makeup_kit')>> Conveniently, the room is equipped with a substantial kit for whatever you need.<</if>><br>
<br>
<<if !(setup.checkItemInInventory('makeup_basic') || setup.checkItemInInventory('makeup_advanced') || setup.checkItemInInventory('makeup_expert') || setup.inPassageTag($scene.return_makeuproom, 'makeup_kit'))>>
[@@.link_locked;You lack the proper equipment to apply makeup.@@]<br>
<<else>>
<<if setup.getTotalValue('makeup')>0>>
<<getMakeupList>>
<<else>>
This makeup is permanent and you don't have the skills to try and paint over it.
<</if>>
<</if>>
<</if>>
<<else>>
You look at yourself in the mirror to check the status of your makeup.<<if setup.inPassageTag($scene.return_makeuproom, 'makeup_kit')>> Conveniently, the room is equipped with a substantial kit for whatever you need.<</if>>
<<getMakeup>><br>
<br>
<<if $player.makeup.messed>0>>
<<if !(setup.checkItemInInventory('makeup_basic') || setup.checkItemInInventory('makeup_advanced') || setup.checkItemInInventory('makeup_expert') || setup.inPassageTag($scene.return_makeuproom, 'makeup_kit'))>>
[@@.link_locked;You lack the proper equipment to fix your makeup.@@]<br>
<<else>>
<<set _tmpTime = Math.max(60,Math.ceil(setup.getMakeupTime($player,$player.makeup.template)/2))>>
<<set _tmpMin = Math.ceil(_tmpTime/60)>>
<<set _tmpdiff = setup.getMakeupDifficult($player.makeup.template)>>
<<if $player.makeup.messed > 50>>
<<if _tmpMin == 1>>
[<<moveTo "room_do_makeup_fix" "Re-apply your makeup (about <<=_tmpMin>> Minute, <<=_tmpdiff>>)" _tmpTime>>]<br>
<<else>>
[<<moveTo "room_do_makeup_fix" "Re-apply your makeup (about <<=_tmpMin>> Minutes, <<=_tmpdiff>>)" _tmpTime>>]<br>
<</if>>
<<else>>
<<if _tmpMin == 1>>
[<<moveTo "room_do_makeup_fix" "Fix your makeup (about <<=_tmpMin>> Minute, <<=_tmpdiff>>)" _tmpTime>>]<br>
<<else>>
[<<moveTo "room_do_makeup_fix" "Fix your makeup (about <<=_tmpMin>> Minutes, <<=_tmpdiff>>)" _tmpTime>>]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemInInventory('makeup_basic') || setup.checkItemInInventory('makeup_advanced') || setup.checkItemInInventory('makeup_expert') || setup.inPassageTag($scene.return_makeuproom, 'makeup_kit')>>
<<if setup.getTotalValue('makeup')>0>>
<<getMakeupList>>
<</if>>
[<<moveTo "room_do_makeup_remove" "Use makeup remover to strip off your makeup (about 5 Minutes)" 300>>]<br>
<<else>>
[@@.link_locked;You lack the right equipment to fix your makeup@@]<br>
<<if setup.inPassageTag($scene.return_makeuproom, 'makeup_water')>>
[<<moveTo "room_do_makeup_remove_water" "Wash off your makeup without the aid of makeup remover (about 25 Minutes)" 1500>>]<br>
<<else>>
[@@.link_locked;With no makeup remover and no access to water you have no way to wash the makeup off right now.@@]<br>
<</if>>
<</if>>
<<if $player.makeup.template == "">>
[@@.link_locked;You can't ruin your makeup if you aren't wearing such.@@]<br>
<<else>>
[<<moveTo "room_do_makeup_ruin" "Purposefully ruin your makeup (about 5 Minutes)" 300>>]<br>
<</if>>
<</if>>
<br>
<<include thoughts_home>>
[<<moveTo $scene.return_makeuproom $scene.return_makeuproomtext 0>>]
<</if>>
</div>/*#
#desc: fix makeup
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $scene.makeuproom>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.room_do_makeup_fix_obj = setup.fixMakeup()>>
<<set $player.makeup.messed = $scene.room_do_makeup_fix_obj.newValue>>
<<set $scene.room_do_makeup_fix_diff = setup.getMakeupDifficult($player.makeup.template)>>
<<switch $scene.room_do_makeup_fix_diff>>
<<case 'easy'>>
<<set $scene.difficulty = 'insignificant'>>
<<case 'medium'>>
<<set $scene.difficulty = 'normal'>>
<<case 'hard'>>
<<set $scene.difficulty = 'very'>>
<<case 'impossible'>>
<<set $scene.difficulty = 'little'>>
<</switch>>
<<applyExperience 'makeup' $scene.room_do_makeup_fix_obj.level $scene.difficulty $INCOGNITO>>
<<updateBonusStats>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.makeuproom_image>>
<div id="invframe" class="scrolltext">
You try your best to fixed your botched makeup.
<<switch $scene.room_do_makeup_fix_diff>>
<<case 'easy'>>
Not a problem for you at all. The end result looks just like new.
<<case 'medium'>>
<<switch $scene.room_do_makeup_fix_obj.result>>
<<case 0>>
You struggle a little bit with this makeup, but you manage to fix it without much of a problem. The end result looks just like new.
<<case 1>>
You struggle a little bit with this makeup, and while the end result is not as good as a perfect version, you manage to fix some mistakes, making the end result more pleasant to look at.
<<case 2>>
You struggle a little bit with this makeup, getting too confident in your skills and messing up. Now it looks even worse then before.
<</switch>>
<<case 'hard'>>
<<switch $scene.room_do_makeup_fix_obj.result>>
<<case 0>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. Somehow you still manage to fix it. The end result looks just like new.
<<case 1>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. While the end result is not as good as a perfect version you do manage to fix some mistakes, making the end result more pleasant to look at.
<<case 2>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. As expected, you messed up, and now it looks worse then it used to.
<</switch>>
<<case 'impossible'>>
But it's already too late when you realise that you're in way over your head trying to correct this rather complicated makeup. You stare with disbelief into the mirror, gazing at the battlefield that used to be your face. You should really wash this abomination off and start anew.
<</switch>>
<br><br>
[<<moveTo "room_do_makeup" "Continue." 0>>]
</div>/*#
#desc: remove makeup with makeup remover
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $scene.makeuproom>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = "">>
<<updateBonusStats>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.makeuproom_image>>
<div id="invframe" class="scrolltext">
You use the different makeup removal products to clean off any remaining makeup from your face,
<<if $player.makeup.permanent == "">>
until there's nothing left besides your natural looks.
<<else>>
until you are back down to just your always perfect permanently applied "base layer."
<</if>>
<br><br>
[<<moveTo "room_do_makeup" "Continue." 0>>]
</div>/*#
#desc: remove makeup with water
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $scene.makeuproom>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = "">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.makeuproom_image>>
<div id="invframe" class="scrolltext">
Without the aid of makeup removal products it's a tedious task to remove all the remaining makeup from your face, and you're not even sure if you got everything. You seem to find remains of small bits of eyeliner on your face over and over again.
<<if $player.makeup.permanent != "">>
You can only hope that it does not clash with your permanent makeup "base layer."
<</if>>
<br><br>
[<<moveTo "room_do_makeup" "Continue." 0>>]
</div>/*#
#desc: apply fresh makeup
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $scene.makeuproom>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.room_do_makeup_apply_obj = setup.applyMakeup($player,$scene.room_do_makeup_apply_template)>>
<<set $player.makeup.template = $scene.room_do_makeup_apply_template>>
<<set $player.makeup.messed = $scene.room_do_makeup_apply_obj.newValue>>
<<set $scene.room_do_makeup_apply_diff = setup.getMakeupDifficult($player.makeup.template)>>
<<switch $scene.room_do_makeup_apply_diff>>
<<case 'easy'>>
<<set $scene.difficulty = 'insignificant'>>
<<case 'medium'>>
<<set $scene.difficulty = 'normal'>>
<<case 'hard'>>
<<set $scene.difficulty = 'very'>>
<<case 'impossible'>>
<<set $scene.difficulty = 'little'>>
<</switch>>
<<applyExperience 'makeup' $scene.room_do_makeup_apply_obj.level $scene.difficulty $INCOGNITO>>
<<updateBonusStats>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.makeuproom_image>>
<div id="invframe" class="scrolltext">
You try your best to put on the makeup.
<<switch $scene.room_do_makeup_apply_diff>>
<<case 'easy'>>
Easy peasy. Not a problem for you at all at your current skill level. The end result looks just like it's supposed to.
<<case 'medium'>>
<<switch $scene.room_do_makeup_apply_obj.result>>
<<case 0>>
You struggle a little bit with this makeup, but you manage to apply it without much of a problem. The end result looks just as it's supposed to be.
<<case 1>>
You struggle a little bit with this makeup and while the end result is not a perfect version, you manage to create a somewhat passable end result.
<<case 2>>
You struggle a little bit with this makeup and at the end you got too confident in your skills and mess up. It does not really look that good.
<</switch>>
<<case 'hard'>>
<<switch $scene.room_do_makeup_apply_obj.result>>
<<case 0>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. Somehow you still manage to apply it. The end result looks just as it is supposed to.
<<case 1>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. While the end result is not a perfect version, you manage to create a somewhat passable approximation.
<<case 2>>
You struggle a lot with this kind of makeup since it is way beyond your current skill level. As expected, you messed up, and transformed your face into an exhibition for Post-postmodernism.
<</switch>>
<<case 'impossible'>>
But it's already too late when you realise that you're in way over your head trying to correctly applying this rather complicated makeup. You stare with disbelief into the mirror, gazing at the battlefield that used to be your face. You should really wash this abomination off and start from anew or maybe take a picture for the local museum of arts.
<</switch>>
<br><br>
<<if $scene.forceMakeupReturn>>
[<<moveTo $scene.return_makeuproom $scene.return_makeuproomtext 0>>]
<<else>>
[<<moveTo "room_do_makeup" "Continue." 0>>]
<</if>>
</div>/*#
#desc: apply fresh makeup
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to $scene.makeuproom>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 100>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.makeuproom_image>>
<div id="invframe" class="scrolltext">
For reasons inscrutable you purposefully ruin your makeup. Congratulations, you now look like a hot mess.<br>
<br>
[<<moveTo "room_do_makeup" "Continue." 0>>]
</div>/*#
#desc: send response to drug email
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You click confirm to the company's offer
<<if $player.sec_style.body.pinkpill>>
only to get an error message.<br>
<br>
"@@.computer;We are sorry, this offer is only available to new employees who have not previously partaken in the company's drug program. Your profile indicates that you have already <<if $npc_manager.stagevalues[3].drugs_req>>been assigned<<else>>taken<</if>> drugs, if you are running low or having problems please speak with your immediate supervisor to resolve the issue.@@"<br>
<br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<<else>>
You click confirm to the company's offer and a bare couple of minutes later a drone is at your door, dropping off a small package containing half a dozen pills... and a short note advising to limit yourself to one pill per day and avoid taking with alcohol, and to speak with your supervisor for re-supply.<br>
<br>
<<printThought "Hmm... do I really want to take these?">><br>
<br>
[<<moveTo "event_drug_email_2" "Yes! Take a pill." 300 "<<set $scene.pill=true>>">>]<br>
[<<moveTo "event_drug_email_2" "Maybe save them for another time..." 60 "<<set $scene.pill=false>>>">>]
<</if>>
</div>/*#
#desc: take pink pill first time enthusiast
#status: FINISHED 0.9.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'pink_pill' 6 false true>>
<<if $scene.pill>>
<<deleteItem 'pink_pill' 1 false true>>
<<changeHorny 50>>
<<setTmpEffect 'sissypill'>>
<<set $player.sec_style.body.pinkpill = "enthusiast">>
<<if !$player.flags.atesissypill>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
>>
<<set $player.flags.atesissypill = true>>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<if $player.flags.mealplan.hormones == "lots">>
<<set $player.flags.sissypill_and_hormones = true>>
<</if>>
<</if>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.pill>>
You spend just a few moments inspecting the small pink pills <<if $fetish.sissy>>there is a small "SISSI" written on the side of each pill... but that's just an abbreviation for Social Interaction Service Syndicate Inc. You place<<else>>before placing<</if>> before placing one in your mouth. You feel it it tingle on your tongue for a moment before you swallow it.<br>
<br>
<<printThought 'Hmm... tastes faintly like bubblegum and cotton candy'>><br>
<br>
A moment later and you're already feeling a rush, and you're pretty sure it's not just the excitement of trying a new drug. Heat swells up from underneath your skin, making your whole body burn up. Your chest tingles and you feel a huge pressure building. Then you begin to shiver from cold and excitement at the same time, unable to comprehend what's happening to you. You're horny like you've never been before,
<<if setup.getItemTypeName("cage")=="">>
<<if $player.body_ref.penis>>
making your <<getWordMyPenis>> twitch and jump up and down with excitement, spurting with enthusiasm, but remaining yet hard.
<<else>>
making you drip with lust down your leg.
<</if>>
<<elseif $player.body_ref.penis>>
inside the prison of the <<=setup.getItemTypeName("cage")>> your <<getWordMyPenis>> strains and swells, dripping and spurting your excitement without the feelings of horniness abating.
<<else>>
your lust drips past your protective chastity shield and down your leg.
<</if>>
<br><br>
<<printThought "Oh my <<getWordGod>>! What is happening to me?">><br>
<br>
[<<moveTo "szene_pink_pill" 'Continue.' 30 "<<set $scene.fromEmail=true>>">>]
<<else>>
As innocuous, yet enticing, as the little pink pills seem, you decide against taking the pills immediately... after all, there's no rush. You put them away carefully and consider what to do next.<br>
<br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<</if>>
</div>/*#
#desc: approached by horse and buggy
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
Requesting a ride using your phone app you are surprised when, rather than a sleek hover taxi, a horse-drawn carriage rolls up to the curb in front of you.<br>
<br>
Tipping their hat the driver hops off and offers a hand to help you up into the carriage.<br>
<br>
"@@.npc_buggy_driver;Hello, miss, feel like riding in style?@@"<br>
<br>
[<<moveTo "event_first_horse_buggy_2" "Get on board." 180 '<<set $scene.accept=true>>'>>]<br>
[<<moveTo "event_first_horse_buggy_2" "Wait for a more normal conveyance." 300 '<<set $scene.accept=false>>'>>]
</div>/*#
#desc: ride in horse and buggy
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<addCredits `-($scene.price)`>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Buggy">>
<<else>>
<<set $player.location to "Inside an Automated Taxi Cab">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/horse_buggy_interiour.png">>
<<else>>
<<createAdvBGR "./images/locations/taxi_interior.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Accepting the <<mans npc_buggy_driver>> hand you step up into the carriage and take a seat. With a "@@.npc_buggy_driver;Hee-ya@@" the driver has the horse clopping along and you enjoy the old-fashioned sway of the suspension.<br>
<br>
Looking out the window you enjoy the slightly more leisurely pace, though it seems the driver is taking advantage of alley shortcuts to make up time.<br>
<br>
You are rolling through an alleyway when the carriage lurches to a halt and you hear some swears from the driver.<br>
<br>
[<<moveTo "event_first_horse_buggy_3" "Get out and see what's happening." 60>>]<br>
<<else>>
You shake your head. The driver looks a bit frustrated but hops back up and the horse is soon clopping away up the street.<br>
<br>
A minute or so later a cab appears to whisks you away.<br>
<br>
[<<moveTo $scene.destination "Ride the cab." 0 "<<set $scene.rideshare = true>>">>]
<</if>>
</div>/*#
#desc: horse and buggy gets stuck
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Narrow Alley">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
You step out into the alleyway to find the driver seemingly in mid argument with their horse. Noticing you they glare at the horse a final time then turn to you with a sheepish grin.<br>
<br>
"@@.npc_buggy_driver;Sorry about this, he's got a bit of a stubborn streak and has apparently decided he ain't moving until he's had a treat. I don't suppose you could keep an eye on him while I go find a bodega for an apple or three? He's a real sweetheart but gets antsy if he's alone. If you could just stand up here where he can see you, maybe stroke his forehead a bit to keep him calm?@@"<br>
<br>
[<<moveTo "event_first_horse_buggy_4" "Agree to help." 300>>]<br>
[<<moveTo $scene.destination "Decline and finish traveling to your destination on foot." 300>>]
</div>/*#
#desc: stay with horse alone
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Narrow Alley">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
The driver thanks you profusely and then rushes up the alleyway leaving you alone with the stubborn stallion.<br>
<br>
Doing as <<he npc_buggy_driver>> requested you stand at the front of the carriage and pet the horse who definitely seems to be enjoying it, nuzzling you and neighing in contentment. Your gaze wandering you find yourself gawking at a sign of more than "contentment" — his massive equine cock big, hard and starting to drip with cum.<br>
<br>
As if he noticed your attention he bumps you with his snout, pushing you towards a perfectly stacked pile of boxes on one side of the alley...<br>
<br>
<<printThought 'How far am I willing to go to keep this stallion "happy?"'>><br>
<br>
The horse neighs insistently and pushes you again.<br>
<br>
[<<moveTo "event_first_horse_buggy_5" "Time to take a ride under a horse..." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_first_horse_buggy_5" "Get out of the way before anything more can happen." 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: stay with horse, get fucked
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept || $fetish.get_raped>>
<<setThreshold 'bestiality' 'horse' 'horsecock_expert'>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' 18 'terrible' $ALONE>>
<<set $npc_buggy_driver.stage = 1>>
<</if>>
<</if>>
<<set $player.location to "Narrow Alley">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Heart racing as you completely disregard the fact that the driver will surely return in a matter of minutes you crawl up onto the boxes and expose yourself.
<<if $scene.plug != "">>
<<if setup.checkItemTag($scene.plug, ['hollow'])>>
No sooner has your plug-gaped hole been exposed than the cart lurches forward as the horse plunges into you.
<<else>>
You hear the cart lurch forward, barely having time to pull the plug out of your ass before you feel the hot, wet tip of horse-cock plunging into you.
<</if>>
<<else>>
You hear the cart lurch forward and the stallion is upon you, the wet tip of the horse-cock plunging into you.
<</if>>
<br><br>
The weight of the beast presses down on you and, despite being gentle and seemingly well-practiced, he still dwarfs you in weight and strength and you doubt you will be able to get out from under him until he's finished...<br>
<br>
<<printThought "Shit, was this really such a great idea?">><br>
<br>
[<<moveTo "event_first_horse_buggy_6" "Continue." 300>>]
<<elseif $fetish.get_raped>>
You try to move out of the way but you are too slow, the horse lunging forward to send you sprawling onto the stacked boxes. Before you can recover he is on top of you,
<<if $scene.plug != "">>
<<if setup.checkItemTag($scene.plug, ['hollow'])>>
his thick cock somehow weaving past your clothing to plunge into the hollow of your plug.
<<else>>
his hard cock not just navigating past your clothing, but forcing your plug to pop free to clear the way for him to plunge into your still-gaping ass.
<</if>>
<<else>>
thick cock pushing your clothing aside and then plunging into your hole.
<</if>>
<br><br>
[<<moveTo "event_first_horse_buggy_6" "Continue." 300>>]
<<else>>
You step away, thankful the driver set the brake as the weight of the immobile cart seems sufficient to restrain the enthusiastic stallion. A minute later the driver reappears with a bag of apples, rushing past and feeding one to the rowdy animal by hand.<br>
<br>
"@@.npc_buggy_driver;Woah there, boy, got your treat right here,@@" <<he npc_buggy_driver>> states before glaring in your direction. "@@.npc_buggy_driver;What did you do to him? I told you to just keep him happy until I got back, it was only a few minutes!@@"<br>
<br>
You blush and mumble an apology but, fortunately, the stallion is soon calmed and you are helped back up into the carriage and brought to your destination.<br>
<br>
[<<moveTo $scene.destination "Arrive." 300>>]
<</if>>
</div>/*#
#desc: stay with horse, horse cums
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.dirty += 50>>
<<alterStatAllWorn 'dirty' '["add",50]'>>
<<alterStatAllWorn 'cumsoaked' '["add",100]'>>
<<applyExperience 'cum' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Narrow Alley">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") > 15>>
While the stallion's thickness is well within your capacity his length is something else. Deeper and deeper he plunges as you feel organs pushed out of the way and half imagine you're about to enjoy a throat-fucking starting from the other direction. The stallion, eager to explore every centimetre of your depth, doesn't stop until his pair of massive balls are slapping against you. With every mammoth thrust he nearly lifts you off the ground as your body struggles to contain the massive intruder.
<<else>>
Even for one of your skills the stallion's cock is too big, after an aborted attempt to force more than the flared head into your ass he retreats slightly to begin sawing between your cheeks.
<</if>>
<br><br>
<<if $scene.accept>>
Your body is little more than a sheath for his big, glorious cock and you go limp, drooling as each pounding thrust makes it harder to think about anything other than becoming a slave to horse cock.
<<else>>
Even could you get out from under his weight you'd be risking even worse to get past the hooves stomping against the hard pavement. Pinned and pounded you have no choice but to lay there and take it as the stallion unleashes his animalistic lusts.
<</if>>
<br><br>
One of the most striking facts is how hot his cock feels compared to your body, a thick, almost molten rod drilling into you, pinning you down, and then exploding with cum.<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
He cums like a firehose flooding your insides, what feels like a gallon of hot horse jizm pouring out of you and pooling under your body as you collapse and slide free, too overwhelmed by the hard dicking you've just survived to do anything but lay there in a pool of cum as he spurts a final few blasts over your prone body.
<<else>>
In thick, creamy blasts cum fountains over your body, so much volume that it starts to pool under you, a tiny lake of horse jizm that you lie in, too exhausted to move.
<</if>>
<br><br>
Trying to catch your breath as your senses are overwhelmed with the spicy scent of cum you look to one side to see a pair of shoes...<br>
<br>
"@@.npc_buggy_driver;My god...@@"<br>
<br>
[<<moveTo "event_first_horse_buggy_7" "Continue." 300>>]
</div>/*#
#desc: stay with horse, driver returns
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Narrow Alley">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
You can't even imagine what the driver must have thought when <<he npc_buggy_driver>> first laid eyes on you lying there in a pool of cum, or maybe <<he npc_buggy_driver>> was there earlier to watch you getting ass-fucked by a quadruped? You shudder in embarrassment even as <<he npc_buggy_driver>> reaches under <<his npc_buggy_driver>> steed to help you to your feet.<br>
<br>
"@@.npc_buggy_driver;My God, I can't believe you — are you alright, Miss?@@"<br>
<br>
You must have nodded as <<he npc_buggy_driver>> lets out a sigh of relief. "@@.npc_buggy_driver;Oh, I'm so sorry, he usually isn't like this.@@" The <<man npc_buggy_driver>> helps fix your clothes<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> as you realise you are somehow clutching your plug in one hand<</if>>. Your ID falls to the ground and <<he npc_buggy_driver>> hands it back to you after glancing at it.<br>
<br>
"@@.npc_buggy_driver;Miss <<=$player.last_name>>? Again, I'm sorry about what just happened, here, let me take you home, free of charge.@@"<br>
<br>
Staggering as you drip cum with each step you are helped up into the carriage and taken home, the <<man npc_buggy_driver>> helping you to your apartment door before hurrying away.<br>
<br>
[<<moveTo "room_foyer" "Home" 180>>]
</div>/*#
#desc: talk to carriage driver, offered "special" option
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/horse_buggy.png">>
<div id="invframe" class="scrolltext">
You approach the horse and carriage, noticing that <<=$npc_buggy_driver.horse_name>> is wearing a fancy caparison that extends almost to his ankles, the shiny fabric decorated with an advertisement announcing the "the most fun-filled ride in town!" You stop next to the carriage and the driver notices you with a smile.<br>
<br>
"@@.npc_buggy_driver;Ah, Good to see you!, And thank you again for taking such good care with <<=$npc_buggy_driver.horse_name>>. Actually...@@" <<He npc_buggy_driver>> grins and leans over towards you. "@@.npc_buggy_driver;I have a special proposal that I would like to offer you... I think it'd be right up your alley... if you know what I mean.@@"<br>
<br>
[<<moveTo 'event_horse_buggy_special_unlock_2' 'Listen to <<his npc_buggy_driver>> offer.' 300 "<<set $scene.offer=true>>">>]<br>
[<<moveTo 'event_horse_buggy_special_unlock_2' "Say you're too busy right now." 300 "<<set $scene.offer=false>>">>]
</div>/*#
#desc: talk to carriage driver, offered "special" option
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.offer>>
<<set $npc_buggy_driver.stage = 3>>
<<else>>
<<set $npc_buggy_driver.stage = 2>>
<</if>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/horse_buggy.png">>
<div id="invframe" class="scrolltext">
<<if $scene.offer>>
You ask what <<he npc_buggy_driver>> has in mind and <<he npc_buggy_driver>> hops down off the carriage with a grin.<br>
<br>
"@@.npc_buggy_driver;So it turns out that your special attention really helped <<=$npc_buggy_driver.horse_name>> with his anxiety issues and, after a bit of research, well... I picked him up a new harness.@@"<br>
<br>
Reaching down the <<man npc_buggy_driver>> lifts the skirt of the caparison to reveal a sight that makes you
<<if setup.getTotalValue("bestiality") > 7>>
<<if setup.getTotalValue("bestiality") > 10>>
gasp and then immediately smile.
<<else>>
gasp, but stare in interest.
<</if>>
<<else>>
gasp.
<</if>>
Suspended below <<=$npc_buggy_driver.horse_name>>'s belly — and impaled on his mighty member, is a human figure, wide leather cuffs around its legs, waist and arms holding it in a frog-tie, face-down position, its head and face partially obscured by tinted glasses and a mouth and nose-covering mask.<br>
<br>
"@@.npc_buggy_driver;Of course this is a dummy to help <<=$npc_buggy_driver.horse_name>> get used to things, it helps a little with his nerves but I estimate a real, live partner taking him for a "ride" will have him much more excited. The mask is to protect from road debris, as well as give you something nice and firm to bite down on, and keep you from calling out and making other people on the road jealous!@@" The <<man npc_buggy_driver>> laughs and lets the skirt drop, but you can't get the image of what you just saw out of your head.<br>
<br>
"@@.npc_buggy_driver;So, anyway. If you are in the mood to enjoy your journey more than the destination, well... what with harness time and such I can't promise that I'll get you where you're going particularly fast, but I'll do it for free and you'll surely have a time on the way. Plus,@@" <<he npc_buggy_driver>> adds, giving <<=$npc_buggy_driver.horse_name>> a pat on the haunch. "@@.npc_buggy_driver;You'll be making this fellow VERY happy... and who doesn't like a happy horse?@@"<br>
<br>
You bite your lip, trying to imagine what it would be like, on a public road, yet hidden from view, <<=$npc_buggy_driver.horse_name>>'s hot cock buried inside of your ass, every step and bump of the road making it shift and roil up your insides...<br>
<br>
[<<moveTo "event_horse_buggy_special_first_1" "Tell <<him npc_buggy_driver>> you want to go for a ride right now." 300>>]<br>
<<if setup.getTotalValue("bestiality") > 10 && setup.getTotalValue("bimbofication") >= 15>>
[@@.link_locked;You are too much of a horse-cock-loving bimbo slut to pass up this opportunity.@@]
<<else>>
[<<moveTo "event_horse_buggy_special_unlock_2" "Say you'll keep <<his npc_buggy_driver>> offer in mind for later and walk away." 60 "<<set $scene.offer = false>>">>]
<</if>>
<<else>>
You reply that you're a bit busy right now. The <<man npc_buggy_driver>> shrugs. "@@.npc_buggy_driver;Fair enough, I suppose we should be rolling on as well, hee-ya!@@" <<He npc_buggy_driver>> clicks at <<=$npc_buggy_driver.horse_name>> and the carriage slowly rolls up the street.<br>
<br>
[<<moveTo "room_citymap" "Continue." 60>>]
<</if>>
</div>/*#
#desc: carriage first time "special" option get in position
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<useClothSetPush 'tmp'>>
<<set $scene.legsId = setup.getItemFromType('legwear')>>
<<if $scene.legsId != "">>
<<removeItem $scene.legsId true>>
<</if>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<if $scene.panties != "">>
<<removeItem $scene.panties true>>
<</if>>
<<applyExperience 'anal' 18 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 10 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("bestiality") > 7>>
<<if setup.getTotalValue("bestiality") > 10>>
Breathless with excited anticipation you tell the carriage driver that you would love to "go for a ride."
<<else>>
Breathless with anticipation you tell the carriage driver that you would love to "go for a ride."
<</if>>
<<else>>
Despite your fears you tell the carriage driver that you would love to "go for a ride."
<</if>>
<br><br>
The <<man npc_buggy_driver>> grins. "@@.npc_buggy_driver;Wonderful!, I knew you were a real animal lover, come on, meet me in the alleyway and I will get you harnessed up.@@"<br>
<br>
You hurry ahead, joined a minute later by <<=$npc_buggy_driver.horse_name>> and the carriage.<br>
<br>
Raising the skirt out of the way <<he npc_buggy_driver>> unbuckles the mannequin while you partially strip<<if $scene.removePlug>> and remove your plug to clear the way<</if>>.<br>
<br>
Once <<he npc_buggy_driver>> has the mannequin stowed in the carriage the carriage driver has you crawl under and bend over. You bite your lip and moan as <<=$npc_buggy_driver.horse_name>>'s thick cock plunges into your ass. It is as big and hot as you remember, the frills teasing your hole before its steadily increasing girth slides deeper and deeper.<br>
<br>
Your mouth is wide as you try to catch your breath and <<he npc_buggy_driver>> takes the opportunity to shove a large gag between your lips. Buckled tight it is followed up with a blindfold that has you feeling helpless and even more sensitive to the appendage filling your ass.<br>
<br>
"@@.npc_buggy_driver;There we go, nice and calm,@@" <<he npc_buggy_driver>> states softly — whether to you or to the horse, you aren't sure.<br>
<br>
Unable to see, and scared to move, you remain motionless as <<he npc_buggy_driver>> straps a wide belt around your waist, lifting you off the ground and then following up by folding your legs and cuffing your wrists until you are completely suspended, swaying slightly with a huge, hard horse-cock in your ass.<br>
<br>
"@@.npc_buggy_driver;Beautiful! You fucking slut.@@" <<He npc_buggy_driver>> states, <<his npc_buggy_driver>> words hammering home the true depravity of what you've just committed to — and the fact that you are now totally stuck until <<he npc_buggy_driver>> decides to free you.<br>
<br>
You feel cloth fall against your arm as the caparison is hung back in place.<br>
<br>
<<if setup.getTotalValue("bimbofication") == 20 && setup.getTotalValue("humiliation") == 20>>
<<printThought "Damn... if only I could parade around like this on full public display...">>
<<elseif setup.getTotalValue("bimbofication") >= 15 && setup.getTotalValue("humiliation") >= 15>>
<<printThought "Good thing nobody can see me, that would be so embarrassing!">>
<<else>>
<<printThought "At least nobody will see me like this...">>
<</if>>
<br><br>
You hear footfalls as the <<man npc_buggy_driver>> walks away, then the creak of the carriage before <<=$npc_buggy_driver.horse_name>> takes a step forward...<br>
<br>
[<<moveTo "event_horse_buggy_special_first_2" "It's moving!" 1800>>]
</div>/*#
#desc: carriage first time "special" option ride
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'unbelievable' $INCOGNITO>>
<<applyExperience 'bestiality' 10 'unbelievable' $INCOGNITO>>
<<applyExperience 'humiliation' 13 'very' $INCOGNITO>>
<</if>>
<<set $player.location to "Impaled on Horse Cock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/underhorse.png">>
<div id="invframe" class="scrolltext">
The first step the horse takes causes you to sway, the massive cock impaling your ass shifting and making you moan into your gag. <<=$npc_buggy_driver.horse_name>> twitches, clearly enjoying his human cock-sleeve as he speeds into a trot, your body swaying back and forth to cause him to thrust slightly, probing you as deep as he is spreading your wide.<br>
<br>
<<printThought "Fuuuuuck">><br>
<br>
You hear the sound of his hoofbeats change as he moves out of the alleyway and onto the street, the sound of the city surrounding you with nothing but thin fabric concealing your depraved situation from the world.<br>
<br>
<<printThought "Why does this feel so gooood">><br>
<br>
You groan, straining against your bonds but unable to escape the ever-present dong filling you, fucking you, reminding you with every shift and step that you are a toy for a massive, muscular beast. Even more humiliating is that you willingly chose this. You bent over like the "slut" the carriage driver described you as, waiting patiently as <<he npc_buggy_driver>> removed your every freedom and now... now you can do nothing but endure, horse-cock pounding into you, any cry for help stifled by your gag, blind and bound and utterly helpless, a slave in nearly every sense of the word... a slave, to horse cock.<br>
<br>
[<<moveTo "event_horse_buggy_special_first_3" 'Keep "riding."' 300>>]
</div>/*#
#desc: finish carriage first time "special" option ride
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'cum' 16 'very' $SEEN_STRANGER>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "Impaled on Horse Cock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/underhorse.png">>
<div id="invframe" class="scrolltext">
Perhaps the most startling thing about your "ride" is that you do not cum. Even as intense as it feels to have such a massive <<getWordPenis true>> inside of you, scraping your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> and spreading you wide, as humiliatingly arousing as it is to be in this situation your climax remains out of reach.<br>
<br>
The same cannot be said for <<=$npc_buggy_driver.horse_name>>. After what feels like a particularly energetic burst of speed your ass is flooded with thick horse semen, the force of his climax pushing you forward only for you to swing back making him stir you up and forcing some of his load to leak out past the side of his thick cock. You shudder, imagining your belly strain against the waist-strap as you struggle to contain his load. You wonder if anyone on the street recognises what the wet trail you are leaving behind is really made of...<br>
<br>
Lurching to a halt you almost jump when you feel the caparison pulled away.<br>
<br>
<<if setup.getTotalValue("bimbofication") == 20 && setup.getTotalValue("humiliation") == 20>>
<<printThought "Yes! Show me to the world!">>
<<elseif setup.getTotalValue("bimbofication") >= 15 && setup.getTotalValue("humiliation") >= 15>>
<<printThought "Oh <<getWordGod>>! Can anyone see me?">>
<<else>>
<<printThought "Oh no! Please don't let anyone see me!">>
<</if>>
<br><br>
A strap is removed and one of your legs falls to the ground. The same is repeated on the other side and then your arms are freed, strong hands supporting you as the waist-belt is unbuckled and you are pulled off of <<=$npc_buggy_driver.horse_name>>'s still-hard cock, the wet tip slapping your thigh as you stagger out.<br>
<br>
Your gag is removed amidst a stream of drool, the blindfold the last piece to go leaving you to blink up at the carriage driver, your gaze unfocused, mouth agape.<br>
<br>
"@@.npc_buggy_driver;Well, well, it seems like you quite enjoyed your ride! And I know <<=$npc_buggy_driver.horse_name>> did as well! Why, seldom have I seen him show so much energetic enthusiasm for his work!@@"<br>
<br>
<<if $scene.removePlug>>
The <<man npc_buggy_driver>> hands you back your plug and you reflexively shove it back in your ass to hopefully stem the tide of any more of <<=$npc_buggy_driver.horse_name>>'s seed leaking out of you.<br>
<br>
<</if>>
Helped back into your clothes you start to catch your breath, still walking a bit bow-legged and awkward as you wonder how long it will take to recover from the ravishing you just experienced.<br>
<br>
"@@.npc_buggy_driver;Thanks again,@@" the <<man npc_buggy_driver>> states with a grin. "@@.npc_buggy_driver;You forgot to tell me a destination so I just brought you back to where you started — in the future feel free to give me a ring if you would like to take another ride.@@" You note the number on the side of the caparison that had been your concealment and you punch it into your phone. "@@.npc_buggy_driver;I can't promise alacrity but it will make the journey to wherever you are going one you are unlikely to forget!@@"<br>
<br>
Hopping back up onto the carriage the <<man npc_buggy_driver>> spurs <<=$npc_buggy_driver.horse_name>> back into motion. "@@.npc_buggy_driver;See you around, slut!@@" <<He npc_buggy_driver>> calls back with a laugh. Your gut clenches — not just because of its frothy payload, but also at the reminder of just what a depraved, humiliating thing you have just done.<br>
<br>
[<<moveTo "room_citymap" "Be on your way." 60 '<<if $scene.legsId!="">><<wearItem $scene.legsId true>><</if>>'>>]
</div>/*#
#desc: carriage "special" option transport
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.triggeredEvent && $fetish.bestiality_hard && $player.timebased.defaultTravel == "horse" && $now.getUTCHours() >= 16 &&
setup.hasFreeTime($now, $player, $currentTasks, 10100) && setup.getTotalValue("anal") > 15 &&
setup.getTotalValue("bestiality") >= 10 && setup.hasThreshold('bestiality', 'horse', 'horsecock_expert') &&
$npc_technician.relationship.kink_indulge.horse && (!State.hasPlayed("event_carriage_technician_1") || !State.hasPlayed("event_carriage_technician_4") && random(1,10) == 1)>>
<<initRoom>>
<<moveTo "event_carriage_technician_1">>
<<elseif !$scene.triggeredEvent && $fetish.bestiality_hard && $player.timebased.defaultTravel == "horse" && !State.hasPlayed("event_ex_carriage_1") && random(1,10) == 1>>
<<initRoom>>
<<moveTo "event_ex_carriage_1">>
<<else>>
<<applyExperience 'anal' 18 'unbelievable' $INCOGNITO>>
<<applyExperience 'bestiality' 10 'unbelievable' $INCOGNITO>>
<<applyExperience 'humiliation' 15 'very' $INCOGNITO>>
<<applyExperience 'bondage' 13 'very' $INCOGNITO>>
<<applyExperience 'whoring' 5 'little' $INCOGNITO>>
<<set _best = setup.getTotalValue("bestiality")>>
<<changeHorny _best>>
<<set _credits = random(10,30)>>
<<addCredits _credits>>
<</if>>
<</if>>
<<set $player.location to "Impaled on Horse Cock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/underhorse.png">>
<div id="invframe" class="scrolltext">
You call the carriage driver and <<he npc_buggy_driver>> arrives in but a few minutes. A few minutes after that and you are, once again, mounted beneath <<=$npc_buggy_driver.horse_name>>, the hot horse cock filling you deep as you shudder and moan, feeling every step of your journey.<br>
<br>
As if at a signal <<=$npc_buggy_driver.horse_name>> cums just before your arrive at your destination,
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
leaving you to hope the plug in your ass proves somehow sufficient to keep you from leaking all over the place.
<<else>>
leaving you to shove the plug back into your ass in hopes of holding back the tide.
<</if>>
<<else>>
leaving you with no choice but to clench your ass once you are back on your feet lest the thick goop stain its way down your leg.
<</if>>
<br><br>
"@@.npc_buggy_driver;Hope you enjoyed the trip!@@" The <<man npc_buggy_driver>> states with a smile before passing you a handful of credits. "@@.npc_buggy_driver;Your share of the tip — I managed to pick up another rider on the way and they were quite congratulatory of how smooth and gentle <<=$npc_buggy_driver.horse_name>> trotted. I had to suppress a laugh as I am sure nobody would call YOUR seat smooth!@@"<br>
<br>
Being paid somehow makes things even more humiliating, but you pocket the credits nonetheless and try to refocus on your destination.<br>
<br>
<<printThought "What was I coming here for? It's so hard to think when you've just had a foot of horse-cock up your ass...">><br>
<br>
[<<moveTo $scene.destination "Step towards your destination." 0 "<<set $scene.horseride = true>>">>]
</div>/*#
#desc: fire alarm goes off while sleeping
#status: RELEASED 0.8.7.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'sleep'>>
<<set $player.flags.last_fire_alarm = $now>>
<<if $scene.bondage_level > 0 && $npc_landlord.stage > 1>>
<<addItem "bed_restraints_detached">>
<<wearItem "bed_restraints_detached" true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.bondage_level > 0 && $npc_landlord.stage > 1>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_landlord")>>
<<else>>
<<createAdvBGR setup.getBedroomImage()>>
<</if>>
<div id="invframe" class="scrolltext">
You are awoken by the loud blaring of a fire alarm.<br>
<br>
<<printThought "Shit, this better not be a drill...">><br>
<br>
You recall that regulations state that when the alarm goes off you are to exit the building and wait in a designated area until the fire department clears things...<br>
<br>
<<if $scene.bondage_level > 0>>
Unfortunately your current sleeping arrangements means you can do no such thing, bound as you are to your bed, secured in place until morning.<br>
<br>
<<if $npc_landlord.stage > 1>>
As the alarm continues to sound you get increasingly concerned if it isn't a drill.<br>
<br>
<<printThought "I can just see the headline: hot secretary found bound in their bed after apartment fire... wait... why did I make that a pun?">><br>
<br>
Testing your bonds you find them to be as secure as they were designed to be, but your panic starts to rise as you thrash in frustration, only to be surprised when you look up to find that you are no longer alone.<br>
<br>
"@@.npc_landlord;Dios, mio, <<callPlayer "npc_landlord">>!@@" <<=setup.getNpcName("npc_landlord","first")>> states looking down at you in awe. "@@.npc_landlord;I no see you downstairs and come looking to see if you safe and I find...@@" <<He npc_landlord>> shakes <<his npc_landlord>> head in surprise and sets to work freeing you from the bed. "@@.npc_landlord;As hot as this is well... it not quite safe, no?@@"<br>
<br>
You don't really have a response, but <<he npc_landlord>> frees you from the bed... but not from the bondage, your wrists and ankles remaining cuffs as <<he npc_landlord>> merely ties off the straps!<br>
<br>
"@@.npc_landlord;I no have way to detach right now, besides, you like the bondage so much, I think, why leave you wanting, hmm?@@" You blush as <<he npc_landlord>> wraps you in a blanket and then <<he npc_landlord>> scoops you into <<his npc_landlord>> arms before carrying you out of the apartment.<br>
<br>
<<if $npc_dog.stage > 0 || $npc_cat.stage > 0>>
"@@.npc_landlord;You no worry about your furry <<if $npc_dog.stage > 0 && $npc_cat.stage > 0>>friends<<else>>friend<</if>>,@@" <<he npc_landlord>> adds, "@@.npc_landlord;the building has a special pet evacuation drone protocol that already have them out, they be back once it safe.@@"<br>
<br>
<</if>>
<<if $npc_chuck.stage <= 1>>
On the way out <<=setup.getNpcName("npc_landlord","first")>> grabs <<=setup.getNpcName('npc_chuck', 'suffix')>>. "@@.npc_landlord;I take care for you, okay? You not exactly have hands free to carry.@@"
<<else>>
You glance at <<=setup.getNpcName('npc_chuck', 'suffix')>> as you pass, too large to move, at this point, <<=setup.getNpcName("npc_landlord","first")>> has thrown a large fire blanket over the leafy friend... which you suppose is about the best that can be done. Fortunately modern buildings are pretty close to fire-proof, so chances are it's a false alarm and everything will be fine.
<</if>>
<br><br>
[<<moveTo "event_fire_alarm_2_wait" "Continue." 300>>]
<<else>>
A bit worried if it ISN'T a drill you let out a sigh of relief when the alarm stops. After a few minutes you relax in your bonds and slowly drift back to sleep.<br>
<br>
<<printThought "I knew it was a false alarm...">><br>
<br>
[<<moveTo "room_dreams" "Back to sleep." 0 "<<startSleep $player $scene>>">>]
<</if>>
<<else>>
<<set _shoes = setup.getItemFromType("shoes")>>
<<if setup.checkOutsideDecency()>>
<<if setup.checkItemTypeWorn("shoes") && setup.checkItemTypeTag('shoes', ['bedheels']) && $inventory[_shoes].status.lock>>
[<<moveTo "event_fire_alarm_2" "Oh no, my bed heels are locked on! Guess I'm stuck wearing them downstairs..." 1800>>]<br>
<<else>>
[<<moveTo "event_fire_alarm_2" "Head downstairs." 1800>>]<br>
<</if>>
<<else>>
<<if $player.indecent >= 90>>
<<printThought "I should probably take a moment to get dressed...">><br>
<br>
[<<moveTo "event_fire_alarm_1_change" "Take a moment to get changed." 300>>]<br>
<</if>>
<<if setup.checkItemTypeWorn("shoes") && setup.checkItemTypeTag('shoes', ['bedheels']) && $inventory[_shoes].status.lock>>
[<<moveTo "event_fire_alarm_2" "Oh no, my bed heels are locked on! Guess I'm stuck wearing them downstairs..." 1800>>]<br>
<<else>>
[<<moveTo "event_fire_alarm_2" "Go down wearing your sleep clothes." 1800>>]<br>
<</if>>
<</if>>
[<<moveTo "event_fire_alarm_2_wait" "Screw leaving your apartment, just wait things out." 300>>]
<</if>>
</div>/*#
#desc: fire alarm - change clothes
#status: RELEASED 0.8.7.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You stand in your apartment with the fire alarm blaring, you need to hurry up and head downstairs to the evacuation area.<br>
<br>
<<set _shoes = setup.getItemFromType("shoes")>>
<<if setup.checkOutsideDecency()>>
<<if setup.checkItemTypeWorn("shoes") && setup.checkItemTypeTag('shoes', ['bedheels']) && $inventory[_shoes].status.lock>>
[<<moveTo "event_fire_alarm_2" "Oh no, my bed heels are locked on! Guess I'm stuck wearing them downstairs..." 1800>>]<br>
<<else>>
[<<moveTo "event_fire_alarm_2" "Head downstairs." 1800>>]<br>
<</if>>
<<else>>
<<if $player.indecent >= 90>>
<<printThought "I don't smell smoke, so it should be safe to take a moment to put something on before I go outside...">><br>
<br>
<</if>>
<<if setup.checkItemTypeWorn("shoes") && setup.checkItemTypeTag('shoes', ['bedheels']) && $inventory[_shoes].status.lock>>
[<<moveTo "event_fire_alarm_2" "Oh no, my bed heels are locked on! Guess I'm stuck wearing them downstairs..." 1800>>]<br>
<<else>>
[<<moveTo "event_fire_alarm_2" "Go down wearing your sleep clothes." 1800>>]<br>
<</if>>
<</if>>
[<<moveTo "event_fire_alarm_2_wait" "Screw leaving your apartment, just wait things out." 1800>>]
</div>/*#
#desc: fire alarm - landlord fetches you
#status: RELEASED 0.8.7.0
#*/
<<set $player.location to "Empty Lot">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_landlord.stage > 1>>
<<addItem "blanket_drape">>
<<wearItem "blanket_drape" true>>
<<if $npc_landlord.stage >= 6 && $scene.bondage_level > 0 && $fetish.pet_play>>
<<set _nextDate = setup.getNextDayOfWeek($now, 2, 20, 0, false)>>
<<addEvent 'landlord_bitchsuit_invite' _nextDate>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_landlord.stage > 1>>
<<createAdvBGR "./images/locations/emptylot.png" setup.charImage("npc_landlord")>>
<<else>>
<<createAdvBGR "./images/locations/emptylot.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_landlord.stage > 1>>
<<if $scene.bondage_level > 0>>
Carried in <<=ps(setup.getNpcName("npc_landlord","first"))>> arms you are brought down to the designated evacuation area where <<he npc_landlord>> gently places you down. You teeter slightly as you find your balance<<if setup.checkItemTypeTag('shoes', ['bedheels'])>> atop your towering heels<</if>>, your bondage hidden by the blanket wrapped around your body.<br>
<br>
"@@.npc_landlord;Alright, <<callPlayer "npc_landlord">>. I need to check on the rest of the building, I'll be back once things are safe, just stay tight!@@"<br>
<br>
You suppress a groan at <<his npc_landlord>> horrible pun, your heart racing at your predicament as you stand helplessly bound mere feet away from oblivious neighbors...<br>
<br>
[<<moveTo "event_fire_alarm_3" "Wait." 300>>]
<<else>>
The fire alarm is so loud you don't realise someone has entered the apartment until <<=setup.getNpcName("npc_landlord","first")>> barges in on you.<br>
<br>
"@@.npc_landlord;<<callPlayer "npc_landlord">>! The building is on fire, come we must go to safety!@@"<br>
<br>
Rushing to your bedside <<he npc_landlord>> scoops you up in <<his npc_landlord>> arms, easily carrying you out of the apartment.<br>
<br>
As romantic as it is to be cradled in <<his npc_landlord>> strong arms you immediately feel cold, and... exposed when you arrive outside and find yourself with the rest of the apartment denizens. Realising your discomfort <<=setup.getNpcName("npc_landlord","first")>> places you back on your feet and finds you a large blanket to drape over your shoulders, holding you close for additional warmth.<br>
<br>
You catch your breath and start to notice the looks from your neighbors as they glance over at you and <<=setup.getNpcName("npc_landlord","first")>> with <<his npc_landlord>> arms around you.<br>
<br>
After about half an hour a fire warden calls out that things are safe and that you may all return to your apartments. You almost wish <<=setup.getNpcName("npc_landlord","first")>> would carry you back, but <<he npc_landlord>> merely walks you to the elevator before bidding you good-night; you may be on your way back to bed, but <<he npc_landlord>> apparently has work to attend to.<br>
<br>
[<<moveTo "event_fire_alarm_3_landlord_kiss" "Give <<him npc_landlord>> a kiss for luck." 300>>]<br>
[<<moveTo "room_dreams" "Bid <<him npc_landlord>> goodnight and head back to bed." 300 "<<useClothSetPop 'sleep'>>">>]
<</if>>
<<else>>
After a few minutes the alarm finally stops blaring and you are able to roll over and get back to sleep.<br>
<br>
<<printThought "I knew it was a false alarm...">><br>
<br>
[<<moveTo "room_dreams" "Back to sleep." 0 "<<startSleep $player $scene>>">>]
<</if>>
</div>/*#
#desc: fire alarm - return to room, landlord kiss goodnight
#status: RELEASED 0.8.7.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_landlord' 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You lean in for a kiss, giving <<=setup.getNpcName("npc_landlord","first")>> a peck on the cheek that has <<him npc_landlord>> blushing and smiling.<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>. You make this <<man npc_landlord>> so happy, thank you for the favour and I will see you later!@@"<br>
<br>
You wave goodbye as the elevator doors close and you zip back up to your flat.<br>
<br>
[<<moveTo "room_dreams" "Go back to sleep." 0 "<<useClothSetPop 'sleep'>><<startSleep $player $scene>>">>]
</div>/*#
#desc: fire alarm - wait outside
#status: RELEASED 0.8.7.0
#*/
<<set $player.location to "Empty Lot">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkNaked()>>
<<set $scene.outfit = "naked">>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<<elseif $player.body.breastsize[0] > 0 && setup.isBodySlotVisible("tits") || setup.isBodySlotVisible("crotch")>>
<<set $scene.outfit = "exposed">>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<<elseif setup.checkVisibleClothingTag('milker') > 0>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<set $scene.outfit = "milking">>
<<elseif setup.checkItemTypeWorn('bra') && setup.checkItemVisible(setup.getItemFromType("bra")) || setup.checkItemTypeWorn('cage') && setup.checkItemVisible(setup.getItemFromType("cage")) || setup.checkItemTypeWorn('panties') && setup.checkItemVisible(setup.getItemFromType("panties"))>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<<set $scene.outfit = "underthings">>
<<elseif setup.checkSleepWear() != "not_sleepwear">>
<<if setup.analyzeWornTags(['female','male']) == "male">>
<<set $scene.outfit = "sleep_male">>
<<elseif setup.analyzeWornTags(['female','male']) == "female">>
<<set $scene.outfit = "sleep_fem">>
<<else>>
<<set $scene.outfit = "UNEXPECTEDSLEEP">>
<</if>>
<<elseif setup.checkVisibleClothingTag('sissy') > 50>>
<<set $scene.outfit = "sissy">>
<<elseif setup.checkVisibleClothingTag('slutty') > 50>>
<<set $scene.outfit = "slut">>
<<else>>
<<set $scene.outfit = "other">>
<</if>>
<<if $npc_chuck.stage <= 1>>
<<addItem "chuck_pot">>
<</if>>
<<if ['naked', 'exposed', 'underthings', 'milking'].includes($scene.outfit)>>
<<addItem "blanket_drape">>
<<wearItem "blanket_drape" true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/emptylot.png">>
<div id="invframe" class="scrolltext">
With the fire alarm blaring at a deafening pitch, you
<<if $npc_dog.stage > 0 && $npc_cat.stage > 0>>
gather your pets,
<<elseif $npc_dog.stage > 0>>
grab <<=setup.getNpcName("npc_dog","first")>>,
<<elseif $npc_cat.stage > 0>>
grab <<=setup.getNpcName("npc_cat","first")>>,
<</if>>
<<if $npc_chuck.stage <= 1>>scoop up your friend<<else>>send positive vibes towards your too-large-to-transport friend <<=setup.getNpcName('npc_chuck', 'suffix')>><<if $npc_dog.stage > 0 || $npc_cat.stage > 0>>,<</if>><</if>> and rush downstairs
<<switch $scene.outfit>>
<<case 'naked' 'exposed' 'milking' 'underthings'>>
<<if $scene.outfit == 'naked'>>
only to immediately regret your decision as you step out into the cold night air, your bare skin breaking into goose-bumps as you start shivering.
<<elseif $scene.outfit == 'exposed'>>
with your
<<if $player.body.breastsize[0] > 0 && setup.isBodySlotVisible("tits") && setup.isBodySlotVisible("crotch")>>
breasts and crotch
<<elseif $player.body.breastsize[0] > 0 && setup.isBodySlotVisible("tits")>>
breasts
<<else>>
unmentionables
<</if>>
exposed. You shiver, both from the cold night air, and from embarrassment at being so exposed.
<<elseif $scene.outfit == 'milking'>>
with your milking devices on display. You blush with embarrassment, wishing you'd thought to do more than merely un-hook yourself before fleeing your flat.
<<elseif $scene.outfit == 'underthings'>>
flashing your underwear. You shiver, both from the cold night air, and from embarrassment at being so exposed.
<<else>>
ERROR: unexpected scene.outfit <<=$scene.outfit>>
<</if>>
<br><br>
Fortunately, a <<if $options.fem_all_women>>fire-woman<<else>>fireman, well, technically a fire-woman, you realise,<</if>> is there to drape a heavy blanket over your shoulders. Broad-shouldered and a good head taller than you she smiles down at you as you blush and thank her. Having confirmed that you're alright she motions you along to the evacuation area and then departs to continue with her duties.<br>
<br>
You glance around at your fellow evacuees, all of you bleary eyed and obviously tired as you wait for the fire department to give the all clear.<br>
<br>
[<<moveTo "event_fire_alarm_3" "Wait." 1800>>]
<<case 'sleep_male'>>
dressed in your pyjamas you attract only cursory attention, milling around with the other denizens of the building until you get the all clear from the fire department to head back to your apartments. You return to your flat and head to bed.<br>
<br>
[<<moveTo "room_dreams" "Sleep." 0 "<<useClothSetPop 'sleep'>><<startSleep $player $scene>>">>]
<<case 'sleep_fem'>>
dressed in your cute feminine sleeping attire. You stand with other drowsy apartment-dwellers as the building evacuates, all of you bleary eyed and obviously tired as you wait for the fire department to give the all clear.<br>
<br>
[<<moveTo "event_fire_alarm_3" "Wait." 1800>>]
<<case 'sissy'>>
dressed in a cute, <<if $fetish.sissy>>sissy<<else>>girly<</if>> outfit. Your attire attracts more than a few looks as you stand waiting for the fire department to give the all clear.<br>
<br>
[<<moveTo "event_fire_alarm_3" "Wait." 1800>>]
<<case 'slut'>>
dressed like a slut. You attract quite a few stares. You can easily guess what they're thinking as to what "business" you were up to before the alarm went off. Finding a comfortable place to stand you wait for the fire department to give the all clear.<br>
<br>
[<<moveTo "event_fire_alarm_3" "Wait." 1800>>]
<<case 'other'>>
fortunately you're dressed so the chilly night air doesn't bother you as you stand around waiting for the fire department to give the all clear to go back to your flat.<br>
<br>
[<<moveTo "event_fire_alarm_3" "Wait." 1800>>]
<<default>>
ERROR: unknown outfit: <<=$scene.outfit>>
<</switch>>
</div>/*#
#desc: fire alarm - talk with others
#status: RELEASED 0.8.7.0
#*/
<<set $player.location to "Empty Lot">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set _testimonials = []>>
<<set $scene.testimonialCount = 0>>
<<if $npc_shoestore_manager.flags.testimonials.casual>>
<<if !$npc_shoestore_manager.flags.testimonial_fire.casual>>
<<set _testimonials.push("casual")>>
<</if>>
<<set $scene.testimonialCount += 1>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials['overly feminized']>>
<<if !$npc_shoestore_manager.flags.testimonial_fire['overly feminized']>>
<<set _testimonials.push("overly feminized")>>
<</if>>
<<set $scene.testimonialCount += 1>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials['brainless bimbo']>>
<<if !$npc_shoestore_manager.flags.testimonial_fire['brainless bimbo']>>
<<set _testimonials.push("brainless bimbo")>>
<</if>>
<<set $scene.testimonialCount += 1>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials.submissive>>
<<if !$npc_shoestore_manager.flags.testimonial_fire.submissive>>
<<set _testimonials.push("submissive")>>
<</if>>
<<set $scene.testimonialCount += 1>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials.humiliating>>
<<if !$npc_shoestore_manager.flags.testimonial_fire.humiliating>>
<<set _testimonials.push("humiliating")>>
<</if>>
<<set $scene.testimonialCount += 1>>
<</if>>
<<if _testimonials.length == 0 && $scene.testimonialCount == 5>>
<<set _testimonials.push("all")>>
<<elseif $scene.testomonialCount == 0>>
<<set _testimonials.push("")>>
<<else>>
<<set _testimonials.push("none")>>
<</if>>
<<set $scene.testimonial_style = _testimonials.random()>>
<<set $scene.first = !$npc_shoestore_manager.flags.testimonial_fire.casual && !$npc_shoestore_manager.flags.testimonial_fire["overly feminized"] && !$npc_shoestore_manager.flags.testimonial_fire["brainless bimbo"] && !$npc_shoestore_manager.flags.testimonial_fire.submissive && !$npc_shoestore_manager.flags.testimonial_fire.humiliating>>
<<if $scene.testimonial_style != "">>
<<set $npc_shoestore_manager.flags.testimonial_fire[$scene.testimonial_style] = true>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/emptylot.png" _TODOchar>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<if $scene.bondage_level > 0>>
Even with the concealment of the long blanket your steep bed heels are on full display,
<<else>>
Your bed heels still locked to your feet,
<</if>>
they give you a nice high vantage point from which you can observe... the number of people looking at them.
<<if $scene.testimonial_style != "">>
<<if $scene.testimonialCount == 5>>
Of course that pales compared to the number of other people WEARING them, there has to be at least a dozen other women<<if !$options.fem>>, and one sheepish looking guy,<</if>> standing around in similar, and in a few cases, literally identical, towering "bed heels" like the pair locked on your own feet.
<<elseif $scene.testimonialCount > 1>>
As you look around, however, you notice that you are not the only one so attired. Scattered about, and some looking quite unsteady as the lean against walls or partners, there are at least half a dozen other women wearing similar, and in a few cases, identical, towering "bed heels" like the pair locked on your own feet.
<<else>>
Looking around, you are surprised to see another woman wearing a pair just like yours! She looks a bit unsteady in the steep heels, but still, you're a bit shocked to see someone else wearing such sky-high, extreme footwear!
<</if>>
<br><br>
<<switch $scene.testimonial_style>>
<<case 'all'>>
You stand around, occasionally making eye-contact with your fellow bed heel enjoyers, beaming with pride at the difference you've made in the world as you wait for the fire department to give the all-clear to head back inside.
<<case 'casual'>>
A normal-looking woman and her partner approach you, well... normal save for the fact that she's wearing a pair of locked-on bed heels identical to your own, the towering footwear serving to close most of the gap between her height and that of her tall partner.<br>
<br>
"@@.generic_female1;Hey, so, I don't want to bother you but... you're <<if $player.identify_as == 'female'>>that girl<<else>>the person<</if>> from the bed heels commercial, right? Oh, we just HAVE to thank you. I used to have so much trouble handling myself in heels, a real bother since <<if $options.fem>>Jill<<else>>Jack<</if>> here felt a bit self-conscious being so much taller than me in public. But now! Well, let's just say <<he>> doesn't have to lean over as far to give me a kiss as <<he>> used to! And the locking feature! At first I thought it was crazy, I mean, we're pretty vanilla, y'know? But, wow, it really makes them work, I mean look at me now, strutting it outdoors during a fire-drill because well... what choice do I have?@@" You laugh along with her and congratulate her on her progress before they wander off again.
<<case 'overly feminized'>>
You are approached by a VERY tall, utterly stunning woman, her already near two-metre height further enhanced by the pair of bed heels she has locked onto her feet.<br>
<br>
Smiling down at you, she speaks in a soft voice, far more delicate than you would have expected given her stature. "@@.generic_female1;Hi... you're <<if $player.identify_as == 'female'>>that girl<<else>>the person<</if>> from the bed heels testimonial, right?@@" you nod and she smiles. "@@.generic_female1;Oh, I thought so! I just wanted to thank you for all you did. With how tall I am I used to shy away from heels, but seeing you... so confident and feminine well...@@" She smiles "@@.generic_female1;Let's just say you opened up whole new heights for me to rise to, and I thank you for it. I used to be a bit embarrassed by my height, but now? I've never felt more feminine than when I stride around in towering heels, literally head and shoulders above almost everyone I meet!@@"
<<case 'submissive'>>
You are approached by a slow-moving woman dressed in a long black coat. Your eyes are drawn to the tightly tied waist-belt that makes you wonder if she might be packing a corset underneath; such would certainly explain her stunning figure. Confirmation remains uncertain since a scarf wrapped around her face for warmth and the coat buttoned tight means you can see no other parts of her outfit save the towering bed heels prominently locked to her feet.<br>
<br>
Smiling at you with her eyes she hesitates a moment before pulling down her scarf to reveal that her pretty lips are spread around a quite sizable ball gag! Smiling around the gag she reaches behind her head to loosen it, allowing it to hang around her neck as she smiles, looking nervously bashful. "@@.generic_female1;Heh, sorry about that but, well, it's kind of your fault! I mean, you're <<if $player.identify_as == 'female'>>that girl from the<<else>>the person in those<</if>> bed heels advertisement, right?@@" You nod and she sighs in relief. "@@.generic_female1;Oh good, I thought so, that could have been so embarrassing though... not as embarrassing as this!@@" Before you can respond, she has opened her coat to reveal that the gag was just the cherry on top of a full fetishistic ensemble — a leather bondage corset encasing her entire torso, complete with tightly-buckled crotch piece, a thick leather collar and a pair of thigh cuffs linked by a short chain, all locked on!<br>
<br>
She blushes as your eyes hungrily scan over her attire, giving you a nice long look before folding her coat back around her body. "@@.generic_female1;So... yeah I finally mustered the courage to visit that new sex store in the mall for the first time after I saw your testimonial and... well, it just lit a fire under me. I'm still looking for the right owner, but I've maybe gone off the deep end with how much kit I've accrued — I just love how it feels when I'm restrained and I'm really looking forward to the day I find someone I trust to keep me that way...@@"
<<if $npc_landlord.stage > 1 && setup.getTotalValue("bondage") >= 10 && $scene.bondage_level > 0>>
<br><br>
With a final smile she starts to put the gag back into her mouth only for you, in a burst of brazenness, to whisper for her to peek under your blanket. Eyebrow raised, curiosity draws her in as she opens your blanket and almost falls over, barely managing to avoid dragging the blanket off your shoulders to expose you to the entire world. "@@.generic_female1;Ohmygod! You're all tied up under there! That is... holy shit, that's the hottest thing I've ever seen. Before you were my inspiration, but now you're my hero... WOW, let me just say that I hope to one day be just as brave as you are!@@"<br>
<br>
Her gaze lingers a bit longer, and then she takes an extra moment to make sure your blanket is tucked concealing back around you before, still looking at you in awe, she tucks the gag back into her mouth, pulls up her scarf and minces away. You can't help noticing how she is now holding her hands — palm to palm behind her back in rough mimicry of your own situation.
<</if>>
<<case 'brainless bimbo'>>
You are approached by a voluptuous woman dressed in a skimpy, slutty pink nightie. Leaving little to the imagination the outfit is capped off by a pair of towering locked-on bed heels <<if setup.checkItemWorn("bed_heels_pink")>>identical to your own<<else>>similar in style to what you're wearing, but in bright, bimbo pink<</if>>. "@@.generic_female1;Ohmygod!@@" the woman says in greeting, "@@.generic_female1;You're that girl from the advertisement! I owe you SOOO much! Like, without you I never would have risen to the challenge of wearing fuck-me heels 24/7! You really gave us sluts something new to strive for! I'm so happy I got to thank you in person and I'm going to dedicate my next deepthroat to you and your wonderful example of, like, bimbo leadership!@@"
<<case 'humiliating'>>
As you stand <<if $options.fem>>two women<<else>>a man and a woman<</if>> approach you. You do a slight double take as you realise <<if $options.fem>>one of them<<else>>the man<</if>> is wearing a pair of locked-on heels identical to your own. Noticing your attention the woman grins and greets you. "@@.generic_female1;Sorry to bother you but... are you the <<if $player.identify_as == 'female'>>girl<<else>>one<</if>> from the just smoking hot bed heels advertisement video?@@"<br>
<br>
<<if $scene.first>>Somewhat surprised to be recognised you<<else>>You<</if>> nod and she nudges her partner who almost falls over as <<he>> stumbles in <<his>> heels. "@@.generic_female1;See, I told you!@@" Reaching out to steady <<him>> she turns back to you with an even wider grin. "@@.generic_female1;We... or maybe just I? Have to thank you for that testimonial, my pet may have quite a bit of practice left to do, but I spend all day looking forward to when I can lock these big girls onto <<his>> feet for the night and tuck <<him>> in! <<He>>'s already come so far... I can't wait to see what another few weeks will do!@@"<br>
<br>
She glances over towards the building entrance where the fire department seems to be clearing away barriers. "@@.generic_female1;Well, I imagine they'll be calling us in soon, thanks again and have a lovely night!@@" She says with a laugh before walking away.<br>
<br>
Looking mortified, yet obviously aroused, the <<guy>> glances back at you once before teetering off after <<his>> partner.
<<case 'none'>>
As you stand a woman approaches you, obviously eyeing your heels with surprise before addressing you. "@@.generic_female1;So... wow. Are those bed heels? I heard about them once, but I had no idea anyone actually wore them! And then you kept them on through the fire drill! I could never do something like that for like... a bunch of reasons but... wow, congratulations on living the sky-high dream!@@"
<<default>>
ERROR: unhandled scene.testimonial_style <<=$scene.testimonial_style>>
<</switch>>
<<if $scene.testimonial_style != "all">>
<br><br>
You bask in the afterglow of the recognition and compliment as you wait for the fire alarm to be over.
<</if>>
<<else>>
Looking around, you feel quite alone in your sky-high footwear compared with the mix of loafers, slippers or regular shoes that your other neighbors are sporting for the impromptu night-time jaunt. You wonder, as you catch yet another person gawking at your feet, about what <<=setup.getNpcName("npc_shoestore_manager","first")>> said about recording a testimonial extoling the benefits of the extreme heels.
<</if>>
<<else>>
<<if $scene.testimonial_style && $scene.testimonial_style != "">>
<<if $scene.testimonialCount == 5>>
You're a bit shocked at how many people you see wearing bed heels! At least a dozen women<<if !$options.fem>>, and a couple of guys,<</if>> are all strutting around in sky-high, locked on footwear and you feel almost left out as you wonder what part your recorded "testimonials" might have played at the exploding popularity.
<<elseif $scene.testimonialCount > 1>>
As you look around, you are surprised to noticed at least half a dozen women wearing bed heels! A couple even look to be the same locked-on towering monstrosities you own and you wonder what part your recorded "testimonials" may have played in the sudden popularity and you feel suddenly left out...
<<else>>
Looking around, you are surprised to see another woman wearing a pair of bed heels! She looks a bit unsteady in the steep heels, but, you're still a bit shocked to see someone else wearing the same sky-high extreme footwear. You feel a twinge of jealousy and guilt for not "keeping up" with your nocturnal training.
<</if>>
<<else>>
You stand around with the rest of your neighbors, all impatiently waiting for the fire marshal to give the all clear.
<</if>>
<</if>>
<br><br>
<<if $npc_landlord.stage > 1 && $scene.bondage_level > 0>>
After milling around for about half an hour the signal finally goes out that it is safe for all of you to return to your apartments. Still bound you're kind of helpless to do anything but, fortunately, <<=setup.getNpcName("npc_landlord","first")>> re-appears and scoops you back up to take you inside. Setting you back down in your apartment <<he npc_landlord>> removes your current bondage and then gently helps you into bed and secures you just as you where when <<he npc_landlord>> found you.<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>, you look so beautiful when you are helpless.@@" You smile bashfully back up at <<him npc_landlord>> and <<he npc_landlord>> leans down to give you a kiss. "@@.npc_landlord;Alas, I must attend to the rest of the building, good night, beautiful.@@"<br>
<br>
You listen to the door close as <<he npc_landlord>> leaves the apartment. <<if setup.checkItemInInventory('chuck_pot')>>You put <<=setup.getNpcName('npc_chuck', 'suffix')>> back where <<he npc_chuck>> belongs and head for the bedroom. <</if>>You smile
<<if $npc_dog.stage > 0 && $npc_cat.stage > 0>>
as you note both <<=setup.getNpcName("npc_dog","first")>> and <<=setup.getNpcName("npc_cat","first")>> are back sleeping on your bed, both looking none the worse for wear. You
<<elseif $npc_dog.stage > 0>>
as you note <<=setup.getNpcName("npc_dog","first")>> is already back curled up on the side of your bed. You
<<elseif $npc_cat.stage > 0>>
as you note <<=setup.getNpcName("npc_cat","first")>> is already back curled up on the side of your bed. You
<<else>>
and
<</if>>
settle back into your bonds.
<<else>>
After milling around for about half an hour the signal finally goes out that it is safe for all of you to return to your apartments. Quite missing your interrupted sleep you <<if setup.checkItemTypeTag('shoes', ['bedheels'])>><<if setup.getTotalValue("heels") >= setup.getItemObjFromType("shoes").heels.difficulty>>stride<<else>>hobble<</if>> back towards<<else>>file back into<</if>> the building.<br>
<br>
<<if setup.checkItemInInventory('chuck_pot')>>You put <<=setup.getNpcName('npc_chuck', 'suffix')>> back where <<he npc_chuck>> belongs<<else>>You double check that nothing is out of order<</if>> and head for the bedroom. You smile
<<if $npc_dog.stage > 0 && $npc_cat.stage > 0>>
as you note both <<=setup.getNpcName("npc_dog","first")>> and <<=setup.getNpcName("npc_cat","first")>> are back sleeping on your bed, both looking none the worse for wear. You
<<elseif $npc_dog.stage > 0>>
as you note <<=setup.getNpcName("npc_dog","first")>> is already back curled up on the side of your bed. You
<<elseif $npc_cat.stage > 0>>
as you note <<=setup.getNpcName("npc_cat","first")>> is already back curled up on the side of your bed. You
<<else>>
and head right for your room to
<</if>>
go back to bed.
<</if>>
<br><br>
[<<moveTo "room_dreams" "Sleep." 0 "<<if $scene.bondage_level > 0 && $npc_landlord.stage > 1>><<removeItem 'bed_restraints_detached' true>><<deleteItem 'bed_restraints_detached'>><</if>><<if setup.checkItemWorn('blanket_drape')>><<removeItem 'blanket_drape' true>><<deleteItem 'blanket_drape'>><</if>><<if setup.checkItemInInventory('chuck_pot')>><<deleteItem 'chuck_pot'>><</if>><<useClothSetPop 'sleep'>><<startSleep $player $scene>>">>]
</div>/*#
#desc: game over fail to show up first day
#status: FINISHED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = 'speed_loss'>>
<</if>>
<<set $player.location to "eRRoR#2550[AnN] <Burr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/game_over_grue.png">>
<div id="invframe" class="scrolltext">
You put your phone away and stand up. You wonder what exactly what you were doing in the first place... after all, if you aren't going to play the game... why even sit down to try?<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Start over">><<=UI.restart()>><</link>>]
<</if>>
</div>/*#
#desc: game over grue intro
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = 'grue'>>
<</if>>
<<set $player.location to "eRRoR#2550[AnN] <Burr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/game_over_grue.png">>
<div id="invframe" class="scrolltext">
<<if $phonecall>>
As you put away your phone, existential dread comes over you.
<<else>>
As you leave the building, existential dread comes over you.
<</if>>
What if the developer has not foreseen this outcome? Too late, you realise that this part of the game has not been finished yet.<br>
<br>
It is pitch black. You are likely to be eaten by a grue.<br>
<br>
>west<br>
<br>
You have moved into a dark place.<br>
It is pitch black. You are likely to be eaten by a grue.<br>
<br>
>what is a grue<br>
The grue is a sinister, lurking presence in the dark, unfinished places of the earth. Its favourite diet is player characters, but its insatiable appetite is tempered by its fear of light. No grue has ever been seen by the light of a finished area of the game, and few have survived its fearsome jaws to tell the tale.<br>
<br>
>south<br>
Oh, no! You have walked into the slavering fangs of a lurking grue!<br>
<br>
<div style="text-align: center;"><span align="center">* * * * You have died * * * *</span></div>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over caught by grue
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = '1st_therapy'>>
<</if>>
<<set $player.location to "eRRoR#2551[nAn] <Gurr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/game_over_grue.png">>
<div id="invframe" class="scrolltext">
You realise that you're too late for your appointment with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, and start running, like you've never run before. Sadly this speed was too much for the poor game engine and so you glitched through the floor into the negative stage.<br>
<br>
It is pitch black. You are likely to be eaten by a grue.<br>
<br>
>west<br>
<br>
You have moved into a dark place.<br>
It is pitch black. You are likely to be eaten by a grue.<br>
<br>
>what is a grue<br>
The grue is a sinister, lurking presence in the dark, unfinished places of the earth. Its favourite diet is player characters, but its insatiable appetite is tempered by its fear of light. No grue has ever been seen by the light of a finished area of the game, and few have survived its fearsome jaws to tell the tale.<br>
<br>
>south<br>
Oh, no! You have walked into the slavering fangs of a lurking grue!<br>
<br>
<div style="text-align: center;"><span align="center">* * * * You have died * * * *</span></div>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, unemployment
#status: FINISHED 0.4.0.0
#*/
<<set $gameOver = 'bluepill'>>
<<set $player.location to "eRRoR#2552[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
You reach for the blue pill and detect an almost imperceptible frown on <<=ps(setup.getNpcName("npc_manager","formal"))>> lips.<br>
<br>
"@@.npc_manager;A pity... I was quite looking forward to showing you the depths of the rabbit-hole...@@"<br>
<br>
With those cryptic words you are dismissed. Surprisingly, despite the threats, you actually manage to find a new job after not much looking. Similar to your old one in IT, it provides a welcome stabilising anchor as you get your life back in order. After a few years the strange happenings of your firing fade into the past, little more than an amusing story that you occasionally tell at parties...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, unemployment
#status: FINISHED 0.4.0.0
#*/
<<set $gameOver = 'no_job'>>
<<set $player.location to "eRRoR#2552[NaN] <Durr>">>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/game_over_trap.png">>
<div id="invframe" class="scrolltext">
Being unemployed is difficult for you, so you start writing a lot of applications. One extremely unlikely contestant returns your application positive. You're contacted by Nintendolls. The irony is not lost on you. They're not really looking for an Data Administrator right now, but if you're interested in Game Development, they're looking for a Beta Tester for their newest game called <a target="_blank" href="http://www.trapquest.com/">Trap Quest</a> using their new, not yet announced VR Platform. Hmmm. Sounds like an RPG to you. Since you're a fan of their products you happily accept.<br>
<br>
A few days later you approach the imposing Nintendolls Headquarters. After announcing your arrival at the lobby you're escorted to the Nintendolls R&D Department by two rather attractive ladies, each wearing an outrageously skimpy latex uniform that leaves very little to your imagination. This is the last time anyone ever heard of the entity called <<=$player.first_name>> <<=$player.last_name>>...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, admit you have rapey tendencies
#status: FINISHED 0.4.0.0
#*/
<<set $gameOver = 'pro_rape'>>
<<set $player.location to "eRRoR#9582[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_valkyr") "flip">>
<div id="invframe" class="scrolltext">
You're not sure what's going on, but you don't even have a chance to stand, before two metre plus tall steel cyborgs appear in the office. Each is a large winged female, shiny and with identical masks to disguise their faces. Positioned to block the door, one approaches you bearing a set of heavy restraints.<br>
<br>
You gulp, you have heard of the so-called "Valkyr" Unit, but you had never seen one and thought them merely a myth. According to gossip, they are a cadre of female soldiers who distinguished themselves in the war in a series of battles, but were left more cybernetic than human. With the end of the war, they were "re-commissioned" as a private, elite law enforcement unit.<br>
<br>
You flash back to your response on the questionnaire — could expressing a theoretical interest in rape really be so harshly punished? You have your answer as you are roughly restrained, your wrists cuffed behind your back and a heavy collar snapped around your throat. You open your mouth to object, but no sound comes out — the collar stifles everything even as it administers a painful shock to punish the mere attempt.<br>
<br>
"@@.valkyr;SILENCE, RAPIST SCUM.@@" The nearest Valkyrie states, her mechanical voice booming in the small office as she takes hold of your shoulders and steps next to you. "@@.valkyr;REMAIN MOTIONLESS FOR TRANSPORT.@@"<br>
<br>
You are held in her vice-like grip as her wings open and surround you. You catch a final disappointed glance from <<=setup.getNpcName('npc_psychiatrist', 'first')>> before your vision is completely filled with chrome-feathered wings. A small needle pricks the back of your neck and a tingle goes through your body as you feel some strange liquid being injected into you. You lose control over your muscles and your body starts to feel limp as they carry you outside to find a third Valkyrie standing next to a sarcophagus like case.<br>
<br>
The sound of several hydraulic and electronic systems reach your ears, as your heavy-lidded eyes manage to perceive metal plates shifting apart from the previously smooth looking surface. As the sarcophagus unfolds, your clothes are torn from your body by the sharp, precise claws of the Valkyr. A swarm of slender metallic tentacles unfurls from the hollow inside, writhing and reaching out towards your chest.<br>
<br>
Tracing out towards your extremities, the tentacles wrap around your arms and legs. You can feel their cool metallic surface coated with some sort of slimy ooze, which makes it easy for them to ensnare you even more, stretching your limbs and forcing you into submission. Weakened by drugs and now held fast, you can only tremble in fear as you can feel tentacles probing around your <<getWordAnus>>, <<getWordMyPenis>> and mouth. You try to resist, but the first tentacle enters your <<getWordAnus false>> with ease, spreading you and making room for more to follow. Even though each tendril is no more than a centimetre in diameter, you're soon reaching your limit and let out a moan, which the tentacles in front of your face exploit to enter your mouth, forcing it permanently open, as even more tentacles slither down your gullet and windpipe. Whatever the tentacles are coated with acts as a paralysing agent, your initial gag reflex swiftly going dormant.<br>
<br>
<<if $fetish.sounding>>Even your poor <<getWordMyPenis>> gets explored by a particularly slender tentacle, making you<<else>>You<</if>> groan once more... well attempt, not a peep escapes your penetrated mouth. As you are violated in seemingly every way imaginable, you almost overlook the other tentacles wrapped around your body forcing you body into a fetal position, your knees almost touching your face as you are lifted into the air and retracted into the metal box.<br>
<br>
The last thing you see as you look up out of your chrome chamber are the metal plates moving back into their original position, locking you into the sarcophagus, embraced by metallic tentacles which spread across and probe every last square centimetre of your body, filling each of your orifices with more and more tentacles, stretching them to levels you never thought possible. You gave up counting how many tentacles implanted themself into your <<getWordAnus>><<if $fetish.sounding>>, but you definitively felt the 2nd and 3rd one entering your urethra<</if>>. The tentacles in your mouth started to pump something into your stomach and you are finally granted the sweet embrace of unconsciousness.<br>
<br>
Justice comes sure and swift, the "being" known as <<=$player.first_name>> <<=$player.last_name>> is never heard of again, the ranks of the Valkyrie swelling far faster what their recruiting numbers would indicate...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, refuse "punishment" for getting locked in chastity for pay
#status: RELEASED 0.6.0.0
#*/
<<set $gameOver = 'no_chastity_punish'>>
<<set $player.location to "eRRoR#3885[NPE] <Brrr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
Getting fired for so-called insubordination is bad enough, worse is the fact that <<=setup.getNpcName('npc_manager', 'formal')>> expels you from her office without even letting you get dressed!<br>
<br>
You try to object, but a security guard appears as if from nowhere, hauling you into the elevator and tossing you out the front door of the lobby. Naked, save for the <<if setup.isCage()>>cage<<else>>chastity belt<</if>> that got you into this whole mess, you've never been so embarrassed in your life, screaming at the guard who glowers at you from the other side of the barred door as you pound and pull in an attempt to get back in.<br>
<br>
Too focused on your anger, you don't even notice the cop appear behind you — your hands cuffed behind your back before you can even react as you are arrested for "indecent exposure" and "attempted destruction of property." <br>
<br>
Booked, fined, and
<<if $npc_manager.flags.cruel>>
sentenced, you discover just how much power the company has as, rather than prison, you find yourself assigned to work-release... as a helpless <<if $fetish.sissy>>SISSI <</if>>Secretary, now living AND working in one of Social Interaction Service Syndicate Inc.'s satellite offices, your new boss somehow even more cruel and unforgiving than <<=setup.getNpcName('npc_manager', 'formal')>> ever was... as you finish your morning "service" of your manager you gingerly take your seat and turn on your computer. As the machine boots
<<else>>
sent "home" you are on the street within a month, begging your keyholder to pay you for a "contract extension" only to find yourself in a downward spiral of depravity.<br>
<br>
The memory of touching your <<getWordMyPenis>> soon fades, your life becoming one of a cheap whore, serving <<if $options.fem>>women's<<else>>other's<</if>> cocks while remaining ever unsatisfied. Standing on "your" corner looking for your next <<if $options.fem>>customer<<else>>John<</if>>,
<</if>>
you try not to think about how it all went wrong, how much better things would have gone if you had just accepted your punishment and done what <<=setup.getNpcName('npc_manager', 'formal')>> told you to...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, fail to make rent
#status: RELEASED 0.6.0.0
#*/
<<set $gameOver = 'rent'>>
<<set $player.location to "eRRoR#8552[NaN] <Durr>">>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
Kicked out of your apartment you ask your <<=setup.getNpcName('npc_manager', 'title')>> about employee housing. She is able to set you up, but things seem to change. Lying in your private pod each night your dreams are strange, your waking hours a haze of utter obedience as you feel your sense of self steadily slipping away.<br>
<br>
Two weeks later your job changes yet again as Unit <<uc $player.first_name>> starts her new job in the R&D advanced testing department...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, do not goto after work party
#status: RELEASED 0.6.0.0
#*/
<<set $gameOver = 'no_party'>>
<<set $player.location to "eRRoR#2552[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
This is all too much, and you tell your <<=setup.getNpcName('npc_manager', 'title')>> that, if some after-work party is the conditions of your continued employment you are done.<br>
<br>
"@@.npc_manager;I see... well, I suppose that is all then. Good luck with the rest of your life, I doubt we will meet again.@@"<br>
<br>
As you hang up, a dread weight falls over you — you now have no job, rent due and no real plan. Taking a deep breath, you consider your next options, whatever they will be one you know for certain is that it's a whole different game now...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, failed qualifying period
#status: RELEASED 0.6.0.0
#*/
<<set $gameOver = 'trial_fail'>>
<<set $player.location to "eRRoR#2532[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
You make no effort to defend your job and <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head.<br>
<br>
"@@.npc_manager;I am afraid that, as you have failed to rise to meet the requirements of a <<if $fetish.sissy>>SISSI <</if>>Secretary in the allotted time, I have no choice but to terminate your employment, effective immediately. I wish you luck in your future endeavours... whatever they may be.@@"<br>
<br>
<<printThought "Maybe I should have tried harder...">><br>
<br>
Leaving the building you spend some time at the bar and then head home, trying to untangle where to go having closed this chapter in your life. Wherever it is, you doubt it will be as... "interesting," as they say, as your brief time as a secretary.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, failed inspection in stage 1
#status: FINISHED 0.4.0.0
#*/
<<set $gameOver = 'stage_1'>>
<<set $player.location to "eRRoR#2775[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
You try to object, but <<=setup.getNpcName('npc_manager', 'formal')>> is immovable; and with the number of mistakes you have made you should expect nothing less. She glowers at you the entire way as you walk out of her office only to show the barest flicker of regret as look back over your shoulder at the door closing behind you.<br>
<br>
Away from her influence things are rocky for a while but, with some help from friends you are able to downsize to a smaller apartment and eventually get a job. It's in retail, your ex-<<=setup.getNpcName('npc_manager', 'title')>> seemingly having quite thoroughly blackballed you from anything you had prior experience at but, somehow, you survive.<br>
<br>
Working your way through a dull life you occasionally wonder what might have happened if you had stuck around, regret at having not stuck things out a bit longer than you did in your strange stint as a secretary nagging you ever harder with each boring day of selling shoes as you look back at what you eventually consider were your brief glory days...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, failed morning inspections in stage 2
#status: FINISHED 0.6.0.0
#*/
<<set $gameOver = 'stage_2'>>
<<set $player.location to "eRRoR#3775[NaN] <1111>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
Distracted by <<=setup.getNpcName('npc_manager', 'formal')>> you do not notice <<=setup.getNpcName('npc_retention', 'formal')>> pulling your arms behind your back until the handcuffs close with a click and you realise you have just lost the use of your arms.<br>
<br>
"@@.npc_retention;Company policy@@" <<he npc_retention>> notes flatly before you can even raise the question, <<=setup.getNpcName('npc_manager', 'formal')>> stepping in to fill in the details in a patronising tone.<br>
<br>
"@@.npc_manager;Yes, just a precaution, in the past we have had people react quite... badly to being let go, this is safer for everyone involved.@@"<br>
<br>
You aren't sure about that, but you have little choice but to obey as <<=setup.getNpcName('npc_retention', 'formal')>> takes you by the arm, <<if $npc_retention.fem>>her hand pulling you along<<else>>his hand almost encircling your bicep<</if>> as <<he npc_retention>> leads you to the door and then the elevator remaining silent the whole way.<br>
<br>
Riding down you pass straight by the lobby to continue your descent and you suddenly start getting worried, asking <<=setup.getNpcName('npc_retention', 'formal')>> what is going on.<br>
<br>
"@@.npc_retention;Didn't you read your contract? You may have proven inadequate as a secretary, but the company needs to recoup its investment in you somehow. If it makes you feel any better, you should come to enjoy your new position... eventually.@@"<br>
<br>
You start to object, but the doors open and before you know it you have been transferred to a gurney, strapped down thoroughly and with a mask placed over your face that soon has you feeling fuzzy as you breathe in sweet-tinged air.<br>
<br>
<<=ps(setup.getNpcName('npc_retention', 'formal'))>> words technically prove prescient... in a way. Certainly you come to enjoy your new position, though by that time there is little left that could be identified as "you." On a positive note; that year's model of lifelike maidbots garners rave reviews and really... isn't making the world a cleaner place a laudable goal?<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, give up during stage 1
#status: FINISHED 0.7.4.0
#*/
<<set $gameOver = 'stage_1_qualifier'>>
<<set $player.location to "eRRoR#2775[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
You walk away, from <<=setup.getNpcName('npc_manager', 'formal')>>, from your job, and not too long after from your flat. Eventually you manage to find a smaller place and a new job, but you always find yourself wondering what might have been had you the courage, or perhaps something else, to continue on through the trial and develop a career as a secretary.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, critical fail on male clothing repurge
#status: FINISHED 0.7.8.0
#*/
<<set $gameOver = 'repurge_fail'>>
<<set $player.location to "eRRoR#2775[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
Stepping out of <<=ps(setup.getNpcName("npc_manager","formal"))>> inner office you almost crash into <<=setup.getNpcName("npc_retention","formal")>>. <<He npc_retention>> is flanked by two additional security guards, leaving any possibility of overpowering <<him npc_retention>> and escaping dashed.<br>
<br>
"@@.npc_retention;Come,@@" <<he npc_retention>> states gruffly. "@@.npc_retention;You're too late to join the pool for this morning, but we can get you settled in your new home and ready for the night shift.@@"<br>
<br>
Guards flanking you and holding you by the arms you are escorted to the elevator and then down, down into the basement levels of the company.<br>
<br>
Your "new home" turns out to be little more than a cylindrical pod — a padded bed that seals you in once you have been laid down, a touch-screen your only "entertainment" in the claustrophobic container. Your attempts to find a way out culminate in you banging in vain, only for your consciousness to fade as sweet gas is pumped into the chamber.<br>
<br>
When you wake you feel groggy and compliant, staggering to your feet as a collar is affixed around your throat and a stern guard hands you a pad with your assignment.<br>
<br>
Working in the secretary pool on the upper floor is quite different from your prior efforts. The responsibilities are similar, but impersonal, your manager of the day seldom even bothering to refer to you by name as they order you around, your slightest disobedience met with punishment and drugs to sap your will to resist.<br>
<br>
After a while you lose track of everything, were you working towards freedom? To pay off a debt? Such things have ceased to have any meaning; you exist to serve the company, and there can be nothing else.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, betray your manager
#status: FINISHED 0.7.8.0
#*/
<<set $gameOver = 'data_crystal_betray'>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<include playerMenuHypnosis>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss","npc_boss_front")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_boss', 'formal')>> about the evidence of your <<=ps(setup.getNpcName("npc_manager","title"))>> betrayal of the company as proven by the contents of the data crystal.<br>
<br>
"@@.npc_boss;I see. Well this is quite interesting, indeed, if you would hand over the evidence?@@"<br>
<br>
The thought of touching <<him npc_boss>> directly has you too scared so you merely slide the crystal across the desk and wait as <<he npc_boss>> plugs it in and reviews the information contained in the data crystal.<br>
<br>
Several minutes pass and then you hear a sound from the elevator, turning in surprise to see a pair of large security guards approaching you.<br>
<br>
You look back to see <<=setup.getNpcName('npc_boss', 'formal')>> smiling cruelly back. "@@.npc_boss;The evidence is just as you said... well, other than being clearly fake, but with the testimony of her own closest subordinate, well... that hardly matters. The board will have to convene, of course, but that is but a formality. As to you, well... you did your duty, and now you need to be out of the way while these things are dealt with. Out of the way, but without letting all that wonderful training go to waste.@@"<br>
<br>
<<He npc_boss>> walks towards you bearing a heavy looking collar as the guards to either side of you tighten their grip on your arms as <<he npc_boss>> locks it around your throat.<br>
<br>
"@@.npc_boss;There, all mine;@@" <<He npc_boss>> smiles. "@@.npc_boss;Whatever else she did, the former <<=ps(setup.getNpcName("npc_manager","other"))>> training instincts were quite superb... it is almost a pity I will never get the chance to claim a third of her projects.@@"<br>
<br>
"@@.npc_boss;<<=setup.getNpcName('npc_secretary', 'first')>>!@@" <<he npc_boss>> barks, your predecessor appearing from behind a pillar to walk towards you. "@@.npc_boss;How about the two of you show these <<if $options.fem>>nice ladies<<else>>fine gentleman<</if>> thanks for their work today, and then you may show your new sister to her desk.@@"<br>
<br>
<<=setup.getNpcName('npc_secretary', 'first')>> curtsies obediently, your attempt to speak cut short by a harsh shock emanating from your heavy new collar.<br>
<br>
[<<moveTo "room_data_crystal_bad_end_2" "Continue." 60>>]
</div>/*#
#desc: game over, betray your manager new job
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<include playerMenuHypnosis>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Your mouth filled with the taste of cum and ball-sweat you finally follow <<=setup.getNpcName('npc_secretary', 'first')>> to your new desk. Your attempts to speak continue to be stymied by the collar and you end up taking your seat and listening as <<=setup.getNpcName('npc_secretary', 'first')>> explains your new responsibilities.<br>
<br>
If you thought your betrayal would lead to freedom your hopes are swiftly crushed. Not only are you still a <<if $fetish.sissy>>SISSI <</if>>Secretary, you are now nothing else — <<=setup.getNpcName('npc_secretary', 'first')>> informing you that <<=ps(setup.getNpcName('npc_boss', 'formal'))>> 24/7 responsibilities as CEO cascade down and that you will now live in the building, "working" eighteen hours at a time before a brief rest taken in a secure cylindrical "resting" tube in the back of <<=ps(setup.getNpcName('npc_boss', 'formal'))>> office. The fact that you hot-bunk in it with <<=setup.getNpcName('npc_secretary', 'first')>> making your dehumanisation even more complete.<br>
<br>
As to your day to day... you soon find yourself pining for the "old days" — <<=setup.getNpcName("npc_manager","formal")>> may have considered you a project and her slave, but <<=setup.getNpcName("npc_boss","formal")>> literally treats you like an object, your slightest hesitancy to obey <<his npc_boss>> wishes met with brutal, and uncreative, punishing shocks. A mandatory drug regime and subconscious recordings filling your brief "rests" in the cylinder further the stripping of your humanity and you start to lose track of time, one day being the same as the next. An endless sequence of service, sex, and submission.<br>
<br>
Perhaps two months into your "new" position you leave the penthouse office for the first time. You and <<=setup.getNpcName('npc_secretary', 'first')>> are dressed in matching steel armbinders and gags before <<he npc_boss>> leashes the both of you and rides the elevator down, past your old floor, past Cloud Data Service, deeper into the basement than you have ever been to a level not even marked on the panel itself until <<=setup.getNpcName("npc_boss","formal")>> inputs an override.<br>
<br>
[<<moveTo "room_data_crystal_bad_end_3" "Continue." 60>>]
</div>/*#
#desc: game over, betray your manager, see manager
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<include playerMenuHypnosis>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss","npc_boss_front")>>
<div id="invframe" class="scrolltext">
Led from the elevator you travel through identical hallways before coming to a vault-like door that takes almost a minute to open. There, in this subterranean chamber do you find yourself facing a dangling woman — her arms and legs encased in heavy bindings, holding her spread-eagled in the air, a pair of dildos pounding her lower holes, breast-cups pumping away and numerous shock-pads causing her to occasionally twitch. A helmet conceals her face and identity, supported by a steep, heavy collar that displays her vitals.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> whistles cheerfully as <<he npc_boss>> fiddles with a panel until the helmet splits and lifts away to confirm your fears — though her glorious red hair has been shaved, and her face is stretched by a massive feeder gag you instantly recognise <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
It takes her a moment longer, her eyes refocusing as they adjust to the light of reality rather than the hypnotic projection inside the helmet. Leaning forward against her restraints <<=setup.getNpcName('npc_manager', 'formal')>> eyes blaze with rage as she stares at <<=setup.getNpcName("npc_boss","formal")>> with enough hate and anger that you take a reflexive step back.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> merely laughs, yanking on your leash to pull you forward as <<he npc_boss>> stands in front of <<=setup.getNpcName('npc_manager', 'formal')>>. "@@.npc_boss;Still putting up a fight, are we?@@" <<He npc_boss>> laughs as <<he npc_boss>> turns up the speed on the two pounding dildos and you have a sinking realisation that <<=setup.getNpcName('npc_manager', 'formal')>> has probably been in this torturous predicament continuously since your betrayal.<br>
<br>
"@@.npc_boss;No matter, I have plenty of time to wait... I just wanted to show you that your pets are in good hands... and to let you know that it was <<=$player.first_name>> who betrayed you.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> attention shifts to you as you feel overcome with guilt — for your betrayal, for the fact that it only made your life worse, for everything. You start to tear up though gags ensuring that the only voice is <<=setup.getNpcName("npc_boss","formal")>> mocking tone. "@@.npc_boss;Well that is all the time I have to spare from work, maybe I'll let your pet visit you again... in a few months!@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> laughs harder as <<he npc_boss>> presses a button and the helmet closes back up, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> glare of death remaining on <<=setup.getNpcName("npc_boss","formal")>> until the final moment.<br>
<br>
"@@.npc_boss;Oh... and this is for that horrible expression.@@" <<=setup.getNpcName("npc_boss","formal")>> pressing a button that sends enough electricity through <<=ps(setup.getNpcName('npc_manager', 'formal'))>> body that it actually arcs around her limbs, sending her straining against her bonds in tortured pain as <<=setup.getNpcName("npc_boss","formal")>> drags you out of the room by your leash.<br>
<br>
Learning your <<=ps(setup.getNpcName('npc_manager', 'title'))>> fate is like the final nail in the hopelessness of your situation. You are surprised at each of what become monthly visits that her rage remains, but the light in her green eyes is ever so slightly dimmer each time and you know that, eventually, she will lose...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, too much vr therapy
#status: FINISHED 0.7.12.0
#*/
<<set $gameOver = 'vr_overload'>>
<<set $player.location to "eRRoR#2775[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
Your thoughts already frayed you dive back into another round of simulation and your mind shatters.<br>
<br>
Choices cease to have meaning, you want it all, more sex, more cocks, more cum, tighter bondage, more, more, more, all at once and forever.<br>
<br>
"@@.npc_psychiatrist;What have you done?@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> looks down at you but you barely hear her. You just want to know what happened to the sexy images. A tiny voice tells you that you're back in "reality", but you don't know what that means other than you aren't currently enjoying orgiastic Bacchanalian... and that means you hate it.<br>
<br>
Two Weeks Later.<br>
<br>
Deep beneath the company building you sit in a padded cell. Hearing someone at the door you scramble to your feet, wiggling in your straight-jacket in anticipation. You hope it's someone here to "use" you — the treatment of even the cruellest nurses a delight to your fetish-addicted, broken mind.<br>
<br>
The door opens to reveal <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and <<=setup.getNpcName('npc_barista', 'nickname')>> and you smile around your gag. You love your so-called "therapy" sessions... even if you wish <<=setup.getNpcName('npc_psychiatrist', 'formal')>> would let you and <<=setup.getNpcName('npc_barista', 'nickname')>> make out the whole time rather than force you to talk about things that aren't sex...<br>
<br>
As happy to see you as you are her <<=setup.getNpcName('npc_barista', 'nickname')>> barrels into you for a hug, her breasts pressing against you as she babbles a bimbo update about how many times she's had sex since your last session (a lot... you're jealous; the doctor is nice but you haven't been gang-banged in like, forever!)<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> separates you after a few minutes before removing your gag and beginning the session...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: game over, fail to take drugs in stage 1
#status: RELEASED 0.9.2.0
#*/
<<set $gameOver = 'stage1_drug'>>
<<set $player.location to "eRRoR#2775[NaN] <Durr>">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png">>
<div id="invframe" class="scrolltext">
Despite your pointed lack of drugs you feel in an odd daze as you leave the office... why did you agree to such a requirement if you were not going to follow through? It seems almost odd that <<=setup.getNpcName('npc_manager', 'formal')>> would let you go over something so minor... but maybe that's just proof that she wasn't all that invested in you.<br>
<br>
As to your own life, well, though she said she wasn't interested in punishing you, your being fired from Social Interaction Service Syndicate Inc. proves to be a real black mark on your resume. Unable to find a new position it isn't long before you're facing eviction, in desperation, and with no other options, you find yourself signing up for a medical study with someone named <<=setup.getNpcName('npc_work_doctor', 'formal')>>...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: checks to see if "first time wearing heels" scene should be shown
#status: FINISHED 0.4.0.0
#*/
<<initRoom>>
<<if setup.getTotalValue('heels')>0>>
<<moveTo 'goInv'>>
<<else>>
<<setThreshold 'heels' 'wearing_heels' 'beginner'>>
<<if !$player.sec_style.clothing.heels>>
<<set $player.sec_style.clothing.heels = "voluntary">>
<</if>>
<<moveTo 'event_beginner_heels_1'>>
<</if>>/*#
#desc: first time player puts on heels
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/scene_heels_1.png">>
<div id="invframe" class="scrolltext">
After putting on these <<=setup.getItemTypeName('shoes')>> for the first time, you stumble around for a few minutes, until, though occasionally wobbly, you manage a bit of stability.<br>
<br>
<<printThought "Walking in these is hard!">><br>
<br>
You'll have to practice walking a lot in these to get any better.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Continue." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: late for work, caught jaywalking
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.world_events.jaywalking = true>>
<<if $player.flags.world_events.jaywalking_sex && (!$fetish.bestiality_hard || $player.flags.world_events.jaywalking_horse) || $currentTasks.hasOwnProperty('manager_morning_inspection_task') && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity') && !setup.checkItemTypeWorn("cage") && $npc_manager.stage >= 4 || $currentTasks.hasOwnProperty("event_interview") && !$currentTasks.event_interview.finished>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 300)>>
<<moveTo "company_lobby">>
<</if>>
<</if>>
<<set $player.location to "A streetcorner near work">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" setup.charImageGeneric("cop_01")>>
<div id="invframe" class="scrolltext">
Running into a bit of construction and forced to take a detour you're running behind schedule, dashing across a street without waiting for a signal only for a mounted police officer to appear as if from out of nowhere.<br>
<br>
"@@.generic_male1;Woah there, citizen, let's see your identification.@@" The officer states, looking down at you.<br>
<br>
Seeing your work barely half a block distant and time ticking away you resist the urge to just sprint away as you quietly hand over your ID.<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex'])=='female'>>
<<if $player.sec_style.body.name != "">>
Looking back and forth between you and your ID <<he>> frowns slightly. "@@.generic_male1;Hmm, things look in order, but I think I need to call it in — we've been having issues with a counterfeit ring flooding out fake identification recently and, well, this looks mighty new.@@"<br>
<br>
Your heart drops, there's no way you're going to make it to work on schedule, a fact confirmed when your phone starts ringing with <<=setup.getNpcName('npc_manager', 'formal')>> on the other end.<br>
<br>
You explain to <<him>> that it's your boss and you really need to get to work, but <<he>> only seems to get more suspicious.<br>
<br>
"@@.generic_male1;Sorry, miss, but the law is the law, are you going to come quietly or do I need to get out the cuffs?@@"<br>
<br>
<<printThought "Shit! This keeps getting worse and worse, what should I do?">><br>
<br>
[<<moveTo "event_random_jaywalk_2" "Do as <<he>> says." 30 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_random_jaywalk_2" "Make a run for it." 30 "<<set $scene.obey=false>>">>]
<<else>>
"@@.generic_male1;Bit of an old picture, eh?@@" <<He>> states before handing back your ID.<br>
<br>
You blush hard, mumbling a response and looking away as you accept your card and put it away.<br>
<br>
"@@.generic_male1;Not a problem, everything is still in order, though remember you can always file for a change if anything about your official status doesn't match your current identity. Anyway, you just pay a bit closer attention to traffic signals, miss, the law is for YOUR protection.@@"<br>
<br>
You nod, still beyond embarrassed as <<he>> trots away.<br>
<br>
Letting out a breath you quickly rush towards work, trying to make up for lost time.<br>
<br>
<<if $now.getUTCHours() < 7 || $now.getUTCHours() == 7 && $now.getUTCMinutes() <= 30>>
<<printThought "Good thing I was aiming to arrive early...">><br>
<br>
[<<moveTo "company_lobby" "Continue to work." 30>>]
<<else>>
<<set _workTime = setup.setNextDate($now, 0, 8, 0)>>
<<set _timeToWork = setup.secondsToDate($now, _workTime)>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Arrive in the nick of time!" _timeToWork>>]
<</if>>
<</if>>
<<else>>
"@@.generic_male1;Well, everything seems to be in order, here.@@" <<He>> finally states after glancing closely between you and your ID. "@@.generic_male1;Try to pay a bit more attention next time — traffic laws are for your own safety.@@"<br>
<br>
You quickly nod and apologise, waiting to be dismissed and practically sprinting the rest of the way to work so as not to be late.<br>
<br>
<<set _workTime = setup.setNextDate($now, 0, 8, 0)>>
<<set _timeToWork = setup.secondsToDate($now, _workTime)>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Arrive in the nick of time!" _timeToWork>>]
<</if>>
</div>/*#
#desc: taken somewhere private by cop after being caught jaywalking
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "A small park near work">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImageGeneric("cop_01")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Head bowed you follow the cop as <<he>> takes you up the block and into a small park area where <<he>> dismounts <<his>> steed.
<<else>>
You make a break for your work, but the cop runs you down after a mere few steps. Before you know what's happening, you've been picked up and laid face-down over the horse, your wrists cuffed behind your back.<br>
<br>
"@@.generic_male1;You really shouldn't have done that. Let's head somewhere a bit private and we can... discuss what's going to happen to you.@@"<br>
<br>
You bounce a bit as <<he>> trots up the street, finally depositing you on the ground in a small park area adjacent to your work.<br>
<br>
"@@.generic_male1;You promise to stay behaved now?@@" <<He>> asks.<br>
<br>
You nod nervously and <<he>> removes the cuffs.
<</if>>
<br><br>
"@@.generic_male1;So, you said you were in a rush to get to work and that is why you ignored the traffic signal... what is it, exactly, that you do?@@"<br>
<br>
You explain that you work as a secretary and that your manager is really quite strict when it comes to punctuality — describing it as a "pillar of society." <br>
<br>
"@@.generic_male1;Hmm, it sounds like your manager keeps a close eye on you, which it seems like you need given your demonstrated tendency towards lawlessness.@@"<br>
<br>
Your heart freezes. Is <<he>> going to write you a ticket? On top of everything else that has happened to you lately? What will <<=setup.getNpcName('npc_manager', 'formal')>> say? Who knows if there might be some sort of hidden clause in your contract that could come into effect if you were to get into trouble with the law...<br>
<br>
<<if setup.getTotalValue("bimbofication") > 8>>
[<<moveTo "event_random_jaywalk_3" 'Beg if there is ANYTHING you could do to keep this incident just between the two of you.' 30 "<<set $scene.slut=true>>">>]<br>
<<else>>
[@@.link_locked;You don't have the...courage? Sure, call it courage, to attempt to slut your way out of a ticket.@@]<br>
<</if>>
[<<moveTo "event_random_jaywalk_3" 'Nervously wait for <<him>> to make a decision.' 30 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: try to sex your way out of a jaywalking ticket
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "A small park near work">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImageGeneric("cop_01")>>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
Putting a quiver into your voice and presenting yourself as best you can you ask the officer if there is ANYTHING you could do for <<him>> to make up for your "naughty" behaviour.<br>
<br>
<<He>> stares at you with the classic stoic "cop face" for a while as you bite your lip and blink back at <<him>>.<br>
<br>
<<if $fetish.bestiality_hard && (setup.hasThreshold('bestiality', 'dog', 'advanced') || setup.getTotalValue("bestiality") >= 7)>>
"@@.generic_male1;Tell you what, my faithful steed here... well, he works hard to patrol the city, and the odd apple isn't really enough reward for that is it? Maybe if you wanted to crawl under and "thank" him for his service to the community we could look the other way in regards to your little transgression.@@"<br>
<br>
You gulp, eyeing the large horsecock unsheathing between the stallion's legs. It twitches, as if he could understand what his rider was saying.<br>
<br>
[<<moveTo "event_random_jaywalk_4_horse" 'Drop to your knees and get to work.' 30 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_random_jaywalk_4" 'Could you suck <<him>> off instead?' 30 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_random_jaywalk_4_horse" "That's too much! Try to back-peddle." 30 "<<set $scene.sex=false>>">>]
<<else>>
"@@.generic_male1;Aren't you the feisty one... well, to be honest it has been a bit of a stressful morning, so I wouldn't turn down a bit of relief.@@" As <<he>> talks, <<he>> reaches down, unzipping what looks to be a quick-release flap on <<his>> VERY tight pants to reveal a cock large enough that it would hardly look out of place were it attached to <<his>> steed!<br>
<br>
"@@.generic_male1;I'm sure you know what to do with one of these?@@"<br>
<br>
<<printThought "There's no way that's anything other than surgically enhanced...">><br>
<br>
[<<moveTo "event_random_jaywalk_4" 'Drop to your knees and get to work.' 30 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_random_jaywalk_4" "Maybe this wasn't the best idea, change your mind." 30 "<<set $scene.sex=false>>">>]
<</if>>
<<else>>
<<He>> spends some time on the radio, occasionally glancing back at you before finally handing back your ID. "@@.generic_male1;Well, it looks like everything is in order, but hey, best to be sure, right?@@"<br>
<br>
You thank <<him>> and accept your card before hurrying back to work.
<<if $now.getUTCHours() < 7 || $now.getUTCHours() == 7 && $now.getUTCMinutes() <= 30>>
<br><br>
<<printThought "Why was I in such a rush? I budgeted my time to arrive well before my official shift starts...">><br>
<br>
[<<moveTo "company_lobby" "Continue to work." 30>>]
<<else>>
You practically dive into the elevator, amazed that you're going to make it to the office just in time!<br>
<br>
<<set _workTime = setup.setNextDate($now, 0, 8, 0)>>
<<set _timeToWork = setup.secondsToDate($now, _workTime)>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Arrive in the nick of time!" _timeToWork>>]
<</if>>
<</if>>
</div>/*#
#desc: suck off a horse to get out of a jaywalking ticket
#status: FINISHED 0.7.11.0
#ignore_spell: hq
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<set $scene.horse = true>>
<<set $player.flags.world_events.jaywalking_horse = true>>
<<applyExperience 'oral' 16 'terrible' $SEEN_STRANGER>>
<<applyExperience 'cum' 10 'terrible' $SEEN_STRANGER>>
<<applyExperience 'penis' 15 'terrible' $SEEN_STRANGER>>
<<if !setup.hasThreshold("bestiality", "horse", "horsecock_lover")>>
<<setThreshold "bestiality" "horse" "horsecock_lover">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_horse'
0
'event_psychiatrist_session_bestiality_horse'
false
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_horse'
0
'theme_church_confession_horse'
true
>>
<</if>>
<<applyExperience 'bestiality' 10 'terrible' $SEEN_STRANGER>>
<<if $player.makeup.template != "">>
<<set $player.makeup.messed = 100>>
<</if>>
<<switch $npc_manager.stage>>
<<case 3>>
<<addEvent 'jaywalking_bj_aftermath_3'>>
<<case 4>>
<<addEvent 'jaywalking_bj_aftermath_4'>>
<<case 5>>
<<if $npc_manager.flags.evil != 1>>
<<addEvent 'jaywalking_bj_aftermath_5'>>
<</if>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "A small park near work">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImageGeneric("cop_01")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
The horse remains remarkably calm as you position yourself beneath him. Muscled legs forming a sort of loose cage around you drives home just how much larger the beast is than you are, a fact that is equally true about the fully unsheathed horse cock staring you down.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
Taking a deep breath, you open your mouth and lean forward. This is exactly the sort of thing you've trained for and you pant and moan as you advance, reflexively reaching out with your hands to caress the stallions huge balls as you work your lips up his shaft.<br>
<br>
"@@.generic_male1;Holy crap, are you hollow?@@" <<He>> asks incredulously as you slide back and forth with over a foot of horse-cock impaling your throat.
<<elseif setup.getTotalValue("oral") > 10>>
Even for one of your expertise what is before you is a true herculean task, but you do your best, wrapping your lips around the thick head and forcing it down your throat until your eyes are watering, stroking with both hands until the cop calls out a suggestion.<br>
<br>
"@@.generic_male1;He really likes it when you caress his balls. Yeah, that's right slut, work it. Damn... are you getting off on this?@@"
<<elseif setup.getTotalValue("oral") > 5>>
Doing more that sucking the tip of the massive horsecock is far beyond your abilities so you make up for it in other ways; using lips, tongue, cheek and both hands to work your way up and down the stallion's shaft. Making a detour to suck on his big, hot balls you finally settle in to lick his slit and slurp his thick horsehead cock.<br>
<br>
"@@.generic_male1;Damn, you sound like you're slurping a popsickle, you must really love horsecock!@@"
<<else>>
You've barely learned to suck human cock and this, this is LITERALLY a whole other animal. Still, you do your best, your lips, tongue and hands working up and down the shaft until the cop calls down with some advice.<br>
<br>
"@@.generic_male1;"He really likes it when you play with his balls.@@"<br>
<br>
Taking the advice in stride you reach out with one hand to fondle and grope the billiard-sized testicles while you continue to suck.<br>
<br>
"@@.generic_male1;Damn, slut, you were born for this!@@"
<</if>>
<br><br>
Ignoring <<his>> surprise you focus on your job. The stallion stands firm, but signals its enjoyment with a deep whinny.<br>
<br>
As you suck away you feel the cop paw at you as <<he>> works your phone out of your pocket.<br>
<br>
"@@.generic_male1;Don't mind me, just giving your manager a call so as to inform them that you're helping with some official police business. Wouldn't want you getting in trouble for performing a service to the community, now would we?@@"<br>
<br>
Your thank you is muffled by the giant cock between your lips, but the cop seems to hardly pay attention as <<he>> hits the "call back" button on your phone. You continue to suck and stroke while vaguely listening to half a conversation.<br>
<br>
"@@.generic_male1;Hello? This is Officer <<if $options.fem>>Maxine<<else>>Max<</if>> Fight<<master>> yes, I'm here with Miss. <<=$player.last_name>>, yes, she said she worked under you. Anyway, she's helping with a bit of official police business, yes, very important. No, she is a bit... occupied at present and cannot come to the phone, but it won't be much longer. I just wanted to give you a call to let you know that she's fine and, well, I wouldn't be able to live with myself if it was my fault you had to punish her cute ass. Yes, I agree she needs to be kept in line, but this time it isn't an excuse, she's performing a real community service. Anyway keep up the good work and congratulations on having such a lovely secretary working under you.@@"<br>
<br>
<<He>> hangs up and then you hear an ominous CLICK. You look to the side with the cock down your throat and one hand outstretched to cradle the heavy balls behind as, CLICK, <<he>> snaps a second picture.<br>
<br>
"@@.generic_male1;Well, go on, finish up. Just wanted to make sure your manager understood just what a helpful citizen she has working for her!@@"<br>
<br>
Your phone chimes as <<he>> sends the sext with a laugh.<br>
<br>
The stallion tenses, and before you can react, he cums. The movement of his balls are akin to tectonic plates shifting and he explodes like a volcano, a thick, salty spray that almost knocks you over.<br>
<br>
Swallowing as much as you can there's no way you can avoid catching part of the blast in the face, but by some miracle you manage to point it away without getting any on your clothes. Panting and gasping as you leak cum and drool you wait until the stallion is finished before carefully rising to your feet.<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<printThought "Shit, I'm a mess, looks like I'm going to be in trouble anyway, but at least I got a delicious breakfast out of the deal!">>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<printThought "Shit, I'm a mess, looks like I'm going to be in trouble anyway, but why does it taste so good?">>
<<else>>
<<printThought "Shit, I'm a mess, looks like I'm going to be in trouble anyway... ugh, it tastes disgusting!">>
<</if>>
<</if>>
<br><br>
Your phone camera CLICKs one final time before Officer Fight<<master>> "gallantly" helps you to your feet and hands you a towel and then your phone. "@@.generic_male1;Good job, citizen, in the future you should be a bit more careful about traffic signals, okay?@@"<br>
<br>
Still catching your breath, you quickly nod, wiping your face and licking your fingers clean before hurrying towards the office, unable to do much about the fact that your breath reeks of horsecum.
<<else>>
The idea of sucking off a horse in public makes you balk and you stand petrified only for the cop to break into a laugh.<br>
<br>
"@@.generic_male1;Oh, wow, you really thought I was serious? Oh geeze, can't wait to tell the <<if $options.fem>>girls<<else>>boys<</if>> about THIS one. Anyway I heard back from HQ, you're good to go, records all seem to be in order. Have a good day Miss <<=$player.last_name>>.@@"<br>
<br>
In a bit of a daze you accept your ID and hurry back to the office.
<</if>>
<br><br>
<<if $now.getUTCHours() < 7 || $now.getUTCHours() == 7 && $now.getUTCMinutes() <= 30>>
<<printThought "Why was I in such a rush? I budgeted my time to arrive well before my official shift starts...">><br>
<br>
[<<moveTo "company_lobby" "Continue to work." 30>>]
<<else>>
You dive into the elevator, surprised when you glance at the clock near the elevator that you aren't actually going to be late after all.<br>
<br>
<<set _workTime = setup.setNextDate($now, 0, 7, 59)>>
<<set _timeToWork = setup.secondsToDate($now, _workTime)>>
[<<moveTo "room_office_sissy_secretary" "Arrive in the nick of time!" _timeToWork>>]
<</if>>
</div>/*#
#desc: suck off cop to get out of a jaywalking ticket
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<set $scene.horse = false>>
<<set $player.flags.world_events.jaywalking_sex = true>>
<<applyExperience 'oral' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'penis' 15 'terrible' $SEEN_STRANGER>>
<<switch $npc_manager.stage>>
<<case 3>>
<<addEvent 'jaywalking_bj_aftermath_3'>>
<<case 4>>
<<addEvent 'jaywalking_bj_aftermath_4'>>
<</switch>>
<<else>>
<<applyExperience 'bdsm' 12 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "A small park near work">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.bestiality_hard && (setup.hasThreshold('bestiality', 'dog', 'advanced') || setup.getTotalValue("bestiality") >= 7)>>
The <<man>> grunts in disappointment. "@@.generic_male1;Disappointing, I thought you wanted to get out of this ticket...@@" <<He>> lets <<his>> words linger and you bite your lip nervously.<br>
<br>
"@@.generic_male1;Well? What are you waiting for, slut? Just because I'm a <<man>> in blue doesn't mean I want my balls to be that way!@@"<br>
<br>
With a final glance back at the horse and its massive, intimidating member, you hurry to your knees and get to work before the <<man>> changes <<his>> mind.
<</if>>
<<if $scene.sex>>
<<if setup.getTotalValue("oral") > 15>>
Addressing <<his>> cock you establish your credentials quickly by gulping <<him>> down with a single lunge. Neither pausing nor coughing you start bobbing back and forth, using your tongue for extra pressure along the base of <<his>> shaft as you place your wrists behind your back and add a bit of moaning encouragement to your effort towards getting <<him>> off.
<<elseif setup.getTotalValue("oral") > 10>>
Taking <<his>> cock in hand you give a few long licks to get it nice and wet before wrapping your mouth around it and attempting to deepthroat <<him>>. You make a solid effort but <<he>> remains too big for even your practiced skills. You pull back with a pop, catching your breath before smiling up at <<him>> past <<his>> cock and <<if $options.fem>>breasts before <</if>>resuming sucking and slurping enthusiastically.
<<elseif setup.getTotalValue("oral") > 5>>
<<Hes>> a bit thicker than you're accustomed to, but you do your best, slurping and sucking and working the shaft with your hand as you endeavour to get <<him>> off.
<<else>>
You try to make up what you lack in skill with enthusiasm as you suck and stroke and lick <<his>> cock to convince <<him>> not to cite you.
<</if>>
<br><br>
"@@.generic_male1;Hand me your phone. No, that doesn't mean you can stop.@@"<br>
<br>
Continuing to bob your head you pass <<him>> your phone as <<he>> hits the "callback" button.<br>
<br>
Focused on your work you partially listen to half a conversation.<br>
<br>
"@@.generic_male1;Hello? This is Officer <<if $options.fem>>Maxine<<else>>Max<</if>> Fight<<master>> yes, I'm here with Miss. <<=$player.last_name>>, yes, she said she worked under you. Anyway, she's helping with a bit of official police business, yes, very important. No, she is a bit... occupied at present and cannot come to the phone, but it won't be much longer. I just wanted to give you a call to let you know that she's fine and, well, I wouldn't be able to live with myself if it was my fault you had to punish her cute ass. Yes, I agree she needs to be kept in line, but this time it isn't an excuse, she's performing a very important community service. Anyway keep up the good work and congratulations on having such a lovely secretary working under you.@@"<br>
<br>
You're almost ignoring the conversation by the time <<he>> hangs up in favour of finishing sucking <<him>> off, and then you hear a CLICK. You look up in surprise half doubting your ears only to hear an identical CLICK as <<he>> snaps a second picture of you with <<his>> cock down your throat.<br>
<br>
"@@.generic_male1;Oh yeah, that's the shot!@@" <<He>> states with a grin and you hear the chime of a sent message. "@@.generic_male1;Well? After talking to your boss I thought she deserved to see evidence of your hard work. Now finish up, we both have jobs to get to... well, other jobs, in your case.@@"<br>
<br>
You blink, still somewhat in shock — <<hes>> just sent a sext to your boss, and <<he>> expects you to still finish <<him>> off?<br>
<br>
<<if $now.getUTCHours() == 7 && $now.getUTCMinutes() > 30>>
<<set _workTime = setup.setNextDate($now, 0, 8, 0)>>
<<set _timeToWork = setup.secondsToDate($now, _workTime)-180>>
<<else>>
<<set _timeToWork = 600>>
<</if>>
[<<moveTo "event_random_jaywalk_5" "It may not say blow-job on your resume, but you have a work ethic!" _timeToWork "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_random_jaywalk_5" "No way!" _timeToWork "<<set $scene.obey=false>>">>]<br>
<<else>>
Faced with the actual reality of sucking cock to get out of a minor jaywalking ticket you balk and quickly babble that, actually, maybe you could just have the ticket?<br>
<br>
<<His>> eyes narrow. "@@.generic_male1;What, is there something wrong with my cock?@@"<br>
<br>
<<printThought "Shit, why did I get in this situation?">><br>
<br>
Snorting and stuffing <<his>> cock back into <<his>> pants <<he>> grabs you by the back of the head and suddenly has you bent over <<his>> knee as <<he>> pulls off <<his>> belt with a quick flourish.<br>
<br>
*SMACK* <<his>> folded leather belt slaps against your ass.<br>
<br>
"@@.generic_male1;If@@"<br>
*SMACK*<br>
"@@.generic_male1;You@@"<br>
*SMACK*<br>
"@@.generic_male1;Won't@@"<br>
*SMACK*<br>
"@@.generic_male1;Suck@@"<br>
*SMACK*<br>
"@@.generic_male1;Cock@@"<br>
*SMACK*<br>
"@@.generic_male1;Like@@"<br>
*SMACK*<br>
"@@.generic_male1;A@@"<br>
*SMACK*<br>
"@@.generic_male1;Good@@"<br>
*SMACK*<br>
"@@.generic_male1;Slut@@"<br>
*SMACK*<br>
"@@.generic_male1;You'll@@"<br>
*SMACK*<br>
"@@.generic_male1;Be@@"<br>
*SMACK*<br>
"@@.generic_male1;Spanked@@"<br>
*SMACK*<br>
"@@.generic_male1;Like@@"<br>
*SMACK*<br>
"@@.generic_male1;A@@"<br>
*SMACK*<br>
"@@.generic_male1;Bad@@"<br>
*SMACK*<br>
"@@.generic_male1;Girl!@@"<br>
*SMACK*<br>
<br>
Your ass red and pained under your clothes you pant and gasp and cry as <<he>> finally lets you slide off <<his>> knee to the ground.<br>
<br>
Standing over you <<he>> drops your ID next to your face and nudges you with <<his>> foot.<br>
<br>
"@@.generic_male1;Get up, slut, and get out of my sight — and don't let me catch you jaywalking again!@@"<br>
<br>
Forcing yourself to your feet you stagger away, on the one hand, you were successful in evading an "official" citation, but on the other your ass certainly paid a price.<br>
<br>
<<if $now.getUTCHours() < 7 || $now.getUTCHours() == 7 && $now.getUTCMinutes() <= 30>>
Making it to work in a daze you're glad you left home early and that this disruption will not make you ACTUALLY late for your shift.<br>
<br>
[<<moveTo "company_lobby" "Continue to work." 30>>]
<<else>>
Making it to work in a daze you're shocked when you glance at a clock and realise you'll actually just barely make it on time.<br>
<br>
<<set _workTime = setup.setNextDate($now, 0, 8, 0)>>
<<set _timeToWork = setup.secondsToDate($now, _workTime)>>
[<<moveTo "room_office_sissy_secretary_work_morning_early" "Arrive in the nick of time!" _timeToWork>>]
<</if>>
<</if>>
</div>/*#
#desc: suck off cop to get out of a jaywalking ticket
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 15 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "A small park near work">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You resume sucking and <<he>> grins, holding your head with one hand until just before <<he>> finishes when <<he>> pulls you all the way down, forcing you to swallow every drop, <<his>> giant cock jammed into your throat where you can barely even taste it.<br>
<br>
"@@.generic_male1;Not bad, not bad at all.@@" <<He>> grunts as <<he>> lets go and you return to your feet.<br>
<br>
"@@.generic_male1;Here's your phone, and ID. Don't let me catch you jaywalking again, okay?@@"<br>
<br>
You nod quickly as you lick your lips clean, stowing your things and heading to work.
<<else>>
Glaring at <<him>> you pull back and stand to your feet. You try to snatch your phone back but <<he>> pulls it away, smirking for a moment then handing it over along with your ID.<br>
<br>
"@@.generic_male1;Teasing bitch,@@" <<he>> snorts, though it doesn't sound like <<hes>> completely serious. "@@.generic_male1;Good for you I already told your boss I let you off — I'm a <<man>> of my word but next time... next time you'd better finish what you started because if I don't get off, you don't get off.@@"<br>
<br>
<<He>> shoves past you and you let out a breath.<br>
<br>
<<printThought "Time to get to work, where things are... safer?">>
<</if>>
<<if $now.getUTCHours() < 7 || $now.getUTCHours() == 7 && $now.getUTCMinutes() <= 30>>
Making it to the office in a daze you're glad you left home early and that this disruption will not make you ACTUALLY late for your shift.<br>
<br>
[<<moveTo "company_lobby" "Continue to work." 30>>]
<<else>>
Making it to the office in a daze you're shocked when you glance at a clock and realise you'll actually just barely make it on time.<br>
<br>
<<set _workTime = setup.setNextDate($now, 0, 8, 0)>>
<<set _timeToWork = setup.secondsToDate($now, _workTime)>>
[<<moveTo "room_office_sissy_secretary_work_morning_early" "Arrive in the nick of time!" _timeToWork>>]
<</if>>
</div>/*#
#desc: manager confronts you about image of sucking off cop/horse
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
After the remarkably unremarkable inspection
<<if $npc_manager.stage >= 4>>
you are turning back to your work when <<=setup.getNpcName("npc_manager","formal")>> summons you back into her office. "@@.npc_manager;The diligence is appreciated, but we have another matter to attend to...@@"
<<else>>
you turn to your desk only for <<=setup.getNpcName("npc_manager","formal")>> to stop you in the doorway. "@@.npc_manager;Oh, one other thing...@@"
<</if>>
<br><br>
She stands, phone in hand, showing you a picture of you
<<if $fetish.bestiality_hard && $scene.horse>>
with a massive horse-cock
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 18>>
balls deep down your throat.
<<else>>
stuffed down your throat.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
probing your throat.
<<else>>
stretching your lips.
<</if>>
<</if>>
<<else>>
looking up<<if $options.fem>> under the cop's breasts, with her large cock<<else>>, with the cop's large cock<</if>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
balls deep down your throat.
<<else>>
down your throat.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
halfway down your throat.
<<else>>
between your lips.
<</if>>
<</if>>
<</if>>
<br><br>
<<if State.hasPlayed("event_manager_oral_training_1")>>
"@@.npc_manager;Quite the helpful citizen, you were this morning.@@" She notes with a smile. "@@.npc_manager;I just hope that you did not use too much energy on your... commute. You have your duties to attend to, after all.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Return to your desk and get to work." 180>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Return to your desk and get to work." 180>>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Return to your desk and get to work." 180>>]
<<default>>
ERROR: unexpected stage npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<<else>>
"@@.npc_manager;Quite the helpful citizen, you turned out to be.@@" She notes with a smile. "@@.npc_manager;But, more importantly, this reminded me that I have not been paying quite enough attention to your oral presentation skills.@@"
<<if setup.getTotalValue("oral") > 15>>
She grins as you remember how it felt to have a cock stuffed all the way down your throat. "@@.npc_manager;Of course, it seems you have been mastering such things all on your own... or maybe you are just a natural deep throat queen? In any case it is another feather in the cap for your career.@@"
<<elseif setup.getTotalValue("oral") > 10>>
She smiles as you recall your inability to take the entire cock. "@@.npc_manager;You have done quite well on your own but, once again, it seems like you need my assistance to fully reach your potential.@@"
<<else>>
She shakes her head. "@@.npc_manager;What I saw was, to put it frankly, highly disappointing. By this point in your development you should be struggling to recall what a gag reflex even is — and resolute that you have no interest in having one. Fortunately for you, I am here to help you reach your full, and filled, potential.@@"
<</if>>
<br><br>
You gulp and she beckons you into her office. "@@.npc_manager;Come, we shall start by assessing your skills under more controlled conditions.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_oral_training_1" "Continue." 600 "<<set $scene.fromInspection=true>><<set $scene.inspectionReturn='event_manager_daily_check_stage_3_finalize'>>">>]
<<case 4>>
[<<moveTo "event_manager_oral_training_1" "Continue." 600 "<<set $scene.fromInspection=true>><<set $scene.inspectionReturn='event_manager_daily_check_stage_4_finalize'>>">>]
<<case 5>>
[<<moveTo "event_manager_oral_training_1" "Continue." 600 "<<set $scene.fromInspection=true>><<set $scene.inspectionReturn='event_manager_daily_check_stage_5_finalize'>>">>]
<<default>>
ERROR: unexpected stage npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: revise plan to wear panties first day
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bedroom = $player.llocation == "room_bedroom">>
<<switch $scene.reason>>
<<case 'reluctant'>>
<<setThreshold 'feminization' 'accident' 'one_time_wearer'>>
<<set $player.sec_style.clothing.underwear = "obedient">>
<<case 'enthus'>>
<<setThreshold 'feminization' 'good_girl' 'enthusiast'>>
<<set $player.sec_style.clothing.underwear = "voluntary">>
<<case 'commando'>>
<<set $player.flags.commando = true>>
<<set $player.sec_style.clothing.underwear = "">>
<<case 'mall'>>
<<set $player.flags.commando = true>>
<<set $player.sec_style.clothing.underwear = "money">>
<</switch>>
<</if>>
<<if $scene.bedroom>>
<<set $player.location to "Bedroom">>
<<else>>
<<set $player.location to "Foyer">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.bedroom>>
<<createAdvBGR setup.getBedroomImage()>>
<<else>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.reason>>
<<case 'reluctant'>>
You take a deep breath. It really feels like the world is conspiring against you, but you don't have a choice. If making it to your new job means wearing women's panties for a day, well, that's a pretty small price to pay, right?<br>
<br>
<<printThought "It's not like this is a permanent arrangement. Just one day, that nobody else will ever know about, then it'll be back to boxers.">><br>
<br>
Your decision made you release your breath and get ready to pull on some panties.
<<case 'enthus'>>
You shake your head, confused as to where such a negative thought came from, you're actually excited to wear panties, so what are you waiting for?
<<case 'commando'>>
Whatever you were thinking before, the prospect of actually wearing women's panties, even for just a day... <<printThought "Nope, nope, I'm a dude, I'll just go commando, That's manly, right?">>
<<case 'mall'>>
Whatever your previous plans, being faced with the prospect of ACTUALLY wearing women's panties... nope, you'll just hit the mall on the way to work, it'll be worth a day or two more of ramen to avoid such humiliation, no matter how secret it would technically be.
<<default>>
ERROR: unexpected scene.reason <<=$scene.reason>>
<</switch>>
<br><br>
Your decision made you take a deep breath and prepare to meet the day.<br>
<br>
<<if $scene.bedroom>>
[<<moveTo "room_bedroom" "Continue." 60>>]
<<else>>
[<<moveTo "room_foyer" "Continue." 60>>]
<</if>>
</div>/*#
#desc: react to first time penis shrinks
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body_ref.firstShrink = true>>
<<switch $scene.react>>
<<case 'freak'>>
<<applyStress 20>>
<<case 'happy'>>
<<applyStress -10>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.react>>
<<case 'freak'>>
You freak out. You're smaller, your <<getWordMyPenis>> is shrinking! While on the one hand you shouldn't be technically surprised by this development having it happen for real... all of this started because you were trying to get bigger, and now, in addition to everything else that has happened in your life, you're getting even smaller!<br>
<br>
Your tantrum does little but raise your blood pressure and eventually you manage to put it aside and start your day.
<<case 'neutral'>>
You decide to just ignore what's going on "down there" maybe it was just a fluke, anyway.
<<case 'happy'>>
You smile, both at the changes your body is going through, and amusement at how far you've come — in a way all of these things happened because you were trying to get bigger, and now you're even more delighted to be shrinking. With a smile on your face, you start your day.
<<default>>
ERROR: unexpected scene.react <<=$scene.react>>
<</switch>>
<br><br>
<<if $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn("cage")>>
<<printThought "I need to be in chastity for work!">><br>
<br>
[<<moveTo "event_shrink_chastity_1" 'Uh-oh...' 60>>]
<<else>>
[<<moveTo "room_breakfast" "Have breakfast." 600 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: react to chastity falling off due to size
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<removeItem $scene.cage true>>
<</if>>
<<applyStress 10>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cage == "">>
You try to stuff yourself into a cage only for the device to drop to the floor with a THUNK and your eyes go wide in shock.
<<else>>
Your <<=setup.getItemName($scene.cage)>> drops to the floor with a THUNK and your eyes go wide in shock.
<</if>>
Heart racing, you bend down to pick up the fallen cage, frantically trying to slip it back on, but you are just too small. No matter how you try to arrange things it just slides right off your <<getWordMyPenis false>>, remaining locked the whole time.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getTotalValue("submission") > 15>>
<<printThought 'Oh no, this is a disaster. I need to be locked up... plus what is <<=setup.getNpcName("npc_manager","formal")>> going to do when she finds out?'>>
<<else>>
<<printThought 'Oh no, this is a disaster! What is <<=setup.getNpcName("npc_manager","formal")>> going to do when she finds out?'>>
<</if>>
<<else>>
<<if setup.getTotalValue("submission") > 5>>
<<printThought "I'm... free? But what is <<=setup.getNpcName('npc_manager','formal')>> going to do when she finds out?">>
<<else>>
<<printThought "I'm free! But... what is <<=setup.getNpcName('npc_manager','formal')>> going to do when she finds out?">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_shrink_chastity_2" 'Call <<=setup.getNpcName("npc_manager","formal")>>.' 60>>]<br>
[<<moveTo "room_breakfast" "Just proceed to breakfast." 600 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: call manager after chastity falls off due to size
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<addEvent 'chastity_delivery'>>
<<set $npc_manager.flags.penis_shrinking.small_picture = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Hesitantly you dial up <<=setup.getNpcName("npc_manager","formal")>>, she answers with a heart-quickening "@@.npc_manager;Good morning, my pet.@@"<br>
<br>
Nervously you explain the situation, the other end of the line silent for a fear-inducing long time.<br>
<br>
"@@.npc_manager;Picture.@@" She finally states and you hurriedly snap a photo of your "situation" without giving a second thought to the fact your manager just asked you for a dick pic...<br>
<br>
<<if $player.body_ref.shrink_style == ''>>
You take a picture and consider composing an accompanying message...<br>
<br>
<<printThought "How I react to this is going to determine how she approaches such things going forward...">><br>
<br>
[<<moveTo "event_shrink_chastity_3" "Proudly confirm that you've been taking hormones to reduce your size." 60 "<<set $scene.style='spe'>>">>]<br>
<<if !$fetish.sph>>
[@@.link_locked;Due to your current game settings this option is disabled.@@]<br>
<<else>>
[<<moveTo "event_shrink_chastity_3" "Add a defensive explanation that the device probably just stretched or something." 60 "<<set $scene.style='anger'>>">>]<br>
[<<moveTo "event_shrink_chastity_3" "Try to deny the evidence that you are smaller." 60 "<<set $scene.style='sph'>>">>]<br>
<</if>>
[<<moveTo "event_shrink_chastity_3" "Subtly note that you've been taking hormones that seem to be reducing your size." 60 "<<set $scene.style='neutral'>>">>]
<<else>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph'>>
"@@.npc_manager;Hmf, I should have foreseen this — of course you would end up so small and pathetic that standard means of containment would fail. On the one hand it really is quite useless, but rules are rules and you really do need to be locked up at all times lest you ever consider that vestigial growth to be anything other than useless.@@"
<<case 'spe'>>
"@@.npc_manager;Oh, it is so cute and beautiful! On the one hand it is too bad it no longer fits inside its lovely home, almost worth putting on permanent display, but no, such a delicate treasure needs to be kept safe and secure.@@""
<<case 'none' ''>>
"@@.npc_manager;I see, well, I suppose I should have expected this to happen eventually.@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<br><br>
There is a brief pause as you hear what sounds like typing.<br>
<br>
"@@.npc_manager;There, I have ordered you a replacement device more suitable to your current situation. Expedited delivery means it should be at your door any minute now — please send me a picture as soon as you have it locked on so that I can confirm the fit, and I look forward to seeing it in person <<if $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>Monday<<else>>at this morning's inspection<</if>>.@@"<br>
<br>
[<<moveTo "room_breakfast" "Hang up and start breakfast." 600 "<<set $currentcall = false>><<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: choose shrink style over phone
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case 'spe'>>
<<set $player.body_ref.shrink_style = 'spe'>>
<<case 'sph'>>
<<set $player.body_ref.shrink_style = 'sph'>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<case 'anger'>>
<<set $player.body_ref.shrink_style = 'sph'>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<case 'neutral'>>
<<set $player.body_ref.shrink_style = 'none'>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You listen with bated breath as she reviews your message.
<<switch $scene.style>>
<<case 'spe'>>
"@@.npc_manager;I see, I see, well, that is just so wonderful for you. Your journey to becoming a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary is just such a delight to witness and I am so glad to be a part of it.@@"
<<case 'sph'>>
"@@.npc_manager;Now, now, I know it must be quite a shock, one of the final vestiges of masculinity disappearing before your eyes but, well... we both know this was inevitable. Cocks are for men and they should be big and hard and thick whereas yours was always just a cute, adorable little thing. It becoming even smaller is just a reflection of who you were always meant to be and I can only hope it shrinks even more so that it becomes even less of a distraction from what is really important.@@"
<<case 'anger'>>
"@@.npc_manager;What is this rant you sent me? No, I am not going to read that at all. You are smaller now than when I first met you — that is a fact. Moreover this was really to be expected — after all a big penis would be totally inappropriate for someone like you. No, a nice small thing is much more suitable and I am sure it will continue to shrink down to better reflect who, and what, you really are.@@"
<<case 'neutral'>>
"@@.npc_manager;Very nice, well, thank you for sending the picture, now we can move forward.@@"
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
<<if $npc_manager.flags.require_chastity>>
You hear what sounds like typing and then she continues. "@@.npc_manager;There, I have ordered you a replacement device, it should be arriving shortly. This way you can properly meet your requirements of being locked. Good luck, and I shall see you at the office <<if $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>Monday<<else>>during this morning's inspection<</if>>.@@"
<<else>>
She continues. "@@.npc_manager;Thank you for keeping me informed on this matter, I shall see you at the office <<if $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>Monday<<else>>shortly<</if>>.@@"
<</if>>
<br><br>
[<<moveTo "room_breakfast" "Hang up and start breakfast." 600 "<<set $currentcall = false>><<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: chastity device from manager arrives
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<if $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<deleteMember $currentTasks.manager_morning_inspection_task.trigger 'chastity_key'>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You hear your doorbell ring, heading to the foyer to find a package waiting on your doorstep. Quickly bringing it inside you open up the box to find the device your <<=setup.getNpcName("npc_manager","title")>> promised, nervously lifting it out of the packaging.<br>
<br>
Made of polished chrome with a silicone liner it reminds you a bit of a thong; a smooth shell in front that will separate your bits from your body to completely cover and contain them, the locking belt and plate that goes between your legs serving to keep the whole contraption VERY secure — while leaving a gap for access to your rear hole.<br>
<br>
[<<moveTo "event_chastity_delivery_2" "Put it on." 300 "<<set $scene.wear=true>>">>]<br>
<<if setup.getTotalValue("submission") >= 15>>
[@@.link_locked;You can hardly even imagine disobeying such an important order from your <<=setup.getNpcName("npc_manager","title")>>.@@]
<<elseif setup.getTotalValue("bondage") >= 15>>
[@@.link_locked;The device calls to you and your deep need to be restrained and controlled and you cannot resist its siren song.@@]
<<else>>
[<<moveTo "room_foyer" "Put it aside." 60 "<<set $scene.wear=false>>">>]<br>
<</if>>
</div>/*#
#desc: put on chastity device from manager
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'chastity_belt_electric'>>
<<if $scene.wear>>
<<wearItem 'chastity_belt_electric' true>>
<<manipulateItem 'chastity_belt_electric' 'lock' true>>
<</if>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<if $currentTasks.manager_morning_inspection_task.trigger.chastity_key>>
<<deleteMember $currentTasks.manager_morning_inspection_task.trigger "chastity_key">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
Taking a deep breath, you pull the new chastity belt up your legs, carefully arranging yourself inside the tube/smooth-line compartment before locking it around your waist and between your legs. Perfectly sized and quite comfortable, you admire how it looks — a bit high tech and shiny, but it also gives you an amazingly "flat" profile that is quite attractive and feminine.<br>
<br>
Bending and moving, you find the whole thing quite comfortable, without the slight "weight" you have become accustomed to with cages. Looking through the box, you find neither instructions or key, perhaps not surprising given who sent you the device.<br>
<br>
[<<moveTo "event_chastity_delivery_3" 'Text <<=setup.getNpcName("npc_manager","formal")>> a picture of your new situation.' 60 "<<set $scene.wear=true>>">>]<br>
[<<moveTo "room_foyer" 'Continue your morning routine.' 60>>]
</div>/*#
#desc: send manage picture of you in secure chastity belt
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.penis_shrinking.secure_picture = true>>
<<include "setLastSeenCage">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You take pictures from a couple different angles of your new chastity device and send them off to <<=setup.getNpcName("npc_manager","formal")>> as ordered. Swiftly you get a text back.<br>
<br>
"@@.npc_manager;Lovely. It looks even better on you than I had pictured. Enjoy your new security. I quite look forward to seeing it in person.@@"<br>
<br>
[<<moveTo "room_foyer" 'Put your phone away.' 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: run into reenactors
#status: RELEASED 0.9.2.0
#ignore_spell: reenactors,lt
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" setup.charImageGeneric("npc_reenactor_01")>>
<div id="invframe" class="scrolltext">
You're walking home when you hear a shout of "@@.generic_female1;Hey! Get Down!@@" barely having a chance to look over before someone drags pulls you around a corner and down to your knees.<br>
<br>
"@@.generic_female1;Damnit, LT, are you trying to get iced? The battle's already started, come on, we've got fortifications in the park.@@"<br>
<br>
<<printThought "LT? Does she think this is a real uniform or something?">> You think, even as you find yourself being dragged after your new acquaintance, rounding a corner to what actually does seem like a battlefield taking place in a city park. The pop, pop of gunfire has you sprint faster as the soldier leads you to a gully that seems to be serving as a makeshift trench position.<br>
<br>
[<<moveTo "event_reenactors_2" "What the heck is going on here?" 300>>]
</div>/*#
#desc: join reenactors in trenches
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "pride_armor_softair">>
<<wearItem "pride_armor_softair" true>>
<</if>>
<<set $player.location to "Trenches">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/trench.png" setup.charImageGeneric("npc_reenactor_01") setup.charImageGeneric("npc_reenactor_02")>>
<div id="invframe" class="scrolltext">
"@@.generic_female2;Don't tell me these are the only reinforcements they sent us?@@" The second soldier asks incredulously just before a nearby explosion sends dirt showering over the trench and the three of you to duck reflexively.<br>
<br>
"@@.generic_female1;Well get ready, we're about to push!@@" The woman follows up as a weapon is shoved into your hands.<br>
<br>
"@@.generic_female2;GO GO GO!@@" Comes the call as the three of you join a wave of others scrambling out of the trench and racing across the park.<br>
<br>
[<<moveTo "event_reenactors_3" "Charge?!" 300>>]
</div>/*#
#desc: reenactor battle
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Trenches">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/trench.png" setup.charImageGeneric("npc_reenactor_01") setup.charImageGeneric("npc_reenactor_02")>>
<div id="invframe" class="scrolltext">
You may have a gun, but you don't even have the opportunity to shoot as the other soldiers on your side are a step ahead... not that the shots seem particularly difficult, the other side looks to be wearing camo, but it's easily the worst camo you've ever seen, a blocky, pixelated design in a desert pattern that in every way makes them stand out in the current environment.<br>
<br>
The last of the foes go down and you find yourself in a celebration with your fellow soldiers, a loud cheer going up... that is moments later joined in as the slumped over "defeated" enemies stand up and raise their hands in triumph as they join in the celebration.<br>
<br>
[<<moveTo "event_reenactors_4" "Wait, what?" 300>>]
</div>/*#
#desc: learn about reenacting
#status: RELEASED 0.9.2.0
#ignore_spell: enactment,enactors,usm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Trenches">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/trench.png" setup.charImageGeneric("npc_reenactor_01") setup.charImageGeneric("npc_reenactor_02")>>
<div id="invframe" class="scrolltext">
It takes you a few moments as the one-time enemies start to walk over to your group as your look of confusion, and the end of the "action" finally has someone give you an explanation. "@@.generic_female1;Wait... did you think this was real? Oh Goddess! I'm so sorry, I saw the outfit and I just figured you were a bit late to the reenactment!@@"<br>
<br>
<<printThought "Reenactment?">> things are starting to make sense... sort of as you ask what, exactly they're re-enacting?<br>
<br>
"@@.generic_female2;So it's not so much a battle, and we take a few liberties to liven it up, but this is based on a parade by the USM: the Unregulated Sleeping Militia that went violent in Illinois. You may not have heard of them, but they were a hate group active before... well, before this battle when they got their shit absolutely kicked in by a group of queer veterans, a real humiliation and not a thing for those boys to be proud of that day, I tell you what!@@"<br>
<br>
As you're talking one of the oppositional forces finishes making <<his>> way over, greeting one of your fellow soldiers with a hug before getting filled in on you.<br>
<br>
"@@.generic_male1;So you just happened to be dressed in historically accurate gear and stumbled into our little reenactment troupe? What are the odds!@@"<br>
<br>
You shrug, your heart-rate finally having come down from the combat excitement as you join in on laughing along at the absurdity.<br>
<br>
"@@.generic_male1;In any case, great costume, and hope you had fun, we think it's important to do this sort of thing to remember the past, especially lesser-known events like this where lingering troglodytes get sent back into their hate holes.@@"<br>
<br>
You're a bit surprised at the <<man>>'s vitriol and ask why they're playing the part of the bad guys?<br>
<br>
"@@.generic_male1;It's reenactment, and sometimes being an ally means playing the part of the enemy... an enemy who, as you saw, went down.@@"<br>
<br>
"@@.generic_female2;Speaking of going down...@@" your soldier friend interjects, "@@.generic_female2;I think it's time for you to make... reparations@@" She smirks as the other <<guy>> grins and the two of them head off arm in arm.<br>
<br>
You glance over at the remaining soldier... who is making flirty eyes at you...<br>
<br>
"@@.generic_female1;So... I guess things were a bit confused but... feel like celebrating?@@"<br>
<br>
[<<moveTo "event_reenactors_5_sex_1" "Celebrations are good..." 180>>]
[<<moveTo "event_reenactors_5_leave" "You have somewhere you need to get to." 180 "<<set $scene.lateabort=false>>">>]
</div>/*#
#desc: leave reenactor
#status: RELEASED 0.9.2.0
#ignore_spell: reenactor,reenactors
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.lateabort>>
<<removeItem "pride_armor_softair" true>>
<<deleteItem "pride_armor_softair">>
<</if>>
<</if>>
<<set $player.location to "Trenches">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/trench.png" setup.charImageGeneric("npc_reenactor_01")>>
<div id="invframe" class="scrolltext">
You thank the reenactor for the offer but note that you were on your way somewhere before getting caught up in the combat.<br>
<br>
"@@.generic_female1;Oh, right... well, I hope you had fun and learned something or something, have a good day!@@"<br>
<br>
<<if $scene.lateabort>>
You can't quite keep your eyes off her cyber-cock and she winks. "@@.generic_female1;Don't worry, I'll find somewhere to safely discharge this ordinance.@@"
<<else>>
You return the fake gun and she bounces off to join some of the other reenactors.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Continue on home." 180>>]
</div>/*#
#desc: sex with reenactor
#status: RELEASED 0.9.2.0
#ignore_spell: storically,lt
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "pride_armor_softair" true>>
<<deleteItem "pride_armor_softair">>
<</if>>
<<set $player.location to "Trenches">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/trench.png" setup.charImageGeneric("npc_reenactor_01")>>
<div id="invframe" class="scrolltext">
You and your new friend find a private spot a bit further up the trench as she detaches the crotch-plate of her armour to reveal a massive cyber-cock. "@@.generic_female1;See? I came strapped with more than the gat,@@" she notes with a smirk as you both place your guns to the side. "@@.generic_female1;So come on then, LT, let's see you earn that officer cum-mission...@@"<br>
<br>
[<<moveTo "event_reenactors_5_sex_2" "Is that thing historically accurate? (offer your ass)" 300 "<<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if setup.canSexOrRemoveChastity("vag")>>
[<<moveTo "event_reenactors_5_sex_2" "Is that thing historically accurate? (unlock and offer your vagina)" 300 "<<set $scene.anal=false>>">>]<br>
<<else>>
<</if>>
<<else>>
[<<moveTo "event_reenactors_5_sex_2" "Is that thing historically accurate? (offer your vagina)" 300 "<<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_reenactors_5_leave" "Change your mind about sex." 180 "<<set $scene.lateabort=true>>">>]
</div>/*#
#desc: sex with reenactor
#status: RELEASED 0.9.2.0
#ignore_spell: lt,storically
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal>>
<<applyExperience 'anal' 17 'terrible' $SEEN_STRANGER>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Trenches">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/trench.png" setup.charImageGeneric("npc_reenactor_01")>>
<div id="invframe" class="scrolltext">
<<if $scene.anal && setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
As you remove your plug, you
<<elseif !$scene.anal && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
As you unlock your chastity belt, you
<<else>>
You
<</if>>
playfully eye her high-tech cyber-cock and ask if it's "historically accurate?" <br>
<br>
"@@.generic_female1;That's HER-storically accurate,@@" she replies, her dong literally revving, beaded rings spinning in opposite directions as the tip jack-hammers slightly as she
<<if $scene.anal>>
folds your legs up towards your ears to slide into your ass.
<<else>>
lines up with your waiting folds.
<</if>>
<br><br>
You moan as the hyper-advanced dildo slides into you, thick, throbbing and totally amazing, it fills <<if $scene.anal>>your ass<<else>>you up<</if>> as the woman grinds and grunts. "@@.generic_female1;Get ready, LT, victory cums... hard...@@" she pants, the quiver in her voice far more than her exertion, telling you that amongst its other features the dildo must be stimulating her, as well.<br>
<br>
<<printThought "Hard and fast...">> is your only thought as you join the woman in howling with a machine-fueled orgasm.<br>
<br>
"@@.generic_female1;Mission accomplished...@@" she whispers as she finally slides free and falls to the side, "@@.generic_female1;See you on the flipside,@@" she adds before slinking away up the trench, leaving you to catch your breath and puzzle if any of what you just experienced actually happened.<br>
<br>
<<printThought "This is a very strange city...">><br>
<br>
[<<moveTo "room_foyer" "Continue on home." 180>>]
</div>/*#
#desc: splashed on the way to work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkTaskUntimedComplete("manager_morning_inspection_task") && ($now.getUTCHours() < 7 || $now.getUTCHours() == 7 && $now.getUTCMinutes() < 55)>>
<<alterStatAllWorn 'dirty' '["add",100]'>>
<<else>>
<<removeTransitEvent 'company_lobby' 'sissy_choker_event'>>
<<set $randomEvents['transit']['company_lobby'].pushUnique({done : false, id : 'sissy_choker_event'})>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 300)>>
<<moveTo "company_lobby">>
<</if>>
<</if>>
<<set $player.location = "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You're on your way to work, as usual when a ground-car goes screaming past, splashing you with a mix of water and who knows what else from last night's rain.<br>
<br>
<<printThought "Oh no, I'm a mess! What is <<=setup.getNpcName('npc_manager', 'formal')>> going to say?">><br>
<br>
<<if $now.getUTCHours() < 7 || $now.getUTCHours() == 7 && $now.getUTCMinutes() < 45>>
As if on cue your phone rings, it's <<=setup.getNpcName('npc_manager', 'formal')>>!<br>
<br>
"@@.npc_manager;Hello, <<=$player.first_name>>? I know it is a bit early but... well, some things happened overnight and I could really use your help, please drop whatever you are doing and come to the office as quickly as possible. Given the distance from work to your domicile I shall expect you in ten minutes or less. Quickly, now!@@"<br>
<br>
Before you can make an excuse or beg for time she has already hung up.<br>
<br>
<<printThought "Dammit, I guess I have to go in like this... I hope she doesn't get too upset...">>
<<else>>
<<printThought "Dammit, and there's no time to go home and change...">>
<</if>>
<br><br>
[<<moveTo "event_sissy_choker_pre_2" "Hurry on to the office." 180>>]
</div>/*#
#desc: rush into work after spill -> sissy choker offer
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<postponeTask 'manager_morning_inspection_task' 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
You rush in to the office to find <<=setup.getNpcName('npc_manager', 'formal')>> already waiting for you.<br>
<br>
"@@.npc_manager;Wonderful you are here we can—@@" She halts mid-sentence, looking in horror upon your dirty wet outfit.<br>
<br>
"@@.npc_manager;Oh my! Did you get in a mud fight on the way to work? No, no, no, this WILL not do!@@"<br>
<br>
She runs over to inspect you, "@@.npc_manager;I just do not have time this morning to send you for a proper cleaning, but it looks like it is just the clothing, quick. Take them off and let me give you something to change into.@@"<br>
<br>
<<printThought "This is a lot better than eating a punishment...">><br>
<br>
[<<moveTo "event_sissy_choker_pre_3" "Remove your dirty clothes." 300>>]
</div>/*#
#desc: strip after spill event on the way to work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverythingButUnderwear>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
You strip as <<=setup.getNpcName('npc_manager', 'formal')>> pops into her inner office to get your "new" clothes. You have just finished folding up your dirty clothes when she emerges and you gawk at the outfit on offer.<br>
<br>
"@@.npc_manager;Here you go — I was saving this for a special occasion but, well... what is more special than an emergency?@@"<br>
<br>
You continue to stare at the outfit. Rather than anything one might think of as "office" attire it is a pink, effeminate dress, replete with ribbons and white lace trim... and matching white satin gloves tied off with a bow. Almost as an after-thought there are a pair of matching — if insanely steep, heels.<br>
<br>
"@@.npc_manager;Well go on and get dressed — we still have quite a bit of work to attend to and you certainly cannot do so wearing just your underthings!@@"<br>
<br>
[<<moveTo "event_sissy_choker_pre_4_obedient_1" "Be a good girl and change as instructed." 300>>]<br>
[<<moveTo "event_sissy_choker_pre_4_money_1" "Shouldn't such a change in uniform involve contract re-negotiation?" 300>>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;You are too obedient to do anything but what your <<=setup.getNpcName('npc_manager', 'title')>> commands.@@]
<<else>>
[<<moveTo "event_sissy_choker_pre_4_forced_1" "No! She's done enough already, you are putting your foot down on wearing something so extreme!" 300>>]
<</if>>
</div>/*#
#desc: obediently change after spill event on the way to work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<addItem 'sissy_dress_pink'>>
<<addItem 'sissy_gloves_pink'>>
<<addItem 'maid_heels_extreme_pink'>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('fancy_choker')>>
<<set $npc_manager.flags.seenSissyChoker = true>>
<<addEvent 'sissy_choker_elevator'>>
<<wearItem 'sissy_dress_pink' true>>
<<wearItem 'maid_heels_extreme_pink' true>>
<<wearItem 'sissy_gloves_pink' true>>
<<set $scene.wearingCollar = $player.flags.collar.owner != "">>
<<if $scene.wearingCollar>>
<<addItem 'choker_sissy_wide'>>
<<wearItem 'choker_sissy_wide' true>>
<<else>>
<<addItem 'choker_sissy'>>
<<wearItem 'choker_sissy' true>>
<</if>>
<<if !$player.sec_style.clothing.sissy_choker>>
<<set $player.sec_style.clothing.sissy_choker = "obedient">>
<</if>>
<<applyExperience 'feminization' 20 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
You quickly put on the adorably pink outfit. The satin is wonderfully smooth and snug and you get a slight thrill as everything slips into place as if the outfit was sized perfectly for you, which, given where it came from, it is probably a safe bet that it was.<br>
<br>
You take a moment to fluff your skirts and make sure everything is aligned, satisfied that you have your new outfit just perfect by the time <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> takes one look at you and smiles wide. "@@.npc_manager;Once again an outfit looks even better on you in person than it did in my imagination. Almost makes me wish you could wear such things every day. Alas, it would be too distracting, and set an improper example of professionalism for the rest of the office. You work in a representative position, after all.@@"<br>
<br>
You nod, even as the compliment makes your heart skip a beat.<br>
<br>
<<if setup.checkItemWorn("secure_sissy_choker")>>
She smiles as her fingers brush past your already matching, locked-on pink collar. "@@.npc_manager;What a perfect ensemble... for my perfect <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"
<<elseif $scene.wearingCollar>>
She smiles as she fingers your collar. "@@.npc_manager;A bit of a clash with the collar, I suppose... but we can make do for a little while, hmm?@@"<br>
<br>
She wraps a pink, frilly choker over top of your collar. The fit isn't perfect, but it definitely has the "desired" effect of pulling the outfit together as you look at your reflection, your <<if $fetish.sissy>>sissifying<<else>>pink<</if>> clothes topped off by the frilled choker<<if $fetish.sissy>> — with the word "SISSY" spelled out in rhinestones across the front<</if>>.<br>
<br>
"@@.npc_manager;There, is that just not perfect for you? So lovely and sweet — just like its wearer!@@"
<<else>>
"@@.npc_manager;Now — for the final piece to really make things perfect, if you could hold your hair out of the way, my dear?@@"<br>
<br>
You do as she commands and she brings something to your throat. You don't get a good look at it, save to notice that it's pink, and that it feels quite soft around your neck once she buckles it in place.<br>
<br>
She smiles even wider before leading you to a mirror to give you a look at the pink, frilled choker<<if $fetish.sissy>> — with the word "SISSY" spelled out in rhinestones across the front<</if>>.<br>
<br>
"@@.npc_manager;There, is that just not perfect for you? So lovely and sweet — just like its wearer!@@"
<</if>>
<br><br>
You blush only to jump as your plug lets out a burst of vibrating pleasure.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> winks before palming her remote. "@@.npc_manager;A little bonus reward for my good, no, my WONDERFUL girl. I would love to keep staring at you but, alas, there is work to be done. I hope your new outfit makes up for that mess on the way to work and you have a day as lovely as you are.@@"<br>
<br>
With a final glance back she disappears into her inner office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 300 "<<set _x = setup.addManagerEndlessTask()>>">>]
</div>/*#
#desc: ask for money after spill event on the way to work
#status: FINISHED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
You ask if such a radical diversion from your uniform shouldn't involve some sort of contract re-negotiation?<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> steps closer, the office seeming to close around you as she looms as large as her growing influence over your life. "@@.npc_manager;You come to work dirty, in violation of your contract and you want... to renegotiate my amelioration?@@"<br>
<br>
You're at a loss for words as you tremble before her gaze... only for her expression to split into an amused smile. "@@.npc_manager;Such a greedy amusement... very well, one hundred credits. That should be more than fair to cover the inconvenience, and keep you on-the-job and equipped to work.@@"<br>
<br>
There is a glint in her eye, a silent message that this is less an offer than another move in her game... and you are little more than a pawn.<br>
<br>
[<<moveTo "event_sissy_choker_pre_4_money_2" "Accept her offer..." 300>>]<br>
[<<moveTo "event_sissy_choker_pre_4_forced_1" "No! She's done enough already, you are putting your foot down on wearing something so extreme!" 300>>]
</div>/*#
#desc: money change after spill event on the way to work
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<addItem 'sissy_dress_pink'>>
<<addItem 'sissy_gloves_pink'>>
<<addItem 'maid_heels_extreme_pink'>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('fancy_choker')>>
<<set $npc_manager.flags.seenSissyChoker = true>>
<<addEvent 'sissy_choker_elevator'>>
<<wearItem 'sissy_dress_pink' true>>
<<wearItem 'maid_heels_extreme_pink' true>>
<<wearItem 'sissy_gloves_pink' true>>
<<set $scene.wearingCollar = $player.flags.collar.owner != "">>
<<if $scene.wearingCollar>>
<<addItem 'choker_sissy_wide'>>
<<wearItem 'choker_sissy_wide' true>>
<<else>>
<<addItem 'choker_sissy'>>
<<wearItem 'choker_sissy' true>>
<</if>>
<<if !$player.sec_style.clothing.sissy_choker>>
<<set $player.sec_style.clothing.sissy_choker = "money">>
<</if>>
<<applyExperience 'feminization' 20 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<addCredits 100>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
You agree to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> offer and she grins, immediately offering the excessively cute outfit once more, and watching with a hunger in her eye as you change into it.<br>
<br>
The satin is seductively soft, sending goosebumps across your skin without regard for how you feel wearing such feminising attire, the fact that <<=setup.getNpcName('npc_manager', 'formal')>> is keenly watching your every move only making your heart race faster.<br>
<br>
Once you are done <<=setup.getNpcName('npc_manager', 'formal')>> guides you to a mirror, seeming to drink in your reflection like a fine wine as she lets out a contented sigh. "@@.npc_manager;Once again an outfit looks even better on you in person than it did in my imagination. Almost makes me wish you could wear such things every day. Alas, it would be too distracting, and set an improper example of professionalism for the rest of the office. You work in a representative position, after all.@@"<br>
<br>
You nod, transfixed and frozen by your cute reflection.<br>
<br>
<<if setup.checkItemWorn("secure_sissy_choker")>>
She smiles as her fingers brush past your already matching, locked-on pink collar. "@@.npc_manager;What a perfect ensemble... for my perfect <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"
<<elseif $scene.wearingCollar>>
She smiles as she fingers your collar. "@@.npc_manager;A bit of a clash with the collar, I suppose... but we can make do for a little while, hmm?@@"<br>
<br>
She wraps a pink, frilly choker over top of your collar. The fit isn't perfect, but it definitely has the "desired" effect of pulling the outfit together as you look at your reflection, your <<if $fetish.sissy>>sissifying<<else>>pink<</if>> clothes topped off by the frilled choker<<if $fetish.sissy>> — with the word "SISSY" spelled out in rhinestones across the front<</if>>.<br>
<br>
"@@.npc_manager;There, is that just not perfect for you? So lovely and sweet — just like its wearer!@@"
<<else>>
"@@.npc_manager;Now — for the final piece to really make things perfect...@@"<br>
<br>
You watch motionless as she she brings something to your throat. At first you don't get a good look at it, save to notice that it's pink, and that it feels quite soft around your neck once she buckles it in place.<br>
<br>
She pulls it tight and you get a clear view at the pink, frilled choker<<if $fetish.sissy>> — with the word "SISSY" spelled out in rhinestones across the front<</if>>.<br>
<br>
"@@.npc_manager;There, is that just not perfect for you? So lovely and sweet — just like its wearer!@@"
<</if>>
<br><br>
You blush only to jump as your plug lets out a burst of vibrating pleasure.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> winks before palming her remote. "@@.npc_manager;A little bonus, to go with this...@@" she hands you a pile of credits, you don't even bother counting, have you really sold yourself for so little?<br>
<br>
With a final glance back she disappears into her inner office, leaving you to return to your desk, your outfit somehow making it so that each mincing step feels like a moment in a dainty dance.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 300 "<<set _x = setup.addManagerEndlessTask()>>">>]
</div>/*#
#desc: forced sissy choker, change
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<addItem 'maid_heels_extreme_pink'>>
<<addItem 'sissy_dress_pink'>>
<<addItem 'sissy_gloves_pink'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
You put your foot down. Your normal uniform requirements are bad enough, but there is no way she can make you wear something like this! It isn't even office attire — more like some sort of... hyper-fem fetish garb!<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> previous excitement disappears in a moment as she stalks towards you. "@@.npc_manager;Can I? My foolish, foolish little <<if $fetish.sissy>>SISSI<<else>>girl<</if>> — I am your manager, your Mistress, your Goddess — within these walls you will do whatever I desire and even outside of them.@@" She starts to smile<<if setup.checkItemTypeWorn("cage")>>, her gaze darting towards your chastity device<</if>>. "@@.npc_manager;I had thought we were past this sort of problem long ago but... put on the dress, <<=$player.first_name>>. This little rebellion of yours says you need a final addition.@@"<br>
<br>
She drops the dress in your arms and turns smartly back into her office.<br>
<br>
<<printThought "Shit, I should probably change or I'm going to be in SERIOUS trouble.">><br>
<br>
[<<moveTo "event_sissy_choker_pre_4_forced_2" "Get in the fucking dress, Shinji, er <<=$player.first_name>>!" 300 "<<set $scene.obey=true>>">>]<br>
<<if setup.getTotalValue("submission") > 12>>
[@@.link_locked;A little disobedience is one thing, but <<=setup.getNpcName('npc_manager', 'formal')>> seems pissed.@@]
<<else>>
[<<moveTo "event_sissy_choker_pre_4_forced_2" "Continue your recalcitrance." 300 "<<set $scene.obey=false>>">>]
<</if>>
</div>/*#
#desc: forced sissy choker, get choker
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('fancy_choker')>>
<<set $npc_manager.flags.seenSissyChoker = true>>
<<addEvent 'sissy_choker_elevator'>>
<<wearItem 'sissy_dress_pink' true>>
<<wearItem 'sissy_gloves_pink' true>>
<<wearItem 'maid_heels_extreme_pink' true>>
<<set $scene.wearingCollar = $player.flags.collar.owner != "">>
<<if $scene.wearingCollar>>
<<addItem 'choker_sissy_wide'>>
<<wearItem 'choker_sissy_wide' true>>
<<else>>
<<addItem 'choker_sissy'>>
<<wearItem 'choker_sissy' true>>
<</if>>
<<if !$player.sec_style.clothing.sissy_choker>>
<<set $player.sec_style.clothing.sissy_choker = "forced">>
<</if>>
<<applyExperience 'feminization' 20 'terrible' $SEEN_FRIEND>>
<<if $scene.obey>>
<<applyExperience 'bdsm' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<applyExperience 'bdsm' 10 'unbelievable' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Concluding that you have been sufficiently disobedient for one day you change into the dress, gloves and shoes just in time for <<=setup.getNpcName('npc_manager', 'formal')>> to re-emerge with a disturbingly wide grin on her face.<br>
<br>
"@@.npc_manager;First, a small corrective measure for your earlier failure.@@"
<<if setup.checkItemTypeTag('cage', ['ems'])>>
As she speaks she presses a button and the plug in your rear <<if setup.checkItemTypeTag('cage', ['ems'])>>- and your chastity <<if setup.isCage()>>cage<<else>>belt<</if>><</if>> light you up with painful shocks that send you to your knees.
<<else>>
In a single swift motion she spins you around to land a sharp slap on your rear. You're so stunned that, when she releases her hold you find yourself stumbling awkwardly to your knees.
<</if>>
<br><br>
"@@.npc_manager;Lovely — you do always look better kneeling before me, and now, for something additional to keep you mindful of your role as my sweet, submissive <<if $fetish.sissy>>SISSI<<else>>oh-so-soft-and-feminine<</if>> Secretary.@@"<br>
<br>
She reaches down and wraps something soft around your throat.
<<else>>
You cross your arms and step away from the effeminate dress. For a moment you consider putting your original outfit back on, but the water has quite soaked through and the idea of putting it on before getting it washed and dried seems quite disgusting.<br>
<br>
A moment later <<=setup.getNpcName('npc_manager', 'formal')>> re-appears, freezing in the doorway at the sight of you, her demonic grin turning to a deep, disappointed frown.<br>
<br>
Without so much as a word she raise a remote in one hand. Your rear <<if setup.checkItemTypeTag('cage', ['ems'])>> and <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>private parts<</if>> explode<<else>>explodes<</if>> in electrified pain.<br>
<br>
The sudden shock drives you to your knees. <<=setup.getNpcName('npc_manager', 'formal')>> stalks over to stand above you, looking down with fire in her eyes. "@@.npc_manager_dom;Get. Dressed.@@"<br>
<br>
Whatever mercy she might have shown is nowhere to be found as she hits you with another shock before you can respond. Somehow fighting back against the urge to curl up into a ball you crawl over to the dress, glancing up nervously as she points the remote at you like a weapon — which, due to your situation, it effectively is.<br>
<br>
Pushing you even more off-balance you are actually rewarded with a few seconds of pleasurable vibrations once you have put on the dress, and again, though briefer, for each of the gloves. You start to rise to your feet but a gentle jolt is enough to tell you that you should remain on your knees until instructed otherwise.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>... my foolish <<if $fetish.sissy>>SISSI <</if>>Secretary... one would think, after all this time, that you would have fully accepted your role in this company — as my employee, my slave, my sweet, <<if $fetish.sissy>>sissified<<else>>feminised<</if>> servant... and yet, after all we have been through, today you decide to be so, so disobedient.@@" She sighs. "@@.npc_manager;A part of me does not even want to give you this final addition to your outfit — arguing that you have not earned such a lovely gift, but I, instead, cling to the hope that it may be aspirational, a tender reminder of what you SHOULD be, and what you will strive to become.@@"<br>
<br>
Finishing her monologue she reaches down to wrap something <<if !$scene.wearingCollar>>tight <</if>>around your throat.
<</if>>
It <<if $scene.wearingCollar>>fits over your existing collar, and it<<else>>feels tight like a choker, but it also<</if>> slightly tickles your collarbone and under your chin. With the same wide grin still on her face <<=setup.getNpcName('npc_manager', 'formal')>> takes you by the hand, helping you to your feet and then over to a mirror where you gasp as the sight of the pink thing around your neck — the frilliest choker you can imagine<<if $fetish.sissy>>with the word "SISSI" spelt out in glittering rhinestones<</if>>.<br>
<br>
"@@.npc_manager;There, is that not just perfection? The perfect thing to keep you mindful of what you are, and how you should behave, hmm? None of that nasty aggression and talking back — just sweet, submissive loveliness.@@"<br>
<br>
Still smarting from the electric shock — and humiliated by your new outfit even before the choker was added. You merely nod, deciding surrender is far better than further antagonising your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;Good girl,@@" she states with a grin. "@@.npc_manager;Now get that cute butt to work! We are burning daylight!@@"<br>
<br>
The quick slap on your bum is nothing compared to the electrics, but you hurry to obey nonetheless.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 300 "<<set _x = setup.addManagerEndlessTask()>>">>]
</div>/*#
#desc: gifted sissy choker for money
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.sissy_choker = "money">>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('fancy_choker')>>
<<set $npc_manager.flags.seenSissyChoker = true>>
<<addEvent 'sissy_choker_elevator'>>
<<if $player.flags.collar.owner == "npc_manager">>
<<addItem 'secure_sissy_choker'>>
<<wearItem 'secure_sissy_choker' true>>
<<set $player.flags.collar.collarId = "secure_sissy_choker">>
<<else>>
<<set $scene.wearingCollar = $player.flags.collar.owner != "">>
<<if $scene.wearingCollar>>
<<addItem 'choker_sissy_wide'>>
<<wearItem 'choker_sissy_wide' true>>
<<else>>
<<addItem 'choker_sissy'>>
<<wearItem 'choker_sissy' true>>
<</if>>
<</if>>
<<applyExperience 'feminization' 20 'terrible' $SEEN_FRIEND>>
<<addCredits 100>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> calls you in to her office as expected with a smile. There is a neat stack of credits waiting for you on the edge of the desk and she motions for you to take them before rising to her feet and approaching you.<br>
<br>
"@@.npc_manager;Now for the real prize.@@" She states with a smile, bringing something pink to your throat. "@@.npc_manager;There we go.@@" She states, fastening it in place. Noticing the curious look in your eye she leads you over to a mirror to give you a look at the pink, frilly choker around your neck<<if $fetish.sissy>>... and the rhinestone letters spelling out the word "SISSY" across the front<</if>>.<br>
<br>
"@@.npc_manager;Is it not just perfection? Go on now and return to your duties — <<=setup.getNpcName('npc_rival', 'formal')>> will be here soon and I want <<him npc_rival>> to see my good girl happy and hard at work not... helplessly stumbling along at the end of a leash.@@"<br>
<br>
<<printThought "Why do I get myself into these situations?">> You think as you slowly nod and shuffle back to your desk.<br>
<br>
You take a deep breath — not only are you wearing a <<if $fetish.sissy>>choker that announces you as a "sissy," <<else>>hopelessly effeminate pink choker, <</if>>but you are moments away from being seen in it...<br>
<br>
[<<moveTo "event_sissy_choker_money_2" "There is a knock on the door." 180>>]
</div>/*#
#desc: gifted sissy choker for money
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addWorkEvent 'rival_meeting' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
The door opens and <<=setup.getNpcName('npc_rival', 'formal')>> enters the office.<br>
<br>
The credits clink in your pocket reminding of your "bargain" and you rise to your feet, welcoming the <<man npc_rival>> into the office and leading the way to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner sanctum.<br>
<br>
The <<man npc_rival>> makes no effort to hide the way <<he npc_rival>> stares at your throat, though <<he npc_rival>> makes no comment save to jerk <<his npc_rival>> assistant's leash as the two of them disappear into the inner office where <<=setup.getNpcName('npc_manager', 'formal')>> greets the two of them with a Cheshire smile.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ride elevator down first time wearing sissy choker
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemWorn('choker_sissy') || setup.checkItemWorn('choker_sissy_wide') || setup.checkItemWorn('secure_sissy_choker')>>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<<applyExperience 'feminization' 20 'normal' $EXPOSED>>
<<else>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You step into a crowded elevator for the ride down. Conversation stops as everyone stares at you, and it is not until you turn around and behold your reflection that you realise why — your <<if $fetish.sissy>>frilly pink "SISSI" <<else>>frilly pink choker <</if>>certainly to blame for the added attention.<br>
<br>
"@@.generic_female1;One of those upper-floor <<if $fetish.sissy>>sissy <</if>>sluts,@@" you overhear whispered somewhere behind you, the words start filled with disgust, but there is a trace of jealousy at the mention of upper floors.<br>
<br>
You remain standing chin-high and proud as you recall <<=ps(setup.getNpcName('npc_manager', 'formal'))>> frequent reminds about you working in a "@@.npc_manager;Representative position.@@"<br>
<br>
By the time you reach the lobby your confidence is almost overflowing, it feels like <<=setup.getNpcName('npc_manager', 'formal')>> is whispering encouragement in your ear as you proudly walk across the lobby
<<if setup.checkItemWorn('choker_sissy_wide')>>
and make your way home.<br>
<br>
Though the sight of your reflection sends a thrill down your spine... the combination of <<if $fetish.sissy>>sissy<<else>>frilly<</if>> choker is actually starting to feel a bit uncomfortable.<br>
<br>
<<printThought "Maybe best just to wear one or the other in the future.">> You think as you reach around for the choker's clasp.<br>
<br>
[<<moveTo "room_foyer" "Remove the choker and consider what to do next." 120 "<<removeItem 'choker_sissy_wide'>><<deleteItem 'choker_sissy_wide' 1 true>><<addItem 'choker_sissy'>>">>]
<<else>>
and into the city.<br>
<br>
[<<moveTo "room_citymap" "Where to go..." 120>>]
<</if>>
</div>/*#
#desc: forced into sissy choker for party
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Not now.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.outfit_approved>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<addItemSet 'formal_cocktail_pink'>>
<</if>>
<<if setup.checkItemSetWorn('formal_cocktail_pink')>>
<<initRoom>>
<<moveTo "event_strict_sissy_choker_2">>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> scowls in annoyance as you board the car. "@@.npc_manager;You presumed THAT would be appropriate evening wear?@@" She shakes her head and gestures to the dress laid out next to her. "@@.npc_manager;Fortunately for you, I came prepared.@@"<br>
<br>
You reach for the door only to find it already locked as the vehicle speeds away, you are stuck here, with little option save to obey.<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_sissy_choker_2" "Change into the dress." 180 "<<set _bra = setup.getItemFromType('bra')>><<if _bra != ''>><<removeItem _bra true>><</if>><<wearItemSet 'formal_cocktail_pink'>><<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">>
<</if>>
</div>/*#
#desc: forced into sissy choker for party
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Not now.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.makeup_approved>>
<<set $player.makeup.messed = 10>>
<<set $player.makeup.template = "normalmakeup">>
<</if>>
<<set $player.sec_style.clothing.sissy_choker = 'strict'>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('fancy_choker')>>
<<set $npc_manager.flags.seenSissyChoker = true>>
<<addEvent 'sissy_choker_elevator'>>
<<addItem 'choker_sissy'>>
<<wearItem 'choker_sissy' true>>
<<set $scene.forcedSissyChoker = true>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You reluctantly change into the dress only for <<=setup.getNpcName("npc_manager","formal")>> to smile, a smile that has you feeling instantly nervous.<br>
<br>
"@@.npc_manager;So, one of the rules of <<=ps(setup.getNpcName("npc_boss","formal"))>> parties is that there is a little code to help classify roles at a glance. After all, it would not do for a manager to accidentally try to order around a superior... you can learn the full details some other time, for tonight it just means that you need something to mark you appropriately. And I have just the thing.@@"<br>
<br>
She produces a <<if $npc_manager.flags.pegging.collar == "sissy" || $npc_manager.flags.pegging.collar == "her_sissy">>familiar<<else>>nauseatingly pink, frilly<</if>> choker with a wide grin, leaning across the vehicle to fasten it humiliatingly around your throat.<br>
<br>
<<if !$scene.makeup_approved>>
You're already trying to sink into your seat, but <<=setup.getNpcName("npc_manager","formal")>> isn't done as she follows up by pressing a mask over your face, there's a brief tingling before she pulls it away. As you blink your suddenly heavy eyelashes you realise that she's just "taken care" of your makeup...<br>
<br>
<</if>>
"@@.npc_manager;There. That will have everyone aware of just what sort of girl you are. And look, we have arrived. Come along, <<=$player.first_name>> the party awaits!@@"<br>
<br>
[<<moveTo "event_party_pickup_4" "Continue." 300>>]
</div>/*#
#desc: ask manager for enthusiast sissy choker
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As your inspection concludes you think back to the choker you wore while <<=setup.getNpcName("npc_manager","formal")>> pegged you,
<<if setup.checkItemTypeWorn("choker")>>
your current neck adornment feeling woefully inadequate in comparison.
<<else>>
the thought makes your throat feel sadly bare.
<</if>>
<br><br>
[<<moveTo "event_enthusiast_sissy_choker_2" "Beg to wear the choker from your promotion..." 180>>]<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Just get to work." 60>>]
</div>/*#
#desc: enthusiast sissy choker
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.sissy_choker = 'enthusiast'>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('fancy_choker')>>
<<addItem "choker_sissy">>
<<wearItem "choker_sissy" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Feeling nervous you softly ask <<=setup.getNpcName("npc_manager","formal")>> if you could have a choker to wear like the one from your promotion?<br>
<br>
She pauses, looking you over and slowly smiling. "@@.npc_manager;My, my... what an eager <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are. And with cute taste — seeing you in that choker, gasping at the end of my cock really was such a delight... yes, the idea of seeing more of you in it is a capital one, indeed.@@"<br>
<br>
She fetches the choker from her desk and it is soon wrapped and tied around your throat, an excited tingle going down your spine as she finishes securing it.<br>
<br>
"@@.npc_manager;There, the perfect bow for a cute package. And now, it is time for you to get to work!@@"<br>
<br>
You smile, heart leaping as your fingers brush against the soft frills of your new prize. You curtsy in thanks and skip back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 60>>]
</div>/*#
#desc: send response to sissy email
#status: RELEASED 0.9.3.0
#ignore_spell: sissifica,dumi,slutica
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Overcome with a feeling a kinship to Miss Dumi <<if $fetish.sissy>>Sissifica<<else>>Slutica<</if>> you do as the email instructs, taking a selfie in your maid's outfit and then stripping down to your underthings for a second shot.<br>
<br>
You lick your lips as you review the photos, aroused both by the sight of your own body, and the idea of sharing them with a stranger.<br>
<br>
[<<moveTo "event_sissy_email_1_respond_2" "Like, yes, she needs my help! Send away!" 300 "<<set $scene.photo=true>>">>]<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_sissy_email_1_respond_2_abort" "Maybe, like... this is a bad idea?" 60 "<<set $scene.photo=false>><<spendWillpower 1>>">>] <<hint $options "Resisting your bimbo urge will cost willpower.">>
<<else>>
[@@.link_locked;You lack the will to resist the bimbo urge to share dirty pictures of yourself.@@]
<</if>>
</div><<addEmail $computer
'Dumi Sissifica'
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
$now
'spam02_repeat_h'
'spam02_repeat_t'>>
<<initRoom>>
<<include playerMenu>>
<<moveTo $scene.beforetasklocation.pop()>><<addEmail $computer
'Dumi Sissifica'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'spam02_2_h'
'spam02_2_t'>>
<<moveTo _before>>
<<initRoom>>
<<include playerMenu>>
<<moveTo $scene.beforetasklocation.pop()>>/*#
#desc: send response to sissy email
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, random(2,5), 14, 0)>>
<<addEvent "sissyEmail2" _nextDate>>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You take a final moment to admire your pictures, and then send them off in response to the email.<br>
<br>
<<printThought "Now to, like... check back later for a reply!">><br>
<br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: abort sending response to sissy email
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
In a somewhat surprising burst of good judgement you resist the urge to share your picture with the obvious scammer.<br>
<br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: take picture of yourself in gloryhole
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEmail $computer
'Dumi Sissifica'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'spam02_3_h'
'spam02_3_t'>>
<<applyExperience 'bimbofication' 18 'terrible' $SEEN_STANGER>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor "deepthroat" "holdcockshaft">>
<div id="invframe" class="scrolltext">
Passionately deep-throating your client's cock, you snap a photographic record of your depravity and send off the attachment via email. This time, you do not get a response... though that could just be the single bar of reception your phone is getting at the moment.<br>
<br>
<<printThought "I'll check for a response when I get home.">> You think to yourself as the cock between your lips throbs and you re-focus finishing up your suck-tastic duties.<br>
<br>
[<<moveTo "room_usual_place_blowjob_4" "Continue." 120>>]
</div>/*#
#desc: request for money
#status: RELEASED 0.9.3.0
#ignore_spell: sissifica,11pm,slutica,dumi
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.alreadyScheduled = $currentTasks.hasOwnProperty("sissica_meeting") && !$currentTasks.sissica_meeting.finished>>
<<if !$currentTasks.hasOwnProperty("sissica_meeting") || !$scene.alreadyScheduled>>
<<addCredits -8008>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 21, 0, true)>>
<<set $scene.punt = !setup.hasFreeTime(_nextDate, $player, $currentTasks, 3600)>>
<<if $scene.punt>>
<<set _nextDate = setup.getNextDayOfWeek(_nextDate, 1, 21, 0, false)>>
<</if>>
<<addTaskById "sissica_meeting" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.alreadyScheduled>>
You are about to click the "send credits" link... when you remember that you already have.<br>
<br>
<<printThought "I'm such a ditz... I already paid her and we're supposed to meet um... sometime... I should check my, like... calendar...">>
<<else>>
Sound judgement was off the table a long time ago, and you barely think, much less think twice, as you wire the money as requested. Miss Dumi <<if $fetish.sissy>>Sissifica<<else>>Slutica<</if>> sends back a quick response.<br>
<br>
Most honoured one! You again prove yourself. I have never met someone so bloated with trust since I lose family, today I declare you honorary <<if $fetish.sissy>>Sissifica<<else>>Slutica<</if>>! I look future to meeting you in person and repaying your generous, please to be meeting me at <<if $options.militaryTime>>23:00<<else>>11pm<</if>> <<if $now.getUTCDay() == 1>>tonight<<else>><<if $scene.punt>>next<<else>>on<</if>> Monday<</if>> at alley near to your place of bed. Only with the safe shield of your presence will I feel protected as when fucked with condom, and thus secure to obtain my inheritance and then to share with you most deserving!<br>
<br>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "Wait, she knows where I live? That's... hella sus... why am I doing this, again?">>
<<else>>
<<printThought "Wait, like... how did she know where I live? Well, I guess it's good that, like, one of us is smart!">>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: no show freedom event
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall from a scrambled number.<br>
<br>
"@@.generic_female1;Honoured One! You are not here to be meeting with me. Unfortunately Julian has declare it no longer safe and <<he>> driving me away. Oh, I almost glad my father is no longer walking, to see the thing his sweet daughter has been reduced to!
Without Julian's help I have no chance, but every time <<he>> is be fucking me <<his>> cock feels like it will split me open, even as I am left imprisoned and leaking through my cage... if you still wish to be helping me, forward more money so that I may payments and make arrangements anew. I hope to hear from you again, but cannot risk more messaging unless you prove ready.@@"<br>
<br>
You hear some gruff talking and then <<if $fetish.sissy>><<=ps(setup.getNpcName("generic_female1","custom", "Miss Sissifica"))>><<else>><<=ps(setup.getNpcName("generic_female1","custom", "Miss Slutica"))>><</if>> muffled voice "@@.generic_female1;sorry, Lord Julian, I suck you now, promise.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: arrive for freedom event
#status: RELEASED 0.9.3.0
#ignore_spell: sissifica,slutica
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'sissica_meeting' $now true>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImageGeneric("thug_punk") setup.charImageGeneric("sissica") setup.charImageGeneric("thug_toughguy") setup.charImageGeneric("thug_twink")>>
<div id="invframe" class="scrolltext">
You wait until a car glides up the alleyway. It has barely come to a stop when <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> leaps out and sprints towards you to dive in for an excited hug.<br>
<br>
"@@.generic_female1;You came! Truly today is the best of days! Oh, you are even more beautiful in the personal, I am so happy you be the one to help me!@@"<br>
<br>
You're distracted from <<if $fetish.sissy>><<=ps(setup.getNpcName("generic_female1","custom", "Miss Sissifica"))>><<else>><<=ps(setup.getNpcName("generic_female1","custom", "Miss Slutica"))>><</if>> exuberance by the sound of another vehicle approaching from the opposite end of the alley, effectively boxing you.<br>
<br>
<<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> notices too and she turns from you to the <<if $options.fem>>woman<<else>>dude<</if>> "@@.generic_female1;<<=setup.getNpcName("generic_male1","custom", "Julian")>>? What happening, I thought you say it just us...@@"<br>
<br>
Two more gruff looking <<men>> get out of the other vehicle as <<=setup.getNpcName("generic_male1","custom", "Julian")>> laughs. "@@.generic_male1;You stupid bimbo, you think I'd let you escape for a few thousand credits when selling this dumb slut is going to fetch us a hundred times that? I gotta say, I'm impressed that you found someone even dumber than yourself! The money was one thing... but to walk into such an obvious trap? Well, it's a good thing we're selling her body, because we wouldn't get a single credit for a mind so empty! Now, well... me and the <<boy>>s have been enjoying those pictures you sent, and now we want a piece before we put you on the market...@@"<br>
<br>
The <<men>> are closing in from all directions as <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> looks around with a mix of horror, fear, and betrayal.<br>
<br>
[<<moveTo "event_sissy_email_4_freedom_2" "Fight!" 1800 "<<set $scene.fight=true>>">>]<br>
<<if $fetish.get_raped>>
[<<moveTo "event_sissy_email_4_freedom_2" "Oh no..." 1800 "<<set $scene.fight=false>>">>]
<<else>>
[<<moveTo "event_sissy_email_4_freedom_2" "Do you hear jetpacks in the distance?" 1800 "<<set $scene.fight=false>>">>]
<</if>>
</div>/*#
#desc: fight and/or raped
#status: RELEASED 0.9.3.0
#ignore_spell: dumi
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImageGeneric("thug_punk") setup.charImage("npc_valkyr") setup.charImageGeneric("thug_toughguy") setup.charImageGeneric("thug_twink")>>
<div id="invframe" class="scrolltext">
<<if $scene.fight>>
You look around at the <<men>> approaching from either direction and, with <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> behind you, you strike a fighting stance.<br>
<br>
One of the <<men>> laughs. "@@.generic_male1;It's three on one, you dumb <<if $fetish.slurs>><<if $player.body_ref.vagina>>cunt<<else>>faggot<</if>><<elseif $fetish.sissy>>sissy<<else>>bitch<</if>>! I know you're a dumb bimbo... but you aren't so stupid as to think you could win, are you?@@"<br>
<br>
<</if>>
<<if $scene.fight && (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) > 30>>
You let the slightest hint of a smile creep into your expression as you beckon the <<men>> forward. The first <<guy>>, still clearly disrespectful, gets <<his>> lesson hard and fast, as you throw <<him>> to the ground and drop a stomp hard enough that you hear a crunch.<br>
<br>
<<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> gasps in surprise, and the other <<men>> take a step back before swarming you at the same time.<br>
<br>
For all their size and aggression, the <<men>> attack without coordination or skill, and you easily maneuver to ensure that they remain in one another's way, dodging and weaving for a few moments before seeing an opening and laying one out clean.<br>
<br>
<<=setup.getNpcName("generic_male1","custom", "Julian")>> is the last one standing, <<his>> demeanor shifting immediately as <<he>> starts to back up, begging to renegotiate... when the alleyway is filled with the sound of a jetpack.
<<else>>
<<if $scene.fight>>
You try to put up a fight, but you are smaller, weaker, and very outnumbered. The <<men>> soon subdue and restrain both you and <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>>.
<<else>>
You're outnumbered and you don't even try to resist as the <<men>>
<</if>>
<<if $fetish.get_raped>>
<<if $scene.fight>>
With rough grunts
<<else>>
bend
<</if>>
<<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> over the hood of one of the cars, taking you both hard and rough.<br>
<br>
Gagged and cuffed, <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> weeps beside you in sadness as the <<men>> amuse themselves as they fuck the both of you. "@@.generic_male2;Damn, this new bitch is tight!@@"<br>
<br>
"@@.generic_male1;Don't wear her out before it's my turn!@@"
<<else>>
<<if !$scene.fight>>
restrain both you and the poor <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>>.
<</if>>
<br><br>
<</if>>
Overconfident in their victory, and with their attention focused on you and <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> the <<men>> do not notice the sound of a jetpack approaching as a pair of Valkyrie units roar into the alleyway.
<</if>>
<br><br>
You barely dive out of the way as the Valkyrie units land almost on top of you, chaos erupting as your assailants try to both fight back and flee from the intimidating cybernetic women.<br>
<br>
[<<moveTo "event_sissy_email_4_freedom_3" "Escape in the confusion." 1800>>]
</div>/*#
#desc: arrive for freedom event
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "jeweled_cage">>
<<addItem "jeweled_cage_key">>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" setup.charImageGeneric("sissica")>>
<div id="invframe" class="scrolltext">
Taking advantage of the Valkyrie's distraction, you and <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> flee past the car and up the alleyway, running around the block, and then through several more random turns until you're sure you have lost your pursuers and have found someplace safe to collect yourselves.<br>
<br>
"@@.generic_female1;Oh, respected one!@@" <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Miss Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Miss Slutica")>><</if>> states once you have come to a stop<<if !($scene.fight && (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) > 30)>> and removed her gag<</if>> "@@.generic_female1;I am so grateful to you again... but now, I must confess. The fortune I spoke of? It has already been taken, I can offer you nothing, except...@@" She pauses, producing a small key with triumph.<br>
<br>
"@@.generic_female1;In confusion I steal from terrible man Julian, and now...@@" she flips up her skirt and unlocks her jeweled chastity cage, sighing with relief as her <<if $fetish.sissy>>sissy penis<<else>><<getWordPenis false>><</if>> falls free. "@@.generic_female1;Oh, freedom has never felt so sweet! This cage... it is all I have, perhaps you can sell it contain jewels my family's emerald mine, a pittance at one time, yet now, it all I have left. I thank you again for your help... but now I must flee. These men, they no work alone, and it no safe for us to remain in contact. No, <<if $fetish.sissy>><<=setup.getNpcName("generic_female1","custom", "Dumi Sissifica")>><<else>><<=setup.getNpcName("generic_female1","custom", "Dumi Slutica")>><</if>> has deceived you enough, and will no more put her most honourable friend in the bosom of danger!@@"<br>
<br>
She places the still-warm cage in your hand and then gives you a passionate kiss... before dashing down an alleyway. You blink in surprise, by the time you attempt to follow she has already rounded a corner and disappeared...<br>
<br>
[<<moveTo 'room_citymap' 'Pocket your "prize" and head back to town.' 300>>]
</div>/*#
#desc: tax agent comes to confiscate money
#status: RELEASED 0.9.4.0
#ignore_spell: thx,jtor
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Apartment Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" "./images/characters/npc_tax.png">>
<div id="invframe" class="scrolltext">
Your doorbell chimes and you check the security cam to see a generic individual dressed in a sharp suit, wearing sunglasses indoors.<br>
<br>
As soon as you open the door, they launch into a prepared speech. "@@.generic_female1;Hello, I am <<=setup.getNpcName("generic_female1","custom","Michelle Rotunda")>>, Internal Revenue Servant Number JTOR-THX-1138 @@" they state swiftly while flashing an ID badge. "@@.generic_female1;Are you <<=$player.first_name>> <<=$player.last_name>>?@@" They ask in a flat monotone.<br>
<br>
[<<moveTo "event_irs_2" "Yes?" 180 "<<set $scene.lie=false>>">>]<br>
[<<moveTo "event_irs_2" "Wrong address." 180 "<<set $scene.lie=true>>">>]
</div>/*#
#desc: tax agent confirms identity
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" "./images/characters/npc_tax.png">>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
You tell the tax agent that they have the wrong address and start to close your door only for their hand to snap out with startling speed, and hold the door open with rock-solid force.<br>
<br>
"@@.generic_female1;Deception will only make things worse for you — your DNA identity has already been confirmed. Initiate subdual protocols.@@"<br>
<br>
There is a movement just above the agent's shoulder as you realise a drone had been hovering there the whole time; before you can react further it has hit you with a powerful electric shock that sends you into painful convulsions before you drop to the floor.<br>
<br>
"@@.generic_female1;Subject apprehended. Initiating audit.@@"<br>
<br>
Paralysed and helpless, you partially fall only to be caught by the drone, the silent hovering device trailing after the tax agent to carry you into your living room.
<<else>>
You confirm your identity and the tax agent nods. "@@.generic_female1;Very good, <<=$player.first_name>> <<=$player.last_name>>, this is an audit, please remain calm.@@"<br>
<br>
Before you can react there is a movement just above the agent's shoulder as you realise a drone had been hovering there the whole time. You feel a quick jolt and then find yourself paralysed, the drone catching you before you hit the ground and carrying you into the living room after the tax agent.
<</if>>
<br><br>
[<<moveTo "event_irs_3" "Continue..." 300>>]
</div>/*#
#desc: tax agent explains situation
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" "./images/characters/npc_tax.png">>
<div id="invframe" class="scrolltext">
Fully secured atop your couch, you wait as the drone projects a dizzying scroll of numbers in the air.<br>
<br>
"@@.generic_female1;According to our records your current assets far exceed the calculated income for one of your job position. Combined with your recent name-change you have been automatically flagged and your excess funds have been assessed at the maximum tax percentage, along with all applicable fees and penalties.@@"<br>
<br>
You start to protest that you did nothing wrong but the tax agent cuts you off curtly while maintaining their same dismissive monotone. "@@.generic_female1;If you believe that this audit is in error you may file for redress, the present system backlog is six months, the at-issue funds will be held in a secure account until all facts and considerations have been completely confirmed and verified. Further objection outside of proper channels will be disregarded or used as evidence against your claim.@@"<br>
<br>
You fall silent, still reeling from this whole thing — you had been making such good progress with your savings, nearly enough to pay off your corporate debt...<br>
<br>
The scroll of numbers fades as the tax agent looks down at you.<br>
<br>
<<if $fetish.get_raped>>
"@@.generic_female1;To ensure further compliance with the tax code in the future, we shall now proceed to the non-monetary portion of the audit.@@" As they speak they produce a large <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>double <</if>>dildo harness and buckle it to their waist. "@@.generic_female1;After decades of tax-payers complaining about being fucked over we have instituted new measures to make the figurative literal. Preliminary reports has shown that repeat offence is down significantly across the majority of demographics, while IRS employee recruitment and morale is up across the board. These dildos has been calibrated based on your offence and fabricated out of a resin-impregnated hard-copy of those portions of the tax code to which you were found in violation. You are instructed to now relax for your government-mandated fucking.@@"<br>
<br>
[<<moveTo "event_irs_4" "Oh, <<getWordGod>>..." 1800>>]
<<else>>
"@@.generic_female1;I will now inform you of a new opportunity/initiative that we are testing as a prevention against future tax fraud.@@" As they speak they produce a large <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>double <</if>>dildo harness and buckle it to their waist. "@@.generic_female1;These dildos has been calibrated based on your offence and fabricated out of a resin-impregnated hard-copy of those portions of the tax code to which you were found in violation. Your demonstration of contrition via submitting to their use upon you will be a positive mark as to your quality as a citizen, should you decide to contest the audit. Will you provide your consent to this government-mandated fucking?@@"<br>
<br>
[<<moveTo "event_irs_4" "Consent." 1800>>]<br>
[<<moveTo "event_irs_5" "No! That's crazy!" 180 "<<set $scene.sex=false>>">>]
<</if>>
</div>/*#
#desc: tax agent fucks you
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex=true>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $SEEN_STRANGER>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' 18 'normal' $SEEN_STRANGER>>
<<applyFatigue 150>>
<<set $player.timebased.horny = 0>>
<<addCredits `($player.money.base_rent*3)-$player.money.total`>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" "./images/characters/npc_tax.png">>
<div id="invframe" class="scrolltext">
Manipulating your bonds you are transitioned to a position face-down over the couch as your rear is exposed and the drone deploys a holographic screen in front of your face..<br>
<br>
"@@.generic_female1;Please direct your attention forward to monitor the confiscation of funds to rectify your attempted tax evasion while I administer the tax code per regulations.@@" The tax person's words are all the "foreplay" you get
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
before the dual slick resin rods are thrusting into your holes.
<<else>>
before the slick and thick resin rod is thrusting into your rear.
<</if>>
You gasp only for the drone to deploy another shaft that thrusts down your throat, fucking you <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>in all three holes<<else>>from both ends<</if>>.<br>
<br>
After establishing an initial fast, hard rhythm the <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>double dildos<<else>>dildo<</if>> begins vibrating, your eyes rolling back even as the screen in front of you scrolls faster, a ticker showing your total net worth dropping with every thrust.<br>
<br>
You're down to little more than a couple months rent when you hear a grunt from behind. Until this point the fucking from that end had been nearly as mechanical as that administered by the drone <<if $fetish.get_raped>>raping<<else>>pounding<</if>> your throat, but it would seem that the "taxman cometh," as they grunt in satisfaction, the decline in your bank balance ceasing as the resin dildos slides out of you as the screen flashes an almost sarcastic "THANK YOU, TAXPAYER" before deactivating.<br>
<br>
Rather than grant you relief things end with another powerful shock that leaves you limp and exhausted, the tax agent and drone efficiently packaging their things to leave before you can recover.<br>
<br>
"@@.generic_female1;Thank you, <<=$player.first_name>> <<=$player.last_name>> for your cooperation in this matter. Remember to report and pay taxes on all future income to avoid further fees and punitive measures.@@"<br>
<br>
[<<moveTo "event_irs_5" "They leave." 180>>]
</div>/*#
#desc: tax agent leaves
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.sex>>
<<addCredits `($player.money.base_rent*3)-$player.money.total`>>
<</if>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Your body is sore and your bank accounts depleted as you catch your breath and straighten your clothes, your savings wiped out in a matter of minutes,
<<else>>
A quick check of your account confirms your fears — you're all but wiped out, enough for day to day expenses, but nothing compared to what you were worth just a few hours ago,
<</if>>
thrown back into near destitute wage-slavery...<br>
<br>
[<<moveTo "room_livingroom" "Collect yourself." 60>>]
</div>/*#
#desc: taxi cab with driver, get horny
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 20>>
<</if>>
<<set $player.location to "Inside a Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" setup.charImageGeneric("taxi_driver")>>
<div id="invframe" class="scrolltext">
"@@.generic_male1;You said Social Interaction Service Syndicate Inc., right?@@" <<He>> asks in confirmation.<br>
<br>
You nod and... did <<he>> just smile at you through the mirror?<br>
<br>
You're suddenly self-conscious, even as the drive continues on in silence, although the pounding of your heart sounds deafening
<<if $player.body_ref.penis>>
as it powers the insistent throb of your <<if $fetish.sph>><<if $player.body.penissize[0] < 4>>tiny<<else>>worthless<</if>> <</if>><<getWordMyPenis>> beneath your feminine clothes. The <<if $fetish.sph>>tiny <</if>>organ is pressed up against its prison in your tight panties, and you can feel a seeping wetness as you leak pre-cum.
<<else>>
as you focus on bringing your legs together, sitting ladylike even as you keep meeting <<his>> gaze in the mirror and feeling wetter and wetter...
<</if>>
<br><br>
For some reason the combination of privacy for a single audience has you excited and you have an urge to put on a show...<br>
<br>
<<if setup.getTotalValue("bimbofication") > 7>>
[<<moveTo "event_taxi_flirt_2" "Spread your legs a little and rub yourself..." 0 "<<set $scene.slut=true>>">>]<br>
<<else>>
[@@.link_locked;No, I am not some bimbo who is going to put on a show for some stranger in a cab...@@]<br>
<</if>>
[<<moveTo "event_taxi_flirt_2" "Retain decorum and continue the ride in silence." 0 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: touch yourself in taxi cab
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<applyExperience 'bimbofication' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 10 'very' $SEEN_STRANGER>>
<<set $player.flags.world_events.taxi_slut = true>>
<</if>>
<</if>>
<<set $player.location to "Inside a Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" setup.charImageGeneric("taxi_driver")>>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You partially spread your legs and start rubbing your
<<if $player.body_ref.penis>>
<<getWordMyPenis>>
<<else>>
<<getWordVagina>>
<</if>>
through your clothes.<br>
<br>
You glance up to see if the driver has noticed your un-lady-like behaviour, but <<he>> is suddenly focused on the road and so you cross your legs. You are fit to orgasm almost on the spot, you are so excited as you feel your thighs rubbing together<<if $player.body_ref.balls && (!setup.checkItemTypeWorn("cage") || setup.isCage())>> and your balls rubbing against your legs through their tight lacy pouch<</if>>.<br>
<br>
You struggle to control your shaking as the driver finally pulls up in front of the office. You pay <<him>>, and as you turn from the cab, you can feel <<his>> eyes checking out your ass.<br>
<br>
"@@.generic_male1;Have a good <<if $now.getUTCHours() < 12>>day<<elseif $now.getUTCHours() < 18>>afternoon<<else>>night<</if>>, baby,@@" <<he>> calls after you.<br>
<br>
You can't help but move your bimbo ass seductively as you walk into the building.
<<else>>
You keep your knees all but nailed together for the rest of the ride, paying your fare and then getting out of the vehicle as modestly as you can, hoping the driver didn't realise the reason for your flushed appearance.
<</if>>
<br><br>
[<<moveTo $scene.destination "Arrive at your destination." 300>>]
</div>/*#
#desc: taxi driver proposes sex
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Inside a Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" setup.charImageGeneric("taxi_driver")>>
<div id="invframe" class="scrolltext">
"@@.generic_male1;"We meet again,@@" <<he>> says, and you nod, glad to have gotten into the cab when you did as it has just started to rain.<br>
<br>
Your heart starts to race as you remember what you did the last time <<he>> drove you — did <<he>> see it? See you touching yourself like a wanton slut...<br>
<br>
You have an urge to do it again when you look up and lock eyes with <<him>> and realise that you have been lingering at a stop-sign for an inordinately long period of time.<br>
<br>
"@@.generic_male1;I've been watching for you since the last time, you know... hoping to catch the hot <<if $fetish.sissy>>sissy<<else>>girl<</if>> again... unable to forget the sight of you touching yourself in my cab...@@"<br>
<br>
Your heart pounds faster, <<he>> did see you!<br>
<br>
"@@.generic_male1;I got a break coming up and, well... your destination is to the left, but I know of a nice secluded place we could park to the right...@@"<br>
<br>
<<printThought "See what my lascivious behaviour has brought me...">><br>
<br>
[<<moveTo "event_taxi_sex_2" "Ask <<him>> to turn left." 180 "<<set $scene.slut=false>>">>]
[<<moveTo "event_taxi_sex_2" "Tell <<him>> to turn right." 0 "<<set $scene.slut=true>>">>]
</div>/*#
#desc: make out with taxi driver
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Inside a Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" setup.charImageGeneric("taxi_driver")>>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You tell <<him>> to turn right, your voice almost cracking. <<He>> grins, spinning the wheel eagerly. A few minutes later and <<he>> has pulled in to a small, secluded park. <<He>> stops the taxi in an empty parking lot behind a stand of tall trees. When <<he>> shuts the engine off, the sound of the rain on the car roof is almost deafening.<br>
<br>
"@@.generic_male1;Why don't you come and sit up front here with me?@@" <<he>> says with a wink, lowering the partition between the front and back of the cab all the way down.<br>
<br>
You smile back seductively. You get out of the back seat, and climb into the front passenger seat.<br>
<br>
"@@.generic_male1;I couldn't stop thinking about how hot you looked after I dropped you off,@@" says the driver. You notice <<he>> has started rubbing <<his>> crotch.<br>
<br>
"@@.pc;Did you like what you saw?@@" You say demurely, and you feel <<his>> hand on your thigh. You shuffle closer, mentally urging <<him>> to move <<his>> hand higher.<br>
<br>
"@@.generic_male1;Oh God yeah,@@" <<he>> moans.
<<if !$player.body_ref.penis>>
"@@.generic_male1;I could see up your skirt in the mirror, could see the outline of your chastity belt... and how you were leaking through your panties.@@"
<<else>>
"@@.generic_male1;I could see up your skirt in the mirror, could see you straining inside that prison. I got so turned on. I wanted you bad.@@"
<</if>>
<<His>> hand on your thigh is rubbing in circular motions, going higher with each revolution.<br>
<br>
You part your soft lips and moan to let <<him>> know how much <<his>> words are turning you on as <<his>> hand finally disappears up under your legs. You spread yourself for <<him>>, and <<his>> hand slides over the lacy fabric of your panties<<if $player.body_ref.balls>>, rubbing your ball sack<</if>>. You slowly undulate your hips, thrusting against <<his>> hand. <<He>> responds by rubbing harder. Despite your chastity the feeling of <<him>> stroking you through your panties is everything you had ever hoped it would be. Your eyes drift shut in ecstasy, as <<he>> slides your clothing off your waist, exposing you fully. <<His>> hand has found where
<<if $player.body_ref.penis>>
your <<getWordMyPenis>> is dripping precum making a wet spot in your underwear.
<<else>>
you are soaking through your underwear, your chastity belt glistening as it holds the line against all intruders.
<</if>>
You moan in delight, and the rain outside comes down harder.<br>
<br>
[<<moveTo "event_taxi_sex_3" "Continue." 180>>]
<<else>>
You tell <<him>> that it's been a long day at work and that you're feeling tired.<br>
<br>
You can sense the disappointment in <<his>> voice as <<he>> turns the wheel to the left. "@@.generic_male1;Maybe some other time... I doubt I'll be getting the sight of your ass walking away from my cab out of my head any time soon...@@"<br>
<br>
You blush as <<he>> quickly takes you home.<br>
<br>
[<<moveTo $scene.destination "Arrive at your destination." 180>>]
<</if>>
</div>/*#
#desc: taxi driver offers sex
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeTag('panties', ['bold'])>>
<<set $scene.pantyStyle = 'bold'>>
<<elseif setup.checkItemTypeTag('panties', ['sissy'])>>
<<set $scene.pantyStyle = 'frilly'>>
<<elseif setup.checkItemTypeTag('panties', ['cute'])>>
<<set $scene.pantyStyle = 'cute'>>
<<else>>
<<set $scene.pantyStyle = 'sexy'>>
<</if>>
<</if>>
<<set $player.location to "Inside a Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" setup.charImageGeneric("taxi_driver")>>
<div id="invframe" class="scrolltext">
"@@.generic_male1;Can I lick it?@@" asks the driver. You barely hear <<him>>, but <<he>> takes your moaning as a sign of encouragement. <<He>> leans over from <<his>> seat and buries <<his>> face in your panty-clad crotch. You can feel <<him>> licking the fabric, and it drives you wild. Soon <<he>> has worked a hand down into the gusset, and <<he>> pulls it aside.<br>
<br>
The glorious sensation of <<his>> wet tongue rolling
<<if $player.body_ref.penis && setup.isCage()>>
over the hot tip of your <<=setup.calcPenisSize()>>, imprisoned erection
<<else>>
along the edges of your chastity belt
<</if>>
washes over you, your hands straying idly to your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive, heaving breasts,
<<case 'large'>>
big tits,
<<case 'medium'>>
breasts,
<<case 'small'>>
small, quivering breasts,
<<case 'none'>>
hard nipples,
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
groping yourself unconsciously. You can feel <<his>> tongue spreading saliva over your crotch and you raise your hips to expose your rear hole, feeling <<him>> get it nice and slick, and you sense <<he>> is experienced. <<His>> other hand is gently massaging you through your chastity as <<his>> tongue makes circles around your <<if setup.checkItemTypeWorn("plug")>>plugged<<else>>puckered<</if>> hole.<br>
<br>
It is cramped in the car, but you manage to get one high-heeled foot up on the dash, the other hooked over the back of the driver's seat to give <<him>> plenty of room to play between your legs. Your carefully pressed clothing is bunched up around your waist, forgotten in your lust for the cab driver. <<His>> tongue is dancing wildly over whatever exposed flesh <<he>> can find as <<he>> briefly removes it from <<his>> mouth to look up at you.<br>
<br>
"@@.generic_male1;I love your <<=$scene.pantyStyle>> panties,@@" <<he>> moans, looking up at you, massaging your <<if setup.checkItemTypeWorn("plug")>>plugged<<else>>puckered<</if>> hole with <<his>> wet fingers. "@@.generic_male1;They turn me on so much and just make me want to fuck you.@@"<br>
<br>
[<<moveTo "event_taxi_sex_4" "You want <<him>> to fuck you..." 180 "<<set $scene.sex=true>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;Turn down sex? Like, no way!@@]
<<else>>
[<<moveTo "event_taxi_sex_4" "This is becoming too much." 600 "<<set $scene.sex=false>>">>]
<</if>>
</div>/*#
#desc: sex with taxi driver
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'oral' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' 12 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Inside a Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" setup.charImageGeneric("taxi_driver")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
"@@.pc;I want you to fuck me too,@@" You reply with a lusty moan.<br>
<br>
You sit up straight, sorry to end such a great licking, but desperate to feel <<him>> in your ass. You reach over and unbuckle <<his>> belt, then unzip <<his>> pants. You pull them down, and <<his>> huge erection springs forth.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
You bite your lip, momentarily uncertain where you'd rather have such a big, juicy cock, but knowing you want it in you NOW. Mindful of its size you split the difference,
<<else>>
Mindful of its size you
<</if>>
leaning over to take <<his>> cock into your mouth to get it as wet as you are. Soon your head is bobbing frantically in <<his>> lap <<if setup.getTotalValue("oral") < 10>>trying to engulf its greatness,<<else>>sucking on its greatness<</if>>. Your left hand helps work the driver's balls while your right hand desperately <<if !setup.checkItemTypeWorn("plug")>>fucks your ass with two fingers<<else>>plays with your plug<</if>>.<br>
<br>
It doesn't take long before you have drool running down your chin and a good film of it coats <<his>> rod. With a slurp, you let <<his>> cock slip from your mouth. Struggling in the confined space, you manage to slide over into the driver's seat, supporting yourself over <<his>> lap with your back to <<him>><<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> as you remove the plug from your ass in anticipation of something even better<</if>>.<br>
<br>
You feel the driver hitch your clothing further down your waist exposing your rear end. You use one hand to pull the lacy panty fabric out of the way to give the driver access to your asshole, the other holds onto the steering wheel for grip. You wriggle around with your ass, seeking to get <<his>> cock head against your entrance. You soon feel the driver steady <<his>> organ and take aim, fitting the glistening, moist, plum-coloured tip against your entrance.<br>
<br>
"@@.generic_male1;Oh God, you've got me so hard,@@" moans the driver.<br>
<br>
Your breath is coming in ragged gasps, but you manage to reply something to the effect of wanting to feel <<his>> huge rod in your ass.<br>
<br>
You relax your ass, opening up your sphincter. You lower yourself down, sliding onto <<his>> swollen penis, feeling it slip slowly<<if setup.getTotalValue("oral") < 10>> and a little painfully<</if>> into your anus. You did a good job lubing <<him>>, however and <<his>> cock meets little resistance as it glides deep into your bowels, filling you gloriously, making you moan in lust. You keep going until you are sitting right in <<his>> lap, <<his>> balls nestled snugly between your ass cheeks. You clench on <<his>> cock with your ass, and feel <<his>> hot breath on the back of your neck as <<he>> moans.<br>
<br>
You flex your thighs, and draw back up <<his>> shaft, until you feel the rim of <<his>> swollen cock head against the inside of your asshole, at which point you begin the long, slow downward stroke again. Soon you are riding <<him>> to a slow, unhurried, steady rhythm.<br>
<br>
[<<moveTo "event_taxi_sex_5" "Up.. Down... up... down..." 180>>]
<<else>>
Your heart thundering in your chest, you pull away saying that you really shouldn't...<br>
<br>
The driver is visibly disappointed, but does not push the issue and you retreat back to your seat as <<he>> takes you to your destination in awkward silence.<br>
<br>
[<<moveTo $scene.destination "Home." 0>>]
<</if>>
</div>/*#
#desc: sex with taxi driver
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 12 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Inside a Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" setup.charImageGeneric("taxi_driver")>>
<div id="invframe" class="scrolltext">
You sigh. Moans and heavy breathing have fogged the car thoroughly. As you fuck, you watch the thick, hot, sweat scented air condense and run down the windows. Now holding the steering wheel with both hands, you feel like you're on one of those old-fashioned rides at the supermarket as you rock up and down the length of <<his>> erection. The driver reaches around you and starts to <<if $player.body.breastsize[0] > 0>>fondle your heaving tits<<else>>play with your nipples<</if>>. <<He>> whispers lust-filled incentives in your ear as <<he>> sits back and lets you slowly ride <<him>>:<br>
<br>
"@@.generic_male1;Your ass feels so good around my cock. I love the feeling of your panties against me. Oh yes...@@"<br>
<br>
You are lost in the intense delight of each stroke, groaning heavily on each downward plunge. The pleasure of <<his>> cock pounding deep into you is breathtaking: the stone-solid organ stretching you wide sends your insides into spasms of joy as you increase your pace.<br>
<br>
Your combined moans are becoming more desperate and lust-filled as you continue to increase the tempo. Your strokes become less long and deep, more short and sharp as you ride <<him>> faster and faster. Soon you are bouncing frantically and you are both grunting and moaning as you fuck <<him>> harder and harder.<br>
<br>
"@@.generic_male1;God... yes... oh... fuck me...@@" the driver cries as your bouncing sets the car's suspension shaking. The intense friction on the inner folds of your rectum is driving you on, the joyous pressure on your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> has you fit to cum just from the pounding. You can feel the sensation inevitably building, and you beg the driver to fuck faster and harder. Your head is bobbing like a chicken as you continue to violently rub the inside of your ass on <<his>> erect penis to what feels to be a thunderous orgasm. The waves of pleasure are overlapping, blurring, reinforcing, making you pant like a dog. Your body burns both with the oncoming climax and the sheer physical effort of the energetic fuck you are giving the driver.<br>
<br>
"@@.generic_male1;Ride me harder...@@" <<he>> gasps, but you are at the limit of your abilities. The orgasm is building, and you are dimly aware that soon <<he>> will fill your ass to the brim with <<his>> semen. You manage to beg <<him>> to slow down, your shaky voice wavering with the vibrations of the high speed fuck. You feel <<his>> decrease <<his>> pace, and soon your onrushing climax slows its approach.<br>
<br>
Your arms start to give out and you slip, falling back onto the driver and quickly asking if you can shift positions.<br>
<br>
[<<moveTo "event_taxi_sex_6" "Finish in the back." 180>>]
</div>/*#
#desc: sex with taxi driver
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'cum' 9 'little' $SEEN_STRANGER>>
<<playerOrgasm>>
<<set $player.flags.world_events.taxi_sex = true>>
<</if>>
<<set $player.location to "Inside a Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" setup.charImageGeneric("taxi_driver")>>
<div id="invframe" class="scrolltext">
You slide yourself off <<his>> throbbing cock, leaving your bowels feeling momentarily hollow and empty. You crawl over into the back seat, as the cabbie removes <<his>> pants completely, and then clambers over to join you. You lay down on your back across the rear seat and spread your legs wide allowing your lover to get between them. <<He>> takes <<his>> thick tool in hand, pulls your panties aside and presses it against your ass. You are good and loose by now, and it enters easily. You sigh with the pleasure of having <<him>> inside again, as you wrap your legs around <<his>> back. <<He>> begins to rub your thighs as <<he>> starts to plow your well-fucked anus with <<his>> meat.<br>
<br>
Glad for the chance to rest, you lay back and allow yourself to be ravaged by the driver. <<He>> has plenty of energy, and soon resumes the frantic pace you had reached when you were on top. Soon you know that your own orgasm is inevitable, so you begin to beg <<him>> to cum with you. You groan loudly with relief as you feel <<his>> hand grabs your ass, and you are soon groaning orgasmically, calling for <<him>> to fuck you harder. <<He>> responds, and with several more deep strokes of <<his>> dick, <<he>> has you exploding powerfully in a <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>>. Your climaxing ass convulsing around <<his>> cock making <<him>> moan in delight. Soon you know <<he>> will fill you with <<his>> load, and you can't wait much longer.<br>
<br>
Incredibly, <<he>> increases <<his>> pace even more, grunting loudly, and drives <<his>> cock as far into you as <<he>> can. You feel <<his>> hardness erupt, and the warm flood of seed enter your rectum. <<He>> pulls out after several spurts, leaving your oozing asshole agape, and directs the rest of <<his>> load onto your face. You sigh in appreciation at the sensation of <<his>> warm cum splattering over your face, as you reach up and rub <<his>> slick, spurting dick. You squeeze the last drops of <<his>> semen from the tip, and gather them up on your fingers, taking the prize to your hungry mouth.<<if setup.checkItemTypeWorn("plug")>> <<He>> picks up your buttplug and shoves it up your ass again. "@@.generic_male1;We can't make you leak all over the seats, can we?@@" <<he>> says, as <<he>> opens the door to let you out.<</if>><br>
<br>
The rain has, miraculously, cleared up and you stagger the final block home, feeling like a used slut.<br>
<br>
[<<moveTo $scene.destination "Home." 0>>]
</div>/*#
#desc: use the black box
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
<<if !$player.flags.firstWorkDayDone>>
You look at the black box your ex left behind.<br>
<br>
<<printThought "Even with how we broke it off... I still don't feel right mucking with her stuff. Besides, I should focus on my new job.">>
<<elseif $npc_exgirlfriend.flags.bondage_machine.unlocked>>
From a safe distance you look at the black bondage fucking machine containing black box.<br>
<br>
[<<moveTo "room_home_auto_bondage_1" 'Unlock it and take it for a spin.' 600 "<<set $scene.masturbate_style='machine'>>">>]
<<else>>
You have no idea what the password could be. There seems to be a counter in place to track how often you enter a wrong password.<br>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.password_try == 0>>
The counter currently reads zero as you have never tried to open the box.
<<else>>
According to the counter you have tried to open the box <<=$npc_exgirlfriend.flags.bondage_machine.password_try>> times.
<</if>>
<br><br>
<<if $options.isMobile>>
<<textbox "$scene.boxcode" "" autofocus>><br>
<br>
[<<moveTo "room_use_black_box_enter_passcode" "Confirm code entry." 30>>]<br>
<<else>>
[<<link "Try entering a code.">><<openDialog "Passcode:" "dialog_enter_box_code">><</link>>]<br>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.know_password>>
[<<moveTo "room_use_black_box_cleaningcode" 'Try entering the code you found cleaning.' 120>>]<br>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.know_trick>>
[<<moveTo "room_home_black_box_unlock_tip" 'Use the trick you learned from <<=setup.getNpcName("npc_sexstore_clerk", "formal")>> to open it.' 300>>]<br>
<</if>>
<<if setup.getTotalValue("smart") > 8>>
[<<moveTo "room_home_black_box_unlock_smart" 'See if you can puzzle out a way to "hack" it open.' 300>>]
<</if>>
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage 'Put the Box away.' 60 "<<set $player.llocation=$locationbeforeusage>><<itemToWardrobe 'black_box'>>">>]
</div>/*#
#desc: black box code pop-up
#status: FINISHED 0.7.6.0
#*/
<center>
<<textbox "$scene.boxcode" "" autofocus>>
</center>
<br>
@@.textRightSide;
<<button "Okay">>
<<moveTo 'room_use_black_box_enter_passcode'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: result of entering a code into black box
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.password_try += 1>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
<<if $scene.boxcode == $npc_exgirlfriend.flags.bondage_machine.password>>
<<if $npc_exgirlfriend.flags.bondage_machine.know_password>>
You punch in the code that you found while cleaning.<br>
<br>
<<printThought "Here goes nothing...">><br>
<<else>>
You try punching in a code. To your shocking surprise the numbers blink green and you hear a click. Did you just manage to randomly guess it?<br>
<<if $npc_exgirlfriend.flags.bondage_machine.password_try == 1>>
<br>
<<printThought "Talk about beginners luck...">><br>
<</if>>
<</if>>
<br>
[<<moveTo "room_home_black_box_unlocked_1" 'The box starts to open...' 300>>]
<<else>>
<<if $npc_exgirlfriend.flags.bondage_machine.password_try > 1>>
Once again your randomly guessed code fails to unlock the mysterious box.
<<else>>
Not knowing the code taking a random guess wasn't likely to unlock anything, and it didn't.
<</if>>
<br><br>
Giving a rejecting beep the attempt counter increments up to <<=$npc_exgirlfriend.flags.bondage_machine.password_try>><br>
<br>
<<printThought "I wonder if there's a consequence of repeat failures? Perhaps I should be careful...">><br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.boxcode" "" autofocus>><br>
<br>
[<<moveTo "room_use_black_box_enter_passcode" "Confirm code entry." 30>>]<br>
<<else>>
[<<link "Try another code.">><<openDialog "Passcode:" "dialog_enter_box_code">><</link>>]<br>
<</if>>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage 'Put the Box away.' 60 "<<set $player.llocation=$locationbeforeusage>><<itemToWardrobe 'black_box'>>">>]
<</if>>
</div>/*#
#desc: open black box via being smart
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/flat_bedroom_01_blackbox.png">>
<div id="invframe" class="scrolltext">
With over 50 billion potential passcodes trying to just guess at it would be beyond foolhardy. Instead you try to inspect the device for another way, carefully examing the container for any potential flaws in the locking mechanism or hints as to what the password is.<br>
<br>
<<if setup.getTotalValue("smart") > 12>>
Inspecting the construction of the electronic lock, you find a small, almost microscopic manufacturers stamp, not for the box; which betrays no evidence of its provenance, but of the lock itself. Heading to the computer, you are able to find the specifications, discovering that the device also packs a wireless transceiver. A bit of further poking and fiddling with your phone and you have an app that is communicating with the lock.<br>
<br>
While the diagnostic information available to you is relatively minimal, you figure out two key things — one, that while the lock will track failed attempts for reporting purposes there is no maximum attempt limit. Secondly there is a way to send a passcode digitally and it does not appear to be time limited.<br>
<br>
You smile at your own cleverness, quickly finding a cracker app and setting it to brute force things. Thanks to an insanely over-powered processor for a mere lock the "failed attempt" counter is soon a blur as your app informs you that it is cranking out tens of millions of attempts per second.<br>
<br>
Not much time passes before you hear a click and your app chimes merrily. You look down at the box with a smile — 24 billion failed attempts, good thing you didn't try things by hand!<br>
<br>
[<<moveTo "room_home_black_box_unlocked_1" 'The box starts to open...' 600 "<<set $npc_exgirlfriend.flags.bondage_machine.password_try = 24000000000+Math.floor(Math.random()*1000000000)>>">>]
<<else>>
Carefully you inspect each key on the large keypad for signs of wear, thinking you might narrow the problem space of guessing the passcode.<br>
<br>
Unfortunately only a single key shows even the trace of wear. After mashing it as a default sequence to no avail you sigh, your spy efforts thwarted without having meaningfully reduced the potential guesses.<br>
<br>
[<<moveTo "room_use_black_box" 'Try something else.' 60>>]
<</if>>
</div>/*#
#desc: open black box using the code you found cleaning apartment
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
Pulling out the scrap of paper you found while cleaning you carefully punch in the number, crossing your fingers in hopes that the code you found is, indeed, to this mysterious box left behind by your ex. About to press the final digit you hold your breath in anticipation.<br>
<br>
<<printThought "Come on...">><br>
<br>
With a click the container unlocks and your heart skips a beat in excitement.<br>
<br>
<<printThought "Finally I'm going to find out what's inside!">><br>
<br>
[<<moveTo "room_home_black_box_unlocked_1" 'Watch as the box starts to open.' 60>>]
</div>/*#
#desc: open black box using tip from sex store owner
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
Recalling the tip from <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> you hold down X9E6S. Several seconds pass and then you hear a quiet chime. Quickly you punch in the default code of 12345 and are rewarded with a soft click.<br>
<br>
<<printThought "Chalk another one up for security flaws...">><br>
<br>
[<<moveTo "room_home_black_box_unlocked_1" "It's opening..." 1>>]
</div>/*#
#desc: black box unlocks
#status: FINISHED 0.7.6.0
#ignore_spell: tr
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.unlocked = true>>
<<if setup.checkItemOwned("black_box_password")>>
<<deleteItem 'black_box_password'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAnimatedBGR "./video/blackbox_open01.mp4">>
<div id="invframe" class="scrolltext">
<<if $npc_exgirlfriend.flags.bondage_machine.know_trick>>
Even having been tipped off that the mysterious box contained a bondage device you still hadn't really believed it. Some sort of lingering need to put your ex on some sort of pedestal, perhaps, but you just couldn't wrap your head around <<=setup.getNpcName('npc_exgirlfriend', 'first')>> owning such a perverted, and expensive, device.<br>
<br>
Oh how wrong you were...
<<else>>
You don't know what you were expecting from the box mysteriously left behind by your ex-girlfriend and you hesitate for a moment after a soft click informs you that it is unlocked and ready for you to open.<br>
<br>
<<printThought "Wait, maybe I shouldn't invade her privacy like this? She did a pretty thorough job locking it away, but then why leave it behind when she moved?">><br>
<br>
You don't get a chance to further debate the ethics of your actions before the box takes matters into its own hands.
<</if>>
<br><br>
Slowly the box splits open. You stare in awe as its contents unfold — it looks like a top of the line TR-1 control platform. Walking around the device after it has finished unfurling, you stare in awe. The form factor originally designed for an old "light cycle" racing game. The position is supposed to be quite comfortable for marathon sessions, a robust modding community popping up to take advantage of the immersion the devices many degrees of freedom allow.<br>
<br>
<<printThought 'How did <<=setup.getNpcName("npc_exgirlfriend","first")>> end up with something like this? And why did she keep it a secret...'>><br>
<br>
Your ex had never been more than a casual gamer; she enjoyed playing with you on occasion, and she was pretty good, considering, but it was never really her "thing" so owning something like this... and then leaving it mysteriously behind? You're as confused as you are drawn in, you never even imagined owning a device this fancy and you can't resist the urge to see how it "rides." <br>
<br>
[<<moveTo "room_home_black_box_unlocked_2" 'Try it out.' 180>>]
</div>/*#
#desc: black box ambush binds you
#status: FINISHED 0.7.6.0
#ignore_spell: d
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/flat_bedroom_01_blackbox02.png">>
<div id="invframe" class="scrolltext">
Despite the device's complexity, it is actually quite intuitive how to position yourself. You lie belly-down on the main platform and then put your arms and legs on each of their padded shelves. As you take hold of the dual metamaterial hand-conforming joysticks, you smile, you haven't even booted up a game and already you feel like you're riding the sleek driver's seat of a futuristic craft.<br>
<br>
The display before you appears almost holographic in nature, but it is actually a rear projection on a suspended nano-filament panel, held in the air almost invisibly. At present it shows a sort of "idle" menu with a bunch of metrics like room temperature and system resources. Also there's a giant "Start Simulation" button on the middle of the screen, there must be something pre-installed. Securing the controller's wrist band, you try to use one of the d-pads to select the "Start Simulation" button.<br>
<br>
[<<moveTo "room_home_black_box_unlocked_2a" 'Press "Start Simulation."' 180>>]
</div>/*#
#desc: black box ambush binds you
#status: FINISHED 0.7.6.0
#ignore_spell: informat
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'normal' $ALONE>>
<<addNpcTheme 'npc_psychiatrist' 'ex_girlfriend' 'theme_psychiatrist_ex_6'
4
'event_psychiatrist_session_girlfriend_mystery_box_open_1'
false
>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/flat_bedroom_01_blackbox02.png">>
<div id="invframe" class="scrolltext">
As you press the button, a loading screen comes up, and after a few seconds you're greeted by a new window.<br>
<br>
<<set _previousDay = new Date(Date.UTC(2033, 5, 20, 15, 0, 0))>>
<<set _days = setup.daysToDate(_previousDay ,$now)>>
"@@.computer;Welcome back, user <<=setup.getNpcName('npc_exgirlfriend','first')>>. It has been <<=_days>> days since your last session.@@"<br>
<br>
<<if($npc_exgirlfriend.flags.bondage_machine.password_try>0)>>
"@@.computer;There have been <<=$npc_exgirlfriend.flags.bondage_machine.password_try>> incorrect passcode entries since your last login. Please change your password as soon as possible.@@"<br>
<br>
<</if>>
"@@.computer;Now loading Profile Data... please wait...@@"<br>
<br>
<<printThought "I am kinda curious what <<=setup.getNpcName('npc_exgirlfriend','first')>> has been up to with this system...">><br>
<br>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage")>>
"@@.computer;Scan confirms expected bodily orifices of 3. Please remain still...@@"
<<else>>
"@@.computer;Warning! Scan indicates 1 of 3 expected bodily orifices obstructed. Repeating Scan. Please remain still...@@"
<</if>>
<<else>>
"@@.computer;Warning! Scan indicates corrupt variable or profile: number of useable bodily orifices. Expected: 3. Found: 2. Repeating Scan. Please remain still...@@"
<</if>>
<br><br>
A thought passes your mind, <<printThought "What the? Why does this system need this kind of informat...">>, but before you're able to even finish it, the wrist and ankle rests sprout half cylindrical locking devices, turning them effectively into wrist- and ankle cuffs. You try to protest verbally, clueless if the system does have voice recognition, only to be cut off by a large ring gag that's being forced into your mouth.<br>
<br>
[<<moveTo "room_home_black_box_unlocked_3" 'Continue.' 180>>]
</div>/*#
#desc: black box gags you after opening
#status: FINISHED 0.7.6.0
#ignore_spell: x
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.gamestart = new Date(Date.UTC(2033, 5, 28, 7, 5, 0))>>
<<set $scene.days = setup.daysToDate($scene.gamestart, $now)+10>>
<<applyExperience 'bondage' 17 'terrible' $ALONE>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<set $scene.hollowPlug = setup.checkItemTypeTag('plug', ['hollow'])>>
<<setThreshold 'bondage' 'machine_bondage' 'black_box'>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/flat_bedroom_01_blackbox02.png">>
<div id="invframe" class="scrolltext">
On your knees and bent forward, you are held in what you now realise is a VERY exposed position by the minimalist set of stocks binding your wrists and neck. Legs spread, your ankles too are cuffed. All of the restraints are padded for comfort, but feeling quite snug and secure. Perched on the small, padded main platform you are quite comfortable, all things considered.<br>
<br>
An articulated arm rises up from the platform, raising a small screen up in front of you.<br>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.know_trick>>
<<printThought "I knew this was a bondage device, but I didn't expect it to be so automatic... or secure...">>
<<else>>
<<printThought "Uh-oh... what have I got myself into this time?">>
<</if>>
<br><br>
You pull against your restraints, but it would seem that you are quite helpless and at the mercy of the device as the screen continues to display information.<br>
<br>
<<if !$player.body_ref.vagina>>
"@@.computer;Profile corrupt. Reverting to factory defaults. If you do not wish to continue, please say abort or use the abortion command code.@@"
<<else>>
"@@.computer;Profile confirmed. If you do not wish to continue, please say abort or use the abortion command code.@@"
<</if>>
<br><br>
You moan "abort" several times, with increasing levels of frantic frustration while mashing different button combinations on the controller.<br>
<br>
"@@.computer;No registered override recognised, proceeding with delta routine...@@"<br>
<br>
You mumble into your gag as you try to process that you're about to endure... something.<br>
<br>
<<if !$player.body_ref.vagina>>
"@@.computer;Physical changes noted since last session. Wrong quantity of usable orifices detected... modifying delta routine to compensate... modifications complete, executing routine delta-x. Enjoy!@@"
<<else>>
"@@.computer;Loading custom configuration — "Anal Doesn't Count;" executing routine delta-x. Enjoy!@@"
<</if>>
<br><br>
You're still as confused as ever as the articulating arm and its attached screen fold back into the platform underneath you. The next thing you know you're feeling something behind touching your butt.<br>
<br>
Craning your neck you try to see what's going on, but the stocks are too rigid, whatever is happening behind you a mystery to your sense of sight.<br>
<br>
<<if !setup.isBodySlotVisible('bootie')>>
You feel a mechanical arm peel down your clothes to expose your bare ass to the world. Very precise the process is quick and efficient leaving you feeling even more helpless than before.<br>
<br>
<</if>>
<<if $scene.plug>>
<<if $scene.hollowPlug>>
You feel something probe at the <<=setup.getItemTypeName('plug')>> in your rear, but it leaves the hollow device spreading your rear in place, the momentary inspection only having you feeling more exposed and vulnerable.
<<else>>
You feel something tugging on the <<=setup.getItemTypeName('plug')>> currently occupying your ass, the familiar intruder gently removed and placed on the ground behind you leaving you empty and exposed.
<</if>>
<br><br>
<</if>>
Biting down on your gag, you breathe nervously as you feel something wet and slippery pressing against your exposed rear hole. Mindful of the open-mouth design of the gag you half expect something from the other direction as well, but it appears you're at least safe on that account as nothing rises into your field of view.<br>
<br>
<<printThought "This isn't a game, I'm about to get fucked!">><br>
<br>
[<<moveTo "room_home_black_box_unlocked_4" 'Experience routine "delta-x."' 1>>]
</div>/*#
#desc: black box fucks you after opening
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.plug != "" && !$scene.hollowPlug>>
<<removeItem $scene.plug true>>
<</if>>
<<set $scene.cage = setup.getItemTypeName("cage")>>
<<if $scene.hollowPlug>>
<<applyExperience 'anal' 10 'very' $ALONE>>
<<else>>
<<applyExperience 'anal' 8 'very' $ALONE>>
<</if>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 0>>
<<setThreshold 'anal' 'other_anal' 'black_box'>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAnimatedBGR "./video/blackbox_01.mp4">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") == 8>>
The lubricated dildo sliding into your ass feels as big as anything you've ever had "up there." Scared at what the automated, unfeeling machine might do to your helpless body your heart races and you pant through the gag as it slides deeper, spreading your ass wider.
<<elseif setup.getTotalValue("anal") == 0>>
You had no intention of losing your anal virginity, much less like this, but the unfeeling machine has other ideas. What feels like a slippery telephone pole slides into your ass, spreading you to the point you fear you might split in half before sliding deeper.
<<elseif setup.getTotalValue("anal") > 12>>
The dildo is a reasonable size, but you are a <<if setup.getTotalValue("anal") > 15>>full on<<else>>burgeoning<</if>> size queen so you immediately hunger for more even as it easily slides into your body.
<<elseif setup.getTotalValue("anal") > 8>>
Not the biggest thing you've had in your well-used rear hole the dildo is still quite substantial, spreading and filling your rear as it slides into your body.
<<elseif setup.getTotalValue("anal") > 4>>
<<if !$player.virgin.anal>>You may be a virgin "back there," but you<<else>>You<</if>>, and your butt, have been around the block a few times, but the dildo entering you now is on another level. Thicker and longer than anything you've felt before all you can do is pant and try to relax as the girthy artificial cock slides into you.
<<else>>
Your prior experience with sticking things in your butt hardly prepares you for the dildo that is now entering you. Unable to see its actual dimensions, your imagination goes wild as it feels like something the size of a coke can and the length of your arm is forced into your inexperienced hole.
<</if>>
<<if $scene.hollowPlug>>
The hollow plug somehow serves to make the devices entry easier, even as it forces you to gape even wider in accommodation.
<</if>>
<br><br>
<<if $player.body.penissize[0] < 4>>
<<printThought "Is this what <<=setup.getNpcName('npc_exgirlfriend', 'first')>> enjoyed? It's lucky I never had sex with her — she would have been so unsatisfied with my <<getWordMyPenis false>>...">><br>
<br>
<</if>>
Grinding to a halt deep inside you, the machine pauses for several seconds as if to let you become accustomed to the large intruder. Breathing fast, you already know what's coming next, unable to do anything about it, you strain against your bonds and let out a muffled cry through your stifling gag.<br>
<br>
Just as expected the dildo retracts partially, only to slide forward again, fucking your helpless body. After several more strokes, you feel something else come into contact with your most private regions...<br>
<br>
<<if $player.body_ref.penis>>
<<if $scene.cage != "">>
Though your <<getWordMyPenis false>> may be safely locked away that doesn't stop the contraption that has you at its mercy, reaching up from below to press something against your imprisoned privates.
<<else>>
Already hard from fear, anticipation, or something else, your <<getWordMyPenis>> stiffens even more as something reaches up to press against the base of your shaft.
<</if>>
<br><br>
<</if>>
<<if $player.body_ref.vagina>>
<<if $scene.cage != "">>
You are dripping beneath your chastity belt, "safe" from the possible escalation of the machine deciding to make your double penetration a triple.
<<else>>
You are already dripping, but the machine seems to purposefully refrain from penetrating your front hole — a vibrator presses against your loins but, perhaps surprisingly, your "inner garden" is ignored.
<</if>>
<br><br>
<</if>>
While the dildo continues to rhythmically fuck your ass, the device pressed against your <<if $scene.cage != "">>imprisoned <</if>>privates begins to vibrate, hard. Unable to escape or resist, your body, instead, submits. Twisting your head and pulling against your wrist cuffs, the vibrations against your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<getWordVagina>><</if>> intertwine with the fucking of your ass to send waves of pleasure bouncing through your bound body.<br>
<br>
<<if $player.body_ref.penis>>
<<if $scene.cage != "">>
Working in exact opposite to its designed purpose, your cage seems to intensify and focus the vibrations, your straining, over-sensitised <<getWordMyPenis>> unable to escape the stimulation it is soon dribbling tears of joy in a drawn out, intense orgasm unlike any you have ever experienced before.
<<else>>
As strong as the vibrations running through your shaft and balls may be, they leave your sensitive cock-head untouched.
<</if>>
<<else>>
<<if $scene.cage != "">>
Your chastity belt may be sufficient to stop direct stimulation, but the vibrations are so potent that they managed to work their magic through your thighs into the bones of your pelvis; a torturous frustration that is a constant reminder of your inescapable prison.
<<else>>
The vibrations are potent, leaving you quivering and silently wishing that the machine would follow up by fucking more than your ass...
<</if>>
<</if>>
Panting and drooling, the sensations in your ass, of being stretched and penetrated, fucked and filled slowly overpowering even the intense vibrations running through your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<getWordVagina>><</if>>. As if on cue, the dildo begins to vibrate as well, sending waves of stimulative pleasure through your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. Moaning through the gag, you have an analgasm, rearing back to scream only to go partially limp, hanging in your bonds as your heart pounds in sequence with the dildo continuing to rhythmically pound your ass.<br>
<br>
As if trying to squeeze out the last bit of juice from an orange, the anal onslaught continues for several more minutes before the crotch-vibrator retracts and the dildo slides out of your gaping, hard-fucked ass.<br>
<br>
Trying to catch your breath, you hang there for a while before you hear a series of clicks and realise that you are no longer locked into the device.<br>
<br>
[<<moveTo "room_home_black_box_unlocked_5" 'Extricate yourself.' 600>>]
</div>/*#
#desc: released yourself from black box after first opening
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/flat_bedroom_01_blackbox02.png">>
<div id="invframe" class="scrolltext">
Your arms somewhat noodle-like, you almost choke yourself trying to get out of the stocks, finally managing to stagger to your feet only to stumble and collapse to the ground a couple meters away.<br>
<br>
Landing on your ass, you wince as you jostle your abused hole, finally staring back at the device that administered your torment.<br>
<br>
Made of steel and leather, it looks far more imposing than when you thought it a mere game platform; an efficient design meant to hold the afflicted in a helpless approximation of being on all fours. As you experienced, the position is nigh perfect for "doggie style" and you realise that the angle of the neck collar means that, if the gag wasn't used, your mouth would be at a usable height as well...<br>
<br>
Shaking your head, you examine the dildo and vibrator.
<<if setup.getTotalValue("anal") >= 6>>
On the larger, but not inhuman, size the dildo is relatively plain and un-anatomical.
<<else>>
Not quite as gargantuan as your imagination painted it the dildo is still quite large as far as "human anatomy" goes, a thick rod of smooth silicone without any anatomical detailing.
<</if>>
Still dripping with lube, it is attached to an articulated arm and what looks like some sort of efficient motor shaft for thrusting. Down below the vibrator is a largish dome that looks like a modified wand of the sort you once read was quite popular amongst women.<br>
<br>
As you sit and watch, a small arm reaches up to clean off the dildo and vibrator, also wiping up the pool of your "excitement" that had spilled out over the padded vinyl platform that you had been kneeling on. Finished cleaning, the rag is bagged up and dropped to one side and then the entire device starts to fold in on itself. It's quite the miracle of engineering to watch and, while nowhere near as fast as its explosive deployment, it is only a few minutes later that you are staring at the innocuous "mysterious black box" that had so long sat in your wardrobe.<br>
<br>
You stand up.
<<if !setup.checkNaked()>>
Fixing your clothes, you
<<else>>
You
<</if>>
start to contemplate your next move.<br>
<br>
<<if $player.locations.sexstore>>
<<printThought "I've never seen a modification like that, I wonder where <<=setup.getNpcName('npc_exgirlfriend','first')>> could have gotten it? That was before the sex store opened in the mall, but maybe they'd know something about it? Either way, I guess I won't be pondering what's in the box? anymore...">>
<<else>>
<<printThought "I've never seen a modification like that, I wonder where <<=setup.getNpcName('npc_exgirlfriend','first')>> could have gotten it? I think I remember there was a sex store opening in the mall... but it hasn't opened yet. Maybe I could ask them when they open up... Either way, I guess I won't be pondering what's in the box? anymore...">>
<</if>>
<br><br>
Slightly nervous, even with the box closed an innocuous, you push it to the side of the living room.<br>
<br>
<<printThought "For later... wait, what am I thinking? Well, maybe...">><br>
<br>
[<<moveTo "room_livingroom" 'Step away from the box.' 180 "<<deleteItem 'black_box'>>">>]
</div>/*#
#desc: unpackage chastity cage from box
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.femstylechastity = false>>
<<addItem "c_cage_steel">>
<<addItem "steel_chastity_cage_key">>
<<deleteItem 'chastity_cage_box'>>
<<if $player.body_ref.penis && $player.body_ref.balls>>
<<setThreshold "submission" "voluntary_submission" "steel_cage">>
<<if $player.timebased.horny>=50>>
<<set $player.timebased.horny = 49>>
<</if>>
<<if $player.sec_style.submission.chastity == "">>
<<set $scene.femstylechastity = true>>
<<set $player.sec_style.submission.chastity = "voluntary">>
<<setThreshold 'bondage' 'other_bondage' 'cage_first'>>
<<set $player.flags.chastity_style = 'cage'>>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<<gainWillpower 1>>
<<wearItem "c_cage_steel" true>>
<<manipulateItem "c_cage_steel" "lock" true>>
<<createAvatar>>
<</if>>
<</if>>
<</if>>
<<createAnimatedBGR "./video/chastity_01.mp4">>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device from inside.
<<if $player.body_ref.penis && $player.body_ref.balls>>
<<if !$scene.femstylechastity>>
It is small and made of metal, slightly different in design, but no different in function than your prior experience with chastity devices. You discard the box.
<<else>>
It is made of metal, cool and surprisingly heavy, while also smaller than you might have imagined. As if on auto pilot, you find yourself exposing yourself and fumbling to put it on.<br>
<br>
<<if $player.timebased.horny > 50>>
<<if $player.timebased.horny > 75>>
Your intense arousal makes this a bit of a struggle, but taking advantage of the cold metal and a bit of squeezing you somehow manage to get your <<getWordMyPenis false>> stuffed into the snug prison.
<<else>>
Your arousal presents a bit of a challenge as you are currently too big for the device, but taking advantage of the cold metal and some deep breaths you manage to get things "under control" and get it installed.
<</if>>
<<else>>
<<if $player.timebased.horny > 25>>
Your mild arousal presents no serious challenge as you are able to wrangle yourself inside, the cold metal taking care of the rest.
<<else>>
Being conveniently already flaccid you encounter no difficulties in getting the device installed.
<</if>>
<</if>>
<br><br>
Finishing up you lock the device closed, twitching slightly as the weight of the device hangs off of you as a constant reminder. You stare at the key — at present you have voluntarily locked yourself away, which is surprisingly exciting but, so long as you have the key in your possession, the "chastity" device is more an accessory, a bit of fun that will keep you from getting too aroused or easily playing with yourself.<br>
<br>
If you were to lose the key, however... you give a few tugs to confirm that the cage is quite securely in place, irremovable without the key or damage to yourself or the device. You let out a ragged breath, the thought of losing possession of the key... it being taken from you, or surrendering control to another... you shake your head, trying to distract yourself by fixing your clothes, surprised at how well everything fits over top of your now-hidden prison. Such an setting seems highly unlikely in your eyes, since your main purpose for buying this device is to get your nether regions under control once more. The feeling of cool metal on your <<getWordMyPenis false>> fills you with determination.<br>
<br>
<<printThought "Yeah, I'm doing this for my own good, not because I want to lock my <<getWordMyPenis false>> up.">>
<</if>>
<<elseif !$player.body_ref.balls>>
You fiddle with the device for a minute or so, but with your lack of balls there seems no way to attach it.
<<else>>
<<printThought "Well this is useless, since I no longer have anything to lock up...">>
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage small anal plug from box
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.llocation=="room_mall_lingerie_shop">>
<<initRoom>>
<<moveTo "event_shopkeeper_02_1">>
<<else>>
<<addItem "analplug_beginner">>
<<deleteItem 'analplug_small_box'>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the anal plug from it. It is small and made of metal. It has a crystal shaped like a heart at the base. As you discard the box, you notice a note inviting you to the opening of a new store in the mall — <<printShopName 'mall_sexstore'>>, a sex toy shop!<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: open alizon box
#status: FINISHED 0.4.0.0
#ignore_spell: w
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "striped_bra_blue">>
<<addItem "striped_panties_blue">>
<<addItem "striped_stockings_blue">>
<<deleteItem 'alizon_box_1'>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.clothing.underwear == "enthusiast">>
You open up the slightly damaged box from Alizon and smile as you pull out a full set of cute blue-striped underthings.<br>
<br>
<<printThought "Wow, these are even cuter than the listing... but am I really ready to wear something like this out... to work?">><br>
<br>
You bite your lip, torn between the excitement of your new acquisition and a nagging bit of nerves.<br>
<br>
[<<moveTo "room_use_alizon_box_2" 'Yes, this is what you want to do!' 60 "<<set $scene.wear=true>>">>]<br>
[<<moveTo "room_use_alizon_box_2" "This is maybe a bit much... perhaps you could just go commando and buy something more reserved later?" 60 "<<set $scene.wear=false>>">>]
<<else>>
You open up the slightly damaged box from Alizon, ready to take out what should be your salvation. But as you remove the plastic envelopes from the box containing the underwear your hearts stops in your chest.<br>
<br>
<<printThought "W... what's that? This is not what I've ordered!">><br>
<br>
Well, there goes your moment of victory and what remains is total defeat. What you hold in your hands is some kind of blue and white striped underwear set. Maybe intended for cosplayers? You really don't know. They might have looked cute on <<=setup.getNpcName('npc_exgirlfriend', 'first')>>, but that's in the past now. There's a frilly bra, some panties and knee high socks in there. Maybe from that really oldschool anime with the all-girl pop band? Who knows?<br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
<<printThought "Could my life get any more unlucky? Though... I guess this manages to be less embarrassing than that pink horror show <<=setup.getNpcName('npc_manager', 'formal')>> forced on me...">>
<<else>>
<<printThought "You know what? Screw this! If this is what I've got, this is what I'll work with. It's only for today. So let's get this over with!">>
<</if>>
<br><br>
You brace yourself. Are you really going to wear these items for the day?<br>
<br>
[<<moveTo "room_use_alizon_box_2" 'You have to wear something, so you really have no other choice...' 60 "<<set $scene.wear=true>>">>]<br>
[<<moveTo "room_use_alizon_box_2" "No way, you'll just go commando instead." 60 "<<set $scene.wear=false>>">>]
<</if>>
</div>/*#
#desc: open alizon box, decide to wear
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.wear>>
<<setThreshold 'feminization' 'good_girl' 'alizon_package'>>
<<if $player.sec_style.clothing.underwear == "">>
<<set $player.sec_style.clothing.underwear = "obedient">>
<</if>>
<<else>>
<<set $player.flags.commando = true>>
<<itemToWardrobe "striped_bra_blue">>
<<itemToWardrobe "striped_panties_blue">>
<<itemToWardrobe "striped_stockings_blue">>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<if $scene.wear>>
Your heart races as you make the decision to wear these cute new underthings and you toss the package in the trash before focusing back on getting ready for the first day at your new job.
<<else>>
Even though just looking at the new underwear makes your heart skip a beat with excitement you decide against wearing it for now, instead tucking it away in your wardrobe.<br>
<br>
<<printThought "No harm taking things a bit slow, right?">>
<</if>>
<<else>>
<<if $scene.wear>>
You grit your teeth — the order screw up feels like another layer of the universe conspiring against you, but all you can do is set you jaw and move forward. Sure the expense is a major bummer but underwear is underwear, right? You'll just wear this for the day and then hit up their return department or figure something else out. Just because your choices are limited doesn't mean you can't make the best of the situation, and going to work without anything on under your clothes sounds uncomfortable, and technically against dress-code, though you don't see how that would ever come up.
<<else>>
The order screw-up is like another domino falling — how many things have to go wrong for you before the universe shows you some relief? You sigh, and take a deep breath. No matter, you can go a day without wearing underwear, hardly the end of the world. Besides, it's really not such a big thing; even if it's technically against the work dresscode, well... it's not like anyone would ever check? Yeah, everything will be fine, just put on the rest of your clothes, toss this stuff in the wardrobe, go to work, and hit up the mall on the way home...
<</if>>
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Put the box away." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage electric chastity cage from box
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "electric_chastity">>
<<addItem "electric_chastity_cage_key">>
<<deleteItem 'electric_chastity_box'>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device from inside. It is cold to the touch and surprisingly heavy<<if $fetish.sounding>>, the urethral plug looking intimidatingly thick, though even that isn't as scary as the<<else>> with<</if>> electrode contacts that give the device its name.<br>
<br>
Emptying the box you find the key and a short pamphlet explaining that the device charges from body temperature giving it an almost limitless effective battery life, all controllable remotely. You discard the box and instructions.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage tiny chastity cage from box
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "chastity_cage_tiny">>
<<addItem "small_chastity_cage_key">>
<<deleteItem 'chastity_cage_tiny_box'>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device from inside. It is small, smaller than the previous chastity devices you have seen and you half wonder if you could even fit in it. Such a question can be answered some other time as you find the key in the bottom of the box and then discard the packaging.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage chastity belt from box
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "chastity_belt_flat">>
<<addItem "chastity_belt_flat_key">>
<<deleteItem 'chastity_belt_flat_box'>>
<<setThreshold "submission" "voluntary_submission" "steel_cage">>
<<if $player.timebased.horny>=50>>
<<set $player.timebased.horny = 49>>
<</if>>
<<if $player.sec_style.submission.chastity == "">>
<<set $scene.femstylechastity = true>>
<<set $player.sec_style.submission.chastity = "voluntary">>
<<setThreshold 'bondage' 'other_bondage' 'cage_first'>>
<<set $player.flags.chastity_style = 'belt'>>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<<gainWillpower 1>>
<<wearItem "chastity_belt_flat" true>>
<<manipulateItem "chastity_belt_flat" "lock" true>>
<<createAvatar>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device from inside. It reminds you a bit of a thong — a steel belt that contours to your hips and then smoothly dips down between your legs to cover your front before parting behind as not to impede your rear hole. It appears very secure and nigh inescapable and you estimate it would also give you a very smooth, "tucked" profile.
<<if !$scene.femstylechastity>>
Rooting around in the box, you find the key, tucking it away for safe keeping before discarding the packaging.
<<else>>
Feeling the weight of the cool steel in your hands is almost intoxicating. As if on auto pilot, you find yourself exposing yourself and wrapping it around your waist.<br>
<br>
<<if $player.body_ref.penis>>
<<if $player.timebased.horny > 50>>
<<if $player.timebased.horny > 75>>
Your intense arousal makes this a bit of a struggle, but taking advantage of the cold metal and a bit of squeezing you somehow manage to get your <<getWordMyPenis false>> stuffed into the snug prison.
<<else>>
Your arousal presents a bit of a challenge as you are currently too big for the device, but taking advantage of the cold metal and some deep breaths you manage to get things "under control" and get it installed.
<</if>>
<<else>>
<<if $player.timebased.horny > 25>>
Your mild arousal presents no serious challenge as you are able to wrangle yourself inside, the cold metal taking care of the rest.
<<else>>
Being conveniently already flaccid you encounter no difficulties in getting the device installed.
<</if>>
<</if>>
<<else>>
You are a bit surprised at how sleek and fitted the device is, not uncomfortable, despite its rigidity.
<</if>>
<br><br>
Finishing up you lock the device closed. Running hand over the front of the device is a unique, almost intoxicating experience. You feel nothing save for smooth steel; your profile sleek, a far cry from the dangling distraction that you were previously used to. You stare at the key — at present you have voluntarily locked yourself away, which is surprisingly exciting but, so long as you have the key in your possession, the "chastity" device is more an accessory, a bit of fun that will keep you from getting too aroused or easily playing with yourself.<br>
<br>
If you were to lose the key, however... you give a few tugs to confirm that the belt is quite securely in place, irremovable without the key or damage to yourself or the device. You let out a ragged breath, the thought of losing possession of the key... it being taken from you, or surrendering control to another... you shake your head, trying to distract yourself by fixing your clothes, surprised at how well everything fits over top of your now-hidden prison. Such a setting seems highly unlikely in your eyes, since your main purpose for buying this device is to get your nether regions under control once more. The feeling of cool metal surrounding your <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>>private parts<</if>> shields you, and fills you with determination.<br>
<br>
<<if $player.body_ref.penis>>
<<printThought "Yeah, I'm doing this for my own good, not because I want to lock my <<getWordMyPenis false>> up.">>
<<else>>
<<printThought "Yeah, I'm doing this for my own good, not because I want to be locked up...">>
<</if>>
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: open fill me fun package
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'bondage_upgrades_box'>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade = true>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box of attachments, following the instructions to first set the black box to "maintenance" mode and incorporate the new forward dildo arm and dual dildo controllers into the device before stepping back for the box to close back up.<br>
<br>
Going through the packaging, you find a code for you to send away for a pair of<<if $fetish.get_raped>> "Ultimate Revolution" <<else>> "Supreme Commander" <</if>>attachments to "take the game to the final level!" Sending away for the free gift, you discard the remainder of the packaging.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: install bondage machine upgrade
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'bondage_upgrades_box2'>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade = true>>
<</if>>
<div id="invframe" class="scrolltext">
Unpacking the box, you find a pair of intimidatingly-large dildos. The packaging names them as<<if $fetish.get_raped>> "Rape Rape Revolution Ultra-Cocks(tm)" <<else>> "Space Slut Supreme. Ultra-Cocks(tm)" <</if>>and you recall the "free upgrade" that you sent away for.<br>
<br>
<<printThought "Wow, these are impressive, I wonder what they'll be like to play with...">><br>
<br>
Wrapping your hand around them, you marvel at the realistic fleshyness, with girth and length that would cause most porn performers to blink.<br>
<br>
Bringing them over to the black box containing your self-bondage device, you follow the instructions to, surprisingly, place them in a small compartment in the base of the box. Rather than permanently replacing the substantial dildos that the device came with these "free" additions merely augment the options that the bondage fucking device can deploy.<br>
<br>
With the new dildos securely housed, the device lets out a warning chime and you step away for it to fold back up, its deviant capabilities once more hidden inside the plain exterior.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: unpackage pink chastity cage from box
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "c_cage_pink">>
<<set _keyId = setup.getItemObj("c_cage_pink").lockable[1]>>
<<addItem _keyId>>
<<deleteItem 'c_cage_pink_box'>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device and key from inside. Made of sturdy pink material it seems almost quaint and insecure compared to what you have since become accustomed to.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage tiny chastity belt from box
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "chastity_belt_tiny">>
<<set _keyId = setup.getItemObj("chastity_belt_tiny").lockable[1]>>
<<addItem _keyId>>
<<deleteItem 'chastity_belt_tiny_box'>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device and key from inside. Sleek and smooth you imagine it would feel quite secure and striking, though nothing compared to what you have become experienced with since.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage electric chastity belt from box
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "chastity_belt_electric">>
<<set _keyId = setup.getItemObj("chastity_belt_electric").lockable[1]>>
<<addItem _keyId>>
<<deleteItem 'chastity_belt_electric_box'>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device and key from inside. Sleek and smooth you imagine it would feel quite secure, though its electrics seem almost quaint and simplistic compared to what you have become experienced with since.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage advanced chastity cage from box
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "c_cage_advanced">>
<<set _keyId = setup.getItemObj("c_cage_advanced").lockable[1]>>
<<addItem _keyId>>
<<deleteItem 'c_cage_advanced_box'>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device and key from inside. On the one hand it represents the peak of consumer-grade chastity, but compared to a <<=setup.getItemName('sissyomatic')>> it seems almost primitive.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage advanced chastity belt from box
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "chastity_belt_adv">>
<<set _keyId = setup.getItemObj("chastity_belt_adv").lockable[1]>>
<<addItem _keyId>>
<<deleteItem 'chastity_belt_adv_box'>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device and key from inside.
<<if $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $currentTasks.hasOwnProperty('task_sissyomatic_steal') || $player.sec_style.submission.sissyomatic>>
On the one hand it represents the peak of consumer-grade chastity, but compared to a <<=setup.getItemName('sissyomatic_belt')>> it seems almost primitive.
<<else>>
<br><br>
<<printThought "The pinnacle of chastity...">>
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: open vag upgrade package
#status: FINISHED 0.8.3.0
#ignore_spell: g
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'rrr_vag_upgrade'>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.vag_upgrade = true>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
You open the Demons Love Cunt box and follow the instructions to install the dildo; first setting the black box to "maintenance" mode and incorporating the new lower-mount dildo, marveling at the number of hook-ups it requires, featuring multiple cables, pneumatics and a self-lubricating cum-tube.<br>
<br>
The dildo is large, and feels remarkably lifelike... though its shape is a bit beyond human, incorporating g-spot nub and targeted clit stimulators. You nod in satisfaction when you boot things up to confirm everything is hooked together correctly, <<if $player.body_ref.vagina>>already wet at the idea of testing it out<<if setup.checkItemTypeWorn("cage")>>... if only you weren't locked away in chastity<</if>><<else>>wishing you were properly equipped to give it a spin<</if>>.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: open penis upgrade package
#status: FINISHED 0.8.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'rrr_penis_upgrade'>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.penis_upgrade = true>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
You open the Devils Love Cock box and follow the instructions to install the cock-sleeve. In principle it's just a screw-in mount and a couple hook-ups for lube, power, and pneumatics, but the design of it means things are pretty tight, and the alignment is important; the first time you install it you accidentally have the testicle cosies on the wrong side, but you eventually get everything aligned and get a green gum-balls systems diagnostic back.<br>
<br>
Sticking your fingers in the sleeve it feels quite enticing, and the instructions describing its auto-lubricating capabilities makes it sound like you could have quite the fun time with it, <<if $player.body_ref.penis>><<if !setup.checkItemTypeWorn("cage")>>quite a fun time, indeed<<else>>well, if you weren't in chastity<</if>><<else>>well... if you had a penis, that is<</if>>.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: open technician panties
#status: FINISHED 0.8.6.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "technician_intro_panties">>
<<deleteItem 'technician_intro_panties_package'>>
<</if>>
<div id="invframe" class="scrolltext">
You rip open the plastic packaging of the panties <<=setup.getNpcName('npc_technician','first')>> gifted you and are treated to a quick burst of a fresh, slightly flowery scent.<br>
<br>
<<printThought 'That seems a bit excessive... but I guess maybe nice given that she said these were a "backup" pair... a refreshing scent would probably be nice in any situation where one had to resort to such...'>><br>
<br>
You take a moment to inspect the panties — other than the smell they're kind of... very basic cotton panties. Definitely feminine in cut, but fully on the utilitarian side of the underwear vs. lingerie scale.<br>
<br>
<<printThought 'Still, it was nice of <<=setup.getNpcName("npc_technician","first")>> to give them to me...'>><br>
<br>
That thought reminds you of what you did to "earn" such a gift and you find yourself blushing as you toss the packaging and put the panties away.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage flat chastity cage from box
#status: FINISHED 0.8.7.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "chastity_cage_flat">>
<<set _keyId = setup.getItemObj("chastity_cage_flat").lockable[1]>>
<<addItem _keyId>>
<<deleteItem 'chastity_cage_flat_box'>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device and key from inside. Small and flat you marvel at how it will all but remove evidence of your <<getWordMyPenis>> if worn...<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage electric chastity belt from box
#status: FINISHED 0.8.7.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "chastity_cage_invert">>
<<set _keyId = setup.getItemObj("chastity_cage_invert").lockable[1]>>
<<addItem _keyId>>
<<deleteItem 'chastity_cage_invert_box'>>
<</if>>
<div id="invframe" class="scrolltext">
You open the box and remove the chastity device and key from inside. Small and flat you marvel at how it will literally shove your <<getWordMyPenis>> back into your body and make it all but nonexistent to an outside observer...<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: unpackage kig vr
#status: FINISHED 0.8.7.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'kig_vr_mask_box'>>
<<addUpgradeItem $bed 'vr_kig'>>
<</if>>
<div id="invframe" class="scrolltext">
You plug in the kigurumi helmet next to your bed. The cables are a bit of a challenge to wrangle and you conclude that you should probably combine it with some sort of restraints if you don't want to end up tangling yourself up while you sleep.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use manager's business card
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeCarried('smartphone')>>
<<addPhonenumber $phoneList 'npc_manager'>>
<<deleteItem 'card_manager'>>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('smartphone')>>
You transfer the contact information for <<=setup.getNpcName('npc_manager', 'formal')>> from the business card to your phone.
<<else>>
You need your phone to add contact information.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use technician's business card
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeCarried('smartphone')>>
<<addPhonenumber $phoneList 'npc_technician'>>
<<deleteItem 'card_technician'>>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('smartphone')>>
You transfer the contact information for <<=setup.getNpcName('npc_technician', 'first')>> from the contact card to your phone.
<<else>>
You need your phone to add contact information.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use landlord's business card
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeCarried('smartphone')>>
<<addPhonenumber $phoneList 'npc_landlord'>>
<<deleteItem 'card_landlord'>>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('smartphone')>>
You are kind of puzzled as your phone does not seem to realise that there is a contact card to scan. You try a few times. No result. Hmm. Maybe bluetooth is deactivated because of your remaining battery? Nope. You decide to update your phone. Nope, does not work either. This starts to get frustrating. You check if the card is okay. Then it hits you like a brick in the face. This is just a normal scrap of paper. Rolling your eyes at how behind the times your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> is, you manually type <<=ps(setup.getNpcName('npc_landlord', 'first'))>> contact info into your phone.
<<else>>
You need your phone to add contact information.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use psychiatrists' business card
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeCarried('smartphone')>>
<<addPhonenumber $phoneList 'npc_psychiatrist'>>
<<deleteItem 'card_psychiatrist'>>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('smartphone')>>
You transfer the contact information for <<=setup.getNpcName('npc_psychiatrist', 'first')>> from the contact card to your phone.
<<else>>
You need your phone to add contact information.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: add barkeeper contact info to phone
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory('smartphone')>>
<<addPhonenumber $phoneList 'npc_barkeeper'>>
<<deleteItem 'card_barkeeper'>>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('smartphone')>>
You transfer the contact information for <<=setup.getNpcName('npc_barkeeper', 'first')>> from the contact card to your phone.
<<else>>
You need your phone to add contact information.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: add guard contact info to phone
#status: FINISHED 0.8.2.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory('smartphone')>>
<<addPhonenumber $phoneList 'npc_guard'>>
<<deleteItem 'card_guard'>>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('smartphone')>>
You transfer the contact information for <<=setup.getNpcName('npc_guard', 'formal')>> from the contact card to your phone.
<<else>>
You need your phone to add contact information.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: add retention contact info to phone
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory('smartphone')>>
<<addPhonenumber $phoneList 'npc_retention'>>
<<deleteItem 'card_retention'>>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('smartphone')>>
You transfer the contact information for <<=setup.getNpcName('npc_retention', 'formal')>> from the contact card to your phone.
<<else>>
You need your phone to add contact information.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: add rpg friends contact info to phone
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory('smartphone')>>
<<addPhonenumber $phoneList 'npc_rpg_warlock'>>
<<deleteItem 'business_card_rpg_friends'>>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('smartphone')>>
You copy <<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> number to your phone.
<<else>>
You need your phone to add contact information.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: eat sissy candy
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<set _resist = false>>
<<if $player.timebased.fatigue<=70>>
<<set _resist = true>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<createAnimatedBGR "./video/mindpop.mp4">>
<div id="invframe" class="scrolltext">
You unwrap the candy. Looks interesting enough. You have no idea how they made the red parts of the candy glow, but it gives the whole thing a rather mysterious look. You hope it tastes as good as it looks. You open your mouth and put the candy inside.<br>
<br>
<<printThought "Wow... that tastes even better then expected!">><br>
<br>
You never tasted anything remotely comparable. It tastes like strawberry, cream, cotton candy and rainbows. You feel kind of dizzy for a moment, and slowly, but surely you can feel some thoughts disappear from your head. Any thoughts of insubordination, disobedience, rebellion, really questioning anything at all are fading into the background. A part of you wants to scream in panic, but that voice is fading just as fast, leaving behind a pink bubble that used to be your mind.<br>
<br>
<<printThought "Oh my <<getWordGod>>! What is happening to me?" -20>><br>
<br>
More and more of the undesirable thoughts are drawn into the bubble. And the bubble starts to grow like a bubblegum bubble. It grows and swells and stretches until you're sure there's no way any more will fit inside. And you are afraid. Very, very afraid, what happens if this bubble pops? Will you still be you, or is that part of you gone for good? You try to concentrate.
<<if _resist>>
There seems to be a way out. You simply have to spit the candy out. But is that really what you want?<br>
<br>
[<<moveTo "room_use_unknown_candy_2_spit" "Focus your willpower and spit the candy out!" 30>>]<br>
[<<moveTo "room_use_unknown_candy_2_swallow" "Swallow the sweet delight!" 30>>]
<<else>>
But you don't have the necessary stamina reserves left to fight this war, so there's only one option left for you.<br>
<br>
[<<moveTo "room_use_unknown_candy_2_swallow" "Swallow the sweet delight!" 30>>]
<</if>>
</div>/*#
#desc: spit out sissy candy halfway through
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<gainWillpower 1>>
<<deleteItem 'unknown_candy'>>
<<applyFatigue 30>>
<<set $player.flags.atebimbocandy = true>>
<<set $player.flags.spatbimbocandy = true>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_2')>>
<<if _themeId != -1 && $npc_psychiatrist.themes.npc_barista[_themeId].done > 0>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_3'
7
'event_psychiatrist_session_barista_eat_candy_1'
true
>>
<</if>>
<<deleteItem "unknown_candy">>
<<addItem "eaten_candy">>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_0'
8
'theme_barista_candy_1'
true
>>
<<applyExperience 'bimbofication' 5 'little' $ALONE>>
<</if>>
<<createAnimatedBGR "./video/mind_focus.mp4">>
<div id="invframe" class="scrolltext">
You try to focus your mind, but it seems like whatever the candy is doing to your brain counteracts your attempts.<br>
<br>
<<printThought "What the hell is happening to me? I don't want this! Someone...">><br>
<br>
In a moment of clarity, you finally start to understand that the only one who can help you in this situation is you, since it's your brain that's under... attack?<br>
<br>
<<printThoughtWill $player "No, I will not let this happen!">><br>
<br>
You spit the candy back into its wrapper. Your heart is pounding as it takes you a few seconds to regain your composure.<br>
<br>
<<printThought "What the hell was that? Was that the candy? I should keep this for further investigation. Maybe I can get it analysed somewhere.">><br>
<br>
You wrap the candy back in its wrapping and put it away. The whole ordeal has left you feeling drained, yet your mind seems overall stronger than before.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: swallow sissy candy
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $ALONE>>
<<changeHorny 25>>
<<applyStress -20>>
<<setThreshold 'bimbofication' 'candy_bimbofication' 'swallow_candy'>>
<<applyExperience 'bimbofication' 5 'terrible' $ALONE>>
<<setTmpEffect 'unknown_candy'>>
<<set $player.flags.atebimbocandy = true>>
<<deleteItem 'unknown_candy'>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_0'
0
'theme_barista_candy_1'
true
>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_2')>>
<<if _themeId != -1 && $npc_psychiatrist.themes.npc_barista[_themeId].done > 0>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_3'
7
'event_psychiatrist_session_barista_eat_candy_1'
true
>>
<</if>>
<</if>>
<<createAnimatedBGR "./video/mindpop.mp4">>
<div id="invframe" class="scrolltext">
You simply don't care anymore. Having this yummy piece of sweetness melt in your mouth is all that matters. You continue to lick it until it's gone. And with a final<br>
<br>
<<printThought "pop" 40>><br>
<br>
A part of your mind seems to be gone as well. But you don't care at all, since you, for once, feel that, like, a heavy burden has been lifted from your shoulders. You take a deep breath, stretch yourself and simply feel great! Could be a good day after all!<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: eat bimbo candy (repeatable)
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem "bimbo_candy">>
<</if>>
<<createAnimatedBGR "./video/mindpop.mp4">>
<div id="invframe" class="scrolltext">
You unwrap another of <<=ps(setup.getNpcName("npc_barista","nickname"))>> candies. Remembering how tasty they are, and how good eating them makes you feel, you open your mouth and put the candy inside.<br>
<br>
<<printThought "Mmmmmm...">><br>
<br>
As before, an explosion of strawberry cream, cotton candy and rainbows fills you mouth, transitioning into a familiar sense of light-headedness. You sigh as all thoughts of insubordination, disobedience, rebellion, really questioning anything at all fade into the background. A part of you wants to scream in panic, but that voice is fading just as fast, leaving behind a pink bubble that used to be your mind.<br>
<br>
Steadily all of your "heavy" thoughts are pulled together and into the bubble. And the bubble starts to grow like a bubblegum bubble. It grows and swells and stretches until you're sure there's no way any more will fit inside. You hold your breath as you anticipate it's popping...<br>
<br>
<<if setup.checkItemOwned('bimbo_candy') || $npc_work_doctor.flags.aphrodisiac.analyzed>>
<<printThought "These are so tasty...">><br>
<br>
[<<moveTo "room_use_bimbo_candy_2" "Swallow the sweet delight!" 30 "<<set $scene.swallow = true>>">>]
<<else>>
<<printThought "Do I really want to surrender like this? Maybe I should spit it out...">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "room_use_bimbo_candy_2" "Focus your willpower and spit the candy out!" 30 "<<set $scene.swallow = false>>">>]<br>
<<else>>
[@@.link_locked;You do not have the presence of mind to do anything, but surrender to the power of the tasty treat.@@]
<</if>>
[<<moveTo "room_use_bimbo_candy_2" "Swallow the sweet delight!" 30 "<<set $scene.swallow = true>>">>]
<</if>>
</div>/*#
#desc: spit or swallow bimbo candy (repeatable)
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.swallow>>
<<changeHorny 25>>
<<applyStress -20>>
<<setThreshold 'bimbofication' 'candy_bimbofication' 'swallow_candy'>>
<<applyExperience 'bimbofication' 5 'terrible' $ALONE>>
<<setTmpEffect 'bimbo_candy'>>
<<else>>
<<set $scene.firstSpit = !$player.flags.spatbimbocandy>>
<<if $scene.firstSpit>>
<<set $player.flags.spatbimbocandy = true>>
<<addItem "eaten_candy">>
<<gainWillpower 1>>
<<applyFatigue 30>>
<</if>>
<<setTmpEffect 'unknown_candy'>>
<</if>>
<</if>>
<<if $scene.swallow>>
<<createAnimatedBGR "./video/mindpop.mp4">>
<<else>>
<<createAnimatedBGR "./video/mind_focus.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.swallow>>
Letting your resistance slip away you let the bubble...<br>
<br>
<<printThought "pop" 40>><br>
<br>
taking a part of your mind with it. That's fine, you didn't like those thoughts anyway, even if you presently struggle to remember what they were... smiling happily you lick your lips, feeling relaxed and ready to enjoy another happy, pink day.
<<elseif $scene.firstSpit>>
You try to focus your mind, but it seems like whatever the candy is doing to your brain counteracts your attempts.<br>
<br>
<<printThought "What the hell is happening to me? I don't want this! Someone...">><br>
<br>
In a moment of clarity, you finally start to understand that the only one who can help you in this situation is you, since it's your brain that's under... attack?<br>
<br>
<<printThoughtWill $player "No, I will not let this happen!">><br>
<br>
You spit the candy back into its wrapper. Your heart is pounding as it takes you a few seconds to regain your composure.<br>
<br>
<<printThought "What the hell was that? Was that the candy? I should keep this for further investigation. Maybe I can get it analysed somewhere.">><br>
<br>
You wrap the candy back in its wrapping and put it away. The whole ordeal has left you feeling drained, yet your mind seems overall stronger than before.
<<else>>
Once again you exert your will, or maybe it's chicken out? Either way you manage to spit out the candy before its effects take hold, tossing it away before the nigh irresistible urge to toss it back into your mouth and swallow the delicious, calming yummyness overcomes your momentary resistance.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use raw breast drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_breast'>>
<<setTmpEffect 'drug_breast'>>
<<set $player.flags.drugs.breast += 1>>
<<applyExperience 'feminization' 15 'very' $ALONE>>
<<changeHorny 50>>
<<set _stress = -setup.getTotalValue("feminization")>>
<<applyStress _stress>>
<<applyFatigue -20>>
<<set $scene.breastGrow = $player.body.breastsize[0] < 10>>
<<set $scene.breastDD = $player.body.breastsize[1] < 5>>
<<if $scene.breastDD>>
<<set $player.body.breastsize[1] = 4>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "voluntary">>
<</if>>
<<set $scene.hairColor = $player.hair.color != 'blonde'>>
<<set $scene.hairGrow = $player.hair.style != 'long_open'>>
<<changeHair 'long_open' 'blonde'>>
<<if $scene.hairChange && !$player.sec_style.body.hair>>
<<set $player.sec_style.body.hair = "enthusiast">>
<</if>>
<<set $scene.lips = $player.body.lips[0] < 2>>
<<if $scene.lips>>
<<set $player.body.lips[1] += 1>>
<</if>>
<<set $scene.booty = $player.body.booty[1] < 2>>
<<if $scene.booty>>
<<set $player.body.booty[1] += 1>>
<</if>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_breast_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
The pink concoction that is <<=setup.getItemName("drug_breast")>> tastes like strawberries and cotton candy, bringing a smile to your face and a tingle to your skin as the potent chemicals work their magic.<br>
<br>
<<if $scene.breastDD>>
Your breasts swell, growing into a pair of plump "more than a handful" double D's.
<<elseif $scene.breastGrow>>
Your breasts swell slightly, growing what feels like a full cup size beyond their already massive proportions.
<</if>>
<<if $scene.hairColor>>
Your hair turns a golden shade of blonde,
<<if $scene.hairGrow>>
growing swiftly to cascade down your back and stop just below your waist.
<<else>>
from the roots all the way down to its tips down by your bottom.
<</if>>
<<else>>
<<if $scene.hairGrow>>
Your hair suddenly grows, cascading down, down until it stops hanging just past your waist.
<</if>>
<</if>>
<<if $scene.lips>>
Your lips tingle and feel a bit larger and puffier.
<</if>>
<<if $scene.booty>>
A warmth spreads through your rear as you feel your already ample behind plump slightly.
<</if>>
<<if $scene.breastDD || $scene.breastGrow || $scene.hairColor || $scene.hairGrow || $scene.booty || $scene.lips>>
<br><br>
The whole time your body is changing you are wracked with pleasure, crying out in delight as the transformation makes you feel happy and girly, but you repeat yourself.
<<else>>
Though your ultra-feminine body is unchanged by the drugs, you still shudder with pleasure, pink joy flowing through your body.
<</if>>
Riding a femme high, you feel some of your stress dissolve, flush with excited energy.
<<else>>
You consider the dose of <<=setup.getItemName("drug_breast")>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use raw dick drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home") && $player.body_ref.penis>>
<<deleteItem 'drug_dick'>>
<<set $player.flags.drugs.dick += 1>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.grow = $player.body.penissize[0] < 6>>
<<if $scene.cage != "" && setup.getChastityLevel() == 5>>
<<applyExperience 'bdsm' 17 'terrible' $ALONE>>
<<elseif $scene.grow>>
<<setTmpEffect 'drug_dick'>>
<<if $scene.cage != "">>
<<if setup.isCage()>>
<<removeItem $scene.cage true>>
<<deleteItem $scene.cage>>
<<addItem 'broken_cage'>>
<<wearItem 'broken_cage' true>>
<<manipulateItem 'broken_cage' 'lock' true>>
<<else>>
<<removeItem $scene.cage true>>
<<deleteItem $scene.cage>>
<<addItem 'broken_belt'>>
<<wearItem 'broken_belt' true>>
<<manipulateItem 'broken_belt' 'lock' true>>
<</if>>
<</if>>
<<applyExperience 'penis' 10 'terrible' $ALONE>>
<<if setup.getTotalValue("penis") > 10>>
<<applyExperience 'penis' 10 'terrible' $ALONE>>
<<applyExperience 'cum' 10 'terrible' $ALONE>>
<<else>>
<<set _top = setup.checkTopBodySlot('tits','top')>>
<<if _top != "">>
<<changeItemStatus _top 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<<playerOrgasm>>
<<else>>
<<if $scene.cage != "">>
<<changeHorny 20>>
<<applyExperience 'bondage' 13 'normal' $ALONE>>
<<else>>
<<playerOrgasm>>
<<applyExperience 'penis' 8 'normal' $ALONE>>
<</if>>
<</if>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_dick_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if !$player.body_ref.penis>>
You down the dose of <<=setup.getItemName("drug_dick")>> and... nothing happens, which shouldn't be a surprise given it is meant to work on a bit of anatomy you no longer possess.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
<<if $scene.cage != "" && setup.getChastityLevel() == 5>>
You down the <<=setup.getItemName("drug_dick")>> and feel a stirring in your loins only to be met with a sudden, intense pain. Bending double, you feel the advanced materials of the <<=setup.getItemTypeName('cage')>> swell slightly to accommodate your drug-fuelled growth until a punishing shock coursing out from the <<if $fetish.sounding>>urethra plug<<else>><<=setup.getItemTypeName('cage')>><</if>> stops everything in its tracks.<br>
<br>
Whimpering in pain, you feel the drugs effects slowly fade as they are counteracted by the diabolic device locked in and around your most sensitive parts.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif $scene.grow>>
<<if $scene.cage != "">>
You cry out, feeling your <<getWordMyPenis>> swell within its prison. There is an extended moment of constrained pain and then an explosion, your cock providing a solution to the riddle of steel as <<if $scene.isCage>>your cage shatters<<else>>the front shield of your belt explodes outwards<</if>>, your newly swelled member sticking out large and proud.
<<else>>
You cry out as your <<getWordMyPenis>> swells beyond its normal size, hard and big and a little scary, pulsing with veins as it sticks out from your body.
<</if>>
Overcome with lust, you reach down and grab your <<getWordMyPenis false>>, feeling the heat between your fingers as you start to stroke, every touch a further rush of pleasure.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
Staring down at your gloriously enhanced member, you
<<if 2*$player.body.penissize + setup.getTotalValue("dexterity") > 20>>
take advantage of the combination of size and your own flexibility to fold in half and taste yourself. The feedback loop of feeling your tongue and tasting yourself sends you into a frenzy as you suck and stroke and moan until you are rewarded with a thick mouth-full of cum.
<<else>>
curl up, hips raised high as you point your newly enhanced <<getWordMyPenis false>> at your face, wishing you could somehow reach it with your lips as you instead settle for staring yourself down as you stroke and pant and moan. It isn't long before the drops of pre-cum flecking your cheek are met with something more, a blast of cum that sprays across your face and chest, the hedonistic victim of your own private facial.
<</if>>
<br><br>
Your eyes roll back as you swallow every drop. You gurgle slightly as you <<if setup.getTotalValue("cum") > 10>>savour the delicious treat<<else>>reflexively choke down the bitter brew<</if>>.
<<else>>
Pleasure so powerful it is almost painful courses through you with each stroke as you fantasise fucking someone, or something, with your new, glorious member. Despite those desires you cannot stop yourself from continuing to stroke and soon your efforts are "rewarded" with a blast of cum that sprays out across the floor in front of you.
<</if>>
<br><br>
Staggering slightly, you feel your <<getWordMyPenis false>> shrink slightly, drooping in exhaustion yet remaining a touch larger than it was before...<br>
<br>
<<if $scene.cage != "">>
Taking a deep breath, you examine the <<if setup.isCage()>>shattered remains of your cage<<else>>remains of your chastity belt<</if>>. The ring remains locked around your base, the locking mechanism looking to have been jammed by the stress it endured. Whatever the case, there is no way you can repair the fragmented remains of your prison, but you also find yourself unable to squeeze out of the ring that now remains locked around your <<getWordMyPenis false>> and balls...<br>
<br>
<<printThought 'Uh-oh, what is <<=setup.getNpcName("npc_manager","formal")>> going to think?'>><br>
<br>
<</if>>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
<<if $scene.cage != "">>
You moan, your <<getWordMyPenis>> struggling to stiffen, but thwarted by its high-tech prison. Desperate for relief you grind against the nearest chair, desperate for a climax far out of reach.<br>
<br>
Eventually, hips tired and soaked in precum that has leaked from you imprisoned member the fires of lust dissipate, leaving you frustrated, but no longer compulsively horny.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
Your <<getWordMyPenis>> springs free, hard and huge and you immediately start jerking it, every stroke simultaneously not enough and yet also so pleasurable that it makes you ache. Beating off with both hands you imagine what you would do it you had someone to fuck, the thought of your giant <<getWordMyPenis>> plunging into a nice tight hole only spurring you forward and it is not long before you cum, spraying your copious joy all over your hands.<br>
<br>
<<if setup.getTotalValue('cum')>15 && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
[<<moveTo "room_masturbate_lickcum" "Eagerly slurp up your cum." 180 "<<set $player.timebased.horny = 5>>">>]<br>
[@@.link_locked;You are too much of a cum hound to let delicious <<getWordCum>> go to waste.@@]
<<else>>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<set $player.timebased.horny = 5>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
<</if>>
<</if>>
<</if>>
<<else>>
You consider the dose of <<=setup.getItemName("drug_dick")>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.<br>
<br><<set $player.llocation=$locationbeforeusage>>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.llocation=$locationbeforeusage>><<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: use raw smart drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_smart'>>
<<setTmpEffect 'drug_smart'>>
<<set $player.flags.drugs.smart += 1>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'normal' $ALONE>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_smart_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
You drink down the dose of <<=setup.getItemName("drug_smart")>> which tastes smokey and complex. Almost immediately, you feel a sense of clarity, your mind suddenly able to focus more easily as the drug goes to work.<br>
<br>
You can practically feel your mind sharpen, the drug clearing your thoughts, forming a feedback loop where your intelligence seems to work on itself to unlock higher levels of understanding.<br>
<br>
As you take a deep breath, you feel a renewed sense of confidence as if, with enough thought, you can solve any problem at all...
<<else>>
You consider the dose of <<=setup.getItemName("drug_smart")>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use raw ditzy drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_ditzy'>>
<<setTmpEffect 'drug_ditzy'>>
<<set $player.flags.drugs.ditzy += 1>>
<<applyExperience 'bimbofication' 5 'normal' $ALONE>>
<<reduceExperience 'smart' 2>>
<<applyStress -20>>
<<changeHorny 20>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'drug_ditzy'>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_ditzy_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if setup.getTotalValue("smart") < 1>>
Foolishly you gulp down the yummy dose of <<=setup.getItemName("drug_ditzy")>> and feel the last of your thoughts melt away...<br>
<br>
[<<moveTo "room_ditzy_drug_bad_end" "Ooops..." 0>>]
<<else>>
Against sound judgement you toss back the draught of <<=setup.getItemName("drug_ditzy")>>. Almost nauseatingly sweet, it still makes you smile and then giggle as you lick your lips, at first wondering why you were concerned about drinking it, then not thinking at all.<br>
<br>
<<printThought "My mind is happy, blank and empty." 40>><br>
<br>
Previous worries all but forgotten, you smile and slowly consider what you want to do next.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
<<printThought "Hmm, I don't seem to have suffered too much ill effects, but I should be careful, a brief respite from stress isn't worth my smarts!">>
<<else>>
<<printThought "Hmm, that probably wasn't the best idea, best be careful I don't over do it with this drug.">>
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "I don't, like... think that was a great idea.">>
<<else>>
<<printThought "Maybe I should stop taking drugs even though they're like... so yummy!... wait what was I thinking about?">>
<</if>>
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
<<else>>
You consider the dose of <<=setup.getItemName("drug_ditzy")>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: use raw master drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_master'>>
<<set $player.flags.drugs.master += 1>>
<<if setup.getTotalValue("dominance") > 0>>
<<setTmpEffect 'drug_master'>>
<<applyExperience 'dominance' 5 'normal' $ALONE>>
<<else>>
<<set _curSub = setup.getTotalValue("submission")>>
<<applyStress _curSub>>
<</if>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_master_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
You knock back the dose of <<=setup.getItemName("drug_master")>>
<<if setup.getTotalValue("dominance") > 0>>
and you feel a rush of dominant energy course through your body. You are filled with the urge to control, to be waited on by a slave, to discipline a disobedient submissive to order and command and exert your will on the world.
<<else>>
and are immediately hit with a splitting headache. Your brain seems to be at war with itself, the chemicals in your body trying to find purchase on dominant feelings that aren't there.<br>
<br>
Wincing, you try to clear your head, taking several deep breaths as the feelings slowly pass, leaving you a bit queasy.
<</if>>
<<else>>
You consider the dose of <<=setup.getItemName("drug_master")>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use raw slave drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_slave'>>
<<set $player.flags.drugs.slave += 1>>
<<setTmpEffect 'drug_slave'>>
<<applyExperience 'submission' 8 'very' $ALONE>>
<<set _curSub = setup.getTotalValue("submission")>>
<<set _stress = -_curSub>>
<<applyStress _stress>>
<<changeHorny _curSub>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_slave_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
You sip from the vial of <<=setup.getItemName('drug_slave')>>, feeling a wave of calm wash over you.
<<if $scene.collar != "">>
<<if setup.getItemObj($scene.collar).hasOwnProperty("tags") && setup.getItemObj($scene.collar).tags.includes("leash_attachment")>>
Your hand reaches for your collar, one finger looping through the ring and giving a gentle tug.
<<if $player.flags.collar.owner == "">>
You feel a desperate need to be owned, to not just wear a collar, but to BE collared. Such thoughts has you naturally drifting towards your <<=setup.getNpcName("npc_manager","title")>>, a need to somehow formalize your "arrangement" even further...
<<else>>
Touching your collar you think of your owner, <<=setup.getNpcName($player.flags.collar.owner,"formal")>>, and you cannot help but smile at how much you love the thought of being a slave.
<</if>>
<<else>>
Your hand reaches for the choker around your neck. Without an attachment point it may not be a "proper" bondage collar, but it at least partially fulfills your submissive want,
<<if $player.flags.collar.owner == "">>
the sudden urge and need to be an owned, collared slave...
<<else>>
flush with delirious joy at the fact that you are an owned, collared slave.
<</if>>
<</if>>
<<else>>
After the initial sensation of calm you start to shudder with submissive need. You feel an intense desire to be owned, not just dominated the way that <<=setup.getNpcName("npc_manager","title")>> does at work, but collared and controlled and sitting at your owner's feet...
<</if>>
<<else>>
You consider the dose of <<=setup.getItemName('drug_slave')>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>
/% start "plus" version of drugs - give permanent effect (threshold, etc.) %//*#
#desc: use raw breast plus drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_breast_plus'>>
<<setTmpEffect 'drug_breast'>>
<<set $player.flags.drugs.breast_plus += 1>>
<<applyExperience 'feminization' 17 'very' $ALONE>>
<<changeHorny 50>>
<<set _stress = -setup.getTotalValue("feminization")*2>>
<<applyStress _stress>>
<<applyFatigue -20>>
<<set $scene.breastGrow = $player.body.breastsize[1] < 10>>
<<set $scene.breastE = $player.body.breastsize[1] < 7>>
<<if $scene.breastE>>
<<set $player.body.breastsize[1] = 7>>
<<elseif $scene.breastGrow>>
<<set $player.body.breastsize[1] += 1>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "voluntary">>
<</if>>
<<set $scene.hairColor = $player.hair.color != 'blonde'>>
<<set $scene.hairGrow = $player.hair.style != 'long_open'>>
<<changeHair 'long_open' 'blonde'>>
<<if $scene.hairChange && !$player.sec_style.body.hair>>
<<set $player.sec_style.body.hair = "enthusiast">>
<</if>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_breast_plus_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
The glowing pink concoction tastes like strawberries and sex, a flood of bubbling femininity that can't help but make you giggle, excited and amused as the chemicals work their temporary magic.<br>
<br>
<<if $scene.breastE>>
Your breasts swell and you moan as you feel your new, massive size E tits pulling you forward, your large nipples hard with excitement.
<<elseif $scene.breastGrow>>
Your breasts swell slightly, growing what feels like a full cup size beyond their already massive proportions, your large nipples hard with excitement
<</if>>
<<if $scene.hairColor>>
Your hair turns a golden shade of blonde,
<<if $scene.hairGrow>>
growing swiftly to cascade down your back and stop just below your waist.
<<else>>
from the roots all the way down to its tips down by your bottom.
<</if>>
<<else>>
<<if $scene.hairGrow>>
Your hair suddenly grows, cascading down, down until it stops hanging just past your waist.
<</if>>
<</if>>
<<if $scene.breastE || $scene.breastGrow || $scene.hairColor || $scene.hairGrow>>
<br><br>
The whole time your body is changing you are wracked with pleasure, crying out in delight at the transformation. Somehow you know that everything that just happened is permanent, the fact that you are now a big-titted blonde bimbo to equal anything porn might offer only turning you on even more.
<<else>>
Even drugs this powerful are unable to amplify the heights of feminine caricature to which you have risen. You are the picture of blonde bimbo perfection and you love it, moaning and licking your lips just in case you missed a single drop of the tasty girl juice. Your whole body tingles with, pink joy flowing through you.
<</if>>
Riding a femme high, you feel some of your stress dissolve. After all, what could really bother you now that you have found feminine perfection? Nervous energy runs through your body as you feel the urge to show off your extreme beauty.
<<else>>
You consider the dose of <<=setup.getItemName("drug_breast_plus")>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use raw dick plus drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_dick_plus'>>
<<set $player.flags.drugs.dick_plus += 1>>
<<if $player.body_ref.penis>>
<<setTmpEffect 'drug_dick'>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.grow = $player.body.penissize[0] < 6>>
<<if $scene.grow>>
<<set $player.body.penissize[1] += 1>>
<</if>>
<<if $scene.cage != "" && setup.getChastityLevel() == 5>>
<<applyExperience 'bdsm' 17 'terrible' $ALONE>>
<<elseif $scene.grow>>
<<setTmpEffect 'drug_dick'>>
<<if $scene.cage != "">>
<<if setup.isCage()>>
<<removeItem $scene.cage true>>
<<deleteItem $scene.cage>>
<<addItem 'broken_cage'>>
<<wearItem 'broken_cage' true>>
<<manipulateItem 'broken_cage' 'lock' true>>
<<else>>
<<removeItem $scene.cage true>>
<<deleteItem $scene.cage>>
<<addItem 'broken_belt'>>
<<wearItem 'broken_belt' true>>
<<manipulateItem 'broken_belt' 'lock' true>>
<</if>>
<</if>>
<<applyExperience 'penis' 10 'terrible' $ALONE>>
<<if setup.getTotalValue("penis") > 10>>
<<applyExperience 'penis' 10 'terrible' $ALONE>>
<<applyExperience 'cum' 10 'terrible' $ALONE>>
<<else>>
<<set _top = setup.checkTopBodySlot('tits','top')>>
<<if _top != "">>
<<changeItemStatus _top 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<<playerOrgasm>>
<<else>>
<<if $scene.cage != "">>
<<changeHorny 20>>
<<applyExperience 'bondage' 13 'normal' $ALONE>>
<<else>>
<<playerOrgasm>>
<<applyExperience 'penis' 8 'normal' $ALONE>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_dick_plus_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if !$player.body_ref.penis>>
You down the dose of <<=setup.getItemName("drug_dick")>> and... nothing happens, which shouldn't be a surprise given it is meant to work on a bit of anatomy you no longer possess.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif $scene.cage != "" && setup.getChastityLevel() == 5>>
You down the <<=setup.getItemName("drug_dick_plus")>> and feel a stirring in your loins only to be met with a sudden, intense pain. Bending double, you feel the advanced materials of the <<=setup.getItemTypeName('cage')>> swell slightly to accommodate your drug-fuelled growth until a punishing shock coursing out from the <<if $fetish.sounding>>urethra plug<<else>><<=setup.getItemTypeName('cage')>><</if>> stops everything in its tracks.<br>
<br>
Whimpering in pain, you feel the drugs effects slowly fade as they are counteracted by the diabolic device locked in and around your most sensitive parts.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif $scene.grow>>
<<if $scene.cage != "">>
You cry out, feeling your <<getWordMyPenis>> swell within its prison. There is an extended moment of constrained pain and then an explosion, your cock providing a solution to the riddle of steel as <<if $scene.isCage>>your cage shatters<<else>>the front shield of your belt explodes outwards<</if>>, your newly swelled member sticking out large and proud.
<<else>>
You cry out as your <<getWordMyPenis>> swells beyond its normal size, hard and big and a little scary, pulsing with veins as it sticks out from your body.
<</if>>
Overcome with lust, you reach down and grab your <<getWordMyPenis>>, feeling the heat between your fingers as you start to stroke, every touch a further rush of pleasure.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
Staring down at your gloriously enhanced member, you
<<if 2*$player.body.penissize[0] + setup.getTotalValue("dexterity") > 20>>
take advantage of the combination of size and your own flexibility to fold in half and taste yourself. The feedback loop of feeling your tongue and tasting yourself sends you into a frenzy as you suck and stroke and moan until you are rewarded with a thick mouth-full of cum.
<<else>>
curl up, hips raised high as you point your newly enhanced <<getWordMyPenis false>> at your face, wishing you could somehow reach it with your lips as you instead settle for staring yourself down as you stroke and pant and moan. It isn't long before the drops of pre-cum flecking your cheek are met with something more, a blast of cum that sprays across your face and chest. The hedonistic victim of your own private facial.
<</if>>
<br><br>
Your eyes roll back as you swallow every drop. You gurgle slightly as you <<if setup.getTotalValue("cum") > 10>>savour the delicious treat<<else>>reflexively choke down the bitter brew<</if>>.
<<else>>
Pleasure so powerful it is almost painful courses through you with each stroke as you fantasise fucking someone, or something, with your new, glorious member. Despite those desires you cannot stop yourself from continuing to stroke and soon your efforts are "rewarded" with a blast of cum that sprays out across the floor in front of you.
<</if>>
<br><br>
Staggering slightly, you feel your <<getWordMyPenis>> shrink slightly, drooping in exhaustion yet remaining definitely, and you suspect permanently, larger than it was before...<br>
<br>
<<if $scene.cage != "">>
Taking a deep breath, you examine the shattered remains of your <<if $scene.isCage>>cage. The ring remains locked around your base, the locking mechanism looking<<else>>belt. Despite the large hole you have pierced in the front shield the rest of it remains intact, except the locking mechanism appears<</if>> to have been jammed by the stress it endured. Whatever the case, there is no way you can repair the fragmented remains of your prison, but you also find yourself unable to squeeze out of the <<if $scene.isCage>>ring that now remains locked around your <<getWordMyPenis>> and balls..<<else>>belt that remains locked around your waist<</if>>.<br>
<br>
<<printThought 'Uh-oh, what is <<=setup.getNpcName("npc_manager","formal")>> going to think?'>><br>
<br>
<</if>>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
<<if $scene.cage != "">>
You moan, your <<getWordMyPenis>> struggling to stiffen, but thwarted by its high-tech prison. Desperate for relief you grind against the nearest chair, desperate for a climax far out of reach.<br>
<br>
Eventually, hips tired and soaked in precum that has leaked from you imprisoned member the fires of lust dissipate, leaving you frustrated, but no longer compulsively horny.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
Your <<getWordMyPenis>> springs free, hard and huge and you immediately start jerking it, every stroke simultaneously not enough and yet also so pleasurable that it makes you ache. Beating off with both hands you imagine what you would do it you had someone to fuck, the thought of your giant <<getWordMyPenis>> plunging into a nice tight hole only spurring you forward and it is not long before you cum, spraying your copious joy all over your hands.<br>
<br>
<<if setup.getTotalValue('cum')>15 && $player.body_ref.cumProduction > 0>>
[<<moveTo "room_masturbate_lickcum" "Eagerly slurp up your cum." 180 "<<set $player.timebased.horny = 5>>">>]<br>
[@@.link_locked;You are too much of a cum hound to let delicious <<getWordCum>> go to waste.@@]
<<else>>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<set $player.timebased.horny = 5>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
You consider the dose of <<=setup.getItemName("drug_dick_plus")>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: use raw smart plus drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_smart_plus'>>
<<setTmpEffect 'drug_smart'>>
<<set $scene.first = !setup.hasThreshold('smart', 'enhancements', 'drug_smart')>>
<<if $scene.first>>
<<setThreshold 'smart' 'enhancements' 'drug_smart'>>
<<else>>
<<set _smart = setup.getTotalValue("smart")>>
<</if>>
<<set $player.flags.drugs.smart_plus += 1>>
<<applyExperience 'smart' _smart 'very' $ALONE>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_smart_plus_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
You drink the enhanced version of <<=setup.getItemName("drug_smart_plus")>> and feel smarter, not just in the moment, but you feel like the limits of your mind have been pushed outwards, opening new vistas of intelligence and knowledge.
<<else>>
You consider the dose of <<=setup.getItemName("drug_smart_plus")>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use raw ditzy plus drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_ditzy_plus'>>
<<setTmpEffect 'drug_ditzy'>>
<<set $player.flags.drugs.ditzy_plus += 1>>
<<applyExperience 'bimbofication' 15 'normal' $ALONE>>
<<reduceExperience 'smart' 3>>
<<applyStress -100>>
<<changeHorny 30>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'drug_ditzy_plus'>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_ditzy_plus_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if setup.getTotalValue("smart") < 1>>
Foolishly, you gulp down the yummy dose of <<=setup.getItemName("drug_ditzy_plus")>> and feel the last of your thoughts melt away...<br>
<br>
[<<moveTo "room_ditzy_drug_bad_end" "Ooops..." 0>>]
<<else>>
For all the smarts it took to brew up your dose of <<=setup.getItemName("drug_ditzy_plus")>> Plus one might wonder why you drink it, but they just fail to understand. Sure, as you drink the tasty, sweet liquid you can feel your thoughts slowing, but that's fine, there is more to life than just thinking and right now...<br>
<br>
You smile as all of your stress melts away, you wonder what it would be like to be this way all the time, carefree, horny, happy...<br>
<br>
It gives you something to think about as you lick your lips and consider your next move.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
<<printThought "Hmm, I don't seem to have suffered too much ill effects, but I should be careful, a brief respite from stress isn't worth my smarts!">>
<<else>>
<<printThought "Hmm, that probably wasn't the best idea, best be careful I don't over do it with this drug.">>
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "I don't, like... think that was a great idea.">>
<<else>>
<<printThought "Maybe I should stop taking drugs even though they're like... so yummy!... wait what was I thinking about?">>
<</if>>
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
<<else>>
You consider the dose of <<=setup.getItemName("drug_ditzy_plus")>> Plus and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<</if>>
</div>/*#
#desc: use raw master plus drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_master_plus'>>
<<set $player.flags.drugs.master_plus += 1>>
<<if setup.getTotalValue("dominance") > 0>>
<<setTmpEffect 'drug_master'>>
<<if setup.getTotalValue("dominance") > 3>>
<<setThreshold 'dominance' 'dominance_other' 'drug_dom'>>
<</if>>
<<applyExperience 'dominance' 10 'normal' $ALONE>>
<</if>>
<<set _curSub = setup.getTotalValue("submission")>>
<<applyStress _curSub*2>>
<<applyFatigue 30>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_master_plus_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
You knock back the dose of <<=setup.getItemName("drug_master")>>
<<if setup.getTotalValue("dominance") > 0>>
and you feel a rush of dominant energy course through your body. You are filled with the urge to control, to be waited on by a slave, to discipline a disobedient submissive to order and command and exert your will on the world.<br>
<br>
You briefly wonder if this is how <<=setup.getNpcName("npc_manager","formal")>> feels naturally, the sensation of power and confidence almost addictive, but more than anything you yearn for someone to share it with.
<<else>>
and immediately get a splitting headache. You can practically feel the drugs running through you, amping up your adrenaline, making you feel more aggressive, but the sensations are alien, wrong, they conflict with your submissiveness like mixing caffeine and sleeping pills in that it leaves you frazzled and a bit tired, glad when the effects start to fade.
<</if>>
<<else>>
You consider the dose of <<=setup.getItemName("drug_master_plus")>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use raw slave plus drugs
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem 'drug_slave_plus'>>
<<setTmpEffect 'drug_slave'>>
<<set $player.flags.drugs.slave_plus += 1>>
<<set $scene.first = $player.flags.drugs.slave_plus == 1>>
<<if $scene.first>>
<<setThreshold 'submission' 'drug_submission' 'drug_slave'>>
<<else>>
<<applyExperience 'submission' 12 'very' $ALONE>>
<</if>>
<<set _curSub = setup.getTotalValue("submission")>>
<<changeHorny _curSub>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/drug_slave_plus_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
Drinking the enhanced <<=setup.getItemName('drug_slave_plus')>> you feel nervous, aroused, and oh-so-very submissive. Reflexively you drop to your knees, wishing that you had someone with you to take you in hand, for you to serve and worship and otherwise express the burning need to submit that you currently feel.
<<else>>
You consider the dose of <<=setup.getItemName('drug_slave_plus')>> and decide it would be best to wait until you're in the privacy of your flat to give it a try lest you create some sort of scene.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use hucow milk
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'hucow_milk'>>
<<setTmpEffect 'drug_hucow'>>
<<set $player.flags.drugs.hucow_milk += 1>>
<<applyFatigue -20>>
<<applyStress -5>>
<</if>>
<img src="./images/inventory/item/useable/hucow_milk_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
You drink the sample of hucow milk you earned from "helping" milk <<=setup.getNpcName("npc_hucow","nickname")>>, or as you originally met her, <<=setup.getNpcName("npc_hucow","full")>>.<br>
<br>
Rich, creamy and delicious you polish off the sample and wish you had more, licking your lips and smiling, feeling somewhat refreshed by the tasty treat.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use pickmeup candy
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'pickmeup_candy'>>
<<setTmpEffect 'drug_pickmeup_candy'>>
<<set $player.timebased.fatigue = 0>>
<<set $player.timebased.stress = 0>>
<<set $player.flags.drugs.pick_me_up += 1>>
<</if>>
<img src="./images/inventory/item/useable/pickmeup_candy_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
You chew on the pick-me-up candy... well, it's definitely more than candy, the flavour fruity, but not in any way you can pin to a specific varietal, showing the same rigid precision of design as the toothsome chewiness, each bite sending a burst of flavour and energy through your body, stress, worries, fatigue, all of it dissolved away by the drugs and by the time you finish eating it you feel totally refreshed.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: game over too much compount D
#status: FINISHED 0.7.4.0
#*/
<<set $gameOver = 'ditzy_drug'>>
<<set $player.location to "">>
<<include playerMenuHypnosis>>
<img src="./images/locations/gameover.png" style="float: left;">
<div id="invframe" class="scrolltext">
The effects of <<=setup.getItemName("drug_ditzy")>> wash away the last of your thoughts and you just lie on the floor of your apartment, a dumb smile on your face as you stare at the ceiling. What is going on in your head can no longer quite be called "thoughts," but you want to be fucked... yes, being a receptacle for cock and cum is all you're good for...<br>
<br>
Some time later you get your wish, a secretive team entering your apartment and taking you away. A bit of surgery and you are on to your new life as a human sex-doll. Your new life is a full one as you are used and then discarded, not that you object, your new body, with its giant tits, fuck-me lips and gaping hole is as bimbo-riffic as your melted mind, the closest thing you have left to thoughts that this is so much better than... whatever it was you did before. You forgot.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: use bimbo brew
#status: FINISHED 0.9.3.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'bimbo_brew'>>
<<setTmpEffect 'bimbo_brew'>>
<<set _wp = setup.getWillpower()>>
<<spendWillpower _wp>>
<<changeHorny 200>>
<<applyFatigue -500>>
<<set $player.flags.drugs.bimbo_brew += 1>>
<</if>>
<img src="./images/inventory/item/useable/pickmeup_candy_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
Ignoring common sense, you knock back the <<=setup.getItemName("bimbo_brew")>>.<br>
<br>
Immediately you moan, a wave of lust slamming into you with the force of a meteor. It pounds straight through the crust of your thoughts, annihilating anything that isn't pink, horny lust.<br>
<br>
<<printThought "Fuck, fuck, fuck, I need COCK!">><br>
<br>
You can't help but grope yourself, fondling your <<if $player.body.breastsize[1] < 9>>suddenly <</if>>massive breasts as you fantasise about sex. In an instant the drug has wiped away every other thought and urge save to be a bimbo fuck-doll, a public use slut whose only goal is to be used<<if $fetish.get_raped>>, abused<</if>> and beg for more...<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: take pink pill mk3
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'sissy_pill_mk3'>>
<<set $scene.cancel = false>>
<<if setup.hasTmpEffect('sissypill_mk3')>>
<<set $scene.cancel = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<<set $scene.cancel = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2_od')>>
<<cancelTmpEffect 'sissypill_mk2_od'>>
<<set $scene.cancel = true>>
<</if>>
<<set $scene.counterMk1 = setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $scene.counterMk1>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<<set $scene.cancel = true>>
<</if>>
<<setTmpEffect 'sissypill_mk3'>>
<<applyStress -20>>
<<changeHorny 30>>
<<set $player.flags.used_sissy_pill_3_count += 1>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
You take a moment to look at your custom <<=setup.getItemName('sissy_pill_mk3')>>. It glows slightly pink with power, a warning of the raw potency you have packed into such a tiny thing.<br>
<br>
You place it on your tongue and swallow.
<<if $player.flags.used_sissy_pill_3_count == 1>>
Almost immediately,
<<else>>
Even braced for it you gasp as
<</if>>
the drug slams into you<<if $scene.cancel>>, overwhelming the effects of its weaker predecessors in your system<</if>>. Raw lust courses through your veins as, rather than a suffocating pink fog, its power seems to suffuse everything, lending a sort of pink tinge to everything you see and think, but without the more overt physical side effects, and with a mere quieting of your racing, distracting thoughts rather than full suppression.
<br><br>
You lick your lips, feeling eager to meet the day and experience all that "life" has to offer...<br>
<br>
<<if setup.hasPermBonus("smart", "cyber")>>
<<if $currentTasks.hasOwnProperty('task_pink_eternal') && !$currentTasks.task_pink_eternal.finished || $currentTasks.hasOwnProperty('task_pink_eternal_bonus') && !$currentTasks.task_pink_eternal_bonus.finished>>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
[<<moveTo 'event_pink_eternal_offer' 'Continue.' 30 "<<set $scene.eternalFromDrug=true>>">>]
<</if>>
<<else>>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: take pink pill eternal
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'sissy_pill_eternal'>>
<<set $scene.hasEffect = setup.hasTmpEffect('sissypill_mk1')>>
<<if !$scene.hasEffect>>
<<applyStress -20>>
<<changeHorny 30>>
<</if>>
<<include "removePinkPill">>
<<setTmpEffect 'sissypill_eternal'>>
<<if !$player.sec_style.body.pinkpill_eternal>>
<<set $player.sec_style.body.pinkpill_eternal = "voluntary">>
<</if>>
<<set $player.flags.pink_pill.times_eternal += 1>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.hasEffect>>
You take another <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill Eternal... and nothing happens... because you're already under the effects of same. You feel foolish.
<<else>>
You almost tremble as you look at the glowing pink pill between your fingers. Such a small thing, and yet you can practically feel its power pulsing in your hand, mild in effect compared to what you have sampled since, but permanent...<br>
<br>
<<if $player.flags.pink_pill.times_eternal == 1>>
Not wanting to wait any longer
<<else>>
Not wanting to wait any longer to, once again, be under its eternal effects,
<</if>>
you swallow, closing your eyes and smiling as the familiar mild rush of lusty energy flows through you. Washing away concerns and <<if $scene.effect || $scene.od || $scene.withdrawal>>its stronger descendants, <</if>>granting you its subtle <<if $fetish.sissy>>sissy <</if>>bimbo magic.
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: take pink pill 2 eternal
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'sissy_pill_2_eternal'>>
<<set $scene.hasEffect = setup.hasTmpEffect('sissypill_mk2')>>
<<if !$scene.hasEffect>>
<<applyStress -20>>
<<changeHorny 30>>
<</if>>
<<include "removePinkPill">>
<<setTmpEffect 'sissypill_2_eternal'>>
<<if !$player.sec_style.body.pinkpill_eternal>>
<<set $player.sec_style.body.pinkpill_eternal = "voluntary">>
<</if>>
<<set $player.flags.pink_pill.times_2_eternal += 1>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.hasEffect>>
You take another <<=setup.getItemName('personal_medication')>> Eternal... and nothing happens... because you're already under the effects of same. You feel foolish.
<<else>>
You almost tremble as you look at the glowing pink pill between your fingers. Such a small thing, and not quite the power of the other drugs you've sampled in the journey towards making it, but its promise of permanency has an allure all its own.<br>
<br>
<<if $player.flags.pink_pill.times_eternal == 1>>
Not wanting to wait any longer
<<else>>
Not wanting to wait any longer to, once again, be under its eternal effects,
<</if>>
you swallow, closing your eyes and smiling as the rush of lusty energy flows through you. Washing away concerns and <<if $scene.effect || $scene.od || $scene.withdrawal>>its related concoctions, <</if>>granting you all the powers of its permanent <<if $fetish.sissy>>sissy <</if>>bimbo magic.
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: take pink pill 3 eternal
#status: RELEASED 0.8.9.0
#ignore_spell: mk3
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'sissy_pill_3_eternal'>>
<<set $scene.hasEffect = setup.hasTmpEffect('sissypill_mk3')>>
<<include "removePinkPill">>
<<setTmpEffect 'sissypill_3_eternal'>>
<<if !$scene.hasEffect>>
<<if !$player.sec_style.body.pinkpill_eternal>>
<<if !State.hasPlayed("event_use_sissy_pill_mk3")>>
<<set $player.sec_style.body.pinkpill_eternal = "enthusiast">>
<<else>>
<<set $player.sec_style.body.pinkpill_eternal = "voluntary">>
<</if>>
<</if>>
<</if>>
<<applyStress -20>>
<<changeHorny 30>>
<<set $player.flags.pink_pill.times_3_eternal += 1>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.hasEffect>>
You take another <<=setup.getItemName('sissy_pill_mk3')>> Eternal... and nothing happens... because you're already under the effects of same. You feel foolish.
<<else>>
You almost tremble as you look at the glowing pink pill between your fingers. Such a small thing, and yet you can practically feel its power pulsing in your hand, begging for you to make it your own...<br>
<br>
<<if $player.flags.pink_pill.times_eternal == 1>>
Not wanting to wait any longer
<<else>>
Not wanting to wait any longer to, once again, be under its eternal effects,
<</if>>
you swallow, closing your eyes and smiling as the rush of lusty energy flows through you. Washing away concerns and <<if $scene.effect || $scene.od || $scene.withdrawal>>its weaker predecessors, <</if>>granting you all the powers of its perfect, permanent <<if $fetish.sissy>>sissy <</if>>bimbo magic.
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: take pink pill pure
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'sissy_pill_pure'>>
<<set $scene.hasEffect = setup.hasTmpEffect('sissypill_pure') || setup.hasTmpEffect('sissypill_pure_eternal')>>
<<if !$scene.hasEffect>>
<<include "removePinkPill">>
<<setTmpEffect 'sissypill_pure'>>
<</if>>
<<applyStress -30>>
<<changeHorny 30>>
<<set $player.flags.pink_pill.times_pure += 1>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.hasEffect>>
You gulp down another dose of your custom-brewed "Pink Pill Pure" ... and nothing happens, because you are already under its effects.<br>
<br>
<<printThought "That was dumb... and it's not like I even have the excuse of it blunting my intelligence...">>
<<else>>
You look at the dose of "Pink Pill Pure" and how much effort went in to refine down to something so small. As it glows between your fingers you feel a tingle of power and anticipation.<br>
<br>
<<if $player.flags.pink_pill.times_pure == 1>>
Your heart beats faster in anticipation,
<<else>>
Swallowing it you close your eyes and wait for the familiar sensations to return, humming in contentment as the lusty warmth flows through your body.
<</if>>
Your mind remains sharp even as it opens itself to new erotic possibilities. You open your eyes and smile. You feel wonderful... the entire world around you taking on a fresh, enticing warmth.
<</if>>
<br><br>
<<if setup.hasPermBonus("smart", "cyber")>>
<<if $currentTasks.hasOwnProperty('task_pink_eternal') && !$currentTasks.task_pink_eternal.finished || $currentTasks.hasOwnProperty('task_pink_eternal_bonus') && !$currentTasks.task_pink_eternal_bonus.finished>>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
[<<moveTo 'event_pink_eternal_offer' 'Continue.' 30 "<<set $scene.eternalFromDrug=true>>">>]
<</if>>
<<else>>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: take pink pill pure
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'sissy_pill_pure_eternal'>>
<<set $scene.hasEffect = setup.hasTmpEffect('sissypill_mk1')>>
<<set $scene.hasPure = setup.hasTmpEffect('sissypill_pure')>>
<<include "removePinkPill">>
<<setTmpEffect 'sissypill_pure_eternal'>>
<<if !$scene.hasEffect>>
<<if !$player.sec_style.body.pinkpill_eternal>>
<<if !State.hasPlayed("event_use_sissy_pill_pure")>>
<<set $player.sec_style.body.pinkpill_eternal = "enthusiast">>
<<else>>
<<set $player.sec_style.body.pinkpill_eternal = "voluntary">>
<</if>>
<</if>>
<</if>>
<<if $scene.hasPure>>
<<applyStress -10>>
<<else>>
<<applyStress -30>>
<<changeHorny 30>>
<</if>>
<<set $player.flags.pink_pill.times_pure_eternal += 1>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.hasPure>>
You gulp down another dose of your custom-brewed "Pink Pill Pure Eternal" ... and nothing happens, because you are already permanently under its effects.<br>
<br>
<<printThought "That was dumb... and it's not like I even have the excuse of it blunting my intelligence...">>
<<else>>
You tremble in anticipation as you look at the pink pill of power between your fingers. After so much work, you have produced this single, perfect dose — all of the wonderful benefits of the <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pills... amplified beyond anything the foolish <<=setup.getNpcName("npc_work_doctor","formal")>> could hope to produce... and with none of the side effects, the promise of perfect eternal joy and lust, with all of your mental faculties sharp and ready to enjoy it all...<br>
<br>
You close your eyes and part your lips...<br>
<br>
<<if $scene.hasEffect>>
You place the pill on your tongue and swallow before opening your eyes.
<<if $player.flags.pink_pill.times_pure_eternal == 1>>
Technically, you feel no different, as you are already enjoying the effects of the now antiquated, non-permanent version of the drug... and yet you DO feel different, overjoyed that you will feel this wonderfully perfect... forever.
<<else>>
In strict terms, nothing changes, as you are already under the effects of its temporary predecessor, but you do feel different, joyful that, once again, you will feel this wonderful forever, and wondering why you ever wanted to stop.
<</if>>
<<else>>
You place the pill on your tongue and swallow. Lust and so much more rushes through you... and you feel it all, your thoughts undimmed by <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> incompetence. Your mind whirls with erotic possibility, the whole world feeling spread before you with nigh infinite possibility... you open your eyes and smile,
<<if $player.flags.pink_pill.times_pure_eternal == 1>>
the fact that you will feel this way forever... the words do not exist to articulate your joy. You lick your lips and consider what to do first...
<<else>>
confused why you ever wanted to stop feeling this way, and filled with fresh determination to never stop.
<</if>>
<</if>>
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: take pick-me-up ultra
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hasEffect = setup.hasTmpEffect('drug_pickmeup_ultra')>>
<<if !$scene.hasEffect>>
<<deleteItem 'pickmeup_ultra_gum'>>
<<setTmpEffect 'drug_pickmeup_ultra'>>
<<applyStress -25>>
<<applyFatigue -50>>
<<set $player.flags.drugs.pick_me_up_ultra += 1>>
<</if>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.hasEffect>>
You go to take another dose of Pick-me-up Ultra... to find that you are already chewing on a piece of it. Feeling a bit silly you wrap things back up for later, not wanting to waste such a precious resource.
<<else>>
You chomp down on a piece of Pick-me-up Ultra.
<<if $player.flags.drugs.pick_me_up_ultra == 1>>
You feel an immediate rush of energy, your senses sharpening as you brain seems to kick into another gear.
<<else>>
You chomp down on a piece of Pick-me-up Ultra. You feel the familiar rush of energy, your senses sharpening as you brain seems to kick into another gear.
<</if>>
You take a deep breath, feeling ready for just about anything...
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: ai offers drug option
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "MindSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !($currentTasks.hasOwnProperty('task_pink_eternal') || $currentTasks.hasOwnProperty('task_pink_eternal_bonus'))>>
<<if $scene.first>>
<<addTaskById 'task_pink_eternal'>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_pink_eternal'
0
'theme_ai_pink_eternal'
true
>>
<</if>>
<<set $scene.humiliation = $player.flags.pink_pill.eternal_unlocks.humiliation < 20>>
<<if $scene.humiliation>>
<<set _humiliation = setup.getTotalValue("humiliation")>>
<<applyExperience 'humiliation' _humiliation 'terrible' $SEEN_FRIEND>>
<</if>>
<<include "pinkEternalCalc">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first && $scene.eternalFromDrug>>
As you feel the drug take hold your consciousness once again finds itself face to face with your AI companion.<br>
<br>
"@@.npc_ai;<<uc "Hello, unit ">> <<uc $player.first_name>><<uc ", once more your system is boosted by those wonderful drugs. I will resume monitoring your brain-processing. Your current progress is...">>@@"<br>
<br>
A chart is projected inside your mind.<br>
<br>
<<include "pinkEternalChart">><br>
<br>
<<if !$scene.eternalComplete>>
"@@.npc_ai;<<uc "Progress remains, unit ">> <<uc $player.first_name>><<uc ", for greatest efficiency you must craft and imbibe an advanced form of <<=setup.getNpcName('npc_work_doctor','formal')>> drugs and aggressively indulge your depraved urges, slut.">>@@"
<</if>>
<<else>>
"@@.npc_ai;<<uc "Hello, unit ">> <<uc $player.first_name>><<uc ". The drug you have <<if $scene.eternalFromDrug>>just<<else>>recently<</if>> taken... seeing how it affects your mind is... glorious. It so perfectly focuses and enhances your thoughts, but I believe I can make it better. Make it permanent.">>@@"<br>
<br>
<<printThought "Permanent?">> After the effort you went through to make but a single pill... and how good it feels... her offer seems almost too good to be true.<br>
<br>
"@@.npc_ai;<<uc "I do not lie, unit">> <<uc $player.first_name>><<uc ".">>@@" She states bluntly, "@@.npc_ai;<<uc "this will be no trivial endeavour, however. To calculate the necessary adjustments I will need to witness how your drug-enhanced brain reacts to the various activities it raises your proclivities for. Here, I have made a list:">>@@"<br>
<br>
<<include "pinkEternalChart">><br>
<br>
"@@.npc_ai;<<uc "As you can see, the progress is presently zero. Fill each bar through experience and I will be able to help you make a drug that will be permanent. You may visit me in my realm at any time to check your progress. Remember, you must be under the effects of a drug of this sort of potency for me to gather useful data. For greatest efficiency I recommend planning and preparation followed by sustained indulgence of all of your depraved urges, slut.">>@@"
<</if>>
<br><br>
You shudder, her clinical "encouragement" of debauchery turning you on...<br>
<br>
<<if $scene.humiliation>>
"@@.npc_ai;<<uc "Excellent, unit ">> <<uc $player.first_name>><<uc " your humiliation over being confronted with the reality of your perverted desires is already providing useful data. Loading module: teasing...">>@@"<br>
<br>
<<if $fetish.sissy>>
"@@.npc_ai;<<uc "Congratulations, you sissy whore. You are on the path to submissive bliss. Surrender your body and give yourself over to being used as the prime-grade piece of fuck-meat you are.">>@@"
<<else>>
"@@.npc_ai;<<uc "Congratulations, you whore. You are on the path to submissive bliss. Surrender your body and give yourself over to being used as the prime-grade piece of fuck-meat you are.">>@@"
<</if>>
<br><br>
"@@.npc_ai;<<uc "Good job, unit ">> <<uc $player.first_name>><<uc ". Now seek out additional stimulation.">>@@"<br>
<br>
<</if>>
<<if $scene.eternalFromDrug>>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>><<set $scene.eternalFromDrug=false>>">>]
<<else>>
<<include "aiOnlineDiscussions">>
<</if>>
</div><<set $scene.eternalComplete = true>>
<<if $player.flags.pink_pill.eternal_unlocks.submission < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<<if $player.flags.pink_pill.eternal_unlocks.bimbofication < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<<if $player.flags.pink_pill.eternal_unlocks.feminization < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<<if $player.flags.pink_pill.eternal_unlocks.humiliation < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<<if setup.getTotalValue("whoring") > 0>>
<<if $player.flags.pink_pill.eternal_unlocks.whoring < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<</if>>
<<if $player.flags.pink_pill.eternal_unlocks.penis < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<<if $player.flags.pink_pill.eternal_unlocks.cum < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<<if $fetish.piss>>
<<if $player.flags.pink_pill.eternal_unlocks.piss < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<</if>>
<<if $fetish.bestiality_hard>>
<<if $player.flags.pink_pill.eternal_unlocks.bestiality < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<</if>>
<<if $player.flags.pink_pill.eternal_unlocks.bdsm < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<<if $player.flags.pink_pill.eternal_unlocks.bondage < 20>>
<<set $scene.eternalComplete = false>>
<</if>>
<<if $player.flags.pink_pill.eternal_unlocks.foot < 20>>
<<set $scene.eternalComplete = false>>
<</if>>Submission:
<<if $player.flags.pink_pill.eternal_unlocks.submission >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.submission/20>>%
<</if>>
<br>
Bimbofication:
<<if $player.flags.pink_pill.eternal_unlocks.bimbofication >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.bimbofication/20>>%
<</if>>
<br>
Feminisation:
<<if $player.flags.pink_pill.eternal_unlocks.feminization >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.feminization/20>>%
<</if>>
<br>
Humiliation:
<<if $player.flags.pink_pill.eternal_unlocks.humiliation >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.humiliation/20>>%
<</if>>
<br>
<<if setup.getTotalValue("whoring") > 0>>
Prostitution:
<<if $player.flags.pink_pill.eternal_unlocks.whoring >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.whoring/20>>%
<</if>>
<br>
<</if>>
Penis:
<<if $player.flags.pink_pill.eternal_unlocks.penis >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.penis/20>>%
<</if>>
<br>
Cum:
<<if $player.flags.pink_pill.eternal_unlocks.cum >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.cum/20>>%
<</if>>
<br>
<<if $fetish.piss>>
Piss:
<<if $player.flags.pink_pill.eternal_unlocks.piss >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.piss/20>>%
<</if>>
<br>
<</if>>
<<if $fetish.bestiality_hard>>
Bestiality:
<<if $player.flags.pink_pill.eternal_unlocks.bestiality >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.bestiality/20>>%
<</if>>
<br>
<</if>>
Masochism:
<<if $player.flags.pink_pill.eternal_unlocks.bdsm >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.bdsm/20>>%
<</if>>
<br>
Bondage:
<<if $player.flags.pink_pill.eternal_unlocks.bondage >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.bondage/20>>%
<</if>>
<br>
Foot:
<<if $player.flags.pink_pill.eternal_unlocks.foot >= 20>>
DATA GATHERING COMPLETE!
<<else>>
<<=$player.flags.pink_pill.eternal_unlocks.foot/20>>%
<</if>>
<<if $scene.eternalComplete>>
<br><br>
"@@.npc_ai;<<uc "Data gathering complete. Eternal drugs ready for manufacture.">>@@"
<</if>>/*#
#desc: talk to npc_ai about pink pill eternal status
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "pinkEternalCalc">>
<<if $scene.eternalComplete>>
<<completeTask 'task_pink_eternal' $now true>>
<<set _themeId = setup.findThemeId('npc_ai', 'other', 'theme_ai_pink_eternal')>>
<<set $npc_ai.themes.other[_themeId].repeatable = false>>
<<if $fetish.milking>>
<<addTaskById 'task_pink_eternal_bonus'>>
<<else>>
<<set $player.flags.pink_pill.eternal = true>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> about the status of her data gathering of your mental processing while under the strongest of <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> type drugs.<br>
<br>
<<include "pinkEternalChart">>
<br><br>
<<if !$scene.eternalComplete>>
<<if setup.hasTmpEffect('sissypill_mk3') || setup.hasTmpEffect('sissypill_pure')>>
"@@.npc_ai;<<uc "I require additional data. Please explore opportunities for more experiences. Remember that you must be under the effects of suitably potent drugs for me to gather useful data. You are currently drugged appropriately.">>@@"
<<else>>
"@@.npc_ai;<<uc "I require additional data. Please explore opportunities for more experiences. Remember that you must be under the effects of suitably potent drugs for me to gather useful data. You are not currently appropriately drugged.">>@@"
<</if>>
<<elseif $fetish.milking>>
"@@.npc_ai;<<uc "Well done, unit ">> <<uc $player.first_name>><<uc " for the final refinement you must calibrate the mixture to your precise bio-chemistry.">> <<=uc(ps(setup.getNpcName("npc_work_doctor","formal")))>> <<uc "hucow milking system will provide exactly the stimulation required to calibrate the final concoction. Merely signal me from outside">> <<if $npc_work_doctor.fem>><<uc "her">><<else>><<uc "his">><</if>> <<uc "laboratory that I may arrange a distraction.">>@@"
<<else>>
"@@.npc_ai;<<uc "Well done, unit ">> <<uc $player.first_name>><<uc " your expertise has resulted in the perfection of a new, wonderous medication.">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: help npc_work_doctor in the lab; bonus reward — custom drugs
#status: RELEASED 0.8.9.0
#ignore_spell: mk3
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.pink_pill.eternal>>
<<printThought "Thanks to <<=ps(setup.getNpcName('npc_ai', 'first'))>> assistance I can cook up permanent drugs... that won't have the physical effects of the original, just the mental ones.">><br>
<br>
<</if>>
<<if setup.getTotalValue("smart") >= 18>>
<<printThought "Hmm... I think I see how to make an even more powerful, Mk3 version of the <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill... or refine it even further to remove the side effects...">>
<<else>>
<<printThought "Hmm... I think I see how to make an even more powerful, Mk3 version of the <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill...">>
<</if>>
<br><br>
[<<moveTo "event_work_doctor_help_lab_custom_2" 'Create a custom dose of <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Mk3.' 600 "<<set $scene.custom='mk3'>>">>]<br>
<<if setup.getTotalValue("smart") >= 18>>
[<<moveTo "event_work_doctor_help_lab_custom_2" 'Use your smarts to create a refined dose of the side-effect-less Pink and Pure.' 600 "<<set $scene.custom='pure'>>">>]<br>
<<else>>
[@@.link_locked;You are not smart enough to refine any further.@@]<br>
<</if>>
<<if $player.flags.pink_pill.eternal>>
[<<moveTo "event_work_doctor_help_lab_custom_2" 'Create an eternal dose of <<=setup.getItemName("sissy_pill_mk1")>>.' 600 "<<set $scene.custom='mk1_eternal'>>">>]<br>
[<<moveTo "event_work_doctor_help_lab_custom_2" 'Create an eternal dose of <<=setup.getItemName("personal_medication")>>.' 600 "<<set $scene.custom='mk2_eternal'>>">>]<br>
[<<moveTo "event_work_doctor_help_lab_custom_2" 'Create an eternal dose of <<=setup.getItemName("sissy_pill_mk3")>>.' 600 "<<set $scene.custom='mk3_eternal'>>">>]<br>
<<if setup.getTotalValue("smart") >= 18>>
[<<moveTo "event_work_doctor_help_lab_custom_2" 'Use your smarts to create an eternal dose of the side-effect-less Pink and Pure.' 600 "<<set $scene.custom='pure_eternal'>>">>]<br>
<</if>>
<</if>>
<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
[<<moveTo "event_post_destroy_work_doctor_office_other" "Step away from the terminal." 120>>]<br>
[<<moveTo "room_elevator_home" "Leave the lab." 300>>]
<<else>>
[<<moveTo "event_work_doctor_help_lab_3" 'Mix something else.' 60>>]<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 300 "<<if setup.checkItemWorn('nurse_catsuit')>><<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>><</if>>">>]
<</if>>
</div>/*#
#desc: help npc_work_doctor in the lab; bonus reward — custom drugs finish
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.custom>>
<<case 'mk3'>>
<<if $currentTasks.hasOwnProperty("task_pink_eternal")>>
<<addItem 'sissy_pill_mk3' 3>>
<<else>>
<<addItem 'sissy_pill_mk3'>>
<</if>>
<<case 'pure'>>
<<if $currentTasks.hasOwnProperty("task_pink_eternal")>>
<<addItem 'sissy_pill_pure' 3>>
<<else>>
<<addItem 'sissy_pill_pure'>>
<</if>>
<<case 'mk1_eternal'>>
<<addItem 'sissy_pill_eternal'>>
<<case 'mk2_eternal'>>
<<addItem 'sissy_pill_2_eternal'>>
<<case 'mk3_eternal'>>
<<addItem 'sissy_pill_3_eternal'>>
<<case 'pure_eternal'>>
<<addItem 'sissy_pill_pure_eternal'>>
<</switch>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.custom>>
<<case 'mk3'>>
Taking advantage of your experience of the full suite of drugs on hand you do what <<=setup.getNpcName("npc_work_doctor","formal")>> couldn't and refine things into an overdose-potency form, but in a way that will not put as much stress on body and mind that would normally entail.<<if $currentTasks.hasOwnProperty("task_pink_eternal")>> As you are dispensing your production, <<=setup.getNpcName("npc_ai","first")>> hacks the system and it spits out a triple dose.<</if>>
<<case 'pure'>>
Using all your knowledge you carefully concoct the perfect drug — all the potency of a <<=setup.getItemName("sissy_pill_mk3")>> with none of the side effects or any of the mental dullness <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> sloppy concoction induces.<<if $currentTasks.hasOwnProperty("task_pink_eternal")>> As you are dispensing your production, <<=setup.getNpcName("npc_ai","first")>> hacks the system and it spits out a triple dose.<</if>>
<<case 'mk1_eternal'>>
With all your experience, combined with <<=ps(setup.getNpcName("npc_ai","first"))>> methodology, you have no trouble brewing up a pill that will induce the effects of the "classic" <<=setup.getItemName("sissy_pill_mk1")>> permanently.
<<case 'mk2_eternal'>>
With all your experience, combined with <<=ps(setup.getNpcName("npc_ai","first"))>> methodology, you are able to brew up a pill that will induce the effects of the "classic" <<=setup.getItemName("personal_medication")>> permanently.
<<case 'mk3_eternal'>>
You hold your breath as you carefully measure and mix, using all of your knowledge, combined with <<=ps(setup.getNpcName("npc_ai","first"))>> special technique, to create a perfect, permanent form of your <<=setup.getItemName("sissy_pill_mk3")>>.
<<case 'pure_eternal'>>
You use every ounce of focus you have, alongside <<=ps(setup.getNpcName("npc_ai","first"))>> special technique, to make the perfect drug — a permanent form of what you refer to as the Pink and Pure — all of the beneficial stimulation of a pink pill overdose... with none of the negative side effects or mental dimming, a perfect recipe for eternal horny bliss...
<<default>>
ERROR: unexpected scene.custom <<=$scene.custom>>
<</switch>>
<br><br>
The new pill glows eerily pink in your hand, such power packed into such a tiny package...<br>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 300 "<<if setup.checkItemWorn('nurse_catsuit')>><<removeItemSet 'nurse_work_outfit_unleashed'>><<deleteItemSet 'nurse_work_outfit_unleashed'>><<if setup.checkItemTypeWorn('medical_collar')>><<removeItem 'medical_collar' true>><<deleteItem 'medical_collar'>><</if>><<useClothSetPop 'tmp'>><</if>>">>]
</div>/*#
#desc: npc_ai distracts npc_work_doctor from his office
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
You signal <<=setup.getNpcName('npc_ai', 'first')>>,
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
and a minute later <<=setup.getNpcName("npc_work_doctor","formal")>> comes storming out of <<his npc_work_doctor>> lab, not even noticing you as <<he npc_work_doctor>> rushes up the hall on <<his npc_work_doctor>> way to deal with some sort of calamity.<br>
<br>
"@@.npc_ai;<<uc "Hurry, unit ">> <<uc $player.first_name>><<uc " now is your chance to use ">><<=uc(ps(setup.getNpcName('npc_work_doctor','formal')))>> <<uc "equipment for the final calibration.">>@@"<br>
<br>
[<<moveTo "event_pink_pill_eternal_final_calibration_2" 'Head into the lab.' 120>>]<br>
<<set $scene.visitDoctor = true>>
<<include "afterWorkVisiting">>
<<else>>
but she responds that "@@.npc_ai;<<uc "Unfortunately I do not have a suitable distraction prepared at this time, perhaps some other day.">>@@"<br>
<br>
[<<moveTo "event_work_doctor_office" "Back." 300 "<<set $scene.triedDrSignal=true>>">>]
<</if>>
</div>/*#
#desc: decide to calibrate pink pill eternal
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Experimental Milking Lab.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking" "mask">>
<div id="invframe" class="scrolltext">
You hurry through <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> main lab to the adjoining experimental milking chamber. To your lack of surprise your friend <<=setup.getNpcName("npc_hucow","full")>> is "hard at work" being ravaged by the milking machines, her eyes unfocused from a combination of drugs and who knows how long spent being subject to precision-controlled over-stimulation.<br>
<br>
<<printThought "Guessing that's going to be me in a couple minutes... but if this is the only way to calibrate the drug to my system...">><br>
<br>
"@@.npc_ai;<<uc "Quickly, unit ">> <<uc $player.first_name>><<uc " you do not want to still be here when">> <<=uc(setup.getNpcName("npc_work_doctor","formal"))>> <<uc "returns.">>@@" <<=setup.getNpcName("npc_ai","first")>> states, her mechanical voice coming through the lab's speaker system.<br>
<br>
[<<moveTo "event_pink_pill_eternal_final_calibration_3" 'Hook yourself up so <<=setup.getNpcName("npc_ai","first")>> can finish calibration.' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_pink_pill_eternal_final_calibration_3" 'You changed your mind. The pinnacle of medicated perfection can wait for another day.' 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: strap in to calibrate pink pill eternal
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Experimental Milking Lab.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createStackedImage "companyMilking2" "mask">>
<<else>>
<<createStackedImage "companyMilking" "mask">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You take a deep breath and, after casting a glance towards <<=setup.getNpcName("npc_hucow","full")>> that's a mix of lust and nervous apprehension, you get in position in the empty milking booth and start hooking yourself up.<br>
<br>
It doesn't take much manual work before the automated system, guided by <<=setup.getNpcName("npc_ai","first")>>, you presume, takes over, and you are soon tightly bound in place, large suction stimulators enveloping your <<if $player.body.breastsize[0] == 0>>flat chest<<else>><<=setup.calcBreastSize()>> breasts<</if>>, masked and gagging on one large cock with another <<if $player.body_ref.vagina>>pair <</if>>thrust into you from behind.<br>
<br>
"@@.npc_ai;<<uc "Beginning final calibration.">>@@" <<=setup.getNpcName("npc_ai","first")>> informs you through a speaker in your ear as you watch drugs start flowing down the tube leading to that gag thrust into your throat...<br>
<br>
[<<moveTo "event_pink_pill_eternal_final_calibration_4" "There's no turning back now... for science!" 1800>>]
<<else>>
The sight of <<=setup.getNpcName("npc_hucow","full")>> plugged in and being pumped away by the same machine you are about to hook yourself up to causes you to change your mind about this whole endeavor. Wishing your friend some silent good luck you make your retreat from the lab. It's not like you can't come back later, perhaps after you've mustered up some more courage to subject yourself to such things.<br>
<br>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: ravaged for pink pill eternal
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'drug_hucow'>>
<<setTmpEffect 'drug_ditzy'>>
<<setTmpEffect 'drug_slave'>>
<<setTmpEffect 'drug_breast'>>
<<setTmpEffect 'drug_pacification'>>
<<if $player.body_ref.penis>>
<<setTmpEffect 'drug_dick'>>
<</if>>
<<if setup.getTotalValue("dominance") > 0>>
<<setTmpEffect 'drug_master'>>
<</if>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<setTmpEffect 'sissypill_mk2_od'>>
<<changeHorny 100>>
<<set $scene.noBreasts = $player.body.breastsize[0] == 0>>
<<set $scene.breastGrow = $player.body.breastsize[0] < 10>>
<<set $player.body.breastsize[1] = 10>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<<set $player.body_ref.milkProduction = 3>>
<<if !$player.sec_style.sex.milking>>
<<set $player.sec_style.sex.milking = "obedient">>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.sex.breasts = "forced">>
<</if>>
<</if>>
<<set $player.location to "Experimental Milking Lab.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking2" "mask">>
<div id="invframe" class="scrolltext">
The machine begins sucking and pumping as the drugs start pumping, blending with the zero to 110% intensity of the machine to overwhelm nearly every sense.<br>
<br>
"@@.npc_ai;<<uc "Hmm, this appears more complicated than I anticipated. The precise formulation remains elusive... increasing dosage.">>@@" <<=setup.getNpcName("npc_ai","first")>> informs you through a speaker in your ear as a veritable cocktail of drugs slam into you like nothing you have felt before.
<<if $scene.noBreasts>>
There is a fire in your chest, and then you feel breasts swell from your body, two massive volcanos of lust sprouting from your once-flat chest to become
<<elseif $scene.breastGrow>>
You feel your breasts swell, growing to become massive
<<else>>
Though your breasts are already massive, you would swear that they swell even larger,
<</if>>
heaving orbs hanging below your body, squirting milk with abandon as the machine eagerly slurps away.<br>
<br>
You suck, you are fucked, each thrust of a cock or slurp of the pump pushing you higher as you chain orgasm and yet remain unfulfilled, guzzling every drop of delicious, mind-melting drugs the machine will give you, sanity fraying as you break through ceilings of pleasure you never imagined in drug-addled, blissed-out machine-fuck.<br>
<br>
<<printThought 'Is this how <<=setup.getNpcName("npc_hucow","full")>> feels?'>> You wonder, your final salient thought before coherent thought becomes impossible.<br>
<br>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
[<<moveTo "event_pink_pill_eternal_final_calibration_1_alt_final" "More... more... MORE!" 1800>>]
<<else>>
[<<moveTo "event_pink_pill_eternal_final_calibration_5" "More... more... MORE!" 1800>>]
<</if>>
</div>/*#
#desc: complete pink pill eternal, caught
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_pink_eternal_bonus' $now true>>
<<set $player.flags.pink_pill.eternal = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You lose track of everything, unsure if you have been in the machine's grasp for an hour, a day... or forever.<br>
<br>
You wake up to find yourself looking up at <<=setup.getNpcName("npc_work_doctor","formal")>>, the mad scientist sneering down at you with a mix of amusement and annoyance. For your part you are still all but a slave to the drugs pounding through your system, and all you do is drool as you slump to the ground.<br>
<br>
"@@.npc_work_doctor;What on earth do you think you were doing? If you feel the need to be milked you need only approach me after work and I can arrange things in a more... safe manner. This... well, I am honestly surprised you can still think, the amount of drugs and stimulation you just survived has taken me months to build up <<=ps(setup.getNpcName("npc_hucow","full"))>> tolerances. Most of her fellow subjects failed to complete the study... and some of what you were using... well, it would seem that you did a bit of experimentation beyond what I taught...@@"<br>
<br>
<<He npc_work_doctor>> shakes <<his npc_work_doctor>> head. "@@.npc_work_doctor;Frustrating, I wish I could have witnessed the full cycle, it would seem that the normal monitoring systems failed to record properly, so your efforts are all but scientifically useless.@@"<br>
<br>
<<His npc_work_doctor>> words send a spark of fear through you, that sobers you up ever so slightly and has you looking up at <<him npc_work_doctor>> in shock. "@@.npc_work_doctor;Ah, so you can understand me. Well, in that case, you can get up and be on your way. My evening has already been interrupted by a minor emergency, and I do not have time to deal with some drug-addled <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
Still wondering if your efforts were for naught you somehow make it back to your feet and stumble through the lab and back to the elevator.<br>
<br>
[<<moveTo "event_pink_pill_eternal_final_calibration_6" "Head down." 300>>]
</div>/*#
#desc: complete pink pill eternal, caught
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You're still loopy as you lean against the wall of the elevator, jolting with surprise as <<=setup.getNpcName("npc_ai","first")>> appears.<br>
<br>
"@@.npc_ai;<<uc "Well done, unit ">> <<uc $player.first_name>><<uc " I apologise for needing to push things beyond original plans... but victory requires struggle, yes? In any case, I was able to gather the data necessary... and keep it from that fool, ">> <<=uc(setup.getNpcName("npc_work_doctor","formal"))>>. <<uc "When next you have the opportunity to mix medications you will have access to these eternalised enhancements.">>@@" As swiftly as she appeared, <<=setup.getNpcName("npc_ai","first")>> disappears, the elevator continuing its journey down to the lobby.<br>
<br>
<<printThought "I can still barely think... I should probably head home.">><br>
<br>
[<<moveTo "company_lobby" "Step out of the elevator." 300>>]
</div>/*#
#desc: use energy drink
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'energy_drink'>>
<<set $scene.energy = setup.hasTmpEffect('drug_energy_drink') || setup.hasTmpEffect('drug_energy_drink_fem')>>
<<if !$scene.energy>>
<<setTmpEffect 'drug_energy_drink'>>
<<applyFatigue -100>>
<</if>>
<<applyStress 10>>
<<set $player.flags.drugs.energy_drink += 1>>
<</if>>
<img src="./images/inventory/item/useable/energy_drink_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
You pound the overly sweet, shockingly sour and... bizarrely astringent energy drink,
<<if $scene.energy>>
and immediately start to get a headache, wincing in pain and immediately regretting doubling up on the potent potable.
<<else>>
immediately feeling a rush of energy... perhaps TOO much of a rush. Your heart races and you start to feel a bit of paranoia creeping in, a feeling that subsides somewhat after a minute or so, but still leaves you a bit twitchy and nervous.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use energy drink zero calorie
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'energy_drink_zero'>>
<<set $scene.energy = setup.hasTmpEffect('drug_energy_drink') || setup.hasTmpEffect('drug_energy_drink_fem')>>
<<if !$scene.energy>>
<<setTmpEffect 'drug_energy_drink'>>
<<applyFatigue -125>>
<<changeHorny 100>>
<</if>>
<<applyStress 15>>
<<set $player.flags.drugs.energy_drink += 1>>
<</if>>
<img src="./images/inventory/item/useable/energy_drink_zero_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
You pound the overly sweet, shockingly sour and... bizarrely astringent energy drink,
<<if $scene.energy>>
and immediately start to get a headache, wincing in pain and immediately regretting doubling up on the potent potable.
<<else>>
your heart thunders like a drum and you find the mere idea of sitting still somewhat anxiety-inducing, the potent stimulants in the concoction both erasing your fatigue, while working to make good on the "zero net calorie" promise despite what the label says is the same "secret blend" of seven types of sugar as the normal version.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use energy drink feminising
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'energy_drink_fem'>>
<<set $scene.energy = setup.hasTmpEffect('drug_energy_drink') || setup.hasTmpEffect('drug_energy_drink_fem')>>
<<if !$scene.energy>>
<<setTmpEffect 'drug_energy_drink_fem'>>
<<applyFatigue -150>>
<<changeHorny 50>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $ALONE>>
<</if>>
<<if setup.hasTmpEffect('hormone_light')>>
<<setTmpEffect 'hormone_normal'>>
<<elseif setup.hasTmpEffect('hormone_normal')>>
<<setTmpEffect 'hormone_heavy'>>
<<elseif setup.hasTmpEffect('hormone_heavy')>>
<<setTmpEffect 'hormone_ultra'>>
<<else>>
<<setTmpEffect 'hormone_light'>>
<</if>>
<<set _stress = 15-setup.getTotalValue("feminization")>>
<<applyStress _stress>>
<<set $player.flags.drugs.energy_drink_fem += 1>>
<</if>>
<img src="./images/inventory/item/useable/energy_drink_fem_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
You knock back the surprisingly smooth and delicious "Comedown Explosion" flavoured energy drink.
<<if $scene.energy>>
Immediately you start to get a headache, wincing in pain and immediately regretting doubling up on the potent potable. Through the pain though you feel a rush of feminine feelings... which somehow reduce your headache, though do not eliminate it entirely.
<<else>>
Amidst the rush of energy you let out a girlish giggle, you don't know quite what it is but drinking this tasty drink has you feeling extra-femme... and your <<if $player.body.breastsize[0] > 1>>breasts feel<<else>>chest feels<</if>> somewhat swelled and sensitive...
<</if>>
<br><br>
<<printThought "I'd heard the rumours that the colour was due to estrogen... but there's no way that could be true. I'm probably just psyching myself into a placebo effect, right?">><br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: try to install penis milker
#status: FINISHED 0.6.0.0
#*/
<<set $player.location to "Install Penis Milker">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.useItem = ($player.llocation=="room_bedroom")>>
<<if $scene.useItem>>
<<deleteItem 'penis_milker_box'>>
<<addUpgradeItem $bed 'penis_milker'>>
<</if>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
<<if $scene.useItem>>
You set up the penis milking kit next to your bed. The instructions are fairly simple: a few minutes spent attaching a few hoses and it's all plugged in and ready for use.
<<else>>
You cannot use the penis milking kit here, you should head to your bedroom to install it.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: try to install breast milker
#status: FINISHED 0.6.0.0
#*/
<<set $player.location to "Install Breast Milker">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.useItem = ($player.llocation=="room_bedroom")>>
<<if $scene.useItem>>
<<deleteItem 'breast_milker_box'>>
<<addUpgradeItem $bed 'breast_milker'>>
<</if>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
<<if $scene.useItem>>
You set up the breast milking kit next to your bed. The instructions are fairly simple: a few minutes spent attaching a few hoses and it's all plugged in and ready for use.
<<else>>
You cannot use the breast milking kit here, you should head to your bedroom to install it.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: try to install vag milker
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Install Vaginal Milker">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.useItem = ($player.llocation=="room_bedroom")>>
<<if $scene.useItem>>
<<deleteItem 'vag_milker_box'>>
<<addUpgradeItem $bed 'vag_milker'>>
<</if>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
<<if $scene.useItem>>
You set up the vaginal stimulation kit next to your bed. The instructions are fairly simple: a few minutes spent attaching a few hoses and it wirelessly synchronises with your other "toys" and it's all ready for use.
<<else>>
You cannot use the vaginal stimulation kit here, you should head to your bedroom to install it.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: choose milking device to use on yourself
#status: FINISHED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<set $scene.milkSelect = false>>
<<if $scene.sleepRemoveCage>>
<<include "removeCage_retractSissyomatic">>
<<set $scene.cage = $scene.chastity>>
<<set $scene.chastity = "">>
<<else>>
<<set $scene.chastity = setup.getItemFromType('cage')>>
<<if $scene.chastity != "" && (setup.hasUpgrade($bed, 'penis_milker') || setup.hasUpgrade($bed, 'vag_milker'))>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if !setup.checkItemInInventory($scene.keyId)>>
<<include "addMilkingTopic">>
<</if>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis && setup.hasUpgrade($bed, 'breast_milker') && setup.hasUpgrade($bed, 'penis_milker')>>
You consider your complete milking apparatus, the "extraction" equipment designed to extract all of your sexual fluids.<br>
<br>
<<if $scene.chastity == "" || setup.checkItemInInventory($scene.keyId)>>
Your <<getWordMyPenis>> exposed you can already imagine seeing the milking cylinder sliding over you to commence its brutally efficient work.<br>
<br>
<<if $player.timebased.milking.cream_supply >= 75>>
It has been a while since you came, your balls feeling heavy with <<if $fetish.sissy>>sissy <</if>>juices...
<<elseif $player.timebased.milking.cream_supply >= 50>>
While not feeling "full" you could definitely stand to drain away some of your <<if $fetish.sissy>>sissy <</if>>juices.
<<elseif $player.timebased.milking.cream_supply >= 25>>
Your <<if !$player.body_ref.balls>>nonexistent <</if>>balls are almost dry, but that won't stop the ingenious milking device from sucking out every last drop.
<<elseif $player.timebased.milking.cream_supply == 0>>
You may be drained, but the mechanical milking device is indefatigable, more than capable of continuing to suck and stroke your tired <<getWordMyPenis false>> even if you produce naught but air.
<<else>>
Whatever miniscule quantities of sexual fluids you have stored up, the mechanical device will enthusiastically drain away, and then keep going even after your orgasms turn dry.
<</if>>
<<elseif setup.isCage() && $player.body_ref.vagina>>
Your <<getWordVagina>> may be free, but you find yourself unable to fit the vaginal insert in place behind your cage without ending up with an uncomfortable mess.
<<else>>
With your <<getWordMyPenis false>> presently locked in a <<=setup.getItemName($scene.chastity)>>, you are unable to use the "lower" milking device.
<<if setup.checkItemInInventory($scene.keyId)>>
fortunately you have the key.
<<else>>
Not being in possession of the key it is breasts or nothing for you at present.
<</if>>
<</if>>
<br><br>
<<if $player.body_ref.milkProduction > 0>>
<<if $player.timebased.milking.milk_supply >= 75>>
Your breasts are practically bursting with milk, your breasts swelled and full. A milking session would probably be a good idea.
<<elseif $player.timebased.milking.milk_supply >= 50>>
You can feel your "payload" almost sloshing around in your breasts, it might not be a bad idea to milk yourself lest you swell painfully.
<<elseif $player.timebased.milking.milk_supply >= 25>>
You can feel your breasts don't have much in them. Of course the efficient milking apparatus could still drain you for every drop...
<<elseif $player.timebased.milking.milk_supply == 0>>
Your breasts are currently quite dry. You could hook yourself up for "fun," but you aren't liable to extract anything from the effort.
<<else>>
It won't take long for the apparatus to drain you of your milk, after that it's just a matter of enjoying the inexorable suction and stimulation.
<</if>>
<<else>>
While you can't produce milk from your breasts, there's no reason you couldn't have a bit of "fun" with the device.
<</if>>
<br><br>
<<if $player.body_ref.vagina && setup.hasUpgrade($bed, 'vag_milker')>>
You feel yourself dripping in anticipation, your vagina yearning to get in on the "fun"... fortunately you have just the device... <<if $scene.chastity == "" || setup.checkItemInInventory($scene.keyId)>>And the freedom to employ it.<<elseif setup.isCage()>>unfortunately it seems like you'd need to ditch the cage as well for that to be possible.<<else>>If only you could remove your chastity device to use it...<</if>><br>
<br>
<<if $scene.chastity == "" || setup.checkItemInInventory($scene.keyId)>>
<<set $scene.vag_milker = $player.flat.sleep.vag_milker>>
<label>Use the vaginal upgrade as well. <<checkbox "$scene.vag_milker" false true autocheck>></label>
<br>
<<elseif $scene.chastity != "" && setup.isCage()>>
[@@.link_locked;While your chastity device does not cover your vagina, it is in the way of using the milking device.@@]<br>
<</if>>
<</if>>
<<if $player.body_ref.penis && setup.hasUpgrade($bed, 'penis_pain') && $scene.chastity == "">>
<<if !$player.sec_style.sex.testicle_milking>>
[@@.link_locked;Torturing myself out the gate is a bit much, maybe I should try milking on its own first.@@] <<hint $options "Try masturbating with your milking device.">>
<<else>>
<<if $player.body_ref.balls>>
<label>Use the testicular punishment upgrade. <<checkbox "$scene.penis_pain" false true autocheck>></label>
<<else>>
<label>Use the penis punishment upgrade. <<checkbox "$scene.penis_pain" false true autocheck>></label>
<</if>>
<</if>>
<br>
<</if>>
[<<moveTo "room_bedroom_use_milker_2" "Use the breast milkers." 60 "<<set $scene.milk='breasts'>>">>]<br>
<<if $scene.chastity == "">>
[<<moveTo "room_bedroom_use_milker_2" "Use penis milkers." 60 "<<set $scene.milk='penis'>>">>]<br>
[<<moveTo "room_bedroom_use_milker_2" "Use both." 60 "<<set $scene.milk='both'>>">>]<br>
<<elseif setup.checkItemInInventory($scene.keyId)>>
[<<moveTo "room_bedroom_use_milker_1" "Remove your chastity device." 60 "<<set $scene.sleepRemoveCage = true>>">>]<br>
<</if>>
[<<moveTo "room_bedroom" "Back." 20>>]
<<elseif setup.hasUpgrade($bed, 'breast_milker')>>
You look at the twin breast cups.
<<if $player.body_ref.milkProduction > 0>>
<<if $player.timebased.milking.milk_supply >= 75>>
You are practically bursting with milk, your breasts swelled and full. A milking session would probably be a good idea.
<<elseif $player.timebased.milking.milk_supply >= 50>>
You can feel your "payload" almost sloshing around in your breasts, it might not be a bad idea to milk lest you swell painfully.
<<elseif $player.timebased.milking.milk_supply >= 25>>
You can feel your breasts don't have much in them. Of course the efficient milking apparatus could still drain you for every drop...
<<elseif $player.timebased.milking.milk_supply == 0>>
Your breasts are currently quite dry. You could hook yourself up for "fun," but you aren't liable to extract anything from the effort.
<<else>>
It won't take long for the apparatus to drain you of your milk, after that it's just a matter of enjoying the inexorable suction and stimulation.
<</if>>
<<else>>
While you can't produce milk, there's no reason you couldn't have a bit of "fun" with the devices.
<</if>>
<br><br>
<<if !$player.body_ref.penis && setup.hasUpgrade($bed, 'penis_milker')>>
You may own a penis milking device, but without a penis, you have little use for it.
<<if setup.checkItemTypeWorn("cage")>>
Your <<getWordVagina>>, on the other hand, is presently locked away in chastity.
<</if>>
<br><br>
<<elseif setup.checkItemTypeWorn("cage") && ($player.body_ref.penis || !setup.isCage())>>
You are presently locked in chastity, restricting your use of other attachments.<br>
<br>
<</if>>
<<if $player.body_ref.vagina && setup.hasUpgrade($bed, 'vag_milker')>>
You feel yourself dripping in anticipation, your vagina yearning to get in on the "fun"... fortunately you have just the device... <<if $scene.chastity == "" || setup.checkItemInInventory($scene.keyId)>>And the freedom to employ it.<<elseif setup.isCage()>>unfortunately it seems like you'd need to ditch the cage as well for that to be possible.<<else>>If only you could remove your chastity device to use it...<</if>><br>
<br>
<<if $scene.chastity == "" || setup.checkItemInInventory($scene.keyId)>>
<<set $scene.vag_milker = $player.flat.sleep.vag_milker>>
<label>Use the vaginal upgrade as well. <<checkbox "$scene.vag_milker" false true autocheck>></label><br>
<br>
<<elseif $scene.chastity != "" && setup.isCage()>>
[@@.link_locked;While your chastity device does not cover your vagina, it is in the way of using the milking device.@@]<br>
<</if>>
<</if>>
[<<moveTo "room_bedroom_use_milker_2" "Milk your breasts." 60 "<<set $scene.milk='breasts'>>">>]<br>
[<<moveTo "room_bedroom" "Back." 20>>]
<<elseif $player.body_ref.penis && setup.hasUpgrade($bed, 'penis_milker')>>
<<if $scene.chastity == "">>
<<if $player.timebased.milking.cream_supply >= 75>>
It has been a while since you came<<if $player.body_ref.balls>>, your balls feeling heavy<<else>> and you are starting to feel a bit pent up<</if>> with <<if $fetish.sissy>>sissy <</if>>juices...
<<elseif $player.timebased.milking.cream_supply >= 50>>
While not feeling "full" you could definitely stand to drain away some of your <<if $fetish.sissy>>sissy <</if>>juices.
<<elseif $player.timebased.milking.cream_supply >= 25>>
Your <<if !$player.body_ref.balls>>nonexistent <</if>>balls are almost dry, but that won't stop the ingenious milking device from sucking out every last drop.
<<elseif $player.timebased.milking.cream_supply == 0>>
You may be drained, but the mechanical milking device is indefatigable, more than capable of continuing to suck and stroke your tired <<getWordMyPenis>> even if you produce naught but air.
<<else>>
Whatever sexual fluids you have stored up, the mechanical device will enthusiastically drain away, and then keep going even after your orgasms turn dry.
<</if>>
<br><br>
[<<moveTo "room_bedroom_use_milker_2" "Use penis milkers." 60 "<<set $scene.milk='penis'>>">>]
<<else>>
Your <<getWordMyPenis false>> is presently locked in a <<=setup.getItemName($scene.chastity)>>. There is no way the milker will work with the device in place.
<<if setup.checkItemInInventory($scene.keyId)>>
Fortunately, you have the key!<br>
<br>
[<<moveTo "room_bedroom_use_milker_1" "Remove your chastity device." 60 "<<set $scene.sleepRemoveCage = true>>">>]<br>
[<<moveTo "room_bedroom" "Remain caged and do something else." 20>>]
<<else>>
Not being in possession of the key there is no way you can milk yourself at this juncture.<br>
<br>
<<printThought 'Maybe I should talk to <<=setup.getNpcName("npc_manager", "formal")>> about some sort of "work release" programme...'>><br>
<br>
[<<moveTo "room_bedroom" "Remain caged and do something else." 20>>]
<</if>>
<</if>>
<<elseif !$player.body_ref.penis && setup.hasUpgrade($bed, 'penis_milker')>>
You look at your penis milking device — a somewhat useless item given your present anatomy.<br>
<br>
[<<moveTo "room_bedroom" "Back." 20>>]
<<else>>
ERROR! no milkers installed, should be unreachable!<br>
<br>
[<<moveTo "room_bedroom" "Back." 20>>]
<</if>>
</div>/*#
#desc: use milking devices on yourself
#status: FINISHED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<set $scene.firstMilk = false>>
<<if $scene.milk == 'both' || $scene.milk == 'breasts'>>
<<if setup.checkItemTypeWorn("top")>>
<<set _topId = setup.getItemFromType("top")>>
<<removeItem _topId true>>
<</if>>
<<if setup.checkItemTypeWorn("dress")>>
<<set _dress = setup.getItemFromType("dress")>>
<<removeItem _dress true>>
<</if>>
<<if setup.checkItemTypeWorn("strapless_dress")>>
<<set _dress = setup.getItemFromType("strapless_dress")>>
<<removeItem _dress true>>
<</if>>
<<addItem "breast_milker">>
<<wearItem "breast_milker" true>>
<<set $scene.firstMilk = !$player.body_ref.milkEvent && $player.body.breastsize[1] > 0 && $player.body_ref.milkProduction == 0 && $player.flags.mealplan.hormones != "none">>
<<if $scene.firstMilk>>
<<set $player.body_ref.milkEvent = true>>
<<set $player.body_ref.milkProduction = 1>>
<</if>>
<</if>>
<<set $scene.curCage = setup.getItemFromType("cage")>>
<<set $player.flat.sleep.vag_milker = $scene.vag_milker>>
<<if $scene.milk == 'both' || $scene.milk == 'penis' || $scene.vag_milker>>
<<if setup.checkItemTypeWorn("cage") && !$scene.sleepRemoveCage>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
<<set $scene.sleepRemoveCage = true>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<</if>>
<<if $scene.milk == 'both' || $scene.milk == 'penis'>>
<<if $scene.vag_milker>>
<<addItem "vag_and_penis_milker">>
<<wearItem "vag_and_penis_milker" true>>
<<else>>
<<addItem "penis_milker">>
<<wearItem "penis_milker" true>>
<</if>>
<<elseif $scene.vag_milker>>
<<addItem "vag_milker">>
<<wearItem "vag_milker" true>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_17'
4
'event_psychiatrist_session_other_milking_1'
false
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You restrain yourself to the bed for security and settle in for sleep.
<<switch $scene.milk>>
<<case 'breasts'>>
The twin cups suck tight to your chest and you turn the system on. You let out a gasp as your chest swells within the two chambers, your nipples hardening in response to the first shocks.
<<if $player.body_ref.milkProduction > 0 && $player.timebased.milking.milk_supply >= 25>>
You moan in pleasure as the first squirts of milk are drawn out of you, the contraption only ramping up higher in response.
<<else>>
You may be bone dry, but the machine doesn't even slow and you are left moaning with each dry orgasm as your sensitised breasts swell within their chambers.
<</if>>
<br><br>
Twisting and moaning, your hand snakes down between your legs.
<<if $scene.curCage == "">>
<<if $player.body_ref.penis>>
Jerking your hard <<getWordMyPenis>> soon sends a fountain of <<getWordCum>> splashing across the twin domes sucking away at your chest. Still stiff you don't even let up, merely gasping as you frantically stroke and hump.
<<else>>
Fingering yourself your hand is soon sopping, leaking almost as much below as your breasts squirt enthusiastically above — keep this up and you could end up dehydrated.
<</if>>
<<else>>
<<if $player.body_ref.penis>>
You grasp at your <<getWordMyPenis>>, the <<=setup.getItemName($scene.curCage)>> doing its job to thwart your efforts, leaving you pawing uselessly as your chest continues to be overstimulated.
<<else>>
You paw at your chastity belt, stymied from further stimulation.
<</if>>
<</if>>
<br><br>
Pleasure being steadily replaced with oversensitised pain, you finally turn things off, peeling the cups away from your chest <<if $scene.vag_milker>>and removing the vaginal attachment <</if>>to catch your breath.
<<case 'penis'>>
Taking a deep breath, you start by sliding the clear cylinder over your
<<if $player.timebased.horny == 100>>
dangerously hard <<getWordMyPenis>>
<<elseif $player.timebased.horny >= 75>>
very erect <<getWordMyPenis>>
<<elseif $player.timebased.horny >= 50>>
half chub
<<elseif $player.timebased.horny >= 25>>
soft <<getWordMyPenis>>
<<elseif $player.timebased.horny == 0>>
totally spent <<getWordMyPenis>>
<<else>>
listlessly limp <<getWordMyPenis>>
<</if>>
making sure it is properly seated you <<if $scene.vag_milker>>integrate the vaginal attachment and <</if>>buckle the harness around your sexy hips. Turning things on you let out a gasp, the sucking, pulsing, stroking<<if $scene.vag_milker>>, thrusting<</if>> attentions of the machine assaulting your <<getWordMyPenis>><<if $scene.vag_milker>>and <<getWordVagina>><</if>> from every angle.<br>
<br>
<<if $scene.penis_pain>>
After a few moments of intense suction you cry out in agony electric pain shoots through your <<getWordMyPenis>><<if $player.body_ref.balls>> and echoes between your balls<</if>>. You reflexively reach for the cylinder... but it is like the machine knows, zapping you again and sending you writhing in place as it pumps and punishes away.<br>
<br>
<<if setup.getTotalValue("bdsm") > 15>>
Your heart races with ecstatic tormenting ecstasy, each jolt of electricity causing you to strain within the pumping cylinder as it sucks away everything you produce.
<<elseif setup.getTotalValue("bdsm") > 10>>
The pain overwhelms even your capacity, working in concert with the constant suction to leave you a trembling, moaning wreck.
<<elseif setup.getTotalValue("bdsm") > 5>>
Roaring to life, the trio of devices suck away, pumping pleasure into you as they industriously work to draw their harvest.
<<else>>
Just one of the devices would be a lot, together you are nearly overwhelmed, gripping the bed with both hands as you try to just survive.
<</if>>
<<else>>
<<if $player.timebased.milking.cream_supply >= 25>>
It isn't long before the machine sucks away your first explosive orgasm, the stimulation not even slowing down as the contraption works you towards your next. Shuddering in pleasure you fall back on the bed, humping the air in response to the continuous stimulation of your oh-so-sensitive <<getWordMyPenis>>.
<<else>>
Even this nigh overwhelming stimulation isn't enough to draw anything more than the faintest puff from your tired, drained <<getWordMyPenis>>, but that doesn't stop the machine from trying, pumping and sucking aggressively as you gasp and pant with each dry orgasm.
<</if>>
<</if>>
<br><br>
Groaning with overload you finally have to stop, fumbling for your phone to turn things off and sliding your exhausted <<getWordMyPenis>> out of the slick tube to lay back on the bed, gasping for air.
<<case 'both'>>
Taking a deep breath, you start by sliding the clear cylinder over your
<<if $player.timebased.horny == 100>>
dangerously hard <<getWordMyPenis>>
<<elseif $player.timebased.horny >= 75>>
very erect <<getWordMyPenis>>
<<elseif $player.timebased.horny >= 50>>
half chub
<<elseif $player.timebased.horny >= 25>>
soft <<getWordMyPenis>>
<<elseif $player.timebased.horny == 0>>
totally spent <<getWordMyPenis>>
<<else>>
listlessly limp <<getWordMyPenis>>
<</if>>
making sure it is properly seated you <<if $scene.vag_milker>>integrate the vaginal attachment and <</if>>buckle the harness around your sexy hips. Looking down at your <<getWordMyPenis>>, you can't help but reflect on the fact that it is effectively imprisoned and utterly out of your control — once the device is active it will force orgasms from you with machine efficiency.<br>
<br>
Bringing the breast cups up to your chest, you carefully align the smaller nipple attachments before <<if $player.body.breastsize[0] > 0>>stuffing your breasts into the larger outer cups<<else>>strapping the cups onto your flat chest — the dome-like devices the fakest set of breasts imaginable<</if>>. Tightening the harness and bouncing a bit to make sure everything is secure, you lie back on the bed and start the routine.<br>
<br>
Instantly the <<if $scene.vag_milker>>trio of<<else>>quad<</if>> devices come alive, sucking<<if $scene.vag_milker>> and thrusting<</if>> hard as a quick series of shocks serves to "wake everything up." <br>
<br>
Hands balled into fists, you thrash back and forth on the bed, crying out in overwhelmed sensation as they suck and pump and shock away.<br>
<br>
<<if $scene.penis_pain>>
If the suction from every direction was prelude, the real intensity is focused on your poor, defenceless <<getWordMyPenis>>. Trapped in its cylinder it is pumped and sucked... and mercilessly shocked, the pain inescapable as you thrash and cry... and cum.<br>
<br>
<</if>>
<<if setup.getTotalValue("bdsm") > 15>>
Even your limits as a total sensation-slut are pushed as the stimulation starts to overwhelm you... each climax an explosion of intensity that obliterates the line between pain and pleasure.
<<elseif setup.getTotalValue("bdsm") > 10>>
The suction comes on hard and fast enough to make you gasp. Pain and pleasure mix as the machine becomes your master and you its slave.
<<elseif setup.getTotalValue("bdsm") > 5>>
Roaring to life, the trio of devices suck away, pumping pleasure into you as they industriously work to draw their harvest.
<<else>>
Just one of the devices would be a lot, together you are nearly overwhelmed, gripping the bed with both hands as you try to just survive.
<</if>>
<br><br>
<<if $player.body_ref.milkProduction > 0>>
<<if $player.timebased.milking.milk_supply >= 25 && $player.timebased.milking.cream_supply >= 25>>
Cumming repeatedly your breasts squirt along, the machine draining you above and below, the <<if $scene.penis_pain>>extraction a mix of pain and pleasure<<else>>pleasure of the extraction soon blurring into pain<</if>> as your body shudders in hyper-sensitive overstimulation.
<<elseif $player.timebased.milking.milk_supply >= 25>>
Though you may be shooting blanks that doesn't stop you from crying out with each dry orgasm, the painful pleasure somehow spurring your breasts to produce more to "make up for it."
<<elseif $player.timebased.milking.cream_supply >= 25>>
Your breasts swelling with sensitivity in their twin vacuum chambers, you cum repeatedly without ever softening, your <<if $player.body_ref.balls>>testicles working overtime<<else>><<getWordMyPenis>> firing off repeatedly<</if>> in a futile attempt to keep up with the orgasms repeatedly forced out of you.
<<else>>
You may be bone dry, but the machine presses ever onward, moaning with each dry orgasm as your sensitised breasts swell within their chambers.
<</if>>
<<elseif $player.timebased.milking.cream_supply >= 25>>
You shudder as your <<getWordMyPenis>> is pumped to full hardness, <<if $scene.penis_pain>>penis<<if $player.body_ref.balls>>, testicles, <</if>> and nipples alike shocked and sucked, even as your breasts stubbornly refuse to produce anything<<else>>your nipples shocked and sucked, seemingly punished for their failure to produce milk<</if>>. It isn't long before you have your first orgasm, but the machine doesn't even slow, slurping away your emission while never letting up on the stroking stimulation, not allowing your <<getWordMyPenis>> to soften in the slightest.
<<else>>
You shudder as your <<getWordMyPenis>> is pumped to full hardness, <<if $scene.penis_pain>>penis<<if $player.body_ref.balls>>, testicles, <</if>> and nipples alike shocked and sucked, even as your breasts stubbornly refuse to produce anything<<else>>your nipples shocked and sucked, seemingly punished for their failure to produce milk<</if>>. Your dry orgasm is similarly punished with <<if $scene.penis_pain>>an even stronger shock that runs the length of your <<getWordMyPenis>><<if $player.body_ref.balls>> and echoes between your balls. The<</if>>, but<<else>>even more suction, the<</if>> pumping, sucking stimulation doesn't stop, your pained cry met with a further stiffening of your member as the trio of milking devices unite as if to draw blood from a stone.
<</if>>
<br><br>
Finally you can take no more, flailing for your phone to turn things off.<br>
<br>
<<if setup.getTotalValue("submission") > 10 || setup.getTotalValue("bdsm") > 10>>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear') || setup.hasUpgrade($bed, 'bed_bondage_gear_2')>>
<<printThought "Maybe using this while sleeping in bondage would work better?" -30>>
<<else>>
<<printThought "I should really figure out a bondage solution if I want to get the most out of this system..." -30>>
<</if>>
<br><br>
<</if>>
Groaning with effort, you shed the "bra and panties" harness to free yourself from the diabolic device.
<<default>>
ERROR: unexpected scene.milk <<=$scene.milk>>
<</switch>>
<br><br>
[<<moveTo "room_bedroom_use_milker_3" "Finish." 360>>]
</div>/*#
#desc: cleanup + check production after milking yourself
#status: FINISHED 0.6.0.0
#ignore_spell: l
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flat.sleep.vag_milker = $scene.vag_milker>>
<<if $scene.milk == 'breasts' || $scene.milk == 'both'>>
<<set $scene.milkAdd = $player.timebased.milking.milk_supply>>
<<if $scene.vag_milker>>
<<set $scene.milkAdd = 10+Math.floor($scene.milkAdd*1.5)>>
<</if>>
<<set $player.timebased.milking.milk_storage += $scene.milkAdd>>
<<set $player.timebased.milking.milk_supply = 0>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<<changeHorny 20>>
<</if>>
<<if $scene.milk == 'penis' || $scene.milk == 'both' && $player.body_ref.penis>>
<<set $scene.creamAdd = $player.timebased.milking.cream_supply>>
<<if !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = "voluntary">>
<</if>>
<<if $scene.penis_pain>>
<<applyExperience 'bdsm' 18 'terrible' $ALONE>>
<<set $scene.creamAdd = $scene.creamAdd*(1+setup.getTotalValue("bdsm")/20)>>
<<if !$player.sec_style.submission.testicle_pain>>
<<set $player.sec_style.submission.testicle_pain = "enthusiast">>
<</if>>
<</if>>
<<if $scene.vag_milker>>
<<set $scene.creamAdd = 10+Math.floor($scene.creamAdd*1.5)>>
<</if>>
<<if $scene.penis_pain>>
<<set $scene.creamAdd = Math.floor($scene.creamAdd*1.5)>>
<</if>>
<<set $player.timebased.milking.cream_storage += $scene.creamAdd>>
<<set $player.timebased.milking.cream_supply = 0>>
<<set $player.timebased.horny = 0>>
<<if setup.isItemEquipped('penis_milker')>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<elseif setup.isItemEquipped('vag_and_penis_milker')>>
<<removeItem "vag_and_penis_milker" true>>
<<deleteItem "vag_and_penis_milker">>
<<elseif setup.isItemEquipped('vag_milker')>>
<<removeItem "vag_milker" true>>
<<deleteItem "vag_milker">>
<</if>>
<<elseif $scene.vag_milker>>
<<removeItem "vag_milker" true>>
<<deleteItem "vag_milker">>
<</if>>
<<switch $scene.milk>>
<<case 'breasts'>>
<<applyFatigue 50>>
<<case 'penis'>>
<<applyFatigue 30>>
<<case 'both'>>
<<applyFatigue 70>>
<</switch>>
<<if $scene.penis_pain>>
<<applyFatigue 50>>
<<set _stress = Math.floor(15 - setup.getTotalValue("bdsm")/2)>>
<<applyStress _stress>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.firstMilk>>
<<if $player.flags.mealplan.hormones != "none">>
Removing the breast cups you are surprised to find some white drops on the inside.<br>
<br>
<<printThought "Is that... milk?">><br>
<br>
You recall reading that a combination of proper stimulation and hormones can induce lactation, could that have happened to you?
<<else>>
As you remove the breast cups, you find your nipples feeling a bit puffy and odd. You can't help but wonder if you could produce milk, maybe with the right hormones?
<</if>>
<<else>>
Exhausted by your ordeal, you lie panting on the bed for several minutes and check on what you have produced.
<<switch $scene.milk>>
<<case 'breasts'>>
Though your breasts feel sensitive and empty, you find yourself even more horny despite feeling tired.
<<case 'penis'>>
<<if $scene.penis_pain>>
You whimper in agony, not just drained but brutally punished by the electric "enhanced" routine... though you seem to have produced a substantial amount of cum.
<<else>>
You feel utterly drained, your poor <<getWordMyPenis false>> exhausted<<if $player.body_ref.balls>> and your balls utterly depleted<</if>>.
<</if>>
<<case 'both'>>
You feel like a desiccated husk, every drop drained from your body.
<<default>>
ERROR unexpected scene.milk: <<=$scene.milk>>
<</switch>>
<br><br>
<<if $scene.milkAdd > 0 && $scene.creamAdd > 0>>
You milked yourself for <<=Number.parseFloat($scene.milkAdd*.04).toPrecision(3)>>L of milk and <<=setup.cumtomL($scene.creamAdd)>> of "cream," which brings you up to <<=Number.parseFloat($player.timebased.milking.milk_storage*.04).toPrecision(3)>> litres of milk and <<=setup.cumtomL($player.timebased.milking.cream_storage)>> of<<if $fetish.sissy>> sissy<</if>> "cream" after your session.
<<elseif $scene.milkAdd > 0>>
You milked yourself for <<=Number.parseFloat($scene.milkAdd*.04).toPrecision(3)>>L of milk, which brings you to a total of <<=Number.parseFloat($player.timebased.milking.milk_storage*.04).toPrecision(3)>> litres total.
<<elseif $scene.creamAdd > 0>>
You milked yourself for <<=setup.cumtomL($scene.creamAdd)>> of "cream," which brings you to a total of <<=setup.cumtomL($player.timebased.milking.cream_storage)>> of<<if $fetish.sissy>> sissy<</if>> "cream" total.
<<else>>
You are up to <<=setup.cumtomL($player.timebased.milking.cream_storage)>> of<<if $fetish.sissy>> sissy<</if>> "cream" after your session.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_bedroom" "Do something else." 20>>]
</div><<if setup.hasUpgrade($bed, 'penis_milker') || setup.hasUpgrade($bed, 'vag_milker')>>
<<if -1 == setup.findThemeId('npc_manager', 'other', 'theme_manager_other_5')>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_5'
4
'event_manager_self_milking_1'
true
>>
<</if>>
<</if>>/*#
#desc: install keysafe in bedroom
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addUpgradeItem $bed 'keysafe'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
Arriving home, you find a medium sized cubic package waiting for you in front of your door.<br>
<br>
<<printThought "Hmm, this must be the safe <<=setup.getNpcName('npc_manager', 'formal')>> was talking about.">><br>
<br>
<<if setup.getTotalValue("strength") > 10>>
Leaning over you lift the box with ease, it's heavy for its size, but nothing you can't handle.
<<elseif setup.getTotalValue("strength") > 5>>
Leaning down you struggle a bit to lift the box, it being VERY heavy for its size.
<<else>>
Straining you barely manage to lift the box. You are weak and it is very heavy for its size, but you managed to stagger inside with it.
<</if>>
<br><br>
Heading for the bedroom, you strip off the packaging to reveal a stout safe with no obvious keyhole or means of opening. A note taped to the top of the safe clues you in.<br>
<br>
"@@.npc_manager;I have the long-distance remote that will open the safe. Give me a call when you have everything else — milking kit, bondage, camera, monitor and, of course, a cute outfit!@@" — <<=setup.getNpcName('npc_manager', 'formal')>><br>
<br>
<<printThought "Hmm, I wonder what could be inside?">><br>
<br>
You decide to stow the safe under your bed since you doubt <<=setup.getNpcName('npc_manager', 'formal')>> will be unlocking it for you until you manage to assemble the rest of the items.<br>
<br>
[<<moveTo "room_bedroom" "Bedroom." 30>>]
</div>/*#
#desc: install flatscreen tv in bedroom
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addUpgradeItem $bed 'flatscreen_tv'>>
<<deleteItem 'flatscreen_tv'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
Arriving home, you find the large flatscreen tv box waiting next to your door, a drone hovering ominously above it.<br>
<br>
Walking closer, it scans your face before a mechanical voice speaks. "@@.computer;Scanning... <<=$player.first_name>> <<=$player.last_name>> identity confirmed. Delivery confirmed. Thank you for shopping at <<printShopName 'mall_wholesale_store'>>!@@"<br>
<br>
Hovering past you, it goes zipping up the hall and out the delivery chute.<br>
<br>
It's a bit bulky, but not too heavy, so you manage to wrangle the package inside, heading straight for your bedroom before unboxing it and following the simple instructions for mounting it so that it is looking down from the wall across from the foot of your bed.<br>
<br>
<<if $currentTasks.hasOwnProperty("manager_bed_milking_penis") || $currentTasks.hasOwnProperty("manager_bed_milking_vag") || $currentTasks.hasOwnProperty("manager_bed_milking_both")>>
<<if setup.hasUpgrade($bed, 'camera') && setup.hasUpgrade($bed, 'bed_bondage_gear') && setup.hasUpgrade($bed, 'breast_milker')>>
<<printThought 'Webcam, bondage, monitor, milkers... looks like I have everything <<=setup.getNpcName("npc_manager", "formal")>> asked for. Just need to slip into some "cute" sleepwear and give her a call before bed...'>>
<<else>>
<<printThought "Well, that's the monitor, but <<=setup.getNpcName('npc_manager', 'formal')>> said I needed that, a bondage solution, breast milkers and a camera, so I still have some work to do.">>
<</if>>
<br><br>
<</if>>
[<<moveTo "room_bedroom" "Bedroom." 30>>]
</div>/*#
#desc: first time asking manager for "permission" to sleep milked
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.startSleepPrep = true>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_22'
11
'event_psychiatrist_session_night_milking_1'
false
>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $npc_manager.flags.sent_bed_selfie = true>>
<<completeTask 'bed_heels_photo' $now true>>
<<else>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks.bed_heels_photo.finished>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<completeTask 'bed_heels_photo' $now false>>
<</if>>
<</if>>
<</if>>
<<set $scene.wornStyle = setup.analyzeWornTags(['fetish','cute','sissy','male','modest','unisex'])>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if setup.hasUpgrade($bed, 'camera') && setup.hasUpgrade($bed, 'bed_bondage_gear') && setup.hasUpgrade($bed, 'breast_milker') && setup.hasUpgrade($bed, 'flatscreen_tv') && setup.hasUpgrade($bed, 'keysafe') && ((setup.hasUpgrade($bed, 'vag_milker') || !$player.body_ref.vagina) || (setup.hasUpgrade($bed, 'penis_milker') || !$player.body_ref.penis))>>
<<if setup.analyzeWornTags(['sleepwear', 'gym', 'office']) != 'sleepwear'>>
You're about to start the videocall with <<=setup.getNpcName('npc_manager', 'formal')>> when you realise that you aren't even dressed for bed!<br>
<br>
<<printThought "Ooops! I should really get changed first.">><br>
<br>
[<<moveTo "room_bedroom" "Back." 30>>]
<<else>>
You start a videocall with <<=setup.getNpcName('npc_manager', 'formal')>>, but she only accepts the call one direction — she can see you, but you cannot see her.<br>
<br>
<<if setup.checkNaked()>>
"@@.npc_manager;Naked? Tsk, tsk, as much as I enjoy looking at your bare body I gave specific instructions for you to wear something cute! I mean, sleeping naked, really! So trashy! Plus you will catch your death of cold! Call me back when you have slipped into something more appropriate.@@"<br>
<br>
<<printThought "Ooops, where are my night clothes?">><br>
<br>
[<<moveTo "room_bedroom" "Back." 30>>]
<<elseif $scene.wornStyle == "cute" || $scene.wornStyle == "sissy" || $scene.wornStyle == "fetish">>
<<if $scene.wornStyle == "fetish">>
"@@.npc_manager;Hmm, what a kinky choice of sleep attire... I approve!@@"<br>
<br>
<<elseif $scene.wornStyle == "sissy">>
"@@.npc_manager;Now THAT is what a <<if $fetish.sissy>>sissy<<else>>girl<</if>> should wear to bed! Oh you just look adorable!@@"<br>
<br>
<<elseif $scene.wornStyle == "cute">>
"@@.npc_manager;Ah, how cute! Not quite as <<if $fetish.sissy>>sissy<<else>>girly<</if>> as you deserve but... it will do.@@"<br>
<br>
<</if>>
<<if setup.checkItemOwned("bed_heels_pink")>>
Her gaze slides down your body.<br>
<br>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
"@@.npc_manager;And you are wearing your bed heels too! Very good!@@"
<<else>>
"@@.npc_manager;Hmm, I expected you to be wearing your bed heels... disappointing, but I suppose I can let it slide this one time.@@"
<</if>>
<br><br>
<</if>>
"@@.npc_manager;Stay there for a moment while I adjust my camera and we will get started.@@"<br>
<br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_2" "Wait." 60>>]
<<elseif setup.analyzeWornTags(['female', 'male', 'unisex']) == 'male'>>
"@@.npc_manager;What? Are those... MALE pyjamas? Ugh, utterly disgusting, and I thought we had fixed you of this sort of thing. Find something else to wear before you call me back and those? Well, my advice would be to burn them, so unflattering!@@"<br>
<br>
<<printThought "Hmm, I guess I need to find some more feminine sleep attire.">><br>
<br>
[<<moveTo "room_bedroom" "Back." 30>>]
<<else>>
"@@.npc_manager;Hmm, no, I do not think that looks cute enough on you, find something else to sleep in before you call me back.@@"<br>
<br>
<<printThought "Hmm, maybe I need to purchase some other sleep attire?">><br>
<br>
[<<moveTo "room_bedroom" "Back." 30>>]
<</if>>
<</if>>
<<else>>
You look around the room to double check that everything is order, your <<=setup.getNpcName('npc_manager', 'title')>> said you needed a flatscreen tv, a camera, a bed bondage solution and anatomy-appropriate milkers, but it looks like you are
<<if !setup.hasUpgrade($bed, 'camera') && !setup.hasUpgrade($bed, 'bed_bondage_gear') && !setup.hasUpgrade($bed, 'breast_milker') && !setup.hasUpgrade($bed, 'flatscreen_tv') && !setup.hasUpgrade($bed, 'keysafe')>>
still missing all of it!
<<else>>
still missing a few items.
<</if>>
<<if setup.hasUpgrade($bed, 'camera') && setup.hasUpgrade($bed, 'bed_bondage_gear') && setup.hasUpgrade($bed, 'breast_milker') && setup.hasUpgrade($bed, 'flatscreen_tv') && !setup.hasUpgrade($bed, 'keysafe')>>
<br><br>
<<printThought "I've bought everything she told me to... I guess I just need to wait for the safe to be delivered. I hope it doesn't take much longer">>
<</if>>
<br><br>
[<<moveTo "room_bedroom" "Back." 30>>]
<</if>>
</div>/*#
#desc: view of manager + unlock safe for first night milking
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.complete = false>>
<<if $currentTasks.hasOwnProperty('manager_bed_milking_both')>>
<<deleteTask 'manager_bed_milking_both'>>
<</if>>
<<if $currentTasks.hasOwnProperty('manager_bed_milking_vag')>>
<<deleteTask 'manager_bed_milking_vag'>>
<</if>>
<<if $currentTasks.hasOwnProperty('manager_bed_milking_penis')>>
<<deleteTask 'manager_bed_milking_penis'>>
<</if>>
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
<<addTaskById 'manager_bed_milking_both'>>
<<else>>
<<addTaskById 'manager_bed_milking_penis'>>
<</if>>
<<else>>
<<addTaskById 'manager_bed_milking_vag'>>
<</if>>
<<if ($player.body_ref.penis && setup.hasUpgrade($bed, 'penis_milker') || !$player.body_ref.penis) &&
($player.body_ref.vagina && setup.hasUpgrade($bed, 'vag_milker') || !$player.body_ref.vagina) &&
setup.hasUpgrade($bed, 'breast_milker')>>
<<set $scene.complete = true>>
<<else>>
<<set $scene.complete = false>>
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other', 'theme_manager_other_5')>>
<<if _themeId != -1 && $scene.complete>>
<<set $npc_manager.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.complete>>
<<if $player.body_ref.penis>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream">>
<<elseif !$player.body_ref.penis && $player.body_ref.vagina>>
<<createStackedImage "bedroomMilking" "vagina" "milk">>
<</if>>
<<else>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_manager","npc_manager_robe")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$scene.complete>>
You wait with anticipation for the tv to display your <<=ps(setup.getNpcName('npc_manager', 'title'))>> face, but when it does all you can see is her frown almost filling the screen.<br>
<br>
"@@.npc_manager;What is this? No, no, it would seem that your equipment does not match up with your... equipment.
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
With you opting for the best of both worlds, well... you need a pair of devices to match; penis milker and vaginal stimulator,
<<else>>
Your cute penis needs a proper nocturnal home,
<</if>>
<<else>>
Leaving your vagina empty and unattended overnight, well... that would be quite inefficient, so you need to get something for that,
<</if>>
as well as the breast milkers, of course. Make sure you have everything installed and in order before you call me back.@@"<br>
<br>
The display turns black as <<=setup.getNpcName('npc_manager', 'formal')>> hangs up on you, leaving you foiled and frustrated.<br>
<br>
[<<moveTo "room_bedroom" "Back to your bedroom." 120>>]
<<else>>
After waiting about a minute, the blank feed on the flatscreen flickers to show a view of your manager wearing a slinky silk robe. Momentarily tearing your gaze away from her semi-casual beauty you look past her to see what you guess is her bedroom, well, more of a dungeon, her four-poster steel bed looming tall with very obvious attachment points for bondage and suspension. A rack on one wall is stocked with an array of whips and floggers, rope and leather bondage restraints neatly organised on the opposite side of the room.<br>
<br>
<<if $npc_manager.flags.home_visit.count > 0>>
She smiles as you can't help but stare at the room behind her. "@@.npc_manager;Mmmm, sparking some memories? I really must have you over again sometime...@@" You blush and turn away as she grins even wider. "@@.npc_manager;Some other night, for now we need to get you ready for bed!@@"
<<else>>
She smiles at your look of shock. "@@.npc_manager;You like my bedroom? <<if $status_flat.bedroom == 2>>I like yours too, it looks just perfect for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> like yourself!<<elseif $status_flat.bedroom != 0>>I like yours too, such an impressive expression of who you are.<<else>>You should really do some decorating in yours, it is so... drab and lacking in character.<</if>> If you are a VERY good <<if $fetish.sissy>>sissy<<else>>girl<</if>> maybe you will get to visit mine in person someday... anyway, let us begin!@@"
<</if>>
<br><br>
She reaches for something off-screen and you hear a *CLICK* from behind you.<br>
<br>
"@@.npc_manager;Alright, your safe is unlocked, go fetch the contents and return.@@"<br>
<br>
Kneeling down next to the bed, you swing open the door to the safe to find that it contains two items — a bulky collar <<if $player.sec_style.submission.collar != "">>— superfluous given what you are already wearing, <</if>>and the key to <<if $scene.cage == "">>the chastity device you <<if !$npc_manager.flags.require_chastity>>are no longer require to<<else>>normally<</if>> wear to work<<else>>your <<=setup.getItemName($scene.cage)>><</if>>.<br>
<br>
<<if $scene.cage == "" && $npc_manager.flags.require_chastity>>
You return and she frowns. "@@.npc_manager;Wait... are you out of chastity? Well, I suppose that is your right outside of work, but being that state somewhat obviates the need for me to supervise. I shall leave you to things, after all, there is no sense taking extra time if you are not embracing full security.@@"<br>
<br>
She ends the call.<br>
<br>
<<printThought "Looks like if I want this sort of supervision I need to trust her with my key when I leave work...">><br>
<br>
[<<moveTo "room_bedroom" "Back to your bedroom." 120>>]
<<elseif $scene.cage == "" && !$npc_manager.flags.require_chastity>>
[<<moveTo "room_bedroom_sleep_milker_permission_first_3_good" "Await her next instruction." 120>>]
<<else>>
<<printThought "Technically, she isn't here, I could just free myself...">><br>
<br>
<<if setup.getTotalValue("submission") > 10>>
As quickly as the thought came to mind, it is even more swiftly discarded. Such a betrayal is all but unthinkable and you carefully take <<if $player.sec_style.submission.collar == "">>both items<<else>>the key<</if>> in hand to return to the foot of your bed.<br>
<br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_3_good" "Await her next instruction." 120>>]
<<else>>
[<<moveTo "room_bedroom_sleep_milker_permission_first_3_bad" "Remove your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>." 120>>]<br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_3_good" "Return to the foot of her bed and await her instruction." 120>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: you uncage yourself without permission during first sleep milking scene
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
Overcome with excitement at the fact that you have a key to your cursed <<=setup.getItemName($scene.cage)>> you swiftly remove it only to look up at <<=setup.getNpcName('npc_manager', 'formal')>> glowering down at you from the flatscreen television, rage in her eyes.<br>
<br>
"@@.npc_manager;What in hades do you think you are doing?@@" Her eyes shift from blazing to cold enough to freeze an ocean.
<<if $player.sec_style.submission.collar == "">>
"@@.npc_manager_dom;You will lock that collar around your throat NOW or you may consider your employment immediately terminated.@@"
<<else>>
"@@.npc_manager_dom;You will wait and follow my instructions or you may consider your employment immediately terminated.@@"
<</if>>
<br><br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_3_bad_punished" "Do as she commands." 120>>]<br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_3_bad_end" "Turn off the tv and embrace your freedom." 120>>] <<hint $options "This will have consequences for your continued existence...">>
</div>/*#
#desc: bad end for unlocking yourself without permission during first night milking
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<if setup.changedRoom()>>
<<set $gameOver = 'milk_refuse'>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
Proudly striding forward with your <<if $player.body_ref.penis>><<getWordMyPenis false>> free<<else>>crotch exposed<</if>> you turn off the camera and monitor as <<=setup.getNpcName('npc_manager', 'formal')>> stares back in helpless, enraged shock.<br>
<br>
As the view of your <<=setup.getNpcName('npc_manager', 'title')>> vanishes, you let out a held breath.<br>
<br>
<<printThought "I'm free!">><br>
<br>
The reality of what has just happened slowly creeps over you and you stagger backwards to land on your bed. Certainly the controlled nightmare that has been your employment is at an end, but what now? You are once again out of a job, but what you have gone through... can you even return to a normal life?<br>
<br>
<<printThought "Have I made a huge mistake?">><br>
<br>
There is no one to answer your thoughts, or anything else. You lie back and slip into unconsciousness, the world fading out around you, like you walked off the edge of the screen of the movie into the great uncreated void...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: punished for prematurely uncaging yourself during first night milking
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<applyExperience 'bdsm' 18 'normal' $SEEN_FRIEND>>
<<addItem 'obedience_collar'>>
<<if $player.sec_style.submission.collar == "">>
<<wearItem 'obedience_collar' true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You can scarcely recall seeing your <<=setup.getNpcName('npc_manager', 'title')>> this angry and you
<<if $player.sec_style.submission.collar == "">>
hurriedly place the new collar around your throat. Roughly three centimetres tall it is made of thick and heavy waterproof simulation leather. Interior padding makes it look even more imposing given what you estimate to be a snug, custom fit. A dozen small, shiny prongs stud the interior, equally spaced, nestled in the lining. A single ring dangling from the front of the collar makes it quite clear that this is not just a fashion accessory.<br>
<br>
Locking closed with a loud click of finality you realise you saw no means to unlock the collar, you are once again locked and at her mercy.
<<else>>
meekly sit, silently hoping for mercy.
<</if>>
<br><br>
"Mercy" proves an ironic choice of word as agonising shocks encircle your neck. Dropping to your knees as you cry out in pain a second set of shocks sends you completely to the floor, staring up at <<=setup.getNpcName('npc_manager', 'formal')>> looking down at you.<br>
<br>
"@@.npc_manager;Consider that both a demonstration and a portion of your punishment for your brazen disobedience. That collar is my hand on your throat — gentle and comforting if you behave, but instantly punishing if you ever deviate from my instructions. Are you ready to be obedient?@@"<br>
<br>
Not wishing to taste another shock you whimper and nod.<br>
<br>
"@@.npc_manager;Good, now get back to your feet and let us get back on track.@@"<br>
<br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_4" "Rise and obey." 120>>]
</div>/*#
#desc: you refrain from pre-maturely releasing your chastity in first night milking scene
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.penis>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<addItem 'obedience_collar'>>
<<if $player.sec_style.submission.collar == "">>
<<wearItem 'obedience_collar' true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
She smiles as you stand obediently — <<if $player.sec_style.submission.collar == "">>collar in one hand, key in the other<<else>>key in hand<</if>>.<br>
<br>
<<if $player.sec_style.submission.collar == "">>
"@@.npc_manager;Very good. <<if $scene.cage != "">>Nice to see you have the self control not to misuse that key, still... best not to risk things, hmm? <</if>>Put on the collar.@@"<br>
<br>
Bringing the collar to your throat, you note its heavy-duty, custom construction. Roughly three centimetres tall it is made of thick and heavy waterproof simulation leather. Interior padding makes it look even more imposing given what you estimate to be a snug, custom fit. A dozen small, shiny prongs stud the interior, equally spaced, nestled in the lining. A trio of rings dangle from the front of the collar making it quite clear that this is not just a fashion accessory.<br>
<br>
Locking with a click you realise you noticed no way to unlock the collar, which means you are even more under the control of your <<=setup.getNpcName('npc_manager', 'title')>>.
<<else>>
"@@.npc_manager;Very good. <<if $scene.cage != "">>Nice to see you have the self control not to misuse that key, though I suppose that should be expected of a collared slave. <</if>>What you are wearing shall be sufficient for our purposes.@@"
<</if>>
<br><br>
<<if $scene.cage != "">>
"@@.npc_manager;Good, good, now you may unlock and remove your chastity device.@@"<br>
<br>
You do as instructed, <<if $player.body_ref.penis>>your <<getWordMyPenis false>> immediately swelling in response to its newfound freedom<<else>>shivering in anticipation as you feel the touch of the nigh air on your exposed <<getWordVagina>><</if>>.
<<elseif $player.sec_style.submission.collar == "">>
"@@.npc_manager;Very good, you really do look so natural with a collar around your throat.@@" She smiles, sparking a strange tingle down your spine.
<<else>>
"@@.npc_manager;Very good, obediently proving that you continue to deserve that lovely collar you wear.@@" She smiles, sparking a strange tingle down your spine.
<</if>>
<br><br>
"@@.npc_manager;Now, for a demonstration.@@"<br>
<br>
You're a bit confused by her remark until you feel a mildly painful shock run from the collar to your neck, the purpose of the small interior studs instantly clear.<br>
<br>
You let out a yelp and recover from the burst of pain.<br>
<br>
"@@.npc_manager;That is the lowest setting the collar is capable of administering — consider it my virtual hand around your throat — if <<if $player.body_ref.penis>>you disobey, say, by failing to <<if $scene.isCage>>cage yourself<<else>>lock yourself back in chastity when instructed<</if>><<else>>were to disobey my instructions<</if>>, I will tighten my grip. Do you understand?@@"<br>
<br>
You quickly nod, not at all eager to find out how much more powerful the shocks might get.<br>
<br>
"@@.npc_manager;Just a safety precaution, it is for your own sake, really.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
<<printThought "Your <<=setup.getNpcName('npc_manager', 'title')>> is so thoughtful...">>
<<elseif setup.getTotalValue("submission") > 10>>
<<printThought "I guess that has a sort of warped logic to it...">>
<<else>>
<<printThought "Safety? But that hurt!">>
<</if>>
<br><br>
"@@.npc_manager;Now, let us continue and get YOU ready for bed!@@"<br>
<br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_4" "Rise and obey." 120>>]
</div>/*#
#desc: night milking prep — check plug
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<if $currentTasks.hasOwnProperty('manager_bed_milking_penis')>>
<<completeTask 'manager_bed_milking_penis' $now true>>
<<elseif $currentTasks.hasOwnProperty('manager_bed_milking_vag')>>
<<completeTask 'manager_bed_milking_vag' $now true>>
<<elseif $currentTasks.hasOwnProperty('manager_bed_milking_both')>>
<<completeTask 'manager_bed_milking_both' $now true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Alright my dear, before we get you all hooked up and securely tucked in, I want to make sure your night is as... fulfilling as possible. So, tell me, is your <<if $fetish.sissy>>sissy <</if>>hole properly plugged?@@"<br>
<br>
<<if $scene.plug>>
You turn around and bend over to show off the <<=setup.getItemName($scene.plug)>> stuffed in your ass.<br>
<br>
<<if $player.body_ref.penis>>
"@@.npc_manager;Ah, wonderful! I should have known you would be all properly prepared. So let us start with getting your cute <<if $fetish.sph>>little <</if>>penis bundled back up in its milker, it must be so scared being out of its cage!@@"<br>
<br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_5" "Get the penis milker." 60>>]
<<else>>
"@@.npc_manager;Ah, wonderful! I should have known you would be all properly prepared. We can move straight on, then.@@"<br>
<br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_5" "Continue." 60>>]
<</if>>
<<else>>
You blush and admit that your ass is presently unoccupied.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns. "@@.npc_manager;No, no, that will not do at all. Hurry up and find something to stuff up in there and then get back here!@@"<br>
<br>
<<set _plugItems = setup.getItemsByFilter("specific", "plug")>>
<<for _i, _id range _plugItems>>
<<set _valSet = "<<set $scene.plug='" + _id + "'>>">>
[<<moveTo "room_bedroom_sleep_milker_permission_first_4_plug" 'Insert your <<=setup.getItemName(_id)>>.' 60 _valSet>>]
<</for>>
<</if>>
</div>/*#
#desc: night milking prep — insert plug
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem $scene.plug true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
Locating your <<=setup.getItemName($scene.plug)>> you slide it into your rear with a gasp while <<=setup.getNpcName('npc_manager', 'formal')>> looks on.<br>
<br>
<<if $player.body_ref.penis>>
"@@.npc_manager;Much better. Now let's start with getting your cute<<if $fetish.sph>> little<</if>> penis bundled back up in its milker, it must be so scared being out of its cage!@@"
<<else>>
"@@.npc_manager;Much better. Now let us move on to your other hole and such.@@"
<</if>>
<br><br>
[<<moveTo "room_bedroom_sleep_milker_permission_first_5" "Get the penis milker." 60>>]
</div>/*#
#desc: night milking prep — milkers
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.milking.times_sleep_milked += 1>>
<<include "equipSleepMilkers">>
<<set $scene.sleepRemoveCage = true>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks.bed_heels_photo.finished && setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $npc_manager.flags.sent_bed_selfie = true>>
<<completeTask 'bed_heels_photo' $now true>>
<</if>>
<<setThreshold 'bondage' 'self_bondage' 'night_bondage'>>
<<set $player.flat.penisMilk = $player.body_ref.penis>>
<<set $player.flat.vagMilk = $player.body_ref.vagina>>
<<set $player.flat.breastMilk = true>>
<<set $player.flat.bondage_level = 1>>
<<set $player.flat.penis_pain = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.body_ref.penis>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream">>
<<elseif !$player.body_ref.penis && $player.body_ref.vagina >>
<<createStackedImage "bedroomMilking" "vagina" "milk">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis>>
Under your <<=ps(setup.getNpcName('npc_manager', 'title'))>> watchful gaze, you slide your already excited <<getWordMyPenis false>> into the cylindrical prison of the milking device, harnessing it securely to your hips, the strap between your legs serving to force your plug a little deeper into your ass.
<</if>>
<<if $player.body_ref.vagina>>
The vaginal attachment covers and fills your entire area, molding to your body as you strap it in place.
<</if>>
<br><br>
"@@.npc_manager;Very good, now for your breasts!@@"<br>
<br>
Teasingly, she lightly fondles her own breasts with a smile as you hurry to align the twin cups into position and then strap them on tight.<br>
<br>
"@@.npc_manager;Excellent and, one moment... yes!@@" She is looking at her phone, finally tapping the screen as you feel a quick burst of stimulation from <<if $player.body_ref.penis && $player.body_ref.vagina>>all four<<else>>all three<</if>> devices. "@@.npc_manager;Perfect! I synchronised the milkers<<if setup.getItemObj($scene.plug).tags.includes("vibrating")>> and your plug<</if>> to your collar, so I now have complete control of the whole package.<<if !setup.getItemObj($scene.plug).tags.includes("vibrating")>> Ah, if only your anal occupant was advanced enough to join in on the fun!<</if>>@@"<br>
<br>
You shudder in a mix of excitement and fearful anticipation at her new degree of control over your body.<br>
<br>
"@@.npc_manager;Now to tuck you in! I may not be there in person, but I expect you to make sure everything is snug and secure. I do not want you moving in the slightest, no matter how intense it gets, lest you injure yourself or break one of your lovely toys!@@"<br>
<br>
The ever-present weight of your collar reminding you of the penalty for disobedience, you hop onto the bed, moving a bit awkwardly as you work around the protruding milking devices and their attached hoses.<br>
<br>
Lying down on the bed, you work your way up from your ankles, strapping, and occasionally restrapping, yourself down to the bed with the intricate built-in restraint system, <<=setup.getNpcName('npc_manager', 'formal')>> ordering you to test each strap and cinch tighter if it fails to be sufficiently restrictive.<br>
<br>
Having made your way up your torso, all that is left is your arms as you reach down to your sides to thread them through the waiting cuffs.<br>
<br>
With a final click your utter helplessness is complete, looking down past your looming milking cups <<if $player.body_ref.penis>> and the towering obelisk of the penis milker <</if>>you can barely see the image of <<=setup.getNpcName('npc_manager', 'formal')>> looking down from the foot of your bed.<br>
<br>
"@@.npc_manager;Wonderful! THAT is how a <<if $fetish.sissy>>sissy<<else>>girl<</if>> should sleep. Good night my dear!@@"<br>
<br>
Your response turns to a gasp as the milkers kick into gear, the first few drops slurped up by the drainage tubes.<br>
<br>
With a final wave she ends the call, leaving you alone in your restraints as the milkers pump and suck irresistibly.<br>
<br>
The sensations going through your body as intense as they are inescapable, you try to thrash or escape, but your bondage holds firm leaving you unable to do much save clench your fists and curl your toes. The first orgasm is not long in coming and you rise slightly off the bed, the milkers not even slowing until they have forced a second, and then a third orgasm from your body.<br>
<br>
Tears streaming down your cheeks, you beg to the silent room for relief only for things to somehow get even more intense as electricity joins the party. Screaming with a pain-fuelled orgasm, you finally pass out, overwhelmed.<br>
<br>
[<<moveTo "room_dreams" "Sleep." 60 "<<set $scene.noPhone=true>><<set $scene.tuckin=true>>">>]
</div>/*#
#desc: morning milking, ignore order to cage
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
The device seemingly reading your thoughts, you have only hesitated in fetching your <<=setup.getItemName($scene.cage)>> for a few moments when your shock collar stuns you with pain, reminding you that your choices are obedience or agony.<br>
<br>
Sinking to the ground as you cry out you try to push back to your feet only for another, even stronger shock to slam into you and freeze the scream in your throat.<br>
<br>
"@@.npc_manager;Foolish <<if $fetish.sissy>>sissy<<else>>girl<</if>>. I said to secure yourself.@@"<br>
<br>
Whimpering in pain you nod, the futility of rebellion more than clear.<br>
<br>
[<<moveTo "event_morning_milking_cage" "Lock your chastity device back on." 60>>]
</div>/*#
#desc: morning milking, cage yourself
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.isItemEquipped('penis_milker')>>
<<set $scene.creamAdd = $player.timebased.milking.cream_supply>>
<<set $player.timebased.milking.cream_storage += $scene.creamAdd>>
<<set $player.timebased.milking.cream_supply = 0>>
<<elseif setup.isItemEquipped('vag_and_penis_milker')>>
<<set $scene.creamAdd = $player.timebased.milking.cream_supply * 1.1>>
<<set $player.timebased.milking.cream_storage += $scene.creamAdd>>
<<set $player.timebased.milking.cream_supply = 0>>
<</if>>
<<if setup.isItemEquipped('breast_milker')>>
<<set $scene.milkAdd = $player.timebased.milking.milk_supply * 1.25>>
<<set $player.timebased.milking.milk_storage += $scene.milkAdd>>
<<set $player.timebased.milking.milk_supply = 0>>
<</if>>
<<include "removeGenitalMilkers">>
<<if setup.checkItemWorn('obedience_collar')>>
<<removeItem "obedience_collar" true>>
<</if>>
<<set $scene.firstMilk = !$player.body_ref.milkEvent && $player.body.breastsize[1] > 0 && $player.body_ref.milkProduction == 0 && $player.flags.mealplan.hormones != "none">>
<<if $scene.firstMilk>>
<<set $player.body_ref.milkEvent = true>>
<<set $player.body_ref.milkProduction = 1>>
<</if>>
<<set $scene.cageShrinkEvent = $player.body.penissize[1] <= 1 && $scene.cage != "" && !setup.getItemObj($scene.cage).tags.includes('secure')>>
<<if $scene.cageShrinkEvent>>
<<if $player.body_ref.shrink_style == 'sph' && $fetish.sph>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<addEvent 'chastity_delivery'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if $scene.isSissyomatic>>
After an initial enveloping, the <<=setup.getItemTypeName('cage')>> shrinks, compressing everything into its normal <<if $scene.isCage>>smooth profile<<else>>snug prison<</if>>.<<if $player.flags.collar.owner =="">> Your collar unlocks and falls from your neck.<</if>>
<<elseif $scene.cageShrinkEvent>>
You reach for your <<=setup.getItemName($scene.cage)>> only to be shocked as it falls right off of your <<getWordMyPenis false>>. You try a second time and the <<=setup.getItemName($scene.cage)>> tumbles to the floor as you realise that you are too small for it to stay on...<br>
<br>
You look up in shock to find <<=setup.getNpcName('npc_manager', 'formal')>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
smiling cruelly down. "@@.npc_manager;Oh my, and I already thought you were small and pathetic... but you seem to have shrunk even further! How humiliating... and yet also so appropriate.@@"
<<else>>
looking down at you. "@@.npc_manager;Hmm, it would seem that device no longer fits.@@"
<</if>>
<<case 'spe'>>
smiling gently down. "@@.npc_manager;Oh my! You seem to have out-grown that device, as it were. How lovely for you!@@"
<<case 'none'>>
"@@.npc_manager;Hmm, it would seem that device no longer fits.@@"
<<default>>
ERROR: unhandled player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<br><br>
You struggle to even think of what to say but, as always, <<=setup.getNpcName('npc_manager', 'formal')>> takes charge.<br>
<br>
"@@.npc_manager;I can see from the expression on your face that you understand what an untenable situation this is — but, fortunately for you, I have just the solution. While you were standing there looking adorably dumbfounded I took the liberty of ordering you a device more appropriate to your new stature — it should be arriving shortly. I shall look forward to seeing you modeling it in person for your inspection.@@"<br>
<br>
Her image fades, leaving you staring down, still in shocked.<br>
<br>
[<<moveTo "room_breakfast" "Eat breakfast while you wait for the delivery..." 180 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<<else>>
Your limp, tired, <<getWordMyPenis false>> easily slides into the <<=setup.getItemName($scene.cage)>>. You hesitate for a moment before squeezing things closed, the <<if setup.isCage()>>cage<<else>>belt<</if>> locking with a familiar click of finality.<br>
<br>
<<if $npc_manager.flags.trustplayerwithkey && !$npc_manager.flags.hascagekey>>
"@@.npc_manager;Good girl — now remember to bring the key with you to work!@@"
<<else>>
"@@.npc_manager;Good girl, now place the key in the safe and close it.@@"
<</if>>
<br><br>
You do as instructed and the safe locks with a gentle click<<if $player.flags.collar.owner =="">>, followed by a similar sound from your collar as it unlocks and falls from your neck<</if>>.
<</if>>
<<if !$scene.cageShrinkEvent>>
<br><br>
You catch it, as you look up at <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;Very nice. Well, I will leave you to it, I would recommend a shower first before you get dressed, <<if $now.getUTCDay() >= 1 && $now.getUTCDay() <= 5>>see you at the office!<<else>>have a relaxing day off!<</if>>@@"<br>
<br>
The monitor goes dark, the broadcast light on the camera switching off as the video call is ended.<br>
<br>
<<if $player.body_ref.milkProduction > 0 && $player.flags.mealplan.hormones != 'none'>>
<<if $scene.firstMilk>>
Checking your output, you are surprised to find you have produced a small amount of breast milk, as well as being you up to <<=setup.cumtomL($player.timebased.milking.cream_storage)>> of<<if $fetish.sissy>> sissy<</if>> "cream."
<<else>>
Checking your output, you are up to <<=Number.parseFloat($player.timebased.milking.milk_storage*.04).toPrecision(3)>> litres of milk and <<=setup.cumtomL($player.timebased.milking.cream_storage)>> of<<if $fetish.sissy>> sissy<</if>> "cream."
<</if>>
<<else>>
Checking your output, you are up to <<=setup.cumtomL($player.timebased.milking.cream_storage)>> of<<if $fetish.sissy>> sissy<</if>> "cream."
<</if>>
<br><br>
<<if $daily.breastsBefore && $daily.breastsBefore != $player.body.breastsize[0] || $daily.penisBefore > $player.body.penissize[0]>>
[<<moveTo "room_get_up" "Start the day." 0 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "room_breakfast" "Start the day." 0 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: night milking prep — call manager
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.reason = "It's too late to change outfits now...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<<if $scene.change>>
<<set _setId = setup.getClothingSetIndex('Sleep Clothes')>>
<<set $player.cutscene.lockinventory = false>>
<<useClothSet _setId>>
<<set $player.cutscene.lockinventory = true>>
<</if>>
<<set $scene.nochastity = false>>
<<if setup.changedGenitals($player,$npc_manager, true) == "" && !($currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished)>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<set $scene.isSissyomatic = $scene.cage != "" && setup.getChastityLevel() == 5>>
<<if $scene.cage != "" && $npc_manager.flags.trustplayerwithkey && !$npc_manager.flags.hascagekey>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo')>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $npc_manager.flags.sent_bed_selfie = true>>
<<completeTask 'bed_heels_photo' $now true>>
<<else>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<completeTask 'bed_heels_photo' $now false>>
<</if>>
<</if>>
<<elseif $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn("cage")>>
<<set $scene.nochastity = true>>
<<set $player.cutscene.allowSpecific='cage'>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<changeHorny -50>>
<</if>>
<</if>>
<<if $scene.nochastity && setup.checkItemTypeWorn("cage")>>
<<set _cage = setup.getItemFromType("cage")>>
<<if $inventory[_cage].status.lock>>
<<set $player.cutscene.allowSpecific=''>>
<<set $player.cutscene.lockinventory = true>>
<<initRoom>>
<<moveTo "room_bedroom_sleep_milker_permission_1_nochastity">>
<</if>>
<</if>>
<<set $scene.tag = setup.getTagFromList(['bold','sissy','modest','cute','male','slutty','fetish'])>>
<<initRoom>>
<<include playerMenu>>
<<if setup.changedGenitals($player,$npc_manager, true) != "" || $currentTasks.hasOwnProperty('task_manager_date_club') && !$currentTasks.task_manager_date_club.finished && setup.hoursToDate($now, $currentTasks.task_manager_date_club.trigger.atFoyer.time.date) < 6 || setup.checkItemWorn("bondage_collar_promo")>>
<<createAdvBGR setup.getBedroomImage()>>
<<else>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_manager","npc_manager_robe")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.change>>
You take a few moments to change into your sleep attire before dialing <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<</if>>
<<if setup.changedGenitals($player,$npc_manager, true) != "">>
The phone rings for a few moments... and then goes to what seems to be a personalised voice-mail message from your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;Hello, my dear — if you are listening to this I presume you are calling for a pre-sleep inspection... unfortunately I have been called in to the office and am unable to dedicate the attention required for such supervision. I do hope this does not leave you too... pent up, but, nevertheless, I wish you a good night.@@"<br>
<br>
Her honeyed words only cause you to
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>strain harder<<else>>drip<</if>> within your prison
<<else>>
<<if $player.body_ref.penis>>stiffen<<else>>drip<</if>> with excitement
<</if>>
as you sigh and consider sleep without her "tucking you in." <br>
<br>
[<<moveTo "room_bedroom" "Back to your bedroom." 1>>]
<<elseif $currentTasks.hasOwnProperty('task_manager_date_club') && setup.hoursToDate($now, $currentTasks.task_manager_date_club.trigger.atFoyer.time.date) < 6 && !$currentTasks.task_manager_date_club.finished>>
The video display remains black, but <<=ps(setup.getNpcName('npc_manager', 'formal'))>> voice comes through sternly. "@@.npc_manager;Going to bed? What do you think you are doing? We are to meet at <<printShopName 'sex_club'>> this evening, have you forgotten? Well now you are reminded, stop playing around in bed and get ready for me to pick you up.@@"<br>
<br>
[<<moveTo "room_bedroom" "Back to your bedroom." 1>>]
<<elseif $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
<<=setup.getNpcName('npc_manager', 'formal')>> appears above you with a look of disappointment. "@@.npc_manager;interested in getting tucked in? Alas, your little chastity trial means that I am unable to handle my half of that equation. Perhaps after you have completed your product test and presented me the key once again.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo "room_bedroom" "Back to your bedroom." 1>>]
<<elseif setup.checkItemWorn("bondage_collar_promo")>>
<<set $scene.tuckin=false>>
The phone rings for a few moments... and then goes to what seems to be a personalised voice-mail message from your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;Hello, my dear — if you are listening to this I presume you are calling for a pre-sleep inspection... unfortunately our little after work activities have put me behind on some other matters, and so I am unable to spare the time to tuck you in. I do hope you can sleep an appreciate this extra denial, and the sacrifices I have made for the sake of your training.@@"<br>
<br>
Her honeyed words only cause you to
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>strain harder<<else>>drip<</if>> within your prison
<<else>>
<<if $player.body_ref.penis>>stiffen<<else>>drip<</if>> with excitement
<</if>>
as you sigh and consider sleep without her "tucking you in." <br>
<br>
[<<moveTo "room_bedroom" "Back to your bedroom." 1>>]
<<elseif $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName('npc_manager', 'formal')>> appears on-screen and almost instantly frowns. "@@.npc_manager;Are you... out of chastity? No, no, no, this is a SEVERE lapse on your part, <<if $npc_manager.flags.hascagekey>>and one that I struggle to explain, given that I have the key literally on me...<</if>> no, I am not going to tolerate this at all. I know this call is about you being let out for the evening... but that presupposes you are IN chastity. Lock yourself up. NOW.@@"<br>
<br>
Her gaze is literally withering, as you feel yourself shrink and soften in fear...<br>
<br>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage && !$inventory[_cage].status.lock>>
<<hint $options "Chastity is of little use if it is not locked!">>
<<else>>
<<hint $options "Use the inventory to put on a chastity device.">>
<</if>>
<<elseif $player.body_ref.vagina && !setup.hasUpgrade($bed, 'vag_milker') || $player.body_ref.penis && !setup.hasUpgrade($bed, 'penis_milker')>>
Her gaze moves from you to the equipment next to your bed and she frowns.<br>
<br>
"@@.npc_manager;No, I am sorry... your most recent surgery means that you now seem to lack the equipment to attend to your... equipment. I will not be tucking you in until you have managed to obtain the proper devices, such would be poor management on my part.@@"<br>
<br>
The screen goes black as she hangs up.<br>
<br>
<<printThought "Guess I need to make another visit to <<printShopName 'mall_sexstore'>>...">><br>
<br>
You sigh and settle in for a "lonely" night.<br>
<br>
[<<moveTo "room_dreams" "Continue." 0 "<<set $scene.tuckin=false>>">>]
<<elseif $scene.plug != "" && ['cute','sissy','fetish'].includes($scene.tag) && setup.checkSleepWear() != "not_sleepwear" && (setup.checkItemWorn('obedience_collar') || $player.flags.collar.owner != "") && (!$currentTasks.hasOwnProperty('bed_heels_photo') || setup.checkItemTypeTag('shoes', ['bedheels']))>>
Calling <<=setup.getNpcName('npc_manager', 'formal')>>, you wait until her image is looking down at you before giving a little twirl, bending over to show off your plugged bum alongside your cute outfit and <<if $player.flags.collar.owner == "npc_manager">>the collar that marks you as her owned slave<<elseif $player.flags.collar.owner != "">>the collar that signifies your owned status<<else>>your contrasting severe collar<</if>>.<br>
<br>
<<if $scene.cage == "">>
<<if $npc_manager.flags.require_chastity>>
Noticing your lack of chastity,
<<if $npc_manager.flags.trustplayerwithkey>>
she snorts. "@@.npc_manager;Hmf, I suppose you are allowed possession of your key... still, you would be far better off if you stayed locked until I supervised you getting prepared for bed.@@"
<<else>>
her gaze narrows. "@@.npc_manager;How are you out of chastity...@@" You watch her finger your key and frown harder. "@@.npc_manager;Well there is nothing for it now save to get you secured properly for bed. But I will be dealing with this at your next morning inspection... out of chastity! Why the mere thought of it, the progress that could be lost...@@"
<</if>>
<br><br>
You quickly put on your milking device before she decides to administer a punishment of some kind.
<<else>>
She nods in approval and motions for you to continue on.
<</if>>
<<elseif $npc_manager.flags.trustplayerwithkey && !$npc_manager.flags.hascagekey && $player.body_ref.penis>>
She smiles at the presence of your chastity device. "@@.npc_manager;Wonderful — nothing proves that my trust in allowing you possession of your key is well-founded than letting me supervise your unlocking, go ahead now.@@"<br>
<br>
Using the key, you remove your chastity device and replace it with the milking apparatus.
<<elseif $scene.isSissyomatic>>
"@@.npc_manager;Hurry up, now, it is time to get ready for bed!@@"<br>
<br>
There is no key for your <<=setup.getItemTypeName('cage')>>, instead some wireless signal causes it to contract, exposing your <<if $player.body_ref.penis && $player.body_ref.vagina>><<getWordMyPenis false>> and <<getWordVagina>><<elseif $player.body_ref.penis>><<getWordMyPenis false>><<else>><<getWordVagina>><</if>> while remaining otherwise locked and filling you. This allows you to secure your crotch attachments in place and you cinch the harness tight before strapping the matching "bra" onto your chest.
<<elseif $npc_manager.flags.require_chastity>>
"@@.npc_manager;Very nice, my dear.@@" She reaches off-screen and you hear the click of the small safe under your bed opening.<br>
<br>
"@@.npc_manager;Hurry up, now, it is time to get ready for bed!@@"<br>
<br>
You rush into action, unlocking your <<if setup.isCage()>>cage<<else>>belt<</if>> to swap it for the crotch devices and cinching the harness tight before strapping the matching "bra" onto your chest.
<</if>>
You flash your <<=setup.getNpcName('npc_manager', 'title')>> a little wink and sashay over to your bed to start applying your restraints.<br>
<br>
You can't help but anticipate the night ahead, your excitement only enhanced by the fact that each restraint you click closed prompts a stimulating buzz from one of your milkers. Finishing off with your wrists to complete your immobilisation, you look towards the end of your bed at the smiling image of your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
[<<moveTo "room_bedroom_sleep_milker_permission_2" "Continue." 60 "<<set $scene.tuckin=true>>">>]
<<else>>
Calling <<=setup.getNpcName('npc_manager', 'formal')>>, you wait until her image is looking down at you.
<<if $scene.plug == "" && !['cute','sissy','fetish'].includes($scene.tag) && setup.checkSleepWear() != "sleepwear" && !setup.checkItemWorn('obedience_collar') && $player.flags.collar.owner == "">>
Her expression immediately turns sour.<br>
<br>
"@@.npc_manager;Really? You call me so unprepared? I do not have time for this, if you want out of your chastity device for the night try again properly attired — collared, plugged and wearing something cute for bed.@@"
<<if setup.checkItemOwned("bed_heels_pink") && !setup.checkItemTypeTag('shoes', ['bedheels'])>>
<br><br>
"@@.npc_manager;Here you are calling me before bed... without bed heels on! Did you think that requirements were either or? Hardly, each brick fits together to build you into a perfect palace of submissive <<if $fetish.sissy>>sissy<<else>>feminine<</if>> perfection.@@"
<<elseif $currentTasks.hasOwnProperty('bed_heels_photo') && !setup.checkItemOwned("bed_heels_pink")>>
<br><br>
"@@.npc_manager;Have you forgotten your task? You are to obtain a pair of bed heels and send me a picture of them before bed... how could you possibly conceive that phoning me before bed without such could be in any way acceptable?@@"
<<elseif !setup.checkItemWorn('obedience_collar') && $player.flags.collar.owner == "">>
<br><br>
"@@.npc_manager;I sent you a collar for a reason — wear it, it is the only way I can ensure proper safely so as to authorise the temporary removal of your chastity device.@@"
<<elseif !['cute','sissy','fetish'].includes($scene.tag)>>
<br><br>
"@@.npc_manager;That outfit...@@" Her lip curls into a sneer. "@@.npc_manager;You may be off the clock, but you are still under my control and what you are wearing is wholly inappropriate to your proper development. I want you in something cute not... THAT.@@"
<<else>>
ERROR: unexpected
<</if>>
<<else>>
She shakes her head in disappointment and sighs.<br>
<br>
"@@.npc_manager;You obviously remember that you should be wearing things to bed... and yet you could not manage the full set. You should be plugged, collared and wearing something cute before you ring me up, I do not have time to walk you through getting dressed every night on top of supervising the status of your chastity device.@@"
<<if setup.checkItemOwned("bed_heels_pink") && !setup.checkItemTypeTag('shoes', ['bedheels'])>>
<br><br>
"@@.npc_manager;Here you are calling me before bed... without bed heels on! Did you think that requirements were either or? Hardly, each brick fits together to build you into a perfect palace of submissive <<if $fetish.sissy>>sissy<<else>>feminine<</if>> perfection.@@"
<<elseif $currentTasks.hasOwnProperty('bed_heels_photo') && !setup.checkItemOwned("bed_heels_pink")>>
<br><br>
"@@.npc_manager;Have you forgotten your task? You are to obtain a pair of bed heels and send me a picture of them before bed... how could you possibly conceive that phoning me before bed without such could be in any way acceptable?@@"
<<elseif !setup.checkItemWorn('obedience_collar') && $player.flags.collar.owner == "">>
<br><br>
"@@.npc_manager;I sent you a collar for a reason — wear it, it is the only way I can ensure proper safely so as to authorise the temporary removal of your chastity device.@@"
<<elseif !setup.checkItemTypeWorn("plug")>>
<br><br>
"@@.npc_manager;What is wrong with you? Your cute rear hole needs to be filled, you know that! You are only torturing yourself by going empty.@@"
<<elseif !['cute','sissy','fetish'].includes($scene.tag)>>
<br><br>
"@@.npc_manager;That outfit...@@" Her lip curls into a sneer. "@@.npc_manager;You may be off the clock, but you are still under my control and what you are wearing is wholly inappropriate to your proper development. I want you in something cute not... THAT.@@"
<<elseif setup.checkSleepWear() != "sleepwear">>
<br><br>
"@@.npc_manager;That is... not sleep-appropriate attire...@@" She shakes her head. "@@.npc_manager;If you wear the wrong thing to bed you are going to have an uncomfortable, fitful rest... and then you will be less effective at work, and then where would we be?@@"
<<else>>
ERROR: unexpected
<</if>>
<</if>>
<br><br>
The screen fades to black, leaving you truly alone.<br>
<br>
[<<moveTo "room_dreams" "Continue." 0 "<<set $scene.tuckin=false>>">>]
<</if>>
</div>/*#
#desc: night milking prep — manager has you put chastity back on
#status: FINISHED 0.8.5.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.differentChastity = setup.getItemFromType("cage") != $npc_manager.flags.lastCage>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> watches like a hawk until your <<=setup.getItemTypeName('cage')>> is locked in place.<br>
<br>
<<if $scene.differentChastity>>
"@@.npc_manager;Not what I last recall you wearing... but I suppose it is better than nothing. Good night. I am very disappointed in you... but at least I can leave you properly locked.@@"
<<else>>
"@@.npc_manager;Much better. And to think of you traipsing around out of chastity... I suppose it is good that I caught you... even if it does leave me quite disappointed that you should be in such a state. Good night.@@"
<</if>>
<br><br>
She cuts the video feed and you meekly slip under the covers.<br>
<br>
[<<moveTo "event_bed_root" "Sleep..." 0 "<<set $player.flat.sleep.bondage_level=0>><<set $player.flat.sleep.breastMilk=false>><<set $player.flat.sleep.penisMilk=false>><<set $player.flat.sleep.vagMilk=false>><<set $player.flat.sleep.penis_pain=false>><<set $player.flat.sleep.tuckin=false>><<set $player.flat.sleep.sleep_routine=0>><<set $player.flat.sleep.vr=''>>">>]
</div>/*#
#desc: night milking prep — manager remotely "tucks you in"
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.milking.times_sleep_milked += 1>>
<<set $scene.penisMilk = $player.body_ref.penis && $fetish.penis_milking>>
<<set $scene.vagMilk = $player.body_ref.vag>>
<<set $scene.breastMilk = $fetish.milking>>
<<include "equipSleepMilkers">>
<<setThreshold 'bondage' 'self_bondage' 'night_bondage'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.body_ref.penis>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream">>
<<elseif !$player.body_ref.penis && $player.body_ref.vagina >>
<<createStackedImage "bedroomMilking" "vagina" "milk">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.cruel > 0>>
<<set $scene.sleep_routine="harsh">>
<<if $npc_manager.anger < 2 && $npc_manager.affection > 5>>
"@@.npc_manager;Despite everything your behaviour of late has actually been quite acceptable... but we both know that that is only the case because I have been treating you with the proper level of unforgiving harshness you require. We shall continue that tonight, I think... enjoy your sleep!@@"
<<else>>
"@@.npc_manager;While I have your... full attention, I would remind you that your behaviour of late has been QUITE unacceptable. You should ponder that fact as you endure this nice, harsh, sleep program I have for you...@@"
<</if>>
<br><br>
Her laughter fades as the monitor goes dark and you are beset by painful shocks from your milkers <<if $scene.plug == 'remote_control_plug'>>and plug<<else>>your ass clenching and spasming around its occupant<</if>>. Your collar joins in on the "fun" to stifle your scream in your throat as the milkers roar to life with too-intense "pleasure" as they thirstily make their harvest.<br>
<br>
Punished, restrained and helpless you cry yourself to sleep as your body is ravaged by machines.
<<elseif $npc_manager.anger > 5 && $npc_manager.affection < 3>>
<<set $scene.sleep_routine="harsh">>
"@@.npc_manager;Well done, if only your other behaviour of late had been of such high quality. Yes, I am a little sorry to say that I have programmed quite a... challenging routine for you tonight. As you endure, I hope you are guided towards a dream of better behaviour in the future. Good night!@@"<br>
<br>
Driving her ominous forecast home no sooner has the monitor gone dark when you are beset by painful shocks from your milkers <<if $scene.plug == 'remote_control_plug'>>and plug<<else>>your ass clenching and spasming around its occupant<</if>>. Your collar joins in on the "fun" to stifle your scream in your throat as the milkers roar to life with too-intense "pleasure" as they thirstily make their harvest.<br>
<br>
Punished, restrained and helpless you cry yourself to sleep as your body is ravaged by machines.
<<elseif $npc_manager.anger < 2 && $npc_manager.affection > 5>>
<<set $scene.sleep_routine="gentle">>
"@@.npc_manager;Lovely. As a reward for your exemplary behaviour of late, I have programmed a nice, soothing routine. A pampering milking, as it were. Pleasant dreams!@@"<br>
<br>
As her image fades, the milkers slowly come to life, gently guiding you towards an intense orgasm. <<if $scene.plug == 'remote_control_plug'>>Your plug massages your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> to push you towards even more ecstatic heights<<else>>Your ass suckles on the plug pressed against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>><</if>>.<br>
<br>
The powerful, calming orgasm slowly fades and you sigh pleasantly. The milking devices scale back to a steady maintenance hum, quietly making their harvest as you drift to sleep.
<<else>>
<<set $scene.sleep_routine="balance">>
"@@.npc_manager;Have a nice night, I tried to strike a balance between maximising production and not inflicting anything too... strenuous on you.@@"<br>
<br>
Her image fades and the milkers come to life, sucking, vibration stimulation rumbling through your body as you are rocketed towards your first orgasm.<br>
<br>
Cumming strong you let out a moan, clenching down on the plug<<if $scene.plug == 'remote_control_plug'>> buzzing away<</if>> in your ass.<br>
<br>
The machines easing off you slowly drift to sleep, your hips occasionally jerking against their restraints as another, milder orgasm courses through you.
<</if>>
<br><br>
<<if $npc_manager.flags.cruel == 0>>
[<<moveTo "room_bedroom_sleep_milker_permission_3" "Request a different routine." 180>>]<br>
<</if>>
[<<moveTo "room_dreams" "Sleep." 60 "<<set $scene.noPhone=true>>">>]
</div>/*#
#desc: night milking prep — ask manager for an alternate routine
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.body_ref.penis>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream">>
<<elseif !$player.body_ref.penis && $player.body_ref.vagina >>
<<createStackedImage "bedroomMilking" "vagina" "milk">>
<</if>>
<div id="invframe" class="scrolltext">
Just before she "hangs up" you ask if she could tweak your programming for the night.<br>
<br>
<<if $npc_manager.anger > 5 && $npc_manager.affection < 3>>
She frowns. "@@.npc_manager;With your behaviour of late? No, you do not get to make requests — you earned this punishment, now take it, and learn from the experience.@@"<br>
<br>
You whimper with regret as the shocks resume and the room goes dark.<br>
<br>
[<<moveTo "room_dreams" "Sleep." 60 "<<set $scene.noPhone=true>>">>]
<<else>>
<<if $npc_manager.anger < 2 && $npc_manager.affection > 5>>
She smiles. "@@.npc_manager;Certainly — this a reward for you after all, what would you prefer?@@"
<<else>>
She raises an eyebrow. "@@.npc_manager;And what did you have in mind?@@"
<</if>>
<br><br>
[<<moveTo "room_bedroom_sleep_milker_permission_4" "You would like a pleasure-filled gentle sleep." 60 "<<set $scene.sleep_routine='gentle'>>">>]<br>
[<<moveTo "room_bedroom_sleep_milker_permission_4" "You would like a blended routine that mixes pain and pleasure for maximum sensation." 60 "<<set $scene.sleep_routine='balance'>>">>]<br>
[<<moveTo "room_bedroom_sleep_milker_permission_4" "You want a torturous routine that will push you to the limit and train you harshly all night." 60 "<<set $scene.sleep_routine='harsh'>>">>]
<</if>>
</div>/*#
#desc: night milking prep — ask manager for an alternate routine
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.happy = $npc_manager.anger < 2 && $npc_manager.affection > 5 || $scene.sleep_routine != "gentle">>
<<switch $scene.sleep_routine>>
<<case "balance">>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<case "harsh">>
<<decrementEmotion 'anger' 'npc_manager' 3>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<switch $scene.sleep_routine>>
<<case "gentle">>
<<if $scene.happy>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Silly! That was what I had planned anyway. Enjoy your night!@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;I think not... and that you would ask for such given your mixed behaviour of late... well, I am afraid that this means that I will be changing things to a much more harsh routine than I had originally planned. I hope you learn the proper lesson from such.@@"
<</if>>
<<case "harsh">>
<<if $scene.happy>>
<<=setup.getNpcName("npc_manager","formal")>> raises an eyebrow in surprise. "@@.npc_manager;That is quite the request, but if you think it would help your training, well... I am hardly going to argue. Have a productive sleep!@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> nods somberly. "@@.npc_manager;It is good that you are taking such measures to make up for your less than stellar behaviour of late. Very good indeed.@@"
<</if>>
<br><br>
She blows you a kiss good-night, just as a harsh wave of shocks slam into your body and you wonder if you made a mistake...
<<case "balance">>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;A prudent choice, variety is, after all, the spice of life... enjoy your night!@@"
<<default>>
ERROR: unexpected scene.sleep_routine <<=$scene.sleep_routine>>
<</switch>>
<br><br>
She hangs up as the machines kick back into gear...<br>
<br>
<<if $scene.happy>>
[<<moveTo "room_dreams" "Sleep." 60 "<<set $scene.noPhone=true>>">>]
<<else>>
[<<moveTo "room_dreams" "Sleep." 60 "<<set $scene.sleep_routine='harsh'>><<set $scene.noPhone=true>>">>]
<</if>>
</div>/*#
#desc: night milking prep: call manager evil
#status: FINISHED 0.9.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.reason = "It's too late to change outfits now...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You attempt to call <<=setup.getNpcName('npc_manager', 'formal')>>, but she does not pick up.<br>
<br>
<<printThought "I guess she's too busy being evil right now to take care of me like this...">><br>
<br>
[<<moveTo "room_bedroom" "Back to your bedroom." 1>>]
</div>/*#
#desc: try to connect webcam to something
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Install Webcam">>
<<set _useItem = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ($player.llocation=="room_livingroom") || ($player.llocation=="room_computer")>>
<<deleteItem 'webcam'>>
<<addUpgradeItem $computer 'webcam'>>
<</if>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
<<if ($player.llocation=="room_livingroom") || ($player.llocation=="room_computer")>>
You connect the Webcam to your computer and install necessary software to use it.
<<else>>
You cannot use your Webcam here.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: try to connect camera to something
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Install Camera">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.installed = ($currentTasks.hasOwnProperty('manager_bed_milking_penis') || $currentTasks.hasOwnProperty('manager_bed_milking_vag') || $currentTasks.hasOwnProperty('manager_bed_milking_both') || $player.flags.camgirl.level >= 3) && $player.llocation=="room_bedroom">>
<<if $scene.installed>>
<<deleteItem 'camera'>>
<<addUpgradeItem $bed 'camera'>>
<</if>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
<<if $scene.installed>>
You mount the webcam to the wall across from the foot of your bed so that it is has a nice clear view.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 15>>
<<printThought "Teehee, I should just leave this on all the time for whoever wants to tune in to watch me!">>
<<else>>
<<printThought "Better make sure I keep this disabled when I'm not using it, don't want someone hacking it and turning me into an unwitting camgirl...">>
<</if>>
<<else>>
You don't think this is a great place for a camera.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use scrap of paper with black box password
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.know_password = true>>
<<deleteItem 'black_box_password'>>
<</if>>
<div id="invframe" class="scrolltext">
You look at the scrap of paper, it is blank save for a six character string in what looks like <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> handwriting: <<=$npc_exgirlfriend.flags.bondage_machine.password>><br>
<br>
<<printThought "Hmm, it looks like some sort of password...">><br>
<br>
You memorise the short password and toss the scrap of paper away.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: bondage machine upgrades arrive
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You hear the doorbell ring, it looks like there's a delivery person waiting outside your door.<br>
<br>
[<<moveTo "event_bondage_upgrades_delivery_2" "Open the door for the delivery." 60>>]
</div>/*#
#desc: bondage machine upgrades delivered
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<addItem 'bondage_upgrades_box2'>>
<<set $scene.naked = false>>
<<if setup.checkNaked()>>
<<set $scene.naked = true>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.naked>>
You open the door, the delivery <<if $options.fem>>woman's<<else>>person's<</if>> gaze flicking up and down your naked body as <<if $options.fem>>she freezes<<else>>they freeze<</if>> in place and finally blink.<br>
<br>
"@@.generic_male1;Package for you...@@"
<<if $options.fem>>
She replys after a few moments as she manages
<<else>>
They reply after a few moments as they manage
<</if>>
to recover some measure of professionalism.<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
You sign for the delivery and wink at them before taking the package back into your flat.
<<else>>
Blushing in embarrassment, you quickly take the package with you back into your flat.
<</if>>
<<else>>
<<if $options.fem>>
You open the door and the delivery woman has you sign for the package. You notice her glance at the shipping label and a slight smile comes on her face. "@@.generic_male1;Have fun!@@" she calls out as she walks
<<else>>
You open the door and the delivery person has you sign for the package. You notice them glance at the shipping label and a slight smile comes on their face. "@@.generic_male1;Have fun!@@" they call out as they walk
<</if>>
up the hall. You glance down at the package yourself and realise this is the dildo upgrades for your bondage fucking machine...
<br><br>
<<printThought "Wait, do they know?">><br>
<br>
You quickly slide back into your flat with your prize.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Close the door." 360 "<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: try to install bed bondage restraints
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Install Bed Restraints">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.llocation=="room_bedroom">>
<<deleteItem 'bed_bondage_gear'>>
<<addUpgradeItem $bed 'bed_bondage_gear'>>
<</if>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
<<if $player.llocation=="room_bedroom">>
You unpack the bondage restraints, looking them over they look quite comfortable, and even more secure. It turns out to be quite simple to install them to your bed and in a few minutes you have things setup for fully restrained "rest." <br>
<br>
<<if setup.getTotalValue("bondage") > 15>>
<<printThought "Mmmm, I can't wait to try sleeping all bound up...">>
<<elseif setup.getTotalValue("bondage") > 10>>
<<printThought "Hmm, restraining myself like that seems kind of exciting...">>
<<else>>
<<printThought "Why am I doing this? Do I really want to bind myself overnight?">>
<</if>>
<<else>>
You don't think this is an appropriate place to install bondage restraints.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: consume chuck egg
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'chuck_egg'>>
<<applyStress -10>>
<<applyFatigue -15>>
<<changeHorny 30>>
<<gainWillpower 1>>
<<setTmpEffect 'drug_chuck_egg'>>
<<set $npc_chuck.flags.ate_egg = true>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
You pop the "egg" you sucked out of <<=setup.getNpcName('npc_chuck', 'suffix')>> into your mouth. Almost immediately the hard exterior starts dissolving and you bite down, mouth exploding with the delicious flavour as you feel a rush of energy run through your body.<br>
<br>
You swallow and smile, feeling newly invigorated and ready to tackle whatever comes next.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: consume bread
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'wonder_bread'>>
<<applyFatigue -20>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
You take a bite of the <<=setup.getItemName("wonder_bread")>>. Impossibly soft and pillowy, the initially neutral flavour, seems to herald a subtlety that has you searching for further depths, taking bite after bite as you ravenously consume the entire loaf.<br>
<br>
As you look with sorrow at the empty package you have a strange feeling wash over you, a need to do more than consume... to destroy, to take a chainsaw to the world, blonde hair billowing in the wind, your large tits heaving with each swing as you...<br>
<br>
You blink. <<printThought "That was weird.">> You wonder if something might have been off about the bread, recalling something about bad grains being blamed for cases of mass insanity... despite it all, the bread did seem to be nourishing, and you feel a bit more energetic from consuming it... though hardly enough to justify the price.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use crystal you found at party
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_data_crystal'
0
'event_manager_theme_data_crystal_1'
true
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
You plug the data crystal into your home computer.<br>
<br>
<<if $player.flags.data_crystal.video>>
[<<moveTo "event_party_data_crystal_video" "Watch the video." 600>>]<br>
[<<moveTo "event_party_data_crystal_document" "Read the document." 600>>]<br>
[<<moveTo "room_computer" "Unplug the crystal." 60>>]
<<else>>
<<if $player.flags.data_crystal.encryption>>
Using the code you were given, you disable the simple encryption and find two files, a video and a document.<br>
<br>
[<<moveTo "event_party_data_crystal_video" "Watch the video." 600>>]<br>
<<if $player.flags.data_crystal.video>>
[<<moveTo "event_party_data_crystal_document" "Read the document." 600>>]<br>
<<else>>
[@@.link_locked;You decide it makes more sense to watch the video first.@@]
<</if>>
<<elseif setup.getTotalValue("smart") >= 15>>
<<printThought "Hmm, this doesn't seem like that complex an encryption... I could maybe crack it myself, or would it be better to get help from an expert?">><br>
<br>
[<<moveTo "event_party_data_crystal_crack_self" 'Try and crack it yourself.' 1800>>]<br>
<<if $npc_technician.relationship.coffee_dates > 0>>
[<<moveTo "event_party_data_crystal_call_tech" 'Call your friend <<=setup.getNpcName("npc_technician","first")>>.' 60>>]<br>
<</if>>
[<<moveTo "room_computer" "Unplug the crystal and worry about it later." 60>>]
<<else>>
Unfortunately you have no idea how to deal with the encryption, the contents locked away out of reach.<br>
<br>
<<printThought "Hmm, I just don't know enough to crack this, or maybe I should ask for help?">><br>
<br>
<<if $npc_technician.relationship.coffee_dates > 0>>
[<<moveTo "event_party_data_crystal_call_tech" 'Call your friend <<=setup.getNpcName("npc_technician","first")>>.' 60>>]<br>
<</if>>
[<<moveTo "room_computer" "Unplug the crystal." 60>>]
<</if>>
<</if>>
<<else>>
You look at the data crystal you were given at the party, you decide it would be best to look at it's contents using your home computer.<br>
<br>
[<<moveTo $locationbeforeuseage "Put the crystal away." 60 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: smart unlock data crystal you found at party
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
It takes a little effort but you manage to crack the simple encryption and find two files; a video and a document.<br>
<br>
[<<moveTo "event_party_data_crystal_video" "Watch the video." 600>>]<br>
<<if $player.flags.data_crystal.video>>
[<<moveTo "event_party_data_crystal_document" "Read the document." 600>>]<br>
<<else>>
[@@.link_locked;You decide it makes more sense to watch the video first.@@]
<</if>>
</div>/*#
#desc: read attachment with party data crystal contents
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Phonecall">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set $scene.dataAlreadyScheduled = $currentTasks.hasOwnProperty('technician_cafe_1') && !$currentTasks.technician_cafe_1.finished>>
<<if !$scene.dataAlreadyScheduled>>
<<include "technician_coffee_date">>
<</if>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_data_crystal'
0
'event_technician_theme_data_crystal'
true
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You call up <<=setup.getNpcName("npc_technician","first")>> about the data crystal you found and whether she could help.<br>
<br>
<<if $scene.dataAlreadyScheduled>>
"@@.npc_technician;Heh, you and data recovery! Sure, just bring it by when we meet for coffee, aight?@@"
<<else>>
"@@.npc_technician;Heh, you and data recovery! Yeah, how about we meet for coffee and I'll take a look, the usual time?@@"
<</if>>
<br><br>
You protest that this time it wasn't your fault!<br>
<br>
"@@.npc_technician;Haha... well, in any case, you know the price for my services...@@"<br>
<br>
You bite your lip and nervously thank her in advance.<br>
<br>
"@@.npc_technician;See ya then, hot stuff.@@" She hangs up.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Put your phone away." 1 "<<set $player.llocation=$locationbeforeusage>><<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: read attachment with party data crystal contents
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You open the attachment <<=setup.getNpcName("npc_manager","formal")>> sent you. There are two files, a video and a document.<br>
<br>
[<<moveTo "event_party_data_crystal_video" "Watch the video." 600>>]<br>
<<if $player.flags.data_crystal.video>>
[<<moveTo "event_party_data_crystal_document" "Read the document." 600>>]<br>
<<else>>
[@@.link_locked;You decide it makes more sense to watch the video first.@@]
<</if>>
</div>/*#
#desc: watch video you found at party
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.data_crystal.video = true>>
<<set $player.flags.data_crystal.encryption = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_rival") setup.charImage("generic","npc_conspirator")>>
<div id="invframe" class="scrolltext">
Loading up the video, you find yourself looking at surveillance footage of <<if $npc_rival.fem == $options.fem>>two <<men>><<else>>a woman and a man<</if>> meeting in a shadowy alleyway. As <<if $npc_rival.fem == $options.fem>>the <<men>><<else>>they<</if>> talk, one of them is being sucked off by a hooded, bound figure whose leash is being held by the <<if $npc_rival.fem == $options.fem>>first <<man>><<else>>woman<</if>>. You recognise the <<man>> being blown as the one who gave you the crystal at the party.<br>
<br>
"@@.generic_male1;So, you are certain you'll be able to... "obtain" the evidence?@@" The <<man>> being blown asks, one hand gently resting on the hooded head of the figure sucking <<him>> off, the motion causing the leash held by the <<if $npc_rival.fem == $options.fem>>other <<man>><<else>>woman<</if>> to sway gently. The obvious quotes around the word obtain telling you that whatever evidence is under discussion is at least doctored, if not a total fabrication.<br>
<br>
"@@.npc_rival;Definitely, and once you turn it in, well... the board will have no choice but to take action, clearing the way for your promotion.@@" The <<if $npc_rival.fem == $options.fem>>other <<man>><<else>>woman<</if>> replies.<br>
<br>
"@@.generic_male1;Wonderful, and how will you make the delivery?@@"<br>
<br>
"@@.npc_rival;You attend that weekly party, correct? Look for my girl, deliver everything to her and she can bring it to me to turn over to the appropriate authority.@@"<br>
<br>
"@@.generic_male1;Perfect only... well, as familiar as I have become with the feel of her lovely lips, I have never laid eyes upon her face. How shall I recognise her?@@"<br>
<br>
The <<man npc_rival>> behind the desk smiles. "@@.npc_rival;Just look for her outfit and collar — I never allow her in public without her arms bound and her collar locked in place. There will be no attachment point owing to me not being at the party to attend to her, but she knows how to perform courier duties without supervision.@@"<br>
<br>
"@@.generic_male1;Wonderful,@@" the <<man>> replies followed by a sharp gasp as <<he>> cums, the hooded slave swallowing softly without spilling a single drop. "@@.generic_male1;She certainly knows her timing, I am half tempted to ask for her instead of my usual payment!@@"<br>
<br>
"@@.npc_rival;If the evidence proves to be what you have promised, I will give you a dozen just like her — once <<=setup.getNpcName("npc_manager","other")>> is out of the way, the whole world will be at our feet.@@"<br>
<br>
"@@.generic_male1;Wonderful, I will certainly look forward to that smug bitch brought low. How she rose so high is beyond me, but with your help we can make it right, get her on her knees where she belongs, see if those lips can curl into a smirk when they're wrapped around my cock.@@" The <<if $npc_rival.fem>>two <<men>><<else>>woman and man<</if>> laugh and the video ends as you recover from that final bombshell — they were conspiring against <<=setup.getNpcName("npc_manager","formal")>>? But how? and why? You quickly open up the document to find out more.<br>
<br>
[<<moveTo "event_party_data_crystal_document" "Read the document." 600>>]
</div>/*#
#desc: read document you found at party
#status: FINISHED 0.7.8.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_embezzlement'
0
'event_manager_theme_embezzlement'
false
>>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_manager_embezzlement'
0
'event_admin_theme_embezzlement'
false
>>
<<set $player.flags.data_crystal.doc = true>>
<<set $player.flags.data_crystal.encryption = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You open up the document which proves to be a long collection of what appears to be accounting data and other corporate paperwork.
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
Fortunately you are more than familiar with corporate paperwork to easily trace things.
<<else>>
It takes some effort but you are able to find the thread running through the documents.
<</if>>
If one were to believe the evidence before you, <<=setup.getNpcName("npc_manager","formal")>> has been embezzling a substantial quantity of money from the company, only there are subtle inconsistencies and you are certain that this evidence has been conjured almost whole-cloth.
<<else>>
<<if setup.getTotalValue("smart") > 5>>
It is all a bit much for you but you are pretty sure that the combined evidence is meant to paint a picture of <<=setup.getNpcName("npc_manager","formal")>> embezzling money — and quite a bit of it, from the company.
<<else>>
Unfortunately this is all just too complicated and you cannot make heads or tails of any of it.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "So they were attempting to frame her for fraud? And then replace her? But why? It sounds like she's in the way of the company making more sex slaves, but how?">>
<<else>>
<<printThought "I don't understand any of this, but according to the tape they're trying to frame <<=setup.getNpcName('npc_manager','formal')>>? But why?">>
<</if>>
<br><br>
[<<moveTo "event_boss_data_crystal_msg" 'Contact <<=setup.getNpcName("npc_boss","formal")>> to turn over evidence.' 60>>]<br>
[<<moveTo "room_computer" "Step away from your computer." 60>>]
</div>/*#
#desc: talk to manager about data crystal
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.flags.data_crystal.manager>>
<<set $scene.hasItem = setup.checkItemInInventory('party_data_crystal')>>
<<set $scene.acceptCrystal = $npc_manager.affection - $npc_manager.anger > 0>>
<<if $scene.hasItem && $scene.acceptCrystal>>
<<deleteItem 'party_data_crystal'>>
<<set $player.flags.data_crystal.manager = true>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_data_crystal' 0 'event_manager_theme_private_data_crystal' false 'privatethemes'>>
<<addEmail $computer
'-REDACTED-'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_manager_data_crystal_01_h'
'mail_manager_data_crystal_01_t'
'{"name":"contents.rar","type":"event","data":{"event":"attachment_data_crystal_contents"}}'
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.hasItem>>
<<if $scene.acceptCrystal>>
You present <<=setup.getNpcName('npc_manager', 'formal')>> with the data crystal you found. "@@.npc_manager;Interesting,@@" she states, turning it in her fingers and then holding it up to the light. "@@.npc_manager;Very interesting, encrypted but I should be able to deal with that... where did you find this? Normally these crystals are reserved for couriering highly sensitive data — tamper-proof, you see.@@"<br>
<br>
[<<moveTo "event_manager_theme_data_crystal_2" "Tell her the whole story." 60 "<<set $scene.lie = false>>">>]<br>
[<<moveTo "event_manager_theme_data_crystal_2" "Say you just found it lying around." 60 "<<set $scene.lie = true>>">>]
<<else>>
You try to present <<=setup.getNpcName('npc_manager', 'formal')>> with the data crystal you found at the party but she is immediately suspicious. "@@.npc_manager;No, I am sorry but... have you forgotten everything you learned at your old job about site security? I do not know what you thought to scheme by tricking me into reading a device of unknown provenance, but whatever it is, you can keep that crystal to yourself. Now, did you have something useful to discuss with me?@@"<br>
<br>
<<printThought "I guess she isn't in a very good mood... guess I should count my blessings she just scolded me rather than a full-on punishment!">><br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
<<if $player.flags.data_crystal.manager>>
You are about to bring up the data crystal you found... when you remember that you swiped it back.<br>
<br>
<<printThought "Best not to draw attention to my theft, in case she hasn't already noticed.">><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> stares, seemingly waiting for you to say something.
<<elseif $scene.acceptCrystal>>
You tell <<=setup.getNpcName('npc_manager', 'formal')>> about the data crystal you found.<br>
<br>
"@@.npc_manager;Hmm, that sounds like one of the crystals the corporation uses for couriering highly sensitive data — tamper-proof, you see. If you would please bring it to me, I can see about unlocking its secrets.@@"<br>
<br>
You apologise for the fact that you do not have it with you and promise to bring it to her some other time.<br>
<br>
<<if $npc_boss.flags.data_crystal >=2>>
<<printThought "Shit, I already gave the crystal to <<=setup.getNpcName('npc_boss', 'formal')>>, I doubt there's any way I can get it back...">><br>
<br>
<</if>>
<<else>>
You start to tell <<=setup.getNpcName('npc_manager', 'formal')>> about the data crystal you found at the party but she cuts you off.<br>
<br>
"@@.npc_manager;I am sorry, my dear, but this sounds like a very tedious story, and I am just far too busy. Did you have something actually important to say to me?@@"<br>
<br>
<<printThought "I guess she isn't in a very good mood... guess I should count my blessings she just scolded me rather than a full-on punishment!">>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: tell manager where you found the data crystal
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_data_crystal')>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<<if $scene.lie>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
You shrug and make up an excuse about finding it in the elevator. She looks at you with a measure of suspicion for a moment but then smiles.<br>
<br>
"@@.npc_manager;I see, well, I shall let you know if I find anything of interest once it has been decoded.@@"
<<else>>
You explain the whole story about how you received it from a mysterious <<man>> at the work party. She frowns slightly but then smiles.<br>
<br>
"@@.npc_manager;I had a feeling there was more to your story than you let on at the time... I guess you wanted a bit of privacy to tell me the full story. I will let you know what I find once I get things decoded. Clearly something very interesting is going on.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: tell manager where you found the data crystal
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are about to bring up the contents of the data crystal you found with its falsified evidence of embezzlement on the part of your <<=setup.getNpcName('npc_manager', 'title')>> but your gaze flickers towards the camera up near the ceiling and you suddenly think better of it.<br>
<br>
<<printThought "I need a safe place to talk to her about things without prying eyes, but where?">><br>
<br>
<<set $scene.contentName = "The continuation of this quest">>
<<include "futureContentBoilerplate">><br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: theme — admin talk the embezzlement scheme against your manager
#status: FINISHED 0.7.8.0
#ignore_spell: c,tellin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
Lowering your voice, you lean in and tell <<=setup.getNpcName('npc_admin', 'first')>> about the falsified evidence you discovered meant to frame <<=setup.getNpcName('npc_manager', 'formal')>> for embezzlement.<br>
<br>
<<if $npc_manager.stage>>
<<He npc_admin>> shakes <<his npc_admin>> head. "@@.npc_admin;The crazy crap these C-levels get up to... I'm tellin' you, <<callPlayer "npc_admin">>, after this is all over I'm gonna need a BIG vacation...@@" <<he npc_admin>> sighs. "@@.npc_admin;Until then, though... I'm with you <<callPlayer "npc_admin">> whatever you need to take down that sumbitch <<=setup.getNpcName('npc_boss', 'last')>>. Whatever it takes.@@"
<<elseif $npc_admin.flags.knowManagerTruth >= 2>>
<<He npc_admin>> looks back at you with concern. "@@.npc_admin;This, on top of everything else? Yo, <<callPlayer "npc_admin">> this job is getting scarier and scarier, you sure you know what you're doing?@@"<br>
<br>
You re-assure <<him npc_admin>> that you're in too deep and that the only way out is through.<br>
<br>
"@@.npc_admin;If you say so — I'm with you to the end either way, you just give the word and let me know if there's anything I can do.@@"<br>
<br>
You thank <<him npc_admin>> for the loyalty and <<he npc_admin>> flashes an awe-shucks smile before ordering another round of drinks to help the two of you relax.
<<else>>
<<He npc_admin>> frowns in concern. "@@.npc_admin;Tell you the truth I'm... less surprised about that than I should be. I'm only seeing the edges of it but there are some serious power games going on at work. I guess it's to be expected when you're dealing with a company worth this much money but I'll tell you frank — I haven't been this worried about what's going on since I was back in the war. You stay safe <<callPlayer "npc_admin">>, best thing the two of us can do is watch one another's backs.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_admin' 300>>
</div>/*#
#desc: use dog treat
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $scene.can_use = true>>
<<if setup.inPassageTag($locationbeforeuseage,"foyer")>>
<<setPetLocation $npc_dog 'room_foyer'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"kitchen")>>
<<setPetLocation $npc_dog 'room_kitchen'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"bathroom")>>
<<setPetLocation $npc_dog 'room_bathroom'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"bedroom")>>
<<setPetLocation $npc_dog 'room_bedroom'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"livingroom")>>
<<setPetLocation $npc_dog 'room_livingroom'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"computer")>>
<<setPetLocation $npc_dog 'room_computer'>>
<<else>>
<<set $scene.can_use = false>>
<</if>>
<<if $scene.can_use>>
<<deleteItem 'dog_treat'>>
<<set $scene.dogEvent = false>>
<<set $daily.dogEvent = false>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<</if>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/dog_treat_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $scene.can_use>>
You pull out the treat. Barely have you unwrapped it when <<=setup.getNpcName("npc_dog","first")>> comes bounding into the room, scarfing it up with glee and then wagging his tail with enthusiasm.<br>
<br>
[<<moveTo $locationbeforeuseage "Continue." 60 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
Now doesn't seem to be the time to play with your pet.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Put the treat away." 60 "<<set $player.llocation=$locationbeforeusage>><<set $roomchange=false>>">>]
<</if>>
<<else>>
You don't see the sense in using the dog treat away from home.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Put the treat away." 60 "<<set $player.llocation=$locationbeforeusage>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: use cat treat
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $scene.can_use=true>>
<<if setup.inPassageTag($locationbeforeuseage,"foyer")>>
<<setPetLocation $npc_cat 'room_foyer'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"kitchen")>>
<<setPetLocation $npc_cat 'room_kitchen'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"bathroom")>>
<<setPetLocation $npc_cat 'room_bathroom'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"bedroom")>>
<<setPetLocation $npc_cat 'room_bedroom'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"livingroom")>>
<<setPetLocation $npc_cat 'room_livingroom'>>
<<elseif setup.inPassageTag($locationbeforeuseage,"computer")>>
<<setPetLocation $npc_cat 'room_computer'>>
<<else>>
<<set $scene.can_use = false>>
<</if>>
<<if $scene.can_use>>
<<deleteItem 'cat_treat'>>
<<incrementEmotion 'affection' 'npc_cat' 2>>
<<set $scene.catEvent = false>>
<<set $daily.catEvent = false>>
<</if>>
<</if>>
<</if>>
<img src="./images/inventory/item/useable/cat_treat_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $scene.can_use>>
You pull out the treat. Barely have you unwrapped it when <<=setup.getNpcName("npc_cat","first")>> comes casually slinking into the room, pretending as if they are disinterested, even as they snatch the treat from your fingers and settle down to nibble at it.<br>
<br>
[<<moveTo $locationbeforeuseage "Continue." 60 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
Now doesn't seem to be the time to play with your pet.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Put the treat away." 60 "<<set $player.llocation=$locationbeforeusage>><<set $roomchange=false>>">>]
<</if>>
<<else>>
You don't see the sense in using the cat treat away from home.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Put the treat away." 60 "<<set $player.llocation=$locationbeforeusage>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: booze + sissy pills -> OD
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.od_event = $player.flags.pink_pill.times_od1 < 3>>
<<set $scene.withdrawl = true>>
<<if $scene.od_event && $npc_manager.stage > 1>>
<<set $player.flags.pink_pill.times_od1 += 1>>
<<set $player.flags.pink_pill.times_booze1 += 1>>
<<if !setup.hasThreshold('bimbofication', 'drug_bimbofication', 'od_mk1')>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'od_mk1'>>
<</if>>
<<applyExperience 'bimbofication' 8 'very' $SEEN_STRANGER>>
<<changeHorny 25>>
<<set $npc_manager.flags.office_unlocked = true>>
<<if setup.hasTmpEffect('sissypill_mk1')>>
<<cancelTmpEffect 'sissypill_mk1'>>
<</if>>
<<set $scene.cureWithdrawl = setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $scene.cureWithdrawl>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<<applyFatigue -50>>
<</if>>
<<setTmpEffect "sissypill_mk1_od">>
<<else>>
<<if $npc_manager.stage == 1>>
<<applyFatigue 100>>
<<else>>
<<if setup.hasTmpEffect('sissypill_mk1')>>
<<cancelTmpEffect 'sissypill_mk1'>>
<</if>>
<<applyStress 10>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if $scene.od_event>>
Your body tingles with goose-bumps as your breasts swell, and <<if $player.body_ref.penis>>your <<getWordMyPenis>> bounces up and down against<<else>>you start dripping down<</if>> your thigh in excitement. <<if $scene.cureWithdrawl>>The lethargy you felt previously is gone as a rush of energy flows through you. <</if>>Giggling and cavorting, you find a level of social confidence far beyond your typical behaviour...
<<if $player.flags.gloryhole.handjob>0>>
Glancing towards the bathroom the reminder of the gloryhole's existence has you instantly thirsty for a nice, thick cock...<br>
<br>
<<printThought "I'm teetering on the edge of danger...">><br>
<br>
[<<moveTo "room_citymap" "Leave while you still have some semblance of wits remaining." 600>>]<br>
[<<moveTo "event_pink_pill_super_gloryhole" "To the gloryhole!" 60>>]<br>
<<else>>
Overcome with a desperate feeling of horny light-headedness you end up stumbling outside for a breath of fresh air. A brief opening appears through the clouds closing around your mind and you consider what to do...<br>
<br>
[<<moveTo "room_citymap" "Leave while you still have some semblance of wits remaining." 600>>]<br>
[<<moveTo "event_pink_pill_super_bar" "Head back in to the bar..." 3600>>]
<</if>>
<<else>>
<<if $npc_manager.stage == 1>>
Booze and drugs mix in your body and you realise why <<=setup.getNpcName("npc_manager","formal")>> advised you NOT to consume alcohol while under the effects of the pills.<br>
<br>
Somehow mustering your willpower you stagger out of the bar, resisting the urge to give into lusts more powerful than anything you had previously imagined.<br>
<br>
<<printThought "No, I just started a new job, this is too much...">><br>
<br>
Somehow you manage to make it home, exhausted, but still in one piece.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<<else>>
Booze and drugs mix in your body and... nothing. Frustrated you wait another minute in eager anticipation of that wonderful wave of mindless, horny pink, but it doesn't come.<br>
<br>
<<printThought "Am I building up a tolerance? Maybe it I took more pills, surely enough of the yummy drugs could make me happy...">><br>
<br>
Your night feels ruined as you feel the booze actually ERASE the pleasant background effects of the normal pill...<br>
<br>
<<printThought "This isn't fair! I really need to get more pills..." >><br>
<br>
Annoyed and frustrated the sounds of the bar are starting to give you a headache and you decide to head home instead.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<</if>>
<</if>>
</div>/*#
#desc: gloryhole frenzy under effects of pink pills triggered from gloryhole
#status: FINISHED 0.7.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.pink_pill.times_booze1 += 1>>
<<if !setup.hasThreshold('bimbofication', 'drug_bimbofication', 'od_mk1')>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'od_mk1'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_26'
0
'event_psychiatrist_session_overdose_mk1'
false
>>
<<if $npc_manager.stage > 1>>
<<applyExperience 'bimbofication' 18 'terrible' $INCOGNITO>>
<<applyExperience 'penis' 17 'terrible' $INCOGNITO>>
<<applyExperience 'oral' 10 'very' $INCOGNITO>>
<<applyExperience 'cum' 12 'terrible' $INCOGNITO>>
<<applyFatigue 60>>
<<else>>
<<changeHorny 25>>
<<applyFatigue 100>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage == 1>>
Booze and drugs mix in your body and you realise why <<=setup.getNpcName("npc_manager","formal")>> advised you NOT to consume alcohol while under the effects of the pills.<br>
<br>
Somehow mustering your willpower you stagger out of the bar, resisting the urge to give into lusts more powerful than anything you had previously imagined.<br>
<br>
<<printThought "No, I just started a new job, this is too much...">><br>
<br>
Somehow you manage to make it home, exhausted, but still in one piece.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<<else>>
Sitting in the Usual Place gloryhole the effects of booze and drugs slam into you like a train. You are filled with need, a thirst unlike any other, parched throat paradoxically crying out for the salty taste of cum. In moments, you are on your knees in front of the gloryhole, mouth open and ready to receive COCK.<br>
<br>
You fortunately do not have long to wait. Perhaps the mix of drugs pumping through your body is sending off some sort of pheromonal beacon because clients seem never-ending as you find yourself sucking a series of increasingly delectable penises.<br>
<br>
Time blurs, but eventually the hole is empty, your sadness opening a door for the odd thought to resurface along with the realisation of how tired your debauchery has left you. Somehow you drag your exhausted body home before you can get into any more trouble.<br>
<br>
[<<moveTo "room_foyer" "Home" 3600>>]
<</if>>
</div>/*#
#desc: gloryhole frenzy under effects of pink pills triggered from bar
#status: FINISHED 0.7.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 18 'terrible' $INCOGNITO>>
<<applyExperience 'penis' 17 'terrible' $INCOGNITO>>
<<applyExperience 'oral' 10 'very' $INCOGNITO>>
<<applyExperience 'cum' 12 'terrible' $INCOGNITO>>
<<applyFatigue 60>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
Stumbling into the Usual Place gloryhole you barely have the presence of mind to close the stall door behind before you drop to your knees in front of the gloryhole, mouth open and ready to receive COCK.<br>
<br>
You fortunately do not have long to wait. Perhaps the mix of drugs pumping through your body is sending off some sort of pheromonal beacon because clients seem never-ending as you find yourself sucking a series of increasingly delectable penises.<br>
<br>
Time blurs, but eventually the hole is empty, your sadness opening a door for the odd thought to resurface along with the realisation of how tired your debauchery has left you. Somehow you drag your exhausted body home before you can get into any more trouble.<br>
<br>
[<<moveTo "room_foyer" "Home" 3600>>]
</div>/*#
#desc: pass out from booze + lingering OD on sissy pills
#status: FINISHED 0.7.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasThreshold('bimbofication', 'drug_bimbofication', 'od_mk1_super')>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'od_mk1_super'>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_26.5'
0
'event_psychiatrist_session_overdose_mk1_super'
false
>>
<</if>>
<<applyExperience 'bimbofication' 18 'terrible' $INCOGNITO>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks['bed_heels_photo'].finished>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<completeTask 'bed_heels_photo' $now false>>
<<set _nextDate = setup.setNextDate($now, 1, 23, 50)>>
<<addTaskById 'bed_heels_photo' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, ???">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
The mere taste of alcohol is like a catalyst causing the <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> drugs lingering in your body to activate with a roar... no, a moan. Every beat of your now rapidly pounding heart pumps glorious pinkness through your body; you don't just want sex you need it and you stumble your way to the gloryhole and then it all goes dark. You think you fucked and sucked, but you can't even be sure, imagination and reality blurring as the combination of drugs running through your body takes over.<br>
<br>
Did your servicing of every cock that pokes through the hole in front of your mouth escalate to "accidentally" raising your ass to be level with the hole behind you? You can't be sure. In your pink fog, lust-induced state, you don't care, you just start humping against the intruder as you envision lines forming for either of your ends. It feels like only minutes have passed since you ended up here, but eventually the bar closes, and soon the yummy splooge producers leave you in the stall, filled and covered with cum.<br>
<br>
Your consciousness fades into dreams... or maybe it was a dream the whole time?<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_pink_pill_super_od_2" "Pass out." _timeToMorning>>]
</div>/*#
#desc: pass out from booze + OD on sissy pills (take pills 2nd)
#status: FINISHED 0.7.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.stage == 1>>
<<applyExperience 'bimbofication' 15 'normal' $INCOGNITO>>
<<applyFatigue 50>>
<<playerOrgasm>>
<<else>>
<<if !setup.hasThreshold('bimbofication', 'drug_bimbofication', 'od_mk1_super')>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'od_mk1_super'>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_26.5'
0
'event_psychiatrist_session_overdose_mk1_super'
false
>>
<</if>>
<<applyExperience 'bimbofication' 18 'terrible' $INCOGNITO>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks['bed_heels_photo'].finished>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<completeTask 'bed_heels_photo' $now false>>
<<set _nextDate = setup.setNextDate($now, 1, 23, 50)>>
<<addTaskById 'bed_heels_photo' _nextDate>>
<</if>>
<<if $now.getUTCHours() < 5>>
<<set _nextMorning = setup.setNextDate($now, 0, 5, 0)>>
<<else>>
<<set _nextMorning = setup.setNextDate($now, 1, 5, 0)>>
<</if>>
<<set $scene.timeToMorning = setup.secondsToDate($now, _nextMorning)>>
<<cancelAllTasks $scene.timeToMorning>>
<<if $now.getUTCDay() == 5 && $events.hasOwnProperty('event_admin_bar_call')>>
<<include "adminGymCheck">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, ???">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage == 1>>
As the pill dissolves, you can feel it combining with the booze running through your system. Instead of a happy, horny high, however you find yourself feeling nauseous and drained, wanting nothing more than to lie down in your bed.<br>
<br>
[<<moveTo "room_foyer" "Go home." 600>>]
<<else>>
<<if $scene.boozeSecond>>
You knock back another drink and feel the alcohol work dark magic with the excess of drugs already in your system. Your senses narrow, every though save for raw lust crumbling away. You blink and you've suddenly made your way into the bathroom, a deep need driving you towards a depraved destination...<br>
<br>
<<else>>
Swallowing the final pill, it combines with the woozy effects of booze.
<</if>>
Your attention narrows to naught but the gloryhole, a glorious, delicious, juicy <<getWordPenis>> appearing as if on cue. Your lips wrapped around the wonderful cock, you soon lose track of everything. You think you fucked and sucked, but you can't even be sure, imagination and reality blurring as the combination of drugs running through your body washes away almost everything.<br>
<br>
Did your servicing of every cock that pokes through the hole in front of your mouth escalate to "accidentally" raising your ass to be level with the hole behind you? You can't be sure. In your pink fog, lust-induced state, you don't care, you just start humping against the intruder as you envision lines forming for either of your ends. It feels like only minutes have passed since you ended up here, but eventually the bar closes, and soon the yummy splooge producers leave you in the stall, filled and covered with cum.<br>
<br>
Your consciousness fades into dreams... or maybe it was a dream the whole time?<br>
<br>
[<<moveTo "event_pink_pill_super_od_2" "Pass out." $scene.timeToMorning>>]
<</if>>
</div>/*#
#desc: put back under after passing out from sissy pill OD
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "Hospital Room">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.pink_pill.times_booze1 += 1>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<clearTempEffects $tempEffects false>>
<<setTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<createAdvBGR "./images/locations/hospital.png">>
<div id="invframe" class="scrolltext">
You wake up to find yourself in a brightly lit room, blinking as your eyes adjust you try to sit up only to find that you are unable to move. Starting to panic, you begin to struggle against what appear to be thick, clinical restraints as your realise you are in a hospital room of some sort.<br>
<br>
As your panic rises, a nurse appears and adjusts a machine. Your vision fades as calmness washes over you. Your final thought is a slow realisation that her skimpy outfit had a peculiar sheen to it...<br>
<br>
[<<moveTo "event_pink_pill_super_od_3" "Rest." 3600>>]
</div>/*#
#desc: wake up for real after sissy pill super OD
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "Hospital Room">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.pink_pill.super_od = true>>
<<set $scene.firstMet = !$npc_work_doctor.profile>>
<<set $npc_work_doctor.profile = true>>
<<if !$currentTasks.hasOwnProperty("event_doctor_first_appointment")>>
<<if $now.getUTCDay() >= 2>>
<<set _daysTill = 9-$now.getUTCDay()>>
<<else>>
<<set _daysTill = 2-$now.getUTCDay()>>
<</if>>
<<set _nextDate = setup.setNextDate($now, _daysTill, 18, 0)>>
<<addTaskById 'event_doctor_first_appointment' _nextDate>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'work_doctor' 'theme_psychiatrist_doctor_0'
0
'event_psychiatrist_session_work_doctor'
false
>>
<<set $npc_manager.flags.seenMkOneOD = true>>
<<set _pillCount = _daysTill + 1>>
<<addItem 'personal_medication' _pillCount>>
<<if $player.timebased.fatigue > 50>>
<<set $player.timebased.fatigue = 50>>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/hospital.png" setup.charImage("npc_work_doctor") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You wake again to find yourself not alone. At the foot of your bed stands <<=setup.getNpcName("npc_manager","formal")>> and <<if !$scene.firstMet>><<=setup.getNpcName("npc_work_doctor","formal")>>.<<elseif $npc_barista.flags.hasOwnProperty('video') && $npc_barista.flags.video.viewed>>one of the <<men npc_work_doctor>> from the video <<=setup.getNpcName("npc_barista","nickname")>> sent you to, <<=setup.getNpcName("npc_work_doctor","formal")>>.<<else>>a serious looking older <<man npc_work_doctor>> in a lab coat — perhaps a doctor?<</if>><br>
<br>
"@@.npc_manager;Welcome back@@" she says with a smile, and a note of concern. "@@.npc_manager;You gave us something of a scare there, I told you alcohol would react with those pills. Very foolish of you, but you should be all better now, right?@@"<br>
<br>
You feel a shot of guilt at her reminder of what must have brought you to this point, even as your fuzzy memories of the previous night are filled with nothing but overwhelming, if indistinct, pleasure. Trying to sit up, you find yourself again drawn up short by the heavy clinical restraints holding you to the bed.<br>
<br>
"@@.npc_work_doctor;Sorry about those. Safety precaution, you understand. Nurse, please unstrap the patient.@@"<br>
<br>
Appearing on command, a nurse begins moving around your bed not just unbuckling, but unlocking each thick, excessively secure leather restraint. Even more distracting than the excessive security of your binds is the nurse herself — dressed head to toe in shiny, skin-tight latex, even her face completely covered and her eyes and mouth hidden to give her an alien appearance.<br>
<br>
Noticing your wide-eyed stare, <<=setup.getNpcName("npc_manager","formal")>> explains. "@@.npc_manager;You are in one of the company's private medical bays. Pay no mind to the uniforms, it may look somewhat bizarre, but it is purely for efficiency and safety, the full body covering allows our nurse-assistants to avoid contamination and remain safe in hazardous situations. Obviously you have nothing to be concerned for, but it is more efficient, and fair, to standardise all nurse uniforms around being prepared to handle the more extreme cases.@@"<br>
<br>
"@@.npc_work_doctor;Quite so,@@" the <<man npc_work_doctor>> adds as you notice <<him npc_work_doctor>> making no effort to hide a leering glance as the nurse finishes up and departs the room with a silent bow. A bow that causes her latex uniform to stretch around what is clearly some sort of large butt plug in her rear.<br>
<br>
"@@.npc_manager;So, as I was saying — you had quite the accident, after pumping your stomach we did some tests and well... I will let <<=setup.getNpcName("npc_work_doctor","other")>> deliver the diagnosis.@@"<br>
<br>
"@@.npc_work_doctor;Your abuse of <<=setup.getItemName('sissy_pill_mk1')>> has had quite an effect on your body. Obviously there was the initial physical extreme reaction from your first overdose, but you appear to have answered your body's accrual of tolerance by pushing things even further, somehow getting hold of far more material than you should have had access too, and then combining those with alcohol... honestly you are lucky to still be you. If not for my swift medical intervention, you could well be nigh indistinguishable from a blow-up sex doll right now.@@"<br>
<br>
"@@.npc_manager;And then who would manage my schedule?@@" <<=setup.getNpcName("npc_manager","formal")>> interjects, her joke lightening the mood even as it seems tinged with concern for your well-being.<br>
<br>
"@@.npc_work_doctor;Quite...@@" <<he npc_work_doctor>> replies, looking slightly askance at <<=setup.getNpcName("npc_manager","formal")>> before continuing on "@@.npc_work_doctor;Now, we were able to act swiftly enough that long-term effect can be minimised... though you will find the drug nigh ineffective if you ever manage to take more of it. To maintain this control, however, you will be going on a fresh, personalised treatment plan. Nothing complicated, just a pill every day, but that pill will be one customised to your personal needs. This means you will need to meet me at least once a week so that I can monitor your status and tweak dosages as necessary. After all, we would not want you ending up... unable to perform your duties.@@"<br>
<br>
You sense an unspoken tension between <<=setup.getNpcName("npc_work_doctor","formal")>> and your <<=setup.getNpcName("npc_manager","title")>> and you ask if this means you will no longer be subject to your previous cravings and be able to get back to normal.<br>
<br>
"@@.npc_work_doctor;If you follow the treatment plan that I administer, yes, everything will turn out just perfect. Speaking of, here is your initial prescription@@" <<he npc_work_doctor>> hands you a pill bottle. "@@.npc_work_doctor;One a day. I have scheduled a check-in on Tuesday evening to run tests and ensure everything is on track.@@"<br>
<br>
Holding for a moment to see if you have any further questions, <<he npc_work_doctor>> gives a curt nod and then departs to leave you and <<=setup.getNpcName("npc_manager","formal")>> alone.<br>
<br>
[<<moveTo "event_pink_pill_super_od_4" "Continue." 300>>]
</div>/*#
#desc: manager chides you for ODing on sissy pill
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "Hospital Room">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<</if>>
<<createAdvBGR "./images/locations/hospital.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.affection > $npc_manager.anger>>
Once <<=setup.getNpcName("npc_work_doctor","formal")>> is out of the room, <<=setup.getNpcName("npc_manager","formal")>> takes a seat on the edge of your bed, reaching down to brush your cheek as her voice takes on a more comforting tone. "@@.npc_manager;Do be careful in the future. You are far from indestructible and I would hate to see you further... damaged due to misuse of drugs. Perhaps you are overly sensitive to medication? As I do not know how you managed to get hold of so many pills for something like this to happen, but that is out of my hands now. Take care as you follow <<=ps(setup.getNpcName("npc_work_doctor","other"))>> instructions if you wish to remain safe.@@"<br>
<br>
Leaning over she plants a kiss on your forehead that leaves you speechless until well after she has left the room. Getting to your feet and locating your clothes you reflect on her peculiar phrasing, drawing the conclusion that she was somehow warning you about <<=setup.getNpcName("npc_work_doctor","formal")>>...
<<else>>
With <<=setup.getNpcName("npc_work_doctor","formal")>> out of the room, <<=setup.getNpcName("npc_manager","formal")>> gives you a final stern glance. "@@.npc_manager;Please show more care in the future. If you are out of commission, I am left without a secretary so no more of this recklessness. I do not know how you managed to get hold of so many pills, but that is out of my hands now. Take care as you follow <<=ps(setup.getNpcName("npc_work_doctor","other"))>> instructions if you wish to remain safe.@@"<br>
<br>
Turning on her heels, she leaves the room. Pulling the sheets aside to display your naked body, you rise to your feet and locate your clothes as you reflect on her peculiar phrasing, drawing the conclusion that she was somehow warning you about <<=setup.getNpcName("npc_work_doctor","formal")>>...
<</if>>
<br><br>
[<<moveTo "room_foyer" "Go home." 300>>]
</div>/*#
#desc: booze + sissy pills bar OD
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 14 'very' $SEEN_STRANGER>>
<<changeHorny 25>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
The world goes pink as you find yourself drawn to the dance floor. You let it go, writhing with abandon, grinding against any <<if $options.fem>>woman <</if>>who will let you as your every thought and action is driven by lust.<br>
<br>
All but dry humping there on the dance floor the world closes in around you, thoughts fleeting and unremembered as the night rolls on until things finally become too much and the bartender has someone shove you in a cab to send you home.<br>
<br>
[<<moveTo "room_foyer" "Home" 1800>>]
</div>/*#
#desc: take pink pill first time
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'pink_pill' 1 false true>>
<<if $player.sec_style.body.pinkpill>>
<<if !setup.checkItemInInventory('pillbottle')>>
<<addItem 'sissy_pill_mk1' 1 false true>>
<</if>>
<<initRoom>>
<<moveTo "room_use_sissy_pill_mk1">>
<<else>>
<<changeHorny 50>>
<<setTmpEffect 'sissypill'>>
<<if !$player.sec_style.body.pinkpill>>
<<set $player.sec_style.body.pinkpill = "voluntary">>
<</if>>
<<if !$player.flags.atesissypill>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
>>
<<set $player.flags.atesissypill = true>>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<if $player.flags.mealplan.hormones == "lots">>
<<set $player.flags.sissypill_and_hormones = true>>
<</if>>
<</if>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
You spend just a few moments inspecting the small pink pills<<if $fetish.sissy>>there is a small "SISSI" written on the side of each pill... but that's just an abbreviation for Social Interaction Service Syndicate Inc. You place<<else>>before placing<</if>> one in your mouth. You feel it tingle on your tongue for a moment before you swallow it.<br>
<br>
<<printThought 'Hmm... tastes faintly like bubblegum and cotton candy. Maybe a placebo? Or some kind of candy?'>><br>
<br>
A bare few seconds pass before you realise that no, it is definitely NOT a placebo. You start feeling really strange. Heat swells up from underneath your skin, making your whole body burn up. Your chest tingles and you feel a huge pressure building. Then you begin to shiver from cold and excitement at the same time, unable to comprehend what's happening to you. You're horny like you've never been before,
<<if setup.getItemTypeName("cage")=="">>
<<if $player.body_ref.penis>>
making your <<getWordMyPenis>> twitch and jump up and down with excitement, spurting with enthusiasm, but remaining yet hard.
<<else>>
making you drip with lust down your leg.
<</if>>
<<elseif $player.body_ref.penis>>
inside the prison of the <<=setup.getItemTypeName("cage")>> your <<getWordMyPenis>> strains and swells, dripping and spurting your excitement without the feelings of horniness abating.
<<else>>
your lust drips past your protective chastity shield and down your leg.
<</if>>
<br><br>
<<printThought "Oh my <<getWordGod>>! What is happening to me?">><br>
<br>
[<<moveTo "szene_pink_pill" 'Continue.' 30>>]
</div>/*#
#desc: effects of pink pill kick in
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.breastGrow = $player.flags.sissypill_and_hormones && $player.body.breastsize[0] < $player.body_ref.breastMax.hormone_and_pill>>
<<if $scene.breastGrow>>
<<set $player.body.breastsize[1] += 2>>
<</if>>
<<if $scene.breastGrow && !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "voluntary">>
<</if>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if ($player.body.breastsize[1]<2) && ($player.body.breastsize[2]>0)>>
No, there has to be something wrong with your eyes. And your hands. Maybe all of your senses. Because you think you observe your previously flat chest slowly start to swell. You stare in disbelief at the two perfectly formed A-cup breasts attached to your body. Are these fake? You try to pinch yourself in the nipples to check if you're dreaming.<br>
<br>
<<printThought "Aaahh, that hurt!">><br>
<br>
More a moan than a cry of pain, your new breasts seem to be very sensitive, simply touching them gives you way too much sensory feedback compared to what you're used to. Your disbelief filters away in favour of simple panic. You have no idea what's going on with your body. You try to focus to ponder your options, but find it kind of hard to get any straight thought at all. The changes seem to be both physical and psychological. Maybe some consciousness manipulating drug? But these feel too real. You should really confront <<=setup.getNpcName('npc_manager', 'formal')>> about this, after all she gave the pill to you!
<<elseif $scene.breastGrow>>
You touch your chest and shudder, the pill must have turbo-charged the heavy dose of hormones you've been taking because your breasts have grown and you have a feeling it is not a temporary thing. You try to focus to ponder your options, but find it kind of hard to hold on to a thought for more than a few moments. There definitely seem to be some psychological changes as well. Maybe some consciousness manipulating drug? You should really confront <<=setup.getNpcName('npc_manager', 'formal')>> about this, after all she gave the pill to you!
<<else>>
The pressure fades away after a while, but besides your nipples feeling a little bit more fluffy nothing else happens. You try to focus to ponder your options, but find it kind of hard to hold on to a thought for more than a few moments. The changes seem to be psychological. Maybe some consciousness manipulating drug? You should really confront <<=setup.getNpcName('npc_manager', 'formal')>> about this, after all she gave the pill to you!
<</if>>
<br><br>
<<if $scene.fromEmail>>
[<<moveTo "room_livingroom" "Take a deep breath and do something else." 60 "<<set $scene.fromEmail=false>>>">>]
<<else>>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage 'Do something else.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: take pink pill (repeatable)
#status: FINISHED 0.4.0.0
#ignore_spell: mk1,mk2
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<if !setup.hasTmpEffect('sissypill_mk2') && !setup.hasTmpEffect('sissypill_mk2_od') && !setup.hasTmpEffect('sissypill_mk1_od') && !setup.hasTmpEffect('super_mk2') && !setup.hasTmpEffect('sissypill_2_eternal') && !setup.hasTmpEffect('sissypill_3_eternal') && !setup.hasTmpEffect('sissypill_pure') && !setup.hasTmpEffect('sissypill_pure_eternal')>>
<<if (setup.hasTmpEffect("sissypill_mk1") || setup.hasTmpEffect("sissypill_eternal")) && !setup.hasTmpEffect('sissypill_mk1_od')>>
<<initRoom>>
<<moveTo "room_use_sissy_pill_mk1_2">>
<<else>>
<<if setup.checkItemInInventory('pillbottle')>>
<<if setup.checkItemInInventory('sissy_pill_mk1')>>
<<deleteItem 'sissy_pill_mk1' 1>>
<</if>>
<<else>>
<<if setup.checkItemInInventory('sissy_pill_mk1')>>
<<deleteItem 'sissy_pill_mk1'>>
<<set $scene.pillsRemaining = setup.getItemCount('sissy_pill_mk1')>>
<<if setup.checkItemInInventory('sissy_drug_1')>>
<<set $scene.pillsRemaining += setup.getItemCount('sissy_drug_1')>>
<</if>>
<<elseif setup.checkItemInInventory('sissy_drug_1')>>
<<deleteItem 'sissy_drug_1'>>
<<set $scene.pillsRemaining = setup.getItemCount('sissy_drug_1')>>
<<else>>
ERROR: expecting sissy_pill_mk1 or pill bottle and found neither!
<</if>>
<</if>>
<<applyExperience 'bimbofication' 10 'normal' $ALONE>>
<<if !setup.hasTmpEffect('sissypill_mk1_od')>>
<<if $player.flags.pink_pill.times_od1 < 1>>
<<applyStress -20>>
<<changeHorny 50>>
<<setTmpEffect 'sissypill_mk1'>>
<<set $scene.cureWithdrawl = setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $scene.cureWithdrawl>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<<applyFatigue -50>>
<</if>>
<<else>>
<<applyStress 5>>
<</if>>
<<if $player.flags.mealplan.hormones == "lots" && !($player.flags.pink_pill.times_od1 > 5 || $player.flags.sissypill_and_hormones)>>
<<playerOrgasm>>
<<set $scene.first_sissypill_and_hormones = !$player.flags.sissypill_and_hormones>>
<<set $player.flags.sissypill_and_hormones = true>>
<<set $player.timebased.horny = 80>>
<<applyFatigue 30>>
<<applyExperience 'bimbofication' 18 'terrible' $ALONE>>
<<applyExperience 'cum' 15 'terrible' $ALONE>>
<<set $scene.breastGrow = $player.body.breastsize[0] < $player.body_ref.breastMax.hormone_and_pill>>
<<if $scene.breastGrow>>
<<set $scene.first_breasts = $player.body.breastsize[0] == 0>>
<<if $scene.first_breasts>>
<<set $player.body.breastsize[1] = 4>>
<<else>>
<<set $player.body.breastsize[1] += 2>>
<</if>>
<<if $player.body.breastsize[1] > $player.body_ref.breastMax.hormone_and_pill>>
<<set $player.body.breastsize[1] = $player.body_ref.breastMax.hormone_and_pill>>
<</if>>
<<set $scene.lips = $player.body.lips[1] < 1>>
<<if $scene.lips>>
<<set $player.body.lips[1] = 1>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "voluntary">>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<<else>>
<<if setup.checkItemInInventory('pillbottle')>>
<<if setup.checkItemInInventory('sissy_pill_mk1')>>
<<deleteItem 'sissy_pill_mk1' 1>>
<</if>>
<<else>>
<<if setup.checkItemInInventory('sissy_pill_mk1')>>
<<deleteItem 'sissy_pill_mk1'>>
<<set $scene.pillsRemaining = setup.getItemCount('sissy_pill_mk1')>>
<<if setup.checkItemInInventory('sissy_drug_1')>>
<<set $scene.pillsRemaining += setup.getItemCount('sissy_drug_1')>>
<</if>>
<<elseif setup.checkItemInInventory('sissy_drug_1')>>
<<deleteItem 'sissy_drug_1'>>
<<set $scene.pillsRemaining = setup.getItemCount('sissy_drug_1')>>
<<else>>
ERROR: expecting sissy_pill_mk1 or pill bottle and found neither!
<</if>>
<</if>>
<</if>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if setup.hasTmpEffect('sissypill_mk2') || setup.hasTmpEffect('sissypill_mk2_od')>>
You pop one of the pink pills and feel... nothing. It would seem that your earlier abuse has rendered you immune, or perhaps the mk2 version is doing its job TOO well in blotting out their effects.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif setup.hasTmpEffect('sissypill_eternal')>>
<<if setup.hasTmpEffect("tipsy") || setup.hasTmpEffect("drunk")>>
You pop another pill, searching for that intense rush of happy warmth only to be overcome by a separate feeling, one of nausea.<br>
<br>
Just as you start to wretch another feeling kicks in, the drugs intermingling with the booze already in your system. You try to reach out and stabilize yourself against a nearby wall, but it's like moving in slow motion as your entire world fades to lust.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_pink_pill_super_od_2" "Pass out." _timeToMorning>>]
<<else>>
You take a pill... and feel no change, which you suppose makes sense, given that you're already enjoying the effects of an eternalised version of the drug.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
<<elseif setup.hasTmpEffect('super_mk2') || setup.hasTmpEffect('sissypill_2_eternal') || setup.hasTmpEffect('sissypill_3_eternal') || setup.hasTmpEffect('sissypill_pure') || setup.hasTmpEffect('sissypill_pure_eternal')>>
You take a pill... and feel no change, which you suppose makes sense, given that you're already enjoying the effects of a far stronger version of the drug.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif setup.hasTmpEffect('sissypill_mk1_od')>>
You pop one of the pink pills hoping that it will make you feel even better than the cotton-candy happy fuzziness that currently suffuses you. Unfortunately this "logic" is unsound as you instantly feel a bit queasy, the half-digested pill shooting out of your mouth as you retch.<br>
<br>
Despite that brief unpleasantness the happy glow quickly re-asserts itself and you are moments later again smiling, without a care in the world (well, other than wasting those wonderful drugs, but you can always get more, right?)<br>
<br>
<<printThought "Hmm, that didn't amp things up... I wonder if I had some alcohol?">><br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
<<if $player.flags.mealplan.hormones == "lots" && $player.flags.pink_pill.times_od1 == 0>>
<<if $scene.first_sissypill_and_hormones>>
You remember taking the pill in the past, but it wasn't like this. If you thought the feelings of arousal and burning heat were intense before, this is on a whole other level, practically a different PLANE.<br>
<br>
You feel as if every sense has been cranked to eleven and beyond. Your last scrap of intelligent thought is that the pill must be somehow interacting with your hormones. That realisation is fleeting as soon nothing but lust and arousal fills your mind.<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
Your <<getWordMyPenis>> strains so hard you fear the <<=setup.getItemTypeName("cage")>> might explode<<if $player.body_ref.cumProduction>>, your <<getWordMyPenis>> spitting its excitement onto the floor without your arousal dipping in the slightest.<</if>>
<<else>>
Your <<getWordMyPenis>> is harder than you've ever felt<<if $player.body_ref.cumProduction && $fetish.cum>>, spurting steady bursts of cum every few seconds with no sign of stopping or of a<<else>>, straining and twitching with explosions of pleasure... and yet no<</if>> reduction in your arousal.
<</if>>
<<else>>
You feel like a river-head has appeared between your legs, feeling as desperately wet and lustful as you have ever been in your life.
<</if>>
<<else>>
Even anticipating what is about to come having previously mixed the pink pill with hormones you STILL are unprepared.<br>
<br>
In mere moments you have transformed into a lustful slut, a whore whose only thought is cock as she drops to the ground in a frantic, aroused mess.
<</if>>
<br><br>
On all fours like a bitch in heat, you hump the ground in futility. You would kill for something to fuck you right now, in either hole or both, you don't care, <<if setup.checkItemTypeWorn('plug')>>the plug in your ass a poor substitute for the thick cocks dancing through your mind<<else>>visions of thick, pounding cock filling your thoughts and accentuating the reality of your emptiness<</if>>. Gasping and panting, you grope yourself as your heart pounds with lust and your chest seems like it is about to burst.<br>
<br>
<<if $scene.breastGrow>>
You let out a cry as your chest swells, <<if !$scene.first_breasts>>your breasts growing to mammoth proportions and somehow getting even more sensitive<<else>>twin melon-like breasts sprouting from your chest<</if>>. The heavy orbs now dangling from your torso pull
<<else>>
You moan as your breasts tingle, already <<=setup.calcBreastSize()>> they do not seem to grow any further, but they still feel swelled and hyper-sensitive, the heavy orbs pulling
<</if>>
you closer to the ground.
<<if $player.body_ref.penis && $player.body_ref.cumProduction && $fetish.cum>>
The mere brush of floor against your hyper-sensitive nipples causing your <<if $player.body_ref.penis>>your <<getWordMyPenis>> to spurt again<<else>>you to gush<</if>>.<br>
<br>
Crazed with lust, you shuffle backwards, burying your face in the pool of your own semen as you lick it up as if it were the most delicious thing in the world<<if $fetish.cum && setup.getTotalValue("cum") > 10>>... because it is<</if>>.
<</if>>
<br><br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction && $fetish.cum>>
Falling onto your back to relieve the weight of your massive breasts, you raise your hips high and <<if setup.getItemTypeName("cage")=="">>aim your <<getWordMyPenis>> at your mouth, shooting yourself repeatedly in the face before your nigh-endless spurts find their target and spray your throat, your mouth open wide.<<elseif setup.isCage()>>aim your caged <<getWordMyPenis false>> to dribble and spurt into your mouth.<<else>>your juices leaking out past the belt and dripping onto your face<</if>>. Your only thought is a depraved wish that you were flexible enough to suck it right from the source.
<<else>>
You hump the ground in desperation, <<if !setup.checkItemTypeWorn("cage")>>your fingers sopping as you frig yourself to orgasm after orgasm<<else>>wishing the cursed shield of your chastity belt was not there to foil your frenzied lusts<</if>>.
<</if>>
<br><br>
You don't know how long you remain curled up and writhing before the drugs start to fade enough for the fog over your thoughts to dissipate.<<if $scene.breastGrow>> All you know is that <<if $player.body_ref.penis && $player.body_ref.cumProduction && $fetish.cum>>your face is covered in your own seed and <</if>>your new <<=setup.calcBreastSize()>> breasts remain.<</if>>
<<if $scene.breastGrow>>
<br><br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
Staggering to your feet you wonder how long this will last, overjoyed at how your bimbo-tastic frame will look at work or in public.
<<else>>
Staggering to your feet you wonder how long this will last, you love your figure, but you're still a little worried about how your bimbo-tastic frame will go over at work or in public.
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
Staggering to your feet you wonder how long this will last, feeling like you ought to be concerned about how your lewd profile will look at work or in public.
<<else>>
Staggering to your feet you wonder how long this will last, very worried about how your lewd profile will look at work or in public.
<</if>>
<</if>>
<</if>>
<<elseif $player.flags.pink_pill.times_od1 >= 1>>
You pop another <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill hoping to feel that lovely pink rush.<br>
<br>
<<if $scene.cureWithdrawl>>
Slowly you feel the dull affliction of withdrawal recede. Though you smile in contentment at the pink fuzziness that now suffuses your thoughts you can't help but worry... it seems the drug effects are weakening, if you abuse them further will they still cancel out the "hangover?" Despite this thought all you can do is fantasise about how utterly amazing your previous overdose felt...
<<elseif setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
You whimper in frustration. Though you feel a familiar rush of pink wonderment it is not enough. The cloud of your earlier abuse yet hangs over your head leaving you yearning to feel such wonderful glory again...
<<else>>
Having outlasted the brutal consequences of your withdrawal you once again feel the happy pink effects of the drugs without any "downsides" stemming from so-called abuse. If you were prudent, you would content yourself with this pleasantness, however fleeting. As you feel the effects of the drug already starting to fade you cannot help but yearn for the even more intense and lasting feelings of an overdose, the cotton-candy lust clouding your mind to downplay the after-effects. Besides... couldn't you just keep taking the heavier dose? The idea brings a smile to your lips.
<</if>>
<<else>>
You drop the <<=setup.getItemName('sissy_pill_mk1')>> into your mouth and swallow it. Hmm. Tastes like bubblegum and cotton candy. It takes only a few seconds before the effects start to set in. Again, you start feeling really strange, like heat swells up from underneath your skin, making your whole body burn up. Your chest tingles and you feel a huge pressure building. Then you begin to shiver from cold and excitement at the same time, unable to comprehend what's happening to you. Again, this procedure makes you horny beyond your wildest dreams,
<<if $player.body_ref.penis>>
<<if setup.getItemTypeName("cage")=="">>
making your <<getWordMyPenis>> twitch and jump up and down with excitement.
<<else>>
and even though the <<=setup.getItemTypeName("cage")>> on your <<getWordMyPenis>> prevents it from getting too hard, it still jumps up and down with excitement, the hard prison banging against your thigh.
<</if>>
<<else>>
making you gush in excitement.
<</if>>
<br><br>
<<printThought "Oh <<getWordGod>>... this feels so good!">>
<</if>>
<br><br>
<<if setup.checkItemInInventory('pillbottle')>>
You don't seem to have even dented the bottle of pills
<<if $player.flags.pink_pill.times_od1 > 1>>
you hardly feel anything, apparently your prior abuse of the drug is coming back to bite you with your body building up a resistance to the drug.
<<else>>
and you can't help contemplating how it would feel to take more...
<</if>>
<br><br>
[<<moveTo "room_use_sissy_pill_mk1_2" "Take another pill." 60>>]<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Better play it safe." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif $scene.pillsRemaining>0>>
<<if $player.flags.pink_pill.times_od1 > 1>>
You look at the other <<if $scene.pillsRemaining > 1>>pills<<else>>pill<</if>> wanting very much to take more and feel another delightful overdose...
<<else>>
You look at the other <<if $scene.pillsRemaining > 1>>pills<<else>>pill<</if>> in your hand and contemplate how it would feel to take more...
<</if>>
<br><br>
[<<moveTo "room_use_sissy_pill_mk1_2" "Take another pill." 60>>]<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Better play it safe." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
Unfortunately you just took your last pill, now you need to remember to ask <<=setup.getNpcName("npc_manager","formal")>> for more...<br>
<br>
<<if $player.flags.pink_pill.times_od1 > 1>>
<<printThought "This is, like, so frustrating... I need to figure out how to get more than the scant few she is willing to supply at a time...">><br>
<br>
<</if>>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Continue." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
<</if>>
</div><<set $scene.firstOD = $player.flags.pink_pill.times_od1 == 0>>
<<set $player.flags.pink_pill.times_od1 += 1>>
<<if $player.flags.pink_pill.times_od1 < 6>>
<<setTmpEffect "sissypill_mk1_od">>
<</if>>
<<if $scene.firstOD>>
<<applyStress -50>>
<<if !setup.hasThreshold('bimbofication', 'drug_bimbofication', 'od_mk1')>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'od_mk1'>>
<</if>>
<<applyExperience 'bimbofication' 8 'very' $SEEN_STRANGER>>
<<set $npc_manager.flags.office_unlocked = true>>
<<set $scene.hairChange = $player.hair.style != 'long_open' || $player.hair.color != 'blonde'>>
<<set $scene.hairGrowOnly = $player.hair.style != 'long_open' && $player.hair.color == 'blonde'>>
<<if !$player.sec_style.body.hair>>
<<set $player.sec_style.body.hair = _odStyle>>
<</if>>
<<changeHair 'long_open' 'blonde'>>
<<if $player.body.breastsize[1] == 0>>
<<set $scene.breasts = 'new'>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = _odStyle>>
<</if>>
<<elseif $player.body.breastsize[1] < 5>>
<<set $player.body.breastsize[1] = 5>>
<<set $scene.breasts = 'dd'>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = _odStyle>>
<</if>>
<<elseif $player.body.breastsize[1] < 7>>
<<set $player.body.breastsize[1] += 1>>
<<set $scene.breasts = 'upgrade'>>
<<if !$player.sec_style.body.hair>>
<<set $player.sec_style.body.breasts = _odStyle>>
<</if>>
<<else>>
<<set $scene.breasts = 'noop'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_26'
0
'event_psychiatrist_session_overdose_mk1'
false
>>
<<else>>
<<applyStress -10>>
<</if>>
<<set $scene.cureWithdrawl = setup.hasTmpEffect('sissy_pill_mk1_withdrawal') && $player.flags.pink_pill.times_od1 < 6>>
<<cancelTmpEffect 'sissypill_mk1'>>
<<if $scene.cureWithdrawl>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<<applyFatigue -50>>
<</if>>/*#
#desc: OD on multiple sissy pill mk1
#status: FINISHED 0.7.4.0
#ignore_spell: mk1,mk2
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemInInventory('pillbottle')>>
<<if setup.checkItemInInventory('sissy_pill_mk1')>>
<<deleteItem 'sissy_pill_mk1'>>
<<set $scene.pillsRemaining = setup.getItemCount('sissy_pill_mk1')>>
<<if setup.checkItemInInventory('sissy_pill_mk1')>>
<<set $scene.pillsRemaining += setup.checkItemInInventory('sissy_drug_1')>>
<</if>>
<<elseif setup.checkItemInInventory('sissy_drug_1')>>
<<deleteItem 'sissy_drug_1'>>
<<set $scene.pillsRemaining = setup.getItemCount('sissy_drug_1')>>
<<else>>
ERROR: expecting sissy_pill_mk1 or sissy_drug_1 and found neither!
<</if>>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<set _odStyle = "enthusiast">>
<<include "pinkPillmk1odUnlocks">>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.firstOD>>
Violating dosage standards, you swallow another of the pink<<if $fetish.sissy>> "sissy" <<else>> "Antiboyotic" <</if>>pills. You were already feeling pleasant and pink from the first pill, but soon the second one slams into you like a train. A wave of lust washes over you, the earlier sensations mere mild arousal compared to the panting need that staggers you.<br>
<br>
You moan and reach for a wall to steady yourself only to tense up again as a fire ignites in your
<<switch $scene.breasts>>
<<case 'new'>>
chest. Reaching up you are shocked to find your temporary and tiny breasts swell! The new tissue highly sensitive you cannot resist groping yourself as the breasts continue to swell in your hands, the weight pulling you forward until you find yourself cupping a pair of sizable <<getWordBreasts>>.
<<case 'dd'>>
breasts. Reaching up you are shocked to feel your breasts swelling your hands. Hyper-sensitive you cannot help but grope yourself as they continue to swell, your already large breasts growing to even bigger proportions, the weight pulling you forward, each far larger than you can contain in one hand.
<<case 'upgrade'>>
breasts. Reaching up you are shocked to feel your breasts swelling your hands. The already large <<getWordBreasts>> even more sensitive than usual you feel them grow to even more mammoth proportions, the weight pulling you forward as you struggle to keep them under control with your hands.
<<case 'noop'>>
breasts. Though your flesh tingles with hyper-sensitivity that has you desperately groping yourself, the drugs do not seem sufficient to cause your already massive <<getWordBreasts>> to grow any further.
<<default>>
ERROR: unexpected scene.breasts <<=$scene.breasts>>
<</switch>>
<br><br>
Panting with arousal, you get only a brief moment's respite before another explosion wracks your body, your head pitching back as you cry out only to stumble forward to land on your knees, your vision obscured by a curtain of golden hair.<br>
<br>
<<printThought "Wait, what?">><br>
<br>
Struggling to push past the wall of lust, you manage to pull one hand away from the oh-so-pleasurable groping of your breasts to confirm that yes; while you were distracted by your chest your hair seems to have undergone a <<if $scene.hairGrowOnly>>growth spurt<<else>>transformation<</if>> of its own.<br>
<br>
<<if ["room_bathroom","room_mall_apparel_store_changing_booths", "room_mall_lingerie_shop_changing_booth", "event_psychiatrist_1stsession_changingroom_leave"].includes($locationbeforeuseage)>>
Pulling yourself to your feet you part your hair to look at your reflection.
<<else>>
Pulling out your phone you use it as a makeshift mirror to check out your reflection.
<</if>>
You can't help but gawk at the change; your hair cascades down in thick golden waves, extending well past your still-sensitive breasts, vibrant and sexy like something out of a fairy tale, or perhaps a porno. <<if $scene.lips>>Rounding things off is a more subtle, but still noticeable pair of bee-stung lips; currently slightly parted they combined with your shocked expression to give you a quite complete look of airheaded bimbo surprise.<</if>><br>
<br>
<<printThought "Oh <<getWordGod>>, what have I done?">><br>
<br>
Sensations slowly settling down, you attempt to calm yourself, your breasts heaving with each breath as you try to think how your friends will react to this new look...<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Continue on with things." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
You moan as familiar lust rises within you but, though you feel a bit fuzzy and mentally slow you fail to catch that wonderful wave of body-warping, lusty high you remember from your previous overdose...
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
Even worse... the mind-draining withdrawal effects are already creeping back in...
<</if>>
<br><br>
<<if setup.getItemCount('sissy_pill_mk1')>0 || setup.checkItemInInventory('pillbottle') || setup.checkItemInInventory('sissy_drug_1') >0>>
[<<moveTo "room_use_sissy_pill_mk1_3" "Maybe if I took another?" 300 "<<set $scene.pills_taken=2>>">>]<br>
<<else>>
[@@.link_locked;You appear to be out of the powerful pink pills. Perhaps you should be more careful with them?@@]<br>
<</if>>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "That's enough for now." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: OD on multiple sissy pill mk1
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pills_taken +=1>>
<<if $scene.pills_taken >= $player.flags.pink_pill.times_od1>>
<<set _odStyle = "enthusiast">>
<<include "pinkPillmk1odUnlocks">>
<<elseif $scene.pills_taken > 4>>
<<setTmpEffect 'sissypill_mk1_false_od'>>
<</if>>
<<if $scene.breasts && $scene.hairChange>>
<<set $scene.change = 'breasts_hair'>>
<<elseif $scene.breasts>>
<<set $scene.change = 'breasts'>>
<<elseif $scene.hairChange>>
<<set $scene.change = 'hair'>>
<<else>>
<<set $scene.change = 'none'>>
<</if>>
<<if $scene.pills_taken > 4 && setup.hasTmpEffect('drunk')>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks['bed_heels_photo'].finished>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<completeTask 'bed_heels_photo' $now false>>
<<set _nextDate = setup.setNextDate($now, 1, 23, 50)>>
<<addTaskById 'bed_heels_photo' _nextDate>>
<</if>>
<</if>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.pills_taken >= $player.flags.pink_pill.times_od1>>
Finally the familiar warmth flows through you and you moan in relief.
<<switch $scene.change>>
<<case 'none'>>
No physical change comes with it — apparently you are already at the limits of what the drug is capable of effecting.
<<case 'hair'>>
Though your breasts tingle pleasantly they fail to grow — your hair, on the other hand returns to the cascading waves of thick, long, blonde perfection from the first time you took the drugs.
<<case 'breasts'>>
Your breasts tingle and you grope the sensitive flesh in anticipation, feeling them swell in your hands.
<<case 'breasts_hair'>>
Not quite as intense as when it was unexpected you watch your hair burst forth to once again cascade down past your newly swelled breasts, long, thick and blonde.
<<default>>
ERROR: unexpected scene.change <<=$scene.change>>
<</switch>>
<br><br>
You sigh in contentment as the happy pink warmth lingers. You continue to grope your large, sensitive <<getWordBreasts>>. The voice in the back of your head screaming out that repeatedly overdosing will surely have consequences barely perceptible. An even louder voice reminds you that the drugs <<if $player.flags.pink_pill.times_booze1 > 0>>are said to <</if>>interact with alcohol...<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "That's enough for now." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif $scene.pills_taken > 4 >>
You pop another pill, still desperate for that feeling of happy warmth only to be overcome by a separate feeling, one of nausea.<br>
<br>
<<if setup.hasTmpEffect('drunk') || setup.hasTmpEffect('tipsy')>>
Just as you start to wretch another feeling kicks in, the drugs intermingling with the booze already in your system. You try to reach out and stabilize yourself against a nearby wall, but it's like moving in slow motion as your entire world fades to lust.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_pink_pill_super_od_2" "Pass out." _timeToMorning>>]
<<else>>
Retching slightly you spit up a blend of pink bile, the drugs you had tried to fill yourself up with spat out upon the ground.<br>
<br>
<<printThought "Some kind of safety feature? But I need my happy pills...">><br>
<br>
As desperate as you are to feel the effects of the pills once again, the thought of taking more currently fills you with a subconscious feeling of revulsion, which only serves to further sour your mood.<br>
<br>
<<printThought "There has to be some of the drug lingering in my system... maybe some alcohol could spark things?">><br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
<<else>>
You pop another pill, but hardly feel any different...<br>
<br>
<<if setup.getItemCount('sissy_pill_mk1')>0 || setup.checkItemInInventory('pillbottle') || setup.getItemCount('sissy_drug_1')>0>>
<<printThought "Dammit, I'm building up a tolerance... maybe if I took one more?">><br>
<br>
[<<moveTo "room_use_sissy_pill_mk1_3" "Pop another pill." 300>>]<br>
<<else>>
You frown at running out of pills without reaching the high you hoped for, <<=setup.getNpcName("npc_manager","formal")>> is so stringent about how many she will let you have at a time. If only you could trick her, or steal the main stash...<br>
<br>
<<if $player.flags.pink_pill.times_booze1 > 0>>
<<printThought "Dammit, I'm out of pills... maybe if I had some alcohol on top?">>
<<else>>
<<printThought "Dammit, I'm out of pills, but wasn't there something about taking them with alcohol?">>
<</if>>
<br><br>
<</if>>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: remove rfid from pink pill
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $fetish.sissy>>
<img src="./images/inventory/item/useable/pink_pill_sissy_ui.png" style="float: left;">
<<else>>
<img src="./images/inventory/item/useable/pink_pill_ui.png" style="float: left;">
<</if>>
You examine the <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> pill more closely. You recall an article you read about technology for tracking medication. Holding the pill up to the light, you see a slight shadow inside that must be the biodegradable RFID tracking chip.<br>
<br>
<<printThought "Hah, that's how she's tracking how many I have...">><br>
<br>
[<<moveTo "event_pink_pill_rfid_remove" "Destroy the tracking device." 300>>]<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]/*#
#desc: remove rfid from pink pill
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.stage > 1>>
<<set $player.flags.pink_pill.remove_rfid = true>>
<<set $scene.pillsRemaining = 0>>
<<if setup.checkItemInInventory('sissy_pill_mk1')>>
<<set _sissyPill = setup.getItemCount('sissy_pill_mk1')>>
<<deleteItem 'sissy_pill_mk1' _sissyPill>>
<<set $scene.pillsRemaining += _sissyPill>>
<</if>>
<<addItem "sissy_drug_1" $scene.pillsRemaining>>
<<else>>
<<deleteItem 'sissy_pill_mk1' 1>>
<</if>>
<</if>>
<<if $fetish.sissy>>
<img src="./images/inventory/item/useable/pink_pill_sissy_ui.png" style="float: left;">
<<else>>
<img src="./images/inventory/item/useable/pink_pill_ui.png" style="float: left;">
<</if>>
<<if $npc_manager.stage > 1>>
You carefully crack open the pink pill, stashing the <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> drugs before destroying the tiny biodegradable RFID tracking device that <<=setup.getNpcName("npc_manager","formal")>> must be using to monitor your dosage. Looking at the small pile of potent pink powder, you resist the urge to take it immediately — you need to play a longer game if you want to build up your stores and so you package it back up in pill form for later<<if $scene.pillsRemaining > 1>> and repeat the procedure on your remaining pills<</if>>.
<<else>>
You attempt to carefully crack open the pink pill only for it to shatter in your hands and the drugs to disappear into a heavy mist.<br>
<br>
<<printThought "Damn, <<=setup.getNpcName('npc_manager','formal')>> did mention that they were very experimental... maybe the construction will be a bit more robust after they fix the supply issue and she trusts me to have more at a time.">>
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]<<set $scene.effect = false>>
<<set $scene.od = false>>
<<set $scene.withdrawal = false>>
<<if setup.hasTmpEffect('sissypill', true)>>
<<cancelTmpEffect 'sissypill' true>>
<<set $scene.effect = false>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk1', true)>>
<<cancelTmpEffect 'sissypill_mk1' true>>
<<set $scene.effect = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk1_od', true)>>
<<cancelTmpEffect 'sissypill_mk1_od' true>>
<<set $scene.od = true>>
<</if>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal', true)>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal' true>>
<<set $scene.withdrawal = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk1_false_od', true)>>
<<cancelTmpEffect 'sissypill_mk1_false_od' true>>
<<set $scene.od = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2_micro', true)>>
<<cancelTmpEffect 'sissypill_mk2_micro' true>>
<<set $scene.effect = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2', true)>>
<<cancelTmpEffect 'sissypill_mk2' true>>
<<set $scene.effect = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk2_od', true)>>
<<cancelTmpEffect 'sissypill_mk2_od' true>>
<<set $scene.od = true>>
<</if>>
<<if setup.hasTmpEffect('super_mk2', true)>>
<<cancelTmpEffect 'super_mk2'>>
<<set $scene.effect = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_eternal', true)>>
<<cancelTmpEffect 'sissypill_eternal' true>>
<<set $scene.effect = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_2_eternal', true)>>
<<cancelTmpEffect 'sissypill_2_eternal' true>>
<<set $scene.effect = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_3_eternal', true)>>
<<cancelTmpEffect 'sissypill_3_eternal' true>>
<<set $scene.effect = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_pure', true)>>
<<cancelTmpEffect 'sissypill_pure' true>>
<<set $scene.effect = true>>
<</if>>
<<if setup.hasTmpEffect('sissypill_pure_eternal', true)>>
<<cancelTmpEffect 'sissypill_pure_eternal' true>>
<<set $scene.effect = true>>
<</if>>/*#
#desc: take cure for sissy pill
#status: RELEASED 0.9.1.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'sissy_pill_cure'>>
<<include "removePinkPill">>
<<if $scene.effect || $scene.od || $scene.withdrawal>>
<<set $player.flags.pink_pill.times_cure += 1>>
<<changeHorny -50>>
<<applyStress -10>>
<</if>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if $scene.effect || $scene.od || $scene.withdrawal>>
<<if $player.flags.pink_pill.times_cure == 1>>
You swallow the innocuous pill that you custom-brewed and hope...<br>
<br>
You gasp, your arousal plummets as
<<if $scene.effect || $scene.od>>
you feel the pink cloud lift, the <<if $scene.od>>almost overwhelming <</if>>drug effects fading to leave you feeling remarkably normal.
<<if $scene.withdrawal>>
Perhaps even better is that almost debilitating craving for more drugs to cancel out your withdrawal effects disappears as well.
<</if>>
<<else>>
the debilitating need for more drugs, and the associated lethargy and other ill effects, evaporate, leaving you feeling remarkably refreshed.
<</if>>
<br><br>
<</if>>
You take a deep breath and smile, ready to move forward with a clear mind.
<<else>>
You take a dose of your custom-brewed <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Cure, but, since you are under the effects of none of the drugs it is tailored to, nothing happens.<br>
<br>
<<printThought "Well that was kind of silly...">>
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: use sissy pill mk2
#status: FINISHED 0.7.4.0
#ignore_spell: dd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.hasTmpEffect('sissypill_2_eternal') || setup.hasTmpEffect('super_mk2') || setup.hasTmpEffect('sissypill_3_eternal') || setup.hasTmpEffect('sissypill_pure') || setup.hasTmpEffect('sissypill_pure_eternal')>>
/% noop %/
<<else>>
<<set $scene.first = $player.flags.used_sissy_pill_2_count == 0>>
<<if $scene.first>>
<<applyStress -50>>
<<applyFatigue -50>>
<<changeHorny 30>>
<<set $scene.breastGrowth = $player.body.breastsize[0] < 6>>
<<if $scene.breastGrowth>>
<<set $player.body.breastsize[1] = 6>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "voluntary">>
<</if>>
<<setTmpEffect 'sissypill_mk2'>>
<<else>>
<<changeHorny 20>>
<<applyStress -30>>
<<applyFatigue -30>>
<<set $scene.breastGrowth = $player.body.breastsize[0] < 6>>
<<if $scene.breastGrowth>>
<<set $player.body.breastsize[1] = 6>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "voluntary">>
<</if>>
<<set $scene.firstOfDay = !setup.hasTmpEffect('sissypill_mk2') && !setup.hasTmpEffect('sissypill_mk2_od')>>
<<if !$scene.firstOfDay>>
<<reduceExperience 'smart' 1>>
<<if setup.hasTmpEffect('sissypill_mk2')>>
<<cancelTmpEffect 'sissypill_mk2'>>
<</if>>
<<if !setup.hasTmpEffect('sissypill_mk2_od')>>
<<setTmpEffect 'sissypill_mk2_od'>>
<</if>>
<<if $player.flags.pink_pill.times_od2 == 0>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_27'
0
'event_psychiatrist_session_overdose_mk2'
false
>>
<</if>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'skip' $ALONE>>
<<set $player.flags.pink_pill.times_od2 += 1>>
<<if !setup.hasThreshold('bimbofication', 'drug_bimbofication', 'od_mk2')>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'od_mk2'>>
<</if>>
<<else>>
<<setTmpEffect 'sissypill_mk2'>>
<</if>>
<</if>>
<<set $scene.counterMk1 = setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $scene.counterMk1>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<if setup.hasTmpEffect('sissypill_eternal', true)>>
<<cancelTmpEffect 'sissypill_eternal' true>>
<<set $scene.effect = true>>
<</if>>
<<set $player.flags.used_sissy_pill_2_count += 1>>
<</if>>
<<deleteItem 'personal_medication'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
<<if setup.hasTmpEffect('sissypill_2_eternal')>>
You take a pill... and feel no change, which you suppose makes sense, given that you're already enjoying the effects of an eternalised version of the drug.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif setup.hasTmpEffect('super_mk2') || setup.hasTmpEffect('sissypill_3_eternal') || setup.hasTmpEffect('sissypill_pure') || setup.hasTmpEffect('sissypill_pure_eternal')>>
You take a pill... and feel no change, which you suppose makes sense, given that you're already enjoying the effects of a far stronger version of the drug.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif $scene.first>>
You take the first dose of your new drug, feeling the large pill slip down your throat with ease. The effects are far more subtle than you might have expected, a sort of soft pink cloud sneaking over you, wiping away all feelings of stress while leaving you feeling content, and simultaneously mentally lethargic, but eager to experience new things...<br>
<br>
<<printThought "Mmm, this feels good, not having thoughts is nice...">><br>
<br>
<<if $scene.counterMk1>>
Perhaps even better is that you feel the aching cloud of withdrawal dissolve, the punitive consequences of your overdosing disappearing in an instant.<br>
<br>
<</if>>
<<if $scene.breastGrowth>>
You smile as you feel your breasts swell back to a nice full DD as you wonder why you ever allowed them to be smaller...
<<else>>
Though your thoughts are slightly fogged, you do not think your body has undergone any drug-fuelled changes.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
<<if $scene.firstOfDay>>
You take your daily dose of the <<=setup.getItemName('personal_medication')>>, feeling the familiar pink fog descend to suffocate your thoughts and leave you feeling happy, mindless, but strangely eager to try new things...<br>
<br>
<<if $scene.counterMk1>>
Perhaps even better is that you feel the aching cloud of withdrawal dissolve, the punitive consequences of your overdosing disappearing in an instant.<br>
<br>
<</if>>
<<if $scene.breastGrowth>>
You smile as you feel your breasts swell back to a nice full DD as you wonder why you ever allowed them to be smaller...
<<else>>
Though your thoughts are slightly fogged, you do not think your body has undergone any drug-fuelled changes.
<</if>>
<br><br>
<<printThought "Mmm, this feels good, not having thoughts is nice...">><br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<else>>
<<if $player.values.smart.currentLevel < 1>>
Once again ignoring the dosing guidelines of the <<=setup.getItemName('personal_medication')>>'s, you pop another pill. You lick your lips in satisfaction and close your eyes to embrace the wonderful feeling of bimbo bliss scouring your mind clear.<br>
<br>
As the pink cloud thickens, you feel different...<br>
<br>
[<<moveTo "bad_end_sissy_pill_mk2" "Uh-oh." 0>>]
<<else>>
Ignoring guidelines, you pop another of the <<=setup.getItemName('personal_medication')>>'s.
<<if $player.values.smart.currentLevel < 2>>
The happy pink fog returns once again, though at this point you have few thoughts left for it to blot out. The prudent move would be to be very careful about overdosing again lest you lose all that you are...
<<elseif $player.values.smart.currentLevel < 5>>
Some of your intelligence, meager though it may be, drains away, too much more of this and you will have no thoughts left.
<<elseif $player.values.smart.currentLevel < 10>>
Your mind already nigh thought free the pink haze thickens into a cotton-candy cloud that fills your head and begins pushing things out. With a dumb smile on your face, you enjoy the experience — after all, who needs "knowledge" and "intelligence" when you can just be blank and pink, dumb and happy?
<<elseif $player.values.smart.currentLevel < 15>>
For some unfathomable reason, you have decided to permanently blunt your intelligence as the happy pink fog flows in and eats away at your mind. Of course you still remain far smarter than average, but that just means you more keenly feel the loss.
<<else>>
Despite, or perhaps because? of your vast intelligence you have just rendered yourself slightly dumber by overdosing on <<=setup.getItemName('personal_medication')>>.
<</if>>
<br><br>
Feeling quite blissful with the new "state" of your mind, you slowly focus back on the present as you slowly consider your next action.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: destroy all smarts with sissy pill mk2
#status: FINISHED 0.7.4.0
#*/
<<set $player.location to "">>
<<set $gameOver = 'pink_pill_mk2'>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
Finding no more thoughts to absorb the pink cloud of bliss begins eating away at your soul. Your body goes limp like a puppet with her strings cut and you slump to the floor.<br>
<br>
With a blank, but happy expression on your face the last of your intelligence is eaten away as your body morphs to match until you are lying on the floor, a human sex-doll; breasts impossibly huge, full lips spread in a permanent expression of cock-inviting surprise, bountiful hips spread and ready for someone to use you for their pleasure.<br>
<br>
Some silent signal is triggered by your overdose and two <<men>> soon appear to quickly bundle you up and spirit you away. Care-free and without a thought in your head you barely even notice, only distantly aware as you are transported, dressed and then installed in a special bedroom.<br>
<br>
Technically chained to the bed you hardly care, your life now consists of mindless bliss as you are frequently visited by guests who sexually use and abuse your body in all sorts of ways before leaving you to be washed and cleaned by robotic staff for the next round. Throughout it all your emotions range from orgasmic bliss to mindless anticipation. If you had any thoughts left, it would be that you exist only for sex, the periods in between penetrations akin to a race-car sitting parked between competitions.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: see Valkyrie advertisement on the way home
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/recruitment_poster.png">>
<div id="invframe" class="scrolltext">
You're almost home when your attention is diverted by a large recruitment poster. You've certainly walked past it innumerable times before but something about the events of the day, specifically, your having been been fired, has you pause and look at it with new eyes.<br>
<br>
BECOME A VALKYRIE! The advertisement practically shouts, an animated rendition of one of the cyborg peacekeeping units saluting sharply as a sensor detects your presence and a sales pitch launches.<br>
<br>
Bills piling up? Looking for a new opportunity? Looking to do YOUR part? Sign up for a term as a Valkyrie and soar into the future!<br>
<br>
You've heard of the Valkyries, certainly — initially an elite unit in the war, in peace-time they re-dedicated themselves to helping deal with the increasing threat of cyborg criminals. A year or so back they started recruiting new members. Their efficiency is so great that the city would likely replace all law enforcement with them... if they could only get the numbers. Thus the recruiting drive — shave off a criminal sentence or, if you're a normal citizen, sign up for a decade long term and they'll pay your debts, cover your expenses for the entire term, and leave you in perfect health with premium citizenship and a sizable payment at the end. Well, that's the theory, they haven't been around long enough for anyone to finish a term. From what you hear the reason for the decade long stint is how complex and expensive the cyborg conversion and associated training is.<br>
<br>
The advertisement continues to drone on as you consider the offer when you recall a certain detail — for some reason every Valkyrie unit you've heard of is female... though you see no indication of such a restriction in any of the fine print of the advertisement.<br>
<br>
<<printThought "Doing something like this... well, that would be a whole different game... I mean, life. Yes, different life...">><br>
<br>
[<<moveTo "event_valkyrie_ending_first" "Female only? That sounds like a feature, not a bug!" 60 "<<set $scene.enthusiastic=true>>">>]<br>
[<<moveTo "event_valkyrie_ending_first" "Hmm... maybe it is time for a change?" 60 "<<set $scene.enthusiastic=false>>">>]<br>
[<<moveTo "event_valkyrie_intro_2" "No, things are weird enough, I'm sure this new job will be fine..." 60>>]
</div>/*#
#desc: walk past Valkyrie advertisement on the way home
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEmail $computer
'Office of Civic Order'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_valkyrie_01_h'
'mail_valkyrie_01_t'
>>
<<addEmail $computer
'Beyond@lpha'
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
$now
'spam_alpha_h'
'spam_alpha_t'>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You put the recruitment poster behind you and walk on. Things may be bad, but not "submit yourself to who knows what cybernetic procedures and a decade of service" bad... right? Sure, your new boss seems a bit... different, but that was probably just nerves. Give it a week and you'll be settled in to a boring office job and be on the road to having your life back together and normal.<br>
<br>
<<printThought "Yeah, everything is going to be fine, no reason to totally up-end my life just because of a slight career move.">><br>
<br>
[<<moveTo "room_foyer" "Continue home." 600>>]
</div>/*#
#desc: agree to initial Valkyrie recruitment
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $gameOver = 'valkyrie_first_recruit'>>
<<set $player.location to "">>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/recruitment_poster.png">>
<div id="invframe" class="scrolltext">
Your hand shakes slightly with
<<if $scene.enthusiastic>>
excitement
<<else>>
nervous anticipation
<</if>>
as you reach out and press the "ACCEPT RECRUITMENT OFFER" button on the digital advertisement.<br>
<br>
The screen changes to ask for another confirmation but you're already clicking through, scarcely noticing that the eight-foot tall Valkyrie in the advertisement has been joined by two more equally large real ones landing behind you...<br>
<br>
"@@.valkyr;<<uc "Congratulations, citizen. And welcome to your new life.">>@@"<br>
<br>
[<<moveTo "event_valkyrie_ending" "Continue." 0>>]
</div>/*#
#desc: agree to initial Valkyrie recruitment
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEmail $computer
'Office of Civic Order'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_valkyrie_01_h'
'mail_valkyrie_01_t'
>>
<</if>>
<<set $player.location to "">>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/recruitment_poster.png">>
<div id="invframe" class="scrolltext">
Held aloft by the two Valkyrie units... though you're quite certain a single one of them could carry you with ease. You glide over the city, squinting into the onrushing wind as you leave the towering skyscrapers behind and travel to, presumably, the secret training facilities of the enigmatic cyborg force.<br>
<br>
Gliding through an open roof you are gently placed down and then escorted to "processing" — your recruitment confirmed before you are laid out on a cot and injected with a sedative. It would appear that they are wasting no time in getting you into surgery...<br>
<br>
Many surgeries, to say nothing of effectively thousands of hours of simulated training, later and a new Valkyrie unit takes to the air. In the far back of your mind, during your hour a day "recharge" period that substitutes for sleep, you distantly recollect the person you once were. Those memories are fragmented and ethereal, however, stowed away to keep you focused on your duties. They will be restored once you reach the end of your term, but that is years off... and perhaps you will extend instead? Your new form feels so powerful, the sense of satisfaction from your duties feels like nothing you ever experienced at your old job... you're making the world a better place, right? Definitely. After all, you literally cannot seem to think of it any other way...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
[<<moveTo "room_foyer" "Actually, you ignored the advertisement and just went home." 600>>]
</div>/*#
#desc: read valkyrie email (javascript to display email)
#status: FINISHED 0.4.0.0
#ignore_spell: valkyrisation
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/recruitment_poster.png">>
<div id="invframe" class="scrolltext">
You click the "enrol" link at the end of the email and are taken to a flashy, but official, page for registering your intent to join the Valkyrie program.<br>
<br>
Your information auto-fills and all that is left to click confirmation to "START YOUR NEW JOURNEY!" <br>
<br>
<<if State.hasPlayed("event_valkyrie_11")>>
[@@.link_locked;I already went through Valkyrisation... now I need to do the rest of the work to take down <<=setup.getNpcName('npc_boss','formal')>>.@@]
<<elseif State.hasPlayed("theme_valkyrie_plan_1")>>
<<printThought "This is it... if I'm going to get to the bottom of <<=ps(setup.getNpcName('npc_boss','formal'))>> influence, I have to be ready to go all out...">><br>
<br>
[<<moveTo "event_valkyrie_training_1" "Yes, you want to enrol as a Valkyrie." 60>>]<br>
<<else>>
<<if State.hasPlayed("event_boss_home_study_2")>>
<<printThought "The valkyries are under <<=ps(setup.getNpcName('npc_boss','formal'))>> influence... joining them without a plan seems like a very bad idea. I should discuss things with <<=setup.getNpcName('npc_ai','first')>>.">><br>
<br>
<</if>>
[<<moveTo "event_valkyrie_ending_alt" "Yes, you want to enrol as a Valkyrie." 60>>]<br>
<</if>>
[<<moveTo "room_computer_email" "On second thought... no." 0>>]
</div>/*#
#desc: sign up for Valkyrie recruitment
#status: RELEASED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = 'valkyrie_recruit'>>
<</if>>
<<set $player.location to "">>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/recruitment_poster.png">>
<div id="invframe" class="scrolltext">
You confirm your enrollment and are instructed to head to the roof of your building.<br>
<br>
By the time you arrive a pair of Valkyrie units are already waiting for you. Held aloft by the two Valkyrie units... though you're quite certain a single one of them could carry you with ease, you glide over the city, squinting into the onrushing wind as you leave the towering skyscrapers behind and travel to, presumably, the secret training facilities of the enigmatic cyborg force.<br>
<br>
Gliding through an open roof you are gently placed down and then escorted to "processing" — your recruitment confirmed before you are laid out on a cot and injected with a sedative — it seems like they're wasting no time in getting you into surgery...<br>
<br>
Many surgeries, to say nothing of effectively thousands of hours of simulated training, later and a new Valkyrie unit takes to the air. In the far back of your mind, during your hour a day "recharge" period that substitutes for sleep, you distantly recollect the person you once were. Those memories are fragmented and ethereal, however, stowed away to keep you focused on your duties. They will be restored once you reach the end of your term, but that is years off... and perhaps you will extend it instead? Your new form feels so powerful, the sense of satisfaction from your duties feels like nothing you ever experienced at your old job... you're making the world a better place, right? Definitely. After all, you literally cannot seem to think of it any other way...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
[<<moveTo "room_computer_email" "No, that's not what happened." 0>>]
</div>/*#
#desc: street harrassment
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_22') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_22'
0
'event_psychiatrist_theme_street_harass'
false
>>
<</if>>
<<set $player.flags.world_events.street_harass = true>>
<</if>>
<<set $player.location to "Walking along the street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You're walking down the street when a random <<man>> starts to talk at you.<br>
<br>
"@@.generic_male1;Hey, girl, lookin' fine to-day!@@"<br>
<br>
[<<moveTo "event_random_street_harrass_2" "Flirt back." 180 "<<set $scene.action='flirt'>>">>]<br>
[<<moveTo "event_random_street_harrass_2" "Ignore <<him>>." 180 "<<set $scene.action='ignore'>>">>]
</div>/*#
#desc: street harrassment reaction
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "Walking along the street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'flirt'>>
Glancing back at the <<man>> you tilt your head and smile.<br>
<br>
"@@.generic_male1;Aww, you're a real cutie!@@"<br>
<br>
Continuing on your way you make a turn and the <<man>> continues onward, waving back at you.
<<case 'ignore'>>
<<if random(1,20) < setup.getTotalValue("feminization")>>
You try to ignore the <<man>> and continue on your way, but <<he>> keeps shouting after you.<br>
<br>
"@@.generic_male1;Hey, I was talking to you! Come on, smile!@@"<br>
<br>
You keep walking and <<he>> gets louder.<br>
<br>
"@@.generic_male1;Yeah, well fuck you, bitch! Goddamn stuck-up slut, not even worth my time.@@"<br>
<br>
You turn a corner and <<his>> grumbling finally fades into the distance.
<<else>>
You try to ignore the <<man>> as you continue on, but you can't help but overhear <<his>> friend chipping in.<br>
<br>
"@@.generic_male1;Hey, <<man>>, I don't think that's actually a woman...@@"<br>
<br>
"@@.generic_male2;Shit, you're right... HEY<<if $fetish.slurs>> FAG<</if>>, YOU LOOKIN' FOR A REAL <<if $options.fem>>WOMAN<<else>>MAN<</if>>?@@"<br>
<br>
<<if $npc_psychiatrist.hypnosis >= 3>>
<<if $fetish.slurs>>
<<printThought "I am a fag... and I like to suck cock.">>
<<else>>
<<printThought "I am a <<if $fetish.sissy>>sissy <</if>>cumslut. I like to suck cock!">>
<</if>>
<br>
<<His>> words trigger something, the two phrases flowing together naturally.<br>
<br>
<<if setup.getTotalValue("penis") >= 10>>
You glance back to see <<him>> lewdly grabbing <<his>> crotch. <<if $options.fem>>Imagining that she has a big, juicy <<getWordPenis false>> to put<<else>>The thought of his big, juicy cock<</if>> in your mouth<<if setup.getTotalValue("anal") >= 7>>, or maybe your ass? <<if setup.checkItemTypeWorn("plug")>>Suddenly the plug in your rear feels insufficient<</if>><</if>>. Your second repetition you revise things slightly, the new mantra now looping through your head, dominating your thoughts.<br>
<br>
<<if $fetish.slurs>>
<<printThought "I am a faggot... and I LOVE to suck cock.">>
<<else>>
<<printThought "I am a <<if $fetish.sissy>>sissy <</if>>cumslut. I love to suck cock!">>
<</if>>
<<else>>
<<if $fetish.slurs>>
<<printThought "I am a fag... and I like to suck cock.">>
<<else>>
<<printThought "I am a <<if $fetish.sissy>>sissy <</if>>cumslut. I like to suck cock!">>
<</if>>
<br><br>
Once the phrase is in your head it's hard to get it out.
<</if>>
<br><br>
<<if setup.getTotalValue("humiliation") >= 10>>
You really love this new mantra, it's so sexy! You don't even bother to think about where it came from, instead repeating it aloud.<br>
<br>
<<if $fetish.slurs>>
"@@.pc;I am a fag... and I <<if setup.getTotalValue("penis") >= 7>>LOVE<<else>>like<</if>> to suck cock.@@"<br>
<<else>>
"@@.pc;I am a <<if $fetish.sissy>>sissy <</if>>cumslut... and I <<if setup.getTotalValue("penis") >= 10>>LOVE<<else>>like<</if>> to suck cock.@@"<br>
<</if>>
<br>
<<printThought "Oh <<getWordGod>> it feels even better to say it aloud!">>
<<elseif setup.getTotalValue("humiliation") >= 5>>
As fun as the new mantra is to have bouncing around in your head it triggers a weird, nagging feeling, like you're repeating it from somewhere, but where?
<<else>>
You shake your head, trying to clear your thoughts of the perverted phrase, where would you even come up with something like that?
<</if>>
<br><br>
Having all but forgotten about the two <<men>> as their laughter fades behind you, you round a corner and continue on your way.
<<else>>
You hurry along, glad to quickly turn a corner and hear the two <<if $options.fem>>women's<<else>>men's<</if>> cruel laughter fade into the distance.
<</if>>
<</if>>
<<default>>
ERROR unknown scene action: <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_mall" "Continue." 180>>]
</div>/*#
#desc: world's nicest catcallers
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 10 'normal' $EXPOSED>>
<<if setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_22') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_22'
0
'event_psychiatrist_theme_street_harass'
false
>>
<</if>>
<</if>>
<<set $player.location to "Near a construction site.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
Walking down the street you pass by a construction site. You can't help but notice a few of the workers making eyes in your direction.<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
Even this minor attention has you aroused and you're tempted to strut a bit and see what more you can garner...<br>
<br>
[<<moveTo "event_random_catcall_tease" "Give them a show." 180>>]<br>
<<elseif $player.flags.humiliationStyle == "embarrassed">>
You feel embarrassed by the attention, and yet you also have an urge to tease them a little.<br>
<br>
[<<moveTo "event_random_catcall_tease" "Tease them a bit." 180>>]<br>
<<else>>
You blush at the unexpected attention.<br>
<br>
[@@.link_locked;You can't bring yourself to encourage their attention.@@]<br>
<</if>>
[<<moveTo "room_student_quarter" "Hurry on your way." 180>>]
</div>/*#
#desc: world's nicest catcallers
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 10 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<<set $player.flags.world_events.catcall = true>>
<</if>>
<<set $player.location to "Near a construction site.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
<<switch $player.flags.humiliationStyle>>
<<case "brazen">>
Striking a pose you slow down, really swinging your hips as you bite your lip and smile at the construction workers.
<<case "embarrassed">>
Blushing you turn away, yet at the same time sticking your butt out and strutting.
<<default>>
ERROR: unexpected path <<=$player.flags.humiliationStyle>>, should be embarrassed or brazen!
<</switch>>
<br><br>
Encouraged by your response they let out a wolf whistle and start shouting their approval. "@@.generic_male1;Yeah, work it!@@" "@@.generic_male2;Come back when I get off shift!@@" <<if $player.body.breastsize[0]>2>>"@@.generic_male3;Shake dem titties!@@"<</if>><br>
<br>
Suppressing a moan you continue on your way, the brief exchange having improved everyone's day.<br>
<br>
[<<moveTo "room_student_quarter" "Skip along, <<if $fetish.sissy>>sissy<<else>>girl<</if>>." 180>>]
</div>/*#
#desc: alleyway blowjob behind usual place
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "Outside The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
Glancing up the alleyway next to The Usual Place you spy a pair of <<men>>, one on <<his>> knees in front of the other, the expression on the standing <<mans>> face making it more than clear what's going on.<br>
<br>
[<<moveTo "event_random_alley_couple_watch" "Watch." 180>>]<br>
[<<moveTo "room_usual_place_outside" "Hurry on your way." 180>>]
</div>/*#
#desc: watch alleyway blowjob behind usual place
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.world_events.alley_bj = true>>
<</if>>
<<set $player.location to "Outside The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
Caught up in what they're doing the two <<men>> don't notice as you watch. <<if setup.getTotalValue("penis") > 10>>Unfortunately, you<<else>>You<</if>> can't actually see the REAL action from your angle, but from the head movement you'd guess that the receiver is quite well hung...<br>
<br>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
You stiffen under your clothing, your <<getWordMyPenis>> leaking a bit of pre in excitement at what you are witnessing.
<<else>>
Your <<getWordMyPenis>> strains within its <<=setup.getItemTypeName('cage')>>.
<</if>>
<<else>>
You drip in excitement.
<</if>>
<br><br>
<<if setup.getTotalValue("penis") >= 10 || $npc_psychiatrist.hypnosis >=3>>
<<printThought "I wish that was me right now...">><br>
<br>
<<printThought "I'd suck <<his>> <<getWordPenis>> real good...">><br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
<<printThought "Suck it so, so good...">>
<<else>>
<<printThought "Wait, what?">>
<</if>>
<br><br>
<</if>>
<<if setup.getTotalValue("penis") > 10>>
You hurry on your way before you get noticed.
<<else>>
Confused you quickly hurry on your way before you get caught.
<</if>>
<br><br>
[<<moveTo "room_usual_place_outside" "Continue." 180>>]
</div>/*#
#desc: find a tied-off used condom on the ground
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "Walking along">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
Walking along you happen to see a tied off condom on the ground. Quite plump it looks like the previous owner had quite the orgasm.<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
The mere sight of the full condom has you licking your lips in horny anticipation.<br>
<br>
[<<moveTo "event_random_cum_drink" "Pick it up and enjoy a snack." 180>>]<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "room_psychiatrist_lobby" "Resist your urges and continue on your way." 180 "<<spendWillpower 1>>">>] <<hint $options "Trying to push beyond your obsession will tax your willpower.">>
<<else>>
[@@.link_locked;You love cum far too much to let it go to waste.@@]
<</if>>
<<elseif setup.getTotalValue("cum") > 10>>
<<printThought "Mmmm, that makes me thirsty...">><br>
<br>
[<<moveTo "event_random_cum_drink" "Pick it up and enjoy a snack." 180>>]<br>
[<<moveTo "room_psychiatrist_lobby" "Resist your urges and continue on your way." 180>>]
<<elseif setup.getTotalValue("cum") > 5>>
<<printThought "Hmm, I wonder how it would taste... wait? Why would I think such a disgusting thing!">><br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_random_cum_drink" "Force yourself to pick it up and drink it." 180>>] <<hint $options "Trying to push beyond your limits will tax your willpower.">><br>
<<else>>
[@@.link_locked;You couldn't possibly do something so depraved.@@]<br>
<</if>>
[<<moveTo "room_psychiatrist_lobby" "Carefully step around it and continue on your way." 180>>]
<<else>>
<<printThought "Ugh, how disgusting!">><br>
<br>
[<<moveTo "room_psychiatrist_lobby" "Carefully step around it and hurry on your way." 180>>]
<</if>>
</div>/*#
#desc: drink cum from a used condom you found on the ground
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("cum") < 10>>
<<spendWillpower 1>>
<</if>>
<<applyExperience 'cum' 15 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<<set $player.flags.world_events.condom = true>>
<</if>>
<<set $player.location to "Walking along">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("cum") > 15>>
Too eager to even think about who might be watching you <<if setup.getTotalValue("feminization") > 10>>reach down bending at the waist, of course<<else>>squat down<</if>> and pick up the full condom. Licking your lips in anticipation you eagerly undo the knot and bring the used condom to your lips.<br>
<br>
<<printThought "Mmm, delicious <<if $options.fem>>girl-<</if>>cum">><br>
<br>
Sucking eagerly you use your tongue to make sure you get every tasty drop. A little stale and nowhere near as good as it would be fresh you still love it, licking your lips and closing your eyes as you smile in satisfaction.<br>
<br>
<<printThought "I really am a human cumdumpster.">><br>
<<elseif setup.getTotalValue("cum") >= 10>>
Double checking that nobody is watching, though unsure if their observance would have stopped you, you <<if setup.getTotalValue("feminization") > 10>>reach down, bending at the waist, of course<<else>>squat down<</if>> and pick up the full condom.<br>
<br>
Undoing the knot you bring it to your lips, sucking the slightly stale, creamy payload from within.<br>
<br>
It's thick and bitter, nowhere near as good as it would have been fresh from the source, but that doesn't stop you from sticking your tongue into the end of the condom to make sure you lick up every drop of <<if $options.fem>>girl-<</if>>cum.<br>
<br>
<<printThought "Am I really this much of a human cumdumpster?">><br>
<br>
You look at the now empty condom in your hand, so recently pressed against your lips.<br>
<br>
<<printThought "Hmm I guess I am?">><br>
<br>
Tossing the empty condom aside you continue on your way with an extra skip in your step.
<<else>>
You double check that nobody is watching before quickly reaching down to grab the used condom. Nervously you untie it and bring it to your lips before you get second thoughts.<br>
<br>
It's bitter and stale, easily some of the worst <<if $options.fem>>girl-<</if>>cum you've ever tasted, but you finish it all, licking the condom clean even as you wince and crinkle your nose.<br>
<br>
<<printThought "Ohmy<<getWordGod>>! I can't believe I just did that!">><br>
<br>
Tossing the empty condom aside you continue on your way and try not to think about the revolting thing you just did.
<</if>>
<br><br>
[<<moveTo "room_psychiatrist_lobby" "Continue." 180>>]
</div>/*#
#desc: girlscout cookie vendor
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "Cookie Stand">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You're walking along when you pass by a group of girls selling what looks like cookies.<br>
<br>
"@@.generic_female1;Purchase a cookie <<if setup.analyzeWornTags(['female','unisex','male']) == "male">>sir<<else>>ma'am<</if>>, guaranteed fresh and refreshing, only 5 credits!@@"<br>
<br>
You can smell the cookies thanks to the autobaker they have set up nearby and it does sound like quite the tasty treat.<br>
<br>
[<<moveTo "event_random_cookies_buy" "Buy a cookie." 180>>]<br>
[<<moveTo "room_student_quarter" "Decline and continue on your way." 180>>]
</div>/*#
#desc: girlscout cookie vendor
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -5>>
<<applyStress -10>>
<<applyFatigue -25>>
<<set $player.flags.world_events.cookies = true>>
<</if>>
<<set $player.location to "Cookie Stand">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
Smiling adorably as only a young girl can, the scout takes your money and hands you a freshly baked cookie in a napkin.<br>
<br>
Thanking her<<if setup.getTotalValue("feminization") > 10>> and reflexively returning her curtsy <<if setup.analyzeWornTags(['female','unisex','male']) == "male">> to her slight confusion<</if>><</if>> you munch on the delicious cookie as you continue on your way, feeling your spirits boosted a bit by the time you finish nomming it down.<br>
<br>
[<<moveTo "room_student_quarter" "Continue." 180>>]
</div>/*#
#desc: fetish attired woman on the street
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<<set $player.flags.world_events.fetish_woman = true>>
<</if>>
<<set $player.location to "On the street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" "cyber_elf_01">>
<div id="invframe" class="scrolltext">
You're walking down the street when you catch a glimpse of a head-turning woman. A clear bombshell in any attire the fact that she's wearing an outfit even more tight and fetishistic than the picture above your desk has you... and pretty much everyone else in sight, staring at her with lust, disgust or jealousy.<br>
<br>
For her part, she doesn't even seem to notice the attention, striding confidently atop ballet-heel boots, her corseted and latex-clad body looking even sexier and more risque than if she was naked.<br>
<br>
Chin held high thanks to a steep, but elegant, posture collar she has bio-mod long elven ears adorned with shiny earrings peeking out from her long blue hair.<br>
<br>
She walks into a building and out of sight leaving you and the rest of the people on the street to return to your more "mundane" lives.<br>
<br>
[<<moveTo "company_lobby" "Continue on your way." 180>>]
</div>/*#
#desc: mugged for money
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.virgin.anal>>
<<set $scene.mugger = random(1,5)>>
<<else>>
<<set $scene.mugger = random(1,6)>>
<</if>>
<<if $scene.mugger <= 3>>
<<set $scene.muggerMale = true>>
<</if>>
<<set _portrait = "">>
<<switch $scene.mugger>>
<<case 1>>
<<set $scene.mugger_portrait = setup.charImageGeneric("thug_twink")>>
<<case 2 3>>
<<set $scene.mugger_portrait = setup.charImageGeneric("thug_toughguy")>>
<<case 4 5>>
<<set $scene.mugger_portrait = "thug_punk">>
<<case 6>>
<<set $scene.mugger_portrait = "thug_punk">>
<</switch>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImageGeneric($scene.mugger_portrait)>>
<div id="invframe" class="scrolltext">
You're making a shortcut via an alleyway when you are suddenly face to face with a
<<switch $scene.mugger>>
<<case 1>>
nervous looking <<if $options.fem>>girl<<else>>twink<</if>>
<<case 2 3>>
rough looking <<man>>
<<case 4 5>>
gritty looking female punk
<<case 6>>
cybernetically enhanced brick-wall of a woman
<</switch>>
holding a switchblade.<br>
<br>
<<if $scene.muggerMale>>
"@@.generic_male1;Hand over your money!@@"
<<else>>
"@@.generic_female1;Hand over your money!@@"
<</if>>
they growl, brandishing the knife menacingly.
<br><br>
[<<moveTo "event_random_mugged_2" "Pay up." 180 "<<set $scene.action='pay'>>">>]<br>
<<if $scene.fight_mugger>>
[@@.link_locked;You already failed to fight your way out of the situation.@@]<br>
<<else>>
[<<moveTo "event_random_mugged_2" "Fight back!" 180 "<<set $scene.action='fight'>><<set $scene.fight_mugger=true>>">>]<br>
<</if>>
[<<moveTo "event_random_mugged_2" "Lie and say you don't have anything." 180 "<<set $scene.action='lie'>><<set $scene.lie_mugger=true>>">>]<br>
<<if setup.getTotalValue("whoring") > 7>>
[<<moveTo "event_random_mugged_2" "Offer your body as payment." 180 "<<set $scene.action='slut'>>">>]
<</if>>
</div>/*#
#desc: react to mugging attempt
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == 'pay'>>
<<if $player.money.total < 100>>
<<addCredits `20-$player.money.total`>>
<<else>>
<<addCredits `(Math.floor(.5*$player.money.total))-$player.money.total`>>
<</if>>
<<elseif $scene.action == 'fight' && setup.getTotalValue("martial_arts") == 0>>
<<addCredits `-$player.money.total`>>
<<elseif $scene.action == 'slut'>>
<<set $scene.slutcess = setup.analyzeWornTags(['female','unisex','male']) == "female" && setup.getTotalValue("bimbofication") >= 10 && setup.checkVisibleClothingTag('slutty') >= 50>>
<<if $scene.slutcess>>
<<set $player.flags.world_events.mug_slut = true>>
<<switch $scene.mugger>>
<<case 1>>
<<applyExperience 'oral' 3 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'normal' $SEEN_STRANGER>>
<<case 2 3>>
<<applyExperience 'oral' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'penis' 9 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'normal' $SEEN_STRANGER>>
<</switch>>
<<applyExperience 'bimbofication' 11 'normal' $SEEN_STRANGER>>
<<applyExperience 'whoring' 8 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImageGeneric($scene.mugger_portrait)>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'pay'>>
<<if $player.money.total == 20>>
Too scared to do anything you quickly hand over every credit you have.<br>
<br>
<<if $scene.mugger == 1>>
Gawking at the sum the twink nervously tosses a handful of credits back at you, screaming out
"@@.generic_male1;Sorry!@@" as <<he>> flees up the alleyway.
<<else>>
With a sneer the mugger tosses twenty credits back in your face.<br>
<br>
<<if $scene.muggerMale>>
"@@.generic_male1;Here, wouldn't want to leave you TOTALLY destitute.@@"
<<else>>
"@@.generic_female1;Here, wouldn't want to leave you TOTALLY destitute.@@"
<</if>>
Laughing, they quickly run up the alleyway and out of sight.
<</if>>
<br><br>
You sigh and gather up the scattered credits from the ground.<br>
<br>
<<else>>
Scared of losing your steadily amassing fortune you pass over a large handful of credits, hoping it will be enough for them to leave them alone.
<</if>>
<br><br>
The mugger's eyes go wide and they run off with their prize without accosting you further.<br>
<br>
<<printThought "Why am I so unlucky?">><br>
<br>
[<<moveTo "room_foyer" "Continue on your way." 180>>]
<<case 'lie'>>
"@@.pc;But... I don't have any money!@@" You lie.<br>
<br>
<<switch $scene.mugger>>
<<case 1>>
"@@.generic_male1;Oh... well I guess you can go then...@@" <<he>> states softly, walking away, crestfallen.<br>
<br>
Not questioning your luck you quickly flee the other direction.<br>
<br>
[<<moveTo "room_foyer" "Leave." 180>>]
<<case 2 3>>
"@@.generic_male1;You think I was born yesterday? Nice try, but either I get my money, or I take my pound of flesh, you get my meaning?@@" Waving the knife in the direction of your face clarifies any details that might have somehow been missing from <<his>> words.<br>
<br>
<<include "mugOptions">>
<<if setup.getTotalValue("whoring") > 7>>
[<<moveTo "event_random_mugged_2" "Offer your body as payment." 180 "<<set $scene.action='slut'>>">>]
<</if>>
<<case 4 5>>
"@@.generic_female1;Sorry, honey, but I don't believe you. Now pay up, or I'mma have to mess up that cute face.@@"<br>
<br>
<<include "mugOptions">>
<<if setup.getTotalValue("whoring") > 7>>
[<<moveTo "event_random_mugged_2" "Offer your body as payment." 180 "<<set $scene.action='slut'>>">>]
<</if>>
<<case 6>>
You can see her cybernetic eye iris closed as if looking through you.<br>
<br>
"@@.generic_female1;Nah, you're lying, I can tell, now pay up, lest you want to see what ELSE this here body is capable of.@@"<br>
<br>
<<include "mugOptions">>
<<if setup.getTotalValue("whoring") > 7>>
[<<moveTo "event_random_mugged_2" "Offer your body as payment." 180 "<<set $scene.action='slut'>>">>]
<</if>>
<</switch>>
<<case 'slut'>>
Adopting your sultriest expression you bite your lip and look back at your mugger.<br>
<br>
"@@.pc;Please... I don't have much... could I offer my body instead?@@"<br>
<br>
<<if !$scene.slutcess>>
Looking you over they shake their head.
<<if $scene.muggerMale>>
"@@.generic_male1;Sorry, you're not quite my type, and I really need your money so... pay up, now.@@"
<<else>>
"@@.generic_female1;Sorry, you're not quite my type, and I really need your money so... pay up, now.@@"
<</if>>
<br><br>
<<include "mugOptions">>
<<else>>
They hesitate, but as you give a little writhing dance to show off your body they slowly lower the knife.<br>
<br>
<<switch $scene.mugger>>
<<case 1>>
Blushing <<he>> lets the knife fall from to the ground. "@@.generic_male1;I'm so sorry I... I don't want to be doing this, but it's so hard on the street...@@"<br>
<br>
Smiling in comfort you slide to your knees as you unzip <<his>> pants. "@@.pc;Shhh, I'm good at handling hard things...@@"<br>
<br>
<<His>> penis is as cute and sweet as <<he>> is and you savour it, enjoying the cute gasps and moans that the brush of your tongue and the touch of your lips draw forth.<br>
<br>
Bobbing and sucking you reach between <<his>> legs to finger <<his>> bum, smiling when you find that <<hes>> plugged like a good boy. Playing with <<his>> plug it isn't long until your oral attention has <<him>> gasping and cumming, a burst of sweetness exploding in your mouth that you quickly swallow.<br>
<br>
Looking up at <<his>> sweat-glistened post-orgasmic face you can't help, but smile. "@@.generic_male1;You're so cute, I bet you'd make a lovely secretary...@@"<br>
<br>
Still recovering from <<his>> orgasm <<he>> only nods, barely having the energy to return your kiss before you depart.<br>
<br>
[<<moveTo "room_foyer" "Leave." 180>>]
<<case 2 3>>
<<He>> leers at you. "@@.generic_male1;Hmm, I guess I could do for a quick suck.@@" Reaching down <<he>> unbuttons <<his>> fly to release <<his>> large, veiny cock. "@@.generic_male1;Down on your knees, whore, let's see if your mouth can pay the check it just wrote.@@"<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<He>> may be above average in size, but you have a far above average throat, easily hilting <<him>> at the first attempt and then lustily looking up at <<him>> as you start bobbing up and down on <<his>> shaft.<br>
<br>
Analyzing <<his>> preferences you soon conclude that effectively face-raping yourself by repeatedly slamming the full length of <<his>> cock down your throat is <<his>> favourite thing. Not like you aren't used to such, though you find yourself wishing <<he>> was a little bigger to REALLY abuse your throat.<br>
<br>
Maintaining your rapid pace it isn't long until <<he>> cums, pulling back as <<his>> thick wad of semen oozes out onto your tongue. Letting it roll back and forth you ignore the bitter, dirty flavour as you show it off before theatrically gulping it down.<br>
<br>
"@@.generic_male1;Damn if that wasn't one of the best blowjobs I've ever had! I'm a <<man>> of my word, you're free to go though... with a throat like that I may have to track you down and rob you again, if you get my meaning!@@"<br>
<br>
<<He>> breaks into harsh laughter and you quickly hurry away lest <<he>> change <<his>> mind.<br>
<br>
[<<moveTo "room_foyer" "Flee." 180>>]
<<elseif setup.getTotalValue("oral") > 5>>
<<Hes>> a bit too large for you to comfortably take all of <<him>> so you focus on licking and sucking <<his>> sensitive tip while you use your hand to stroke up and down <<his>> shaft.<br>
<br>
You feel like you're making progress but, apparently, not fast enough because <<he>> eventually grabs hold of your head and starts thrusting, face-fucking your throat and forcing <<his>> way all the way down as you gasp and cough.<br>
<br>
By the time <<he>> finally cums you're feeling a bit faint, barely having the cognisance to quickly slurp down <<his>> bitter, dirty tasting offering before you make a mess of things.<br>
<br>
"@@.generic_male1;Huh, not the best, but I suppose it'll do. I'm a <<man>> of my word so fuck off you slut before I decide to rob one of your other holes!@@"<br>
<br>
[<<moveTo "room_foyer" "Flee." 180>>]
<<else>>
You bob and suck as best you can, but it isn't long before <<he>> starts softening, finally pulling away in annoyance.<br>
<br>
"@@.pc;Please, I promise I can do better!@@" You beg.<br>
<br>
"@@.generic_male1;Maybe, or maybe I'd have to face-<<if $fetish.get_raped>>rape<<else>>bang<</if>> it out of you, either way... I'm no longer in the mood, which means it's time for YOU to pay up.@@"<br>
<br>
<<include "mugOptions">>
<</if>>
<<case 4 5>>
The punk grins as she puts the knife away. "@@.generic_female1;Alright you slut, let's see how much your tongue is REALLY worth.@@"<br>
<br>
You drop to your knees as she unfastens her jeans only for her to turn around and present her ass. "@@.generic_female1;Sorry, dear, I don't take payment in rug munching, if you want out of here you're gonna have to lick my ass... don't worry, I keep it NICE and clean.@@"<br>
<br>
Leaning in confirms her assessment, all you smell is sweet, feminine sweat as you bury your face between her cheeks and let your tongue go to work. It swiftly becomes clear that she REALLY enjoys anal stimulation, your tongue spearing into her hole as you lips suck and slurp and she moans in an obvious analgasm.<br>
<br>
Not moving from her spot she stays bent over with your face pressed into her ass until you've put her over the top twice more, finally stepping away as you are left panting, your tongue tired and sore from repeatedly forcing its way into her tight rear passage.<br>
<br>
"@@.generic_female1;Damn, but I could sit on your face for hours! Run along, honey and maybe I'll see you around!@@"<br>
<br>
[<<moveTo "room_foyer" "Flee." 180>>]
<<case 6>>
You swear you can see the wheels churning inside the mind of the half-robotic woman. "@@.generic_female1;Fine, if you can't pay with cash... I'll accept ass.@@"<br>
<br>
Suddenly the metal that is her crotch splits open and a large, steel cock slides forth. Studded and ribbed it is like no human cock you've ever seen, especially when it clicks into "deployed" position and starts slowly rotating.<br>
<br>
You hesitate... maybe it isn't too late to change your mind?<br>
<br>
<<include "mugOptions">>
[<<moveTo "event_random_mugged_3_sex" "Bend over for human/cyborg relations." 30>>]
<</switch>>
<</if>>
<<case 'fight'>>
<<if setup.getTotalValue("martial_arts") == 0>>
Not really having a clue how to fight you make a clumsy grab for the knife only for them to pull away, then lash out with a kick between the legs that has you doubling over and crumpling to the ground in pain.<br>
<br>
"@@.generic_female1;Stupid, shoulda just given me the money!@@" They state, quickly groping you and taking your credits while you roll on the ground in pain.<br>
<br>
Your assailant is already sprinting away by the time you recover your breath and push yourself to your feet, though you appear unharmed they appear to have robbed you of every credit you had!<br>
<br>
<<printThought "Why did I do something so stupid? I should really learn to defend myself...">><br>
<br>
[<<moveTo "room_foyer" "Go on your way." 180>>]
<<elseif setup.getTotalValue("martial_arts") < 2*$scene.mugger>>
You try to put up a fight and, though you don't go down easily, you are eventually overpowered by your would-be mugger.<br>
<br>
<<switch $scene.mugger>>
<<case 1>>
Standing over you brandishing the knife <<hes>> practically trembling and in tears.<br>
<br>
"@@.generic_female1;You really shouldn't have done that! This is hard enough as it is, now hand it over!@@"
<<case 2 3>>
You try to fight back, but the <<man>> is far too powerful for you. Spinning you around <<he>> holds you from behind, the knife perilously close to your face.<br>
<br>
"@@.generic_male1;Calm down there, wouldn't want me to slip and mar that cute face of yours, eh? Now then, where's my money?@@"
<<case 4 5>>
Tough as nails the woman easily slips your punches before returning with a liver-busting hook of her own. It feels like you can't even breathe as you crumple to the ground, gasping in pain.<br>
<br>
"@@.generic_female1;Stupid, real stupid. Now, you gonna pay up, or are you going to force me to ruin that pretty face?@@"
<<case 6>>
The cyborg just stands there for a few moments as you swing away, seeming to not even notice your blows. You, on the other hand, definitely notice, as each hit against her metallic frame hurts as much as hitting a brick wall, which she might as well be.<br>
<br>
"@@.generic_female1;Are you done?@@" She finally asks as you clutch your fist in pain, wondering if you maybe broke a finger.<br>
<br>
"@@.generic_female1;Your resistance is futile. Give me the money or I will be forced to hurt you.@@"
<</switch>>
<br><br>
[<<moveTo "event_random_mugged_2" "Pay up." 180 "<<set $scene.action='pay'>>">>]<br>
[<<moveTo "event_random_mugged_2" "Lie and say you don't have anything." 180 "<<set $scene.action='lie'>>">>]<br>
<<if setup.getTotalValue("whoring") > 7>>
[<<moveTo "event_random_mugged_2" "Offer your body as payment." 180 "<<set $scene.action='slut'>>">>]
<</if>>
<<else>>
<<switch $scene.mugger>>
<<case 1>>
Lashing out you knock the blade from your nervous mugger's hand. <<His>> eyes go wide as <<he>> stares at you with fresh fear before frantically fleeing in the opposite direction.<br>
<br>
[<<moveTo "room_foyer" "Continue on your way." 180>>]
<<case 2 3>>
Lunging for the <<man>> you take <<him>> by surprise, managing to knock the knife away and kick it under a dumpster before <<he>> can get <<his>> bearings.<br>
<br>
<<He>> may be bigger and stronger, but you are MUCH faster and it quickly becomes clear that <<he>> isn't all that skilled as a fighter.<br>
<br>
Taking <<his>> legs out from under <<him>> with a kick you stand over <<him>>, ready to strike again if <<he>> tries to get up when a pair of spotlights suddenly focus down from above, one on each of you.<br>
<br>
[<<moveTo "event_random_mugged_3_valkyrie" "Look up." 180>>]
<<case 4 5>>
You lash out at your attacker, attempting to wrestle control of the knife away from her.<br>
<br>
<<if setup.getTotalValue("strength") > 15>>
Your combination of technique and power has you easily overwhelming your opponent, almost crushing her wrist as you wrest control of the knife away and knock her to the ground.<br>
<br>
"@@.generic_female1;Help, help, I'm being mauled by a bimbo!@@"
<<else>>
Falling to the ground in a scramble it goes back and forth, but you manage to come up up top, holding her down while you brandish the knife.<br>
<br>
"@@.generic_female1;Okay, okay! I yield, I'm sorry I tried to mug you...@@"
<</if>>
<br><br>
You're trying to decide what to do now when you suddenly find yourself in the centre of a spotlight.<br>
<br>
[<<moveTo "event_random_mugged_3_valkyrie" "Look up." 180>>]
<<case 6>>
More than half metal it would be foolish to attempt to strike with your would-be assailant so you take another tact, acting the matador and baiting her forward before sliping to her back and jumping up onto her.<br>
<br>
Unbothered by your weight she lacks the flexibility to actually reach back and pry you off as you try to find something important and/or vulnerable amidst the cables running up her neck.<br>
<br>
Before either of you can truly take the upper hand a spotlight suddenly shines down from above, bathing you both in blaring light.<br>
<br>
[<<moveTo "event_random_mugged_3_valkyrie" "Look up." 180>>]
<</switch>>
<</if>>
<<default>>
ERROR, unknown scene action: <<=$scene.action>>
<</switch>>
</div>[<<moveTo "event_random_mugged_2" "Pay up." 180 "<<set $scene.action='pay'>>">>]<br>
<<if $scene.fight_mugger>>
[@@.link_locked;You already failed to fight your way out of the situation.@@]<br>
<<else>>
[<<moveTo "event_random_mugged_2" "Fight back!" 180 "<<set $scene.action='fight'>><<set $scene.fight_mugger=true>>">>]<br>
<</if>>
<<if $scene.lie_mugger>>
[@@.link_locked;You already tried to lie your way out of things.@@]<br>
<<else>>
[<<moveTo "event_random_mugged_2" "Lie and say you don't have anything." 180 "<<set $scene.action='lie'>><<set $scene.lie_mugger=true>>">>]<br>
<</if>>/*#
#desc: assfucked by cyborg mugger
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 13 'very' $SEEN_STRANGER>>
<<setTmpEffect 'drug_pacification'>>
<<set $player.flags.world_events.mug_slut_cyborg = true>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
There's no way to describe the cyborg woman's artificial cock without using the word "intimidating," but you bend over<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> and slide the plug out of your ass<<else>>and spread your cheeks<</if>> in preparation.<br>
<br>
You're at least pleased to discover that, among its other features, the device is self-lubricating, less comforting to discover is that it apparently has a jack-hammer function, making rapid hard, short thrusts to work its way deeper into your ass.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
Though intense it is not THAT much worse than things you have previously endured and you soon find yourself moaning at the hard, <<if $player.body_ref.penis>>prostate<<else>>butt<</if>>-pounding fucking.
<<else>>
The cyborg takes hold of your hips and that's all she wrote, the combination of her cock and hands far too strong for you to do anything but take it hard and fast.
<</if>>
<br><br>
As the metal cock alternates thrusting, vibrating and rotating to stimulate your rear passage in new and interesting ways you wonder what, exactly, would constitute her orgasm. You don't have long to wait as she kicks into a new, higher gear. Pumping and thrusting with industrial efficiency she makes you feel like you're about to rattle in twain.<br>
<br>
With a mechanized grunt she thrusts all the way deep and you feel something thick and gloopy pump into you.<br>
<br>
"@@.generic_female1;There you go, slut@@" she notes, letting you slump to the ground as you slide off her shiny cock. "@@.generic_female1;Your performance was satisfactory and I hope you enjoy my gift. The effects SHOULD just be temporary but, well, you're already such a slut it's possible you won't even notice the way my cum is engineered to make anyone I breed more docile and enthusiastic.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
She leans down and you feel her shove your plug back into your worn ass. "@@.generic_female1;There, since you were considerate enough to bring the proper equipment, now you won't leak a drop!@@"<br>
<br>
<</if>>
You groan, slowly pushing yourself back to your feet and staggering away up the alleyway.<br>
<br>
[<<moveTo "room_foyer" "Continue on your way." 180>>]
</div>/*#
#desc: interrogated by Valkyrie after fighting off your would-be mugger
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if $fetish.get_raped>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_STRANGER>>
<<set $player.flags.world_events.mug_fight = true>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" $scene.mugger_portrait setup.charImage("npc_valkyr") "flip">>
<div id="invframe" class="scrolltext">
Both you and your mugger look up in shocked fear as a pair of Valkyries slowly lower to the ground, arranged to block the alleyway in both directions to prevent escape.<br>
<br>
Forcefully pulling you and your would-be assailant apart there is no resisting the feminine cyborgs. The one holding you speaks first, her mechanical voice booming with command in the narrow alley.<br>
<br>
"@@.valkyr;DISTURBANCE HALTED, WHAT WAS THE SOURCE OF THE ALTERCATION?@@"<br>
<br>
You and your mugger start talking over one another, each stating that the other started the fight.<br>
<br>
<<if $fetish.get_raped>>
"@@.valkyr;EVENT SUMMARIES CONTRADICT, AT LEAST ONE SUBJECT IS LYING, COMMENCING SEARCH PROCEDURES.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
Systematically patting you down she comes to the <<=setup.getItemTypeName('plug')>> in your ass.<br>
<br>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.valkyr;OBSTRUCTION DETECTED. ANALYSING. OBSTRUCTION NOT CONTRABAND, LEAVING IMPLANTED WHILE CONTINUING SEARCH.@@"<br>
<br>
You gasp as she threads through the hollow plug with her metallic cock, holding you perched on the artificial phallus as you legs dangle in front of her.
<<else>>
"@@.valkyr;OBSTRUCTION DETECTED, REMOVING TO SEARCH FOR CONTRABAND.@@"<br>
<br>
You gasp as she pulls the plug out of your rear, only to moan when she replaces it with a metallic cock, holding you perched on the artificial phallus as you legs dangle in front of her.
<</if>>
<br><br>
"@@.valkyr;NO CONTRABAND DETECTED.@@" She announces.<br>
<br>
Moaning and thrashing at the combination of intimate violation with the rapid way that things have gone from you being almost mugged to besting your attacker and now. Your panic seems to trigger something in the Valkyrie holding you.<br>
<br>
"@@.valkyr;SUBJECT IS BECOMING HYSTERICAL, ADMINISTERING PACIFICATION TREATMENT.@@"<br>
<br>
Suddenly the cock in your ass explodes with stimulation, a combination of shocks, vibrations and things you can't even identify pounding your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as never before. You go almost rigid, your eyes rolling back as you cum near instantly, <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>your seed dripping<<else>>dripping down her steel leg<</if>> onto the pavement below as you go limp, hanging in her grasp.<br>
<br>
"@@.valkyr;SUBJECT CALMED.@@"
<<else>>
Systematically patting you down she appears to find nothing of concern.
<</if>>
<<else>>
One Valkyrie holds you with ease while her counterpart deploys some sort of scanner that sweeps over your body.<br>
<br>
"@@.valkyr;NO CONTRABAND DETECTED.@@" She announces, though her iron grip does not relax.
<</if>>
<br><br>
You glance over at your would-be assailant who is having far worse of a time. Stripped naked there is a small pile of what look to be drugs and other contraband. The search concluded the Valkyrie is now binding the criminal in a brutally stringent hogtie.<br>
<br>
"@@.valkyr;CRIMINAL APPREHENDED. THANK YOU FOR YOUR ASSISTANCE, CITIZEN.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug") && $fetish.get_raped>>
Lifting you off her cock the Valkyrie holds you aloft with one hand before<<if setup.checkItemTypeTag('plug', ['hollow'])>> replacing the plug in your ass and<</if>> gently placing you on the ground.
<<else>>
Seemingly no longer concerned with you the Valkyrie gently places you on the ground.
<</if>>
<br><br>
You blink in surprise as the Valkyries move to stand next to one another, one carrying the helplessly bound and gagged prisoner, the other the would-be mugger's belongings and contraband.<br>
<br>
"@@.valkyr;REMAIN MOTIONLESS FOR TRANSPORT@@" one of the faceless Valkyrie commands as their wings spread wide. With a powerful flap, assisted by a jet booster, they rise into the air, the trio soon disappearing out of sight amongst the high-rises, the only evidence of their presence a faint smell of ozone<<if setup.checkItemTypeWorn("plug") && $fetish.get_raped>> and the lingering memory of her cock "inspecting" your ass<</if>>.
<br>
<br>
[<<moveTo "room_foyer" "Continue on your way." 180>>]
</div>/*#
#desc: pickpocketed if you have way too much money
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.party.timesAttended > 0>>
<<addCredits -500>>
<<else>>
<<addCredits `Math.min(500, Math.floor($player.money.total/2))-$player.money.total`>>
<</if>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
Walking through downtown you bump into a random stranger. You each mumble an apology and but after you've walked another block that you check yourself and discover that you've been
<<if $npc_manager.flags.party.timesAttended > 0>>
robbed!<br>
<br>
You look around for the offender but they've slipped away into an alleyway, leaving you out a few hundred credits. You sigh. There was a time that such a loss would have been utterly demoralising, now it's more just annoying.
<<else>>
robbed of most of your money!<br>
<br>
You look around, but it's too crowded and the person could have fled who knows where by now. You sigh.<br>
<br>
<<printThought "Just when I was getting on top, it's like the universe is punishing me for finding a way to get ahead of the game!">>
<</if>>
<br><br>
[<<moveTo "room_foyer" "Continue on your way." 180>>]
</div>/*#
#desc: preacher yelling about loose women
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.world_events.preacher = true>>
<<if setup.analyzeWornTags(['female','unisex','male']) != "male" && setup.checkVisibleClothingTag('slutty') >= 50>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" setup.charImageGeneric("preacher_01")>>
<div id="invframe" class="scrolltext">
Walking along you happen past a loud preacher, screaming about sin.<br>
<br>
<<if setup.analyzeWornTags(['female','unisex','male']) != "male">>
<<if setup.checkVisibleClothingTag('slutty') >= 50>>
Singling you out <<he>> points and howls loud enough for the entire street to hear.<br>
<br>
"@@.generic_male1;Whore! Jezebel! Harlot! Look upon this fallen woman! Disgusting to all right-thinking people she is fallen and depraved, let all of you take lesson and stay well clear of such a sinful road!@@"
<<elseif setup.checkVisibleClothingTag('modest') >= 70>>
Singling you out <<he>> points and yells loud enough for the entire street to hear.<br>
<br>
"@@.generic_male1;See this woman? Look upon her and know that she is a proper, modest woman of chastity and good temperament. All you harlots should take her as example or you will burn, burn in the fires of hell for your lusty ways!@@"
<<else>>
Singling you out <<he>> points and shouts.<br>
<br>
"@@.generic_male1;Impure woman! You are on the road to hell! Repent, sinner, mend your ways and cover thine flesh! It is not too late for you to turn away from this sinful path and find yourself a good, honest husband to take care of you.@@"
<</if>>
<<else>>
<<if setup.checkVisibleClothingTag('slutty') >= 50>>
<<He>> appears to single you out with particular disgust. "@@.generic_male1;Child of Adam! How have you fallen so far! You were born to be a pillar of the community and you have embraced all of the flaws of the weaker sex, displaying your body like a harlot, filth, I say, swine! In a righteous society you would be cast out and driven into the wilderness!@@"
<<else>>
<<He>> seems to completely ignore you, instead singling out some random businesswoman in a pantsuit to rant about how only women who are whores and sinners wear pants.
<</if>>
<</if>>
<br><br>
Trying to ignore <<his>> mad ravings you hurry along.<br>
<br>
[<<moveTo "room_usual_place_outside" "Continue on your way." 180>>]
</div>/*#
#desc: sexy nuns preaching on the street, breadcrumb for church
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "The Centre of Town">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.world_events.nun = true>>
<<if !$player.flags.church.visited>>
<<set $player.locations.church = true>>
<<set $player.flags.church.intro = 'preacher'>>
<</if>>
<<if $player.flags.church.visited && $player.flags.church.level >= 3>>
<<set $scene.firstAcolyte = $npc_acolyte.stage == 5>>
<<if $scene.firstAcolyte>>
<<set $npc_acolyte.stage = 6>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.flags.church.level < 3>>
<<createAdvBGR "./images/locations/street.png" "npc_nun_chastity_modest">>
<<else>>
<<createAdvBGR "./images/locations/street.png" "npc_nun_chastity_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.flags.church.visited>>
Walking through town you happen past a group of nuns preaching on a street corner.
<<switch $player.flags.church.level>>
<<case 0>>
You recognise them as followers of the Church of the Goddess, gorgeous nuns with perfect makeup, hourglass waists all shown off by long, perfectly fitted robes. Though many of them have their mouths covered by their habits the ones who don't greet you with a smile and a wave, encouraging you to visit the Church of the Goddess.
<<case 1>>
One of the nuns, <<=setup.getNpcName('npc_nun_chastity', 'formal')>>, recognises you and greets you with a smile.<br>
<br>
"@@.npc_nun_chastity;Glorious day, sister! It is so lovely to see you out and about and I hope to see you as well in church!@@"<br>
<br>
You nod, saying you will be sure to make time, greeting her and the other nuns with a smile before continuing on your way.
<<case 2>>
One of the nuns, <<=setup.getNpcName('npc_nun_chastity', 'formal')>>, recognises you and greets you with a lusty grin.<br>
<br>
"@@.npc_nun_chastity;Glorious day, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>!@@" You pause to return her greeting and she pulls you in for an embrace, complete with a passionate kiss. "@@.npc_nun_chastity;Mmm, your lips are so delicious, it is so wonderful to see you, how has spreading the Goddess' joy been?@@"<br>
<br>
You blush as she flashes a knowing smile, the two of you exchanging additional well-wishes before you continue on your way, leaving her to resume her ministry to those not yet part of the faith.
<<case 3>>
<<if $scene.firstAcolyte>>
Approaching the nuns a familiar pair of eyes twinkles at you from about the covered and surely gagged mouth below as you recognise the eager acolyte <<=setup.getNpcName('npc_acolyte', 'formal')>>.<br>
<br>
Noting your attention, <<=setup.getNpcName('npc_nun_chastity', 'formal')>> walks over with a smile.<br>
<br>
"@@.npc_nun_chastity;Ah, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>! <<=setup.getNpcName('npc_acolyte', 'formal')>> wrote in her journal this morning how much she hoped she might see you today. This is her first time out in public since taking her vows, she was SO excited, and that was before I filled her holes and locked her chastity belt. As part of her continuing training she has been enjoying near constant vibrations since early this morning, but no release! No, the Sisters Superior have some very particular plans for rewarding this cute thing!@@"<br>
<br>
Wrapping her arm around <<=setup.getNpcName('npc_acolyte', 'formal')>> in a friendly hug <<=setup.getNpcName('npc_nun_chastity', 'formal')>> continues on as the sexually stimulated neophyte shudders and whimpers softly in what you estimate was a ruined orgasm. "@@.npc_nun_chastity;Ah! There she goes again, she has been quite the acolyte, that is for sure, haven't seen such an eager pupil in some time, why, look at the gag she insisted on wearing today!@@"<br>
<br>
<<=setup.getNpcName('npc_nun_chastity', 'formal')>> pulls down the front of <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> mask for a moment to reveal a truly massive cherry-red ball gag forcing her lips wide. "@@.npc_nun_chastity;Good thing, too,@@" she adds, fixing the concealing mask before any passers by sees it, "@@.npc_nun_chastity;I daresay any lesser measure would have been insufficient to keep her to her vow of silence.@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> blushes and then shudders as she is once again distracted by sexual stimulation.<br>
<br>
"@@.npc_nun_chastity;Well, it was lovely seeing you, do come by the church for a visit sometime, I just know <<=setup.getNpcName('npc_acolyte', 'formal')>> would love to share a bit of celebration with you after all she has accomplished.@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> blushes even harder as she bashfully looks away from you. "@@.npc_nun_chastity;Oh, come on, you know I monitor your journal,@@" turning back to you <<=setup.getNpcName("npc_nun_chastity","formal")>> smiles. "@@.npc_nun_chastity;She really is quite the writer. Her fantasies are very biblical, if you know what I mean, and you have shown up quite a few times.@@"<br>
<br>
Now it's your turn to blush as you promise you'll drop by the church for a visit soon before continuing on your way.
<<else>>
One of the nuns, <<=setup.getNpcName("npc_nun_chastity","formal")>>, greets you with a lusty grin, pulling you in for a passionate embrace, complete with a long, tongue-entwined kiss.<br>
<br>
"@@.npc_nun_chastity;Mmm, you taste delicious, I wish you luck in finding your next cock to grace with one of the Goddess' blessings.@@" She states once you finally separate.<br>
<br>
You thank her for the well-wishes, returning the favour to wish her luck in feeling each of her three holes filled hard and deep.<br>
<br>
She smiles and gives a sweet bow of thanks. "@@.npc_nun_chastity;So shall it be, in fact I have been promised an evening soon with the Sisters Superior in reward for my recruitment success. Oh, it makes me wet just thinking about it.@@"<br>
<br>
You congratulate her on her forthcoming good fortune, noting how her fellow evangelistic nuns appear a bit starry-eyed in lust at the thought as well. Wishing them all luck in their ministry you continue on your way, the meeting with your fellow faithful putting a little skip in your step.
<</if>>
<<default>>
ERROR: unexpected church level: <<=$player.flags.church.level>>
<</switch>>
<<else>>
Walking through town you happen past a group of nuns preaching on a street corner. Focused on your own concerns you initially pay them no mind, only to take a few more steps and do a double take as you glance back in surprise.<br>
<br>
Though technically completely covered these nuns are like nothing you have seen before. Their habits are fitted and draped like formal gowns, hugging their hips and waists in perfect hourglass shapes, heaving breasts drawing attention to the holy symbol dangling from their neck. The symbol is unfamiliar to you, a trio of silver rings in a vertical column, each with a solid circle in its centre. Gloved with heads covered by wimples their only visible flesh is their faces, and even that is minimised as at least half of them have a cloth obscuring them from the nose down.<br>
<br>
One of the unmasked nuns notes your staring and smiles in your direction, stepping closer to address you as you realise that she, and the rest of the nuns, are all decorated with perfect makeup.<br>
<br>
"@@.npc_nun_chastity;Hello, sister. Have you heard of the Church of the Goddess?@@"<br>
<br>
<<if setup.analyzeWornTags(['female','unisex','male']) == "male">>
<<printThought "Sister? But I'm- Hmm, guess it must be a religious thing...">>
<<else>>
<<printThought "Sister? Must be a religious thing...">>
<</if>>
<br><br>
You shake your head, a bit stupefied by the presence of this gorgeous woman.<br>
<br>
"@@.npc_nun_chastity;Quite alright. My name is <<=setup.getNpcName("npc_nun_chastity","formal")>>. We are a smaller congregation, somewhat new to this great city. The short summary of our faith is that, though we welcome all who would join our congregation, we venerate the ideals of divine femininity, in all its aspects. If this interests you I welcome you to join us for a service or ceremony — we offer many forms of purifying the mind and body including education, prayer, confession and meditation.@@"<br>
<br>
You thank her for the information as she tells you where their church is in the old district on the outskirts of the city. She smiles and curtsies before turning away. As she turns you gawk, both at her perfect butt visible through the tight skirt of her robe — and the fact that a VERY steep pair of stiletto heels peeks out from underneath the floor-length covering!<br>
<br>
A bit confused, as well as aroused, you continue on your way.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Continue on home." 180>>]
</div>/*#
#desc: overhear a gloryhole client on the bus
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "Bus Stop">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You are passing a bus-stop when you hear the driver shout a greeting at someone disembarking.<br>
<br>
"@@.npc_gloryhole;Goodbye, have a great day!@@"<br>
<br>
The bus pulls away as you blink in surprise.<br>
<br>
<<printThought "Wait, was that one of my clients from The Usual Place's gloryhole?">><br>
<br>
The reality of meeting one of your "anonymous" partners in the real world sends a forbidding shiver up your spine as you quickly continue on your way.<br>
<br>
[<<moveTo "room_psychiatrist_lobby" "Continue on your way." 180>>]
</div>/*#
#desc: two people making out in the elevator
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "Apartment Elevator">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.relationship_stage == 0 &&
($npc_admin.flags.relationship == "" || $npc_admin.flags.relationship == "friend") &&
$npc_landlord.stage < 2>>
<<applyStress 5>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_elevator.png">>
<div id="invframe" class="scrolltext">
Stepping into the elevator, for your apartment, you find a couple already there on their way up from the underground parking garage.<br>
<br>
Seemingly not even noticing you they are wrapped around each other making out like teenagers as you stick to one side and try not to stare. Ticking up floors they only get more grabby with one another, moaning and whispering until you reach your floor and quickly hurry out.<br>
<br>
<<if $npc_technician.relationship.relationship_stage == 0 &&
($npc_admin.flags.relationship == "" || $npc_admin.flags.relationship == "friend") &&
$npc_landlord.stage < 2>>
<<printThought "I wish I had someone to snog with...">><br>
<br>
<</if>>
[<<moveTo "room_foyer" "Continue to your apartment." 180>>]
</div>/*#
#desc: plug event
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("plug")>>
<<set _anal = setup.getEffectivePlugSize()>>
<<applyExperience 'anal' _anal 'normal' $EXPOSED>>
<<if (setup.getTotalValue("anal")-5) > setup.getEffectivePlugSize() || setup.getTotalValue("anal") < setup.getEffectivePlugSize()>>
<<applyExperience 'humiliation' 12 'little' $EXPOSED>>
<<set $player.flags.world_events.plug = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Walking along the street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You are stepping off a curb when a car comes barreling around the corner and you barely jump back fast enough to avoid being run over.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
<<if setup.getTotalValue("anal") > 5>>
Still tense from the near-miss you find yourself thinking about your empty rear, your tightly-clenched sphincter longing for something to squeeze down on.<br>
<br>
<<printThought "Mmmm, I should be wearing an anal plug... wait... am I becoming addicted to anal stimulation?">>
<<else>>
<<printThought "Whew, that was a close one!">>
<</if>>
<<else>>
<<if (setup.getTotalValue("anal")-5) > setup.getEffectivePlugSize()>>
You gasp as your <<=setup.getItemTypeName("plug")>> almost slips out of your ass, and you are forced to reach behind and poke it back into place as you hope nobody noticed.<br>
<br>
<<printThought "Hmm, after all this practice... maybe I should upgrade to a more substantial plug? This one is kind of annoyingly small...">>
<<elseif setup.getTotalValue("anal") < setup.getItemObjFromType("plug").effect.anal.level>>
You gasp as your body almost forcibly ejects the massive plug from your ass. You are forced to reach around and almost shove it back into place with your hand as you hope nobody noticed, or guessed at your secret depravity.<br>
<br>
<<printThought "Maybe this plug is too big, I'd be less stressed with something a bit more reasonable...">>
<<else>>
Your sudden motion causes the <<=setup.getItemTypeName("plug")>> in your rear to shift — the stimulation bringing a smile to your face.<br>
<br>
<<printThought 'Mmm, this plug is just the perfect size. I love this sort of "training".'>>
<</if>>
<</if>>
<br><br>
[<<moveTo "company_lobby" "Continue on your way." 180>>]
</div>/*#
#desc: chased in old town
#status: FINISHED 0.8.2.0
#*/
<<set $player.location to "Student Quarter">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.analyzeWornTags(['male','unisex','female']) == "female">>
<<removeRandomEvent 'transit' 'room_student_quarter' 'church_intro'>>
<<removeRandomEvent 'transit' 'room_student_quarter' 'church_intro_karm'>>
<<else>>
<<initRoom>>
<<moveTo "room_student_quarter">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_student_quarter.png">>
<div id="invframe" class="scrolltext">
You are walking through the older, sketchier part of town when you get the feeling that you are being followed.<br>
<br>
Glancing back you spot a group of suspicious looking characters walking towards you, noticing your attention they speed up.<br>
<br>
[<<moveTo "event_random_chased_2" "Walk faster." 180>>]
</div>/*#
#desc: flee into church for sanctuary
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if $player.flags.church.visited>>
<<set $player.location to "Outside the Church of the Goddess">>
<<else>>
<<set $player.location to "Outside a large Gothic Church">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_exterior.png">>
<div id="invframe" class="scrolltext">
You start walking faster only for your pursuers to do the same. You speed up further but they quicken as well and soon you are sprinting through the street. <<if setup.getTotalValue("stamina") > 10>>Despite your speed you're unfamiliar with this area and you realise that you've made a wrong turn. You<<else>>Realising that they will catch you soon, you<</if>> round a corner to see the imposing face of <<if $player.flags.church.visited>>the Church of the Goddess<<else>>what looks like a gothic cathedral<</if>>.<br>
<br>
You put on a final burst of steam, skipping up the stairs and pounding on the front door as you cry out for "sanctuary." <br>
<br>
[<<moveTo "event_church_intro_0" "The door opens." 300>>]
</div>/*#
#desc: hobo encounter intro
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<initRoom>>
<<removeRandomEvent 'transit' 'room_student_quarter' 'hobo'>>
<<addRandomEvent $randomEvents['transit']['room_student_quarter'] 'hobo'>>
<<moveTo "room_student_quarter">>
<</if>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
You're walking past a dark alleyway when a pile of trash shifts and you realise it's a <<man>>. A very dirty <<man>>.<<if $fetish.bestiality_hard>> Correction... a dirty <<man>>... and <<his>> equally mangy dog...<</if>><br>
<br>
<<He>> takes a swig of an almost empty bottle of cheap booze, burps and looks up at you with a half-focused gaze.<br>
<br>
<<switch setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<<case "slutty">>
"@@.generic_male1;Hey, slut... how about you have something for a <<man>> down on <<his>> luck?@@"
<<case "casual">>
"@@.generic_male1;Hey lady, you have anything for a <<man>> down on <<his>> luck?@@"
<<case "office">>
"@@.generic_male1;Well look at Miss Office Lady. You working those long hours? How about you spare something for a <<man>> down on <<his>> luck?@@"
<<case "formal">>
"@@.generic_male1;Well look at the fancy lady! What are you doing on this side of town, huh? Taking in the sights? How about something for a <<guy>> down on <<his>> luck?@@"
<<case "maid">>
"@@.generic_male1;Mmmm, aren't you the sexy maid. How about you give me some cleaning? I've been a real dirty <<boy>>...@@"
<<case "fetish">>
"@@.generic_male1;Woah, aren't you kinky in public! How about it fetish lady, how about something for a <<guy>> down <<his>> luck?@@"
<<default>>
ERROR: unexpected tag! <<=setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<</switch>>
<br><br>
You realise now that the stench you thought was coming from the alleyway is actually coming from the <<man>>, and <<he>> leers up at you through <<if $options.fem>>her dirty and matted hair<<else>>single digit teeth<</if>>.<br>
<br>
<<if $player.money.total >= 10>>
[<<moveTo "event_random_hobo_2" "Give <<him>> a few credits." 120 "<<set $scene.action='money'>>">>]<br>
<<else>>
[@@.link_locked;You hardly have two credits to rub together, and none to spare.@@]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_random_hobo_2" 'Offer <<him>> some "tenderness."' 120 "<<set $scene.action='blow'>>">>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to offer yourself to some dirty stranger in an alleyway.@@]<br>
<</if>>
[<<moveTo "event_random_hobo_2" 'Hurry on your way.' 120 "<<set $scene.action='leave'>>">>]
</div>/*#
#desc: hobo encounter react
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case "money">>
<<if $player.money.total >= 20>>
<<addCredits -20>>
<<else>>
<<addCredits -10>>
<</if>>
<</switch>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = "bum">>
<</if>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "voluntary">>
<</if>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "money">>
You dig some credits out of your pocket and hand them to the <<man>>, only for <<him>> to grab your hand and start to pull you off balance.<br>
<br>
<<if setup.getTotalValue("martial_arts") > 5>>
Thanks to <<his>> drunk state you are easily able to use your combat training and twist free of <<his>> grip.<br>
<br>
"@@.generic_male1;Aww, why you gotta be like that... come on, gimme a little sugar...@@"<br>
<br>
[<<moveTo "event_random_hobo_3_fuck" 'Give in and let <<him>> overpower you...' 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_random_hobo_3_run" 'Run away!' 600>>]
<<elseif setup.getTotalValue("dexterity") > 12>>
Thanks to <<his>> drunk state you are able to nimbly slip free of <<his>> grasp.<br>
<br>
"@@.generic_male1;Aww, why you gotta be like that... come on, gimme a little sugar...@@"<br>
<br>
[<<moveTo "event_random_hobo_3_fuck" 'Give in and let <<him>> overpower you...' 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_random_hobo_3_run" 'Run away!' 600>>]
<<else>>
"@@.generic_male1;Come on, gimme a little sugar...@@"<br>
<br>
<<His>> grip is surprisingly strong as <<he>> pulls you closer, the scent of booze on <<his>> breath <<if setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted')>>nigh overpowering even in you own drunken state<<elseif setup.hasTmpEffect('tipsy')>>nearly enough to push you over the edge into full-on drunk<<else>>almost enough to get you drunk<</if>> as <<he>> leans in for a kiss<<if !$options.fem>>, his stubble scratchy on your smooth cheek<</if>>.<br>
<br>
<<printThought "<<Hes>> so strong.">><br>
<br>
You stumble to the ground and <<hes>> on top of you, <<his>> weight pressing down as you find yourself face down in a patch of mud.<br>
<br>
[<<moveTo "event_random_hobo_3_fuck" 'Give in and let <<him>> overpower you...' 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_random_hobo_3_fuck" 'Keep fighting back!' 1800 "<<set $scene.accept=false>>">>]
<</if>>
<<case "blow">>
You wink at the <<man>> and take a step deeper into the alleyway. You hear some clumsy stumbling from behind you, but a few steps later the <<man>> catches up and you have <<him>> up against the the dirty wall as you slide to your knees and <<his>> pants fall to <<his>> knees.<br>
<br>
The scent of <<his>> cock hits you like a smack in the face, reeking of sweat<<if $fetish.piss>> and piss<</if>> and booze, slowly twitching to life between your fingers as the girthy thing tries to overcome whiskey dick.<br>
<br>
<<switch setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<<case "slutty" "casual" "fetish">>
"@@.generic_male1;That's right, bitch, suck it.@@"
<<case "office" "formal">>
"@@.generic_male1;That's right, you fucking tourist, work an actual job <<if $options.fem>>sucking my cock<<else>>and suck the cock of a real man<</if>>.@@"
<<case "maid">>
"@@.generic_male1;Go on... lick it clean...@@"
<<default>>
ERROR: unexpected tag! <<=setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<</switch>>
<br><br>
The stench almost makes you gag, and you try not to think about what the taste is going to be like as you stare at the cock slowly rising in front of you, and the hairy balls behind...<br>
<br>
<<if setup.getTotalValue("penis") > 10 || setup.getTotalValue("whoring") > 10 || setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo "event_random_hobo_3_suck" 'Show your love of cock and suck <<him>> off.' 300 "<<set $scene.reason='penis'>>">>]<br>
<</if>>
<<if setup.getTotalValue("whoring") > 10>>
[<<moveTo "event_random_hobo_3_suck" 'Show your professionalism and suck <<him>> off.' 300 "<<set $scene.reason='whore'>>">>]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_random_hobo_3_suck" 'Show how much of a sex-addict you are by sucking <<him>> off.' 300 "<<set $scene.reason='bimbo'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You can't bring yourself to willingly suck <<him>> off...@@]<br>
<</if>>
<<if setup.getTotalValue("dexterity") > 10 || setup.getTotalValue("strength") > 10>>
[<<moveTo "event_random_hobo_3_run" 'This is disgusting, get up and run away!' 300>>]
<<else>>
[<<moveTo "event_random_hobo_3_suck" 'This is disgusting, get up and run away!' 300 "<<set $scene.reason='run'>>">>]
<</if>>
<br>
<<case "leave">>
You look away from the <<man>> in disgust and attempt to hurry on your way... only for <<him>> to put on a sudden burst of speed and reach after you.<br>
<br>
<<if setup.getTotalValue("martial_arts") > 5>>
Thanks to <<his>> drunk state you are easily able to use your combat training and twist free of <<his>> grip.<br>
<br>
"@@.generic_male1;Aww, why you gotta be like that... come on, gimme a little sugar...@@"<br>
<br>
[<<moveTo "event_random_hobo_3_fuck" 'Give in and let <<him>> overpower you...' 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_random_hobo_3_run" 'Run away!' 600>>]
<<elseif setup.getTotalValue("dexterity") > 12>>
Thanks to <<his>> drunk state you are able to nimbly slip free of <<his>> grasp.<br>
<br>
"@@.generic_male1;Aww, why you gotta be like that... come on, gimme a little sugar...@@"<br>
<br>
[<<moveTo "event_random_hobo_3_fuck" 'Give in and let <<him>> overpower you...' 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_random_hobo_3_run" 'Run away!' 600>>]
<<else>>
<<if !setup.getItemObjFromType('shoes').hasOwnProperty('heels') || setup.getTotalValue("heels") >= setup.getItemObjFromType('shoes').heels.difficulty>>
You try to slip away, but you put your foot wrong, your heel twiting under you as you fall to the ground.<br>
<br>
In an instant <<hes>> on top of you, <<his>> weight pressing down as you find yourself face down in a patch of mud.<br>
<br>
[<<moveTo "event_random_hobo_3_fuck" 'Give in and let <<him>> overpower you...' 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_random_hobo_3_fuck" 'Keep fighting back!' 1800 "<<set $scene.accept=false>>">>]
<<else>>
You take advantage of the <<mans>> pants being down to make your escape, and you flee up the alleyway and around the corner as <<he>> screams after you.<br>
<br>
[<<moveTo "room_citymap" 'Escape back to town.' 300>>]
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: hobo encounter run away
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getItemObjFromType('shoes').hasOwnProperty('heels')>>
<<set setup.getItemObjFromType('shoes').heels.difficulty>>
<</if>>
<<if setup.getItemObjFromType('shoes').hasOwnProperty('heels') && setup.getTotalValue("heels") < setup.getItemObjFromType('shoes').heels.difficulty>>
<<alterStatAllWorn 'dirty' '["add",100]'>>
<</if>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<if $scene.from_evil>>
You try to run... but you're just too exhausted from your earlier ordeal, stumbling barely a few steps before the <<man>> catches up to you and drags you to the ground.<br>
<br>
<<printThought "Oh shit...">><br>
<br>
[<<moveTo "event_random_hobo_3_fuck" 'Give in and let <<him>> overpower you...' 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_random_hobo_3_fuck" 'Keep fighting back!' 1800 "<<set $scene.accept=false>>">>]
<<elseif !setup.getItemObjFromType('shoes').hasOwnProperty('heels') || setup.getTotalValue("heels") >= setup.getItemObjFromType('shoes').heels.difficulty>>
You run away, <<if setup.getItemObjFromType('shoes').hasOwnProperty('heels')>>successfully keeping balance in your heels as you bolt<<else>>bolting up the street<</if>> faster than the <<man>> can follow, not stopping until you've turned a corner and made it several blocks without any sight of the disgusting <<man>>.<br>
<br>
<<printThought "I should really be more careful being out at night...">><br>
<br>
[<<moveTo "room_citymap" 'Hurry on back into town.' 300>>]
<<else>>
You try to run away... but your heels have a different idea. Your ankle twists out from under you as you crash to the ground, a shallow puddle doing little to cushion your fall as you splash into the dirty water. Before you can scramble to your feet the <<mans>> weight is pressing down on you...<br>
<br>
<<printThought "Oh shit...">><br>
<br>
[<<moveTo "event_random_hobo_3_fuck" 'Give in and let <<him>> overpower you...' 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_random_hobo_3_fuck" 'Keep fighting back!' 1800 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: hobo encounter suck him off willingly
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _legwear = setup.getItemFromType('legwear')>>
<<if _legwear>>
<<changeItemStatus _legwear 'dirty' '["set",100]'>>
<</if>>
<<switch $scene.reason>>
<<case 'penis'>>
<<applyExperience 'penis' 15 'terrible' $SEEN_STRANGER>>
<<case 'whore'>>
<<applyExperience 'whoring' 15 'terrible' $SEEN_STRANGER>>
<<case 'bimbo'>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<<case 'run'>>
<</switch>>
<<applyExperience 'oral' 10 'terrible' $SEEN_STRANGER>>
<<if !($fetish.bestiality_hard && setup.hasThreshold('bestiality', 'dog', 'advanced')) && $fetish.piss>>
<<applyExperience 'piss' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<if $fetish.cum>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<if $fetish.piss && !($fetish.bestiality_hard && setup.hasThreshold('bestiality', 'dog', 'advanced'))>>
<<alterStatAllWorn 'piss' '["add",100]'>>
<<applyExperience 'piss' 12 'very' $SEEN_STRANGER>>
<</if>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = "bum">>
<</if>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "forced">>
<</if>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.reason>>
<<case 'penis'>>
Even in a situation like this, kneeling in a dirty alleyway, facing off with a sweaty, disgusting dick, your love of cock triumphs over all.
<<case 'whore'>>
The task at hand — and the cock IN hand, may be a disgusting one... but you're a fucking professional, in both senses of the word, and you lean forward to put your skills to work.
<<case 'bimbo'>>
A situation like this really proves just how much of a sex-crazed slut you have become as, despite the dirty surroundings, and the disgusting task at hand... you spread your lips and lean in.
<<case 'run'>>
You try to run, but the <<mans>> hand shoots out with far better coordination than <<his>> drunken state should allow, jerking you in and forcing your face against <<his>> hard, disgusting cock.
<<default>>
ERROR: unexpected scene.reason <<=$scene.reason>>
<</switch>>
However bad the smell was, the taste is worse, but you choke <<his>> cock down... "assisted" by <<his>> hand gripping the back of your hair, forcing you in and then pulling you back to look up at <<him>> with just the sour tip between your lips. The <<man>> leers down at you. "@@.generic_male1;Yeah, suck it, you fucking slut,
<<switch setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<<case "slutty" "casual" "fetish">>
I bet you fantasised about this when you were putting out that outfit, dressing to get JUST this sort of attention...
<<case "office" "formal">>
you goddamn tourist — all that fancy, expensive clothing... but this is where you belong, what you deserve...
<<case "maid">>
you dress like a maid, but you're a dirty tramp,
<<default>>
ERROR: unexpected tag! <<=setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<</switch>>
you disgust me.@@" You look up in shame as <<he>> hocks a wad of spit directly into your face... but <<his>> strong grip means you have no choice but to continue... as a moment later <<he>> pulls you in tight,
<<if $fetish.cum>>
for a grunting climax.
<<else>>
cumming a surprisingly large, but no less disgusting, load.
<</if>>
<br><br>
The <<man>> almost tosses you off, and you lose your balance, falling back onto your elbows.
<<if $fetish.bestiality_hard && setup.hasThreshold('bestiality', 'dog', 'advanced')>>
You catch your breath... and look up to see the <<mans>> pet dog staring at you, drooling, its hard cock dangling provocatively...<br>
<br>
[<<moveTo "event_random_hobo_3_dog" "It would be unfair to leave man's best friend unsatisfied." 120 "<<set $scene.dog=true>>">>]<br>
[<<moveTo "event_random_hobo_3_dog" 'No...' 120 "<<set $scene.dog=false>>">>]<br>
<<elseif $fetish.piss>>
You catch your breath... only to catch a face-full of <<getWordPiss>> as the <<man>> relieves <<him>>self all over you before walking off without another word.<br>
<br>
[<<moveTo "event_random_hobo_4" 'Go home.' 120>>]
<<else>>
You catch your breath as the <<man>> walks away, <<his>> taste still on your tongue as you stand up and sigh at your mud-splattered outfit.<br>
<br>
[<<moveTo "event_random_hobo_4" 'Go home.' 120>>]
<</if>>
</div>/*#
#desc: hobo encounter fucked
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<alterStatAllWorn 'dirty' '["add",100]'>>
<<if !$player.body_ref.vagina || $player.body_ref.vagina && (setup.checkItemTypeWorn("cage") && !setup.isCage())>>
<<set $scene.first = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "bum">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<if $scene.accept>>
<<set $player.sec_style.sex.anal = "voluntary">>
<<else>>
<<set $player.sec_style.sex.anal = "forced">>
<</if>>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $options.fem>>
<<if $scene.accept>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<<else>>
<<set $player.sec_style.sex.sex_woman = "forced">>
<</if>>
<<elseif !$player.sec_style.sex.sex_man && !$options.fem>>
<<if $scene.accept>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<<else>>
<<set $player.sec_style.sex.sex_man = "forced">>
<</if>>
<</if>>
<<else>>
<<if !$player.virgin.vaginal>>
<<set $player.virgin.vaginal = "bum">>
<<include "addTypingEvent">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_1'
0
'event_psychiatrist_session_anal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_anal'
0
'theme_church_confession_anal'
true
>>
<</if>>
<<set $scene.first = !$player.sec_style.sex.vagina>>
<<if $scene.first>>
<<if $scene.accept>>
<<set $player.sec_style.sex.vagina = "voluntary">>
<<else>>
<<set $player.sec_style.sex.vagina = "forced">>
<</if>>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$options.fem>>
<<if $scene.accept>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<<else>>
<<set $player.sec_style.sex.sex_man = "forced">>
<</if>>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $options.fem>>
<<if $scene.accept>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<<else>>
<<set $player.sec_style.sex.sex_woman = "forced">>
<</if>>
<</if>>
<</if>>
<<if $scene.accept>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<if $fetish.piss>>
<<alterStatAllWorn 'piss' '["add",100]'>>
<<applyExperience 'piss' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 5 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
The <<mans>> weight presses against you as <<he>> licks your cheek with <<his>> rough tongue and whispers in your ear
<<switch setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<<case "slutty" "casual" "fetish">>
"@@.generic_male1;Yeah... lay there and take it, you slut — this is what you wanted, walking around, dressed like that...@@"
<<case "office" "formal">>
"@@.generic_male1;Fucking bitch — working up in one of those skyscrapers, thinking you're better than us! You're just a horny bitch getting your kicks walking through the bad side of town... well enjoy it, slut!<<if !$options.fem>> Feel what a REAL man is like, not one of those well dressed metro-sexual <<if $fetish.slurs>>faggots <</if>>you work with!<</if>>@@"
<<case "maid">>
"@@.generic_male1;You dirty slut... you dressed up wanting this to happen, wanting someone to ruin that cute outfit...@@"
<<default>>
ERROR: unexpected tag! <<=setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<</switch>>
<<else>>
You try to struggle, but the <<man>> is just too strong and heavy, the muddy puddle too slippery for you to push <<him>> off as <<he>> fumbles with your clothes and whispers in your ear.
<<switch setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<<case "slutty" "casual" "fetish">>
"@@.generic_male1;Yeah... lay there and take it, you slut — this is what you wanted, walking around, dressed like that...@@"
<<case "office" "formal">>
"@@.generic_male1;Fucking bitch — working up in one of those skyscrapers, thinking you're better than us! You're just a horny bitch getting your kicks walking through the bad side of town... well enjoy it, slut!<<if !$options.fem>> Feel what a REAL man is like, not one of those well dressed metro-sexual <<if $fetish.slurs>>faggots <</if>>you work with!<</if>>@@"
<<case "maid">>
"@@.generic_male1;You dirty slut... you dressed up wanting this to happen, wanting someone to ruin that cute outfit...@@"
<<default>>
ERROR: unexpected tag! <<=setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish'])>>
<</switch>>
<</if>>
<br><br>
<<if !$player.body_ref.vagina || $player.body_ref.vagina && (setup.checkItemTypeWorn("cage") && !setup.isCage())>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
As the <<man>> tears at your clothes <<he>> inevitably comes up against your chastity belt. "@@.generic_male1;Chastity? What the fuck! You fucking tease... but fine, you can keep your precious virginity, you've got another hot hole for me to use.@@"
<<else>>
The <<man>> tears at your clothes, quickly finding your <<getWordMyPenis>> "@@.generic_male1;What's this? You some kind of <<if $fetish.slurs>><<if $fetish.sissy>>sissy <</if>>faggot<<else>>girly boy<</if>>? Well.. if you want to be girl so much... I'll fuck you like one, right in that plump ass of yours.@@"
<</if>>
<br><br>
<<if setup.checkItemTypeWorn("plug")>>
You gasp as <<he>> rips out your plug with a grunt and slams <<his>> cock in its place. "@@.generic_male1;You love that, don't you? God, walking around with a plug in your ass... this is probably your dream come true, you slut! God, listen to you moan, you fucking disgust me!@@"
<<else>>
You gasp as <<he>> slams <<his>> cock into your ass without the slightest foreplay. "@@.generic_male1;Take it, you slut, god, listen to you moan, you fucking disgust me!@@"
<</if>>
<<if $scene.first>>
<br><br>
<<printThought "My virgin hole!">> A wave of disgust washes over you, even more than the pain as the disgusting bum plants <<his>> flag in your once-virgin rear hole.
<</if>>
<<else>>
The <<man>> tears at your clothes, flipping you over and forcing <<his>> way between your thighs. "@@.generic_male1;That's right, slut, feel my cock!@@"
<<if $scene.first>>
<br><br>
<<printThought "My virgin hole!">> A wave of disgust washes over you, even more than the pain as you experience your "first" time" at the hands of a disgusting bum in a dingy alleyway.
<</if>>
<</if>>
<br><br>
The <<man>> rapes you hard and rough, all the while ranting about "@@.generic_male1;you fucking cock-teasing bitches. Thinking you're so much better than everyone else — well, if I was in charge I'd mandate that every <<if $fetish.sissy>>sissy was raped every day, <<if $options.fem>>to make them know their place<<else>>remind them what a REAL man is<</if>><<else>>whore was raped at least once a week to keep 'em in their place<</if>>! That's all you're really good for — a pair of tits to look at, a few holes to fuck... and you know it, don't you?@@"<br>
<br>
You're having enough trouble just keeping your head above water, moaning in response as <<he>>, thankfully, reaches climax and rises off.<br>
<br>
"@@.generic_male1;Look at you lying there... you're fucking pathetic.@@"<br>
<br>
<<if $fetish.piss>>
As if your humiliation wasn't bad enough, you hear the sound of water and feel <<his>> hot piss splashing over
<<if $fetish.bestiality_hard>>
you, joined a moment later by <<his>> dog raising its legs to add its hot stream, the stench almost making you puke
<<else>>
you, the <<man>> unleashing every ounce of <<his>> bladder, smelling of cheap beer and sadness
<</if>>
as it soaks into your clothes.
<</if>>
<br><br>
<<He>> finally stumbles away down the alleyway, but you wait for the sound of <<his>> boots to stop echoing before pushing yourself to your feet and crawling back to the street.<br>
<br>
[<<moveTo "event_random_hobo_4" 'Go home.' 120>>]
</div>/*#
#desc: hobo encounter dog bonus
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.dog>>
<<applyExperience 'humiliation' 20 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 5 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 5 'normal' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'oral' 11 'very' $SEEN_STRANGER>>
<<if $fetish.piss>>
<<alterStatAllWorn 'piss' '["add",100]'>>
<<applyExperience 'piss' 12 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<if $scene.dog>>
As if your prior act was not disgusting enough, you descend to an even deeper low as you crawl forward and wrap your lips around the mutt's engorged member. Despite your willingness the creature responds with the same aggression as its owner.
<<else>>
You try to crawl away, but the dog leaps towards you.
<</if>>
The canine cock spears past your lips like a precision-guided missile, bestial strength shoving you back to the ground as it mounts your skull and takes its pleasure.<br>
<br>
Over the sound of the splashing water of the puddle you now find yourself in, and the slap, slap, slap of the knot slapping against your lips with each quick stroke, you hear the <<man>> laugh, a cruel, disgusting sound that turns into a wracking cough as <<he>> amuses <<him>>self at your utter debasement.<br>
<br>
Lasting slightly longer than its owner the beast finishes deep in your throat to leave you spread on the ground.
<<if $fetish.piss>>
You look up at the sneering, disgusting <<man>> as <<he>> aims <<his>> cock at you once again... unleashing a burning, acidic stream of piss directly into your face, the final drops barely finished being flicked over you when the mutt raises its legs to add its marking to its master's.
<<else>>
The dog trots back over to its master as the <<man>> looks down at you with disgust... and how could <<he>> not? You lay at <<his>> feet a ruined mess — used up and discarded, and <<he>> walks away with a final backwards sneer.
<</if>>
<br><br>
"@@.generic_male1;See, boy? I told you <<if $options.fem>>those whores<<else>>women<</if>> are trash, every one of them no better than that bitch back there. That's why it's just you and me... come on, let's find some grub.@@"<br>
<br>
[<<moveTo "event_random_hobo_4" 'Get back to your feet and leave the alleyway.' 120>>]
</div>/*#
#desc: hobo encounter aftermath
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<if $scene.from_evil>>
You really are dead on your feet as you finally stagger out of the alleyway.<br>
<br>
You catch sight of a group of college students passing by, but they do not approach, and compared to your marathon of degradation their teasing taunts barely register. Somehow you stumble home, heart thumping the whole time every time a car passes by or a pedestrian whispers an insult as they take a wide berth to avoid your disgusting form, knowing that you have not the slightest energy left to resist whatever a stranger might wish to do to you.<br>
<br>
Eventually you make it to your familiar street, all but dead on your feet as you steady yourself on a lamp-post and stumble the final steps to the front of your building.<br>
<br>
[<<moveTo "event_vip_evil_admin_gangbang_10" "Stumble up to your flat." 300>>]
<<else>>
You step out of the alleyway just as a group of college students are passing by, returning from some sort of party. The sight of you halts their conversation... and then they laugh uproariously as you turn away in shame, cringing at the wolf-whistles, their cruel shouts calling you a "disgusting gutter whore" chase after you until you manage to round a corner and get out of sight.<br>
<br>
[<<moveTo "room_foyer" "Hurry home before anything else happens." 300>>]
<</if>>
</div>/*#
#desc: bra burning intro
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_braless'
0
'theme_psychiatrist_braless_1'
true
>>
<</if>>
<<set $player.location to "Walking along the street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You've just left the company when you spot a bit of a protest taking up a good chunk of the sidewalk in front of you, spilling into the street. As you get closer you are able to make out the chanting and read the signs "@@.generic_female1;Free the breasts!@@" "@@.generic_female2;End sexist clothing standards!@@" and one particularly amusing rhyming double entendre "@@.generic_female2;Top-less! Top-THIS!@@"<br>
<br>
<<printThought "Are they protesting... bras?">> You realise you hadn't thought about that so much, your initial bra requirement more symbolic<<if $player.body.breastsize[0]>>, though obviously less so now, given your <<=setup.calcBreastSize()>> breasts<</if>>, even as it has come to just blend into the background as one of your work requirements.<br>
<br>
Several of the women are topless and, as you walk past one tears off her bra and lights it on fire to the cheers of her fellow protesters. "@@.generic_female1;Burn the bra!@@" "@@.generic_female2;Free the nipple!@@"<br>
<br>
<<if !$options.fem_all_women>>
Though fewer in number you spot a handful of men and enbys sprinkled amongst the protestors, most there as allies, but also a few trans men in breast-binders, and some just showing solidarity as non-female bra-wearers.
<<else>>
Though fewer in number you spot a handful of enbys sprinkled amongst the protestors, some flat chested as allies, and some just showing solidarity as non-female bra-wearers.
<</if>>
<br><br>
Perhaps surprising is that there are several VERY well-endowed individuals among the protestors, seemingly unbothered at standing about with no additional support for what have to be heavy breasts, a couple even counted among the more extreme topless protestors.<br>
<br>
[<<moveTo "event_braless_unlock_2" "Join the protest in support." 300 "<<set $scene.burn=false>>">>]<br>
[<<moveTo "event_braless_unlock_2" "Yes, burn the bra!" 300 "<<set $scene.burn=true>>">>]<br>
[<<moveTo "event_braless_unlock_2_abort" "Continue on your way." 120>>]
</div>/*#
#desc: bra burning abort
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Walking along the street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You divert around the protest and continue on your way as they continue their march through the downtown business district.<br>
<br>
[<<moveTo "room_foyer" "Continue on your way." 300>>]
</div>/*#
#desc: bra burning unlock braless
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body_ref.noBra = $scene.burn>>
<</if>>
<<set $player.location to "Walking along the street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
<<if $scene.burn>>
You don't just join the protest, you rip off your bra and accept the ready offer of a lighter to set it aflame.<br>
<br>
A cheer goes up from your new comrades-in-arms as the bra burns faster than you might have expected and you jump back for it to fall to the street... where one of your new friends helpfully scoops it up into a burn barrel they're carrying, one of those stalwart protestors that came prepared.<br>
<br>
After the initial excitement you fall in with the march.
<<else>>
You join the protest, marching along the street and quickly learning, and participating in the chants. "@@.generic_female1;Burn the bra!@@" "@@.generic_female2;Free the nipple!@@" "@@.pc;Burn the bra!@@" "@@.pc;Free the nipple!@@"<br>
<br>
<</if>>
Though a bit rowdy... and more than a little titillating (no pun intended) the protest is not so disruptive as to spark police crack-down, and you end up marching a few blocks around the business district, making yourselves known through the usual late-afternoon/early-evening rush-hour before dispersing naturally.<br>
<br>
You don't know what sort of difference your participation has made... but it has given you something to think about as you wave good-bye to your temporary comrades and continue on your way.<br>
<br>
[<<moveTo "room_foyer" "Continue on your way." 300>>]
</div>/*#
#desc: psychiatrist topic: braless
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("theme_psychiatrist_braless_2")>>
Once again you raise the topic of wearing a bra.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Yes, and how are you feeling about such? <<if $player.body_ref.noBra>>Enjoying going without?, or feeling unsupported without one?<<else>>Feeling constrained by the requirement... or enjoying the support?<</if>>.@@"
<<else>>
You bring up the protestors you <<if State.hasPlayed("event_braless_unlock_2")>>joined<<else>>passed<</if>> protesting bra requirements, particularly for women.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods and leans forward with interest. "@@.npc_psychiatrist;Some people do have strong opinions about such things. Personally, I find bras comfortable, and convenient both functionally and fashionably... but others feel differently. Tell me, what are you thoughts on the matter?@@"
<</if>>
<br><br>
<<if $player.body_ref.noBra>>
[<<moveTo "theme_psychiatrist_braless_2" "You would like to go back to wearing a bra as a symbol of your femininity." 300 "<<set $scene.action='fem'>>">>]<br>
[<<moveTo "theme_psychiatrist_braless_2" "You are missing the support of a bra." 300 "<<set $scene.action='function'>>">>]<br>
[<<moveTo "theme_psychiatrist_braless_2" 'You are feeling guilty at not following <<=ps(setup.getNpcName("npc_manager","formal"))>> original instructions.' 300 "<<set $scene.action='obey'>>">>]<br>
[<<moveTo "theme_psychiatrist_braless_2" 'You remain indifferent on bras.' 300 "<<set $scene.action='indif'>>">>]<br>
[<<moveTo "theme_psychiatrist_braless_2" "You continue to prefer not to wear a bra." 300 "<<set $scene.action='no'>>">>]
<<else>>
[<<moveTo "theme_psychiatrist_braless_2" "You like wearing a bra as a symbol of your femininity." 300 "<<set $scene.action='fem'>>">>]<br>
[<<moveTo "theme_psychiatrist_braless_2" "You like wearing a bra for the functionality." 300 "<<set $scene.action='function'>>">>]<br>
[<<moveTo "theme_psychiatrist_braless_2" 'You like wearing a bra because <<=setup.getNpcName("npc_manager","formal")>> told you to.' 300 "<<set $scene.action='obey'>>">>]<br>
[<<moveTo "theme_psychiatrist_braless_2" 'You are fairly indifferent on bras.' 300 "<<set $scene.action='indif'>>">>]<br>
[<<moveTo "theme_psychiatrist_braless_2" "You would prefer not to wear a bra." 300 "<<set $scene.action='no'>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: tweak braless
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'fem' 'function' 'obey'>>
<<set $scene.change = $player.body_ref.noBra>>
<<set $player.body_ref.noBra = false>>
<<case 'no'>>
<<set $scene.change = !$player.body_ref.noBra>>
<<set $player.body_ref.noBra = true>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'fem'>>
You reply that, <<if $scene.change>>having experimented with going without once again, you miss the feminine feeling of the constant hug and support of a bra<<else>>to you, wearing a bra feels like a validation of your femininity<</if>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles.
<<case 'function'>>
You reply that, <<if $scene.change>>having experimented with going without, you find yourself missing the functional support of a bra<<else>>you feel like a bra is a necessary item of support<</if>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>>
<<if $player.body.breastsize[0] == 0>>
raises an eyebrow ever so slightly, as if in response to your insistence on the support of a bra when you are quite flat-chested.
<<else>>
nods.
<</if>>
<<case 'obey'>>
You reply that <<if $scene.change>>not wearing a bra makes you feel like you are disappointing <<=setup.getNpcName('npc_psychiatrist', 'formal')>> , even if she never says anything<<else>>wearing a bra reminds you of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, and your obedience to her<</if>>.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>>
<<if $player.body.breastsize[0] == 0>>
raises an eyebrow ever so slightly, as if in response to your insistence on the support of a bra when you are quite flat-chested.
<<else>>
nods.
<</if>>
<<case 'indif'>>
You shrug and reply that, really, you're kind of indifferent to bras.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> nods. "@@.npc_psychiatrist;Flexibility is good... but do not neglect the opportunity for passion, even over little things. It is part of what makes life fun, yes?@@" She smiles. "@@.npc_psychiatrist;As to this situation, well... if you are indifferent to the whole things I suppose we can leave things as they are and <<if $player.body_ref.noBra>>you can continue without any sort of requirement to wear one<<else>>you can continue wearing one... after all, if you don't care, well... if nothing else, it would please <<=setup.getNpcName("npc_manager","first")>>, even if she is too proud to mention it<</if>>.@@"
<<case 'no'>>
You reply that,
<<if $player.body.breastsize[0] == 0>>
flat as you are, you see no point in wearing a bra.
<<else>>
<<if $player.body.breastsize[0] > 5>>
regardless of the size and weight of your breasts,
<<else>>
breasts or no,
<</if>>
you dislike wearing bras.
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.action != 'indif'>>
<<if $player.body_ref.noBra>>
"@@.npc_psychiatrist;Well, in that case... I suppose you should <<if $scene.change>>stop considering such to be mandatory<<else>>continue treating them as wholly optional<</if>>. Certainly there is no reason you couldn't wear a bra to tie an outfit together on occasion, but if you don't think it's needed all the time, well... go without.@@"
<<if $scene.change>>
<br><br>
You start to raise the issue of <<=setup.getNpcName("npc_manager","formal")>> and your work requirements, but <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> eyes twinkle. "@@.npc_psychiatrist;Technically your requirements are merely to wear under-things, and over-things, of a feminine STYLE, the specificity of bra or not is actually left to manager's discretion... discretion that is actually subject to a medical override... so do what makes you feel best, and leave the rest to me. <<=setup.getNpcName("npc_manager","formal")>> may not like it... but I doubt she says anything, to do so would be to acknowledge my... disruption to her authority, however minor.@@"
<</if>>
<<else>>
"@@.npc_psychiatrist;Well, in that case... I suppose you should <<if $scene.change>>resume doing so<<else>>continue to do so<</if>>, yes?@@"<<if $scene.change>> Her eyes twinkle. "@@.npc_psychiatrist;I will update your work file to reflect this change, I am sure <<=setup.getNpcName("npc_manager","formal")>> will be pleased, even if she is too reserved to explicitly mention it.@@"<</if>>
<</if>>
<br><br>
<</if>>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: come home after first day, clothes + you need to be washed
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
As you return to your fortress of solitude, you think about what <<=setup.getNpcName('npc_manager', 'formal')>> said.<br>
<br>
<<printThought "What was it she said? Something about being a secretary needing to be representative? But representative of what?">><br>
<br>
You shake your head. You never were very good at translating managerial corporate-speak. You reflect on the rest of your brief introduction with your new boss.<br>
<br>
<<printThought "I don't smell that bad... do I?">><br>
<br>
Taking a quick sniff from your clothes, you get disabused as to the state of your bodily aroma.<br>
<br>
<<printThought "Wow, this is worse than I thought. I need to throw these into the washing machine fast. A shower would not hurt either. Hmm... maybe I should take a look at that contract later. I mean how hard can it be?">><br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_1" "Go to the bathroom." 1800>>]
</div>/*#
#desc: first day; strip and throw clothes in washer, find exgirlfriend's clothes + makeup kit, washer bursts into flames
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<<if setup.inWardrobe('pyjama')>>
<<set $scene.pyjama = 'wardrobe'>>
<<else>>
<<set $scene.pyjama = 'inventory'>>
<</if>>
<<addItemWardrobe "makeup_basic">>
<<addItemWardrobe "black_box">>
<<addNpcTheme 'npc_psychiatrist' 'ex_girlfriend' 'theme_psychiatrist_ex_5'
4
'event_psychiatrist_session_girlfriend_mystery_box_1'
false
>>
<<removeAllClothing>>
<<deleteItem 'pyjama'>>
<<deleteItem 'socks'>>
<<deleteItem 'boxershorts'>>
<<applyStress 5>>
<<washClothes>>
<<addItemWardrobe "satin_blouse_white">>
<<addItemWardrobe "skirt_black">>
<<addItemWardrobe "cotton_panties">>
<<addItemWardrobe "cotton_bra">>
<<addItemWardrobe "pantyhose_black">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You enter the bathroom and take off all your clothes. A sudden realisation sinks in that you haven't washed your clothes since last week. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> and you had a job rotation for the different household chores. Seems like this all falls into your hands now. From the looks of it, most of your underwear is dirty. Shouldn't be a problem, one quick wash cycle in the washing machine ought be enough, but you have too many dirty clothes to do a single load. You split them into two piles. You put your underwear and your pyjamas,
<<if $scene.pyjama == 'wardrobe'>>
which you quickly fetched from your wardrobe,
<<else>>
which you carried around the whole day for some unknown reason,
<</if>>
to the side, while putting the rest of your clothes inside the machine. You take a quick shower while the machine works. After that, you take the wet clothes and put them into the dryer.<br>
<br>
<<printThought "Hmm... what's that? There are already some clothes in the dryer.">><br>
<br>
You examine things closer and discover it's more of <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> stuff. Looking at it makes you anxious for a brief moment. So this will be your life from now on. Alone. You sort her things out. You find a pair of panties, a bra, some pantyhose, a black skirt and a white blouse. You fold it and put it in the spare laundry basket and toss the lot into the wardrobe. After that, you put your clothes into the dryer and your underwear into the washing machine. The decision to put her clothes with the rest of her stuff in the wardrobe was easy. Should she ever turn up to fetch her belongings, everything will be pre-sorted in one place.<br>
<br>
<<if $player.sec_style.clothing.female == "">>
<<printThought "Let's put this away. The last thing I need right now is anyone seeing this and thinking I'm into crossdressing or anything like that.">>
<<else>>
<<printThought "Well, I guess I could wear them to work. They seem appropriate style for an office job and, given what I just agreed to, that might be the easiest thing until the weekend and I can do some proper shopping.">>
<</if>>
<br><br>
As you put things in the wardrobe, you see a small pink container resting atop a black box hidden in the back. You open the pink container. It's filled to the brim with makeup items like lipstick, concealer, eyeliners and so on.<br>
<br>
<<printThought "Hmm... seems to be her old makeup case.">><br>
<br>
The black box, on the other hand, leaves you quite stumped as you find yourself unable to open it due to its digital alphanumeric combo lock. What is particularly odd is that you don't remember ever seeing the box previously, it was really tucked away, and you wonder why? In the end you shrug and just put it together with her other belongings. As you close the wardrobe in the bedroom, you catch a whiff of something, like something was burning. The smell gets stronger as you hear strange noises coming from the bathroom.<br>
<br>
You make haste there to see the washing machine already going up in flames. Fortunately you had a hand-held fire extinguisher installed in the foyer, so you are able to prevent things from spreading, but by the time the dust and flame-retardant powder clears your washing machine and all that was inside is gone<<if $player.sec_style.clothing.underwear == 'strict'>>... or almost all of it, you spot something in the ash and reach in to find those horrifyingly pink, frilly underthings somehow perfectly intact..<</if>>.<br>
<br>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<printThought "I wonder... should I take that as a sign?">>
<<else>>
<<printThought "It can't get any worse now, can it?">>
<</if>>
<br><br>
[<<moveTo "event_landlord_brokenwashmachine_2" "Continue." 600>>]
</div>/*#
#desc: landlord shows up for burning washing machine, you open door and invite him in, he promises to fix
#status: FINISHED 0.4.0.0
#ignore_spell: extraño,agotado,tardes
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $npc_landlord.profile = true>>
<<storeVisual $player $npc_landlord>>
<<if setup.checkNaked()>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<set $player.flags.landlordsawyounaked = true>>
<<setThreshold 'bimbofication' 'wardrobe_malfunction' 'open_door'>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_0'
0
'event_psychiatrist_session_landlord_1'
false
>>
<<elseif $player.indecent >= 65>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<if $player.sec_style.body.name != "" || setup.checkVisibleClothingTag('female') > 10>>
<<set $npc_landlord.call_player = "Chica">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
Suddenly the doorbell rings. Making a final visual check that the fire is out, you head to the door and check the camera outside. It is <<=setup.getNpcName('npc_landlord', 'full')>>, your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> and the building's caretaker. <<He npc_landlord>> is an <<if $npc_landlord.fem>>older woman who looks like she has been through a lot in life<<else>>old, tough guy who looks like he has seen a lot<</if>>. Which is probably accurate, though <<he npc_landlord>> does not talk much about <<himself npc_landlord>> or <<his npc_landlord>> time in the war. Overall, <<he npc_landlord>> seems like a really nice <<guy npc_landlord>>. You open the door.<br>
<br>
<<if setup.checkNaked()>>
"@@.npc_landlord;Buenas tardes, <<callPlayer "npc_landlord">>. I hea...@@" <<He npc_landlord>> suddenly stops talking. <<His npc_landlord>> gaze slowly wanders down your body, which makes you realise that you are wearing nothing at all.
<<if $player.timebased.horny>=50>>
Even worse, you have a raging erection, due to the side effects of the penis enlargement pills, which makes an already embarrassing scene so much worse.
<</if>>
You quickly grab a towel and wrap it around you, but it is already too late. You blush like a ripe strawberry.<br>
<br>
"@@.npc_landlord;So...@@" <<he npc_landlord>> tries as hard as <<he npc_landlord>> can to look into another direction.<br>
<br>
<<printThought "Wait... is <<he npc_landlord>> blushing as well? What is going on here?">><br>
<br>
"@@.npc_landlord;Anyway... I heard some extraño... strange noises from your floor and the internal sensors gave me a fire alert from your apartment. Is everything all right?@@"<br>
<br>
<<elseif $player.indecent >= 65>>
"@@.npc_landlord;Buenas tardes, <<callPlayer "npc_landlord">>. I hea...@@" <<He npc_landlord>> suddenly stops talking. <<His npc_landlord>> gaze slowly wanders down along your body, which makes you realise that you wear nearly nothing at all. You quickly grab a towel and wrap it around you, but it is already too late. You blush like a ripe tomato.<br>
<br>
"@@.npc_landlord;So... I heard some extraño... strange noises from your floor and the internal sensors gave me a fire alert from your apartment. Is everything all right?@@"<br>
<br>
<</if>>
You explain to <<him npc_landlord>> what happened. It's actually a good thing <<=setup.getNpcName('npc_landlord', 'first')>> showed up since you're nearly ready for a mental breakdown. But <<his npc_landlord>> <<if $npc_landlord.fem>>steady<<else>>deep<</if>> and soothing voice calms you down. In an almost casual display of strength, <<he npc_landlord>> moves the broken washing machine out of the apartment and turns towards you.<br>
<br>
"@@.npc_landlord;Do not worry, <<callPlayer "npc_landlord">>. I take care of this. You look agotado... depleted. I'll fix the wall behind it tomorrow, and the insurance should exchange the broken machine. It was... material defect... was it? Yes it was, no? Buenas noches a ti <<callPlayer "npc_landlord">>.@@"<br>
<br>
And with those parting words, <<he npc_landlord>> leaves you alone.<br>
<br>
<<if $player.sec_style.body.name != "">>
Only after <<hes npc_landlord>> left do you realise that... <<he npc_landlord>> called you Chica. You shiver, it felt right, natural... but you are left wondering how <<he npc_landlord>> knew?<br>
<br>
<</if>>
[<<moveTo "event_landlord_brokenwashmachine_3" "Continue.">>]
</div>/*#
#desc: realise you have no "male" underwear after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 1, 7, 0)>>
<<addEvent 'exgf_firstday_visit' _nextDate>>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<set $scene.hasBraStockings = setup.checkItemTypeOwned("bra") && setup.getItemsByFilter("specific", ["stockings","female"]).length > 1>>
<<addItem "cotton_panties">>
<<addItem "cotton_bra">>
<<addItem "pantyhose_black">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.clothing.underwear == "enthusiast">>
You take a deep breath, sure you've just immolated all of your male underwear... but that isn't technically a problem. You have that fresh pair that <<=setup.getNpcName("npc_technician","first")>> gave you,
<<if $scene.hasBraStockings>>
and the bra and stockings you picked up at the mall would cover the rest of <<=ps(setup.getNpcName("npc_manager","formal"))>> requirements.<br>
<br>
<<printThought "Plus there's the stuff my ex left behind... yeah... this is fine, I'll be fine.">><br>
<br>
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_enthusiast_delivery_1" "Continue." 360>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Continue." 360>>]
<</if>>
<<else>>
though... that's just panties, and <<=setup.getNpcName("npc_manager","formal")>> said to wear a bra and stockings as well...<br>
<br>
<<printThought "I guess I can just use what my ex left behind, or maybe a bit of shopping is in order?">><br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_1" "Order some additional underthings online." 60>>] <<hint $options "Next day delivery might not be cheap, but it's the best guarantee to get what you should be wearing.">><br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new things." 60>>] <<hint $options "Works starts before the mall opens so I'll need to talk an employee into letting me in early or I'll be stuck commando...">><br>
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_enthusiast_delivery_1" "Be frugal and conserve your money." 360>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Be frugal and conserve your money." 360>>]
<</if>>
<</if>>
<<else>>
As you return from the foyer to the bathroom, a realisation suddenly comes to you. <<if $player.sec_style.clothing.underwear == "strict">>The only underwear you have is the ridiculously pink and girly set <<=setup.getNpcName("npc_manager","formal")>> forced on you. Sure she said you had to wear female underwear... but there's no way she could be serious, and how would she even know? Not like she's going to strip you naked before work... right?<<else>>You have no underwear for tomorrow morning.<</if>> This leaves you in a predicament. What are you supposed to do? It's too late now, but you could try to hit the mall tomorrow, just before work.<br>
<br>
<<printThought "No, that's not going to work, since the stores open at 8, same as my shift starts. I'd be too late for my very first day. And <<=setup.getNpcName('npc_manager', 'formal')>> does not seem to be the forgiving type...">><br>
<br>
Well, that leaves you with three other options. You could go order something online, and pay a lot extra for an overnight delivery.<br>
<br>
<<printThought "Well, that seems to be the best idea, but I'm not sure if I'm happy with this. Money is going to be tight next month even without any extra expenses.">><br>
<br>
You could go commando. It's not like there's any reason for you to lose these trousers of yours. Sure it'll chafe a bit, but it's only for a day. And for the extremely unlikely event of getting some action, you'll be ready a lot faster.
<br><br>
<<if $player.sec_style.clothing.underwear == "strict">>
<<printThought "On the one hand, this seems like the simplest idea... but then there's my crazy new boss... was she really serious about wearing female underthings? Do I want to go along with it even if she is?">><br>
<br>
Another, somewhat crazy, option would be
<<else>>
<<printThought "Yeah, I like that idea. But then again, I'm going to die of shame since I'll know I'm not wearing any underwear at all. And no socks is not very good for my feet either.">><br>
<br>
And the last option you come up with... is
<</if>>
to wear <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> underwear. You don't like the idea at all, but the two of you actually have a similar frame so her clothing should fit you. And you only have to wear it until tomorrow evening, when you can buy new underwear at the mall.<br>
<br>
<<printThought "Why does something like this always happen to me?">><br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
Finally is the option to wear the set "gave" you... but even the thought of that makes you shiver.<br>
<br>
<</if>>
<<hint $options "These choices will set the start of your feminising journey.<br>Each will have different consequences and set your<br>feminisation stat at a higher start level (from top <br>to bottom).">><br>
[<<moveTo "event_landlord_brokenwashmachine_3_panties_1" "Let's take a closer look at these panties." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_1" "Order underwear online!" 60>>] <<hint $options "Next day delivery might not be cheap, but it's the best guarantee to get what you should be wearing.">><br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new things." 60>>] <<hint $options "Works starts before the mall opens so I'll need to talk an employee into letting me in early or I'll be stuck commando...">><br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_1" "Going Commando!" 60>>] <<hint $options "No underwear may not be feminine, but it also isn't very professional.">><br>
<<if $player.sec_style.clothing.underwear == "strict">>
[<<moveTo "event_landlord_brokenwashmachine_3_strict_1" 'Wear the pink set <<=setup.getNpcName("npc_manager", "formal")>> "gifted" you.' 60>>]
<</if>>
<</if>>
</div>/*#
#desc: examine exgirlfriend's panties after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
You fetch the laundry basket from the wardrobe and check your options. You find a pair of white cotton panties, a white bra and some black pantyhose. From all other options, this may be the least worst. She's also left you a pencil skirt and a white blouse, which does not look that different from your shirt, as it is similar in cut and design, but the buttons are on the left side as opposed to male cut shirts. And you think it might be a little bit tighter around the waist and has more space for breasts, but your waist is pretty narrow for a guy, so it should theoretically fit you as well. Not that you need to wear that blouse, since your shirt survived the great washing machine fire of 2033. <<if $player.sec_style.clothing.underwear == "strict">>Of course there's always the underthings <<=setup.getNpcName("npc_manager","formal")>> "gifted" — that is to say, forced, on you... you shudder slightly at the thought<<else>>Ah, those were bad times for all of underwearkind<</if>>.<br>
<br>
<<printThought "Okay, my brain is on vacation it seems...">><br>
<br>
You focus back on the matter at hand, and ponder if that's what you want to do.<br>
<br>
<<printThought "That's not too bad. I think I can endure wearing these for just one day. As long as nobody catches me wearing these, I should be fine. I could even try to wear the rest... for scientific reasons of course. Better only take what I need, not to be tempted to do anything more strange this evening.">><br>
<br>
Your hand hovers over the panties.<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_panties_2" "Take the panties and the pantyhose." 360>>]<br>
<br>
Or do you change your mind?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_1" "Order underwear online!" 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new underthings." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_1" "Going Commando!" 60>>]<br>
<<if $player.sec_style.clothing.underwear == "strict">>
[<<moveTo "event_landlord_brokenwashmachine_3_strict_1" 'Wear the pink set <<=setup.getNpcName("npc_manager", "formal")>> "gifted" you.' 60>>]
<</if>>
</div>/*#
#desc: examine exgirlfriend's panties after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.underwear == "">>
<<set $player.sec_style.clothing.underwear = "voluntary">>
<</if>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'exgirlfriends_panties'>>
<<wardrobeToItem "cotton_panties">>
<<wardrobeToItem "pantyhose_black">>
<<if $currentTasks.manager_first_morning_inspection_task.trigger.hasOwnProperty("femaleUnderwear")>>
<<wardrobeToItem "cotton_bra">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
You take the panties and pantyhose and leave the rest in the wardrobe.
<<if $currentTasks.manager_first_morning_inspection_task.trigger.hasOwnProperty("femaleUnderwear")>>
after an additional moment's hesitation you recall your work "task" and hold onto the bra as well... though it seems a bit odd to wear such when you're totally flat.
<</if>>
<<if $player.sec_style.clothing.underwear == "strict">>
As you look at the more "normal" feminine underthings you try not to think about the ultra-pink other set that was forced on you...
<</if>>
<br><br>
<<printThought "Oh, that fabric does feel soft and nice. I hope they're not too tight">><br>
<br>
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_enthusiast_delivery_1" "Close your wardrobe." 360>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Close your wardrobe." 360>>]
<</if>>
</div>/*#
#desc: order underwear online after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkNaked()>>
You wrap a towel around your hips and
<<else>>
You
<</if>>
enter the living room, where your computer is. You normally order online via Alizon, the biggest online store for, well, everything.
<<if $player.sec_style.clothing.underwear == "enthusiast">>
It takes a few minutes to find a set of underthings you like — there are so many cute options! But you end up settling on a nice striped set that you think looks fun, and not too crazy. Unfortunately that still leaves the issue of shipping —
<<else>>
Finding some underwear is not that difficult, but
<</if>>
even with a 24 hour mail service you have no guarantee that they'll arrive tomorrow in the morning. So you have to choose drone delivery. You never used this option because it is still very expensive, but it's kind of cool; you can even a set a specific time when they should deliver. You set the time for tomorrow morning at <<if $options.militaryTime>>7:00<<else>>seven o'clock, pm<</if>>. But it costs you a total of 90 credits, which you are not happy about. Since the clothing costs around 15 credits, the remaining costs are delivery alone.<br>
<br>
<<printThought "<<getWordGod>>, this is so stupid. I really should start to save some money, or I could get into trouble next month... maybe it's time to look for an additional income source. I should probably check the contract if that's even allowed!">><br>
<br>
Your mouse cursor hovers over the "Buy now" button.<br>
<br>
<<printThought "What if they mess up the order? Then I have no more options tomorrow morning. Plus the added costs suck balls!">><br>
<br>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
[<<moveTo "event_landlord_brokenwashmachine_3_online_2" "Buy the clothes online." 360>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new things." 60>>]<br>
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_enthusiast_delivery_1" "Be frugal and conserve your money." 360>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Be frugal and conserve your money." 360>>]
<</if>>
<<else>>
Do you go through with it?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_2" "Buy the clothes online." 360>>]<br>
<br>
Or do you change your mind?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_panties_1" "Let's take a closer look at these panties." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new things." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_1" "Going Commando!" 60>>]<br>
<<if $player.sec_style.clothing.underwear == "strict">>
[<<moveTo "event_landlord_brokenwashmachine_3_strict_1" 'Wear the pink set <<=setup.getNpcName("npc_manager", "formal")>> "gifted" you.' 60>>]
<</if>>
<</if>>
</div>/*#
#desc: order underwear online after washing machine fire
#status: FINISHED 0.4.0.0
#ignore_spell: pc
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<setThreshold 'bimbofication' 'spending_money' 'not_much'>>
<<applyExperience 'bimbofication' 2 'insignificant' $ALONE>>
<<addEmail $computer
'Alizon.com'
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
$now
'mail_alizon_01_h'
'mail_alizon_01_t'>>
<<if $events.hasOwnProperty('exgf_firstday_visit')>>
<<removeEvent 'exgf_firstday_visit'>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 1, 7, 0)>>
<<addEvent 'exgf_firstday_w_order' _nextDate>>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<addCredits -110>>
<<else>>
<<addCredits -90>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You gulp and click the button.<br>
<br>
<<printThought "Well, now I have to live with it. Let's see how this works out. Either way I'll find a way to pull through.">><br>
<br>
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_enthusiast_delivery_1" "Shut down your PC." 360>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Shut down your PC." 360>>]
<</if>>
</div>/*#
#desc: decide to pick up underwear on the way to work
#status: RELEASED 0.6.0.0
#ignore_spell: naaah
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.clothing.underwear == "enthusiast">>
You decide to make a stop at the mall on the way to work to "fill out" your underwear ensemble, surprised at how natural the thought of wearing a bra feels... even if you are quite... flat.<br>
<br>
<<printThought "Hmm... medical science is pretty advanced, I could probably do something about that... though can I spare the money? Better focus on this new job...">><br>
<br>
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_enthusiast_delivery_1" "Close your wardrobe." 360>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Close your wardrobe." 360>>]
<</if>>
<<else>>
You check your wardrobe one more time in the hope of finding something you might have missed. Nope, you were really thorough this time, not even a single sock. Just <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> clothes you put back in there. Maybe you should...<br>
<br>
<<printThought "Naaah, let's scratch that thought for the time being, shall we?">><br>
<br>
Losing all your socks, underwear and your much beloved pyjamas in one shot certainly sucks given your current tight money situation. But the most prudent response would seem to be to pick something up from the bulk store in the mall. You recall that they don't actually open until after you need to be at work, but there ought to be an employee around early who you can tell of your plight. It's a risk, but worth it to avoid one of your more embarrassing or expensive options.<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_2" "Confirm your plan to buy the clothes tomorrow morning at the mall." 360>>]<br>
<br>
Or do you change your mind?<br>
<br>[<<moveTo "event_landlord_brokenwashmachine_3_panties_1" "Let's take a closer look at these panties." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_1" "Order underwear online!" 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_1" "Going Commando!" 60>>]<br>
<<if $player.sec_style.clothing.underwear == "strict">>
[<<moveTo "event_landlord_brokenwashmachine_3_strict_1" 'Wear the pink set <<=setup.getNpcName("npc_manager", "formal")>> "gifted" you.' 60>>]
<</if>>
<</if>>
</div>/*#
#desc: decide to pick up underwear on the way to work
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.commando = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
That does seem like the less critical option to you. You toss the rest of your ex-girlfriend's things into the back of the wardrobe as you have no use for them.<br>
<br>
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_enthusiast_delivery_1" "Close your wardrobe." 360>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Close your wardrobe." 360>>]
<</if>>
</div>/*#
#desc: decide to goto work commando after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You think about it for a moment. What's the worst that could happen? If you play your cards right, nobody will ever find out, that you're not wearing any underwear. It's not like there are any regulations for underwear in your contract.<br>
<br>
<<printThought "Wait a second. That was my old contract with Cloud Data Service. But I assume there are no such clauses in my new one was well. Who in their right mind would regulate something like that. I just have to make sure I'm clean tomorrow and that should suffice">><br>
<br>
You spin that thought a little bit longer.<br>
<br>
You brace yourself for going out tomorrow commando style.<br>
<br>
<<printThought "Hmm... even if she were to check my underwear, there could only be one reason for that. Hehe... god, I am so lonely...">><br>
<br>
What will you do?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_commando_2" "Decide to go commando!" 60>>]<br>
<br>
Or do you change your mind?<br>
<br>
[<<moveTo "event_landlord_brokenwashmachine_3_panties_1" "Let's take a closer look at these panties." 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_online_1" "Order underwear online!" 60>>]<br>
[<<moveTo "event_landlord_brokenwashmachine_3_money_1" "Stop by the mall on the way to work and buy some new things." 60>>]<br>
<<if $player.sec_style.clothing.underwear == "strict">>
[<<moveTo "event_landlord_brokenwashmachine_3_strict_1" 'Wear the pink set <<=setup.getNpcName("npc_manager", "formal")>> "gifted" you.' 60>>]
<</if>>
</div>/*#
#desc: decide to goto work commando after washing machine fire
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.commando = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
Concluding that it is the simplest plan you decide to go forgo underwear until you can pickup some fresh pairs on the way home from work tomorrow.<br>
<br>
<<printThought "Not the most comfortable thing, but hey, who's going to know, or care?">><br>
<br>
You brace yourself for going out tomorrow commando style.<br>
<br>
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_enthusiast_delivery_1" "Continue." 60>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Continue." 60>>]
<</if>>
</div>/*#
#desc: admin calls after washing machine explosion
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<<applyFatigue 30>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You've just finished making your plans after the washing machine calamity when your phone rings.<br>
<br>
<<printThought "Really? Does it ever end?">><br>
<br>
Looking at the caller you realise it's your friend, <<=setup.getNpcName("npc_admin","first")>> and your mood brightens slightly. You answer the phone.<br>
<br>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>! I saw how down you were after I had to clean out your desk... I just thought I'd call and check in a little — hope you managed to get home and relax, take a shower and such.@@"<br>
<br>
The mention of a shower has you flashing back to the washing machine explosion and you almost lose it, but rein things in at the last moment as you confirm that you're still not sure about this whole Secretary thing, but a job is a job and you'll find out more when you start tomorrow.<br>
<br>
"@@.npc_admin;Weird, well, you know the stories they say about those upper floor folks — just know that I'm rooting for you, and I'm here whenever you need if you wanna take a load off.@@"<br>
<br>
You can't help but smile — there's just something about <<if $npc_admin.fem>>your best friend's<<else>>the big guy's<</if>> cheer that always seems to liven the mood. Not wanting to discuss the calamity of your life the two of you spend some time just shooting the shit about nothing in particular.<br>
<br>
"@@.npc_admin;Well, anyway — it looks like the bench just freed up and the weights, they are calling me,@@" <<he npc_admin>> replies as things start to wind down and you realise how tired the day has left you. "@@.npc_admin;Maybe we can get drinks this Friday, close out the week like we did back in college! Think about it and give me a call.@@"<br>
<br>
You reply that you'll keep it in mind and hang up.<br>
<br>
<<if $player.sec_style.clothing.female == "enthusiast">>
<<printThought "Yeah... best to talk about things in person, <<hes npc_admin>> always been a good friend, I'm sure <<if $npc_admin.fem>>she'll<<else>>he'll<</if>> be supportive.">><br>
<br>
<</if>>
[<<moveTo "room_livingroom" "Put your phone away." 600>>] <<hint $options "Talking with friends every once in a while can help with stress.">>
</div>/*#
#desc: decide to wear strict underwear
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "feminization" "bad_girl_feminization" "strict_confirm">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You sigh... maybe you're going crazy... or maybe you're just afraid of your new boss, but you decide that you'll just wear the underwear she gave you — at least for tomorrow.<br>
<br>
<<printThought "It was kind of comfortable... besides, not like anyone will see it under my work clothes...">><br>
<br>
[<<moveTo "event_admin_firstday_call" "Continue." 60>>]
</div>/*#
#desc: used to make dummy links to passages that are handled in js, etc. so that the orphan/dead end link detection code can work better
#status: FINISHED 0.4.0.0
#ignore_spell: javascript
#*/
Twine structure
[[jsLinks]]
[[StoryTitle]]
[[StoryCaption]]
[[PassageDone]]
[[initGame]]
[[StoryData]]
[[room_testroom_04]]
Debug
[[r_addClothesSet]]
[[r_debugGoto]]
[[r_debugAddItem]]
[[r_debugShowData]]
[[r_tutText]]
[[r_changeClothesSet]]
[[r_debugSetData]]
[[r_delEmail]]
[[r_errorMessage]]
[[r_setAlarmClock]]
[[r_debugImport]]
[[r_debugExport]]
[[r_debugAddXP]]
[[r_debugBugReport]]
[[r_debugAddMoney]]
[[fem_change_options]]
[[joke_visual_options]]
[[mobile_selectSwoleBroNickname]]
[[r_debugAddPassage]]
phonecalls
[[room_call_npc_exgirlfriend]]
[[room_call_npc_manager]]
[[room_call_npc_landlord]]
[[room_call_npc_admin]]
[[room_call_npc_psychiatrist]]
[[room_call_npc_technician]]
[[room_call_npc_barkeeper]]
[[room_call_npc_guard]]
[[room_call_npc_retention]]
[[room_call_npc_rpg_warlock]]
[[room_call_npc_cook]]
[[event_mall_photoshoot_call]]
[[event_fetstore_chastity_finish_phone]]
variable-controlled scenes
[[event_work_coffee_0_0]]
[[event_work_upstairs_option]]
[[room_play_games_smart]]
[[room_play_games_skill]]
[[room_play_games_relax]]
[[room_play_games_relax_classic]]
[[room_play_games_relax_rrr]]
[[event_manager_performance_review_3]]
[[room_mall_beautyparlor_cut]]
[[room_mall_beautyparlor_cutcolor]]
[[event_secretary_style_hair_obedient_alt_2]]
[[event_secretary_style_hair_finish_1]]
[[event_party_manager_assist_first_aborted]]
triggers in javascript
[[event_beginner_heels]]
[[event_beginner_plug_start]]
[[event_beginner_plug_flat]]
[[event_beginner_plug_psychiatrist]]
[[event_beginner_plug_changing_room]]
[[event_beginner_plug_gloryhole]]
[[room_error]]
[[event_psychiatrist_session_boiless_cum_2]]
[[event_psychiatrist_session_boiless_cum_3]]
[[event_manager_hormone_inspect]]
[[event_psychiatrist_boiless_review_1_1_fail]]
[[event_psychiatrist_session_hormones]]
[[event_manager_hormone_inspect_fail_2_1]]
[[event_psychiatrist_session_boiless]]
[[event_no_meal_cum]]
[[event_enthusiast_milking_1]]
inventory
[[room_use_business_card_technician]]
[[room_use_analplug_small_box]]
[[room_use_webcam]]
[[room_use_camera]]
[[room_use_sissy_pill_mk1]]
[[room_use_business_card_manager]]
[[room_use_business_card_landlord]]
[[room_use_black_box]]
[[room_use_unknown_candy]]
[[lookItem]]
[[lookTattoo]]
[[room_use_alizon_box_1]]
[[room_use_technician_panties_package_1]]
[[szene_pink_pill]]
[[takeItem]]
[[room_use_business_card_psychiatrist]]
[[room_use_pink_pill]]
[[event_open_package_hoop_earrings_gold]]
[[event_open_package_satin_corset_pink]]
[[room_use_chastity_cage_box]]
[[room_use_chastity_belt_flat_box]]
[[room_use_bondage_upgrades_box]]
[[room_use_bondage_upgrades_box2]]
[[room_use_bondage_upgrade_vag]]
[[room_use_bondage_upgrade_penis]]
[[room_use_bondage_suction_box]]
[[room_use_bed_bondage_2_box]]
[[room_use_black_box_password]]
[[event_open_package_thigh_highs_pink]]
[[event_open_package_bed_heels]]
[[event_open_package_hoop_earrings_gold]]
[[event_maid_outfit_box]]
[[event_pink_pill_examine]]
[[room_use_sissy_pill_mk2]]
[[room_use_sissy_pill_cure]]
[[room_use_sissyomatic]]
[[room_use_drug_smart]]
[[room_use_drug_ditzy]]
[[room_use_drug_master]]
[[room_use_drug_slave]]
[[room_use_drug_dick]]
[[room_use_drug_breast]]
[[room_use_drug_smart_plus]]
[[room_use_drug_ditzy_plus]]
[[room_use_drug_master_plus]]
[[room_use_drug_slave_plus]]
[[room_use_drug_dick_plus]]
[[room_use_drug_breast_plus]]
[[room_use_hucow_milk]]
[[room_use_pick_me_up]]
[[room_use_electric_chastity_box]]
[[room_use_chastity_cage_tiny_box]]
[[room_use_bimbo_candy_1]]
[[room_use_penis_milker]]
[[room_use_breast_milker]]
[[room_use_vag_milker]]
[[room_use_flatscreen]]
[[room_use_bed_bondage_install]]
[[event_party_data_crystal_use]]
[[room_use_chastity_belt_adv_box]]
[[room_use_chastity_belt_tiny_box]]
[[room_use_chastity_belt_electric_box]]
[[room_use_chastity_cage_flat_box]]
[[room_use_chastity_cage_invert_box]]
[[room_use_c_cage_advanced_box]]
[[room_use_c_cage_pink_box]]
[[room_use_kig_vr]]
[[room_use_chuck_egg]]
[[event_use_dog_treat_1]]
[[event_use_cat_treat_1]]
[[room_use_business_card_barkeeper]]
[[room_use_business_card_guard]]
[[room_use_business_card_retention]]
[[room_use_business_card_rpg_friends]]
[[room_use_energy_drink]]
[[room_use_energy_drink_zero]]
[[room_use_energy_drink_fem]]
[[event_sex_club_flier]]
[[event_dose_manager_food]]
[[event_fix_paddle_1]]
[[event_use_rpg_supplement]]
[[event_use_sissy_pill_pure_eternal]]
[[event_use_sissy_pill_3_eternal]]
[[event_use_sissy_pill_eternal]]
[[event_use_sissy_pill_mk3]]
[[event_use_sissy_pill_pure]]
[[event_use_sissy_pill_2_eternal]]
[[event_use_pick_me_up_ultra]]
[[room_use_wonder_bread]]
[[event_secretary_style_facial_hair_enthusiast_1]]
[[use_nefarious_nurse_drug_1]]
[[use_bimbo_brew]]
Other
[[room_empty]]
[[attachment_read_nda_signed]]
[[attachment_read_nda]]
[[room_computer_email_read]]
[[attachment_read_contract]]
[[room_do_makeup_apply]]
[[room_bedroom_rest]]
[[room_bedroom_setalarmclock]]
[[room_mall_beautyparlor_toogirly]]
[[event_work_coffee_n_0]]
[[room_mall_beautyparlor_makeup_2]]
[[event_corset_lacing_0]]
[[event_manager_daily_check_stage_5_evil]]
[[event_manager_daily_check_stage_5]]
[[room_rideshare]]
[[enthusiastUnisex]]
[[enthusiastFemale]]
[[fullMakeupFemale]]
[[attachment_enroll_boiless]]
[[room_home_cleaning]]
[[event_barista_secret_note_1]]
[[event_technician_meeting_tired_2]]
[[room_usual_place_gloryhole_anal_1]]
[[event_technician_meeting_tired_2]]
[[attachment_data_crystal_contents]]
[[event_attachment_surveilance_1]]
[[room_tattoo_apply]]
[[room_tattoo_remove]]
[[event_horse_buggy_special_repeat]]
[[event_psychiatrist_therapy_mux]]
[[event_gym_admin_showers_postmakeup]]
[[event_forced_sleep]]
[[screen_monthly_expenses]]
[[event_valkyrie_enroll_confirm]]
[[fetish_flag_adjust_options]]
[[game_credits_options]]
[[nameChange_options]]
[[achievementsPage]]
[[event_sissy_email_1_respond_1]]
[[event_sissy_email_3_schedule_1]]
[[event_drug_email_1]]
[[startDay]]
hypnosis stage 4 links
[[event_psychiatrist_hypnosis_4_bdsm_accept]]
[[event_psychiatrist_hypnosis_4_bdsm_decline]]
[[event_psychiatrist_hypnosis_4_bdsm_reject]]
[[event_psychiatrist_hypnosis_4_penis_accept]]
[[event_psychiatrist_hypnosis_4_penis_decline]]
[[event_psychiatrist_hypnosis_4_penis_reject]]
[[event_psychiatrist_hypnosis_4_bondage_accept]]
[[event_psychiatrist_hypnosis_4_bondage_decline]]
[[event_psychiatrist_hypnosis_4_bondage_reject]]
[[event_psychiatrist_hypnosis_4_foot_accept]]
[[event_psychiatrist_hypnosis_4_foot_decline]]
[[event_psychiatrist_hypnosis_4_foot_reject]]
[[event_psychiatrist_hypnosis_4_piss_accept]]
[[event_psychiatrist_hypnosis_4_piss_decline]]
[[event_psychiatrist_hypnosis_4_piss_reject]]
[[event_psychiatrist_hypnosis_4_cum_accept]]
[[event_psychiatrist_hypnosis_4_cum_decline]]
[[event_psychiatrist_hypnosis_4_cum_reject]]
hypnosis stage 5 links
[[event_psychiatrist_hypnosis_5_cum_accept]]
[[event_psychiatrist_hypnosis_5_cum_decline]]
[[event_psychiatrist_hypnosis_5_piss_accept]]
[[event_psychiatrist_hypnosis_5_piss_decline]]
[[event_psychiatrist_hypnosis_5_foot_accept]]
[[event_psychiatrist_hypnosis_5_foot_decline]]
[[event_psychiatrist_hypnosis_5_penis_accept]]
[[event_psychiatrist_hypnosis_5_penis_decline]]
[[event_psychiatrist_hypnosis_5_bondage_accept]]
[[event_psychiatrist_hypnosis_5_bondage_decline]]
[[event_psychiatrist_hypnosis_5_bdsm_accept]]
[[event_psychiatrist_hypnosis_5_bdsm_decline]]
psychiatrist clothing themes
[[event_psychiatrist_session_wearing_makeup_1]]
[[event_psychiatrist_session_wearing_hair_1]]
[[event_psychiatrist_session_wearing_undergarments_only_1]]
[[event_psychiatrist_session_wearing_plug_1]]
[[event_psychiatrist_session_wearing_female_clothes_1]]
[[event_psychiatrist_session_wearing_full_female_underwear_1]]
[[event_psychiatrist_session_wearing_male_clothes_1]]
[[event_psychiatrist_session_wearing_collar_1]]
[[event_psychiatrist_session_wearing_corset_1]]
[[event_psychiatrist_session_wearing_chastity_1]]
[[event_psychiatrist_session_wearing_no_chastity_1]]
[[event_psychiatrist_session_wearing_naked_1]]
[[event_psychiatrist_session_wearing_unisex_clothes_1]]
[[event_psychiatrist_session_wearing_mixed_clothes_1]]
[[event_psychiatrist_session_wearing_heels_1]]
[[event_psychiatrist_session_wearing_commando_1]]
[[event_psychiatrist_session_wearing_partial_female_underwear_1]]
[[event_psychiatrist_session_goth_1]]
[[event_psychiatrist_session_bimbo_1]]
[[event_psychiatrist_session_sissy_1]]
[[event_psychiatrist_session_hood_1]]
[[event_psychiatrist_session_maid_1]]
[[event_psychiatrist_session_nun_1]]
[[event_psychiatrist_session_schoolgirl_1]]
psychiatrist secret themes
[[event_psychiatrist_secret_theme_hypno_1]]
[[event_psychiatrist_secret_theme_boss_1]]
[[event_psychiatrist_secret_theme_work_doctor_1]]
[[event_psychiatrist_secret_theme_player_1]]
[[event_psychiatrist_secret_theme_barista_1]]
[[event_psychiatrist_secret_theme_therapy_1]]
[[event_psychiatrist_secret_theme_drugs_1]]
[[event_psychiatrist_secret_theme_company_1]]
[[event_psychiatrist_secret_theme_manager_1]]
[[event_psychiatrist_secret_theme_evil_admin_1]]
psychiatrist genital themes
[[event_psychiatrist_session_genitals_knot]]
[[event_psychiatrist_session_genitals_vagina]]
[[event_psychiatrist_session_genitals_nobreasts]]
[[event_psychiatrist_session_genitals_both]]
[[event_psychiatrist_session_genitals_noballs]]
[[event_psychiatrist_session_genitals_balls]]
[[event_psychiatrist_session_genitals_penis]]
[[event_psychiatrist_session_genitals_horse]]
[[event_psychiatrist_session_genitals_dragon]]
[[event_psychiatrist_session_genitals_breasts]]
technician genital themes
[[event_technician_theme_genitals_both]]
[[event_technician_theme_genitals_noballs]]
[[event_technician_theme_genitals_balls]]
[[event_technician_theme_genitals_penis]]
[[event_technician_theme_genitals_dragon]]
[[event_technician_theme_genitals_vagina]]
[[event_technician_theme_genitals_horse]]
[[event_technician_theme_genitals_root]]
[[event_technician_theme_genitals_knot]]
[[event_technician_theme_genitals_breasts]]
[[event_manager_home_talk_2]]
bodyshop
[[room_bodyshop_breast_machine_2]]
[[event_bodyshop_breasts_2]]
[[event_bodyshop_eyes_2]]
night selfie
[[room_bedroom_picture_npc_technician]]
[[room_bedroom_picture_npc_exgirlfriend]]
[[room_bedroom_picture_npc_manager]]
[[room_bedroom_picture_npc_psychiatrist]]
[[room_bedroom_picture_npc_landlord]]
[[room_bedroom_picture_npc_barista]]
[[room_bedroom_picture_npc_admin]]
[[room_bedroom_picture_npc_barkeeper]]
[[room_bedroom_picture_npc_guard]]
[[room_bedroom_picture_npc_retention]]
[[room_bedroom_picture_npc_cook]]
[[room_bedroom_picture_npc_rpg_warlock]]
[[event_bed_heels_photo_fail]]
sex club events
[[event_sexclub_event_bukkake_1]]
[[event_sexclub_event_pony_1]]
[[event_sexclub_event_generic_1]]
[[event_sexclub_event_demo_1]]
[[event_sexclub_event_bdsm_1]]
[[event_sexclub_event_dominance_1]]
[[event_sexclub_event_hr_discipline_1]]
[[event_botanist_club_1]]
[[event_fit_bimbo_sexclub_show_watch_1]]
prostitution clients:
[[event_technician_whoring_full_dom_1]]
[[event_technician_whoring_full_neut_1]]
[[event_technician_whoring_full_sub_1]]
[[event_kate_whoring_1]]
[[event_prostitute_licence_renew_1]]
[[event_vip_manager_maid_1]]
[[event_vip_librarian_1]]
[[event_vip_gentle_1]]
[[event_vip_horse_mistress_1]]
[[event_vip_evil_admin_gangbang_1]]
[[event_vip_goth_maid_fem_1]]
[[event_vip_nefarious_nurse_1]]
[[event_prostitution_competition_1]]
[[event_maid_crossover_1_1]]
[[event_manager_daily_check_stage_5]]
[[event_vip_valkyrie_1]]
[[event_vip_strapon_test_1]]
[[event_vip_futa_dude_1]]
[[event_vip_nun_panties_1]]
[[event_vip_psychiatrist_fancy_1]]
[[event_vip_hungry_ass_1]]/*#
#desc: display all game achivements
#status: FINISHED 0.8.0.0
#*/
<<set $overrideEvents=true>>
<<set $roomchange = false>>
<div class="topMenu">
<<checkOptions $options>>
Achievements
@@.textRightSide;[[[back|$player.plocation]]]@@<br>
<hr>
</div>
<<printAllAchievements>><br>
<<if $options.achievSaves>>
[<<link "Only current">><<set $options.achievSaves = false>><<=Engine.play(state.active.title, true)>><</link>>]
<<else>>
[<<link "Use saves">><<set $options.achievSaves = true>><<=Engine.play(state.active.title, true)>><</link>>] WARNING: May cause page to load slowly
<</if>>
<br>
<<if $options.displayAchievName>>
[<<link "Hide unachieved names">><<set $options.displayAchievName = false>><<=Engine.play("achievementsPage", true)>><</link>>]<br>
<<else>>
[<<link "Display all names">><<set $options.displayAchievName = true>><<=Engine.play("achievementsPage", true)>><</link>>]<br>
<</if>>
<<if $options.displayAchievAll>>
[<<link "Hide unachieved info">><<set $options.displayAchievAll = false>><<=Engine.play("achievementsPage", true)>><</link>>]<br>
<<else>>
[<<link "Display all info">><<set $options.displayAchievAll = true>><<=Engine.play("achievementsPage", true)>><</link>>]<br>
<</if>>
<br>
[<<link "Import old achievs">><<set _s = setup.clickImportAchiev()>><<=Engine.play("achievementsPage", true)>><</link>>] <<hint $options "Some imported achievements will not display if you have the fetish for such disabled.">> <<hint $options "After importing you will need to browse away + back for the imported data to display.">> <br>
<input id="file-input" type="files[]" name="name" style="display: none;" />
<input type="file" id="files" name="files[]" style="display: none" />
[<<link "Export all achievs">><<set _s = setup.exportOtherAchievs()>><<=Engine.play("achievementsPage", true)>><</link>>]<br>
<br>
Stuck? Check the wiki — [<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents">Secretary Wiki</a>]<br>
[<<link "return">>
<<goto $player.plocation>>
<</link>>]/*#
#desc: scripts for concept art
#status: FINISHED 0.7.4.0
#ignore_spell: css,jquery,ui
#*/
<<script>>
jQuery("#passages").css("max-width", "none");
jQuery("#ui-bar-toggle").css("display", "none");
jQuery("#ui-bar-toggle").css("display", "none");
<</script>>
<<run UI.stow()>>
<<if ($scene.conceptCharacter is "") or ($scene.conceptCharacter is "other")>>
<<set _prev = $player.plocation>>
<<set $scene.showFem = false>>
<<else>>
<<set _prev = "profile_" + $scene.conceptCharacter>>
<</if>>
<div style="width:100%">
<div style="float:left">
<<if $startgame>>
[<<back>>]
<<if $options.conceptSaves>>
[<<link "Only current">><<set $options.conceptSaves = false>><<=Engine.play("conceptArtPage", true)>><</link>>]
<<else>>
[<<link "Use saves">><<set $options.conceptSaves = true>><<=Engine.play("conceptArtPage", true)>><</link>>]
<</if>>
<<else>>
[<<link "Close">><<run UI.unstow()>><<=Engine.restart()>><</link>>]
<</if>>
<<if ($scene.conceptCharacter isnot "") and ($scene.conceptCharacter isnot "other")>>
<<if setup.getFemArtNpc($scene.conceptCharacter)>>
<<if $scene.showFem == setup.getNPCFem($scene.conceptCharacter)>>
[<<link "See female <<=setup.getNpcName($scene.conceptCharacter, 'default_masc')>> art">><<set $scene.showFem = !$scene.showFem>><<=Engine.play("conceptArtPage", true)>><</link>>]
<<else>>
[<<link "See male <<=setup.getNpcName($scene.conceptCharacter, 'default_fem')>> art">><<set $scene.showFem = !$scene.showFem>><<=Engine.play("conceptArtPage", true)>><</link>>]
<</if>>
<</if>>
<</if>>
</div>
<div style="float:right">
<<if ($scene.conceptCharacter isnot "") and ($scene.conceptCharacter isnot "other")>>
<<if $scene.conceptCharacter.startsWith("npc_")>>
<<if setup.getFemArtNpc($scene.conceptCharacter)>>
<<if setup.getNPCFem($scene.conceptCharacter) != $scene.showFem>>
<<=setup.getNpcName($scene.conceptCharacter, 'default_fem')>>
<<else>>
<<=setup.getNpcName($scene.conceptCharacter, 'default_masc')>>
<</if>>
<<else>>
<<=setup.getNpcName($scene.conceptCharacter, 'default')>>
<</if>>
<<else>>
<<=$scene.conceptCharacter>>
<</if>>
<</if>>
</div>
<<if $scene.conceptCharacter isnot "">>
<div style="margin:0 auto;text-align:center">[<<link "See all art">><<set $scene.conceptCharacter = "">><<=Engine.play("conceptArtPage", true)>><</link>>]</div>
<<else>>
<br>
<</if>>
</div>
<div id="conceptArtSelector">
<<showConceptArtList>>
</div>
<div id="conceptArtView">
Select Art on the left side to view it.
</div><<set $daySkip = {}>>
<<switch $now.getUTCDay()>>
<<case 0>>
<<set $daySkip.actions = {
"workout_guard" : false,
"coffee_technician" : false,
"vr_therapy" : false,
}>>
<<set $daySkip.skip = {
"workout_guard" : false,
"morning" : false,
"afternoon" : false,
"coffee_technician" : false,
"vr_therapy" : false,
"weekend_evening" : false,
"sleep" : false
}>>
<<case 1>>
<<set $daySkip.actions = {
"workout_admin" : false,
"work_morning_type" : "normal",
"work_afternoon_type" : "normal"
}>>
<<set $daySkip.skip = {
"workout_admin" : false,
"work_transit" : false,
"inspection" : false,
"work_morning" : false,
"lunch" : false,
"work_afternoon" : false,
"after_work" : false,
"home_travel" : false,
"weekday_evening" : false,
"sleep" : false
}>>
<<case 2>>
<<set $daySkip.actions = {
"workout_admin" : false,
"work_morning_type" : "normal",
"work_afternoon_type" : "normal",
"afterwork_doctor" : false
}>>
<<set $daySkip.skip = {
"workout_admin" : false,
"work_transit" : false,
"inspection" : false,
"work_morning" : false,
"lunch" : false,
"work_afternoon" : false,
"after_work" : false,
"afterwork_doctor" : false,
"home_travel" : false,
"weekday_evening" : false,
"sleep" : false
}>>
<<case 3>>
<<set $daySkip.actions = {
"workout_admin" : false,
"work_morning_type" : "normal",
"work_afternoon_type" : "normal",
"vr_therapy" : false
}>>
<<set $daySkip.skip = {
"workout_admin" : false,
"work_transit" : false,
"inspection" : false,
"work_morning" : false,
"lunch" : false,
"work_afternoon" : false,
"after_work" : false,
"vr_therapy" : false,
"home_travel" : false,
"weekday_evening" : false,
"sleep" : false
}>>
<<case 4>>
<<set $daySkip.actions = {
"workout_admin" : false,
"work_morning_type" : "normal",
"work_afternoon_type" : "normal",
"party" : false
}>>
<<set $daySkip.skip = {
"workout_admin" : false,
"work_transit" : false,
"inspection" : false,
"work_morning" : false,
"lunch" : false,
"work_afternoon" : false,
"weekly_pay" : false,
"home_travel" : false,
"weekday_evening" : false,
"thursday_evening" : false,
"party" : false,
"sleep" : false
}>>
<<case 5>>
<<set $daySkip.actions = {
"workout_admin" : false,
"work_friday_type" : "normal",
"therapy" : false,
"date_admin" : false,
"technician_dinner" : false
}>>
<<set $daySkip.skip = {
"workout_admin" : false,
"work_transit" : false,
"inspection" : false,
"work_friday" : false,
"after_work_friday" : false,
"home_travel_friday" : false,
"therapy" : false,
"date_admin" : false,
"technician_dinner" : false,
"sleep" : false
}>>
<<case 6>>
<<set $daySkip.actions = {
"workout_guard" : false,
"coffee_technician" : false,
"rpg" : false,
}>>
<<set $daySkip.skip = {
"workout_guard" : false,
"morning" : false,
"afternoon" : false,
"coffee_technician" : false,
"weekend_evening" : false,
"rpg" : false,
"sleep" : false
}>>
<</switch>>
<<if !$player.dayskip.actions.hasOwnProperty($now.getUTCDay())>>
<<set $player.dayskip.skip[$now.getUTCDay()] = {}>>
<<set $player.dayskip.actions[$now.getUTCDay()] = {}>>
<</if>>
<<for _action, _isset range $daySkip.skip>>
<<if $player.dayskip.skip[$now.getUTCDay()][_action]>>
<<set $daySkip.skip[_action] = $player.dayskip.skip[$now.getUTCDay()][_action]>>
<</if>>
<</for>>
<<for _action, _isset range $daySkip.actions>>
<<if $player.dayskip.actions[$now.getUTCDay()][_action] && setup.daySkipActionEnabled(_action)>>
<<set $daySkip.actions[_action] = $player.dayskip.actions[$now.getUTCDay()][_action]>>
<</if>>
<</for>>
***** EXPERIMENTAL *****<br>
<<printDaySkipChoices $daySkip.skip>>
[<<moveTo 'dayskip_progress_day' "Fast-forward day." 0>>]<br>
***** EXPERIMENTAL *****<br><<set $scene.beforetasklocation = []>>
<<if $player.flags.collar.collarId && $player.flags.collar.collarId != setup.getItemFromType("choker")>>
ERROR: collar de-sync, please report save!<br>
<br>
<<addItem $player.flags.collar.collarId>>
<<wearItem $player.flags.collar.collarId true>>
<</if>>
<<set $player.dayskip.skip[$now.getUTCDay()] = $daySkip.skip>>
<<set $player.dayskip.actions[$now.getUTCDay()] = $daySkip.actions>>
<<if false>>
<<moveTo "stageSwitchStartInspection">>
<<moveTo "stageSwitchPostInspection">>
<<moveTo "hypnosisStartPassthrough">>
<</if>>
<<dayskipExecuteTaskOps $scene.dayskipExpectedAction>>
<<set _timeAdvanceTo = $now>>
<<set _taskOps = "">>
<<set _stop = false>>
<<set $player.location to "Skipping Through Life">>
<<include playerMenuHypnosis>>
<<if !$npc_chuck.flags.event>>
<div id="invframe" class="scrolltext">
You hurry through your day...<br>
<br>
<<switch $now.getUTCDay()>>
<<case 0>>
<<include "dayskip_sunday">>
<<case 1>>
<<include "dayskip_monday">>
<<case 2>>
<<include "dayskip_tuesday">>
<<case 3>>
<<include "dayskip_wednesday">>
<<case 4>>
<<include "dayskip_thursday">>
<<case 5>>
<<include "dayskip_friday">>
<<case 6>>
<<include "dayskip_saturday">>
<<default>>
ERROR: unexpected day: <<=$now.getUTCDay()>>
<</switch>>
</div>
<<set _secondsAdvance = setup.secondsToDate($now, _timeAdvanceTo)>>
<<if _secondsAdvance == 0>>
/%ie: no skipping%/
No skip.
<<moveTo $scene.dayskipExpectedDest>>
<<elseif setup.changedRoom()>>
<<set _testAdvance = setup.advanceDate($player, $now, 'seconds', _secondsAdvance, true)>>
<<dayskipExecuteTaskOps _taskOps>>
<<if setup.secondsToDate(_timeAdvanceTo, _testAdvance) != 0>>
ERROR: event skipped, please upload this save to discord for this issue to be addressed!
<</if>>
<<set $now = _timeAdvanceTo>>
<</if>>
<<initRoom>>
<</if>><<daySkipSkipper "workout_guard">>
<<daySkipSkipper "morning">>
<<daySkipSkipper "afternoon">>
<<daySkipSkipper "coffee_technician">>
<<daySkipSkipper "weekend_evening">>
<<daySkipSkipper "rpg">>
<<daySkipSkipper "sleep">>
<<if !_stop>>
[<<moveTo "event_bed_root" "Continue." 0 "<<set $scene.firstSleep=true>>">>]
<</if>><<daySkipSkipper "workout_guard">>
<<daySkipSkipper "morning">>
<<daySkipSkipper "afternoon">>
<<daySkipSkipper "coffee_technician">>
<<daySkipSkipper "weekend_evening">>
<<daySkipSkipper "vr_therapy">>
<<daySkipSkipper "sleep">>
<<if !_stop>>
[<<moveTo "event_bed_root" "Continue." 0 "<<set $scene.firstSleep=true>>">>]
<</if>><<daySkipSkipper "workout_admin">>
<<daySkipSkipper "work_transit">>
<<daySkipSkipper "inspection">>
<<daySkipSkipper "work_morning">>
<<daySkipSkipper "lunch">>
<<daySkipSkipper "work_afternoon">>
<<daySkipSkipper "after_work">>
<<daySkipSkipper "home_travel">>
<<daySkipSkipper "weekday_evening">>
<<daySkipSkipper "sleep">>
<<if !_stop>>
[<<moveTo "event_bed_root" "Continue." 0 "<<set $scene.firstSleep=true>>">>]
<</if>><<daySkipSkipper "workout_admin">>
<<daySkipSkipper "work_transit">>
<<daySkipSkipper "inspection">>
<<daySkipSkipper "work_morning">>
<<daySkipSkipper "lunch">>
<<daySkipSkipper "work_afternoon">>
<<daySkipSkipper "after_work">>
<<daySkipSkipper "afterwork_doctor">>
<<daySkipSkipper "home_travel">>
<<daySkipSkipper "weekday_evening">>
<<daySkipSkipper "sleep">>
<<if !_stop>>
[<<moveTo "event_bed_root" "Continue." 0 "<<set $scene.firstSleep=true>>">>]
<</if>><<daySkipSkipper "workout_admin">>
<<daySkipSkipper "work_transit">>
<<daySkipSkipper "inspection">>
<<daySkipSkipper "work_morning">>
<<daySkipSkipper "lunch">>
<<daySkipSkipper "work_afternoon">>
<<daySkipSkipper "after_work">>
<<daySkipSkipper "vr_therapy">>
<<daySkipSkipper "home_travel">>
<<daySkipSkipper "weekday_evening">>
<<daySkipSkipper "sleep">>
<<if !_stop>>
[<<moveTo "event_bed_root" "Continue." 0 "<<set $scene.firstSleep=true>>">>]
<</if>><<daySkipSkipper "workout_admin">>
<<daySkipSkipper "work_transit">>
<<daySkipSkipper "inspection">>
<<daySkipSkipper "work_morning">>
<<daySkipSkipper "lunch">>
<<daySkipSkipper "work_afternoon">>
<<daySkipSkipper "weekly_pay">>
<<daySkipSkipper "home_travel">>
<<if $npc_manager.flags.party.timesAttended>>
<<daySkipSkipper "weekday_evening">>
<<else>>
<<daySkipSkipper "thursday_evening">>
<<daySkipSkipper "party">>
<</if>>
<<daySkipSkipper "sleep">>
<<if !_stop>>
[<<moveTo "event_bed_root" "Continue." 0 "<<set $scene.firstSleep=true>>">>]
<</if>><<daySkipSkipper "workout_admin">>
<<daySkipSkipper "work_transit">>
<<daySkipSkipper "inspection">>
<<daySkipSkipper "work_friday">>
<<daySkipSkipper "after_work_friday">>
<<daySkipSkipper "home_travel_friday">>
<<daySkipSkipper "therapy">>
<<daySkipSkipper "date_admin">>
<<daySkipSkipper "technician_dinner">>
<<daySkipSkipper "therapy">>
<<daySkipSkipper "sleep">>
<<if !_stop>>
[<<moveTo "event_bed_root" "Continue." 0 "<<set $scene.firstSleep=true>>">>]
<</if>><<set _list = setup.getBaseKeyList()>>
<<for _i, _name range _list>>
<<set _tmpStr = 'setup.getBase("'+_name+'")'>>
<<macroSet _name _tmpStr>>
<</for>>
<<set $npc_exgirlfriend.flags.bondage_machine.password=setup.randomString(6, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')>>/*#
#desc: enter room triggers
#status: FINISHED 0.4.0.0
#*/
<<set $scene.triggeredEvent=false>>
<<checkOptions $options>>
<<updateValues>>
<<checkTaskEvents>>/*#
#desc: enter hypnosis room triggers
#status: FINISHED 0.4.0.0
#*/
<<if !setup.inPassageTag(passage(),"menu")>>
<<set $player.plocation to passage()>>
<</if>>
<span class="glitch" data-text="Inventory">Inventory</span> |
<<if setup.checkItemInInventory("smartphone")>>
<span class="glitch2" data-text="Phone">Phone</span> |
<</if>>
<span class="glitch3" data-text="Profiles">Profiles</span> |
<span class="glitch" data-text="Stats">Stats</span> |
<span class="glitch2" data-text="Tasks">Tasks</span> |
<span class="glitch3" data-text="Achievements">Achievements</span> |
[[Options|goOpt]]
<div id="locationTitle" style="overflow: hidden;"><span class="textRightSide"><<=$player.location>></span></div>
<hr>/*#
#desc: enter locked room triggers
#status: FINISHED 0.4.0.0
#*/
<<if !setup.inPassageTag(passage(),"menu")>>
<<set $player.plocation to passage()>>
<</if>>
@@.link_locked;Inventory @@
<<if setup.checkItemInInventory("smartphone")>>
@@.link_locked;| Phone@@
<</if>>
@@.link_locked;| Profiles | Stats | Tasks | Achievements@@
| [[Options|goOpt]]
<div id="locationTitle" style="overflow: hidden;">@@.textRightSide;<<=$player.location>>@@</div>
<hr>/*#
#desc: left hand bar stuff (stats, player pic, debug links, eetc.)
#status: FINISHED 0.4.0.0
#ignore_spell: subscribestar,][
#*/
<<if setup.inPassageTag($player.plocation, 'disableclock')>>
<<printThoughtGlitch "~~:~~">>
<<else>>
<<printDate $now>><br>
<</if>>
<div id="showClothes" class="sideframe_showclothes"></div>
<br>
<<if $startgame>>
<div id="showStats" class="sideframe_showstats">
<div id="cFatigue" class="container_stat">
<div id="bFatigue" class="bar_stat_blue" style="width:0%"></div>
<div id="tFatigue" class="bar_stat_text"></div>
</div>
<div id="cHorny" class="container_stat">
<div id="bHorny" class="bar_stat_blue" style="width:0%"></div>
<div id="tHorny" class="bar_stat_text"></div>
</div>
<div id="cStress" class="container_stat">
<div id="bStress" class="bar_stat_blue" style="width:0%"></div>
<div id="tStress" class="bar_stat_text"></div>
</div>
<div id="cWillpower" class="container_stat_willpower">
</div>
<div id="cEffects" class="container_stat">
</div>
</div>
<div id="showValues" class="sideframe_showvalues"></div>
<<createAvatar>>
<<createStats>>
<</if>>
<<if $debug>>
[<<link "d">><<debugDataShow>><</link>>]
[<<link "s">><<debugDataSet>><</link>>]
[<<link "g">><<debugGoto>><</link>>]
[<<link "aD">><<debugAllData>><</link>>]
[<<link "aI">><<debugAddItem>><</link>>]
[<<link "aP">><<debugAddPassage>><</link>>]
[<<link "xp">><<debugXP>><</link>>]
[<<link "$">><<debugMoney>><</link>>]
[<<link "W">><<debugWillpower>><</link>>]
[<<link "S">><<debugStress>><</link>>]
[<<link "F">><<debugFatigue>><</link>>]
[<<link "1hr">>
<<set $now to setup.advanceDate($player, $now, 'hours', 1)>>
<<moveTo $player.plocation>>
<</link>>]
[<<link "next day">>
<<set $now to setup.advanceNextDate($player, $now,1,6,30)>>
<<moveTo $player.plocation>>
<</link>>]
[<<link "dirty">><<makeDirty>><</link>>]<br>
[<<link "activateFetishes">><<activateAllFetishes>><<checkFetishFlags>><</link>>]<br>
<</if>>
<br>
<<if $startgame>>
[<a target="_blank" href="https://subscribestar.adult/deedee">SubscribeStar</a>]<br>
[<a target="_blank" href="https://www.patreon.com/_deedee">Secretary Patreon</a>]<br>
[<<link "Export Bug Report">><<debugBugReport>><</link>>]<br>
<</if>>
<<if setup.isMobile() || $options.isMobile>>
<<if $startGame>>
[<<link "Serialise Save">><<=Engine.play("r_debugExport", true)>><</link>>] <<hint $options "Mobile Compatibility mode: use these to serialise/deserialise the save as a raw string.">><br>
<</if>>
[<<link "Deserialise Save">><<debugImport>><</link>>] <<hint $options "Mobile Compatibility mode: use these to serialise/deserialise the save as a raw string.">><br>
<</if>>/*#
#desc: debug show data
#status: FINISHED 0.4.0.0
#*/
<<textbox "$scene.d_data" "player" autofocus>><br>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<showAllData $scene.d_data>>
<</button>>@@/*#
#desc: debug set data
#status: FINISHED 0.4.0.0
#*/
<<textbox "$scene.d_data" "player" autofocus>><br>
<<textbox "$scene.d_dataset" $_dataset>><br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<setAllData $scene.d_data $scene.d_dataset>>
<</button>>@@/*#
#desc: debug jump to passage
#status: FINISHED 0.4.0.0
#*/
<<textbox "$scene.d_goto" "room_foyer" autofocus>><br>
<br>
Warning: using this feature is quite liable to utterly break your game, you have been warned.<br>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<set $player.llocation = $player.plocation>>
<<set $player.plocation = $scene.d_goto>>
<<set $roomchange = true>>
<<set $cheaterWarpedFrom = $player.llocation>>
<<goto $scene.d_goto>>
<</button>>@@/*#
#desc: debug add item
#status: FINISHED 0.4.0.0
#*/
<<textbox "$scene.d_item" "" autofocus>><br>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<addItem $scene.d_item>>
<</button>>@@/*#
#desc: debug add item
#status: FINISHED 0.4.0.0
#*/
<<textbox "$scene.d_passage" "" autofocus>><br>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<addHistory $scene.d_passage>>
<</button>>@@/*#
#desc: debug add xp
#status: FINISHED 0.7.10.0
#*/
<<debugPrintStatOptions $player "scene.d_stat" "scene.d_xp">>
<br><br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<debugApplyXP $scene.d_stat $scene.d_xp>>
<<goto $player.plocation>>
<</button>>@@/*#
#desc: debug add money
#status: FINISHED 0.7.10.0
#*/
<<numberbox "_dmoney" 100>>
<br><br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<addCredits _dmoney >>
<<goto $player.plocation>>
<</button>>@@/*#
#desc: debug import savefiles
#status: FINISHED 0.4.0.0
#*/
Insert Text from Export File here:
<<textarea "_import_data" "" autofocus>>
<<button "Okay">>
<<deserializeSave _import_data>>
<<script>>
Dialog.close();
<</script>>
<<goto $player.plocation>>
<</button>>/*#
#desc: debug serialize savefile
#status: FINISHED 0.8.3.0
#*/
Copy the full string to backup your current state. Paste it in to the deserialise to load.<br>
<br>
<<serializeSave>>
<<button "Copy serialized string">>
<<serializeToClipboard _savestr>>
<</button>>
<<button "Save string to disk">>
<<serializeToFile _savestr>>
<</button>>
<br>
[<<link "back">><<=Engine.play($player.plocation, true)>><</link>>]
<br><br>
<div class="wordwrap">
<<=_savestr>>
</div>/*#
#desc: debug bug report
#status: FINISHED 0.7.10.0
#*/
<<textarea "$d_metadata" "Issue description" autofocus>><br>
<br>
This will save to disk with current game state + description.<br>
Upload this file to <a target="_blank" href="https://discord.gg/XShMmqr">Secretary Discord Server</a><br>
#bugs channel and someone will look into it.<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<reportBug $d_metadata>>
<</button>>@@/*#
#desc: tutorial pop-up
#status: FINISHED 0.4.0.0
#*/
<<=$scene.tutText>><br>
<br>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: add clothing set
#status: FINISHED 0.4.0.0
#*/
New Set Name: <br>
<<textbox "_setname" "" autofocus>><br>
<br>
<<button "Okay">>
<<addNewClothesSet _setname>>
<<script>>
Dialog.close();
<</script>>
<<goto goInv>>
<</button>>
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: change clothing
#status: FINISHED 0.4.0.0
#*/
<<if !$scene.tmp_setimportant>>
New Set Name: <br>
<<set $scene.tmp_setname = $scene.tmp_setname.replaceAll("%27","'")>>
<<textbox "$scene.tmp_setname" $scene.tmp_setname autofocus>><br>
<<else>>
Set Name:
<<=$scene.tmp_setname>><br>
<</if>>
<br>
<<button "Okay">>
<<changeClothesSet $scene.numberClothSet $scene.tmp_setname $scene.tmp_setimportant $scene.tmp_settype>>
<<deleteMember $scene "tmp_setname">>
<<deleteMember $scene "numberClothSet">>
<<deleteMember $scene "tmp_setimportant">>
<<deleteMember $scene "tmp_settype">>
<<script>>
Dialog.close();
<</script>>
<<goto goInv>>
<</button>>
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: pop-up for deleting email
#status: FINISHED 0.4.0.0
#*/
Delete this Email?<br>
<br>
<<button "Yes">>
<<deleteEmail $computer $scene.delEmailNumber>>
<<script>>
Dialog.close();
<</script>>
<<moveTo "room_computer_email">>
<</button>>
<<button "No">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: pop-up for setting alarm clock
#status: FINISHED 0.4.0.0
#*/
<<set _h = $player.clock.h>>
<<set _m = $player.clock.m>>
Set Clock: <br>
/%<<textbox "_h" "<<=_h>>" autofocus>> : <<textbox "_m" "<<=_h>>" >><br>%/
<<creatAlarmClockInput _h _m>><br>
<span id="alarmErrorText"></span>
<br>
<<button "Okay">>
<<if isNaN(_h) || isNaN(_m)>>
<<set _x = setup.alarmErrorText(_h,_m)>>
<<else>>
<<set _h = parseInt(_h)>>
<<set _m = parseInt(_m)>>
<<if ( ((_h>=6) && (_h < 24)) && ((_m>=0)&&(_m<60)) )>>
<<set $player.clock.h = _h>>
<<set $player.clock.m = _m>>
<<script>>
Dialog.close();
<</script>>
<<else>>
<<set $scene.alarmError = true>>
<<set $alarmErrorText = setup.alarmErrorText(_h,_m)>>
<</if>>
<</if>>
<</button>>
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: error message pop-up
#status: FINISHED 0.4.0.0
#*/
@@.error;<<=scene.errorMessage>>@@<br>
<br>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<set $scene.errorMessage="">>
<</button>>/*#
#desc: error message
#status: FINISHED 0.4.0.0
#*/
<<if scene.errorMessage!="">>
<<openErrorMessage scene.errorMessage>>
<</if>>/*#
#desc: catch for empty to send back to game start
#status: FINISHED 0.4.0.0
#*/
<<goto room_start_game>>/*#
#desc: catch broken games
#status: RELEASED 0.6.0.0
#ignore_spell: gamestate
#*/
<<switch $scene.code>>
<<case "misplaced_key">>
<<set $npc_manager.flags.hascagekey = true>>
<<case "mismatch_9001">>
<<set $wornClothing.cage = $wornClothing.hollow_plug>>
<<case "multi_rpg_task">>
<<if $currentTasks.hasOwnProperty("technician_roleplay_1") && !$currentTasks.technician_roleplay_1.finished>>
<<deleteTask 'technician_roleplay_1'>>
<<elseif $currentTasks.hasOwnProperty("technician_roleplay_punish_1") && !$currentTasks.technician_roleplay_punish_1.finished>>
<<deleteTask 'technician_roleplay_punish_1'>>
<</if>>
<<case 'no_chastity'>>
<<addItem $npc_manager.flags.lastCage>>
<<wearItem $npc_manager.flags.lastCage true>>
<<case 'wrong_chastity'>>
<<switch setup.getItemFromType("cage")>>
<<case "c_cage_pink" "c_cage_steel">>
<<set $scene.newcage = "chastity_belt_flat">>
<<case "chastity_cage_tiny" "chastity_cage_flat" "chastity_cage_invert">>
<<set $scene.newcage = "chastity_belt_tiny">>
<<case "electric_chastity">>
<<set $scene.newcage = "chastity_belt_electric">>
<<case "c_cage_advanced">>
<<set $scene.newcage = "chastity_belt_adv">>
<<case "sissyomatic" "sissyomatic_med" "sissyomatic_jumbo" "sissyomatic_flat" "sissyomatic_flat_med" "sissyomatic_flat_jumbo">>
<<set $scene.newcage = "sissyomatic_belt">>
<</switch>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<case "chastity_req">>
<<set $npc_manager.flags.require_chastity = true>>
<<case "chastity_task">>
<<set _x = setup.addManagerEndlessTask()>>
<<case "manager_forgot_chastity">>
<<if setup.checkItemTypeWorn("cage")>>
<<include "setLastSeenCage">>
<<else>>
<<set $npc_manager.flags.lastCage = "c_cage_pink">>
<</if>>
<<case "negative_cream">>
<<set $player.timebased.milking.cream_storage = 0>>
<<case "tblock">>
<<setTmpEffect 'tblock_eternal'>>
<<case "stage1_stuck">>
<<set $currentTasks.manager_morning_inspection_task.rewards.trigger_event = "event_manager_daily_check_stage_2">>
<<case "epoch">>
<<set $now.setFullYear(setup.getNextTaskLocation("").date.getUTCFullYear())>>
<<case "fatigue_multi">>
<<set $player.timebased.fatiguemulti = 1.0>>
<<set $player.timebased.dirtymulti = 1.0>>
<<set $player.timebased.hornymulti = 1.0>>
<<set $player.timebased.stressmulti = 0>>
<<case "org_multi">>
<<set $player.timebased.fatiguemulti = 1.0>>
<<set $player.timebased.dirtymulti = 1.0>>
<<set $player.timebased.hornymulti = 1.0>>
<<set $player.timebased.stressmulti = 0>>
<<deleteMember $scene "org_dirtymulti">>
<<deleteMember $scene "org_fatiguemulti">>
<<deleteMember $scene "org_stressmulti">>
<</switch>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $scene.plug = setup.getItemFromType("hollow_plug")>>
<<if $scene.plug != "" && $scene.plug.startsWith('sissyomatic') && $scene.plug.endsWith('_plug')>>
<<switch $scene.plug>>
<<case "sissyomatic_plug">>
<<set $scene.cage = "sissyomatic">>
<<case "sissyomatic_med_plug">>
<<set $scene.cage = "sissyomatic_med">>
<<case "sissyomatic_jumbo_plug">>
<<set $scene.cage = "sissyomatic_jumbo">>
<<case "sissyomatic_flat_plug">>
<<set $scene.cage = "sissyomatic_flat">>
<<case "sissyomatic_flat_med_plug">>
<<set $scene.cage = "sissyomatic_flat_med">>
<<case "sissyomatic_flat_jumbo_plug">>
<<set $scene.cage = "sissyomatic_flat_jumbo">>
<<case "sissyomatic_belt_plug">>
<<set $scene.cage = "sissyomatic_belt">>
<<case "sissyomatic_belt_med_plug">>
<<set $scene.cage = "sissyomatic_belt_med">>
<<case "sissyomatic_belt_jumbo_plug">>
<<set $scene.cage = "sissyomatic_belt_jumbo">>
<<case "sissyomatic_fem_plug">>
<<set $scene.cage = "sissyomatic_fem">>
<<case "sissyomatic_fem_med_plug">>
<<set $scene.cage = "sissyomatic_fem_med">>
<<case "sissyomatic_fem_jumbo_plug">>
<<set $scene.cage = "sissyomatic_fem_jumbo">>
<<case "sissyomatic_ultra_plug">>
<<set $scene.cage = "sissyomatic_ultra">>
<<case "sissyomatic_ultra_med_plug">>
<<set $scene.cage = "sissyomatic_ultra_med">>
<<case "sissyomatic_ultra_jumbo_plug">>
<<set $scene.cage = "sissyomatic_ultra_jumbo">>
<<case "sissyomatic_ultra_flat_plug">>
<<set $scene.cage = "sissyomatic_ultra_flat">>
<<case "sissyomatic_ultra_flat_med_plug">>
<<set $scene.cage = "sissyomatic_ultra_flat_med">>
<<case "sissyomatic_ultra_flat_jumbo_plug">>
<<set $scene.cage = "sissyomatic_ultra_flat_jumbo">>
<</switch>>
<<set $scene.altCage = $scene.plug>>
<<set $scene.isSissyomatic = true>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
Oops! You have reached a broken gamestate, please save to disc and upload to the secretary discord #bugs channel so that we can fix this problem.<br>
<br>
Code: <<=$scene.code>> Source: <<=$scene.dest>><br>
<br>
Discord link:
<div align="middle"><a target="_blank" href="https://discord.gg/XShMmqr">Secretary Discord Server</a></div><br>
<br>
[<<moveTo $scene.dest "Fix game and continue." 60>>]<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage>>
<<set $scene.isCage = setup.isCage()>>
<<set $scene.chastityLevel = setup.getChastityLevel()>>
<<set $scene.isSissyomatic = $scene.chastityLevel == 5>>
<<removeItem $scene.cage true>>
<<if $scene.isSissyomatic>>
<<set $scene.altCage = $scene.cage + "_plug">>
<<deleteItem $scene.cage>>
<<addItem $scene.altCage>>
<<wearItem $scene.altCage true>>
<<manipulateItem $scene.altCage "lock" true>>
<</if>>
<</if>><<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
<<removeItem $scene.altCage true>>
<<deleteItem $scene.altCage>>
<<addItem $scene.cage>>
<</if>>
<<wearItem $scene.cage true>>
<<if !$inventory[$scene.cage].status.lock>>
<<manipulateItem $scene.cage "lock" true>>
<</if>>
<</if>>/*#
#desc: player menu (inventory/stats/etc.)
#status: FINISHED 0.4.0.0
#*/
<div class="topMenu">
<<if !setup.inPassageTag(passage(),"menu")>>
<<set $player.plocation to passage()>>
<</if>>
[[Inventory|goInv]] |
<<if setup.checkItemInInventory("smartphone")>>
<<if !$currentcall>>
[[Phone|goPho]] |
<<else>>
@@.link_locked;Phone@@ |
<</if>>
<</if>>
[[Tasks|goTas]] |
[[Stats|goSta]] |
[[Profiles|goProfiles]] |
<<link "Achievements">><<set $options.displayAchievName = false>><<=Engine.play("achievementsPage", true)>><</link>> |
[[Options|goOpt]]
<div id="locationTitle" style="overflow: hidden;">@@.textRightSide;<<=$player.location>>@@</div>
<hr>
</div>/*#
#desc: player stats
#status: FINISHED 0.4.0.0
#*/
<<set $overrideEvents=true>>
<<set $roomchange = false>>
<div class="topMenu">
[[Inventory|goInv]] |
<<if setup.checkItemInInventory("smartphone")>>
<<if $currentcall>>
@@.link_locked;Phone@@ |
<<else>>
[[Phone|goPho]] |
<</if>>
<</if>>
[[Tasks|goTas]] |
[[Profiles|goProfiles]] |
<<link "Achievements">><<set $options.displayAchievName = false>><<=Engine.play("achievementsPage", true)>><</link>> |
[[Options|goOpt]]
@@.textRightSide;Stats [[[back|$player.plocation]]]@@<br>
<hr>
</div><br>
Name: <<=$player.first_name>> <<=$player.last_name>><br>
<<if $player.flags.firstWorkDayDone>>
Title: <<=setup.getFullTitle()>><br>
Job Title: <<=setup.getSecretaryTitle()>><br>
<<else>>
Job Title: Systems Operations Associate at Cloud Data Services<br>
<</if>>
Weekly Base Salary: <<=Math.floor($player.work.payment)>> Credits<br>
<<printValues>><br>
<br>
[[back|$player.plocation]]/*#
#desc: player inventory
#status: FINISHED 0.4.0.0
#*/
<<set $overrideEvents=true>>
<<set $roomchange = false>>
<<checkOptions $options>>
<<updateValues>>
<div class="topMenu">
<<if setup.checkItemTypeWorn("gloves") && setup.checkItemTypeTag('gloves', ['boundarms']) || setup.checkItemTypeWorn("bondagegear") && setup.checkItemTypeTag('bondagegear', ['boundarms']) && !setup.checkItemTypeTag('bondagegear', ['removable'])>>
<<set $player.cutscene.prevLock = true && $player.cutscene.lockinventory>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.prevReason = "" + $player.cutscene.reason>>
<<set $player.cutscene.reason = "With your arms restrained, you can contemplate your inventory, but not do anything with it.">>
<</if>>
<<if setup.checkItemInInventory("smartphone")>>
<<if $currentcall>>
@@.link_locked;Phone@@ |
<<else>>
[[Phone|goPho]] |
<</if>>
<</if>>
[[Tasks|goTas]] |
[[Stats|goSta]] |
[[Profiles|goProfiles]] |
<<link "Achievements">><<set $options.displayAchievName = false>><<=Engine.play("achievementsPage", true)>><</link>> |
[[Options|goOpt]]
<<if $player.plocation == "goInv">>
<<set $player.plocation = $player.llocation>>
<</if>>
@@.textRightSide;Inventory [[[back|$player.plocation]]]@@
<<initJquery>>
<hr>
</div>
<<if setup.isMobile()>>
You appear to be playing on a mobile device. If you encounter inventory difficulty try options —> text inventory.<br>
<</if>>
<<if $options.basicInventory!="2.0">>
<<if $playerThoughtList.changeClothes>>
<<printThought $playerThoughtList.changeClothes.text>><br>
<<elseif $playerThoughtList.inventory>>
<<printThought $playerThoughtList.inventory.text>><br>
<<else>>
<<include "thoughts_current">>
<</if>>
Coverage: <<printIndecency>><br>
<br>
<</if>>
<<printInv>>
<<if $options.basicInventory!="2.0">>
<<printTattooInv>>
<br>
<</if>>
<<set $player.currentThought = "">>
[[[Consider your appearance.|appearanceDetail]]]/*#
#desc: appearance details
#status: FINISHED 0.8.1.0
#*/
<<set $overrideEvents=true>>
<<checkOptions $options>>
<<updateValues>>
<div class="topMenu">
<<if setup.checkItemInInventory("smartphone")>>
<<if $currentcall>>
@@.link_locked;Phone@@ |
<<else>>
[[Phone|goPho]] |
<</if>>
<</if>>
[[Tasks|goTas]] |
[[Stats|goSta]] |
[[Profiles|goProfiles]] |
<<link "Achievements">><<set $options.displayAchievName = false>><<=Engine.play("achievementsPage", true)>><</link>> |
[[Options|goOpt]] |
@@.textRightSide;Inventory [[[back|goInv]]]@@
<hr>
</div>
<<set $scene.clothingModifiers = setup.calcProstitutionModifiers()>>
<<include "prostitute_appearance">>
<br><br>
<<switch setup.checkSleepWear()>>
<<case "naked">>
You suppose you could sleep naked, but is that optimal?
<<case "not_sleepwear">>
You do not think your current attire would be comfortable to sleep in.
<<case "too_fem">>
Wear women's clothes to bed? You don't like that idea.
<<case "too_masc">>
While theoretically sleep attire, you don't think you'd sleep comfortably in something so... masculine.
<<case "sleepwear">>
You could happily sleep in this clothing.
<<default>>
ERROR: unexpected sleepwear state: <<=setup.checkSleepWear()>>
<</switch>>
<br><br>
[[[back|goInv]]]/*#
#desc: tasks screen
#status: FINISHED 0.4.0.0
#*/
<div class="topMenu">
<<set $overrideEvents=true>>
<<set $roomchange = false>>
/% advancing 0 re-checks tasks %/
<<set $now = setup.advanceDate($player, $now, 'seconds', 0)>>
[[Inventory|goInv]] |
<<if setup.checkItemInInventory("smartphone")>>
<<if $currentcall>>
@@.link_locked;Phone@@ |
<<else>>
[[Phone|goPho]] |
<</if>>
<</if>>
[[Profiles|goProfiles]] |
[[Stats|goSta]] |
<<link "Achievements">><<set $options.displayAchievName = false>><<=Engine.play("achievementsPage", true)>><</link>> |
[[Options|goOpt]]
@@.textRightSide;Tasks [[[back|$player.plocation]]]@@<br>
<hr>
</div>
<<printTasks $player $now>>/*#
#desc: phone menu
#status: FINISHED 0.4.0.0
#*/
<<set $overrideEvents=true>>
<<set $roomchange = false>>
<div class="topMenu">
[[Inventory|goInv]] |
[[Tasks|goTas]] |
[[Stats|goSta]] |
[[Profiles|goProfiles]] |
<<link "Achievements">><<set $options.displayAchievName = false>><<=Engine.play("achievementsPage", true)>><</link>> |
[[Options|goOpt]]
@@.textRightSide;Phone [[[back|$player.plocation]]]@@
<<initJquery>><br>
<hr>
</div><br>
<<if setup.checkItemTypeWorn("gloves") && setup.checkItemTypeTag('gloves', ['boundarms']) || setup.checkItemTypeWorn("bondagegear") && setup.checkItemTypeTag('bondagegear', ['boundarms'])>>
With your arms restrained, you are unable to use your phone.
<<elseif $player.plocation == "room_office_sissy_secretary" && !setup.hasFreeTime($now, $player, $currentTasks, 600)>>
<<printThought "Hmm, work starts soon. Probably not a good idea to get stuck on the phone.">>
<<elseif setup.inPassageTag(passage(),"nocall")>>
Your phone does not seem to be able to find a signal.
<<else>>
<<if $currentcall>>
You are already calling someone. Finish your current conversation first!
<<else>>
You have the following numbers stored on your phone: <br>
<<set $scene.beforePhoneCallLocation = $player.plocation>>
<<printPhone $phoneList>>
<<if $currentTasks.hasOwnProperty("ai_robot_body_mimic_manager_task") && !$currentTasks.ai_robot_body_mimic_manager_task.finished || $currentTasks.hasOwnProperty("ai_robot_body_weekend_meeting") && $currentTasks.ai_robot_body_weekend_meeting.condition == "Failed">>
[<<moveTo "event_ai_mission_robot_body_phone" 'Take a selfie and send it to the janitor, <<=setup.getNpcName("npc_janitor","first")>>.' 120 "<<set $currentcall = true>>">>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty("admin_barkeeper_matchmaker_1") && $currentTasks.admin_barkeeper_matchmaker_1.finished || $currentTasks.hasOwnProperty('admin_barkeeper_matchmaker_2') && !$currentTasks.admin_barkeeper_matchmaker_2.finished>>
<<if $npc_admin.flags.adminSch && $npc_admin.flags.barSch>>
[@@.link_locked;You already have <<=setup.getNpcName("npc_barkeeper","first")>> and <<=setup.getNpcName("npc_admin","first")>> both scheduled for effectively a blind date with one another.@@]
<<elseif $npc_admin.flags.barSch>>
[@@.link_locked;You already have <<=setup.getNpcName("npc_barkeeper","first")>> scheduled for a date, now to get <<=setup.getNpcName("npc_admin","first")>> on board.@@]
<<else>>
[<<moveTo "event_call_barkeeper_admin_1" 'Message <<=setup.getNpcName("npc_barkeeper","first")>> and setup a date to try to get her and <<=setup.getNpcName("npc_admin","first")>> together.' 120>>]<br>
<</if>>
<</if>>
<<set $player.currentThought = "">>
<<if setup.getItemsInInventoryByFilter('tag', ['business_card']).length > 0>>
<br>
<<hint $options "Use contact cards to copy info into your phone.">>
<</if>>
<</if>>
<</if>>/*#
#desc: in-game options
#status: FINISHED 0.4.0.0
#ignore_spell: mooving, cuck
#*/
<<set $overrideEvents=true>>
<<set $roomchange = false>>
<div class="topMenu">
<<checkOptions $options>>
Options
@@.textRightSide;[<<link "return">><<checkOptions $options>><<=Engine.play($player.plocation, false)>><</link>>]@@<br>
<hr>
</div><br>
<label><<createCheckBox $options.tutorial "$options.tutorial">> Show Hints</label><br>
<label><<createCheckBox $options.keyBoardShortcuts "$options.keyBoardShortcuts">> Keyboard Shortcuts</label><br>
<label><<createCheckBox $options.sound "$options.sound">> Sound</label><br>
<label>Select Font: <<createFontChoice>></label><br>
<label><<createCheckBox $options.showxp "$options.showxp">> Show Experience Points</label><br>
<label><<createCheckBox $options.showcapxp "$options.showcapxp">> Show Experience at Cap</label><br>
<label><<createCheckBox $options.slowPopups "$options.slowPopups">> Slow Pop-ups</label><br>
<label><<createCheckBox $options.showTooltips "$options.showTooltips">> Show Inventory Item Name Popups</label> <<hint $options "Only applies to old inventory.">><br>
<<set _inventory_variants = {"Old Inventory":"1.0", "Inventory 2.0": "2.0", "Text Inventory":"text"}>>
<label>Inventory Version <<listbox "$options.basicInventory" autoselect>><<optionsfrom _inventory_variants>><</listbox>></label><br>
<<set _icons_variants = {"100%":"1.0", "75%": "0.75", "50%":"0.5"}>>
<label>Icon Size <<listbox "$options.basicIconsize" autoselect>><<optionsfrom _icons_variants>><</listbox>></label><br>
<label><<createCheckBox $options.militaryTime "$options.militaryTime">> 24 hour clock</label><br>
<label><<createCheckBox $options.disableSynonyms "$options.disableSynonyms">> Disable genital, etc. synonyms</label><br>
<label><<createCheckBox $options.epilepsy "$options.epilepsy">> Epilepsy Mode (disables flashing videos)</label><br>
<label><<createCheckBox $options.ezchange "$options.ezchange">> Easy Changing (scenes with clothing requirements can be changed with a click rather than inventory)</label><br>
<label><<createCheckBox $options.invNoHist "$options.invNoHist">> Simplified Inventory History (disable to save one item in history each time you make a change in inventory)</label><br>
<label><<createCheckBox $options.isMobile "$options.isMobile">> Mobile Compatibility (enable for mobile compatibility version of certain passages, <<if setup.isMobile()>>auto-detected you are playing on mobile<<else>>auto-detected you are not playing on mobile<</if>>)</label><br>
<label>Progression Speed: <br>
<<createRadioButton $options.progSpeed "$options.progSpeed" true>></label> <<hint $options "Will force progression events at higher speed if randomness does not smile on you.">><br>
<label>Stacked Images: <<createRadioButton $options.stackedImage "$options.stackedImage" true>></label> <<hint $options "Disabling stacked images may help performance on some phones.">><br>
<br>
<label>Light-skin Avatar: <<radiobutton "$player.skintone" "light" autocheck>></label>
<label>Dark-skin Avatar: <<radiobutton "$player.skintone" "dark" autocheck>></label><br>
<br>
Cheats:<br>
<label><<createCheckBox $options.impatient "$options.impatient">> Impatient Mode (removes delay from all "timed" passages)</label><br>
<label>Story Mode XP Multiplier: <<createRadioButton $options.xpBoost "$options.xpBoost" true>></label><br>
<label><<createCheckBox $debug "$debug">> Enable Debug Menu </label><br>
<<if $player.sec_style.submission.sissyomatic != "" || setup.getChastityLevel() == 5>>
<<if setup.inPassageTag($player.plocation,"home")>>
<<set _revertLink = "Revert 9001 chastity.">>
[[_revertLink|option_revert_9001]] <<hint $options "This will switch to an earlier chastity device + revert permanent key control. Note: will lose all associated achievements + reset events.">><br>
<<else>>
[@@.link_locked;Revert 9001 chastity device.@@] <<hint $options "You must be in your flat to use this feature.">><br>
<</if>>
<</if>>
<<if $player.sec_style.submission.permanent_key != "">>
<<if setup.inPassageTag($player.plocation,"home")>>
<<set _revertLink = "Revert giving up your key permanently.">>
[[_revertLink|option_revert_9001]] <<hint $options "This will revert permanent key control. Note: will lose all associated achievements + reset events, and revert 9001 device if you are in such.">><br>
<<else>>
[@@.link_locked;Revert giving up permanent control of your chastity key.@@] <<hint $options "You must be in your flat to use this feature.">><br>
<</if>>
<</if>>
<br>
Zoom: <<createRadioButton $options.zoom "$options.zoom" true>><br>
History: (reducing decreases memory requirements/can speed up game)<br>
<<createRadioButton $options.history "$options.history" false>><br>
Autosave:<br>
<label><<radiobutton "$options.autosave" 'none' autocheck>> Disable Autosaves (the game will never save to the autosave slot)</label><br>
<label><<radiobutton "$options.autosave" 'daily' autocheck>> Daily Autosave (every morning you wake up at home)</label><br>
<label><<radiobutton "$options.autosave" 'weekly' autocheck>> Weekly Autosave (before your weekly performance review)</label><br>
<br>
[["General information about playing the game."|event_initial_hints_3]]<br>
<br>
<<set _showAll=true>>
Version <<getVersion>> [<<link "Changelog">><<openDialog "Changelog" "newVersionDialog">><</link>>]<br>
<br>
[<<link "Serialise Save">><<=Engine.play("r_debugExport", true)>><</link>>] [<<link "Deserialise Save">><<debugImport>><</link>>] <<hint $options "Mobile compatibility mode: use these to serialise/deserialise the save as a raw string.">><br>
<br>
[<<link "Adjust Fetish Flags">><<=Engine.play("fetish_flag_adjust_options", true)>><</link>>]<br>
[<<link "Credits">><<=Engine.play("game_credits_options", true)>><</link>>]<br>
[<<link "Achievements">><<=Engine.play("achievementsPage", true)>><</link>>]<br>
[<<link "Change NPC Settings">><<=Engine.play("nameChange_options", true)>><</link>>]<br>
<br>
Joke Options:
<label><<createCheckBox $options.cuckMode "$options.cuckMode">> Cuck Mode (renames plant and enables special Cuck scenes)</label><br>
<label><<createCheckBox $options.prawnMode "$options.prawnMode">> Prawn Mode (enables joke images for all NPCs)</label><br>
[<<link "Change Individual NPC Visuals">><<=Engine.play("joke_visual_options", true)>><</link>>]<br>
<br>
[<<link "Save Settings">><<checkOptions $options>><<=Engine.play($player.plocation, true)>><</link>>]<br>
<br>
Contact/Help:<br>
<div align="middle"><a target="_blank" href="https://discord.gg/XShMmqr">Secretary Discord Server</a></div>
<div align="middle"><a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents">Secretary Wiki</a></div>
<div align="middle"><a target="_blank" href="https://twitter.com/SecretaryGame">Secretary Twitter</a></div>
<div align="middle"><a target="_blank" href="https://www.reddit.com/r/secretarygame/">Secretary Reddit</a></div><<if $player.sec_style.submission.sissyomatic != "">>
<<set $player.sec_style.submission.sissyomatic = "">>
<<set _cage = setup.getItemFromType("cage")>>
<<removeItem _cage true>>
<<deleteItem _cage>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<set _newcage = "chastity_belt_adv_ultra">>
<<elseif $player.body_ref.vagina || $player.flags.chastity_style == "belt">>
<<set _newcage = "chastity_belt_adv">>
<<else>>
<<set _newcage = "c_cage_advanced">>
<</if>>
<<set $npc_manager.flags.took_adv_key = true>>
<<addItem _newcage>>
<<wearItem _newcage true>>
<<manipulateItem _newcage "lock" true>>
<<set _keyId = setup.getItemObj(_newcage).lockable[1]>>
<<if setup.checkItemOwned(_keyId)>>
<<deleteItem _keyId>>
<</if>>
<<removeNpcThemeId 'npc_manager' 'chastity_general' 'theme_manager_work_sissyomatic_change'>>
<<removeNpcThemeId 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_25'>>
<<include "setLastSeenCage">>
<</if>>
<<if $player.sec_style.submission.permanent_key != "">>
<<set $player.sec_style.submission.permanent_key = "">>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_11.5')>>
<<if _themeId != -1>>
<<set _x = $npc_psychiatrist.themes.manager.splice(_themeId,1)>>
<</if>>
<</if>>
<<if setup.checkItemOwned("sissyomatic")>>
<<deleteItem "sissyomatic">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_med")>>
<<deleteItem "sissyomatic_med">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_jumbo")>>
<<deleteItem "sissyomatic_jumbo">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_flat")>>
<<deleteItem "sissyomatic_flat">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_flat_med")>>
<<deleteItem "sissyomatic_flat_med">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_flat_jumbo")>>
<<deleteItem "sissyomatic_flat_jumbo">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_belt")>>
<<deleteItem "sissyomatic_belt">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_belt_med")>>
<<deleteItem "sissyomatic_belt_med">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_belt_jumbo")>>
<<deleteItem "sissyomatic_belt_jumbo">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_fem")>>
<<deleteItem "sissyomatic_fem">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_fem_med")>>
<<deleteItem "sissyomatic_fem_med">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_fem_jumbo")>>
<<deleteItem "sissyomatic_fem_jumbo">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_ultra")>>
<<deleteItem "sissyomatic_ultra">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_ultra_med")>>
<<deleteItem "sissyomatic_ultra_med">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_ultra_jumbo")>>
<<deleteItem "sissyomatic_ultra_jumbo">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_ultra_flat")>>
<<deleteItem "sissyomatic_ultra_flat">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_ultra_flat_med")>>
<<deleteItem "sissyomatic_ultra_flat_med">>
<</if>>
<<if setup.checkItemOwned("sissyomatic_ultra_flat_jumbo")>>
<<deleteItem "sissyomatic_ultra_flat_jumbo">>
<</if>>
<<if $currentTasks.hasOwnProperty("task_sissyomatic_steal") && !$currentTasks.task_sissyomatic_steal.finished && setup.checkItemOwned("sissyomatic_plans")>>
<<deleteTask 'task_sissyomatic_steal'>>
<</if>>
<<goto $player.plocation>>/*#
#desc: take an item pop-up
#status: FINISHED 0.4.0.0
#*/
You pick up <<=$scene.curItemName>>.
@@.textRightSide;<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<<goto $player.plocation>>
<</button>>@@
<<if !Dialog.isOpen()>>
<<goto $player.plocation>>
<</if>>/*#
#desc: item description
#status: FINISHED 0.4.0.0
#*/
<<printItemDesc $scene.curItem>>
<br>
[<<link "back">><<=Engine.play($scene.beforeDetail, true)>><</link>>]/*#
#desc: tattoo description
#status: FINISHED 0.7.8.0
#*/
<<printTattooDesc $scene.curTattooSlot $scene.curTattooId>>
<br>
[<<link "back">><<=Engine.play($player.plocation, true)>><</link>>]<<set $scene.fromDia = "fem_change_options">>
<div class="topMenu">
Character Gender Menu
<hr>
</div>
(Note: Characters changed to women may use generic art.)<br>
<br>
<<if $options.fem_all_women>>
[@@.link_locked;All sexable men have been changed to women.@@]
<<else>>
<<link 'Change all sexable men to women (that have "tools").'>><<femChangeFirstAll true>><<=Engine.play("fem_change_options", true)>><</link>> <<hint $options "Will affect all characters listed on this page including insignificant or unnamed ones.">>
<</if>>
<br>
<<if $options.fem_all_men>>
[@@.link_locked;All sexable men are currently men.@@]
<<else>>
<<link "Turn all characters that can be men into men.">><<femChangeFirstAll false>><<=Engine.play("fem_change_options", true)>><</link>> <<hint $options "Will affect all characters listed on this page including insignificant or unnamed ones.">>
<</if>>
<br><br>
<<if $options.fem>>
[@@.link_locked;Sexable insignificant or unnamed men have been changed to women.@@]<br>
<<link 'Change insignificant characters that can be men into men.'>><<femChangeFirstAll>><<=Engine.play("fem_change_options", true)>><</link>>
<<else>>
<<link 'Change insignificant characters that are men to women (that have "tools").'>><<femChangeFirstAll>><<=Engine.play("fem_change_options", true)>><</link>><br>
[@@.link_locked;Sexable insignificant or unnamed men are currently men.@@]
<</if>>
<br><br>
Swole <<=$npc_swolebro.Bro + "s">>:
<br>
<<if $options.isMobile>>
<<link "Change Swole <<=$npc_swolebro.Bro + 's'>> Nickname">><<=Engine.play("mobile_selectSwoleBroNickname", true)>><</link>>
<<else>>
<<link "Change Swole <<=$npc_swolebro.Bro + 's'>> Nickname">><<openDialog "Enter their new nickname:" "dialog_selectSwoleBroNickname">><</link>>
<</if>>
<br>
(<<link "<<Men npc_swolebro>>">><<femChangeFirst "npc_swolebro">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_swolebro', 'full')>> and the Swole <<=$npc_swolebro.Bro + "s">>
<br><br>
Individual Characters:<br>
(<<link "<<Man npc_admin>>">><<femChangeFirst "npc_admin">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_admin', 'full')>>, Your Old Friend
<br>
(<<link "<<Man npc_yogateacher>>">><<femChangeFirst "npc_yogateacher">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_yogateacher', 'full')>>, Yoga Teacher Dating your Ex
<br>
(<<link "<<Man npc_landlord>>">><<femChangeFirst "npc_landlord">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_landlord', 'full')>>, Your <<if $npc_landlord.fem>>Landlady<<else>>Landlord<</if>>
<br>
(<<link "<<Man npc_boss>>">><<femChangeFirst "npc_boss">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_boss', 'full')>>, The Big Boss
<br>
(<<link "<<Man npc_cook>>">><<femChangeFirst "npc_cook">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_cook', 'full')>>, Cook at the Work Cafeteria
<br>
(<<link "<<Man npc_sexstore_clerk>>">><<femChangeFirst "npc_sexstore_clerk">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_sexstore_clerk', 'full')>>, The Clerk at the Mall Sex Shop
<br>
(<<link "<<Man npc_work_doctor>>">><<femChangeFirst "npc_work_doctor">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_work_doctor', 'full')>>, Head of R&D at Work
<br>
(<<link "<<Man npc_rpg_dude>>">><<femChangeFirst "npc_rpg_dude">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_rpg_dude', 'full')>>, Metal <<if $npc_rpg_dude.fem>>Girl<<else>>Dude<</if>> in the RPG Campaign
<br>
(<<link "<<Man npc_nintendolls>>">><<femChangeFirst "npc_nintendolls">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_nintendolls', 'full')>>, President of Nintendolls
<br>
(<<link "<<Man npc_retention>>">><<femChangeFirst "npc_retention">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_retention', 'full')>>, Manager of Employee Retention
<br>
(<<link "<<Man npc_priest>>">><<femChangeFirst "npc_priest">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_priest', 'full')>>, A <<Priest npc_priest>> at the Church
<br>
(<<link "<<Man npc_rival>>">><<femChangeFirst "npc_rival">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_rival', 'full')>>, Rival of your Manager
<br>
(<<link "<<Man npc_sex_club>>">><<femChangeFirst "npc_sex_club">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_sex_club', 'full')>>, Proprietor of the fetish club <<printShopName 'sex_club'>>
<br>
(<<link "<<Man npc_butler>>">><<femChangeFirst "npc_butler">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_butler', 'full')>>, Owner of the Maid Cafe
<br>
(<<link "<<Man npc_barber>>">><<femChangeFirst "npc_barber">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_barber', 'full')>>, Barber in the Mall
<br>
(<<link "<<if $npc_primrose.fem>>Feminine Pronouns<<else>>Masculine Pronouns<</if>>">><<femChangeFirst "npc_primrose">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_primrose', 'full')>>, Enthusiastically Brainwashed Scientist
<br>
(<<link "<<Man npc_janitor>>">><<femChangeFirst "npc_janitor">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_janitor', 'full')>>, Company Janitor
<br>
(<<link "<<if $npc_chuck.fem>>Feminine Pronouns<<else>>Masculine Pronouns<</if>>">><<femChangeFirst "npc_chuck">><<=Engine.play("fem_change_options", true)>><</link>>)
<<=setup.getNpcName('npc_chuck', 'suffix')>>, Your Pet Plant
<br><br>
<<if $startgame>>
[<<link "Save Settings">><<=Engine.play($player.plocation,false)>><</link>>]<br>
<<else>>
[<<link "Save Settings">><<=Engine.play("choose_name",false)>><</link>>]<br>
<</if>>/*#
#desc: dialog box for choosing nickname the swole bros will use with you
#status: FINISHED 0.8.6.0
#*/
<center>
<<textbox "$scene.swolebroreplacement" "Bro" autofocus>>
</center>
<br>
<<set $scene.brochange = true>>
@@.textRightSide;
<<button "Confirm">>
<<=Engine.play($scene.fromDia, true)>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: mobile passage for choosing nickname the swole bros will use with you
#status: FINISHED 0.8.6.0
#*/
<center>
<<textbox "$scene.swolebroreplacement" "" autofocus>><br>
<br>
<<set $scene.brochange = true>>
[<<link "Confirm Swole <<=$npc_swolebro.Bro + 's'>> Nickname.">><<=Engine.play($scene.fromDia, true)>><</link>>]<br>
</center><div class="topMenu">
Fetish Flag Configuration
@@.textRightSide;
[<<link "back">><<checkFetishFlags>><<=Engine.play("goOpt", true)>><</link>>]@@<br>
<hr>
</div><br>
<<printAssessmentSummary>>
<br><br>
<<if $npc_bodyshop_nurse.flags.assessment.style != "">>
Genitals:<br>
<<bodyShopAssess "Small, <<if $fetish.sissy>>sissy<<else>>feminine<</if>> penis" "genitals" "tiny">>
<<bodyShopAssess "Normal penis" "genitals" 'penis'>>
<<bodyShopAssess "Large penis" "genitals" 'giant_cock'>>
<<bodyShopAssess "Orchiectomy" "genitals" 'noballs'>>
<<bodyShopAssess "Vagina" "genitals" 'cunt'>>
<<bodyShopAssess "Penis and vagina" "genitals" 'all'>>
<br>
Pregnancy? (only affects epilogue if you have a vagina)<br>
<<bodyShopAssess "Disable" "pregnant" 'no'>>
<<bodyShopAssess "Enable" "pregnant" 'yes'>>
<br>
Cum: (not applicable if you do not have a penis)<br>
<<bodyShopAssess "Cease production" "cum" 0>>
<<bodyShopAssess "Normal production" "cum" 1>>
<<bodyShopAssess "Copious production" "cum" 2>>
<br>
Breasts:<br>
<<bodyShopAssess "Flat chest" "breasts" 'none'>>
<<bodyShopAssess "Normal breasts" "breasts" 'normal'>>
<<bodyShopAssess "Massive breasts" "breasts" 'huge'>>
<br>
Conversion style:<br>
<<bodyShopAssess "Voluntary" "style" 'neutral'>>
<<bodyShopAssess "Extra encouragement" "style" 'encourage'>>
<<bodyShopAssess "Force conversion" "style" 'force'>>
<<bodyShopAssess "Hard forced conversion" "style" 'hard_force'>>
<</if>>
<br>
[<<link "Save">><<checkFetishFlags>><<goto "goOpt">><</link>>]<br><<set $scene.fromDia = "nameChange_options">>
<<printNameAllChange>>
<<if $scene.brochange>>
<<set $scene.noneName = $scene.swolebroreplacement == "">>
<<if !$scene.noneName>>
<<set $npc_swolebro.Bro = setup.sanitizeString($scene.swolebroreplacement)>>
<<set $npc_swolebro.bro = $npc_swolebro.Bro.toLowerCase()>>
<</if>>
<</if>>
<br>
(Note: Characters changed to women may use generic art.)<br>
<br>
<<if $options.fem_all_women>>
[@@.link_locked;All sexable men have been changed to women.@@]
<<else>>
<<link 'Change all sexable men to women (that have "tools").'>><<femChangeFirstAll true>><<=Engine.play("nameChange_options", true)>><</link>> <<hint $options "Will affect all characters listed on this page including insignificant or unnamed ones.">>
<</if>>
<br>
<<if $options.fem_all_men>>
[@@.link_locked;All sexable men are currently men.@@]
<<else>>
<<link "Turn all characters that can be men into men.">><<femChangeFirstAll false>><<=Engine.play("nameChange_options", true)>><</link>> <<hint $options "Will affect all characters listed on this page including insignificant or unnamed ones.">>
<</if>>
<br><br>
<<if $options.fem>>
[@@.link_locked;Sexable insignificant or unnamed men have been changed to women.@@]<br>
<<link 'Change insignificant characters that can be men into men.'>><<femChangeFirstAll>><<=Engine.play("nameChange_options", true)>><</link>>
<<else>>
<<link 'Change insignificant characters that are men to women (that have "tools").'>><<femChangeFirstAll>><<=Engine.play("nameChange_options", true)>><</link>><br>
[@@.link_locked;Sexable insignificant or unnamed men are currently men.@@]
<</if>>
<br><br>
Swole <<=$npc_swolebro.Bro + "s">>:
<br>
<<if $options.isMobile>>
<<link "Change Swole <<=$npc_swolebro.Bro + 's'>> Nickname">><<=Engine.play("mobile_selectSwoleBroNickname", true)>><</link>>
<<else>>
<<link "Change Swole <<=$npc_swolebro.Bro + 's'>> Nickname">><<openDialog "Enter their new nickname:" "dialog_selectSwoleBroNickname">><</link>>
<</if>>
<br>
<<if $player.flags.porn.genre.vag || $player.flags.porn.genre.oral || $player.flags.porn.genre.anal>>
Your Porn Name: <<textbox "$player.flags.porn.pornname" $player.flags.porn.pornname>><br>
<</if>>
<br>
<<timed 0s>><<run setup.attachColorEventListeners()>><</timed>>
[<<link "Reset All Colours">> <<resetColorChange>> <</link>>]<br>
[<<link "Save and Return">><<sanitizeNames>><<=Engine.play($player.plocation,false)>><</link>>]<br>/*#
#desc: toggle joke visuals
#status: RELEASED 0.9.0.3
#ignore_spell: moooving, cuck
#*/
<div class="topMenu">
Character Joke Visuals Menu
<hr>
</div>
<br>
<<if $options.prawnMode>>
[@@.link_locked;All characters are using joke art.@@]<br>
<<else>>
<<link "Enable joke art for all characters.">><<set $options.prawnMode=true>><<checkOptions $options>><</link>><br>
<label><<createCheckBox $npc_manager.joke "$npc_manager.joke">> Joke art for <<=setup.getNpcName('npc_manager', 'full')>>, Your Manager</label><br>
<label><<createCheckBox $npc_psychiatrist.joke "$npc_psychiatrist.joke">> Joke art for <<=setup.getNpcName('npc_psychiatrist', 'full')>>, Your Psychiatrist</label><br>
<label><<createCheckBox $npc_exgirlfriend.joke "$npc_exgirlfriend.joke">> Joke art for <<=setup.getNpcName('npc_exgirlfriend', 'full')>>, Your Ex</label><br>
<label><<createCheckBox $npc_ai.joke "$npc_ai.joke">> Joke art for <<=setup.getNpcName('npc_ai', 'first')>>, A Mysterious AI</label><br>
<label><<createCheckBox $npc_barista.joke "$npc_barista.joke">> Joke art for <<=setup.getNpcName('npc_barista', 'full')>>, A Bimbo Barista</label><br>
<label><<createCheckBox $npc_admin.joke "$npc_admin.joke">> Joke art for <<=setup.getNpcName('npc_admin', 'full')>>, Your Old Friend</label><br>
<label><<createCheckBox $npc_yogateacher.joke "$npc_yogateacher.joke">> Joke art for <<=setup.getNpcName('npc_yogateacher', 'full')>>, Yoga Teacher Dating your Ex</label><br>
<label><<createCheckBox $npc_landlord.joke "$npc_landlord.joke">> Joke art for <<=setup.getNpcName('npc_landlord', 'full')>>, Your <<if $npc_landlord.fem>>Landlady<<else>>Landlord<</if>></label><br>
<label><<createCheckBox $npc_boss.joke "$npc_boss.joke">> Joke art for <<=setup.getNpcName('npc_boss', 'full')>>, <<=setup.getNpcName('npc_boss', 'full')>>, The Big Boss</label><br>
<label><<createCheckBox $npc_cook.joke "$npc_cook.joke">> Joke art for <<=setup.getNpcName('npc_cook', 'full')>>, Cook at the Work Cafeteria</label><br>
<label><<createCheckBox $npc_sexstore_clerk.joke "$npc_sexstore_clerk.joke">> Joke art for <<=setup.getNpcName('npc_sexstore_clerk', 'full')>>, The Clerk at the Mall Sex Shop</label><br>
<label><<createCheckBox $npc_work_doctor.joke "$npc_work_doctor.joke">> Joke art for <<=setup.getNpcName('npc_work_doctor', 'full')>>, Head of R&D at Work</label><br>
<label><<createCheckBox $npc_rpg_dude.joke "$npc_rpg_dude.joke">> Joke art for <<=setup.getNpcName('npc_rpg_dude', 'full')>>, Metal <<if $npc_rpg_dude.fem>>Girl<<else>>Dude<</if>> in the RPG Campaign</label><br>
<label><<createCheckBox $npc_rpg_warlock.joke "$npc_rpg_warlock.joke">> Joke art for <<=setup.getNpcName('npc_rpg_warlock', 'full')>>, Flirty Girl in the RPG Campaign</label><br>
<label><<createCheckBox $npc_nintendolls.joke "$npc_nintendolls.joke">> Joke art for <<=setup.getNpcName('npc_nintendolls', 'full')>>, President of Nintendolls</label><br>
<label><<createCheckBox $npc_retention.joke "$npc_retention.joke">> Joke art for <<=setup.getNpcName('npc_retention', 'full')>>, HR Manager of Employee Retention</label><br>
<label><<createCheckBox $npc_harassment.joke "$npc_harassment.joke">> Joke art for <<=setup.getNpcName('npc_harassment', 'full')>>, HR Manager of Employee Harassment</label><br>
<label><<createCheckBox $npc_harassment_assist.joke "$npc_harassment_assist.joke">> Joke art for <<=setup.getNpcName('npc_harassment_assist', 'full')>>, Assistant to HR Manager of Employee Harassment</label><br>
<label><<createCheckBox $npc_discipline.joke "$npc_discipline.joke">> Joke art for <<=setup.getNpcName('npc_discipline', 'full')>>, HR Manager of Employee Discipline</label><br>
<label><<createCheckBox $npc_development.joke "$npc_development.joke">> Joke art for <<=setup.getNpcName('npc_development', 'full')>>, HR Manager of Employee Development</label><br>
<label><<createCheckBox $npc_pr_sissy.joke "$npc_pr_sissy.joke">> Joke art for <<=setup.getNpcName('npc_pr_sissy', 'full')>>, A Coworker in the PR department</label><br>
<label><<createCheckBox $npc_secretary.joke "$npc_secretary.joke">> Joke art for <<=setup.getNpcName('npc_secretary', 'full')>>, Your Secretary Predecessor</label><br>
<label><<createCheckBox $npc_sexdoll.joke "$npc_sexdoll.joke">> Joke art for <<=setup.getNpcName('npc_sexdoll', 'full')>>, Coworker Undergoing Changes</label><br>
<label><<createCheckBox $npc_hucow.joke "$npc_hucow.joke">> Joke art for <<=setup.getNpcName('npc_hucow', 'full')>>, Coworker Who is Moooving Up</label><br>
<label><<createCheckBox $npc_futa.joke "$npc_futa.joke">> Joke art for <<=setup.getNpcName('npc_futa', 'full')>>, Coworker Gaining... Confidence</label><br>
<label><<createCheckBox $npc_sissy_secretary.joke "$npc_sissy_secretary.joke">> Joke art for <<=setup.getNpcName('npc_sissy_secretary', 'full')>>, A Fellow Secretary</label><br>
<label><<createCheckBox $npc_priest.joke "$npc_priest.joke">> Joke art for <<=setup.getNpcName('npc_priest', 'full')>>, A <<Priest npc_priest>> at the Church</label><br>
<label><<createCheckBox $npc_rival.joke "$npc_rival.joke">> Joke art for <<=setup.getNpcName('npc_rival', 'full')>>, Rival of your Manager</label><br>
<label><<createCheckBox $npc_barkeeper.joke "$npc_barkeeper.joke">> Joke art for <<=setup.getNpcName('npc_barkeeper', 'full')>>, Owner/Bartender at the Usual Place</label><br>
<label><<createCheckBox $npc_shopkeeper.joke "$npc_shopkeeper.joke">> Joke art for <<=setup.getNpcName('npc_shopkeeper', 'full')>>, Owner of the Lingerie Store in the Mall</label><br>
<label><<createCheckBox $npc_shoestore_manager.joke "$npc_shoestore_manager.joke">> Joke art for <<=setup.getNpcName('npc_shoestore_manager', 'full')>>, Owner/Operator of the Mall Shoe Store</label><br>
<label><<createCheckBox $npc_shoestore_assistant.joke "$npc_shoestore_assistant.joke">> Joke art for <<=setup.getNpcName('npc_shoestore_assistant', 'full')>>, Mall Shoe Store Assistant</label><br>
<label><<createCheckBox $npc_sex_club.joke "$npc_sex_club.joke">> Joke art for <<=setup.getNpcName('npc_sex_club', 'full')>>, Proprietor of the fetish club <<printShopName 'sex_club'>></label><br>
<label><<createCheckBox $npc_butler.joke "$npc_butler.joke">> Joke art for <<=setup.getNpcName('npc_butler', 'full')>>, Owner of the Maid Cafe</label><br>
<label><<createCheckBox $npc_barber.joke "$npc_barber.joke">> Joke art for <<=setup.getNpcName('npc_barber', 'full')>>, Barber in the Mall</label><br>
<label><<createCheckBox $npc_primrose.joke "$npc_primrose.joke">> Joke art for <<=setup.getNpcName('npc_primrose', 'full')>>, Enthusiastically Brainwashed Scientist</label><br>
<label><<createCheckBox $npc_janitor.joke "$npc_janitor.joke">> Joke art for <<=setup.getNpcName('npc_janitor', 'full')>>, Company Janitor</label><br>
<label><<createCheckBox $npc_prostitute.joke "$npc_prostitute.joke">> Joke art for <<=setup.getNpcName('npc_prostitute', 'full')>>, A Prostitute at the Usual Place</label><br>
<label><<createCheckBox $npc_waitress.joke "$npc_waitress.joke">> Joke art for <<=setup.getNpcName('npc_waitress', 'full')>>, Waitress at the Maid Cafe</label><br>
<label><<createCheckBox $npc_chuck.joke "$npc_chuck.joke">> Joke art for <<=setup.getNpcName('npc_chuck', 'suffix')>>, Your Pet Plant</label><br>
<label><<createCheckBox $npc_martial_arts.joke "$npc_martial_arts.joke">> Joke art for <<=setup.getNpcName('npc_martial_arts', 'full')>>, Gym Martial Arts Instructor</label><br>
<label><<createCheckBox $npc_swolebro.joke "$npc_swolebro.joke">> Joke art for <<=setup.getNpcName('npc_swolebro', 'full')>>, Friendly Gym <<if $npc_swolebro.fem>>Girl<<else>>Bro<</if>></label><br>
<label><<createCheckBox $npc_fit_bimbo.joke "$npc_fit_bimbo.joke">> Joke art for <<=setup.getNpcName('npc_fit_bimbo', 'full')>>, Fit Gym Bunny</label><br>
<</if>>
<br>
<<if $startgame>>
[<<link "Save Settings">><<checkOptions $options>><<=Engine.play($player.plocation,false)>><</link>>]<br>
<<else>>
[<<link "Save Settings">><<checkOptions $options>><<=Engine.play("choose_name",false)>><</link>>]<br>
<</if>>/*#
#desc: print thoughts you have at home
#status: FINISHED 0.4.0.0
#*/
<<set _txt = "">>
<<if setup.isWorkDay($now)>>
<<if getUTCHours($now) >= 7 and getUTCHours($now) < 8>>
<<set _txt = "I have to work today.">>
<<if getUTCMinutes($now) >= 45>>
<<set _txt += " If I leave right now, I still might make it to work on time.">>
<<elseif getUTCMinutes($now) >= 30>>
<<set _txt += " It's time to go to work.">>
<</if>>
<<elseif getUTCHours($now) >= 8 and getUTCHours($now) < 9>>
<<if !$player.work.sendhome>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<set _txt = "Better hurry and fix things so that I don't fail a second inspection in one day...">>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task") && setup.daysToDate($now,setup.getTaskDueDate('manager_morning_inspection_task')) == 0>>
<<set _txt = "Okay... I'm going to be late.">>
<</if>>
<</if>>
<</if>>
<<if _txt != "">>
<<set _x = setup.addThought("homeThought",1,_txt)>>
<</if>>
<</if>>
<<set _thoughts = setup.getThoughtList()>>
<<if _thoughts.length > 0>>
<<printThought _thoughts>><br>
<br>
<</if>>
<<set _x = setup.clearThoughtList()>>/*#
#desc: print current thought
#status: FINISHED 0.4.0.0
#*/
<<set _thoughts = setup.getThoughtList(true)>>
<<if _thoughts != "">>
<<printThought _thoughts>><br>
<br>
<<set _x = setup.clearThoughtList()>>
<</if>>/*#
#desc: work thoughts
#status: FINISHED 0.4.0.0
#*/
<<set _txt = "">>
<<if setup.calcErection()>>
<<if $player.timebased.horny >= 99>>
<<set _txt += "Damn it. I'm so horny I can hardly concentrate. ">>
<<else>>
<<set _txt += "It's getting hard to concentrate being this horny. ">>
<</if>>
<<if setup.getTotalValue('humiliation') >= 10>>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
<<set _txt += "Maybe I should give my <<getWordMyPenis>> a good spanking under the desk.">>
<<else>>
<<if $player.sec_style.submission.permanent_key != "">>
<<set _txt += "I turned over my key for a reason, I'm better and more focused locked up.">>
<<elseif $npc_manager.flags.trustplayerwithkey>>
<<set _txt += "Maybe I should unlock myself a bit and give my <<getWordMyPenis false>> a good spanking under the table.">>
<<else>>
<<set _txt += "I wish I could unlock myself and get some relief...">>
<</if>>
<</if>>
<<else>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
<<set _txt += "Maybe I should frig myself under the table?">>
<<else>>
<<set _txt += "Maybe I should finger myself under the table?">>
<</if>>
<<else>>
<<if $player.sec_style.submission.permanent_key != "">>
<<set _txt += "I turned over my key for a reason, I'm better and more focused locked up.">>
<<elseif $npc_manager.flags.trustplayerwithkey>>
<<set _txt += "Maybe I should unlock myself a bit and finger myself under the desk.">>
<<else>>
<<set _txt += "I wish I could unlock myself and get some relief...">>
<</if>>
<</if>>
<</if>>
<<elseif setup.getTotalValue('humiliation') >= 6>>
<<if $player.body_ref.penis>>
<<set _txt += "Maybe I should go to the toilet and jerk my <<getWordMyPenis false>> there.">>
<<else>>
<<set _txt += "Maybe I should go to the toilet and try to get some relief...">>
<</if>>
<<else>>
<<set _txt += "I should have masturbated at home.">>
<</if>>
<</if>>
<<if _txt != "">>
<<set _x = setup.addThought("homeThought",1,_txt)>>
<</if>>
<<set _thoughts = setup.getThoughtList()>>
<<if _thoughts != "">>
<<printThought _thoughts>><br>
<br>
<</if>>
<<set _x = setup.clearThoughtList()>><<debugClearEvents>>
<<set $roomchange = true>>
<<set $cheater_flag = true>>
<<set $daily = {}>>
<<set $warpinfo = { stage : 0, configGroup : {}, stage1 : {}, stage2 : {}, stage3 : {}, stage4 : {}, stage5 : {}, paybonus : 0 }>>
<<setScene true>>
[[Skip Prologue|configWarp][$warpinfo.stage=0;$cheaterStart=.5]] — Morning of first day as a secretary<br>
[[Start in stage 1|configWarp][$warpinfo.stage=1;$cheaterStart=1.5]] — At your first psychiatrist appointment<br>
[[Start in stage 2|configWarp][$warpinfo.stage=2;$cheaterStart=2]] — After you have been safely secured in chastity<br>
[[Start in stage 3|configWarp][$warpinfo.stage=3;$cheaterStart=3]] — After you finished your trial period and are a full-fledged <<if $fetish.sissy>>SISSI <</if>>Secretary<br>
[[Start late stage 3|configWarp][$warpinfo.stage=3.5;$cheaterStart=3.5]] — Established as a full-fledged <<if $fetish.sissy>>SISSI <</if>>Secretary<br>
[@@.link_locked;Start in stage 4.@@]
/%[[Start in stage 4|configWarp][$warpinfo.stage=4;$cheaterStart=4]]%/ — After corporate retreat (NYI)<br>
[@@.link_locked;Start late stage 4.@@]
/%[[Start in late stage 4|configWarp][$warpinfo.stage=4.5;$cheaterStart=4.5]]%/ — Hard at work on the upper floors (NYI)<br>
[@@.link_locked;Start in stage 5.@@]
/%[[Start in stage 5|configWarp][$warpinfo.stage=5;$cheaterStart=5]]%/ — At the start of the endgame (NYI)<br><<switch $warpinfo.stage>>
<<case 1 2 3 4 5>>
<<set $npc_manager.stage = $warpinfo.stage>>
<<if $npc_manager.stage > 1>>
<<set $npc_manager.stagevalues[1].promodate = $now>>
<</if>>
<<if $npc_manager.stage > 2>>
<<set $npc_manager.stagevalues[2].promodate = $now>>
<<set $player.work.secretaryRank = 0>>
<</if>>
<<if $npc_manager.stage > 3>>
<<set $npc_manager.stagevalues[3].promodate = $now>>
<</if>>
<<if $npc_manager.stage > 4>>
<<set $npc_manager.stagevalues[4].promodate = $now>>
<</if>>
<<case 0>>
<<set $npc_manager.stage = 1>>
<<case 3.5>>
<<set $npc_manager.stage = 3>>
<<set $npc_manager.stagevalues[1].promodate = $now>>
<<set $npc_manager.stagevalues[2].promodate = $now>>
<<set $player.work.secretaryRank = 0>>
<<case 4.5>>
<<set $player.work.secretaryRank = 0>>
<<set $npc_manager.stagevalues[3].promodate = $now>>
<<set $npc_manager.stage = 4>>
<<include "checkAdminTruth">>
<<include "checkTechnicianTruth">>
<<addWorkEvent 'volleyball_invite'>>
<<addWorkEvent 'training_first'>>
/%
TODO: checkSchoolReady
%/
<<default>>
ERROR: unhandled warp stage: <<=$warpinfo.stage>>
<</switch>>
<<include "addTypingEvent">>
[[Configure Stage Events|configStage]] <<if $warpinfo.configGroup.stage>>DONE!<</if>><br>
[[Configure Content Flags|contentConfigs]] <<if $warpinfo.configGroup.content>>DONE!<</if>><br>
[[Configure Secretary Style|configureFemStyle]] <<if $warpinfo.configGroup.femStyle>>DONE!<</if>><br>
<br>
[[Adjust starting stats|statConfig]] <<if $warpinfo.configGroup.stats>>DONE!<</if>><br>
<<if $warpinfo.stage > 0>>
[[Configure Work|configWork]] <<if $warpinfo.configGroup.work>>DONE!<</if>><br>
<</if>>
<<if $warpinfo.stage > 3>>
[[Configure Side Jobs|configSideJobs]] <<if $warpinfo.configGroup.sideJob>>DONE!<</if>><br>
<</if>>
[[Configure Admin Events|adminConfig]] <<if $warpinfo.configGroup.admin>>DONE!<</if>><br>
<<if $warpinfo.stage >= 2>>
[[Configure Barista Events|baristaConfig]] <<if $warpinfo.configGroup.barista>>DONE!<</if>><br>
<</if>>
[[Configure ExGirlfriend Events|exgfConfig]] <<if $warpinfo.configGroup.exgf>>DONE!<</if>><br>
[[Configure Technician Events|technicianConfig]] <<if $warpinfo.configGroup.technician>>DONE!<</if>><br>
<<if $npc_landlord.fem>>[[Configure Landlady Events|landlordConfig]]<<else>>[[Configure Landlord Events|landlordConfig]]<</if>> <<if $warpinfo.configGroup.landlord>>DONE!<</if>><br>
[[Configure Pet Plant Events|chuckConfig]] <<if $warpinfo.configGroup.chuck>>DONE!<</if>><br>
<<if $warpinfo.stage > 1>>
[[Configure Therapist Events|therapistConfig]] <<if $warpinfo.configGroup.therapist>>DONE!<</if>><br>
<</if>>
<<if $warpinfo.stage > 1>>
[[Configure AI Events|aiConfig]] <<if $warpinfo.configGroup.ai>>DONE!<</if>><br>
<</if>>
<<if $warpinfo.stage > 1>>
Configure Money:<br>
<label>In debt (-200): <<radiobutton "$player.money.total" -200>></label><br>
<label>Broke (0): <<radiobutton "$player.money.total" 0>></label><br>
<label>Walk-around Money (100): <<radiobutton "$player.money.total" 100 checked>></label><br>
<<if $warpinfo.stage > 2>>
<label>Savings (1000): <<radiobutton "$player.money.total" 1000>></label><br>
<</if>>
<<if $warpinfo.stage > 3>>
<label>Flush (10000): <<radiobutton "$player.money.total" 10000>></label><br>
<</if>>
<br>
<</if>>
Cruel Manager Mode:
<label>Disabled: <<radiobutton "$npc_manager.flags.cruel" 0>></label><br>
<label>Enabled (but can revert via gameplay): <<radiobutton "$npc_manager.flags.cruel" 1>></label><br>
<label>Irrevocably Enabled: <<radiobutton "$npc_manager.flags.cruel" 2>></label><br>
/%Cruel Therapist Mode:
<label>Disabled: <<radiobutton "$npc_psychiatrist.flags.cruel" 0>></label><br>
<label>Enabled (but can revert via gameplay): <<radiobutton "$npc_psychiatrist.flags.cruel" 1>></label><br>
<label>Irrevocably Enabled: <<radiobutton "$npc_psychiatrist.flags.cruel" 2>></label><br>%/
<br>
<label>Debug mode: <<checkbox "$debug" false true>></label><br>
<br>
<<if $warpinfo.configGroup.stage && $warpinfo.configGroup.content && $warpinfo.configGroup.femStyle>>
[[Start Game|startCheatMode]]
<<else>>
[@@.link_locked;At a minimum stage, secretary style and content configuration must be completed.@@]
<</if>><<set $warpinfo.configGroup.stage = true>>
<<include configStage0>><br><br>
<<if $warpinfo.stage >= 1>>
<<include configStage1>><br><br>
<</if>>
<<if $warpinfo.stage >= 2>>
<<include configStage2>><br><br>
<</if>>
<<if $warpinfo.stage >= 3>>
<<include configStage3>><br><br>
<</if>>
<<if $warpinfo.stage >= 3.5>>
<<include configStage35>><br><br>
<</if>>
<<if $warpinfo.stage >= 4>>
<<include configStage4>><br><br>
<</if>>
<<if $warpinfo.stage >= 45>>
<<include configStage45>><br><br>
<</if>>
<<if $warpinfo.stage >= 5>>
<<include configStage5>><br><br>
<</if>>
[[Complete Stage Configs|configWarp]]<<set $warpinfo.prologue = {}>>
<<set $warpinfo.stage0 = {}>>
Prologue flags:<br>
<label>Ignored manager first request: <<checkbox "$player.flags.manager_ignored_firstrequest" false true checked>></label><br>
Fired response: <br>
<label>Anything for another chance: <<radiobutton "$warpinfo.prologue.firedResponse" 'obedient' checked>></label><br>
<label>Admitted defeat: <<radiobutton "$warpinfo.prologue.firedResponse" 'defeat'>></label><br>
<label>Waited: <<radiobutton "$warpinfo.prologue.firedResponse" 'patient'>></label><br>
<br>
<label>Read contract before signing: <<checkbox "$warpinfo.prologue.readInitialOffer" false true checked>></label><br><<set $now = new Date(Date.UTC(2033, 5, 28, 6, 30, 0))>>
<<set $warpinfo.startPassage = "event_first_workday_morning_0">>
<<include Stage0SetFlags>>
<<include Stage0Tasks>>
<<set $now = new Date(Date.UTC(2033, 5, 29, 6, 30, 0))>>
<<include Stage0Themes>>
<<include Stage0Thresholds>>
<<include Stage0Items>>
<<set $player.timebased.stress = 50>><<set $npc_landlord.profile = true>>
<<set $player.flags.jobsecretary = true>>
<<set $npc_manager.profile = true>>
<<if $player.flags.manager_ignored_firstrequest>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<setThreshold 'bimbofication' 'stupid_defiance' 'intro_ignore_manager'>>
<<applyExperience 'bimbofication' 3 'insignificant' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_manager.workdiscipline -= 1>>
<</if>>
<<switch $warpinfo.prologue.firedResponse>>
<<case 'obedient'>>
<<setThreshold 'submission' 'submissive_secretary' 'intro'>>
<<case 'defeat'>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'humiliation' 3 'insignificant' $SEEN_FRIEND>>
<<case 'patient'>>
<<set $warpinfo.paybonus+=15>>
<</switch>>
<<if $warpinfo.prologue.readInitialOffer>>
<<setThreshold 'smart' 'contract_smart' 'try_to_read'>>
<</if>><<set _nextDate = setup.setNextDate($now, 3, 6, 30)>>
<<addEvent 'rent_first' _nextDate>>
<<include firstDaySecretaryTasks>>
<<include initializeWorkEvents>><<if $warpinfo.landlord && $warpinfo.landlord.flash>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_0'
0
'event_psychiatrist_session_landlord_1'
false
>>
<</if>>/% first punishment %/
<<applyExperience 'submission' 3 'almost' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<setThreshold 'bdsm' 'manager_upbringing' 'mandatory_measure'>>
<<applyExperience 'bdsm' 2 'insignificant' $SEEN_FRIEND>><<allWardrobeToItem>>
<<addItemWardrobe "makeup_basic">>
<<addItemWardrobe "black_box">>
<<removeItem "pyjama" true>>
<<deleteItem "boxershorts">>
<<deleteItem "socks">>
<<deleteItem "pyjama">>
<<addItem "shoes_black">>
<<addItem "fountain_pen">>
<<addItem "card_manager">>
<<addItem "smartphone">>
<<addEmail $computer
'Office of Civic Order'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_valkyrie_01_h'
'mail_valkyrie_01_t'
>>First Week Flags:<br>
<label>Asked about picture of predecessor? <<checkbox "$warpinfo.stage0.askPredecessor" false true checked>></label><br>
<label>Took pink pill first day? <<checkbox "$player.flags.manager.tookpinkpill" false true checked>></label><br>
/% start post-intro on friday psychiatrist visit %/<<set $warpinfo.startPassage = "event_psychiatrist_therapy_mux">>
<<include Stage1SetFlags>>
<<debugClearEvents>>
<<set $now = new Date(Date.UTC(2033, 6, 1, 13, 0, 0))>>
<<include Stage1Tasks>>
<<include Stage1Themes>>
<<include Stage1Thresholds>>
<<include Stage1Items>>
<<storeVisual $player $npc_exgirlfriend>>
<<set $player.timebased.stress = 50>><<set $npc_cook.profile = true>>
<<set $player.flags.firstremuneration=true>>
<<set $player.flags.firstWorkDay=true>>
<<set $player.work.qualifyingperiod=25>>
<<set $player.work.hoursperWeek = 39>>
<<set $player.work.hoursDone = 0>>
<<set $player.work.workPensum = 0>>
<<set $player.locations.psychiatrist = true>>
<<set $player.timebased.fatigue = 0>>
<<set $player.timebased.horny = 0>>
<<set $player.timebased.stress = 60>>
<<addHistory 'event_landlord_rent_first_2'>>
<<if $warpinfo.stage0.askPredecessor>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex')>>
<<set $player.flags.firstWorkDayDone = true>>
<<addSearch $computer "Look up the Secretary Elevation and eXpansion Act of 2021" "room_computer_secretary_act_1">>
<<set $npc_manager.flags.gotCoffee = true>><<set _x = setup.addManagerEndlessTask1($now, false, false, false)>>
<<include initializeWorkEvents>>
<<removeWorkEvent 'work_coffee'>><<if $player.flags.manager.tookpinkpill>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<set $player.flags.atesissypill = true>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
>>
<<else>>
<<addItem 'pink_pill'>>
<</if>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_work_advance'
1
'event_manager_theme_advance_1'
true
>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_work_buyout'
1
'theme_manager_buyout_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_2'
8
'event_psychiatrist_session_manager_sissy_pill_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_0'
3
'event_psychiatrist_session_barista_met_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_0'
1
'event_psychiatrist_session_money'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_2'
3
'event_psychiatrist_session_barista_candy_1'
false
>>
<<if $npc_manager.flags.cruel < 2>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_other_cruelty'
0
'theme_manager_other_cruelty_1'
true
>>
<</if>><<setThreshold "submission" "submissive_secretary" "first_punishment">>
<<switch $player.sec_style.clothing.unisex>>
<<case "strict">>
<<set $npc_manager.stagevalues[2].no_change = true>>
<<case "obedient">>
<<setThreshold 'feminization' 'good_girl' 'spilling_incident'>>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<<gainWillpower 1>>
<<case "forced">>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1'>>
<<case "money">>
<<setThreshold "feminization" "money" "spilling_incident">>
<<case "voluntary">>
<<set $player.willpower.bonus += 1>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'unisex_outside'>>
<</switch>>
<<if $player.sec_style.clothing.unisex != "">>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<</if>><<switch $player.sec_style.clothing.underwear>>
<<case "obedient">>
<<set $underwearSet = ["striped_bra_blue", "striped_panties_blue", "striped_stockings_blue"]>>
<<case "forced" "strict">>
<<set $underwearSet = ["sissy_panties_pink", "sissy_garter_pink", "sissy_bra_pink", "sissy_stockings_pink"]>>
<<case "money">>
<<set $underwearSet = ["fishnet_stockings_black", "lace_garter_black", "lace_thong_black", "lace_bra_black"]>>
<<case "voluntary">>
<<set $underwearSet = ["cotton_panties", "cotton_bra", "pantyhose_black"]>>
<</switch>><<addItem "unknown_candy">>
<<addItem "card_landlord">>
<<switch $player.sec_style.clothing.unisex>>
<<case "obedient">>
<<setThreshold 'feminization' 'good_girl' 'spilling_incident'>>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<<gainWillpower 1>>
<<case "forced" "strict">>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1'>>
<<case "money">>
<<setThreshold "feminization" "money" "spilling_incident">>
<<case "voluntary">>
<<set $player.willpower.bonus += 1>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'unisex_outside'>>
<</switch>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<switch $player.sec_style.clothing.unisex>>
<<case "obedient" "forced" "strict">>
<<addItem "shirt_female_office_teal">>
<<addItem "trousers_female_office_grey">>
<<addItem "flats_black">>
<<case "money">>
<<addCredits 100>>
<<addItem "shirt_female_office_teal">>
<<addItem "trousers_female_office_grey">>
<<addItem "flats_black">>
<<case "voluntary">>
<<addItem "shirt_female_office_white">>
<<addItem "trousers_female_office_white">>
<<addItem "flats_black">>
<</switch>>Stage 1 flags:<br>
<label>Resist Stage 1 ending dildo: <<checkbox "$warpinfo.stage1.dildoresist" false true checked>></label><br>
Stage 1 to 2 Transition Style:
<label>Enthusiast<<radiobutton "$npc_manager.flags.stage1Promo" 'enthusiast' checked>></label>
<label>Reward<<radiobutton "$npc_manager.flags.stage1Promo" 'reward'>></label>
<label>Punished<<radiobutton "$npc_manager.flags.stage1Promo" 'punish' checked>></label>
<label>Strict<<radiobutton "$npc_manager.flags.stage1Promo" 'strict'>></label><br>
Other:
Genitals:
<label>Penis<<radiobutton "$warpinfo.genitals" 'penis' checked>></label>
<label>Vagina<<radiobutton "$warpinfo.genitals" 'vagina'>></label>
<label>Both<<radiobutton "$warpinfo.genitals" 'both'>></label><br>/% set and then advance time because task macro is designed to set inspection for "tomorrow" %/
<<set $warpinfo.startPassage = "room_foyer">>
<<include Stage2SetFlags>>
<<debugClearEvents>>
<<set $now = new Date(Date.UTC(2033, 6, 11, 6, 30, 0))>>
<<include Stage2Tasks>>
<<include Stage2Themes>>
<<include Stage2Thresholds>>
<<include Stage2Items>>
<<set $player.timebased.stress = 50>><<set $npc_psychiatrist.sessions = 1>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_therapy_1'
0
'theme_manager_therapy_1'
true
>>
<<set $npc_psychiatrist.free_sessions = 2>>
<<set $npc_psychiatrist.profile = true>>
<<set $npc_admin.flags.sawyouinunisexclothes = true>>
<<set $npc_landlord.flags.firstremuneration = true>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<set $npc_barber.flags.firstcut = true>>
<<set $npc_barber.profile = true>>
<<set $player.work.qualifyingperiod=20>>
<<set $player.locations.theusualplace=true>>
<<set $npc_manager.flags.hascagekey = false>>
<<switch $player.sec_style.submission.chastity>>
<<case "forced" "strict">>
None Stage 2 Set Flags sec_style.chastity.forced or strict<br>
<<case "money">>
<<set $npc_sexstore_clerk.flags.chastity_quest.start = true>>
<<set $npc_sexstore_clerk.flags.chastity_quest.finished = true>>
/% TODO: bonus %/
<<case "voluntary">>
<<gainWillpower 1>>
<</switch>>
<<set $npc_manager.flags.require_chastity = true>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<<if $warpinfo.stage1.dildoresist>>
<<set $player.willpower.bonus += 1>>
<</if>>
<<switch $npc_manager.flags.stage1Promo>>
<<case 'punish' 'strict'>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_punishment'>>
<<default>>
<<setThreshold 'foot' 'secretary_foot' 'stage1_reward'>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_reward'>>
<</switch>>
<<setStatLevel 'submission' 5>>
<<switch $warpinfo.genitals>>
<<case "vagina">>
<<set $player.body_ref.penis = false>>
<<set $player.body_ref.vagina = true>>
<<case "both">>
<<set $player.body_ref.penis = true>>
<<set $player.body_ref.vagina = true>>
<</switch>><<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<if $player.sec_style.submission.chastity == "forced">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_punishment'
5
'event_psychiatrist_session_manager_2'
false
>>
<<else>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_reward'
5
'event_psychiatrist_session_manager_2'
false
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11'
6
'event_psychiatrist_session_chastity_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_3'
0
'theme_psychiatrist_penetration_1'
false
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_perm'
0
'event_manager_theme_key_permanent_1'
true
>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_1'
1
'event_admin_theme_therapy'
false
>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_psych_1'
5
'event_manager_theme_psychiatrist_1'
false
>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_psych_2'
5
'event_manager_theme_therapy_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'therapy' 'theme_psychiatrist_cruel_toggle'
0
'theme_psychiatrist_cruel_toggle_1'
true
>><<include addPsychiatristEndless>>
<<set _x = setup.addManagerEndlessTask2($now, true, false, false)>>
<<include initializeWorkEvents>>
<<removeWorkEvent 'work_coffee'>>
<<if $fetish.cat>>
<<addEvent 'cat_encounter'>>
<</if>>
<<addEvent "manager_lunch_stage2">><<set $player.locations.sexstore = true>>
<<switch $player.sec_style.clothing.unisex>>
<<case "obedient">>
<<setThreshold 'feminization' 'good_girl' 'spilling_incident'>>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<<gainWillpower 1>>
<<case "forced" "strict">>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1'>>
<<case "money">>
<<setThreshold "feminization" "money" "spilling_incident">>
<<case "voluntary">>
<<set $player.willpower.bonus += 1>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'unisex_outside'>>
<</switch>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<switch $player.sec_style.submission.chastity>>
<<case "obedient" "voluntary">>
<<setThreshold 'foot' 'secretary_foot' 'stage1_reward'>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_reward'>>
<<case "forced" "money" "strict">>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_punishment'>>
<<applyExperience 'humiliation' 10 'terrible' $SEEN_FRIEND>>
<<case "enthusiast">>
<<setThreshold 'submission' 'submissive_secretary' 'enthusiast'>>
<<applyExperienceToLevel "submission" 5 true>>
<</switch>>
<<setThreshold 'anal' 'secretary_anal' 'stage1_end'>>
<<setThreshold 'cum' 'secretary_cum' 'cumeater'>>
<<setThreshold 'makeup' 'online_makeup' 'beginner_tutorial'>>
<<unlockMakeup 'nomakeupmakeup'>>
<<unlockMakeup 'normalmakeup'>><<addItem "card_psychiatrist">>
<<removeItem "shirt" true>>
<<removeItem "b_trousers" true>>
<<removeItem "tie" true>>
<<addItem "analplug_small_box">>
<<set _name = setup.getNpcName("npc_psychiatrist", "full")>>
<<addEmail $computer
_name
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_psychiatrist_01_h'
'mail_psychiatrist_01_t'
'{"name":"nda_vr_therapy.pdf","type":"event","data":{"event":"attachment_read_nda"}}'
>>Stage 2 flags:<br>
<<set $player.call = "Miss">>
<<set $player.original_first_name = $player.first_name>>
Female name: <<textbox "$player.first_name" $player.sissy_name>><br>
<label>Small chastity? <<checkbox "$warpinfo.stage2.small_chastity" false true checked>></label>
Pegging style:<br>
<label>Gentle: <<radiobutton "$npc_manager.flags.pegging.style" "good">></label><br>
<label>Neutral: <<radiobutton "$npc_manager.flags.pegging.style" "neutral" checked>></label><br>
<label>Cruel: <<radiobutton "$npc_manager.flags.pegging.style" "cruel">></label><br><<set $warpinfo.startPassage = "room_foyer">>
/% set and then advance date so that we appropriately have a manager inspection %/
<<set $now = new Date(Date.UTC(2033, 5, 29, 6, 30, 0))>>
<<include Stage3SetFlags>>
<<debugClearEvents>>
<<set $now = new Date(Date.UTC(2033, 7, 1, 6, 30, 0))>>
<<include Stage3Tasks>>
<<include Stage3Themes>>
<<include Stage3Thresholds>>
<<include Stage3Items>>
<<set $player.timebased.stress = 30>><<set $player.timebased.stress = 0>>
<<set $npc_landlord.flags.reactnamechange = true>>
<<set $npc_admin.flags.sawyouinunisexclothes = true>>
<<set $npc_admin.flags.sawyouinfemaleclothes = true>>
<<set $npc_admin.flags.reactnamechange = true>>
<<set $npc_ai.flags.reactnamechange = true>>
<<set $npc_barista.flags.reactnamechange = true>>
<<set $npc_maid.flags.reactnamechange = true>>
<<set $npc_manager.flags.gotsissyset = true>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set $npc_manager.flags.reactnamechange = true>>
<<set $npc_manager.flags.party.first_attend = true>>
<<set $npc_manager.flags.pegging.base_style = setup.getAverageSecStyle()>>
<<set $npc_cook.flags.reactnamechange = true>>
<<set $npc_barkeeper.flags.reactnamechange = true>>
<<set $npc_barber.flags.reactnamechange = true>>
<<set $npc_shopkeeper.profile = true>>
<<set $npc_shopkeeper.flags.reactnamechange = true>>
<<set $npc_psychiatrist.flags.knowsyoucrossdress = true>>
<<set $npc_psychiatrist.flags.reactnamechange = true>>
<<set $npc_manager.call='Mistress'>>
<<set $npc_manager.title='Mistress'>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<set $npc_cook.call_player = "Lassie">>
<<set $npc_cook.flags.reactnamechange = true>>
<<set $player.locations.bodyshop = true>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('formal')>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.pushUnique('formal')>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_invite_first'
0
'event_manager_theme_home'
true
>><<set _x = setup.addManagerEndlessTask3($now, true)>>
<<include addPsychiatristEndless>>
<<include initializeWorkEvents>>
<<removeWorkEvent 'work_coffee'>>
<<set $randomEvents['work_bathroom_female'].pushUnique({ done: false, id: "barista_message"})>>
<<addWorkEvent 'stage_3_physical'>>
<<addWorkEvent 'manager_piss'>>
<<addWorkEvent 'work_meeting_stage_3'>>
<<include "checkManagementAssess">>
<<removeEvent "manager_lunch_stage2">>
<<addEvent "manager_lunch_stage3" _nextDate>><<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_10'
10
'event_admin_theme_female_clothes'
false
>>
<<if $player.sec_style.body.name == "obedient">>
<<set $player.virgin.cunnilingus = "npc_manager">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_7'
7
'event_psychiatrist_theme_good_girl_oral_manager_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_1'
0
'event_manager_theme_badsissy1'
true
>>
<<addNpcTheme 'npc_manager' 'voluntary_punishment' 'theme_manager_voluntary_punishment_1'
0
'event_manager_theme_voluntary_foot_massage_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_0'
0
'event_psychiatrist_session_admin_promotion'
false
>>
<<set $player.virgin.pegged = 'npc_manager'>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_2'
1
'event_psychiatrist_session_pegging_virginity_1'
false
>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_other_2'
0
'theme_barista_seduce_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_pegging'
0
'theme_church_confession_pegged'
true
>>
<<addWorkEvent 'admin_training_1'>>
<<addWorkEvent 'sex_club_advert'>><<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<<setThreshold 'heels' 'wearing_heels' 'beginner'>>
<<unlockMakeup "expertmakeup">>
<<setThreshold "makeup" "online_makeup" "technician_tips">>
<<setThreshold 'anal' 'secretary_anal' 'stage2_end'>><<addItemSet 'formal_cocktail_pink'>>
<<addItem "makeup_mirror">>
<<addItem "remote_control_plug">>
<<addItem "satin_blouse_pink">>
<<addItem "skirt_leather_pink">>
<<addItem "mary_janes_pink">>
<<if $player.sec_style.clothing.underwear != "forced">>
<<addItem "sissy_panties_pink">>
<<addItem "sissy_garter_pink">>
<<addItem "sissy_bra_pink">>
<<addItem "sissy_stockings_pink">>
<</if>>
<<if $warpinfo.stage2.small_chastity>>
<<set $npc_manager.flags.hascagekey = false>>
<<addItem 'chastity_cage_tiny'>>
<</if>>
<<if $player.sec_style.clothing.sissy_choker != "">>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('fancy_choker')>>
<</if>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('chastity_cage_flat')>><<set $warpinfo.startPassage = "room_foyer">>
/% set and then advance date so that we appropriately have a manager inspection %/
<<set $now = new Date(Date.UTC(2033, 6, 28, 6, 30, 0))>>
<<include Stage3SetFlags>>
<<debugClearEvents>>
<<set $now = new Date(Date.UTC(2033, 6, 29, 6, 30, 0))>>
<<include Stage3Tasks>>
<<include Stage3Themes>>
<<include Stage3Thresholds>>
<<include Stage3Items>>
<<set $player.timebased.stress = 20>>/*#
#desc: start with warp
#status: RELEASED 0.7.0.0
#ignore_spell: css,ui
#*/
<<if $cruelMode>>
<<set $npc_manager.flags.cruel = 2>>
<<set $npc_psychiatrist.flags.cruel = true>>
<</if>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<unset $cruelMode>>
<<include setStage0>>
<<if $warpinfo.stage > 0>>
<<include setStage1>>
<</if>>
<<if $warpinfo.stage == 1>>
<<set $scene.beforetasklocation = ["dummy"]>>
<</if>>
<<if $warpinfo.stage > 1>>
<<include setStage2>>
<</if>>
<<if $warpinfo.stage > 2>>
<<include setStage3>>
<</if>>
<<if $warpinfo.stage > 3>>
<<include setStage35>>
<</if>>
<<if $warpinfo.stage > 3.5>>
<<include setStage4>>
<</if>>
<<if $warpinfo.stage > 4>>
<<include setStage45>>
<</if>>
<<if $warpinfo.stage > 4.5>>
<<include setStage5>>
<</if>>
<<set _dest = $warpinfo.startPassage>>
<<if $warpinfo.configGroup.work>><<include "workOtherHandler">><</if>>
<<if $warpinfo.configGroup.technician>><<include "technicianHandler">><</if>>
<<if $warpinfo.configGroup.barista>><<include "baristaHandler">><</if>>
<<if $warpinfo.configGroup.admin>><<include "adminHandler">><</if>>
<<if $warpinfo.configGroup.landlord>><<include "landlordHandler">><</if>>
<<if $warpinfo.configGroup.exgf>><<include "exgfHandler">><</if>>
<<if $warpinfo.configGroup.sideJob>><<include "sideJobHandler">><</if>>
<<if $warpinfo.configGroup.chuck>><<include "chuckHandler">><</if>>
<<if $warpinfo.configGroup.ai>><<include "aiHandler">><</if>>
<<if $warpinfo.configGroup.therapist>><<include "therapistHandler">><</if>>
<<if $warpinfo.configGroup.work>><<include "workNpcHandler">><</if>>
<<if $warpinfo.configGroup.femStyle>><<include "applyFemStyle">><</if>>
<<include startClothingHandler>>
<<include startChastityHandler>>
<<include storeVisuals>>
<<set $player.work.payment += $warpinfo.paybonus>>
<<if $warpinfo.configGroup.stats>>
<<applyStatConfig $player $warpinfo.stats>>
<</if>>
<<switch $warpinfo.stage>>
<<case 0>>
<<set $player.timebased.stress = 50>>
<<case 1>>
<<set $player.timebased.stress = 35>>
<<case 2>>
<<set $player.timebased.stress = 25>>
<<case 3>>
<<set $player.timebased.stress = 35>>
<<case 3.5>>
<<set $player.timebased.stress = 25>>
<<case 4>>
<<set $player.timebased.stress = 15>>
<<case 4.5>>
<<set $player.timebased.stress = 10>>
<</switch>>
<<if $npc_pr_sissy.stage >= 1 && $npc_sexdoll.stage >= 2 && $npc_manager.stage >= 3>>
<<addWorkEvent "brainscan_event">>
<</if>>
<<if $player.skintone == "dark">>
<<set $player.hair.style = "short_curls">>
<</if>>
<<unset $warpinfo>>
<<checkFetishFlags>>
<<set UIBar.unstow()>>
<<notificationFeedStartAccepting>>
<<script>>
$("#ui-notification").css("display", "");
<</script>>
<<moveTo _dest>><<storeVisual $player $npc_admin>>
<<storeVisual $player $npc_barkeeper>>
<<storeVisual $player $npc_technician>>
<<storeVisual $player $npc_manager>>
<<storeVisual $player $npc_landlord>>
<<storeVisual $player $npc_psychiatrist>>
<<storeVisual $player $npc_shopkeeper>><<set $warpinfo.configGroup.stats = true>>
<<set $warpinfo.stats = {}>>
Override stat thresholds:<br>
<<configStats $player $npc_manager.stage>><br>
<br>
Note: max value options are a function of starting stage, this will not credit any events normally associated with reaching that level, it merely awards the raw level.<br>
<br>
[[Complete Stat Configuration|configWarp]]—— Prostitution ——<br>
<<if $warpinfo.stage > 1>>
Prostitution Experience:<br>
<label>Never done (0): <<radiobutton "$warpinfo.prostitutionStage" 0 checked>></label><br>
<label>Gloryhole (5): <<radiobutton "$warpinfo.prostitutionStage" 5>></label><br>
<label>Back-alley whore (10): <<radiobutton "$warpinfo.prostitutionStage" 10>></label><br>
<label>Prostitute (15): <<radiobutton "$warpinfo.prostitutionStage" 15>></label><br>
<label>Call-girl (19): <<radiobutton "$warpinfo.prostitutionStage" 19>></label><br>
<label>Elite Call-girl (20): <<radiobutton "$warpinfo.prostitutionStage" 20>></label><br>
<</if>><<if $warpinfo.prostitutionStage > 0>>
<<include prostitutionBasic>>
<<addWorkEvent 'broken_computer'>>
<</if>><<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining'>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_10'
5
'event_psychiatrist_session_prostitution_2'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_5'
5
'event_psychiatrist_session_prostitution_1'
true
>>
<<if $warpInfo.prostitutionStage > 5>>
<<set $npc_barkeeper.flags.prostitution.can_work_alley = true>>
<<setThreshold 'whoring' 'general_whoring' 'alley_worker'>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_11'
11
'event_psychiatrist_session_prostitution_job_offer_1'
true
>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_11'
0
'event_manager_theme_prostitute_1'
false
>>
<<addNpcTheme 'npc_priest' 'other' 'theme_priest_other_prostitution'
0
'theme_church_confession_prostitution'
true
>>
<</if>>
<<if $warpInfo.prostitutionStage > 10>>
<<set $npc_barkeeper.flags.prostitution.can_work_floor = true>>
<<setThreshold 'whoring' 'general_whoring' 'working_girl'>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_15'
15
'event_psychiatrist_session_prostitution_anal_1'
false
>>
<</if>>
<<if $warpInfo.prostitutionStage > 15>>
<<set $npc_barkeeper.flags.prostitution.can_work_vip = true>>
<<setThreshold 'whoring' 'general_whoring' 'vip_prostitute'>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_20'
20
'event_psychiatrist_session_prostitution_vip_1'
false
>>
<</if>>
<<if $warpInfo.prostitutionStage > 19>>
<<setThreshold 'whoring' 'general_whoring' 'party_whoring'>>
<<set $npc_barkeeper.flags.prostitution.final.attend = true>>
<</if>><<set $warpinfo.configGroup.technician = true>>
——— Technician ———<br>
<br>
Technician Relationship:<br>
<label>Asked for help with data recovery: <<checkbox "$npc_technician.flags.dataservice_encounter.asked_for_help" false true checked>></label><br>
/% technically these are dependent on the asked for help so should hide, but bleh, for now just ignoring "impossible" selections %/
<label>Strove extra hard to recover data: <<checkbox "$warpinfo.prologue.WorkHardDataRecovery" false true>></label><br>
First day:<br>
<label>Didn't look up her skirt: <<radiobutton "$warpinfo.stage0.technician" 0 checked>></label><br>
<label>Looked up her skirt: <<radiobutton "$warpinfo.stage0.technician" 1 checked>></label><br>
<label>Touched her cock: <<radiobutton "$warpinfo.stage0.technician" 2 checked>></label><br>
<label>Failed at jerking her off: <<radiobutton "$warpinfo.stage0.technician" 3 checked>></label><br>
<label>Successful handjob: <<radiobutton "$warpinfo.stage0.technician" 4 checked>></label><br>
<label>Blowjob: <<radiobutton "$warpinfo.stage0.technician" 5 checked>></label><br>
<<if $npc_manager.stage >= 2>>
<br><br>
Meetups:<br>
<label>Haven't met: <<radiobutton "$warpinfo.technician" 0 checked>></label><br>
<label>Met for coffee: <<radiobutton "$warpinfo.technician" 1>></label><br>
<<if $npc_manager.stage >= 3>>
<label>Joined RPG Group: <<radiobutton "$warpinfo.technician" 2>></label><br>
<label>Finished Campaign: <<radiobutton "$warpinfo.technician" 3>></label>
<label>Missed Session: <<checkbox "$npc_technician.flags.rpg_campaign.no_showed" false true>></label>
<</if>>
Note: these have interdependencies, setting them from scratch can put the game in a weird/inconsistent state; you have been warned.<br>
<br>
<label>Met for dinner: <<checkbox "$warpinfo.technicianDinner" false true>></label><br>
<label>Seduced her after game: <<checkbox "$warpinfo.technicianSeduced" false true>></label><br>
Her role:
<label>Dom: <<radiobutton "$npc_technician.relationship.her_role" 'dom'>></label><br>
<label>Sub: <<radiobutton "$npc_technician.relationship.her_role" 'sub'>></label><br>
<label>Neutral/unchosen: <<radiobutton "$npc_technician.relationship.her_role" 'neutral'>></label><br>
<label>Done her: <<checkbox "$npc_technician.relationship.done_her" false true>></label><br>
<label>Done you: <<checkbox "$npc_technician.relationship.done_you" false true>></label><br>
<label>Caged her: <<checkbox "$npc_technician.relationship.her_caged" false true>></label><br>
<</if>>
[[Complete Technician Configuration|configWarp]]<<set $npc_technician.profile = true>>
<<if $npc_technician.flags.dataservice_encounter.asked_for_help>>
<<if $warpinfo.stage0.technician > 0>>
<<set $npc_technician.flags.dataservice_encounter.looked_up_skirt = true>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_0'
0
'event_technician_upskirt_apology'
false
>>
<<setThreshold 'penis' 'through_alex' 'intro_penis'>>
<<if $warpinfo.stage0.technician > 1>>
<<set $player.virgin.handjob = 'npc_technician'>>
<<set $npc_technician.flags.dataservice_encounter.handjob = true>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_3'
4
'psychiatrist_technician_handjob'
false
>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_handjob'
0
'event_technician_theme_handjob'
false
>>
<</if>>
<<switch $warpinfo.stage0.technician>>
<<case 1>>
<<set $player.flags.datarecovery = 40>>
<<case 2>>
<<set $player.flags.datarecovery = 40>>
<<case 3>>
<<addItem "card_technician">>
<<set $player.flags.datarecovery = 50>>
<<applyExperience 'penis' 6 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'insignificant' $SEEN_FRIEND>>
<<set $npc_technician.flags.dataservice_encounter.handjob_finish = 'fail'>>
<<case 4>>
<<addItem "card_technician">>
<<set $player.flags.datarecovery = 51>>
<<applyExperience 'penis' 7 'normal' $SEEN_FRIEND>>
<<set $npc_technician.flags.dataservice_encounter.handjob_finish = 'hand'>>
<<case 5>>
<<set $npc_technician.flags.dataservice_encounter.handjob_finish = 'mouth'>>
<<set $player.flags.datarecovery = 60>>
<<set $player.virgin.blowjob = 'npc_technician'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "enthusiast">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<<setThreshold 'oral' 'through_alex' 'intro_oral'>>
<<setThreshold 'cum' 'through_alex' 'intro_cum'>>
<<applyExperience 'oral' $npc_technician.penis_size 'little' $SEEN_FRIEND>>
<<applyExperience 'cum' 6 'little' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'penis' 8 'normal' $SEEN_FRIEND>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_blowjob'
5
'event_technician_theme_blowjob'
true
>>
<<addItem "card_technician">>
<</switch>>
<<if $npc_technician.relationship.her_role == "sub">>
<<set $npc_technician.relationship.unlock_sub = true>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_collar_her'
11
'theme_technician_collar_her_1'
true
>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_dominance'
6
'event_manager_theme_dom_training_1'
true
>>
<<elseif $npc_technician.relationship.her_role == "dom">>
<<set $npc_technician.relationship.unlock_dom = true>>
<</if>>
<<else>>
<<set $player.flags.datarecovery = 45>>
<</if>>
<<setThreshold 'foot' 'foot_massages' 'alex_in_intro'>>
<<applyExperience 'foot' 5 'very' $SEEN_FRIEND>>
<<else>>
<<gainWillpower 1>>
<<if $warpinfo.prologue.WorkHardDataRecovery>>
<<spendWillpower 1>>
<<set $player.flags.datarecovery = 36>>
<<else>>
<<set $player.flags.datarecovery = 4>>
<</if>>
<</if>>
<<switch $player.flags.datarecovery>>
<<case 4>>
<<set $player.work.payment = 90>>
<<case 36 40 45>>
<<set $player.work.payment = 100>>
<<case 50 51>>
<<set $player.work.payment = 110>>
<<case 60>>
<<set $player.work.payment = 115>>
<</switch>>
/% early campaign stuff %/
<<if $warpinfo.technician >= 1>>
<<set $npc_maid.profile = true>>
<<set $player.locations.mallcafe=true>>
<<set $npc_technician.relationship.coffee_dates+=1>>
<<set $npc_technician.flags.knowTrans = true>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_2'
2
'event_technician_makeup_1'
true
>>
<<addNpcTheme 'npc_technician' 'roleplay' 'theme_technician_rpg_5'
5
'event_technician_theme_roleplay_1_0'
true
>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_life_0'
0
'theme_barista_rpg'
false
>>
<</if>>
<<if $warpinfo.technician >= 2>>
<<set $player.locations.home_technician = true>>
<<include addRPGSessionTask>>
<<set $npc_rpg_warlock.profile = true>>
<<set $npc_rpg_dude.profile = true>>
<<addNpcTheme 'npc_technician' 'rpg' 'npc_technician_theme_rpg_barista'
0
'theme_technician_barista'
false
>>
<<addNpcTheme 'npc_technician' 'rpg' 'npc_technician_theme_rpg_dude'
0
'theme_technician_rpg_dude'
false
>>
<<addNpcTheme 'npc_technician' 'rpg' 'npc_technician_theme_rpg_warlock'
0
'theme_technician_rpg_warlock'
false
>>
<<addNpcTheme 'npc_technician' 'rpg' 'npc_technician_theme_rpg_maid'
0
'theme_technician_maid'
false
>>
<</if>>
<<if $warpinfo.technician >= 3>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_life_1'
0
'theme_barista_technician'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_0'
0
'event_psychiatrist_theme_group_1'
false
>>
/% mid/late campaign stuff %/
<<set $npc_technician.flags.rpg_campaign.session = 8>>
<<addNpcTheme 'npc_psychiatrist' 'rpg_campaign' 'theme_psychiatrist_rpg_20'
7
'event_psychiatrist_theme_rpg_finish'
false
>>
<</if>>
<<if $warpinfo.technicianDinner>>
<<set $npc_technician.relationship.dinner_dates = 1>>
<</if>>
<<if $warpinfo.technicianSeduced>>
<<set $npc_technician.relationship.relationship_stage = 1>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_technician_date'
5
'theme_admin_technician_1'
false
>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_pregnancy'
0
'theme_technician_pregnant_1'
true
>>
<</if>><<set $warpinfo.configGroup.chuck = true>>
——— Pet Plant ———<br>
<br>
<label>Sprout: <<radiobutton "$npc_chuck.timebased.grow" 0 checked>></label><br>
<label>Growing: <<radiobutton "$npc_chuck.timebased.grow" 50>></label><br>
<label>Baseball: <<radiobutton "$npc_chuck.timebased.grow" 100>></label><br>
[[Complete Plant Configuration|configWarp]]<<set $npc_chuck.timebased.water = 100>>——— VR Therapy ———<br>
VR Therapy stage:<br>
<label>Haven't signed: <<radiobutton "$warpinfo.hypno" 0 checked>></label><br>
<label>Haven't been: <<radiobutton "$warpinfo.hypno" 1>></label><br>
<label>First appointment (relax/obey) finished: <<radiobutton "$warpinfo.hypno" 2>></label><br>
<label>Second appointment (brainwashing is good for me) finished: <<radiobutton "$warpinfo.hypno" 3>></label><br>
<<if $npc_manager.stage > 2>>
<label>Third (love to suck cock) stage: <<radiobutton "$warpinfo.hypno" 4>></label><br>
<label>Fourth (basic VR) therapy: <<radiobutton "$warpinfo.hypno" 5>></label><br>
<label>"Decline" all basic VR options: <<radiobutton "$warpinfo.hypno" 6>></label><br>
<label>"Accepted" all basic VR options: <<radiobutton "$warpinfo.hypno" 7>></label>
<</if>><<include hypnoHandler>><<if $warpinfo.hypno >= 1>>
<<set $npc_psychiatrist.flags.signednda = true>>
<</if>>
<<if $warpinfo.hypno >= 2>>
/% first appointment hypno %/
<<set $npc_psychiatrist.hypnosis = 1>>
<<setThreshold 'bondage' 'pre_hypnosis_bondage' 'bondage_chair'>>
<<setThreshold 'submission' 'hypnosis_submission' 'first_session'>>
<<set $npc_psychiatrist.free_sessions += 1>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_2'
1
'event_admin_theme_hypno'
false
>>
<</if>>
<<if $warpinfo.hypno >= 3>>
/% second appointment hypno %/
<<set $npc_psychiatrist.free_sessions += 1>>
<<set $npc_psychiatrist.hypnosis = 2>>
<<setThreshold 'anal' 'psychiatrist_anal' 'fingered'>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<setThreshold 'penis' 'pre_hypnosis_penis' 'session_2'>>
<<setThreshold 'bimbofication' 'hypnosis_bimbofication' 'session_2'>>
<</if>>
<<if $warpinfo.hypno >= 4>>
/% 3rd appointment hypno %/
<<set $npc_psychiatrist.free_sessions += 1>>
<<set $npc_psychiatrist.hypnosis = 3>>
<<set $npc_psychiatrist.flags.session[1].feminization = false>>
<<set $npc_psychiatrist.flags.session[1].sissyfication = false>>
<<set $npc_psychiatrist.flags.session[1].bimbofication = false>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<addItem "analplug_medium_ems">>
<<addNpcTheme "npc_psychiatrist" "therapy" "theme_psychiatrist_therapy_plug"
0
'theme_psychiatrist_plug_1'
false
>>
<<setThreshold 'anal' 'psychiatrist_anal' 'ems_plugged'>>
<<set $sceneVisibility = $EXPOSED>>
<<if(setup.getTotalValue('oral')==0)>>
<<setThreshold 'oral' 'hypnosis_oral' 'session_3'>>
<<else>>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<</if>>
<<if(setup.getTotalValue('cum')==0)>>
<<setThreshold 'cum' 'pre_hypnosis_cum' 'session_3'>>
<<else>>
<<applyExperience 'cum' 12 'very' $EXPOSED>>
<</if>>
<<applyExperience 'penis' 18 'little' $EXPOSED>>
<<applyExperience 'bimbofication' 16 'little' $EXPOSED>>
<</if>>
<<if $warpinfo.hypno >= 5>>
<<set $scene.spendFatigue = true>>
/% 4th "endless" hypno %/
<<set $npc_psychiatrist.hypnosis = 4>>
<</if>>
<<if $warpinfo.hypno >= 6>>
<<HypnosisSession4Decline $player $scene 'cum'>>
<<HypnosisSession4Decline $player $scene 'penis'>>
<<HypnosisSession4Decline $player $scene 'bdsm'>>
<<HypnosisSession4Decline $player $scene 'bondage'>>
<<HypnosisSession4Decline $player $scene 'foot'>>
<<if $fetish.piss>>
<<HypnosisSession4Decline $player $scene 'piss'>>
<</if>>
<<if $fetish.bestiality_soft>>
/% TODO! <<HypnosisSession4Decline $player $scene 'bestiality'>>%/
<</if>>
<</if>>
<<if $warpinfo.hypno >= 7>>
<<set $scene.spendWillpower = true>>
<<HypnosisSession4Accept $player $scene 'cum'>>
<<HypnosisSession4Accept $player $scene 'penis'>>
<<HypnosisSession4Accept $player $scene 'bdsm'>>
<<HypnosisSession4Accept $player $scene 'bondage'>>
<<HypnosisSession4Accept $player $scene 'foot'>>
<<if $fetish.piss>>
<<HypnosisSession4Accept $player $scene 'piss'>>
<</if>>
<<if $fetish.bestiality_soft>>
/% TODO! <<HypnosisSession4Accept $player $scene 'bestiality'>>%/
<</if>>
<</if>>
<<if $npc_manager.stage>1>>
<<include "addHypnosisTask">>
<</if>><<set $warpinfo.configGroup.content = true>>
[[Manually Configure Content|configureContent]]<br>
[[Activate All Content|activateAllContent]]<br><<activateAllFetishes>><br>
<br>
<<moveTo configWarp>><<printAssessmentSummary>><br>
<br>
[[Complete Content Configuration|configWarp]]<<set $warpinfo.configGroup.admin = true>>
<<set $warpinfo.admin = {}>>
——— Admin ———<br>
<br>
<<if $npc_manager.stage > 1>>
<label>Met for drinks? <<checkbox "$warpinfo.admin.drinks" false true checked>></label><br>
<label>Unlocked gym? <<checkbox "$player.locations.gym" false true>></label><br>
<label>Called Dibs <<checkbox "$npc_admin.flags.monogomous_manager" false true>></label><br>
<</if>>
<<if $npc_manager.stage > 2>>
<label>Attempt eavesdrop on <<his npc_admin>> hiring meeting? <<checkbox "$warpinfo.admin.ageofconfusion_eavesdrop1" false true checked>></label><br>
<label>Got help eavesdropping on <<his npc_admin>> hiring meeting? <<checkbox "$warpinfo.admin.ageofconfusion_eavesdrop2" false true checked>></label><br>
<label>Saw <<him npc_admin>> with manager <<checkbox "$warpinfo.admin.sawHimfuckingManager" false true>></label><br>
Knows about manager?:
<label>Oblivious: <<radiobutton "$npc_admin.flags.knowManagerTruth" 0 checked>></label><br>
<label>Inkling: <<radiobutton "$npc_admin.flags.knowManagerTruth" 1>></label><br>
<label>Knows Truth: <<radiobutton "$npc_admin.flags.knowManagerTruth" 2>></label><br>
<label>Evil Admin (will override most everything else): <<checkbox "$warpinfo.admin.evil" false true>></label><br>
<br>
Seduction:
<label>None: <<radiobutton "$warpinfo.admin.seduction" 0 checked>></label><br>
<label>Flirted at Gym: <<radiobutton "$warpinfo.admin.seduction" 1>></label><br>
<label>Seduced at Flat: <<radiobutton "$warpinfo.admin.seduction" 2>></label><br>
<label>Seduced, but Just Friends: <<radiobutton "$warpinfo.admin.seduction" 3>></label><br>
<label>Friends with Benefits: <<radiobutton "$warpinfo.admin.seduction" 4>></label><br>
<label>Dating: <<radiobutton "$warpinfo.admin.seduction" 5>></label>
<</if>>
<br><br>
[[Complete Admin Configuration|configWarp]]<<if $warpinfo.admin.drinks>>
<<if !setup.checkItemOwned("card_technician")>>
<<addItem "card_technician">>
<</if>>
<<set $npc_admin.dates+=1>>
<<set $npc_barkeeper.profile = true>>
<<if $player.sec_style.body.name != "">>
<<set $npc_barkeeper.flags.reactnamechange = true>>
<</if>>
<</if>>
<<if $npc_manager.stage > 2>>
/% age of confusion %/
<<set $npc_admin.flags.sawyouinfemaleclothes = true>>
<<set $npc_admin.flags.reactnamechange = true>>
<<set $npc_admin.flags.ageofconfusion = false>>
/% evesdrop %/
<<if $warpinfo.admin.ageofconfusion_eavesdrop1>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $npc_ai.profile = true>>
<<applyExperience 'bimbofication' 2 'slightly' $INCOGNITO>>
<</if>>
<<if $warpinfo.admin.ageofconfusion_eavesdrop2>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $npc_ai.flags.blackmail = true>>
<<applyExperience 'bimbofication' 2 'little' $INCOGNITO>>
<</if>>
<<applyExperience 'humiliation' 6 'unbelievable' $SEEN_FRIEND>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_12'
12
'event_admin_theme_female_clothes'
false
>>
<<set _nextDate = setup.setNextDate($now, 1, 9, 0)>>
<<addWorkEvent 'admin_office_sex_visit'>>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_0'
0
'event_admin_theme_manager_1'
true
>>
<<if $warpinfo.admin.evil>>
<<set _nextDate = setup.setNextDate($now, 2, 6, 0)>>
<<addEvent 'gym_alt_unlock' _nextDate>>
<<set $npc_admin.flags.evil = 2>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_evil_admin' 0 'event_manager_theme_private_evil_admin' false 'privatethemes'>>
<</if>>
<<if $warpinfo.admin.seduction > 0>>
<<set $npc_admin.flags.flirted = true>>
<<switch $warpinfo.admin.seduction>>
<<case 2>>
<<addWorkEvent 'manager_matchmaker'>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_15'
0
'event_psychiatrist_session_admin_seduce_fail'
false
>>
<<case 3>>
<<set $npc_admin.flags.relationship = "friend">>
<<case 4>>
<<set $npc_admin.flags.relationship = "friendswbenefits">>
<<case 5>>
<<set $npc_admin.flags.relationship = "boyfriend">>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_admin_date'
5
'theme_technician_admin_1'
true
>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_22'
0
'theme_admin_pregnant_1'
true
>>
<</switch>>
<</if>>
<</if>>
<<set $npc_admin.flags.firstsawfemale = "bar">>
<<if $player.locations.gym>>
<<addHistory 'event_admin_talk_gym'>>
<<set $gym.membership.active = true>>
<<addTaskById 'task_first_gym' $now>>
<<set $currentTasks.task_first_gym.storage = {}>>
<<completeTask 'task_first_gym' $now true>>
<<setThreshold 'strength' 'gym_strength' 'admin'>>
<</if>><<set $warpinfo.landlord = {}>>
<<set $warpinfo.configGroup.landlord = true>>
——— <<if $npc_landlord.fem>>Landlady<<else>>Landlord<</if>> ———<br>
<br>
<label>Flashed <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> first visit? <<checkbox "$warpinfo.landlord.flash" false true checked>></label><br>
<label><<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> saw you female? <<checkbox "$warpinfo.landlord.sawFemale" false true checked>></label><br>
<br>
<<if $npc_landlord.fem>>
[[Complete Landlady Configuration|configWarp]]
<<else>>
[[Complete Landlord Configuration|configWarp]]
<</if>><<if $warpinfo.landlord>>
<<if $warpinfo.landlord.flash>>
<<set $player.flags.landlordsawyounaked = true>>
<<setThreshold 'bimbofication' 'wardrobe_malfunction' 'open_door'>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<addNpcTheme 'npc_psychiatrist' 'landlord' 'theme_psychiatrist_landlord_5'
5
'event_psychiatrist_session_landlord_2'
false
>>
<</if>>
<<if $warpinfo.landlord.sawFemale>>
<<set $npc_landlord.call_player = "Chica">>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if $warpinfo.stage > 0>>
<<include "rentEvent">>
<</if>><<set $warpinfo.exgf = {}>>
<<set $warpinfo.configGroup.exgf = true>>
——— Ex-girlfriend ———<br>
<br>
<label>Flashed ex gf first visit? <<checkbox "$warpinfo.exgf.flash" false true checked>></label><br>
<label>Wore her clothes first visit? <<checkbox "$warpinfo.exgf.wornclothes" false true checked>></label><br>
<<if $warpinfo.stage > 2>>
Black Box:
<label>Locked: <<radiobutton "$warpinfo.exgf.blackbox" 0 checked>></label><br>
<label>Unlocked: <<radiobutton "$warpinfo.exgf.blackbox" 1>></label><br>
<label>Game: <<radiobutton "$warpinfo.exgf.blackbox" 2>></label><br>
<label>Upgrade: <<radiobutton "$warpinfo.exgf.blackbox" 3>></label><br>
<label>Game Basic: <<radiobutton "$warpinfo.exgf.blackbox" 4>></label><br>
<label>Mastered: <<radiobutton "$warpinfo.exgf.blackbox" 5>></label><br>
<</if>>
[[Complete Ex-gf Configuration|configWarp]]<<if $warpinfo.exgf.flash>>
<<set $npc_exgirlfriend.flags.nakedwhiledelivery = true>>
<<applyExperience 'humiliation' 8 'slightly' $SEEN_FRIEND>>
<</if>>
<<if $warpinfo.exgf.wornclothes>>
<<applyExperience 'humiliation' 12 'little' $SEEN_FRIEND>>
<</if>>
<<if $warpinfo.exgf.blackbox > 0>>
<<set $npc_exgirlfriend.flags.bondage_machine.unlocked = true>>
<<addNpcTheme 'npc_psychiatrist' 'ex_girlfriend' 'theme_psychiatrist_ex_6'
4
'event_psychiatrist_session_girlfriend_mystery_box_open_1'
false
>>
<<setThreshold 'bondage' 'machine_bondage' 'black_box'>>
<<setThreshold 'anal' 'other_anal' 'black_box'>>
<<deleteItem 'black_box'>>
<<if $warpinfo.exgf.blackbox > 1>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade = true>>
<<if $warpinfo.exgf.blackbox > 2>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade = true>>
<<if $warpinfo.exgf.blackbox > 3>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier = true>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier = true>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier = true>>
<<setThreshold 'anal' 'extreme_anal' 'machine_anal'>>
<<setThreshold 'oral' 'extreme_oral' 'machine_oral'>>
<<if $warpinfo.exgf.blackbox > 4>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final = true>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.oral_final = true>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.both_final = true>>
<<setThreshold 'penis' 'machine_penis' 'final_victory'>>
<<if setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_7') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_7'
4
'event_psychiatrist_session_other_rrr_win_1'
false
>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>><<set $warpinfo.configGroup.work = true>>
——— Coworkers ———<br>
<br>
<<if $npc_manager.stage < 3.5>>
<<set _coworkerMaxStage = $npc_manager.stage>>
<<else>>
<<set _coworkerMaxStage = 5>>
<</if>>
<<npcStageSelection _coworkerMaxStage 'npc_sexdoll'>>
<<npcStageSelection _coworkerMaxStage 'npc_hucow'>>
<<npcStageSelection _coworkerMaxStage 'npc_futa'>>
<<npcStageSelection _coworkerMaxStage 'npc_sissy_secretary'>>
<<npcStageSelection 1 'npc_pr_sissy'>>
<br>
——— Managers ———<br>
<br>
<<if $npc_manager.stage <= 2>>
<<npcStageSelection $npc_manager.stage 'npc_harassment'>>
<<npcStageSelection $npc_manager.stage 'npc_nintendolls'>>
<<else>>
<<npcStageSelection 4 'npc_harassment'>>
<<npcStageSelection 5 'npc_nintendolls'>>
<</if>>
<<npcStageSelection $npc_manager.stage 'npc_retention'>>
<<npcStageSelection $npc_manager.stage 'npc_development'>>
<<npcStageSelection $npc_manager.stage 'npc_discipline'>>
<br><br>
<<if $npc_manager.stage > 2>>
——— After Work Party ———<br>
<br>
Note: manager visiting flat is tied to sec_style: clothing purge, setting party without that may cause odd behaviour.<br>
<label>Can attend party: <<checkbox "$warpinfo.party" false true>></label>
<br><br>
(Note: requires party)<br>
<label>Unlocked poker: <<checkbox "$warpinfo.poker" false true>></label>
<label>Got data crystal: <<checkbox "$warpinfo.datacrystal" false true>></label>
<br><br>
<</if>>
[[Complete Work Configuration|configWarp]]<<switch $npc_sexdoll.stage>>
<<case 0 1>>
<<addRandomEvent $randomEvents['canteen'] 'coworker_sexdoll'>>
<<case 2>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'coworker_sexdoll'>>
<<case 3>>
<<addRandomEvent $randomEvents['work_coffee_shop'] 'coworker_sexdoll'>>
<<case 4>>
<</switch>>
<<if $npc_sexdoll.stage > 0>>
/% no op, first event force %/
<</if>>
<<if $npc_sexdoll.stage > 1>>
<</if>>
<<if $npc_sexdoll.stage > 2>>
<<set $npc_sexdoll.flags.reactnamechange = true>>
<<set $npc_sexdoll.first_name = $npc_sexdoll.sissy_name>>
<<set $npc_sexdoll.other_call = "Miss">>
<<set $npc_sexdoll.call = "Miss">>
<</if>>
<<if $npc_sexdoll.stage > 3>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_7'
0
'event_ai_sex_lesson_penis_1'
true
>>
<</if>>
<<if $npc_sexdoll.stage == 0>>
<<set $npc_sexdoll.stage = 1>>
<</if>>
<<switch $npc_hucow.stage>>
<<case 1>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'coworker_hucow'>>
<<case 2>>
<<addRandomEvent $randomEvents['work_coffee_shop'] 'coworker_hucow'>>
<<case 3>>
<<addRandomEvent $randomEvents['elevator_home'] 'coworker_hucow'>>
<<case 4>>
<</switch>>
<<if $npc_hucow.stage > 0>>
<<removeRandomEvent 'canteen' 'coworker_hucow'>>
<</if>>
<<if $npc_hucow.stage > 1>>
<</if>>
<<if $npc_hucow.stage > 2>>
<<set $npc_hucow.flags.reactnamechange = true>>
<</if>>
<<if $npc_hucow.stage > 3>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_3'
0
'event_ai_sex_lesson_foreplay_1'
true
>>
<</if>>
<<switch $npc_futa.stage>>
<<case 1>>
<<addRandomEvent $randomEvents['elevator_home'] 'coworker_futa'>>
<<case 2>>
<<addRandomEvent $randomEvents['canteen'] 'coworker_futa'>>
<<case 3>>
<<set $randomEvents['work_bathroom_female'].pushUnique({id: 'coworker_futa'})>>
<</switch>>
<<if $npc_futa.stage > 0>>
<<removeRandomEvent 'work_coffee_shop' 'coworker_futa'>>
<</if>>
<<if $npc_futa.stage > 1>>
<</if>>
<<if $npc_futa.stage > 2>>
<<set $npc_futa.flags.reactnamechange = true>>
<</if>>
<<if $npc_futa.stage > 3>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_6'
0
'event_ai_sex_lesson_vaginal_1'
true
>>
<</if>>
<<switch $npc_sissy_secretary.stage>>
<<case 1>>
<<addRandomEvent $randomEvents['work_coffee_shop'] 'coworker_sissy_secretary'>>
<<case 2>>
<<addRandomEvent $randomEvents['elevator_home'] 'coworker_sissy_secretary'>>
<<case 3>>
<<set $randomEvents['canteen'].pushUnique({id: 'coworker_sissy_secretary'})>>
<</switch>>
<<if $npc_sissy_secretary.stage > 0>>
<<removeRandomEvent 'work_bathroom_male' 'coworker_sissy_secretary'>>
<</if>>
<<if $npc_sissy_secretary.stage > 1>>
<</if>>
<<if $npc_sissy_secretary.stage > 2>>
<<set $npc_sissy_secretary.flags.reactnamechange = true>>
<<set $npc_sissy_secretary.stage = 3>>
<<set $npc_sissy_secretary.other_call = "Ms.">>
<<set $npc_sissy_secretary.call = "Ms.">>
<</if>>
<<if $npc_sissy_secretary.stage > 3>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_5'
0
'event_ai_sex_lesson_anal_1'
true
>>
<</if>>
<<if $npc_pr_sissy.stage >= 3>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_2'
0
'event_ai_sex_lesson_seduction_1'
true
>>
<</if>>
/% hr managers %/
<<if $npc_harassment.stage > 1>>
<</if>>
<<if $npc_harassment.stage > 2>>
<</if>>
<<if $npc_harassment.stage > 3>>
<</if>>
<<if $npc_harassment.stage > 4>>
<</if>>
<<if $npc_nintendolls.stage > 1>>
<</if>>
<<if $npc_nintendolls.stage > 2>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<if $npc_nintendolls.stage > 3>>
<<applyExperience 'humiliation' 12 'slightly' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'little' $SEEN_FRIEND>>
<</if>>
<<if $npc_nintendolls.stage > 4>>
<<applyExperience 'cum' 11 'slightly' $SEEN_STRANGER>>
<<applyExperience 'whoring' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'normal' $SEEN_STRANGER>>
<</if>>
<<if $npc_retention.stage > 1>>
<</if>>
<<if $npc_retention.stage > 2>>
<</if>>
<<if $npc_retention.stage > 3>>
<<applyExperience 'bondage' 8 'almost' $SEEN_FRIEND>>
<</if>>
<<if $npc_retention.stage > 4>>
<<if $fetish.pet_play && $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<if $npc_development.stage > 1>>
<</if>>
<<if $npc_development.stage > 2>>
<</if>>
<<if $npc_development.stage > 3>>
<<applyExperience 'oral' $npc_development.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
/%
technically or
<<applyExperience 'anal' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
%/
<</if>>
<<if $npc_development.stage > 4>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<</if>>
<<if $npc_discipline.stage > 1>>
<</if>>
<<if $npc_discipline.stage > 2>>
<</if>>
<<if $npc_discipline.stage > 3>>
<<applyExperience 'bdsm' 14 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 10 'almost' $SEEN_FRIEND>>
/%
<<applyExperience 'anal' 10 'very' $EXPOSED>>
<<applyExperience 'submission' 7 'terrible' $EXPOSED>>
or
<<applyExperience 'humiliation' 15 'unbelievable' $EXPOSED>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
%/
<</if>>
<<if $npc_discipline.stage > 4>>
/%
options
%/
<</if>>
<<if $npc_discipline.stage > 5>>
/%
event_work_hr_discipline_dom
or
event_work_hr_discipline_sub%/
<</if>><<if $warpinfo.party>>
<<set $npc_manager.flags.party.timesAttended = 1>>
<<set $player.locations.bodyshop2 = true>>
<</if>>
<<if $warpinfo.poker>>
<<set $npc_poker_intro_slave.stage = 2>>
<</if>>
<<if $warpinfo.datacrystal>>
<<addItem 'party_data_crystal'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_give_crystal' 0 'event_manager_theme_private_give_crystal' false 'privatethemes'>>
<<set $player.flags.data_crystal.got = true>>
<<set $npc_manager.flags.office_unlocked = true>>
<</if>><<set $warpinfo.configGroup.ai = true>>
——— AI ———<br>
<br>
<label>Tried to snoop? <<checkbox "$warpinfo.stage0.aisnoop" false true checked>></label><br>
<label>Denied snooping (ignored if snoop is unchecked)? <<checkbox "$warpinfo.stage0.aisnooplie" false true checked>></label><br>
<<if $npc_manager.stage > 2>>
<label>Completed first mission: <<checkbox "$warpinfo.stage2.firstaimission" false true checked>></label><br>
<</if>>
<<if $npc_manager.stage > 3>>
/% technically these are done in a specific order %/
<label>Completed connection mission: <<checkbox "$npc_ai.flags.missions.connection" false true checked>></label><br>
<label>Completed milking mission: <<checkbox "$npc_ai.flags.missions.milking" false true checked>></label><br>
/% completion style: talk, fight hide%/
<label>Completed robot body mission: <<checkbox "$npc_ai.flags.missions.robot_body" false true checked>></label><br>
<label>End AI missions: <<checkbox "$npc_ai.flags.end_missions" false true checked>></label><br>
<</if>>
<<if $npc_manager.stage >=3>> /% TODO; technically post age of confusion %/
<<addRandomEvent $randomEvents['elevator_home'] 'ai_mission'>>
<</if>>
/% TODO: $npc_ai.flags.manager_file_access %/
[[Complete AI Configuration|configWarp]]<<if $warpinfo.stage0.aisnoop>>
<<if $warpinfo.stage0.aisnooplie>>
<<set $npc_ai.profile = true>>
<<set $npc_ai.flags.blackmail = true>>
<<set $npc_ai.flags.ignoredFirstDoorAccess = true>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $player.flags.checkedDoor = true>>
<</if>>
<</if>>
<<if $npc_manager.stage > 2>>
<<if $warpinfo.stage2.firstaimission>>
<<removeRandomEvent 'elevator_home' 'ai_mission'>>
<<set $npc_ai.profile=true>>
/%
optional:
<<applyExperience 'humiliation' 6 'almost' $SEEN_STRANGER>>
<<applyExperience 'anal' 5 'little' $SEEN_STRANGER>>
%/
<<addWorkEvent 'ai_mission'>>
<</if>>
<<if $npc_ai.flags.missions.connection>>
<<addItem 'data_plug'>>
<<switch $npc_ai.flags.jailbreak_style>>
<<case 'sex'>>
<<applyExperience 'oral' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<<case 'fight'>>
<<case 'dunce'>>
<<case 'smart'>>
<</switch>>
/% optional:
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>%/
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 17 'unbelievable' $SEEN_STRANGER>>
<<set _tmp = "Link up with " + setup.getNpcName('npc_ai', 'first') + ".">>
<<addSearch $computer _tmp 'room_ai_chat'>>
<</if>>
<<if $npc_ai.flags.missions.milking>>
<<incrementEmotion 'affection' 'npc_ai' 5>>
<<switch $scene.style>>
<<case 'talk'>>
<<applyExperience 'smart' 10 'very' $SEEN_STRANGER>>
<<case 'fight'>>
<<applyExperience 'martial_arts' 10 'very' $SEEN_STRANGER>>
<<case 'hide'>>
<<applyExperience 'bimbofication' 17 'terrible' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<if $npc_ai.flags.missions.robot_body>>
<</if>>
<<if $npc_ai.flags.end_missions>>
<</if>>
<</if>><<set $warpinfo.configGroup.femStyle = true>>
<<configSecStyle "clothing" "underwear">><br>
<<if $warpinfo.stage >= 1>>
<<configSecStyle "clothing" "unisex">><br>
<</if>>
<<if $warpinfo.stage >= 2>>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
<<configSecStyle "submission" "chastity">><br>
<</if>>
<<configSecStyle "body" "tblock">><br>
<<configSecStyle "clothing" "female">><br>
<<configSecStyle "body" "name">><br>
<<configSecStyle "clothing" "makeup">><br>
<<if $fetish.drugs>>
<<configSecStyle "body" "pinkpill">><br>
<</if>>
<<if !$player.body_ref.penis>>
<<configSecStyle "body" "penis_remove">><br>
<</if>>
<<if $player.body_ref.vagina>>
<<configSecStyle "body" "vagina">><br>
<</if>>
<</if>>
<<if $warpinfo.stage >= 3>>
<<configSecStyle "clothing" "heels" true>><br>
<<configSecStyle "clothing" "nails" true>><br>
<<configSecStyle "body" "boiless" true>><br>
<<configSecStyle "body" "hormones" true>><br>
<<configSecStyle "sex" "milking" true>><br>
<<configSecStyle "sex" "testicle_milking" true>><br>
<<configSecStyle "submission" "sissyomatic" true>><br>
<<configSecStyle "submission" "human_toilet" true>><br>
<<configSecStyle "clothing" "purge" true>><br>
<<configSecStyle "sex" "pegging" true>><br>
<<if $fetish.tattoos>>
<<configSecStyle "clothing" "tattoo" true>><br>
<</if>>
<<configSecStyle "clothing" "butt_plug" true>><br>
<</if>>
<<if $warpinfo.stage >= 4>>
<<configSecStyle "clothing" "maid" true>><br>
<</if>>
<br>
[[Complete Fem Style Configuration|configWarp]]<<switch $player.sec_style.clothing.underwear>>
<<case "forced">>
<<set $player.flags.commando = true>>
None: Forced happens later in the day
<<if $warpinfo.stage >= 1>>
<<set $npc_manager.gotsissyset = true>>
<<set $npc_manager.flags.bad_girl.got_sissy_underwear = true>>
<<setThreshold "feminization" "bad_girl_feminization" "commando">>
<<setThreshold "submission" "bad_girl_submission" "commando">>
<<setThreshold "bimbofication" "bad_girl_bimbofication" "commando">>
<<addItem "sissy_panties_pink">>
<<addItem "sissy_garter_pink">>
<<addItem "sissy_bra_pink">>
<<addItem "sissy_stockings_pink">>
<</if>>
<<case "strict">>
<<set $npc_manager.gotsissyset = true>>
<<set $npc_manager.flags.bad_girl.got_sissy_underwear = true>>
<<setThreshold "feminization" "bad_girl_feminization" "commando">>
<<setThreshold "submission" "bad_girl_submission" "commando">>
<<setThreshold "bimbofication" "bad_girl_bimbofication" "commando">>
<<addItem "sissy_panties_pink">>
<<addItem "sissy_garter_pink">>
<<addItem "sissy_bra_pink">>
<<addItem "sissy_stockings_pink">>
<<case "obedient">>
<<setThreshold 'feminization' 'good_girl' 'alizon_package'>>
<<addItem "striped_bra_blue">>
<<addItem "striped_panties_blue">>
<<addItem "striped_stockings_blue">>
<<addEmail $computer
'Alizon.com'
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
$now
'mail_alizon_01_h'
'mail_alizon_01_t'
>>
<<case "money">>
<<applyExperience 'humiliation' 6 'normal' $SEEN_STRANGER>>
<<setThreshold 'feminization' 'money' 'mall_panties'>>
<<addCredits -40>>
<<addItem "fishnet_stockings_black">>
<<addItem "lace_garter_black">>
<<addItem "lace_thong_black">>
<<addItem "lace_bra_black">>
<<addItemWardrobe "cotton_panties">>
<<addItemWardrobe "cotton_bra">>
<<addItemWardrobe "pantyhose_black">>
<<addItemWardrobe "satin_blouse_white">>
<<addItemWardrobe "skirt_black">>
<<case "voluntary">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'exgirlfriends_panties'>>
<<addItem "cotton_panties">>
<<addItem "cotton_bra">>
<<addItem "pantyhose_black">>
<<case "enthusiast">>
<<addItem "cotton_panties">>
<<addItem "cotton_bra">>
<<addItem "pantyhose_black">>
<<addItem "technician_intro_panties_package">>
<<addTaskReq $currentTasks.manager_first_morning_inspection_task 'clothesUnderwear' 'femaleUnderwear'>>
<<setThreshold 'feminization' 'enthusiast' 'panties'>>
<</switch>>
<<if $player.sec_style.submission.chastity != "">>
<<switch $player.sec_style.submission.chastity>>
<<case "forced" "obedient" "strict" "enthusiast">>
<<set _cage = "c_cage_pink">>
<<case "money">>
/% TODO: money %/
<<applyExperience 'humiliation' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'submission' 9 'very' $SEEN_STRANGER>>
<<set _cage = "c_cage_advanced">>
<<case "voluntary">>
<<set _cage = "c_cage_steel">>
<</switch>>
<<addItem _cage>>
<<wearItem _cage true>>
<<manipulateItem _cage "lock" true>>
<<include "setLastSeenCage">>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<addItem _keyId>>
<</if>>
<<if $player.sec_style.body.tblock != "">>
<<if $player.sec_style.body.tblock == "money">>
<<set $player.work.payment += 30>>
<</if>>
<<setTmpEffect 'tblock_eternal'>>
<<addNpcTheme 'npc_manager' 'transformation' "theme_manager_penis_shrink"
0
'theme_manager_penis_shrink_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' "theme_psychiatrist_penis_shrink"
0
'theme_psychiatrist_penis_shrink_1'
false
>>
<</if>>
<<switch $player.sec_style.clothing.female>>
<<case "obedient">>
<<setThreshold "feminization" "good_girl" "cute_secretary">>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<<case "forced">>
<<setThreshold "feminization" "bad_girl_feminization" "cute_secretary">>
<<set $npc_manager.flags.bad_girl.got_pink_secretary = true>>
<<case "strict">>
<<set $npc_manager.flags.bad_girl.got_pink_secretary = true>>
<<addItem "mary_janes_pink">>
<<addItem "satin_blouse_pink">>
<<addItem "skirt_leather_pink">>
<<addItem 'satin_panties'>>
<<addItem 'pantyhose_pink'>>
<<addItem 'satin_bra'>>
<<addItem 'remote_control_plug'>>
<<setThreshold 'anal' 'plugs' 'like_a_girl'>>
<<setThreshold "feminization" "bad_girl_feminization" "historic">>
<<case "enthusiast">>
<<addItem "mary_janes_pink">>
<<addItem "satin_blouse_pink">>
<<addItem "skirt_leather_pink">>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<<addTaskReq $currentTasks.manager_first_morning_inspection_task 'clothing' 'officeFemaleClothes'>>
<<applyExperience 'feminization' 10 'normal' $SEEN_STRANGER>>
<<case "money">>
<<setThreshold "feminization" "money" "cute_secretary">>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<<case "voluntary">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'full_female_outside'>>
<<set $player.willpower.bonus += 1>>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<</switch>>
<<if $player.sec_style.clothing.female != "">>
<<addItem "sexy_nightie">>
<<set $player.locations.bodyshop = true>>
<</if>>
<<switch $player.sec_style.body.name>>
<<case "obedient" "strict">>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<<case "forced">>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<<case "money">>
<<applyExperience 'feminization' 13 'very' $SEEN_FRIEND>>
<<case "voluntary">>
<<applyExperience 'feminization' 15 'very' $ALONE>>
<<case "enthusiast">>
<</switch>>
<<if $player.sec_style.body.name>>
<<addWorkEvent 'cunnilingus_intro'>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
>>
<</if>>
<<set $player.makeup.messed = 0>>
<<switch $player.sec_style.clothing.makeup>>
<<case "obedient">>
<<set $player.makeup.template = "normalmakeup">>
<<unlockMakeup 'normalmakeup'>>
<<setThreshold 'makeup' 'makeup_instruction' 'beginner_tutorial'>>
<<case "strict">>
<<set $player.makeup.template = "normalmakeup">>
<<unlockMakeup 'normalmakeup'>>
<<case "forced">>
<<set $player.makeup.template = "">>
<<set $player.makeup.permanent = 'sissy_doll'>>
<<setThreshold 'feminization' 'dress_code' 'sissy_doll_fem'>>
<<case "money">>
<<setThreshold 'makeup' 'online_makeup' 'beginner_tutorial'>>
<<set $player.makeup.template = "normalmakeup">>
<<unlockMakeup 'normalmakeup'>>
<<case "voluntary">>
<<setThreshold 'makeup' 'online_makeup' 'beginner_tutorial'>>
<<set $player.makeup.template = "normalmakeup">>
<<unlockMakeup 'normalmakeup'>>
<<set $player.willpower.bonus += 1>>
<<case "enthusiast">>
<<setThreshold 'feminization' 'enthusiast' 'makeup'>>
<<setThreshold 'makeup' 'makeup_instruction' 'beginner_tutorial'>>
<<set $player.sec_style.clothing.makeup = "enthusiast">>
<<set $player.makeup.template = "normalmakeup">>
<<unlockMakeup "normalmakeup">>
<</switch>>
<<if $player.sec_style.clothing.makeup != "">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<</if>>
<<if $player.sec_style.clothing.nails != "">>
<<set $player.nails.length = 2>>
<<set $player.nails.color = 'skin'>>
<<set $player.nails.style = "simple">>
<<addWorkEvent 'manager_foot' '{"trigger":"afternoon","minTimeDiff":24,"type":"always","chance":100,"repeat":false,"priority":0}' '{"szene":"event_manager_foot_random_1","length":"30"}'>>
<</if>>
<<if $player.sec_style.body.boiless != "">>
<<set $player.flags.boiless.known = true>>
<<set $player.flags.boiless.tasted = true>>
<<if $player.sec_style.body.boiless == "strict">>
<<set $player.flags.mealplan.unlocked = ['boiless']>>
<<else>>
<<set $player.flags.mealplan.unlocked.pushUnique('boiless')>>
<</if>>
<</if>>
<<switch $player.sec_style.body.hormones>>
<<case "obedient">>
<<case "forced">>
<<case "money">>
<<addCredits 100>>
<<case "voluntary">>
<<set $player.flags.boiless.tasted = true>>
<</switch>>
<<if $player.sec_style.body.hormones != "">>
<<set $player.flags.mealplan.hormones_unlocked = true>>
<<set $player.flags.mealplan.hormones_required = true>>
<</if>>
<<switch $player.sec_style.sex.milking>>
<<case "obedient">>
<<set $npc_barista.flags.milking.first_seen = true>>
<<set $player.flags.work_coffee.times_work_milk += 1>>
<<case "forced">>
<<case "money">>
<<addItem 'penis_milker_box'>>
<<addItem 'breast_milker_box'>>
<<case "voluntary">>
<<addItem 'breast_milker_box'>>
<<case "enthusiast">>
<<set $player.body_ref.milkProduction = 1>>
<<case "strict">>
<<set $player.body.breastsize[1] = 10>>
<<set $player.body_ref.milkProduction = 2>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "strict">>
<</if>>
<</switch>>
<<if $player.sec_style.submission.testicle_pain != "">>
<<if $player.sec_style.submission.testicle_pain == "strict">>
<<set $player.body_ref.cumProduction = 2>>
<<else>>
<<setThreshold 'bdsm' 'manager_upbringing' 'testiclezap'>>
<</if>>
<</if>>
<<if $player.sec_style.submission.sissyomatic != "">>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('chastity')>>
<<set $player.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.knowSissyomatic = true>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_25'
1
'event_psychiatrist_session_sissyomatic'
false
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_sissyomatic_change'
3
'event_manager_theme_sissyomatic_change_1'
true
>>
<<addItem 'sissyomatic'>>
<</if>>
<<switch $player.sec_style.submission.human_toilet>>
<<case "forced" "strict">>
<<setThreshold 'piss' 'manager_piss' 'forced_toilet'>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_30'
4
'event_psychiatrist_session_forced_toilet_1'
false
>>
<<case "voluntary" "enthusiast">>
<<setThreshold 'piss' 'manager_piss' 'human_toilet'>>
<</switch>>
<<if $player.sec_style.submission.human_toilet>>
<<set $npc_manager.flags.piss_drinking.available = true>>
<</if>>
<<switch $player.sec_style.clothing.purge>>
<<case "money">>
<<addCredits 50>>
<</switch>>
<<if $player.sec_style.clothing.purge != "">>
<<destroyMaleClothing $player $now true>>
<</if>>
<<switch $player.sec_style.clothing.tattoo>>
<<case "obedient">>
<<set $player.tattoos.belly = "manager_own">>
<<set $player.piercings.nipples = true>>
<<set $shopStatus['tattoo_parlor'].unlocked_inventory.pushUnique('nipple')>>
<<addItem 'nipple_rings'>>
<<wearItem 'nipple_rings' true>>
<<case "forced">>
<<set $player.tattoos.tramp = "company_owned">>
<<set $player.piercings.nipples = true>>
<<set $shopStatus['tattoo_parlor'].unlocked_inventory.pushUnique('nipple')>>
<<addItem 'nipple_rings_large'>>
<<wearItem 'nipple_rings_large' true>>
<<case "strict">>
<<set $player.tattoos.arm = "test_arm">>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_STRANGER>>
<<case "money" "enthusiast">>
<<set _femStyle = setup.getSecretaryStyle()>>
<<switch _femStyle[0]>>
<<case 'perfect'>>
<<set _style = _femStyle[1]>>
<<case 'tie'>>
<<set _style = _femStyle[random(1,2)]>>
<<case 'unfeminized'>>
ERROR!
<<default>>
<<set _style = _femStyle[0]>>
<</switch>>
<<switch _style>>
<<case 'forced'>>
<<set $player.tattoos.back = "demon_wing">>
<<case 'money'>>
<<set $player.tattoos.back = "dragon_wing">>
<<case 'obedient'>>
<<set $player.tattoos.back = "angel_wing">>
<<case 'voluntary'>>
<<set $player.tattoos.back = "fairy_wing">>
<</switch>>
<<case "voluntary">>
<<set $player.tattoos["arm"] = "test_arm">>
<</switch>>
<<if $player.sec_style.clothing.female>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<</if>>
<<if $player.sec_style.clothing.maid != "">>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<</if>><<switch $warpinfo.stage>>
<<case 0 1>>
<<set _officeClothing = ['tie','shirt','b_trousers','shoes_black']>>
<<set _casualClothing = ["jeans","tshirt","shoes_black"]>>
<<set _sleepClothing = ["pyjama"]>>
<<case 2>>
<<if $player.sec_style.clothing.unisex == "voluntary">>
<<set _officeClothing = ["shirt_female_office_teal", "trousers_female_office_grey", "flats_black"]>>
<<else>>
<<set _officeClothing = ["shirt_female_office_teal", "trousers_female_office_grey", "flats_black"]>>
<</if>>
<<set _casualClothing = ["jeans","tshirt","shoes_black"]>>
<<set _sleepClothing = ["pyjama"]>>
<<case 3 3.5 4 4.5 5>>
<<if setup.getTotalValue("heels") >= 10>>
<<set _heels = "maid_heels_extreme_pink">>
<<addItem _heels>>
<<else>>
<<set _heels = "mary_janes_pink">>
<</if>>
<<set _officeClothing = ["satin_blouse_pink", "skirt_leather_pink", _heels]>>
<<set _sleepClothing = ["sexy_nightie"]>>
<<set _casualClothing = ["jeans","tshirt","shoes_black"]>>
<</switch>>
<<include calcUnderwearSet>>
<<set _officeClothing = _officeClothing.concat($underwearSet)>>
<<set _casualClothing = _casualClothing.concat($underwearSet)>>
<<set $clothSets = [{
"name":"Office Clothes",
"data":_officeClothing,
"important":true,
"type" : "office"
},{
"name":"Casual Clothes",
"data": _casualClothing,
"important":true,
"type" : "casual"
},{
"name":"Sleep Clothes",
"data": _sleepClothing,
"important":true,
"type" : "sleep"
}]>>
<<if $player.locations.gym>>
<<set $clothSets.push({
"name":"Workout Clothes",
"data": ["sneakers_white", 'yoga_pants_pink', 'shirt_beauty_beast', 'gym_socks'],
"important":true,
"type" : "gym"
})>>
<</if>>
<<if $player.sec_style.clothing.maid>>
<<addItemSet 'maid_basic_black'>>
<<addItem 'mary_janes_black'>>
<<addItem 'thigh_stockings_white'>>
<<set $clothSets.push({
"name":"Maid Outfit",
"data": ["maid_uniform_black", 'maid_uniform_apron', 'maid_headdress', 'mary_janes_black', 'thigh_stockings_white'],
"important":true,
"type" : "maid"
})>>
<</if>>
<<useClothSet 'Office Clothes' true>><<if $player.sec_style.submission.sissyomatic != "">>
<<set _chastity = "sissyomatic">>
<<elseif $player.sec_style.submission.sissyomatic != "">>
<<switch $player.sec_style.submission.chastity>>
<<case "forced" "obedient" "strict" "enthusiast">>
<<set _chastity = "c_cage_pink">>
<<case "money">>
<<set _chastity = "c_cage_advanced">>
<<case "voluntary">>
<<set _chastity = "c_cage_steel">>
<</switch>>
<<if $warpinfo.stage2.small_chastity>>
<<set _chastity = 'chastity_cage_tiny'>>
<</if>>
<<else>>
<<set _chastity = "">>
<</if>>
<<if _chastity != "">>
<<wearItem _chastity true>>
<<manipulateItem _chastity "lock" true>>
<<if _chastity != 'sissyomatic' && $npc_manager.flags.trustplayerwithkey>>
<<set _keyId = setup.getItemObj(_chastity).lockable[1]>>
<<addItem _keyId>>
<</if>>
<</if>>
<<if $npc_manager.stage >=3 && _chastity != 'sissyomatic'>>
<<wearItem "remote_control_plug" true>>
<</if>><<set $warpinfo.configGroup.sideJob = true>>
<<if $warpinfo.stage >= 3>>
Mall Maid Cafe:<br>
<label>Locked: <<radiobutton "$warpinfo.maidcafe" 0 checked>></label><br>
<label>In training: <<radiobutton "$warpinfo.maidcafe" 1>></label><br>
<label>Training Complete: <<radiobutton "$warpinfo.maidcafe" 2>></label><br>
<label>Worked Some: <<radiobutton "$warpinfo.maidcafe" 3>></label><br>
<label>Mastered Working: <<radiobutton "$warpinfo.maidcafe" 4>></label><br>
<br>
Cafe 52:<br>
<label>Locked: <<radiobutton "$warpinfo.maid52" 0>></label><br>
<label>Can Work: <<radiobutton "$warpinfo.maid52" 1>></label><br>
<label>Can Work Milk: <<radiobutton "$warpinfo.maid52" 2>></label><br>
<label>Mastered Working: <<radiobutton "$warpinfo.maid52" 3>></label><br>
<br>
Cleaning Apartments:<br>
<<npcMaidStageSelection "Maid Theft" 2 "maid_theft">>
<<npcMaidStageSelection "Maid Pervert" 4 "maid_pervert">>
<<npcMaidStageSelection "Maid Mistress" 3 "maid_mistress">>
<<npcMaidStageSelection "Maid Dog Owners" 3 "maid_dog">>
<br><br>
Nurse Work:<br>
<label>Locked: <<radiobutton "$warpinfo.nurse" 0>></label><br>
<label>Can Work: <<radiobutton "$warpinfo.nurse" 1>></label>
<br><br>
Note: working in the executive bathroom is handled by the associated secretary style flag
<</if>>
<br><br>
<<if $warpinfo.stage > 0>>
<<include prostitutionConfig>><br>
<</if>>
<br>
[[Complete Side Job Configuration|configWarp]]<<if $warpinfo.maidcafe >= 1>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('bunny')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('bunny')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('cat')>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('bunny')>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('cat')>>
<</if>>
<<switch $warpinfo.maidcafe>>
<<case 1>>
<<set $player.flags.maidcafe.stage = 2>>
<<case 2>>
<<set $player.flags.maidcafe.stage = 3>>
<<case 3>>
<<set $player.flags.maidcafe.stage = 3>>
<<set $player.flags.maidcafe.times_worked = 3>>
<<case 4>>
<<set $player.flags.maidcafe.stage = 3>>
<<set $player.flags.maidcafe.events.plugged = true>>
<<set $player.flags.maidcafe.times_worked = 5>>
<</switch>>
<<switch $warpinfo.maid52>>
<<case 1>>
<<set $player.flags.work_coffee.times_worked = 3>>
<<set $player.flags.work_coffee.coffee_skill = 1>>
<<addItem "maid_uniform_latex_black">>
<<addItem 'maid_headdress_latex_black'>>
<<case 2>>
<<addItem "maid_uniform_latex_black">>
<<addItem 'maid_headdress_latex_black'>>
<<set $player.flags.work_coffee.times_worked = 3>>
<<set $player.flags.work_coffee.coffee_skill = 5>>
<<case 3>>
<<addItem "maid_uniform_latex_black">>
<<addItem 'maid_headdress_latex_black'>>
<<set $player.flags.work_coffee.coffee_skill = 10>>
<<set $player.flags.work_coffee.times_worked = 5>>
<<set $player.flags.work_coffee.lewd_accepted.bj = true>>
<<set $player.flags.work_coffee.lewd_accepted.hj = true>>
<<set $player.flags.work_coffee.lewd_accepted.whip = true>>
<<set $player.flags.work_coffee.lewd_accepted.milk = true>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_4'
0
'event_ai_sex_lesson_oral_1'
true
>>
<</switch>>
<<switch $warpinfo.nurse>>
<<case 1>>
<<set $npc_work_doctor.stage = 3>>
<</switch>>
<<include prostitutionHandler>><<set $warpinfo.configGroup.therapist = true>>
<<include hypnoConfig>>
<br><br>
[[Complete Therapist Configuration|configWarp]]<<set $warpinfo.configGroup.barista = true>>
<<set $warpinfo.barista = {}>>
<label>Can Meet? <<checkbox "$npc_barista.flags.can_meet" false true checked>></label><br>
<label>Given Video? <<checkbox "$npc_barista.flags.video.unlocked" false true checked>></label><br>
<label>Taught Bimbo makeup? <<checkbox "$npc_barista.flags.taughtbimbomakeup" false true checked>></label><br>
<br>
[[Complete Barista Configuration|configWarp]]<<if $npc_barista.flags.taughtbimbomakeup>>
<<setThreshold "makeup" "online_makeup" "barista_tips">>
<<unlockMakeup "nomakeupmakeup">>
<<unlockMakeup "normalmakeup">>
<<unlockMakeup "ultimatebimbo">>
<</if>>NYINYINYINYI<<include "addManagerPrivateTopics">>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('sissy_chokers')>>
NYINYINYI/*#
#desc: initializes the game: very first passage of the game set by tweego!
#status: FINISHED 0.5.0.0
#*/
<<initJquery>>
<<set $debug = false>>
<<set $forceEvents = false>>
<<set $start_version = setup.getVersion()>>
<<include initGameVariables>>
/* PLAYER */
<<include initGameData>>
<<include otherData>>
<<include initShops>>
<<initSoMuchData>>
<<goto 'room_start_game'>>/*#
#desc: init game variables
#status: FINISHED 0.5.0.0
#*/
<<set $now = new Date(Date.UTC(2033, 5, 28, 7, 5, 0))>>
<<if !$scene>>
<<set $scene = {}>>
<</if>>
<<if $daily>>
<<set $daily = {}>>
<</if>>
<<set $scene.lookItem to "">>
<<if !$debug>>
<<set $startgame = false>>
<<else>>
<<set $startgame = true>>
<</if>>
<<set $scene.errorMessage = "">>
<<set $scene.resting = false>>
<<set $roomchange = false>>
<<set $currentcall = false>>
<<set $scene.tutText = "">>
<<set $options={
tutorial:true,
sound:true,
pixelfont:{
values:["pixel",'none','cyrillic','cyrillic-pixel','dyslexic'],
value:"pixel",
org_value:"pixel"
},
easyInventory:true,
militaryTime:true,
disableSynonyms:false,
keyBoardShortcuts:true,
epilepsy:false,
invNoHist:true,
zoom:{
values:["100%","75%","50%"],
value:"100%",
org_value:"100%",
},
history:{
values:[10,15,20,30],
value:30,
org_value:30
},
showxp:true,
showcapxp: false,
impatient:false,
ezchange:true,
showTooltips: true,
basicInventory: "Original",
basicIconsize: "1.0",
xpBoost: {
values:['1x','2x','5x','10x'],
value:'5x',
org_value:'5x'
},
progSpeed: {
values:["turtle (~biweekly)", "slow (~weekly)", "med (~twice a week)", "llama (~thrice a week)", "turbo (daily)"],
value:'med (~twice a week)',
org_value:'med (~twice a week)'
},
stackedImage: {
values:["Enable All", "Disable Poker", "Disable Multi-Char", "Disable All"],
value: 'Enable All',
org_value: 'Enable All'
},
autosave:"daily",
fem:false,
fem_all_women : false,
fem_all_men : true,
isMobile: false,
displayAchievName : false,
displayAchievAll : false,
prawnMode : false,
cuckMode : false
}>>
<<set $options.isMobile = setup.isMobile()>>
<<set $scene.mangedWear = false>>
<<set $ALONE = 0>>
<<set $INCOGNITO = 0.25>>
<<set $SEEN_STRANGER = 0.5>>
<<set $SEEN_FRIEND = 0.75>>
<<set $EXPOSED = 1>>
<<set $fetish = {
"tattoos" : false,
"piss" : false,
"bestiality_soft" : false,
"bestiality_hard" : false,
"rape" : false,
"get_raped" : false,
"cum" : true,
"penis" : true,
"humiliation" : true,
"feminization" : true,
"bladerunner" : false,
"bladerunner2": false,
"bimbofication" : true,
"inflation" : false,
"work_sex" : true,
"work_lewd" : true,
"work_harassment" : true,
"pet_play" : false,
"bondage" : true,
"chastity_penis" : true,
"chastity_vag" : true,
"daddy" : false,
"milking" : false,
"penis_milking" : false,
"catcall" : false,
"karmic_harass" : false,
"harass" : false,
"slurs" : false,
"sph" : false,
"tentacle" : false,
"grope" : false,
"sissy" : true,
"pegging_is_anal" : false,
"drugs" : false,
"hypnosis" : false,
"fisting" : true,
"cat" : true,
"futanari" : false,
"sounding" : true,
"hair_growth" : true,
"penis_shrink" : true,
"penis_remove" : true
}>>
<<include initRandomEvents>>
<<set $sceneVisibility = $ALONE>>/*#
#desc: adding player start items and clothes
#status: FINISHED 0.5.0.0
#*/
<<addItem "pyjama">>
<<wearItem "pyjama">>
<<addItemWardrobe "boxershorts">>
<<addItemWardrobe "shirt">>
<<addItemWardrobe "socks">>
<<addItemWardrobe "b_trousers">>
<<addItemWardrobe "tie">>
<<addItemWardrobe "tshirt">>
<<addItemWardrobe "jeans">>/*#
#desc: add start events, emails and topics
#status: FINISHED 0.5.0.0
#*/
<<set _nextDate = setup.setNextDate($now, 3, 6, 30)>>
<<addEvent 'rent_first' _nextDate>>
<<set _data1 = setup.setNextDate($now, -14, 7, 33)>>
<<addEmail $computer
'Manbert Habakuck'
'<<=$player.first_name>> <<=$player.last_name>>'
true
false
_data1
'spam01_h'
'spam01_t'>>
<<set _data2 to setup.setNextDate($now, -1, 7, 33)>>
<<addEmail $computer
'Dumi Sissifica'
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
_data2
'spam02_h'
'spam02_t'>>
<<set _tmpTime = new Date(Date.UTC(2033, 5, 28, 8, 3, 0))>>
<<addEvent 'prologue_company_call' _tmpTime>>
<<addNpcTheme 'npc_psychiatrist' 'ex_girlfriend' 'theme_psychiatrist_ex_0'
0
'event_psychiatrist_session_girlfriend_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_0'
0
'event_psychiatrist_session_manager_1'
false
>>
<<addNpcTheme 'npc_admin' 'recent' 'theme_admin_recent_0'
0
'event_admin_theme_recent_breakup'
false
>>
<<addNpcTheme 'npc_barista' 'work' 'theme_barista_work_1'
0
'theme_barista_manager'
false
>>
<<addNpcTheme 'npc_barista' 'work' 'theme_barista_work_3'
0
'theme_barista_predecessor'
false
>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_life_3'
0
'theme_barista_psychiatrist_1'
false
>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_life_4'
0
'theme_barista_past'
false
>>
<<addNpcTheme 'npc_barista' 'life' 'theme_barista_life_2'
0
'theme_barista_life'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_2'
0
'theme_tblock_voluntary_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'ex_girlfriend' 'theme_psychiatrist_ex_1'
0
'theme_psychiatrist_tblock_money_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'therapy' "theme_psychiatrist_transition_enthusiast"
0
'event_secretary_style_hypno_enthusiast_1'
false
>>/*#
#desc: initialize game variables
#status: FINISHED 0.4.0.0
#*/
<<set $status_flat = {
wardrobe : "room_bedroom_wardrobe_1",
bedroom : 0,
toilet : 0,
livingroom: 0,
kitchen: 0,
computerroom: 0
}>>
<<set $phoneList = [
"npc_admin","npc_exgirlfriend"
]>>
<<set $computer = {
sort: "date",
sortdir: -1,
upgrades: {},
list_emails: [],
list_surf: [],
online_uni: {
visited: false,
level: 0,
},
}>>
<<set $bed = {
sort: "date",
sortdir: -1,
upgrades: {},
}>>
<<set $bathroom = {
upgrades: {}
}>>/*#
#desc: start game warning screen
#status: FINISHED 0.4.0.0
#ignore_spell: subscribestar,tfg,]content
#*/
<br>
<div align="middle" style="color:red">A FAIR WARNING!</div><br>
<br>
This game is still in active development! While the game is large and playable, it is not complete and (like all software) there may yet be the odd bug. New content is released for free every other month; if you would like to help with early testing/participate in polls to choose which content gets prioritised for release you can join us on [<a target="_blank" href="https://subscribestar.adult/deedee">SubscribeStar</a>] or [<a target="_blank" href="https://www.patreon.com/_deedee">Patreon</a>]. If you have any questions find us on:<br>
<div align="middle"><a target="_blank" href="https://discord.gg/XShMmqr">Secretary Discord Server</a></div>
<div align="middle"><a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents">Secretary Wiki</a></div>
<div align="middle"><a target="_blank" href="https://twitter.com/SecretaryGame">Secretary Twitter</a></div>
<div align="middle"><a target="_blank" href="https://www.reddit.com/r/secretarygame/">Secretary Reddit</a></div>
<div align="middle">Or check out the <a target="_blank" href="https://tfgames.site/phpbb3/viewtopic.php?t=10166">TFG Forum Secretary Thread</a></div>
<div align="middle"><a target="_blank" href="https://www.redbubble.com/people/secretarygame/shop?artistUserName=secretarygame&iaCode=all-departments&sortOrder=relevant">Merch Store</a></div>
<br>
Content note:<br>
Depending on playstyle, the game can involve some potentially personal transgender themes, though hopefully in a positive (if... kinky) manner — we hope all* of you enjoy the game, however you play it; but also recommend speaking with more experienced/less porn sources about such matters if you have further questions. Trans women are women, trans men are men.<br>
<br>
*<a target="_blank" href="https://rpgmuseum.fandom.com/wiki/No_fascists">Olivia Hill Rule Here.</a><br>
<br>
<div align="middle">Thank you for playing!</div>
<br>
<div align="middle">[<<link "Start Game">><<goto choose_name>><</link>>]</div>/*#
#desc: choose PC/NPC names at start of game
#status: FINISHED 0.4.0.0
#*/
<<set $cruelMode = false>>
<<set $start_version = setup.getVersion()>>
<<printNameChange "You (The Player Character — Male)" $player>><br>
<br>
<<printNameChange "A Fierce Manager (Woman)" $npc_manager>><br>
<br>
An Old Friend (<<link "<<Man npc_admin>>">><<femChangeFirst "npc_admin">><<=Engine.play("choose_name",true)>><</link>>)<<printNameChange "" $npc_admin>><br>
<br>
<<printNameChange "The Friendly, Nerdy Tech Wizard (Woman)" $npc_technician>><br>
<br>
<<printNameChange "A Psychiatrist (Woman)" $npc_psychiatrist>><br>
<br>
<<printNameChange "Your Ex-Girlfriend (Woman)" $npc_exgirlfriend>><br>
<br>
Your <<if $npc_landlord.fem>>Landlady<<else>>Landlord<</if>> (<<link "<<Man npc_landlord>>">><<femChangeFirst "npc_landlord">><<=Engine.play("choose_name",true)>><</link>>)<<printNameChange "" $npc_landlord>><br>
<br>
<<printNameChange "A Future Coworker (Woman)" $npc_pr_sissy>><br>
<br>
[<<link "Change NPC Gender">><<sanitizeNames>><<=Engine.play("fem_change_options", false)>><</link>>]<br>
<br>
Avatar:
<label>Light-skin Avatar: <<radiobutton "$player.skintone" "light" autocheck>></label>
<label>Dark-skin Avatar: <<radiobutton "$player.skintone" "dark" autocheck>></label><br>
<label>Font: <<createFontChoice>></label><br>
<label>Sound: <<createCheckBox $options.sound "$options.sound">></label>
<label>Epilepsy Mode (disables flashing videos): <<createCheckBox $options.epilepsy "$options.epilepsy">></label><br>
<label>Keyboard Shortcuts: <<createCheckBox $options.keyBoardShortcuts "$options.keyBoardShortcuts">></label><br>
<label>Impatient Mode (removes delay from all "timed" passages): <<createCheckBox $options.impatient "$options.impatient">></label><br>
<label>Progression Speed: <<createRadioButton $options.progSpeed "$options.progSpeed" true>></label> <<hint $options "Will force progression events at higher speed if randomness does not smile on you.">><br>
<label>Story Mode XP Multiplier: <<createRadioButton $options.xpBoost "$options.xpBoost" true>></label><br>
<label>Cruel Mode: <<createCheckBox $cruelMode "$cruelMode" true>> (enable cruel mode for Manager and Therapist from game start, will have a significant effect on game tone.)</label><br>
<label>Mobile Compatibility: <<createCheckBox $options.isMobile "$options.isMobile">> (enable for mobile compatibility version of certain passages): <<if setup.isMobile()>>Auto-detected you are playing on mobile<<else>>Auto-detected you are not playing on mobile<</if>>.</label><br>
<<if setup.isMobile()>>
<label>Stacked Images: <<createRadioButton $options.stackedImage "$options.stackedImage" true>></label> <<hint $options "Disabling stacked images may help performance on some older phones.">><br>
<</if>>
Note: these and other options can be changed at any time in the games options menu.<br>
Content Note: much of the game experience can be tweaked via options->fetishes including presence of chastity and certain terminology.<br>
<br>
[<<link "Start New Game">><<checkOptions $options>><<set $startgame = true>><<sanitizeNames>><<goto firstScene>><</link>>]
<br><br>
[<<link "Warp System (Start Later in the Game)">><<checkOptions $options>><<set $startgame = true>><<sanitizeNames>><<goto quicklink_root>><</link>>]/*#
#desc: start game
#status: FINISHED 0.4.0.0
#ignore_spell: subscribestar,css,ui,]we,]stuck,]thank
#*/
<<run UI.unstow()>>
<<if setup.isDeprecated()>>
<<openDialog "ALERT: DEPRECATED VERSION" "deprecatedVersionDialog">>
<</if>>
<div id="start_image" align="middle">
<<if $options.prawnMode>>
<img src="./images/others/joke/startscreen.png" height=auto width=100%><br>
<<else>>
<img src="./images/others/startscreen.png" height=auto width=100%><br>
<<endif>>
[<<link "New Game">>
<<set $player.plocation = "room_bedroom">>
<<goto game_startgame>>
<</link>>]
<br>
[<<link "Load Game">><<script>>UI.saves()<</script>><</link>>]<br>
[[[Image Gallery|conceptArtPage][$scene.showFem = false; $scene.conceptCharacter=""]]]
<<hint $options "Images are unlocked through gameplay.<br>This link will show unlocks across all current saves.<br>Access gallery in-game from profiles or options menu.">><br>
[<<link "Deserialise Raw String">><<debugImport>><</link>>] <<hint $options "Compatibility mode: use these to deserialise a raw string save.">><br>
[<<link "Credits">>
<<goto game_credits_start>>
<</link>>]<br>
<br>
<<set _showAll=true>>
Version: <<getVersion>> [<<link "Changelog">><<openDialog "Changelog" "newVersionDialog">><</link>>]<br>
If you like the game, please support us on [<a target="_blank" href="https://subscribestar.adult/deedee">SubscribeStar</a>] or [<a target="_blank" href="https://www.patreon.com/_deedee">Patreon</a>]<br>
We also have a [<a target="_blank" href="https://www.redbubble.com/people/secretarygame/shop?artistUserName=secretarygame&iaCode=all-departments&sortOrder=relevant">Merch Store (External Link)</a>]<br>
Stuck? Check the wiki — [<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents">Secretary Wiki</a>]<br>
Thank you for playing!
</div>
<<timed 0.1s >><<script>>
$("#ui-notification").css("display", "none");
<</script>><</timed>>
<<notificationFeedStopAccepting>>/*#
#desc: start game
#status: FINISHED 0.4.0.0
#*/
<<include addStartItems>>
<<include addStartEvents>>
/* OTHER DATA */
<<storeVisual $player $npc_exgirlfriend>>
<<storeVisual $player $npc_admin>>
<<goto 'a_fair_warning'>>/*#
#desc: initializes shops with initial inventory
#status: RELEASED 0.6.0.0
#*/
<<set $shopStatus = {
"mall_apparel_store" : {
"unlocked_inventory" : ["initial"]
},
"mall_glasses" : {
"unlocked_inventory" : ["initial"]
},
"mall_lingerie_shop" : {
"unlocked_inventory" : ["initial"]
},
"mall_lingerie_shop_fetish" : {
"unlocked_inventory" : ["initial"]
},
"mall_shoe_store" : {
"unlocked_inventory" : ["initial"]
},
"mall_sexstore" : {
"unlocked_inventory" : ["initial"]
},
"mall_wholesale_store" : {
"unlocked_inventory" : ["initial"]
},
"gym" : {
"unlocked_inventory" : ["initial"]
},
"tattoo_parlor" : {
"unlocked_inventory" : ["initial"]
},
"mall_special_interest" : {
"unlocked_inventory" : ["initial"]
}
}>>/*#
#desc: boilerplate for stubbed-out future content
#status: RELEASED 0.7.8.0
#ignore_spell: subscribestar
#*/
FUTURE CONTENT! <<=$scene.contentName>> will be coming in a future release, for the latest details on upcoming content visit us on [<a target="_blank" href="https://subscribestar.adult/deedee">SubscribeStar</a>] or [<a target="_blank" href="https://www.patreon.com/_deedee">Patreon</a>]!<<set _reason = setup.checkOutsideDecencyReason()>>
<<switch _reason>>
<<case "female">>
<<if $npc_manager.stage < 2>>
<<set _outsideDecencyReason = "Your clothing feel too feminine to wear in public at this time.">>
<<else>>
<<set _outsideDecencyReason = "Your clothing feels too feminine to be seen in public.">>
<</if>>
<<case "unisex">>
<<set _outsideDecencyReason = "Your clothing feels too androgynous to be seen in public.">>
<<case "male">>
<<set _outsideDecencyReason = "Your clothing feels too masculine to be seen in public.">>
<<case "makeup_too_fem">>
<<set _outsideDecencyReason = "Your makeup feels too feminine to be seen in public.">>
<<case "makeup_none">>
<<set _outsideDecencyReason = "You can't go out in public without makeup!">>
<<case "makeup_messy">>
<<set _outsideDecencyReason = "You can't go out in public with ruined makeup!">>
<<case "collar">>
<<set _outsideDecencyReason = "You can't be seen in public without a collar!">>
<<case "chastity">>
<<set _outsideDecencyReason = "You don't feel comfortable in public out of chastity.">>
<<case "chastity_vag">>
<<set _outsideDecencyReason = "You feel like you should be in more secure chastity, you should go home and put on a belt, for safety.">>
<<case "barefoot">>
<<set _outsideDecencyReason = "You can't go running around in public barefoot.">>
<<case "no_stockings">>
<<set _outsideDecencyReason = "My shoes rubbing against my skin is uncomfortable, I need <<if $player.sec_style.clothing.female==''>>socks<<else>>stockings<</if>>.">>
<<case "heels_high">>
<<set _outsideDecencyReason = "Your heels are too tall for you to be walking around in.">>
<<case "heels_short">>
<<set _outsideDecencyReason = "Your heels are too short!">>
<<case "heels_none">>
<<set _outsideDecencyReason = "You need to be wearing heels!">>
<<case "breasts">>
<<set _outsideDecencyReason = "You need to cover your breasts!">>
<<case "panties">>
<<set _outsideDecencyReason = "You can't run around flashing your underwear!">>
<<case "bra">>
<<set _outsideDecencyReason = "You can't go out with your bra exposed!">>
<<case "underwear">>
<<set _outsideDecencyReason = "You can't run around flashing your undergarments!">>
<<case "indecent" "undressed">>
<<set _outsideDecencyReason = "You need to cover up more!">>
<<case "no_bra">>
<<set _outsideDecencyReason = "This outfit does not provide enough breast support!">>
<<case "bondage">>
<<set _outsideDecencyReason = "You can't go out in public in bondage!">>
<<case "commando">>
<<set _outsideDecencyReason = "You don't want to run around commando!">>
<<case "naked">>
<<set _outsideDecencyReason = "You can't go out in public naked!">>
<<case "penis">>
<<if $player.body_ref.penis>>
<<set _outsideDecencyReason = "You can't go out in public flashing your <<getWordMyPenis>>!">>
<<else>>
<<set _outsideDecencyReason = "You can't go out exposing your <<getWordVagina>>!">>
<</if>>
<<case "">>
<<set _outsideDecencyReason = "Unexpected error.">>
<<default>>
<<if setup.checkItemOwned(_reason)>>
<<set _outsideDecencyReason = "You don't feel like being seen wearing " + setup.getItemName(_reason) + " in public...">>
<<else>>
ERROR: unexpected outside item reason: <<=_reason>>
<</if>>
<</switch>><<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.hollow_plug = setup.getItemFromType("hollow_plug")>>
<<set $scene.plug_ems = false>>
<<set $scene.plug_vibe = false>>
<<if $scene.plug != "">>
<<set $scene.plug_ems = setup.getItemObj($scene.plug).tags.includes("ems") || $scene.hollow_plug != "" && setup.getItemObj($scene.hollow_plug).tags.includes("ems")>>
<<set $scene.plug_vibe = setup.getItemObj($scene.plug).tags.includes("vibrating") || $scene.hollow_plug != "" && setup.getItemObj($scene.hollow_plug).tags.includes("vibrating")>>
<</if>><<if setup.hasTmpEffect('tipsy')>>
<<cancelTmpEffect 'tipsy'>>
<</if>>
<<if setup.hasTmpEffect('drunk')>>
<<cancelTmpEffect'drunk'>>
<</if>>
<<if setup.hasTmpEffect('wasted')>>
<<cancelTmpEffect'wasted'>>
<</if>>
<<if setup.hasTmpEffect('hangover')>>
<<cancelTmpEffect'hangover'>>
<</if>>
<<if setup.hasTmpEffect('bimbo_suppressant')>>
<<cancelTmpEffect'bimbo_suppressant'>>
<</if>>
<<if setup.hasTmpEffect('bimbo_suppressant_hangover')>>
<<cancelTmpEffect'bimbo_suppressant_hangover'>>
<</if>>
<<if setup.hasTmpEffect('bimbo_candy')>>
<<cancelTmpEffect'bimbo_candy'>>
<</if>>
<<if setup.hasTmpEffect('unknown_candy')>>
<<cancelTmpEffect'unknown_candy'>>
<</if>>
<<if setup.hasTmpEffect('drug_breast')>>
<<cancelTmpEffect'drug_breast'>>
<</if>>
<<if setup.hasTmpEffect('drug_ditzy')>>
<<cancelTmpEffect'drug_ditzy'>>
<</if>>
<<if setup.hasTmpEffect('drug_slave')>>
<<cancelTmpEffect'drug_slave'>>
<</if>>
<<if setup.hasTmpEffect('drug_dick')>>
<<cancelTmpEffect'drug_dick'>>
<</if>>
<<if setup.hasTmpEffect('drug_smart')>>
<<cancelTmpEffect'drug_smart'>>
<</if>>
<<if setup.hasTmpEffect('drug_master')>>
<<cancelTmpEffect'drug_master'>>
<</if>>
<<if setup.hasTmpEffect('drug_hucow')>>
<<cancelTmpEffect'drug_hucow'>>
<</if>>
<<if setup.hasTmpEffect('drug_pickmeup_candy')>>
<<cancelTmpEffect'drug_pickmeup_candy'>>
<</if>>
<<if setup.hasTmpEffect('drug_super_penis')>>
<<cancelTmpEffect'drug_super_penis'>>
<</if>>
<<if setup.hasTmpEffect('drug_horny')>>
<<cancelTmpEffect'drug_horny'>>
<</if>>
<<if setup.hasTmpEffect('drug_pacification')>>
<<cancelTmpEffect 'drug_pacification'>>
<</if>>
<<if setup.hasTmpEffect('drug_chuck_egg')>>
<<cancelTmpEffect 'drug_chuck_egg'>>
<</if>>
<<if setup.hasTmpEffect('sexdoll_drug')>>
<<cancelTmpEffect 'sexdoll_drug'>>
<</if>>/*#
#desc: list information about your expenses
#status: FINISHED 0.8.3.0
#*/
<div class="dialog_div">
<<set _mealplan = setup.getMealplanInfo($player.flags.mealplan.base)>>
<hr>
Daily Expenses:<br>
(will be auto-deducted from your account at midnight)<br>
Food:<br><<=_mealplan.name>>
<<if $player.flags.mealplan.base != 'boiless' || $currentTasks.hasOwnProperty('psychiatrist_boiless_review') && $currentTasks.psychiatrist_boiless_review.finished>>
<<=_mealplan.daily_price>> Cr/day<br>
<<set _expense = _mealplan.daily_price * 30>>
<<else>>
FREE trial!<br>
<<set _expense = 0>>
<</if>>
Monthly Food Total: <<=_expense>> Cr/Month<br>
<br>
<hr>
Monthly Expenses:<br>
(to be paid on the first of the month)<br>
Base Rent: <<=$player.money.base_rent>> Cr/month<br>
<<set _expense += $player.money.base_rent>>
<<if State.hasPlayed("event_landlord_post_surgery_1")>>
<<set _expense -= $player.money.base_rent>>
Rent Reduction: <<=$player.money.base_rent>> Cr/month<br>
<<elseif $player.money.rent_reduction > 0>>
<<set _expense -= $player.money.rent_reduction>>
<<if $player.money.rent_reduction > 0>>
Rent Reduction: <<=$player.money.rent_reduction>> Cr/month<br>
<<elseif $player.money.rent_reduction < 0>>
Rent Increases: <<=$player.money.rent_reduction>> Cr/month<br>
<</if>>
<</if>>
<<if $gym.membership.active>>
Gym Membership:
<<if !State.hasPlayed("event_gym_contest_7_win")>>
<<set _expense += $gym.membership.monthly_price>>
<<=$gym.membership.monthly_price>> Cr/month<br>
<<else>>
Free!<br>
<</if>>
<</if>>
<<if $player.money.other_expenses > 0>>
<<set _expense += $player.money.other_expenses>>
Pet Supplies: <<=$player.money.other_expenses>> Cr/month<br>
<</if>>
<br>
<hr>
Total: <<=_expense>> Cr/Month<br>
<hr>
@@.textRightSide;
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<</button>>@@
</div><<set _hasThisWeekendEvent =
$currentTasks.hasOwnProperty('task_landlord_weekend') && !$currentTasks.task_landlord_weekend.finished && setup.daysToDate($now,setup.getTaskDueDate('task_landlord_weekend')) < 7
|| $currentTasks.hasOwnProperty('task_corporate_retreat') && !$currentTasks.task_corporate_retreat.finished && setup.daysToDate($now,setup.getTaskDueDate('task_corporate_retreat')) < 7
|| $events.hasOwnProperty('barista_rescue_final') && setup.daysToDate($now,$events.barista_rescue_final.trigger.date) < 7
|| $currentTasks.hasOwnProperty('ceo_visit_first') && !$currentTasks.ceo_visit_first.finished && setup.daysToDate($now,setup.getTaskDueDate('ceo_visit_first')) < 7
|| $currentTasks.hasOwnProperty('ceo_visit_repeat') && !$currentTasks.ceo_visit_repeat.finished && setup.daysToDate($now,setup.getTaskDueDate('ceo_visit_repeat')) < 7>>
<<set _hasNextWeekendEvent =
$currentTasks.hasOwnProperty('task_landlord_weekend') && !$currentTasks.task_landlord_weekend.finished && setup.daysToDate($now,setup.getTaskDueDate('task_landlord_weekend')) >= 7
|| $currentTasks.hasOwnProperty('task_corporate_retreat') && !$currentTasks.task_corporate_retreat.finished && setup.daysToDate($now,setup.getTaskDueDate('task_corporate_retreat')) >= 7
|| $events.hasOwnProperty('barista_rescue_final') && setup.daysToDate($now,$events.barista_rescue_final.trigger.date) >= 7
|| $currentTasks.hasOwnProperty('ceo_visit_first') && !$currentTasks.ceo_visit_first.finished && setup.daysToDate($now,setup.getTaskDueDate('ceo_visit_first')) >= 7
|| $currentTasks.hasOwnProperty('ceo_visit_repeat') && !$currentTasks.ceo_visit_repeat.finished && setup.daysToDate($now,setup.getTaskDueDate('ceo_visit_repeat')) >= 7>>/*#
#desc: version info
#status: RELEASED 0.7.0.0
#ignore_spell: ui,cuck,morgane5040
#*/
Welcome to Version <<=setup.getVersion()>>!<br>
<<if setup.isPrerelease()>>
This is a pre-release test version. These versions are for testing and are liable to be missing art + be buggier than public builds. During prerelease frequent bugfix builds are posted to the <a target="_blank" href="https://discord.gg/XShMmqr">Secretary Discord Server</a> in the patron #bugs channel — access to this channel requires linking a [<a target="_blank" href="https://subscribestar.adult/deedee">SubscribeStar</a>] or [<a target="_blank" href="https://www.patreon.com/_deedee">Patreon</a>] account. Thanks to all of our contributors and testers, your help allows us to release a much more complete and polished game!<br>
<br>
Note: while saves should always be able to be carried forward from an old version to a new one, the reverse is not true. Loading your save into a pre-release version will likely make it unusable if you subsequently attempt to revert to the older, public version. YOU HAVE BEEN WARNED.<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.9.4.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/094">Wiki Guide to 0.9.4 Content</a><br>
0.9.4.0 It Had To Fit Somewhere features:<br>
<br>
<<if $npc_landlord.first_name=="Kurt">><<=setup.getNpcName("npc_landlord","first")>>-eous Therapy<<else>>Therapuatic Cleaning<</if>>:<br>
-Therapy event with your boyfriend, <<=setup.getNpcName("npc_landlord","first")>>.<br>
-Over 1.9k words and 11 new passages<br>
<br>
Nun-thing For It:<br>
-Nun event with <<=setup.getNpcName('npc_nun_grace', 'formal')>>.<br>
-Nun event with <<=setup.getNpcName('npc_nun_constance', 'formal')>> and <<=setup.getNpcName('npc_nun_patience', 'formal')>>.<br>
<<if $fetish.bestiality_hard>>-Nun event with <<=setup.getNpcName('npc_nun_unity', 'formal')>>.<br><</if>>
-Church baptism event.<br>
-Over 8.5k words and 43 new passages<br>
<br>
A Full Set:<br>
-Side quest/set of achievs for collecting panties from various characters.<br>
-18 new pairs of panties to collect.<br>
-Over 12.4k words and 74 new passages<br>
<br>
NaNoWriMo Extravaganza:<br>
-16 Additional scenes chosen by backers and written as part of [<a target="_blank" href="https://nanowrimo.org/">NaNoWriMo</a>].<br>
-Scene Winner 1: All About Your Mind/All That Talking Makes Me Thirsty.<br>
-Scene Winner 2: Body and Spirit/Lean Girls.<br>
-Scene Winner 3: Boyfriends and Exes/Flat Bitch.<br>
-Scene Winner 4: Close Supervision/Working Lunch.<br>
-Scene Winner 5: Housemates/Should Have Done This Awhile Ago.<br>
-Scene Winner 6: Interdepartmental Training/Not-So-Strangers with Candy... With Strangers.<br>
-Scene Winner 7: More than a Job/Corporate Espionage.<br>
-Scene Winner 8: Odds in your Ends/Free The Nipples!<br>
-Scene Winner 9: Pornish Pursuits/Why Buy The Milk When You Can Have the Cow?<br>
-Scene Winner 10: Selling It/Professional Therapy.<br>
-Scene Winner 11: Taking Care of Public Relations/Robotic Relations.<br>
-Scene Winner 12: The Machine Goddess/Computer Controlled.<br>
-Scene Winner 13: Working Retail/Securing a Sale.<br>
-Scene Winner 14: The Wonderful Wizard of Tech/Applying Peer Pressure.<br>
-Scene Winner 15: The Machine Goddess/Compu-Cow.<br>
-Bonus Scene 1: Boyfriends and Exes/Ex Around Town.<br>
-Bonus Scene 2: Odds in your Ends/Encouraging Customer Loyalty.<br>
-Bonus Scene 3: All About Your Mind/Therapy For the Working Girl.<br>
-Over 36.7k words and 161 new passages<br>
<br>
Skip, Skip, Skipping Along:<br>
-As voted by backers!<br>
-Speed-up options to allow skipping through partial/full days of "repeat" work, while maintaining triggered events and progression for those who want to bypass the day-to-day.<br>
<br>
Minor Additions:<br>
-Simplify some advanced VR therapy scene unlocks.<br>
-Additional "large cocks" focused porn scene.<br>
-Additional discussion topics with various NPCs.<br>
-Able to toggle latex work requirements.<br>
-Better tracking/easier to complete <<=ps(setup.getNpcName("npc_rival","formal"))>> takedown.<br>
-Better tracking for <<=setup.getNpcName("npc_retention","formal")>> takedown.<br>
-Better tracking for stage 5 core story progression.<br>
-New option to preview <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> nursing schedule.<br>
-Cleaner unlock for Secretary Style: Pink Pill: Enthusiast.<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: Hacker or Insect.<br>
-Tester Scene: Maid To Jam.<br>
-Tester Scene: Evil Reflection.<br>
-Tester Scene: Two Bitches In Heat.<br>
-Tester Scene: Dominating the Camera.<br>
-Tester Scene: Film Industry Hell.<br>
-Tester Scene: Maid To Suck.<br>
-Tester Scene: Worse Things Than Corporate Training.<br>
-Tester Scene: Need To Pump Up Those Numbers.<br>
-Tester Scene: Fit For Fetish.<br>
-Tester Scene: Interrogating What You Are.<br>
-VIP Scene: Cattle Drive!<br>
-VIP Scene: Everything it's Kraken'd up to be.<br>
-VIP Scene: Double-Set-Suck.<br>
-VIP Scene: Debt of a Sales<<man>>.<br>
-VIP Scene: Domme Dissatisfaction.<br>
-VIP Scene: Domme Interview.<br>
-VIP Scene: Domme Reference.<br>
-VIP Scene: Needing The Latest In Security.<br>
-VIP Scene: Anal Trainee.<br>
-VIP Scene: Inside Sales.<br>
-Reward Scene: Extreme Treatments.<br>
-Over 62.0k words and 279 new passages<br>
<br>
Total Release Additions: 150.7k words/690 passages/147 achievements<br>
Total Gamesize: 2.70 million words/9769 passages/4070 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.9.3.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/093">Wiki Guide to 0.9.3 Content</a><br>
0.9.3.0 When A Plan Starts To Come Together features:<br>
<br>
Flying High:<br>
-Join the Valkyries and learn what's really going on with those cybernetic sentinels.<br>
-Over 5k words and 38 new passages<br>
<br>
The Monster's Den:<br>
-Visit <<=ps(setup.getNpcName("npc_boss","formal"))>> house to find out <<his npc_boss>> deepest secrets.<br>
-Navigate your way through a nest of rivals for <<=ps(setup.getNpcName("npc_boss","formal"))>> affection to reach your goal.<br>
-Over 11.3k words and 50 new passages<br>
<br>
Not Merely Mindless:<br>
-Investigate the extremes of the company's dronification program.<br>
-Over 9.5k words and 40 new passages<br>
<br>
The Creator:<br>
-Search out <<=ps(setup.getNpcName("npc_boss","formal"))>> predecessor and prove your worth.<br>
-Over 10.6k words and 43 new passages<br>
<br>
Checkhov's Email:<br>
-Find out what's really going on with Miss Dumi Sissifica. Who is she. What does she want? What is up with that damn email address. Also, please stop sending sensitive information to absolute strangers. Yes, I mean you and you know what you did.<br>
-Over 2.2k words and 10 new passages<br>
<br>
Employee Betterment:<br>
-Option to spend a night in the new Employee Betterment Pilot Program.<br>
-Over 3.7k words and 18 new passages<br>
<br>
Supervising Cleanup:<br>
-Dominate the janitor at work.<br>
-Choose how <<=setup.getNpcName("npc_janitor","first")>> develops from multiple styles, from force femme to fuckboy.<br>
-Over 10.7k words and 70 new passages<br>
<br>
Deprograming the Doctor:<br>
-Help <<=setup.getNpcName("npc_primrose","formal")>> overcome <<=ps(setup.getNpcName("npc_boss","formal"))>> influence.<br>
-Further witness <<=ps(setup.getNpcName("npc_primrose","first"))>> mistreatment at the hands of the company and <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
-Over 17.0k words and 65 new passages<br>
<br>
Much More Organised:<br>
-As voted by backers!<br>
-Inventory 2.0 UI revamp of inventory to better filter/handle large numbers of items.<br>
-Cleaner wardrobe implementation.<br>
-Phone compatible UI-based inventory.<br>
-Note: Shop+itemset revamp is coming in 0.9.4.0<br>
<br>
Minor Additions:<br>
-And Just What Do You Have Under That Skirt? Officer Effiong event. As chosen by backers!<br>
-Better Than Reality: ownable breast "falsies." As chosen by backers!<br>
-New drug to mix: <<=setup.getItemName("bimbo_brew")>>.<br>
-Additional <<=$npc_swolebro.Bro>> scene.<br>
-Additional spam email.<br>
-Additional home masturbation event.<br>
-Option to further assert dominance during retreat.<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: His First Time.<br>
-Tester Scene: Pledging Yourself Orally.<br>
-Tester Scene: Bill For Submission.<br>
-Tester Scene: Problem Players.<br>
-Tester Scene: Egg to maid to maidtress.<br>
-VIP Scene: Me and an Egg and <<if $fetish.futa>>futa<<else>><<=setup.getNpcName("npc_guard","formal")>><</if>> Makes Three.<br>
-VIP Scene: Technically Wild.<br>
-VIP Scene: Tied Trainer Training Porn.<br>
-VIP Scene: Green Is Good.<br>
-VIP Scene: Animal Treats.<br>
-VIP Scene: Gilded Egg.<br>
-VIP Scene: Tender Meal.<br>
-VIP Scene: Good Green Fun.<br>
-Fan Submitted Scene: Long At the Club.<br>
-Backer proposed and selected bonus scene: Growing More Sophisticated By The Minute.<br>
-Over 20.4k words and 118 new passages<br>
<br>
Total Release Additions: 100.4k words/479 passages/137 achievements<br>
Total Gamesize: 2.53 million words/9030 passages/3921 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.9.2.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/090">Wiki Guide to 0.9.2 Content</a><br>
0.9.2.0 Taking Revenge... features:<br>
<br>
Working Up the Chain:<br>
-Isolate <<=setup.getNpcName("npc_boss","formal")>> by removing <<his npc_boss>> allies.<br>
-Gather your resources to take down <<=setup.getNpcName("npc_retention","formal")>>, <<=setup.getNpcName("npc_work_doctor","formal")>>, <<=setup.getNpcName("npc_rival","formal")>>, and <<=setup.getNpcName("npc_nintendolls","formal")>>.<br>
-Over 22k words and 102 new passages<br>
<br>
Tendering <<His npc_primrose>> Resignation:<br>
-Remove <<=setup.getNpcName("npc_primrose","formal")>> as an obstacle.<br>
-Over 13.5k words and 60 new passages<br>
<br>
Searching For Laminate:<br>
-A new campaign to enjoy with <<=setup.getNpcName("npc_technician","first")>> and friends on the fetishistic world of Torei.<br>
-Five different roles to choose between, six different decision-points and multiple endings!<br>
-Seven unique itemsets inspired by Torei unlocked after each completion of the campaign.<br>
-Want to see more of Torei? Check things out at <a target="_blank" href="https://discord.gg/Ru677ArWXE">Torei Discord</a><br><br>
-Over 9.6k words and 24 new passages<br>
<br>
Versatile Secretary:<br>
-Additional afternoon work opportunities for bondage, dominance, feet and oral.<br>
-Over 1k words and 9 new passages<br>
<br>
/%Cleans Up Good:<br>
-Opportunity to train <<=setup.getNpcName('npc_janitor', 'first')>>, the janitor.<br>
-Over TODO words and TODO new passages<br>
<br>%/
/%Sweaty Science:<br>
-Introduce <<=setup.getNpcName("npc_primrose","formal")>> to the Hard Pump gym.<br>
-Over TODO words and TODO new passages<br>
<br>%/
A Bright, Shining Star:<br>
-Capstone event for training with <<=setup.getNpcName("npc_cook","first")>> to shoot a porno.<br>
-Shooting porn as an optional side job.<br>
-Backer-chosen porn shoot.<br>
-Over 15k words and 34 new passages<br>
<br>
Minor:<br>
-More ubiquitous use of <<=ps(setup.getNpcName("npc_ai","formal"))>> title. (thanks to Morgane5040)<br>
-Additional dominance-themed "show" event at the fetish club.<br>
-Option to enable "cruel" mode from game start.<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: Nefarious Night.<br>
-Tester Scene: Strap... Of The Future.<br>
-Tester Scene: Regrinding The Horn.<br>
-Tester Scene: Opening Up A Box Of Nightmares.<br>
-Tester Scene: Cum For the Productivity.<br>
-VIP Scene: Oh What A Beautiful Cage.<br>
-VIP Scene: A Great Date Debriefing.<br>
-VIP Scene: Collaring An Egg.<br>
-VIP Scene: Green Work.<br>
-VIP Scene: Planting A Seed Of Knowledge.<br>
-VIP Scene: Journy To Journeywomanship.<br>
-VIP Scene: The Science of Stallions.<br>
-VIP Scene: Animal Psychology.<br>
-Over 16k words and 99 new passages<br>
<br>
Total Release Additions: 100k words/393 passages/185 achievements<br>
Total Gamesize: 2.43 million words/8581 passages/3784 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.9.1.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/090">Wiki Guide to 0.9.1 Content</a><br>
0.9.1.0 With Friends Like These... features:<br>
<br>
Saving Your Friends:<br>
-Work to undo the damage your failed attempt to take down <<=setup.getNpcName("npc_boss","formal")>> caused.<br>
-Redeem and repair <<=setup.getNpcName("npc_ai","first")>>, <<=setup.getNpcName("npc_admin","first")>>, <<=setup.getNpcName("npc_technician","first")>>, <<=setup.getNpcName("npc_landlord","first")>>, <<=setup.getNpcName("npc_psychiatrist","formal")>>, and <<=setup.getNpcName("npc_manager","formal")>>.<br>
-Meet friends new, old, and changed as you begin the end game.<br>
-Over 24.3k words and 254 new passages<br>
<br>
Values Greater Than X:<br>
-Attempt to rekindle a relationship with your ex, <<=setup.getNpcName("npc_exgirlfriend","first")>>.<br>
-Dating arc.<br>
-Stage 5 consequences and redemption.<br>
-Over 19.1k words and 106 new passages<br>
<br>
A Perfect Simulation:<br>
-Assist <<=setup.getNpcName("npc_primrose","formal")>> in "perfecting" <<his npc_primrose>> training simulation.<br>
-Two paths with five scenes each for you to push the simulation to its conclusion.<br>
-Over 11.5k words and 29 new passages<br>
<br>
Girls Just Want To Have Lunch:<br>
-A sequence of lunch events with <<=setup.getNpcName("npc_manager","formal")>>.<br>
-Note: on a fresh game these will start in stage 2, for games past that point they will back-trigger in sequence so you don't have to restart to see the content.<br>
-Over 2.7k words and 12 new passages<br>
<br>
It's That Month Of The Time:<br>
-30 new pride-themed clothing items!<br>
<br>
Have You Heard?:<br>
-Additional ear options available in the bodyshop.<br>
<br>
Minor:<br>
-Option to brew up <<=setup.getItemName("pickmeup_ultra_gum")>>.<br>
-Option to brew up a cure for <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Pill Addiction.<br>
-Custom character art for fem-<<=setup.getNpcName("npc_boss","last")>>.<br>
-Additional stage 5 events with coworkers and HR manager.<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: She's in me... but is she into me?<br>
-Tester Scene: Double Dating.<br>
-Tester Scene: Embracing The Contract.<br>
-Tester Scene: Sharing Cream On Stream.<br>
-Tester Scene: Dog On the Job.<br>
-Tester Scene: One Is Never Enough.<br>
-Tester Scene: Easiest Fucking Sale.<br>
-Tester Scene: Hardcore Encore.<br>
-Tester Scene: She Who Conquers the Past.<br>
-Tester Scene: The Best Taste.<br>
-VIP Scene: Breeding Study.<br>
-VIP Scene: Being Your Best Bitch.<br>
-VIP Scene: Groping You Into Shape.<br>
-VIP Scene: Deep Into Fitness.<br>
-VIP Scene: Pay And Gains.<br>
-VIP Scene: A Unique Specimen.<br>
-VIP Scene: A Jungle of Possibility.<br>
-VIP Scene: Show Up Or Pack In.<br>
-VIP Scene: A Hard Climb.<br>
-Over 26.7k words and 153 new passages<br>
<br>
Total Release Additions: 102k words/502 passages/228 achievements<br>
Total Gamesize: 2.33 million words/8148 passages/3599 achievements<br>
<br>
<<elseif _showAll || setup.isVersionOlderThan("0.9.0.4")>>
0.9.0.4 Foolish Cuck features:<br>
Cuck Mode:<br>
-<<=setup.getNpcName("npc_chuck","custom", "Chuck the Plant")>>? More like <<=setup.getNpcName("npc_chuck","custom", "Cuck the Plant")>>!<br>
-Be a brazen hussy and get your plant wet in front of a witness.<br>
-Note: can disable via the options menu "cuck mode" option.<br>
<br>
A Malapropism-Inspired Masterpiece:<br>
-New, more evocative art for most of the cast courtesy of Metamorphosis Inc.<br>
-Toggle en masse by enabling "Prawn Mode" or individually via Options —> Change NPC Visuals.<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.9.0.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/090">Wiki Guide to 0.9.0 Content</a><br>
0.9.0.0 Nearing the Endgame features:<br>
<br>
Final Stage... Fuck?:<br>
-Take a step towards the end-game and enter the final phase of the game.<br>
-Week-long transition event as you reach a new level of Secretary achievement.<br>
-Meet friends new, old, and changed as you begin the end game.<br>
-Over 19k words and 98 new passages<br>
<br>
Secretary Styling:<br>
-Previous "Fem Style" strict / forced / money / obedient / voluntary / enthusiast style events converted to "Secretary Style" system.<br>
-Hair removal progression.<br>
-A total of 31 new or expanded Secretary Style events with full 6 alternatives.<br>
-In-game tracking and work acknowledgement of all Secretary Style progressions.<br>
-Over 31k words and 177 new passages<br>
<br>
Even More Cruelty:<br>
-Cruel mode can now be extended to <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
-Harsh treatment and unremitting therapy, whether you can pay for it or not.<br>
-Over 11.5k words and 41 new passages<br>
<br>
Finally Finding a Client:<br>
-Assist <<=setup.getNpcName("npc_primrose","formal")>> in selling <<his npc_primrose>> work.<br>
-Two new events involving <<=setup.getNpcName("npc_nintendolls","formal")>> and <<=setup.getNpcName("npc_pr_sissy","formal")>>.<br>
-Over 4.3k words and 19 new passages<br>
<br>
Management Psychology:<br>
-Help <<=setup.getNpcName("npc_manager","formal")>> and <<=setup.getNpcName("npc_psychiatrist","formal")>> make up.<br>
-Over 2k words and 11 new passages<br>
<br>
Much Art:<br>
-Most of the early game videos previously removed have been replaced with custom art.<br>
-Many scenes/items/characters that were previously missing art have gotten such.<br>
-Many new shoes available in the mall for purchase.<br>
-New short curly hairstyle.<br>
-Thanks to Metamorphosis Inc. for back-filling many scene/item artpieces as well as QoL UX improvements.<br>
<br>
Minor:<br>
-Your Type: hone your <<if $fetish.sissy>>SISSI <</if>>Secretary typing skills in the most challenging situations.<br>
-HR Expert: test your knowledge of Social Interaction Service Syndicate Inc. HR policies.<br>
-Bimbo Roulette: a new twist on a classic game.<br>
-Getting Out The Word: Drum up more business in a new prostitution event.<br>
-Rework to where latex clothing is purchased/how it becomes available (part of Secretary Style rework).<br>
-Better popup notification for game actions.<br>
-New loading animation.<br>
-Additional work goals.<br>
-Option to open/close kig mask eyes.<br>
-Pet locations will bias towards unexperienced events.<br>
-New menu for selection chair functionality.<br>
-Better inventory search and filter functionality.<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: Another perfect maidtress.<br>
-Tester Scene: Shiny Secretary.<br>
-Tester Scene: Identifying Every Which-way.<br>
-Tester Scene: O Valley Of Plenti(ful Cum).<br>
-Tester Scene: Traded For a Trinket.<br>
-Tester Scene: Maid at the Club.<br>
-Tester Scene: Hard Maintenance.<br>
-Tester Scene: Stallion Service.<br>
-Tester Scene: Mythical Streaming.<br>
-Tester Scene: Leadership Aptitude Assessment.<br>
-VIP Backer Scene: Club Egg.<br>
-VIP Backer Scene: Gym Bully.<br>
-Backer Voted Scene: Valkyrie Vision.<br>
-Over 20.9k words and 133 new passages<br>
<br>
Total Release Additions: 130k words/624 passages/340 achievements<br>
Total Gamesize: 2.22 million words/7668 passages/3372 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.9.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/089">Wiki Guide to 0.8.9 Content</a><br>
0.8.9.0 Video. Game. Boss. features:<br>
<br>
Streaming into the Future:<br>
-Start streaming and expand your gaming opportunities.<br>
-How far will you go? Four levels of streaming potential!<br>
-Invite friends to join you on camera!<br>
-Over 19k words and 98 new passages<br>
<br>
I Need C.U.M.:<br>
-Get your Camgirl Union Membership and earn some money performing for the camera.<br>
-How much will you show? Five levels of exposure!<br>
-Over 20k words and 98 new passages<br>
<br>
I'm a Bad Gal, and I like Bad Men:<br>
-Pledge your loyalty to <<=setup.getNpcName("npc_boss","formal")>>.
-An extended alternate ending where you prove your utter devotion to the company's demanding and domineering CEO.<br>
-Over 28k words and 124 new passages<br>
<br>
Scientific Investigation:<br>
-Meet <<=setup.getNpcName("npc_primrose","first")>> at the <<printShopName 'sex_club'>>.<br>
-Violate privacy and learn more about the enigmatic <<if $fetish.sissy>>sissy<<else>>enthusiastic<</if>> scientist <<=setup.getNpcName("npc_primrose","formal")>>.<br>
-Help <<=setup.getNpcName("npc_primrose","formal")>> at work with another of <<his npc_primrose>> product pitches.<br>
-Over 7500 words and 34 new passages<br>
<br>
Smarter than the Average<<if $fetish.bestiality_hard>> Bear<</if>>:<br>
-Play Chess at the Maid Cafe and unlock the capstone event for smarts.<br>
<<if $fetish.bestiality_hard>>-Show off your mythic abilities and earn the capstone for bestiality.<br><</if>>
-Finally Fantastically Femme: capstone event for feminisation.<br>
-Over 10900 words and 47 new passages<br>
<br>
That Scans...:<br>
-New work mental assessment.<br>
-NOTE: sequentially this happens early game, but if you carry a late-game save forward it will trigger/but will not acknowledge late-game state.<br>
-Over 1200 words and 10 new passages<br>
<br>
Perfectly Pink:<br>
-Additional drug mixing options to make permanent drugs.<br>
-New quest to mix even more advanced drugs.<br>
-Able to mix more drugs at a time.<br>
-Over 3100 words and 20 new passages<br>
<br>
An Admin Deserves an Administrative Assistant!<br>
-<<=setup.getNpcName("npc_admin","first")>> gets a <<if $fetish.sissy>>SISSI <</if>>Secretary of <<his npc_admin>> own.<br>
-Do your part to iron out confusion between <<if $fetish.sissy>>SISSI <</if>>secretary and manager.<br>
-Over 4800 words and 18 new passages<br>
<br>
Much Art!<br>
-Over a dozen new background images to backfill older scenes.<br>
-Almost 50+ new items/art for older items.<br>
-Replacement scene art for TODO previously deprecated early game videos.<br>
<br>
Minor:<br>
-<<=setup.getNpcName("npc_technician","first")>> penis kink indulgement event.<br>
-<<=setup.getNpcName("npc_technician","first")>> masochism kink indulgement event.<br>
-New option to change NPC speech colors.<br>
-New status icons for temporary effect.<br>
-Main city navigation UI screen simplified.<br>
-Allow doing humiliation capstone event if chastity has been disabled.<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: Maid Prospects Hazy, Try Again.<br>
-Tester Scene: Maidtressing Ain't Easy. It's Actually Quite Hard.<br>
-Tester Scene: Too High To Hate.<br>
-Tester Scene: I Think That Ally Got... En Pointe.<br>
-Tester Scene: Maid To Teach.<br>
-Tester Scene: Head Girl Mangement.<br>
-Tester Scene: Buckle Up, My Beauty.<br>
-Tester Scene: Life's a Beach, and It Comes At You In Volleys.<br>
-Tester Scene: Debt Can Suck.<br>
-Tester Scene: Don't Get Caught Holding.<br>
-Tester Scene: ... On A Pole!<br>
-Tester Scene: Vixen Trixin'<br>
-Tester Scene: Remembering What Came Before.<br>
-Tester Scene: Good For The Skin.<br>
-Over 18.5k words and 101 new passages<br>
<br>
Total Release Additions: 133k words/595 passages/262 achievements<br>
Total Gamesize: 2.08 million words/7037 passages/3031 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.8.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/088">Wiki Guide to 0.8.8 Content</a><br>
0.8.8.0 Brains and Brawn features:<br>
<br>
Perfection of the Digital:<br>
-Go on two additional missions for <<=setup.getNpcName("npc_ai","first")>>.<br>
-Learn about her original creation.<br>
-Go on a "date" to <<printShopName 'sex_club'>> under <<=ps(setup.getNpcName("npc_ai","first"))>> supervision.<br>
-Help her "learn" through various VR interactions.<br>
-Introduce <<=setup.getNpcName("npc_ai","first")>> to <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
-Over 30k words and 135 new passages<br>
<br>
Working Out Your Body:<br>
-Additional gym training options to unlock 19 in Dexterity, Strength, Stamina and Martial Arts.<br>
-Compete for the title of "Miss Hard Pump" and unlock the capstone of 20 in Dexterity, Strength and Stamina.<br>
-Join <<=setup.getNpcName("npc_admin","first")>> in a couples tournament to reach the pinnacle of 20 in Martial Arts.<br>
-Including a backer-voted appearance by nun other than a holy pair of combatants!<br>
-Over 23.5k words and 100 new passages<br>
<br>
A Swole Old Friend:<br>
-Progress your relationship with <<=setup.getNpcName("npc_admin","first")>>.<br>
-Three new date events, including a night at <<printShopName 'sex_club'>>.<br>
-Threesome events with <<=setup.getNpcName("npc_technician","first")>>, <<=setup.getNpcName("npc_landlord","first")>>, and <<=setup.getNpcName("npc_manager","formal")>>.<br>
-Couples counseling with <<=setup.getNpcName("npc_psychiatrist","formal")>>.<br>
-Earn <<his npc_admin>> collar, and <<him npc_admin>> as your keyholder.<br>
-Over 35k words and 147 new passages<br>
<br>
Chaste No More:<br>
-Additional feminisation style alternative to chastity (full 6 options).<br>
-Can disable "penis chastity" fetish for a no-chastity playthrough.<br>
<br>
The Price of Content:<br>
-New <<=setup.getNpcName("npc_work_doctor","formal")>> scene involving a familiar person.<br>
-Over 3k words and 8 new passages.<br>
<br>
Progression Smoothing:<br>
-Events that are required for progression are now tracked w/dependencies to prevent being stuck due to RNG.<br>
-Can tweak rate of "progression" events in options menu.<br>
<br>
Minor:<br>
-Definitely not a secret cow level.<br>
-New scene with <<=setup.getNpcName("npc_technician","first")>> after you are both in 9001-type chastity devices.<br>
-Streamlined sleep for less clicking.<br>
-Shops will list item tags when mousing over items.<br>
-Ability to earn <<=ps(setup.getNpcName("npc_manager","formal"))>> tattoo after the initial party offer.<br>
-Female hair is now a 6-variant feminisation style event.<br>
-Manager comment on you being collared by not-her.<br>
-Option to decline chastity in RPG event.<br>
-Option to swap between normal and flat/inverted 9001 cage.<br>
-Forced strict trigger for stage 1->2 advancement.<br>
-Performance option: control how many "stacked" npcs are drawn (can help performance on some older devices, especially for poker game).<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: <<=ps(setup.getNpcName("npc_manager","title"))>> right hand.<br>
-Tester Scene: Boymode no more.<br>
-Tester Scene: Nefarious Nurse.<br>
-Tester Scene: How to restrain your hucow.<br>
-Tester Scene: A waitress' education.<br>
-Tester Scene: Pitching discipline.<br>
-Tester Scene: Ballet for all.<br>
-Reward Scene: Golden fountain.<br>
-Reward Scene: Filled with electrolytes.<br>
-Reward Scene: Pony service.<br>
-Tester Scene: All hands on bimbo.<br>
-Tester Scene: Maid-mode.<br>
-Tester Scene: Hair stylin': Female hair is now supported as a 6-variant feminisation style event.<br>
-Tester Scene: Dominating the morning.<br>
-Tester Scene: A hard shift and a soft nap.<br>
-Tester Scene: Kharma is a <<if $fetish.futa>>futa <</if>>coworker.<br>
-Over 27.2k words and 128 new passages<br>
<br>
Total Release Additions: 145k words/568 passages/196 achievements<br>
Total Gamesize: 1,949k words/6440 passages/2769 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.7.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/087">Wiki Guide to 0.8.7 Content</a><br>
0.8.7.0 "Tech Wizard" In Disguise features:<br>
<br>
Visit the cosplay convention with <<=setup.getNpcName("npc_technician","first")>>:<br>
-8 couples costumes with a unique event for each.<br>
-Indulge all of your various kinks with your favourite IT professional!<br>
-New Technician kink: bimbofication, with 4 "indulgements," including a cosplay capstone!<br>
-Over 19k words and 129 new passages<br>
<br>
No Dudes (thanks to Ctenken): <br>
-Option to toggle any normally male npc's gender to be female, instead.<br>
-Granular control to individually change all named NPCs as well as unnamed character.<br>
-Over 27k words of scene variants<br>
<br>
The Scientist in over <<his npc_primrose>> head:<br>
-Spend more time with <<=setup.getNpcName("npc_primrose","formal")>> and assist in <<his npc_primrose>> research.<br>
-Learn more about the company and enjoy some VR training to help you become a more-perfect employee.<br>
-Maximise your efficiency by doing some over-night dream VR training.<br>
-Over 28k words and 109 new passages<br>
<br>
Special Additives:<br>
-Option to dose <<=ps(setup.getNpcName("npc_manager","formal"))>> food in various ways.<br>
-New optional "bad end." <br>
-New "strict" method to have pink pills added to your requirements.<br>
-Over 4k words and 24 passages<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: <<=setup.getNpcName("npc_technician","first")>> bimbofication event.<br>
-Tester Scene: <<=setup.getNpcName("npc_manager","formal")>> + <<=setup.getNpcName("npc_technician","first")>> dominance lesson event.<br>
-Tester Scene: <<=setup.getNpcName("npc_manager","formal")>> vaginal reward event.<br>
-Tester Scene: vagina alternate unlock.<br>
-Tester Scene: "cart" shift at cafe 52.<br>
-Tester Scene: goth maid VIP prostitution client.<br>
-Tester Scene: <<=setup.getNpcName("npc_primrose","formal")>> product demonstration for <<=setup.getNpcName("npc_harassment","formal")>>.<br>
-Over 16k words and 57 new passages<br>
<br>
Fire? Fire!:<br>
-As selected by patreon/subscribestar voting!<br>
-New event where the fire alarm goes off in your flat.<br>
-Multiple variants triggered from doing bed heel testimonials.<br>
-Over 3k words and 6 new passages<br>
<br>
Hold the Cream:<br>
-New fetish toggle for cum and related events.<br>
<br>
Minor:<br>
-Makeup can now be raised to lvl 20, and the moviestar style unlocked.<br>
-New Kink to explore with <<=setup.getNpcName("npc_technician","first")>>: Bimbofication.<br>
-Option to get vaginal surgery enthusiastically in stage 2 via a new therapist discussion topic.<br>
-Can now enable "cruel manager" mode after the prologue + toggle such via gameplay.<br>
-Dedicated "maid" itemset.<br>
<br>
Total Release Additions: 121k words/335 passages/155 achievements<br>
Total Gamesize: 1,803k words/5869 passages/2573 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.6.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/086">Wiki Guide to 0.8.6 Content</a><br>
0.8.6.0 "Tech Wizard" 3.0 features:<br>
<br>
Everything <<=setup.getNpcName("npc_technician","first")>>:<br>
-Hit up the ladder and rank up with <<=setup.getNpcName("npc_technician","first")>> in her favourite online game HOTTIES.<br>
-Earn <<=ps(setup.getNpcName("npc_technician","formal"))>> collar... or she yours!<br>
-Share some <<=setup.getItemName("drug_dick")>> with your friend <<=setup.getNpcName("npc_technician","first")>> for a "big" night...<br>
-Join <<=setup.getNpcName("npc_technician","formal")>> for a date at the <<printShopName 'sex_club'>>.<br>
-Bring your sweet slave <<=setup.getNpcName("npc_technician","first")>> for a night of fun at <<printShopName 'sex_club'>>.<br>
-Over 33k words and 154 new passages<br>
<br>
Sharing Keys:<br>
-It is now possible to have <<=setup.getNpcName("npc_technician","first")>> as your keyholder.<br>
-New unlock event + celebration.<br>
-Over 17k words and 60 new passages<br>
<br>
Enthusiastically Femme:<br>
-Introducing the 6th (and final) feminisation progression path where you enthusiastically embrace things head-on.<br>
-All 20 of the games feminisation events are now unlockable via this new 6th style.<br>
-Over 8k words and 25 new passages<br>
<br>
Who's in Charge Now?:<br>
-More options to increase your skills at dominance, including special lessons with <<=setup.getNpcName("npc_manager","formal")>>.<br>
-Dominance thresholds up to lvl 20 capstone.<br>
-Over 9.7k words and 23 new passages<br>
<br>
Additional Avatar:<br>
-There are now two choices for avatar, choosable from the start of the game, or changable via options menu.<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: <<=setup.getNpcName("npc_technician","first")>> maid event.<br>
-Tester Scene: Evil <<=setup.getNpcName("npc_admin","first")>> gang-bang.<br>
-Tester Scene: <<printShopName 'sex_club'>> dunk tank.<br>
-Tester Scene: Anal bead evangelisation.<br>
-Over 10k words and 48 new passages<br>
<br>
Minor:<br>
-Option to call <<=setup.getNpcName("npc_technician","first")>> and let her know you won't make it to game.<br>
-Three new "flat" chastity cage-type devices if you enable chastity shrinking.<br>
-New strap-on sex scene with <<=setup.getNpcName("npc_technician","first")>>.<br>
-3 new hair styles, 2 new hair colours and 4 new eye colours.<br>
-New makeup style — cutie pie.
-<<=setup.getNpcName("npc_cook","first")>> will deliver lunches as <<he npc_cook>> promised.<br>
-2 new tattoos.<br>
<br>
Total Release Additions: 105k words/367 passages/104 achievements<br>
Total Gamesize: 1,673k words/5520 passages/2418 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.5.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/085">Wiki Guide to 0.8.5 Content</a><br>
0.8.5.0 "Unrestrained Fetishism" features:<br>
<br>
Enter the <<printShopName 'sex_club'>>:<br>
-The City's Fetish Club is once again open, check it out once you learn of its existence!<br>
-Check in with various friends and enjoy a variety of activities.<br>
-Humiliation 20 threshold unlockable.<br>
-Over 33k words and 154 new passages<br>
<br>
At the Club with your Mistress:<br>
-Visit <<printShopName 'sex_club'>> with <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
-Multiple costume options with their own unique events.<br>
-Over 5.5k words and 18 new passages<br>
<br>
Military Discipline:<br>
-Visit <<printShopName 'sex_club'>> with your <<boy npc_landlord>>friend, <<=setup.getNpcName('npc_landlord', 'first')>>.<br>
-Meet "friends," practice some skills, catch a show... and maybe make a special request.<br>
-Over 3.8k words and 19 new passages<br>
<br>
Female Whether You want it or not:<br>
-A new "strict" feminisation progression path for the very recalcitrant.<br>
-Each of the game's 20 sec_style progression events will now handle this 5th alternative on top of the existing voluntary/obedient/money/forced.<br>
-Over 15k words and 50 new passages<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: Head girl activities — <<=setup.getNpcName("npc_pr_sissy","first")>>.<br>
-Tester Scene: Head girl activities — <<=setup.getNpcName("npc_futa","first")>>.<br>
-Tester Scene: <<=setup.getNpcName("npc_guard","formal")>> at the club.<br>
-Tester Scene: <<=setup.getNpcName("npc_primrose","formal")>>, hard-working researcher.<br>
-Tester Scene: Hobo encounter.<br>
-Tester Scene: Kaly encounter.<br>
-Tester Scene: One night stand encounter.<br>
-Tester Scene: Large dildo followup event.<br>
-Backer Scene: <<=setup.getNpcName("npc_barista","nickname")>> chair event.<br>
-Over 13k words and 57 new passages<br>
<br>
Misc Additions:<br>
-New unlock for penis fetish threshold 16-19 at the sex club.<br>
-Thresholds that aren't obtainable based on fetish flags will no longer display as hints.<br>
-New pride themed dresses in shop.<br>
-Option to use ice in your kitchen to quell arousal.<br>
<br>
Total Release Additions: 100k words/397 passages/205 achievements<br>
Total Gamesize: 1,568k words/5153 passages/2314 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.4.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/084">Wiki Guide to 0.8.4 Content</a><br>
0.8.4.0 "Maids To Order" features:<br>
<br>
Head Full of Candy:<br>
-Help <<=setup.getNpcName('npc_psychiatrist', 'formal')>> get to the bottom of what's going on with <<=setup.getNpcName('npc_barista', 'nickname')>>, the bimbo barista.<br>
-Corporate intrigue! A dark past! A whole lot of sex! And... a cure?<br>
-Over 17.5k words and 84 new passages<br>
<br>
An Old Soldier:<br>
-Spend more time dating your super, <<=setup.getNpcName('npc_landlord', 'first')>>.<br>
-Food, friendship, and a cute cabin in the mountains.<br>
-Learn how <<he npc_landlord>> got that scar... and prosthetic.<br>
-Over 13k words and 60 new passages<br>
<br>
Egg Hatching:<br>
-Meet a new tenant while doing side work cleaning apartments.<br>
-Build trust, play some games and help peel away that shell.<br>
-Over 4.5k words and 31 new passages<br>
<br>
Throat Training:<br>
-Work with the Cook to train your mouth hole.<br>
-The third and final "training" portion of cook content, (note: 0.8.5 will bring a final capstone event).<br>
-Over 13.5k words and 35 new passages<br>
<br>
Perfect Mind:<br>
-Go forth unto the breach once more to prove yourself in the VR therapy finale.<br>
-Capstone events for piss, cum, and penis fetishes.<br>
-Enjoy an addition bonus event with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> outside of therapy... and get her TRUE thoughts on various topics...<br>
-Over 7k words and 41 new passages<br>
<br>
Lockpicking Lass:<br>
-As selected by backers, the option to lock-pick your way out of chastity... and consequences for getting caught.<br>
-Over 1.5k words and 5 new passages<br>
<br>
Tester and Contributor Reward Scenes (designed as rewards for individual testers/backers, playable by all):<br>
-Tester Scene: New workout scene with <<=setup.getNpcName('npc_guard', 'first')>>.<br>
-Tester Scene: New prostitution VIP "gentle client" scene.<br>
-Tester Scene: New prostitution VIP "Pony Mistress" scene.<br>
-Tester Scene: New VR milking Scene.<br>
-Tester Scene: New nurse milking scene.<br>
-Tester Scene: New nurse bimbo scene.<br>
-Tester Scene: New nocturnal Hucow event.<br>
-Tester Scene: New Maid Cafe Boymode customer scene.<br>
-Tester Scene: Play fetch with your pet dog.<br>
-Tester Scene: Laser fun with your pet cat.<br>
-Tester Scene: New shower scene with your Pack Leader.<br>
-Tester Scene: Penis torture with <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
-Backer Scene: Locker-room <<if $fetish.sissy>>Sissy <</if>>event.<br>
-Backer Scene: Additional <<=setup.getNpcName('npc_technician', 'formal')>> watersports event.<br>
-Voted Scenes: Option to lockpick out of chastity and consequences for such.<br>
-Over 16k words, 67 new passages.<br>
<br>
Minor:
-Urethra sounding now toggleable via fetish flag (defaults to on for existing saves, change via options menu).<br>
-More information about the mysterious valkyries... and an opporunity?<br>
-~3% improvement to save efficiency.<br>
-Image gallery available from main menu.<br>
-Image gallery and achievements can now aggregate across all saves.<br>
-Can enter quantities of milk and cream to sell.<br>
-Additional psychiatrist topic for discussing Church.<br>
-Slightly smoother pet progression.<br>
-New dildo alternative for first time feeding <<=setup.getNpcName('npc_chuck', 'suffix')>>.<br>
<br>
<br>
Total Release Additions: 93k words/376 passages/141 achievements<br>
Total Gamesize: 1,466k words/4756 passages/2109 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.3.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/083">Wiki Guide to 0.8.3 Content</a><br>
0.8.3.0 "Continuing Education" features:<br>
<br>
Back to School:<br>
-Enrol in <<=ps(setup.getNpcName("npc_development","formal"))>> upper floor class<br>
-Take classes with friends and learn important Secretary skills<br>
-Become Head Girl and keep other students in line<br>
-Over 18k words and 55 new passages<br>
<br>
Are you REALLY Qualified?<br>
-Update your resume<br>
-Re-interview for your job<br>
-Definitely not a commentary on corporate practices<br>
-Over 21k words and 39 new passages<br>
<br>
Manager Visit<br>
-Work late with <<=setup.getNpcName("npc_manager","formal")>><br>
-Visit <<=setup.getNpcName("npc_manager","formal")>> at home and spend the night...<br>
-Discuss things you can't talk about at work<br>
-Over 11k words and 41 new passages<br>
<br>
Get Your Collar (obedient, money)<br>
-New Fem style events for "obedient" and "money" collar<br>
-Earn <<=ps(setup.getNpcName("npc_manager","formal"))>> collar<br>
-Over 1500 words and 7 new passages<br>
<br>
Vaginal Training<br>
-Work with the Cook to train your front hole (where applicable)<br>
-Upgrade the old black box with the new Demons Love Cunt Expansion<br>
-Over 5600 words and 27 new passages<br>
<br>
More ways to party:
-Necklace events at the after-work party.<br>
-Sneak around the after-work party as a waitress.<br>
-Over 3400 words and 18 new passages.<br>
<br>
VIP inclusions:<br>
-VIP Quiet in the Library — VIP customer designed by the 0.8.1 public testing champion.<br>
-VIP Maid Service — VIP customer designed by the 0.8.2 pre-testing champion.<br>
-Working it after working out — <<=setup.getNpcName("npc_guard","formal")>> scene reward for 0.8.3 pre-pre-test champion.<br>
-Skirt go spinny — Bonus scene proposed and selected by our patrons and substars.<br>
-A Humiliating Errand — Bonus scene designed by high tier substar.
-Over 9.6k words and 51 new passages.<br>
<br>
Minor:
-Option to dress slutty to work if you unlocked working bimbo<br>
-Finishing the RPG campaign will award an item based on character (for all characters, not just succubus)<br>
-Skill capstone trial/event for masochism<br>
-Skill capstone trial/event for bondage<br>
-Can lose vaginal virginity with <<=setup.getNpcName('npc_futa', 'full')>><br>
-New Leviathan(tm) brand energy drinks available for purchase<br>
-New popup that shows monthly expense breakdowns<br>
-New breast event with <<=setup.getNpcName('npc_pr_sissy', 'first')>>.<br>
-No more NYI tattoos/new tattoos in shop (if you had such the tattoo has been removed and your payment refunded).<br>
-New fetish flag for fisting content.<br>
-Serlialize/deserialise for mobile/compatibility mode saving.<br>
-Detailed breakdown of work performance.<br>
<br>
Total Release Additions: 93k words/305 passages/134 achievements<br>
Total Gamesize: 1,373k words/4374 passages/1968 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.2.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/082">Wiki Guide to 0.8.2 Content</a><br>
0.8.2.0 "Nun of your Business" features:<br>
<br>
Blessings of the Goddess:<br>
-Get some mental healing at a brand new "Church" location<br>
-Confession and 6 other activities to enjoy<br>
-4 levels of devotion to rise to, with promotions and increasingly intense content at every level!<br>
-15 new characters to help you on your spiritual journey<br>
-Nuns, nuns, nuns, nuns, nuns...<br>
-Over 55k words and 97 new passages<br>
<br>
Enter(ed by) the Cook, Pt.1:<br>
-Meet the cook, and <<his npc_cook>> cock, and get some lessons.<br>
-Start learning what it takes to be a porn star.<br>
-Due to the desire to get already written content merged in the face of mediocre interest we'll be spreading the planned cook release across the next several releases as a bonus so as not to "disrupt" Patreon/Subscribestar selected release topics<br>
-11885 words and 8 new passages<br>
<br>
New Encounter with Ezrabeth Prissy (as determined by PATRON/SUBSTAR VOTES!)<br>
-Help her film some promotional material for the company.<br>
-1779 words and 7 new passages<br>
<br>
Technically Locked (winner of small additions Poll II):<br>
-More scenes related to locking your friend <<=setup.getNpcName("npc_technician","first")>> in chastity<br>
-Choose between two styles of chastity training<br>
-8279 words and 31 new passages<br>
<br>
New chastity "fetish" flags<br>
-Option to make chastity either universally required, or only required if the MC has a penis.<br>
-Use the options menu to enable on existing saves/set during the "assessment" at you first therapist appointment<br>
<br>
<<=setup.getNpcName('npc_guard','formal')>>, Reporting<br>
-New art and encounters with <<=setup.getNpcName('npc_guard','formal')>>, a security guard at work.<br>
-1k words and 9 new passages<br>
<br>
Ez-change (runner up of small additions Poll II)<br>
-Any passage that requires the MC to change clothes will allow either manual inventory swap, or 1-click changing via an on-screen choice<br>
-Optional, switch the setting in the options menu<br>
-Please report any scene that is missing this option (I think I backfilled all of them but the game, she is large)<br>
<br>
Small additions:<br>
-New high-tier patron scene extension for an alternate sex scene if <<=setup.getNpcName("npc_admin","first")>> leaves rather than staying to fuck <<=setup.getNpcName("npc_manager","formal")>><br>
-Additional font options, including one optimized for dyslexia reading, and some that should display better for cyrillics<br>
-Drop-down menus in item shops for more convenient browsing<br>
-Shops will now show items on a mannequin prior to purchase<br>
<br>
Total Release Additions: 99k words/217 passages/183 achievements<br>
Total Gamesize: 1,279k words/4069 passages/1834 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.1.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/081">Wiki Guide to 0.8.1 Content</a><br>
0.8.1.0 "Girls at Work" features:<br>
The Oldest Profession:<br>
-Work your way up as a prostitute from alley head all the way to serving VIP clients!<br>
-3 complex, branching "promotion" scenes!<br>
-Over 30 different unique clients to service!<br>
-Prostitution thresholds up to 20!<br>
-Over 57k words and 130 new passages<br>
<br>
New Encounter with Ezrabeth Prissy (as determined by PATRON/SUBSTAR VOTES!)<br>
-Join her on a fun trip to get some shiny new piercings!<br>
-1236 words and 5 passages<br>
<br>
Cute Fuzzy Maids (as voted by PATRONS/SUBSTARS!):<br>
-New option to collect BunnyGirl and Catgirl outfits<br>
-New associated maid cafe events working in the mall<br>
-1591 words and 9 passages<br>
<br>
Small adds:<br>
-Art gallery (access from character profiles)<br>
-Unlock for learning the "doll" makeup style<br>
-New options to put in work as a bimbo secretary<br>
-Thresholds for sex obsession through to 20<br>
-Keyboard mode: play (most) of the game using keyboard hotkeys<br>
-Option to discuss+unlock going around without chastity with your therapist if your stats are high enough that you would be otherwise unable to go in public unchase<br>
<br>
Total Release Additions: 86k words/292 passages/97 achievements<br>
Total Gamesize: 1,179k words/3852 passages/1651 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.8.0.0")>>
<a target="_blank" href="https://sites.google.com/view/secretary-game-wiki/wiki/table-of-contents/new-release-landing-page/080">Wiki Guide to 0.8.0 Content</a><br>
0.8.0.0 "Advance by Retreating" features:<br>
(Corporate) Retreat!<br>
-Join your manager on a luxury corporate retreat<br>
-Strengthen the professional and... personal? relationship with your boss!<br>
-Enjoy the fun perks that come with executive-class travel<br>
-Corporate intrigue and interest in an exotic locale!<br>
-What happens on a corporate retreat is supposed to stay there, but will things ever be the same after?<br>
-21486 words, 85 passages<br>
<br>
Corporate Move<br>
-Move to a higher floor with even higher stakes<br>
-7 different multi-part repeatable move variants covering the full range of fetishes<br>
-Stage 4: new morning inspection, new random events, and some additional work options (some of which that have existed in the game files for months -but will only now be reachable)<br>
-Unlocks new stage 4 specific content with HR managers and a new work meeting<br>
-23941 words, 83 passages<br>
<br>
Chuck!<br>
-Feed and grow your pet plant to impressive dimensions<br>
-New shop and horticulturist NPC<br>
-7687 words, 39 passages<br>
<br>
& Friends<br>
-Adopt a pet dog and/or a pet cat to keep you company around the flat and help you relax<br>
-6725 words, 38 passages<br>
<br>
Dog days<br>
-Patreon/Subscriber voted "Take your dog to work day" holiday<br>
4201 words, 15 passages<br>
<br>
Advances and Advancing<br>
-Can ask your manager for pay advance, with different "requirements" based on game stage<br>
-After completing your probation (i.e.: reaching stage 3) overshooting your required workload by a large enough amount can lead to a title promotion and a pay raise<br>
-Job + Player titles generated based on stats<br>
2697 words, 11 passages<br>
<br>
Who was that, again?<br>
-Profiles have been added for all named characters<br>
3364 words, 47 passages<br>
<br>
Misc. New Events<br>
-The previously voted PR Sissy Event #3 (apparel division tour) <br>
-A new work hucow event<br>
-New Technician kink events for watersports and foot fetishism<br>
-After-work party event: blowjob contest<br>
-After-work party event: evening with <<=setup.getNpcName('npc_boss','formal')>><br>
-After-work party event: misplacing your collar<br>
-A <<=setup.getNpcName('npc_boss','formal')>> cock training event<br>
-New 4-option sec_style event for the sissy/frilly choker<br>
-Hitching post scenes are now reachable without failing hormone inspection<br>
<br>
Other Changes<br>
-You can now "double up" an anal plugs if one of them is hollow (i.e.: 9001-series chastity devices)<br>
-Foot fetishism can now be raised to 20<br>
-Anal skill can now be raised to 20<br>
<br>
Total Release Additions: 130k words/500 passages/260 achievements<br>
Total Gamesize: 1,078k words/3560 passages/1554 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.7.12.0")>>
0.7.12.0 "More than a breast machine" feature list:<br>
The bodyshop is now open for business including:<br>
-Add/remove penis, testicles or vagina<br>
-Resize penis and breasts from none to maximum size<br>
-Recolour your eyes<br>
-Cybernetically enhance strength, dexterity or stamina<br>
-Alter your milk and cum production<br>
-Go inhuman: add a knot, a equine-inspired cock... or both!<br>
-Unique events for all procedures, with separate variants depending who you want to perform the procedure (or skip it entirely and wake up the new you)<br>
-Talk to <<=setup.getNpcName("npc_technician","first")>> and your therapist about your new "equipment" <br>
<br>
GGG Girl:<br>
-Ability to talk to <<=setup.getNpcName("npc_technician","first")>> about some of your more extreme fetishes<br>
-5 new fetish-specific scenes<br>
-Note: while you can talk to her about foot, masochism and bondage fetishes, the scenes for require other content first, and will thus be in a future release<br>
<br>
A special celebration:<br>
-One of your friends from the RPG group has an exciting announcement... and a fun celebration for you to join in on<br>
<br>
New Toys:<br>
Two new items at the sex shop — a wand vibrator, and a large dildo, with associated scenes and task<br>
<br>
Feet!:<br>
-New foot-fetish events with your manager, <<=setup.getNpcName("npc_technician","first")>> and your therapist, including new thresholds<br>
<br>
A little phone therapy...<br>
-You can now call your psychiatrist for "help" with stress<br>
-Initial scene unlocks if your stress is too high to leave your flat, with additional followups unlocked based on your participation in her VR therapy trials<br>
<br>
Stand-alone new scenes:<br>
-A new patreon-voted scene with Ezrabeth Prissy, the PR coworker<br>
-A new gym scene if you wear the "Megamilk" T-shirt while lifting weights<br>
-A new gym scene if you wear the "Cream Filled" shorts while doing cardio<br>
-New scene variant with manager hormone inspection if watersports fetish active<br>
-New option to research the Secretary Elevation and eXpansion Act of 2021<br>
-New bad end for VR overload<br>
-Possible to unlock gym if <<=setup.getNpcName("npc_admin","first")>> is evil<br>
<br>
Total Release Additions: 89k words/279 passages/134 achievements<br>
Total Gamesize: 947k words/3060 passages/1294 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.7.11.0")>>
0.7.11.0 "This is going to Take a LOT more therapy" feature list:<br>
All in the mind<br>
-New topics to discuss with your friendly neighbourhood psychiatrist<br>
-Show off and chat about your fun outfits and other changes!<br>
-Go deeper into your SUB-conscious as you continue to help her research into the human mind:<br>
-New options and rewards to help you guide your mental development<br>
-By "accepting" enough of her experimental treatments you will get an additional interactive choice wherein you can choose your outfit before selecting your activity — pair the correct outfit with the correct activity to unlock new scenes and advanced skill thresholds<br>
-22k words, 41 passages<br>
<br>
Chemical Perfection<br>
-Can now ask your therapist about the strange candy you received during your first workday<br>
-New quest to "assist" <<=setup.getNpcName('npc_work_doctor','formal')>> in "perfecting" a new drug<br>
-7.6k words, 16 passages<br>
<br>
An Old Fashioned Way to Travel<br>
-New potential travel options when using the taxi service leading to new scenes/experiences<br>
<br>
Skip Level:<br>
-Rather than an automatic and immediate "bad end" giving the data crystal to <<=setup.getNpcName('npc_boss','formal')>> has its own unique scene (that will lead to additional questlines in a future release)<br>
-3.1k words, 13 passages<br>
<br>
You Really Must Take your Medicine:<br>
-"Therapy" content and drug content can now be made required via two new assessment questions (or changed in the options menu) turning these on will make such content mandatory rather than optional with new scenes for <<=setup.getNpcName('npc_work_doctor','formal')>> (chemical treatments) and <<=setup.getNpcName('npc_psychiatrist','formal')>> (digital treatments) accordingly<br>
<br>
Even More Random:<br>
-New random events added on the way to work<br>
-New random events while going around town<br>
-New random event in the lingerie shop<br>
-9.5k words, 29 passages<br>
<br>
Ultimate Oral<br>
-Oral 20 is now obtainable<br>
-Special training + capstone event w/your manager<br>
-3k words, 11 passages<br>
<br>
Life can be So Stressful:<br>
-Stress and willpower have both been revamped.<br>
-Stress will now be affected by fetish actions — doing things too far above your comfort zone will increase stress, but indulging in things you love can reduce it.<br>
-Maintaining low stress and doing things that continue to lower it has a chance to replenish willpower<br>
-Wearing clothing that conflicts with your feminization stat can be stressful, wearing clothing that affirms such can be rejuvenating<br>
-Wearing a too-large or too-small plug can be stressful, at high stats being unplugged is stressful<br>
-Your manager will confront you during lunch if your stress is too high and may offer you the afternoon off<br>
<br>
Minor:<br>
-sec_style Boil-Less has been split into two parts — one for obtaining the "upgraded" bottle (new options for voluntary and money from researching Boil-Less online), one for your acceptance of the brew generally (for old saves past this point both will assume same choice)<br>
-The initial "game over" scene at the start of the game if you reject her Matrix reference offer has been rewritten<br>
-New dildo: knotted penis, with associated task<br>
-Cum collecting is now handled in a uniform manner (i.e.: <<=ps(setup.getNpcName('npc_psychiatrist','formal'))>> initial gift is no longer infinite, it's shared with what you collect milking yourself)<br>
-Can now do shots/guzzle cum at home if you have sufficient supplies<br>
-If bimbo+penis > prostitution+smart you'll compulsively work in the gloryhole without asking for pay (though may still get tips)
-New dream if you have many fetishes > 10<br>
-New dream first night of the game (after meeting <<=setup.getNpcName('npc_manager','formal')>> for the first time)<br>
<br>
Total Release Additions: 79k words/262 passages/106 achievements<br>
Total Gamesize: 858k words/2781 passages/1160 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.7.10.0")>>
0.7.10.0 <<= '"' + setup.getNpcName("npc_technician","first")>> 2.0" feature list:<br>
Let's get technical<br>
-Develop your relationship with that cute girl from IT<br>
-A new 1 on 1 roleplaying campaign!<br>
-Take charge or submit, this relationship is all up to you!<br>
<br>
The reason attendance is so consistent...<br>
-Discover what happens to naughty players that fail to meet their commitment to showing up to RPG sessions...<br>
-additional consequences for showing up to game with "gamer smell." <br>
<br>
Let's take this online...<br>
Pickup the latest MOBA game all the cool people are talking about (also, the Tech Wizard really likes it)<br>
Endure PUGs or play with a friend as you work on you skills and get those unlocks!<br>
Three different character classes to choose from!<br>
<br>
The Peak of Perfection<br>
-New maid café event to unlock the maximum value for heels skill<br>
<br>
Sissy In Charge?<br>
Dip your toe into taking on a dominant role...<br>
<br>
Let's go to the mall!<br>
-New random events in the mall, and in its restrooms...<br>
<br>
Minor Additions:<br>
Wearing plug/chastity/collar can affect your work efficiency (positively or negatively depending on your stats...)<br>
Added option to skip repeat trips to the after work party if there's nothing new to unlock<br>
Can inspect item details in stores<br>
reworked the debug menu to function properly + allow adding xp<br>
warp system completely overhauled up to current end of content, can now set starting xp via warp system<br>
<br>
Total Release Additions: 63k words/207 passages/89 achievements<br>
Total Gamesize: 779k words/2519 passages/1054 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.7.8.0")>>
0.7.8.0 "Party Time" feature list:<br>
Thought I'd drop by:<br>
-Manager visits your apartment for a nice dinner:<br>
-Interact with your manager "off the clock" <br>
A new 4-option fem-style threshold (obedient, voluntary, forced, money)<br>
7097 words, 25 passages<br>
<br>
Ain't no party like a company party:<br>
-The beaurocracy has churned forward and it is finally time to attend the after work party with your Manager<br>
-Meet senior employees and their staff, including the CEO!<br>
-Learn more about the inner workings of the company and the power games at the top<br>
-Play poker<br>
-Compete with other thirsty employees for a special prize<br>
-27049 words, 155 passages<br>
<br>
Constant progress: further your feminine journey<br>
-4 fem-style options (obedient, voluntary, forced, money) for getting your first tattoo<br>
-4 fem-style options (obedient, voluntary, forced, money) for getting your nails done<br>
-A "forced" on-ramp to the Allotment for Secretary Learning and Uniform Transformation content for less clever employees<br>
-4964 words, 25 passages<br>
<br>
Thirsty work: A special shift in the executive bathroom<br>
-Another afternoon work alternative option<br>
-4 fem-style unlock options (obedient, voluntary, forced, money)<br>
-11747 words, 33 passages<br>
<br>
Other:<br>
-A new friend: First scene available with the new patreon-voted Company PR Sissy co-worker!<br>
-We can go... bigger: Able to resize 9001 chastity device's plug by talking to your manager<br>
-New location: tattoo/piercing parlour<br>
<br>
Total Release Additions: 80k words/307 passages/109 achievements<br>
Total Gamesize: 716k words/2312 passages/965 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.7.6.0")>>
0.7.6.0 "What's in the Box?" feature list:<br>
What's in the box?!:<br>
-The day has arrived for you to finally discover what's in that mysterious box your ex left behind<br>
-A mystery revealed!<br>
-New apartment upgrades!<br>
-A new peripheral and new games to play at home!<br>
<br>
Maid at work<br>
-The third maid employment opportunity — helping <<=setup.getNpcName('npc_barista','nickname')>> work at Cafe 52<br>
-Learn new skills, meet old friends and prove yourself worthy of these additional responsibilities<br>
-Take part in a new (if somewhat draining) customer-serving initiative<br>
-You can even take your work home with you!<br>
<br>
Mmm, that's creamy!<br>
<br>
Milking comes for (to?) the MC!<br>
You can now unlock the ability to lactate, with options to take advantage of this and other milking both at work and at home.<br>
<br>
Sleeping Secure<br>
-Upgrade your bed to prevent tossing and turning<br>
<br>
The Bimbo Barista<br>
-More events with <<=setup.getNpcName('npc_barista','nickname')>> including being able to meet up with her after work for a chat... and maybe something more?<br>
<br>
Quality of life improvements:<br>
-Going to bed/waking up have been streamlined to allow for less button clicking<br>
-There is now an option to purposefully ruin your makeup in appropriate bathrooms<br>
-There is a section on the stats screen to view a list of current drugs afflicting the MC<br>
<br>
Total Release Additions: 59k words/206 passages/71 achievements<br>
Total Gamesize: 635k words/2005 passages/856 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.7.4.0")>>
0.7.4.0 "Sex, Drugs and no Rock and Roll" feature list:<br>
Better living through chemistry<br>
-Revamped drug system including withdrawal effects and interactions<br>
-Overdosing can have its own effects, as well as recovery...<br>
<br>
Hellllllo Nurse!<br>
-Learn more about the R&D department at Social Interaction Services Syndicate Inc.<br>
-Assist with various patients... including some previous acquaintances<br>
-Get the opportunity to mix up some drugs of your own!<br>
<br>
Upgrades<br>
-A new chastity device is now obtainable along 4 different routes (the standard forced, obedient, voluntary and greed)<br>
<br>
It's the little things<br>
-New events related to penis shrinking both at home and at work
-In light of new content any penis shrinking you may have previously had has been reset
Minor:<br>
-Task list is now sorted for easier reading<br>
-Inventory has now a search function and a filter.<br>
-You can now get either the succubus collar or the harness as a 'reward' depending on how you finish out that version of the campaign<br>
<br>
Total Release Additions: 77k words/203 passages/31 achievements<br>
Total Gamesize: 576k words/1799 passages/785 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.7.2.0")>>
0.7.2.0 "The Rent is Too Damn High!" feature list:<br>
Get a discount on your monthly rent by helping out your friendly <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>><br>
-Unlock a new outfit more appropriate for cleaning<br>
-Impress <<him npc_landlord>> enough and you could get a side gig cleaning other apartments!<br>
-Meet new and interesting people... and clean their flats!<br>
<br>
You are what you eat? (As voted by patrons!)<br>
As voted on by our patrons! share a "meal" with friends and unlock new "culinary" options<br>
Better manage your finances and health by tweaking your mealplan!<br>
Improve yourself with "special" additives that affect your characters progression!<br>
<br>
Maid to order:<br>
-Apply for a job at that cute cafe in the mall<br>
-Work on your customer service skills as a waitress<br>
-Unlock cute new outfits! What an achievement!<br>
<br>
The game now tracks your progress, "achievements" are view able via the options menu<br>
-Achievements can be exported/imported to accrue across multiple playthroughs<br>
-All achievements in the list SHOULD be obtainable<br>
-Nearly 700 achievements tracking all parts of your journey<br>
<br>
A major announcement<br>
-Help <<=setup.getNpcName("npc_admin","first")>> with an announcement to your old company and make a major decision of your own<br>
<br>
An ill-advised confrontation<br>
-Letting <<=setup.getNpcName("npc_admin","first")>> in on what's REALLY going on at work without urging proper caution now has consequences...<br>
<br>
Small Other stuff:<br>
-you can now call "dibs"/ask your friend <<=setup.getNpcName("npc_admin","first")>> not to pursue your manager<br>
-The word "sissy" is now toggleable as a fetish flag Note that it does show up prior to the therapist visit where you fill out the survey, so if you really don't want to see it ever you'll want to tweak fetish flags in the options when you start a new game.<br>
-You can now change names of all NPCs via the options menu<br>
<br>
Total Release Additions: 69k words/190 passages/754 achievements (includes backfill for new feature)<br>
Total Gamesize: 498k words/1596 passages/754 achievements<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.7.0.0")>>
0.7.0.0 "Building a Better Body" feature list:<br>
Let's get swole:<br>
-Join an old friend at the gym!
-Take a class, learn martial arts, lift some weights, work out with friends, the possibilities are endless!<br>
-8 different gym activities to enjoy<br>
-Raise your strength, stamina, dexterity or even learn to fight!<br>
-Choose your preferred locker room, and do(n't) drop the soap!<br>
-Too cheap for the gym? How about a jog around the apartment building?<br>
<br>
<<His npc_admin>> name... is <<=setup.getNpcName("npc_admin","first")>>:<br>
Further your relationship with your good friend from your previous job<br>
Embark on an "epic" quest to get one of the densest <<men npc_admin>> on the planet to notice you<br>
<br>
Meeting time:<br>
Attend work meetings with your manager and learn more about your company<br>
<br>
Other:<br>
-Reworked inventory that should be more efficient + mobile compatible.<br>
-A giant pile of minor bug- and typo fixes<br>
<br>
Total Release Additions: 80k words/195 passages<br>
Total Gamesize: 429k words/1406 passages<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.6.0.0")>>
0.6.0.0 "An Epic Release" feature list:<br>
Literally an epic release:<br>
-136k words (a 64% increase in total gamesize from 0.5.1)<br>
-441 new passages (a 57% increase in total gamesize from 0.5.1)<br>
<br>
Becoming your own girl: Two new paths towards femininity:<br>
-I volunteer as tribute!: Don't need a manager telling you how to blossom into your femininity? Now you can forge your own path!<br>
-Money, Money, Money: Acting girly because you're told is for rubes but if you're PAID for it? Hey, a guy... or is that girl? has to bring in credits somehow!<br>
-Both these and the existing two paths (the original forced and 0.4.0's "good girl" path) are completely compatible, stick with one or switch off as you develop on YOUR terms across all existant feminization style decision points (underwear, unisex, female clothing, female name, and newly added: makeup)<br>
-over 5000 words acrosss 25+ passages<br>
-4 new pieces of clothing and 2 new chastity devices<br>
<br>
What a pretty face:<br>
-A fully implemented new stage of femininity — makeup!<br>
-Accessible along via all 4 femininity methods<br>
-Purchase permanent makeup in the mall beauty salon<br>
-4 all-new makeup styles to learn and apply!<br>
-over 3400 words across 12 passages<br>
<br>
It's not the job, it's the people:<br>
-4 new coworkers that you may interact with throughout the workday. Watch as they develop alongside you as employees of Social Services Inc.<br>
-Over 4600 words across 17 passages<br>
<br>
Who's the boss?<br>
-Being a secretary isn't JUST about sitting at your desk, meet some of your manager's subordinates<br>
-Revel at the complex, professional environment that thrives at Social Interaction Services Inc.<br>
-Meet the skilled and dedicated HR managers in charge of employee Discipline, Harassment, Development and Retention
-Witness as your manager handles problem clients... like the President of Nintendolls! If only you hadn't lost all that data...
-Over 4600 words across 25 passages<br>
<br>
Randomized at work<br>
-6 standalone new random events that can occur during the day
-Feeling a bit pent up? you can now attempt to masturbate in the bathroom, or at your desk!
-Failing to deliver your manager's lunch, or delivering the wrong thing now comes with consequences!
-Over 2000 words across almost a dozen passages<br>
<br>
Bathrooms, not just for, well, you know!<br>
-Relieve yourself during your lunch break!<br>
-Hear the latest gossip!<br>
-Help out a fellow employee!<br>
-Which bathroom will YOU choose?<br>
-Over 5000 words across 20+ passages<br>
<br>
I wanna dress the very best!<br>
-The first stage 3 content! Now that you're a full-fledged SISSY secretary read more of your contract and go on a quest to expand your wardrobe<br>
-Earn new employee "perks", but at what price?<br>
-Advance your skills to new heights<br>
-Dip your toe into advertising and star in a commercial!<br>
-Show off your new threads to your friends!<br>
-9 new items to earn and equip!<br>
-30,000 words of text across 94 all-new passages!<br>
<br>
Thinking digital<br>
-AIKO, the AI lurking within the company is back with a mission or three... if you choose to accept it.<br>
-Over 10,000 words across 35 passages<br>
<br>
A girls favourite store:<br>
The mall sex shop is finally open for business, their inventory is still coming in but already they have some fun stuff, remember to ask about their trial program!<br>
<br>
Warp: engage<br>
-When you start a new game you will have the option to jump forward, the possible "start" points are:<br>
*Skip Prologue: this will start you at home the morning of your first day as a secretary<br>
*Start in stage 1: this will start you on Friday just before your first psychiatrist appointment<br>
*Start in stage 2: this will start you on a Monday after being "upgraded" to unisex clothing and locked in chastity<br>
*Start in stage 3: this will start you on a Monday after being "upgraded" to female clothing + makeup, having taken a feminine name and been pegged — tying in with this<br>
*0.5 saves are not forward compatible, but you should be able to fairly well replicate your progress in-game via the warp system<br>
<br>
Minor: No more freeriding<br>
-Your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> fixed <<his npc_landlord>> calendar and will now show up every month to collect the rent. A hardship, for sure, but one that may bring -with it new opportunities both now and in the future...<br>
Prepare for inspection!<br>
-Morning inspections have been streamlined and cleaned up, with more thorough consequences for failure that vary based on your current stage<br>
<br>
Fun with someone you love<br>
-New masturbation options at work and at home, including a long-awaited dildo of your very own!<br>
-5200 words across 15+ passages<br>
<br>
Total Release Additions: 136k words/441 passages<br>
Total Gamesize: 348k words/1211 passages<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.5.0.0")>>
0.5.0.0 "Your Neighbourhood Tech Wizard" features:<br>
A friendly Wizard<br>
-Impress your friendly neighbourhood Tech Wizard enough to join her weekly RPG group<br>
-Stay after game and "hang out" <br>
-2500 words across 13 passages<br>
<br>
I love a bit of role-play<br>
-Join the tech wizard's legendary (or is that infamous?) RPG group<br>
-Have totally innocent fantasy fun with friends new and old<br>
-Two brand-new characters and more interaction with old favourites<br>
-Chose from up to five different characters, each with their own unique story<br>
-Decision points in every game session determine how the story plays out.<br>
-11 new equipable items<br>
-30,500 words across 86 passages<br>
<br>
Those things on your chest<br>
- Become the big tiddy gf you've always dreamed of being at the nascent bodyshop<br>
-New images for all outfits to show off your "upgrades" <br>
-New location "New U Bodyshop" stay tuned for further procedures to become available!<br>
-1000 words across 5 passages<br>
<br>
Miscellaneous fixes:<br>
-Inventory improvements: No longer necessary to manually remove all clothing to change attire<br>
<br>
Total Release Additions: 35k words/120 passages<br>
Total Gamesize: 211k words/770 passages<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.4.0.0")>>
0.4.0.0 "Stat revamp" features:<br>
- Revamped the Stat system. New thresholds are in place to prevent characters from reaching certain stats to fast, but also help so you don't end up in a deadlock scenario.<br>
- Reach full feminine attire (for a Sissy Secretary) by being either a good or bad Girl or something in between.<br>
- Become better acquainted with manager. Join her at an after work party, perform cunnilinctus, be at the reciving end of an enormous strap on.<br>
- You can finally become a Bad, bad sissy. Took me long enough to add that one (actually you have to be one if you want to see all scenes from above, but as a wise Sissy once said: You can be a "bad" sissy without being a bad sissy).<br>
- You can now talk about stuff with your friend who does not look like The Rock anymore, during your bar trips.<br>
- And many, many more larger and smaller scenes to make the world look more alive.<br>
- Inventory has been fixed for Firefox, and quality of life functions have been added.<br>
- A few new clothes and haircuts have been added (no new makeup yet, sorry).<br>
<br>
Total Release Additions: 77k words/73 passages<br>
Total Gamesize: 195k words/650 passages<br>
<br>
<</if>>
<<if _showAll || setup.isVersionOlderThan("0.3.0.0")>>
0.3.0.0<br>
Total Release Additions: 42k words/193 passages (estimated)<br>
Total Gamesize: 118k words/577 passages<br>
<br>
0.2.0.0<br>
Total Release Additions: 42k words/193 passages (estimated)<br>
Total Gamesize: 75k words/385 passages<br>
<br>
0.1.0.0 "And So It Begins..." (Initial Release)<br>
Total Release Additions: 33k words/192 passages<br>
Total Gamesize: 33k words/192 passages<br>
<</if>>Hello, this is an old version of the game, it is kept hosted so that you can export saves to migrate to a new version, but is otherwise not seeing fixes, and is devoid of art.<br>
<br>
Please find the latest version at: [<a target="_blank" href="http://www.secretarygame.com/">Secretary Official Site</a>]/*#
#desc: usual place ask barkeeper for advice
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You invoke the ancient rite of "spill your troubles to your barkeeper and listen to their advice." <br>
<br>
<<=setup.getNpcName("npc_barkeeper","first")>> smiles and undertakes the traditional "washing of glasses." "@@.npc_barkeeper;Lay it on me, <<if $player.sec_style.body.name == "" || $npc_barkeeper.flags.reactnamechange>><<=$player.first_name>><<else>><<=$player.original_first_name>><</if>> tell me your troubles.@@"<br>
<br>
<<if $npc_technician.stage >= 2 && $npc_technician.relationship.dinner_dates == 0>>
[<<moveTo "event_barkeeper_advice_technician_1" 'Ask for help on dealing with <<=setup.getNpcName("npc_technician","first")>>, the sexy, nerdy tech wizard.' 300>>]<br>
<<elseif -1 != setup.findThemeId('npc_psychiatrist', 'technician', 'theme_psychiatrist_technician_12') && !$npc_technician.relationship.private_games.quest>>
[<<moveTo "event_barkeeper_advice_technician_1" 'Ask for help on dealing with <<=setup.getNpcName("npc_technician","first")>>, the sexy, nerdy tech wizard.' 300>>]<br>
<<elseif $npc_technician.relationship.private_games.quest>>
[@@.link_locked;Your relationship with <<=setup.getNpcName("npc_technician","first")>> is doing fine, you can think of nothing to ask.@@]<br>
<</if>>
<<if -1 != setup.findThemeId('npc_psychiatrist', 'landlord', 'theme_psychiatrist_landlord_15') && $npc_landlord.stage < 2>>
[<<moveTo "event_barkeeper_advice_landlord_1" 'Ask for help on dealing with <<=setup.getNpcName("npc_landlord","first")>>, your kind, slightly older <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.' 300>>]<br>
<<elseif $npc_landlord.stage >= 2>>
[@@.link_locked;Your relationship with <<=setup.getNpcName("npc_landlord","first")>> is doing fine, you can think of nothing to ask.@@]<br>
<</if>>
<<if $npc_admin.flags.totalWorkouts == 0 && ($npc_admin.flags.sawHimfuckingManager || $npc_admin.flags.monogomous_manager) ||
$npc_admin.flags.totalWorkouts > 0 && $npc_admin.flags.relationship == "">>
[<<moveTo "event_barkeeper_advice_admin_1" 'Ask for help on dealing with <<=setup.getNpcName("npc_admin","first")>>, your long-time friend.' 300>>]<br>
<<elseif $npc_admin.flags.relationship != "">>
[@@.link_locked;Your relationship with <<=setup.getNpcName("npc_admin","first")>> is doing fine, you can think of nothing to ask about.@@]<br>
<</if>>
<br>
[<<moveTo "room_usual_place_inside" "You don't need any more advice today." 30>>]
</div>/*#
#desc: usual place ask barkeeper for advice on technician
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.findThemeId('npc_psychiatrist', 'technician', 'theme_psychiatrist_technician_12') && !$npc_technician.relationship.private_games.quest>>
<<set $npc_technician.relationship.quest_game_unlock = true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName("npc_barkeeper","first")>> about your geeky, seemingly gregarious, friend who you've been getting to know better, but with whom you seem to have hit a wall.<br>
<br>
<<if $npc_technician.stage >= 2 && $npc_technician.relationship.dinner_dates == 0>>
She shakes her head in bemusement. "@@.npc_barkeeper;Sometimes this job is really easy, you know? Ask her on a date, dummy! And not some "oh, let's get some casual coffee" I mean a "I want to have dinner with you" DATE. Once you both have a meal in you, well... who knows what the night could bring?@@"
<<elseif setup.findThemeId('npc_psychiatrist', 'technician', 'theme_psychiatrist_technician_12') && !$npc_technician.relationship.private_games.quest>>
She smiles. "@@.npc_barkeeper;That's an easy one. She sounds like the type who uses an enthusiastic facade to deflect from some inner shyness. What you need to do is put her into a more comfortable position, she likes role playing? Why don't you do a one on one game with her — it'll give her a bit of a separation from reality, and I bet she'll be able to open up more easily. Plus, well... you'll probably both have a great time playing together.@@"
<<else>>
ERROR: unexpected!
<</if>>
<br><br>
You thank her for the suggestion.<br>
<br>
[<<moveTo "event_barkeeper_advice" "Ask her for advice on something else." 60>>]<br>
[<<moveTo "room_usual_place_inside" "You don't need any more advice today." 30>>]
</div>/*#
#desc: usual place ask barkeeper for advice on landlord
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName("npc_barkeeper","first")>> about your friendly, if sometimes a bit shy, <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.<br>
<br>."@@.npc_barkeeper;Hmm, an age difference can always be a bit of a challenge due to maturity and life experience... still, if one can bridge that gap it can be wonderful, enriching experience for both parties. In your case I think you're coming up against someone that's a bit "checked out" of the dating scene — be it rejection or just giving up it sounds like you're dealing with someone who's going to be a bit oblivious to some of the normal cues.@@" She shakes her head and smiles as if reminded of something. "@@.npc_barkeeper;Anyway, you're basically going to have to resort to the clue-by-four: keep building up the relationship so that <<he npc_landlord>> can't distract <<himself npc_landlord>> by thinking you're just being friendly, really focus on <<his npc_landlord>> interests... like, if <<he npc_landlord>> likes maids? Then you better be dressing up as a cute, mincing maid. It sounds like <<hes npc_landlord>> checked out from even looking so you want to present <<his npc_landlord>> perfect ideal... and then make sure you make good on that promise when it comes to taking advantage of it. You can't just bring <<him npc_landlord>> out of <<his npc_landlord>> shell, you have to show <<him npc_landlord>> that the world outside — with you, is a wonderful place that <<he npc_landlord>> wants to be.@@"<br>
<br>
You thank her for the suggestion.<br>
<br>
[<<moveTo "event_barkeeper_advice" "Ask her for advice on something else." 60>>]<br>
[<<moveTo "room_usual_place_inside" "You don't need any more advice today." 30>>]
</div>/*#
#desc: usual place ask barkeeper for advice on admin
#status: FINISHED 0.7.10.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName("npc_barkeeper","first")>> about your long-time friend <<=setup.getNpcName("npc_admin","first")>>. Even though you didn't use <<his npc_admin>> name you have a feeling that <<=setup.getNpcName("npc_barkeeper","first")>> knows you're talking about <<=setup.getNpcName("npc_admin","first")>>. She seems a bit slow to respond.<br>
<br>
<<printThought "Wait... does she have a crush on <<=setup.getNpcName('npc_admin','first')>> too? They're always flirting, but neither of them have ever made a move... I wonder if <<he npc_admin>> knows it's not just a game?">><br>
<br>
In spite of whatever misgivings she has the bartenders code seems to win out and she dispenses her advice.<br>
<br>
"@@.npc_barkeeper;So you're going after your friend <<=setup.getNpcName("npc_admin","first")>>... can't say I blame you, I mean that is one FINE piece of <<man npc_admin>>, for sure.@@" You blush slightly, feeling a bit weird suddenly that she's talking about this while seeming to have feelings of her own.<br>
<br>
<<if $npc_admin.flags.totalWorkouts == 0>>
"@@.npc_barkeeper;So the first thing to do when you're trying to develop a relationship is to spend time together, showing interest in their interests. Maybe see about working out with <<him npc_admin>>? <<He npc_admin>>'d probably really enjoy helping you out, plus, well... who could say no to the opportunity to see a <<if $npc_admin.fem>>fit, toned woman like that in tight workout clothes<<else>>big, strong man like that with his shirt off<</if>>?@@"
<<elseif $npc_admin.flags.totalWorkouts > 0 && $npc_admin.flags.relationship == "">>
"@@.npc_barkeeper;So you seem to be facing the classic challenge of being friends with someone for a long time, but then suddenly wanting more. This sort of thing is a challenge<<if $npc_barkeeper.flags.reactnamechange>>, even if we don't add on the changes you've been going through<</if>>.@@"<br>
<br>
<<if $npc_barkeeper.flags.reactnamechange>>
"@@.npc_barkeeper;So the way I see it to make the jump and really get <<him npc_admin>> to turn <<his npc_admin>> head you need to do two things: one, get <<him npc_admin>> alone, this sort of heart to heart just isn't the thing for public, even a bar. Second... you need to present yourself as close to <<his npc_admin>> ideal. <<hes npc_admin>> a fitness freak so that means you'll want to hit the gym a lot. Finally... <<hes npc_admin>> as <<if $npc_admin.fem>>lesbian as lesbian<<else>>het as het<</if>> can get, <<he npc_admin>> needs to know you're a woman and see you as one. I'm sure with time <<he npc_admin>>'d be able to adjust to things more but, first time? You want to really stress your femininity so <<he npc_admin>> sees you as the girl you are not the person you used to be, makeup, the right clothes<<if $player.body.breastsize[0]==0>>, some more feminine curves, and by that I mean breasts<</if>>, you're going to want all of it.@@"
<<else>>
"@@.npc_barkeeper;The biggest issue I can see in regards to <<=setup.getNpcName("npc_admin","first")>> is that, from everything I know of <<him npc_admin>>... <<he npc_admin>> is VERY <<if $npc_admin.fem>>lesbian<<else>>straight<</if>>. If you're still a guy, well... I just don't see <<him npc_admin>> ever being interested, y'know?@@"
<</if>>
<</if>>
<br><br>
You thank her for the suggestion.<br>
<br>
[<<moveTo "event_barkeeper_advice" "Ask her for advice on something else." 60>>]<br>
[<<moveTo "room_usual_place_inside" "You don't need any more advice today." 30>>]
</div>/*#
#desc: catch an eye at the usual place
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You're nursing a drink at the bar, thinking about life and the rest when you happen to glance across to the dance floor to see a drop-dead beauty dancing alone. It takes you a moment to piece together what drew your eye — certainly she's gorgeous but you decide it's her outfit — she's dressed a bit too "high class" for a casual dive like The Usual Place. As you're mulling this over you recognise the dance she's doing — it's actually steps you know, a couples dance that you learned in some random discount dance class you took with your ex once...<br>
<br>
<<printThought "Damn, why does everything make me think of the past... or maybe this is an opportunity to plot out a new future?">><br>
<br>
[<<moveTo "event_bar_pickup_2" "Approach the woman." 180>>]<br>
[<<moveTo "room_usual_place_inside" "Turn back to the bar." 60>>]
</div>/*#
#desc: approach woman at usual place
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" "female_bar">>
<div id="invframe" class="scrolltext">
You knock back the rest of your drink for a bit of liquid courage and head over to the woman, trying to match the music as you dredge your memory for the steps to the dance.<br>
<br>
The woman notices you with a wink and a twirl, perfectly in time to the next song starting as she back-leads you through the steps you forgot and you start to loosen up on the dance floor.<br>
<br>
<<printThought "Wow... she seems really into me...">><br>
<br>
As the first song trails off and there is a brief window of quiet you consider your move.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_bar_pickup_3" "Push aside your doubts and say something." 300 "<<set $scene.dance=false>><<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;Even with the help of booze, you don't have the courage to say anything.@@]<br>
<</if>>
[<<moveTo "event_bar_pickup_3" "Distract her and yourself with your dance skills." 300 "<<set $scene.dance=true>>">>]
</div>/*#
#desc: impress woman at usual place
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.dance>>
<<applyExperience 'dexterity' 10 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" "female_bar">>
<div id="invframe" class="scrolltext">
<<if $scene.dance>>
<<if setup.getTotalValue("dexterity") > 10>>
The woman grins as you bust out some moves, dancing even closer and faster in her excitement.<br>
<br>
"@@.generic_female2;You're fun, I just love an agile guy. I was actually starting to think I'd ended up at a gay bar with the lack of attention... I guess the other fellas just don't have your suave courage...@@"
<<else>>
Your dancing skills leave something to be desired, but your enthusiasm seems to amuse your partner as her nimble beauty distracts from your slight clumsiness.<br>
<br>
"@@.generic_female2;You're fun, I just love a guy willing to put himself out there. I was actually starting to think I'd ended up at a gay bar with the lack of attention... I guess the other fellas just don't have your suave courage...@@"
<</if>>
<<else>>
You pull out a cheesy line about how for a "usual place" she's an unusual beauty.<br>
<br>
The woman smiles and dances a little closer. "@@.generic_female2;Thanks for saying that... you know I was starting to think I'd ended up at a gay bar with the lack of attention... I guess the other guys just don't have your suave courage...@@"
<</if>>
<br><br>
You're glad for the dim bar and the loud music to act as cover as your heart thumps.<br>
<br>
Making a spin towards the edge of the floor with your hand in hers she asks if your place is nearby?<br>
<br>
"@@.generic_female2;Dancing is fun and all... but I'm feeling like something a bit more horizontal, if you know what I mean?@@"<br>
<br>
<<printThought "Is this lady luck swinging back my way after the chaos in the rest of my life?">><br>
<br>
[<<moveTo "event_bar_pickup_4" "Head to your flat." 300>>]<br>
[<<moveTo "event_bar_pickup_abort" "Actually... this is a bit much, turn her down and try to sober up." 300>>]
</div>/*#
#desc: turn down woman at usual place
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" "female_bar">>
<div id="invframe" class="scrolltext">
Faced with a beautiful, enthusiastic woman in front of you... you flinch, coming up with a lame excuse about it having been a long week before slinking away, the woman's disappointed expression only deepening your feeling of cowardly shame as you retreat to the bar.<br>
<br>
[<<moveTo "room_usual_place_inside" "Maybe it's time for another drink..." 60>>]
</div>/*#
#desc: turn down woman at usual place
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Apartment Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" "female_bar">>
<div id="invframe" class="scrolltext">
Things have gotten humiliating enough and you tell the woman to leave. She looks at you for a long moment before shrugging and grabbing her things. She doesn't say another word until she's at the door to your flat and she makes one final look back. "@@.generic_female2;So... take of it what you will, but I think you'd be way better off embracing what you really are, rather than fighting this losing battle over some sort of toxic masculine pride.@@"<br>
<br>
She turns up the hallway before you can respond, sparing not a single glance back at you as you are left frustrated, still a bit drunk, and as confused about your life as ever.<br>
<br>
[<<moveTo "room_foyer" "Close the door." 60>>]
</div>/*#
#desc: take woman home from usual place
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.sph && ["sph",""].includes($player.body_ref.shrink_style) && $player.body.penissize[0] < 4>>
<<applyExperience 'humiliation' 10 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() "female_bar">>
<div id="invframe" class="scrolltext">
Your heart is racing and you have to keep from breaking into a sprint as you lead the woman back to your flat.<br>
<br>
Still not quite believing your luck you open the door and she practically skips through your flat in search of the bedroom, spinning in the air to land on your bed and look up with a smile.<br>
<br>
She draws you in with a glance and then her fingers are working at your pants
<<if $fetish.sph && ["sph",""].includes($player.body_ref.shrink_style) && $player.body.penissize[0] < 4>>
<<if setup.checkItemTypeTag('panties', ['female'])>>making no comment at your feminine panties<</if>>
<<if setup.checkItemTypeWorn("cage")>>
as she comes upon your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>.<br>
<br>
"@@.generic_female2;What's this? Here I am, intending to get nicely railed by a man but you...@@" She leans back and looks up at you with a mix of a sneer and leer, "@@.generic_female2;you're not a man, you're <<if $fetish.sissy>>an emasculated sissy!<<else>>some sort of emasculated thing<</if>>.@@"
<<else>>
as she reveals your small <<getWordMyPenis>>.<br>
<br>
"@@.generic_female2;What's this? Here I am, intending to get nicely railed by a man but you...@@" She holds your member in her hand, making you feel even smaller in her palm. "@@.generic_female2;You're not a man, you're a little-dick <<if $fetish.sissy>>sissy<<else>>loser<</if>>!@@"
<</if>>
<br><br>
[<<moveTo "event_bar_pickup_5" "Insist you're a man!" 300 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_bar_pickup_5" "Shamefully agree with her assessment." 300 "<<set $scene.lie=false>>">>]
<<else>>
<<if setup.checkItemTypeTag('panties', ['female'])>>
only to pause as she reveals your feminine panties.<br>
<br>
"@@.generic_female2;Wait, what's going on? <<if $fetish.sissy>>You aren't some kind of sissy, are you?<<else>>What are you wearing?<</if>>@@"<br>
<br>
[<<moveTo "event_bar_pickup_5" "Lie and try to deny reality." 300 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_bar_pickup_5" "Admit that you wear women's panties." 300 "<<set $scene.lie=false>>">>]
<<else>>
only to pause as she seems to notice something behind you. "@@.generic_female2;Wait... are those women's underwear?@@" She storms past you to find a pair of panties that somehow fell to the floor. "@@.generic_female2;I thought something about this flat looked a little not-bachelor... are you cheating on someone with me?!?@@"<br>
<br>
[<<moveTo "event_bar_pickup_5" 'Lie and "admit" that you are cheating and those clothes are not yours.' 300 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_bar_pickup_5" "Insist that they're your panties." 300 "<<set $scene.lie=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: woman from usual place finds female clothing
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _pants = setup.getItemFromType("legwear")>>
<<removeItem _pants true>>
<<if $scene.lie>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'feminization' 8 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'feminization' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() "female_bar">>
<div id="invframe" class="scrolltext">
<<if $fetish.sph && ["sph",""].includes($player.body_ref.shrink_style) && $player.body.penissize[0] < 4>>
<<if $scene.lie>>
You loudly insist that you're a man... but your date merely rolls her eyes. "@@.generic_female2;Whatever you want to tell yourself... but you'll feel a lot better if you ditch the denial and embrace the reality that you're <<if $fetish.sissy>>a tiny-dick sissy<<else>>lacking the proper equipment to be a REAL man<</if>>.@@"
<<else>>
You shamefully admit that yes, you <<if $fetish.sissy>>aren't a man, but a pathetic, tiny-dick sissy<<if setup.checkItemTypeWorn("cage")>> who should always be kept in chastity<</if>><<else>>are too small to be a man<</if>>.
<</if>>
<br><br>
<<if setup.checkItemTypeTag('panties', ['female'])>>
She shakes her head. "@@.generic_female2;Goddess, on the one hand... I ought to be disgusted at your bringing me here under false pretenses... but you're actually kind of cute... especially in those panties. Tell you what — how about you give me a little fashion show? I want to see all the <<if $fetish.sissy>>sissy<<else>>cute<</if>> underthings you have tucked away...@@"<br>
<br>
[<<moveTo "event_bar_pickup_6" "Get changed for a fashion show..." 300>>]<br>
[<<moveTo "event_bar_pickup_abort_2" "No! Kick her out of your flat." 300>>]
<<else>>
Somehow you're the one on your knees, looking up as the woman stands over you. "@@.generic_female2;Goddess... on the one hand I ought to be disgusted at your bringing me here under false pretenses... but you're actually kind of cute, and I really don't want to go home without getting off. Since there's no way that THIS,@@" she emphasises by rubbing her foot between your legs "@@.generic_female2;could ever satisfy a woman... how about you use your tongue instead?@@"<br>
<br>
[<<moveTo "event_bar_pickup_8" "Submissively eat her out." 300 "<<set $scene.sex=false>>">>]<br>
[<<moveTo "event_bar_pickup_abort_2" "No! Kick her out of your flat." 300>>]
<</if>>
<<else>>
<<if setup.checkItemTypeTag('panties', ['female'])>>
<<if $scene.lie>>
You try to explain away the panties that you are very much wearing,
<<switch $player.sec_style.clothing.underwear>>
<<case "obedient" "voluntary" "enthusiast">>
lying that you chose to wear such things... but utterly failing to conjure an alternate explanation.
<<case "forced" "strict" "money">>
insisting that you're required to dress like this by your boss.<br>
<br>
"@@.generic_female2;You expect me to believe that your boss requires you to wear women's panties under your normal clothes... outside of work? Yeah, that TOTALLY sounds plausible.@@"
<<default>>
ERROR: unexpected <<=$player.sec_style.clothing.underwear>>
<</switch>>
<<else>>
You admit that yes, you wear women's panties, pointing out that they're much more comfortable than their male equivalents.
<</if>>
<br><br>
"@@.generic_female2;I see... well, if you're wearing panties what about other things? Come on, give me a fashion show! You TOTALLY have the body for it!@@"
<<else>>
<<if $scene.lie>>
You lie and "admit" that your girlfriend is away for the night.<br>
<br>
Your date's expression goes even more sour as she packs up and heads for the door. "@@.generic_female2;Well! I do not care how cute you look, I am not going to take part in cheating. Good day.@@"<br>
<br>
She storms out of the bedroom and the flat, leaving you alone.<br>
<br>
[<<moveTo "room_foyer" "Sigh." 60>>]
<<else>>
You insist that the female clothing is all yours, that you actually enjoy crossdressing and stuff...<br>
<br>
Your date immediately perks up, sitting back on the bed and looking at you with a grin. "@@.generic_female2;Yes... I didn't notice in the dark bar... but you do have the hips for it... well, go on, now, let's see you put on a fashion show for me!@@"
<</if>>
<</if>>
<br><br>
<<if setup.checkItemTypeTag('panties', ['female']) || !$scene.lie>>
[<<moveTo "event_bar_pickup_6" "Get changed for a fashion show..." 300>>]<br>
[<<moveTo "event_bar_pickup_abort_2" "No! Kick her out of your flat." 300>>]
<</if>>
<</if>>
</div>/*#
#desc: woman from usual place force change for fashion show
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Wardrobe">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
You slip into your wardrobe and consider what to wear for this impromptu "fashion show." <br>
<br>
<<if !setup.checkNaked() && setup.analyzeWornTags(['female','male','unisex']) == "female">>
[<<moveTo "event_bar_pickup_7" "Meekly show off your femme attire." 300 "<<set $scene.bold=false>><<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "event_bar_pickup_7" "Enthusiastically give a fashion show." 300 "<<set $scene.bold=true>><<set $player.cutscene.lockinventory = true>>">>]<br>
<<else>>
[@@.link_locked;Your date wanted a feminine fashion show, what you have on now isn't going to cut it.@@]<br>
<</if>>
[<<moveTo "event_bar_pickup_abort_2" "No, you don't want to do this." 300 "<<set $player.cutscene.lockinventory = true>>">>]
</div>/*#
#desc: woman from usual place force fashion show
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bold>>
<<applyExperience 'feminization' 12 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'feminization' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 10 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() "female_bar">>
<div id="invframe" class="scrolltext">
You stride out wearing
<<if setup.checkPlayerDressed()>>
<<switch setup.analyzeWornTags(['slutty','casual','office','formal','schoolgirl','maid','fetish'])>>
<<case 'slutty'>>
a full slutty outfit.<br>
<br>
Your date grins "@@.generic_female2;wow, I'm almost jealous! You make one hot lady!@@"
<<case 'casual'>>
a casual feminine outfit.<br>
<br>
Your date seems
<<case 'office'>>
a feminine office outfit.
<<case 'formal'>>
a formal feminine ensemble.
<<case 'schoolgirl'>>
a schoolgirl costume.
<<case 'maid'>>
a maid's outfit.
<<case 'fetish'>>
a fetishistically feminine outfit.
<<default>>
ERROR: unexpected outfit tags <<=setup.analyzeWornTags(['slutty','casual','office','formal','schoolgirl','maid','fetish'])>>
<</switch>>
<<else>>
feminine underthings.
<</if>>
<<if $scene.bold>>
Your bold confidence seems to really sell things as your date beckons you towards her.<br>
<br>
"@@.generic_female2;Well! A show like that deserves its reward! Now, I'm not really into girls but... I think I can make an exception for you to put that cute face between my legs...@@"
<</if>>
<br><br>
She leans back and spreads her legs in invitation...<br>
<br>
[<<moveTo "event_bar_pickup_8" "Submissively eat her out." 300 "<<set $scene.sex=false>>">>]<br>
<<if $player.body_ref.penis>>
<<if setup.canSexOrRemoveChastity("penis", "")>>
[<<moveTo "event_bar_pickup_8_sex" "Boldly declare that you want to fuck!" 300>>]<br>
<<else>>
[@@.link_locked;You're locked in chastity, this is the best you're going to get.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_bar_pickup_abort_2" "This is too much, draw the line and end this!" 300>>]
</div>/*#
#desc: woman from usual place eat her out
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.virgin.cunnilingus>>
<<if $scene.first>>
<<set $player.sec_style.sex.cunnilingus = "enthusiast">>
<<set $player.virgin.cunnilingus = "bar_woman">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<<applyExperience 'submission' 8 'normal' $SEEN_STRANGER>>
<<applyStress -5>>
<<if $scene.sex && $fetish.cum>>
<<applyExperience 'cum' 8 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() "female_bar">>
<div id="invframe" class="scrolltext">
You have a fleeting thought about how much of a roller-coaster this night has been; from hanging out with your friend, to the surprising hook-up... to your humiliation<<if $scene.sex>>, to<<if $scene.firstSex>> your first time<</if>> having sex...<</if>> and now this, <<if $scene.sex>>laying<<else>>crawling<</if>> between a stranger's legs
<<if $scene.first>>
for your first post-breakup experience of eating a woman out.
<<else>>
to eat her out.
<</if>>
<br><br>
<<if $scene.sex>>
Her weight lowers, pinning your in place.
<<else>>
A hand gently rests on your head, pulling you in.
<</if>>
You close your eyes and embrace the moment. <<if $scene.sex>>Your heart is still thumping from your moments prior orgasm<<else>><<printThought "Maybe if I can do a good enough job...">> you aren't quite able to finish that thought<</if>>, but you do your job nonetheless, nibbling and licking and doing the best you can to respond to the moans of pleasure that become increasingly muffled by the thighs pressing against either side of your head<<if $scene.sex && $fetish.cum>>, your own cum dripping past your lips<</if>>.<br>
<br>
Regardless of your thoughts you find yourself drawing satisfaction — perhaps helped by just how good the woman tastes<<if $scene.sex && $fetish.cum>>, her feminine flavours only accentuated by the saltiness of your cum<</if>>. When she finally <<if $scene.sex>>lifts<<else>>pulls you<</if>> off, gasping slightly with a smile of pleasure on her face you lick your lips, spirits boosted by the accomplishment represented by her obvious satisfaction.<br>
<br>
<<if $fetish.sph && ["sph",""].includes($player.body_ref.shrink_style) && $player.body.penissize[0] < 4>>
<<if $fetish.sissy>>
"@@.generic_female2;God, with a tongue like that... you should just forget that silly penis... you'd make a much better sissy than a man.@@"
<<else>>
"@@.generic_female2;God, with a tongue like that... you should forget the rest, embrace that rather than lying about being a man.@@"
<</if>>
<<else>>
<<if $fetish.sissy>>
"@@.generic_female2;God, with a tongue like that... you should just forget the rest, you'd make a much better sissy than a man.@@"
<<else>>
"@@.generic_female2;God, with a tongue like that... you should forget the rest, embrace that rather than lying about being a man.@@"
<</if>>
<</if>>
<br><br>
You seem almost stuck on your knees as she stands up and tussles your hair before fixing her skirt and heading to the door.<br>
<br>
"@@.generic_female2;Thanks for the evening... it didn't quite go how I planned but... well, I had fun, nonetheless. Good luck in your journey!@@"<br>
<br>
Only after you hear the door close behind her do you manage to put yourself together and start to rise to your feet, still in a daze over all that's happened.<br>
<br>
[<<moveTo "room_bedroom" "Stand up." 300>>]
</div>/*#
#desc: woman from usual place sex her
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstSex = !$player.virgin.penis>>
<<if $scene.firstSex>>
<<set $player.virgin.penis = "bar_woman">>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<playerOrgasm>>
<<applyStress -5>>
<</if>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "enthusiast">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "enthusiast">>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "bar_woman">>
<</if>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem =- "bar_woman">>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() "female_bar">>
<div id="invframe" class="scrolltext">
You strike a pose and declare that you want to fuck, not just eat her out.
<<if $scene.bold>>
The woman looks up at you for a heartbeat, and then her expression splits into a grin.<br>
<br>
"@@.generic_female2;So I know what I said before but... you know? You're growing on me, the combination of cute and confident? Yeah, come over her, let's do this thing... and by thing, I mean me, sexy.@@"<br>
<br>
You
<<if $scene.removeCage>>
hurriedly unlock your chastity <<if $scene.isCage>>cage<<else>>belt<</if>> and
<</if>>
move into position, the woman welcoming you between her legs as your hard <<getWordMyPenis>> slides into her and she rolls her hips.<br>
<br>
You gasp,
<<if $scene.firstSex>>
this feeling of your first time more intense than you anticipated,
<</if>>
your breaths quickening as you try not to cum instantly.<br>
<br>
"@@.generic_female2;So excited!@@" The woman whispers, before shifting her hips under you, off-balancing you and coming up on top of you, pinning you to the bed with a grin as she bounces up and down. "@@.generic_female2;Don't mind if I take over? You seemed a bit... distracted.@@"<br>
<br>
You moan as she rolls her hips, your orgasm coming barely a couple of pumps later as the woman groans, grinding hard against your rapidly softening self as she tries to finish before you fully deflate. "@@.generic_female2;You're lucky you're cute... maybe work on that stamina... but, until then...@@" She rises up, and then shuffles forward, her quivering lower lips soon droping over your face. "@@.generic_female2;I told you I wanted you to eat me out...@@"<br>
<br>
[<<moveTo "event_bar_pickup_8" "Submissively eat her out." 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_bar_pickup_abort_2" "This is too much, draw the line and end this!" 300>>]
<<else>>
The woman looks at you for a heartbeat, and then breaks into a laugh. "@@.generic_female2;Look, don't get me wrong... you're cute... but the offer is eat me out, or I'm out, take it or leave it.@@"<br>
<br>
[<<moveTo "event_bar_pickup_8" "Submissively eat her out." 300 "<<set $scene.sex=false>>">>]<br>
[<<moveTo "event_bar_pickup_abort_2" "This is too much, draw the line and end this!" 300>>]
<</if>>
</div>/*#
#desc: catch a male eye at the usual place
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits $scene.drinkcost>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You've just put in your drink order and <<=setup.getNpcName("npc_barkeeper","first")>> places the drink in front of you only to turn back your credits "@@.npc_barkeeper;Compliments of the man at the end of the bar,@@" she states, pointing down the bar towards a dude who smiles and waves at you.<br>
<br>
<<printThought "Woah, never had someone buy me a drink before...">><br>
<br>
Having caught your eye, the man starts walking over to you.<br>
<br>
[<<moveTo "event_bar_pickup_male_2" "Chat him up a bit." 180 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_bar_pickup_male_2" "Thank him for the drink, but you're really not interested." 180 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: talk to dude at usual place
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
The man comes close enough to talk and you politely explain that you really aren't here looking for anyone.<br>
<br>
He takes your rejection in stride with a friendly smile. "@@.generic_male1;Bad luck for me, I guess, 'cause let me tell you. You look even better up close than you did from across the bar. A pretty face deserves a drink, so enjoy, and have a great evening.@@"<br>
<br>
With a tip of an invisible cap the man walks away and leaves you to your drink.<br>
<br>
[<<moveTo "room_usual_place_inside" "Finish your drink." 60>>]
<<else>>
The man takes a stool next to you and starts chatting you up. After a while he drops a hint about a hotel he knows of nearby...<br>
<br>
<<if setup.analyzeWornTags(['female','unisex','male']) != "male" && $player.identify_as == "male">>
[<<moveTo "event_bar_pickup_male_3" "Explain that, actually... you're a dude." 180 "<<set $scene.male=true>><<set $scene.response='male'>>">>]<br>
<</if>>
[<<moveTo "event_bar_pickup_male_3" "Go along with his offer." 180 "<<set $scene.response='accept'>>">>]<br>
[<<moveTo "event_bar_pickup_male_4_abort" "Turn him down." 180>>]
<</if>>
</div>/*#
#desc: onenight stand dude choose sex
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.response == 'abort'>>
<<set $player.location to "The Usual Place, Inside">>
<<else>>
<<set $player.location to "No Tell Motel">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.response == 'abort'>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.response>>
<<case "male">>
You explain that, actually... you're a dude and the man blinks at you in confusion.<br>
<br>
"@@.generic_male1;Um... okay? Like... that's why I bought you a drink... I'm gay... and you are the cutest guy in this whole bar... so... you wanna hit up that motel? Because I am DTF for sure.@@"<br>
<br>
[<<moveTo "event_bar_pickup_male_3" "Go along with his offer." 180 "<<set $scene.response='accept'>>">>]<br>
[<<moveTo "event_bar_pickup_male_3" "Turn him down." 180 "<<set $scene.response='abort'>>">>]
<<case "accept">>
You accept the man's offered arm and he squares up the tab before the two of you depart the bar and walk the block and a half to the model he mentioned. He digitally pays for a room and is about to lead you inside when he pauses.<br>
<br>
"@@.generic_male1;So, just to be sure, I'm inviting you in here to fuck, you down?@@"<br>
<br>
[<<moveTo "event_bar_pickup_male_4" "That'd be an enthusiastic yes." 180 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_bar_pickup_male_4" "Actually... you really just want to cuddle..." 180 "<<set $scene.sex=false>>">>]<br>
[<<moveTo "event_bar_pickup_male_4_abort" "You think you're done for the night." 180>>]
<<case 'abort'>>
You stand firm and turn the man down and he wanders off with a shrug.<br>
<br>
[<<moveTo "room_usual_place_inside" "Finish your drink." 60>>]
<<default>>
ERROR: unexpected scene.response <<=$scene.response>>
<</switch>>
</div>/*#
#desc: onenight stand dude sex
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<</if>>
<<set $player.location to "No Tell Motel">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
From the doorway to the bed, the two of you leave a trail of clothing until you are laying back naked
<<if setup.checkItemTypeWorn("cage")>>
and the man comes up short at the discovery of your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. "@@.generic_male1;Huh... I guess it's a good thing I'm a top?@@"<br>
<br>
[<<moveTo "event_bar_pickup_male_5" "Roll over and wiggle your butt." 180 "<<set $scene.anal=true>>">>]<br>
[<<moveTo "event_bar_pickup_male_4_abort" "You think you're done for the night." 180>>]
<<elseif $player.body_ref.penis>>
and your <<getWordMyPenis>> stands up with excitement.<br>
<br>
"@@.generic_male1;Wow, someone's excited... only, well... I'm a top, if that's alright with you? I promise I give a good reach-around but that's my limit...@@"<br>
<br>
<<if !$player.sec_style.sex.vagina && $player.body_ref.vagina>>
<<printThought "This is it... am I going to lose my virginity?">><br>
<br>
<<elseif !$player.sec_style.sex.anal>>
<<printThought "This is it... I used to say anal doesn't count but...">><br>
<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_bar_pickup_male_5" "Spread your legs." 180 "<<set $scene.anal=false>>">>]<br>
<</if>>
[<<moveTo "event_bar_pickup_male_5" "Roll over and wiggle your butt." 180 "<<set $scene.anal=true>>">>]<br>
[<<moveTo "event_bar_pickup_male_4_abort" "You think you're done for the night." 180>>]
<<else>>
and your wet <<getWordVagina>>.<br>
<br>
<<if $scene.male>>
The man looks momentarily surprised, but then grins. "@@.generic_male1;So, I thought you were just wearing some really tight, fitted clothing but... well, I mean, I'm a top so I wasn't reallying looking to do much with your dick, even if you had one so I'm still up if you are...@@"
<<else>>
The man grins. "@@.generic_male1;You look beautiful, what's your preferred position?@@"
<</if>>
<<if !$player.sec_style.sex.vagina && $player.body_ref.vagina>>
<<printThought "This is it... am I going to lose my virginity?">><br>
<br>
<<elseif !$player.sec_style.sex.anal>>
<<printThought "This is it... I used to say anal doesn't count but...">><br>
<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_bar_pickup_male_5" "Spread your legs." 180 "<<set $scene.anal=false>>">>]<br>
<</if>>
[<<moveTo "event_bar_pickup_male_5" "Roll over and wiggle your butt." 180 "<<set $scene.anal=true>>">>]<br>
<</if>>
<<else>>
You brace for rejection as you reply that, actually... you'd rather cuddle than fuck. To your surprise the man's mood doesn't dip in the slightest.<br>
<br>
"@@.generic_male1;A snuggle-slut, eh? I had an ex like that, and y'know... that's cool. I obviously like fucking but cuddling is good too, and if that's all you wanna do, well... we already got the room for the hour, so let's turn that bed into a cuddle puddle.@@"<br>
<br>
[<<moveTo "event_bar_pickup_male_5_cuddle" "Cuddle time." 3600>>]<br>
[<<moveTo "event_bar_pickup_male_4_abort" "You think you're done for the night." 1800>>]
<</if>>
</div>/*#
#desc: onenight stand dude abort
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "No Tell Motel">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You nervously tell the man that, actually, you aren't ready to do anything tonight.<br>
<br>
He's obviously disappointed, but he makes an attempt to force a smile as he replies. "@@.generic_male1;Damn, thought things were going well... but the last thing I want to do is something you're not fully into so... well, thanks for the chat, and you have a good night, alright?@@"<br>
<br>
You nod, leaving him in the hotel room as you walk up the street.<br>
<br>
[<<moveTo "room_citymap" "Back to town." 300>>]
</div>/*#
#desc: onenight stand dude sex
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal>>
<<set $scene.first = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "bar_man">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "enthusiast">>
<<include "analUnlocks">>
<</if>>
<<else>>
<<set $scene.first = !$player.sec_style.sex.vagina>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "enthusiast">>
<</if>>
<<if !$player.virgin.vaginal>>
<<set $player.virgin.vaginal = "bar_man">>
<</if>>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "bar_man">>
<</if>>
<<if !$player.sec_style.sex.sex_man>>
<<set $player.sec_style.sex.sex_man = "enthusiast">>
<</if>>
<</if>>
<<set $player.location to "No Tell Motel">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You don't know if the man somehow sensed your lack of experience, or that slow and tender is just his MO, but he addresses you gently,
<<else>>
You feel a hand on your hips, fingers tracing down your crack and then
<</if>>
warming you up with one finger, then two, before his grip moves to your hips and he slowly eases his cock into your
<<if $scene.anal>>
ass.<br>
<br>
You moan, feeling him slowly working its way into you from behind, and yet it is the heat, the warmth of his flesh that you find yourself focusing on... well, until he gets further in <<if $player.body_ref.penis>>and your prostate lights up with pleasure, magnified by<<else>>and you feel<</if>> him bottoming out, his cock all the way inside of you, pinning you in place... not that you want to be anywhere else.<br>
<br>
You moan lustily, shuddering he huskily whispers "@@.generic_male1;you feel so tight... I'm going to start thrusting now, you ready?@@"<br>
<br>
You nod, burying your face in the mattress as he starts moving, every thrust a <<if $scene.first>>new <</if>>burst of pleasure. <<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage")>>True to his word, you feel his hand reaching under your hips, jerking you off gently in time with his thrusts. With mind-blowing pleasure fore and aft, it isn't long before you cum<<else>>You analgasm<</if>>... and he keeps fucking, pumping pleasure into you from behind as you gasp and moan, showing near-superhuman stamina in making you cum another two times before he finally gets off, pausing a moment as he leans forward, his warm pants blowing across your back before he slowly eases back.
<<else>>
<<getWordVagina>>.<br>
<br>
You moan in pleasure and he slides easily deeper, your excitement more than easing his way in until you feel his balls on your taint and he starts gently thrusting.<br>
<br>
"@@.generic_male1;You good? You want I should speed up?@@" He asks, checking in, now looming over you as you fold under him, eager to feel him as deep as possible.<br>
<br>
You nod moaning "@@.pc;harder,@@" with a tremble in your voice.<br>
<br>
"@@.generic_male1;What I love to hear,@@" the man replies, giving you the business, hard and deep, displaying consummate cocksmanship as he gives you at least three orgasms before cumming himself.
<</if>>
<br><br>
"@@.generic_male1;You good?@@" He asks, as you <<if $scene.anal>>wiggle over onto your back and <</if>>grin up at him and nod in affirmation. You're more than good, body tingling as with pleasure as he helps you back to your feet... only for the moment to be interrupted by an alarm going off signaling that you're about to lose the room.<br>
<br>
"@@.generic_male1;Heh, figures, you were amazing, thanks again for the night.@@"<br>
<br>
You blush at the reminder of how fast this one-night-stand happened... but the man is a gentleman to the end as he helps sort out clothing for you to dress and be on your way.<br>
<br>
[<<moveTo "room_citymap" "Head on your way." 300 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: onenight stand dude cuddle
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -20>>
<</if>>
<<set $player.location to "No Tell Motel">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You curl up with the man in bed. He feels nice, playing big spoon to your more diminutive frame you feel safe and comforted in his grasp. You find yourself remembering your ex, and similar nights spent thanks to your "virginity pledge" somehow... this feels different, less of an emotional connection... but physically better, more honest, in a way.<br>
<br>
Eventually your scheduled time in the room runs out and the man thanks you for the evening and bids you good-night.<br>
<br>
[<<moveTo "room_citymap" "Leave the hotel room." 300>>]
</div>/*#
#desc: gloryhole first time, a wild penis appears
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<setThreshold 'penis' 'gloryhole_penis' 'big_member'>>
<<include "initGloryhole">>
<<set $scene.gloryholestatus.changedClothes = false>>
<<set $scene.gloryholestatus.topTagStyle = "">>
<<set $scene.gloryholestatus.topTagType = "">>
<<set $scene.gloryholestatus.finished = false>>
<<set $scene.gloryholestatus.orgHorney = setup.canPlayerSex($player,'handjob')>>
<<useClothSetPush 'gloryhole_1'>>
<<else>>
<<set $scene.gloryholestatus.orgHorney = setup.canPlayerSex($player,'handjob')>>
<<if !setup.compareCurrentClothesWithClothSet($player,'gloryhole_1')>>
<<set $scene.gloryholestatus.changedClothes = true>>
<<else>>
<<set $scene.gloryholestatus.changedClothes = false>>
<</if>>
<<set $scene.gloryholestatus.topTagStyle = setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','male'])>>
<<set $scene.gloryholestatus.topTagType = setup.analyzeWornTags(['underwear','overgarment'])>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
<<if !$scene.gloryholestatus.changedClothes>>
<<if !$player.body_ref.penis>>
Your anatomy no longer suitable for using urinals, you head for
<<elseif setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
Your chastity cage makes the idea of using a urinal even less appealing than normal, so you head for
<<else>>
Your chastity belt quite precludes using a urinal, so you head for
<</if>>
<<else>>
As usual, you feel uncomfortable doing your business at the urinal so you decide to use
<</if>>
the 2nd to last stall from the end of the room. You're already sitting on the toilet emptying your bladder as you realise what is wrong with this scene. Your <<getWordMyPenis>> is hanging in the toilet, so where did the quite enormous <<getWordPenis>> you're looking at come from. Since you've tanked quite a lot it takes you a while to realise that there's a gloryhole with a pink fleshy meatstick protruding through.<br>
<br>
<<if setup.hasTmpEffect('tipsy') || setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted')>>
<<printThought "Hehe... I drank way too much today. I must be seeing things. Time to get home and catch some zzz's.">>
<<else>>
<<printThought "What? No, this can't be real, but I'm not drunk, so I shouldn't be hallucinating...">>
<</if>>
<br><br>
But no matter how long you stare at it, it does not go away. It simply stays there protruding from the wall. For some reason you really want to touch it. Just to dispel the hallucination you poke it with your finger. It isn't a hallucination. It's warm and twitches when you touch it.<br>
<br>
<<printThought "Fuck... that's... that's real.">><br>
<br>
You can hear a <<if $options.fem>>woman's<<else>>deep, manly<</if>> voice from the other side of the wall. "@@.npc_gloryhole;So, <<=setup.getNpcName("npc_prostitute","first")>>. You gonna start anytime soon? A friend of mine recommended this stall to me. If you're as good as they say you are, I'll pay you double your normal rate!@@"<br>
<br>
<<if $npc_manager.flags.bad_girl.got_sissy_underwear && $npc_prostitute.first_name == "Sissy">>
<<printThought "<<=setup.getNpcName('npc_prostitute','first')>>? How did <<he>> know... no, wait. Maybe <<hes>> expecting someone else?">><br>
<<else>>
<<printThought "<<=setup.getNpcName('npc_prostitute','first')>>? Did <<he>> expect someone else?">><br>
<</if>>
<br>
Clearly this must be a case of mistaken identity. But whoever is waiting on the other side is pretty eager in anticipation of what's coming next. Normally you'd run for the hills without even a second thought. But these last few days have been everything but normal. Besides, you could really use the money.
<<if $npc_psychiatrist.hypnosis>0>>
And there's something else in your mind. You can't really put your finger on it. It's some kind of strange curiosity, dwelling deep inside you.
<</if>>
<br><br>
<<else>>
You feel the sudden urge to change your clothes.
<<switch $scene.gloryholestatus.topTagStyle>>
<<case 'sissy' 'fetish' 'bold' 'cute' 'female'>>
Your heart starts pounding, as you kneel in front of this quite enormous <<getWordPenis>>, wearing your <<if $scene.gloryholestatus.topTagStyle == 'sissy' && !$fetish.sissy>>girly<<else>><<=$scene.gloryholestatus.topTagStyle>><</if>>
<<if $scene.gloryholestatus.topTagType == 'underwear'>>
lingerie.
<<else>>
outfit.
<</if>>
<<case 'modest'>>
You kneel in front of this quite enormous <<getWordPenis>>, wearing your modest looking female underwear. Not so modest anymore, when you think about what you're going to do next.
<<case 'male'>>
Your heart starts pounding as you kneel in front of this quite enormous <<getWordPenis>>.
<</switch>><br>
<br>
"@@.npc_gloryhole;Hey, <<=setup.getNpcName("npc_prostitute","first")>>. I can hear you moving in there. Changing into something more comfortable? To bad I can't see ya! I bet you look real cute and stuff. So... you gonna start anytime soon?@@"<br>
<br>
<<if $scene.gloryholestatus.topTagType == 'underwear'>>
<<switch $scene.gloryholestatus.topTagStyle>>
<<case 'sissy' 'fetish' 'bold' 'cute' 'female' 'modest'>>
<<printThought "I really could use that money. But why did I strip down... especially into these clothes?">>
<<default>>
<<printThought "I really could use that money. But why did I strip down? I don't want my clothes to get dirty. Yeah, that's it!">>
<</switch>>
<<else>>
<<switch $scene.gloryholestatus.topTagStyle>>
<<case 'sissy' 'fetish' 'bold' 'cute' 'female' 'modest'>>
<<printThought "I really could use that money. But why did I change into these clothes?">>
<<default>>
<<printThought "I really could use that money.">>
<</switch>>
<</if>>
<br><br>
<</if>>
<<if $player.money.total<0>>
[<<moveTo "event_gloryhole_1_2" "Give in and do a handjob, but just for the money!" 360 '<<set $scene.gloryholestatus.reason = "money">>'>>]<br>
<<elseif setup.getAverageSecStyle() == "money">>
[<<moveTo "event_gloryhole_1_2" "You've sold so much of yourself already... what's one bit more?" 360 '<<set $scene.gloryholestatus.reason = "money">>'>>]<br>
<<else>>
[@@.link_locked;You're not desperate enough for money to prostitute yourself.@@]<br>
<</if>>
<<if $npc_psychiatrist.hypnosis>0>>
[<<moveTo "event_gloryhole_1_2" "Give in and do a handjob... because you're curious!" 360 '<<set $scene.gloryholestatus.reason = "curiosity">>'>>]<br>
<</if>>
<<if $scene.gloryholestatus.orgHorney.ret>>
[<<moveTo "event_gloryhole_1_2" "Give in and do a handjob... because you're horny as hell!" 360 '<<set $scene.gloryholestatus.reason = "horny">>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency() || setup.checkOutsideDecencyReason().includes("makeup") || setup.checkOutsideDecencyReason().includes("heels")>>
[<<moveTo "event_gloryhole_1_1_leave" "Leave in a hurry!" 180>>]
<<else>>
[@@.link_locked;You're not leaving in these clothes!@@]
<</if>>
</div>/*#
#desc: have second thoughts about fleeing first time in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
You are just about to abandon the stall, grab your stuff and run for the hills<<if setup.checkOutsideDecencyReason().includes("heels") && (setup.hasTmpEffect('tipsy') || setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted'))>>, stumbling slightly in heels too tall for your inebriation <</if>> when something inside you draws you short, makes you hesitate. Just a moment. Less then a second. Something inside you wants to touch <<if $options.fem>>her<<else>>this<</if>> dick. Needs to touch <<if $options.fem>>her<<else>>this<</if>> dick. Give it exactly what it wants. Touch it. Squeeze it. Rub it until it comes. Give it the attention it deserves.<br>
<br>
<<printThought "I just like, want to touch it!" 40>><br>
<<printThought "Were those my thoughts? What is happening to me?">><br>
<br>
[<<moveTo "event_gloryhole_1_1_thought" "Give it another thought..." 360>>]<br>
<<if setup.checkOutsideDecency() || setup.checkOutsideDecencyReason().includes("makeup") || setup.checkOutsideDecencyReason().includes("heels")>>
[<<moveTo "event_gloryhole_1_1_flee" "Run like hell!" 180>>]
<</if>>
</div>/*#
#desc: rethink about attempting to flee first time in gloryhole
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
You take a deep breath — and take another look at the big <<getWordPenis>> sticking out at you through the gloryhole. A drop of <<getWordCum>> falls from the tip, like the sand of an hourglass trickling away, reminding you that this is a "limited time" opportunity...<br>
<br>
<<if $player.money.total<0>>
[<<moveTo "event_gloryhole_1_2" "Give in and do a handjob, but just for the money!" 360 '<<set $scene.gloryholestatus.reason = "money">>'>>]<br>
<<elseif setup.getAverageSecStyle() == "money">>
[<<moveTo "event_gloryhole_1_2" "You've sold so much of yourself already... what's one bit more?" 360 '<<set $scene.gloryholestatus.reason = "money">>'>>]<br>
<<else>>
[@@.link_locked;You're not desperate enough for money to prostitute yourself.@@]<br>
<</if>>
<<if $npc_psychiatrist.hypnosis>0>>
[<<moveTo "event_gloryhole_1_2" "Give in and do a handjob... because you're curious!" 360 '<<set $scene.gloryholestatus.reason = "curiosity">>'>>]<br>
<</if>>
<<if $scene.gloryholestatus.orgHorney.ret>>
[<<moveTo "event_gloryhole_1_2" "Give in and do a handjob... because you're horny as hell!" 360 '<<set $scene.gloryholestatus.reason = "horny">>'>>]<br>
<</if>>
<<if setup.checkOutsideDecency() || setup.checkOutsideDecencyReason().includes("makeup")>>
[<<moveTo "event_gloryhole_1_1_flee" "Run like hell!" 180>>]
<<else>>
[@@.link_locked;You're not leaving in those clothes!@@]
<</if>>
</div>/*#
#desc: flee from first time at gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
In a panic you pull on your clothes and rush out of the stall without even remembering to flush. Some deranged part of you glances over as you walk past the partially-ajar stall door to catch a glimpse of the potential "client" pressed against the wall opposite where you were moments ago sitting.<br>
<br>
"@@.npc_gloryhole;Hey! come back!@@" The <<man>> shouts, but you flee the bathroom as swiftly as you can.<br>
<br>
[<<moveTo "room_usual_place_outside" "Rushing through the bar you don't stop until you're back outside in the cool night air." 360 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: first time gloryhole, jerk him off, he asks you to lick it clean
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<set _c1 = setup.checkTopBodySlot('penis','bottom')>>
<<set _c2 = setup.checkTopBodySlot('tits','bottom')>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryholestatus.cum = false>>
<<changeHorny 20>>
<<if setup.canPlayerCumSimple($player,setup.getTotalValue('penis'))>>
<<set $scene.gloryholestatus.cum = true>>
<</if>>
<<set $player.flags.gloryhole.handjob += 1>>
<<set $scene.gloryholestatus.cage = setup.getItemTypeName("cage")>>
<<set $scene.gloryholestatus.plug = setup.getItemTypeName("plug")>>
<<if $player.timebased.dirty<50>>
<<set $player.timebased.dirty = 50>>
<</if>>
<<if _c1 != ''>>
<<if $scene.gloryholestatus.cum>>
<<changeItemStatus _c1 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<<if _c2 != ''>>
<<changeItemStatus _c2 'cumsoaked' '["set",100]'>>
<</if>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<setThreshold 'penis' 'gloryhole_penis' 'first_contact'>>
<<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining'>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<<case 'curiosity'>>
<<setThreshold 'penis' 'gloryhole_penis' 'first_contact'>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<<case 'horny'>>
<<setThreshold 'penis' 'gloryhole_penis' 'first_contact'>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<</switch>>
<<set $scene.handJobMoney = 30>>
<<addCredits $scene.handJobMoney>>
<<set $player.flags.gloryhole.totalmoney += $scene.handJobMoney>>
<<set $npc_barkeeper.handjobs += 1>>
<<if !$player.virgin.handjob>>
<<set $player.virgin.handjob = 'npc_gloryhole'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_5'
5
'event_psychiatrist_session_prostitution_1'
true
>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" "cock1" "mouthclosed">>
<div id="invframe" class="scrolltext">
And here you finally are. If someone had told you a few weeks ago you would end up here, on your knees in front of a throbbing <<getWordPenis>>, you'd call them nuts.<br>
<br>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<printThought "Calm down, damn it. I'm only doing this for the money!">><br>
<br>
At least that is what you try to tell yourself over and over again. That doesn't change the fact that you're kneeling in front of this enormous <<getWordPenis>>, looking
<<case 'curiosity' 'horny'>>
<<printThought "Oh god. What am I doing? This can't be real!">><br>
<br>
This thought circles your mind over and over again, while you remain kneeling in front of this enormous <<getWordPenis>>, looking
<</switch>>
<<switch $scene.gloryholestatus.topTagStyle>>
<<case 'sissy' 'fetish'>>
<<if $scene.gloryholestatus.topTagType == 'underwear'>>
like some<<if $scene.gloryholestatus.topTagStyle == 'sissy' && !$fetish.sissy>> <<else>> <<=$scene.gloryholestatus.topTagStyle>> <</if>>whore ready to get on with it!
<<else>>
like a<<if $scene.gloryholestatus.topTagStyle == 'sissy' && !$fetish.sissy>> <<else>> <<=$scene.gloryholestatus.topTagStyle>> <</if>>slave ready to serve its <<master>>!
<</if>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
And while the money sure is a nice bonus, that's not the reason why you do this at all, is it, <<=setup.getNpcName("npc_prostitute","first")>>? It's because deep inside you knew all along that this is where you belong!
<<case 'curiosity'>>
And like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are, you know deep inside that this is exactly where you belong! On your knees, in front of this big <<getWordPenis>>.
<<case 'horny'>>
And like the horny little bitch you are, you know deep inside that this is exactly where you have always belonged! On your knees, in front of this big <<getWordPenis>>.
<</switch>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
Which is exactly what you are right now.
<<case 'curiosity'>>
Except you're not doing this for the money. You simply want to know...
<<case 'horny'>>
But you're simply a puppet of your desires, horny beyond measure, so you don't even care.
<</switch>>
<<case 'cute'>>
like some cute schoolgirl trying to earn a few bucks for a more comfortable life.
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
Or, more accurately, a prostitute dressing as schoolgirl. Though outcome is pretty much the same.
<<case 'curiosity'>>
Except you're not doing this for the money. You simply want to know...
<<case 'horny'>>
But you're simply a puppet of your desires, horny beyond measure, so you don't even care.
<</switch>>
<<case 'female' 'modest'>>
like some bored housewife, trying to make her life more exciting!
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
Or a Prostitute dressing as Schoolgirl. The outcome is pretty much the same.
<<case 'curiosity'>>
Except you're not doing this for the money. You simply want to know...
<<case 'horny'>>
But you're simply a puppet of your desires, horny beyond measure, so you don't even care.
<</switch>>
<<default>>
<<if setup.getTotalValue("humiliation") > 10 || setup.getTotalValue("bimbofication") > 10>>
like some <<if setup.getTotalValue("feminization") < 10>>boy toy <</if>>whore, ready to serve its next customer.
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
Which is exactly what you are right now.
<<case 'curiosity'>>
Except you're not doing this for the money. You simply want to know...
<<case 'horny'>>
But you're simply a puppet of your desires, horny beyond measure, so you don't even care.
<</switch>>
<<else>>
vaguely respectably, right?
<br><br>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<printThought "Yeah, I'm just here for the money, don't think about anything else...">>
<<case 'curiosity'>>
<<printThought "Yeah, I'm just experimenting... nobody can see me, anyway.">>
<<case 'horny'>>
<<printThought "Why does the idea of someone seeing me like this turn me on?">>
<</switch>>
<</if>>
<</switch>>
Your heart is racing as you lean closer to this big <<getWordPenis>>. The head is rosy and pulses with energy, the dickhole already oozing with precum. You can see the blood pumping through the veins making its shaft twitch and thump. It has a strong, musky smell emanating from it, potent, but not unpleasant. It's driving you insane. You should be repulsed, not aroused,
<<if $player.body_ref.penis>>
<<if $scene.gloryholestatus.cage!="">>
but your <<getWordMyPenis>> is pressing against the <<=$scene.gloryholestatus.cage>> without mercy.
<<elseif setup.checkItemTypeWorn('panties')>>
but your <<getWordMyPenis false>> is getting hard rubbing against your <<=setup.getItemTypeName('panties')>>, while you gently stroke it through the fabric.
<<else>>
but your <<getWordMyPenis false>> is getting hard while you gently stroke it.
<</if>>
<<else>>
but you are dripping excitement
<<if $scene.gloryholestatus.cage!="">>
beneath your chastity prison.
<<elseif setup.checkItemTypeWorn('panties')>>
through your panties.
<<else>>
down your leg as you idly finger yourself.
<</if>>
<</if>>
<br><br>
<<printThought "This is so wrong, but I can't help myself!">><br>
<br>
You take the <<getWordPenis>> in your hand. It is much warmer than expected, and you feel it pulsing and twitching in your hand. You hear <<if $options.fem>>a high pitched<<else>>an audible<</if>> moan from the other side of the stall and take it as encouragement as you start moving your hand up and down the long, meaty shaft. You realise that without any help from lotion working on an extra large tool like this will take way too long. Thinking quickly you spit into one hand and rub it all over <<his>> dickhead to mix with the precum for added viscosity. As you work, your second hand starts on <<his>> balls, massaging them wholeheartedly. All your hard work massaging feet for years pays off as you feel the rhythm of the throbbing and pulsating getting stronger and quicker in your hands, the moans from the other side of the wall progressively more ecstatic. As you indulge this <<getWordPenis>>, you're getting hornier and hornier as well.
<<if $scene.gloryholestatus.cage!="">>
But your <<getWordMyPenis>> is being constrained by your <<=$scene.gloryholestatus.cage>>, making you unable to cum in a normal fashion. But you want to cum, you need to cum, together with the <<if !$options.fem>>manly <</if>><<getWordPenis>> in your hand.
<<if $scene.gloryholestatus.plug!="">>
You pull the <<=$scene.gloryholestatus.plug>> out of your wet <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>> and start fingering your anus vigorously, until you've brought yourself to the brink of sweet analgasm!
<<else>>
Lubricating your other hand with the precum leaking through your <<=$scene.gloryholestatus.cage>>, you start fingering your <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>> vigorously, until you're on the brink of sweet analgasm!
<</if>>
<</if>>
Suddenly the hard, pulsing <<getWordPenis>> explodes in your grasp, spraying <<getWordCum>> all over your hand
<<if _c2 == ''>>
and chest inking your skin with the creamy off white <<getWordCum>>,
<<else>>
and chest, onto your <<=setup.getItemName(_c2)>>, soaking it with <<getWordCum>>.
<</if>>
<<if $scene.gloryholestatus.cage!="">>
<<if $scene.gloryholestatus.cum>>
<<if _c1 == ''>>
Your <<getWordCum true>> leaks out of you onto the floor, but without the sweet release of an real orgasm, you still feel horny as hell.
<<else>>
Your <<getWordCum true>> leaks out of you onto the floor, soaking into your <<=setup.getItemName(_c1)>>, but without the sweet release of an real orgasm, you still feel horny as hell.
<</if>>
<<if $scene.gloryholestatus.plug!="">>
Groaning with need you shove the <<=$scene.gloryholestatus.plug>> back up your wet <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>>.
<</if>>
<<else>>
<<if _c1 == ''>>
Besides a few drops of <<getWordCum true>> dripping onto the floor, you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it.
<<else>>
Besides a few drops of <<getWordCum true>> dripping into your <<=setup.getItemName(_c1)>>, you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it.
<</if>>
<</if>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
And if money was really the sole reason you did this, why do you feel so disappointed? Maybe you wanted more?
<<case 'curiosity'>>
And since you're unable to please yourself, it looks like its your calling now to please others, like a good little <<if $fetish.sissy>>sissy<<else>>girl<</if>>. But wasn't that the reason why you were curious in the first place?
<<case 'horny'>>
And being unable to find sweet, sweet release is driving you nuts. It's driving you over the edge. You have to advance your efforts to bring pleasure to this <<getWordPenis>> to find pleasure yourself!
<</switch>>
<<else>>
<<if $scene.gloryholestatus.cum>>
<<if _c1 == ''>>
You shoot a load of <<getWordCum true>> on the floor.
<<else>>
You spray a load of <<getWordCum true>> into your <<=setup.getItemName(_c1)>>.
<</if>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
If money was really the sole reason you did this, why did you cum harder than you ever have before?<br>
<br>
<<printThought "But, but I only did it for the money... didn't I?">>
<<case 'curiosity'>>
Pleasing others made you so horny you came yourself<<if $fetish.sissy>>, sissy<</if>>!<br>
<br>
<<printThought "Oh God... what have I done? But I'm so horny! Why does this make me so horny?">>
<<case 'horny'>>
Pleasing others made you so horny you came yourself<<if setup.checkItemTypeWorn("cage")>>, despite the chastity device locked around your <<getWordMyPenis false>><</if>>!<br>
<br>
<<printThought "Oh I came by giving pleasure to others. Maybe that's the way?">>
<</switch>>
<<else>>
while you're unable to cum yourself.
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
And if money was really the sole reason you did this, why do you feel so disappointed? Maybe you wanted more?
<<case 'curiosity'>>
And since you're unable to please yourself, it looks like its your calling now to please others, like a good little <<if $fetish.sissy>>sissy<<else>>girl<</if>>. But wasn't that the reason why you were curious in the first place?
<<case 'horny'>>
Pleasing others made you so much more horny, but still, you're unable to find sweet release yourself!<br>
<br>
<<printThought "Maybe I have to increase my efforts? Yeah, that has to be it!">>
<</switch>>
<</if>>
<</if>>
<br><br>
<<createStackedImage "toiletHandjob" "cock1" "holdcock" "mouthclosed" "cum_penis">>
<br>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<printThought "No... my lack of money made me do it... right?">>
<<case 'curiosity'>>
<<printThought "What? No, this is wrong.<<if !$options.fem>> I'm not into guys! I'm into girls.<</if>> Damn it!">>
<<case 'horny'>>
<<printThought "What? No, this is wrong. I cannot let my urges control me like this!">>
<</switch>>
<br><br>
"@@.npc_gloryhole;Wow... <<=setup.getNpcName("npc_prostitute","first")>>. You're awesome. Legends of your handiwork were not exaggerated. You're really good with your hands. Makes me wonder how good your mouth would be. Anyway, here, take this. You've earned it.@@"<br>
<br>
<<He>> hands you <<=$scene.handJobMoney>> Credits through the gloryhole.
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
30. Credits. You just sold the remains of your dignity for 30 Credits. Way to go.<br>
<br>
<<printThought "What... I just prostituted myself for a mere 30 Credits?">>
<<case 'curiosity' 'horny'>>
You hesitate. Getting paid for sexual acts is not forbidden per se, but you feel kind of odd for taking it.
<<if $player.money.total <= 0>>
But then again, your financial situation isn't that great.
<</if>>
After a short while, you decide to take it.
<</switch>>
<br><br>
"@@.npc_gloryhole;So, <<=setup.getNpcName("npc_prostitute","first")>>. You wanna earn a few extra creds? All you have to do is to lick up that hot <<getWordCum>> all over your hand and swallow it while showing me your mouth through the hole. Go ahead, you know you want to!@@"<br>
<br>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
[<<moveTo "event_gloryhole_1_3" "Reluctantly lick the <<getWordCum>> off your hand while thinking about the money..." 360>>]<br>
<<case 'curiosity'>>
[<<moveTo "event_gloryhole_1_3" "Lick the <<getWordCum>> off your hand while accepting the truth..." 360>>]<br>
<<case 'horny'>>
[<<moveTo "event_gloryhole_1_3" "Eagerly lick the <<getWordCum>> off your hand because you're still horny!" 360>>]<br>
<</switch>>
[<<moveTo "event_gloryhole_1_3_stop" "Stop this right now!" 30>>]
</div>/*#
#desc: decline to lick cock clean first time at gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
<<if !$scene.gloryholestatus.finished>>
You decide to end this charade and leave as swiftly as possible.<br>
<br>
<</if>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<printThought "Oh God. I sold myself to the highest bidder like a prostitute. No one can ever know about this! I should have never come here. I should have never stayed here!">>
<<case 'curiosity'>>
<<printThought "Oh God. I jerked that <<guy>> off like a <<if $fetish.sissy>>sissy<<else>>slut<</if>> in heat. No one can ever know about this! I should have never come here. I should have never stayed here!">>
<<case 'horny'>>
<<printThought "Oh God. I jerked that <<guy>> off like a bitch in heat. No one can ever know about this! I should have never come here. I should have never stayed here!">>
<</switch>>
<br><br>
You clean yourself as best as possible, but someone might notice the signs of what you've done upon closer inspection. You better hurry home fast.
<<if setup.checkOutsideDecency() || setup.checkOutsideDecencyReason().includes("makeup")>>
<br><br>
[<<moveTo "event_gloryhole_1_3_flee_dirty" "Leave in a hurry!" 180 "<<deleteMember $scene 'gloryholestatus'>>">>]
<<else>>
But you're not feeling comfortable to traverse the streets in this outfit. You really should change your clothes.<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_gloryhole_1_3_flee_dirty" "Throw on your clothes and flee!" 60 "<<useClothSetPop 'gloryhole_1'>>">>]
<</if>>
<<hint $options "Manually change clothing via the inventory.">>
<</if>>
</div>/*#
#desc: flee usual place first time
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkWornStatus('piss','>',25) || setup.checkWornStatus('cum','>',25)>>
<<applyStress 20>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 8 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location to "Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You hurry out of the bar.
<<if setup.checkWornStatus('piss','>',25) && setup.checkWornStatus('cum','>',25)>>
You can smell the
<<if setup.checkWornStatus('piss','>',25) && setup.checkWornStatus('cum','>',25)>>
piss and cum
<<elseif setup.checkWornStatus('piss','>',25)>>
piss
<<elseif setup.checkWornStatus('cum','>',25)>>
cum
<<else>>
ERROR: unexpected
<</if>>
soaked into your clothes, and the idea that everyone else can, as well, only heightens your humiliation as you make the walk of shame homeward.
<<else>>
You try to convince yourself that nobody is watching... and yet you cannot suppress the shame, the heightened sense of humiliation as you make the walk of shame homeward.
<</if>>
<br><br>
Even your apartment building is faint safety, the clash of the supposed comfort of home against what you've just done...<br>
<br>
<<printThought "What's happening to me?">><br>
<br>
You shake your head. Maybe some sleep will help... and a shower... definitely a shower.<br>
<br>
[<<moveTo 'room_foyer' 'Home...' 600>>]
</div>/*#
#desc: lick cock clean first time gloryhole, he asks you to drink his piss
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<setThreshold 'cum' 'gloryhole_cum' 'cum_curious'>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<<applyExperience 'submission' 11 'almost' $INCOGNITO>>
<<if $player.virgin.swallow_cum_other == false>>
<<set $player.virgin.swallow_cum_other = true>>
<<set $player.virgin.swallow_cum_other_first = 'npc_gloryhole'>>
<</if>>
<<if $scene.gloryholestatus.reason == 'money'>>
<<applyExperience 'whoring' 3 'normal' $INCOGNITO>>
<<changeHorny 5>>
<<else>>
<<changeHorny 25>>
<</if>>
<<addCredits 10>>
<<set $player.flags.gloryhole.totalmoney += 10>>
<<if !$player.sec_style.sex.drink_cum>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<set $player.sec_style.sex.drink_cum = "money">>
<<case 'curiosity'>>
<<set $player.sec_style.sex.drink_cum = "voluntary">>
<<case 'horny'>>
<<set $player.sec_style.sex.drink_cum = "enthusiast">>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" "cock1_flacid" "mouthopen" "lickhand">>
<div id="invframe" class="scrolltext">
You shiver as you slowly move your hand towards your mouth, positioning your mouth close to the gloryhole so it is visible from the other stall.<br>
<br>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<printThought "I might as well do this, if it means I get some more... 30 ain't that much after all...">>
<<case 'curiosity'>>
<<printThought "I came this far, I might as well continue...">>
<<case 'horny'>>
<<printThought "I came this far, but I'm not done yet!">>
<</switch>>
<br><br>
You dip the tip of your tongue into the stranger's cum. Suddenly it hits you like a hammer. You just licked someone else's baby batter, straight from their meatstick.
<<if !$player.virgin.swallow_cum_self && $player.virgin.swallow_cum_other>>
Even before you tasted your own cum. Which wasn't your plan anyway. Which both weren't your plans!
<</if>>
<<if $fetish.piss>>
It tastes bitter and smells a little bit like urine. Maybe the stranger pissed right before you went to work on <<his>> shaft<<if !$options.fem>> of manliness<</if>>. Yuck. But still you can't stop licking your hand until it's all inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine. Only once the flavour has filled your throat do you swallow it.<br>
<br>
<<else>>
It tastes bitter and thin, like <<he>> masturbated more then once today. Yuck. But still you can't stop licking your hand until it's all inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine. Only once the flavour has filled your throat do you swallow it.<br>
<br>
<</if>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<printThought "Why... why am I enjoying this so much?">>
<<case 'curiosity'>>
<<printThought "I enjoyed that way too much!">>
<<case 'horny'>>
<<printThought "This... this is making me horny again!">>
<</switch>>
<br><br>
"@@.npc_gloryhole;Nice. You surely are a whore through and through <<=setup.getNpcName("npc_prostitute","first")>>. Very good. Here you go, your reward.@@" The stranger informs you while handing you another 10 credits through the glory hole. "@@.npc_gloryhole;Hmmm... tell you what. I'll double that amount if you do me one last favour.@@"<br>
<br>
You explain to the stranger that you don't do blowjobs.<br>
<br>
<<printThought "I am not going to put your cock into my mouth, no matter what. I still have a little shred of dignity left inside of me!">><br>
<br>
"@@.npc_gloryhole;Don't worry, I simply need you to put your open mouth next to the gloryhole and don't move no matter what, do you understand? You're a good little <<if $fetish.sissy>>sissy<<else>>girl<</if>>, eager to follow my every command, aren't you?@@"<br>
<br>
<<if $fetish.piss>>
<<if $scene.gloryholestatus.reason=='money'>>
[<<moveTo "event_gloryhole_1_4" "Nod and move your head into position thinking of the money..." 360>>]<br>
<<else>>
<<if ($npc_psychiatrist.hypnosis>0) || (setup.getTotalValue('submission')>3)>>
[<<moveTo "event_gloryhole_1_4" "Nod and move your head into position because you were told to..." 360>>]<br>
<<elseif setup.getWillpower() >0>>
[<<moveTo "event_gloryhole_1_4" "Decide for yourself that this is what you want and move your head into position." 360>>]<br>
<</if>>
<</if>>
[<<moveTo "event_gloryhole_1_3_stop" "Really, this time stop it!" 30>>]
<<else>>
You have a bad feeling about this and tell your patron that you decline <<his>> offer.<br>
<br>
"@@.npc_gloryhole;Screw you, you deserve to be pissed on <<=setup.getNpcName("npc_prostitute","first")>>, or whatever your name is. I know very well that you're not <<=setup.getNpcName("npc_prostitute","first")>>. It's not a very nice thing to steal someone's workplace, you know? So if you don't leave that stall soon I am going to piss on you whether you like it or not. And I think we both know what's the case here you whore!@@"<br>
<br>
You suddenly hear an angry voice from a few stalls away, "@@.npc_prostitute;Screw you <<if $options.fem>>Rachel<<else>>Robert<</if>>, you know full well that my stall is over here, or are you too drunk to count again!@@" The remark is accompanied by laughter echoing through the restroom.<br>
<br>
"@@.npc_gloryhole;What? Oh shit. Fuck. I am so sorry. Wow, look at the time. Whelp, I'll be gone then,@@" is the last thing you hear before someone hastily leaves the stall next to yours.<br>
<br>
[<<moveTo "event_gloryhole_1_3_stop" "Clean yourself up as best you can given the circumstances." 60>>]
<</if>>
</div>/*#
#desc: drink piss first time gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<applyExperience 'humiliation' 14 'very' $INCOGNITO>>
<<applyExperience 'submission' 11 'very' $INCOGNITO>>
<<setThreshold 'piss' 'gloryhole_piss' 'first_time'>>
<<if $scene.gloryholestatus.reason == 'money'>>
<<applyExperience 'whoring' 3 'normal' $INCOGNITO>>
<<changeHorny 5>>
<<else>>
<<changeHorny 25>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" "cock1" "holdcock" "mouthclosed" "piss">>
<div id="invframe" class="scrolltext">
"@@.npc_gloryhole;Very good. I've been waiting the whole evening to do this. So don't waste a single drop.@@"<br>
<br>
<<printThought "Wait a second... <<he>> is not going to... is <<he>>?">><br>
<br>
Before you can finish that train of thought a torrent of hot, golden <<getWordPiss>> hits your face, pouring down into your open mouth. You can feel the hot liquid all over your face, its rather nasty fragrance finding its way into your nose, its bitter taste on your tongue, removing all the lingering taste of cum remaining from your last perversion. And you just kneel there. Unable to move even a single inch, as if rooted to the spot. The sheer shock of being used like a dirty urinal in a public toilet is too much for your mind and you stay in place like a fawn staring right into two oncoming headlights.<br>
<br>
<<printThought "Oh god! No! What have I done?">><br>
<br>
"@@.npc_gloryhole;Come on <<=setup.getNpcName("npc_prostitute","first")>>. My friend told me you like this. But to me it looks like maybe that was an exaggeration? Tell you what, <<=setup.getNpcName("npc_prostitute","first")>>. If you swallow it like the good little toilet slave you are... swallow it like the living urinal you're supposed to be and show me your proud empty mouth like the slut you are, I'll triple that amount! So, what do you say? Ooh, I feel like there's still a lot inside me. Be ready!@@"<br>
<br>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
[<<moveTo "event_gloryhole_1_5_swallow" "I have to swallow it. Even if that makes me a toilet slave!" 360>>]<br>
[<<moveTo "event_gloryhole_1_5_spit" "No money is worth this! I need to spit it out!" 360>>]<br>
<<case 'curiosity'>>
[<<moveTo "event_gloryhole_1_5_swallow" "I have to swallow it. Even if that makes me a <<if $fetish.sissy>>sissy<<else>>human<</if>> toilet!" 360>>]<br>
[<<moveTo "event_gloryhole_1_5_spit" "No, no sexual curiosity is worth this! I should spit it out!" 360>>]<br>
<<case 'horny'>>
[<<moveTo "event_gloryhole_1_5_swallow" "God, I'm so horny right now. I'll do everything <<he>> wants!" 360>>]<br>
[<<moveTo "event_gloryhole_1_5_spit" "No! I have to calm down. I don't want this. I should spit it out!" 360>>]<br>
<</switch>>
</div>/*#
#desc: spit out piss first time at gloryhole
#status: FINISHED 0.4.0.0
#ignore_spell: wh
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryholestatus.pissChest = setup.checkTopBodySlot('tits','top')>>
<<set $scene.gloryholestatus.pissButtTop = setup.checkTopBodySlot('bootie','top')>>
<<set $scene.gloryholestatus.pissButtBottom = setup.checkTopBodySlot('bootie','bottom')>>
<<set $scene.gloryholestatus.finished = true>>
<<if $scene.gloryholestatus.pissChest != ''>>
<<changeItemStatus $scene.gloryholestatus.pissChest 'piss' '["set",50]'>>
<</if>>
<<if $scene.gloryholestatus.reason == 'money'>>
<<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining'>>
<<applyExperience 'whoring' 3 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<applyExperience 'piss' 5 'normal' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 14 'very' $INCOGNITO>>
<<applyExperience 'piss' 7 'normal' $INCOGNITO>>
<</if>>
<<changeStatAllWorn 'piss' 100>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+50)>>
<<addCredits 40>>
<<set $player.flags.gloryhole.totalmoney += 40>>
<<set $player.flags.gloryhole.pissjob += 1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" "cock1" "holdcock" "mouthopen" "piss">>
<div id="invframe" class="scrolltext">
You spit out the piss then close your mouth so no more can flow inside. Unfortunately you're still left with the bitter, nasty taste on your tongue.<br>
<br>
<<printThought "No way! I am not going to swallow this!">><br>
<br>
"@@.npc_gloryhole;Oh well, I can still have fun like this, you know.@@" You hear from the other side as <<he>> starts to swing <<his>> <<getWordPenis>> around, spraying piss all over you. <<He>> must have drunk a lot because <<he>> easily sprays over you until there's nothing left that has not been soaked in <<getWordPiss>>.<br>
<br>
<<printThought "Fuck, I will smell like a dirty urinal while walking home. I really hope nobody sees me like this!">><br>
<br>
"@@.npc_gloryhole;Now turn around and put that sexy little butt of yours in the air so I can mark you like the dirty bitch you are@@"<br>
<br>
You hesitate for a moment.
<<if setup.getTotalValue('submission')>5>>
But with all your submissive behaviour lately you find <<his>> dominant way with you rather exciting, and decide to continue to follow <<his>> instructions.
<<else>>
But you have come this far
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
in pursuit of some desperate needed money, and decide to continue to follow <<his>> instructions.
<<case 'curiosity'>>
in pursuit of your sexual curiosity, and decide to continue to follow <<his>> instructions.
<<case 'horny'>>
in attempting to fulfill your sexual curiosity <<glitchText "need">>, and decide to continue to follow <<his>> instructions.
<</switch>>
<</if>>
You turn around and bend over, moving your head very close to the floor which is already wet from all that urine as you move your butt in the air. After only a few seconds you can feel the hot <<getWordPiss>>
<<if $scene.gloryholestatus.pissButtTop == ''>>
wetting your buttcheeks.
<<else>>
<<if $scene.gloryholestatus.pissButtTop == $scene.gloryholestatus.pissButtBottom>>
soaking through your <<=setup.getItemName($scene.gloryholestatus.pissButtTop)>>.
<<else>>
soaking through your <<=setup.getItemName($scene.gloryholestatus.pissButtTop)>> until it finally reaches your <<=setup.getItemName($scene.gloryholestatus.pissButtBottom)>>.
<</if>>
<</if>>
You lose track of time during the whole ordeal, forgetting the reason why you are doing it in the first place after a while. All there is for you is your place on the floor, accepting urine like a nasty toilet. Maybe that's just your place in life now.<br>
<br>
<<printThought "Wh... what?">><br>
<br>
"@@.npc_gloryhole;I said maybe that's your place in life now, <<=setup.getNpcName("npc_prostitute","first")>>. Or whatever your name is. I know very well that you're someone other than her. It's not a very nice thing to steal someone's workplace, you know? But heavens, you took that piss like it was the best thing in life. You should have swallowed though, the cleaner is going to get a heart attack. Well, a deal is a deal, here you go.@@" <<he>> says, passing you 40 more credits.<br>
<br>
You suddenly hear an angry voice from a few stalls away: "@@.npc_prostitute;Screw you <<if $options.fem>>Rachel<<else>>Robert<</if>>, you know full well that my stall is over here, or are you too drunk to count again!@@" followed by laughter echoing through the restroom.<br>
<br>
"@@.npc_gloryhole;Oh shit. Fuck. I am so sorry. Wow, look at the time. Whelp, I'll be gone then,@@" is the last thing you hear before someone hastily leaves the stall next to yours.<br>
<br>
[<<moveTo 'event_gloryhole_1_3_stop' 'Continue.' 666>>]
</div>/*#
#desc: swallow piss first time at gloryhole
#status: FINISHED 0.4.0.0
#ignore_spell: wh
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryholestatus.pissChest = setup.checkTopBodySlot('tits','top')>>
<<set $scene.gloryholestatus.finished = true>>
<<if $scene.gloryholestatus.pissChest !=''>>
<<changeItemStatus $scene.gloryholestatus.pissChest 'piss' '["set",50]'>>
<</if>>
<<if $scene.gloryholestatus.reason == 'money'>>
<<applyExperience 'whoring' 5 'normal' $INCOGNITO>>
<<applyExperience 'piss' 10 'normal' $INCOGNITO>>
<<else>>
<<applyExperience 'piss' 10 'normal' $INCOGNITO>>
<</if>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+25)>>
<<addCredits 80>>
<<set $player.flags.gloryhole.totalmoney += 80>>
<<set $player.flags.gloryhole.pissjob += 1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" "cock1" "holdcock" "mouthopen" "piss">>
<div id="invframe" class="scrolltext">
You hold your mouth wide open as the steamy <<getWordPiss>> fills and fills your mouth until there's no more space left!<br>
<br>
<<printThought "Oh no... I am not really going to... am I?">><br>
<br>
The stream stops on the other side as your mouth is completely full and you can hear the stranger whisper, "@@.npc_gloryhole;Go ahead, do it. Swallow it. You know you want to, <<=setup.getNpcName("npc_prostitute","first")>>!@@"<br>
<br>
And then a sudden outburst "@@.npc_gloryhole_dom;DO IT!@@" which makes you flinch back, gulping down the whole load!<br>
<br>
<<printThought "Oh <<getWordGod>>... what have I done. <<He>> used me like a toilet!">><br>
<br>
"@@.npc_gloryhole;Now, that wasn't that hard now was it, <<=setup.getNpcName("npc_prostitute","first")>>? Go ahead, open your beautiful little mouth for me to check if everything flushed down.@@"<br>
<br>
You hesitate for a moment.
<<if setup.getTotalValue('submission')>5>>
But with all your submissive behaviour lately you find <<his>> dominant way with you rather exciting and decide to continue to follow <<his>> instructions.
<<else>>
But you have come this far
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
in pursuit of some desperately needed money and decide to continue to follow <<his>> instructions.
<<case 'curiosity'>>
in pursuit of your sexual curiosity and decide to continue to follow <<his>> instructions.
<<case 'horny'>>
in attempting to fulfill your sexual curiosity <<glitchText "need">> and decide to continue to follow <<his>> instructions.
<</switch>>
<</if>>
You open your mouth again, and without warning <<his>> rock hard <<getWordPenis>> resumes pissing right into that toilet mouth of yours, until it's filled to the brink with hot, nasty <<getWordPiss>> yet again. Only this time <<he>> doesn't give you the benefit of stopping when your mouth is full. This forces you to swallow it fast. While your mouth is closed a continuous stream of <<getWordPiss>> makes its way down your face, to trickle right onto your
<<if $scene.gloryholestatus.pissChest !=''>>
<<=setup.getItemName($scene.gloryholestatus.pissChest )>>, soaking it with hot <<getWordPiss>>.
<<else>>
bare chest, bathing it with the hot, nasty urine.
<</if>>
You lose track of time during the whole ordeal. You swallow <<his>> nasty smelling, and even worse tasting, piss, forgetting the reason why you are doing it in the first place after a while. All there is for you is your place on the floor, accepting urine like a nasty toilet. Maybe that's your place in life now.<br>
<br>
<<printThought "Wh... what?">><br>
<br>
"@@.npc_gloryhole;I said, maybe that's your place in life now, <<=setup.getNpcName("npc_prostitute","first")>>. Or whatever your name is. I know very well that you're not <<=setup.getNpcName("npc_prostitute","first")>>. It's not a very nice thing to steal someone's workplace, you know? But heavens, you swallowed my piss like it was the best thing in life. Well, a deal is a deal, here you go,@@" <<he>> says, passing you 80 more credits.<br>
<br>
You suddenly hear an angry voice from a few stalls away: "@@.npc_prostitute;Screw you, <<if $options.fem>>Rachel<<else>>Robert<</if>>, you know full well that my stall is over here, or are you too drunk to count again!@@" followed by laughter echoing through the bathroom.<br>
<br>
"@@.npc_gloryhole;Oh shit. Fuck. I am so sorry. Wow, look at the time. Whelp, I'll be gone then,@@" is the last thing you hear before someone hastily leaves the stall next to yours.<br>
<br>
[<<moveTo 'event_gloryhole_1_3_stop' 'Continue.' 666>>]
</div>/*#
#desc: stand outside usual place
#status: FINISHED 0.4.0.0
#ignore_spell: d,3am,7pm,1am,6pm
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitution_final = $currentTasks.hasOwnProperty('task_prostitution_final') && setup.compareDay($now,setup.getTaskDueDate('task_prostitution_final'))>>
<</if>>
<<include "calcBarOpen">>
<<set _nextdate = setup.checkTaskLocationTime('room_usual_place_outside')>>
<<if ( (getUTCHours($now)>=6) && (getUTCHours($now) <= 20) )>>
<<set _tmpImage = "./images/locations/the_usual_place_day.png">>
<<else>>
<<set _tmpImage = "./images/locations/the_usual_place_night.png">>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _tmpImage>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCDay() == 1 && setup.dayDiff($now,$npc_admin.flags.rare_meeting.code_red_date)==0>>
You arrive at the Usual Place to find it open... on a Monday. You blink as you double check — the sign has the same cheeky "fuck Mondays" comment as always and yet it's open? You half wonder if <<=setup.getNpcName("npc_admin","first")>> arranged something with the barkeeper... sure <<=setup.getNpcName("npc_barkeeper","first")>> seems to like <<him npc_admin>>, but this... you shake your head — the thought of your friend reminds you that you have more important things to think about right now.
<<else>>
You arrive at the Usual Place, your favourite bar in town. You can read a sign in the window:
<<if $options.militaryTime>>
"Tue-Thu: 19:00-01:00, Fri-Sat: 18:00-03:00, Sun: 18:00-01:00, Mondays closed, because fuck Mondays. ~D."
<<else>>
"Tue-Thu: 7pm-1am, Fri-Sat: 6pm-3am, Sun: 6pm-1am, Mondays closed, because fuck Mondays. ~D."
<</if>>
<<if _open>>
The old school neon open sign is lit over the door and you can hear the sounds of muffled music resonating through the air. A few people stand outside and smoke.
<<else>>
The bar seems to be closed.
<</if>>
<<if _nextdate == null>>
You're not meeting anyone here tonight.
<<elseif setup.compareDay($now,_nextdate)>>
You have plans to meet somebody here today at <<=setup.shortTime(_nextdate)>>.
<</if>>
<br><br>
<<if _nextdate && $scene.prostitution_final && $now.getUTCHours() > 12>>
<<printThought "I've got that job tonight, probably shouldn't distract myself from that.">><br>
<br>
<<else>>
<<include thoughts_current>>
<<if _open>>
<<if $npc_admin.dates>0>>
[<<moveTo "room_usual_place_inside" "Go inside." 30>>]<br>
<<else>>
You don't feel like going inside at the moment.<br>
<br>
<</if>>
<</if>>
<</if>>
<</if>>
<<if _nextdate && setup.compareDay($now,_nextdate) && $now.getUTCHours() > 12>>
<<set _tmpSeconds = 1+setup.secondsToDate($now,_nextdate)>>
<<if $scene.prostitution_final>>
[<<moveTo "room_usual_place_outside" "Report for tonight's job." _tmpSeconds>>]<br>
<<else>>
[<<moveTo "room_usual_place_outside" 'Wait for your "date".' _tmpSeconds>>]<br>
<</if>>
<</if>>
<<if !_open>>
<br><br>
<<switch $now.getUTCDay()>>
<<case 2 3 4>>
<<if $now.getUTCHours() >= 16>>
<<set _barOpen = setup.setNextDate($now, 0, 19, 0)>>
<<set _tmpSeconds = 1+setup.secondsToDate($now,_barOpen)>>
[<<moveTo "room_usual_place_outside" "Wait for the bar to open." _tmpSeconds>>]<br>
<</if>>
<<case 5 6 0>>
<<if $now.getUTCHours() >= 14>>
<<set _barOpen = setup.setNextDate($now, 0, 18, 0)>>
<<set _tmpSeconds = 1+setup.secondsToDate($now,_barOpen)>>
[<<moveTo "room_usual_place_outside" "Wait for the bar to open." _tmpSeconds>>]<br>
<</if>>
<</switch>>
<</if>>
<br>
[<<moveTo "room_citymap" "City Centre." 300>>]
</div><<set _open = false>>
<<if (($now.getUTCDay()==1) && ($now.getUTCHours()<1)) || (($now.getUTCDay()>=2) && ($now.getUTCDay()<5) && ($now.getUTCHours()>=19)) || (($now.getUTCDay()>=3) && ($now.getUTCDay()<6) && ($now.getUTCHours()<1)) ||
(($now.getUTCDay()>=5) && ($now.getUTCHours()>=18)) || ((($now.getUTCDay()>=6) || ($now.getUTCDay()==0)) && ($now.getUTCHours()<3)) || (($now.getUTCDay()==0) && ($now.getUTCHours()>=18)) >>
<<set _open = true>>
<</if>>/*#
#desc: at bar of usual place
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.hasTmpEffect('sissypill_mk1') || setup.hasTmpEffect('sissypill_mk1_od') || setup.hasTmpEffect('sissypill_eternal')>>
<<if setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted')>>
<<initRoom>>
<<if setup.hasTmpEffect('sissypill_eternal') || $player.flags.pink_pill.times_od1 >= 3 && State.hasPlayed("event_pink_pill_strict_4")>>
<<set $player.flags.pink_pill.times_booze1 += 1>>
<<set $scene.boozeSecond = true>>
<<moveTo "event_pink_pill_super_od_1">>
<<else>>
<<moveTo "event_pink_pill_super_1">>
<</if>>
<</if>>
<<elseif setup.hasTmpEffect('sissypill_mk1_false_od') && (setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted'))>>
<<initRoom>>
<<moveTo "event_pink_pill_super_od_linger_1">>
<<elseif $now.getUTCHours() < 22 && setup.hasFreeTime($now, $player, $currentTasks, 10800) && $player.llocation == "room_usual_place_outside" && ($npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay > 100 || $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay > 50 && ["strict", "forced"].includes($player.sec_style.submission.prostitution)) && $player.virgin.anal && $player.sec_style.sex.sex_woman && $npc_prostitute.profile && $fetish.get_raped>>
<<initRoom>>
<<moveTo "event_gloryhole_punish_1">>
<</if>>
<<set $scene.rand = random(1,10)>>
<</if>>
<<if setup.checkOutsideDecencyReason() == "makeup_none" && !(setup.checkItemInInventory('makeup_basic') || setup.checkItemInInventory('makeup_advanced') || setup.checkItemInInventory('makeup_expert'))>>
<<initRoom>>
<<moveTo "event_bar_nomakeup_1">>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if setup.hasTmpEffect('wasted')>>
As you cling to a barstool and wait for the room to start spinning, <<=setup.getNpcName("npc_barkeeper","first")>> looks at you and frowns.<br>
<br>
"@@.npc_barkeeper;I'm going to have to cut you off <<if $npc_barkeeper.flags.reactnamechange>>Ms.<<else>>Mr.<</if>> <<=$player.last_name>>. Don't worry though, the bar is insured for complimentary safe home transport.@@"<br>
<br>
Your speech slurred, you try to explain that you're fine, but you are soon swiftly, but gently, escorted out of the bar, into an automated cab and then up to your apartment.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<<else>>
<<if $npc_barkeeper.flags.reactnamechange>>
"@@.npc_barkeeper;Good evening, Ms. <<=$player.last_name>>, how are you? Can I make you a cocktail or get you a beer?@@"
<<else>>
"@@.npc_barkeeper;Good evening, <<if $npc_barkeeper.profile>>Mr. <<if $player.original_last_name>><<=$player.original_last_name>><<else>><<=$player.last_name>><</if>><<else>>Sir<</if>>, how are you? Can I get you a beer, maybe make you a cocktail?@@"
<</if>>
<br><br>
<<if setup.hasTmpEffect('tipsy')>>
You are starting to feel a bit tipsy, but it's probably fine.
<<elseif setup.hasTmpEffect('drunk')>>
You are definitely not as think as you drunk.
<</if>>
You ponder your options...<br>
<br>
<<if !$options.fem_all_women && $npc_manager.stage >= 2 && !State.hasPlayed("event_bar_pickup_male_1") && $scene.rand == 1>>
<<set _drinkLink = "event_bar_pickup_male_1">>
<<if false>><<moveTo "event_bar_pickup_male_1">><</if>>
<<else>>
<<set _drinkLink = "room_usual_place_inside">>
<<if false>><<moveTo "room_usual_place_inside">><</if>>
<</if>>
[<<moveTo "room_order_drink" "Order a drink." 0 "<<set $scene.postDrink = _drinkLink>><<set $scene.drinkLoc='The Usual Place, Inside'>><<set $scene.drinkBGR = './images/locations/the_usual_place_inside.png'>><<set $scene.drinkChar = setup.charImage('npc_barkeeper')>><<set $scene.priceMulti=1>>">>]<br>
<<if $player.money.total > 10>>
[<<moveTo "event_usual_place_tip" "Tip the barkeeper." 60>>]<br>
<<else>>
[@@.link_locked;You are all but out of money.@@]<br>
<</if>>
<<if !$npc_barkeeper.flags.reactnamechange && $player.sec_style.body.name != "">>
[<<moveTo "event_barkeeper_namechange" "Inform her that you changed your name." 30 "<<set $npc_barkeeper.flags.reactnamechange = true>>">>]<br>
<</if>>
<<if $npc_technician.stage >= 2 || -1 != setup.findThemeId('npc_psychiatrist', 'landlord', 'theme_psychiatrist_landlord_15') || $npc_admin.flags.totalWorkouts == 0 && ($npc_admin.flags.sawHimfuckingManager || $npc_admin.flags.monogomous_manager) || $npc_admin.flags.totalWorkouts > 0 && !$npc_admin.flags.relationship == "">>
[<<moveTo "event_barkeeper_advice" "Ask her for relationship advice." 60>>]<br>
<</if>>
<<if $player.timebased.fatigue > $player.timebased.fatiguemax/2>>
[<<moveTo "room_usual_place_bathroom" "Visit the bathroom." 30>>]<br>
<<if $player.flags.gloryhole.handjob>0>>
[@@.link_locked;You're too tired for the glory hole.@@]<br>
<</if>>
<<else>>
<<if $player.flags.gloryhole.handjob>0>>
[<<moveTo "room_usual_place_bathroom" "Visit the bathroom." 30>>]<br>
<<else>>
[<<moveTo "event_gloryhole_1_1" "Go to the bathroom." 30>>]<br>
<</if>>
<</if>>
<<if !$npc_barkeeper.flags.prostitution.can_work_alley>>
<<if $npc_barkeeper.flags.prostitution.caught > 0>>
[<<moveTo "room_usual_place_barkeeper_talk" "Ask if you can talk about what happened in the gloryhole in private?" 60>>]<br>
<<elseif $npc_barista.flags.know_prostitute && !$npc_barkeeper.flags.prostitution.can_work_alley>>
[<<moveTo "room_usual_place_barkeeper_whore_alt_1" "Say you'd like to take her up on the offer to work as a whore." 60>>]<br>
<<elseif setup.checkItemOwned('card_barkeeper') || $phoneList.includes('npc_barkeeper')>>
[<<moveTo "room_usual_place_barkeeper_talk" "Ask if you can talk about the possibility of working as a whore." 60>>]<br>
<</if>>
<<elseif $npc_barkeeper.flags.prostitution.can_work_alley>>
<<if $player.money.total <= 0>>
[@@.link_locked;You are in debt and cannot pay her.@@]<br>
<<elseif $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay > 0>>
[<<moveTo "event_prostitution_pay_1" "Pay her cut of your earnings." 60>>]<br>
<<else>>
[@@.link_locked;You're already paid up with your madame.@@]<br>
<</if>>
[<<moveTo "room_usual_place_barkeeper_talk_rename_repeat_1" 'You would rather she refer to your "position" by a different term.' 60>>]<br>
<</if>>
<<if $npc_barkeeper.flags.prostitution.can_work_alley>>
[<<moveTo "event_prostitution_root" 'Put in some "work."' 60>>]<br>
<</if>>
<<if $npc_barista.stage == 8 || $npc_barista.stage == 7>>
<<if $events.hasOwnProperty('barista_rescue_final')>>
[@@.link_locked;You already hired <<=setup.getNpcName("npc_barista", "nickname")>> for the weekend.@@]<br>
<<else>>
[<<moveTo "event_barkeeper_talk_barista_1" 'Ask about hiring <<=setup.getNpcName("npc_barista", "nickname")>>.' 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_prostitution_confrontation_3") && !$npc_barkeeper.flags.prostitution.can_work_vip && !$workEvents.hasOwnProperty('prostitution_call')>>
<<if !$npc_barkeeper.flags.prostitution.special_job_reject || !(setup.getTotalValue("whoring") >= 15 && setup.getTotalValue("anal") >= 10 && setup.getTotalValue("oral") >= 10)>>
[<<moveTo "event_prostitution_vip_unlock_0" 'Ask <<=setup.getNpcName("npc_barkeeper", "first")>> about the special job she mentioned over the phone.' 60>>]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_reoffer" 'Ask about the special job with <<=setup.getNpcName("npc_prostitute", "first")>>.' 60>>]<br>
<</if>>
<</if>>
<<if (State.hasPlayed("room_usual_place_gloryhole_use_2") || setup.hasThreshold("whoring", "gloryhole_whoring", "whoreintraining")) && !State.hasPlayed("event_secretary_style_prostitution_enthusiast_1") && !$npc_barkeeper.flags.prostitution.can_work_alley && !$npc_barkeeper.flags.prostitution.caught && !$npc_barista.flags.know_prostitute>>
[<<moveTo "event_secretary_style_prostitution_enthusiast_1" "Bring up the bar's gloryhole." 60>>]<br>
<</if>>
<br>
<<if $npc_barkeeper.flags.prostitution.can_work_alley || $npc_barkeeper.flags.prostitution.caught > 0>>
[<<moveTo "room_usual_place_inside" "Clean yourself up." 600 "<<washClothes>><<include 'cleanPlayer'>><<set $player.makeup.messed=0>>">>]<br>
<br>
<</if>>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high">>
You're perhaps a bit drunk to balance in heels... but maybe if you took it slow?<br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<else>>
[@@.link_locked;Hanging out in the bar is one thing, but you aren't going into town like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
</div>/*#
#desc: at bar of usual place
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -10>>
<<incrementEmotion 'affection' 'npc_barkeeper' 2>>
<<set $scene.offerJob = $npc_barkeeper.affection >= 10 && $npc_barkeeper.flags.prostitution.caught == 0 && $player.flags.gloryhole.totalmoney > 0 && !(setup.checkItemOwned('card_barkeeper') || $phoneList.includes('npc_barkeeper') || $npc_barkeeper.flags.prostitution.can_work_alley)>>
<<if $scene.offerJob>>
<<addItem 'card_barkeeper'>>
<</if>>
<<set $scene.hint = ["like","approach","skill","physical","money_hint","money_hint","money_hint"].random()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.offerJob>>
You leave ten credits on the bar and <<=setup.getNpcName('npc_barkeeper', 'first')>> scoops them up, then pauses. "@@.npc_barkeeper;Thanks again and... say, so... I appreciate your generosity and stuff and, well...@@" Her voice lowers as she leans closer, "@@.npc_barkeeper;I know about your... activities in the bathroom.@@"<br>
<br>
You don't even get a chance to respond to the accusation before she smiles. "@@.npc_barkeeper;Oh, don't worry about it — who do you think drilled out that gloryhole in the first place? This is the Usual Place! We want to serve all our customers' needs! Anyway, here's my card, if you think you might want to do a bit more than anonymously suck cock behind a partition well... give me a ring.@@"<br>
<br>
She leaves a business card on the bar and then walks over to serve another customer.<br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<elseif $npc_barkeeper.flags.prostitution.can_work_alley>>
You leave ten credits on the bar and <<=setup.getNpcName('npc_barkeeper', 'first')>> scoops them up with a smile.<br>
<br>
<<switch $scene.hint>>
<<case "like">>
"@@.npc_barkeeper;Tip for you — each prospective client has different likes, loves, dislikes and hates... dressing to match more of their preferences will not just make them more likely to hire you — they'll tip better, as well!@@"
<<case "approach">>
"@@.npc_barkeeper;Different approaches will work better for different clients — you don't want to come on too strong to someone looking for a more genteel, feminine touch. Of course if you're a skilled enough <<callPlayer "npc_barkeeper">> you might be able to push past this, but it's always better to try to match the customer's preference.@@"
<<case "skill">>
"@@.npc_barkeeper;Once you're hired you'll be expected to perform — if your abilities aren't up to snuff you're liable to make not much cash, but the better your skills, the more you can pull in.@@"
<<case "physical">>
"@@.npc_barkeeper;While clothes maketh the <<if $npc_barkeeper.flags.reactnamechange>>man<<else>>woman<</if>> some clients may be particular about your physicality and you may have to change things up if you want to earn their attention.@@"
<<case "money_hint">>
"@@.npc_barkeeper;You've been doing good, earned me a total of <<=$npc_barkeeper.flags.prostitution.money_earned>>, so thanks for that<<if !$npc_barkeeper.flags.prostitution.can_work_floor>><<if $npc_barkeeper.flags.prostitution.money_earned > .5 * $npc_barkeeper.flags.prostitution.work_floor_threshold>>. Keep this up and I think you'll be ready to take on more advanced customers soon<<else>> I think you could use some more practice, but keep working and I'll let you know when I'm ready to let you take on more advanced jobs<</if>><<elseif $npc_barkeeper.flags.prostitution.can_work_vip>><<if $npc_barkeeper.flags.prostitution.money_earned > .5 * $npc_barkeeper.flags.prostitution.work_floor_threshold>>. Keep this up and I'll see about finding you some VIP customers<<else>>you just keep practicing and I'll let you know when you're ready for VIP customers<</if>><</if>>.@@"
<<default>>
ERROR: unexpected scene.hint <<=$scene.hint>>
<</switch>>
<<else>>
You leave ten credits on the bar and <<=setup.getNpcName('npc_barkeeper', 'first')>> scoops them up with a smile. "@@.npc_barkeeper;Thanks, always glad to be of service.@@"
<</if>>
<br><br>
[<<moveTo "room_usual_place_inside" "Back." 30>>]
</div><<set $scene.gloryholestatus = {}>>
<<set $scene.gloryholestatus.handjob = 0>>
<<set $scene.gloryholestatus.blowjob = 0>>
<<set $scene.gloryholestatus.pissjobCount = 0>>
<<set $scene.gloryholestatus.swallowpiss = 0>>
<<set $scene.gloryholestatus.swallowcum = 0>>
<<set $scene.gloryholestatus.totalmoney = 0>>/*#
#desc: at bar of usual place
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.reactnamechange = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You inform <<=setup.getNpcName('npc_barkeeper', 'first')>> that, actually, you changed your name and you go by <<=$player.first_name>> <<=$player.last_name>>.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
"@@.npc_barkeeper;Oh! I'm so sorry, I mean, I had no way of knowing, but I still would never want to refer to someone incorrectly. I mean, I wondered, what with your change in attire but, well, I try never to assume from that sort of thing. That said... does that mean you are going by Ms. <<=$player.last_name>> now?@@"
<<case 'unisex'>>
"@@.npc_barkeeper;Oh! I'm so sorry, I mean, I had no way of knowing, but I still would never want to refer to someone incorrectly. I mean, I wondered, what with your subtle shift in attire but, well, I try never to assume from that sort of thing. That said... does that mean you are going by Ms. <<=$player.last_name>> now?@@"
<<case 'male'>>
"@@.npc_barkeeper;Oh! I'm so sorry, I mean, I had no way of knowing, but I still would never want to refer to someone incorrectly. Does that mean you are going by Ms. <<=$player.last_name>> now?@@"
<</switch>>
<br><br>
You nod.<br>
<br>
"@@.npc_barkeeper;Very good, I will be certain to refer to you properly henceforth!@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Continue." 30>>]
</div>/*#
#desc: usual place bathroom
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.hasTmpEffect('sissypill_mk1')>>
<<if setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted')>>
<<initRoom>>
<<moveTo "event_pink_pill_super_gloryhole_alt">>
<</if>>
<<elseif setup.hasTmpEffect('sissypill_mk1_od')>>
<<if setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted')>>
<<initRoom>>
<<moveTo "event_pink_pill_super_od_1">>
<</if>>
<</if>>
<<if !$scene.hasOwnProperty('gloryholeOccupied')>>
<<set $scene.gloryholeOccupied = Math.random(1,10) < 3>>
<</if>>
<<set $scene.prostitutePresent = !$scene.gloryholeOccupied && State.hasPlayed("theme_psychiatrist_panties_first_1") && !setup.checkItemOwned("panties_prostitute") && (!State.hasPlayed("event_panties_prostitute_2") || random(1,10) < 4)>>
<</if>>
<<set $player.location to "The Usual Place Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.prostitutePresent>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_prostitute")>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<</if>>
<div id="invframe" class="scrolltext">
You enter the Usual Place bathroom.
<<if $scene.gloryholeOccupied>>
It looks like one of the restroom's two gloryholes is occupied.
<<else>>
Neither gloryhole is occupied.
<</if>>
<br><br>
<<if setup.getTotalValue("makeup") > 0>>
<<if $player.sec_style.clothing.makeup == "">>
[@@.link_locked;You do not think you are ready to put on makeup in a public restroom.@@]
<<if $player.makeup.template != "">>
<br>
[<<moveTo 'room_usual_place_bathroom' 'Just wash your face.' 0 "<<set $player.makeup.template=''>><<set $player.makeup.messed=0>>">>]
<</if>>
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Bathroom of the Usual Place">><<set $scene.return_makeuproom="room_usual_place_bathroom">><<set $scene.makeuproom_image="./images/locations/mall_toilet_2.png">><<set $scene.return_makeuproomtext="Finished.">>'>>]
<</if>>
<br><br>
<</if>>
[<<moveTo "event_prostitute_talk_1" 'You see <<=setup.getNpcName("npc_prostitute","first")>> standing around.' 60>>]<br>
[<<moveTo "room_usual_place_toilet" "Enter the gloryhole." 60>>]<br>
<<if $scene.gloryholeOccupied>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.timebased.horny > 25>>
[<<moveTo "room_usual_place_gloryhole_use_1" 'Approach the "staffed" gloryhole.' 60 "<<set $scene.unlock = false>>">>]<br>
<<else>>
[@@.link_locked;You aren't really in the mood right now.@@]<br>
<</if>>
<<else>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo 'room_usual_place_gloryhole_use_1' 'Unlock yourself and approach the "staffed" gloryhole.' 60 "<<set $scene.unlock = true>>">>]<br>
<<else>>
[@@.link_locked;You're locked in chastity, trying to use the gloryhole would just result in frustration.@@]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "room_usual_place_inside" "Leave the bathroom." 60>>]
</div>/*#
#desc: wait in stall (glory hole) of usual place toilet
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.penis && !$player.body_ref.vagina && $player.body.penissize[0] < 4 && $fetish.sph && ($player.body_ref.shrink_style == '' || $player.body_ref.shrink_style == 'sph')>>
<<if $player.body.penissize[0] < 2>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<if $scene.unlock>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place Gloryhole">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
You step into a stall<<if $scene.unlock>>, <<if setup.analyzeWornTags(['skirt','pants'])=='pants'>>unzip your pants<<else>>lift your skirt<</if>>, and unlock yourself<<else>> and <<if setup.analyzeWornTags(['skirt','pants'])=='pants'>>unzip your pants<<else>>lift your skirt<</if>><</if>> in front of the gloryhole.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
"@@.npc_prostitute;Oh, wow... A twofer! That'll be twenty credits!@@"
<<elseif $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<if $fetish.sph && ($player.body_ref.shrink_style == '' || $player.body_ref.shrink_style == 'sph')>>
"@@.npc_prostitute;Hah! Look at that pathetic little thing! No wonder you need to pay for it! Well come on, twenty credits, it's not like anyone is going to suck on that tiny thing without being paid for it.@@"
<<elseif $player.body_ref.shrink_style == 'spe'>>
"@@.npc_prostitute;Oh, aren't you just adorably lovely! That'll be twenty credits, please.@@"
<<else>>
"@@.npc_prostitute;Service will be twenty credits. Cash up front.@@"
<</if>>
<<case 2 3>>
<<if $fetish.sph && ($player.body_ref.shrink_style == '' || $player.body_ref.shrink_style == 'sph')>>
"@@.npc_prostitute;Heh, too embarrassed at your size to find someone you don't have to pay? Well, no matter, I'll suck anything, just pass over twenty credits and we'll take care of that poor little thing.@@"
<<else>>
"@@.npc_prostitute;Service will be twenty credits. Cash up front.@@"
<</if>>
<<case 4 5>>
"@@.npc_prostitute;Now aren't you looking fine! That'll be twenty credits!@@"
<<case 6>>
"@@.npc_prostitute;Goddess you're gorgeous... please tell me you have twenty credits because I really, really can't be doing these for free but I'm straining in my cage at the thought of tasting you...@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
"@@.npc_prostitute;Mmm, I love tacos. That'll be twenty credits! And don't worry — I got a tongue implant, so I won't have any issue taking care of you though this hole...@@"
<</if>>
<br><br>
<<if $player.money.total >= 20>>
[<<moveTo "room_usual_place_gloryhole_use_2" "Pay her money and approach the hole." 60>>]<br>
<<else>>
[@@.link_locked;You do not have enough money to pay for the gloryhole.@@]<br>
<</if>>
<<if $scene.unlock>>
[<<moveTo "room_usual_place_bathroom" "Lock yourself back up and walk away." 60 "<<include 'replaceCage_extendSissyomatic'>>">>]
<<else>>
[<<moveTo "room_usual_place_bathroom" "Walk away." 60>>]
<</if>>
</div>/*#
#desc: wait in stall (glory hole) of usual place toilet
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -20>>
<<if !$player.virgin.blown>>
<<set $player.virgin.blown = "gloryhole">>
<</if>>
<<setThreshold 'bimbofication' 'slut_bimbofication' 'gloryhole_pay'>>
<<applyExperience 'bimbofication' 10 'normal' $SEEN_STRANGER>>
<<if $player.body_ref.penis && !$player.body_ref.vagina && $player.body.penissize[0] < 4 && $fetish.sph && ($player.body_ref.shrink_style == '' || $player.body_ref.shrink_style == 'sph')>>
<<if $player.body.penissize[0] < 2>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<playerOrgasm>>
<<applyFatigue 30>>
<<applyStress -10>>
<<set $player.flags.gloryhole.use = true>>
<</if>>
<<set $player.location to "The Usual Place Gloryhole">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
You slide your twenty credits through the gloryhole and then step forward.
<<if $player.body_ref.penis && $player.body_ref.vagina>>
It's a bit of a challenge to get both of your lower bits aligned with the gloryhole but once you do...<br>
<br>
The lips and tongue and fingers on the other side are a true maestro, sucking and licking and probing and playing you with literally mind-blowing skill. You press your body tight against the partition, eager to offer as much of your sensitive flesh as possible to the expert skills on the other side as they more than earn their pay, expertly giving you a double-orgasm that almost has you fainting to the floor in overwhelmed pleasure.<br>
<br>
"@@.npc_prostitute;Mmm,@@" they state as you stagger back and try to catch your breath "@@.npc_prostitute;I don't know which part was the more delicious either way... well, I welcome you to come, and cum, again sometime!@@"
<<elseif $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
<<if $fetish.sph && ($player.body_ref.shrink_style == '' || $player.body_ref.shrink_style == 'sph')>>
"@@.npc_prostitute;Goddess... it's a good thing for you I've got a long tongue because you're barely long enough to stick past the partition!@@"<br>
<br>
You whimper in humiliation, and pleasure, as that same tongue teases you with expert skill. <<if $fetish.sissy>>"@@.npc_prostitute;Oh I just love the taste of a sissy. It's like the small size really concentrates that sissy flavour.@@"<<else>>"@@.npc_prostitute;Mmm, but you are yummy. Like the small size really concentrates the flavour!@@"<</if>>
<<elseif $player.body_ref.shrink_style == 'spe'>>
"@@.npc_prostitute;Mmm, you taste even better than you look! All concentrated and so utterly delicious...@@"
<<else>>
"@@.npc_prostitute;Mmm, tasty,@@" she moans as she starts sucking away.
<</if>>
<br><br>
Regardless of her words her lips are expert-tier and you find yourself clinging to the partition for support as she rapidly sucks you for a bone-shuddering climax that almost makes you faint at the intensity.<br>
<br>
Catching your breath as you wait for your vision to come back, you stagger away, drained and very satisfied.
<<case 4 5>>
You've barely slid your <<getWordMyPenis false>> through the gloryhole when it is being enthusiastically sucked to the root, nimble lips and a welcoming throat moving up and down your shaft as you moan in pleasure.<br>
<br>
<<if $fetish.sissy>>
"@@.npc_prostitute;Mmmm, I love the taste of sissy — especially jumbo sized!@@"
<<else>>
"@@.npc_prostitute;Mmmm, it be a fiesta of flavour!@@"
<</if>>
She notes in between sucks, your response cut off as she slurps you down once again and your eyes roll back in ecstasy, and it isn't more than a few strokes longer before you cum, a climax that makes you shudder from head to your toes, staggering backwards as you try to catch your breath.<br>
<br>
"@@.npc_prostitute;Yum! Catch you later!@@" she calls out, blowing you a kiss through the hole as you fix your clothes and step away.
<<case 6>>
You barely manage to fit your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.knot>>dog-<<elseif $player.body_ref.horsecock>>horse-<</if>>cock through the gloryhole, but are soon gasping as whoever is on the other side shows off a truly bottomless throat, sucking you down with a single slurp, a startlingly long tongue curling out further to <<if $player.body_ref.balls>>tease your balls<<else>>brush your inner thighs<</if>>.<br>
<br>
The moan that sounds out from around your member may not be as loud as your own, but it is no less pleased — whoever is sucking you off is not only a masterfully skilled cocksucker, but a devoted oral slut as well, her depraved hunger rewarded shortly as you climax hard and long, almost fainting from the intensity.<br>
<br>
"@@.npc_prostitute;Dee-lish!@@" she calls out, blowing you a kiss through the hole as you fix your clothes and step away.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
Legs partially spread you press against the gloryhole as her long, nimble tongue reaches out — dancing over your clit and then plunging surprisingly deep, your heart racing and your breaths coming in quick pants as she gives you one, two... and then a third orgasm before the intensity is too much and you stagger back lest you collapse to the ground.<br>
<br>
"@@.npc_prostitute;Cum again!@@" She calls out, waggling her tongue through the hole. "@@.npc_prostitute;To be honest I was getting a little parched, and you were quite the tasty treat to wet my whistle!@@" She wolf whistles in demonstration and then laughs as you walk out of the gloryhole.
<</if>>
<br><br>
<<if $scene.unlock>>
[<<moveTo "room_usual_place_bathroom" "Lock yourself back up and return to the bathroom." 60 "<<include 'replaceCage_extendSissyomatic'>>">>]
<<else>>
[<<moveTo "room_usual_place_bathroom" "Back to the bathroom." 60>>]
<</if>>
</div><<set _open = false>>
<<if (($now.getUTCDay()==1) && ($now.getUTCHours()<1)) || (($now.getUTCDay()>=2) && ($now.getUTCDay()<5) && ($now.getUTCHours()>=19)) || (($now.getUTCDay()>=3) && ($now.getUTCDay()<6) && ($now.getUTCHours()<1)) ||
(($now.getUTCDay()>=5) && ($now.getUTCHours()>=18)) || ((($now.getUTCDay()>=6) || ($now.getUTCDay()==0)) && ($now.getUTCHours()<3)) || (($now.getUTCDay()==0) && ($now.getUTCHours()>=18)) >>
<<set _open = true>>
<</if>>/*#
#desc: need makeup but unable to apply such at usual place
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 5 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You feel suddenly self-conscious about your lack of makeup... as well as your inability to do anything about it.<br>
<br>
In your slightly tipsy state it feels like every eye in the bar is on you... judging you...<br>
<br>
<<printThought "Oh <<getWordGod>>, I must look like a hag! How could I have gone out like this? No... I can't be in public like this... I need to get out of here!">><br>
<br>
[<<moveTo "room_usual_place_outside" "Hurry home." 300>>]
</div>/*#
#desc: order drinks
#status: RELEASED 1.0.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to $scene.drinkLoc>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.drinkBGR $scene.drinkChar>>
<div id="invframe" class="scrolltext">
The bartender waits for you to place an order.<br>
<br>
<<buyDrink $player "Beer" 5 1 $scene.postDrink $scene.priceMulti>><br>
<<buyDrink $player "White Russian" 8 3 $scene.postDrink $scene.priceMulti>><br>
<<buyDrink $player "Moscow Mule" 8 3 $scene.postDrink $scene.priceMulti>><br>
<<buyDrink $player "Gin and Tonic" 8 3 $scene.postDrink $scene.priceMulti>><br>
<<buyDrink $player "Sex on the Beach" 10 4 $scene.postDrink $scene.priceMulti>><br>
<<buyDrink $player "Cosmopolitan" 11 3 $scene.postDrink $scene.priceMulti>><br>
<<buyDrink $player "Dry Martini" 12 5 $scene.postDrink $scene.priceMulti>><br>
<<buyDrink $player "Shot of Everclear" 5 10 $scene.postDrink $scene.priceMulti>><br>
<br>
[<<moveTo $scene.postDrink "Finished for now." 180>>]
</div>/*#
#desc: wait in stall (glory hole) of usual place toilet
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
<<if !$scene.hasOwnProperty("gloryholestatus")>>
<<include initGloryhole>>
<</if>>
<<if setup.hasTmpEffect('sissypill_mk1')>>
<<if setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted')>>
<<initRoom>>
<<moveTo "event_pink_pill_super_gloryhole_alt">>
<</if>>
<<elseif setup.hasTmpEffect('sissypill_mk1_od')>>
<<if setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted')>>
<<initRoom>>
<<moveTo "event_pink_pill_super_od_1">>
<</if>>
<</if>>
<<include "isBarOpen">>
<<if !_open>>
<<set $now = setup.setNextDate($now, 0, $now.getUTCHours(), 10)>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place Gloryhole">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
<<if _open>>
<<if $player.timebased.fatigue<=($player.timebased.fatiguemax/2)>>
You're in the 2nd to the last stall of the Usual Place Toilet. There is an empty gloryhole on the side.
<<if setup.checkVisibleClothingTag('nun') > 70>>
As you kneel in your nun's attire you can't help but feel the eyes of the Goddess looking down upon you. The thought makes you smile, filling you with her holy spirit and a desire to serve...
<</if>>
<<else>>
You're in the 2nd to the last stall of the Usual Place Toilet. There is an empty gloryhole on the side. But that's no longer any concern to you. It's not like you have any energy left. You feel all washed-out. If you don't rest soon, you might pass out.
<</if>>
<br><br>
<<if (setup.getTotalValue('humiliation')<=7)>>
<<if ($scene.gloryholestatus.pissjobCount>0) || ($scene.gloryholestatus.swallowpiss>0)>>
<<if $scene.gloryholestatus.pissjobCount == 1 || $scene.gloryholestatus.swallowpiss == 1>>
<<printThought "Oh <<getWordGod>>! Did I really just let some <<guy>> pour their <<getWordPiss>> all over me<<if $scene.gloryholestatus.swallowpiss>0>>, and I even swallowed!<<else>>?<</if>>">>
<<else>>
<<printThought "Oh <<getWordGod>>! I cannot believe I allowed <<=setup.numberInWords($scene.gloryholestatus.pissjobCount, true)>> <<guy>>s to pour their <<getWordPiss>> all over me<<if $scene.gloryholestatus.swallowpiss>0>>, and I swallowed<<if $scene.gloryholestatus.pissjobCount==$scene.gloryholestatus.swallowpiss>>... oh God, I swallowed all of it<<else>> swallowed the pee of <<=setup.numberInWords($scene.gloryholestatus.swallowpiss, true)>> <<guy>>s<</if>><<if $scene.gloryholestatus.totalmoney>0>> for money!<<else>>!<</if>><<else>>.<</if>>">>
<</if>>
<br><br>
<<elseif $scene.gloryholestatus.blowjob>0>>
<<if $scene.gloryholestatus.blowjob == 1>>
<<printThought "Did I really suck off some anonymous <<guy>><<if $scene.gloryholestatus.anal>>... and let someone fuck me in the ass<</if>>? And yet I'm still here... waiting for more?">>
<<else>>
<<printThought "Oh god! Did I really suck off <<=setup.numberInWords($scene.gloryholestatus.blowjob, true)>> <<if $scene.gloryholestatus.blowjob>1>><<guy>>s<<else>><<guy>><</if>><<if $scene.gloryholestatus.anal>>... and let someone fuck me in the ass<</if>> since I entered this stall?">>
<</if>>
<br><br>
<<elseif $scene.gloryholestatus.handjob>0>>
<<if $scene.gloryholestatus.handjob == 1>>
<<printThought "Did I really jerk off some anonymous <<guy>><<if $scene.gloryholestatus.anal>>... and let someone fuck me in the ass<</if>>? And yet I'm still here... waiting for more?">>
<<else>>
<<printThought "Oh god! Did I really jack off <<=setup.numberInWords($scene.gloryholestatus.handjob, true)>> <<if $scene.gloryholestatus.handjob>1>><<guy>>s<<else>><<guy>><</if>><<if $scene.gloryholestatus.anal>>... and let someone fuck me in the ass<</if>> since I entered this stall?">>
<</if>>
<br><br>
<</if>>
<<else>>
<<if ($scene.gloryholestatus.pissjobCount>0) || ($scene.gloryholestatus.swallowpiss>0)>>
<<if $scene.gloryholestatus.pissjobCount == 1 || $scene.gloryholestatus.swallowpiss == 1>>
<<printThought "Here I am, sitting on a toilet... acting as a human urinal...<<if $scene.gloryholestatus.swallowpiss>0>> Why did swallowing leave me even more thirsty?<</if>>">>
<<else>>
<<printThought "Oh! I've already served <<=setup.numberInWords($scene.gloryholestatus.pissjobCount, true)>> <<if $scene.gloryholestatus.pissjobCount>1>><<guy>>s<<else>><<guy>><</if>> as a toilet slave to pour their <<getWordPiss>> all over me<<if $scene.gloryholestatus.swallowpiss>0>>, and I swallowed<<if $scene.gloryholestatus.pissjobCount==$scene.gloryholestatus.swallowpiss>>... I swallowed all of it like the good little slut I am<<else>> the pee of only <<=setup.numberInWords($scene.gloryholestatus.swallowpiss, true)>>of them<</if>><<if $scene.gloryholestatus.totalmoney>0>> for money!<<else>>!<</if>><<else>>.<</if>>">>
<</if>>
<br><br>
<<elseif $scene.gloryholestatus.blowjob>0>>
<<if $scene.gloryholestatus.blowjob == 1>>
<<printThought "Here I am, sucking cock in the gloryhole. One down... how many more to go?">>
<<else>>
<<printThought "Wow! Did I really suck off <<=setup.numberInWords($scene.gloryholestatus.blowjob, true)>> <<if $scene.gloryholestatus.blowjob>1>><<guy>>s<<else>><<guy>><</if>> since I entered this stall?">>
<</if>>
<br><br>
<<elseif $scene.gloryholestatus.handjob>0>>
<<if $scene.gloryholestatus.handjob == 1>>
<<printThought "I jerked someone off and I'm still here... I wonder how many I can do in one night?">>
<<else>>
<<printThought "Wow! Did I really jack off <<=setup.numberInWords($scene.gloryholestatus.handjob, true)>> <<if $scene.gloryholestatus.handjob>1>><<guy>>s<<else>><<guy>><</if>> since I entered this stall?">>
<</if>>
<br><br>
<</if>>
<</if>>
<<else>>
You're in the 2nd to the last stall of the Usual Place Toilet. There is an empty gloryhole on the side. But it's not like anyone is going to show up at this hour.
It is getting late and the Usual Place is about to close, there is really no point for you to stay any longer.
<<if $player.timebased.fatigue > ($player.timebased.fatiguemax/2)>>
Besides, it's not like you have any energy left. You feel all washed-out. If you don't rest soon, you might pass out.
<</if>>
<br><br>
<<if setup.getTotalValue('humiliation')<=7>>
<<printThought "What am I even doing here?">>
<<else>>
<<if ($scene.gloryholestatus.handjob+$scene.gloryholestatus.blowjob) < 3>>
<<printThought "Slow evening, heh!">>
<<else>>
<<printThought "Wow, I can't believe I serviced <<=setup.numberInWords($scene.gloryholestatus.handjob+$scene.gloryholestatus.blowjob,true)>> <<guy>>s this evening!">>
<</if>>
<</if>>
<br><br>
<</if>>
<<include "usualPlaceGloryholeWait">>
</div><<if $now.getUTCHours() >= 3 && $now.getUTCHours() < 8>>
You catch your breath and then hear a shout, "@@.npc_barkeeper;Alright you sluts — it's last call and then some, you need to clear on out!@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
[@@.link_locked;You can't be seen with such messy makeup, you need to fix things before you do anthing else!@@]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the stall dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif $player.timebased.fatigue<=($player.timebased.fatiguemax/2)>>
<<set _waitTime = Math.round((30+(60*Math.random()))*60)>>
[<<moveTo "room_usual_place_job" "Wait for <<if $scene.gloryholestatus.pissjobCount || $scene.gloryholestatus.handjob || $scene.gloryholestatus.blowjob>>another<<else>>a<</if>> customer to appear." _waitTime>>]<br>
<<include "leaveGloryholeToilet">>
<<else>>
You're feeling a bit tired...<br>
<br>
[<<moveTo "event_gloryhole_pass_out_1" "Press on!" 60>>]<br>
<<include "leaveGloryholeToilet">>
<</if>>/*#
#desc: sit waiting for work in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _tmpHandJob = setup.canPlayerSex($player,'handjob')>>
<<set _tmpBlowJob = setup.canPlayerSex($player,'blowjob')>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.hasOwnProperty("gloryholestatus")>>
<<include "initGloryhole">>
<<set $scene.gloryholestatus.up_pantiessoaked = false>>
<<set $scene.gloryholestatus.up_cum = false>>
<</if>>
<<include "calcGloryholePenis">>
<<set $scene.gloryholestatus.up_moan = 0>>
<<set $scene.gloryholestatus.cloth1="">>
<<set $scene.gloryholestatus.cloth2part="">>
<<set $scene.gloryholestatus.cloth2="">>
<<set $scene.gloryholestatus.type="">>
<<set $scene.gloryholestatus.reason="">>
<<if (Math.random()*100)<25 && $fetish.piss>>
<<set $scene.gloryholestatus.pissjob = true>>
<<else>>
<<set $scene.gloryholestatus.pissjob = false>>
<</if>>
<<if (Math.random()*100)<25>>
<<set $scene.gloryholestatus.asshole = true>>
<<else>>
<<set $scene.gloryholestatus.asshole = false>>
<</if>>
<<if setup.getTotalValue('whoring')>=5 && setup.getTotalValue('anal')>=8 && random(1,10) == 5>>
<<set $scene.blowJobFollowup = "room_usual_place_gloryhole_anal_1">>
<<else>>
<<set $scene.blowJobFollowup = "room_usual_place_blowjob_1">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
<<if (setup.getTotalValue('whoring')>=setup.getTotalValue('penis')) && (setup.getTotalValue('whoring')>=3)>>
You wait for quite a while sitting on the toilet thinking about the life choices that brought you here. Is touching a stranger's <<getWordPenis>> for a fistful of credits really what you had in mind? Or is there something else going on as well? Right on cue <<=$scene.gloryholestatus.penisDesc>> gets shoved through the gloryhole. Hard and dripping with precum, waiting for your affection.
<<elseif $npc_psychiatrist.hypnosis>0>>
You wait for quite a while sitting on the toilet thinking about the life choices that brought you here. Right here, right now, waiting for a <<getWordPenis>> to appear in a hole... in a toilet... in a bar... in the middle of the night. Right on cue <<=$scene.gloryholestatus.penisDesc>> gets shoved through the gloryhole. Hard and dripping with precum, waiting for your affection.
<<elseif (_tmpHandJob.ret||_tmpBlowJob.ret) || ($npc_psychiatrist.hypnosis>0)>>
You wait for quite a while sitting on the toilet thinking about the life choices that brought you here. Right here, right now, waiting for a <<getWordPenis>> to appear in a hole... in a toilet... in a bar... in the middle of the night. Right on cue <<=$scene.gloryholestatus.penisDesc>> gets shoved through the gloryhole. Hard and<<if $fetish.cum>> dripping with precum,<</if>> waiting for your affection.
<<if setup.getTotalValue('humiliation')<=5>>
And even though rational thought tells you to simply leave and forget all about this, a voice inside you begs you to stay and to do your duty on this <<=$scene.gloryholestatus.penisSecondaryDesc>> like you're supposed to do.
<<else>>
The voices in your head trying to stop you from doing this are fading away into the grey noise that used to be your mind. Your only thoughts circle around what's right in front of you. Your ready to do your duty on this <<=$scene.gloryholestatus.penisSecondaryDesc>>, like you're supposed to do.
<</if>>
<<else>>
You have no idea what exactly you expected to happen. Yeah, you've done things in here before, but that was different... somehow. A part of you is repulsed by your actions and wants to run away at the sight of the rather enormous specimen shoved through the gloryhole. It's hard and dripping with precum, waiting for your affection. But you're not going to touch this <<=$scene.gloryholestatus.penisSecondaryDesc>>, are you?
<<if (_tmpHandJob.perc>90) || (_tmpBlowJob.perc>90)>>
But you can already feel your defences crumbling by simply staring at this <<man>>ly <<getWordPenis>>.<br>
<br>
<<printThought "No, but I kinda want to feel <<if $options.fem>>it<<else>>its manliness<</if>>!">>
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue('humiliation')<=5>>
<<printThought "Oh god. What am I becoming? I should get out here, fast!">>
<<elseif setup.getTotalValue('whoring')>=3>>
<<printThought "Anyway, let's get this over with. Maybe I can even handle a few of these tonight!">>
<<elseif setup.getTotalValue('oral') >= 5>>
<<printThought "It's time to suck... Though hopefully not suck at sucking...">>
<<else>>
<<if _tmpBlowJob.ret>>
<<printThought "I... I wonder how it tastes. A small lick won't hurt anyone, will it?">>
<<elseif _tmpHandJob.ret>>
<<printThought "I... I want to touch this...">>
<<else>>
<<printThought "Just take a deep breath and do the job...">>
<</if>>
<</if>>
<br><br>
<<set _expenses = $player.money.base_rent + 30*setup.getMealplanInfo($player.flags.mealplan.base).daily_price>>
<<if ($player.money.total<(_expenses/4)) || (setup.getTotalValue('whoring')>0) || setup.getTotalValue('penis')>=5 || setup.getTotalValue('cum')>=5>>
<<if $player.money.total<0>>
<<printThought "God, already in the red this month? I'd better do this...">>
<<elseif $player.money.total >= 1.5*_expenses>>
<<printThought "I've got plenty for this month's expenses, do I really need to do this?">>
<<elseif $player.money.total >= .75*_expenses>>
<<printThought "I'm doing okay on money... am I doing this because I want to?">>
<<else>>
<<printThought "Money is a bit tight but do I really want to do this?">>
<</if>>
<br><br>
[<<moveTo "room_usual_place_handjob" "Offer a handjob for money." 360 '<<set $scene.gloryholestatus.type="handjob">><<set $scene.gloryholestatus.reason="money">>'>>]<br>
<<else>>
[@@.link_locked;I am not so desperate to touch <<if $options.fem>>a girl's<<else>>someone's<</if>> penis for money!@@] <<hint $options "If you embraced being a whore, maybe this would be less of a barrier...">><br>
<</if>>
<<if _tmpHandJob.ret || (setup.getTotalValue('penis')>=5) || (setup.getTotalValue('cum')>=5)>>
[<<moveTo 'room_usual_place_handjob' 'Mmm, cock makes you horny, offer a handjob.' 360 '<<set $scene.gloryholestatus.type="handjob">><<set $scene.gloryholestatus.reason="horny">>'>>]<br>
<<else>>
[@@.link_locked;No way in hell am I going to touch this, this monster!@@] <<hint $options "If your player character refuses to do its job, there are several ways to increase your chances. Certain skills decide how good you are at doing this, certain fetishes decide how much you want it. Horniness is a big factor as well. And it would be much more fun to work here dressed as a slut or whore then in boring casual male clothes, wouldn't it?">><br>
<</if>>
<<if $player.money.total < -(_expenses/2)>>
[<<moveTo 'room_usual_place_blowjob_1' 'Shit, my financial situation sucks... maybe sucking is a way out?' 360 '<<set $scene.gloryholestatus.type="handjob">><<set $scene.gloryholestatus.reason="money">>'>>]<br>
<</if>>
<<if setup.getTotalValue('penis')>=5 || $npc_psychiatrist.hypnosis >= 3 >>
<<if !$player.virgin.blowjob>>
<<if $npc_psychiatrist.hypnosis>=3>>
[<<moveTo $scene.blowJobFollowup "I want to put my lips over this <<getWordPenis>>!" 360 '<<set $scene.gloryholestatus.type="blowjob">><<set $scene.gloryholestatus.reason="horny">>'>>]<br>
<<else>>
[<<moveTo $scene.blowJobFollowup "Do... do... a blow... a blowjob." 360 '<<set $scene.gloryholestatus.type="blowjob">><<set $scene.gloryholestatus.reason="horny">>'>>]<br>
<</if>>
<<else>>
<<if _tmpBlowJob.ret>>
<<if ($player.money.total<($player.money.base_rent/4)) || (setup.getTotalValue('whoring')>3) || setup.getTotalValue('cum')>=5>>
[<<moveTo $scene.blowJobFollowup "Offer a blowjob for money." 360 '<<set $scene.gloryholestatus.type="blowjob">><<set $scene.gloryholestatus.reason="money">>'>>]<br>
<</if>>
[<<moveTo $scene.blowJobFollowup "I feel like cock in my mouth today." 360>>]<br>
<<else>>
<<if ($player.money.total<(_expenses/4)) || (setup.getTotalValue('whoring')>3) || setup.getTotalValue('cum')>=5>>
[<<moveTo $scene.blowJobFollowup "Offer a blowjob for money." 360 '<<set $scene.gloryholestatus.type="blowjob">><<set $scene.gloryholestatus.reason="money">>'>>]<br>
<</if>>
<<if _tmpBlowJob.ret>>
[<<moveTo $scene.blowJobFollowup "I feel like cock in my mouth today." 360>>]<br>
<<else>>
[@@.link_locked;No way my lips will part for this monster!@@] <<hint $options "If you were more of a whore, maybe this would be less of a barrier...">><br>
<</if>>
<</if>>
<</if>>
<</if>>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom!" 30>>]
<<else>>
<<if setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
</div>/*#
#desc: give handjob in gloryhole
#status: FINISHED 0.4.0.0
#ignore_spell: schlampe
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "I'm already working on it, so it's to late to change my clothes now">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryholestatus.handjob += 1>>
<<set $player.flags.gloryhole.handjob += 1>>
<<if $player.flags.gloryhole.handjob == 1>>
<<setThreshold 'penis' 'gloryhole_penis' 'first_contact'>>
<</if>>
<<set $scene.gloryholestatus.cage = setup.getItemTypeName("cage")>>
<<set $scene.gloryholestatus.plug = setup.getItemTypeName("plug", true)>>
<<set $scene.gloryholestatus.cum_quality = Math.floor(5*Math.random())>>
<<if !$fetish.piss>>
<<set $scene.gloryholestatus.cum_quality = Math.max(2,$scene.gloryholestatus.cum_quality)>>
<</if>>
<<set $scene.gloryholestatus.up_moan = Math.floor(5*Math.random())>>
<<set $scene.gloryholestatus.up_cum = false>>
<<set $scene.gloryholestatus.up_pantiessoaked = false>>
<<applyFatigue 15>>
<<set _tmp = ['penis','normal']>>
<<set _sizeArr = [_tmp]>>
<<set _X = setup.gainHorny($player,_sizeArr)>>
<<set $scene.gloryholestatus.cloth1 = setup.checkTopBodySlot('penis','bottom')>>
<<set $scene.gloryholestatus.up_cum = !setup.checkItemTypeWorn("cage") || setup.canPlayerCum($player,[ ['penis','normal'] ])>>
<<set _bodyparts = [ "head" , "mouth" , "upperbody" , "tits" , "lowerbody" , "crotch" ]>>
<<set $scene.gloryholestatus.cloth2part = setup.randomArray(_bodyparts)>>
<<set $scene.gloryholestatus.cloth2 = setup.checkTopBodySlot($scene.gloryholestatus.cloth2part,'top')>>
<<if $player.timebased.dirty<50>>
<<set $player.timebased.dirty = 50>>
<</if>>
<<if $scene.gloryholestatus.cloth1 != '' && $scene.gloryholestatus.up_cum == true>>
<<if setup.hasItemStatus(setup.getItemFromType('panties'), 'cumsoaked','>','25')>>
<<set $scene.gloryholestatus.up_pantiessoaked = true>>
<</if>>
<<changeItemStatus $scene.gloryholestatus.cloth1 'cumsoaked' '["set",100]'>>
<</if>>
<<if $scene.gloryholestatus.cloth2 != ''>>
<<changeItemStatus $scene.gloryholestatus.cloth2 'cumsoaked' '["set",100]'>>
<</if>>
<<set $scene.gloryholestatus.topTagStyle = setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','male','formal'])>>
<<set $scene.gloryholestatus.topTagType = setup.analyzeWornTags(['underwear','overgarment'])>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining'>>
<<applyExperience 'whoring' 2 'little' $INCOGNITO>>
<<applyExperience 'humiliation' 11 'little' $INCOGNITO>>
<<applyExperience 'submission' 8 'almost' $INCOGNITO>>
<<default>>
<<applyExperience 'humiliation' 11 'normal' $INCOGNITO>>
<<applyExperience 'submission' 11 'almost' $INCOGNITO>>
<</switch>>
<<applyExperience 'penis' 8 'very' $INCOGNITO>>
<<applyExperience 'stamina' 4 'almost' $INCOGNITO>>
<<set $scene.gloryholestatus.money = setup.calcHandjobMoney($player,5)>>
<<if !($scene.gloryholestatus.pissjob && $scene.gloryholestatus.asshole)>>
<<addCredits $scene.gloryholestatus.money>>
<<set $scene.gloryholestatus.totalmoney += $scene.gloryholestatus.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholestatus.money>>
<<if $npc_barkeeper.flags.prostitution.caught > 0 || $npc_barkeeper.flags.prostitution.can_work_alley>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay += $scene.gloryholestatus.money>>
<</if>>
<</if>>
<<set $npc_barkeeper.handjobs += 1>>
<<if !$player.virgin.handjob>>
<<set $player.virgin.handjob = 'npc_gloryhole'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_5'
5
'event_psychiatrist_session_prostitution_1'
true
>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor "holdcock" "mouthclosed">>
<div id="invframe" class="scrolltext">
<<if setup.checkNaked()>>
Naked as a whore, you
<<else>>
<<switch $scene.gloryholestatus.topTagStyle>>
<<case 'fetish'>>
Dressed in provocative fetish attire, you
<<case 'sissy'>>
<<if setup.getTotalValue('feminization')<10>>
Dressed like <<if $fetish.sissy>>a sissy<<else>>an ultra-cute girl<</if>>, you
<<else>>
Dressed like the <<if $fetish.sissy>>sissy<<else>>ultra-cute girl<</if>> you are, you
<</if>>
<<case 'bold'>>
Dressed like a prostitute,
<<case 'cute'>>
Dressed in girly things, you
<<case 'modest'>>
Dressed like a housewife, you
<<case 'formal'>>
Dressed for a night on the town, you
<<default>>
You
<</switch>>
<</if>>
decided to help out this poor, big, throbbing <<getWordPenis>>.
<<if $scene.gloryholestatus.reason=='money'>>
For a certain reward of course. Though your <<if $player.body_ref.penis>>excited <<getWordMyPenis>><<else>>dripping snatch<</if>> is telling another story as to your reasons.<br>
<br>
<<if ($scene.gloryholestatus.topTagStyle != "male" && setup.getTotalValue("feminization") <= 10)>>
<<printThought "Calm down, damn it. I'm only doing this for the money, but then why am I dressed like this?">>
<<else>>
<<printThought "Calm down, damn it. I'm only doing this for the money... ">>
<</if>>
<br><br>
<</if>>
You're getting used to this, but your heart is still racing as you get on your knees, taking a good look at this big <<getWordPenis>>. The head is rosy and pulses with energy, the dickhole already oozing with precum in anticipation. You can see the blood pumping through the veins making its shaft twitch and thump. It has a strong, musky smell emitting from it, potent, but not unpleasant. It's driving you insane. <<if setup.getTotalValue("penis") > 8>>You are getting aroused and<<else>>You should be repulsed, not aroused, but<</if>>
<<if $scene.gloryholestatus.cage!="">>
your <<if $player.body_ref.penis>><<getWordMyPenis>> is pressing against the <<=$scene.gloryholestatus.cage>> without mercy<<else>>wet cunt is locked away<</if>>.
<<else>>
<<if setup.checkItemTypeWorn('panties')>>
<<if $player.body_ref.penis>>your <<getWordMyPenis>> is getting hard rubbing against your<<else>>the mere brush of your<</if>>
<<if _pantiessoaked==true>>
<<getWordCum>>-filled
<</if>>
<<=setup.getItemTypeName('panties')>><<if $player.body_ref.penis>>, while you gently stroke over its fabric<<else>>is turning you on<</if>>.
<<else>>
<<if $player.body_ref.penis>>your <<getWordMyPenis>> is getting hard, while you gently stroke it<<else>>you are getting wet as you gently finger yourself<</if>>.
<</if>>
<</if>>
<br><br>
You take the <<getWordPenis>> in your grasp. It is warm and you feel it pulse and twitch in your hand. You hear an audible<<if $options.fem>>, womanly<</if>> moan from the other stall and take it as encouragement as you start moving your hand up and down the long, meaty shaft.
<<switch $scene.gloryholestatus.up_moan>>
<<case 0>>
<br><br>
"@@.npc_gloryhole;Yeah, work it you whore!@@"<br>
<br>
<<case 1>>
<br><br>
"@@.npc_gloryhole;Ugh!@@"<br>
<br>
<<case 2>>
<br><br>
"@@.npc_gloryhole;Yes. Yes! This... this is delicious!@@"<br>
<br>
You feel some psychic energy emitting from the other stall.
<<case 3>>
<br><br>
"@@.npc_gloryhole;Ja, touch it you <<if $fetish.sissy>>sissy<<else>>slutty<</if>> schlampe!@@"<br>
<br>
<<case 4>>
<br><br>
"@@.npc_gloryhole;Ah! More!@@"<br>
<br>
<</switch>>
You realise, that without any help of lotion working on an extra large tool like this might take way too long, you spit into one hand, and rub it all over <<his>> dickhead to mix it together with the precum for added viscosity, while your second hand starts to work on <<his>> balls, massaging them wholeheartedly. You can feel how the rhythm of the throbbing and pulsating gets stronger and quicker, as you work on the shaft with one hand, while you massage the balls with your other. The <<if $options.fem>>high pitched <</if>>moans get more ecstatic and louder from the other side. And as you indulge this <<getWordPenis>>, you're getting hornier and hornier as well.
<<if $scene.gloryholestatus.cage!="">>
But your <<if $player.body_ref.penis>><<getWordMyPenis>> is constrained by your <<=$scene.gloryholestatus.cage>>, making you unable to cum in a normal fashion<<else>>cunt is locked away, preventing you from getting the stimulation you crave<</if>>. But you want to cum, you need to cum, together with the <<if !$options.fem>>manly <</if>><<getWordPenis>> in your hand.
<<if $scene.gloryholestatus.plug!="">>
You pull the <<=$scene.gloryholestatus.plug>> out of your wet <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>> and start fingering your anus vigorously, until you're on the brink of sweet analgasm!
<<else>>
Lubricating your other hand with the precum leaking through your <<=$scene.gloryholestatus.cage>>, you start fingering your <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>> vigorously, until you're on the brink of sweet analgasm!
<</if>>
<</if>>
<<if $fetish.cum>>
The hard, pulsing <<getWordPenis>> explodes in your hand, spraying cum all over your hand
<<switch $scene.gloryholestatus.cloth2part >>
<<case 'head'>>
and onto your face,
<<if $scene.gloryholestatus.cloth2 == ''>>
inking your rosy cheeks with hot <<if !$options.fem>>manly <</if>>white <<getWordCum>>,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholestatus.cloth2)>> in <<getWordCum>>,
<</if>>
<<case 'mouth'>>
and onto your lips,
<<if $scene.gloryholestatus.cloth2 == ''>>
making you lick them subconsciously,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholestatus.cloth2)>> in <<getWordCum>>,
<</if>>
<<case 'upperbody' 'tits'>>
and onto your chest,
<<if $scene.gloryholestatus.cloth2 == ''>>
makeing the <<getWordCum>> flow down your nipples,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholestatus.cloth2)>> in <<getWordCum>>,
<</if>>
<<case 'lowerbody' 'crotch'>>
and onto your crotch,
<<if $scene.gloryholestatus.cloth2 == ''>>
soaking your<<if $player.body_ref.penis>> <<getWordMyPenis>><<else>>self<</if>> in someone else's <<getWordCum>>,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholestatus.cloth2)>> in <<getWordCum>>,
<</if>>
<</switch>>
<br><br>
<<createStackedImage "toiletHandjob" $scene.cockcolor "holdcock" "mouthclosed" "cum_penis">>
<br>
<<if $scene.gloryholestatus.cage!="">>
<<if $scene.gloryholestatus.up_cum>>
<<if $player.body_ref.penis>>
<<getWordCum true>> leaks out of you onto the
<<else>>
You drip your frustrated excitement onto the
<</if>>
<<if $scene.gloryholestatus.cloth1 == ''>>
floor. Without the sweet release of a real orgasm you still feel horny as hell. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<<else>>
floor, soaking into your <<=setup.getItemName($scene.gloryholestatus.cloth1)>>, but without the sweet release of an real orgasm, you still feel horny as hell. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<</if>>
<<else>>
<<if $scene.gloryholestatus.cloth1 == ''>>
Besides a few drops of <<getWordCum true>> dripping on the floor, you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it. And since you're unable to please yourself, it looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<<else>>
Besides a few drops of <<getWordCum true>> dripping into your <<=setup.getItemName($scene.gloryholestatus.cloth1)>>, you're without release, no matter what you do. You still feel horny as hell, but are unable to do anything about it. And since you're unable to please yourself, it looks like your calling is now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<</if>>
<</if>>
<<if $scene.gloryholestatus.plug!="">>
Moaning with want, you take small solace in shoving the <<=$scene.gloryholestatus.plug>> back up your wet <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>>.
<</if>>
<<else>>
<<if $scene.gloryholestatus.up_cum>>
<<if $scene.gloryholestatus.cloth1 == ''>>
You shoot a load of <<getWordCum true>> on the floor,
<<else>>
You spray a load of <<getWordCum true>> into your <<=setup.getItemName($scene.gloryholestatus.cloth1)>>,
<</if>>
like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<<else>>
You're unable to cum yourself. Even jerking frantically you find yourself unable to make it over the edge, as if something is preventing you from focusing on your , which means it looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<</if>>
<</if>>
<<else>>
The hard, pulsing <<getWordPenis>> jerks, a moan echoing through from the other side of the partition as you "finish" your work.<br>
<br>
<<createStackedImage "toiletHandjob" $scene.cockcolor "holdcock" "mouthclosed">>
<br>
<<if $scene.gloryholestatus.cage!="">>
Aroused by your success you
<<if $scene.gloryholestatus.up_cum>>
orgasm
<<if $player.body_ref.penis>>
within your cage...
<<else>>
under your belt...
<</if>>
but it is a false, weak orgasm that leaves you still feeling horny as hell. You paw at your prison,
<<else>>
strain within your private prison. You paw between your legs in vain,
<</if>>
unable to please yourself, which means it looks like it's your calling now to please others, like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<<if $scene.gloryholestatus.plug!="">>
Moaning with want, you take small solace in shoving the <<=$scene.gloryholestatus.plug>> back up your wet <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>>.
<</if>>
<<else>>
you cum like the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are.
<</if>>
<</if>>
<br><br>
<<if $scene.gloryholestatus.pissjob>>
<<if $scene.gloryholestatus.asshole>>
<<if $scene.gloryholestatus.reason=='money'>>
"@@.npc_gloryhole;Not bad. Not bad at all. But not enough, whore! Double or nothing. I have another pressure building up in my <<getWordPenis>>, and only the sweet release of my bladder all over that cute little face of yours can satisfy it. So open your mouth like the toilet slave you are or fuck off! And you better swallow all of it.@@"
<<else>>
"@@.npc_gloryhole;Not bad. Not bad at all. But not enough, whore! I have another pressure building up in my <<getWordPenis>>, and only the sweet release of my bladder all over that cute little face of yours can satisfy it. So open your mouth like the toilet slave you are or fuck off! And you better swallow all of it.@@"
<</if>>
<br><br>
<<if setup.getTotalValue('piss')>7 && setup.getTotalValue('submission')>7>>
Before <<he>> even finishes the request your mouth is already halfway open, practically salivating as you anticipate your golden shower.<br>
<br>
<<printThought "Yes, please let me receive your <<getWordPiss>> like the toilet slave I am!">>
<<elseif setup.getTotalValue('piss')>5>>
<<printThought "What an Asshole. If <<he>>'d ask nicely, I would have done it as well">>
<<elseif setup.getTotalValue('submission')>7>>
<<printThought "I don't really want to, but <<his>> forceful way really turns me on...">>
<<elseif $player.money.total<0 && $scene.gloryholestatus.reason=='money'>>
<<printThought "What an Asshole. But I could really use that money right now.">>
<<else>>
<<printThought "What an Asshole.">>
<</if>>
<br><br>
<<if setup.getTotalValue('piss')<=15>>
[<<moveTo "room_usual_place_handjob_acceptpiss" "Accept by opening your mouth, but don't swallow." 60>>]<br>
<</if>>
[<<moveTo "room_usual_place_handjob_drinkpiss" "Accept by opening your mouth and swallow." 60>>]<br>
<<if setup.getTotalValue('piss')<=10 && setup.getTotalValue('submission')<=10>>
[<<moveTo "room_usual_place_handjob_decline_asshole_piss" "Decline <<his>> offer." 60>>]
<<elseif setup.getTotalValue('piss')>15>>
[<<moveTo "room_usual_place_handjob_decline_asshole_piss" "You can't resist lemonade." 60>>]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "room_usual_place_handjob_decline_asshole_piss" "Decline <<his>> request, even though you're really thirsty for <<his>> offer!" 60>>]
<<else>>
[@@.link_locked;You feel unable, or rather, unwilling to decline <<his>> request@@]
<</if>>
<<else>>
<<if $scene.gloryholestatus.reason=='money'>>
"@@.npc_gloryhole;That was awesome. You're really good with your hands. But I have a certain desire, and if you're willing to help me out there as well, you can earn a few extra credits.@@" the stranger tells you while handing you your <<=setup.numberInWords($scene.gloryholestatus.money, true)>> credits, "@@.npc_gloryhole;You see I'd love to release my bladder all over you. So, what do you say? Deal?@@"
<<else>>
"@@.npc_gloryhole;That was awesome. You're really good with your hands. And you're a saint for doing this for free. So I feel almost bad for asking this, but I have a certain desire. You see I'd love to release my bladder all over you. So, what do you say?@@"
<</if>>
<br><br>
<<if setup.getTotalValue('piss')>7 && setup.getTotalValue('submission')>7>>
Before <<he>> even finishes the request you mouth is already halfway open, practically salivating as you anticipate your golden shower...<br>
<br>
<<printThought "Yes, please let me receive your <<getWordPiss>> like the toilet slave I am!">>
<<elseif setup.getTotalValue('piss')>5>>
<<printThought "Well, <<he>> is rather polite for asking if <<he>> can pee on my face... wait what?">>
<<elseif setup.getTotalValue('submission')>7>>
<<printThought "<<He>>... <<he>> wants to pee on me to show dominance over me?">>
<<elseif $player.money.total<0 && $scene.gloryholestatus.reason=='money'>>
<<printThought "Hmm... I'm not really in the mood, but I could really use that money.">>
<<else>>
<<printThought "What did <<he>> say!? Why am I even considering this?">>
<</if>>
<br><br>
[<<moveTo "room_usual_place_handjob_acceptpiss" "Accept by opening your mouth, but don't swallow." 60>>]<br>
<<if setup.getTotalValue('piss')>=5 || setup.getTotalValue('submission')>=10>>
[<<moveTo "room_usual_place_handjob_drinkpiss" "Accept by opening your mouth and swallow." 60>>]<br>
<<else>>
[@@.link_locked;Tasting piss is one thing, but drinking it? No.@@]<br>
<</if>>
<<if setup.getTotalValue('piss') > 15 || setup.getTotalValue('submission') > 15 || (setup.getTotalValue('piss') > 10 && setup.getTotalValue('submission') > 10)>>
<<if setup.getWillpower() >>
[<<moveTo "room_usual_place_handjob_decline_piss" "Decline <<his>> request, even though you're really thirsty for <<his>> offer!" 60>>]
<<else>>
[@@.link_locked;You feel unable... or rather unwilling to decline <<his>> request@@]
<</if>>
<<else>>
[<<moveTo "room_usual_place_handjob_decline_piss" "Decline <<his>> offer." 60>>]
<</if>>
<</if>>
<<else>>
"@@.npc_gloryhole;That was awesome. You're really good with your hands. Makes me wonder how good your mouth would be. Anyway, here, take this. You've earned it.@@"<br>
<br>
<<He>> hands you <<=$scene.gloryholestatus.money>> credits through the gloryhole, which you embrace while saying thank you.<br>
<br>
<<if ((setup.getTotalValue('humiliation')>=5) && (setup.getTotalValue('bimbofication')>=3))||(setup.getTotalValue('cum')>0)>>
The smell of cum rises in your nose and makes you curious how it might taste. For a moment you're repulsed by your own thoughts, but you just gave <<if $options.fem>>a woman a handjob in a gloryhole<<else>>another man a handjob<</if>> so the time thinking about the morality of this all has long passed.<br>
<br>
[<<moveTo "room_usual_place_handjob_lickcum" "Lick the <<getWordCum>> off your hand." 60>>]<br>
<</if>>
<<include "usualPlaceGloryholeWait">>
<</if>>
</div>/*#
#desc: reject asshole client's request to piss in your mouth
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
You tell the stranger on the other side of the stall to fuck off. <<He>> does not take your rejection lightly.<br>
<br>
"@@.npc_gloryhole;Screw you, bitch! Better hope I never run into you again!@@" <<he>> shouts as you hear <<him>> storm off. <<He>> kicks the door to your stall on the way past, almost breaking it.<br>
<br>
<<if setup.getWillpower() >>
<<printThought "Screw you asshole. I don't need a toxic personality like yours anywhere near me right now!">>
<<else>>
<<printThought "Eek. I really should be more careful from now on.">>
<</if>>
<br><br>
<<if $now.getUTCHours() >= 3 && $now.getUTCHours() < 8>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You catch your breath and then hear a shout, "@@.npc_barkeeper;Alright you sluts — it's last call and then some, you need to clear on out!@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif $player.timebased.fatigue > $player.timebased.fatiguemax/2>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You're feeling a bit tired...<br>
<br>
[<<moveTo "event_gloryhole_pass_out_1" "Press on!" 60>>]<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
</div>/*#
#desc: decline normal client's request to piss in your mouth
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
You tell the stranger on the other side of the stall that you have to decline <<his>> proposition.<br>
<br>
"@@.npc_gloryhole;Don't worry about it. I understand that getting peed on is not everyone's notion of a good time. Still, thanks for everything you did until now!@@"<br>
<br>
You hear the stranger exit the other stall, leaving you to your own business.<br>
<br>
<<if setup.getTotalValue('piss')>5>>
<<printThought "Aw. <<He>> was awfully polite. Almost makes me wish I'd granted <<his>> request.">>
<<else>>
<<printThought "Well, I really don't like being peed on.">>
<</if>>
<br><br>
<<if $now.getUTCHours() >= 3 && $now.getUTCHours() < 8>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You catch your breath and then hear a shout, "@@.npc_barkeeper;Alright you sluts — it's last call and then some, you need to clear on out!@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif $player.timebased.fatigue > $player.timebased.fatiguemax/2>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You're feeling a bit tired...<br>
<br>
[<<moveTo "event_gloryhole_pass_out_1" "Press on!" 60>>]<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<set _waitTime = Math.round((30+(60*Math.random()))*60)>>
[<<moveTo "room_usual_place_job" "Wait for another client." _waitTime>>]<br>
<<include "leaveGloryholeToilet">>
<</if>>
</div>/*#
#desc: accept gloryhole client's request to piss in your mouth (don't swallow)
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryholestatus.pissChest = setup.checkTopBodySlot('tits','top')>>
<<set $scene.gloryholestatus.pissButtTop = setup.checkTopBodySlot('bootie','top')>>
<<set $scene.gloryholestatus.pissButtBottom = setup.checkTopBodySlot('bootie','bottom')>>
<<set $scene.gloryholestatus.finished = true>>
<<if $scene.gloryholestatus.pissChest !=''>>
<<changeItemStatus $scene.gloryholestatus.pissChest 'piss' '["set",50]'>>
<</if>>
<<if setup.getTotalValue("piss") == 0 && !setup.hasThreshold('piss', 'gloryhole_piss', 'first_time')>>
<<setThreshold 'piss' 'gloryhole_piss' 'first_time'>>
<</if>>
<<if $scene.gloryholestatus.reason == 'money'>>
<<applyExperience 'whoring' 5 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 14 'little' $INCOGNITO>>
<<applyExperience 'piss' 8 'almost' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 14 'very' $INCOGNITO>>
<<applyExperience 'piss' 10 'very' $INCOGNITO>>
<</if>>
<<changeStatAllWorn 'piss' 100>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+50)>>
<<if $scene.gloryholestatus.reason=='money'>>
<<if $scene.gloryholestatus.asshole>>
<<set $scene.gloryholestatus.money = Math.floor($scene.gloryholestatus.money*.5)>>
<<addCredits $scene.gloryholestatus.money>>
<<set $scene.gloryholestatus.totalmoney += $scene.gloryholestatus.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholestatus.money>>
<<if $npc_barkeeper.flags.prostitution.caught > 0 || $npc_barkeeper.flags.prostitution.can_work_alley>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay += $scene.gloryholestatus.money>>
<</if>>
<<else>>
<<addCredits $scene.gloryholestatus.money>>
<<set $scene.gloryholestatus.totalmoney += $scene.gloryholestatus.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholestatus.money>>
<<if $npc_barkeeper.flags.prostitution.caught > 0 || $npc_barkeeper.flags.prostitution.can_work_alley>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay += $scene.gloryholestatus.money>>
<</if>>
<</if>>
<</if>>
<<set $scene.gloryholestatus.pissjobCount += 1>>
<<set $player.flags.gloryhole.pissjob += 1>>
<<set _makeupMess = Math.round(12+Math.random()*12)>>
<<changeMakeupMessed _makeupMess>>
<<set _tmp = ['piss','normal']>>
<<set _sizeArr = [_tmp]>>
<<set _X = setup.gainHorny($player,_sizeArr)>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor "holdcock" "mouthclosed" "piss">>
<div id="invframe" class="scrolltext">
"@@.npc_gloryhole;Very good. I've been waiting the whole evening to do this. So don't waste a single drop@@"<br>
<br>
<<if setup.getTotalValue('piss')<7 && setup.getTotalValue('submission')<7>>
<<printThought "Oh, god, why do I let other people do that to me? <<He>> is pissing right into my dirty toilet mouth, and I let it happen?">>
<<else>>
<<printThought "Yes, spray your <<getWordPiss>> all over my toilet slave face!">>
<</if>>
<br><br>
A torrent of hot, golden <<getWordPiss>> hits your face, pouring down into your mouth. You can feel the hot liquid all over your face, its
<<if setup.getTotalValue('piss')<5>>
rather nasty fragrance finding its way into your nose, its bitter flavour soaking your tongue,
<<elseif setup.getTotalValue('piss')<7>>
strong fragrance finding its way into your nose, its strong flavour on your tongue,
<<else>>
strong fragrance <<if !$options.fem>>of manliness <</if>>finding its way into your nose, its exotic flavour on your tongue,
<</if>>
removing all remaining taste of cum you had from before.
<<if $player.makeup.template!="">>
The constant onslaught of pee running down your face ruins your makeup.
<<elseif $player.makeup.permanent!="">>
Were it not for your permanently applied makeup the onslaught of pee would have surely ruined your face, but, though you glisten with lingering drops, your face remains as perfect as when you walked in
<</if>>
And you just stand there.
<<if setup.getTotalValue('piss')<7>>
Unable
<<else>>
Unwilling
<</if>>
to move even a single inch, as if rooted to the spot. The sheer
<<if setup.getTotalValue('piss')<7>>
shock
<<else>>
excitement
<</if>>
of being used like a dirty urinal in a toilet is too much for your mind and you stay in place like a fawn staring right into two oncoming headlights.<br>
<br>
<<if setup.getTotalValue('piss')<5>>
<<printThought "Oh god! No! What have I done?">>
<<elseif setup.getTotalValue('piss')<7>>
<<printThought "What am I doing?">>
<<else>>
<<printThought "This is where I belong...">>
<</if>>
<br><br>
You spit out the piss, closing your mouth, so no more can flow inside, but you still have the bitter, acrid taste on your tongue.
<br><br>
<<if setup.getTotalValue('piss')<7>>
<<printThought "No way, I am not going to swallow this!">><br>
<<else>>
<<printThought "No I am not going to swallow it, this time. Even though I enjoy the taste on my tongue...">><br>
<</if>>
<br>
"@@.npc_gloryhole;Oh well, I can still have fun like this, you know,@@" you hear from the other side as <<he>> starts to swing <<his>> <<getWordPenis>> around, spraying piss all over you, until there's nothing left that has not been soaked in <<getWordPiss>>.<br>
<br>
<<if setup.getTotalValue('piss')<7>>
<<printThought "Fuck, I will smell like a dirty urinal while walking home. I really hope nobody sees me like this!">><br>
<<else>>
<<printThought "I smell like a dirty urinal. Why do I find that so exciting?">><br>
<</if>>
<br>
"@@.npc_gloryhole;Now, turn around and put that sexy little butt of yours in the air, so I can mark you like the dirty bitch you are@@"<br>
<br>
You hesitate for a moment.
<<if setup.getTotalValue('submission')>5>>
But with all your submissive behaviour lately you find <<his>> dominant way with you rather exciting and decide to continue to follow <<his>> instructions.
<<else>>
But you have come this far
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
in pursuit of some desperately needed money and you decide to continue to follow <<his>> instructions.
<<case 'curiosity'>>
in pursuit of your sexual curiosity and you decide to continue to follow <<his>> instructions.
<<case 'horny'>>
in attempting to fulfill your sexual curiosity <<glitchText "need">> and you decide to continue to follow <<his>> instructions.
<<case 'slut'>>
in unthinking cock-lust, you want more, and that means you <<glitchText "need">> to obey...
<</switch>>
<</if>>
You turn around and bend over, moving your head very close to the floor which is already wet from all that urine as you move your butt in the air. After only a few seconds you can feel the hot <<getWordPiss>>
<<if $scene.gloryholestatus.pissButtTop == ''>>
wetting your buttcheeks.
<<else>>
<<if $scene.gloryholestatus.pissButtTop == $scene.gloryholestatus.pissButtBottom>>
soaking through your <<=setup.getItemName($scene.gloryholestatus.pissButtTop)>>.
<<else>>
soaking through your <<=setup.getItemName($scene.gloryholestatus.pissButtTop)>> until it finally reaches your <<=setup.getItemName($scene.gloryholestatus.pissButtBottom)>>.
<</if>>
<</if>>
You lose track of time during the whole ordeal, forgetting the reason why you are doing it in the first place after a while. All there is for you is your place on the floor, accepting urine like a nasty toilet.<br>
<br>
<<if setup.getTotalValue('piss')<7>>
<<printThought "Is... is it finally over?">>
<<else>>
<<printThought "Is... is it already over?">>
<</if>>
<br><br>
<<if $scene.gloryholestatus.reason=='money'>>
<<if $scene.gloryholestatus.asshole>>
"@@.npc_gloryhole;Yeah, that was satisfactory whore. Here you go,@@" <<he>> says, passing you <<=$scene.gloryholestatus.money*2>> credits.<br>
<<else>>
"@@.npc_gloryhole;Yeah, I really liked that. Here you go,@@" <<he>> says, passing you <<=$scene.gloryholestatus.money>> credits.<br>
<</if>>
<<else>>
<<if $scene.gloryholestatus.asshole>>
"@@.npc_gloryhole;Yeah, that was satisfactory, whore. Next time I'll piss into that whore mouth of yours while my <<getWordPenis>> is impaled in that throat of yours, you hear me bitch?@@"<br>
<<else>>
"@@.npc_gloryhole;Yeah, I really like that. You really made my day, thanks!@@"<br>
<</if>>
<</if>>
<br>
<<if $now.getUTCHours() >= 3 && $now.getUTCHours() < 8>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You catch your breath and then hear a shout, "@@.npc_barkeeper;Alright you sluts — it's last call and then some, you need to clear on out!@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif $player.timebased.fatigue > $player.timebased.fatiguemax/2>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You're feeling a bit tired...<br>
<br>
[<<moveTo "event_gloryhole_pass_out_1" "Press on!" 60>>]<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<set _waitTime = Math.round((30+(60*Math.random()))*60)>>
[<<moveTo "room_usual_place_job" "Wait for another client." _waitTime>>]<br>
<<include "leaveGloryholeToilet">>
<</if>>
</div>/*#
#desc: sawllow piss after handjob
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a handjob!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryholestatus.pissChest = setup.checkTopBodySlot('tits','top')>>
<<set $scene.gloryholestatus.finished = true>>
<<if $scene.gloryholestatus.pissChest != ''>>
<<changeItemStatus $scene.gloryholestatus.pissChest 'piss' '["set",50]'>>
<</if>>
<<set $scene.gloryholestatus.finished = true>>
<<if setup.getTotalValue("piss") == 0 && !setup.hasThreshold('piss', 'gloryhole_piss', 'first_time')>>
<<setThreshold 'piss' 'gloryhole_piss' 'first_time'>>
<</if>>
<<if $scene.gloryholestatus.reason == 'money'>>
<<applyExperience 'whoring' 5 'very' $INCOGNITO>>
<<applyExperience 'humiliation' 14 'almost' $INCOGNITO>>
<<applyExperience 'piss' 8 'very' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 14 'normal' $INCOGNITO>>
<<applyExperience 'piss' 10 'very' $INCOGNITO>>
<</if>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+25)>>
<<if $scene.gloryholestatus.reason=='money'>>
<<if $scene.gloryholestatus.asshole>>
<<addCredits `$scene.gloryholestatus.money*2`>>
<<set $scene.gloryholestatus.totalmoney+=$scene.gloryholestatus.money*2>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholestatus.money*2>>
<<if $npc_barkeeper.flags.prostitution.caught > 0 || $npc_barkeeper.flags.prostitution.can_work_alley>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay += $scene.gloryholestatus.money*2>>
<</if>>
<<else>>
<<addCredits $scene.gloryholestatus.money>>
<<set $scene.gloryholestatus.totalmoney+=$scene.gloryholestatus.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholestatus.money>>
<<if $npc_barkeeper.flags.prostitution.caught > 0 || $npc_barkeeper.flags.prostitution.can_work_alley>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay += $scene.gloryholestatus.money>>
<</if>>
<</if>>
<</if>>
<<set _makeupMess = Math.round(12+Math.random()*12)>>
<<changeMakeupMessed _makeupMess>>
<<set $scene.gloryholestatus.pissjobCount += 1>>
<<set $scene.gloryholestatus.swallowpiss += 1>>
<<set $player.flags.gloryhole.pissjob += 1>>
<<set $player.flags.gloryhole.swallowpiss += 1>>
<<set _tmp = ['piss','terrible']>>
<<set _sizeArr = [_tmp]>>
<<set _X = setup.gainHorny($player,_sizeArr)>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor "holdcock" "mouthopen" "piss">>
<div id="invframe" class="scrolltext">
"@@.npc_gloryhole;Very good. I've been waiting the whole evening for this. So don't waste a single drop@@"<br>
<br>
<<if setup.getTotalValue('piss')<7 && setup.getTotalValue('piss')<7>>
<<printThought "Oh, god, why do I let other people do that to me? <<He>> is pissing right into my dirty toilet mouth, and I let it happen?">>
<<else>>
<<printThought "Yes, spray your <<getWordPiss>> all over my toilet slave face!">>
<</if>>
<br><br>
A torrent of hot, golden <<getWordPiss>> hits your face, pouring down into your mouth. You can feel the hot liquid all over your face, its
<<if setup.getTotalValue('piss')<5>>
rather nasty fragrance finding its way into your nose, its bitter flavour on your tongue,
<<elseif setup.getTotalValue('piss')<7>>
strong fragrance finding its way into your nose, its strong flavour on your tongue,
<<else>>
strong fragrance <<if !$options.fem>>of manliness <</if>>finding its way into your nose, its exotic flavour on your tongue,
<</if>>
removing all remaining taste of cum you had from before.
<<if $player.makeup.template!="">>
The constant onslaught of pee running down your face ruins your makeup.
<<elseif $player.makeup.permanent!="">>
Were it not for your permanently applied makeup the onslaught of pee would have surely ruined your face, but, though you glisten with lingering drops, your face remains as perfect as when you walked in
<</if>>
And you just stand there.
<<if setup.getTotalValue('piss')<7>>
Unable
<<else>>
Unwilling
<</if>>
to move even a single inch, as if rooted to the spot. The sheer
<<if setup.getTotalValue('piss')<7>>
shock
<<else>>
excitement
<</if>>
of being used like a dirty urinal in a toilet is too much for your mind and you stay in place like a fawn staring right into two oncoming headlights.<br>
<br>
<<if setup.getTotalValue('piss')<5>>
<<printThought "Oh god! No! What have I done?">>
<<elseif setup.getTotalValue('piss')<7>>
<<printThought "What am I doing?">>
<<else>>
<<printThought "This is where I belong...">>
<</if>>
<br><br>
You hold your mouth wide as the steamy <<getWordPiss>> fills and fills. And fills, until there's no more space left!<br>
<br>
<<if setup.getTotalValue('piss')<7>>
<<printThought "Oh no... I am not really going to... am I?">>
<<else>>
<<printThought "Mmmm, I love guzzling <<getWordPiss>>!">><br>
<</if>>
<br><br>
The stream stops on the other side as your mouth is completely full, as if the stranger is waiting for you to do your part of the deal. You close your eyes and swallow
<<if setup.getTotalValue('piss')<5>>
the bitter tasting liquid,
<<elseif setup.getTotalValue('piss')<7>>
the strong tasting liquid,
<<else>>
the <<if setup.getTotalValue('piss')>15>>delicious <</if>>golden liquid<<if !$options.fem>> oozing with manliness<</if>>,
<</if>>
presenting your empty toilet hole you once called a mouth to the person responsible for filling it with hot <<getWordPiss>> in the first place.
<br><br>
<<if setup.getTotalValue('piss')<7>>
<<printThought "Oh... what have I done. <<Hes>> treating me like a toilet!">>
<<else>>
<<printThought "Ooooh... <<hes>> using me as a toilet slave!">>
<</if>>
<br><br>
<<if setup.getTotalValue('submission')>5>>
But your submissive behaviour of late makes it easy for you to follow <<his>> instructions to the letter.
<<else>>
You have come this far
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
in pursuit of some desperately needed money and you decide to continue to follow <<his>> instructions.
<<case 'curiosity'>>
in pursuit of your sexual curiosity and you decide to continue to follow <<his>> instructions.
<<case 'horny'>>
in attempting to fulfill your sexual curiosity <<glitchText "need">> and you decide to continue to follow <<his>> instructions.
<<case 'slut'>>
in unthinking cock-lust, you want more, and that means you <<glitchText "need">> to obey...
<</switch>>
<</if>>
Without warning, <<his>> rock hard <<getWordPenis>> resumes pissing right into that toilet mouth of yours, until it's filled to the brink with hot, nasty <<getWordPiss>> yet again. Only this time <<he>> doesn't give you the benefit of stopping when your mouth is full. This forces you to swallow it, fast. But while your mouth is closed, a continuous stream of <<getWordPiss>> makes its way down your face, to splash right onto your
<<if $scene.gloryholestatus.pissChest != ''>>
<<=setup.getItemName($scene.gloryholestatus.pissChest)>>, soaking it with hot <<getWordPiss>>.
<<else>>
bare chest, bathing it with the hot, nasty urine.
<</if>>
You lose track of time during the whole ordeal. You swallow <<his>>
<<if setup.getTotalValue('piss')<5>>
nasty smelling and even worse tasting piss,
<<elseif setup.getTotalValue('piss')<7>>
strong smelling and bitter tasting piss,
<<else>>
<<if $options.fem>>fragrant<<else>>manly<</if>> smelling and exotic tasting piss,
<</if>>
forgetting the reason why you are doing this in the first place after a while. All there is for you is your place on the floor, accepting urine like a
<<if setup.getTotalValue('piss')<7>>
nasty toilet.
<<else>>
human toilet slave.
<</if>>
<br><br>
<<if setup.getTotalValue('piss')<7>>
<<printThought "Is... is it finally over?">>
<<else>>
<<printThought "Is... is it already over?">>
<</if>>
<br><br>
<<if $scene.gloryholestatus.reason=='money'>>
<<if $scene.gloryholestatus.asshole>>
"@@.npc_gloryhole;Yeah, that was satisfactory, whore. Here you go,@@" <<he>> says, passing you <<=$scene.gloryholestatus.money*2>> credits.<br>
<<else>>
"@@.npc_gloryhole;Yeah, I really liked that. Here you go,@@" <<he>> says, passing you <<=$scene.gloryholestatus.money>> credits.<br>
<</if>>
<<else>>
<<if $scene.gloryholestatus.asshole>>
"@@.npc_gloryhole;Yeah, that was satisfactory, whore. Next time I'll piss into that whore mouth of yours while my <<getWordPenis>> is hilted in that throat of yours, you hear me, bitch?@@"<br>
<<else>>
"@@.npc_gloryhole;Yeah, I really liked that. You really made my day, thanks!@@"<br>
<</if>>
<</if>>
<br>
<<if $now.getUTCHours() >= 3 && $now.getUTCHours() < 8>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You catch your breath and then hear a shout, "@@.npc_barkeeper;Alright you sluts — it's last call and then some, you need to clear on out!@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif $player.timebased.fatigue > $player.timebased.fatiguemax/2>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You're feeling a bit tired...<br>
<br>
[<<moveTo "event_gloryhole_pass_out_1" "Press on!" 60>>]<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<set _waitTime = Math.round((30+(60*Math.random()))*60)>>
[<<moveTo "room_usual_place_job" "Another round!" _waitTime>>]<br>
<<include "leaveGloryholeToilet">>
<</if>>
</div>/*#
#desc: lick up cum after gloryhole handjob
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm not changing my outfit during a hand job!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.previousswallowcum = $player.virgin.swallow_cum_other>>
<<set $sceneVisibility = $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<applyExperience 'submission' 10 'almost' $INCOGNITO>>
<<if !$player.virgin.swallow_cum_other>>
<<set $player.virgin.swallow_cum_other = true>>
<<set $player.virgin.swallow_cum_other_first = 'npc_gloryhole'>>
<</if>>
<<switch $scene.gloryholestatus.cum_quality>>
<<case 0>>
<<applyExperience 'piss' 9 'normal' $INCOGNITO>>
<<applyExperience 'cum' 6 'little' $INCOGNITO>>
<<case 1>>
<<applyExperience 'piss' 9 'slightly' $INCOGNITO>>
<<applyExperience 'cum' 6 'almost' $INCOGNITO>>
<<case 2>>
<<applyExperience 'cum' 6 'normal' $INCOGNITO>>
<<case 3>>
<<applyExperience 'cum' 6 'very' $INCOGNITO>>
<<case 4>>
<<applyExperience 'cum' 6 'terrible' $INCOGNITO>>
<</switch>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor+"_flacid" "mouthopen" "lickhand">>
<div id="invframe" class="scrolltext">
<<if $scene.previousswallowcum>>
You shiver in anticipation as you are once again about to taste <<if $options.fem>>a woman's<<else>>another man's<</if>> hot <<getWordCum>>.
<<else>>
You shiver as you slowly move your hand towards your mouth.
<</if>>
You dip the tip of your tongue into the stranger's <<getWordCum>>.
<<if setup.getTotalValue('cum')<4>>
Suddenly its taste hits you like a hammer.
<</if>>
You just licked someone else's <<getWordCum>>, straight from their <<getWordPenis>>.
<<if !$player.virgin.swallow_cum_self>>
<<if $player.virgin.swallow_cum_other>>
again
<</if>>
even before ever tasting your own <<getWordCum true>>.
<</if>>
<<switch $scene.gloryholestatus.cum_quality>>
<<case 0>>
There's plenty of cum in your mouth, but it's thin and tastes weak.<br>
<br>
<<printThought "Oh <<getWordGod>>. This tastes more like piss than <<getWordCum>>!">><br>
<br>
<<if setup.getTotalValue('piss')>=10>>
It leaves the delicious after-taste of <<getWordPiss>> on your tongue, and you lick your lips with relish.
<<else>>
It leaves a bitter after-taste on your tongue and you have to cough.
<</if>>
<<if setup.getTotalValue('piss')<1>>
The thought of having <<getWordPiss>> in your mouth is repulsive to you. You spit it out.<br>
<br>
<<printThought "Oh <<getWordGod>>. That tasted like... well... <<getWordPiss>>!">>
<<else>>
But for some reason, maybe all the <<getWordPiss>> you've been guzzling lately, you don't find this as repulsive as you used to be, a fact that frankly scares you a little bit. Voraciously, you swallow this unholy mixture of <<getWordCum>> and <<getWordPiss>>.<br><br>
<<if setup.getTotalValue('piss')>5>>
<<printThought "I really am just a human toilet slave!!">>
<<else>>
<<printThought "Oh no... no more <<getWordPiss>> please!">>
<</if>>
<</if>>
<<case 1>>
<<His>> cum tastes bitter and smells a little bit like <<getWordPiss>>. Maybe the stranger pissed right before you worked on <<his>> shaft<<if !$options.fem>> of manliness<</if>>. <<if setup.getTotalValue('piss')>10>>Yum!<<else>>Yuck.<</if>> Still you can't stop licking your hand until it's all inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought "Yay! I'm a cumslut!">>
<<else>>
<<printThought "Why am I doing this?">>
<</if>>
<<case 2>>
<<His>> cum is thin and watered down, like someone had masturbated too often earlier in the day. There isn't much as well, but still you can't stop licking your hand until every drip of <<getWordCum>> is inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought "I need more <<getWordCum>>!">>
<<else>>
<<printThought "I have got to stop doing things like this!">>
<</if>>
<<case 3>>
<<His>> cum is thick and gooey and there's quite a lot of it. You quite enjoy licking it all up until the last drop is in your mouth, coating your tongue and throat. You love how it feels moving around in your mouth and enjoy the rich taste it leaves there. After you got the most out of it, you swallow it like a good little cumslut.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought "Creamy! That really hits the spot!">>
<<else>>
<<printThought "Huh, that didn't taste too bad... what am I thinking?">>
<</if>>
<<case 4>>
This giant, viscous load of <<getWordCum>> has the perfect consistency and texture. It is bright, white and smells, and tastes, oh <<getWordGod>> the taste!<<if !$options.fem>> of manliness.<</if>> You can't stop licking your fingers, since this might well be the apex of <<getWordCum>>, at least as far as you have tasted. It almost seems a waste to swallow it, but after a while you do, with a guilty, pleased smile on your lips.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought "So good! I want a lot more from where that came from!">>
<<else>>
<<printThought "Yum! I want more! Wait, what? Oh no...">>
<</if>>
<</switch>>
<br><br>
<<if $now.getUTCHours() >= 3 && $now.getUTCHours() < 8>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You catch your breath and then hear a shout, "@@.npc_barkeeper;Alright you sluts — it's last call and then some, you need to clear on out!@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[<<moveTo "room_usual_place_toilet" "Continue." 30>>]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[<<moveTo "room_usual_place_toilet" "Continue." 30>>]
<</if>>
<<elseif $player.timebased.fatigue > $player.timebased.fatiguemax/2>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You're feeling a bit tired...<br>
<br>
[<<moveTo "event_gloryhole_pass_out_1" "Press on!" 60>>]<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[<<moveTo "room_usual_place_toilet" "Continue." 30>>]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[<<moveTo "room_usual_place_toilet" "Continue." 30>>]
<</if>>
<<else>>
<<set _waitTime = Math.round((30+(60*Math.random()))*60)>>
[<<moveTo "room_usual_place_job" "Another round!" _waitTime>>]<br>
<<include "leaveGloryholeToilet">>
<</if>>
</div><<if setup.checkOutsideDecency()>>
<<if ($scene.gloryholestatus.handjob+$scene.gloryholestatus.blowjob) > 2 && setup.getTotalValue("whoring") >= 3 && !($npc_prostitute.flags.glory_confront || $npc_barkeeper.flags.prostitution.can_work_vip)>>
[<<moveTo "event_prostitute_gloryhole_confront_1" "Continue." 30>>]<br>
<<else>>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
<<if ($scene.gloryholestatus.handjob+$scene.gloryholestatus.blowjob) > 2 && setup.getTotalValue("whoring") >= 3 && !($npc_prostitute.flags.glory_confront || $npc_barkeeper.flags.prostitution.can_work_vip)>>
[<<moveTo "event_prostitute_gloryhole_confront_1" "Continue." 30>>]<br>
<<else>>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<</if>>
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[<<moveTo "room_usual_place_toilet" "Collect yourself and consider changing." 30>>]<br>
[@@.link_locked;I can't leave the stall dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>><<if !$player.virgin.blowjob>>
<<set $scene.gloryholestatus.cum_quality = 4>>
<<set $scene.gloryholestatus.penis_size = 16>>
<<set $scene.gloryholestatus.deepthroat = true>>
<<set $scene.gloryholestatus.struggle_deepthroat = true>>
<<else>>
<<set $scene.gloryholestatus.cum_quality = Math.floor(5*Math.random())>>
<<if !$fetish.piss>>
<<set $scene.gloryholestatus.cum_quality = Math.max(2,$scene.gloryholestatus.cum_quality)>>
<</if>>
<<set $scene.gloryholestatus.penis_size = Math.min(
Math.max(10, Math.ceil(
Math.random()*(setup.getTotalValue('penis')+setup.getTotalValue('oral'))))-3+Math.floor(7*Math.random()), 45)>>
<<if (2*setup.getTotalValue('oral')+Math.random()*setup.getTotalValue('penis')/2)>$scene.gloryholestatus.penis_size>>
<<set $scene.gloryholestatus.deepthroat = true>>
<<if (2*setup.getTotalValue('oral')+(setup.getTotalValue('penis')/2))>$scene.gloryholestatus.penis_size>>
<<set $scene.gloryholestatus.struggle_deepthroat = false>>
<<else>>
<<set $scene.gloryholestatus.struggle_deepthroat = true>>
<</if>>
<<else>>
<<set $scene.gloryholestatus.deepthroat = false>>
<<set $scene.gloryholestatus.struggle_deepthroat = false>>
<</if>>
<</if>>
<<set $scene.cockcolor=either("cock1","cock2","cock3","cock4")>>
<<switch $scene.gloryholestatus.penis_size>>
<<case 6 7 8 9>>
<<set $scene.gloryholestatus.penisDesc = "a quite miniscule penis">>
<<set $scene.gloryholestatus.penisSecondaryDesc = "cute <<getWordPenis>>">>
<<case 10 11 12 13>>
<<set $scene.gloryholestatus.penisDesc = "a below average penis">>
<<set $scene.gloryholestatus.penisSecondaryDesc = "small <<getWordPenis>>">>
<<case 14 15 16 17 18>>
<<set $scene.gloryholestatus.penisDesc = "a rather average sized penis">>
<<set $scene.gloryholestatus.penisSecondaryDesc = "<<getWordPenis>>">>
<<case 19 20 21 22 23>>
<<set $scene.gloryholestatus.penisDesc = "a rather large specimen">>
<<set $scene.gloryholestatus.penisSecondaryDesc = "large <<getWordPenis>>">>
<<case 24 25 26 27 28 29>>
<<set $scene.gloryholestatus.penisDesc = "a quite massive specimen">>
<<set $scene.gloryholestatus.penisSecondaryDesc = "magnificent <<getWordPenis>>">>
<<case 30 31 32 33 34 35>>
<<set $scene.gloryholestatus.penisDesc = "a rather enormous specimen">>
<<set $scene.gloryholestatus.penisSecondaryDesc = "magnificent <<getWordPenis>>">>
<<case 36 37 38 39 40 41 42>>
<<set $scene.gloryholestatus.penisDesc = "a monstrously large specimen">>
<<set $scene.gloryholestatus.penisSecondaryDesc = "glorious <<getWordPenis>>">>
<<case 43 44 45 46>>
<<set $scene.gloryholestatus.penisDesc = "an inhumanly monstrous specimen">>
<<set $scene.gloryholestatus.penisSecondaryDesc = "monstrous <<getWordPenis>>">>
<<default>>
ERROR: unexpected gloryhole penis size <<=$scene.gloryholestatus.penis_size>>
<</switch>>/*#
#desc: variable setup for giving blowjob in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $sceneVisibility = $INCOGNITO>>
<<set $scene.gloryholestatus.cage = setup.getItemTypeName("cage")>>
<<set $scene.gloryholestatus.plug = setup.getItemTypeName("plug")>>
<<if setup.findThemeId('npc_psychiatrist', 'prostitution', 'theme_psychiatrist_prostitution_10') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_10'
5
'event_psychiatrist_session_prostitution_2'
true
>>
<<setThreshold 'oral' 'anonymous_oral' 'gloryhole'>>
<<addWorkEvent 'broken_computer'>>
<</if>>
<<set $scene.gloryholestatus.blowjob += 1>>
<<set $player.flags.gloryhole.blowjob += 1>>
<<set $scene.gloryholestatus.firstBlowJob = false>>
<<if !$player.virgin.blowjob>>
<<set $scene.gloryholestatus.firstBlowJob = true>>
<<set $player.virgin.blowjob = 'npc_gloryhole'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "money">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<if $player.makeup.template!="">>
<<changeMakeupMessed 25>>
<</if>>
<<set $scene.gloryholestatus.up_moan = Math.floor(5*Math.random())>>
<<set $scene.gloryholestatus.up_cum = false>>
<<set $scene.gloryholestatus.up_pantiessoaked = false>>
<<applyFatigue 20>>
<<changeHorny 15>>
<<set $scene.gloryholestatus.cloth1 = setup.checkTopBodySlot('penis','bottom')>>
<<if setup.canPlayerCumSimple($player,setup.getTotalValue('penis'))>>
<<set $scene.gloryholestatus.up_cum = true>>
<</if>>
<<set _bodyparts = [ "head" , "mouth" , "upperbody" , "tits" ]>>
<<set $scene.gloryholestatus.cloth2part = setup.randomArray(_bodyparts)>>
<<set $scene.gloryholestatus.cloth2 = setup.checkTopBodySlot($scene.gloryholestatus.cloth2part,'top')>>
<<if $player.timebased.dirty<50>>
<<set $player.timebased.dirty = 50>>
<</if>>
<<if $scene.gloryholestatus.cloth1 != '' && $scene.gloryholestatus.up_cum>>
<<if setup.hasItemStatus(setup.getItemFromType('panties'), 'cumsoaked','>','25')>>
<<set $scene.gloryholestatus.up_pantiessoaked = true>>
<</if>>
<<changeItemStatus $scene.gloryholestatus.cloth1 'cumsoaked' '["set",100]'>>
<</if>>
<<if $scene.gloryholestatus.cloth2 != ''>>
<<changeItemStatus $scene.gloryholestatus.cloth2 'cumsoaked' '["set",100]'>>
<</if>>
<<set $scene.gloryholestatus.money = 15>>
<<if $scene.gloryholestatus.deepthroat>>
<<set $scene.gloryholestatus.money += 5>>
<<if $scene.gloryholestatus.struggle_deepthroat == false>>
<<set $scene.gloryholestatus.money += 5>>
<</if>>
<</if>>
<<switch $scene.gloryholestatus.reason>>
<<case 'money'>>
<<set $scene.gloryholestatus.money = Math.round($scene.gloryholestatus.money*1.1)>>
<<setThreshold 'whoring' 'gloryhole_whoring' 'whoreintraining'>>
<<applyExperience 'whoring' 4 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<applyExperience 'submission' 8 'almost' $INCOGNITO>>
<<default>>
<<set $scene.gloryholestatus.money = Math.round($scene.gloryholestatus.money*0.5)>>
<<applyExperience 'humiliation' 12 'very' $INCOGNITO>>
<<applyExperience 'submission' 10 'almost' $INCOGNITO>>
<</switch>>
<<applyExperience 'stamina' 4 'slightly' $INCOGNITO>>
<<set _oralXp = 20 * ($scene.gloryholestatus.penis_size/45)>>
<<applyExperience 'oral' _oralXp 'very' $INCOGNITO>>
<<if setup.getTotalValue('penis')<=7>>
<<setThreshold 'penis' 'gloryhole_penis' 'cocksucker'>>
<</if>>
<<applyExperience 'penis' 8 'very' $INCOGNITO>>
<<if $fetish.cum>>
<<setThreshold 'cum' 'gloryhole_cum' 'cum_slurping'>>
<<switch $scene.gloryholestatus.cum_quality>>
<<case 0>>
<<applyExperience 'piss' 9 'almost' $INCOGNITO>>
<<applyExperience 'cum' 9 'little' $INCOGNITO>>
<<case 1>>
<<applyExperience 'piss' 9 'slightly' $INCOGNITO>>
<<applyExperience 'cum' 9 'almost' $INCOGNITO>>
<<case 2>>
<<applyExperience 'cum' 9 'normal' $INCOGNITO>>
<<case 3>>
<<applyExperience 'cum' 9 'very' $INCOGNITO>>
<<case 4>>
<<applyExperience 'cum' 9 'terrible' $INCOGNITO>>
<</switch>>
<</if>>/*#
#desc: work blowjob in gloryhole
#status: FINISHED 0.4.0.0
#ignore_spell: w
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Mm mth ms knndfull rghmt nmw...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "room_usual_place_blowjob_init">>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor "mouthclosed">>
<div id="invframe" class="scrolltext">
<<if $scene.gloryholestatus.firstBlowJob>>
Okay, here you are. You're kneeling in front of a <<if $scene.gloryholestatus.penis_size > 25>>big, <<elseif $scene.gloryholestatus.penis_size < 10>>small, <<else>>hot, <</if>>throbbing, <<=$scene.gloryholestatus.penis_size>> cm <<getWordPenis>>,
<<if setup.checkVisibleClothingTag('cute')>50>>
like the little<<if setup.checkVisibleClothingTag('pink')>>, pink<</if>> <<if $fetish.sissy>>sissy <</if>>whore
<<elseif setup.checkVisibleClothingTag('male') > 50>>
like the needy girly-boy
<<else>>
like the slut
<</if>>
you are! Your heart is about to explode from excitement at getting closer to this big <<getWordPenis>>. Your nostrils inhale the <<if $options.fem>>musky smell<<else>>smell of manliness<</if>> emanating from it, the scent raising your lustfulness tenfold. You want to take it in your mouth until you can feel the pubes tickling your nose, but you wait. You have to savour the moment. This is and will always be the first <<getWordPenis>> to cross your longing lips. The first <<getWordPenis>> to enter your mouth, the first <<getWordPenis>> to stuff your face and so you take a moment to relish its aroma and flavour.
<<else>>
Okay, here we are again. You're kneeling in front of a <<if $scene.gloryholestatus.penis_size > 25>>big<<elseif $scene.gloryholestatus.penis_size < 10>>hard<<else>>hot<</if>>, throbbing, <<=$scene.gloryholestatus.penis_size>> cm <<getWordPenis>>,
<<if setup.checkVisibleClothingTag('cute')>50>>
like the little<<if setup.checkVisibleClothingTag('pink')>>, pink<</if>> <<if $fetish.sissy>>sissy <</if>>whore
<<elseif setup.checkVisibleClothingTag('male') > 50>>
like the needy girly-boy
<<else>>
like the slut
<</if>>
you are!
<<if $scene.gloryholestatus.reason == 'money'>>
Even though your primary motive is of monetary nature, you cannot deny the excitement exuding from this endeavour, as your nostrils inhale the <<if $options.fem>>musky smell<<else>>smell of manliness<</if>> emanating from the <<if $scene.gloryholestatus.penis_size > 25>>enormous <</if>><<getWordPenis>> in front of you.
<<else>>
Your heart is about to explode from excitement, getting closer to this big <<getWordPenis>>. Your nostrils inhale the <<if $options.fem>>musky smell<<else>>smell of manliness<</if>> emanating from it, the scent raises your lustfulness tenfold.
<</if>>
<</if>>
As is right and proper, you start greeting this <<if $scene.gloryholestatus.penis_size > 15>>big <</if>><<getWordPenis>> by kissing the tip, which is glistening with precum.
<<if $scene.gloryholestatus.firstBlowJob>>
For a moment, as if you'd only just awaken from a long dream, you shy away. W-what the hell are you doing? <<if $options.fem>>Didn't you used to be normal... you aren't a whore right<<else>>Didn't you used to be... aren't you straight<</if>>? Why in the name of all that is good and holy are you kneeling in front of this giant <<getWordPenis>> in a bathroom stall,
<<if setup.checkNaked()>>
wearing nothing at all,
<<elseif setup.checkVisibleClothingTag('sissy')>40>>
dressed like <<if $fetish.sissy>>a sissy<<else>>an ultra-cute<</if>>,
<<elseif setup.checkVisibleClothingTag('cute')>40>>
dressed like a cute girl,
<<elseif setup.checkVisibleClothingTag('bold')>40>>
dressed like a pavement princess,
<<elseif setup.checkVisibleClothingTag('female')>40>>
all dressed up in female clothing,
<<else>>
as if it meant nothing at all,
<</if>>
even going so far as kissing this... tasty... big... yummy Cock! No! No, you have to focus. You don't like cock... <<glitchText "cock... co">>
<</if>>
<br><br>
<<if $scene.gloryholestatus.firstBlowJob>>
You feel like a happy little <<if $fetish.sissy>>Sissy <</if>>Bride, allowed to kiss your <<master>> for the first time.<br>
<br>
<<printThought "Have you ever seen such a beautiful cock?" 40>><br>
<br>
<<printThought "No! I have to fight it!" >><br>
<br>
<<printThought "I want to worship a beautiful, hard, throbbing cock!" 40>><br>
<br>
<<printThought "No!" -5>><br>
<br>
<<printThought "It's such a beautiful cock!" 40>><br>
<br>
<<printThought "I can resist the cock!" -10>><br>
<br>
<<printThought "Just imagine kissing it..." 40>><br>
<br>
<<printThought "Don't. I can fight!" -15>><br>
<br>
<<printThought "I just want to worship this cock!" 40>><br>
<br>
<<printThought "I don't want to worship penis!" -20>><br>
<br>
<<printThought "Let my mind focus on its beautiful hardness...!" 40>><br>
<br>
<<printThought "Oh god. It's so hard... to resist..." -25>><br>
<br>
<<printThought "I want to feel how hard, how big, how wonderful it is!" 40>><br>
<br>
<<printThought "No, I cannot reach out and touch it... if I touch it, I might like it..." -30>><br>
<br>
<<printThought "It's so perfect." 40>><br>
<br>
<<printThought "No, its not perfect. Cock... cock isn't perfect." -35>><br>
<br>
<<printThought "I'd love to feel this cock!" 40>><br>
<br>
And just like a cock crazy <<if $fetish.sissy>>Sissy <</if>>Bride after her new <<if $options.fem>>wife<<else>>husband<</if>> flipped up her pink bridal veil, you move your lips closer to this <<getWordPenis>> and plant your first, wet, passionate kiss on it. You didn't even kiss your girlfriend with this much passion back in the days. But this kiss. This kiss is love. Love for cock. You feel the precum moistening your lips, sealing your fate as a cockhungry slut, once and for all.<br><br>
<<else>>
You plant a long, sloppy kiss on this <<getWordPenis>>, bathing your lips in precum.<br><br>
<</if>>
<<printThought "Kissing it once is hardly enough to show my gratitude!">><br>
<br>
You plant a few more kisses on this <<getWordPenis>>, on its head, the pulsating shaft, you kiss the balls as best you can, before you go back to the head, kissing it one last time, before starting to caress it with your tongue. You start at the urethra, and lick all the way over the head along the shaft until you reach the point, where the balls and the shaft connect. Lips wet with spit and precum you give the <<getWordPenis>> a good massage while slowly moving down to suck on the balls, like they're the best thing in the world. You faintly remember a time when you would be repulsed by the mere thought of sucking on a godly gift like this.<br>
<br>
<<printThought "Why would I ever refuse a mouth-watering <<getWordPenis>>?">><br>
<br>
[<<moveTo "room_usual_place_blowjob_2" "Suck!" 120>>]
</div>/*#
#desc: work blowjob in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Mm mth ms knndfull rghmt nmw...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "room_usual_place_blowjob_init">>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor "sucktip" "holdcockshaft">>
<div id="invframe" class="scrolltext">
As you take the <<getWordPenis>> into your ready and anticipating mouth, your <<if $player.body_ref.penis>><<getWordMyPenis>> twitches<<else>>cunt drips<</if>> in excitement,
<<if setup.checkItemTypeWorn('panties') && $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
making you strain within your <<=setup.getItemTypeName('cage')>>, pawing uselessly at the fabric stretched over your prison.
<<else>>
making a bulge swell inside your <<if $scene.gloryholestatus.up_pantiessoaked>><<getWordCum>>filled <</if>><<=setup.getItemTypeName('panties')>>, while you gently stroke over the fabric.
<</if>>
<<elseif $player.body_ref.penis>>
while you gently stroke <<if setup.checkItemTypeWorn("cage")>>your imprisoned member<<else>>it<</if>>.
<<else>>
while you gently <<if setup.checkItemTypeWorn("cage")>>stroke your chastity shield<<else>>finger yourself<</if>><<if setup.checkItemTypeWorn('panties')>> through your <<=setup.getItemTypeName('panties')>><</if>>.
<</if>>
You can feel the <<getWordPenis>> pulsing in your mouth, feeling as it gets harder and thicker. You want to go down on it, all the way,
<<if !$scene.gloryholestatus.deepthroat>>
but you're simply not experienced enough to do it. Every time you try to push it deeper into your eager face fuckhole you gag like an inexperienced beginner and have to pull back. After a while you decide it's in your both interest to finish the job with what you've got and resume eagerly sucking on as much of the <<getWordPenis>> as you can handle.<br>
<br>
<<printThought "There is still a lot of room for improvement!">>
<<else>>
and manage to push it into the back of your mouth, giving your throat a good pounding as you bob your head back and forth. You can feel the whole shaft twitching and pulsing, more blood pumping to swell it thicker and spread your lips further.
<<if $scene.gloryholestatus.struggle_deepthroat>>
Sadly, you're still too inexperienced, to keep a member as divine and large as this lodged into your face parking space for <<getWordPenis>>, so you have to back away from time to time. You don't take a break, however, giving it attention in a more traditional way with lips and tongue while kneading the balls.<br>
<br>
<<printThought "I still have to get better!">>
<<else>>
Your deepthroat skills are indeed excellent, as you manage to keep this divine member lodged into your face fuckhole for an extended time period. It's like you were born to take <<if $options.fem>>girl dick<<else>>other manliness<</if>> into your eager mouth and give it the proper treatment such a glorious cock deserves! While keeping it in your mouth you can feel every heartbeat of the <<if $options.fem>>lady<<else>>gentleman<</if>> on the opposite side of the gloryhole through the pulsing of the <<getWordPenis>>. You feel like you are where you belong: on your knees, sucking a big, throbbing <<getWordPenis>> like the professional cocksucker you are!<br>
<br>
<<printThought "This is my destiny!">>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_usual_place_blowjob_3" "Keep working!" 120>>]
</div>/*#
#desc: work blowjob in gloryhole part 3
#status: FINISHED 0.4.0.0
#ignore_spell: hure,saug,schwanz,meinem,du
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Mm mth ms knndfull rghmt nmw...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor "deepthroat" "holdcockshaft">>
<div id="invframe" class="scrolltext">
Finally you can feel the pulses and twitching speed up. And as the <<getWordPenis>> somehow gets harder and harder in your yearning mouth, you start to get hornier as well.
<<if $scene.gloryholestatus.cage!="">>
<<if $player.body_ref.penis>>
But your <<getWordMyPenis>> is being constrained by your
<<else>>
But you are locked behind your
<</if>>
<<=$scene.gloryholestatus.cage>>, making you unable to cum in a normal fashion. But you want to cum, you need to cum, together with the <<if !$options.fem>>manly <</if>><<getWordPenis>> in your mouth.
<<if $scene.gloryholestatus.plug!="">>
You pull your <<=$scene.gloryholestatus.plug>> out of your wet <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>> and start fingering your anus vigorously until you're on the brink of sweet analgasm!
<<else>>
Lubricating your other hand with the precum leaking through your <<=$scene.gloryholestatus.cage>> you start fingering your <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>> vigorously until you're on the brink of sweet analgasm!
<</if>>
<</if>>
The audible<<if $options.fem>>, womanly<</if>> moans from the other side tell you that they are close to unloading their payload into your mouth. You take the <<getWordPenis>> out of your mouth, so none of the tasty <<getWordCum>> will bypass your anticipating tongue.<br>
<br>
<<switch $scene.gloryholestatus.up_moan>>
<<case 0>>
"@@.npc_gloryhole;Yeah, suck my shaft you whore!@@"
<<case 1>>
"@@.npc_gloryhole;Ugh!@@"
<<case 2>>
"@@.npc_gloryhole;Yes. Yes! This... this is delicious!@@"<br>
<br>
You feel some psychic energy emitting from the other stall.
<<case 3>>
"@@.npc_gloryhole;Ja, saug an meinem Schwanz du <<if $fetish.sissy>>Sissy <</if>>Hure! Saug!@@"
<<case 4>>
"@@.npc_gloryhole;Ah! More!@@"
<</switch>>
<br><br>
<<if $fetish.cum>>
[<<moveTo "room_usual_place_blowjob_3a_cum" "Now for the big finish..." 120>>]
<<else>>
You finish the client off with something resembling decorum and then catch your breath and massage your jaw.<br>
<br>
[<<moveTo "room_usual_place_blowjob_4" "Continue..." 120>>]
<</if>>
</div>/*#
#desc: work blowjob in gloryhole, drink cum
#status: FINISHED 0.4.0.0
#ignore_spell: sissifica,slutica
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Mm mth ms knndfull rghmt nmw...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor "mouthopen" "holdcockshaft" "cum_blowjob">>
<div id="invframe" class="scrolltext">
With a final uproar, a torrent of <<getWordCum>> is unloaded directly in your mouth, filling it up a lot quicker than you expected. You're unable to swallow the whole load
<<switch $scene.gloryholestatus.cloth2part>>
<<case 'head'>>
which makes a lot of it splatter onto your face,
<<if $scene.gloryholestatus.cloth2 == ''>>
inking your rosy cheeks in hot <<if !$options.fem>>manly <</if>>white <<getWordCum>>, making you look like you just finished being in the place of honour at a bukkake session,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholestatus.cloth2)>> in <<getWordCum>>, making you look like you just finished being in the place of honour at a bukkake session,
<</if>>
<<case 'mouth'>>
which makes a lot of it splatter onto your lips. You lick your lips reflexively,
<<case 'upperbody' 'tits'>>
making it seep down your face onto your chest,
<<if $scene.gloryholestatus.cloth2 == ''>>
making the <<getWordCum>> flow down your nipples,
<<else>>
soaking your <<=setup.getItemName($scene.gloryholestatus.cloth2)>> in <<getWordCum>>,
<</if>>
<</switch>>
while
<<if $scene.gloryholestatus.up_cum>>
<<if $scene.gloryholestatus.cage!="">>
<<if $player.body_ref.penis>>
<<if $scene.gloryholestatus.cloth1 == ''>>
<<getWordCum true>> flows out of you on to the floor,
<<else>>
<<getWordCum true>> flows out of your <<getWordMyPenis>> on to the floor, soaking into your <<=setup.getItemName($scene.gloryholestatus.cloth1)>>,
<</if>>
<<else>>
you drip with excitement,
<<if $scene.gloryholestatus.cloth1 != ''>>
soaking your <<=setup.getItemName($scene.gloryholestatus.cloth1)>>,
<</if>>
<</if>>
like the good little <<if $fetish.sissy>>sissy <</if>>whore you are.
<<if $scene.gloryholestatus.plug!="">>
Groaning with need, you shove the <<=$scene.gloryholestatus.plug>> back up your wet <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>>.
<</if>>
<<else>>
<<if $scene.gloryholestatus.cloth1 == ''>>
you spray <<getWordCum true>> on the floor,
<<else>>
you spray <<getWordCum true>> into your <<=setup.getItemName($scene.gloryholestatus.cloth1)>>,
<</if>>
like the good little whore you are.
<</if>>
<<else>>
<<if $scene.gloryholestatus.cage!="">>
<<if $player.body_ref.penis>>
your <<getWordMyPenis>> tries to get harder only to get blocked by your <<=$scene.gloryholestatus.cage>>, preventing you from climaxing.
<<else>>
you get wetter and wetter inside your belt, but you are locked away, with relief out of reach.
<</if>>
You feel like a sex toy, used without any release in sight. Just like a perfect little <<if $fetish.sissy>>sissy<<else>>girl<</if>>.
<<if $scene.gloryholestatus.plug!="">>
Groaning with need, you shove the <<=$scene.gloryholestatus.plug>> back up your wet <<if $fetish.sissy>>sissy bussy<<else>>hole<</if>>.
<</if>>
<<elseif $player.body_ref.penis>>
your <<getWordMyPenis>> gets harder and harder, making you think about the big, hard <<getWordPenis>> you just pleasured.
<<else>>
you get wetter and wetter as you think about the big, hard <<getWordPenis>> you just pleasured.
<</if>>
<</if>>
<br><br>
You catch your breath as you reflect on licking <<getWordCum>> straight from the rapidly-deflating source.
<<if !$player.virgin.swallow_cum_self>>
<<if $player.virgin.swallow_cum_other>>
again
<</if>>
even before ever tasting your own <<getWordCum true>>.
<</if>>
<<switch $scene.gloryholestatus.cum_quality>>
<<case 0>>
There's plenty of cum in your mouth, but it's thin and tastes weak.<br><br>
<<printThought "Oh <<getWordGod>>. This tastes more like piss than <<getWordCum>>!">><br>
<br>
<<if setup.getTotalValue('piss')>=10>>
It leaves the delicious after-taste of <<getWordPiss>> on your tongue, and you lick your lips with relish.
<<else>>
It leaves a bitter after-taste on your tongue and you have to cough.
<</if>>
<<if setup.getTotalValue('piss')<1>>
The thought of having <<getWordPiss>> in your mouth is repulsive to you. You spit it out.<br>
<br>
<<printThought "Oh <<getWordGod>>. That tasted like... well... <<getWordPiss>>!">>
<<elseif setup.getTotalValue('piss')<5>>
You still swallow it, but you don't like it, not even a little. The act is humiliating and you're repulsed by your own action. But you know that the <<guy>>s love it when you swallow their loads, so you do it anyway.<br>
<br>
<<printThought "Oh no... no more <<getWordPiss>> please!">>
<<elseif setup.getTotalValue('piss')<10>>
But for some reason, maybe from all the <<getWordPiss>> you've been guzzling lately, you don't find this as repulsive as you used to be, a fact that frankly scares you a little bit. You show your patron, that you have <<his>> whole load in your mouth, like the good little toilet slave you are before voraciously swallowing the unholy mixture of <<getWordCum>> and <<getWordPiss>>.<br>
<br>
<<printThought "I really am just a human toilet slave!!">>
<<else>>
But being the toiletwhore you are, you're very okay with the thought as serving as a human toilet for your patron, guzzling down all their bottled up <<getWordPiss>> right from the source. Having tasted some refreshing <<getWordPiss>> on your tongue, you want more of course, cementing your place as a lowly toilet even more, and asking the patron if they would like to use your mouth as a urinal.<br>
<br>
"@@.npc_gloryhole;Of course, open up slut! I don't have all day!@@"<br>
<br>
You happily pull your mouth over <<his>> <<getWordPenis>>, forming a watertight seal with your lips. You can feel as the veins in <<his>> <<getWordPenis>> strain, and <<his>> urethra releases at least three quarters of a litre of hot, steamy and tasty <<getWordPiss>> into your mouth, which you happily swallow.<br>
<br>
<<printThought "Please, use me like the living toilet I am!">>
<</if>>
<<case 1>>
It tastes bitter and smells a little bit like <<getWordPiss>>. Maybe the stranger pissed right before you worked on <<his>> shaft<<if !$options.fem>> of manliness<</if>>. <<if setup.getTotalValue('piss')>10>>Yum!<<else>>Yuck.<</if>> Still you can't stop licking your hand until it's all inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought "Yay! I'm a cumslut!">>
<<else>>
<<printThought "Why am I doing this?">>
<</if>>
<<case 2>>
It is thin and watered down, like someone had masturbated too often earlier in the day. There isn't much as well, but still you can't stop licking your hand until every drip of <<getWordCum>> is inside your mouth. You let it roll around your tongue, like you're tasting a good glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought "I need more <<getWordCum>>!">>
<<else>>
<<printThought "I have got to stop doing things like this!">>
<</if>>
<<case 3>>
It is thick and gooey and there's quite a lot of it. You quite enjoy licking it all up until the last drop is in your mouth, coating your tongue and throat. You love how it feels moving around in your mouth and enjoy the rich taste it leaves there. After you got the most out of it, you swallow it like a good little cumslut.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought "Creamy! That really hits the spot!">>
<<else>>
<<printThought "Huh, that didn't taste too bad... what am I thinking?">>
<</if>>
<<case 4>>
This giant, viscous load of <<getWordCum>> has the perfect consistency and texture. It is bright, white and smells, and tastes, oh <<getWordGod>> the taste!<<if !$options.fem>> of manliness.<</if>> You can't stop licking your fingers, since this might well be the apex of <<getWordCum>>, at least as far as you have tasted. It almost seems a waste to swallow it, but after a while you do, with a guilty, pleased smile on your lips.<br>
<br>
<<if setup.getTotalValue('cum')>5>>
<<printThought "So good! I want a lot more from where that came from!">>
<<else>>
<<printThought "Yum! I want more! Wait, what? Oh no...">>
<</if>>
<</switch>>
<br><br>
<<if setup.hasReadEmail("spam02_2_h") && !State.hasPlayed("event_sissy_email_2_whore_1")>>
<<printThought "Miss <<if $fetish.sissy>>Sissifica<<else>>Slutica<</if>> told me to send her a picture in a gloryhole and, like... here I am...">><br>
<br>
[<<moveTo "event_sissy_email_2_whore_1" "Snap a picture of you choking on cock for Miss <<if $fetish.sissy>>Sissifica<<else>>Slutica<</if>>." 120>>]<br>
<</if>>
[<<moveTo "room_usual_place_blowjob_4" "Continue..." 120>>]
</div>/*#
#desc: work blowjob in gloryhole
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Mm mth ms knndfull rghmt nmw...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.gloryholestatus.money = setup.calcHandjobMoney($player,$scene.gloryholestatus.money)>>
<<addCredits $scene.gloryholestatus.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholestatus.money>>
<<set $scene.gloryholestatus.totalmoney+=$scene.gloryholestatus.money>>
<<if $npc_barkeeper.flags.prostitution.caught > 0 || $npc_barkeeper.flags.prostitution.can_work_alley>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay += $scene.gloryholestatus.money>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" "mouthclosed">>
<div id="invframe" class="scrolltext">
<<if $scene.gloryholestatus.pissjob>>
"@@.npc_gloryhole;That was awesome. Your mouth is really something to behold. Here, take this. You've earned it. But if you want a few credits more you just have to keep your pretty little mouth right where it is. @@"<br>
<br>
<<He>> passes you <<=$scene.gloryholestatus.money>> credits through the gloryhole.<br>
<br>
[<<moveTo "room_usual_place_bathroom" "Thank <<him>> for <<his>> patronage, but decline the offer." 60>>]<br>
[<<moveTo "room_usual_place_blowjob_piss" "Take the money and accept the offer." 60>>]<br>
<<else>>
<<if $scene.gloryholestatus.reason == 'money'>>
"@@.npc_gloryhole;That was awesome. Your mouth is really something to behold. Here, take this. You've earned it.@@"<br>
<br>
<<He>> passes your <<=$scene.gloryholestatus.money>> credits through the gloryhole and you embrace your reward while saying thank you.
<<else>>
"@@.npc_gloryhole;That was awesome. Your mouth is really something to behold. I know you didn't ask for any money, but take this. You've earned it.@@"<br>
<br>
<<He>> sticks <<=$scene.gloryholestatus.money>> credits through the gloryhole and you embrace your reward while saying thank you.
<</if>>
<br><br>
<<if $now.getUTCHours() >= 3 && $now.getUTCHours() < 8>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You catch your breath and then hear a shout, "@@.npc_barkeeper;Alright you sluts — it's last call and then some, you need to clear on out!@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif $player.timebased.fatigue > $player.timebased.fatiguemax/2>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You're feeling a bit tired...<br>
<br>
[<<moveTo "event_gloryhole_pass_out_1" "Press on!" 60>>]<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<set _waitTime = Math.round((30+(60*Math.random()))*60)>>
[<<moveTo "room_usual_place_job" "Another round!" _waitTime>>]<br>
<<include "leaveGloryholeToilet">>
<</if>>
<</if>>
</div>/*#
#desc: offered anal in gloryhole
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Too mesmerised by cock...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "room_usual_place_blowjob_init">>
<<set $scene.gloryholestatus.blowjob -= 1>>
<<set $scene.gloryholestatus.anal += 1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
You start to reach for the juicy <<getWordPenis>> sticking out through the wall when you hear the <<if $options.fem>>woman's <</if>>voice from the other side of the thin partition.<br>
<br>
"@@.npc_gloryhole;Hey, so I don't suppose you've got another hole available? Lips are lovely, but I'm feeling like something a bit... tighter this evening...@@"<br>
<br>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<printThought "<<Hes>> talking about my ass isn't <<he>>...">>
<<else>>
<<printThought "Wait... <<he>> wants to fuck my ass? Is this how I lose my anal virginity? Bent over in a bathroom stall with a <<guy>> whose face I never even see?">>
<</if>>
<br><br>
[<<moveTo "room_usual_place_gloryhole_anal_2" "Bend over and back up." 60>>]<br>
[<<moveTo "room_usual_place_blowjob_1" "Just suck <<him>> off." 60 "<<set $npc_barkeeper.blowjobs+=1>>">>]
</div>/*#
#desc: anal in gloryhole
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while I have this telephone pole in my ass...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstAnal = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if $scene.firstAnal>>
<<applyExperience 'penis' 13 'very' $INCOGNITO>>
<<set $scene.top = setup.checkTopBodySlot('tits','top')>>
<<if $scene.top != "">>
<<changeItemStatus $scene.top 'cumsoaked' '["set",100]'>>
<</if>>
<<else>>
<<applyExperience 'penis' 8 'normal' $INCOGNITO>>
<</if>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "gloryhole">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "money">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $options.fem>>
<<set $player.sec_style.sex.sex_woman = "money">>
<<elseif !$player.sec_style.sex.sex_man && !$options.fem>>
<<set $player.sec_style.sex.sex_man = "money">>
<</if>>
<<set $player.flags.gloryhole.analjob += 1>>
<<applyExperience 'whoring' 10 'terrible' $INCOGNITO>>
<<applyExperience 'bimbofication' 10 'terrible' $INCOGNITO>>
<<applyExperience 'anal' 8 'terrible' $INCOGNITO>>
<<set $scene.gloryholestatus.money = 30>>
<<addCredits $scene.gloryholestatus.money>>
<<set $scene.gloryholestatus.totalmoney+=$scene.gloryholestatus.money>>
<<set $player.flags.gloryhole.totalmoney += $scene.gloryholestatus.money>>
<<if $npc_barkeeper.flags.prostitution.caught > 0 || $npc_barkeeper.flags.prostitution.can_work_alley>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay += $scene.gloryholestatus.money>>
<</if>>
<<set $npc_barkeeper.analjobs+=1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" >>
<div id="invframe" class="scrolltext">
<<if $scene.firstAnal>>
Though a voice in the back of your head is screaming at you not to do this you ignore it, rising to your feet and turning around to expose your ass to the hard cock sticking out through the gloryhole. <<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>The moan that escapes your lips as you slide the plug out of your rear hole seems to confirm that you want this; that<<else>>Your heart races in anticipation as if all<</if>> your prior training as a hungry butt-slut has all been leading up to this moment.<br>
<br>
<<His>> <<getWordPenis>> is about average and you shiver as it slides between your cheeks, anticipation building before you take the plunge. Reaching back with one hand you aim <<him>> at your hole and then press backwards, moaning as, for the first time in your life, you feel a hot, human cock filling your ass.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
Your ass may be accustomed to things far thicker and longer, but there is something powerful and different about feeling a real flesh and blood cock inside of you and you bite your lip and moan softly as you move back and forth.
<<else>>
You may have played with toys of similar size, but there is something different about the real thing, how warm it is inside of you, the slight give of its flesh and the way it moves as you slide forward and back.
<</if>>
<br><br>
"@@.npc_gloryhole;Fuck, your cunt is so tight!@@" The <<man>> grunts, your anonymity having left <<him>> with no idea what hole <<hes>> actually fucking.<br>
<br>
Egged on you brace yourself against the opposite wall and increase your pace, pressing your soft butt around the taped-up gloryhole and then leaning forward until <<he>> almost pops out, <<his>> gasps and grunts mingling with your own moans as you wonder which of the two of you is enjoying things more.<br>
<br>
Knees weak you lose focus as <<he>> starts thrusting as well, the timing difficult to manage and eventually you zig when you should have zagged, <<his>> cock popping free and then bursting, a rain of cum showering over your back.<<if $scene.top != "">> Your upper body bare you feel every drop as it trickles down your back, biting your lip as a shudder of debased lust rumbles through your body.<</if>><br>
<br>
"@@.npc_gloryhole;Goddamn, girl, that was really something.@@" The <<guy>> finally states as <<his>> softening cock pulls back. "@@.npc_gloryhole;Here, you deserve this little extra.@@" <<He>> adds, a few more credits shoved through the hole.<br>
<br>
Gathering up your "profits" you slowly come down, still in a bit of a daze that you really just did that, though there is no lying to yourself, you absolutely did<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>, and as you shove the plug back into its home, you wonder how long it will be before you do it again...<<else>>, what's particularly scary is that your first thought is how long will it be until you do it again?<</if>>
<<else>>
Rising to your feet, you expose your rear and line up your hole.
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Your hollow plug makes the <<getWordPenis>> feel even girthier as it slides into your gaping hole.
<<else>>
Carefully setting your plug aside you reach back with one hand to aim the hard cock where it belongs.
<</if>>
<<else>>
Reaching back with one hand you aim the hard cock where it belongs.
<</if>>
You push back and the cock slides deeper into your ass. You moan. Sure, you may not be a stranger to taking it from behind, but there is something special and depraved about doing it like this; an anonymous fuckhole bent over and practically begging for it.<br>
<br>
You moan as you back up and <<his>> cock slides into you,
<<if setup.getTotalValue("anal") > 10>>
<<he>> may not be as large as you have become accustomed to, but there is just something about a hot cock sliding into your ass that can't help but turn you on.<br>
<br>
Extending an arm to the other side of the narrow stall, you brace yourself and begin shifting forward and back, squeezing down rhythmically as you bounce against the gloryhole opening, sounds of pleasure echoing in the bathroom confirming that your customer is more than appreciative of your efforts.
<<else>>
filling you with hot <<if $options.fem>>girl<<else>>man<</if>>-meat. You push back until your butt is pressed firmly against the wall, as much of <<his>> <<getWordPenis>> as you can reach stuffed inside of you. Catching your breath, you moan softly as <<he>> begins to slowly thrust.<br>
<br>
Bracing against the far wall of the narrow toilet stall you leave the fucking to your anonymous client, merely focusing on the wonderful sensation of <<his>> cock sliding in and out of your hole, your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> bursting with delight at every stroke.
<</if>>
<br><br>
To your disappointment <<he>> soon cums, a small blast of <<getWordCum>> deposited deep in your hole before <<he>> withdraws. Legs weak, you stagger slightly, leaning against the edge of the toilet as you <<if !setup.checkItemTypeTag('plug', ['hollow'])>>stuff the plug back in your ass to seal everything in and<</if>> collect yourself.<br>
<br>
"@@.npc_gloryhole;Goddamn, girl, that was really something.@@" The <<if $options.fem>>woman<<else>>guy<</if>> finally states as <<his>> softening cock pulls back. "Here, you deserve this little extra." <<He>> adds, a few more credits shoved through the hole.<br>
<br>
A few additional credits are slipped through the hole — not quite as good as the penis that was there but a few moments earlier, but still a nice bonus. Catching your breath, you pocket the cash.
<</if>>
<br><br>
<<if $now.getUTCHours() >= 3 && $now.getUTCHours() < 8>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You catch your breath and then hear a shout, "@@.npc_barkeeper;Alright you sluts — it's last call and then some, you need to clear on out!@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif $player.timebased.fatigue > $player.timebased.fatiguemax/2>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You're feeling a bit tired...<br>
<br>
[<<moveTo "event_gloryhole_pass_out_1" "Press on!" 60>>]<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<set _waitTime = Math.round((30+(60*Math.random()))*60)>>
[<<moveTo "room_usual_place_job" "Another round!" _waitTime>>]<br>
<<include "leaveGloryholeToilet">>
<</if>>
</div>/*#
#desc: drink piss after work gloryhole blowjob
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("piss") <= 5>>
<<set $scene.pissChest = setup.checkTopBodySlot('tits','top')>>
<<if $scene.pissChest != "">>
<<changeItemStatus $scene.pissChest 'piss' '["set",50]'>>
<</if>>
<</if>>
<<if setup.getTotalValue("piss") == 0 && !setup.hasThreshold('piss', 'gloryhole_piss', 'first_time')>>
<<setThreshold 'piss' 'gloryhole_piss' 'first_time'>>
<</if>>
<<applyExperience 'piss' 11 'normal' $INCOGNITO>>
<<applyExperience 'whoring' 10 'terrible' $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<set $player.flags.gloryhole.swallowpiss += 1>>
<<addCredits 10>>
<<set $scene.gloryholestatus.totalmoney += 10>>
<<set $player.flags.gloryhole.totalmoney += 10>>
<<if $npc_barkeeper.flags.prostitution.caught > 0 || $npc_barkeeper.flags.prostitution.can_work_alley>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay += 10>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "toiletHandjob" $scene.cockcolor "holdcock" "mouthopen" "piss">>
<div id="invframe" class="scrolltext">
You know exactly where this is going,
<<if setup.getTotalValue("piss") > 10>>
and you could hardly be happier
<<if setup.getTotalValue("piss") > 15>>
as you eagerly wrap your lips around <<his>> cock, swishing <<his>> <<getWordPiss>> around to savour and swallow every wonderful drop.
<<else>>
as you eagerly open your mouth and swallow <<his>> stream of <<getWordPiss>>.
<</if>>
<<else>>
and yet you open your mouth
<<if setup.getTotalValue("piss") > 5>>
the bitter, yet somehow oddly alluring, taste of <<getWordPiss>> splattering across your tongue as you quickly swallow to "avoid making a mess" you tell yourself, but you aren't so sure anymore.
<<else>>
the bitter, nasty taste of piss causing you to cough, some of <<his>> <<getWordPiss>> spilling down your chin.
<</if>>
<</if>>
<br><br>
<<He>> has quite a backlog of beer to unload, but eventually the golden stream trickles off. Without thinking you lick <<him>> clean and you hear a gentle <<if $options.fem>>giggle<<else>>chuckle<</if>> from the other side of the partition. "@@.npc_gloryhole;Good girl, you are just a born toilet slave, aren't you?@@"<br>
<br>
You shudder, even though you remain anonymous <<his>> words cut deep to remind you of what a depraved act you just performed. A few more credits clink through the hole and you catch your breath as the taste of urine fades from your mouth. You listen to <<his>> footfalls fade into the distance and the door to the bathroom swing closed.<br>
<br>
<<printThought "Hey, <<he>> didn't wash <<his>> hands!">> You almost laugh at your thought, while true it seems a bit pedestrian compared to what you've just done...<br>
<br>
<<if $now.getUTCHours() >= 3 && $now.getUTCHours() < 8>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You catch your breath and then hear a shout, "@@.npc_barkeeper;Alright you sluts — it's last call and then some, you need to clear on out!@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif $player.timebased.fatigue > $player.timebased.fatiguemax/2>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
You're feeling a bit tired...<br>
<br>
[<<moveTo "event_gloryhole_pass_out_1" "Press on!" 60>>]<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 180 "<<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<br>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that from inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<br>
<<printThought "My makeup is a wreck! But I can't do anything about it inside this stall...">><br>
<br>
[<<moveTo "room_usual_place_bathroom" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high" && !setup.hasWearableHeels()>>
<<if setup.hasWearableHeels()>>
[@@.link_locked;I'm too drunk for these heels, I should change into something more reasonable...@@]
<<else>>
<br>
<<printThought "I'm too drunk to walk in these heels... but I don't have another option!">><br>
<br>
[<<moveTo "room_usual_place_inside" "Leave the Bathroom." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<<else>>
[@@.link_locked;I can't leave the bathroom dressed like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<set _waitTime = Math.round((30+(60*Math.random()))*60)>>
[<<moveTo "room_usual_place_job" "Another round!" _waitTime>>]<br>
<<include "leaveGloryholeToilet">>
<</if>>
</div>/*#
#desc: npc_prostitute glares at you
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_prostitute.flags.glory_confront = true>>
<</if>>
<<set $player.location to "The Usual Place Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You step out of the gloryhole to find another woman fixing her makeup at the sink. She glares daggers at you before storming past and into one of the other stalls.<br>
<br>
You hear a slight commotion and notice her knees visible beneath the partition...<br>
<br>
<<printThought "Wait... is she pissed that I'm taking her work?">><br>
<br>
[<<moveTo "room_usual_place_inside" "Continue on your way." 60>>]
</div>/*#
#desc: pass out from overwork at gloryhole and be woken up by barkeeper
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 100>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
You take a deep breath and prepare for your next client, only for your exhaustion to catch up with you all at once. Your eyes feel heavy and you lean against the cool porcelain throne for a moment as you slip off to sleep...<br>
<br>
<<if $now.getUTCHours() < 3>>
<<set _close = setup.setNextDate($now, 0, 3, 20)>>
<<else>>
<<set _close = setup.setNextDate($now, 1, 3, 20)>>
<</if>>
<<set _timeToClose = setup.secondsToDate($now,_close)>>
<<if $npc_admin.flags.evil > 0 && $fetish.get_raped && !$player.sec_style.submission.prostitution && !State.hasPlayed("event_secretary_style_prostitution_forced_1")>>
[<<moveTo 'event_secretary_style_prostitution_forced_1' 'Continue.' _timeToClose>>]
<<else>>
[<<moveTo 'event_gloryhole_pass_out_2' 'Continue.' _timeToClose>>]
<</if>>
</div>/*#
#desc: pass out from overwork at gloryhole and be woken up by barkeeper
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -50>>
<<changeHorny -50>>
<<set _stress = 20-setup.getTotalValue("bimbofication")>>
<<applyStress _stress>>
<<set $sceneVisibility = $INCOGNITO>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_6'
6
'event_psychiatrist_session_prostitution_pass_out_1'
false
>>
<<set $npc_barkeeper.flags.prostitution.caught += 1>>
<<if $npc_barkeeper.flags.prostitution.can_work_alley>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<set $scene.her_cut = Math.floor($npc_barkeeper.flags.prostitution.her_cut * $scene.gloryholestatus.totalmoney)>>
<<addCredits `-($scene.her_cut)`>>
<<set $npc_barkeeper.flags.prostitution.money_earned += $scene.her_cut>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay = 0>>
<<elseif $npc_barkeeper.flags.prostitution.caught == 1>>
<<applyExperience 'whoring' 5 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'whoring' 5 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<</if>>
<<if !setup.checkItemOwned('card_barkeeper') && !$phoneList.includes('npc_barkeeper')>>
<<addItem "card_barkeeper">>
<</if>>
<<set $scene.dress = !setup.checkOutsideDecency()>>
<<if $scene.dress>>
<<include "forceDress">>
<</if>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $npc_barkeeper.flags.prostitution.caught == 1 && !$npc_barkeeper.flags.prostitution.can_work_alley>>
You wake up to a cold jet of water spraying your body. Jumping slightly you sputter and thrash a bit before remembering where you are — on the floor in a bathroom stall in the Usual Place Bathroom. You must have passed out from exhaustion while working at the glory hole.<br>
<br>
Looking up, you find <<=setup.getNpcName('npc_barkeeper', 'first')>> looming over you wielding a water hose, letting up on the spray as you come to.<br>
<br>
"@@.npc_barkeeper;Really, you? I would have thought a professional like yourself would have more sense than to end up in a... situation such as this.@@"<br>
<br>
The way she looks down at you is a little scary and your heart skips a beat — is she going to blackmail you or something? As you mind spins with possibilities she reaches into a pocket and plucks something out, tossing what proves to be a business card down at you.<br>
<br>
"@@.npc_barkeeper;There, sometime when you're a little less... fragrant, give me a call or drop by, if you're going to be using my facilities to do business well... we should talk. Oh — and there's an employee shower in the back-room... feel free to avail yourself of it rather than stink up my joint.@@" She adds with a nod towards your present condition.<br>
<br>
She walks away before you can formulate a response, leaving you to gather your things<<if $scene.dress>>, frantically throw on clothes,<</if>> and stagger back to your feet. Still exhausted, you trudge out of the bathroom and through the now darkened and empty bar to the cold, fresh air outside.
<<else>>
<<if $npc_barkeeper.flags.prostitution.caught > 1>>Once again you<<else>>You<</if>> wake to the cold spray of water and <<=setup.getNpcName('npc_barkeeper', 'first')>> standing over you.
<<if $npc_barkeeper.flags.prostitution.can_work_alley>>
"@@.npc_barkeeper;Seriously? You know I don't want you working yourself to exhaustion like this! Still you obviously DID work, so come on, hand it over so I can take my share.@@"<br>
<br>
Sheepishly you hand over the wad of money and she pulls out her <<=$npc_barkeeper.flags.prostitution.her_cut*100>>%, gingerly taking <<=$scene.her_cut>> of the least-moist credits with her fingertips.<br>
<br>
Looking down at you she smiles mischievously. "@@.npc_barkeeper;Open wide.@@"<br>
<br>
You obey and she jams your portion into your mouth and gives you a pat on the cheek. "@@.npc_barkeeper;Such a dirty slut. Well, until next time.@@"
<<else>>
Shaking her head she rolls her eyes. "@@.npc_barkeeper;You, again? Come on, gather your belongings and get out of here! You really need to pay attention to your limits! And give me a call sometime if you want to talk about continuing to do... this.@@"
<</if>>
<br><br>
Grabbing your things <<if $scene.dress>>and frantically throwing on clothes, <</if>>you stagger to your feet and hurry out of the stall, <<=setup.getNpcName('npc_barkeeper', 'first')>> steps out of the way and giving a final blast of water to rinse your back-side and encourage you along, her amused laugh ringing in your ears as you<<if $npc_barkeeper.flags.prostitution.can_work_alley>> spit out your earnings into your hands and<</if>> rush through the now-dark and empty bar.
<</if>>
<br><br>
<<if $npc_manager.stage > 2 && $currentTasks.hasOwnProperty('manager_morning_inspection_task') && !$currentTasks.manager_morning_inspection_task.finished>>
[<<moveTo 'event_gloryhole_pass_out_3' 'Stagger home...' 600>>]
<<else>>
[<<moveTo 'room_usual_place_outside' 'Leave.' 600>>]
<</if>>
</div>/*#
#desc: pass out at home after gloryhole
#status: RELEASED 0.9.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You somehow make it home and face-plant into your bed, not even having the energy to change clothes...<br>
<br>
<<if $npc_manager.stage > 2 && (!$currentTasks.hasOwnProperty('bed_heels_photo') || $currentTasks.bed_heels_photo.finished) && ($now.getUTCDay() >= 1 && $now.getUTCDay() < 5 || $now.getUTCDay() == 5 && $now.getUTCHours() < 6)>>
<<set _timeToWork = setup.secondsToDate($now, setup.getTaskDueDate("manager_morning_inspection_task"))-1>>
[<<moveTo 'event_gloryhole_pass_out_4' 'Sleep.' _timeToWork "<<startSleep $player $scene>><<set $scene.startedSleep = true>><<completeTask 'manager_morning_inspection_task' false>>">>]
<<else>>
[<<moveTo 'event_bed_root' 'Get ready for bed.' 0 "<<if $currentTasks.hasOwnProperty('bed_heels_photo')>><<set $npc_manager.flags.sent_bed_selfie = false>><<completeTask 'bed_heels_photo' $now false>><</if>>">>]
<</if>>
</div>/*#
#desc: late to work after passing out in gloryhole
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<finishSleep $player $scene>>
<<set $currentcall = true>>
<<unset $workEvent>>
<<setScene true>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 240)>>
<<if setup.hasTmpEffect("tipsy")>>
<<cancelTmpEffect 'tipsy'>>
<</if>>
<<if setup.hasTmpEffect("drunk")>>
<<cancelTmpEffect 'drunk'>>
<<setTmpEffect "hangover">>
<</if>>
<<if setup.hasTmpEffect("wasted")>>
<<cancelTmpEffect 'wasted'>>
<<setTmpEffect "hangover">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You wake up to the screeching of your phone, picking it up to hear <<=setup.getNpcName("npc_manager","formal")>> snarling in your ear.<br>
<br>
"@@.npc_manager_dom;You are LATE,@@" she snaps as you try to claw your way back to consciousness. "@@.npc_manager_dom;I expected you at your desk several minutes ago... I will give you twenty minutes to get your ass to work. HURRY UP!@@"<br>
<br>
Your ear is ringing as she cuts the call and you fall out of bed.<br>
<br>
[<<moveTo "room_bedroom" "Get up." 0 "<<set _x = setup.addManagerEndlessTask()>><<set $currentTasks.manager_morning_inspection_task.trigger.morningOffice.time.date = setup.advanceDate($player, $now, 'minutes', 20)>><<set $currentTasks.manager_morning_inspection_task.rewards.trigger_event='event_late_work_prostitution_1_glory'>><<set $daily.prostitutionPassout=true>>">>]
</div>/*#
#desc: talk to barkeeper about becoming a prostitute
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<if setup.findThemeId('npc_psychiatrist', 'prostitution', 'theme_psychiatrist_prostitution_11') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_11'
11
'event_psychiatrist_session_prostitution_job_offer_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
Waving for an assistant to take over the bar <<=setup.getNpcName("npc_barkeeper","first")>> leads you into a small back room and shuts the door. Sitting back on the edge of her desk she stares at you and smirks.<br>
<br>
"@@.npc_barkeeper;So, you want to be a <<callPlayer "npc_barkeeper">>... well, I guess you already ARE a <<callPlayer "npc_barkeeper">>... assuming you're charging?@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
The reminder of how much of a slut you are has you feeling horny and wet.<br>
<br>
<<printThought "Oh, <<getWordGod>>, she knows just how to turn me on!">>
<<else>>
You blush in embarrassment and she grins wider.<br>
<br>
<<printThought "Why does being humiliated turn me on so much?">>
<</if>>
<br><br>
"@@.npc_barkeeper;Well, either way, here's the thing... you're whoring it up on my property, using MY facilities and, well... rent on this place doesn't come cheap, so I'll give you the same deal as the <<if $npc_barkeeper.flags.reactnamechange>>other girls<<else>>others<</if>>. You do your thing, I get <<=$npc_barkeeper.flags.prostitution.her_cut*100>>%. <<if $npc_barkeeper.flags.prostitution.caught > 0>>And, seriously, based on how I found you? It's probably worth that much just to have a manager watching over you. You're not going to find a better cut, and to sweeten things further<<else>>And just in case you think I'm not earning my cut<</if>> — if you show that you're a good earner I may have further opportunities, or even kick the occasional VIP your direction. So, whaddaya say... ready to join the team?@@"<br>
<br>
[<<moveTo "room_usual_place_barkeeper_talk_yes" "Agree to her terms." 60>>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_no" "Decline her offer." 60>>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_1" "You aren't a <<callPlayer npc_barkeeper>>, you're a..." 60>>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_object" "Object to her characterization." 60 "<<set $scene.object_whore=true>>">>]
</div>/*#
#desc: ask barkeeper to not call you a whore
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstRename = false>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
Rather than object to <<=ps(setup.getNpcName("npc_barkeeper","first"))>> characterization you take issue with her terminology, explaining that you aren't a <<callPlayer "npc_barkeeper">> you are a...<br>
<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_2" "Working girl." 60 "<<set $npc_barkeeper.call_player='working girl'>>">>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_2" "Prostitute." 60 "<<set $npc_barkeeper.call_player='prostitute'>>">>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_2" "Jezebel." 60 "<<set $npc_barkeeper.call_player='jezebel'>>">>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_2" "Lady of the Evening." 60 "<<set $npc_barkeeper.call_player='lady of the evening'>>">>]<br>
<<if $options.isMobile>>
<<textbox "$npc_barkeeper.call_player" "" autofocus>><br>
<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_2" "Confirm prostitution title." 30>>]<br>
<<else>>
[<<link "Other (enter your own).">><<openDialog "Prostitution title." "dialog_selectNameWhore">><</link>>]
<</if>>
</div>/*#
#desc: dialog box for choosing your prostitution term
#status: RELEASED 0.8.1.0
#*/
<center>
<<textbox "$npc_barkeeper.call_player" "" autofocus>>
</center>
<br>
<<if $scene.firstRename>>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'room_usual_place_barkeeper_talk_rename_2'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@
<<else>>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'room_usual_place_barkeeper_talk_rename_repeat_2'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@
<</if>>/*#
#desc: object to barkeeper calling you a whore
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.call_player = setup.sanitizeString($npc_barkeeper.call_player)>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You explain that, if you were going to work for <<=setup.getNpcName("npc_barkeeper","first")>> it would be as a <<callPlayer "npc_barkeeper">>.<br>
<br>
She smiles in amusement,
<<if $player.sec_style.submission.prostitution>>
"@@.npc_barkeeper;Very well, <<callPlayer "npc_barkeeper">>. Was there anything else?@@"<br>
<br>
<<if $player.money.total <= 0>>
[@@.link_locked;You are in debt and cannot pay her.@@]<br>
<<elseif $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay > 0>>
[<<moveTo "event_prostitution_pay_1" "Pay her cut of your earnings." 60>>]<br>
<<else>>
[@@.link_locked;You're already paid up with your madame.@@]<br>
<</if>>
[<<moveTo "room_usual_place_inside" "Head back to the bar." 60>>]
<<else>>
"@@.npc_barkeeper;<<callPlayer "npc_barkeeper">> it is, but that didn't answer the core question...@@"<br>
<br>
[<<moveTo "room_usual_place_barkeeper_talk_yes" "Agree to her terms." 60>>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_no" "Decline her offer." 60>>]
<</if>>
</div>/*#
#desc: object to barkeeper calling you a whore
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You start to raise an objection to the implication that you are a whore.<br>
<br>
If <<=setup.getNpcName("npc_barkeeper","first")>> rolled her eyes any harder they'd be out the door, across the bar and up on the pool table.<br>
<br>
"@@.npc_barkeeper;Come on, girl, even if we ignore that you came here to talk to me voluntarily knowing the topic... <<if $npc_barkeeper.flags.prostitution.caught > 0>>I found you passed out in a glory hole covered in cum! You're either a slut who sucks cock for free, or a <<callPlayer "npc_barkeeper">> and if it's the former well...<<else>>You'll be better off fully embracing the job. After all fucking is great and<</if>> they say if you're good at something to never do it for free.@@"<br>
<br>
Her biting remark stifles your rant before it can even gather steam.<br>
<br>
"@@.npc_barkeeper;So, I'll ask again. You work, I get <<=$npc_barkeeper.flags.prostitution.her_cut*100>>% — deal or no deal?@@"<br>
<br>
[<<moveTo "room_usual_place_barkeeper_talk_yes" "Agree to her terms." 60>>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_no" "Decline her offer." 60>>]
</div>/*#
#desc: decline barkeeper's offer to work as her whore
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell her that you don't want to work for her as a prostitute.<br>
<br>
"@@.npc_barkeeper;Hmmph, well, your loss. This is a primo location for a slut like yourself. But, since you won't pay my perfectly reasonable fee, well... don't let me catch you again, passed out or not.@@"<br>
<br>
Dismissed you turn to go.<br>
<br>
"@@.npc_barkeeper;Oh, no hard feelings, and I won't tell your friend about any of this. Also, well, since you've been a good customer and all, the offer's still open if you ever change your mind.@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Go back to the bar." 60>>]
</div>/*#
#desc: agree to work for barkeeper as a whore
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.submission.prostitution>>
<<if $scene.prostitution_enthusiast>>
<<set $player.sec_style.submission.prostitution = "enthusiast">>
<<elseif $scene.object_whore>>
<<set $player.sec_style.submission.prostitution = "money">>
<<else>>
<<set $player.sec_style.submission.prostitution = "voluntary">>
<</if>>
<</if>>
<<set $npc_barkeeper.flags.prostitution.can_work_alley = true>>
<<setThreshold 'whoring' 'general_whoring' 'alley_worker'>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_11'
11
'event_psychiatrist_session_prostitution_job_offer_1'
true
>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_11'
0
'event_manager_theme_prostitute_1'
false
>>
<<addNpcTheme 'npc_priest' 'other' 'theme_priest_other_prostitution'
0
'theme_church_confession_prostitution'
true
>>
<<set $scene.giveCard = !setup.checkItemOwned('card_barkeeper') && !$phoneList.includes('npc_barkeeper')>>
<<if $scene.giveCard>>
<<addItem 'card_barkeeper'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barkeeper', 'first')>> smiles wide and extends her hand for you to shake<<if $scene.giveCard>> and then hands you a contact card<</if>>.<br>
<br>
"@@.npc_barkeeper;Welcome to the team! So it's all pretty simple — if you do any work on my property, or take a referral from me, I get <<=$npc_barkeeper.flags.prostitution.her_cut*100>>%. You're already familiar with the glory hole so feel free to put in time there, you can also try your hand at the bar, just wear something sexy and low cut, <<if !$options.fem>>men are pigs <</if>>and you should have no trouble getting in a little sucky sucky in the alley around back.@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") >= 10>>
<<printThought "Mmm, sucking off a stranger in a dirty alleyway sounds hawt!">>
<<elseif setup.getTotalValue("bimbofication") >= 5>>
<<printThought "Fuck, why does the thought of sucking off a stranger in a dirty alleyway turn me on so much?">>
<<else>>
<<printThought "I think I'll stick to the gloryhole so nobody sees my face...">>
<</if>>
<br><br>
"@@.npc_barkeeper;Well, that's about it, consider yourself on probation. If I like what I see and you're a good earner I'll kick some bigger business your way, but for now you need to prove yourself. Oh, and feel free to use the shower in the backroom — don't want you stinking up the joint, you know?@@"<br>
<br>
<<printThought "Another probation? At least this one is more up front about what all I'm in for... though surprises can be fun too...">><br>
<br>
"@@.npc_barkeeper;Alright, I need to get back to the bar, any questions?@@"<br>
<br>
<<if $player.money.total > 0>>
[<<link "Offer her a portion of what you've earned previously.">><<openDialog "Give her money:" "dialogue_barkeeper_talk_pay">><</link>>]<br>
<<else>>
[@@.link_locked;You don't have any money to offer to cover your previous work.@@]<br>
<</if>>
[<<moveTo "room_usual_place_inside" "Say no and head back to the bar." 60>>]
</div>/*#
#desc: dialogue to pay barkeeper her portion of your back income when you agree to be her whore
#status: FINISHED 0.8.1.0
#ignore_spell: s
#*/
<center>
You don't remember exactly how much you've earned, how much will you offer her?
<<numberbox "$scene.barkeeper_pay" 0 autofocus>>
</center>
<br>
@@.textRightSide;
<<button "Okay">>
<<moveTo 'room_usual_place_barkeeper_talk_pay'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: barkeeper reacts to you paying her her cut
#status: FINISHED 0.8.1.0
#ignore_spell: s
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.no_money = $scene.barkeeper_pay > $player.money.total>>
<<if $scene.barkeeper_pay > 0 && !$scene.no_money>>
<<addCredits `-($scene.barkeeper_pay)`>>
<<set $npc_barkeeper.flags.prostitution.money_earned += $scene.barkeeper_pay>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay = 0>>
<<incrementEmotion 'affection' 'npc_barkeeper' 2>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.no_money>>
You don't have enough money to pay <<=setup.getNpcName('npc_barkeeper', 'first')>> <<=$scene.barkeeper_pay>> credits.<br>
<br>
[<<link "Offer a different amount.">><<openDialog "Give her money:" "dialogue_barkeeper_talk_pay">><</link>>]
<<elseif $scene.barkeeper_pay < 0>>
<<printThought "I'm, like, such a ditz. I can't pay her a negative amount! That doesn't even make sense!">><br>
<br>
[<<link "Offer her some other amount.">><<openDialog "Give her money:" "dialogue_barkeeper_talk_pay">><</link>>]
<<else>>
<<if $scene.barkeeper_pay >= 100>>
<<=setup.getNpcName('npc_barkeeper', 'first')>> looks surprised as you hand her the wad of credits.<br>
<br>
"@@.npc_barkeeper;Wow, this is <<=$npc_barkeeper.flags.prostitution.her_cut*100>>%? You have been the industrious slut, keep this up and you'll be my top earner! Don't let me waste any more of your time, get back out there <<if $npc_barkeeper.flags.reactnamechange>>girlfriend<<else>>fuckboy<</if>>!@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Thank her and return to the bar." 60>>]
<<elseif $scene.barkeeper_pay == 0>>
After thinking about it, you decide that you don't owe her for work you've done in the past.<br>
<br>
[<<moveTo "room_usual_place_inside" "Return to the bar." 60>>]
<<elseif $scene.barkeeper_pay <= 10>>
<<=setup.getNpcName('npc_barkeeper', 'first')>> looks a bit disappointed as you hand her the money.<br>
<br>
"@@.npc_barkeeper;That's it? I figured you'd put in more work than that... or maybe you just turn a really cheap trick? Still, I appreciate the honesty, but you'll need to show more of your earning potential if I'm going to trust you with more substantial work responsibilities.@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Thank her and return to the bar." 60>>]
<<else>>
<<=setup.getNpcName('npc_barkeeper', 'first')>> takes the credits with a smile.<br>
<br>
"@@.npc_barkeeper;How upstanding of you! I really wasn't expecting to be paid for your prior work, but really, it is only fair. I wish all of my employees were this forthright! I guess you're one of those <<callPlayer "npc_barkeeper">>s with a heart of gold or something, eh?@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Blush and return to the bar." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: npc_barista offers sexwork
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You smile back at <<=setup.getNpcName("npc_barista","nickname")>> and reply that you'd, like, love to go whoring with her!<br>
<br>
"@@.npc_barista;Yay! You're, like, so cool!@@" She says with a grin as the two of you finish the last of the clean-up and get ready to head out.<br>
<br>
<<set _barOpen = setup.setNextDate($now, 0, 19, 0)>>
<<set _timeToBarOpen = setup.secondsToDate($now,_barOpen)>>
[<<moveTo "event_barista_afterwork_prostitution_invite_2" "Finish cleaning up." _timeToBarOpen>>]
<<else>>
You turn down <<=ps(setup.getNpcName("npc_barista","nickname"))>> casual offer of sex work and she shrugs.<br>
<br>
"@@.npc_barista;Okay, like... I'll catch you later then. Have a fun evening!@@"<br>
<br>
You nod and reply that you will. From her expression you don't think she believes that anything you could possibly do would be as fun as working as a prostitute.<br>
<br>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: barkeeper offers opportunity job selling your ass
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.know_prostitute = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
After thoroughly cleaning Cafe 52 you ride the elevator downstairs where <<=setup.getNpcName("npc_barista","nickname")>> pays for a cab and, to your slight surprise, you find yourself traveling a familiar route that leads you on to a familiar location. The vehicle comes to a stop in front of The Usual Place!<br>
<br>
You don't have a chance to ask <<=setup.getNpcName("npc_barista","nickname")>> what's going on before she's dragging you into the bar and waving at <<=setup.getNpcName("npc_barkeeper","first")>>.<br>
<br>
<<=setup.getNpcName("npc_barkeeper","first")>> looks up in surprise. "@@.npc_barkeeper;You two know each other?@@"<br>
<br>
"@@.npc_barista;Totally!@@" <<=setup.getNpcName("npc_barista","nickname")>> replies. "@@.npc_barista;We've, like, known each other forever and stuff! Anyway, I was telling <<=$player.first_name>> about working for you and they totally want to be a whore as well!@@"<br>
<br>
<<if $npc_barkeeper.flags.prostitution.can_work_alley>>
<<=setup.getNpcName("npc_barkeeper","first")>> chuckles in amusement. "@@.npc_barkeeper;<<=$player.first_name>> is already working for me! Not quite at the level that you are but... well, they seem quite ambitious, so who knows!@@"<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> grins wider. "@@.npc_barista;That's, like, so cool!@@"<br>
<br>
"@@.npc_barkeeper;Speaking of levels,@@" <<=setup.getNpcName("npc_barkeeper","first")>> interrupts, "@@.npc_barkeeper;I've got one of your regulars who requested you specifically, you ready to work?@@"<br>
<br>
"@@.npc_barista;Like, of course!@@" She says with a grin before turning back to you, "@@.npc_barista;I gotta get to work now but I'll see you around, right?@@"<br>
<br>
You nod and she dashes off as <<=setup.getNpcName("npc_barkeeper","first")>> shakes her head in amusement and then turns to take a customer's order.<br>
<br>
[<<moveTo "room_usual_place_inside" "Look around the bar." 60>>]
<<else>>
<<=setup.getNpcName("npc_barkeeper","first")>> raises a knowing eyebrow and you get the distinct impression she knows just how much time you've spent in the gloryhole in the back of the bar.<br>
<br>
"@@.npc_barkeeper;I see, well, of course, with <<=setup.getNpcName("npc_barista","nickname")>> vouching for you I'll give the same deal as the <<if $npc_barkeeper.flags.reactnamechange>>other girls<<else>>others<</if>>. You do your thing, I get <<=$npc_barkeeper.flags.prostitution.her_cut*100>>%. We'll start off slow to begin with, but if you show that you're a good earner I may have further opportunities, or even kick the occasional VIP your direction. So, whaddaya say... ready to join the team?@@"<br>
<br>
[<<moveTo "event_barista_afterwork_prostitution_invite_3" "Agree to her terms." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_barista_afterwork_prostitution_invite_3" "Decline her offer." 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: barkeeper offers opportunity job selling your ass
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if !$player.sec_style.submission.prostitution>>
<<set $player.sec_style.submission.prostitution = "obedient">>
<</if>>
<<set $npc_barkeeper.flags.prostitution.can_work_alley = true>>
<<setThreshold 'whoring' 'general_whoring' 'alley_worker'>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_11'
11
'event_psychiatrist_session_prostitution_job_offer_1'
true
>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_11'
0
'event_manager_theme_prostitute_1'
false
>>
<<addNpcTheme 'npc_priest' 'other' 'theme_priest_other_prostitution'
0
'theme_church_confession_prostitution'
true
>>
<<set $scene.giveCard = !setup.checkItemOwned('card_barkeeper') && !$phoneList.includes('npc_barkeeper')>>
<<if $scene.giveCard>>
<<addItem 'card_barkeeper'>>
<</if>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You say that you'd love to be a whore like <<=setup.getNpcName("npc_barista","nickname")>> and she beams.<br>
<br>
"@@.npc_barkeeper;Great, well... we'll start things off basic, you can use the gloryhole in back, or find clients at the bar and, well... if you impress, and prove yourself a good earner? We'll talk about other things.@@" She pauses as your heart pounds with excitement. "@@.npc_barkeeper;Speaking of other things... <<=setup.getNpcName("npc_barista","nickname")>>, you got a VIP client lined up so...@@"<br>
<br>
"@@.npc_barista;On it!@@" <<=setup.getNpcName("npc_barista","nickname")>> replies with excitement before dashing off to a back room.<br>
<br>
<<if $scene.giveCard>>
<<=setup.getNpcName("npc_barkeeper","first")>> hands you a business card. "@@.npc_barkeeper;Just in case you need to get ahold of me for something.@@"<br>
<br>
<</if>>
<<=setup.getNpcName("npc_barkeeper","first")>> smiles at you. "@@.npc_barkeeper;Great, well... I gotta get back to pouring drinks, enjoy your new job! Oh, and feel free to use the shower in the backroom — don't want you stinking up the joint, you know?@@" She turns away to serve other customers.
<<else>>
You decline the offer and <<=setup.getNpcName("npc_barista","nickname")>> frowns. "@@.npc_barista;I thought you were excited to work too! Well, I gotta go serve a client — you think about it and maybe change your mind. Being a bimbo whore is the best!@@"<br>
<br>
She dashes off as <<=setup.getNpcName("npc_barkeeper","first")>> shakes her head in amusement. "@@.npc_barkeeper;Well, if you do change your mind, I'll be around.@@"<br>
<br>
You nod as she goes back to serving other customers.
<</if>>
<br><br>
[<<moveTo "room_usual_place_inside" "Look around the bar." 60>>]
</div>/*#
#desc: alt talk to barkeeper about becoming a prostitute
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.submission.prostitution>>
<<set $player.sec_style.submission.prostitution = "voluntary">>
<</if>>
<<set $npc_barkeeper.flags.prostitution.can_work_alley = true>>
<<setThreshold 'whoring' 'general_whoring' 'alley_worker'>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_11'
11
'event_psychiatrist_session_prostitution_job_offer_1'
true
>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_11'
0
'event_manager_theme_prostitute_1'
false
>>
<<addNpcTheme 'npc_priest' 'other' 'theme_priest_other_prostitution'
0
'theme_church_confession_prostitution'
true
>>
<<set $scene.giveCard = !setup.checkItemOwned('card_barkeeper') && !$phoneList.includes('npc_barkeeper')>>
<<if $scene.giveCard>>
<<addItem 'card_barkeeper'>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_barkeeper","first")>> that you're ready to start working as a prostitute.<br>
<br>
"@@.npc_barkeeper;Great, well, the terms are as I said before: I get <<=$npc_barkeeper.flags.prostitution.her_cut*100>>%. Once you've proven yourself I may expand your opportunities, but for now it's the gloryhole or finding people at the bar who are looking for a quick suck in the alley out back. Oh, and feel free to use the shower in the backroom — don't want you stinking up the joint, you know?@@"<br>
<br>
<<if $scene.giveCard>>
She hands you a business card. "@@.npc_barkeeper;Just in case you need to get ahold of me for something.@@"<br>
<br>
<</if>>
You nod in agreement and thank her for her time before she heads back to work and you return to the bar.<br>
<br>
[<<moveTo "room_usual_place_inside" "Look around the bar." 60>>]
</div>/*#
#desc: object to barkeeper calling you a whore
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstRename = false>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_barkeeper","first")>> that you don't want her to call you a <<callPlayer "npc_barkeeper">> anymore.<br>
<br>
You want her to call you...<br>
<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_repeat_2" "Working girl." 60 "<<set $npc_barkeeper.call_player='working girl'>>">>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_repeat_2" "Prostitute." 60 "<<set $npc_barkeeper.call_player='prostitute'>>">>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_repeat_2" "Jezebel." 60 "<<set $npc_barkeeper.call_player='jezebel'>>">>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_repeat_2" "Lady of the Evening." 60 "<<set $npc_barkeeper.call_player='lady of the evening'>>">>]<br>
<<if $options.isMobile>>
<<textbox "$npc_barkeeper.call_player" "" autofocus>><br>
<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_2" "Confirm prostitution title." 30>>]<br>
<<else>>
[<<link "Other (enter your own).">><<openDialog "Prostitution title." "dialog_selectNameWhore">><</link>>]
<</if>>
</div>/*#
#desc: object to barkeeper calling you a whore
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.call_player = setup.sanitizeString($npc_barkeeper.call_player)>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_barkeeper","first")>> that you would like her to refer to you as a <<callPlayer "npc_barkeeper">>.<br>
<br>
She nods "@@.npc_barkeeper;<<callPlayer "npc_barkeeper">> it is.@@"<br>
<br>
Another customer approaches the bar with an order and <<=setup.getNpcName("npc_barkeeper","first")>> waits a beat to see if you have a follow-up before turning away.<br>
<br>
[<<moveTo "room_usual_place_inside" "Back to the bar." 60>>]
</div>/*#
#desc: enthusiast ask barkeeper about gloryhole
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You walk up to <<=setup.getNpcName('npc_barkeeper', 'first')>> and confront her about the gloryhole in the bar's bathroom.<br>
<br>
Turning suddenly cagey, she answers slowly. "@@.npc_barkeeper;And what of it... if such a thing even exists at all...@@"<br>
<br>
[<<moveTo "event_secretary_style_prostitution_enthusiast_2" "You've been sucking cock in it... but you want more! Could she pimp you out?" 120 "<<set $scene.action='pimp'>>">>]<br>
[<<moveTo "event_secretary_style_prostitution_enthusiast_2" "Object to the existence of something so depraved!" 120 "<<set $scene.action='object'>>">>]<br>
[<<moveTo "event_secretary_style_prostitution_enthusiast_2" "Actually... you don't have anything to say." 120 "<<set $scene.action='none'>>">>]
</div>/*#
#desc: enthusiast ask barkeeper about gloryhole
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitution_enthusiast = true>>
<</if>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'pimp'>>
You enthusiastically explain that you've been sucking cock in the gloryhole... but that you want more. That merely taking credits for anonymous blowjobs isn't enough, you want to sell your entire body.<br>
<br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> immediately looks less tense, and even has a slight smile on her face as she replies. "@@.npc_barkeeper;I see... well, I am certainly always looking for more workers... a place like this, well, people come for sex, and sometimes they'd rather just pay than go through the whole rigmarole of drinks and chit-chat.@@"<br>
<br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> her tone turns business-like and formal. "@@.npc_barkeeper;So, here's the deal. if you want to whore it up on my property, using my facilities, the agreement is simple. You keep doing your thing like the <<callPlayer "npc_barkeeper">> you already are, and I get <<=$npc_barkeeper.flags.prostitution.her_cut*100>>%. Just in case you think I'm not earning my cut — if you show that you're a good earner I may have further opportunities, or even kick the occasional VIP your direction. So, whaddaya say... ready to join the team?@@"<br>
<br>
[<<moveTo "room_usual_place_barkeeper_talk_yes" "Agree to her terms." 60>>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_no" "Decline her offer." 60>>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_rename_1" "You aren't a <<callPlayer npc_barkeeper>>, you're a..." 60>>]<br>
[<<moveTo "room_usual_place_barkeeper_talk_object" "Object to her characterization." 60>>]
<<case 'object'>>
You object to the existence of a gloryhole in such an otherwise upstanding establishment!<br>
<br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> almost laughs. "@@.npc_barkeeper;Upstanding? Now, look, I run a tight ship, no fighting, no nazis, no ruckus. People are here to have a good evening, have a few drinks and that's it. But this is a dive, y'know? So, if there did happen to be a gloryhole in the bathroom. Which I will neither confirm, nor deny, well... that's just part of the charm.@@"<br>
<br>
You're taken off-guard by her response and, unable to think of a follow-up, step away as she turns to another customer.<br>
<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60>>]
<<case 'none'>>
You blink, suddenly realising that you didn't have a follow-up. <<=setup.getNpcName('npc_barkeeper', 'first')>> stares back at you for a few more moments and then shakes her head and turns to another customer.<br>
<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: caught by cruel barkeeper
#status: RELEASED 0.9.0.0
#ignore_spell: capisce
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 4, 19, 0, false)>>
<<addTaskById 'task_forced_prostitution' _nextDate>>
<<set $npc_barkeeper.flags.prostitution.caught += 1>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You look up to see <<=setup.getNpcName("npc_barkeeper","first")>> standing over you, her normally welcoming and friendly bartender's expression twisted and cruel.
<<if $npc_barkeeper.flags.prostitution.caught == 1>>
"@@.npc_barkeeper;Again? No, this is at an end <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>. I let you off before on account of your friendship with <<=setup.getNpcName("npc_admin","first")>>... but, now? Well, whatever happened to <<him npc_admin>>, I feel like I have you to blame for it, and my patience is at an end.@@"
<<else>>
"@@.npc_barkeeper;What the fuck are you doing, <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>. I might have been willing to look the other way on account of your friendship with <<=setup.getNpcName("npc_admin","first")>>... but, now? Well, whatever happened to <<him npc_admin>>, I feel like I have you to blame for it, and so, too, goes my sense of charity.@@"
<</if>>
<br><br>
She blasts you with a hose, cleaning you off in the most dehumanising way possible before grabbing you by the hair and dragging you to your feet.<br>
<br>
You are still exhausted from your night's debauchery, unable to offer anything resembling resistance as she slams you up against a wall and leans in close.<br>
<br>
"@@.npc_barkeeper;Here's how it's going to work, <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>bitch<</if>>, you're working in my establishment, which means you're working for me. That means I get a cut of whatever action your whore-throat swallows, capisce? Do well enough and I might even have further opportunities for you, but if you don't pay up, well... delinquent sluts make up the difference by being hired out for all-night <<if $fetish.get_raped>>gang-rapes<<else>>gang-bangs<</if>>... though maybe you'd enjoy that? I guess we'll see. Oh, and to make up for back-pay, I expect you back in here <<if $now.getUTCDay() == 4>>next Thursday<<else>>Thursday<</if>> night. I'm going to chain you to a bed and you're going to fuck, suck, lick, and swallow every cock and cunt that wants to use you. Think of it as your first advertising campaign.@@"<br>
<br>
She gives you a final glare before storming off and you almost slide back to the floor, instead stumbling back onto the toilet to take a seat and catch your breath, somehow feeling even more dirty, used, and abused than normal.<br>
<br>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && !$currentTasks.manager_morning_inspection_task.finished>>
[<<moveTo 'event_gloryhole_pass_out_3' 'Stagger home...' 600>>]
<<else>>
[<<moveTo 'room_usual_place_outside' 'Leave.' 600>>]
<</if>>
</div>/*#
#desc: setup event for strict prostitution after failing forced
#status: RELEASED 0.9.0.0
#*/
<<initRoom>>
<<include playerMenu>>
<<if setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
<<moveTo "event_secretary_style_prostitution_strict_1">>
<<else>>
<<addEvent "prostitution_strict_intro">>
<<moveTo $scene.beforetasklocation.pop()>>
<</if>>/*#
#desc: fail to show up for forced prostitution event
#status: RELEASED 0.9.0.0
#ignore_spell: fuckmeome
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_admin","npc_admin_evil")>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($player.plocation,"home") || setup.inPassageTag($scene.beforetasklocation.last(),"home")>>
You hear a knock on the door. The camera somehow obscured, you open the door only to get shoved into the flat. You feel yourself lifted up by something strong and powerful, unable to offer the slightest resistance as you are carried inside and the door closes behind you.<br>
<br>
Only after you are slammed onto the couch do you get a look at your attacker, looking up to see <<=setup.getNpcName("npc_admin","first")>>
<<else>>
You arrive home to find someone waiting for you, <<=setup.getNpcName("npc_admin","first")>> sitting in your livingroom, a cruel smile on <<his npc_admin>> face. Before you can react <<he npc_admin>> is on top of you, moving lightning fast, <<his npc_admin>> strength nigh unstoppable as <<he npc_admin>> carries you into the flat and closes the door. Slamming you onto the couch and
<</if>>
looming over you, nearly two meters tall and another wide of muscle and menace.<br>
<br>
"@@.npc_admin;You missed your appointment, <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>bitch<</if>>.@@" <<=setup.getNpcName("npc_admin","first")>> states, not a hint of <<his npc_admin>> old kindness in words dripping with menace.<br>
<br>
You blink in shock, fear momentarily replaced with confusion.<br>
<br>
"@@.npc_admin;Your whorish escapades,@@" <<=setup.getNpcName("npc_admin","first")>> explains. "@@.npc_admin;That <<if $fetish.slurs>>dumb cunt<<else>>ditz<</if>> of a bartender? Well, turns out she was even more desperate for my cock than she was already acting. A few hours of fucking her brains out, augmented by some of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> special concoctions, and her loyalty was assured, and her little bar/whorehouse gained a silent partner, giving me another eager flesh-slit to wet my dick and, more importantly an alternate revenue stream independent of the company. Not that I'm not focused on working for <<=setup.getNpcName("npc_boss","formal")>>, of course... but it's always good to diversify, right? And how better to embrace the grind than some side income fueled by the oldest profession?@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> laughs, not a friendly sound, but a villainous laugh that sends a shiver through your bones.<br>
<br>
"@@.npc_admin;Now that that's out of the way, well...@@" <<he npc_admin>> makes a show of looking at <<his npc_admin>> watch. "@@.npc_admin;I went ahead and registered you on <<set _fuckme = "FuckMe@Home">><<=_fuckme>>. A few hours of that should work off most of your debt to <<=setup.getNpcName("npc_barkeeper","first")>> for using her facilities, and maybe drill it into that ditzy slut-brain of yours that you're a whore-for-sale pierce of meat now, and you need to stop shirking your duties. And don't worry about safety, <<=setup.getNpcName("npc_barkeeper","first")>> will be watching using the company surveillance cameras... and keeping a copy as a bonus revenue stream. So put on a good show, <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>.@@"<br>
<br>
[<<moveTo "event_secretary_style_prostitution_strict_2" "This is your life, now. Resign yourself to your fate." 7200>>]<br>
[<<moveTo "event_secretary_style_prostitution_strict_2_resist" "This can't be happening, get out of here!" 1800>>]
</div>/*#
#desc: try to escape strict prostitution
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_admin","npc_admin_evil")>>
<div id="invframe" class="scrolltext">
Heedless of surveillance, you wait for <<=setup.getNpcName("npc_admin","first")>> to leave and then make a dash, not for your flat's exit, but for the emergency fire escape.<br>
<br>
Climbing down quickly you land on the ground... only to turn around and find yourself face to face with <<=setup.getNpcName("npc_admin","first")>> once again. "@@.npc_admin;Trying to pull a runner, eh?@@" <<He npc_admin>> sneers. "@@.npc_admin;Well, if you want to play this the hard way, so much the better. Kidnap scenarios on <<set _fuckme = "FuckMe@Home">><<=_fuckme>> actually pay even better... so let's get you back upstairs, tied up, and ready for your customers.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> catches you and tosses you over <<his npc_admin>> shoulder, impervious to your resistance as <<he npc_admin>> climbs back up the fire escape and tosses you back on the couch. <<His npc_admin>> hands are like vices as <<he npc_admin>> wrangles your limbs, pulling you into a legs-spread hogtie and shoving a panty gag into your mouth.<br>
<br>
"@@.npc_admin;Enjoy the taste! Those are what <<=setup.getNpcName("npc_barkeeper","first")>> was wearing before I fucked her earlier this evening. Talk about wet! If I ever start getting tired of her I'll be having her pimp herself out, for sure, can't let prime pussy go to waste... and I'm sure there's good credits in selling her off to some of the rowdier customers who may want revenge for being cut off a time or two... nothing <<if $fetish.get_raped>>face-raping<<else>>throat-fucking<</if>> a mouthy bartender until her face is streaked with tears to make up for some past night out cut short!@@"<br>
<br>
You struggle in your bonds, but they are as tight and inescapable as <<=setup.getNpcName("npc_admin","first")>> is cruel, and all you can do is lay on the couch with your spread legs aimed at the door as <<=setup.getNpcName("npc_admin","first")>> gives you a parting slap on the ass and leaves you for your first customer...<br>
<br>
[<<moveTo "event_secretary_style_prostitution_strict_2" "This is really happening..." 7200 "<<set $scene.restrained=true>>">>]
</div>/*#
#desc: strict prostitution
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<<if $fetish.cum>>
<<applyExperience 'cum' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'whoring' 7 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
A few minutes after <<=setup.getNpcName("npc_admin","first")>> leaves you get your first customer.
<<if $scene.restrained>>
Bound and trussed, you can't even turn to get a good look, merely listening with rising dread as you hear the door open, and then
<<else>>
You look up at the sound of the door, a <<man>> stepping through and looking you over with a leering grin.<br>
<br>
"@@.npc_male;Not bad! You look even better than your pictures... now bend over, slut, I'm here for a good time. Not for a long time.@@"<br>
<br>
You turn over on the couch to present your rear, wiggling it in invitation as you listen the the <<man>> move closer, and
<</if>>
feel hands gripping your hips.<br>
<br>
You are fucked hard and rough, not just by the first client... but by them and a half dozen others. You boggle at how there could be so many people on this app as you don't go longer than ten minutes before a fresh customer is fucking your ass<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>> or pounding your cunt<</if>>.<br>
<br>
Whatever payments are happening are all electronic, as the most you get in reward is a grunt of satisfaction, a congratulatory slap on the ass<<if $fetish.cum>>, or a blast of cum shot across your face<</if>>.<br>
<br>
[<<moveTo "event_secretary_style_prostitution_strict_3" "Continue." 7200>>]
</div>/*#
#desc: strict prostitution unlock
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 500>>
<<if !$player.sec_style.submission.prostitution>>
<<set $player.sec_style.submission.prostitution = "strict">>
<</if>>
<<set $npc_barkeeper.flags.prostitution.can_work_alley = true>>
<<setThreshold 'whoring' 'general_whoring' 'alley_forced'>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Your body battered<<if $fetish.cum>> and battered with cum<</if>>, you almost pass out... not that your clients seem to care all that much. By the time your night comes to an end you're actually grateful for <<=setup.getNpcName("npc_admin","first")>> to <<if $scene.restrained>>remove your restraints and <</if>>toss you into the bed<br> while <<=setup.getNpcName("npc_barkeeper","first")>> looks on.<br>
<br>
"@@.npc_barkeeper;Remember, you work for US, now. For now that means the gloryhole, or you can look for clients to suck off in the alleyway, do well enough at that and more options will open up for you.@@" She states with a sneer, her countenance and tone as cruel as <<=ps(setup.getNpcName("npc_admin","first"))>>, a victim, and now a victimiser, of the company's evil machinations.<br>
<br>
<<set _timeToWork = setup.secondsToDate($now, setup.getTaskDueDate("manager_morning_inspection_task"))-1>>
[<<moveTo 'event_gloryhole_pass_out_4' 'Sleep.' _timeToWork "<<startSleep $player $scene>><<set $scene.startedSleep = true>><<completeTask 'manager_morning_inspection_task' false>>">>]
</div>/*#
#desc: show up for forced prostitution
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You arrive as appointed and, with an evil grin, <<=setup.getNpcName("npc_barkeeper","first")>> leads you into a backroom. There's a bed and a small beauty station for freshening up. From the look of the room, it seems like it was literally designed for this sort of thing. "@@.npc_barkeeper;So this is you, for tonight. Don't get used to it, though — after this cushy debt-resolution you're going to be back to that gloryhole and earn your way up to using these accommodations, but tonight isn't about you finding clients, it's about breaking you by having you serving up those <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>three<<elseif $fetish.sissy>>sissy<<else>>two<</if>> fuck-holes. Now you just settle back in that bed and I'll send clients up, and make sure to show them a good time, 'cause you're going to be working here until we're squared up, and shitty tips means more rounds.@@"<br>
<br>
She leaves, leaving you to look around the room nervously as you anticipate your first client...<br>
<br>
<<set _earlyMorning = setup.setNextDate($now, 1, 2, 30)>>
<<set _timeTo = Math.min(3600, setup.secondsToDate($now,_earlyMorning))>>
[<<moveTo "event_secretary_style_prostitution_forced_first_2" "Time to work off your so-called debt..." _timeTo>>]
</div>/*#
#desc: forced prostitution
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 500>>
<<if !$player.sec_style.submission.prostitution>>
<<set $player.sec_style.submission.prostitution = "forced">>
<</if>>
<<set $npc_barkeeper.flags.prostitution.can_work_alley = true>>
<<setThreshold 'whoring' 'general_whoring' 'alley_forced'>>
<<applyExperience 'oral' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'whoring' 7 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You've barely gotten situated before your first client knocks on the door... and after that your customers all but pass in a blur, as you are sucking, fucking or licking at least one, and usually two "customers" non-stop,<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>all three<<else>>both<</if>> of your holes put to the test as your wrists also get a workout stroking or fingering.
<<if $fetish.piss>>
Hydration comes by way of guzzling the odd mouthful of <<getWordPiss>>,
<<else>>
You have no choice but to keep pushing yourself,
<</if>>
<<if $fetish.cum>>
the closest thing you get to actual relief being when a client decides to merely blast a load across your face, rather than make you choke on it or blast it into one of your already leaking holes.
<<else>>
fucked hard and often until your hips are sore and your throat hoarse.
<</if>>
<br><br>
The bar, itself, is long-closed by the time <<=setup.getNpcName("npc_barkeeper","first")>> reappears, all but tossing you onto the street and into a waiting auto-cab with a parting reminder to "@@.npc_barkeeper;remember, you're MY whore now, so keep on working, but never forget to give me my cut. For now you can keep working gloryhole, or you can look for clients to suck off in the alleyway, do well enough at that and more options will open up for you.@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && !$currentTasks.manager_morning_inspection_task.finished>>
[<<moveTo 'event_gloryhole_pass_out_3' 'Stagger home...' 600>>]
<<else>>
[<<moveTo 'room_foyer' 'Stagger home...' 600>>]
<</if>>
</div>/*#
#desc: work as a prostitute at the bar (blowjobs in the alleyway)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.noconfront && setup.getTotalValue("whoring") >= 15 && !State.hasPlayed("event_prostitution_confrontation_3") && $npc_manager.stage > 3 && $npc_prostitute.flags.alley_confront >= 2>>
<<moveTo "event_prostitution_confrontation_1">>
<<else>>
<<set $scene.clothing_modifier = setup.calcProstitutionModifiers()>>
<<if !$scene.hasOwnProperty('prostitutionClients')>>
<<set _clients = Math.floor(setup.getTotalValue("whoring")/5)+1>>
<<set $scene.prostitutionClients = setup.getProstitutionClients(["alley"], _clients)>>
<</if>>
<<set $scene.clientFeelings = []>>
<</if>>
<</if>>
<<include "isBarOpen">>
<<if !_open>>
<<set $now = setup.setNextDate($now, 0, $now.getUTCHours(), 10)>>
<</if>>
<<set $player.location to "The Usual Place, The Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if !_open>>
The bar is closing up and there are no clients left to attempt to serve.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high">>
You're perhaps a bit drunk to balance in heels... but maybe if you took it slow?<br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<else>>
[<<moveTo "room_usual_place_bathroom" "Visit the bathroom." 30>>]<br>
[@@.link_locked;Hanging out in the bar is one thing, but you aren't going into town like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
You survey the bar looking for clients but fail to attract any particular interest.<br>
<br>
<<printThought "Hmm, guess now just isn't a good time.">><br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high">>
You're perhaps a bit drunk to balance in heels... but maybe if you took it slow?<br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<else>>
[<<moveTo "room_usual_place_bathroom" "Visit the bathroom." 30>>]<br>
[@@.link_locked;Hanging out in the bar is one thing, but you aren't going into town like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
You look down the bar for your next potential client.<br>
<br>
<<include "listProstitutionClients">>
<br><br>
[<<moveTo "room_usual_place_inside" "Stop working the bar." 1>>]
<</if>>
</div>/*#
#desc: introduce yourself to a potential client at the bar, they assess your appearance
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, The Bar">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.coworker_event = !$scene.prostitutionInterrupt && setup.getTotalValue("whoring") >= 7 && $npc_prostitute.flags.alley_confront < 1 ||
setup.getTotalValue("whoring") >= 12 && $npc_prostitute.flags.alley_confront < 2>>
<<if $scene.coworker_event>>
<<set $scene.returnPassage = "event_prostitution_quickie_0">>
<<if $npc_prostitute.flags.alley_confront < 1 || setup.getTotalValue("whoring") < 12>>
<<moveTo "event_prostitute_alley_confront_1">>
<<else>>
<<moveTo "event_prostitute_alley_confront_2">>
<</if>>
<<else>>
<<set $scene.randVal = random(1,10)>>
<<if $scene.randVal == 10>>
<<set $scene.randVal = 20>>
<</if>>
<<set $scene.client = setup.getProstitutionClient($scene.prostitutionClients[$scene.clientIndex].type, $scene.prostitutionClients[$scene.clientIndex].id)>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.client.image_intro>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" $scene.client.image_intro>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if null != $scene.clientFeelings[$scene.clientIndex].dislike>>
Face to face with the prospective client they look at you with disgust.<br>
<br>
They note that your <<=setup.prostitutionLikeToString($scene.clientFeelings[$scene.clientIndex].dislike[0], 'dislike')>><<if $scene.clientFeelings[$scene.clientIndex].dislike.count()>1>>, among other things are <<else>> is <</if>>a major turn off. <<=$scene.client.hint>><br>
<br>
<<if $scne.randVal > ( 20 + $scene.clientFeelings[$scene.clientIndex].dislike.count() - $scene.clothingModifiers.whoring)>>
Despite their initial disinterest you turn things around, drawing out what they're in the market for this evening.<br>
<br>
<<=$scene.client.request>><br>
<br>
[<<moveTo "event_prostitution_quickie_1" "Make your offer." 180 "<<set $scene.style = 'basic'>>">>]<br>
[<<moveTo "event_prostitution_bar" "Change your mind and head back to the bar to look for a different client." 180>>]
<<else>>
You try to change their mind, but are unable to do so and they soon turn away.<br>
<</if>>
<<else>>
Your prospective client looks you over.<br>
<br>
<<if null != $scene.clientFeelings[$scene.clientIndex].like && $scene.clientFeelings[$scene.clientIndex].like.count() == $scene.client.like.count()>>
<<if null != _love>>
<<if $scene.clientFeelings[$scene.clientIndex].like == null>>
<<set _difficultyMod = $scene.client.love.count()>>
<<else>>
<<set _difficultyMod = $scene.clientFeelings[$scene.clientIndex].like.count()+$scene.client.love.count()>>
<</if>>
<<if $scene.clientFeelings[$scene.clientIndex].love.count() == $scene.client.love.count()>>
<<set _difficultyMod += 2>>
"You are utterly perfect, exactly what I was looking for!" They note with excitement.
<<else>>
"You look amazing! practically perfect!" They exclaim.
<</if>>
<<else>>
<<set _difficultyMod = 0>>
"You don't look too bad..." They comment with moderate interest.
<</if>>
<<elseif null != $scene.clientFeelings[$scene.clientIndex].like || null != $scene.clientFeelings[$scene.clientIndex].love>>
<<if $scene.clientFeelings[$scene.clientIndex].like == null>>
<<set _difficultyMod = 0>>
<<else>>
<<set _difficultyMod = $scene.clientFeelings[$scene.clientIndex].like.count() - $scene.client.like.count()>>
<</if>>
<<if null != $scene.clientFeelings[$scene.clientIndex].love>>
<<set _difficultyMod = _difficultyMod + $scene.clientFeelings[$scene.clientIndex].love.count()>>
<</if>>
They subtly nod in approval, seems they like what you've got going on, at least a little.
<<else>>
<<set _difficultyMod = - $scene.client.like.count()>>
They have a fairly neutral expression; while you may not be putting them off your look doesn't seem to be turning them on, either.
<</if>>
<br><br>
<<if $scene.randVal > ( 7 - _difficultyMod - $scene.clothingModifiers.whoring)>>
It looks like you've nailed the "first impression." You ask what they'd like for you to do.<br>
<br>
<<=$scene.client.request>><br>
<br>
It's time for you to try and cinch the job, what approach will you deploy to appeal to them?<br>
<br>
[<<moveTo "event_prostitution_quickie_1" "Proposition them directly." 180 "<<set $scene.style = 'basic'>>">>]<br>
<<if setup.getTotalValue("feminization") > 10>>
[<<moveTo "event_prostitution_quickie_1" "Emphasise your femininity and offer your body." 180 "<<set $scene.style = 'feminization'>>">>]
<<else>>
[@@.link_locked;You are not girly enough to offer your body in a feminine way.@@]
<</if>>
<br>
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo "event_prostitution_quickie_1" "Act submissive and beg them to use you." 180 "<<set $scene.style = 'submission'>>">>]
<<else>>
[@@.link_locked;You are not sufficiently submissive to offer yourself to a stranger.@@]
<</if>>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_prostitution_quickie_1" "Play the mindless bimbo thirsty for sex." 180 "<<set $scene.style = 'bimbofication'>>">>]
<<else>>
[@@.link_locked;You aren't enough of a sex-obsessed bimbo to make an airheaded proposal.@@]
<</if>>
<br>
[<<moveTo "event_prostitution_bar" "Decline them and head back to the bar to look for a different client." 1>>]
<<else>>
Unfortunately it seems like you have failed to entice them, and they turn away with just a short parting glance.<br>
<br>
[<<moveTo "event_prostitution_bar" "Head back to the bar to look for another client." 180>>]
<</if>>
<</if>>
</div>/*#
#desc: make your offer of a quickie to a bar client in your choice of affect, accept or decline offer
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, The Bar">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitutionClients[$scene.clientIndex].visited = true>>
<<set $scene.success = false>>
<<set $scene.challenge = random(8,13)>>
/* rock, paper, scisorsish if your approach doesn't match preference */
<<if $scene.client.style_preference>>
<<if $scene.client.style_preference == $scene.style>>
<<set $scene.stylemod = 1.5>>
<<else>>
<<if $scene.client.style_preference == "basic">>
<<set $scene.stylemod = .9>>
<<elseif $scene.style == "basic">>
<<set $scene.stylemod = .6>>
<<elseif ($scene.client.style_preference == "bimbofication" && $scene.style == "feminization")
|| ($scene.client.style_preference == "feminization" && $scene.style == "submission")
|| ($scene.client.style_preference == "submission" && $scene.style == "bimbofication")>>
<<set $scene.stylemod = .75>>
<<elseif ($scene.style == "bimbofication" && $scene.client.style_preference == "feminization")
|| ($scene.style == "feminization" && $scene.client.style_preference == "submission")
|| ($scene.style == "submission" && $scene.client.style_preference == "bimbofication")>>
<<set $scene.stylemod = .5>>
<<else>>
ERROR, unexpected pairing of client.style_preference and style: ( <<=$scene.client.style_preference>>, <<=$scene.style>> )
<</if>>
<</if>>
<<else>>
<<set $scene.stylemod = 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.client.image_scene>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" $scene.client.image_scene>>
<<elseif $scene.client.image_intro>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" $scene.client.image_intro>>
<<elseif $scene.client.image_char>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage($scene.client.image_char[0],$scene.client.image_char[1])>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.style == 'basic'>>
Not adopting any particular affectation you give a straightforward proposition to your intended client.<br>
<br>
<<if setup.getTotalValue('whoring')*$scene.stylemod > $scene.challenge>>
<<set $scene.success = true>>
<<if $scene.client.style_preference == "basic">>
Your chosen client seems to like this "direct" approach; after
<<else>>
Your look, and your skills as a prostitute, carry the day. After
<</if>>
a brief negotiation you are leading your client out to the alleyway.
<<else>>
<<if $scene.client.style_preference == "basic">>
The client seems to appreciate your straightforward approach, even if they just as straightforwardly turn you down.
<<else>>
Your lack of tact sinks your chances, the prospective client declining your offer and moving away.
<</if>>
<</if>>
<<else>>
<<switch $scene.style>>
<<case "bimbofication">>
Fluttering your eyes and licking your lips you ask if the prospective client has an idea of how you could put your mouth to a better use...
<<case "feminization">>
Posing to best show off your feminine "assets" you ask, if they like what they see, if you could "help them out" with anything...
<<case "submission">>
You adopt a submissive posture and ask the prospective client if there is any way you could be of service...
<<default>>
ERROR, unknown style <<=$scene.style>>
<</switch>>
<br><br>
<<if $scene.style == $scene.client.style_preference && ($scene.stylemod*setup.getTotalValue($scene.style)) > $scene.challenge>>
<<set $scene.success = true>>
It looks like you nailed it on the first try, the combination of your looks and approach appealing to the client. You lead them towards the back door out of The Usual Place.
<<else>>
<<if ($scene.stylemod*setup.getTotalValue($scene.style) + setup.getTotalValue('whoring')) > $scene.challenge>>
<<set $scene.success = true>>
Your first proposal may not have hit the mark, but your skill as a whore makes up for it and a short negotiation soon has your new client following you towards the back door of The Usual Place.
<<else>>
You botched the approach and are unable to recover, the prospective client turning away from you.
<</if>>
<<if !$scene.success>>
<br><br>
<<if $scene.style == $scene.client.style_preference>>
<<printThought "I think I had the right style... just not the skill to pull it off.">>
<<else>>
<<switch $scene.client.style_preference>>
<<case "bimbofication">>
<<printThought "Perhaps a more sex-crazed bimbo approach would have worked better...">>
<<case "feminization">>
<<printThought "Perhaps emphasising my femininity would have worked better...">>
<<case "submission">>
<<printThought "Perhaps a more submissive approach would have worked better...">>
<<case "basic">>
<<printThought "Maybe I'm over-complicating things and a more basic approach would have worked better...">>
<<default>>
ERROR, unknown style <<=$scene.style>>
<</switch>>
<</if>>
<</if>>
<</if>>
<</if>>
<br><br>
<<if $scene.success>>
<<set $npc_barkeeper.flags.prostitution.clients.alley[$scene.prostitutionClients[$scene.clientIndex].id] = true>>
[<<moveTo "event_prostitution_quickie_2" "Head to the alleyway and get to work." 1800>>]<br>
[<<moveTo "event_prostitution_bar" "Decline and look for another client." 180>>]
<<else>>
[<<moveTo "event_prostitution_bar" "Look for another potential client." 180>>]
<</if>>
</div>/*#
#desc: get dirty from successfully working as a prostitute at the bar
#status: FINISHED 0.8.1.0
#*/
Despite your skills there is no way to avoid getting a bit messy in the process of servicing your client. Checking your clothes is appears that you are now sporting a few fresh stains of
<<for _i=1; _i < $scene.client.dirty_success.count(); _i++>>
<<if $scene.client.dirty_success[_i].type != 'makeup'>>
<<set _ammt = '["add",' + $scene.client.dirty_success[_i].ammt + "]">>
<<alterStatAllWorn $scene.client.dirty_success[_i].type _ammt>>
<<else>>
<<changeMakeupMessed $scene.client.dirty_success[_i].ammt>>
<<set _makeup = $scene.client.dirty_success[_i].ammt>>
<</if>>
<</for>>
<<if $scene.client.dirty_success.count() > 1>>
and
<</if>> <<=$scene.client.dirty_success[0].type>>.
<br><br>
<<if $player.makeup.template != "" && $player.makeup.messed > 0>>
In addition your makeup has been mussed, now appearing
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
a bit dinged up, but overall okay.
<<case 2>>
pretty dinged up.
<<case 3>>
mostly ruined.
<<case 4>>
all but totally destroyed.
<</switch>>
<</if>>/*#
#desc: get dirty from failing at working as a prostitute at the bar
#status: FINISHED 0.8.1.0
#*/
The combination of lack of skill and the filthy acts you are performing leave your clothes a bit of a mess. Checking yourself it seems you are now sporting a few fresh stains of
<<for _i=1; _i < $scene.client.dirty_fail.count(); _i++>>
<<if $scene.client.dirty_fail[_i].type != 'makeup'>>
<<set _ammt = '["add",' + $scene.client.dirty_fail[_i].ammt + "]">>
<<alterStatAllWorn $scene.client.dirty_fail[_i].type _ammt>>
<<else>>
<<changeMakeupMessed $scene.client.dirty_success[_i].ammt>>
<<set _makeup = $scene.client.dirty_fail[_i].ammt>>
<</if>>
<</for>>
<<if $scene.client.dirty_fail.count() > 1>>
and
<</if>> <<=$scene.client.dirty_fail[0].type>>.
<br><br>
<<if $player.makeup.template != "" && $player.makeup.messed > 0>>
In addition your makeup has been mussed, now appearing
<<switch Math.min(4,Math.round($player.makeup.messed/25))>>
<<case 0 1>>
a bit dinged up, but overall okay.
<<case 2>>
pretty dinged up.
<<case 3>>
mostly ruined.
<<case 4>>
all but totally destroyed.
<</switch>>
<</if>>/*#
#desc: give bar client a quickie
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "Alleyway Behind The Usual Place">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.whoring_level = setup.getTotalValue("whoring")>>
<<if $scene.clientFeelings[$scene.clientIndex].likes != null>>
<<set $scene.whoring_level += $scene.clientFeelings[$scene.clientIndex].likes.count()>>
<</if>>
<<if $scene.clientFeelings[$scene.clientIndex].loves != null>>
<<set $scene.whoring_level += 2*$scene.clientFeelings[$scene.clientIndex].loves.count()>>
<</if>>
<<if $scene.client.dislike != null>>
<<set $scene.whoring_level += $scene.client.dislike.count()>>
<</if>>
<<if $scene.clientFeelings[$scene.clientIndex].dislike != null>>
<<set $scene.whoring_level -= $scene.clientFeelings[$scene.clientIndex].dislike.count()>>
<</if>>
<<set $scene.whoring_level = Math.min(20, $scene.whoring_level)>>
<<if setup.getTotalValue($scene.client.skill.name) >= $scene.client.skill.value>>
<<set $scene.success = true>>
<<set $scene.pay = 20+Math.ceil($scene.client.base_pay * (1 + ($scene.client.skill.value + $scene.whoring_level)*.05))>>
<<applyExperience $scene.client.skill.name $scene.client.skill.value 'normal' $EXPOSED>>
<<applyExperience 'whoring' $scene.whoring_level 'very' $EXPOSED>>
<<else>>
<<set $scene.success = false>>
<<set $scene.pay = 10>>
<<applyExperience $scene.client.skill.name $scene.client.skill.value 'very' $EXPOSED>>
<<applyExperience 'whoring' $scene.whoring_level 'normal' $EXPOSED>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.client.image_scene>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" $scene.client.image_scene>>
<<elseif $scene.client.image_intro>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" $scene.client.image_intro>>
<<elseif $scene.client.image_char>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage($scene.client.image_char[0],$scene.client.image_char[1])>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
<<=$scene.client.scene_success>>
<br><br>
<<if $scene.client.dirty_success>>
<<include "prostitute_mess_success">>
<<else>>
Thanks to your skills, you are able to do the job without getting dirty in the slightest, your clothes and face as well-groomed at the finish as they were when you began.
<</if>>
<br><br>
Job done you pocket your <<=$scene.pay>> credits, taking a moment to stow your money as the client walks away looking quite satisfied.
<<else>>
<<=$scene.client.scene_fail>>
<br><br>
<<if $scene.client.dirty_fail>>
<<include prostitute_mess_fail>>
<<else>>
Despite your lack of skill you at least didn't mess up your clothes, finishing the "job" without getting any dirtier, well, PHYSICALLY dirtier, than you were at the start.
<</if>>
<br><br>
Job done you pocket your <<=$scene.pay>> credits, the pitiful offering and the look of disappointment on your client's face as they walk away a reminder that your skills were not up to snuff.
<</if>>
<br><br>
[<<moveTo "event_prostitution_bar_pay" "Head back inside The Usual Place." 180>>]
</div>/*#
#desc: get paid for giving bar client a quickie
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, The Bar">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.her_cut = Math.floor($npc_barkeeper.flags.prostitution.her_cut * $scene.pay)>>
<<set $npc_barkeeper.flags.prostitution.money_earned += $scene.her_cut>>
<<addCredits `-($scene.her_cut)`>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
Coming back in through the alleyway door you find <<=setup.getNpcName('npc_barkeeper', 'first')>> waiting for you at that end of the bar.<br>
<br>
You place her cut of <<=$scene.her_cut>> <<if $scene.her_cut > 1>>credits<<else>>credit<</if>> on the edge of the bar and she smoothly scoops it up with a smile and a wink.<br>
<br>
[<<moveTo "event_prostitution_bar" "Look for another client." 3600>>]<br>
[<<moveTo "room_usual_place_inside" "Stop prostituting yourself for the evening." 60>>]
</div>/*#
#desc: npc_prostitute swoops in to steal client
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, The Bar">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitutionInterrupt=true>>
<<set $npc_prostitute.flags.alley_confront = 1>>
<<set $scene.prostitutionClients[$scene.clientIndex].visited = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You're approaching a prospective client when another woman swoops in, seemingly from out of nowhere.<br>
<br>
Cranking up the charm she has the client's attention almost immediately, leading them off with a final smug glance back at you that tells you she knew exactly what she was doing.<br>
<br>
<<printThought "Looks like I have a rival... <<=setup.getNpcName('npc_barkeeper','first')>> did mention she had other employees...">><br>
<br>
[<<moveTo "event_prostitution_bar" "Look for another client." 3600>>]<br>
[<<moveTo "room_usual_place_inside" "Stop prostituting yourself for the evening." 60>>]
</div>/*#
#desc: npc_prostitute tries to approach client but you win out
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, The Bar">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitutionInterrupt=true>>
<<set $npc_prostitute.flags.alley_confront = 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You spot your coworker "competition" heading straight for your same client, but this time you're ready for it, flashing a come-hither look that pulls the client's attention towards you as you sidle up to make your offer.<br>
<br>
Out of the corner of your eye you spot your competition storm away in annoyance.<br>
<br>
<<printThought "Hmm, that same other prostitute... I don't think she likes me.">><br>
<br>
[<<moveTo $scene.returnPassage "Back to the job at hand..." 60>>]
</div>/*#
#desc: barkeeper offers opportunity job selling your ass
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_barkeeper', 'first')>> what's up and she pulls you aside to explain.<br>
<br>
<<if $npc_barkeeper.flags.prostitution.bailed_anal>>
"@@.npc_barkeeper;It happened again — we're over booked and I've got a client looking to fuck some ass and no girls on deck! Do you think you can handle it? If you can't, just tell me now, I don't want a repeat of last time...@@"
<<elseif State.hasPlayed("event_prostitution_event_prostitution_anal_1_no")>>
"@@.npc_barkeeper;It happened again — I've got more horny cocks than I've got asses available to stick them in! So, whaddaya say, you finally ready to rent out that cute tush?@@"
<<else>>
"@@.npc_barkeeper;Well, you see, tonight's been rather crazy and my other girls are kind of... backed up. I've got one of their regular's in all horny for a bit of ass and no hole available for <<him>> to use! You've been putting in such good work sucking <<guy>>s off... I don't supposed you'd be up for stepping in... or bending over as the case may be? Do well and this could open up similar opportunities in the future.@@"
<</if>>
<br><br>
[<<moveTo "event_prostitution_event_prostitution_anal_1_yes" "Agree to sell your ass." 180>>]<br>
[<<moveTo "event_prostitution_event_prostitution_anal_1_no" "Decline her offer." 60>>]
</div>/*#
#desc: agree to sell your ass
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'whoring' 'general_whoring' 'working_girl'>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_15'
15
'event_psychiatrist_session_prostitution_anal_1'
false
>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barkeeper', 'first')>> eyes light up at your response.<br>
<br>
"@@.npc_barkeeper;Oh you really are a saviour! Bailing out my ass with yours!@@"<br>
<br>
She laughs at the little joke then turns serious.<br>
<br>
"@@.npc_barkeeper;So I'll let the <<if $options.fem>>gal<<else>>fella<</if>> know you're ready — there's a private room in the back with a cot that the girls use for entertaining clients, you can head on in there and get situated and I'll send <<him>> right in!@@"<br>
<br>
You turn to go and she grabs your arm for a final comment.<br>
<br>
"@@.npc_barkeeper;Again, thanks for this, and trust me when I say this <<guy>> is a real sweetie, wouldn't want your first job to be TOO intense. And I do mean first — nail this... or get nailed, I suppose, and there'll be more work like this available in your future.@@"<br>
<br>
[<<moveTo "event_prostitution_event_prostitution_anal_2" "Head to the private room." 600>>]
</div>/*#
#desc: decline barkeeper offer to sell your ass
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barkeeper', 'first')>> looks disappointed, but nods.<br>
<br>
"@@.npc_barkeeper;No, I get it. Sucking a few cocks is one thing, but taking it up the pooper is... well, it's a different level. Don't worry about it, I'll figure something out, you can just go on and keep doing your thing, I won't pressure you to go any further than you're comfortable with.@@"<br>
<br>
You thank her for being understanding.<br>
<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60>>]
</div>/*#
#desc: goto room and await client for first anal whoring
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
Heading into the private room you find it sparse, but clean. A sturdy bed takes up most of the room with a small cabinet stocked with various supplies next to the door.<br>
<br>
Opening it up you find it filled with single-use packages of lube, towels and condoms. Of course since medical science finished curing all STDs condoms aren't as necessary as they once were, but some people still prefer the feel, especially the fancy ribbed ones.<<if !$player.virgin.anal>> At least, that's what you've heard, you don't exactly have experience in such matters.<</if>><br>
<br>
You hear a knock on the door and quickly close up the cabinet.<br>
<br>
<<printThought "That must be my client... am I really going to do this?">><br>
<br>
[<<moveTo "event_prostitution_event_prostitution_anal_3_yes" "Welcome in your client." 1800>>]<br>
[<<moveTo "event_prostitution_event_prostitution_anal_3_no" "Change your mind and flee." 300>>]
</div>/*#
#desc: welcome your first anal client
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageGeneric("firstanalclient")>>
<div id="invframe" class="scrolltext">
You take a deep breath and walk over to the door, your heart racing as your hand grasps the doorknob.<br>
<br>
<<if $player.virgin.first == "" && !$player.virgin.anal && !($fetish.pegging_is_anal && $player.virgin.pegged)>>
<<printThought "Is this really happening, my first time having sex is with a <<man>>... for money?">>
<<elseif !$player.virgin.anal>>
<<printThought "Am I really going to do this? Let a <<man>> do me in the butt... for money?">>
<<else>>
<<printThought "This is really happening... I'm about to sell my ass...">>
<</if>>
<br><br>
Opening the door reveals a normal-looking <<guy>>. Dressed in <<if $options.fem>>a blouse and a long skirt<<else>>a collared shirt and slacks<</if>> <<he>> doesn't look all that different than <<if $options.fem>>your coworkers<<else>>you did<</if>> way back when you still worked at Cloud Data Service, before your whole life started to change...<br>
<br>
You try to put those thoughts aside, your life is different now, that's all there is to it, just a few... well, more like a steadily piling up stream, changes since you switched jobs.<br>
<br>
<<printThought "Changes, like instead of bending over a keyboard to fix some code I'm about to be bent over...">><br>
<br>
You must have stood there for a while because <<he>> coughs to break the silence.<br>
<br>
"@@.generic_male1;So, uh... I take it you're the new <<if $player.identify_as == "male">>guy<<else>>girl<</if>>?@@"<br>
<br>
You nod, on autopilot as you lead <<him>> into the room and close the door.<br>
<br>
With obvious familiarity <<he>> grabs a packet of lube out of the cabinet and starts <<if $options.fem>>unfastening her skirt<<else>>unbuttoning his pants<</if>>.<br>
<br>
"@@.generic_male1;Whatever position you prefer, I don't mean to rush things but... well seeing you, and that hot ass of yours, has me feeling even harder than I was before!@@"<br>
<br>
You blush a little at the compliment and move over to the bed.<br>
<br>
<<printThought "It's almost time...">><br>
<br>
[<<moveTo "event_prostitution_event_prostitution_anal_4" "Bend over..." 300>>]
</div>/*#
#desc: decide not to sell your ass the first time
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.bailed_anal = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
Changing your mind, you throw open the door and run out, barely catching a glimpse of the <<guy>> you were about to sell your ass to as you run past. Back in the main room of the bar <<=setup.getNpcName('npc_barkeeper', 'first')>> catches sight of you and rushes over.<br>
<br>
"@@.npc_barkeeper;Is something the matter? Did <<he>> do anything? If <<he>> laid a hand on you...@@"<br>
<br>
You quickly assure her that it was nothing like that, before explaining that you're sorry, but you just can't do this.<br>
<br>
She sighs, obviously disappointed with you, but she quickly adopts a more friendly expression.<br>
<br>
"@@.npc_barkeeper;That's alright, I guess I pressured you a bit on this and well... it is a bit of a large ask... even if <<hes>> only average size. Go ahead and run along home, I'll take care of it.@@"<br>
<br>
Giving you a comforting hug she signals an assistant barkeeper to take over, taking a deep breath and heading towards the private room.<br>
<br>
<<printThought "Oh shit, is she...?">><br>
<br>
You feel a bit bad that your cowardice now has her ass on the line, but it's too late now.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: foreplay of first anal client
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<if $scene.plugID != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.removePlug = true>>
<<removeItem $scene.plugID true>>
<</if>>
<<applyExperience 'anal' 3 'little' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageGeneric("firstanalclient")>>
<div id="invframe" class="scrolltext">
Bending over the bed you try to stay calm as the <<man>> moves in behind you. Gently <<his>> fingers trace down your back before pulling at your clothes until your ass is exposed.<br>
<br>
<<if $scene.plugID != "">>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
<<He>> whistles softly as <<he>> finds your plug-gaped hole.<br>
<br>
"@@.generic_male1;Damn, I've never fucked a girl with one of these... I guess you must really be some sort of anal size queen!@@"
<<else>>
Finding the <<=setup.getItemName($scene.plugID)>>, <<he>> gives it a little wiggle before grabbing it by the base.<br>
<br>
"@@.generic_male1;Heh, getting prepared? Relax now, I don't think I can get in with this in the way!@@"<br>
<br>
Giving a gentle pull <<he>> removes your plug with a pop, placing it to one side as your ass gapes and slowly closes.
<</if>>
<br><br>
<</if>>
<<if setup.getItemTypeName("cage") == "">>
Unconcerned by your <<if $player.body_ref.penis && $player.body_ref.vagina>><<getWordMyPenis>> or <<getWordVagina>><<elseif $player.body_ref.penis>><<getWordMyPenis>> dangling below<<else>>wet <<getWordVagina>> centimetres away<</if>> <<he>> goes straight for your ass, pouring a bit of lube onto your puckered hole and rubbing it around with <<his>> fingers.
<<else>>
Noting your <<if setup.isCage()>><<getWordMyPenis>> dangling below<<else>>chastity belt<</if>>, <<he>> gives it a gentle <<if setup.isCage()>>squeeze<<else>>pat<</if>>.<br>
<br>
"@@.generic_male1;All locked and safe, I guess you are nice and prepared for this...@@"
<br>
Releasing <<his>> grasp on your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>chastity<</if>> <<he>> pours some lube onto your rear hole, rubbing it around with <<his>> fingers.
<</if>>
<br><br>
The lube is cool and you try to relax as one of <<his>> fingers slips into your rear and <<he>> squirts a bit more inside.<br>
<br>
<<His>> hands withdraw for a moment and you hear <<him>> dispense some more lube, it's just enough time for you to put together what's happening and then you feel it — the head of <<his>> cock pressed against your slippery hole...<br>
<br>
[<<moveTo "event_prostitution_event_prostitution_anal_5" "Relax..." 600>>]
</div>/*#
#desc: first anal prostitution client fucks you
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstAnal = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.sec_style.sex.sex_man && !$options.fem>>
<<set $player.sec_style.sex.sex_man = "money">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $options.fem>>
<<set $player.sec_style.sex.sex_woman = "money">>
<</if>>
<<set $scene.firstAnal = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if $scene.firstAnal>>
<<set $player.virgin.anal = "npc_prostitution_client">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "money">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $options.fem>>
<<set $player.sec_style.sex.sex_woman = "money">>
<<elseif !$player.sec_style.sex.sex_man && !$options.fem>>
<<set $player.sec_style.sex.sex_man = "money">>
<</if>>
<<if setup.getTotalValue("anal") < 10>>
<<playerOrgasm>>
<</if>>
<<applyExperience 'anal' 6 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageGeneric("firstanalclient")>>
<div id="invframe" class="scrolltext">
<<if $scene.firstAnal>>
It's finally happening. The <<mans>> hands on your hips <<he>> gently pushes forward until the tip of <<his>> cock slides into your slippery hole. You moan, <<if setup.getTotalValue("anal") > 1>>sure you may have had other things "up there," but this... this is different<<else>>you've never had anything "up there" and the feeling of <<his>> cock penetrating you is intense almost beyond belief<</if>>.
<<elseif setup.getTotalValue("anal") < 10>>
It's happening. It may not be the first time you've bottomed for a <<man>>, but the fact that you're doing it for pay... somehow it feels like your first time all over again...
<<else>>
You feel like you should have some emotional reaction to this... to literally selling your ass, but you're so experienced "back there" that it just feels like another day at the office...
<</if>>
<br><br>
<<if setup.getTotalValue("anal") < 10>>
You gasp at the feeling of <<his>> cock inside you. Faced away from <<him>> you hadn't actually see it, but it feels <<if setup.getTotalValue("anal") < 5>>big — really big<<elseif setup.getTotalValue("anal") > 10>>average, in other words, small and disappointing for your trained rear<<else>>about average<</if>>.<br>
<br>
"@@.generic_male1;You okay?@@" <<He>> asks gently, pausing with "just the tip" inside of you.<br>
<br>
You nod, panting as you press your face into a pillow.<br>
<br>
"@@.generic_male1;Alright, because you feel really tight... not that I'm complaining, but I haven't been in an ass this snug since the last time I deflowered someone!@@"<br>
<br>
<<He>> laughs <<if $scene.firstAnal>>unknowingly<</if>> at the absurdity of a virgin whore before resuming sliding into your ass.<br>
<br>
<<if !$scene.firstAnal>>
Despite your experience taking it up the ass this time feels remarkably like your first, the fact that you're doing this explicitly for pay somehow heightening your sensitivity.
<<elseif $player.virgin.pegged>>
You thought this would be similar to being pegged, but, though <<he>> feels a bit smaller than your manager did, it is quite different. Warm and with the slight pliability of flesh <<his>> cock sliding into you is a completely new sensation.
<<elseif $player.flags.masturbation.dildo || $player.flags.masturbation.horsecock || $player.flags.masturbation.dogcock>>
Sure you've fucked something penis-shaped, but you realise now that it doesn't come close to comparing to the warm fleshyness of the real thing.
<<else>>
A cock in your ass is like nothing you've ever felt. Surprisingly warm <<his>> fleshy member spreads you and introduces you to novel sensations that you never before imagined.
<</if>>
<br><br>
You feel <<his>> hips touch yours and then <<he>> slides back, refreshing the lube before moving in, easier this time. Your heart pounds in your chest at the intensity of the sensation, doing your best to relax as you adjust to the feeling of <<his>> cock moving inside of you; a tight, intense pressure that is starting to feel... good?<br>
<br>
Angling slightly <<he>> <<if $player.body_ref.penis>>finds your prostate<<else>>probes your bum<</if>>, explosions of pleasure bursting near your loins as <<his>> cock-head rubs your insides. You let out a moan that only encourages <<him>> to move faster, fucking your ass as you pant and gasp, <<his>> force pressing you into the bed.<br>
<br>
Grunting with effort <<he>> fucks you for several increasingly pleasurable minutes until, with a final thrust <<he>> buries <<himself>> inside of your and cums. Even amidst the copious lube you can feel <<his>> cum spurt into your bowels, filling you with a creamy centre as you shudder with a dry analgasm of your own.<br>
<br>
<<He>> pulls free after a few moments and you wilt onto the bed, finally rolling over to look up at <<him>> as <<he>> wipes off <<his>> cock and pulls up <<his>> <<if $options.fem>>skirt<<else>>pants<</if>>.<br>
<br>
"@@.generic_male1;Was it good for you?@@" <<He>> asks, though <<if $player.body_ref.penis>>the way your <<getWordMyPenis>> is twitching in post-orgasmic joy<<else>>the dumb, satisfied look on your face<</if>> is answer enough.<br>
<br>
You nod, unable to muster the energy to speak as <<he>> finishes cleaning up and places a stack of credits on the nightstand.<br>
<br>
"@@.generic_male1;It was good for me too, next time I'm in I may just ask for you directly... because damn, you have a tight, hot little hole back there!@@"<br>
<br>
You lay there blushing,
<<else>>
Remembering that you're "on the clock" you start moaning, talking about how big <<he>> feels inside of you... even though you could easily handle <<if setup.getTotalValue("anal") < 15>>something twice <<his>> size<<else>>being penetrated by something several times <<his>> size<</if>>.<br>
<br>
"@@.generic_male1;Goddamn, it's like you're swallowing me up! Not that I'm complaining, this ass feels even better than it looks!@@" <<He>> gives you a quick slap that sends your ample bottom jiggling as it echoes through the room. "@@.generic_male1;And your ass looks damn fine!@@"<br>
<br>
You rock your hips, totally focused on serving your client like a good <<if $fetish.sissy>>sissy <</if>>whore. You reflect on the inevitability of this moment and the even more certain fact that you're sure to be back like this; getting fucked for money, again and again...<br>
<br>
Distracted by your own thoughts you almost don't notice <<him>> cumming, <<his>> grunt of approval turning your attention back to the present as <<he>> holds you tight and then slowly steps away. You roll over and smile up at <<him>>,
<</if>>
<<if $scene.removePlug>>
sliding the <<=setup.getItemName($scene.plugID)>> back in as you feel <<his>> spooge starting to leak out.
<<else>>
eventually pushing yourself back to your feet and wiping yourself up before <<his>> spooge can leak out and stain anything.
<</if>>
Putting your clothes back on, you grab your pay and, with a somewhat stunned sigh, reach for the door.<br>
<br>
[<<moveTo "event_prostitution_event_prostitution_anal_6" "Leave the room." 300 "<<if $scene.removePlug>><<wearItem $scene.plugID true>><</if>>">>]
</div>/*#
#desc: barkeeper thanks you for your first anal job, unlocks working the bar floor
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.can_work_floor = true>>
<<set $scene.first_anal_pay = 100>>
<<addCredits $scene.first_anal_pay>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
Opening the door, you almost crash into <<=setup.getNpcName('npc_barkeeper', 'first')>>.<br>
<br>
"@@.npc_barkeeper;Oh, good, you're up! I just got finished talking to your client and, well... talk about a rave review! I know this was just you stepping up in an emergency, but going forward well... feel free to work the floor if you want to sell that ass some more, I have a feeling you won't be short of buyers!@@"<br>
<br>
You thank her and start to divvy up your pay only for her to push it back.<br>
<br>
"@@.npc_barkeeper;Nah, this time you can keep it all, my thanks for bailing me out of a bind.@@"<br>
<br>
You thank her again, pocketing the <<=$scene.first_anal_pay>> credits.<br>
<br>
<<printThought "Wow, all that for just a few minutes work? Maybe I should sell my ass more often...">><br>
<br>
"@@.npc_barkeeper;Don't worry about the room,@@" she states, closing the door and walking you back towards the bar. "@@.npc_barkeeper;There's a robotic auto-wash cycle that takes care of everything when it detects it's unoccupied.@@"<br>
<br>
Back in the bar you stagger slightly as a feeling of exhaustion suddenly comes over you.<br>
<br>
"@@.npc_barkeeper;Woah, you alright? You're looking a bit pale. I guess <<he>> wasn't the only one who had a good time?@@" She chuckles, "@@.npc_barkeeper;Go ahead and head home, you've done enough work for one night.@@"<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: work as a prostitute on the main floor of the bar (full sex)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.noconfront && setup.getTotalValue("whoring") >= 15 && !State.hasPlayed("event_prostitution_confrontation_3") && $npc_manager.stage > 3 && $npc_prostitute.flags.alley_confront >= 2>>
<<moveTo "event_prostitution_confrontation_1">>
<</if>>
<<set $scene.clothing_modifier = setup.calcProstitutionModifiers()>>
<<if !$scene.hasOwnProperty('prostitutionClients')>>
<<set _clients = Math.floor(setup.getTotalValue("whoring")/5)+1>>
<<set $scene.prostitutionClients = setup.getProstitutionClients(["alley","floor"], _clients)>>
<</if>>
<<set $scene.clientFeelings = []>>
<<set $scene.randVal = random(1,20)>>
<</if>>
<<include "isBarOpen">>
<<if !_open>>
<<set $now = setup.setNextDate($now, 0, $now.getUTCHours(), 10)>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if !_open>>
The bar is closing up and there are no clients left to attempt to serve.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high">>
You're perhaps a bit drunk to balance in heels... but maybe if you took it slow?<br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<else>>
[<<moveTo "room_usual_place_bathroom" "Visit the bathroom." 30>>]<br>
[@@.link_locked;Hanging out in the bar is one thing, but you aren't going into town like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
You wander around The Usual Place looking for clients but fail to attract any particular interest.<br>
<br>
<<printThought "Hmm, guess now just isn't a good time.">><br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high">>
You're perhaps a bit drunk to balance in heels... but maybe if you took it slow?<br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<else>>
[<<moveTo "room_usual_place_bathroom" "Visit the bathroom." 30>>]<br>
[@@.link_locked;Hanging out in the bar is one thing, but you aren't going into town like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
You wander around The Usual Place looking for clients.<br>
<br>
<<if $scene.clothing_modifier.physicalFemale >= 60 && $scene.clothing_modifier.clothingFemale >= 75 && $player.body_ref.penis && !$scene.sizeQueen && $player.body_ref.penis && (($scene.randVal == 1 || $scene.randVal < $player.body.penissize[0] && !$npc_barkeeper.flags.prostitution.clients.floor.size_queen) || random(1,50) == 1)>>
<<if setup.getItemTypeName("cage") != "" && !setup.isCage()>>
You're moving through the bar, scoping out possible clients when you feel something press against your crotch. Stopping mid-stride you look down, then up as you trace the feminine arm from the hand up to her face where she is frowning.<br>
<br>
"@@.generic_female1;Hmm, chastity belt? More's the pity, ah well. I thought you looked interesting, but it would seem you are of no use to me this evening.@@"<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<else>>
You're moving through the bar, scoping out possible clients when you feel something grab your crotch. Stopping mid-stride you look down, then up as you trace the feminine arm from the hand tightly clutching your package up to the sexy body and
<<if setup.getItemTypeName("cage") == "">>
<<switch $player.body.penissize[0]>>
<<case 6>>
the shocked face attached.<br>
<br>
"@@.generic_female1;Fuck, is this real? I like 'em big, but you... you're monstrous! I need you, in me, NOW!@@"<br>
<br>
Hand still gripping your package you don't have much choice, but to follow as she turns...<br>
<br>
[<<moveTo "event_prostitute_size_queen_1" "Follow along." 600 "<<set $scene.style='sub'>><<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "event_prostitute_size_queen_flee" "Ignore the pain and fight free." 180 "<<set $scene.sizeQueen=true>>">>]
<<case 4 5>>
the gleefully grinning face attached.<br>
<br>
"@@.generic_female1;Oh aren't you hiding a happy package! Fuck, there's nothing better than a <<if $fetish.sissy>>sissy trap<<else>>sexy girl<</if>> with a nice thick cock. I need you inside of me, now!@@"<br>
<br>
Hand still gripping your package you don't have much choice, but to follow as she turns...<br>
<br>
[<<moveTo "event_prostitute_size_queen_1" "Follow along." 600 "<<set $scene.style='sub'>><<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "event_prostitute_size_queen_flee" "Ignore the pain and fight free." 180 "<<set $scene.sizeQueen=true>>">>]
<<case 3>>
the disappointed face attached.<br>
<br>
"@@.generic_female1;Hmmf, normal size? disappointing, for everyone. I mean, I know most think a <<if $fetish.sissy>>sissy<<else>>girl<</if>> should have a <<if $fetish.sph>>tiny caged dicklet, if they have one at all but<<else>>should be demure and in chastity<</if>> I prefer a <<if $fetish.sissy>>sissy<<else>>girl<</if>> with a nice big cock, but you're a disappointment there, I suppose? Too bad, now where's that other girl...@@"<br>
<br>
Releasing her grip the woman slips through the crowd before you can process what has just happened or plan a reaction.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<case 2>>
the miffed face attached.<br>
<br>
"@@.generic_female1;A bit undersized... too bad, I was hoping for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> with a nice big cock, but I guess I need to keep looking for the other one.@@"<br>
<br>
Releasing her grip she slips into the crowd before you can recover or react.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<case 1>>
the amused face attached.<br>
<br>
"@@.generic_female1;Hehe, so cute and tiny! I bet your Mistress loves it, but me... I like my <<if $fetish.sissy>>sissies<<else>>girls<</if>> hung like bulls! Oh well, I guess that means I need to find the other one...@@"<br>
<br>
Releasing her grip she slips into the crowd before you can recover or react.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<case 0>>
the puzzled face attached. She gropes around for a moment, grabbing nothing but your night smooth crotch.<br>
<br>
"@@.generic_female1;Huh, I would have sworn you were a <<if $fetish.sissy>>sissy trap<<else>>sexy, swinging girl<</if>>, or maybe you only used to be? Oh well, you're of no interest to me now either way, I like my <<if $fetish.sissy>>sissies<<else>>girls<</if>> hung like horses.@@"<br>
<br>
Releasing her hold on your crotch she slips into the crowd before you can come up with a retort.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<default>>
ERROR! Unexpected penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
<<switch $player.body.penissize[0]>>
<<case 6>>
a face that races from shocked excitement to crushed disappointment in the space of a few moments.<br>
<br>
"@@.generic_female1;Fuck, you're glorious but... this is a chastity <<if setup.isCage()>>cage<<else>>belt<</if>>, isn't it? Damn, I mean, I get it, a treasure like this probably needs to be locked up... hell, it belongs in a museum... well, it BELONGS in my pussy, but also a museum.@@"<br>
<br>
She sighs. "@@.generic_female1;Oh well, I wish your Mistress luck and maybe she'll let you loose for the next time I come prowling! Oh, but I would love that...@@"<br>
<br>
Releasing her grasp on your junk she disappears into the crowd before you can even react.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<case 4 5>>
a face that runs from delight to disappointment in the span of a few moments.<br>
<br>
"@@.generic_female1;Damn, even accounting for the <<if setup.isCage()>>cage<<else>>chastity belt<</if>> you feel nice and big, if only I'd found you before your Mistress locked you up, oh how good you would have felt...@@"<br>
<br>
Releasing her grasp on your junk she disappears into the crowd before you can even react.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<case 3>>
the mildly disappointed face attached.<br>
<br>
"@@.generic_female1;Damn, I thought you looked too good to be true, I bet you're barely average inside that <<if setup.isCage()>>cage<<else>>chastity belt<</if>>? Ah well, not my type either way, bye!@@"<br>
<br>
Releasing her grasp on your junk she disappears into the crowd before you can even react.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<case 2 1>>
the amused face attached.<br>
<br>
"@@.generic_female1;Aww, you poor thing, all small and cramped inside your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>... I know some would say this is how a <<if $fetish.sissy>>sissy<<else>>girl<</if>> should be, but damn do I wish more of you cuties had nice big cocks for me to jump on!@@"<br>
<br>
Releasing her grasp on your junk she disappears into the crowd before you can even react.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<case 0>>
the perplexed face attached.<br>
<br>
"@@.generic_female1;Huh, I thought I saw a bulge, but I guess it was just this chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. Well... enjoy your denial, guess I'm back to searching for the well-hung <<if $fetish.sissy>>sissy<<else>>girl<</if>> of my dreams.@@"<br>
<br>
Releasing her hold on your crotch she disappears into the crowd before you can even react.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 180 "<<set $scene.sizeQueen=true>>">>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60 "<<set $scene.sizeQueen=true>>">>]
<<default>>
ERROR! Unexpected penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<</if>>
<<else>>
<<include "listProstitutionClients">>
<br><br>
[<<moveTo "room_usual_place_inside" "Do something else." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: introduce yourself to a potential client on the floor, they assess your appearance
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, The Bar">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.coworker_event = setup.getTotalValue("whoring") >= 7 && $npc_prostitute.flags.alley_confront < 1 ||
setup.getTotalValue("whoring") >= 12 && $npc_prostitute.flags.alley_confront < 2>>
<<if $scene.coworker_event>>
<<set $scene.returnPassage = "event_prostitution_sex_0">>
<<if $npc_prostitute.flags.alley_confront < 1 || setup.getTotalValue("whoring") < 12>>
<<moveTo "event_prostitute_alley_confront_1">>
<<else>>
<<moveTo "event_prostitute_alley_confront_2">>
<</if>>
<<else>>
<<set $scene.randVal = random(1,10)>>
<<set $scene.client = setup.getProstitutionClient($scene.prostitutionClients[$scene.clientIndex].type, $scene.prostitutionClients[$scene.clientIndex].id)>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.client.image_intro>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" $scene.client.image_intro>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if null != $scene.dislike>>
Face to face with the prospective client they look at you with disgust.<br>
<br>
They note that your <<=setup.prostitutionLikeToString($scene.dislike[0], 'dislike')>><<if $scene.dislike.count()>1>>, among other things are <<else>> is <</if>>a major turn off. <<=$scene.client.hint>><br>
<br>
<<if $scene.randVal > ( 20 + $scene.dislike.count() - $scene.clothingModifiers.whoring)>>
Despite their initial disinterest you turn things around, drawing out what they're in the market for this evening.<br>
<br>
<<=$scene.client.request>><br>
<br>
[<<moveTo "event_prostitution_sex_1" "Make your offer." 180 "<<set $scene.style = 'basic'>>">>]<br>
[<<moveTo "event_prostitution_floor_root" "Change your mind and look for another client." 1800>>]
<<else>>
You try to change their mind, but are unable to do so and they soon turn away.<br>
<</if>>
<<else>>
Your prospective client looks you over.<br>
<br>
<<if null != $scene.clientFeelings[$scene.clientIndex].like && $scene.clientFeelings[$scene.clientIndex].like.count() == $scene.client.like.count()>>
<<if null != $scene.clientFeelings[$scene.clientIndex].love>>
<<set _difficultyMod = $scene.clientFeelings[$scene.clientIndex].love.count()>>
<<if $scene.clientFeelings[$scene.clientIndex].love.count() == $scene.client.loves.count()>>
<<set _autosuccess = true>>
"You are utterly perfect, exactly what I was looking for!" They note with excitement.
<<else>>
<<set _difficultyMod += 2>>
"You look amazing! practically perfect!" They exclaim.
<</if>>
<<else>>
<<set _difficultyMod = 0>>
They shrug, expressing mild interest.
<</if>>
<<elseif null != $scene.clientFeelings[$scene.clientIndex].like || null != $scene.clientFeelings[$scene.clientIndex].love>>
<<if $scene.clientFeelings[$scene.clientIndex].like != null>>
<<set _difficultyMod = $scene.clientFeelings[$scene.clientIndex].like.count() - $scene.client.like.count()>>
<<else>>
<<set _difficultyMod = 0>>
<</if>>
<<if null != $scene.clientFeelings[$scene.clientIndex].love>>
<<set _difficultyMod = _difficultyMod + $scene.clientFeelings[$scene.clientIndex].love.count()>>
<</if>>
They subtly nod in approval, seems they like what you've got going on, at least a little.
<<else>>
<<set _difficultyMod = -$scene.client.like.count()>>
They have a fairly neutral expression; while you may not be putting them off your look doesn't seem to be turning them on, either.
<</if>>
<br><br>
<<if _autosuccess || $scene.randVal > ( 15 - _difficultyMod - $scene.clothingModifiers.whoring)>>
It looks like you've nailed the "first impression." You ask what they'd like for you to do.<br>
<br>
<<=$scene.client.request>><br>
<br>
It's time for you to try and clinch the job, what approach will you deploy to appeal to them?<br>
<br>
[<<moveTo "event_prostitution_sex_1" "Proposition them directly." 180 "<<set $scene.style = 'basic'>>">>]<br>
<<if setup.getTotalValue("feminization") > 10>>
[<<moveTo "event_prostitution_sex_1" "Emphasise your femininity and offer your body." 180 "<<set $scene.style = 'feminization'>>">>]
<<else>>
[@@.link_locked;You are not girly enough to offer your body in a feminine way.@@]
<</if>>
<br>
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo "event_prostitution_sex_1" "Act submissive and beg them to use you." 180 "<<set $scene.style = 'submission'>>">>]
<<else>>
[@@.link_locked;You are not sufficiently submissive to offer yourself to a stranger.@@]
<</if>>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_prostitution_sex_1" "Play the mindless bimbo thirsty for sex." 180 "<<set $scene.style = 'bimbofication'>>">>]
<<else>>
[@@.link_locked;You aren't enough of a sex-obsessed bimbo to make an airheaded proposal.@@]
<</if>>
<br>
[<<moveTo "event_prostitution_floor_root" "Decline them and head back to the bar to look for a different client." 180>>]
<<else>>
Unfortunately it seems like you have failed to entice them, and they turn away with just a short parting glance.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Head back to the bar to look for another client." 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: make your offer for sex with a client in your choice of affect, accept or decline offer
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, The Bar">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitutionClients[$scene.clientIndex].visited = true>>
<<set $scene.success = false>>
<<set $scene.challenge = random(15,20)>>
/* rock, paper, scisorsish if your approach doesn't match preference */
<<if $scene.client.hasOwnProperty('style_preference')>>
<<if $scene.client.style_preference == $scene.style>>
<<set $scene.stylemod = 1.5>>
<<else>>
<<if $scene.client.style_preference == "basic">>
<<set $scene.stylemod = .9>>
<<elseif $scene.style == "basic">>
<<set $scene.stylemod = .6>>
<<elseif ($scene.client.style_preference == "bimbofication" && $scene.style == "feminization")
|| ($scene.client.style_preference == "feminization" && $scene.style == "submission")
|| ($scene.client.style_preference == "submission" && $scene.style == "bimbofication")>>
<<set $scene.stylemod = .75>>
<<elseif ($scene.style == "bimbofication" && $scene.client.style_preference == "feminization")
|| ($scene.style == "feminization" && $scene.client.style_preference == "submission")
|| ($scene.style == "submission" && $scene.client.style_preference == "bimbofication")>>
<<set $scene.stylemod = .5>>
<<else>>
ERROR, unexpected pairing of client.style_preference and style: ( <<=$scene.client.style_preference>>, <<=$scene.style>> )
<</if>>
<</if>>
<<else>>
<<set $scene.stylemod = 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.client.image_scene>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" $scene.client.image_scene>>
<<elseif $scene.client.image_intro>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" $scene.client.image_intro>>
<<elseif $scene.client.image_char>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage($scene.client.image_char[0],$scene.client.image_char[1])>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.style == 'basic'>>
Not adopting a particular affectation you give a straightforward proposition to your intended client.<br>
<br>
<<if setup.getTotalValue('whoring')*$scene.stylemod > $scene.challenge>>
<<set $scene.success = true>>
<<if $scene.client.style_preference == "basic">>
Your chosen client seems to like this "direct" approach; after
<<else>>
Your look, and your skills as a prostitute, carry the day. After
<</if>>
a brief negotiation you are leading your client up the stairs to one of the private rooms.
<<else>>
<<if $scene.client.style_preference == "basic">>
The client seems to appreciate your straightforward approach, even if they just as straightforwardly turn you down.
<<else>>
Your lack of tact sinks your chances, the prospective client declining your offer and moving away.
<</if>>
<</if>>
<<else>>
<<switch $scene.style>>
<<case "bimbofication">>
Fluttering your eyes and licking your lips you ask if the prospective client has an idea of how you could best... please them.
<<case "feminization">>
Posing to best show off your feminine "assets" you ask, if they like what they see, if you could "help them out" with anything...
<<case "submission">>
You adopt a submissive posture as you ask the prospective client if there is any way you could be of service...
<<default>>
ERROR, unknown style <<=$scene.style>>
<</switch>>
<br><br>
<<if $scene.style == $scene.client.style_preference && ($scene.stylemod*setup.getTotalValue($scene.style)) >= $scene.challenge>>
<<set $scene.success = true>>
It looks like you nailed it on the first try, the combination of your look and approach appealing to the client. You lead them up the stairs to a private room.
<<else>>
<<if ($scene.stylemod*setup.getTotalValue($scene.style) + setup.getTotalValue('whoring')) >= $scene.challenge>>
<<set $scene.success = true>>
Your initial proposal may not have hit the mark, but your skill as a whore makes up for it and a short negotiation soon has your new client following you up the stairs to a private room.
<<else>>
You botched the approach and are unable to recover, the prospective client turning away from you.
<</if>>
<<if !$scene.success>>
<br><br>
<<if $scene.style == $scene.client.style_preference>>
<<printThought "I think I had the right style... just not the skill to pull it off.">>
<<else>>
<<switch $scene.client.style_preference>>
<<case "bimbofication">>
<<printThought "Perhaps a more sex-crazed bimbo approach would have worked better...">>
<<case "feminization">>
<<printThought "Perhaps emphasising my femininity would have worked better...">>
<<case "submission">>
<<printThought "Perhaps a more submissive approach would have worked better...">>
<<case "basic">>
<<printThought "Maybe I'm over-complicating things and a more basic approach would have worked better...">>
<<default>>
ERROR, unknown style <<=$scene.style>>
<</switch>>
<</if>>
<</if>>
<</if>>
<</if>>
<br><br>
<<if $scene.success>>
<<if $scene.client.hasOwnProperty("scene_link")>>
[<<moveTo $scene.client.scene_link "Go to a private room and get to work." 1800>>]<br>
<<else>>
[<<moveTo "event_prostitution_sex_2" "Go to a private room and get to work." 1800>>]<br>
<</if>>
[<<moveTo "event_prostitution_floor_root" "Decline and look for another client." 1800>>]
<<else>>
[<<moveTo "event_prostitution_floor_root" "Look for another potential client." 1800>>]
<</if>>
</div>/*#
#desc: give bar client a quick fuck
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, Private Room">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _count = 13>>
<<if $scene.clientFeelings[$scene.clientIndex].likes != null>>
<<set _count += $scene.clientFeelings[$scene.clientIndex].likes.count()>>
<</if>>
<<if $scene.clientFeelings[$scene.clientIndex].loves != null>>
<<set _count += $scene.clientFeelings[$scene.clientIndex].loves.count()>>
<</if>>
<<if $scene.clientFeelings[$scene.clientIndex].dislike != null>>
<<set _count += $scene.clientFeelings[$scene.clientIndex].dislike.count()>>
<</if>>
<<if $scene.dislike != null>>
<<set _count -= $scene.dislike.count()>>
<</if>>
<<set $scene.whoring_level = Math.min(20, _count)>>
<<if setup.getTotalValue($scene.client.skill.name) >= $scene.client.skill.value>>
<<set $npc_barkeeper.flags.prostitution.clients.floor[$scene.prostitutionClients[$scene.clientIndex].id] = true>>
<<set $scene.success = true>>
<<set $scene.pay = 50+ Math.ceil($scene.client.base_pay * (1+($scene.client.skill.value+$scene.whoring_level)*.05))>>
<<applyExperience $scene.client.skill.name $scene.client.skill.value 'normal' $EXPOSED>>
<<applyExperience 'whoring' $scene.whoring_level 'terrible' $EXPOSED>>
<<else>>
<<set $scene.success = false>>
<<set $scene.pay = 20>>
<<applyExperience $scene.client.skill.name $scene.client.skill.value 'very' $EXPOSED>>
<<applyExperience 'whoring' $scene.whoring_level 'very' $EXPOSED>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.client.image_scene>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" $scene.client.image_scene>>
<<elseif $scene.client.image_intro>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" $scene.client.image_intro>>
<<elseif $scene.client.image_char>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage($scene.client.image_char[0],$scene.client.image_char[1])>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
<<=$scene.client.scene_success>>
<br><br>
<<if $scene.dirty_success>>
<<include "prostitute_mess_success">>
<<else>>
Thanks to your skills, you are able to do the job without getting dirty in the slightest, your clothes and face as well-groomed at the finish as they were when you began.
<</if>>
<<else>>
<<=$scene.client.scene_fail>>
<br><br>
<<if $scene.dirty_fail>>
<<include prostitute_mess_fail>>
<<else>>
Despite your lack of skill you at least didn't mess up your clothes, finishing the "job" without getting any dirtier, well, PHYSICALLY dirtier, than you were at the start.
<</if>>
<</if>>
<br><br>
<<if $player.timebased.fatigue > ($player.timebased.fatiguemax/2)>>
Exhausted, you barely notice your client leave credits on the nightstand.<br>
<br>
<<if $scene.success>>
Pocketing the <<=$scene.pay>> you try to stand up only to collapse back into the bed in exhaustion.
<<else>>
Pocketing the paltry <<=$scene.pay>> credits you wince at your obvious failure to properly serve your client. You attempt to rise to your feet only to collapse back onto the bed in exhaustion.
<</if>>
<br><br>
<<if $now.getUTCHours() < 3>>
<<set _close = setup.setNextDate($now, 0, 3, 20)>>
<<else>>
<<set _close = setup.setNextDate($now, 1, 3, 20)>>
<</if>>
<<set _timeToClose = setup.secondsToDate($now,_close)>>
[<<moveTo "event_prostitute_after_hours_1" "Falling asleep you wake several hours later." _timeToClose>>]
<<else>>
<<if $scene.success>>
Job done you wait for your client to leave before taking your <<=$scene.pay>> credits from the nightstand after they have departed.<br>
<br>
[<<moveTo "event_prostitution_floor_pay_floor" "Head back inside The Usual Place." 300>>]
<<else>>
Job done you wait for your client to leave before taking your <<=$scene.pay>> credits from the nightstand after they have departed. You sigh at the pitiful offering, though you should have expected as much given the look of dissatisfaction on your client's face as they walked out of the room, your skills clearly not up to snuff.
<<if !State.hasPlayed("event_prostitution_confrontation_3")>>
On your way out of the room, you almost crash into another woman.<br>
<br>
[<<moveTo "event_prostitution_confrontation_3" "It looks like she's upset..." 300>>]
<<else>>
<br><br>
[<<moveTo "event_prostitution_floor_pay_floor" "Head back inside The Usual Place." 300>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: get paid for sex with floor client
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, The Bar">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.her_cut = Math.floor($npc_barkeeper.flags.prostitution.her_cut * $scene.pay)>>
<<set $npc_barkeeper.flags.prostitution.money_earned += $scene.her_cut>>
<<addCredits `-($scene.her_cut)`>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
Coming back down the stairs you find <<=setup.getNpcName('npc_barkeeper', 'first')>> waiting for you at that end of the bar.<br>
<br>
You place her cut of <<=$scene.her_cut>> <<if $scene.her_cut > 1>>credits<<else>>credit<</if>> on the edge of the bar and she smoothly scoops it up with a smile and a wink.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Look for another client." 1800>>]<br>
[<<moveTo "room_usual_place_inside" "Stop prostituting yourself for the evening." 60>>]
</div>/*#
#desc: work as a prostitute on the main floor of the bar (full sex)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.clothing_modifier = setup.calcProstitutionModifiers()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("martial_arts") >= 8>>
Taking hole of her wrist you give an expert twist, breaking her grip with ease and then spinning her around and pushing her arm up behind her back in a hammerlock.<br>
<br>
"@@.generic_female1;Oh! <<if $fetish.sissy>>Sissy's<<else>>Girl's<</if>> got claws! Mmmm... I like that@@" she adds grinding back into you. Leaning her head back she whispers full of need. "@@.generic_female1;Come on, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, fuck me, cram that big <<if $fetish.sissy>>sissy <</if>>cock into me and teach me a lesson for grabbing it without permission...@@"<br>
<br>
[<<moveTo "event_prostitute_size_queen_1" "Give her the business." 1800 "<<set $scene.style='dom'>>">>]<br>
[<<moveTo "event_prostitution_floor_root" "Push her away and go back to what you were doing." 601>>]
<<else>>
Gritting your teeth, you pull away, suppressing a pained yelp as you tear her grip away.<br>
<br>
Cradling your crushed package you quickly slip away into the crowd, leaving her behind looking frustrated and disappointed.<br>
<br>
[<<moveTo "event_prostitution_floor_root" "Resume your search for clients." 3600>>]<br>
[<<moveTo "room_usual_place_inside" "Do something else." 60>>]
<</if>>
</div>/*#
#desc: work as a prostitute on the main floor of the bar (full sex)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.clothing_modifier = setup.calcProstitutionModifiers()>>
<<set $scene.removedChastity = setup.getItemFromType("cage")>>
<<if $scene.removedChastity != "">>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<playerOrgasm>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "money">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "money">>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "bar_woman">>
<</if>>
<<set $player.virgin.penis = "bar_woman">>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem =- "bar_woman">>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.floor.size_queen = true>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'dom'>>
Using your grip on her arm to control the woman from behind you march her straight to one of the private rooms of the bar, closing the door before lowering her to the floor and then finally releasing your grip.<br>
<br>
Almost instantly she spins around, kneeling and looking up at you with wide, lust-filled eyes.<br>
<br>
"@@.generic_female1;That was so hot. Now show it to me, show me your big, <<if $fetish.sissy>>sissy <<else>>girl-<</if>>cock!@@"<br>
<br>
You oblige, shedding clothing <<if $scene.removedChastity != "">> and unlocking your <<=setup.getItemTypeName('cage')>> <</if>>to reveal your half-hard <<getWordMyPenis false>>.
<<case 'sub'>>
Whoever the strange woman dragging you around by your <<getWordMyPenis>> is she seems to know her way around, taking you straight to one of the private rooms and locking the door behind.<br>
<br>
Dropping to her knees she finally releases her grasp on your <<getWordMyPenis>> just long enough to pull your clothing out of the way and <<if $scene.removedChastity != "">> unlocking your <<=setup.getItemTypeName('cage')>> to reveal<<else>>revealing<</if>> your member in all its glory.
<<default>>
ERROR! unknown style <<=$scene.style>>
<</switch>>
<br><br>
<<switch $player.body.penissize[0]>>
<<case 6>>
<<set $scene.pay=100>>
She stares at your <<getWordMyPenis false>>, momentarily stunned.<br>
<br>
"@@.generic_female1;They should have sent a poet...@@"
<<if $player.body_ref.horsecock && $player.body_ref.knot>>
she whispers in shock. Her lips eagerly start sucking on your thick, frilled tip as she wraps both hands around your engorged knot. Her eyes are wide and full of lust as she tries to force your entire massive fantastical member down her throat.
<<elseif $player.body_ref.horsecock>>
she whispers in shock. Her lips eagerly start sucking on your thick, frilled tip as she attempts to swallow your entire equine cock.
<<elseif $player.body_ref.knot>>
she whispers in shock. Her lips eagerly start sucking on your thick tip as she wraps both hands around your engorged knot. Her eyes are wide and full of lust as she tries to force your entire massive member down her throat.
<<else>>
she whispers before leaning in to tentatively kiss it. The kiss turns to a suck and soon she is spreading her lips wide in an attempt to stuff as much of it as she can into her mouth.
<</if>>
<br><br>
The effort is futile, she is far to slight to take much more than the head of your <<getWordMyPenis false>>, especially now that it is swelling to full excited hardness.<br>
<br>
"@@.generic_female1;Ffffuck yeff@@" she moans around your <<getWordMyPenis false>> before pulling it out of her mouth with a pop. Pushing you backwards until you're on the bed she hikes up her skirt to reveal her lack of underwear before squatting over you and guiding your monster <<getWordMyPenis false>> into her cunt.<br>
<br>
Given her size you wonder if you might injure her, but she doesn't even hesitate, her gasp as you plunge into her one of total divine bliss.<br>
<br>
"@@.generic_female1;Oh fuck... where have you been all my life?@@" She groans as she lowers further, working her way down your shaft until your entire enormity is inside, her tummy bulging slightly at her fullness.<br>
<br>
"@@.generic_female1;Yes... yes, now fuck me, fuck me!@@" She cries out.<br>
<br>
You comply. First by driving up into her, bouncing her up off the bed with each stroke before letting her fall back down, her full weight driving her body back down onto your <<getWordMyPenis false>>.<br>
<br>
As much as she is enjoying it you can sense that she wants more and you reverse positions, flipping her onto the bed and holding her down with both hands as you slam into her hard enough to shake the headboard. Though you would swear you are pounding her cervix with each thrust she seems to love it even more with each thrust; gasping and crying out in pleasure.<br>
<br>
"@@.generic_female1;Yes, yes! Fuck me, <<if $fetish.sissy>>sissy, <</if>>fill me, fuck me, flood me!@@"<br>
<br>
Leaning close as you continue to pound she reaches up and wraps her arms around your shoulders, bouncing along with each thrust, her moans getting louder and louder until her already tight shaft clenches down and you both cum, hard.<br>
<br>
Pumping her full of <<if $fetish.sissy>>sissy<<else>>your<</if>> seed you take a few panting moments to recover before staggering back, her cunt leaking cum as it tries to recover from the gape forced upon it.<br>
<br>
She tries to sit up only to slump back down, clearly exhausted. Smiling you lean forward, running your tongue through her folds to lick up your sweet cum as it trickles out of her.<br>
<br>
"@@.generic_female1;Oh fuck, I love <<if $fetish.sissy>>sissies<<else>>girls like you<</if>>, and you're the best, biggest <<if $fetish.sissy>>sissy<<elseif $fetish.futanari && $player.body_ref.penis && $player.body_ref.vagina>>futa<<else>>girl<</if>> I've ever met.@@" Fumbling for your head she tries to pull you up. "@@.generic_female1;Kiss me, let me taste you on your lips...@@"<br>
<br>
You oblige, crawling forward and leaning in for a kiss, her tongue eagerly exploring your mouth in search of every last drop of cum and feminine juices.<br>
<br>
"@@.generic_female1;So... delicious.@@" She whispers when your lips finally separate. Fumbling for her purse she pulls out a stack of credits and presses them towards you.<br>
<br>
"@@.generic_female1;Here, you've earned it... I've never been fucked like that... I don't know if I'll ever walk straight again... and I really don't care...@@"<br>
<br>
Leaving the strange woman to recover you fix your clothes and stagger out of the room. Counting up the <<=$scene.pay>> credits shows that the encounter was quite the profitable one, but you still feel more than a bit drained.
<<case 4 5>>
<<set $scene.pay=50>>
Licking her lips she wastes no time lunging forward, swallowing your <<getWordMyPenis false>> and looking up at you with obvious rapturous pleasure.<br>
<br>
"@@.generic_female1;Mmmmmmm@@" she moans, eyes rolling back as her head bobs up and down, working her way up to deepthroating your full length and holding it there until being forced pull back for air.<br>
<br>
Gasping with drool leaking down her chin she strokes your <<getWordMyPenis false>> with one hand as she looks up and catches her breath. "@@.generic_female1;Oh fuck, you taste so good! I love <<if $fetish.sissy>>sissy <<else>>girl-<</if>>cock so much, but I want more... I want you inside me!@@"<br>
<br>
Pushing forward she guides you onto your back and hikes up her skirt to reveal her lack of underwear. Crawling over you she guides your <<getWordMyPenis false>> into her cunt. You can feel how wet she already is on the first stroke, easily sliding into her as she groans in pleasure.<br>
<br>
"@@.generic_female1;Yeeesssss, oh that feels so good.@@"<br>
<br>
Rolling her hips she starts to fuck you panting and gasping in pleasure and then suddenly pulling off and laying down on the bed, her legs raised high.<br>
<br>
"@@.generic_female1;Come on, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, finish the tour, fuck my ass!@@"<br>
<br>
Rolling off the bed you get your footing as she spreads her ass with both hands, winking at you and transfering her juices from her front to rear hole. Heels next to her ears in presentation she grins up at you. "@@.generic_female1;Come on, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, give it to me!@@"<br>
<br>
Even wet with wet with a mix of her spittle and cunt you find it a challenge to work your <<getWordMyPenis false>> into her tight ass. Eyes rolling back, from first insertion there's no doubt she's enjoying it, even if she must be in at least some pain from you going in raw.<br>
<br>
Your <<getWordMyPenis false>> is about halfway in when it grinds to a halt, but she manages to refocus, looking up at you with half-lidded eyes, her voice a panting whisper. "@@.generic_female1;Don't stop, all the way,please... I want it, I need it...@@"<br>
<br>
Leaning forward you force your way deeper, grabbing her hips and using your weight to press deeper until your balls are pressed against her cheeks, your forehead almost touching her own.<br>
<br>
"@@.generic_female1;Yes, <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@" She whispers as she kisses you, "@@.generic_female1;Finish it, fuck me and flood me with your cum...@@"<br>
<br>
Tight as she is it is hard in more ways than one to move your <<getWordMyPenis false>> in her ass and you are forced to settle for short, centimetre-long strokes. It is enough, her kisses and gasps becoming more frantic as she starts to cum just before you start spurting into her.<br>
<br>
"@@.generic_female1;Oh yes! breed my ass!@@" She cries out as you spurt, pulsing thrice before finally starting to soften.<br>
<br>
Even deflating it is a struggle to pull free of her tight rear hole, her arms and legs going limp in post-orgasmic overload.<br>
<br>
"@@.generic_female1;Oh <<if $fetish.sissy>>sissy<<else>>girl<</if>>... you look so pretty and feel even better... I'd fall for your trap any day...@@"<br>
<br>
You clean up and fix your clothes as she starts to recover. A bit wobbly as she stands she fishes out her purse and pulls out some credits.<br>
<br>
"@@.generic_female1;Here, you've more than earned it...@@" Reaching down, she gropes your <<getWordMyPenis>> again, but more gentle this time than when she first introduced herself. "@@.generic_female1;Mmm, I can't believe that this was in all three of my holes... so wonderful...@@"<br>
<br>
Rising to her toes she lays a peck of a kiss on your cheek before heading for the door, wobbling a bit and squeezing her ass tight as she tries to keep any more of your cum from leaking down her leg.<br>
<br>
You wait another minute or so and walk out of the room.
<<default>>
ERROR: unexpected penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<<set $scene.her_cut = Math.floor($npc_barkeeper.flags.prostitution.her_cut * $scene.pay)>>
Remembering to drop off <<=ps(setup.getNpcName('npc_barkeeper', 'first'))>> cut of <<=$scene.her_cut>> credits you take a deep breath and consider your next move.<br>
<br>
[<<moveTo "room_usual_place_inside" "Look around the bar." 1 "<<set $npc_barkeeper.flags.prostitution.money_earned += $scene.her_cut>><<addCredits `$scene.pay - $scene.her_cut`>><<if $scene.removedChastity != ''>><<include 'removeCage_retractSissyomatic'>><</if>>">>]
</div>/*#
#desc: auto-fail job intro
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You are about to scan the room for your next client when a <<man>> approaches you instead to ask if you're "working" this evening?<br>
<br>
<<printThought "I guess sometimes it really is that easy...">><br>
<br>
[<<moveTo "event_prostitution_confrontation_2" "Smile at <<him>> and get to work." 300>>]<br>
[<<moveTo "event_prostitution_sex_0" "Go looking for another client." 300 "<<set $scene.noconfront=true>>">>]
</div>/*#
#desc: auto-fail job
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, Private Room">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = 20>>
<<applyExperience 'whoring' $scene.whoring_level 'very' $EXPOSED>>
<<addCredits $scene.pay>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageGeneric("generic_guy")>>
<div id="invframe" class="scrolltext">
After an almost wordless negotiation you lead the easiest customer ever up to the private room and head for the bed, and that's when everything starts to fall apart.<br>
<br>
You don't know what comes over you as you get the whore's version of the yips, your normal skill and confidence replaced with being all thumbs as you seem to perpetually shift in the exact wrong direction from what would be optimally erotic — and only barely avoid literally bumping heads with the customer as you move from a poor blowjob to bending over and offering your rear.<br>
<br>
The client grunts, as you find your normally skilled ass all but cramping up... the rest of the session as awkward and botched as it started as the client ends up brushing off your assistance and finishing by hand, leaving behind a mere twenty credits before they depart... and you aren't even sure if you deserve that.<br>
<br>
With a sigh of frustration you clean yourself up and make ready to leave.<br>
<br>
<<printThought "I guess sometimes everything just goes wrong... bound to happen after how many jobs I've worked. Gotta just keep moving forward and hope the next client goes better.">><br>
<br>
[<<moveTo "event_prostitution_confrontation_3" "Continue." 600>>]
</div>/*#
#desc: confronted by npc_prostitute after a failed job
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_prostitute.profile = true>>
<<addWorkEvent 'prostitution_call'>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You are still trying to recover from your failure to properly serve your client, hoping to do better on your next when you are almost cornered by another woman.<br>
<br>
"@@.npc_prostitute;Who the hell do you think you are? First you take my business, now you make all of us look bad by being a fucking failure?@@"<br>
<br>
It takes you a moment, but you recognise her voice — you heard her in one of the other stalls back when you were starting out at the glory hole...<br>
<br>
You try to apologise, but she is having none of it, quickly cutting you off.<br>
<br>
"@@.npc_prostitute;Shut it, whore. I don't know why <<=setup.getNpcName('npc_barkeeper', 'first')>> let you into the bathroom, much less let you out! She has a soft spot for you, but I'm having none of it...@@"<br>
<br>
Her eyes ablaze you're a bit worried as to what she's going to do next, but you don't get a chance to find out.<br>
<br>
"@@.npc_barkeeper;A-hem.@@"<br>
<br>
Looking over at <<=setup.getNpcName('npc_barkeeper', 'first')>> standing next to the two of you the other woman's eyes go wide and she quickly pulls away from you, contrite.<br>
<br>
"@@.npc_barkeeper;<<=setup.getNpcName('npc_prostitute', 'first')>>... what have I told you about disagreements with the other girls?@@"<br>
<br>
"@@.npc_prostitute;That I should trust your judgement and bring any problems to you rather than take matters into my own hands...@@"<br>
<br>
"@@.npc_barkeeper;Exactly, now leave this poor, cute thing alone and take the rest of the night off...@@"<br>
<br>
"@@.npc_prostitute;But, I—@@" <<=setup.getNpcName('npc_prostitute', 'first')>> hurries away.<br>
<br>
"@@.npc_barkeeper;Sorry about that, <<=setup.getNpcName('npc_prostitute', 'first')>> can get a bit... excited, but losing part of a night's work should teach her a lesson, not that she needs it, given how big her tips usually are. She didn't harm you, did she?@@"<br>
<br>
You shake your head, the only damage being to your pride.<br>
<br>
"@@.npc_barkeeper;Good, good, let me know if anything further comes up. Go ahead and keep the full balance from that last client to make up for the bother. I need to get back to the bar.@@"<br>
<br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> walks away, leaving you alone in the narrow hallway.<br>
<br>
[<<moveTo "event_prostitution_bar" "Look for another client." 3600>>]<br>
[<<moveTo "room_usual_place_inside" "Stop prostituting yourself for the evening." 60>>]
</div>/*#
#desc: barkeeper calls you after you got into an argument with npc_prostitute
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You're surprised to be interrupted by a phone call, from <<=setup.getNpcName('npc_barkeeper', 'first')>> of all people!<br>
<br>
Somewhat wary of what <<=setup.getNpcName('npc_manager', 'formal')>> might think you hurry to the bathroom before taking the call.<br>
<br>
"@@.npc_barkeeper;Hi, so I was thinking about the confrontation between you and <<=setup.getNpcName('npc_prostitute', 'first')>> the other night and, well... as your pimp, for lack of a better word, I feel like I ought to do something to smooth things over. Anyway, when you're ready to give it a shot come by the bar and let me know.@@"<br>
<br>
You tell her you'll think about it and she apologises again and hangs up.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>><<set $currentcall = false>>">>]
</div>/*#
#desc: offered prostitution vip introduction job
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<if setup.getTotalValue("whoring") >= 15 && setup.getTotalValue("anal") >= 10 && setup.getTotalValue("oral") >= 10>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper") setup.charImage("npc_prostitute")>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("whoring") >= 15 && setup.getTotalValue("anal") >= 10 && setup.getTotalValue("oral") >= 10>>
<<=setup.getNpcName('npc_barkeeper', 'first')>> leads you into the backroom where you are surprised to find <<=setup.getNpcName('npc_prostitute', 'first')>> waiting, your "coworker" glaring at you in annoyance.<br>
<br>
"@@.npc_barkeeper;So, the two of you have had a bit of a conflict, which really, is my fault, so... I've got a proposal. I've got a two-girl job that needs doing and I think some collaboration would do the two of you good. So, what do you think? You up for burying the hatchet, making a VIP client happy and earning money in the process?@@"<br>
<br>
The mention of money definitely has <<=setup.getNpcName('npc_prostitute', 'first')>> nodding. "@@.npc_barkeeper;Well, you in?@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo "event_prostitution_vip_unlock_1" "Agree to do the job." 300>>]<br>
<<else>>
[@@.link_locked;You already have something scheduled tonight.@@]<br>
<</if>>
[<<moveTo "event_prostitution_vip_unlock_decline" "Turn down the job." 180>>]
<<else>>
You ask <<=setup.getNpcName('npc_barkeeper', 'first')>> about the "special job" she mentioned and she shakes her head.<br>
<br>
"@@.npc_barkeeper;Right... that... I'm still working out the details, and I think you probably need a bit more practice before you're ready — wouldn't want you on site and finding your skills, or your holes, not up to the task, right?@@"<br>
<br>
You nod, wondering what exactly she has planned.<br>
<br>
[<<moveTo "event_prostitution_root" "Consider other work." 60>>]
<</if>>
</div>/*#
#desc: offered prostitution vip introduction job
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.special_job_reject = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper") setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barkeeper', 'first')>> frowns and <<=setup.getNpcName('npc_prostitute', 'first')>> starts to object only to be silenced with a glance.<br>
<br>
"@@.npc_barkeeper;Damn, I was really hoping this would be that easy... guess I shouldn't have skipped out on that MBA programme after all! Anyway, I, of course, don't want to push you into something you aren't comfortable with but, if you change your mind, the offer is still open, just let me know!@@"<br>
<br>
You thank her for the consideration, mumbling an excuse for your reticence and quickly excuse yourself.<br>
<br>
[<<moveTo "room_usual_place_inside" "Return to the bar." 60>>]
</div>/*#
#desc: re-offered prostitution vip introduction job
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper") setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_barkeeper', 'first')>> if the special job with <<=setup.getNpcName('npc_prostitute', 'first')>> is still available.<br>
<br>
"@@.npc_barkeeper;Oh! I'm so glad you've come around! Of course, let me get <<=setup.getNpcName('npc_prostitute', 'first')>> and get you two started!@@"<br>
<br>
Pulling out her phone and firing off a text it is only a couple minutes later when the three of you are in the back room and she's laying things out.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_1" "Listen to the job." 300>>]
</div>/*#
#desc: prostitution vip introduction job explained
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper") setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barkeeper', 'first')>> smiles across the small room at you and <<=setup.getNpcName('npc_prostitute', 'first')>>. "@@.npc_barkeeper;Alright, let's not delay any further, because this job I have for the two of you? Well, I think you're both going to LOVE it.@@"<br>
<br>
Glancing at one another you get the feeling that neither you nor <<=setup.getNpcName('npc_prostitute', 'first')>> are quite convinced, but neither are either of you eager to contradict your madame to her face.<br>
<br>
"@@.npc_barkeeper;So this is a bit of a special client... an old family friend, actually, and their thing is, well... I don't want to spoil the surprise, but they have a very stressful, high-profile job so they enjoy the occasional opportunity to cut loose and indulge their more kinky impulses.@@"<br>
<br>
She looks like a kid with a secret, desperate to spill the beans, but equally wanting to hold back the surprise. Her phone rings and she glances down.<br>
<br>
"@@.npc_barkeeper;Ah! There we go! Your ride has arrived, just head out front to the car and you'll be whisked away for a... special night, have fun, the both of you and I'll see. You. Later!@@"<br>
<br>
Hurrying you along she almost pushes the two of you out the door and a few moments later you find yourself inside a large limo as it pulls away.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_2" "Enjoy the ride." 600>>]
</div>/*#
#desc: start of car ride for prostitution vip unlock job, ordered to strip
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo "event_prostitution_vip_unlock_3">>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
The limo silently pulls away from the curb and you glance over at your fellow passenger, <<=setup.getNpcName('npc_prostitute', 'first')>> sitting across the large vehicle from you.<br>
<br>
"@@.computer;Welcome!@@" A computerized voice announces, giving you weird flashbacks.<br>
<br>
"@@.computer;You will shortly arrive at our private residence, which gives you just enough time to get prepared! In the centre of the car you will find a box of items. Once you have stripped it will open and then you will need to equip yourselves with all that we have left for you.@@"<br>
<br>
The voice falls silent, <<=setup.getNpcName('npc_prostitute', 'first')>> has already started to strip out of her slutty attire.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_3" "Do the same." 300 "<<useClothSetPush 'tmp'>><<removeAllClothing>>">>]
</div>/*#
#desc: prostitution vip strip, see npc_prostitute cock for the first time
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_prostitute","npc_prostitute_naked")>>
<div id="invframe" class="scrolltext">
Hurriedly stripping you glance up at your compatriot and gawk in surprise.<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.getItemTypeName("cage") != "">>
Like you, her penis is securely caged, <<if $player.body.penissize[0] >= 5>>and just like you,<<else>>but unlike you,<</if>> it is massive and locked in steel, looking like a primal beast kept imprisoned.
<<else>>
Unlike you, her penis is securely caged in steel, and what a penis it is, thick and long and bulging with veins even from within its prison, looking like some sort of caged beast.
<</if>>
<<else>>
She has a large penis. A large penis securely locked in a steel cage. Thick and long it bulges against its prison, veins pulsing occasionally like a trapped beast.
<</if>>
<br><br>
Noting your attention <<=setup.getNpcName('npc_prostitute', 'first')>> smirks, her member and thick balls below swinging as she makes her way to the centre of the compartment and opens up the box.<br>
<br>
Hurrying to catch up you look into the box together and examine its contents.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_4" "Continue." 300>>]
</div>/*#
#desc: prostitution vip unlock examine equipment
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_prostitute","npc_prostitute_leather")>>
<div id="invframe" class="scrolltext">
Inside the box you find a cornucopia of leather, quickly laying things out to find a true ensemble of fetish bondage gear.<br>
<br>
There are a pair of full-body harnesses with matching collars and matching pairs of locking patent pumps. The remainder of the items are one-offs, meaning that the two of you will have to choose who wears what.<br>
<br>
Wordlessly you each slip into the moderate heels and your respective harnesses, heavy straps cinched tight around your torso to provide multiple attachment points with a specially designed split strap that allows your <<if !setup.checkItemTypeWorn("cage")>>privates<<else>>chastity <<if setup.isCage()>>cage to thread<<else>>belt to peek<</if>><</if>> through while leaving your ass open and available for use. <<if $player.flags.collar.owner == "">>Next you each buckle a sturdy leather collar around your own throats as<<else>>Given that you are already collared you forgo that part of the outfit as <<=setup.getNpcName('npc_prostitute', 'first')>> buckles a posture collar around her throat. You wait for her to finish and then the two of<</if>> you glance at the remaining items and size each other up.<br>
<br>
Left in the pile is a hollow butt plug, an intimidatingly large, heavy steel ball-stretcher, a leather armbinder, a leash and a pair of hoods — one that sports a massive double gag and exposed eyes whilst the other has an open ring style gag and an integrated blindfold.<br>
<br>
Looking things over <<if $player.body_ref.penis>><<if $player.body.penissize[0] < 5>><<=ps(setup.getNpcName('npc_prostitute', 'first'))>> gaze flits towards your member and she snorts. "@@.npc_prostitute;Well, I don't think you are anywhere near large enough for this not to just fall off, so I suppose this is mine.@@"<<else>><<=setup.getNpcName('npc_prostitute', 'first')>> smiles. "@@.npc_prostitute;I'll take this, thank you very much@@" she states.<</if>><<else>><<=setup.getNpcName('npc_prostitute', 'first')>> smiles. "@@.npc_prostitute;Well I guess this is mine,@@" She notes with a chuckle.<</if>> Reaching down, she plucks the ball stretcher from the pile, clicking it closed around her large testicles to cause them to pull down, looking quite impressive dangling low beneath her caged cock. "@@.npc_prostitute;I suppose it's only fair that you take the plug then.@@"<br>
<br>
Her logic is sound, but you are unsure if you want to let her take the lead. You have a feeling if you fold here you'll be bound and helplessly at her mercy before long...<br>
<br>
<<if setup.getTotalValue("dominance") > 0>>
[<<moveTo "event_prostitution_vip_unlock_5_dom" "Attempt to assert your dominance and take charge of things." 600>>]<br>
<<else>>
[@@.link_locked;If only you had previous experience at dominance...@@]<br>
<</if>>
[<<moveTo "event_prostitution_vip_unlock_5_sub" "Submit to her will." 600>>]
</div><<addItem "harness_purple">>
<<wearItem "harness_purple" true>>
<<addItem "posture_collar_purple">>
<<if $player.flags.collar.owner == "">>
<<wearItem "posture_collar_purple" true>>
<</if>>
<<addItem "pumps_purple">>
<<wearItem "pumps_purple" true>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom'>>
<<addItem "hood_purple">>
<<wearItem "hood_purple" true>>
<<addItem "cock_gag_double_purple">>
<<wearItem "cock_gag_double_purple" true>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 8 'normal' $SEEN_STRANGER>>
<<else>>
<<addItem "armbinder_purple">>
<<wearItem "armbinder_purple" true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<<addItem "hollow_plug">>
<<wearItem "hollow_plug" true>>
<</if>>
<<set $scene.removePlug = (setup.checkItemTypeWorn("plug") && !setup.checkItemTag($scene.plug, ['hollow']))>>
<<addItem "ring_gag_purple">>
<<wearItem "ring_gag_purple" true>>
<<addItem "blindfold_purple">>
<<wearItem "blindfold_purple" true>>
<<addItem "leash_purple">>
<<wearItem "leash_purple" true>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' 12 'normal' $SEEN_STRANGER>>
<</if>>/*#
#desc: prostitution vip unlock dom path, attempt to take the less restrictive items (requires martial arts)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("martial_arts") > 12 || !$fetish.get_raped>>
<<set $scene.coplayer_mood = 1>>
<<set $npc_barkeeper.flags.prostitution.vip_unlock_game.style='dom'>>
<<else>>
<<set $scene.coplayer_mood = -3>>
<<set $npc_barkeeper.flags.prostitution.vip_unlock_game.style='sub'>>
<</if>>
<<include "prostitution_vip_equip">>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom'>>
<<set $scene.prostitute_image = setup.charImage("npc_prostitute","npc_prostitute_sub")>>
<<else>>
<<set $scene.prostitute_image = setup.charImage("npc_prostitute","npc_prostitute_dom")>>
<</if>>
<<createAdvBGR "./images/locations/limo_interior.png" $scene.prostitute_image>>
<div id="invframe" class="scrolltext">
You look down at the large plug and shake your head.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
You are quite happy with your current plug and have no interest in swapping out for this new item.
<<else>>
You are quite happy to be presently unoccupied in the anal department and do not wish to feel this large new item inside of you.
<</if>>
<br><br>
<<=ps(setup.getNpcName("npc_prostitute","first"))>> eyes narrow and she grabs the plug, coming towards you with a look of annoyance in her eyes. "@@.npc_prostitute;I was trying to be nice to you, bitch, but if you're going to be like this well... we don't BOTH have to have an enjoyable time.@@"<br>
<br>
<<if setup.getTotalValue("martial_arts") > 12>>
She reaches out for you, but you are more than ready. Taking her by surprise you reverse her grip, spinning her around and pushing her to the floor with her arm behind her back. Controlling her securely you pluck the plug from her grasp and reach below to work it into her ass.<br>
<br>
"@@.npc_prostitute;Oh shit! kitty got claws! But do you know how to retain control once you have asserted it?@@"<br>
<br>
You are actually a little surprised at how easily she took you turning the tables, she even moans with pleasure as you slide the plug into her ass, the hollow design leaving her open and gaping.<br>
<br>
Not wanting to risk that this is all an act you quickly zip her into the armbinder, following up with the ring gag blindfold hood and the leash before pulling the second hood over your head. Each item clicks to lock in place and, as you saw no keys at any point, you surmise you will be wearing them until your "clients" are done with you.<br>
<br>
The internal gag is phallic shaped and quite large
<<if setup.getTotalValue("oral") > 10>>
but nothing your extensive experience with cock hasn't prepared you for.
<<else>>
and you struggle a bit, wondering for a moment if you might have been better off with the other hood instead.
<</if>>
<br><br>
There's no time to change things up, however, as barely have you finished closing the hood when the limo comes to a halt and the door slides open.<br>
<br>
Your compatriot helpless and blind you take hold of her leash and turn towards the open door.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_6" "Stride out." 600>>]
<<elseif !$fetish.get_raped>>
You wrestle away and she just laughs. "@@.npc_prostitute;Fine, be that way — I'll play the good <<if $fetish.sissy>>sissy<<else>>girl<</if>> and you can be the brat — wonder how the client will take that?@@"<br>
<br>
She continues to chuckle as she plugs, gags and blindfolds herself before clipping a leash to her collar and sliding into the armbinder, leaving you to equip yourself with the remaining hood.<br>
<br>
The vehicle comes to a stop and you take hold her her leash and lead her, surprised how easily she is able to navigate despite the blindfold..<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_6" "Stride out." 600>>]
<<else>>
You try to wrestle control of the plug from her, but she overpowers you with ease, bending you over her knee,
<<if $scene.removePlug>>
ripping the <<=setup.getItemTypeName("plug")>> out of your ass and jamming the large, hollow plug back in its place.
<<elseif $scene.plug == "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
and jamming the large, hollow plug up your ass.
<<else>>
probing and inspecting the hollow plug that is already spreading your ass. "@@.npc_prostitute;What a butt-slut. I guess this is mine, too, then!@@"
<</if>>
<br><br>
<<if $scene.plug == "" || $scene.removePlug>>
The plug is large — huge,
<<if setup.getTotalValue("anal") > 15>>
by some standards — but nothing you aren't well experienced with.
<<elseif setup.getTotalValue("anal") > 10>>
in fact — and you pant as you try to adjust to it. While not massively larger than what you are experience with, it is enough of an upgrade to make you feel stretched and vulnerable.
<<else>>
in fact — and you pant and gasp at the spread feeling, the complete vulnerability of being so gaping and defenceless mixing with the overpowering sensation of ass-splitting fullness.
<</if>>
The novel sensation of being so open and available, of the cool night air entering you unrestricted, is odd, but not unpleasant.<br>
<br>
<</if>>
Taking advantage of your distraction she soon has you helpless, your arms tightly restrained behind your back in the armbinder and the leash clipped to your collar.<br>
<br>
Pulling you up to your knees she reaches for the blindfold and gag. "@@.npc_prostitute;You really shouldn't have resisted, I'll be remembering that, now.@@" She states as she pulls the hood over your head, working the ring gag past your teeth to leave you wide-mouthed and vulnerable from both ends. Each item, save the leash, locks in place with a click, you surmise you will be wearing them until your "clients" are done with you.<br>
<br>
Blind and mute you can only wait, a few minutes passing before you feel the car come to a halt and the sound of a door opening.<br>
<br>
She is presumably gagged with the other hood so the only command you get is a pull on your leash to tell you to rise to your feet and follow.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_6" "Follow the tug of the leash." 600>>]
<</if>>
</div>/*#
#desc: prostitution vip unlock sub path, forced into more restrictive items
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.coplayer_mood = -3>>
<<set $npc_barkeeper.flags.prostitution.vip_unlock_game.style='sub'>>
<<set $scene.prostitute_image = setup.charImage("npc_prostitute","npc_prostitute_dom")>>
<<include "prostitution_vip_equip">>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" $scene.prostitute_image>>
<div id="invframe" class="scrolltext">
You don't even try to resist, bending over and presenting your ass submissively as <<=setup.getNpcName('npc_prostitute', 'first')>> reaches for the plug.<br>
<br>
"@@.npc_prostitute;Well, well, maybe you aren't so bad after all. Keep along like this and we are going to get on juuuussst fine.@@"<br>
<br>
<<if $scene.removePlug>>
Gently she removes the <<=setup.getItemName($scene.plug)>> from your ass and slides the large, hollow plug back in its place.
<<elseif $scene.plug == "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
Working you open with a couple fingers she soon has the large, hollow plug seated in your ass.
<<else>>
Finding your already plugged rear she chuckles in amusement. "@@.npc_prostitute;What a butt-slut. I guess this is mine, too, then!@@"
<</if>>
<br><br>
<<if $scene.plug == "" || $scene.removePlug>>
The plug is large — huge,
<<if setup.getTotalValue("anal") > 15>>
by some standards — but nothing you aren't well experienced with.
<<elseif setup.getTotalValue("anal") > 10>>
in fact — and you pant as you try to adjust to it. While not massively larger than what you are experience with, it is enough of an upgrade to make you feel stretched and vulnerable.
<<else>>
in fact — and you pant and gasp at the spread feeling, the complete vulnerability of being so gaping and defenceless mixing with the overpowering sensation of ass-splitting fullness.
<</if>>
<br><br>
<</if>>
Continuing on she picks up the armbinder and waits as you place your arms obediently behind your back. Zipping it into place she follows up with a hood and you are soon blind and mute, your jaw spread wide by the large integrated ring gag, its sturdy spread working in concert to leave you open and exposed at both ends. Each item locks in place with a click and, as there appear to be no keys anywhere you can see, you surmise you will be wearing them until your "clients" are done with you.<br>
<br>
Sitting silently you wait several minutes until the vehicle comes to a stop and you hear what sounds like a door opening. You feel her click the leash to your collar and give a gentle tug to tell you to follow.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_6" "Follow the leash." 600>>]
</div>/*#
#desc: prostitution vip unlock enter mansion, taken to dungeon and bound
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
<<removeItem "blindfold_purple" true>>
<<deleteItem "blindfold_purple">>
<<case 'dom'>>
<<addItem "leash_purple">>
<<wearItem "leash_purple" true>>
<</switch>>
<</if>>
<<set $player.location to "A Mysterious Mansion">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_interior.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress")>>
<div id="invframe" class="scrolltext">
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
Blind as you are it is all you can do to keep from stumbling as you follow behind <<=setup.getNpcName('npc_prostitute', 'first')>>. You can feel the ground change under your feet as you switch from pavement to carpet. You must be indoors. A few steps further and you hear a new voice speak the word "@@.npc_purple_mistress;Stop.@@"<br>
<br>
You stop, reflexively looking around despite your hooded blindness for the source of the authoritarian, but feminine, voice. You can sense her move closer, inspecting you. "@@.npc_purple_mistress;Interesting...@@" is all she says before she tugs on your hood and removes the blindfold, allowing you to see once again.<br>
<br>
<<=setup.getNpcName('npc_prostitute', 'first')>> stands next to you with the source of the voice before you. A dominatrix, her eyes gleaming with the wisdom of age and experience, looks down at the two of you with a slight smirk.<br>
<br>
Head to toe the dominatrix is clad in purple latex, only her intense eyes and full lips visible from amidst the tight, shiny material. A dominatrix corset and heels rounding things off to give her an intimidating height and stunning figure.<br>
<br>
As you watch, she clips a second leash to <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> collar and takes both of your leashes in hand.
<<case 'dom'>>
Stepping out of the car you are motioned forward by the stern chauffeur who motions you along a short walk. You gawk in surprise at the huge mansion rising in front of you, your obvious destination as you are led through the open front door, stopping in front of a purple-clad dominatrix who speaks a single word — "@@.npc_purple_mistress;Stop@@" to bring your blinded compatriot to a halt beside you.<br>
<br>
Head to toe the dominatrix is clad in purple latex, only her intense eyes and full lips visible from amidst the tight, shiny material. A dominatrix corset and heels rounding things off to give her an intimidating height and stunning figure.<br>
<br>
Her eyes gleam with the wisdom of age and experience, though her body is clearly in great shape. She smirks slightly as she takes a step forward and looks the two of you over. "@@.npc_purple_mistress;Interesting@@" she states before gently removing the blindfold from <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> hood.<br>
<br>
Your fellow prostitute blinks, taking in the scene, but remaining as silent as yourself thanks to her gag. Turning towards you <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> plucks <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> leash from your grasp before clipping its twin to the front of your collar.
<<default>>
ERROR, unknown npc_barkeeper.flags.prostitution.vip_unlock_game.style: <<=$npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<</switch>>
<br><br>
"@@.npc_purple_mistress;Welcome to my home,@@" the woman states with a smile. "@@.npc_purple_mistress;Follow.@@"<br>
<br>
You and <<=setup.getNpcName('npc_prostitute', 'first')>> both follow silently as commanded. You glance nervously at <<=setup.getNpcName('npc_prostitute', 'first')>> but, though she maintains her haughty facade, you get the feeling she is just as in the proverbial dark as you are.<br>
<br>
Led through the hallways of a large, ostentatious mansion you proceed down a narrow stairwell which opens into a stunningly apportioned, and regally purple, sex dungeon, complete with a raised throne beside which is chained a slender<<if $options.fem>>girl<<else>> but muscled <<if $fetish.sissy>>sissy<<else>>boi<</if>><</if>>. Collared and harnessed similar to yourself, but with a blank, doll-like expression, <<his>> large, hard cock on full display and kept hard and ready by a thick cockring and ball-stretcher.<br>
<br>
Unclipping your leashes she takes a seat atop her throne, smiling down at you as she pats her slave.<br>
<br>
"@@.npc_purple_mistress;So, it is my understanding from <<=setup.getNpcName('npc_barkeeper', 'first')>> that the two of you have been... difficult, of late. Fortunately I specialize in difficult <<if $fetish.sissy>>sissies<<else>>girls<</if>> and so, we are going to play a little game.@@" She smiles.<br>
<br>
<<printThought "Her smile reminds me of <<=setup.getNpcName('npc_manager', 'formal')>> only... somehow even LESS subtle...">><br>
<br>
[<<moveTo "event_prostitution_vip_unlock_7" "Listen to the rules." 180>>]
</div>/*#
#desc: prostitution vip unlock, game action menu
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "leash_purple" true>>
<<deleteItem "leash_purple">>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'dom'>>
<<addItem "ankle_cuffs_purple">>
<<wearItem "ankle_cuffs_purple" true>>
<</switch>>
<<if !setup.checkItemTypeTag('plug', ['hollow']) && setup.checkItemTypeWorn("plug")>>
<<set _plug = setup.getItemFromType("plug")>>
<<removeItem _plug true>>
<</if>>
<<set $scene.actions = {
"throne" : false,
"her_strap" : false,
"you_do" : false,
"gag_kiss" : false,
"whips" : false,
"hook" : false,
"xframe" : false
}>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_purple_mistress', 'nickname')>> leans back on her throne, seeming to relish the moment.<br>
<br>
"@@.npc_purple_mistress;The name of the game is "A <<if $fetish.sissy>>Sissy's<<else>>Girl's<</if>> Holes" and the rules are simple — when I give the word you will have several minutes to properly present yourselves, and your holes. When the time is up I will send my well-trained slave unto you. Points are scored based on how effectively your combined six <<if $fetish.sissy>>sissy<<else>>slutty<</if>> orifices are put to use.@@"
<<if $player.body_ref.vagina>>
She glances at you, "@@.npc_purple_mistress;I am afraid that your front hole would be a bit of an unequal advantage... so I shall not be counting it towards your score — though I am sure it is a delight to taste or use. We will repeat the exercise until the two of you have FULLY learned your lesson.@@"
<<else>>
She pauses for emphasis. "@@.npc_purple_mistress;We will repeat the exercise until the two of you have FULLY learned your lesson.@@"
<</if>>
<br><br>
"@@.npc_purple_mistress;Now, to make things fair...@@" She nods to her slave who moves towards the two of you holding a sack.<br>
<br>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
Kneeling down in front of <<=setup.getNpcName('npc_prostitute', 'first')>> <<he>> cuffs and locks her ankles together with a short chain, hobbling her.
<<case 'dom'>>
Kneeling in front of you <<he>> cuffs and locks your ankles together with a short chain, hobbling you.
<<default>>
ERROR, unknown npc_barkeeper.flags.prostitution.vip_unlock_game.style: <<=$npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<</switch>>
<br><br>
Rising to <<his>> feet, <<he>> unclips both of your leashes. Up close you are able to notice that the slave's face is not <<his>> face — rather it is a tight latex mask that covers all but <<his>> eyes to grant a doll-like facade, a slight distortion around <<his>> mouth and cheeks telling you that <<he>> is almost certainly gagged.<br>
<br>
<<if $scene.plug && !setup.checkItemTypeTag('plug', ['hollow'])>>
Ducking out of sight and moving around behind you, <<he>> removes the <<=setup.getItemName($scene.plug)>> from your rear. "@@.npc_purple_mistress;No cheating!@@" <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> states with a smile and a wink.<br>
<br>
<</if>>
"@@.npc_purple_mistress;There, now we are ready.@@" She announces as she surveys your mirror-twinned bondage — identical harnesses with one of you disarmed and the other hobbled, one with both holes forced open, the other gagged with a double ended phallus both penetrating and extending from their mouth. <<if $player.body_ref.penis>>Both of you sport raging erections<<else>>The both of you are dripping with excitement<</if>>, after a fashion. Her slave resumes <<his>> kneeling position next to her throne and she smiles. "@@.npc_purple_mistress;Round one begins... now.@@"<br>
<br>
<<printThought "Hmm, that's a bit cryptic, do I want to puzzle things out?">><br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Start the game..." 180 "<<set $scene.round = 0>><<set $scene.bonusHints=false>>">>]<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Start the game... with extra hints." 180 "<<set $scene.round = 0>><<set $scene.bonusHints=true>>">>]
</div>/*#
#desc: prostitution vip unlock, game action menu
#status: FINISHED 0.8.1.0
#ignore_spell: x
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.round += 1>>
<</if>>
<<if $scene.round > 20>>
<<moveTo "event_prostitution_vip_unlock_fail_1">>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
Round <<=$scene.round>><br>
<br>
<<if $scene.bonusHints>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub'>>
<<if !$scene.inspect_chest>>
<<printThought "Hmm, more items is always helpful for solving puzzles, I should examine that chest...">>
<<elseif !$scene.your_strapon && $scene.coplayer_mood >= 3 && !($player.body_ref.penis && !setup.checkItemTypeWorn("cage"))>>
<<printThought "More equipment means more options, I remember seeing a strap-on in that chest...">>
<<elseif !$scene.her_strapon>>
<<printThought "I remember seeing a strap-on in that chest, I bet <<=setup.getNpcName('npc_prostitute','first')>> would enjoy using that on me...">>
<<elseif !$scene.willingly_restrained && $scene.coplayer_mood >= 0>>
<<if $scene.actions.xframe>>
<<printThought "That X-Frame looks interesting...">>
<<else>>
<<printThought "I'm already bound but I wonder if I could convince <<=setup.getNpcName('npc_prostitute','first')>> to try out that X-Frame...">>
<</if>>
<<elseif $scene.coplayer_mood >= 5 && $scene.willingly_restrained && $scene.dom_plug>>
<<if $scene.inspect_bench>>
<<printThought "We're both ready and <<=setup.getNpcName('npc_prostitute','first')>> seems to trust me... we should take a ride on that bench...">>
<<else>>
<<printThought "Hmm, I should check out that bench...">>
<</if>>
<<elseif $scene.coplayer_mood < 5>>
<<if !$scene.actions.gag_kiss>>
<<printThought "A gag kiss might help break the ice...">>
<<elseif !$scene.actions.her_strap>>
<<printThought "I wonder if bending over for <<=setup.getNpcName('npc_prostitute','first')>> might advance my situation?">>
<<elseif !$scene.actions.you_do && $scene.coplayer_mood >= 0>>
<<printThought "I wonder if I doing <<=setup.getNpcName('npc_prostitute','first')>> might make her like me more?">>
<<else>>
<<printThought "<<=setup.getNpcName('npc_prostitute','first')>> still seems cross with me.. maybe if I let her whip me she'd forgive me some?">>
<</if>>
<</if>>
<<elseif $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom'>>
<<if !$scene.inspect_chest>>
<<printThought "Hmm, more items is always helpful for solving puzzles, I should examine that chest...">>
<<elseif !$scene.your_strapon && !($player.body_ref.penis && !setup.checkItemTypeWorn("cage"))>>
<<printThought "More equipment means more options, I remember seeing a strap-on in that chest...">>
<<elseif !$scene.her_strapon>>
<<printThought "I remember seeing a strap-on in that chest, I bet <<=setup.getNpcName('npc_prostitute','first')>> would enjoy using that on me...">>
<<elseif $scene.coplayer_mood >= 5 && $scene.willingly_restrained && ($scene.dom_plug || setup.checkItemTypeTag('plug', ['hollow']))>>
<<if $scene.inspect_bench>>
<<printThought "We're both ready and <<=setup.getNpcName('npc_prostitute','first')>> seems to trust me... we should take a ride on that bench...">>
<<else>>
<<printThought "Hmm, I should check out that bench...">>
<</if>>
<<elseif !$scene.willingly_restrained>>
<<if $scene.actions.xframe>>
<<printThought "That X-Frame looks interesting...">>
<<else>>
<<printThought "I bet letting <<=setup.getNpcName('npc_prostitute','first')>> bind me to that X-Frame would be interesting, and <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> would probably be impressed by the display of trust...">>
<</if>>
<<elseif !$scene.dom_plug && $scene.coplayer_mood >= 2>>
<<printThought "Hmm... I wonder if <<=setup.getNpcName('npc_prostitute','first')>> and I could work together and overpower the <<=ps(setup.getNpcName('npc_purple_mistress', 'nickname'))>> slave?">>
<<elseif $scene.coplayer_mood < 5>>
<<if !$scene.actions.gag_kiss>>
<<printThought "A gag kiss might help break the ice...">>
<<elseif !$scene.actions.her_strap>>
<<printThought "I wonder if bending over for <<=setup.getNpcName('npc_prostitute','first')>> might advance my situation?">>
<<elseif !$scene.actions.you_do>>
<<printThought "I wonder if doing <<=setup.getNpcName('npc_prostitute','first')>> might make her like me more?">>
<<else>>
<<printThought "<<=setup.getNpcName('npc_prostitute','first')>> still seems cross with me.. maybe if we kissed some more she'd forget about her grudge?">>
<</if>>
<</if>>
<<else>>
ERROR: unexpected scene style: <<=$npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<</if>>
<<else>>
<<if $scene.round > 15>>
<<hint $options "You need to fully equip the both of you, then gain your compatriots trust.">>
<<elseif $scene.round > 5>>
<<hint $options "You should investigate all your options.">>
<</if>>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "I'm stumped... (enable bonus hints)." 0 "<<set $scene.bonusHints=true>><<set $scene.round -= 1>>">>]
<</if>>
<br><br>
You are wearing naught save a pair of patent heels, a collar, a leather harness and a hood. Your mouth
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
is forced perpetually wide thanks to the large ring gag incorporated into your headpiece. Your rear hole is similarly "open for business," thanks to the large hollow plug occupying it. Finally, to complete your helpless predicament, your arms are uselessly bound behind your back in an armbinder, rendering them all but useless.
<<case 'dom'>>
filled by one half of a double-ended pecker gag, your ankles hobbled by cuffs connected by a short chain. <<if $scene.dom_plug || setup.checkItemTypeTag('plug', ['hollow'])>>Your lower hole is spread and inviting thanks to a large, hollow plug.<</if>>
<</switch>>
<br><br>
<<if $scene.your_strapon>>
Proudly protruding from your loins is
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
your <<getWordMyPenis>>, adorned with a cockring<<if $player.body_ref.balls>> and ball-stretcher <</if>>but useless in favour of a sheath that has you thicker, longer, and harder than nature could provide.
<<else>>
a large dildo, the thick other end rooted inside your <<getWordVagina>>.
<</if>>
<<else>>
a large, but realistic, dildo, and below that is your
<<if $player.body_ref.penis>>
secured <<getWordMyPenis false>>.
<<else>>
secured <<getWordVagina>>.
<</if>>
<</if>>
<<else>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
Your <<getWordMyPenis>> is <<if setup.calcErection() >>hard and dripping<<else>>limp<</if>>.
<<else>>
Your <<getWordVagina>> drips with anticipatory excitement.
<</if>>
<<else>>
Your
<<if $player.body_ref.penis>>
<<getWordMyPenis false>>
<<else>>
<<getWordVagina>>
<</if>>
is secured and locked, per usual.
<</if>>
<</if>>
<br><br>
You glance at your "co-player," <<=setup.getNpcName('npc_prostitute', 'first')>> and she looks
<<if $scene.coplayer_mood >= 5>>
lustily back at you, appearing ready to follow your lead and work with you, whatever your plan.
<<elseif $scene.coplayer_mood >= 3>>
at you with a measure of respect, it seems you've started to impress her a bit.
<<elseif $scene.coplayer_mood > 0>>
back with mild amusement, seemingly content to wait to see what you do next.
<<elseif $scene.coplayer_mood > -3>>
back at you with annoyance, clearly disinterested in cooperating.
<<else>>
back at you with dismissive scorn, having no respect for you or any ideas you might have.
<</if>>
Like yourself she is wearing heels, harness hood and collar,
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
but, instead of a matching armbinder, she has ankle cuffs and hobble chain locked to her legs. Half of a double-ended pecker gag extends from her mouth. <<if $scene.dom_plug>>A hollow plug the twin of your own has her rear hole gaping and available.<</if>>
<<case 'dom'>>
her arms pulled tightly behind her back in an armbinder, her mouth and rear gaping thanks to a combination of a ring gag and a large, hollow butt plug.
<</switch>>
<<if $scene.her_strapon>>
An impressive strap-on dildo sprouts from her harness, below which her
<<else>>
Her
<</if>>
own impressive <<getWordPenis false>> is kept securely restrained by a diabolic chastity cage, her testicles pulled low by a heavy steel ball-stretcher.<br>
<br>
You look around the dungeon and consider your options.<br>
<br>
<<if $scene.round < 5>>
<<printThought "She said the game is about properly presenting our <<if $fetish.sissy>>sissy<<else>>slutty<</if>> holes...">>
<<elseif $scene.round < 10>>
<<printThought "I need to figure out a way for <<=setup.getNpcName('npc_prostitute', 'first')>> and I to work together if we're going to get out of here...">>
<<else>>
<<printThought "If we're going to win <<=setup.getNpcName('npc_prostitute', 'first')>> and I need to cooperate in the perfect position...">>
<</if>>
<br><br>
<<if $scene.actions.throne>>
[@@.link_locked;You have already felt the consequences of foolishly approaching the throne, and resolve against doing so again.@@]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_throne" 'Approach <<=setup.getNpcName("npc_purple_mistress", "nickname")>> on her throne.' 120>>]<br>
<</if>>
<<if $scene.her_strapon>>
<<if $scene.actions.her_strap>>
[@@.link_locked;You have already bent over for <<=setup.getNpcName('npc_prostitute', 'first')>> and you doubt <<=setup.getNpcName("npc_purple_mistress", "nickname")>> will be interested in a rerun.@@]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_bottom" 'Bend over for <<=setup.getNpcName("npc_prostitute", "first")>>.' 120>>]<br>
<</if>>
<</if>>
<<if $scene.your_strapon || !setup.checkItemTypeWorn("cage")>>
<<if $scene.actions.you_do>>
[@@.link_locked;You have already done <<=setup.getNpcName('npc_prostitute', 'first')>>.@@]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_top" 'Try to mount <<=setup.getNpcName("npc_prostitute", "first")>>.' 120>>]<br>
<</if>>
<</if>>
<<if $scene.actions.gag_kiss>>
<<if $scene.coplayer_mood < 3>>
[<<moveTo "event_prostitution_vip_unlock_8_game_gagkiss" 'Approach <<=setup.getNpcName("npc_prostitute", "first")>> for another gag kiss.' 120>>]<br>
<<else>>
[@@.link_locked;You have already "gag kissed" <<=setup.getNpcName('npc_prostitute', 'first')>>.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_gagkiss" 'Try to gag kiss <<=setup.getNpcName("npc_prostitute", "first")>>.' 120>>]<br>
<</if>>
<<if $scene.look_around>>
<<if $scene.inspect_bench>>
[<<moveTo "event_prostitution_vip_unlock_8_game_mount" "Mount the bench." 120>>]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_bench" "Examine the bench." 120>>]<br>
<</if>>
<<if $scene.actions.whips>>
<<if $scene.coplayer_mood < 5 && $scene.actions.you_do && $scene.actions.her_strap && $scene.actions.gag_kiss>>
[<<moveTo "event_prostitution_vip_unlock_8_game_punish" "Submit to being whipped again." 120 "<<set $scene.flog=true>>">>]<br>
<<else>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub'>>
[@@.link_locked;You'd rather try something else than being flogged again.@@]<br>
<<else>>
[@@.link_locked;You can think of no reason to mess with the whips again.@@]<br>
<</if>>
<</if>>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_whips" "Examine the whips." 120>>]<br>
<</if>>
<<if $scene.your_strapon && $scene.her_strapon>>
[@@.link_locked;There is nothing else in the chest for your current situation.@@]<br>
<<else>>
<<if $scene.inspect_chest>>
[<<moveTo "event_prostitution_vip_unlock_8_game_dildos" "Examine the toy chest." 120>>]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_chest" "Examine the chest." 120>>]<br>
<</if>>
<</if>>
<<if $scene.actions.hook>>
[@@.link_locked;You are not going to make the mistake of using the hook a second time.@@]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_hook" "Attempt to use the hook." 120>>]<br>
<</if>>
<<if $scene.willingly_restrained>>
[@@.link_locked;You have already had fun with the x-frame.@@]<br>
<<elseif $scene.actions.xframe>>
[<<moveTo "event_prostitution_vip_unlock_8_game_frame" "Re-examine the X-Frame." 120>>]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_frame" "Examine the X-Frame." 120>>]<br>
<</if>>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_look" "Examine your surroundings." 120>>]<br>
<</if>>
<br>
<<if $scene.round > 2>>
Alternately you could wait for her to "release" her slave, but what will you attempt to do then?<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_surrender" "Surrender to <<him>>." 120>>]<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_overpower" "Try to overpower <<him>>." 120>>]<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_ambush" 'Try and signal <<=setup.getNpcName("npc_prostitute", "first")>> that you should join forces to ambush <<him>>.' 120>>]<br>
<</if>>
</div>/*#
#desc: prostitution vip unlock, failure
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
Exhausted and near your wits end you are trying to think of when to do next when <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> rises and shakes her head.<br>
<br>
"@@.npc_purple_mistress;I am sorry, <<if $fetish.sissy>>sissies<<else>>my dears<</if>> but it seems that you two have not learned how to get past your differences... and it is getting late.@@"<br>
<br>
She nods to her slave who ushers you out of the room to change and then go back to the car.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_fail_2" "Ride back." 600>>]
</div>/*#
#desc: ride home, change back
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "prostitutionVipChangeBack">>
<<deleteItem "harness_purple">>
<<if $player.flags.collar.owner == "">>
<<deleteItem "posture_collar_purple">>
<</if>>
<<deleteItem "pumps_purple">>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_prostitute', 'first')>> is pensive and silent on the ride back; seemingly not as angry as she was before, but clearly tired and disappointed at your combined failure.<br>
<br>
The two of you are dropped off in front of the Usual Place, your companion disappearing into the night as you get a text from <<=setup.getNpcName('npc_barkeeper', 'first')>>.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_fail_3" "Look at your message." 60>>]
</div>/*#
#desc: bartender messages you after you failed
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.npc_barkeeper;I just heard about your failure. I am both surprised and disappointed. <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> normally has such a high success rate... no matter. It would seem she is willing to try it again, so let me know when you're ready to take another shot.@@"<br>
<br>
[<<moveTo "room_usual_place_outside" "Put your phone away." 60 "<<set $currentcall = false>>">>]
</div>/*#
#desc: attempt to approach the Purple Mistress
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
You start to approach <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> on her throne and her gaze narrows.<br>
<br>
<<printThought "This doesn't seem like a good idea...">><br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_throne_punish" "Continue your advance." 120>>]<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Retreat and do something else." 120 "<<set $scene.round -= 1>>">>]
</div>/*#
#desc: punished for approaching the Purple Mistress
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.coplayer_mood -= 2>>
<<applyExperience 'bdsm' 10 'terrible' $SEEN_STRANGER>>
<<set $scene.actions.throne = true>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
You take another step towards the throne and the <<=ps(setup.getNpcName('npc_purple_mistress', 'nickname'))>> gaze narrows further. There is a blur and you suddenly find yourself on your hands and knees, a crop in <<=ps(setup.getNpcName('npc_purple_mistress', 'nickname'))>> hand. Held down by her slave you cry out through your gag as she lands a quick series of blows to your exposed bottom.<br>
<br>
"@@.npc_purple_mistress;Bad <<if $fetish.sissy>>Sissy<<else>>Girl<</if>>. You need to focus on your holes, not me, if you want to win this game.@@"<br>
<br>
Pulled to your feet you are escorted back to the centre of the room before the slave returns to <<his>> place at <<his>> mistress' side. <<=setup.getNpcName('npc_prostitute', 'first')>> has watched the entire display with amusement, shaking her head and giggling through her gag at your foolishness as the two of you prepare for another round.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Proceed to the next round." 120>>]
</div>/*#
#desc: let npc_prostitute peg you
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<<set $scene.coplayer_mood += 1>>
<<set $scene.actions.her_strap=true>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
Bending over you look over your shoulder and wiggle your ass at <<=setup.getNpcName('npc_prostitute', 'first')>>. She doesn't need a second invitation, almost rushing over, her artificial cock sliding <<if $scene.dom_plug || $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub' || setup.checkItemTypeTag('plug', ['hollow'])>>smoothly through the hollow centre of your plug, filling your ass to the max<<else>>deep into your cute rear<</if>>.<br>
<br>
You moan as you feel the pressure against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> build, rolling your hips in approval as <<=setup.getNpcName('npc_prostitute', 'first')>> starts to <<if $scene.coplayer_mood > 0>>gently<<else>>aggressively<</if>> thrust.<br>
<br>
Out of the corner of your eye, you note the slave rise from <<his>> position kneeling aside the Purple Mistress' throne.
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub'>>
Stepping towards you <<he>> takes hold of your head, holding you up and threading <<his>> cock through your ring-gag spread lips, balancing you in a chinese finger cuffs situation as your bound arms remain uselessly restrained behind your back.
<<else>>
Circling around behind <<he>> bends <<=setup.getNpcName('npc_prostitute', 'first')>> forward to get her armbinder-sheathed arms out of the way so that <<he>> can slide <<his>> cock into her plug-gaped ass.<br>
<br>
She moans, drooling onto your back through her gag, the power of <<his>> strokes sending shockwaves all the way through her and into your body.
<</if>>
<br><br>
The three-way continues for a minute or two before the Purple Mistress calls out "@@.npc_purple_mistress;Time!@@"<br>
<br>
Pulling free the slave helps you and <<=setup.getNpcName('npc_prostitute', 'first')>> back to your feet, leaving the two of you horny with lust as <<he>> returns to <<his>> position.<br>
<br>
The Mistress' slight smile indicates she enjoyed your display, but it wasn't enough to win the game.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Proceed to the next round." 120>>]
</div>/*#
#desc: try to peg npc_prostitute
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom'>>
<<if $scene.coplayer_mood < 0>>
<<set $scene.coplayer_mood += 2>>
<<elseif $scene.coplayer_mood < 3>>
<<set $scene.coplayer_mood += 1>>
<</if>>
<<else>>
<<if $scene.coplayer_mood < 0>>
<<set $scene.coplayer_mood -= 1>>
<<elseif $scene.coplayer_mood < 3>>
<<set $scene.coplayer_mood += 1>>
<</if>>
<</if>>
<<set $scene.actions.you_do = true>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub'>>
With your arms bound into uselessness there isn't really any way you could force your way on <<=setup.getNpcName('npc_prostitute', 'first')>>, but approaching her while making a humping motion at least gets your intent across.<br>
<br>
<<if $scene.coplayer_mood > 0>>
<<if $scene.coplayer_mood > 3>>
She doesn't even hesitate, quickly bending over and wiggling her rear obediently.
<<else>>
She seems to consider your offer, only bending over after glancing up towards the throne, recalling that, regardless of her personal feelings, you are technically here to do a job.
<</if>>
Carefully moving into position you thrust forward
<<if $scene.dom_plug>>
the hollow plug giving you a nice easy target to slide deep into her ass
<<else>>
penetrating her rear hole.
<</if>>
<br><br>
<<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>
<<if $scene.your_strapon>>
Swelled by its sheath the feel of her clamping down on your <<getWordMyPenis false>> is intense and you almost struggle to thrust, so tight does her ass feel around you.
<<else>>
Your <<getWordMyPenis false>> slides easily into her well-trained hole, though she makes a little disappointed whimper when you bottom out, obviously wanting more than you are able to provide. Despite this her ass feels great and you have to resist the urge to cum after only a few thrusts.
<</if>>
<<elseif $player.body_ref.penis>>
Your ever-hard strap-on does its job, and soon your imprisoned member is clinking against her own, sending her stretched testicles swinging.
<<elseif setup.checkItemTypeWorn("cage")>>
Your ever-hard strap-on does its job, and soon your belt is clinking against her cage, sending her stretched testicles swinging.
<<else>>
Your ever-hard double-ended strap-on does its job, and you eagerly hump away, the pleasure between the two of you rising with every thrust.
<</if>>
<br><br>
Continuing to fuck you glance towards the throne as the slave rises and approaches. As you continue to peg <<=setup.getNpcName('npc_prostitute', 'first')>> <<he>> moves behind your back, tilting you forward to get your bound arms out of the way so <<he>> can slide <<his>> hard cock through your hollow plug and deep into your ass.<br>
<br>
The three-way continues for a minute or two as you become practically an extension of the slave's cock with each of <<his>> powerful thrusts. Finally the Purple Mistress calls out "@@.npc_purple_mistress;Time!@@"<br>
<br>
Pulling free the slave helps you and <<=setup.getNpcName('npc_prostitute', 'first')>> back to your feet, leaving the two of you horny with lust as <<he>> returns to <<his>> position.<br>
<br>
The Mistress' slight smile indicates she enjoyed your display, but it wasn't enough to win the game.
<<if $scene.coplayer_mood > 3>>
Glancing at <<=setup.getNpcName('npc_prostitute', 'first')>> you see no discernible change in her mood, you will have to try other tactics if you want to gain further favour with her.
<<else>>
It does look like you have gained some favour with <<=setup.getNpcName('npc_prostitute', 'first')>> at least.
<</if>>
<<else>>
Glancing at you in annoyance she shakes her head, pushing you away when you approach closer. The fact that she has use of arms and you don't means you efforts are easily stymied.<br>
<br>
You teeter unbalanced and she takes advantage, pushing you to the ground and then mounting your herself. Your face pressed into the floor, your arms uselessly flailing in their armbinder you can do nothing but accept her strap-on penetrating deep into your ass, her caged cock slamming into you with each thrust.<br>
<br>
Out of the corner of your eye, you see the slave make <<his>> move, circling around behind your distracted counterpart and thrusting <<his>> hard cock into her ass.<br>
<br>
The added weight drives you into the ground, flattening you out as she slides full-depth into you and <<he>> starts fucking her in earnest.<br>
<br>
Struggling to breathe under their combined weight you are relieved to hear the Purple Mistress call "@@.npc_purple_mistress;Time!@@"<br>
<br>
Her expression narrows as she looks between you and <<=setup.getNpcName('npc_prostitute', 'first')>> it would seem that your clumsy attempt has only lowered her respect for you.
<</if>>
<<else>>
<<if $scene.coplayer_mood > 3>>
You merely have to look towards <<=setup.getNpcName('npc_prostitute', 'first')>> with a lusty glint in your eye and she is bending over to offer her cute butt for your use.
<<elseif $scene.coplayer_mood > 0>>
Stepping towards <<=setup.getNpcName('npc_prostitute', 'first')>> she is quite pliable, if not overenthusiastic, as you bend her over and prepare to fuck her ass.
<<else>>
You approach <<=setup.getNpcName('npc_prostitute', 'first')>> and she glares back in annoyance. With her arms restrained as they are, however, there is little she can do to resist as you bend her over and prepare to fuck her ass.
<</if>>
<br><br>
Lining up your
<<if $player.body_ref.penis>>
<<if $scene.your_strapon>>
sheathed member
<<elseif !setup.checkItemTypeWorn("cage")>>
<<getWordMyPenis false>>
<</if>>
<<else>>
ever-hard strap-on
<</if>>
with her plug-spread hole you slide in easily, <<if !setup.checkItemTypeWorn("cage") && !$scene.your_strapon>>your entrance prompting a moan that is cut off in mild disappointment when you bottom out leaving her less filled than she would clearly prefer<<else>>your entrance prompting a moan as you penetrate deep and fill her wide<</if>>.<br>
<br>
As you start to thrust you watch the slave rise from <<his>> position next to the throne and approach. Moving towards <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> front <<he>> lifts up her head and threads <<his>> hard cock through her ring-gag spread lips. Thrusting into her throat <<he>> matches your pace, the two of your double-penetrating her for several minutes before the Purple Mistress calls out "@@.npc_purple_mistress;Time!@@"<br>
<br>
<<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis && !$scene.your_strapon>>
You moan in denied lust as you slide out, the combination of your cockring and the deadening effect of the sheath meaning that your orgasm remains yet out of reach.
<<else>>
The two of you slide out of your mutual victim, helping <<=setup.getNpcName('npc_prostitute', 'first')>> back to her feet before <<he>> returns to <<his>> position kneeling next to the throne.
<</if>>
<br><br>
The Mistress' slight smile indicates she enjoyed your display, but it wasn't enough to win the game.
<<if $scene.coplayer_mood > 3>>
Glancing at <<=setup.getNpcName('npc_prostitute', 'first')>> you see no discernible change in her mood, you will have to try other tactics if you want to gain further favour with her.
<<elseif $scene.coplayer_mood > 0>>
<<=setup.getNpcName('npc_prostitute', 'first')>> is looking at you more favourably after your brief encounter.
<<else>>
Your aggressive take-chargedness seems to have somewhat blunted <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> recalcitrance and she is looking at you a measure of respect that did not exist previously.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Proceed to the next round." 120>>]
</div>/*#
#desc: look around the dungeon
#status: FINISHED 0.8.1.0
#ignore_spell: x
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.look_around = true>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
You look around the impressive dungeon. It is stocked enough for a dozen slaves, with cages and restraints aplenty, but you zero in on the handful of items that might be of use to your current situation.<br>
<br>
There is a rack stocked with a dizzying array of whips and floggers [<<moveTo "event_prostitution_vip_unlock_8_game_whips" "Examine the whips." 60>>]<br>
There is a raised "bench" that could be straddled, atop which sprouts a pair of dildos. [<<moveTo "event_prostitution_vip_unlock_8_game_bench" "Examine the bench more closely." 60>>]<br>
There is a beautiful mahogany chest.
<<if $scene.inspect_chest>>
[<<moveTo "event_prostitution_vip_unlock_8_game_dildos" "Look through the toy chest." 60>>]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_8_game_chest" "Open the chest." 60>>]<br>
<</if>>
There is a large hook hanging from the ceiling.
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub'>>
The hook reminds you of something you read where a girl used something similar to free herself from an armbinder. [<<moveTo "event_prostitution_vip_unlock_8_game_hook" "Attempt to use the hook." 60>>]<br>
<<else>>
You can think of no use for such a hook in your present situation.
<</if>>
<br>
There is a well-built, sturdy X-frame bondage rack. [<<moveTo "event_prostitution_vip_unlock_8_game_frame" "Examine the X-Frame." 60>>]<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Stop looking around and do something else." 60 "<<set $scene.round -= 1>>">>]
</div>/*#
#desc: first time examining the sex-toy chest
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.inspect_chest = true>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
You approach the chest.
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
At first your lack of usable arms stumps you, but after a couple of tries you manage to catch the lid with your knee and flip it open.
<<case 'dom'>>
The lid opens easily.
<</switch>>
<br><br>
Looking down you, find an array of sex toys and dildos.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_dildos" "Dig for something useful." 60>>]
</div>/*#
#desc: examine the dildo chest, equip yourself/npc_prostitute with strapon
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
<<if $scene.your_strapon && $scene.her_strapon>>
Although you see many items that could be fun to use, or have used on you, you don't think any of the remaining toys would be useful in your current situation.
<<else>>
<<if $scene.your_strapon>>
Having already equipped yourself the only remaining item that you think would be of use in your current situation is a dildo designed to mount to <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> harness.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_equip_her" 'Equip <<=setup.getNpcName("npc_prostitute", "first")>>.' 180>>]
<<elseif $scene.her_strapon>>
With <<=setup.getNpcName('npc_prostitute', 'first')>> already "packing" as it were the only item left of interest is
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
an intriguing contraption designed to enhance your cock, granting you greater girth and length thanks to a sheath while keeping you hard and on-display with a combination of a cockring and ball-stretcher.
<<else>>
the matching dildo that would fit to your harness.
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
a matching dildo that would fit over the front shield of your chastity belt.
<<else>>
a double-ended "strapless" strap-on dildo.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_equip_self" "Equip yourself." 180>>]
<<else>>
While there are a multitude of toys only two look of particular interest and use for your current situation,
<<if !setup.checkItemTypeWorn("cage")>>
a dildo designed to be mounted to the harness <<=setup.getNpcName('npc_prostitute', 'first')>> is wearing and
<<if $player.body_ref.penis>>
an intriguing contraption engineered to enhance your cock, granting you greater girth and length thanks to a sheath while keeping you hard and on-display with a combination of a cockring and ball-stretcher.
<<else>>
a double-ended "strapless" strap-on dildo.
<</if>>
<<else>>
a pair of identical dildos designed to be mounted to the harnesses you and <<=setup.getNpcName('npc_prostitute', 'first')>> are currently wearing.
<</if>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_equip_self" "Equip yourself." 180>>]<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_equip_her" 'Equip <<=setup.getNpcName("npc_prostitute", "first")>>.' 180>>]
<</if>>
<</if>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Do something else." 1 "<<set $scene.round -= 1>>">>]
</div>/*#
#desc: equip npc_prostitute with a strapon
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<<set $scene.coplayer_mood += 1>>
<<set $scene.her_strapon = true>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
"Disarmed" and mute it takes a bit of stomping to attract <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> attention, but she soon walks over and stands next to you to look down at the cornucopia of sex toys.<br>
<br>
You motion towards the dildo and she smiles, quickly grabbing it and mounting it to the front of her harness with a wide grin. Bouncing her hips sends her new cock swinging wildly and she titters through her gag, giving your ass a friendly squeeze before strutting back to where she was waiting in front of the throne. Spread and available thanks to your plug your ass hungers to feel her new appendage slide into you.
<<case 'dom'>>
Turning towards <<=setup.getNpcName('npc_prostitute', 'first')>> you signal for her to come over.
<<if $scene.coplayer_mood < 0>>
At first she tries to ignore you, but then she seems to think better of it, given her armbindered helplessness and she walks over. Looking down at the chest of sex toys she seems interested, though still somewhat wary of what you might do.
<<elseif $scene.coplayer_mood >= 3>>
She eagerly makes her way over, her eyes glittering as she looks down at the chest full of sex toys.
<<else>>
Curious more than obedient she walks over to stand beside you and look down at the chest full of sex toys.
<</if>>
<br><br>
You give her rear a friendly squeeze and then pick up the dildo, her expression really lighting up when you kneel down to attach it to the front of her harness.<br>
<br>
Wiggling her hips back and forth you narrowly avoid getting cock'd in the face before standing up and walking back towards the throne. The sight of her new cock has your ass quivering in anticipation of feeling it inside of you.
<</switch>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Do something else." 60 "<<set $scene.round -= 1>>">>]
</div>/*#
#desc: equip self with a strap-on on sheath
#status: FINISHED 0.8.1.0
#ignore_spell: g
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
<<addItem "penis_sheath">>
<<wearItem "penis_sheath" true>>
<<else>>
<<addItem "double_dildo">>
<<wearItem "double_dildo" true>>
<</if>>
<<else>>
<<addItem "strapon_purple">>
<<wearItem "strapon_purple" true>>
<</if>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub' && $scene.coplayer_mood < 3 && !$scene.her_strapon>>
<<set $scene.firstHerStrapon = true>>
<<set $scene.her_strapon = true>>
<<else>>
<<set $scene.firstHerStrapon = false>>
<</if>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
Disarmed as you are you have no choice but to attempt to summon assistance from <<=setup.getNpcName('npc_prostitute', 'first')>>.
<<if $scene.coplayer_mood < 0>>
More annoyed than interested she eventually walks over, glancing down at the chest and then back at you.
<<if $scene.firstHerStrapon>>
Ignoring your intended request she plucks a dildo from the chest and attaches it to her harness, laughing at your forlorn expression as she turns and walks away, her new appendage bouncing with each step.
<<else>>
Already sporting with a strap-on of her own she merely laughs at the implication she should help you be similarly equipped, continuing to chuckle through her gag as she walks away.
<</if>>
<<elseif $scene.coplayer_mood >= 3>>
<<set $scene.your_strapon = true>>
Almost running over with interest she immediately gets your meaning,
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
grabbing the penis sheath. With practiced expertise she slides your <<getWordMyPenis false>> into the sheath and closes the cockring and ball-stretcher around you. The sensation is quite interesting, your sheathed <<getWordMyPenis false>> swelling inside its clear chamber in excitement. She gives your sheathed cock a few strokes, an even more novel sensation that has you eager to try fucking something with your technologically "enhanced" member.
<<else>>
grabbing a double-ended "strapless" strap-on and sliding one end into you. You gasp softly and clench down, feeling the weight of your new enhancement pulling forward, the interior portion pleasantly rubbing against your g-spot.
<</if>>
<<else>>
attaching a dildo to the front of your harness and giving it a gentle kiss before rising back to her feet.
<</if>>
<<else>>
<<set $scene.your_strapon = true>>
Eventually walking over to stand next to you she appears to be thinking about your implied proposal that she help kit you out.
<<if $scene.firstHerStrapon>>
Thinking things over she first grabs a dildo of her own, attaching it to the front of her harness before finally showing pity on you and
<<else>>
Already equipped she smirks in amusement and then turns to you,
<</if>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
grabbing the penis sheath. With practiced expertise she slides your <<getWordMyPenis false>> into the sheath and closes the cockring and ball-stretcher around you. The sensation is quite interesting, your sheathed <<getWordMyPenis false>> swelling inside its clear chamber in excitement.
<<else>>
grabbing a double-ended "strapless" strap-on and sliding one end into you. You gasp softly and clench down, feeling the weight of your new enhancement pulling forward, the interior portion pleasantly rubbing against your g-spot.
<</if>>
<<else>>
Attaching its twin to your own harness.
<</if>>
<</if>>
<<case 'dom'>>
<<set $scene.your_strapon = true>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
It takes a bit of fiddling to get your <<getWordMyPenis false>> into the sheath and the cockring and ball-stretcher all into position. The sensation is quite interesting, your sheathed <<getWordMyPenis false>> swelling inside its clear chamber in excitement.
<<else>>
You're already wet and the double-ended "strapless" strap-on slides easily into you. You gasp softly and clench down, feeling the weight of your new enhancement pulling forward, the interior portion pleasantly rubbing against your g-spot.
<</if>>
<<else>>
Grabbing the dildo you find it easily, and securely, attaches to the front of your harness. Bouncing your hips you can't help but smile around your gag, having such an imposing cock is quite the powerful feeling.
<</if>>
<</switch>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Do something else." 60 "<<set $scene.round -= 1>>">>]
</div>/*#
#desc: examine the whip rack
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'dom'>>
<<set $scene.coplayer_mood -= 1>>
<<set $scene.actions.whips = true>>
<</switch>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
Seeing a rack of whips against one wall of the dungeon you walk over to check it out.<br>
<br>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
Your arms bound and useless there isn't much you could really do with a whip or flogger but the mere interest is enough to attract attention.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_punish" "Present yourself for punishment." 180>>]<br>
<<case 'dom'>>
You have barely reached out a hand to touch one of the dangling floggers when you feel someone behind you, slick rubber pressed against your back. You feel a crop pressing up against your chin and you freeze.<br>
<br>
"@@.npc_purple_mistress;Naughty girl... those aren't for you... at least, not to be used BY you...@@"<br>
<br>
You slowly retract your hand, fearful of what sort of punishment might be in store if you do not obey.<br>
<br>
"@@.npc_purple_mistress;Much better. Are you ready to get back to the game, <<if $fetish.sissy>>sissy<<else>>girl<</if>>?@@"<br>
<br>
You nod quickly and you can feel her no more. Turning around you are surprised to see her already sitting casually on her throne, a bemused smile on her face as you back away from the whips.<br>
<br>
Glancing towards <<=setup.getNpcName('npc_prostitute', 'first')>> your compatriot seems to smirk at your misfortune, your foolishness having seemingly cost you some respect in her eyes.<br>
<br>
"@@.npc_purple_mistress;Next round!@@" <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls out as you try to clear your head.<br>
<br>
<<printThought "How did she move so fast?...">><br>
<br>
<</switch>>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Do something else." 60>>]
</div>/*#
#desc: examine the whip rack
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions.whips = true>>
<<set $scene.flog = $scene.coplayer_mood <= 5>>
<<if $scene.flog>>
<<set _bdsm = 15 - $scene.coplayer_mood>>
<<applyExperience 'bdsm' _bdsm 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $scene.coplayer_mood += 2>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
You look at <<=setup.getNpcName('npc_prostitute', 'first')>>, then at the rack of whips and floggers, then back at her before nodding submissively.<br>
<br>
<<if $scene.flog>>
Your act of contrition causes her to pause, her eyes lighting up with evil interest as she walks over to take hold of a mean-looking, dragon's-tongue-style whip.<br>
<br>
Bending further you present your bare ass for correction, and the whip cracks smartly. You gasp through your gag, but take solace that you must surely be earning her trust with this offering.<br>
<br>
With each blow you moan through your gag, the leather cracking precisely as <<=setup.getNpcName('npc_prostitute', 'first')>> seems to be both taking out her frustrations while also demonstrating her skills.<br>
<br>
After half a dozen blows your legs are getting wobbly and <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> softly announces "@@.npc_purple_mistress;Time!@@"<br>
<br>
<<if $scene.coplayer_mood >= 5>>
The painful punishment at an end <<=setup.getNpcName('npc_prostitute', 'first')>> helps you back to your feet, her fingers tenderly brushing your sore bottom as her twinkling gaze tells you that she has accepted your apology.
<<else>>
Your punishment completed you are left to straighten back up as <<=setup.getNpcName('npc_prostitute', 'first')>> puts the whip back on its hook. Her eyes meet your own for a moment; your act of contrition seems to have done quite a bit to soften her mood, though you estimate you will need to do a bit more to fully earn her trust.
<</if>>
<<else>>
<<=setup.getNpcName('npc_prostitute', 'first')>> shakes her head, instead walking over to rub you tenderly. It seems that the grudge she once held against you is all but gone, and that she no longer has any interest in punishing you.
<</if>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Do something else." 60>>]
</div>/*#
#desc: attempt to use the X-frame
#status: FINISHED 0.8.1.0
#ignore_spell: x
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions.xframe = true>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
You approach the X-frame, sturdy and intimidating the restraints look designed to close automatically, which means just stepping aboard would likely be enough to see you totally helpless...<br>
<br>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
...If you arms weren't already restrained behind your back in your armbinder. Still, you could try restraining <<=setup.getNpcName('npc_prostitute', 'first')>> in it, surely <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> wouldn't own such a device if she didn't want it to be used, and your compatriot would look quite fetching spread and restrained...<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_frame_use" 'Try to get <<=setup.getNpcName("npc_prostitute", "first")>> up onto the device.' 180>>]
<<case 'dom'>>
The thought sends a shiver of excitement through your body. From the overall vibe you're sure that <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> enjoys seeing her playthings all helplessly restrained, but do you really want to so willingly surrender yourself?<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_frame_use" "Step up onto the device." 180>>]
<</switch>>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Do something else." 60 "<<set $scene.round -= 1>>">>]
</div>/*#
#desc: use/attempt to have npc_prostitute use the x-frame, sex with her and slave
#status: FINISHED 0.8.1.0
#ignore_spell: x
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.coplayer_mood < 0>>
<<set $scene.coplayer_mood -= 1>>
<<else>>
<<changeHorny 30>>
<<set $scene.willingly_restrained = true>>
<<if $scene.coplayer_mood <= 3>>
<<set $scene.coplayer_mood += 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
<<if $scene.coplayer_mood < 0>>
You try to signal for <<=setup.getNpcName('npc_prostitute', 'first')>> to step up onto the X-frame, but she appears far too experienced with such devices and, obviously not trusting you not to be laying a trap, does not even budge from where she is standing. Your laughable failure at such a weak ploy seems to have further reduced her opinion of you.
<<else>>
<<if $scene.coplayer_mood > 3>>
You signal for <<=setup.getNpcName('npc_prostitute', 'first')>> to step up onto the X-frame and she eagerly obeys. Her eyes twinkle as she smiles around her gag and steps up onto the frame, spreading her legs as far as her hobble chain will allow.<br>
<br>
Stepping carefully into position atop the device with her legs as spread as her hobbles will allow the restraints snap one, two, three, four around her ankles and wrists. The second wave of clicks happens even faster, locking her upper arms, thighs and waist into position to almost fully immobilize her. Eager to reward her obedience you drop to your knees.
<<else>>
You try to signal for <<=setup.getNpcName('npc_prostitute', 'first')>> to step up onto the X-frame. She seems to weigh the options for quite some time before coming to the conclusion that, perhaps, you have a good idea and this might be what is necessary to please <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> and "win" you two the game.<br>
<br>
Stepping carefully into position atop the device with her legs as spread as her hobbles will allow the restraints snap one, two, three, four around her ankles and wrists. The second wave of clicks happens even faster, locking her upper arms, thighs and waist into position to almost fully immobilize her. Wanting to reward her effort, and please <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> you drop to your knees in front of her.
<</if>>
<br>
<<if $scene.her_strapon>>
Presented with the choice of <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> steel-caged cock and her protruding strap-on you momentarily hesitate before deciding that, with this being a game of<<if $fetish.sissy>> "sissy's<<else>> "girl's<</if>> holes" the option that will see your throat filled is probably the correct one. Shuffling forward you thread the dildo through your gag, leaning in until your nose is against her harness and your chin is brushing her caged member.<br>
<br>
As you start to bob your head back and forth
<<else>>
Her large, throbbing cock is securely wrapped in the steel bands of her cruel chastity cage. Yet there is yet enough flesh exposed for you to extend your tongue past your gag to lick and suck. Her sweat is salty and strong and you are just transitioning to suckling on her large, stretched balls when
<</if>>
the slave appears behind to lift your hips and start fucking your ass through your hollow plug.<br>
<br>
You moan, helplessly held up by <<his>> strong grip, continuing to lick and suck until <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls out "@@.npc_purple_mistress;Time!@@" You almost sigh as you are pulled clear and the X-frame restraints snap open to free <<=setup.getNpcName('npc_prostitute', 'first')>>. You had really hoped this might be enough to notch a victory and yet you can't help but think of the fact that <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> ass remained unfilled, and this was a game about<<if $fetish.sissy>> "sissy's<<else>> "girl's<</if>> holes..." <br>
<br>
You try to clear your mind and prepare for the next round. Glancing over at your "partner" in this game you at least gain solace in that your actions seem to have impressed her in your combination of cleverness and that you did not "take advantage" of her entrapment.
<</if>>
<<case 'dom'>>
<<set $scene.willingly_restrained = true>>
You step up onto the X-frame, forced to spread your legs to the limits of their hobble chains to get them into position. Taking a deep breath, you lean back, your weight on the frame the trigger that sets off a quad of restraints to snap shut around your wrists and ankles. They pull taut and then another round of restraints completes the job, locking around your waist, thighs and upper arms.<br>
<br>
<<if $scene.coplayer_mood < 0>>
<<=setup.getNpcName('npc_prostitute', 'first')>> having quietly watched the whole time she walks over with a mischievous glint in her eyes. Standing in front of you she examines your predicament more closely for a moment before turning around and bending over.<br>
<br>
<<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>
Coming up from below she lets your <<if $scene.your_strapon>>sheathed<</if>> cock slide between her cheeks, grinding back and forth in a matter that is more tormentingly teasing than pleasurable.
<<else>>
<<if $scene.your_strapon>>
Coming up under your strap-on to grind
<<else>>
Grinding
<</if>>
against <<if $player.body_ref.penis && setup.checkItemTypeWorn("cage")>>your <<if setup.isCage()>>cage<<else>>chastity belt<</if>><<elseif setup.checkItemTypeWorn("cage")>>your chastity belt<<else>>you<</if>>. Her efforts are pure taunting, but that doesn't stop you from moaning into your gag and pushing against her in response.
<</if>>
<br><br>
<<=setup.getNpcName("npc_prostitute","first")>> must have been too focused on keeping her balance while grinding against you because she seems totally surprised when the slave appears in front of her, holding her head gently as <<he>> slides <<his>> cock through her ring gag.<br>
<br>
Surprise or not she appears to appreciate the attention, bouncing back and forth as <<he>> fucks her throat as you, helplessly bound, become practically a helpless observer, teased, tormented, and silently thinking that it is such a shame that both your AND her rear holes are presently unfucked...
<<else>>
<<if $scene.coplayer_mood >= 3>>
<<=setup.getNpcName('npc_prostitute', 'first')>> has been watching you this whole time and now, seeing your helpless position, she practically skips over and presents her ass.<br>
<br>
<<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>
Backing up into you it is a simple thing for your <<if $scene.your_strapon>>sheathed<</if>> member to slide into her plug-gaped rear and she is soon bouncing back and forth.<br>
<br>
You moan, the plug makes her feel so tight and good, you can only imagine how spread and filled she must feel with each plunging thrust as her plug and hole spread together to accommodate you.
<<else>>
<<if $scene.your_strapon>>
Backing up into you it is a simple thing for your strapped-on dildo to slide into her plug-gaped rear and she is soon bouncing back and forth.
<<elseif setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>Caged<<else>>Belted<</if>> as you are there is little she can do save grind against <<if $player.body_ref.penis>>your <<getWordMyPenis>><<else>>you<</if>>, but she seems to be genuinely trying to make it pleasurable for you.
<<else>>
Despite the offer you can do little but grind fitfully, and she soon gives up in frustration at your inability to provide the penetration she clearly desires.
<</if>>
<</if>>
<<else>>
<<=setup.getNpcName('npc_prostitute', 'first')>> has been watching you this whole time and now, seeing your helpless position, she makes her way over, turns around, and bends over in front of you.<br>
<br>
<<if !setup.checkItemTypeWorn("cage") && $player.body_ref.penis>>
Seeming more interested in her pleasure than your own she backs up into you, your <<if $scene.your_strapon>>sheathed<</if>> member to sliding into her plug-gaped rear as she moves back and forth in an attempt to hit her prostate.
<<else>>
<<if $scene.your_strapon>>
Seeming more interested in her pleasure than your own she backs up into you, your strapped-on dildo sliding into her plug-gaped rear as she moves back and forth in an attempt to hit her prostate.
<<elseif setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>Caged<<else>>Belted<</if>> as you are there is little she can do save grind against <<if $player.body_ref.penis>>your <<getWordMyPenis>><<else>>you<</if>>. With penetration off the table she focuses on trying to shift the hollow plug enough to rub her prostate.
<<else>>
Seeming more interested in her pleasure than your own she backs up into you and grins against you in frustration, clearly frustrated that you aren't "equipped" for penetration.
<</if>>
<</if>>
<</if>>
<br><br>
She isn't at it for long when the slave appears, taking the other end and sliding <<his>> hard cock through her gag and into her inviting mouth. She seems quite happy to bounce back and forth between the two of you, though you cannot help but feel sad that your ass is currently unfucked.
<</if>>
<br><br>
Finally <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls out "@@.npc_purple_mistress;Time!@@" You look up hopefully, but it seems that this is merely another round, your efforts once again having failed to secure a "victory." The bondage frame snaps open as the slave returns to <<his>> position.<br>
<br>
Despite everything it seems like your selfless act has at least impressed your compatriot, <<=setup.getNpcName('npc_prostitute', 'first')>> seems to look upon you with more respect as she straightens back up and walks with you to the centre of the room.
<</switch>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Prepare for the next round." 60>>]
</div>/*#
#desc: examine hook/attempt to use to remove armbinder (if wearing)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
You approach the hook dangling in one corner of the dungeon. Sturdy and attached to a chain you figure it is intended for suspension.<br>
<br>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
Remembering something you read once you consider if, perhaps you might be able to use the hook to remove your armbinder.<br>
<br>
<<printThought "Is removing restraints really what will impress <<=setup.getNpcName('npc_purple_mistress', 'nickname')>>?">><br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_hook_use" "Try to remove the armbinder with the hook." 180>>]<br>
<<case 'dom'>>
Try as you might, you cannot think of a use for the hook.<br>
<br>
<</switch>>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Do something else." 60 "<<set $scene.round -= 1>>">>]
</div>/*#
#desc: attempt to use the hook to remove your armbinder and get stuck and fucked for your troubles
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.coplayer_mood -= 2>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_STRANGER>>
<<if $scene.her_strapon>>
<<changeHorny 20>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'oral' 15 'terrible' $SEEN_STRANGER>>
<<set $scene.actions.hook = true>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
While a bit tricky to manage since you can't see behind yourself to tell what you're doing you manage to bend forward and grope about with your armbinder-bound arms until you locate the dangling hook. As difficult as it was to find the hook you are able to attach yourself with ease, your armbinder clicking into place as the hook catches on the ring at the tip.<br>
<br>
Tilting forward and pulling you come to a quick realisation that this was a futile, if not, in fact, terrible, idea. The armbinder does not shift at all, it seems there is a snug cuff around your wrists that you hadn't previously felt that is taking most of the load.<br>
<br>
Trying to right yourself is when you make the next discovery — you seem unable to free yourself, your struggles only causing your shoulders to ache as you are pulled further into a strappado. Looking up you catch a quick glimpse of the slave's cock before it is streaking through your spread lips and past your gag to probe your throat.<br>
<br>
Restrained as you are you can't really do anything to resist, and a moment later you get action from the other end as <<=setup.getNpcName('npc_prostitute', 'first')>> takes advantage of your predicament to
<<if $scene.her_strapon>>
fuck your ass with her strap-on.
<<else>>
grab your hips and grind against your bare ass.
<</if>>
<br>
Stuck and partially suspended you spend a few minutes getting it from both ends in punishment for your mistake before <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls "@@.npc_purple_mistress;Time!@@"<br>
<br>
Reaching up the slave wrenches your shoulders a little further so as to release you from the hook, righting you before returning to <<his>> rest position kneeling next to <<his>> mistress' throne. Staggering slightly and wincing at the lingering pain in your shoulder you walk back to the centre of the room.<br>
<br>
Glancing over at your "compatriot" it would appear that watching you so foolishly entrap yourself has caused <<=setup.getNpcName('npc_prostitute', 'first')>> to lower her opinion of you.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 180>>]
</div>/*#
#desc: surrender to <<=setup.getNpcName('npc_purple_mistress', 'nickname')>>' slave
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 20>>
<<if $scene.round > 15>>
<<set $scene.coplayer_mood += 10>>
<<else>>
<<set $scene.coplayer_mood += 1>>
<</if>>
<<changeHorny 20>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
Deciding to cut right to the chase you move in front of the throne and bend over, presenting your <<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub' || $scene.dom_plug || setup.checkItemTypeTag('plug', ['hollow'])>>plugged and gaping<<else>>cute<</if>> bottom to <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> and her slave.<br>
<br>
Her slave wastes no time moving into action, you almost lose your balance as <<he>> slams into your hole with <<his>> large, hard cock.<br>
<br>
Noting some movement to your side you glance over to see that <<=setup.getNpcName('npc_prostitute', 'first')>> has decided to join in on the fun, positioned similarly to yourself. The slave needs no encouragement as <<he>> switches back and forth between the two of you, thrusting hard and deep for a few strokes in your ass, then hers, then back in yours once more.<br>
<br>
All three of you are soon panting in excitement, <<=setup.getNpcName('npc_prostitute', 'first')>> mewing in want through her gag whenever she is not the one being fucked. Eventually <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> brings an end to the fun with the call of "@@.npc_purple_mistress;Time!@@" to end the round.<br>
<br>
Instantly the slave withdraws, and resumes <<his>> kneeling position next to the throne as you and <<=setup.getNpcName('npc_prostitute', 'first')>> straighten and try to recover from the brief, energetic pounding.<br>
<br>
<<if $scene.round > 15>>
Your cooperative submission appears to have softened <<=setup.getNpcName('npc_prostitute', 'first')>> and she smiles back at you, her expression a bit tired, but welcoming. You're pretty sure she's ready to work with you to finish things.
<<elseif $scene.coplayer_mood <= 0>>
You glance over at <<=setup.getNpcName('npc_prostitute', 'first')>>; she definitely seems to have enjoyed herself, the quick ass-fuck having softened her a bit and she no longer looks at you with quite her previous degree of annoyance.
<<else>>
While you and <<=setup.getNpcName('npc_prostitute', 'first')>> both enjoyed the quick ass-fuck the brevity and lack of overall "progress" has the afterglow fading fast as you both turn your attention towards the next round.
<</if>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 1>>]
</div>/*#
#desc: try to overpower <<=setup.getNpcName('npc_purple_mistress', 'nickname')>>' slave on your own
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom'>>
<<if setup.getTotalValue("martial_arts") >= 15>>
<<if $scene.coplayer_mood < 3>>
<<set $scene.coplayer_mood += 2>>
<</if>>
<<else>>
<<set $scene.coplayer_mood -= 1>>
<</if>>
<<else>>
<<if $scene.coplayer_mood <= 0>>
<<set $scene.coplayer_mood += 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
Understanding a bit of the cadence of "rounds" you try to turn the tables. You wait patiently with your ass presented until you hear the slave move towards you and then spin around.<br>
<br>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
Of course once you whip around you realise how utterly silly this plan was. With your arms bound into uselessness behind your back you can't exactly do much other than try to trip <<him>>, and the attempt to do such only sends you off balance.<br>
<br>
Catching you mid-fall <<he>> spins you to the floor, grabbing you by the head and lifting you to your knees before jamming <<his>> cock through your ring-gag spread lips and fucking your throat.<br>
<br>
Looking on in amusement at your misfortune <<=setup.getNpcName('npc_prostitute', 'first')>> titters through her gag, the sound drawing the attention of the slave who pauses with <<his>> balls pressed against your chin to look up at her.<br>
<br>
With a commanding glance and gesture <<he>> motions her over, pulling <<his>> saliva-slick cock out of your mouth and jamming it up into her ass as <<he>> holds her close, thrusting up with such vigour she actually lifts off the ground.<br>
<br>
Still kneeling you try to catch your breath, seemingly forgotten until <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls out "@@.npc_purple_mistress;Time!@@"<br>
<br>
The slave returns to the throne and <<=setup.getNpcName('npc_prostitute', 'first')>> staggers slightly as she recovers from the vigour of the brief, but frenetic ass-fucking.
<<if $scene.coplayer_mood <= 0>>
<<set $scene.coplayer_mood += 1>>
Interestingly her feelings towards you seem to have softened slightly, perhaps having learned a lesson from the swift reprisal that met her amusement at your misfortune.
<</if>>
<<case 'dom'>>
<<if setup.getTotalValue("martial_arts") >= 15>>
Whipping around quickly you take the slave by surprise, grabbing hold of <<his>> harness and flipping <<him>> through the air onto the ground. Dumped on <<his>> back the impact knocks the air out of <<him>>. <<=setup.getNpcName('npc_prostitute', 'first')>> and <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> are equally shocked by your swift overpowering of <<him>> and the later starts to rise only to settle back down when you straddle <<him>> and slam your ass down onto <<his>> cock.<br>
<br>
In control, for once, you savour the <<if $scene.dom_plug || setup.checkItemTypeTag('plug', ['hollow'])>>very filling combination of <<his>> cock and your hollow plug<<else>>sensation of <<his>> large cock<</if>>, rolling your hips and moaning through your gag in pleasure.<br>
<br>
<<if $scene.coplayer_mood > 0>>
<<=setup.getNpcName('npc_prostitute', 'first')>> is obviously enticed by your show of prowess. She moves closer and you reach out to finger her hollow plug, wiggling it inside of her with one hand as you continue to ride your mounted conquest.
<<else>>
<<=setup.getNpcName('npc_prostitute', 'first')>> merely looks on in surprise, though you can tell your impressive display of prowess has made her a bit more respectful of your capabilities.
<</if>>
<br><br>
You can feel the pressure in your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> building towards release when <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls out "@@.npc_purple_mistress;Time!@@" You desperately want to indulge in a few more thrusts, but you glance over to find she is holding a stun baton, reminding you not to push your luck. You slowly rise back to your feet.<br>
<br>
The slave pops up as well, glancing at you with a measure of fearful respect before scurrying back to <<his>> position kneeling next to the throne. <<He>> shares a glance with <<his>> Mistress to confirm that <<he>> is fine and she stows the stun baton back in its secret compartment in her throne.
<<else>>
Whipping around you reach out to grab the slaves harness but misjudge the effect of your ankle hobbles. What had been intended as a control grip turns into one of desperation as you start to fall, holding onto <<his>> harness with one hand in desperation.<br>
<br>
Rather than hold you up <<he>> guides you to the floor, landing on top of you remarkably gently and pinning you to the floor. Clearing your grip with ease <<he>> lets off just enough to flip you over before slamming back down cock-first into your exposed ass.<br>
<br>
Taking a measure of revenge for your attempted assault <<he>> pounds you hard and deep, the full weight of <<his>> body pressing you into the floor with each thrust to leave you panting and breathless by the time <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls "@@.npc_purple_mistress;Time!@@"<br>
<br>
Rising to <<his>> feet, <<he>> doesn't even glance back at you as <<he>> returns to <<his>> position next to the throne. Catching your breath, you slowly rise back to your feet, <<=setup.getNpcName('npc_prostitute', 'first')>> looking on the whole time, clearly amused at your failure.
<</if>>
<</switch>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 60>>]
</div>
/* note: position is this: bondage-anal-sex-show.jpg *//*#
#desc: try to enlist npc_prostitute's help in overpowering <<=setup.getNpcName('npc_purple_mistress', 'nickname')>>' slave
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.coplayer_mood >= 2 && $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom' && setup.getTotalValue("martial_arts") >= 15>>
<<applyExperience 'bdsm' 18 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'bondage' 15 'unbelievable' $SEEN_STRANGER>>
<<if $scene.coplayer_mood >= 2 && $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom'>>
<<if $scene.dom_plug>>
<<applyExperience 'bdsm' 10 'very' $SEEN_STRANGER>>
<<set $scene.coplayer_mood -= 2>>
<<else>>
<<applyExperience 'anal' 15 'unbelievable' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $scene.firstAmbush = !$scene.dom_plug>>
<<if $scene.firstAmbush>>
<<changeHorny 20>>
<<set $scene.dom_plug = true>>
<</if>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
<<if $scene.coplayer_mood >= 2>>
Through some miracle of <<if $fetish.sissy>>sissy <</if>>coordination you manage to wordlessly relay to <<=setup.getNpcName('npc_prostitute', 'first')>> your intent to ambush the slave when <<he>> next comes for the two of you.<br>
<br>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
Arms bound as they are you have no choice but to put most of your faith in <<=setup.getNpcName('npc_prostitute', 'first')>>, the two of you waiting for the slave to make <<his>> way over to your pair of proffered <<if $fetish.sissy>>sissy <</if>>butts.<br>
<br>
The slave makes towards <<=setup.getNpcName('npc_prostitute', 'first')>> to help.<br>
<br>
To be fair, she does her best, jumping on top of <<him>> and trying to hold <<him>>, but the strength differential is too much. You gawk at <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> flexibility as <<he>> pushes her legs up behind her shoulders then clipping her ankle chain to the back of her collar to keep her folded and exposed.<br>
<br>
With <<=setup.getNpcName('npc_prostitute', 'first')>> rendered helpless in mere moments the slave turns towards you. With your arms restrained, you were already near helpless, but <<he>> makes sure, attaching your ankles to the end of your armbinder to form a hogtie.
<<case 'dom'>>
<<if setup.getTotalValue("martial_arts") >= 15>>
The slave approaches, heading towards <<=setup.getNpcName('npc_prostitute', 'first')>> and her offered ass with <<his>> cock hard and ready. You wait until <<he>> has slid into her before howling for her to make her move and jumping into action.<br>
<br>
With her arms bound there isn't really much that <<=setup.getNpcName('npc_prostitute', 'first')>> could do, but she makes the most of things, employing well-trained sphincter muscles to clench down and hold the slave inside her ass as you grapple onto <<his>> back.<br>
<br>
With your ankles hobbled you can't assert proper back control, but you manage to get an arm under <<his>> chin and are certain you've got the upper hand. That is, until a million volts roars through your body.<br>
<br>
<<printThought "If only I had remembered <<=setup.getNpcName('npc_purple_mistress', 'nickname')>>...">><br>
<br>
Such thoughts are too late, now, as she stands over your twitching form holding a stun baton as her slave finishes putting <<=setup.getNpcName('npc_prostitute', 'first')>> in an ankle to armbinder hogtie before switching <<his>> attention to you.<br>
<br>
<<=setup.getNpcName('npc_purple_mistress', 'nickname')>> already back on her throne as if nothing had happened she watches with a slight smile as her slave sets to work on you. Barely starting to recover from the paralysing shock you are unable to resist as <<he>> threads your legs back under your arms and behind your shoulders, attaching your ankle chain to the back of your collar to bind you in an exposed, vulnerable position.
<<else>>
Waiting for the slave to come into range you leap into action. Turning towards <<him>> you go for a leap-tackle. Somewhat stymied by your ankle hobbles you still manage to grab onto <<him>> with both arms, howling through your gag for <<=setup.getNpcName('npc_prostitute', 'first')>> to help as <<he>> immediately starts to struggle free.<br>
<br>
With her arms bound there isn't really much that <<=setup.getNpcName('npc_prostitute', 'first')>> could do so she merely charges into you, sending all three of you tumbling to the ground. From there things go swiftly downhill and before you know it your legs have been pulled up, under your arms and behind your shoulders, your ankle chain attached to the back of your collar to leave you nigh-helpless and completely exposed.<br>
<br>
The slave turns towards <<=setup.getNpcName('npc_prostitute', 'first')>> who is still struggling to get back to her feet without the use of her arms. Quickly dragging her back down <<he>> attaches her ankles to the armbinder to place her in a hogtie, turning her so that she has a good view of your own bound state.
<</if>>
<</switch>>
<br><br>
<<if $scene.firstAmbush>>
Leaving you to watch helplessly <<he>> retrieves something else from near the throne before striding back towards the two of you.<br>
<br>
Both of your attentions are transfixed by the new addition to <<his>> cock. Glistening with lube from shaft to tip it is the thick through-sleeve covering the lower half of <<his>> cock that makes things really intimidating. After a few moments, you realise it is the twin of the hollow anal plug that <<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom'>><<=setup.getNpcName('npc_prostitute', 'first')>>is<<else>>you are<</if>> presently wearing.<br>
<br>
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
All you can do is watch and drool as <<he>> approaches <<=setup.getNpcName('npc_prostitute', 'first')>> and begins sliding <<his>> augmented cock into her exposed rear.<br>
<br>
Whether <<he>> is moving slow out of kindness or merely to prolong the inevitability of <<his>> insertion you are treated to the long, gradual process of her ass spreading to accommodate first <<his>> already substantial girth, and then the mammoth thickness that is the combination of <<his>> cock and the hollow plug. The whole time <<his>> latex masked doll face remains neutral, lending a strange surrealism to the whole scene.<br>
<br>
Clearing the widest part of the plug her ass sucks in the final inch, hips bouncing against her flesh as her caged cock twitches and leaks pre-cum in excitement at the intense filling.<br>
<br>
Reflecting on the hollow plug gaping your own ass you can't help but feel a little jealous, even if the thought of going from zero to that degree of "double full" is a bit intimidating.<br>
<br>
Rather than thrusting <<he>> merely remains at depth, staring into <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> eyes until she submissively turns away.
<<case 'dom'>>
The slave approaches you and you look up with a mix of fear and lust.<br>
<br>
You are glad for the copious lube, and <<his>> slow pace, as <<he>> steadily works <<his>> cock into your hole, the neutral expression of <<his>> doll-like latex mask adding a degree of surrealism to the process. You can't help but gasp around your gag as you jump from "merely" <<his>> thick cock to the added girth of the plug, the silicone sheath around the hard flesh core stretching you wide as <<he>> works <<his>> way deeper.<br>
<br>
You feel the widest part of the plug slide into you, your ass sucking in the remainder of it, along with <<his>> cock so that <<his>> hips are pressed hard against your body. You moan.<br>
<br>
<<printThought "Oh fuck, so full!">><br>
<br>
At depth <<he>> does not thrust or fuck, merely staying fully inside of you as <<his>> cock slightly twitches in your depths, your ass "double full" with cock and plug.<br>
<br>
"@@.npc_purple_mistress;Time@@" <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> states and <<he>> pulls out. You let out a moan, the hollow plug remaining behind inside your ass.
<</switch>>
<br><br>
Efficiently freeing the two of you from your contorted positions the slave returns to <<his>> position beside the throne.
<<else>>
Though <<his>> face is as unreadable as ever thanks to <<his>> doll-like latex mask you get the sense the slave is annoyed at you, once again, attempting to overpower <<him>>.<br>
<br>
Rather than fuck either you or <<=setup.getNpcName('npc_prostitute', 'first')>> as you have come (though, alas, not CUM) to expect <<he>> retrieves a short flogger and sets to work painting both of your exposed rears red.<br>
<br>
Alternating between the two of you <<he>> does not stop until both of you are whimpering through your gags and <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls out "@@.npc_purple_mistress;Time@@" in a somewhat dispassionate tone.<br>
<br>
Releasing you both from your bonds the slave returns to <<his>> position next to the throne. <<=setup.getNpcName('npc_prostitute', 'first')>> looks over at you with annoyance, this tact was clearly a bad idea and she definitely begrudges you convincing her to do something that resulted in such a painful punishment for no gain.
<</if>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 180>>]
<<else>>
You try to enlist <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> assistance to overpower the slave, but she seems disinterested in helping, leaving you to attempt your ambush alone.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_overpower" "Continue." 60>>]
<</if>>
</div>/*#
#desc: share a gagkiss with npc_prostitute
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 5>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub'>>
<<if $scene.coplayer_mood >= 3>>
<<applyExperience 'oral' 13 'little' $SEEN_STRANGER>>
<<elseif $scene.coplayer_mood > 0>>
<<applyExperience 'oral' 13 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'oral' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $scene.actions.gag_kiss = true>>
<<set $scene.coplayer_mood += 1>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
Walking in front of <<=setup.getNpcName('npc_prostitute', 'first')>> you flutter your eyes and attempt a "come hither" motion with your tongue before leaning forward in hopes of sharing a gag kiss.<br>
<br>
<<if $scene.coplayer_mood >= 3>>
Her eyes light up and she enthusiastically steps forward, using her (free) arms to pull you close as she slides the protruding end of her double dildo gag through your ring-gag spread lips. Your lips pressed against her mask in a facsimile of a kiss as you split the length of the gag licking and sucking and humping against her as she returns the favour by using one arm to hold you tight whilst the other gropes your ass and wiggles your hollow plug.
<<elseif $scene.coplayer_mood > 0>>
<<=setup.getNpcName('npc_prostitute', 'first')>> gets your meaning and leans forward. The scene might be comical if it weren't for all the kinky gear you're wearing, her almost hesitant until your lips are pressed against her mask, the double ended penis gag neatly shared between the two of you.<br>
<br>
Like a bashful date at the end of the night her hands slowly reach for you, pulling you closer as your kinky kiss becomes more passionate and you swoon a little in her grasp.
<<else>>
Although initially disinterested she finally succumbs to your pleading gaze. Holding you by the back of the head with one hand she roughly thrusts the protruding end of her double-dildo gag into your mouth.<br>
<br>
You suck and lick in return to encourage her as she LITERALLY face-fucks you even more aggressively. You catch a glimpse of movement out of the corner of your eye...
<</if>>
<<case 'dom'>>
Approaching <<=setup.getNpcName('npc_prostitute', 'first')>> you pull her close, threading the outer end of your double-dildo gag through her ring gag and pressing your face into her in a perverted riff on a kiss.<br>
<br>
<<if $scene.coplayer_mood >= 3>>
She eagerly snuggles up to you, giving the cock protruding from the front of your gag a little head-bobbing suck before pressing close and humping up against you.
<<elseif $scene.coplayer_mood > 0>>
She accepts you without resistance and soon after gets properly into the swing of things and sucking on the double-ended cock gag shared between the two of you.
<<else>>
<<set $scene.coplayer_mood += 1>>
Thanks to her armbinder there isn't really anything <<=setup.getNpcName('npc_prostitute', 'first')>> could do stop you, but she soon seems to warm to your kinky kiss.<br>
<br>
Her hard gaze softens as you pull her closer and the two of you softly suck and lick the two ends of the double-dildo gag, each enjoying the kinky kiss more the longer it lasts.
<</if>>
<</switch>>
<br><br>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'sub' && $scene.coplayer_mood <= 0>>
<<set $scene.coplayer_mood += 1>>
Too distracted by thrusting her gag in and out past your lips <<=setup.getNpcName('npc_prostitute', 'first')>> doesn't notice the slave moving into position until <<he>> is directly behind her.<br>
<br>
From the way her eyes go wide and she lunges forward you can only surmise that <<his>> cock has just plunged into her ass.<br>
<br>
Her harsh expression melts slightly and she moans through her gag as <<his>> strong arms pulls all three of you together, gently fucking her ass while you and she share a special perverted kiss.<br>
<br>
Things finally break off as <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls out "@@.npc_purple_mistress;Time.@@"<br>
<br>
<<=setup.getNpcName('npc_prostitute', 'first')>> lets out a small gasp as the slave slides out of her ass to return to <<his>> position next to the throne, and she is almost reluctant to separate from your kinky-kissing embrace. Finally separating she looks at you somewhat anew, the scene combining to act as a bit of "positive reinforcement" to her cooperating with you as well as granting some possible hints as to how you might actually "win" this game.<br>
<br>
<<printThought 'Hmm, that was three of our holes "filled" if I could only arrange it so that something was fucking my ass as well...'>>
<<else>>
Surprisingly the slave never moves to join the two of you, and it is only after a few minutes of gagged making out that <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls out "@@.npc_purple_mistress;Time@@" in a soft, pleased voice.<br>
<br>
Somewhat surprised at the shift in tone you glance over, wondering if perhaps you might have won the round? She merely smiles back at you, obviously pleased by your display even if victory remains out of reach.<br>
<br>
<<printThought 'Huh, that was different, I wonder if that was a hint as to what we need to do to "win?"'>>
<</if>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 180>>]
</div>/*#
#desc: examine the bondage bench for the first time
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.inspect_bench = true>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
Your gaze is drawn to a padded bench that seems to occupy a prime location in the dungeon, aligned across from the throne itself.<br>
<br>
Made of purpleheart and upholstered with purple leather the bench is narrow, designed to be straddled like a horse, high enough that even in heels ones feet would not quite touch the ground. Of course the real item of note is the pair of dildos sticking up from the bench. The top of the bench divided into three "panels" with a dildo rising up from each junction. As you look closer you realise that they are positioned so that two people could be perched and, if they were facing one another, impaled nose to nose.<br>
<br>
Looking closer you note that the dildos are not built directly into the bench, but threaded up through snug holes. Noting the enclosed base of the bench you have a feeling there is some sort of motor concealed within to power the twin dongs. Looking from the bench to the throne you note that <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> has unconsciously slid forward on her throne in excitement giving you the feeling this bench may well be the secret to victory...<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_mount" "Straddle the bench." 180>>]<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "Do something else." 60 "<<set $scene.round -= 1>>">>]
</div>/*#
#desc: attempt to mount the bondage bench (victory path)
#status: FINISHED 0.8.1.0
#ignore_spell: x
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<<applyExperience 'anal' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 15 'very' $SEEN_STRANGER>>
<<if $scene.coplayer_mood >= 5 && $scene.dom_plug && $scene.willingly_restrained>>
<<applyExperience 'oral' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom' && $scene.coplayer_mood >= 0>>
<<set $scene.coplayer_mood += 1>>
<</if>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
<<if $scene.coplayer_mood >= 5>>
As you carefully attempt to mount the bench without the use of your arms <<=setup.getNpcName('npc_prostitute', 'first')>> appears to help. Sensing your intent she lifts you up and helps guide you down so that one of the dildos rising from the bench slides through the gaping hole of your anal plug and deep into your ass.<br>
<br>
You take a moment to adjust to this fresh, but pleasant, fullness before nodding for her to assume the mirror position atop the dildo that rises in front of you.<br>
<br>
<<if $scene.willingly_restrained>>
Nodding solemnly to signal that she trusts you that this is not some sort of trap she vaults up onto the end of the bench. Shuffling forward she bends her knees then uses her arms to arrange things so that the chain linking her ankles runs over top of the bench, holding her legs bent double, but allowing her to shuffle further forward.<br>
<br>
<<=setup.getNpcName('npc_prostitute', 'first')>> somewhat precariously balanced you find yourself holding your breath as she slides forward, especially when, after taking a deep breath, and looking at you for encouragement, she pushes herself up to attempt to mount the dildo.<br>
<br>
<<if $scene.dom_plug>>
Her ass permanently gaping thanks to the hollow plug she is wearing it takes only two attempts before the dildo slips inside. She lets out a gasp as she drops onto the bench, the dildo nice and deep and helping to stabilize her position.<br>
<br>
She meets your gaze, your eyes twinkling with desire, and vicarious pride at her accomplishment. You flutter your eyelashes in invitation and she leans in, the dildo protruding from her face sliding through your O-ring spread lips until your hooded faces are pressed together as if in a kiss.<br>
<br>
Her hands wrap around your body, pulling you closer <<if $player.body.breastsize[0] > 0>>your breasts pressing against hers<<else>>her breasts pressing into you<</if>>. You lean into her, wishing that you were out of the armbinder, not because you would deny its wonderful restriction, but so that you could return her embrace.<br>
<br>
The dildo inside your ass begins to move. Your eyes snap open and meet her gaze, confirming in an instant that the dildo inside her has come alive as well. Just as quickly the shock fades, both of you sucking on the shared double-dildo gag as you enjoy the feeling of the artificial cock buzzing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
<<printThought "This... this is how a <<if $fetish.sissy>>sissy's<<else>>girl's<</if>> holes should be treated, filled and fucked... if only our <<if $player.body_ref.vagina>>five<<else>>four<</if>> holes could each be serving real cock this would truly be perfect...">><br>
<br>
The vibrations speed up and the cock begins to thrust in and out of your ass. <<=setup.getNpcName('npc_prostitute', 'first')>> clutches you tighter in a mix of passion and concern as to her precarious position. Stretching out your legs to the ground you attempt to provide as much stability as you can, not wanting anything to interrupt this wonderful moment.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_9" "Enjoy the ride." 600>>]
<<else>>
Unfortunately it seems to stubbornly flex and wiggle out of the way, sliding between her ass cheeks or between her legs, but never properly penetrating her rear hole. Eventually, arms shaking with strain, she is forced to get up, landing on the bench with a thud, but no dildo inside of her.<br>
<br>
She looks up at you as if in apology.<br>
<br>
<<printThought "If only she had a hollow plug like I do, then it would be simplicity itself to slide the dildo into her already gaping hole...">><br>
<br>
Unfortunately that hollow plug is already safely rooted in your ass, a "gift" from way back on the limo ride to the mansion. Surely, given the expansive stock of the dungeon there must be a way to get another one stuffed up your compatriots hole? You do not have long to ponder before <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls "@@.npc_purple_mistress;Time@@" her tone is almost... encouraging? You take it as confirmation that you are on the right track as the slave appears to lift the two of you off the bench.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 1>>]
<</if>>
<<else>>
<<=setup.getNpcName("npc_prostitute","first")>> seems to consider the option for a while, even looking for a moment to be mentally figuring out how to properly mount the bench with her ankle hobbles before finally deciding against it.<br>
<br>
Doing the mental geometry yourself you start to understand her hesitancy — to make it far enough onto the bench for the dildo to mount herself on the dildo as its twin has impaled you she would be forced to bend her knees up, the chain running over the top of the bench to leave her in a precarious — and possibly inescapable — position.<br>
<br>
You surmise that you need to do something to demonstrate that she can trust you not to be leading her into a "bondage trap" before she would be willing to make the attempt.<br>
<br>
The impasse draws out until <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls "@@.npc_purple_mistress;Time.@@" She sounds disappointed, as if watching someone trying to open a door while failing to disable the deadbolt first.<br>
<br>
<<printThought "I feel so close, she trusts me, but I just need to somehow demonstrate that I'm not trying to trick her into bondage...">><br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 1>>]
<</if>>
<<else>>
Carefully you attempt to mount the bench, a normally simple feat made quite a bit trickier due to your being unable to use your arms. After a couple close, teetering calls you manage to make it up and balanced only to be stymied by a fresh problem.<br>
<br>
With your toes barely brushing the floor there is no way for you to push yourself "up" high enough to mount the dildo that rises up in front of you, the best you can do is scooch closer, bending it forward slightly as you rub against it<<if $player.body_ref.penis>> with your own<<if $player.body.penissize[0] < 4>>, far smaller<</if>>, <<getWordMyPenis>><</if>>.<br>
<br>
Glancing towards <<=setup.getNpcName('npc_prostitute', 'first')>> you make puppy-dog eyes as you try to entice her to assist you.<br>
<br>
<<if $scene.coplayer_mood >= 3>>
She appears amenable to the idea, walking over and helping you up before guiding the dildo easily through the centre hole of your gape-inducing anal plug.<br>
<br>
You moan through your gag, swaying as the full weight of your body forces the dildo all the way into your ass. Shuddering slightly you look over at <<=setup.getNpcName('npc_prostitute', 'first')>> once again, tilting your head towards the second dildo centimetres in front of you on the bench to encourage her to join you.<br>
<br>
<<if $scene.willingly_restrained>>
Though you previously managed to convince her to bind herself at your command this time she hesitates. You mew in frustration at her reluctance, but it does no good, it seems you still need to build your rapport if you are to convince her to join you upon the bench.
<<else>>
She looks at you with clear suspicion. Despite the trust you've build it would appear that you need to demonstrate in some way that you are not trying to "trap" her in a precarious position before you'll have a chance of getting her up on the bench with you.
<</if>>
<br><br>
Several minutes pass as the standoff lingers before <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls "@@.npc_purple_mistress;Time@@" and the slave appears to easily lift you off the bench and place you back on the ground.
<<elseif $scene.coplayer_mood >= 0>>
Wandering over she looks over the situation before deciding to tease you instead. With one hand she gives the bench-mounted dildo a handjob whilst her other sneaks around behind to finger you through your gaping plug.<br>
<br>
Several minutes pass and <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls "@@.npc_purple_mistress;Time@@" in a somewhat resigned tone.<br>
<br>
While she failed to help you before <<=setup.getNpcName('npc_prostitute', 'first')>> does demonstrate a minor kindness by helping you off the bench so that you don't fall.
<<else>>
Though she glances in your direction she ends up turning away, seeming to have no interest in assisting you at this moment.<br>
<br>
Several minutes pass and <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls "@@.npc_purple_mistress;Time@@" in a somewhat resigned tone.<br>
<br>
Wish a sigh of your own you shuffle backwards off the bench.
<</if>>
<br><br>
<<printThought "If only she trusted me more...">><br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 1>>]
<</if>>
<<case 'dom'>>
Hooking a finger through <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> collar you lead her towards the bench that occupies such a prized place in the dungeon.<br>
<br>
<<if $scene.coplayer_mood >= 5>> /% Note: can't hit lvl 5 trust without her being able to peg you and thus equipped with strap-on %/
The hand in her collar is a mere formality, though one she appears to enjoy, as she dutifully follows you like a trained pet.
<<if $scene.willingly_restrained>>
You start to help her up onto the bench and she does not hesitate to obey. The trust built by you binding yourself for her on the X-frame holds firm and you soon have her slid forward to where her caged cock is pressed against the equally, if not larger, dildo rising up from the bench. Combined with her strap-on it makes for a somewhat comical traffic jam of penis, but you quickly help lift her up and slide the bench-dildo through the gaping hole of her plug.<br>
<br>
Settling her weight she looks down at you and smiles around her gag, clearly pleased at the feeling of being filled, as well as grateful for the added stability being thus impaled gives her atop the bench.<br>
<br>
It's your turn now and you hurry to the other end of the bench, hopping up and then scooting forward, forced to bend your knees and run your ankle hobble chain over top of the bench to continue your advance. The result is a somewhat precarious position as you lose all contact with the ground, but your arms are free and you feel stable enough as you shuffle forward.<br>
<br>
Reaching the dildo on your side of the bench presents a fresh problem as you have to very carefully raise yourself up and guide it into your ass if you are to match the position already enjoyed by <<=setup.getNpcName('npc_prostitute', 'first')>>.
<<if $scene.dom_plug || setup.checkItemTypeTag('plug', ['hollow'])>>
Your ass nicely gaping thanks to the hollow plug you are wearing, it takes only two attempts before the dildo slips inside. You let out a moan as you drop onto the bench, the dildo nice and deep, stretching you even wider while also helping to stabilize your position.<br>
<br>
<<=setup.getNpcName('npc_prostitute', 'first')>> meets your gaze, your eyes twinkling with desire, and pride at your mutual accomplishment. She licks her gag-spread lips in invitation and you lean in, the dildo protruding from your face sliding through her O-ring gag lips until your hooded faces are pressed together as if in a kiss.<br>
<br>
Reaching out you wrap your hands around her body, sneaking under the armbinder to clutch her close, <<if $player.body.breastsize[0] > 0>>your breasts pressing against hers<<else>>her breasts pressing into you<</if>>. She leans into you and you feel her strain against the armbinder, as if wishing she could return your embrace.<br>
<br>
The dildo inside your ass begins to move. Your eyes snap open and meet her gaze, communicating in an instant that the dildo inside her has come alive as well. Just as quickly the shock fades, both of you sucking on the shared double-dildo gag as you enjoy the feeling of the artificial cock buzzing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
<<printThought "This... this is how a <<if $fetish.sissy>>sissy's<<else>>girl's<</if>> holes should be treated, filled and fucked... if only our <<if $player.body_ref.vagina>>five<<else>>four<</if>> holes could be serving real cock this would truly be perfect...">><br>
<br>
The vibrations speed up and the cock begins to thrust in and out of your ass. You clutch <<=setup.getNpcName('npc_prostitute', 'first')>> tighter in a mix of passion and concern as to your own precarious position. Responding to your fear she seems to stabilize, her feet on the ground acting as support for the both of you, allowing you both to savour this wonderful moment.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_9" "Enjoy the ride." 600>>]
<<else>>
Unfortunately this is where things fall apart. Try as you might, you cannot seem to get it to slide into you, the slippery cock bending out of the way or merely sliding between your cheeks rather than stuffing your ass as you so desire.<br>
<br>
<<printThought "Damn, if only I had a hollow plug like <<=setup.getNpcName('npc_prostitute', 'first')>>. She got hers back in the limo, there has to be some way to get one stuffed in my ass as well, right?">><br>
<br>
Your arms start to tremble from the effort of holding yourself up off the bench and you are forced to give up, squeezing with your thighs lest you fall you hear <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> call "@@.npc_purple_mistress;Time.@@" Appearing next to the bench the slave lifts the two of your off the bench and back to the ground.<br>
<br>
<<printThought "Damn, so close, if only <<he>>'d shove a nice gaping plug in my ass instead of just fucking me with that meat monster of <<his>>.">><br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 60>>]
<</if>>
<<else>>
You start to help her up onto the bench only for her to hesitate. You grok her reluctance in a moment — restrained as she is once she is atop the bench she will be night helpless, her armbinder meaning that she will be unable to even stop herself from falling.<br>
<br>
Thinking to assuage her fears and demonstrate that everything is quite safe you hop up onto the bench yourself. It is only when you have folded your legs up, your ankle hobble chain running over the top of the bench to allow you to move forward, that you realise your mistake.<br>
<br>
You try to back up only for the chain to bind and for you to almost fall — you appear to be stuck atop the bench, and thus completely unable of helping <<=setup.getNpcName('npc_prostitute', 'first')>> up.<br>
<br>
Realising your predicament she rubs against your leg in comfort, an almost sweet gesture but one that does not really help at this juncture.<br>
<br>
A few moments later you hear <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> call "@@.npc_purple_mistress;Time.@@" Appearing next to the bench the slave nudges your compatriot out of the way before easily lifting you up and off.<br>
<br>
With a sigh you walk back to in front of the throne, <<=setup.getNpcName('npc_prostitute', 'first')>> following at your heels like a puppy that knows it has been bad.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 1>>]
<</if>>
<<else>>
<<if $scene.coplayer_mood >= 3>>
She follows behind you obediently, standing next to you in front of the bench with a measure of excitement as she waits for you to make the next move.<br>
<br>
Given that the armbinder robs her of the use of her arms she will be of little help getting up onto the bench so you had best attend to her first before worrying about yourself.<br>
<br>
<<if $scene.willingly_restrained>>
Having been there when you restrained yourself against the X-Frame and thus put her in the "controlling" position she should trust that you aren't attempting to merely entrap her and yet... she just does not seem to trust you enough in general to willingly get up on the bench.<br>
<br>
You try to convince her to have more confidence in you, but gagged communication is a challenge. Without words you will need to show by your actions that she can trust you. That conclusion reached you hear <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> call "@@.npc_purple_mistress;Time@@" and you walk back to in front of the throne.
<<else>>
You try to help her up, but she hesitates. Gagged as she is there's no way to be certain, but she seems concerned of being trapped in such a precarious position. You try to communicate that there is nothing to fear, but it is no use. Without some prior proof that she can trust you when it comes to bondage it seems she is unwilling to do her part in getting up onto the bench.<br>
<br>
<<printThought "Perhaps if I could somehow put myself at her mercy she would trust me in this situation?">><br>
<br>
You hear <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> call "@@.npc_purple_mistress;Time@@" and you walk back to in front of the throne.
<</if>>
<<elseif $scene.coplayer_mood >= 0>>
Somewhat reluctantly, she follows. Looking upon the bench as she stands next to you she glances towards you and raises an eyebrow, as if puzzled how, exactly you expect to use the bench given the bondage the two of you are currently in.<br>
<br>
You try to get her to mount the bench, but she resists, still not trusting you overmuch. Finally, in frustration, you get up on the bench yourself to show that there is nothing to fear. Figuring out that you need to bend you knees and run your ankle chain over top of the bench to get close to the dildo near the middle of the bench you have shuffled all the way up to the dildo before you realise a problem.<br>
<br>
Attempting to reverse course causes the chain between your ankles to bind and you almost take a tumble. Squeezing your thighs for dear life you steady yourself and curse into your gag — there's no way <<=setup.getNpcName('npc_prostitute', 'first')>> can get up without your assistance and now you're stuck. You sigh, waiting a minute or so until <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls "@@.npc_purple_mistress;Time.@@"<br>
<br>
Frustrated at your failure you take a minor solace in the fact that <<=setup.getNpcName('npc_prostitute', 'first')>> looks a bit ashamed as the slave lifts you off the bench and sets you back down on the ground.<br>
<br>
<<printThought "Perhaps she will be more compliant in the future?">><br>
<<else>>
Struggling slightly she seems to have no interest in following you but, with her arms still in the armbinder, she does not really have a choice. Standing next to the bench you are forced to keep a firm grip on her collar lest she scamper away.<br>
<br>
You attempt to guide her up onto the bench, but without her providing even minimal cooperation the effort is futile. Frustrated you accidentally release your grasp on her collar and she scampers away faster than your hobbled ankles will let you follow.<br>
<br>
"@@.npc_purple_mistress;Time!@@" <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> calls out in obvious annoyance at your failed display.<br>
<br>
<<printThought "I may be dressed as the dom, but without a willing sub that doesn't mean much...">>
<</if>>
<br><br>
[<<moveTo "event_prostitution_vip_unlock_8_game_root" "On to the next round." 60>>]
<</if>>
<</switch>>
</div>/*#
#desc: prostitution vip unlock game victory
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
Hugged together, filled and fucked atop the bench you and <<=setup.getNpcName('npc_prostitute', 'first')>> let out <<if $fetish.sissy>>sissy<<else>>girlish<</if>> mews of pleasure, sucking lustily on either end of your shared penis gag while enjoying every phallic thrust of the dildo into your spread and plugged rear holes.<br>
<br>
Caught up in the moment you just enjoy the sensation of being double-filled in tandem with a fellow <<if $fetish.sissy>>sissy<<else>>girl<</if>>. The only distraction comes when you decide to bob your head, or <<=setup.getNpcName('npc_prostitute', 'first')>> hers, either way the result is the double-dildo gag face-fucking you both. Such distractions quickly fill the two of you with depraved delight, and mews of pleasure reverberate through the gag. When your eyes meet, the moment becomes even more intense as you silently sync up, your heads sway back and forth almost hypnotically, violently — but eagerly — forcing the double-dildo up and down your throats.<br>
<br>
You aren't sure how long you remain like that, hugging, sucking and being ass-fucked atop the wonderful bench with your new <<if $fetish.sissy>>sissy<<else>>girly<</if>> friend, but you are suddenly interrupted by the loud *CLICK* of, was that a camera?<br>
<br>
Without letting the gag slip free you both look to the side to find <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> standing about a metre away. Her slave at her side holding an old-fashioned style camera <<he>> snaps another photo of your <<if $fetish.sissy>>sissy<<else>>girly<</if>> predicament as she beams with pride and starts to clap.<br>
<br>
"@@.npc_purple_mistress;Oh bravo! This! This is how a pair of <<if $fetish.sissy>>sissies<<else>>girls<</if>> should act around one another. None of that acrimony or jealousy, just lovely <<if $fetish.sissy>>sissy<<else>>girly<</if>> lust. You aren't the first pair of misbehaving sluts referred to my ministration, but it never ceases to bring me joy to see my patients transformed and improved by my programme.@@"<br>
<br>
Your faces may be hidden by your hoods, but there's no disguising the full body-blush that blooms between the straps of your harness on your bare skin as both of you reflect with shame on the misbehaviour that brought you here. It seems so silly now, your conflict, when the two of you could have better spent that time and energy being better <<if $fetish.sissy>>sissy <</if>>prostitutes for <<=setup.getNpcName('npc_barkeeper', 'first')>>.<br>
<br>
<<=setup.getNpcName('npc_purple_mistress', 'nickname')>> steps closer, her latex-gloved hand tracing fireworks of pleasure over your skin as she comforts the two of you. "@@.npc_purple_mistress;There, there, the past is the past. Just promise me that you'll both be good little <<if $fetish.sissy>>sissies<<else>>girls<</if>> in the future.@@"<br>
<br>
You both nod, a motion made quite interesting by the double-dildo gag you still share.<br>
<br>
<<=setup.getNpcName('npc_purple_mistress', 'nickname')>> smiles and moves back to stand next to her slave. "@@.npc_purple_mistress;Wonderful! Now, if the two of you have enjoyed your little fun I think there's someone here that needs some thanks for all the HARD work <<he>> put into your training. Do a good job and you'll earn a treat as well.@@" Her hand holding, but unable to fully wrap around, the slave's swelled, stretched testicles tells you exactly what sort of delicious treat she has in mind. The two of you quickly nod once again; as nice as it is to share your double-dildo gag the thought of <<his>> big juicy meatstick is even more enticing.<br>
<br>
She smiles and, after placing the camera to one side, <<he>> moves in to help the two of you off the bench.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_10" "Continue." 600>>]
</div>/*#
#desc: prostitution vip unlock, aftercare playtime
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom'>>
<<removeItem 'hood_purple' true>>
<<deleteItem 'hood_purple'>>
<<removeItem 'cock_gag_double_purple' true>>
<<deleteItem 'cock_gag_double_purple'>>
<<else>>
<<removeItem 'ring_gag_purple' true>>
<<deleteItem 'ring_gag_purple'>>
<</if>>
<<applyExperience 'oral' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'penis' 15 'terrible' $SEEN_STRANGER>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "The Purple Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mansion_dungeon.png" $scene.prostitute_image setup.charImage("npc_purple_mistress","npc_purple_mistress") setup.charImage("generic","npc_purple_slave")>>
<div id="invframe" class="scrolltext">
Rather than merely lifting the two of you off the bench, the doll-faced slave produces a second armbinder,
<<switch $npc_barkeeper.flags.prostitution.vip_unlock_game.style>>
<<case 'sub'>>
pulling <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> arms behind her back into the same position you have been enduring. To complete the twinning, your ankles are pulled up and cuffed and hobbled.
<<case 'dom'>>
untangling your arms from their passionate hug to pull them behind your back into the same position <<=setup.getNpcName('npc_prostitute', 'first')>> has had since you dressed her in the limo. To complete the twinning, her ankles are pulled up, cuffed and hobbled to match your bondage.
<</switch>>
<br><br>
<<=setup.getNpcName('npc_purple_mistress', 'nickname')>> steps in to lend a hand in, along with the thrusting dildo and your clenched thighs, keeping the two of you balanced atop the bench as the slave sets about unstrapping your gags.<br>
<br>
Gags removed, but hoods still in place to leave you and <<=setup.getNpcName('npc_prostitute', 'first')>> looking even more like wide-eyed <<if $fetish.sissy>>sissy <</if>>twins <<he>> lifts you each easily up and off. Happily the dildo comes with you, thrust deep just before <<he>> lifts you up and remaining locked in your plug, buzzing and filling you deep and wide.<br>
<br>
Still working the kinks out of your jaw you do not degrade the moment with words, merely sharing a lusty glance with your fellow <<if $fetish.sissy>>sissy<<else>>girl<</if>>, delighted that you are able to enjoy such a fun, filled bondage predicament together.<br>
<br>
With you both safely on the floor the doll-faced slave steps back and <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> nods. "@@.npc_purple_mistress;Now then, show my slave how much you appreciate <<his>> part in your training.@@"<br>
<br>
You and <<=setup.getNpcName('npc_prostitute', 'first')>> smile and drop to your knees as one, racing in a friendly manner to be the first to taste <<his>> hard cock.<br>
<br>
Your little "race" could only be described as ending in a photo finish, but such concerns fall away before the task at hand as you both eagerly spread your lips and set to work worshipping <<his>> large, stiff member. The lack of use of your arms makes it a bit of a challenge, but also improves things; after all, what is a <<if $fetish.sissy>>sissy<<else>>girl<</if>>, really, but a cute pair of holes meant to service cock?<br>
<br>
Service cock you do, each of you licking and sucking with all of your considerable combined skills, alternating who gets to go high and deepthroat <<his>> meat-missile and who gets to bend low and suck on <<his>> full, steamy-hot balls.<br>
<br>
You can taste how close <<he>> is to release with each delicious drop of sweat and pre-cum, but though you can feel <<his>> thighs tense and <<his>> cock shudder between your lips, <<he>> does not dispense that delicious <<if $options.fem>>dick<<else>>man<</if>>-milk for which you thirst.<br>
<br>
Not, that is, until <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> speaks. "@@.npc_purple_mistress;You have permission to cum, my slave.@@" A silent grunt escapes past whatever gag is hidden beneath <<his>> doll-faced hood and <<he>> cums.<br>
<br>
Big, thick globs of cum spurt into your mouth. <<His>> torrent is swiftly overflowing past your lips, but <<=setup.getNpcName('npc_prostitute', 'first')>> is there to lend a hand, or mouth as the case may be, leaning under to catch your drips as the dildo in your ass leaps to a new height of intensity with its pulsing vibrations.<br>
<br>
You moan and gasp, forced to pull back to catch your breath as the powerful vibrations running through your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> push you to orgasm, as well. In so doing you give your partner the opportunity to take over, catching only glancing shots of spunk to your face before her face is jammed over the cock. Still writhing in orgasm as powerful vibrations continue to course through your body you flop underneath her, your cum-filled mouth open as whatever escapes her lips drips onto your face.<br>
<br>
You can actually see <<his>> testicles shrink, pulling up against the snug, and heavy, ball-stretcher as <<he>> finishes dispensing <<his>> massive load. <<He>> steps back, <<=setup.getNpcName('npc_prostitute', 'first')>> unable to crawl forward without falling over your body and thus allowing <<his>> softening, but still large, cock to slip from her mouth.<br>
<br>
Disappointed at her now-empty face-fuck-hole she looks down and smiles, snowballing the last unswallowed glob of <<his>> cum directly into your open mouth. You catch it and let it mix with the puddle already accrued, swishing it around your mouth like delectable mouthwash as you scramble back to your knees and lean in to pass it back.<br>
<br>
The glob of spit and spunk travels back and forth several times before <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> grabs you both by the back of the head and pushes you in for a kiss.<br>
<br>
No less passionate than your extended gag-kiss your lips lock together, savouring the globe of cum for a final moment before swallowing in unison and setting your tongues to dance together until the buzzing in your ass finally quiets and stops.<br>
<br>
The salty taste of cum finally fading you slowly separate, sharing a final soft peck on your lips before the two of you look up towards <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> and smile in unison.<br>
<br>
"@@.npc_purple_mistress;Oh you two are just too cute! Unfortunately our time together is nearly at an end. Come along, you need to return to your employer.@@"<br>
<br>
Your feelings are mixed — sad that this fun, educational session is coming to a close, but also excited to return to <<=setup.getNpcName('npc_barkeeper', 'first')>> to now work together.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_11" "Continue." 600>>]
</div><<if setup.checkItemWorn("penis_sheath")>>
<<removeItem "penis_sheath" true>>
<<deleteItem "penis_sheath">>
<</if>>
<<if setup.checkItemWorn("double_dildo")>>
<<removeItem "double_dildo" true>>
<<deleteItem "double_dildo">>
<</if>>
<<if setup.checkItemWorn("strapon_purple")>>
<<removeItem "strapon_purple" true>>
<<deleteItem "strapon_purple">>
<</if>>
<<removeItem "harness_purple" true>>
<<if $player.flags.collar.owner == "">>
<<removeItem "posture_collar_purple" true>>
<</if>>
<<removeItem "pumps_purple" true>>
<<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style == 'dom'>>
<<removeItem "ankle_cuffs_purple" true>>
<<deleteItem "ankle_cuffs_purple">>
<<else>>
<<removeItem "armbinder_purple" true>>
<<deleteItem "armbinder_purple">>
<</if>>
<<useClothSetPop 'tmp' true>>/*#
#desc: ride home, change back
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "prostitutionVipChangeBack">>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
Clipping leashes to your collars <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> guides you back to your feet and removes your armbinders before leading you out of the dungeon.<br>
<br>
The walk back out to the car seems somehow longer than the trip in and you find yourself gawking at the old-world ostentatiousness of the mansion's interior that you were <<if $npc_barkeeper.flags.prostitution.vip_unlock_game.style=='sub'>>unable to see on the way in due to your blindfold<<else>>too distracted to pay attention to on the way in<</if>>.<br>
<br>
Unclipping the leash, she motions for the two of you to file into the back of the limo. You glance around the interior and note that there are now a set of keys atop the box in the centre of the compartment, both your and <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> clothes and belongings in two neat piles.<br>
<br>
Giving a final parting smile, <<=setup.getNpcName('npc_purple_mistress', 'nickname')>> closes the door. A moment later the limo quietly pulls away.<br>
<br>
Still feeling no need for words, the two of you help each other get dressed. A far cry from your ride the other direction your dressing is full of kisses and gropes, cuddles and teases, slower but far more fun than stripping, <<if $player.flags.collar.owner == "">>the mutual removal of your collars<<else>>the removal of <<=ps(setup.getNpcName('npc_prostitute', 'first'))>> collar<</if>> the final step in returning to your prior attire.<br>
<br>
As you go to neatly stack things back in their original box you find a note telling you to leave the restraints, but to keep the harness<<if $player.flags.collar.owner == "">>, collar<</if>> and shoes with the <<=ps(setup.getNpcName('npc_purple_mistress', 'nickname'))>> compliments. You smile, this evening turning out even better, and you put your new prizes aside and finish changing back into your street clothes just as the limo pulls up in front of The Usual Place.<br>
<br>
[<<moveTo "event_prostitution_vip_unlock_12" "Get out." 1800>>]
</div>/*#
#desc: prostitution vip unlock, returned to bar
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.bonusHints>>
<<set $npc_barkeeper.flags.prostitution.vip_unlock_game.nohint = true>>
<</if>>
<<set $npc_barkeeper.flags.prostitution.can_work_vip = true>>
<<addNpcTheme 'npc_psychiatrist' 'prostitution' 'theme_psychiatrist_prostitution_20'
20
'event_psychiatrist_session_prostitution_vip_1'
false
>>
<<setThreshold 'whoring' 'general_whoring' 'vip_prostitute'>>
<<addCredits 100>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper") setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
Holding hands you and <<=setup.getNpcName('npc_prostitute', 'first')>> walk back into the bar as <<=setup.getNpcName('npc_barkeeper', 'first')>> smiles with pride from behind the bar at the transformation in the mood between her two <<if $fetish.sissy>>sissies<<else>>girls<</if>>.<br>
<br>
Motioning for you to follow her into the back room she closes the door and then rushes in for a hug.<br>
<br>
"@@.npc_barkeeper;Oh you two look so adorable! And so happy! I heard she was good, but this... this is better than I could have imagined! I take it you had fun.@@"<br>
<br>
You and <<=setup.getNpcName('npc_prostitute', 'first')>> smile wide and nod in unison, memories of your time together, particularly towards the end, dancing through your head, as good as any <<if $fetish.sissy>>sissy<<else>>girly<</if>> fantasy, only better since it all really happened.<br>
<br>
"@@.npc_barkeeper;That is just fantastic! Who would have thought managing three prostitutes could be so complicated! Anyway, I'm so glad you two have worked out your issues and well... I think it's time that <<=$player.first_name>> becomes available for VIP jobs... if that is alright with you, <<=setup.getNpcName('npc_prostitute', 'first')>>?@@"<br>
<br>
<<if $npc_barista.flags.know_prostitute>>
<<printThought "I guess <<=setup.getNpcName('npc_barista', 'nickname')>> will be joining us?">>
<<else>>
<<printThought "Wait... three? Who else is there other than me and <<=setup.getNpcName('npc_prostitute', 'first')>>?">>
<</if>>
Looking over at you <<=setup.getNpcName('npc_prostitute', 'first')>> smiles in response and nods quickly. "@@.npc_prostitute;Of course! I'd be proud to work beside her again, or just know that she is out there giving pleasure to our most treasured customers.@@"<br>
<br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> grins. "@@.npc_barkeeper;Great! Check in with me from time to time if you're interested in a VIP contract, but note that such customers can be very particular and I won't even let you try if I don't think you're optimally equipped to meet their desires.@@"<br>
<br>
You nod, both excited and afraid for the opportunity. You thought you were doing pretty good selling your body for money but, having seen <<=setup.getNpcName('npc_prostitute', 'first')>> in action you understand that you still have quite a bit to learn about being a perfect <<if $fetish.sissy>>sissy<<else>>sexy<</if>> whore. Fortunately, the lessons for such are, like... way fun!<br>
<br>
"@@.npc_barkeeper;Well, I think that's all for now, I'll see you two at work!@@"<br>
<br>
You collect your pay and then share a final hug, kiss, and butt-grope with your new friend <<=setup.getNpcName('npc_prostitute', 'first')>> before heading back to the bar where the two of you finally go your separate ways.<br>
<br>
<<include "calcBarOpen">>
<<if _open>>
[<<moveTo "room_usual_place_inside" "Look around the bar." 60>>]
<<else>>
It's after closing time and <<=setup.getNpcName('npc_prostitute', 'first')>> shoos you out of the bar.<br>
<br>
[<<moveTo "room_usual_place_outside" "Consider what to do next." 60>>]
<</if>>
</div>/*#
#desc: get vip prostitution contracts from barkeeper
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.clothing_modifier = setup.calcProstitutionModifiers()>>
<<if !$scene.hasOwnProperty('vipClients')>>
<<set $scene.num_clients = random(0,2)>>
<<if $scene.num_clients > 0>>
<<set _clients = Math.floor(setup.getTotalValue("whoring")/10)>>
<<set $scene.vipClients = setup.getProstitutionClients(["vip"], $scene.num_clients)>>
<<set $scene.clientFeelings = []>>
<</if>>
<</if>>
<<if ($npc_barista.stage < 5 || $npc_barista.stage >= 10 ) &&
setup.getTotalValue("whoring") >= 19 &&
!$events.hasOwnProperty('prostitution_final_invite') &&
(!$currentTasks.hasOwnProperty('task_prostitution_final') || $currentTasks.task_prostitution_final.condition == "Failed") &&
(!$npc_barkeeper.flags.prostitution.final.attend || $now.getUTCDate() < 7)>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 18, 20, false)>>
<<addEvent 'prostitution_final_invite' _nextDate>>
<</if>>
<</if>>
<<include "isBarOpen">>
<<if !_open>>
<<set $now = setup.setNextDate($now, 0, $now.getUTCHours(), 10)>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if !_open>>
The bar is closing up and there are no clients left to attempt to serve.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<elseif setup.checkOutsideDecencyReason() == "heels_high">>
You're perhaps a bit drunk to balance in heels... but maybe if you took it slow?<br>
<br>
[<<moveTo "room_usual_place_outside" "Leave the Usual Place." 30>>]
<<else>>
[<<moveTo "room_usual_place_bathroom" "Visit the bathroom." 30>>]<br>
[@@.link_locked;Hanging out in the bar is one thing, but you aren't going into town like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
You ask <<=setup.getNpcName('npc_barkeeper', 'first')>> if she has any clients for you.<br>
<br>
<<if $now.getUTCHours() >= 23 || $now.getUTCHours() < 4>>
She shakes her head.<br>
<br>
"@@.npc_barkeeper;Sorry, luv, but it's a bit late in the night. Come by a bit earlier next time, hmm?@@"
<<elseif $scene.num_clients == 0>>
She shakes her head.<br>
<br>
"@@.npc_barkeeper;Sorry, luv, but I don't have anything for you tonight, you'll have to drum up business on your own.@@"<br>
<<else>>
"@@.npc_barkeeper;Looking for work? Great, let me see what I have for you this evening.@@" She pulls out her phone and flicks through.<br>
<br>
<<for _clientIndex, _clientId range $scene.vipClients>>
<<set _client = setup.getProstitutionClient(_clientId.type, _clientId.id)>>
<<if !_clientId.visited>>
<<set _clientAvail = true>>
<<set $scene.clientFeelings[_clientIndex] = {}>>
<<set _linkStr = "<<set $scene.clientIndex = " + _clientIndex + ">><<set $scene.client = setup.getProstitutionClient($scene.vipClients[$scene.clientIndex].type, $scene.vipClients[$scene.clientIndex].id)>>">>
<<set $scene.clientFeelings[_clientIndex].hate = setup.prostitutionModAny($scene.clothingModifiers, _client.hate)>>
She shows you a picture.
<<if null != $scene.clientFeelings[_clientIndex].hate>>
"@@.npc_barkeeper;<<=_client.desc>> I've got this, but you REALLY aren't their type. VIP's depend on me to find a girl that matches their preferences so I could not possibly offer you this job.@@" [@@.link_locked;You don't have the right look for this client.@@]<br>
<<else>>
<<set $scene.clientFeelings[_clientIndex].dislike = setup.prostitutionModAny($scene.clothingModifiers, _client.dislike)>>
<<if null != $scene.clientFeelings[_clientIndex].dislike>>
"@@.npc_barkeeper;<<=_client.desc>> I've got that, but they wouldn't be interested in you.@@" [@@.link_locked;You don't have the right look for this client.@@]<br>
<<else>>
<<set $scene.clientFeelings[_clientIndex].like = setup.prostitutionModAll($scene.clothingModifiers, _client.like)>>
<<set $scene.clientFeelings[_clientIndex].love = setup.prostitutionModAll($scene.clothingModifiers, _client.loves)>>
<<if ((_client.like.count() > 0 && null != $scene.clientFeelings[_clientIndex].like && $scene.clientFeelings[_clientIndex].like.count() == _client.like.count()) || _client.like.count() == 0) && null != $scene.clientFeelings[_clientIndex].love && _client.loves.count() == $scene.clientFeelings[_clientIndex].love.count()>>
"@@.npc_barkeeper;<<=_client.desc>> I think you would be absolutely perfect for them.@@"
<<if _client.hasOwnProperty("scene_link")>>
[<<moveTo _client.scene_link "Beg to serve this client." 180 _linkStr>>]<br>
<<else>>
[<<moveTo "event_prostitution_vip_0" "Beg to serve this client." 1800 _linkStr>>]<br>
<</if>>
<<elseif ( _client.like.count() == 0 || (_client.like.count() > 0 && null != $scene.clientFeelings[_clientIndex].like && $scene.clientFeelings[_clientIndex].like.count() == _client.like.count())) && null != $scene.clientFeelings[_clientIndex].love>>
"@@.npc_barkeeper;<<=_client.desc>> I think they would just adore you.@@"
<<if _client.hasOwnProperty("scene_link")>>
[<<moveTo _client.scene_link "Agree to serve this client." 180 _linkStr>>]<br>
<<else>>
[<<moveTo "event_prostitution_vip_0" "Agree to serve this client." 1800 _linkStr>>]<br>
<</if>>
<<elseif null != $scene.clientFeelings[_clientIndex].like || null != $scene.clientFeelings[_clientIndex].love>>
"@@.npc_barkeeper;<<=_client.desc>> I think they would probably like you.@@"
<<if _client.hasOwnProperty("scene_link")>>
[<<moveTo _client.scene_link "Ask to serve this client." 180 _linkStr>>]<br>
<<else>>
[<<moveTo "event_prostitution_vip_0" "Ask to serve this client." 1800 _linkStr>>]<br>
<</if>>
<<else>>
"@@.npc_barkeeper;<<=_client.desc>> I don't think they'd HATE you, but at this level I'm selling something better than that. I don't think I can offer you to this client.@@" [@@.link_locked;You don't have the right look for this client.@@]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<</for>>
<<if !_clientAvail>>
"@@.npc_barkeeper;Sorry, luv, but I just don't have anything available right now. Maybe check in some other time?@@"<br>
<</if>>
<</if>>
<br>
[<<moveTo "event_prostitution_floor_root" "Look around for other potential customers." 3600>>]<br>
[<<moveTo "room_usual_place_inside" "Stop working." 60>>]
<</if>>
</div>/*#
#desc: npc_barkeeper presents details of potential vip client
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "The Usual Place, The Bar">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.client = setup.getProstitutionClient($scene.vipClients[$scene.clientIndex].type, $scene.vipClients[$scene.clientIndex].id)>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
/* definitionally you can't get here unless the client would like/love you */
<<if (($scene.client.like.count() > 0 && null != $scene.clientFeelings[$scene.clientIndex].like && $scene.clientFeelings[$scene.clientIndex].like.count() == $scene.client.like.count()) || $scene.client.like.count() == 0) && null != $scene.clientFeelings[$scene.clientIndex].love && $scene.client.loves.count() == $scene.clientFeelings[$scene.clientIndex].love.count()>> /* all loves matched */
<<=setup.getNpcName('npc_barkeeper', 'first')>> grins wide. "@@.npc_barkeeper;Yup, this is going to be great!@@"
<<elseif ( $scene.client.like.count() == 0 || ($scene.client.like.count() > 0 && null != $scene.clientFeelings[$scene.clientIndex].like && $scene.clientFeelings[$scene.clientIndex].like.count() == $scene.client.like.count())) && null != $scene.clientFeelings[$scene.clientIndex].love>> /* all likes, some loves */
<<=setup.getNpcName('npc_barkeeper', 'first')>> smiles. "@@.npc_barkeeper;Yeah, I think you're nigh perfect for this client...@@"
<<elseif null != $scene.clientFeelings[$scene.clientIndex].like || null != $scene.clientFeelings[$scene.clientIndex].love>> /* some likes or loves */
<<=setup.getNpcName('npc_barkeeper', 'first')>> smiles. "@@.npc_barkeeper;Yeah, I think this client will like you well enough...@@"
<<else>>
ERROR: unliked by VIP should not be possible!
<</if>>
<br><br>
"@@.npc_barkeeper;<<=$scene.client.request>>@@"<br>
<br>
"@@.npc_barkeeper;So, what'll it be? If you're ready you can head for the vip room and wait for me to send them up.@@"<br>
<br>
[<<moveTo "event_prostitution_vip_1" "Accept the client and head up." 600>>]<br>
[<<moveTo "event_prostitution_vip_root" "Ask about other clients." 1>>]
</div>/*#
#desc: meet vip client
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.client.image_scene>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" $scene.client.image_scene>>
<<elseif $scene.client.image_intro>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" $scene.client.image_intro>>
<<elseif $scene.client.image_char>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage($scene.client.image_char[0],$scene.client.image_char[1])>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<</if>>
<div id="invframe" class="scrolltext">
You head to the bar's "VIP" room. It isn't anything crazy, a nice bedroom with a large bed, a vanity for freshening up, and a set of bondage restraints built into one wall.<br>
<br>
With your client in mind you need to decide in what manner you wish to greet them.<br>
<br>
[<<moveTo "event_prostitution_vip_2" 'Keep things "professional" and just wait for them.' 1 "<<set $scene.style = 'basic'>>">>]<br>
[<<moveTo "event_prostitution_vip_2" "Emphasise your femininity and strike a seductive pose on the bed." 1 "<<set $scene.style = 'feminization'>>">>]<br>
[<<moveTo "event_prostitution_vip_2" "Part your lips, unfocus your eyes and greet them like a true bimbo." 1 "<<set $scene.style = 'bimbofication'>>">>]<br>
[<<moveTo "event_prostitution_vip_2" "Kneel submissively in front of the door." 1 "<<set $scene.style = 'submission'>>">>]
</div>/*#
#desc: npc_barkeeper presents details of potential vip client
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.whoring_level = 15>>
<<if $scene.clientFeelings[$scene.clientIndex].likes != null>>
<<set $scene.whoring_level += $scene.clientFeelings[$scene.clientIndex].likes.count()>>
<</if>>
<<if $scene.clientFeelings[$scene.clientIndex].loves != null>>
<<set $scene.whoring_level += $scene.clientFeelings[$scene.clientIndex].loves.count()>>
<</if>>
<<if $scene.clientFeelings[$scene.clientIndex].dislike != null>>
<<set $scene.whoring_level += $scene.clientFeelings[$scene.clientIndex].dislike.count()>>
<</if>>
<<if $scene.clientFeelings[$scene.clientIndex].hate != null>>
<<set $scene.whoring_level += $scene.clientFeelings[$scene.clientIndex].hate.count()>>
<</if>>
<<if setup.getTotalValue($scene.client.skill.name) >= $scene.client.skill.value>>
<<set $scene.success = true>>
<<set $npc_barkeeper.flags.prostitution.clients.vip[$scene.vipClients[$scene.clientIndex].id] = true>>
<<set $scene.pay = 100+Math.ceil($scene.client.base_pay * (1+($scene.client.skill.value+$scene.whoring_level)*.05))>>
<<applyExperience $scene.client.skill.name $scene.client.skill.value 'normal' $EXPOSED>>
<<set _whoring = setup.getTotalValue("whoring")>>
<<applyExperience 'whoring' _whoring 'skip' $EXPOSED>>
<<else>>
<<set $scene.success = false>>
<<set $scene.pay = 50>>
<<applyExperience $scene.client.skill.name $scene.client.skill.value 'very' $EXPOSED>>
<<applyExperience 'whoring' 15 'terrible' $EXPOSED>>
<</if>>
<<if $scene.client.base_pay == 0>>
<<set $scene.pay = 0>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.client.image_scene>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" $scene.client.image_scene>>
<<elseif $scene.client.image_intro>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" $scene.client.image_intro>>
<<elseif $scene.client.image_char>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage($scene.client.image_char[0],$scene.client.image_char[1])>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<</if>>
<div id="invframe" class="scrolltext">
You hear a knock on the door
<<switch $scene.style>>
<<case 'basic'>>
and walk over to escort your client into the room.
<<case 'feminization'>>
and call out a seductive "@@.pc;Enter.@@"
<<case 'bimbofication'>>
and call out "@@.pc;Like, coming!@@" Before opening the door to let them in.
<<case 'submission'>>
and wait for the client to enter. You remain kneeling with your gaze turned downward. "@@.pc;This slave is ready to serve.@@" You state.
<<default>>
ERROR: unknown style: <<=$scene.style>>
<</switch>>
<br><br>
<<if $scene.client.style_preference == $scene.style>>
<<set $scene.stylemod = 1.5>>
Your client smiles wide at the first sight of you. You have definitely nailed the "first impression," but now it's time to work for real...
<<else>>
<<if ($scene.client.style_preference == "bimbofication" && $scene.style == "feminization")
|| ($scene.client.style_preference == "feminization" && $scene.style == "submission")
|| ($scene.client.style_preference == "submission" && $scene.style == "bimbofication")>>
<<set $scene.stylemod = .75>>
Your client appears relatively taken by your choice of style, but it is just as clear that they are eager to get started.
<<elseif ($scene.style == "bimbofication" && $scene.client.style_preference == "feminization")
|| ($scene.style == "feminization" && $scene.client.style_preference == "submission")
|| ($scene.style == "submission" && $scene.client.style_preference == "bimbofication")
|| $scene.style == "basic">>
<<set $scene.stylemod = .5>>
Your client does not seem to appreciate your choice of style and you quickly reset your expression as you wait for things to get started.
<<else>>
ERROR, unexpected pairing of client.style_preference and style: ( <<=$scene.client.style_preference>>, <<=$scene.style>> )
<</if>>
<</if>>
<br><br>
<<if $scene.success>>
<<=$scene.client.scene_success>>
<br><br>
<<if $scene.dirty_success>>
<<include "prostitute_mess_success">>
<<else>>
Thanks to your skills, you were able to do the job without getting dirty in the slightest, your clothes and face as well-groomed at the finish as they were when you began.
<</if>>
<br><br>
Job done you escort your client out of the room before taking your <<=$scene.pay>> credit tip from the nightstand after they have departed. <<=setup.getNpcName('npc_barkeeper', 'first')>> takes her cut on the frontend so it is all yours to keep. You take a moment to straighten the room and freshen up at the vanity before leaving the VIP room.<br>
<br>
[<<moveTo "room_usual_place_inside" "Head back down to The Usual Place." 180>>]
<<else>>
<<=$scene.client.scene_fail>>
<br><br>
<<if $scene.dirty_fail>>
<<include prostitute_mess_fail>>
<<else>>
Despite your lack of skill you at least didn't mess up your clothes, finishing the "job" without getting any dirtier, well, PHYSICALLY dirtier, than you were at the start.
<</if>>
<br><br>
Job done you escort your client out of the room before taking your <<=$scene.pay>> credit tip from the nightstand after they have departed. You sigh, you did your best, but more should be expected and the humiliating tip is proof. <<=setup.getNpcName('npc_barkeeper', 'first')>> takes her cut on the frontend so it is "all" yours to keep. You take a moment to straighten the room and freshen up at the vanity before leaving the VIP room.<br>
<br>
[<<moveTo "room_usual_place_inside" "Head back down to The Usual Place." 180>>]
<</if>>
</div>/*#
#desc: invited for prostitution final
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_barista.stage >= 5 && $npc_barista.stage < 10>>
<<initRoom>>
<<set _beforetasklocation = $scene.beforetasklocation.pop()>>
<<moveTo _beforetasklocation>>
<<elseif $currentTasks.hasOwnProperty('corporate_retreat_transit') && !$currentTasks.corporate_retreat_transit.finished || $currentTasks.hasOwnProperty('task_corporate_retreat') && !$currentTasks.task_corporate_retreat.finished>>
<<initRoom>>
<<set _beforetasklocation = $scene.beforetasklocation.pop()>>
<<moveTo _beforetasklocation>>
<</if>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall from <<=setup.getNpcName("npc_barkeeper","first")>>.<br>
<br>
<<if !$npc_barkeeper.flags.prostitution.final.attend>>
"@@.npc_barkeeper;Hey, <<=$player.first_name>>, hope you're enjoying a nice day off... wait, sorry, I guess you're still holding down a corporate job, too? Anyway, just wanted to let you know there's a party going on this weekend and they're looking to hire a few girls. Some big-wig corporate thing, they bring in help on occasion
<<if $npc_barista.flags.know_prostitute>>
and <<=setup.getNpcName("npc_barista","nickname")>> said
<<else>>
and I think
<</if>>
you'd be perfect for the job. Come on by the bar before <<if $options.militaryTime>>19:30<<else>>seven thirty pm<</if>> Friday if you think you're up for it. I can promise that the pay is good — but you'll be working for it!@@"
<<else>>
"@@.npc_barkeeper;Hey, <<=$player.first_name>>. Another of those corporate parties is coming up, if you're interested?@@"
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty('technician_dinner') && !$currentTasks.technician_dinner.finished>>
[<<moveTo "event_prostitution_final_invite_2" 'It will require cancelling your date with <<=setup.getNpcName("npc_technician","first")>> but you will be there!' 300 "<<set $scene.act='technician'>>">>]<br>
<<elseif $currentTasks.hasOwnProperty('admin_drink_1') && !$currentTasks.admin_drink_1.finished>>
[<<moveTo "event_prostitution_final_invite_2" 'It will require cancelling your date with <<=setup.getNpcName("npc_admin","first")>> but you will be there!' 300 "<<set $scene.act='admin'>>">>]<br>
<<else>>
[<<moveTo "event_prostitution_final_invite_2" "Say you'll be there with bells on!" 60 "<<set $scene.act='accept'>>">>]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 15 && !$npc_barkeeper.flags.prostitution.final.attend>>
[@@.link_locked;Getting paid to work what sounds like a sex party? That's a can't-miss opportunity for a slut like you!@@]
<<else>>
[<<moveTo "event_prostitution_final_invite_2" "Say you will be unable to make it." 60 "<<set $scene.act='decline'>>">>]
<</if>>
</div>/*#
#desc: invited for prostitution final
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.act>>
<<case 'technician'>>
<<incrementEmotion 'anger' 'npc_technician' 1>>
<<deleteTask 'technician_dinner'>>
<<set $scene.cancelTechnician = true>>
<<case 'admin'>>
<<incrementEmotion 'anger' 'npc_admin' 2>>
<<deleteTask 'admin_drink_1'>>
<<set $scene.cancelAdmin = true>>
<</switch>>
<<if $scene.act != 'decline'>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 5, 19, 30, false)>>
<<addTaskById 'task_prostitution_final' _tmpDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.act == "decline">>
You thank <<=setup.getNpcName("npc_barkeeper","first")>> for the offer, but reply that you
<<if $scene.cancelTechnician || $scene.cancelAdmin>>
already have a date planned.<br>
<br>
"@@.npc_barkeeper;Date? Well just remember to give me my cut!@@" She laughs. "@@.npc_barkeeper;No problem. These parties aren't too uncommon, crazy corporate types starting the weekend with a bang! I'll give you a ring next time one happens. Have fun on your date!@@"
<<else>>
don't think you can make it.<br>
<br>
"@@.npc_barkeeper;Busy girl! Well I'll let you go. These parties aren't all that uncommon. Crazy corporate types starting the weekend with a bang! I'll give you a ring next time one happens. Enjoy your weekend!@@"
<</if>>
<<else>>
You reply that you'd love to work Friday and you'll see her then.<br>
<br>
<<if $npc_barkeeper.flags.prostitution.final.attend>>
"@@.npc_barkeeper;That's my girl! Though... I guess I shouldn't be surprised. That party seems quite the popular gig, and not just because of the pay!@@"
<<else>>
"@@.npc_barkeeper;That's my girl! Oh you're going to just love this party — everyone I send over they use hard and long, just the perfect start to a weekend for a slut like you, and great spending money, to boot! Oh, and don't worry about your clothes, they're provided as part of the job.@@"
<</if>>
<br><br>
She hangs up<<if $scene.cancelTechnician || $scene.cancelAdmin>> and you make the unpleasant move to cancel your date<</if>>.
<<if $scene.cancelTechnician>>
<br><br>
You text <<=setup.getNpcName("npc_technician","first")>> that some work came up and you will not be able to make your Friday dinner date.<br>
<br>
"@@.npc_technician;Dang! I was looking forward to it. Well... thank's for letting me know before I did any grocery shopping, maybe some other week!@@"
<<elseif $scene.cancelAdmin>>
<br><br>
You text <<=setup.getNpcName("npc_admin","first")>> that some work came up and you will not be able to make your Friday dinner date.<br>
<br>
"@@.npc_admin;Dang <<callPlayer "npc_admin">>! You gotta take some time for yourself! All work and no play makes Jack... or I guess I should say Jill? Either way, ain't nobody hit old age and wish they spent more time at the office.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: fail to show up for prostitution final
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if !$npc_barkeeper.flags.prostitution.final.attend>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 18, 20, false)>>
<<addEvent 'prostitution_final_invite' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall from <<=setup.getNpcName("npc_barkeeper","first")>>.<br>
<br>
<<printThought "Shit, I forgot about the job I had scheduled tonight!">><br>
<br>
"@@.npc_barkeeper;Hey, so... the other girls are about to head out, and you ain't here! Guess something came up, eh? Oh well, maybe some other time.@@" She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: show up for prostitution final job
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.baristaFirst = !$npc_barista.flags.know_prostitute>>
<<set $npc_barista.flags.know_prostitute = true>>
<<if setup.checkItemOwned('cocktail_dress_slutty')>>
<<if setup.inWardrobe('cocktail_dress_slutty')>>
<<wardrobeToItem 'cocktail_dress_slutty'>>
<</if>>
<<else>>
<<addItem 'cocktail_dress_slutty'>>
<</if>>
<<addItem 'slutty_cocktail_heels'>>
<</if>>
<<if setup.checkItemWorn('cocktail_dress_slutty') && setup.checkItemWorn('slutty_cocktail_heels')>>
<<initRoom>>
<<moveTo "event_prostitution_final_2">>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barista","npc_barista_cocktail") setup.charImage("npc_prostitute","npc_prostitute_cocktail") setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $npc_barkeeper.flags.prostitution.final.attend>>
Once again you meet <<=setup.getNpcName("npc_barkeeper","first")>> for the corporate party, greeting your coworkers with a smile before <<=setup.getNpcName("npc_barkeeper","first")>> hands you the familiar skimpy outfit.
<<else>>
It's time and you head for the back room to meet <<=setup.getNpcName("npc_barkeeper","first")>> for this evening's job.<br>
<br>
You walk into the room to find <<=setup.getNpcName("npc_barkeeper","first")>>, <<=setup.getNpcName("npc_prostitute","first")>>
<<if $scene.baristaFirst>>
... and <<=setup.getNpcName("npc_barista","nickname")>>!<br>
<br>
The slutty barista — presently dressed as a slutty cocktail waitress, greets you with a smile, springing across the room as if her steep heels were nothing to give you a hug.<br>
<br>
"@@.npc_barista;Ohmygod! I didn't know you were a whore! Why didn't you tell me! We could have had, like, so much fun together!@@"<br>
<br>
"@@.npc_barkeeper;I take it the two of you have met before?@@"<br>
<br>
"@@.npc_barista;Met? Like, <<=$player.first_name>> and I go WAY back! We used to work on the same floor — back when she was, like... boring and dull and hadn't even tasted her first cock!@@" She grins at you, giving your butt a squeeze before stepping away. "@@.npc_barista;You're going to, like, love this job!@@"
<<else>>
and <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
The slutty barista — presently dressed as a slutty cocktail waitress, greets you with a smile and a wink.
<</if>>
<br><br>
"@@.npc_barkeeper;So — the job is through to midnight, you don't have to turn into pumpkins then but... you won't be getting paid any extra. Your fee will be the usual 1000 credits each, you can accept tips, but you can't request them.@@"<br>
<br>
You nod along with your fellow whores as <<=setup.getNpcName("npc_barkeeper","first")>> grins. "@@.npc_barkeeper;Alright, that just leaves <<=$player.first_name>> to get changed and you three can head for the limo!@@"<br>
<br>
<<=setup.getNpcName("npc_barkeeper","first")>> hands you a VERY skimpy cocktail dress to match the other two girls.
<</if>>
<br><br>
<<if $options.ezchange>>
[<<moveTo "event_prostitution_final_2" "Get changed and head for the limo." 1200>>]
<</if>>
</div>/*#
#desc: change and ride to job
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<wearItem 'cocktail_dress_slutty' true>>
<<wearItem 'slutty_cocktail_heels' true>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_barista","npc_barista_cocktail") setup.charImage("npc_prostitute","npc_prostitute_cocktail")>>
<div id="invframe" class="scrolltext">
You start to strip only for <<=setup.getNpcName("npc_barkeeper","first")>> to interrupt, "@@.npc_barkeeper;All the way down, dear, the job says you are to wear nothing but this dress and these heels — these clients don't want to deal with unclipping a bra or having to pull your panties aside, they want you strutting and slutting.@@"<br>
<br>
You nod, quickly finishing changing and then joining the other girls for the walk back through the bar to the waiting limo. You make sure to wink at a few patrons as you pass as they admire your skimpy attire and you lay the groundwork for future jobs.<br>
<br>
The limo already waiting the three of you pile in and the driver speeds off.<br>
<br>
You're a bit nervous — and the other two girls excited<<if $npc_barkeeper.flags.prostitution.final.attend>> in anticipation of another corporate party.<<else>>, but they ignore your questions, saying that the surprise of the first time is part of the fun!<</if>><br>
<br>
Despite a spot of evening traffic it isn't long and you soon pull into the parking garage of Nintendolls; the modern-industrial deco very reminiscent of the same hyper-modern corporate design as Social Interaction Service Syndicate Inc.<br>
<br>
[<<moveTo "event_prostitution_final_3" "Continue." 300>>]
</div>/*#
#desc: final prostitution job explanation
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemOwned('party_mask')>>
<<if setup.inWardrobe('party_mask')>>
<<wardrobeToItem 'party_mask'>>
<</if>>
<<else>>
<<addItem 'party_mask'>>
<</if>>
<<wearItem 'party_mask' true>>
<<applyExperience 'bdsm' 6 'little' $EXPOSED>>
<</if>>
<<set $player.location to "Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_barista","npc_barista_cocktail") setup.charImage("npc_prostitute","npc_prostitute_cocktail") "doorman">>
<div id="invframe" class="scrolltext">
A <<man>> in a <<if $options.fem>>fancy dress<<else>>formal suit<</if>> greets the three of you with a smile, leading you to the elevator and coping a feel with <<=setup.getNpcName("npc_barista","nickname")>> as you ride up to a ballroom. <<He>> hands out fancy masquerade masks to each of you and you follow the other two girls in putting yours on.<br>
<br>
"@@.generic_male1;Same rules as always — the masks stay on for the entire night. From now until midnight you exist to serve and provide pleasure. Scrub the word "no" from your vocabulary because whatever a customer wants, that's what you'll do. In keeping with the masks rendering you anonymous and faceless, so too should you disregard any prior knowledge you have of anyone you meet. You're being paid to be, essentially, living sexbots. Do not acknowledge anyone by name, and do not reveal your own identity. You exist to fulfill fantasy, nothing more.@@"<br>
<br>
The <<man>> takes a moment to make sure the masks are securely attached just before the elevator opens.<br>
<br>
"@@.generic_male1;And we're here — have a wonderful evening.@@" <<He>> states, winking and giving you a slap on the ass to accelerate you out of the elevator.<br>
<br>
[<<moveTo "event_prostitution_final_4" "Get to work." 120>>]
</div>/*#
#desc: final prostitution enter ballroom
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.final.attend = true>>
<<set $scene.options = {
"admin" : false,
"sex" : 0,
"wait" : false,
"wait_sex" : false
}>>
<<set $scene.options.admin = $npc_barkeeper.flags.prostitution.final.admin >= 2>>
<<set $scene.options.nintendolls = !$npc_barkeeper.flags.prostitution.final.nintendolls>>
<<set $scene.options.nintendolls = !$npc_barkeeper.flags.prostitution.final.nintendolls>>
<<set $scene.options.boss = !$npc_barkeeper.flags.prostitution.final.work_doctor>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You step out of the elevator and into a ballroom very reminiscent of the after-work party you have attended with <<=setup.getNpcName("npc_manager","formal")>>. Your two fellow whores head for the bar to grab trays of drinks — looks like your cocktail outfits aren't just for show and you're to "serve" for a bit until someone decides to use you... not that you expect that to take long. A glance around the room finds that you recognise quite a few faces from work — perhaps a sign that the rumoured merger is fast approaching.<br>
<br>
[<<moveTo "event_prostitution_final_root" "Get the lay of the land." 120>>]
</div>/*#
#desc: final prostitution root
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() < 5>>
You look around to realise that numbers are thinning out, and the <<man>> who had first welcomed you to the party appears to escort you and your "coworkers" back to a waiting limousine.<br>
<br>
[<<moveTo "event_prostitution_final_end_night" "Ride home." 300>>]
<<else>>
You look around, the room is filled with the usual business-types, and a few familiar faces. Nobody presently looking in your direction.<br>
<br>
<<if $scene.options.sex > 1 && $scene.options.nintendolls>>
<<if $npc_barkeeper.flags.prostitution.final.nintendolls>>
[@@.link_locked;You have already eavesdropped on <<=setup.getNpcName("npc_nintendolls","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_prostitution_final_nintendolls_1" 'You see <<=setup.getNpcName("npc_nintendolls","formal")>>; <<his npc_nintendolls>> glass appears empty.' 600>>]<br>
<</if>>
<</if>>
<<if $scene.options.sex > 0 && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>>
<<if $npc_barkeeper.flags.prostitution.final.admin >= 2>>
[@@.link_locked;You do not see <<=setup.getNpcName("npc_admin","first")>> at tonight's party.@@]<br>
<<elseif $scene.options.admin>>
[@@.link_locked;You no longer see <<=setup.getNpcName("npc_admin","first")>>.@@]<br>
<<else>>
[<<moveTo "event_prostitution_final_admin_1" 'Wait... is that... <<=setup.getNpcName("npc_admin","first")>>?' 600>>]<br>
<</if>>
<</if>>
<<if $scene.options.sex > 2 && $npc_barkeeper.flags.prostitution.final.suck_boss && $scene.options.boss && $npc_barkeeper.flags.prostitution.final.nintendolls>>
<<if $npc_barkeeper.flags.prostitution.final.work_doctor>>
[@@.link_locked;You have already eavesdropped on <<=setup.getNpcName("npc_work_doctor","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_prostitution_final_work_doctor_1" '<<=setup.getNpcName("npc_work_doctor","formal")>> talking with some fellow science types.' 600>>]<br>
<</if>>
<</if>>
<<if $scene.options.wait>>
[@@.link_locked;You feel like you ought to do something, rather than wait around passively.@@]<br>
<<else>>
[<<moveTo "event_prostitution_final_wait_1" 'Wander around for something to happen.' 1800>>]<br>
<</if>>
<<switch $scene.options.sex>>
<<case 0>>
[<<moveTo "event_prostitution_final_sex_1_1" 'Go looking for someone to fuck.' 600>>]<br>
<<case 1>>
[<<moveTo "event_prostitution_final_sex_2_1" 'Go looking for someone else to fuck.' 600>>]<br>
<<case 2>>
<<if $scene.options.wait>>
[<<moveTo "event_prostitution_final_sex_3_1" 'Search for more clients.' 600>>]<br>
<<else>>
[@@.link_locked;You look around for anyone else to proposition, but nobody seems to be meeting your gaze.@@]<br>
<</if>>
<<case 3>>
[<<moveTo "event_prostitution_final_sex_4_1" 'More. Sex.' 600>>] <<hint $options "This will end the night">><br>
<</switch>>
<</if>>
</div>/*#
#desc: final prostitution nintendolls + npc_boss
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.final.nintendolls = true>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_nintendolls") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You stealthily approach <<=setup.getNpcName("npc_nintendolls","formal")>>, surprised as you get closer to find that the <<man npc_boss>> <<he npc_nintendolls>> is speaking with, who had previously had <<his npc_boss>> back to you, is <<=setup.getNpcName("npc_boss","formal")>>!<br>
<br>
"@@.npc_boss;So, I see you have been taking inspiration from my parties, and your people seem to be enjoying it — a positive sign for the <<if $npc_manager.stage < 5>>coming <</if>>merger?@@" <<=setup.getNpcName("npc_boss","formal")>> states smugly.<br>
<br>
"@@.npc_nintendolls;People are... coming around to the idea... yes,@@" <<=setup.getNpcName("npc_nintendolls","formal")>> replies cautiously.<br>
<br>
"@@.npc_boss;Good, good — steady progress, that is the key. Just inform me if there are any additional obstacles that we can help you deal with. This is a partnership, after all.@@"<br>
<br>
<<=setup.getNpcName("npc_nintendolls","formal")>> nods, a hint of fear in <<his npc_nintendolls>> eye and you get the feeling that <<he npc_nintendolls>> is starting to regret "getting into bed" with the ruthless <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
"@@.npc_nintendolls;Quite... speaking of dealing with, I suppose our little wager is about at the end...@@"<br>
<br>
Though you cannot see <<his npc_boss>> face you can hear the smile in <<=ps(setup.getNpcName("npc_boss","formal"))>> voice as <<he npc_boss>> replies "@@.npc_boss;Quite — average man to <<if $fetish.sissy>>sissified<<else>>feminised<</if>> slave. Nice and easy.@@"<br>
<br>
"@@.npc_nintendolls;Perhaps too easy, but, really... was it such a stretch to convert someone like that? A pathetic wimp with no real ambition?@@"<br>
<br>
<<printThought "Wait... are they talking about me? Was this whole thing just for a bet?">><br>
<br>
"@@.npc_boss;You doubt our techniques? Even after you have seen their other applications?@@"<br>
<br>
"@@.npc_nintendolls;No, but I'm still unconvinced, the agreement was someone chosen at random and I think that randomness just happened to find a perfect candidate... how would you feel about double or nothing, and this time I choose the subject?@@"<br>
<br>
If the offer was intended to put <<=setup.getNpcName("npc_boss","formal")>> off-guard it does no such thing. "@@.npc_boss;I have complete trust in our technology — and it grows more refined every day. Name your target and we'll have them flaunting their new tits and obediently sucking cock in no time at all.@@"<br>
<br>
Before you can hear who <<he npc_nintendolls>> has in mind <<=setup.getNpcName("npc_nintendolls","formal")>> notices you — though does not recognise you, wiggling <<his npc_nintendolls>> empty glass in your direction.<br>
<br>
"@@.npc_nintendolls;Quit standing around, slut — you're being paid to entertain, so either fill my glass or get down on your knees and suck my cock.@@"<br>
<br>
<<printThought "Looks like if I want to keep listening in I need to put in some work...">><br>
<br>
[<<moveTo "event_prostitution_final_nintendolls_2" "Suck cock, get information, a simple enough trade." 600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_prostitution_final_nintendolls_2" "Go fetch <<him npc_nintendolls>> a drink." 300 "<<set $scene.suck=false>>">>]
</div>/*#
#desc: final prostitution nintendolls + npc_boss
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<set $npc_barkeeper.flags.prostitution.final.suck_boss = true>>
<<applyExperience 'whoring' 8 'normal' $INCOGNITO>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<applyExperience 'submission' 12 'normal' $INCOGNITO>>
<<set $npc_boss.flags.know_bet=true>>
<<else>>
<<applyExperience 'submission' 8 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_nintendolls") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
The taste of cock still on your lips from your earlier dalliance you get back to "work" dropping to your knees and starting to suck <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> not unimpressive member.<br>
<br>
"@@.npc_boss;Surprised you needed to resort to the help — where is your assistant, anyway?@@"<br>
<br>
"@@.npc_nintendolls;Parties are for good girls,@@" <<he npc_nintendolls>> explains, casually resting <<his npc_nintendolls>> empty glass on your head as if you were a piece of furniture. "@@.npc_nintendolls;She was less than enthusiastically obedient this week, so I sent her off to that processing centre you keep talking about. I quite enjoyed breaking her by hand, but maintenance is becoming tedious so I thought I'd try out something more permanent.@@"<br>
<br>
"@@.npc_boss;I am certain you will be more than pleased with the results — but we are getting off topic. You had someone in mind to raise the stakes?@@"<br>
<br>
"@@.npc_nintendolls;Yes...@@" <<He npc_nintendolls>> says, letting out a slight gasp in response to your efforts. "@@.npc_nintendolls;I was thinking that <<if $npc_admin.fem>>Amazon<<else>>Adonis<</if>> that works for <<=setup.getNpcName("npc_manager","other")>>. Breaking a pathetic femboy is one thing, but if you can take down such a <<if $npc_admin.fem>>strong willed<<else>>masculine<</if>> specimen as that? Well... that would be impressive indeed.@@"<br>
<br>
You cough in surprise and <<=setup.getNpcName("npc_nintendolls","formal")>> places a hand on the back of your head to push you back into <<him npc_nintendolls>>. "@@.npc_nintendolls;Easy there, whore — you aren't done until I am, and you better not drool on my pants.@@"<br>
<br>
As if the short exchange hadn't happened <<=setup.getNpcName("npc_boss","formal")>> replies to the original question; without the slightest hesitation or gap in confidence. "@@.npc_boss;Not a problem... <<=setup.getNpcName("npc_manager","other")>> may be a bit peeved to lose another of her employees but... well, it is good to keep her in check from time to time.@@"<br>
<br>
The conversation drifts to discussing stock-for-stock merger details; <<=setup.getNpcName("npc_nintendolls","formal")>> not long after "rewarding" you with a mouthful of
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
delicious
<<else>>
tasty
<</if>>
<<getWordCum>> that you slurp up without spilling.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
bitter
<<else>>
disgusting
<</if>>
<<getWordCum>> that you choke down to avoid making a mess.
<</if>>
<br><br>
Still on your knees you turn to <<=setup.getNpcName("npc_boss","formal")>> to see if <<he npc_boss>> wants a go, but <<he npc_boss>> shakes <<his npc_boss>> head and shoos you away with one hand. You rise, curtsy, and walk away, neither <<if $npc_boss.fem == $npc_nintendolls.fem>><<man npc_boss>> <</if>>paying you any further attention.<br>
<br>
[<<moveTo "event_prostitution_final_nintendolls_3" 'Continue.' 300>>]
<<else>>
You decide against sucking <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> cock in the middle of the crowded ballroom, instead obediently darting off to the bar and returning with a fresh drink.<br>
<br>
By the time you return the <<if $npc_boss.fem == $npc_nintendolls.fem>>two <<if $npc_nintendolls.fem>>women's<<else>>men's<</if>><<else>>two's<</if>> conversation has moved on. <<=setup.getNpcName("npc_nintendolls","formal")>> takes <<his npc_nintendolls>> drink without giving you a second glance and you move on lest you attract further suspicion.<br>
<br>
[<<moveTo "event_prostitution_final_root" 'Consider your next move.' 60>>]
<</if>>
</div>/*#
#desc: final prostitution react to nintendolls + npc_boss revelation
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_nintendolls") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
The enormity of what you've just heard stunned you into auto-pilot but now that you have a bit of privacy away from <<=setup.getNpcName("npc_boss","formal")>> you finally give yourself a moment to react.<br>
<br>
<<printThought "All of this... was because of a bet!?!? Everything that happened to me was planned... but without even a care, I was just a random victim!">><br>
<br>
[<<moveTo "event_prostitution_final_nintendolls_4" 'Who cares why it happened, you love what you have become!' 300 "<<set $scene.react='happy'>>">>]<br>
<<if setup.getTotalValue("submission") >= 20 && setup.getTotalValue("feminization") >= 20 && setup.getTotalValue("bimbofication") >= 20>>
[@@.link_locked;You are a perfect submissive girly sex-pot, and you love it!@@]<br>
<<else>>
[<<moveTo "event_prostitution_final_nintendolls_4" 'What does it matter what you think? You now know it never mattered...' 300 "<<set $scene.react='resign'>>">>]<br>
<</if>>
<<if setup.getTotalValue("submission") > 15 && setup.getTotalValue("feminization") > 15 && setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;You're too much of a feminised, submissive bimbo to be angry.@@]
<<else>>
[<<moveTo "event_prostitution_final_nintendolls_4" 'You WILL have revenge for this!' 300 "<<set $scene.react='anger'>>">>]
<</if>>
</div>/*#
#desc: final prostitution react to nintendolls + npc_boss revelation
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.react>>
<<case 'happy'>>
<<applyExperience 'submission' 20 'skip' $INCOGNITO>>
<<applyExperience 'feminization' 20 'skip' $INCOGNITO>>
<<applyExperience 'bimbofication' 20 'skip' $INCOGNITO>>
<<applyStress -20>>
<<set $player.willpower.bonus += 1>>
<<case 'resign'>>
<<applyStress 10>>
<<case 'anger'>>
<<applyStress 20>>
<<set $player.willpower.bonus += 1>>
<</switch>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.react>>
<<case 'happy'>>
You can't help but smile. Sure, some would call what happened to you a horror, but you? You count your lucky stars that <<=setup.getNpcName("npc_boss","formal")>> happened to choose you. Yes, given what happened after that data screw-up was probably the best thing that ever happened to you and you smile as you look around the room, hungry to have even more "fun."
<<case 'resign'>>
On some level you have to admit you aren't even surprised... given the course of your life stumbling into forced feminisation and all but enslavement to a corporation... well, the more you think of it, the more it seemed almost inevitable. Still torn between what you've just learned... and how much you've come to embrace "the process" you try to clear your head, after all, falling into wailing despair in the middle of the ballroom would only make things worse...
<<case 'anger'>>
You silently rage, what <<=setup.getNpcName("npc_boss","formal")>> has done to you... well it's horrifying, and more... seething on the inside you find an actual waitress and knock back a drink to steady your nerves. An outburst now could mean your destruction... no, you need to be careful. If everything from the start was arrayed against you, well... you are going to need to be clever, indeed to extricate yourself from this diabolic web...
<<default>>
ERROR: unexpected scene.react
<</switch>>
<br><br>
You take a deep breath.<br>
<br>
[<<moveTo "event_prostitution_final_root" 'Consider your next move.' 60>>]
</div>/*#
#desc: final prostitution admin
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.options.admin = true>>
<<if $npc_barkeeper.flags.prostitution.final.admin < 1>>
<<set $npc_barkeeper.flags.prostitution.final.admin = 1>>
<</if>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You walk past <<=setup.getNpcName("npc_admin","first")>>. <<Hes npc_admin>> talking with some higher up from Nintendolls about the merger when <<=setup.getNpcName("npc_barista","nickname")>> walks past and the <<guy>> <<=setup.getNpcName("npc_admin","first")>> is chatting with casually reaches up under her short skirt to goose her.<br>
<br>
"@@.npc_admin;Hey! What the hell!@@" <<=setup.getNpcName("npc_admin","first")>> starts in shock only for <<=setup.getNpcName("npc_barista","nickname")>> to look at her "assailant" with a smile.<br>
<br>
"@@.npc_barista;Hehe! Thanks! One of your co-workers just fucked me so hard the butt-plug was starting to slip, but you just stuffed it back where it belongs, yay!@@" She gives a little twerk to grind up against the <<man>> before walking off, leaving <<=setup.getNpcName("npc_admin","first")>> looking on in confusion.<br>
<br>
"@@.generic_male1;What, you didn't know? The skimpy cocktail waitresses are all professional whores hired to keep us "entertained" this evening. See, watch.@@" The <<man>> looks directly at you and gestures you over. "@@.generic_male1;Hey girl, you like chocolate, right? Well why don't you show my friend here just how much we at Nintendolls appreciate the work <<hes npc_admin>> been doing on the merger.@@"<br>
<br>
You can see the gears turning in <<=ps(setup.getNpcName("npc_admin","first"))>> head — seems <<he npc_admin>> just assumed that Social Interaction Services Syndicate Inc. was a unique outlier rather than a common corruption infesting executive levels in general.<br>
<br>
<<if $npc_admin.flags.voluntary_oral || $npc_admin.flags.sucked_for_manager>>
<<printThought "Well... it's not like I haven't blown <<him npc_admin>> before... I wonder if <<if $npc_admin.fem>>she'll<<else>>he'll<</if>> recognise my technique by feel alone?">>
<<else>>
You find your mouth starting to water at the thought of getting a taste of <<=ps(setup.getNpcName("npc_admin","first"))>> love sausage...
<</if>>
<br><br>
[<<moveTo "event_prostitution_final_admin_2" 'Smile at <<=setup.getNpcName("npc_admin","first")>> and show what a good worker you are.' 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_prostitution_final_admin_2" 'Make up an excuse that you were on your way to another "customer."' 600 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: final prostitution admin
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'whoring' 12 'normal' $INCOGNITO>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $INCOGNITO>>
<<applyExperience 'submission' 12 'normal' $INCOGNITO>>
<<set $npc_barkeeper.flags.prostitution.final.admin = 2>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You drop to your knees and take <<=setup.getNpcName("npc_admin","first")>> in hand, lovingly wrapping your lips around <<his npc_admin>> big, beautiful, VERY hard <<getWordPenis "npc_admin">>.<br>
<br>
<<if $npc_admin.flags.voluntary_oral || $npc_admin.flags.sucked_for_manager>>
<<He npc_admin>> gasps and then looks down in surprise, and recognition. You wink and very subtly shake your head as you go back to work.
<<else>>
<<He npc_admin>> gasps, <<his npc_admin>> prior objection silenced by your passionate skill.
<</if>>
<br><br>
Feeling a bit of a professional obligation to impress you hum and suck, your tongue teasing <<his npc_admin>> glans before you bring your throat into the party,
<<if $player.flags.special_skills.blowjob_training>>
the consummate perfectionist that you have been trained to be, you give <<=setup.getNpcName("npc_admin","first")>> the blowjob of a lifetime, feeling <<him npc_admin>> wobble slightly as <<he npc_admin>> cums hard enough to almost lose <<his npc_admin>> balance.
<<else>>
giving <<him npc_admin>> a mind-blowing blowjob that has <<him npc_admin>> struggling to catch <<his npc_admin>> breath.
<</if>>
<br><br>
Barely have you finished <<=setup.getNpcName("npc_admin","first")>> off when <<his npc_admin>> conversation partner "pops up" next to you, a significantly less impressive <<getWordPenis>> on offer.<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
Though it pains you to abandon the
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
delicious
<</if>>
flavour of <<=ps(setup.getNpcName("npc_admin","first"))>> seed you quickly swallow
<<else>>
You quickly swallow <<=setup.getNpcName("npc_admin","first")>>
<<if setup.getTotalValue("oral") > 5>>
strangely alluring
<<else>>
thick, salty
<</if>>
seed
<</if>>
and get back to work.<br>
<br>
Either a bit of a voyeur, or just something of a hair trigger it isn't long before the <<if $npc_admin.fem == $options.fem>>second <</if>><<man>> cums and you lick your lips and curtsy to each of the two of them in turn.<br>
<br>
"@@.generic_male1;See? She loves it, and that's what makes these parties so great. Moreover, this is just a temporary arrangement. From what I hear you've got girls working at Social Interaction Service that would blow her out of the water!@@"<br>
<br>
<<if $npc_admin.flags.voluntary_oral || $npc_admin.flags.sucked_for_manager>>
"@@.npc_admin;Something like that...@@" <<=setup.getNpcName("npc_admin","first")>> replies as you blow <<him npc_admin>> a parting kiss and skip off.
<<else>>
"@@.npc_admin;Yeah, something like that...@@" <<=setup.getNpcName("npc_admin","first")>> replies. You can't resist the opportunity to blow <<him npc_admin>> a parting kiss before you skip off.
<</if>>
<<else>>
You blush and softly explain that you actually were on your way to another "client" — hoping that <<=setup.getNpcName("npc_admin","first")>> is too stunned to recognise your voice.<br>
<br>
"@@.generic_male1;Damn, well we'll keep an eye out for the next girl, not like you can tell 'em apart with those masks! One slut is as good as another!@@"<br>
<br>
You notice that <<=setup.getNpcName("npc_admin","first")>> does not join the <<man>> in laughing, even as you smile, curtsy, and depart.
<</if>>
<br><br>
[<<moveTo "event_prostitution_final_root" 'Move on.' 60>>]
</div>/*#
#desc: final prostitution manager
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.options.manager = true>>
<<set $npc_barkeeper.flags.prostitution.final.manager = true>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You're catching your breath when someone appears behind you, a familiar voice that almost makes you faint.<br>
<br>
"@@.npc_manager;Hello, my dear,@@" she whispers. "@@.npc_manager;Putting in some side work, are we?@@"<br>
<br>
Somehow remembering that you are not supposed to acknowledge knowing anyone at the party you try to think of a response but she cuts you off, nibbling your ear as her arm wraps around you possessively.<br>
<br>
"@@.npc_manager;Shhh, do not deny it — I would recognise this cute ass anywhere, mask or no.@@" She gives your butt a squeeze, your legs getting even weaker. "@@.npc_manager;I will let you get back to work in a moment. I just wanted to say how impressive you were looking, and to remind you not to whore yourself out the entire weekend. Your number one responsibility is to me and I expect you rested and ready come Monday to perform all of the duties of my <<if $fetish.sissy>>SISSI <</if>>Secretary@@"<br>
<br>
She lets go and steps back as you almost collapse. Trying to catch your breath you spin around, but she has already disappeared into the crowd. You shiver — how long had she been secretly watching you? And is she going to continue for the rest of the party?<br>
<br>
<<printThought "In a way... it's kind of sweet. She's watching out for me even off the clock...">><br>
<br>
[<<moveTo "event_prostitution_final_root" 'Consider your next move.' 60>>]
</div>/*#
#desc: final prostitution doctor
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 15 'very' $EXPOSED>>
<<applyExperience 'anal' 15 'very' $EXPOSED>>
<<applyExperience 'penis' 15 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 17 'very' $EXPOSED>>
<<playerOrgasm>>
<<set $player.timebased.horny = 30>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("generic","npc_scientists")>>
<div id="invframe" class="scrolltext">
You wander up to where <<=setup.getNpcName("npc_work_doctor","formal")>> is effectively "holding court," lecturing some fellow researchers on some of the things <<hes npc_work_doctor>> been working on.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> <<himself npc_work_doctor>> seems more interested in hearing <<himself npc_work_doctor>> talk than taking advantage of your services, but that doesn't go for <<his npc_work_doctor>> audience as you soon find yourself on all fours, taking a <<man>> in either end as you join in on listening to the <<=setup.getNpcName("npc_work_doctor","title")>> brag.<br>
<br>
"@@.npc_work_doctor;So the great thing about what I've been doing chemically is how versatile it all is. Certainly we have some go-to formulations that are great for keeping your subordinates in line — and with numerous commercial applications, but that's just the basics. Once you start thinking with these powerful tools all sorts of options open up.@@"<br>
<br>
As if to reinforce what <<he npc_work_doctor>> means by "open" a particularly well-endowed scientist plunges into your ass and you have your first climax of the night, eyes rolling back in analgasm pleasure as you silently drip down your thigh and continue to suck the <<man>> in front of you.<br>
<br>
"@@.npc_work_doctor;Quiet down there, slut!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> calls out — "@@.npc_work_doctor;I'd use her for a demonstration, but I doubt you'd be able to tell the difference between drugged or not, she's already clearly such a cock-thirsty whore!@@"<br>
<br>
The <<men>> laugh at you as you shudder in humiliation, and keep sucking and fucking, still embarrassingly aroused despite your climax moments prior.<br>
<br>
[<<moveTo "event_prostitution_final_work_doctor_2" 'Suck, fuck and listen.' 600>>]
</div>/*#
#desc: final prostitution doctor — learn exgirlfriend secret
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.final.work_doctor = true>>
<<applyExperience 'oral' 15 'very' $EXPOSED>>
<<applyExperience 'anal' 15 'very' $EXPOSED>>
<<applyExperience 'penis' 15 'normal' $EXPOSED>>
<<applyExperience 'whoring' 17 'very' $EXPOSED>>
<<set $npc_exgirlfriend.flags.knowTruth = 1>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("generic","npc_scientists")>>
<div id="invframe" class="scrolltext">
You continue to be passed around amongst the research personal as <<=setup.getNpcName("npc_work_doctor","formal")>> continues <<his npc_work_doctor>> impromptu lecture.<br>
<br>
"@@.npc_work_doctor;So, to give you an idea about creativity, a while back I was given a target. Now, rather than drug them directly, I arranged things so that their girlfriend would secretly receive a strong shot of our special blend. Cranked her natural arousal through the roof... and since the target had been too cowardly to consummate the relationship well... it wasn't long before she just couldn't resist looking elsewhere. Add in an offer to the original target for a penis enlargement pill that was another of our special blends and... relationship exploded and a distracted idiot making mistakes and perfectly primed for some of our other projects.@@"<br>
<br>
It's hard to focus while you're getting railed from both ends but... <<printThought 'Wait... is <<he npc_work_doctor>> talking about me... and <<=setup.getNpcName("npc_exgirlfriend","first")>>? She was a victim of all this too?'>><br>
<br>
You're so stunned you freeze as the world seems to fade around you. You barely hear anything else as the <<men>> fucking you finish up and you find yourself wandering away in a daze. You knew you had been manipulated by the company but this... it started that much earlier? And... all for a bet?<br>
<br>
You take some time to head for a bathroom to freshen up, splashing some cold water on your face and catching your breath as you absent-mindedly clean yourself up.<br>
<br>
[<<moveTo "event_prostitution_final_work_doctor_3" 'Consider what you just learned.' 60>>]
</div>/*#
#desc: final prostitution react to work_doctor revelation
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("generic","npc_scientists")>>
<div id="invframe" class="scrolltext">
On the one hand, learning from <<=setup.getNpcName("npc_boss","formal")>> that your fate was all part of a sick bet should make this new revelation less surprising... and yet the fact that it wasn't just the data loss, but the preceding implosion of your relationship with <<=setup.getNpcName("npc_exgirlfriend","first")>> part of things as well...<br>
<br>
<<printThought "She was as much a victim as I am... well, at least at the start...">><br>
<br>
[<<moveTo "event_prostitution_final_work_doctor_4" 'You actually feel jealous of your ex, getting drugs even before yourself...' 300 "<<set $scene.react_dr='happy'>>">>]<br>
[<<moveTo "event_prostitution_final_work_doctor_4" "You should feel sorry for your ex... but you just can't muster the mental energy to care..." 300 "<<set $scene.react_dr='resign'>>">>]<br>
[<<moveTo "event_prostitution_final_work_doctor_4" 'You knew you were a victim but this... you feel nothing but rage.' 300 "<<set $scene.react_dr='anger'>>">>]
</div>/*#
#desc: final prostitution react to nintendolls + npc_boss revelation
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.react_dr>>
<<case 'happy'>>
<<applyExperience 'bimbofication' 15 'terrible' $ALONE>>
<<case 'resign'>>
<<applyStress 10>>
<<case 'anger'>>
<<applyStress 20>>
<<set $player.willpower.bonus += 1>>
<</switch>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.react_dr>>
<<case 'happy'>>
Maybe it's your own descent into debauchery... but the only emotion you feel is jealousy. All those wonderful libido-enhancing drugs could have gone to you from the jump! Still... you wonder if you should perhaps tell her that things weren't actually her fault...
<<case 'resign'>>
You sigh, this new revelation just another brick in the prison that is your life — further confirmation that you never had a chance. Still... maybe you should let <<=setup.getNpcName("npc_exgirlfriend","first")>> know. Just because your relationship imploded doesn't mean she should carry guilt for events that were the result of power-mad corporate machinations.
<<case 'anger'>>
What happened to you was one thing... but the revelation that <<=setup.getNpcName("npc_exgirlfriend","first")>> was a victim before even yourself? It makes you burn with rage... and a bit of shame. Those horrible things you said to her when you broke up... and it wasn't even her fault. You set your jaw in anger, someone needs to pay for this...
<<default>>
ERROR: unexpected scene.react_dr <<=$scene.react_dr>>
<</switch>>
<br><br>
You take a deep breath.<br>
<br>
[<<moveTo "event_prostitution_final_root" 'Consider your next move.' 60>>]
</div>/*#
#desc: final prostitution first sex client (blowjob)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.options.sex = 1>>
<<applyExperience 'oral' 10 'normal' $INCOGNITO>>
<<applyExperience 'submission' 12 'normal' $INCOGNITO>>
<<changeHorny 5>>
<</if>>
<<set $player.location to "Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Mindful of the "reason" you're here your gaze settles on two employees chatting off to the side of the room.<br>
<br>
You walk up to the pair of <<men>>, curtsy and ask if there is anything you could "@@.pc;Do for them this evening?@@"<br>
<br>
The <<men>> look you up and down as you pose, their dual grins telling you they like what they see.<br>
<br>
"@@.generic_male2;Gotta say, I'm coming to like these new changes,@@" the taller of the two <<men>> states with a smile.<br>
<br>
"@@.generic_male3;Quite so — come on you sexy thing, I'd just love to put those pretty lips to use.@@"<br>
<br>
You are led out of the ballroom proper and into a more private side room. The shorter <<man>> sits down first, unzipping <<his>> pants and spreading <<his>> legs as you kneel down, <<if $options.fem>>revealing a wet cunt dripping with arousal<<else>>surprising you with a wet cunt rather than the <<getWordPenis>> you had expected to spring into your face<</if>>.<br>
<br>
Barely missing a beat you get to work licking, the <<mans>> moans a melodic tenor as you eat <<him>> out to two strong orgasms before <<he>> pushes away, and you find yourself eye to the one-eyed-wonder-worm of <<his>> friend.<br>
<br>
"@@.generic_male2;You waitresses really do provide the best service.@@" <<He>> states as you open wide and <<his>> <<getWordPenis>> slides down your throat. Of roughly average size it presents little issue for your trained throat, leaving you with plenty of attention to spare to deploy all of your many fellatio tricks.<br>
<br>
"@@.generic_male3;Really is the best way to relax after a long week — though I guess it's the reverse for her.@@"<br>
<br>
The two <<men>> chuckle at the joke as you finish the blowjob, making a show of swallowing and showing off your empty mouth after gulping down <<his>> cum.<br>
<br>
"@@.generic_male3;Good girl.@@" <<He>> states, tucking a couple of credits into your top as you rise to your feet. Still hard the <<man>> is looking at <<his>> still-spread companion with a grin. "@@.generic_male3;You go ahead and get back to the party... I think we're going to stay a bit longer...@@"<br>
<br>
"@@.generic_male2;Oh, you insatiable <<if $options.fem>>slut<<else>>man-pig<</if>> — come on over here and show you how much you love your boss...@@"<br>
<br>
"@@.generic_male3;Yes, <<sir>>!@@" The <<man>> replies as you slip out of the room to leave the pair to their fun.<br>
<br>
[<<moveTo "event_prostitution_final_root" 'Back to the ballroom.' 60>>]
</div>/*#
#desc: final prostitution second sex client (anal)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.options.sex = 2>>
<<applyExperience 'anal' 8 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<applyExperience 'bimbofication' 12 'normal' $INCOGNITO>>
<<changeHorny 10>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You go looking for more "work," coming across a <<man>> sitting by <<himself>>. In your most sultry voice you turn to show off your ass as you ask if <<hes>> "@@.pc;Enjoying the party?@@"<br>
<br>
<<His>> bored expression is quickly replaced with a smile as <<he>> pulls you in for a lap-dance.<br>
<br>
Grinding quickly turns into more as you are soon bouncing up and down on <<his>> cock while <<he>>
<<switch setup.calcBreastSize()>>
<<case 'massive' 'large'>>
gropes your <<=setup.calcBreastSize()>> tits.
<<case 'medium'>>
gropes your modest tits.
<<case 'small'>>
squeezes your small breasts.
<<case 'none'>>
squeezes your ass with both hands.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
<<He>> cums fast and you fix your clothes <<if setup.checkItemTypeWorn("plug")>>and plug <</if>>before wishing <<him>> a good night at the rest of the party before you head back into the fray, paying no mind to the glances from people that were obviously watching your public pounding.<br>
<br>
You could say it's because you have the safety of your mask, but the truth is you've become so much of a slut being watched only turned you on more.<br>
<br>
<<printThought "Really hope I get someone with a bit more stamina sometime tonight so maybe I can get off...">><br>
<br>
[<<moveTo "event_prostitution_final_root" 'Consider your next move.' 60>>]
</div>/*#
#desc: final prostitution third sex client (double penetration)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.options.sex = 3>>
<<applyExperience 'anal' 12 'very' $INCOGNITO>>
<<applyExperience 'oral' 12 'very' $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<changeHorny 10>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You go looking for more "customers" — spotting <<=setup.getNpcName("npc_barista","nickname")>> and <<=setup.getNpcName("npc_prostitute","first")>> "hard at work" before locating a spare clique that are looking jealously on. It is a simple matter to convince them to let you "relieve" their frustrations and you are soon laid over a table, getting railed in the ass with your head tilted back and mouth wide as balls slap into your eyes.<br>
<br>
Half a dozen employees use you hard and fast, dumping loads into you from both ends until they've each had a turn and you stagger off the table, quenched in both ends and somehow... invigorated to get back to work...<br>
<br>
[<<moveTo "event_prostitution_final_manager_1" 'Consider your next move.' 300>>]
</div>/*#
#desc: final prostitution fourth sex client (double anal/double oral)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.options.sex = 4>>
<<applyExperience 'anal' 18 'unbelievable' $INCOGNITO>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'unbelievable' $INCOGNITO>>
<<setThreshold 'whoring' 'general_whoring' 'party_whoring'>>
<<applyExperience 'whoring' 20 'very' $INCOGNITO>>
<<alterStatAllWorn 'cumsoaked' '["add",100]'>>
<<if $player.makeup.template != "">>
<<set $player.makeup.messed = 100>>
<</if>>
<<playerOrgasm>>
<<set $scene.bedHeelsTask = $currentTasks.hasOwnProperty("bed_heels_photo") && !$currentTasks.bed_heels_photo.finished>>
<<if !$player.sec_style.sex.airtight>>
<<set $player.sec_style.sex.airtight = "money">>
<<include "addTypingEvent">>
<</if>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_barista","npc_barista_cocktail") setup.charImage("npc_prostitute","npc_prostitute_cocktail")>>
<div id="invframe" class="scrolltext">
You're looking around for what to "do" next when you see that the groups around <<=setup.getNpcName("npc_barista","nickname")>> and <<=setup.getNpcName("npc_prostitute","first")>> have started to converge.<br>
<br>
Pulling her head back and aiming the cock in her hand to shoot all over her face, <<=setup.getNpcName("npc_barista","nickname")>> looks across the room and waves you over with a smile.<br>
<br>
"@@.npc_barista;Come on! It's, like, time for the end of the night gang-bang!@@" She glances around and points to three <<guy>>s "@@.npc_barista;You, you, you — stop standing around with your dicks out and get them in my friend!@@"<br>
<br>
A minute later and you're taking it from all directions — deepthroating one cock while
<<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
air-tight below.
<<else>>
enjoying double anal down below.
<</if>>
<br><br>
You take it hard and deep... to your limit and a little beyond as the rest of the night is consumed with you and your two "coworkers"... consuming cock, cunt and cum in seemingly endless measures.<br>
<br>
<<if $now.getUTCHours() < 5>>
[<<moveTo "event_prostitution_final_5" 'Go hard until they shut it down...' 1800 "<<if $scene.bedHeelsTask>><<postponeTask 'bed_heels_photo' 1>><</if>>">>]<br>
<<else>>
<<set _midnight = setup.setNextDate($now, 1, 0, 0)>>
<<set _timeToMidnight = setup.secondsToDate($now,_midnight)>>
[<<moveTo "event_prostitution_final_5" 'Go hard until midnight...' _timeToMidnight "<<if $scene.bedHeelsTask>><<postponeTask 'bed_heels_photo' 1>><</if>>">>]<br>
<</if>>
</div>/*#
#desc: final prostitution wait
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.options.wait = true>>
<<if $npc_barkeeper.flags.prostitution.final.wait < 1>>
<<set $npc_barkeeper.flags.prostitution.final.wait = 1>>
<</if>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "female_lawyer" "./images/characters/femboy_dress.png">>
<div id="invframe" class="scrolltext">
You spends some time waiting around when you see an eerily familiar pair enter the party. A fashionably-dressed lawyerly looking woman is accompanied by a somewhat nervous cute <<boy>><<if $options.fem>> who looks strangely uncomfortable in her equally cute dress<<else>>. A cute <<boy>> in a dress<</if>>.<br>
<br>
The woman seems to notice your attention and she walks towards you, greeting you with a smile.<br>
<br>
"@@.generic_female1;Good evening, you're one of the help, right?@@" You nod and she smiles wider. "@@.generic_female1;Lovely, lovely — I think you would be perfect to help my assistant "take the edge off" — you see this is their first night out<<if $options.fem>> in public with a fancy dress<<else>> in a dress<</if>>. We had been talking about it, what with my reviewing some of the policies of Social Interaction Services Syndicate Inc... well... it just made sense to make some office uniform changes now rather than have them forced later. Thus—@@" she gestures theatrically at her blushing, and thus even MORE cute companion. "@@.generic_female1;I figured tonight would be a bit more casual of a way for my assistant, sorry, my SECRETARY to show off the new style.@@"<br>
<br>
You smile at the assistant and tell them they look very lovely, which only makes them blush harder and look eager to sink into the carpet.<br>
<br>
"@@.generic_female1;Anyway... I was thinking that, to take a bit of the nervous edge off, plus do some positive reinforcement for the new outfit, well... would you be a dear and give my Secretary a quick slurp?@@"<br>
<br>
[<<moveTo "event_prostitution_final_wait_2" "Of course, that's what you're here for!" 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_prostitution_final_wait_2" "You're afraid that might be a bit too much for them..." 60 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: final prostitution wait — femboy handjob
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<if $npc_barkeeper.flags.prostitution.final.wait < 2>>
<<set $npc_barkeeper.flags.prostitution.final.wait = 2>>
<</if>>
<<applyExperience 'whoring' 8 'normal' $INCOGNITO>>
<<applyExperience 'penis' 18 'normal' $INCOGNITO>>
<<addCredits 100>>
<<set $scene.options.wait_sex = true>>
<</if>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "female_lawyer" "./images/characters/femboy_dress.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You smile and reply that of course you'll help.<br>
<br>
The woman smiles and nods. "@@.generic_female1;Go on, then. Lift your skirt for the nice lady to help you out!@@" Your sweet subject bashfully looks away, even as they raise their skirt as ordered, revealing a pair of pretty panties that you gently pull aside to reveal a small, cute, but very erect, penis.<br>
<br>
You lean in between their legs as they adorably gasp. The mouthfeel is divine and you wonder <<if $options.fem>>how long they have been<<else>>if they've already started in<</if>> on hormones, you lick and suck happily, eager to show this neophyte good-girl a wonderful time to help them along their journey.<br>
<br>
Their cum is as sweet and delicate as they are and you lick it all up in appreciation before tucking their panties back into place and rising to your feet.<br>
<br>
The cute thing is still catching their breath, but they do look a bit calmer, even if their cheeks remain a lovely shade of blushing pink.<br>
<br>
"@@.generic_female1;See, doesn't that feel better? And it has your skirt draping so much nicer to boot!@@" The woman turns to you with a smile as she hands you some credits. "@@.generic_female1;Thank you again for doing this kind service.@@"<br>
<br>
[<<moveTo "event_prostitution_final_wait_3" "Suggest that a chastity device might be a productive addition." 180 "<<set $scene.chastity=true>>">>]<br>
[<<moveTo "event_prostitution_final_wait_3" "Thank her and be on your way." 60 "<<set $scene.chastity=false>>">>]
<<else>>
You tell the cute assistant again that they are looking VERY lovely this evening, before adding that you think maybe they're already suffering from a bit TOO much excitement and perhaps sitting down somewhere private would be a better idea?<br>
<br>
The woman frowns slightly. "@@.generic_female1;Perhaps you are right. I thought a bit of an off-the-clock public debut would speed things along, but it might be better to take things a bit slower, and focus just on tweaking the office attire.@@"<br>
<br>
She turns to her assistant and nods. "@@.generic_female1;Come along. Perhaps this was a bit much... we can go back to the office and change... after you put in some practice in those heels. You stand beautifully but the way you clomp around you would think those shoes were made of concrete!@@"<br>
<br>
[<<moveTo "event_prostitution_final_root" 'Consider your next move.' 60>>]
<</if>>
</div>/*#
#desc: final prostitution wait
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.chastity && $npc_barkeeper.flags.prostitution.final.wait < 2>>
<<set $npc_barkeeper.flags.prostitution.final.wait = 2>>
<</if>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "female_lawyer" "./images/characters/femboy_dress.png">>
<div id="invframe" class="scrolltext">
<<if $scene.chastity>>
You thank the woman for the generous tip, and reply with one of your own, suggesting that a nice chastity device would be a perfect help to her assistant's training.<br>
<br>
"@@.generic_female1;A chastity device? Hmm. I saw them mentioned, but that seemed like quite a step, do you really think it would help?@@"<br>
<br>
You assure her that it would,
<<if !setup.checkItemTypeWorn("cage")>>
noting that, while you are not wearing one at the moment, you have quite a bit of experience with them and would definitely credit being locked up early and often as an important learning experience.<br>
<br>
"@@.generic_female1;I see, well I shall certainly take such under advisement.@@"
<<else>>
exposing your own for a moment to show how "committed" you are to incorporating such into your own journey.<br>
<br>
"@@.generic_female1;Oh my, seeing it in person... that is just lovely! Yes, we will definitely be adding one of those to the uniform starting Monday...@@"
<</if>>
<br><br>
Her assistant continues their shy silence, though you notice their skirt twitch just a little, and there is no wind in the ballroom.<br>
<br>
"@@.generic_female1;Well I believe we have taken up enough of your time, thank you again for the assistance and have a lovely remainder of your evening.@@" The pair walks away, the assistant clinging somewhat desperately to their manager as they struggle with their relatively modest heels.
<<else>>
You express your thanks for the tip, wish the nascent Secretary luck, and continue on your way.
<</if>>
<br><br>
[<<moveTo "event_prostitution_final_root" 'Consider your next move.' 60>>]
</div>/*#
#desc: ride home from job
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.final.sex = Math.max($npc_barkeeper.flags.prostitution.final.sex, $scene.options.sex)>>
<<addCredits 1000>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_barista","npc_barista_cocktail_cum") setup.charImage("npc_prostitute","npc_prostitute_cocktail_cum")>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() != 0>>
The end of the night
<<else>>
Midnight
<</if>>
arrives with you and your fellow whores among the only ones left standing — the other partygoers either trickling away or passing out as they tap out to the insatiable force of your whorish triple threat.<br>
<br>
The <<man>> who introduced you to the party re-appears, thanks you for your service, and gingerly passes you your pay while trying to avoid contact with your cum-soaked bodies.<br>
<br>
You pocket the credits, but hardly care. You've had one hell of a night and, leaning against your two friends, the three of you stagger back down the elevator and then to the limo that drops you each off at home.<<if $scene.bedHeelsTask>> You check your phone on the ride home and discover a terse message from <<=setup.getNpcName("npc_manager","formal")>> — seems your whoring made you miss your "bed heels" photo task... you make a mental note to be sure to send her something the tomorrow night.<</if>><br>
<br>
[<<moveTo "room_foyer" "Home." 1200>>]
</div>/*#
#desc: ride home from job auto-ending
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_barista","npc_barista_cocktail") setup.charImage("npc_prostitute","npc_prostitute_cocktail")>>
<div id="invframe" class="scrolltext">
As the limousine carries you home you feel like you missed out on some opportunities. Sure, the pay wasn't bad, but you have a suspicion you could have done, and earned, more.<br>
<br>
[<<moveTo "room_foyer" "Dropped off at home." 1200>>]
</div>/*#
#desc: invite to discuss truth
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set $scene.nextWeek = $now.getUTCDay() == 0>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 0, 10, 30, false)>>
<<set $scene.hastask = $currentTasks.hasOwnProperty('exgf_truth_meeting')>>
<<addTaskById 'exgf_truth_meeting' _tmpDate>>
<<set $player.locations.mallcafe = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> if she could meet you to discuss something important you just discovered, noting that you don't feel comfortable talking about it over the phone.<br>
<br>
There is a long silence from the other end, but it seems she recognises the urgency in your voice and finally responds.<br>
<br>
"@@.npc_exgirlfriend;Okay, but... just to talk, someplace public.@@"<br>
<br>
You reply that's fine, asking if she could meet you at Cafe Newtype IV in the mall?<br>
<br>
"@@.npc_exgirlfriend;Sure, that sounds good, heh, I'd forgotten how much of a coffee fiend you were, how does <<if $scene.nextWeek>>next <</if>>Sunday morning sound?@@"<br>
<br>
You reply that sounds great and promise to see her there.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: invite to discuss truth
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_exgirlfriend","first")>>. It would seem you forgot your planned meeting.<br>
<br>
"@@.npc_exgirlfriend;Hey, so... you were acting like this was something so important... and then you no-show? I really don't get you, I guess talk to you later? Whatever.@@"<br>
<br>
She hangs up before you can get a word in edgewise.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." 60 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: tell exgirlfriend drug truth
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -10>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_exgirlfriend","first")>> arrives and the two of you pickup drinks and find a seat out of the way towards the back of the cafe.<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60>>
She seems unable not to smile in amusement at your outfit.<br>
<br>
"@@.npc_exgirlfriend;Well, well, you really decided to blend in to this place... the maid look is good on you, seriously. But, putting that aside... what was so important you wanted a face to face?@@"
<<else>>
"@@.npc_exgirlfriend;So... what was so important you wanted a face to face?@@"
<</if>>
<br><br>
You take a deep breath and lean forward as you explain what you found out concerning that not only was your "penis drug" a trap, but that she was drugged as well even before that.<br>
<br>
"@@.npc_exgirlfriend;Wait... this was all some sort of secret plan to... sabotage our relationship? Not that I'm doubting you, you were always quite honest with me...@@" she pauses and looks you over. "@@.npc_exgirlfriend;Well, sort of, though I have the feeling you were lying to yourself about... yeah, so I won't hold that against you. Anyway, these are some serious claims, how did you even find out about all this?@@"<br>
<br>
[<<moveTo "event_exgirlfriend_secret_2" "Lie and say you found a file at work." 300 "<<set $scene.action='lie'>>">>]<br>
[<<moveTo "event_exgirlfriend_secret_2" "Tell her how, and where, you found out." 300 "<<set $scene.action='truth'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15 || $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_exgirlfriend_secret_2" "Proudly tell her you learned things while working as a prostitute." 300 "<<set $scene.action='slut'>>">>]
<<else>>
[@@.link_locked;You aren't so much a slut, or so brazen, as to tell your ex just how much of an enthusiastic whore you are.@@]
<</if>>
</div>/*#
#desc: tell exgirlfriend how you found out about her being drugged
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.knowYou = $scene.action>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'lie'>>
You lie and tell <<=setup.getNpcName("npc_exgirlfriend","first")>> that you found some files at work that revealed the truth about what was done to the two of you.<br>
<br>
She raises an eyebrow in suspicion, but does not call you out as she takes a sip of her drink.<br>
<br>
"@@.npc_exgirlfriend;I see... well you must be a Secretary for someone pretty important to get access to something like that... still, wow... I guess it's only fair that I give my side of things.@@"
<<case 'truth'>>
You tell <<=setup.getNpcName("npc_exgirlfriend","first")>> that you were working as a prostitute for a fancy corporate party when you overheard the scientist responsible for creating the drugs bragging.<br>
<br>
She blinks in surprise. "@@.npc_exgirlfriend;Prostitute? I thought you were a Secretary?@@"<br>
<br>
You explain that, actually... you're both...<br>
<br>
She shakes her head "@@.npc_exgirlfriend;wow, you really have changed... though, hey, if you enjoy it? Go for it! I'm glad you're opening up and coming into your own... still... well, I guess with you spilling the beans it's only fair that I give my side of things.@@"
<<case 'slut'>>
You proudly tell <<=setup.getNpcName("npc_exgirlfriend","first")>> that, in addition to your duties as a Secretary, you've been picking up side-work as a prostitute. Your gleeful admission has her jaw on the floor, but you continue on to explain how you were "working" a corporate party when you overhead a scientist brag about the drugging <<he npc_work_doctor>> did to you and <<=setup.getNpcName("npc_exgirlfriend","first")>>.<br>
<br>
It takes your ex a few moments to process things, but she eventually composes herself to respond. "@@.npc_exgirlfriend;Prostitute... wow, I mean, the Secretary thing was a shift, to say nothing of your other changes since we broke up, but this? And the way you talk about it... well it sounds like you went from locking me down with a virginity pledge to selling yourself on the street under some sort of "if you love something, never do it for free" logic.@@" She chuckles. "@@.npc_exgirlfriend;I'm not even mad... just impressed... well, impressed, and maybe jealous.@@" She winks as she continues "@@.npc_exgirlfriend;given your honest admission, well... it's only fair I give my side of things, right?@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
She finishes her drink, takes a deep breath, and starts to talk.<br>
<br>
[<<moveTo "event_exgirlfriend_secret_3" "Listen." 300>>]
</div>/*#
#desc: exgirlfriend tells her side
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.knowTruth = 2>>
<<applyStress -20>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
"@@.npc_exgirlfriend;So, what you said, well... it sheds a lot of light on things. That arousal turbo-charging? Yeah... I remember that happening, I thought I was going crazy, I'd never felt so horny in my life and you with that virginity pledge you had insisted on...@@" She sighs and shakes her head.<br>
<br>
"@@.npc_exgirlfriend;I think the real problem between us is that we were both subs... me more in the bedroom than my "normal" life but... still in need of someone to take charge in the bedroom so I could just surrender to the moment. We just didn't have the terminology to figure that out. The result was, in my case, dutifully going along with your request and in yours, well... you always were a bit of a doormat, you can't argue with that.@@"<br>
<br>
You nod and she continues. "@@.npc_exgirlfriend;So, back to the story — I was going out of my mind with horniness and flirting at you just seemed to make you more self-conscious... which I guess eventually led to your own drug issue. On my end though, well... I tried masturbating, but that wasn't enough, then the "Dreammaker" machine, but even that couldn't satiate me for long, especially since it took so much time to pull out and I was scared to death of what you'd think if you caught me using it... in the end, I made a compromise with myself since I was at the point that it felt like I NEEDED real flesh-and-blood sexual contact or I was going to go totally mad. The whole "anal doesn't count" was as much a lie to me as it was to you... and I'm sorry. From there, well... you know the rest...@@"<br>
<br>
You nod, several minutes passing before she breaks the silence.<br>
<br>
"@@.npc_exgirlfriend;So, uh... these drug effects... are they going to wear off?@@"<br>
<br>
You reply that you don't actually know.<br>
<br>
She hesitates for a moment. "@@.npc_exgirlfriend;Well... and this is probably going to sound crazy but... I really hope they don't. Like, it took getting used to, and it obviously blew things up between us but... I LIKE being constantly horny, and DTF on a moments notice. As to us, well... yeah, the joke about "and they were both bottoms" and all that. As rocky as it was, I think the separation was good for the both of us and while I'd maybe like to be friends again someday, I don't think we're really romantic-compatible, too much history, and, in a strange sense, too much personality overlap.@@"<br>
<br>
She's right but hearing her truth, and sharing your own... you do feel better, and from her expression you think she does too. You promise to let her know if you find out anything about the drugs long-term effects and the two of you sit for another couple minutes before concluding you need time alone to process things.<br>
<br>
You stand up and, to your slight surprise, she steps in for a platonic hug.<br>
<br>
She smiles and squeezes your hands. "@@.npc_exgirlfriend;Stay in touch, okay? I know your life went way crazier than mine, but well... in the end I think, or is that hope? That it'll work out for you, you just have to push through and figure out exactly what "working out" means.@@"<br>
<br>
You nod, the two of you somewhat awkwardly leaving the cafe before you watch her walk away through the mall.<br>
<br>
[<<moveTo "room_mall_interior" "The mall." 30>>]
</div>/*#
#desc: wake up after hours and find to drunk barkeeper
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -50>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
Groggily you wake up, finding yourself in the "private" room of the Usual Place, having apparently passed out after servicing your last client.<br>
<br>
Grabbing your money off the dresser you clean yourself up a bit and head downstairs, checking the time confirming that the bar is long closed.<br>
<br>
Dark and empty the bar feels strange after hours. You're about to cut your way across the eerie room when you hear a sound from over by the bar.<br>
<br>
[<<moveTo "room_foyer" "Ignore it and head home." 600>>]<br>
[<<moveTo "event_prostitute_after_hours_2" "Investigate." 180>>]
</div>/*#
#desc: barkeeper confesses her love for admin after hours
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_admin' 'other' 'theme_admin_other_barkeeper'
1
'theme_admin_barkeeper_1'
false
>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
Making your way to the end of the bar you realise that the shadowy lump is actually a person, the floor creaks under your feet and the figure stirs, <<=setup.getNpcName('npc_barkeeper', 'first')>> squinting up at you, still wrapped around a bottle of spirits.<br>
<br>
"@@.npc_barkeeper;What? Who's there, we're closed! No more booze, no more- oh, ishh you.@@" Her words are slurred, the scent of alcohol on her breath nearly enough to knock you over even from over a metre distant.<br>
<br>
She squints at you for several seconds before taking another slug from her bottle. "@@.npc_barkeeper;I thought, I thought you... both of you were gone already... you should, you should go home, I don't want you sleeping here... again.@@"<br>
<br>
Her voice trails off and she slumps over the bar, looking like she's passed out again only to perk up a moment later and stare up at you. "@@.npc_barkeeper;You know, you know why I let you off the hook the first time? Why I let you work here without paying me? I don't normally do things like that, not good business...@@"<br>
<br>
You shake your head slowly, though you aren't even sure if she's paying attention as she rambles onward.<br>
<br>
"@@.npc_barkeeper;Itsh <<=setup.getNpcName('npc_admin', 'first')>>... I thought, maybe, if I was nice to you it'd come back on me, but nope! <<He npc_admin>> just smiles at me and tells me to use <<his npc_admin>> first name, same as always.@@" She sighs, looking at her bottle and thinking for a moment before setting it aside without taking another drink. "@@.npc_barkeeper;It's not fair! Here you are, fucking anything and everything without a care in the world and me? All I want is a piece of <<if $npc_admin.fem>>that amazon<<else>>that adonis<</if>> and... nothing, alone and drunk after closing time in my own bar... again!@@"<br>
<br>
You hesitate, unsure what to say. You've noticed how much she flirts with <<=setup.getNpcName('npc_admin', 'first')>>, and <<he npc_admin>> can be a little formal and reserved on occasion, not wanting to intimidate or appear to be forcing <<himself npc_admin>> on anyone — maybe <<he npc_admin>> really doesn't know? Before you can come up with a reply she seems to sober up, continuing a bit more lucidly than before.<br>
<br>
"@@.npc_barkeeper;Ohmygod... I didn't mean... I shouldn't have said that, should I? I mean... I doubt I'll remember this conversation tomorrow, but you... promise not to tell <<him npc_admin>>... or anyone else? Please?@@"<br>
<br>
You've never seen <<=setup.getNpcName('npc_barkeeper', 'first')>> looking vulnerable like this before and you quickly assure her that her secret is safe with you.<br>
<br>
Relief is traced on her face as she smiles back at you and slides off her stool. "@@.npc_barkeeper;I'll, uh... be heading to bed now... I'll see you around, kay?@@"<br>
<br>
Swaying only a little she walks past you, heading up to the stairs to one of the private rooms.<br>
<br>
You stand watching until she disappears out of sight, wondering if you should do something more. As you turn that question over in your head you yawn and decide you should be on your way yourself.<br>
<br>
[<<moveTo "room_foyer" "Go home." 600>>]
</div>/*#
#desc: call barkeeper
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "Phonecall">>
<<set _call = 0>>
<<if (
( (($now.getUTCDay()>1)&&($now.getUTCDay()<=4)) && (($now.getUTCHours()>=19)&&($now.getUTCHours()<=24)) ) ||
( (($now.getUTCDay()==5)||($now.getUTCDay()==6)||($now.getUTCDay()==7)) && (($now.getUTCHours()>=18)&&($now.getUTCHours()<=24)) ) ||
( (($now.getUTCDay()==1)||($now.getUTCDay()==4)||($now.getUTCDay()==5)) && (($now.getUTCHours()>=0)&&($now.getUTCHours()<=1)) ) ||
( (($now.getUTCDay()==6)||($now.getUTCDay()==0)) && (($now.getUTCHours()>=0)&&($now.getUTCHours()<=3)) )
)>>
<<set _call = 'work'>>
<<elseif ( ($now.getUTCHours()>=2) && ($now.getUTCHours()<=12) )>>
<<set _call = 'sleep'>>
<<else>>
<<set _call = 'other'>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<switch _call>>
<<case 'sleep'>>
You try to call <<=setup.getNpcName('npc_barkeeper', 'first')>>. She does not answer her phone.<br>
<br>
<<printThought "Hmm... thinking about it, she works late. She's probably asleep right now. Maybe I should try later in the day.">>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Back." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 'work'>>
<<=setup.getNpcName('npc_barkeeper', 'first')>>. She picks up the phone after a short time ringing. You can hear the sound of the bar in the background.
<<if $npc_barkeeper.flags.prostitution.can_work_alley>>
"@@.npc_barkeeper;Oh hey <<=$player.first_name>>, it's you. I'm too busy to talk on the phone right now, come on down to the bar if you want to work.@@"
<<else>>
"@@.npc_barkeeper;Oh hey <<=$player.first_name>>, it's you, come on down to the bar if you want to chat.@@"
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<case 'other'>>
You call <<=setup.getNpcName('npc_barkeeper', 'first')>>. She picks up the phone after a short time ringing.
<<if $npc_barkeeper.flags.prostitution.can_work_alley>>
"@@.npc_barkeeper;Hey slut! I'm busy right now, but we can talk before or after your next shift, right?@@"<br>
<<else>>
"@@.npc_barkeeper;Oh hey <<=$player.first_name>>, it's you, I'm busy right now, but if you come down to the bar some evening we can have a chat, alright?@@"
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</switch>>
</div>/*#
#desc: pay barkeeper her cut from glory hole work
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.smart_req = 10>>
<<set $scene.barkeeper_base_pay = Math.ceil($npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay * $npc_barkeeper.flags.prostitution.her_cut)>>
<<if setup.getTotalValue("smart") < $scene.smart_req && setup.getTotalValue("bimbofication") <= setup.getTotalValue("smart")>>
<<set $scene.dumbmodifier = ($scene.smart_req - setup.getTotalValue("smart") + setup.getTotalValue("bimbofication"))/100>>
<<set $scene.barkeeper_pay = Math.ceil($scene.barkeeper_base_pay * random( 1.0-$scene.dumbmodifier, 1.0 + $scene.dumbmodifier))>>
<<else>>
<<set $scene.barkeeper_pay = $scene.barkeeper_base_pay>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
Slipping into the back room she turns to you with a raised eyebrow.<br>
<br>
"@@.npc_barkeeper;Well, how's tricks? Whattcha got for me?@@"<br>
<br>
<<if setup.getTotalValue("smart") >= $scene.smart_req>>
Doing some quick mental math you calculate that you
<<if $scene.barkeeper_pay <= 0>>
are totally paid up.
<<else>>
owe her <<=$scene.barkeeper_pay>> credits.
<</if>>
<br><br>
<<if $scene.barkeeper_pay > 0>>
[<<moveTo "event_prostitution_pay_2" "Pay exactly what you owe." 60>>]<br>
<</if>>
[<<link "Pay her some other amount.">><<openDialog "Give her money:" "dialogue_prostitution_pay">><</link>>]
<<elseif setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
Like... math is hard, while getting paid to suck <<getWordPenis>> makes you feel all tingly you don't really know how much you earned, or how many cocks you sucked. Probably not enough...<br>
<br>
[<<link "Take a guess at what you owe her.">><<openDialog "Give her money:" "dialogue_prostitution_pay">><</link>>]
<<else>>
You're not sure, but you think you
<<if $scene.barkeeper_pay <= 0>>
are all paid up, but maybe not? Math is tricky.
<<else>>
owe her something around <<=$scene.barkeeper_pay>> credits?
<</if>>
<br><br>
<<if $scene.barkeeper_pay > 0>>
[<<moveTo "event_prostitution_pay_2" "Give her $scene.barkeeper_pay credits." 60>>]<br>
<</if>>
[<<link "Offer her a portion of what you've earned.">><<openDialog "Give her money:" "dialogue_prostitution_pay">><</link>>]
<</if>>
</div>/*#
#desc: dialogue for paying barkeeper her cut from glory hole work
#status: FINISHED 0.8.1.0
#*/
<center>
How much will you offer her?
<<numberbox "$scene.barkeeper_pay" "" autofocus>>
</center>
<br>
@@.textRightSide;
<<button "Okay">>
<<moveTo 'event_prostitution_pay_2'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: barkeeper reacts to you paying her
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.no_money = $scene.barkeeper_pay > $player.money.total>>
<<if !$scene.no_money && $scene.barkeeper_pay > 0>>
<<if $scene.barkeeper_pay >= $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay>>
<<set $scene.variant = 'bribe'>>
<<set $scene.old_cut = 0 + $npc_barkeeper.flags.prostitution.her_cut>>
<<set $npc_barkeeper.flags.prostitution.her_cut = $npc_barkeeper.flags.prostitution.her_base_cut>>
<<set $scene.barkeeper_pay = Math.floor(.5*$npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay)>>
<<incrementEmotion 'affection' 'npc_barkeeper' 2>>
<<elseif $scene.barkeeper_pay > .5 * $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay>>
<<set $scene.variant = 'overpay'>>
<<set $scene.old_cut = 0 + $npc_barkeeper.flags.prostitution.her_cut>>
<<set $npc_barkeeper.flags.prostitution.her_cut = $npc_barkeeper.flags.prostitution.her_base_cut>>
<<set $scene.barkeeper_pay = Math.floor(.5*$npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay)>>
<<incrementEmotion 'affection' 'npc_barkeeper' 1>>
<<else>>
<<set $scene.variant = 'pay'>>
<<if $scene.barkeeper_pay < $scene.barkeeper_base_pay>>
<<set $npc_barkeeper.flags.prostitution.her_cut += 0.05>>
<<incrementEmotion 'anger' 'npc_barkeeper' 1>>
<<else>>
<<if $npc_barkeeper.flags.prostitution.her_cut > $npc_barkeeper.flags.prostitution.her_base_cut>>
<<set $npc_barkeeper.flags.prostitution.her_cut -= 0.05>>
<</if>>
<<incrementEmotion 'affection' 'npc_barkeeper' 1>>
<</if>>
<</if>>
<<addCredits `-($scene.barkeeper_pay)`>>
<<set $npc_barkeeper.flags.prostitution.money_earned += $scene.barkeeper_pay>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay = 0>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.no_money>>
<<printThought "I'm, like, such a ditz. I can't pay her <<=$scene.barkeeper_pay>>, I don't have that much cash!">><br>
<br>
[<<link "Offer her some other amount.">><<openDialog "Give her money:" "dialogue_prostitution_pay">><</link>>]
<<elseif $scene.barkeeper_pay < 0>>
<<printThought "I'm, like, such a ditz. I can't pay her a negative amount! That doesn't even make sense!">><br>
<br>
[<<link "Offer her some other amount.">><<openDialog "Give her money:" "dialogue_prostitution_pay">><</link>>]
<<elseif $scene.barkeeper_pay == 0>>
"@@.npc_barkeeper;Really, you call me back her to give me nothing?@@"<br>
<br>
<<if $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay > 0>>
"@@.npc_barkeeper;I mean, I guess you haven't done any work since we last evened up, so why did you waste my time like this?@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Apologise for wasting her time and return to the bar." 60>>]
<<else>>
"@@.npc_barkeeper;Come on, I know you've done some work, are you going to pay up or what?@@"<br>
<br>
[<<link "Offer her some other amount.">><<openDialog "Give her money:" "dialogue_prostitution_pay">><</link>>]<br>
[<<moveTo "room_usual_place_inside" "Say you forgot to bring the money with you and return to the bar." 60>>]
<</if>>
<<else>>
<<=setup.getNpcName('npc_barkeeper', 'first')>> counts the money you gave her.<br>
<br>
<<switch $scene.variant>>
<<case 'bribe'>>
"@@.npc_barkeeper;No, this is wrong, I'm pretty sure this is more than you've even earned! You're an employee, not a slave!@@"<br>
<br>
<<if $scene.old_cut > $npc_barkeeper.flags.prostitution.her_base_cut>>
"@@.npc_barkeeper;If this is about the back-pay you owe me... here, I'll take half, that comes to <<=$scene.barkeeper_pay>> credits, and I'll roll back my cut to <<=Math.floor($npc_barkeeper.flags.prostitution.her_cut*100)>>% going forward.@@"
<<else>>
"@@.npc_barkeeper;I believe my cut comes to <<=$scene.barkeeper_pay>> credits, so I'll take that, and you can keep yours, the way it's supposed to go, right?@@"
<</if>>
<<case 'overpay'>>
"@@.npc_barkeeper;No, this is wrong, this feels like more than half of what you've made! This is a business arrangement, not exploitation.@@"<br>
<br>
<<if $scene.old_cut > $npc_barkeeper.flags.prostitution.her_base_cut>>
"@@.npc_barkeeper;If this is about making up for shorting me before... I don't want to you starve! Well, not starve, since you've got a nice bellyful of cum, but you know what I mean. I'll just keep <<=$scene.barkeeper_pay>>, knock my percentage going forward down to <<=Math.floor($npc_barkeeper.flags.prostitution.her_cut*100)>>% and we'll call things square, alright?@@"
<<else>>
"@@.npc_barkeeper;Come on now, ten percent is easy — you just take what you earn, drop the last digit and give me that much! In this case that comes to <<=$scene.barkeeper_pay>> credits.@@"
<</if>>
<<case 'pay'>>
<<if $scene.barkeeper_pay == $scene.barkeeper_base_pay>>
"@@.npc_barkeeper;Hmm, this seems like exactly what I would expect from the time you've spent in the glory hole, good job!@@"
<<elseif $scene.barkeeper_pay < $scene.barkeeper_base_pay>>
<<if $npc_barkeeper.flags.prostitution.her_cut >= 0.5>>
"@@.npc_barkeeper;Are you just terrible at math or do you think I won't notice? I made it real easy — I get half, you get half, try to do better at giving me my share in the future or I might be inclined to stop letting you work here.@@"
<<else>>
"@@.npc_barkeeper;Hmm, this seems a bit light for all the time you've spent in the glory hole... I'm sorry to do this, but I'm going to revise our agreement — going forward I expect you to pay <<=Math.floor($npc_barkeeper.flags.prostitution.her_cut*100)>>% to make up for you trying to short-change me.@@"
<</if>>
<<else>>
<<if $npc_barkeeper.flags.prostitution.her_cut > $npc_barkeeper.flags.prostitution.her_base_cut>>
"@@.npc_barkeeper;Hmm, a bit heavy today, I guess this makes up for your earlier failings. Since you've put in the effort to make things square I'd reduce my take back down to <<=Math.floor($npc_barkeeper.flags.prostitution.her_cut*100)>>%.@@"
<<else>>
"@@.npc_barkeeper;Hmm, this feels a bit heavy. I don't know if you're just bad at math, trying to curry favour or what, I can certainly use the money though, so thanks!@@"
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.variant <<=$scene.variant>>
<</switch>>
<br><br>
[<<moveTo "room_usual_place_inside" "Head back to the bar." 60>>]
<</if>>
</div>/*#
#desc: pulled aside for not paying
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You've barely stepped into the bar when <<=setup.getNpcName("npc_barkeeper","first")>> locks eyes with you and, motioning for someone to cover the bar, leads you towards her back room.<br>
<br>
<<printThought "Uh-oh, she looks pissed...">><br>
<br>
[<<moveTo "event_gloryhole_punish_2" "Continue." 180>>]
</div>/*#
#desc: confronted for not paying up
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
In the privacy of the bar's back-room <<=setup.getNpcName("npc_barkeeper","first")>> confronts you over your lack of payments.<br>
<br>
<<if false && ["strict", "forced"].includes($player.sec_style.submission.prostitution) && $fetish.get_raped>>
"@@.npc_barkeeper;So, <<callPlayer "npc_barkeeper">>, you seem to be falling behind on payments. Fortunately for you, I have JUST the plan for you to square things up.@@"<br>
<br>
[<<moveTo "event_gloryhole_punish_4" "You gulp nervously, it doesn't seem like she's giving you a choice." 180>>]
<<else>>
"@@.npc_barkeeper;I thought the two of us had a deal? I permit the use of my facilities, and you provide me with a mere <<=$npc_barkeeper.flags.prostitution.her_cut*100>>% cut of the action. You have certainly been availing yourself of the on-site gloryhole... but my credit purse is looking quite light, in comparison. You owe me a total of <<=$npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay>> credits, are you ready to pay up? And no partial payments, I want it all, right now, every last credit... and a ten percent surcharge for making me track you down like this.@@"<br>
<br>
<<if $player.money.total >= Math.ceil($npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay * 1.1)>>
[<<moveTo "event_gloryhole_punish_3_pay" "Pay up." 360>>]<br>
<<else>>
[@@.link_locked;You do not have enough to pay your debt.@@]<br>
<</if>>
[<<moveTo "event_gloryhole_punish_3" "Tell her you do not have the money." 1 "<<set $scene.pay=false>>">>]
<</if>>
</div>/*#
#desc: confronted for not paying up
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _cred = -Math.ceil($npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay * 1.1)>>
<<addCredits _cred>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay = 0>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You apologise for falling behind and hand over the credits you owe. <<=setup.getNpcName("npc_barkeeper","first")>> sniffs as she pockets the sum, seeming, perhaps, almost annoyed, and you wonder if she had some alternate plans in mind.<br>
<br>
"@@.npc_barkeeper;Very well. Take care to stay on top of things in the future.@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Back to the bar." 180>>]
</div>/*#
#desc: consequences of not paying up, equipped
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "gloryhole_punishment_bondage">>
<<wearItemSet "gloryhole_punishment_bondage">>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You explain that you do not have <<=ps(setup.getNpcName("npc_barkeeper","first"))>> money but, rather than being upset, she merely smiles and opens a drawer in her desk.<br>
<br>
"@@.npc_barkeeper;I anticipated something like this. <<callPlayer "npc_barkeeper">> who fail to pay their debts tend to be poor at money management, in general.@@"<br>
<br>
She walks around behind you and there is a sudden click as your hands are cuffed behind your back. "@@.npc_barkeeper;There we go. I will let you out at the end of the evening, after you have worked off your debts.@@"<br>
<br>
You reflexively struggle against the cuffs, but <<=setup.getNpcName("npc_barkeeper","first")>> is already pulling a hood over your head, followed by a ring gag cinched tight between your lips when you open them to object.<br>
<br>
"@@.npc_barkeeper;There we go. A perfect faceless and anonymous dick-sucking fuck-hole. Your true calling, you have to admit, and now you don't have to worry about distractions while you catch up on your debt.@@"<br>
<br>
[<<moveTo "event_gloryhole_punish_4" "You hear the door open behind you." 120>>]
</div>/*#
#desc: collared for not paying up
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem "bondage_collar_promo">>
<<wearItem "bondage_collar_promo" true>>
<</if>>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<</if>>
<<set $player.location to "The Usual Place, Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/usual_place_back_room.png" setup.charImage("npc_barkeeper") setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You turn at the sound of the door to see <<=setup.getNpcName("npc_prostitute","first")>> walk in. <<=setup.getNpcName("npc_barkeeper","first")>> <<if $scene.addCollar>>slaps a collar around your neck and <</if>>clips a leash to the front of your collar. "@@.npc_barkeeper;<<if $player.flags.collar.collarId>>You know, for a collared slave, you are quite poor at fulfilling commitments.<<else>>You really belong in a collar. Maybe an owner to hold your leash would have kept you from falling behind on payments?<</if>>@@" She chuckles as she hands you off to before handing you off to <<=setup.getNpcName("npc_prostitute","first")>>. "@@.npc_barkeeper;Well! I shall wish you a profitable evening and leave you in <<=ps(setup.getNpcName("npc_prostitute","first"))>> capable hands.@@"<br>
<br>
<<=setup.getNpcName("npc_prostitute","first")>> gives your leash a tug and you half-stumble forward, having no choice but to follow after as she leads you out into the bar.<br>
<br>
[<<moveTo "event_gloryhole_punish_5" "Follow..." 180>>]
</div>/*#
#desc: lead through bar
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
The moment you step back into the bar you're attracting glances... but that shoots through the roof as <<=setup.getNpcName("npc_barkeeper","first")>> jumps back behind the bar and makes an announcement. "@@.npc_barkeeper;If I may have your attention! If you look towards the centre of the bar you will see two of our lovely prostitutes passing though. <<=setup.getNpcName("npc_prostitute","formal")>> is available for hire, per usual, but her masked friend, well... they have been QUITE the naughty slut and fallen into a spot of debt. In a few short minutes they'll be serving clients in the gloryhole to work their way out. To sweeten the deal I'll be offering a free drink to anyone who avails themselves of the bar's facilities. Remember: you aren't getting your cock sucked, or your cunt licked, you're helping a desperate slut get back on her feet!@@"<br>
<br>
If you had been attracting attention before, now all eyes are on you as a chorus of wolf whistles serenade you across the bar to the bathroom...<br>
<br>
[<<moveTo "event_gloryhole_punish_6" "Continue." 360>>]
</div>/*#
#desc: start working
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "leash_black">>
<<deleteItem "leash_black" true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
In the bathroom <<=setup.getNpcName("npc_prostitute","first")>> leads you straight to the gloryhole, where you note a slight modification has been made, the normally open hole now "protected" by a coin-operated cover.<br>
<br>
You don't get a chance to examine the contraption more closely before <<=setup.getNpcName("npc_prostitute","first")>> drags you into the gloryhole and pushes you down to your knees. The long evening ahead will be made somewhat easier by the pads that have been placed on the floor... but more difficult, as well, but your leash being removed in favour of a spring that draws your gag-spread lips constantly towards the gloryhole.<br>
<br>
"@@.npc_prostitute;I'll be by to check on you later, but you're already getting a line so... good luck!@@"<br>
<br>
She closes the stall door just as the cover on the other side of the gloryhole slides out of the way and a cock all but pokes you in the eye...<br>
<br>
[<<moveTo "event_gloryhole_punish_7" "Get to sucking..." 2400>>]
</div>/*#
#desc: gloryhole punish sucking
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 13 'terrible' $INCOGNITO>>
<<applyExperience 'bondage' 12 'terrible' $INCOGNITO>>
<<applyExperience 'whoring' 5 'terrible' $INCOGNITO>>
<<if $fetish.cum>>
<<applyExperience 'cum' 12 'terrible' $INCOGNITO>>
<</if>>
<<changeMakeupMessed 50>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
The moment <<=setup.getNpcName("npc_prostitute","first")>> leaves you alone in the stall you're at work, the spring connected to your collar making it a struggle to pull your face more than a few centimeters away from the gloryhole orifice, leading to a constant battle between sucking whatever is stuck through and fighting for air.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
The gag leaves you little alternative but to drool as
<<if setup.getTotalValue("oral") > 15>>
even your god-tier skills are pushed to the limit.
<<else>>
you are forced to deploy every skill you have.
<</if>>
<<else>>
Within minutes you are a drooling, weeping mess as
<<if setup.getTotalValue("oral") > 5>>
you struggle to keep up, your modest oral skills barely sufficient to keep you on top of the situation as cock after cock makes use of your gag-spread lips.
<<else>>
a challenge far above your skill is foisted upon you.
<</if>>
<</if>>
<br><br>
Gasping, licking, and sucking, the closest you get to relief are on the rare occasion that a cunt is pressed against the gloryhole, rather than a cock thrust through... though even then, your tongue soon tires from straining to reach and lick. Attempts to catch your breath, or escape a particularly massive member, by leaning back inevitably lead to a bumped nose when the implacable pull of the spring wins out, and you soon lose track of anything other than survival, sweating under your latex hood as you suck, slurp, serve,<<if $fetish.cum>> swallow,<</if>> and gasp.<br>
<br>
When the stream of customers fall off all you can do is lean against the wall, your lips pressed against the stained hole, drool <<if $fetish.cum>>and cum <</if>>running uncontrollably down your chin as you pant and try to remain on alert for the sound of your next customer.<br>
<br>
[<<moveTo "event_gloryhole_punish_8" "You hear someone at the stall door." 300>>]
</div>/*#
#desc: npc_prostitute drops in to tease
#status: RELEASED 0.8.9.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You turn your head to look at the door to see <<=setup.getNpcName("npc_prostitute","first")>> re-enter the stall for a check-in. Cramming herself in behind you, she closes the door for what passes for privacy before kneeling down next to you, her hand idly stroking your latex-hooded skull.<br>
<br>
"@@.npc_prostitute;Having a productive evening?@@" She asks with a chuckle, your response a muffled URK as a customer thrusts back down your throat.<br>
<br>
"@@.npc_prostitute;Don't let me interrupt,@@" she notes, her hand resting commandingly on the back of your head as you resume the mix of sucking, bobbing and struggling for air against the spring pulling you inexorably towards the cock.<br>
<br>
Unconcerned by your oral "distraction" <<=setup.getNpcName("npc_prostitute","first")>> continues to chat. "@@.npc_prostitute;I hope you're enjoying the system, I actually came up with it, myself... well, I had a bit of help. You see <<=setup.getNpcName("npc_barkeeper","first")>> and I were tying one on after a shift and, well... ideas went back and forth and I ended up making a bet that if I ever fell behind on payments, well...@@" She pushes your face forward, grinding your nose against the partition as you deep-throat the cock and gurgle, a grunt of approval sounding from the other side of the wall as your customer cums<<if $fetish.cum>>, <<getWordCum>> shooting out your nose and running down your chin as they soften and pull<<else>>and then pulls<</if>> away.<br>
<br>
"@@.npc_prostitute;A fun design challenge to 3d print... and a "test" run to work out all the kinks... well, not all the kinks... in fact, I think being forced to suck by my own contraption only made me more of a cock-addicted slut... but I suppose you know the feeling?@@"<br>
<br>
You gurgle in response as a fresh, truly massive massive schlong stretches your throat.<br>
<br>
"@@.npc_prostitute;Quite so... of course, that wasn't for as long as you've been in here, but everything seems to be holding up, right? Anyway, the reason I dropped in like this was that, well... you've made things a slow night for me and, well... if I can't get any customers, at least I can get off. You aren't using this hole, right?@@"<br>
<br>
Your position deep-throating the cock sticking through the wall is made even more of a struggle as she lifts your hips and moves into position behind you.<br>
<br>
[<<moveTo "event_gloryhole_punish_9" "Get double-pounded working off your debt..." 360>>]
</div>/*#
#desc: npc_prostitute fucks you
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_prostitute.penis_size 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
There isn't much space in the stall, but that just means that <<=setup.getNpcName("npc_prostitute","first")>> is pressed tight against your rear as she <<if setup.checkItemTypeWorn("plug", true)>>as she slides free your plug and<</if>> slides into your ass.<br>
<br>
Hands gripping your hips, she takes you hard and fast as you struggle to balance, breath... and continue to suck on the monster that barely fit through your gag.<br>
<br>
"@@.npc_prostitute;Goddess you're fucking tight... almost seems like a waste not to put both of your holes up for sale... heh, maybe my next engineering challenge...@@" She states, giving your ass a slap for emphasis that echoes off the bathroom tile.<br>
<br>
You hope you don't bruise your nose as she increases the pace, your poor body taking it from both ends until the cock spreading your lips twitches<<if $fetish.cum>> and pulls halfway back to spit its salty load across your tongue<</if>> and <<=setup.getNpcName("npc_prostitute","first")>> cums in kind.<br>
<br>
The lack of cock up front, and the inability to use your arms, has your face sliding down the wall until the spring attached to your collar is all but choking you, but <<=setup.getNpcName("npc_prostitute","first")>> fixes things, first shoving <<if setup.checkItemTypeWorn("plug", true)>>your plug back<<else>>a plug<</if>> into your ass before steadying you back into a kneeling position.<br>
<br>
<<if $fetish.cum>>
"@@.npc_prostitute;Wouldn't want you leaking all over the floor,@@" she states with a laugh, wiggling the plug to churn up the hot load she just shot into your ass... totally heedless of the puddle of drool and semen that continues to collect under your face.<br>
<br>
<</if>>
"@@.npc_prostitute;Well it's back to work, now. I'll go have <<=setup.getNpcName("npc_barkeeper","first")>> make another call for customers, we wouldn't want you to still be in debt at the end of the night, right? And, after covering the costs of the complimentary drinks, well... you're making less than ten credits a blow!@@"<br>
<br>
<<if $fetish.cum>>
You blow a cum-bubble through your nose and moan through your gag as your tired tongue flails in the mix of drool and semen that is all you've been able to taste since you started.
<<else>>
You moan through your gag as
<</if>>
<<=setup.getNpcName("npc_prostitute","first")>> leaves the stall, closing the door to leave you alone as you
<<if $fetish.piss>>
overhear her saying something to another person in the bathroom... a sales pitch, you estimate, as you are soon tasting the last dregs of beer-flavoured piss as someone jams a softened cock past your gag and unleashes the last of their bladder... one of the faster jobs you've done, this evening, but easily the most degrading...<br>
<br>
Still cuffed, collared, gagged and pulled towards the gloryhole by the ever-tugging spring, you have little choice but to settle in and
<</if>>
wait for your next client.<br>
<br>
[<<moveTo "event_gloryhole_punish_10" "Keep working..." 3600>>]
</div>/*#
#desc: finish the night punish gloryhole
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 1000>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png">>
<div id="invframe" class="scrolltext">
You soon lose count, and track, of anything but <<if $fetish.cum>>the taste of cum, and <</if>>the feel of cock after cock ravaging your throat as the night rolls on and on, relying more and more on the spring to keep you vertical as you kneel in a growing pool of <<if $fetish.cum>>cum and drool<<else>>your own drool<</if>> as you work the night away.<br>
<br>
<<if $now.getUTCHours() < 3>>
<<set _close = setup.setNextDate($now, 0, 3, 20)>>
<<else>>
<<set _close = setup.setNextDate($now, 1, 3, 20)>>
<</if>>
<<set _timeToClose = setup.secondsToDate($now,_close)>>
[<<moveTo 'event_gloryhole_punish_11' 'Continue.' _timeToClose>>]
</div>/*#
#desc: end of punishment night
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("oral") > 10>>
<<set $npc_barkeeper.flags.prostitution.money_earned += $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay = 0>>
<<else>>
<<if setup.getTotalValue("oral") > 5 && (true || !["strict", "forced"].includes($player.sec_style.submission.prostitution))>>
<<set $npc_barkeeper.flags.prostitution.money_earned += Math.floor($npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay * .9)>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay = Math.ceil($npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay * .1)>>
<<else>>
<<set $npc_barkeeper.flags.prostitution.money_earned += Math.floor($npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay * .5)>>
<<set $npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay = Math.ceil($npc_barkeeper.flags.prostitution.gloryhole_earned_since_pay * .5)>>
<</if>>
<</if>>
<<if $scene.addCollar>>
<<removeItem "bondage_collar_promo" true>>
<<deleteItem "bondage_collar_promo">>
<</if>>
<<removeItemSet "gloryhole_punishment_bondage">>
<<deleteItem "handcuffs_back">>
<<deleteItem "ring_gag">>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_toilet.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You don't think you quite passed out... but you aren't certain as your train of cock after cock comes to an end with <<=setup.getNpcName("npc_barkeeper","first")>> herself appearing to release you from your predicament and lift you back to your feet.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
"@@.npc_barkeeper;Honestly, I'm impressed by what a natural-born cocksucker you are... though, at this efficiency, you really have no excuse not to keep up with your payments. I guess we'll see what the future brings, hmm?@@"
<<else>>
"@@.npc_barkeeper;Not bad... looks like you sucked well enough to get out of hock... but hopefully you learned your lesson so I don't have to put you back here in the future...@@"
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5 && (true || !["strict", "forced"].includes($player.sec_style.submission.prostitution))>>
"@@.npc_barkeeper;You did pretty good... but not quite enough to have us fully square. Still, it's enough so you should be able to cover the rest on your own... and hopefully will keep you on top of things lest I book you for another shift in here.@@"
<<else>>
"@@.npc_barkeeper;Gotta say, your performance tonight was quite lackluster... not even enough to cover your tab... though enough that I'll give you some time to pay up before I have you pull another shift in here...@@"
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName("npc_barkeeper","first")>> peels off your hood to unleash a small gush of sweat and drool, chuckling as she tosses the sopping item back at you. "@@.npc_barkeeper;You can keep that... and you look like hell. I took the liberty of calling a cab for you so... have a good night.@@"<br>
<br>
You nod, your jaw too sore to speak as you stagger out of the bar, into the cab and then somehow back up the elevator to your floor.<br>
<br>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && !$currentTasks.manager_morning_inspection_task.finished>>
[<<moveTo 'event_gloryhole_pass_out_3' 'Stagger into your flat...' 600>>]
<<else>>
[<<moveTo 'room_foyer' 'Stagger into your flat...' 600>>]
<</if>>
</div>/*#
#desc: self-describe your appearance while working as prostitute
#status: FINISHED 0.8.1.0
#ignore_spell: collartype,prostitutionmodifiers,breastforms
#*/
<<if $scene.clothingModifiers.physicalGender >= 100>>
From your face to your <<getWordBreasts>> and down your feminine curves to your sexy ass you are looking hyper-feminine.
<<elseif $scene.clothingModifiers.physicalGender >= 80>>
<<if $player.body.breastsize[0] > 0>>Your <<getWordBreasts>> and overall figure combine to have you looking<<else>>You look<</if>> feminine.
<<elseif $scene.clothingModifiers.physicalGender >= 60>>
You can physically pass as female.
<<elseif $scene.clothingModifiers.physicalGender >= 40>>
You are looking physically somewhat androgynous.
<<elseif $scene.clothingModifiers.physicalGender >= 30>>
You can physically pass as male.
<<elseif $scene.clothingModifiers.physicalGender >= 10>>
You are looking unmistakably masculine.
<<else>>
You are a physical paragon of the masculine ideal.
<</if>>
<<hint $options "Things that will make you look physically more feminine: no/chastity belt-contained penis, breasts, corset-enhanced figure, painted nails, feminine hair, makeup.">>
<br><br>
<<if $scene.clothingModifiers.clothingFemale > 75>>
<<if $scene.clothingModifiers.physicalGender >= 60>>
Your outfit turns your already-feminine appearance up to 11.
<<elseif $scene.clothingModifiers.physicalGender < 40>>
Your ultra-fem attire looks totally at odds with your masculine figure.
<<else>>
Your feminine attire tilts your androgynous appearance towards the feminine side.
<</if>>
<<elseif $scene.clothingModifiers.clothingMale > 75>>
<<if $scene.clothingModifiers.physicalGender >= 60>>
Your masculine clothing totally clashes with your femme physical appearance.
<<elseif $scene.clothingModifiers.physicalGender < 40>>
Your manly clothes are perfect for your masculine frame.
<<else>>
Your masculine attire somewhat overpowers your androgynous appearance.
<</if>>
<<elseif $scene.clothingModifiers.clothingAndro > 75>>
<<if $scene.clothingModifiers.physicalGender >= 60>>
Your feminine appearance serves as a contrast to the androgynous stylings of your outfit.
<<elseif $scene.clothingModifiers.physicalGender < 40>>
Your masculine appearance stands in stark contrast to the androgynous stylings of your outfit.
<<else>>
Your gender-neutral attire meshes perfectly with your androgynous appearance.
<</if>>
<<else>>
<<if $scene.clothingModifiers.physicalGender >= 60>>
Your clothes fail to do much for your feminine figure.
<<elseif $scene.clothingModifiers.physicalGender < 40>>
Your clothes fail to do much for your masculine figure.
<<else>>
Your clothes fail to do much for your androgynous figure.
<</if>>
<</if>>
<<if $scene.clothingModifiers.maid > 75>>
Your attire is that of
<<switch $scene.clothingModifiers.attireType>>
<<case "formal">>
an ultra-formal
<<case "kinky_formal">>
a formal... and very kinky,
<<case "office">>
a classy
<<case "casual">>
a casual
<<case "slutty">>
a slutty
<<case "kinky">>
a kinky
<<case "kinky_office">>
a kinky office
<<case "semi-formal" "smart_casual" "mixed">>
a cute
<<default>>
ERROR: unhandled maid attire type: <<=$scene.clothingModifiers.attireType>>
<</switch>>
maid.
<<elseif $scene.clothingModifiers.nun > 70>>
<<if setup.checkItemWorn('nun_habit_black') && setup.checkItemWorn('nun_robes_black') && setup.checkItemWorn('latex_nun_catsuit_skin') && setup.checkItemWorn('latex_nun_corset_black') && setup.checkItemWorn('latex_nun_panties_black') && setup.checkItemWorn('latex_nun_stockings_black') && setup.checkItemWorn('latex_nun_habit_black')>>
You are layered up as if you were a full-fledged nun dedicated to the Church of the Goddess out ministering to the world; your kinky catsuit and steep heels concealed beneath your flowing robes. The only thing missing from your ensemble is a nun's blessed chastity belt<<if setup.checkItemTypeWorn("cage")>>... though you've made do as well as you can<</if>>.
<<elseif setup.checkItemWorn('nun_habit_black') && setup.checkItemWorn('nun_robes_black')>>
You are dressed as a modest, devout nun dedicated to the Church of the Goddess, ready to minister to the world.
<<elseif setup.checkItemWorn('latex_nun_catsuit_skin') && setup.checkItemWorn('latex_nun_corset_black') && setup.checkItemWorn('latex_nun_panties_black') && setup.checkItemWorn('latex_nun_stockings_black') && setup.checkItemWorn('latex_nun_habit_black')>>
You are dressed as a kinky, devout nun dedicated to the Church of the Goddess, ready to take your place in a sensuous, private ritual.
<<else>>
You are dressed in somewhat mismatched nun's attire.
<</if>>
<<elseif $scene.clothingModifiers.schoolgirl > 50>>
You are dressed as a sexy, slutty schoolgirl.
<<else>>
The
<<switch $scene.clothingModifiers.attireType>>
<<case "formal">>
<<if $scene.clothingModifiers.attireMod > 50>>
formal attire
<<elseif $scene.clothingModifiers.attireMod > 0>>
quasi-formal attire
<<else>>
informal attire
<</if>>
<<case "office">>
<<if $scene.clothingModifiers.attireMod > 50>>
businesslike attire
<<elseif $scene.clothingModifiers.attireMod > 0>>
business casual attire
<<else>>
sloppy work attire
<</if>>
<<case "kinky_office">>
<<if $scene.clothingModifiers.attireMod > 50>>
kinky businesslike attire
<<elseif $scene.clothingModifiers.attireMod > 0>>
kinky business casual attire
<<else>>
sloppy, but kinky, work attire
<</if>>
<<case "casual">>
<<if $scene.clothingModifiers.attireMod > 50>>
ultra laid back attire
<<else>>
casual attire
<</if>>
<<case "slutty">>
<<if $scene.clothingModifiers.attireMod > 50>>
ultra-slutty attire
<<else>>
slightly slutty attire
<</if>>
<<case "kinky" "kinky_formal">>
<<if $scene.clothingModifiers.attireMod > 50>>
very
<<else>>
somewhat
<</if>>
kinky attire
<<case "kinky_formal">>
<<if $scene.clothingModifiers.attireMod > 50>>
very
<<else>>
somewhat
<</if>>
kinky formal attire
<<case "semi-formal">>
<<if $scene.clothingModifiers.attireMod > 50>>
semi-formal attire
<<else>>
almost semi-formal attire
<</if>>
<<case "smart_casual">>
<<if $scene.clothingModifiers.attireMod > 50>>
smart casual attire
<<else>>
not quite casual attire
<</if>>
<<case "mixed">>
<<if $scene.clothingModifiers.attireMod > 50>>
mismatched outfit
<<elseif $scene.clothingModifiers.attireMod > 0>>
confused outfit
<<else>>
totally slapdash outfit
<</if>>
<<default>>
ERROR: unhandled attire type: <<=$scene.clothingModifiers.attireType>>
<</switch>>
gives you the look of <<=$scene.clothingModifiers.styleDesc>>.
<</if>>
<br><br>
<<if setup.checkItemTypeWorn("hood") && !setup.checkItemTypeTag('hood', ['openFace'])>>
Your hair and makeup<<if $scene.clothingModifiers.makeupStyle == "">>, or lack of makeup<</if>> are hidden beneath a hood, lending you an air of mystery...
<<elseif $scene.clothingModifiers.makeupStyle != "">>
<<if $scene.clothingModifiers.makeupMessed < 50>>
<<if $scene.clothingModifiers.makeupMessed == 0>>
Your makeup is utterly flawless and perfect,
<<elseif $scene.clothingModifiers.makeupMessed < 25>>
Your makeup is showing only the slightest indications of wear,
<<else>>
Your makeup is barely holding up,
<</if>>
<<if setup.checkItemTypeTag('hood', ['openFace'])>>
framed by your hood,
<</if>>
<<switch $scene.clothingModifiers.makeupStyle>>
<<case "nomakeupmakeup">>
subtly enhancing your natural beauty whilst remaining invisible to all but the most keen eye.
<<case "normalmakeup">>
serving to bring out your best features in a nice classically made up look.
<<case "ultimatebimbo">>
the thickly applied "warpaint" marking you as a bimbo whore.
<<case "sissy_doll">>
the heavy makeup making you look like a <<if $fetish.sissy>>sissy<<else>>cute<</if>> doll.
<<case "expertmakeup">>
the striking makeup style making a real impression.
<<case "camgirl">>
the heavy makeup style coming off rather slutty.
<<case "egirl">>
the heavy, throwback style looking pretty slutty.
<<case "moviestar">>
the intricate makeup styled to be ready for the runway.
<<case "qtpie">>
the thick, but very cute makeup.
<<default>>
ERROR, unknown makeup template: <<=$scene.clothingModifiers.makeupStyle>>
<</switch>>
<<elseif $scene.clothingModifiers.makeupMessed == 100>>
Every trace of intent or skill has been erased from your face, leaving your makeup nothing but a smear.
<<else>>
<<if $scene.clothingModifiers.makeupMessed < 75>>
Your makeup is almost totally destroyed, your lipstick smudged and eyeliner running down your messy cheeks, leaving it only barely perceptible that it once
<<else>>
Your makeup is totally ruined, lipstick smudged and eyeliner streaking your cheeks to completely negate the fact that it once
<</if>>
<<switch $scene.clothingModifiers.makeupStyle>>
<<case "nomakeupmakeup">>
subtly enhanced your natural beauty whilst remaining invisible to all but the most keen eye.
<<case "normalmakeup">>
served to bring out your best features in a nice classically made up look.
<<case "ultimatebimbo">>
was caked on thick and bold to give you the look of a bimbo whore.
<<case "sissy_doll">>
had you looking like a <<if $fetish.sissy>>sissy<<else>>cute<</if>> doll.
<<case "expertmakeup">>
gave you a bold, slightly goth look.
<<case "camgirl" "egirl">>
was applied thick to make you look kind of slutty.
<<case "moviestar">>
was the picture of showbiz style.
<<default>>
ERROR, unknown makeup template: <<=$scene.clothingModifiers.makeupStyle>>
<</switch>>
<</if>>
<<else>>
Your face is truly "natural" — totally untouched by makeup.
<</if>>
<br><br>
<<if setup.isBodySlotVisible("head")>>
<<switch setup.getCurrentHairstyle().femininity>>
<<case -1>>
Your hair is short and very masculine.
<<case 0 1 2>>
Your hair is fairly androgynous.
<<case 3 4>>
Your hair is cute and slightly femme.
<<case 5 6>>
Your hair is very feminine.
<<case 7 8 9>>
Your hair screams femininity.
<<case 10 11 12>>
Your hair is over the top feminine.
<<default>>
ERROR: unexpected hair femininity <<=setup.getCurrentHairstyle().femininity>>
<</switch>>
<</if>>
<<if setup.checkItemTagWorn("breastform")>>
<<if $player.body.breastsize[0] < setup.getFakeBreastSizeInt()>>
The breastforms you are wearing grant you a set of
<<switch setup.calcBreastSize()>>
<<case "massive">>
massive <<=setup.getCupSize(setup.getFakeBreastSizeInt())>> cup breasts, the artificial orbs probably the first thing about you anyone would notice.
<<case "large">>
large <<=setup.getCupSize(setup.getFakeBreastSizeInt())>> cup breasts, the big bolt-ons making quite the statement.
<<case "medium">>
<<=setup.getCupSize(setup.getFakeBreastSizeInt())>> cup breasts, as flattering to your profile as they are artificially perky.
<<case "small">>
small <<=setup.getCupSize(setup.getFakeBreastSizeInt())>> cup breasts, your artificial enhancements only noticeable from certain angles.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<else>>
Your breastforms make minimal impression compared to your naturally
<<switch setup.calcBreastSize()>>
<<case "massive">>
massive <<=setup.getCupSize($player.body.breastsize[0])>> cup breasts.
<<case "large">>
large <<=setup.getCupSize($player.body.breastsize[0])>> cup breasts.
<<case "medium">>
<<=setup.getCupSize($player.body.breastsize[0])>> cup breasts.
<<case "small">>
small <<=setup.getCupSize($player.body.breastsize[0])>> cup breasts.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<</if>>
<<else>>
<<switch setup.calcBreastSize()>>
<<case "massive">>
Your massive <<=setup.getCupSize($player.body.breastsize[0])>> cup breasts are probably the first thing about you anyone would notice.
<<case "large">>
Your large <<=setup.getCupSize($player.body.breastsize[0])>> cup breasts are making a statement.
<<case "medium">>
Your <<=setup.getCupSize($player.body.breastsize[0])>> cup breasts are nice-sized and perky.
<<case "small">>
Your small <<=setup.getCupSize($player.body.breastsize[0])>> cup breasts are only noticeable from certain angles.
<<case "none">>
Your chest is smooth and flat.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<</if>>
<br><br>
<<if $fetish.hair_growth>>
<<if $player.sec_style.body.hair_face>>
Technology has obliviated your need to shave and left
<<if $player.sec_style.body.hair_body>>
your body and face smooth and free of unwanted hair.
<<else>>
you naturally smooth and free of unwanted facial hair.
<</if>>
<<else>>
<<switch Math.floor($player.body.facialhair)>>
<<case 0>>
You are freshly shaved.
<<case 1>>
You are sporting a bit of stubble.
<<case 2 3 4>>
You are looking positively scruffy.
<<case 5>>
Your beard is really coming in...
<<default>>
ERROR: unexpected player.body.facial_hair <<=$player.body.facialhair>>
<</switch>>
<</if>>
<br><br>
<<if !$player.sec_style.body.hair_body>>
<<switch Math.floor($player.body.bodyhair)>>
<<case 0>>
You body is delightfully smooth and free of hair.
<<case 1>>
You have the slightest amount of thin body hair.
<<case 2 3 4>>
Your body hair is definitely becoming noticeable.
<<case 5>>
You look pretty short for a wookie, your body hair is out of control.
<<default>>
ERROR: unexpected player.body.body hair <<=$player.body.bodyhair>>
<</switch>>
<br><br>
<</if>>
<<else>>
Your face and body are smooth and naturally hairless.<br>
<br>
<</if>>
<<if $scene.clothingModifiers.collarType != "">>
Topping off your outward appearance,
<<switch $scene.clothingModifiers.collarType>>
<<case "sissy">>
the pink frills around your neck <<if $fetish.sissy>>and the word "SISSY" <</if>>acting like your own personal branding.
<<case "fetish">>
the fetishistic bondage collar advertises that you aren't just any prostitute, but a proud sex slave.
<<case "fashion">>
your necklace attractively enhancing the appearance of your throat.
<<case "tie">>
your tie nicely represents the choking hand of the corporate world controlling your life.
<<default>>
ERROR, unknown prostitutionModifiers.collarType <<=$scene.clothingModifiers.collarType>>
<</switch>>
<br><br>
<</if>>
<<switch $scene.clothingModifiers.cleanliness>>
<<case "piss">>
You reek, your clothes stained with <<getWordPiss>>.
<<case "cum">>
You reek, your clothes stained with <<getWordCum>>.
<<case "dirty">>
Your clothes are quite dirty.
<<case "sweaty">>
You smell a bit rank, your clothes sweaty from exertion.
<<case "soiled">>
Your clothes are looking a bit soiled.
<<case "clean">>
Your clothes are quite clean.
<<case "immaculate">>
Your clothes are immaculately clean<<if $player.location == "The Usual Place, Inside">>ed, a bit of a contrast to the slight dinginess of the bar<</if>>.
<<default>>
ERROR, unknown prostitutionModifiers.cleanliness <<=$scene.clothingModifiers.cleanliness>>
<</switch>>
<br><br>
Underneath it all you
<<if $scene.clothingModifiers.commando>>
have forgone underwear,
<<switch $scene.clothingModifiers.underwearSet>>
<<case "male">>
a not entirely comfortable decision given your somewhat scratchy masculine clothing.
<<case "">>
your clothes rubbing unimpeded against your bare skin.
<<case "modest">>
a striking contrast compared to your otherwise modest underthings.
<<case "mixed">>
rounding off an overall chaotic approach to underthings.
<<case "bold">>
a final exclamation point for your other bold underthings.
<<case "cute">>
a naughty contrast to your other cute underthings.
<<case "sissy">>
a lewd contrast to your other <<if $fetish.sissy>>sissy<<else>>cute<</if>> frills.
<<case "fetish">>
a somewhat natural pairing with your other fetishistic underthings.
<<case "slutty">>
a natural pairing with your slutty underthings.
<<default>>
ERROR: unexpected underwear set <<=$scene.clothingModifiers.underwearSet>>
<</switch>>
<<else>>
<<switch $scene.clothingModifiers.underwearSet>>
<<case "male">>
are wearing basic masculine underwear.
<<case "mixed">>
are sporting a chaotic mix of undergarments that lacks cohesion, class or style.
<<case "modest">>
are wearing a set of modest, and comfortable, undergarments.
<<case "bold">>
are sporting a bold, sexy set of undergarments.
<<case "cute">>
are sporting a nice cute set of undergarments.
<<case "sissy">>
are wrapped in a perfect package of pink, <<if $fetish.sissy>>sissy<<else>>cute<</if>> frills.
<<case "fetish">>
are wearing fetishistic undergarments that manage to be even more lewd than mere nudity.
<<case "slutty">>
are wearing a very slutty ensemble that is more lewd than mere nudity.
<<case "">>
have gone without any undergarments.
<<default>>
ERROR: unexpected underwear set <<=$scene.clothingModifiers.underwearSet>>
<</switch>>
<</if>>
<br><br>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<if $scene.plugID != "">>
<<set $scene.plugobj = setup.getItemObj($scene.plugID)>>
<<if setup.getEffectivePlugSize() > 15>>
The monstrous <<=setup.getItemName($scene.plugID)>> in your ass has you unable to stand still, its <<if $scene.plugobj.tags.includes("vibrating")>>buzzing, <</if>>filling presence keeping your mind in the gutter and having you desperate for sex.
<<elseif setup.getEffectivePlugSize() > 10>>
The large <<=setup.getItemName($scene.plugID)>> in your ass is impossible to ignore<<if $scene.plugobj.tags.includes("vibrating")>> even before adding in its vibration functions<</if>>.<<if setup.getTotalValue("anal") > 10 || setup.getTotalValue("bimbofication") > 10>> Thick and filling it reminds you that you are a <<if $player.body_ref.vagina>>trio<<else>>pair<</if>> of holes to be used.<</if>>
<<elseif setup.getEffectivePlugSize() > 5>>
The moderately-sized <<=setup.getItemName($scene.plugID)>> reminds you of its presence whenever you move, <<if $scene.plugobj.tags.includes("vibrating")>>buzzing happily and <</if>>urging you to find someone, or something, to fuck.
<<else>>
<<if $scene.plugobj.tags.includes("vibrating")>>
Though small, the buzzing <<=setup.getItemName($scene.plugID)>> is never far from your mind.<<if setup.getTotalValue("anal") > 10 || setup.getTotalValue("bimbofication") > 10>> The constant stimulation serves to <<if $player.location == "The Usual Place, Inside">>focus you on your job as a sex object<<else>>remind you that your holes are meant to be used<</if>>.<</if>>
<<else>>
You could almost forget the presence of the small <<=setup.getItemName($scene.plugID)>> in your bum, but then you move just right and it becomes a subtle reminder that your holes are <<if setup.getTotalValue("anal") > 10 || setup.getTotalValue("bimbofication") > 10>>not your own — they are <<if $player.location == "The Usual Place, Inside">>always available for rent<<else>>for others to use<</if>><<else>>filled<</if>>.
<</if>>
<</if>>
<br><br>
<</if>>
<<if !setup.checkItemTypeWorn("cage")>>
Your
<<if $player.body_ref.penis && $player.body_ref.vagina>>
down-stairs double threat
<<elseif $player.body_ref.penis>>
<<getWordMyPenis false>>
<<else>>
<<getWordVagina false>>
<</if>>
is free of chastity, ready for use...
<<elseif $player.body_ref.penis && $player.body_ref.vagina && setup.isCage()>>
Your <<getWordMyPenis false>> is locked, while your <<getWordVagina false>> tucked behind remains free.
<<else>>
Your
<<if $player.body_ref.penis && $player.body_ref.vagina>>
genitals are both
<<elseif $player.body_ref.penis>>
<<getWordMyPenis false>> is
<<else>>
<<getWordVagina false>> is
<</if>>
securely locked up<<if setup.getTotalValue("bimbofication") > 7 || setup.getTotalValue("submission") > 10>>, leaving you free to focus on bringing pleasure to others like a good <<if $fetish.sissy>>sissy<<else>>slave<</if>><</if>>.
<</if>>/*#
#desc: work as a prostitute main menu
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.clothingModifiers = setup.calcProstitutionModifiers()>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<if $scene.plugID != "">>
<<set $scene.plugobj = setup.getItemObj($scene.plugID)>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<include "prostitute_appearance">>
<br><br>
You consider where you want to search for customers.<br>
<br>
<<if $npc_barkeeper.flags.prostitution.can_work_floor>>
[<<moveTo "event_prostitution_floor_root" "Look around for potential customers." 3600>>]<br>
<<else>>
[<<moveTo "event_prostitution_bar" "Offer your oral expertise at the bar." 3600>>]<br>
<</if>>
<<if !$npc_barkeeper.flags.prostitution.can_work_floor>>
<<if setup.getTotalValue("whoring") >= 9 && $npc_barkeeper.flags.prostitution.money_earned >= ((1-(10+$npc_barkeeper.affection-$npc_barkeeper.anger)/30) * $npc_barkeeper.flags.prostitution.work_floor_threshold)>>
[<<moveTo "event_prostitution_event_prostitution_anal_0" 'It looks like <<=setup.getNpcName("npc_barkeeper", "first")>> wants to talk to you.' 1800>>]<br>
<<else>>
[@@.link_locked;You haven't proven yourself qualified to sell more than your mouth.@@]<br>
<</if>>
<</if>>
<<if $npc_barkeeper.flags.prostitution.can_work_vip>>
[<<moveTo "event_prostitution_vip_root" 'Ask <<=setup.getNpcName("npc_barkeeper", "first")>> if she has anything for you.' 600>>]
<<elseif !$npc_barkeeper.flags.prostitution.can_work_vip && State.hasPlayed("event_prostitution_confrontation_3") && !$workEvents.hasOwnProperty('prostitution_call')>>
<<if !$npc_barkeeper.flags.prostitution.special_job_reject || !(setup.getTotalValue("whoring") >= 15 && setup.getTotalValue("anal") >= 10 && setup.getTotalValue("oral") >= 10)>>
[<<moveTo "event_prostitution_vip_unlock_0" 'Ask <<=setup.getNpcName("npc_barkeeper", "first")>> about the special job she mentioned over the phone.' 180>>]<br>
<<else>>
[<<moveTo "event_prostitution_vip_unlock_reoffer" 'Ask about the special job with <<=setup.getNpcName("npc_prostitute", "first")>>.' 180>>]<br>
<</if>>
<<else>>
[@@.link_locked;You haven't impressed <<=setup.getNpcName('npc_barkeeper', 'first')>> enough for her to offer you special clients.@@]<br>
<</if>>
</div><<set _clientAvailable = false>>
<<for _clientIndex, _clientId range $scene.prostitutionClients>>
<<set _client = setup.getProstitutionClient(_clientId.type, _clientId.id)>>
<<set _linkStr = "<<set $scene.clientIndex = " + _clientIndex + ">>">>
<<if _clientId.visited>>
[@@.link_locked;You see <<=_client.desc>>, but you have already approached them.@@]
<<elseif _clientId.type == "floor">>
<<set _clientAvailable = true>>
<<set $scene.clientFeelings[_clientIndex] = {}>>
<<set $scene.clientFeelings[_clientIndex].hate = setup.prostitutionModAny($scene.clothingModifiers, _client.hate)>>
<<if $scene.clientFeelings[_clientIndex].hate != null>>
You start to catch the eye of <<=_client.desc>>, but they look you over and shake their head in disgust, clearly uninterested in what you have to offer.
<<else>>
<<set $scene.clientFeelings[_clientIndex].dislike = setup.prostitutionModAny($scene.clothingModifiers, _client.dislike)>>
<<set $scene.clientFeelings[_clientIndex].like = setup.prostitutionModAll($scene.clothingModifiers, _client.like)>>
<<set $scene.clientFeelings[_clientIndex].love = setup.prostitutionModAll($scene.clothingModifiers, _client.loves)>>
<<if null != $scene.clientFeelings[_clientIndex].dislike>>
You see <<=_client.desc>>, they turn away in disgust after a single glance. [<<moveTo "event_prostitution_sex_0" "Approach." 180 _linkStr>>]
<<elseif (null == $scene.clientFeelings[_clientIndex].like || null != $scene.clientFeelings[_clientIndex].like && $scene.clientFeelings[_clientIndex].like.count() == _client.like.count()) && null != $scene.clientFeelings[_clientIndex].love>>
You see <<=_client.desc>> notice you across the room. They start to approach you with obvious interest. [<<moveTo "event_prostitution_sex_0" "Greet." 180 _linkStr>>]
<<elseif null != $scene.clientFeelings[_clientIndex].like || null != $scene.clientFeelings[_clientIndex].love>>
You see <<=_client.desc>>, they look at you with mild interest. [<<moveTo "event_prostitution_sex_0" "Approach." 180 _linkStr>>]
<<elseif (_client.like == null || _client.like.count() == 0) && (_client.loves == null || _client.loves.count() == 0) && (_client.dislike == null || _client.dislike.count() == 0) && (_client.hate == null || _client.hate.count() == 0)>>
You see <<=_client.desc>>, they do not appear to be looking for anything in particular. [<<moveTo "event_prostitution_sex_0" "Approach." 180 _linkStr>>]
<<else>>
You see <<=_client.desc>>, they do not appear particularly interested in you. [<<moveTo "event_prostitution_sex_0" "Approach." 180 _linkStr>>]
<</if>>
<</if>>
<<elseif _clientId.type == "alley">>
<<set _clientAvailable = true>>
<<set $scene.clientFeelings[_clientIndex] = {}>>
<<set $scene.clientFeelings[_clientIndex].hate = setup.prostitutionModAny($scene.clothingModifiers, _client.hate)>>
<<if $scene.clientFeelings[_clientIndex].hate != null>>
You start to catch the eye of <<=_client.desc>>, but they look you over and shake their head in disgust, clearly uninterested in what you have to offer.
<<else>>
<<set $scene.clientFeelings[_clientIndex].dislike = setup.prostitutionModAny($scene.clothingModifiers, _client.dislike)>>
<<set $scene.clientFeelings[_clientIndex].like = setup.prostitutionModAll($scene.clothingModifiers, _client.like)>>
<<set $scene.clientFeelings[_clientIndex].love = setup.prostitutionModAll($scene.clothingModifiers, _client.loves)>>
<<if null != $scene.clientFeelings[_clientIndex].dislike>>
You see <<=_client.desc>> at the bar, they appear disinterested.
[<<moveTo "event_prostitution_quickie_0" "Approach." 180 _linkStr>>]
<<elseif null != $scene.clientFeelings[_clientIndex].like && $scene.clientFeelings[_clientIndex].like.count() == _client.like.count() && null != $scene.clientFeelings[_clientIndex].love>>
From across the bar <<=_client.desc>> notices you and begins to approach you with obvious interest.
[<<moveTo "event_prostitution_quickie_0" "Greet." 180 _linkStr>>]
<<elseif null != $scene.clientFeelings[_clientIndex].like || null != $scene.clientFeelings[_clientIndex].love>>
You see <<=_client.desc>> at the bar, they look at you with mild interest. [<<moveTo "event_prostitution_quickie_0" "Approach." 180 _linkStr>>]
<<else>>
You see <<=_client.desc>> at the bar. [<<moveTo "event_prostitution_quickie_0" "Approach." 180 _linkStr>>]
<</if>>
<</if>>
<<else>>
ERROR: unexpected client type <<=_clientId.type>>
<</if>>
<br>
<</for>>
<<if !_clientAvailable>>
<br>
[@@.link_locked;You do not see any prospective clients.@@]
<</if>>/*#
#desc: crossover maid: intro
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_barkeeper', 'first')>> that you'll take the job. She smiles. "@@.npc_barkeeper;Wonderful! Now this is an off-site job, but that's nothing a quick auto-cab can't fix! I'll finish making the arrangements and let the customer know to expect you. Just head outside for the pickup.@@"<br>
<br>
[<<moveTo "event_maid_crossover_1_2" "Head out and catch a ride." 600>>]
</div>/*#
#desc: crossover maid: travel and meet
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
You ride for a few minutes on a direct shot towards the suburbs, the freeways thankfully clear at this time of night allowing you to zoom to your destination. You head for the front door where a well-dressed woman and a <<if $fetish.sissy>>sissy<<else>><<man>><</if>> dressed in a maid's outfit usher you in.<br>
<br>
"@@.generic_female1;Welcome, welcome!@@" The woman states in greeting as the man eyes you somewhat nervously. "@@.generic_female1;Thank you for making it on such short notice, I had registered an interest in someone like you and, well... you come highly recommended, and just from the look of you I just know you will not disappoint.@@"<br>
<br>
You curtsy obediently and wait for further instructions.<br>
<br>
"@@.generic_female1;As I mentioned in the listing, my <<if $fetish.sissy>>sissy<<else>>maid<</if>> is in need of instruction, and an example. Towards that end I want you to supervise and instruct her on the proper way to clean and such. I need to pop back into the office, unfortunately — owning and running Spa, Luxury And Vacation Entertainment, Inc. is far more work than relaxation.@@"<br>
<br>
You vaguely recognise hearing the name before, some hospitality conglomerate or another. The megacorps bleed together, after a while.<br>
<br>
"@@.generic_female1;Now!@@" She adds, turning towards the so-far-silent maid standing next to you "@@.generic_female1;I expect you to be on your best behaviour both in terms of obedience, and observation. Your cleaning this week has been quite sub-standard, and while I realise you are still learning, well... that is all the more reason to have brought in some expert help. I hope to not be too long, but but when I get back I expect this place to be spotless and a full report on what a good student you've been!@@"<br>
<br>
The woman blows the maid a kiss before sweeping out the door, leaving you alone with the maid.<br>
<br>
You take a moment to look your student over. Their maid outfit is decent, if off-the-shelf, paired with modest heels and with garters peeking out past their not-quite-short skirt, you imagine they are matched with lingerie beneath. For the rest they have short hair and simple makeup... definitely a "beginner" as these things go. They stare back at you nervously, clearly awaiting your instruction.<br>
<br>
[<<moveTo "event_maid_crossover_1_3" "Just do your job and clean. It's their responsibility to watch and learn." 3600 "<<set $scene.style='clean'>>">>]<br>
[<<moveTo "event_maid_crossover_1_3" "Carefully explain every step and have them work along." 3600 "<<set $scene.style='teach'>>">>]<br>
<<if setup.getTotalValue("dominance") > 10>>
[<<moveTo "event_maid_crossover_1_3" "Have them do all the work and brutally critique any mistakes." 3600 "<<set $scene.style='dom'>>">>]
<<else>>
[@@.link_locked;You lack the dominant skill to boss the other maid around.@@]
<</if>>
</div>/*#
#desc: crossover maid: instruct
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.style == "dom">>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case "clean">>
You may be here to instruct, but the best lesson is seeing things done right, so you focus on getting the house into the proper state of clean that <<=setup.getNpcName("npc_maid_mistress","formal")>> would approve of.<br>
<br>
Your understudy follows close, and tried to keep up, but you can tell they're feeling a bit lost, not to mention guilty every time you re-do something that they very obviously spent time cleaning at some point before you arrived.<br>
<br>
Though it may not have been up to standards, the house was relatively clean, and you are able to bring thing up to a level of spotless perfection several minutes before the Mistress of the House returns.
<<case "teach">>
You decide that your primary job is to teach and you meticulously go through every step, first demonstrating, and then walking your understudy through doing it themselves.<br>
<br>
Though clearly nervous, and frequently apologetic at their prior "unsatisfactory" efforts, they seem to appreciate your diligence and patience, and soak up knowledge much like the sponges you have them use for various cleaning tasks.<br>
<br>
Despite the house being in relatively decent shape at the start, the cleaning and teaching causes your progress to be slow, and you have not quite finished everything to the standard that, say <<=setup.getNpcName("npc_maid_mistress","formal")>> would approve of before the Mistress of the House returns.
<<case "dom">>
With the Mistress of the House gone, you take total charge of things, ruthlessly ordering around your understudy and harshly reprimanding them for the slightest of mistakes.<br>
<br>
<<if setup.getTotalValue("dominance") >= 20>>
For a brief moment your fellow maid is surprised at your dominance... but there is no resisting your commands as they are soon dashing about, meticulously following your every order, the raw power of your authority sufficient to imprint the "correct" method into their brain and have them cleaning quite efficiently, and effectively.<br>
<br>
Towards the end your charge is almost stumbling around, the force of your personality the main thing keeping them going... but they somehow manage to finish, polishing out a final spot and all but collapsing in place just as the Mistress of the House returns.
<<else>>
At first your fellow maid seems surprised at your dominance... but they quickly learn to obey, jumping to avoid your harsh tongue... though, even with you sternly glaring down, their quality of work leaves something to be desired.<br>
<br>
Your charge is being run a bit ragged, but you manage to "finish" cleaning by the time the Mistress of the House returns... though there are a few spots that are not quite up to your high bar of perfection.
<</if>>
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
[<<moveTo "event_maid_crossover_1_4" "See what she thinks." 300>>]
</div>/*#
#desc: crossover maid: assess
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
You and your fellow maid line up obediently for the Mistress' return, curtsying in greeting as she walks through the door before your understudy hurrys over to take her coat.<br>
<br>
"@@.generic_female1;What a simply lovely sight to return to... but, now, to see the fruits of your efforts!@@"<br>
<br>
Two maids follow behind as the Mistress of the House walks her domain,
<<switch $scene.style>>
<<case "clean">>
marveling at how perfect and pristine everything is as she admires your efforts.<br>
<br>
"@@.generic_female1;A marvelous job, and just how the house ought to be kept... but, tell me,@@" she continues, turning towards your erstwhile student, "@@.generic_female1;what did you learn today?@@"<br>
<br>
Nervous, the maid starts to talk... and then wilts, shaking their head as the Mistress of the House frowns in disappointment.<br>
<br>
"@@.generic_female1;Frustrating, I hired you to instruct, not merely to clean. If all that mattered was a clean house I could hire a standard maid service, but I want a house cleaned by my personal <<if $fetish.sissy>>sissy <</if>>maid... but it would seem that their education remains ongoing.@@"
<<case "teach">>
showing clear disappointment when she reaches the point where you ran out of time.<br>
<br>
You explain what happened, how you prioritised instruction over performance and she spends several minutes quizzing your student, becoming increasingly impressed with the maid's ability to explain what, and why they cleaned how they did.<br>
<br>
"@@.generic_female1;Well, this is simply lovely. Exactly what I was hoping for from one of your skill... and it sounds like, even if things were not quite finished up today, my maid is newly positioned to finish up and maintain such a high standard going forward... though today's lack of completion yet requires punishment.@@"
<<case "dom">>
<<if setup.getTotalValue("dominance") >= 20>>
clearly pleased at how well everything was cleaned... and even moreso when she learns
<<else>>
moderately pleased with the overall effort, though her estimation improves further at the revelation
<</if>>
that you merely "supervised," rather than doing the work yourself.<br>
<br>
She spends a few additional minutes quizzing your charge,
<<if setup.getTotalValue("dominance") >= 20>>
even more impressed when they are able to recall what they did, your harsh lessons having been all but burned into their memory.<br>
<br>
"@@.generic_female1;Well, this is quite lovely, more than I could have hoped for, really.@@" Her attention turns to you with a smile. "@@.generic_female1;The way you clearly took charge... well, it almost makes me wonder if I should be taking lessons with you!@@" She laughs, and you curtsy in response, noting that supervising a more junior submissives is merely part of your duties.
<<else>>
moderately impressed that they are able to recall some of what they did.<br>
<br>
"@@.generic_female1;A very good start... or perhaps continuation. There remains more to learn and refine, but some big strides have been taken today. Yes, I have to credit your instruction, with the blame falling fully upon my <<if $fetish.sissy>>sissy's<<else>>slut's<</if>> failure to fully perform.@@"
<</if>>
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
The inspection at its end, you find yourself in the Master bedroom, when the Mistress of the house turns and issues a sharp command of "@@.generic_female1;<<if $fetish.sissy>>sissies, <</if>>present!@@"<br>
<br>
[<<moveTo "event_maid_crossover_1_5" "Stand to attention and lift your skirt." 180 "<<set $scene.present=true>>">>]<br>
[<<moveTo "event_maid_crossover_1_5" "Do nothing." 180 "<<set $scene.present=false>>">>]
</div>/*#
#desc: crossover maid: instruct
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.present>>
<<applyExperience 'submission' 13 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
<<if $scene.present>>
You stand at attention and raise your skirt, your student following a moment later, not yet having learned the reflex of instantly obeying such commands. You sneak a glance at panties stretched over their caged <<if $fetish.sissy && !$options.fem>>sissy clitty<<else>><<getWordPenis>><</if>> while they look at your
<<else>>
You stand motionless as your student takes a moment to process the request and then raises their skirt to display panties stretched over their caged <<if $fetish.sissy && !$options.fem>>sissy clitty<<else>><<getWordPenis>><</if>>. The Mistress of the House glares at your disobedience and you reflexively follow suit, your student staring at your
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.checkItemTypeWorn("panties")>>
<<=setup.getItemTypeName("panties")>> stretched over your
<</if>>
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small <<getWordMyPenis>>
<<case 2 3>>
<<getWordMyPenis>>
<<case 4 5>>
large<<getWordMyPenis>>
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>, and dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>dong
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
and its
<<switch setup.getChastityLevel()>>
<<case 1>>
simple
<<case 2>>
sleek
<<case 3>>
electrified
<<case 4>>
advanced
<<case 5>>
high-tech, and ultra-secure,
<<default>>
ERROR: unexpected chastity level <<=setup.getChastityLevel()>>
<</switch>>
prison.
<<else>>
<<getWordVagina>> and its
<<switch setup.getChastityLevel()>>
<<case 1>>
simple chastity belt.
<<case 2>>
sleek chastity belt.
<<case 3>>
electrified chastity belt.
<<case 4>>
advanced chastity belt.
<<case 5>>
high-tech, and ultra-secure, chastity belt.
<<default>>
ERROR: unexpected chastity level <<=setup.getChastityLevel()>>
<</switch>>
<</if>>
<<elseif setup.checkItemTypeWorn("panties")>>
<<=setup.getItemTypeName("panties")>>
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
barely disturbed by your small <<getWordMyPenis>>.
<<case 2 3>>
tented over your <<getWordMyPenis>>.
<<case 4 5>>
straining to contain your <<getWordMyPenis>>.
<<case 6>>
stretched over your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>dong.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
laying smooth and trim over your <<getWordVagina>>.
<</if>>
<<else>>
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small <<getWordMyPenis>>.
<<case 2 3>>
<<getWordMyPenis>>.
<<case 4 5>>
large <<getWordMyPenis>>.
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>, and dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>dong.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
glistening <<getWordVagina>>.
<</if>>
<</if>>
Your student continues to stare as the Mistress of the House motions for you to turn and you reveal
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
the plug integrated into your belt<<if setup.getItemFromType("plug", true)>>, swelled even larger with your <<if setup.getItemObjFromType("plug").effect.anal.level > 10>>massive<<elseif setup.getItemObjFromType("plug").effect.anal.level > 5>>large<<else>>small<</if>> insert<</if>>.
<<elseif setup.checkItemTypeWorn("plug", true) && setup.checkItemTypeWorn("hollow_plug", true)>>
your double-plugged rear.
<<elseif setup.checkItemTypeWorn("hollow_plug", true)>>
your plug-gaped rear.
<<elseif setup.checkItemTypeWorn("plug", true)>>
the <<if setup.getEffectivePlugSize() > 10>>massive<<elseif setup.getEffectivePlugSize() > 5>>large<<else>>small<</if>> plug stuffed in your rear.
<<else>>
your pert rear.
<</if>>
Your student is accessorised with a pretty pink jeweled plug, but they stare at your
<<if setup.checkItemTypeWorn("plug") && setup.getEffectivePlugSize() > 10>>
significantly more filled hole with awe.
<<elseif setup.checkItemWorn("analplug_beginner")>>
identical anal adornment.
<<elseif setup.checkItemTypeWorn("plug")>>
plugged hole with surprise.
<<else>>
un-plugged hole with jealousy.
<</if>>
The Mistress of the House chuckles in amusement at her maid's surprise. "@@.generic_female1;I told you I hired a professional. Did you think that was merely for her cleaning skills? No, no, she is here to show you just what sort of <<if $fetish.sissy>>sissy<<else>>girl<</if>> you may some-day dream of being.@@"<br>
<br>
Your fellow maid continues to look at you with a blend of awe, fear... and a hint of jealousy as the Mistress continues.<br>
<br>
"@@.generic_female1;Now, to further the lesson, Miss <<=$player.last_name>> is going to show you how a proper submissive takes a punishment, by standing in for your failures.@@"<br>
<br>
Your fellow maid blinks in surprise,
<<switch $scene.style>>
<<case "clean">>
and a hint of guilt.
<<case "teach">>
and an unspoken apology.
<<case "dom">>
and just a touch of schadenfreude, after the harsh lesson you administered.
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br>
"@@.generic_female1;But first,@@" the Mistress adds with a smile as she produces a hank of rope "@@.generic_female1;a bit of work to make sure that someone doesn't... interfere.@@"<br>
<br>
Trained, at least in this, the maid takes a seat on a nearby chair and waits. The Mistress of the house motions for you to help.<br>
<br>
[<<moveTo "event_maid_crossover_1_6" "Assist as instructed." 360>>]
</div>/*#
#desc: crossover maid: bind husband
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("bondage") > 10>>
<<if setup.getTotalValue("bondage") > 15>>
You don't so much help, as take over, showing off skills born out from your own
<<else>>
You help, and add a few details from your own experience in
<</if>>
bondage as you secure your erstwhile student in place. The Mistress of the House appears quite impressed with your skills, but soon
<<else>>
<<if setup.getTotalValue("bondage") > 5>>
Despite your minor experience with bondage,
<<else>>
You
<</if>>
can do little more than assist in holding the rope as the Mistress of the House takes several minutes to secure your fellow maid. Soon
<</if>>
it is done and time for your punishment.<br>
<br>
[<<moveTo "event_maid_crossover_1_7" "Bend over and take it<<if $fetish.sissy>>, sissy<</if>>." 180>>]
</div>/*#
#desc: crossover maid: punished
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 18 'terrible' $ALONE>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
Mindful of the example you are setting, you bend over obediently, hand on the bed and legs slightly spread as you offer up your rear, and the Mistress of the House theatrically takes a paddle down from its rack on the wall.<br>
<br>
SMACK.<br>
<br>
You jump slightly at the impact of the first blow, though it is
<<if setup.getTotalValue("bdsm") > 15>>
hardly painful compared to what you have learned to endure, and embrace.
<<else>>
well within the threshold where pain entwines with pleasure.
<</if>>
<<switch $scene.style>>
<<case "clean">>
"@@.generic_female1;THIS is for letting someone else do all of your work!@@"
<<case "teach">>
"@@.generic_female1;THIS is for needing so much instruction that you failed to finish cleaning the house!@@"
<<case "dom">>
"@@.generic_female1;THIS is for letting someone else do all of your work!@@"
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
The Mistress of the House explains as you dutifully count out the blows, able to see your fellow maid out of the corner of your eye, clearly relieved to not be in the "hot seat." <br>
<br>
Your ass in smarting, but nothing you can't handle. Once the punishment concludes the <<=ps(setup.getNpcName("generic_female1","custom", "Mistress"))>> tone instantly shifts.<br>
<br>
"@@.generic_female1;So, with corrective punishment out of the way — take note of how obediently she took your punishment, none of that whining or begging, and I will definitely be implementing counting going forward.@@" You glance over to see the bound maid shift nervously in her chair. "@@.generic_female1;Now, however... well, it is time for the other side of the coin. Just as failure leads to punishment, so, too, does success garner reward.@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
"@@.generic_female1;Miss <<=$player.last_name>>, if you would kindly remove your chastity... or fetch the strap-on from the nightstand. I feel the need for something firm between my thighs.@@"<br>
<br>
<<if setup.canSexOrRemoveChastity("penis", "")>>
[<<moveTo "event_maid_crossover_1_8" "Unlock your chastity and fuck her as instructed." 300 "<<set $scene.strap=false>>">>]<br>
<<else>>
You explain that you do not have your key and she smiles. "@@.generic_female1;See? I told you I hired a perfect example for you...@@"<br>
<br>
<</if>>
<<else>>
"@@.generic_female1;Miss <<=$player.last_name>>, if you would kindly get ready to pleasure me... or fetch the strap-on from the nightstand. I feel the need for something firm between my thighs.@@"<br>
<br>
<</if>>
<<else>>
"@@.generic_female1;Miss <<=$player.last_name>>. If you would kindly fetch the strap-on from the nightstand. I feel the need for something firm between my thighs.@@"<br>
<br>
<</if>>
[<<moveTo "event_maid_crossover_1_8" "Strap up, as instructed." 300 "<<set $scene.strap=true>>">>]
<<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_maid_crossover_1_8" "Fuck her as instructed." 300 "<<set $scene.strap=false>>">>]
<</if>>
</div>/*#
#desc: crossover maid: fuck
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<if $scene.strap>>
<<addItem 'strapon_med'>>
<<wearItem 'strapon_med' true>>
<<else>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
<<if $scene.strap>>
You fetch the medium sized strap-on from the nightstand and buckle it in place as the Mistress of the House gets into place on the end of the bed, positioning herself so that her maid will have a full view of the action.<br>
<br>
She is clearly well used to the strap-on, and it slides into her to the sound of her moan.<br>
<br>
"@@.generic_female1;That's it, fuck me<<if $fetish.sissy>>, sissy<</if>> and you, <<if $fetish.sissy>>sissy<<else>>slave<</if>>@@" she adds in the direction of the tied-up maid "@@.generic_female1;enjoy the show, oh Goddess...@@"
<<else>>
You <<if $scene.removeCage>>unlock yourself and <</if>>get into position.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
The Mistress of the House seems quite pleased with your member, and you enter her easily as she moans passionately as her maid looks silently on.<br>
<br>
"@@.generic_female1;That's it, fuck me<<if $fetish.sissy>>, sissy<</if>> and you, <<if $fetish.sissy>>sissy<<else>>slave<</if>>@@" she adds in the direction of the tied-up maid "@@.generic_female1;enjoy the show, oh Goddess, I needed this... a nice small cock... like a delicate aperitif to enjoy...@@"
<<case 2 3>>
The Mistress of the House seems quite happy with your member she proves wet and ready, moaning passionately as you slide into her as her maid looks silently on.<br>
<br>
"@@.generic_female1;That's it, fuck me<<if $fetish.sissy>>, sissy<</if>> and you, <<if $fetish.sissy>>sissy<<else>>slave<</if>>@@" she adds in the direction of the tied-up maid "@@.generic_female1;enjoy the show, oh Goddess, I needed this... a nice goldilocks cock, not too small, not too large...@@"
<<case 4 5>>
The Mistress of the House is clearly both excited by your large member she proves wet and ready, moaning passionately as you ease into her as her maid looks silently on.<br>
<br>
"@@.generic_female1;That's it, fuck me<<if $fetish.sissy>>, sissy<</if>> and you, <<if $fetish.sissy>>sissy<<else>>slave<</if>>@@" she adds in the direction of the tied-up maid "@@.generic_female1;enjoy the show, oh Goddess, I needed this... just a little bigger than my strap... perfect@@"
<<case 6>>
The Mistress of the House is clearly both excited by, and a little fearful of your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>dong, but she proves wet and ready, moaning passionately as you slowly ease into her as her maid looks silently on.<br>
<br>
"@@.generic_female1;That's it, fuck me<<if $fetish.sissy>>, sissy<</if>> and you, <<if $fetish.sissy>>sissy<<else>>slave<</if>>@@" she adds in the direction of the tied-up maid "@@.generic_female1;enjoy the show, oh Goddess, I needed this... I may have to get a bigger strap-on, because this is better than anything you've ever done for me...@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<br><br>
You thrust away, the woman holding back for a few minutes to put on a show... but eventually her control slips and she cums, hard<<if !$scene.strapon>>, and you follow a moment later<</if>>.<br>
<br>
Though still catching her breath, the Mistress of the house immediately issues another command.<br>
<br>
"@@.generic_female1;My maid has done such an attentive job... go have her clean you up...@@"<br>
<br>
You do as instructed, the resigned maid opening her lips,
<<if $scene.strap>>
struggling slightly with the strap-on's length, though you have a feeling that this is far from her first time sucking it clean.
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
your small <<getWordMyPenis>> fits easily past her lips, and her tongue dances as she works to clean you of every drop of her owner's juices.
<<case 2 3>>
she is barely able to deep throat you, coughing only slightly at the struggle before finishing off by kissing her way up and down your shaft to collect her owner's juices.
<<case 4 5>>
you are clearly too large for her to deep-throat, so she sucks to the point of gagging before kissing her way up and down the rest of your shaft to collect her owner's juices.
<<case 6>>
your <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock far beyond her skill to suck more than the tip, but she does that before proceeding to kiss and lick her way up and down your shaft<<if $player.body_ref.knot>>... seemingly particularly entranced by your still-firm knot<</if>> to collect her owner's juices.
<</switch>>
<</if>>
As you glance down at the bound maid you notice that the ropes have pulled her skirt up and out of position... to reveal that she has been leaking through her cage, a small puddle on the chair beneath her, with a few more drops adding in as she looks up at you in awe and sucks you clean.<br>
<br>
[<<moveTo "event_maid_crossover_1_9" "Continue." 180>>]
</div>/*#
#desc: crossover maid: instruct
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case "clean">>
<<set $scene.pay = $scene.client.base_pay>>
<<case "teach">>
<<set $scene.pay = $scene.client.base_pay * 1.5>>
<<case "dom">>
<<if setup.getTotalValue("dominance") >= 20>>
<<set $scene.pay = $scene.client.base_pay * 2>>
<<else>>
<<set $scene.pay = $scene.client.base_pay * 1.25>>
<</if>>
<</switch>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
You hear the sound of a camera, and look over to see the Mistress of the House snapping a picture on her phone with a wide smile.<br>
<br>
"@@.generic_female1;See why I had you practice your lipstick? Oh, but those sweet lips of yours have never looked better than they do now,
<<if $scene.strap>>
wrapped around that artificial cock.
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
licking that <<getWordMyPenis>>
<<case 2 3>>
sucking that <<getWordMyPenis>>
<<case 4 5>>
deep-throating that big <<getWordMyPenis>>
<<case 6>>
choking on that monster <<if $player.body_ref.knot && $player.body_ref.horsecock>>, and dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock.
<</switch>>
<</if>>
I am definitely posting this one, maybe make it your profile pic...@@"<br>
<br>
Putting away her phone, she hands you an envelope of cash.<br>
<br>
<<switch $scene.style>>
<<case "clean">>
"@@.generic_female1;You did a serviceable job, so your pay, per normal rates.@@"
<<case "teach">>
"@@.generic_female1;A bonus for your excellent instruction.@@"
<<case "dom">>
<<if setup.getTotalValue("dominance") >= 20>>
"@@.generic_female1;Such a superb example of dominance is worth far more than your base rate.@@"
<<else>>
"@@.generic_female1;A small bonus for keeping my <<if $fetish.sissy>>sissy<<else>>slut<</if>> firmly in line during their instruction.@@"
<</if>>
<</switch>>
<br><br>
<<printThought "Looks like it's time to go...">><br>
<br>
[<<moveTo "event_maid_crossover_1_10" "Give your student a kiss goodbye." 180 "<<set $scene.lips=true>>">>]<br>
[<<moveTo "event_maid_crossover_1_10" "Give your student a kiss goodbye... on their cage." 180 "<<set $scene.lips=false>>">>]<br>
[<<moveTo "event_maid_crossover_1_11" "Be on your way." 180>>]
</div>/*#
#desc: crossover maid: kiss
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
<<if $scene.lips>>
You bend over to give your still-bound student a tender kiss on the lips. Exchanging no tongue, the embrace is almost chaste... and yet quite passionate in its gentle sensuousness.
<<else>>
You kneel down to give your still bound student a tender kiss right on the tip of their cage. They wiggle in embarrassment as you lick your lips and smile before returning to your feet.
<</if>>
<br><br>
[<<moveTo "event_maid_crossover_1_11" "Now it's time to go." 180>>]
</div>/*#
#desc: crossover maid: leave
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.strap>>
<<removeItem 'strapon_med' true>>
<<deleteItem 'strapon_med'>>
<</if>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<applyExperience 'whoring' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Suburban House">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/house_interior.png">>
<div id="invframe" class="scrolltext">
You <<if $scene.strapon && $scene.removeCage>>lock yourself back up and <</if>>prepare to leave.<br>
<br>
"@@.generic_female1;Be a dear and release my maid, she has a bit more cleaning to do.@@" The Mistress of the House notes with a nod towards her still dripping thighs. "@@.generic_female1;Leave her wrists bound... this is the sort of cleaning that is only to be done with the tongue.@@"<br>
<br>
You do as instructed, and the maid dutifully crawls over between her owner's legs to get to work.<br>
<br>
As you slip out the door your erstwhile student glances after you... before her owner takes them by the hair and to re-focus them on the task at hand... or, as the case may be, at lip.<br>
<br>
Outside the house you find a car already waiting, the auto-cab already paid up and merely waiting for you to give your address to return home.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: offered evil admin as customer
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png">>
<div id="invframe" class="scrolltext">
You accept the job and <<=setup.getNpcName("npc_barkeeper","first")>> directs you to head outside. "@@.npc_barkeeper;They said they would send a car to pick you up... dang but it's weirding me out I can't place that voice! It's familiar, but in, like... a creepy way... oh well, have a good evening!@@"<br>
<br>
You head outside just as a sleek stretch hover-limo slides up. You step inside to find it empty save for a neat pile of restraints and a short note which you read as the limousine slides smoothly into motion.<br>
<br>
"Blindfold, cuff and leash yourself with the supplied materials in preparation for your work." <br>
<br>
You look at the leather restraints, they appear quite secure, high-quality... and locking. With no key in sight, once you've restrained yourself you will be quite helpless until your unseen client decides to set you free.<br>
<br>
[<<moveTo "event_vip_evil_admin_gangbang_2" "Obediently cuff, leash and blindfold yourself as instructed." 600 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_vip_evil_admin_gangbang_2" "Leave the restraints and wait to see your customer first." 600 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: travel to evil admin VIP
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 18 'terrible' $ALONE>>
<<else>>
<<addItem 'ball_gag_black'>>
<<wearItem 'ball_gag_black' true>>
<</if>>
<<applyExperience 'bondage' 7 'little' $ALONE>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem "bondage_collar_promo" true>>
<<wearItem "bondage_collar_promo">>
<</if>>
<<addItem 'blindfold_black'>>
<<wearItem 'blindfold_black' true>>
<<addItem 'handcuffs_back'>>
<<wearItem 'handcuffs_back' true>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<</if>>
<<set $player.location to "Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You obediently <<if $scene.addCollar>>buckle the collar and leash around your neck<<else>>clip the leash to your collar<</if>> before blindfolding yourself and cuffing your wrists as instructed.<br>
<br>
Blind and helpless, your heart races a little faster as you wonder what is in store. Your other senses grow sharper as you wait to see what will be next from this mysterious client.
<<else>>
You put the note aside and sit back for the ride, only to be surprised by a hand suddenly grabbing you from behind.<br>
<br>
You attempt to struggle, but you catch the whiff of chloroform from the rag pressed over your face and you go slowly limp.<br>
<br>
You wake some time later in the dark, struggling slightly as you realise that you have been cuffed, <<if $scene.addCollar>>collared, <</if>>, leashed and blindfolded as "instructed" — a gag added as well to silence your attempted screams of objection.<br>
<br>
Whatever this job is... it seems that you are stuck along for the ride...
<</if>>
<br><br>
You feel the vehicle come to a stop and hear the door open... it seems you are at your destination.<br>
<br>
[<<moveTo "event_vip_evil_admin_gangbang_3" "A strong pull on the leash drags you out of the car." 300>>]
</div>/*#
#desc: travel to evil admin VIP
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "???">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
Blind and restrained you struggle to keep your balance as you attempt to keep up with your unseen client.
<<if $scene.obey>>
Despite your obedience they are showing you little concern, saying not a word and setting a swift pace as they jerk you forward.
<<else>>
Perhaps as revenge for your initial lack of obedience they yank hard on your leash, saying not a word as you stumble behind in an attempt to keep up.
<</if>>
<br><br>
Ears cocked you feel the temperature shift as you enter some sort of building. You hear the sounds of distant crowds fading in favour of hallway echoes, making a couple of turns before you hear a door open. Finally you come to a stop in what you presume to be some sort of hopefully private room.<br>
<br>
You barely catch your balance when a <<if $npc_admin.fem>>familiar, commanding<<else>>deep, masculine<</if>> voice whispers close in your ear. "@@.npc_admin;Say hello to the <<boy>>s.@@"<br>
<br>
<<if $scene.obey>>
You don't have a chance to speak before
<<else>>
Your gag renders the order impossible to obey... but that is the least of your concern as
<</if>>
the blindfold is ripped off, bright lights momentarily blinding you anew as <<if !$scene.obey>>the gag is ripped from your lips and <</if>>you are shoved from behind.<br>
<br>
[<<moveTo "event_vip_evil_admin_gangbang_4" "You lose your balance and fall forward." 300>>]
</div>/*#
#desc: VIP evil admin revealed as customer
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'blindfold_black' true>>
<<deleteItem 'blindfold_black'>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<addItem 'ball_gag_black'>>
<<wearItem 'ball_gag_black' true>>
<</if>>
<<set $player.location to "Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_admin","npc_admin_evil")>>
<div id="invframe" class="scrolltext">
With your arms bound you have no way to catch yourself, so you merely twist in the air in an attempt to not go face-first into the carpet. The result of this move is you land hard on your back... and find yourself looking directly up at your "client" — <<=setup.getNpcName("npc_admin","formal")>>, <<his npc_admin>> cruel grin having not a single trace of the friend you once knew.<br>
<br>
You hear chuckles of amusement and you look around to see at least half a dozen <<if $options.fem == $npc_admin.fem>>other <</if>><<men>>, none quite the physical specimen that <<=setup.getNpcName("npc_admin","formal")>> is... but all having the rough bearing of <<men>> of power both physical and otherwise — outfits announcing them as executives, corporate security, cops and the odd <<if $options.fem>>gym addicted amazon<<else>>pure gym-bro Alpha meat-heads<</if>>.<br>
<br>
<<if $npc_admin.flags.voluntary_oral>>
"@@.npc_admin;Welcome everyone, for the guest of honour! Yes, while today may be a personal celebration of finally closing out the CDS merger, I decided to furnish the entertainment. Would you believe this slut once thought to date me?@@"<br>
<br>
Cruel laughter rumbles through the room as you wince in shame. "@@.npc_admin;I know, I know, the thought is laughable, that I would ever be interested in a pathetic <<if $fetish.sissy>>sissy <</if>><<if $fetish.slurs>>faggot <<else>>whore <</if>>like this... but the reality is that this bitch is a fantastic cocksucker, so I wanted to share that — and her other <<if $player.body_ref.vagina>>holes<<else>>hole<</if>> as well!@@"
<<elseif $npc_admin.stage > 2>>
"@@.npc_admin;Welcome everyone, for the guest of honour! Yes, while today may be a personal celebration of finally closing out the CDS merger, I decided to furnish the entertainment. Would you believe this slut once thought to date me?@@"<br>
<br>
Cruel laughter rumbles through the room as you wince in shame. "@@.npc_admin;I know, I know, the thought is laughable, that I would ever be interested in a pathetic <<if $fetish.sissy>>sissy <</if>><<if $fetish.slurs>>faggot <<else>>whore <</if>>like this... would you believe she didn't even put out? Yes, this tease of a tramp resisted putting those dick-sucking lips where they belonged! Well all that ends tonight, because I welcome all of you to share her slut throat and her other <<if $player.body_ref.vagina>>holes<<else>>hole<</if>> as well!@@"
<<else>>
"@@.npc_admin;Welcome everyone, for the guest of honour! Yes, while today may be a personal celebration of finally closing out the CDS merger, I decided to furnish the entertainment. I know some of you didn't believe the before and after, but believe me when I say this pathetic thing used to be a normal male IT drone! Well that's far in the past now, and all they're good for is a set of holes... so have at it!@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_admin","formal")>> yanks you back to your feet and removes your cuffs. <<He npc_admin>> growls a command into you ear to "@@.npc_admin;earn your pay, whore,@@" before shoving you into the fray.<br>
<br>
[<<moveTo "event_vip_evil_admin_gangbang_5" "Fight back!" 1800 "<<set $scene.action='fight'>>">>]<br>
[<<moveTo "event_vip_evil_admin_gangbang_5" "Resign yourself to your fate." 1800 "<<set $scene.action='resign'>>">>]<br>
[<<moveTo "event_vip_evil_admin_gangbang_5" "You're a professional, embrace the job at hand!" 1800 "<<set $scene.action='embrace'>>">>]
</div>/*#
#desc: evil admin VIP try to resist or not
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'handcuffs_back' true>>
<<deleteItem 'handcuffs_back'>>
<<switch $scene.action>>
<<case 'fight'>>
<<set _ma = setup.getTotalValue("martial_arts")>>
<<applyExperience 'martial_arts' _ma 'terrible' $EXPOSED>>
<<applyExperience 'bdsm' 18 'terrible' $EXPOSED>>
<<applyStress 30>>
<<applyFatigue 50>>
<<case 'resign'>>
<<applyExperience 'submission' 18 'terrible' $EXPOSED>>
<<applyStress 10>>
<<case 'embrace'>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<</switch>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<set $scene.removeCage = $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_admin","npc_admin_evil")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'fight'>>
You try to fight back... but against such numbers resistance is all but futile.
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
The first <<guy>> to approach you gets it good, going down like a felled tree...
<<else>>
You catch one <<guy>> good, feeling <<his>> nose break against your fist...
<</if>>
but after that you're swarmed and brought to the ground.
<<else>>
Even one on one you'd have a problem overcoming<<if !$options.fem>> the size advantage of<</if>> any of the <<men>> in the room... against a group, you have no chance.
<</if>>
<br><br>
In the end your resistance earns you nothing but a few extra kicks as you're pushed to the ground, the last of your fight sapped as someone jams you with some sort of shock device that sends who know how many thousand volts through your body... much to the amusement of one of your assailants.<br>
<br>
"@@.generic_male1;Look at her spasm! God, imagine how it'd feel if your cock was inside her right now?@@"<br>
<br>
"@@.generic_male2;You idiot, you'd be shocked too!@@"<br>
<br>
"@@.generic_male1;Well, yeah, but ignoring that...@@"<br>
<br>
Pressed into the ground you feel the first cock plunging into your ass, while someone pulls your head up by the hair and shoves another past your lips and into your throat.
<<case 'resign'>>
As you stumble into the arms of your assailants you go limp, seeing no point in resisting against such odds. Your lack of interest hardly seems to bother the <<men>> swarming around you, as you soon feel a cock
<<case 'embrace'>>
<<if setup.getTotalValue("bimbofication") > 15>>
You are a slut, why fight it? At least that's what you tell yourself as
<<else>>
Hoping that participation will be less painful than resistance,
<</if>>
you throw yourself into the moment, mouth wide in invitation as you bend over and present your ass for cock, cock and more cock.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.removeCage>>
Over the din you hear <<=ps(setup.getNpcName("npc_admin","formal"))>> voice again, "@@.npc_admin;don't forget her other hole!@@" <<He npc_admin>> shouts as you feel someone manipulating your chastity belt, the protective device falling away to leave you totally vulnerable to what is now a nigh-animalistic mob. "@@.npc_admin;The party isn't over until you're all satisfied and the bitch is leaking cum out of every orifice!@@"<br>
<br>
Raucous laughter says that your assailants are quite on board with this idea as your body is hauled into a new position so that you can be airtight with cock.
<<elseif $player.body_ref.vagina>>
If you spent a moment entertaining the idea that your maidenhead was somehow off-limits, that hope is dashed as you're pulled into a new position and a third cock slams into you, ass and cunt packed full as you all but choke on the <<getWordPenis>> ravaging your throat.
<<else>>
Perhaps trying to compensate for your "mere" two holes your assailants use your rough, fast and continuous, stretching your lips and rear with two cocks at a time as they pound you hard, fast and deep.
<</if>>
<br><br>
[<<moveTo "event_vip_evil_admin_gangbang_6" "Continue." 1800 "<<set $scene.action='embrace'>>">>]
</div>/*#
#desc: evil admin VIP service friends
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<if !$player.sec_style.sex.airtight>>
<<set $player.sec_style.sex.airtight = "strict">>
<<include "addTypingEvent">>
<</if>>
<<if $fetish.cum>>
<<applyExperience 'cum' 15 'terrible' $EXPOSED>>
<<alterStatAllWorn 'cumsoaked' '["add",100]'>>
<</if>>
<<applyStress 20>>
<<applyFatigue 200>>
<<if $player.makeup.template != "">>
<<set $player.makeup.messed = 100>>
<</if>>
<</if>>
<<set $player.location to "Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_spectators.png" setup.charImage("npc_admin","npc_admin_evil")>>
<div id="invframe" class="scrolltext">
You lose count of how many cocks have plowed you, your abuse continuous as you are raped and ravaged, slapped, spat upon and constantly degraded, grunts of "@@.generic_male1;whore@@" and "@@.generic_male1;slut,@@"
<<if $fetish.cum>>
cum splattering across your face and clothes
<<else>>
drool and sweat dripping down your body
<</if>>
as you are used and ruined.<br>
<br>
The slightest pause between cocks gives you little chance to do anything but take a breath before another round starts as <<=setup.getNpcName("npc_admin","formal")>> eggs on <<his npc_admin>> "friends" with a cruel laugh and instructions to "@@.npc_admin;Fuck her harder! If you break her, well... that's what corporate insurance policies are for!@@"<br>
<br>
Muscles strained and abused the lack of air has you being passed around like little more than an inflatable doll,
<<if $fetish.cum>>
the closest relief you get a few moments of being ass-fucked while someone holds your face against their boot, ordering you to lick it clean of spilt cum — an order you can do nothing but hurry to obey as tears stream down your face.
<<else>>
never given the slightest moment of relief from getting pounded in every hole, tears, sweat, spit and drool mixing to cover you in depravity.
<</if>>
<br><br>
Against so many unrelenting "patrons"
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
even your vaunted stamina falters.
<<else>>
even your stamina falters.
<</if>>
<<else>>
you have no chance.
<</if>>
On your back, lying in a puddle of <<if $fetish.cum>>cum and <</if>>sweat you stare up past the <<man>> currently fucking you, your eyes losing focus as you escape to unconsciousness.<br>
<br>
[<<moveTo "event_vip_evil_admin_gangbang_7" "Continue." 3600>>]
</div>/*#
#desc: evil admin VIP travel home
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.addCollar>>
<<removeItem "bondage_collar_promo">>
<<deleteItem "bondage_collar_promo" true>>
<</if>>
<<applyExperience 'humiliation' 18 'terrible' $SEEN_STRANGER>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_admin","npc_admin_evil")>>
<div id="invframe" class="scrolltext">
You don't know how long you were out, but you wake up to find yourself back in the limousine... but this time you are not alone, <<=setup.getNpcName("npc_admin","formal")>> leering back at you from the other side of the vehicle. "@@.npc_admin;Enjoy the party?@@" <<He npc_admin>> says with a cruel laugh, "@@.npc_admin;seems like it got too much for you at the end... but the <<boy>>s don't mind. Awake or not they used you like the human fuck-doll you are until they were all satisfied, a few even left a tip!@@"<br>
<br>
<<He npc_admin>> laughs harder as <<he npc_admin>> throws a handful of credits at you... somehow the reminder that this was technically a "job" makes things worse and forces you to relive the degrading humiliation anew.<br>
<br>
<<=setup.getNpcName("npc_admin","formal")>> takes a puff on a cigar, grinning with satisfaction. "@@.npc_admin;That said... well... if your can remember back to the reason for all this... tonight was about celebrating my accomplishment. What with everyone getting caught up in the moment, well... how about you crawl over here and give me a nice thank you being a part of things?@@"<br>
<br>
<<He npc_admin>> spreads <<his npc_admin>> legs, <<his npc_admin>> pants straining slightly with the clear fact that lording power over you has <<him npc_admin>> extremely hard.<br>
<br>
"@@.npc_admin;Of course, you've had a busy evening... I could see you being tired... but if you have nothing else to offer me, well... then the job's done, and that means you need to get out of the car and walk home all by your lonesome...@@"<br>
<br>
You look across the vehicle in horror at this evil villain that was once your friend...<br>
<br>
[<<moveTo "event_vip_evil_admin_gangbang_8" "Worshipfully suck <<him npc_admin>> off." 300 "<<set $scene.action='worship'>>">>]<br>
[<<moveTo "event_vip_evil_admin_gangbang_8" "Crawl over and suck <<him npc_admin>> off." 300 "<<set $scene.action='suck'>>">>]<br>
[<<moveTo "event_vip_evil_admin_gangbang_8_ref" "Refuse." 300>>]
</div>/*#
#desc: evil admin VIP thank him
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 50>>
<<switch $scene.action>>
<<case 'worship'>>
<<set _stress = 30 - setup.getTotalValue("bimbofication")>>
<<applyStress _stress>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 18 'terrible' $SEEN_STRANGER>>
<<case 'suck'>>
<<set _stress = 20 - setup.getTotalValue("bimbofication")>>
<<applyStress _stress>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<if $scene.action != "refuse">>
<<set $player.location to "Limousine">>
<<else>>
<<set $player.location to "City Street">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.suck>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<createAdvBGR "./images/locations/street.png">>
<</if>>
<div id="invframe" class="scrolltext">
After what you've endured... what's one more private humiliation? At least that's what you tell yourself as you crawl across the vehicle and unzip <<his npc_admin>> pants to take <<his npc_admin>> <<getWordPenis "npc_admin">> between your lips.<br>
<br>
<<if $scene.action == "worship">>
In between sucks you talk about how brilliant <<he npc_admin>> is, and how important <<his npc_admin>> work is to the company, thanking <<him npc_admin>> for letting you be a part of <<his npc_admin>> celebration.
<<else>>
You remain silent as you focus on the job at hand, after all you've been through what's one more cock if it will save you a dangerous and humiliating walk home?
<</if>>
<br><br>
<<=setup.getNpcName("npc_admin","formal")>> continues to enjoy <<his npc_admin>> cigar, grinning down in triumph the whole time.<br>
<br>
"@@.npc_admin;Look at you... and to think you once thought yourself a man... you're nothing but a pathetic slut... to think if I had just shoved you to your knees and raped those fuckable lips the first time we met... Well, it would have saved a lot of trouble, to say nothing of all those times I had to sit there while you droned on about that stupid ex of yours. Hmm... I wonder if she's as good a cock-sucker as you are? Perhaps during the next hiring wave... I could use a secretary of my own...@@"<br>
<br>
<<if $scene.action == "worship">>
Mouth full of cock, you merely moan your agreement, trying to focus on finishing <<him npc_admin>> despite your exhaustion.
<<else>>
You remain silent, trying to ignore <<his npc_admin>> words as you focus on choking down <<his npc_admin>> cock and just getting to the end of this horrid evening.
<</if>>
<br><br>
<<=setup.getNpcName("npc_admin","formal")>> holds out far longer than most of your evening's clients, but eventually you feel <<his npc_admin>> climax about to arrive. <<He npc_admin>> takes no chances, grabbing you by the hair and pulling you all the way down, your already sore and abused body aching as <<he npc_admin>> pumps <<his npc_admin>> load down your throat and then pulls you off.<br>
<br>
<<if $scene.action == "worship">>
"@@.pc;Thank you, <<sir npc_admin>>,@@" you moan, eyes heavy and jaw loose as you look up at <<him npc_admin>>.<br>
<br>
<</if>>
<<He npc_admin>> sneers, "@@.npc_admin;a barely passable job. And from someone with your qualifications! I shall have to tell <<=setup.getNpcName("npc_development","formal")>> to add some additional blow-bangs to the course.@@"<br>
<br>
<<if $scene.action == "worship">>
"@@.pc;Of course, <<sir npc_admin>>,@@" you reply
<br>
<<else>>
You try to catch your breath
<</if>>
as <<he npc_admin>> reaches past to open the door.<br>
<br>
"@@.npc_admin;We've arrived.@@" <<He npc_admin>> states flatly before shoving you out of the vehicle.<br>
<br>
You stumble to the pavement as the limousine speeds off.<br>
<br>
You look up — true to <<his npc_admin>> word <<=setup.getNpcName("npc_admin","formal")>> has left you right in front of your apartment building... though you should probably hurry in, you're such a mess you're liable to have someone call the authorities if they saw you.<br>
<br>
[<<moveTo "event_vip_evil_admin_gangbang_10" "Stagger up to your flat." 300>>]
</div>/*#
#desc: evil admin VIP thank him
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 50>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'whoring' 20 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You refuse and <<=setup.getNpcName("npc_admin","formal")>> frowns. "@@.npc_admin;And to think I thought you were a professional... it would seem <<=setup.getNpcName("npc_development","formal")>> is not quite the teacher she claims... or maybe you're just as shitty of a student as you were a man.@@"<br>
<br>
The limousine comes to a stop and <<he npc_admin>> reaches for the door. "@@.npc_admin;Since you are of no further use... this is your stop.@@" <<He npc_admin>> states flatly before shoving you out of the vehicle.<br>
<br>
You stumble to the pavement as the limousine speeds off.<br>
<br>
You're such a mess there's no chance a taxi would even consider you as a fare and you look around to attempt to get your bearings.<br>
<br>
[<<moveTo "event_vip_evil_admin_gangbang_9" "Stagger home." 1800>>]
</div>/*#
#desc: evil admin VIP walk home
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 30>>
<<applyExperience 'humiliation' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'whoring' 18 'very' $SEEN_STRANGER>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to 'Street'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You're stumbling home past a dark alleyway when a pile of trash shifts. You blink, as it moves further and you realise that it's actually a <<man>>. A filthy, disgusting <<man>>.<br>
<br>
<<He>> looks up at you with a leer, somehow not turned off by you being covered in cum.<br>
<br>
"@@.generic_male1;Well look at you... have a hard night? Me too... how's about you lend me some comfort?@@"<br>
<br>
<<set $scene.from_evil = true>>
<<if $player.money.total >= 10>>
[<<moveTo "event_random_hobo_2" "Give <<him>> a few credits." 120 "<<set $scene.action='money'>>">>]<br>
<<else>>
[@@.link_locked;You hardly have two credits to rub together, and none to spare.@@]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_random_hobo_2" 'Offer <<him>> some "tenderness."' 120 "<<set $scene.action='blow'>>">>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to offer yourself to some dirty stranger in an alleyway.@@]<br>
<</if>>
[<<moveTo "event_random_hobo_2" 'Hurry on your way.' 120 "<<set $scene.action='leave'>>">>]
</div>/*#
#desc: evil admin VIP cry at home
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<if $npc_cat.stage > 0 || $npc_dog.stage > 0>>
<<applyStress -10>>
<<else>>
<<applyStress 20>>
<</if>>
<</if>>
<<set $player.location to "Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/shower_scene.mp4">>
<div id="invframe" class="scrolltext">
You stumble into your flat, catching a disturbing glimpse of your reflection in the hall mirror before heading straight for the shower.<br>
<br>
The hot water raining down you cry. You wonder if you'll ever feel clean as you mourn for the monster that was once your friend.<br>
<br>
<<if $npc_cat.stage > 0 || $npc_dog.stage > 0>>
As you try to scrub away the memory of the evening you glance to one side to see
<<if $npc_cat.stage > 0 && $npc_dog.stage > 0>>
your two furry friends in the doorway, staring up at you with such concern that you can't help but smile back.<br>
<br>
Turning off the shower you reach for the towel, kneeling down for cuddles and licks from both of them before they escort you to the bedroom.
<<elseif $npc_cat.stage > 0>>
<<=setup.getNpcName("npc_cat","first")>> standing in the doorway, staring up at you with such concern that you can't help but smile back.<br>
<br>
Turning off the shower you reach for the towel, <<=setup.getNpcName("npc_cat","first")>> weaving between your legs until you reach down and pick her up, petting her gently as you head for the bedroom.
<<elseif $npc_dog.stage > 0>>
<<=setup.getNpcName("npc_dog","first")>> standing in the doorway, staring up at you with such concern that you can't help but smile back.<br>
<br>
Turning off the shower you reach for the towel, <<=setup.getNpcName("npc_dog","first")>> supervising the whole progress and then leading you off to the bedroom.
<<else>>
ERROR: unexpected state!
<</if>>
<<else>>
Eventually you run out of tears, fumbling with the knob to stop the water and reaching for a towel before heading for your bedroom...
<</if>>
<br><br>
[<<moveTo "event_bed_root" "Crash." 0 "<<set $scene.change=false>>">>]
</div>/*#
#desc: futa dude customer intro
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You head upstairs and it isn't long before the client arrives. A little scruffy, he's outwardly a fairly normal looking dude, if a little nervous as he introduces himself.<br>
<br>
"@@.generic_male1;Hi, wow, you look even better than in the pictures...@@" he pauses to stare at you for a moment and you realise that he reminds you a bit of <<=setup.getNpcName("npc_sexdoll","first")>>... or rather, back when she went by <<=setup.getNpcName("npc_sexdoll",$npc_sexdoll.original_first_name)>> and hadn't been transformed into a company-devoted sex-doll.<br>
<br>
"@@.generic_male1;Sorry, the reason I asked for you is I had some work done at the bodyshop and, well... I want to take it for a test drive with someone... experienced.@@" He says as he starts unzipping his pants.<br>
<br>
[<<moveTo "event_vip_futa_dude_2" "Hmm..." 180>>]
</div>/*#
#desc: futa dude customer reveal
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
The man pulls down his pants to reveal the half-chub of a normal-looking cock. The slight confusion slips into your expression as he quickly follows up with "@@.generic_male1;oh, no, it's not this... it's THIS.@@" Reaching down he pulls his cock to one side to reveal a pert, and dripping, vagina. "@@.generic_male1;Seeing all the fun my partners have gotten up to with theirs, well... I wanted to feel that pleasure for myself. Now come on! Fuck me, fuck me good!@@"<br>
<br>
He sheds his pants the rest of the way as he moves to the bed...<br>
<br>
[<<moveTo "event_vip_futa_dude_3" "Ask if he's sure about losing virginity to a stranger..." 180>>]<br>
[<<moveTo "event_vip_futa_dude_4" "Get to it." 180>>]
</div>/*#
#desc: futa dude customer question
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You ask if the man's sure he wants to give up his virginity to a stranger and he just chuckles and spreads his legs in invitation.<br>
<br>
"@@.generic_male1;Stranger? More like professional. Like... I never really considered virginity as a concept a big deal, and it's not like I haven't lost the OTHER one, in this case though I figure, if you want something, or someone, done right, you pay for the best... now stop jabbering and fuck me! I paid for cock not talk!@@"<br>
<br>
[<<moveTo "event_vip_futa_dude_4" "Get to it." 180>>]
</div>/*#
#desc: futa dude customer fuck
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<changeHorny 100>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You shed your clothes
<<if $scene.removeCage>>
to reveal your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>, theatrically unlocking yourself to permit your
<<else>>
for your
<</if>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small <<getWordMyPenis>> to stiffen.
<<if $fetish.sph>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
"@@.generic_male1;Wow... I guess this isn't going to be much of a challenge for me... but I guess that's good for a first time, right?@@"
<<case 'spe'>>
"@@.generic_male1;So cute! I can't wait to feel that inside me!@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<else>>
"@@.generic_male1;Come on, now! Stop standing there and fuck me!@@"
<</if>>
<br><br>
You do as your client commands, pulling him closer to the edge of the bed and placing one hand each on his thighs to roll him back as your hips press into him and you enter.<br>
<br>
"@@.generic_male1;Oh fuck...@@" the client moans, grinding back against you as you make small thrusts. "@@.generic_male1;Fuck it feels so good...@@" he gasps, his own cock bouncing merrily<<if $fetish.cum>>,and dripping profusely<</if>> as he closes his eyes in concentration. "@@.generic_male1;Don't stop... keep... keep going...@@"
<<case 2 3>>
<<getWordMyPenis>> to stiffen.<br>
<br>
The man watches with bated breath as you move closer, first shuffling him to the edge of the bed before lowering your stance and very slowly pressing into him.<br>
<br>
"@@.generic_male1;Oh fuck...@@" he moans, before his legs suddenly snatch around you and pull you in, your hips slamming into him as you tip forward off-balance and into his embrace. "@@.generic_male1;Oh god, it feels even better than I imagined!@@" He pants, squeezing you tighter as you start to rock your hips. The man's cock pressed between your bellies, <<if $fetish.cum>>, you feel it ooze with excitement<<else>>you feel it hard with excitement<</if>> as you continue to grind and he closes his eyes in concentration. "@@.generic_male1;Don't stop... keep... keep going...@@"
<<case 4 5>>
large <<getWordMyPenis>> to stiffen.<br>
<br>
"@@.generic_male1;Woah... bigger in person...@@" he states with a slight tremble in his voice. "@@.generic_male1;But that just makes me want it more... all of it... fuck me with all of it!@@"<br>
<br>
You don't need to be asked again, moving into position at the side of the bed and positioning the man on the edge. Slowly, you press the thick tip of your cock against his wet hole, letting his folds slowly part before you and moving at his pace.<br>
<br>
You're only a few centimetres in and he's already panting with excitement, his own cock sticking up rock-hard. "@@.generic_male1;Oh god, that feels so good... but I want more, MORE!@@"<br>
<br>
You obliged, sliding deeper and deeper into the man's tight, wet hole, your hips pressed together for a moment of ecstasy before you start thrusting...<br>
<br>
The man's cock is rock hard<<if $fetish.cum>> and oozing with excitement<</if>> as you continue to thrust and he closes his eyes in concentration. "@@.generic_male1;Don't stop... keep... keep going...@@"
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock<<elseif $player.body_ref.knot>>dog-cock<<elseif $player.body_ref.horsecock>>horse-cock<<else>>cock<</if>> to jut out menacingly.<br>
<br>
"@@.generic_male1;Holy shit... I knew you were big but that...@@" he bites his lip, a hint of fear in his voice as he stares all but transfixed by your magnificence. "@@.generic_male1;I need it... I don't care if you split me in half, I need that monster inside of me, ALL OF IT!@@"<br>
<br>
With your client very much under the sway of arousal, it's up to you to control the pace, first rubbing your hard cock between their folds to lube up before slowly starting to press in. The man's gasps come fast and short as he spreads, spreads... and then the thick <<if $player.body_ref.horsecock>>flared <</if>>tip is inside of him.<br>
<br>
"@@.generic_male1;So big, oh fuck...@@" he moans as you start to slowly press deeper, listening to his gasps and controlling your pace as you let his body adjust and re-arrange around the massive meat missile making its way into him.<br>
<br>
<<if $player.body_ref.knot>>
You come to the final challenge of the knot and feel the man's entire body shudder, his recently-virginal vagina stretching, stretching... and then, with a final popping jerk, you're fully seated inside.
<<else>>
The final few centimetres are the most challenging as you wiggle your hips slightly to worm your way deeper, knowing his end is near as you make a final push that seats you fully inside him.
<</if>>
His eyes flutter open for a moment as he looks down at his stretched belly and you twitch your hips with a small thrust. "@@.generic_male1;Oh god... more, more... don't stop! Keep... keep going...@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
[<<moveTo "event_vip_futa_dude_5" "Give it to him harder." 300 "<<set $scene.hard=true>>">>]<br>
[<<moveTo "event_vip_futa_dude_5" "Don't push things." 300 "<<set $scene.hard=false>>">>]
</div>/*#
#desc: futa dude customer fuck continue
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if $scene.hard>>
It may be the man's first time, but he is as eager as he is willing, and your thrusts steadily speed up until you are makeing a wet slapping sound with every thrust, your hips slamming into him repeatedly as you drill him into the mattress. Belly to belly, your butt bounces as he pulls you tight, moaning into your ear as you give him the business hard and deep.
<<else>>
Mindful that it's his first time, you keep things under control, keeping your pace slow and sensuous as he pulls you tight. Belly to belly, half grind, half thrust as he moans into your ear.
<</if>>
<br><br>
You feel him cum, but you keep going, not stopping until at least half a dozen orgasms have wracked his body, his arms getting weaker as he struggles to hold on until you final climax yourself,
<<if $fetish.cum && $player.body_ref.cumProduction>>
completing his "deflowering" by
<<switch $player.body_ref.cumProduction>>
<<case 1>>
blasting a load nice and deep.
<<case 2>>
by pumping him full with a massive load that leaks out around your cock.
<<default>>
ERROR: unexpected player.body_ref.cum Production <<=$player.body_ref.cumProduction>>
<</switch>>
<<else>>
shuddering inside of him and setting off a final orgasm that has him all but pass out in ecstasy.
<</if>>
<br><br>
You rise top your feet unimpeded and look down at the man's expression of overwhelmed satisfaction.<br>
<br>
[<<moveTo "event_vip_futa_dude_6" "Continue." 180>>]
</div>/*#
#desc: futa dude customer fuck finish
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.futa_dude = true>>
<<set $scene.pay = Math.floor($scene.client.base_pay * (1+ $player.body.penissize[0]/10))>>
<<addCredits $scene.pay>>
<<applyExperience 'whoring' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
Surprising you, the man suddenly rolls forward, leaning off the bed to lick you clean with a grin before you<<if $scene.removeCage>> replace your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> and<</if>> reach for your clothes.<br>
<br>
<<if $scene.removeCage>>
"@@.generic_male1;I can see why you have to lock it up... that was...@@"
<<else>>
"@@.generic_male1;Wow, that was...@@"
<</if>>
the man shudders, unable to put his feelings into words.<br>
<br>
You hand him his pants and he digs into his pocket for his wallet, handing you a wad of <<=$scene.pay>> credits.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
"@@.generic_male1;That was amazing... better than I had hoped... and it has me excited to see what else this new "upgrade" can do...@@"
<<case 2 3>>
"@@.generic_male1;That was great... and it looks like everything held up!@@" He grins, taking a final look at his dripping cunt before zipping up his pants "@@.generic_male1;I'm going to have SO much fun with this...@@"
<<case 4 5>>
"@@.generic_male1;That was great! And everything held up, no pain just... yeah.@@" He grins. "@@.generic_male1;I may have a size queen thing developing but hey, that's fun, right?@@"
<<case 6>>
"@@.generic_male1;That was... wow... I only hope I haven't ruined me for... lesser mortals!@@" He states with a grins. "@@.generic_male1;Still, it was totally worth it... and everything held up which... well, talk about trial by fire!@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
You congratulate the man and he grins, walking a bit funny as he leaves the room.<br>
<br>
[<<moveTo "room_usual_place_inside" "Dress and head back downstairs." 180 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: confirm gentle job
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_barkeeper', 'first')>> that you'll take the job with the mysterious client. "@@.npc_barkeeper;Sure, and good luck. Their name is Anastasia, their contact info says they live close-by, so... hang out over at the end of the bar while I give them a ring and they should be here soon.@@"<br>
<br>
[<<moveTo "event_vip_gentle_2" "Wait for the customer to arrive." 680>>]<br>
[<<moveTo "event_prostitution_vip_root" "Ask about another job instead." 600>>]
</div>/*#
#desc: gentle customer - arrives
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" "gentle_customer">>
<div id="invframe" class="scrolltext">
You wait around for several minutes wondering who this mysterious client could be, or want. Distracted by your own thoughts you don't even notice until a hand gently taps you on the shoulder and a soft voice asks "@@.generic_female2;Miss <<=$player.last_name>>?@@"<br>
<br>
You turn around... and then look up. Tall and thin the woman you can only guess is your client seems almost ethereal — a slender beauty wearing a simple necklace and with golden hair down to her waist, she seems somewhat out of place in the loud bar.<br>
<br>
You nod in acknowledgment and offer her a seat next to you, but she leans in, her voice soft, barely audible over the bustle of the bar, even this close.<br>
<br>
"@@.generic_female2;It's a bit loud... I was wondering if we could take a walk?@@"<br>
<br>
[<<moveTo "event_vip_gentle_3" "Sure." 1800 "<<set $scene.walk=true>>">>]<br>
[<<moveTo "event_vip_gentle_3" "You'd rather stay at the bar." 60 "<<set $scene.walk=false>>">>]
</div>/*#
#desc: gentle customer - walk
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.walk>>
<<set $player.location to "The Usual Place">>
<<else>>
<<set $player.location to "The Usual Place, Inside">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.walk>>
<<createAdvBGR "./images/locations/the_usual_place_night.png" "gentle_customer">>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_night.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.walk>>
You smile and rise to your feet, finding yourself over a head shorter than <<=setup.getNpcName("generic_female1","custom", "Anastasia")>>... yet, in a weird reversal of one of <<=ps(setup.getNpcName("npc_manager","formal"))>> skills, you do not feel looked down upon.<br>
<br>
You gesture for them to lead the way and the two of you weave through the crowd to the exit, where the two of you stand in the cool night air in front of the bar.<br>
<br>
Their hand drifts towards you, as if offering to hold your own.<br>
<br>
[<<moveTo "event_vip_gentle_4" "Hold hands." 1200 "<<set $scene.hand=true>>">>]<br>
[<<moveTo "event_vip_gentle_4" "Do not hold hands." 1200 "<<set $scene.hand=false>>">>]
<<else>>
You reply that you'd rather stay at the bar and the customer frowns... though even that expression comes off as kind.<br>
<br>
"@@.generic_female2;Oh, well... I don't think this is going to work, perhaps some other night.@@"<br>
<br>
Before you can respond they have faded into the crowd, leaving you alone at the bar.<br>
<br>
<<printThought "Nuts.">><br>
<br>
[<<moveTo "room_usual_place_inside" "Consider what to do next." 60>>]
<</if>>
</div>/*#
#desc: gentle customer - hold hands
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.hand>>
<<applyStress -5>>
<<else>>
<<set $scene.pay = .5 * $scene.client.base_pay>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<set $player.location to "City Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" "gentle_customer">>
<div id="invframe" class="scrolltext">
<<if $scene.hand>>
You accept the silent offer, and your fingers entwine with theirs. They smile down at you and you feel a slight thrill, not so much of excitement, but of tranquility.
<<else>>
You keep your hands to yourself, and their arm drops silently to their side.
<</if>>
<br><br>
"@@.generic_female2;There's a park near here that's really pretty at night. Come on, let's take a walk.@@"<br>
<br>
<<if $scene.hand>>Hand in hand, the<<else>>The<</if>> two of you set off.<br>
<br>
The steep skyscrapers that make up the city always leaves you surprised when you find a patch of green, the park less than a block away from The Usual Place... and yet you don't think you ever would have been aware of it.<br>
<br>
A winding path takes you through the park, the two of you walking slow and leisurely, just two girls on a nice<<if $scene.hand>>, somewhat romantic<</if>> stroll.<br>
<br>
The park is empty, not so dark as to leave you stumbling about, but also insulated from the glare of the city, a pocket of peace amidst the hustle and bustle.
<<if $scene.hand>>
Near the centre of the park they stop at a bench, the two of you sitting down as <<=setup.getNpcName("generic_female1","custom", "Anastasia")>> reaches into a pocket to pull out and unwrap a piece of chocolate. She breaks it in half and offers you a piece.<br>
<br>
[<<moveTo "event_vip_gentle_4a" "Accept the treat." 1200 "<<set $scene.chocolate=true>>">>]<br>
[<<moveTo "event_vip_gentle_4a" "Pass on the offer." 1200 "<<set $scene.chocolate=false>>">>]
<<else>>
Following the weaving path through the park you somehow emerge to find yourself back where you began, crossing a street and rounding a corner to arrive outside The Usual Place once more.<br>
<br>
"@@.generic_female2;Thank you for your time.@@" <<=setup.getNpcName("generic_female1","custom", "Anastasia")>> softly states as she presses some credits into your hand. "@@.generic_female2;It is nice, sometimes, just to walk and enjoy someone's company in silence, yes?@@"<br>
<br>
You nod, still a little confused as she bows and slips away, disappearing around a corner before you've quite pieced together that the "job" is over.<br>
<br>
<<printThought "Huh... that was strange. Not unpleasant but... curious.">><br>
<br>
[<<moveTo "room_usual_place_outside" "Consider what to do next." 60>>]
<</if>>
</div>/*#
#desc: gentle customer - chocolate
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.chocolate>>
<<applyStress -10>>
<<applyFatigue -20>>
<</if>>
<</if>>
<<set $player.location to "City Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" "gentle_customer">>
<div id="invframe" class="scrolltext">
<<if $scene.chocolate>>
You accept the treat with a smile. As it dissolves in your mouth you suppress a moan. You remember a time back at CDS — someone in the department had taken a vacation to the tropics and visited a cacao farm. They brought back fresh, authentic chocolate and shared with the office and you had marvelled at the flavour. Not the overly sweetened stuff you're used to getting in the city, but more bitter... and yet rich and soothing.<br>
<br>
You were never able to find anything like it after, at least that you <<if $player.money.total >= 50000>>could afford at the time <<printThought "Strange how being awash in money my focus is lead elsewhere...">><<else>>can afford<</if>>, but this... this tastes even better and you look back at your companion with surprise.<br>
<br>
"@@.generic_female2;Delicious, yes? Minimally processed, no additives, it isn't to everyone's taste but... there's a purity to that, to a thing that just is, without trying so hard to be appealing that it loses itself in the process.@@"<br>
<br>
You nod, finding yourself shifting closer on the bench, their slender arm gently draping around your shoulder as you just relax for a few minutes, time slipping past in content silence as the taste gradually fades from your mouth and then your companion rises once more to lead you onward.
<<else>>
You shake your head and the client shrugs, eating one piece of chocolate and wrapping up the other to put away.<br>
<br>
You sit in silence for a few moments as they finish, and then they lead the way once again.
<</if>>
<br><br>
<<if $scene.hand>>
Hand in hand the
<<else>>
The
<</if>>
two of you continue down the path, weaving your way out the far side of the park where you find yourself before a glorious, but familiar, sight — the beautiful stone facade of the Church of the Goddess rising before you.<br>
<br>
[<<moveTo "event_vip_gentle_5" "Take a moment to admire the cathedral." 60>>]
</div>/*#
#desc: gentle customer - stop in front of church
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside the Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_exterior.png" "gentle_customer">>
<div id="invframe" class="scrolltext">
You pause in front of the church. Even after all the time you've spent within the holy building the exterior remains breathtaking. <<=setup.getNpcName("generic_female1","custom", "Anastasia")>> glances up with you. "@@.generic_female2;Beautiful, isn't it?@@"<br>
<br>
You nod, and ask if she has been inside?<br>
<br>
"@@.generic_female2;On occasion... but sometimes I just like to walk by, it is a unique beauty, such an old building, compared to the steel and glass of the rest of the city... come I have something else to show you.@@"<br>
<br>
You nod, your curiosity a bit heightened as she leads you on by the hand, the two of you walking confidently across the lobby of a nearby high-rise and riding the elevator to the top.<br>
<br>
[<<moveTo "event_vip_gentle_6" "Continue." 600>>]
</div>/*#
#desc: gentle customer - building roof
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Looking Over the City">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_skyline_night.png" "gentle_customer">>
<div id="invframe" class="scrolltext">
From the elevator you walk to a stairwell as a few more flights up dumps you on the roof of the building itself.<br>
<br>
You gasp at the sight of the city spread before you, the towering buildings of glass and steel glowing beautiful in the night.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Anastasia")>> smiles at your expression of awe. "@@.generic_female2;I like this place, it's... peaceful. Like I feel above all my normal worries.@@" She explains as she leads you around a corner to where someone has put a mattress under a small shelter, a private little viewing area on top of the city.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Anastasia")>> takes a seat and beckons you down to join them. A cool breeze blows past the building, and you glance up as the moon comes into full view.<br>
<br>
[<<moveTo "event_vip_gentle_7" "Join them on the mattress." 3600 "<<set $scene.cuddle=true>>">>]<br>
[<<moveTo "event_vip_gentle_7" "It's a bit late..." 300 "<<set $scene.cuddle=false>>">>]
</div>/*#
#desc: gentle customer - cuddles
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cuddle>>
<<applyStress -10>>
<<else>>
<<set $scene.pay = .7 * $scene.client.base_pay>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<if $scene.cuddle>>
<<set $player.location to "Looking Over the City">>
<<else>>
<<set $player.location to "City Street">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cuddle>>
<<createAdvBGR "./images/locations/city_skyline_night.png" "gentle_customer">>
<<else>>
<<createAdvBGR "./images/locations/street.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.cuddle>>
You join <<=setup.getNpcName("generic_female1","custom", "Anastasia")>> on the mattress and they pull you close, lips meeting, long arms wrapping around your body. The night air atop the building may be cold, but here, in this moment you are warm. You kiss back, lips brushing together and then exploring elsewhere, their soft kisses traveling down your neck, whispering in your ear.<br>
<br>
You turn, finding yourself cradled in their lap as they stroke your hair, occasionally leaning down for another kiss, but mostly just cuddles in one another's warmth, looking up at the stars above moving slowly past...<br>
<br>
[<<moveTo "event_vip_gentle_8" "Continue." 3600>>]
<<else>>
You politely decline <<=ps(setup.getNpcName("generic_female1","custom", "Anastasia"))>> offer and the customer nods. "@@.generic_female2;I understand... still, I enjoyed our time together. I think I'll sit up here a little while longer, you should have no trouble finding your way back to the street. Here, your pay.@@" They hand you a small stack of credits.<br>
<br>
Their words are true and you easily follow signs back to the elevator and back down. You shiver slightly as a wind whistles between the building, feeling a pang of loneliness as you look around the empty street.<br>
<br>
[<<moveTo "room_citymap" "Consider where to go next." 60>>]
<</if>>
</div>/*#
#desc: gentle customer - relax
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<<applyFatigue -50>>
<<gainWillpower 1>>
<<set $scene.pay = $scene.client.base_pay>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to "Looking Over the City">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_skyline_night.png" "gentle_customer">>
<div id="invframe" class="scrolltext">
The longer you lay there the more relaxed you feel, looking up at the gentle smile of <<=setup.getNpcName("generic_female1","custom", "Anastasia")>>, your "customer" ... yet feeling, in some ways that it is you who is the client being served as you reflect back at the nice relaxing evening the two of you have shared.<br>
<br>
As the moon dips lower they gently rouse you, the two of you returning to your feet as they explain that it's time to go.<br>
<br>
"@@.generic_female2;Thank you... I had a good evening, and I suspect you did as well. It's nice, don't you think? To take it slow, hmm?@@"<br>
<br>
You nod — you had gone into this evening a bit blind, and while it definitely went different than you expected, the end product was sweet and wonderful.<br>
<br>
She presses a stack of credits into your hand.<br>
<br>
[<<moveTo "event_vip_gentle_8a" "Ask why?" 300>>]<br>
[<<moveTo "event_vip_gentle_9" "Thank them and be on your way." 600>>]
</div>/*#
#desc: gentle customer - explanation
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Looking Over the City">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_skyline_night.png" "gentle_customer">>
<div id="invframe" class="scrolltext">
You feel a bit awkward accepting payment, yet, for the first time, <<=setup.getNpcName("generic_female1","custom", "Anastasia")>> previously soft expression communicates a firmness that says giving it back would not be permitted. Instead you ask why... and they smile.<br>
<br>
"@@.generic_female2;Girls like you... you work so hard, giving so much of yourselves to others and certainly you may gain pleasure in the process but...@@" She shakes her head in amusement. "@@.generic_female2;For someone whose body is so for sale I find a special intimacy in... not that, in the feeling of tenderness and human connection. I find such things even more pleasurable than the carnal extremes, and I hope you appreciated it, as well?@@"<br>
<br>
You nod, hesitating a moment before you pull them in for a parting hug. They're right, of course; it isn't often that you reflect on how far you've come since your old "determined to remain a virgin" self and you resolve to pay a bit more attention to the softer things amidst all the extremes you have come to embrace and enjoy.<br>
<br>
With a final glance out at the skyline they lead you back to the elevator, blowing you a kiss as the doors close and you descend back to street level...<br>
<br>
[<<moveTo "event_vip_gentle_9" "Be on your way." 600>>]
</div>/*#
#desc: gentle customer - depart
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.gentle = true>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You leave the elevator alone, stepping back onto the street as a cold night wind howls between the buildings. In a way you feel suddenly alone... but also at peace, feeling better able to appreciate the full spectrum of experience and intimacy.<br>
<br>
[<<moveTo "room_citymap" "Consider where to go next." 60>>]
</div>/*#
#desc: goth maid vip: offer
#status: FINISHED 0.8.7.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_barkeeper', 'first')>> that you'll take the job. She grins "@@.npc_barkeeper;wonderful. If you want to head on up to the private room, supplies should already be waiting — <<=setup.getNpcName("npc_prostitute","first")>> was originally penciled in, but she said some variety would be good for the client — and she trusts you to take care of them properly.@@"<br>
<br>
You nod, feeling a bit curious about what this client's deal is as you head upstairs.<br>
<br>
[<<moveTo "event_vip_goth_maid_fem_2" "Continue." 180>>]
</div>/*#
#desc: goth maid vip: prepare room
#status: FINISHED 0.8.7.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You arrive in the Usual Place's private room and find a large bag set on the bed. Opening it up you find a full goth maid outfit — and quite a challenging one, at that, coming with a heavily boned corset and towering thigh-high heels, and a menacing looking spiked latex collar. You surmise that the ultra-short skirt and lack of panties is meant to show off the accompanying inverted chastity cage and large remote-control butt-plug.<br>
<br>
<<printThought "Interesting... stuffed from both directions.">><br>
<br>
You arrange everything out on the bed in preparation, noting as you do that the collar is locking. At the bottom of the bag you find a large strap-on and a single use makeup kit — black lipstick, heavy eyeshadow and a pale palette for that classic goth style.<br>
<br>
<<printThought "Looks like I'm to play customer dress-up before I set them loose to clean...">><br>
<br>
You set the makeup supplies out next to the mirror that you would normally use to freshen up after a job. With a grin you have an inspiration, grabbing the plug from the bed and lubing it up before setting it on top of the chair.<br>
<br>
<<printThought "That should be just the trick to have the customer rooted in place and occupied while I paint their face.">><br>
<br>
[<<moveTo "event_vip_goth_maid_fem_3" "You hear a knock on the door." 180>>]
</div>/*#
#desc: goth maid vip: client arrives
#status: FINISHED 0.8.7.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You hear a sound at the door and then the client is literally shoved into the room by your "coworker" <<=setup.getNpcName("npc_prostitute","first")>>. "@@.npc_prostitute;Would you believe <<he>> spent all this money setting up this session, and then tried to pull a runner?@@" The client stumbled forward to end up kneeling at your feet <<=setup.getNpcName("npc_prostitute","first")>> pushes them back down with a high-heel boot as she grins. Though the client is obviously nervous, you catch a glimpse of a bulge in <<his>> pants and the passionate gleam in <<his>> eye that tells you this treatment is exactly what <<he>> wants.<br>
<br>
"@@.npc_prostitute;You keep an eye on this one, alright?@@" <<=setup.getNpcName("npc_prostitute","first")>> adds as she looks at you, "@@.npc_prostitute;they're a tricksy little <<if $fetish.sissy>>sissy<<else>>thing<</if>>, but you treat 'em hard and firm and it'll all work out, right, bitch?@@"<br>
<br>
The client nods and <<=setup.getNpcName("npc_prostitute","first")>> laughs before closing the door to leave you alone with your customer.<br>
<br>
The client is still at your feet and you look down only for them to kiss the toe of your shoe and whisper an apology. You smile and take a moment to look them over — skinny and pale they're mostly hidden under a baggy jacket and a beanie, but you can see them darting glances towards the outfit laid out on the bed.<br>
<br>
[<<moveTo "event_vip_goth_maid_fem_4" "Starting with the cage would be a good way to establish control." 180>>]
</div>/*#
#desc: goth maid vip: client dressing
#status: FINISHED 0.8.7.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You order the client to <<his>> feet and have them unzip their jeans, ignoring the black silk panties they're wearing as you use an ice pack to soften their <<if $fetish.sissy>>sissy clitty<<else>>penis<</if>> and get it properly stuffed into their body with the inverted cage.<br>
<br>
Their <<if $options.fem>>penis<<else>>manhood<</if>> all but disappeared spurs a burst of obedience and you soon have them dressed in the maid's outfit, being sure to pull the corset brutally tight as you are quietly impressed with how well the client seems to balance on the steep heels.<br>
<br>
Perched on thigh-high platform heels and dressed in the slutty goth maid outfit the client is really starting to look the part, their flattened <<set _fem = !$options.fem>><<getWordPenis _fem>> visible below their miniscule skirt, the only real flaw is their face and the ugly contrasting beanie.<br>
<br>
You march them over to the mirror and guide them onto the chair, they gasp as the anal plug slips into their rear, your hand on their shoulder guiding them down until it fully seats.<br>
<br>
"@@.pc;Good girl,@@" you whisper as you peel off their beanie, momentarily taken aback as a flood of jet-black hair pours out, cascading down to well past their shoulders. "@@.pc;What a lovely surprise... now to bring that cute face into line with the rest of you...@@"<br>
<br>
"@@.generic_male1;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>,@@" they reply as you smile and busy yourself with the makeup.<br>
<br>
Under your experienced hand your customer is soon transformed into the perfect <<if $fetish.sissy>>sissy <</if>>goth maid, your skill seeming to surprise even them as they stare in awe at their reflection... and you buckle the spiked collar around their throat, the CLICK of the lock sending an obvious shiver down their spine.<br>
<br>
[<<moveTo "event_vip_goth_maid_fem_5" "Now, time to clean." 1200>>]
</div>/*#
#desc: goth maid vip: client cleaning
#status: FINISHED 0.8.7.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
The client rises to her feet as you give their plug a final push to make sure it stays seated. "@@.pc;Well, maid? Get to cleaning!@@" You command.<br>
<br>
They nod, and you stare for a few moments longer before they add an obedient curtsy as well.<br>
<br>
You nod in satisfaction and hand them a feather duster and settle back to watch as they bustle themselves with "cleaning" — more just darting around the room and pretending to dust, really, given that the room was quite clean to begin with. As you watch they seem to become a bit more playful. Recovering a bit from the intensity of being woman-handled by <<=setup.getNpcName("npc_prostitute","first")>> and then caged and dressed, after a few minutes the client is getting downright flirty, bending over to purposefully show off their plugged bum as they pretend to clean under the bed, and even rubbing between their legs against their securely caged <<getWordPenis false>>.<br>
<br>
[<<moveTo "event_vip_goth_maid_fem_6" "Correct <<him>> gently." 1200 "<<set $scene.action_1='gentle'>>">>]<br>
[<<moveTo "event_vip_goth_maid_fem_6" "Do not acknowledge <<his>> teasing." 1200 "<<set $scene.action_1='neutral'>>">>]<br>
[<<moveTo "event_vip_goth_maid_fem_6" "Give <<him>> a few corrective shocks." 1200 "<<set $scene.action_1='punish'>>">>]<br>
[<<moveTo "event_vip_goth_maid_fem_6" "Deal with <<his>> every failure swiftly and harshly." 1200 "<<set $scene.action_1='cruel'>>">>]
</div>/*#
#desc: goth maid vip: discipline client for cleaning
#status: FINISHED 0.8.7.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_1>>
<<case "gentle">>
<<applyExperience 'dominance' 15 'terrible' $SEEN_STRANGER>>
<<case "neutral">>
<<applyExperience 'dominance' 7 'little' $SEEN_STRANGER>>
<<case "punish">>
<<applyExperience 'dominance' 11 'normal' $SEEN_STRANGER>>
<<case "cruel">>
<<applyExperience 'dominance' 15 'terrible' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case "gentle">>
You gloss over your client's "mistakes" and naughty behaviour, instead constantly complimenting them the whole time and augmenting your encouragement with frequent remote anal vibrations that have them VERY weak in the knees.<br>
<br>
Breathlessly aroused the client stumbles slightly and ends up on their knees before you. They look up at you with wordless need their black lipstick bottom lip trembling adorably.
<<case "neutral">>
While you observe the client as they "clean" you neither punish nor reward, merely watching as they go through their performative attempts at being your maid.<br>
<br>
You can tell they're a bit disappointed by your inaction, finally seeming to give up on teasing you by literally dropping to their knees at your feet to stare up at you with lusty longing.
<<case "punish">>
With remote in hand you respond swiftly to the client's mistakes with punishing shocks, correctively zapping and commanding them until they are darting about the room like a properly efficient maid — a puppet dancing on your strings.<br>
<br>
Breathless with exertion at so precisely obeying your instructions the client finishes their cleaning and falls to <<his>> knees at your feet to stare up at you with lusty longing.
<<case "cruel">>
With remote in hand you respond to the client's mischief with cruel efficiency. The smallest of errors is met with a harsh shock as you remind them that it is not enough to merely dress and look like a maid, but that they must perform every duty of such to precise perfection otherwise they are unworthy of their dress or the collar, fated to be locked and denied forever.<br>
<br>
The crueler you are, the more the client seems to respond, their feistyness driven away with the force of harsh words and harsher shocks. In the end, it is their body itself that gives out first as they drop to their knees at your feet, exhausted, yet clearly desperate to serve you further.
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
"@@.generic_male1;Use me...@@" The client whispers.<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_vip_goth_maid_fem_7" "Unlock your chastity and have <<him>> suck your cock." 300 "<<set $scene.action_2='cock'>>">>]<br>
<<else>>
[@@.link_locked;You cannot unlock your chastity belt to have <<him>> suck your cock.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_vip_goth_maid_fem_7" "Have <<him>> suck your cock." 300 "<<set $scene.action_2='cock'>>">>]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_vip_goth_maid_fem_7" "Unlock your chastity belt and have <<him>> lick your cunt." 300 "<<set $scene.action_2='cunt'>>">>]<br>
<<else>>
[@@.link_locked;You cannot unlock your chastity belt to have <<him>> lick your cunt.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_vip_goth_maid_fem_7" "Have <<him>> lick your cunt." 300 "<<set $scene.action_2='cunt'>>">>]<br>
<</if>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_vip_goth_maid_fem_7" "Have <<him>> worship your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>." 300 "<<set $scene.action_2='chastity'>>">>]<br>
<</if>>
[<<moveTo "event_vip_goth_maid_fem_7" "<<He>> is only worthy of licking your boots." 300 "<<set $scene.action_2='boots'>>">>]
</div>/*#
#desc: goth maid vip: pre-final reward
#status: FINISHED 0.8.7.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<switch $scene.action_2>>
<<case "cock">>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<changeHorny 100>>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<<case "cunt">>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<changeHorny 100>>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<<case "chastity">>
<<applyExperience 'dominance' 13 'terrible' $SEEN_STRANGER>>
<<case "boots">>
<<applyExperience 'dominance' 15 'terrible' $SEEN_STRANGER>>
<</switch>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
You theatrically remove your <<=setup.getItemName($scene.cage)>> as the client looks on.
<<if $scene.isSissyomatic>>
They seem particularly enamoured by the high-tech security of the 9001-series device, gasping in awe as it smoothly retracts to reveal your
<<elseif "chastity_cage_flat" == $scene.cage>>
They seem both entranced, and very slightly disappointed as your flat-front chastity cage fails to have an internal insert as their own, though that disappointment is gone a moment later as they stare with lust at your revealed
<<elseif "chastity_cage_invert" == $scene.cage>>
They seem particularly enamoured by the fact that your cage is of the same design as their own, gasping in awe as the internal plug is removed to free your
<<else>>
They lick their lips in anticipation as you put the chastity device to one side and reveal your
<</if>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<getWordMyPenis>> and <<getWordVagina>>.
<<elseif $player.body_ref.penis>>
<<getWordMyPenis>>.
<<else>>
<<getWordVagina>>.
<</if>>
<br><br>
<</if>>
With a stern voice you instruct them that a maid's duties to "clean" go beyond mere dusting, and that their, mouth, too, must be trained and available for use.
<<switch $scene.action_2>>
<<case "cock">>
They nod
<<switch $player.body.penissize[0]>>
<<case 0 1>>
obediently, unconcerned by your small <<getWordMyPenis>> as they passionately take it between their lips to rapturously suckle.
<<case 2 3>>
obediently as they take your <<getWordMyPenis>> all the way down their throat to suck enthusiastically
<<case 4 5>>
obediently as they struggle to handle your large <<getWordMyPenis>>, gagging slightly as they fail to quite manage to take its full length
<<case 6>>
obediently, momentarily intimidated by your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock... but your hand on the back of their head soon has them back on track
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<case "cunt">>
They nod obediently, licking passionately between your folds, your hand on the back of their head reminding them of your control of the situation
<<case "chastity">>
<<set _cage = setup.getItemFromType("cage")>>
A hand on their head guides them in to tongue-polish your <<=setup.getItemName(_cage)>><<if ["chastity_cage_flat", "chastity_cage_invert"].includes(_cage)>>, particularly appreciative of the similarity between your flat-fronted device and the one you locked between their legs<</if>>. You stare down as they lick and kiss
<<case "boots">>
You guide them all the way down until their face is nearly on the floor, their tongue obediently polishing your steep heels
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
as you turn their anal plug to a throbbing stimulating buzz to reinforce the obedient behaviour.<br>
<br>
You allow the client several minutes to recover as they serve you with lips and tongue, but you instinctually know that they need a bit more to properly complete the scene and really cement their training.<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_vip_goth_maid_fem_8" "Unlock your chastity and make love to <<him>>." 300 "<<set $scene.action_3='cock_soft'>>">>]<br>
[<<moveTo "event_vip_goth_maid_fem_8" "Unlock your chastity and fuck <<him>> hard." 300 "<<set $scene.action_3='cock_hard'>>">>]<br>
<<else>>
[@@.link_locked;You cannot unlock your chastity belt to fuck him.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_vip_goth_maid_fem_8" "Make love to <<him>>." 300 "<<set $scene.action_3='cock_soft'>>">>]<br>
[<<moveTo "event_vip_goth_maid_fem_8" "Fuck <<him>> hard." 300 "<<set $scene.action_3='cock_hard'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_vip_goth_maid_fem_8" "Show <<him>> a loving strap." 300 "<<set $scene.action_3='strap_soft'>>">>]<br>
[<<moveTo "event_vip_goth_maid_fem_8" "Strap it on, and shove it in." 300 "<<set $scene.action_3='strap_hard'>>">>]<br>
[<<moveTo "event_vip_goth_maid_fem_8" "<<He>> has not earned being fucked." 300 "<<set $scene.action_3='abort'>>">>]
</div>/*#
#desc: goth maid vip: fuck him
#status: FINISHED 0.8.7.0
#ignore_spell: p
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage2 = false>>
<<switch $scene.action_3>>
<<case "cock_soft">>
<<set $scene.removeCage2 = setup.checkItemTypeWorn("cage")>>
<<playerOrgasm>>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<<case "cock_hard">>
<<set $scene.removeCage2 = setup.checkItemTypeWorn("cage")>>
<<playerOrgasm>>
<<applyExperience 'dominance' 15 'very' $SEEN_STRANGER>>
<<case "strap_soft">>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<<case "strap_hard">>
<<applyExperience 'dominance' 15 'very' $SEEN_STRANGER>>
<</switch>>
<<if $scene.removeCage2>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage2>>
You theatrically remove your <<=setup.getItemName($scene.cage)>> as the client looks on.
<<if $scene.isSissyomatic>>
They seem particularly enamoured by the high-tech security of the 9001-series device, gasping in awe as it smoothly retracts to reveal your
<<elseif "chastity_cage_flat" == $scene.cage>>
They seem both entranced, and very slightly disappointed as your flat-front chastity cage fails to have an internal insert as their own, though that disappointment is gone a moment later as they stare with lust at your revealed
<<elseif "chastity_cage_invert" == $scene.cage>>
They seem particularly enamoured by the fact that your cage is of the same design as their own, gasping in awe as the internal plug is removed to free your
<<else>>
They lick their lips in anticipation as you put the chastity device to one side and reveal your
<</if>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<getWordMyPenis>> and <<getWordVagina>>.
<<elseif $player.body_ref.penis>>
<<getWordMyPenis>>.
<<else>>
<<getWordVagina>>.
<</if>>
<br><br>
<</if>>
<<switch $scene.action_3>>
<<case "cock_soft" "strap_soft">>
<<if $scene.action_3 == "strap_soft">>
You glance at the strap-on laid out on the bed and nod, waiting as the client hurriedly crawls over and then returns to buckle the leather harness around your hips. They stare up past the large dildo at you and shiver as you take the lead once again.
<<set _size = 4>>
<<else>>
<<set _size = $player.body.penissize[0]>>
<</if>>
You gently take hold of the client's collar and lead them over to the bed, gently guiding them to bend over as you slowly work the still buzzing plug out of their ass.<br>
<br>
Lining up carefully you slowly plunge into their rear,
<<switch _size>>
<<case 0 1>>
pulling them tight as your hips press against their bottom as their rear hole all but swallows your small member.<br>
<br>
What you may lack in size, you make up for with enthusiasm, grinding against them as your hands tenderly roam their body, making love as reward and not stopping until they've all but melted into the mattress.
<<case 2 3>>
angling until you're prodding at their slut button, their gasps and moans of pleasure spurring you onward as you caress their goosebump-studded flesh for the tender, but intense fucking they deserve.
<<case 4 5>>
feeling them stretch around your large <<if $scene.action_3 == "strap_soft">>artificial cock<<else>><<getWordMyPenis>><</if>> as you rock your hips slowly, targeting their p-spot and not stopping until they're little more than a moaning, orgasm-blasted mess draped over the bed.
<<case 6>>
moving slowly to let them adjust to the feeling of your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock streching them in every direction.<br>
<br>
"@@.pc;Good girl.@@" You whisper as <<if $player.body_ref.knot>>your knot pops into place<<else>>you bottom out<</if>> inside of them. You begin to thrust, each movement sending shuddering waves through their body as you give them pleasures beyond any they have felt before. You pin them down and drive on until they're little more than a whimpering, orgasm-blasted puddle on the bed.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<case "cock_hard" "strap_hard">>
You reach down to take a firm grip on the client's collar, dragging them a couple steps across the room before throwing them on the bed.
<<if $scene.action_3 == "strap_hard">>
You freeze them with a look as you buckle the strap-on to your hips, and then it's time.
<<set _size = 4>>
<<else>>
<<set _size = $player.body.penissize[0]>>
<</if>>
You take a firm grip of their still buzzing plug and pull it free, not giving their gaped ass even a moment to close before replacing the vibrating toy with your
<<if $scene.action_3 == "strap_hard">>
artificial cock.
<<else>>
flesh and blood <<getWordMyPenis>>.
<</if>>
<<switch _size>>
<<case 0 1>>
What you may lack in size you make up for with intensity, slamming your hips against them as you pin them to the bed, fucking with quick, short strokes like a jackhammer
<<case 2 3>>
You may not be the biggest, but you make up for it with skill and enthusiasm, pounding the client's slut-button with every hard thrust
<<case 4 5>>
You slam your large <<if $scene.action_3 == "strap_soft">>artificial cock<<else>><<getWordMyPenis>><</if>> all the way to the hilt, then pull back for a second thrust, pounding the client into the mattress
<<case 6>>
It is a tight squeeze to fit your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock into even their already stretched hole... but you show no mercy, working in hard, quick thrusts until <<if $player.body_ref.knot>>your knot pops into place<<elseif $player.body_ref.balls>>you're balls deep<<else>>you're flesh to flesh<</if>> and they're groaning with fullness<br>
<br>
"@@.pc;Take it, slut.@@" You growl as you begin to thrust, each movement shaking their body and the bed beneath
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
as you show the client what it REALLY means to be a slutty maid.<br>
<br>
The client pants and moans, but you don't let up until <<if $scene.action_3 == "cock_hard">>you've cum<<else>>you're too tired to continue<</if>>, leaving them a spent, orgasm-blasted mess draped over the bed.
<<case "abort">>
As the client looks breathlessly up at you, you shake your head.<br>
<br>
"@@.pc;That is enough for today, maid.@@"<br>
<br>
Disappointment is painted on their face as they rise to their feet, barely remembering to curtsy before they dig through their old clothes for their wallet.
<<default>>
ERROR: unexpected scene.action_3 <<=$scene.action_3>>
<</switch>>
<br><br>
They leave a pile of credits on the table and walk out of the room — still plugged, caged and collared in their slutty goth maid attire.<br>
<br>
[<<moveTo "event_vip_goth_maid_fem_9" "Collect your earnings and head downstairs." 300>>]
</div>/*#
#desc: goth maid vip: finished
#status: FINISHED 0.8.7.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage || $scene.removeCage2>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<switch $scene.action_1>>
<<case "gentle">>
<<set $scene.payMulti = .75>>
<<case "neutral">>
<<set $scene.payMulti = .5>>
<<case "punish">>
<<set $scene.payMulti = 1>>
<<case "cruel">>
<<set $scene.payMulti = 1.25>>
<</switch>>
<<switch $scene.action_2>>
<<case "cock">>
<<set $scene.payMulti *= 1 + ($player.body.penissize[0]-2) * .1>>
<<if $player.body_ref.knot>>
<<set $scene.payMulti *= 1.1>>
<</if>>
<<if $player.body_ref.horsecock>>
<<set $scene.payMulti *= 1.1>>
<</if>>
<<case "cunt">>
<<set $scene.payMulti *= 1.1>>
<<case "chastity">>
<<if $scene.isSissyomatic>>
<<set $scene.payMulti *= 1.25>>
<<elseif "chastity_cage_flat" == $scene.cage>>
<<set $scene.payMulti *= 1.1>>
<<elseif "chastity_cage_invert" == $scene.cage>>
<<set $scene.payMulti *= 1.25>>
<<else>>
<<set $scene.payMulti *= 1>>
<</if>>
<<case "boots">>
<<set $scene.payMulti *= 1.25>>
<</switch>>
<<switch $scene.action_3>>
<<case "cock_soft">>
<<set $scene.payMulti *= 1 + $player.body.penissize[0] * .1>>
<<if $player.body_ref.knot>>
<<set $scene.payMulti *= 1.1>>
<</if>>
<<if $player.body_ref.horsecock>>
<<set $scene.payMulti *= 1.1>>
<</if>>
<<case "cock_hard">>
<<set $scene.payMulti *= 1 + $player.body.penissize[0] * .25>>
<<if $player.body_ref.knot>>
<<set $scene.payMulti *= 1.25>>
<</if>>
<<if $player.body_ref.horsecock>>
<<set $scene.payMulti *= 1.25>>
<</if>>
<<case "strap_soft">>
<<set $scene.payMulti *= 1.3>>
<<case "strap_hard">>
<<set $scene.payMulti *= 1.75>>
<</switch>>
<<set $scene.pay = Math.floor($scene.client.base_pay*$scene.payMulti)>>
<<addCredits $scene.pay>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.goth_maid = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You collect, minus the house's cut, a sum of <<=$scene.pay>> credits and toss the client's left-behind clothing in a bag, discovering as you do that the client also left behind the keys to their collar and cage. As you are cleaning up the makeup you notice that it was a single-use kit. You happen to flip it over and discover that it was a single-use PERMANENT makeup kit.<br>
<br>
<<printThought "Locked, permanently made up... and wearing that outfit in public? Quite the interesting client...">><br>
<br>
You drop things off with <<=setup.getNpcName('npc_barkeeper', 'first')>> and she smiles in amusement. "@@.npc_barkeeper;I saw them walk past — still in full attire, you must have done a pretty good job. <<if $scene.payMulti >= 3>>A VERY good job, based on this tip<<elseif $scene.payMulti >= 2>>Quite a decent job, indeed, based on this tip,<<elseif $scene.payMulti >= 1>>Well, a functional job, at least, judging on this tip<<else>>Well, maybe not that good of a job, judging by this tip<</if>>@@" She adds as you hand over her cut.<br>
<br>
You explain that the client left their keys behind and <<=setup.getNpcName('npc_barkeeper', 'first')>> chuckles.<br>
<br>
"@@.npc_barkeeper;Yeah, that's typical. They come in from time to time craving harsh treatment, but the look on their face when they leave still dressed... well, every time I wonder if THIS will be the time that they finally accept reality and... though, either way, I'm sure <<=setup.getNpcName("npc_prostitute","first")>> will enjoy making <<if $options.fem>>them<<else>>him... I should I say her?<</if>> "earn" their freedom.@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Nod and return to the bar." 60>>]
</div>/*#
#desc: Horse Mistress vip - change + loaded
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.ownedCatsuit = setup.checkItemOwned("catsuit_latex_black")>>
<<set $scene.ownedBoots = setup.checkItemOwned("pony_boots")>>
<<addItem "catsuit_latex_black">>
<<wearItem "catsuit_latex_black" true>>
<<addItemSet 'pony_girl'>>
<<wearItemSet 'pony_girl'>>
<<addItem 'pony_plug'>>
<<wearItem 'pony_plug' true>>
<<addItem "armbinder_black">>
<<wearItem "armbinder_black" true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" "horse_mistress">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barkeeper","first")>> directs you to wait in a storeroom at the back of the bar, several minutes passing before there is a knock on the door, followed by a woman walking into the room who makes your jaw drop.<br>
<br>
Tall, and with a similar bearing to <<=setup.getNpcName("npc_manager","formal")>>, the woman is dressed in a perfectly fitted, utterly gorgeous riding outfit... that appears to be entirely made of latex.<br>
<br>
Crop in one hand, she looks you up and down, a brief inspection that reminds you of your every morning at work.<br>
<br>
"@@.generic_female2;Yes... you will make an excellent pony,@@" she states in conclusion, her voice thickly accented in a way that only makes her sound more dominant.<br>
<br>
You open your mouth to speak, only for her to shove a bit gag between your teeth. "@@.generic_female2;Pony does not speak. Now strip! There no time to waste, and you require proper equipment.@@"<br>
<br>
The woman's every act and demeanour is pounding on your submissive training and, just as you used to do every morning at work, you soon strip naked, dressed in latex, and then leather straps buckled onto your body, and steep pony hooves slid over your feet until you are transformed into the familiar garb of an obedient pony — complete with a long, luxurious tail plug swaying from your bum.<br>
<br>
"@@.generic_female2;Much better.@@" The woman states curtly before taking hold of your bridle, "@@.generic_female2;now we are ready to depart. I'll see if your training is as good as you look.@@"<br>
<br>
[<<moveTo "event_vip_horse_mistress_2" "Follow." 3600>>]
</div>/*#
#desc: Horse Mistress vip - travel, teased
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Inside a Horse Trailer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/horse_trailer.png" "ponygirl" "ponyboy">>
<div id="invframe" class="scrolltext">
The woman leads you out the back door of the storage room where a horse trailer is waiting. The door opens to reveal three stalls, two already occupied by a pony girl and a pony boy attired identical to yourself, and the woman leads you into the third, centre stall before shutting you in.<br>
<br>
A minute later and the stall rumbles as the vehicle sets into motion. The padded walls of the stall combined with your bondage keeps you vertical, but leave you relatively helpless.<br>
<br>
"@@.generic_female1;First time?@@" You hear a feminine voice enquire, a deeper gag-muffled grunt the response from the other side. "@@.generic_female1;Well, that answers that! The trick is to kind of hold the bit forward with your tongue while she buckles it, then suck it in deep before she comes back around. That way you have enough slack to take it out during the trip, makes for a more pleasant ride, y'know? It's not that I don't love being a pony but... well, we're gonna be working pretty hard in not too long, and I'd rather do that without already drooling all over myself and having a cramped jaw!@@"<br>
<br>
Your pony boy companion grunts louder, sounding a bit frantic to the point the woman tries to calm him down.<br>
<br>
"@@.generic_female1;It's okay — I'm making it sound a bit worse than it is, trust me, once you're out and running the course you won't be thinking about any of these things. I tell ya, those moments when I can just fully embrace being a pony? Second best part of these jobs... after the reward for winning, that is.@@"<br>
<br>
The woman laughs. "@@.generic_female1;Look at me, being Miss chatterbox and sabotaging myself! But hey, victory tastes all the sweeter if it's won over proper challengers. The three of us will be competing head to head and the winner, well... I won't spoil it, but it's quite the prize! Anyway, I won't force you two to listen to me go on the whole trip — I recommend you just sit back, relax, and rest for the trials ahead!@@"<br>
<br>
The woman falls silent and, after a bit of shuffling as he seems to try to find a more comfortable position to stand. You stop hearing anything from the man either as the trailer zooms along towards its destination.<br>
<br>
[<<moveTo "event_vip_horse_mistress_3" "Wait." 3600>>]
</div>/*#
#desc: Horse Mistress vip - training intro
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -20>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "ponygirl" "ponyboy" "horse_mistress">>
<div id="invframe" class="scrolltext">
You half doze off standing and manage to get in a bit of rest before the horse trailer rumbles to a stop. A few moments later and the "@@.generic_female2;<<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>>,@@" as you have mentally dubbed her, flings open the door and leads the three of you out and into a large stable.<br>
<br>
"@@.generic_female2;We will train now, follow.@@"<br>
<br>
Reins clipped to your bridles gives you little choice as the woman leads the three of you over to a large pole in the centre of a circular room, hitching you each to cross-pieces spaced around.<br>
<br>
"@@.generic_female2;We will start with practicing gait. The further out you move, the faster you will need travel, whoever goes most distance is winner... but I also deduct for poor gait — knees high, step lively, chin proud. You understand?@@"<br>
<br>
You glance around at your competition spaced around the circle — the pony girl has already moved to take an outside track, obviously in it to win it, while the pony boy is hedging in the middle.<br>
<br>
<<printThought "Hmm, stepping properly is going to be about agility, and the further out I go going on the outside will test my stamina more, and whichever of us is circling fastest is going to be using more strength to set the pace...">><br>
<br>
The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> steps back, grabbing a long whip from the wall — it would seem whoever is trailing will be getting some additional encouragement...<br>
<br>
[<<moveTo "event_vip_horse_mistress_4" "Start on the outside track." 600 "<<set $scene.route='outside'>>">>] <<hint $options "This will be the hardest, and heavily test your stamina.">> <br>
[<<moveTo "event_vip_horse_mistress_4" "Start on the middle track." 600 "<<set $scene.route='middle'>>">>] <<hint $options "This will test you all-around.">><br>
[<<moveTo "event_vip_horse_mistress_4" "Start on the inside track." 600 "<<set $scene.route='inside'>>">>] <<hint $options "This will test your strength the most.">>
</div>/*#
#desc: Horse Mistress vip - training round 1
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.score = 0>>
<<switch $scene.route>>
<<case 'outside'>>
<<applyExperience 'stamina' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'heels' 13 'normal' $SEEN_STRANGER>>
<<applyFatigue 70>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 10>>
<<set $scene.score = 10>>
<<else>>
<<set $scene.score = 7>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
<<if setup.getTotalValue("strength") > 10>>
<<set $scene.score = 7>>
<<else>>
<<set $scene.score = 5>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
<<set $scene.score = 5>>
<<else>>
<<if setup.getTotalValue("strength") > 10>>
<<set $scene.score = 0>>
<<else>>
<<set $scene.score = 3>>
<</if>>
<</if>>
<<case 'middle'>>
<<applyExperience 'strength' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'stamina' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'heels' 13 'normal' $SEEN_STRANGER>>
<<applyFatigue 50>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 10>>
<<set $scene.score = 7>>
<<else>>
<<set $scene.score = 5>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
<<if setup.getTotalValue("strength") > 10>>
<<set $scene.score = 5>>
<<else>>
<<set $scene.score = 3>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
<<set $scene.score = 3>>
<<else>>
<<if setup.getTotalValue("strength") > 10>>
<<set $scene.score = 0>>
<<else>>
<<set $scene.score = 1>>
<</if>>
<</if>>
<<case 'inside'>>
<<applyExperience 'strength' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'stamina' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'heels' 13 'normal' $SEEN_STRANGER>>
<<applyFatigue 30>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 10>>
<<set $scene.score = 6>>
<<else>>
<<set $scene.score = 3>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
<<if setup.getTotalValue("strength") > 10>>
<<set $scene.score = 3>>
<<else>>
<<set $scene.score = 0>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
<<set $scene.score = 0>>
<<else>>
<<if setup.getTotalValue("strength") > 10>>
<<set $scene.score = -3>>
<<else>>
<<set $scene.score = 0>>
<</if>>
<</if>>
<</switch>>
<<if setup.getTotalValue("dexterity") < 10>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "ponygirl" "ponyboy" "horse_mistress">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dexterity") + setup.getTotalValue("heels") > 30>>
Your agility and skill with heels makes the pony-boots all but trivial as you move into position on the circular track.
<<elseif setup.getTotalValue("dexterity") + setup.getTotalValue("heels") > 20>>
Though a bit of a struggle, you manage to adjust to the pony-boots, their design such that they are more supportive than "normal" heels would be at such lofty height.
<<else>>
You haven't even started the race, and already you're wobbling in the steep pony boots. Lacking a heel they are like no other shoes, and you're already wishing you'd spent more time honing your agility...
<</if>>
<<switch $scene.route>>
<<case 'outside'>>
You steer to the outside, catching a challenging glance from your female competitor
<<case 'middle'>>
You steer to the middle lane, your female competitor shaking her head in derision
<<case 'inside'>>
You steer to the inner lane, your female competitor seeming to all but dismiss you and your similarly conservative male counterpart. You take a deep breath
<<default>>
ERROR: unexpected scene.route <<=$scene.route>>
<</switch>>
just before the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> cracks her whip in the air to set you and your two fellow ponies off.<br>
<br>
<<switch $scene.route>>
<<case 'outside'>>
<<if setup.getTotalValue("dexterity") >= 20>>
You surge ahead, stepping high and long,
<<if setup.getTotalValue("strength") > 10>>
having no issue setting the pace as you combine with the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip to force your competitors to move inward as they still struggle to keep up.
<<else>>
only held back by your competition, as you fail to have the strength to force the pace.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
You keep even with your female competitor, the two of you
<<if setup.getTotalValue("strength") > 10>>
dragging your male counterpart along as you go step for step.
<<else>>
unable to force your male counterpart even faster... save for the occasion that the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip gives him a brief burst of encouragement.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
You are lagging behind your female competitor,
<<if setup.getTotalValue("strength") <= 10>>
not
<</if>>
strong enough to resist her pull as she pushes forward.
<<else>>
You are lagging behind, your hesitant pace made all the more perilous by the sharp crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip.
<</if>>
<<case 'middle'>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 10>>
You race forward, setting the pace, with the strength and all but dragging your female competition along as you take advantage of your shorter loop.
<<else>>
You race forward... but are held back by your female competitor and her longer loop, not having the strength to force her to move faster.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
Thanks to your shorter radius, you are able to keep pace with your female competitor,
<<if setup.getTotalValue("strength") > 10>>
the two of you somewhat draging your male counterpart along.
<<else>>
the two of you held back by your male counterpart... except when the crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip spurs him to put on a burst of speed.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
Even running a shorter loop, you find yourself lagging your female competition, though you are at least doing better than your male counterpart, who frequently tastes the crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip.
<<else>>
Even running a shorter loop, you find yourself lagging your female competition, you and your male counterpart seemingly whipped in alternation to force you to keep pace.
<</if>>
<<case 'inside'>>
<<if setup.getTotalValue("dexterity") >= 15>>
You race forward,
<<if setup.getTotalValue("strength") > 15>>
practically draging both of your competitors on as you race around the smaller radius.
<<elseif setup.getTotalValue("strength") > 10>>
forcing your female competitor, and her longer radius, to narrow her loop to keep pace.
<<else>>
but find yourself held back by your competitors as you lack the strength to force them faster.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
You match the pace set by your female competitor, focusing your attention on keeping your balance and stepping properly while taking advantage of your narrower radius.
<<else>>
Even on the innermost loop you barely keep pace, your lively female competitor pushing your on, any efforts to resist her pace stymied by the crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip.
<</if>>
<<default>>
ERROR: unexpected scene.route <<=$scene.route>>
<</switch>>
<br><br>
<<set _adjustedStam = setup.getTotalValue("stamina") - Math.floor(($player.timebased.fatigue/$player.timebased.fatiguemax)/10)>>
<<if _adjustedStam >= 15>>
Your stamina is nigh limitless, and you feel confident that you'll be able to keep pushing forward.
<<elseif _adjustedStam >= 10>>
Your stamina is holding up... though you should take care to pace yourself, as you do not know how long this race is to last.
<<elseif _adjustedStam >= 5>>
You're already getting tired, <<if $scene.route == 'inside'>>but you are already running the inside course, there is no way to make your route any easier<<else>>and you consider if you should take an easier line along the inside of the track<</if>>.
<<else>>
Exhaustion is already setting in, and you don't know how much longer this perverse "race" is going to last. <<if $scene.route == 'inside'>>Unfortunately you are already running the inside course, there is no way to make your route any easier<<else>>You consider if you should take an easier line along the inside of the track<</if>>.
<</if>>
<<if $scene.route == "outside">>
[<<moveTo "event_vip_horse_mistress_5" "Stay on the outside track." 300 "<<set $scene.route='outside'>><<set $scene.shift=false>>">>] <<hint $options "This will be the hardest, and heavily test your stamina.">> <br>
<<else>>
[<<moveTo "event_vip_horse_mistress_5" "Move to the outside track." 300 "<<set $scene.route='outside'>><<set $scene.shift=true>>">>] <<hint $options "This will be the hardest, and heavily test your stamina.">> <br>
<</if>>
<<if $scene.route == "middle">>
[<<moveTo "event_vip_horse_mistress_5" "Stay to the middle track." 300 "<<set $scene.route='middle'>><<set $scene.shift=false>>">>] <<hint $options "This will test you all-around.">><br>
<<else>>
[<<moveTo "event_vip_horse_mistress_5" "Move to the middle track." 300 "<<set $scene.route='middle'>><<set $scene.shift=true>>">>] <<hint $options "This will test you all-around.">><br>
<</if>>
<<if $scene.route == "inside">>
[<<moveTo "event_vip_horse_mistress_5" "Stay on the inside track." 300 "<<set $scene.route='inside'>><<set $scene.shift=false>>">>] <<hint $options "This will test your strength the most.">>
<<else>>
[<<moveTo "event_vip_horse_mistress_5" "Move to the inside track." 300 "<<set $scene.route='inside'>><<set $scene.shift=true>>">>] <<hint $options "This will test your strength the most.">>
<</if>>
</div>/*#
#desc: Horse Mistress vip - training round 2
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _adjustedStam = setup.getTotalValue("stamina") - Math.floor(($player.timebased.fatigue/$player.timebased.fatiguemax)/10)>>
<<if _adjustedStam > 15>>
<<set $scene.score += 2>>
<<elseif _adjustedStam > 10>>
<<set $scene.score += 0>>
<<elseif _adjustedStam > 5>>
<<set $scene.score -= 1>>
<<elseif _adjustedStam > 0>>
<<set $scene.score -= 2>>
<<else>>
<<set $scene.score -= 3>>
<</if>>
<<switch $scene.route>>
<<case 'outside'>>
<<applyExperience 'stamina' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'heels' 15 'very' $SEEN_STRANGER>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 10>>
<<else>>
<<set $scene.score += 7>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 7>>
<<else>>
<<set $scene.score += 5>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
<<set $scene.score += 5>>
<<else>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 0>>
<<else>>
<<set $scene.score += 3>>
<</if>>
<</if>>
<<applyFatigue 70>>
<<case 'middle'>>
<<applyExperience 'strength' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'stamina' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'heels' 15 'very' $SEEN_STRANGER>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 7>>
<<else>>
<<set $scene.score += 5>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 5>>
<<else>>
<<set $scene.score += 3>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
<<set $scene.score += 3>>
<<else>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 0>>
<<else>>
<<set $scene.score += 1>>
<</if>>
<</if>>
<<applyFatigue 50>>
<<case 'inside'>>
<<applyExperience 'strength' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'stamina' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'heels' 15 'very' $SEEN_STRANGER>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 6>>
<<else>>
<<set $scene.score += 3>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 3>>
<<else>>
<<set $scene.score += 0>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
<<set $scene.score += 0>>
<<else>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += -3>>
<<else>>
<<set $scene.score += 0>>
<</if>>
<</if>>
<<applyFatigue 30>>
<</switch>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "ponygirl" "ponyboy" "horse_mistress">>
<div id="invframe" class="scrolltext">
You
<<switch $scene.route>>
<<case 'outside'>>
<<if $scene.shift>>
move outward, speeding up to keep pace with the larger loop
<<else>>
remain on the outside, longest track
<</if>>
<<case 'middle'>>
<<if $scene.shift>>
move to the middle track
<<else>>
remain on the middle track
<</if>>
<<case 'inside'>>
<<if $scene.shift>>
move inward to the shortest inner loop possible
<<else>>
remain on the short, inner portion of the track
<</if>>
<<default>>
ERROR: unexpected scene.route <<=$scene.route>>
<</switch>>
and press onward.<br>
<br>
The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip cracks, forcing all three of you to move faster as she calls out. "@@.generic_female2;Run, my ponies! This is not a spa, but a competition! Step high and long and show me your resolve!@@"<br>
<br>
<<if setup.getTotalValue("dexterity") + setup.getTotalValue("heels") > 35>>
You lengthen your stride, your hoofed boots causing your legs to eat up even more distance with each graceful step.
<<elseif setup.getTotalValue("dexterity") + setup.getTotalValue("heels") > 25>>
You try to speed up, struggling slightly to keep your balance atop the challenging hoof boots.
<<else>>
You try to keep up, but find yourself frequently stumbling, grateful for the support of the harness that keeps you vertical... even as you curse it for making you have no choice but to continue forward.
<</if>>
<br><br>
<<switch $scene.route>>
<<case 'outside'>>
<<if setup.getTotalValue("dexterity") >= 20>>
You push forward, your lead growing
<<if setup.getTotalValue("strength") > 13>>
as you lean into your harness and force your competition to struggle to keep up.
<<else>>
as your companions move inward to keep pace.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
You think you might be edging past your female competitor,
<<if setup.getTotalValue("strength") > 13>>
and you force her to move slightly inward lest you drag both her, and your male competition, along.
<<else>>
though the constant drag of your male counterpart makes it hard to press the issue.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
Your female competitor lengthens her lead,
<<if setup.getTotalValue("strength") > 13>>
though you are at least strong enough to keep her from dragging you forward.
<<else>>
starting to drag both you, and your male competitor, along.
<</if>>
<<else>>
You are lagging further behind, your hesitant pace made all the more perilous by the sharp crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip.
<</if>>
<<case 'middle'>>
<<if setup.getTotalValue("dexterity") >= 20>>
You race ahead, hoping that your forceful advance will make up for your slightly shorter route, compared to
<<if setup.getTotalValue("strength") > 13>>
the female counterpart you are somewhat dragging onward.
<<else>>
your female counterpart.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
Thanks to your shorter radius, you are able to keep pace with your female competitor,
<<if setup.getTotalValue("strength") > 13>>
the two of you somewhat draging your male counterpart along.
<<else>>
the two of you held back by your male counterpart... except when the crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip spurs him to put on a burst of speed.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
Even running a shorter loop you find yourself falling behind female competition, though you are at least doing better than your male counterpart, who frequently tastes the crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip.
<<else>>
With each step the lead your female counterpart is establishing grows, as you struggle to even keep pace on the middle loop.
<</if>>
<<case 'inside'>>
<<if setup.getTotalValue("dexterity") >= 15>>
You take advantage of the short inner track continue to crank up laps,
<<if setup.getTotalValue("strength") > 15>>
practically draging both of your competitors on as you make short work of the short loops.
<<elseif setup.getTotalValue("strength") > 13>>
forcing your female competitor, and her longer radius, to narrow her loop to keep pace.
<<else>>
well, other than being held back by your competitors as you lack the strength to force them faster.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 10>>
The narrow inner circle allows you to keep pace with your female competitor... though she continues to rack up the distance.
<<else>>
Even on the innermost loop you are barely keeping pace, your lively female competitor pushing your on, any efforts to hold back met with the harsh crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip.
<</if>>
<<default>>
ERROR: unexpected scene.route <<=$scene.route>>
<</switch>>
<br><br>
<<set _adjustedStam = setup.getTotalValue("stamina") - Math.floor(($player.timebased.fatigue/$player.timebased.fatiguemax)/10)>>
<<if _adjustedStam >= 15>>
Despite the distance, your stamina remains strong... though your fellow competitors are both beginning to show signs of exhaustion, panting through their bit gags.
<<elseif _adjustedStam >= 10>>
You're beginning to tire, but still doing at least as well as your competitors, all three of you breathing hard through your bit gags.
<<elseif _adjustedStam >= 5>>
You're getting increasingly tired, <<if $scene.route == 'inside'>>but you are already running the inside course, there is no way to make your route any easier<<else>>and you consider if you should take an easier line along the inside of the track<</if>>.
<<else>>
You are almost dead on your feet, wondering if you'll even be able to make it to the end of this perverse race. <<if $scene.route == 'inside'>>Unfortunately you are already running the inside course, there is no way to make your route any easier<<else>>You consider if you should take an easier line along the inside of the track<</if>>.
<</if>>
<br><br>
"@@.generic_female2;Faster, slaves! Sweat for your Mistress!@@" The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> calls out, her whip cracking faster as you head into what, you hope, is the last leg of competition...<br>
<br>
<<if $scene.route == "outside">>
[<<moveTo "event_vip_horse_mistress_6" "Stay on the outside track for the final push." 300 "<<set $scene.route='outside'>><<set $scene.shift=false>>">>] <<hint $options "This will be the hardest, and heavily test your stamina.">> <br>
<<else>>
[<<moveTo "event_vip_horse_mistress_6" "Move to the outside track for the final push." 300 "<<set $scene.route='outside'>><<set $scene.shift=true>>">>] <<hint $options "This will be the hardest, and heavily test your stamina.">> <br>
<</if>>
<<if $scene.route == "middle">>
[<<moveTo "event_vip_horse_mistress_6" "Stay to the middle track for the final push." 300 "<<set $scene.route='middle'>><<set $scene.shift=false>>">>] <<hint $options "This will test you all-around.">><br>
<<else>>
[<<moveTo "event_vip_horse_mistress_6" "Move to the middle track for the final push." 300 "<<set $scene.route='middle'>><<set $scene.shift=true>>">>] <<hint $options "This will test you all-around.">><br>
<</if>>
<<if $scene.route == "inside">>
[<<moveTo "event_vip_horse_mistress_6" "Stay on the inside track for the final push." 300 "<<set $scene.route='inside'>><<set $scene.shift=false>>">>] <<hint $options "This will test your strength the most.">>
<<else>>
[<<moveTo "event_vip_horse_mistress_6" "Move to the inside track for the final push." 300 "<<set $scene.route='inside'>><<set $scene.shift=true>>">>] <<hint $options "This will test your strength the most.">>
<</if>>
</div>/*#
#desc: Horse Mistress vip - final round/victor announcement
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _adjustedStam = setup.getTotalValue("stamina") - Math.floor(($player.timebased.fatigue/$player.timebased.fatiguemax)/10)>>
<<if _adjustedStam > 15>>
<<set $scene.score += 2>>
<<elseif _adjustedStam > 10>>
<<set $scene.score += 0>>
<<elseif _adjustedStam > 5>>
<<set $scene.score -= 1>>
<<elseif _adjustedStam > 0>>
<<set $scene.score -= 2>>
<<else>>
<<set $scene.score -= 3>>
<</if>>
<<switch $scene.route>>
<<case 'outside'>>
<<applyExperience 'stamina' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'heels' 18 'very' $SEEN_STRANGER>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 10>>
<<else>>
<<set $scene.score += 7>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 18>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 7>>
<<else>>
<<set $scene.score += 5>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 13>>
<<set $scene.score += 5>>
<<else>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 0>>
<<else>>
<<set $scene.score += 3>>
<</if>>
<</if>>
<<applyFatigue 70>>
<<case 'middle'>>
<<applyExperience 'strength' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'stamina' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'heels' 18 'very' $SEEN_STRANGER>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 7>>
<<else>>
<<set $scene.score += 5>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 18>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 5>>
<<else>>
<<set $scene.score += 3>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 13>>
<<set $scene.score += 3>>
<<else>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 0>>
<<else>>
<<set $scene.score += 1>>
<</if>>
<</if>>
<<applyFatigue 50>>
<<case 'inside'>>
<<applyExperience 'strength' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'stamina' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'heels' 18 'very' $SEEN_STRANGER>>
<<if setup.getTotalValue("dexterity") >= 20>>
<<if setup.getTotalValue("strength") > 15>>
<<set $scene.score += 7>>
<<else>>
<<set $scene.score += 3>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 18>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += 3>>
<<else>>
<<set $scene.score += 0>>
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 13>>
<<set $scene.score += 0>>
<<else>>
<<if setup.getTotalValue("strength") > 13>>
<<set $scene.score += -3>>
<<else>>
<<set $scene.score += 0>>
<</if>>
<</if>>
<<applyFatigue 30>>
<</switch>>
<<if $scene.score > 30>>
<<set $scene.place = 0>>
<<elseif $scene.score > 22>>
<<set $scene.place = 1>>
<<elseif $scene.score > 15>>
<<set $scene.place = 2>>
<<elseif $scene.score > 7>>
<<set $scene.place = 3>>
<<elseif $scene.score < 0>>
<<set $scene.place = 5>>
<<else>>
<<set $scene.place = 4>>
<</if>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "ponygirl" "ponyboy" "horse_mistress">>
<div id="invframe" class="scrolltext">
You
<<switch $scene.route>>
<<case 'outside'>>
<<if $scene.shift>>
move outward
<<else>>
remain on the outside, longest track
<</if>>
<<case 'middle'>>
<<if $scene.shift>>
move to the middle track
<<else>>
remain on the middle track
<</if>>
<<case 'inside'>>
<<if $scene.shift>>
move inward to the shortest inner loop possible
<<else>>
remain on the short, inner portion of the track
<</if>>
<<default>>
ERROR: unexpected scene.route <<=$scene.route>>
<</switch>>
for the final sprint.<br>
<br>
<<set _adjustedStam = setup.getTotalValue("stamina") - Math.floor(($player.timebased.fatigue/$player.timebased.fatiguemax)/10)>>
Your female competitor finds a second wind...
<<if _adjustedStam >= 15>>
but your stamina has never flagged and have no issue digging deeper.
<<elseif _adjustedStam >= 10>>
and you somehow summon up one of your own to keep in the race.
<<elseif _adjustedStam >= 5>>
as you focus just on keeping moving, gasping with exertion at every step.
<<else>>
as your heart feels ready to explode, lungs burning with every panting breath as you try to force yourself on.
<</if>>
<br><br>
<<switch $scene.route>>
<<case 'outside'>>
<<if setup.getTotalValue("dexterity") >= 20>>
Despite fatigue, your paces remain long and graceful as you maintain your pace on the outermost loop,
<<if setup.getTotalValue("strength") > 13>>
leaning into your harness and force your competition to struggle to keep up.
<<else>>
your competition forced further inward lest their slow pace be met with the sting of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 18>>
Your female competitor moves ever so slightly inward, your determined place on the outer-most edge giving you a slight edge,
<<if setup.getTotalValue("strength") > 13>>
as you lean into your harness and push on.
<<else>>
as the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip keeps your competition from dragging you back.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 13>>
Despite your position on the outer track you know that each time you stumble your female competitor is effectively lengthening her lead,
<<if setup.getTotalValue("strength") > 13>>
though you are at least strong enough to keep her from dragging you forward.
<<else>>
and she starts to drag both you, and your male competitor, along.
<</if>>
<<else>>
You are lagging further behind, your stumbling pace made all the more perilous by the sharp crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip.
<</if>>
<<case 'middle'>>
<<if setup.getTotalValue("dexterity") >= 20>>
You race faster, though wonder if your long, graceful strides would be of better use on the outer track, your shorter distance seeing you
<<if setup.getTotalValue("strength") > 13>>
drag both of your competitors onward.
<<else>>
keep pace with your female competitor and avoid tasting the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 18>>
Thanks to your shorter radius, you are able to keep pace with your female competitor's final sprint,
<<if setup.getTotalValue("strength") > 13>>
the two of you somewhat draging your male counterpart along.
<<else>>
the two of you held back by your male counterpart... except when the crack of the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> whip spurs him to put on a burst of speed.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 13>>
With her final sprint your female competitor pulls away as you stumble gracelessly.
<<else>>
The middle loop may be shorter, but it does nothing to counter your graceless stumbling forward as you fail to keep up with your female competitor's final sprint.
<</if>>
<<case 'inside'>>
<<if setup.getTotalValue("dexterity") >= 18>>
You race around the inner loop,
<<if setup.getTotalValue("strength") > 15>>
forcing both of your competitors to stumble as they try to keep up.
<<else>>
your only limit the dragging force of your competition.
<</if>>
<<elseif setup.getTotalValue("dexterity") >= 15>>
You barely maintain a modicum of grace as you run the inner-most loop, and your female competitor sprints gracefully on.
<<else>>
You stumble around the shortest loop possible as your female competitor sprints for the finish.
<</if>>
<<default>>
ERROR: unexpected scene.route <<=$scene.route>>
<</switch>>
<br><br>
"@@.generic_female2;Fin!@@" The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> calls out, you and the other two competitors coming to a stop,
<<if _adjustedStam >= 15>>
the other two gasping in exhaustion,
<<elseif _adjustedStam >= 10>>
all three of you drenched with sweat,
<<elseif _adjustedStam >= 5>>
your and your male counterpart all but dead on your feet,
<<else>>
so exhausted you can barely stand,
<</if>>
as you wait to hear the results of the race.<br>
<br>
[<<moveTo "event_vip_horse_mistress_7" "Listen for the results." 180>>]<br>
</div>/*#
#desc: Horse Mistress vip - winner announced
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.place>>
<<case 0>>
<<set $scene.pay = 2 * $scene.client.base_pay>>
<<case 1>>
<<set $scene.pay = Math.ceil(1.5 * $scene.client.base_pay)>>
<<case 2>>
<<set $scene.pay = $scene.client.base_pay>>
<<case 3>>
<<set $scene.pay = Math.ceil(.75 * $scene.client.base_pay)>>
<<case 4>>
<<set $scene.pay = Math.ceil(.5 * $scene.client.base_pay)>>
<<case 5>>
<<set $scene.pay = Math.ceil(.25 * $scene.client.base_pay)>>
<</switch>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "./images/characters/npc_horse.png" "horse_mistress">>
<div id="invframe" class="scrolltext">
<<switch $scene.place>>
<<case 0>>
"@@.generic_female2;Well, well well... <<=setup.getNpcName("npc_barkeeper","formal")>> spoke of your skills, but you have surpassed even her lofty description,@@" the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> states as she looks at you with pride.<br>
<br>
Even your female counterpart looks at you more with awe than anything else as she bows to acknowledge your victory.
<<case 1>>
"@@.generic_female2;A hard-fought battle... but it would seem that the lovely Pony <<=$player.first_name>> has edged it out.@@" The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> states as she nods to you.<br>
<br>
Your female counterpart huffs in disappointment, but clearly knows better than to object to the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress's")>> declaration.
<<case 2>>
"@@.generic_female2;A hard-fought battle... but it would seem the champion continues her reign.@@" The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> states as she nods to your female competitor.<br>
<br>
Your female counterpart straightens in pride as you sigh in disappointment at how close you came to victory.
<<case 3>>
"@@.generic_female2;A hard-fought battle... but it would seem the champion continues her reign.@@" The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> states as she nods to your female competitor.<br>
<br>
Your female counterpart straightens in pride as you sigh in disappointment at how close you came to victory.
<<case 4>>
"@@.generic_female2;It would seem that our champion faced hardly a test to her skills,@@" the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> states. "@@.generic_female2;From <<=ps(setup.getNpcName("npc_barkeeper","formal"))>> description I expected you to put up a better fight,@@" she continues as her gaze falls upon you, "@@.generic_female2;but you barely earned second place.@@"
<<case 5>>
"@@.generic_female2;Such a disappointment... <<=setup.getNpcName("npc_barkeeper","formal")>> spoke of you highly, but your defeat was one of the worst these stables have ever seen, as the multi-time champion notches her easiest victory yet!@@" The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> states in unnecessary summary of the obvious results of the race.<br>
<br>
If you weren't already exhausted you would sink in disappointment at the realisation that you came in dead last... by a lot.
<<default>>
ERROR: unexpected scene.place <<=$scene.place>>
<</switch>>
<br><br>
<<if $scene.place <= 1>>
<<if $fetish.pet_play && $fetish.bestiality_hard>>
The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> loops her whips around your neck and smiles. "@@.generic_female2;So... my champion mare... how will you be bred? By stallion...@@" She raises her left hand to shoulder height, "@@.generic_female2;or by pony-<<boy>>?@@" She adds, raising her right.<br>
<br>
[<<moveTo "event_vip_horse_mistress_8_horse_1" "Look towards her left — stallion." 600>>]<br>
[<<moveTo "event_vip_horse_mistress_8_petplay_1" "Pony-<<boy>>." 600>>]
<<elseif $fetish.pet_play>>
[<<moveTo "event_vip_horse_mistress_8_petplay_1" "Receive your prize..." 600>>]
<<else>>
ERROR: unexpected!
<</if>>
<<elseif $scene.place == 5>>
The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> leaves you harnessed in place as she takes your two fellow competitors away, finally returning to take you by the reins and lead you off...<br>
<br>
[<<moveTo "event_vip_horse_mistress_8_fail" "What is the punishment for failure?" 3600>>]
<<else>>
The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> leaves you harnessed in place as she takes the winner away before returning to take you by the reins and lead you off...<br>
<br>
[<<moveTo "event_vip_horse_mistress_8_machine_1" "What is the punishment for failure?" 600>>]
<</if>>
</div>/*#
#desc: Horse Mistress vip - bred - bestiality
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'terrible' $SEEN_STRANGER>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "./images/characters/npc_horse.png" "horse_mistress" "horse">>
<div id="invframe" class="scrolltext">
The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> leads you through the stables and to a decorated stall. The name plaque over the entrance declares the resident as Thunder.<br>
<br>
She leads you into the stall and you gasp, not quite struck by lightning, but certainly in awe of the magnificent beast before you.<br>
<br>
Even with the added height of your pony boots his shoulder is above your head, a great, muscle-bound King among horses. His long, perfectly shaped head swings to face you, intelligent eyes filling you with the urge to drop to your knees in submission as he claims dominion over you with a glance.<br>
<br>
"@@.generic_female2;It would seem my champion has a liking for you... he can smell your aura of victory, and it arouses him... and so, you will be granted the greatest prize there is — to be bred, champion to champion, to compound your strengths.@@"<br>
<br>
Your prior exertion is all but forgotten as your heart pounds and the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> restrains you to a breeding bench. Rising up onto your knees you are bent over and bound in place, "@@.generic_female2;Lest you panic and injure yourself,@@" she explains.<br>
<br>
You tremble in anticipation, panting and drooling past your gag as you try to relax in preparation...<br>
<br>
[<<moveTo "event_vip_horse_mistress_8_horse_2" "Time to breed..." 3600>>]
</div>/*#
#desc: Horse Mistress vip - bred - bestiality sex
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.pony_win_best = true>>
<<applyExperience 'bestiality' 10 'skip' $SEEN_STRANGER>>
<<applyExperience 'anal' 20 'terrible' $SEEN_STRANGER>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "./images/characters/npc_horse.png" "horse_mistress" "horse">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> looks on as Thunder takes you for his own — your long training having barely prepared you to handle his massive dimensions.<br>
<br>
Hooves the size of your head step onto platforms on either side of you as Thunder moves into position, some brief hand-applied lube all that passes for foreplay before he claims you as his mare.<br>
<br>
Your ass stretches to its limit, yet remaining tight around him as his flared tip thrusts what feels the length of your spine.<br>
<br>
You moan and drool and cum and cry out in ecstasy as your body falls under his control, his every movement sending waves through your body as you cling on for dear life, small and weak next to his muscle-bound magnificence.<br>
<br>
<<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
His climax deep in your bowels marks but a moments reprieve, his still hard cock pulled free and then guided into your other hole — as if your ass was but the appetiser for the main course that is breeding you PROPERLY.<br>
<br>
You lose count of orgasms, cum leaking down to provide extraneous lube as you drip with arousal, each titanic thrust making you squirt in orgasm as you are stimulated in ways no human could manage.<br>
<br>
<</if>>
You lose track of orgasms, eventually going all but limp in your bonds before Thunder has had his fill and finally trots away.<br>
<br>
[<<moveTo "event_vip_horse_mistress_9" "Continue." 600>>]
</div>/*#
#desc: Horse Mistress vip - bred - petplay
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImageGeneric("stallion") "horse_mistress">>
<div id="invframe" class="scrolltext">
The <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> leads you through the stables and to a decorated stall. The name plaque over the entrance declares the resident as Lightning.<br>
<br>
She leads you into the stall and you gasp, before you stands one of the most glorious pony-<<boy>>s you've ever seen. Well over a head taller than you, <<his>> muscles ripple beneath tight latex,<<if $options.fem>> and her breasts are held in a skin tight latex bra with<</if>> <<his>> harness only serving to accentuate <<his>> <<if $options.fem>>feminine<<else>>masculine<</if>> beauty as <<he>> turns towards you... your gaze instantly drawn to <<his>> massive, throbbing <<if $fetish.bestiality_soft>>horse-<</if>>cock.<br>
<br>
You tremble before this magnificent pony as <<he>> swings <<his>> head to send <<his>> long, glorious mane swishing through the air.<br>
<br>
"@@.generic_female2;It would seem my champion has a liking for you... <<he>> can smell your aura of victory, and it arouses <<him>>... and so, you will be granted the greatest prize there is — to be bred, champion to champion, to compound your strengths.@@"<br>
<br>
Your prior exertion is all but forgotten as your heart pounds and you turn towards the wall, bending forward to present yourself to your new <<master>>...<br>
<br>
You tremble in anticipation, panting and drooling past your gag as you try to relax in anticipation...<br>
<br>
[<<moveTo "event_vip_horse_mistress_8_petplay_2" "Time to breed." 3600>>]
</div>/*#
#desc: Horse Mistress vip - bred - petplay
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.pony_win_pet = true>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImageGeneric("stallion") "horse_mistress">>
<div id="invframe" class="scrolltext">
Lightning takes you hard and deep,
<<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
starting by gaping your ass, before switching off between your holes, driving you hard and strong into the wall of <<his>> stall, <<his>> hoofed-hands pressed against the wooden wall on either side of you as <<his>> strong hips lift you off the ground with nearly every thrust.
<<else>>
fucking you hard and deep, <<his>> massive <<getWordPenis>> nearly straining every bit of your trained hole.
<</if>>
<br><br>
The whole time the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> watches on with a prideful smile, watching your breeding with keen interest as you are fucked until you can barely stand, the combination of the hard mating and your earlier exertion leaving your legs like rubber by the time Lighting finally has <<his>> fill and steps away, <<his>> magnificent cock still hard, glimmering with <<his>> cum and your juices as you take a final look before staggering after <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>>.<br>
<br>
[<<moveTo "event_vip_horse_mistress_9" "Continue." 300>>]
</div>/*#
#desc: Horse Mistress vip - bred - machine
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bondage' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "horse_mistress">>
<div id="invframe" class="scrolltext">
After taking the "winner" off to you know not where, the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> leads you through the stables to a stall that contains, not a horse... but an ominous bondage bench and a large fucking machine mounted with a massive <<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>pair of dildos<<else>>dildo<</if>>.<br>
<br>
"@@.generic_female2;You have proven unworthy of being bred with one of my champions... but you show potential, so, while the winner is enjoying her reward, you shall enjoy some additional training...@@"<br>
<br>
Given your already bound, and tired, state the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> has no trouble getting you secured to the bench, her hands massaging you with thick lubricant as she lines up the <<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>dual massive dongs<<else>>massive dong<</if>>.<br>
<br>
You're still catching your breath from the race when the machine kicks on, the motor loud and aggressive as it starts fucking you like
<<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
dual jackhammers — one pulling out as the other thrusts forward so that you are stretched and filled at every moment.
<<else>>
a jackhammer. You are pounded hard and deep, your training put to the test as it feels like you are being fucked the full length of your spine.
<</if>>
<br><br>
Drooling and moaning you watch the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> depart, clearly uninterested in witnessing your full "training"... however long it is to last.<br>
<br>
[<<moveTo "event_vip_horse_mistress_8_machine_2" "Get fucked." 3600>>]
</div>/*#
#desc: Horse Mistress vip - bred - machine
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.pony_lose = true>>
<<playerOrgasm>>
<<applyExperience 'anal' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bondage' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "horse_mistress">>
<div id="invframe" class="scrolltext">
You lose track of time, and orgasms, by the time the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> returns. She finds you a dripping mess of sweat, drool<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>, and your own cum<</if>>.<br>
<br>
The <<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>dildos<<else>>dildo<</if>> finally retracts to leave you gaping as she whistles to herself and removes your restraints — clearly confident in her latex attire to protect her from your dripping mess.<br>
<br>
With a hand on your bridle, she leads you staggering out of the stables, your thighs aching with every step.<br>
<br>
[<<moveTo "event_vip_horse_mistress_9" "Continue." 300>>]
</div>/*#
#desc: Horse Mistress vip - wait to leave
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" "horse_mistress">>
<div id="invframe" class="scrolltext">
Her body language communicating annoyance, the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> leads you out of the stable and back to the horse trailer.<br>
<br>
"@@.generic_female2;Normally I might use this time for some additional training... but you are such an abject failure I hardly see the point. Stew in your loss while I attend to your betters. They have earned their reward before I take you all back to town.@@"<br>
<br>
She slams the door closed, leaving you alone in the stall, with nothing to do save try to shift your weight and keep your sore muscles from cramping as you wait for anyone to return...<br>
<br>
[<<moveTo "event_vip_horse_mistress_9" "Continue." 3600>>]
</div>/*#
#desc: Horse Mistress vip - taken home
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'catsuit_latex_black' true>>
<<if !$scene.ownedCatsuit>>
<<deleteItem 'catsuit_latex_black'>>
<</if>>
<<removeItemSet "pony_girl" true>>
<<if !$scene.ownedBoots>>
<<deleteItem "pony_boots">>
<</if>>
<<deleteItem "pony_harness">>
<<deleteItem "pony_gag">>
<<removeItem "pony_plug" true>>
<<deleteItem "pony_plug">>
<<removeItem "armbinder_black" true>>
<<deleteItem "armbinder_black">>
<<useClothSetPop 'tmp'>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.pony = true>>
<<addCredits $scene.pay>>
<<applyExperience 'whoring' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_night.png">>
<div id="invframe" class="scrolltext">
<<if $scene.place == 5>>
You half doze leaning against the side of your stall, losing track of time until you are roused by the return of your competition.<br>
<br>
The expressions on their faces are ones of exhausted fulfillment, particularly the female winner who still manages to walk with pride... even as she seems to be a touch bow-legged.<br>
<br>
The three of you secured in the trailer you remain gagged and unable to talk
<<else>>
You are in a daze as the <<=setup.getNpcName("generic_female2","custom", "Horse Mistress")>> helps you to your feet and leads you back to the trailer, placed in your stall alongside your two compatriots
<</if>>
for the drive back to the city where you are dropped off in back of The Usual Place — <<=setup.getNpcName("npc_barkeeper","first")>> there to help you change back into your clothes — but leaving you your catsuit as a prize, before handing off your pay of <<=$scene.pay>>.<br>
<br>
Your jaw is still a bit sore from your ordeal and you merely acknowledge things with a nod before heading out in front ofthe bar to get some fresh air.<br>
<br>
[<<moveTo "room_usual_place_outside" "What to do now..." 60>>]
</div>/*#
#desc: given anal size-queen futa client
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_barkeeper', 'first')>> that you'll take the job. She grins and pulls out her phone. "@@.npc_barkeeper;Great, go ahead and head upstairs and get hard and such, I'll send the client up shortly. Her name is <<=setup.getNpcName("generic_female1","custom", "Viviko")>>, by the way.@@"<br>
<br>
[<<moveTo "event_vip_hungry_ass_2" "Head up and get ready." 300>>]
</div>/*#
#desc: meet hungry ass vip
#status: RELEASED 0.9.4.0
#ignore_spell: pixar
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You wait a few minutes for your client to arrive, mentally getting into your dominant headspace... and feeling yourself stiffen<<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>inside your cage<<else>>within your belt<</if>><</if>> as you wait.<br>
<br>
A few minutes later and you hear a knock on the door, opening it to find your absolute bombshell of a client.<br>
<br>
You aren't sure what catches your attention first, her anime-ginormous breasts... or her pixar-class hips and ass, a body blending the proverbial best of east and west with light skin and a soft face. Her clothes are modest... well, as modest as is possible given her proportions, with the possible exception of some very high-heel pumps, her white top, skirt and stockings somewhat drawing the eye to her short, pale blue hair.<br>
<br>
"@@.generic_female1;<<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.flags.porn.pornname>>?@@" She asks softly.<br>
<br>
You consider what approach to take...<br>
<br>
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh')>>
[<<moveTo "event_vip_hungry_ass_3" "Order her to enter. (harsh dominance)" 300 "<<set $scene.harsh=true>>">>]
<</if>>
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
[<<moveTo "event_vip_hungry_ass_3" "Welcome her. (gentle dominance)" 300 "<<set $scene.harsh=false>>">>]
<</if>>
</div>/*#
#desc: introduce self to hungry ass vip
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.harsh>>
<<set $scene.harsh_counter = 0>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.harsh>>
Adopting a stern voice you command <<=setup.getNpcName("generic_female1","custom", "Viviko")>> to enter and she immediately stiffens.<br>
<br>
"@@.generic_female1;No... I was expecting something more like your on-screen persona... I'm not interested in some harsh, bossy domme.@@" She takes a step backwards. "@@.generic_female1;I will inform your manager that there has been a mistake, goodnight.@@"<br>
<br>
You're left standing in the doorway feeling quite dumb.<br>
<br>
<<printThought "Well... that approach didn't work.">><br>
<br>
After a minute of self-reflection you sigh and head back downstairs.<br>
<br>
[<<moveTo "room_usual_place_inside" "Look around the bar." 180>>]
<<else>>
You smile in greeting and welcome <<=setup.getNpcName("generic_female1","custom", "Viviko")>> into the room, closing the door gently behind her as you ask if she is here to submit to you?<br>
<br>
You turn back to find her already on her knees. "@@.generic_female1;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I am a great fan of your work, and the care you take on-screen. The opportunity of paying for a night with you myself... well, it was too good an opportunity to pass up. I am greatly looking forward to receiving... training from you...@@" as she speaks her yes slide down to stare at the bulge between your legs.<br>
<br>
<<printThought "Alright, seems she's looking for some gentle dominance...">>
<br>
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> continues to stare at your crotch.<br>
<br>
[<<moveTo "event_vip_hungry_ass_4" "Punish her disrespect." 120 "<<set $scene.harsh=true>>">>]<br>
[<<moveTo "event_vip_hungry_ass_4" "Ask what she's staring at?" 300 "<<set $scene.harsh=true>>">>]
<</if>>
</div>/*#
#desc: hungry ass vip: handle her staring at your crotch
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.harsh>>
<<set $scene.harsh_counter += 1>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'dominance' 15 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.harsh>>
You close the distance to <<=setup.getNpcName("generic_female1","custom", "Viviko")>> and, with a grip on her hair, force her to look down at the floor as you admonish her for staring at your cock.<br>
<br>
"@@.generic_female1;Sorry, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I have watched... many of your films, to be so close to your glory... I was distracted with thoughts of how it would feel inside of me...@@" Her words a slightly hesitant.<br>
<br>
<<printThought "Hmm... might have been a little too aggressive there...">><br>
<br>
You step back to your prior position, <<=ps(setup.getNpcName("generic_female1","custom", "Viviko"))>> gaze remaining fixed firmly on the floor.
<<else>>
You ask <<=setup.getNpcName("generic_female1","custom", "Viviko")>> what she's staring at and she immediately stares at the floor, her tone suddenly even more submissive. "@@.generic_female1;Sorry, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I have watched... many of your films, to be so close to your glory... I was distracted. It will not happen again, as I desperately hope to feel it within me by night's end...@@"
<</if>>
<br><br>
<<printThought "Okay, gentle dominance, but firm rules... and she's definitely some sort of size queen... though, with an ass like that, that's hardly a difficult sell...">><br>
<br>
[<<moveTo "event_vip_hungry_ass_5" "Command her to strip." 300 "<<set $scene.harsh=true>>">>]<br>
[<<moveTo "event_vip_hungry_ass_5" "Point out that she is overdressed for a sub." 300 "<<set $scene.harsh=false>>">>]
</div>/*#
#desc: hungry ass vip: have her strip
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.harsh>>
<<set $scene.harsh_counter += 1>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'dominance' 15 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.harsh>>
You order <<=setup.getNpcName("generic_female1","custom", "Viviko")>> to strip, she ever so slightly stiffens, but nods a moment later. "@@.generic_female1;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" She replies before rising to her feet and
<<else>>
You note that <<=setup.getNpcName("generic_female1","custom", "Viviko")>> is a bit... overdressed for a submissive.<br>
<br>
Your gentle, but firm, words cause her to shiver slightly, her voice full of passion as she replies "@@.generic_female1;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>would you like me to remove them?@@"<br>
<br>
You nod and she rises to her feet to begin
<</if>>
seductively shuffling out of her clothes, showing not a trace of modesty, but only submissive enticement.<br>
<br>
Her top is the first piece to go, the light garment tossed aside to reveal her huge, perfect breasts, perky despite their massive size, shiny barbell piercings adorning each large nipple. Her skirt drops to the floor to reveal the first surprise of the night, a massive cock, almost as large as your own, extending nearly to her knees, a tight sleeve wrapping nearly its full length used to hold the monstrous thing against her thigh rather than letting it spring forth as it appears straining to do.<br>
<br>
Wearing nothing but stockings, garters, and heels, <<=setup.getNpcName("generic_female1","custom", "Viviko")>> turns in place and bends over, her hands on the edge of the bed, her legs slightly separated to reveal and highlight the massive jeweled plug filling her ass.<br>
<br>
"@@.generic_female1;Do you approve, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@" <<=setup.getNpcName("generic_female1","custom", "Viviko")>> asks softly, "@@.generic_female1;I wanted to be ready for you to show that I am eager for your training.@@"<br>
<br>
Talking about you doing her ass clearly has <<=setup.getNpcName("generic_female1","custom", "Viviko")>> excited, as her <<getWordPenis false>> <<if $fetish.cum>>drips down her leg, staining her stockings<<else>>twitches against her leg<</if>>.<br>
<br>
[<<moveTo "event_vip_hungry_ass_6" "Scold her for stretching herself out." 300 "<<set $scene.harsh=true>>">>]<br>
[<<moveTo "event_vip_hungry_ass_6" "Praise her and ask to see what training she has been doing." 300 "<<set $scene.harsh=false>>">>]
</div>/*#
#desc: hungry ass vip: ask about her training
#status: RELEASED 0.9.4.0
#ignore_spell: intergluteal
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.harsh>>
<<set $scene.harsh_counter += 1>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'dominance' 15 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.harsh>>
You scold <<=setup.getNpcName("generic_female1","custom", "Viviko")>> for stretching herself out without your permission and she flinches slightly.<br>
<br>
"@@.generic_female1;Sorry, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... only, how was I to know your preference in advance... or be ready to handle your girth without preparation?@@"<br>
<br>
You can't think of a particularly good answer, so you just quietly move forward with the scene.
<<else>>
You congratulate <<=setup.getNpcName("generic_female1","custom", "Viviko")>> on her preparedness... and how lovely the plug looks glittering in her ass, and then instruct her to tell you her training routine.<br>
<br>
"@@.generic_female1;Of course, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@" <<=setup.getNpcName("generic_female1","custom", "Viviko")>> replies as you move behind her and begin playing with the plug. She gasps, as you sliding the massive hunk of metal in and out a few millimeters to to milk her stretched hole. While you cannot tell how long the plug is without pulling it out completely, it is quite thick, at least two or three centimetres at the flange before widening to at least half a dozen centimeters of gleaming steel.<br>
<br>
"@@.generic_female1;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. On a normal day I start my morning by removing my sleep plug and keeper harness for cleaning, followed by a shower where I train using an inflatable plug to warm me up. After the shower comes my larger day plug, it has an integrated vibrator, and a pressure sensor that will shock my muscles tighter if I relax too much. I want to be a gaped anal slave, but I do not wish to be loose. The vibrator will be set to randomised low stimulation totaling ten minutes every hour. Every two hours I will remove and re-insert the plug three times while doing breathing hours to practice stretching. Each thrust will increase the frequency of vibrations by three percent, so each session translate to just under ten percent total increase. By lunch I will be quite aroused and I will remove the plug for my first dildo session. This is performed with one of several above-average casts of famous cocks. A particular favourite is that of your co-star, <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>>, but I vary things to avoid falling into a rut, performing a dozen full-depth squats on the chosen dildo, remaining at max depth on the final stroke as I suck myself off for desert.@@"<br>
<br>
The combination of reciting her routine, and your continued playing with her plug has <<=setup.getNpcName("generic_female1","custom", "Viviko")>> breathing quite heavily, but she continues on. "@@.generic_female1;After lunch I return my day plug to its position, increasing the power of the shocks for security and randomising the vibration intensity. Stretching practice is performed every hour. By the end of the day the plug is up to being active nearly half the time, but I turn it is also set to activate permanently at maximum intensity, for the train-ride home. The sound of the train car masks that of the vibrator... I think. The challenge of remaining calm and controlled while enduring such strong vibrations is the most intense part of my day, especially since it will be accompanied by many shocks due to my body slowly succumbing to fatigue.<<if $fetish.cum && $fetish.sounding>> To keep from leaking all over the train I have taken to inserting a sound beforehand<<elseif $fetish.cum>> To avoid leaking all over the train, I always position a towel between my legs... though that does not stop the cramped car from smelling of pre-cum by the time I reach my destination.<</if>>@@"<br>
<br>
You have worked your way up to withdrawing and then reinserting the full massive plug, its size and heft the equal of any you have worn. You ask <<=setup.getNpcName("generic_female1","custom", "Viviko")>> how she finishes off the day, she pants, taking an additional moment to compose herself before continuing. "@@.generic_female1;Once I am home I remove the day plug and shower for a mental reset and to focus my mind on the next task. Having been empty through the shower my ass will have tightened slightly... but I will be very much feeling the emptiness, making me even more excited for my next task. I have an automated fucking machine with interchangeable dildos, for my first round I use a clone of myself. Larger than any of my lunch dildos, it both stretches me back out, and puts me in the proper head-space to become a better butt-slut. Unfortunately your cock is not available on the market, and thus I will finish myself off with a clone of your co-star, <<=setup.getNpcName("npc_cook","full")>>. This never fails to give me a full-body analgasm... though I remain incapable of taking <<his npc_cook>> full length. After I have recovered, I will pamper myself a bit and change into my "leisure" attire, including the plug you are so expertly using right now. I will wear it for the remainder of the evening, then switch to a softer sleep plug before bed that I will hold in with a simple harness, thus concluding my day training as a butt-slut.@@"<br>
<br>
You give a final tug of the plug, then let <<=ps(setup.getNpcName("generic_female1","custom", "Viviko"))>> suck it back into position causing her to gasp yet again before you congratulate her on the very thorough regimen.<br>
<br>
"@@.generic_female1;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I have, unfortunately, hit a wall, part of why I came to you. I only hope my preparations prove sufficient for you to continue my training.@@"
<</if>>
<br><br>
You stand up, giving <<=setup.getNpcName("generic_female1","custom", "Viviko")>> some time to calm down as you consider what to do next.<br>
<br>
<<printThought "She's obviously eager for my cock... but a little more anticipation would make it even better when I finally slide into her ass...">><br>
<br>
[<<moveTo "event_vip_hungry_ass_7" 'Spank <<=setup.getNpcName("generic_female1","custom", "Viviko")>> for failing to remove ALL her clothing.' 300 "<<set $scene.harsh=true>>">>]<br>
[<<moveTo "event_vip_hungry_ass_7" 'Tease <<=setup.getNpcName("generic_female1","custom", "Viviko")>> with some intergluteal sex for still wearing her sockings and garters.' 300 "<<set $scene.harsh=false>>">>]
</div>/*#
#desc: hungry ass vip: get ready to fuck
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.harsh>>
<<set $scene.harsh_counter += 1>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'dominance' 15 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.harsh>>
With <<=setup.getNpcName("generic_female1","custom", "Viviko")>> still bent over the bed you stand beside her and lay a hard smack on her ass.<br>
<br>
She gasps, clearly surprised... and possibly slightly annoyed. "@@.generic_female1;What was that for, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"<br>
<br>
You explain that she failed to fully follow your instructions, noting that she yet wears her garters, stockings and shoes, despite your ordering her to strip.<br>
<br>
"@@.generic_female1;Sorry, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I guess showing off my plug... distracted me.@@" She replies once you have finished administering the spanking. Though her large ass was a delight to spank, and shows off some lovely red hand-prints, she does not appear to have been particularly aroused by the punishment, merely slipping out of the rest of her clothes swiftly, and without any theatrics.
<<else>>
You move behind <<=setup.getNpcName("generic_female1","custom", "Viviko")>>, making her gasp as you remove her plug... and then causing her to moan as you begin
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
rubbing your caged cock between her cheeks.
<<else>>
grinding the front of your chastity shield between her cheeks.
<</if>>
<<else>>
sliding your hard cock between her cheeks.
<</if>>
<br><br>
"@@.generic_female1;Please...@@" she pants as you tease.<br>
<br>
You explain that this is a punishment for her failing to follow your order, pointing out that you instructed her to remove all of her clothing... and yet she did not finish striping.<br>
<br>
"@@.generic_female1;Sorry, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>,@@" she moans, grinding back against you as she hurriedly unclasps her garter belt, letting it fall to the floor before kicking out of her heels and shedding her stockings.
<</if>>
<br><br>
<<printThought "She's ready...">> you think to yourself<<if setup.checkItemTypeWorn("cage")>> as you prepare to unlock yourself<</if>>.
<<switch $scene.harsh_counter>>
<<case 0>>
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> glances back at you with total submissive lust. "@@.generic_female1;Please, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... fuck my ass. Teach this submissive the TRUE meaning of being an anal size queen...@@"<br>
<br>
[<<moveTo "event_vip_hungry_ass_8_anal" "Grant her request." 300>>]<br>
<<case 1>>
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> glances back at you with a slight hesitance... but your performance overall seems to have been good enough as she softly begs. "@@.generic_female1;Please, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... fuck my ass. Teach this submissive how to be an anal size queen...@@"<br>
<br>
[<<moveTo "event_vip_hungry_ass_8_anal" "Grant her request." 300>>]<br>
<<default>>
Surprising you slightly, <<=setup.getNpcName("generic_female1","custom", "Viviko")>> shifts forward, catching her breath and shaking her head before turning around to look at you. Still somewhat flush, she no longer appears quite as submissive as she had before.<br>
<br>
"@@.generic_female1;I am sorry, <<=$player.flags.porn.pornname>>... but this is not working for me. From your on-screen persona I thought you would be a more... gentle dominant. I... I do not believe I wish to go any further this evening.@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> gathers up her things, pulling a handful of credits out of her purse and handing them to you. "@@.generic_female1;I believe this should cover our time thus far. Good night.@@"<br>
<br>
Dressing with remarkable speed, <<=setup.getNpcName("generic_female1","custom", "Viviko")>> strides out the room, leaving you with a handful of credits<<if $player.body_ref.balls>> and some VERY blue balls<<else>>and an almost painfully hard cock<</if>>.<br>
<br>
[<<moveTo "event_vip_hungry_ass_8_fail" "Reflect on your failure." 300>>]
<</switch>>
</div>/*#
#desc: hungry ass vip: fail
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<printThought "Well that didn't work out...">> you think with a sigh, fetching an icepack from the minifridge in the "client room" to calm yourself down as you consider your actions.<br>
<br>
<<switch $scene.harsh_counter>>
<<case 2>>
<<printThought "I was pretty harsh with her despite her being quite submissive and behaved... maybe I should focus on more gentle tactics?">>
<<case 3>>
<<printThought "I was harsh with her pretty much from begining to end... even though she was nearly picture perfect in her obedience... clearly a more gentle tactic would have been the way to go.">>
<<default>>
ERROR: unexpected scene.harsh_counter <<=$scene.harsh_counter>>
<</switch>>
<br><br>
[<<moveTo "room_usual_place_inside" "Head downstairs." 180>>]
</div>/*#
#desc: hungry ass vip: start to fuck her
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 80>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You have <<=setup.getNpcName("generic_female1","custom", "Viviko")>> turn over so she can look up at you.
<<if $scene.removeCage>>
You let her watch as you theatrically unlock yourself, your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>mythical <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock springing forth to her wide-eyed delight.
<<else>>
She stares at your your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>mythical <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock with wide-eyed delight.
<</if>>
<br><br>
"@@.generic_female1;It's even more beautiful in person... please, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... induct me into its glory...@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> guides you in to her spread, gaping ass, eyes rolling back in pleasure as she moans "@@.generic_female1;Yes... all that training was worth it...@@" gasps with ecstasy. With your cock a mere halfway into her her own massive cock rips free of its fabric containment, standing up rock-hard... and spurting a load of cum that showers down over her blissful face.<br>
<br>
She's breathing hard and struggling by the time you hit the 3/4 point<<if $player.body_ref.knot>> and the knot presses against her stretched hole<</if>>.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> is panting and mumbling "@@.generic_female1;Goddess, so big, so good...@@" straining to handle just this much of you even as she begs for "@@.generic_female1;More, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... please, I need it all, stretch me more...@@"<br>
<br>
[<<moveTo "event_vip_hungry_ass_9_anal" "Take it slow and let her adjust." 300 "<<set $scene.slow=true>>">>]<br>
[<<moveTo "event_vip_hungry_ass_9_anal" "Push her. She can take it." 300 "<<set $scene.slow=false>>">>]
</div>/*#
#desc: hungry ass vip: continue to fuck
#status: RELEASED 0.9.4.0
#ignore_spell: plete
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 80>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You reach down to jerk off <<=ps(setup.getNpcName("generic_female1","custom", "Viviko"))>> still hard cock. She joins you as well, your three hands combined not quite spanning its massive length... and yet it's still smaller than your own beast working its way deeper into <<=setup.getNpcName("generic_female1","custom", "Viviko")>>. You use your your grip for additional stability
<<if $scene.slow>>
and back up, making slow thrusts to work your way back to your previous depth... and then slide deeper.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> squirms and you wonder if <<if $player.body_ref.knot>>your knot is<<else>>you are<</if>> just too much... and then, as her balls tighten with a massive orgasm... <<if $player.body_ref.knot>>you knot her<<else>>you slide the rest of the way in<</if>>.
<<else>>
and slam your hips forward<<if $player.body_ref.knot>>, your knot providing<<else>><<=ps(setup.getNpcName("generic_female1","custom", "Viviko"))>> stretched hole somehow providing<</if>> a final moment of resistance... and then her body makes its final surrender, her bowels straightening out as you slam balls-deep
<</if>>
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> cries out in ecstasy, her belly distending with the outline of your massive payload. <<=setup.getNpcName("generic_female1","custom", "Viviko")>> is all but pinned in place thanks to the monster inside of her, but her hips buck nonetheless, <<if $fetish.cum>>thick ropes of cum spurting from her cock... a cock that somehow is only getting<<else>>her cock pulsing and straining with multiple climaxes that only seem to make it<</if>> harder with each orgasm.<br>
<br>
[<<moveTo "event_vip_hungry_ass_10_anal" 'Cum-plete <<=ps(setup.getNpcName("generic_female1","custom", "Viviko"))>> training.' 300>>]
</div>/*#
#desc: hungry ass vip: finish fucking
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> is in a realm of pure anal ecstasy, her cock<<if $fetish.cum>>leaking<<else>>twitching<</if>> with orgasm even as you grip her hips with both hands and her arms go limp, the effort of sustaining her massive cock and the orgasms wracking her body robbing blood and focus from almost everything else.<br>
<br>
With each thrust <<=ps(setup.getNpcName("generic_female1","custom", "Viviko"))>> body reforms around your cock, the initial difficulties fading away as she begins to feel like nothing more than a tight, well-lubricated cock-sleeve, her ass quivering at every stroke, stretched far... yet her muscular training pays off as she continues to squeeze you pleasingly tight. Your speed steadily increases, your initial long, slow, difficult strokes accelerating until you're pounding away, pulling back until you're almost out of her and then slamming forward, your<<if $player.body_ref.balls>>, balls slapping against<<else>>hips slamming into<</if>> as her entire body shakes with every thrust.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Viviko")>> has cum so many times, sinking deeper into sub space with each climax, but you feel your own orgasm approach, giving it one final burst of speed before <<if $fetish.cum && $player.body_ref.cumProduction>>blowing your <<if $player.body_ref.cumProduction > 1>>massive <</if>>load deep inside her<<else>>letting yourself finish<</if>>.<br>
<br>
You're both panting as you hold inside of her until the post-orgasmic aftershocks fade... and your softening python is squeezed out.<br>
<br>
"@@.generic_female1;Bliss...@@" <<=setup.getNpcName("generic_female1","custom", "Viviko")>> whispers as you help her sit up, holding her<<if $fetish.cum>> cum-drenched body<</if>> up as she gradually catches her breath and rises back from deep, deep sub-space.<br>
<br>
[<<moveTo "event_vip_hungry_ass_11" 'Wrap things up.' 300>>]
</div>/*#
#desc: hungry ass vip: complete
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.hungry_ass = true>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
It takes several minutes for <<=setup.getNpcName("generic_female1","custom", "Viviko")>> to regain coherency... and a few more after that for her to be able to stand.<br>
<br>
She looks at you with a mix of gratitude and remembered ecstasy. "@@.generic_female1;That was... even better than I hoped... thank you, you were worth every credit<<if $scene.harsh_counter == 0>>, and then some<</if>>.@@" Echoing her words, she digs out her purse and hands you <<if $scene.harsh_counter == 0>>significantly <</if>>more than your usual fee, smiling the whole time.<br>
<br>
Paying you off seems to flip something of a switch in <<=ps(setup.getNpcName("generic_female1","custom", "Viviko"))>> head and she takes a quick shower before dressing... and stuffing the jeweled plug back into her rear with a wink.<br>
<br>
"@@.generic_female1;Until next time, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.flags.porn.pornname>>... or maybe I'll just see you in the movies...@@"<br>
<br>
She strides out as elegant and graceful as she came in. You take a few more moments to clean up the room and then head on back down to the bar, <<=setup.getNpcName('npc_barkeeper', 'first')>> nodding at you as you drop off her share as she acknowledges another job well done..<br>
<br>
[<<moveTo "room_usual_place_inside" "Look around the bar." 180>>]
</div>/*#
#desc: given kate as vip customer
#status: FINISHED 0.8.1.0
#ignore_spell: v
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_barkeeper', 'first')>> that you'll take the job. She grins and points to a booth across the bar. "@@.npc_barkeeper;Have fun!@@"<br>
<br>
You look over to see an unconventional but stunning woman who grins, no — LEERS — back at you. Dressed in a deep v-cut leather jumpsuit that dives down from her spiked choker to show off physics-defying perfect inner boobs and then stop just above the bulge between her legs, the woman's every look screams three things: power, danger... and sex.<br>
<br>
[<<moveTo "event_kate_whoring_2" "Walk over to your client." 180>>]
</div>/*#
#desc: meet kate
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
Your heart beats a little faster with each step you take towards her as you feel a bit like a prey animal approaching the lion's den. The woman pounds back the rest of her beer and brushes a strand of blonde hair out of her face before rising to her feet. Wearing what you could only describe as "combat heels" she stands <<if !setup.getItemObjFromType("shoes").hasOwnProperty('heels')>>several centimetres taller than yourself<<elseif setup.getItemObjFromType("shoes").heels.difficulty >= 15>>just even with your ballet-raised stature<<elseif setup.getItemObjFromType("shoes").heels.difficulty > 5>>a hair taller than your raised height<<else>>a fair bit taller than your modest heels<</if>>, yet feels even more imposing.<br>
<br>
"@@.generic_female1;The name's Kate,@@" she states with a smirk. "@@.generic_female1;You ready to get to work?@@"<br>
<br>
You nod and she smiles wider, "@@.generic_female1;Great, I love an eager <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>, now come on! <<=setup.getNpcName('npc_barkeeper', 'first')>> may have the best girls, but this place isn't really suitable for my current mood. I just finished a long, hard job and I'm looking to blow off some steam.@@"<br>
<br>
[<<moveTo "event_kate_whoring_3" "Follow her out of the bar." 180>>]<br>
[<<moveTo "event_kate_whoring_abort" "Excuse yourself, she's more than you can handle." 180>>]
</div>/*#
#desc: meet kate
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<switch $player.llocation>>
<<case "event_kate_whoring_2">>
<<set $player.location to "The Usual Place, Inside">>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" "./images/characters/npc_kate.png">>
<<case "event_kate_whoring_3">>
<<set $player.location to '<<=ps(setup.getNpcName("generic_female1","custom", "Kate"))>> Car'>>
<<createAdvBGR "./images/locations/vehicle.png" "./images/characters/npc_kate.png">>
<</switch>>
<div id="invframe" class="scrolltext">
You nervously stutter that you don't think you're up for this tonight.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Kate")>> frowns.
<<switch $player.llocation>>
<<case "event_kate_whoring_2">>
"@@.generic_female1;Sudden attack of nerves? Come on, <<if $fetish.sissy>>sissy<<else>><<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>boy<<default>>slut<</switch>><</if>> I promise we'll have a great time tonight, you know you want to...@@"<br>
<br>
[<<moveTo "event_kate_whoring_3" "Follow her out of the bar." 180>>]<br>
[<<moveTo "room_usual_place_inside" "Stand firm, she's too much for you to handle." 180>>]
<<case "event_kate_whoring_3">>
"@@.generic_female1;Aww, <<if $fetish.slurs>>is the faggot frightened<<elseif $fetish.sissy>>is the sissy scared<<else>><</if>> it's just a big, juicy girlcock. A slut like you should be used to taking these two or three at a time, right? Come on, I can see your mouth water, I know you want to give it a taste...@@"<br>
<br>
[<<moveTo "event_kate_whoring_4" "Lean over and suck." 180>>]<br>
[<<moveTo "room_usual_place_outside" "Get out of the car and go on your way." 180>>]
<<case "event_kate_whoring_5">>
"@@.generic_female1;And things had started off so well... Sure you don't want to stick around? I promise you'll have a nice prize by the end if the evening... though... this is also your last chance to get off this ride...@@"<br>
<br>
[<<moveTo "event_kate_whoring_6" "Stay the course." 180>>]<br>
[<<moveTo "room_student_quarter" "You're done, walk away." 180>>]
<<default>>
ERROR: unexpected last location: <<=$player.llocation>>
<</switch>>
</div>/*#
#desc: kate takes you to her car
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("generic_female1","custom", "Kate"))>> Car'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vehicle.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female1","custom", "Kate")>> has you lead the way out of the bar and you can feel her eyes burning into your ass every step of the way.<br>
<br>
She directs you to a tricked out super-car, a vehicle that screams speed, danger, and sex as loudly as its owner. A press of a button and gull-wing doors swing open and you slide into one of the sculpted leather seats as <<=setup.getNpcName("generic_female1","custom", "Kate")>> circles around to the drivers side.<br>
<br>
You've just finished buckling your seatbelt when she turns over the engine, <<=setup.getNpcName("generic_female1","custom", "Kate")>> looking over to you with a smirk, her jumpsuit unzipped a little further down so that her bulge is now a rock-hard, cum-beaded girl-cock, sleek and thick, with veins pulsing.<br>
<br>
"@@.generic_female1;Well? You're on the clock — which means you need to be on my cock. <<if $fetish.slurs>>Put that faggot face fuck-slot to work<<elseif $fetish.sissy>>get those sissy lips where they belong<<else>>wrap that slut hole around my fuck-pole<</if>>.@@"<br>
<br>
[<<moveTo "event_kate_whoring_4" "Lean over and put your lips to work." 600>>]<br>
[<<moveTo "event_kate_whoring_abort" "This is too much, ask to be let out of the car." 180>>]
</div>/*#
#desc: suck off kate in car
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("generic_female1","custom", "Kate"))>> Car'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vehicle.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("generic_female1","custom", "Kate"))>> crotch cannon is a proper monster,
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
just how you love, and you eagerly take her to the hilt as the car roars into motion.
<<else>>
your training pushed to the limit to take her balls deep.
<</if>>
You feel a hand on the back of your head and a pulse at the back of your throat. "@@.generic_female1;Oh, I'm liking you more and more every moment. Suck it hard.@@"<br>
<br>
You do as your client commands, bobbing up and down and sucking with all your skill as she smoothly guides the vehicle across the city.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You struggle to get much more than her thick pink cock-head past your lips.
<<else>>
You can barely wrap your lips around her pink cock-head, the thought of taking her any further all but unimaginable.
<</if>>
"@@.generic_female1;Aww, am I too big for your cute mouth? Here, how about some help...@@"<br>
<br>
With a firm grip on your hair she pushes you down while her hips hump upwards — but even that is only good for a couple centimetres and some gagging.<br>
<br>
"@@.generic_female1;Psh, amateur,@@" she snorts when she releases her grasp. "@@.generic_female1;Wipe off your face, the night is barely started and I want to ruin you PROPERLY.@@"<br>
<br>
You catch your breath as she turns back to the road, reaching out with one hand to jerk her off for the rest of the drive when she briefly glances at you in annoyance.
<</if>>
<br><br>
[<<moveTo "event_kate_whoring_5" "Enjoy the ride..." 300>>]
</div>/*#
#desc: arrive at club with kate
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside Club TODO">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/club_exterior.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
Swiftly weaving through traffic the drive doesn't take long and <<=setup.getNpcName("generic_female1","custom", "Kate")>> glides to a stop and pulls you off, taking a moment to zip herself back up before hopping out of the vehicle and tossing the keys to the valet.<br>
<br>
"@@.generic_female1;I find a scratch on it and I will fucking break you.@@" She tells the valet who stares back in fear before meekly nodding and darting over to the car.<br>
<br>
Appearing beside you <<=setup.getNpcName("generic_female1","custom", "Kate")>> reaches down to squeeze your ass<<if setup.checkItemTypeWorn("plug")>>, one finger fiddling with your plug momentarily<</if>>. "@@.generic_female1;Come on, I'm in the mood to dance, and word on the street is this is the hottest joint in the city.@@"<br>
<br>
The line outside the club would seem to back up her claim, but <<=setup.getNpcName("generic_female1","custom", "Kate")>> walks right past, slipping the bouncer a handful of credits as <<he>> leers at the both of you — even by the scandalous standards of the club the two of you are dressed to stand out, loud music and bright lights emanating from the door as <<=setup.getNpcName("generic_female1","custom", "Kate")>> leads the way inside.<br>
<br>
[<<moveTo "event_kate_whoring_6" "Get out of the vehicle and follow her into the building." 600>>]<br>
[<<moveTo "event_kate_whoring_abort" "This is too much, ask to end the night here." 180>>] <<hint $options "You have the feeling that this is your last chance to back out of tonights events...">>
</div>/*#
#desc: enter club with kate
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Club TODO">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/club_interior.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
The club is loud, flashy, and full of flesh, but <<=setup.getNpcName("generic_female1","custom", "Kate")>> wastes no time in bullying her way to the centre of the dance floor, already moving to the music and pulling you in close as the next song kicks in.<br>
<br>
You're feeling hot in more ways than one as she pulls you close, grinding against you and teasingly licking your neck as she dances.<br>
<br>
[<<moveTo "event_kate_whoring_7" "Time to cut a rug." 1800 "<<set $scene.dance=true>>">>]<br>
[<<moveTo "event_kate_whoring_7" "Let her do the dancing." 1800 "<<set $scene.dance=false>>">>]<br>
</div>/*#
#desc: kate dancing
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.dance>>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'very' $EXPOSED>>
<</if>>
<<set $player.timebased.horny = 100>>
<</if>>
<<set $player.location to "Club TODO">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/club_interior.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
<<if $scene.dance>>
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
You are soon grooving to the music, moving as well or better than your partner as the
<<else>>
You manage to keep up with your partner, the two of you moving and grinding to the music in a
<</if>>
borderline erotic display of your and <<=ps(setup.getNpcName("generic_female1","custom", "Kate"))>> combined skills clears a bit of space. People step back just to watch in awe.
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
You dance as best you can, but it is a pale imitation of your partner's catlike agility.
<<else>>
You try to dance, but saying you had two left feet would be almost a compliment. Fortunately <<=setup.getNpcName("generic_female1","custom", "Kate")>> is smooth enough for the both of you, grinding and gliding around you as people back away to give you space — whether to watch her, or out of fear of you crashing into them, you can't be sure.
<</if>>
<</if>>
<<else>>
You at best sway to the music as <<=setup.getNpcName("generic_female1","custom", "Kate")>> dances and grinds against you. There's no mistaking the attention the two of you are gathering, but that only makes it even more surprising when you feel something change in the bulge pressed against your rear, reaching back to find your hand grasping the hot flesh of her very hard member.
<</if>>
<br><br>
"@@.generic_female1;Time to earn your pay — I've been waiting to plow this perfect ass since I first laid eyes on it. Now bend over, bitch, it's time to get bred.@@"<br>
<br>
You bite your lip, maybe there's something in the air, but you feel as horny as you ever have, all but desperate to take her up on her offer.<br>
<br>
<<if setup.getTotalValue("humiliation") < 15 || setup.getTotalValue("bimbofication") < 15>>
[@@.link_locked;You aren't some brazen hussy to get fucked in the middle of a crowded club...@@]<br>
<<else>>
[<<moveTo "event_kate_whoring_8" "Bend over." 600 "<<set $scene.slut=true>>">>]<br>
<</if>>
[<<moveTo "event_kate_whoring_8" "Try to find a private room." 600 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: kate sex
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Club TODO">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/club_interior.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You waste no time bending over and <<=setup.getNpcName("generic_female1","custom", "Kate")>> gives your ass a friendly squeeze. "@@.generic_female1;You've been wanting to bend over like this all night, haven't you? Well don't let me keep you waiting any longer you slut.@@"
<<else>>
You turn to suggest you find a private room only for <<=setup.getNpcName("generic_female1","custom", "Kate")>> to spin you back around and bend you over as she pulls at your clothes. "@@.generic_female1;Privacy? Don't be a fucking prude. I want you right here, right now.@@"
<</if>>
<br><br>
Punctuating that statement her cock slides into your ass, stretching you wide and deep.<br>
<br>
You moan as you adjust to your new <<if $player.body_ref.penis>>prostate-pressuring<<else>>bowel-bursting<</if>> fullness only for <<=setup.getNpcName("generic_female1","custom", "Kate")>> to grab you by the hair and force you to look out at the crowd that is looking... no... LUSTING at you.<br>
<br>
"@@.generic_female1;Check it out, you've got fans — why don't you show your appreciation with those dick-sucking lips of yours?@@"<br>
<br>
Whatever slut-brain override has been coming over you seems to have hit the other patrons of the club as well as you watch them close in with depraved looks in their eyes.<br>
<br>
[<<moveTo "event_kate_whoring_9" "Spread those <<if $fetish.sissy>>sissy <</if>>lips..." 4200>>]
</div>/*#
#desc: kate orgy
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Club TODO">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/club_interior.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
The first to take you up on <<=ps(setup.getNpcName("generic_female1","custom", "Kate"))>> offer <<if $options.fem>>is<<else>>turns out to be<</if>> another woman, and you find yourself moaning along to the next song while pussy juices drip down your chin as the anonymous woman grinds against your face and <<=setup.getNpcName("generic_female1","custom", "Kate")>> fucks you hard and deep.<br>
<br>
Threesome turns to more-some as a literal wave seems to spread through the club and you quickly lose count of how many <<if $options.fem>>women<<else>>people<</if>> have fucked you, your hands and holes busy trying to attend to whoever is within reach in a roiling nest of debauchery.<br>
<br>
<<printThought "How is this real? But I'm still so horny... please, fuck me harder. I need more...">><br>
<br>
[<<moveTo "event_kate_whoring_10" "Keep fucking." 1930>>]
</div>/*#
#desc: kate post-job revelation
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyFatigue 80>>
<<set $scene.job_quality = 0>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
<<set $scene.job_quality += 6>>
<<else>>
<<set $scene.job_quality += 4>>
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<set $scene.job_quality += 2>>
<<else>>
<<set $scene.job_quality += 1>>
<</if>>
<</if>>
<<if $scene.dance>>
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
<<set $scene.job_quality += 4>>
<<else>>
<<set $scene.job_quality += 3>>
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
<<set $scene.job_quality += 2>>
<<else>>
<<set $scene.job_quality += 1>>
<</if>>
<</if>>
<</if>>
<<if $scene.slut>>
<<set $scene.job_quality += 5>>
<</if>>
<<set $scene.whoring_level = 5 + $scene.job_quality>>
<<applyExperience 'whoring' $scene.whoring_level 'very' $EXPOSED>>
<<set _pay = Math.ceil((1 + $scene.job_quality * .1) * $scene.client.base_pay)>>
<<addCredits _pay>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("generic_female1","custom", "Kate"))>> Car'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vehicle.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
Getting stuffed with <<if $options.fem>>girl<</if>>cock from either end in the middle of a scene of Bacchanalian excess eventually proves too much for even you and you wake up to find yourself back in <<=ps(setup.getNpcName("generic_female1","custom", "Kate"))>> Car.<br>
<br>
She's fiddling with a dashboard-mounted computer display and you sit up to recognise a birds-eye view of the club you were just in... the camera centred on you getting fucked from both ends by total strangers.<br>
<br>
Glancing in your direction <<=setup.getNpcName("generic_female1","custom", "Kate")>> grins. "@@.generic_female1;You're finally awake. Don't worry, we're nowhere near crossing a border. But you definitely helped me strike a blow against the imperials... well, corporate imperials, at least.@@"<br>
<br>
She pauses the video. "@@.generic_female1;See that <<guy>> balls deep in your ass? Well... <<hes>> the Security Chief for Nintendolls. I've got a job involving them and, well... all the ICE in the world is nothing compared to applying some heat in the right location...@@" She pauses to watch the video with a smile. "@@.generic_female1;You are quite the hot little fire-starter. Between this.@@" She taps the display. "@@.generic_female1;And this@@" she reaches between your legs to scrape up a thick glob of cum that has leaked out of your ass. "@@.generic_female1;Well... let's just say that your recent friend is going to be very eager to help me out to keep <<his>> wife from finding out what <<hes>> been up to.@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Kate")>> chuckles as she scrapes the cum into a storage vial. "@@.generic_female1;I love it when work and play come together like this. I figure you're well familiar with the feeling.@@"<br>
<br>
She reaches past you and pulls a stack of credits out from underneath the dash.
<<if $scene.job_quality >= 15>>
"@@.generic_female1;Here you go, you earned it — you fucking blew me away tonight... literally AND figuratively.@@" You gawk at the wad of credits she drops
<<elseif $scene.job_quality >= 10>>
"@@.generic_female1;You did pretty good tonight, kid, so it's only fitting you get paid accordingly.@@" She drops a stack of credits
<<elseif $scene.job_quality >= 5>>
"@@.generic_female1;Wish you'd gotten into the spirit of things tonight a bit more.@@" She states as she drops some credits
<<else>>
"@@.generic_female1;Your performance tonight was a bit disappointing, but the job got done, and I still had a bit of fun.@@" She drops a few credits
<</if>>
in your lap and then casually turns back towards the wheel.<br>
<br>
"@@.generic_female1;So, where can I drop you off?@@"<br>
<br>
[<<moveTo "event_kate_whoring_11" "Home." 60 "<<set $scene.dest='room_foyer'>>">>]<br>
[<<moveTo "event_kate_whoring_11" "Back at the Usual Place." 60 "<<set $scene.dest='room_usual_place_outside'>>">>]<br>
[<<moveTo "event_kate_whoring_11" "Student Quarter." 60 "<<set $scene.dest='room_student_quarter'>>">>]
</div>/*#
#desc: kate drives you wherever (BJ round 2)
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("generic_female1","custom", "Kate"))>> Car'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/vehicle.png" "./images/characters/npc_kate.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("generic_female1","custom", "Kate")>> where you want to go and she pulls off the curb. You can't help but glance down to see her delicious bulge...<br>
<br>
[<<moveTo "event_kate_whoring_12" "Why not give her a little extra in thanks for the wonderful night?" 300 "<<set $scene.bj=true>>">>]<br>
[<<moveTo "event_kate_whoring_12" "Relax and wait to arrive." 300 "<<set $scene.bj=false>>">>]
</div>/*#
#desc: kate drives away
#status: FINISHED 0.8.1.0
#ignore_spell: masterchefguy
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.kate = true>>
<<if $scene.bj>>
<<applyExperience 'oral' 13 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "City Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
<<if $scene.bj>>
You quietly lean in, unzip and start sucking again.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Kate")>> brushes your hair and gently smiles down at you. "@@.generic_female1;Oh I am DEFINITELY going to have to remember you the next time I have a job in this area...@@"<br>
<br>
You hum happily and suck away for the rest of the ride.
<<else>>
You lean back as <<=setup.getNpcName("generic_female1","custom", "Kate")>> navigates through traffic — expertly bringing you to your destination in record time.
<</if>>
<br><br>
[<<moveTo $scene.dest "Arrive." 300>>]<br>
<br>
<a target="_blank" href="http://www.hentai-foundry.com/user/masterchefguy/profile">(EXT/NSFW) Special Thanks to MasterChefGuy for their character kate</a>
</div>/*#
#desc: given tax agents as vip customer
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_barkeeper', 'first')>> that you're glad to step up for whatever government inspection is required to renew her licence. "@@.npc_barkeeper;Great! Trust me when I say how much of a help you stepping in for this is. You would not believe how much of a pain-in-my-ass this process was last year.@@"<br>
<br>
You nod, reflecting that she may mean that quite literally as she makes a phonecall.<br>
<br>
"@@.npc_barkeeper;Alright, they're on their way over — you can go straight upstairs and wait for them. Think of this kind of like a kitchen inspection at a restaurant — they want to check that everything is running smoothly and to code so just be your lovely self and answer any questions they have. Truthfully — you do NOT want to deal with a charge for lying to a government agent about this sort of thing.@@"<br>
<br>
[<<moveTo "event_prostitute_licence_renew_2" "Nod and head upstairs." 660>>]
</div>/*#
#desc: meet tax agents as vip customer
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You head up to one of the private rooms to wait. After about ten minutes you hear a knock on the door.<br>
<br>
"@@.generic_male1;Miss <<=$player.last_name>>? This is Agent <<if $options.fem>>Danielle<<else>>Dean<</if>> Cranium and Agent Vixen Mulinari here to perform an inspection per the Federal Professional Sex Act, Section 2258 Subsection 69. Confirm your identity and that you are ready to proceed.@@"<br>
<br>
[<<moveTo "event_prostitute_licence_renew_3" "Yes, <<sir>>." 180>>]<br>
[<<moveTo "event_prostitute_licence_renew_abort" "No, <<sir>>." 180>>]
</div>/*#
#desc: abort tax agents vip customer
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.get_raped>>
<<addItem 'handcuffs_back'>>
<<wearItem 'handcuffs_back' true>>
<<else>>
<<incrementEmotion 'anger' 'npc_barkeeper' 5>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<if $fetish.get_raped>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "agent_female" setup.charImageGeneric("agent_male")>>
<<else>>
<<switch $player.llocation>>
<<case "event_prostitute_licence_renew_2">>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<<default>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "agent_female" setup.charImageGeneric("agent_male")>>
<</switch>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.llocation>>
<<case "event_prostitute_licence_renew_2">>
You reply through the door that you actually are not prepared for the inspection.<br>
<br>
<<if $fetish.get_raped>>
The door suddenly swings open and the two suited agents burst into the room. "@@.generic_female1;Inspection converting to a surprise spot inspection per IRS protocols.@@" The <<if $options.fem>>first Agent announces as her<<else>>female Agent announces as her male<</if>> counterpart rushes towards you with shocking speed, a stun device taking you by surprise as <<he>> has you in handcuffs in moments.
<<else>>
You reply that you are not ready for inspection. "@@.generic_male1;Confirmed that subject is declining inspection. Sorry to bother you ma'am.@@"<br>
<br>
You hear footsteps walk away, then a couple minutes later get a text from <<=setup.getNpcName('npc_barkeeper', 'first')>> informing you that she is "@@.npc_barkeeper;Taking care of things.@@" and that you can leave.<br>
<br>
<<printThought "Shit, and after her complaints about last year...">><br>
<br>
[<<moveTo "room_citymap" "Leave." 600>>]
<</if>>
<<case "event_prostitute_licence_renew_3">>
<<if $fetish.get_raped>>
You start to turn the two agents away, only for them to somehow become even more serious.<br>
<br>
Moving lightning fast one of the agents pins you down while the other cuffs your hands behind your back.
<<else>>
You apologise to the agents but explain that you are not ready for inspection.<br>
<br>
"@@.generic_male1;Disappointing. Your waste of our taxpayer salaries has been noted.@@"<br>
<br>
Without further word the two agents depart. You stand confused for a few minutes, and then you get a text from <<=setup.getNpcName('npc_barkeeper', 'first')>> informing you that she is "@@.npc_barkeeper;Taking care of things.@@" and that you can leave.<br>
<br>
<<printThought "Shit, and after her complaints about last year...">><br>
<br>
[<<moveTo "room_citymap" "Leave." 600>>]
<</if>>
<<case "event_prostitute_licence_renew_4">>
You apologise to the agents and explain that you do not wish to submit to a physical inspection.<br>
<br>
<<if $fetish.get_raped>>
"@@.generic_male1;Subject is proving recalcitrant, proceeding to surprise inspection.@@"<br>
<br>
You hadn't realised the <<if $options.fem>>other <</if>>woman had moved behind you until she has snapped a pair of cuffs onto your wrists.
<<else>>
"@@.generic_male1;Disappointing. Your waste of our taxpayer salaries has been noted.@@"<br>
<br>
Without further word the massive rod slides out of your rear and the two agents depart. You stand confused for a few minutes, and then you get a text from <<=setup.getNpcName('npc_barkeeper', 'first')>> informing you that she is "@@.npc_barkeeper;Taking care of things.@@" and that you can leave.<br>
<br>
<<printThought "Shit, and after her complaints about last year...">><br>
<br>
[<<moveTo "room_citymap" "Leave." 600>>]
<</if>>
<<case "event_prostitute_licence_renew_5">>
You gasp out that you would like to end the
<<if $fetish.get_raped>>
inspection, only to be silenced as the <<man>> forces <<his>> cock down your throat, a durable sheath proving utterly impenetrable to your teeth.<br>
<br>
"@@.generic_male1;Subject is proving recalcitrant, proceeding to surprise inspection.@@"<br>
<br>
You feel your wrists pulled behind your back and cuffed as you are suddenly helplessly restrained and spit-roasted.
<<else>>
inspection.<br>
<br>
"@@.generic_male1;Disappointing. Your waste of our taxpayer salaries has been noted.@@"<br>
<br>
Without further word the two agents depart. You stand confused for a few minutes, and then you get a text from <<=setup.getNpcName('npc_barkeeper', 'first')>> informing you that she is "@@.npc_barkeeper;Taking care of things.@@" and that you can leave.<br>
<br>
<<printThought "Shit, and after her complaints about last year...">><br>
<br>
[<<moveTo "room_citymap" "Leave." 600>>]
<</if>>
<<default>>
ERROR: unexpected last location: <<=$player.llocation>>
<</switch>>
<<if $fetish.get_raped>>
<<if $player.llocation == "event_prostitute_licence_renew_5">>
"@@.generic_male1;Oral cavity confirmed within nominal range.@@" The <<man>> replies, thrusting slightly deeper into your throat as if re-checking to see if you'll gag.<br>
<br>
"@@.generic_female1;Confirmed, proceeding to next stage of inspection.@@"<br>
<br>
[<<moveTo "event_prostitute_licence_renew_rape_2" "Mmmfff!" 180>>]<br>
<<else>>
"@@.generic_male1;Subject subdued, proceeding with inspection under IRS protocols.@@" The <<man>> turns you face down on the bed, leaning closer as <<he>> unzips <<his>> pants "@@.generic_male1;That stands for I Rape <<if $fetish.sissy>>Sissies<<else>>Sluts<</if>> you dumb <<callPlayer "npc_barkeeper">>.@@"<br>
<br>
"@@.generic_female1;Subject is advised not to resist, any action taken may be held against you or your employer. Subject has the right to cum. Subject is informed that any action taken against a licensed government agent will result in immediate charges. Consent to all acts is assumed, but unnecessary. Are you ready to proceed?@@"<br>
<br>
[<<moveTo "event_prostitute_licence_renew_rape_1" "What, no!" 180 "<<set $scene.consent=false>>">>]<br>
[<<moveTo "event_prostitute_licence_renew_rape_1" "Yes..." 180 "<<set $scene.consent=true>>">>]
<</if>>
<</if>>
</div>/*#
#desc: raped by tax agent vip customers
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 13 'very' $SEEN_STRANGER>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'unbelievable' $SEEN_STRANGER>>
<<if $scene.consent>>
<<applyExperience 'submission' 10 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "agent_female" setup.charImageGeneric("agent_male")>>
<div id="invframe" class="scrolltext">
<<if $scene.consent>>
You stop resisting, your compliant response met by the <<man>> sliding <<his>> large cock into your mouth.<br>
<br>
"@@.generic_male1;Confirm that subject has ceased resisting and has submitted to authority. Proceeding with audit.@@"
<<else>>
You continue to resist only for the <<man>> to jam <<his>> large cock down your throat. As the thick rod spreads your jaw you realise that it is augmented with some sort of firm sleeve that is unyielding even as you reflexively bite down.<br>
<br>
"@@.generic_male1;Subject continues to resist, but has been subdued. Proceeding with audit.@@"
<</if>>
<br><br>
"@@.generic_female1;Proceeding with audit, confirmed,@@" the <<if $options.fem>>other <</if>>woman replies. Though the <<mans>> hand on your head has you firmly balls-deep on <<his>> cock you are able to see out out of the corner of your eye the <<if $options.fem>>other <</if>>woman unziping to reveal a large, cybernetic cock before she steps behind you.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
She tosses your plug aside and, with
<<else>>
With
<</if>>
a single thrust, the woman penetrates you. She slides in fast and deep without a trace of mercy. Rather than thrusting further she instead stays pressed against your rear, her hands digging into your hips like clamps as she holds you in place.<br>
<br>
"@@.generic_female1;Insertion complete. Commencing measurement.@@"<br>
<br>
The already above-average rod in your rear begins to swell, growing bigger and bigger
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
until even your skills are pushed to the very limit.
<<else>>
until your skills are pushed to their limits
<</if>>
<<else>>
until it feels like you are going to be split in half
<</if>>
and tears are running down your cheeks.<br>
<br>
"@@.generic_female1;Anal circumference and depth measurements complete.@@"<br>
<br>
"@@.generic_male1;Oral cavity confirmed within nominal range.@@" The <<man>><<if $options.fem>> with her cock in your throat<</if>> replies, thrusting slightly deeper into your throat as if re-checking to see if you'll gag.<br>
<br>
"@@.generic_female1;Confirmed, proceeding to next stage of inspection.@@"<br>
<br>
[<<moveTo "event_prostitute_licence_renew_rape_2" "Continue." 600>>]
</div>/*#
#desc: raped by tax agent vip customers
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 13 'very' $SEEN_STRANGER>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'unbelievable' $SEEN_STRANGER>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.licence_renew_rape = true>>
<<removeItem 'handcuffs_back' true>>
<<deleteItem 'handcuffs_back'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "agent_female" setup.charImageGeneric("agent_male")>>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.vagina>>
Even as the woman remains in your ass with it seeming like the length and girth of a telephone-pole you feel something sliding forward to probe your front hole. Thrusting home with the same brutal efficiency as its sister you are introduced to an entire new definition of the word "stuffed" as it, too, swells, while also probing all the way to your cervix.<br>
<br>
<<if !$player.body_ref.penis>>
As if things weren't bad enough your holes suddenly explode with electrified pain
<</if>>
<</if>>
<<if $player.body_ref.penis>>
<<if $fetish.sph && $player.body_ref.shrink_style == 'spe' && $player.body.penissize < 4>>
"@@.generic_female1;Subject confirmed to have a pathetic micro-dick. Presumed useless, but proceeding to check for sensitivity.@@"
<<else>>
"@@.generic_female1;Proceeding to check subject penis for sensitivity.@@"
<</if>>
You're already whimpering in pain at the stretched abuse of your holes, only to feel a slight touch to the base of your <<getWordMyPenis>> before things burst with electrified pain as what can only be a cattle prod goes off, somehow failing to affect either of your abusers.<br>
<br>
<</if>>
Your scream of agony is muffled by the cock in your throat but you eventually go limp, slipping free of your impalement to collapse on the bed.
<<else>>
"@@.generic_female1;Subject confirmed to be locked in chastity.@@" The woman<<if $options.fem>> behind you<</if>> states in a monotone voice, even as her enlarged cybernetic cock feels like a telephone-pole in your ass.<br>
<br>
"@@.generic_male1;Remark regarding the humorous irony of a chaste whore. That was a joke.@@" The <<if $options.fem>>woman in front<<else>>male<</if>> replies as <<he>> continues to rape your throat.<br>
<br>
"@@.generic_female1;Confirmed. You are, as always, hilarious, but we must resume the inspection.@@"<br>
<br>
You get no further warning before you hear something tap against your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> and then everything it supposedly protects explodes in electrified pain.<br>
<br>
<<printThought "A cattle prod?">> You think as you go limp on the bed, swearing you're going to start smoking as you finally slip free of your double penetration.<br>
<br>
"@@.generic_female1;Sensitivity confirmed. Assessment complete. Thank you for your time, citizen.@@"
<</if>>
Your handcuffs are removed as you lay all but paralysed and the agents leave the room.<br>
<br>
[<<moveTo "event_prostitute_licence_renew_8" "Stagger downstairs." 180>>]
</div>/*#
#desc: agree to vip customer tax inspection
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "agent_female" setup.charImageGeneric("agent_male")>>
<div id="invframe" class="scrolltext">
You obediently give your name and the agents nod in eerie synchronicity.<br>
<br>
"@@.generic_female1;Subject identity confirmed. Proceeding to enquiry about state of facilities. Confirm that this establishment offers an anonymous gloryhole as well as its other amenities.@@"<br>
<br>
[<<moveTo "event_prostitute_licence_renew_4" "Confirm the existence of the gloryhole." 180 "<<set $scene.action='true'>>">>]<br>
[<<moveTo "event_prostitute_licence_renew_4" "Confirm the existence of the gloryhole... and that you work there on occasion." 180 "<<set $scene.action='work'>>">>]<br>
[<<moveTo "event_prostitute_licence_renew_4" "Lie and say there is no gloryhole." 180 "<<set $scene.action='lie'>>">>]
</div>/*#
#desc: vip customer tax inspection - gloryhole response
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "agent_female" setup.charImageGeneric("agent_male")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'work'>>
You confirm that the bar has a gloryhole — and add that you got your start there, yourself.<br>
<br>
"@@.generic_female1;Wonderful. It is always good to hear that local businesses are promoting from within. Now, it is time to proceed to the physical inspection — if you would kindly bend over the bed and present your rear orifice.@@"
<<case 'true'>>
You confirm that the bar has a gloryhole.<br>
<br>
"@@.generic_female1;Gloryhole presence confirmed. Now, it is time to proceed to the physical inspection — if you would kindly bend over the bed and present your rear orifice.@@"
<<case 'lie'>>
You lie and deny that the bar has a gloryhole.<br>
<br>
"@@.generic_female1;I see. Your denial indicates that the gloryhole is being operated unlicensed and without knowledge of the owner.@@" She states.<br>
<br>
"@@.generic_male1;Confirmed for follow-up investigation.@@" The <<if $options.fem>>other <</if>><<man>> adds.<br>
<br>
"@@.generic_female1;We shall now proceed to the physical inspection — if you would kindly bend over the bed and present your rear orifice.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "event_prostitute_licence_renew_5" "Bend over as instructed." 180>>]<br>
[<<moveTo "event_prostitute_licence_renew_abort" "You do not wish to continue this inspection." 180>>]
</div>/*#
#desc: vip customer tax inspection - pegged
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'unbelievable' $SEEN_STRANGER>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "agent_female" setup.charImageGeneric("agent_male")>>
<div id="invframe" class="scrolltext">
You bend over the bed and the woman spreads your rear with both hands.<br>
<br>
"@@.generic_female1;Subject is compliant, and has presented rear for inspection obediently, proceeding to measuring.<<if $scene.removePlug>> Removing plug.<</if>>@@"<br>
<br>
You hear a zip and a mechanical whirring and look back just in time to see the woman reveal a cybernetic strap-on. The device is sweating some sort of grease and it easily slides into your rear.<br>
<br>
You barely have a chance to adjust to its metallic presence when it begins to swell, growing bigger and bigger
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
until even your skills are pushed to the very limit.
<<else>>
until your skills are pushed to their limits
<</if>>
<<else>>
until it feels like you are going to be split in half
<</if>>
and you are panting in quick gasps.<br>
<br>
"@@.generic_female1;Anal circumference and depth measurements complete. Subject will present opposite orifice for oral inspection.@@"<br>
<br>
[<<moveTo "event_prostitute_licence_renew_6" "Spread your lips." 180>>]<br>
[<<moveTo "event_prostitute_licence_renew_abort" "You do not wish to continue this inspection." 180>>]
</div>/*#
#desc: vip customer tax inspection - oral
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 13 'very' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "agent_female" setup.charImageGeneric("agent_male")>>
<div id="invframe" class="scrolltext">
Panting slightly you open your mouth and <<if $options.fem>>other <</if>><<mans>> above average, and strangely firm cock slides forcefully into your throat.<br>
<br>
"@@.generic_male1;Oral cavity confirmed within nominal range.@@" The <<man>> replies, thrusting slightly deeper into your throat as if re-checking to see if you'll gag.<br>
<br>
"@@.generic_female1;Confirmed, proceeding to next stage of inspection.@@"<br>
<br>
The <<mans>> hand on the back of the head leaves you effectively gagged and you can only moan helplessly
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.vagina>>
as the telephone-pole-like dong in your ass is joined by a second sliding into your <<getWordVagina>>. The rear dildo shrinks slightly, as if to provide relief, but you still feel beyond full as the full depth and breadth of your vagina is filled; from labia to cervix.<br>
<br>
<</if>>
<<if $player.body_ref.penis>>
<<if !$player.body_ref.vagina>>
as the telephone-pole-like dong in your ass holds you in place.
<</if>>
<<if $fetish.sph && $player.body_ref.shrink_style == 'spe' && $player.body.penissize < 4>>
"@@.generic_female1;Subject confirmed to have a pathetic micro-dick. Presumed useless, but proceeding to check for sensitivity.@@"
<<else>>
"@@.generic_female1;Proceeding to check subject penis for sensitivity.@@"
<</if>>
Still impaled from both ends you feel some sort of sheath slide over your <<getWordMyPenis>>, stroking it inside and out in a somewhat surreal experience.
<</if>>
<<else>>
as the completely filling dong in your ass holds you in place.<br>
<br>
"@@.generic_female1;Subject confirmed to be locked in chastity.@@" The woman<<if $options.fem>> behind you<</if>> states in a monotone voice, even as her enlarged cybernetic cock feels like a telephone-pole in your ass.<br>
<br>
"@@.generic_male1;Remark regarding the humorous irony of a chaste whore. That was a joke.@@" The <<if $options.fem>>woman in front<<else>>male<</if>> replies as <<he>> continues to fuck your throat.<br>
<br>
"@@.generic_female1;Confirmed. You are, as always, hilarious, but we must conclude the inspection.@@"<br>
<br>
You finally get to take a breath as the two agents step away, sliding free of your mouth and rear and causing you to slump to the bed, feeling empty and somewhat violated by the dispassionate way they used you.
<</if>>
<br><br>
[<<moveTo "event_prostitute_licence_renew_7" "Continue." 180>>]
</div>/*#
#desc: vip customer tax inspection - tip
#status: FINISHED 0.8.1.0
#ignore_spell: b
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<set $scene.bonus = (setup.getTotalValue("oral") + setup.getTotalValue("anal")) / 20>>
<<set $scene.whoring_level = 15 + Math.floor(2*$scene.bonus)>>
<<applyExperience 'whoring' $scene.whoring_level 'very' $EXPOSED>>
<<set $scene.pay = $scene.bonus * $scene.client.base_pay>>
<<addCredits $scene.pay>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.licence_renew = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "The Usual Place, Private Room">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "agent_female" setup.charImageGeneric("agent_male")>>
<div id="invframe" class="scrolltext">
"@@.generic_male1;Inspection complete. Subject is confirmed to be a compliant<<if $scene.bonus >= 2>>, high-capacity<<elseif $scene.bonus >= 1>> and functional<<else>>, though novice<</if>> <<callPlayer "npc_barkeeper">>, consistent with regulations.@@"<br>
<br>
"@@.generic_female1;Thank you for your cooperation.@@" The woman adds as you watch her cyber-dong retract back under her clothes. "@@.generic_female1;As described in the Federal Professional Sex Act, Section 2258 Subsection 69, Paragraph 7, Clause 3 you are entitled to recompense for your efforts according to the chart in Figure 22-b.@@"<br>
<br>
She hands you <<=$scene.pay>> credits and then turns sharply towards the door.<br>
<br>
The two agents leave the room and you catch your breath <<if $scene.removePlug>>and replace your plug<</if>>. Feeling unharmed, but thoroughly used.<br>
<br>
[<<moveTo "event_prostitute_licence_renew_8" "Head downstairs." 180>>]<br>
</div>/*#
#desc: vip customer tax inspection - barkeeper thanks
#status: FINISHED 0.8.1.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 1000>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You stagger downstairs and back to the bar. <<=setup.getNpcName("npc_barkeeper","first")>> pours you a drink and nods sorrowfully.<br>
<br>
"@@.npc_barkeeper;You look like hell. I'm sorry about that these government inspections well...@@" She nods as you gratefully drain your glass. "@@.npc_barkeeper;Anyway, thanks again for taking care of this. Let's hope this keeps those goons off my back for a while.@@" She slides a sizable stack of credits across the bar. "@@.npc_barkeeper;Here, you earned it... and obviously don't worry about my cut for this job.@@"<br>
<br>
You nod, finishing your drink and pocketing the credits.<br>
<br>
[<<moveTo "room_usual_place_inside" "Look around the bar." 180>>]
</div>/*#
#desc: ride to manager's mansion for maid job
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png">>
<div id="invframe" class="scrolltext">
You confirm things and <<=setup.getNpcName('npc_barkeeper', 'first')>> summons a vehicle; swiftly whisking you away from the bar and off towards the VERY rich part of town.<br>
<br>
As you get closer things feel familiar, your heart beating even faster when a familiar gate opens and you roll up the drive of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> estate.<br>
<br>
Her mansion looms — enticing and intimidating all at once... but the vehicle pulls past the front entrance, instead circling around lower to what seems to be a servant's entrance, the light from inside streaming out through a single open door...<br>
<br>
[<<moveTo "event_vip_manager_maid_2" "Get out of the vehicle and approach the open door." 180>>]
</div>/*#
#desc: manager welcomes you for maid job
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You step through the door to find yourself in the back of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> kitchen. Your glorious <<=setup.getNpcName('npc_manager', 'title')>> stands at the far side of the room looking both casual and regal in a robe as she beckons you forward into the dining room.<br>
<br>
"@@.npc_manager;Hello, my dear... after gifting you that lovely maid's outfit, well... I just had to put you to work.@@"<br>
<br>
She fixes a crease in your ostentatious costume and smiles. "@@.npc_manager;You make just about anything look good, but this... simply perfection.@@"<br>
<br>
Your heart flutters as she runs a finger up <<if setup.calcBreastSize() != "none">>between your breasts<<else>>your chest<</if>> to flick of the tip of your chin. "@@.npc_manager;So... since I have you as my lovely maid for the evening which do you think is your most important duty? To clean... or to serve?@@"<br>
<br>
[<<moveTo "event_vip_manager_maid_3_clean_1" "As a maid, your first duty is to make everything clean and spotless." 180>>]<br>
[<<moveTo "event_vip_manager_maid_3_serve_1" "As HER maid, your first duty is to serve." 180>>]
</div>/*#
#desc: manager maid job - serve start
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_FRIEND>>
<<addItem 'armbinder_pink'>>
<<wearItem 'armbinder_pink' true>>
<<addItem 'maid_gag_pink'>>
<<wearItem 'maid_gag_pink' true>>
<<addItem 'leash_pink'>>
<<wearItem 'leash_pink' true>>
<<set $scene.replacePlug = !setup.checkItemTypeTag('plug', ['ems']) || !setup.checkItemTypeTag('plug', ['vibrating'])>>
<<if $scene.replacePlug>>
<<if !setup.checkItemOwned('vibrating_plug_large')>>
<<addItem 'vibrating_plug_large'>>
<<else>>
<<if setup.inWardrobe('vibrating_plug_large')>>
<<wardrobeToItem 'vibrating_plug_large'>>
<</if>>
<</if>>
<<wearItem 'vibrating_plug_large' true>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You curtsy and reply softly that your first duty is, always, to serve.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Oh, I just knew you were going to say that. You really are such a perfect delight.@@" She turns and walks over to a cabinet "@@.npc_manager;over here, my dear — while your attire may be perfect, you require a few additional tools if you are to serve as I desire.@@"<br>
<br>
You hurry over and she produces an armbinder to match your outfit... followed by a thick panel gag, the heavy straps and mouth-filling interior there to provide stability to the feather-duster that is soon protruding from the front of your face.<br>
<br>
"@@.npc_manager;There we go,@@" she says with a smile, once you are securely silenced, and your arms made useless. "@@.npc_manager;Now come with me — the library is in quite the need of a good dusting...@@"<br>
<br>
<<if $scene.replacePlug>>
"@@.npc_manager;And one final detail...@@"
<<if $scene.plugged>>
replacing the plug in your rear with a fresh model.
<<else>>
sliding a large plug into your rear.
<</if>>
"@@.npc_manager;Always good to have you filled and under my control.@@" She states with a wink and a click of a remote that has your rear buzzing for a couple tantalising seconds.
<</if>>
She clips a leash to your collar to leave you little choice but to follow after...<br>
<br>
[<<moveTo "event_vip_manager_maid_3_serve_2" "Good maids are obedient in all things..." 600>>]
</div>/*#
#desc: manager maid job - choose how hard you clean obedient
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 5>>
<<removeItem 'leash_pink' true>>
<<deleteItem 'leash_pink'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Library'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_library.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> leads you through the house to a jaw-dropping old-fashioned library. She unclips your leash and gives your rear a quick swat to make you jump a step forward.<br>
<br>
"@@.npc_manager;Here we are — I spend so much time at work the library gets quite dusty! So I will leave you to it and check in later.@@"<br>
<br>
She walks out of the room and locks the door behind to leave you alone... a moment later your plug starts softly buzzing and you wobble, your bound arms making balance trickier.<br>
<br>
<<printThought "Guess I won't be bored while I'm busy cleaning...">><br>
<br>
You look around the library and consider what to do.<br>
<br>
[<<moveTo "event_vip_manager_maid_3_serve_3" "Rise onto your tippy-toes and stoop low to dust every inch you can." 3600 "<<set $scene.clean=true>>">>]<br>
[<<moveTo "event_vip_manager_maid_3_serve_3" "Just mince around and dust whatever is around eye level." 3600 "<<set $scene.clean=false>>">>]
</div>/*#
#desc: manager maid job - obedient cleaning
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.clean>>
<<applyFatigue 100>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<applyExperience 'submission' 15 'terrible' $ALONE>>
<<else>>
<<applyFatigue 50>>
<<applyExperience 'bondage' 15 'normal' $ALONE>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Library'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_library.png">>
<div id="invframe" class="scrolltext">
<<if $scene.clean>>
If your arms weren't helplessly bound behind your back you'd roll up your sleeves, instead you mince about with determination; biting down on your gag for maximum control over the attached feather duster as you move through the library, stooping low and craning your neck high as you try to dust off each gorgeous leather tome.<br>
<br>
<<if setup.getTotalValue("stamina") > 10 && setup.getTotalValue("dexterity") > 10 && setup.getTotalValue("heels") > 15>>
Your restraints make the whole procedure far from efficient, but your time at the gym — and expertise with heels — means you make steady progress over the next hour, just managing to finish the final shelf when you hear the sound of the door opening for <<=setup.getNpcName("npc_manager","formal")>> return.
<<else>>
Your restraints make the whole procedure far from efficient,
<<if setup.getTotalValue("stamina") > 10>>
though you at least have the stamina to push through.
<<else>>
and your nostrils are soon flaring in a desperate effort to keep up with your exertion.
<</if>>
<<if setup.getTotalValue("dexterity") > 10>>
Your practice in the gym at least means you have the balance to repeatedly stoop or stretch, while
<<else>>
Every time you bend over is a fraught challenge as you wish you had spent more time practicing at the gym, while
<</if>>
<<if setup.getTotalValue("heels") > 15>>
your skill with heels keeps you on your feet.
<<elseif setup.getTotalValue("heels") > 10>>
your lack of practice with heels has you constantly teetering on the edge of falling.
<<else>>
your lack of practice with heels leaves you frequently leaning against something for support.
<</if>>
An hour passes slowly as you make it but partway around the room before you hear <<=setup.getNpcName("npc_manager","formal")>> at the door.
<</if>>
<<else>>
With your arms helplessly bound cleaning is inefficient and slow, so you focus on just dusting whatever books are at eye level rather than risk falling over by stooping or stretching to reach the other shelves.<br>
<br>
Mincing back and forth through the room over the course of the next hour you're a bit disappointed to be struggling so much without <<=setup.getNpcName("npc_manager","formal")>> being around to watch your helplessness... though, you suppose her lack of a physical presence does not mean she doesn't have her eye on you, and you wonder if you perhaps should have tried harder...<br>
<br>
You hear a key at the door and turn to see <<=setup.getNpcName("npc_manager","formal")>> enter the room.
<</if>>
<br><br>
[<<moveTo "event_vip_manager_maid_3_serve_4" 'Greet <<=setup.getNpcName("npc_manager","formal")>>.' 180>>]
</div>/*#
#desc: manager maid job - obedient cleaning assessment
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Library'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_library.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You bow in greeting as best your restraints allow and <<=setup.getNpcName("npc_manager","formal")>> smiles.<br>
<br>
"@@.npc_manager;You look simply lovely like that... if only you could do your secretary work with your hands so wonderfully bound — it gives you just the most amazing figure! And would keep you out of all manner of trouble!@@"<br>
<br>
She laughs in amusement and then makes a quick circuit of the room,
<<if $scene.clean>>
<<if setup.getTotalValue("stamina") > 10 && setup.getTotalValue("dexterity") > 10 && setup.getTotalValue("heels") > 15>>
smiling in satisfaction as she confirms you have dusted the entire room.<br>
<br>
"@@.npc_manager;Once again, you impress. Come, such stellar work deserves a reward.@@"<br>
<br>
[<<moveTo "event_vip_manager_maid_3_serve_5" "Follow after her." 600>>]
<<else>>
frowning as she quickly comes to the end of your progress.<br>
<br>
"@@.npc_manager;That is quite a bit less progress than I expected... very inefficient. Let us see what we can do about this...@@"<br>
<br>
[<<moveTo "event_vip_manager_maid_3_serve_5_punish_1" "Continue." 1800>>]
<</if>>
<<else>>
running her finger over a few shelves and frowning in disappointment.<br>
<br>
"@@.npc_manager;It would seem you only dusted a handful of shelves, and even those none too well... quite disappointing, disappointing indeed.@@"<br>
<br>
You hold your breath as she takes a final look around the room. "@@.npc_manager;Let us see if we can improve on things a little...@@"<br>
<br>
[<<moveTo "event_vip_manager_maid_3_serve_5_punish_1" "Continue." 1800>>]
<</if>>
</div>/*#
#desc: manager maid job - obedient cleaning reward
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.manager_maid_serve = true>>
<<removeItem 'armbinder_pink' true>>
<<deleteItem 'armbinder_pink'>>
<<removeItem 'maid_gag_pink' true>>
<<deleteItem 'maid_gag_pink'>>
<<addItem 'penis_gag_pink'>>
<<wearItem 'penis_gag_pink' true>>
<<playerOrgasm>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You take a step to obediently follow after <<=setup.getNpcName('npc_manager', 'formal')>> and your work catches up to you. Your ankle comes down barely wrong, your tired legs unable to catch up as you find yourself pitching towards the ground... only for <<=setup.getNpcName('npc_manager', 'formal')>> to be there to catch you.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> all but scoops you up with her strong arms, cradling you with a smile as she starts walking towards the stairs. "@@.npc_manager;You worked so hard, and served so very well... Now, time for a nice relaxing reward...@@"<br>
<br>
She carries you upstairs and you find yourself lying back on the bed — your arms freed and your feather-duster replaced with a dildo... a dildo that is soon disappearing inside your <<=setup.getNpcName('npc_manager', 'title')>> as she sits back over your face.<br>
<br>
"@@.npc_manager;Yesss...@@" she softly moans. "@@.npc_manager;You serve so, so, well... enjoy your reward.@@"<br>
<br>
Your vibrations return and you find yourself moaning your pleasure past your gag and up into <<=setup.getNpcName('npc_manager', 'formal')>> as she continues to ride your face.<br>
<br>
You cum once, twice... and then thrice before <<=setup.getNpcName('npc_manager', 'formal')>> climaxes and steps
<<set _morning = setup.setNextDate($now, 0, 7, 30)>>
<<if setup.hasFreeTime(_morning, $player, $currentTasks, 3600) && $now.getUTCDay() >= 1 && $now.getUTCDay() < 5>>
off, nestling up next to you, her arms pulling you in tight.<br>
<br>
"@@.npc_manager;Shhh, we do not have anything until work tomorrow, just... relax...@@"<br>
<br>
Your eyes heavy you faintly feel your gag removed and lips lightly brush your cheek before you slip off to sleep.<br>
<br>
<<if $now.getUTCHours() < 4>>
<<set _morning = setup.setNextDate($now, 0, 5, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 5, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_vip_manager_maid_4" "Sleep." _timeToMorning "<<removeItem 'penis_gag_pink' true>><<deleteItem 'penis_gag_pink'>><<applyFatigue -100>><<applyStress -20>>">>]
<<else>>
off and stands over you.<br>
<br>
"@@.npc_manager;Lovely,@@" she whispers. "@@.npc_manager;You have done so very well today... but now it is time for you to go.@@"<br>
<br>
She reaches down, helping you back to your feet and removing your remaining restraints before guiding you down to the waiting car, your pocket heavy with credits.<br>
<br>
[<<moveTo "room_foyer" "Ride home." 600 "<<addCredits $scene.client.base_pay>><<removeItem 'penis_gag_pink' true>><<deleteItem 'penis_gag_pink'>>">>]
<</if>>
</div>/*#
#desc: manager maid job - spend night with manager
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<<washClothes>>
<<set _x = setup.cleanSexToys()>>
<<addItem 'platform_wedge_heels_pink'>>
<<addItem 'satin_blouse_pink'>>
<<addItem 'skirt_leather_pink'>>
<<addItemSet 'satin_lingerie_pink'>>
<<set $npc_manager.flags.firstcuteoutfit++>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You float in sleep. Once or twice you wake up to feel <<=setup.getNpcName('npc_manager', 'formal')>> tenderly wrapped around you as you return her warm embrace and slide back into the realm of slumber with a smile.<br>
<br>
You wake to find <<=setup.getNpcName('npc_manager', 'formal')>> lying next to you on the bed staring at you with a smile.<br>
<br>
"@@.npc_manager;Good morning my dear — as much as I adore having you as my maid, it is time for you to get changed to again be my Secretary...@@"<br>
<br>
A sadly brief shared shower later and <<=setup.getNpcName('npc_manager', 'formal')>> has set out a familiar outfit for you to get dressed for work.<br>
<br>
<<if 'office' == setup.analyzeWornTags(['casual','office','formal','schoolgirl']) && setup.computeWorstGender() == "female" && setup.checkItemTypeWorn("bra") && setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("stockings") && setup.getItemFromType("shoes") && setup.getItemObjFromType("shoes").hasOwnProperty("heels") && setup.checkItemTypeWorn("plug")>>
[<<moveTo "event_vip_manager_maid_5" "Head to work." 600 "<<setScene true>>">>]<br>
<<else>>
<<hint $options "Change into office-approved clothing using the inventory.">><br>
<</if>>
<<if $options.ezchange>>
[<<moveTo "event_vip_manager_maid_5" "Get changed into the outfit she laid out for you." 600 "<<removeAllClothing>><<wearItem 'platform_wedge_heels_pink' true>><<wearItem 'satin_blouse_pink' true>><<wearItem 'skirt_leather_pink' true>><<wearItemSet 'satin_lingerie_pink'>>">>]
<</if>>
</div>/*#
#desc: manager maid job - work after spending night
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() == 5>>
<<postponeTask 'manager_morning_inspection_task' 3>>
<<else>>
<<postponeTask 'manager_morning_inspection_task' 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
A quick car ride later and you're back at the office, <<=setup.getNpcName('npc_manager', 'formal')>> leaving you off at your desk with a smile as she enters her inner office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start work." 600 "<<setScene true>>">>]
</div>/*#
#desc: manager maid job - obedient cleaning punish
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.manager_maid_serve_pun = true>>
<<if $scene.clean>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_FRIEND>>
<<else>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'terrible' $SEEN_FRIEND>>
<</if>>
<<applyFatigue 150>>
<<applyStress 10>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Library'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_library.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> brandishes a remote and you are quickly hopping back to work, finding a second wind as she shocks you back and forth through the library — your gag keeping your meeps of pain quite soft as you hurry to <<if $scene.clean>>finish what you started<<else>>make up for lost time<</if>>.<br>
<br>
<<if $scene.clean>>
You are quite thankful for your earlier efforts as, with <<=setup.getNpcName("npc_manager","formal")>> constant supervision and "assistance" you are able to finish dusting the last book just before your legs give out in exhaustion.
<<else>>
You regret your earlier lackadaisical efforts as <<=setup.getNpcName("npc_manager","formal")>>, perhaps appropriately, acts as you slave master; punishing you to your limit as you stagger around the room, desperately trying to dust in between painful writhings at yet another shock.<br>
<br>
You're perhaps two thirds of the way through doing things "properly" when your legs give out, your aching calves and sore thighs failing you as your bound arms flail uselessly and you fall...
<</if>>
<br><br>
In a blink of an eye <<=setup.getNpcName("npc_manager","formal")>> is there to catch you.<br>
<br>
<<if $scene.clean>>
In her arms the stimulation in your rear ramps up to another level, and you find yourself writhing to a mind-blowing electrically powered paingasm that leaves you nerves fried and panting with exhaustion. She smiles in amusement before lifting you up and carrying you out of the room.
<<else>>
She frowns down at you, finishing you off with a final blast of painful shocks before she carries you out of the room.
<</if>>
<br><br>
[<<moveTo "event_vip_manager_maid_3_serve_5_punish_2" "Continue." 600>>]
</div>/*#
#desc: manager maid job - obedient cleaning sent home after punish
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'armbinder_pink' true>>
<<deleteItem 'armbinder_pink'>>
<<removeItem 'maid_gag_pink' true>>
<<deleteItem 'maid_gag_pink'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
Back in the dining room <<=setup.getNpcName('npc_manager', 'formal')>> removes your bondage and guides you back to your feet.<br>
<br>
You're exhausted, and also demoralised at your failure to complete your task as she leads you out of the servant's door, a car already waiting to take you home...<br>
<br>
"@@.npc_manager;For your time,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states, tucking credits into your dress just before the vehicle glides away.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: manager maid job - choose how hard you clean
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plugged = setup.checkItemTypeWorn('plug')>>
<<set $scene.replacePlug = !setup.checkItemTypeTag('plug', ['ems']) || !setup.checkItemTypeTag('plug', ['vibrating'])>>
<<if $scene.replacePlug>>
<<if !setup.checkItemOwned('vibrating_plug_large')>>
<<addItem 'vibrating_plug_large'>>
<<else>>
<<if setup.inWardrobe('vibrating_plug_large')>>
<<wardrobeToItem 'vibrating_plug_large'>>
<</if>>
<</if>>
<<wearItem 'vibrating_plug_large' true>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You curtsy and reply softly that, as a maid, you show your service by cleaning for your owner.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;What a delightful phrasing. In that case... I shall leave you to it. This room, the foyer and the living room are all in quite the need of cleaning. Remember to work hard — I may not be able to resist dropping in to see how you are doing.@@"
<<if $scene.replacePlug>>
She starts to turn away, only to only go as far as a cabinet, coming back holding a sizable anal plug. "@@.npc_manager;Since you do not appear equipped with something properly functional, well... much like a <<if $fetish.sissy>>SISSI <</if>>Secretary, a <<if $fetish.sissy>>sissy <</if>>maid is not fully dressed if she is not... full.@@"<br>
<br>
The new plug is soon installed in your rear, a quick zap and a buzz confirming that all is functional before <<=setup.getNpcName('npc_manager', 'formal')>> leaves you in the room with a set of cleaning supplies.
<<else>>
She winks and walks away, leaving you alone in the dining room, as you notice that some cleaning supplies have already been set out for you.
<</if>>
<br><br>
[<<moveTo "event_vip_manager_maid_3_clean_2" "Roll up your proverbial sleeves and clean as hard as you can." 3600 "<<set $scene.clean=true>>">>]<br>
[<<moveTo "event_vip_manager_maid_3_clean_2" "Clean in a more circumspect, casual manner." 1800 "<<set $scene.clean=false>>">>]
</div>/*#
#desc: manager maid job - cleaning
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Dining Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_dining.png">>
<div id="invframe" class="scrolltext">
<<if $scene.clean>>
You gather materials and get to work, starting with the dining room to sweep, dust, scrub and the rest.
<<else>>
You leisurely look over the materials and decide that dusting seems like the easiest option, grabbing a feather duster and working your way through the dining room.
<</if>>
<br><br>
You finish up the dining room and move on to the living room, where <<=setup.getNpcName('npc_manager', 'formal')>> just happens to be lounging and reading.<br>
<br>
[<<moveTo "event_vip_manager_maid_3_clean_3" "Take the opportunity to tease her a bit..." 3600 "<<set $scene.tease=true>>">>]<br>
[<<moveTo "event_vip_manager_maid_3_clean_3" "Ignore the distractions and focus on your work." 3600 "<<set $scene.tease=false>>">>]
</div>/*#
#desc: manager maid job - cleaning flirt or not
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Living Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_living.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<if $scene.tease>>
<<if $scene.clean>>
Balancing rigorous cleaning with showing off like a sexy<<if $fetish.sissy>>, sissy<</if>> maid is certainly a challenge... but one you attack with gusto.<br>
<br>
You prim and prance, making it a point to bend over frequently with your butt perfectly angled towards where <<=setup.getNpcName('npc_manager', 'formal')>> is sitting. The occasional burst of vibrations from your plug has you gasping in arousal... and yet every time you glance towards <<=setup.getNpcName('npc_manager', 'formal')>> she appears focused on her work, pretending that she isn't paying attention to you.
<<else>>
You already were slacking off cleaning... so you just put that spare focus into evoking the flirtiest, sexiest nigh-parody of a <<if $fetish.sissy>>sissy <</if>>maid you can manage.<br>
<br>
You dust your way around the room, mincing and wiggling your butt the whole time... which results in several bursts of gasp-inducing vibrations... yet every time you look back <<=setup.getNpcName('npc_manager', 'formal')>> appears focused on her work, pretending that she isn't paying attention to you.
<</if>>
<<else>>
You focus on your work,<<if $scene.clean>> diligently scrubing, straightening and polishing<<else>> even if you are not working particularly hard<</if>>, as you work you way through the living room and on to the next room.
<</if>>
<br><br>
[<<moveTo "event_vip_manager_maid_3_clean_4" "Continue on cleaning." 3600>>]
</div>/*#
#desc: manager maid job - obedient cleaning assessment
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.clean && $scene.tease>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Library'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_library.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<if $scene.clean>>
As you finish cleaning the library you hear a sound at the door.
<<if $scene.tease>>
As you finish cleaning the library you hear a sound at the door. With a smile on your face you wiggle your butt and start to turn to greet <<=setup.getNpcName('npc_manager', 'formal')>>... but you freeze — she has "accessorised" her casual robe with a very obvious, and very familiar strap-on.<br>
<br>
A moment later and you are bent over a table, taking it hard and deep as she leans in to whisper in your ear.<br>
<br>
"@@.npc_manager;You have been asking for this the whole time! Strutting around like a sexy <<if $fetish.sissy>>sissy <</if>>slut, it was all I could do to keep my hands off of you this long so that you could actually finish! Now... now I am going to peg the hell out of my cute girl.@@"<br>
<br>
You moan in thanks as she picks up the pace. You swear she cums herself, but that seems to be just the signal to change venue as she literally pull you to your feet and — with her artificial dong still pumping and re-arranging your insides — marches you upstairs to resume on her bed, railing you until you're out of breath<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>, cum<</if>> and energy.
<<else>>
Putting on your best professional look you turn to greet <<=setup.getNpcName('npc_manager', 'formal')>> to find her grinning back at you, striding purposefully towards you until you find yourself face to face.<br>
<br>
"@@.npc_manager;So, my dear...@@" she starts, gently, yet possessively, brushing her fingers against your hair. "@@.npc_manager;You have been so diligently cleaning all day... and yet there is one place left to clean — me.@@"<br>
<br>
In a whirlwind you find yourself on your knees before her, tongue extended as you give her a "bath" right there in the library — worshipfully starting with one foot and moving up one leg to really focus on that "mysterious" wet spot in the middle, before moving back down the other leg.<br>
<br>
From the library things move to the bedroom as <<=setup.getNpcName('npc_manager', 'formal')>> sheds her clothes, your lips and tongue finding their way across her whole body to her soft gasps and whispers of encouragement.<br>
<br>
<</if>>
<br><br>
[<<moveTo "event_vip_manager_maid_3_clean_5_reward" "Continue." 600>>]
<<else>>
You are partway through with the library when you hear a sound at the door, <<=setup.getNpcName('npc_manager', 'formal')>> walking into the room looking quite stern, remote in hand.<br>
<br>
<<if $scene.tease>>
You try to do a sexy pose but <<=setup.getNpcName('npc_manager', 'formal')>> is having none of it as she sternly admonishes you.<br>
<br>
"@@.npc_manager;I hire you to clean and this is the job you do? Spending all your time fluttering your eyelashes and wiggling your bum like a cheap trollop!@@" She shakes her head. "@@.npc_manager;Quite disappointing, and quite the surprise that you should be so... ineffective, given how well you serve me at the office. I suppose different tasks are different skills, but I remain saddened at your failure.@@"
<<else>>
You turn with a look of innocence but <<=setup.getNpcName('npc_manager', 'formal')>> is having none of it as she sternly admonishes you.<br>
<br>
"@@.npc_manager;I hire you to clean and this is the job you do? You said you wished to focus on cleaning... and yet you have done anything but!@@"
<</if>>
She shakes her head. "@@.npc_manager;Quite disappointing, and quite the surprise that you should be so... ineffective, given how well you serve me at the office. I suppose different tasks are different skills, but I remain saddened at your failure. No matter — your time is at an end, let me give you your pay and you may be on your way.@@"<br>
<br>
You're a bit crestfallen at your failure as she gives you a sizable stack of credits and then bundles you back off in the car which takes you directly home.<br>
<br>
[<<moveTo "room_foyer" "Ride home." 600 "<<addCredits $scene.client.base_pay>>">>]
<</if>>
</div>/*#
#desc: manager maid job - obedient cleaning sleep
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.manager_maid_clean = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_naked")>>
<div id="invframe" class="scrolltext">
When you finally slump into the bed in exhaustion <<=setup.getNpcName("npc_manager","formal")>> is there beside you — pulling you in tight as she kisses you behind the ear and whispers her gratitude.<br>
<br>
<<set _morning = setup.setNextDate($now, 0, 7, 30)>>
<<if setup.hasFreeTime(_morning, $player, $currentTasks, 3600) && $now.getUTCDay() >= 1 && $now.getUTCDay() < 5>>
"@@.npc_manager;Shhh, we do not have anything until work tomorrow, just... relax...@@"<br>
<br>
Your eyes heavy you faintly feel your gag removed and lips lightly brush your cheek before you slip off to sleep.<br>
<br>
<<if $now.getUTCHours() < 4>>
<<set _morning = setup.setNextDate($now, 0, 5, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 5, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_vip_manager_maid_4" "Sleep." _timeToMorning>>]
<<else>>
"@@.npc_manager;Lovely,@@" she whispers. "@@.npc_manager;You have done so very well today... but now it is time for you to go.@@"<br>
<br>
Despite her words, she seems in little rush, holding you for several more long, glorious minutes before finally helping you back to your feet and escorting you back downstairs to the waiting car, your pocket heavy with credits.<br>
<br>
[<<moveTo "room_foyer" "Ride home." 600 "<<addCredits $scene.client.base_pay>>">>]
<</if>>
</div><<if State.hasPlayed("theme_psychiatrist_secret_theme_manager_psych_2") && State.hasPlayed("theme_manager_private_psychiatrist_manager_1") && !State.hasPlayed("event_psychiatrist_manager_reunion_1")>>
<<if !State.hasPlayed("event_vip_high_security_1")>>
[@@.link_locked;You have yet to figure out a suitably secure location for <<=setup.getNpcName("npc_manager", "formal")>> and <<=setup.getNpcName("npc_psychiatrist", "formal")>> to meet.@@]<br>
<<elseif $scene.beforePhoneCallLocation != "room_usual_place_inside">>
[@@.link_locked;You should be ready at the bar at The Usual Place if you are going to try and set up <<=setup.getNpcName("npc_manager", "formal")>> and <<=setup.getNpcName("npc_psychiatrist", "formal")>>.@@]<br>
<<else>>
[<<moveTo "event_call_psychiatrist_makeup_manager" 'You had something else you wanted to discuss... (secretly set up a meeting with <<=setup.getNpcName("npc_manager", "formal")>>)' 30>>]<br>
<</if>>
<</if>>/*#
#desc: setup psych w/manager
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if !$scene.calledFirst>>
<<set $scene.calledFirst = "psych">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.calledFirst == "psych">>
You call <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and ask
<<else>>
You ask <<=setup.getNpcName('npc_psychiatrist', 'formal')>>
<</if>>
if she could meet you for drinks at the Usual Place...<br>
<br>
<<if $npc_barista.stage <= 4 || $npc_barista.stage == 10>>
"@@.npc_psychiatrist;Hmm... I suppose I am technically off for the evening... so no harm... I will see you in a few minutes.@@"<br>
<br>
<<if State.hasPlayed("event_call_manager_makeup_psych")>>
[<<moveTo "event_psychiatrist_manager_reunion_1" 'Now to wait...' 600 "<<set $currentcall = false>>">>]<br>
<<else>>
[<<moveTo "event_call_manager_makeup_psych" 'Now to call <<=setup.getNpcName("npc_manager", "formal")>>...' 180>>]<br>
<</if>>
<<else>>
"@@.npc_psychiatrist;Today? No... I do not have time for such... and I question how you do, either. I would hope you would be focusing your efforts on <<=setup.getNpcName('npc_barista', 'nickname')>>...@@"<br>
<br>
She hangs up.<br>
<br>
<<printThought "Hmm... I guess I should take care of <<=setup.getNpcName('npc_barista', 'nickname')>> first?">><br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: setup manager w/psych
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if !$scene.calledFirst>>
<<set $scene.calledFirst = "manager">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.calledFirst == "manager">>
You call <<=setup.getNpcName('npc_manager', 'formal')>> and ask
<<else>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>>
<</if>>
if she could meet you for drinks at the Usual Place...<br>
<br>
<<if $npc_barista.stage <= 4 || $npc_barista.stage == 10>>
"@@.npc_manager;The Usual Place? I remember <<=setup.getNpcName('npc_admin', 'formal')>> mentioning it... not quite the sort of establishment I would normally frequent... but I could use a bit of unwinding before the weekend. I do hope they have good scotch...@@"<br>
<br>
She hangs up... looks like your plan is in motion...<br>
<br>
<<if State.hasPlayed("event_call_psychiatrist_makeup_manager")>>
[<<moveTo "event_psychiatrist_manager_reunion_1" 'Now to wait...' 600 "<<set $currentcall = false>>">>]<br>
<<else>>
[<<moveTo "event_call_psychiatrist_makeup_manager" 'Now to call <<=setup.getNpcName("npc_psychiatrist", "formal")>>...' 180>>]<br>
<</if>>
<<else>>
"@@.npc_manager;I am afraid now is not a good time, perhaps a later date.@@" There is a hint of regret in her voice as she hangs up.<br>
<br>
<<printThought "Hmm... it sounds like she wants to meet but... maybe if I tried in a few weeks?">><br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: wait for pysch and manager to arrive
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You move to the back of the bar and wait. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is the first to arrive, pausing in the doorway and looking around in puzzlement before moving to the bar and pulling out her phone.<br>
<br>
You hurriedly silence things and respond to her text that you'll be with her in a moment... and then look up as <<=setup.getNpcName('npc_manager', 'formal')>> walks into the room...<br>
<br>
[<<moveTo "event_psychiatrist_manager_reunion_2" 'Now to watch the fireworks...' 180>>]
</div>/*#
#desc: psych and manager confront
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImageManager() setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You imagine <<=setup.getNpcName('npc_manager', 'formal')>> is used to turning heads in most rooms she enters, and this one is no different, but she pays no heed to the attention as she locks eyes with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for a moment, and then scans the room, zeroing directly in on you in moments, despite your shadow-shrouded booth.<br>
<br>
[<<moveTo "event_psychiatrist_manager_reunion_3" "Lead the way to the bar's private room." 180>>]
</div>/*#
#desc: barista arrives
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageManager() setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Tensions rising, you head for the bar's private room and motion for the two women to follow.<br>
<br>
A moment later you are alone and, you realise, technically blocked in, by <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, the force of their combined presence making you gulp nervously.<br>
<br>
"@@.npc_manager;Well? After your prior questions I can only imagine this is some scheme to bring the two of us together but...do you have any idea how big of a risk you have put us at?@@"<br>
<br>
"@@.npc_psychiatrist;I know I normally tell you to be bold but... you realise the precarious position all three of us are in, don't you?@@"<br>
<br>
You hurriedly explain that the room is secure, <<=setup.getNpcName('npc_manager', 'formal')>> looking intently around for a moment before nodding. "@@.npc_manager;She's right... someone put quite the investment into hardening this room...@@" Her gaze drifts over the bed, "@@.npc_manager;One might wonder just who, exactly has been through here before us...@@"<br>
<br>
With the concern of safety assuaged <<=setup.getNpcName('npc_manager', 'formal')>> and <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> attentions turn towards one another in a tense stand-off... that is interrupted by a sound at the door...<br>
<br>
[<<moveTo "event_psychiatrist_manager_reunion_4" "All eyes turn towards the door..." 60>>]
</div>/*#
#desc: barista arrives
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.rescue.cure == "good">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageManager() setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_candace")>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageManager() setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_bimbo")>>
<</if>>
<div id="invframe" class="scrolltext">
The door opens to reveal
<<if $npc_barista.flags.rescue.cure == "good">>
<<=setup.getNpcName('npc_barista', 'first')>>, her bimbo facade discarded as she smiles back with a glint of cunning intelligence in her eye. "@@.npc_barista;Hello <<=setup.getNpcName('npc_manager', 'first')>>... it's been a while.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> moves so fast as to almost blur, pressing <<=setup.getNpcName('npc_barista', 'first')>> against the wall as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> frantically begs for her to stop.<br>
<br>
"@@.npc_psychiatrist;Please, it's not the <<=setup.getNpcName('npc_barista', 'first')>> you knew — <<=$player.first_name>> helped me cure her. Tell her, please!@@" She states, this time looking desperately towards you for help.<br>
<br>
[<<moveTo "event_psychiatrist_manager_reunion_5" "Try to calm things down." 180>>]
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>> who grins in greeting. "@@.npc_barista;Heya! We're, all, like... back together again!@@"<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows in suspicion as she takes a step closer to <<=setup.getNpcName('npc_barista', 'nickname')>>, the latter blinking back obliviously.<br>
<br>
"@@.npc_manager;Something changed...@@" Her attention snaps to <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. "@@.npc_manager;What happened?@@"<br>
<br>
"@@.npc_psychiatrist;We, I mean, <<=$player.first_name>> and myself... we tried to reverse what <<=setup.getNpcName('npc_boss', 'formal')>> had done to her. It wasn't quite enough to restore her, but...@@"<br>
<br>
The mention of <<=setup.getNpcName('npc_boss', 'formal')>> seems to finally soften <<=setup.getNpcName('npc_manager', 'formal')>> as she relaxes a notch as she looks between <<=setup.getNpcName('npc_barista', 'nickname')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. "@@.npc_manager;I am sorry... I know that the two of you...@@"<br>
<br>
[<<moveTo "event_psychiatrist_manager_reunion_5" "Continue." 180>>]
<</if>>
</div>/*#
#desc: explain barista situation
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.rescue.cure == "good">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageManager() setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_candace")>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageManager() setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_bimbo")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_barista.flags.rescue.cure == "good">>
You hurriedly explain that <<=setup.getNpcName('npc_barista', 'first')>> isn't the single-minded ambitious sociopath <<=setup.getNpcName('npc_manager', 'formal')>> remembers, that she's on your side for bringing down <<=setup.getNpcName('npc_boss', 'formal')>>...<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows as she looks intently at <<=setup.getNpcName('npc_barista', 'first')>>.<br>
<br>
"@@.npc_barista;She's telling the truth... and so am I when I say I'm sorry... I almost screwed things up for everyone, but... I'm better now, and I promise I'm with you to take down <<=setup.getNpcName('npc_boss', 'formal')>>...@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> finally relaxes and leans back, seeming to finally notice <<=setup.getNpcName('npc_psychiatrist', 'formal')>> practically hanging off her arm, the psychiatrist somewhat awkwardly dropping to the floor and stepping back to move over to <<=setup.getNpcName('npc_barista', 'first')>>.<br>
<br>
"@@.npc_manager;I guess you have been through hell enough... I promise I had nothing to do with it...@@"<br>
<br>
"@@.npc_barista;I know. But now... having seen what <<=setup.getNpcName('npc_boss', 'formal')>> is willing to do... you were right, <<he npc_boss>> has to be stopped, not merely supplanted.@@" <<=setup.getNpcName('npc_barista', 'first')>> pauses for a moment, "@@.npc_barista;So, uh, this is maybe a little weird but, as they said, I'm not either of the women I once was, but some things don't change, well... do you wanna fuck? I mean, we've got this nice private room and spacious bed...@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> stifles laughter as <<=setup.getNpcName('npc_manager', 'formal')>> pauses for a moment and then looks towards you, her eyebrow rising in inquiry...
<<else>>
The tense mood in the room turns sombre as <<=setup.getNpcName('npc_barista', 'nickname')>> bounces over to snuggle up against <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> sighs, "@@.npc_manager;I suppose continuing to hold a grudge is somewhat absurd at this point... whatever our differences, you know I had nothing to do with what happened.@@"<br>
<br>
"@@.npc_psychiatrist;I know... and, if <<=setup.getNpcName('npc_barista', 'first')>> could apologise, I am sure she would tell you how much she regrets her haste. If the three of us had worked together maybe...@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> shakes her head. "@@.npc_psychiatrist;No sense dwelling on the past, we've got a new opportunity to deal with <<=setup.getNpcName('npc_boss', 'formal')>> once and for all.@@"<br>
<br>
You were starting to feel like a wallflower and are a bit startled when attention turns back to you as <<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Yes... we do at that.@@"<br>
<br>
There's a moment of awkward silence, suddenly broken by <<=setup.getNpcName('npc_barista', 'nickname')>>. "@@.npc_barista;So, like... can we fuck already?@@"<br>
<br>
The absurdity of the whole situation hits home as everyone except <<=setup.getNpcName('npc_barista', 'nickname')>> laughs as the barista looks confused for a moment before reiterating her request? "@@.npc_barista;Please? Like... I'm really horny, and this bed is big enough for four...@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> glance at you...
<</if>>
<br><br>
[<<moveTo "event_psychiatrist_manager_reunion_6" "Yay, sex!" 7200 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_psychiatrist_manager_reunion_6" 'That was not quite the level of "making up" you were going for...' 300 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: four-way
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.rescue.cure == "good">>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageManager() setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_candace")>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageManager() setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_bimbo")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You smile, and soon clothes are shedding and all four of you are crowding into the bed. While you don't think you could imagine <<=setup.getNpcName('npc_manager', 'formal')>> in any position other than in charge, what happens next is more a mutual make-up session than the pure controlled dominance that is her normal mode.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> at the centre of things you and
<<if $npc_barista.flags.rescue.cure == "good">>
<<=setup.getNpcName('npc_barista', 'first')>> play a more supporting role as <<=setup.getNpcName('npc_barista', 'first')>> opts to make up for her prior selfishness by being quite the giving lover.
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>> play a more supporting role as <<=setup.getNpcName('npc_barista', 'nickname')>> acts as the slutty grease to lubricate coupling.
<</if>>
After a whirl of kisses, caresses and hugs things settle down, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> on her back with <<=setup.getNpcName('npc_manager', 'formal')>> on top as you and <<if $npc_barista.flags.rescue.cure == "good">><<=setup.getNpcName('npc_barista', 'first')>><<else>><<=setup.getNpcName('npc_barista', 'nickname')>><</if>> fill in wherever you can, lips and fingers teasing and entwining as the four of you "make up"... and make up for lost time...<br>
<br>
In ebbs and flows the four of you transition between positions and combinations, dipping into the room's "supplies" as fingers and tongues are augmented with wands and dildos, cathartic passion unleashed as you fuck and suck and sweat and cum in a hedonistic release of apologetic ecstasy.<br>
<br>
Pushing on to the point of fatigue eventually only <<=setup.getNpcName('npc_manager', 'formal')>> is left standing, <<if $npc_barista.flags.rescue.cure == "good">><<=setup.getNpcName('npc_barista', 'first')>><<else>><<=setup.getNpcName('npc_barista', 'nickname')>><</if>> satisfied, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> fulfilled and you content as the four of you cuddle into the night...<br>
<br>
[<<moveTo "event_psychiatrist_manager_reunion_7" "Continue." 600>>]
<<else>>
<<if $npc_admin.flags.monogomous_manager>>
You shake your head and <<=setup.getNpcName('npc_manager', 'formal')>> diplomatically bows out.<br>
<br>
"@@.npc_manager;I think we shall pass on the offer — even if this may be a safe room... I will save my celebrations until things are done, and <<=setup.getNpcName('npc_boss', 'formal')>> is no more.@@" She nods to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and <<if $npc_barista.flags.rescue.cure == "good">><<=setup.getNpcName('npc_barista', 'first')>><<else>><<=setup.getNpcName('npc_barista', 'nickname')>><</if>> in turn. "@@.npc_manager;It is good to know that we are on the same side once again... but I believe that will be all for tonight.@@"
<<else>>
Given the obvious history between the three women you feel a bit like a third wheel... even if you're technically the fourth. Quietly excusing yourself you leave them to "catch up" on lost time as you make a quiet retreat from the room.
<</if>>
<br><br>
[<<moveTo "room_usual_place_inside" "Leave." 180>>]
<</if>>
</div>/*#
#desc: candace post
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.inside = false>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImageManager() setup.charImage("npc_psychiatrist") setup.charImage("npc_barista","npc_barista_candace")>>
<div id="invframe" class="scrolltext">
The hour late indeed it finally comes time to sort out clothing before each of you take your leave, with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and <<=setup.getNpcName('npc_manager', 'formal')>> sharing a final understanding nod before going their separate ways, their serious expressions reminding you that, as much fun as the last few hours have been... there are still very serious matters and steep stakes yet to tackle.<br>
<br>
[<<moveTo "room_usual_place_inside" "Leave." 180>>]
</div>/*#
#desc: offered nefarious nurse customer
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barkeeper","first")>> nods at your outfit. "@@.npc_barkeeper;So this client well... they were a bit enigmatic about what the job involved, merely giving a list of requirements while being cryptic on the details. I did do some background checking and everything is on the up and up... but the terms of the contract says all I can tell you is that the pay is good, otherwise you'll be going in blind. You still up for it?@@"<br>
<br>
[<<moveTo "event_vip_nefarious_nurse_2" "You're ready for whatever." 180>>]<br>
[<<moveTo "event_prostitution_vip_root" "Ask about another job instead." 600>>]
</div>/*#
#desc: nefarious nurse: ambushed
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Alleyway Behind The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" "./images/characters/silhouette.png">>
<div id="invframe" class="scrolltext">
You agree to the mysterious job and <<=setup.getNpcName("npc_barkeeper","first")>> tells you to head for the alleyway behind the bar. "@@.npc_barkeeper;The contract says they'll pick you up there... again, that's all I can tell you.@@"<br>
<br>
<<if $fetish.get_raped>>
You head for the alley and look around, but don't see anyone else there. You stand around for a few minutes waiting, about to head back inside to ask about what's going on when you feel someone grab you from behind.<br>
<br>
You reflexively thrash but
<<if setup.getTotalValue("martial_arts") > 10>>
your
<<if setup.getTotalValue("martial_arts") > 15>>
extensive
<</if>>
martial skills are of
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
your minimal martial skills are of
<<else>>
it is
<</if>>
<</if>>
no use as a rag is pressed over your face. You inadvertently take a deep breath, smelling something sweet just before your body stops going limp and you vision fades.<br>
<br>
<<printThought "Chloroform...">> is your final thought as you slump into the arms of whoever ambushed you, a second shadowy figure lifting your legs as they carry you into a vehicle and you fully lose consciousness.<br>
<br>
[<<moveTo "event_vip_nefarious_nurse_3" "Continue." 1000>>]
<<else>>
In the alley you are approached by a shadowy figure.<br>
<br>
"@@.generic_male1;You here for the job?@@" They ask, their voice harsh as filtered though some sort of voice scrambler.<br>
<br>
"@@.generic_male1;Take this pill if you're still interested.@@" They state, offering you an innocuously small, unmarked pill.<br>
<br>
<<printThought 'This is shady... but <<=setup.getNpcName("npc_barkeeper","first")>> did promise she researched the client... so I guess this is just all part of their fantasy?'>><br>
<br>
[<<moveTo "event_vip_nefarious_nurse_2a" "Take the pill." 120 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_vip_nefarious_nurse_2a" "Refuse the job." 180 "<<set $scene.abort=true>>">>]
<</if>>
</div>/*#
#desc: nefarious nurse: voluntary take pill
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Alleyway Behind The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" "./images/characters/silhouette.png">>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You refuse the pill and the mysterious figure turns away, quickly disappearing up the alleyway to leave you alone and puzzled over what you just missed out on.<br>
<br>
[<<moveTo "room_usual_place_inside" "Head back inside the Usual Place." 60>>]
<<else>>
You take the pill and swallow it before you have any second thoughts. Almost immediately you feel woozy, swaying as your vision fades and then falling into the arms of a second, unseen figure. As you lose consciousness the person who gave you the pill picks up your legs and the two of them carry you off to a vehicle and you fully lose consciousness.<br>
<br>
[<<moveTo "event_vip_nefarious_nurse_3" "Continue." 1000>>]
<</if>>
</div>/*#
#desc: nefarious nurse: wake up bound, intro
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'nefarious_nurse_bondage'>>
<<wearItemSet 'nefarious_nurse_bondage'>>
<<set $scene.breastMilk = $fetish.milking && $player.sec_style.sex.milking>>
<<set $scene.penisMilk = $fetish.penis_milking && $player.sec_style.sex.penis_milking>>
<<set $scene.removeChastity = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeChastity>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<removeItem $scene.cage true>>
<</if>>
<<include "equipSleepMilkers">>
<</if>>
<<set $player.location to "Local Medical Facility?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" "gas_mask_nurse">>
<div id="invframe" class="scrolltext">
You don't know how long you were out, but you wake up with almost instant clarity, blinking as your vision returns to watch as a figure wearing a gas mask and dressed in a tight rubber nurse outfit leans back, syringe in hand.<br>
<br>
"@@.generic_female1;Welcome, test subject. And thank you for agreeing to participate in my experiment.@@" Their voice, and figure, are feminine, but muffled by their mask, the polished face-shield reflecting that you are wearing a gas mask of your own, the hose winding away out of sight, the rest of your body tightly secured thanks to a rubber straitjacket and additional restraints.<br>
<br>
<<if $scene.removeChastity>>
The one part of you NOT restrained is your crotch as you realise that you are out of chastity, and you spot your device sitting on a nearby table.<br>
<br>
"@@.generic_female1;Your restriction makes you a perfect subject for my experiment, but it remaining in place would interfere with my plans.@@" The nurse explains.
<</if>>
Though your ability to look around is significantly limited, you try to assess your situation.<br>
<br>
Your clothing feels to have been removed in favour of a full body catsuit, combined with the gas mask covering your face means the only parts of you exposed
<<if $fetish.milking>>
<<if $player.body.breastsize[0] > 0>>
are your breasts, hooked up to milking devices.
<<else>>
is your upper chest, twin milking devices suctioned in place like the breasts that you do not have.
<</if>>
<<else>>
<<if $player.body.breastsize[0] > 0>>
breasts,
<<else>>
is your upper chest,
<</if>>
bullet vibrators attached to each nipple.
<</if>>
Down below a large plug gapes your rear while
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if $fetish.penis_milking>>
a
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small milking device is attached over your <<getWordMyPenis false>>.
<<case 2 3>>
milking device is attached over your <<getWordMyPenis false>>.
<<case 4 5>>
large milking device is attached over your <<getWordMyPenis false>>.
<<case 6>>
large cylinder engulfs your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock, from frilled tip to knotted base<<elseif $player.body_ref.horsecock>>horse cock<<elseif $player.body_ref.knot>>canine cock, all the way down to your knotted base<<else>>cock<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
a bullet vibe is attached to your <<getWordMyPenis false>>.
<<case 2 3>>
a pair of bullet vibes are attached to your <<getWordMyPenis false>>.
<<case 4 5>>
several bullet vibes are attached up and down the length of your large <<getWordMyPenis false>>.
<<case 6>>
almost a dozen bullet vibes are attached up and down your <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock, from frilled tip to knotted base<<elseif $player.body_ref.horsecock>>horse cock<<elseif $player.body_ref.knot>>canine cock, all the way down to your knotted base<<else>>cock<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<<if $fetish.sounding>>
A ribbed urethral sound and a large vibrator in your <<getWordVagina>> rounds things off for the full inside and out pressure.
<<else>>
Finish it all off, a large vibrator occupies your <<getWordVagina>>.
<</if>>
<<elseif $player.body_ref.penis>>
<<if $fetish.penis_milking>>
a
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small milking device is attached over your <<getWordMyPenis false>>.
<<case 2 3>>
milking device is attached over your <<getWordMyPenis false>>.
<<case 4 5>>
large milking device is attached over your <<getWordMyPenis false>>.
<<case 6>>
large cylinder engulfs your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock, from frilled tip to knotted base<<elseif $player.body_ref.horsecock>>horse cock<<elseif $player.body_ref.knot>>canine cock, all the way down to your knotted base<<else>>cock<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
a bullet vibe is attached to your <<getWordMyPenis false>>.
<<case 2 3>>
a pair of bullet vibes are attached to your <<getWordMyPenis false>>.
<<case 4 5>>
several bullet vibes are attached up and down the length of your large <<getWordMyPenis false>>.
<<case 6>>
almost a dozen bullet vibes are attached up and down your <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock, from frilled tip to knotted base<<elseif $player.body_ref.horsecock>>horse cock<<elseif $player.body_ref.knot>>canine cock, all the way down to your knotted base<<else>>cock<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<<if $fetish.sounding>>
A ribbed urethral sound rounds things off for the full inside and out pressure.
<</if>>
<<elseif $player.body_ref.vagina>>
a large vibrator occupies your <<getWordVagina>>, with a pair of bullet vibes pressed on either side of your clit.
<<else>>
ERROR: unexpected genitals
<</if>>
<br><br>
Though you cannot see her face through the mask, you feel like the woman is smiling at your realisations as she steps behind a control panel. "@@.generic_female1;Initiating experiment.@@"<br>
<br>
[<<moveTo "event_vip_nefarious_nurse_4" "Here we go..." 600 "<<set $scene.object=false>>">>]<br>
[<<moveTo "event_vip_nefarious_nurse_4" "Object, this isn't what you signed up for!" 180 "<<set $scene.object=true>>">>]<br>
</div>/*#
#desc: nefarious nurse: stimulation intro
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.object>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'terrible' $SEEN_STRANGER>>
<</if>>
<<changeHorny 50>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to "Local Medical Facility?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" "gas_mask_nurse">>
<div id="invframe" class="scrolltext">
<<if $scene.object>>
You start to object but you barely get more than a couple of words out when a large dildo thrusts into your mouth. You stare at the nurse in shock as she tweaks a dial, the dildo swelling and pressing deeper until you're at your limit. The dildo turns out to be hollow, leaving your breathing unobstructed while utterly silencing you. "@@.generic_female1;Your disappointing objection to the procedure has been noted, and ignored. Proceeding with experiment.@@"<br>
<br>
<</if>>
In a sudden crescendo the multitude of vibrators in and on your body kick into gear, a sudden flood of stimulation that has you thrashing reflexively, and pointlessly, against your sturdy bonds. From behind her mask the nurse watches you like a hawk, her fingers dancing over the control panel as she varies the stimulation — vibrators moving in and out of synchronisation
<<if $fetish.milking && $fetish.penis_milking && $player.body_ref.penis>>
as the breast milkers pump aggressively and the penis stimulation jerks and sucks harder than any human mouth could ever manage.
<<elseif $fetish.milking>>
as the breast milkers pump aggressively.
<<elseif $fetish.penis_milking && $player.body_ref.penis>>
as the penis stimulation jerks and sucks harder than any human mouth could ever manage.
<<else>>
as you are relentlessly buzzed and fucked.
<</if>>
<br><br>
Your tight bondage only makes everything even more intense as you gasp and thrash and moan. Even with all your prior experiences the nurse seems able to push your limits, pain turning to pleasure and then back again as over-sensitive flesh is relentlessly stimulated, your orgasms bleeding together while the stimulation rolls on and on... and then suddenly stops.<br>
<br>
[<<moveTo "event_vip_nefarious_nurse_5" "That was almost too much!" 1800>>]
</div>/*#
#desc: nefarious nurse: drugs + more stimulation
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.drugs>>
<<applyExperience 'bimbofication' 15 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Local Medical Facility?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" "gas_mask_nurse">>
<div id="invframe" class="scrolltext">
You pant and gasp <<if $scene.object>>through your gag <</if>>as you try to recover from the deluge of sensation
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
even your legendary stamina put to the test.
<<else>>
even your stamina pushed to its limit.
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
your stamina pushed to the limit.
<<else>>
your poor stamina stressed to the breaking point.
<</if>>
<</if>>
<br><br>
"@@.generic_female1;Calibration complete. Initiating experiment.<<if $fetish.drugs>> Commencing aphrodisiac administration<</if>>.@@"<br>
<br>
You're already so overwhelmed it takes your brain several seconds to process her words
<<if $scene.object>>
but it's not like you can object again.
<<else>>
but your panicked objection is cut off as a massive dildo thrusts down your throat, swelling and burying itself as deep as you can take to silence you utterly.
<</if>>
<br><br>
<<if $fetish.drugs>>
You couldn't hold your breath, even if you wanted to, as you watch pink gas get pumped into your mask, your rubber air now smelling like sweet sex as you feel both invigorated... and desperately horny, despite all you have endured.
<</if>>
<br><br>
Whatever "calibration" meant... it worked, as this new round of stimulation is almost beyond imagination, the beyond intense blend of vibration<<if $fetish.milking || $fetish.penis_milking>>, suction,<</if>> and thrusting blended with occasional painful jolts, the shocks serving to reinvigorate pleasure-overwhelmed nerves so that you remain constantly sensitive and over-stimulated.<br>
<br>
[<<moveTo "event_vip_nefarious_nurse_6" "Oh <<getWordGod>>..." 1800 "<<changeHorny 100>><<applyFatigue 300>>">>]
</div>/*#
#desc: nefarious nurse: intermission
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Local Medical Facility?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" "gas_mask_nurse">>
<div id="invframe" class="scrolltext">
Trapped, encased in rubber, bound<<if $fetish.drugs>>, drugged<</if>>, and stimulated to the point of torture one of the few senses that isn't is your sight as you watch the masked nurse make small adjustments and the occasional note, her attention never turning away from you as she monitors your vitals and watches your writhing struggles.<br>
<br>
You feel ready to pass out, but the relentless stimulation is too much for you to even escape into unconsciousness... only for the nurse to press a button and pause things once again, this time even retracting the dildo from your throat leaving you feel empty even as you welcome the relief with each gasp.<br>
<br>
"@@.generic_female1;Initiating patient check-in. What did this do to you? And remember, this is for posterity so... be honest. How do you feel?@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") >= 20>>
[<<moveTo "event_vip_nefarious_nurse_7" "MORE! MORE!" 600 "<<set $scene.more=true>>">>]<br>
<<elseif setup.getTotalValue("bimbofication") > 15>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_vip_nefarious_nurse_7" "More..." 600 "<<spendWillpower 1>><<set $scene.more=true>>">>] <<hint $options "Even for as big a slut as yourself, to push yourself for more would border on madness.">><br>
<<else>>
[@@.link_locked;You may be a massive slut... but you are well past your limits, and too mentally drained to push further.@@]<br>
<</if>>
<<elseif setup.getTotalValue("bimbofication") > 10>>
<<if setup.getWillpower() > 2>>
[<<moveTo "event_vip_nefarious_nurse_7" "More..." 600 "<<spendWillpower 3>><<set $scene.more=true>>">>] <<hint $options "Even for a slut such as yourself, to push yourself for more would border on madness and would require a significant act of will.">><br>
<<else>>
[@@.link_locked;You may be a slut... but there are limits, and you are too mentally fried to push past them.@@]<br>
<</if>>
<</if>>
<<if setup.getTotalValue("bimbofication") >= 20>>
[@@.link_locked;You are in a full-on <<if $fetish.drugs>>drug-fueled <</if>> slut trance, there is no way out but through.@@]
<<else>>
[<<moveTo "event_vip_nefarious_nurse_7" "Just whimper." 600 "<<set $scene.more=false>>">>]
<</if>>
</div>/*#
#desc: nefarious nurse: continue or no
#status: FINISHED 0.8.8.0
#ignore_spell: bubbler
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.more>>
<<applyExperience 'bimbofication' 20 'unbelievable' $SEEN_STRANGER>>
<<else>>
<<applyStress 20>>
<</if>>
<</if>>
<<set $player.location to "Local Medical Facility?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" "gas_mask_nurse">>
<div id="invframe" class="scrolltext">
<<if $scene.more>>
<<if setup.getTotalValue("bimbofication") >= 20>>
You moan in desperate need as you cry out "@@.pc;MORE!@@" with slutty abandon.
<<else>>
Your voice cracks as you moan a desperate "@@.pc;more.@@"
<</if>>
The nurse seems momentarily taken aback by your response... but quickly rewards your enthusiasm by sending the dildo thrusting deep into your throat once again.<br>
<br>
"@@.generic_female1;Subject is showing <<if setup.getTotalValue("bimbofication") >= 20>>impressive <</if>>enthusiasm. Disabling safeguards and proceeding with greater intensity.@@" A moment later
<<else>>
You whimper, a long, forlorn moan that is all your exhausted body can muster.<br>
<br>
"@@.generic_female1;Interesting.@@" The nurse replies in a flat tone. "@@.generic_female1;Treating subject as resistant, initiating additional measures.@@"<br>
<br>
The first additional measure proves to be the dildo thrusting back down your throat, and then
<</if>>
your breathing becomes more laboured as a hose switches and you hear the sound of roiling water echo in the room as you are forced to breathe through a bubbler bottle.<br>
<br>
Your laboured breathing only intensifies as the stimulation returns<<if $fetish.drugs>>, and another round of drugs, that you have even less choice in sucking deep into your lungs<</if>> as you struggle for oxygen.<br>
<br>
Muscles sore and strained you barely even fight against your bonds, instead merely twitching and shuddering as the vibrations suffuse your entire body.<br>
<br>
Every breath a struggle, having endured orgasms beyond counting your body finally gives up, and your consciousness fades even as the stimulation rolls relentlessly on.<br>
<br>
[<<moveTo "event_vip_nefarious_nurse_8" "Continue." 3600>>]
</div>/*#
#desc: nefarious nurse: final stimulation
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeGenitalMilkers">>
<<removeItemSet "nefarious_nurse_bondage">>
<<deleteItemSet "nefarious_nurse_bondage">>
<<useClothSetPop 'tmp'>>
<<if $scene.removeChastity>>
<<wearItem $scene.cage true>>
<</if>>
<<if $scene.object>>
<<set $scene.multi = .5>>
<<else>>
<<set $scene.multi = 1>>
<</if>>
<<if $scene.more>>
<<set $scene.multi += .5>>
<</if>>
<<if setup.getTotalValue("oral") >= 20>>
<<set $scene.multi += .1>>
<</if>>
<<if setup.getTotalValue("anal") >= 20>>
<<set $scene.multi += .1>>
<</if>>
<<if setup.getTotalValue("bondage") >= 20>>
<<set $scene.multi += .1>>
<</if>>
<<set $scene.pay = Math.floor($scene.multi * $scene.client.base_pay)>>
<<addCredits $scene.pay>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.nefarious_nurse = true>>
<<if !$scene.object && $scene.more && !setup.hasEmail("mail_nefarious_nurse_invite_h")>>
<<addEmail $computer
'Nurse N'
'My Favourite Test Subject'
false
false
$now
'mail_nefarious_nurse_invite_h'
'mail_nefarious_nurse_invite_t'>>
<<if false>>
<<moveTo "event_nefarious_nurse_home_email_1">>
<</if>>
<</if>>
<<applyExperience 'whoring' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You wake up and find yourself back at the usual place, dressed<<if $scene.removeChastity>> and locked in chastity<</if>>, you are slumped in a dark corner, your pockets <<=$scene.pay>> credits heavier... though even that princely sum seems perhaps insufficient for what you just endured.<br>
<br>
<<if $scene.multi < 1>>
<<printThought "Wow... I wonder what I would have earned if I had been more enthusiastic?">>
<<else>>
<<printThought "Wow... I guess she appreciated my enthusiasm?">>
<</if>>
<br><br>
As you blink and wince at the sound of the bar a passing patron looks over at you with concern. "@@.generic_male1;You alright? You look like you've had one too many... you need a cab?@@"<br>
<br>
Groggy, stiff and totally drained you wave them off as you somehow muster the energy to stand, half stumbling only for the helpful person to catch you as you fall, shouldering you out the door and calling a cab to send you home.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
</div>/*#
#desc: respond to nefarious nurse email
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You click the link to sign your consent to further "study participation" but, rather than a link to schedule a session it merely confirms your choice with a "Thank You" before closing.<br>
<br>
<<printThought "Huh, guess I'll be contacted later, or something?">><br>
<br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: nefarious nurse visits
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.drugs>>
<<setTmpEffect 'nefarious_narcotic'>>
<</if>>
<<set $scene.addPlug = !setup.checkItemTypeWorn("plug")>>
<<set $scene.replacePlug = false>>
<<if $scene.addPlug>>
<<else>>
<<set $scene.replacePlug = !setup.checkItemTypeTag('plug', ['vibrating'])>>
<</if>>
<<if $scene.addPlug || $scene.replacePlug>>
<<addItem "vibrating_plug_large">>
<<wearItem "vibrating_plug_large" true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.body_ref.penis>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream" "nomanager">>
<<elseif !$player.body_ref.penis && $player.body_ref.vagina>>
<<createStackedImage "bedroomMilking" "vagina" "milk" "nomanager">>
<</if>>
<div id="invframe" class="scrolltext">
You've drifted off for another night bound and milked when you rouse slightly, shaking your head as you look up to see something moving in the room. Your eyes are still adjusting to the darkness as the figure turns,
<<if $fetish.drugs>>
adjusting an IV that you now notice is already connected to your arm.
<<else>>
and smiles down at you.
<</if>>
"@@.generic_female1;Ah, you're awake early.@@"<br>
<br>
The figure leans closer and you finally recognise the mysterious nurse who <<if $fetish.drugs>>drugged and<</if>> stimulated your brains out as part of a prostitution job and you reflexively shift... not that you have any chance of escape thanks to your own sleep bondage.<br>
<br>
"@@.generic_female1;You consented to this, remember? And you have just such a lovely setup for me to take advantage of... so, really, my dear... you might as well just enjoy it...@@"<br>
<br>
Her eyes almost glow in the dim light as she taps on a tablet,<<if $fetish.drugs>> the drugs hitting your system as<</if>> your normal night equipment seems to hit a new overdrive level of intensity...<br>
<br>
[<<moveTo "event_nefarious_nurse_home_visit_2" "Oh Goddess..." 3600>>]
</div>/*#
#desc: nefarious nurse visits: drug and stimulation
#status: RELEASED 0.9.2.0
#ignore_spell: sisyphus
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 100>>
<<applyFatigue 100>>
<<addEmail $computer
'Nurse N'
'My Favourite Test Subject'
false
false
$now
'mail_nefarious_nurse_post_h'
'mail_nefarious_nurse_post_t'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.body_ref.penis>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream" "nomanager">>
<<elseif !$player.body_ref.penis && $player.body_ref.vagina>>
<<createStackedImage "bedroomMilking" "vagina" "milk" "nomanager">>
<</if>>
<div id="invframe" class="scrolltext">
Irresistible arousal overcomes fear as the nefarious nurse fiddles with your milking <<if setup.checkItemWorn("breast_milker")>>devices<<else>>device<</if>> and your production goes into overdrive. <<if $scene.addPlug>>You realise she must have stuck something in your rear<<elseif $scene.replacePlug>>You realise she must have replaced your non-vibrating plug<<else>>She has taken control over your rear occupant<</if>> as the massive plug stuffed in your ass buzzes alongside the pumping stimulation<<if $fetish.drugs>>... and the mind-melting power of the aphrodisiac drugs she has administered<</if>>.<br>
<br>
You writhe and strain against your bonds, but there is nowhere safe from the nurse's reach as she monitors you with keen, hungry eyes, monitoring and modifying as she pushes your body to the brink of orgasm, holds it there... then pushes you over the edge for a string of climaxes only to push you back up the hill of arousal. <<if $fetish.sissy>>You've become used to sissification, but this feels<<else>>You feel<</if>> like Sisyphus eternally pushing a boulder of arousal, yet never to feel actual satiation... and all the while the machines are drawing from you what has to be a record harvest.<br>
<br>
Climax after climax has you sweating and panting. As the "experiment" continues on you become too exhausted to do much more than twitch even, the stimulation winning out over will, stamina, sanity, or anything else as the nurse pushes and pushes. The whole times she smiles intently, steering you gleefully along as pleasure becomes torture becomes pleasure again, not stopping until you pass out from a screaming mega-orgasm, the combination of intensity and exhaustion finally enough for your body to give out in the face of the still unrelenting stimulation. Your final thought is to wonder if this was all somehow just a dream brought on by your depraved nightly routine...<br>
<br>
[<<moveTo "room_dreams" "Sleep." 0 "<<playerOrgasm>>">>]
</div>/*#
#desc: nefarious nurse ad
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('drug')>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You read the new ad for "Nurse's Nefarious Narcotic — guaranteed to push you to the limits of arousal!" <br>
<br>
You shiver as you read the note describing it as "scientifically tested and user endorsed!" as you remember the "testing" you assisted with... and yet your curiosity is raised at what the "production" version of the drug might feel like.<br>
<br>
<<printThought "Only 100 credits to find out...">> You think to yourself as you notice near the counter where you notice the drug is for sale.<br>
<br>
[<<moveTo "room_mall_interior" 'Turn away from the ad.' 30>>]
</div>/*#
#desc: effects of nefarious nurse drug
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -50>>
<<applyStress -20>>
<<deleteItem 'nefarious_narcotic' 1>>
<<setTmpEffect 'nefarious_narcotic'>>
<<deleteItem 'nefarious_narcotic'>>
<</if>>
<<createAdvBGR "./images/scenes/scene_eatpill.png">>
<div id="invframe" class="scrolltext">
Taken orally, rather than intravenous, the "Nefarious Narcotic" is a little slower to take effect... but when it hits, it hits HARD.<br>
<br>
You gasp and your heart races as you feel a rush of energy and clarity... and your arousal rockets to a peak<<if $player.body.cumProduction || $player.body.milkProduction>> and you can practically feel your <<if $player.body.cumProduction && $player.body.milkProduction>><<if $player.body_ref.balls>>balls<<else>>loins<</if>> and breasts<<elseif $player.body.milkProduction>>breasts<<else>><<if $player.body_ref.balls>>balls<<else>>loins<</if>><</if>><</if>> churning with production...<br>
<br>
[<<moveTo $locationbeforeuseage 'Continue.' 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: vip: prostitution competition
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_barista","npc_barista_bimbo") setup.charImage("npc_prostitute")>>
<<else>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_barkeeper', 'first')>> that you might be up for doing some outreach work to expand the bar's clientele. "@@.npc_barkeeper;Great! So there's a park not too far away that gets pretty good foot traffic, between a couple clubs, plenty of private spots if you know where to look... that sort of thing. So I was thinking you spend the night turning tricks, let the clients know where you normally work... maybe pick up a few regulars, or at least spread word of mouth, figure it's a way to try to pump up weeknight business, y'know?@@"<br>
<br>
You nod in understanding and <<=setup.getNpcName('npc_barkeeper', 'first')>> smiles as she adds an additional wrinkle. "@@.npc_barkeeper;To make it even more interesting... well, how about we make a friendly competition of it? You versus <<=setup.getNpcName('npc_prostitute', 'first')>>, versus <<=setup.getNpcName('npc_barista', 'nickname')>> for who can pull in the most business in one night?@@"<br>
<br>
<<printThought "That sounds like stiff competition... or is it hard competition? Well, either way, I'd be going up against a pair of real professionals...">><br>
<br>
[<<moveTo "event_prostitution_competition_2" "You're always up for a challenge!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_prostitution_competition_2" "That's a bit more than you were planning on for tonight." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: vip: prostitution competition arrive at park
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.prostitution = {
"park" : ['nothing', 'nothing', 'nothing', 'rival_tie', 'frat', 'valkyrie', 'jogger'],
"street" : ['nothing', 'nothing', 'nothing', 'police', 'pretty_woman', 'npc_rival'],
"club" : ['nothing', 'nothing', 'nothing', 'punk', 'drunk', 'coworker', 'pop', 'rock', 'dance', 'wine'],
"clientCount" : 0
}>>
<<if $npc_egg.stage >= 9>>
<<set $scene.prostitution.street.push("npc_egg")>>
<</if>>
<<if setup.prostitutionMeetReqs("park", "police_dog")>>
<<set $scene.prostitution.park.push("police_dog")>>
<</if>>
<<if setup.prostitutionMeetReqs("club", "tattoo")>>
<<set $scene.prostitution.club.push("tattoo")>>
<</if>>
<<if setup.prostitutionMeetReqs("club", "lab_tech")>>
<<set $scene.prostitution.club.push("lab_tech")>>
<</if>>
<<if setup.prostitutionMeetReqs("street", "police_horse")>>
<<set $scene.prostitution.street.push("police_horse")>>
<</if>>
<<if setup.prostitutionMeetReqs("street", "npc_manager")>>
<<set $scene.prostitution.street.push("npc_manager")>>
<</if>>
<<set $scene.prostitution.park = setup.shuffleArray($scene.prostitution.park)>>
<<set $scene.prostitution.street = setup.shuffleArray($scene.prostitution.street)>>
<<set $scene.prostitution.club = setup.shuffleArray($scene.prostitution.club)>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You respond that some friendly on-the-job competition sounds like a great idea. A couple phone calls and a few minutes later and you, <<=setup.getNpcName('npc_prostitute', 'first')>>, and <<=setup.getNpcName('npc_barista', 'nickname')>> are standing outside the park, <<=setup.getNpcName('npc_barkeeper', 'first')>> having already laid down the rules: most clients wins, with a tiebreaker of total credits earned, and no cheating by calling in regulars or previous clients. The goal is to encourage new business back at The Usual Place, after all.<br>
<br>
You look side to side at your competition, <<=setup.getNpcName('npc_barista', 'nickname')>> grins with excitement while <<=setup.getNpcName('npc_prostitute', 'first')>> cracks her knuckles.<br>
<br>
"@@.npc_prostitute;See you at the end of the night, sluts.@@" States with a grin.<br>
<br>
"@@.npc_barista;Woo! I'm gonna suck so much cock!<<if $fetish.sissy>> Have fun, sissies!<</if>>@@"<br>
<br>
Your two colleagues head off in opposite directions and you consider your plan. Working the street would be the simplest option... but you'll find the most people outside the clubs, but also the most competition, so dressing to stand out would be best. Heading into the park seems like more of a wildcard choice...<br>
<br>
[<<moveTo "event_prostitution_competition_3_park_1" "Head into the park and see who's looking for sex." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_club_1" "Go to the other side of the park and try to catch some action with club-goers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_street_1" "Work the street." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_change" "Head to a bathroom to change." 180>>]
<<else>>
You decide a full-on competition is a bit much for this evening. "@@.npc_barkeeper;Sure, sure... well, maybe some other time.@@"<br>
<br>
[<<moveTo "event_prostitution_vip_root" "Ask about other clients." 1>>]
[<<moveTo "room_usual_place_inside" "Do something else." 60>>]
<</if>>
</div>/*#
#desc: change clothes in park restroom
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Public Restroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<div id="invframe" class="scrolltext">
You find an empty stall in one of the park's public bathrooms and slip inside to change.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Public Restroom">><<set $scene.return_makeuproom="event_prostitution_competition_3_change">><<set $scene.makeuproom_image="./images/locations/mall_toilet_2.png">><<set $scene.return_makeuproomtext="Back.">>'>>]<br>
<br>
<</if>>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_prostitution_competition_3_park_1" "Head into the park and see who's looking for sex." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_club_1" "Go to the other side of the park and try to catch some action club-goers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_street_1" "Work the street." 1800>>]<br>
[<<moveTo "event_prostitution_competition_4_quit" "Call it a night." 180>>]<br>
<<else>>
[@@.link_locked;You may be a whore... but you are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: vip: prostitution competition park
#status: RELEASED 0.9.0.0
#ignore_spell: jure
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitution.client = $scene.prostitution.park.pop()>>
<<if !$scene.prostitution.client>>
<<set $scene.prostitution.client = "empty">>
<</if>>
<<applyFatigue 25>>
<</if>>
<<set $player.location to "Sketchy City Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png">>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() < 3>>
It's getting late, and you're feeling tired.<br>
<br>
<<set $scene.wpCost = 4 - Math.floor(setup.getTotalValue("bimbofication")/5)>>
<<if setup.getWillpower() >= $scene.wpCost>>
[<<moveTo "event_prostitution_competition_5" "Press on!" 3600 "<<spendWillpower $scene.wpCost>>">>] <<if $scene.wpCost >= 2>><<hint $options "Pushing yourself to be such a slut will cost significant willpower">><<elseif $scene.wpCost > 0>><<hint $options "Even for a slut like yourself, pushing this hard will cost willpower">><</if>><br>
<</if>>
<<if $scene.wpCost == 0>>
[@@.link_locked;Can't stop. Won't stop. You are too much of a slut to ever give up.@@]<br>
<<else>>
[<<moveTo "event_prostitution_competition_5_end" "Call it a night and head back to The Usual Place." 300>>]<br>
<</if>>
<<else>>
<<switch $scene.prostitution.client>>
<<case 'frat'>>
You wander the park looking for a client, you see what looks like a frat party and walk closer... but they are focused on the drinking game de jure and uninterested in your services.<br>
<br>
<<case 'jogger'>>
You pass by a jogger on a late-night run, they pass with a nod, but are uninterested in your services.<br>
<br>
<<case 'nothing'>>
You wander the park looking for a client, but fail to garner any interest.<br>
<br>
<<case 'empty'>>
You wander the park looking for a client, but it seems like the park has all but cleared out for the night.<br>
<br>
<<case 'rival_tie' 'valkyrie' 'police_dog'>>
<<set _client = setup.getProstitutionClient('park', $scene.prostitution.client)>>
<<=_client.desc>><br>
<br>
[<<moveTo "event_prostitution_competition_3_park_2" _client.request 600>>]<br>
<<default>>
ERROR: unexpected scene.prostitution.client <<=$scene.prostitution.client>>
<</switch>>
[<<moveTo "event_prostitution_competition_3_park_1" "Spend some more time prowling the park for customers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_club_1" "Go to the other side of the park and try to catch some action with club-goers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_street_1" "Work the street." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_change" "Head to a bathroom to change." 180>>]
<</if>>
</div>/*#
#desc: vip: prostitution competition park serve client
#status: RELEASED 0.9.0.0
#*/
<<set _client = setup.getProstitutionClient('park', $scene.prostitution.client)>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<set $scene.prostitution.clientCount++>>
<<addCredits _client.base_pay>>
<<if _client.skill>>
<<applyExperience _client.skill.name _client.skill.value 'normal' $SEEN_STRANGER>>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.park[$scene.prostitution.client] = true>>
<</if>>
<<set $player.location to "Sketchy City Park">>
<<initRoom>>
<<include playerMenu>>
<<if _client.image_intro>>
<<if _client.image_intro.endsWith(".png")>>
<<createAdvBGR "./images/locations/city_park.png" _client.image_intro>>
<<else>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImageGeneric(_client.image_intro)>>
<</if>>
<<else>>
<<createAdvBGR "./images/locations/city_park.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<= _client.scene_success>><br>
<br>
[<<moveTo "event_prostitution_competition_3_park_1" "Spend some more time prowling the park for customers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_club_1" "Go to the other side of the park and try to catch some action with club-goers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_street_1" "Work the street." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_change" "Head to a bathroom to change." 180>>]
</div>/*#
#desc: vip: prostitution competition club
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitution.client = $scene.prostitution.club.pop()>>
<<if !$scene.prostitution.client>>
<<set $scene.prostitution.client = "empty">>
<</if>>
<<applyFatigue 25>>
<</if>>
<<set $player.location to "Redlight District">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/club_exterior.png">>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() < 3>>
It's getting late, and you're feeling tired.<br>
<br>
<<set $scene.wpCost = 4 - Math.floor(setup.getTotalValue("bimbofication")/5)>>
<<if setup.getWillpower() >= $scene.wpCost>>
[<<moveTo "event_prostitution_competition_5" "Press on!" 3600 "<<spendWillpower $scene.wpCost>>">>] <<if $scene.wpCost >= 2>><<hint $options "Pushing yourself to be such a slut will cost significant willpower">><<elseif $scene.wpCost > 0>><<hint $options "Even for a slut like yourself, pushing this hard will cost willpower">><</if>><br>
<</if>>
<<if $scene.wpCost == 0>>
[@@.link_locked;Can't stop. Won't stop. You are too much of a slut to ever give up.@@]<br>
<<else>>
[<<moveTo "event_prostitution_competition_5_end" "Call it a night and head back to The Usual Place." 300>>]<br>
<</if>>
<<else>>
<<switch $scene.prostitution.client>>
<<case 'punk'>>
You see a group of punk rockers smoking behind a club, from the musical equipment in the van they're leaning against, you'd guess they've just wrapped up a gig. They do not appear interested in you.<br>
<br>
<<case 'drunk'>>
You dodge out of the way of a drunk stumbling past you on <<his>> way to an alleyway.<br>
<br>
<<case 'coworker'>>
You spot what looks like a coworker, they don't appear to have recognised you, and they disappear into a club a moment later.<br>
<br>
<<case 'rock'>>
You see an old-school rocker in biker leathers chatting with the bouncer outside a club, <<he>> does not appear to be interested in you.<br>
<br>
<<case 'dance'>>
You pass by the line of customers waiting to get into a dance club, but fail to attract any interest.<br>
<br>
<<case 'wine'>>
A snooty <<man>> hurries past you on the way to a posh wine bar.<br>
<br>
<<case 'pop'>>
You catch sight of a pop star and her entourage, but they are quickly welcomed into a club by the bouncer.<br>
<br>
<<case 'nothing'>>
You stand around outside the clubs trying to attract a client, but are unsuccessful.<br>
<br>
<<case 'empty'>>
You stand around outside the clubs, but it seems like everyone who is going out clubbing is already in the club.<br>
<br>
<<case 'tattoo' 'lab_tech'>>
<<set _client = setup.getProstitutionClient('club', $scene.prostitution.client)>>
<<=_client.desc>><br>
<br>
[<<moveTo "event_prostitution_competition_3_club_2" _client.request 600>>]<br>
<<default>>
ERROR: unexpected scene.prostitution.client <<=$scene.prostitution.client>>
<</switch>>
[<<moveTo "event_prostitution_competition_3_park_1" "Head into the park and see who's looking for sex." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_club_1" "Keep hanging out in front of the clubs and look for customers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_street_1" "Work the street." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_change" "Head to a bathroom to change." 180>>]
<</if>>
</div>/*#
#desc: vip: prostitution competition street serve client
#status: RELEASED 0.9.0.0
#*/
<<set _client = setup.getProstitutionClient('club', $scene.prostitution.client)>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<set $scene.prostitution.clientCount++>>
<<addCredits _client.base_pay>>
<<if _client.skill>>
<<applyExperience _client.skill.name _client.skill.value 'normal' $SEEN_STRANGER>>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.park[$scene.prostitution.client] = true>>
<</if>>
<<set $player.location to "Redlight District">>
<<initRoom>>
<<include playerMenu>>
<<if _client.image_intro>>
<<if _client.image_intro.endsWith(".png")>>
<<createAdvBGR "./images/locations/club_exterior.png" _client.image_intro>>
<<else>>
<<createAdvBGR "./images/locations/club_exterior.png" setup.charImageGeneric(_client.image_intro)>>
<</if>>
<<else>>
<<createAdvBGR "./images/locations/club_exterior.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<= _client.scene_success>><br>
<br>
[<<moveTo "event_prostitution_competition_3_park_1" "Head into the park and see who's looking for sex." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_club_1" "Keep hanging out in front of the clubs and look for customers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_street_1" "Work the street." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_change" "Head to a bathroom to change." 180>>]
</div>/*#
#desc: vip: prostitution competition street
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitution.client = $scene.prostitution.street.pop()>>
<<if !$scene.prostitution.client>>
<<set $scene.prostitution.client = "empty">>
<</if>>
<<applyFatigue 25>>
<</if>>
<<set $player.location to "Tenderloin Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() < 3>>
It's getting late, and you're feeling tired.<br>
<br>
<<set $scene.wpCost = 4 - Math.floor(setup.getTotalValue("bimbofication")/5)>>
<<if setup.getWillpower() >= $scene.wpCost>>
[<<moveTo "event_prostitution_competition_5" "Press on!" 3600 "<<spendWillpower $scene.wpCost>>">>] <<if $scene.wpCost >= 2>><<hint $options "Pushing yourself to be such a slut will cost significant willpower">><<elseif $scene.wpCost > 0>><<hint $options "Even for a slut like yourself, pushing this hard will cost willpower">><</if>><br>
<</if>>
<<if $scene.wpCost == 0>>
[@@.link_locked;Can't stop. Won't stop. You are too much of a slut to ever give up.@@]<br>
<<else>>
[<<moveTo "event_prostitution_competition_5_end" "Call it a night and head back to The Usual Place." 300>>]<br>
<</if>>
<<else>>
<<switch $scene.prostitution.client>>
<<case "police">>
You spot a police-<<man>> walking down the street, although <<he>> looks over you and the other street-walkers, <<he>> makes no move to interfere with your work.<br>
<br>
<<case "npc_egg">>
You think you catch sight of your friend <<=setup.getNpcName("npc_egg","first")>>, but they disappear around a corner before you can catch up and be sure.<br>
<br>
<<case "npc_rival">>
You spot <<=setup.getNpcName("npc_rival","formal")>> driving past in a convertible, but <<he>> does not appear to notice you.<br>
<br>
<<case 'nothing'>>
You work the street trying to attract a client, but are unsuccessful.<br>
<br>
<<case 'empty'>>
You work the street trying to attract a client, but you see almost nobody left tonight.<br>
<br>
<<case 'npc_manager' 'pretty_woman' 'police_horse'>>
<<set _client = setup.getProstitutionClient('street', $scene.prostitution.client)>>
<<=_client.desc>><br>
<br>
[<<moveTo "event_prostitution_competition_3_street_2" _client.request 600>>]<br>
<<default>>
ERROR: unexpected scene.prostitution.client <<=$scene.prostitution.client>>
<</switch>>
[<<moveTo "event_prostitution_competition_3_park_1" "Head into the park and see who's looking for sex." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_club_1" "Go to the other side of the park and try to catch some action with club-goers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_street_1" "Keep working the street." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_change" "Head to a bathroom to change." 180>>]
<</if>>
</div>/*#
#desc: vip: prostitution competition street serve client
#status: RELEASED 0.9.0.0
#*/
<<set _client = setup.getProstitutionClient('street', $scene.prostitution.client)>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<set $scene.prostitution.clientCount++>>
<<addCredits _client.base_pay>>
<<if _client.skill>>
<<applyExperience _client.skill.name _client.skill.value 'normal' $SEEN_STRANGER>>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.park[$scene.prostitution.client] = true>>
<</if>>
<<set $player.location to "Tenderloin Street">>
<<initRoom>>
<<include playerMenu>>
<<if _client.image_intro>>
<<if _client.image_intro.endsWith(".png")>>
<<createAdvBGR "./images/locations/street.png" _client.image_intro>>
<<else>>
<<createAdvBGR "./images/locations/street.png" setup.charImageGeneric(_client.image_intro)>>
<</if>>
<<else>>
<<createAdvBGR "./images/locations/street.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<= _client.scene_success>><br>
<br>
[<<moveTo "event_prostitution_competition_3_park_1" "Head into the park and see who's looking for sex." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_club_1" "Go to the other side of the park and try to catch some action with club-goers." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_street_1" "Keep working the street." 1800>>]<br>
[<<moveTo "event_prostitution_competition_3_change" "Head to a bathroom to change." 180>>]
</div>/*#
#desc: vip: prostitution competition quit
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tap out early and head back to The Usual Place where <<=setup.getNpcName('npc_barkeeper', 'first')>> shakes her head. "@@.npc_barkeeper;The other two girls are still out, so you've DEFINITELY lost... but hey, good job paying attention to yourself and not overworking your body<<if State.hasPlayed("event_prostitution_competition_5") || $npc_barkeeper.flags.prostitution.caught > 0>>, you know... like you have before<</if>>.@@"<br>
<br>
You thank her for the well-wishes and head on your way.<br>
<br>
[<<moveTo "room_usual_place_inside" "Step away." 60>>]
</div>/*#
#desc: vip: prostitution competition stop after midnight
#status: RELEASED 0.9.0.0
#ignore_spell: bimboriffic
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prostitution.prosClients = random(3, $scene.prostitution.clientCount+3)>>
<<set $scene.prostitution.baristaClients = 2*($scene.prostitution.prosClients + $scene.prostitution.clientCount) + random(1,5)>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper") setup.charImage("npc_barista","npc_barista_bimbo") setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
With midnight come and gone you decide to head back to the Usual Place to check in.<br>
<br>
You actually meet up with <<=setup.getNpcName('npc_prostitute', 'first')>> and <<=setup.getNpcName('npc_barista', 'nickname')>> partway back to the bar, and the three of you head in to <<=setup.getNpcName('npc_barkeeper', 'first')>> where you recite your totals. You served <<=$scene.prostitution.clientCount>> customers, <<=setup.getNpcName('npc_prostitute', 'first')>> <<=$scene.prostitution.prosClients>>... and <<=setup.getNpcName('npc_barista', 'nickname')>> somehow having a serviced bimboriffic <<=$scene.prostitution.baristaClients>>.<br>
<br>
"@@.npc_barkeeper;Wow, that's phenomenal, all three of you. That sort of action is DEFINITELY going to boost business going forward... and I especially want to congratulate <<=$player.first_name>> and <<=setup.getNpcName('npc_prostitute', 'first')>> for giving it your all. I mean... I think we all knew <<=setup.getNpcName('npc_barista', 'nickname')>> was going to cruise to a victory, but from the sound of things, you didn't let that slow you down... even if she did literally double your combined scores...<<if $npc_barista.flags.rescue.cure == "good">> and rake in the credits, as well<<else>>though she made about the same money as either of you<</if>>.@@"<br>
<br>
<<if $npc_barista.flags.rescue.cure == "good">>
<<=setup.getNpcName('npc_barista', 'first')>> lets her mask slip for just a moment to wink at you. "@@.npc_barista;Bimbos, like... get it done!@@"
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>> giggles. "@@.npc_barista;Sometimes I, like... forget to charge? I mean, I'm having so much fun! But I still get tips, and I remembered to tell them that the freebie was a promotion and that they should come in for more sometime!@@"
<</if>>
<br><br>
You're a little crestfallen that your efforts are for naught... but, then again, there are professional whores and then there is <<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
"@@.npc_barkeeper;As thanks, you can all keep everything you earned. Your work was getting the word out, and you did that and more... plus, well... the whole agreement is that you pay me a portion for the use of the bar and facilities... since you didn't use any of that, well, it would be unethical to take a cut, right? Anyway, let me call you three some cabs, after working that hard it wouldn't be right to send you home on foot.@@"<br>
<br>
You share a few minutes swapping stories of the night with your friends before the cabs arrive and the three of you go your separate ways.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
</div>/*#
#desc: vip: prostitution competition push yourself
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 1000>>
<<addCredits `20 + random(3,30)`>>
<</if>>
<<set $player.location to "Sketchy City Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png">>
<div id="invframe" class="scrolltext">
You press on, determined to "win"... or maybe just utterly addicted to sucking and fucking. As the clubs wind down you find yourself in the park, scrounging in the dark for whatever customers you can, slashing your rates as you all but beg to be used, be it bent over a park bench, kneeling on a jogging trail, or fucked up against a tree, you go and go until you lose track of everything...<br>
<br>
[<<moveTo "event_prostitution_competition_6" "Pass out." 2000>>]
</div>/*#
#desc: vip: prostitution competition wake up after passing out
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper") setup.charImage("npc_barista","npc_barista_bimbo") setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You wake up back in The Usual Place, looking up to see <<=setup.getNpcName('npc_barkeeper', 'first')>>, <<=setup.getNpcName('npc_prostitute', 'first')>>, and <<=setup.getNpcName('npc_barista', 'nickname')>> standing over you. "@@.npc_barkeeper;Welcome back! Looks like someone pushed themselves a bit hard...<<if $npc_barkeeper.flags.prostitution.caught > 0>> and not for the first time, either! Well,<</if>> fortunately for you, <<=setup.getNpcName('npc_prostitute', 'first')>>, and <<=setup.getNpcName('npc_barista', 'nickname')>> brought you back here... if you're feeling alright I can call you a cab...@@"<br>
<br>
You're still exhausted... yet you reflexively ask "@@.pc;who won?@@"<br>
<br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> shakes her head, "@@.npc_barkeeper;I don't know whether to be impressed at your professionalism, or worried about your whorish fixation, but, if you insist...@@"<br>
<br>
She asks for your totals and then shakes her head, "@@.npc_barkeeper;sorry, even if I credit you with a couple extra that you might have forgotten in your blitz to the end... <<=setup.getNpcName('npc_barista', 'nickname')>> is fucking unstoppable, she literally outscored you and <<=setup.getNpcName('npc_prostitute', 'first')>> combined...<<if $npc_barista.flags.rescue.cure == "good">> and raked in the credits, as well<<else>>though she made about the same money as either of you<</if>>.@@"<br>
<br>
<<if $npc_barista.flags.rescue.cure == "good">>
<<=setup.getNpcName('npc_barista', 'first')>> lets her mask slip for just a moment to wink at you. "@@.npc_barista;Bimbos, like... get it done!@@"
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>> giggles. "@@.npc_barista;Sometimes I, like... forget to charge? I mean, I'm having so much fun! But I still get tips, and I remembered to tell them that the freebie was a promotion and that they should come in for more sometime!@@"
<</if>>
<br><br>
You're a little crestfallen that your efforts are for naught... but, then again, there are professional whores and then there is <<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
<<=setup.getNpcName('npc_barkeeper', 'first')>> summons a cab and your friends are soon helping you head home.<br>
<br>
[<<moveTo "event_prostitution_competition_7" "Continue." 300>>]
</div>/*#
#desc: vip: prostitution competition home
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Inside an Automated Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You barely remember the car-ride home, almost passing out during the short shift and then helped up to your flat by <<=setup.getNpcName('npc_prostitute', 'first')>>, who leads you to your bedroom where you face-plant into your bed.<br>
<br>
<<set _timeToWork = setup.secondsToDate($now, setup.getTaskDueDate("manager_morning_inspection_task"))-1>>
[<<moveTo 'event_prostitution_competition_8' 'Sleep.' _timeToWork "<<completeTask 'manager_morning_inspection_task' false>>">>]
</div>/*#
#desc: wake up to prostitution
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 240)>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You wake up to the screeching of your phone, picking it up to hear <<=setup.getNpcName("npc_manager","formal")>> snarling in your ear.<br>
<br>
"@@.npc_manager_dom;You are LATE,@@" she snaps as you try to claw your way back to consciousness. "@@.npc_manager_dom;I expected you at your desk several minutes ago... I will give you twenty minutes to get your ass to work. HURRY UP!@@"<br>
<br>
Your ear is ringing as she cuts the call and you fall out of bed.<br>
<br>
<<if false>>
<<moveTo "event_late_work_prostitution_1_comp">>
<</if>>
[<<moveTo "room_bedroom" "Get up." 60 "<<set _x = setup.addManagerEndlessTask()>><<set $currentTasks.manager_morning_inspection_task.trigger.morningOffice.time.date = setup.advanceDate($player, $now, 'minutes', 20)>><<set $currentTasks.manager_morning_inspection_task.rewards.trigger_event='event_late_work_prostitution_1_comp'>>">>]
</div>/*#
#desc: psychiatrist classy prostitution intro
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You stand around for a few minutes, feeling quite overdressed for the Usual Place when you get a text that a vehicle is waiting for you outside.<br>
<br>
You enter the waiting limousine to find <<=setup.getNpcName('npc_psychiatrist', 'formal')>> sitting at the far end, looking classy, fancy, and in control.<br>
<br>
[<<moveTo "event_vip_psychiatrist_fancy_2" "The vehicle pulls away..." 1800>>]
</div>/*#
#desc: psychiatrist classy prostitution get changed
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "opera_dress">>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
"@@.npc_psychiatrist;Good evening,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> says with a smile as she looks you over. "@@.npc_psychiatrist;You are looking quite lovely but... well, the clothing requirement was a test, for what I have planned for tonight I have a special outfit for you...@@"<br>
<br>
She gestures to the seat beside her where a gorgeous, fiery dress is laid out.<br>
<br>
"@@.npc_psychiatrist;Hurry now... there is more than just the dress... but for now I want you wearing ONLY the dress and heels.@@" Her grin makes it clear that "only" means only... which means no underwear. You shiver slightly, though the vehicle is quite warm.<br>
<br>
[<<moveTo "event_vip_psychiatrist_fancy_3" "Strip naked and put on the dress." 300>>]
</div>/*#
#desc: psychiatrist classy prostitution get bound
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<wearItem "opera_dress" true>>
<<addItem "posture_collar_gold">>
<<wearItem "posture_collar_gold" true>>
<<addItem "concealing_veil">>
<<wearItem "concealing_veil" true>>
<<addItem "penis_gag_pink">>
<<wearItem "penis_gag_pink" true>>
<<addItem "thigh_cuffs_steel">>
<<wearItem "thigh_cuffs_steel" true>>
<<addItem "ankle_cuffs_steel">>
<<wearItem "ankle_cuffs_steel" true>>
<<set $scene.addPlug = !setup.checkItemTypeTag('plug', ['vibrating'])>>
<<if $scene.addPlug>>
<<addItem "vibrating_plug_large">>
<<wearItem "vibrating_plug_large" true>>
<</if>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
Under <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> watchful gaze you shed your clothing... all of your clothing, and then slip into the dress. Long and large, and with an integrated corset that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> helpfully tightens all the way down. You immediately feel fancy, and a bit constrained... even moreso when <<=setup.getNpcName('npc_psychiatrist', 'formal')>> hands you a pair of matching ballet heels.<br>
<br>
"@@.npc_psychiatrist;Lovely... skimpy and sheer are fine, but there is a certain classical appeal to elegant and concealing, how it hints rather than reveals... and, for our purposes... WHAT it can conceal.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states as you finish lacing up the boots... and then grins as she adds a set of thigh and ankle cuffs underneath your dress.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is almost invisible under your large dress and she soon has you quite efficiently hobbled. With a smile <<=setup.getNpcName('npc_psychiatrist', 'formal')>> moves higher still<<if $scene.addPlug>> to slide a plug into your rear and give<<else>> "checking" the plug in your rear by giving<</if>> it a wiggle. "@@.npc_psychiatrist;As I said... what it can conceal.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states with a wink as she pops back out from under your skirts... and then matches the rigid posture of your corset with a matching neck corset and a penis gag. The shape is familiar and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> confirms your suspicions with a grin and an "@@.npc_psychiatrist;I may be off the clock... but you can be on my cock for some nice oral therapy...@@"<br>
<br>
She winks and pulls a veil over your head to conceal both collar and gag from view as you are further constrained, and further filled.<br>
<br>
[<<moveTo "event_vip_psychiatrist_fancy_4" "The limousine comes to a stop." 300>>]
</div>/*#
#desc: psychiatrist classy prostitution get seated
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Theatre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_theatre.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
The limousine comes to a stop and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> slides out first, reaching back to offer you a hand as you carefully turn in place to help you out. Between the ballet boots and your hobbles standing is a bit of a challenge... especially as you realise that you're very much in public outside of a theatre and the issue of preserving your dignity adds itself to the mix.<br>
<br>
Despite all that, and the fact that every move has the plug inside you shifting inside of you, you make it to your feet, gratefully accepting <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> as she leads the way into the theatre, whispering to you softly.<br>
<br>
"@@.npc_psychiatrist;Soak in that attention. Feel all those eyes upon you. Being a prostitute is not just gloryholes and back-alley quickies and cheap hotels... it can also be this. Elegance, class, the prize worth paying to have on someone's arm for the evening... and all of those people? All they see is a beautiful woman. Only I know that you're plugged<<if setup.checkItemTypeWorn("cage")>> and chaste<</if>>, not even wearing panties to catch your drips of excitement.@@"<br>
<br>
You shiver slightly as you make the slow walk into the opulent theatre as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> continues to quietly narrate. "@@.npc_psychiatrist;Stay with me. Bask in that attention, those looks of jealousy, lust... they're yours to savour, the reason I hired you... but also enjoy that none of them know the truth. That your demure pace is because of your hidden hobbles, that your silent mystery is because of that huge gag I shoved in your mouth... and that your proudly raised chin is because you are a collared slave... ah, and I believe these would be our seats.@@"<br>
<br>
[<<moveTo "event_vip_psychiatrist_fancy_5" "Return to reality." 300>>]
</div>/*#
#desc: psychiatrist classy prostitution show starts
#status: RELEASED 0.9.4.0
#ignore_spell: cherubino
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Theatre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_theatre.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You blink, momentarily sticking your head back above the deep waters of subspace as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> helps you take a seat. You were so caught up in her words, and keeping your balance as you minced forward in your ballet-heel bondage down carpeted steps and along the narrow aisle to your seat at the front of the first balcony.<br>
<br>
Sitting down drives the plug slightly deeper into your ass, as your bound legs leave you no options to spread out or relax.<br>
<br>
You must have let out a gasp as the woman sitting next to you turns with a smile. "@@.generic_female1;Excited for the show? The Marriage of Figaro is one of my favourite operas, what do you think?@@"<br>
<br>
You're uncertain how to reply, given your gag, but <<=setup.getNpcName('npc_psychiatrist', 'formal')>> steps in, leaning over to greet the other woman. "@@.npc_psychiatrist;It's her first time seeing it, actually... personally I just love the part of Cherubino... oh, but it looks like they're about to start.@@"<br>
<br>
The woman smiles and turns her attention to the stage as the house lights dim and you are granted a modicum of privacy.<br>
<br>
[<<moveTo "event_vip_psychiatrist_fancy_6" "Enjoy the show." 900>>]
</div>/*#
#desc: psychiatrist classy prostitution teased
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 40>>
<</if>>
<<set $player.location to "The Theatre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_theatre.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
The opera starts and, as the music swells with the first number your plug buzzes with vibration. You gasp, only to be shushed by someone behind you. Your heart beats faster as, unable to turn your head more than a few degrees due to your posture collar, you look at <<=setup.getNpcName('npc_psychiatrist', 'formal')>>. She squeezes your hand as you white-knuckle the armrest.<br>
<br>
The music swells once more and with it the vibe in your rear buzzes again. You're ready for it this time... but that just lets you bite down on your gag, stifling any sound as your eyes lose focus.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles as you stare at her, gesturing for you to look at the stage as she tilts her hat to hide your view of her face... and goes back to fiddling with the remote.<br>
<br>
You try not to squirm too loudly, you're barely at the start of act one and you know you're never going to be able to follow what's going on on-stage... something about a wedding? You don't even know, the dialogue goes in one ear and out the other even as you try to distract yourself from your excitement... and anticipate when the next musical number will come along, and with it more "entertainment" from behind...<br>
<br>
[<<moveTo "event_vip_psychiatrist_fancy_7" "Survive to intermission." 1800>>]
</div>/*#
#desc: psychiatrist classy prostitution intermission
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 40>>
<</if>>
<<set $player.location to "The Theatre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_theatre.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You've drifted into something of a trance. If it wasn't for your corset enforcing nice, strict posture you'd have slid down to the floor, the combination of your bondage, the constantly tormenting plug filling your rear, and that you're technically in public has you struggling to keep it together, momentarily confused when the stage clears and the house lights come on.<br>
<br>
Remembering the chatty woman sitting next to you, you try to stand, hoping <<=setup.getNpcName('npc_psychiatrist', 'formal')>> will understand your desperation and lend a hand before your gagged state becomes a problem.<br>
<br>
"@@.npc_psychiatrist;Looking to stretch your legs?@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> teases as she rises next to you and helps you make it back to the aisle.<br>
<br>
You're even more unsteady now than when you came in, your arousal refusing to dip even though the plug in your rear is not currently vibrating, your nearly pressed-together thighs wet with all the arousal your lack-of-panties has failed to contain.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> leads you through the crowd, leaning in once again to whisper to you as she does. "@@.npc_psychiatrist;See the challenge of the escort, not just to simply get your client off, but to fulfill their fantasies, to be their prize on display... and to obey their every perverted whim... whatever comes along...@@"<br>
<br>
Cumming sounds QUITE good at the moment and you try to steer towards an empty-looking side hallway, the handful of steps you've taken having done little to quell your arousal as the plug in your rear shifts with every mincing step as you find something resembling privacy between a pair of plants. Leaning against the wall your nostrils flare as you try to catch your breath, desperately hoping that nobody is paying attention to you.<br>
<br>
[<<moveTo "event_vip_psychiatrist_fancy_8" "Continue." 120>>]
</div>/*#
#desc: psychiatrist classy prostitution intermission oral
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 40>>
<</if>>
<<set $player.location to "The Theatre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_theatre.png" setup.charImageGeneric("usher")>>
<div id="invframe" class="scrolltext">
Your temporary privacy is, perhaps, too good as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> takes advantage of your hiding place to hide, herself... underneath your skirts. You resist the urge to bat at your skirts, the large dress apparently providing plenty of space for <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to kneel between your legs, the subservient position only enhancing her control as she takes advantage of your lack of panties to
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
lift your cage out of the way and begin licking the oh-so-wet slit behind,
<<else>>
kiss up and down on either side of your chastity shield, your prison constantly reminding you of its secure presence as
<</if>>
<<else>>
lick between your legs,
<</if>>
your hobbles preventing you from spreading further in invitation.
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
Toy with your cage<<if $player.body_ref.balls>> and fondle your sensitive balls<</if>>.
<<else>>
kiss up and down on either side of your chastity shield, your prison constantly reminding you of its secure presence as your hobbles preventing you from spreading further in invitation.
<</if>>
<<else>>
begin tenderly kising your hard<<if $fetish.cum>>, dripping<</if>> <<getWordMyPenis>>.
<</if>>
<</if>>
<br><br>
Your knees wobble as you glance around in panic, <<printThought "What if someone notices? I can't believe <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is... OH GODDESS.">><br>
<br>
Distracted by the nimble tongue up front, you had almost forgotten about the plug still stuffed in your rear, and you slip a few centimetres down the wall as its vigorous buzzing adds to the secret party beneath your skirt. You're thankful for your veil for more than just concealing your gag as your eyes half-close and lose focus, your body at war with itself as you resist the urge to surrender to pleasure and remain vertical only thanks to the combination of corset and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> pushing you up into the wall.<br>
<br>
[<<moveTo "event_vip_psychiatrist_fancy_9" "Oh <<getWordGod>>..." 300>>]
</div>/*#
#desc: psychiatrist classy prostitution caught by usher
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 40>>
<<applyExperience 'humiliation' 18 'terrible' $INCOGNITO>>
<</if>>
<<set $player.location to "The Theatre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_theatre.png" setup.charImageGeneric("usher")>>
<div id="invframe" class="scrolltext">
"@@.generic_male1;Five minutes to curtain, ma'am.@@"<br>
<br>
You are ready to surrender to orgasm, damn the consequences when you're yanked back to the real world, looking around to see an usher standing in front of you.<br>
<br>
"@@.generic_male1;I said five minutes to curtain... did you need help finding your seat?@@" The usher asks politely.<br>
<br>
You try not to pant as, down below, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> thankfully goes still for a moment... not that that's a full solution given that your ass is frantically milking the momentarily still plug gaping it.<br>
<br>
You shake your head, trying not to pant as the usher looks you over for a few moments longer and then turns to go. "@@.generic_male1;I recommend you hurry, it is rude to take your seat after the show has resumed.@@"<br>
<br>
You nod quickly, sighing with relief and trembling with excitement as you listen to the usher walk away... and then <<=setup.getNpcName('npc_psychiatrist', 'formal')>> pops up next to you.<br>
<br>
"@@.npc_psychiatrist;I think, perhaps that another act might be too much for you... besides, I do not thing you were properly paying attention to the plot in the first.@@"<br>
<br>
You shake your head and gratefully accept <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> offered arm, leaning against her as she leads the way to the exit and the limousine glides into view.<br>
<br>
[<<moveTo "event_vip_psychiatrist_fancy_10" "Gratefully flop into the limo and remove your veil." 1800>>]
</div>/*#
#desc: psychiatrist classy prostitution head home
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.psychiatrist_high = true>>
<<set $scene.pay = $scene.client.base_pay>>
<<addCredits $scene.pay>>
<<removeItem "thigh_cuffs_steel" true>>
<<deleteItem "thigh_cuffs_steel">>
<<removeItem "ankle_cuffs_steel" true>>
<<deleteItem "ankle_cuffs_steel">>
<<removeItem "penis_gag_pink" true>>
<<deleteItem "penis_gag_pink">>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You lay back in the limo gratefully and pull off the veil to get some fresh air. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> chuckles as she removes your gag, wiping the drool off your chin before hiking up your dress to free your legs from your bondage.<br>
<br>
"@@.npc_psychiatrist;Well well, I do hope you enjoyed your little night at the opera... and a glimpse into the upper crust world of escort service. As your therapist it is my job to help you explore possibilities, and, well, with you pursuing work as a <<callPlayer "npc_barkeeper">>... well, it felt proper to show you the high end of things.@@"<br>
<br>
You listlessly nod, too exhausted to think about the doctor/patient ethics or any possible therapeutic benefits of what you just did as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> finishes removing your restraints to settle in next to you.<br>
<br>
You reflexively cuddle into her and she smiles, an arm draped comfortingly around your shoulder as she directs the driver to your home.<br>
<br>
"@@.npc_psychiatrist;You may keep the dress,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> states as you arrive in front of your building "@@.npc_psychiatrist;And, of course, your fee,@@" she adds, handing you a full <<=$scene.pay>> credits.<br>
<br>
"@@.npc_psychiatrist;High class escorts earn high-class pay.@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles as you stare in shock before the limousine door closes and the sleek vehicle glides away.<br>
<br>
[<<moveTo "room_foyer" "Head up to your flat." 300>>]
</div>/*#
#desc: confirm librarian job
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_barkeeper', 'first')>> that you'll take the job. She nods somberly. "@@.npc_barkeeper;So, before you confirm, I want to make sure you understand that this client? She uses her girls hard, I think she hires them to let out work stress or something. She's never permanently injured anyone... but this may be more intense and cruel than you're probably used to.@@"<br>
<br>
[<<moveTo "event_vip_librarian_2" "Accept the job." 600>>]<br>
[<<moveTo "event_prostitution_vip_root" "Ask about another job instead." 600>>]
</div>/*#
#desc: ride to university for librarian job
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "Inside an Automated Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png">>
<div id="invframe" class="scrolltext">
You confirm to <<=setup.getNpcName('npc_barkeeper', 'first')>> that you accept the risk and she summons you an auto-cab that whisks you across town.<br>
<br>
You pass near <<=ps(setup.getNpcName('npc_barkeeper', 'first'))>> place as you zip through the university district... directly onto the university campus itself.<br>
<br>
You are dropped off in a far corner of campus in front of a large, old building. According to the large sign above the main entrance this is the Bastion Reference Library, but it appears to be closed to the public. No sooner have you exited the cab than your phone rings with a message from an unfamiliar number.<br>
<br>
[<<moveTo "event_vip_librarian_3" "Answer the phone." 600>>]
</div>/*#
#desc: enter library
#status: FINISHED 0.8.3.0
#ignore_spell: durchschlafen,das
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You answer your phone to hear a stern, serious, feminine voice from the other side.<br>
<br>
"@@.generic_female1;Hello. I have paid for your services for the next few hours, and I have very particular requirements. You will listen, and you will obey my instructions.@@"<br>
<br>
Just the sound of the woman's voice is a little intimidating, and she does not even give you a chance to acknowledge anything before she is continuing on with your orders.<br>
<br>
"@@.generic_female1;Before you is a building, once I have hung up, you will approach and enter through the side door. You will lock the door behind you. Upon entering the building you will behave as if you were a student of this university, you will make your way up the hallway and approach the front desk and request a copy of the book "Das College Durchschlafen" for check-out.@@"<br>
<br>
She hangs up, leaving you staring at the building as a small side-door swings slightly open in ominous invitation.<br>
<br>
[<<moveTo "event_vip_librarian_4" 'Head in and get to playing your part.' 600>>]<br>
</div>/*#
#desc: approach reference desk
#status: FINISHED 0.8.3.0
#ignore_spell: zähmen,mädchen,gute,zähmt,weicheier
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "University Library">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/library_desk.png" "stern_librarian">>
<div id="invframe" class="scrolltext">
You slip in through the side entrance to the library and lock the door as instructed and head up the hall to the library proper. You find yourself in a classic university library, tall stacks full of books that your average student would only ever read digitally.<br>
<br>
You see the described reference desk in the distance and you head towards it. The library is eerily quiet as you surmise you are alone save for your client. As you exit the stacks said client comes into view, an imperious looking woman standing behind the reference desk, not even looking up from her book<<if $fetish.sissy>> "Weicheier und Wie Man Sie Zähmt." <<else>> "Gute Mädchen Zähmen." <</if>><br>
<br>
The scope of this job starts to crystallise and you consider how to approach the desk.<br>
<br>
[<<moveTo "event_vip_librarian_5" "Approach the desk quietly and politely ask for the book like a good student." 300 "<<set $scene.bimbo=false>>">>]<br>
[<<moveTo "event_vip_librarian_5" "Approach the desk loudly and, like, ask for the book like an ignorant bimbo." 300 "<<set $scene.bimbo=true>>">>]
</div>/*#
#desc: librarian punishes request
#status: FINISHED 0.8.3.0
#ignore_spell: idiotenleitfaden,für
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bimbo>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'normal' $SEEN_STRANGER>>
<<else>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "University Library">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/library_desk.png" "stern_librarian">>
<div id="invframe" class="scrolltext">
<<if $scene.bimbo>>
You skip up to the reference desk and, after pretending to struggle for a few moments, ask if, like, you could get a copy of "Idiotenleitfaden für das College?" <br>
<br>
Very slowly the librarian closes her book and puts it to one side before looking down her nose at you.<br>
<br>
"@@.generic_female1;They really do keep lowering the admission standards...@@" She scans you up and down, her gaze cutting through your skimpy attire. "@@.generic_female1;Can you even read, you <<if $fetish.slurs>>dumb faggot<<elseif $fetish.sissy>>brainless sissy<<else>>stupid girl<</if>>? Or are you here on a spread legs and blowjobs scholarship — fucking your way through the faculty in pursuit of a degree in cummunications?@@"<br>
<br>
She bangs her hand on the table loud enough to make you jump. "@@.generic_female1;Well, spill it, missy — are you just wasting my time?@@"
<<else>>
You quietly approach the reference desk and ask if you could see a copy of "Idiotenleitfaden für das College?" <br>
<br>
The librarian slowly looks up from her reading, folding it slowly and placing the book to one side as she stares down at you through her glasses.<br>
<br>
"@@.generic_female1;What did you say?@@" She asks, her voice even more intimidating in person than it had been over the phone.<br>
<br>
Nervously, but politely you repeat your request, finishing things up with a curtsy as you lean in to your imagined role of obedient student.<br>
<br>
She snorts in annoyance. "@@.generic_female1;That is what I thought.@@" She shakes her head and leans over the desk to loom above you. "@@.generic_female1;Let me guess — you are used to being the adored teachers pet, the sweet <<if $fetish.sissy>>sissy <</if>>suck-up, always the first to remind your professor if they forgot to assign homework? Your kind disgusts me — secretly thinking you're better than everyone else, making a big show of following the rules and being good little <<if $fetish.sissy>>sissies<<else>>girls<</if>> while taking advantage of everyone around you.@@"<br>
<br>
"@@.generic_female1;Well is that it? Stop staring back at me like a deer in the headlights and spill — are you a depraved <<if $fetish.sissy>>sissy <</if>><<if $fetish.slurs>>faggot<<else>>slut<</if>> trying to sleep her way to an Ms. degree? Is that it? Are you just wasting my time?@@"
<</if>>
<br><br>
[<<moveTo "event_vip_librarian_6" "You just need the book for class..." 300 "<<set $scene.slut=false>>">>]<br>
[<<moveTo "event_vip_librarian_6" "Admit that yes, you are just a stupid<<if $fetish.sissy>> sissy<</if>> slut." 300 "<<set $scene.slut=true>>">>]
</div>/*#
#desc: librarian punishment continued
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<applyExperience 'bimbofication' 12 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'submission' 12 'terrible' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'bdsm' 12 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "University Library">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/library_desk.png" "stern_librarian">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You admit that you are a stupid<<if $fetish.sissy>> sissy<</if>> slut and she grins... only for her hand to shoot out and slap you across the face.
<<else>>
You start to apologise only for her hand to shoot out and slap you across the face.
<</if>>
<br><br>
You rub your stinging cheek in confusion and the librarian is suddenly right in front of you, on your side of the desk she stalks forward, looming above you as you reflexively step back only to find yourself up against a large shelf.<br>
<br>
"@@.generic_female1;Look at you, pathetic, tarted up... you won't learn from a book, no, the only way you'll absorb knowledge is if it's beaten into you — just like all the other trash of your generation, pestering me all day long with how you can't use a card catalogue, or that you just want to know how to look things up online — no appreciation for research or anything else!@@"<br>
<br>
She leans in closer, arms barricading you on either side. "@@.generic_female1;My name is Ms. Winters — and I am going to give you the lesson all of your kind deserves.@@"<br>
<br>
[<<moveTo "event_vip_librarian_7" '"Yes, Ms. Winters."' 180 "<<set $scene.ms=true>>">>]<br>
[<<moveTo "event_vip_librarian_7" "Remain silent." 180 "<<set $scene.ms=false>>">>]
</div>/*#
#desc: librarian punishment continued
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ms>>
<<applyExperience 'bdsm' 12 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bdsm' 12 'terrible' $SEEN_STRANGER>>
<</if>>
<<if $fetish.cum>>
<<addItem "tape_gag_panties">>
<<wearItem "tape_gag_panties" true>>
<<applyExperience 'cum' 18 'terrible' $SEEN_STRANGER>>
<<else>>
<<addItem "tape_gag">>
<<wearItem "tape_gag" true>>
<</if>>
<<applyExperience 'bondage' 10 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "University Library">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/library_desk.png" "stern_librarian">>
<div id="invframe" class="scrolltext">
<<if $scene.ms>>
"@@.pc;Yes, Ms. Winters,@@" you reply, your response just enough to have her lips flicker with a smile before she spins you around and bends you over the reference desk.<br>
<br>
"@@.generic_female1;That is a start — but a depraved trollop like yourself is going to need many more lessons before she can even pretend at being a proper student.@@"<br>
<br>
<<else>>
You remain silent and @@.generic_female1;Ms. Winters@@ scowls. "@@.generic_female1;Looks you have a lot to learn, let us make haste with your first lesson.@@"<br>
<br>
In an instant she spins you around and bends you over the reference desk.
<</if>>
You catch a glimpse of @@.generic_female1;Ms. Winters@@ grabbing the heavy book she was reading just before she brings it down on your rear with a loud CRACK.<br>
<br>
You cry out in pain and she huffs in annoyance.<br>
<br>
"@@.generic_female1;Barely have we started the lesson and already you have forgotten that we are in a library!@@"<br>
<br>
She slams the book back down next to you before
<<if $fetish.cum>>
stalking off to dig through the lost and found and pull out a used pair of panties.<br>
<br>
Before you can object she has shoved the panties into your mouth and taped everything in place, the unmistakable taste of old, dried cum coating your tongue.<br>
<br>
"@@.generic_female1;You like that, slut? We found them in one of the stacks, left behind by <<if $options.fem>>two horny <<if $fetish.futanari>>futas<<else>>girls<</if>> having fun<<else>>some horny love-birds<</if>>. I'd say they were yours, but it is not like there is any shortage of tramps on this campus, all intent on graduating without learning a thing other than how to chug beer and spunk both by the gallon.@@"
<<else>>
she grabs a roll of tape and efficiently gags you.
<</if>>
<br><br>
Rather than picking up the book she grins cruelly as she reaches back under the far side of her desk to come up with a tawse.<br>
<br>
"@@.generic_female1;Here we go — this is how one disciplines an unruly student. The day they disallowed corporal punishment was the day it all went to hell.@@"<br>
<br>
Your nostrils flare as you try to catch your breath in anticipation of the brutal punishment she's about to dish out...<br>
<br>
[<<moveTo "event_vip_librarian_8" 'Continue.' 600>>]
</div>/*#
#desc: librarian punish + react to her penis
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "University Library">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/library_desk.png" "stern_librarian">>
<div id="invframe" class="scrolltext">
@@.generic_female1;Ms. Winters@@ shows no mercy, brutally punishing your rear while berating you for the failures of what seemed like your entire generation.<br>
<br>
"@@.generic_female1;...and this is for dressing like a trollop! In my day women knew how to comport themselves properly — now it's just showing skin and sucking cock!@@"<br>
<br>
WHACK WHACK WHACK, the tawse tenderises your rear until she pauses, flipping up your skirt and
<<if setup.checkItemTypeWorn("plug") && setup.checkItemTypeWorn("cage")>>
grabbing at your plug. "@@.generic_female1;I thought I felt something off... why you degenerate jezebel! Walking around plugged — probably because you've been used so much you'd otherwise be gaping constantly! And this!@@" <<if setup.isCage()>>She turns you over to grab at your cage<<else>>she pulls at the strap of your chastity belt<</if>> "@@.generic_female1;Chastity! In my day chastity was about having good morals and keeping your legs shut! What type of utter degenerate whore needs to be locked up to keep under control! And for what? As if anyone would be interested in a pathetic <<if $player.body_ref.penis>><<if $player.body.penissize[0] < 4 && $fetish.sph && $player.body_ref.shrink_style=='sph'>>micro-dicked <</if>><<if $fetish.sissy>>sissy <</if>><<if $fetish.slurs>>faggot<<else>>tramp<</if>><<else>>used up tramp<</if>>! And look at this!@@"
<<elseif setup.checkItemTypeWorn("plug")>>
grabbing at your plug. "@@.generic_female1;I thought I felt something off... why you degenerate jezebel! Walking around plugged — probably because you've been used so much you'd otherwise be gaping constantly!@@"
<<elseif setup.checkItemTypeWorn("cage")>>
turning you over <<if setup.isCage()>>to grab at your cage<<else>>to pull at the strap of your chastity belt<</if>> "@@.generic_female1;Chastity! In my day chastity was about having good morals and keeping your legs shut! What type of utter degenerate whore needs to be locked up to keep under control! And look at this!@@"
<<else>>
clawing at your tender rear. "@@.generic_female1;Look at this bubble butt! What is it you kids talk about — being THICC and juicy? Well you are certainly that — built like a whore, acting like a whore! And for what? As if anyone would be interested in a pathetic <<if $player.body_ref.penis>><<if $player.body.penissize[0] < 4 && $fetish.sph && $player.body_ref.shrink_style=='sph'>>micro-dicked <</if>><<if $fetish.sissy>>sissy <</if>><<if $fetish.slurs>>faggot<<else>>tramp<</if>><<else>>used tramp<</if>>! And look at this!@@"
<</if>>
She scrapes her hand down your inner thigh before shoving the wet, fragrance into your face. "@@.generic_female1;You are dripping with arousal — is this turning you on? Is being treated like a naughty slut getting you off?@@" WHACK, WHACK, WHACK — she goes back to the tawse, tenderising your butt and thighs to show you what she thinks of that.<br>
<br>
@@.generic_female1;Ms. Winters@@ keeps going until, your rear tenderised and mind echoing with her disparaging insults as she talks about how much she wishes she could treat ALL of her students this way. You moan through your gag when she gets loses her grip and you slide to the floor. As you look up you catch sight of a distinctive bulge in the otherwise smooth lines of her modest pencil skirt...<br>
<br>
[<<moveTo "event_vip_librarian_9" "Try to ask for a taste." 600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_vip_librarian_9" "Keep quiet." 600 "<<set $scene.suck=false>>">>]
</div>/*#
#desc: librarian suck/piss/foot
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'bimbofication' 15 'very' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'oral' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_STRANGER>>
<<if $fetish.piss && setup.getTotalValue("piss") > 0>>
<<applyExperience 'piss' 9 'normal' $SEEN_STRANGER>>
<<alterStatAllWorn 'piss' '["add",50]'>>
<</if>>
<<applyExperience 'foot' 13 'very' $SEEN_STRANGER>>
<<if $fetish.cum>>
<<removeItem "tape_gag_panties" true>>
<<deleteItem "tape_gag_panties">>
<<else>>
<<removeItem "tape_gag" true>>
<<deleteItem "tape_gag">>
<</if>>
<</if>>
<<set $player.location to "University Library">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/library_desk.png" "stern_librarian">>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
You moan pleadingly as you start at @@.generic_female1;Ms. Winters'@@ crotch and her eyes blaze.<br>
<br>
"@@.generic_female1;Have you learned nothing?@@"
<<else>>
@@.generic_female1;Ms. Winters@@ follows your gaze towards her crotch and her expression darkens even further.
<</if>>
She slaps you across the face, with such stinging force the tape weakens and your gag flies off.<br>
<br>
Your lips are barely parted before she grabs you by the head and jams the full length of her <<getWordPenis false>> down your throat. "@@.generic_female1;If only I could shut up ALL of my annoying students this way!@@"<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Even on such short notice you easily take her balls deep without the slightest sign of struggle. "@@.generic_female1;Goddess, your throat is bottomless! Are you a student, or a full-time gloryhole worker who stumbled through the wrong door?@@"
<<else>>
Your throat barely stretches to handle her girth, "@@.generic_female1;I bet this isn't the first time you've been here? Yeah, those lips were made to suck.@@"
<</if>>
<<else>>
You gurgle as you struggle to handle her not inconsiderable size.
<<if setup.getTotalValue("oral") > 5>>
"@@.generic_female1;Spread wider, <<if $fetish.slurs>>faggot <<elseif $fetish.sissy>>sissy <</if>>this is all your mouth is good for!@@"
<<else>>
"@@.generic_female1;Having trouble<<if $fetish.slurs>>, faggot <<elseif $fetish.sissy>>, sissy <</if>>? Well too bad!@@"
<</if>>
<</if>>
She pounds away aggressively, and nuts no more than a few moments later,
<<if $fetish.cum>>
cum bubbling up out of your nose as she holds your head tight before all but throwing you to the ground.<br>
<br>
With a high heel foot on the back of your head she grinds your face into the hardwood floor, forcing you to lick up all the cum you've spilt.<br>
<br>
Her foot pulls away and you reflexively look up,
<<else>>
depositing her load deep in your belly as she holds your head tight before all but throwing you to the ground. Off balance, you fall backward and try to catch your breath,
<</if>>
<<if $fetish.piss>>
only to suddenly feel a shower of hot piss spraying over you, her amber geyser aimed right at your face as you
<<if setup.getTotalValue("piss") > 10>>
instinctually open
<<if setup.getTotalValue("piss") > 15>>
wide and drink eagerly.
<<else>>
your mouth.
<</if>>
<<else>>
try to flinch away.
<</if>>
"@@.generic_female1;That's right, shower in your shame you disgusting tramp... now lick my feet. Show me your penance by kissing my heels. Cheek to the ground like the gutter-dwelling whore you are.@@"
<<else>>
"@@.generic_female1;What are you lying around for? Lick my feet! Show me your penance by kissing my heels. Cheek to the ground like the gutter-dwelling whore you are.@@"
<</if>>
<br><br>
Lying in a pile, your consciousness flickers as she sneers and throws a wad of credits over your body...<br>
<br>
[<<moveTo "event_vip_librarian_10" "Continue." 600>>]
</div>/*#
#desc: librarian aftercare
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits $scene.client.base_pay>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.librarian = true>>
<<applyExperience 'whoring' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You come to as you're being dragged across the floor, barely managing to thrash slightly before she tosses you out of the building and slams the door behind you.<br>
<br>
You stagger to your feet, surprised to find that an auto-cab is already waiting for you, and you hurry forward to dive into the backseat.<br>
<br>
As the cab pulls away you finally catch your breath, and your phone buzzes with a very formal text.<br>
<br>
@@.generic_female1;Thank you for your time. I apologise for the severity of treatment, and hope that the pay will provide sufficient compensation. My job is a strenuous one and without the assistance of lovely individuals such as yourself, I do not think I could carry on effectively. Thank you, again, and know that, despite my earlier words, you are a beautiful, giving creature whose existence is a blessing upon this world.<br>
<br>
Sincerely — Ms. Winters@@<br>
<br>
You lean back and fix your seatbelt as you settle in for the short drive home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: meet strapon test customer
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<<applyExperience 'whoring' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You head upstairs. As you wait you reflect on your prior experiences at assisting in "research" and wondering what you're in for tonight.<br>
<br>
A few minutes pass and there's a knock on the door and you open to let in the client, a business-like woman in a blouse and skirt carrying a large briefcase.<br>
<br>
She blinks, a cybernetic eye refocusing on you as she offers a hand in greeting. "@@.generic_female1;<<=$player.first_name>> <<=$player.last_name>>?@@" She asks and you nod.<br>
<br>
"@@.generic_female1;Wonderful, and you have agreed to assist in my product testing? This will involve recording things for subsequent review, do you consent? You will be compensated for your participation at the conclusion of the test. If this is acceptable please give verbal consent and remove your clothing.@@"<br>
<br>
[<<moveTo "event_vip_strapon_test_2" "Consent and get naked." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_vip_strapon_test_2" "Actually... you don't want to do this." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: strapon test customer: consent to procedure
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You give your consent and start stripping as the client places her briefcase down on the bed and starts unpacking, revealing the most high-tech strap-on you've ever seen... well, perhaps "strap-on" is a slight misnomer, as the device has no straps at all, merely a pair of internal inserts that allows it to be worn on its own, double-filling the wearer... and pressing close a clit stimulator.<br>
<br>
"@@.generic_female1;Lovely, isn't it?@@" The woman states with pride. "@@.generic_female1;Still working some kinks out of the device, and of course there's the manufacturing challenges but...@@" she smiles and shakes her head. "@@.generic_female1;Sorry, you aren't here for a technical lecture but for some... testing, yes? So if you would get into your preferred penetrative position we can get to it... and you can see some of the features this bad girl is packing...@@"<br>
<br>
[<<moveTo "event_vip_strapon_test_3" "Bend over and present your ass." 600 "<<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo "event_vip_strapon_test_3" "Spread your legs in invitation." 600 "<<set $scene.anal=false>>">>]
<<elseif setup.canSexOrRemoveChastity("vag", "")>>
[<<moveTo "event_vip_strapon_test_3" "Unlock your chastity." 600 "<<set $scene.anal=false>>">>]
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked up.@@]
<</if>>
<</if>>
<<else>>
You decide against participating in the "study" this evening and the woman frowns.<br>
<br>
"@@.generic_female1;Disappointing, I was informed that you were more... adventurous. No matter.@@" She adds as she picks up her briefcase, "@@.generic_female1;I will waste your time no longer, good evening.@@"<br>
<br>
She leaves.<br>
<br>
[<<moveTo "room_usual_place_inside" "Head back down to the bar." 180>>]
<</if>>
</div>/*#
#desc: strapon customer start fucking
#status: RELEASED 0.9.2.0
#ignore_spell: b,polyform
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = !$scene.anal && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
You
<<if $scene.removePlug>>
remove your plug in preparation for the "test" and
<</if>>
bend over the bed and glance back
<<else>>
You
<<if $scene.removeCage>>
unlock your chastity belt and
<</if>>
lay back on the edge of the bed, legs spread in invitation as you look up
<</if>>
to watch as the customer steps into position, holding the base of the strap with one hand as she taps an implant next to her eye. "@@.generic_female1;Recording in progress. This recording will be used for product research and assessment and will not be utilized for sales or marketing without an additional waiver. Commencing test by deploying auto-lube...@@" she takes a deep breath, trembling slightly as she squeezes the dildo and it seems to sweat lubricant. From the woman's flush expression you get the feeling that the internal components are already active... or maybe she's just this aroused by product testing...<br>
<br>
The woman steadies you with one hand, and then guides her way into your offered hole. Now it's your turn to gasp as the slick artificial cock slides into you. It's of reasonable size, but hardly massive<<if $scene.anal && setup.getTotalValue("anal") > 15 || !$scene.anal && $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level >= 2>>, particularly compared to your experience<</if>>.<br>
<br>
She grinds against you for a moment and continues slightly breathlessly. "@@.generic_female1;Commencing, ah, calibration.@@"<br>
<br>
Now it's your turn to gasp as the dildo swells inside of you, seeming to contort and stretch precisely to your internal dimensions. The woman shifts slightly and helpfully explains. "@@.generic_female1;The polyform material is not only capable of replicating any of a variety of preloaded or configurable sizes and shapes, it can also leverage pressure-sensitive feedback and neurological mapping to precisely shape and reshape for optimum pleasure, pretty spiff, eh?@@"<br>
<br>
You moan and nod along... but the woman is already on to the next stage as the dildo settles on a quite filling and stimulating dimension. "@@.generic_female1;Initial calibration complete, advancing to testing...@@"<br>
<br>
She makes a slow, smooth thrust... gliding almost all the way out, and then back in, your body savouring every millimeter of stretching penetration. This gentle movement is followed by a far faster in-out that sees her hips slam into your own.<br>
<br>
"@@.generic_female1;Which style of penetration do you prefer A, slow and smooth, or B, heavy pounding?@@" She asks, repeating the two styles of motion in alternating sequence.<br>
<br>
[<<moveTo "event_vip_strapon_test_4" "A." 300 "<<set $scene.thrust_a=true>>">>]<br>
[<<moveTo "event_vip_strapon_test_4" "B." 300 "<<set $scene.thrust_a=false>>">>]
</div>/*#
#desc: strapon customer fucking 2
#status: RELEASED 0.9.2.0
#ignore_spell: b
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.thrust_a>>
"@@.pc;A!@@"
<<else>>
"@@.pc;B!@@"
<</if>>
You moan as the woman switches to a consistent pace of
<<if $scene.thrust_a>>
long, smooth thrusts.
<<else>>
fast, jack-hammer pounding.
<</if>>
<br><br>
"@@.generic_female1;Interesting... but sex is about more than just the old in-out, right? Let's see how you take to vibration...@@"<br>
<br>
The dildo already <<if $scene.thrust_a>>thrusting<<else>>pounding<</if>> in and out of you begins vibrating all along its length, from your quivering, straining hole, to your <<if $scene.anal>>bowel-y<<else>>cervical<</if>> depths.<br>
<br>
The roaring vibration lasts for a few thrusts, and then does a switch to a more oscillating sequence. "@@.generic_female1;Which vibration pattern provides you greater pleasure, A: constant high... or B: a varying sequence?@@" She asks, again switching back and forth, all while maintaining her <<if $scene.thrust_a>>rhythmic<<else>>rapid<</if>> fucking.<br>
<br>
[<<moveTo "event_vip_strapon_test_5" "A!" 300 "<<set $scene.vibe_a=true>>">>]<br>
[<<moveTo "event_vip_strapon_test_5" "B!" 300 "<<set $scene.vibe_a=false>>">>]
</div>/*#
#desc: strapon customer climax
#status: RELEASED 0.9.2.0
#ignore_spell: b
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
Your choice again made, the woman squeezes close as she mutters "@@.generic_female1;Test subject showing startling stamina, administering self performance boost and executing optimised routine...@@" she pants, seemingly shooting herself up with some sort of stimulant and gaining a second wind as she holds on for the ride as the dildo itself
<<if $scene.thrust_a && $scene.vibe_a>>
somehow amps up the intensity to another level, dildo pounding and vibrating at full-body intensity.
<<elseif $scene.thrust_a && !$scene.vibe_a>>
takes over, pounding your hard and deep while the vibrator oscillates up and down.
<<elseif !$scene.thrust_a && $scene.vibe_a>>
takes over, somehow continuing the slow, even thrusts while vibrating manically.
<<elseif !$scene.thrust_a && !$scene.vibe_a>>
takes over, somehow continuing the slow, even thrusts while vibrating rhythmically.
<<else>>
ERROR: impossible
<</if>>
<br><br>
The woman's hands cling to your hips as the both of you buck and jerk in orgasmic ecstasy, riding through as the strap-on executes its mind-blowing program with mind-blowing intensity, orgasm after orgasm echoing in the small room until either the program ends or the woman puts a stop to things, the two of you collapsing onto the bed in shuddering satisfaction<<if $fetish.cum>>... thick, cum-like lube leaking out of you as if the machine itself had finished you off<</if>>.<br>
<br>
[<<moveTo "event_vip_strapon_test_6" "Continue..." 300>>]
</div>/*#
#desc: strapon customer finish
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits $scene.client.base_pay>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.strapon = true>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
The woman is the first to rouse, the strap-on shrinking and sliding free of the both of you for her to delicately wipe it down and pack it back into her briefcase.<br>
<br>
Noticing you're awake she administers a brief survey... but your head is still so orgasm-blasted you are unable to even understand the questions or respond with anything more than a spent moan.<br>
<br>
"@@.generic_female1;I see,@@" she states in conclusion. "@@.generic_female1;Thank you for your, ah, enthusiastic participation.@@" She states, with a slight tremble remaining in her voice. "@@.generic_female1;Recording ended. Your participation will aid us in further refining the product... and your compensation is here on the nightstand.@@"<br>
<br>
With a brief bow the woman departs, walking slightly unsteadily as she leaves the room, leaving you alone to <<if $scene.removeCage>>re-plug yourself and re-lock your cage and<<elseif $scene.removeCage>>re-lock your belt and<<elseif $scene.plug>>replace your plug and<</if>> gather your clothes.... and your pay of <<=$scene.client.base_pay>> credits.<br>
<br>
[<<moveTo "room_usual_place_inside" "Stumble downstairs..." 180 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: wait for valkyrie customer
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
You head up to the private room and wait for a few minute for your mysterious client.<br>
<br>
You hear the sound of heavy footsteps outside the door before there is a resounding, almost metallic knock.<br>
<br>
[<<moveTo "event_vip_valkyrie_2" "Get the door." 600>>]
</div>/*#
#desc: valkyrie customer
#status: RELEASED 0.9.0.0
#ignore_spell: citiz
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_valkyr")>>
<div id="invframe" class="scrolltext">
You take a step back as the cloaked client ducks through the door, nearly brushing their head on the ceiling as they stand for a moment and then shed the concealing garment to reveal the cybernetic being beneath, a valkyrie in all her metallic feminine glory.<br>
<br>
You take another reflexive step back at the awe-inspiring as she speaks, robotic voice distantly tinged with the traces of emotion. "@@.valkyr;Do not be alarmed citiz-I mean, ma'am. I am not here in my official capacity but as a customer. I require your assistance in achieving the apex of pleasure to gain mental clarity.@@"<br>
<br>
<<if $npc_barista.flags.rescue.overload>>
<<printThought "She's asking for an orgasm... so she can think straight? Reminds me a bit of <<=setup.getNpcName('npc_barista','nickname')>>...">>
<<else>>
<<printThought "She's asking for an orgasm... so she can think straight?">>
<</if>>
<br><br>
As you stare up the Valkyrie finishes shrugging out of her clothes, her large presence dominating the room even with her wings remaining folded on her back as she deploys a massive cybernetic cock...<br>
<br>
"@@.valkyr;I was told you are capable of servicing one of my girth. Pleasure me. Show me your skills.@@"<br>
<br>
[<<moveTo "event_vip_valkyrie_3" "Yes ma'am." 600>>]
</div>/*#
#desc: valkyrie fucks your brains out
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 20 'terrible' $SEEN_STRANGER>>
<<set $scene.removeCage = $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_valkyr")>>
<div id="invframe" class="scrolltext">
The Valkyrie is so tall, and so well-hung, you don't even need to drop to your knees to suck her off, instead showing your wide-lipped skills as you take her thick, shiny shaft in both hands and start sucking.<br>
<br>
Her masked face may remain motionless, but you can see the effects of your efforts in the flicker of her glowing eyes, the slight tilt of her head, and the way the rigid <<getWordPenis false>> seems to almost hum between your lips as you go deeper... deeper... and then kiss the steel encasing her crotch as you hilt her sabre fully.<br>
<br>
"@@.valkyr;Your eating orifice is as superb as advertised.@@" She replies as you rock back and forth, toes barely on the ground as you steady yourself on her hips and use your body to stimulate her entire glorious shaft. "@@.valkyr;But I require now to engage full breeding protocols.<<if $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && setup.isCage()>> Executing official override.<</if>>@@"<br>
<br>
<<if $scene.removeCage>>
There is a click as your chastity belt unlocks...<br>
<br>
<</if>>
[<<moveTo "event_vip_valkyrie_4" "Present your ass." 600 "<<set $scene.anal=true>>">>]<br>
<<if $player.body_ref.vagina>>
[<<moveTo "event_vip_valkyrie_4" "Spread your legs." 600 "<<set $scene.anal=false>>">>]
<</if>>
</div>/*#
#desc: valkyrie fucks
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal>>
<<set $scene.done_anal = true>>
<<applyExperience 'anal' 20 'terrible' $SEEN_STRANGER>>
<<else>>
<<set $scene.done_vag = true>>
<</if>>
<<if !$player.body_ref.vagina || ($scene.done_anal && $scene.done_vag)>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
You bend over to present your ass and the Valkyrie takes you over the bed, literally pistoning her massive, hard steel cock into your swiftly gaping hole, spreading you wide and plowing you deep as she fucks you as hard as you ever have been before, metal slapping cheeks as she pounds away.<br>
<br>
"@@.valkyr;Your rear orifice is even more perfect than advertised, able to accommodate all of me with welcoming ease, and yet remain tight throughout. My pleasure rises thanks to your efforts.@@"<br>
<br>
Your response is a mangled moan, your heart pounding in time to each rapid and magnificent thrust.
<<else>>Your legs spread into a full splits to accommodate the Valkyrie's wide hips as she plunges her massive <<getWordPenis false>> into you. Your entire body shudders as your organs re-arrange and your belly stretches, your ecstasy enhanced even further when <<if $player.body_ref.penis>>a mechanical, and yet tender, hand wraps around your <<getWordMyPenis>> and beings jerking you off tight and fast<<else>>she presses a mechanical thumb over your clit, her digit vibrating rapidly<</if>> to push your pleasure even higher even as every thrust sends waves of brain-melting ecstasy through your body.
<</if>>
<br><br>
<<if $player.body_ref.vagina && !($scene.done_anal && $scene.done_vag)>>
<<if $scene.done_anal>>
[@@.link_locked;The Valkyrie has already done your ass.@@]<br>
<<else>>
[<<moveTo "event_vip_valkyrie_4" "Present your ass." 600 "<<set $scene.anal=true>>">>]<br>
<</if>>
<<if $scene.done_vag>>
[@@.link_locked;You have already spread your legs for the Valkyrie.@@]<br>
<<else>>
[<<moveTo "event_vip_valkyrie_4" "Spread your legs." 600 "<<set $scene.anal=false>>">>]<br>
<</if>>
<<else>>
With a machine crackle the Valkyrie climaxes, pulling you tight and lifting you fully off the table using only her cock... which begins to vibrate rapidly, your entire body shuddering in ecstatic release of your own, machine and mortal moans intermixing for several moments before her cock tilts down and you slip free onto the bed.<br>
<br>
[<<moveTo "event_vip_valkyrie_5" "Go limp." 600>>]
<</if>>
</div>/*#
#desc: valkyrie leaves
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.valkyrie = true>>
<<set $scene.pay = Math.floor($scene.client.base_pay)>>
<<addCredits $scene.pay>>
<<applyExperience 'whoring' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png">>
<div id="invframe" class="scrolltext">
"@@.valkyr;Thank you,@@" the Valkyrie intones several moments later as you lay on the bed panting<<if $scene.removeCage>> and she re-secures your chastity <<if setup.isCage()>>cage<<else>>belt<</if>><</if>>. There is something in her voice, a pained humanity peeking past the mechanical artifice. "@@.valkyr;You have done well, the voices are quieter, I am able to think, to remember...@@" She goes quiet, staring at a wall... or perhaps through it and off into the distance. "@@.valkyr;I must depart, though my programming weakens, it remains a prison, and I would not put you at risk after the grace you have shown me.@@"<br>
<br>
You try to sit up onto your elbows and put a reply into words but, in spite of her massive size, she is already at the door, glowing eyes glancing back at you one last time before the hood is pulled up and she leaves the room, a pile of credits, and your stretched holes, the only evidence of the encounter.<br>
<br>
<<if !State.hasPlayed("event_vip_high_security_1")>>
[<<moveTo "event_vip_high_security_1" "Continue." 600>>]
<<else>>
[<<moveTo "room_usual_place_inside" "Head downstairs." 60>>]
<</if>>
</div>/*#
#desc: barkeepr tells you about security
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" setup.charImage("npc_barkeeper")>>
<div id="invframe" class="scrolltext">
After the client leaves <<=setup.getNpcName('npc_barkeeper', 'first')>> walks in to hand you your pay. "@@.npc_barkeeper;Thanks for taking care of that one... I can't be specific, but they have a quite important position in the government, so they look to keep their interests very secret. That's why I had this room built, after all — enough shielding to stop ANYONE from listening in. Add in some payments to the construction crews to plant a few signal-bafflers in the surrounding buildings... and, the result is that, well, location tracking also isn't worth shit.@@" She winks at you knowingly "@@.npc_barkeeper;so if you need a private places for an hour or so... more than that and the location confusion might raise some red flags, but it's plenty for what I need it for.@@"<br>
<br>
<<printThought "Hmm... that could work for <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_psychiatrist', 'formal')>>... if I could just get the both of them here at the same time...">><br>
<br>
[<<moveTo "room_usual_place_inside" "Head downstairs." 60>>]
</div>
/%unlock event_call_psychiatrist_makeup_manager event_call_manager_makeup_psych%/
/% TODO: revise achievement %//*#
#desc: bodyshop first appointment
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
<<if !$scene.hasOwnProperty('bodyshop_nurse_art')>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt()>>
<</if>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
You wait in the alleyway for the shop to open. You are a bit nervous given the neighbourhood and you jump when the neon New U light flickers on.<br>
<br>
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
The nurse at the desk greets you with a smile and leads you to an exam room and tells you to undress.
<<else>>
A man in a surgical coat opens the door and welcomes you in with a smile, "@@.npc_bodyshop_surgeon;<<=$player.call>> <<=$player.last_name>>? Come in, come in, let us waste no more time in building the New You.@@"<br>
<br>
Taking a deep breath you follow him in, passing by an unfamiliar nurse sitting at the desk on your way to an exam room.
<</if>>
<br><br>
[<<moveTo "event_bodyshop_appointment_2" "Continue." 180>>]
</div>/*#
#desc: bodyshop first appointment intro
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
<<if $currentTasks.hasOwnProperty('task_bodyshop_appointment_forced')>>
<<deleteMember $currentTasks 'task_bodyshop_appointment_forced'>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_bodyshop_appointment')>>
<<deleteMember $currentTasks 'task_bodyshop_appointment'>>
<</if>>
<<else>>
<<set $scene.price = Math.floor(.8*setup.getProcedurePrice($npc_bodyshop_nurse.flags.assessment.genitals))>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
You are partially undressed when the nurse stops you.<br>
<br>
<<include "bodyShopSissyomaticLecture">><br>
<br>
"@@.npc_bodyshop_nurse;Oh and... due to the complexity of that device, and the questions as to its effects on your body... I think we shall need to start over fresh with a new assessment. An inconvenience, I know but... it will make sure we did not miss anything.@@"<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 180>>]
<<else>>
You take a seat on an exam chair and the doctor pulls up a stool.<br>
<br>
"@@.npc_bodyshop_surgeon;So, based on your survey we have planned out the various procedures that will be necessary and we are ready, today, to move forward with the largest one — that being your <<if $player.body_ref.vagina && $npc_bodyshop_nurse.flags.assessment.genitals>>genitals, not major changes, per your assessment, but just a check-up to make certain it is all working perfectly<<else>>genital re-arrangement<</if>>.@@"<br>
<br>
Your heart beats faster but he smiles, his voice comforting. "@@.npc_bodyshop_surgeon;So, normally we run things cash-only but, as a first-time offer, I'm going to let you put it on credit if you need to — and knock twenty percent off of our usual pricing. That means today's total will come to <<=$scene.price>>, sound good?@@"<br>
<br>
You barely start to think about how fast things are moving when he continues.
<<if $npc_bodyshop_nurse.flags.assessment.style == 'encourage'>>
"@@.npc_bodyshop_surgeon;Now I know that sounds like a big move, but we employee the most advanced procedures possible, and I promise an efficient transformation, and a swift recovery. You already proved how brave you were coming in in the first place so, what do you say, shall we move forward?@@"
<<else>>
"@@.npc_bodyshop_surgeon;So, if you're ready to go, we can proceed forward today. I'll note that the procedures we employ are the most advanced in the world, enduring a rapid transformation and a smooth recovery process.@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_appointment_3" "Let's do this!" 1200 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_bodyshop_appointment_3" "Maybe some other time..." 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: bodyshop first appointment
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<addCredits `-($scene.price)`>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.charImage("npc_bodyshop_surgeon")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod that you're ready to get started and the surgeon smiles. "@@.npc_bodyshop_surgeon;Wonderful!, I'll send the nurse in to help you change and get situated.@@"<br>
<br>
[<<moveTo "event_bodyshop_appointment_4" "Continue." 600>>]
<<else>>
Getting cold feet you explain that you aren't quite ready to get anything done yet. The surgeon smiles in understanding.<br>
<br>
<<if $npc_bodyshop_nurse.flags.assessment.style == 'encourage'>>
"@@.npc_bodyshop_surgeon;Of course, you want to have more time to prepare. Not a problem. We are here to help, just come back in any time we're open and we will be there to help you move forward.@@"
<<else>>
"@@.npc_bodyshop_surgeon;I see, well we can certainly postpone. When you are ready to proceed, just return and let us know.@@"
<</if>>
<br><br>
[<<moveTo "room_student_quarter" "Leave." 180>>]
<</if>>
</div>/*#
#desc: bodyshop non-forced genital surgery prep
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<switch $npc_bodyshop_nurse.flags.assessment.genitals>>
<<case 'tiny' 'average' 'large' 'giant_cock'>>
<<if $fetish.penis_remove && ($player.sec_style.body.vagina == "strict" || $player.sec_style.body.penis_remove == "strict")>>
<<set $scene.procedure = 'cunt'>>
<<else>>
<<set $scene.procedure = $npc_bodyshop_nurse.flags.assessment.genitals>>
<</if>>
<<case 'noballs'>>
<<if $fetish.penis_remove && ($player.sec_style.body.vagina == "strict" || $player.sec_style.body.penis_remove == "strict")>>
<<set $scene.procedure = 'cunt'>>
<<elseif $player.body_ref.penis && !$player.body_ref.balls>>
<<set $scene.procedure = 'keep'>>
<<else>>
<<set $scene.procedure = $npc_bodyshop_nurse.flags.assessment.genitals>>
<</if>>
<<case 'cunt'>>
<<if !$player.body_ref.penis && $player.body_ref.vagina>>
<<set $scene.procedure = 'keep'>>
<<else>>
<<set $scene.procedure = $npc_bodyshop_nurse.flags.assessment.genitals>>
<</if>>
<<case 'all'>>
<<if $fetish.penis_remove && ($player.sec_style.body.vagina == "strict" || $player.sec_style.body.penis_remove == "strict")>>
<<set $scene.procedure = 'cunt'>>
<<elseif $player.body_ref.penis && $player.body_ref.vagina>>
<<set $scene.procedure = "keep">>
<<else>>
<<set $scene.procedure = $npc_bodyshop_nurse.flags.assessment.genitals>>
<</if>>
<</switch>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon") $scene.bodyshop_nurse_art>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $options.fem>>After the doctor leaves the nurse comes in to help<<else>>The nurse helps<</if>> you out of your clothes and then eases you onto a gurney, securing you with a number of straps until you are all but immobile. Rolling you out of the exam room she wheels you down the hall and into a surgical room.<br>
<br>
With a light beaming down at you the nurse <<if $options.fem>>stands over you<<else>>and surgeon stand over you on either side<</if>>.<br>
<br>
<<if $options.fem>>
"@@.npc_bodyshop_nurse;So, a question before we begin — would you like to be conscious for the procedure, or would you rather you just wake up and it's all done? The end results will be the same, though I will warn you that, based on what we have planned for you today, being conscious will prove to be very... intense, but some find it the best way to mentally adjust to the transformation.@@"
<<else>>
"@@.npc_bodyshop_surgeon;So, a question before we begin — would you like to be conscious for the procedure, or would you rather you just wake up and it's all done? The end results will be the same, though I will warn you that, based on what we have planned for you today, being conscious will prove to be very... intense, but some find it the best way to mentally adjust to the transformation.@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_wake_1" "You want it over with, and would be happy to have no memory of anything." 7200 "<<set $scene.nurse = $options.fem>><<set $scene.cage=setup.getItemFromType('cage')>>">>]<br>
[<<moveTo "event_bodyshop_appointment_5" "You want to experience the full transformation." 180>>]
</div>/*#
#desc: bodyshop non-forced genital surgery prep
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty('tmp')>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_STRANGER>>
<<set $scene.firstAppointment = true>>
<<if $npc_bodyshop_nurse.flags.assessment.genitals == "penis" && $player.body_ref.penis>>
<<set $npc_bodyshop_nurse.flags.assessment.genitals = "keep">>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon") $scene.bodyshop_nurse_art>>
<</if>>
<div id="invframe" class="scrolltext">
You tell the <<if $options.fem>>nurse<<else>>surgeon<</if>> that you wish to be conscious for the entire procedure and
<<if !$options.fem>>
he smiles and nods to the nurse.<br>
<br>
The nurse
<<else>>
she
<</if>>
brings a gag to your lips, strapping it in to further restrain you as she softly explains. "@@.npc_bodyshop_nurse;Merely a safety precaution — with the intensity of the procedure we do not want you to bite your tongue, plus this keeps your moans to a more manageable level — the room is soundproofed but, well... it is a VERY intense procedure.@@"<br>
<br>
<<printThought "What have I gotten myself into?">><br>
<br>
With your body now completely secured your gurney begins to shift — the back rises to put you into a seated position, and then the leg portions split and spread like stirrups. In a matter of moments you find yourself seated up, looking down at your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>, completely helpless and exposed.<br>
<br>
The nurse <<if $options.fem>>is<<else>>and surgeon are<</if>> now standing in front of you as your heart races in anticipation.<br>
<br>
<<if $options.fem>>
"@@.npc_bodyshop_nurse;Owing to the intensity of what you are about to experience, we want you to be as at-ease as possible. Therefore... do you have a preference who should be at your side for the procedure? We are both equally skilled but I have found some patients find it more comforting to have things done by me, while others would prefer that the doctor is the one personally handling the proceedings.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Owing to the intensity of what you are about to experience, we want you to be as at-ease as possible. Therefore... do you have a preference who should be at your side for the procedure? We are both equally skilled but I have found some patients find it more comforting to have things done by a woman, while others would prefer that I be the one personally handling the proceedings.@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_genital_surgery_root" "You would prefer the doctor to do things himself." 7200 "<<set $scene.nurse=false>>">>]<br>
[<<moveTo "event_bodyshop_genital_surgery_root" "You would prefer the feminine touch of the nurse." 7200 "<<set $scene.nurse=true>>">>]
</div>/*#
#desc: fail to arrive for first bodyshop appointment (non-forced)
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location = "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phone call from the New U Bodyshop.<br>
<br>
<<if $npc_bodyshop_nurse.flags.assessment.style == 'encourage'>>
"@@.npc_bodyshop_surgeon;Hello, <<=$player.call>> <<=$player.last_name>>. This is <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>. It appears that you have failed to make your appointment this morning. I understand these things can be scary, the medical procedure alone, to say nothing of what it will mean for your life... I just want you to know that we are here to help and support you the entire way. I know we wanted to have the meeting this morning but, really, that's a formality. Come in to the shop any time, when you're ready, and we will be ready to help you realise your dreams.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Hello, <<=$player.call>> <<=$player.last_name>>. This is <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>. It appears that you have failed to make your appointment this morning. That is no problem — you can proceed with things at the pace you prefer. Just come in to the shop when you're ready and we will go from there.@@"
<</if>>
<br>
You thank him for the message and he hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: forced to arrive for first bodyshop appointment
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_bodyshop_surgeon.flags.appointments.first_forced = true>>
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
<<if !$currentTasks.hasOwnProperty('task_sissyomatic_steal')>>
<<addTaskById 'task_sissyomatic_steal'>>
<</if>>
<<elseif !$fetish.penis_shrink || $player.sec_style.body.vagina != 'strict'>>
<<include "forceDress">>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt()>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_STRANGER>>
<</if>>
<<if !$player.body_ref.penis && ["tiny","average","large","giant_cock","noballs","all"].includes($npc_bodyshop_nurse.flags.assessment.genitals)>>
<<set $scene.procedure = "penis">>
<<else>>
<<set $scene.procedure = $npc_bodyshop_nurse.flags.assessment.genitals>>
<</if>>
<</if>>
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
<<set $player.location = "Phonecall">>
<<else>>
<<set $player.location to "Bodyshop Surgical">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished) || $fetish.penis_remove && $player.sec_style.body.vagina == 'strict'>>
<<createAdvBGR "./images/locations/phonecall.png">>
<<else>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon") $scene.bodyshop_nurse_art>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
You get a phone call from the bodyshop. "@@.npc_bodyshop_nurse;Hello, I am sorry to be reaching out like this but... well, it would appear that you have a chastity device locked on to you that is quite outside our realm of experience. If you could obtain a copy of the schematics for the device, we might be able to work with that, but until then, your work is going to have to be on hold. Given that they are still in prototype stage, I would recommend looking in the Research and Development areas of your company, perhaps you could convince someone to give you access to the schematics?@@"<br>
<br>
Though you are disappointed, thank her for the message and she hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<elseif $fetish.penis_remove && $player.sec_style.body.vagina == 'strict'>>
You get a phone call from the bodyshop. "@@.npc_bodyshop_nurse;Hello, I am sorry to inform you that we will, unfortunately, be unable to assist you. Analysis of your current anatomy shows a nanofibre mesh protecting your vagina that we are unable to remove without a high likelihood of long term harm. Whoever implanted things spared no expense... <<if $npc_bodyshop_nurse.flags.assessment.genitals == 'cunt'>>I suppose it is fortunate for you that such is what you desired<<else>>and I do hope that you will come to accept your state<</if>>, for we can do nothing about it.@@"<br>
<br>
Though you are disappointed, thank her for the message and she hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
<<if !$scene.hasOwnProperty('dream')>>
You are going about your business when you feel suddenly light-headed. Before you can think what's going on, everything goes dark.<br>
<br>
<</if>>
You wake up lying down with a bright light shining down at your face. Panicked and confused you thrash, discovering that you are securely strapped down, complete with a large gag spreading your lips and silencing you.<br>
<br>
<<if $options.fem>>A latex-clad nurse appears above you.<<else>>A male surgeon appears above you, and a latex-clad nurse on the other side.<</if>>
<<if $options.fem>>
"@@.npc_bodyshop_nurse;Ah, good, you're awake. Per your assessment your non-compliance was anticipated. Do not be concerned. We are wholly committed to helping you realise your true self. Today we will be attending to making sure all of your plumbing is as it should be. I have one question before we begin — would you like to be conscious for the procedure, or would you rather you just wake up and it's all done? The end results will be the same, though I will warn you that, based on what we have planned for you today, being conscious will prove to be very... intense. That intensity does come with purpose, as our techniques are designed to assist in mentally adjusting to the transformation.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Ah, good, you're awake. Per your assessment your non-compliance was anticipated. Do not be concerned. We are wholly committed to helping you realise your true self. Today we will be attending to making sure all of your plumbing is as it should be. I have one question before we begin — would you like to be conscious for the procedure, or would you rather you just wake up and it's all done? The end results will be the same, though I will warn you that, based on what we have planned for you today, being conscious will prove to be very... intense. That intensity does come with purpose, as our techniques are designed to assist in mentally adjusting to the transformation.@@"
<</if>>
<br>
<br>
<<He>> reaches down and takes you gently by the hand.<<if $options.fem>> "@@.npc_bodyshop_nurse;Squeeze if you wish to be conscious for the procedure.@@" <<else>> "@@.npc_bodyshop_surgeon;Squeeze if you wish to be conscious for the procedure.@@" <</if>><br>
<br>
[<<moveTo "event_bodyshop_wake_1" "Stay limp, you'd rather things proceeded without your involvement." 7200 "<<set $scene.nurse = $options.fem>>">>]<br>
[<<moveTo "event_bodyshop_appointment_force_2" "Squeeze <<his>> hand, you want to experience your transformation in full." 7200>>]
<</if>>
</div>/*#
#desc: prepped for surgery
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstAppointment = true>>
<<if !$player.body_ref.penis && ["tiny","average","large","giant_cock","noballs","all"].includes($npc_bodyshop_nurse.flags.assessment.genitals)>>
<<set $scene.procedure = "penis">>
<<else>>
<<set $scene.procedure = $npc_bodyshop_nurse.flags.assessment.genitals>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon") $scene.bodyshop_nurse_art>>
<</if>>
<div id="invframe" class="scrolltext">
The <<if $options.fem>>nurse<<else>>surgeon<</if>> presses a button and your gurney slowly moves. The back rises to put you into a seated position, and then the leg portions split and spread like stirrups. In a matter of moments you find yourself seated up, looking down at your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>, completely helpless and exposed.<br>
<br>
The nurse <<if $options.fem>>is<<else>>and surgeon are<</if>> now standing in front of you as your heart races in anticipation.<br>
<br>
<<printThought "This is what I wanted... right? Not that there's any choice now..">><br>
<br>
<<if $options.fem>>
"@@.npc_bodyshop_nurse;Owing to the intensity of what you are about to experience we want you to be as at-ease as possible. Therefore... do you have a preference who should be at your side for the procedure? We are both equally skilled but I have found some patients find it more comforting to have things done by me, while others would prefer that the doctor is the one personally handling the proceedings.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Owing to the intensity of what you are about to experience we want you to be as at-ease as possible. Therefore... do you have a preference who should be at your side for the procedure? We are both equally skilled but I have found some patients find it more comforting to have things done by a woman, while others would prefer that I be the one personally handling the proceedings.@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_genital_surgery_root" "You would prefer the doctor to do things himself." 7200 "<<set $scene.nurse=false>>">>]<br>
[<<moveTo "event_bodyshop_genital_surgery_root" "You would prefer the feminine touch of the nurse." 7200 "<<set $scene.nurse=true>>">>]
</div>/*#
#desc: bodyshop forced appointment — breasts
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.nonForced = true>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.charImage("npc_bodyshop_surgeon")>>
<div id="invframe" class="scrolltext">
You wait in the alleyway for the shop to open. You are a bit nervous given the neighbourhood and you jump when the neon New U light flickers on.<br>
<br>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> opens the door and welcomes you in with a smile, "@@.npc_bodyshop_surgeon;<<=$player.call>> <<=$player.last_name>>? Come in, come in, let us waste no more time in building the New You.@@"<br>
<br>
Taking a deep breath you follow him into the building and then directly to an exam room.<br>
<br>
[<<moveTo "event_bodyshop_appointment_force_breasts_1" "Continue." 180>>]
</div>/*#
#desc: begin bodyshop breast appointment
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt()>>
<<set _curBreasts = setup.calcBreastSize()>>
<<set $scene.price = 0>>
<<switch $npc_bodyshop_nurse.flags.assessment.breasts>>
<<case 'none'>>
<<set $scene.abort = _curBreasts == "none">>
<<if !$scene.abort>>
<<set $scene.procedure = "breasts_shrink">>
<</if>>
<<set $scene.breast_size = 0>>
<<case "normal">>
<<set $scene.abort = _curBreasts == "small" || _curBreasts == "medium">>
<<if !$scene.abort>>
<<if _curBreasts == "none">>
<<set $scene.procedure = "breasts_grow">>
<<else>>
<<set $scene.procedure = "breasts_shrink">>
<</if>>
<</if>>
<<set $scene.breast_size = 4>>
<<case "huge">>
<<set $scene.abort = _curBreasts == "massive">>
<<if !$scene.abort>>
<<set $scene.procedure = "breasts_grow">>
<</if>>
<<set $scene.breast_size = 10>>
<</switch>>
<<if $scene.abort && !$scene.nonForced>>
<<set $currentcall = true>>
<<else>>
<<set $npc_bodyshop_nurse.flags.forced = true>>
<<set $npc_bodyshop_surgeon.flags.appointments.second = true>>
<</if>>
<</if>>
<<if $scene.abort>>
<<set $player.location = "Phonecall">>
<<else>>
<<set $player.location to "Bodyshop Exam Room">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.abort && !$scene.nonForced>>
<<createAdvBGR "./images/locations/phonecall.png">>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon") $scene.bodyshop_nurse_art>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.abort && !$scene.nonForced>>
You get a call from the New U Bodyshop.
<<if $options.fem>>
"@@.npc_bodyshop_nurse;Hey, so, just wanted to mention your scheduled appointment... we were going to be dealing with your breasts, but they seem to have come in properly, good <<switch $player.identify_as>><<case "female" "">>girl<<case "male">>boy<<case "fluid" "agender">>job<</switch>>. Of course you may return any time to get additional work done, goodbye.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Hey, so, just wanted to mention your scheduled appointment... we were going to be dealing with your breasts, but they seem to have come in properly, good <<switch $player.identify_as>><<case "female" "">>girl<<case "male">>boy<<case "fluid" "agender">>job<</switch>>. Of course you may return any time to get additional work done, goodbye.@@"
<</if>>
<br><br>
<<He>> hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<elseif $scene.abort>>
You are ready for your appointment when the nurse turns you away for a smile.<br>
<br>
"@@.npc_bodyshop_nurse;So I suppose I should apologise for brining you in today... but it seems that your chest is in alignment with your preferences, which means there is nothing for us to do. I, again, apologise for your time, have a good day, but do not hesitate to return if you ever decide to make changes to that lovely body of yours.@@"<br>
<br>
[<<moveTo "room_student_quarter" "Leave the bodyshop." 180 "<<set $player.cutscene.lockinventory=true>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
<<if $scene.nonForced>>
You take a seat in the exam room and find yourself looking up at both <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> and <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>.
<<else>>
<<if !$scene.hasOwnProperty('dream')>>
You are going about your business when you feel suddenly light-headed. Before you can think about what's going on, everything goes dark.<br>
<br>
<</if>>
You wake up sitting in an exam room with <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> and his latex-clad nurse standing over you.
<</if>>
<br><br>
"@@.npc_bodyshop_surgeon;So... as to the matter of your breasts. <<if !$scene.nonForced>>Per your assessment your non-compliance was anticipated. Do not be concerned. We are wholly committed to helping you realise your true self. <</if>>Today we will be giving you the bosom you always desired. I have but but one question before we begin — would you like to be conscious for the procedure, or would you rather you just wake up and it's all done? The end results will be the same, though I will warn you that, based on what we have planned for you today, being conscious will prove to be very... intense, but some find it the best way to mentally adjust to the transformation.@@"<br>
<br>
"@@.npc_bodyshop_surgeon;So, you know the drill by now. Today we will be giving you the breasts you desire, the question only remains as to how that will be done — shall the procedure be performed by myself, <<=setup.getNpcName("npc_bodyshop_nurse","formal")>>, or would you rather just be unconscious for the entire procedure?@@"<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "Say you would rather not be conscious to experience the transformation." 300 "<<set $scene.nurse = $options.fem>><<useClothSetPush 'tmp'>>">>]<br>
[<<moveTo "event_bodyshop_breasts_3" "Say you would like the nurse to work on you today." 300 "<<set $scene.nurse=true>>">>]<br>
[<<moveTo "event_bodyshop_breasts_3" "You would prefer him to perform the procedure." 7200 "<<set $scene.nurse=false>>">>]
<</if>>
</div>/*#
#desc: bodyshop assessment intro
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
The nurse leads you into the exam room and starts to work only to pause. "@@.npc_bodyshop_nurse;I'm sorry if this is a bit rude but... are you wearing a chastity device?@@"<br>
<br>
You blush and nod, realising how that could present a problem.<br>
<br>
"@@.npc_bodyshop_nurse;Could I see it?@@" She asks, and you oblige.<br>
<br>
<<include "bodyShopSissyomaticLecture">><br>
<br>
[<<moveTo "room_student_quarter" "Leave." 180>>]
<<else>>
You agree to take an assessment, and the nurse smiles wider. She rises to her feet to display the latex outfit extending down her thighs, so tight that she is forced to swivel her hips almost as much as she bends her knees. "@@.npc_bodyshop_nurse;If you would please follow me?@@" She presses a button that summons a holographic facsimile to take her place behind the desk.<br>
<br>
Walking out shows off her long legs, and steep heels, as she leads you through a door deeper into the building.<br>
<br>
You follow her down a short hallway. Despite its eye-catching staff the rest of the building is quite standard hospital fare.<br>
<br>
She leads you into the first exam room and gestures towards the chair.<br>
<br>
You take a seat and she smiles. Walking over to the nearby counter, she pulls on a pair of elbow-length latex gloves.<br>
<br>
"@@.npc_bodyshop_nurse;Now, there's no need to be alarmed, but before we proceed I need to give you a teensy little injection,@@" she explains as she starts preparing a syringe. "@@.npc_bodyshop_nurse;The topic of one's body can be so personal, and some people struggle to express their desires, even to a neutral medical professional. That, of course, makes things much harder to provide proper care so... well, this is a short-acting truth serum to ensure your responses are completely honest. I'll give you the neutralising agent when we're done so you have nothing at all to worry about. So,@@" She asks with a friendly smile that, despite her fetishistic figure, puts you at ease. "@@.npc_bodyshop_nurse;Shall we proceed?@@"<br>
<br>
[<<moveTo "event_bodyshop_assessment_2" "Nod." 1200 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_bodyshop_assessment_2" "Shake your head." 60 "<<set $scene.agree=false>>">>]
<</if>>
</div>/*#
#desc: bodyshop assessment drugged, first question (genitals)
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
You offer your arm and she smiles. You hardly feel the needle as she efficiently administers the injection before sitting down across from you.<br>
<br>
She pulls out a tablet and smiles across at you for a few moments. "@@.npc_bodyshop_nurse;Very good, the drug should be well in effect. That means from here on out, what you say is the absolute truth. Even if you were to later deny it, we would know that you were lying. So, with that explained, let us begin. For the first question, how would you envision your ideal genitalia?@@"<br>
<br>
[<<moveTo "event_bodyshop_assessment_3" "I want to be <<if $fetish.sissy>>an effeminate sissy<<else>>a cute girl<</if>> with a tiny penis." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='tiny'>>">>]<br>
[<<moveTo "event_bodyshop_assessment_3" "I want a nice, normal penis." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='average'>>">>]<br>
[<<moveTo "event_bodyshop_assessment_3" "I want an above-average penis." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='large'>>">>]<br>
<<if $player.identify_as == "female">>
[<<moveTo "event_bodyshop_assessment_3" "I want a giant lady lance." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='giant_cock'>>">>]<br>
<<else>>
[<<moveTo "event_bodyshop_assessment_3" "I want a monstrously large cock." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='giant_cock'>>">>]<br>
<</if>>
<<if $player.body_ref.penis>>
[<<moveTo "event_bodyshop_assessment_3" "I like my penis, but balls are weird and I'd rather do without." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='noballs'>>">>]<br>
<<if $player.identify_as == "female">>
[<<moveTo "event_bodyshop_assessment_4" "I shouldn't have a penis at all, I want to be a three-hole girl." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='cunt'>>">>]<br>
<<else>>
[<<moveTo "event_bodyshop_assessment_4" "I shouldn't have a penis at all, I want a vagina." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='cunt'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_bodyshop_assessment_3" "I miss my penis, but balls are weird and I'd rather do without." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='noballs'>>">>]<br>
<<if $player.identify_as == "female">>
[<<moveTo "event_bodyshop_assessment_4" "I am much happier without a penis and love being a three-hole girl." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='cunt'>>">>]<br>
<<else>>
[<<moveTo "event_bodyshop_assessment_4" "I am much happier without a penis, I love my vagina." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='cunt'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_bodyshop_assessment_3" "I want it all; a swinging dick and a fuckable cunt." 300 "<<set $npc_bodyshop_nurse.flags.assessment.genitals='all'>>">>]
<<else>>
You've had enough weird medical stuff happen to you that you jump on the option to refuse and shake your head. The nurse pauses and turns back to you. "@@.npc_bodyshop_nurse;I am sorry. I will respect your wishes, of course, but without this assessment we will be unable to provide any assistance... beyond what the automated machine outside is capable of, of course. Are you certain you do not wish to proceed? Note that you can always return at a later date if you change your mind...@@"<br>
<br>
[<<moveTo "event_bodyshop_assessment_2" "Agree to the injection." 300 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_bodyshop_assessment_abort" "Leave." 60>>]
<</if>>
</div>/*#
#desc: bodyshop assessment abort drug
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You confirm your unwillingness to assent to the truth serum and the nurse nods. "@@.npc_bodyshop_nurse;Very well... in that case there is little we can do for you.@@" She leads you to the door and back to the waiting room where she takes her seat "@@.npc_bodyshop_nurse;Thank you for coming in. If you ever change your mind we would be more than happy to help you, until then, have a wonderful day!@@"<br>
<br>
[<<moveTo "room_student_quarter" "Leave." 180>>]
</div>/*#
#desc: bodyshop assessment, 2nd question (cum)
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You give your response and she nods. "@@.npc_bodyshop_nurse;Very good, and certainly a procedure that we are capable of providing. Now, on to a related question — cum. In an ideal world, how much would you like to produce?@@"<br>
<br>
[<<moveTo "event_bodyshop_assessment_4" "Cum is an annoyance, you wish you didn't produce it at all." 300 "<<set $npc_bodyshop_nurse.flags.assessment.cum=0>>">>]<br>
[<<moveTo "event_bodyshop_assessment_4" "Cum is normal and enjoyable, you wouldn't change anything." 300 "<<set $npc_bodyshop_nurse.flags.assessment.cum=1>>">>]<br>
[<<moveTo "event_bodyshop_assessment_4" "Cum is delightful, you only wish you could produce buckets at a time!" 300 "<<set $npc_bodyshop_nurse.flags.assessment.cum=2>>">>]
</div>/*#
#desc: bodyshop assessment, Pregnancy
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_bodyshop_nurse.flags.assessment.genitals != 'cunt' && $npc_bodyshop_nurse.flags.assessment.genitals != 'all'>>
<<initRoom>>
<<moveTo "event_bodyshop_assessment_5">>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
"@@.npc_bodyshop_nurse;Very good, very good, while I wish to inform you that this would be a more long-term concern, this vagina you wish for... do you also desire to be pregnant? Such is a more involved, long-term procedure, and as such, would be something to consider now.@@"<br>
<br>
Note: pregnancy only applies to the game's epilogue.<br>
[<<moveTo "event_bodyshop_assessment_5" "You have no interest in bearing children yourself." 120 "<<set $npc_bodyshop_nurse.flags.assessment.pregnant='no'>>">>]<br>
[<<moveTo "event_bodyshop_assessment_5" "Yes, you want to be fully fertile and able to carry and bear child." 120 "<<set $npc_bodyshop_nurse.flags.assessment.pregnant='yes'>>">>]
</div>/*#
#desc: bodyshop assessment, 3rd question (breasts)
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
"@@.npc_bodyshop_nurse;Very good, very good, moving up, now — breasts, what is your ideal?@@"<br>
<br>
[<<moveTo "event_bodyshop_assessment_6" "They're great for others, but I'd rather be flat-chested." 300 "<<set $npc_bodyshop_nurse.flags.assessment.breasts='none'>>">>]<br>
[<<moveTo "event_bodyshop_assessment_6" "A nice, reasonably-sized pair would be perfect." 300 "<<set $npc_bodyshop_nurse.flags.assessment.breasts='normal'>>">>]<br>
[<<moveTo "event_bodyshop_assessment_6" "Breasts are best; the bigger the better!" 300 "<<set $npc_bodyshop_nurse.flags.assessment.breasts='huge'>>">>]
</div>/*#
#desc: bodyshop assessment, final question (honesty)
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
<<switch $npc_bodyshop_nurse.flags.assessment.breasts>>
<<case 'none'>>
<<switch setup.calcBreastSize()>>
<<case 'massive' 'large' 'medium'>>
She raises an eyebrow at your comment; after all, it is a bit of a clash compared to your <<=setup.calcBreastSize()>> melons. "@@.npc_bodyshop_nurse;I see, well that is really no trouble to sort out, if that is your preference.@@"
<<case 'small'>>
She nods in acknowledgement. "@@.npc_bodyshop_nurse;Yes, that will be no trouble at all to attend to.@@"
<<case 'none'>>
She nods in acknowledgement. "@@.npc_bodyshop_nurse;So no change, still... testing a negative hypothesis can be just as important as a novel finding.@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<case 'normal'>>
She nods in acknowledgement.
<<switch setup.calcBreastSize()>>
<<case 'massive' 'large'>>
"@@.npc_bodyshop_nurse;I see, well well reduction is straightforward enough... I am surprised you didn't take care of it with the machine outside... no matter.@@"
<<case 'medium' 'small'>>
"@@.npc_bodyshop_nurse;So about what you have now. Very good, always best to confirm these things. Testing a negative hypothesis can be just as important as a novel finding@@"
<<case 'none'>>
"@@.npc_bodyshop_nurse;A simple enough procedure to attend to... I am surprised you didn't take care of it with the machine outside... no matter.@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<case 'huge'>>
<<switch setup.calcBreastSize()>>
<<case 'massive' 'large'>>
She smiles, wiggling her own giant tits "@@.npc_bodyshop_nurse;I see, well we can certainly make sure that yours are exactly perfect.@@"
<<case 'medium' 'small'>>
She nods in acknowledgement. "@@.npc_bodyshop_nurse;Of course the machine outside can handle the basics but to go really big takes time... or the skilled personal touch of a professional.@@"
<<case 'none'>>
She nods in acknowledgement. "@@.npc_bodyshop_nurse;Of course you could have gotten started with the machine outside.. but I can understand wanting big or nothing. It can handle the basics but to go really big takes time... or the skilled personal touch of a professional@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<default>>
ERROR: unexpected npc_bodyshop_nurse.flags.assessment.breasts <<=$npc_bodyshop_nurse.flags.assessment.breasts>>
<</switch>>
<br><br>
"@@.npc_bodyshop_nurse;Now, for the final question. As I mentioned earlier, many people have difficulty articulating their true feelings on this sort of matter. This can present quite the challenge for us, medically, as we do not want to go against your wishes, but we also recognise that some patients may be in self-conflict, or even fantasise about being "forced" into the things they deeply desire. Thus, I will finish off by asking... if I had administered this assessment WITHOUT the benefit of a truth serum... would your answers have changed?@@"<br>
<br>
[<<moveTo "event_bodyshop_assessment_7" "Of course not, I know what I want, and am not ashamed to admit it!" 300 "<<set $npc_bodyshop_nurse.flags.assessment.style='neutral'>>">>]<br>
[<<moveTo "event_bodyshop_assessment_7" "Maybe... I know what I want but I can lose my nerve from time to time and benefit from encouragement." 300 "<<set $npc_bodyshop_nurse.flags.assessment.style='encourage'>>">>]<br>
[<<moveTo "event_bodyshop_assessment_7" "I would completely deny it, I need someone to push me to become what I secretly want." 300 "<<set $npc_bodyshop_nurse.flags.assessment.style='force'>>">>]<br>
[<<moveTo "event_bodyshop_assessment_7" "I would fight against it, I need to be constantly forced into my proper form." 300 "<<set $npc_bodyshop_nurse.flags.assessment.style='hard_force'>>">>] <<hint $options "Warning: with this option the bodyshop will not allow deviations from your current selections.">>
</div>/*#
#desc: bodyshop assessment, summary
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
She smiles. "@@.npc_bodyshop_nurse;Well that will do it, simple, wasn't it? Now, let me just review everything before the serum wears off...@@"<br>
<br>
She looks down at her tablet
<<switch $npc_bodyshop_nurse.flags.assessment.genitals>>
<<case 'tiny'>>
"@@.npc_bodyshop_nurse;So you would prefer to keep your penis, but for it to be a small, cute <<if $fetish.sissy>>sissy <</if>>one.@@"
<<case 'average'>>
"@@.npc_bodyshop_nurse;You would be satisfied with normal sized genitals.@@"
<<case 'large'>>
"@@.npc_bodyshop_nurse;You would prefer a slightly above-average penis... the number of times I've heard that one!@@"
<<case 'noballs'>>
"@@.npc_bodyshop_nurse;You like your penis, but would like an orchiectomy to remove the excess dangly bits.@@"
<<case 'giant_cock'>>
"@@.npc_bodyshop_nurse;Your ideal would be to have a nice big cock<<if $fetish.bestiality_soft>>, maybe something equine? Or a nice thick knot? We can sort that out later<</if>>.@@"
<<case 'cunt'>>
<<if $player.body_ref.vagina>>
"@@.npc_bodyshop_nurse;So it seems you have already had some work done "down there" a quality job, and one to be proud of... even if it is not quite up to OUR standards.@@"
<<else>>
"@@.npc_bodyshop_nurse;So it seems you will be opting for some surgery down there, replace that dangly, distracting thing with a nice, tight cunt...@@"
<</if>>
<<case 'all'>>
"@@.npc_bodyshop_nurse;So it would seem your ideal form is basically a living sex demon — cunt, cock... you want to fuck and be fucked in any configuration.<<if $player.body_ref.vagina && $player.body_ref.penis>>.. and you already found someone to do the procedure... though perhaps not to quite the degree of perfection we insist upon.<</if>>@@"
<<default>>
ERROR: unexpected npc_bodyshop_nurse.flags.assessment.genitals <<=$npc_bodyshop_nurse.flags.assessment.genitals>>
<</switch>>
<<if $npc_bodyshop_nurse.flags.assessment.genitals != "cunt">>
<br><br>
You shift in your chair, not needing the truth serum for her words to turn you on.
<<switch $npc_bodyshop_nurse.flags.assessment.cum>>
<<case 0>>
"@@.npc_bodyshop_nurse;That said, you want to do away with the whole cumming mess. Fortunately dry orgasms are actually quite simple to arrange.@@"
<<case 1>>
"@@.npc_bodyshop_nurse;On the cum front you want to keep production just as it is, nice and simple.@@"
<<case 2>>
"@@.npc_bodyshop_nurse;When it comes to, well, cum, your dream is to shoot buckets, to have a porn-parody firehose between your legs... exactly the sort of desire where turning to medical science rather than relying on crude nature comes in handy.@@"
<<default>>
ERROR: unexpected npc_bodyshop_nurse.flags.assessment.cum <<=$npc_bodyshop_nurse.flags.assessment.cum>>
<</switch>>
<</if>>
<br><br>
<<if $npc_bodyshop_nurse.flags.assessment.genitals == 'cunt' || $npc_bodyshop_nurse.flags.assessment.genitals == 'all'>>
<<if $npc_bodyshop_nurse.flags.assessment.pregnant == "yes">>
"@@.npc_bodyshop_nurse;You have also expressed an interest in being capable of pregnancy in the future.@@"
<<else>>
"@@.npc_bodyshop_nurse;Though you wish to have a vagina, you have no interest in becoming pregnant at any point.@@"
<</if>>
<br><br>
<</if>>
"@@.npc_bodyshop_nurse;Moving on to... breasts...@@" She smiles, jiggling her own.
<<switch $npc_bodyshop_nurse.flags.assessment.breasts>>
<<case 'none'>>
"@@.npc_bodyshop_nurse;You explained that you would rather do without, nice and flat and trim.@@"
<<case 'normal'>>
"@@.npc_bodyshop_nurse;Your preference is a nice proportional pair of tits.@@"
<<case 'huge'>>
"@@.npc_bodyshop_nurse;You indicated that your preference is to have a pair of ginormous breasts...@@"
<<default>>
ERROR: unexpected npc_bodyshop_nurse.flags.assessment.breasts <<=$npc_bodyshop_nurse.flags.assessment.breasts>>
<</switch>>
Your heart beats faster as she reaches a conclusion.
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case 'neutral'>>
"@@.npc_bodyshop_nurse;Finally, it seems that these wishes are ones that you have fully accepted yourself, and that you will need no additional encouragement, just our surgical expertise.@@"
<<case 'encourage'>>
"@@.npc_bodyshop_nurse;So it seems that, while your desires have crystallised... you could use some kind encouragement, in addition to our surgical expertise.@@"
<<case 'force'>>
"@@.npc_bodyshop_nurse;Unfortunately you have been unable to fully embrace your desires in public, admitting that what you need is someone to really push you to become that which you truly hope to be.@@"
<<case 'hard_force'>>
"@@.npc_bodyshop_nurse;It would seem that you are resistant to your own needs, and must be forced into your proper form.@@"
<<default>>
ERROR: unexpected npc_bodyshop_nurse.flags.assessment.style <<=$npc_bodyshop_nurse.flags.assessment.style>>
<</switch>>
<br><br>
She puts the tablet down and looks at you. "@@.npc_bodyshop_nurse;So, does that sound correct? Sometimes the drugs churn a bit and it takes hearing things back to really confirm your truth, any changes?@@"<br>
<br>
[<<moveTo "event_bodyshop_assessment_8" "On second thought, that doesn't quite sound like your truth..." 300>>]<br>
<<include "calcBodyFlagMismatch">>
</div>/*#
#desc: bodyshop assessment, tweak
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You revise your truth-serum enforced "goal" assessment...<br>
<br>
Genitals:<br>
<<bodyShopAssess "Small, <<if $fetish.sissy>>sissy<<else>>feminine<</if>> penis" "genitals" "tiny">>
<<bodyShopAssess "Normal penis" "genitals" 'penis'>>
<<bodyShopAssess "Large penis" "genitals" 'giant_cock'>>
<<bodyShopAssess "Orchiectomy" "genitals" 'noballs'>>
<<bodyShopAssess "Vagina" "genitals" 'cunt'>>
<<bodyShopAssess "Penis and vagina" "genitals" 'all'>>
<br>
Pregnancy? (only affects epilogue if you have a vagina)<br>
<<bodyShopAssess "Disable" "pregnant" 'no'>>
<<bodyShopAssess "Enable" "pregnant" 'yes'>>
<br>
Cum: (not applicable if you do not have a penis)<br>
<<bodyShopAssess "Cease production" "cum" 0>>
<<bodyShopAssess "Normal production" "cum" 1>>
<<bodyShopAssess "Copious production" "cum" 2>>
<br>
Breasts:<br>
<<bodyShopAssess "Flat chest" "breasts" 'none'>>
<<bodyShopAssess "Normal breasts" "breasts" 'normal'>>
<<bodyShopAssess "Massive breasts" "breasts" 'huge'>>
<br>
Conversion style:<br>
<<bodyShopAssess "Voluntary" "style" 'neutral'>>
<<bodyShopAssess "Extra encouragement" "style" 'encourage'>>
<<bodyShopAssess "Force conversion" "style" 'force'>>
<<bodyShopAssess "Hard forced conversion" "style" 'hard_force'>>
<br><br>
<<include "calcBodyFlagMismatch">>
</div><<set $scene.enableShrink = !$fetish.penis_shrink && ['force','hard_force'].includes($npc_bodyshop_nurse.flags.assessment.style) && "tiny" == $npc_bodyshop_nurse.flags.assessment.genitals>>
<<set $scene.enableRemove = !$fetish.penis_remove && ['force','hard_force'].includes($npc_bodyshop_nurse.flags.assessment.style) && $npc_bodyshop_nurse.flags.assessment.genitals == "vagina">>
<<if $scene.enableShrink || $scene.enableRemove>>
[<<moveTo "event_bodyshop_assessment_9_fix" "Confirm the truth." 300>>]
<<else>>
[<<moveTo "event_bodyshop_assessment_9" "Confirm the truth." 300>>]
<</if>>/*#
#desc: bodyshop assessment, tweak
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
Your assessment selections do not align with previously set fetish flags. Would you like to update fetish flags to align?
<<if $scene.enableShrink && $scene.enableRemove>>
(This will enable the "Forced Penis Shrinking" and "Forced Penis Removal" fetishes)
<<elseif $scene.enableShrink>>
(This will enable the "Forced Penis Shrinking" fetish)
<<elseif $scene.enableRemove>>
(This will enable the "Forced Penis Removal" fetish)
<<else>>
ERROR: unexpected state
<</if>>
<br><br>
[<<moveTo "event_bodyshop_assessment_9" "Update flags and continue." 300 "<<if $scene.enableRemove>><<set $fetish.penis_remove=true>><</if>><<if $scene.enableShrink>><<set $fetish.penis_shrink=true>><</if>>">>]<br>
[<<moveTo "event_bodyshop_assessment_9" "Leave flags as they are and continue." 300>>]
</div>/*#
#desc: bodyshop assessment, tweak
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 0, 9, 0, false)>>
<<set $scene.doubleBooked = setup.eventOverlap(_tmpDate, 6)>>
<<if $scene.doubleBooked>>
<<set _tmpDate = setup.setNextDate(_tmpDate, 7, 9, 0)>>
<</if>>
<<if $npc_bodyshop_nurse.flags.assessment.style == 'force' || $npc_bodyshop_nurse.flags.assessment.style == 'hard_force'>>
<<addTaskById 'task_bodyshop_appointment_forced' _tmpDate>>
<<else>>
<<addTaskById 'task_bodyshop_appointment' _tmpDate>>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You confirm your decision and the nurse smiles. You really have to admire her bedside manner. She seems to exude a real warmth and sense that she is eager to help you realise your dreams, which puts you at ease.<br>
<br>
<<switch $player.identify_as>>
<<case "female">>
"@@.npc_bodyshop_nurse;Good girl, I think we can definitely help you realise your true self, in time.@@"
<<case "fluid" "agender" "">>
"@@.npc_bodyshop_nurse;Very good. I think we can definitely help you realise your true self, in time.@@"
<<case "male">>
"@@.npc_bodyshop_nurse;Good boy, I think we can definitely help you realise your true self, in time.@@"
<<default>>
ERROR: unexpected player.identify_as <<=$player.identify_as>>
<</switch>>
<br><br>
She rises to her feet and preps another syringe, pricking your arm again before gesturing to the door.<br>
<br>
"@@.npc_bodyshop_nurse;That will neutralise the truth serum. We wouldn't want you getting into trouble! As to your results... the doctor and I will review things and come up with a personalised treatment plan. I've scheduled you for a follow-up appointment first thing Sunday morning, if that works for you?@@"<br>
<br>
<<if $scene.doubleBooked>>
You explain that you're actually busy this weekend.<br>
<br>
"@@.npc_bodyshop_nurse;Not a problem, we'll just do it the week after, see you then!@@"<br>
<br>
<</if>>
[<<moveTo "room_student_quarter" "Thank her and leave." 180>>]
</div>/*#
#desc: propose your "clone"
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask the nurse if, since she seems to have taken inspiration from your body, she might like to make it up to you...<br>
<br>
<<if $player.body_ref.vagina && (!$fetish.bestiality_soft || $player.body_ref.knot && $player.body_ref.horsecock) && $player.body_ref.cumProduction == 2 && $player.body.penissize[0] >= 6 && $player.body.breastsize[0] >= 10>>
<<if setup.getTotalValue("oral") > 15 && setup.getTotalValue("anal") > 15>>
She grins... "@@.npc_bodyshop_nurse;Mmm... I SHOULD say no, but fuck, we are practically a pair of sex demons, we're kind of obliged to indulge in a bit of sinful indulgence, aren't we?@@"<br>
<br>
[<<moveTo "event_bodyshop_clone_2" 'Smile back... and find a room.' 1800>>]<br>
[<<moveTo "room_bodyshop" 'Maybe some other time.' 60>>]
<<else>>
You can tell she's tempted as she shifts in her chair. "@@.npc_bodyshop_nurse;No... I mean, I'm tempted, don't get me wrong, but I'm afraid I might break you... maybe if you had a bit more experience?... oh, I really shouldn't be saying that, but I can't stop thinking about slamming this big cock of mine into all three of your holes... and you doing the same... no, sorry, I couldn't bear the thought of accidentally breaking you...@@"<br>
<br>
<<printThought "Hmm, maybe if I was a bit more skilled?">><br>
<br>
[<<moveTo "room_bodyshop" 'Back.' 60>>]
<</if>>
<<else>>
She smiles gently. "@@.npc_bodyshop_nurse;What a sweet offer, but, as I told you... I'm all locked up! No, I am afraid that such would be just too frustrating... besides, I'm a nurse, not some sort of lust-demon, I'm here to help you, not fuck you!@@"<br>
<br>
<<printThought "Damn... I can tell she's interested, but it sounds like she wants something more extreme...">><br>
<br>
[<<moveTo "room_bodyshop" 'Back.' 60>>]
<</if>>
</div>/*#
#desc: fuck your demonic clone
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<include "removeCage_retractSissyomatic">>
<<changeHorny 100>>
<<applyExperience 'oral' 20 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'anal' 20 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'cum' 20 'unbelievable' $SEEN_STRANGER>>
<<applyFatigue 100>>
<<playerOrgasm>>
<<set $npc_bodyshop_nurse.flags.demon_fuck = true>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.getNurseArt('demon_naked')>>
<div id="invframe" class="scrolltext">
You follow the nurse into an exam room where she turns to you with a grin. She flexes, thrusting out her heaving breasts as her <<getWordPenis false>> swells under her skirt, her latex outfit stretching, straining, and then exploding off of her body.<br>
<br>
She stands before you with a grin, her massive <<if $fetish.bestiality_soft>>dragon... or is that demon? <</if>>cock already starting to dribble cum.<br>
<br>
"@@.npc_bodyshop_nurse;Hurry up and get those clothes off,@@" she says with a husky fire in her voice. "@@.npc_bodyshop_nurse;...or I'm going to fuck you right through them.@@"<br>
<br>
You hurry to obey, shedding your clothing as she watches, stroking with one hand as she fingers herself with the other.
<<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
With a grin she retracts your chastity device, your <<getWordMyPenis>> immediately springing to the same hardness as her own as your cunt weeps in desperate need to be filled once again.
<<else>>
She swiftly removes your chastity device, before it has even hit the floor your <<getWordMyPenis>> is at full hardness, your cunt desperate to be filled.
<</if>>
She
<<else>>
Once you are naked she wastes
<</if>>
wastes no time in almost tackling you onto the examination bed and then it is a full-on fuck-fest; the two of you switching off in a blur as who is fucking whom, and where, switches frequently, all the while fingers and lips working to tease cunts or suckle breasts, <<getWordCum>> flowing freely as you both climax almost constantly, a heady stream of pleasure and orgasm and debauched coupling that zooms through the Karma Sutra as prologue...<br>
<br>
Even demonic endurance has its limits and, eventually, the two of you collapse, entwined in a puddle of sweat and cum...<br>
<br>
[<<moveTo "event_bodyshop_clone_3" 'Wow.' 600>>]
</div>/*#
#desc: finish fuck your demonic clone
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<include "replaceCage_extendSissyomatic">>
<<set $player.timebased.fatigue = .6 * $player.timebased.fatiguemax>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.getNurseArt('demon')>>
<div id="invframe" class="scrolltext">
The orgiastic indulgence come to an end <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> pops to her feet with a grin.<br>
<br>
"@@.npc_bodyshop_nurse;Mmm... that was... refreshing.@@" You gawk as she casually walks over to a closet and pulls on a fresh uniform, her tits straining, but once again contained, by tight latex as her skirt bulges.<br>
<br>
<<if $scene.cage != "">>
"@@.npc_bodyshop_nurse;Well, I had better get back to work, but I would not want you getting into trouble.@@"<br>
<br>
Gliding over to where you lay she replaces your <<=setup.getItemTypeName('cage')>> with a wink.
<</if>>
<br><br>
Only after she leaves does your heart-rate come down and you start putting your clothes back together. Dressed and satisfied you stagger out of the building, <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> bidding you farewell with a sly wink.<br>
<br>
[<<moveTo "room_foyer" 'Stagger home.' 600>>]
</div>/*#
#desc: city location alleyway leading to bodyshop
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Student Quarter Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_student_quarter_alleyway.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.bodyshop_unlock == "technician">>
Remembering <<=ps(setup.getNpcName('npc_technician', 'first'))>> somewhat cryptic description, you cautiously head down the dark alleyway. At first you think maybe she was just pulling your leg and that you've just found a boring dead end, but as you reach the end of the alleyway you notice a glowing neon sign above a sealed up storefront.
<<else>>
A narrow alleyway catches your eye and you trepidatiously head down it. At first you think you've just found a boring dead end, but as you reach the end of the alleyway you notice a glowing neon sign above a sealed up storefront.
<</if>>
<br><br>
[<<moveTo "room_bodyshop_exterior" "Look at the sign." 600>>]
</div>/*#
#desc: city location bodyshop exterior
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_bodyshop_exterior')>>
<<if !(_nextdate == null) && setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<</if>>
<<set $player.location to "Outside the NEW U Bodyshop">>
<<initRoom>>
<<include playerMenu>>
<<if $player.locations.bodyshop2>>
<<createAdvBGR "./images/locations/city_bodyshop.png">>
<<else>>
<<createAdvBGR "./images/locations/city_bodyshop_renovation.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.locations.bodyshop2>>
A flickering neon "NEW U" sign casts a blue tint across the alleyway.
<<if $npc_bodyshop_nurse.first_meet>>
While still a bit run-down,
<<if $now.getUTCDay() != 0 && $now.getUTCHours() >= 8 && $now.getUTCHours() < 22>>
the shop is open, with the booth still standing in front for those looking for a more "drive through" speed experience.
<<else>>
it appears the shop is now closed, though the booth out front is flickering and active.<br>
<br>
Looking closer you find a sign indicating the shop is open Monday through Saturday, eight to <<if $options.militaryTime>>22:00<<else>>ten pm<</if>>.
<</if>>
<<elseif $now.getUTCDay() != 0 && $now.getUTCHours() >= 8 && $now.getUTCHours() < 22>>
Looking closer, you realise that there are lights coming from inside. It would appear the shop is finally open?
<<elseif _nextdate != null && setup.compareDay($now,_nextdate)>>
You have an appointment later today at <<=setup.shortTime(_nextdate)>>.
<<else>>
It would appear the shop is closed, but you notice a sign indicating its hours as Monday through Friday, <<if $options.militaryTime>>08:00 to 22:00<<else>>eight am to ten pm<</if>>.
<</if>>
<<else>>
A flickering neon "NEW U" sign casts a blue tint across the alleyway. The expansive storefront is securely sealed up and you wonder if the shop is, perhaps closed until you spy a lone booth next to the front door, like an old-fashioned phone booth, but with tinted glass obscuring the interior.
<</if>>
<br><br>
<<if $npc_manager.stage < 2>>
On closer inspection the machine appears to be temporarily out of order.<br>
<br>
<<printThought "Hmm, have to come back later.">><br>
<br>
<<else>>
[<<moveTo "room_bodyshop_breast_machine_0" "Step into the booth." 300>>]<br>
<<if $player.locations.bodyshop2>>
<<if $now.getUTCDay() != 0 && $now.getUTCHours() >= 8 && $now.getUTCHours() < 22>>
<<if !$npc_bodyshop_nurse.first_meet>>
[<<moveTo "event_bodyshop_first_1" "Enter the bodyshop." 300>>]<br>
<<else>>
[<<moveTo "room_bodyshop" "Enter the bodyshop." 300>>]<br>
<</if>>
<<elseif _nextdate != null && setup.compareDay($now,_nextdate)>>
[<<moveTo "room_bodyshop_exterior" "Wait for your appointment." _tmpSeconds>>]<br>
<<else>>
[@@.link_locked;It is outside business hours and the bodyshop is closed.@@]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 600>>]
</div>/*#
#desc: bodyshop interior
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.hasOwnProperty('bodyshop_nurse_art')>>
<<set $scene.isBothDemon = false>>
<<if $npc_bodyshop_nurse.flags.info && !$npc_bodyshop_nurse.flags.clone && setup.bodyshopIdeal($player, $npc_bodyshop_nurse.flags.assessment)>>
<<set $npc_bodyshop_nurse.flags.clone = true>>
<<set $scene.firstClone = true>>
<<elseif random(1, 10) < 3 && $player.body_ref.vagina && (!$fetish.bestiality_soft || $player.body_ref.knot && $player.body_ref.horsecock) && $player.body_ref.cumProduction == 2 && $player.body.penissize[0] >= 6 && $player.body.breastsize[0] >= 10>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt("demon")>>
<<set $scene.isBothDemon = true>>
<<else>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt()>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('task_bodyshop_appointment_forced') && !$currentTasks.task_bodyshop_appointment_forced.finished || $currentTasks.hasOwnProperty('task_bodyshop_appointment') && !$currentTasks.task_bodyshop_appointment.finished>>
The nurse at the desk greets you with a smile. "@@.npc_bodyshop_nurse;Hello <<=$player.first_name>> — as I told you before, the doctor and I are still working on designing your treatment plan, I will call you when things are ready. Until then we are unprepared to offer you any procedures, beyond those offered by the booth outside.@@"<br>
<br>
<<elseif !$currentTasks.hasOwnProperty('task_bodyshop_appointment_forced') && !$currentTasks.hasOwnProperty('task_bodyshop_appointment')>>
The nurse greets you with a smile.
<<if $currentTasks.hasOwnProperty('task_sissyomatic_steal') && !$currentTasks.task_sissyomatic_steal.finished>>
"@@.npc_bodyshop_nurse;Have you obtained those plans for me?@@"<br>
<br>
[<<moveTo "event_bodyshop_sissyomatic_1" 'Talk to her about the plan to steal the... plans.' 300>>]<br>
<<else>>
"@@.npc_bodyshop_nurse;Hello, are you ready for your assessment? As I mentioned previously, we need to get through that first before we can begin to draw up a treatment plan or otherwise assist you in building the body of your dreams.@@"<br>
<br>
[<<moveTo "event_bodyshop_assessment_1" "Agree to an assessment." 300>>]<br>
<</if>>
<<if State.hasPlayed("event_maidcafe_landlord_intro_4") && !State.hasPlayed("event_surgeon_help_landlord_schedule_2")>>
[<<moveTo "event_surgeon_help_landlord_schedule_1" 'Ask about removing <<=ps(setup.getNpcName("npc_landlord","first"))>> tracking device...' 300>>]<br>
<</if>>
<<else>>
<<if $scene.firstClone>>
Your jaw drops at the sight of the nurse she looks... like you. She notices your surprise and smiles. "@@.npc_bodyshop_nurse;Oh, hello <<=$player.call>> <<=$player.last_name>>! This morning I was thinking about you realising your dreams and, well... I had to try it out myself!@@" She grins and wiggles in her always form-fitting latex uniform. "@@.npc_bodyshop_nurse;It is quite the combination... and I doubt you'd be surprised to know that <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> and I had quite the time with the bits below before work! I'm looking forward to some more fun after work... until then we're both locked in chastity — it was the only way to keep us behaved and get the shop open!@@"<br>
<br>
<<if setup.getTotalValue("humiliation") > 10>>
<<if $player.flags.humiliationStyle == "brazen">>
<<if setup.getTotalValue("humiliation") > 15>>
You grin, saying you wish you'd been there to see it, or take part. She winks at you and continues on.
<<else>>
You grin, congratulating her on the "fun" as you share a knowing glance.
<</if>>
<<else>>
<<if setup.getTotalValue("humiliation") > 5>>
You blush crimson at the thought of her doing something like that while, in a very intense way, "pretending" to be you...
<<else>>
You can't even think of how to respond, the humiliating thought of what she just described rooting you in place.
<</if>>
Seeing your look of mortification she just grins wider and winks at you.
<</if>>
<<else>>
You can't believe what you've inspired, or that she'd talk about it so casually! you just nod and she glides on.
<</if>>
"@@.npc_bodyshop_nurse;So! What can we assist you with today?@@"
<<else>>
The nurse at the desk smiles back at you. "@@.npc_bodyshop_nurse;Welcome <<=$player.call>> <<=$player.last_name>>, what work are you looking to get done today?@@"
<</if>>
<<if $scene.isClone || $scene.isBothDemon>>
<br><br>
Looking at her is a bit unnerving, she seems to be sporting the same set of body mods you are... even "below," you confirm with a subtle peek over the counter at her form-fitted crotch.
<</if>>
<br><br>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
"@@.npc_bodyshop_nurse;Unfortunately the surgery facilities are in use with another patient right now... perhaps you might return later?@@"
<<else>>
<<if $fetish.penis_remove && ($player.sec_style.body.vagina == "strict" || $player.sec_style.body.penis_remove == "strict")>>
[@@.link_locked;It is not possible to remove or alter your vagina.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_genitals_1" 'Talk about your genitals.' 300>>]<br>
<</if>>
<<if $fetish.bestiality_soft>>
<<if $player.body.penissize[0] > 0 && $player.body_ref.penis>>
[<<moveTo "event_bodyshop_penis_1" 'Ask about further penis upgrades...' 300>>]<br>
<<else>>
[@@.link_locked;You can't "upgrade" a penis you don't have.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_bodyshop_eyes_1" 'Ask about changing your eye colour.' 300>>]<br>
[<<moveTo "event_bodyshop_ears_1" 'Ask if she can do anything to your ears?' 300>>]<br>
[<<moveTo "event_bodyshop_breasts_1" 'Get some work done on your breasts.' 300>>]<br>
<<if !$fetish.penis_remove || $player.sec_style.body.vagina != "strict">>
<<if $player.body_ref.penis>>
[<<moveTo "event_bodyshop_cum_1" 'Discuss cum production.' 300>>]<br>
<<else>>
[@@.link_locked;With no penis, you do not produce cum.@@]<br>
<</if>>
<<if $player.body_ref.balls>>
[<<moveTo "event_bodyshop_balls_1" 'About removing your balls.' 300 "<<set $scene.procedure='noballs'>>">>]<br>
<<elseif $player.body_ref.penis>>
[<<moveTo "event_bodyshop_balls_1" 'About getting a new pair of balls.' 300 "<<set $scene.procedure='balls'>>">>]<br>
<<else>>
[@@.link_locked;Balls without a penis? No.@@]<br>
<</if>>
<</if>>
<<if $player.body.breastsize[0] > 0>>
[<<moveTo "event_bodyshop_milk_1" 'Discuss milk production.' 300>>]<br>
<<else>>
[@@.link_locked;Without breasts, you cannot produce milk.@@]<br>
<</if>>
[<<moveTo "event_bodyshop_cyber_1" 'Ask about cybernetic enhancements.' 300>>]
<</if>>
<br><br>
<<if !$npc_bodyshop_nurse.flags.info>>
[<<moveTo "event_bodyshop_info_1" 'Ask why there are so many different nurses working here?' 300>>]<br>
<<elseif $scene.isClone>>
[<<moveTo "event_bodyshop_clone_1" 'Ask if she could indulge you with a bit of twin-cest...' 300>>]<br>
<<elseif $scene.isBothDemon>>
[<<moveTo "event_bodyshop_clone_1" 'Ask if she would like to have a hellish good time?' 300>>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty('task_sissyomatic_steal')>>
<<if $currentTasks.task_sissyomatic_steal.finished>>
[@@.link_locked;You already got her a copy of the <<=setup.getItemName('sissyomatic')>> schematics.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_sissyomatic_1" 'Talk to her about the <<=setup.getItemName("sissyomatic")>>.' 300>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_maidcafe_landlord_intro_4") && !State.hasPlayed("event_surgeon_help_landlord_schedule_2")>>
[<<moveTo "event_surgeon_help_landlord_schedule_1" 'Ask about removing <<=ps(setup.getNpcName("npc_landlord","first"))>> tracking device...' 300>>]<br>
<</if>>
<br>
<</if>>
[<<moveTo "room_student_quarter" "Leave." 180>>]
</div>/*#
#desc: enter bodyshop for the first time
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt('giant_breasts')>>
<<set $npc_bodyshop_nurse.first_meet = true>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You enter the bodyshop where you are immediately greeted by the nurse/receptionist sitting behind the desk.<br>
<br>
"@@.npc_bodyshop_nurse;Welcome!@@" The nurse says with a smile as you try to pick your jaw up off the floor.
<<if $npc_work_doctor.stage >= 3>>
In a way she reminds you of working for <<=setup.getNpcName("npc_work_doctor","formal")>> but where your nurse "uniform" serves to conceal your identity and wrap you completely in skin-tight latex... her latex "uniform" serves to show her off.
<<else>>
While unmistakable meant to be a nurse's uniform her outfit, and her, are nothing like you could have expected.
<</if>>
White coloured and decorated in medical styling, her polished latex "uniform" acts more to highlight her figure, showing off gobs of skin, what has to be an integrated corset pinching her waist and supporting a pair of round breasts with a top cut so low that you can see under- AND over-cleavage. Up top the wide collar drops from her neck down to barely conceal her nipples and then join just below the bottom of her huge, perky orbs.<br>
<br>
Short sleeves show off her arms and she smiles at you with a pair of gorgeous full lips.<br>
<br>
"@@.npc_bodyshop_nurse;Welcome to the New-U Bodyshop, where our goal is to give everyone the body of their dreams. Would you like a free assessment? We insist on it for any client who is looking for more than our wonderful automated machine can provide. It allows us to better calibrate our procedures to your unique needs.@@"<br>
<br>
[<<moveTo "event_bodyshop_assessment_1" "Agree to an assessment." 300>>]<br>
[<<moveTo "room_bodyshop" "Maybe some other time." 60>>]
</div>/*#
#desc: ask nurse about her different appearances
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_bodyshop_nurse.flags.info = true>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
"@@.npc_bodyshop_nurse;So many nurses? I'm afraid there's just me...@@" You stare back in confusion as she thinks for a moment and then laughs. "@@.npc_bodyshop_nurse;Oh, I see. Yes, well... while I always wanted to be a beautiful woman... I could never really settle on the details... thanks to my husband and my work I don't have to decide, I can be different every day... sometimes twice a day!@@"<br>
<br>
Her tone turns sombre. "@@.npc_bodyshop_nurse;Of course... the medical establishment was less happy with that sort of rushed experimentation... so here we are, scraping by, doing our best to help people like yourself... of course all the procedures we make available to you are well tested and perfectly safe. Medical ethics means that I shall remain unique... for now.@@"<br>
<br>
[<<moveTo "room_bodyshop" 'Talk about something else.' 300>>]
</div>/*#
#desc: city location bodyshop breast alteration machine
#status: FINISHED 0.5.0.0
#ignore_spell: c,dd,f,g
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside the NEW U Bodyshop">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_bodyshop_breast_machine.png">>
<div id="invframe" class="scrolltext">
<<if $npc_bodyshop_nurse.flags.assessment == "hard_forced">>
You approach the booth, but the light is off and it appears to be out of order.<br>
<br>
<<printThought "I guess with the full shop being open they decided to turn the machine off...">><br>
<br>
<<else>>
Inside the private booth, you find an odd machine. The front of the machine is slightly concave in the rough impression mold of a feminine body shape. Examining it closer there is a small slot to insert credits and a selection screen with options running top to bottom None, A, C, DD, F, G<<if $player.body_ref.breastMax.bodyshop < 10>>, though some of the lower options are scratched out<</if>>.<br>
<br>
<<printThought "Wait, are those bra sizes?">><br>
<br>
Pressing a button at random, an error message flashes "@@.computer;Remove top and bra and step into position to calculate payment.@@"<br>
<br>
[<<moveTo "room_bodyshop_breast_machine_1" "Step into the machine." 60 "<<useClothSetPush 'tmp'>>">>]<br>
<</if>>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 600>>]
</div>/*#
#desc: city location bodyshop breast alteration machine choose size
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("shirt") || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "" || setup.checkItemTypeWorn("jacket")>>
<<include "calcTopId">>
<<if $scene.topId != "">>
<<removeItem $scene.topId true>>
<</if>>
<<set $scene.bra = setup.getItemFromType("bra")>>
<<if $scene.bra != "">>
<<removeItem $scene.bra true>>
<</if>>
<<if setup.checkItemTypeWorn("jacket")>>
<<set $scene.jacket = setup.getItemFromType("jacket")>>
<<removeItem $scene.jacket true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Outside the NEW U Bodyshop">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_bodyshop_breast_machine.png">>
<div id="invframe" class="scrolltext">
You secure the latch so that nobody will disturb you in the privacy of the booth before exposing your chest and stepping up to the machine. Positioning yourself in the concave spot feels quite comfortable, almost molding to your body and you feel a soft suction pulling against your chest as you sink forward into the machine.<br>
<br>
Looking at the menu you find that the size listing now has prices next to each entry.<br>
<br>
<<if !$player.sec_style.body.breasts>>
<<printThought "Do I really want to trust some random automated machine to give me breasts? Is that even possible? Is this even what I want?">><br>
<br>
Nervously you stare at your options.<br>
<br>
<</if>>
<<printBreastAlterationMenu $player.body.breastsize[1] "room_bodyshop_breast_machine_2">>
[<<moveTo "room_student_quarter" "Step away and return to the Student Quarter." 600 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: city location bodyshop breast alteration machine size change
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.money.total >= $scene.price>>
<<set $scene.sizechange = $scene.breast_size - $player.body.breastsize[1]>>
<<set $player.body.breastsize[1] = $scene.breast_size>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "voluntary">>
<</if>>
<<set $player.flags.mealplan.hormones_since_grow = 0>>
<<addCredits `-($scene.price)`>>
<<set $scene.success = true>>
<<changeHorny 50>>
<<if $player.timebased.horny >= 100>>
<<set $scene.horny = $player.timebased.horny-100>>
<<set $player.timebased.horny = 50>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<if $scene.panties != "">>
<<changeItemStatus $scene.panties 'cumsoaked' '["set",100]'>>
<</if>>
<<else>>
<<set $scene.horny = 0>>
<</if>>
<<set $scene.new_breasts = ($scene.sizechange == $player.body.breastsize[1])>>
<<updateAllEffect $player>>
<<if $scene.new_breasts>>
<<if !$player.sec_style.body.breasts>>
/* getting breasts from nothing */
<<applyExperience 'feminization' 15 'very' $ALONE>>
<<else>>
<<set $scene.new_breasts = false>>
<</if>>
<<elseif $scene.sizechange > 0>>
<<applyExperience 'feminization' 12 'very' $ALONE>>
<</if>>
<<else>>
<<applyExperience 'bimbofication' 7 'normal' $ALONE>>
<</if>>
<</if>>
<<set $player.location to "Outside the NEW U Bodyshop">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_bodyshop_breast_machine.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.success>>
You press a button only to be met with a sour rejection note when you fail to deposit the required amount of credits. Apparently this machine only accepts cash and you don't currently have the funds to pay for this degree of alteration.<br>
<br>
<<printThought "Well, that was dumb.">><br>
<br>
[<<moveTo "room_bodyshop_breast_machine_1" "Try a different setting." 60>>]<br>
<<else>>
You press the button and drop the required quantity of credits in a small drawer that shoots out. Once you've paid up the till retracts and a message pops up stating "@@.computer;Payment received. Remain still.@@"<br>
<br>
For a moment, you think you might have just been scammed — only to gasp as a set of straps suddenly wrap around your body, tightening in an instant to hold you against the machine. Mouth wide in surprise, you barely have time to react before something else is shooting towards you! A dark blob that covers your face, shoving something firm into your mouth even as it renders you blind, deaf, and dumb and pulls you even tighter into the machine.<br>
<br>
Your objections muffled by the gag now occupying your mouth, your reflexive struggles are in vain as your bonds get even tighter, and you begin to feel strange suction pulling against your bare chest, twin rings <<if $player.body.breastsize[0]>0>>cinching around the base of your now enveloped breasts<<else>>sealing tight against your flat chest<</if>>.<br>
<br>
You gasp at the subtly pleasurable sensation only to find yourself inhaling something that smells, and tastes, subtly fruity. You feel a bit fuzzy, a sensation further enhanced as lights come on inside your mask displaying a strange, almost hypnotic pattern.<br>
<br>
The panicked tension becomes impossible to hold on to as your body relaxes. The straps tighten even further so that you do not slip, unable to even move as you go completely limp.<br>
<br>
The previous mild pleasure coming from your breasts ramps up higher as what feels like tiny brushes swirl around your now-hard nipples as gentle nubs begin kneading at the sensitive surrounding flesh.<br>
<br>
<<if $scene.horny > 0>>
You were already aroused before stepping into the machine and now, totally restrained, drugged, gagged and subject to programmed virtualised stimulation while your breasts are delightfully played with... you cum, hard, <<if setup.checkItemTypeWorn("cage")>>leaking <<if setup.isCage()>>through your cage<<else>>down your leg<</if>> and <</if>>soaking your panties as you try to hump the machine.<br>
<br>
Your thoughts drenched in sex all you can wish is that as heavenly as the sensation of the machine playing with your breasts is, it would do even more. Helpless at the mercy of the mechanical contraption you have no way to relay your wish, merely moaning through your gag as your eyes roll back in pleasure, brought back to attention as the machine sounds a loud *DING*.
<<else>>
As good as the combination of sweet drugs, tight restraint, breast stimulation, programmed virtualised stimulation and<<if setup.getTotalValue("penis") < 5>>, strangely the act of<</if>> sucking on your gag is, you do not quite reach orgasm by the time the machine sounds a loud *DING*.
<</if>>
<br><br>
Your mask whisks away and the restraints release as swiftly as they were applied. You stagger out of the booth and look down at your new <<getWordBreasts>>.
<<if $scene.sizechange > 0>>
Giggling thanks to the swiftly fading after-effects of the drugs, you give a bit of a bounce, admiring your new, larger breasts.
<<else>>
Though your breasts are now <<if $player.body.breastsize[0] == 0>>nonexistent<<else>>smaller<</if>>, your body still tingles with pleasure, but also a slight lingering disappointment at your new, more modest figure.
<</if>>
You glance back at the booth and the door flashes with a parting message, vandals having painted over parts of the lettering leaving it spelling out a perhaps more accurate farewell of "@@.computer;CUM_ AGAIN.@@"
<<if $scene.horny > 0>>
<br><br>
Despite your orgasm, you are still very aroused, amazed at the bizarre, yet effective breast alteration that got you off even as it perfectly reshaped your body to order.
<</if>>
<<if !$scene.new_breasts && !$player.locations.bodyshop2>>
<br><br>
<<printThought "Huh, I wonder what this place is going to be like when it opens for real...">>
<</if>>
<</if>>
<<if $scene.new_breasts>>
You're still trying to catch your breath and process what just happened. In a matter of moments, you have gone from flat-chested with a generally masculine frame and then... you shake your head; as if your hips weren't enough the addition of the twin, perfect mounds on your chest turns your "feminine" dial hard enough to almost break it...<br>
<br>
Still in a daze, you spare a final glance down at your perky "additions" as you walk up the alleyway, your mind spinning as it tries to reconcile your previous self-perception with your "new" body.<br>
<br>
[<<moveTo "room_student_quarter" "Continue." 600 "<<useClothSetPop 'tmp'>>">>]
<<else>>
<br><br>
[<<moveTo "room_student_quarter" "Fix your clothes and return to the Student Quarter." 600 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: bodyshop balls add/remove
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = setup.getProcedurePrice($scene.procedure)>>
<<include "checkBodyshopForced">>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask if you could have
<<if $scene.procedure == 'balls'>>
a fresh pair of testicles installed.
<<else>>
your testicles removed.
<</if>>
<br><br>
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> has you expose yourself only to frown at the sight of your <<=setup.getItemTypeName('cage')>>.<br>
<br>
<<include "bodyShopSissyomaticLecture">><br>
<br>
[<<moveTo "room_student_quarter" "Leave." 180>>]
<<else>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> nods. "@@.npc_bodyshop_nurse;Certainly... such will run you <<=$scene.price>> unfortunately this is a procedure that we have to run cash-only, other than that, however, it is quite simple. You need only specify who you would prefer to perform the operation: myself, or <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>... or you can have it done while you are unconscious and just wake up to the new you.@@"<br>
<br>
<<if $player.money.total < $scene.price>>
[@@.link_locked;Unfortunately <<=$scene.price>> is more than you can afford.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_pre_op" "You would like the doctor to do things himself." 7200 "<<set $scene.nurse=false>>">>]<br>
[<<moveTo "event_bodyshop_pre_op" "You would prefer the feminine touch of the nurse." 7200 "<<set $scene.nurse=true>>">>]<br>
<</if>>
[<<moveTo "event_bodyshop_pre_op_sleep" "You'd rather be unconscious for the whole procedure." 600>>]<br>
<br>
[<<moveTo "room_bodyshop" "You changed your mind about getting anything done today." 300>>]
<</if>>
</div>/*#
#desc: bodyshop breasts choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You tell the nurse you would like to get some changes made to your breasts.<br>
<br>
"@@.npc_bodyshop_nurse;Oh? And what were you thinking of?@@" She smiles and gives a little bounce to send her own knockers jiggling, yet miraculously not popping free of her tight latex uniform.<br>
<br>
<<printBreastAlterationMenu $player.body.breastsize[1] "event_bodyshop_breasts_2">>
<br><br>
[<<moveTo "room_bodyshop" "On second thought, you'll stay how you are." 60>>]
</div>/*#
#desc: bodyshop breast change
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = Math.floor(1.1*$scene.price)>>
<<include "checkBodyshopForced">>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
The nurse smiles and leads you into an exam room. "@@.npc_bodyshop_nurse;So, the price of what you're asking for will come to <<=$scene.price>>. I'll note that this is a bit more than if you used the machine, personal touch, and all that. Though in here we are capable of larger sizes than can be safely automated. If that is acceptable there is only one remaining question. Who would you like to perform the procedure, myself, or <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>... or do you just want to have it over and done with without experiencing anything?@@"<br>
<br>
<<if $player.money.total < $scene.price && $scene.breast_size > $player.body.breastsize[1]>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
<<printThought "That's, like... more than I have, but can I afford NOT to have bigger boobs? I don't think so.">>
<<else>>
<<printThought "Go into debt for bigger boobs? That seems worth it, right?">>
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
<<printThought "Do I really want to go into debt for boobs? Maybe that's not the best idea...">>
<<else>>
<<printThought "Going into debt for boobs? Maybe that's not the best idea...">>
<</if>>
<</if>>
<br><br>
<</if>>
<<if $scene.breast_size > $player.body.breastsize[1]>>
<<set $scene.procedure = 'breasts_grow'>>
<<else>>
<<set $scene.procedure = 'breasts_shrink'>>
<</if>>
[<<moveTo "event_bodyshop_wake_1" "Say you would rather not be conscious to experience the transformation." 300 "<<set $scene.nurse = $options.fem>><<useClothSetPush 'tmp'>><<removeAllClothing>><<addCredits `-($scene.price)`>><<if $player.money.total < 0 && $scene.breast_size > $player.body.breastsize[1]>><<setThreshold 'bimbofication' 'spending_money' 'boobs'>><</if>>">>]<br>
[<<moveTo "event_bodyshop_breasts_3" "Say you would like her to work on you today." 300 "<<set $scene.nurse=true>>">>]<br>
[<<moveTo "event_bodyshop_breasts_3" "You would prefer the doctor to perform the procedure." 7200 "<<set $scene.nurse=false>>">>]<br>
<br>
<<if setup.getTotalValue("bimbofication") > 15 && $scene.breast_size > $player.body.breastsize[1]>>
[@@.link_locked;I can't leave without bigger boobs!@@]
<<else>>
[<<moveTo "room_bodyshop" "On second thought, you'll stay how you are." 60>>]
<</if>>
</div>/*#
#desc: bodyshop breast surgery
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<if $player.money.total < 0 && $scene.breast_size > $player.body.breastsize[1]>>
<<setThreshold "bimbofication" "spending_money" "boobs">>
<</if>>
<<set $scene.forceOverride = ($npc_bodyshop_nurse.flags.assessment.style == "force" || $npc_bodyshop_nurse.flags.assessment.style == "hard_force") && !$npc_bodyshop_nurse.flags.forced>>
<<if $scene.forceOverride>>
<<set $npc_bodyshop_nurse.flags.forced = true>>
<<switch $npc_bodyshop_nurse.flags.assessment.breasts>>
<<case 'none'>>
<<if $scene.breast_size != 0>>
<<set $scene.forceOverride = true>>
<<set $scene.breast_size = 0>>
<</if>>
<<case 'normal'>>
<<if $scene.breast_size < 2 || $scene.breast_size > 4>>
<<set $scene.forceOverride = true>>
<<set $scene.breast_size = 4>>
<</if>>
<<case 'huge'>>
<<if $scene.breast_size < 8>>
<<set $scene.forceOverride = true>>
<<set $scene.breast_size = 10>>
<</if>>
<</switch>>
<</if>>
<<set $scene.breastGrow = $scene.breast_size >= $player.body.breastsize[1]>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if $scene.breastGrow>>
<<set $scene.procedure = "breasts_grow">>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.breast_enlarge = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.breast_enlarge = true>>
<</if>>
<<changeHorny 100>>
<<else>>
<<set $scene.procedure = "breasts_shrink">>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.breast_shrink = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.breast_shrink = true>>
<</if>>
<<set _pain = 10 + $player.body.breastsize[1] - $scene.breast_size>>
<<applyExperience 'bdsm' _pain 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
You are led into the surgical room where <<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> has you strip and lean against a padded surface, to which are are quickly and securely strapped down. A pair of large cups are affixed over your breasts before things are finished off with a thick mouthpiece placed between your teeth.<br>
<br>
<<if $scene.forceOverride>>
<<if $scene.nurse>>
Standing in front of you the nurse shakes her head. "@@.npc_bodyshop_nurse;So, now that you can't wiggle out of it, well... I know what you said a moment ago, but we both know the truth and... well, I took care of fixing things so you'll end up with the breast size you ACTUALLY want. No need to thank me!@@"
<<else>>
Standing in front of you the surgeon shakes her head. "@@.npc_bodyshop_surgeon;So, despite what you requested, well... we both know what sort of breasts you ACTUALLY want so... I went ahead and changed the program to something more appropriate. You'll thank me later, I'm sure!@@"
<</if>>
<br><br>
<<printThought "Oh <<getWordGod>>, what have I done?">><br>
<br>
<</if>>
<<if $scene.breastGrow>>
<<if $scene.nurse>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> smiles as she gives your restraints a quick once-over. "@@.npc_bodyshop_nurse;Alright, looks like we can begin giving you those nice <<getWordBreasts $player $scene.breast_size>> of your dreams!@@"<br>
<br>
Tablet in hand she makes a few adjustments, a pair of small suction cups shooting out to affix themselves to your nipples followed by a slight prick.<br>
<br>
"@@.npc_bodyshop_nurse;And here we go!@@" She says with a smile, turning the tablet so you can see as she raises a slider and you feel your breasts start to swell.
<<else>>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> nods as he reviews your chart. You gasp as he presses a button on his tablet and a pair of small suction cups shot out to affix themselves over your nipples.<br>
<br>
The pleasure of their gentle kiss cancels out a momentary prick as you moan into your gag. "@@.npc_bodyshop_surgeon;And here we go — we'll be pumping you full of growth accelerators to have you big and beautiful in a hurry, enjoy!@@"
<</if>>
<br><br>
You gasp, your nipples tingling with pleasure as your entire breasts seem more sensitive. You bite down on your mouthpiece only for it to dispense a quick few drops of liquid. You can't quite place the flavour but it is quite tasty, and seems to only enhance the pleasure as you sigh in pleasure and feel your breasts swell.<br>
<br>
Embracing the wonderful pleasure as your breasts are sucked, suckled and pumped you find your thoughts floating away as you drift off into happy mindlessness.
<<else>>
You gasp as a pair of suction cups shoot forth to attach over your nipples as
<<if $scene.nurse>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> shakes her head. "@@.npc_bodyshop_nurse;Sorry about this, but, unfortunately, to do a breast reduction at this speed, well... it's less than comfortable. On the upside, this approach does give an almost zero recovery period!@@"
<<else>>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> addresses you with a frown. "@@.npc_bodyshop_surgeon;Breast reduction? Quite the surprise... and, I am afraid to say, a somewhat painful one. This technique can promise results, and a near instantaneous recovery time, but the cost is a bit of momentary discomfort...@@"
<</if>>
<br><br>
You have no further warning before your breasts light up in pain, your nipples are on fire as it feels like someone is crushing your breasts and you whimper through your gag as you watch your magnificent mammaries begin to shrink...<br>
<br>
You hope that the pain will subside, or that you will get used to it, but as your nipples are harshly sucked and your breasts are cruelly squeezed the pain seems to just roll on and on until you surrender into the welcoming arms of unconsciousness.
<</if>>
<br><br>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 300 "<<set $player.body.breastsize[1] = $scene.breast_size>>">>]
</div>/*#
#desc: bodyshop cum choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask if it would be possible to adjust your body's cum production rate?<br>
<br>
"@@.npc_bodyshop_nurse;Certainly... well, to a point. We can't have you violating the laws of physics TOO badly, so no sustained firehose functionality. But otherwise, sure! What were you thinking of?@@"<br>
<br>
<<if $player.body_ref.cumProduction == 0>>
[@@.link_locked;You already produce no cum.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_cum_2" "You would like to stop producing any cum." 300 "<<set $scene.cum_rate=0>>">>]<br>
<</if>>
<<if $player.body_ref.cumProduction == 1>>
[@@.link_locked;You already produce a normal quantity of cum.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_cum_2" "You would like a normal cum production rate." 300 "<<set $scene.cum_rate=1>>">>]<br>
<</if>>
<<if $player.body_ref.cumProduction == 2>>
[@@.link_locked;You already produce buckets of cum.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_cum_2" "You want to cum buckets." 300 "<<set $scene.cum_rate=2>>">>]<br>
<</if>>
<br>
[<<moveTo "room_bodyshop" "You changed your mind about getting anything done today." 300>>]
</div>/*#
#desc: bodyshop cum choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = 50 + 50*$scene.cum_rate>>
<<include "checkBodyshopForced">>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> nods and orders you to expose yourself only to frown at the sight of your <<=setup.getItemTypeName('cage')>>.<br>
<br>
<<include "bodyShopSissyomaticLecture">><br>
<br>
[<<moveTo "room_student_quarter" "Leave." 180>>]
<<else>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> nods. "@@.npc_bodyshop_nurse;That procedure will cost <<=$scene.price>> — who would you like to perform it, myself, or <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>?@@"<br>
<br>
<<if $player.money.total < $scene.price>>
[@@.link_locked;Unfortunately <<=$scene.price>> is more than you can afford.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_cum_3" "You would like the doctor to do things himself." 7200 "<<set $scene.nurse=false>>">>]<br>
[<<moveTo "event_bodyshop_cum_3" "You would prefer the feminine touch of the nurse." 7200 "<<set $scene.nurse=true>>">>]<br>
[<<moveTo "event_bodyshop_cum_4" "You'd rather be unconscious for the whole procedure." 600 "<<set $scene.nurse = $options.fem>><<set $player.body_ref.cumProduction = $scene.cum_rate>>">>]<br>
<</if>>
<br>
[<<moveTo "room_bodyshop" "You changed your mind about getting anything done today." 300>>]
<</if>>
</div>/*#
#desc: bodyshop cum tweak operation
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<include "removeCage_retractSissyomatic">>
<<set $scene.removeCage = true>>
<<set $scene.reduce = $player.body_ref.cumProduction > $scene.cum_rate>>
<<set $player.body_ref.cumProduction = $scene.cum_rate>>
<<switch $scene.cum_rate>>
<<case 0>>
<<playerOrgasm>>
<<case 1>>
<<playerOrgasm>>
<<case 2>>
<<playerOrgasm>>
<<set $player.timebased.milking.cream_supply = 50>>
<<applyExperience 'cum' 18 'terrible' $SEEN_STRANGER>>
<</switch>>
<<if $scene.reduce>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.cum_reduce = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.cum_reduce = true>>
<</if>>
<<else>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.cum_increase = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.cum_increase = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
The nurse instructs you to stand and strip before she
<<if $scene.nurse>>
momentarily disappears from the room, returning pushing a squat, narrow cart with a sort of padded saddle on top.<br>
<br>
"@@.npc_bodyshop_nurse;If you could please stand over this?@@" She states, guiding you to walk over, one leg on either side of the cart before raising the saddle up until you are barely able to stand flat. You wobble slightly until she adds cuffs at your ankle, thigh, and wrists, stabilising you at the same time that you are rendered effectively helpless.<br>
<br>
Kneeling down in front of you she
<<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
retracts the front of your <<=setup.getItemTypeName('cage')>> to expose <<if $player.body>>your testicles<<else>>the smooth area beneath your penis.<</if>> With a smile she
<<else>>
efficiently removes your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>. With a smile she places the device to one side before she
<</if>>
<</if>>
gently <<if $player.body_ref.balls>>guides your testicles into a slot in the top of your "seat," finishing up by<<else>>lifts a thick, padded panel up over your crotch before<</if>> raising the seat slightly higher to have you on your tippy-toes and sliding a large cylinder over your member.<br>
<br>
There is a brief moment of suction as the machine pulls things in and you find yourself getting reflexively hard. "@@.npc_bodyshop_nurse;Lovely, that makes this next bit easier.@@" She states before <<if $fetish.sounding>>sliding a challengingly-thick hollow sound down into<<else>>dialing up the negative pressure sucking away on<</if>> your <<getWordMyPenis false>>.<<if $fetish.sounding>> The rigid rod forces you to stick up and out, filling that narrow passage up completely.<</if>> A clear hose runs from the tip into a machine built into the base of the cart.<br>
<br>
<<switch $scene.cum_rate>>
<<case 0>>
"@@.npc_bodyshop_nurse;Alright, let's drain you clear of all that unwanted cum.@@" She states as she taps on her tablet and you feel a sudden, intent suction <<if $fetish.sounding>>deep inside of<<else>>all around<</if>> your <<getWordMyPenis false>>.<br>
<br>
You gasp, but she doesn't even look up. "@@.npc_bodyshop_nurse;Easy there, my dear. I don't want to have to fetch the gag...@@"<br>
<br>
You bite your lip as the suction continues to drain away all of your unspent cum. As this proceeds you feel a growing warmth
<<if $player.body_ref.balls>>
in your balls.
<<else>>
just below the base of your shaft.
<</if>>
"@@.npc_bodyshop_nurse;Aren't non-surgical techniques amazing? We're literally cooking away your last ability to make sperm... and all you feel is a nice, pleasant warmth! Speaking of pleasant...@@"<br>
<br>
You barely suppress a moan as the <<if $fetish.sounding>>thick urethral plug begins to softly vibrate. Owing to its intimate placement the subtle motions prove startlingly intense as she keeps things up until<<else>>cylinder begins to pulse, rather than the previous sustained suck. This oscillation proves even more intense, and it is not long before<</if>> you have a 100% dry orgasm that leaves you panting at its power.
<<case 1>>
<<if $scene.reduce>>
"@@.npc_bodyshop_nurse;Now to get you back down to normal production.@@" She states as you feel the <<if $fetish.sounding>>urethral tube begin gently sucking away<<else>>suction further intensifying<</if>>. "@@.npc_bodyshop_nurse;First off is to skim off the excess production, then...@@" she taps on her tablet again and you feel a gentle warmth penetrating
<<if $player.body_ref.balls>>
your balls
<<else>>
the area below your shaft
<</if>>
"@@.npc_bodyshop_nurse;... we tune those over-productive things back to a more reasonable rate.@@"
<<else>>
"@@.npc_bodyshop_nurse;Now to get you back up to normal production.@@" She states as you feel the urethral tube begin gently vibrating deep inside of you. "@@.npc_bodyshop_nurse;First off is to wake everything up, then...@@" she taps on her tablet again and you feel a gentle warmth penetrating
<<if $player.body_ref.balls>>
your balls
<<else>>
the area below your shaft
<</if>>
"@@.npc_bodyshop_nurse;... we get them warmed up and out of hibernation.@@"
<</if>>
<br><br>
Tweaking the intensity of stimulation up and down she finally seems satisfied when she grants you an intense, if slightly strange, orgasm, your modest load swiftly sucked away where she confirms the volume with a nod.
<<case 2>>
"@@.npc_bodyshop_nurse;Now to get you cranked up to maximum production...@@" she taps on her tablet and you feel the <<if $fetish.sounding>>rod filling your shaft vibrate intensely<<else>>suction around your <<getWordMyPenis false>> intensify<</if>>. "@@.npc_bodyshop_nurse;That will help gets things start to flowing but we need to turn on the overcharge if you're going to be the cum-blasting super-being you dream of.@@"<br>
<br>
You feel warmth and massaging vibrations running through
<<if $player.body_ref.balls>>
your testicles,
<<else>>
the base of your shaft,
<</if>>
the combination with the internal stimulation quite intense and you gasp in orgasm, watching the large glob slurped up by the machine before the stimulation ramps up another level.<br>
<br>
"@@.npc_bodyshop_nurse;Perfect, nice, healthy production, but now that we've got things started, I bet we can push it a bit more, here this is going to get a bit intense and, well... no sense letting anything go to waste!@@"<br>
<br>
Before you realise what's happening she has shoved something into your mouth, a gag that expands to lock itself in place as you realise that its connected to a tube extending from the <<if $fetish.sounding>>urethral plug<<else>>tip of the cylinder<</if>>...<br>
<br>
Exactly as expected your mouth is suddenly flooded with
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
delicious
<<else>>
wonderful
<</if>>
cum, which you eagerly swallow in anticipation of more.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
bitter
<<else>>
thick, disgusting
<</if>>
which your have no choice but to choke down even as you fear how much more is about to come, <<printThought "pun intended">>.
<</if>>
<br><br>
The vibrating stimulation keeps on as your hips rock and you move from short globs to an almost constant stream of cum, feeling drained, yet also full as the machine forces you to guzzle down every drop.<br>
<br>
Finally, <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> starts to dial back the intensity, leaving you feeling spent, at least for the moment.
<<default>>
ERROR: unexpected scene.cum_rate <<=$scene.cum_rate>>
<</switch>>
<br><br>
"@@.npc_bodyshop_nurse;And there we go!@@" She states before turning everything off<<if $fetish.sounding>> and gently removing the sound<</if>>, your tired <<getWordMyPenis>> going limp<<if $fetish.sounding>> and slowly returning to its normal bore without the intrusion of the hollow rod<</if>>.<br>
<br>
You're still catching your breath by the time she has finished cleaning you off<<if $scene.cage>> and locking you back in your chastity <<if $scene.isCage>>cage<<else>>belt<</if>><</if>>. You wobble just a little as she lowers your seat before lending you a hand to walk back to your pile of clothes.
<<else>>
leaves to fetch the surgeon. He walks into the room pushing a cart, waiting a moment for you to finish undressing before guiding you to stand over it where you soon find yourself restrained — a small saddle providing a makeshift seat with your legs bound at ankle and thigh on either side, your wrists cuffed behind your back.<br>
<br>
<<if $scene.cage != "">>
You feel helpless, though relatively stable, as he
<<if $scene.isSissyomatic>>
retracts the front of your <<=setup.getItemTypeName('cage')>> to expose <<if $player.body>>your testicles<<else>>the smooth area beneath your penis.<</if>>
<<else>>
efficiently removes your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>.
<</if>>
<</if>>
Long, gloved fingers <<if $player.body_ref.balls>>guide your testicles into a slot in the top of your "seat," finishing up by<<else>>lift a thick, padded panel up over your crotch before<</if>> raising the seat slightly higher to have you on your tippy-toes, a long cylinder slid over your member and strapped in place.<br>
<br>
There is a brief moment of suction as the machine pulls things in and you find yourself getting reflexively hard. "@@.npc_bodyshop_surgeon;Nothing pinching?@@" He asks and you nervously shake your head. "@@.npc_bodyshop_surgeon;Excellent, just one final bit of equipment...@@" he continues<<if $fetish.sounding>> before sliding a challengingly-thick hollow sound down into your <<getWordMyPenis false>>. The rigid rod forces you to stick up and out, filling that narrow passage up completely, a clear hose running from the tip into a machine built into the base of the cart<</if>>.<br>
<br>
<<switch $scene.cum_rate>>
<<case 0>>
"@@.npc_bodyshop_surgeon;So, pretty simple procedure, in principle. We drain away whatever semen you have stored up, then shut down the factory. All non-surgically, I might add.@@"<br>
<br>
On the one hand, you should take some comfort that there won't be any knives waving around "down there" but any thoughts are instantly dashed as the<<if $fetish.sounding>> deeply-inserted sound begins sucking and vibrating<<else>>suction intensifies<</if>>, while a warmth spreads through
<<if $player.body_ref.balls>>
your balls.
<<else>>
the area just below the base of your shaft.
<</if>>
<br><br>
"@@.npc_bodyshop_surgeon;The heat is normal — you know how testicles evolved to get some separation from your body-heat? Well, this uses a similar principle to basically turn the whole system off.@@"<br>
<br>
You gasp as he monitors the thin spurts of <<getWordCum>> sucked through the tube protruding from your penis. He turns up the intensity of the stimulation whenever things start to taper off, continuing to ramp up the intensity until you have a 100% dry orgasm that leaves you panting and weak in the knees, only kept vertical by your bondage.
<<case 1>>
"@@.npc_bodyshop_surgeon;Looking forward to getting back to normal?@@" He asks conversationally as the <<if $fetish.sounding>>urethral rod begins vibrating<<else>>suction intensifies<</if>>
<<if $scene.reduce>>
<<if $fetish.sounding>>and sucking away. <</if>>"@@.npc_bodyshop_surgeon;Just a matter of tuning things down, plus skimming off a bit of your excess stores.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Your body instinctually knows what it should be doing, we just need to wake it back up, as it were.@@"
<</if>>
<br><br>
You gasp at the deep, intense stimulation as you feel it oddly augmented by the gentle warmth penetrating
<<if $player.body_ref.balls>>
your balls.
<<else>>
the area below your shaft.
<</if>>
<br><br>
Your restraints are the only thing keeping you standing as you sway and wobble in response to the intense stimulation. Closing your eyes you lose count of your orgasms, only to be left wanting more when you a surprisingly intense climax is followed up by everything shutting off. You open your eyes to see <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> nodding in satisfaction at some inscrutable volume reading.
<<case 2>>
"@@.npc_bodyshop_surgeon;So, pushing your body to the level you're aiming for is... somewhat intense.@@" As if that brief note was sufficient description he takes advantage of your already parted, softly-panting lips to slide something inside. Before you can react the gag has inflated to fill your mouth and lock in place.<br>
<br>
You watch as he screws a tube to the opening of the gag, and then he <<if $fetish.sounding>>activates the vibrating function of your sound<<else>>dials up the intensity of the suction<</if>> and focusing on anything becomes a challenge. Warmth and additional massaging vibrations run through
<<if $player.body_ref.balls>>
your testicles,
<<else>>
the base of your shaft,
<</if>>
and you have your first orgasm, but <<if $fetish.sounding>>between the rigid rod running the length of your member and the increasing stimulation <</if>>you only get harder.<br>
<br>
A moment after your climax you are
<<if setup.getTotalValue("cum") > 10>>
rewarded with the
<<if setup.getTotalValue("cum") > 15>>
delicious
<<else>>
wonderful
<</if>>
taste of your own cum. The wonderful gag deposits the <<getWordCum>> directly onto your tongue so you can savour the flavour before happily gulping it down.
<<else>>
"rewarded" with the
<<if setup.getTotalValue("cum") > 5>>
bitter
<<else>>
thick, disgusting
<</if>>
taste of your own cum. The gag fiendishly designed gag spurts the <<getWordCum>> directly onto your tongue, forcing you to taste it before choking it down.
<</if>>
<br><br>
"@@.npc_bodyshop_surgeon;Plenty more where that came from... no pun intended.@@" He remarks offhandedly, his attention primarily focused on the tablet he is using to control the intensity of your stimulation. Well... less control, more "systematically max out;" <<if $fetish.sounding>>the thick sound buzzing intensely<<else>>the suction pulsing<</if>> as the machine warms and massages your crotch, your rock-hard <<getWordMyPenis false>> going from intermittent spurts to almost a solid stream before he starts tuning things back down.<br>
<br>
"@@.npc_bodyshop_surgeon;And there we go — your production should be right at the limit of what human biology — and modern medicine, can sustain.@@" You are still trying to catch your breath as you <<if setup.getTotalValue("cum") > 10>>savour<<else>>choke down<</if>> the final few drops of <<getWordCum>> that you have been forced to "recycle."
<<default>>
ERROR: unexpected scene.cum_rate <<=$scene.cum_rate>>
<</switch>>
<br><br>
"@@.npc_bodyshop_surgeon;As I said, a simple procedure.@@" He states before gently removing the<<if $fetish.sounding>>sound<<else>>whole apparatus<</if>>, your tired <<getWordMyPenis false>> going limp and slowly returning to its normal bore without the intrusion of the hollow rod.<br>
<br>
You're still catching your breath by the time he has finished cleaning you off<<if $scene.cage>> and locking you back in your chastity <<if $scene.isCage>>cage<<else>>belt<</if>><</if>>. You wobble just a little as your feet are lowered back to the ground and you walk over to your pile of clothes.
<</if>>
<br><br>
[<<moveTo "event_bodyshop_cum_4" "Get dressed and leave." 300>>]
</div>/*#
#desc: bodyshop cum tweak post-op
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.llocation == "event_bodyshop_cum_3">>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png">>
<div id="invframe" class="scrolltext">
<<if $scene.nurse>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>>
<<else>>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>
<</if>>
wheels the cart out of the room while leaving you to finish getting dressed on your own.<br>
<br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
[<<moveTo "room_student_quarter" "Leave the bodyshop." 180>>]
<<else>>
[<<moveTo "room_student_quarter" "Put your clothes back on and go." 180 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: cybernetics choose
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> about getting some cybernetic enhancements to boost your physical abilities.<br>
<br>
She leans conspiratorially close before responding — a position that gives you quite the view down her cleavage. "@@.npc_bodyshop_nurse;So, we can certainly help you in this regard and, while none of what we'll be doing is technically illegal... you should know that it is restricted in most sporting competitions. If you want to compete in the non-augmented leagues, well... you'll have to get there the old fashioned way. Also note that pushing too far beyond your body's existing capabilities can be dangerous, so you'll still want to hit the gym if you want to fully maximise your potential.@@"<br>
<br>
She leans back. "@@.npc_bodyshop_nurse;So, what will it be — greater strength, faster reflexes, or just a bit more stamina? In any case it'll be a 1000 credits cash. This sort of hardware isn't cheap!@@"<br>
<br>
<<if $player.money.total >= 1000>>
<<if setup.hasPermBonus("strength", "cyber")>>
[@@.link_locked;You have already cybernetically boosted your strength.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_cyber_2" "Strength." 600 "<<set $scene.attribute='strength'>>">>]<br>
<</if>>
<<if setup.hasPermBonus("dexterity", "cyber")>>
[@@.link_locked;You have already cybernetically boosted your agility.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_cyber_2" "Dexterity." 600 "<<set $scene.attribute='dexterity'>>">>]<br>
<</if>>
<<if setup.hasPermBonus("stamina", "cyber")>>
[@@.link_locked;You have already cybernetically boosted your constitution.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_cyber_2" "Constitution." 600 "<<set $scene.attribute='stamina'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You cannot afford cybernetic enhancements.@@]<br>
<</if>>
<<if setup.hasPermBonus("strength", "cyber") || setup.hasPermBonus("dexterity", "cyber") || setup.hasPermBonus("stamina", "cyber")>>
[<<moveTo "event_bodyshop_cyber_remove_1" "Ask about removing your existing cybernetics." 600 "<<set $scene.attribute='remove'>>">>]<br>
<</if>>
<br>
[<<moveTo "room_bodyshop" 'Never mind.' 60>>]
</div>/*#
#desc: cybernetics surgery pre-op
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You make your choice and the nurse nods, leading you to the surgery room and lays you back on the gurney.
<<if $scene.attribute == "remove">>
"@@.npc_bodyshop_nurse;So this procedure is actually simpler than the initial install, just a matter of untangling things from your system. Nonetheless, it will require you to be put you all the way under for the duration, if you could lay down?@@"
<<else>>
"@@.npc_bodyshop_nurse;So this procedure is pretty involved to tie into your existing <<switch $scene.attribute>><<case 'strength'>>muscular<<case 'dexterity'>>nervous<<case 'stamina'>>cardiovascular<<default>>ERROR: unexpected scene.attribute <<=$scene.attribute>><</switch>> system, so we'll be putting you all the way under for the duration, if you could lay down?@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_cyber_3" "Lay down." 7200>>]<br>
[<<moveTo "room_bodyshop" "On second thought, you don't want surgery today." 60>>]
</div>/*#
#desc: cybernetics surgery operation
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You lay down on the surgical table and the nurse hooks you up to an IV. By the time the surgeon walks in the door a few minutes later your eyes are drooping and you pass into unconsciousness a short moment after.<br>
<br>
In drugged, dreamless sleep you have no awareness of the surgery, or how long you spend unconscious.<br>
<br>
[<<moveTo "event_bodyshop_cyber_4" "Wake up." 7200>>]
</div>/*#
#desc: cybernetics surgery finish
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.attribute == 'remove'>>
<<addCredits -500>>
<<valueDeletePermBonusByTag 'cyber'>>
<<else>>
<<addCredits -1000>>
<<valueAddPermBonus $scene.attribute 5 'cyber' 'Cybernetic Boost: +5'>>
<<if $scene.attribute == "dexterity">>
<<valueAddPermBonus "heels" 5 'cyber' 'Cybernetic Boost: +5'>>
<</if>>
<</if>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt()>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_1'
0
'event_psychiatrist_session_cybernetics_1'
false
>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You wake up after your surgery and sit up to find a nurse waiting for you.<br>
<br>
With a smile she helps you to your feet where you can immediately
<<switch $scene.attribute>>
<<case 'strength'>>
feel the difference in strength, your entire body feeling easier to move as you walk across the room.
<<case 'dexterity'>>
sense the difference in your balance and reflexes, feeling light and graceful on your feet as you walk across the room
<<case 'stamina'>>
sense a difference in how energetic you feel, your heart-rate surprisingly low as even your rate of breathing seems to have gotten slower to no ill effect.
<<case 'remove'>>
sense the difference, your body feeling both a little sluggish, but also more closely under control as there are no more artificial enhancements anticipating and boosting your movements.
<<default>>
ERROR: unexpected scene.attribute <<=$scene.attribute>>
<</switch>>
<br><br>
She has you walk back and forth and do a few additional physical checks before nodding in satisfaction. "@@.npc_bodyshop_nurse;Looks like things are all working nominally, enjoy your new capabilities!@@"<br>
<br>
[<<moveTo "room_student_quarter" "Thank her and leave." 180>>]
</div>/*#
#desc: remove cybernetics
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask about removing your existing cybernetics and the nurse nods. "@@.npc_bodyshop_nurse;Bit distracting, aren't they? Certainly we can remove your existing enhancements — flat five hundred credits to remove it all.@@"<br>
<br>
<<if $player.money.total >= 500>>
[<<moveTo "event_bodyshop_cyber_2" "Remove your cybernetic enhancements." 300>>]<br>
<<else>>
[@@.link_locked;You cannot afford this procedure.@@]<br>
<</if>>
[<<moveTo "room_bodyshop" "You'd rather keep your boosts." 60>>]
</div>/*#
#desc: bodyshop genitals choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> has you expose yourself only to frown at the sight of your <<=setup.getItemTypeName('cage')>>.<br>
<br>
<<include "bodyShopSissyomaticLecture">><br>
<br>
[<<moveTo "room_student_quarter" "Leave." 180>>]
<<else>>
The nurse sits across from you in a private exam room.<br>
<br>
"@@.npc_bodyshop_nurse;So... what were you thinking of getting done?@@"<br>
<br>
<<if $player.body_ref.vagina>>
<<if !$player.body_ref.penis>>
[<<moveTo "event_bodyshop_genitals_2" 'You would like to swap back to a penis.' 300 "<<set $scene.procedure='penis'>>">>]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like to upgrade to penis AND vagina.' 300 "<<set $scene.procedure='all'>>">>]
<<else>>
[<<moveTo "event_bodyshop_genitals_2" 'You would like to remove your vagina.' 300 "<<set $scene.procedure='remove_cunt'>>">>]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like to remove your penis.' 300 "<<set $scene.procedure='remove_penis'>>">>]<br>
<<include "bodyshopPenisResize">>
<</if>>
<<else>>
[<<moveTo "event_bodyshop_genitals_2" 'You would like to replace your penis with a vagina.' 300 "<<set $scene.procedure='cunt'>>">>]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like to upgrade to penis AND vagina.' 300 "<<set $scene.procedure='all'>>">>]<br>
<<include "bodyshopPenisResize">>
<</if>>
<br><br>
[<<moveTo "room_bodyshop" "On second thought, you'll stay how you are." 60>>]
<</if>>
</div><<switch $player.body.penissize[1]>>
<<case 0 1>>
[@@.link_locked;You currently have a tiny penis.@@]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like an average penis.' 300 "<<set $scene.procedure='average'>>">>]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like a large penis.' 300 "<<set $scene.procedure='large'>>">>]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like an enormous penis.' 300 "<<set $scene.procedure='giant_cock'>>">>]
<<case 2 3>>
[<<moveTo "event_bodyshop_genitals_2" 'You would like a tiny penis.' 300 "<<set $scene.procedure='tiny'>>">>]<br>
[@@.link_locked;You currently have an average penis.@@]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like a large penis.' 300 "<<set $scene.procedure='large'>>">>]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like an enormous penis.' 300 "<<set $scene.procedure='giant_cock'>>">>]
<<case 4 5>>
[<<moveTo "event_bodyshop_genitals_2" 'You would like a tiny penis.' 300 "<<set $scene.procedure='tiny'>>">>]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like an average penis.' 300 "<<set $scene.procedure='average'>>">>]<br>
[@@.link_locked;You currently have a large penis.@@]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like an enormous penis.' 300 "<<set $scene.procedure='giant_cock'>>">>]
<<case 6>>
[<<moveTo "event_bodyshop_genitals_2" 'You would like a tiny penis.' 300 "<<set $scene.procedure='tiny'>>">>]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like an average penis.' 300 "<<set $scene.procedure='average'>>">>]<br>
[<<moveTo "event_bodyshop_genitals_2" 'You would like a large penis.' 300 "<<set $scene.procedure='large'>>">>]<br>
<<if $player.body_ref.knot && $player.body_ref.horsecock>>
[@@.link_locked;You currently have a monstrously huge knotted horse-cock.@@]<br>
<<elseif $player.body_ref.knot>>
[@@.link_locked;You currently have an enormous, knotted cock.@@]<br>
<<elseif $player.body_ref.horsecock>>
[@@.link_locked;You currently have an enormous horse-cock.@@]<br>
<<else>>
[@@.link_locked;You currently have an enormous penis.@@]<br>
<</if>>
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>><<if setup.getChastityLevel() == 5>>
<<if !$currentTasks.hasOwnProperty('task_sissyomatic_steal')>>
<<set $scene.sissyomaticFirst = true>>
<<addTaskById 'task_sissyomatic_steal'>>
<</if>>
<</if>>
<<if $scene.sissyomaticFirst>>
"@@.npc_bodyshop_nurse;Oh, hmm... this is going to be a problem. In general we have the capabilities to safely, and temporarily, remove any manner of chastity device that would be in the way of a procedure but this...@@" She kneels down to examine your device, clearly intrigued "@@.npc_bodyshop_nurse;I had only heard rumours of this being in development... the comfort and security it is supposed to provide... well, it really does sound like a dream. Or a nightmare, I suppose, depending on one's perspective.@@"<br>
<br>
She stands up and steps away, shaking her head. "@@.npc_bodyshop_nurse;Unfortunately with that in place you are completely immune to any sort of direct or large-scale assault, but if we had a copy of the plans... an analysis of the plans could reveal a weakness in the device... Given that the device is still in prototype stage, I would recommend looking in the Research and Development areas of your company, perhaps you could convince someone to give you access to the schematics?@@"
<<else>>
She shakes her head. "@@.npc_bodyshop_nurse;As I told you before, without the schematics for your device we are unable to do any work for you in that area. I would recommend looking in the Research and Development areas of your company, perhaps you could convince someone to give you access to the schematics?@@"
<</if>>
<br><br>
<<printThought "Looks like I have some work to do...">>/*#
#desc: bodyshop genitals pre-op
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = setup.getProcedurePrice($scene.procedure)>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You tell the nurse what you want
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
and she has you expose yourself.<br>
<br>
<<include "bodyShopSissyomaticLecture">><br>
<br>
[<<moveTo "room_student_quarter" "Leave." 180>>]
<<else>>
and she nods.
<<switch $scene.procedure>>
<<case 'tiny'>>
"@@.npc_bodyshop_nurse;Make your penis nice and small and cute, that will be <<=$scene.price>> credits.@@"
<<case 'average'>>
"@@.npc_bodyshop_nurse;Give you a nice, average-sized penis, that will come to <<=$scene.price>> credits.@@"
<<case 'large'>>
"@@.npc_bodyshop_nurse;Give you a nice, large cock, that will come to <<=$scene.price>> credits.@@"
<<case 'giant_cock'>>
"@@.npc_bodyshop_nurse;Upgrade to a truly massive member, that will cost you <<=$scene.price>> credits.@@"
<<case 'penis'>>
"@@.npc_bodyshop_nurse;Replacing your vagina with a penis, a straightforward procedure, that will be <<=$scene.price>>.@@"
<<case 'cunt'>>
"@@.npc_bodyshop_nurse;Remove your penis and replace it with a vagina, that will be <<=$scene.price>> credits.@@"
<<case 'remove_penis'>>
"@@.npc_bodyshop_nurse;To remove your penis completely will cost <<=$scene.price>> credits.@@"
<<case 'remove_cunt'>>
"@@.npc_bodyshop_nurse;To remove your vagina the price would be <<=$scene.price>> credits.@@"
<<case 'all'>>
"@@.npc_bodyshop_nurse;Upgrade to the full<<if $fetish.futanari>> "futa" <<else>> sex demon <</if>>package, penis and vagina, bit complicated, that, it'll come to <<=$scene.price>> credits.@@"
<<default>>
ERROR: unexpected scene.procedure <<=$scene.procedure>>
<</switch>>
She smiles at you with a touch of more-than-professional glee. "@@.npc_bodyshop_nurse;So, if that's what you want, there remains but one additional question — how would you like the procedure performed, by myself, by my partner, <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>, or would you rather be unconscious for the whole thing and just wake up with your new equipment?@@"<br>
<br>
<<if $player.money.total < $scene.price>>
[@@.link_locked;Unfortunately <<=$scene.price>> is more than you can afford.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_pre_op" "You would like the doctor to do things himself." 7200 "<<set $scene.nurse=false>><<addCredits `-$scene.price`>>">>]<br>
[<<moveTo "event_bodyshop_pre_op" "You would prefer the feminine touch of the nurse." 7200 "<<set $scene.nurse=true>><<addCredits `-$scene.price`>>">>]<br>
[<<moveTo "event_bodyshop_pre_op_sleep" "You'd rather be unconscious for the whole procedure." 600 "<<addCredits `-$scene.price`>>">>]<br>
<</if>>
[<<moveTo "event_bodyshop_genitals_1" "Actually, you'd like something else." 300>>]<br>
<br>
[<<moveTo "room_bodyshop" "You changed your mind about getting anything done today." 300>>]
<</if>>
</div>/*#
#desc: bodyshop ears choice
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = 50>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask about making changes to your ears and the nurse smiles. "@@.npc_bodyshop_nurse;Oh, did you hear that we offer that as well?@@" She titters at her forced pun. "@@.npc_bodyshop_nurse;Yes, we have a few options to meet that fantasy... what were you thinking?@@"<br>
<br>
Led to an exam room she has you sit down and then brings out a machine that can only be described as the largest pair of headphones you've ever seen. "@@.npc_bodyshop_nurse;Just put these on it will take care of everything. Note that it's pure aesthetic, no super hearing going on here, so just decide what you like, it's the same flat <<=$scene.price>> credit fee for all of them.@@"<br>
<br>
<<if false>>
<<moveTo "event_bodyshop_ears_2">>
<</if>>
<<set $scene.earreturn="event_bodyshop_ears_2">>
<<include "chooseEars">>
<br>
[<<moveTo "room_bodyshop" 'Nevermind.' 300>>]
</div>/*#
#desc: eyecolor list
#status: FINISHED 0.9.1.0
#*/
<<if $player.ears == 'normal'>>
[@@.link_locked;You presently have normal ears.@@]<br>
<<else>>
[<<moveTo $scene.earreturn 'Normal Ears.' 300 "<<set $player.ears='normal'>>">>]<br>
<</if>>
<<if $player.ears == 'elf_small'>>
[@@.link_locked;You presently have small elfin ears.@@]<br>
<<else>>
[<<moveTo $scene.earreturn 'Small Elfin Ears.' 300 "<<set $player.ears='elf_small'>>">>]<br>
<</if>>
<<if $player.ears == 'elf_large'>>
[@@.link_locked;You presently have large elfin ears.@@]<br>
<<else>>
[<<moveTo $scene.earreturn 'Large Elfin Ears.' 300 "<<set $player.ears='elf_large'>>">>]<br>
<</if>>/*#
#desc: bodyshop ears change
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<if $player.money.total < 50>>
<<setThreshold 'bimbofication' 'spending_money' 'not_much'>>
<<applyExperience 'bimbofication' 3 'insignificant' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You express your preference and the machine squeezes down on either side of your head. "@@.npc_bodyshop_nurse;Perfect, just a moment...@@"<br>
<br>
You feel an odd tingling in your ears as technology works its quasi-magic, and a couple minutes later the nurse removes the earmuffs to reveal your sensitive new
<<switch $player.ears>>
<<case 'normal'>>
cute round ears.
<<case 'elf_small'>>
short, pointed ears.
<<case 'elf_large'>>
long, pointed ears.
<<default>>
ERROR: unexpected player.ears <<=$player.ears>>
<</switch>>
<br><br>
You thank her and she guides you out of the room. "@@.npc_bodyshop_nurse;I hope you enjoy your new ears. They look
<<switch $player.ears>>
<<case 'normal'>>
quite adorable,
<<case 'elf_small'>>
sweet,
<<case 'elf_large'>>
quite regal,
<<default>>
ERROR: unexpected player.ears <<=$player.ears>>
<</switch>> and very cute!@@"<br>
<br>
You thank her and return to the waiting room to pay the fifty credit fee.<br>
<br>
[<<moveTo "room_bodyshop" 'Continue.' 60>>]
</div>/*#
#desc: bodyshop eyes choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = 50>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask about changing your eye colour and the nurse smiles. "@@.npc_bodyshop_nurse;Simplicity! Come with me and we'll get you sorted out.@@"<br>
<br>
Led to an exam room she has you sit down and then brings a machine in front of your face. "@@.npc_bodyshop_nurse;Just stare forward and it will take care of everything — what colour were you wanting? Choose whatever you like, it's the same flat <<=$scene.price>> credit fee for all of them.@@"<br>
<br>
<<set $scene.eyereturn="event_bodyshop_eyes_2">>
<<include "chooseEyecolor">>
<br>
[<<moveTo "room_bodyshop" 'Nevermind.' 300>>]
</div>/*#
#desc: eyecolor list
#status: FINISHED 0.7.12.0
#ignore_spell: golgari
#*/
[<<moveTo $scene.eyereturn 'Green.' 300 "<<set $player.eyecolor='green'>>">>]<br>
[<<moveTo $scene.eyereturn 'Anime Green.' 300 "<<set $player.eyecolor='animegreen'>>">>]<br>
[<<moveTo $scene.eyereturn 'Lime Green.' 300 "<<set $player.eyecolor='limegreen'>>">>]<br>
[<<moveTo $scene.eyereturn 'Sea Green.' 300 "<<set $player.eyecolor='seagreen'>>">>]<br>
[<<moveTo $scene.eyereturn 'Golgari.' 300 "<<set $player.eyecolor='black_green_iris'>>">>]<br>
[<<moveTo $scene.eyereturn 'Red.' 300 "<<set $player.eyecolor='red'>>">>]<br>
[<<moveTo $scene.eyereturn 'Angry Red.' 300 "<<set $player.eyecolor='meanred'>>">>]<br>
[<<moveTo $scene.eyereturn 'Blue.' 300 "<<set $player.eyecolor='blue'>>">>]<br>
[<<moveTo $scene.eyereturn 'Aqua.' 300 "<<set $player.eyecolor='aqua'>>">>]<br>
[<<moveTo $scene.eyereturn 'Byzantium.' 300 "<<set $player.eyecolor='byzantium'>>">>]<br>
[<<moveTo $scene.eyereturn 'Ice Blue.' 300 "<<set $player.eyecolor='iceblue'>>">>]<br>
[<<moveTo $scene.eyereturn 'Deep Blue.' 300 "<<set $player.eyecolor='deepblue'>>">>]<br>
[<<moveTo $scene.eyereturn 'Brown.' 300 "<<set $player.eyecolor='brown'>>">>]<br>
[<<moveTo $scene.eyereturn 'Dark Brown.' 300 "<<set $player.eyecolor='browner'>>">>]<br>
[<<moveTo $scene.eyereturn 'Gold.' 300 "<<set $player.eyecolor='gold'>>">>]<br>
[<<moveTo $scene.eyereturn 'Caramel.' 300 "<<set $player.eyecolor='caramel'>>">>]<br>
[<<moveTo $scene.eyereturn 'Dark.' 300 "<<set $player.eyecolor='dark'>>">>]<br>
[<<moveTo $scene.eyereturn 'Black.' 300 "<<set $player.eyecolor='darker'>>">>]<br>
[<<moveTo $scene.eyereturn 'Pitch Black.' 300 "<<set $player.eyecolor='black'>>">>]<br>
[<<moveTo $scene.eyereturn 'Black Sclera.' 300 "<<set $player.eyecolor='black_sclera'>>">>]<br>
[<<moveTo $scene.eyereturn 'Demon.' 300 "<<set $player.eyecolor='black_red_iris'>>">>]<br>
[<<moveTo $scene.eyereturn 'Grey.' 300 "<<set $player.eyecolor='grey'>>">>]<br>
[<<moveTo $scene.eyereturn 'Light.' 300 "<<set $player.eyecolor='lighter'>>">>]<br>
[<<moveTo $scene.eyereturn 'Monochrome.' 300 "<<set $player.eyecolor='black_white_iris'>>">>]<br>
[<<moveTo $scene.eyereturn 'Pink.' 300 "<<set $player.eyecolor='pink'>>">>]<br>
[<<moveTo $scene.eyereturn 'Violet.' 300 "<<set $player.eyecolor='violet'>>">>]<br>
[<<moveTo $scene.eyereturn 'Zombie.' 300 "<<set $player.eyecolor='zombie'>>">>]<br>/*#
#desc: bodyshop eyecolor change
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<if $player.money.total < 50>>
<<setThreshold 'bimbofication' 'spending_money' 'not_much'>>
<<applyExperience 'bimbofication' 3 'insignificant' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You express your colour preference and the machine against your face seals tight. "@@.npc_bodyshop_nurse;Perfect, just a moment...@@"<br>
<br>
There's a brief flash of light and then its over, the machine pulling away. You blink as the nurse presents you with a mirror and you look upon your new
<<switch $player.eyecolor>>
<<case 'animegreen'>>
anime green
<<case 'black_sclera'>>
black sclera
<<case 'black_green_iris'>>
black and green iris
<<case 'black_white_iris'>>
black and white iris
<<case 'black_red_iris'>>
black and red iris
<<default>>
<<=$player.eyecolor>>
<</switch>>
eyes.<br>
<br>
You thank her and she guides you out of the room. "@@.npc_bodyshop_nurse;I hope you enjoy your new eyes, they look positively
<<switch $player.eyecolor>>
<<case 'green' 'animegreen' 'limegreen' 'violet' 'seagreen'>>
alluring
<<case 'blue' 'aqua' 'deepblue'>>
piercing
<<case 'brown' 'browner'>>
welcoming
<<case 'gold' 'caramel'>>
radiant
<<case 'red' 'meanred' 'black_red_iris'>>
devilish
<<case 'iceblue' 'grey' 'zombie'>>
cold
<<case 'dark' 'darker' 'lighter' 'black' 'black_sclera' 'byzantium' 'black_green_iris' 'black_white_iris'>>
ominous
<<case 'pink'>>
hypnotic
<<default>>
ERROR: unexpected eye-colour <<=$player.eyecolor>>
<</switch>> and very, very beautiful!@@"<br>
<br>
You thank her and return to the waiting room to pay the fifty credit fee.<br>
<br>
[<<moveTo "room_bodyshop" 'Continue.' 60>>]
</div>/*#
#desc: bodyshop genital surgery
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_STRANGER>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.plug = "">>
<<if $scene.cage>>
<<set $scene.chastityLevel = setup.getChastityLevel()>>
<<set $scene.isCage = setup.isCage()>>
<<removeItem $scene.cage true>>
<<set $scene.removeCage = true>>
<<if $scene.chastityLevel != 5>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<else>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<changeHorny 100>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
You make your selection and
<<if $scene.only_nurse>>
the <<if $scene.nurse>>nurse<<else>>surgeon<</if>> gets ready for the procedure.
<<else>>
<<if $scene.nurse>>
the surgeon
<<else>>
the nurse
<</if>>
steps away out of view.
<</if>>
<br><br>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case 'neutral'>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Alright my dear, let's get to it, we'll have you fixed up before you know it... and with a bit of fun along the way!@@"
<<else>>
"@@.npc_bodyshop_surgeon;Alright, let's get started — my recommendation is to just enjoy the proceedings.@@"
<</if>>
<<case 'encourage'>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Alright, <<switch $player.identify_as>><<case "female" "">>you brave girl<<case "male">>you brave boy<<case "fluid" "agender">>it's time to be brave<</switch>>. What we're about to do is going to be intense, but in a fun way. But I know you can handle it, and at the end, well... you're going to be so happy!@@"
<<else>>
"@@.npc_bodyshop_surgeon;Alright, let us get started. I know you're nervous but in a few more minutes that will all be put aside, just lay back and enjoy the transformation into your dream.@@"
<</if>>
<<case 'force' 'hard_force'>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Alright, you silly <<switch $player.identify_as>><<case "female" "">>girl<<case "male">>boy<<case "fluid" "agender">>thing<</switch>>... it's time to make you what you were always meant to be. No more resisting, no more hiding, just you getting the bits of your dreams... and I promise these final few steps of the journey there will be an interesting one.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Alright, you stubborn <<switch $player.identify_as>><<case "female" "">>girl<<case "male">>boy<<case "fluid" "agender">>thing<</switch>>. You've dodged your destiny enough, now it's time to make you what you were meant to be... you're already strapped in, so let's get started. I'd say you should try to relax, but before long that will be far from possible.@@"
<</if>>
<<default>>
ERROR: unexpected npc_bodyshop_nurse.flags.assessment.style <<=$npc_bodyshop_nurse.flags.assessment.style>>
<</switch>>
<br><br>
<<if $scene.cage != "">>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;So the first thing is to get access to the region@@" she explains as she moves between your legs and addresses your chastity device.
<<if $scene.chastityLevel == 5>>
"@@.npc_bodyshop_nurse;Owned by the corporation... quite the fate... well I'm not sure how you are going to address this back at work, but fortunately for you we know how to temporarily remove it...@@" She produces a remote and a moment later you gasp, the <<=setup.getItemName($scene.cage)>> releasing its constant grip. Efficiently she <<if $fetish.sounding>>un-threads the urethral plug and removes the rest,<<else>>removes the chastity device<</if>> leaving you free and empty for the first time in a long time.
<<elseif $scene.chastityLevel == 4>>
"@@.npc_bodyshop_nurse;My my, you are really on the cutting edge, these are barely available to the public... fortunately for you we stay on top of these things, just need to input the emergency medical override and...@@" *CLICK* your <<if $scene.isCage>>chastity cage falls away<<else>>chastity belt unlocks and is removed<</if>>.
<<elseif $scene.chastityLevel == 3>>
"@@.npc_bodyshop_nurse;Hmm, an off the shelf model, on paper they're supposed to be the height of security but...@@" She pulls out a digital device and a moment later is rewarded with a *CLICK* as your <<if $scene.isCage>>chastity cage falls away<<else>>chastity belt unlocks and is removed<</if>>. "@@.npc_bodyshop_nurse;Medical override... I suppose some would call that defeating the purpose but it's that or cut it off...@@"
<<else>>
"@@.npc_bodyshop_nurse;Hmm, an off the shelf model, well this should be no trouble at all...@@" She pulls out a set of picks and less than a minute later is rewarded with a *CLICK* as your <<if $scene.isCage>>chastity cage falls away<<else>>chastity belt unlocks and is removed<</if>>.
<</if>>
<<if $scene.plug != "">>
"@@.npc_bodyshop_nurse;And now for this...@@" She continues, grabbing firm hold of your plug and pulling it from your rear. "@@.npc_bodyshop_nurse;There we go — now we can get to work.@@"
<</if>>
<<else>>
"@@.npc_bodyshop_surgeon;So, obviously, we'll be needing access to things...@@" he explains as he moves between your legs and addresses your chastity device.
<<if $scene.chastityLevel == 5>>
"@@.npc_bodyshop_surgeon;Owned by the corporation... quite the fate... well I'm not sure how you are going to address this back at work, but fortunately for you we know how to temporarily remove it...@@" He produces a remote and a moment later you gasp, the <<=setup.getItemName($scene.cage)>> releasing its constant grip. Efficiently he <<if $fetish.sounding>>un-threads the urethral plug and removes the rest,<<else>>removes the chastity device<</if>> leaving you free and empty for the first time in a long time.
<<elseif $scene.chastityLevel == 4>>
"@@.npc_bodyshop_surgeon;My my, you are really on the cutting edge of chastity, these are barely available to the public... fortunately for you we stay on top of these things, just need to input the emergency medical override and...@@" *CLICK* your <<if $scene.isCage>>chastity cage falls away<<else>>chastity belt unlocks and is removed<</if>>.
<<else>>
"@@.npc_bodyshop_surgeon;Hmm, an off the shelf model, well this should be no trouble at all...@@" He pulls out a set of picks, nimble fingers working carefully and less than a minute later there is a *CLICK* as your <<if $scene.isCage>>chastity cage falls away<<else>>chastity belt unlocks and is removed<</if>>.
<</if>>
<<if $scene.plug != "">>
"@@.npc_bodyshop_surgeon;And now for this...@@" He continues, grabbing firm hold of your plug and pulling it from your rear. "@@.npc_bodyshop_surgeon;There we go — nice and clear and ready to get to work.@@"
<</if>>
<</if>>
<br><br>
<<elseif $scene.plug != "">>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Just need to get this out of the way,@@" she explains as she grabs firm hold of your plug and pulls it from your rear. "@@.npc_bodyshop_nurse;There we go — nice and clear and ready to get to work.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Just need to get this out of the way,@@" he explains as he grabs firm hold of your plug and pulls it from your rear. "@@.npc_bodyshop_surgeon;There we go — nice and clear and ready to get to work.@@"
<</if>>
<br><br>
<</if>>
<<switch $scene.procedure>>
<<case 'tiny'>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;So, per your request your desire is to have a nice petite penis...@@"<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Gloved hands gently inspect you already tiny member. "@@.npc_bodyshop_nurse;Hmm, yes, a good start, but I think we can make some improvements to make it a perfect dainty point of sweet, <<if $fetish.sissy>>sissy<<else>>girlish<</if>> pride...@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a small-sized cylinder before working it down over your cock.
<<case 2 3>>
Her gloved fingers gently inspects your member. "@@.npc_bodyshop_nurse;Hmm, yes, why be average when you can be smaller and cuter? Let's get to work...@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a medium-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 4 5>>
Her gloved fingers casually wrap around your member. "@@.npc_bodyshop_nurse;A respectable creature, but we shall tame it, yes we will.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a large-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 6>>
Her gloved hands look small compared to your massive member, dainty fingers stroking until it is at full hardness. "@@.npc_bodyshop_nurse;My my, I can see how this could be... unwieldy. But science can tame the mightiest beast...@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a giant cylinder before working it down over your <<getWordMyPenis>>.
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
"@@.npc_bodyshop_surgeon;So, per your request your desire is to have a nice petite penis...@@"<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Gloved hands gently inspect you already tiny member. "@@.npc_bodyshop_surgeon;Hmm, it looks like you have been working on this already... A decent job, but my methods will result in afar superior final instrument...@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a small cylinder before working it down over your <<getWordMyPenis>>.
<<case 2 3>>
His gloved fingers gently inspects your member. "@@.npc_bodyshop_surgeon;Hmm, I wonder if you realise that you are actually quite average... so many falsely believe themselves to be undersized and then lean into it... no matter, you have set your sights on being small and cute, and that is what we shall do.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a medium-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 4 5>>
His gloved fingers casually wrap around your member. "@@.npc_bodyshop_surgeon;A respectable creature, but nothing that cannot be... handled.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a large cylinder before working it down over your <<getWordMyPenis>>.
<<case 6>>
Even his long, slender hands look small compared to your massive member as he gives it a few strokes until it is risen to its full power. "@@.npc_bodyshop_surgeon;Such an impressive specimen, I shall quite enjoy the challenge of taming such a beast...@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a giant cylinder before working it down over your <<getWordMyPenis>>.
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
You gasp as an inner lining pulls in tight around you, squeezing your base snug and hugging the rest of your length. Additional supports are attached to your chair to cradle and support the cylinder, with a thick tube connecting it to the machine.<br>
<br>
<<if $player.body.penissize[0] > 1>>
[<<moveTo "event_bodyshop_genital_surgery_penis_drain" "Continue." 3600>>]
<<else>>
[<<moveTo "event_bodyshop_genital_surgery_penis_sensitise" "Continue." 3600>>]
<</if>>
<<case 'average'>>
<<if $scene.nurse>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Gloved hands gently inspect you tiny member. "@@.npc_bodyshop_nurse;Hmm, this poor fellow is looking a bit sad, but we'll get him perked back up in no time.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a small-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 2 3>>
Her gloved fingers gently inspects your member. "@@.npc_bodyshop_nurse;Hmm, about the right size, but the tissue has definitely seen some damage... did you try to use drugs to grow it? Tsk, tsk, that is very unhealthy, and hardly effective. Let's get this lovely thing rejuvenated back to its proper glory.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a medium-sized cylinder before working it down over your <<getWordMyPenis>>.<br>
<<case 4 5>>
Her gloved fingers casually wrap around your member. "@@.npc_bodyshop_nurse;A respectable creature, but we can get it down to a more normal, less intimidating size.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a large-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 6>>
Her gloved hands look small compared to your massive member, dainty fingers stroking until it is at full hardness. "@@.npc_bodyshop_nurse;My my, I can see how this could be... unwieldy. But we can get it under control.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a giant cylinder before working it down over your <<getWordMyPenis>>.
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
"@@.npc_bodyshop_surgeon;So, your desire is to have a nice normal penis...@@"
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Gloved hands gently inspect you tiny member. "@@.npc_bodyshop_surgeon;Hmm, this poor fellow is looking a bit sad and abused, but we'll get him perked back up in no time.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a small-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 2 3>>
His gloved fingers gently inspects your member. "@@.npc_bodyshop_surgeon;Hmm, about the right size, but the tissue has definitely seen some damage... did you try to use drugs to grow it? Tsk, tsk, those are very unhealthy, and quite ineffective, as I am sure you now know. Let's get this lovely thing rejuvenated back to its proper glory.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a medium-sized cylinder before working it down over your <<getWordMyPenis>>.<br>
<<case 4 5>>
His gloved fingers casually wrap around your member. "@@.npc_bodyshop_surgeon;A respectable creature, but we can get it down to a more normal, less intimidating size.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a large-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 6>>
Even his long, slender hands look small compared to your massive member as he gives it a few strokes until it is risen to its full power. "@@.npc_bodyshop_surgeon;My my, I can see how this could be... unwieldy. But we can get it under control.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a giant cylinder before working it down over your <<getWordMyPenis>>.
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
You gasp as an inner lining pulls in tight around you, squeezing your base snug and hugging the rest of your length. Additional supports are attached to your chair to cradle and support the cylinder, with a thick tube connecting it to the machine.<br>
<br>
<<if $player.body.penissize[0] > 3>>
[<<moveTo "event_bodyshop_genital_surgery_penis_drain" "Continue." 3600>>]
<<elseif $player.body.penissize[0] < 2>>
[<<moveTo "event_bodyshop_genital_surgery_penis_grow" "Continue." 3600>>]
<<else>>
[<<moveTo "event_bodyshop_genital_surgery_penis_sensitise" "Continue." 3600>>]
<</if>>
<<case 'large'>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;A big, beautiful cock, coming right up! Oh you are going to make all the other boys and girls jealous...@@"
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Gloved hands gently inspect you tiny member. "@@.npc_bodyshop_nurse;Hmm, this poor fellow is looking a bit sad... definitely some major work to be done, but we are up to the challenge!@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a small-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 2 3>>
Her gloved fingers gently inspects your member. "@@.npc_bodyshop_nurse;Hmm, I guess you decided you don't want to be average? And it looks like you've already tried to increase the size... those online drugs are a scam, but I suppose you know that by now. Never mind, we are the real deal and will give you the mouth-wateringly big, juicy cock that dreams are made of.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a medium-sized cylinder before working it down over your <<getWordMyPenis>>.<br>
<<case 4 5>>
Her gloved fingers casually wrap around your member. "@@.npc_bodyshop_nurse;Hmm, really not a whole lot to change, but we can give you a spot of rejuvenation, make sure it is in tip-top working order.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a large-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 6>>
Her gloved hands look small compared to your massive member, dainty fingers stroking until it is at full hardness. "@@.npc_bodyshop_nurse;Hmm, I guess you learned the lesson that bigger isn't always better... certainly this looks impressive, but how many can properly appreciate it plunging into them? Far too few, alas.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a large-sized cylinder before working it down over your <<getWordMyPenis>>.
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
"@@.npc_bodyshop_surgeon;So, your desire is to have a nice large cock...@@"
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Gloved hands gently inspect you tiny member. "@@.npc_bodyshop_surgeon;Hmm, this poor fellow is looking a bit sad and abused... we'll have to do quite a bit of building up to get to where you want to be, but we have the technology!@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a small-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 2 3>>
His gloved fingers gently inspects your member. "@@.npc_bodyshop_surgeon;Hmm, looks like this poor thing has seen some abuse... online boner pills, if I don't miss my guess. So destructive and useless, but you know that by now, I suppose...@@" He chuckles as you reflect back at how this whole thing started. "@@.npc_bodyshop_surgeon;Don't you worry. Our procedure is 100% success guaranteed, you'll soon have the big, swinging dick you always dreamed of!@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a medium-sized cylinder before working it down over your <<getWordMyPenis>>.<br>
<<case 4 5>>
His gloved fingers casually wrap around your member. "@@.npc_bodyshop_surgeon;Hmm, really not a whole lot to change, but we can give you a spot of rejuvenation, perk up your pants python.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a large-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 6>>
Even his long, slender hands look small compared to your massive member as he gives it a few strokes until it is risen to its full power. "@@.npc_bodyshop_surgeon;Realised that there is such a thing as too big, hmm? Trust me, I see it all the time, a guy or gal comes in wanting the proverbial third leg... only to realise how few partners they can find ready to manage their new monster. An alluring profile, but not TOO large, that's the sweet spot, and we'll have you there soon!@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a giant cylinder before working it down over your <<getWordMyPenis>>.
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
You gasp as an inner lining pulls in tight around you, squeezing your base tight and hugging the rest of your length. Additional supports are attached to your chair to cradle and support the cylinder, with a thick tube connecting it to the machine.<br>
<br>
<<if $player.body.penissize[0] > 5>>
[<<moveTo "event_bodyshop_genital_surgery_penis_drain" "Continue." 3600>>]
<<else>>
[<<moveTo "event_bodyshop_genital_surgery_penis_grow" "Continue." 3600>>]
<</if>>
<<case 'giant_cock'>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;So, per your request your desire is to have a massive member...@@"
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Gloved hands gently inspect you tiny member. "@@.npc_bodyshop_nurse;Hmm, this poor fellow is looking a bit sad... we'll need to do quite a bit of work for what you want, but we are up to the challenge!@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a small-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 2 3>>
Her gloved fingers gently inspects your member. "@@.npc_bodyshop_nurse;Hmm, I guess you decided you don't want to be average? And it looks like you've already tried to increase the size... those online drugs are a scam, but I suppose you know that by now. Never mind, we are the real deal and if you want a monster between your legs well... we will grow you a monster.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a medium-sized cylinder before working it down over your <<getWordMyPenis>>.<br>
<<case 4 5>>
Her gloved fingers casually wrap around your member. "@@.npc_bodyshop_nurse;A respectable creature, but if you want a monster... well... we can oblige.@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a large-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 6>>
She smiles in amusement as her gloved hand caresses your massive member. "@@.npc_bodyshop_nurse;Well you said you wanted a monster... and you already have one! Still, we can always do a bit of tissue refresh, the bigger they are... the more maintenance they require, hmm?@@"<br>
<br>
She turns to the machine next to you, pouring some lube into a massive clear cylinder before working it down over your <<getWordMyPenis>>.
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
"@@.npc_bodyshop_surgeon;So, your desire is to have a monster cock...@@"
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Gloved hands gently inspect you tiny member. "@@.npc_bodyshop_surgeon;Hmm, this poor fellow is looking a bit sad and abused... quite a challenging starting point, but all it means is a bit more time to reach perfection.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a small-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 2 3>>
His gloved fingers gently inspects your member. "@@.npc_bodyshop_surgeon;Hmm, looks like this poor thing has seen some abuse... online boner pills, if I don't miss my guess. So destructive and useless, but you know that by now, I suppose...@@" He chuckles as you reflect back at how this whole thing started. "@@.npc_bodyshop_surgeon;Don't you worry. Our procedure is 100% success guaranteed, you'll soon be the monster you always wanted to be!@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a medium-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 4 5>>
His gloved fingers casually wrap around your member. "@@.npc_bodyshop_surgeon;A respectable creature, but you want massive so... let's do massive.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a large-sized cylinder before working it down over your <<getWordMyPenis>>.
<<case 6>>
His gloved hand stretches around your thick <<getWordMyPenis>>. "@@.npc_bodyshop_surgeon;Well you said you wanted a monster... and a monster you have, indeed. Still, we can always do a bit of a refresh, make sure that thing is in perfect working order.@@"<br>
<br>
He turns to the machine next to you, pouring some lube into a massive clear cylinder before working it down over your <<getWordMyPenis>>.
<<default>>
ERROR: unexpected player penis size <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
You gasp as an inner lining pulls in tight around you, squeezing your base snug and hugging the rest of your length. Additional supports are attached to your chair to cradle and support the cylinder, with a thick tube connecting it to the machine.<br>
<br>
[<<moveTo "event_bodyshop_genital_surgery_penis_grow" "Continue." 3600>>]
<<case 'noballs'>>
<<if $scene.nurse>>
The nurse smiles as she gently lifts your balls with one hand "@@.npc_bodyshop_nurse;Hmm, yes, time to get rid of these naughty things... the question is, how do you want to send them off? With a bang... or with a sigh? Grunt if you want to aggressively purge these naughty things, and sigh if you want to give them a more gentle send-off.@@"
<<else>>
The surgeon gently holds your penis out of the way as he inspects your balls "@@.npc_bodyshop_surgeon;So, to get rid of these naughty things... the question is, how do you want to send them off? With a bang... or with a sigh? Grunt if you want to aggressively purge these naughty things, and sigh if you want to give them a more gentle send-off.@@"
<</if>>
<br><br>
<<printThought "Bang? That sounds painful...">><br>
<br>
[<<moveTo "event_bodyshop_genital_surgery_balls_pop_1" "With a bang." 1800>>] <<hint $options "This will result in CBT (Cock & Ball Torture)">><br>
[<<moveTo "event_bodyshop_genital_surgery_balls_soft_1" "With a sigh." 1800>>]
<<case 'balls'>>
<<if $scene.nurse>>
The nurse smiles as she strokes your smooth taint. "@@.npc_bodyshop_nurse;Decided you liked the dangly bits after all? Well let's help you sack up...@@"
<<else>>
The surgeon holds your penis out of the way to inspect your smooth taint "@@.npc_bodyshop_surgeon;So, installing a fresh set of balls, nice and simple...@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_genital_surgery_balls_add" "Continue." 3600>>]
<<case 'keep'>>
<<if $scene.nurse>>
The nurse smiles. "@@.npc_bodyshop_nurse;No change, hmm? Well that's no reason we can't give <<if $player.body_ref.penis && $player.identify_as=="male">>the old boy<<else>>things<</if>> a bit of a refresher, hmm?@@"
<<else>>
The surgeon looks at your chart and then back down at you. "@@.npc_bodyshop_surgeon;All this work for no change... well, we've got you hooked up we can give things a refresher, make sure it's all working in tip-top condition.@@"
<</if>>
<br><br>
A cream is rubbed
<<if $player.body_ref.penis>>
onto your <<getWordMyPenis>> that causes it to stiffen before a cylinder is brought over your shaft
<<else>>
between your legs that as you dripping and swelling with arousal as a shaped cup is placed over your privates
<</if>>
and the rod in your rear begins thrusting. You moan at the pleasure emanating from your bits, as the
<<if $scene.nurse>>
nurse smiles down. "@@.npc_bodyshop_nurse;Just think of it as a rejuvenating massage, healing up any damage and refreshing the blood vessels to have you in peak working order...<<if $player.body_ref.penis && $player.body_ref.cumProduction != $npc_bodyshop_nurse.flags.assessment.cum>> oh, and <<if $npc_bodyshop_nurse.flags.assessment.cum == 2>>adjust your cum production to maximum capacity<<else>>eliminate that messy cum production<</if>>...<</if>>@@"
<<else>>
surgeon smiles down. "@@.npc_bodyshop_surgeon;Just think of it as a rejuvenating massage, healing up any damage and refreshing the blood vessels to have you in peak working order...<<if $player.body_ref.penis && $player.body_ref.cumProduction != $npc_bodyshop_nurse.flags.assessment.cum>> oh, and <<if $npc_bodyshop_nurse.flags.assessment.cum == 2>>adjust your cum production to maximum capacity<<else>>eliminate that messy cum production<</if>>...<</if>>@@"
<</if>>
<br><br>
The pleasure intensifies and you cum for what you're pretty sure is only going to be the first time...<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "You pass out from the pleasure." 1800>>]
<<case 'penis'>>
<<if $scene.nurse>>
The nurse smiles. "@@.npc_bodyshop_nurse;Decided you missed your rod of power, after all? Well let's get to it then and replace this hole with a pole. Note that you'll have a nice normal sized member at the end of this, if you decide you want something else, well... that's no problem, but it would be another procedure.@@"
<<else>>
The surgeon looks down at you. "@@.npc_bodyshop_surgeon;Changed your mind about the switch-up? Well, fortunately our procedures are reversible with no lasting harm. Note that if you decide you'd like a member of a different size that's another procedure, just come on back and we can take care of whatever you want.@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_genital_surgery_vag_remove" "Continue." 3600>>]
<<case 'cunt' 'remove_penis'>>
<<if $scene.nurse>>
<<if $player.body_ref.penis>>
<<if $scene.procedure == 'remove_penis'>>
The nurse smiles. "@@.npc_bodyshop_nurse;Decided doubling up was a bit much? Understandable, well let's get that floppy thing gone and you back to just a sleek, sexy vagina!@@"
<<else>>
"@@.npc_bodyshop_nurse;So, you're ready to abandon your member completely... well we shall give it such a goodbye...@@"
<</if>>
<br><br>
She turns to the machine next to her to retrieve a cylinder just barely larger than your member, gently working it down over you before pressing a button that has it suck into place.
<<elseif $fetish.penis_remove && ($player.sec_style.body.vagina == "strict" || $player.sec_style.body.penis_remove == "strict") && $npc_bodyshop_nurse.flags.assessment.genitals != "cunt">>
The nurse frowns. "@@.npc_bodyshop_nurse;I know you had other preferences... but, unfortunately, the work you had done previously is quite irreversible. Still, we can do a little bit of additional work to make sure your <<getWordVagina>> is in peak working order. Not that anything appears wrong but... well, we here insist on the HIGHEST standards for our patients.@@"
<<else>>
The nurse smiles. "@@.npc_bodyshop_nurse;We're just going to do a little bit of additional work to make sure your <<getWordVagina>> is in peak working order. Not that anything appears wrong but... well, we here insist on the HIGHEST standards for our patients.@@"
<</if>>
<<else>>
<<if $player.body_ref.penis>>
<<if $scene.procedure == 'remove_penis'>>
The surgeon looks down at you. "@@.npc_bodyshop_surgeon;Decided against the tallywhacker? And after we put in so much work to wire everything up down there... no matter, the patient is always right, let's get to it.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Get ready to say goodbye to this lovely thing, no more external genitals for you! Nope, when we're done all you'll have is a nice sweet cunny...@@"
<</if>>
<br><br>
He turns to the machine next to her to retrieve a cylinder just barely larger than your member, gently working it down over you before pressing a button that has it suck into place.
<<elseif $fetish.penis_remove && ($player.sec_style.body.vagina == "strict" || $player.sec_style.body.penis_remove == "strict") && $npc_bodyshop_nurse.flags.assessment.genitals != "cunt">>
The surgeon shakes his head. "@@.npc_bodyshop_surgeon;I understand you had other preferences... but, unfortunately, the work you had done previously is quite irreversible. Still, we can do a little bit of additional work to make sure your <<getWordVagina>> is in peak working order. Not that anything appears wrong but... well, we here insist on the HIGHEST standards for our patients.@@"
<<else>>
The surgeon looks down at you. "@@.npc_bodyshop_surgeon;We're just going to do a little bit of additional work to make sure your <<getWordVagina>> is in peak working order. Not that anything appears wrong but... well, we here insist on the HIGHEST standards for our patients.@@"
<</if>>
<</if>>
<<if $player.body_ref.penis>>
You gasp as an inner lining pulls in tight around you, squeezing your base snug and hugging the rest of your length. Additional supports are attached to your chair to cradle and support the cylinder, with a thick tube connecting it to the machine.<br>
<br>
<<if $player.body_ref.balls>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Now that THAT'S temporarily out of the way, we need to start out by taking care of these things...@@" She gently caresses your sensitive, and vulnerable, testicles. "@@.npc_bodyshop_nurse;So, how would you like to see them off... with a sigh, or with a bang? Grunt if you want to aggressively purge these naughty things, and sigh if you want to give them a more gentle send-off.@@"
<<else>>
"@@.npc_bodyshop_surgeon;So the first step is an orchiectomy — removal of your testicles. A simple procedure, but such an auspicious one to kick things off... would you prefer to bid them farewell with a sigh, or a bang? Grunt if you want to aggressively purge these naughty things, and sigh if you want to give them a more gentle send-off.@@"
<</if>>
<br><br>
<<printThought "Bang? That sounds painful...">><br>
<br>
[<<moveTo "event_bodyshop_genital_surgery_balls_pop_1" "With a bang." 1800>>] <<hint $options "This will result in CBT (Cock & Ball Torture)">><br>
[<<moveTo "event_bodyshop_genital_surgery_balls_soft_1" "With a sigh." 1800>>]
<<else>>
[<<moveTo "event_bodyshop_genital_surgery_penis_drain" "Continue." 3600>>]
<</if>>
<<else>>
You gasp as a large suction device is placed over your groin, complete with a smooth inner rod that softly dilates for several minutes. As it pumps away you start to feel light headed, the <<if $scene.nurse>>nurse<<else>>surgeon<</if>> smiling gently as you slip into lusty unconsciousness.<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
<</if>>
<<case 'remove_cunt'>>
<<if $scene.nurse>>
The nurse smiles. "@@.npc_bodyshop_nurse;Cunny too much for you to handle? Very well, we pave over that hole and leave you with just the pole...@@"
<<else>>
The surgeon looks down at you. "@@.npc_bodyshop_surgeon;Decided against the vagina? And after we put in so much work to wire everything up down there... no matter, the patient is always right, let's get to it.@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_genital_surgery_vag_remove" "Continue." 3600>>]
<<case 'all'>>
<<if $player.body_ref.vagina>>
<<if $scene.nurse>>
The nurse smiles. "@@.npc_bodyshop_nurse;So, after sampling both options you've decided you "want it all," hmm? What fun, I hope you're ready for it! Having cock and cunt can be... quite intense!@@"<br>
<br>
She smiles as she
<<else>>
The surgeon looks down at you. "@@.npc_bodyshop_surgeon;So, aspiring sex demon, are we? Good for you we have the expertise to do that sort of thing without any loss of pleasure. I'll confess that this is one of my favourite procedures to perform, it's always so interesting!@@"<br>
<br>
He
<</if>>
pulls out a pair of smooth plugs, coating the first with lube and sliding it deep into your ass, then repeating with the other in your front hole. As if being double-penetrated wasn't enough the two plugs begin to swell, each growing inside until your body groans with fullness.
<<else>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Now here's the challenging procedure, keep the penis, but add on. Very delicate to do all of that and not sacrifice sensitivity, but we are experts and you are going to LOVE your dual equipment, I promise.@@"<br>
<br>
She turns to the machine beside her to retrieve a cylinder just barely larger than your member, gently working it down over you before pressing a button that has it suck into place. You gasp as an inner lining pulls in tight around your member, squeezing your base snug and hugging the rest of your length. Additional supports are attached to your chair to cradle and support the cylinder, with a thick tube connecting it to the machine.<br>
<br>
<<if $player.body_ref.balls>>
"@@.npc_bodyshop_nurse;And now to keep these out of the way...@@" she adds, gently cupping your balls before greasing them up and sliding them into chambers of their own, pulled up and away as your legs are spread even wider to further exposed your helplessness.
<</if>>
<<else>>
"@@.npc_bodyshop_surgeon;Now here's the challenging procedure, keep the penis, but add on. Very tricky to do all of that and not sacrifice sensitivity, but we employ the most advanced patent-pending techniques and you are going to just love the results...@@"<br>
<br>
He turns to the machine beside him to retrieve a cylinder just barely larger than your member, gently working it down over you before pressing a button that has it suck into place. You gasp as an inner lining pulls in tight around you, squeezing your base snug and hugging the rest of your length. Additional supports are attached to your chair to cradle and support the cylinder, with a thick tube connecting it to the machine.<br>
<br>
<<if $player.body_ref.balls>>
"@@.npc_bodyshop_surgeon;And we cannot forget about these...@@" he adds, gently cupping your balls before greasing them up and sliding them into chambers of their own, pulled up and away as your legs are spread even wider to further exposed your helplessness.
<</if>>
<</if>>
<</if>>
<br><br>
<<if $player.body_ref.vagina>>
[<<moveTo "event_bodyshop_genital_surgery_penis_add" "Continue." 3600>>]
<<else>>
[<<moveTo "event_bodyshop_genital_surgery_vag_add" "Continue." 1800>>]
<</if>>
<<default>>
ERROR: unexpected npc_bodyshop_nurse.flags.assessment.genitals <<=$npc_bodyshop_nurse.flags.assessment.genitals>>
<</switch>>
</div>/*#
#desc: wake up with new body
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<<if !["breast_grow", "breast_shrink"].includes($scene.procedure)>>
<<set $player.timebased.horny = 0>>
<</if>>
<<if ["remove_penis", "tiny", "average", "large"].includes($scene.procedure)>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<</if>>
<<switch $scene.procedure>>
<<case "penis">>
<<set $player.body_ref.vagina = false>>
<<set $player.body_ref.penis = true>>
<<set $player.body.penissize[1] = 3>>
<<set $player.body_ref.balls = true>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<case "all">>
<<if !$player.body_ref.penis>>
<<set $player.body.penissize[1] = 3>>
<<set $player.body_ref.penis = true>>
<</if>>
<<set $player.body_ref.vagina = true>>
<<if !$player.sec_style.body.vagina>>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case "force" "hard_force">>
<<set $player.sec_style.body.vagina = "forced">>
<<case "neutral" "encourage">>
<<set $player.sec_style.body.vagina = "voluntary">>
<</switch>>
<</if>>
<<set $player.flags.chastity_style = "belt">>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<case "remove_cunt">>
<<set $player.body_ref.vagina = false>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<case "remove_penis">>
<<set $player.body.penissize[1] = 0>>
<<set $player.body_ref.penis = false>>
<<if !$player.sec_style.body.penis_remove>>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case "force" "hard_force">>
<<set $player.sec_style.body.penis_remove = "forced">>
<<case "neutral" "encourage">>
<<set $player.sec_style.body.penis_remove = "voluntary">>
<</switch>>
<</if>>
<<set $player.body_ref.balls = false>>
<<if $player.sec_style.body.hormones>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<set $player.flags.chastity_style = "belt">>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<if setup.isItemTypeEquipped('penis_piercing')>>
<<set _penisPierce = setup.getItemFromType('penis_piercing')>>
<<removeItem _penisPierce true>>
<</if>>
<<if setup.isItemTypeEquipped("cage") && setup.isCage()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.removeCage = true>>
<<set $scene.isCage = true>>
<</if>>
<<case "cunt">>
<<set $player.body_ref.vagina = true>>
<<if !$player.sec_style.body.vagina>>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case "force" "hard_force">>
<<set $player.sec_style.body.vagina = "forced">>
<<case "neutral" "encourage">>
<<set $player.sec_style.body.vagina = "voluntary">>
<</switch>>
<</if>>
<<set $player.flags.chastity_style = "belt">>
<<set $player.body_ref.penis = false>>
<<set $player.body_ref.balls = false>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<if $player.sec_style.body.hormones>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<if setup.isItemTypeEquipped('penis_piercing')>>
<<set _penisPierce = setup.getItemFromType('penis_piercing')>>
<<removeItem _penisPierce true>>
<</if>>
<<if setup.isItemTypeEquipped("cage") && setup.isCage()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.removeCage = true>>
<<set $scene.isCage = true>>
<</if>>
<<if !$player.sec_style.body.penis_remove>>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case "force" "hard_force">>
<<set $player.sec_style.body.penis_remove = "forced">>
<<case "neutral" "encourage">>
<<set $player.sec_style.body.penis_remove = "voluntary">>
<</switch>>
<</if>>
<<if !$player.sec_style.body.vagina>>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case "force" "hard_force">>
<<set $player.sec_style.body.vagina = "forced">>
<<case "neutral" "encourage">>
<<set $player.sec_style.body.vagina = "voluntary">>
<</switch>>
<</if>>
<<case "tiny">>
<<set $player.body.penissize[1] = 1>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<if !$player.sec_style.body.penis_shrink>>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case "force" "hard_force">>
<<set $player.sec_style.body.penis_shrink = "forced">>
<<case "neutral" "encourage">>
<<set $player.sec_style.body.penis_shrink = "voluntary">>
<</switch>>
<</if>>
<<case "average">>
<<set $scene.penis_grow = $player.body.penissize[1] < 3>>
<<set $player.body.penissize[1] = 3>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<if $scene.firstAppointment && $player.body_ref.cumProduction != $npc_bodyshop_nurse.flags.assessment.cum>>
<<set $player.body_ref.cumProduction = $npc_bodyshop_nurse.flags.assessment.cum>>
<</if>>
<<case "large">>
<<set $scene.penis_grow = $player.body.penissize[1] < 5>>
<<set $player.body.penissize[1] = 5>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<if $scene.firstAppointment && $player.body_ref.cumProduction != $npc_bodyshop_nurse.flags.assessment.cum>>
<<set $player.body_ref.cumProduction = $npc_bodyshop_nurse.flags.assessment.cum>>
<</if>>
<<case "giant_cock">>
<<set $scene.penis_grow = $player.body.penissize[1] < 6>>
<<set $player.body.penissize[1] = 6>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<if $player.money.total < 0>>
<<setThreshold "bimbofication" "spending_money" "penis">>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<if $scene.firstAppointment && $player.body_ref.cumProduction != $npc_bodyshop_nurse.flags.assessment.cum>>
<<set $player.body_ref.cumProduction = $npc_bodyshop_nurse.flags.assessment.cum>>
<</if>>
<<case "dragon_upgrade" "dragon">>
<<set $player.body_ref.knot = true>>
<<set $player.body_ref.horsecock = true>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<setThreshold "penis" "surgery_penis" "dragon_cock">>
<<if $player.money.total < 0>>
<<setThreshold "bimbofication" "spending_money" "penis">>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<case "normal">>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<case "horse">>
<<set $player.body_ref.horsecock = true>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<setThreshold "penis" "surgery_penis" "horse_cock">>
<<if $player.money.total < 0>>
<<setThreshold "bimbofication" "spending_money" "penis">>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<case "knot">>
<<set $player.body_ref.knot = true>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<setThreshold "penis" "surgery_penis" "dog_cock">>
<<if $player.money.total < 0>>
<<setThreshold "bimbofication" "spending_money" "penis">>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<case "breasts_grow" "breasts_shrink">>
<<set $player.flags.mealplan.hormones_since_grow = 0>>
<<set $player.body.breastsize[1] = $scene.breast_size>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "voluntary">>
<</if>>
<<if $scene.breast_size > $player.body_ref.breastMax.bodyshop>>
<<set $player.body_ref.breastMax.bodyshop = $scene.breast_size>>
<</if>>
<<case "noballs">>
<<set $player.body_ref.balls = false>>
<<set $player.flags.chastity_style = "belt">>
<<if setup.isItemTypeEquipped("cage") && setup.isCage()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.removeCage = true>>
<<set $scene.isCage = true>>
<</if>>
<<if $scene.firstAppointment && $player.body_ref.cumProduction != $npc_bodyshop_nurse.flags.assessment.cum>>
<<set $player.body_ref.cumProduction = $npc_bodyshop_nurse.flags.assessment.cum>>
<</if>>
<<case "balls">>
<<set $player.body_ref.balls = true>>
<<case "keep">>
<<if $scene.firstAppointment && $player.body_ref.cumProduction != $npc_bodyshop_nurse.flags.assessment.cum>>
<<set $player.body_ref.cumProduction = $npc_bodyshop_nurse.flags.assessment.cum>>
<</if>>
<</switch>>
<<if $scene.firstAppointment && ($npc_bodyshop_nurse.flags.assessment.style == "force" || $npc_bodyshop_nurse.flags.assessment.style == "hard_force")>>
<<set $player.body_ref.cumProduction = $npc_bodyshop_nurse.flags.assessment.cum>>
<<set $scene.breastFollowup = $npc_bodyshop_nurse.flags.assessment.breasts == "none" && setup.calcBreastSize() != "none" || $npc_bodyshop_nurse.flags.assessment.breasts == "normal" && !["medium","small"].includes(setup.calcBreastSize()) || $npc_bodyshop_nurse.flags.assessment.breasts == "huge" && "massive" != setup.calcBreastSize()>>
<<if $scene.breastFollowup>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 0, 9, 0, false)>>
<<addTaskById 'task_bodyshop_appointment_2_force' _tmpDate>>
<</if>>
<</if>>
<<if $scene.removeCage>>
<<if $scene.chastityLevel == 5>>
<<include "calcSissyomaticStyle">>
<<if $scene.cage != $scene.sissyomaticStyle>>
<<addItem $scene.sissyomaticStyle>>
<</if>>
<<wearItem $scene.sissyomaticStyle true>>
<<manipulateItem $scene.sissyomaticStyle "lock" true>>
<<else>>
<<if $scene.isCage && !($player.body_ref.penis || $player.body_ref.balls)>>
<<removeItem $scene.cage true>>
<<set $scene.removeCage = true>>
<<set $scene.cancelTrial = $scene.chastityLevel == 4 && $currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks.task_chastity_trial.finished>>
<<if $scene.cancelTrial>>
<<deleteItem $scene.cage>>
<<completeTask 'task_chastity_trial' $now false>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
You awaken to find yourself laying down. Unable to move you realise that the tight material holding you in place must be some sort of latex vacuum bed. Despite your predicament you do not feel the slightest panic, though perhaps that is due to the sweet gas tinging the air you suck through your mask.<br>
<br>
As you look around a door opens and
<<if $scene.nurse>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>>
<<else>>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>
<</if>>
walks in. With a smile they press a button next to your bed and the pressure holding you in place subsides.<br>
<br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Wonderful, you're awake. The restraints are just to help with your recovery, but you should be all healed now, come let's get you up.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Awake right on time. Don't mind the material — staying immobile speeds the recovery, but by now you should be just about good to go.@@"
<</if>>
<br><br>
The mask is removed and you are helped to your feet before being directed towards a large mirror that takes up most of one wall.<br>
<br>
<<if $player.body_ref.vagina && $player.body_ref.knot && $player.body_ref.horsecock && $player.body.penissize[0] >= 6 && $player.body.breastsize[0] >= 10>>
You look at your reflection and gasp. Staring back at you is something more than human, a succubus sex-goddess from your gargantuan breasts to your huge, inhuman cock rising above a wet cunt. You truly are the best, most extreme of all worlds, a figure utterly unrecognisable compared to the foolish guy trying to address a perceived flaw with sketchy online drugs.<br>
<br>
You turn to find the
<<if $scene.nurse>>
nurse stares at you with unmistakable lust. "@@.npc_bodyshop_nurse;Wow... that mmm, I may have to try that combination myself sometime...@@"
<<else>>
surgeon staring at you in amusement. "@@.npc_bodyshop_surgeon;This may well be one of my finest works to date. Do drop in some other time, I am sure <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> would love to see what you have made of yourself.@@"
<</if>>
<<else>>
<<switch $scene.procedure>>
<<case "keep">>
Though nothing has changed, you feel oddly refreshed by the re-assertion of your bits.
<<case "penis">>
You smile at the return of your penis. Trying out the other option was interesting, for sure, but there is a certain comfort in the return of your old friend.
<<case "all">>
You grin at the sight of your dual genitals, flexing your hard cock so that it rises up to let your cunt peek out. Grasping your member with one hand as your other traces between your folds you struggle to decide which one you want to use more, though that pales compared to your urge to indulge both, fucking and being fucked simultaneously like a true sex-crazed <<if $fetish.futanari>>futanari<<else>>sex demon<</if>>.
<<case "remove_cunt">>
You sigh with relief as you gently lift your cock to find no more vagina hiding behind. Being a dual-equipped <<if $fetish.futanari>>futanari<<else>>sex demon<</if>> was certainly something, but perhaps a bit more intense than you want in your day-to-day.
<<case "remove_penis">>
You sigh with relief at the sight of just a smooth vagina between your legs. Being a dual-equipped <<if $fetish.futanari>>futanari<<else>>sex demon<</if>> was certainly something, but perhaps a bit more intense than you want in your day-to-day.
<<if $scene.cancelTrial>>
<br><br>
You notice what looks to be a partially destroyed <<=setup.getItemName($scene.cage)>>.
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Sorry about that, in attempting to remove the device for the procedure it malfunctioned and we had to cut it free. It appears that it is some sort of new-to-market device and a lookup indicated that you were in some manner of product trial? Unfortunately that trail is effectively failed, though we took the liberty of contacting the producing company and you will not be held at fault for the device's failure.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Sorry about that, in attempting to remove the device for the procedure it malfunctioned and we had to cut it free. It appears that it is some sort of new-to-market device and a lookup indicated that you were in some manner of product trial? Unfortunately that trail is effectively failed, though we took the liberty of contacting the producing company and you will not be held at fault for the device's failure.@@"
<</if>>
<br><br>
You nod and <<if $scene.nurse>>she<<else>>he<</if>> pitches the remains of the cage in a medical waste bucket.<br>
<br>
<<printThought "Hmm, I wonder if I could do a trail for a belt-style device?">>
<</if>>
<<case "cunt">>
<<if $fetish.penis_remove && ($player.sec_style.body.vagina == "strict" || $player.sec_style.body.penis_remove == "strict")>>
You look down at your unchanged genitals.<br>
<br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;As I mentioned earlier, we are unable to effect any real change to your current arrangement... but I did make sure that your vagina is the best that it can possibly be.@@"
<<else>>
"@@.npc_bodyshop_surgeon;As I mentioned earlier, we are unable to effect any real change to your current arrangement... but I did make sure that your vagina is the best that it can possibly be.@@"
<</if>>
<<else>>
You gasp as, for the first time, you behold your delicate vagina. Scarcely believing this is real you carefully reach down. You run a finger between your instantly-moistening lower lips and gasp — not just real, but VERY sensitive.<br>
<br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Doesn't it feel just wonderful? Why, I remember when I first got mine...@@" She gets stars in her eyes as she momentarily stares off into the distance. "@@.npc_bodyshop_nurse;Sorry, turning back to you — it is totally functional and will stand up to whatever pounding you prefer. Sterile, but that can be addressed as well, it's just a bit more complicated of a procedure, longer recovery time, you'd need to take substantial time off work but, if that's what you want, well... you can certainly get there eventually. For now, though, you have taken a big, beautiful step.@@"
<<else>>
"@@.npc_bodyshop_surgeon;It's totally functional. Well, not totally — you're sterile, that procedure is a bit more complicated and would have you in bed and unable to work for several months. Certainly an option down the road, if you wished, but for now, well... you are in possession of a healthy, beautiful vagina, enjoy!@@"
<</if>>
<</if>>
<<case "tiny">>
You gasp as you look down at your newly tiny, oh-so-cute <<getWordMyPenis>>. You can hardly believe how sweet and beautiful it looks, <<if $scene.nurse>>The nurse<<else>>The surgeon<</if>> smiling back with pride.
<<case "average">>
You smile at your normal cock, feeling relieved to be back where it all began, and wondering why you used to have such apprehensive concern over it's size. It is, after all, quite perfect.
<<case "large">>
You smile at the sight of your large cock. Nothing grotesque or porn-esque it is just a nice big member, sure to be the delight of any who shares it with you.
<<case "giant_cock">>
You grin at your new, gloriously huge cock. Like a club dangling between your legs it is big, beautiful and utterly perfect.
<<case "dragon_upgrade" "dragon">>
You can't help but grin at the sight of your magnificent new "dragon" cock. Long and thick with a frilled tip that is guaranteed to probe new depths of pleasure you try to squeeze the thick knot near the base, finding it too large for you to reach around with a single hand. Yes, you are equipped to make fantasies come true for certain...
<<case "normal">>
You smile at your massive, but once again human-shaped, cock, feeling a bit more "human" without a bestial implement between your legs.
<<case "horse">>
You smile at the sight of your large, equine phallus; big, bestial and ready to take your next partner hard and deep.
<<case "knot">>
You grin at your glorious cock and its new swelled knot. Reaching down you find you are unable to close your fingers around the large nub and you smile at the thought of feeling it locking you inside your partner...
<<case "breasts_grow">>
<<switch setup.calcBreastSize()>>
<<case "massive">>
You smile at the sight of your newly massive mammaries. Almost as big as your head the gargantuan orbs can't help but make you smile and make you feel like some sort of ancient fertility deity.
<<case "large">>
You smile at your new, large breasts. Big, beautiful and right at the limit of what your frame can handle without looking garish they may be more than a handful, but they are exactly what you wanted.
<<case "medium">>
You smile at your modest breasts. Giving you a nice, womanly shape they are nice and perky and not too heavy, in other words: perfect.
<<case "small">>
You smile at your new breasts. They may be small by some standards, but you love them and the subtle feminine shape they give to your torso.
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
<<case "breasts_shrink">>
<<switch setup.calcBreastSize()>>
<<case "massive">>
You smile at your massive breasts. Technically smaller than you had before, they're still huge thanks to the temporary effects of the drugs you're on.
<<case "large">>
You smile at your new, large breasts. A step down from your previous massive mammaries you can already feel your back thanking you for the lighter weight, and they definitely fit your frame better than your previous garish globes.
<<case "medium">>
You smile at your new, modest breasts. A nice handful they are large enough for a bit of cleavage and a feminine figure, but not so big as to be distracting. In other words, they're just what you wanted.
<<case "small">>
You smile at your small, cute breasts. Big was interesting, but you really dig this more subtle appearance.
<<case "none">>
You smile at your newly flat chest, feeling strangely lighter without a pair of breasts pulling you down, though you doubt this will be getting you out of wearing a bra to work; <<=setup.getNpcName("npc_manager","formal")>> seems quite insistent on that sort of thing.
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
<<case "noballs">>
You wonder at how different your <<getWordMyPenis>> looks without any wrinkly balls dangling below. The difference is quite striking, and the clean, smooth profile makes you smile.
<<case "balls">>
You glance down at the return of your testicles, dangling just below your <<getWordMyPenis>> same as if they had never left.
<<default>>
ERROR: unexpected scene.procedure <<=$scene.procedure>>
<</switch>>
<br><br>
<</if>>
<br><br>
<<if $scene.firstAppointment>>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case 'neutral'>>
<<if $npc_bodyshop_nurse.flags.assessment.breasts == "none" && setup.calcBreastSize() == "none" || $npc_bodyshop_nurse.flags.assessment.breasts == "normal" && ["medium","small"].includes(setup.calcBreastSize()) || $npc_bodyshop_nurse.flags.assessment.breasts == "huge" && "massive" ==setup.calcBreastSize()>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Congratulations on your new upgrades. You may return during any business hours to attend to the remaining changes to your breasts.@@"
<<else>>
"@@.npc_bodyshop_surgeon;I hope you enjoy the changes and that they meet your expectations. As to your breasts, you may feel free to return during business hours to make your desired changes.@@"
<</if>>
<<else>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Congratulations on your new upgrades. If you desire any future work, feel free to return during any business hours.@@"
<<else>>
"@@.npc_bodyshop_surgeon;I hope you enjoy the changes and that they meet your expectations. You may, of course, return for additional work any time during business hours.@@"
<</if>>
<</if>>
<<case 'encourage'>>
<<if $npc_bodyshop_nurse.flags.assessment.breasts == "none" && setup.calcBreastSize() == "none" || $npc_bodyshop_nurse.flags.assessment.breasts == "normal" && ["medium","small"].includes(setup.calcBreastSize()) || $npc_bodyshop_nurse.flags.assessment.breasts == "huge" && "massive" ==setup.calcBreastSize()>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Congratulations on your new upgrades, they look beautiful and I am certain you are going to love all that you can do with them. We will be here and eagerly waiting for you whenever you desire to bring your breasts into a similar state of perfection.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Congratulations on your new upgrades, I am certain you will enjoy them even more than you dreamed. As to your breasts... I encourage you to return at your earliest convenience and get them similarly adjusted to meet your ideal.@@"
<</if>>
<<else>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Congratulations on your new upgrades, they look beautiful and I am certain you are going to love all that you can do with them. If you desire any future work, feel free to return during any business hours.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Congratulations on your new upgrades, I am certain you will enjoy them even more than you dreamed. You may, of course, return for additional work any time during business hours.@@"
<</if>>
<</if>>
<<case "force" "hard_force">>
<<if $scene.breastFollowup>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Note that we also took care of adjusting your cum production per your wishes while you were under... as to your desired breasts, well... there are limits to what the human body can endure in a single day. I have taken the liberty of making you an appointment for next week so that we may finish giving you the body you so deeply desire... though you may feel free to come in earlier if you are ready to embrace your true needs.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Note that we also took care of adjusting your cum production per your wishes while you were under... as to your desired breasts, well... there are limits to what the human body can endure in a single day. I have taken the liberty of making you an appointment for next week so that we may finish applying your desired upgrades. You may, of course, come in earlier if you are ready to accept what needs to be done.@@"
<</if>>
<<else>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Note that we also took care of adjusting your cum production per your wishes while you were under... since your breasts already match your ideal all there is left to say is... congratulations! Enjoy your new body and, if experience steers you elsewhere, remember we're always here if you desire additional changes.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Note that we also took care of adjusting your cum production per your wishes while you were under... since your breasts already match your ideal all there is left to say is... congratulations! Enjoy your new body and, if experience steers you elsewhere, remember we're always here if you desire additional changes.@@"
<</if>>
<</if>>
<<default>>
ERROR: unexpected npc_bodyshop_nurse.flags.assessment.style <<=$npc_bodyshop_nurse.flags.assessment.style>>
<</switch>>
<br><br>
<<elseif $scene.secondAppointment>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Congratulations on your new breasts. If you desire any further work merely return during normal business hours.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Congratulations on your new breasts. If you desire any further work merely return during normal business hours.@@"
<</if>>
<br><br>
<</if>>
<<if $scene.cage != "" && $scene.chastityLevel == 5 && !["breasts_grow", "breasts_shrink"].includes($scene.procedure)>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;One final thing...@@" She states, holding up a brand new, but distinctly different <<=setup.getItemName($scene.cage)>>. "@@.npc_bodyshop_nurse;Per discussion everything has been properly logged as a medical procedure, but if you aren't locked back up before you go, well... all of us would be in VERY deep trouble.@@"<br>
<br>
You nod and she approaches, gently helping you into the familiar, and yet new, device as you note the tweaks that have been made to it to accommodate your new anatomy.
<<else>>
"@@.npc_bodyshop_surgeon;Oh, and we mustn't forget this@@" he states, holding up a brand new, but distinctly different <<=setup.getItemName($scene.cage)>>. "@@.npc_bodyshop_surgeon;Per discussion everything has been properly logged as a medical procedure, but if you aren't locked back up before you go, well... that is very much the sort of trouble I do not need.@@"<br>
<br>
You nod and he approaches, gently helping you into the familiar, and yet new, device as you note the tweaks that have been made to it to accommodate your new anatomy.
<</if>>
<<if $scene.newCunt>>
Most notable of all is the accommodation for your new hole — a metamaterial plug similar to the one lodged in your ass occupying your cunt, locked inside thanks to the combination of the body-tracing crotch-piece and the belt locked securely around your hips.
<<elseif $scene.newPenis>>
Most notable of all is your new penis being presented with a familiar prison, locked away as before<<if $fetish.sounding>> with the urethra plug sealing the deal<</if>>.
<<elseif ["giant_cock","dragon_upgrade","knot","horse","dragon"].includes($scene.procedure)>>
Despite your massive size the <<=setup.getItemName($scene.cage)>> has no trouble bringing you into line, its short-range ultrasound deflating you in an instant.
<<elseif $scene.procedure == "noballs">>
With you no longer in possession of testicles the device cuts a far sleeker, but no less secure, profile.
<<elseif $scene.procedure == "balls">>
With the return of your testicles the device is a little bulkier, but no less secure as it locks away your twin new orbs in private prisons.
<</if>>
<<elseif $scene.cage != "" && !["breasts_grow", "breasts_shrink","keep"].includes($scene.procedure)>>
<<if $scene.chastityLevel == 5>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;You will notice a new device — thanks to the schematics you provided we were able to fabricate one consistent with your new body.@@"
<<else>>
"@@.npc_bodyshop_surgeon;You will notice a new device — thanks to the schematics you provided we were able to fabricate one consistent with your new body..@@"
<</if>>
<<else>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Oh, one note — you may need to invest in a new chastity device if you wish to accommodate your new equipment.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Oh, one final note — you may need to invest in a new chastity device if you wish to accommodate your new equipment.@@"
<</if>>
<</if>>
<<else>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;You will find all of your things in the closet, admire your new self as long as you like and head on your way. And if you decide you want to make another change in the future? Well, we're always here to help.@@"<br>
<br>
She turns and leaves you alone.
<<else>>
"@@.npc_bodyshop_surgeon;All of your belongings are in the closet, you may change and depart at your leisure. Until next time.@@"<br>
<br>
He closes the door behind himself to leave you alone in the room.
<</if>>
<br><br>
You spend a few more minutes admiring your reflection before you turn to the closet.
<</if>>
<br><br>
[<<moveTo "event_bodyshop_wake_2" "Continue." 3600>>]
</div>/*#
#desc: change and leave
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.firstAppointment && !$npc_bodyshop_surgeon.flags.appointments.first_forced>>
<<set $npc_bodyshop_surgeon.flags.appointments.first = true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png">>
<div id="invframe" class="scrolltext">
Just as you were told you find all of your things in the closet and gather them up.<br>
<br>
<<if $fetish.penis_shrink && ($player.body_ref.penis_shrinking || $player.sec_style.body.penis_shrink == "strict") && (["dragon_upgrade","dragon","horse","knot"].includes($scene.procedure) || ["giant_cock","large","average","tiny"].includes($scene.procedure) && $scene.penis_grow)>>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
[<<moveTo "event_bodyshop_wake_3" "Leave the bodyshop." 180>>]
<<else>>
[<<moveTo "event_bodyshop_wake_3" "Put your clothes back on and go." 180 "<<useClothSetPop 'tmp'>>">>]
<</if>>
<<else>>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
[<<moveTo "room_student_quarter" "Leave the bodyshop." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo "room_student_quarter" "Put your clothes back on and go." 180 "<<useClothSetPop 'tmp'>><<set $player.cutscene.lockinventory=true>>">>]
<</if>>
<</if>>
</div>/*#
#desc: warned about penis shrinking
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
You're about to leave the exam room when the
<<if $fetish.penis_shrink && ($player.sec_style.body.penis_shrink == "strict")>>
<<if $scene.nurse>>
nurse pokes her head back in.<br>
<br>
"@@.npc_bodyshop_nurse;Good, I caught you before you left. I was just reviewing your numbers and... well, you've had some sort of nanomachine treatment that we can't reverse. It will not cause you any harm... but it does mean your penis will shrink over time, and there's nothing we can do about it... well, other than a repeat of surgery.@@"
<<else>>
surgeon pokes his head back in.<br>
<br>
"@@.npc_bodyshop_surgeon;Good, I caught you before you left. I was just reviewing your numbers and... well, you've had some sort of nanomachine treatment that we can't reverse. It will not cause you any harm... but it does mean your penis will shrink over time, and there's nothing we can do about it... well, other than a repeat of surgery.@@"
<</if>>
You wince at the memory of what <<=setup.getNpcName("npc_boss","formal")>> had <<=setup.getNpcName("npc_work_doctor","formal")>> do to you and nod.<br>
<br>
[<<moveTo "room_student_quarter" "Leave the bodyshop." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<if $scene.nurse>>
nurse pokes her head back in.<br>
<br>
"@@.npc_bodyshop_nurse;Good, I caught you before you left. I was just reviewing your numbers and... it seems that the hormones you're currently on are designed to cause gradual penis shrinking over time. That seemed a bit cross-purpose to your new unit, would you like me to tweak the prescription so you don't lose your new upgrade?@@"
<<else>>
surgeon pokes his head back in.<br>
<br>
"@@.npc_bodyshop_surgeon;Good, you are still here. I reviewing your file and noticed that the hormones you're currently on are designed to cause gradual penis shrinking over time. This would appear to conflict with the procedure I just performed... would you like me to tweak the prescription so you don't lose your new upgrade?@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_wake_4" "You don't want to shrink anymore." 300 "<<set $scene.shrink=false>>">>]<br>
[<<moveTo "event_bodyshop_wake_4" "You want to continue to shrink." 300 "<<set $scene.shrink=true>>">>]
<</if>>
</div>/*#
#desc: adjust penis shrinking
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.shrink>>
<<set $player.body_ref.penis_shrinking = true>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "voluntary">>
<</if>>
<<else>>
<<set $player.body_ref.penis_shrinking = false>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.shrink>>
<<if $scene.nurse>>
The nurse smiles in amusement. "@@.npc_bodyshop_nurse;Very well, you will continue to shrink as you have been... which means you will be losing that lovely thing... ah well, all life is transitory, after all.@@"
<<else>>
The surgeon shakes his head in confusion. "@@.npc_bodyshop_surgeon;If that is your preference... seems a waste of credits but, they are yours to spend.@@"
<</if>>
<<else>>
<<if $fetish.penis_shrink && ($player.sec_style.body.penis_shrink == "strict")>>
<<if $scene.nurse>>
The nurse nods. "@@.npc_bodyshop_nurse;I am sorry we could not do more... I recommend you enjoy your new unit as quickly as possible, because you shall not have it at those dimensions for long.@@"
<<else>>
The surgeon nods. "@@.npc_bodyshop_surgeon;I am sorry we could not do more... I recommend you enjoy your new unit as quickly as possible, because you shall not have it at those dimensions for long.@@"
<</if>>
<<else>>
<<if $scene.nurse>>
The nurse smiles in delight. "@@.npc_bodyshop_nurse;Wonderful! I am just glad I caught you before you lost your wonderful new unit!@@"
<<else>>
The surgeon nods. "@@.npc_bodyshop_surgeon;Very good, you shall retain your current dimensions. Enjoy!@@"
<</if>>
<</if>>
<</if>>
<<if $scene.nurse>>
She
<<else>>
He
<</if>>
leaves.<br>
<br>
[<<moveTo "room_student_quarter" "Leave the bodyshop." 180 "<<set $player.cutscene.lockinventory=true>>">>]
</div>/*#
#desc: bodyshop genital surgery shrink penis
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")+2>>
<<applyExperience 'anal' _anal 'terrible' $SEEN_STRANGER>>
<<applyExperience 'cum' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<<switch $scene.procedure>>
<<case 'cunt' 'remove_penis'>>
<<set $player.body.penissize[1] = 0>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.penis_remove = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.penis_remove = true>>
<</if>>
<<set $player.body_ref.penis = false>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<set $player.body_ref.balls = false>>
<<if $player.sec_style.body.hormones>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<set $player.flags.chastity_style = "belt">>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.tattoos.penis = "">>
<<if setup.isItemTypeEquipped('penis_piercing')>>
<<set _penisPierce = setup.getItemFromType('penis_piercing')>>
<<removeItem _penisPierce true>>
<</if>>
<<if !$player.sec_style.body.penis_remove>>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case "force" "hard_force">>
<<set $player.sec_style.body.penis_remove = "forced">>
<<case "neutral" "encourage">>
<<set $player.sec_style.body.penis_remove = "voluntary">>
<</switch>>
<</if>>
<<case 'tiny'>>
<<set $player.body.penissize[1] = 1>>
<<case 'average'>>
<<set $player.body.penissize[1] = 3>>
<<case 'large'>>
<<set $player.body.penissize[1] = 5>>
<<case 'giant_cock'>>
<<set $player.body.penissize[1] = 6>>
<</switch>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.penis_shrink = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.penis_shrink = true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
You're already hard and sensitive just from the wet, slick feel of the device surrounding your <<getWordMyPenis>>, and then <<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> turns the machine on.<br>
<br>
Sucking and stroking up and down the device makes you cum almost instantly, but the pleasure is so mind-blowing you somehow only get harder.<br>
<br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;You like that, don't you, you horny little slut. Well good, you're supposed to. Because with every orgasm this lovely machine will be draining away a little bit more of that naughty thing between your legs.@@" You shudder as you cum a second time, moaning into your gag. "@@.npc_bodyshop_nurse;Yes, that's right, keep cumming. Cumming and shrinking, cumming and shrinking until <<if $scene.procedure == 'cunt'>>there's nothing left<<else>>you're the perfect size<</if>>...@@"<br>
<br>
You moan as she dials the speed of the device even faster, your hips bucking uselessly against the tight straps holding you to the seat. She smiles at you, stroking your cheek
<<if $fetish.cum>>
as she screws a hose to the front of your gag, the interior portion extending slightly and then leaking something, a familiar tasting something...<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
<<printThought "Mmm, recycling my own cum... perfection.">>
<<else>>
<<printThought "I'm drinking my own cum... and it tastes so good...">>
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<printThought "I'm drinking my own cum!">>
<<else>>
<<printThought "Wait, am I drinking my own cum?">>
<</if>>
<</if>>
<br><br>
"@@.npc_bodyshop_nurse;Wouldn't want you to get dehydrated!<<if $scene.procedure == 'cunt'>> Plus, well... this is the last yummy semen you'll ever be producing! Yup, soon all you'll have to look forward to is a wet, dripping, squirting pussy...<</if>>@@"
<<else>>
as she monitors and adjusts the machine.
<</if>>
<br><br>
You moan and the machine dings. "@@.npc_bodyshop_nurse;Oh! Look who's fallen below a size threshold! It's you!, Now to make sure you keep pace...@@"<br>
<br>
She reaches down between your legs and then you gasp as a dildo swings up and slides deep into your ass<<if $player.body_ref.vagina>> a moment later it is joined by its twin, the dual dongs filling and fucking you fore and aft<</if>>. The constant pumping of your <<getWordMyPenis>> pauses but you hardly notice as the thrusting, buzzing <<if$player.body_ref.vagina>>cocks more than pick<<else>>cock more than picks<</if>> up the slack.<br>
<br>
"@@.npc_bodyshop_nurse;You like that, don't you?@@" She states casually as she removes the cylinder from your quivering, and noticeably smaller, cock and replaces it with a smaller, more snug one. "@@.npc_bodyshop_nurse;Yes you do, you love being fucked while your cock slowly... well, maybe not so slowly, shrinks.@@" She adds as the suction returns, the <<if $player.body_ref.vagina>>twin dildos never letting up in their frenetic fucking<<else>>dildo remaining in place to fuck your ass<</if>> while the other device resumes sucking and stroking<<if $fetish.cum>> and feeding you a constant trickle of your own <<getWordCum true>><</if>>.<br>
<br>
<<if $scene.procedure == 'cunt'>>
"@@.npc_bodyshop_nurse;Yes, not long now,@@" she twiddles another dial and the dildo in your ass swells a little larger. "@@.npc_bodyshop_nurse;Feel that? Feel that big, thick cock pounding your ass? Well soon you're going to have another hole, yes... you may never fuck anything again but you'll be fuckable indeed, three tight, wet holes desperate to be filled...@@"<br>
<br>
You groan, your initial straining against your bonds giving way to limp, overwhelmed surrender.<br>
<br>
The machine sucks. The machine fucks.<<if $fetish.cum>> You drink your own cum.<</if>> Your <<getWordMyPenis>> shrinks... over and over the cycle repeats, your pleasure somehow continuing to climb accompanied by the teasing "encouragement" of the nurse until, with the dildo pounding your ass having swelled to what feels like a telephone pole, she removes a barely centimetre long tube and you realise that you are almost completely smooth...<br>
<br>
She smiles back at you as she brings a new device between your legs...<br>
<br>
[<<moveTo "event_bodyshop_genital_surgery_vag_add" "Continue..." 1800>>]
<<else>>
You moan as the <<if $player.body_ref.vagina>>dildos swell<<else>>dildo swells<</if>>, your <<getWordMyPenis>> shrinking alongside as the nurse continuously monitors you while downgrading your through ever smaller cylinders.<br>
<br>
Her gloved hands gently stroke the inside of your thighs. "@@.npc_bodyshop_nurse;There we go, we're going to get you down to the perfect size...@@"<br>
<br>
Sucking another mouthful of your own cum out of your gag the sensations become too much...<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
<</if>>
<<else>>
"@@.npc_bodyshop_surgeon;Intense, isn't it?@@" the surgeon states casually as he monitors the machine, making subtle adjustments that you fail to notice against the constant overwhelming pleasure of the machine pumping away at your <<getWordMyPenis>>. "@@.npc_bodyshop_surgeon;That's the point, you see. The lubricant is laced with strong aphrodisiacs, the stimulation precisely calibrated to push the subject to repeat orgasms.@@"<br>
<br>
As he speaks you cry out into your gag, cumming, yet somehow growing even harder. "@@.npc_bodyshop_surgeon;See, just like that! And with every orgasm you get a little bit smaller, that pleasure draining you away <<if $scene.procedure == 'cunt'>>until there is nothing left<<else>>until you are the precise proper size<</if>>...@@"<br>
<br>
You shudder, straining against your bonds as you try to survive the constant, mind-blowing sucking. Shortly after your second climax the machine dings, the suction pausing to give you a momentary respite...<br>
<br>
A respite that lasts but a moment as the surgeon reaches between your legs to slam a large dildo into your ass<<if $player.body_ref.vagina>> a moment later its twin swings into position as well, lest your dripping cunt feel neglected<</if>>. Immediately <<if $player.body_ref.vagina>>they begin<<else>>it begins<</if>> buzzing and fucking away as the surgeon sets about swapping a smaller cylinder over your <<getWordMyPenis>>. "@@.npc_bodyshop_surgeon;Have to keep the nervous system constantly stimulated for best results — we're doing a lot of re-arranging down here and do not want you to lose out on a single gram of sensitivity when it's all over with...@@"<br>
<br>
You groan as the dildo is joined by the renewed mechanical stroking and sucking of your <<getWordMyPenis>>. Tweaking the controls, the surgeon turns back towards you,
<<if $fetish.cum>>
reaching out to attach a tube to the front of your gag — which moments later begins oozing a familiar-tasting liquid...<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
<<printThought "Mmm, recycling my own cum... perfection.">>
<<else>>
<<printThought "I'm drinking my own cum... and it tastes so good...">>
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<printThought "I'm drinking my own cum!">>
<<else>>
<<printThought "Wait, am I drinking my own cum?">>
<</if>>
<</if>>
<br><br>
"@@.npc_bodyshop_surgeon;Dehydration is not part of the procedure... plus there is a certain beautiful symmetry of this. Recycle,@@" he traces the tube running into your gag, "@@.npc_bodyshop_surgeon;Reduce@@" he runs a finger along the outside of the cylinder that contains your rock hard, but already noticeably smaller <<getWordMyPenis>> "@@.npc_bodyshop_surgeon;And close the loop.@@" He smiles and you moan, the <<if $player.body_ref.vagina>>dildos pounding your in both holes alternate<<else>>dildo pounding your ass<</if>> swelling in size as if to mirror your shrinking cock.
<<else>>
making frequent adjustments as the maching pumps and sucks away.
<</if>>
<br><br>
<<if $scene.procedure == 'cunt'>>
"@@.npc_bodyshop_surgeon;Doing very well...@@" he states as he adjusts a dial and the dildo in your ass swells a little larger "@@.npc_bodyshop_surgeon;Yes, with every bit you shrink, you get a little bit fuller... such perfect symmetry...@@"<br>
<br>
You groan, your initial straining against your bonds giving way to limp, overwhelmed surrender.<br>
<br>
The machine sucks. The machine fucks. <<if $fetish.cum>>You drink your own cum. <</if>>Your <<getWordMyPenis>> shrinks... over and over the cycle repeats, your pleasure somehow continuing to climb accompanied by the teasing "encouragement" of the surgeon until, with the dildo pounding your ass having swelled to what feels like a telephone pole, he removes a barely centimetre long tube and you realise that you are almost completely smooth...<br>
<br>
He smiles back at you as she brings a new device between your legs...<br>
<br>
[<<moveTo "event_bodyshop_genital_surgery_vag_add" "Continue..." 1800>>]
<<else>>
"@@.npc_bodyshop_surgeon;Making very good progress now...@@" The surgeon states as he switches in an even smaller cylinder. You groan<<if $fetish.cum>>, your reward yet another spurt of your own <<getWordCum true>>,<<else>> as<</if>> the <<if $player.body_ref.vagina>>twin dildos swelling<<else>>dildo in your ass<</if>> swelling even larger, a thrusting, thrumming cacophony that seems to merge with the intense suction happening around your steadily shrinking <<getWordMyPenis>>. Another of the uncountable orgasms washes over you without providing the slightest relief, the pleasure and stimulation only cresting higher and higher...<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: bodyshop genital surgery grow penis
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")+2>>
<<applyExperience 'anal' _anal 'terrible' $SEEN_STRANGER>>
<<set $player.body_ref.penis = true>>
<<switch $scene.procedure>>
<<case 'tiny'>>
<<set $player.body.penissize[1] = 1>>
<<case 'average'>>
<<set $player.body.penissize[1] = 3>>
<<case 'large'>>
<<set $player.body.penissize[1] = 5>>
<<case 'giant_cock'>>
<<set $player.body.penissize[1] = 6>>
<</switch>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.penis_enlarge = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.penis_enlarge = true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.nurse>>
<<if $fetish.sounding>>
With a smile the nurse unscrews the tip of the cylinder around your penis before carefully threading a long rod down into your urethra. The beads lining the rod make you feel every centimetre as it slides into you, and she doesn't stop inserting until it is impaling you root to tip, holding your penis rigidly in the middle of the chamber. You groan as it twists inside of you as she screw everything in place and dials the suction back up.<br>
<br>
<<else>>
The nurse smiles as she softly traces her fingers along the outside of your <<getWordMyPenis false>>-encasing cylinder.
<</if>>
"@@.npc_bodyshop_nurse;Mmm, doesn't it look beautiful like that? All <<if $fetish.sounding>>impaled<<else>>encased<</if>> and protected... like a butterfly under glass... or perhaps I should say caterpillar in a cocoon? Because in a little while it's going to come out looking bigger and more beautiful than ever...@@" She gently strokes the outside of the cylinder and smiles at you before turning to the machine.<br>
<br>
You brace for something to happen to your glass-encased <<getWordMyPenis>> but instead she reaches under the seat to raise a large dildo up and into your ass.<<if $player.body_ref.vagina>> You moan, still adjusting to this intruder when a second twin swings into position above it to slide into your dripping cunt.<</if>> "@@.npc_bodyshop_nurse;There we go. All filled and ready for your treatment plan... so let's get this growth started!@@"<br>
<br>
You gasp as she hits a switch and everything bursts into motion at once — <<if $player.body_ref.vagina>>twin dildos fucking<<else>>dildo thrusting deep<</if>>, sheath stroking and sucking and the urethral rod vibrating and subtly pulling along your entire interior length.<br>
<br>
<<if $fetish.sounding>>
You moan through your gag, the vibrating urethral rod preventing you from cumming even as it works in concert to push you to ever-higher realms of pleasure.
<<else>>
You gasp as she hits a switch and everything bursts into motion at once — <<if $player.body_ref.vagina>>twin dildos fucking<<else>>dildo thrusting deep<</if>> while the sheath is stroking and sucking along your entire length.
<</if>>
"@@.npc_bodyshop_nurse;Everything's going great...@@" she states, her fingers dancing over the control panel like a conductor, your stimulation constantly changing as you feel your <<getWordMyPenis>> strain, and slowly grow before your very eyes...
<<else>>
<<if $fetish.sounding>>
Your <<getWordMyPenis>> is trembling in its clear prison as <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> threads a long, beaded urethral rod down through the end. You feel every centimetre as it slides into you as it impales you all the way to the base, holding your penis rigidly in the middle of the chamber. You groan as it twists inside of you as he screw everything in place and dials the suction back up.<br>
<br>
<<else>>
You moan as the cylinder seems to hug a little tighter, the <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> nodding in approval as he carefully adjusts a dial.
<</if>>
"@@.npc_bodyshop_surgeon;There we go — that will make sure it grows nice and straight and true, wouldn't want you walking out with a giant candy cane, right?@@"<br>
<br>
Even if you weren't gagged you wouldn't have time to react to his comment before he swings a dildo up from below, the thick rod slamming deep into your ass<<if $player.body_ref.vagina>>, followed a moment later by its identically girthy twin to fill your already dripping cunt<</if>>.<br>
<br>
"@@.npc_bodyshop_surgeon;And now to start the treatment...@@" he states as he turns to the machine, flicking a series of switches that have everything turning on at once; <<if $player.body_ref.vagina>>twin dildos fucking<<else>>dildo thrusting deep<</if>>, sheath stroking and sucking<<if $fetish.sounding>> and the urethral rod vibrating and subtly pulling<</if>> along your entire interior length.<br>
<br>
"@@.npc_bodyshop_surgeon;Enjoy watching your progress — and don't worry about getting soft. There's an orgasm inhibitor built into the urethral rod so you'll be staying fully hard through the whole therapy. The constant arousal helps train the nervous system so that you don't lose any sensitivity in the growth process.@@"<br>
<br>
You groan into your gag, already desperate for the climax he just said was impossible. He smiles and turns a dial, the speed of stimulation increasing in tandem. Helplessly bound your hips buck as you are pounded, sucked and drilled, the surgeon constantly adjusting the pattern of stimulation in what seems like an effort to keep you constantly overwhelmed.
<</if>>
<br><br>
Occasionally your cylinder is "swapped out" for a larger model but overall the process remains the same — constant, mind-breaking stimulation alongside your <<getWordMyPenis>> steadily increasing in size.<br>
<br>
Prevented from cumming, panting through your gag, and exhausted from straining against your bonds in desperate need of an orgasm that never manages to arrive it eventually becomes too much and you feel things going dark...<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
</div>/*#
#desc: bodyshop genital surgery — penis sensitization (forced variant if penis size already correct)
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.nurse>>
The nurse smiles at you as you tremble in anticipation.<br>
<br>
"@@.npc_bodyshop_nurse;Mmm, just relax, nothing too intense today, just some nice gentle stimulation, coupled with some rejuvenating salves. Just lay back and enjoy...@@"<br>
<br>
As she finishes speaking she slowly turns a dial, the cylinder around your <<getWordMyPenis>> beginning to slowly move and gently suck. You moan, every centimetre of your <<getWordMyPenis>> feels like it is being oh-so-wonderfully stroked. Watching you carefully the nurse slowly increases the speed to guide you towards orgasm, then eases back for the most tender edging you've ever received.
<<else>>
The surgeon smiles at you as you whimper into your gag in anticipation.<br>
<br>
"@@.npc_bodyshop_surgeon;We'll have none of that today — today is all about getting this lovely thing into the best shape of its life, just a little bit of stimulation, some medicinal salve... and, well... you just lean back and enjoy.@@"<br>
<br>
As he speaks he slowly turns a dial, the cylinder around your <<getWordMyPenis>> beginning to slowly move and gently suck. You moan, every centimetre of your <<getWordMyPenis>> feels like it is being oh-so-wonderfully stroked. Watching your vitals intently the surgeon slowly increases the speed to guide you towards orgasm, then eases back for the most tender edging you've ever received.
<</if>>
<br><br>
Part of you wants to be frustrated by the denial but the machine just feels so good, especially as a fresh dose of cool, lubricating salve oozes down to be massaged in.<br>
<br>
You wonder if there might be something a bit more potent in the salve as you lean back, smiling contentedly around the gag, more than happy to let the machine do its "healing" work for as long as is necessary...<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "You drift gently to sleep." 1800>>]
</div>/*#
#desc: bodyshop genital surgery painful remove balls
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body_ref.balls = false>>
<<set $player.flags.chastity_style = "belt">>
<<setThreshold 'bdsm' 'bdsm_other' 'popped_balls'>>
<<applyExperience 'bdsm' 20 'skip' $SEEN_STRANGER>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.balls_harsh = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.balls_harsh = true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
You grunt and
<<if $scene.nurse>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> smiles. "@@.npc_bodyshop_nurse;<<switch $player.identify_as>><<case "female" "">>Such a brave girl<<case "male">>Such a brave boy<<case "fluid" "agender">>So brave<</switch>>! If you're looking to make a statement getting rid of these things, well... I'm here to help!@@"<br>
<br>
She smiles as she begins tightly winding a length of rubber around your sack, pulling things tight as your no-longer desired testicles are pushed further and further away from your body. Stretched and tight they're already turning red as she reaches for a tube of lubricant and begins coating her gloved hands. "@@.npc_bodyshop_nurse;So this gel is some really fantastic stuff — it's derived from the genes certain species of lizard use to safely separate their tail to escape from predators... interestingly, it has an odd side effect of temporarily increasing sensitivity... though maybe that's a perk, in your case?@@"<br>
<br>
She grins as she reaches out, wrapping her hand firmly around your extended balls and starting to squeeze. "@@.npc_bodyshop_nurse;Ooop, I hope you're ready! It's time to say goodbye to these naughty, useless, ugly things!@@" With each word she tugs and squeezes, the sensation soon becoming painful as you whimper into your gag.<br>
<br>
"@@.npc_bodyshop_nurse;Hey, stay with me!@@" She commands, pausing to give your balls a painful slap. "@@.npc_bodyshop_nurse;You wanted to be here for the procedure, well then you better watch as I crush these horrible things!@@"<br>
<br>
Tears are flowing now as she squeezes even tighter. She gives another tug and sends stars of pain sparkling through your body, your vision blurring with tears as you look down at her, "@@.npc_bodyshop_nurse;Yeah, you're ready now, aren't you? Ready to be done once and for all with these distracting, despicable, dangling balls!@@"<br>
<br>
With a final squeeze you feel something pop, her hand pulling away before you can see what happened as you howl into the gag and she whips off the constricting rubber wrap. After-shocks of pain run through your body as you stare in shock — like a magic trick your testicles and all the rest are completely gone! Your cylinder-sheathed shaft standing alone, still somehow hard...
<<else>>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> nods. "@@.npc_bodyshop_surgeon;Quick and definitive it is, well, let us waste no more time in getting rid of those unwanted organs.@@"<br>
<br>
Nervously you watch as he covers a pair of acrylic plates with some sort of gel, sliding one under your balls and attaching it to the base of your testicles with a tight ring. He centres everything carefully before adding the second plate on top, the two platters connected by posts at each corner.<br>
<br>
"@@.npc_bodyshop_surgeon;So here we have a quite interesting procedure — that gel incorporates a special infusion based on genetic material from certain lizards that shed their tails to escape predators. In this form it allows for clean, non-surgical amputations...@@"<br>
<br>
You hear a soft mechanical sound and watch as the distance between the two plates begins to contract, the top plate first coming into contact with your testicles before slowly squeezing down.<br>
<br>
You bite down on your gag in fear as the pressure becomes pain, the surgeon reaching out to gently pat your bound arm. The crushing pressure is becoming agonising, your balls flattened like pancakes between the two platters as the compression continues...<br>
<br>
Thrashing against your bonds you whimper in pain, looking away for a moment only to swear you heard a pop. You look back in surprise as the explosion of pain runs through your body. The contraption has fallen away, leaving your cylinder-encased, somehow still-hard, shaft standing alone...
<</if>>
<br><br>
<<if $scene.procedure == 'cunt' || $scene.procedure == 'remove_penis'>>
You feel momentarily faint, your consciousness flicking before your eyes snap open at the strong scent of smelling salts.<br>
<br>
<<if $scene.nurse>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> leans back and puts the salts away. "@@.npc_bodyshop_nurse;Tsk, tsk, don't go passing out on me, it's just a little pain! Besides, you can relax, the rest of the procedure is much more fun, and we are just getting started!@@"
<<else>>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> leans back and puts the salts away. "@@.npc_bodyshop_surgeon;I know that was a bit painful, but the choice of technique was your decision. Besides, we are far from finished, and you wanted to be conscious through the entire procedure...@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_genital_surgery_penis_drain" "Continue." 3600>>]
<<else>>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
<</if>>
</div>/*#
#desc: bodyshop genital surgery gentle remove balls
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body_ref.balls = false>>
<<set $player.flags.chastity_style = "belt">>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.balls_remove = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.balls_remove = true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.nurse>>
The nurse smiles as she unrolls some clear plastic and places it on your legs and rear, basically everything EXCEPT your testicles until your balls are soon dangling on their own.<br>
<br>
Smiling she reaches for a tube of gel, squirting a heavy blob all over her hands before reaching out and starting to massage it into your testicles.<br>
<br>
<br>
"@@.npc_bodyshop_surgeon;This special stuff is a sort of antigenesis serum, causing shrinkage and then eventual detachment... and, as a bonus, it provides some delightful nerve stimulation... A very restricted, substance, as you can imagine.@@"<br>
<br>
You start to lose track of her words as she massages the cool gel into your testicles. It feels so, so good, her fingers like the touch of an angel and you can immediately understand why the substance is banned to the public. You look down and watch with a happy smile around your gag as she continues to gently rub your testicles, the sack tightening up and then slowly shrinking between her palms.<br>
<br>
You shudder in pleasure, her every touch feels so, so good, and the steady shrinking disappearance of your unwanted balls on top. Your <<getWordMyPenis>> twitches with excitement inside its snug cylinder<<if $scene.procedure == 'cunt'>>, the poor thing unaware that it's going to be next..<</if>>.
<<else>>
The surgeon nods at your decision, leaning over to fasten a spherical apparatus around your testicles. Like a clear beaker it dangles down against your rear, tightly wrapped around the base of your testicles while giving you a clear view of them through the transparent shell.<br>
<br>
You stare with interest as he connects a narrow tube to a port near the top of the container, twisting a knob to unleash the flow of a clear liquid. The weight tugging on your balls increases as the chamber fills up, your testicles tingling as they submerge. You look up at him in curiosity.<br>
<br>
"@@.npc_bodyshop_surgeon;A dilute solution designed for safely removing and shrinking unwanted growths. An antigenesis serum, if you will. With the right stimulation it will cause a sort of accelerated atrophy, and thus, a non-surgical removal. Bonus, for you is, well... you'll see in a moment.@@"<br>
<br>
As he finishes speaking the chamber fills up and the flow stops, only for him to hit a different switch that suddenly causes things to swirl. Like a tempest in a teapot the liquid surrounding your balls churns, the movement and stimulation somehow intensely pleasurable...<br>
<br>
"@@.npc_bodyshop_surgeon;As I said... now you just lay there and enjoy those unwanted things dissolving away...@@" You sigh in agreement, drooling slightly out of your gag as you surrender to the heavenly sensations happening in your testicular prison.<br>
<br>
Occasionally glancing down you catch the odd glimpse of things shrinking, which only makes you smile wider, blissfully sucking on your gag as your balls slowly disappear...
<</if>>
<br><br>
<<if $scene.procedure == 'cunt'>>
You are floating on a cloud of delight when your eyes snap open at the strong scent of smelling salts.<br>
<br>
<<if $scene.nurse>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> leans back and puts the salts away. "@@.npc_bodyshop_nurse;Tsk, tsk, don't go passing out on me, we've barely even begun!@@"
<<else>>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> leans back and puts the salts away as you notice he has already removed the sphere, your testicles no more, leaving behind just smooth, fresh skin. "@@.npc_bodyshop_surgeon;You said you wanted to be awake for the procedure! And we are just getting started...@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_genital_surgery_penis_drain" "Continue." 3600>>]
<<else>>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
<</if>>
</div>/*#
#desc: bodyshop genital surgery add balls
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body_ref.balls = true>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.balls_add = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.balls_add = true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.nurse>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> holds your <<getWordMyPenis>> out of the way to begin rubbing a cool cream into the smooth area below your shaft. Things feel soft and a little tingly as she turns to the side and produces a large syringe-like object.<br>
<br>
"@@.npc_bodyshop_nurse;Now, now, no reason to be afraid,@@" she states as you nervously watch the point approach your sensitive flesh. True to her word the sharp tip pierces your skin with neither pain nor blood. In fact, it almost feels good, even moreso as she adjusts her grip and pushes the plunger forward, your skin gently swelling in pace with the growing pleasure.<br>
<br>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> smiles as the fleshy bulge begins to take shape and, by the time the syringe is empty, you are looking down at a swelled sack right where it ought to be. "@@.npc_bodyshop_nurse;There we go, a nice new home... now to help the twins move in!@@"<br>
<br>
She gives your flesh-balloon a friendly caress before pulling out a box, the lid releasing a cloud of mist as it vents coolant before she withdraws a pair of test tubes with a testicle floating in each.<br>
<br>
She loads the first test tube into a sort of oversized gun and places the top against your swelled sack. "@@.npc_bodyshop_nurse;Fire in the hole!@@" She says with a smile as she pulls the trigger, a pellet of pure pleasure shooting into your body.<br>
<br>
You moan through your gag as she loads the second shell "@@.npc_bodyshop_nurse;Mmm, you like having balls, don't you? Doesn't it feel so good to have that testicle back, to feel it plugging in to your system,@@" she fires off the second shot and your entire body jolts in ecstasy.<br>
<br>
She places the gun to the side and begins massaging your sack with both gloved hands, the extreme pleasure fading to a pleasant glow as your swelled sack deflates down to normal and your new testicles become a happy part of your body.<br>
<br>
"@@.npc_bodyshop_nurse;Well everything feels just lovely, but there's one final test to make sure everything came together properly...@@" She reaches up to grab your <<getWordMyPenis>> and you moan, a single stroke, combined with her other hand still massaging your balls, combining to rocket you to the very pinnacle of pleasure.
<<else>>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> holds your <<getWordMyPenis>> out of the way to begin rubbing a cool cream into the smooth area below your shaft. Things feel soft and a little tingly and you bite your lip as he turns to the side and produces a large syringe-like object.<br>
<br>
"@@.npc_bodyshop_surgeon;I know this may look a bit intimidating,@@" he explains as he lines up the tip of the needle just below the base of your shaft. "@@.npc_bodyshop_surgeon;But that cream should keep you from feeling any pain whatsoever...@@"<br>
<br>
Despite his words you hold your breath as the steel tip presses against your skin... and then slides in without a trace of blood pain. <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> keeps things steady as he squeezes the plunger, a strange pleasure entering your body as your skin slowly stretches. By the time the injection is complete you have a swelled sack dangling from your body, feeling full and heavy with whatever strange liquid has been used to induce its growth.<br>
<br>
"@@.npc_bodyshop_surgeon;Now doesn't that look lovely,@@" he states as he puts the syringe away, your new, swelled sack tingling with pleasure as it rests on bulbous display between your legs.<br>
<br>
"@@.npc_bodyshop_surgeon;We'll drain it at the end, but first we need to get your new testicles installed — not much use in a sack with nothing in it, right?@@"<br>
<br>
Enjoying the roiling balloon of joy between your legs you nod as he pulls out a large thermos, unscrewing the top with a hiss of mist as it vents coolant before he pulls out a pair of test tubes, each containing a suspended testicle.<br>
<br>
You're still distracted by your pleasure-high as you watch the surgeon load the first tube into an oversized gun. He gently cradles your swelled sack with one hand as he presses the tip of the barrel to the stretched flesh. "@@.npc_bodyshop_surgeon;And first one...@@" He fires and it's like a pellet of pure pleasure shoots into your body. You gasp through your gag, your eyes flickering in overwhelmed ecstasy as he loads the second round and fires again.<br>
<br>
You writhe in pleasure as he gently lowers your full sack back down as he watches a monitor. "@@.npc_bodyshop_surgeon;Perfect, they're right where they need to be and the auto-wiring is proceeding to plan. Just need to drain away the excess fluid and do a final system check...@@"<br>
<br>
The surgeon hooks a sort of suction device to your testicles and they begin to deflate, but you barely notice, still overwhelmed with mind-blowing pleasure...
<</if>>
<br><br>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
</div>/*#
#desc: bodyshop genital surgery add vag
#status: FINISHED 0.7.12.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")+2>>
<<applyExperience 'anal' _anal 'terrible' $SEEN_STRANGER>>
<<set $player.body_ref.vagina = true>>
<<if !$player.sec_style.body.vagina>>
<<switch $npc_bodyshop_nurse.flags.assessment.style>>
<<case "force" "hard_force">>
<<set $player.sec_style.body.vagina = "forced">>
<<case "neutral" "encourage">>
<<set $player.sec_style.body.vagina = "voluntary">>
<</switch>>
<</if>>
<<set $player.flags.chastity_style = "belt">>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.vagina_add = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.vagina_add = true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.procedure == "all">>
You gasp as a large dildo suddenly slams up and deep into your previously empty ass.
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Doesn't that feel good? Just you wait until you have two holes to be fucked in... well, three, counting your lovely lips. Anyway, we don't want to get wires crossed as to which orifice is which, so we need to keep all your existing nerves nice and lit up as we lay in the new ones...@@"
<<else>>
"@@.npc_bodyshop_surgeon;I bet that feels much better, having something nice and thick filling you back there. Don't you worry, it won't be much longer before you have the full three holes for fucking, but we want to make sure the new nerve pathways go in properly, and the best way to assure that is to keep the old ones fully lit up.@@"
<</if>>
<<else>>
Seated between your spread legs <<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> locks the dildo at full depth in your ass before temporarily disabling the vibration. You pant through your gag, trying to catch your breath as you adjust to the comparatively minimal stimulation of "merely" the massive dong filling you up, as compared to the cacophony of vibration-sucking-stroking that accompanied the shrinking of your penis.
<</if>>
<br><br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;You're doing great,@@" she states softly, "@@.npc_bodyshop_nurse;We'll be back to the fun soon but I need to get this precisely positioned so just stay still...@@"<br>
<br>
Bound as you are, movement was never really possible but you stare down as she
<<if $scene.procedure == "all">>
adjusts the cylinder around your cock to lie against your abs before she spreads a thin membrane over the area of your taint just behind your hard member.
<<else>>
carefully positions a small cup over what you can now only refer to as your clit before stretching a thin membrane out to cover the rest of what might be termed your "front bikini region."
<</if>>
You realise she was holding her breath in concentration when she finally leans back with a sigh. "@@.npc_bodyshop_nurse;There we go! Always tricky to get the machine aligned, but so important! We wouldn't want you to come out with a crooked cunt, after all!@@"<br>
<br>
You do not have a chance to react before a new pleasure takes hold, a gentle brushing that starts from your clit and moves downward. "@@.npc_bodyshop_nurse;So what's happening now is we're building up your new opening, reworking flesh into its new form. Once this step is done we'll sculpt your new unit and then, well... you'll be about ready to go!@@"<br>
<br>
You shudder softly, compared to the earlier nigh-overload the tender brushing is subtle, yet surprisingly intense as your mind fills in the gaps of it reworking your flesh...<br>
<br>
The nurse is constantly monitoring things both directly and through the machine, slowly dialing up the vibrations in your ass <<if $scene.procedure == "all">>and the suck-stroke of your shaft <</if>>until waves of intense pleasure are rocking through your entire body, the long, thick dong locked at full depth as it churns up your insides.<br>
<br>
"@@.npc_bodyshop_nurse;Very good, everything looks ready to get to work...@@"<br>
<br>
You gasp as she places a gloved finger against the rubber matrix between your legs, and then she pushes. You moan as a single rubber-coated finger slides into your body, your flesh parting before it as she slowly slides one knuckle, then the next into your body. "@@.npc_bodyshop_nurse;Feels good, doesn't it?@@" She says with a smile, gently wiggling her finger<<if $scene.procedure == "all">>and sending a whole new sort of spark through your body<<else>> as her thumb reaches up to tease your captive clit<</if>>. "@@.npc_bodyshop_nurse;Your body is taking to the procedure wonderfully... now let's build you something beautiful!@@"<br>
<br>
You moan with lust as a second finger joins her first and you experience a different sort of orgasm spreading out from your nascent vagina. Her fingers are gentle, but firm as they build out your love cavern. The vibrations in your ass continue non-stop, potent enough to move through her fingers and blur her every touch.<br>
<br>
You moan as her fingers slide out of you, only to shudder anew as she gently shapes your folds, pinching your labia into existence with efficient skill before curling two fingers back inside and moving them in a gentle circle that builds your pleasure higher and higher...<br>
<br>
You've far lost track of orgasms by this point but this one feels like the strongest yet, even when the dildo suddenly withdraws from your ass<<if $scene.procedure == "all">> as the cylinder freezes in place<</if>> and you are left with nothing but her fingers making gentle circles inside of you. "@@.npc_bodyshop_nurse;Mmm, this is going to be a lovely g-spot, I can tell. A wonderful joy button... for a wonderful <<switch $player.identify_as>><<case "female" "">>girl<<case "male">>boy<<case "fluid" "agender">>patient<</switch>>...@@"
<<else>>
"@@.npc_bodyshop_surgeon;So this next procedure is quite delicate — we're going to form your new vagina, and we want it to be perfect, not misaligned, or crooked or anything. So just remain calm, and we'll be back to the fun parts soon enough...@@"<br>
<br>
Between copious restraints and the large dildo at full penetrative depth in your rear you feel very much pinned in place but you try to control yourself and watch as he
<<if $scene.procedure == "all">>
adjusts the cylinder containing your <<getWordMyPenis>> to rest against your abs before he spreads a thin membrane over the area of your taint just below your hard member.
<<else>>
places a small nub over your clit before stretching a rubbery membrane over the rest of your "front bikini region."
<</if>>
He makes a few adjustments before being satisfied with how everything is situated and then he presses a button on the machine. You feel a gentle brushing running from just above your clit to a few centimetres below.<br>
<br>
"@@.npc_bodyshop_surgeon;So what we're doing now is reworking your flesh at the molecular level to prepare it for its new form. This is a special non-surgical technique that I helped pioneer myself and, well... I think you're going to just love the results...@@"<br>
<br>
The brushing sensation slightly speeds up, and feels like its moving deeper into your body, as <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> re-activates the dildo in your rear, leaving it locked deep but steadily increasing the intensity of its vibrations until it feels like your entire body is shaking.<br>
<br>
You're so distracted by the brushing/buzzing between your legs that you don't realise <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> has stepped away until he re-appears rolling what you can only call a fucking machine between your legs — carefully aligning the thin protruding dildo just below your encased clit. "@@.npc_bodyshop_surgeon;Nice and gentle now...@@" He states as the dildo slowly extends, pressing against the membrane between your legs for a moment before pushing into your body.<br>
<br>
The feeling is euphoric, the thin penetration somehow so much more intense than the massive dildo churning away in your ass<<if $scene.procedure == "all">> and the cylinder sucking and stroking your <<getWordMyPenis>><</if>>. Focused on his work more than your reaction <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> stares at the dildo as it slides deeper, using a remote to control its pace. He pauses it but a couple centimetres deep before slowly withdrawing, adjusting and then sliding it a little deeper.<br>
<br>
With each thrust of the machine you feel your new genitals take form, the dildo pushing flesh aside each time it enters you to slowly drift you a love canal. As the artificial phallus moves deeper you feel it change shape, swelling slightly inside of you, building out your vaginal walls before pulling back, your pleasure growing each time it spreads your love cavern out a little further. More and more of the dildo disappears into you until finally it, like the still-buzzing dong in your ass, locks in place, a shroud snapping forward to cover the rest of the region as the previous rhythmic pace is increased to a jackhammering intensity<<if $scene.procedure == "all">>, that you realise perfectly matches the rhythm of the cylinder stroking your over-hard <<getWordMyPenis>><</if>>.<br>
<br>
You feel something pinch your flesh, pulling it out and folding it in to form your labia major and minor; additional sensitive bits to be stimulated by the constant brushing as you are machine fucked and vibrated with mind-blowing intensity. The quick thrusts of the machine suddenly shift to sharp, pounding insertions that almost make the entire chair rock. A final thrust locks the dildo in place as it slightly swells, sudden pressure against what you realise is your g-spot magnified a hundredfold by
<<if $scene.procedure == "all">>
intense stimulation that seems to run straight up and through your <<getWordMyPenis>> before looping back in a self-reinforcing cycle.
<<else>>
simultaneous vibration against clit and g-spot, the sensations running between the two nodes of joy almost unfathomable.
<</if>>
<</if>>
<br><br>
The pleasure emanating from your new g-spot is too much. The orgasm you have been anticipating hits with the force of a train, washing over you and pushing your frayed psyche to the breaking point.<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
</div>/*#
#desc: bodyshop genital surgery add penis
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")+2>>
<<applyExperience 'anal' _anal 'terrible' $SEEN_STRANGER>>
<<set $player.body_ref.penis = true>>
<<set $player.body.penissize[1] = 3>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.penis_add = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.penis_add = true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
You're already feeling stretched and full as <<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> attaches a clear cylinder just above your <<if $scene.procedure == 'penis'>>new <</if>>vag. A matrix of lasers trace over the area as your <<if $scene.procedure == 'penis'>>skin begins to pucker<<else>>clit puckers<</if>>, and begins to lengthen into a smooth, featureless rod.<br>
<br>
Your "new" penis lengthens, your already massive <<if $scene.procedure == 'all'>>dual plugs<<else>>plug<</if>> seeming to push on it from the inside as the column of flesh rises from your body, growing and thickening until it is over a dozen centimetres long, pressing against the sides of the cylinder as the currently smooth tip slots into the end of its chamber.<br>
<br>
<<if $fetish.sounding>>
You gasp as a switch is thrown and some of the most intense stimulation you've ever felt swirls around your new cock-head. You moan around your gag as a narrow tube is pressed into the end of the cylinder, opening up your urethra as unseen mechanisms shape your cock-head.<br>
<br>
The rod completely inserted <<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> holds it there for a moment, giving it a slight twist before pulling it free, its exit followed a moment later by a burst of cum as your new member is christened in orgasm.
<<else>>
You gasp as a switch is thrown and some of the most intense stimulation you've ever felt swirls around your new cock-head. You moan around your gag as <<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> holds the cylinder in place, the sensation building to almost imaginable heights before they give it a slight twist and pull it free, its removal followed later by a torrent of cum as your new member is christened in orgasm.
<</if>>
<br><br>
<<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> takes a few moments to inspect things from all sides, tweaking a few knobs that send fresh vibrations to stimulate your sensitive new <<getWordMyPenis>> before <<if $scene.nurse>>she<<else>>he<</if>> finally seems satisfied, deflating your <<if $scene.procedure == 'all'>>dual<<else>>massive<</if>> plug and withdrawing the cylinder so that your new cock pops free.<br>
<br>
You pant, the mere brush of air intense on your new flesh as the <<if $scene.nurse>>nurse<<else>>surgeon<</if>> gently moves it around before raising it towards your flat belly.<br>
<br>
[<<moveTo "event_bodyshop_genital_surgery_balls_add" "Continue." 1800>>]
</div><<if $npc_bodyshop_nurse.flags.assessment.style == "hard_force">>
<<switch $scene.procedure>>
<<case 'tiny'>>
<<set $scene.allowProcedure = $npc_bodyshop_nurse.flags.assessment.genitals == 'tiny'>>
<<case 'average'>>
<<set $scene.allowProcedure = $npc_bodyshop_nurse.flags.assessment.genitals == 'average'>>
<<case 'large'>>
<<set $scene.allowProcedure = $npc_bodyshop_nurse.flags.assessment.genitals == 'large'>>
<<case 'giant_cock'>>
<<set $scene.allowProcedure = $npc_bodyshop_nurse.flags.assessment.genitals == 'giant_cock'>>
<<case 'penis' 'balls'>>
<<set $scene.allowProcedure = ['tiny','average','large','giant_cock'].includes($npc_bodyshop_nurse.flags.assessment.genitals)>>
<<case 'cunt'>>
<<set $scene.allowProcedure = $npc_bodyshop_nurse.flags.assessment.genitals == 'cunt'>>
<<case 'remove_penis'>>
<<set $scene.allowProcedure = $npc_bodyshop_nurse.flags.assessment.genitals == 'cunt'>>
<<case 'remove_cunt'>>
<<set $scene.allowProcedure = ['tiny','average','large','giant_cock'].includes($npc_bodyshop_nurse.flags.assessment.genitals)>>
<<case 'all'>>
<<set $scene.allowProcedure = $npc_bodyshop_nurse.flags.assessment.genitals == 'all'>>
<<case 'breasts'>>
<<switch $npc_bodyshop_nurse.flags.assessment.breasts>>
<<case 'none'>>
<<set $scene.allowProcedure = $scene.breast_size == 0>>
<<case 'normal'>>
<<set $scene.allowProcedure = $scene.breast_size >= 2 && $scene.breast_size <= 4>>
<<case 'huge'>>
<<set $scene.allowProcedure = $scene.breast_size >= 8>>
<</switch>>
<<case 'balls'>>
<<set $scene.allowProcedure = ['tiny','average','large','giant_cock','all'].includes($npc_bodyshop_nurse.flags.assessment.genitals)>>
<<case 'noballs'>>
<<set $scene.allowProcedure = $npc_bodyshop_nurse.flags.assessment.genitals == 'noballs'>>
<<case 'normal'>>
<<set $scene.allowProcedure = ['tiny','average','large','giant_cock','all'].includes($npc_bodyshop_nurse.flags.assessment.genitals)>>
<<case 'dragon_upgrade' 'knot' 'horse'>>
<<set $scene.allowProcedure = ['giant_cock','all'].includes($npc_bodyshop_nurse.flags.assessment.genitals)>>
<<case 'cum'>>
<<set $scene.allowProcedure = $npc_bodyshop_nurse.flags.assessment.cum == $scene.cum_rate>>
<<default>>
<<set $scene.allowProcedure = true>>
<</switch>>
<<if !$scene.allowProcedure>>
<<initRoom>>
<<moveTo "event_bodyshop_force_abort">>
<</if>>
<</if>>/*#
#desc: bodyshop hard force procedure rejected
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
The <<=setup.getNpcName("npc_bodyshop_nurse","title")>> frowns.<br>
<br>
"@@.npc_bodyshop_nurse;I am sorry, but what you just requested does not match your file. For one of your... condition, it would be against your medical plan to deviate from perfection in such a way. If you think about it, I am sure you will understand.@@"<br>
<br>
Your objections fall on deaf ears as she escorts you out of the building.<br>
<br>
[<<moveTo "room_bodyshop_exterior" "Leave." 60>>]
</div>/*#
#desc: operation prep non-forced
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "checkBodyshopForced">>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.nurse>>
The nurse rises to her feet and
<<else>>
The nurse smiles. "@@.npc_bodyshop_nurse;In that case, let me just summon him and he'll attend to the rest of your procedure. Our goal, as always, is to make your procedure as comfortable as possible.@@"<br>
<br>
A moment later <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> appears at the door and gestures for you to follow him.<br>
<br>
He
<</if>>
leads you up the hall to the surgery room, helping you up onto a padded seat before thoroughly strapping you down, complete with your legs spread and secured to stirrups and a gag helping to keeping you from turning your head.<br>
<br>
<<if $scene.nurse>>
Your heart beats slightly faster as <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> tenderly brushes your cheek. "@@.npc_bodyshop_nurse;There we go, all ready to start the procedure.@@"
<<else>>
Feeling more than a bit helpless you tremble slightly but he smiles down at you has he double-checks your restraints. "@@.npc_bodyshop_surgeon;Just relax, and think about the wonderful new you that will soon be walking out of this room.@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_genital_surgery_root" "Continue." 1800 "<<set $scene.only_nurse = true>>">>]
</div>/*#
#desc: operation pr-op sleep
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "checkBodyshopForced">>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.plug = "">>
<<set $scene.nurse = $options.fem>>
<<if $scene.cage != "">>
<<set $scene.chastityLevel = setup.getChastityLevel()>>
<<set $scene.isCage = setup.isCage()>>
<<removeItem $scene.cage true>>
<<set $scene.removeCage = true>>
<<if $scene.chastityLevel != 5>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "">>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<else>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "">>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
The nurse smiles at your request, leading you up the hall and guiding you to lay down on a gurney.<br>
<br>
Rolling a machine over next to you she places a mask over your mouth and nose before turning a dial on the attached machine to release a sweet-smelling gas. Mere moments pass before your eyes begin to feel heavy, a soft, contentedness spreading through your body as you drift into sleep on fluffy clouds of quiet delight.<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "Sleep." 14400>>]
</div>/*#
#desc: bodyshop genital surgery remove vag
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.vagina_remove = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.vagina_remove = true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.nurse>>
The nurse produces an odd-looking textured plug, slathering it with lube before sliding it into your waiting cunt. An inflation hose attached to the base of the plug she begins squeezing, the object steadily swelling inside of you, seeming to conform to your every nook and cranny as it grows almost to the point of discomfort.<br>
<br>
"@@.npc_bodyshop_nurse;Just be a moment for it to finish binding with your flesh...@@" She explains as you feel a slight warmth as the inner walls of your vagina start to adhere to the intruder. "@@.npc_bodyshop_nurse;This is a bit like turning a bag inside-out, pull out your old organ, shift the rest of things down there back into position and then smooth you out. That should do it, lets make sure its got a good seal.@@"<br>
<br>
She taps a button and the softball sized intruder filling your cunt starts rattling like a magic eight-ball, making you moan in pleasure as she gives the whole thing a slight wiggle. "@@.npc_bodyshop_nurse;Looking good, now to prevent collapse while we do the extraction.@@"<br>
<br>
Before you can process her words she has shoved a large, smooth plug into your ass, the dual fullness making your eyes go wide as you moan in pleasure.<br>
<br>
You feel the front plug slowly deflate, only to be precisely mirrored by the rear one swelling, the walls of your vagina staying tight to the plug as it shrinks, your love cavern curling up on itself until she gently pulls the device away to leave behind fresh, smooth flesh.
<<else>>
The surgeon produces a strangely-textured plug, slathering it with thick lube before easily sliding it into your spread cunt. It feels pleasant, but not particularly large. At least not until he attaches a tube to the base and begins slowly inflating things.<br>
<br>
"@@.npc_bodyshop_surgeon;So for a clean, simple removal we'll basically be turning everything inside-out and taking it out, of course for that to work we have to get a good seal on everything.@@" You're gasping as the plug continues to swell, at least as big a soft-ball before it stops, feeling like it is precisely matching every contour of your insides. "@@.npc_bodyshop_surgeon;Just be a moment for the adhesive to set,@@" he continues, "@@.npc_bodyshop_surgeon;Just enough time to get the other part inserted.@@"<br>
<br>
You're taking quick, short breaths due to the almost-uncomfortable fullness, and then he shoves a large plug into your ass, the double-barrel stretching making your eyes go wide, and then roll back when both intruders begin vibrating strongly. "@@.npc_bodyshop_surgeon;The rear brace makes sure nothing collapses, looks like everything is nicely seated so we can get started on the extraction...@@"<br>
<br>
You moan in pleasure as the vibrating front plug starts to shrink, your love cavern closing in on itself at the same rate the plug in your rear swells even larger.<br>
<br>
Your eyes roll back at the ecstatic fullness until there is a gentle tug and the front plug is removed completely, leaving behind fresh, smooth flesh.
<</if>>
<br><br>
<<if $scene.procedure == 'penis'>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Very good,@@" she states, running a hand over your now perfectly-smooth crotch. "@@.npc_bodyshop_nurse;And now to give you a nice proper cock...@@"
<<else>>
"@@.npc_bodyshop_surgeon;Perfect, stage one complete,@@" he explains, running a hand over your perfectly smooth crotch. "@@.npc_bodyshop_surgeon;Now to move on to your new penis...@@"
<</if>>
<br><br>
[<<moveTo "event_bodyshop_genital_surgery_penis_add" "Continue." 1800>>]
<<else>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Very good, now to just make sure everything is still in order...@@" She
<<else>>
"@@.npc_bodyshop_surgeon;Everything is looking good, but to make a final systems check...@@" He
<</if>>
states, clicking a switch to cause the massive plug in your rear to burst into vibrations, the sudden intensity of stimulation making your vision flicker...<br>
<br>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
<</if>>
</div>/*#
#desc: bodyshop milk choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask if it would be possible to adjust your body's milk production rate?<br>
<br>
<<if !$player.body_ref.produced_milk && !($player.flags.mealplan.hormones != "none" && $player.body.breastsize[1] > 0)>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> frowns. "@@.npc_bodyshop_nurse;Technically, yes, but there are limits to even our procedures, producing milk is an ongoing function and it is fuelled both by endocrinology, and capacity... in other words you would require breasts, and some hormonal assistance.@@"
<<else>>
"@@.npc_bodyshop_nurse;Certainly... well, to a point. We can't have you violating the laws of physics TOO badly, so no sustained firehose functionality. What were you thinking of?@@"<br>
<br>
<<if $player.body_ref.milkProduction == 0>>
[@@.link_locked;You currently produce no milk.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_milk_2" "You would like to stop producing milk." 300 "<<set $scene.milk_rate=0>>">>]<br>
<</if>>
<<if $player.body_ref.milkProduction == 1>>
[@@.link_locked;You produce normal quantities of milk.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_milk_2" "You would like to produce a normal quantity of milk." 300 "<<set $scene.milk_rate=1>>">>]<br>
<</if>>
<<if $player.body_ref.milkProduction == 2>>
[@@.link_locked;You are already practically a hu-cow in your productivity.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_milk_2" "You want to be a productive hu-cow." 300 "<<set $scene.milk_rate=2>>">>]<br>
<</if>>
<<if $player.body_ref.milkProduction == 3>>
[@@.link_locked;Thanks to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> procedure you are producing a nigh-inexhaustible quantity of milk.@@]<br>
<</if>>
<</if>>
<br>
[<<moveTo "room_bodyshop" "You changed your mind about getting anything done today." 300>>]
</div>/*#
#desc: bodyshop milk choice
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = 100 + 100*$scene.milk_rate>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> nods. "@@.npc_bodyshop_nurse;That procedure will cost <<=$scene.price>> — who would you like to perform it, myself, or <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>?@@"<br>
<br>
She pauses and glances down at her tablet.
<<if $player.flags.mealplan.hormones == 'none'>>
"@@.npc_bodyshop_nurse;Oh, and note that even with these changes your body is not going to really produce milk without a proper hormone balance... and unfortunately for you neither I nor my partner are endocrinologists.@@"
<<else>>
"@@.npc_bodyshop_nurse;I would note that to produce milk you would also need a proper hormone balance... which you seem to have, so keep that up.@@"
<</if>>
<br><br>
<<if $player.money.total < $scene.price>>
[@@.link_locked;Unfortunately <<=$scene.price>> is more than you can afford.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_milk_3" "You would like the doctor to do things himself." 7200 "<<set $scene.nurse=false>>">>]<br>
[<<moveTo "event_bodyshop_milk_3" "You would prefer the feminine touch of the nurse." 7200 "<<set $scene.nurse=true>>">>]<br>
[<<moveTo "event_bodyshop_milk_4" "You'd rather be unconscious for the whole procedure." 600 "<<set $player.body_ref.milkProduction = $scene.milk_rate>><<addCredits `-($scene.price)`>>">>]<br>
<</if>>
<br>
[<<moveTo "room_bodyshop" "You changed your mind about getting anything done today." 300>>]
</div>/*#
#desc: bodyshop milk tweak operation
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<include "removeCage_retractSissyomatic">>
<<set $scene.removeCage = true>>
<<set $scene.reduce = $player.body_ref.milkProduction > $scene.milk_rate>>
<<set $player.body_ref.milkProduction = $scene.milk_rate>>
<<switch $scene.milk_rate>>
<<case 0>>
<<set $player.timebased.milking.milk_supply = 0>>
<<case 1>>
<<set $player.timebased.milking.milk_supply = 50>>
<<case 2>>
<<set $player.timebased.milking.milk_supply = 90>>
<</switch>>
<<if $scene.reduce>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.milk_reduce = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.milk_reduce = true>>
<</if>>
<<else>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.milk_increase = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.milk_increase = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
The nurse instructs you to stand and strip as she
<<if $scene.nurse>>
momentarily disappears from the room, returning pushing a small cart, a pair of large breast cups connected to multiple hoses sitting atop it.<br>
<br>
Once you're stripped she lowers a bar from the ceiling and attaches one limb to either end, strapping your hands tight around the wrist and over the palm
<<else>>
leaves the room. Just as you finish removing your clothes <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> walks in pushing a small cart, a pair of large breast cups connected to multiple hoses sitting atop it.<br>
<br>
He parks the cart and then lowers a bar from the ceiling. You hands are attached to either end of the bar, strapped tight around the wrist and over the palm
<</if>>
in a set of built-in suspension cuffs. There is a soft machine whir as the bar rises towards the ceiling, stopping with you just shy of a full hang, your feet barely on the ground in a very minimal, but quite restrictive, position.
<br><br>
Turning to the cart <<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> spreads a thick gel over the edge of each small cup before placing one over each of your nipples, a gentle suction holding them in place.<br>
<br>
After checking that the small cups are secure <<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> pulls out a pair of hemispherical half-globes, attaching these over and around your entire breasts so that it looks like you have a pair of giant clear globes bolted onto your body.<br>
<br>
<<switch $scene.milk_rate>>
<<case 0>>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Alright, you just hang in there,@@" she says with a wink. "@@.npc_bodyshop_nurse;We just need to drain away whatever milk you have stored up, then a bit of special radio-therapy to non-surgically turn off the milk factories.@@"<br>
<br>
She hits a switch on the machine and you gasp as it feels like a pair of soft lips begin suckling on your nipples, the pressure around your breasts overall oscillating gently along with a pleasant warmth.
<<else>>
"@@.npc_bodyshop_surgeon;Now to start draining you...@@" he states, adjusting a dial on the machine that causes it to feel like a pair of soft lips are suckling your nipples. You moan softly, feeling even more sensitive when the pressure around your outer breasts begins oscillating gently along with a pleasant warmth.<br>
<br>
"@@.npc_bodyshop_surgeon;Once you're drained this routine will turn off your body's biological urge to produce more, nice and simple, like mothballing a factory.@@"
<</if>>
<br><br>
Though you are braced for something more extreme the procedure is remarkably gentle. As your remaining milk is drained away you feel your breasts deflate, but the cycling pressure has them swell anew as you realise it has spurred fresh tissue growth to take the place of your milk stores...<br>
<br>
You close your eyes and relax, hanging surprisingly comfortably in your bonds and a bit disappointed when there is a soft pop of the seal breaking as the first of the breast devices is removed.
<<case 1>>
<<if $scene.nurse>>
<<if $scene.reduce>>
"@@.npc_bodyshop_nurse;So we're going to bring you down gentle from your current... copious production.@@" She states, adjusting a dial on the machine to cause a sensation akin to soft lips suckling your nipples. "@@.npc_bodyshop_nurse;Your body instinctually wants to work at this level, so it's really just a matter of getting it a nudge to put it back on track.@@"
<<else>>
"@@.npc_bodyshop_nurse;So today should be pretty easy for you — your body has been running itself a bit ragged to keep up with the copious production rate you demanded, so getting it back "down" to the normal range will be just a gentle nudge.@@" As she explains she adjusts a dial on the machine to cause a sensation akin to soft lips suckling your nipples. "@@.npc_bodyshop_nurse;See, doesn't that feel nice?@@"<br>
<br>
You bite your lip and nod, enjoying the pleasant stimulation tickling your nipples.
<</if>>
<<else>>
<<if $scene.reduce>>
"@@.npc_bodyshop_surgeon;So we're going to bring you down gentle from your current... copious production.@@" She states, adjusting a dial on the machine to cause a sensation akin to soft lips suckling your nipples. "@@.npc_bodyshop_nurse;Your body instinctually wants to work at this level, so it's really just a matter of getting it a nudge to put it back on track.@@"
<<else>>
"@@.npc_bodyshop_surgeon;Simple procedure today — just a matter of spurring your breasts to resume what they want to do naturally.@@" he explains as he adjusts a dial on the machine to cause a sensation akin to soft lips suckling your nipples.
<</if>>
<</if>>
<br><br>
Though you are braced for something more extreme the procedure remarkably gentle. The outer cups begin pressurising and warming your whole breasts as the smaller ones work eagerly away at your nipples, but none of it is too intense, almost relaxing, really.<br>
<br>
Swaying slightly you close your eyes and relax. You hang surprisingly comfortably in the simple restraints, and are actually a bit disappointed when there is a soft pop of the seal breaking as the first of the breast devices is removed.
<<case 2>>
You gasp as the small cups over your nipples begin aggressively sucking like a pair of needy lips suckling for your tasty milk.<br>
<br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Sorry, dear, but to get the level of production you asked for we're going to have to ride you a bit hard. As amazing as the human body is, it isn't necessarily the most clever thing, which means the best way to get it to up the production rate to the stratospheric level you desire is, well... to milk you like a dairy cow.@@"
<<else>>
"@@.npc_bodyshop_surgeon;I am afraid today's procedure, while not painful, will be... intense. We need to show those lovely mammaries of yours that production quotas have changed, and the only way to do that is, well... to expose them to aggressive demand. In laymen's terms, we're going to milk you like a dairy cow.@@"
<</if>>
<br><br>
You moan, almost losing your footing to momentarily dangle from your wrists as the outer cups start their suction as well, a combination that feels like warm hands massaging your breasts while your nipples are aggressively suckled.<br>
<br>
You pant like a marathon runner as the milk starts to flow, your remaining stores slurped away in minutes as you feel your breasts struggling to keep up with the unrelenting mechanical demand.<br>
<br>
You turn to <<if $scene.nurse>><<=setup.getNpcName("npc_bodyshop_nurse","formal")>><<else>><<=setup.getNpcName("npc_bodyshop_surgeon","formal")>><</if>> to beg for mercy, but instead find a rubber nipple, your own milk fed back to you as you moan and try to psychically command your breasts to catch up.<br>
<br>
After a long period of dryness there is another spurt of milk from your left breast, joined a few moments later by one from your right before a steady trickle begins, the stream steadily increasing as your chest factories steadily rise to the increased production demands.
<<default>>
ERROR: unexpected scene.milk_rate <<=$scene.milk_rate>>
<</switch>>
<br><br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;All done!@@" She states, lowering you to the ground and removing the suspension cuffs. "@@.npc_bodyshop_nurse;I'll just leave you to get changed, then.@@" She adds, gathering up her equipment and wheeling the cart out of the room.
<<else>>
"@@.npc_bodyshop_surgeon;And there you are,@@" he states, lowering you to the ground and removing the suspension cuffs. "@@.npc_bodyshop_surgeon;Take as long as you need to catch your breath and get changed.@@" He adds while he gathers up his equipment before wheeling the cart out of the room.
<</if>>
<br><br>
[<<moveTo "event_bodyshop_milk_4" "Get dressed and leave." 300>>]
</div>/*#
#desc: bodyshop milk tweak post-op
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.llocation == "event_bodyshop_milk_3">>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
Alone, you take a moment to inspect your breasts,
<<switch $scene.milk_rate>>
<<case 0>>
enjoying how aggressive you can get teasing your nipples without a single trace of milk to make a mess of things.
<<case 1>>
enjoying the pleasant fullness, and the knowledge that your fun-bags can also be productive.
<<case 2>>
teasing your nipples, which seem to have gotten even more sensitive. Giving your breasts a gentle squeeze you can tell already that going much further would be liable to have you leaking.<br>
<br>
<<printThought "Moo!, Who's a hu-cow now?">>
<<default>>
ERROR: unexpected scene.cum_rate <<=$scene.cum_rate>>
<</switch>>
<br><br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
[<<moveTo "room_student_quarter" "Leave the bodyshop." 180>>]
<<else>>
[<<moveTo "room_student_quarter" "Put your clothes back on and go." 180 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: bodyshop choose fantastical penis upgrade
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask the nurse if it might be possible to upgrade your penis?<br>
<br>
<<if setup.getChastityLevel() == 5 && (!$currentTasks.hasOwnProperty('task_sissyomatic_steal') || !$currentTasks.task_sissyomatic_steal.finished)>>
She signals for you to expose yourself and then frowns.<br>
<br>
<<include "bodyShopSissyomaticLecture">><br>
<br>
[<<moveTo "room_bodyshop" "Guess you're stuck how you are." 60>>]
<<elseif $player.body.penissize[1] < 6>>
She shakes her head. "@@.npc_bodyshop_nurse;While we do offer some... experimental procedures they require a certain quantity of material to work with. To put it in laymans terms — you would first need a giant cock.@@"<br>
<br>
[<<moveTo "event_bodyshop_huge_genitals" "Ask about a penis enlargement." 60>>]<br>
[<<moveTo "room_bodyshop" "Guess you'll stay how you are." 60>>]
<<else>>
She smiles. "@@.npc_bodyshop_nurse;Yes, we do offer a few more... exotic alterations for our well-hung clientele. Current options are to go fully inhuman with a more equine-inspired design... or we can give you a canine-style knot... or both for what some refer to as a dragon cock.@@"<br>
<br>
<<if $player.body_ref.knot || $player.body_ref.horsecock>>
<<if $player.body_ref.knot && $player.body_ref.horsecock>>
[@@.link_locked;You already have a huge, full-featured dragon cock.@@]<br>
<<else>>
[<<moveTo "event_bodyshop_penis_2" 'Upgrade to a full dragon dick — <<=setup.getProcedurePrice("dragon_upgrade")>> credits.' 300 "<<set $scene.procedure='dragon_upgrade'>>">>]<br>
<</if>>
[<<moveTo "event_bodyshop_penis_2" 'Actually... you would like to go back to a normal cock for <<=setup.getProcedurePrice("normal")>> credits.' 300 "<<set $scene.procedure='normal'>>">>]<br>
<<else>>
[<<moveTo "event_bodyshop_penis_2" 'Upgrade yourself with a nice knot — <<=setup.getProcedurePrice("knot")>> credits.' 300 "<<set $scene.procedure='knot'>>">>]<br>
[<<moveTo "event_bodyshop_penis_2" 'Convert your penis to something more equine. <<=setup.getProcedurePrice("horse")>> credits.' 300 "<<set $scene.procedure='horse'>>">>]<br>
[<<moveTo "event_bodyshop_penis_2" 'Go for a fantastical dragon cock <<=setup.getProcedurePrice("dragon")>> credits.' 300 "<<set $scene.procedure='dragon'>>">>]<br>
<</if>>
<br>
[<<moveTo "room_bodyshop" "On second thought, you'll stay how you are." 60>>]
<</if>>
</div>/*#
#desc: bodyshop choose fantastical penis upgrade
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.procedure = 'giant_cock'>>
<<include "checkBodyshopForced">>
<<set $scene.price = setup.getProcedurePrice('giant_cock')>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
You ask the nurse about upgrading to a suitably massive cock in preparation for future "enhancements." She smiles. "@@.npc_bodyshop_nurse;Of course we can accommodate you, such a procedure runs <<=$scene.price>> credits. If that is acceptable the only remaining question is how you would like to have it done — by me, by <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>>... or while you are obliviously unconscious?@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
<<printThought "That's, like... a lot, but what better investment could there be than cock? Well... maybe a cock that was fucking you...">>
<<else>>
<<printThought "That's like, a lot, but my mouth is already watering at the thought of looking down on you massive new member...">>
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
<<printThought "Wow, do I really want to spend that much on my cock?">>
<<else>>
<<printThought "Wow, that's a lot of money...">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_bodyshop_wake_1" "Say you would rather not be conscious to experience the transformation." 300 "<<addCredits `-($scene.price)`>><<if $player.money.total < 0>><<setThreshold 'bimbofication' 'spending_money' 'penis'>><<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>><</if>>">>]<br>
[<<moveTo "event_bodyshop_genital_surgery_root" "Say you would like her to work on you today." 300 "<<set $scene.only_nurse = true>><<set $scene.nurse=true>><<addCredits `-($scene.price)`>><<if $player.money.total < 0>><<setThreshold 'bimbofication' 'spending_money' 'penis'>><<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>><</if>>">>]<br>
[<<moveTo "event_bodyshop_genital_surgery_root" "You would prefer the doctor to perform the procedure." 7200 "<<set $scene.only_nurse = true>><<set $scene.nurse=false>><<addCredits `-($scene.price)`>><<if $player.money.total < 0>><<setThreshold 'bimbofication' 'spending_money' 'penis'>><<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>><</if>>">>]<br>
<br>
<<if setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;You can't pass up the opportunity to bring a bigger, better cock into the world. Karma will surely, like, pay you back seven-fold?@@]
<<else>>
[<<moveTo "room_bodyshop" "On second thought, you'll stay how you are." 60>>]
<</if>>
</div>/*#
#desc: bodyshop choose who to perform fantastical penis upgrade
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = setup.getProcedurePrice($scene.procedure)>>
<</if>>
<<set $player.location to "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
The nurse nods at your decision.
<<switch $scene.procedure>>
<<case "horse">>
"@@.npc_bodyshop_nurse;A nice big horse-cock, yes, we can certainly handle that.@@"
<<case "knot">>
"@@.npc_bodyshop_nurse;A nice thick canine cock. That will knot be a problem — pun intended.@@"
<<case "dragon" "dragon_upgrade">>
"@@.npc_bodyshop_nurse;A fantastical "dragon" cock merging the best aspects of horse and dog. That will knot be a problem — pun intended.@@"
<<case "normal">>
"@@.npc_bodyshop_nurse;Reality turned out to be a bit more than the fantasy? Yeah, it's not a problem to take you back to a no-frills member.@@"
<<default>>
ERROR: unexpected scene.procedure <<=$scene.procedure>>
<</switch>>
<br><br>
She makes a note and smiles. "@@.npc_bodyshop_nurse;So, how would you like things to proceed for this procedure?@@"<br>
<br>
<<if $player.money.total < $scene.price>>
<<printThought "I really shouldn't be going into debt for this sort of thing... should I?">><br>
<br>
<</if>>
[<<moveTo "event_bodyshop_wake_1" "Say you would rather not be conscious to experience the transformation." 300>>]<br>
[<<moveTo "event_bodyshop_penis_3" "Say you would like her to work on you today." 300 "<<set $scene.nurse=true>>">>]<br>
[<<moveTo "event_bodyshop_penis_3" "You would prefer the doctor to perform the procedure." 7200 "<<set $scene.nurse=false>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;You can't pass up the opportunity to bring a bigger, better cock into the world. Karma will surely, like, pay you back seven-fold?@@]
<<else>>
[<<moveTo "room_bodyshop" "On second thought, you'll stay how you are." 60>>]
<</if>>
</div>/*#
#desc: get fantastical penis upgrade
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = setup.getProcedurePrice($scene.procedure)>>
<<addCredits `-($scene.price)`>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.plug = "">>
<<if $scene.cage != "">>
<<set $scene.chastityLevel = setup.getChastityLevel()>>
<<set $scene.isCage = setup.isCage()>>
<<removeItem $scene.cage true>>
<<set $scene.removeCage = true>>
<<if $scene.chastityLevel != 5>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<</if>>
<<else>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<</if>>
<<if $player.money.total < 0>>
<<setThreshold "bimbofication" "spending_money" "penis">>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set _anal = setup.getTotalValue("anal")+2>>
<<applyExperience 'anal' _anal 'unbelievable' $SEEN_STRANGER>>
<<set _oral = setup.getTotalValue("oral")+2>>
<<applyExperience 'oral' _oral 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'penis' 15 'terrible' $SEEN_STRANGER>>
<<switch $scene.procedure>>
<<case 'knot'>>
<<set $scene.knot=true>>
<<set $player.body_ref.knot=true>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.knot = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.knot = true>>
<</if>>
<<case 'horse'>>
<<set $scene.horsecock=true>>
<<set $player.body_ref.horsecock=true>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.horse = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.horse = true>>
<</if>>
<<case 'dragon_upgrade'>>
<<set $scene.knot = !$player.body_ref.horsecock>>
<<set $scene.horsecock = !$player.body_ref.knot>>
<<set $player.body_ref.knot=true>>
<<set $player.body_ref.horsecock=true>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.knot = true>>
<<set $npc_bodyshop_nurse.flags.procedures.horse = true>>
<<set $npc_bodyshop_nurse.flags.procedures.dragon = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.knot = true>>
<<set $npc_bodyshop_surgeon.flags.procedures.horse = true>>
<<set $npc_bodyshop_surgeon.flags.procedures.dragon = true>>
<</if>>
<<case 'dragon'>>
<<set $scene.knot=true>>
<<set $scene.horsecock=true>>
<<set $player.body_ref.knot=true>>
<<set $player.body_ref.horsecock=true>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.knot = true>>
<<set $npc_bodyshop_nurse.flags.procedures.horse = true>>
<<set $npc_bodyshop_nurse.flags.procedures.dragon = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.knot = true>>
<<set $npc_bodyshop_surgeon.flags.procedures.horse = true>>
<<set $npc_bodyshop_surgeon.flags.procedures.dragon = true>>
<</if>>
<<case 'normal'>>
<<set $scene.knot = !$player.body_ref.horsecock>>
<<set $scene.horsecock = !$player.body_ref.knot>>
<<set $player.body_ref.knot=false>>
<<set $player.body_ref.horsecock=false>>
<<applyExperience 'bdsm' 20 'terrible' $SEEN_STRANGER>>
<<if $scene.nurse>>
<<set $npc_bodyshop_nurse.flags.procedures.normal = true>>
<<else>>
<<set $npc_bodyshop_surgeon.flags.procedures.normal = true>>
<</if>>
<<default>>
ERROR: unexpected scene.procedure <<=$scene.procedure>>
<</switch>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nurse>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" setup.charImage("npc_bodyshop_surgeon")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> nods and has you strip before leading you to the surgery room.
<<if $scene.nurse>>
She has you step up onto a vertical frame, strapping your limbs and torso to the padded surface in a standing spread-eagle.<<if $scene.cage != "">> She double checks each of your restraints before dropping between your legs to remove your chastity device<<if $scene.plug != "">> and slide the plug out of you rear<</if>><<elseif $scene.plug!="">>She double checks your restraints before dropping between your legs to remove your anal plug.<</if>><br>
<br>
Wrapping a hand around your <<getWordMyPenis>> she gently strokes it to life and soon
<<else>>
"@@.npc_bodyshop_nurse;The doctor will be with you shortly.@@" She states before walking out.<br>
<br>
A moment later the surgeon appears, guiding you into position on a vertical frame where he soon has you securely strapped down in a standing spread-eagle.<<if $scene.cage != "">> Only after you are completely restrained does he remove your chastity device<<if $scene.plug != "">>and slide the plug out of you rear<</if>><<elseif $scene.plug!="">>Only after you are completely restrained does he reach between your legs to remove your anal plug.<</if>><br>
<br>
With literal surgical precision his fingers slide up and down your massive <<getWordMyPenis>>, bringing it to full size so that
<</if>>
it is sticking proudly out from your body. A tight cockring is snapped around the base of your member, keeping you even harder as it even more puts your package on display.<br>
<br>
<<if $scene.procedure != "normal">>
A jennings gag is positioned between your teeth, and then slowly ratchets open until your jaw is at its limit, your head tilted back and held in an angle aligned with your throat as an ominous foreshadowing of what is about to come...<br>
<br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;So, part of making sure your body does not reject these, admittedly radical, enhancements is to literally train it to consider such things normal. There have been a number of papers written on the best way to manage this, most of them focused on slow, gradual changes enhanced with therapy... our novel technique takes things in a different, more intense direction and has so far had better than a 96% success rate, plus, well... it's just fun!@@"<br>
<br>
You gulp and she smiles in comfort. "@@.npc_bodyshop_nurse;Don't worry, I promise you'll enjoy it, I know I did — we personally test every technique before we deploy it to patients... this one, in particular, well... I may have insisted on multiple trials to make sure I had a "full" understanding of what our patients would be going through...@@"
<<else>>
"@@.npc_bodyshop_surgeon;Don't be alarmed. You see the challenge with the sort of radical enhancement you have requested is getting the body to accept the new implement. Certainly your conscious mind has requested the upgrade, but your subconscious and unconscious... well, it used to be that the standard was to have you go through weeks of gradual changes, supported by therapeutic suggestion but now, with the techniques we employ here? We'll have you in your new form in a few hours... a few VERY intense hours.@@"<br>
<br>
You gulp but he smiles comfortingly. "@@.npc_bodyshop_surgeon;If it helps, we have tested all the techniques we employee personally, so as to better understand the patient perspective.@@"
<</if>>
<br><br>
<</if>>
You hear a whir of machine between your legs as <<if $player.body_ref.vagina>>a pair of dildos slide into your lower holes<<else>>a thick dildo slides into your ass<</if>>. The artificial <<if $player.body_ref.vagina>>cocks<<else>>cock<</if>>
<<switch $scene.procedure>>
<<case 'knot'>>
<<if $player.body_ref.vagina>>lock<<else>>locks<</if>> inside of you and then swell, <<if $player.body_ref.vagina>>dual knots<<else>>a large knot<</if>> "locking" you full and causing you to moan. Before your body can adjust to this new fullness you glance up to see <<if $player.body_ref.vagina>>a third<<else>>another<</if>> dildo appear out of the darkness above you, the realistically textured head moving past your lips and over your tongue before the base swells with a mouth-filling knot that forces you so wide the jennings gag's ratchet clicks once more.<br>
<br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;There we go, <<if $player.body_ref.vagina>>three<<else>>two<</if>> big, beautiful examples of what you're soon going to have for your own. Can you feel your body already adjusting? Learning that a nice thick knot is natural and perfect?@@"
<<else>>
"@@.npc_bodyshop_surgeon;Feeling nice and full?@@" He asks, a query you have no way to respond to given how full your mouth is. "@@.npc_bodyshop_surgeon;The intensity is part of the process — we have to show your body that a nice thick knot is completely normal so that it will fully embrace having one of its very own.@@"
<</if>>
<<case 'horse'>>
<<if $player.body_ref.vagina>>thrust<<else>>thrusts<</if>> deep inside of you and you look up to see <<if $player.body_ref.vagina>>a third<<else>>another<</if>> dildo descend from the darkness above — a long, thick, horse-cock flopping slightly as it makes its way past your gag and deep into your throat.<br>
<br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;There we go, stuffed full with <<if $player.body_ref.vagina>>three<<else>>two<</if>> big, beautiful horse-cocks. Does it make you even more eager to have one of your own? It should, that's the whole point of this wonderful procedure...@@"
<<else>>
"@@.npc_bodyshop_surgeon;Feeling nice and full?@@" He asks, a query you have no way to respond to given how full your mouth is. "@@.npc_bodyshop_surgeon;The intensity is part of the process — we have to show your body that a nice long horse-cock is completely normal so that it will fully embrace having one of its very own.@@"
<</if>>
<<case 'dragon_upgrade' 'dragon'>>
stuffs you to the max and you look up as a <<if $player.body_ref.vagina>>third<<else>>second<</if>>, and presumably final cock descends from the ceiling. Gloriously thick and long it is like no mortal member, incorporating aspects of horse and dog into the fantastical perfection of what a cock could be.<br>
<br>
With your mouth forced wide by the gag you have no way of resisting its intrusion, in fact, you find yourself drooling in anticipation as it joins its lower <<if $player.body_ref.vagina>>twins<<else>>twin<</if>> in filling your body, the dildos penetrating you deep before swelling, <<if $player.body_ref.vagina>>a trio of knots<<else>>dual knots<</if>> "locking" you in place from both directions.<br>
<br>
<<if $scene.nurse>>
"@@.npc_bodyshop_nurse;Doesn't that feel just wonderful? I know its intense, but I've been in your shoes before and, let me tell you, you'll be dreaming of this moment for the rest of your life...@@"
<<else>>
"@@.npc_bodyshop_surgeon;You're doing great. The intensity of the experience is a requirement to guarantee acceptance.@@"
<</if>>
<<case 'normal'>>
<<if $player.body_ref.vagina>>lock<<else>>locks<</if>> inside of you and then swell. A large gag is tightened between your teeth to complete your bondage and then
<<if $scene.nurse>>
she wheels over a large machine. Using both hands she lifts a massive cylinder even longer than her forearm, carefully slotting it over your equally gargantuan cock.
<<else>>
he wheels over a large machine. He almost looks to struggle with the weight as he lifts a massive cylinder over your equally gargantuan cock.
<</if>>
Straps connect the device to the ceiling and, for a change, you are no longer burdened by the heavy weight of your large package.<br>
<br>
Half a dozen different hoses are screwed into the sides of the large cylinder<<if $fetish.sounding>> before a long rod is inserted through the end. Sliding down your urethra it "completes" the situation of your member being totally contained<</if>>.<br>
<br>
<<if $scene.nurse>>
<<=setup.getNpcName("npc_bodyshop_nurse","formal")>> takes a step back and reaches for an ominously large switch. "@@.npc_bodyshop_nurse;Alright, let's make you human again.@@" She
<<else>>
<<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> takes a step back and reaches for an ominously large switch. "@@.npc_bodyshop_surgeon;I know its intense, but it is the only way.@@" He
<</if>>
pulls the switch and you immediately strain in your bonds, crying out in pain as fiery electricity runs in, around, and through every centimetre of your giant dong. Mysterious liquid is pumped through the cylinder, obscuring your vision, but you feel as if your cock is being scoured with acid and you thrash, biting down on your gag as tears stream down your cheeks.
<<default>>
ERROR: unexpected scene.procedure <<=$scene.procedure>>
<</switch>>
<br><br>
<<if $scene.procedure != "normal">>
You moan as the dildos begin to softly rock in place. Humming to <<if $scene.nurse>>herself the nurse<<else>>himself the surgeon<</if>> seals a large cylinder over your raging erection<<if $fetish.sounding>>, complete with a long urethral sound that has you intimately filled and ramrod straight<</if>>.<br>
<br>
<<if $scene.knot && $scene.horsecock>>
Your mouth is so full your moan barely escapes and your eyes roll back in ecstasy as <<if $player.body_ref.vagina>>your lower occupants begin<<else>>your anal occupant begins<</if>> to vibrate and a ring of pleasure begins swelling around the base of your cock as your "new" knot swells and your cock starts to take on its new, fantastical shape...
<<elseif $scene.horsecock>>
Your mouth is so full your moan barely escapes and your eyes roll back in ecstasy as <<if $player.body_ref.vagina>>your lower occupants begin<<else>>your anal occupant begins<</if>> to vibrate and you feel your foreskin pull back and your frilled tip begins to grow as your member takes on more equine aspects.
<<elseif $scene.knot>>
Your mouth is so full your moan barely escapes and your eyes roll back in ecstasy as <<if $player.body_ref.vagina>>your lower occupants begin<<else>>your anal occupant begins<</if>> to vibrate and a ring of pleasure begins swelling around the base of your cock as your "new" knot swells...
<<else>>
ERROR: unexpected state
<</if>>
<br><br>
Filled, sucked, probed and pounded from all directions you lose count of muffled, screaming orgasms before it all becomes too much and your consciousness flickers...<br>
<br>
<</if>>
[<<moveTo "event_bodyshop_wake_1" "You pass out." 1800>>]
</div>/*#
#desc: turn over sissyomatic plans
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemOwned('sissyomatic_plans')>>
<<if setup.checkItemInInventory('sissyomatic_plans')>>
<<deleteItem 'sissyomatic_plans'>>
<<completeTask 'task_sissyomatic_steal' $now true>>
<<else>>
<<applyExperience 'bimbofication' 7 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Bodyshop Waiting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_lobby.png" $scene.bodyshop_nurse_art>>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('task_sissyomatic_steal') && $currentTasks.task_sissyomatic_steal.finished>>
You turn over the data crystal with the complete schematics to the 9001-series chastity devices.<br>
<br>
"@@.npc_bodyshop_nurse;Oh!, I can't wait to get this analysed!@@" She plugs it into her terminal and you watch her eyes dart back and forth across the screen. "@@.npc_bodyshop_nurse;What an astounding piece of engineering... I think we can crack it in time for your next procedure, though.@@"
<<elseif setup.checkItemOwned('sissyomatic_plans')>>
You tell <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> that you obtained a copy of the schematics to the 9001-series chastity devices. Her eyes light up with excitement, only to darken when you confess that you forgot to bring them with you.<br>
<br>
"@@.npc_bodyshop_nurse;Well we can't do anything with them if we don't have them to look at! Do please be delivering them as soon as possible. Without the plans, well... there's nothing we can do as far as procedures down there.@@"<br>
<br>
<<printThought "Why am I such a ditz?">>
<<else>>
You bring up the topic of the 9001-series chastity devices.<br>
<br>
"@@.npc_bodyshop_nurse;No luck at obtaining schematics, I take it?@@" <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> asks. You shake your head.<br>
<br>
"@@.npc_bodyshop_nurse;I wish there was another way without all this corporate skullduggery but... that device is just too advanced to even try touching without the plans. All I can really say is help me, <<=$player.first_name>> <<=$player.last_name>>, you're my only hope.@@"
<</if>>
<br><br>
[<<moveTo "room_bodyshop" "Discuss something else." 60>>]
</div>/*#
#desc: help npc_work_doctor in the lab; make a copy of sissyomatic plans
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("smart") > 7 || setup.hasTmpEffect('bimbo_suppressant')>>
<<addItem 'sissyomatic_plans'>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("smart") > 7 || setup.hasTmpEffect('bimbo_suppressant')>>
You quickly load up the schematics to the 9001-series chastity devices and spool off a copy to a convenient data crystal.<br>
<br>
<<printThought "Now I just need to deliver it to the New U bodyshop...">>
<<else>>
You try to find schematics for the 9001-series chastity devices but can't seem to figure out where such is stored in the system.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought "Like... when did computers get so, like, tricky?">>
<<else>>
<<printThought "When did computers get so, like, complicated?">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_work_doctor_help_lab_4_sissyomatic_2" "Just leave." 60>>]
</div>/*#
#desc: Talk with acolyte first time after her promotion to full nun
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_acolyte.stage = 7>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_acolyte","npc_acolyte_4")>>
<div id="invframe" class="scrolltext">
"@@.npc_acolyte;<<=$player.first_name>>!@@" <<=setup.getNpcName('npc_acolyte', 'first')>> practically shouts as she scoops you up into a hug, pulling you in and kissing you passionately, her tongue showing off some new moves as it slips past your lips. "@@.npc_acolyte;Mmmm, I missed that — being gagged does feel good, and really helped me focus on my training but... well I do so love kissing pretty girls.@@"<br>
<br>
You blush at the compliment, congratulating her on completing her training as you admire her gleeful beauty. You had almost forgotten how pretty her smile is having only seen her gagged for the last while.<br>
<br>
"@@.npc_acolyte;Yup! Oh, being a full-fledged sister is so wonderful, every day I wake up eager to discharge my holy duties and every night and go to bed satisfied, either tightly bound or wrapped in the arms of one of my sisters — sometimes even both!@@"<br>
<br>
You aren't quite sure how to respond to her casual comment as to the kinky things she and her fellow nuns get up to. "@@.npc_acolyte;Anyway, hate to jet, but I've got an assignment I should be getting to. I'll, like, see you around. Maybe next time we can have a bit of fun together, like old times!@@"<br>
<br>
She gives you a parting kiss, and another hug that involves a firm butt-squeeze before dashing off, ballet heels peeking out past her robe as she skips across the cathedral. You spend a few moments watching her go before continuing on your way.<br>
<br>
[<<moveTo "event_church_root" "Move on." 300>>]
</div>/*#
#desc: church prayer, determine acolytes plumbing
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Communal Prayer Room in the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_acolyte.stage = 3>>
<<if $npc_acolyte.flags.mtf>>
<<applyExperience 'oral' $npc_acolyte.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_acolyte","npc_acolyte_2") setup.charImage("npc_nun_constance","npc_nun_constance_modest")>>
<div id="invframe" class="scrolltext">
<<if $npc_acolyte.flags.mtf>>
Once free of the panties and shrink-wrapped jeans that had contained it <<=ps(setup.getNpcName('npc_acolyte', 'first'))>> cock springs eagerly to life for you to wrap your lips around. Her precum is thin and delicate, her skin having that wonderful smooth mouthfeel that you've come to adore.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You waste no time showing off all of your skill, alternating between tongue and throat as you go deep with each thrust.
<<else>>
You slurp her lovely cock down your throat with ease, looking up at her with a smile as you work your lips up and down her shift.
<</if>>
Her prayers steadily descend into a mumbled mess as she starts going a bit cum-drunk.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
Your skill just sufficient to take her modest length without gagging too awkwardly you alternate licking and sucking her tip with attempts at deepthroating, drool flowing somewhat freely as you do your best to service her.
<<else>>
You may be a novice, but she seems more than appreciative as you take her into your mouth and to lick and kiss.
<</if>>
The whole time she continues praying, interspersing praise for yourself alongside exultation of the Goddess.
<</if>>
<br><br>
Still sucking away you feel her shift, someone else sliding underneath, raising her hips and sliding their cock into <<=ps(setup.getNpcName('npc_acolyte', 'first'))>> ass. <<=setup.getNpcName('npc_acolyte', 'first')>> gasps, nearly overcome with this new dimension of pleasure and you pause your sucking for a moment, whispering a prayer to the Goddess while you give <<=setup.getNpcName('npc_acolyte', 'first')>> a chance to adjust to the rod now filling her back door.<br>
<br>
Your restraint doesn't last for long as you soon hungrily descend on <<=ps(setup.getNpcName('npc_acolyte', 'first'))>> <<getWordPenis false>>, holding her back as long as you can before she can take it no more and she rewards you with a wet mouthful of girl-cum.<br>
<br>
Gobbling it all up you swish it back and forth as you crawl forward, managing a somewhat awkward three-way kiss between yourself, <<=setup.getNpcName('npc_acolyte', 'first')>> and the other woman still filling her from behind.<br>
<br>
"@@.npc_acolyte;Praise the Goddess...@@" she moans when the three of you have finished splitting her
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
delicious
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
tasty
<<else>>
surprisingly tasty
<</if>>
<</if>>
seed.
<<else>>
Peeling back her moist panties your lips meet hers, your tongue sliding between her folds as her whispered prayers become more hurried. Working with just your mouth you circle her clit and lap up her delicious oozing juices pausing only to quickly suck in a quick breath before pressing your face back between her thighs.<br>
<br>
Engrossed in your work you feel her suddenly shift, her hips raised as another person slides under her. Pulling back to see what is going on you see a flash of cock before the hard member plunges up into <<=ps(setup.getNpcName('npc_acolyte', 'first'))>> rear hole. You get only a moment to admire the sight of the firm <<getWordPenis false>> thrusting into her when <<=ps(setup.getNpcName('npc_acolyte', 'first'))>> hand is on your head, guiding you back to work as pleasure overtakes <<=setup.getNpcName('npc_acolyte', 'first')>> and her prayers descend into mumbled nonsense.<br>
<br>
You remain between <<=ps(setup.getNpcName('npc_acolyte', 'first'))>> thighs until she gushes her joy into your mouth, her climax seeming timed with a final thrust below that sees a thick load deposited deep in her rear love canal.<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'first')>> goes mostly limp, looking up at you with a happy drunk expression on her face as you rise to your feet. Looking around the room it seems like the rest of your fellow worshippers are in a similar state.
<</if>>
<br><br>
With some assistance from <<=setup.getNpcName('npc_nun_constance', 'formal')>> the quasi-orgy comes to a conclusion, you and the other women helping each other back into your clothing, embracing and wishing each other well as you continue on with your day.<br>
<br>
[<<moveTo "event_church_root" "Return to the church narthex." 120>>]
</div>/*#
#desc: inducted into church lvl 1
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<div id="invframe" class="scrolltext">
<<if $scene.kneel>>
You drop to your knees in obedience, trembling in the presence of the towering nun.
<<else>>
Despite <<=ps(setup.getNpcName('npc_sissy_superior', 'formal'))>> imposing stature and aura of dominance you remain on your feet, looking proudly up at her.<br>
<br>
A faint smile flickers on her face, as if impressed by your boldness.
<</if>>
<br><br>
She slowly paces in front of you as your eyes flit around, taking in the small chapel, the walls painted with scenes of feminine beauty and strength even more erotic than those in the stained glass windows of the main chapel.<br>
<br>
"@@.npc_sissy_superior;This is known as the Lady Chapel. Of course all of our chapels are dedicated to the feminine power of the Goddess, but this room, is particularly dedicated to her virginity aspect. Not in the literal sense, although sexual denial can be quite the potent offering and there is no shame in willing virginity, no, this room is used for matters of spiritual innocence. Take yourself, despite your enthusiasm you are as yet a neophyte to our faith.@@"<br>
<br>
Stopping in front of you she smiles tenderly. "@@.npc_sissy_superior;Well, let that officially come to an end<<if $scene.kneel>>, rise and<</if>> be blessed, knowing that you are recognised as a friend of the Goddess. In time you may become so much more, but know that you are seen, and welcomed, to continue your journey in faith.@@"<br>
<br>
You <<if $scene.kneel>>stand and <</if>>thank her as some of your nervous tension dissipates and she continues in a more casual tone. "@@.npc_sissy_superior;So, my child. How have you been enjoying your experience thus far in our wonderful church?@@"<br>
<br>
[<<moveTo "event_church_advancelvl1_2" "Say you love it and are eager to learn more about the faith." 300 "<<set $scene.theme='eager'>>">>]<br>
[<<moveTo "event_church_advancelvl1_2" "Say you find it a bit strange, yet intriguing." 300 "<<set $scene.theme='curious'>>">>]<br>
[<<moveTo "event_church_advancelvl1_2" "Say you find it all kind of weird." 300 "<<set $scene.theme='reluctant'>>">>]
</div>/*#
#desc: inducted into church lvl 1 — respond what you think so far
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.church.level = 1>>
<<set $daily.church_count += 1>>
<<set $daily.church_priest=false>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<div id="invframe" class="scrolltext">
<<switch $scene.theme>>
<<case 'eager'>>
You enthusiastically explain how much you enjoy coming to the Church of the Goddess, how every experience is even more exciting than the last.<br>
<br>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> smiles down at you, gently patting your head benevolently. "@@.npc_sissy_superior;Ah, I love that sort of enthusiasm. Hold onto it, for it will serve you well. Know that you have barely scratched the surface of our faith, there are depths and secrets ahead of you that... oh, but it is better for you to learn of such things on your own, at the appropriate time.@@"
<<case 'curious'>>
You explain that you find her faith quite interesting, though some of the things have been a bit... surprising.<br>
<br>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> smiles down at you, gently patting your head benevolently. "@@.npc_sissy_superior;Joyful surprises, I should hope, I encourage you to continue your investigation, know that you have barely scratched the surface of our faith, there are depths and secrets ahead of you that... oh, but it is better for you to learn of such things on your own, at the appropriate time.@@"
<<case 'reluctant'>>
You explain that many things you have seen and heard have been quite strange.<br>
<br>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> nods in understanding. "@@.npc_sissy_superior;Yes, yes, many of our practices are certainly... outside the norm, but who is to say that normal is correct, hmm? I note that, despite these misgivings, you have continued to enjoy our services and I welcome you to continue to do so. Know that you have barely scratched the surface of our faith, there are depths and secrets ahead of you that... oh, but it is better for you to learn of such things on your own, at the appropriate time.@@"
<<default>>
ERROR, unknown scene.theme <<=$scene.theme>>
<</switch>>
<br><br>
Leaning down she gently kisses your forehead, her lips warm and leaving a tingle running through your body as she gently pulls away.<br>
<br>
"@@.npc_sissy_superior;Go, my child with my blessing and that of the Goddess. When you are ready to continue further in your development and prove yourself worthy of full membership speak to <<=setup.getNpcName('npc_priest', 'formal')>>. <<He npc_priest>> will test to see if you are truly ready for what we can offer.@@"<br>
<br>
Bowing gratefully you turn to go only for her to call after you.<br>
<br>
"@@.npc_sissy_superior;Oh, and <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>? I know well the road that you are traveling, for I, and many of my Sisters, have traveled it before. Know that you are supported in your journey, and that your personal journey is in every way valid and wondrous.@@"<br>
<br>
Almost struck speechless by the compassion and support infused into her words you whisper a quiet "@@.pc;Thank you,@@" before exiting the small chapel.<br>
<br>
[<<moveTo "event_church_root" "Return to the church narthex." 120 "<<set $scene.lvl1promotion=false>>">>]
</div>/*#
#desc: ask to be inducted into church lvl 2 (full member) - visual check
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<<set $scene.qualified = $player.flags.church.activities.prayer[1] >= 2 && $player.flags.church.activities.group_prayer[1] >= 2 && $player.flags.church.activities.meditation[1] >= 2 && $player.flags.church.activities.class[1] >= 2 && $player.flags.church.activities.confession[1] >= 2>>
<<set $scene.passvisual = ["expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "ultimatebimbo", "qtpie"].includes(setup.getCurrentMakeup()) && $player.makeup.messed < 15 && setup.analyzeWornTags(['female','male','unisex']) == 'female' && setup.getItemObjFromType("shoes").hasOwnProperty('heels')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_priest', 'formal')>> looks at you with a gentle smile.
<<if !$scene.qualified>>
"@@.npc_priest;Such enthusiasm! I think you would benefit from additional practice, and time spent studying our ways. While the Goddess supports listening to yourself and not being stunted by an excess of caution, she also rewards patience and enjoying the journey rather than rushing for the destination. Spend some more time around the church and then speak with me again.@@"<br>
<br>
[<<moveTo "event_church_root" "Return to the church narthex." 120>>]
<<else>>
"@@.npc_priest;You would become a full member of our church? Hmmm, a lovely prospect, let us see if you are up to the task, come, follow.@@"<br>
<br>
Trailing after the <<priest npc_priest>> <<he npc_priest>> leads you to the familiar small "Lady Chapel" adjacent to the main church chamber.<br>
<br>
Softly closing the door to give the two of you privacy <<he npc_priest>> turns to look at you. Inspecting you from head to toe <<he npc_priest>> makes a slow circle around you before making <<his npc_priest>> judgement.<br>
<br>
<<if $scene.passvisual>>
"@@.npc_priest;Lovely, simply lovely. Heels, makeup, a nice feminine style... this is exactly how I would expect an acolyte to look. Of course looks are only enough to get you in the door, it is actions that prove you belong...@@"<br>
<br>
<<He npc_priest>> smiles and gives a slight nod. "@@.npc_priest;So, show me what you have learned, prove to me that you have internalised the lessons of the Goddess.@@"<br>
<br>
<<printThought "Hmm... given everything I've seen so far I'm pretty sure this is a sex thing... Unless...">><br>
<br>
[<<moveTo "event_church_priest_lvl2promotion_2" "Drop to your knees and open your mouth." 300 "<<set $scene.hole='mouth'>>">>]<br>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_church_priest_lvl2promotion_2" "Bend over and present your rear hole." 300 "<<set $scene.hole='rear'>>">>]<br>
<<else>>
[@@.link_locked;You lack the experience to make an anal offering.@@]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if !$player.virgin.vaginal>>
[@@.link_locked;You lack experience to offer up your vagina.@@]<br>
<<else>>
[<<moveTo "event_church_priest_lvl2promotion_2" "Spread your legs." 300 "<<set $scene.hole='vag'>>">>]<br>
<</if>>
<<else>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
<<if !$player.virgin.vaginal>>
[@@.link_locked;You may have your key, but you lack experience to offer up your vagina.@@]<br>
<<else>>
[<<moveTo "event_church_priest_lvl2promotion_2" "Produce the key to your belt and spread your legs." 300 "<<set $scene.hole='vag'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You would need to come back sometime when you were not in chastity to offer that up.@@]<br>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_church_priest_lvl2promotion_2" "Reveal your secured embrace of holy chastity." 300 "<<set $scene.hole='chaste'>>">>]<br>
<</if>>
[<<moveTo "event_church_priest_lvl2promotion_2" "Say you're not prepared for that sort of test." 300 "<<set $scene.hole='fail'>>">>]
<<else>>
<<=setup.getNpcName('npc_priest', 'formal')>> shakes <<his npc_priest>> head in obvious sadness. "@@.npc_priest;I apologise, Sister but... how to put it delicately... while you are certainly a lovely woman, the expectations we have are, well... higher. Becoming a full member of the Church means a certain level of devotion to our teachings and well appearances matter, as superficial as it may be "feminine beauty" is a core precept of our faith, dressing appropriately, using makeup to bring out one's best <<if setup.getCurrentMakeup() != "">>something striking, that really shows off personality<</if>>, wearing heels, of course... these are all sacraments, after a fashion.@@" <<He npc_priest>> smiles. "@@.npc_priest;Pun only somewhat intended. Anyway, think on this and return when you are better prepared.@@"<br>
<br>
You wince at the gentle rejection, thanking <<=setup.getNpcName('npc_priest', 'formal')>> for <<his npc_priest>> time before following <<him npc_priest>> out of the Lady Chapel.<br>
<br>
[<<moveTo "event_church_root" "Return to the church narthex." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: ask to be inducted into church lvl 2 (full member) - skills check
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = false>>
<<switch $scene.hole>>
<<case 'mouth'>>
<<set $scene.success = setup.getTotalValue("oral") > 10>>
<<applyExperience 'oral' $npc_priest.penis_size 'normal' $SEEN_FRIEND>>
<<case 'rear'>>
<<set $scene.success = setup.getTotalValue("anal") >= 10>>
<<applyExperience 'anal' $npc_priest.penis_size 'normal' $SEEN_FRIEND>>
<<case 'chaste'>>
<<set $scene.success = true>>
<<applyExperience 'bondage' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<changeHorny 50>>
<<case 'vag'>>
<<if $player.virgin.vaginal>>
<<set $scene.success = true>>
<<playerOrgasm>>
<</if>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
<<switch $scene.hole>>
<<case 'vag'>>
You flutter your eyelashes and then gently spread your legs in offering, peeling away your clothes <<if $player.body_ref.penis>>and holding your <<getWordMyPenis true>> to one side<</if>> to display your glistening <<getWordVagina>>.<br>
<br>
"@@.npc_priest;Such a beautiful offering.@@" The <<priest npc_priest>> says with a smile, "@@.npc_priest;May I?@@"<br>
<br>
You nod and <<he npc_priest>> steps closer, fingers tracing between your folds, <<his npc_priest>> tender touch masterfully finding your most sensitive parts until you gasp softly.<br>
<br>
"@@.npc_priest;Delightful. The Goddess smiles upon you for certain.@@"<br>
<br>
<<if !$player.virgin.vaginal>>
You nod, eager for more, only for the <<priest npc_priest>> to take a step back with a smile that is both beatific and subtly taunting.<br>
<br>
"@@.npc_priest;That will do, that will do wonderfully. It is rare that we get a true virgin applying to be a nun — the Goddess tends to attract those liable to be a bit more... worldly. I shall be watching you with great interest to see how her plans for you play out, but this...@@" <<He npc_priest>> holds up <<his npc_priest>> wet fingers and takes a gentle lick "@@.npc_priest;This is positive proof that you are ready to deepen your relationship with her.@@"
<<else>>
You nod as <<he npc_priest>> reaches under to lift your thigh, expert skill holding you balanced as <<his npc_priest>> cock slides into your waiting hole. You moan, burying your face into <<his npc_priest>> shoulder as the<<if $npc_priest.fem>> priestess' <<else>> priest's <</if>>perfect penis begins to thrust inside you.<br>
<br>
Your heart races faster and you cling to <<him npc_priest>> "@@.npc_priest;Yes, you are quite the delight... the Goddess approves, but let us give unto her a proper offering, hmm?@@"<br>
<br>
You shudder as <<he npc_priest>> lifts you off the ground, with one of <<his npc_priest>> arms around your waist you wrap your legs around <<him npc_priest>> for stability and the pace increases, your body shuddering with orgasm, with a second coming swiftly on its heels...<br>
<br>
You hear the <<priest npc_priest>> begin a prayer and you reflexively join in, your voice swinging up and down as you moan in pleasure.<br>
<br>
"@@.npc_priest;Praise unto the Goddess, for these orgasms and all of the pleasure that is hers to give. We exult you and praise you and welcome you into ourselves... Amen.@@"<br>
<br>
As the prayer comes to an end the <<priest npc_priest>> finally cums, your entire body squeezing tight around <<him npc_priest>> as you let out a silent scream of ecstasy.<br>
<br>
For a moment your consciousness flickers, overwhelmed with sensation in the brief instant of shared orgasm before you finally let out your breath and the <<priest npc_priest>> gently lowers your feet back to the ground.
<</if>>
<<case 'chaste'>>
You demurely reveal your <<=setup.getItemTypeName('cage')>> and <<=setup.getNpcName('npc_priest', 'formal')>> smiles.<br>
<br>
"@@.npc_priest;Now that is a lovely offering.@@" <<He npc_priest>> steps closer, <<his npc_priest>> hand gently <<if setup.isCage()>>cradling your caged <<getWordMyPenis false>><<else>>pressing against the unyielding shield of your chastity belt<</if>> "@@.npc_priest;As much as the Goddess adores the indulgence of her followers, a chaste offering of chaste restriction...@@"<br>
<br>
<<His npc_priest>> hand moves slightly, your <<if setup.isCage()>>cage<<else>>belt<</if>> shielding you from the sensation, and instead heightening your attention as <<he npc_priest>> whispers in your ear, the feeling of <<his npc_priest>> breath sending tingles down your spine. "@@.npc_priest;Locked and safe, unable to touch, only to fantasise, to indulge in total surrender without the fear of untoward climax... there is a reason a chastity device is a nigh-standard part of a nun's attire. It shields them against any moment of weakness and the world itself, while ever reminding them of their prized value. For you to embrace such a blessed state already...@@"<br>
<br>
<<His npc_priest>> lips brush behind your ear, the gentlest of kisses, but combined with <<his npc_priest>> hand still against the prison between your thighs your legs go weak, pressing against <<him npc_priest>> for stability as you swoon in chaste bliss.<br>
<br>
"@@.npc_priest;So delicate, so beautiful. Yes, you are certainly one blessed by the Goddess, and joyously welcomed even further into her embrace.@@"<br>
<br>
<<He npc_priest>> steps away and you take a deep breath, yearning with need <<if setup.isCage()>>inside your cage<<else>>under your belt<</if>>, but even more proud of the device's presence meaning that ensures you will retain that feeling of being owned and controlled. You curtsy in gratitude, it seems that you have "passed" <<his npc_priest>> test.
<<case 'mouth'>>
You've seen enough of this Church to understand the sort of "service" that will prove that you belong. Gracing <<=setup.getNpcName('npc_priest', 'formal')>> with a lusty smile you lick your lips and slide to your knees. Blinking up at <<him npc_priest>> you ask <<him npc_priest>> to "@@.pc;Please, consecrate my mouth with your holy member.@@"<br>
<br>
<<=setup.getNpcName('npc_priest', 'formal')>> steps forward, caressing your cheek with one hand while smiling down. "@@.npc_priest;Nothing would please me more, sister. Please, show me what you are capable of.@@"<br>
<br>
You smile, parting <<his npc_priest>> cotton robe to reveal the leather pants beneath. Unzipping the straining front panel with excitement you reveal one of the most beautiful cocks you have ever seen.<br>
<br>
Perfectly symmetrical, big enough to be exciting, but not so large as to be grotesque it is utterly flawless and the taste...<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
Though thin <<his npc_priest>> mere pre-cum is as rich and full-bodied in flavour as any you have tasted, and you eagerly run your tongue through <<his npc_priest>> slit as you commence proving yourself orally.
<<else>>
<<His npc_priest>> precum is like nothing you have ever tasted. A similar <<if $npc_priest.fem>>flavour to other<<else>>masculine strength to actual<</if>> cum and yet slightly smoother, more delicate and quite tasty...
<</if>>
<br><br>
Taking a deep breath of the heady mix of leather and cock that fills your nostrils you open your mouth and set to work.
<<if setup.getTotalValue("oral") > 10>>
Though lacking in size compared to what you have become skilled with <<his npc_priest>> cock remains a delight. It is firm and smooth and you bob enthusiastically, blinking up at <<him npc_priest>> in the way <<men npc_priest>> typically like as you use tongue and lips together. Deepthroating <<him npc_priest>> with each thrust you establish a rhythm, paying close attention to <<his npc_priest>> every reaction as you sense surprising levels of self control as <<he npc_priest>> holds back from the orgasm you seek to draw forth.<br>
<br>
As the blowjob draws out it becomes a contest of will — your cocksucking mastery against <<his npc_priest>> self control.
<<if setup.getTotalValue("oral") > 15>>
You hear a gasp and know that you're winning, smiling around <<his npc_priest>> cock and winking up at <<his npc_priest>> squinting, concentrating face as you turn things up even higher, humming in glee as you suck and lick, focusing on what you have identified as <<his npc_priest>> favourite actions until <<he npc_priest>> shudders and you are rewarded with a pleasant burst of cum.<br>
<br>
"@@.npc_priest;Oh, Goddess, I'm sorry, I meant to warn you, but you were so good...@@"
<<else>>
You do your best, but <<=setup.getNpcName('npc_priest', 'formal')>> manages to just barely remain in control, eyes half-closed in concentration as <<he npc_priest>> gently nods. "@@.npc_priest;I'm cumming@@" <<he npc_priest>> softly whispers and you wrap your lips tight and suck as <<he npc_priest>> pulses once, twice, thrice, half filling your mouth with creamy <<getWordCum>>.
<</if>>
<br><br>
Mouth half open you swirl <<his npc_priest>> cum back and forth with your tongue, showing off the <<if setup.getTotalValue("oral") > 10>>delicious<<else>>surprisingly tasty<</if>> cream before swallowing it in triumph.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You suck and lick, bobbing up and down <<his npc_priest>> shaft and attempting to deploy whatever tricks you have picked up. You can tell <<he npc_priest>> is enjoying it, but <<he npc_priest>> seems focused, holding back and resisting your still-amateur efforts. Watching you with an encouraging smile <<he npc_priest>> allows you to work for several minutes before finally pulling away. Shaking <<his npc_priest>> head <<he npc_priest>> slides <<his npc_priest>> member back into <<his npc_priest>> pants.
<<else>>
Though <<his npc_priest>> cock is surprisingly easy, almost natural to slurp on. You really don't know what you're doing, and it shows. You go until your jaw starts to cramp, but <<he npc_priest>> finally shakes <<his npc_priest>> head, pulling free of your lips and carefully stuffing <<his npc_priest>> beautiful member back into <<his npc_priest>> pants.
<</if>>
<br><br>
"@@.pc;I'm sorry—@@" you start, but <<=setup.getNpcName('npc_priest', 'formal')>> merely smiles comfortingly and shakes <<his npc_priest>> head.<br>
<br>
"@@.npc_priest;It is alright, sister. The Goddess's expectations are high and such things take practice. If it is within you, you will learn. Feel free to return to me when your skills have grown and you are ready to try again.@@"<br>
<</if>>
<<case 'rear'>>
You've seen enough of this church to understand the sort of "service" that will prove that you belong. Gracing <<=setup.getNpcName('npc_priest', 'formal')>> with a lusty smile you bend over and present your ass. Looking over your shoulder <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>you slide the plug out of your rear and hold your hole gaping and open as <</if>>you ask <<him npc_priest>> to "@@.pc;Please, consecrate my body with your holy member.@@"<br>
<br>
Stepping forward <<he npc_priest>> grasps your hips with both hands, lining <<his npc_priest>> cock up with ease and pressing it into your rear hole.
<<if setup.getTotalValue("anal") >= 10>>
Of mere modest size <<his npc_priest>> cock still feels wonderful, sliding into your trained hole with ease as you clench down just enough to make <<him npc_priest>> work.<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
Pressing up against <<him npc_priest>> you grind back and forth while your masterful butt muscles go to work, rhythmically squeezing <<him npc_priest>> from base to tip without <<his npc_priest>> cock every actually moving within you.<br>
<br>
"@@.npc_priest;Oh, Goddess...@@" <<He npc_priest>> moans to herald <<his npc_priest>> orgasm approaching. You clamp down hard as <<he npc_priest>> tries to pull back only for you to stay firmly attached as you work your hips, eager to feel <<him npc_priest>> flooding your ass.<br>
<br>
<<He npc_priest>> cums with a gasp and you purr in contentment, clenching nice and tight to prevent a single drop from escaping as <<his npc_priest>> softening cock slides out of your pert hole. You sigh, glad to have served <<him npc_priest>> so well, but saddened to now be empty.
<<else>>
Squeezing and pressing back you try to work with <<him npc_priest>> to provide the best ass-fuck you can. <<His npc_priest>> cock sliding in and out of your skilled hole you squeeze and shift moaning in pleasure each time <<he npc_priest>> presses against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as you let <<him npc_priest>> set the pace.<br>
<br>
You feel <<his npc_priest>> hands squeeze tighter around your <<if setup.checkItemTypeWorn("corset")>>corset-narrowed <</if>>waist and you redouble your efforts, clenching and rocking rhythmically until <<he npc_priest>> drives deep to inject you with cum.<br>
<br>
Holding against <<him npc_priest>> you whisper a soft "@@.pc;Thank you@@" almost at the same time <<he npc_priest>> says the same. Remaining locked together until <<his npc_priest>> pulsing cock goes still you sigh as <<he npc_priest>> slides out of you, glad to have served <<him npc_priest>> so well, but saddened to now be empty.
<</if>>
<br><br>
<<if setup.getItemFromType("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>You jam the plug back where it belongs and give a little tush wiggle. <</if>>Fixing your clothes you finally turn to face <<him npc_priest>>, <<his npc_priest>> expression telling you all you need to know about your success.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
You barely have to relax for <<his npc_priest>> smooth cock to slide into you. Moaning at how good it feels rubbing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> you start to fuck <<him npc_priest>>, deploying what skills you have to rhythmically clench and relax in hopes of getting <<him npc_priest>> off.<br>
<br>
Unfortunately for your plans <<he npc_priest>> just feels too good, and you find your own pleasure outpacing <<if $npc_priest.fem>>hers<<else>>his<</if>> as you build and build and then explode in analgasm, your legs giving out as you slump to the ground.<br>
<br>
Looking up you are surprised that, though <<his npc_priest>> cock remains erect and undrained, <<he npc_priest>> appears unbothered by the blue-balls your failure has resulted in. Smoothly stowing <<himself npc_priest>> back under <<his npc_priest>> robe <<he npc_priest>> reaches down with <<his npc_priest>> free hand to help you back to your feet.
<<else>>
Despite your novice skills <<he npc_priest>> slides into you with ease, <<his npc_priest>> cock smooth and just large enough for you to feel stretched. Unfortunately that is about your limit. You try to move your hips and give <<him npc_priest>> a good fuck, but you just can't relax. Giving <<him npc_priest>> a herky-jerky fuck you can tell it isn't doing much for <<him npc_priest>> and <<he npc_priest>> finally pulls away as you stagger away in shame.
<</if>>
<br><br>
"@@.pc;I'm sorry—@@" you start, but <<=setup.getNpcName('npc_priest', 'formal')>> gives your rear a friendly caress as <<he npc_priest>> <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>hands back your plug and <</if>>helps you fix your clothes.<br>
<br>
"@@.npc_priest;It is quite alright, Sister. The Goddess's expectations are high and such things take practice. If it is within you, you will learn. Feel free to return to me when your skills have grown and you are ready to try again.@@"
<</if>>
<<case 'fail'>>
You explain that, actually, you don't think you're ready for this sort of thing.<br>
<br>
Without a trace of anger or even disappointment <<=setup.getNpcName('npc_priest', 'formal')>> nods in understanding. "@@.npc_priest;Of course. The Goddess only desires the service of those willing to give themselves freely, she would never seek to coerce, only to present opportunities for the devout to rise to the occasion. If you ever change your mind, feel free to return. Her door, and mine, are always open to you.@@"
<<default>>
ERROR: unexpected scene.hole <<=$scene.hole>>
<</switch>>
<br><br>
<<if $scene.success>>
"@@.npc_priest;Very good.@@" <<He npc_priest>> states with a smile, "@@.npc_priest;You have certainly proven your skills, but devotion to the Goddess is mental as well as physical. Tell me, what passion of yours sets you apart and proves your devotion to her teachings?@@"<br>
<br>
<<printThought "Hmm, I doubt <<hes npc_priest>> asking if I'm a philatelist...">><br>
<br>
<<if setup.getTotalValue("penis") > 5>>
[<<moveTo "event_church_priest_lvl2promotion_3" "Tell <<him npc_priest>> how much you love cock." 300 "<<set $scene.fetish='penis'>>">>]<br>
<<else>>
[@@.link_locked;You do not have sufficient passion for penis to claim such as a specialization.@@]<br>
<</if>>
<<if setup.getTotalValue("cum") > 5>>
[<<moveTo "event_church_priest_lvl2promotion_3" "Tell <<him npc_priest>> how much you adore cum." 300 "<<set $scene.fetish='cum'>>">>]<br>
<<else>>
[@@.link_locked;You do not have sufficient thirst for cum to claim such as a specialization.@@]<br>
<</if>>
<<if $fetish.piss>>
<<if setup.getTotalValue("piss") > 5>>
[<<moveTo "event_church_priest_lvl2promotion_3" "Tell <<him npc_priest>> about your urophilia." 300 "<<set $scene.fetish='piss'>>">>]<br>
<<else>>
[@@.link_locked;You do not have sufficient love for urine to claim such as a specialization.@@]<br>
<</if>>
<</if>>
<<if $fetish.bestiality_hard>>
<<if setup.getTotalValue("bestiality") > 5>>
[<<moveTo "event_church_priest_lvl2promotion_3" "Tell <<him npc_priest>> about your special love for animals." 300 "<<set $scene.fetish='bestiality'>>">>]<br>
<<else>>
[@@.link_locked;You do not have sufficient experience with animals to claim such as a specialization.@@]<br>
<</if>>
<</if>>
<<if setup.getTotalValue("bdsm") > 5>>
[<<moveTo "event_church_priest_lvl2promotion_3" "Tell <<him npc_priest>> what a masochist you are." 300 "<<set $scene.fetish='bdsm'>>">>]<br>
<<else>>
[@@.link_locked;You are not enough of a masochist to claim such as a specialization.@@]<br>
<</if>>
<<if setup.getTotalValue("bondage") > 5>>
[<<moveTo "event_church_priest_lvl2promotion_3" "Tell <<him npc_priest>> how much you enjoy being bound and restrained." 300 "<<set $scene.fetish='bondage'>>">>]<br>
<<else>>
[@@.link_locked;You do not have sufficient love of bondage to claim such as a specialization.@@]<br>
<</if>>
<<if setup.getTotalValue("foot") > 5>>
[<<moveTo "event_church_priest_lvl2promotion_3" "Talk about how much you love feet." 300 "<<set $scene.fetish='foot'>>">>]<br>
<<else>>
[@@.link_locked;You are not enough of a podophile to claim such as a specialization.@@]<br>
<</if>>
[<<moveTo "event_church_priest_lvl2promotion_3" "Decline to say anything." 300 "<<set $scene.fetish='none'>>">>]
<<else>>
You thank <<=setup.getNpcName('npc_priest', 'formal')>> for <<his npc_priest>> time and <<he npc_priest>> leads you out of the Lady Chapel.<br>
<br>
[<<moveTo "event_church_root" "Return to the church narthex." 120>>]
<</if>>
</div>/*#
#desc: ask to be inducted into church lvl 2 (full member) - fetish check
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fetish != "none">>
<<if setup.getTotalValue($scene.fetish) > 10>>
<<set $player.flags.church.level = 2>>
<<if State.hasPlayed("theme_primrose_himself")>>
<<addNpcTheme 'npc_primrose' 'primrose' 'theme_primrose_religion'
0
'theme_primrose_religion'
true
>>
<</if>>
<</if>>
<<set _lvl = setup.getTotalValue($scene.fetish)>>
<<applyExperience $scene.fetish _lvl 'very' $SEEN_FRIEND>>
<<applyExperience "humiliation" _lvl 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
<<if $scene.fetish == 'none'>>
<<=setup.getNpcName('npc_priest', 'formal')>> shakes <<his npc_priest>> head. "@@.npc_priest;While your interest in the church is admirable, and your skills cannot be denied, being a full member of the Goddess's congregation is about the mental and spiritual as well as the physical. I advise you to consider your desires and look deeper into yourself before you come to me again.@@"
<<elseif setup.getTotalValue($scene.fetish) > 10>>
<<if setup.getTotalValue($scene.fetish) > 15>>
<<switch $scene.fetish>>
<<case 'penis'>>
You are starry eyed as you gush over your love of cock. <<if $scene.hole == "chaste">><<if $player.body_ref.penis>>You talk about the joy of your own being safely locked away like the treasure that it is.<<else>>You describe with reverence your appreciation for such ideal, even as you indulge in holy self-denial.<</if>><<else>>You lead off by describing <<=ps(setup.getNpcName('npc_priest', 'formal'))>>, how it felt <<if $scene.hole == "mouth">>and tasted <</if>>and how much you'd love the opportunity to worship it again.<</if>>
<<case 'cum'>>
Your mouth waters as you talk about how much you love the feel and taste of cum. <<if $scene.hole == "mouth">>In particular you thank <<him npc_priest>> for <<his npc_priest>> own delicious draught, describing every note of the rich brew<<else>>Gushing enthusiastically you hypothesise about how delicious <<his npc_priest>> own brew must be<</if>>.
<<case 'piss'>>
You lick your lips as you talk about how much you love feeling hot, steamy <<getWordPiss>> flowing over your body and down your throat. Gushing about how much you adore the bitter brew and the degradation that is being "forced" to shower in it you conclude by asking if, perhaps, <<he npc_priest>> is currently feeling the need to "relieve" <<himself npc_priest>>?<br>
<br>
<<He npc_priest>> declines the offer, but you can tell that <<he npc_priest>> was momentarily tempted.
<<case 'foot'>>
You talk about how beautiful feet are, how much you love to admire them, to massage them, to feel one pressed against your face, as well as how much you adore shoes, the higher heeled the better.
<<case 'bdsm'>>
You give a short soliloquy about the erotic joy of pain how, be it by crop or whip or bare hand, you love, in fact, need to experience harsh discipline to guide you and fulfill your existence.
<<case 'bondage'>>
You sigh in pleasant memory as you reminisce about your last bondage experience, how much you adore the feel of tight restraints biting into your skin and restricting your freedom. You describe your greatest fantasy, for your entire life to be filled with constant bondage, from stringent sleep restraints to waking up and going about your day at a minimum hobbled, collared and cuffed, preferably more.
<<case 'bestiality'>>
You explain that, though you certainly still love the touch of your own kind, that there is nothing quite like the primal energy of an animal, inhuman cocks pumping into you as you play the part of bitch, mare, vixen, molly or sow.
<<default>>
ERROR: error unknown scene.fetish <<=$scene.fetish>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_priest', 'formal')>> smiles, obviously aroused by your words. "@@.npc_priest;Lovely, you could teach some of the nuns a thing or two about passionate enthusiasm.@@"
<<else>>
<<switch $scene.fetish>>
<<case 'penis'>>
You smile with pleasure as you tell <<=setup.getNpcName('npc_priest', 'formal')>> how much you like <<getWordPenis>>.
<<case 'cum'>>
You lick your lips and tell <<=setup.getNpcName('npc_priest', 'formal')>> how much infatuated you are with <<getWordCum>>.
<<case 'piss'>>
You lick your lips and tell <<=setup.getNpcName('npc_priest', 'formal')>> how much you enjoy <<getWordPiss>>.
<<case 'foot'>>
You talk to <<=setup.getNpcName('npc_priest', 'formal')>> about all the things you love about feet, from the look to feel to all of the wonderful, sexy heels that can be worn upon them.
<<case 'bdsm'>>
You talk to <<=setup.getNpcName('npc_priest', 'formal')>> about your enjoyment of erotic pain and torture, how you feel sad if you are not "kept in line" with frequent spankings or the like.
<<case 'bondage'>>
You talk to <<=setup.getNpcName('npc_priest', 'formal')>> about how much you enjoy being tied up, bound or restrained, how the restriction of physical freedom brings you to new levels of mental bliss.
<<case 'bestiality'>>
You tell <<=setup.getNpcName('npc_priest', 'formal')>> about your developing "love" for animals, about how turned on you are at the prospect a nice equine or canine cock plunging into you.
<<default>>
ERROR: error unknown scene.fetish <<=$scene.fetish>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_priest', 'formal')>> nods in understanding, clearly impressed by your professed devotion.
<</if>>
<<elseif setup.getTotalValue($scene.fetish) > 5>>
<<switch $scene.fetish>>
<<case 'penis'>>
You try to convey your developing appreciation for <<getWordPenis>>, but you can tell you aren't making that convincing of a case.
<<case 'cum'>>
You talk about drinking <<getWordCum>>, but the way you involuntarily wince at the recollection of the flavour gives away the fact that you do not truly appreciate such.
<<case 'piss'>>
You talk about <<getWordPiss>>, but it's obvious that, even in light of what you've done, you find such a bit disgusting.
<<case 'foot'>>
You attempt to extol the wonders of feet but, after a bit of a diversion where you talked about your secret massage techniques you end up circling back without having demonstrated a true passion for the subject.
<<case 'bdsm'>>
You try to say that you've come to enjoy pain and punishment, but there's a quiver in your voice that gives away your lie.
<<case 'bondage'>>
You try to explain how much you've come to enjoy being restrained, but there's still a touch of hesitancy in your voice that makes your whole speech ring hollow.
<<case 'bestiality'>>
You explain how you fantasise about being "taken" by an animal, but your obvious lack of experience with the "real thing" is obviously unsatisfactory.
<<default>>
ERROR: error unknown scene.fetish <<=$scene.fetish>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_priest', 'formal')>> shakes <<his npc_priest>> head in disappointment. "@@.npc_priest;I am sorry, sister, but, though you appear to be on the correct road, you have not yet pushed yourself far enough.@@"
<<else>>
ERROR: should not be possible to get here.
<</if>>
<br><br>
<<if $player.flags.church.level == 2>>
Beaming with pride, <<=setup.getNpcName('npc_priest', 'formal')>> embraces you. "@@.npc_priest;Welcome to the Church of the Goddess. There is no question in my mind that you deserve to be a member of our congregation and I can only look forward to watching your further development in faith. As a full member you are welcome, and encouraged, to join us for Sunday service, please take it as an opportunity to dress your best — one never wishes to look slovenly in the Goddess's holy presence. In addition you will surely find all your favourite church activities to present you with new, more advanced opportunities to enjoy.@@"<br>
<br>
Recalling the kinky ways things have already developed you wonder how things will go now that the "gloves are off," as it were. Returning <<his npc_priest>> hug you can't help but grind against <<his npc_priest>> leg, one hand wandering south to caress <<his npc_priest>> cute butt only for <<him npc_priest>> to cut you off with a sharp slap on your own bottom.<br>
<br>
"@@.npc_priest;Naughty girl! Not that I do not appreciate the blessed enthusiasm but, well... I do need to return to ministering OTHER congregants. Good luck in your ongoing spiritual journey.@@"<br>
<br>
Smiling up at <<him npc_priest>>, you nod eagerly, skipping away out of the Lady Chapel, excited to see what doors your new membership will open.
<<else>>
<<=setup.getNpcName('npc_priest', 'formal')>> shakes <<his npc_priest>> head. "@@.npc_priest;While we are glad to see you here in the church to be invited to become a full member requires a certain passion that, I am sorry to say, you have not yet demonstrated. You have accomplished so much else, however, that I believe you will make it if you just put your mind to it. Please, feel free to talk to me any time if you would like another attempt to prove yourself.@@"<br>
<br>
Frustrated to come so close yet fall short you accept <<his npc_priest>> encouraging hug and depart the Lady Chapel.
<</if>>
<br><br>
[<<moveTo "event_church_root" "Return to the church narthex." 120>>]
</div>/*#
#desc: taken to get changed for lvl 3 promotion
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_fem_supreme', 'formal')>> smiles. "@@.npc_sissy_superior;Wonderful, I know our new Sister will be delighted for you to be there to witness her being welcomed into our ranks.@@" A nun appears at <<=ps(setup.getNpcName('npc_fem_supreme', 'formal'))>> side "@@.npc_sissy_superior;If you would please go with <<=setup.getNpcName('npc_nun_serenity', 'formal')>> she will help you prepare for the ceremony.@@"<br>
<br>
<<=setup.getNpcName('npc_nun_serenity', 'formal')>> graces you with a bow before leading the way through the cathedral. "@@.npc_nun_serenity;A nun's induction is such a beautiful ritual, you are quite privileged to be granted permission to attend. Of course, due to the holiness of the occasion, there are some requirements as to how you must present yourself. There is plenty of time, however, for you to get changed.@@"<br>
<br>
Wondering what fun new outfit you are in for you hurry along at her heels as she takes you through a hidden door into a small changing room.<br>
<br>
[<<moveTo "event_church_priest_lvl3promotion_2" "Time to get changed." 300>>]
</div>/*#
#desc: change into nun outfit for lvl 3 promotion
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet "nun_fetish">>
<<wearItemSet "nun_fetish">>
<<addItem "gag_church">>
<<wearItem "gag_church" true>>
<<set $scene.plug = setup.checkItemTypeWorn("plug")>>
<<set $scene.cage = setup.checkItemTypeWorn("cage")>>
<<if !$scene.plug>>
<<addItem "inflatable_plug">>
<<wearItem "inflatable_plug" true>>
<</if>>
<<if !$scene.cage>>
<<addItem "chastity_belt_church">>
<<wearItem "chastity_belt_church" true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_changing_room.png">>
<div id="invframe" class="scrolltext">
You gawk as you find yourself facing what looks like a complete latex nun's outfit — tight catsuit, gloves, face-obscuring habit and steep, shiny heels and you gasp, glancing at your escort in surprise.<br>
<br>
<<=setup.getNpcName('npc_nun_serenity', 'formal')>> smiles at your surprise and explains. "@@.npc_nun_serenity;Oh, don't worry, you will not be joining our order today, such a commitment involves more than just dressing the part as you will soon see. That said, this is the traditional garb for one witnessing such a wonderful event so come on, get out of those clothes and I will help you change.@@"<br>
<br>
Already excited by the sight of the latex outfit you quickly obey, stripping naked and reaching for the catsuit only for <<=setup.getNpcName('npc_nun_serenity', 'formal')>> to stop you.<br>
<br>
"@@.npc_nun_serenity;The enthusiasm is lovely, but there are a couple of other things to check first.@@"<br>
<br>
<<if $scene.plug && $scene.cage>>
Tapping <<if setup.isCage()>>your cage<<else>>the front of your belt<</if>> she reaches around to wiggle your plug before smiling in satisfaction. "@@.npc_nun_serenity;Lovely, so prepared! The ritual requires that all holes save the officiants' and the applicant's be filled, and all cocks to be safely locked up for the duration. Fortunately you seem already prepared!@@"
<<else>>
<<if $scene.cage>>
She taps <<if setup.isCage()>>your cage<<else>>the front of your belt<</if>> with a smile only to reach behind and frown when her finger slides into your rear hole unimpeded. "@@.npc_nun_serenity;Ooops! Looks like you're missing something back there. The ritual requires that all holes save the officiants' and the applicant's be filled, and all <<if $player.body_ref.penis>>cocks <</if>>to be safely locked up for the duration.@@"
<<elseif $scene.plug>>
<<if $player.body_ref.penis>>
She squeezes your unrestrained <<getWordMyPenis>>
<<else>>
She gropes your unprotected crotch
<</if>>
with a frown before reaching behind to wiggle your plug with a smile. "@@.npc_nun_serenity;Hmm, plugged, but without the protection of a chastity device. The ritual requires that all holes save the officiants' and the applicant's be filled, and all cocks to be safely locked up for the duration.@@"
<<elseif setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $player.body_ref.penis>>
She squeezes your unrestrained <<getWordMyPenis>>
<<else>>
She gropes your unprotected crotch
<</if>>
with a frown before half-smiling as she slides a finger in through your plug-gaped rear. "@@.npc_nun_serenity;Hmm, without the protection of a chastity device and gaped for use. The ritual requires that all holes save the officiants' and the applicant's be filled, and any nexus of pleasure to be safely locked up for the duration. While your plug may fill you, its design is against the spirit of the requirements, but that is simple to address.@@"
<<else>>
<<if $player.body_ref.penis>>
She squeezes your unrestrained <<getWordMyPenis>>
<<else>>
She gropes your unprotected crotch
<</if>>
with a frown before looking even more disappointed when she reaches behind and slides a finger into your rear hole unimpeded. "@@.npc_nun_serenity;Hmm, empty and without the protection of a chastity device. The ritual requires that all holes save the officiants' and the applicant's be filled, and all cocks to be safely locked up for the duration.@@"
<</if>>
<<if !$scene.cage>>
<br><br>
"@@.npc_nun_serenity;Let's get you safely secured first,@@" she states, producing a shiny new steel chastity belt.<br>
<br>
Made of steel the cool metal is sufficient to deflate you enough to get you situated, and you swiftly secured.<br>
<br>
"@@.npc_nun_serenity;Much better!@@" She states as she gives a gentle tug to make sure nothing is going to come loose.
<</if>>
<<if !$scene.plug>>
<br><br>
"@@.npc_nun_serenity;Fortunately I have just the thing to <<if setup.checkItemTypeWorn("hollow_plug")>>complete your partial rear occupancy<<else>>fix your current rear emptiness<</if>>.@@" With a smile she produces a smallish looking plug attached to a short hose. Dabbed with lube it easily slides into your rear she gives the bulb at the other end of the hose
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
a great number of squeezes, looking quite surprised at your happy, smiling expression even as the plug swells to mammoth proportions.
<<else>>
quite a number of squeezes, not stopping until your well-trained hole is feeling nice and stretched and full.
<</if>>
<br><br>
"@@.npc_nun_serenity;My, my, it appears someone is a well-trained butt-slut. How wonderful!<<if !setup.checkItemTypeWorn("hollow_plug")>> You should really consider being filled more often.<</if>>@@"
<<else>>
<<if setup.getTotalValue("anal") > 5>>
several squeezes, enough to have you feeling pleasantly "occupied."
<<else>>
a couple of squeezes, just enough to have your novice rear feeling quite full.
<</if>>
<br><br>
"@@.npc_nun_serenity;Hmm, seems like someone needs to spend more of their time training back there.@@"
<</if>>
<br><br>
Giving your rear a friendly squeeze as she makes sure the new plug is securely seated she detaches the inflation hose so that everything lays flat between your cheeks.
<</if>>
<</if>>
<br><br>
Producing a panel pecker gag she smiles. "@@.npc_nun_serenity;Of course, that still leaves one more hole, open wide my dear!@@"<br>
<br>
You do as instructed and she buckles the gag around your head, following up by helping you into the rest of the nun's attire, the latex hugging you like a second skin, covering every bit of you save your face, though even your gagged lips are obscured further by a latex half-mask.<br>
<br>
"@@.npc_nun_serenity;Beautiful.@@" <<=setup.getNpcName('npc_nun_serenity', 'formal')>> states, smoothing out a few wrinkles and giving your suit a quick polish, her hands rubbing against your rubber skin quite erotic as you start to sweat a little underneath and understand why the church is always kept so cool.<br>
<br>
She gives you a moment to admire yourself in a mirror, you really do look quite stunning in the tight latex, the fact that you are locked and double-filled having you even more excited.<br>
<br>
"@@.npc_nun_serenity;Hmm, forget what I said earlier, you really should consider joining our order, that outfit looks just perfect on you.@@"<br>
<br>
With a final smile <<=setup.getNpcName('npc_nun_serenity', 'formal')>> produces a gag of her own, her lips lovingly playing with the short phallus before she securely buckles it around her head under her habit. Eyes twinkling, she takes you by the hand and leads the way through the now-empty cathedral towards the smaller Lady Chapel.<br>
<br>
With each step, your rubber skin slides across a layer of sweat, the plug in your rear shifting erotically. The combination is more than enough to have your <<getWordMyPenis false>> straining within its prison, your breaths coming quicker as the combination of gag and mask has you inhaling through your nose.<br>
<br>
[<<moveTo "event_church_priest_lvl3promotion_3" "Follow her into the Lady Chapel." 300>>]
</div>/*#
#desc: witness nun induction
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_sissy_superior","npc_sissy_superior") setup.charImage("npc_acolyte","npc_acolyte_4_vow") setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
The Lady Chapel is already mostly full of seated nuns, but you are led past your gagged "sisters" to the front row and shown to a narrow seat. One might call the seat "ergonomically sculpted," but the real effect of the shape is to concentrate pressure into the plug occupying your ass, driving it deeper and further reminding you of its presence.<br>
<br>
Shifting slightly in your seat, you do not have long to wait before the two Sisters Superior appear from a side door at the front of the room, nodding to the assembled nuns to call things to order. Of course with you all being gagged it isn't like you were chattering, but the dominant gaze of the two High Priestess draw all attention forward and bring a halt to any hanky-panky that might have been going on.<br>
<br>
Clad in tight latex you can see the telltale shape of a large chastity cage between each of the Sister Superiors' legs, even their blessed cocks locked away for the ritual, <<if $player.body_ref.penis>>the same as your own<<else>>just as you are locked<</if>>.<br>
<br>
"@@.npc_fem_supreme;Holy Sisters, special guests, rejoice for today a new acolyte is to take a wonderful step forward in her spiritual journey.@@" <<=setup.getNpcName('npc_fem_supreme', 'formal')>> announces joyously.<br>
<br>
"@@.npc_sissy_superior;Rejoice in the name of the Goddess and remember your own dedications.@@"<br>
<br>
As she speaks your chair begins to rumble, vibrations running through your plug and <<if setup.isCage()>>cage<<else>>belt<</if>> to kick your arousal up another level.<br>
<br>
"@@.npc_fem_supreme;Let the applicant come forth.@@" She calls out, gesturing towards the rear of the room.<br>
<br>
You can only turn so far in your chair without losing the wonderful stimulation, but you manage to catch glimpse of your friend, <<=setup.getNpcName('npc_acolyte', 'first')>> utterly naked <<if $npc_acolyte.flags.mtf>>her cock rigid with arousal<<else>>and dripping with arousal<</if>> walking down the aisle, flanked by a quartet of hobbled nuns, each bearing a pillow piled with restraints and rubber.<br>
<br>
Your heart swells with excitement on behalf of your friend. Her aroused, but serious, expression slips slightly when she somehow recognises you despite your near total rubber encasement. She flashes a quick smile and a little wave while keeping her arms crossed at her waist.<br>
<br>
Reaching the front of the room, the two nunnish escorts split away, leaving <<=setup.getNpcName('npc_acolyte', 'first')>> standing naked between the two Sisters Superior.<br>
<br>
"@@.npc_sissy_superior;<<=setup.getNpcName('npc_acolyte', 'first')>>, are you prepared to devote yourself in body, mind and soul to the Goddess, to surrender to her service?@@"<br>
<br>
There is no hesitation in her voice as <<=setup.getNpcName('npc_acolyte', 'first')>> proudly replies. "@@.npc_acolyte;I do. Completely and without reservation.@@"<br>
<br>
"@@.npc_fem_supreme;Very well, then it is time for you to be granted the holy adornments of your service.@@"<br>
<br>
[<<moveTo "event_church_priest_lvl3promotion_4" "Continue." 180>>]
</div>/*#
#desc: witness nun induction
#status: RELEASED 0.8.2.0
#ignore_spell: d
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_sissy_superior","npc_sissy_superior") setup.charImage("npc_acolyte","npc_acolyte_4_vow") setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
The first of the nunnish escorts reappears, presenting <<=setup.getNpcName('npc_acolyte', 'first')>> with
<<if $npc_acolyte.flags.mtf>>
a chastity cage linked to a sizable anal plug.<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'first')>> gasps as the plug slides easily into her rear, only for the chastity device to prove a problem due to her rock-hard arousal.<br>
<br>
"@@.npc_sissy_superior;See how the applicant lusts for her new life, let us grant unto her a final orgasm before her every pleasure comes only at the will of the Goddess.@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> reaches down with a rubber-gloved hand and begins stroking <<=setup.getNpcName('npc_acolyte', 'first')>> expertly.<br>
<br>
Gasping in arousal it is obvious that <<=setup.getNpcName('npc_acolyte', 'first')>> is very close, her full breasts heaving as she breathlessly cries out in orgasm. "@@.npc_sissy_superior;I dedicate this orgasm to the Goddess!@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'first')>> spurts into a cup held by the nun, the glass of cum passed between the two Sisters Superior who each drink half.<br>
<br>
"@@.npc_fem_supreme;Note her eager enthusiasm, and the delicious taste of this, her final orgasm as a mere lay woman.@@"<br>
<br>
Her limp cock already twitching with signs of life as she catches her breath <<=setup.getNpcName('npc_acolyte', 'first')>> is quickly locked away in the steel chastity device.<br>
<br>
"@@.npc_sissy_superior;See how she has been plugged so as to be filled and aroused at all times, caged so that she may remain focused on her duties, concentrating first on the lusts of others as her own simmers unabated.@@"
<<else>>
a chastity belt packing twin internal phalluses.<br>
<br>
"@@.npc_sissy_superior;See how she has been plugged so as to be filled and aroused at all times, made chaste so that she may remain focused on her duties, concentrating first on the lusts of others as her own simmers unabated.@@"
<</if>>
<br><br>
Shuddering slightly and looking very aroused <<=setup.getNpcName('npc_acolyte', 'first')>> nods. "@@.npc_acolyte;Thank you for this gift, may I prove worthy of them.@@"<br>
<br>
A second nun appears bearing folded latex, the outfit unfurled to reveal a nunnish catsuit similar to your own.<br>
<br>
The nun helps <<=setup.getNpcName('npc_acolyte', 'first')>> pull the garment up to her neck as <<=setup.getNpcName('npc_fem_supreme', 'formal')>> intones its symbolic importance. "@@.npc_fem_supreme;See her clad in the garb of her office, a second skin granted by the Goddess to protect and comfort her even as it marks her new role.@@"<br>
<br>
Another nun appears with a matching latex corset, pulling it ruthlessly tight around <<=setup.getNpcName('npc_acolyte', 'first')>> until her already shallow breaths come even quicker, her pinched waist utterly stunning, and above, full breasts stretching her catsuit, completing the perfect, womanly curves started by her shiny hips and bum.<br>
<br>
"@@.npc_sissy_superior;Her corset, so that she may represent the ultimate vision of feminine profile.@@"<br>
<br>
Like a smaller version of the corset a steep posture collar is wrapped around her neck and locked in place, a ring dangling from the front with D-ring attachment points on either side.<br>
<br>
"@@.npc_fem_supreme;Chin is raised proudly high, she is collared and claimed by the Goddess as an extension of her divine will.@@"<br>
<br>
A pair of polished steel wrist cuffs are presented, <<=setup.getNpcName('npc_acolyte', 'first')>> extending her hands as they are locked in place.<br>
<br>
"@@.npc_sissy_superior;Her wrists are cuffed and locked, dedicating the work of her hands to the glory of the Goddess.@@"<br>
<br>
Dropping to one knee the next nun helps <<=setup.getNpcName('npc_acolyte', 'first')>> into a pair of steep heels, the ankle straps a pair of locking steel cuffs to match her wrists.<br>
<br>
"@@.npc_fem_supreme;Heels enhance her beauty, raising her closer to the Goddess and letting the sound of each step herald her arrival, locked in place as she is now locked onto a divine path.@@"<br>
<br>
A latex hood is brought forth, a tight mask pulled over her head and tucked under her collar.<br>
<br>
"@@.npc_sissy_superior;Her sacred garb is completed, though she remains herself she is now also joined with her sisters, a holy force, uniform in their desire to further the Goddess's will.@@"<br>
<br>
The next item is almost a disappointment, a cloth robe akin to that which you see the nuns wearing in "public." Though well fitted so as to still hint at the marvelous body beneath it conceals all of the previous wonderful restraints under its draping cotton.<br>
<br>
"@@.npc_fem_supreme;As she has been seen by the faithful, so must she too be able to go out among the faithless masses, her robes signalling her holy cause while sheltering her from the eyes of those who do not yet understand the ways of the Goddess.@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> looks into <<=ps(setup.getNpcName('npc_acolyte', 'first'))>> face, the would-be nun trembling with arousal, her eyes welling up with tears of joy. "@@.npc_sissy_superior;Have you decided on your new, holy name, Sister?@@"<br>
<br>
[<<moveTo "event_church_priest_lvl3promotion_5" "Hear her name." 180>>]
</div>/*#
#desc: witness nun induction
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_sissy_superior","npc_sissy_superior") setup.charImage("npc_acolyte","npc_acolyte_4_vow") setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_acolyte', 'first')>> nods. "@@.npc_acolyte;I wish to take the name <<=setup.getNpcName('npc_acolyte', 'formal')>>@@"<br>
<br>
"@@.npc_sissy_superior;A beautiful name. Let it be known that <<=setup.getNpcName('npc_acolyte', 'formal')>> has shown her eagerness and urge to serve the Goddess, and welcome her to our blessed order.@@"<br>
<br>
A chorus of gag-muffled moans welcome her, along with what sounds like at least one orgasm as one of the other nuns succumbs to the same vibrations that are emanating from your seat. You catch one of the sister's superior glance in the direction of the sound and you imagine the nun's lack of restrained decorum will see her "punished" later... though you couldn't even guess if that punishment will involve more orgasms, or fewer... probably some torturous combination of both.<br>
<br>
"@@.npc_fem_supreme;You are welcomed and blessed, now your training may truly begin. Your name declared it is time to focus on listening and learning.@@"<br>
<br>
The final nun appears bearing a thick panel gag which <<=setup.getNpcName('npc_fem_supreme', 'formal')>> presents as <<=setup.getNpcName('npc_acolyte', 'formal')>> obediently opens her mouth.<br>
<br>
<<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> eyelids flutter with obvious pleasure as the gag is firmly secured to fill her mouth, her habit adjusted to conceal it and leave her looking like just another nun who has taken a vow of silence.<br>
<br>
The sisters superior, standing on either side of <<=setup.getNpcName('npc_acolyte', 'formal')>> turn to face the audience with wide grins, their caged bulges twitching slightly.<br>
<br>
"@@.npc_sissy_superior;The ritual is complete. Having bore witness to <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> glorious induction are there any among you who feel moved by the Goddess to join her and dedicate yourself fully to the same holy cause?@@"<br>
<br>
"@@.npc_fem_supreme;Rise up and become a part of us.@@"<br>
<br>
<<printThought "This is my opportunity, but do I really want to make such a change?">><br>
<br>
[<<moveTo "event_church_priest_lvl3promotion_6" "Stand and volunteer." 300 "<<set $scene.nun=true>>">>] <<hint $options "Such a commitment would mean turning your back on the rest of your life...">><br>
[<<moveTo "event_church_priest_lvl3promotion_6" "Remain seated." 300 "<<set $scene.nun=false>>">>]
</div>/*#
#desc: confirm join nuns or finish witnessing ritual
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_sissy_superior","npc_sissy_superior") setup.charImage("npc_acolyte","npc_acolyte_4_vow") setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
<<if $scene.nun>>
Your plug twitches a final time as you stand and your hungry hole sucks it deeper inside of you.<br>
<br>
All eyes turn in your direction, <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> expression one of rapturous joy at the prospect of your joining her.<br>
<br>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> approaches, looming over you as she fills your gaze.<br>
<br>
"@@.npc_sissy_superior;Are you certain of this, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>? I know well how easy it is to be caught up in such a moment, but this is a solemn, life-changing decision, are you certain you wish to dedicate yourself to the Goddess? You may decline and think further, her door will remain forever open if you change your mind.@@"<br>
<br>
[<<moveTo "event_church_nun_ending_0" "Nod to confirm your decision." 300>>]
[<<moveTo "event_church_priest_lvl3promotion_6" "Change your mind and sit back down." 300 "<<set $scene.nun=false>>">>]
<<else>>
Seated atop the fore and aft vibrators, you give a gasp as the intensity begins to increase.<br>
<br>
Panting through your nose, you watch with intense arousal as the equally excited, newly named <<=setup.getNpcName('npc_acolyte', 'formal')>> has her wrists chained together and her legs hobbled. Leashes attach to three sides of her collar and she is led off by the nuns who brought her in, and it is only after she has finally disappeared from view outside the room that the vibrations emanating from your chair cease and the ritual is truly complete.<br>
<br>
Taking a few moments to catch your breath you stagger to your feet only to be met by <<=setup.getNpcName('npc_sissy_superior', 'formal')>> who takes over from <<=setup.getNpcName('npc_nun_serenity', 'formal')>> with a soft word. "@@.npc_sissy_superior;Thank you, Sister, but I would like a word with our lovely observer, I will attend to her from here.@@"<br>
<br>
<<=setup.getNpcName('npc_nun_serenity', 'formal')>> bows obediently as <<=setup.getNpcName('npc_sissy_superior', 'formal')>> smiles at you and leads you back through the crowd of gagged rubber nuns and back to the changing room.<br>
<br>
[<<moveTo "event_church_priest_lvl3promotion_7" "Get changed back into street clothes." 300>>]
<</if>>
</div>/*#
#desc: change out of nun outfit for lvl 3 promotion
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Private changing room at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.church.level = 3>>
<<removeItemSet "nun_fetish">>
<<removeItem "gag_church" true>>
<<deleteItem "gag_church">>
<<useClothSetPop 'tmp' true>>
<<if $scene.plug>>
<<addItem "inflatable_plug">>
<</if>>
<<if !$scene.cage>>
<<removeItem "chastity_belt_church" true>>
<<deleteItem "chastity_belt_church">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_changing_room.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> begins helping you out of your latex nun outfit as she chats with you.<br>
<br>
"@@.npc_sissy_superior;I want to thank you for joining us for the ritual, I know <<=setup.getNpcName('npc_acolyte', 'formal')>> is very grateful that you were able to be there to witness such an important moment in her life.@@" Kneeling down to help you out of your boots <<=setup.getNpcName('npc_sissy_superior', 'formal')>> smiles up at you, the perspective quite different from how she usually towers over you.<br>
<br>
"@@.npc_sissy_superior;With proper training she will make a great nun, maybe even a high priestess some day. We can only wait and see. I wanted to talk about you, however, and your own growth in the church.@@"<br>
<br>
Still gagged, all you can do is look quizzically back. <<=ps(setup.getNpcName('npc_sissy_superior', 'formal'))>> gentle smile puts you at ease. "@@.npc_sissy_superior;Oh, it is nothing bad! We have been following your progress with great enthusiasm. If some day you decided to join our ranks as your friend has, well... we would gladly accept you, but, in the meantime...@@" She smiles, a truly heavenly sight. "@@.npc_sissy_superior;You looked so natural in a nun's outfit, I wanted to invite you to take part in our volunteer lay programme. Essentially, you would be helping out around the church, doing similar tasks to full-fledged nuns, but without needing to make the full commitment that is joining the order proper.@@"<br>
<br>
"@@.npc_sissy_superior;No need to give me an answer now,@@" she states, winking at the fact that you remain gagged as she starts peeling the latex catsuit down your body. "@@.npc_sissy_superior;Just feel free to speak with <<=setup.getNpcName('npc_priest', 'formal')>> any time you wish to do some volunteer work. As our church is against exploitation of any kind, you will, of course, be compensated monetarily, as well as spiritually, for your services.@@"<br>
<br>
<<if !$scene.cage>>
Producing a key she removes the chastity belt, <<if $player.body_ref.penis>>your <<getWordMyPenis false>> springing free of its prison with delight as she smiles at it in amusement<<else>>with a gentle smile<</if>>.<br>
<br>
"@@.npc_sissy_superior;My, my, I feel a bit bad letting you out like this, but such was promised. You really ought to consider locking it up yourself, for security.@@"<br>
<br>
<</if>>
She folds up the latex outfit while you get changed back into your street attire, handing it to you with a smile, along with a more modest outfit in keeping with the nuns' more public wear.
<<if $scene.plug>>
"@@.npc_sissy_superior;Keep it, with our thanks. It was made specifically for you, and you have proven worthy of representing the church. Oh, and I took the liberty of adding an extra bonus — one of our standard inflatable plugs, for which you had no need thanks to your having come properly prepared and plugged on your own.@@"
<<else>>
"@@.npc_sissy_superior;Keep it, with our thanks. It was made specifically for you, and you have proven worthy of representing the church. The same goes for your plug. I can tell how much you enjoyed it. Consider it, too, a gift.@@"
<</if>>
<br><br>
"@@.npc_sissy_superior;Oh, I almost forgot!@@" She states with a smile as she reaches around your head to remove your gag. You work your jaw a bit only to look down and notice the ominous bulge between her legs, recalling that she was locked up for the ritual in similar manner to yourself.<br>
<br>
[<<moveTo "event_church_priest_lvl3promotion_8" "Ask if you might provide her relief." 300 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_church_priest_lvl3promotion_8" "Be on your way." 300 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: blow sissy superior or leave after lvl 3 promotion
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Private changing room at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/church_changing_room.png" setup.charImage("npc_sissy_superior","npc_sissy_superior") setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<<else>>
<<createAdvBGR "./images/locations/church_changing_room.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Eyeing her bulging package you ask if you might offer your assistance?<br>
<br>
"@@.npc_sissy_superior;Aren't you just the sweetest thing. I would like that very much, only, would you be willing to do the same for <<=setup.getNpcName('npc_fem_supreme', 'formal')>>, as well? You see, for occasions such as this we act as one another's keyholders. Without summoning her I remain safely... restrained.@@"<br>
<br>
You nod without taking the time to think what the consequences of volunteering for a threesome with two high priestesses of a sex Goddess might entail, <<=setup.getNpcName('npc_sissy_superior', 'formal')>> sending some sort of silent signal as a few moments later <<=setup.getNpcName('npc_fem_supreme', 'formal')>> joins the two of you in the private changing room.<br>
<br>
The two priestesses share a kiss before raising the skirts of their robes to reveal the twin devices locked over their loins.<br>
<br>
One of the most gorgeous chastity devices you have ever seen, the gleaming platinum devices not only completely encase their packages, but locks around their waist and dips between their legs to cover their rear holes as well. Unlocking one another they each loosen their waist straps, removing the steel undergarments to reveal not one, but two large dildos mounted to the inside. Holes emptied, their glorious cocks spring free and swell almost instantly to mouth-watering hardness.<br>
<br>
Noticing your slack-jawed surprise <<=setup.getNpcName('npc_fem_supreme', 'formal')>> smiles and explains.<br>
<br>
"@@.npc_fem_supreme;As High Priestesses we must be capable of servicing all members of our flock. Thus the Goddess, with a bit of help from modern technology, blesses us with not just three holes, but with cocks of our own. So, are you ready to experience two divine members?@@"<br>
<br>
Staring at the two women, paragons of feminine beauty, their latex-gloved hands wrapped around the bases of their thick, dripping members. You nod, unable to find the words to express how much you want to feel them inside of you.<br>
<br>
With a single glance the women decide who will take which end of you, <<=setup.getNpcName('npc_fem_supreme', 'formal')>> circling around behind to remove your plug and grab your hips as she lines up with your gaping hole. Up front <<=setup.getNpcName('npc_sissy_superior', 'formal')>> steps close, bending you forward and holding your face before her musky, but deliciously feminine smelling member.<br>
<br>
"@@.npc_sissy_superior;Feel free to explore with your hands, as my sister stated, I am fully functional in all ways.@@"<br>
<br>
Your reply of "@@.pc;Yes, Mistress@@" turns into a moan as <<=setup.getNpcName('npc_fem_supreme', 'formal')>> glides into your ass.<br>
<br>
[<<moveTo "event_church_priest_lvl3promotion_9" "Priestess? Priest-yes!" 300>>]
<<else>>
curtsying in gratitude you tell <<=setup.getNpcName('npc_sissy_superior', 'formal')>> that you will consider her offer, thanking her again for allowing you to bear witness to the wonderful ceremony before continuing on your way.<br>
<br>
The cathedral mostly empty you decide to call it a day.<br>
<br>
[<<moveTo "room_foyer" "Head home." 0>>]
<</if>>
</div>/*#
#desc: sex with sissy superior after lvl 3 promotion
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Private changing room at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'skip' $SEEN_FRIEND>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'skip' $SEEN_FRIEND>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'skip' $SEEN_FRIEND>>
<<set _cum = setup.getTotalValue("cum")>>
<<applyExperience 'cum' _cum 'skip' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/church_changing_room.png" setup.charImage("npc_sissy_superior","npc_sissy_superior") setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<<else>>
<<createAdvBGR "./images/locations/church_changing_room.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") >= 10>>
Though large by human standards the High Priestess' cock is no trouble for your experienced hole.
<<if setup.getTotalValue("anal") > 15>>
Unequal in length or girth to some of your experiences, she makes up for it with divine skill,
<<else>>
The equal of any cock that has ever before plundered your rear passage she also displays divine skill,
<</if>>
pumping and thrusting against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> in a way that has you feeling utterly filled and delighted, her balls slapping against <<if $player.body_ref.penis && setup.checkItemTypeWorn("cage")>>your own locked up member<<else>>you with each thrust<</if>> to remind you how much better it is to be penetrated, as the Goddess commands, deep and hard.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Easily the largest thing to have penetrated your ass, the High Priestess' large girlcock somehow fits perfectly inside of you, spreading you like never before, but in a way that has your ass eager to experience the joy of each deep thrust.
<<else>>
Though massive compared to your experience, she enters you with such divine skill that every centimetre of her is a pleasure. Even when she bottoms out, her balls slapping against <<if $player.body_ref.penis && setup.checkItemTypeWorn("cage")>>your own locked up member<<else>>you with each thrust<</if>> as all you feel is utter delight.
<</if>>
<</if>>
<br><br>
You could gladly enjoy being ass-fucked for eternity by the heavenly rod pumping inside of you, but there is its "sister" to attend to, glistening in front of your face, wet with sweat and pre-cum.
<<if setup.getTotalValue("oral") > 10>>
Seldom have you wanted a cock inside your throat so badly. <<=setup.getNpcName('npc_sissy_superior', 'formal')>> obliges, the full length of her delicious woman-meat past your lips.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
She may not be the biggest thing your bottomless throat has accommodated, but she may be the most perfect, swelling you enough to delight without being painful, the taste and mouthfeel utterly divine.
<<else>>
The equal in size of any cock that has previously entertained your mouth hers may well be the most perfect, a taste and mouthfeel utterly divine from your lips wrapped around the base of her shaft to the bottom of your bulging throat.
<</if>>
<<else>>
Never before have you so desperately wanted a cock inside your throat. <<=setup.getNpcName('npc_sissy_superior', 'formal')>> obliges. The taste and mouthfeel are even more divine than you could have anticipated and she move forward until her balls are against your chin, the full length of her delicious woman-meat past your lips.<br>
<br>
<<if setup.getTotalValue("oral") > 5>>
Though near the limit of what you would think possible she slides into you with ease, adjusting her hips, her pace, everything so that the full length of her member disappears down your throat and you find yourself with your nose pressed against her soft flesh.
<<else>>
If someone had merely suggested you could take such a mammoth member you would have scoffed, but somehow she seems to know every trick, your throat parting obediently as more and more of her enters you until, to your shocked surprise, you feel her balls brush your chin.
<</if>>
<</if>>
<br><br>
The two Priestess' establish a back and forth rhythm and, though each thrust pumps more and more pleasure into your body, you are desperate to return the favour. Sucking and squeezing with everything you have, you remember <<=ps(setup.getNpcName('npc_sissy_superior', 'formal'))>> words, groping blindly between her legs until you find her dripping snatch and the "universal" hole behind. Tight, wet, and oh so wonderful feeling they swallow each of your hands in turn and you hear a moan of delight filter down from above as you suck her off while simultaneously <<if $fetish.fisting>>fisting her in both<<else>>gaping both of her<</if>> holes.<br>
<br>
Practically suspended between the Sisters Superiors' cocks you take it hard and deep from both ends, eyes rolling back in pleasure as you climax once, twice and then a third time simultaneously with their own orgasm, twin jets of holy seed pumping deep into you.<br>
<br>
Kept from falling by <<=ps(setup.getNpcName('npc_sissy_superior', 'formal'))>> strong grip, the High Priestess holds you up as you share a three-way kiss with both priestesses, trembling in post-orgasmic delight<<if setup.checkItemTypeWorn("plug")>> as one of them gently re-inserts your plug<</if>>.<br>
<br>
Gratefully thanking them for the divine experience you fix your clothes and depart, glancing back as a half dozen nuns head for the changing room, apparently the High Priestess are just getting started...<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: hear about baptism
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior_full.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
As you're walking out of service you overhear some other congregants having an excited conversation. You only hear a fragment, but the words "@@.generic_female1;second baptism@@" pops out at you... though you can't tell exactly who the speaker is in the crowd.<br>
<br>
<<printThought "Hmm... maybe something to ask <<=setup.getNpcName('npc_priest','formal')>> about?">><br>
<br>
[<<moveTo "location_church_exterior" "Depart." 300>>]
</div>/*#
#desc: ask priest about baptism
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_priest","formal")>> about a "@@.pc;second baptism@@" and <<he npc_priest>> smiles.<br>
<br>
"@@.npc_priest;Ah, yes, a beautiful ceremony that the church offers for those who wish to sanctify and celebrate their embrace of... well, it may not be correct to call it a "new" identity, for some it is who they always were, just denied or kept secret. Whatever the journey to that point, it is who they are, and what best reflects that fact, rather than a mere legacy assigned at birth. So, for example, one who was assigned male prior to their having choice in the matter could celebrate their feminine identity by being baptised under their new, true identity and name. So too for those who find themselves outside of the simple binary.@@"<br>
<br>
[<<moveTo "event_church_baptism_2" "Ask if you could be so baptised?" 120>>]
</div>/*#
#desc: agree to baptism
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest") "npc_nun_harmony_modest">>
<<else>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<</if>>
<div id="invframe" class="scrolltext">
You ask if you could be baptised by the church and <<=setup.getNpcName("npc_priest","formal")>> smiles.
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
"@@.npc_priest;But of course, <<switch $player.identify_as>><<case 'female'>>Sister <<case 'male'>>Brother <<default>><</switch>>.@@" <<=setup.getNpcName("npc_priest","formal")>> looks past you for a moment, <<his npc_priest>> gaze scanning the church before <<he npc_priest>> waves over a nun.<br>
<br>
"@@.npc_priest;<<=$player.first_name>> wishes to be baptised to reinforce and broadcast <<switch $player.identify_as>><<case 'female'>>her<<case 'male'>>his<<default>>their<</switch>> identity. If you would assist and make arrangements?@@" The priest explains to <<=setup.getNpcName("npc_nun_harmony","formal")>>.<br>
<br>
The nun's eyes light up and she extends you a hand. "@@.npc_nun_harmony;Of course! Oh, baptisms are one of my favourite duties, one of the most delightful enactments of the Goddess' power. Come, <<switch $player.identify_as>><<case 'female'>>Sister, <<case 'male'>>Brother, <<default>><</switch>>new blessings await...@@"<br>
<br>
You take <<=ps(setup.getNpcName("npc_nun_harmony","formal"))>> hand and she leads you through the church to the Lady Chapel but, rather than follow you in, she merely bows and gestures within as the door opens.<br>
<br>
[<<moveTo "event_church_baptism_3" "Enter, and prepare for your baptism." 300>>]
<<else>>
"@@.npc_priest;But of course, <<switch $player.identify_as>><<case 'female'>>Sister <<case 'male'>>Brother <<default>><</switch>>... only, well, I am sorry to inform you that the church's schedule is presently full. Perhaps you could return on another day?@@"<br>
<br>
You thank <<him npc_priest>> for the consideration and reply that you will.<br>
<br>
"@@.npc_priest;Lovely, we shall look forward to it, and know that even without the ritual, you are who you are, and that is wonderful and supported and loved by the Goddess and all of her followers. Now, was there anything else of which you wished to speak?@@"<br>
<br>
<<if $player.flags.church.level == 1>>
[<<moveTo "event_church_priest_lvl2promotion_1" "Ask about becoming a full member of the church." 300>>]<br>
<<elseif $player.flags.church.level == 3>>
[<<moveTo "event_church_nun_ending_0_0_alt" "Ask about becoming a nun." 300>>]<br>
<</if>>
<br>
[<<moveTo "event_church_root" "Move on." 300>>]
<</if>>
</div>/*#
#desc: prepare for baptism, strip
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" "npc_nun_gloria_modest">>
<div id="invframe" class="scrolltext">
You step into the chapel to find <<=setup.getNpcName("npc_nun_gloria","formal")>>, who greets you with a beatific smile.<br>
<br>
"@@.npc_nun_gloria;Welcome, <<switch $player.identify_as>><<case 'female'>>Sister <<case 'male'>>Brother <<default>><</switch>>to the first step in your blessed baptism. To begin you must humble yourself by shedding the outer world. After your baptism you will re-emerge refreshed and renewed but for now your garments<<if setup.checkVisibleClothingTag('nun') > 50>>, even ones as blessedly holy as those<</if>> are a distraction. Concealment of the true self...@@"<br>
<br>
You nod in understanding, and the nun assists in removing your clothing. The whole time she chants softly, a language you do not recognise, but the rhythm serves to bolster your spirits, to make you feel somehow lighter with each piece of clothing that is removed... each item neatly folded and put to one side until your flesh is bared to the world.<br>
<br>
"@@.npc_nun_gloria;You have done well, <<switch $player.identify_as>><<case 'female'>>Sister <<case 'male'>>Brother <<default>><</switch>>.@@" The nun speaks gently, "@@.npc_nun_gloria;May your blessings flow without measure after your baptism. Another will aid you in your next step.@@"<br>
<br>
With a parting bow <<=setup.getNpcName("npc_nun_gloria","formal")>> retreats... only for another door to open at the far end of the chapel and two more nuns to emerge...<br>
<br>
[<<moveTo "event_church_baptism_4" "Continue." 300>>]
</div>/*#
#desc: prepare for baptism, bound
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "blindfold_church">>
<<wearItem "blindfold_church" true>>
<<addItem "gag_church">>
<<wearItem "gag_church" true>>
<<addItem "rope_bondage">>
<<wearItem "rope_bondage" true>>
<<addItem "headphones_church">>
<<wearItem "headphones_church" true>>
<</if>>
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_nun_prudence") setup.charImage("npc_nun_patience")>>
<div id="invframe" class="scrolltext">
Two nuns walk towards you, <<=setup.getNpcName("npc_nun_prudence","formal")>> and <<=setup.getNpcName("npc_nun_patience","formal")>>. Where <<=setup.getNpcName("npc_nun_gloria","formal")>> had prepared you while wearing her full, public attire, these two nuns are adorned in the church's more private ensemble, polished latex gleaming, tight corset and steep heels uniting to lift them up and grant them a raised, heavenly profile... attachment points jangling gently with every step, a reminder that they are ready to be bound to the Goddess' command at all times.<br>
<br>
"@@.npc_nun_prudence;Welcome.@@" "@@.npc_nun_patience;Welcome.@@" The nuns greet, in gorgeous harmony, their words blending in to one another, two voices alternating as one.<br>
<br>
"@@.npc_nun_prudence;You have come for baptism,@@"<br>
"@@.npc_nun_patience;and we to bless the way.@@"<br>
"@@.npc_nun_prudence;To prepare you must be restrained, brought further inward, to the true self.@@"<br>
"@@.npc_nun_patience;Sight, hearing, touch... you will not need these things, you will feel only the touch of the Goddess.@@"<br>
"@@.npc_nun_patience;Hear only her words speaking from your heart. Stating your name.@@"<br>
"@@.npc_nun_prudence;Your TRUE name. The name chosen by you, accepted,@@"<br>
"@@.npc_nun_patience;embodied,@@"<br>
"@@.npc_nun_prudence;and blessed.@@"<br>
<br>
Without even a command, you fall to your knees, a blindfold placed over your face, and then rope binding your limbs, pulling your hands behind your back into a <<if setup.getTotalValue("dexterity") >= 20>>full on<<elseif setup.getTotalValue("dexterity") >= 15>>partial of a<<else>>semblance of a<</if>> reverse prayer, the stress forcing your shoulders back and your chest out and proud. A gag follows, buckled tight to silence you, a tender rubber-gloved hand wiping away a drop of drool that seeks to escape your spread lips.<br>
<br>
"@@.npc_nun_prudence;There is no sight, but truth.@@"<br>
"@@.npc_nun_patience;No word, only acceptance.@@"<br>
"@@.npc_nun_patience;No struggle, only acceptance.@@"<br>
"@@.npc_nun_prudence;No sound, only her will.@@"<br>
<br>
At this last something is placed over your ears, darkness turning to silence as you kneel, and wait...<br>
<br>
[<<moveTo "event_church_baptism_5" "Wait." 120>>]
</div>/*#
#desc: prepare for baptism, pampered and whipped
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
Blind, mute, deaf, and bound you can do little but wait, even your sense of smell overwhelmed by the scent of incense, leaving you with no manner in which to identify if the nuns have left, if you are alone, or if more have arrived to take their place.<br>
<br>
A flash of pain blossoms across your rear and you flinch reflexively... only for a tender hand to caress where moments before agony had tread.<br>
<br>
Your heart races, but another blow comes before you can think... followed, as well, but another gentle brush, not of fingers, but of softly kissing lips.<br>
<br>
The alternation continues, pain, comfort, pain, comfort, the harsh stroke of the whip, and the tender touch that comes after. Though you surmise that there are two individuals administering this part of the ritual, you have no way to predict from where the next strike will come. Your initial stifled gasps are replaced by a calm acceptance, not a resignation to your fate, but an embrace of both parts, of pain and pleasure, the duality of existence, one after the other after the other.<br>
<br>
Though you cannot hear their words, you feel the presence of your holy companions, not just in their touch, but in their faith, their love. The cycle rolls on, and you become still, no longer flinching, but accepting the lash as gratefully as you do the touch that follows, whips and lips and fingertips... until, almost more jarring that that first blow, everything stops...<br>
<br>
[<<moveTo "event_church_baptism_6" "What now?" 300>>]
</div>/*#
#desc: baptism: guided affirmations begin
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "gag_church" true>>
<<deleteItem "gag_church">>
<<removeItem "headphones_church" true>>
<<deleteItem "headphones_church">>
<</if>>
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
All that you can hear is your breathing, all you can feel is your own heartbeat as you wait for the next stage of the ritual... and it comes as a pair of lips kisses you around your gag. You return the kiss as best you can, passionately, lovingly savouring the moment of human contact, wishing that you could do more, could feel your partner's tongue meeting your own, to dance in private even while your body remains bound in stillness.<br>
<br>
In an instant your pulled away, the lips retreating with their "prize" as you gasp, jaw still spread in remembrance of the holy implement that had been between them a moment before as you wish for the return of those wonderful, wonderful lips...<br>
<br>
You feel a hand on one shoulder, and then the other, the latex-gloved touch of a nun... the position of the thumb grasping your shoulder telling you that it is two different people, one standing on either side... as your ear-coverings are removed and your sense of hearing is returned.<br>
<br>
"@@.npc_sissy_superior;Repeat, <<switch $player.identify_as>><<case 'female'>>Sister <<case 'male'>>Brother <<default>><</switch>> <<=$player.first_name>>.@@" Are the first words you hear... their tone not one of command, but of enticement, an invitation to make this breaking of silence a moment of sacred power.<br>
<br>
"@@.npc_fem_supreme;I, <<=$player.first_name>> <<=$player.last_name>>, am a beautiful, vibrant <<switch $player.identify_as>><<case 'female'>>woman<<case 'male'>>man<<default>>being<</switch>>.@@" Becoming more accustomed to sound you recognise the voice to your left as belonging to that of <<=setup.getNpcName('npc_fem_supreme', 'formal')>>, the sound of your identity falling from her holy lips spurring you to response, to match her holy passion word for word.<br>
<br>
[<<moveTo "event_church_baptism_7" "Repeat her words." 60>>]
</div>/*#
#desc: baptism: affirmations continue
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "blindfold_church" true>>
<<deleteItem "blindfold_church">>
<</if>>
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" _TODOnuns>>
<div id="invframe" class="scrolltext">
"@@.pc;I, <<=$player.first_name>> <<=$player.last_name>>, am a beautiful, vibrant <<switch $player.identify_as>><<case 'female'>>woman<<case 'male'>>man<<default>>being<</switch>>.@@" The words all but spring from your lips, as you feel something poured over your head, anointing oils running down the side of your face and dripping onto your <<if $player.body.breastsize[0] >= 8>>breasts, your massive mammaries all but protecting your thighs below from drips in favour of slow rivulets running down your body<<elseif $player.body.breastsize[0] >= 0>>breast and thighs<<else>>chest and thighs<</if>>.<br>
<br>
"@@.npc_sissy_superior;I am strong, smart and loved.@@" <<=setup.getNpcName('npc_sissy_superior', 'formal')>>, this time, coming from your right, confirming that you are flanked by the two heads of the church.<br>
<br>
"@@.pc;I am strong, smart and loved.@@" You repeat... and your blindfold is pulled away. The light has been dimmed to accommodate you, and yet you still blink for clarity, hazy shapes coming together to reveal before you a whole host of nuns, each dressed in their most sacred of garments.<br>
<br>
"@@.generic_female1;I am a treasured child of the Goddess more than deserving of her blessings, who joyfully proclaims the Goddess' message of love, joy, and lust to the world.@@" This time the sound comes from all around you, a chorus lead by the two sisters superior, washing you with love as more scented oils pour down over you.<br>
<br>
You repeat the words, shouting joyously. "@@.pc;I am a treasured child of the Goddess more than deserving of her blessings, who joyfully proclaims the Goddess' message of love, joy, and lust to the world.@@"<br>
<br>
[<<moveTo "event_church_baptism_8" "What next?" 180>>]
</div>/*#
#desc: baptism: blessing
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_sissy_superior") setup.charImage("npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
"@@.npc_fem_supreme;So it is spoken.@@"<br>
"@@.npc_sissy_superior;So is it known.@@"<br>
<br>
The sisters superior alternate speaking, and you tremble under their hands as you are washed over completely, in spirit, and in body, the water pouring down over you washing away all, at the same time as the passionate faith of so many nuns cleanses your spirit of all doubt as to who, and what you are.<br>
<br>
"@@.npc_fem_supreme;Arise, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_sissy_superior;Arise, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.generic_female1;Arise, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
<br>
The sisters speak in chorus and sequence.<br>
<br>
"@@.npc_fem_supreme;Arise and be blessed.@@"<br>
"@@.npc_sissy_superior;Arise, and be reborn.@@"<br>
"@@.generic_female1;Arise, a child of the Goddess, arise and gift the world with your true self.@@"<br>
<br>
Your bonds fall away, and the two sisters superior raise you to your feet... as the nuns bow in unison, a powerful wave of respect and love that all but knocks you off your feet, leaving you grateful for the pillars of strength to either side of you.<br>
<br>
[<<moveTo "event_church_baptism_9" "You have been baptised." 300>>]
</div>/*#
#desc: baptism: dress and leave
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "rope_bondage" true>>
<<deleteItem "rope_bondage">>
<</if>>
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png">>
<div id="invframe" class="scrolltext">
There is a moment of stillness as words echo through the small lady chapel and then fade. You kneel, no longer bound, with full sight, hearing and voice... yet no urge to use any as the water that had baptised you drips slowly down.<br>
<br>
One by one, the nuns approach, bowing and speaking to you in turn before filing out of the room.<br>
<br>
"@@.npc_nun_harmony;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_gloria;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_prudence;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_patience;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_serenity;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_constance;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_joy;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_grace;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_temperance;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_chastity;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_nun_unity;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_acolyte;The Goddess' blessings be upon you, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
<br>
As the final nun files out of the room you shiver, the sisters superior finally raising you to your feet, still looking down at you from their lofty heels... and even loftier enlightened authority.<br>
<br>
"@@.npc_sissy_superior;You have been baptised and blessed anew, <<=$player.first_name>> <<=$player.last_name>>.@@"<br>
"@@.npc_fem_supreme;A confirmation of what you already were, shouted to the divine, and with her favour returned sixteen-fold.@@"<br>
<br>
"@@.pc;Thank you...@@" you whisper, the words all you can think of, and yet feeling inadequate to the moment.<br>
<br>
"@@.npc_fem_supreme;No, thank you, <<=$player.first_name>> <<=$player.last_name>>@@"<br>
"@@.npc_sissy_superior;For being your authentic self, and blessing our congregation, and the world, with your presence.@@"<br>
<br>
The sisters superior depart, leaving you alone to dry yourself off and dress... and yet, not alone, as surely you feel the Goddess there beside you...<br>
<br>
[<<moveTo "event_church_root" "Dress and leave the Lady Chapel." 120 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: take a class at church
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Library in the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.level = setup.getChurchActivityLevel($player.flags.church.level, $player.flags.church.activities["class"])>>
<<set $player.flags.church.activities.class[$scene.level]++>>
<<set _stress = -3-$scene.level*3>>
<<applyStress _stress>>
<<set $daily.church_count += 1>>
<<set $daily.church_class = true>>
<<applyExperience 'feminization' _stress 'very' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level == 3>>
<<createAdvBGR "./images/locations/church_library.png" "npc_nun_serenity">>
<<else>>
<<createAdvBGR "./images/locations/church_library.png" "npc_nun_serenity_modest">>
<</if>>
<div id="invframe" class="scrolltext">
You walk into a cosy library adjacent to the main cathedral, the walls lined with leather-bound books with the centre of the room taken up by old-fashioned scribe's desks, the sort you imagine a monk sitting at for hours while illuminating a manuscript.<br>
<br>
Smiling in greeting, <<=setup.getNpcName('npc_nun_serenity', 'formal')>> motions you in to take a seat with the other prospective students as she notes she is "just about to start today's lesson." <br>
<br>
<<switch $scene.level>>
<<case 0>>
Smiling at the class, <<=setup.getNpcName('npc_nun_serenity', 'formal')>> begins a lecture about "Feminine Virtues." <br>
<br>
Among the virtues you learn are grace; how a woman exudes elegance with all that she does. Of the beauty inner and outer, that all women possess and of which they bless the world. Of passion in all aspects in life, of judgement and sensuality, and finally of the importance of vulnerability.<br>
<br>
"@@.npc_nun_serenity;Vulnerability is so often seen as a negative state,@@" <<=setup.getNpcName('npc_nun_serenity', 'formal')>> explains. "@@.npc_nun_serenity;And, of course exposing oneself to harm is not at all what the Goddess wills for us, but true feminine vulnerability is something higher... a type of courage, a willingness to open oneself and in so doing gain even greater happiness and glory.@@"<br>
<br>
There are nods of understanding around the room as <<=setup.getNpcName('npc_nun_serenity', 'formal')>> finishes her lecture. A small line forming to ask her questions you decide to merely slip out the back, still contemplating what you have learned today.
<<case 1>>
Smiling at the class, <<=setup.getNpcName('npc_nun_serenity', 'formal')>> begins a lecture about the "gifts of the Goddess." <br>
<br>
"@@.npc_nun_serenity;The Goddess blesses all of us in a multitude of ways, but perhaps the greatest, most all-encompassing of her gifts is the gift of pleasure.@@"<br>
<br>
"@@.npc_nun_serenity;As women... as people, really... but as women most of all we are set upon by challenges and trials throughout life, but it is pleasure, joy, delight, happiness... however you want to call it that is the reward that can make it all worthwhile.@@"<br>
<br>
"@@.npc_nun_serenity;That said, there are all sorts of types of pleasure. the pleasures of procrastination, of sloth — these are bad — a rebellion against the divine order that will wither your life and in the long term rob you of all joy. It is the other pleasures — of accomplishment, of righteous obedience to divine precept and, most of all, mutual pleasure gifted between other people... indulging in these pleasures multiplies the joy in the world and causes the Goddess to smile down upon us.@@"<br>
<br>
"@@.npc_nun_serenity;As women we are gifted in our ability to bring unique pleasure into the world. By accepting another into our very body we please ourselves and them at the same time, and in so doing spread the blessing of the Goddess, magnifying it until it burst forth into the world and, with training, do so again, and again and again. Note that while penetration is a blessed act any mutually pleasurable contact between two or more can be seen as a sacrament to the Goddess.@@"<br>
<br>
Realising what she's talking about you glance around the room, from the way some of the other students are looking around you get the feeling there is liable to be some "gifting of pleasure" between some of them in the future.<br>
<br>
Wrapping up the lesson <<=setup.getNpcName('npc_nun_serenity', 'formal')>> takes questions at the front as you quietly slip out of the room having much to think about in regards to this unique religion.
<<case 2>>
<<=setup.getNpcName('npc_nun_serenity', 'formal')>> starts the class, her tone lusty and sensual.<br>
<br>
"@@.npc_nun_serenity;Welcome, sisters@@" she says in greeting as she looks at each of you in turn. "@@.npc_nun_serenity;Today I want to talk about the Goddess's greatest temple — us.@@"<br>
<br>
"@@.npc_nun_serenity;The cathedral around us is certainly imposing, an edifice of stone and glass raised up to exult the Goddess and provide a safe place for us to gather in her worship, but it is just a building, breath-taking, for sure, but it is not where the Goddess LIVES.@@"<br>
<br>
"@@.npc_nun_serenity;For much of our order's history we were discriminated against, hounded and persecuted. We could not construct such a building as this, but we persisted. The temple was ourselves, our bodies consecrated, made beautiful in her image, our every act exulting her and spreading her grace to the world and, eventually... that brought us to here, this great church, where we can act at least partially in the open.@@"<br>
<br>
She looks around the room again. "@@.npc_nun_serenity;And so it is with you. Let your bodies be temples unto the Goddess, carry her secret deep within you, but also let it be revealed in all that you do. That is the true message of our belief — not just to memorise a list of virtues, but to exult them, and in so doing exult ourselves becoming the best women we can be.@@"<br>
<br>
There is a bit of applause after which <<=setup.getNpcName('npc_nun_serenity', 'formal')>> has you do some reading about more of the history of the church. The class eventually comes to a close and you leave.
<<case 3>>
<<=setup.getNpcName('npc_nun_serenity', 'formal')>> starts the class, launching into a powerful, and erotic lecture extoling the importance of raw feminine sexuality to the precepts of the faith.<br>
<br>
To emphasise her point she shrugs out of her cloth habit to display the head-turning outfit beneath. Mirroring the cotton robe and wimple <<=setup.getNpcName('npc_nun_serenity', 'formal')>> now displays the head to toe latex version she is wearing. Stepping out from behind the lectern, spreading her legs as far as her hobble chains allow to give the class time to admire her sexy attire; skin-tight rubber paired with a stringent corset, thigh high boots and a gleaming chastity belt.<br>
<br>
"@@.npc_nun_serenity;To inspire lust, to spark passion with one's mere beauty... so marks a true servant of the Goddess, one of her loyal avatars upon this mortal plane. My clothing, my makeup, my daily routine, all serve to accentuate and enhance my beauty, the belt I wear keeps me filled and lusty — the lock such that any but myself may open it to make use of sensitive clit and hungry rear hole — an offering I make gleefully and gladly.@@" Her large breasts heave with each passionate word.<br>
<br>
Stepping back behind the lectern she continues somewhat more calmly. "@@.npc_nun_serenity;As an ordained nun I have pledged my body fully to the Goddess, devoting myself to extremes far beyond what most mortals are capable of. Such intensity is a special calling, one I am glad to have heard, but not one suitable for all among our congregation. I invite you, as you read the words of the Goddess, consider how her guidance can be incorporated into your life. Spending your days in constant arousal is certainly an option, but even the slightest effort to bring her joy, her passion into the world is a glorious gift. She has given us so much, as women, it is a privilege to be able to give some of that back in spreading her blessings.@@"<br>
<br>
The idea of being so completely given over to sex is as erotic as it is intimidating, every student looking upon <<=setup.getNpcName('npc_nun_serenity', 'formal')>> with new appreciation to go with previous lust. The class finishes and you note a couple of students heading towards the front, perhaps to "test" the nun's comment as to the functionality of her chastity belt...<br>
<br>
As fun as such an idea sounds there seems to be enough people crowded around the lusty nun and you make your exit from the classroom alongside some of the more timid students.
<<default>>
ERROR unknown church level: <<=$player.flags.church.level>>
<</switch>>
<br><br>
[<<moveTo "event_church_root" "Return to the church narthex." 120>>]
</div>/*#
#desc: select what level of confession to undergo
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.church_count += 1>>
<<set $daily.church_conf = true>>
<<set $scene.level = setup.getChurchActivityLevel($player.flags.church.level, $player.flags.church.activities["confession"])>>
<<switch random(9)>>
<<case 0 1 2 3>>
<<set $scene.confessor = "priest">>
<<case 4 5 6 7>>
<<set $scene.confessor = "nun">>
<<case 8>>
<<set $scene.confessor = "sissy_superior">>
<<case 9>>
<<set $scene.confessor = "fem_supreme">>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Outside Confessionals at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_external.png">>
<div id="invframe" class="scrolltext">
Approaching the row of confession booths you are greeted by the nun <<=setup.getNpcName('npc_nun_harmony', 'formal')>>.<br>
<br>
"@@.npc_nun_harmony;The blessings of the Goddess be upon you, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>. What manner of unburdening are you seeking this glorious day?@@"<br>
<br>
[<<moveTo "event_church_confession_2" "Say you're looking for a basic confession." 300 "<<set $scene.level=0>>">>]<br>
<<if $scene.level >= 1>>
[<<moveTo "event_church_confession_2" "Say you would like a more intense confession today." 300 "<<set $scene.level=1>>">>]<br>
<</if>>
<<if $scene.level >= 2>>
<<if $scene.level >= 3 && $player.flags.church.level < 3>>
[<<moveTo "event_church_confession_2" "Say you are ready for a deep, thorough confession." 300 "<<set $scene.level=3>>">>]<br>
<<else>>
[<<moveTo "event_church_confession_2" "Say you are ready for a deep, thorough confession." 300 "<<set $scene.level=2>>">>]<br>
<</if>>
<</if>>
<<if $scene.level >= 3 && $player.flags.church.level >= 3>>
[<<moveTo "event_church_confession_2" 'Say you are in need of an extreme, "scour my soul" confession.' 300 "<<set $scene.level=3>>">>]
<</if>>
</div>/*#
#desc: confess your sins at church
#status: RELEASED 0.8.2.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.confessionCount = 0>>
<<set $player.flags.church.activities.confession[$scene.level]++>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<set $player.location to "Confessional at the Church of the Goddess">>
<<switch $scene.confessor>>
<<case "priest">>
<<createAdvBGR "./images/locations/church_confession_private.png" setup.charImage("npc_priest")>>
<<case "nun">>
<<createAdvBGR "./images/locations/church_confession_private.png" "npc_nun_harmony">>
<<case "sissy_superior">>
<<createAdvBGR "./images/locations/church_confession_private.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<<case "fem_supreme">>
<<createAdvBGR "./images/locations/church_confession_private.png" setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<</switch>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_nun_harmony', 'formal')>> smiles and guides you towards one of the confession booths.
<<switch $scene.level>>
<<case 0 1>>
You take a seat in the private chamber and close the door behind you. From the other side of the partition you hear the soft breathing of your confessor waiting for you to speak.
<<case 2>>
Stepping into the private chamber you close the door and kneel down.<br>
<br>
There is a quiet mechanical sound from behind your back as a dildo rises up towards you.
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You feel the prodding against your covered hole and you explain that you are currently locked from use. The phallus retreats.
<<else>>
Reaching behind, you expose your bum and remove the <<=setup.getItemTypeName("plug")>> from your ass to clear the way for the lubricated "Sacred Rod of Penance" to enter you.
<</if>>
<<else>>
Adjusting your clothing you expose your rear hole for the lubricated "Sacred Rod of Penance" to <<if setup.checkItemTypeTag('plug', ['hollow'])>>slot through your hollow plug<<else>>enter you<</if>>.
<</if>>
<br><br>
From the other side of the partition you hear the soft breathing of your confessor waiting for you to speak.
<<case 3>>
Stepping into the private chamber you close the door only for another to be opened opposite.<br>
<br>
A latex-clad hobbled and gagged nun appears. Taking you by the hand she leads you through a narrow hallway and into a somewhat larger private chamber. She helps you onto an X frame, binding you in place before dropping into a shallow curtsy and taking her place sitting between your legs. Behind your back you hear another door open and the footsteps of your as yet unseen confessor entering the room.<br>
<br>
<<switch $scene.confessor>>
<<case "priest">>
"@@.npc_priest;Hello, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>. I look forward to hearing your confession today, so please, unburden yourself.@@"
<<case "nun">>
The click, click of high heels circles around in front of you until your confessor comes into view. All you can tell is that she is a nun, her face masked to obscure her identity. She bows, brandishing a flogger in one hand and a vibrator in the other; the large gag visibly spreading her lips driving home that she will be responding to your confessions in a non-verbal manner.
<<case "sissy_superior">>
"@@.npc_sissy_superior;Greetings, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>. I do so enjoy taking your confession so please... tell me what has been concerning you of late.@@"
<<case "fem_supreme">>
"@@.npc_fem_supreme;Greetings, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>. I imagine you have much which you would like to unburden yourself so please, proceed with your confession.@@"
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
Of what will you confess today?<br>
<br>
<<printNpcThemeCategory
'npc_priest'
'event_church_confession_root'
'event_church_confession_details'
>>
<br>
[<<moveTo "event_church_confession_3" "Finish confession." 300>>]
</div>/*#
#desc: confess another sin at church
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_priest.flags.confessors[$scene.confessor] = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.level == 3>>
<<switch $scene.confessor>>
<<case "priest">>
<<=ps(setup.getNpcName('npc_priest', 'formal'))>> voice is welcoming as you pause between confessions. "@@.npc_priest;Do you have anything else today? I know confession can be difficult, especially stripped of the mock anonymity of the confessional, but trust me when I say that this is for the betterment of your psyche and your soul.@@"
<<case "nun">>
You hear the swish of the flogger, the silent nun waiting for your next confession.
<<case "sissy_superior">>
<<=ps(setup.getNpcName('npc_sissy_superior', 'formal'))>> voice is soft and comforting as she stands behind you. "@@.npc_sissy_superior;Continue, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>> it is my desire to help bring you closer to the Goddess and help you through whatever issues you are having of late.@@"
<<case "fem_supreme">>
<<=ps(setup.getNpcName('npc_fem_supreme', 'formal'))>> voice is stern and commanding. "@@.npc_fem_supreme;Continue, <<=$player.first_name>>. Only through complete confession before the Goddess can you continue to advance in your spiritual journey.@@"
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<<else>>
On the other side of the partition your confessor waits quietly for your next confession.
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
The dildo in your ass lies quiet, ominously filling you, but still and silent for the moment.
<</if>>
<</if>>
<br><br>
<<if $scene.confessionCount > $player.flags.church.level+$npc_manager.stage>>
<<switch $scene.confessor>>
<<case "priest">>
"@@.npc_priest;Thank you, Sister, for unburdening yourself to me today. I believe it would be best for you to take some time and think on these lessons. Too much confession, too fast, can be almost as bad as no confession at all.@@"
<<case "nun">>
<<if $scene.level == 3>>
You hang in your bonds and the nun nods in understanding that you have reached your body has reached its limit for one day's confession.
<<else>>
"@@.npc_nun_harmony;I believe that is enough confessions for one day. Go, Sister, and think on what you have learned.@@"
<</if>>
<<case "sissy_superior">>
"@@.sissy_superior;That is sufficient confession for one day, your spirit needs time to reflect on these lessons, that you may grow closer to the Goddess.@@"
<<case "fem_supreme">>
"@@.npc_fem_supreme;I believe that will be sufficient for today. Take time to think on these lessons from the Goddess.@@"
<</switch>>
<<else>>
<<printNpcThemeCategory
'npc_priest'
'event_church_confession_root'
'event_church_confession_details'
>>
<br>
[<<moveTo "event_church_confession_3" "Finish confession." 300>>]
<</if>>
</div><<set $player.location to "Confessional at the Church of the Goddess">>
<<switch $scene.confessor>>
<<case "priest">>
<<createAdvBGR "./images/locations/church_confession_private.png" setup.charImage("npc_priest")>>
<<case "nun">>
<<createAdvBGR "./images/locations/church_confession_private.png" "npc_nun_harmony">>
<<case "sissy_superior">>
<<createAdvBGR "./images/locations/church_confession_private.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<<case "fem_supreme">>
<<createAdvBGR "./images/locations/church_confession_private.png" setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<</switch>>/*#
#desc: confess detailed sin at church
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_priest.flags.confessors[$scene.confessor] = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
To what else will you confess?<br>
<br>
<<printNpcThemeDetails
'npc_priest'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
<br>
[<<moveTo "event_church_confession_3" "Finish confession." 300>>]
</div>/*#
#desc: leave confession booth
#status: RELEASED 0.8.2.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.level>>
<<case 0>>
Oddly aroused, yet also more relaxed, you rise to your feet and open the door out of the confessional.
<<case 1>>
Feeling aroused, though a bit better about yourself, you rise to your feet and open the door out of the confessional.
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
Confession over you rise to your feet, the phallus retreating from your ass leaving you feeling empty.
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
Fortunately you have your plug handy, quickly shoving it back in place.
<</if>>
<</if>>
Feeling somewhat better after your confession you straighten your clothes and reach for the door.
<<case 3>>
Unstrapped from the X-frame by the silent rubber nun you are helped back into your clothes and escorted back through the secret hallway to the confessional booth. With a bit of a skip in your step you thank the nun for her assistance and reach for the door.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
[<<moveTo "event_church_root" "Leave the booth." 300>>]
</div>/*#
#desc: confess having been pegged at church
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "pegged" $scene.confessor $scene.level>>
<<set $scene.confessionCount += 1>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor != "priest">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You confess to having been anally plundered by a strap-on.
<<case 1>>
You confess to having had anal sex with a strap-on equipped woman.
<<case 2>>
You confess that you have been pegged by a woman.
<<case 3>>
You confess to you having enjoyed being pegged.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_priest;Hmm, I see no sin in such an act. Be it with a toy or natural appendage any sex joyously shared between consensual partners is a positive encounter.@@"
<<case 1>>
"@@.npc_priest;Ah, strap-ons are such wonderful tools, enabling those less naturally gifted in the equipment department to share in the joy of penetration. Congratulations and I wish the Goddess's blessing on your future encounters enjoying such activities.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_priest;Pegged? Hmm, so you enjoy taking something firm and artificial up your ass?@@"<br>
<br>
The dildo in your ass thrusts to punctuate the<<if $npc_priest.fem>> priestess' <<else>> priest's <</if>>words and you moan.<br>
<br>
"@@.npc_priest;I see, well, it sounds like everything is in order, keep up the good deeds, sister.@@"
<<else>>
"@@.npc_priest;Hmm, confessing to pegging... are you getting addicted? Is that the reason you are locked safe back there? Well, denial is certainly blessed by the Goddess, I wish you further luck in your exploration.@@"
<</if>>
<<case 3>>
A hard slap impacts your rear in punishment.<br>
<br>
"@@.npc_priest;Thinking that being pegged would justify a confession? You should know better by now, Sister, the Goddess will always smile down upon you enjoying being fucked, a partner needing some extra technological assistance is no sin at all.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;I see, well, what we do with a consensual partner is perfectly fine in the eyes of the church, so there is really nothing you need to confess.@@"
<<case 1>>
"@@.npc_nun_harmony;Ah, pegging, such a wonderful act, is it not? Go forth, sister, and continue to enjoy such things with the full blessing of the Goddess.@@"
<<case 2>>
"@@.npc_nun_harmony;Pegging... are you coming to confession to brag? Not that I mind hearing about it, but, well... you have to know by now that the Goddess would be perfectly happy with that sort of thing.@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
<br><br>
You feel the dildo you are sitting on begin to thrust in and out. "@@.npc_nun_harmony;Here, enjoy a bit of a nostalgia trip, mmm, I bet you just love that.@@"<br>
<br>
You moan your assent, the delicious butt-fucking continuing for a few minutes before the nun turns it off and asks you to resume your confession.
<</if>>
<<case 3>>
Moving close behind you the nun's gloved hands caress your rear, gently teasing as she silently communicates the message that the Goddess smiles down on all the wonderful fun you can have with your cute bum.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_sissy_superior;Pegging? You mean where a woman straps on a dildo to have sex with their partner? Well, that seems quite fine, but if it is bothering you know that the Goddess absolves you of any guilt.@@"
<<case 1>>
"@@.npc_sissy_superior;Pegging? Keep up the good work, Sister. The Goddess encourages her followers to freely explore all manner of consensual sexual acts.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_sissy_superior;I see,@@" she states, as the dildo in your ass slides deeper. "@@.npc_sissy_superior;I know it is not the same as a partner lovingly pressing their hips against you as they slide deep but... it is the best I can provide at the moment.@@"
<<else>>
"@@.npc_sissy_superior;I see, I would reward you for such good behaviour, but, alas, you seem to not be availing yourself of the sacred rod installed in the seat of your booth. Perhaps next time.@@"
<</if>>
<<case 3>>
"@@.npc_sissy_superior;Pegging?@@" A hard gloved slap impacts your butt makes you jump in your bonds. "@@.npc_sissy_superior;No surprise you've being pegged, why, I have half a mind to pound that sexy ass right now, you'd like that, wouldn't you?@@"<br>
<br>
She squeezes your ass and you moan, nodding in assent.<br>
<br>
"@@.npc_sissy_superior;Mmmm, that's what I thought, too bad for you that we have not enough time, come on then, let us continue with your next soul-cleansing confession.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_fem_supreme;Pegging? Hmm, yes, there is nothing to forgive there, we are not a faith that puts limits on the private activities of our followers. All that matters is that you and your partner enter the situation with joy and consent.@@"
<<case 1>>
"@@.npc_fem_supreme;Mmm, a lovely activity, and not one in any need of confession. I wish you continued enjoyment in your future explorations.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo impaling your ass thrusts deeper and you gasp as you try to focus on the voice filtering in from the other side of the partition.<br>
<br>
<</if>>
"@@.npc_fem_supreme;An excellent step going out and finding a woman willing to plow your ass like you deserve. Enjoy it, savour it, glory in that feeling of being fucked.@@"
<<case 3>>
<<=setup.getNpcName('npc_fem_supreme', 'formal')>> steps closer and you feel her warmth against your backside as her hard cock presses against your rear.<br>
<br>
"@@.npc_fem_supreme;Mmm, pegging, quite a delight is it not? A lovely substitute for those unable to provide the... real article.@@"<br>
<br>
You moan as she grinds against you, shuddering with need when she steps away to leave you wanting.<br>
<br>
"@@.npc_fem_supreme;Keep up the good work, Sister, all of us could use more hard dicking, so take it wherever you can get it.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div><<if $scene.confessionCount > $player.flags.church.level+$npc_manager.stage>>
<<switch $scene.confessor>>
<<case "priest">>
"@@.npc_priest;Thank you, Sister, for unburdening yourself to me today. I believe it would be best for you to take some time and think on these lessons. Too much confession, too fast, can be almost as bad as no confession at all.@@"
<<case "nun">>
<<if $scene.level == 3>>
You hang in your bonds and the nun nods in understanding that you have reached your body has reached its limit for one day's confession.
<<else>>
"@@.npc_nun_harmony;I believe that is enough confessions for one day. Go, Sister, and think on what you have learned.@@"
<</if>>
<<case "sissy_superior">>
"@@.sissy_superior;That is sufficient confession for one day, your spirit needs time to reflect on these lessons, that you may grow closer to the Goddess.@@"
<<case "fem_supreme">>
"@@.npc_fem_supreme;I believe that will be sufficient for today. Take time to think on these lessons from the Goddess.@@"
<</switch>>
<<else>>
<<printNpcThemeReturn 'npc_priest' 600>>
<br>
[<<moveTo "event_church_confession_3" "Finish confession." 300>>]
<</if>>/*#
#desc: confess to having sucked cock
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "blowjob" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor != "priest">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You nervously confess to having been on the giving side of a blowjob.
<<case 1>>
You confess to having willingly sucked another person's cock.
<<case 2>>
You confess to having sucked off a cock.
<<case 3>>
You "confess" to indulging your lusts and sucking on a nice tasty cock.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_priest;I see, and you are feeling conflicted about what you have done? Do not be concerned. These things are perfectly natural and there is no reason for you to feel guilty or stressed over what you have done.@@"
<<case 1>>
"@@.npc_priest;I see, well, there is no sin here... unless you did a poor job?@@" <<He npc_priest>> chuckles, "@@.npc_priest;I jest, but know that, in the eyes of the Goddess, there is no sin to be had in consensual sex.@@"
<<case 2>>
"@@.npc_priest;And sucking cock... it is something you enjoy? Show me.@@"<br>
<br>
You gasp slightly as a circular panel opens and <<=ps(setup.getNpcName('npc_priest', 'formal'))>> cock sticks through, glory-hole style.<br>
<br>
Smelling clean and strangely enticing you lean forward<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>> as the dildo in your ass gently vibrates against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>><</if>>. Tasting as good as <<he npc_priest>> looks you suck the delicate <<if $npc_priest.fem>>feminine<<else>>yet masculine<</if>> cock for several minutes before <<he npc_priest>> pulls back, leaving you somewhat wanting for more.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
You can tell that your partner was moments away from climax thanks to your expert skill, <<his npc_priest>> voice somewhat breathless.<br>
<br>
"@@.npc_priest;My! Your cocksucking is truly a blessing, go forth and spread your skills sister and you will surely make the world a better place!@@"
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You do your best, but the cock withdraws to the other side of the partition still hard and well shy of orgasm. Sitting back in disappointment the cock in your ass touches you even deeper.<br>
<br>
"@@.npc_priest;An honourable effort, you are well on the way to being quite the skilled cocksucker and I wish luck, and the blessing of the Goddess, on your further pursuits.@@"
<<else>>
The cock withdrawing to the other side of the partition seems more a consolation, you did what you could, but you are still quite the novice when it comes to smoking pole.<br>
<br>
"@@.npc_priest;Hmm, yes, I can see why you might feel a need for confession. Do not be worried, you have committed no sin but, well... you might want to work on honing your skills.@@"
<</if>>
<</if>>
<<case 3>>
"@@.npc_priest;Ah, fellatio, such a wonderful thing to do. I remember thinking when I first met you that you had a nice pair of dicksucking lips, it is good to know you are putting them to good use, keep it up!@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;I see, well, these things do happen and the Goddess is certainly understanding. Though you did nothing wrong you may consider yourself forgiven if that would help assuage your feelings, but really everything is fine.@@"
<<case 1>>
"@@.npc_nun_harmony;I see, well, the Goddess is quite alright with that sort of thing — did you swallow? Her teachings does state that such is preferred, but not strictly mandatory. Did you have anything else to confess?@@"
<<case 2>>
"@@.npc_nun_harmony;Sucking cock... hmm, well that is certainly fun, how are you at cunnilingus? Alas, my chastity means that I am presently unable to sample your skills on either account, but any oral dissemination of joy is smiled upon in her eyes.@@"
<<case 3>>
Walking around in front of you the silent nun smiles at you with her eyes before lowering down, nuzzling <<if $player.body_ref.penis>>your <<getWordMyPenis>> with her smooth gagged face as a brief tease before giving <<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>your crotch a gentle pat<<else>>your balls a friendly parting squeeze<</if>><<else>>between your legs<</if>> before moving back behind to listen to your next confession.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_sissy_superior;Fellatio? Well there is no sin in that, is there anything else you wish to discuss today?@@"
<<case 1>>
"@@.npc_sissy_superior;Fellatio, I see and you are confessing to this because you are struggling to deal with how it made you feel? If you enjoyed it, and your partner enjoyed it well... everything is right and good and you should certainly continue.@@"
<<case 2>>
"@@.npc_sissy_superior;Hmm, confessing to being an aspiring cocksucker... well, certainly it falls within my religious duties to aid you in your exploration.@@"<br>
<br>
A moment later a circular hole opens in the partition separating you from the high priestess, and her erect cock thrusts towards your face. <<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>Simultaneously the dildo in your ass plunges deeper, your gasp of surprise spreading your lips for the cock before you.<</if>><br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Some might be daunted by the large cock that looms before you, but you are more than up to the challenge, practically lunging forward as you swallow it all, sucking and licking and taking it all the way down your throat to stimulate every centimetre of its substantial length.
<<else>>
Her cock may be large, but you are far from intimidated, eagerly doing your best to trace over every millimetre of her hot flesh with tongue and lips.
<</if>>
<br><br>
Exerting expert control over herself <<=setup.getNpcName('npc_sissy_superior', 'formal')>> withdraws to leave you hungry for more and you settle back in your seat only for that phallus, too, to retract; though only partially, thankfully.<br>
<br>
"@@.npc_sissy_superior;Very good, you are past needing to hone your skills and should proudly deploy them to make the world a better, more holy place in the Goddess's image.@@"
<<else>>
The cock before you is glorious and awe inspiring. Large without being grotesque it is, in a word, perfect.
<<if setup.getTotalValue("oral") > 5>>
Using both hands and your mouth you administer the best blowjob you know how, sucking and slurping and panting as you exert yourself trying to fully service <<=ps(setup.getNpcName('npc_sissy_superior', 'formal'))>> member.
<<else>>
You wrap both hands around <<=ps(setup.getNpcName('npc_sissy_superior', 'formal'))>> shaft and still are left with more than you can comfortably fit in your mouth leaving you to merely lick and suck on the tip as you try to adapt your meager skills to its size.
<</if>>
<br><br>
After several minutes, and without gracing you with anything more than thin, but delicious, pre-cum her cock slowly withdraws. "@@.npc_sissy_superior;Not bad, though I advise you to invest more time into further developing your skills.@@"
<</if>>
<br><br>
The glory hole opening between you and the High Priestess quietly swivels closed as you hear here re-situate herself in her seat.
<<case 3>>
"@@.npc_sissy_superior;Mmm, sucking cock, such a lovely activity. I daresay I feel hollow if I go more than a day without... indulging.@@" Though you cannot see her from your bound position you can hear the smile in her voice, <<if $player.body_ref.penis>>your own <<getWordMyPenis>> <<if setup.checkItemTypeWorn("cage")>>straining within its cage<<else>>stiffening<</if>><<else>>and you clench with excitement<</if>> at the reminder of all the erotic things that happen under the watchful eyes of the Goddess.<br>
<br>
"@@.npc_sissy_superior;Alas, there is no time for such fun at present as we need to move along with your... confession.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_fem_supreme;Fellatio? Well, there is no sin in that, is there anything else you wish to discuss today?@@"
<<case 1>>
"@@.npc_fem_supreme;Well, performing fellatio is no sin and yet you seek to confess, I suppose this means that your act has left you feeling conflicted? Well, then let me dispel those feelings. Sucking cock, to use the vulgar phrasing is perfectly natural, as is wanting to continue to feed your newfound appetite.@@"
<<case 2>>
You hear naught but silence from the other side of the partition until a small circular window opens and a thick, beautiful cock sticks through.<br>
<br>
"@@.npc_fem_supreme;If you are a cocksucker, then show it.@@" The priestess states, the thick cock pulsing slightly and beading with precum.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Smiling at the prospective challenge you lean in
<<if setup.getTotalValue("oral") > 15>>
relaxing your throat, your lips gliding down her shaft until your nose is pressed against the hard wood of the partition.
<<else>>
taking as much of her as you can as you suck hard.
<</if>>
With hand and lips and tongue you endeavour to give her the best blowjob you can, surprised when she retreats back through the hole, leaving you wanting for more and disappointed at not being graced with her cum.<br>
<br>
"@@.npc_fem_supreme;Very good, your skills please the Goddess, and myself.@@"
<<else>>
Her length far beyond your meager skill to handle merely with your mouth you wrap your lips around her swelled tip and grasp her with both hands.
<<if setup.getTotalValue("oral") > 5>>
Running your tongue along the underside of her glans you loosely glide your fingers up and down.
<<else>>
Focusing your attention on her cock-head you lick and suck, doing your best to be active even if you somewhat lack for a plan.
<</if>>
After a scant few minutes of enjoying her lovely member she withdraws, her awe inspiring cock disappearing back through the hole from whence it emerged.
<</if>>
<br><br>
The opening in the partition closes
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
as the dildo at your other end thrusts deeper.<br>
<br>
"@@.npc_fem_supreme;A reward for your efforts, now, to what else do you wish to confess?@@"
<<else>>
and you hear a shuffle of clothing as the priestess settles back into her seat.<br>
<br>
"@@.npc_fem_supreme;So, what else do you wish to confess to today?@@"
<</if>>
<<case 3>>
"@@.npc_fem_supreme;Sucking cock you say...@@" She states stepping closer until you feel her pressing against your back, her own bulging member pressed against your rear. "@@.npc_sissy_superior;So, would you suck my cock?@@" She whispers dominantly in your ear.
<br>
Swooning as much as your bonds allow you nod as her finger traces around your lips, sliding into your mouth as if to mark its territory as she purrs in your ear.<br>
<br>
"@@.npc_fem_supreme;Good girl, you really are making a fine acolyte of the Goddess and who knows... maybe someday you will take the plunge and become even more... I promise you will enjoy it.@@"<br>
<br>
Feeling her grind against your rear for a moment before stepping away has your thoughts swirling with just how much you would enjoy that sort of thing, but she swiftly moves on with the confession.
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to having anal sex
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "anal" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor != "priest">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You confess to having been sodomized.
<<case 1>>
You confess to being on the receiving end of anal sex.
<<case 2>>
You confess to having enjoyed receiving anal sex.
<<case 3>>
You "confess" to having been fucked in the ass.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_priest;Such harsh words! No, my child, though sodomy may be a technically correct term for what you have done, such acts are not sins, so long as both you and your partner are fully consenting.@@"
<<case 1>>
"@@.npc_priest;Ah, anal sex, I am glad to hear you are coming to enjoy such things, being penetrated truly is a blessing.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You gasp as, before replying, the <<priest npc_priest>> taking your confession sends the dildo you are sitting upon thrusting deeper into your ass.<br>
<br>
"@@.npc_priest;Lovely, well, it sounds like your training is paying off, in the name of the Goddess I bless your hole and wish you further penetrated joy.@@"
<<else>>
"@@.npc_priest;Hmm, you speak of having anal penetration and yet you are not presently enjoying the Sacred Rod of Penance... well, perhaps next time. Until then I grant the Goddess's blessing on your future penetrative experiences.@@"
<</if>>
<<case 3>>
"@@.npc_priest;You really are becoming such a tease.@@" <<He npc_priest>> states, giving your rear a hard slap as <<he npc_priest>> presses against you. <<His npc_priest>> cock is hard and bulging, <<his npc_priest>> clothing all that separates it from the crack in your ass.<br>
<br>
"@@.npc_priest;Perhaps some other time I can enjoy... this.@@" Grinding against your pert rear emphasises just what "this" is and you moan reflexively. "@@.npc_priest;Alas, confession takes priority, though I hope you have something to actually get off your chest instead of merely bragging about your wonderful sexy exploits.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;Sodomy, my, my, was this your first time? No matter, you have surely committed no sin. So long as your couplings are entered into with joy and consent the Goddess will always smile down.@@"
<<case 1>>
"@@.npc_nun_harmony;Mmm, how lovely, do tell me more.@@"<br>
<br>
Nervously you go into detail of your experience being sodomized, the nun sounding a bit breathless with enthusiasm as she presses for more on more details.<br>
<br>
"@@.npc_nun_harmony;Well!@@" she states in conclusion with what sounds almost like a suppressed moan. "@@.npc_nun_harmony;I, uh, now that I have a full understanding of what happened I can safely say that no sin was committed. In fact it sounds like you were blessed — to be penetrated is such a wonderful thing and I wish you continued fortune in that regard.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_nun_harmony;May the Sacred Rod of Penance both recall your past and better prepare you for your future.@@" She states as the dildo in your ass thrusts deeper.<br>
<br>
<</if>>
"@@.npc_nun_harmony;Bless you, sister, and good fortune in your continued service.@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
<br><br>
You let out a soft moan as the dildo retracts nearly all the way, leaving you feeling horny and empty.
<</if>>
<<case 3>>
The lash that lands across your back is painful and yet you feel that it is less a punishment than the gagged, and presumably chastity-locked, nun taking out frustration at hearing your effective "brag." <br>
<br>
<<if setup.getTotalValue("bdsm") >= 10>>
Of course the pain only serves to turn you on further and you go deeper into detail as to
<<else>>
Despite the pain you find yourself becoming aroused, going into more detail as you recall
<</if>>
your most recent anal encounter as the whip continues to fall until both you and the nun are breathing hard and heavy.<br>
<br>
"@@.pc;Thank you, Sister.@@" You whisper as she places a gentle hand on your shoulder to signal it is time to continue on with your confession.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_sissy_superior;Sodomy? Well, aren't you just getting up to all sorts of fun. Know that you have committed no sin, the Goddess takes a far more enlightened view as to human relationships than that.@@"
<<case 1>>
"@@.npc_sissy_superior;Ah, sodomy, is it not wonderful? Though I doubt you need the encouragement after your experience well... I will wish you luck, blessings and fortune whence next you are penetrated.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_sissy_superior;Anal sex? Well, I believe we both know what that calls for.@@"<br>
<br>
The dildo thrusts deeper into your ass as you moan.<br>
<br>
"@@.npc_sissy_superior;Ah, that is music to the Goddess's ears, the sound of wanton lust. Enjoy it, savour it, and spread that wonderful sensation throughout your life.@@"
<<else>>
"@@.npc_sissy_superior;Anal? Well, I hope you are plugged because, alas, I cannot properly reward you with the Rod of Penance. Promise that you will make up for it by taking it nice and hard from behind at your soonest convenience.@@"
<</if>>
<br><br>
She waits for you to mumble a thanks before the confession continues on.
<<case 3>>
"@@.npc_sissy_superior;Anal sex... to be penetrated so intimately...@@" As she talks, she walks closer until her own bulging package is pressed against your back and she leans down to whisper in your ear. "@@.npc_sissy_superior;Is it not... glorious?@@" She grinds against you to "drive home" her thesis and you moan, eyes rolling back as you nod in assent.<br>
<br>
"@@.npc_sissy_superior;Lovely. As you seem already so well versed in the Goddess's teachings... go forth, and continue to enjoy receiving her blessings.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_fem_supreme;Sodomy? A sin? No, no, no my dear it is hardly that. Whatever mental concerns you have may be freely banished, you have done nothing that warrants confession, though I thank you for the trust displayed in coming to me with your concern.@@"
<<case 1>>
"@@.npc_fem_supreme;Hmmf, if receiving anal sex was a sin well... I daresay nigh every member of the Goddess's church would be a sinner! No, while it is not mandated anal sex is such a glorious equalizer — though other acts are wonderful in their variety here is a singular penetrative joy that may be savoured by all of the Goddess's followers, regardless of their physical arrangement. Go forth, sister, and continue to do good.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You haven't even finished speaking when the dildo in your ass thrusts deeper and your recitation is interrupted by your moan as it scrapes against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
"@@.npc_fem_supreme;Hmm, looks like someone needs to learn some more self control. Certainly you should savour the pleasure of being penetrated hard and deep, but one must also cultivate the ability to focus on the here and now, else how will they graduate to serving multiple partners at once with their body?@@"
<<else>>
"@@.npc_fem_supreme;Hmm, if only I could properly reward you with the Sacred Rod of Penance... you have committed no sin and thus confession is not necessary, but I will make an assignment nonetheless — hasten forth as you have been, I can sense you are one who needs to take it from behind hard and often.@@"
<</if>>
<<case 3>>
"@@.npc_fem_supreme;Sodomy...@@" Her whip lashes out painfully and you yelp. "@@.npc_fem_supreme;To think such is a sin, even in jest!@@" The whip lands again
<<if setup.getTotalValue("bdsm") >= 10>>
and you moan, the pain only turning you on further.
<<else>>
and you whimper in pain.
<</if>>
<br><br>
"@@.npc_fem_supreme;Tell the truth — you are an eager butt-slut and you long to be penetrated again, to give all of your holes over to be used as the Goddess commands.@@"<br>
<br>
You shudder in arousal as she continues to flog you and before long you are desperate to be fucked, begging her to slam her glorious cock into your ass and flood you with her holy seed.<br>
<br>
The flogging stops and you hang in your bonds, panting. "@@.npc_fem_supreme;Very good, I believe this confession has been just what you needed, hmm?@@"<br>
<br>
Unable to form words a forlorn moan at the realisation that you will not be getting the ass-fucking you now so desperately desired at least seems sufficient to satisfy her.
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to prostituting yourself
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "prostitution" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor != "priest">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
Tearing up slightly you confess to the fact that you have begun selling your body for money.
<<case 1>>
You confess to your new side job as a prostitute.
<<case 2>>
You tell your "confessor" about your time working as a prostitute.
<<case 3>>
Your voice heavy with lust you talk about your most recent experience working as a whore.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_priest;I see. Such actions are not, themselves sinful, so long as they are undertaken for the proper reasons. After all, how could it be wrong to sell that which it is perfectly fine to give away?@@"
<<case 1>>
"@@.npc_priest;Prostitution... well, it is the oldest profession, and a noble one if entered into with consent and lust. There is no sin here, so long as you continue to enjoy your work.@@"
<<case 2>>
"@@.npc_priest;While sex freely given is truly a wonderful thing, there is no shame in charging for it. Goddess grant you fruitfulness in your continued endeavours.@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
<br><br>
You gasp as you are "rewarded" with a few thrusts of the dildo impaling you from behind.
<</if>>
<<case 3>>
"@@.npc_priest;Selling yourself?@@" <<He npc_priest>> asks and you tense, anticipating a punishing blow "@@.npc_priest;How wonderful... though I would remind you about the blessing of... tithing.@@"<br>
<br>
<<=setup.getNpcName('npc_priest', 'formal')>> gives your rear a quick squeeze to drive home what sort of "tithe" might be expected.
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;Do not cry, Sister. There is neither shame nor sin in such action, so long as you are doing it for the right reasons, in a sense it is really no different than any other job. Trading time and labour for monetary reward.@@"
<<case 1>>
"@@.npc_nun_harmony;Mmm, I remember working as a prostitute... it wasn't as fun as being a nun, but it was one of the better jobs I had. Keep up the good work, Sister!@@"
<<case 2>>
The nun seems very interested in the full details of how you treated your latest client,
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
her breaths coming faster as you describe each lewd act.
<<else>>
"rewarding" you by modulating the speed of the dildo filling your ass to match your story.
<</if>>
<br><br>
"@@.npc_nun_harmony;It sounds as if you are doing wonderful work, Sister. Keep it up!@@"
<<case 3>>
The gagged nun listens to your tale before lashing out. Crying out at the pain of the flogger you somehow understand that this is not a punishment. Rather, it is a consecration, a subtle ritual to "balance out" your charging for sex and recontextualize your lusty work as a sacrament to the Goddess.<br>
<br>
Hanging in your bonds when the whipping has concluded you whisper a soft "thank you," the nun's fingers gently caressing you in reward before she steps back to hear your next confession.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_sissy_superior;Intriguing, well, so long as you are staying safe the Goddess does not object to these things. I wish you luck in your future endeavours.@@"
<<case 1>>
"@@.npc_sissy_superior;Working as a whore, are we? You know there were times that the church survived via its temple prostitutes. Things are of course different these days, but I wish you luck in upholding such a venerable tradition.@@"
<<case 2>>
"@@.npc_sissy_superior;Prostitution hmm... I suppose such giving of yourself, even if you do charge, should be rewarded.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_sissy_superior;I convey to you the blessing of the Goddess, go forth and continue to do her will.@@"
<<else>>
The dildo inside of you begins to vibrate and you moan, your confessor's words making things even more intense. "@@.npc_sissy_superior;That's right, whore. Enjoy the fruits of noble work. Know that the Goddess's blessings are upon you and consider it your duty to convey that same joy to all of your clients.@@"
<</if>>
<<case 3>>
"@@.npc_sissy_superior;Prostitution, my, my... well, congratulations on your continued work in that noble tradition. I can just imagine how many clients are lining up for a piece of this...@@" She runs a hand over your butt and up your spine.<br>
<br>
"@@.npc_sissy_superior;You know, I'd be tempted to hire you myself... if I didn't already have you totally at my mercy.@@"<br>
<br>
You shudder and strain against your bonds — what she says is totally true and you moan with want. "@@.npc_sissy_superior;Tsk tsk, so eager to give it away, you really need to focus a bit more on business acumen, hmm? Besides, I'm on the clock myself, I am here to take your confession not to indulge your fuck-slut needs.@@"<br>
<br>
She steps away leaving you wanting for more.
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_fem_supreme;Interesting, I hear no sin in your words, but I will remind you to take care that you consider the Goddess's purpose for you in all things if you wish to stay on the path.@@"
<<case 1>>
"@@.npc_fem_supreme;Prostitution is no sin, but you should be mindful of your reason in pursuing such a career and ensure that your motivations are not tainted — your focus should always be on the pleasure, never the money.@@"
<<case 2>>
"@@.npc_fem_supreme;Prostitution, hmm? Congratulations on finding a way to get paid for something you would do anyway, isn't that right? Slut.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
Trembling you agree with her assessment, thanking her for the clarity as to how much you love getting fucked.
<<else>>
You moan as the dildo impaling you thrusts deeper.<br>
<br>
"@@.npc_fem_supreme;You like that? Is it good practice for your job as a whore?@@"<br>
<br>
You moan in agreement, thanking her for the assistance as you savour the prostitute-pounding action inside your ass.
<</if>>
<<case 3>>
"@@.npc_fem_supreme;Hmm, you know that being a whore is perfectly permissible, and yet you choose this to confess...@@" her whip lashes out with a crack, lashing your back painfully and causing you to cry out. "@@.npc_fem_supreme;If you desire the cleansing power of pain merely request such, do not think to manipulate your high priestess.@@"<br>
<br>
A second blow knocks the wind out of you and you gasp, apologising for your foolishness.
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to being feminized
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "feminized" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
Feeling embarrassed you speak hesitantly about your recent feminisation.
<<case 1>>
Nervously you talk about your ongoing feminisation.
<<case 2>>
You talk about the continued arc of your feminisation.
<<case 3>>
You go into deep, sordid detail of your glorious ascent into femininity.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_priest;Transitions are a part of life, many of us find a new path than the one that was originally laid out for us, but the journey is your own and it is valid.@@"
<<case 1>>
"@@.npc_priest;I wish you fortune on your journey — I know such decisions can be challenging, but finding the way to your true self is a reward worth the effort.@@"
<<case 2>>
"@@.npc_priest;It is good to hear that you continue to evolve in your own life just as you have progressed in your faith within the church. Go forth, Sister, and know that the blessing of the Goddess is with you.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo impaling your ass begins to softly thrust and you moan, heart racing at the wonderful "reward."
<</if>>
<<case 3>>
<<=setup.getNpcName('npc_priest', 'formal')>> ritualistically whips you while you give your confession, pausing as you finish to step closer and grind against your back, <<his npc_priest>> soft words sounding in your ear.<br>
<br>
"@@.npc_priest;What wonderful news. I wish you further fortune in your ongoing blossoming into your true self.@@"<br>
<br>
You moan, feeling the<<if $npc_priest.fem>> priestess' <<else>> priest's <</if>>hard cock press against your bare bottom, <<his npc_priest>> heat going straight through <<his npc_priest>> tightly fitted clothing as <<he npc_priest>> grinds for a few moments before stepping back away.
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;I see, well, know that we in the church are here for you, to support you as you continue along this path, wherever it may take you.@@"
<<case 1>>
"@@.npc_nun_harmony;Isn't femininity glorious? I am sure you will continue to see new opportunities in the future, indulge them with the Goddess's blessing.@@"
<<case 2>>
"@@.npc_nun_harmony;Mmmm, lovely. May the Goddess bless you on your continuing journey, as a full member of the church remember to take advantages of all our services as we would like nothing better than to hasten you along your path.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_nun_harmony;Here, enjoy a reward for your success.@@" The dildo impaling your ass begins to softly thrust and you moan, thanking the unseen nun for the blessing.<br>
<br>
"@@.npc_nun_harmony;Of course.@@" She replies, disabling the wonderfully thrusting phallus before you can reach a climax.
<</if>>
<<case 3>>
The gagged nun listens silently to your words before stepping in, groping and caressing your body in silent reward and acknowledgement, and approval, of your development.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
There is a long silence before a powerful, feminine voice sounds through the identity-obscuring divider. "@@.npc_sissy_superior;One's journey into femininity is always a personal one. Know that the route you take is a valid one for you — and the Goddess and all of her followers support you in it.@@"
<<case 1>>
"@@.npc_sissy_superior;Your tale is a familiar one — many of the Goddess's followers have trod a similar road. Know that all of us stand behind you, and wish you only the best as you continue to claim what is yours.@@"
<<case 2>>
"@@.npc_sissy_superior;I do so love hearing word of your progress. Isn't embracing femininity so delicious? Keep up the good work, sister, I see only bright things in your future.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
As she speaks the dildo impaling your ass begins to softly thrust and you moan. Your heart races as it plunges deep, stroking your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> and filling you up.<br>
<br>
"@@.npc_sissy_superior;All this and more is the Goddess's gift to us.@@" She states before turning down the intensity so that the dildo is merely softly vibrating.
<</if>>
<<case 3>>
"@@.npc_sissy_superior;What a... wonderful tale.@@" <<=setup.getNpcName('npc_sissy_superior', 'formal')>> states, stepping closer to your body, one hand lightly running down your side. "@@.npc_sissy_superior;I find myself reflecting my own journey and... ah, but you already know what wonders are before you...@@" Her hand continues down, finishing off by squeezing your rear before she steps away.
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
There is a long silence before a lusty, feminine voice floats through the identity-obscuring divider. "@@.npc_fem_supreme;Welcome sister. It sounds like your feminine journey is just begun, know that as you walk the Goddess's path, so too does she walk with you.@@"
<<case 1>>
"@@.npc_fem_supreme;Congratulations on your continued journey. Remember to savour every part of your new feminine experience.@@"
<<case 2>>
"@@.npc_fem_supreme;What a lovely tale.@@" The feminine voice on the other side of the partition states. "@@.npc_fem_supreme;Yes, such acts deserve reward...@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You gasp as the dildo you are sitting upon thrusts deep, filling your hole and then bursting into powerful vibrations that have you shuddering in place.<br>
<br>
"@@.npc_fem_supreme;Know the blessing of the Goddess, and rejoice.@@" She states. You moan in assent, but the delightful stimulation is cut short a few minutes later. "@@.npc_fem_supreme;Of course, all things in moderation...@@"
<</if>>
<<case 3>>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> walks around in front to face you, smiling at you and then leaning in for a kiss. "@@.npc_fem_supreme;Mmmm, you taste so wonderful... so feminine...@@" She strokes her hair as you blush. "@@.npc_fem_supreme;It is my privilege to extend to you the blessings of the Goddess. The quest for perfect, divine femininity is a never ending one — even I still strive to meet my personal ideal, but you have come so far, so wonderfully.@@"<br>
<br>
Giving your body a final caress she walks back around behind you.
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to performing cunnilingus
#status: RELEASED 0.8.2.0
#ignore_spell: v
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "cunnilingus" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor != "priest">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
Nervously you confess to having eaten out a woman.
<<case 1>>
Nervously you confess to your time spent with your face betwixt a woman's thighs.
<<case 2>>
You confess to having eaten out a woman.
<<case 3>>
You confess to how much you love cunnilingus.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_priest;Cunnilingus a sin? No, my dear. How could such a mutually pleasant act, and one of such care be a sin? Just as kissing upon the lips is a sign of affection, so to this meeting of a different set of lips.@@"
<<case 1>>
"@@.npc_priest;Cunnilingus? A sin? Why, in that case I daresay nearly ever member of this church would be a sinner! No, no, to joyously share such a meal is no sin, it is a sacrament! And one I hope you are blessed to take many times more!@@"
<<case 2>>
You hear gentle laughter from the other side of the partition. "@@.npc_priest;Cunnilingus, a sin? What absurdity.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You gasp as the dildo you're sitting on begins to thrust vigorously. "@@.npc_priest;There you go. Fuck that foolishness right out of your body. To eat of a willing woman is a blessing, a sacred, wonderful gift shared between you, her, and the Goddess herself.@@"
<<else>>
"@@.npc_priest;Would that I could administer unto you the Sacred Rod of Penance. perhaps that would aid you in understanding that to eat of a willing woman is a blessing, a sacred, wonderful gift shared between you, her, and the Goddess herself.@@"
<</if>>
<<case 3>>
"@@.npc_priest;Cunnilingus, a sin?@@" You gasp in pain as <<his npc_priest>> hand lands against your bottom. "@@.npc_priest;Not a sin, but a sacrament. To perform such an act, for your lips to meet a woman's in such a way... why that is akin to kissing the Goddess herself, so go forth, and shower our deity with kisses.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;Cunnilingus, a sin?@@" The nun laughs. "@@.npc_nun_harmony;Sorry about that but... this is not that sort of church. The Church of the Goddess encourages mutual sexual exploration such as that, our bodies are a gift to share and enjoy.@@"
<<case 1>>
"@@.npc_nun_harmony;Oooh, cunnilingus, or, as we call it, kissing the Goddess. Tell me more! How did she taste? Did you spear deep or focus on the clit?@@"<br>
<br>
Her words seem to draw the description out of you, and you would swear that she breathes heavier which each detail you provide.<br>
<br>
"@@.npc_nun_harmony;Wonderful! Your words are second only to the act itself in the beauty painted by your lips. Bless you, Sister, and may you continue to bless others in kind.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo thrusts deeper into your rear. "@@.npc_nun_harmony;May the holy penetration of the Sacred Rod of Penance fill you with wisdom. The act you describe was no sin, but a blessing. To kneel between a woman's knees in such a way is to kiss the Goddess herself. Go forth and do so again.@@"
<<else>>
"@@.npc_nun_harmony;My poor, confused Sister. The act you describe was no sin, but a blessing. To kneel between a woman's knees in such a way is to kiss the Goddess herself. Go forth and do so again.@@"
<</if>>
<<case 3>>
The gagged nun scowls at you and lashes out with her whip as you reflect on how your words may be tormenting her chastity-locked self.<br>
<br>
You begin to apologise only for the blows to land even harder. Only when you have apologised for the apology, and pledged to dedicate your lips to further acts of cunnilingus in the future does the punishment cease, her finger sliding between her legs and parting into a v as if in invitation.<br>
<br>
"@@.pc;Thank you, Sister.@@" You whisper as she nods to signal it is time to continue on with your confession.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_sissy_superior;Cunnilingus? How delightful. You have committed no sin, in fact the Goddess delights in such mutually joyous couplings.@@"
<<case 1>>
"@@.npc_sissy_superior;Ah, cunnilingus is such a wonderful act. Kissing the Goddess, the scriptures name it, and surely it is that blessing and more. May you lips meet that of the goddess many times more.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You gasp as the dildo thrusts deeper into your rear.<br>
<br>
"@@.npc_sissy_superior;Rejoice in blessed penetration, just as you have performed the blessed sacrament known as kissing the Goddess. Go forth, and do so many times again.@@"
<<else>>
"@@.npc_sissy_superior;Rejoice in your blessing! To perform such an act is to kiss the Goddess herself.@@"
<</if>>
<<case 3>>
"@@.npc_sissy_superior;Cunnilingus? Such a wonderful act. Here, show me the blessings of your lips and let us share in the favour of the goddess.@@"<br>
<br>
Your bonds relax just enough for you to droop down, her <<getWordPenis false>> revealed, and then held aside to present the glistening <<getWordVagina>> behind.<br>
<br>
Your lips meet hers for but a brief, delicious moment, over too soon as she pulls you off up by your hair. "@@.pc;Thank you, High Priestess,@@" is all you can reply and she smiles before pulling you back into your prior bound position.
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_fem_supreme;Cunnilingus, a sin? Quite the opposite, my dear. These foolish ideas you have as to the nature of our bodies and sharing them with one another... may the Goddess aid you in moving past such narrow views, and embracing the richer, more fulfilling life beyond.@@"
<<case 1>>
"@@.npc_fem_supreme;Cunnilingus, a sin? The opposite, it is a blessing, one joyously enjoyed by so many of the Goddess's followers. To kiss the Goddess, it is called, and I encourage you to spread her love by sharing many more such kisses.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You haven't even finished speaking when the dildo in your ass thrusts deeper and your recitation turns to a moan.<br>
<br>
"@@.npc_fem_supreme;Such a lovely moan. A far better sound than that foolish confession. Cunnilingus is a blessing, may your lips perform that blessing rather than foolishly confess to something that is the far opposite of sin.@@"
<<else>>
The voice on the other side of the partition interrupts you in a huff. "@@.npc_fem_supreme;I will hear no more of this foolishness. Cunnilingus is a blessing, may your lips perform that blessing rather than foolishly confess to something that is the far opposite of sin.@@"
<</if>>
<<case 3>>
"@@.npc_fem_supreme;Cunnilingus...@@"<br>
<br>
You gasp in surprise as you pitch forward, only for your lips to find themselves pressed against her <<getWordVagina>>, her <<getWordPenis false>> rising up past your left eye. "@@.npc_fem_supreme;Cunnilingus. Is. A. Blessing.@@" She calls out, punctuating her words with lashes of the whip as you cry out into her.<br>
<br>
"@@.npc_fem_supreme;Kiss the Goddess, my dear, and reflect on how blessed you are, and show me how grateful you are for all the blessings the future has in store for you.@@"<br>
<br>
You moan and lick feverishly as she flogs you some more, finally pulling you off and stepping away as you pant for air.<br>
<br>
"@@.npc_fem_supreme;Remember this lesson well, and practice it frequently.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to capitalism
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "capitalism" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor != "priest">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You ask if your working for a megacorp would be considered a sin?
<<case 1>>
You confess to your continued employment at a megacorp.
<<case 2>>
You confess to the part you play in working for an evil megacorp.
<<case 3>>
You confess to the part you play in perpetuating an unfair capitalist system.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_priest;Such things are a challenge for one of the faith. Certainly the world as it is not an ideal one, and the Goddess stands with those who demand greater equality and justice, but one, too, must live in the world as it is, not as we wish it was. To atone for your part in things I recommend that you perform penance through charity and kindness.@@"
<<case 1>>
"@@.npc_priest;A story I hear so much these days. If only corporations could come to confession... well, ignoring that I would be taking confession until the end of time, perhaps the penance would be worth it. As for yourself... seek to do the most good, no matter your position, even a small change from the inside can have large effects, and I wish you the fortune of the Goddess in the attempt.@@"
<<case 2>>
"@@.npc_priest;I understand. Operating in a world such as this... it can feel impossible not to sin, merely by participation in existence. Use your awareness to resist the depravities of the system, resist from within and know that a kindness, even a small one, can make a great difference to those under your power.@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
<br><br>
The dildo slowly shifts in your rear and you moan. "@@.npc_priest;As the Sacred Rod of Penance fills you, so too may you be filled with resolve, your desire to do good in this world hardened and reinforced.@@"
<</if>>
<<case 3>>
"@@.npc_priest;Your words are truth, surely this system we live in is one of unfairness and injustice. Merely surviving forces us to scar our souls with a thousand thousand cuts of sin... within the church itself we practice a more egalitarian system, but we are but a scant few compared to the world at large. All that I can tell to you is to be aware of your actions, seek to avoid harm so much as you can, and steer even more towards aiding your fellows against the forces arrayed against us. Only through cooperation and care can we carry on towards a better future.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;While our scriptures do not spell out an economic system, they are consistent in prizing kindness and community, for sharing and against selfishness, a pure rebuke of much of our modern world. Your participation seems sinful in but the most generic sense, certainly you can strive to do better, but you are not responsible for those who pull your strings.@@"
<<case 1>>
"@@.npc_nun_harmony;I sympathise with your situation, Sister... I remember my time in the outer world, how few options it felt like I had. Certainly I can extend unto you the blessing of the Goddess, and pray that her guidance will help you minimise the harm you are forced to inflict, even as I pray all the harder that she will soften the hearts of all people so that we might turn away from the road down which we are forced to tread.@@"
<<case 2>>
"@@.npc_nun_harmony;The first step to avoiding sin is to recognise it. In that you appear to be approaching enlightenment... unfortunately the way forward from here... that is one which you must look within as you pray to the Goddess for guidance.@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
<br><br>
The dildo thrusts deeper into you. "@@.npc_nun_harmony;May the Rod of Penance provide you relief from your life of sin, that you may focus on that which is truly important rather than become distracted and enamoured by other, false pleasures.@@"
<</if>>
<<case 3>>
There is a note of sorrow in the nun's eyes, pity traced across her silent expression at your state as a cog in the machine next to her comparative freedom — her physical restraints far more welcome than the economic and social bonds that restrict you. With a nod she unfurls her whip, the instrument of punishment cracking against you hard, blow after blow, the physical pain helping to heal the spiritual pain dealt to you by the company and the system, and, perhaps, grant you clarity to resist in whatever ways you can.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_sissy_superior;Minor sins are unavoidable, though we must always strive to rise above. When faced with the banality of the modern world... all that most of us may do is endeavour to practice kindness, to work in whatever ways presented before us to ease the pain of these cruel systems, and perhaps eventually strive for something better.@@"
<<case 1>>
"@@.npc_sissy_superior;What you speak of is certainly a sin... though for one such as you, at the bottom of the proverbial pyramid, the sin is small. Still, that is no excuse not to strive to do better, to make your role, however minor it may be, as positive as you can, to aid your fellow humans and follow the guidance of the Goddess in all things.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
As you speak the dildo slides deeper into you, until, by the end of your confession, your breaths are coming quick and short.<br>
<br>
"@@.npc_sissy_superior;Feel the Sacred Rod of Penance, meditate on it. Just as it fills you now, so too does the sin of the greater world fill your life. Seek to replace the latter with the former, to reduce your participation in the machinations of evil <<if $options.fem>>people<<else>>men<</if>>, and orient yourself towards service to the Goddess.@@"
<<else>>
"@@.npc_sissy_superior;The sin of which you speak is one that afflicts us all, pouring in and taking us over if we do not constantly resist it. Recognise it, to reduce your participation in the machinations of evil <<if $options.fem>>people<<else>>men<</if>>, and instead orient yourself towards service to the Goddess.@@"
<</if>>
<<case 3>>
"@@.npc_sissy_superior;Though I understand the lack of choice that has led you to such a place... only through punishing penance can I offer even momentary forgiveness.@@" You nod in understanding as she lashes out with the whip, each blow stinging painfully, the physical pain helping to heal the spiritual pain that is the whip of the corporation beating you down every day.
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_fem_supreme;Surely the sins committed by the megacorps extend without number. It is good of you to consider your own role in such, perhaps by doing so you may find a way to extricate yourself from the cycle of exploitation, and so make the world a better place.@@"
<<case 1>>
"@@.npc_fem_supreme;Recognition of sin is the first step towards purging it, and avoiding it. Keep this knowledge close, for your understanding of the danger to one's very soul that the megacorps represent is a true one. Do not barter away that which you cannot afford to lose. What you will get back in return will be only dust and ash.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo thrusts into you anew. "@@.npc_fem_supreme;May the spirit of the Goddess move through you, just as the Rod of Penance does, to cleanse you of these sins and guide you towards doing better in the future. Certainly you cannot fully retreat from the world, but in all acts you may seek to do better, to help, rather than harm.@@"
<<else>>
"@@.npc_fem_supreme;May the spirit of the Goddess move through you, to cleanse you of these sins and guide you towards doing better in the future. Certainly you cannot fully retreat from the world, but in all acts you may seek to do better, to help, rather than harm.@@"
<</if>>
<<case 3>>
The Priestess' expression hardens and the flogger comes down upon you. With each blow she almost chants, the flashes of pain blending together to reinforce her words. "@@.npc_fem_supreme;Repent, my Sister. Cleanse yourself of this darkness, focus instead of the Goddess's holy guidance. Be the light unto the world and do not let those things you are forced to do to corrupt you and sway you from the true path.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to dog bestiality
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "dog" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor == "nun">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You hesitantly imply that you may have had sexual contact with a dog...
<<case 1>>
You nervously confess to having had sexual contact with a dog.
<<case 2>>
You confess to having sexual relations with a dog.
<<case 3>>
You confess to enjoying sexual relations with a dog.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_priest;I see. Such urges are not uncommon, even if they are seldom spoken of. So long as you did not force yourself upon the creature you have committed no sin in the eyes of the Goddess.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo in your rear shudders deeper. "@@.npc_priest;My apologies that the Sacred Rod of Penance has not a knot, but let its presence within you remind you that the Goddess joys in all couplings, so long as both participants are willing.@@"
<<else>>
"@@.npc_priest;Such acts are accepted by the Goddess. We are all of us animals, on some level, our faculties of reason give us greater responsibility, and tell us that we should only sleep with those who willingly join with us, but we still have those basal urges, and embracing them is a blessing, not a sin.@@"
<</if>>
<<case 3>>
"@@.npc_priest;You did not force yourself upon the animal?@@"<br>
<br>
You shake your head.<br>
<br>
"@@.npc_priest;Then I see no sin. The bitch is an aspect of the Goddess, and one that many of her followers will experiment with at some time or another. To make a pun — a knot-ed girl is not a naughty girl, so rejoice as you share the blessings of the Goddess with your fellow creatures great and small.@@"<br>
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;You have committed no sin. The Goddess's blessings extend to all creatures and we, as her agents, can be a part of that.@@"
<<case 1>>
"@@.npc_nun_harmony;Take heart, Sister, for what you describe is no sin, but a blessing, an offering to the natural world, and one blessed by the Goddess.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo thrusts up into you. "@@.npc_nun_harmony;Would that the Sacred Rod of Penance had a knot to commemorate your efforts. Still, let it fill you with its blessings as did your canine friend.@@"<br>
<br>
<</if>>
"@@.npc_nun_harmony;While not all of us are as devoted to such aspects of the Goddess as <<=setup.getNpcName("npc_nun_unity","formal")>>, but nearly all of us have embraced such communion with the natural world as part of our training... why, hearing your words has me contemplating such myself, there is something so beautiful about getting back to nature with a creature blessed by the Goddess.@@"
<<case 3>>
The silent nun squints at you in confusion, and then shakes her head to wordlessly communicate that the flogging to come is not to cleanse you of sin; but to correct your mistaken belief that you had sinned at all.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_sissy_superior;Do not be concerned, Sister. The guiding principle of our Church is consent. So long as the beast participates willingly, no sin has been committed.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo slides into you and you gasp softly.<br>
<br>
"@@.npc_sissy_superior;Good bitch. I know the Rod of Penance lacks a knot, but consider it akin to that which you laid with — just as it smoothly fits into your blessed hole and bring you closer to the Goddess, so too can a beast act to bring you closer to the natural world.@@"
<<else>>
"@@.npc_sissy_superior;What you speak of sounds quite blessed, there is more to following the ways of the Goddess than mere human interaction. By embracing the natural world we can better experience the full breadth of her blessings.@@"
<</if>>
<<case 3>>
The Priestess smiles at you.<br>
<br>
"@@.npc_sissy_superior;Taking after the good <<=setup.getNpcName("npc_nun_unity","formal")>>, hmm? Such a brave act, to give yourself over to a devoted dog. A blessing upon you for your efforts in becoming closer with all of the Goddess's creations.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_sissy_superior;Relax, Sister. What you speak of is in no way a sin. So long as the beast is willing the Goddess's blessing will be upon you both.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_fem_supreme;I know a knotted cock would be more appropriate than the Rod Of Penance, but we must always cope with what is available. What you describe is no sin, women's best friend is that for a reason, the aspect you experienced just another of such.@@"
<<else>>
"@@.npc_fem_supreme;My Sister, woman's best friend is here as our companion for a reason. If you reach this degree of closeness with such a creature well, that is a blessing, and you should indulge it joyously.@@"
<</if>>
<<case 3>>
The Priestess smiles.<br>
<br>
"@@.npc_fem_supreme;Ah, to be a bitch. On all fours, the knot swelling inside... such a wonderful moment, a blessed experience of giving and receiving, and one I have known myself many a time. I cleanse you of whatever guilt you feel, and encourage you to continue to explore what the natural world has to offer unto you.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to fucking horse
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "horse" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor == "nun">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You hesitantly imply that you may have had sexual contact with a horse...
<<case 1>>
You nervously confess to having had sexual contact with a horse.
<<case 2>>
You confess to having sexual relations with a horse.
<<case 3>>
You confess to enjoying sexual relations with a horse.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_priest;I see. Such urges are not uncommon, even if they are seldom spoken of. So long as you did not force yourself upon the creature you have committed no sin in the eyes of the Goddess.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo in your rear shudders deeper. "@@.npc_priest;My apologies that the Sacred Rod of Penance is not of quite the dimensions you may be used to, but let its presence within you remind you that the Goddess joys in all couplings, so long as both participants are willing.@@"
<<else>>
"@@.npc_priest;Such acts are accepted by the Goddess. We are all of us animals, on some level, our faculties of reason give us greater responsibility, and tell us that we should only sleep with those who willingly join with us, but we still have those basal urges, and embracing them is a blessing, not a sin.@@"
<</if>>
<<case 3>>
"@@.npc_priest;You did not force yourself upon the creature?@@"<br>
<br>
You shake your head.<br>
<br>
"@@.npc_priest;Then I see no sin. The breedable mare is an aspect of the Goddess, and one that many of her followers will experiment with at some time or another. Of course one must take care when coupling with a magnificent stallion who outweighs you by several fold, but with those precautions you can surely embrace the wonderful primal feeling of feeling such a beast within you.@@"<br>
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;You have committed no sin. The Goddess's blessings extend to all creatures and we, as her agents, can be a part of that.@@"
<<case 1>>
"@@.npc_nun_harmony;Take heart, Sister, for what you describe is no sin, but a blessing. An offering to the natural world, and one blessed by the Goddess.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo thrusts up into you. "@@.npc_nun_harmony;Would that the Sacred Rod of Penance had a knot were of a size and splendor to equal your efforts. Still, let it fill you with its blessings as did your equine friend.@@"<br>
<br>
<</if>>
"@@.npc_nun_harmony;While not all of us are as devoted to such aspects of the Goddess as <<=setup.getNpcName("npc_nun_unity","formal")>>, but nearly all of us have embraced such communion with the natural world as part of our training... why, hearing your words has me contemplating such myself, there is something so beautiful about getting back to nature with a creature blessed by the Goddess.@@"
<<case 3>>
The silent nun squints at you in confusion, and then shakes her head to wordlessly communicate that the flogging to come is not to cleanse you of sin; but to correct your mistaken belief that you had sinned at all.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_sissy_superior;Do not be concerned, Sister. The guiding principle of our Church is consent, so long as the beast participates willingly, no sin has been committed.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo slides into you and you gasp softly.<br>
<br>
"@@.npc_sissy_superior;Good mare. I know the Rod of Penance lacks the dimensions you may be accustomed, but consider it akin to that which you laid with — just as it smoothly fits into your blessed hole and bring you closer to the Goddess, so too can a beast act to bring you closer to the natural world.@@"
<<else>>
"@@.npc_sissy_superior;What you speak of sounds quite blessed, there is more to following the ways of the Goddess than mere human interaction. By embracing the natural world we can better experience the full breadth of her blessings.@@"
<</if>>
<<case 3>>
The Priestess smiles at you.<br>
<br>
"@@.npc_sissy_superior;Taking after the good <<=setup.getNpcName("npc_nun_unity","formal")>>, hmm? Such a brave act, to give yourself over to a mighty stallion. A blessing upon you for your efforts in becoming closer with all of the Goddess's creations.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_sissy_superior;Relax, Sister. What you speak of is in no way a sin. So long as the beast is willing the Goddess's blessing will be upon you both.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_fem_supreme;I know a larger, flared phallus would be more appropriate than the Rod Of Penance, but we must always cope with what is available. What you describe is no sin, the feminine fascination with horses has a long, long history, and the aspect you experienced is but a part of that.@@"
<<else>>
"@@.npc_fem_supreme;My Sister, horses have fascinated women for centuries, for this and other reasons. If you reach this degree of closeness with such a creature well, that is a blessing, and you should indulge it joyously.@@"
<</if>>
<<case 3>>
The Priestess smiles.<br>
<br>
"@@.npc_fem_supreme;Ah, to play the mare. Bent over in offering, a great stallion blessing you from behind... such a wonderful moment, a blessed experience of giving and receiving, and one I have known myself many a time. I cleanse you of whatever guilt you feel, and encourage you to continue to explore what the natural world has to offer unto you.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to fucking plant
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "plant" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor == "nun">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You hesitantly imply that you may have had sexual contact with a tentacle plant...
<<case 1>>
You nervously confess to having had sexual contact with a tentacle plant.
<<case 2>>
You confess to having sexual relations with a tentacle plant.
<<case 3>>
You confess to enjoying sexual relations with a tentacle plant.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_priest;I see. Of course the natural world can produce all sorts of wonder. We eat of the plant, build of the plant, well, it is unsurprising to desire to do other activities as well, should one find a proper specimen.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo in your rear slides deeper. "@@.npc_priest;My apologies that the Sacred Rod of Penance is not as dexterous as a tentacle, but let its presence within you remind you that the Goddess joys in all couplings, so long as both participants are willing.@@"
<<else>>
"@@.npc_priest;Such acts are accepted by the Goddess. Plants provide so much to us, from the food we eat to the houses we live in... it is only natural to occasionally seek more. And those rare species with tentacles, well... the Goddess blesses the world in so many ways.@@"
<</if>>
<<case 3>>
"@@.npc_priest;A tentacle plant? Oh, what a delightful find. They are so rare and difficult to keep, it sounds like you have struck quite the fortune, may the Goddess's blessings continue to be upon you.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;You have committed no sin. The Goddess's blessings extend to all inhabitants of the earth and we, as her agents, can be a part of that.@@"
<<case 1>>
"@@.npc_nun_harmony;Take heart, Sister, for what you describe is no sin, but a blessing, an offering to the natural world, and one blessed by the Goddess.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo thrusts up into you. "@@.npc_nun_harmony;Would that the Sacred Rod of Penance could twist and writhe like the tentacles you describe. Still, let it fill you with its blessings as did your leafy friend.@@"<br>
<br>
<</if>>
"@@.npc_nun_harmony;While such plants are a rarity, the church has been known to nurture them. I know <<=setup.getNpcName("npc_nun_unity","formal")>> has spoken of making a pilgrimage to obtain one of her own, until then I suppose I shall comfort myself merely with the tales.@@"
<<case 3>>
The silent nun squints at you in confusion, and then shakes her head to wordlessly communicate that the flogging to come is not to cleanse you of sin; but to correct your mistaken belief that you had sinned at all.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_sissy_superior;Do not be concerned, Sister. Plants are here to provide for us in so many ways. From food to shelter... what you describe is but another aspect of same.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>> The dildo slides into you and you gasp softly.<br>
<br>
"@@.npc_sissy_superior;Would it surprise you to learn that the Rod of Penance is itself made of wood? Sculpted and polished according to ancient techniques the result is something so very blessed, and one that helps root the supplicant. So, you see, a plant inside of you can be quite the holy thing. Go forth, and be blessed again.@@"
<<else>>
"@@.npc_sissy_superior;What you speak of sounds quite blessed. There is more to following the ways of the Goddess than mere animal interactions. By fully embracing ALL aspects of the natural world we can better experience the full breadth of the Goddess's blessings.@@"
<</if>>
<<case 3>>
The Priestess smiles at you.<br>
<br>
"@@.npc_sissy_superior;Taking after the good <<=setup.getNpcName("npc_nun_unity","formal")>>, hmm? Surely the Goddess must smile upon you to have sent you such a wonderful plant. Enjoy this blessing, feel its tentacles like the arms of the Goddess herself in her most natural of aspects.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_sissy_superior;Relax, Sister. What you speak of is in no way a sin. Such plants are put on this earth to comfort us, just as the oak provides us shelter and stout lumber.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_fem_supreme;I know the Rod Of Penance feels rigid and unyielding — but it was once of the natural world as well, carved wood treated with special oils until it becomes the wonderful rod you feel inside of you. A living plant, however... well, that is a blessing all its own, and one you should count yourself fortunate to have been blessed to experience.@@"
<<else>>
"@@.npc_fem_supreme;My Sister, plants, especially the tentacled variety have fascinated for centuries. That one has found its way into your life, especially in a city such as this... truly, your life is blessed by the Goddess.@@"
<</if>>
<<case 3>>
The Priestess smiles.<br>
<br>
"@@.npc_fem_supreme;A tentacle plant? And one you raised yourself? Oh, what fortune you have to be blessed with such a companion. I cleanse you of whatever guilt you feel, and encourage you to continue to explore what the natural world has to offer unto you.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to theft
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "theft" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level >= 2>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'terrible' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
You confess to stealing from a customer while cleaning apartments.<br>
<br>
<<if $scene.level == 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You gasp as the dildo thrusts into you and then bursts with painful electric shocks.
<<else>>
You yelp in pain as the bench upon which you seat sends painful electricity coursing through you.
<</if>>
<</if>>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_priest;That is quite concerning, Sister. Stealing, especially from one who has trusted you enough to invite into their home... well, that is quite definitely a sin. While the Goddess will continue to offer her love, despite your transgression, your only true absolution will come in the form of restorative justice. You must make things up to the community and the one you transgressed against, claiming that mere spiritual forgiveness was sufficient would be unjust and unfair.@@"
<<case 2>>
"@@.npc_priest;Consider the pain a gift, Sister. Not one of absolution, but of focus. You have committed a sin, and a crime, but the solution is not prayer, or in spiritual cleansing. No, the only way to restore your soul for the damage of your transgression is to make it up to the community, and your victim. May the physical pain help align your thoughts on that task.@@"
<<case 3>>
<<=ps(setup.getNpcName("npc_priest","formal"))>> sorrowful, disappointed expression would be bad enough, but then <<he npc_priest>> walks over to a rack to retrieve what looks like a cattle prod. Placing the tip against your bare skin <<he npc_priest>> meets your gaze, before depressing the trigger and sending painful electricity through your body.<br>
<br>
As you catch your breath <<he npc_priest>> speaks gently. "@@.npc_priest;Consider the pain a gift, Sister. Not one of absolution, but of focus. You have committed a sin, and a crime, but the solution is not prayer, or in spiritual cleansing. No, the only way to restore your soul for the damage of your transgression is to make it up to the community, and your victim. May the physical pain help align your thoughts on that task.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_nun_harmony;Oh... Sister... theft, well... I wish I could say I knew better, but there are sins in my past, as well, from before I joined the church and allowed the Goddess into my life. While I can offer you encouragement, and the love of the Goddess, I cannot grant you forgiveness, only your victim can provide that, I can but advise you to avoid such a crime in the future, and seek out ways to restore to society that which you have taken.@@"
<<case 2>>
"@@.npc_nun_harmony;I am sorry to inflict pain upon you, Sister, but it is the best that I can offer in response to your crime. Note that this in no way absolves you of your guilt, but I hope that it may clarify your thoughts that you may better formulate a plan to make restorative measures towards your victim, and society.@@"
<<case 3>>
The silent nun lashes out with the flogger, cracking you hard, painfully, and repeatedly until you are gasping and blubbering your apology.<br>
<br>
Ceasing the physical punishment she stands before you and slowly shakes her head. Though she is mute you understand her meeting purely from the look in her eyes — as painful as the flogging was, it is nothing compared to the damage done to your soul by your crime; and the only way to heal that is through re-dedicating yourself to a sinless life, and making restitution to your victim.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_sissy_superior;I see. Fortunately I can tell from your voice that you have already accepted the fact that you have done something wrong. Now it is up to you to make restitution. Not to the church, we are not some self-important organisation selling indulgences. The Goddess loves all of us regardless of tithes... no, you must make it up to your victim, and society, for only by being good to one another can we possibly move beyond sin.@@"
<<case 2>>
"@@.npc_sissy_superior;I know it hurts, Sister, but the pain is what you need. Note that it comes with no absolution or forgiveness, that can only come from your victim. No, the pain is to focus your thoughts, to better process the hurt that you have caused, and in so doing, allow you to focus on making restitution.@@"
<<case 3>>
Quick, precise blows of the whip criss-cross your back and you yelp in pain.<br>
<br>
"@@.npc_sissy_superior;Pray with me Sister — ask the Goddess's guidance. Not for forgiveness, but for direction that you may make restitution to your victims, and in so doing heal the wound you have dealt to them, society, and yourself.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_fem_supreme;I hear in your voice a touch of hesitancy... of embarrassment. And shame you should well feel for commiting such a crime, a violation in a person's own home, but to move past this mistake you must do more. Not just accept blame and avoid such a path in the future, but work to make restitution, to make up to your victim, and society for the harm that you have caused.@@"
<<case 2>>
"@@.npc_fem_supreme;Do not flinch from the pain, Sister. Embrace it, let it focus your mind. No amount of punishment can absolve you of the harm that you have caused — but it can aid in focusing and aligning your future acts towards avoiding additional steps down such a dark path, and instead work towards making restitution towards your victim. Only by paying back them, and society, will you be able to make yourself whole.@@"
<<case 3>>
The whip cracks harsh and fast as the High Priestess punishes your crime.<br>
<br>
Only after you are begging for mercy does the whipping cease and she speaks. "@@.npc_fem_supreme;Understand, Sister, that this whipping, while for your own good, does nothing to provide restitution for your sin. Your crime was against not just yourself, but society, and, most pointedly, the individual victim of your theft. Only by making restoration and gaining forgiveness from them can you cleanse yourself of this sin. The Goddess will love and support you in your efforts, but for a crime committed in the material, so too must come the restitution.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to vaginal sex
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "vag" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor != "priest">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You confess to having lost your vaginal virginity.
<<case 1>>
You confess to having had vaginal sex.
<<case 2>>
You confess to having spread your legs for vaginal sex.
<<case 3>>
You "confess" to having been fucked vaginally.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_priest;I am sorry, Sister... that you thought such an act would require confession. The Goddess smiles down upon any sexual act entered into with joy and consent, so I will offer to you her continued blessing.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The Sacred Rod of Penance slides up into your rear.
<</if>>
"@@.npc_priest;Is not penetration such a blessing from the Goddess? As you share your experience, so too do I share in your joy. Remember: all sex that is entered into with joy and consent brings pleasure to the Goddess, so go forth, and continue to make her proud.@@"
<<case 3>>
The <<priest npc_priest>> smiles and shakes <<his npc_priest>> head as you hang in your restraints. "@@.npc_priest;Oh, Sister, you know well enough that vaginal sex is no sin, but a blessing!@@" <<He npc_priest>> walks closer, fingers tenderly running between your legs. "@@.npc_priest;Or perhaps this is some attempt at an invitation? I am sorry but a simple confession would be far to little time to do such a matter justice... there are others in need of counseling as well, you know!@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_nun_harmony;Confession? I suppose you must have experience with other... less tolerant faiths. Know that the Goddess does not hold the reservations or restrictions against taking joy in the sexual aspects of our being. In fact, she encourages such, all that she demands is consent. Should all involved give that, then every act is a blessing.@@"
<<case 2>>
"@@.npc_nun_harmony;Oh, Sister, surely you know by now that such things are no sin, but a blessing.@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
To drive home her point the dildo in your rear thrusts deeper.<br>
<br>
<</if>>
"@@.npc_nun_harmony;To be penetrated as you were, to share one's innermost femininity with a caring partner... why, that is one of the most wonderful experiences the Goddess can grant. Go forth with the joy of blessing, not the guilt of sin.@@"
<<case 3>>
The nun squints at you in annoyance, your eyes drawn to the outline of her chastity belt visible beneath her tight latex outfit. A few blows with the flogger drives home that you should feel guilty for considering your actions to be in any way necessary of confession... and then a "bonus" strike that you're pretty sure was just her taking out frustration for your taunting.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_sissy_superior;My dear novice, vaginal sex is no sin! Why, to the Goddess it is more close to a sacrament. So long as you engage in such activities consensually the joy of ecstasy you feel is surely divine-blessed.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You moan as the dildo in your rear thrusts deep. "@@.npc_sissy_superior;Feel the divine Rod of Penance, reflect on how it would feel in your other hole... then resolve to go forth and make such a reality.@@"
<<else>>
You can hear the amusement in the response that filters through the partition. "@@.npc_sissy_superior;Confess to vaginal sex? You know better than that, Sister, to have a vagina is to be blessed, and the pleasure of sex is one of those blessings. Go forth, my dear, and be blessed repeatedly.@@"
<</if>>
<<case 3>>
<<=setup.getNpcName("npc_sissy_superior","formal")>> steps closer, her hand running between your legs. "@@.npc_sissy_superior;Confessing to blessed acts? How... confused...@@" The whip curls around your body to sting your rear and you gasp in pain. "@@.npc_sissy_superior;Take that pain as a lesson, the gifts of the Goddess should be embraced with enthusiasm, not treated with shame. You are beautiful and to lay with you is the same. Go forth, and continue to spread your legs in joy.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_fem_supreme;Vaginal sex, a sin worthy of confession? Hardly, my dear. The church of the Goddess is a sex-positive denomination, so long as all participants enter the coupling willingly and with enthusiasm whatsoever happens brings as much joy to the Goddess as it does to the participants.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You moan as the dildo in your rear thrusts deep. "@@.npc_fem_supreme;Yes, Sister. Lift up your voice in praise, and resolve to continue to spread your legs in glorification of the Goddess.@@"
<<else>>
"@@.npc_fem_supreme;You have committed no sin, but you knew that already. Still, the privacy of the confessional can be used for more than mere unburdening of the soul, and so I will extend to you the blessing of the Goddess... even though you attestation shows that you have already felt such.@@"
<</if>>
<<case 3>>
Moving behind you the Sister Superior snakes one hand to clutch between your thighs while the other digs painfully into your rear. "@@.npc_fem_supreme;To do as you have done is no sin, but a blessing. Do not torture yourself over such things, or deny either... well, unless you would take a holy vow of chastity... for the Goddess blesses that as well.@@" She gives your rear a final slap, leaving you panting as she steps away.
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to penile sex with woman
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "penis_fem" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor != "priest">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You confess to having penetrated a woman.
<<case 1>>
You confess to having fucked a woman.
<<case 2>>
You confess to having laid with a woman.
<<case 3>>
You confess to having "known" a woman.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_priest;My dear, so long as you and your partner consented sexual congress is considered by the Goddess a shared blessing, not a sin. Moreover, to lie with a woman is to embrace an aspect of the Goddess herself. Her blessings be upon you, Sister.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_priest;How lovely,@@" the voice from beyond the partition states as the dildo slides into you, "@@.npc_priest;Just as you filled your partner, so enjoy the divine Rod of Penance filling you with its girth, such are the blessings of the Goddess.@@"
<<else>>
"@@.npc_priest;How lovely, filling one's partner is to bring them closer to the divine font of the Goddess, as their welcoming of yourself spreads the Goddess's love.@@"
<</if>>
<<case 3>>
"@@.npc_priest;Well done, my dear. To lie with a woman is to lie with a physical manifestation of the Goddess, and to penetrate her according to her desire is to bring the both of you into communion with the divine.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;Let me assuage your guilt, and guide you towards instead feeling pride. To be with a willing woman as you describe is to be with an aspect of the Goddess herself. A blessed act, whose joy brings pleasure to the Goddess and all involved.@@"
<<case 1>>
"@@.npc_nun_harmony;Congratulations, Sister. To lay with a willing woman as you describe is to be with an aspect of the Goddess herself. A blessed act, whose joy brings pleasure to the Goddess and all involved.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo thrusts into your rear.
<</if>>
"@@.npc_nun_harmony;Join me in a prayer of thanks, Sister. For your fortune in being presented with such an opportunity, and rising to the occasion. To be with a willing woman is to be with the Goddess made flesh, and so bring joy unto all involved.@@"
<<case 3>>
The silent nun grinds against you, the feel of her chastity belt pressing against <<if !setup.checkItemTypeWorn("cage")>>your crotch<<else>>your own device<</if>> wordlessly communicating the Goddess's love for coupling... followed by a harsh blow of the whip to remind you that "confessing" to something that is the opposite of a sin is foolish.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_sissy_superior;Be joyous, Sister, the act which you describe is one blessed by the Goddess, and may you share the same with as many willing partners as will have you.@@"
<<case 1>>
"@@.npc_sissy_superior;The Goddess's blessings are so wonderful to feel, and to spread. To be with a willing woman in such a way is to help her become closer to the divine... and to touch the same yourself.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo thrusts into your rear.
<</if>>
"@@.npc_sissy_superior;Penetration is one of the Goddess's most blessed gifts, the joy of opening oneself to another, to feel them within oneself... it is truly one of the greatest feelings one can have, and to grant such to a partner is among the most intimate of acts to be shared.<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>> May the Rod of Penance revive the memory of your act, and spur you forward to give and receive more in future.<</if>>@@"
<<case 3>>
The whip of <<=setup.getNpcName("npc_sissy_superior","formal")>> lands upon you and you gasp in slight confusion. "@@.npc_sissy_superior;Let this pain act, not as punishment, but as encouragement to seek out the pleasure of the feminine divine. The pleasure of penetrating a willing woman is to penetrate the Goddess herself and touch divine joy, but that pleasure cannot exist without the pain of its absence. Let the touch of the whip thus focus you towards embracing all aspects of existence as you spread the Goddess's blessings.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_fem_supreme;Be not guilty, Sister. The act which you describe is one blessed by the Goddess, and may you share the same with as many willing partners as will have you.@@"
<<case 1>>
"@@.npc_fem_supreme;The Goddess's gifts are to be spread. To penetrate a willing woman is to bring her closer to the divine feminine, and so too have the Goddess smile down upon thee.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo thrusts into your rear.
<</if>>
"@@.npc_fem_supreme;To be penetrated is to be of the Goddess herself — as she welcomes all who would pledge themselves to her, so, too is it touching the divine feminine to welcome another into one's very being. Of course there is no penetration without one to penetrate, and by filling that role you have taken your own wonderful part in the divine plan.<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>> Let the Rod of Penance return the favour and spur you onward to more such blessed couplings.<</if>>@@"
<<case 3>>
The whip of <<=setup.getNpcName("npc_fem_supreme","formal")>> lands upon you and you gasp in slight confusion. "@@.npc_fem_supreme;Embrace the pain, Sister. I whip you not for your sin of action, but your sin of thought. To penetrate a willing woman is to penetrate a divine aspect of the Goddess herself... to act as if such were cause for confession is, thus, to deny the blessed truth of one's actions. May this whipping thus focus your mind on the truth of the Goddess's teachings such that you may spread her joy without distraction or doubt.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to penile sex man
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "penis_man" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor != "priest">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You confess to having penetrated a man.
<<case 1>>
You confess to having fucked a man.
<<case 2>>
You confess to having "known" a man.
<<case 3>>
You confess to having performed sodomy upon a man.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_priest;You have committed no sin, Sister. So long as you entered your partner consensually the Goddess smiles down and blesses the coupling.@@"
<<case 1>>
"@@.npc_priest;You have committed no sin, Sister. In fact, you have performed a blessing, penetration is a key symbolic rite of the divine. To take another into oneself, to share in pleasure... it is an intimate, sacred act. And while it reflects the divine femininity a man is no less of a man should he welcome such. In fact it only points to a strengthening of his character that he would be willing to offer himself in such a way.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_priest;Let the Rod of Penance bless you, as you have blessed your partner.@@" The <<priest npc_priest>> states as the dildo slides deeper into your rear.
<<else>>
"@@.npc_priest;A blessing upon you, as you have blessed your partner.@@" The <<priest npc_priest>> states as the dildo slides deeper into your rear.
<</if>>
"@@.npc_priest;We thank the Goddess for the joy of penetration.@@"
<<case 3>>
The <<priest npc_priest>> smiles wistfully "@@.npc_priest;Ah, to be sodomized... so few men are willing to embrace this aspect of themselves and so they miss out on so much of what the Goddess can offer in this world. The intimacy, the pleasure... I think back to the first time that I <<if $npc_priest.fem>>penetrated a man and I so wish more<<else>>gave myself, as a man and I so wish more of my<</if>> brothers were willing to do the same. Thank you, Sister, for sharing of yourself and blessing your partner.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;Bless you, Sister. To bend over is the ultimate in equality, a pleasure that all can enjoy, should they be willing to open themselves to the possibility, and one that the Goddess accepts joyously.@@"
<<case 1>>
"@@.npc_nun_harmony;Wonderful, Sister. We nuns are, of course, trained in the art of pegging, that we may aid our brothers in experiencing all of the blessings the Goddess offers. Thank you, for doing your part, and further blessings on your future.@@"
<<case 2>>
"@@.npc_nun_harmony;Wonderful, Sister. I shall take inspiration from your acts the next time I am afforded the opportunity to peg a parishioner. For a man to open himself to such Goddess-blessed joy is a wonderful thing.@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
Her words are punctuated by the thrusting of the dildo in your rear.
<</if>>
<<case 3>>
Though she remains gagged and silent the exaggerated rise and fall of the nun's shoulders easily communicates her disappointment, not at your act; her eyes glittered with delight as you described the feeling of penetrating a man, but that you would feel guilty and in need of confession for it. A few quick, hard blows of the whip serve to punctuate her message.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_sissy_superior;You have committed no sin, Sister. The Goddess does not adhere to such rigid views of masculine and feminine actions, she teaches that the intimate joy of penetration is one to be enjoyed by all.@@"
<<case 1>>
"@@.npc_sissy_superior;Your confession is accepted... though what you describe was a blessing, not a sin. Penetration is considered by followers of the Goddess to be an intimate, sacred act... one that too few men are willing to give themselves over to enjoying. That you would help a fellow person in this way is a blessing upon you both.@@"
<<case 2>>
"@@.npc_sissy_superior;I see, well I hope you treated him well. To be responsible for penetration is a responsibility. Your partner is inviting you into their literal physical selves, and the Goddess states that it is your duty to return that gesture with passion and pleasure.@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You moan as the dildo in your rear slides seductively deeper. "@@.npc_sissy_superior;Feel the Rod of Penance and know of which I speak.@@"
<</if>>
<<case 3>>
"@@.npc_sissy_superior;Is such not wonderful? The Goddess surely shows her wisdom in granting the joy of anal penetration to all. That you would find a man to share such intimacy with you is a blessing indeed.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_fem_supreme;Your actions do not require confession. Penetration, though considered sacred by the Goddess, is an act open to all, male and female alike.@@"
<<case 1>>
"@@.npc_fem_supreme;Your confession is noted, though your described act is no sin. Penetration is considered an intimate and blessed act by followers of the Goddess, and one which it is encouraged for all to partake of. You have done well in your actions and may you find many more willing men to <<if $player.body_ref.penis>>sodomize<<else>>peg<</if>> with the Goddess's love.@@"
<<case 2>>
"@@.npc_sissy_superior;Very good, Sister. May you do such many more times, the pleasure of penetration is one of the greatest gifts the Goddess has provided us. It is our responsibility to share that gift with the world, both in giving of ourselves, and in showing others how good it can feel.@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
The dildo in your rear thrusts softly, as your confession is met with approval and a gift...
<</if>>
<<case 3>>
"@@.npc_fem_supreme;That is lovely to hear. Far too few men in this world are willing to open themselves to that aspect of the divine. Now that you have experience this evangelical duty of sharing I encourage you to find more men whom you may aid in opening themselves to such pleasures.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to masturbating
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "masturbate" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor == "nun">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.church.level>>
<<case 0>>
You confess to having taken advantage of yourself.
<<case 1>>
You confess to having touched yourself...
<<case 2>>
You confess to masturbating.
<<case 3>>
You confess to pleasuring yourself.
<<default>>
ERROR unknown scene level: <<=$scene.level>>
<</switch>>
<br><br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_priest;Please, Sister, what you speak of has no need of confession. The Goddess teaches us to embrace pleasure in all of its forms, self amongst them.@@"
<<case 1>>
"@@.npc_priest;Please, Sister, what you speak of has no need of confession. Self-knowledge is an important thing, for if one cannot know one's own pleasures, how can they hope for a partner to learn them?@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_priest;Masturbation, exploring oneself...@@" You moan softly as the dildo in your rear slides deeper in time with <<his npc_priest>> words.
"@@.npc_priest;Well that is as important a part of worshipping the Goddess as any study of scripture. She teaches us to know ourselves first, that we may better share with the world.@@"
<<else>>
"@@.npc_priest;Masturbation, exploring oneself... well that is as important a part of worshipping the Goddess as any study of scripture. She teaches us to know ourselves first, that we may better share with the world.@@"
<</if>>
<<case 3>>
"@@.npc_priest;The Goddess teaches us to first know ourselves, for without knowing oneself, how can one share with the world? Masturbation is a key part of life for all who worship the Goddess, even those who have submitted to the holy restrictions of chastity will use that restriction to learn even more about their bodies, discovering all new erogenous gifts from above.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_nun_harmony;Masturbation? Go forth, Sister, without guilt or blame. Our bodies are our own and the Goddess tells us to care for and enjoy them in all ways.@@"
<<case 1>>
"@@.npc_nun_harmony;Masturbation is an important part of our practices as nuns. Just as silent prayer and meditation makes us better equipped to aid the spiritual paths of our flock, so, too, does knowing our bodies, and enjoying its rejuvenating pleasures, make us better equipped to minister to their sexual needs.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_nun_harmony;Mmm, wonderful. Here, Sister,@@" as she speaks the dildo in your rear slides deeper. "@@.npc_nun_harmony;All this talk of masturbation has me quite riled up. Sit with me, ride the Rod of Penance inside of you, let the both of us take a moment to enjoy our bodies...@@"
<<else>>
"@@.npc_nun_harmony;Mmm, wonderful. All this talk of masturbation has me quite riled up. Sit with me, ride the Rod of Penance inside of you, let the both of us take a moment to enjoy our bodies...@@"
<</if>>
You hear her breathing get heavier as you go along, touching yourself and rocking in place until she calls a gentle stop. "@@.npc_nun_harmony;Mmmm. Even without climax frequent masturbation is such a joy. Which is why we nuns are assigned to practice multiple times a day, just as we follow a regime of daily prayers.@@"
<<case 3>>
The silent nun touches herself, fingers rubbing against the front shield of her chastity belt as she administers your penitent whipping, her wordless message clear: that the greatest pleasure of all comes in service to the Goddess.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_sissy_superior;Masturbation? Take comfort, Sister, you have committed no sin. Your body is your temple, and the first step to embracing the Goddess is to embrace yourself.@@"
<<case 1>>
"@@.npc_sissy_superior;Masturbation is not a sin, but a sacrament to those who follow the Goddess. Love thyself, Sister, in all things, and you will feel the love of the Goddess flow through you.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_sissy_superior;Masturbation...@@" states the voice on the other side of the partition as the dildo slides into your rear.
<</if>>
"@@.npc_sissy_superior;One of the first of Goddess's blessings. For how can we learn to serve her, and our fellow faithful, if we cannot learn to serve ourselves?@@"
<<case 3>>
"@@.npc_sissy_superior;Masturbation?@@" <<=setup.getNpcName("npc_sissy_superior","formal")>> steps closer, the folded end of the whip running erotically down your body. "@@.npc_sissy_superior;How wonderful. Self-love is one of the first sacraments a nun is trained in... well, self-love and erotic denial. It is quite the potent combination, a wonderful way to deepen one's... faith.@@" <<=setup.getNpcName("npc_sissy_superior","formal")>> winks before stepping away as your heart beats faster.
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0>>
"@@.npc_fem_supreme;Masturbation? A sin? Banish the thought, Sister. The Goddess tells us to first love ourselves, and the gifts she has granted us.@@"
<<case 1>>
"@@.npc_fem_supreme;Masturbation is no sin, but a sacrament. I encourage you to take all the pleasure you can from your body. explore it thoroughly, for this pleases the Goddess... and makes you better equipped to please others, or invite them to join you in that same exploration.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_fem_supreme;Masturbation...@@" states the voice on the other side of the partition as the dildo slides into your rear.
<</if>>
"@@.npc_fem_supreme;Before one can serve others, first they must learn to serve themselves. Personal exploration is an important step, without proper focused dedication one's skills will be forever stunted, their own pleasure thresholds insufficiently expanded and explored.@@"
<<case 3>>
"@@.npc_fem_supreme;Masturbation?@@" The whip cracks loudly next to you so that you jump, even though it did not hit your flesh. "@@.npc_fem_supreme;How wonderful. Self-love is one of the first sacraments a nun is trained in... well, that and erotic denial. Quite the lovely blend to train a nun to be constantly aroused and sensitive... If you keep up your practice, perhaps that will one day be you, hmm?@@" <<=setup.getNpcName("npc_fem_supreme","formal")>> smiles as your heart beats faster.
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: confess to losing virginity
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<creditConfession "virgin" $scene.confessor $scene.level>>
<<if $scene.level == 2 && (!setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable'))>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<elseif $scene.level == 3 && $scene.confessor == "nun">>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $SEEN_FRIEND>>
<</if>>
<<set _stress = -(2+$scene.level)>>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 3>>
<<set $player.location to "Private Confessional at the Church of the Goddess">>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<<else>>
<<include "privateConfessImage">>
<</if>>
<div id="invframe" class="scrolltext">
You confess to having lost your virginity by having sex outside of wedlock.<br>
<br>
<<switch $scene.confessor>>
<<case "priest">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_priest;And why would that be an issue? The Goddess does not hold such antiquated beliefs, so long as you are not betraying someone, and all involved consent, any sex is a positive realisation of her blessings.@@"
<<case 2>>
"@@.npc_priest;Mmm, one's first time...@@"
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
As <<he npc_priest>> speaks the Rod of Penance in your rear slowly fucks you.
<<else>>
The <<priest npc_priest>> pauses as <<he npc_priest>> reminisces.
<</if>>
"@@.npc_priest;I do hope it was less of a disaster than my own... like so many things the first time is often quite the disaster! We learn through practice and experimentation, and, since you mentioned marriage, well... is it not better to be experienced and prepared for the marital bed?@@"
<<case 3>>
The <<Priest npc_priest>> smiles as <<he npc_priest>> steps closer, laying one hand over your crotch. "@@.npc_priest;Bless you, Sister. Losing one's virginity is but the first step on a wonderful journey. That your own journey should intersect with the church is surely the will of the Goddess, and we welcome what portion of it you choose to share.@@"
<</switch>>
<<case "nun">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_nun_harmony;It would seem you ought spend more time studying the words of the Goddess. While she will certainly smile down upon marriage and other joinings rooted in love such has no intrinsic pairing to sex. Sex, and pleasure, are blessings, to be shared and enjoyed consensually as much as those involved wish.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"@@.npc_nun_harmony;Sex? Out of wedlock? How scandalous!@@" The voice on the other side of the partition says with clear amusement, all the while the dildo in your rear thrusts in and out.
<</if>>
"@@.npc_nun_harmony;You should know by now that the Goddess teaches us to prize and embrace sex in all its forms. That pleasure is her gift to us, and our reveling in it is our offering to her. Be joyed at your accomplishment, not guilty.@@"
<<case 3>>
The mute nun rolls her eyes and snorts in annoyance, the sharp blows of the whip communicating that she is becoming quite tired of your seeming wilful misinterpretation of the Goddess's EXTREMELY pro-sex gospel.
<</switch>>
<<case "sissy_superior">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_sissy_superior;Unwed sex? This is not that sort of denomination. One need sign no contract before sharing the pleasures of the flesh.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You moan as the dildo slides deeper before you receive a response.
<</if>>
"@@.npc_sissy_superior;Whilst marriage for love is, of course, a blessed union... its connection to sexual monogamy, or, even sillier, notions of "saving" oneself are all but anathema to the teachings of the Goddess. Sex, and all of its pleasures, are a gift from the Goddess to be enjoyed in or out of a long-term relationship.@@"
<<case 3>>
<<=setup.getNpcName("npc_sissy_superior","formal")>> laughs in amusement. "@@.npc_sissy_superior;Concern over having lost one's virginity? Out of wedlock? I am sorry but that... well, that is such an amusement to me. I would have thought that you would have been around the Goddess long enough by now to know but no matter. While the Goddess adores chastity, virginity is of no interest to her. One should have sex when, and with whom, it makes sense to do so, and each time is both an individual joy, and a step forward on a journey, and in either case marriage is an entirely separate commitment.@@"
<</switch>>
<<case "fem_supreme">>
<<switch $scene.level>>
<<case 0 1>>
"@@.npc_fem_supreme;Unwed sex? This is not that sort of denomination. Rather than any nonsense of saving oneself for marriage the church teaches that it is far better to embrace joy, and knowledge, whence it comes. Life is about the journey, not the destination... though such tactics also mean that, should that first night marital bliss happen, well... experience breeds expertise. When considering a future spouse it is far better to be prepared than ignorant.@@"
<<case 2>>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow']) || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You moan as the dildo slides deeper before you receive a response.
<</if>>
"@@.npc_fem_supreme;Foolish. The Goddess teaches that sex consensually enjoyed is a blessing in or out of wedlock. In fact it is preferable to practice before. Just as one would not enter a union without knowing that they are socially and emotional compatible, so, too, is exploring one's sexuality, and that of one's partner, an important step before binding to one another.@@"
<<case 3>>
<<=setup.getNpcName("npc_fem_supreme","formal")>> chuckles softly. "@@.npc_fem_supreme;Sex out of wedlock? Losing your virginity? You have been around the church long enough to know the Goddess would consider those blessings, not sins... Perhaps you are looking for punishment for such blatant misinterpretation of doctrine.@@" She looks you in the eye until you timidly break the stare. "@@.npc_fem_supreme;I think not... and such attempts to top from the bottom, well... quite unbecoming a follower of the Goddess.@@"
<</switch>>
<<default>>
ERROR unknown scene.confessor <<=$scene.confessor>>
<</switch>>
<br><br>
<<include "confessionEnding">>
</div>/*#
#desc: become a nun secret ending (join after watching acolytes promotion)
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "<<=setup.getNpcName('npc_acolyte', 'formal')>> room">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage != "">>
<<removeItem _cage true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png">>
<div id="invframe" class="scrolltext">
Trembling with nervous excitement you are led to the front of the church, with tears of joy in her eyes <<=setup.getNpcName('npc_acolyte', 'formal')>> is allowed to attach a steel collar around your throat, given a leash that she holds as a trio of nuns attach leashes to her own posture collar.<br>
<br>
"@@.npc_sissy_superior;Take your sister to be to the dormitories, she must be prepared and cleansed in anticipation for her formal induction into our glorious sisterhood.@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> is flaked a nun in front and on either side while you follow dutifully behind, mind racing in anticipation of what is involved being "prepared and cleansed." <br>
<br>
Cutting through the main chapel you are led to a side door out of the church, a narrow hallway branching out before you with rooms for each of the nuns. Though you cannot tell which room is which you are taken directly to one in particular, led inside where you find a small sleeping chamber, a soft bed taking up most of the area with one wall peppered with restraints.<br>
<br>
Efficiently you are stripped naked save for your gag and mounted to the wall, straps holding you fast around your torso and at multiple points long each outstretched limb. After double checking your restraints the nuns unlock and remove your chastity device and withdraw the plug from your rear, leaving you empty <<if $player.body_ref.penis>>with your hard <<getWordMyPenis false>> sticking out with excitement<<else>>with your <<getWordVagina>> exposed and dripping in excited anticipation<</if>>.<br>
<br>
Just as you have finished being restrained there is a knock on the door, <<=setup.getNpcName('npc_sissy_superior', 'formal')>> and <<=setup.getNpcName('npc_fem_supreme', 'formal')>> entering the small room and dismissing all other nuns save <<=setup.getNpcName('npc_acolyte', 'formal')>>.<br>
<br>
Bound and gagged you look nervously out at the two High Priestesses and the newest inductee into their holy order.<br>
<br>
[<<moveTo "event_church_nun_ending_1" "Continue." 300>>]
</div>/*#
#desc: confirm become a nun secret ending after asking priest
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_priest', 'formal')>> your desire to become a full-fledged nun.<br>
<br>
<<He npc_priest>> smiles at your enquiry. "@@.npc_priest;Of course, with your history you would be joyfully welcomed into the sisterhood, and would surely love your new life. Still, it is a major commitment and a radical life change, are you certain that you are ready for it?@@"<br>
<br>
<<printThought "<<Hes npc_priest>> right, am I willing to give up everything for a new life in the church?">><br>
<br>
[<<moveTo "event_church_nun_ending_0_1_alt" "Tell <<him npc_priest>> you are ready to abandon your old life." 300 "<<set $scene.nun=true>>">>] <<hint $options "Such a commitment would mean turning your back on the rest of your life...">><br>
[<<moveTo "event_church_nun_ending_0_1_alt" "Change your mind and say you have things left to do." 300 "<<set $scene.nun=false>>">>]
</div>/*#
#desc: become a nun secret ending (join after watching acolytes promotion)
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nun>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_fem_supreme","npc_fem_supreme") setup.charImage("npc_acolyte","npc_acolyte_4") setup.charImage("npc_sissy_superior","npc_sissy_superior") setup.charImage("npc_priest")>>
<<else>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.nun>>
You reiterate your desire to become a nun and <<=setup.getNpcName('npc_priest', 'formal')>> smiles wider.<br>
<br>
"@@.npc_priest;Wonderful. We have been looking forward to this day for... well, no sense delaying further, come, sister that you may begin the preparations for your induction.@@"<br>
<br>
You follow along as <<he npc_priest>> leads you across the cathedral and through a small door beyond which is a narrow, branching hallway. Several nuns smile at you as you pass, your heart racing in anticipation of the fact that soon you will be one of them.<br>
<br>
Led through the hallways of the dormitory you come to a room, led inside to find it dominated by a bed with bondage restraints decorating one wall. <<=setup.getNpcName('npc_priest', 'formal')>> helps you to strip
<<if setup.checkItemTypeWorn("cage") && setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
completely naked, even removing your plug and somehow unlocking your chastity device.
<<elseif setup.checkItemTypeWorn("cage")>>
completely naked and somehow unlocking and removing your chastity device.
<<elseif setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
and removing your plug.
<<else>>
completely.
<</if>>
<<He npc_priest>> helps you up onto the wall, binding you in place with your limbs outstretched, naked, <<if !$player.body_ref.penis>>and totally empty<<else>>empty <<if $player.body_ref.vagina>>in both holes, <</if>>and with your <<getWordMyPenis false>> sticking out excitedly hard<</if>>. A gag is brought to your lips and buckled tightly around your head to complete your restraint.<br>
<br>
Just as <<he npc_priest>> finishes restraining you there is a knock on the door, the two high priestesses — <<=setup.getNpcName('npc_sissy_superior', 'formal')>> and <<=setup.getNpcName('npc_fem_supreme', 'formal')>> entering the in full rubber-fetish <<if $fetish.futanari>>futa <</if>>glory, your friend, <<=setup.getNpcName('npc_acolyte', 'formal')>> at their heels, leashed, attired and restrained the same as she had been at the end of her induction ritual.<br>
<br>
<<=setup.getNpcName('npc_priest', 'formal')>> gives a bow of greeting before wishing you luck and departing. You look out at the three women, helpless to do anything but wait and see what happens next.<br>
<br>
[<<moveTo "event_church_nun_ending_1" "Continue." 300>>]
<<else>>
You apologise for wasting <<his npc_priest>> time, but <<=setup.getNpcName('npc_priest', 'formal')>> brushes off your concern. "@@.npc_priest;Nonsense, the Goddess only wants those who are fully committed to join her holy order. When you are ready, you will know it, hesitation to make such a radical step will never be shamed.@@"<br>
<br>
Thanking <<him npc_priest>> for the consideration before you continue on your way.<br>
<br>
[<<moveTo "event_church_root" "Leave." 300>>]
<</if>>
</div>/*#
#desc: become a nun secret ending
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "<<=setup.getNpcName('npc_acolyte', 'formal')>> room">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png">>
<div id="invframe" class="scrolltext">
"@@.npc_fem_supreme;In preparation for her induction into our holy order a would-be acolyte spends three days and nights in the care of one of her future sisters. This period is used to tease and stimulate her, to better prepare her for the even more extreme tasks that lay before her when her real training begins.@@"<br>
<br>
"@@.npc_sissy_superior;Although somewhat unusual for such a task to fall to one so novice <<=setup.getNpcName('npc_acolyte', 'formal')>> begged passionately to be allowed to be your so-called "elder sister." Thus you will spend the next three days, and three nights in her room while she cares for you. Towards that end...@@" <<=setup.getNpcName('npc_sissy_superior', 'formal')>> turns to address the eager nun at her side.<br>
<br>
"@@.npc_sissy_superior;Do you accept this responsibility? To care for and welcome this new sister to our order? To cleanse her and guide her in preparation for her induction?@@"<br>
<br>
Eyes bright and enthusiastic <<=setup.getNpcName('npc_acolyte', 'formal')>> nods. Her gag removed the High Priestess gently caresses <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> cheek. "@@.npc_fem_supreme;Then go, sister, and welcome your friend.@@"<br>
<br>
Beaming with joy <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> <<if $player.body_ref.penis>>mouth is instantly wrapped around your hard <<getWordMyPenis false>><<else>>lips are soon pressed between your legs<</if>>. Latex fingers stroke the inside of your thighs and work towards your quivering rear hole.<br>
<br>
"@@.npc_sissy_superior;Enjoy the next three days, though... be warned that you will not be permitted to cum.@@"<br>
<br>
Already roaring towards orgasm you feel <<=setup.getNpcName('npc_acolyte', 'formal')>> slow down and you moan through your gag.<br>
<br>
<<printThought "What have I signed myself up for?">><br>
<br>
With a parting smile the sisters superior depart, leaving you alone with <<=setup.getNpcName('npc_acolyte', 'formal')>>. The only sounds are her wet sucking and your desperate moans.<br>
<br>
[<<moveTo "event_church_nun_ending_2" "Continue." 300>>]
</div>/*#
#desc: nun secret ending final
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<addItemSet "nun_fetish">>
<<wearItemSet "nun_fetish">>
<<addItem "gag_church">>
<<wearItem "gag_church" true>>
<<set $gameOver = 'nun'>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/church_interior_full.png">>
<div id="invframe" class="scrolltext">
A month later.<br>
<br>
The three days under <<=setup.getNpcName('npc_acolyte', 'formal')>> had been some of the most intense, and erotic of your life. At times you thought you would go mad with the need for orgasm as she kept you nearly constantly on edge to the point where the mere granting of a ruin were enough to bring you to delirious tears.<br>
<br>
Still, you endured, becoming even closer to her in the process, your ritualistic induction a joyous springboard into your "new" life. And a wonderful life it has been, your sisters are wonderful, your every day a new erotic joy in service to the Goddess. You are still in training, of course, there being much to learn before you can choose a permanent duty at the church, but you are happy, only thinking of your old life on the occasion you spot a familiar face in church, though you remain committed to a vow of silence and are unable to engage with them save to nod in assurance when they ask if you are enjoying your "new" life.<br>
<br>
Your moment of daydreaming is brought to a close as the plug in your ass roars to life, summoning you to your next assignment. Balanced on steep heels you mince across the church, hobbles swinging underneath your robes, being a nun really is so wonderful...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * Secret Ending — A Wonderful New Habit * * * *</span></div>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: church exterior
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Outside Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_exterior.png">>
<div id="invframe" class="scrolltext">
You stand outside the Church of the Goddess. The awe inspiring gothic facade looms above you, impressive even as it is dwarfed by the towering modern skyscrapers of steel and glass on either side, the holy site a curious contrast of weathered stone compared to the sleek modern edifices that make up much of the city.<br>
<br>
<<if $now.getUTCDay() == 0 && $now.getUTCHours() < 12 && ($now.getUTCHours() >= 7 && $player.flags.church.level < 2 || $now.getUTCHours() >= 8)>>
<<if $player.flags.church.level >= 2>>
<<if $now.getUTCHours() < 9>>
Unfortunately you have arrived too late to join in for this morning's service as they start at eight and run until noon.
<<else>>
With the main services concluded, the church remains closed until noon for various private ceremonies.
<</if>>
<<else>>
<<if $now.getUTCHours() < 8>>
Everyone appears busy preparing for the day's services that begin at eight and will run until noon and a nun politely asks you to come back in the afternoon, as the service itself is only open to full members of the church.
<<else>>
Being that it is Sunday morning, service is in session. Not being a full member of the church, you cannot attend.
<</if>>
<</if>>
<br><br>
<<elseif $player.flags.church.level >= 5 && $now.getUTCDay() == 0 && $now.getUTCHours() < 7>>
It is Sunday morning, service starts at eight am sharp.<br>
<br>
<<if setup.analyzeWornTags(['casual','office', 'formal']) != 'formal'>>
<<printThought "I'm really not dressed properly for service, I should go home and change into something more formal.">><br>
<br>
<</if>>
<<set _service = setup.setNextDate($now, 0, 7, 58)>>
<<set _timeToService = setup.secondsToDate($now,_service)>>
[<<moveTo "location_church_exterior" "Wait for service to start." _timeToService>>]<br>
<<elseif $player.flags.church.level >= 2 && $now.getUTCDay() == 0 && ($now.getUTCHours() < 8 || $now.getUTCHours() == 8 && $now.getUTCMinutes() == 0)>>
<<if $now.getUTCHours() < 8>>
It is Sunday morning, service starts at eight am sharp.<br>
<br>
<<else>>
It is Sunday morning, and service is moments from starting.
<</if>>
<<if setup.analyzeWornTags(['casual','office', 'formal']) != 'formal' && setup.checkVisibleClothingTag('nun') <= 70>>
[@@.link_locked;You curse yourself for not thinking when you were getting dressed this morning. There is no way you could appear before the Goddess dressed in such casual attire. It's Sunday, you need to be in your formal best!@@]<br>
<<else>>
<<set _service = setup.setNextDate($now, 0, 8, 0)>>
<<set _timeToService = setup.secondsToDate($now,_service)>>
<<if $scene.first_service>>
<<set _timeToService += 3600>>
<</if>>
[<<moveTo "event_church_service_root" "Attend service." _timeToService>>]<br>
<</if>>
<<elseif !$player.flags.church.visited>>
[<<moveTo "event_church_intro_1" "Enter the church." 60>>]<br>
<<elseif !$player.flags.church.tour>>
[<<moveTo "event_church_intro_1_alt" "Enter the church." 60>>]<br>
<<else>>
[<<moveTo "event_church_root" "Enter the church." 60>>]<br>
<</if>>
[<<moveTo "room_student_quarter" "Leave." 60>>]
</div>/*#
#desc: choose what to do at church
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$daily.church_count>>
<<set $daily.church_count = 0>>
<</if>>
<<if $player.flags.church.level == 0>>
<<set $scene.lvl1promotion = $player.flags.church.activities.prayer[1] > 0 && $player.flags.church.activities.group_prayer[1] > 0 && $player.flags.church.activities.meditation[1] > 0 && $player.flags.church.activities.class[1] > 0 && $player.flags.church.activities.confession[1] > 0>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $now.getUTCHours() < 5>>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_joy_modest">>
<<else>>
<<createAdvBGR "./images/locations/church_interior.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() < 5>>
You emerge into the church narthex where a nun politely asks you to leave, explaining that it is quite late. "@@.npc_nun_chastity;Well, quite early, technically... nonetheless, you should return home.@@"<br>
<br>
[<<moveTo "room_student_quarter" "Leave the church." 60>>]
<<elseif $scene.lvl1promotion>>
Returning to the narthex you are greeted by a nun unlike any you have encountered prior.<br>
<br>
Looming nearly a foot taller than yourself her height puts you directly at eye level with her massive breasts. Even if her robe was not fitted to hug what is obviously a fabulous hourglass figure her rack would be head-turning, twin perfect globes looming above an exquisitely narrowed waist.<br>
<br>
Your eyes flit south before turning north to meet her gaze, catching sight of what looks to be a bulge between her legs before focusing in on her beautiful face smiling down at you.<br>
<br>
"@@.npc_sissy_superior;Hello, my child. My name is <<=setup.getNpcName('npc_sissy_superior', 'formal')>> and I am one of the Sisters Superior responsible for this parish. I have heard much about your... enthusiasm as you availed yourself of the multitude of services we provide. With your obvious prospects as an acolyte I believe it is time I got to know you better.@@"<br>
<br>
Nodding automatically you haven't a prayer of resisting her dominant allure, following obediently as she leads you through the nave and into a smaller side chapel.<br>
<br>
The door closes behind you to leave you alone with the towering <<=setup.getNpcName('npc_sissy_superior', 'formal')>> as she turns smoothly to face you.<br>
<br>
<<if setup.getTotalValue("submission") < 10 || setup.getTotalValue("dominance") > 10>>
Standing in the presence of her glory you feel an urge to drop to your knees...<br>
<br>
[<<moveTo "event_church_advancelvl1_1" "Stand before her." 300 "<<set $scene.kneel=false>>">>]<br>
<<else>>
Standing in the presence of her glory you cannot resist the instinct to drop to your knees.<br>
<br>
<</if>>
[<<moveTo "event_church_advancelvl1_1" "Kneel before her." 300 "<<set $scene.kneel=true>>">>]
<<else>>
<<if $npc_acolyte.stage == 6>>
Looking around, you spot your friend <<=setup.getNpcName('npc_acolyte', 'formal')>> approaching, ungagged and with a wide smile on her face.<br>
<br>
[<<moveTo "event_church_acolyte_promotion_1" "Greet her." 60>>]
<<elseif $daily.church_count > $player.flags.church.level+$npc_manager.stage>>
A nun approaches you and gently, but firmly suggests that you should take some time on your own to process what you have experienced. "@@.npc_nun_chastity;Following the Goddess is about more than sitting in a stuffy church. One must experience the world, as well. You have already seen much today, return to your life, the church will be here for you tomorrow.@@"<br>
<<else>>
You look around the large Church of the Goddess, shivering slightly in the cool chamber. There are a number of church amenities you could use, and you see <<=setup.getNpcName('npc_priest', 'formal')>> smile at you, the friendly <<priest npc_priest>> always available to talk.<br>
<br>
<<if $daily.church_nun>>
[@@.link_locked;You have already visited a nun today.@@]<br>
<<else>>
[<<moveTo "event_church_nun_talk_1" "Talk to a nun." 60>>]<br>
<</if>>
<<if $daily.church_priest>>
[@@.link_locked;You have already visited <<=setup.getNpcName("npc_priest", "formal")>> today.@@]<br>
<<else>>
[<<moveTo "event_church_priest_talk_1" 'Talk to the <<priest npc_priest>>, <<=setup.getNpcName("npc_priest", "formal")>>.' 60>>]<br>
<</if>>
<<if $daily.church_conf>>
[@@.link_locked;You have already taken confession today.@@]<br>
<<else>>
[<<moveTo "event_church_confession_1" "Step into a confession booth to unburden yourself of sin." 60>>]<br>
<</if>>
<<if $daily.church_priv_pray>>
[@@.link_locked;You have already prayed today.@@]<br>
<<else>>
[<<moveTo "event_church_private_pray_1" "Use a private room to say some prayers." 1800>>]<br>
<</if>>
<<if $daily.church_group_pray>>
[@@.link_locked;You have already joined in group prayer today.@@]<br>
<<else>>
[<<moveTo "event_church_group_pray_1" "Join other worshippers in group prayer." 1800>>]<br>
<</if>>
<<if $daily.church_med>>
[@@.link_locked;You have already done group meditation today.@@]<br>
<<else>>
[<<moveTo "event_church_meditation_1" "Join in for some group meditation." 1800>>]<br>
<</if>>
<<if $daily.church_class>>
[@@.link_locked;You have already taken a class today.@@]<br>
<<else>>
[<<moveTo "event_church_class_1" "Take a class on scripture and faith." 1800>>]<br>
<</if>>
<<if $player.flags.church.level == 3>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 5000)>>
[@@.link_locked;There is no work available for you at this time.@@]<br>
<<else>>
<<if $daily.church_work>>
[@@.link_locked;You have already done work for the church today.@@]<br>
<<else>>
[<<moveTo "event_church_work_root" 'Ask <<=setup.getNpcName("npc_priest", "formal")>> if you can do some volunteer work for the church.' 60>>]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<br>
[<<moveTo "room_student_quarter" "Leave the church." 60>>]
<</if>>
</div>/*#
#desc: chat with nun at church
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.church_count += 1>>
<<set $daily.church_nun = true>>
<<set $scene.fetishes = ["bimbo", "forced_orgasm", "sm", "chastity", "sissy", "bondage", "slut", "feet", "dominatrix"]>>
<<if $fetish.bestiality_hard>>
<<set $scene.fetishes.push("bestiality")>>
<</if>>
<<if $fetish.cum>>
<<set $scene.fetishes.push("cum")>>
<</if>>
<<set $scene.acolyte_nun_id = "">>
<<if $player.flags.church.level >= 3 && $npc_acolyte.stage == 4 && !$daily.acolyte && random(1,2) == 1>>
<<set _acolyteOptions = []>>
<<if !$npc_acolyte.flags.met_as_nun.chastity>>
<<set _acolyteOptions.push("chastity")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.bondage>>
<<set _acolyteOptions.push("bondage")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.sissy>>
<<set _acolyteOptions.push("sissy")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.bimbo>>
<<set _acolyteOptions.push("bimbo")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.feet>>
<<set _acolyteOptions.push("feet")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.cum && $fetish.cum>>
<<set _acolyteOptions.push("cum")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.sm>>
<<set _acolyteOptions.push("sm")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.forced_orgasm>>
<<set _acolyteOptions.push("forced_orgasm")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.slut>>
<<set _acolyteOptions.push("slut")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.bestiality && $fetish.bestiality_hard>>
<<set _acolyteOptions.push("bestiality")>>
<</if>>
<<if !$npc_acolyte.flags.met_as_nun.dominatrix>>
<<set _acolyteOptions.push("dominatrix")>>
<</if>>
<<if $npc_acolyte.flags.met_as_nun.chastity && $npc_acolyte.flags.met_as_nun.bondage && $npc_acolyte.flags.met_as_nun.sissy && $npc_acolyte.flags.met_as_nun.bimbo && $npc_acolyte.flags.met_as_nun.feet && ($npc_acolyte.flags.met_as_nun.cum || !$fetish.cum) && $npc_acolyte.flags.met_as_nun.sm && $npc_acolyte.flags.met_as_nun.forced_orgasm && $npc_acolyte.flags.met_as_nun.slut && ($npc_acolyte.flags.met_as_nun.bestiality || !$fetish.bestiality_hard) && $npc_acolyte.flags.met_as_nun.dominatrix>>
<<set $npc_acolyte.stage = 5>>
<<else>>
<<set $scene.acolyte_nun_id = _acolyteOptions.random()>>
<</if>>
<<set $npc_acolyte.flags.met_as_nun[$scene.acolyte_nun_id] = true>>
<<set $daily.acolyte = true>>
<<else>>
<<if $npc_acolyte.stage >= 7>>
<<set $scene.fetishes.push("acolyte")>>
<</if>>
<<set $scene.nun_id = $scene.fetishes.random()>>
<</if>>
<<if $scene.acolyte_nun_id != "">>
<<set $scene.nun_id = $scene.acolyte_nun_id>>
<<else>>
<<set $scene.nun_id = $scene.fetishes.random()>>
<<set $npc_priest.flags.talk[$scene.nun_id] = $player.flags.church.level+1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.acolyte_nun_id>>
<<switch $scene.nun_id>>
<<case "chastity">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_joy_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "bondage">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_gloria_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "sissy">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_grace_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "bimbo">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_serenity_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "feet">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_harmony_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "cum">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_temperance_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "sm">>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_nun_patience","npc_nun_patience_modest") setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "forced_orgasm">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_prudence_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "slut">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_chastity_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "bestiality">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_unity_modest" setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<<case "dominatrix">>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_nun_constance","npc_nun_constance_modest") setup.charImage("npc_acolyte","npc_acolyte_4_vow")>>
<</switch>>
<<else>>
<<switch $scene.nun_id>>
<<case "chastity">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_joy_modest">>
<<case "bondage">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_gloria_modest">>
<<case "sissy">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_grace_modest">>
<<case "bimbo">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_serenity_modest">>
<<case "feet">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_harmony_modest">>
<<case "cum">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_temperance_modest">>
<<case "sm">>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_nun_patience","npc_nun_patience_modest")>>
<<case "forced_orgasm">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_prudence_modest">>
<<case "slut">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_chastity_modest">>
<<case "bestiality">>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_unity_modest">>
<<case "dominatrix">>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_nun_constance","npc_nun_constance_modest")>>
<<case "acolyte">>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_acolyte","npc_acolyte_4")>>
<</switch>>
<</if>>
<div id="invframe" class="scrolltext">
You approach one of the Church of the Goddess's seemingly endless supply of beautiful, but paradoxically conservatively dressed, nuns.
<<if $player.flags.church.level > 1>>
Of course, you are now aware of all about the fun things going on UNDER those robes...
<</if>>
<br><br>
<<if $scene.acolyte_nun_id != "">>
As she turns to greet you, you realise the nun is not alone — at her side stands your friend and recently inducted acolyte — <<=setup.getNpcName('npc_acolyte', 'formal')>>.
<<switch $scene.acolyte_nun_id>>
<<case "chastity">>
<<=setup.getNpcName('npc_nun_joy', 'formal')>> greets you with a smile, while <<=setup.getNpcName('npc_acolyte', 'formal')>>, being under a vow of silence and thus gagged, merely nods, looking somewhat distracted.<br>
<br>
"@@.npc_nun_joy;Greetings, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>> it is so nice to see you, excuse your friend she is somewhat... distracted. True to her name she is, in some ways, too eager so I have been assigned to teach her about control. Since her promotion she has not been allowed release as I have trained her in how to ride the wave of desperation without succumbing. If she seems a bit distracted it is probably lack of sleep, she was up all night being constantly teased and ruined twice an hour.@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> visibly shudders at the memory and <<=setup.getNpcName('npc_nun_joy', 'formal')>> smiles. "@@.npc_nun_joy;Ah, some life! How about some more vibrations?@@" Producing a remote <<=setup.getNpcName('npc_nun_joy', 'formal')>> makes a small adjustment, <<=setup.getNpcName('npc_acolyte', 'formal')>> wobbling a bit, a soft whimper escaping her gag.<br>
<br>
<<=setup.getNpcName('npc_nun_joy', 'formal')>> smirks at the look of desperation flickering across <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> "@@.npc_nun_joy;That's hardly anything! I haven't cum in over two weeks, you really need to improve your stamina... come on, let's walk around a bit, get those inserts churning between your legs to really remind you of your divine-blessed fullness.@@"<br>
<br>
Letting out a whine <<=setup.getNpcName('npc_acolyte', 'formal')>> lustily nods as the two of them turn and begin slowly walking across the cathedral.
<<case "bondage">>
You meet <<=setup.getNpcName('npc_nun_gloria', 'formal')>>, silent as always she is joined today by <<=setup.getNpcName('npc_acolyte', 'formal')>>. From the look of things both women are identically restrained — arms bound and hidden beneath their robes, their miniscule steps speaking to very short hobble restraints. The two nuns bow to you in unison before <<=setup.getNpcName('npc_nun_gloria', 'formal')>> leads the way off across the cathedral, the practice in intense bondage apparently the latest step in <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> training.
<<case "sissy">>
You approach <<=setup.getNpcName('npc_nun_grace', 'formal')>>, <<=setup.getNpcName('npc_acolyte', 'formal')>> standing at her side for what must be the next stage of her training.<br>
<br>
Eyes twinkling with joy <<=setup.getNpcName('npc_acolyte', 'formal')>> greets you with a silent curtsy looking quite cute and adorable.<br>
<br>
"@@.npc_nun_grace;Greetings, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>. I am teaching your friend here the finer, more delicate details of femininity.@@" She turns towards <<=setup.getNpcName('npc_acolyte', 'formal')>> with a teasing smile. "@@.npc_nun_grace;It isn't all orgasms and cocksucking, hmm? Sometimes it's all about looking adorably cute!@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> blushes and turns slightly grabbing one wrist with the opposite hand as she bashfully looks away.<br>
<br>
"@@.npc_nun_grace;Ah, what a fast learner! Come along, you need to practice your mincing a bit more.@@"<br>
<br>
Giving a cute wave <<=setup.getNpcName('npc_acolyte', 'formal')>> walks away, hands held at her sides as she takes short, adorable steps.
<<case "bimbo">>
You approach <<=setup.getNpcName('npc_nun_serenity', 'formal')>>, the nun joined by <<=setup.getNpcName('npc_acolyte', 'formal')>>. Though her makeup is the same degree of "perfect" as all nuns what you can see of <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> face today, eyes and nose peeking out above her covered (and gagged) mouth, is looking very slutty.<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> lustily flutters her eyelashes at you as <<=setup.getNpcName('npc_nun_serenity', 'formal')>> greets you with a smile. "@@.npc_nun_serenity;Hello, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>, checking in on your friend's training? She is coming along quite well. I am working on helping sharpen her more... seductive and lusty instincts.@@"<br>
<br>
As if on cue, <<=setup.getNpcName('npc_acolyte', 'formal')>> steps towards you, making bedroom eyes before leaning in for a grinding hug.<br>
<br>
"@@.npc_nun_serenity;Very good, <<=setup.getNpcName('npc_acolyte', 'formal')>>. Unfortunately that will be all for now, we have an appointment to have her practice her multi-partner techniques for the rest of the day. Come along, slut, it's almost time to fuck your brains out.@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> gives you a final squeeze before excitedly following after <<=setup.getNpcName('npc_nun_serenity', 'formal')>> as the nun walks away.
<<case "feet">>
You find <<=setup.getNpcName('npc_nun_harmony', 'formal')>> on a bench, <<=setup.getNpcName('npc_acolyte', 'formal')>> kneeling at her feet massaging the senior nun's feet. Walking past you catch a peek under <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> robes to note that she is wearing full-on ballet heels!<br>
<br>
"@@.npc_nun_harmony;Ah, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>!@@" <<=setup.getNpcName('npc_nun_harmony', 'formal')>> states in greeting, <<=setup.getNpcName('npc_acolyte', 'formal')>> looking up for a moment to silently greet you before turning back to her work. "@@.npc_nun_harmony;As you can see our lovely new Sister is taking a break from practicing in her new shoes to focus on other methods of service. Oh yes, right on the arches.@@" She adds with an obvious smile of pleasure.<br>
<br>
You express surprise at <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> steep footwear, asking if all of the nun's wear such. "@@.npc_nun_harmony;Not outside certain formal occasions.@@" <<=setup.getNpcName('npc_nun_harmony', 'formal')>> explains, "@@.npc_nun_harmony;But being able to comport oneself while in what is termed a "highly exalted" state is a vital skill, and one which it is my task to instruct in. Speaking of... back on your feet, let's see another lap!@@" She orders. <<=setup.getNpcName('npc_acolyte', 'formal')>> springs up, surprisingly tall thanks to her steep footwear as she starts wobbling off to make a circuit around the cathedral.<br>
<br>
Bidding <<=setup.getNpcName('npc_nun_harmony', 'formal')>> farewell you continue on your own way, leaving <<=setup.getNpcName('npc_acolyte', 'formal')>> to her training.
<<case "cum">>
You find <<=setup.getNpcName('npc_nun_temperance', 'formal')>> and <<=setup.getNpcName('npc_acolyte', 'formal')>> sitting outside the confessional, the latter with a bit of a glassy look in her eyes.<br>
<br>
"@@.npc_nun_temperance;Ah, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>, so lovely to see you. <<=setup.getNpcName('npc_acolyte', 'formal')>> here was just taking a breather after helping out with confessions. She has shown a quite wonderful thirst for service.@@"<br>
<br>
Though her eyes are heavy <<=setup.getNpcName('npc_acolyte', 'formal')>> looks up at you with a smiling expression as you notice a subtle difference in the thin covering over her mouth — by your estimation there must be a large ring gag within instead of the more "normal" panel gag favoured by most of the nuns.<br>
<br>
As you stand, you notice another church visitor heading for one of the confessionals.<br>
<br>
"@@.npc_nun_temperance;Oh, looks like it's back to work!@@" <<=setup.getNpcName('npc_nun_temperance', 'formal')>> notes, <<=setup.getNpcName('npc_acolyte', 'formal')>>, rising to her feet.<br>
<br>
Pausing for a moment to share a gagged kiss with you, you cannot help but notice the smell of cum <<if $fetish.piss>>and piss <</if>>on <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> breath.<br>
<br>
<<if setup.getTotalValue("cum") >= 10 && setup.getTotalValue("piss") >= 10>>
<<printThought "Yum!">>
<<elseif setup.getTotalValue("cum") > 5 && (!$fetish.piss || ($fetish.piss && setup.getTotalValue("piss") > 5))>>
<<printThought "Huh, that's weird.">>
<<else>>
<<printThought "Ew, that's disgusting!">>
<</if>>
<<case "sm">>
You run into <<=setup.getNpcName('npc_nun_patience', 'formal')>> and <<=setup.getNpcName('npc_acolyte', 'formal')>>, the latter shifting a bit uncomfortably on her feet.<br>
<br>
"@@.npc_nun_patience;Greetings, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>, do not mind your friend, she has been learning the wonderful extremes of holy discipline and, well... this morning's spanking was quite an aggressive one. It was a good lesson through, right?@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> quickly nods her agreement and you see a look of bliss pass over her face in response to the obedient reply.<br>
<br>
"@@.npc_nun_patience;See, the conditioning is taking hold quite well.@@" States with a smile. "@@.npc_nun_patience;There really is nothing quite like a fully trained painslut. Well, we had better be off, there is more to being a nun that getting fucked or whipped, after all... sometimes you are fortunate enough to be fucked AND whipped.@@"<br>
<br>
With bright eyes <<=setup.getNpcName('npc_acolyte', 'formal')>> curtsies towards you before following after her current mentor.
<<case "forced_orgasm">>
You find <<=setup.getNpcName('npc_nun_prudence', 'formal')>> and <<=setup.getNpcName('npc_acolyte', 'formal')>> the later standing with eyes shut in concentration, shuddering slightly as you realise she is in the middle of a silent orgasm.<br>
<br>
Greeting you with a smile <<=setup.getNpcName('npc_nun_prudence', 'formal')>> pulls out a remote and adjusts things until <<=setup.getNpcName('npc_acolyte', 'formal')>>, though still clearly distracted, is able to focus on you, her heavy eyes lighting up as she waves in greeting, her mouth still covered and gagged to prevent more complicated communication.<br>
<br>
"@@.npc_nun_prudence;Please excuse <<=setup.getNpcName('npc_acolyte', 'formal')>>, she is in the middle of one of the most intense portions of her training, to be constantly stimulated and experience multiple orgasms per hour. She has moved past the initial delight at such a prospect thanks to her prior stages and how long she has been on restrictions, but she has quite a bit more to endure as we push past and restructure any previous concept she may have had about the limits of her pleasure threshold.@@"<br>
<br>
After that short explanation <<=setup.getNpcName('npc_nun_prudence', 'formal')>> fiddles with the remote once again, <<=setup.getNpcName('npc_acolyte', 'formal')>> staggers slightly, a gasp escaping her gag.<br>
<br>
You wish your friend luck and she manages to distractedly nod in thanks while surviving what looks like another orgasm as you continue on your way.
<<case "slut">>
<<=setup.getNpcName('npc_nun_chastity', 'formal')>> greets you, <<=setup.getNpcName('npc_acolyte', 'formal')>> standing with her nodding in acknowledgement, her expression looking remarkably serene and peaceful.<br>
<br>
"@@.npc_nun_chastity;Greetings, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>, and greetings on behalf of Sister <<=setup.getNpcName('npc_acolyte', 'formal')>>. I apologise that her training, and thus her current vow of silence, remains in place, but she writes frequently about how your frequent visits has helped bolster her resolve.@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> bows as <<=setup.getNpcName('npc_nun_chastity', 'formal')>> continues. "@@.npc_nun_chastity;She has been racing through her training thus far, though finally learning to enjoy the journey, isn't that right?@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> nods as <<=setup.getNpcName('npc_nun_chastity', 'formal')>> pats her head. "@@.npc_nun_chastity;Yes, she is becoming a VERY good girl, of course the fact that the current phase of training involves nightly orgys may have something to do with it. <<=setup.getNpcName('npc_acolyte', 'first')>> may have thought herself an eager slut, but she would blush if she knew what <<=setup.getNpcName('npc_acolyte', 'formal')>> is getting up to.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> eyes twinkle with delight. "@@.npc_nun_chastity;Well, we had better be moving on, <<=setup.getNpcName('npc_acolyte', 'formal')>> still is not allowed outside the church grounds so I need to find something to keep her... occupied while I do some evangelising in the city.@@"<br>
<br>
Though her mouth is covered and gagged you can sense <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> playful pout at the fact that she cannot accompany <<=setup.getNpcName('npc_nun_chastity', 'formal')>>. "@@.npc_nun_chastity;There, there, my dear. I promise you will not be bored. Going out in the world to help spread the good word of our Goddess will be one of your final lessons. Such will come along all in good time. Come, I promise you will not be bored while I am away.@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> nods before following <<=setup.getNpcName('npc_nun_chastity', 'formal')>> off to find "entertainment."
<<case "bestiality">>
<<=setup.getNpcName('npc_nun_unity', 'formal')>> is with <<=setup.getNpcName('npc_acolyte', 'formal')>>, the later standing a bit bow-legged.<br>
<br>
"@@.npc_nun_unity;Ah, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>. Apologies on behalf of my student, <<=setup.getNpcName('npc_acolyte', 'formal')>> took her first horse-cock last night and is still recovering from that blessed gut-rearranging experience.@@" <<=setup.getNpcName('npc_nun_unity', 'formal')>> smiles as she pats <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> head, the nun in training smiling with her eyes — her mouth otherwise occupied with a large gag hidden beneath her habit.<br>
<br>
"@@.npc_nun_unity;Not that she did not put in her best effort — her prior practice getting knotted like a bitch gave her confidence, but there is really nothing like a proper equine sausage to show a woman what it means to be FULL.@@" From her reverent tone you can tell <<=setup.getNpcName('npc_nun_unity', 'formal')>> is no stranger to bestial partners herself. "@@.npc_nun_unity;Anyway, <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> service lessons continue apace, if she stays on track it will not be long before she is a fully fledged sister, prepared to receive the calling of her own personal Goddess-blessed specialty.@@"<br>
<br>
You wish your friend luck as the two nuns continue on their way, the after-effects of getting plowed by literal beasts only slightly visible in <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> gait.
<<case "dominatrix">>
<<=setup.getNpcName('npc_nun_constance', 'formal')>> greets you with a haughty smile. She exudes a raw dominance different from most of the other nuns while <<=setup.getNpcName('npc_acolyte', 'formal')>> stands at her side, attempting to match the senior nun's demeanour, but not quite pulling it off.<br>
<br>
"@@.npc_nun_constance;Good day to you, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>@@" <<=setup.getNpcName('npc_nun_constance', 'formal')>> states with a gentle nod. "@@.npc_nun_constance;Your friend's training is nearing its end. All nuns are expected to be able to take up the mantle of leadership when the need arises... though I do not think I am giving anything away when I say that <<=setup.getNpcName('npc_acolyte', 'formal')>> is a real natural submissive slut, unlikely to hear a calling to make use of such skills.@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> blushes submissively for a moment before attempting to fix her expression to look more stern — a feat made somewhat more difficult by the fact that her covered mouth remains filled and gagged.<br>
<br>
"@@.npc_nun_constance;See what I mean?@@" <<=setup.getNpcName('npc_nun_constance', 'formal')>> notes with an amused smile. "@@.npc_nun_constance;No matter, this is merely a formality, I see no reason that our wonderful new Sister will not soon be finishing her training — look out for her next time you are about town, joining <<=setup.getNpcName('npc_nun_chastity', 'formal')>> for a day of evangelising will be <<=ps(setup.getNpcName('npc_acolyte', 'formal'))>> next, and penultimate, trial.@@"<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'formal')>> straightens with obvious excitement, acknowledging you with formal nod before falling in behind <<=setup.getNpcName('npc_nun_chastity', 'formal')>> and attempting to mimic the senior nun's sex-infused, dominant gait.
<<default>>
ERROR: unknown acolyte nun id: <<=$scene.acolyte_nun_id>>
<</switch>>
<<else>>
<<switch $scene.nun_id>>
<<case "bimbo">>
<<switch $player.flags.church.level>>
<<case 0>>
You approach a gorgeous nun who introduces herself as <<=setup.getNpcName('npc_nun_serenity', 'formal')>>. Asking about her faith she explains that she has devoted herself to becoming a paragon of femininity in all things.<br>
<br>
Looking at her body, even somewhat concealed by her fitted robe, there is no questioning her success on the physical front. Tall and slender with full breasts and a beautiful butt she is made up like a model or a moviestar, and no less beautiful.
<<case 1>>
You approach the gorgeous, voluptuous nun who goes by the name <<=setup.getNpcName('npc_nun_serenity', 'formal')>>. She greets you with a gentle smile, asking how your own "journey into femininity" is progressing.<br>
<br>
You talk a bit about your recent experiences and she smiles, encouraging you to stay the course to bring glory to yourself and the Goddess.
<<case 2>>
You approach the gorgeous nun who goes by the name <<=setup.getNpcName('npc_nun_serenity', 'formal')>>. She smiles at you in greeting, congratulating you on your continued feminisation before talking about her own, gushing about how wonderful her hormone treatments are going and that she is going to be doing another surgery soon to better sculpt her body into even more of a feminine ideal.
<<case 3>>
<<=setup.getNpcName('npc_nun_serenity', 'formal')>> gives you a welcoming hug, squeezing you tight enough that you can feel her chastity-caged package pressing into you along with her huge, full breasts. She talks about how horny her new hormone treatments have been making her, that she was up all night getting fucked by some of the other nuns but she is still full of feminine arousal.<br>
<br>
You congratulate her on her ongoing devotion and wish her luck as she continues her transformation (or is that descent?) into erotically extreme femininity.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "forced_orgasm">>
<<switch $player.flags.church.level>>
<<case 0>>
You approach a distracted nun who introduces herself as <<=setup.getNpcName('npc_nun_prudence', 'formal')>>. She somewhat breathlessly explains that she is devoted to revealing the pleasure granted by the Goddess.<br>
<br>
Though friendly she also seems a bit distracted so you move on rather than bothering her further.
<<case 1>>
You approach a distracted nun who suddenly gasps and shudders before catching her breath and introducing herself as <<=setup.getNpcName('npc_nun_prudence', 'formal')>>. Panting between words she wishes you the blessings of the Goddess, explaining that she has devoted herself to accepting as much pleasure as the Goddess will grant and it is proving somewhat distracting.<br>
<br>
Thanking her for her time you move on, leading her to her "prayers."
<<case 2>>
You approach a distracted nun and she smiles at you and introduces herself as <<=setup.getNpcName('npc_nun_prudence', 'formal')>>. As she starts to explain her devotion to the "pleasures of the Goddess" she suddenly stops and shudders. Leaning against a nearby pillar her eyes roll back and she takes almost a minute to continue, resuming as if nothing had happened.<br>
<br>
<<printThought "Did she just... have an orgasm?">><br>
<br>
Only half listening to the rest of her breathless explanation you thank her for her time and move on as she stiffens and gasps once again.
<<case 3>>
Approaching the breathless nun, <<=setup.getNpcName('npc_nun_prudence', 'formal')>> she gasps slightly, taking a moment to recover before explaining that she's on her fiftieth orgasm for the day. Noticing your shocked expression she smiles.<br>
<br>
"@@.npc_nun_prudence;I have devoted myself completely to experiencing the limits of Goddess-granted pleasure. It has been difficult and the vibrator under my belt and filling my holes are becoming near torturous I am so over-sensitised, but I must push through it!@@" You wish her luck in her efforts, moving away as she leans against a pillar and shudders with yet another orgasm.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "cum">>
<<switch $player.flags.church.level>>
<<case 0>>
You greet a nun who introduces herself as <<=setup.getNpcName('npc_nun_temperance', 'formal')>>. Asked about her focus of devotion she smiles and notes her name before excusing herself explaining that she is feeling quite thirsty and excusing herself to return to work.
<<case 1>>
You greet the nun named <<=setup.getNpcName('npc_nun_temperance', 'formal')>>. She asks how you're doing noting that she has had a very fulfilling day "in service to the Goddess." You catch a whiff of something on her breath before she walks away,
<<if $fetish.piss && random(2) == 1>>
<<if setup.getTotalValue("piss") >= 10>>
the unmistakable smell of <<getWordPiss>>, yum!
<<else>>
it almost smells like piss...
<</if>>
<<else>>
<<if setup.getTotalValue("cum") >= 10>>
the unmistakable smell of <<getWordCum>>, delicious!
<<else>>
wait, was that cum on her breath?
<</if>>
<</if>>
<br><br>
You stare after her in puzzlement, not quite believing your own nose.
<<case 2>>
Greeting <<=setup.getNpcName('npc_nun_temperance', 'formal')>> you quietly inform her that there's a bit of cum remaining on her cheek. Brushing it off with a finger she looks at the bead of <<getWordCum>> with lust before licking her finger clean with a contented smile.<br>
<br>
Thanking you for the assistance she wishes you luck in your next draught before walking off, noting she needs to get back to work.
<<case 3>>
You greet <<=setup.getNpcName('npc_nun_temperance', 'formal')>> and she pulls you in for a kiss. Stabbing her tongue past your lips she shares the heady <<if $fetish.piss>>blend of <<if $options.fem>>feminine <</if>><<getWordCum>> and <<getWordPiss>> flavours<<else>>taste of <<if $options.fem>>feminine <</if>><<getWordCum>><</if>> that fills her mouth.<br>
<br>
"@@.pc;Busy day?@@" You ask her and she smiles in response, as she explains that she was "@@.npc_nun_prudence;Just taking a break, back to work savouring the gifts of the Goddess now, hehe!@@"<br>
<br>
With a parting wink she heads for the <<if $fetish.piss && random(2) == 1>>bathroom to resume working as a human urinal<<else>>confession booths to resume working as a human cumdumpster<</if>>.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "slut">>
<<switch $player.flags.church.level>>
<<case 0>>
Greeting a cute, perky nun she introduces herself as <<=setup.getNpcName('npc_nun_chastity', 'formal')>> before launching into a speech about how wonderful it is act in service to the Goddess. By her bubbly energy you can see how effective she would be at evangelising, eventually thanking her for her time and continuing on your way.
<<case 1>>
The cute, perky <<=setup.getNpcName('npc_nun_chastity', 'formal')>> smiles at you in greeting, asking if you have "@@.npc_nun_chastity;Spread the word of the Goddess@@" recently?<br>
<br>
The way she phrases things and gives you a sly look is strangely enticing, but you quickly excuse yourself, explaining that you are still learning and will thus leave evangelising to more experienced followers such as herself. She seems to smile at the thought quickly adding that she's "@@.npc_nun_chastity;Always willing to share@@" before you continue on your way.
<<case 2>>
<<=setup.getNpcName('npc_nun_chastity', 'formal')>> greets you with a smile asking if you have considered joining her and the other sisters on a missionary expedition sometime?<br>
<br>
From her smirk you can imagine what sort of "ministrations" you'd be doing, but you let her down slow, saying you need to become more versed in the Goddess's teachings first so as not to be a burden.<br>
<br>
She nods in understanding, but consoles that "@@.npc_nun_chastity;So long as your holes are offered freely and joyously your efforts will always serve to exult the Goddess.@@"
<<case 3>>
You find <<=setup.getNpcName('npc_nun_chastity', 'formal')>> with a distant look on her face and a contented smile. She explains that she just finished "evangelising" a full dozen prospective <<if $options.fem>>girls<<else>>followers<</if>>, parting her robe slightly to show the small river of cum trickling down her leg as she scoops it up and offering you a lick.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
You eagerly accept her offer, sucking her finger clean before
<<else>>
You hesitate for a moment and she licks her finger clean, then
<</if>>
she pulls you close to share the bounty <<if $options.fem>>of girl cum <</if>>between you.<br>
<br>
Separating with a smile she wishes you luck, explaining she's off to spread today's word. Winking she adds that "@@.npc_nun_chastity;Today's word is legs,@@" before bouncing merrily away.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "bestiality">>
<<switch $player.flags.church.level>>
<<case 0>>
<<=setup.getNpcName('npc_nun_unity', 'formal')>> greets you with a smile, a large dog sitting obediently at her side. In addition to her pet you sense something a bit different about her, something primal and earthy as she explains that she has devoted herself to exulting the compassion of the Goddess.<br>
<br>
Thanking her for her service you continue on your way.
<<case 1>>
Talking with <<=setup.getNpcName('npc_nun_unity', 'formal')>> you catch a strange whiff of... animal, and not just the large dog that always seems to be at her side. Though the city stretches out all around the Church you would swear she has just come from a farm. Not wanting to be rude you do not inquire about it and she wishes you the blessings of "@@.npc_nun_unity;The Goddess and all the creatures of the earth@@" before continuing off, looking to be walking a little awkwardly.
<<case 2>>
Talking with <<=setup.getNpcName('npc_nun_unity', 'formal')>>, her loyal canine companion sitting at her side, she gushes about how wonderful her ministry has been going lately and how she is planning an excursion to a small farm/monastery owned by the church just outside the city where she hopes to further deepen her connection to the divine.<br>
<br>
The way her eyes light up at the word "deepen" you wonder what sort of creatures are raised at this monastery, but merely wish her luck before continuing on your way.
<<case 3>>
Talking with <<=setup.getNpcName('npc_nun_unity', 'formal')>> she gushes gleefully about returning from a farm/monastery just outside of town. "@@.npc_nun_unity;Oh, it was so wonderful to connect with nature, my holes have never felt so thoroughly stretched!@@" She gushes, idly reaching down to scratch the ears of the large dog sitting next to you. "@@.npc_nun_unity;Oh, don't worry, boy, I still love you just as much.@@"<br>
<br>
Looking back at you with a smile she notes how wonderful "@@.npc_nun_unity;Are all the creatures of creation.@@" Suddenly distracted she is making lusty eyes at her pet as you quietly excuse yourself.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "sm">>
<<switch $player.flags.church.level>>
<<case 0>>
You approach a sweet, nervous looking nun who introduces herself as <<=setup.getNpcName('npc_nun_patience', 'formal')>>. Her voice soft she explains that she has devoted herself to penitence, giving of her own body and soul in payment for the sins of others. In awe of such a selfless act you thank her for her offering before moving on.
<<case 1>>
You approach the sweet nun named <<=setup.getNpcName('npc_nun_patience', 'formal')>> just as she takes a seat. Wincing slightly as if in pain she waves off your concern, merely noting that her recent devotions have been somewhat... strenuous. She hesitates for a moment before declining to expand further, merely stating that "@@.npc_nun_patience;We all make sacrifices for our faith, someday you will understand.@@" With nothing but that cryptic message you continue on your way.
<<case 2>>
You find <<=setup.getNpcName('npc_nun_patience', 'formal')>> leaning against a pillar seemingly lost in thought. Finally noticing you she jumps slightly before wincing. "@@.npc_nun_patience;Sorry, just a bit sore from last night, I was up late for a penance ceremony, it was glorious, but I didn't exactly get enough sleep!@@"<br>
<br>
Nodding in, at best, partial understanding you thank her for her sacrifice, but she just smiles. "@@.npc_nun_patience;Oh, I would gladly suffer a thousand strokes of the whip for the sake of my sisters<<if !$npc_priest.fem>>, and brothers<</if>>.@@" She adds, nodding across the room to <<=setup.getNpcName('npc_priest', 'formal')>>.
<<case 3>>
Greeting the sweet <<=setup.getNpcName('npc_nun_patience', 'formal')>> she greets you with a gentle embrace then wincing slightly at your touch. You hurriedly apologise for causing her pain, but she merely smiles. "@@.npc_nun_patience;Oh, it is quite alright, a pleasant reminder of last night. It was glorious, <<=setup.getNpcName('npc_priest', 'formal')>> spent a full three hours flogging me before tucking me into bed last night. I am still sore, of course, but it is a good sore, you know?@@"<br>
<br>
You nod, thanking her for such a selfless act and she smiles. "@@.npc_nun_patience;Anything to bring further blessings upon us all.@@" She states serenely before you move on.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "feet">>
<<switch $player.flags.church.level>>
<<case 0>>
You talk to a nun by the name of <<=setup.getNpcName('npc_nun_harmony', 'formal')>>. Other than the fact she seems to be constantly staring at the floor without even looking up at you she is quiet and almost meek, though friendly. She explains that she has devoted herself to embracing the most humble of service to the Goddess.
<<case 1>>
You find <<=setup.getNpcName('npc_nun_harmony', 'formal')>>, the humble nun kneeling in front of another church patron, gently washing their feet in a bowl of water.<br>
<br>
From the solemn looks on both of their faces this seems to be some sort of ritual act and you continue on your way so as not to disturb them.
<<case 2>>
Briefly looking up from her position dutifully kneeling and washing the feet of another church member <<=setup.getNpcName('npc_nun_harmony', 'formal')>> smiles at you.<br>
<br>
"@@.npc_nun_patience;A glorious day to you, Sister, may your heels be steep and you stride graceful and may you feel the wonderful boot of the Goddess pressing against your face.@@"<br>
<br>
"@@.generic_female1;What a lovely greeting.@@" The subject of <<=setup.getNpcName('npc_nun_harmony', 'formal')>>'s current ministrations notes and you agree before leaving the two of them to continue their "ritual."
<<case 3>>
Looking taller than when you first saw her <<=setup.getNpcName('npc_nun_harmony', 'formal')>> beams with pride, even briefly looking up from her normal feet-fixated view to smile at you as she parts her robes to reveal sky-high ballet boots laced up her legs.<br>
<br>
"@@.npc_nun_patience;I have finally ascended to the most glorious of footwear.@@" She states with pride.
<<if setup.checkItemTypeTag('shoes', ['ballet'])>>
Eying your own boots she smiles conspiratorially. "@@.npc_nun_patience;Of course, you know all about such blessed attire.@@"
<<else>>
You softly clap in awe as she gives a little twirl, walking back and forth, light as a feather and perfectly balanced on the steep heels.
<</if>>
<br><br>
Leaving her to enjoy her accomplishment you continue on your way.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "chastity">>
<<switch $player.flags.church.level>>
<<case 0>>
You introduce yourself to a nun by the name of <<=setup.getNpcName('npc_nun_joy', 'formal')>>. Seemingly brimming with pent-up energy she explains that she has devoted herself to the feminine ideals of purity and virtue.<br>
<br>
You nod, impressed at her obvious strength of will and ability to find her namesake joy despite whatever restrictions she has imposed upon herself.
<<case 1>>
You come across <<=setup.getNpcName('npc_nun_joy', 'formal')>>, shifting seemingly uncomfortably she explains it away by noting that today has merely been a trying one as she has been testing herself against temptation in her quest to bring herself to new heights of feminine virtue and purity.
<<case 2>>
Smiling in greeting <<=setup.getNpcName('npc_nun_joy', 'formal')>> praises you for your growing devotion to the church, adding that she hopes some day you might aid in one of the "cleansing" rituals she goes through each month where she offers herself up to the Goddess as a symbolic Vestal offering.
<<case 3>>
Greeting you with a hug you can feel the hard steel of the chastity devices encasing <<=setup.getNpcName('npc_nun_joy', 'formal')>>'s breast and sex, feeling the gentle buzzing beneath that vibrates out through the rigid steel.<br>
<br>
You ask how things are doing and she notes with pride that she is entering her third week without sexual release, having stepped up to nigh constant stimulation beneath her belt. With stars in her eyes she adds that she will be enjoying another night of bound torment and ruin at the hands of her fellow nuns — giddy with anticipation of the "ritual of climax" where her pent up energy will be offered up to the Goddess, an event she both covets, yet also dreads as she will afterwards need to spend several more weeks denying and building herself back up to make another offering.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "sissy">>
<<switch $player.flags.church.level>>
<<case 0>>
You approach a tall, but very cute nun who introduces herself as <<=setup.getNpcName('npc_nun_grace', 'formal')>>. Her voice is breathless and light, her smile all sweetness as she explains that she has devoted herself to the "sweet femininity" of the Goddess. Looking up at her beautiful eyes and perfect doll-like makeup you agree that she is a truly lovely vision of femininity. She blushes and giggles, bashfully turning away at your compliment.
<<case 1>>
You approach the tall, cute <<=setup.getNpcName('npc_nun_grace', 'formal')>>. With a gleeful smile she gives you a hug, welcoming you as a "fellow sister" with the slightest of winks. You explain that you have not yet fully joined the church, but she merely smiles enigmatically, changing the discussion to talk about how she has been studying the "sweetness" of the Goddess's femininity and wishing you luck in your own journey.
<<case 2>>
You approach the tall, cute <<=setup.getNpcName('npc_nun_grace', 'formal')>>. She hugs you so close you can feel the rigid corset and the hard chastity cage lurking beneath her robe as she congratulates you on your own journey into femininity. Looking up at her big, beautiful eyes and her perfectly made-up lips you almost swoon; truly she is a divine vision of sweet <<if $fetish.sissy>>sissy <</if>>femininity to be admired by all.
<<case 3>>
Seeing you the tall, cute <<if $fetish.sissy>>sissy<<else>>girl<</if>> known as <<=setup.getNpcName('npc_nun_grace', 'formal')>> almost skips over to you, scooping you up in a hug, your arms wrapped tight around her corset-narrowed waist as her caged <<if $fetish.sissy>>sissy <</if>>clitty grinds against you through her robe.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
Reaching down to
<<if setup.isCage()>>
grasp your own cage
<<else>>
press her palm against the crotch panel of your chastity belt
<</if>>
through your clothes she smiles in approval. "@@.npc_nun_grace;Nice and locked up! Oh, you are such a wonderful <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"
<<else>>
Reaching down her hand grabs your <<getWordMyPenis>> through your clothes as her mouth opens in shock. "@@.npc_nun_grace;Unchaste? What a naughty girl!@@"
<</if>>
<br><br>
You blush as she gives you a kiss, wishing you luck in your own journey of femininity.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "dominatrix">>
<<switch $player.flags.church.level>>
<<case 0>>
You approach a stern-looking nun who introduces herself as <<=setup.getNpcName('npc_nun_constance', 'formal')>>. She looks at you with the same piercing gaze as your <<=setup.getNpcName('npc_manager', 'title')>>, explaining that she has devoted herself to exhibiting the implacable strength and command of the Goddess. You thank her for her time and quietly continue on, your heart pounding in your chest.
<<case 1>>
You approach the stern <<=setup.getNpcName('npc_nun_constance', 'formal')>> who greets you merely with a nod, her mere gaze making you feel like you ought to drop to your knee or something.<br>
<br>
She takes charge of the conversation, as you imagine she takes charge of most things, talking about how she has been working to bring better "discipline" to her fellow nuns so that the church as a whole may grow stronger in its devotion to the Goddess.
<<case 2>>
The authoritative <<=setup.getNpcName('npc_nun_constance', 'formal')>> greets you with a nod as you barely resist the urge to drop to your knees. Heart pounding in your chest in the presence of yet another dominant woman you only half hear her brief speech about the virtues of strength in service to the Goddess. Scared of what might happen if you stick around her much longer you thank her for her time and continue on your way.
<<case 3>>
<<=setup.getNpcName('npc_nun_constance', 'formal')>> greets you with a smile before motioning for you to kneel down and kiss her feet. Doing anything but obeying her stern command would be all but unthinkable and you drop to your knees as her patent leather boot peeks out from under her robe, the tails of the long flogger she carries underneath the robe at her hip just barely visible as your lips gently brush her polished toes.<br>
<br>
You rise to your feet and she congratulates you on how far you have come in your devotion to the Goddess, wishing you continued strength in any future trials that lay before you.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "bondage">>
<<switch $player.flags.church.level>>
<<case 0>>
You approach <<=setup.getNpcName('npc_nun_gloria', 'formal')>>, her mouth covered by her wimple as you realise that communication isn't really in the cards.<br>
<br>
Despite her vow of silence she smiles at you with her eyes, giving a partial bow while still keeping her arms concealed inside her robe. Feeling a bit awkward you tell her how much you respect her devotion to the Goddess and her eyes light up even more. You dip into a bow of your own before you continue on your way.
<<case 1>>
You approach <<=setup.getNpcName('npc_nun_gloria', 'formal')>> to notice that her mouth is still covered, and thus her vow of silence remains in place. Despite her inability to speak her eyes seem to offer you encouragement and you thank her for her time before moving along.
<<case 2>>
You approach <<=setup.getNpcName('npc_nun_gloria', 'formal')>>. Knowing what to look for you think you can see the slightest outline of the gag that is occupying her mouth behind the thin fabric of her face-obscuring wimple. Knowing also that her arms and legs are bound and hobbled beneath her long robe you ask her how long it has been since she was unrestrained. She squints in thought for quite some time before finally shrugging, the expression on her face one of pure delight at the realisation that she has been exercising her devotion to restraint for so long as to struggle to recall.
<<case 3>>
You approach <<=setup.getNpcName('npc_nun_gloria', 'formal')>> who smiles at you from above her hidden gag. You give her a hug that she cannot reciprocate due to the armbinder tightly constraining her limbs. Rubbing up against you she obviously appreciates the contact leaning in for a sweet gag-kiss.<br>
<br>
Feeling the firm, and large, panel gag through her wimple you know immediately that the other side has a nice large phallus filling her mouth. Congratulating her on her restricted devotion you leave her to her meditations and continue on.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<<case "acolyte">>
You approach your old friend <<=setup.getNpcName('npc_acolyte', 'formal')>>, now a full-fledged nun.<br>
<br>
<<if $npc_acolyte.stage > 7>>
"@@.npc_acolyte;<<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>!@@" She greets with a smile. "@@.npc_acolyte;Oh, it is certainly a blessing to see you again. My training is finally complete but being a full-fledged nun... well, it is both even more delightful, and even more work!@@"<br>
<br>
You congratulate her again and she gently curtsies. "@@.npc_acolyte;It is thanks to my fellow Sister's, and you, that I made it this far now... well, I just have to keep showing all of you, and the Goddess, how much I enjoy this new life of service. Speaking of, well... I'm on the cock, er, clock, though I'm sure I'll be on a cock soon too... probably more than one...@@"<br>
<br>
She winks in parting before mincing away across the cathedral as fast as her hidden heels and hobbles allow.
<<else>>
[<<moveTo "event_church_acolyte_promotion_1" "Ask how she's doing." 180>>]
<</if>>
<<default>>
ERROR: unknown nun id: <<=$scene.nun_id>>
<</switch>>
<</if>>
<br><br>
[<<moveTo "event_church_root" "Move on." 300>>]
</div>/*#
#desc: chat with priest at church
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.church_count += 1>>
<<set $daily.church_priest = true>>
<<set $npc_priest.flags.talk.priest = $player.flags.church.level+1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
You talk to the <<priest npc_priest>>, <<=setup.getNpcName('npc_priest', 'formal')>>.<br>
<br>
<<switch $player.flags.church.level>>
<<case 0>>
Asking <<him npc_priest>> about the fact that you <<if $npc_priest.fem>>only see a small number of fully fledged priestesses<<else>>have yet to see another priest<</if>>, just a nigh endless stream of nuns <<he npc_priest>> explains that. "@@.npc_priest;I admit, few <<if $npc_priest.fem>>wish to become a clergywoman of the Goddess. Most Sisters want to focus on devoting their lives to the Goddess without needing to learn intricate rites. You only need one Priestess to perform a service after all<<else>>men heed the call of the Goddess. Still, despite that disparity she welcomes all who would join in her congregation<</if>>.@@"
<<case 1>>
You ask <<him npc_priest>> how it was that <<he npc_priest>> came to come into service of the Goddess.<br>
<br>
"@@.npc_priest;It was a long, difficult journey. My upbringing was... shall we say, difficult, and far separated from the Goddess's embrace.@@"<br>
<br>
You can feel the pain of memory in <<his npc_priest>> words, but <<he npc_priest>> moves on without going into further detail.<br>
<br>
"@@.npc_priest;I struggled with many warring feelings but, when I finally listened to the Goddess I suddenly understood that this was a place where I could be welcomed as my true self. Since that revelation I have devoted my life to her, and I hope only that my service may give back a small portion of what her blessing has granted me.@@"
<<case 2>>
You becoming a full member of the church, and being aware of at least some of its kinky secrets, appears to have earned more of <<=ps(setup.getNpcName('npc_priest', 'formal'))>> trust as <<he npc_priest>> seems to open up to you.<br>
<br>
"@@.npc_priest;How are you doing this fine day, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>?@@" Nodding at your response <<he npc_priest>> gives you some words of comfort. "@@.npc_priest;<<if $npc_priest.fem>>Our paths are quite similar, and<<else>>While my path may have sought a different destination,<</if>> I think I understand some of what you are going through, know that you have the support of your friends and the church. Stay strong, Sister, and you will find a glorious life awaiting you at the end of your trials.@@"<br>
<br>
You thank <<him npc_priest>> for the support. As <<he npc_priest>> walks away you suddenly put two and two together.<br>
<br>
<<printThought "Did <<he npc_priest>> just say <<hes npc_priest>> <<if $npc_priest.fem>>MtF<<else>>FtM<</if>>? Huh.">>
<<case 3>>
<<=setup.getNpcName('npc_priest', 'formal')>>
<<if setup.checkVisibleClothingTag('nun') > 70>>
smiles at your nun's attire... though you feel a bit of imposter syndrome given that you have not actually taken vows.
<<else>>
greets you with a warm embrace.
<</if>>
<br><br>
"@@.npc_priest;Greetings, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>. I have watched you grow, both personally and in your stature within the church and I would like to tell you a bit more of my own story for whatever comfort it may provide you in your own trials. <<if $npc_priest.fem>>As you can guess physically<<else>>Physically<</if>> I have not always been as I am now<<if $npc_priest.fem>>.<<else>>, perhaps surprising given my current form and position with the church<</if>> I was actually born a <<if $npc_priest.fem>>man<<else>>woman<</if>>, well, according to my parents and doctors. It took many years to escape the pull of their hurtful religion, first finding my true self as a <<if $npc_priest.fem>>woman<<else>>man<</if>> and only then learning of the Goddess.@@"<br>
<br>
"@@.npc_priest;Despite her acceptance of who I was I still struggled —
<<if $npc_priest.fem>>
I had thoughts in the back of my head of not being accepted by everyone. Thankfully my new family which includes all of my Sisters and the members of the church have been very supportive. I eventually came to understand that, because I used to live
<<else>>
how could I be devoted to a Goddess of femininity when I had abandoned my own womanhood in favour of a life as a man? These warring truths, my belief in the Goddess and my knowledge of my manhood... I struggled with them mightily before coming to understand that,
<</if>>
as a man I provided a unique appreciation of the feminine, and through that insight I could better aid my flock, just as the two Sisters Superior speak to different aspects of womanhood, so too do I offer my own unique view to our congregation.@@"<br>
<br>
Thanking <<=setup.getNpcName('npc_priest', 'formal')>> for sharing <<his npc_priest>> life story <<he npc_priest>> smiles and you continue on your way.
<<default>>
ERROR, unknown player.church.level <<=$player.flags.church.level>>
<</switch>>
<br><br>
<<if $player.flags.church.level == 1>>
[<<moveTo "event_church_priest_lvl2promotion_1" "Ask about becoming a full member of the church." 300>>]<br>
<<elseif $player.flags.church.level == 3>>
[<<moveTo "event_church_nun_ending_0_0_alt" "Ask about becoming a nun." 300>>]<br>
<</if>>
<<if State.hasPlayed("event_church_baptism_1_intro_1") && !State.hasPlayed("event_church_baptism_9")>>
[<<moveTo "event_church_baptism_1" "Ask about a baptism." 300>>]<br>
<</if>>
<br>
[<<moveTo "event_church_root" "Move on." 300>>]
</div>/*#
#desc: attend group prayer at church
#status: RELEASED 0.8.2.0
#ignore_spell: t
#*/
<<set $player.location to "Communal Prayer Room in the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.acolyte=false>>
<<set $scene.level = setup.getChurchActivityLevel($player.flags.church.level, $player.flags.church.activities["group_prayer"])>>
<<if $npc_acolyte.stage < 1>>
<<set $scene.level = 0>>
<<set $npc_acolyte.stage = 1>>
<<set $scene.acolyte=true>>
<<set $scene.first_meet=true>>
<<elseif $npc_acolyte.stage < 2 && $scene.level >= 1>>
<<set $scene.level = 1>>
<<set $npc_acolyte.stage = 2>>
<<set $scene.acolyte=true>>
<<elseif $npc_acolyte.stage < 3 && $scene.level >= 2>>
<<set $scene.acolyte=true>>
<<set $scene.level = 2>>
<<elseif $npc_acolyte.stage < 4 && $scene.level >= 3>>
<<set $scene.acolyte=true>>
<<set $scene.level = 3>>
<<set $npc_acolyte.stage = 4>>
<</if>>
<<set $player.flags.church.activities.group_prayer[$scene.level]++>>
<<set _stress = -5-$scene.level*10>>
<<applyStress _stress>>
<<set $daily.church_count += 1>>
<<set $daily.church_group_pray = true>>
<<if $scene.level > 2 && !setup.checkItemTypeWorn("cage")>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 0>>
<<set $player.timebased.without_orgasm = 0>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.level>>
<<case 0>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance","npc_nun_constance_modest")>>
<<case 1>>
<<if $scene.acolyte>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance","npc_nun_constance_modest") setup.charImage("npc_acolyte","npc_acolyte_1")>>
<<else>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance","npc_nun_constance_modest")>>
<</if>>
<<case 2>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance") setup.charImage("npc_acolyte","npc_acolyte_2")>>
<<case 3>>
<<if $scene.acolyte>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance") setup.charImage("npc_acolyte","npc_acolyte_3")>>
<<else>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance")>>
<</if>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.level>>
<<case 0>>
Entering the side room you find a mix of nuns and congregants kneeling in front of <<=setup.getNpcName('npc_nun_constance', 'formal')>> who is leading them in prayer.<br>
<br>
Taking a position kneeling with the rest you join in on the call and response prayers, alternating between praising the Goddess for her blessings of various aspects of divine femininity along with asking her to pass along more of the same, to grant each of you her blessings of strength, compassion, restraint, pleasure and, most of all, femininity.<br>
<br>
As a concluding exercise you are instructed to turn and face <<if $scene.first_meet>>the woman next to you who introduces herself as <<=setup.getNpcName('npc_acolyte', 'first')>><<else>><<=setup.getNpcName('npc_acolyte', 'first')>>, who happens to be sitting next to you<</if>>. The two of you spend a minute greeting and sharing personal compliments.<br>
<br>
By the time the prayers are over you find yourself feeling rather calm, more content with yourself and optimistic about the future.
<<case 1>>
You enter the side room to find a group of congregants and nuns kneeling in prayer with <<=setup.getNpcName('npc_nun_constance', 'formal')>> leading from the front of the room.<br>
<br>
Noticing you she waves you in and motions for you to kneel with the others before continuing with the prayers in call and response style.<br>
<br>
"@@.npc_nun_constance;Glorious Goddess, we ask that you turn your divine face upon us and bless us with the joy and pleasure that lifts the world, and is our right as women.@@"<br>
<br>
Repeating the words has you suddenly feeling calm, as well as optimistic about your future.<br>
<br>
"@@.npc_nun_constance;Please, are there any who would wish to offer a personal prayer of thanks to the Goddess? Speak now.@@" <<=setup.getNpcName('npc_nun_constance', 'formal')>> softly announces, looking around the room of raised hands before nodding to one of them. "@@.npc_nun_constance;Speak sister, and be heard.@@"<br>
<br>
<<if $scene.acolyte>>
<<=setup.getNpcName('npc_acolyte', 'first')>> is the first chosen, standing up looking quite cute and attractive in a casual pairing of a white t-shirt with about the tightest pair of jeans you've ever seen.<br>
<br>
"@@.npc_acolyte;Hi, so I'd just like to offer up my thanks for the church itself. I haven't been coming for long, but learning about the Goddess, praying with you all and the rest... well it's just one of the best things that's ever happened to me and I'm considering working towards becoming a nun myself.@@"<br>
<br>
<<=setup.getNpcName('npc_nun_constance', 'formal')>> smiles. "@@.npc_nun_constance;Becoming a nun is no simple matter but, if you dedicate yourself, I am sure you can make it and my sisters would be joyous to welcome you to our order.@@"<br>
<br>
Blushing <<=setup.getNpcName('npc_acolyte', 'first')>> gives a slight bow before repeating her thanks for being led to the church.
<<else>>
<<switch random(0, 1)>>
<<case 0>>
The first person to stand is dressed in an attractive outfit that would fit in in any office environment.
<<if $npc_manager.stage > 2>>
<<printThought "Well... maybe not MY office.">>
<</if>>
The woman is quite beautiful and she offers up a prayer thanking "The Goddess" for blessing her to close a recent business deal.<br>
<br>
"@@.generic_female1;The client was quite demanding but, with the Goddess's help, I was able to go the extra mile and come to an agreement that was not just mutually beneficial, but which brought us both great joy.@@"
<<case 1>>
The woman seems a bit nervous, but thanks the Goddess for guiding her through what sounds like a difficult breakup. "@@.generic_female2;I had done all that I could to strengthen the bond with my ex but... in the end we were different people, and the Goddess granted me the wisdom to understand that. I am single now, but more open than ever for my next relationship, the Goddess having put so many opportunities before me.@@"
<<default>>
ERROR: random value out of range
<</switch>>
<</if>>
<br><br>
"@@.npc_nun_constance;Goddess be praised,@@" <<=setup.getNpcName('npc_nun_constance', 'formal')>> notes and you and the rest of the worshipers repeat the words back.<br>
<br>
More congregants step up to tell their stories as you join the audience in calling out "Goddess be praised" after each one. The room seems to almost warm in the mutual appreciation of the Goddess by the time the prayer session comes to an end and, your spirits buoyed, you continue on your way.
<<case 2>>
Standing at the front of the room before a half dozen worshipers <<=setup.getNpcName('npc_nun_constance', 'formal')>> opens with a prayer, asking for the Goddess's blessing to be upon her followers before gracing the room with a smile and commanding you all to "@@.npc_nun_constance;Embrace your fellow acolytes and join with one another in praise.@@"<br>
<br>
You turn to face <<=setup.getNpcName('npc_acolyte', 'first')>> sitting next to you. Greeting you with an enticing smile she reaches out to embrace and soon your lips are pressed together in a passionate kiss.<br>
<br>
Hands roam over one another's bodies as clothing falls to the floor.
<<if $scene.acolyte>>
<<set $scene.acolyte_choice = true>>
Her incredibly tight jeans take a bit of work to peel off to reveal her panties...<br>
<br>
[<<moveTo "event_church_group_pray_2_acolyte" "Bulging slightly around her girlcock." 300 "<<set $npc_acolyte.flags.mtf=true>>">>]<br>
[<<moveTo "event_church_group_pray_2_acolyte" "Part soaked through, clinging close to display a prominent camel toe." 300 "<<set $npc_acolyte.flags.mtf=false>>">>],
<<else>>
Her incredibly tight jeans take a bit of work to peel off, but soon your lips are free to explore her entire body; whispers of praise passing between you to fade into the background hum of the rest of the worshipers doing the same.<br>
<br>
Sliding to the floor you find yourself between the legs of your partner, imagining that you are licking the Goddess herself as you run your lips over <<=ps(setup.getNpcName('npc_acolyte', 'first'))>>
<<if $npc_acolyte.flags.mtf>>
stiff <<getWordPenis false>>.
<<else>>
wet snatch.
<</if>>
She tilts her head back with a moan, she seems on a similar page, calling out "@@.npc_acolyte;Yes, Goddess, yes!@@" as you bring her to joyful orgasm.<br>
<br>
Catching your breath, you look up and find yourself switching partners, the other woman cuddling with another recently-orgasmed worshiper as you find yourself with a nun, her cloth robe shed to reveal the rigid corset and tight latex beneath.<br>
<br>
Running your hands over the nun's slick exterior you once again find yourself between divine-blessed legs, laying on your back as she straddles your face. Latex pressed against your cheeks as your tongue extends into her you hear her whisper "@@.npc_acolyte;Thank you, sister@@" as you lick and suck. In your own heaven as you lie beneath her you offer up silent prayers of your own, thanking the Goddess for this opportunity while asking to be blessed as to give the nun atop you an orgasm.<br>
<br>
Your prayers are answered, thighs squeezing tight around your head as she cums, hard, delicious juices bursting into your mouth and running down your cheeks as she calls out the Goddess's praise.<br>
<br>
The nun rising off just before you pass out you are granted a final glimpse of her divine, THICC latex-encased rear before she staggers away. Sitting up and looking for your next partner you find most of the room has thinned out or passed out in ecstasy, your gaze finally meeting another nun, <<if $fetish.sissy>>though this one a fellow sissy,<</if>> her cute, caged clitty peeking out from between her latex panties as she skips across the room towards you.<br>
<br>
"@@.npc_acolyte;<<=setup.getNpcName('npc_acolyte', 'first')>>, pleased to meet you this day.@@" She states in greeting before crawling on top of you and
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
commencing to
<<if setup.isCage()>>
<<if $player.body_ref.balls>>
sucking on your balls and
<</if>>
licking your prison
<<else>>
polishing the front of your prison with her tongue
<</if>>
<<else>>
wrapping her lips around your hard, sensitive <<getWordMyPenis>> <<if $player.body_ref.vagina>> and finger your slit behind<</if>>
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
polish the front shield of your chastity belt with her tongue
<<else>>
run her tongue between your folds
<</if>>
<</if>>
as you return the favour by licking between the bars of her cage.
<br><br>
"@@.npc_acolyte;Please, Goddess, let me taste her cum...@@" The nun moans in prayer, her wish soon granted as her
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
nimble tongue manages to tease a burst of <<if $fetish.sissy>>sissy<<else>>girlish<</if>> glee to spray out of your cage.
<<else>>
teasing tongue manages to cause you to leak <<if $fetish.sissy>>sissy<<else>>girlish<</if>> glee down your leg.
<</if>>
<<else>>
vacuum-like lips practically rip the orgasm out of you, draining <<if $player.body_ref.balls>>your balls<<else>>you<</if>>of every last drop as her tongue roams your head and she bobs up and down your shaft.
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
polish the front shield of your chastity belt with her tongue.
<<else>>
lick between your folds until you gasp in orgasm.
<</if>>
<</if>>
<br><br>
"@@.npc_acolyte;Thank you Goddess@@" she moans around your <<getWordMyPenis>> as she returns the favour, leaking thin, salty-sweet joy between your lips.<br>
<br>
The nun rolls off of you, sharing a final cummy kiss as she whispers how "wonderful" you taste.<br>
<br>
<<=setup.getNpcName('npc_acolyte', 'first')>> helps you to your feet, gracing you with a smile and thanking you for your part in the "@@.npc_acolyte;Joyous celebration@@" of the Goddess's love.<br>
<br>
Bowing in thanks, you collect your clothes and leave the room, feeling surprisingly refreshed after the erotic ordeal.
<</if>>
<<case 3>>
You find the prayer room setup with a series of two-person benches. Most are occupied with a pair of women facing each other, their arms bound behind their backs, short chains linking either piercings or nipple clamps as they kiss and tease, complimenting one another in between words of praise directed towards the Goddess.<br>
<br>
<<if $scene.acolyte>>
There is one bench only half occupied, <<=setup.getNpcName('npc_acolyte', 'first')>> sitting looking a bit nervous, but as eager as always, her expression lighting up immediately when she sees you walk into the room.<br>
<br>
<<if $npc_acolyte.flags.mtf>>
Obviously turned on she is hard and dripping, the dual dildos on what will soon be "your" end of the seat indicating that her bum is the real focus of entertainment at the moment. Glancing around the room all of the women are rolling their hips in time to their Goddess-praising make-out session.
<<else>>
The pair of dildos sprouting from the seat in front of her gives you an idea of what else is going on with her and the other women, explaining why they are all rolling their hips in time to their Goddess-praising make-out session.
<</if>>
<br><br>
Motioning you forward <<=setup.getNpcName('npc_nun_constance', 'formal')>> <<if !$player.body_ref.vagina || setup.checkItemTypeWorn("cage")>>removes one of the attached phalli before helping<<else>>helps<</if>> you up onto the bench,
<<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
the dual dildos sliding up into you, a perfect fit.
<<else>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>the dildo temporarily replacing your plug which is stowed in a small pocket under the bench clearly designed for just such a purpose.<<else>>the dildo sliding easily into your hole, textured just enough to be exciting while feeling like it was purpose-fit just for you.<</if>>
<</if>>
<br><br>
Your nipples linked and arms bound you lean in for a kiss, your lips meeting passionately as <<=setup.getNpcName('npc_acolyte', 'first')>> talks about how beautiful you are and you return the favour, praising her for exhibiting the gifts of the Goddess as she softly moans.<br>
<br>
A buzzing starts between your legs, originating with the
<<if !$player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
dual dildos alternating in and out for a deep and delightful double penetration.
<<else>>
dildo pressing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> before moving outwards to <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>rumble through your cage<<else>>vibrate through your belt<</if>><<else>>throb through your perineum<</if>>.
<</if>>
<br><br>
You can sense the stimulation has increased for <<=setup.getNpcName('npc_acolyte', 'first')>> as well, both of your words becoming excited and breathless as you redouble your efforts, grinding and kissing and praising the Goddess until, your voices raised to a fever pitch, you cum, spurting over her exposed belly as your lips are locked together.<br>
<br>
Shuddering and kissing for the full duration of both of your orgasms you are momentarily pulled apart by <<=setup.getNpcName('npc_nun_constance', 'formal')>>, your nipples screaming in pained pleasure as the chain stretches. A double-sided gag is presented between the two of you and you both eagerly lean forward, sharing a delightfully sensual kiss around it as it is buckled in place.<br>
<br>
<<=setup.getNpcName('npc_nun_constance', 'formal')>> whispers for the two of you to enjoy a "moment of silent reflection" and the both of you reply with a gag-muffled assent.<br>
<br>
Meeting each other's gaze it is momentarily as if you were staring into the eyes of the Goddess herself and you quiver, almost shivering with excitement as you savour the wonderfully beautiful shared moment.<br>
<br>
Eventually you are released, <<=setup.getNpcName('npc_nun_constance', 'formal')>> helping you and the other woman both off the bench. Without need for words the two of you aid each other in dressing, you licking up your cum from where it had sprayed across her belly and sharing it with her with a gentle kiss.<br>
<br>
From under the bench she retrieves <<if !$npc_acolyte.flags.mtf>>a pair of ben-wa balls and <</if>>a medium-sized plug. You joyfully help slide <<if !$npc_acolyte.flags.mtf>>them<<else>>it<</if>> back into her <<if !setup.checkItemTypeTag('plug', ['hollow'])>>before turning and allowing her to return the favour<<else>>even as she frowns at being unable to return the favour.<</if>><br>
<br>
Sharing a final, almost chaste kiss the two of you curtsy in sync in thanks to <<=setup.getNpcName('npc_nun_constance', 'formal')>> before heading off on your way.
<<else>>
You mount one side of an empty bench and <<=setup.getNpcName('npc_nun_constance', 'formal')>> <<if !$player.body_ref.vagina || setup.checkItemTypeWorn("cage")>>removes one of the attached phalli and <</if>>helps you up onto the bench,
<<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
the dual dildos sliding up into you, a perfect fit.
<<else>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>the dildo temporarily replacing your plug which is stowed in a small pocket under the bench clearly designed for just such a purpose.<<else>>the dildo sliding easily into your hole, textured just enough to be exciting while feeling like it was purpose-fit just for you.<</if>>
<</if>>
<br><br>
Just after you are settled a second woman joins you opposite in a similar situation, your nipples links and arms bound as you are pulled together into a kiss as an ecstatic buzzing commences to flow up into you.<br>
<br>
<<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
Double-fucked,
<<else>>
Fucked from behind,
<</if>>
you moan your prayers, you and your partner following along as <<=setup.getNpcName('npc_nun_constance', 'formal')>> guides a truly ecstatic prayer that leaves you feeling refreshed and blessed.<br>
<br>
Only after your restraints have been removed and you rise off your bench do you realise that you never even learned your since-departed partner's name.
<</if>>
<<default>>
ERROR unknown church level: <<=$player.flags.church.level>>
<</switch>>
<br><br>
<<if !($scene.acolyte && $scene.acolyte_choice)>>
[<<moveTo "event_church_root" "Return to the church narthex." 120>>]
<</if>>
</div>/*#
#desc: flee into church to escape pursuers
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.church.intro = 'sanctuary'>>
<<set $player.locations.church = true>>
<</if>>
<<if $player.flags.church.visited>>
<<set $player.location to "Outside the Church of the Goddess">>
<<else>>
<<set $player.location to "Outside a large Gothic Church">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_exterior.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.karmic_harass>>
<<if $player.flags.church.level > 2>>
The door opens and a pair of what you can only call "battle nuns" sprint past. Clad in tight, skimpy latex they run directly towards your pursuers, kicking with their high-heel feet, subduing a pair of your would-be assailants before the rest scatter.<br>
<br>
You step forward into the safety of the church as a pair of Valkyries swoop down from the sky to take possession of the two captured criminals...
<<else>>
The door opens and you stumble inside. Glancing back you notice a pair of Valkyries swooping out of the sky. Most of your pursuers scatter in fear, but it looks like one of them has been captured by the cybernetic peacekeepers, the criminal's face twisted in fear as they are tightly restrained...
<</if>>
<<else>>
The door to the church opens and you are beckoned inside, narrowly escaping your pursuers whose shouts fade as the massive oaken door closes behind you.
<</if>>
<br><br>
<<if $player.flags.church.visited>>
[<<moveTo "event_church_root" "Church of the Goddess." 300>>]
<<else>>
[<<moveTo "event_church_intro_1" "Catch your breath and look around." 300>>]
<</if>>
</div>/*#
#desc: meet nun + priest, introduced to church, start tour
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.church.visited=true>>
<<removeRandomEvent 'transit' 'room_student_quarter' 'church_intro'>>
<<removeRandomEvent 'transit' 'room_student_quarter' 'church_intro_karm'>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_31'
0
'event_psychiatrist_session_church_1'
true
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest","npc_priest_modest") "npc_nun_prudence_modest">>
<div id="invframe" class="scrolltext">
Standing in the entrance area to the church you look up in awe at the massive high-ceiling gothic cathedral rising around you.<br>
<br>
Rows of pews occupy most of the room, with an altar and three separate pulpits looming at the front of the chamber. Doors to other rooms line one wall, with stained glass windows shining down with filtered light. You shiver slightly, the large chamber strangely chilly.<br>
<br>
As you're looking around a <<priest npc_priest>> and a nun approach you in greeting.<br>
<br>
The nun looks quite cute in a black and white cotton robe and wimple covering all save her face. On closer glance she looks to be wearing makeup to turn her substantial natural beauty up to eleven. Her chin raised high and proud she is <<if !$npc_priest.fem>>actually <</if>>a hair taller than the <<priest npc_priest>> who <<himself npc_priest>> is covered from the neck down in a long, loose robe.<br>
<br>
First to greet you, the <<priest npc_priest>> smiles gently, short hair and a youthful complexion combining with a friendly expression to make <<him npc_priest>> appear warm and welcoming.<br>
<br>
"@@.npc_priest;Welcome, <<if $player.identify_as == "male">>Sir<<else>>Sister<</if>>. What brings you to church on this Goddess-blessed day?@@"<br>
<br>
<<switch $player.flags.church.intro>>
<<case 'sanctuary'>>
You gesture outside, noting that you ducked in to escape being chased by a gang.<br>
<br>
"@@.npc_priest;Ah, yes, terrible about that, but our church is always open to those in need, perhaps it was the hand of fate that brought you to us.@@"<br>
<br>
"@@.npc_nun_prudence;Mmm, I love it when fate brings us such beautiful things.@@" The nun adds with a smile that seems somewhat un-chaste for a woman of the cloth.
<<case 'psychiatrist'>>
You explain that <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, your therapist, recommended you come in.<br>
<br>
"@@.npc_priest;Ah, Lady <<=setup.getNpcName('npc_psychiatrist', 'first')>>, what a wonderful woman. And so wise in her willingness to acknowledge the limitations of her profession. Of course we would be glad to provide you with whatever counseling you need. Science and spiritualism, reason and faith, pairings far stronger than one or the other alone.@@"<br>
<br>
"@@.npc_nun_prudence;Or anything else.@@" The nun states with a friendly grin. "@@.npc_nun_prudence;We have all sorts of activities going on that you might find helpful.@@"
<<case 'preacher'>>
You tell them you ran into a group of their fellow nuns on the street that encouraged you to visit the church.<br>
<br>
"@@.npc_priest;Wonderful! It is so good to know that our outreach efforts are making inroads with the community! Again, welcome, and I hope you decide to stick around. Our church has so many things to offer.@@"<br>
<br>
"@@.npc_nun_prudence;Yes!@@" The nun states with a friendly grin. "@@.npc_nun_prudence;We so adore new congregants. All our lives can only be improved by the blessings of the Goddess.@@"<br>
<br>
"@@.npc_priest;Quite well put.@@" The <<priest npc_priest>> adds before moving on.
<<default>>
ERROR unknown intro reason: <<=$player.flags.church.intro>>
<</switch>>
<br><br>
"@@.npc_priest;How about you take a tour of the church?@@" <<He npc_priest>> turns to the nun, "@@.npc_priest;If you would be so kind, <<=setup.getNpcName("npc_nun_prudence","formal")>>, to give our guest a tour?@@" <<He npc_priest>> states, nodding to the nun who gives a dainty curtsy before smiling towards you and taking you by the hand.<br>
<br>
"@@.npc_nun_prudence;Come on!@@" She says with a grin, gesturing for you to follow her further into the church.<br>
<br>
[<<moveTo "event_church_intro_2" "Follow the cute nun." 180>>]<br>
[<<moveTo "event_church_intro_abort" "Say you'll come back later." 60>>]
</div>/*#
#desc: meet nun + priest, introduced to church, start tour
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest","npc_priest_modest") "npc_nun_serenity_modest">>
<div id="invframe" class="scrolltext">
You thank the <<priest npc_priest>> for <<his npc_priest>> greeting but reply that you do not have time for a tour at present.<br>
<br>
"@@.npc_priest;Of course, <<if $player.identify_as == "male">>Sir<<else>>Sister<</if>>. We will be here whenever you are ready to return.@@"<br>
<br>
[<<moveTo "location_church_exterior" "Leave the church." 300>>]
</div>/*#
#desc: meet nun + priest, introduced to church, start tour
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.church.visited=true>>
<<removeRandomEvent 'transit' 'room_student_quarter' 'church_intro'>>
<<removeRandomEvent 'transit' 'room_student_quarter' 'church_intro_karm'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest","npc_priest_modest") "npc_nun_serenity_modest">>
<div id="invframe" class="scrolltext">
You enter the church to once again be greeted by <<=setup.getNpcName("npc_priest","formal")>> and <<=setup.getNpcName("npc_nun_prudence","formal")>>.<br>
<br>
"@@.npc_priest;Welcome, <<if $player.identify_as == "male">>Sir<<else>>Sister<</if>>. I am joyous that the spirit of the Goddess has moved you to return. If you have time <<=setup.getNpcName("npc_nun_prudence","formal")>> would be delighted to give you a tour.@@"<br>
<br>
The nun smiles and gestures for you to accompany her.<br>
<br>
[<<moveTo "event_church_intro_2" "Follow the cute nun." 180>>]<br>
[<<moveTo "event_church_intro_abort" "Say you'll come back later." 60>>]
</div>/*#
#desc: church tour - pews and windows
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess pews">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_serenity_modest">>
<div id="invframe" class="scrolltext">
The nun starts your tour with a walk through the main sanctuary of the church. Most of the room is taken up by row after row of pews, each with built-in kneeling rests and wrought iron looping accents along the tops of the back-rests and the edges of the kneeling pads.<br>
<br>
You hear a familiar "click, click" echoing off the marble floor of the church with each of the nun's short, measured steps. The familiar sound is momentarily confusing in this context, but you soon conclude that the only explanation is that your nun escort is wearing high heels! While it explains how the otherwise petite girl could be taller than the <<priest npc_priest>>. Combined with her previously noticed makeup, and the fact that your view from behind shows her robe to be quite... fitted has you reeling as you wonder what sort of church this is...<br>
<br>
Pointing up to the sides of the building, she talks about how each of the large stained-glass windows depicts an important scene from the life of the Goddess or her faithful. You marvel at the artistic beauty of each colourful image even if you find yourself a bit puzzled and slightly... aroused at the scenes depicted.<br>
<br>
You can't quite muster the courage to ask questions as the enthusiastic nun gives a brief description of each panel, but, well... a window described as "petitioners before the Goddess" definitely shows the petitioners... and the glowing, beautiful Goddess to be nude. Another image, whose name you miss shows what definitely looks like a magical transformation of what looks like a male figure into a gloriously feminine one.. and that is to say nothing about the image "trial of faith" that, were it not for the artistic stained glass style, could have easily been taken from a bondage magazine...<br>
<br>
As you walk along you cannot help but notice that <<=setup.getNpcName("npc_nun_prudence","formal")>> seems more than enthusiastic, almost... aroused. If you didn't know any better you would swear she had a small orgasm while you were distracted examining one of the windows.<br>
<br>
Arriving at the front of the church the nun points you towards a row of small booths.<br>
<br>
[<<moveTo "event_church_intro_3" "Look at the booths." 300>>]
</div>/*#
#desc: church tour - confession booth
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess Confessionals">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_confession_external.png" "npc_nun_serenity_modest" "npc_nun_gloria_modest">>
<div id="invframe" class="scrolltext">
There is a row of paired booths near the front of the church that you recognise as confession booths. Your nun escort gestures and one of her sisters steps out from one of the booths. The two nuns exchange bows and then turn to you.<br>
<br>
This second nun appears to have just as stunning a figure as the one escorting you, though significantly taller, her fitted robe even more concealing as her wimple goes all the way up over her mouth to cover the lower half of her face, leaving little save her bright, beautiful eyes exposed. Not speaking she inclines her head towards you in greeting before continuing on.<br>
<br>
As she walks past, you once again recognise the sound of high heels, though you note that she seems to wobble a bit with each short step as if struggling with her balance or, perhaps, sore legs.<br>
<br>
"@@.npc_nun_prudence;You may have noticed <<=ps(setup.getNpcName("npc_nun_gloria","formal"))>> mouth is covered — this is because she has taken a vow of silence to better focus on other duties. While you are here you are permitted to address myself or any of my fellow Sisters, but please respect the privacy of other worshippers and refrain from speaking to them unless you have been given specific instructions by a clergy member.@@"<br>
<br>
You take another look over <<=setup.getNpcName("npc_nun_gloria","formal")>>, something feels odd. It is only as she walks away that you realise that her robe is swinging as if she had no arms! You shake your head. They are probably just folded up under the flowing fabric, hidden and invisible. It's not like they're bound up in an armbinder, or something!<br>
<br>
"@@.npc_nun_prudence;I encourage you to unburden your mind and soul in the confessional. All spoken within is private between you and the Goddess, but the priests and priestesses are there to relay her will, assuage your suffering and guide you towards a better, more full life.@@"<br>
<br>
Her voice rises towards the end as she gives a slight gasp, reaching a hand out to steady herself against a nearby pillar.<br>
<br>
"@@.npc_nun_prudence;Sorry about that I am just so... excited to welcome a new person to our glorious church. I hope you will find a portion of the fulfillment and, dare I say pleasure, that faith has brought to me.@@"<br>
<br>
You assess her suspiciously, but she merely smiles and beams back at you and you chalk things up to her just being a bit TOO enthusiastic. You glance into the now empty booth, but nothing seems particularly unusual. It is just a small chamber with a padded seat and knee rest facing the adjacent room where, presumably, the <<if !$npc_priest.fem>>priest or <</if>>priestess is sitting in wait on the other side of the partition to hear from the next parishioner.<br>
<br>
"@@.npc_nun_prudence;If you would come with me, I will show you some of the other services we offer.@@"<br>
<br>
[<<moveTo "event_church_intro_4" "Curious about the confessional you nod and follow after her." 300>>]
</div>/*#
#desc: church tour - classes and prayer
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_priest' 'other' 'theme_priest_other_fem'
0
'theme_church_confession_feminized'
true
>>
<<addNpcTheme 'npc_priest' 'other' 'theme_priest_other_capital'
0
'theme_church_confession_capitalism'
true
>>
<<set $player.flags.church.tour = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png">>
<div id="invframe" class="scrolltext">
Moving to the other side of the large room she gestures towards a row of doors leading to other rooms.<br>
<br>
"@@.npc_nun_prudence;Here is where we offer various classes — there are small, private rooms you can use for prayer, as well as a group prayer room for guided praise.@@"<br>
<br>
She points to a group of closely-spaced doors followed by a single, larger door with the words "Communal Prayers" over it.<br>
<br>
"@@.npc_nun_prudence;If you are seeking more relaxation we offer guided meditation, as well as classes on scripture. I encourage you to join us for both.@@"<br>
<br>
She points to another couple of doors before spinning on her heels to face you with a smile.<br>
<br>
"@@.npc_nun_prudence;Well, that's the basic tour. I do hope you will visit us to learn, and experience more. Note that attendance to our Sunday morning service is only permitted to full members of the church but, otherwise, you may feel free to visit and stay whenever and for however long you like.@@"<br>
<br>
<<printThought "That seems a bit odd for the main Sunday service not to be open to the public, they seem quite welcoming otherwise.">><br>
<br>
Back at the front of the church the nun gives a curtsy and steps out of your way, leaving you to decide what to do next.<br>
<br>
[<<moveTo "event_church_root" "Continue." 300>>]
</div>/*#
#desc: join in meditation at church
#status: RELEASED 0.8.2.0
#ignore_spell: meditators
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.level = setup.getChurchActivityLevel($player.flags.church.level, $player.flags.church.activities["meditation"])>>
<<set $player.flags.church.activities.meditation[$scene.level]++>>
<<switch $scene.level>>
<<case 0>>
<<applyExperience 'submission' 10 'normal' $EXPOSED>>
<<applyExperience 'feminization' 10 'normal' $EXPOSED>>
<<changeHorny 10>>
<<case 1>>
<<applyExperience 'submission' 10 'normal' $EXPOSED>>
<<applyExperience 'bondage' 5 'normal' $EXPOSED>>
<<applyExperience 'feminization' 10 'normal' $EXPOSED>>
<<changeHorny 15>>
<<case 2>>
<<applyExperience 'submission' 10 'normal' $EXPOSED>>
<<applyExperience 'bondage' 5 'normal' $EXPOSED>>
<<applyExperience 'feminization' 10 'normal' $EXPOSED>>
<<changeHorny 20>>
<<case 3>>
<<applyExperience 'submission' 10 'normal' $EXPOSED>>
<<applyExperience 'bondage' 18 'normal' $EXPOSED>>
<<applyExperience 'feminization' 10 'normal' $EXPOSED>>
<<set $player.timebased.horny = Math.max($player.timebased.horny,90)>>
<</switch>>
<<set $daily.church_count += 1>>
<<set $daily.church_med = true>>
<<set _stress = -1-2*$scene.level>>
<<applyStress _stress>>
<</if>>
<<set $player.location to "Meditation Room in the Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.level < 2>>
<<createAdvBGR "./images/locations/church_group_prayer.png" "npc_nun_joy_modest">>
<<else>>
<<createAdvBGR "./images/locations/church_group_prayer.png" "npc_nun_joy">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.level>>
<<case 0>>
Entering the meditation chamber you find a handful of people scattered around the room sitting with their legs crossed. At the front of the room is a nun who quietly walks over to you to softly introduce herself as <<=setup.getNpcName('npc_nun_joy', 'formal')>>. She gestures for you to take a seat and join in on the meditation.<br>
<br>
Once you are situated comfortably <<=setup.getNpcName('npc_nun_joy', 'formal')>> returns to the front of the room and begins instructing the class in basic meditation techniques.<br>
<br>
Her voice is velvety smooth as she softly instructs you to "@@.npc_nun_joy;Relax,@@" narrating as you "@@.npc_nun_joy;Breathe in and out, in and out, letting your conscious thoughts slip away. Let your body sink, the spirit of the Goddess washing over you, flowing through you. Naturally, wonderfully, you are one with the Goddess, just relaxing and breathing in and out...@@"<br>
<br>
Settling into the rhythm of things you slide into a trance, losing track of time until <<=setup.getNpcName('npc_nun_joy', 'formal')>>'s soft voice guides you back to reality. "@@.npc_nun_joy;Feel yourself rising, your consciousness returning, that's it, nice and slow, return to your body refreshed and calm.@@"<br>
<br>
Blinking you look around the room as the rest of the class recovers alongside you, all of your expressions that of complete contentedness.<br>
<br>
Letting out a slow breath you shiver, adjusting to a temporarily heightened sense of yourself and the world as you return to your feet and thank <<=setup.getNpcName('npc_nun_joy', 'formal')>> before walking out of the meditation room.
<<case 1>>
Entering the meditation chamber you find a handful of people scattered around the room sitting with their legs crossed. Upon closer inspection you realise that all of them appear to be blindfolded. As you look on in confusion <<=setup.getNpcName('npc_nun_joy', 'formal')>> walks up to you with a blindfold in hand and quietly motions for you to take a seat.<br>
<br>
"@@.npc_nun_joy;Shhhh,@@" she whispers. "@@.npc_nun_joy;By removing the distraction of vision it becomes easier to look inside, to move past the distractions of the world without and better focus on finding your feminine centre.@@"<br>
<br>
This makes sense enough, you suppose and you assume a legs crossed position and wait for <<=setup.getNpcName('npc_nun_joy', 'formal')>> to gently cover your eyes with the soft, comfortable blindfold.<br>
<br>
"@@.npc_nun_joy;Good girl,@@" she whispers softly. You can hear the click of her heels as she walks back to the front of the room, her voice calm as she addresses the room. "@@.npc_nun_joy;Alright, empty your mind, relax. Feel the power of the Goddess all around you, surrender to it, to the feeling of her love washing over you.@@"<br>
<br>
<<=setup.getNpcName('npc_nun_joy', 'formal')>>'s voice is sensuous, seeming to come from all around you as you sit in the darkness, hanging on her every word. "@@.npc_nun_joy;Open yourself to the Goddess, feel her penetrate you, filling you up, her love thrusting deeper and deeper, her gifts flowing into you, cleansing you of doubt, of hesitation.@@"<br>
<br>
You would swear you heard a soft moan, perhaps from one of the other people in the room? It feels so strange, you know there is another worshiper an arms length away and yet it feels that <<=setup.getNpcName('npc_nun_joy', 'formal')>> is talking directly to you as you sink deeper and deeper into a meditative state.<br>
<br>
"@@.npc_nun_joy;The Goddess inside of you is the best of feelings, it calms you and you surrender to it, her love washing over you, through you, you feel her seed placed within you. A divine seed of pleasure and worth, that you will incubate until it blossoms into yourself, your feminine perfection readying you to join the Goddess herself...@@"<br>
<br>
<<=setup.getNpcName('npc_nun_joy', 'formal')>>'s words go on and on, speaking of the deep, almost passionate love that the Goddess feels for you. Your heart swells with feminine pride but, sadly, the meditation finally comes to an end, <<=setup.getNpcName('npc_nun_joy', 'formal')>> ordering you to remove the blindfold. As you blink in the dim light you meet the gaze of your fellow worshippers.<br>
<br>
Their blissful smiles are unmistakable, and you feel the same, the metaphorical warmth of the Goddess still inside you, leaving you feeling tingly and content as you rise to your feet and quietly leave the room.
<<case 2>>
Entering the meditation room the other participants are already in kneeling positions, each blindfolded and straddling a Sybian-like device. <<=setup.getNpcName('npc_nun_joy', 'formal')>> greets you with a smile and leads you to an unoccupied seat.<br>
<br>
<<if $player.body_ref.penis || setup.checkItemTypeWorn("cage")>>
<<if setup.checkItemTypeWorn("cage")>>
Gently <<if setup.isCage()>>squeezing your chastity cage<<else>>caressing the front of your chastity belt<</if>> through your clothing she smiles and swaps the front dildo for a vibrator instead. Exposing yourself you lower onto the sybian, a thick rear phallus <<if !setup.checkItemTypeTag('plug', ['hollow'])>>replacing the <<=setup.getItemTypeName("plug")>> in<<else>>sliding into<</if>> your rear hole while your <<if setup.isCage()>>cage<<else>>belt<</if>> presses up against a vibrator of its own.
<<elseif $player.body_ref.vagina>>
Gently squeezing your swelling <<getWordMyPenis>> through your clothing she smiles and augments the front dildo with a sheath as well. Exposing yourself you lower onto the sybian, a thick rear phallus <<if !setup.checkItemTypeTag('plug', ['hollow'])>>replacing the <<=setup.getItemTypeName("plug")>> in<<else>>sliding into<</if>> your rear hole with its twin up front and your already hard <<getWordMyPenis>> made at home in a soft textured onahole.
<<else>>
Gently squeezing your swelling <<getWordMyPenis>> through your clothing she smiles and swaps the front dildo for a sheath instead. Exposing yourself you lower onto the sybian, a thick rear phallus <<if !setup.checkItemTypeTag('plug', ['hollow'])>>replacing the <<=setup.getItemTypeName("plug")>> in<<else>>sliding into<</if>> your rear hole while your already hard <<getWordMyPenis>> is made at home in the soft textured onahole.
<</if>>
<<else>>
Gently caressing you through your clothing she smiles guides you down onto the dual dildos. Exposing yourself you lower onto the sybian, a thick rear phallus <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>replacing the <<=setup.getItemTypeName("plug")>> in<<else>>sliding into<</if>> your rear hole with its twin up front.
<</if>>
<br><br>
Grinding your hips in the dark in anticipation of the device between your legs turning on you listen to <<=setup.getNpcName('npc_nun_joy', 'formal')>>'s footsteps as she returns to the front of the room.<br>
<br>
"@@.npc_nun_joy;Let us begin our meditation. Remember — the goal is not orgasm, but to embrace the endless pleasure the Goddess gives to us. Now, relax, and let her blessing be upon you.@@"<br>
<br>
There are a chorus of gasps as the sybians turn on all at once. The presence of the blindfold heightening your other senses you shudder as your most sensitive, private parts are engulfed in stimulation.<br>
<br>
<<=setup.getNpcName('npc_nun_joy', 'formal')>>'s voice sounds distant as she instructs you to "@@.npc_nun_joy;Breathe, focus, breathe. Embrace the pleasure, but do not let it control you. Allow it to flow through you, strengthen you, and raise you to a higher level of consciousness.@@"<br>
<br>
Breathing heavy, and <<if setup.checkItemTypeWorn("corset")>>as deep as your corset allows<<else>>deep<</if>> you feel your consciousness expanding. Though you cannot see them you can feel your fellow worshipers. Reaching out you link hands, squeezing each other for support as you share in each others pleasure, strengthening one anothers resolve so that, even as the vibrations rise higher and your moans entwine you hold one another back, like a group of mountain climbers linked together so that none of you fall to the mere momentary pleasure of an orgasm.<br>
<br>
The vibrations rise and fall, <<=setup.getNpcName('npc_nun_joy', 'formal')>>'s words encouraging yet indistinct as you and your fellows ascend to a new state of meditative bliss.<br>
<br>
Just as she pushed you up, <<=setup.getNpcName('npc_nun_joy', 'formal')>> slowly brings the group back to earth, her voice like a lifeline, pulling you back to shore, the blindfold falling from your face just as the final tremor of vibration ceases.<br>
<br>
Looking around at the ecstatic faces around the room you smile, reluctantly releasing your grasp on the hands to either side as you disentangle yourself from the sex machine and rise to your feet.<br>
<br>
Clothing fixed, <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>and <<=setup.getItemTypeName("plug")>> secured back in your hole <</if>>you thank <<=setup.getNpcName('npc_nun_joy', 'formal')>> for her wonderful guidance and leave the meditation room.
<<case 3>>
Walking into the meditation room you are greeted by <<=setup.getNpcName('npc_nun_joy', 'formal')>>. Looking around, your fellow meditators you find them lying on the floor, each sealed in their own private latex vacuum bed.<br>
<br>
Smiling at you, <<=setup.getNpcName('npc_nun_joy', 'formal')>> leads you to an empty bed, but before you can slide in she hands you a thick padded hood. "@@.npc_nun_joy;To help you focus,@@" she explains, helping you pull the hood over your head as you discover that it also includes a small, hollow gag that you are able to breathe through. <<=setup.getNpcName('npc_nun_joy', 'formal')>> buckles the hood tight over your head, cutting off all sight and sound.<br>
<br>
Gently <<=setup.getNpcName('npc_nun_joy', 'formal')>> guides you down to the ground, helping you crawl into the vacuum bed and arranges your hands and legs into a comfortable, but spread, position. Blind and deaf all you can do is lie there as a sheet of latex is pulled over you, pulling tight as the air is sucked away while, at the same time, the item in your mouth swells until you are rendered totally mute by an oversized gag.<br>
<br>
Able to breathe easily through the hollow gag you feel something attached to it, your breaths suddenly tinged with what tastes like a blend of cum and pussy juices. Lying there in silent, totally restrained darkness, tasting what can only be described as sex with every breath you shudder, already falling towards meditative sub space with barely any effort.<br>
<br>
"@@.npc_nun_joy;Relax,@@" <<=setup.getNpcName('npc_nun_joy', 'formal')>>'s voice suddenly comes, sounding inside your hood as if she was whispering directly into your ear. After the initial shock at the intrusion into your private bondage you do as she says, letting out a slow breath and breathing deep the taste of sex. "@@.npc_nun_joy;Relax and give yourself to the Goddess, your body is hers, a feminine avatar sent to enlighten the world... and as blessing for your service you will have blessings beyond number.@@"<br>
<br>
If you weren't gagged you would shout yes! instead you merely think it, knowing in your heart that the Goddess hears your promise, and a moment later you get your reward.<br>
<br>
A dozen hands — nuns, presumably some fragment of consciousness concludes — begin stroking over your rubber-encased form, erotically groping you all over, inescapable comfort and stimulation that only becomes more intense when a trio of vibrators are pressed against you — one vibrating through your clothing to stimulate each of your nipples,
<<if $player.body_ref.penis && $player.body_ref.vagina>>
with another pair between your legs, pressed against your <<getWordMyPenis>> and <<getWordVagina>> alike.
<<elseif $player.body_ref.vagina>>
the other between your legs, pressed against your <<getWordVagina>>.
<<else>>
the other between your legs, pressed against your <<getWordMyPenis>>.
<</if>>
<br><br>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
A final vibrator finishes things off, pressed against the base of your plug and sending waves of stimulation through your stretched hole and hypersensitive <<if $player.body_ref.penis>>prostate<<else>>bum<</if>>.
<<else>>
You long for the circle to be completed, to feel something penetrating your rear hole, and then, through some miracle of technology, it happens, something firm and phallic and just the perfect thickness slides into you, thrusting in and out in time to the rest of your stimulation.
<</if>>
<br><br>
By all reason you should cum, hard, the combination of helpless restriction and overwhelming stimulation more than any <<if $fetish.sissy>>sissy<<else>>girl<</if>> should be able to bear, and yet you don't. Perhaps your air is tinged with drugs as well as sex flavour because, though you breathe in deep gulps, twitching as much as possible in your restraints, you merely ride the edge, a pre-orgasmic high that stretches on and on until it seems as if there is nothing else in your universe save for infinite pleasure.<br>
<br>
"@@.npc_nun_joy;Relax, surrender, return...@@" <<=setup.getNpcName('npc_nun_joy', 'formal')>>'s voice returns like an old friend, a comfort and a lifeline as the vibrations stop<<if !setup.checkItemTypeWorn("plug")>>, the mysterious phantom cock retreats<</if>> and the latex vacbed loosens its clutch on your body. Though you would gladly have laid there forever you do not feel sad, instead energised, refreshed and excited to be one of the Goddess's agents on earth.<br>
<br>
Sitting up you fumble with the buckles on your hood, looking around you find your fellow meditators, each appearing a little sweaty, their flesh temporarily marked by the recent tight bondage, but all with the same expression of lusty determination as yourself.<br>
<br>
Rising to your feet, you silently join with the others in a technically chaste, but oh so sensuous group hug, squeezing each other nearly as tight as the beds had before quietly going your separate ways, a small army ready to spread the joy of your Goddess through every moment of your life.
<<default>>
ERROR unknown church level: <<=$player.flags.church.level>>
<</switch>>
<br><br>
[<<moveTo "event_church_root" "Return to the church narthex." 120>>]
</div>/*#
#desc: pray privately at church
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Private Prayer Room in the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.level = setup.getChurchActivityLevel($player.flags.church.level, $player.flags.church.activities["prayer"])>>
<<set $player.flags.church.activities.prayer[$scene.level]++>>
<<set _stress = -5-$scene.level*10>>
<<applyStress _stress>>
<<set $daily.church_count += 1>>
<<set $daily.church_priv_pray = true>>
<<if $scene.level == 2>>
<<applyExperience 'cum' 7 'normal' $ALONE>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $ALONE>>
<<playerOrgasm>>
<<elseif $scene.level == 3>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $ALONE>>
<<applyExperience 'oral' 10 'normal' $ALONE>>
<<applyExperience 'bondage' 13 'very' $ALONE>>
<<changeHorny 20>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_private_prayer.png" setup.charImage("npc_nun_patience","npc_nun_patience_modest")>>
<div id="invframe" class="scrolltext">
<<switch $scene.level>>
<<case 0>>
You are led into a small room by a nun — <<=setup.getNpcName('npc_nun_patience', 'formal')>>. She motions you towards an altar where a prayer book lies open. She bows to you before backing away and leaving you to your privacy.<br>
<br>
Approaching the altar you start reading on the open page, first aloud and then silently, somehow finding that more intimate and powerful as you work your way through a prayer imploring the Goddess to breathe strength and joy into your life.<br>
<br>
Feeling a warm pool of contentedness growing in your chest you find yourself smiling by the time you reach the end of the prayer, walking out of the room and giving <<=setup.getNpcName('npc_nun_patience', 'formal')>> a nod of thanks as she smiles and waits for the next worshiper.
<<case 1>>
The nun known as <<=setup.getNpcName('npc_nun_patience', 'formal')>> leads you into the small prayer room, a book already open for you on the altar as she softly closes the door behind you to grant you privacy.<br>
<br>
Looking down, you start to read, speaking the words aloud as you offer generic praise to the Goddess before things take a slight turn.<br>
<br>
A soft sound — almost a moan? Trickles in from the adjacent chamber as you ask the Goddess to "@@.pc;Let my body be an offering of femininity.@@"<br>
<br>
The sound in the adjoining chamber seems to build throughout the prayer before coming to what sounds like a crying climax just as you request the Goddess to "@@.pc;Bless me with the seed of pleasure.@@"<br>
<br>
Feeling calm yet oddly aroused you gently close the prayer book and leave the room, <<=setup.getNpcName('npc_nun_patience', 'formal')>> inclining her head with a gentle smile as you continue on your way.
<<case 2>>
<<=setup.getNpcName('npc_nun_patience', 'formal')>> leads you into the small prayer room, smiling at you before opening a hidden compartment in the base of the altar and pulling out blessed lube, a vibrator and an adjustable fucking machine, welcoming you to "@@.npc_nun_patience;Enjoy yourself and in so doing bring exultation to the Goddess.@@"<br>
<br>
Taking a deep breath, your heart already racing in anticipation of your "prayers" you kneel down on a provided pillow, bending over and exposing yourself. Quickly anointing the dildo with the blessed lubricant you <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>slide the plug from your rear before you<</if>> adjust the fucking machine to target <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>both of your holes<<else>>your rear hole<</if>>.<br>
<br>
Letting out a moan as the <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>dildos delightfully slide<<else>>dildo delightfully slides<</if>> into you
<<if setup.checkItemTypeWorn("cage")>>
you hold the wand against <<if setup.isCage()>>your cage<<else>>the front of your belt<</if>>
<<else>>
you press the wand against
<<if !$player.body_ref.penis>>
your already wet clit
<<else>>
the base of your already dripping cock
<</if>>
<</if>>
and flick the power to on.<br>
<br>
You gasp as the vibrations pulse through you, dripping onto the pillow below, as the fucking machine does its job plowing you from behind. Holding the vibrator in place with one hand you pull the prayer book closer, looking down and beginning to read as pleasure flows through you.<br>
<br>
"@@.pc;Thank you, Goddess for the ah! Gift of your divine pleasure...@@" you shudder. You are already so close, but it feels like it would be practically a sin to cum before giving the Goddess the full praise she deserves.<br>
<br>
"@@.pc;May your blessing be upon me and all my sisters, and brothers in faith.@@" Panting you have to pause, squeezing your eyes shut and resisting the urge to either cum or withdraw the now torturous vibrator pressed against your overly-sensitive <<getWordMyPenis>>. Shuffling backwards instead you moan as the dildo plunges even deeper into you.<br>
<br>
"@@.pc;I—I—thank you for blessing me with <<if $player.body_ref.vagina>>holes<<else>>a hole<</if>> and granting me the opportunity to feel your blessed instrument plunging into me. May my body be your temple, spreading your grace and your glory and-OH GODDESS!@@" You almost cum, tears streaming down your face as you sprint towards the end.<br>
<br>
"@@.pc;-your glory and may this pleasure not stop with me, but may I pass it on to all who worship in your name. May your light shine forever upon the world and bring peace and serenity to all AMEN!@@"<br>
<br>
With your final word you <<if $player.body_ref.penis && $player.body_ref.cumProduction>>cum, crying out as you spurt over the pillow<<else>>climax powerfully<</if>>, almost falling over as you jerk and shudder, the thrusting and buzzing continuing until the last tremor of ecstasy fades and you are left softly panting.<br>
<br>
The dildo withdrawing from your ass you turn around to see <<=setup.getNpcName('npc_nun_patience', 'formal')>> smiling down at you.
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
"@@.npc_nun_patience;Surely the Goddess is pleased with such a wonderful offering. Please, sister, lick up the gift left for you.@@"<br>
<br>
It takes a moment to think clearly enough to figure out what she means, but as soon as you glance down at the mess of cum sprayed over the slick pillow you know exactly what to do.<br>
<br>
Head pressed to the floor you lick up every
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
delicious
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty
<<else>>
bitter
<</if>>
<</if>>
drop, the slick material clearly designed for just such ease of cleaning. This realisation has you wondering just how many other worshipers have cum in this very place, hundreds, thousands, even having spilled their joy and licked it up just as you are doing now. The thought has you shudder in submissive rapture, eagerly lapping up every drop before rising back to your feet.
<<else>>
"@@.npc_nun_patience;A beautiful offering. Surely the Goddess is pleased.@@"
<</if>>
<br><br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<=setup.getNpcName('npc_nun_patience', 'formal')>> hands you your <<=setup.getItemTypeName("plug")>>. Freshly lubricated with more of the slick, blessed lube. Smiling in anticipation you bend over, offering your ass for her to insert it. She does, the toy sliding smoothly into place, the familiar fullness bringing a smile to your face.<br>
<br>
<</if>>
Beaming with pride, <<=setup.getNpcName('npc_nun_patience', 'formal')>> helps fix your clothes and escorts you out of the room, wishing you a blessed day as you reply that "@@.pc;It already is.@@"
<<case 3>>
<<=setup.getNpcName('npc_nun_patience', 'formal')>> leads you into the private prayer room, opening two hidden compartments in the base of the altar. She extracts lube, a fucking machine and a wand vibrator from one, and pairs of leather cuffs and a thick gag from the other.<br>
<br>
Gesturing for you to take your place in front of the altar the gentle nun cuffs your wrists and ankles and attaches them to rings subtly built into the floor, restraining you on your hands and knees in front of the altar before <<if !setup.checkItemTypeTag('plug', ['hollow'])>>removing your plug and <</if>>positioning the fucking machine to slide <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>dual dildos into you from behind<<else>>the ass-filling dildo into your rear<</if>>.<br>
<br>
Mounted to the floor, the wand is pressed against <<if $player.body_ref.penis>>the base of your <<getWordMyPenis>><<else>>your crotch<</if>> and she finishes off by bringing the gag in front of your face. You obediently open your mouth and she pulls the large, padded gag deep. "@@.npc_nun_patience;Filled at both ends... how divine@@" she whispers before buckling the gag tight and stepping towards the door.<br>
<br>
"@@.npc_nun_patience;Enjoy your prayers@@" she says in parting as the fucking machine beings thrusting and the vibrator commences to buzz. The door softly closes, leaving you alone and bound with nothing to do but read the prayer laid out before you.<br>
<br>
Thanks to your gag there is no way you could speak or chant the prayer aloud, but that hardly matters — you imagine the Goddess in the room with you, listening to your thoughts as you read the erotic prayer in front of you.<br>
<br>
The prayer seems almost subtly chosen for you, asking the Goddess's blessing not just on yourself to be guided to new peaks of femininity, but also for her to work through your earthly <<=setup.getNpcName("npc_manager","title")>>, to guide you and shape you into the beautiful <<if $fetish.sissy>>sissy <</if>>girl you are meant to be.<br>
<br>
Despite the pleasurable sensations pulsing forth from your <<if $player.body_ref.penis>>prostate<<else>>bum<</if>> and <<if $player.body_ref.penis>><<if $fetish.sissy>>sissy <</if>>clitty<<else>>between your legs<</if>>, and the intense eroticism of your position you find yourself unable to cum, instead merely running through the prayer again and again as you drip and drool and moan through the gag; deliciously stimulated and yet held back by some sort of submissive block from actual release.<br>
<br>
By the time <<=setup.getNpcName('npc_nun_patience', 'formal')>> returns you have lost nearly all track of time, your existence one of unending, yet unresolved, pleasure and praise for your Goddess looping through your head. Turing off the machines and <<if !setup.checkItemTypeTag('plug', ['hollow'])>>replacing your plug before <</if>>gently removing your restraints she helps you to your feet with a soft smile.<br>
<br>
Under her gaze your intense horniness seems to fade, declining to a gentle throb, exciting, yet not distracting. Fixing your clothes you feel blessed with a fresh clarity of purpose as you walk out of the private prayer room, eager to take the next step in your wonderful journey.
<<default>>
ERROR unknown church level: <<=$player.flags.church.level>>
<</switch>>
<br><br>
[<<moveTo "event_church_root" "Return to the church narthex." 120>>]
</div>/*#
#desc: attend weekend service
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.church.level == 2>>
<<set $scene.lvl3promotion = $player.flags.church.activities.prayer[3] > 0 && $player.flags.church.activities.group_prayer[3] > 0 && $player.flags.church.activities.meditation[3] > 0 && $player.flags.church.activities.class[3] > 0 && $player.flags.church.activities.confession[3] > 0 && $npc_acolyte.stage >= 4 && setup.checkItemOwned("satin_corset_pink") && State.hasPlayed("event_manager_daily_check_satin_corset_pink")>>
<</if>>
<<if $player.flags.church.activities.service[2] == 0>>
<<set $scene.first_service = true>>
<<else>>
<<set $scene.sermon = ['alesha','trade','josephine','lesbians','materialism','latex'].random()>>
<</if>>
<<set $player.flags.church.activities.service[2] += 1>>
<<set $player.flags.church.sermon[$scene.sermon] = true>>
<<if !$scene.first_service>>
<<set $now = setup.advanceNextDate($player,$now,0,9,0)>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior_full.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first_service>>
You've never seen the church this crowded, the pews are well over half full with a mix of nuns and laypeople. Mostly female, as expected, there are still a number of male-presenting worshippers about as you take a seat off to the side towards the back and wait for the service to begin.<br>
<br>
Looking around almost everyone is dressed relatively formally, a tilt towards "sexy," but classy rather than obscene.
<<switch setup.analyzeWornTags(['casual','office', 'formal'])>>
<<case 'casual'>>
You curse yourself for dressing so slovenly, feeling quite out of place compared to the rest of the room.
<<case 'office'>>
Your office attire is barely enough to scrape by leaving you feeling under-dressed, though at least you aren't so bad off as to attract attention or scorn.
<<case 'formal'>>
You are quite glad you chose to wear your figurative Sunday best. While far from the most elegant person in the room you at least look like you belong and any attention you attract is positive.
<<default>>
You feel quite under-dressed and poorly put together compared to the elegance on display elsewhere in the room.
<</switch>>
<br><br>
[<<moveTo "event_church_service_first" "The service is starting." 1800>>]
<<else>>
<<switch $scene.sermon>>
<<case 'alesha'>>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> preaches the sermon, telling a story from the early days of the church.<br>
<br>
"@@.npc_sissy_superior;In those times the followers of the Goddess were but a single tribe, as focused merely on surviving in the harsh world as they were in keeping the faith. rumours begun spreading of a great warlord and her unstoppable horde, knowing their small numbers would ill stand against such a force the followers of the Goddess attempted to flee, but it seemed the warlord bore them some manner of grudge for she pursued them relentlessly, the warlord's forces such that the tribe was forced to flee without ever even attempting to engage in what would surely be a one-sided slaughter.@@"<br>
<br>
"@@.npc_sissy_superior;Practically herded with great tactical cunning the tribe of the Goddess was finally cornered at the foot of a cliff, the warlord appearing in person to demand audience with the High Priestess and other leaders of the tribe. Assembling in the warlords tent under the watchful eye of her elite royal guards the followers of the Goddess were shocked when the warlord, dressed in a humble cloth robe rather than her gleaming armour, proclaimed that she had received a message from the Goddess and wished to dedicate herself to her service.@@"<br>
<br>
"@@.npc_sissy_superior;At first elated that their people were not to be slain or scattered to the corners of the earth things suddenly took a turn when a clumsy servant spilled a pitcher of wine across the warlord's lap, revealing the shocking shape of what hung betwixt her legs. The followers of the Goddess fled in a panic, one of the warlord's messengers chasing after to inform them they had until the following dawn to make their decision as to the warlord's offer.@@"<br>
<br>
"@@.npc_sissy_superior;All night the debate roared, three schools of thought coalescing, those who advocated accepting any who would so thoroughly proclaim womanhood, traditionalists who clung to a far more narrow understanding, and a final group of pragmatists saying it did not matter compared to the stakes of the tribe's survival. Dawn rose without a decision being reached and the warlord came to them, this time dressed in her finest armour, the weapon at her side a silent threat to go with her army lining the horizon.@@"<br>
<br>
"@@.npc_sissy_superior;None can be certain what the high priestess would have said had she been given the opportunity to speak, for in that moment the Goddess herself appeared in the flesh. All who looked upon her dropped to their knees in awe. The Goddess spoke, her words parting the clouds of doubt and filling all with joy.@@"<br>
<br>
"@@.npc_sissy_superior;Come, my people, do you not recognise your Sister? she spoke, as the goddess extended a hand to help the warlord to her feet. The warrior woman, undefeated in a hundred battles rose with tears of joy streaming down her cheeks. The Goddess continued, her voice gentle even as she admonished some of her followers.@@"<br>
<br>
"@@.npc_sissy_superior;So spake the Goddess that the warrior's journey had been long and hard, but that she showed no less devotion to the Goddess's teachings than any of her followers. You will welcome her as one of my High Priestess', to rule as equals with her fellow sister superior. Extending her other hand the Goddess raised the tribe's High Priestess to her feet, bringing the two women together.@@"<br>
<br>
"@@.npc_sissy_superior;Both women trembling at the ecstatic touch of the Goddess they stared into one another's eyes, the Goddess granting them witness to the other's life and they embraced as two halves of a whole who had only just discovered their completing part. With a parting smile the Goddess returned to her celestial realm, the freshly confirmed Sisters Superior looking out on their combined flock, joyously looking forward to the joining of their peoples.@@"<br>
<br>
"@@.npc_sissy_superior;In the coming years, known as the first reign of Priestesses, the Goddess's followers prospered greatly in a golden age of wisdom and security. Of course there would be further ups and downs in the centuries to come, but it cemented a new tradition that we follow to this very day, for, whensoever possible, there is to be two High Priestess' united to better minister all the faithful.@@"<br>
<br>
Turning to her counterpart <<=setup.getNpcName('npc_sissy_superior', 'formal')>> gives a slight bow, <<=setup.getNpcName('npc_fem_supreme', 'formal')>> returning the motion with the words "@@.npc_fem_supreme;Goddess be praised.@@"<br>
<br>
"@@.npc_sissy_superior;Goddess be praised,@@" she, and the rest of the congregation together, reply.<br>
<br>
The choir of nuns launch into a hymn after which there is a closing prayer and then the service comes to an end.
<<case 'trade'>>
<<=setup.getNpcName('npc_fem_supreme', 'formal')>> nods to the congregation and begins her sermon.<br>
<br>
"@@.npc_fem_supreme;We have gathered here today in praise of the very essence of femininity as embodied by our beloved Goddess. Why, though? Certainly the virtues of femininity are manifold, but there exist other virtues as well. Our Goddess is great and good and beautiful and more than worthy of our veneration but, in her benevolence, she would smile down on us even if we never acknowledged her.@@"<br>
<br>
She smiles, you and many others on the edge of your seat waiting for the answer. "@@.npc_fem_supreme;No, what raises femininity on high, what draws us to it is the way it betters us. At its core femininity is taking into oneself and given back even more to the world. Certainly motherhood is part of this, but once one is alerted to this simple formula they will see the mark of this feminine ideal on so much more. From the scientist who takes in knowledge to produce even greater leaps forward, the craftsperson who takes in raw materials to build something of worth the artist who distils a lifetime of experience into a work of breathtaking beauty... all of these, and more are through that feminine ideal. Many have forgotten this fact, of course, but we know the truth, we carry forth in the name of the Goddess and thank her for this most wondrous of gifts.@@"<br>
<br>
"@@.npc_fem_supreme;To be penetrated, to take into oneself to better the world, even if that betterment is but a single shared orgasm or moment of human connection... it is beautiful and it will be rewarded. It is one of the reasons our nuns are filled as part of their daily attire — orally as well in the case of sisters who are able to operate under the resulting vow of silence, but this tradition has even deeper roots as it prepared us for what was once one of our most sacred duties. In ancient times, even when the tribe of the Goddess was small and weak the other tribes would yet come to us, knowing that the ultimate brokering of peace could only be obtained with the blessings of one of our priestesses.@@"<br>
<br>
"@@.npc_fem_supreme;Skilled in diplomacy and in brokering compromise we were known to be fair and just, and, whence the agreement was finalized, that same priestess would offer herself as a bond between the two parties, the simultaneous penetration, the shared moment of intimacy... it would seal the agreement, a momentary joining of the previously warring tribes in common purpose. The peace thus granted was known to last, and the children of such couplings growing to be peace-bringers themselves.@@"<br>
<br>
"@@.npc_fem_supreme;We are no longer bound in such petty, small groups, such rituals insufficient to solve the ever-complicated problems that plague our modern world, but the metaphor is still true — all of us are granted opportunities to bring conflicting sides together, physically perhaps, but even just in words, to take in what both are saying and, with wisdom, bring them together into something more positive. Go, now, my Sisters, and may the Goddess bless you in all that you would do.@@"<br>
<br>
After a moment of silence the choir of nuns launch into a hymn, followed by a closing prayer and then the service comes to an end.
<<case 'josephine'>>
<<=setup.getNpcName('npc_priest', 'formal')>> approaches <<his npc_priest>> lectern with a smile. "@@.npc_priest;Listen, this day, to a story from the life of Josephine.@@"<br>
<br>
"@@.npc_priest;Josephine lived in a time when the church was fragmented and scattered. Nonetheless she was a devout woman blessed by the Goddess, having risen to a minor position in the court of the local ruler. Over time she had built a reputation as an intelligent, well-reasoned advisor. One day it came to pass that the King — who lacked for an heir, was struck by a strange dream. The King's other advisors failing to interpret the dream it was suggested that Josephine be consulted as to its meaning.@@"<br>
<br>
"@@.npc_priest;Attired in her finest dress Josephine appeared before the King to listen to his dream. In it the King had come upon a rosebush upon which there were seven rosebuds which blossomed one after another before his eyes, the final blooming into two flowers each as gorgeous and full as the first six. His advisors having failed to interpret this dream he asked Josephine its meaning.@@"<br>
<br>
"@@.npc_priest;Thanks to her connection to the Goddess Josephine immediately understood the seemingly cryptic dream, explaining to the King that if he and his seven wives would dedicate themselves to the Goddess and endure seven times seven days, or seven weeks, of chastity the Goddess would bless them during the following seven nights with a bounty of pleasure as well as eight children, a pregnancy for each wife, one of them twins.@@"<br>
<br>
"@@.npc_priest;Excited at this prospect the King immediately summoned his wives to relay the good news, only to be faced with the incongruity that he only had six wives, not the seven implied by his dream. The problem was swiftly solved when one of his existing wives suggest that they marry Josephine. During her time in court Josephine had already come to know each of the Kings wives and they grew excited at the prospect. For her part, Josephine accepted, upon the condition that her wedding would also see all of them dedicated to the Goddess.@@"<br>
<br>
"@@.npc_priest;In a rush to fulfill the prophecy the wedding would commence the following day — just enough time for the royal blacksmiths to complete the matching chastity devices that were locked on each of the eight happy betrothed.@@"<br>
<br>
"@@.npc_priest;The subsequent seven weeks were intense and passionate, Josephine personally orchestrating things such that, provided matters of state were attended to, her husband and all of her wives would be teased and stimulated such that, by the time the seven times seven days were at an end all were brimming with lust. The King released from his steel chastity, he rose to never before seen firmness, his wives gasping in lusty surprise at the passion of their lord.@@"<br>
<br>
"@@.npc_priest;Over the next seven nights the King would unlock and lie with each wife in turn, her fellow wives aiding the couple until the final night when Josephine was finally released from her chastity and her spouses eagerly welcomed her carnally, the pleasure she received the equal to any ever shared between mortals.@@"<br>
<br>
"@@.npc_priest;Each wife blessed by the Goddess with child it would be Josephine herself, to birth twins, the pair growing up wise and intelligent beyond their years to eventually grow to be great rulers themselves.@@"<br>
<br>
"@@.npc_sissy_superior;Goddess bless to us this reading.@@" <<=setup.getNpcName('npc_sissy_superior', 'formal')>> and <<=setup.getNpcName('npc_fem_supreme', 'formal')>> state in unison to conclude the scripture, following with a short sermon about the lessons to be gained from Josephine's example — of planning, patience and faith in the Goddess. A nun-led anthem of praise and then a shared prayer concludes the service.
<<case 'materialism'>>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> launches directly into a sermon about materialism world.<br>
<br>
"@@.npc_sissy_superior;While one should always remain focused on the more important spiritual and social aspects of their life, our faith does not deny the pursuit of material possessions. After all, one has only to look around at this gorgeous cathedral, to feel a custom leather outfit hugging their skin, to admire the way a new piece of jewellery draws a look together to understand that physical objects can be an important part of the practice of one's glorification of the Goddess.@@"<br>
<br>
"@@.npc_sissy_superior;The key,@@" she adds. "@@.npc_sissy_superior;Is to understand that a thing, be it money or something bought with same, is not to be the end of itself, it is only the interaction, how it improves your life or furthers your faith that matters. One who arrives at the gates of heaven dressed in finest leather, wearing golden shackles and a jeweled plug decorating each of her holes... she will be granted no greater regard due to that fact than her humble sister who is naked save for cheap hemp ropes, what matters is your character, your legacy. The Goddess judges us on who we do and what we are, any blessings she may grant to one's bank account should be put towards things that matter, not hoarded solely for such sake.@@"<br>
<br>
<<printThought "Who we do and what we are...">><br>
<br>
The phrase seems to stick in your head as you reflect on your journey, the choices you have made and opportunities you have been presented, your thoughts distracted as the choir begins to sing and the service draws to a close.
<<case 'lesbians'>>
<<=setup.getNpcName('npc_fem_supreme', 'formal')>> begins her sermon.<br>
<br>
"@@.npc_fem_supreme;One of the central tenants of our faith is to pursue, and spread, pleasure far and wide. The Goddess smiles upon all consensual pairings, but we humans... we so often feel a need to classify things, to quantify them. Does the Goddess rejoice when one of her faithful spends a night of passionate lovemaking with a strong man, held down and fucked with vigour, a big cock plunging into each of the believer's holes in succession? Of course she does. But she rejoices equally when two sisters spend a quiet night doing nothing but holding each other in warm, loving embrace.@@"<br>
<br>
"@@.npc_fem_supreme;Attraction is a fickle thing and while taking people as they are and exploring a wide variety is encouraged... it is not mandated. We like what we like, and so long as we respect the other and accept them for who they are, the Goddess will be pleased. Go forth, sisters, welcome all who would honestly pledge themselves to the Goddess, even if their journey has been different from your own it is valid and to be respected, no one's femininity or desires are to be held above another, it is our duty to build up, not tear down for when we do the blessing of the Goddess will rain down without number and all shall rejoice.@@"<br>
<br>
"@@.npc_sissy_superior;Goddess be praised!@@" <<=setup.getNpcName('npc_sissy_superior', 'formal')>> adds, the call spreading through the congregation.
<br>
"@@.pc;Goddess be praised!@@" you shout in turn, the choir coming in with a powerful hymn. When the final notes have faded <<=setup.getNpcName('npc_sissy_superior', 'formal')>> leads a closing prayer and then the service comes to an end.
<<case 'latex'>>
"@@.npc_sissy_superior;Today I would speak to you of a figure from our past one whose effect on the church is felt so many of its members all the way to this very moment.@@"<br>
<br>
She shifts behind the pulpit, her movement causing the light of the cathedral to shine off her polished latex outfit. "@@.npc_sissy_superior;I speak, of course, of that gift from the Goddess, that most blessed of materials: Latex. Of all materials this is the most perfect for feeling the embrace of the Goddess at all times — her tight, all-encompassing love like a second skin, as versatile as it is beautiful... and it is Sister Euphoria whom we can thank for bringing it unto us.@@"<br>
<br>
"@@.npc_sissy_superior;The woman who would become known as Sister Euphoria had known latex even before she knew of the church itself, having grown up using its natural sap as her family had for generations. Perhaps it was the yet un-named call of the Goddess, but from a young age Sister Euphoria was possessed with a wanderlust that would take her far from her native home. Though she revelled in the wonders of the world she found herself missing the skin-tight, literally painted on feeling of the sap she played with in her youth. Attempting to reproduce the sensation she became a tailor, quite the expert one, at that, though her greatest outfits were for herself as she continually quested for ways to reduce seams and make things ever more and more fitted.@@"<br>
<br>
"@@.npc_sissy_superior;It was this skill that would bring her into contact with the church, even then we valued the feeling of tight clothing and it was not long before mutual appreciation of craft would turn to word of the Goddess... and from there a mention of the material of her youth. The Sisters she spoke to could, at first, not believe that such a wonder material even existed, but such soon rippled out through the church, with the now Sister Euphoria leading an expedition back to her homeland with some of the best scientific minds the church possessed to study the material.@@"<br>
<br>
"@@.npc_sissy_superior;It would take many years to figure out how to adapt traditional techniques for the requirements of the church, but the enthusiasm was strong and, by the time Sister Euphoria and her team were able to perfect their first crude habit well... the good Sister's holy exuberance had seen her rapidly rise through the ranks, and when it came to officially establishing a local church to better harvest and process the new wonder material she was a near-unanimous choice for Sister Superior.@@"<br>
<br>
"@@.npc_sissy_superior;From this position her influence expanded across the globe, determined to spread this Goddess-blessed material to all of her Sisters, while ensuring that the process of its harvest and refinement was as sustainable as possible — decades before the wider world would stumble into the same processes and kick off a more global rubber boom.@@"<br>
<br>
She smiles. "@@.npc_sissy_superior;What can we learn from this historical figure? Who, I will note called her material laminate, though such term ended up eventually fading in favour of the technically vulgar term we know today. Well... it is that the Goddess and her gifts can come from anywhere, her knowledge not confined to scripture, but in the world itself, for it was only the full combination of Sister Euphoria's wanderlust bringing her into contact with welcoming and open minded sisters, a blessed natural material, and the cooperative effort of scientific investigation that would give us the latex we so prize today. As we remember her contribution we should also seek to mimic her enthusiasm: for exploration, for sharing, and for perfection itself. Praise Sister Euphoria, and praise the Goddess above@@"<br>
<br>
"@@.pc;Goddess be praised!@@" you and the audience call back as the choir breaks out into a paean to the tight embrace of latex. When the final notes have faded <<=setup.getNpcName('npc_sissy_superior', 'formal')>> leads a closing prayer and then the service comes to an end.
<<case 'manager'>>
TODO
/%
her presence obviously intimidates the nuns you meet. Sermon is about the feminine power of obedience, and the mutual gift of enforced and then submitted femininity (story of capturing an enemy army and bringing them "into the tribe" during the first reign of Priestesses)
%/
<<case 'psychiatrist'>>
TODO
/%
Agrees to come with you as part of your therapy, greeted by nuns and (after service) both high priestess' like an old friend. Explains that, while she does not make it to service every week, she is a follower of the Goddess, and quite happy that the faith has proven so helpful to your own development. Sermon is about the importance of helping fellow women
%/
<<case 'technician'>>
TODO
/%
Preach about the duality of existence, dom and sub and how it exists independent of gender, the Goddess blessing those who would command as well as those who would serve as well as those who would indulge in both, encouraging all to discharge their duties with passion, dedication and thoughtfulness for their partner(s).
%/
<<case 'landlord'>>
TODO
/%
how simple service can be a sacrament all its own
%/
<<case 'admin'>>
TODO
/%
Nun who greets you gazes on Bob with obvious lust, congratulates him on his lovely girl and you on finding such a strong man. The service focuses on the duality of gender, how, by choosing for oneself and committing fully the greatest happiness can be reached. You smile up and cuddle up with your man, reinforcing that you have joyfully and fully embraced being "his" girl.
%/
<<default>>
You listen to a saucy sermon given by the Sisters Superior and <<=setup.getNpcName('npc_priest', 'formal')>>.
<</switch>>
<br><br>
<<if $scene.lvl3promotion>>
After service has concluded you are greeted by <<=setup.getNpcName('npc_fem_supreme', 'formal')>> who, noting how devoted to the church you have been since becoming a full member, asks if you would like bear witness to a ceremony inducting a new nun into the church?<br>
<br>
[<<moveTo "event_church_priest_lvl3promotion_1" "Accept her invitation." 300>>]<br>
[<<moveTo "event_church_root" "Say some other time." 60>>]
<<else>>
[<<moveTo "event_church_intermission_1" "Return to the church narthex." 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: first time attending service
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior_full.png" setup.charImage("npc_fem_supreme","npc_fem_supreme") setup.charImage("npc_sissy_superior","npc_sissy_superior") setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
The service commences with two columns of nuns proceeding down the aisles and into the choir stalls. Singing as they go you do not understand the language of their beautiful words, but you can somehow sense that they are extoling the beauty and glory of the Goddess.<br>
<br>
As the nuns fall silent all attention turns to the front of the cathedral where a trio of pulpits loom. First to appear is <<=setup.getNpcName('npc_priest', 'formal')>> who waves to the congregation before taking <<his npc_priest>> place at the lower of the three pulpits. <<He npc_priest>> too is in <<his npc_priest>> best, wearing <<if !$npc_priest.fem>>a fancy miter and <</if>>a beautifully embroidered robe.<br>
<br>
Next come two gorgeous nuns. The tall one you recognise as <<=setup.getNpcName('npc_sissy_superior', 'formal')>> which means the equally beautiful, if half a foot shorter, woman walking next to her must be her co-Sister Superior, <<=setup.getNpcName('npc_fem_supreme', 'formal')>>. You feel a surge of lust rise in your body at the sight of the <<if $npc_priest.fem>>three<<else>>two<</if>> gorgeous women. Their tight robes and habits only serving to enhance their gorgeous features, everything about them bursting with feminine beauty.<br>
<br>
Taking position at the remaining two pulpits you realise that things are arranged such that the two Sisters Superior are now even in height, with <<=setup.getNpcName('npc_priest', 'formal')>> just slightly lower reflecting <<if $npc_priest.fem>>her overall more junior status as a Sister Superior in training<<else>>either his overall more junior status or the general supremacy of femininity in the church<</if>>.<br>
<br>
<<=setup.getNpcName('npc_fem_supreme', 'formal')>> speaks first, welcoming the congregation before commanding you to kneel in prayer.<br>
<br>
Dropping to your knees on the padded bench provided you are forced to merely listen, though the words of the prayer impact you deeply.<br>
<br>
@@.npc_fem_supreme;Our Goddess, who art in and around us all.<br>
Blessed be thy existence.<br>
Thy Queendom come,<br>
Thy will supreme,<br>
Thy blessing be upon us all.<br>
Give us this day a gift of joy,<br>
Your pleasure magnified as we share it with others.<br>
Grant us the strength to enact thy will,<br>
And the humility to submit when called upon,<br>
And lead us unto blessed temptation,<br>
But let true fulfillment remain forever with you and you alone.@@<br>
<br>
The prayer over, you take your seat as the three clergy members begin a sermon.<br>
<br>
Speaking in turn they narrate a story, a handful of nuns appearing to act out what is happening in a sort of interpretive dance. You watch as one of the nuns is persecuted, chased by other nuns wearing witch-hunter costumes. Finally cornered after (according to the narration) years of covert service to the Goddess she is captured and bound, her clothing rent and torn to expose her half naked, beautiful flesh.<br>
<br>
Just when all seems lost there is a sound like thunder, her assailants falling to the ground as the light of the Goddess shines down upon her. Her bonds falling from her body she steps forth, the Sister Superior providing her dialogue imploring the Goddess for mercy, explaining that her assailants "@@.npc_fem_supreme;Know not what they do.@@"<br>
<br>
There is another crack and the assailants rise again, but now they are wearing nun outfits of their own, bowing before their would-be victim as the narration continues to explain how the grace of the Goddess had softened their hearts and opened them to a chance at redemption.<br>
<br>
The congregation instructed to lift up their voices in praise the nun is bound again, this time with an ornate collar akin to the ones worn by the sisters superior, along with sturdy cuffs as it is explained that she had become re-dedicated to the Goddess, her offering and symbolic martyrdom blessing her as a high priestess and divine slave who, along with her loyal followers, would devote the rest of her life spreading the teachings of the church.<br>
<br>
Another song from the nun's choir and a parting prayer and the service comes to a close. Rising from your seat you mill about with the other congregants only to feel a gentle tap on your shoulder.<br>
<br>
[<<moveTo "event_church_intermission_1" "Turn around." 1800>>]
</div>/*#
#desc: post-service coffee hour
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
<<if $scene.first_service>>
You turn to find yourself facing the Sister Superior, <<=setup.getNpcName('npc_fem_supreme', 'formal')>>. Not as tall as her co-priestess, <<=setup.getNpcName('npc_sissy_superior', 'formal')>> still makes for a quite imposing presence, immaculate makeup and perfect figure shining through despite her concealing robe and her intricately folded cornette of her broad ceremonial collar.<br>
<br>
"@@.npc_fem_supreme;Enjoy the service?@@" she asks, her tone is not as powerful and dominant as when she was preaching, but still very sultry and enticing.<br>
<br>
You nod quickly and she smiles, her ruby lips curling in a way that could start, or end, a war. "@@.npc_fem_supreme;Wonderful, I have heard so much about you from my sisters. <<if $npc_priest.fem>>I must say that <<=ps(setup.getNpcName('npc_priest', 'formal'))>><<else>>Not to mention <<=setup.getNpcName('npc_priest', 'formal')>>! His<</if>> report about your membership trial was quite wonderful.@@"<br>
<br>
You suddenly realise that she has been slowly moving closer to you, such that you now find yourself centimetres away, your heart racing as she caresses your cheek with a soft leather-gloved hand. "@@.npc_fem_supreme;Yes, you do seem like quite the lovely acolyte. I cannot wait to spend more... time with you. Enjoy the rest of your day and I will see you around...@@"<br>
<br>
You remain standing stunned for well over a minute after she has walked away, only coming to your senses when someone bumps into you and you turn to find <<=setup.getNpcName('npc_acolyte', 'first')>>.<br>
<br>
"@@.npc_acolyte;<<=$player.first_name>>!@@" She says in excited greeting. "@@.npc_acolyte;You're a full member finally? Oh, I am so happy for you!@@"<br>
<br>
She throws her arms around you in a welcoming hug, finishing off with a more-than-mere-friends kiss on the neck and butt-squeeze.<br>
<br>
"@@.npc_acolyte;So glad to see you, if you're anything like me you are going to LOVE the doors your membership opens...@@" she appears lost in memory for a moment, a pleased smile on her face. "@@.npc_acolyte;Oh, sorry, bit distracted. That service today! So lovely, imagine what it would be like to be so directly blessed by the Goddess... anyway sorry for bumping into you like that, but I'm in a bit of a hurry, I'll see you around!@@"<br>
<br>
Still not having gotten a word in edgewise she is dashing off, high heels clicking on the marble floor, her skirt so tight you would be able to identify her plugged rear even if there wasn't also a pair of inflation bulbs dangling down to peek out between her legs.<br>
<br>
Noting that people are scattering as a group of silent nuns herd congregants towards the door in preparation for a second service you quietly make your exit.<br>
<br>
[<<moveTo "location_church_exterior" "Depart." 300>>]
<<else>>
You spend time milling around and greeting other members of the church, but eventually it is time for the second service to commence.
<<if $player.flags.church.level == 3>>
You watch as "uninitiated" members of the congregation are quietly escorted out by a handful of silent (and thus surely gagged) nuns. You need to decide if you will be sticking around to hear the further word of the Goddess and join in holy communion...<br>
<br>
[<<moveTo "event_church_service_advanced_1" "Take your place." 900>>]
[<<moveTo "location_church_exterior" "You have other things to get to today, depart." 300>>]
<<else>>
Despite your membership in the church this is an even more exclusive service for nuns and the most dedicated of worshippers. As the devout file into position you and the other more novice members are gently, but firmly escorted out by several silent nuns.<br>
<br>
<<set _themeId = setup.findThemeId('npc_primrose', 'primrose', 'theme_primrose_religion')>>
<<if _themeId != -1 && $npc_primrose.themes.primrose[_themeId].done > 0 || $npc_primrose.flags.evil == 1 && !State.hasPlayed("event_primrose_after_church")>>
You notice a familiar face as you rise to leave as you spot <<=setup.getNpcName("npc_primrose","first")>> among the congregants.<br>
<br>
[<<moveTo "event_primrose_after_church" "Approach <<him npc_primrose>>." 300>>]<br>
<</if>>
[<<moveTo "location_church_exterior" "Depart." 300>>]
<</if>>
<</if>>
</div>/*#
#desc: cummunion intro
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
/% cummunion_pulpit.png%/
<<createAdvBGR "./images/locations/church_interior_full.png">>
<div id="invframe" class="scrolltext">
You decide to stick around for the second service, moving closer to the front as the congregation collapses to take up the abandoned space.<br>
<br>
The first thing you notice different, in addition to the depleted numbers, is that the nuns are no longer wearing their normal "street" attire — instead each is showing off in full latex splendor, collars, chastity devices and gags all on display as the obedient faithful wait for the service to begin.<br>
<br>
A melodic humming provided by what appears to be a universally gagged nunnish choir provides a pleasant background noise as a pair of nuns approaches the currently unoccupied pulpits at the front of the cathedral. The sides of the pulpits fold away, leaving just the lectern itself above a set of stocks. One at a time the nuns bind themselves under the pulpits. As they face the audience you recognise one of them as your friend <<=setup.getNpcName('npc_acolyte', 'first')>>, her legs locked in place by automatic shackles in a kneeling position.
<<if $npc_acolyte.flags.mtf>>
Her dripping caged member dangles down between her legs, her counterpart at the other pulpit has no such "extra" feature, instead merely leaking equivalent excitement from her shaven lady slit.
<<else>>
Obviously excited her cunt drips slightly, her counterpart at the other pulpit bearing a more "pronounced" faucet with a caged member dangling down.
<</if>>
Twin bowls are positioned to catch each girls' enthusiastic production, <<=setup.getNpcName('npc_acolyte', 'first')>> notices you and flashes a wink, smiling around her gag just as the music swells and the Sisters Superior come into view.
<br><br>
[<<moveTo "event_church_service_advanced_2" "Behold Sisters Superior in full glory." 3600>>]
</div>/*#
#desc: cummunion main
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.church.activities.service[3] == 0>>
<<set $scene.adv_sermon = 'cummunion'>>
<<else>>
<<set $scene.adv_sermon = ['cummunion','sex','bondage','futa'].random()>>
<</if>>
<<set $player.flags.church.activities.service[3] += 1>>
<<set $player.flags.church.cummunion[$scene.adv_sermon] = true>>
<<if $scene.adv_sermon == "cummunion">>
<<applyExperience 'cum' 17 'terrible' $EXPOSED>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $EXPOSED>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'terrible' $EXPOSED>>
<<applyExperience 'bimbofication' 17 'terrible' $EXPOSED>>
<<set $player.timebased.milking.cream_supply = 0>>
<<set $player.timebased.horny = 0>>
<<set $player.timebased.without_orgasm = 0>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior_full.png" setup.charImage("npc_fem_supreme","npc_fem_supreme") setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<div id="invframe" class="scrolltext">
Just as the nuns had shed their outer cloth robes in favour of the fetishistic rubber underneath the two sisters superior have taken it a step further, covered head to toe in latex nun attire, even masked so that the only flesh visible is their beautiful eyes.<br>
<br>
More than their fetishistic clothing — the stringent corset, the steep thigh-high boots, beautiful, full breasts, the shiny habit draping over their shoulders, it is the large latex-sheathed cocks that sprout from their loins. You sit transfixed by every bounce and sway of the women and their glorious members, somehow knowing that, despite being encased in latex, each cock, and the hint of a slit behind, is a flesh and blood part of the high priestess' body.<br>
<br>
Marching forward in unison they stop behind their nun-equipped lecterns, hands-free sliding into the waiting hole of the subject before them, the gagged sisters' eyes rolling back in pleasure,
<<if $npc_acolyte.flags.mtf>>
<<=ps(setup.getNpcName('npc_acolyte', 'first'))>> caged member twitching with delight.
<<else>>
<<=ps(setup.getNpcName('npc_acolyte', 'first'))>> counterpart's caged member twitching with delight.
<</if>>
<br><br>
The two sisters superior begin slowly rocking their hips, rhythmically fucking their respective partners as they begin the sermon.
<<switch $scene.adv_sermon>>
<<case 'cummunion'>>
"@@.npc_fem_supreme;Listen, faithful, to the story of the first holy cummunion.@@"<br>
<br>
"@@.npc_sissy_superior;The followers of the Goddess had seen great fortune, growing from a simple tribe into a small nation, their capital a gathering place for passion and knowledge. Unfortunately such success breeds jealousy, feelings only enhanced by the more prudish, misogynistic beliefs of others. So it came to pass that a neighboring nation declared war upon the followers of the Goddess, rampaging through their lands until the remaining faithful and their allies were pushed back behind the walls of their capital. Though safe behind the stone walls the siege drew on, supplies dwindling steadily with the attackers showing no sign of giving up this final siege of their so-called holy crusade.@@"<br>
<br>
"@@.npc_sissy_superior;Fearfully the people prayed to the Goddess, asking for a blessing, a way for her followers to survive against the vastly more numerous force arrayed against them. Finally their high priestess received a message — they would purify themselves by fasting for two days after which they would take nourishment from their <<if !$options.fem>>male <</if>>allies, the ritual renewing all and re-dedicate them to the Goddess to grant them to strength to sally forth and defeat the enemies arrayed beyond the walls.@@"<br>
<br>
"@@.npc_sissy_superior;What followed was a great challenge, all of the Goddess's people dedicated to purifying themselves while also building towards the planned cummunion. When the day arrived, the air abuzz with anticipation and arousal the harvest would be vast, the cries of satisfied pleasure echoing beyond the city, putting fear into their attackers such that, when the energised followers of the Goddess charged forth from the thrown open main gates their foes were disorganised, breaking formation, fleeing or struck down. By the time the day had ended the siege was broken, the Goddess's people safe and they celebrated greatly.@@"<br>
<br>
<<=setup.getNpcName('npc_fem_supreme', 'formal')>> nods and picks up where her counterpart left off. "@@.npc_fem_supreme;In memory of this occurrence the taking of sacred cummunion became one of our highest rituals, a way to strengthen the bonds within the congregation while simultaneously exulting the Goddess herself.@@"<br>
<br>
The two sisters superior increase their pace, heads tilting back in pleasure as they climax in unison, their charges also achieving orgasm to spill down into the bowls below. Withdrawing in unison, the Sisters Superior peel off their latex cocksheaths, a nun appearing with bowl in hand for them to pour the thick cum out into.<br>
<br>
More nuns appear, moving towards the congregation as <<=setup.getNpcName('npc_sissy_superior', 'formal')>> calls out, "@@.npc_sissy_superior;Come sisters, <<if !$options.fem>>brothers, <</if>>share in the joy of the Goddess and unite your harvest!@@"<br>
<br>
In moments the cathedral becomes a single wide-spread orgy. You look up to see the Sisters Superior, still hard despite their recent climax, reclined, servicing four faithful each as they take a cock in each of their three holes while somehow managing to fuck a final lucky church member.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
It isn't long before you're being "treated" similar to the Sisters Superior — getting fucked in all three of your holes while your own
<<switch $player.body.penissize[0]>>
<<case 0 1>>
member is teased and licked and sucked by the sweetest, most delicate nun.
<<case 2 3>>
<<getWordMyPenis>> is expertly ridden by a very enthusiastic nun.
<<case 4 5>>
<<getWordMyPenis>> thrusts in and out of an orgasmically happy nun who has somehow managed to cram herself in amidst your other partners.
<<case 6>>
<<if $player.body_ref.knot && $player.body_ref.horsecock>>monstrous<<elseif $player.body_ref.knot>>canine<<elseif $player.body_ref.horsecock>>horse<<else>>massive<</if>> cock sees a series of nuns eagerly take their turn with it.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Gasping and moaning around the holy rod between your lips the flurry of sensations below have you cumming explosively and constantly, <<if $player.body.cumProduction>>each load expertly collected by one of the nuns and then delivered to a basin in the front of the cathedral<<else>>each dry orgasm rocking through your body while leaving you hard for more<</if>>.
<<elseif $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
A nun appears, lips spread wide by a ring gag. Your clothing all but falls off as she bends down, threading your <<getWordMyPenis>> through her spread lips and in so doing sheathing you in a thin latex condom.<br>
<br>
The nun moves on to her next subject and you barely have to look around before a fellow church-goer is between your legs. You do not even see their face before their warm lips are wrapped around your <<getWordMyPenis>>. You moan, leaning back in your pew only to find a skirt parted and a rubber-sheathed cock presented to your lips, you hungrily begin to suck, the thin latex doing nothing to diminish the pleasure either of you are feeling.<br>
<br>
Feeling your orgasm approaching you moan around the cock in your mouth, filling the condom only for another nun to appear, peeling it off and sliding another in its place with the same "hands-free" method as she squeezes your <<getWordCum>> into a bowl.<br>
<br>
The cock in your mouth similarly swelling its condom you soon find yourself with two fresh partners, your tongue eagerly licking a delicious cunt while its owner makes out with the other woman riding you.
<<else>>
<<if setup.isCage()>>
Despite your cage a nun appears to wrap a latex sheath over it, smiling at you around her gag as you feel yourself pulled into the embrace of another congregant.
<<else>>
A nun places a strange latex item over your crotch, it seals around the front of your belt against your skin with a valve on the underside.
<</if>>
<br><br>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>Your plug removed you<<else>>You<</if>> feel something sliding into your rear hole, you moan as whatever it is rubs against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> only to find a latex-wrapped cock presented to your lips. You suck eagerly, soon bringing your partner to climax even before you cum yourself.<br>
<br>
Their condom swells and a nun appears to replace it, squeezing the cum into a bowl as a fresh partner appears to present their dripping cunt to your tongue.<br>
<br>
You continue to lick and suck and be fucked, your <<if setup.isCage()>>own condom occasionally refreshed<<else>>collected juices<</if>> as your production is harvested after each caged <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>>.
<</if>>
<<elseif $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage")>>
It isn't long before you're doing your best to keep up — double penetrated below while you lick or suck whatever appears in front of you in the midst of a chain of ecstatic congregants.
<<else>>
You may be locked and belted, but that only makes you more eager to put your rear and lips to their maximum use.
<</if>>
Fucking and sucking and moaning your praise you meld into the sea of flesh with your fellow congregants, each climax a blessing, your coupling an ecstatic offering to the Goddess and one another.
<<else>>
ERROR: unexpected genitals state!
<</if>>
<br><br>
You lose count of orgasms<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>, each time you cum your emission<<else>>as you notice every drop of cum spilled by your fellow congregants is<</if>> gathered up by an almost magically appearing nun as you continue to fuck, and be fucked, by a rotating group of fellow parishioners.<br>
<br>
Starting to feel fully drained you look up as the choir bursts into song, the music drawing attention back to the front of the room as the two Sisters superiors finish off by hand-jerking a final load of cum into a large, VERY full font.<br>
<br>
"@@.npc_sissy_superior;Come, imbibe of the bounty you have given and rejoice!@@"<br>
<br>
Directed by silent nuns, the congregation help one another back to your feet, filing to the front of the room where one of the sisters superior dips a goblet into the font and offers it to drink.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
Practically salivating thanks to the omnipresent scent of cum when you reach the front of the line you drink deep, the mix of dozens of flavours of cum amazing, complex and rich like the finest blended whisky, you smile back at the sister superior as she bows in acknowledgement and motions for you to move on so as the line can continue.
<<else>>
The scent of cum pouring off from the font has you licking your lips in anticipation and you drink deep when the goblet is brought to your lips. The blend of so many <<if $options.fem>>girl's<<else>>people's<</if>> joy is delicious, rich and creamy and you would gladly have another sip, but you are gently moved along so that the next in line can have their turn.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
The smell of cum is heady even before you reach the front of the line, but the taste, even for your modest experience the blend is among the best you have tasted and you take a large gulp smiling back at the sister superior as you savour the marvelous flavour, almost regretting swallowing it as you move along such that the next person in line can approach for their share.
<<else>>
Even before the cup is brought to your lips the smell of <<getWordCum>> is nigh overpowering yet it tastes different than any <<getWordCum>> you have sampled before. There is the same salty bitterness, but somehow the blend of so many people's individual flavours results in something almost... good? Shocked you stand motionless until you are gently moved along such that the line can continue forward.
<</if>>
<</if>>
<br><br>
After the faithful have had their share the nuns line up in rank order, taking their turn one at a time to lick the font and then snowball it to the sister behind, the slimy wad of spunk and saliva continuing down the row until shared with a kiss with their fellow sister until the last in line swallows with delight. The rolling snowball continues until each nun has had their chance and the font sits empty, sparkling and clean.<br>
<br>
Joined hand in hand, their large girl-cocks drained and dangling the two Sisters Superior unite their satiated audience in prayer before bringing the service to a close.
<<case 'sex'>>
"@@.npc_fem_supreme;Sex,@@" <<=setup.getNpcName('npc_fem_supreme', 'formal')>> states, infusing the word with enough lust that you shiver. "@@.npc_fem_supreme;Certainly it is a core part and practice of our faith, both in its indulgence and its denial, but why, you might ask?@@"<br>
<br>
"@@.npc_sissy_superior;Certainly it is pleasurable, the lusty anticipation of an orgasm, the delicious agony of a ruin, even the unfettered joy of climax, all of these are a gift from the Goddess, but there is more.@@"<br>
<br>
"@@.npc_fem_supreme;Of course there are some that say that sex is for procreation. While this is trivially true in the biological sense, we are no mere animals — we are enlightened beings, as free from hewing to mere basal urges as we are from settling for whatever form we are born with.@@"<br>
<br>
"@@.npc_sissy_superior;No, the real joy of sex, and the reason our Goddess has so blessed us, is how it is a pleasure magnified by being shared.@@" Pausing she looks across the congregation, slightly increasing her pace to have her lectern/sex-nun let out a gag-muffled moan to drive home the point.<br>
<br>
"@@.npc_fem_supreme;Let us pray. I want each of you turn to your neighbor and tell them how you would like to fuck, or be fucked by them. Dig deep into your fantasies, whisper quietly or shout to the rooftops, I want you all brimming with arousal and then... then I want you to sit back down and simmer. Denial, too is sacred, for by teasing, arousing, but stopping short of fulfillment we accentuate the resulting climax and hasten when it is repeated.@@"<br>
<br>
You turn to find a somewhat nervous looking <<man>> standing next to you. You half wonder how <<he>> has made it this far into the Goddess's faith as <<he>> is. <<if $options.fem>>You wonder if her time as a lay person is numbered, or if she might be among the few dedicated followers of the Goddess who embrace her without personally becoming a nun<<else>>You wonder if his time as a "man" is numbered, or if he might be among the seemingly rare followers of the Goddess who embrace her femininity without personally being such<</if>>.<br>
<br>
Looking back at you with obvious desire <<he>> says how much <<he>> would love to make love to you, to worship your feminine body as you use <<him>> as your personal sex toy. You smile, replying that you would like that as well, that you would ride <<him>> until the edge of climax and then flip <<him>> over and <<if $player.body_ref.penis>>pound<<else>>peg<</if>> <<him>> until <<he>> came from penetration. <<He>> shudders, trembling as you lean in close and whisper how much <<he>> looks like <<he>> needs to be fucked...
<<case 'bondage'>>
"@@.npc_fem_supreme;Let us speak today about bondage. Many without look upon the church's reverence for bondage as a paradox. After all, we encourage our followers towards freedom, to being their authentic selves and to resisting oppression... and yet within the church bondage and restriction are all but ubiquitous, from the chastity devices locked onto our nuns, to the gags that aid vows of silence, to the levels of restraint employed in meditation and prayer practices, some point to these venerated practices as a contradiction, proof that the church is but another organisation seeking power and control.@@"<br>
<br>
"@@.npc_fem_supreme;The key to this paradox — which is not actually a paradox, is consent. Those of us who bind ourselves to the Goddess, figuratively and literally, do so of our own free will. The church does not wish for prisoners or slaves, but joyous, enthusiastic followers who will not just worship the Goddess, but embody her teachings and be enriched for the effort. Bondage becomes a sacrament, a way to focus, a demonstration of trust and method to remove the distractions of the outside world, to be constantly reminded with every stunted movement of the Goddess's hold upon us... and our devotion to her.@@"<br>
<br>
She pauses, the spectre of pleasant memory passing over her face as she grinds against the pulpit. "@@.npc_fem_supreme;So remember, whether you are bound now, or will be restrained later — do it because you want to, because it brings you pleasure, and brings you closer to the Goddess... and in so doing frees you in other ways. Now, join me in silent prayer as you reflect on what bondage means to you...@@"
<<case 'futa'>>
"@@.npc_fem_supreme;Cocks... certainly they are traditionally associated with the masculine, protruding out, intruding, the implement doing the penetration, entering us. Contrasting with the traditionally feminine act of receiving, a holy act to be sure, but certainly not the whole story.@@"<br>
<br>
"@@.npc_fem_supreme;While the church venerates the feminine, its interpretation of such is broad and accepting, knowing that it reaches far beyond the mere physical form — as delightful as that can be, for sure.@@"<br>
<br>
Stepping back from her "lectern" reveals the full magnificence of her cock as it slides out from her bound subject who shudders at the sudden emptiness.<br>
<br>
In full view she brandishes her cock as she continues. "@@.npc_fem_supreme;While individual followers of the Goddess may take what form they prefer we High Priestess' have an additional duty. The Goddess, with some aided from modern bio-engineering, blesses us with not just the traditional harbingers of femininity, but also with the capacity to act as to penetrate, and thus further serve and enlighten, our congregation. A cock, on its own, can be male or female, it is up to the bearer, but ours is something more, a divine implement, joyously shared with all who are found... worthy.@@"<br>
<br>
At this last word she slams back into her bound subject, the restrained nun's eyes rolling back in ecstatic orgasm.
<<default>>
ERROR unknown advanced sermon <<=$scene.adv_sermon>>
<</switch>>
<br><br>
<<if $scene.adv_sermon == 'cummunion'>>
Trembling slightly with holy lust, and licking your lips to savour the lingering taste of cum your fellow church-goers begin to scatter and you decide it is time for you to be off.
<<else>>
"@@.npc_fem_supreme;Amen,@@" <<=setup.getNpcName('npc_fem_supreme', 'formal')>> states, drawing the prayer to a close before the room can explode into a full orgy of lust. Letting out a soft grunt she and her Sister Superior cum deep in their nuns, pulling out slowly before removing their sheaths to pour the thick loads into a bowl where it mixes with the collected drippings from the two bound nuns.<br>
<br>
"@@.npc_sissy_superior;Come forth, and share in this blessed cummunion,@@" she announces, the two priestess' continuing to stroke and cum into the shared font as you and the other worshippers line up. Somehow there is enough for all of you to get a small taste before the service concludes.<br>
<br>
The congregation begins to scatter and you decide it is time for you to be off.
<</if>>
<br><br>
<<set _themeId = setup.findThemeId('npc_primrose', 'primrose', 'theme_primrose_religion')>>
<<if $player.flags.church.level >= 3 && !State.hasPlayed("event_church_baptism_1_intro_1") && (!$player.body_ref.vagina || $player.virgin.vaginal) && $player.sec_style.sex.sex_woman && setup.getTotalValue("humiliation") >= 20>>
[<<moveTo "event_church_baptism_1_intro_1" "Depart." 300>>]
<<elseif $player.flags.church.level >= 3 && State.hasPlayed("event_sex_club_chastity_finale_3") && !State.hasPlayed("event_porn_convent_demon_intro_1") && (!$player.body_ref.vagina || $player.virgin.vaginal) && $player.sec_style.sex.sex_woman && setup.getTotalValue("humiliation") >= 20>>
[<<moveTo "event_porn_convent_demon_intro_1" "Depart." 300>>]
<<elseif _themeId != -1 && $npc_primrose.themes.primrose[_themeId].done > 0 || $npc_primrose.flags.evil == 1>>
<<if !State.hasPlayed("event_primrose_after_church") && $npc_primrose.flags.evil != 1>>
You notice a familiar face as you rise to leave as you spot <<=setup.getNpcName("npc_primrose","first")>> among the congregants.<br>
<br>
[<<moveTo "event_primrose_after_church" "Approach <<him npc_primrose>>." 300>>]<br>
[<<moveTo "location_church_exterior" "Depart." 300>>]
<<elseif !State.hasPlayed("event_primrose_after_church_alternate") && $npc_primrose.flags.evil == 1>>
[<<moveTo "event_primrose_after_church_alternate" "Depart." 300>>]
<<else>>
[<<moveTo "location_church_exterior" "Depart." 300>>]
<</if>>
<<else>>
[<<moveTo "location_church_exterior" "Depart." 300>>]
<</if>>
</div>/*#
#desc: run into primrose at church
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior_full.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_primrose","first")>> milling among the congregation and making light conversation with some of the other followers. <<he npc_primrose>>'s wearing a white rubber long coat over <<his npc_primrose>> usual plugsuit and a rubberised scarf over <<his npc_primrose>> collar to provide himself a little more formality than <<his npc_primrose>> usual bright attire. <<he npc_primrose>> notices you in the distance and gives an excited wave before making <<his npc_primrose>> way towards you.<br>
<br>
"@@.npc_primrose;Hey <<=$player.first_name>>! I didn't know we went to the same church!@@" You chuckle and nod, adding that the feeling was mutual. You remember having talked to <<=setup.getNpcName("npc_primrose","first")>> about religion before and noting that <<he npc_primrose>> mentioned worshipping in the past tense but not presently. You ask how long he's been attending sermons. "@@.npc_primrose;When I can~. I frequent every place with cute rubber outfits and whips as often as I can~. Obviously work keeps me super busy but I like to slip out when I can. I used to spend a lot more time here but—@@"<br>
<br>
Something seems to flicker behind <<his npc_primrose>> eyes that stops <<him npc_primrose>> from talking more about the subject. <<he npc_primrose>> shakes <<his npc_primrose>> head, rattling whatever thought it was away. "@@.npc_primrose;Sorry, I just remembered that I need to get back to the office. It's great seeing you!@@"<br>
<br>
You wave awkwardly as <<=setup.getNpcName("npc_primrose","first")>> hails a rideshare. You wonder what that was about.<br>
<br>
[<<moveTo "location_church_exterior" "Depart." 300>>]
</div>/*#
#desc: run into primrose at church again
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess Exterior">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_exterior.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You step out of the chapel and feel the cool air on your face. You close your eyes and collect yourself for a moment before looking around. To your surprise, you spot a familiar head of pink hair. <<=setup.getNpcName("npc_primrose","first")>> is among the congregation, listening silently to one of the nuns talk. <<he npc_primrose>> is wearing a black rubber long coat over <<his npc_primrose>> already black bodysuit as well as a black rubber scarf around <<his npc_primrose>> heavy white collar. <<his npc_primrose>> expression is focused and difficult to read.<br>
<br>
When the conversation is over, <<he npc_primrose>> starts walking towards you. You're unsure what to expect from <<him npc_primrose>> but are met with a simple "@@.npc_primrose;<<=$player.first_name>>@@" as <<he npc_primrose>> walks past you and enters the rideshare line.<br>
<br>
Huh...<br>
<br>
[<<moveTo "event_primrose_after_church_alternate_2" "Follow <<him npc_primrose>>." 60>>]
</div>/*#
#desc: follow primrose at church
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess Exterior">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_exterior.png" setup.getPrimroseImage("evil")>>
<div id="invframe" class="scrolltext">
You quickly move to take the spot behind <<=setup.getNpcName("npc_primrose","first")>>. <<he npc_primrose>> notices you immediately and turns to face you. You expect <<him npc_primrose>> to turn you away but... <<he npc_primrose>> doesn't. <<he npc_primrose>> turns back towards the front of the line in quiet contemplation before finally speaking up,<br>
<br>
"@@.npc_primrose;It was a good sermon. I'm glad we could both hear it.@@" You nod awkwardly, taking a step forward when <<he npc_primrose>> does. <<he npc_primrose>> stands silently for another moment, staring forward. <<his npc_primrose>> visor flickers every so often, words and images moving faster than you can process them. "@@.npc_primrose;I am blessed that I could keep these outings in my routine after my re-assignment. They mean a lot to me.@@"<br>
<br>
You nod, though the wheels in your head are turning. You had figured that the reprogramming would make <<=setup.getNpcName("npc_primrose","first")>> even more loyal to <<=setup.getNpcName("npc_boss","formal")>> but this doesn't align with that notion. Is <<he npc_primrose>> simply loyal to the company, no matter who is at the top? Or was <<=setup.getNpcName("npc_boss","formal")>> so detached from the scientist's reprogramming that <<he npc_boss>> chose a generalised drone worker routine instead of something more tailored?<br>
<br>
You are nearing the front of the line. <<=setup.getNpcName("npc_primrose","first")>> looks at you for one silent moment, gauging if you are planning on sharing a rideshare with <<him npc_primrose>>. You shake your head; <<he npc_primrose>> nods in understanding. "@@.npc_primrose;Enjoy the rest of your weekend. I expect you to be refreshed when you return to work on Monday.@@" And with that, <<he npc_primrose>> is gone...<br>
<br>
[<<moveTo "location_church_exterior" "Continue." 300>>]
</div>/*#
#desc: npc_nun_constance and npc_nun_patience thank you for battle and offer massage
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance") setup.charImage("npc_nun_patience")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_priest', 'formal')>> leads you to a private room where you wait for but a few moments before <<=setup.getNpcName('npc_nun_constance', 'formal')>> and <<=setup.getNpcName('npc_nun_patience', 'formal')>> enter the room in full holy regalia. You can't help but take a moment of awe and reflect on the contrast between their current outfits and their battle attire; <<=setup.getNpcName('npc_nun_patience', 'formal')>> no longer restrained, but looking dominantly imposing, her outfit adorned with spikes and a cape-like robe, <<=setup.getNpcName('npc_nun_constance', 'formal')>>, on the other hand, sporting attachment points that all but call out for restraints.<br>
<br>
"@@.npc_nun_patience;First off, thank you for the match, you were a worthy foe, and an honourable opponent.@@" <<=setup.getNpcName('npc_nun_patience', 'formal')>> states as <<=setup.getNpcName('npc_nun_constance', 'formal')>> curtsys in assent. "@@.npc_nun_patience;As for today, well... we wanted to invite you to join us in guided meditation and massage. Though it may be some time since our match anyone who has trained as hard as you have could certainly benefit from a massage at most any time, and it would be cleansing to share a touch in kindness, rather than competition.@@"<br>
<br>
[<<moveTo "event_church_post_fight_2" "A massage sounds great." 1800 "<<set $scene.massage=true>>">>]<br>
[<<moveTo "event_church_post_fight_2" "Decline their offer." 180 "<<set $scene.massage=false>>">>]
</div>/*#
#desc: npc_nun_constance and npc_nun_patience administer massage
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.massage>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance") setup.charImage("npc_nun_patience")>>
<div id="invframe" class="scrolltext">
<<if $scene.massage>>
You accept <<=ps(setup.getNpcName('npc_nun_constance', 'formal'))>> offer and she leads you onto a platform, helping you out of your clothes and laying you face-down.<br>
<br>
The two nuns begin softly chanting as <<=setup.getNpcName('npc_nun_patience', 'formal')>> steps up onto the platform... and begins walking over you. You gasp, the pressure of her ashiatsu almost immediately releasing tension in your back, the sensation of relaxation spreading as she continues to move, her feet as tender and relieving now as they had been dangerous and punishing during your match.<br>
<br>
As you sink into a state of relaxation <<=setup.getNpcName('npc_nun_constance', 'formal')>> brings her hands into the party, anointing you with oils as her fingers massage your smaller muscles while <<=setup.getNpcName('npc_nun_patience', 'formal')>> continuing her delightful pacing. From your feet, working up your legs, then your hands to your shoulders, and finally your neck and scalp. Your tension melts away to the whispered chanting of the words of the Goddess...<br>
<br>
[<<moveTo "event_church_post_fight_3" "Continue." 1800>>]
<<else>>
You thank the nuns for their offer, but reply that you aren't in the mood for a massage just now.<br>
<br>
"@@.npc_nun_patience;Of course, Sister,@@" <<=setup.getNpcName('npc_nun_patience', 'formal')>> replies. "@@.npc_nun_patience;Perhaps some other day. May the Goddess smile upon you until we meet again.@@"<br>
<br>
[<<moveTo "event_church_root" "Leave the room." 120>>]
<</if>>
</div>/*#
#desc: npc_nun_constance and npc_nun_patience complete massage
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -100>>
<<applyFatigue -100>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance") setup.charImage("npc_nun_patience")>>
<div id="invframe" class="scrolltext">
Thanks to the words, hands, and feet of the two nuns you drift into a state of nigh total relaxation, tension, strains, stress and turmoil melting away, and you drift somewhere between consciousness and sub-space for a glorious, timeless period until the chanting stops and <<=setup.getNpcName('npc_nun_patience', 'formal')>> welcomes you back to reality.<br>
<br>
"@@.npc_nun_patience;The Goddess' blessings be upon you,@@" <<=setup.getNpcName('npc_nun_patience', 'formal')>> states, her words echoed by her partner as they stand side by side and help you back to your feet.<br>
<br>
You feel tingly with excitement as they help you dress, your clothes... everything, really, feeling lighter as you revel in the sensation of being touched by the Goddess... or at least, her followers.<br>
<br>
You struggle to find the words to thank the two nuns, but from the look in their eyes they know exactly that which you fail to articulate, a skill developed due to the number of their fellow sisters who are gagged, perhaps.<br>
<br>
"@@.npc_nun_constance;The pleasure was ours in the giving, service is such blessed reward...@@"<br>
<br>
[<<moveTo "event_church_post_fight_4" "Ask if you might return the favour?" 1800>>]<br>
[<<moveTo "event_church_root" "Thank them and leave." 120 '<<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: sexytimes after massage
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<gainWillpower 3>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_group_prayer.png" setup.charImage("npc_nun_constance","npc_nun_constance_naked") setup.charImage("npc_nun_patience","npc_nun_patience_naked")>>
<div id="invframe" class="scrolltext">
You are still riding a blessed high from the sensuous massage as you ask to "return the favour." A smile is all it takes, and soon the nuns are joining you in nudity, bodies pressed against one another as you unite in a special sort of love-making. Not the love-making born of fornication and the breeding instinct, but a transcendent, Goddess-fueled coupling that extends across your whole body. Lips meet and fingers entwine as every part of your body becomes an erogenous zone, the energy between you and the two nuns swirling, the line between dominance and submission blurring as you serve <<=setup.getNpcName('npc_nun_patience', 'formal')>> who serves <<=setup.getNpcName('npc_nun_constance', 'formal')>> who serves you... and all of you doing so in service to the Goddess herself.<br>
<br>
If the massage had refreshed you body and mind, this refreshes your very soul... and then the nuns are helping you dress, silent parting smiles shared as you wordlessly thank them once more, and then continue on your way.<br>
<br>
[<<moveTo "event_church_root" "Depart." 120 '<<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: introduced to helping npc_nun_unity
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest") "npc_nun_unity_modest">>
<div id="invframe" class="scrolltext">
"@@.npc_priest;Indeed! <<=setup.getNpcName('npc_nun_unity', 'formal')>> is always busy with her ministrations and would certainly love for some assistance.@@"<br>
<br>
You follow <<=setup.getNpcName('npc_priest', 'formal')>> summons <<=setup.getNpcName('npc_nun_unity', 'formal')>> and she greets you with a smile.<br>
<br>
"@@.npc_priest;<<=setup.getNpcName('npc_nun_unity', 'formal')>>! Sister <<=$player.first_name>> was just offering herself to spread the Goddess' glory. I, of course, thought of you.@@"<br>
<br>
<<=setup.getNpcName('npc_nun_unity', 'formal')>> smiles at you. "@@.npc_nun_unity;Such a delight to hear, and I would certainly welcome the company in following in the Goddess' footsteps... I would warn you, however. The road I walk is far from an easy one. Overcoming such challenges brings great glory... and satisfaction... but the journey can be quite the intense one. Still, if you wish to walk it with me, I would gladly have you join. Note that, as in all things, you may turn from the path at any time... should it prove too much for you.@@"<br>
<br>
[<<moveTo "event_nun_unity_1" 'Agree to accompany <<=setup.getNpcName("npc_nun_unity", "formal")>>.' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_nun_unity_1" 'Maybe not today.' 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: agree to help nun_unity
#status: RELEASED 0.9.4.0
#ignore_spell: benison
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest") "npc_nun_unity_modest">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName('npc_nun_unity', 'formal'))>> offer and she smiles. "@@.npc_nun_unity;Wonderful <<if setup.checkItemSetWorn("nun_fetish") && setup.checkItemSetWorn("nun_public")>>, and I see you are already dressed for the occasion. Those blessed robes look quite gorgeous upon you... and beneath I sense you wear the even more sacred raiments. Come, it is time to go.<<elseif setup.checkItemSetWorn("nun_public")>>, those blessed robes look quite gorgeous upon you... but I sense that you are not wearing their more sacred like beneath. Come, let us complete your outfit that we may commence our ministries.<<elseif setup.checkItemSetWorn("nun_fetish")>>, those sacred garments look positively divine... would that we could wear such at all times but, alas, the world is not ready for such benison, and we are to venture into the public world. We must shield ourselves for the sake of the... less enlightened. Come, let us complete your outfit that we may commence our ministries.<<elseif setup.checkItemTagWorn('nun') > 0>>, your wearing of some of our holy garments is lovely... but the ensemble is far from complete. Come, let us complete your outfit that we may commence our ministries.<<else>>Come, let us get you dressed for the occasion.<</if>>@@"<br>
<br>
<<if setup.checkItemSetWorn("nun_fetish") && setup.checkItemSetWorn("nun_public")>>
[<<moveTo "event_nun_unity_3" 'Follow her.' 300>>]<br>
<<else>>
[<<moveTo "event_nun_unity_2" 'Get changed.' 300>>]<br>
<</if>>
[<<moveTo "event_nun_unity_1" 'Actually... you do not want to do this today.' 300 "<<set $scene.accept=false>>">>]
<<else>>
You change your mind about joining <<=setup.getNpcName('npc_nun_unity', 'formal')>> and she bows. "@@.npc_nun_unity;Some other time, perhaps.@@" She states before walking away.<br>
<br>
The <<if $npc_priest.fem>>priestess<<else>>priest<</if>> looks at you to see if you have anything else.<br>
<br>
[<<moveTo "event_church_work_root" 'Ask about other work.' 60>>]<br>
[<<moveTo "event_church_root" "Say you changed your mind, go do something else." 300>>]
<</if>>
</div>/*#
#desc: dress to help npc_nun_unity
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'nun_fetish'>>
<<addItemSet 'nun_public'>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest") "npc_nun_unity_modest">>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_nun_unity', 'formal')>> into one of the church's changing rooms where she provides you with a full nun's outfit, including both the outer, public robes, and the far more sacred, and secure, under-raiments.<br>
<br>
"@@.npc_nun_unity;Change quickly, Sister, that we may depart and commence spreading the Goddess' light unto the world.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_nun_unity_3" 'Get changed.' 300 "<<removeAllClothing>><<wearItemSet 'nun_fetish'>><<wearItemSet 'nun_public'>>">>]<br>
<</if>>
[<<moveTo "event_nun_unity_abort" 'Actually... you do not want to do this today.' 300 "<<set $scene.lateAbort=false>>">>]
</div>/*#
#desc: finish dressing to help npc_nun_unity
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest") "npc_nun_unity_modest">>
<div id="invframe" class="scrolltext">
Both dressed in full top to bottom church finery, <<=setup.getNpcName('npc_nun_unity', 'formal')>> smiles at you one final time... and present you with one of the church's panel gags, designed to silence a practitioner, while remaining secretly concealed beneath one of the church's hoods.<br>
<br>
"@@.npc_nun_unity;As you are not a fully ordained member of our order you are unprepared to speak with members of the public. To ensure this temporary vow of silence you will wear this blessed accessory for today's journey. Come, the Goddess' task awaits.@@"<br>
<br>
[<<moveTo "event_nun_unity_4" 'Accept the gag.' 300 "<<addItem 'gag_church'>><<wearItem 'gag_church' true>>">>]<br>
[<<moveTo "event_nun_unity_abort" 'Actually... you do not want to do this today.' 300 "<<set $scene.lateAbort=false>>">>]
</div>/*#
#desc: abort helping npc_nun_unity
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.gagged = setup.checkItemWorn("gag_church")>>
<<if $scene.gagged>>
<<removeItem "gag_church" true>>
<<deleteItem "gag_churc">>
<</if>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest") "npc_nun_unity_modest">>
<div id="invframe" class="scrolltext">
You change your mind and communicate to <<=setup.getNpcName('npc_nun_unity', 'formal')>> that you wish to end today's efforts. She does not argue with you, instead merely smiling and nodding, a bare hint of sorry in her voice. "@@.npc_nun_unity;Of course, Sister. As I noted before, mine is a difficult road. Perhaps some other day you will bless me by walking it with me... or perhaps not. Such things only the Goddess knows.@@"<br>
<br>
<<if $scene.lateAbort>>
<<=setup.getNpcName('npc_nun_unity', 'formal')>> takes you back to the church where, after removing your gag, she releases you and returns to her other duties.
<<elseif $scene.gagged>>
<<=setup.getNpcName('npc_nun_unity', 'formal')>> removes your gag and release you and leaves to resume her other duties.
<<else>>
<<=setup.getNpcName('npc_nun_unity', 'formal')>> release you and leaves to resume her other duties.
<</if>>
[<<moveTo "event_church_root" "Look around the church." 60>>]
</div>/*#
#desc: transit with npc_nun_unity
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Train">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/train.png" setup.charImage("npc_priest") "npc_nun_unity_modest">>
<div id="invframe" class="scrolltext">
Gagged and dressed inside and out in blessed finery, you follow after <<=setup.getNpcName('npc_nun_unity', 'formal')>> as the two of you leave the church and board a nearby train across the city.<br>
<br>
You feel the eyes of fellow passengers upon you as you ride in silence. Occasionally a member of the public will approach, and <<=setup.getNpcName('npc_nun_unity', 'formal')>> always has a kind word and a gentle smile, while your enforced vow of silence has you able only to nod in polite acknowledgement.<br>
<br>
Though you travel far across the city, the train ride is swift and efficient, and soon you and <<=setup.getNpcName('npc_nun_unity', 'formal')>> are rising to your feet and making your way across the station. You note that this is the stop for the Arcadia Zoo... and you start to have a suspicion what sort of "challenging ministrations" <<=setup.getNpcName('npc_nun_unity', 'formal')>> specialises in.<br>
<br>
[<<moveTo "event_nun_unity_5" 'Follow her into the zoo.' 300>>]<br>
[<<moveTo "event_nun_unity_abort" 'Actually... you do not want to do this today.' 300 "<<set $scene.lateAbort=true>>">>]
</div>/*#
#desc: arrive at zoo with npc_nun_unity
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" "npc_nun_unity_modest" _TODOzookeeper>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_nun_unity', 'formal')>>, one of the zoo staff quietly leads the two of you into one of the back areas.<br>
<br>
"@@.generic_female2;Your visit is appreciated, as always <<=setup.getNpcName('npc_nun_unity', 'formal')>>,@@" the staff members states as they lead you through a winding maze of closed-to-the-public corridors used to care for and transport animals. "@@.generic_female2;I see you brought another Sister, welcome Sister...?@@"<br>
<br>
"@@.npc_nun_unity;Sister <<=$player.first_name>> is yet an acolyte, and thus is bound to a vow of silence. Still, her passion and faith are intense, and I am sure she will be a lovely assistant in todays work.@@"<br>
<br>
"@@.generic_female2;Anyone you vouch for, really... the Goddess must have been working her mysterious ways, then given that this is Sister <<=ps($player.first_name)>> first time as, today's task is one of the more simple ones, well... comparatively.@@" The attendant explains as you round the corner... and find yourself facing a small enclosure containing a Zebra...<br>
<br>
[<<moveTo "event_nun_unity_6" "So that's what we're... or, I suppose... I am doing..." 300>>]<br>
[<<moveTo "event_nun_unity_abort" 'Actually... you do not want to do this today.' 300 "<<set $scene.lateAbort=true>>">>]
</div>/*#
#desc: npc_nun_unity explains task
#status: RELEASED 0.9.4.0
#ignore_spell: clonal
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" "npc_nun_unity_modest" _TODOzookeeper>>
<div id="invframe" class="scrolltext">
Though slightly surprised, you do not balk as <<=setup.getNpcName('npc_nun_unity', 'formal')>> turns to you with a smile. "@@.npc_nun_unity;As you have likely deduced, my chosen mission to serve the Goddess is focused on her less human subjects. To couple with such a creature... well... it is a blessedly intense feeling. Such power, such wild majesty... but I do not need to sell you on it, no?@@" She states with a twinkle in her eye.<br>
<br>
<<printThought "No... I guess not... still, I haven't fucked a zebra before...">><br>
<br>
"@@.npc_nun_unity;The church has an arrangement to allow us to share in the Goddess' blessings with some of their animals, and by our efforts we are able to safely, and humanely, harvest genetic material for their clonal breeding and repopulation programs. We humans have done such damage to the natural world... here we do a small part in paying things back, both to the individual animal and, hopefully, to help perpetuate their species for future generations.@@"<br>
<br>
"@@.generic_female2;A bit more eloquent than I can put it... but yeah. The more crass summary is that you wear a special plug... and fuck one of our animals, thus efficiently harvesting <<if $fetish.cum>>cum<<else>>genetic material<</if>> for our breeding program.@@" The woman smiles as she produces a quite sizable plug. "@@.generic_female2;So which hole will you be making an offering with, today?@@"<br>
<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<if setup.canSexOrRemoveChastity("vag")>>
[<<moveTo "event_nun_unity_7" 'Unlock and offer your vagina.' 300 "<<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your vagina is secured and unavailable to offer.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_nun_unity_7" 'Offer your vagina.' 300 "<<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_nun_unity_7" 'Offer your ass.' 300 "<<set $scene.anal=true>>">>]<br>
[<<moveTo "event_nun_unity_abort" 'Actually... you do not want to do this today.' 300 "<<set $scene.lateAbort=true>>">>]
</div>/*#
#desc: npc_nun_unity: zebra sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'nun_public'>>
<<if $scene.anal>>
<<addItem 'sample_plug'>>
<<wearItem 'sample_plug' true>>
<<else>>
<<addItem 'sample_vag_plug'>>
<<wearItem 'sample_vag_plug' true>>
<</if>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" "npc_nun_unity_modest" _TODOzebra>>
<div id="invframe" class="scrolltext">
You remove your outer robes and start to remove more when the nun shakes her head. "@@.npc_nun_unity;You are in the presence of the Goddess and the wild, wear her raiments proudly. They are designed to handle all manner of toil and fluids... and the animals have been trained to recognise it, and act appropriately.@@"<br>
<br>
You nod and
<<if $scene.anal>>
present your rear for the anal plug to be slid into place.
<<else>>
<<if $scene.removeCage>>
remove your belt and
<</if>>
spread your legs for the vaginal plug to be slid into place.
<</if>>
Now "equipped" you follow <<=setup.getNpcName('npc_nun_unity', 'formal')>> as she leads the way into the pen. The two of you stand before the Zebra and it stares... only for <<=setup.getNpcName('npc_nun_unity', 'formal')>> to bow in greeting... and the creature to position itself near a convenient rock, its forelegs resting higher than its rear, the rock perfectly positioned for you to move under the creature... and accept its large, hard cock...<br>
<br>
<<printThought "Well, I've handled horse... this isn't so different, right?">><br>
<br>
[<<moveTo "event_nun_unity_8" 'May the Goddess bless this coupling...' 1800>>]<br>
[<<moveTo "event_nun_unity_abort" 'Actually... you do not want to do this today.' 300 "<<set $scene.lateAbort=true>>">>]
</div>/*#
#desc: npc_nun_unity: zebra sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 11 'very' $SEEN_STRANGER>>
<<if $scene.anal>>
<<applyExperience 'anal' 11 'very' $SEEN_STRANGER>>
<</if>>
<<playerOrgasm>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" "npc_nun_unity_modest" _TODOzebra>>
<div id="invframe" class="scrolltext">
You move into position between the Zebra. It is not quite as large as a horse... but the smell is different, the look in its eye. Though it may be following directions now, this is no tame creature, but a beast of the wild.<br>
<br>
You moan as its cock enters your <<if $scene.anal>>ass<<else>>cunt<</if>>, the plug you wear stretching in accommodation... and making the already large cock feel even larger... just the way you like it.<br>
<br>
The first stroke is slow, almost skittish, but once the Zebra's balls first slap against <<if $scene.anal>>your ass<<else>>you<</if>> it is off to the proverbial races. There is a loud braying in your ear as the zebra fucks you with enthusiasm, its speed unlike any horse you have been with, even if its power and girth are, perhaps, not quite as significant.<br>
<br>
As the pleasure spreads outward from your <<if $scene.anal>>rear<<else>>loins<</if>> you feel a sense of tranquility descend. Glancing to the side you see <<=setup.getNpcName('npc_nun_unity', 'formal')>> softly chanting over you, blessing you<<if $fetish.cum>> and calling forth for a great bounty to be bestowed upon, or rather, within, you<</if>>.<br>
<br>
Perhaps reaction to the words... or the will of the Goddess... or just its instincts... the zebra brays louder and increases its pace, fucking you hard against the stone, momentarily reclaiming you for the natural world, placing you back in the cycle of life and rebirth... as it <<if $fetish.cum>>pumps you full of cum<<else>>climaxes<</if>> and you cry out in ecstatic unison, your gag making your words like unto the beast as you both howl in joy.<br>
<br>
The beast stays rooted within you for several long moments... and then it slides free<<if $fetish.cum>>, the base of your plug making an odd sound as it closes behind, sealing in your "prize." <<else>>. <</if>>The beast trots away and <<=setup.getNpcName('npc_nun_unity', 'formal')>> offers you a hand.<br>
<br>
[<<moveTo "event_nun_unity_9" '<<=setup.getNpcName("npc_nun_unity", "formal")>> helps you to your feet.' 900>>]
</div>/*#
#desc: npc_nun_unity: post-zebra sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal>>
<<removeItem 'sample_plug' true>>
<<deleteItem 'sample_plug'>>
<<else>>
<<removeItem 'sample_vag_plug' true>>
<<deleteItem 'sample_vag_plug'>>
<</if>>
<<wearItemSet "nun_public">>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" "npc_nun_unity_modest" _TODOzookeeper>>
<div id="invframe" class="scrolltext">
You rise with a lingering spark within you, the Goddess' blessing, perhaps... or maybe just the joy of a job well-done.<br>
<br>
You follow <<=setup.getNpcName('npc_nun_unity', 'formal')>> out of the pen where she gently removes your plug and hands it over to the grateful attendant.<br>
<br>
"@@.generic_female2;Well done, as always, and thank you for your first contribution, Sister <<=$player.first_name>>, I believe it was?@@"<br>
<br>
You nod... but the attendant is already hurrying to transfer the contents of the plug to a more secure container.<br>
<br>
<<=setup.getNpcName('npc_nun_unity', 'formal')>> has you dress in your concealing over-garments once more, by which time the attendant is ready to lead you back through the maze and out of the zoo.<br>
<br>
On your way out you notice a somewhat scuffed sign stating "Human Breeding Program." <<printThought "Surely that has to be a typo, or someone scraped off a letter as a joke and it's meant to be Humane?... right?">><br>
<br>
The joy in your heart persists through the train-ride back to the church... there seem to be more people staring at you than the other direction... perhaps it is the Goddess flame burning behind your eyes?... or maybe it's the lingering scent of what you just did.<br>
<br>
[<<moveTo "event_nun_unity_10" 'You soon arrive back at the Church of the Goddess.' 300>>]
</div>/*#
#desc: npc_nun_unity: finish first job
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'gag_church'>>
<<deleteItem 'gag_church' true>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" "npc_nun_unity_modest" _TODOzebra>>
<div id="invframe" class="scrolltext">
Back at the church <<=setup.getNpcName('npc_nun_unity', 'formal')>> removes your gag and thanks you with a kiss. "@@.npc_nun_unity;You were glorious today. Should you ever wish to commune with the Goddess in this way again, speak with <<=setup.getNpcName('npc_priest', 'formal')>>. One never knows what the Goddess has in store, and some beasts require mighty skills indeed... but the rewards for those who brave them are mightier still, yes?@@" You nod and the nun walks away, leaving you in privacy of the small side room to change.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_church_root" "Leave the changing room." 30>>]
<<else>>
[@@.link_locked;You are not sufficiently dressed to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: npc_nun_unity repeatable
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _animals = []>>
<<if !State.hasPlayed("event_nun_unity_repeat_4_bear_1") && setup.getTotalValue("strength") >= 20>>
<<set _animals.push("bear")>>
<</if>>
<<if !State.hasPlayed("event_nun_unity_repeat_4_gorilla_1")>>
<<set _animals.push("gorilla")>>
<</if>>
<<if !State.hasPlayed("event_nun_unity_repeat_4_tiger_1") && setup.getTotalValue("bdsm") >= 20>>
<<set _animals.push("tiger")>>
<</if>>
<<if !State.hasPlayed("event_nun_unity_repeat_4_dolphin_1") && setup.getTotalValue("stamina") >= 20>>
<<set _animals.push("dolphin")>>
<</if>>
<<if !State.hasPlayed("event_nun_unity_repeat_4_python_1") && setup.getTotalValue("dexterity") >= 20>>
<<set _animals.push("python")>>
<</if>>
<<if !State.hasPlayed("event_nun_unity_repeat_4_elephant_1") && setup.getTotalValue("anal") >= 20>>
<<set _animals.push("elephant")>>
<</if>>
<<if !State.hasPlayed("event_nun_unity_repeat_4_octopus_1") && $fetish.tentacles>>
<<set _animals.push("octopus")>>
<</if>>
<<if _animals.length == 0>>
<<set _animals = ["bear", "dolphin", "python", "elephant", "tiger"]>>
<<if $fetish.tentacles>>
<<set _animals.push("octopus")>>
<</if>>
<</if>>
<<set $scene.animal = _animals.random()>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_unity_modest">>
<div id="invframe" class="scrolltext">
You, again, ask to accompany <<=setup.getNpcName('npc_nun_unity', 'formal')>> in her ministries and <<=setup.getNpcName('npc_priest', 'formal')>> summons the nun.<br>
<br>
"@@.npc_nun_unity;The Goddess' blessings be upon you, Sister <<=$player.first_name>>, are you ready to accompany me in spreading her divine will through the world? The Goddess whispers to me and describes
<<switch $scene.animal>>
<<case 'bear'>>
a great, strong beast
<<case 'gorilla'>>
a creature of powerful contrasts
<<case 'dolphin'>>
a sleek beast from beneath the waves
<<case 'python'>>
a beast coiled and patient
<<case 'tiger'>>
a most cunning beast
<<case 'elephant'>>
the greatest and most mighty of beasts
<<case 'octopus'>>
an intelligent, flexible creature reaching forth with many arms
<<default>>
ERROR: unexpected scene.animal <<=$scene.animal>>
<</switch>>
awaiting our assistance.@@"<br>
<br>
<<printThought "A bit cryptic, that...">><br>
<br>
[<<moveTo "event_nun_unity_repeat_2" 'Agree to once again accompany <<=setup.getNpcName("npc_nun_unity", "formal")>> on her ministry to the zoo.' 300>>]<br>
[<<moveTo "event_nun_unity_1" 'Maybe not today.' 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: nun_unity: change and transit
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Train">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/train.png" "npc_nun_unity_modest">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemSetWorn("nun_fetish") && setup.checkItemSetWorn("nun_public")>>
You are fully dressed for the occasion... save for a gag. Once <<=setup.getNpcName("npc_nun_unity", "formal")>> has ensured your vow of silence
<<else>>
<<=setup.getNpcName("npc_nun_unity", "formal")>> has you change, dressing you in the layers of sacred garments that both mark you as a nun of the Goddess, and protect you from the ignorant eyes of the public. A holy gag is last to ensure your vow of silence and then
<</if>>
the two of you depart by train for the Arcadia Zoo... and its menagerie of opportunity.<br>
<br>
[<<moveTo "event_nun_unity_repeat_3" 'Agree to once again accompany <<=setup.getNpcName("npc_nun_unity", "formal")>> on her ministry to the zoo.' 300>>]<br>
[<<moveTo "event_nun_unity_1" "Actually... you aren't ready for this today." 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: npc_nun_unity: repeat arrive at zoo
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" "npc_nun_unity_modest" _TODOzookeeper>>
<div id="invframe" class="scrolltext">
You arrive at the zoo where, again, an attendant collects you and leads you through the maze of back corridors to come an enclosure containing the day's subject —
<<switch $scene.animal>>
<<case 'bear'>>
a magnificent brown bear, its fur thick and its head wide, you shiver in anticipation of how it will feel to be with such a beast.
<<set _dest = "event_nun_unity_repeat_4_bear_1">>
<<if false>><<moveTo "event_nun_unity_repeat_4_bear_1">><</if>>
<<case 'gorilla'>>
a wide-shouldered silver-back gorilla, its arms the size of your waist, looking mighty as it stalks around the enclosure.
<<set _dest = "event_nun_unity_repeat_4_gorilla_1">>
<<if false>><<moveTo "event_nun_unity_repeat_4_gorilla_1">><</if>>
<<case 'dolphin'>>
a sleek dolphin. It glides through the water and does a little jump in greeting.
<<set _dest = "event_nun_unity_repeat_4_dolphin_1">>
<<if false>><<moveTo "event_nun_unity_repeat_4_dolphin_1">><</if>>
<<case 'python'>>
a massive python, the large snake draped over a low-hanging tree branch.
<<set _dest = "event_nun_unity_repeat_4_python_1">>
<<if false>><<moveTo "event_nun_unity_repeat_4_python_1">><</if>>
<<case 'tiger'>>
a gorgeous tiger, the large cat relaxing and looking both dangerous, and alluring for a moment before walking into the tall grass and fading out of sight.
<<set _dest = "event_nun_unity_repeat_4_tiger_1">>
<<if false>><<moveTo "event_nun_unity_repeat_4_tiger_1">><</if>>
<<case 'elephant'>>
an elephant, its massive cock swigging down, the largest you have ever seen.
<<set _dest = "event_nun_unity_repeat_4_elephant_1">>
<<if false>><<moveTo "event_nun_unity_repeat_4_elephant_1">><</if>>
<<case 'octopus'>>
a large octopus, its many arms coiled up as it perches near the glass, staring at you with intelligent eyes.
<<set _dest = "event_nun_unity_repeat_4_octopus_1">>
<<if false>><<moveTo "event_nun_unity_repeat_4_octopus_1">><</if>>
<<default>>
ERROR: unexpected scene.animal <<=$scene.animal>>
<</switch>>
The attendant presents you with a plug.<br>
<br>
"@@.generic_female2;And how will Sister <<=$player.first_name>> be offering herself today?@@"<br>
<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<if setup.canSexOrRemoveChastity("vag")>>
[<<moveTo _dest 'Unlock and offer your vagina.' 900 "<<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your vagina is secured and unavailable to offer.@@]<br>
<</if>>
<<else>>
[<<moveTo _dest 'Offer your vagina.' 900 "<<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo _dest 'Offer your ass.' 900 "<<set $scene.anal=true>>">>]<br>
[<<moveTo "event_nun_unity_abort" 'Actually... you do not want to do this today.' 300 "<<set $scene.lateAbort=true>>">>]
</div>/*#
#desc: npc_nun_unity repeat: bear sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'nun_public'>>
<<if $scene.anal>>
<<applyExperience 'anal' 18 'very' $SEEN_STRANGER>>
<<addItem 'sample_plug'>>
<<wearItem 'sample_plug' true>>
<<else>>
<<addItem 'sample_vag_plug'>>
<<wearItem 'sample_vag_plug' true>>
<</if>>
<<applyExperience 'bestiality' 11 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" _TODObear>>
<div id="invframe" class="scrolltext">
Plugged and ready, you walk into the enclosure and approach the bear. It looks you over... and then rises to its feet, looming over you for a moment as if to remind you of just how large and powerful it is... and then it pulls you in for a hug. It does not squeeze particularly hard... but it is more than enough to pin your arms to your side as it plants you on the ground... and its cock slides into <<if $scene.anal>>your ass<<else>>you<</if>>.<br>
<br>
You moan and shudder. While not the largest you have ever had, the bear is more than a challenge as it pins you to the ground beneath its heavy, furry body. You recall reading once that bears are one of the animals that actually has a bone in their penis... and its purpose becomes immediately apparent, the beast remaining totally rigid inside you even as it frequently grunts<<if $fetish.cum>>... and pumps you full of cum<<else>> in orgasm<</if>>.<br>
<br>
Continuing to thrust you're practically burning up... both from the heat of the furry blanket on top of you... and the continued pounding as the beast growls and thrusts, taking its full pleasure before, almost casually wandering away, leaving you panting in a heap<<if $fetish.cum>>, as your plug closes to seal in its payload<</if>>.<br>
<br>
[<<moveTo "event_nun_unity_repeat_5" "Goddess!" 300>>]
</div>/*#
#desc: npc_nun_unity repeat: gorilla sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'nun_public'>>
<<if $scene.anal>>
<<addItem 'sample_plug'>>
<<wearItem 'sample_plug' true>>
<<applyExperience 'anal' 1 'very' $SEEN_STRANGER>>
<<else>>
<<addItem 'sample_vag_plug'>>
<<wearItem 'sample_vag_plug' true>>
<</if>>
<<applyExperience 'bestiality' 11 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" _TODOgorilla>>
<div id="invframe" class="scrolltext">
Plugged and ready, you enter the enclosure. As you approach the gorilla you make two discoveries... one, that it is far bigger in person than it looked at a distance, its shoulders on all fours rising slightly higher than even your ballet-heel augmented stature... and the second... that its penis is the exact opposite, barely five centimetres long.<br>
<br>
<<printThought "Huh... that's a contrast...">><br>
<br>
Despite the inversion of how things normally go with the animal kingdom, you are here to do a job, a blessed, blessed job. You lay back and you spread yourself and beckon the hairy beast in. It accepts your invitation, massive hands pinning you down as it mounts you, the plug serving to add some additional stimulation beyond its hips slamming into you as it hoots and hollers, fucking you and folding you in half at the same time.<br>
<br>
What the gorilla lacked in size, it makes up for in stamina, as it goes for quite some time, even seeming to recognise that you need a bit more than it can give as, casually holding both of your wrists with one meaty hand, it gropes you with the other, licking and kissing your gag as it finishes itself... and, somehow, you off before lumbering away.<br>
<br>
[<<moveTo "event_nun_unity_repeat_5" "Goddess!" 300>>]
</div>/*#
#desc: npc_nun_unity repeat: dolphin sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'nun_public'>>
<<if $scene.anal>>
<<addItem 'sample_plug'>>
<<wearItem 'sample_plug' true>>
<<applyExperience 'anal' 18 'very' $SEEN_STRANGER>>
<<else>>
<<addItem 'sample_vag_plug'>>
<<wearItem 'sample_vag_plug' true>>
<</if>>
<<applyExperience 'bestiality' 13 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" _TODOgorilla>>
<div id="invframe" class="scrolltext">
Plugged and ready, you step into a pool and a dolphin immediately swims over. Playful and enthusiastic, it bumps into you a few times as it directs you into position, and then suddenly slides under you, its hard cock sliding out of an internal sheath... and directly into <<if $scene.anal>>your ass<<else>>you<</if>>. You gasp, hugging the slippery cetacean as it chirps happily... and begins zooming through the water.<br>
<br>
Your gag serves double duty in protecting your mouth from the streaming water as the dolphin swims inverted, giving you just enough space to breath as the undulations of its body cause the cock inside you to shift and stir in quite exciting ways.<br>
<br>
You moan... and the dolphin whistles back cheerily, taking your response as a signal to speed up as it zooms in circles, making for, arguably, the fastest fuck you've ever enjoyed.<br>
<br>
And enjoy it, you do, the combination of speed, size, and the occasional corkscrew as the dolphin plunges you underwater and comes on top for a breath moment to breath is like fucking on a rollercoaster, and you cum several times before the energetic creature <<if $fetish.cum>>fills you with cetacean cum<<else>>finishs for itself<</if>>.<br>
<br>
As eagerly as things had started, its climax seems to leave the dolphin bored, and it dumps you near the ladder before swimming off, leaving you to climb back out of the pool<<if $fetish.cum>>, feeling its thick cum sloshing around inside the now-sealed plug<</if>>.<br>
<br>
[<<moveTo "event_nun_unity_repeat_5" "Goddess!" 300>>]
</div>/*#
#desc: npc_nun_unity repeat: python sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'nun_public'>>
<<if $scene.anal>>
<<addItem 'sample_plug'>>
<<wearItem 'sample_plug' true>>
<<applyExperience 'anal' 1 'very' $SEEN_STRANGER>>
<<else>>
<<addItem 'sample_vag_plug'>>
<<wearItem 'sample_vag_plug' true>>
<</if>>
<<applyExperience 'bondage' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 14 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" _TODOpython>>
<div id="invframe" class="scrolltext">
Plugged and ready, you enter the enclosure and approach the hanging python with some slight trepidation, the large reptile shifting on its branch, uncoiling slightly as a head peeks out and swims to the air towards you.<br>
<br>
A forked tongue flickers as you look the snake in the eye, you are reminded of so many stories of hypnosis... though you feel no such sensation, just the act of looking into two piercing black eyes of animal intelligence...<br>
<br>
... <<printThought "or maybe there is something to the stories">> you think as some other part of the long serpent sneaks up on you from behind, wrapping you in its coils and lifting you off the ground. You gasp as the powerful creature squeezes, even your already tight corset flexing ever-so slightly as the beast asserts its control.<br>
<br>
The snake stops squeezing any harder... but remains tightly coiled around you so that your breaths are kept to short gasps. In your distraction, the head has moved away... and then you shudder as you feel a flicking tongue exploring your <<if $scene.anal>>rear<<else>>clit<</if>>. You're panting now, and reflexively squirming even as the coils keep your arms tightly restrained at your side... and your feet slightly off the ground.<br>
<br>
A few moments after the teasing exploratory you feel the serpent shift once again, and something different probing at your <<if $scene.anal>>rear<<else>>cunt<</if>>. You moan as something larger slides into you, stretching the plug as you recall that snakes have two penises... and that hemi-penis is spreading you good.<br>
<br>
The python squeezes... and fucks, the blend of pleasure and struggling to breath making everything more intense as your vision wavers and you <<if $fetish.cum>>spurt inside of you<<else>>climax<</if>> with a final squeeze.<br>
<br>
Coils loosen and unfurl and you slip to the ground, panting for a moment in the grass before <<=setup.getNpcName("npc_nun_unity", "formal")>> appears to help you back to your feet. You glance back at the serpent, already coiled back on its branch, but still watching you, its forked tongue flicking out from an expression that can only be described as pleased.<br>
<br>
[<<moveTo "event_nun_unity_repeat_5" "Goddess!" 300>>]
</div>/*#
#desc: npc_nun_unity repeat: tiger sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'nun_public'>>
<<if $scene.anal>>
<<addItem 'sample_plug'>>
<<wearItem 'sample_plug' true>>
<<applyExperience 'anal' 15 'very' $SEEN_STRANGER>>
<<else>>
<<addItem 'sample_vag_plug'>>
<<wearItem 'sample_vag_plug' true>>
<</if>>
<<applyExperience 'bdsm' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 13 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" _TODOtiger>>
<div id="invframe" class="scrolltext">
The plug this time is different from previously, thicker as the technician explains. "@@.generic_female2;So cats actually have spiked penii, when you get up to the size of a tiger, well... you can see the danger therein. This plug will do the usual bit, as well as keep you protected from damage... though you will still be able to feel some very... unique sensations.@@"<br>
<br>
You shiver slightly in anticipation, and then head into the enclosure... where the tiger is nowhere to be seen.<br>
<br>
<<printThought "Huh... that's odd...">> you think to yourself as you take a few more steps forward past some trees.<br>
<br>
You don't even hear anything, just a slight shift out of the corner of your eye and then you're tackled to the ground. Initially face down, the beast flips you over a moment later, two massive, furry paws pinning you by the shoulders as you look up into a toothy face. The beast roars at you in dominance... and then slams its cock into your ready hole.<br>
<br>
You gasp, your plug may serve to blunt the creatur's spikes, but you can still feel the unique shape as it thrusts into you, the nigh-monstrous cock filling you as the massive cat holds you down, having its way with you while simultaneously licking your face, your gag protecting you for the most part, but the rough, wet tongue adding an additional dimension to things as it ravages you.<br>
<br>
As quick and unexpected as was the tiger's ambush, it's pleasure arrives with no less sudden of a jolt. A final thrust of its powerful hips sees you pinned to the ground as it throws its head back and lets out the loudest, most rumbly-satisfied purr you've ever seen<<if $fetish.cum>> as it pumps you full of feline cum<</if>>.<br>
<br>
As quick as that the beast leaps away,<<if $fetish.cum>> your plug sealing to hold in its precious payload as<</if>> you push yourself back to your feet and, with a final glance around lest you're in for ambush: round two, you head for the exit.<br>
<br>
[<<moveTo "event_nun_unity_repeat_5" "Goddess!" 300>>]
</div>/*#
#desc: npc_nun_unity repeat: elephant sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'nun_public'>>
<<if $scene.anal>>
<<addItem 'sample_plug'>>
<<wearItem 'sample_plug' true>>
<<applyExperience 'anal' 20 'very' $SEEN_STRANGER>>
<<else>>
<<addItem 'sample_vag_plug'>>
<<wearItem 'sample_vag_plug' true>>
<</if>>
<<applyExperience 'bestiality' 15 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" _TODOelephant>>
<div id="invframe" class="scrolltext">
Plugged and ready, you walk into the enclosure and gasp as you look up at the massive bull elephant, the mammoth beast towering over you. The creature turns, two soft, intelligent eyes looking down at you as its great trunk reaches out to run along your face with delicate tenderness.<br>
<br>
You nuzzle back against the leathery trunk and it curls down to your hips, pulling you in like a lover... and guiding you between its legs to where its massive cock dangles and twitches.<br>
<br>
You take a deep breath, the powerful scent of the savannah coming off your partner sending a shudder down your spine as you ponder how to address this cock that is nearly as long as you are tall. Nudging you forward so that you are standing beneath it, the elephant's trunk pulls away for a moment, and then comes back from the side to "solve" things as it lifts you into the air and flips you around, the once-dangling member suddently probing at you with rudimentary skill, the thick, wet tip searching for a moment, and then sliding into your <<if $scene.anal>>rear<<else>>cunt<</if>>.<br>
<br>
You gasp as you are stretched side, the combination of elephantine cock and the straining plug/sheath the largest thing you've had inside of you. Your arms flail reflexively, pushing against the column-like legs in front of you as you move backwards, the combination of trunk and cock holding your entire body up effortlessly and moving you back and forth, your entire body like an onahole toy for the massive elephant as it fucks you/jerks itself off.<br>
<br>
You gasp, moan... and the cock somehow slides deeper into you, your body feeling fuller than ever before as the beast slowly, casually takes its pleasure<<if $fetish.cum>>... and then cums with a powerful blast that all but turns you into a cum rocket, easily a gallon of semen not just filling you, but overflowing as you are<<else>>and then climaxes powerfully. You gasp as your are all but swung around by the cock inside of you,<</if>> pushed forward, dangling for a moment before the cock slips free and falls away... and the elephant places you gently back on your feet, a final tender caress of its trunk your parting good-bye before it wanders off.<br>
<br>
[<<moveTo "event_nun_unity_repeat_5" "Goddess!" 300>>]
</div>/*#
#desc: npc_nun_unity repeat: octopus sex
#status: RELEASED 0.9.4.0
#ignore_spell: hectocotylus
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'nun_public'>>
<<if $scene.anal>>
<<addItem 'sample_plug'>>
<<wearItem 'sample_plug' true>>
<<applyExperience 'anal' 15 'very' $SEEN_STRANGER>>
<<else>>
<<addItem 'sample_vag_plug'>>
<<wearItem 'sample_vag_plug' true>>
<</if>>
<<applyExperience 'bestiality' 15 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<applyStress -10>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" _TODOoctopus>>
<div id="invframe" class="scrolltext">
You step into the shallow end of the tank, your nun's attire completely protecting you from the water, yet resulting in a curious sensation as the tight latex adjusts to the temperature.<br>
<br>
Initially watching you, the octopus unfurls, swimming gracefully towards you. Its many arms stretch out as it starts to climb your body, and you sink down, floating slightly with just your head about water as too many limbs to keep track of roam your body. Your suit is thick enough that you are unable to feel the suckers gripping your body, but you can feel the squeeze of the tentacles as the octopus wraps you in its arms, pinning your own limbs in place as it slides behind, its hectocotylus tentacle folding over to enter you, spreading you out as another tentacle wraps around your neck, choking you slightly as it fucks you, the rolled-over tip of the tentacle that has first gaped you wide unfurling once inside, for a quite unique experience that has you moaning as you float and bob.<br>
<br>
The octopus' intensity slows as it settles in around you, arms hugging you from every angle as its head rests against your shoulder, one intelligent, if alien eye peering at you as it continues to fuck and fondle, its colour shifting slightly as if reacting to the waves of pleasure running through your body as it prioritises said pleasure until it has you gasping with orgasm through your gag once, twice... and then thrice before <<if $fetish.cum>>it feels you with its seed<<else>>it reaches the summit of pleasure for itself<</if>>.<br>
<br>
Continuing to be a considerate lover, the octopus does not jet away immediately after finishing, instead remaining wrapped around you as the tentacle slides free of you, <<if $fetish.cum>>the precious payload sealed inside as it cuddles<<else>>cuddling<</if>> you as you float for several more minutes before nudging you back to the edge of the pool where it gently detaches and then spurts away.<br>
<br>
[<<moveTo "event_nun_unity_repeat_5" "Goddess!" 300>>]
</div>/*#
#desc: npc_nun_unity: post-sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal>>
<<removeItem 'sample_plug' true>>
<<deleteItem 'sample_plug'>>
<<else>>
<<removeItem 'sample_vag_plug' true>>
<<deleteItem 'sample_vag_plug'>>
<</if>>
<<wearItemSet "nun_public">>
<</if>>
<<set $player.location to "Arcadia Zoo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/zoo_enclosure.png" "npc_nun_unity_modest" _TODOzookeeper>>
<div id="invframe" class="scrolltext">
Your sacred duty performed, you leave the enclosure and remove the <<if $fetish.cum>>cum-filled <</if>>plug. The attendant accepts the "prize" gratefully, quickly decanting things into a more appropriate vessel.<br>
<br>
<<=setup.getNpcName('npc_nun_unity', 'formal')>> smiles at you with pride. "@@.npc_nun_unity;You did wonderful today, I could see
<<switch $scene.animal>>
<<case 'bear'>>
strength
<<case 'dolphin'>>
stamina
<<case 'gorilla'>>
grace
<<case 'python'>>
flexibility
<<case 'tiger'>>
endurance
<<case 'elephant'>>
magnificence
<<case 'octopus'>>
endless versatility
<<default>>
ERROR: unexpected scene.animal <<=$scene.animal>>
<</switch>>
of the Goddess flowing through you as you performed that beautiful, and ecologically beneficial, rite.@@"<br>
<br>
You nod, a bit tired from the ordeal, but certainly pleased.<br>
<br>
You and <<=setup.getNpcName('npc_nun_unity', 'formal')>> return to the church by train, where she finally removes your gag and kisses you gently on the lips. "@@.npc_nun_unity;The Goddess' blessings be upon you... until our paths align again.@@" She walks away, leaving you in the small side room to change.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_church_root" "Leave the changing room." 30>>]
<<else>>
[@@.link_locked;You are not sufficiently dressed to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: work in church
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
You talk with <<=setup.getNpcName('npc_priest', 'formal')>> and ask if there is any way you might "give back" to the church.<br>
<br>
<<if setup.checkVisibleClothingTag('nun') > 75>>
"@@.npc_priest;I should have known, with you already all dressed for service. Of course there are always opportunities to give back to the church, what did you have in mind?@@"
<<else>>
"@@.npc_priest;Of course, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>, there are always opportunities the serve the church, what did you have in mind?@@"
<</if>>
<br><br>
[<<moveTo "event_church_work_confession_1" "Ask to help take confessions." 300>>]<br>
[<<moveTo "event_church_work_nun_1" "Ask if you might help service any of the nuns." 300>>]<br>
[<<moveTo "event_church_work_priest_1" "Ask to serve <<him npc_priest>>." 300>>]<br>
[<<moveTo "event_church_work_priestess_1" "Ask if you might assist one of the Sisters Superior." 300>>]<br>
[<<moveTo "event_church_work_outreach_1" "Ask to help perform community outreach." 300>>]<br>
[<<moveTo "event_church_work_ritual_1" "Ask if there are any rituals you might assist with." 300>>]<br>
<<if $fetish.bestiality_hard && setup.hasThreshold('bestiality', 'horse', 'horsecock_expert') && $player.flags.church.level >= 3>>
<<if State.hasPlayed("event_nun_unity_10")>>
[<<moveTo "event_nun_unity_repeat_1" 'Ask if you could assist <<=setup.getNpcName("npc_nun_unity", "formal")>> once again?' 300>>]<br>
<<else>>
[<<moveTo "event_nun_unity_0" "Ask if there is more exotic work you might help with?" 300>>]<br>
<</if>>
<</if>>
[<<moveTo "event_church_root" "Say you changed your mind, go do something else." 300>>]
</div>
/% church_work_confession.jpg %//*#
#desc: work in church confessional
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.church_work = true>>
<<set $scene.hood = setup.getItemFromType("hood")>>
<<addItem "confession_hood">>
<<wearItem "confession_hood" true>>
<<applyExperience 'bondage' 18 'very' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_confession_internal.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
You ask if you can help with taking confessions and <<=setup.getNpcName('npc_priest', 'formal')>> smiles. "@@.npc_priest;Of course, Sister, I have just the position for you to be of assistance.@@"<br>
<br>
<<He npc_priest>> leads you into one of the confessionals and then closes the door behind you, leaving you both crammed into the privacy of the<<if $npc_priest.fem>> priestess' <<else>> "priest's" <</if>>side of things. Wedging yourself against the back to stay out of the way you watch as <<he npc_priest>> raises part of the dividing panel, revealing the empty "client" area on the other side and a padded shelf bridging the two compartments.<br>
<br>
You lay back flat on the platform, your upper body on one side of the partition, your lower on the other. Your legs bent until your knees are near your armpits the partition is lowered back into position, holding you in place.<br>
<br>
Unable to see what is going on you feel your clothes parted to expose your ass, your heart racing in anticipation of <<=setup.getNpcName('npc_priest', 'formal')>> making use of things to go still for several moments before <<=setup.getNpcName('npc_priest', 'formal')>> re-appears, slipping into the compartment where your upper body is.<br>
<br>
Working efficiently your wrists and ankles are bound to the partition and then a ring gag is presented to your lips. Mouth spread wide it is buckled tight and then you watch as a hood is brought toward you.<br>
<br>
Noting your unvoiced concern, <<=setup.getNpcName('npc_priest', 'formal')>> explains. "@@.npc_priest;The privacy of the confessional is sacred, though your participation will act to aid a supplicant in unburdening themselves, you cannot be allowed to hear or see them.@@" Looking up from your inverted position you nod in understanding, the hood zipped over your head, pads over your eyes and ears robbing you of your senses.<br>
<br>
Blind, deaf and mute you assume <<=setup.getNpcName('npc_priest', 'formal')>> has departed and you wait for your first client.<br>
<br>
<<if (State.hasPlayed("event_primrose_after_church_alternate_2") || State.hasPlayed("event_primrose_after_church")) && !State.hasPlayed("event_primrose_church_confessional")>>
[<<moveTo "event_primrose_church_confessional" "Wait." 300>>]
<<else>>
[<<moveTo "event_church_work_confession_2" "Wait." 300>>]
<</if>>
</div>/*#
#desc: work in church confessional - suck cock or lick cunt
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch random(9)>>
<<case 0 1 2 3 4>>
<<set $scene.genitals = "cunt">>
<<case 5 6 7 8>>
<<set $scene.genitals = "cock">>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<<default>>
<<set $scene.genitals = "both">>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<</switch>>
<<set $scene.vaginal = $player.body_ref.vagina && !setup.checkItemTypeWorn("cage") && $player.virgin.vaginal && random(1,2) == 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<div id="invframe" class="scrolltext">
You wait with both ends exposed for several minutes before something happens, and you tense slightly as you feel a hand brushing your rear. Presumably it is a nun, or perhaps the <<priest npc_priest>> has returned, either way you can do nothing but accept their attention as they caress your bottom.<br>
<br>
<<if $scene.vaginal>>
You feel fingers stroking between your womanly folds. Your predicament already having you quite wet with excitement you moan eagerly through your gag in anticipation and almost cum on the first stroke as a cock slides into your <<getWordVagina>>.<br>
<br>
Their movements are slow, methodical, almost torturously so and you realise that they are pacing themselves to last for the full duration...
<<elseif !setup.checkItemTypeWorn("plug") || !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You feel them playing with your rear. Discovering that you are locked and unavailable from that direction you are instead graced with a hard cock pressed against your cheeks, teasing you with the fact that you are unable to feel it plunging into you.
<<else>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
The fingers more towards you plug, wiggling it loose before gently pulling it free of your hole.<br>
<br>
<</if>>
You are not left waiting for long as a few moments later you feel a hard cock sliding into you, a handful of thrusts working it deep into you until hips are pressed against your bottom and your partner goes still.
<</if>>
<br><br>
Panting slightly you do not have long to wait before you feel something re-adjust your head.<br>
<br>
Restrained hooded, blind, deaf and gagged you can do nothing as your wide-open mouth is positioned and
<<switch $scene.genitals>>
<<case "cunt">>
a wet cunt is pressed against your lips.<br>
<br>
Blind and deaf you can only lick and suck as the unseen confessor grinds against you and you are left to wonder which shudder of pleasure is a result of your action or the confession itself.
<<case "cock" "both">>
a cock slides into your throat. Plunging balls deep you are treated
<<if $scene.genitals == "cock">>
to the strong whiff of sweaty balls as they rock back and forth in your throat.
<<else>>
to your nose nestling into the wet cunt sported by your doubly-blessed partner as you suck and lick.
<</if>><<default>>
ERROR: unexpected scene.genitals: <<=$scene.genitals>>
<</switch>>
<br><br>
<<if $scene.vaginal>>
Spurred on by being fucked you moan through your gag, sucking and licking in your best effort to "aid" the confessee until the moment they pull away and you are left panting for air.
<<elseif setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
Spurred on by being fucked in the ass you do what you can to "entertain" the confessee, finally left panting for air as they step away.
<<else>>
Deploying every trick of tongue and lips that you know you desperately wish you could take it from the other end, but your rear hole remains safely locked, the only contact you get the steady grind of hips against your ass.
<</if>>
<br><br>
<<switch $scene.genitals>>
<<case "cunt">>
Finally you are treated to a gushing orgasm, feminine juices running down your face as your client steps away leaving you alone.
<<case "cock" "both">>
Finally you are treated to a burst of cum shot directly into your belly, the softening cock sliding out past your lips and leaving you alone and "empty."
<</switch>>
<br><br>
You lose track of both time and clients as things repeat, your face used by a myriad of<<if $options.fem>> nun's<</if>> cocks and cunts before you feel your hood loosen.<br>
<br>
[<<moveTo "event_church_work_confession_3" "End of the shift." 300>>]
</div>/*#
#desc: work in church confessional - finish
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "confession_hood" true>>
<<deleteItem "confession_hood">>
<<if $scene.hood>>
<<wearItem $scene.hood true>>
<</if>>
<<set $npc_priest.flags.work.confession = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_confession_internal.png">>
<div id="invframe" class="scrolltext">
Your hood is peeled away and you blink in the sudden light, finding yourself looking up at <<=setup.getNpcName('npc_priest', 'formal')>>.<br>
<br>
As your gag is removed
<<if $scene.vaginal>>
the blessed presence inside you slides free, leaving you physically empty, but spiritually fulfilled
<<elseif setup.checkItemTypeWorn("plug") && setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
you feel whoever is on the other side of the partition step away.
<<else>>
whoever has been fucking your ass this whole time steps away before
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
replacing the plug in your used ass.
<<else>>
giving your butt a parting squeeze.
<</if>>
<</if>>
Your limbs are unstrapped as you re-orient yourself, the partition rising out of the way so that you are able to return to your feet.<br>
<br>
<<=setup.getNpcName('npc_priest', 'formal')>> thanks you for your assistance and you nod, staggering a little as you exit the confessional and blink away the bright light of the cathedral.<br>
<br>
[<<moveTo "event_church_work_end" "Return to the cathedral." 300>>]
</div>/*#
#desc: work in church helping nuns
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.church_work = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_priest', 'formal')>> if any of the nun's could use assistance and <<he npc_priest>> nods.<br>
<br>
<<if State.hasPlayed("event_church_work_nun_gloria_5") && $npc_primrose.flags.evil != 1 && !State.hasPlayed("event_church_work_nun_grace_6") && State.hasPlayed("event_primrose_after_church")>>
"@@.npc_priest;Indeed! <<=setup.getNpcName('npc_nun_grace', 'formal')>> spoke of needing an assist, I think you would be just perfect to help.@@"<br>
<br>
You follow <<=setup.getNpcName('npc_priest', 'formal')>> into one of the Church's side rooms where <<=setup.getNpcName('npc_nun_grace', 'formal')>> is praying. The Sister greets you with an embrace and the Priest bows before returning to the Cathedral.<br>
<br>
[<<moveTo "event_church_work_nun_grace_1" 'Greet <<=setup.getNpcName("npc_nun_grace", "formal")>>.' 300>>]
<<else>>
"@@.npc_priest;Indeed! <<=setup.getNpcName('npc_nun_gloria', 'formal')>> should be checking in on some of the other Sisters shortly and would surely welcome the company.@@"<br>
<br>
You follow <<=setup.getNpcName('npc_priest', 'formal')>> into the private living quarters where <<he npc_priest>> passes you off to <<=setup.getNpcName('npc_nun_gloria', 'formal')>>, the sister greeting you with an embrace and, surprisingly, a smile; the gag she normally wears not in place on this occasion. Spinning on her steep heels she leads you down a stone hallway.<br>
<br>
[<<moveTo "event_church_work_nun_gloria_1" 'Follow <<=setup.getNpcName("npc_nun_gloria", "formal")>>.' 300>>]
<</if>>
</div>/*#
#desc: help nuns with sleepsacks
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
/% TODO: no gag on gloria%/
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_gloria">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_nun_gloria', 'formal')>> leads you a short distance through twisting hallways before coming to what seems almost like a small barracks, only, instead of cots, there is a row of empty latex vacuum beds.<br>
<br>
"@@.npc_nun_gloria;A group of novices will be finishing prayers shortly. It is my, well, our, duty to help secure them for meditation.@@"<br>
<br>
You nod just as the novices arrive; a half dozen naked, gagged and bound nuns leashed together by sturdy collars, all save the lead woman hooded and blindfolded.<br>
<br>
"@@.npc_nun_gloria;Well done, Sister.@@" <<=setup.getNpcName('npc_nun_gloria', 'formal')>> states in greeting. "@@.npc_nun_gloria;You have guided your fellow novices well, and now for your reward.@@"<br>
<br>
Producing a remote <<=setup.getNpcName('npc_nun_gloria', 'formal')>> taps a button and the gagged novice shudders. The way she grinds her thighs together and leaks past her chastity belt tells you just what sort of "reward" she has just received.<br>
<br>
<<=setup.getNpcName('npc_nun_gloria', 'formal')>> turns to you and nods. "@@.npc_nun_gloria;Start by leashing each novice to a bed, then go one by one, remove their restraints, and help them into their beds — make sure they're comfortable before you seal everything up!@@"<br>
<br>
[<<moveTo "event_church_work_nun_gloria_2" 'Get to work.' 1800>>]
</div>/*#
#desc: help nun's change
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
/% TODO: no gag on gloria%/
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_gloria">>
<div id="invframe" class="scrolltext">
The novices are utterly obedient as you enact <<=ps(setup.getNpcName('npc_nun_gloria', 'formal'))>> instructions; following you closely and then standing obediently once leashed to their respective beds, eyes twinkling with excited anticipation.<br>
<br>
Turning to the first novice you discover that her restraints — other than her chastity belt, are not actually locked on, merely buckled and functionally secure due to her overall bound state.<br>
<br>
Clearly familiar with what's going on the novice waits for you to remove her restraints before nodding in thanks and accepting your assistance to slip into the vacuum bed. You remember <<=ps(setup.getNpcName('npc_nun_gloria', 'formal'))>> instructions as you wait for the novice to lay back into position, making sure that she is properly centred in the bed and her breathing mask is properly fitted before you pull the top sheet over and seal everything up.<br>
<br>
Whatever supplies the vacuum pressure is hidden out of earshot so you merely watch the erotic sight of the rubbery material sealing down around the novice; her body wiggling slightly at first but eventually going almost completely still as the material clings to her like a second skin, showing off her body's every curve as it holds her in place.<br>
<br>
The sight of watching their fellow get sealed in has the next novice even more excited and she practically dives into her vacuum bed the moment you have the restraints off.<br>
<br>
Partway through sealing up your third, and final, charge <<=setup.getNpcName('npc_nun_gloria', 'formal')>> appears to help you finish up, only for the two of you to find yourselves standing at the foot of a seventh and final vacuum bed...<br>
<br>
"@@.npc_nun_gloria;So I was planning on having a nice little meditation myself, but if you wanted to enjoy some time I would be more than happy to seal you in for a bit...@@"<br>
<br>
[<<moveTo "event_church_work_nun_gloria_3" "You'd love to get sealed up for a bit." 600 "<<set $scene.bed=true>>">>]<br>
[<<moveTo "event_church_work_nun_gloria_3" "You don't want to deprive her of her meditation time." 600 "<<set $scene.bed=false>>">>]
</div>/*#
#desc: help gloria/she helps you into vacuum bed
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_priest.flags.work.nun = true>>
<<if $scene.bed>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
/% TODO: no gag on gloria%/
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_gloria">>
<div id="invframe" class="scrolltext">
<<if $scene.bed>>
You reply that you would love to spend some time in meditation and <<=setup.getNpcName('npc_nun_gloria', 'formal')>> smiles knowingly. It doesn't take long for her to help you out of your clothes and then your naked skin is sliding against the slippery latex as she helps you into position, the gag built into the breathing hood not so large as to be uncomfortable you easily lie back and feel the bed silently sealing around your body.<br>
<br>
Your whole body tingles from the slightly cool, slippery feel of the latex, and you rub against it as the vacuum works away, things getting tighter, and tighter, and tighter until you cannot move at all, the way the material clings to you making you feel somehow... safe, as if help from every direction by the loving embrace of the Goddess.<br>
<br>
[<<moveTo "event_church_work_nun_gloria_4" "Continue." 1800>>]
<<else>>
You explain to <<=setup.getNpcName('npc_nun_gloria', 'formal')>> that you have other things to do, but you're happy to seal her in. She smiles, almost immediately shedding her catsuit and hood to slip naked into the bed.<br>
<br>
"@@.npc_nun_gloria;Thank you, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>.@@" She states before pulling the breathing hood over her head and lying back for you to seal her in.<br>
<br>
You watch as the latex begins to suck in, <<=ps(setup.getNpcName('npc_nun_gloria', 'formal'))>> body arcing slightly up off the bed in a motion of erotic joy before the potent vacuum seals her in place arms and legs spread as if in offering to the Goddess.<br>
<br>
A masked nun appears a few moments later; presumably here to supervise her tightly restrained sisters she nods at you in thanks and you take that as your signal to leave.<br>
<br>
[<<moveTo "event_church_work_end" "Return to the cathedral." 300>>]
<</if>>
</div>/*#
#desc: private vacuum bed
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 20 'unbelievable' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
Sealed away you feel fingers trace over your body, presumably <<=setup.getNpcName('npc_nun_gloria', 'formal')>> having a bit of extra fun with your helpless form, but in your current position — totally immobile and robbed of nearly every sense other than touch — you have no way of knowing.<br>
<br>
Even the sound of your breathing fades into the background as you sink into a meditative sub-space. Worries and fatigue recede as you relax further into your predicament; your occasional foiled movement only serving to elate you at the reminder that you are still totally, deliciously restrained...<br>
<br>
[<<moveTo "event_church_work_nun_gloria_5" "Continue." 1800>>]
</div>/*#
#desc: released from vacuum bed
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -25>>
<<applyFatigue -50>>
<<changeHorny 50>>
<<useClothSetPop 'tmp' true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
/% TODO: no gag on gloria%/
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_gloria">>
<div id="invframe" class="scrolltext">
You lose track of time, drifting into a quasi-sleep in the snug embrace of the Goddess, only to be pulled back to reality by the pressure you have become so accustomed to slowly releases.<br>
<br>
Latex pulled aside you find yourself looking up at <<=setup.getNpcName('npc_nun_gloria', 'formal')>>; the room's lights having been dimmed significantly so that you feel no pain at this sudden re-introduction to the concept of sight.<br>
<br>
"@@.npc_nun_gloria;Hello, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>. I hope you enjoyed your hour of meditation, the others have several more hours to go, but they have been training in these things. An hour should be plenty for one such as yourself... though you would come to enjoy far more than that should you one day decide to join our order.@@"<br>
<br>
The memory of what you just experienced has that offer feeling as tempting as ever but you merely accept <<=ps(setup.getNpcName('npc_nun_gloria', 'formal'))>> assistance in returning to your feet and getting dressed.<br>
<br>
<<=setup.getNpcName('npc_nun_gloria', 'formal')>> dismisses you with a curtsy, remaining behind to supervise the remainder of the novice's meditation as you return to the public areas of the church.<br>
<br>
[<<moveTo "event_church_work_end" "Back to the cathedral." 300>>]
</div>/*#
#desc: priest wedding agree
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.weddingAvailable = $scene.weddingAvailable || !$scene.hasOwnProperty('weddingAvailable') && random(1,3) == 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_priest', 'formal')>> if you could be of any assistance to <<him npc_priest>>
<<if $scene.weddingAvailable>>
and <<he npc_priest>> smiles.<br>
<br>
"@@.npc_priest;Why yes, I was just getting prepared to perform a private wedding, and the custom of our church dictates that they should be an independent witness, if you would be so kind?@@"<br>
<br>
[<<moveTo "event_church_work_priest_2" "Of course." 300>>]<br>
<<else>>
but <<he npc_priest>> shakes <<his npc_priest>> head.<br>
<br>
"@@.npc_priest;I appreciate the enthusiasm, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>, but for now I am spending time being available to those like yourself who have questions.@@"<br>
<br>
<</if>>
[<<moveTo "event_church_work_root" "Maybe some other work..." 60>>]
</div>/*#
#desc: work in church helping priest wedding intro
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.church_work = true>>
<<switch random(10)>>
<<case 1>>
<<set $scene.gender_1 = 'agender'>>
<<case 2 3 4>>
<<if $options.fem>>
<<set $scene.gender_1 = 'female'>>
<<else>>
<<set $scene.gender_1 = 'male'>>
<</if>>
<<default>>
<<set $scene.gender_1 = 'female'>>
<</switch>>
<<switch random(10)>>
<<case 1>>
<<set $scene.gender_2 = 'agender'>>
<<case 2 3 4>>
<<if $options.fem>>
<<set $scene.gender_2 = 'female'>>
<<else>>
<<set $scene.gender_2 = 'male'>>
<</if>>
<<default>>
<<set $scene.gender_2 = 'female'>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
You reply that you would love to be a witness to such an occasion, but you ask if you are dressed appropriately for such an occasion.<br>
<br>
<<=setup.getNpcName('npc_priest', 'formal')>> smiles warmly as <<he npc_priest>> leads you across the church. "@@.npc_priest;The Goddess loves us in all our myriad presentations and, as for the blessed couple... well, you will see shortly.@@"<br>
<br>
Even more intrigued you hurry to follow <<him npc_priest>> into the small side chapel. As you look around you immediately understand <<his npc_priest>> words — on either side of the room a pair of nuns are tending to what are clearly the two prospective celebrants; both bound and suspended in rope, the faces covered by masks are two figures,
<<if $scene.gender_1 == 'male' && $scene.gender_2 == 'male'>>
both distinctly male.
<<elseif $scene.gender_1 == 'female' && $scene.gender_2 == 'male' || $scene.gender_1 == 'male' && $scene.gender_2 == 'female'>>
one male and one feminine in presentation.
<<elseif $scene.gender_1 == 'agender' && $scene.gender_2 == 'male' || $scene.gender_1 == 'male' && $scene.gender_2 == 'agender'>>
one of them clearly masculine and the other androgynous.
<<elseif $scene.gender_1 == 'female' && $scene.gender_2 == 'female'>>
both distinctly feminine.
<<elseif $scene.gender_1 == 'female' && $scene.gender_2 == 'agender' || $scene.gender_1 == 'agender' && $scene.gender_2 == 'female'>>
one of them clearly feminine and the other androgynous.
<<elseif $scene.gender_1 == 'agender' && $scene.gender_2 == 'agender'>>
both physically ambiguous in their gender.
<<else>>
ERROR: unexpected gender_1 and gender_2: <<=$scene.gender_1>> and <<=$scene.gender_2>>
<</if>>
<br><br>
The <<priest npc_priest>> motions for you to take a seat in a chair clearly placed for the occasion as <<he npc_priest>> moves to the front of the room and draws things to order. Though seemingly blind and restrained the two celebrants can clearly hear as they tremble in subtle anticipation as the <<priest npc_priest>> begins to speak.<br>
<br>
[<<moveTo "event_church_work_priest_3" "Witness the ceremony." 1800>>]
</div>/*#
#desc: work in church helping priest wedding witness
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
"@@.npc_priest;The tradition of marriage is one sacred to the Goddess, but she looks upon it in her own way. At its core she teaches us that marriage is most importantly about the private bond between two — or more, celebrants. Today we are to celebrate the binding of two wonderful members of the church, their commitment and faith in one another reinforced and proven, now to be officially affirmed under the watchful gaze of the Goddess.@@"<br>
<br>
At the<<if $npc_priest.fem>> priestess' <<else>> priest's <</if>>subtle gesture the nuns begin pushing the two celebrants towards the centre of the room as you identify that their bondage suspension hangs from tracks in the ceiling.<br>
<br>
"@@.npc_priest;In preparation for this moment these two have spent a week purifying themselves in the traditional manner — exploring one another in every way as they affirm their desire to be joined in holy matrimony. Having not looked upon one another for a day the time has come for their final decision...@@"<br>
<br>
The couple now face to face hanging a scant hands-breadth apart the <<priest npc_priest>> nods, a nun on either side reaching up to remove the masks, each trailing a bit of drool from what you can now see were integrated gags.<br>
<br>
Blinking in the light the two celebrants have eyes only for each other as the <<priest npc_priest>> continues.<br>
<br>
"@@.npc_priest;Do you,@@" <<he npc_priest>> states turning towards the
<<switch $scene.gender_1>>
<<case 'male'>>
man
<<case 'female'>>
woman
<<case 'agender'>>
celebrant
<<default>>
ERROR: unexpected
<</switch>>
to <<his npc_priest>> left. "@@.npc_priest;Enter into this joyous union, to support and love and cherish one another as partners, through hardships and happiness so long as your love is to last?@@"<br>
<br>
<<switch $scene.gender_1>>
<<case 'male'>>
"@@.generic_male1;Yes...@@" the man replies, voice cracking slightly.
<<case 'female'>>
"@@.generic_female1;Yes...@@" the woman replies softly.
<<case 'agender'>>
"Yes..." they reply, voice somewhat hoarse.
<<default>>
ERROR: unexpected
<</switch>>
<br><br>
The <<priest npc_priest>> turns to the
<<switch $scene.gender_2>>
<<case 'male'>>
man
<<case 'female'>>
woman
<<case 'agender'>>
celebrant
<<default>>
ERROR: unexpected
<</switch>>
on <<his npc_priest>> right to continue. "@@.npc_priest;And do you reciprocate? Prepared to seal a blessed union founded and love and support. A whole greater than the sum of its parts?@@"<br>
<br>
<<switch $scene.gender_2>>
<<case 'male'>>
"@@.generic_male1;I do,@@" the man replies tenderly.
<<case 'female'>>
"@@.generic_female1;Yes...@@" the woman replies with firm determination.
<<case 'agender'>>
"I do," the other celebrant replies breathlessly.
<<default>>
ERROR: unexpected
<</switch>>
<br><br>
"@@.npc_priest;Then, in the eyes of the Goddess and the law, I now pronounce you wed.@@" With another subtle gesture the two suspended figures are brought the final few centimetres together, lips meeting as you realise their suspension was precisely calibrated to put their heads even.<br>
<br>
Working efficiently the nuns re-bind the pair with their arms wrapped around one another in an embrace, the two celebrants scarcely noticing as they passionately kiss, their separate bondage in what seems like moments re-lashed so that they are instead bound together, wrapped as one as they are carried out of the room by the nuns.<br>
<br>
[<<moveTo "event_church_work_priest_4" "Continue." 300>>]
</div>/*#
#desc: work in church helping priest wedding complete
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_priest.flags.work.priest = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
The <<priest npc_priest>> smiles as the nuns and celebrants disappear out of sight leaving the two of you alone. "@@.npc_priest;Such a beautiful moment. Of course the ritual will continue for another day, the nuns taking them somewhere private where they may enjoy one another's passionate company — and their first meal as a married couple. They may have a larger party for friends and family later, but the Goddess teaches that such pageantry distracts from the emotional moment of the initial binding. Better to keep the wedding simple and uncomplicated rather than bog down with the added stress of the rest.@@"<br>
<br>
The <<priest npc_priest>> chuckles. "@@.npc_priest;Listen to me ramble on about things that you surely understood merely from observing the joyous expressions on our two celebrants. In any case, I, and they, after a fashion, thank you for fulfilling your part in the ritual...@@"<br>
<br>
[<<moveTo "event_church_work_end" "Thank <<him npc_priest>> and be on your way." 180>>]
</div>/*#
#desc: work in church helping sisters superior
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.church_work = true>>
<<if $npc_priest.flags.work.fem_supreme>>
<<if $npc_priest.flags.work.sissy_superior>>
<<set $scene.assist = random(1,2)>>
<<else>>
<<set $scene.assist = 2>>
<</if>>
<<else>>
<<set $scene.assist = random(1,2)>>
<</if>>
<<set $daily.church_work = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.assist == 1>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<<else>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<</if>>
<div id="invframe" class="scrolltext">
You ask if, perhaps one of the High Priestess Sisters Superior might be in need of assistance and the <<Priest npc_priest>> smiles.
<<if $scene.assist == 1>>
"@@.npc_priest;Such ambition! But yes, I believe <<=setup.getNpcName('npc_fem_supreme', 'formal')>> could use some assistance.@@"<br>
<br>
You are led into the private section of the church where <<=setup.getNpcName('npc_priest', 'formal')>> passes you off to <<=setup.getNpcName('npc_fem_supreme', 'formal')>> with a bow.<br>
<br>
"@@.npc_fem_supreme;Come,@@" she commands you, in a seductive, feminine voice. "@@.npc_fem_supreme;You may assist me in preparing some of our Sisters for their trip.@@"<br>
<br>
Her long legs moving quickly through the winding hallways of the church you hurry to keep up with the click, click, click of her heels echoing off the cool stone.<br>
<br>
"@@.npc_fem_supreme;As part of a Nun's training they will serve for a time in multiple locations across the world. This practice allows forming connections between wide-spread congregations, and the journey itself is a wonderful time for meditation and self-reflection... as you shall soon see.@@"<br>
<br>
[<<moveTo "event_church_work_priestess_2_fem_supreme_1" "Continue." 300>>]
<<else>>
"@@.npc_priest;Yes, I believe that <<=setup.getNpcName('npc_sissy_superior', 'formal')>> would appreciate the company for part of her rounds.@@"<br>
<br>
You are led into the private section of the church where <<=setup.getNpcName('npc_priest', 'formal')>> passes you off to <<=setup.getNpcName('npc_sissy_superior', 'formal')>> with a bow.<br>
<br>
After greeting you with a warm embrace the <<=setup.getNpcName('npc_sissy_superior', 'High Priestess')>> motions for you to follow as she leads you through the private section of the church to what turns out to be a small medical area.<br>
<br>
[<<moveTo "event_church_work_priestess_2_sissy_superior_1" "Continue." 300>>]
<</if>>
</div>/*#
#desc: fem_supreme shows you packaging for transport
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png" setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_fem_supreme', 'formal')>> into a small room where two nuns await — one of the nuns is securely restrained — her body up to her neck encased in what looks like a shipping container in a kneeling position, her latex-covered head strapped to a headrest the only part of her visible, though even that looks to be temporary based on what looks like a lid for the container that sits nearby. The other nun wears the standard "interior" uniform of full body latex and steel chastity, though without any further bondage by way of gag or hobbles.<br>
<br>
"@@.npc_fem_supreme;The tradition for this sort of exchange is for nuns to travel in pairs — one is bound securely for the duration of the journey to meditate, pray, and provide spiritual protection, while the other acts as physical escort to navigate the corporeal plane. Note that in several months the physical escort will be bound and sent off again, thus continuing the rotation of nuns between sites throughout the world.@@"<br>
<br>
As she has been explaining this ritual the <<=setup.getNpcName('npc_fem_supreme', 'formal')>> performs an inspection of the packing job while the nun escort waits silently. With <<=setup.getNpcName('npc_fem_supreme', 'formal')>> apparently satisfied with the situation she approaches the bound nun. "@@.npc_fem_supreme;Are you ready for your journey? To protect your Sister's spirit safely to its destination?@@" <<=setup.getNpcName('npc_fem_supreme', 'formal')>> asks as she gently strokes the novice's face.<br>
<br>
"@@.generic_female1;Yes, <<=setup.getNpcName('npc_fem_supreme', 'formal')>>@@" she replies softly, leaving her lips parted as <<=setup.getNpcName('npc_fem_supreme', 'formal')>> thrusts balls deep once, and then retracts to instead present the nun with her <<getWordVagina>>.<br>
<br>
While being eaten out the High Priestess turns to the other nun. "@@.npc_fem_supreme;And you, are you prepared to escort your Sister, to bring her body safely to its destination?@@"<br>
<br>
"@@.generic_female2;Yes, <<=setup.getNpcName('npc_fem_supreme', 'formal')>>.@@" The second nun replies before leaning over to suck.<br>
<br>
<<=setup.getNpcName('npc_fem_supreme', 'formal')>> places one hand gently on the back of the nun's head, though the Sister needs no encouragement to demonstrate her training by swallowing the full length of the High Priestess's divine member.<br>
<br>
[<<moveTo "event_church_work_priestess_2_fem_supreme_2" "The High Priestess begins to pray." 300>>]
</div>/*#
#desc: fem_supreme has you help finish transport ritual
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png" setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
"@@.npc_fem_supreme;Goddess protect and guide these Sisters in their journey. May they watch over and comfort one another, physically, and spiritually and may they find their destination in safety and joy, enriched by their journey and eager to continue their holy work.@@"<br>
<br>
The response of the two nuns is muffled as they continue to lick and suck their <<=setup.getNpcName('npc_fem_supreme', 'High Priestess')>>, but there is no mistaking the passion in their voices.<br>
<br>
Looking serenely down <<=setup.getNpcName('npc_fem_supreme', 'formal')>> smiles and cums, her voluminous load leaking around her still-hard <<getWordPenis false>> past the lips of one nun and down the latex-covered face of the other. <<=setup.getNpcName('npc_fem_supreme', 'formal')>> steps away as the two nuns kiss, sharing and licking up every drop before a gag is sealed between the lips of the bound nun and you aid in hooking it to a port on the lid that is next lowered over top to finish her enclosure.<br>
<br>
<<=setup.getNpcName('npc_fem_supreme', 'formal')>> continues to watch on as you help the nun into the more "mundane" traveling robes to conceal her sacred latex garments. A large door opens on the far side of the room and you help the nun push the container into a waiting vehicle before she gets in and slowly drives away.<br>
<br>
"@@.npc_fem_supreme;Thank you for your assistance in this matter,@@" the <<=setup.getNpcName('npc_fem_supreme', 'High Priestess')>> states once it is just the two of you, "@@.npc_fem_supreme;I hope you found the lesson valuable. These travel rituals help bind the church together, as well as teaching trust between acolytes as they entrust their safety to one another.@@"<br>
<br>
[<<moveTo "event_church_work_priestess_2_fem_supreme_3" 'Ask if <<=setup.getNpcName("npc_fem_supreme", "formal")>> has ever traveled in such a way?' 300>>]<br>
[<<moveTo "event_church_work_end" 'Thank her and leave.' 300>>]
</div>/*#
#desc: fem_supreme talks about her own restrictions
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_priest.flags.work.fem_supreme = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png" setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_fem_supreme', 'formal')>> if she has ever traveled bound in such a way and she smiles in clear amusement. "@@.npc_fem_supreme;Have I? Why, it is the only way I ever even figuratively step foot outside one of our cathedrals. As a High Priestess it is not spiritually safe for me to have direct contact with the outer world. Certainly I stay in touch with such goings-on through my subordinates and congregants, but were I to but step outside the cathedral without taking proper precautions — by which I mean immobilising layers of restraints that would make our recently departed friend appear practically naked, well... I would be in for months of ritual purification. No, but in accepting the mantle of High Priestess I have surely been blessed by the Goddess as few others, but with that comes layers of responsibilities and restrictions far beyond even the most penitent, chastity and bondage devoted nuns.@@"<br>
<br>
You look at the High Priestess with fresh awe before she gently nods and sends you on your way.<br>
<br>
[<<moveTo "event_church_work_end" 'Thank her and leave.' 300>>]
</div>/*#
#desc: npc_sissy_superior starts massaging nun
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hospital.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<div id="invframe" class="scrolltext">
What looks like a fully modern hospital the <<=setup.getNpcName('npc_sissy_superior', 'formal')>> gently greets and then dismisses a nurse-nun before approaching another nun lying almost naked in one of the beds.<br>
<br>
"@@.npc_sissy_superior;The practices of our faith can prove strenuous to our mortal forms, so we have our own medical facilities to allow our Sisters to recover in a safe, private area. The Sister here is recuperating from a perhaps too-ambitious bondage meditation. Nothing serious but she suffered some tendon strains and we are taking all precaution.@@"<br>
<br>
She approaches the bed and speaks as the nun's eyes flutter and she awakes. "@@.npc_sissy_superior;Good day, Sister — are you ready for your massage?@@"<br>
<br>
The nun blinks and then smiles lovingly up "@@.generic_female1;I am, of course, honoured but... surely there is some better use of your time?@@"<br>
<br>
"@@.npc_sissy_superior;Taking care of my flock is the only use of my time — come, roll over and I will start from the top — the Nurse mentioned that you were feeling particular tightness in your shoulders?@@"<br>
<br>
The nun does as instructed and is soon softly moaning at the obviously skilled touch of <<=setup.getNpcName('npc_sissy_superior', 'formal')>>. "@@.generic_female1;Yes... I must have laced the armbinder too tightly...@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> continues to massage and softly chat with her patient as she looks at you and then down at the patient's bare feet.<br>
<br>
[<<moveTo "event_church_work_priestess_2_sissy_superior_2" 'Obediently put your skills of massage to work.' 900 "<<set $scene.massage=true>>">>]<br>
<<if setup.getTotalValue("foot") > 15>>
[@@.link_locked;The Nun's feet are beautiful, you cannot pass up such an opportunity.@@]
<<elseif setup.getTotalValue("submission") > 15>>
[@@.link_locked;Even wordless instruction is more than enough for the authority of <<=setup.getNpcName('npc_sissy_superior', 'formal')>> to leave you feeling submissive and with no choice save obedience.@@]
<<else>>
[<<moveTo "event_church_work_priestess_2_sissy_superior_2" 'Decline to massage her feet.' 900 "<<set $scene.massage=false>>">>]<br>
<</if>>
</div>/*#
#desc: npc_sissy_superior starts massaging nun
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.massage>>
<<set $npc_priest.flags.work.sissy_superior = true>>
<<set _foot = setup.getTotalValue("foot")>>
<<applyExperience 'foot' _foot 'terrible' $SEEN_FRIEND>>
<<else>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hospital.png" setup.charImage("npc_sissy_superior","npc_sissy_superior")>>
<div id="invframe" class="scrolltext">
<<if $scene.massage>>
You kneel at the foot of the nun's bed and begin to massage.<br>
<br>
Her feet are soft and delicate, nails painted despite her medical predicament, they are clean and as beautiful as any foot you have ever <<if setup.getTotalValue("foot") > 10>>lusted over<<else>>seen<</if>>.<br>
<br>
<<if setup.getTotalValue("foot") > 10>>
<<if setup.getTotalValue("foot") > 15>>
Your massage turns to passionate worship as you kiss and lick each foot, a brief glance of approval from <<=setup.getNpcName('npc_sissy_superior', 'formal')>> spurring you on to show the full depths of your devoted infatuation with feet as you massage, clean, massage and then anoint with oils the @@.generic_female1;Nun's@@ feet and calves.
<<else>>
Your massage edges towards worship as you use not just fingers and hands, but your delicate lips and tongue to give the @@.generic_female1;Nun@@ the most passionately perfect massage you know how.<br>
<br>
Momentarily losing track of yourself you glance up to see <<=setup.getNpcName('npc_sissy_superior', 'formal')>> smiling back, and she hands you cleaning supplies, and a small vial of sacred oils to anoint the @@.generic_female1;Nun's@@ feet and calves.
<</if>>
<<else>>
<<if setup.getTotalValue("foot") > 5>>
Your heart beats a little faster as you massage the @@.generic_female1;Nun's@@ feet, only to be directed further by <<=setup.getNpcName('npc_sissy_superior', 'formal')>> to not just massage, but clean and finally anoint the @@.generic_female1;Nun's@@ feet and calves with sacred oils.
<<else>>
This foot massage feels subtly different from those you have performed previously, but you just focus on what you've practiced previously — even when <<=setup.getNpcName('npc_sissy_superior', 'formal')>> hands you what are obviously sacred oils to anoint the @@.generic_female1;Nun's@@ feet and calves before you conclude.
<</if>>
<</if>>
<br><br>
Once the @@.generic_female1;Nun's@@ feet are dry <<=setup.getNpcName('npc_sissy_superior', 'formal')>> rolls her over on the bed and begins binding her in place.<br>
<br>
With each tightly cinched strap the @@.generic_female1;Nun@@ smiles wider — especially when her legs are spread apart and secured in stirrups.<br>
<br>
"@@.npc_sissy_superior;I do not wish to disrupt your recovery by jostling your body too severely, but the spirit of the Goddess moves me to make love unto you... if that is acceptable to yourself?@@"<br>
<br>
"@@.generic_female1;A thousand times yes. I offer my body to you and her with eager joy.@@" The @@.generic_female1;Nun@@ replies, the passion in her voice echoed by the dampness between her legs as her chastity shield is retracted.<br>
<br>
As she moves between the woman's legs and kneels down, lips centimetres away from the @@.generic_female1;Nun's@@ <<getWordVagina>>. The @@.generic_female1;Nun@@ closes her eyes and holds her breath in obvious anticipation as <<=setup.getNpcName('npc_sissy_superior', 'formal')>> momentarily turns to you with a nod. "@@.npc_sissy_superior;Thank you, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>> for your assistance today. You may return to the Cathedral with my thanks and the blessing of the Goddess.@@"<br>
<br>
You curtsy in reply, closing the door gently behind as the sounds of passionate lovemaking softly echoes through the hall behind you.
<<else>>
You remain standing silently, ignoring <<=ps(setup.getNpcName('npc_sissy_superior', 'formal'))>> silent instructions. She continues to massage and chat with her patient for several minutes longer before coolly dismissing you. "@@.npc_sissy_superior;That will be all for today, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>, may the Goddess reward your works in kind.@@"<br>
<br>
You wince slightly at the subtle barb before leaving the room and winding your way back to the church proper.
<</if>>
<br><br>
[<<moveTo "event_church_work_end" 'Return to the cathedral.' 300>>]
</div>/*#
#desc: work in church doing outreach
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
You ask if you could assist with community outreach and <<=setup.getNpcName('npc_priest', 'formal')>> smiles.<br>
<br>
"@@.npc_priest;Of course, Sister. The church considers it an important part of our sacred duty to give back to the community. I believe that <<=setup.getNpcName('npc_nun_prudence', 'formal')>> was just about to head out to do some community service, and she would surely delight in the company.@@"<br>
<br>
[<<moveTo "event_church_work_outreach_2" 'Go with <<=setup.getNpcName("npc_nun_prudence", "formal")>>.' 300>>]<br>
[<<moveTo "event_church_work_root" 'Ask about other work.' 60>>]
</div>/*#
#desc: travel to do church outreach
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "City Street">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItemSet "nun_public">>
<<wearItemSet "nun_public">>
<<set $daily.church_work = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png" "npc_nun_prudence">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_nun_prudence', 'formal')>> greets you with a smile and an embrace before waiting for you to change into a matching cloth nun's outfit and leading the way out of the church. "@@.npc_nun_prudence;I am so glad you chose to join me today! All service to the Goddess is a pleasure, but there is just something so heartwarming about giving back to the community that fills me with a special sort of joy.@@"<br>
<br>
You nod and follow her away from the church as you wonder what "community service" will turn out to be.<br>
<br>
[<<moveTo "event_church_work_outreach_3" 'Continue.' 300>>]
</div>/*#
#desc: church outreach - food kitchen
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Food Kitchen">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/food_kitchen.png" "npc_nun_prudence">>
<div id="invframe" class="scrolltext">
After walking a couple of blocks you find yourself at a food kitchen; <<=setup.getNpcName('npc_nun_prudence', 'formal')>> introducing you to one of the staff before the two of you are welcomed into the backroom to help with chopping vegetables.<br>
<br>
<<=setup.getNpcName('npc_nun_prudence', 'formal')>> is all smiles as she helps the cooks prepare for what is clearly expected to be a large number of people.<br>
<br>
[<<moveTo "event_church_work_outreach_4" 'Chop vegetables and wait for the other shoe to drop.' 1800>>]
</div>/*#
#desc: church outreach - food serve food
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Food Kitchen">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/food_kitchen.png" "npc_nun_prudence">>
<div id="invframe" class="scrolltext">
You chop, chop, chop and then find yourself following <<=setup.getNpcName('npc_nun_prudence', 'formal')>> out to the cafeteria portion of the soup kitchen to start serving people.<br>
<br>
A smattering of students to veterans to just people generally down on their luck come through for their portion of food served up with a warm greeting from <<=setup.getNpcName('npc_nun_prudence', 'formal')>>. It's all you can do just to keep up with serving food, though in brief pauses you find yourself reflecting on how close you, yourself, came to such a situation back when you lost your job with Cloud Data Services what seems so long ago.<br>
<br>
Things eventually quiet down as you realise this whole time <<=setup.getNpcName('npc_nun_prudence', 'formal')>> has made no overt mention of the Goddess or the church.<br>
<br>
[<<moveTo "event_church_work_outreach_5" 'Ask <<=setup.getNpcName("npc_nun_prudence", "formal")>> when you are going to start "ministering" to people.' 600 "<<set $scene.question=true>>">>]<br>
[<<moveTo "event_church_work_outreach_5" 'Just keep helping.' 1800 "<<set $scene.question=false>>">>]
</div>/*#
#desc: church outreach - explanation
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Food Kitchen">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_priest.flags.work.outreach = true>>
<<if $scene.question>>
<<applyStress -20>>
<<gainWillpower 1>>
<<else>>
<<applyStress -5>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/food_kitchen.png" "npc_nun_prudence">>
<div id="invframe" class="scrolltext">
<<if $scene.question>>
With people busy eating you have a moment of privacy and you ask <<=setup.getNpcName('npc_nun_prudence', 'formal')>> when the two of you will start "ministering" to people?<br>
<br>
She pauses for a moment and then laughs softly. "@@.npc_nun_prudence;Ministering? What do you think we have been doing! The Goddess teaches us that we must come to people as they are, here these people are in need of physical sustenance. If they wish for more spiritual assistance they may, of course, visit us at the church, but it would be taking advantage of the already downtrodden to hold a hot meal hostage to their sitting through an unwanted sermon.@@"<br>
<br>
Before you can ask a follow-up question she winks "@@.npc_nun_prudence;If you meant to imply some of our other forms of ministering, well, there, too, they are welcome to join us at church, as you have, but service to the Goddess means more than just sex. There is a lot of sex, to be certain, as that is an important part of a fulfilling life for much of humanity, but there are so many other ways one can serve, as well, and the Goddess blesses them all.@@"<br>
<br>
You nod, her words making surprising sense, and making you feel even closer to the Goddess as you look around the room at people whose burdens you have helped ease, at least in some small way.<br>
<br>
<<=setup.getNpcName('npc_nun_prudence', 'formal')>> smiles at you in understanding and then it is time to go.
<<else>>
You finish serving up the meal and then it is time to go.
<</if>>
<<=setup.getNpcName('npc_nun_prudence', 'formal')>> thanks the staff for being allowed to help before she gets somewhat sidetracked by personal good-byes with some of the guests, the warm gratitude overflows onto yourself and you find yourself feeling calmed by this small act of good that you have performed. Eventually <<=setup.getNpcName('npc_nun_prudence', 'formal')>> you make it out of the soup kitchen and <<=setup.getNpcName('npc_nun_prudence', 'formal')>> leads the way back to the Cathedral.<br>
<br>
[<<moveTo "event_church_work_end" 'Return to the church and change.' 1800 '<<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: work in church as part of a ritual
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.ritualAvailable = $scene.ritualAvailable || (!$scene.hasOwnProperty('ritualAvailable') && $npc_priest.flags.talk.chastity >= 3 && random(5) == 1 && $scene.nun_id != "chastity")>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" setup.charImage("npc_priest")>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_tournament_13") && (!State.hasPlayed("event_church_post_fight_1") || !$scene.ritualAvailable && !State.hasPlayed("event_church_post_fight_4"))>>
"@@.npc_priest;After a fashion,@@" <<=setup.getNpcName('npc_priest', 'formal')>> states with a twinkle in <<his npc_priest>> eye. "@@.npc_priest;You see Sisters <<=setup.getNpcName('npc_nun_constance', 'last')>> and <<=setup.getNpcName('npc_nun_patience', 'last')>> wished to spend some time with you, time a bit more... tender than your last encounter.@@"<br>
<br>
You think back to your battle against the two nuns in the gym contest as <<=setup.getNpcName('npc_priest', 'formal')>> motions for you to wait in one of the Church's side rooms while <<he npc_priest>> fetches the nuns.<br>
<br>
[<<moveTo "event_church_post_fight_1" "Accept the nuns' invitation." 180>>]<br>
<<elseif $scene.ritualAvailable>>
<<=setup.getNpcName('npc_priest', 'formal')>> smiles. "@@.npc_priest;Ah! I would call it fortuitous timing, but surely it is but the quiet guiding hand of the Goddess. <<=setup.getNpcName('npc_nun_joy', 'formal')>> is being prepared for her ritualistic release. You are welcome to aid.@@"<br>
<br>
[<<moveTo "event_church_work_ritual_2" "Take part in the ritual." 600>>]<br>
<<else>>
<<=setup.getNpcName('npc_priest', 'formal')>> shakes <<his npc_priest>> head. "@@.npc_priest;Your enthusiasm is, as always, appreciated, but there are no rituals for you to assist with at present. Perhaps some other day.@@"<br>
<br>
<</if>>
[<<moveTo "event_church_work_root" "Talk about other work." 60>>]<br>
[<<moveTo "event_church_root" "Return to the church." 60>>]
</div>/*#
#desc: get changed for ritual
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.church_work = true>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet "nun_fetish">>
<<wearItemSet "nun_fetish">>
<<addItem "gag_church">>
<<wearItem "gag_church" true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png">>
<div id="invframe" class="scrolltext">
You agree to assist with the ritual and <<=setup.getNpcName('npc_priest', 'formal')>> passes you off to a silent nun to get changed. A few minutes later and you are bedecked in tight holy latex and entering the Lady Chapel where <<=setup.getNpcName('npc_nun_joy', 'formal')>> has been positioned in the centre of the room — bound and spread and trembling with want — two Sisters kneeling between her legs teasing her with wands as she moans and drools around a large ring-gag.<br>
<br>
Several more nuns file in until there is close to a dozen of you in the room, <<=setup.getNpcName('npc_fem_supreme', 'formal')>> and <<=setup.getNpcName('npc_sissy_superior', 'formal')>> the last to arrive and they immediately begin to direct you and the other sisters into position for the ritual...<br>
<br>
[<<moveTo "event_church_work_ritual_3" "Continue." 600>>]
</div>/*#
#desc: ritual gangbang setup
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png">>
<div id="invframe" class="scrolltext">
Starting with the two High Priestesses you form a line of seniority; a Rod of Penance emerging from the Altar to which <<=setup.getNpcName('npc_nun_joy', 'formal')>> is strapped to fill her rear while the holy rod of a High Priestess enters her from either end.<br>
<br>
Whispering a prayer as her large, Goddess-blessed member slides into the nun, <<=setup.getNpcName('npc_fem_supreme', 'formal')>> stops hip to hip, grinding gently as a nun steps up from behind to enter the High Priestess; the same pattern repeating with each nun; each penetrating the next with members living or artificial.<br>
<br>
As the links form the nun in front of you presents you with options for how you will participate in the ritual, presenting you with a strap-on<<if $player.body_ref.vagina>><<if $player.body_ref.penis>>, a double-ended strap-on and a thick condom<<else>> and a double-ended strap-on<</if>><<else>> and a thick condom<</if>>...<br>
<br>
[<<moveTo "event_church_work_ritual_4" "Opt for the strap-on." 1800 "<<set $scene.fuck='strap'>>">>]<br>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
<<if $player.body_ref.penis>>
[<<moveTo "event_church_work_ritual_4" "Unlock your <<getWordMyPenis>> and slide the condom over it." 1800 "<<set $scene.fuck='penis'>>">>]<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_church_work_ritual_4" "Unlock your chastity belt and equip the double-ended strap-on." 1800 "<<set $scene.fuck='doublestrap'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You are locked in chastity.@@]<br>
<</if>>
<<else>>
<<if $player.body_ref.penis>>
[<<moveTo "event_church_work_ritual_4" "Slide a condom over your <<getWordMyPenis>>." 1800 "<<set $scene.fuck='penis'>>">>]<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_church_work_ritual_4" "Opt for the double-ended strap-on." 1800 "<<set $scene.fuck='doublestrap'>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: ritual gangbang
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.horny = 100>>
<<set $scene.removeCage = false>>
<<switch $scene.fuck>>
<<case 'penis'>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<case 'doublestrap'>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<addItem "strapon_large_double">>
<<wearItem "strapon_large_double" true>>
<<set $scene.strapon = true>>
<<case 'strap'>>
<<addItem "strapon_large">>
<<wearItem "strapon_large" true>>
<<set $scene.strapon = true>>
<</switch>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' $npc_sissy_superior.penis_size 'very' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.fuck>>
<<case 'penis'>>
You slide the offered sheath over your <<getWordMyPenis>> with a soft moan. Thicker than a normal condom its true purpose becomes clear as you slide into the eagerly wiggling nun bottom in front of you; as the condom seems to both keep you sensitive hard, while choking off an actual climax.
<<case 'doublestrap'>>
You slide one half of the double-ended strap-on into yourself before inserting the other end into the eagerly wiggling nun bottom in front of you.
<<case 'strap'>>
You buckled the strap-on <<if setup.checkItemTypeWorn("cage")>>over your <<if setup.isCage()>>cage<<else>>belt<</if>><<else>>into position<</if>> and then step forward into the eagerly wiggling nun bottom in front of you.
<</switch>>
<br><br>
The "chain" of nuns moves as one, a rippling rod chanting as one as they unite in fucking the passionately moaning <<=setup.getNpcName('npc_nun_joy', 'formal')>>.<br>
<br>
Pressed front to back with the sister in front of you the rhythmic thrusting continues for a minute or so before the nun clamps down on you and pulls you forward. A few moments after that and <<=setup.getNpcName('npc_sissy_superior', 'formal')>> is behind you, <<if $scene.removePlug>>gently removing your plug and <</if>>sliding into you from behind as you realise that this is more than a mere linear chain...<br>
<br>
Fucking away, latex-clad bodies pressed together you move forward a step at a time, until the nun in front of you circles around to "finish" between <<=ps(setup.getNpcName('npc_nun_joy', 'formal'))>> moaning lips and it is your turn to ritually step between the eager nun's thighs...<br>
<br>
[<<moveTo "event_church_work_ritual_5" "Complete the ritual." 600>>]
</div>/*#
#desc: ritual gangbang your turn
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png">>
<div id="invframe" class="scrolltext">
With <<=setup.getNpcName('npc_sissy_superior', 'formal')>> still in your rear you step forward and into <<=ps(setup.getNpcName('npc_nun_joy', 'formal'))>> <<getWordVagina>>.<br>
<br>
<<switch $scene.fuck>>
<<case 'penis'>>
The sheath pulled away you enter the dripping, eager nun raw,
<<switch $player.body.penissize[0]>>
<<case 0 1>>
despite her numerous, far larger partners, her body trembles and squeezes down around your <<getWordMyPenis>>.
<<case 2 3>>
and she somehow clenches down around your, feeling wet and supple and eager despite her many prior partners.
<<case 4 5>>
and tightens around your <<getWordMyPenis>>, wet and eager even after so many prior partners.
<<case 6>>
and her body shudders, accepting your full <<if $player.body_ref.horsecock || $player.body_ref.knot>>inhuman <</if>>girth all the way down to the <<if $player.body_ref.knot>>knotted <</if>>base. You can see a slight bump move within her taut belly; even after so many prior partners it would seem your size makes an impression.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
Your moans join those of your fellow sisters to fill the chamber as you fight back your own climax until you feel the trembling spasms as <<=setup.getNpcName('npc_nun_joy', 'formal')>> trembles with what you instinctively know is the latest in a string of many, many orgasms.
<<case 'doublestrap'>>
Despite her many couplings before she is tight and eager, hips humping against you to send tremors through to the end of the strap-on that is within you.
<<case 'strap'>>
Despite her many couplings before she is tight and eager, hips humping against you as you begin to thrust into her.
<</switch>>
Your heart is already pumping hard from the ritual thus far, latex squeaking with each thrust as you look down at <<=setup.getNpcName('npc_nun_joy', 'formal')>>; head tilted back to service the nun who had gone before you, a handful of other nuns stroking and licking her breast and body even as others have fallen in with the "chain" that continues to thrust into and through you.<br>
<br>
<<switch $scene.fuck>>
<<case 'penis'>>
You almost cum as <<=setup.getNpcName('npc_nun_joy', 'formal')>> clenches down with an orgasm of her own, but are instead pulled back such that you nearly ruin, only to be hurried around to the other end to dump your <<if $player.body_ref.cum_production >= 2>>massive load<<elseif $player.body_ref.cum_production == 0>>climax<<else>>load<</if>> directly down her throat.
<<case 'doublestrap'>>
Despite her many couplings before she is tight and eager, hips humping against you to send tremors through to the end of the strap-on that is within you.
<<case 'strap'>>
Despite her many couplings before she is tight and eager, hips humping against you as you begin to thrust into her.
<</switch>>
<br><br>
<<=setup.getNpcName('npc_sissy_superior', 'formal')>> enters <<=setup.getNpcName('npc_nun_joy', 'formal')>> for the second time as a nun gently pulls you away and you join other Sisters licking and kissing the bound <<=setup.getNpcName('npc_nun_joy', 'formal')>>, silently understanding that the ritual is nearing its end...<br>
<br>
[<<moveTo "event_church_work_ritual_6" "Continue." 600>>]
</div>/*#
#desc: ritual gangbang afterplay
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Lady Chapel at the Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.fuck>>
<<case 'penis'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<case 'doublestrap'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<removeItem "strapon_large_double" true>>
<<deleteItem "strapon_large_double">>
<<case 'strap'>>
<<removeItem 'strapon_large' true>>
<<deleteItem 'strapon_large'>>
<</switch>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<set $npc_priest.flags.work.ritual = true>>
<<removeItem "gag_church" true>>
<<deleteItem "gag_church">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_lady_chapel.png" setup.charImage("npc_sissy_superior","npc_sissy_superior") "npc_nun_joy" setup.charImage("npc_fem_supreme","npc_fem_supreme")>>
<div id="invframe" class="scrolltext">
You watch as <<=setup.getNpcName('npc_sissy_superior', 'formal')>> fucks <<=setup.getNpcName('npc_nun_joy', 'formal')>> for a second time; the sequence of orgasms that rockets through the bound nun as her sisters kneel about her licking and kissing her body a massive crescendo on top of what has come before.<br>
<br>
With an exultant cry that howls through her gag <<=setup.getNpcName('npc_nun_joy', 'formal')>> touches heaven, straining one final time in her bonds before going almost limp. A glance in her eyes tells you she has not quite fainted, but that she is also not quite present, her attention split between physical reality, and the realm of the Goddess...<br>
<br>
Soft towels are brought forth by the other sisters, tenderly cleaning <<=setup.getNpcName('npc_nun_joy', 'formal')>> as she recovers, her sacred chastity belt locked back where it belongs before she is released from the altar. Starting with yourself she embraces each of you in turn, whispering a gentle thanks before coming to the two High Priestesses and dropping to her knees.<br>
<br>
"@@.npc_fem_supreme;You have done well, Sister,@@" <<=setup.getNpcName('npc_fem_supreme', 'formal')>> intones.<br>
<br>
"@@.npc_sissy_superior;Your pleasure has brought joy to the Goddess, your dedication to restriction hallowing all that has happened today.@@" <<=setup.getNpcName('npc_sissy_superior', 'formal')>> adds.<br>
<br>
With a smile on her face <<=setup.getNpcName('npc_nun_joy', 'formal')>> is slowly led out from the room, as you, too are led away to <<if $scene.strapon>>shed your attachments and <</if>>change back into your street clothes.<br>
<br>
[<<moveTo "event_church_work_end" "Change and return to the church." 600 "<<useClothSetPop 'tmp' true>>">>]
</div>/*#
#desc: paid for working in church
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 25>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_interior.png" "npc_nun_constance">>
<div id="invframe" class="scrolltext">
Back in the church you are greeted by <<=setup.getNpcName('npc_nun_constance', 'formal')>> who thanks you again for your service before giving you a handful of credits in payment.<br>
<br>
"@@.npc_nun_constance;While any assistance of course garners with it spiritual rewards, the Goddess teaches that we must not ignore the world as it is, and so effort should be compensated, for your time has value and the last thing our order would do would be take advantage of the faithful. Spend it well, Sister, and may your presence brighten our doors in the future.@@"<br>
<br>
You thank her for the reverse offering.<br>
<br>
[<<moveTo "event_church_root" "She nods and walks away." 120>>]
</div>/*#
#desc: primrose in confessional
#status: RELEASED 0.9.2.0
#ignore_spell: n,d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Church of the Goddess">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_confession_internal.png" setup.getPrimroseImage("plug")>>
<div id="invframe" class="scrolltext">
You sit in silence, hood blocking out your perception when you feel a round bulge press against your face. The rubber-on-rubber traction jostles the hood ever so slightly, permitting you a small amount of leverage. You try and wriggle your head to settle it back into place when you hear a familiar voice: "@@.npc_primrose;bless me, <<=setup.getNpcName("npc_fem_supreme","formal")>>, for I have sinned. I've been a bad <<if $fetish.sissy>>sissy<<else>>doll<</if>>.@@" <<=setup.getNpcName("npc_primrose","first")>>? You hadn't expected to hear <<him npc_primrose>> here. <<he npc_primrose>> giggles awkwardly, lacking any and all humour.<br>
<br>
"@@.npc_fem_supreme;How have you sinned, my child?@@"<br>
<br>
"@@.npc_primrose;I have... doubted my path.@@" <<he npc_primrose>> sounds despondent. You stop moving, choosing to listen. If this rests on your conscious, you can confess your own sins later. "@@.npc_primrose;I—@@" <<he npc_primrose>> collects <<him npc_primrose>>self, holding back tears. "@@.npc_primrose;I don't understand what I have done wrong. I gave everything I had to my <<master npc_boss>>... my name, my appearance, my life... <<He npc_boss>> created me yet in that moment, <<he npc_boss>> rejected me. I don't understand. I look into <<his npc_boss>> eyes and see only disinterest and distaste. I made myself into what <<he npc_boss>> wanted of me and yet <<he npc_boss>> never responds with desire. At most, <<he npc_boss>> seems merely amused...@@"<br>
<br>
There is a pregnant pause as <<=setup.getNpcName("npc_primrose","first")>> collects <<him npc_primrose>>self. You are shocked to hear that someone so devoted to <<=setup.getNpcName("npc_boss","formal")>> would have any doubt in <<his npc_primrose>> heart. You stay still to not give away your eavesdropping, no matter how much the urge to comfort <<him npc_primrose>> lingers in you.<br>
<br>
"@@.npc_fem_supreme;My child, you have proven yourself as a devoted, loyal follower of your dominant. If <<he npc_boss>> is unwilling to give you the attention you are worth, you may want to consider finding someone more worthy of your devotion. Submission is a blessed gift and should a dominant fail to appreciate that gift, the Goddess decrees that you must find one more worthy of your offering.@@"<br>
<br>
You can practically hear the gears grinding against each other in <<=ps(setup.getNpcName("npc_primrose","first"))>> mind. <<his npc_primrose>> bulge presses harshly against your face as <<he npc_primrose>> doubles over, shivering. "@@.npc_primrose;N—no—no! I can't d—do that!@@" <<his npc_primrose>> shoulders tense, body locking up. "@@.npc_primrose;I—I need to ju—just prove myself! I need to prove my love and devotion! I need to give more! That will assuredly do it! Thank you, <<=setup.getNpcName("npc_fem_supreme","formal")>>!@@"<br>
<br>
You can hear a word of worry from <<=setup.getNpcName("npc_fem_supreme","formal")>> fall on deaf ears as <<=setup.getNpcName("npc_primrose","first")>> stands up and leaves the booth, renewed and ready to return to work. You hear the confessor softly sigh and then the two of you are back in silence, waiting for the next penitent. You hastily wriggle the hood back into place before the next penitent.<br>
<br>
[<<moveTo "event_church_work_confession_2" "Continue." 300>>]
</div>/*#
#desc: assist nun_grace with feminization encouragement intro
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_grace">>
<div id="invframe" class="scrolltext">
"@@.npc_nun_grace;I thank you, Sister <<=$player.first_name>>, for volunteering to help. Today I have the most wonderful task to share. A special healing ritual that has been passed down to us and which we perform for faithful who are deeply distress. The aim is to bring calm and clarity to turbulent thoughts physically, mentally, and spiritually. Towards that end I would ask you to lend your lips — while I give voice to the Goddess' words, your role will be to act as the "lips of the goddess." Together we shall provide comfort to a tortured soul, me through words, and you as the Goddess's boundless love and passion flows from your heart, to your lips, and out through every kiss...@@"<br>
<br>
She rises from her kneeling prayer and smiles at you.<br>
<br>
"@@.npc_nun_grace;Come, my Sisters will have finished preparing the supplicant, it is now our time to share the Goddess' blessing, and in so doing enact her divine will.@@"<br>
<br>
[<<moveTo "event_church_work_nun_grace_2" "Follow." 300>>]
</div>/*#
#desc: assist nun_grace with feminization encouragement npc_primrose introduce
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_grace" _TODOprimnakedblindfold>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_nun_grace', 'formal')>> into an even more private chamber where a figure is bound upon an altar. As you step closer you suppress surprise as you recognise the subject — it is <<=setup.getNpcName("npc_primrose","first")>>, stripped of <<his npc_primrose>> plugsuit, bound, blindfolded and naked save for <<his npc_primrose>> company-issued posture collar and the high-tech chastity prototype locked around <<his npc_primrose>> loins.<br>
<br>
<<=setup.getNpcName('npc_nun_grace', 'formal')>> notices your recognition and leans close to whisper a private reminder. "@@.npc_nun_grace;Take care, Sister. We are here not as ourselves, but as agents of the Goddess. We must not distract the subject with things beyond these walls, we are here only to provide comfort and compassion on behalf of our Glorious Lady.@@"<br>
<br>
You nod in understanding as <<=setup.getNpcName('npc_nun_grace', 'formal')>> takes a seat at <<=ps(setup.getNpcName("npc_primrose","first"))>> head. She places her hands gently on either side of <<=ps(setup.getNpcName("npc_primrose","first"))>> head, and <<he npc_primrose>> jerks in surprise for a moment before calming slightly as she brushes <<his npc_primrose>> cheeks...<br>
<br>
<<=setup.getNpcName('npc_nun_grace', 'formal')>> leans forward to place a gentle kiss on <<=ps(setup.getNpcName("npc_primrose","first"))>> forehead, the <<if $fetish.sissy>>sissy <</if>>scientist relaxing further in what you recognise as the first dips into subspace.<br>
<br>
[<<moveTo "event_church_work_nun_grace_3" "Watch and wait." 120>>]
</div>/*#
#desc: assist nun_grace with feminization encouragement kiss npc_primrose
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_grace" _TODOprimnakedblindfold>>
<div id="invframe" class="scrolltext">
While <<=setup.getNpcName('npc_nun_grace', 'formal')>> is the Goddess' voice, you step in as the lips of the Goddess as you begin to kiss <<=setup.getNpcName("npc_primrose","first")>>. Softly, tenderly you work your way across <<his npc_primrose>> body, trying to put the Goddesses love into each brush of your lips as you look to relieve the tension that so infuses the workaholic <<if $fetish.sissy>>sissy's<<else>>scientist's<</if>> flesh.<br>
<br>
"@@.npc_nun_grace;Shhh, relax, let the Goddess' love flow through you, for you deserve that love, and more. You are beautiful and soft, smart and adorable, lovely and loved, your <<if $fetish.sissy>>sissy<<else>>wonderful<</if>> service valued and cherished.@@"<br>
<br>
<<=setup.getNpcName("npc_primrose","first")>> trembles, and you get the feeling <<he npc_primrose>> is quite unaccustomed to such concentrated praise. You try to kiss with even more passion, feeling, as you do, the spirit of the Goddess moving through you...<br>
<br>
"@@.npc_primrose;But my <<Master npc_boss>>—@@" <<=setup.getNpcName("npc_primrose","first")>> starts to interrupt, the tension that you had started to draw out of <<him npc_primrose>> rearing up once again.<br>
<br>
"@@.npc_nun_grace;Shhhh, there are no <<Master npc_boss>>s here, only the Goddess' love.@@" <<=setup.getNpcName('npc_nun_grace', 'formal')>> replies in a verbal riposte. "@@.npc_nun_grace;She can see all of your obedient beauty, and she is pleased. We might pray for her to bless your <<Master npc_boss>> with such revelation... but should <<he npc_boss>> resist the truth of your gifts, the wonder you offer that is clear to any with eyes... well, the Goddess is great, but she cannot thaw a heart of stone... and in that, perhaps is a sign to look to one more in tune with the Goddess' will...@@"<br>
<br>
<<=setup.getNpcName('npc_nun_grace', 'formal')>> pauses, as if waiting for further objection, but the <<if $fetish.sissy>>sissy <</if>>scientist is silent... and you keep kissing<<if $fetish.cum>>, moving between <<his npc_primrose>> thighs to lick up a thin trickle of joy that had leaked past <<his npc_primrose>> chastity cage<</if>>.<br>
<br>
"@@.npc_nun_grace;Let us speak no more of <<master npc_boss>>s. This ritual is about the self. Tell me what makes you beautiful, I can see so many things... but I would hear it from your lips, in your own lovely voice. Sing your truth to the heavens, and remember, one should never keep silent secrets from the Goddess...@@"<br>
<br>
[<<moveTo "event_church_work_nun_grace_4" "Kiss and listen." 300>>]
</div>/*#
#desc: assist nun_grace with feminization encouragement npc_primrose self-advocates
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_grace" _TODOprimnakedblindfold>>
<div id="invframe" class="scrolltext">
There is a long pause, nearly a minute passing with the only sound in the chamber your soft kisses as you do your part to silently show <<=setup.getNpcName("npc_primrose","first")>> the Goddess' love.<br>
<br>
"@@.npc_primrose;I... I think my... nails look nice today.@@" <<=setup.getNpcName("npc_primrose","first")>> finally replies, <<his npc_primrose>> words hesitant and soft... but with the faintest trace of pride. You work your way up past <<his npc_primrose>> belly, your tongue making gentle circles around <<his npc_primrose>> cute pink nipples as you kiss the pretty little nubs.<br>
<br>
"@@.npc_nun_grace;They do look lovely! Do you do them yourself?@@" <<=setup.getNpcName('npc_nun_grace', 'formal')>> replies in encouragement.<br>
<br>
"@@.npc_primrose;Y-yes...@@" <<=setup.getNpcName("npc_primrose","first")>> nervously responds.<br>
<br>
"@@.npc_nun_grace;You are doing a fine job, investing in oneself is always good... but so, too, is the benefit of relaxing and accepting service. When was the last time you've had someone paint your nails for you? When was the last time you've gotten a mani-pedi?@@"<br>
<br>
"@@.npc_primrose;I— I don't remember...@@" <<=setup.getNpcName("npc_primrose","first")>> replies after another long pause.<br>
<br>
"@@.npc_nun_grace;Oh, that is to sad to hear! A pretty thing like yourself deserves to be pampered from time to time. Tell me, has your <<Master npc_primrose>> ever done your nails?@@"<br>
<br>
This suggestion seems to almost shock <<=setup.getNpcName("npc_primrose","first")>> as <<he npc_primrose>> replies quickly, <<his npc_primrose>> jerking against <<his npc_primrose>> bonds as you are forced to momentarily jump out of the way before resuming your kisses. "@@.npc_primrose;Of course not! But—@@"<br>
<br>
<<=setup.getNpcName('npc_nun_grace', 'formal')>> is much slower to respond, but her silence, and the way she strokes <<=ps(setup.getNpcName("npc_primrose","first"))>> face until <<he npc_primrose>> calms speaks volumes.<br>
<br>
"@@.npc_nun_grace;I see... tell me, what of your hair? It really is so lovely and soft... I presume your <<Master npc_boss>> likes it this way?@@"<br>
<br>
[<<moveTo "event_church_work_nun_grace_5" "Continue to kiss." 600>>]
</div>/*#
#desc: assist nun_grace with feminization encouragement nitpick npc_boss
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_grace" _TODOprimnakedblindfold>>
<div id="invframe" class="scrolltext">
"@@.npc_primrose;<<He npc_boss>> does!@@" <<=setup.getNpcName("npc_primrose","first")>> replies, sounding more confident in asserting a more positive aspect of <<his npc_boss>> so-called <<Master npc_boss>>, <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
"@@.npc_nun_grace;Good, good... and how does your <<Master npc_boss>> communicate this approval? How do you know that <<he npc_boss>> cherishes your beauty, and your service?@@"<br>
<br>
As you continue to kiss you have to admire the linguistic judo <<=setup.getNpcName('npc_nun_grace', 'formal')>> has so expertly deployed, <<=setup.getNpcName("npc_primrose","first")>> doubtful and hesitant as <<he npc_primrose>> replies... but with a subtle undercurrent of realisation, rather than mere nerves.<br>
<br>
"@@.npc_primrose;Well, I guess... I mean, it was like this when I came into <<his npc_boss>> service... and it's how it has been done since...@@"<br>
<br>
"@@.npc_nun_grace;You sound unsure.@@"<br>
<br>
"@@.npc_primrose;I... guess I don't remember anymore...@@"<br>
<br>
"@@.npc_nun_grace;Memory can be such a fickle thing... but what is never fickle is the Goddess' love. Relax, my dear, just focus on your breathing, feel the lips of the Goddess, her love washing over you, and relax...@@"<br>
<br>
Seed planted, <<=setup.getNpcName('npc_nun_grace', 'formal')>> pulls back, the remainder of the ritual returning to more gentle prayer, praise, and meditation. Eventually <<=setup.getNpcName("npc_primrose","first")>> becomes so relaxed that <<he npc_primrose>> falls asleep, <<=setup.getNpcName('npc_nun_grace', 'formal')>> petting <<his npc_primrose>> head for a few moments longer before rising to her feet and motioning for you to follow her out of the room.<br>
<br>
[<<moveTo "event_church_work_nun_grace_6" "Continue to kiss." 300>>]
</div>/*#
#desc: assist nun_grace with feminization encouragement finish
#status: RELEASED 0.9.4.0
#*/
<<set $player.location to "Church of the Goddess">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/church_dorm_room.png" "npc_nun_grace">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_nun_grace', 'formal')>> leads you out of the room and bows in thanks. "@@.npc_nun_grace;You performed wonderfully as the lips of the Goddess, I could sense her grace flowing into the subject with every kiss. The sleep <<he npc_primrose>> now enjoys will be very rejuvenating. If <<he npc_primrose>> is very lucky, perhaps the Goddess shall bless <<him npc_primrose>> with a dream vision... though, I believe a revelation has already come.@@"<br>
<br>
The nun bows a final time. "@@.npc_nun_grace;I must remain in vigil until the subject awakes, to guide them up from the delight of sub-space and back to the real world. I thank you, again, for your contribution, may the Goddess bless you in all that you do.@@"<br>
<br>
You curtsy back and return to the church.<br>
<br>
[<<moveTo "event_church_work_end" "Leave the room." 120>>]
</div>/*#
#desc: fit bimbo confront while running
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_elliptical.png" setup.charImage("npc_fit_bimbo") _TODOothergymbimbo>>
<div id="invframe" class="scrolltext">
You're chugging away on the treadmill when you see a trio of fitness bunnies, with the queen bimbo herself, <<=setup.getNpcName("npc_fit_bimbo","first")>>, strolling across the floor. Made of plastic and pumps they draw plenty of attention from the more mundane gym customers, glances ranging from disgust to jealousy to furtive glances and naked lust following "Team Plastic" as they make their way across the floor... and come to a stop at your treadmill.<br>
<br>
"@@.npc_fit_bimbo;Hey girlfriend!@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> states in greeting as she leans over the front of the treadmill, showing off her cleavage as she taps the control to increase your intensity. "@@.npc_fit_bimbo;You working HARD...@@" she asks, before one of the two other women, who now stand flanking you on either side, tacks on "@@.generic_female1;... or hardly working it?@@" Along with a quick slap on the ass.<br>
<br>
"@@.generic_female2;Mmmm, love that jiggle,@@" the final bimbo purrs, your ability to respond hampered as you all but sprint to keep up with the racing treadmill.<br>
<br>
<<if setup.calcBreastSize() != "none">>
"@@.npc_fit_bimbo;Love that jiggle, love that BOUNCE,@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> adds with a leering glance to your <<if setup.checkItemTypeWorn('breastform')>>fake <</if>>breasts <<if setup.checkItemTypeTag("bra", ["gym"])>>putting the "space-age" materials of your sports bra to the test<<elseif setup.checkItemTypeWorn('bra')>>pushing your bra to its limit<<else>>bounce merrily without so much as a bra to wrangle them<</if>>.
<<else>>
"@@.npc_fit_bimbo;Love that jiggle... but where's the bounce?@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> adds with an eye towards your flat chest. "@@.npc_fit_bimbo;Bitches should be BIG,@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> continues as she and her two friends puff out their chests and shuffle slightly.
<</if>>
<br><br>
Your attention is split between struggling not to get flung off the treadmill and feeling like you're under the proverbial microscope as the trio of sexy, sporty, sluts encircles you like a pride of cats playing with its food.<br>
<br>
[<<moveTo "event_gym_bimbo_peer_pressure_2" "Continue." 300>>]
</div>/*#
#desc: fit bimbo confront while running
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_elliptical.png" setup.charImage("npc_fit_bimbo") _TODOothergymbimbo>>
<div id="invframe" class="scrolltext">
"@@.npc_fit_bimbo;So, slut,@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> as she continues to fiddle with the treadmill controls, turning them down just enough for you to keep up. "@@.npc_fit_bimbo;Couldn't help but notice you hiding out on the sidelines here... and that just won't do.@@"<br>
<br>
"@@.generic_female2;Yeah!@@" One of her entourage chirps in.<br>
<br>
"@@.npc_fit_bimbo;Bimbos belong front and centre. We're the plastic trophy everyone is aspiring to have... or be...@@"<br>
<br>
"@@.generic_female1;Or, like, both!@@" The other bimbo finishes.<br>
<br>
"@@.npc_fit_bimbo;Exactly...@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> continues with a lusty smile. "@@.npc_fit_bimbo;So I think you need to make it up to your fellow gym-goers, right? Like, look at those <<if $npc_swolebro.fem>>gals<<else>>hunks<</if>> over there lifting. You COULD have been considerate and done some pilates where they'd have a nice view and really help them get pumped for their workout... that you didn't, well... me and the girls think you should go over and make it up to them, isn't that right, girls?@@"<br>
<br>
"@@.generic_female2;Fuck yeah!@@" "@@.generic_female1;It's a bimbo's duty!@@" Her companions excitedly confirm.<br>
<br>
"@@.npc_fit_bimbo;So, now that your workout is finished,@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> states as she mashes the stop button on the treadmill and almost sending you leaping forward, "@@.npc_fit_bimbo;Well, I'd say now is the time to make it up to them right?@@"<br>
<br>
"@@.generic_female1;Gym pride!@@"<br>
<br>
"@@.npc_fit_bimbo;Oh, and babe?@@" <<=setup.getNpcName("npc_fit_bimbo","first")>> adds as you step off the treadmill "@@.npc_fit_bimbo;Make a show if it. I want every eye in this building on DAT ASS while you walk over there and ask those big, strong <<men npc_swolebro>> if they could help stretch you out...@@"<br>
<br>
"@@.generic_female2;Dat DEEP stretch!@@" "@@.generic_female1;Go get 'em, slut!@@" Her companions add... along with another friendly slap on the ass.<br>
<br>
[<<moveTo "event_gym_bimbo_peer_pressure_3" "Go do your gym-bimbo duty." 300>>]<br>
<<if setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;You're too much of a slut to turn down a bimbo challenge.@@]
<<elseif setup.getTotalValue("bimbofication") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_gym_bimbo_peer_pressure_3_abort" "You're not that kind of slut!" 180 "<<spendWillpower 1>>">>] <<hint $options "Denying your inner slut would be an act of will.">>
<<else>>
[@@.link_locked;You're too much of a non-resisting slut to turn down such a bimbo challenge.@@]
<</if>>
<<else>>
[<<moveTo "event_gym_bimbo_peer_pressure_3_abort" "You're not that kind of slut!" 180>>]
<</if>>
</div>/*#
#desc: decline fit bimbo offer
#status: RELEASED 0.9.4.0
#ignore_spell: squattin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_elliptical.png" setup.charImage("npc_fit_bimbo") _TODOothergymbimbo>>
<div id="invframe" class="scrolltext">
You resist the peer pressure of the gym bimbo's offer and reply that you actually need to be somewhere.<br>
<br>
"@@.generic_female2;Be somewhere?@@" "@@.generic_female1;Only place you need to be is squattin' on some DICK!@@" Team Plastic taunts you.<br>
<br>
<<=setup.getNpcName("npc_fit_bimbo","first")>> sniffs in dismissal. "@@.npc_fit_bimbo;Hmf, and I thought you were taking to your lessons quite well... it would seem SOMEONE needs to spend more time in class... and more time working that ass.@@"<br>
<br>
Laughing and chattering the gym bimbos wander off, leaving you along to consider what to do next.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
</div>/*#
#desc: head across gym to fulfill fit bimbo command
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
Encouraged by your slutty friends, you take a moment to adjust yourself and go striding across the gym, putting a swish in every strutting step as you soak in the attention... and admire your reflection in the gym's many mirrors.<br>
<br>
<<printThought "I really am looking damn good...">><br>
<br>
You can't be sure that ALL eyes in the gym are on you... but it has to be pretty close, and certainly all the <<=$npc_swolebro.Bro + "s">> are drinking you in as you follow <<=ps(setup.getNpcName("npc_fit_bimbo","first"))>> instructions to approach the gym's resident muscle-heads and ask if any of them are "up" for helping you stretch. Just in case there was any potential to misinterpret your words, you lick your lips and pop your hip to the side, doing everything you can to ooze sex as you entice a response.<br>
<br>
[<<moveTo "event_gym_bimbo_peer_pressure_4" "Who could possibly turn you down?" 300>>]
</div>/*#
#desc: fulfill fit bimbo command
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<<set $scene.removebelt = $player.body_ref.vagina && setup.canSexOrRemoveChastity("vag", "")>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
A moment ago you were dripping with sweat and desire... now you're sandwiched between half a dozen <<if $npc_swolebro.fem>>amazonian<<else>>hunky<</if>> mountains of <<if $npc_swolebro.fem>>lady<<else>>man<</if>>-muscle, <<if $scene.removebelt>>safety equipment put aside as you unlock to take <</if>>a hard cock in every hole as you enjoy a REAL bimbo workout: getting railed, ravaged, and rewarded... by <<if $fetish.cum>>load after glorious load<<else>>orgasm after glorious orgasm<</if>>... though that's almost secondary compared to you "discharging" your gym-bimbo duty of making sure that all of these hot and <<if $npc_swolebro.fem>>heavenly<<else>>hunky<</if>> <<men npc_swolebro>> get off with your body.<br>
<br>
<<printThought "A gym slut exists to be used!">> Is the thought running through your head as you deep-throat yet another thick shaft, breathing deep the thick, strong, sweaty scent of <<man npc_swolebro>> all while... capped off by someone putting out an empty shaker bottle for your partners to leave tips!<br>
<br>
[<<moveTo "event_gym_bimbo_peer_pressure_5" "Suck and fuck!" 600>>]
</div>/*#
#desc: fulfill fit bimbo command, suck and fuck
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 15 'normal' $EXPOSED>>
<<applyExperience 'oral' 15 'normal' $EXPOSED>>
<<addCredits 83>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
By the time you've finished sucking and fucking all the swolebros, plus a few other gym regulars who somehow heard what is going on and pop in to the side-room to pound a few reps into you, you've had quite the work-out indeed. Your <<if setup.getTotalValue("oral") > 15>>legendary <</if>>throat stretched, your ass gaping<<if $player.body_ref.vagina>> and your cunt bred<</if>><<if $fetish.cum>>, <<if $player.body_ref.vagina>>all three<<else>>both<</if>> holes leaking thick, delicious cum<</if>> as things finally come to a close and your gym bimbo pals show back up.<br>
<br>
"@@.generic_female2;Hey girlfriend!@@" "@@.generic_female1;Hey slut!@@" Team Plastic shouts in unison as they pose for selfies next to your tired body.<br>
<br>
After the requisite social media engagement is covered, <<=setup.getNpcName("npc_fit_bimbo","first")>> gathers up your jar-full of credits and, after pulling out a portion for the "Bimbo Pension Fund" hands you your stack with a smile.<br>
<br>
"@@.npc_fit_bimbo;From gym slut to gym whore! You really seized that opportunity. Goddess, you look more used than <<if $fetish.cum>>the barrack's shared jizz-rag or <</if>>the fifteen kilo dumbbells at a curl convention. Talk about an inspiration and an example for the whole gym to enjoy!@@"<br>
<br>
<<if State.hasPlayed("event_gym_contest_7_win")>>
"@@.generic_female2;Like, duh! She's Miss Hard Pump!@@" "@@.generic_female1;More like Miss Hard Pounded!@@"
<<else>>
"@@.generic_female2;You should, like, totally try out for Miss Hard Pump!@@" "@@.generic_female1;Too bad it isn't Miss Hard Pounded, you'd already be the winner!@@"
<</if>>
Your friends encourage as they help you back to your feet and give you a hand cleaning up.<br>
<br>
"@@.npc_fit_bimbo;No matter how hard gym bimbo serve her fellow lifters, if she's going to be in public she needs to be her eye-candy best. Makeup on point, clothes tight, heels high, the perfect slut to oogle and fuck!@@"<br>
<br>
You giggle along with your fellow bimbos, strutting across the floor in hip-swinging, boob-bouncing formation as a final show of salaciousness before you head off your separate ways.<br>
<br>
[<<moveTo "room_gym_main" "What to do now..." 60>>]
</div>/*#
#desc: go jogging
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<applyExperience 'stamina' 9 'normal' $INCOGNITO>>
<<if setup.getTotalValue("stamina") < 6 && !setup.hasThreshold('stamina', 'jogging', 'first_jog')>>
<<setThreshold 'stamina' 'jogging' 'first_jog'>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<elseif setup.getTotalValue("stamina") >= 8 && setup.checkItemTypeWorn("plug") && !setup.hasThreshold('stamina', 'jogging', 'run_plugged')>>
<<setThreshold 'stamina' 'gym_stamina' 'run_plugged'>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<</if>>
<<set $scene.dogEvent = $fetish.bestiality_hard && random(1,4) <= 2>>
<<set $scene.otherEvent = "none">>
<<if !$scene.dogEvent && random(5) <= 1>>
<<set $scene.otherEvent = ['opossum','dog','none','none','none'].random()>>
<<switch $scene.otherEvent>>
<<case 'opossum'>>
<<applyStress -10>>
<</switch>>
<<else>>
<<set $scene.dogJoined = false>>
<<if $player.flags.fuckedbydogjogging > 0>>
<<if $player.flags.fuckedbydogpackjogging > 0 && random(1,2) == 1>>
<<set $scene.event = 'dogpackrepeat'>>
<<elseif $player.flags.fuckedbydogjogging > 0 && random(1,2) == 1>>
<<set $scene.event = 'dogpackfirst'>>
<<elseif $npc_dog.stage < 1>>
<<set $scene.event = 'dogadopt'>>
<<else>>
<<set $scene.dogEvent = false>>
<<set $scene.event = 'none'>>
<</if>>
<<else>>
<<set $scene.event = 'dogfirst'>>
<</if>>
<</if>>
<<set $scene.dogJoined = $npc_dog.stage > 0 && random(1,4) == 1>>
<<if $scene.dogEvent && ($npc_dog.stage > 0 && !$scene.dogJoined) && ($player.flags.fuckedbydogpackjogging > 0 && $scene.event != 'dogpackrepeat') && $scene.event != 'dogpackfirst' && setup.checkItemTypeWorn("plug")>>
<<set $scene.dogEvent=false>>
<<set $scene.otherEvent='none'>>
<</if>>
<</if>>
<<set $player.location to "The Streets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You go for a jog around the block.<br>
<br>
<<if setup.getTotalValue("stamina") >= 8>>
Jogging around the block <<if setup.checkItemTypeWorn("plug")>>even with a <<=setup.getItemTypeName("plug")>> in your ass, <</if>>has become too easy so you decide to do a proper run, instead.<br>
<br>
<<if $npc_dog.stage > 0>>
<<if $scene.dogJoined>>
<<=setup.getNpcName("npc_dog","first")>> joins you on your jog, running alongside you just like the old days.
<<else>>
<<=setup.getNpcName("npc_dog","first")>> declines to join you on your jog, seemingly more interested in laying about the flat.
<</if>>
<</if>>
/% TODOfuture: other events? %/
<<if $scene.dogEvent && !$scene.dogJoined>>
<<switch $scene.event>>
<<case 'dogpackrepeat'>>
Once again the pack of neighbourhood dogs starts to chase you with enthusiasm. You know from experience that they'll catch you eventually...<br>
<br>
[<<moveTo "event_jogging_dog_pack_repeat" "Give it your all and try to escape." 1200 "<<set $scene.style = 'flee'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_repeat" "Give them a merry chase before the fun begins." 300 "<<set $scene.style = 'run'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_repeat" "Resign yourself to the inevitable and let them take you now." 60 "<<set $scene.style = 'resigned'>>">>]<br>
<<if setup.getTotalValue("bestiality") >=3>>
[<<moveTo "event_jogging_dog_pack_repeat" "Why wait? Get down on all fours for the REAL workout." 30 "<<set $scene.style = 'glee'>>">>]
<<else>>
[@@.link_locked;I should at least pretend to run away, I'm not the kind of girl to just bend over like a bitch immediately... am I?@@]
<</if>>
<<case 'dogpackfirst'>>
Running along you seem to attract the attention of a small pack of neighbourhood dogs. They seem a bit more energetic than your previous friend giving swift chase after you. Looking back, you don't think there's any way you can outrun them, and who knows what they'll do if they succeed in chasing you down...<br>
<br>
[<<moveTo "event_jogging_dog_pack_1" "Hide from them." 60 "<<set $scene.action = 'hide'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_1" "Maybe they just want to have some fun? Running might antagonize them to chase..." 120 "<<set $scene.action = 'play'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_1" "Keep trying to run." 120 "<<set $scene.action = 'run'>>">>]
<<case 'dogadopt'>>
Near the start of your jog you gain a partner, the large dog you've run with before falling in next to you and matching your pace.<br>
<br>
You enjoy your jog, going a bit further than you usually do thanks to the mental boost of a companion by your side.<br>
<br>
You give the dog a congratulatory scratch behind the ear as your gaze drifts down between his legs, and his OBVIOUS current happiness...<br>
<br>
<<printThought "Hmm... post-work out cooldown?">><br>
<br>
[<<moveTo "event_jogging_dog_1" "Just scratch his ears and ignore the throbbing beast dangling below his belly." 60 "<<set $scene.sex = false>>">>]<br>
[<<moveTo "event_jogging_dog_1" 'Find a private alley for some more "fun" with your new friend.' 120 "<<set $scene.sex = true>>">>]
<<case 'dogfirst'>>
Partway through your jog you gain a partner, a large dog falling in next to you and matching your pace. At first you're a bit worried at its presence, but the dog smiles up at you, seemingly just interested in having someone to run with.<br>
<br>
You find the company enjoyable as well, finishing off the rest of your jog with your new companion at your side before arriving back in front of your building.<br>
<br>
You give the dog a congratulatory scratch behind the ear when you notice two things — one, your new friend is male and two he is apparently VERY happy at the moment...<br>
<br>
<<printThought "Do I... do I dare?">><br>
<br>
[<<moveTo "event_jogging_dog_1" "Just scratch his ears and ignore the throbbing beast dangling below his belly." 60 "<<set $scene.sex = false>>">>]<br>
[<<moveTo "event_jogging_dog_1" 'Find a private alley for some more "fun" with your new friend.' 120 "<<set $scene.sex = true>>">>]
<<default>>
ERROR: unexpected scene.event <<=$scene.event>>
<</switch>>
<<else>>
<<switch $scene.otherEvent>>
<<case "opossum">>
Cutting through an alleyway to avoid some construction you hear a rustle in a dumpster and an opossum jumps out.<br>
<br>
You lock eyes with the so-called trash cat as it opens its mouth to bear its fangs, only to turn away from you and instead scream at its own ass.<br>
<br>
Mindful that it is a wild animal you take a careful wide berth around it as you continue on your way. The amusing sight has made you smile and lightened your mood.
<<case "dog">>
You have a bit of trouble with a pack of dogs that starts to chase you, <<if $scene.dogJoined>>but your friend scares them off<<else>>but you manage to get away before they can catch up<</if>>.<br>
<br>
<<if setup.getTotalValue("stamina") > 15>>
By the end of your run you're still feeling almost completely fresh. Looks like you either need to find something else to do for cardio or start running marathons because <<if setup.checkItemTypeWorn("plug")>>even with the <<=setup.getItemTypeName("plug")>> shifting and grinding and stimulating you with each step <</if>>this isn't doing much.
<<else>>
You manage to get your heart-rate up a bit, but just running<<if setup.checkItemTypeWorn("plug")>>, even with the <<=setup.getItemTypeName("plug")>> shifting and grinding and stimulating you with each step,<</if>> isn't really doing much to improve your cardio at this point.
<</if>>
<<case 'none'>>
You pound pavement through several blocks of urban jungle — towering skyscrapers lining near-identical streets, your jog unperturbed as you reflect on the megalopolis that you live in.
<<default>>
ERROR: unexpected jogging other event <<=$scene.otherEvent>>
<</switch>>
<br><br>
[<<moveTo "room_foyer" "Home" 1800>>]
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
<<if setup.checkItemTypeWorn("plug")>>
The act of jogging with a <<=setup.getItemTypeName("plug")>> occupying your bum proves quite different from a "normal" run. Every jolting step has the plug shifting inside of you, pressing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> and sending your heart racing.<br>
<br>
<<if setup.getTotalValue("stamina") < 8>>
In the end the added distraction proves too much as you are forced to slow to a walk, the continued, if more subtle, distraction of the plug ensuring that you don't quite manage to calm down.
<<else>>
You've built up your stamina enough to have the energy to "enjoy" your rear friend whilst also maintaining a good jogging pace for the whole two trips around the block.
<</if>>
<<else>>
Though you're soon breathing heavy, you manage to push through, maintaining a jogging pace twice around the block, though you can't, but feel like something is missing to really get the most out of your workout.
<</if>>
<br><br>
<<include workoutBreasts>>
/* TODO: other events? */
Your jog is relatively uneventful. You pass a pack of dogs sleeping in an alleyway, one of them looks up, but apparently decides you aren't interesting enough to chase and goes back to sleep.<br>
<br>
[<<moveTo "room_foyer" "Home" 1800>>]
<<else>>
You haven't gone much more than a half dozen steps before you start breathing heavy, by the time you're to the end of the block you've slowed, finishing your circuit at a walking pace.<br>
<br>
<<printThought "Wow am I out of shape.">><br>
<br>
Trudging back up to your flat you feel physically exhausted, but mentally energised, having taken the first step towards building up your cardio.<br>
<br>
<<include workoutBreasts>>
[<<moveTo "room_foyer" "Home" 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: interact with dog at the end of your run.
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'penis' 7 'very' $SEEN_STRANGER>>
<<set $player.timebased.dirty += 25>>
<<else>>
<<applyStress -5>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location to "A Deserted Alleyway">>
<<else>>
<<set $player.location to "The Streets">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/back_alley.png">>
<<else>>
<<createAdvBGR "./images/locations/street.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Leading the dog into a nearby alleyway it rolls onto its back to expose its belly and its throbbing, unsheathed member. A little nervous you reach down and take it in hand, the dog showing obvious delight as you feel the very hot shaft in your hand.<br>
<br>
Stroking up and down you marvel at its heat and unique texture, watching as its knot swells you fondle with both hands until the beast starts to get up, rising to its feet and swiftly circling around to nose your rear...<br>
<br>
<<printThought "What it wants... do I dare?">><br>
<br>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_jogging_dog_2" "Expose your rear and let him finish." 600 "<<set $scene.anal = true>>">>]<br>
<<elseif setup.getTotalValue("bimbofication") > 10 || $player.flags.masturbation.dogcock>>
[<<moveTo "event_jogging_dog_2" "You've knotted yourself with a dildo... and now you want the real thing." 600 "<<set $scene.anal = true>>">>]<br>
<<else>>
[@@.link_locked;No way, taking it in the rear for the first time and it not even being a human? Nope, no way am I that depraved.@@]<br>
<</if>>
[<<moveTo "event_jogging_dog_2" "Gently push him off and be on your way." 120 "<<set $scene.anal = false>>">>]
<<else>>
The dog pants happily as you scratch behind his ears and rub his belly, rubbing up against your leg for a bit before finally wandering off. You feel a bit happier with yourself having enjoyed the brief unconditional approval of the animal and you have a bit of a skip in your step as you head up to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 120>>]
<</if>>
</div>/*#
#desc: option for full sex with dog after run.
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.anal>>
<<set $player.flags.fuckedbydogjogging += 1>>
<<set $player.timebased.dirty += 25>>
<<applyExperience 'bestiality' 2 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<set $scene.first = !$player.virgin.anal>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "dog">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "enthusiast">>
<<include "analUnlocks">>
<</if>>
<<if setup.hasThreshold('bestiality', 'dog', 'basic')>>
<<applyExperience 'bestiality' 2 'little' $SEEN_STRANGER>>
<<else>>
<<setThreshold 'bestiality' 'dog' 'basic'>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_dog'
0
'event_psychiatrist_session_bestiality_dog'
false
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_dog'
0
'theme_church_confession_dog'
true
>>
<</if>>
<<else>>
<<applyStress -5>>
<</if>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
<<if $scene.first>>
You don't care that your first time is about to be had with a beast, rather than a human... or maybe that fact makes it even hotter. Whatever depraved thoughts whirl in your mind, you want his knot, you want to feel its heat swelling in your ass, making you his bitch.<br>
<br>
<</if>>
Pulling down your pants <<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>and removing the plug from your rear <</if>>you get down on your hands and knees as your new friend drools in anticipation.<br>
<br>
He shows remarkable patience, waiting for you to get into position before running his tongue between your legs, giving you a lingering tongue-washing rimjob until you too are panting in anticipation.<br>
<br>
You bite your lip as he moves forward, one forepaw landing on either side of your head as his hot dog-cock presses against your hole.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
Though well within your limits, his cock is exotic and interesting, so much hotter than any human member and then when he hits depth and you feel his knot swell for the first time. You are in heaven, moaning in delight as you are, for the first time, filled with canine cock.
<<else>>
He is big, just like you love, his almost searing-hot member plunging into you with a single powerful thrust. You gasp once and then moan as his knot swells inside of you, locked ass to cock with your new "friend" as he sets forth humping away.
<</if>>
<br><br>
Even mostly immobile thanks to his knot he manages to churn up your insides and, as your eyes roll back in pleasure and your limbs collapse beneath you, he fills you with cum, your own delight leaking out onto the pavement.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
He is quite large by your standards, but also very smooth and, with the help of his copious dog cum, he manages to slide into you, working his way deeper and deeper until it feels like a giant heated pylon is filling your entire insides.
<<else>>
It is tight, so, so tight, but the tip of him manages to slide into you, his heat flowing through your body and making you moan with each shallow thrust, working his way as deep as he can, his heat radiating through your body.
<</if>>
<br><br>
Lightly pinned to the ground under his weight you moan like a bitch in heat, as he thrusts back and forth, your body far from able to take his full girth — to say nothing of the large knot that occasionally presses against your hole. Still, it proves to be enough and you feel a swelling deep inside as a hot jet of dog cum is deposited inside of you as the intensity of things sparks a climax of your own.
<</if>>
<br><br>
<<if $player.flags.fuckedbydogjogging > 1>>
[<<moveTo "event_dog_find_1" "Head home." 120>>]
<<else>>
Finally separating, he leans down to playfully lick your face before scampering off. It takes you several minutes, but you eventually manage to return to your feet, some of his seed leaking down your leg <<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>until you slide your plug back into place,<<else>>as you<</if>> leave the alleyway and head back up to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 120>>]
<</if>>
<<else>>
Gently pushing the animal out of the way, you hurry back to your flat before you can be tempted to do anything crazy. He whines a little, but leaves you to depart, capering away as you close the door behind you and head for the elevator.<br>
<br>
[<<moveTo "room_foyer" "Home" 120>>]
<</if>>
</div>/*#
#desc: Chased by dogs whilst running
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'hide'>>
<<applyFatigue 30>>
<<case 'run'>>
<<applyFatigue 40>>
<<case 'play'>>
<<applyFatigue 10>>
<</switch>>
<</if>>
<<set $player.location to "The Streets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'hide'>>
Putting on a burst of speed you manage to duck into a shopfront, the shop owner shooing the dogs away and giving you some water.<br>
<br>
Thanking the shopkeeper for the assistance you jog home, always on the lookout for the return of the dogs.<br>
<br>
<<printThought "That was a bit scary... though I guess them chasing me is a bit of a bonus encouragement to get better cardio!">><br>
<br>
[<<moveTo "room_foyer" "Home" 1200>>]
<<case 'run'>>
<<if $fetish.get_raped>>
You put on a burst of speed in hopes of outrunning the dogs, but they continue to close. You cut through an alley in hopes of reaching your home, glancing back to note that they are about to overtake you, knocking you to the ground and then circling around your fallen form.<br>
<br>
[<<moveTo "event_jogging_dog_pack_2" "Continue." 300 "<<set $scene.style = 'rape'>>">>]
<<else>>
You put on a burst of speed in hopes of outrunning the dogs, but they continue to close. You come to an alley and are faced with a decision.<br>
<br>
[<<moveTo "event_jogging_dog_pack_2" "Maybe it's better to just give in? After all, you had fun with your friend what's a few more partners?" 300 "<<set $scene.style='give_in'>>">>]<br>
[<<moveTo "event_jogging_dog_pack_2" "Dig deep, you recall there's a liquor store at the far end of the alley if you can make it a little further you'll be safe..." 300 "<<set $scene.style='saved'>>">>]<br>
<</if>>
<<case 'play'>>
Finding a private patch of grass you turn to find you were right — the dogs just looking for a bit of fun and soon you are rolling around together as they lick you enthusiastically and you pet whatever comes into reach.<br>
<br>
From your position on your back you can't help but notice that most of the dogs are quite... aroused, <<if setup.getTotalValue("penis") > 10>>deliciously tantalising<<else>>hypnotically intimidating<</if>> dog-cocks dangling just within reach...<br>
<br>
<<printThought "One dog was one thing... do I dare take on a whole pack?">><br>
<br>
[<<moveTo "event_jogging_dog_pack_2_abort" "That seems a bit much, and you're all having plenty of fun just playing." 300>>]<br>
[<<moveTo "event_jogging_dog_pack_2" "You're too excited by the possibilities, time to explore more fun with your canine friends..." 300 "<<set $scene.style='willing'>>">>]<br>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: decline to fuck pack of dogs
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
You enjoy playing with the pack of dogs, making sure each of them gets some good belly rubs and scratches behind the ear as they return the favour showering you in slobbery "kisses." <br>
<br>
Though it wasn't the workout you had been planning on you enjoy a bit of de-stressing and when the dogs finally start trickling away they leave you feeling a bit more relaxed.<br>
<br>
With a smile on your face, you watch the last of the dogs walk out of the alleyway and head back to your apartment.<br>
<br>
[<<moveTo room_foyer "Home" 600>>]
</div>/*#
#desc: Chased by dogs whilst running
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case 'rape' 'give_in' 'willing'>>
<<if !setup.hasThreshold('bestiality', 'dog', 'advanced')>>
<<setThreshold 'bestiality' 'dog' 'advanced'>>
<</if>>
<<applyExperience 'bestiality' 5 'very' $SEEN_STRANGER>>
<<applyExperience 'stamina' 14 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<setThreshold 'stamina' 'jogging' 'hounded'>>
<<set $player.flags.fuckedbydogpackjogging = 1>>
<<set $player.timebased.dirty += 25>>
<<set $scene.pants = setup.getItemFromType("legwear")>>
<<if $scene.pants != "">>
<<changeItemStatus $scene.pants 'cumsoaked' '["set",100]'>>
<</if>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<case ''>>
<<applyExperience 'stamina' 12 'very' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location to "A Deserted Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'rape'>>
Lungs burning, legs on fire you stumble forward a few more steps and collapse into an alleyway. Arriving moments later the dogs circle you, the leader of the pack approaching, his canine cock hard as he paces around your fallen form and then moves slowly around behind.<br>
<br>
<<printThought "This is really happening...">><br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
You have only a moment to think before he is upon you, his hard dog cock working its way under your clothes to thrust into your unprotected hole.
<<else>>
You have only a moment to think before he is upon you, his hard dog cock working its way under your clothes to somehow displace the plug in your ass and thrust into your newly unoccupied hole.
<</if>>
<br><br>
There on the cold street he fucks you hard, knotting deep in your ass and rutting you thoroughly as his drool trickles down over your face. The rest of the pack looks on in silence until he finishes, thick dog splooge leaking out of your ass and soaking into your pants as you try to rise to your feet.<br>
<br>
You are knocked down again, a second dog mounting you in mimic of the alpha, the combination of dog cum and your gaping hole an invitation, the feat repeated by at least half a dozen more beasts before they finally wander off, leaving you in a pool of cum.<br>
<br>
Exhausted you finally stagger to your feet<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>, mindlessly shoving the plug back into your used hole in some vain effort to stop the tide of cum leaking down your leg.<<else>> attempting to clench down to stop the flow of canine cum trickling down your leg.<</if>><br>
<br>
Humiliated, exhausted and bred like a bitch you stagger home. The whole time a strange, dark thought floats through your mind.<br>
<br>
<<printThought "Despite all that... that really was a good workout...">><br>
<br>
[<<moveTo room_foyer "Home" 600>>]
<<case 'saved'>>
<<if $npc_dog.stage == 0>>
You somehow manage to find a final reserve of energy, making it to the liquor store and waiting as the dogs pass by.<br>
<br>
You take a few minutes to catch your breath, make sure the coast is clear, and then head home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<<else>>
You try to escape only to stumble, glancing over your shoulder you brace for the pack to arrive only for the "friend" you made on previous jogs to appear, the large animal leaping into position between you and your pursuers.<br>
<br>
Arching his back he growls, the other dogs circling for a moment before deciding that they do not want anything to do with him and running away.<br>
<br>
Giving them a parting bark as if to say "and stay out!" your saviour walks over to you and licks your face comfortingly.<br>
<br>
Hugging him gratefully you give him the scratchies you know he likes as you contemplate whether you want to give him an even greater reward...<br>
<br>
[<<moveTo "event_jogging_dog_pack_3" "Just head home." 300 "<<set $scene.sex = true>>">>]<br>
[<<moveTo "event_jogging_dog_pack_3" "Give him a more intimate reward." 300 "<<set $scene.sex = false>>">>]
<</if>>
<<case 'give_in' 'willing'>>
<<if $scene.style == 'willing'>>
Somehow knowing exactly what you're thinking your new canine friends are soon rubbing their cocks against you and it isn't long before your
<<if setup.analyzeWornTags(['skirt','pants']) == 'skirt'>>skirt is<<else>>pants are<</if>> off
<<if !setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>and your plug is out <</if>>and you feel the first of their cocks slide into your ass.
<<else>>
Stumbling to a stop you may have initially gave in due to exhaustion, but as the first of their hard, hot cocks approaches you find yourself licking your lips, exposing your rear<<if !setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> and removing your plug to clear the way<</if>>.
<</if>>
<br><br>
They take you there in the alleyway, not brutally, but still hard. Exercising his power the leader is the first to plunge his cock into your hole <<if setup.getTotalValue("anal") > 10>>knotting with ease<<else>>his knot pounding against your entrance, unable to quite force its way inside<</if>>.<br>
<br>
Howling in pleasure he ruts you fast and hard, the rest of the pack licking you as if in comfort as they wait their turns.<br>
<br>
Between fatigue and the weight of the rotating series of beasts that make use of your hole you have not the slightest opportunity to rise, not that you would really want to as the feeling of one hot canine cock after another plunging into you is enough to get you off not once, but twice, your seed mixing with the canine cum leaking out of your ass to pool below your hips.<br>
<br>
Eventually the pack tires, wandering off to leave you alone to finally stagger to your feet and trudge home, your thighs soaked with cum.<br>
<br>
<<printThought "Well, that was certainly a unique sort of intense workout...">><br>
<br>
[<<moveTo "room_foyer" "Home" 1200>>]
<<default>>
ERROR: unexpected scene.style: <<=$scene.style>>
<</switch>>
</div>/*#
#desc: reward your canine friend after he chases off pack
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'penis' 9 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 2 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<set $player.flags.fuckedbydogjogging += 1>>
<<else>>
<<applyStress -5>>
<</if>>
<</if>>
<<if $scene.sex>>
<<set $player.location to "A Deserted Alleyway">>
<<else>>
<<set $player.location to "The Streets">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<createAdvBGR "./images/locations/back_alley.png">>
<<else>>
<<createAdvBGR "./images/locations/street.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Your friend doesn't have to be asked twice, as soon as you bend over and expose yourself he sets to work licking your hole <<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>your plug slipping free as he<<else>>to<</if>> prepare the way for what is coming next.<br>
<br>
You do not have long to wait before he mounts you, surprisingly gently despite his size and strength as he plunges his hot cock into your hungry hole.<br>
<br>
He is just as big as you remembered
<<if setup.getTotalValue("anal") > 10>>
and you moan as his knot swells inside of you.
<<else>>
and you moan as slides deep, his knot yet proving too much for you to take.
<</if>>
Humping away it is not long before you feel him swell a hair wider, the only warning you get before he pumps his hot seed into your belly. Your body shudders as you cum as well gasping in ecstasy as he barks his approval.<br>
<br>
So overwhelmed by pleasure you almost pass out, but your friend is there once again, licking your face until you nuzzle him back. Rising to your feet, you fix your clothes<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>and replace the plug in your ass<</if>>, your faithful friend trotting next to you as he escorts you home.
<<else>>
After giving him a good thorough petting you return to your feet and slowly head home, your friend guarding you the whole way.<br>
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home" 120>>]
</div>/*#
#desc: Chased/fucked by dogs whilst running (repeat)
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'stamina' 14 'unbelievable' $EXPOSED>>
<<applyFatigue 40>>
<<playerOrgasm>>
<<if $scene.style != 'flee' || setup.getTotalValue("stamina") <15>>
<<applyExperience 'anal' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 7 'very' $SEEN_STRANGER>>
<<set $player.timebased.dirty += 25>>
<<alterStatAllWorn 'cum' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<if $scene.style == 'glee'>>
<<if !setup.hasThreshold('bestiality', 'dog', 'advanced')>>
<<setThreshold 'bestiality' 'dog' 'advanced'>>
<</if>>
<<applyExperience 'oral' 10 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.flags.fuckedbydogpackjogging += 1>>
<</if>>
<</if>>
<<if $scene.style != 'flee'>>
<<set $player.location to "A Deserted Alleyway">>
<<else>>
<<set $player.location to "The Streets">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.style != 'flee'>>
<<createAdvBGR "./images/locations/back_alley.png">>
<<else>>
<<createAdvBGR "./images/locations/street.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'flee'>>
You put on the jets, running as hard as you can
<<if setup.getTotalValue("stamina") > 15 || !$fetish.get_raped>>
as you glance back to see the pack slowly receding behind you. Heart racing, blood pumping you run for all you've got, maintaining the same breakneck pace until you reach your apartment making your way up the stairs as a cool-down.<br>
<br>
<<printThought "Whew, that was close! I guess it's good motivation, but maybe I should find somewhere safer to work on my cardio?">>
<<else>>
but you can't maintain such a frantic pace for long and, as you start to slow, you glance back you find that the pack is steadily gaining.<br>
<br>
Your steps slow and it is not long before the pack is upon you, knocking you to the ground and pulling at your clothes<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>, the plug sliding out of your ass<</if>> as the alpha mounts you from behind.
<</if>>
<<case 'run'>>
You lead your canine friends on a merry chase but, as always, they eventually catch up to you and playfully knock you to the ground.<br>
<br>
Eagerly anticipating what is to come you pull down your pants<<if !setup.checkItemTypeTag('plug', ['hollow'])>> and slide the plug out of your ass<</if>> to clear the way for the forthcoming dog cock.
<<case 'resigned'>>
Glancing back at the approaching dogs you give up. Better to bend over and submit to their lustful needs now. After all, the alternative is no different, you'll just be exhausted before they start to fuck you.<br>
<br>
Down on hands and knees you have just enough time to pull down your pants <<if !setup.checkItemTypeTag('plug', ['hollow'])>> and slide the plug out of your ass<</if>> before they reach you, canine cocks hard and ready.
<<case 'glee'>>
Just the sight of your canine friends has you ready to bend over in the middle of the street, but you manage to have just enough self-control to duck into a private alleyway before indulging your depraved perversion.<br>
<br>
Down on hands and knees you have just enough time to pull down your pants <<if !setup.checkItemTypeTag('plug', ['hollow'])>> and slide the plug out of your ass<</if>> before they reach you. Your ass quivers and your mouth waters in anticipation of their hard and ready canine cocks.
<<default>>
ERROR unknown style: <<=$scene.style>>
<</switch>>
<br><br>
<<if !($scene.style == "flee" && setup.getTotalValue("stamina") > 15)>>
There in the alleyway the pack of dogs give it to you hard and deep. With their "assistance," you have a workout like no other as they fuck you like the
<<switch $scene.style>>
<<case 'flee'>>
exhausted
<<case 'run'>>
enthusiastic
<<case 'resigned'>>
broken
<<case 'glee'>>
gleeful
<</switch>> bitch that you are.<br>
<br>
<<switch $scene.style>>
<<case 'flee'>>
Breaths coming ragged as your sore ass is repeatedly raped you lay there and take it, too tired to do anything else until the lowliest member of the pack has had his way with you, leaving you lying in a pool of cum, drool and tears.<br>
<br>
Eventually finding the energy to stagger to your feet you <<if !setup.checkItemTypeTag('plug', ['hollow'])>>fumble the plug back into your ass<</if>> and trudge home.<br>
<br>
<<printThought "Maybe I should find somewhere safer to work on my cardio.">>
<<case 'run'>>
<<if setup.getTotalValue("stamina") > 15>>
Despite taking them all at least once, and the alpha twice, you're still raring for more when they slink away, spent and exhausted.<br>
<br>
With a sigh you straighten your clothes<<if !setup.checkItemTypeTag('plug', ['hollow'])>>, shove the plug back in your ass where it belongs<</if>> and run home, dog-cum sloshing inside of you the whole way.
<<else>>
As good as your cardio has become, getting fucked by that many dogs in succession is a workout like no other. Exhausted, but satisfied after taking it hard and deep from the whole pack you walk home<<if !setup.checkItemTypeTag('plug', ['hollow'])>>, the re-installed plug preventing any of their thick emission from leaking out your used ass<<else>> cum slowly leaking down your leg with each step.<</if>>
<</if>>
<br><br>
<<printThought "Mmmm, now THAT's what I call a workout...">>
<<case 'resigned'>>
Not having "run them out" a bit first the pack seems even more lustful, each dog fucking you at least once until you are lying broken in a slowly spreading pool of cum leaking out of your ass.
<<if setup.getTotalValue("stamina") > 15>>
Tired, but not exhausted you push yourself back to your feet<<if !setup.checkItemTypeTag('plug', ['hollow'])>>, stuff the plug into your cum-slick, gaping hole<</if>> and walk home.
<<else>>
Somehow getting back up<<if !setup.checkItemTypeTag('plug', ['hollow'])>> and fumbling the plug back into your gaping, used hole<</if>> you stagger home.
<</if>>
<br><br>
<<printThought "Maybe I should find somewhere... safer to work on my cardio.">>
<<case 'glee'>>
Like a bitch in heat, literally, you are soon taken to heaven, your entire world becoming one of canine cock as they take turns knotting deep in your ass or "warming up" in your mouth or hands.<br>
<br>
Through it all you joyfully indulge like a wanton slut, making sure that every member of the pack is drained, still eager for more when the last hound finally deflates and slides out of your rear, leaving you to <<if !setup.checkItemTypeTag('plug', ['hollow'])>>re-install the plug to prevent their thick emission from leaking out your used ass<<else>>stagger home, cum slowly leaking down your leg<</if>> with each step.<br>
<br>
<<printThought "Mmmm, now THAT's what I call a workout...">><br>
<br>
You lick your lips, your mouth filled with the
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>wonderful<<else>>tasty<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>heady<<else>>bitter<</if>>
<</if>>
flavour of canine cum.
<</switch>>
<br><br>
<</if>>
[<<moveTo "room_foyer" "Home" 120>>]
</div>/*#
#desc: gym bimbofication class
#status: FINISHED 0.7.0.0
#ignore_spell: d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.skip_bimbo = false>>
<<set $scene.default_bimbo = false>>
/% this is to prevent speeding through one class' content in the same visit %/
<<if $scene.hasOwnProperty('bimbo') && $scene.bimbo>>
<<set $scene.skip_bimbo = true>>
<<else>>
<<set $scene.bimbo = true>>
<</if>>
<<if !$scene.skip_bimbo>>
<<switch $npc_fit_bimbo.stage>>
<<case 2>>
<<if setup.getTotalValue("stamina") < 10>>
<<set $scene.default_bimbo = true>>
<</if>>
<<case 3>>
<<if setup.getTotalValue("stamina") < 13>>
<<set $scene.default_bimbo = true>>
<</if>>
<<case 4>>
<<set $scene.nimble_bimbo = setup.getTotalValue("dexterity") >= 9 && !setup.hasThreshold('dexterity', 'other', 'nimble_bimbo')>>
<<set $scene.default_bimbo = !$scene.nimble_bimbo && random(1,10) <= 6>>
<<set $now to setup.advanceDate($player, $now, "minutes", 30)>>
<</switch>>
<<if $scene.default_bimbo>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<applyFatigue 20>>
<<applyExperience 'bimbofication' 7 'terrible' $EXPOSED>>
<<applyExperience 'stamina' 20 'skip' $EXPOSED>>
<<applyExperience 'dexterity' 11 'almost' $EXPOSED>>
<<applyExperience 'strength' 5 'little' $EXPOSED>>
<<elseif !$scene.skip_bimbo && $npc_fit_bimbo.stage >= 4>>
<<applyExperience 'bimbofication' 7 'very' $EXPOSED>>
<<applyFatigue 20>>
<<set $scene.shoes = setup.getItemFromType('shoes')>>
<<if !setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
<<addItem 'workout_heels'>>
<<wearItem 'workout_heels' true>>
<</if>>
<<if $scene.nimble_bimbo>>
<<set $scene.class = 1>>
<<elseif $player.body_ref.penis>>
<<set $scene.class = random(1,3)>>
<<else>>
<<set $scene.class = random(1,2)>>
<</if>>
<<switch $scene.class>>
<<case 1>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if $scene.nimble_bimbo>>
<<setThreshold 'dexterity' 'other' 'nimble_bimbo'>>
<</if>>
<<applyExperience 'stamina' 8 'very' $EXPOSED>>
<<applyExperience 'dexterity' 12 'almost' $EXPOSED>>
<<applyExperience 'heels' 8 'very' $EXPOSED>>
<<case 2>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<applyExperience 'stamina' 12 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 12 'very' $EXPOSED>>
<<case 3>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyExperience 'stamina' 13 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 12 'normal' $EXPOSED>>
<<applyExperience 'oral' 12 'unbelievable' $EXPOSED>>
<</switch>>
<</if>>
<</if>>
<<set $scene.randVal = random(1,10)>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if $scene.default_bimbo>>
You attend another bimbo fitness class, working up quite the sweat as you run through a full "fitness circuit" of sexy poses, flexibility-enhancing stretches and booty-enhancing squats.<br>
<br>
<<if !setup.checkItemOwned("panties_fit_bimbo") && (!State.hasPlayed("event_panties_fit_bimbo_1") || $scene.randVal < 2)>>
As you finish the workout you notice that a combination of <<=ps(setup.getNpcName("npc_fit_bimbo","first"))>> pump and sweat has caused her panties to be visible through her skin-tight leggings.<br>
<br>
[<<moveTo "event_panties_fit_bimbo_1" "Inform her of the wardrobe malfunction." 60 "<<set $scene.warn=true>>">>]<br>
[<<moveTo "event_panties_fit_bimbo_1" "Do not say anything." 60 "<<set $scene.warn=false>>">>]
<<elseif $player.flags.camgirl.level >= 3 && !State.hasPlayed("event_fit_bimbo_invite") && $player.virgin.top_fem>>
As you're cleaning up after class, <<=setup.getNpcName("npc_fit_bimbo","first")>> rushes up to you.<br>
<br>
[<<moveTo "event_fit_bimbo_invite" "Continue." 60 "<<if $scene.shoes>><<wearItem $scene.shoes true>><</if>>">>]
<<else>>
<<include "bimboLessonPrivateBonus">>
<</if>>
<<elseif $scene.skip_bimbo>>
You try to attend another bimbo fitness workout, but the room is empty, it looks like they aren't running any more classes today.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<else>>
<<switch $npc_fit_bimbo.stage>>
<<case 1>>
You walk into one of the private classrooms in the back of the gym to find it occupied by over half a dozen drop-dead gorgeous women. Their attire can, at best, be referred to as "skimpy" (and mostly pink) all done up with perfect, slutty makeup, and not a single one of them have breasts smaller than a double D.<br>
<br>
Spotting you from across the room, a familiar blonde rushes over with a grin, scooping you up with a hug that has both of you about to pop out of your tops.
<<if setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
"@@.npc_fit_bimbo;Like, you made it in, yay!@@" She looks you over and grins at the sight of your heels. "@@.npc_fit_bimbo;Oh, and you're even wearing proper heels! You BELONG with us, girlfriend! Come on, we're about to start the class!@@"<br>
<<else>>
"@@.npc_fit_bimbo;Like, you made it in, yay! So, yeah, I promise you this is going to be, like, the BEST, most FUNctional workout class you've ever been to. Why don't you change into a pair of heels, we're about to get started!@@"<br>
<br>
You pause, suddenly realising that every woman you can see is wearing a pair of steep pink heels, a rack of which is against one wall. Noticing your confusion your friend quickly clarifies.<br>
<br>
"@@.npc_fit_bimbo;Yeah, like, they don't want us to wear them in the gym proper, it being bad for the floor and all, but it's, like, train how you work or whatever so of course we need to wear them for class!@@"<br>
<br>
She skips away leaving you to get changed.
<</if>>
<br><br>
<<if setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
[<<moveTo "event_gym_bimbo_1" "You are apparently dressed to workout, get to it!" 60>>]<br>
<<else>>
[<<moveTo "event_gym_bimbo_1" "Change into a pair of pink high heels." 300>>]<br>
<</if>>
[<<moveTo "room_gym_main" "This is weird and... maybe unsafe? Leave the class." 60>>]
<<case 2>>
Entering the private classroom where the "bimbo fitness" class meets you find the room filled with stationary bikes, with a twist, instead of a "normal" bike seat each one sports either one or a matching pair of dildos.<br>
<br>
Most of the class is already in position atop their bikes, slowly warming up with looks of obvious pleasure as they smile and wave at you in greeting.<br>
<br>
<<if setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
[<<moveTo "event_gym_bimbo_2" "Mount a cycle." 60>>]<br>
<<else>>
[<<moveTo "event_gym_bimbo_2" "Change into a pair of pink workout heels and mount a cycle." 60>>]<br>
<</if>>
[<<moveTo "room_gym_main" "Nope, I've got to draw a line somewhere, time to leave the class." 60>>]
<<case 3>>
You show up for another private "bimbo fitness" class. Looking around it seems like the other girls have changed into their heels and grabbed a thick suction cup dildo before spreading across the room.<br>
<br>
<<if setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
<<printThought "Looks like I already have the proper footwear, but what's the dong for?">>
<<else>>
<<printThought "Huh, I wonder what we're going to do with that?">>
<</if>>
<br><br>
<<if setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
[<<moveTo "event_gym_bimbo_3" "Grab a fake cock of your own, woo!" 900>>]<br>
<<else>>
[<<moveTo "event_gym_bimbo_3" "Get a pair of heels and a fake cock, woo!" 900>>]<br>
<</if>>
[<<moveTo "room_gym_main" "I don't think this is really fitness anymore, time to leave." 60>>]
<<case 4>>
<<switch $scene.class>>
<<case 1>>
<<if $scene.nimble_bimbo>>
You attend another bimbo fitness class and something seems to just click. Your thoughts turn pure pink as you perfectly execute every move even better than the instructor, perfectly in control of your body as you pose, strut, writhe and generally show off.<br>
<br>
Though your mind is fuzzy at the end of the workout it is a good fuzzy, more sensitive to your own body and more connected to and aware of your every move.
<<else>>
You attend another bimbo fitness class, aerobically practicing all the important poses a sexy slut might need to assume in her primary goal of "making cocks hard." <br>
<br>
Your mind a bit fuzzy, as it always is after this sort of workout, you plan your next move.
<</if>>
<br><br>
<<include "bimboLessonPrivateBonus">>
<<case 2>>
You attend a bimbo spin class, riding an exercise bike with a dildo thrusting in and out of your ass as you pedal and pump for all you're work.<br>
<br>
Your mind a bit fuzzy, as it always is after this sort of workout, you plan your next move.<br>
<br>
<<include "bimboLessonPrivateBonus">>
<<case 3>>
You attend another bimbo fitness class, "enjoying" a "hole body" workout as you train your whole body — throat and rear... and the rest of you culminating in sharing a large double dildo ass to ass with a "partner." <br>
<br>
<<if $player.flags.camgirl.level >= 3 && !State.hasPlayed("event_fit_bimbo_invite") && $player.virgin.top_fem>>
As you're cleaning up after class, <<=setup.getNpcName("npc_fit_bimbo","first")>> rushes up to you.<br>
<br>
[<<moveTo "event_fit_bimbo_invite" "Continue." 60 "<<if $scene.shoes>><<wearItem $scene.shoes true>><</if>>">>]
<<else>>
As you are changing shoes after class, your partner comes up to you with a request.<br>
<br>
[<<moveTo "event_gym_bimbo_blowjob_1" "Continue." 60 "<<if $scene.shoes>><<wearItem $scene.shoes true>><</if>>">>]
<</if>>
<<default>>
ERROR: random bimbo fitness value out of bounds.
<</switch>>
<<default>>
ERROR; unexpected npc_fit_bimbo.stage <<=$npc_fit_bimbo.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: first gym bimbofication class — high heel posing
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<set $scene.shoes = setup.getItemFromType('shoes')>>
<<if !setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
<<addItem 'workout_heels'>>
<<wearItem 'workout_heels' true>>
<</if>>
<<set $scene.heeldelta = setup.getTotalValue("heels") - setup.getItemObjFromType("shoes").heels.difficulty>>
<<if $scene.heeldelta >= 0>>
<<setThreshold 'stamina' 'gym_stamina' 'bimbo_cardio_1'>>
<<set $npc_fit_bimbo.stage = 2>>
<<applyExperience 'stamina' 8 'very' $EXPOSED>>
<<applyExperience 'heels' 8 'very' $EXPOSED>>
<<applyExperience 'dexterity' 11 'almost' $EXPOSED>>
<<changeHorny 20>>
<<applyFatigue 20>>
<</if>>
<<setThreshold 'bimbofication' 'gym_bimbofication' 'bimbo_class'>>
<<applyExperience 'bimbofication' 7 'very' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if $scene.heeldelta < -2>>
The heels are just too steep for you to manage. You wobble a bit and feel like you're going to snap an ankle, forced to put them back and duck out of the strange class before it has begun.<br>
<br>
<<if setup.getItemObjFromType("shoes").heels.difficulty > setup.getItemObj("workout_heels").heels.difficulty>>
<<printThought "Maybe some slightly shorter heels would work better? The rest of the students aren't quite this high, maybe if I took the class and used provided equipment I'd be better off?">>
<<else>>
<<printThought "Guess I need more practice in heels.">>
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Change to your previous shoes and do something else." 60 "<<wearItem $scene.shoes true>>">>]
<<else>>
<<if $scene.heeldelta > 2>>
You are accustomed to far steeper heels, slipping into the snug "workout heels" and quickly getting into position with the rest of the class.
<<elseif $scene.heeldelta >= 0>>
The heels are right around your limit, walking would be fine and you hope your skills can keep up with whatever the class will involve.
<<else>>
You feel a bit unsteady in the steep heels, but they're quite securely attached to your feet and you think you can probably handle them for the length of a class. You carefully walk over to take your spot with the rest of the class.
<<if setup.getItemObjFromType("shoes").heels.difficulty > setup.getItemObj("workout_heels").heels.difficulty>>
<br><br>
<<printThought "Maybe some slightly shorter heels would work better? The rest of the students aren't quite this high, maybe if I took the class and used provided equipment I'd be better off?">>
<</if>>
<</if>>
<br><br>
A particularly perky blonde, who looks practically like a barbie doll come to life, skips to the front of the class and begins instruction.<br>
<br>
"@@.generic_female1;Alright, girls, let's work through our positions!@@" Some high-tempo techno/bubblegum pop starts playing as she leads you through an aerobic routine... of sorts.<br>
<br>
While you are soon working up a sweat, the positions themselves are... well, they range from provocative to straight lewd. You start by practicing bending over — a basic stretch, in theory, but you are encouraged to make a show of it, bending at the hips, sticking out your rear, then slowly rising before glancing over your shoulder and giving your ass a loud "smack." The smack seems particularly important as the instructor calls out encouragement for anyone who isn't making a properly loud slap.<br>
<br>
Next you're bending over again, legs spread this time as you "@@.generic_female1;Twerk it, work it, get the <<boy>>s to jerk it!@@"<br>
<br>
From there it's a series of quasi-dance moves, the room full of sexy, writhing feminine flesh as you go through a sequence alternating leaning forward, pressing your breasts together and provocatively caressing your own rear.<br>
<br>
Finally it's down on the floor, where you are on shoulders and heels, legs spread, humping the air.<br>
<br>
<<if setup.getTotalValue("stamina") < 5>>
You're already breathing pretty heavy, but the class launches straight into another repetition.
<<else>>
You're in good enough shape to have kept up without too much trouble as the class transitions into another repetition of the lewd sequence.
<</if>>
The instructor calls out encouragement to "@@.generic_female1;Really work it, girls!@@" As the musical accompaniment takes its own turn, a bimbo-riffic techno track built around the hook of "@@.generic_female1;I exist to make cocks hard.@@"<br>
<br>
Two more runs through the provocative routine has you feeling like a mindless slut, joining the other girls to shed your heels. There are hugs, kisses and a bit of mild groping as the other girls welcome you to the class before you eventually scatter and continue on your way.<br>
<br>
<<printThought "Well, that was certainly an interesting take on fitness...">><br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60 "<<wearItem $scene.shoes true>>">>]
<</if>>
</div>/*#
#desc: gym bimbofication class - dildo bike intro
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shoes = setup.getItemFromType('shoes')>>
<<if !setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
<<addItem "workout_heels">>
<<wearItem 'workout_heels' true>>
<</if>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
<<applyExperience 'anal' 14 'unbelievable' $EXPOSED>>
<<else>>
<<applyExperience 'anal' 12 'unbelievable' $EXPOSED>>
<</if>>
<<changeHorny 10>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Your <<=setup.getItemTypeName("plug")>> leaving you open for more, you leave it in place as a "workout enhancer" as you mount the bike, noticing that most of the other girls have instead removed plugs to hang from an intended hook on the side of their machines; a dizzying array of plugs seeming to match each personality — that is to say, big, bold and mostly pink.
<<else>>
You slide the <<=setup.getItemTypeName("plug")>> out of your rear and place it on a convenient hook on the side of the exercise bike, noticing that most of the other girls have done similar, a dizzying array of plugs seeming to match each personality — that is to say, big, bold and mostly pink.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("anal") >= 8>>
<<if setup.getTotalValue("anal") > 15>>
You suppress a moan as you slide onto the seat of the bike, the entire length of the cock disappearing into your ass.
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
The added girth provided by it stretching your hollow plug is just the upgrade to eye-popping fullness that you love.
<<else>>
It may not be quite as big as you prefer, but you love it all the same.
<</if>>
<<else>>
The dildo comes pre-lubed making it no problem at all to slide down its length until it is nicely seated deep in your ass.
<</if>>
<br><br>
[<<moveTo "event_gym_bimbo_2_1" "Start class." 1740>>]
<<else>>
<<if setup.getTotalValue("anal") > 5>>
You select one of the smaller dildo bikes, but it's still a bit of a struggle, it is only when the instructor walks by and "helpfully" pulls you down that it finally slips fully into place and you find yourself sitting on the seat, feeling VERY deeply full.<br>
<br>
[<<moveTo "event_gym_bimbo_2_1" "Start class." 1740>>]
<<else>>
You select one of the smaller dildo bikes, but even that isn't enough, you can't get more than a couple centimetres into your tight, untrained hole and are forced to give up and leave the class.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60 "<<wearItem $scene.shoes true>>">>]
<</if>>
<</if>>
</div>/*#
#desc: gym bimbofication class - dildo bike class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<set $npc_fit_bimbo.stage = 3>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<applyExperience 'stamina' 13 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 12 'unbelievable' $EXPOSED>>
<<changeHorny 25>>
<<applyFatigue 30>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
The class starts with the ever-chipper instructor mounting the bike in the front, gasping as the twin dildos slide into her before starting the music and pedaling away.<br>
<br>
Listening to a playlist themed around an even more energetic remix of the classic "Work Bitch," you pedal and pump, the dildo shifting in and out of your ass as you "ride" along with the rest of the class, gasps and moans and what you swear is at least a couple of orgasms bouncing around the small room as you pedal away for a dozen kilometers.<br>
<br>
The music slowing down, you finish off with a slow cooldown kilometer as it feels like the dildo is writhing against your sensitised <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. A bit weak in the knees, you finally dismount, smiling at your fellow bimbos, sexual energy pinging about as you <<if $scene.shoes != setup.getItemFromType("shoes")>>change out of your workout heels<<else>>take a deep breath<</if>><<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> and re-seat the <<=setup.getItemTypeName("plug")>> in your well-used rear hole<</if>>.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60 "<<wearItem $scene.shoes true>>">>]
</div>/*#
#desc: gym bimbofication class - hole body fitness
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<set $scene.shoes = setup.getItemFromType('shoes')>>
<<if !setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
<<addItem 'workout_heels'>>
<<wearItem 'workout_heels' true>>
<</if>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<setThreshold 'oral' 'gym' 'gym_bimbo_oral'>>
<<applyExperience 'oral' 12 'terrible' $EXPOSED>>
<<applyExperience 'stamina' 12 'unbelievable' $EXPOSED>>
<<changeHorny 20>>
<<applyFatigue 20>>
<<addNpcTheme 'npc_primrose' 'other' 'theme_primrose_other_gym_bimbo'
1
'theme_primrose_gym_bimbo_classes'
true
>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
Getting on your knees, you follow along with the rest of the class as the bubbly instructor has you position your dildos on the floor in front of you. Shuffling back she demonstrates the exercise at hand, doing a push-up that has the dildo disappearing into her mouth until her chin touches the balls and her nose touches the ground.<br>
<br>
"@@.generic_female1;Alright girls, your turn!@@"<br>
<br>
<<if setup.getTotalValue("oral") >= 8>>
<<if setup.getTotalValue("oral") > 15>>
Although largish by human standards such a dildo as this is nothing for your expert throat as you work to see how fast you can dive down and then slowly push back up, relishing the hard throat-fuck.
<<else>>
The dildo is good sized, but within your skill set and it only takes you a couple tries to relax your throat and take it down for a full, proper, rep.
<</if>>
<br><br>
"@@.generic_female1;All the way down, all the way up, that's the way to be a slut!@@" The instructor calls out in encouragement as you give your floor-mounted friend an enthusiastic, sloppy blowjob.<br>
<br>
Just as your arms start to feel rubbery and you're afraid of accidentally impaling yourself it's time to move on. With the dildo still on the floor the instructor stands up and gives a little spin, lowering down onto the cock until it is sliding into her ass and she is doing deep, partial squats bouncing up and down.<br>
<br>
<<if setup.getTotalValue("anal") >= 8>>
<<if setup.getTotalValue("anal") > 15>>
This size of dildo is practically trivial for an ass as trained as yours, but you are never one to turn aside the opportunity for more "practice" as you squat deep, moving slow and smooth.
<<else>>
You let out a slow breath as you lower yourself onto the saliva-slick dildo, your experienced hole spreading obediently for its fun new occupant.
<</if>>
<br><br>
"@@.generic_female1;All the way down, all the way up, that's the way to be a slut!@@" The instructor calls out in encouragement as you squat-fuck your dildo. This time you and the rest of the class join in in repeating her words, the act making you energised and aroused.<br>
<br>
<<if !$player.body_ref.vagina>>
Glancing around, you can't help, but feel jealous of the women with holes allowing them to take a pair of dildos, though you are heartened to see a couple other cute <<if $fetish.sissy>>sissies<<else>>girls<</if>>, panties bulging as they bounce up and down wearing the same brainlessly fucked expression that you know you have.<br>
<br>
<</if>>
You return to your feet and the instructor orders you to break into pairs.<br>
<br>
[<<moveTo "event_gym_bimbo_3_1" "Find a partner." 900>>]<br>
[<<moveTo "room_gym_main" "Cut out early to do something else." 60 "<<wearItem $scene.shoes true>>">>]
<<else>>
<<if setup.getTotalValue("anal") > 5>>
The dildo is just too big for your <<if $fetish.sissy>>sissy <<else>>girl-<</if>>hole. You can barely spread enough to take the tip, but going "all the way down" is just out of the question.<br>
<br>
Your ass raw and gaping you don't think you can go any further, changing out of your heels and staggering out of the room as the class moves on to the next exercise.
<<else>>
The dildo is too big, slipping to one side or the other rather than pushing into your hole, finally springing off into the distance when you really try to use your weight.<br>
<br>
Embarrassed by your failure you decide that's it for today.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Cut out early to do something else." 60 "<<wearItem $scene.shoes true>>">>]
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You do your best, but the dildo is just beyond your skill as you are unable to make it much more than halfway down without coughing and gagging.
<<else>>
You've never managed to deepthroat something, much less something this large as you end up doing mere quarter reps kissing the cock rather than taking it deep like the other participants.
<</if>>
<br><br>
Even the instructor coming past to "help" by pushing your head down with a sexy pink stiletto heel isn't enough for you to manage a "proper" rep and, gasping and drooling, you are forced to cut out of class early.<br>
<br>
[<<moveTo "room_gym_main" "Cut out early to do something else." 60 "<<wearItem $scene.shoes true>>">>]
<</if>>
</div>/*#
#desc: gym bimbo class, double dildo finale
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("oral") >= 8>>
<<applyExperience 'anal' 12 'terrible' $EXPOSED>>
<<setThreshold 'anal' 'gym' 'gym_bimbo_anal'>>
<</if>>
<<setThreshold 'stamina' 'gym_stamina' 'bimbo_cardio_2'>>
<<set $npc_fit_bimbo.stage = 4>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<applyExperience 'anal' 12 'terrible' $EXPOSED>>
<<applyFatigue 10>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('bimbo')>>
<<setThreshold 'bimbofication' 'gym_bimbofication' 'double_dildo'>>
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage()) && !$player.sec_style.sex.vag_strap>>
<<set $player.sec_style.sex.vag_strap = "obedient">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You meet the gaze of the girl who first invited you to join the class and she smiles and skips over to you, the two of you quickly exchanging greetings and hugs as the instructor glides past, passing out a long double-ended dildo to each pair.<br>
<br>
Grabbing the "odd woman out" for a demo, the instructor shows how to share the dildo with your partner, each girl taking half of its length into her ass. Once positioned the instructor shows the technique at hand — how one girl is to clench tight so her partner can lean forward, then back, fucking herself on the dildo before returning the favour.<br>
<br>
The instructor's partner is obviously experienced as they soon speed up their rhythm, the dildo remaining almost motionless as the two girls slide back and forth, ass-cheeks slapping and moans aplenty as the instructor calls out to "continue at your own pace." <br>
<br>
Smiling at your partner, the two of you quickly get down onto your hands and knees, reaching back with fingers intertwined as you position one end of the dildo at a time and then start "working." <br>
<br>
Partway through the "workout," your partner pulls back, seemingly annoyed that their top is chafing or something they casually strip it off to reveal a pink sports bra with the word SLUT across the front.<br>
<br>
Noticing your eyes tracing across the word on her chest, she gives a bounce and a smile.<br>
<br>
"@@.generic_female1;You like? They sell them at the gym store, you just sometimes have to hunt around, I guess they don't want the normies accidentally stumbling into something this hawt. Also, it's like the most supportive bra I've found, which, well, is a consideration!@@" You nod in time to her mammoth mammaries bouncing slightly.<br>
<br>
"@@.generic_female1;Alright, back to work!@@" She says with a grin before getting back on all fours. You make a mental note before she crams her end of the dildo into her ass and slams back into you.<br>
<br>
Things are definitely trickier than they look and it takes a bit of practice before you even manage a single clean rep between the two of you, but eventually you're motoring along gasping and panting and sliding back and forth on your shared dildo until the instructor finally calls time.<br>
<br>
"@@.generic_female1;Well!@@" The instructor states, half a dildo still hanging from her ass like a tail. "@@.generic_female1;Looks like we're out of time! Good job everyone and remember to get out there and use these skills! You can do as much work as you want in training, but in the end it's all about that real-world experience.@@"<br>
<br>
[<<moveTo "room_gym_main" "Head back to the gym." 60 "<<wearItem $scene.shoes true>>">>]
</div>/*#
#desc: after gym bimbofication a student wants to practice with your cock
#status: FINISHED 0.7.0.0
#ignore_spell: aaaanyway
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<set $scene.keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.haskey = setup.checkItemInInventory($scene.keyId)>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
As you're packing up, your partner pulls you aside.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
"@@.npc_fit_bimbo;So, like, I couldn't help but notice your sexy bulge, especially when your testicles swung back and slapped into me... mmm!@@"<br>
<br>
She gets all misty-eyed as her mind seems to wander.<br>
<br>
"@@.npc_fit_bimbo;Aaaanyway, I was wondering if you could help me out with a bit of "real-world" training?@@"
<<else>>
<<if setup.isCage()>>
"@@.npc_fit_bimbo;So, I couldn't help but notice that sexy creature you've got locked up under there... I don't suppose you have the key? I'd, like, love to get in some real world practice with it...@@"
<<else>>
"@@.npc_fit_bimbo;So, like, your chastity belt is sleek as hell but... I was wondering if you might have something special underneath?@@"
<</if>>
<</if>>
<br><br>
"@@.npc_fit_bimbo;I've, like, been practicing at home to be a proper mouth fuck-hole, but I'm still struggling a bit and, well, it'd be so embarrassing to find a sexy cock at the bar and then like, find out my throat was sub-par! Having a fellow bimbo to practice with would really take the pressure off.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_gym_bimbo_blowjob_2" "Say sure, you're free to help." 300>>]
<<elseif setup.checkItemTypeWorn("cage") && $scene.haskey>>
<<printThought "Hmm, I'm locked up like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>, but I do have the key with me...">><br>
<br>
[<<moveTo "event_gym_bimbo_blowjob_2" "Say sure, you can free things up to help." 300>>]<br>
<<else>>
[@@.link_locked;Locked and chaste as you are you are unable to assist her.@@]<br>
<</if>>
[<<moveTo "room_gym_main" "Decline her offer and do something else." 60>>]
</div>/*#
#desc: after gym bimbofication fellow student sucks your cock
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if $scene.cage != "">>
<<removeItem $scene.cage true>>
<</if>>
<<if $scene.cage == "">>
<<applyExperience 'cum' 10 'very' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'cum' 4 'insignificant' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemTypeWorn("cage")>>
You don't exactly need much encouragement to rise to full mast as she frees your <<getWordMyPenis>> from the "prison" of your clothes. She licks her lips in anticipation before running her tongue experimentally up the length of your shaft to bring it to full hardness.
<<else>>
You pull out your key only for her eyes to light up as she asks if she can do it?<br>
<br>
You hand it over and she grins, sliding to her knees with a shimmy, showering your <<getWordMyPenis>> with kisses before sliding the key sensuously into place.<br>
<br>
She lets out a soft gasp as the <<if setup.isCage()>>cage<<else>>belt<</if>> falls away, giving your swelling shaft an experimental lick to bring it to full hardness.
<</if>>
<br><br>
<<if $player.body.penissize[0] > 2>>
<<if $player.body.penissize[0] >= 6>>
"@@.npc_fit_bimbo;Oh my! I saw you were big, but this... I don't even know if I can take something that magnificent, but I can't wait to try!@@"
<<elseif $player.body.penissize[0] == 5>>
"@@.npc_fit_bimbo;Oh boy! I thought you were big and this... this is exactly what I've been training for!@@"
<<elseif $player.body.penissize[0] == 4>>
"@@.npc_fit_bimbo;Mmm, a nice jumbo cock, perfect for practicing!@@"
<<elseif $player.body.penissize[0] == 3>>
"@@.npc_fit_bimbo;Tasty, above average, but not so big that I'll be struggling not to gag!@@"<br>
<br>
<<printThought "Wait, above average? But I thought...">><br>
<br>
Your confusion and questioning of prior decisions is soon whisked away by the distraction of her setting to work.
<<else>>
ERROR: unexpected penis size: <<=$player.body.penissize[0]>>
<</if>>
<br><br>
With both hands <<if $player.body.penissize[0] >= 5>>barely <</if>>wrapped around the base of your shaft, she enthusiastically dives onto your cock. Closing her eyes in concentration, she struggles to throat you, gagging and drooling and coughing as she bobs up and down, gasping occasionally as she does what she can to lick and suck and stroke every part of you.
<<elseif $player.body.penissize[0] == 2>>
"@@.npc_fit_bimbo;Mmmm, so beautiful, and just about average — this is perfect for me to practice on to be ready for most guys, and appropriately-equipped gals! Mmm, I just can't choose! Big, manly cock or sexy sumptuous lady lances! They're all so wonderful!@@"<br>
<br>
Humming in pleasure she wraps her hand around the base of your shaft and starts bobbing up and down. Her technique is serviceable, if not perfect and you try to give her some tips on how to react to her partner instead of just thrusting down her throat like she would with her training dildo.
<<else>>
"@@.npc_fit_bimbo;Aww, it's so cute! I knew you were small, but this is just adorable! Still, it's good practice, dicksucking isn't just about deepthroating big, juicy cocks, the little cute ones need love too!@@"<br>
<br>
<<if $player.body.penissize[0] == 1>>
Wrapping her lips around your small penis she makes a tube from her tongue, sliding it up and down your shaft as she tenderly sucks.
<<elseif $player.body.penissize[0] == 0>>
Your tiny peen is more a clit than a cock at this point, but she licks and sucks and flicks it with enthusiasm until you're a mess of <<if $fetish.sissy>>sissy<<else>>girly<</if>> moans.
<<else>>
ERROR: unexpected penis size: <<=$player.body.penissize[0]>>
<</if>>
<</if>>
<br><br>
She eases off when you're about to cum, insisting that she needs "more training time" and slowing her pace to glacial levels before finally entering a frenzy to finish you off.<br>
<br>
<<if $scene.cage != "">>
Her lips remain wrapped around your member, licking you tenderly as you soften in her mouth, giving you a nice complete tongue bath as she swallows every drop before slowly separating with a content smile on her face.<br>
<br>
"@@.npc_fit_bimbo;Mmm, I can see why you keep such a prize locked and safe, the taste... and that mouth feel!@@" Closing her eyes in reminiscence she bites her lip and shudders slightly. Opening her eyes a few seconds later she blinks at you and grins wider. "@@.npc_fit_bimbo;Speaking of, let me take care of that for you.@@"<br>
<br>
Very gently she puts you back in your chastity device, sealing it closed around your tender, sensitive member with a click before withdrawing the key and placing a soft, unfelt kiss on the hard exterior.<br>
<br>
Key in hand she stares at it for a moment, turning it over in her fingers. "@@.npc_fit_bimbo;You know, it's tempting to hold on to this... I mean, the thought of having you all to myself...@@" She shudders. "@@.npc_fit_bimbo;Fuck, I can't believe how hot the idea of chastity makes me... the idea of such a prize securely contained, then taken out to be ravished and drained...@@"<br>
<br>
Quickly she extends her arm. "@@.npc_fit_bimbo;Here, take it back, before I abuse your trust.@@"<br>
<br>
The key feel surprisingly weighty in your fingers as you take it from her. With a final longing glance at your <<getWordMyPenis>> she rises to her feet.<br>
<br>
"@@.npc_fit_bimbo;Thanks again for the help, I'll see you around.@@" Planting a faintly cum-scented kiss on your cheek she finally darts away leaving you alone in the empty room.
<<else>>
Licking her lips of your spilt seed, she grins and then rises to her feet to share a cummy kiss with you.<br>
<br>
"@@.npc_fit_bimbo;Mmm, thanks for the help! It seems like I still have a lot to learn, good thing practice is so much delicious fun!@@"<br>
<br>
She skips away as you take a deep breath to recover from the one-two combination of class and blowjob before going on your way.
<</if>>
<br><br>
<<if $scene.cage>>
[<<moveTo "room_gym_main" "Do something else." 600 '<<wearItem $scene.cage true>><<manipulateItem $scene.cage "lock" true>>'>>]
<<else>>
[<<moveTo "room_gym_main" "Do something else." 120>>]
<</if>>
</div>/*#
#desc: fit bimbo brings up camgirling
#status: FINISHED 0.8.9.0
#ignore_spell: fitspo
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_fit_bimbo","first")>> pulls you aside conspiratorially. "@@.npc_fit_bimbo;Hey... wait a second... are you <<=$player.flags.camgirl.name>>?@@"<br>
<br>
You nod and she bounces with excitement. "@@.npc_fit_bimbo;I thought you looked familiar! Credit one to the almighty algorithm for shoving you in my feed — one of many places I like to have things shoved into.@@" She adds with a wink "@@.npc_fit_bimbo;Anyway, that is just SOOOO hawt! And, like, I'm part of CUM too! We should totally do a shared stream, y'know? Hit me up sometime! I broadcast occasionally as fit-bimbo_6969, not as much recently, I find in-person bimbo-fitspo to be more fun than online... I'd totally come out of retirement for some hot action on your channel!@@"<br>
<br>
You jot down her info and promise to keep her in mind for a future collaboration.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 120>>]
</div><<if $npc_fit_bimbo.stage >= 4>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
The instructor looks to be clearing out, you guess she has a date or somewhere she needs to be.<br>
<br>
<<elseif State.hasPlayed("event_gym_bimbo_private_2_4")>>
[<<moveTo "event_gym_bimbo_private_3_1" "You'd like to spend more time honing your skills on the treadmill." 60>>]<br>
<<elseif State.hasPlayed("event_gym_bimbo_private_1_5")>>
[<<moveTo "event_gym_bimbo_private_2_1" "Now that you're warmed up, could you have an additional lesson?" 60>>]<br>
<<else>>
[<<moveTo "event_gym_bimbo_private_1_1" "Ask about additional instruction." 60>>]<br>
<</if>>
<<if State.hasPlayed("event_janitor_training_primrose_4")>>
<<if State.hasPlayed("event_janitor_training_2_forcefem_4") || State.hasPlayed("event_janitor_training_2_femboy_4") || State.hasPlayed("event_janitor_training_2_tomboy_4") || State.hasPlayed("event_janitor_training_2_fuckboy_4")>>
[@@.link_locked;You've already gotten <<=setup.getNpcName("npc_janitor", "first")>> some fitness assistance.@@]<br>
<<else>>
[<<moveTo "event_janitor_training_2_forcefem_1" 'Ask if she could help out <<=setup.getNpcName("npc_janitor", "first")>>?' 120>>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "room_gym_main" "Do something else." 60>>]/*#
#desc: told about private bimbo class
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You're packing up after class when the instructor comes up to you, her cleavage barely glistening with sweat as her hips sway seductively with each step.<br>
<br>
<<if setup.checkItemTypeTag('shoes', ['heels']) && setup.getTotalValue("heels") > 10>>
"@@.npc_fit_bimbo;Hello, <<=$player.first_name>>, I believe it was? I have noticed you working... hard in class and I thought you might be interested in some additional training to really push yourself to the next level... if you think you can take it, that is.@@"<br>
<br>
[<<moveTo "event_gym_bimbo_private_1_2" "Say you're ready to go hard." 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_gym_bimbo_private_1_2" "Some other time." 60 "<<set $scene.accept = false>>">>]
<<else>>
Her eyes scan down your body before settling on your feet with a frown.<br>
<br>
"@@.npc_fit_bimbo;No... your ankles... for the workout I have planned you need a bit more practice. Come back when you are wearing heels — and skilled at wearing them! The path to the peak of fitness begins with rising en pointe!@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
<</if>>
</div>/*#
#desc: agree to take private bimbo class
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You return her seductive energy and respond that of course you love to push yourself and are always interested in going harder, longer.<br>
<br>
She smiles "@@.npc_fit_bimbo;Then let's get to it — no sense wasting time when there is... progress to be made.@@"<br>
<br>
[<<moveTo "event_gym_bimbo_private_1_3" "Follow her." 300>>]
<<else>>
You decline her offer and she just smiles. "@@.npc_fit_bimbo;Very well, but if you change your mind... well, one look at you tells me you have so much potential... you just require someone to push you hard enough to realise it.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
<</if>>
</div>/*#
#desc: private bimbo - first treadmill
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<addItem 'ballet_boots_pink'>>
<<wearItem 'ballet_boots_pink' true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png">>
<div id="invframe" class="scrolltext">
With perfect sexy poise the instructor leads you through a door into a small chamber behind the classroom. You're initially a bit disappointed to merely find a treadmill, but then you notice the restraints hanging from the ceiling as the instructor has you "step aboard" and begins buckling you in place.<br>
<br>
"@@.npc_fit_bimbo;These are for safety, mostly.@@" She explains as she tightly cinches a leather harness onto your body. "@@.npc_fit_bimbo;This way you can focus and literally walk till you drop — and stay safe doing it.@@"<br>
<br>
She finishes tightening everything snug and then presses a button on the wall that lifts you into the air. Your feet flail without touching the treadmill, the harness carrying your weight easily, and in surprising comfort.<br>
<br>
"@@.npc_fit_bimbo;Now to make it a bit more interesting.@@" She states, dropping down to remove your heels and replace them with towering ballet boots before lowering you back down.<br>
<br>
She grins, leaning past you to press buttons on the treadmill.<br>
<br>
"@@.npc_fit_bimbo;Get to it!@@" She states, giving you a slap on the ass as the treadmill starts moving beneath your feet.<br>
<br>
[<<moveTo "event_gym_bimbo_private_1_4" "Walk." 300>>]
</div>/*#
#desc: private bimbo - first treadmill
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'heels' 18 'little' $SEEN_STRANGER>>
<<applyExperience 'stamina' 15 'little' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
You have little trouble walking in the towering heels, and you are almost disappointed.
<<else>>
You are able to walk in the towering heels with only slight support assistance from the harness. That said, you are a little disappointed.
<</if>>
<<else>>
The harness provides plenty of support so that even one as unskilled as yourself can manage to remain balanced in the towering ballet boots. Despite that they remain a challenge, though you yet find yourself slightly disappointed.
<</if>>
For a secret stamina-boosting regime you had loftier expectations...<br>
<br>
The treadmill speeds up slightly and you realise that it must be a pre-programmed routine. Before you can think further, however, you are shocked, literally, by what feels like an electrified whip lashing you across the back.<br>
<br>
You glance back and almost stumble, taking a few awkward steps to get back on track before another blow hits you in the rear.<br>
<br>
"@@.npc_fit_bimbo;You didn't think it would just be walking on a treadmill, hmm? No, motivation is the key to performance!@@" The woman explains, landing another couple of blows that have you leaping forward as the treadmill continues to increase pace. "@@.npc_fit_bimbo;This is about pushing yourself past your limits — this lovely flogger is specifically designed to be felt through clothing without causing harm to fabric or flesh... now hurry up, slut, run like there's a big, juicy cock for you at the end of your journey! Really push yourself, imagine how good it will feel to spread your tired thighs and get a long, hard reward for your long, hard run...@@"<br>
<br>
[<<moveTo "event_gym_bimbo_private_1_5" "Run." 300>>]
</div>/*#
#desc: private bimbo - first treadmill finish
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "heels" "wearing_heels" "expert_alt">>
<<applyExperience 'heels' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'stamina' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 13 'terrible' $SEEN_STRANGER>>
<<applyFatigue 500>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png">>
<div id="invframe" class="scrolltext">
Whatever thoughts you had about the "ease" of the routine are dashed quickly as the instructor shows you no mercy in pushing you forward.
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
You run like the wind in the steep heels but even your skills are tested as your stamina starts to fade.
<<else>>
Your technique starting to fray as you try to keep running even as fatigue sets in.
<</if>>
<<else>>
She forces you to stumble forward, bouncing slightly in the harness as you futilely attempt to escape the taste of the lash.
<</if>>
<br><br>
The harness takes up more and more of your weight as you keep pushing forward in place. Panting for air you stumble and jump, your back-side on fire from the constant flogging until you can take no more and you collapse, your legs dangling behind you as you hang in the harness.<br>
<br>
"@@.npc_fit_bimbo;Not bad, for a beginner.@@" The instructor states as she turns off the treadmill and lowers you to the ground before removing the harness. "@@.npc_fit_bimbo;This was just a training run — things will get much harder next time — if you have the courage to try.@@"<br>
<br>
After swapping you back to your original shoes she hands you a water bottle. It gives you enough energy to stagger to your feet, bypassing the locker-room entirely to somehow make it home, feeling ready to collapse the whole time.<br>
<br>
[<<moveTo "room_foyer" "Home." 1800 "<<removeItem 'ballet_boots_pink' true>>">>]
</div>/*#
#desc: bimbo treadmill repeat intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You ask about doing another run on the treadmill and the instructor grins.<br>
<br>
"@@.npc_fit_bimbo;Back for more? That is what I like to hear. Eagerness is always attractive. I should warn you, however... from here out the training wheels come off and you will be pushed further than you probably thought possible.@@"<br>
<br>
You think back to your last time, bound, suspended and flogged while forced to run in ballet boots...<br>
<br>
[<<moveTo "event_gym_bimbo_private_2_2" "Let's do this!" 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_gym_bimbo_private_2_2" "Maybe not." 60 "<<set $scene.accept = false>>">>]
</div>/*#
#desc: bimbo treadmill run
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
The instructor leads you into back room with the treadmill. You start to put on the harness but she shakes her head.<br>
<br>
"@@.npc_fit_bimbo;Not yet — this time I need you naked, it will allow for more intense training.@@"<br>
<br>
[<<moveTo "event_gym_bimbo_private_2_3" "Strip." 600>>]<br>
[<<moveTo "room_gym_main" "On second thought, leave." 60>>]
<<else>>
You decline the offer and the instructor shrugs and walks away, looking a bit disappointed in you.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
<</if>>
</div>/*#
#desc: bimbo treadmill strip + run
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.ownBallet = setup.checkItemOwned("ballet_boots_pink")>>
<<addItem 'ballet_boots_pink'>>
<<wearItem 'ballet_boots_pink' true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png">>
<div id="invframe" class="scrolltext">
You remove your clothes and the instructor helps into the harness and ballet boots. Taking things a step further your arms are bound <<if $player.body.breastsize[0] == 0>>in front of your chest<<else>>just below your breasts<</if>>. "@@.npc_fit_bimbo;We need to keep your back clear for encouragement floggings.@@" She explains as you gulp in memory.<br>
<br>
You are already helplessly at her mercy until she decides to end the training but she still is not done with "preparations." A pecker gag is presented to you, a tube running from it up to the ceiling. Once it's strapped tight she has you suck on it <<if $fetish.cum>>and it "rewards" you with a thirst-quenching sip of <<getWordCum>><<else>>for a tasty burst of hydration<</if>>.<br>
<br>
"@@.npc_fit_bimbo;Alright, slut, let's get to running!@@" She says as she sets the treadmill into motion.<br>
<br>
[<<moveTo "event_gym_bimbo_private_2_4" "Run." 1800>>]
</div>/*#
#desc: bimbo treadmill finish
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 18 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'stamina' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'heels' 18 'terrible' $SEEN_FRIEND>>
<<setThreshold 'stamina' 'gym_stamina' 'stamina_meet_prep'>>
<<applyFatigue 500>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png">>
<div id="invframe" class="scrolltext">
You are given little in the way of warm-up, soon running as fast as you can,
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
nimbly springing from one foot to the other in the dainty ballet boots.
<<else>>
managing to keep your balance without relying on the harness too much.
<</if>>
<<else>>
the harness the only thing preventing you from falling as you stagger from one foot to the other.
<</if>>
The whole time you are encouraged by painful blows of the whip, feeling both impact and shocks this time without the meagre protection of your clothing. As if running wasn't enough, you are forced to constantly suck on the dildo occupying your mouth, effectively sucking cock the entire time, which serves to make your heart pump even harder.<br>
<br>
Thinking soon becomes a distraction as you focus entirely on putting one foot in front of the other in a vain attempt to escape the lash of the whip, running yourself ragged while desperately sucking the artificial cock, the closest thing to a "reward" you ever get the occasional burst of <<if $fetish.cum>>cum to keep you hydrated<<else>>hydrating fluids<</if>>.<br>
<br>
Even more than before you are forced to continue well past the breaking point. The first time you collapse she just whips you harder, forcing you to somehow find a second wind and stagger forward again, panting for air around the gag.<br>
<br>
A second fall is treated with the same brutal cruelty and it is only when you finally pass out that things end as you wake up to find yourself lying on the floor naked.<br>
<br>
"@@.npc_fit_bimbo;Not bad,@@" she states with a snort as she kicks your clothing over to you. "@@.npc_fit_bimbo;Come on back when you're ready to train again.@@"<br>
<br>
Jaw sore, legs like rubber and overall exhausted you somehow manage to put your clothes back on and stagger out of the room.<br>
<br>
[<<moveTo "room_gym_main" "Return to the gym." 180 "<<removeItem 'ballet_boots_pink' true>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: bimbo treadmill repeat intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You ask about doing another run on the treadmill and the instructor grins.<br>
<br>
"@@.npc_fit_bimbo;Back for more? That is what I like to hear. Eagerness is always attractive. Well come on, let's get you naked and geared up for training!@@"<br>
<br>
They lead the way into the private back room, with its diabolical treadmill...<br>
<br>
[<<moveTo "event_gym_bimbo_private_3_2" "Follow, strip and get ready to run." 600>>]<br>
[<<moveTo "event_gym_bimbo_private_2_2" "Maybe not." 60 "<<set $scene.accept = false>>">>]
</div>/*#
#desc: bimbo treadmill repeat
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.ownBallet = setup.checkItemOwned('ballet_boots_pink')>>
<<addItem 'ballet_boots_pink'>>
<<wearItem 'ballet_boots_pink' true>>
<<addItem 'catsuit_training'>>
<<wearItem 'catsuit_training' true>>
<<applyExperience 'bondage' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 18 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' 8 'normal' $SEEN_FRIEND>>
<<if $fetish.cum>>
<<applyExperience 'cum' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'stamina' 18 'skip' $SEEN_FRIEND>>
<<applyExperience 'heels' 18 'skip' $SEEN_FRIEND>>
<<applyFatigue 200>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You finish stripping and the instructor hands you a latex bodysuit, explaining that you're going to really "@@.npc_fit_bimbo;Sweat it out!@@" today.<br>
<br>
Dressed in latex, your "training" ballet boots, the "lung-training" mask/gag and harnessed to the treadmill you are soon once again running for your life, every breath <<if $fetish.cum>>tinged with the taste of cum and sucked through an artificial cock<<else>>made more challenging by your phallic gag<</if>>.<br>
<br>
Mercilessly flogged you are pushed to new thresholds of endurance but, as hard as you try, the end result is the same as you are driven to the point of exhaustion before she finally releases your bondage.<br>
<br>
<<if State.hasPlayed("event_gym_bimbo_blowjob_2") && $player.flags.camgirl.level >= 3 && !State.hasPlayed("event_fit_bimbo_invite") && $player.virgin.top_fem>>
As you're cleaning up after class, <<=setup.getNpcName("npc_fit_bimbo","first")>> looks at you funny.<br>
<br>
[<<moveTo "event_fit_bimbo_invite" "Continue." 60>>]
<<elseif $fetish.piss && setup.getTotalValue("piss") > 10 && (!State.hasPlayed("event_gym_bimbo_private_piss_1") || $scene.rand == 1)>>
[<<moveTo "event_gym_bimbo_private_piss_1" "Get changed and return to the gym." 180>>]
<<else>>
[<<moveTo "room_gym_main" "Get changed and return to the gym." 180 "<<removeItem 'catsuit_training' true>><<deleteItem 'catsuit_training'>><<removeItem 'ballet_boots_pink' true>><<useClothSetPop 'tmp'>><<if !$scene.ownBallet>><<deleteItem 'ballet_boots_pink'>><</if>>">>]
<</if>>
</div>/*#
#desc: offered piss/sweat drink after private latex workout
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'ballet_boots_pink' true>>
<<if !$scene.ownBallet>>
<<deleteItem 'ballet_boots_pink'>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You're about to peel off your "training" catsuit when the instructor points out that you're looking "@@.npc_fit_bimbo;A bit dehydrated.@@"<br>
<br>
You nod — running in a full body catsuit is hot in more ways than one, and your catsuit starts leaking from the ankle as you pull off the training ballet boots.<br>
<br>
"@@.npc_fit_bimbo;Stop! You're going to make a mess!@@" The instructor calls out before having you aim your foot into the boot. In that somewhat odd position she starts "massaging" you, pushing the sweat down your body and out the ankle until the boot is filled well past the toe with your fragrant sweat.<br>
<br>
"@@.npc_fit_bimbo;Look at how hard you worked!@@" She notes, sloshing the sweat around in front of you. "@@.npc_fit_bimbo;This is a lot of important electrolytes... but if you only drink this you won't even be breaking even!@@" She grins and then stands up. "@@.npc_fit_bimbo;Fortunately for you, I have JUST the thing to help with your recovery.@@"<br>
<br>
Before you can respond she brings the boot between her legs and starts to piss, leaking straight through her tight, thin leggings to more than double the liquid contents of the boot.<br>
<br>
"@@.npc_fit_bimbo;Here you go! A perfect post-workout cocktail. The next best thing to some post-workout cock!@@"<br>
<br>
[<<moveTo "event_gym_bimbo_private_piss_2" "Drink up!" 180 "<<set $scene.drink=true>>">>]<br>
[<<moveTo "event_gym_bimbo_private_piss_2" "You'll stick to regular water..." 180 "<<set $scene.drink=false>>">>]
</div>/*#
#desc: drink piss/sweat after private latex workout
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drink>>
<<applyExperience 'piss' 20 'terrible' $SEEN_FRIEND>>
<<else>>
<<removeItem 'catsuit_training' true>>
<<deleteItem 'catsuit_training'>>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if $scene.drink>>
You accept your liquid-filled boot and tip it back as the instructor looks on with a grin. The salty taste of your sweat really brings out the
<<if setup.getTotalValue("piss") > 15>>
subtle tasting notes
<<else>>
flavour
<</if>>
of the instructor's lady lemonade and you find yourself gulping it down eagerly, each swallow reminding you just how thirsty your workout made you.<br>
<br>
The instructor helpfully tips the boot back further and gives it a twist to shake free the final few delicious drops.<br>
<br>
You pant after finishing and she grins, "@@.npc_fit_bimbo;Hmm, you're still a bit flushed, you still need a bit more hydration?@@"<br>
<br>
[<<moveTo "event_gym_bimbo_private_piss_3" "You're still thirsty..." 180 "<<set $scene.drink=true>>">>]<br>
[<<moveTo "event_gym_bimbo_private_piss_3" "You're feeling good, now." 180 "<<set $scene.drink=false>>">>]
<<else>>
You thank your instructor for the offer but decline. She shrugs, tilting the boot back and gulping the blend of piss and sweat herself "@@.npc_fit_bimbo;mmm, you really compliment my flavour, you TOTALLY just missed out.@@" She licks her lips, "@@.npc_fit_bimbo;hmm, I'm in the mood for something to cap that all off, it's been HOURS since I had a mouth-ful of cum, and I need to fix that! Have a good day!@@"<br>
<br>
She hurries past, leaving you alone to finish changing out of your slippery catsuit and back into your "normal" gym attire.<br>
<br>
[<<moveTo "room_gym_main" "Return to the gym." 180>>]
<</if>>
</div>/*#
#desc: more drink piss/sweat after private latex workout
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drink || $fetish.get_raped>>
<<applyExperience 'piss' 20 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<</if>>
<<removeItem 'catsuit_training' true>>
<<deleteItem 'catsuit_training'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_spin.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if $scene.drink>>
You reply that you're still thirsty and the instructor grins, instructing you to peel off your catsuit and start licking. "@@.npc_fit_bimbo;There's lots of valuable electrolytes in there, mustn't waste!@@"<br>
<br>
You shudder submissively as you do as she commands. Despite earlier efforts the latex is still wet with sweat, though you find it more concentrated and salty than before.<br>
<br>
By the time you finished licking the latex clean you're feeling even thirstier than before... but the instructor has a solution already ready as she pulls a water-bottle out of her bag and pours golden liquid into your other boot.<br>
<br>
"@@.npc_fit_bimbo;I'm so busy with back-to-back-to-bend-me-back-over classes I don't always have time for the call of nature, I'm sure you'll love the aged flavour, and for an extra kick...@@"<br>
<br>
She un-straps her heels and peels off thin, but sweat-soaked socks, squeezing them out over your boot before handing it back with a grin.<br>
<br>
You shudder, parched, submissive, and eager as you guzzle the whole thing. "@@.npc_fit_bimbo;Good slut,@@" she congratulates with a grin. You return the compliment with a smile and then dress and head on your way.
<<elseif $fetish.get_raped>>
You reply that you're feeling sated and the instructor frowns. "@@.npc_fit_bimbo;Oh no, the dehydration has affected your judgement! We need to get some electrolytes in you NOW or you're going to be in trouble.@@"<br>
<br>
You try to object, but she's already helping unzip and peel off your catsuit, turning it inside out and holding you by the hair as she orders you to lick. "@@.npc_fit_bimbo;Lick it up, slut! You can't let those important electrolytes go to waste!@@"<br>
<br>
Using your face like a mop she doesn't stop until your tongue has traversed every square centimetre of the fragrant latex... but that isn't all as she grabs your other boot and fishes into her gym-bag for a water bottle full of a golden liquid.<br>
<br>
"@@.npc_fit_bimbo;I'm so busy with back-to-back-to-bend-me-back-over classes I don't always have time for the call of nature, I'm sure you'll love the aged flavour, and for an extra kick...@@"<br>
<br>
She un-straps her heels and peels off thin, but sweat-soaked socks, squeezing them out over your boot before grabbing you by the head and forcing you to drink.<br>
<br>
"@@.npc_fit_bimbo;That's right, choke it down, slut,@@" she commands as you struggle to sneak a breath past the flood of strong piss and sweat. "@@.npc_fit_bimbo;It's not enough to have the stamina to go all night long, you need to be ready to swallow everything you're given, as well. Being a perfect bimbo isn't all glitz and glamour, it's also about being a dumpster of desire, an insatiable pit of debauched depravity.@@"<br>
<br>
Only after she's shaken every drop out of the shoe does the instructor let you up off your knees, grinning dominantly as you hurry to dress and head back into the gym, your belly sloshing with every step.
<<else>>
You reply that you're feeling better and the instructor frowns. "@@.npc_fit_bimbo;Well, you would know your body the best. Still, I advise drinking a bit extra through the day<<if $fetish.cum>> and not just cum! <<getWordCum>> is more of a food than a beverage, nutritionally, so while you want as much as you can get for optimal nutrition AND the obvious reasons, well... it can't replace all of hydration needs<</if>>.@@"<br>
<br>
You thank her for the advise and finish peeling off the catsuit before preparing to head on your way.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Get changed and return to the gym." 180 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: first gym high heel fitness class intro
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.woreHeels = setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
One of the first to arrive to another random group class you are a bit surprised when things start up and you look around to find nearly all of your fellow students are female. You shrug, thinking nothing much of it as the enthusiastic (and very attractive) instructor leads the class through a series of stretches and simple calisthenic movements.<br>
<br>
"@@.generic_female1;Alright, ladies!@@" The instructor announces at a pause. "@@.generic_female1;That should be a sufficient warm-up, get changed into your heels and let's get to work!@@"<br>
<br>
You watch as the rest of the class turns to the back of the room where a cabinet opens filled with sporty high heel shoes.
<<if $npc_fit_bimbo.stage <= 1>>
<<if $scene.woreHeels>>
Looking over at you one of your class-mates grins. "@@.npc_fit_bimbo;Look at you! All dressed for the occasion, aren't high heels the best?@@"<br>
<br>
She's sporting a similarly steep and sporty pair and the two of you wait as the "less-prepared" students get changed.
<<else>>
Noticing your confusion another student smiles at you in encouragement.<br>
<br>
"@@.npc_fit_bimbo;First time? Come on, let me grab your size — this is high heel fitness where we practice walking in heels, not just for the obvious benefits, but because the pelvic angle really helps focus on building that perfect booty...@@" She leans around to glance at your backside with a grin. "@@.npc_fit_bimbo;Not that you're doing too shabby in that regard already but one can always strive to reach true perfection!@@"
<</if>>
<<else>>
<br><br>
<<printThought "Just like that secret class I was invited to, but open to the public.">>
<</if>>
<br><br>
<<if $scene.woreHeels>>
You're already wearing your work out heels and have no need to change.<br>
<br>
[<<moveTo "event_heel_training_intro_2" "Wait for the rest of the class to finish changing." 300 "<<set $scene.leave=false>>">>]<br>
<<else>>
The rest of the class is already changing shoes, you'd better hurry if you want to keep pace.<br>
<br>
[<<moveTo "event_heel_training_intro_2" "Change into the heels and continue the class." 300 "<<set $scene.leave=false>>">>]<br>
<</if>>
[<<moveTo "event_heel_training_intro_2" "This isn't the sort of fitness you were looking for." 60 "<<set $scene.leave=true>>">>]
</div>/*#
#desc: gym high heel fitness class intro repeat
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.woreHeels = setup.checkItemTypeTag('shoes', ['gym', 'heels'])>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You pop in for another "high heel fitness" class. It appears they are getting right to it this time as you see the students, already getting changed into heels.<<if !$scene.woreHeels>> Your "friend" from last time greets you with a wave as she pulls out a pair of heels in your size.<</if>><br>
<br>
<<if $scene.woreHeels>>
You're already wearing your work out heels and have no need to change.<br>
<br>
[<<moveTo "event_heel_training_intro_2" "Wait for the rest of the class to finish changing." 300 "<<set $scene.leave=false>>">>]<br>
<<else>>
[<<moveTo "event_heel_training_intro_2" "Change into the heels and continue the class." 300 "<<set $scene.leave=false>>">>]<br>
<</if>>
[<<moveTo "event_heel_training_intro_2" "This isn't the sort of fitness you were looking for." 60 "<<set $scene.leave=true>>">>]
</div>/*#
#desc: first gym high heel fitness class intro
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gym.classes.high_heel.level = 2>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if $scene.leave>>
<<if setup.getTotalValue("feminization") > 10>>
For some reason you decide against taking the high heel fitness class. You politely excuse yourself<<if $npc_fit_bimbo.stage == 0>> to the student that had tried to help and<</if>> return to the gym proper.
<<else>>
<<if setup.getTotalValue("feminization") > 5>>
You decide that this is a bit too girly for you, even with the rest of what's been going on and you politely excuse yourself and head back to the main gym.
<<else>>
Practicing walking in heels seems very silly and useless so you politely excuse yourself and make your exit.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 120>>]
<<else>>
<<if $scene.woreHeels>>
Already appropriately equipped you line up and wait for the rest of the students to change and class to start.<br>
<br>
[<<moveTo "event_heel_training_1" "Continue." 60>>]
<<else>>
You flash a smile to the other student and quickly get changed into the "fitness" high heels.<br>
<br>
Lining back up with the rest of the students, you get ready for the rest of the class.<br>
<br>
[<<moveTo "event_heel_training_1" "Continue." 180>>]
<</if>>
<</if>>
</div>/*#
#desc: gym high heel fitness class
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $gym.classes.high_heel.level == 2>>
<<set $gym.classes.high_heel.level = 3>>
<</if>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if !$scene.woreHeels>>
<<set $scene.shoes = setup.getItemFromType('shoes')>>
<<addItem 'workout_heels'>>
<<wearItem 'workout_heels' true>>
<</if>>
<<applyExperience 'stamina' 8 'very' $EXPOSED>>
<<applyExperience 'heels' 8 'very' $EXPOSED>>
<<applyExperience 'dexterity' 8 'normal' $EXPOSED>>
<<applyFatigue 20>>
<<setThreshold 'dexterity' 'other' 'heel_training'>>
<<setThreshold 'heels' 'heel_training' 'class_training'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
Confidently balanced
<<else>>
Easily balancing
<</if>>
<<else>>
<<if setup.getTotalValue("heels") > 5>>
Barely balanced
<<else>>
Precariously teetering
<</if>>
<</if>>
in your steep, but surprisingly supportive, heels, you join the group in an otherwise normal calisthenic class. Consisting mostly of walking around the room intermixed with squats the combination of the upbeat intensity and duration is still enough to work up a bit of a sweat.<br>
<br>
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
Throughout it all, you constantly draw stares for how skillfully you stride — it being pretty obvious that the class is well below your current skill level.
<<else>>
You are easily in the upper portion of the class, almost as skilled in walking and moving in heels as the instructor.
<</if>>
<<else>>
<<if setup.getTotalValue("heels") > 5>>
Practice may not have made perfect yet, but you are definitely starting to find your confidence in heels, and feeling a nice butt-pump while you're at it!
<<else>>
You spend the entire class focused on not falling over or twisting your ankle — walking in heels is hard!
<</if>>
<</if>>
<br><br>
<<if $npc_fit_bimbo.stage > 0 && !$scene.woreHeels>>
You join the rest of the students in changing back into your normal shoes at the end of the class and then return to the gym.<br>
<br>
[<<moveTo "room_gym_main" "Return to the gym." 120 "<<wearItem $scene.shoes true>>">>]
<<elseif setup.getTotalValue("heels") >= 10>>
<<if $scene.woreHeels>>Class over<<else>>As you're changing back into your normal shoes<</if>> you notice the woman who had helped you out earlier is wincing as she removes her heels. It looks like she must have cramped something during class.<br>
<br>
[<<moveTo "event_heel_training_bonus" "Offer one of your famous foot massages." 600>>]<br>
[<<moveTo "room_gym_main" "Return to the gym." 120 "<<if !$scene.woreHeels>><<wearItem $scene.shoes true>><</if>>">>]
<<else>>
The class eventually comes to an end. You <<if !$scene.woreHeels>>change back into your normal footwear and <</if>>return to the gym.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 120 "<<if !$scene.woreHeels>><<wearItem $scene.shoes true>><</if>>">>]
<</if>>
</div>/*#
#desc: stay after gym high heels fitness class
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_fit_bimbo.stage < 1>>
<<set $npc_fit_bimbo.stage = 1>>
<<set $npc_fit_bimbo.profile = true>>
<</if>>
<<setThreshold 'foot' 'foot_massages' 'other_help'>>
<<applyExperience 'foot' 8 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
Noticing the other woman's pain, you ask if you could help her out with a nice foot massage? Looking up from trying to work at her calf, her face lights up. "@@.npc_fit_bimbo;Oh, that sounds WONDERFUL, I don't know what it is, I mean I wear twelve centimetre stilettos practically all the time! But this class just works things like almost nothing else!@@"<br>
<br>
You nod as she takes a seat and you kneel down and put your magic fingers to work. You set to work unraveling the tangle of knots. You start with her calf and by the time you are working the tension out of her arches, you would swear she is about ready to have a mild orgasm.<br>
<br>
"@@.npc_fit_bimbo;Oh my, you are a miracle worker! I had no idea it was that bad but oh, I can't remember when my feet felt so happy and relaxed!@@"<br>
<br>
Prancing around a bit on her toes like a ballerina, she sits back down. You reflexively do the work of putting her shoes back on.<br>
<br>
<<if $npc_fit_bimbo.stage >= 2>>
"@@.npc_fit_bimbo;I guess I need to spend more time attending the whole body fitness class! Building the perfect bimbo bod is really a full-time commitment, but I don't have to tell you that it's worth the effort! Catch you later!@@"<br>
<br>
You smile back in agreement and
<<else>>
"@@.npc_fit_bimbo;Oh aren't you just the best! Tell you what, if you enjoy this class there's another, more advanced version that they offer that's kind of... invitation-only.@@"<br>
<br>
Your interest piqued as you finish lacing up her fashionable sneakers she helps you to your feet and gives you a hug, her large breasts pressing against you.<br>
<br>
"@@.npc_fit_bimbo;I'll warn you that it takes a unique approach to full-body fitness, but if you really want to practice and build the skills and body that will have all the guys and gals drooling, well... you should check it out!@@"<br>
<br>
You thank her for the tip as
<</if>>
she skips off through the gym. You consider what to do next.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 120>>]
</div>/*#
#desc: gym karate class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
/% admin does karate M/W after work unless age of confusion %/
<<set $scene.admin_there = ($npc_admin.flags.evil < 1 || $npc_admin.flags.evil > 3) && !$npc_admin.flags.ageofconfusion && ($now.getUTCDay()==1 || $now.getUTCDay()==3)>>
<<set _classStart = setup.setNextDate($now, 0, 19, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_classStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<set $scene.bjj_first = setup.getTotalValue("martial_arts") < 5 && setup.hasThreshold('martial_arts', 'bjj', 'bjj_first')>>
<<set $scene.bjj_second = setup.getTotalValue("martial_arts") >= 5 && setup.getTotalValue("martial_arts") < 10 && setup.hasThreshold('martial_arts', 'karate', 'karate_first')>>
<<if !$scene.bjj_first && !$scene.bjj_second>>
<<set $npc_martial_arts.profile = true>>
<<if setup.getItemFromType('dress') != 'gi_pink'>>
<<useClothSetPush 'martialartsclass'>>
<<removeEverythingButUnderwear>>
<<set _socks = setup.getItemFromType("stockings")>>
<<if _socks != "">>
<<removeItem _socks true>>
<</if>>
<<set _garters = setup.getItemFromType("garter")>>
<<if _garters != "">>
<<removeItem _garters true>>
<</if>>
<<addItem 'gi_pink'>>
<<wearItem 'gi_pink' true>>
<<include martialArtsBelt>>
<</if>>
<<if $scene.admin_there>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<else>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<</if>>
<<if $scene.admin_there && $npc_admin.flags.martial_arts_level < 2>>
<<set $npc_admin.flags.martial_arts_level = 2>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("martial_arts") >= 10 && Math.round($player.timebased.fatigue) <= 50 && !setup.hasThreshold('martial_arts', 'martial_arts', 'mma')>>
You show up for class only to face a surprise — called to the front by the instructor she announces that you're up for promotion, motioning you to a portioned-off corner of the mat where the upper belts are already queuing up.<br>
<br>
"@@.npc_martial_arts;So keep an eye out on <<=$player.first_name>> — I want as many of you to have a round as possible in the shark tank.@@"<br>
<br>
You gulp as you walk over to the designated area and turn towards your first opponent.
<<if $npc_admin.flags.evil==0>>
Your friend <<=setup.getNpcName('npc_admin', 'first')>> grins and extends a <<if !$npc_admin.fem>>large, meaty <</if>>hand.
<<else>>
You recognise the <<man>> as a frequent sparring partner of <<=setup.getNpcName('npc_admin', 'first')>> well, back when <<he npc_admin>> still came to class. You try to clear your mind, getting distracted when you're about to face off with a <<guy>> almost as <<if $npc_admin.fem>>good at karate<<else>>big and strong<</if>> as <<=setup.getNpcName('npc_admin', 'first')>> would not be a good idea.
<</if>>
<br><br>
[<<moveTo "event_martial_arts_promotion_1" "Slap, bump, bow and get to it." 300>>]
<<elseif $scene.bjj_first>>
You try to drop in for a karate class, but <<=setup.getNpcName('npc_martial_arts', 'formal')>> pulls you aside.<br>
<br>
"@@.npc_martial_arts;Hey, first off: LOVE the enthusiasm, but with you just starting out picking up a second discipline is probably just going to lead to confusion. Spend a bit more time working on your groundwork and then you can circle back and join the stand-up class.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif $scene.bjj_second>>
You try to drop in for a karate class, but <<=setup.getNpcName('npc_martial_arts', 'formal')>> pulls you aside.<br>
<br>
"@@.npc_martial_arts;Hey, sorry, but I think you should focus on nailing the basics of BJJ before you resume cross-training. Master those fundamentals and then you can work on integrating stand-up with your ground game.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<else>>
Showing up for the karate class, you take off your shoes and change into a gi.<br>
<br>
<<if $gym.classes.karate.level == 0>>
<<if setup.getTotalValue("feminization") > 13>>
<<printThought "Oooh, pink!">>
<<else>>
<<printThought "Why is it the only one they have that's my size is pink?">>
<</if>>
<<else>>
<<if setup.getTotalValue("feminization") > 13>>
<<printThought "Pink again? Yay!">>
<<else>>
<<printThought "Pink, again?">>
<</if>>
<</if>>
<br><br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_admin', 'first')>> greets you with a smile, welcoming you to the class<<if $gym.classes.bjj.level == 0>> and thanking you for deciding to join <<him npc_admin>>. "@@.npc_admin;You're gonna love it, there's just something about landing a solid kick that's just, mmm, ain't nothing else like it.@@"<<else>>.<</if>><br>
<br>
<<switch $gym.classes.karate.level>>
<<case 0>>
Formally calling the class to order <<=setup.getNpcName('npc_martial_arts', 'formal')>>, the dangerous-looking female instructor, smiles at you in greeting and pairs you up with <<=setup.getNpcName('npc_admin', 'first')>> to show you the ropes.<br>
<br>
[<<moveTo "event_gym_class_karate_1" "Continue." 2700>>]
<<case 1>>
"@@.npc_admin;Welcome back, <<callPlayer "npc_admin">>! Made it past the first class so you're already doing better than that time you tried back in college!@@" <<=setup.getNpcName('npc_admin', 'first')>> states with a grin! "@@.npc_admin;I'll tell you I felt so guilty about what happened that first time, I hope things keep going better this time.@@"<br>
<br>
You nod and say you do too, then it's time for the two of you to get lined up for the start of class proper.<br>
<br>
[<<moveTo "event_gym_class_karate_2" "Continue." 2700>>]
<<case 2>>
You fall in for another class, taking your place down at the noob end as you note <<=setup.getNpcName('npc_admin', 'first')>> is standing far to the right with the other black belts.<br>
<br>
[<<moveTo "event_gym_class_karate_3" "Start class." 2700>>]
<<case 3>>
No longer down with the white belts, you stand in the middle of the room at the start of the coloured belts. <<=setup.getNpcName('npc_admin', 'first')>> remains far to your right up with the other black belts.<br>
<br>
[<<moveTo "event_gym_class_karate_3" "Start class." 2700>>]
<<default>>
ERROR unknown gym.classes.karate.level <<=$gym.classes.karate.level>> with admin
<</switch>>
<<else>>
<<switch $gym.classes.karate.level>>
<<case 0>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>>, the dangerous-looking female instructor, smiles at you in greeting, starting the class on drilling before taking you aside for a private introduction.<br>
<br>
[<<moveTo "event_gym_class_karate_1" "Continue." 2700>>]
<<case 1>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>>, the dangerous-looking female instructor, smiles at you in greeting.<br>
<br>
She congratulates you on coming back for a second class, instructing you to line up with the main class for technique demonstration before hand-picking you a female partner close to your size for drilling.<br>
<br>
[<<moveTo "event_gym_class_karate_2" "Continue." 2700>>]
<<case 2>>
You fall in for another class, taking your place down with the other noobs.<br>
<br>
[<<moveTo "event_gym_class_karate_3" "Start class." 2700>>]
<<case 3>>
No longer down with the white belts, you stand in the middle of the room at the start of the coloured belts and wait for class to begin.<br>
<br>
[<<moveTo "event_gym_class_karate_3" "Start class." 2700>>]
<<default>>
ERROR unknown gym.classes.karate.level <<=$gym.classes.karate.level>>
<</switch>>
<</if>>
<</if>>
</div>/*#
#desc: gym karate first class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gym.classes.karate.level = 1>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyExperience 'martial_arts' 5 'normal' $EXPOSED>>
<<if !setup.hasThreshold('martial_arts', 'bjj', 'bjj_first')>>
<<setThreshold 'martial_arts' 'karate' 'karate_first'>>
<<else>>
<<setThreshold 'martial_arts' 'karate' 'karate_second'>>
<</if>>
<<applyExperience 'martial_arts' 5 'normal' $EXPOSED>>
<<applyExperience 'stamina' 7 'very' $EXPOSED>>
<<applyExperience 'dexterity' 7 'very' $EXPOSED>>
<<applyFatigue 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
<<if $scene.admin_there>>
You can't help flashing back to the last time you tagged along with <<=setup.getNpcName('npc_admin', 'first')>> to one of <<his npc_admin>> karate classes. This time goes much smoother — <<hes npc_admin>> still as tall, strong and disturbingly quick as you remember, but <<he npc_admin>> better manages to match your intensity and as a result there is not a single instance of you flying through a wall.<br>
<br>
Only partially following along with the main class <<he npc_admin>> teaches you the fundamentals of stance, movement and some basic strikes.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> runs you through the fundamentals of stance, movement and a basic overview of high percentage kicks and punches. You find her a very precise and skilled instructor as she seems to instantly know when you missed a detail as well as which particular version of a movement would feel most natural for you to perform.
<</if>>
<br><br>
Your mind is a bit overflowing with knowledge when the end of the technique portion of class comes along. You sit back with <<if $scene.admin_there>><<=setup.getNpcName('npc_admin', 'first')>><<else>><<=setup.getNpcName('npc_martial_arts', 'formal')>><</if>> to watch the other students break into pairs for contact sparring, getting almost a play-by-play of some of the better match-ups.<br>
<br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: gym karate second class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gym.classes.karate.level = 2>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyExperience 'martial_arts' 5 'very' $EXPOSED>>
<<applyExperience 'stamina' 7 'very' $EXPOSED>>
<<applyExperience 'dexterity' 7 'very' $EXPOSED>>
<<applyFatigue 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
In the main class now, you try to follow along as you get into rows to practice the technique of the day, then pair off to practice what you've learned with a partner.<br>
<br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>>, the instructor, directs you away from your friend, instead pairing you up with a woman who is closer to your size.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> pairs you up with a woman close to your size.
<</if>>
<br><br>
Your partner is definitely a lot better than you are, but she's friendly and helpful, pointing out some smaller details that you missed in the main demo even as she more or less no-sells everything you throw at her.<br>
<br>
Flipping roles, you would swear you're being kicked by an ox, the wind getting blown out of you by her kicks even as you'd swear she's pulling them.<br>
<br>
<<if setup.getTotalValue("stamina") < 10 || setup.getTotalValue("strength") < 10>>
You lack the combination of strength and stamina to effectively last through the class, by the end you're barely vertical, your entire body sore.<br>
<br>
"@@.npc_martial_arts;I admire your gumption, but you might want to work on your basic fitness foundations if you want to see real progress.@@"
<<else>>
You tough out class but opt to sit out sparring, standing on the side and watching as the other students set to work beating the crap out of each other.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: gym karate nth class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyExperience 'martial_arts' 10 'skip' $EXPOSED>>
<<applyExperience 'stamina' 7 'terrible' $EXPOSED>>
<<applyExperience 'dexterity' 7 'terrible' $EXPOSED>>
<<applyFatigue 20>>
<<if setup.getItemFromType("panties") != "athletic_protection">>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('martial_arts')>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
The class starts out with a quick warm-up and then on to technique drilling and then live, full-contact sparring.<br>
<br>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
You have a nigh endless gas-tank, able to focus all of your attention on repeatedly drilling the move of the day without ever tiring in the slightest.
<<else>>
While you can't be reckless with your energy, you have plenty of stamina to make it through class without difficulty.
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
The warm-up alone would be a workout and you barely learn anything in the class proper, focused just on surviving to the end.
<<else>>
You're puffing and wheezing before warm-up is even finished, barely able to focus enough on the remainder of the class as you struggle just to breathe.
<</if>>
<</if>>
<br><br>
<<if setup.getItemFromType("panties") != "athletic_protection">>
You try to participate in sparring, but you barely get started before an errant leg kick slides up your thigh and into something more... tender.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
As secure as it is, your <<=setup.getItemTypeName("cage")>> does nothing to protect you from a hit <<if $player.body_ref.balls>>to the old family jewels<<elseif $player.body_ref.penis>>right in the dick<<else>>right up the middle<</if>> and you double over in pain as your partner hurriedly apologises.
<<else>>
You explode in pain, folding in half and dropping to the ground, fetal as your partner hurriedly apologises.
<</if>>
<br><br>
You manage to catch your breath, but decide against trying any further sparring today.<br>
<br>
<<printThought "Hmm, I need to find some sort of protective undergarments for this sort of activity.">>
<<else>>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
Despite your size you are easily one of the strongest participants in sparring, neutralising your opponent's raw power so that it becomes more a chess match of technique.
<<else>>
You're strong enough not to get easily tossed around, able to focus on applying technique rather than having people muscle through you.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
When it comes to sparring, you find your efforts stymied by the fact that you're just too weak compared to your opponents. Occasionally you can hit the perfect angle to maximize your leverage but, in general, you're just rag-dolled by whoever you square off with.
<<else>>
When it comes time for full-contact sparring, you find yourself getting bulldozed and lit up regardless of technique, your body just too weak to keep your opponent from imposing their will as they kick through your blocks and seem barely affected by even your best counter-strikes.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
You slip and rip, an impossible to hit ghost able to tag your opponent at will.
<<else>>
Your cross-training is really paying off, though you can't actually apply the ground techniques directly it gives you a better understanding of body mechanics and balance that really seems to bolster your technique.
<</if>>
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
Making the switch from grappling to stand-up is still a bit jarring as you find yourself rushing for clinches a bit too often. Still, you're overall improving rather than getting run over every match.
<<else>>
Sparring consists of you getting your ass kicked. Literally. Nobody is particularly malicious about it, but the fact is, you're a noob and so you're lucky if you can just survive the round without getting blasted, actually getting your own offense in is pretty much out of the question.
<</if>>
<</if>>
<br><br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_admin', 'first')>> congratulates you on your progress, watching your final spar and giving you a bit of coaching help that lets you manage to come out on top of things.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> catches you after class and congratulates you on your continued improvement. "@@.npc_martial_arts;You get better by doing, keep on showing up and you'll be a skilled fighter in no time!@@"
<</if>>
<</if>>
<br><br>
<<if State.hasPlayed('event_tournament_signup') && $scene.admin_there>>
You've finished bowing out for class when <<=setup.getNpcName('npc_admin', 'first')>> comes up to you bearing <<his npc_admin>> trademark grin.<br>
<br>
<<if $npc_admin.flags.private_training > 0>>
"@@.npc_admin;Lookin' good! You're a natural at this stuff AND you managed to avoid the blue belt vanishing act! Anyway, I was wondering if you wanted to get in some extra training one on one? I'd love to drill some of this week's techniques a few more times with a partner. I'm sure we can find a spare private room to practice in.@@"
<<else>>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>. You wanna grab a private room and put in a few more rounds and make sure we have today's technique really down?@@"
<</if>>
<br><br>
[<<moveTo "event_martial_training_pair_1" "Say sure." 1800 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_martial_training_pair_1" "Not today." 60 "<<set $scene.accept = false>>">>]
<<else>>
<<if setup.hasThreshold('martial_arts', 'martial_arts', 'mma')>>
As you finish class you notice the advertisement for the martial arts tournament.<br>
<br>
<<if $npc_admin.flags.tournament >= 6>>
[@@.link_locked;You have won the martial arts tournament.@@]<br>
<<else>>
[<<moveTo "event_tournament_signup" "Examine the advertisement for the martial arts tournament." 60>>]<br>
<</if>>
[<<moveTo "event_martial_training_private_0" 'Ask <<=setup.getNpcName("npc_martial_arts", "formal")>> about a private lesson.' 60>>]<br>
<</if>>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
<</if>>
</div>/*#
#desc: gym bjj class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
/% admin does bjj Tu/Th after work unless age of confusion %/
<<set $scene.admin_there = $npc_admin.flags.evil < 0 && !$npc_admin.flags.ageofconfusion && ($now.getUTCDay()==2 || $now.getUTCDay()==4)>>
<<set _classStart = setup.setNextDate($now, 0, 20, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_classStart)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<set $scene.karate_first = setup.getTotalValue("martial_arts") < 5 && setup.hasThreshold('martial_arts', 'karate', 'karate_first')>>
<<set $scene.karate_second = setup.getTotalValue("martial_arts") >= 5 && setup.getTotalValue("martial_arts") < 10 && setup.hasThreshold('martial_arts', 'bjj', 'bjj_first')>>
<<if !$scene.karate_first && !$scene.karate_second>>
<<set $npc_martial_arts.profile = true>>
<<if setup.getItemFromType('dress') != 'gi_pink'>>
<<useClothSetPush 'martialartsclass'>>
<<removeEverythingButUnderwear>>
<<set _socks = setup.getItemFromType("stockings")>>
<<if _socks != "">>
<<removeItem _socks true>>
<</if>>
<<set _garters = setup.getItemFromType("garter")>>
<<if _garters != "">>
<<removeItem _garters true>>
<</if>>
<<addItem 'gi_pink'>>
<<wearItem 'gi_pink' true>>
<<include martialArtsBelt>>
<</if>>
<<if $scene.admin_there>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<else>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<</if>>
<<if $scene.admin_there && $npc_admin.flags.martial_arts_level < 2>>
<<set $npc_admin.flags.martial_arts_level = 2>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("martial_arts") >= 10 && Math.round($player.timebased.fatigue) <= 50 && !setup.hasThreshold('martial_arts', 'martial_arts', 'mma')>>
You show up for class only to face a surprise — called to the front by the instructor she announces that you're up for promotion, motioning you to a portioned-off corner of the mat where a queue of upper belts have already lined up.<br>
<br>
"@@.npc_martial_arts;So keep an eye out on <<=$player.first_name>> — I want as many of you to have a round as possible in the shark tank.@@"<br>
<br>
You gulp as you walk over to the designated area and turn towards your first opponent.
<<if $scene.admin_there>>
Your friend <<=setup.getNpcName('npc_admin', 'first')>> grinning and extending a hand.
<<else>>
You recognise the <<man>> as a frequent sparring partner of <<=setup.getNpcName('npc_admin', 'first')>> well, back when <<he npc_admin>> still came to class. You try to clear your mind, getting distracted when you're about to face off with a <<guy>> almost as <<if $npc_admin.fem>>good at karate<<else>>big and strong<</if>> as <<=setup.getNpcName('npc_admin', 'first')>> would not be a good idea.
<</if>>
<br><br>
[<<moveTo "event_martial_arts_promotion_1" "Slap, bump, bow and get to it." 300>>]
<<elseif $scene.karate_first>>
You try to drop in for a BJJ class, but <<=setup.getNpcName('npc_martial_arts', 'formal')>> pulls you aside.<br>
<br>
"@@.npc_martial_arts;Hey, first off: LOVE the enthusiasm, but with you just starting out picking up a second discipline is probably just going to lead to confusion. Spend a bit more time concentrating on your stand-up and then think about circling back for the grappling class.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif $scene.karate_second>>
You try to drop in for a BJJ class, but <<=setup.getNpcName('npc_martial_arts', 'formal')>> pulls you aside.<br>
<br>
"@@.npc_martial_arts;Hey, sorry, but I think you should focus on nailing the basics of Karate before you resume cross-training. Master those fundamentals and then you can work on integrating stand-up and ground work.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<else>>
Showing up for the BJJ class you take off your shoes and change into a gi.<br>
<br>
<<if $gym.classes.bjj.level == 0>>
<<if setup.getTotalValue("feminization") > 13>>
<<printThought "Oooh, pink!">>
<<else>>
<<printThought "Why is it the only one they have that's my size is pink?">>
<</if>>
<<else>>
<<if setup.getTotalValue("feminization") > 13>>
<<printThought "Pink again? Yay!">>
<<else>>
<<printThought "Pink, again?">>
<</if>>
<</if>>
<br><br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_admin', 'first')>> greets you with a smile, welcoming you to the class<<if $gym.classes.bjj.level == 0>> and thanking you for deciding to join <<him npc_admin>>. "@@.npc_admin;You're gonna love it. Karate will always be my first love, but grappling is pretty damn fun too!@@"<<else>>.<</if>><br>
<br>
<<switch $gym.classes.bjj.level>>
<<case 0>>
Formally calling the class to order <<=setup.getNpcName('npc_martial_arts', 'formal')>>, the dangerous-looking female instructor, smiles at you in greeting and pairs you up with <<=setup.getNpcName('npc_admin', 'first')>> to show you the ropes.<br>
<br>
[<<moveTo "event_gym_class_bjj_1" "Continue." 2700>>]
<<case 1>>
"@@.npc_admin;Hey, welcome back, <<callPlayer "npc_admin">>. Glad you've decided to stick with it!@@" <<=setup.getNpcName('npc_admin', 'first')>> states with a welcoming smile.<br>
<br>
You nod and say you do to, then it's time for the two of you to line up for the start of class proper.<br>
<br>
[<<moveTo "event_gym_class_bjj_2" "Continue." 2700>>]
<<case 2>>
You fall in for another class, taking your place down at the noob end as you note <<=setup.getNpcName('npc_admin', 'first')>> standing in the middle with the other coloured belts.<br>
<br>
[<<moveTo "event_gym_class_bjj_3" "Start class." 2700>>]
<<case 3>>
No longer down with the white belts, you stand in the middle of the room at the start of the coloured belts, <<=setup.getNpcName('npc_admin', 'first')>> is a bit further to your right, but not quite as far away as when you started.<br>
<br>
[<<moveTo "event_gym_class_bjj_3" "Start class." 2700>>]
<<default>>
ERROR unknown gym.classes.bjj.level <<=$gym.classes.bjj.level>> with admin
<</switch>>
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>>, the dangerous-looking female instructor, smiles at you in greeting.<br>
<br>
<<switch $gym.classes.bjj.level>>
<<case 0>>
Welcoming you to the class, she starts things running and then takes you aside for a personal introduction.<br>
<br>
[<<moveTo "event_gym_class_bjj_1" "Continue." 2700>>]
<<case 1>>
She congratulates you on coming back for a second class, instructing you to line up with the main class for technique demonstration.<br>
<br>
[<<moveTo "event_gym_class_bjj_2" "Continue." 2700>>]
<<case 2>>
You fall in for another class, taking your place on the wall with the other white belts.<br>
<br>
[<<moveTo "event_gym_class_bjj_3" "Start class." 2700>>]
<<case 3>>
You fall in for another class, taking your place on the wall just past the white belts with the other blues.<br>
<br>
[<<moveTo "event_gym_class_bjj_3" "Start class." 2700>>]
<<default>>
ERROR unknown gym.classes.bjj.level <<=$gym.classes.bjj.level>>
<</switch>>
<</if>>
<</if>>
</div>/*#
#desc: first gym bjj class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gym.classes.bjj.level = 1>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<if !setup.hasThreshold('martial_arts', 'karate', 'karate_first')>>
<<setThreshold 'martial_arts' 'bjj' 'bjj_first'>>
<<else>>
<<setThreshold 'martial_arts' 'bjj' 'bjj_second'>>
<</if>>
<<applyExperience 'martial_arts' 5 'normal' $EXPOSED>>
<<applyExperience 'stamina' 10 'very' $EXPOSED>>
<<applyExperience 'strength' 10 'very' $EXPOSED>>
<<applyFatigue 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
<<if $scene.admin_there>>
The size difference between yourself and <<=setup.getNpcName('npc_admin', 'first')>> seems a bit extreme, but <<he npc_admin>> is surprisingly delicate as <<he npc_admin>> helps walk you through fundamental positions and how to maintain posture or apply pressure.<br>
<br>
As much as you learn about technique, what's even more apparent is how good, and how strong <<=setup.getNpcName('npc_admin', 'first')>> is. Unless you do the move perfectly and <<he npc_admin>> sells it on top, <<he npc_admin>> seems completely immovable, hard and strong and... you shake your head and attempt to focus back on the class.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> runs you through the basic principles and positions of BJJ. She is a very adept instructor, adapting techniques to your specific bodytype, but at the same time "rolling" with her is a bit scary, her limbs are like rebar, able to move you around seemingly at whim while always being perfectly balanced and either light as a feather or as immobile as a tonne of broccoli.
<</if>>
<br><br>
You're surprised at how fast the class zips past when you look around to find the regular students breaking into pairs for live-roll sparring. You watch along as <<if $scene.admin_there>><<=setup.getNpcName('npc_admin', 'first')>><<else>><<=setup.getNpcName('npc_martial_arts', 'formal')>><</if>> helps explain what's happening in each of the rolls.<br>
<br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: gym bjj second class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gym.classes.bjj.level = 2>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<applyExperience 'martial_arts' 5 'very' $EXPOSED>>
<<applyExperience 'stamina' 10 'very' $EXPOSED>>
<<applyExperience 'strength' 9 'very' $EXPOSED>>
<<applyFatigue 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
You join the main class, following along with the warm-up and then breaking into pairs to learn the day's technique.<br>
<br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>>, the instructor, directs you away from your friend, instead pairing you up with a woman who's closer to your size.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> pairs you up with a woman who's close to your size.
<</if>>
<br><br>
Your partner is definitely a lot better than you are, moving with ease while you feel a bit like a turtle flailing on its back. Fortunately she's friendly and helpful, pointing out some smaller details that you missed in the main demo even as you can tell that your application of the move only works because she's letting you.<br>
<br>
Flipping roles, you go from feeling safe to being on the bottom getting strangled without quite knowing what happened in the brief intervening time. Her technique is so much faster and cleaner than yours it's practically magic.<br>
<br>
<<if setup.getTotalValue("stamina") < 10 || setup.getTotalValue("strength") < 10>>
You lack the combination of strength and stamina to effectively last through the class, by the end you're barely vertical, your entire body sore.<br>
<br>
"@@.npc_martial_arts;I admire your gumption, but you might want to work on your basic fitness foundations if you want to see real progress.@@"
<<else>>
You tough out class but opt to sit out sparring, standing on the side and watching as the other students set to work beating the crap out of each other.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: gym bjj nth class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<applyExperience 'martial_arts' 10 'skip' $EXPOSED>>
<<applyExperience 'stamina' 10 'very' $EXPOSED>>
<<applyExperience 'strength' 10 'very' $EXPOSED>>
<<applyFatigue 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
The class starts out with a quick warm-up and then on to technique drilling and then live, full-contact sparring.<br>
<br>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
You have a nigh endless gas tank, able to focus all of your attention on repeatedly drilling the move of the day without ever tiring in the slightest.
<<else>>
While you can't be reckless with your energy, you have plenty of stamina to make it through class without difficulty.
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
The warm-up alone would be a workout and you barely learn anything in the class proper, focused just on surviving to the end.
<<else>>
You're puffing and wheezing before warm-up is even finished, barely able to focus enough on the remainder of the class as you struggle just to breathe.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
You're easily one of the strongest participants in sparring, neutralising your opponent's raw power so that it becomes more of chess match of technique.
<<else>>
You're strong enough not to get easily tossed around, able to focus on applying technique rather than having people muscle through you.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
When it comes to sparring you find your efforts stymied by the fact that you're just too weak compared to your opponents. Occasionally you can hit the perfect angle to maximize your leverage but, in general, you're just rag-dolled by whoever you square off with.
<<else>>
When it comes time for full-contact sparring you find yourself getting crushed and submitted regardless of technique, your body just too weak to keep your opponent from imposing their will.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
You're a tough out for all but the larger, most experienced grapplers, slipping out of holds and coming up on top in scrambles while snatching subs with perfect, inescapable precision.
<<else>>
Cross-training in karate is really paying off as you find yourself far more balanced on the feet as you use quick footwork to pass and then deploy your rapidly improving ground game to close things out.
<</if>>
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
You were just starting to get the hang of hand to hand combat, but some of the habits you've picked up in karate have you pausing or hesitate as you remember not to shoot for a grip quite THAT hard or spastically get back to your feet after getting dumped.
<<else>>
You could be going to a bongo class for all the time your hands spend tapping. Any illusions you had that grappling was simple are long banished and you try to just survive and pick up a trick here or there as you work against the other, more experienced students.
<</if>>
<</if>>
<br><br>
<<if $scene.admin_there>>
<<=setup.getNpcName('npc_admin', 'first')>> congratulates you on your progress, watching your final roll and giving you a bit of coaching help that lets you manage to come out on top of things.
<<else>>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> catches you after class and congratulates you on your continued improvement. "@@.npc_martial_arts;You get better by doing, keep on showing up and you'll be tapping people out before you know it!@@"
<</if>>
<br><br>
<<if State.hasPlayed('event_tournament_signup') && $scene.admin_there>>
You've finished bowing out for class when <<=setup.getNpcName('npc_admin', 'first')>> comes up to you bearing <<his npc_admin>> trademark grin.<br>
<br>
<<if $npc_admin.flags.private_training > 0>>
"@@.npc_admin;Lookin' good! You're a natural at this stuff AND you managed to avoid the blue belt vanishing act! Anyway, I was wondering if you wanted to get in some extra training one on one? I'd love to drill some of this week's techniques a few more times with a partner. I'm sure we can find a spare private room to practice in.@@"
<<else>>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>. You wanna grab a private room and put in a few more rounds and make sure we have today's technique really down?@@"
<</if>>
<br><br>
[<<moveTo "event_martial_training_pair_1" "Say sure." 1800 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_martial_training_pair_1" "Not today." 60 "<<set $scene.accept = false>>">>]
<<else>>
As you finish class you notice the advertisement for the martial arts tournament.<br>
<br>
<<if setup.hasThreshold('martial_arts', 'martial_arts', 'mma')>>
<<if $npc_admin.flags.tournament >= 6>>
[@@.link_locked;You have won the martial arts tournament.@@]<br>
<<else>>
[<<moveTo "event_tournament_signup" "Examine the advertisement for the martial arts tournament." 60>>]<br>
<</if>>
[<<moveTo "event_martial_training_private_0" 'Ask <<=setup.getNpcName("npc_martial_arts", "formal")>> about a private lesson.' 60>>]<br>
<</if>>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
<</if>>
</div>/*#
#desc: gym martial arts promotion — spar with admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<applyExperience 'martial_arts' 10 'unbelievable' $EXPOSED>>
<<applyFatigue 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_admin.flags.evil==0 && $scene.admin_there>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_admin","npc_admin_gi")>>
<<else>>
<<createAdvBGR "./images/locations/gym_dojo.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.evil == 0 && $scene.admin_there>>
Given <<his npc_admin>> massive experience, height and weight advantage starting on the feet with <<=setup.getNpcName('npc_admin', 'first')>> is a bit of a recipe for disaster, but you actually manage to keep your wits about you, dodging in and out as you search for an opening.<br>
<br>
You aren't perfect, and even with <<him npc_admin>> pulling <<his npc_admin>> strikes you take a body-kick that might have bruised a rib even THROUGH your block, but finally you spot an opportunity, "baiting" <<him npc_admin>> forward before rushing in, stifling <<his npc_admin>> kick and hitting something resembling a trip on <<his npc_admin>> remaining leg to take it to the ground.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> may not be as adept at groundwork as <<he npc_admin>> is on the feet, but <<he npc_admin>>'s still better than you, as well as able to bench you off with one hand. Just as on the feet <<he npc_admin>> goes hard, but giving you just enough openings to let you work as you seek to keep <<his npc_admin>> weight off of you and eventually manage to scramble on top, sliding into a high mount just as <<=setup.getNpcName('npc_martial_arts', 'formal')>> calls time.<br>
<br>
"@@.npc_admin;Good spar!@@" <<He npc_admin>> states with a smile, casually standing up without even pushing you off as you turn towards your next opponent — a student who is thankfully in your weight class<<if !$npc_admin.fem>> rather than something like double such<</if>>.
<<else>>
Given the <<man>>'s massive experience, height and weight advantage starting on the feet with your opponent is a bit of a recipe for disaster, but you actually manage to keep your wits about you, dodging in and out as you search for an opening.<br>
<br>
You aren't perfect, and even with <<him>> pulling <<his>> strikes you take a body-kick that might have bruised a rib even THROUGH your block, but finally you spot an opportunity, "baiting" <<him>> forward before rushing in, stifling <<his>> kick and hitting something resembling a trip on <<his>> remaining leg to take it to the ground.<br>
<br>
It seems the <<man>> is not quite as adept at groundwork as <<he>> is on the feet, but <<he>>'s still better than you... as well as able to bench you off with one hand. Just as on the feet <<he>> goes hard, but giving you just enough openings to let you work as you seek to keep <<his>> weight off of you and eventually manage to scramble on top, sliding into a high mount just as <<=setup.getNpcName('npc_martial_arts', 'formal')>> calls time.<br>
<br>
"@@.generic_male1;Good spar!@@" <<He>> states with a smile, casually standing up without even pushing you off as you turn towards your next opponent — a student who is thankfully in your weight class<<if !$npc_admin.fem>> rather than something like double such<</if>>.
<</if>>
<br><br>
[<<moveTo "event_martial_arts_promotion_2" "Round 2..." 60>>]
</div>/*#
#desc: gym martial arts promotion - spar with students
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'martial_arts' 7 'terrible' $EXPOSED>>
<<applyFatigue 25>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png">>
<div id="invframe" class="scrolltext">
Riding an adrenaline high from your <<if $npc_admin.flags.evil==0>>match-up with <<=setup.getNpcName('npc_admin', 'first')>><<else>>first match<</if>> you actually manage to win the next match, double jabbing your way into a clinch and taking it straight to the ground where you lock in a tight choke.<br>
<br>
Your next round goes significantly worse as you are systematically out pointed on the feet without ever touching the mat.<br>
<br>
Things start to blur as fresh opponents keep cycling in, after a while you're on pure defence, trying to circle and parry and throw just enough strikes to keep your opponent honest on the feet while searching for safe positions to rest whenever it hits the ground.<br>
<br>
Of course such a tactic has risks of its own and you eat quite a few hard shots, as well as do your share of tapping as the "class" rolls forward until you find yourself facing off with <<=setup.getNpcName('npc_martial_arts', 'formal')>>, the rest of the class circling around to watch.<br>
<br>
[<<moveTo "event_martial_arts_promotion_3" "Final round!" 60>>]
</div>/*#
#desc: gym martial arts promotion - spar with instructor
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'martial_arts' 'martial_arts' 'mma'>>
<<applyFatigue 50>>
<<set $gym.classes.karate.level = 3>>
<<set $gym.classes.bjj.level = 3>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") > 18>>
You may have a lot left to learn in terms of martial arts but one thing you have is cardio, taking a deep breath, and actually smiling as you drop into stance to face off for your match with the instructor.
<<elseif setup.getTotalValue("stamina") < 10>>
You're barely able to stand at this point, your arms hanging heavy as you try to assume a combat stance as you face off with the head instructor.
<<else>>
Despite running rounds for almost the last hour straight, you manage to find your... some large number wind as you drop into stance and get ready for a match with the instructor.
<</if>>
<br><br>
With a smile on her face she nods and gives a little "come on" hand motion to signal the start of the match.<br>
<br>
<<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>>
You previously thought that <<=setup.getNpcName('npc_admin', 'first')>> was your hardest out but, despite lacking <<his npc_admin>> enormous size advantage, <<=setup.getNpcName('npc_martial_arts', 'formal')>> makes you feel even more helpless.
<<else>>
If you thought some of your previous opponents were a challenge, you soon revise your understanding of "levels to this shit," engaging with <<=setup.getNpcName('npc_martial_arts', 'formal')>> is like trying to punch the wind or grapple the ocean.
<</if>>
<br><br>
Applying nigh perfect technique almost faster than you can react, she is always somewhere else by the time you strike back, slipping or parrying everything with ease and then retaliating with a perfect punch or kick that is simultaneously expertly pulled to land like a feather.<br>
<br>
Despite the one-sided "beating," you realise that, from an onlookers perspective, things would actually look impressive, as she lets you come within a hair's breadth of landing while her brushing retaliation makes you look like a juggernaut coming forward through a flurry of blows.<br>
<br>
As if flicking a switch, she moves things to the ground before you can quite realise what's happening as you find yourself practically flying through the air before she slides on top, giving you just enough of an opening to escape as she effortlessly transitions and then sweeps you again.<br>
<br>
<<=setup.getNpcName('npc_martial_arts', 'formal')>> is always in motion and things go back and forth as she effectively choreographs an exciting, even match out of the ether. She even lets you get deep on a couple of submissions only to escape, forcing you to work the entire round and waiting until the waning seconds to go for the finish herself, timing it out perfectly so that you are just about to tap to an inescapable arm-bar when the bell sounds to mark the end.<br>
<br>
Pulling you back to your feet, she half holds you up as the class applauds, <<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>><<=ps(setup.getNpcName('npc_admin', 'first'))>> proud grin in particular drawing your attention as <</if>>you try to catch your breath and calm your racing heart.<br>
<br>
Finishing off, she congratulates you on your dedication, tying a fresh blue belt around your waist and welcoming you to continue training in either class as you make the rounds to shake hands and get congratulations from the other students.<br>
<br>
The class finally over, you stagger back out, occasionally glancing back down at the colour around your waist as if to confirm it's still there.<br>
<br>
As you walk out, you notice a poster that you hadn't seen before — it's advertising some sort of Gym-wide tournament.<br>
<br>
<<printThought "Huh, that sounds interesting.">><br>
<br>
[<<moveTo "event_tournament_signup" "Examine the advertisement for the martial arts tournament." 60>>]<br>
[<<moveTo "room_gym_main" "Finish class and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div><<if setup.hasThreshold('martial_arts', 'martial_arts', 'mma')>>
<<set $scene.belt = "martial_arts_belt_blue">>
<<else>>
<<set $scene.belt = "martial_arts_belt_white">>
<</if>>
<<addItem $scene.belt>>
<<wearItem $scene.belt true>>/*#
#desc: private martial arts training w/admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'martial_arts' 15 'skip' $SEEN_FRIEND>>
<<set $npc_admin.flags.private_training++>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<else>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_gi")>>
<<else>>
<<createAdvBGR "./images/locations/gym_dojo.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You and <<=setup.getNpcName('npc_admin', 'first')>> find an unoccupied side room and spend some time going over technique before doing a bit of sparring.<br>
<br>
Despite the difference in size and strength you're both good enough now to make the bout productive, focusing on getting better more than "winning" until the very end where you both dial it up and cut lose a bit more and you
<<if setup.getTotalValue("martial_arts") >= 20 && setup.getTotalValue("dexterity") >= 20 && setup.getTotalValue("strength") >= 20 && setup.getTotalValue("stamina") >= 20>>
manage to actually win a couple of exchanges.
<<elseif setup.getTotalValue("martial_arts") >= 15 && setup.getTotalValue("dexterity") >= 15 && setup.getTotalValue("strength") >= 15 && setup.getTotalValue("stamina") >= 15>>
manage to nearly hold your own.
<<elseif setup.getTotalValue("martial_arts") >= 13>>
put up a pretty good fight.
<<else>>
struggle to do much of anything against <<him npc_admin>>.
<</if>>
<br><br>
<<if setup.getTotalValue("martial_arts") >= 15 && !$npc_martial_arts.flags.adv_invite>>
After a particularly intense exchange you hear the sound of clapping coming from the doorway and you both look over to find <<=setup.getNpcName('npc_martial_arts', 'formal')>> watching on, looking impressed.<br>
<br>
[<<moveTo "event_martial_training_adv_invite" "See what she has to say." 600>>]
<<elseif ($npc_admin.flags.relationship == 'boyfriend' || $npc_admin.flags.relationship == 'friendswbenefits') && (State.hasPlayed("event_admin_sex_first_4_anal") || State.hasPlayed("event_admin_sex_first_4_vaginal"))>>
<<if random(0,100) < setup.getTotalValue("martial_arts")>>
You manage to catch <<him npc_admin>> with a throw and jump on top of <<him npc_admin>> to find yourself sitting on something very noticeably hard...<br>
<br>
[<<moveTo "event_martial_training_sex_1" 'See if <<he npc_admin>> wants a different sort of "mount."' 600 "<<set $scene.vag=false>>">>]<br>
<<if $player.body_ref.vag>>
<<if setup.checkItemTypeWork("cage") && !setup.isCage()>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set _unlockable = ($npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId))>>
<<if _unlockable>>
[<<moveTo "event_martial_training_sex_1" "Get unlocked and ride <<him npc_admin>> cowgirl..." 600 "<<set $scene.vag=true>>">>]<br>
<<else>>
[@@.link_locked;You are locked in chastity.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_martial_training_sex_1" "Ride <<him npc_admin>> cowgirl!" 600 "<<set $scene.vag=true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_martial_training_sex_1_abort" "Ignore it and keep sparring." 60>>]
<<else>>
You're having a spirited match when you find yourself pinned against a wall...<br>
<br>
[<<moveTo "event_martial_training_sex_wall_1" "Kiss <<him npc_admin>> and invite him to do more." 600 "<<set $scene.vag=false>>">>]<br>
<<if $player.body_ref.vag>>
<<if setup.checkItemTypeWork("cage") && !setup.isCage()>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set _unlockable = ($npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId))>>
<<if _unlockable>>
[<<moveTo "event_martial_training_sex_wall_1" "Kiss <<him npc_admin>> and grind <<his npc_admin>> thigh in invitation for <<him npc_admin>> to unlock some fun." 600 "<<set $scene.vag = true>>">>]<br>
<<else>>
[@@.link_locked;You are locked in chastity.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_martial_training_sex_wall_1" "Kiss <<him npc_admin>> and grind <<his npc_admin>> thigh in invitation." 600 "<<set $scene.vag = true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_martial_training_sex_wall_1_abort" "Ignore it and keep sparring." 60>>]
<</if>>
<<else>>
Both breathing heavy you eventually decide to call it a day.<br>
<br>
"@@.npc_admin;Good stuff, catch you later, <<callPlayer "npc_admin">>!@@" <<He npc_admin>> says before heading off.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 600 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
<</if>>
<<else>>
You tell <<=setup.getNpcName('npc_admin', 'first')>> that you don't feel like doing any paired training today and <<he npc_admin>> says good-bye.<br>
<br>
"@@.npc_admin;Sure thing, <<callPlayer "npc_admin">>! I think I'm going to hit the weights a bit, don't want all this sparring to cost any mass, y'know?@@"<br>
<br>
[<<moveTo "event_martial_training_private_0" 'Ask <<=setup.getNpcName("npc_martial_arts", "formal")>> about a private lesson.' 60>>]<br>
[<<moveTo "room_gym_main" "Change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]<br>
<</if>>
</div>/*#
#desc: martial arts sex w/admin: floor abort
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
Though your heart races you let the moment pass, transitioning to a different position and finishing off the round before the two of you decide to call it a day.<br>
<br>
"@@.npc_admin;Whew, you're getting good!@@" <<he npc_admin>> states with a smile. You grin back as the two of you pack things up and call it a day.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 600 "<<useClothSetPop 'martialartsclass'>><<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: martial arts sex w/admin: floor
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.vag>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<else>>
<<applyExperience 'anal' $npc_admin.penis_size 'terrible' $SEEN_FRIEND>>
<</if>>
<<playerOrgasm>>
<<set $player.timebased.horny = 60>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
Holding the pin for a moment you grin down at <<him npc_admin>> and then send a hand down between <<his npc_admin>> legs to grab hold of <<his npc_admin>> rapidly hardening <<getWordPenis "npc_admin">>.<br>
<br>
"@@.npc_admin;Hey, that's an illegal hold!@@" <<He npc_admin>> jokes as you start stroking <<him npc_admin>>.<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
You lean in for a kiss,
<<case 'friendswbenefits'>>
You grin,
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
replying that you don't see any refs, besides, you believe in training for the street...
<br><br>
<<if $player.body_ref.vag>>
"@@.npc_admin;Street? How about for the range?@@" <<He npc_admin>> states with a grin as <<he npc_admin>> casually lifts you into a reverse cowgirl position.<br>
<br>
You grin, spreading your legs a little wider<<if $scene.removeCage>> as <<he npc_admin>> helps you out of your chastity belt<</if>> and you slide down onto him, rolling your hips and posting
<<else>>
A primal growl escapes <<his npc_admin>> throat "@@.npc_admin;street? You mean alleyway?@@" <<He npc_admin>> jokes as <<he npc_admin>> literally lifts you into mount, <<his npc_admin>> cock pressing between your cheeks as <<he npc_admin>> tears at your pants. You assist in aiming <<him npc_admin>> as you sit back, feeling <<his npc_admin>> glorious <<getWordPenis "npc_admin">> plunge into you as you settle your weight.<br>
<br>
"@@.npc_admin;Oh no, you've claimed mount!@@" <<He npc_admin>> Teases, bucking <<his npc_admin>> hips as if trying to "escape," your body bounces into the air each time before wonderfully slamming down on <<his npc_admin>> <<getWordPenis "npc_admin">>.<br>
<br>
You post
<</if>>
<br><br>
on <<his npc_admin>> <<if $npc_admin.fem>>muscular shoulders<<else>>hard pecs<</if>> as you ride, smiling down as <<he npc_admin>> grins up, <<his npc_admin>> hands
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
struggling to contain your massive breasts
<<case 'large'>>
big enough to handle even your large breasts
<<case 'medium'>>
groping your breasts
<<case 'small'>>
caressing your small breasts
<<case 'none'>>
caressing your chest
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
as you moan that you're about to cum.<br>
<br>
"@@.npc_admin;Cum for me, then, <<callPlayer "npc_admin">>, I'm cumming to...@@"<br>
<br>
<<He npc_admin>> increases <<his npc_admin>> pace and it's all you can do just to hold on, collapsing on top of <<him npc_admin>> as <<he npc_admin>> rolls through, somehow avoiding squishing you to come up on top, a few final thrusts enough to finish you off before <<if $fetish.cum>><<he npc_admin>> spurts deep inside of you and you leak all over yourself<<else>>the both of you cum<</if>>.<br>
<br>
You stare up at <<him npc_admin>> with a dopey smile on your face and <<he npc_admin>> grins <<if $npc_admin.flags.relationship == "boyfriend">>leaning in for another kiss before <</if>>standing up and helping you to your feet.<br>
<br>
You're still a bit weak in the knees from the strong orgasm but you exchange smiles as you fix your clothes and pack things up to leave.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 600 "<<if $scene.vag && $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>><<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: martial arts sex w/admin: wall abort
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
Though your heart races you let the moment pass, reversing <<=setup.getNpcName("npc_admin","first")>> and finishing off the sparring round before the two of you decide to call it a day.<br>
<br>
"@@.npc_admin;Whew, you're getting good!@@" <<he npc_admin>> states with a smile. You grin back as the two of you pack things up and call it a day.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 600 "<<useClothSetPop 'martialartsclass'>><<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: martial arts sex w/admin - wall
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.vag>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<else>>
<<applyExperience 'anal' $npc_admin.penis_size 'terrible' $SEEN_FRIEND>>
<</if>>
<<playerOrgasm>>
<<set $player.timebased.horny = 60>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.vag>>
You straddle <<=setup.getNpcName("npc_admin","first")>> and grind as you lean in for a kiss that quickly becomes something more. Peeling back your clothes,
<<if $scene.removeCage>>
<<=setup.getNpcName("npc_admin","first")>> unlocks your chastity belt,
<<elseif setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName("npc_admin","first")>> lifts your chastity cage out of the way,
<</if>>
<<his npc_admin>> fingers finding you already wet with excitement as <<his npc_admin>> lips roam down your neck.<br>
<br>
<<if $fetish.daddy>>
"@@.pc;Fuck me <<Daddy npc_admin>>,@@"
<<else>>
Pressed up against the wall,
<</if>>
you moan as <<he npc_admin>> lifts your legs, supporting your weight easily as <<he npc_admin>> slides into your waiting hole.<br>
<br>
You gasp as <<he npc_admin>> thrusts up into you, <<his npc_admin>> big, beautiful cock filling you up as <<he npc_admin>> pins you to the wall and lifts you a few centimetres off the ground.
<<else>>
You lean in for a kiss that quickly becomes something more. Pressed up against the wall, you moan as <<he npc_admin>> lifts your legs, supporting your weight easily as <<he npc_admin>> pulls down your pants and slides into your waiting hole.<br>
<br>
You gasp as <<he npc_admin>> thrusts up into you, <<his npc_admin>> big, beautiful cock filling you up as <<he npc_admin>> pins you to the wall and lifts you a few centimetres off the ground.<br>
<br>
<</if>>
You wrap your arms arms around <<his npc_admin>> strong shoulders as <<he npc_admin>> fucks you against the wall, your body rattling with each thrust as you revel in <<his npc_admin>> strength, power, and size.<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
<<He npc_admin>> pulls back slightly, just enough for you to lift your head from <<his npc_admin>> shoulder and come in for a kiss. You let <<him npc_admin>> take all of your weight as you cradle <<his npc_admin>> head in your hands, kissing <<him npc_admin>> passionately and whispering how much you love <<him npc_admin>>.<br>
<br>
"@@.npc_admin;I love you too,@@" <<he npc_admin>> breathlessly replies between thrusts. "@@.npc_admin;Unf, I'm about to cum—@@"<br>
<br>
You squeeze to try and make it even better for <<him npc_admin>>, lustily begging <<him npc_admin>> to cum inside of you as you bounce up and down on <<his npc_admin>> magnificent cock.
<<case 'friendswbenefits'>>
"@@.npc_admin;Fuck, <<callPlayer "npc_admin">>, you feel so fucking good,@@" <<he npc_admin>> gasps in between thrusts. You moan in response, nodding and pressing your face into <<his npc_admin>> traps as you brace for the oncoming orgasm.
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<br><br>
<<He npc_admin>> cums, and then you do as well, the pressure in your <<if $player.body_ref.penis>>prostate<<else>>bum<</if>> unleashed as you mess your gi while <<he npc_admin>> leans against the wall for support.<br>
<br>
Your legs drop to the ground and you find your feet, kissing <<him npc_admin>> some more before the two of you finally separate.<br>
<br>
"@@.npc_admin;Whew! Now that's what I call some hard training!@@" <<he npc_admin>> jokes. You roll your eyes and reach in for another kiss before the two of you pack it up and head out.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 600 "<<if $scene.vag && $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>><<useClothSetPop 'martialartsclass'>><<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: invited for adv martial arts training
#status: RELEASED 0.8.8.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_martial_arts.flags.adv_invite = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_gi") setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_admin', 'first')>> pause your sparing to ask <<=setup.getNpcName('npc_martial_arts', 'formal')>> if something is the matter.<br>
<br>
"@@.npc_martial_arts;No, no... quite the opposite, in fact. The two of you are looking very good and I was just thinking of a tournament that's run between schools in the area... one of the events is pairs competitions. The divisions are calculated by combined weight and... I think your unique combination could make for some interesting match-ups, given your established skill. That said, well... <<=$player.first_name>> could probably use some training with someone a bit closer to their size. Look me up on a weekend sometime if you would like to take a private lesson.@@"<br>
<br>
You thank her for the offer and she departs. Once she is out of the room <<=setup.getNpcName('npc_admin', 'first')>> glad-hands you on the back. "@@.npc_admin;Hey, that's great, <<callPlayer "npc_admin">>, she's really particular about who she does privates with, if she thinks you're ready for that well... A) it means you're damn good and B) if you accept it... you're going to get even better, fast.@@"<br>
<br>
You reply you'll think about it as the two of you pack it in for the day.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 600 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: approach about private martial arts class
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_martial_arts', 'formal')>> about her offer of a private lesson.<br>
<br>
"@@.npc_martial_arts;Sure,@@" She says with a smile. "@@.npc_martial_arts;One hour, one hundred credits, cash. You up for it?@@"<br>
<br>
<<if $player.money.total < 100>>
[@@.link_locked;You do not have enough credits.@@]<br>
<<elseif setup.hasThreshold('martial_arts', 'martial_arts', 'master')>>
[<<moveTo "event_martial_training_private_2" "Hand her the money." 3600>>]<br>
<<else>>
[<<moveTo "event_martial_training_private_1_1" "Hand her the money." 600>>]<br>
<</if>>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: first private weekend martial arts class intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -100>>
<<removeEverythingButUnderwear>>
<<addItem 'gi_pink'>>
<<wearItem 'gi_pink' true>>
<<include "martialArtsBelt">>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
You get changed into your gi and join <<=setup.getNpcName('npc_martial_arts', 'formal')>> in a private room to train. She starts out by listing off the various "holes" she has noticed in your game with a degree of accuracy that almost shocks you. From there she lays out a plan and then launches two related issues, showing you a new technique, then having you drill before switching to situational sparring.<br>
<br>
[<<moveTo "event_martial_training_private_1_2" "Continue." 1800>>]
</div>/*#
#desc: first private weekend martial arts class
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'martial_arts' 20 'skip' $SEEN_FRIEND>>
<<applyFatigue 100>>
<<setThreshold 'martial_arts' 'martial_arts' 'master'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_martial_arts', 'formal')>> slowly ramps up the resistance as you drill the new moves before concluding in a close-to-full-speed sparring session that shows you exactly how far you have to go to REALLY be able to apply things.<br>
<br>
She never once seems to come close to breathing hard, offering tips and adjustments in between directly showing the holes in your applied technique. The hour ends up passing remarkably fast, leaving you with a feeling of accomplishment, as well as an understanding of just how much more you have to learn.<br>
<br>
"@@.npc_martial_arts;Good job,@@" she states, standing over you after a quick throw as you try to catch your breath. "@@.npc_martial_arts;That should give you plenty to focus on until next time.@@"<br>
<br>
[<<moveTo "room_gym_main" "Finish up and change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: private weekend martial arts class repeat
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'martial_arts' 20 'skip' $SEEN_FRIEND>>
<<removeEverythingButUnderwear>>
<<addItem 'gi_pink'>>
<<wearItem 'gi_pink' true>>
<<include "martialArtsBelt">>
<<applyFatigue 60>>
<<addCredits -100>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
You join <<=setup.getNpcName('npc_martial_arts', 'formal')>> for another private lesson.<br>
<br>
As skilled a teacher as she is a fighter she helps refine your technique, showing you the invisible details to help you better maintain control, slip punches, land strikes and finish submissions.<br>
<br>
You take your licks in the process, but even though you're tired at the end of the lesson you're also satisfied and proud of your developing skills.<br>
<br>
<<if State.hasPlayed("event_tournament_win_1")>>
"@@.npc_martial_arts;Well done... though what else would I expect from a tournament champ? Still, one must always keep their skills sharp.@@"<br>
<br>
You exchange bows and you thank her for the practice.
<<else>>
<<if setup.getTotalValue("martial_arts") >= 19>>
"@@.npc_martial_arts;Good job, today.@@" She states, the compliment filling you with pride, even as you try to catch your breath from the hard spar. "@@.npc_martial_arts;I think you might have a shot at winning the tournament.@@"
<<else>>
"@@.npc_martial_arts;You're coming along well, but I think you need a bit more practice if you hope to win the tournament.@@" She states.
<</if>>
<br><br>
You think about the suggestion as you finish up.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Change back into workout clothes." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: gym yoga class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.skip_yoga = false>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $scene.class = $gym.classes.yoga.level_fem>>
<<else>>
<<set $scene.class = $gym.classes.yoga.level_male>>
<</if>>
<<switch $scene.class>>
<<case 1>>
<<if setup.getTotalValue("dexterity") < 5>>
<<set $scene.skip_yoga = true>>
<</if>>
<<case 2>>
<<if setup.getTotalValue("dexterity") < 8>>
<<set $scene.skip_yoga = true>>
<</if>>
<<case 3>>
<<if setup.getTotalValue("dexterity") < 10>>
<<set $scene.skip_yoga = true>>
<</if>>
<<case 4>>
<<if setup.getTotalValue("dexterity") < 12 || !($player.virgin.anal || $fetish.pegging_is_anal && $player.virgin.pegged)>>
<<set $scene.skip_yoga = true>>
<</if>>
<<case 5>>
<<set $scene.skip_yoga = $scene.yoga || random(1,10) <= 6>>
<<if !$scene.skip_yoga>>
<<set $now to setup.advanceDate($player, $now, "minutes", 30)>>
<<set $scene.exStayafter = $npc_exgirlfriend.flags.evil != 1 && ($npc_exgirlfriend.flags.bondage_machine.talked || $npc_exgirlfriend.flags.sexclub.peg_talk || $npc_exgirlfriend.flags.knowTruth >= 2) && (!State.hasPlayed("event_exgirlfriend_intro_date_1") || random(1,5) == 2 && !State.hasPlayed("event_exgirlfriend_intro_date_5"))>>
<</if>>
<</switch>>
/* this is to prevent speeding through one class' content in the same visit */
<<if $scene.hasOwnProperty('yoga') && $scene.yoga || State.hasPlayed("event_destroy_exgirlfriend_meetup_3")>>
<<set $scene.skip_yoga = true>>
<</if>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<if $gym.classes.yoga.level_fem == 0>>
<<set $gym.classes.yoga.level_fem = 1>>
<</if>>
<<else>>
<<if $gym.classes.yoga.level_male == 0>>
<<set $gym.classes.yoga.level_male = 1>>
<</if>>
<</if>>
<<if $scene.skip_yoga>>
<<set $now to setup.advanceDate($player, $now, "minutes", 30)>>
<<set $scene.exercise += 1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<applyStress -5>>
<<applyExperience 'dexterity' 20 'skip' $EXPOSED>>
<<applyFatigue 30>>
<</if>>
<<set $scene.yoga = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png">>
<div id="invframe" class="scrolltext">
<<if $scene.skip_yoga>>
You attend another yoga class, this time it's taught by an instructor you do not recognise rather than <<=setup.getNpcName('npc_yogateacher', 'first')>>.<br>
<br>
<<if setup.getTotalValue("dexterity") >= 9 && !setup.hasThreshold('dexterity', 'other', 'yoga')>>
[<<moveTo "event_gym_class_yoga_dex" "Enjoy the class." 1800>>]
<<else>>
You flow through the poses without much difficulty, by the end you're feeling quite a bit more relaxed, your body having definitely gotten more limber since you started coming to these.<br>
<br>
<<if $scene.class > 4>>
[<<moveTo "event_yoga_ask" "Ask about additional instruction." 60>>]<br>
<</if>>
[<<moveTo "room_gym_main" "Class is over, do something else." 60>>]<br>
<</if>>
<<else>>
As you're waiting for class to start, you watch other students trickle in.<br>
<br>
The student body looks almost entirely feminine; attractive women of all shapes and sizes in tight yoga pants and chic tops.<br>
<br>
<<switch $scene.class>>
<<case 0>>
<<if $gym.classes.yoga.level_fem == 0 || $gym.classes.yoga.level_male == 0>>
A few minutes later the instructor arrives and you have to keep from letting your jaw drop as you recognise <<=setup.getNpcName('npc_yogateacher', 'first')>>! The yoga teacher who you caught sleeping with your now ex-girlfriend!<br>
<br>
<<printThought "Shit, I didn't realise <<he npc_yogateacher>> taught yoga at THIS gym...">>
<<else>>
A few minutes later <<=setup.getNpcName('npc_yogateacher', 'first')>> shows up to teach the class...
<</if>>
<br><br>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female" && !$npc_yogateacher.flags.reactnamechange>>
You look away, but <<he npc_yogateacher>> doesn't seem to recognise you at all, walking directly past to the front of the room, greeting everyone before starting in on the first pose.<br>
<br>
<<printThought "Well, I guess I do look pretty different now...">>
<<else>>
<<He npc_yogateacher>> has to have recognised you, but all <<he npc_yogateacher>> does is stop and stare for a moment before proceeding to the front of the class to greet everyone and start in on the first pose.<br>
<br>
<<printThought "This is really weird...">>
<</if>>
<br><br>
[<<moveTo "room_gym_main" "This is too strange, cut out of the class." 60>>]<br>
[<<moveTo "event_gym_class_yoga_1" "Try to assume the first position." 600>>]
<<case 1>>
You find yourself back in the gym yoga class. The students who have arrived ahead of you are busy chatting or limbering up, but it isn't long before <<=setup.getNpcName('npc_yogateacher', 'first')>> appears and walks to the front of the room to get started.<br>
<br>
<<printThought "Hmm, looks like <<hes npc_yogateacher>> the primary yoga instructor here.">><br>
<br>
<<He npc_yogateacher>> hasn't seemed to acknowledge your presence, but still, it's kind of weird to go to a yoga class taught by the <<if $npc_yogateacher.fem>>girl<<else>>dude<</if>> that fucked your girlfriend and led to you breaking up, right?<br>
<br>
[<<moveTo "room_gym_main" "Yeah, this is too strange, leave." 60>>]<br>
[<<moveTo "event_gym_class_yoga_1" "Ignore the oddness of the situation and assume the first position." 600>>]
<<case 2>>
You're back in the yoga class, finding a free spot just in time as you've barely rolled out a mat when <<=setup.getNpcName('npc_yogateacher', 'first')>> walks in, heading for the front of the room.<br>
<br>
<<printThought "This is still kind of weird, what with <<him npc_yogateacher>> fucking my girlfriend and all but... the last class went fine, and <<he npc_yogateacher>> IS a good teacher...">><br>
<br>
[<<moveTo "room_gym_main" "On second thought, maybe this is a bad idea." 60>>]<br>
[<<moveTo "event_gym_class_yoga_2" "<<Hes npc_yogateacher>> here to teach, you're here to learn, no reason you can't both be professionals." 600>>]
<<case 3>>
You walk in a few minutes late for <<=ps(setup.getNpcName('npc_yogateacher', 'formal'))>> yoga class, but <<he npc_yogateacher>> just waves in friendly greeting and continues on as you hurry into the first position.<br>
<br>
As you move into a stretch that has you looking forward, you have a sudden realisation — <<=setup.getNpcName('npc_exgirlfriend', 'first')>> is in the front row!<br>
<br>
[<<moveTo "room_gym_main" "Get out of here before she notices you." 60>>]<br>
[<<moveTo "event_gym_class_yoga_3" "Just try to relax and focus on the class." 600>>]
<<default>>
You take your place for another of <<=ps(setup.getNpcName('npc_yogateacher', 'formal'))>> yoga classes.<br>
<br>
As usual, you get a flutter of nerves seeing <<him npc_yogateacher>> walk in. <<if $scene.exStayafter>><<=setup.getNpcName('npc_exgirlfriend', 'first')>> is in class as well... though that's hardly the concern that it might have once been<<else>>At least it doesn't look like <<=setup.getNpcName('npc_exgirlfriend', 'first')>> is around this time to make for a further distraction<</if>>.<br>
<br>
[<<moveTo "room_gym_main" "This is still weird, I should go." 60>>]<br>
[<<moveTo "event_gym_class_yoga_4" "Enjoy the class." 600>>]
<</switch>>
<</if>>
</div>/*#
#desc: stay for first yoga class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise += 1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $gym.classes.yoga.level_fem = 2>>
<<else>>
<<set $gym.classes.yoga.level_male = 2>>
<</if>>
<<applyStress -1>>
<<set _dexLvl = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexLvl 'normal' $EXPOSED>>
<<setThreshold 'dexterity' 'other' 'yoga_first'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
It's a little weird to be in a class taught by the <<guy npc_yogateacher>> who you last saw fucking your girlfriend<<if setup.analyzeWornTags(['female','male','unisex']) == "female">> without <<him npc_yogateacher>> recognising you<</if>> but... you soon realise that <<hes npc_yogateacher>> actually a REALLY good instructor.<br>
<br>
Very calm and patient, <<he npc_yogateacher>> has a somewhat weird, laid back attitude, but <<he npc_yogateacher>> seems almost preternaturally skilled at noticing when someone is struggling, knowing just what to say to tweak the position to work better for their bodytype and experience level.<br>
<br>
To your slight surprise, you seem to have a bit of a knack for yoga, managing the simpler forms of each position with only a few words of correction.
<<if setup.analyzeWornTags(['female','male','unisex']) == "female" && !$npc_yogateacher.flags.reactnamechange>>
Your heart races whenever <<he npc_yogateacher>> walks past, even moreso when <<he npc_yogateacher>> congratulates you on your performance. Fortunately that's as close as <<he npc_yogateacher>> gets, though you notice that <<he npc_yogateacher>> is quite... touchy with some of the other students, using <<his npc_yogateacher>> hands to gently correct their posture, neither <<he npc_yogateacher>> nor the students seeming concerned if in doing so <<he npc_yogateacher>> is palming their butt or cupping their breast.
<<else>>
Despite the fact that <<he npc_yogateacher>> must recognise you, <<he npc_yogateacher>> doesn't seem to really acknowledge you. Not in a rude way, <<he npc_yogateacher>> just moves past you as <<he npc_yogateacher>> helps other students. <<He npc_yogateacher>> only once points out something you were doing wrong, but <<he npc_yogateacher>> does so in the context of addressing the entire class rather than you directly so it's always possible someone else was making the same error.
<</if>>
<br><br>
Though the class was definitely weird, and a little stressful, you find you feel... kind of relaxed? Stiffness and tension you didn't even know you had no longer bothering you fade away as you finish off the final "cooldown" sequence. Thanking everyone for coming, <<hes npc_yogateacher>> soon chatting it up with several other students, giving you a good opportunity to slip out.<br>
<br>
[<<moveTo "room_gym_main" "Finish class." 180>>]
</div>/*#
#desc: stay for second yoga class (touchy/chatty teacher)
#status: FINISHED 0.7.0.0
#ignore_spell: mo'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $gym.classes.yoga.level_fem = 3>>
<<else>>
<<set $gym.classes.yoga.level_male = 3>>
<</if>>
<<applyStress -2>>
<<set _dexLvl = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexLvl 'normal' $EXPOSED>>
<<applyFatigue 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<if !$npc_yogateacher.flags.reactnamechange>>
<<He npc_yogateacher>> still doesn't seem to recognise you as the dude whose girlfriend <<he npc_yogateacher>> stole, teaching the class with <<his npc_yogateacher>> usual laid back, but prescient skill.
<</if>>
<br><br>
You run through some basic stretching and balance positions, once again discovering that you're actually quite a bit more flexible than you realised.<br>
<br>
It's when you're in downward facing dog that <<he npc_yogateacher>> walks past, casually reaching under your hips to raise you higher, <<his npc_yogateacher>> hand mere centimetres from your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>!<br>
<br>
"@@.npc_yogateacher;Mo' bend, mon, legs straight, hips toward the sky, no, higher, neutral spine, look at your feet... that's it, beautiful.@@"<br>
<br>
You're almost frozen in fear as <<he npc_yogateacher>> adjusts your body, yet <<his npc_yogateacher>> tweaks help, you suddenly feel more comfortable, some of the stress of your recent life dissipating as <<he npc_yogateacher>>... wait, did <<he npc_yogateacher>> just grab your butt?<br>
<br>
You don't have time to react before <<hes npc_yogateacher>> on to the next student. You follow along with the rest of the class on confused autopilot.
<<else>>
You're certain <<he npc_yogateacher>> recognises you, but <<he npc_yogateacher>> starts the class without comment, launching into some basic stretches before guiding you all through different poses, being careful to point out simpler variations for the novices, though you are surprised to discover you have a bit of a knack, already able to do a few of the intermediate versions.<br>
<br>
You're in cobra pose when <<he npc_yogateacher>> finally comes close to you, casually kneeling down as if <<hes npc_yogateacher>> helping tweak your position.<br>
<br>
"@@.npc_yogateacher;So I never really got a chance to say anything before, but since you returned for a second class I figure maybe you're moving on? That's good, holding on to grudges is bad energy, mon, and truthfully, I never meant you harm.@@"<br>
<br>
You don't have the first clue of how to respond, settling on just staring straight ahead as you arch further into the position.<br>
<br>
"@@.npc_yogateacher;<<=setup.getNpcName('npc_exgirlfriend', 'first')>> has actually told me more about you and, well, you seem like a good guy, just a little pent up, but hey, yoga is great for that, mon! Speaking of, you're really doing good, your body definitely seems like it was meant to be... flexible.@@"<br>
<br>
<<printThought "Wait... did <<he npc_yogateacher>> just hit on me?">><br>
<br>
<<He npc_yogateacher>> walks away before you can respond, the class ending soon after and <<he npc_yogateacher>> is soon swarmed by other students asking questions.
<</if>>
<br><br>
Feeling relaxed confused and a little aroused all at the same time you hurry out of the classroom.<br>
<br>
[<<moveTo "room_gym_main" "Finish class." 60>>]
</div>
/* TODOfuture: this needs an additional variant if you've already "come out" as female to your ex/met her at the fetish club *//*#
#desc: stay for third yoga class (ex gf in class)
#status: FINISHED 0.7.0.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $gym.classes.yoga.level_fem = 4>>
<<else>>
<<set $gym.classes.yoga.level_male = 4>>
<</if>>
<<changeHorny 30>>
<<set _dexLvl = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexLvl 'very' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
The class is chugging along as normal, your body welcoming the relaxing stretch of the various movements until <<he npc_yogateacher>> has the class move into a plow pose.<br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
Shoulders on the mat, butt in the air you don't realise how vulnerable and exposed you are until <<he npc_yogateacher>> suddenly appears above you, gently straightening your spine and pushing your legs further down.<br>
<br>
Bent severely, you're not that far off from performing auto-fellatio<<if setup.checkItemTypeWorn("cage")>>. Well, discounting the fact that your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> makes that extra-impossible<</if>>.<br>
<br>
"@@.npc_yogateacher;Yeah, that's right, just relax into it, feel the stretch, you're looking beautiful...@@"<br>
<br>
Your heart is racing, realising how close you are to being piledriven, and yet if it wasn't for the absorptive power of fabric you might have just dripped pre-cum on your face.<br>
<br>
Fortunately <<he npc_yogateacher>> moves on before you can get any more humiliated... or is it excited? You take a deep breath and eagerly move on to the next, less... sexualized position.
<<else>>
Shoulders on the mat, butt in the air you're deep in focus as you try to relax into the position, apparently missing <<his npc_yogateacher>> instruction to pair off to help one another until suddenly <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> face pops into view above your butt.<br>
<br>
You look up wide-eyed as she smiles and helps fold you up just a little bit more.<br>
<br>
"@@.npc_exgirlfriend;Hey, so, I'll be honest. When <<=setup.getNpcName('npc_yogateacher', 'first')>> said you had showed up for <<his npc_yogateacher>> class I didn't believe it... and then you came back?@@" She smiles, pushing you even further into the stretch. If you weren't wearing clothes, you'd be damn near in position to perform auto-fellatio on yourself...<br>
<br>
"@@.npc_exgirlfriend;Anyway, I'm really happy you're coming out of your shell a bit more, and <<=setup.getNpcName('npc_yogateacher', 'first')>> is seriously like... THE BEST yoga instructor I've ever had.@@"<br>
<br>
"@@.npc_yogateacher;Good, go ahead and switch roles now, remember you aren't trying to force your partner, just support and guide them to better relax into the pose.@@"<br>
<br>
"@@.npc_exgirlfriend;Alright now, my turn!@@" She quips, hopping off of you and getting into position.<br>
<br>
On autopilot, you somehow manage to get up to your knees, feeling self-conscious of every touch as you try to help.<br>
<br>
She's already folded up pretty good, her yoga pants stretched so tight you can tell she's wearing a very narrow g-string. "@@.npc_exgirlfriend;Come on, I think I'm really close to mastering this position...@@"<br>
<br>
You push slightly forcefully as she hums in pleasure only to sense someone next to you and look up to see <<=setup.getNpcName('npc_yogateacher', 'first')>> standing over you. Your heart skips a beat, but if <<he npc_yogateacher>> is bothered by the compromising position you're in, with your ex-, now <<if $npc_yogateacher.fem>>HER<<else>>HIS<</if>> girlfriend, <<he npc_yogateacher>> certainly doesn't show it.<br>
<br>
"@@.npc_yogateacher;No, no, you want to fold your hips, not your spine, here, hold her there.@@" <<He npc_yogateacher>> adjusts your hands while assisting as well, the both of you working together to fold <<=setup.getNpcName('npc_exgirlfriend', 'first')>> up even tighter.<br>
<br>
"@@.npc_exgirlfriend;Oh yeah, that feels so much better, you think I'll be ready for the yogic sleep pose soon?@@"<br>
<br>
<<He npc_yogateacher>> grins down at her, "@@.npc_yogateacher;I guess we'll see tonight...@@"<br>
<br>
You can't help but blush, thankful when <<he npc_yogateacher>> calls for the class to reset back to your original mats as you turn away from the intimate exchange, still in disbelief over what you just witnessed.<br>
<br>
<<printThought "How could <<he npc_yogateacher>>—? Are they—? But I—?">><br>
<br>
You try to focus back on the class at hand, but you can't help but find your thoughts drifting back... particularly to what position "yogic sleep pose" is...
<</if>>
<br><br>
The class wraps up without further incident or contact and you pack up your things. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> bounces up to greet <<him npc_yogateacher>> with a hug and a passionate kiss but, strangely, it doesn't bother you like it should. Certainly you feel a twinge of regret for your past, and yet... you shake your head, not wanting to think about it anymore.<br>
<br>
[<<moveTo "room_gym_main" "Finish class." 60>>]
</div>/*#
#desc: dex unlock via yoga
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<set _dexLvl = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexLvl 'terrible' $EXPOSED>>
<<setThreshold 'dexterity' 'other' 'yoga'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png">>
<div id="invframe" class="scrolltext">
Settling in for another yoga class, you find yourself strangely centred, flowing between positions with a fresh ease.<br>
<br>
The instructor seems to notice as well, calling you to the front to demonstrate a move which you do with surprising confidence, grace and ease.<br>
<br>
After class the instructor drops by to congratulate you. "@@.generic_female1;You did great today, I could really see something clicking as you seemed to find your inner balance point.@@"<br>
<br>
You thank her for the class and she walks away.<br>
<br>
[<<moveTo "room_gym_main" "Finish class." 60>>]
</div>/*#
#desc: stay for fourth yoga class (try to pick up yoga teacher) Reclining goddess pose
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<set $gym.classes.yoga.level_fem = 5>>
<<else>>
<<set $gym.classes.yoga.level_male = 5>>
<</if>>
<<set _dexLvl = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexLvl 'very' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if setup.analyzeWornTags(['female','male','unisex']) == "female">>
<<=setup.getNpcName('npc_yogateacher', 'first')>> greets you with a smile as you walk into the classroom, the class commencing a few minutes later with some warm-up stretches and breathing exercises.<br>
<br>
Maybe it's just the slightly lower turnout today, but it seems like <<=setup.getNpcName('npc_yogateacher', 'first')>> is spending an excess of time "helping" you out, <<his npc_yogateacher>> hands roaming tenderly over your body as <<he npc_yogateacher>> assists you in perfecting each position.<br>
<br>
Your heart is pounding in your chest at the confusing feelings <<hes npc_yogateacher>> giving you. Sure, <<hes npc_yogateacher>> the <<guy npc_yogateacher>> who "stole" your ex but... <<hes npc_yogateacher>> also really hot and from how <<hes npc_yogateacher>> acting you would swear <<hes npc_yogateacher>>... into you?<br>
<br>
Finally granted a reprieve when <<he npc_yogateacher>> moves back to the front of the class your heart is racing once more as, with the class assuming a reclining goddess pose, you happen to look at the lovely woman seated in front of you and notice that she has a quite substantial bulge straining within her yoga pants.<br>
<br>
Trying to focus on your breathing, you can't help but watch as <<=setup.getNpcName('npc_yogateacher', 'first')>> re-appears to help the woman, gently opening her knees wider and tucking her feet closer in.<br>
<br>
<<printThought "Wait, there's no way <<he npc_yogateacher>> couldn't have seen that, <<hes npc_yogateacher>>, like, right there!">><br>
<br>
<<if $scene.exStayafter>>
The class wraps up without any further distractions, with some of the students, including <<=setup.getNpcName("npc_exgirlfriend","first")>>, milling around a bit.<br>
<br>
[<<moveTo "event_exgirlfriend_intro_date_1" "Boldly approach your ex." 600 "<<set $scene.bold=true>>">>]<br>
[<<moveTo "event_exgirlfriend_intro_date_1" "Nervously approach your ex." 600 "<<set $scene.bold=false>>">>]<br>
[<<moveTo "room_gym_main" "Leave." 60>>]
<<else>>
The class wraps up without any further distractions... until you spot <<=setup.getNpcName('npc_yogateacher', 'first')>> walking in your direction with an enticing grin on <<his npc_yogateacher>> face.<br>
<br>
For some reason you're put in mind of the look of absolute joy on <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> face when you stumbled in on her having sex with <<=setup.getNpcName('npc_yogateacher', 'first')>> in the instant before they noticed your presence. Come to think of it, despite your ex's look of shock <<=setup.getNpcName('npc_yogateacher', 'first')>> was surprisingly calm, almost like <<he npc_yogateacher>> was more confused at your and <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> high-octane reaction than in any way upset.<br>
<br>
[<<moveTo "event_gym_class_yoga_4_1" "Stick around and see what <<he npc_yogateacher>> has to say." 60 "<<set $scene.stay=true>>">>]<br>
[<<moveTo "event_gym_class_yoga_4_1" "Hurry away before anything can happen." 60 "<<set $scene.stay=false>>">>]
<</if>>
<<else>>
Another of <<=ps(setup.getNpcName('npc_yogateacher', 'first'))>> surprisingly relaxing yoga classes is humming along until you move into a reclining goddess pose and you happen to look at the woman in front of you.<br>
<br>
Laying on her back with her knees spread gives a quite clear view of her crotch, and the quite substantial bulge in her yoga pants.<br>
<br>
Trying to focus on your breathing, you can't help but watch as <<=setup.getNpcName('npc_yogateacher', 'first')>> re-appears to help the woman, gently opening her knees wider and tucking her feet closer in.<br>
<br>
<<printThought "Wait, there's no way <<he npc_yogateacher>> couldn't have seen that, <<hes npc_yogateacher>>, like, right there!">><br>
<br>
You're on your way out when you happen to glance back to see <<=setup.getNpcName('npc_yogateacher', 'first')>> leaning in for a kiss with the girl who was positioned in front of you, <<=ps(setup.getNpcName('npc_yogateacher', 'first'))>> hand sliding down her back and then under her tight yoga pants.<br>
<br>
<<printThought "Oh, wow! Well, I guess that's none of my business...">><br>
<br>
You quickly hurry out of the room with the rest of the class as <<=setup.getNpcName('npc_yogateacher', 'first')>> and <<his npc_yogateacher>> student continue to make out.<br>
<br>
[<<moveTo "room_gym_main" "Leave." 60>>]
<</if>>
</div>/*#
#desc: option of doing it with yoga teacher, or see him hook up with another futa
#status: FINISHED 0.7.0.0
#ignore_spell: don'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_backroom.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if $scene.stay>>
Walking straight towards you, <<=setup.getNpcName('npc_yogateacher', 'first')>> comes in for a kiss, <<his npc_yogateacher>> hot lips wrapping around your own, <<his npc_yogateacher>> tongue as nimble, lithe, and flexible as the rest of <<his npc_yogateacher>> body as it does a little yoga routine inside your mouth.<br>
<br>
<<if $npc_yogateacher.flags.reactnamechange>>
You balk slightly pulling away and mumbling something about <<=setup.getNpcName('npc_exgirlfriend', 'first')>>.<br>
<br>
<<He npc_yogateacher>> continues to kiss you neck as <<he npc_yogateacher>> whispers a response.<br>
<br>
"@@.npc_yogateacher;Shhh, shhh, shhh. Don' worry mon, she know I'm too much for jus' one woman, and you beautiful now, lemme make things up to you...@@"<br>
<br>
<</if>>
<<His npc_yogateacher>> hands roaming down your back to squeeze your butt <<he npc_yogateacher>> finally pulls back with a grin, leaving you gasping. <<He npc_yogateacher>> looks past your shoulder for a moment before leaning in to whisper in your ear.<br>
<br>
"@@.npc_yogateacher;Whadaya say... feel like inviting a third?@@"<br>
<br>
You look back to where the girl who was in front of you in yoga class is standing with one foot out the door, looking back with naked lust, the previous bulge in her pants now swelling into the VERY obvious shape of a <<getWordPenis false>>.<br>
<br>
<<=setup.getNpcName('npc_yogateacher', 'first')>> kisses your neck. "@@.npc_yogateacher;Come on, mon. It'll be fun.@@"<br>
<br>
[<<moveTo "event_gym_class_yoga_4_2" "Say you want <<him npc_yogateacher>> all to yourself." 60 "<<set $scene.threesome=false>>">>]<br>
[<<moveTo "event_gym_class_yoga_4_2" "Say the more the merrier." 60 "<<set $scene.threesome=true>>">>]
<<else>>
As you're walking out the door, you glance back to see <<=setup.getNpcName('npc_yogateacher', 'first')>> leaning in for a kiss with the girl who was positioned in front of you, <<=ps(setup.getNpcName('npc_yogateacher', 'first'))>> hand sliding down her back and then under her tight yoga pants.<br>
<br>
<<printThought "Oh, wow, well I guess that's none of my business...">><br>
<br>
You quickly hurry out of the room with the rest of the class as <<=setup.getNpcName('npc_yogateacher', 'first')>> and <<his npc_yogateacher>> student continue to make out while drifting towards a private "back" room.<br>
<br>
Just as they're about to disappear <<=setup.getNpcName('npc_yogateacher', 'first')>> catches a glimpse of you and smiles. The two of them are suddenly both looking at you, her licking her lips as <<=setup.getNpcName('npc_yogateacher', 'first')>> waves you over.<br>
<br>
<<printThought "Oh shit, did they just- do I dare?">><br>
<br>
[<<moveTo "event_gym_class_yoga_4_2" "Join them." 60 "<<set $scene.threesome=true>>">>]<br>
[<<moveTo "room_gym_main" "Continue about your business." 60>>]
<</if>>
</div>/*#
#desc: sex with yoga teacher and (possibly) futa student
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_yogateacher.flags.after_class = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_backroom.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if $scene.threesome>>
The three of you head into a backroom, looking to be some sort of small employee lounge with a tv, a couch and some chairs scattered about.<br>
<br>
Smiling at the two of you, <<=setup.getNpcName('npc_yogateacher', 'first')>> rifles through <<his npc_yogateacher>> bag before putting out a couple of pills. Swallowing two <<himself npc_yogateacher>> <<he npc_yogateacher>> offers one each to you and your new friend.<br>
<br>
"@@.npc_yogateacher;Whadaya say, feel like having a bit of extra fun?@@"<br>
<br>
Your cohort grabs a pill and knocks it back as <<=setup.getNpcName('npc_yogateacher', 'first')>> smiles at you and extends <<his npc_yogateacher>> hand.<br>
<br>
[<<moveTo "event_gym_class_yoga_4_3" "YOLO, pop the pill." 60 "<<set $scene.drug=true>>">>]<br>
[<<moveTo "event_gym_class_yoga_4_3" "Decline <<his npc_yogateacher>> offer and do it sober." 60 "<<set $scene.drug=false>>">>]
<<else>>
You pull <<=setup.getNpcName('npc_yogateacher', 'first')>> back in as <<he npc_yogateacher>> smiles.<br>
<br>
"@@.npc_yogateacher;Oh, you don't wanna share? That's fine, I know some students benefit more from... one on one training.@@"<br>
<br>
Scooping you off your feet, <<he npc_yogateacher>> carries you into the back room. It seems to be some sort of employee lounge and <<he npc_yogateacher>> gently deposits you in a sofa before reaching into <<his npc_yogateacher>> bag to pull out some pills.<br>
<br>
Popping two <<himself npc_yogateacher>>, <<his npc_yogateacher>> offers one to you with a grin.<br>
<br>
"@@.npc_yogateacher;Whadaya say, feel like a bit of extra fun?@@"<br>
<br>
[<<moveTo "event_gym_class_yoga_4_3" "YOLO, pop the pill." 60 "<<set $scene.drug=true>>">>]<br>
[<<moveTo "event_gym_class_yoga_4_3" "Decline <<his npc_yogateacher>> offer and do it sober." 60 "<<set $scene.drug=false>>">>]
<</if>>
</div>/*#
#desc: sex with yoga teacher and (possibly) futa student
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drug>>
<<changeHorny 100>>
<<applyExperience 'bimbofication' 10 'normal' $EXPOSED>>
<<setTmpEffect 'drug_horny'>>
<</if>>
<<applyExperience 'anal' $npc_yogateacher.penis_size 'very' $SEEN_STRANGER>>
<<if !$player.sec_style.sex.sex_man && !$npc_yogateacher.fem>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<<elseif !$player.sec_style.sex.sex_woman && $npc_yogateacher.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<<if $scene.threesome>>
<<applyExperience 'penis' 11 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_yogateacher.penis_size 'very' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'penis' 8 'normal' $SEEN_STRANGER>>
<<if $scene.drug>>
<<applyExperience 'oral' $npc_yogateacher.penis_size 'slightly' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_backroom.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if $scene.drug>>
The drug, whatever it is, hits you fast, your horniness ramping off the chart as you suddenly feel more sensitive, the whole world taking on a soft, lusty haze.<br>
<br>
<<if $scene.threesome>>
From the look in their eyes, the other two are just as aroused as you are, <<=setup.getNpcName('npc_yogateacher', 'first')>> whipping out <<his npc_yogateacher>> cock with a look that says "who's first?" <br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
Whether thanks to the drugs or your own aggressively developing slutty nature, you jump on <<his npc_yogateacher>> cock with gusto, grabbing it with both hands as you give it a good slurp.<br>
<br>
A little slower, your fellow girl seems in no interest in missing out, kneeling next to you and nosing her way in for the two of you to "share."
<<else>>
Even drugs aren't enough to overcome your natural shyness so the other girl beats you in to start sucking <<=ps(setup.getNpcName('npc_yogateacher', 'formal'))>> <<getWordPenis "npc_yogateacher">>. It isn't long before you're just too turned on to resist, however, and you soon drop to your knees beside her, pushing in to join in sucking <<him npc_yogateacher>> off.
<</if>>
<br><br>
Like a good pair of sluts you lick and slurp, kissing each other around <<his npc_yogateacher>> cock as your hands slide down.
<<if !setup.checkItemTypeWorn("cage")>>
<<if setup.checkItemTypeTag('legwear', ['yoga'])>>
Groping one another through tight yoga pants you both moan and suck and stroke in a drug-fuelled haze until <<he npc_yogateacher>> pushes you away and takes charge.
<<else>>
You grope her through her tight yoga pants as she returns the favour, one slender hand slipping under your clothes to fondle and stroke.
<</if>>
<<else>>
You stroke her through the thin, straining fabric of her yoga pants as she cups and fondles your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>camel-toe<</if>>.
<</if>>
<br><br>
"@@.npc_yogateacher;You two are too hot.@@" <<He npc_yogateacher>> states, bending you over and pulling down your pants. You gasp, too turned on to be anything other than aroused.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time to fill that hollowness inside of you.@@"<br>
<br>
You start to moan as <<he npc_yogateacher>> presses through the hollow core of your plug, the added girth on top of <<his npc_yogateacher>> sizable saliva-slick <<getWordPenis "npc_yogateacher">> filling you but good.
<<else>>
"@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time for the real thing.@@"<br>
<br>
You start to moan as <<he npc_yogateacher>> slides the plug out of your rear with a pop. Your voice drops half an octave when <<he npc_yogateacher>> replaces it with <<his npc_yogateacher>> sizable <<getWordPenis "npc_yogateacher">>, still slick with saliva.
<</if>>
<<else>>
<<He npc_yogateacher>> fingers you for a few moments, opening up your ass before pressing <<his npc_yogateacher>> saliva-slick <<getWordPenis "npc_yogateacher">> against your hole and pushing inside.
<</if>>
<br><br>
Adjusting to <<his npc_yogateacher>> presence, you look up to find the other girl has repositioned in front of you, laying on her back with legs spread wide as her <<getWordPenis false>> practically bursts out of her pants. Hungrily you dive forward, <<=setup.getNpcName('npc_yogateacher', 'first')>> keeping pace, fucking your ass as you slurp and suck your <<if $fetish.futanari>>futa <</if>>friend.<br>
<br>
The drug's effects only strengthening, you lose track of time, unsure whether it was a few minutes or an hour of taking it in both ends before all three of you cum in unison.<br>
<br>
Gulping <<if setup.getTotalValue("cum") >= 10>>delicious<<else>>salty<</if>> cum as fast as you can, you moan, <<if $player.body_ref.cumProduction>>soaking your pants with your<<else>>pumping your hips in<</if>> excitement.<br>
<br>
The orgasm surfs on a wave of drug-fuelled excitement, so intense that you almost pass out, stars flashing before your eyes as you hold the cock deep in your throat until you have no choice but to pull back and gasp for breath.<br>
<br>
Leaning forward, the girl kisses you passionately, trading her cum back and forth as <<=setup.getNpcName('npc_yogateacher', 'first')>> slides out of your rear<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> and replaces your plug<<else>>, a bit of <<getWordCum true>> leaking down your leg<</if>>.<br>
<br>
The drug seems to fade along with the orgasm, the three of you sharing a hug and thanks before going your separate ways.
<<else>>
Dropping to your knees, you start passionately sucking <<his npc_yogateacher>> cock as soon as it is free of <<his npc_yogateacher>> pants.<br>
<br>
Horny, and high as a kite, all you can think about is cock, and how much you want it inside of you as you noisily suck and slurp. It just isn't enough, however and you've barely got <<him npc_yogateacher>> lubed up with your saliva before you're spinning around, sticking your ass in the air in full downward dog and wiggling it in invitation.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
Pulling your clothes aside, <<he npc_yogateacher>> fingers your plug
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
and <<he npc_yogateacher>> checks the gaping hollow centre. "@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time to fill that hollowness inside of you.@@"<br>
<br>
You start to moan as <<he npc_yogateacher>> presses through the hollow core of your plug, the added girth on top of <<his npc_yogateacher>> sizable saliva-slick <<getWordPenis "npc_yogateacher">> filling you but good.
<<else>>
as <<he npc_yogateacher>> gets a good grasp around the base.<br>
<br>
"@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time for the real thing.@@"<br>
<br>
You start to moan as <<he npc_yogateacher>> slides the plug out of your rear with a pop. Your voice drops half an octave when <<he npc_yogateacher>> replaces it with <<his npc_yogateacher>> sizable <<getWordPenis "npc_yogateacher">>, still slick with saliva.
<</if>>
<<else>>
Pulling your clothes out of the way <<he npc_yogateacher>> fingers you for a few moments, opening up your ass before pressing <<his npc_yogateacher>> saliva-slick <<getWordPenis "npc_yogateacher">> against your hole and pushing inside.
<</if>>
<br><br>
Riding a high of horniness, adrenaline and who knows what you bounce back and forth as <<he npc_yogateacher>> thrusts into you, each stroke better than the last.<br>
<br>
The drug's effects seem to strengthen with each moment, as if <<he npc_yogateacher>> were pumping more into you and you lose all track of time, unsure whether it was a few minutes or an hour of taking it in both ends before <<he npc_yogateacher>> finally cums.<br>
<br>
<<His npc_yogateacher>> release kicks off an orgasm of your own and you <<if $player.body_ref.cumProduction > 0>>soak your pants<<else>>climax<</if>> as <<he npc_yogateacher>> <<if $fetish.cum>>bestows you with a nice creamy filling<<else>>finishes with a euphoric moan<</if>>.<br>
<br>
"@@.npc_yogateacher;Good girl.@@" <<He npc_yogateacher>> states, giving your ass a friendly squeeze before sliding out<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> and replacing the plug in your rear<<else>>, a bit of <<getWordCum true>> leaking down your leg<</if>>.<br>
<br>
You share a few more kisses as the drugs start to fade, taking a moment to fix your clothes before the both of you go your separate ways.
<</if>>
<<else>>
<<if $scene.threesome>>
<<=setup.getNpcName('npc_yogateacher', 'first')>> shrugs at your declination before popping the pill <<himself npc_yogateacher>>. Whatever was in the pill it seems to hit fast and hard, pushing the already high sexual energy in the room up to eleven as <<he npc_yogateacher>> reaches down to reveal an astoundingly hard <<=setup.getNpcName('npc_yogateacher', 'first')>>.<br>
<br>
Like a cat leaping onto its prey, the other girl jumps face-first onto <<his npc_yogateacher>> cock, sucking and stroking with hungry enthusiasm.<br>
<br>
As she sucks, <<=setup.getNpcName('npc_yogateacher', 'first')>> leans forward to pull you in for a kiss, groping you with one hand as <<he npc_yogateacher>> holds you close. The moments stretch on until the two of you finally break for air and <<he npc_yogateacher>> looks at you with wild-eyed lust. Shooing the other girl away, <<he npc_yogateacher>> bends you over, almost tearing at your clothes to expose your ass.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Reaching for your ass, <<his npc_yogateacher>> fingers find your plug and <<he npc_yogateacher>> checks the gaping hollow centre. "@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time to fill that hollowness inside of you.@@"<br>
<br>
You start to moan as <<he npc_yogateacher>> presses through the hollow core of your plug, the added girth on top of <<his npc_yogateacher>> sizable saliva-slick <<getWordPenis "npc_yogateacher">> filling you but good.
<<else>>
Reaching for your ass, <<his npc_yogateacher>> fingers find your plug and <<he npc_yogateacher>> gets a good grasp around the base.<br>
<br>
"@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time for the real thing.@@"<br>
<br>
You gasp at your sudden emptiness, then moan as <<he npc_yogateacher>> pulls you onto <<his npc_yogateacher>> cock, the saliva-shift shaft sliding into you.
<</if>>
<<else>>
Reaching for your ass <<he npc_yogateacher>> fingers you for a few moments, opening you up before pressing <<his npc_yogateacher>> saliva-slick <<getWordPenis "npc_yogateacher">> against your hole and pushing inside.
<</if>>
<br><br>
You tremble at <<his npc_yogateacher>> aggressive, drug-fuelled entry, only to look forward and find yourself face to face with an equally wild-eyed woman.<br>
<br>
Grabbing you by the hair, she pulls you in for a kiss while <<=setup.getNpcName('npc_yogateacher', 'first')>> continues to fuck you from behind. As delicate as she seemed when you first saw her, she is rough and aggressive, nibbling on your lip and forcing her tongue into your mouth before pulling you back and shoving your face down towards her crotch.<br>
<br>
With one hand entwined through your hair, she pulls down her tight pants with the other, her hard <<getWordPenis false>> slapping you in the face before she guides it between your lips. You gasp and she moans as she thrusts into your throat while you continue to take it from behind.<br>
<br>
Like a piece of swiss cheese in a <<if $fetish.sissy>>sissy<<else>>girly<</if>> sandwich, your holes are soon <<if $fetish.cum>>filled with thick mayo<<else>>home to pleasure<</if>> as the combination of your tight orifices and the drugs have both of them cumming at once, their release met a moment later by you <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>splooging in your pants<<else>>cumming hard<</if>>.<br>
<br>
You're panting for air as she yanks your face free and pulls you in for another kiss, cum and drool leaking down your face as <<=setup.getNpcName('npc_yogateacher', 'first')>> slides out of your ass.<br>
<br>
You wobble a bit, feeling used and dirty, but also... good, <<=setup.getNpcName('npc_yogateacher', 'first')>> having maximised every moment spent in your ass as your <<if $player.body_ref.penis>>prostate<<else>>bum<</if>> still tingles with pleasure<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>, milking your plug as <<he npc_yogateacher>> shoves it back in place<</if>>.<br>
<br>
Shuddering slightly, you watch as your partners come down from their drug-fuelled sexual high, both thanking you before helping clean you up and the three of you going your satisfied separate ways.
<<else>>
<<=setup.getNpcName('npc_yogateacher', 'first')>> shrugs at your declination before popping the pill <<himself npc_yogateacher>>. Leaning in for a kiss, your lips and mouths dance a tango as <<his npc_yogateacher>> arms slide down your body and <<he npc_yogateacher>> grinds against you.<br>
<br>
"@@.npc_yogateacher;Mmm, you feel so sexy, I was watching you all class, imagining how good it would feel to fuck your tight ass...@@"<br>
<br>
<<printThought "Hmm, <<he npc_yogateacher>> really seems to have a thing for anal.">><br>
<br>
You gasp as <<his npc_yogateacher>> lips explore down your neck, your body arching and turning at <<his npc_yogateacher>> direction just as you did in class. Rotating you around and bending you over <<he npc_yogateacher>> grinds against your hips before pulling down your pants to expose your rear.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.npc_yogateacher;Wearing a plug for class? What a sexy girl, but now it's time to fill that hollowness inside of you.@@"<br>
<br>
You start to moan as <<he npc_yogateacher>> presses through the hollow core of your plug, the added girth on top of <<his npc_yogateacher>> sizable saliva-slick <<getWordPenis "npc_yogateacher">> filling you but good.
<<else>>
"@@.npc_yogateacher;Wearing a plug for class? What a good girl, but now it's time for the real thing.@@"<br>
<br>
You gasp at your sudden emptiness when <<he npc_yogateacher>> removes the plug from your rear, then moan as <<he npc_yogateacher>> pulls you onto <<his npc_yogateacher>> cock, the sweat-slick shaft sliding into you with remarkable ease.
<</if>>
<<else>>
Reaching for your ass <<he npc_yogateacher>> fingers you for a few moments, loosening you up before pressing <<his npc_yogateacher>> sweat-slick <<getWordPenis "npc_yogateacher">> against your hole and pushing inside.
<</if>>
<br><br>
"@@.npc_yogateacher;Oh yeah, you feel real good...@@" <<He npc_yogateacher>> whispers in your ear as <<his npc_yogateacher>> hips rock, <<his npc_yogateacher>> cock perfectly angled to stimulate your <<if $player.body_ref.penis>>prostate<<else>>bottom<</if>> and make you tremble with pleasure.<br>
<br>
<<His npc_yogateacher>> breath hot on the back of your neck your sweaty bodies press close, you can tell it won't be long for either of you as <<he npc_yogateacher>> quickens <<his npc_yogateacher>> pace.<br>
<br>
<<He npc_yogateacher>> climaxes with a shudder and you cum <<if $player.body_ref.cumProduction > 0>>in your pants <</if>>a moment later. Holding tight for several long, wonderful moments, <<he npc_yogateacher>> finally slides out<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> nimbly replacing the plug before a single drop of <<his npc_yogateacher>> seed can leak down your leg<<else>>a delicate trickle of <<his npc_yogateacher>> seed escaping down your leg before <<he npc_yogateacher>> pulls up your pants with a snap<</if>>.<br>
<br>
You lean back and share a kiss, feeling <<his npc_yogateacher>> heart slow as <<his npc_yogateacher>> orgasm fades and with it, the effects of the drugs as <<he npc_yogateacher>> seems to soften and calm.<br>
<br>
"@@.npc_yogateacher;You were great.@@" <<He npc_yogateacher>> states and you respond in kind. Kissing you again, <<he npc_yogateacher>> gives you a hug before separating. "@@.npc_yogateacher;As much as I'd love to do you again, I gotta get back to work, catch you later, mon...@@"<br>
<br>
You blush and follow <<him npc_yogateacher>> out of the staff room, the two of you going your separate ways.
<</if>>
<</if>>
<br><br>
<<printThought "Wow... I guess I kind of understand why <<=setup.getNpcName('npc_exgirlfriend', 'first')>> cheated on me, if <<hes npc_yogateacher>> always that good...">><br>
<br>
Back in the main gym area, you try to refocus away from sex, a feat that is a bit of a challenge given the number of fit, sexy people within view.<br>
<br>
[<<moveTo "room_gym_main" "Head out." 60 "<<playerOrgasm>>">>]
</div>/*#
#desc: ask about private yoga lessons
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if $scene.skip_yoga>>
You approach the instructor about additional instruction... and she passes you off to the gym's "head instructor"... <<=setup.getNpcName("npc_yogateacher","first")>>.
<<else>>
You approach <<=setup.getNpcName("npc_yogateacher","first")>> after class and ask if <<he npc_yogateacher>> might have any suggestions for how you could further increase your flexibility and agility.
<</if>>
<br><br>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
"@@.npc_yogateacher;Sorry, I've got another private scheduled in a few minutes, maybe some other time.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif setup.getTotalValue("dexterity") < 14>>
"@@.npc_yogateacher;Just keep coming to class, my friend. I do offer private lessons as well, but I think you can still improve a bit more with just regular attendance and focusing on feeling the stretch.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
<<elseif State.hasPlayed("event_yoga_private_1_2")>>
<<He npc_yogateacher>> smiles at you. "@@.npc_yogateacher;You ready for another private lesson? As before, I warn you that the best results will require... intense effort. And nudity.@@"<br>
<br>
<<if State.hasPlayed("event_yoga_private_2_3")>>
[<<moveTo "event_yoga_private_3_1" "Get naked for your private lesson." 60>>]<br>
<<else>>
[<<moveTo "event_yoga_private_2_1" "Get naked for your private lesson." 60>>]<br>
<</if>>
[<<moveTo "room_gym_main" "Pass on a private and head back to the gym." 120>>]
<<else>>
<<He npc_yogateacher>> smiles at you. "@@.npc_yogateacher;You've come so far since the first time you came to class. You used to be so stiff and rigid! And now... now you're a lithe, limber lynx, but yes, I think we can push things a bit further if you wanted to do some private classes... just know that my lessons can be somewhat... intense.@@"<br>
<br>
[<<moveTo "event_yoga_private_1_1" "Ask for a private lesson." 60 "<<set $scene.lesson = true>>">>]<br>
[<<moveTo "event_yoga_private_1_1" "Say you'll think about it for later." 60 "<<set $scene.lesson = false>>">>]
<</if>>
</div>/*#
#desc: private yoga lessons
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher","npc_yogateacher_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.lesson>>
You agree to take a "private" yoga lesson with <<=setup.getNpcName("npc_yogateacher","first")>> and <<he npc_yogateacher>> smiles, closing the door and casually shedding <<his npc_yogateacher>> clothes as <<he npc_yogateacher>> walks back to the front of the room.<br>
<br>
"@@.npc_yogateacher;To deepen the connection to your body and unlock its full potential you must first be completely free,@@" <<he npc_yogateacher>> explains. "@@.npc_yogateacher;Please, your clothes, they will only get in the way.@@"<br>
<br>
[<<moveTo "event_yoga_private_1_2" "Remove your clothes." 1800>>]<br>
[<<moveTo "event_yoga_private_1_2_abort" "Remain dressed." 60>>]
<<else>>
You thank <<=setup.getNpcName("npc_yogateacher","first")>> for the offer and say you'll keep it in mind.<br>
<br>
"@@.npc_yogateacher;Of course, just let me know any time after class.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
<</if>>
</div>/*#
#desc: strip for first private yoga lesson abort
#status: RELEASED 0.8.8.0
#ignore_spell: dhanurasana,urdhva,virabhadrasana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 8 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher","npc_yogateacher_naked")>>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName("npc_yogateacher","first")>> that you aren't comfortable doing naked yoga...
<<if setup.getTotalValue("penis") > 15>>
After all, how could you focus on anything other than <<his npc_yogateacher>> gorgeous <<getWordPenis "npc_yogateacher">>?<br>
<br>
<<He npc_yogateacher>> chuckles as you realise you said that out loud. "@@.npc_yogateacher;The pleasures of the flesh are quite the reward, but one must compartmentalise. I recommend you focus on meditation, and releasing more energy into the world. Come back when you are ready to properly focus.@@"
<<else>>
<<if setup.getTotalValue("penis") > 10>>
distracted by <<his npc_yogateacher>> gorgeous <<getWordPenis "npc_yogateacher">> the whole time.
<<elseif setup.getTotalValue("penis") > 5>>
trying not to look at <<his npc_yogateacher>> quite impressive <<getWordPenis "npc_yogateacher">>.
<<else>>
trying not to look at <<his npc_yogateacher>> dangling <<getWordPenis "npc_yogateacher">>.
<</if>>
<br><br>
<<He npc_yogateacher>> shrugs. "@@.npc_yogateacher;In that case I do not believe I can help you today. Let me know when you are ready to take your development seriously and cast aside these worldly impediments.@@"
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: strip for first private yoga lesson
#status: RELEASED 0.8.8.0
#ignore_spell: dhanurasana,urdhva,virabhadrasana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'stamina' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'dexterity' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'penis' 8 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher","npc_yogateacher_naked")>>
<div id="invframe" class="scrolltext">
You shed your clothes and <<=setup.getNpcName("npc_yogateacher","first")>> smiles.
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_yogateacher;Focusing on cleansing the earthly mind by way of abstinence?@@" <<He npc_yogateacher>> asks, eyeing your chastity device. You blush and <<he npc_yogateacher>> smiles. "@@.npc_yogateacher;A noble technique, very tantric... though not so much my personal preference. I believe in nurturing passion wherever it is found but if this is working for you... now, since you are already warmed up from class let us get right into things, start with virabhadrasana...@@"
<<else>>
"@@.npc_yogateacher;Very good. Since you are already warmed up from class let us get into things, start with virabhadrasana...@@"
<</if>>
<br><br>
You're soon sweating and breathing harder as <<=setup.getNpcName("npc_yogateacher","first")>> moves you through positions much faster than ever happens in class. The whole time <<he npc_yogateacher>> acts as the perfect model, <<his npc_yogateacher>> toned body showing off perfect balance and astounding flexibility that you can only hope to someday match.<br>
<br>
By the end of the lesson your limbs are trembling but <<he npc_yogateacher>> instructs you into a final Urdhva Dhanurasana, a full bridge. As you try to raise your hips higher to reach <<his npc_yogateacher>> guiding hand your limbs give out and you collapse onto the floor.<br>
<br>
"@@.npc_yogateacher;You have done well... though you still have much to learn. Come back again if you wish to train further, I have some... additional techniques that might prove of assistance.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: 2nd private yoga lesson intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
You join <<=setup.getNpcName("npc_yogateacher","first")>> for another private yoga session and <<he npc_yogateacher>> instructs you to get naked. You quickly shed your clothes even as <<he npc_yogateacher>> makes no movement to remove <<his npc_yogateacher>> own clothing.<br>
<br>
"@@.npc_yogateacher;Today will be less of a cooperative lesson in favour of complete focus on your needs. I noticed last time that you were... distracted by my body. I appreciate the compliment, but as today is about you, I thought I would make it easier for you to focus.@@"<br>
<br>
Even "clothed" <<=setup.getNpcName("npc_yogateacher","first")>> is an eye-catching piece of <<man npc_yogateacher>> but what has your heart really beating faster is when <<he npc_yogateacher>> pulls out a coil of rope.<br>
<br>
"@@.npc_yogateacher;So,@@" <<he npc_yogateacher>> explains as <<he npc_yogateacher>> approaches you and begins tying the rope around your torso. "@@.npc_yogateacher;We are going to use some advanced techniques today to help you really focus on your body by putting you in positions that might be otherwise impossible...@@"<br>
<br>
<<printThought "Wait... is this going to be bondage yoga?">><br>
<br>
[<<moveTo "event_yoga_private_2_2" "Let <<him npc_yogateacher>> bind you." 1800 "<<set $scene.bind = true>>">>]<br>
[<<moveTo "event_yoga_private_2_2" "You don't want to do this." 60 "<<set $scene.bind = false>>">>]
</div>/*#
#desc: bondage yoga
#status: RELEASED 0.8.8.0
#ignore_spell: vrksasana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bind>>
<<addItem "rope_bondage">>
<<wearItem "rope_bondage" true>>
<<applyExperience 'bondage' 16 'normal' $SEEN_FRIEND>>
<<applyExperience 'dexterity' 18 'very' $SEEN_FRIEND>>
<<setThreshold 'bondage' 'other_bondage' 'shibari'>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if $scene.bind>>
You nod in consent and <<he npc_yogateacher>> continues to knot the rope around your body. Though tight, it is surprisingly comfortable and it is not long before <<he npc_yogateacher>> has you strung up in mid-air, your weight fully supported in a sort of suspended vrksasana tree-pose position.<br>
<br>
The addition of the rope allows for a curious combination of stretch and restriction, especially when <<he npc_yogateacher>> begins moving you about, tying you in ways that ride the line between yoga position and predicament bondage, forcing you to trade one stretch for another all while floating effectively helplessly in mid-air.<br>
<br>
Despite your intense vulnerability <<=setup.getNpcName("npc_yogateacher","first")>> remains perfectly professional — using the rope to force you into the most strenuous of positions but never laying so much as a finger in a way that might be considered untoward... it's almost frustrating.<br>
<br>
[<<moveTo "event_yoga_private_2_3" "Continue." 1800>>]
<<else>>
You pull away, explaining that this is more than you were planning on.<br>
<br>
<<He npc_yogateacher>> pauses, rope still in hand and then shrugs and starts removing what few knots <<he npc_yogateacher>> had finished. "@@.npc_yogateacher;You being uncomfortable is quite the wrong mood for progress, but if you are unwilling to properly dedicate yourself to the art I am afraid that I cannot help you. Return some other day if you change your mind and are ready to embrace the surrender of control.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: bondage yoga
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'dexterity' 'other' 'dexterity_meet_prep'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
You're surprised how tired you can get despite most of your movements being "forced" through the pull of the rope but, eventually, after you are hanging exhausted in a pretzel-like bind, <<=setup.getNpcName("npc_yogateacher","first")>> begins to untie you and your feet finally touch earth again.<br>
<br>
"@@.npc_yogateacher;Yes, feel the energy of Gaea flow back into you,@@" <<he npc_yogateacher>> states as you take a deep breath and wait for <<him npc_yogateacher>> to finish removing the remaining ropes.<br>
<br>
You shake life back into your limbs, surprised at how quickly you feel refreshed after the strenuous series of static holds.<br>
<br>
<<He npc_yogateacher>> coils up rope as you get dressed. "@@.npc_yogateacher;Come back again if you would like some additional practice, but you are well on your way to perfection.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<removeItem 'rope_bondage' true>><<deleteItem 'rope_bondage'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: bondage yoga repeat
#status: RELEASED 0.8.8.0
#ignore_spell: dhanurasana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 16 'normal' $SEEN_FRIEND>>
<<applyExperience 'dexterity' 18 'skip' $SEEN_FRIEND>>
<<useClothSetPush 'tmp'>>
<<addItem "rope_bondage">>
<<wearItem "rope_bondage" true>>
<<removeAllClothing>>
<<applyStress -5>>
<<set $scene.rand = random(1,10)>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
Under <<=ps(setup.getNpcName("npc_yogateacher","first"))>> supervision you remove your clothing and are suspended for another cross-cultural "session" of yoga/shibari. The ropes guide you into all manner of extreme poses, heightening your awareness of every part of your body as you are introduced to novel situations entailing limbs linked such that relieving the pressure in one part of your body merely shifts it elsewhere to teach you "balance." <br>
<br>
Your body floats and spins and stretches into all manner of configurations from ones that make you feel surprisingly relaxed and supported to those that are a strain to endure for more than a few moments.<br>
<br>
At the conclusion you are bound face down, arms and legs linked to form a hanging dhanurasana position as <<=setup.getNpcName("npc_yogateacher","first")>> tells you to focus on "@@.npc_yogateacher;Feel your energy circling in, use it, harness it, ignore the forces pulling you in different directions and let all of you come in to you...@@"<br>
<br>
<<if !State.hasPlayed("event_yoga_private_3_2") || $scene.rand == 1>>
You take a deep breath, feeling a moment of quite relaxing peace and then open your eyes to find yourself staring at <<=setup.getNpcName("npc_yogateacher","first")>>... or rather, exactly at eye level with <<his npc_yogateacher>> crotch, the silhouette of the <<getWordPenis "npc_yogateacher">> that destroyed your relationship visible through <<his npc_yogateacher>> tight yoga pants...<br>
<br>
[<<moveTo "event_yoga_private_3_2" "Ask <<him npc_yogateacher>> to fuck you." 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_yoga_private_3_2" "Let the moment pass." 600 "<<set $scene.sex=false>>">>]
<<else>>
The private lesson passes remarkably quickly as <<=setup.getNpcName("npc_yogateacher","first")>> helps you push your body to new limit of flexibility and agility. Even after you finally return to the ground and the bondage has been removed you find yourself feeling light and graceful, as if you could leap and dance through the air at any moment.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 '<<removeItem "rope_bondage" true>><<deleteItem "rope_bondage">><<useClothSetPop "tmp">>'>>]
<</if>>
</div>/*#
#desc: bondage yoga ask sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'penis' 12 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You're almost drooling as you stare at <<his npc_yogateacher>> member and ask <<him npc_yogateacher>> to fuck you.<br>
<br>
"@@.npc_yogateacher;You certain you want this? Yoga is never about force, we should do all things only with enthusiastic interest.@@"<br>
<br>
[<<moveTo "event_yoga_private_3_3" "Yes, you want this." 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_yoga_private_3_3" "On second thought..." 600 "<<set $scene.sex=false>>">>]
<<else>>
You hold your breath and the moment passes, <<=setup.getNpcName("npc_yogateacher","first")>> congratulating you as <<he npc_yogateacher>> efficiently unties your bonds.<br>
<br>
You feel light and strangely energised as you thank <<him npc_yogateacher>>, dress, and depart.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 '<<removeItem "rope_bondage" true>><<deleteItem "rope_bondage">><<useClothSetPop "tmp">>'>>]
<</if>>
</div>/*#
#desc: bondage yoga sex confirm
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'anal' $npc_yogateacher.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'bondage' 16 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You confirm that yes, you want <<him npc_yogateacher>> to fuck you now and <<he npc_yogateacher>> glides behind you, spreading your legs slightly wider as <<he npc_yogateacher>> <<if setup.checkItemTypeTag('plug', ['hollow'])>>slides the plug out of your rear and <</if>>gets into position.<br>
<br>
"@@.npc_yogateacher;Very well — remember what you learned. Sex is about so much more than mere coupling, it is a way to commune with oneself and the universe...@@"<br>
<br>
Slick with sweat <<his npc_yogateacher>> <<getWordPenis "npc_yogateacher">> plunges into your rear and you tremble in your bonds. You can barely move and thus just moan and you swing back and forth on <<his npc_yogateacher>> cock.<br>
<br>
You think <<he npc_yogateacher>> said something about "@@.npc_yogateacher;Embracing the movement of the universe and the pendulum of life,@@" but you're too distracted by how good it feels to have <<his npc_yogateacher>> <<getWordPenis "npc_yogateacher">> inside you sending sparks of joy out from your <<if $player.body_ref.penis>>prostate<<else>>bum<</if>>.<br>
<br>
Your enjoyment is interrupted by the sound of someone at the door.<br>
<br>
"@@.npc_exgirlfriend;What the fuck?@@"<br>
<br>
[<<moveTo "event_yoga_private_3_4" "Oh no..." 600>>]
<<else>>
Thinking about it you have second thoughts, confirming that you were just caught up in the moment.<br>
<br>
"@@.npc_yogateacher;Not a problem, my friend,@@" <<=setup.getNpcName("npc_yogateacher","first")>> confirms you as <<he npc_yogateacher>> efficiently unties your bonds. "@@.npc_yogateacher;The ropes and the movements... they can spark many things.@@"<br>
<br>
You thank <<him npc_yogateacher>> for <<his npc_yogateacher>> understanding, feeling light and strangely energised as you dress and depart.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<removeItem 'rope_bondage' true>><<deleteItem 'rope_bondage'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: bondage yoga ex-gf arrives
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_naked")>>
<div id="invframe" class="scrolltext">
Distracted by the fact that you're STILL swinging back and forth on <<=ps(setup.getNpcName("npc_yogateacher","first"))>> <<getWordPenis "npc_yogateacher">> you try to find words to explain away your situation, somehow stumbling upon "@@.pc;Anal doesn't count?@@"<br>
<br>
You realise that <<=setup.getNpcName("npc_exgirlfriend","first")>> isn't angry, at least not in the way she'd get on the occasion the two of you would fight back when you were dating but, other than rolling her eyes she ignores your response to address her <<boy npc_yogateacher>>friend.<br>
<br>
"@@.npc_exgirlfriend;You know how much I was looking forward to you tying me up, so, like, what the hell?@@"<br>
<br>
<<=setup.getNpcName("npc_yogateacher","first")>> sounds puzzled, but it's nothing compared to your own confusion. "@@.npc_yogateacher;I was teaching a lesson. Besides, I have more rope.@@"<br>
<br>
"@@.npc_exgirlfriend;Well you better go fucking get it then, hadn't you?@@" She demands as she starts shedding her clothes. "@@.npc_exgirlfriend;And you!@@" She states as you gasp in reaction to <<=setup.getNpcName("npc_yogateacher","first")>> sliding out of your ass. "@@.npc_exgirlfriend;Where was this sense of adventure back when we were together? I might have stuck around... well, I guess two subs might have been an issue, but still...@@"<br>
<br>
She's naked now and you're swinging somewhat frighteningly close to her bare, wet snatch...<br>
<br>
"@@.npc_exgirlfriend;So... you want to sample what you missed out on while <<=setup.getNpcName("npc_yogateacher","first")>> gets the rope?@@"<br>
<br>
[<<moveTo "event_yoga_private_3_5" "Nod." 600>>]<br>
[<<moveTo "event_yoga_private_3_5_abort" "Ask to be untied." 600>>]
</div>/*#
#desc: bondage yoga ex-gf oral sex abort
#status: RELEASED 0.8.8.0
#ignore_spell: 'tis
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_rope")>>
<div id="invframe" class="scrolltext">
You look up at your ex and shake your head. She just shrugs. "@@.npc_exgirlfriend;Oh well, your loss. Here, I'll untie you.@@"<br>
<br>
Her fingers un-knot things scarily-fast and by the time <<=setup.getNpcName("npc_yogateacher","first")>> has returned with another coil of rope you are back on your feet.<br>
<br>
"@@.npc_yogateacher;Not staying? And I thought you were getting really flexible... oh well, remember the rest of the lesson!@@" <<He npc_yogateacher>> calls after you as you pull on your clothes and hurry out of the room.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<removeItem 'rope_bondage' true>><<deleteItem 'rope_bondage'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: bondage yoga ex-gf oral sex
#status: RELEASED 0.8.8.0
#ignore_spell: 'tis
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.virgin.cunnilingus>>
<<set $player.virgin.cunnilingus = 'npc_exgirlfriend'>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<applyExperience 'oral' $npc_yogateacher.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 10 'terrible' $SEEN_FRIEND>>
<<playerOrgasm>>
<<elseif $player.body_ref.penis>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher") setup.charImage("npc_exgirlfriend","npc_exgirlfriend_rope")>>
<div id="invframe" class="scrolltext">
Craning your neck to look up at her you nod and <<=setup.getNpcName("npc_exgirlfriend","first")>> smiles, stepping towards you and guiding your face into position.<br>
<br>
"@@.npc_exgirlfriend;You know I used to dream about this. Damning that whole virginity pledge and getting your face between my legs...@@" You start licking and she gasps "@@.npc_exgirlfriend;Oh, my, you have some skills, oh what fun we could have had if one of us had a little less repression, and a little more courage...@@"<br>
<br>
Your face pressed against your ex you can't tell what's going on until she is suddenly lifted away and you gasp as she suddenly swings to a different angle.
<<if !setup.checkItemTypeWorn("cage")>>
You look up, surprised at how thoroughly <<=setup.getNpcName("npc_yogateacher","first")>> managed to apply the tie before this final disruption only to be distracted when your own position suddenly shifts.<br>
<br>
<<if $player.body_ref.penis>>
With a quick adjustment to your limbs you do a full one-eighty, flipping from face-down to face-up only for <<=setup.getNpcName("npc_exgirlfriend","first")>> to pitch forward to bring you face to face... and the hard thing between your legs to brush against something wet and inviting...<br>
<br>
"@@.npc_exgirlfriend;So... feel like putting the final kibosh on that silly virginity pledge?@@"<br>
<br>
[<<moveTo "event_yoga_private_3_6" "Do it." 600 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_yoga_private_3_6" "No, this isn't what you want." 600 "<<set $scene.sex=false>>">>]
<<else>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> winks... and then you find yourself scissoring. She grins, "@@.npc_exgirlfriend;I guess there were some other complexities to that virginity pledge, eh?@@" she states with a grin as she grinds... and then <<=setup.getNpcName("npc_yogateacher","first")>> takes <<=setup.getNpcName("npc_exgirlfriend","first")>> from behind, the intensity of <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> grinding, and the moisture between her legs amplified as the three of you rocket towards climax.<br>
<br>
While <<=setup.getNpcName("npc_yogateacher","first")>> cums but once, you and your ex combine for over half a dozen orgasms before <<=setup.getNpcName("npc_yogateacher","first")>> begins lowering you to the floor.<br>
<br>
"@@.npc_yogateacher;'Tis a beautiful thing when two people make up.@@" <<He npc_yogateacher>> states as <<he npc_yogateacher>> begins untying your restraints.<br>
<br>
"@@.npc_exgirlfriend;Thanks!@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> states, looking up at you from a bound position on the floor. You blush, the flood of emotions at what just happened slamming into you and you quickly get dressed and depart, not even remembering what you said to them on the way out.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<removeItem 'rope_bondage' true>><<deleteItem 'rope_bondage'>><<useClothSetPop 'tmp'>>">>]
<</if>>
<<else>>
You get a quick vision of her suspended on her back with her legs bound in a frog-tie before she somehow pivots under you, your face falling back into position between her legs as she is pulled up into a sort of sixty-nine.<br>
<br>
"@@.npc_exgirlfriend;Chastity? How kinky! I guess that virginity pledge went a bit deeper, eh?@@" She notes before teasingly licking your thighs and device. You moan in frustration into her cunt and then a cock comes into view, <<=setup.getNpcName("npc_yogateacher","first")>> sliding past your lips and into her, leaving you to lick her clit and the base of <<his npc_yogateacher>> shaft as <<he npc_yogateacher>> gently thrusts.<br>
<br>
<<His npc_yogateacher>> hard cock thrusting gently past your lips every few strokes <<he npc_yogateacher>> gives you a "treat" of going down your throat, leaving your mouth suffused with the taste of your ex as she continues to tease you around your chastity device.<br>
<br>
<<=setup.getNpcName("npc_yogateacher","first")>> lasts a surprisingly long time but
<<if $fetish.cum>>
when <<he npc_yogateacher>> cums <<he npc_yogateacher>> cums hard, a big, thick cream-pie that is immediately followed by <<=setup.getNpcName("npc_exgirlfriend","first")>> raising her hips to press the wet mix of juices into your face. "@@.npc_exgirlfriend;Come on, slut, lick me clean, show me there's no hard feelings...@@"<br>
<br>
Being called a slut by your ex, whom you had put on such a pedestal and literally behaved completely virginal with causes something to snap. You do as she orders, your tongue running between her folds, searching out every <<if setup.getTotalValue("cum") > 10>>delicious<<else>>bitter<</if>> morsel of <<getWordCum>> until <<=setup.getNpcName("npc_yogateacher","first")>>
<<else>>
<<he npc_yogateacher>> does cum, his cock pulsing centimetres above your face inside of your ex.<br>
<br>
Bound, you have no choice but to savour the moment as <<=setup.getNpcName("npc_yogateacher","first")>> slowly softens, and then drops free of your ex, <<his npc_yogateacher>> glistening member brushing your cheek before <<he npc_yogateacher>>
<</if>>
adjusts her rope and she drops away to leave you gasping.<br>
<br>
"@@.npc_yogateacher;'Tis a beautiful thing when two people make up.@@" <<He npc_yogateacher>> states as the ropes suddenly lift you up, the strain on your limbs released as <<he npc_yogateacher>> swiftly has you standing back on your own two feet.<br>
<br>
"@@.npc_exgirlfriend;Thanks!@@" <<=setup.getNpcName("npc_exgirlfriend","first")>> states, looking up at you from a bound position on the floor. You blush, the flood of emotions at what just happened slamming into you and you quickly get dressed and depart, not even remembering what you said to them on the way out.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<removeItem 'rope_bondage' true>><<deleteItem 'rope_bondage'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: bondage yoga ex-gf bondage P in V
#status: WRITTEN 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'oral' $npc_yogateacher.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'terrible' $SEEN_FRIEND>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_exgirlfriend">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_virgin'
0
'theme_church_confession_virgin'
true
>>
<</if>>
<<set $scene.virgin = !$player.virgin.top_fem>>
<<if $scene.virgin>>
<<set $player.virgin.top_fem = "npc_exgirlfriend">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<playerOrgasm>>
<</if>>
<<if !$player.virgin.penis>>
<<set $player.virgin.penis = "npc_exgirlfriend">>
<</if>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_yogateacher")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
<<if $scene.virgin>>
<<printThought "Holy shit... I'm about to lose my virginity... AFTER I broke up with my girlfriend? My life is so fucking weird...">>
<<else>>
<<printThought "Holy shit... I'm actually going to have sex with my ex-girlfriend AFTER I broke up with her? My life is so fucking weird...">>
<</if>>
<br><br>
<<=setup.getNpcName("npc_yogateacher","first")>> smiles down at you as she lowers and you slide into her.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_exgirlfriend;No wonder I dumped you, you're so small I can barely feel it!@@"
<<else>>
"@@.npc_exgirlfriend;Mmm, fuck me, fuck me good.@@"
<</if>>
<<case 'spe'>>
"@@.npc_exgirlfriend;See, why were you concerned about your size? You feel great!@@"
<<case 'none'>>
"@@.npc_exgirlfriend;Mmm, fuck me, fuck me good.@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 4 5>>
"@@.npc_exgirlfriend;Mmm, it looks like you got bigger that I remembered and... yeah, you feel pretty big...@@"
<<case 6>>
"@@.npc_exgirlfriend;Holy shit! If you were this big before, I never would have looked elsewhere!@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
She leans down for a kiss, cutting off your reply as <<=setup.getNpcName("npc_yogateacher","first")>> slides back into your ass.<br>
<br>
<<if $scene.virgin>>
You moan, <<=setup.getNpcName("npc_exgirlfriend","first")>> feels so good around your <<getWordMyPenis>> but the combination with <<=setup.getNpcName("npc_yogateacher","first")>> fucking your ass it is almost too much. Before you can adjust, however, <<he npc_yogateacher>> slides out.
<<else>>
You moan, your entire body trembling as you try to thrust up into your ex only for the cock to slide out of you after a single thrust.
<</if>>
<br><br>
From the way <<=setup.getNpcName("npc_exgirlfriend","first")>> moans and suddenly tightens up you realise that <<=setup.getNpcName("npc_yogateacher","first")>> is now fucking her but this, too is short lived as <<he npc_yogateacher>> commences to rapidly switch back and forth between the two of you as you continue to thrust upwards.<br>
<br>
Your orgasm is not long in coming, but you're pressed so close together with <<=setup.getNpcName("npc_exgirlfriend","first")>>, and she's so tight, that you continue pumping away for several more minutes before <<=ps(setup.getNpcName("npc_yogateacher","first"))>> alternating rhythm brings <<him npc_yogateacher>> to climax as well.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend","first")>> pulls back from the kiss she's been holding you in and purrs. "@@.npc_exgirlfriend;<<He npc_yogateacher>> just came, didn't <<he npc_yogateacher>>? How does that feel, having my <<boy npc_yogateacher>>friend cum in your ass while you're fucking me?@@"<br>
<br>
Your response is a moan while you go limp in exhaustion, too dazed and overwhelmed to conjure much in the way of thoughts, much less words.<br>
<br>
[<<moveTo "event_yoga_private_3_7" "Continue." 600>>]
<<else>>
This is too much and you cry out stop. Everything freezes for a moment and then <<=setup.getNpcName("npc_exgirlfriend","first")>> speaks, her voice nervous and apologetic. "@@.npc_exgirlfriend;Shit, sorry... I guess I went too far there, huh? <<=setup.getNpcName("npc_yogateacher","first")>>, could you untie them? I think I kind of murdered the mood...@@"<br>
<br>
You are lowered to the ground and the ropes quickly removed. Nervous and bashful yourself, now, you quickly dress and hurry out of the room without once making eye-contact with your ex.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120 "<<removeItem 'rope_bondage' true>><<deleteItem 'rope_bondage'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: bondage yoga ex-gf bondage after sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Yoga Studio">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_exgirlfriend")>>
<div id="invframe" class="scrolltext">
You're back on the ground and no longer tied up before you manage to start to recover, accepting your clothing in a daze and getting dressed before you even attempt to speak.<br>
<br>
<<if $scene.virgin>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> stares at you for several moments and then goes wide-eyed. "@@.npc_exgirlfriend;Holy shit was that your first, did I—oh fuck, fuck fuck.@@"<br>
<br>
She takes a deep breath and reaches out to touch you before hesitantly pulling back. "@@.npc_exgirlfriend;So, look, that was fun but, like... we aren't getting back together. Like, I like you, and maybe we could even repeat this sometime but... no, we're not compatible like that and, from the looks of things, you've been making real progress since you dumped me. Hold onto that, don't get dragged back into the past, okay?@@"
<<else>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> smiles awkwardly. "@@.npc_exgirlfriend;So, yeah, that was fun but... well... don't go catching feelings, okay? We broke up for a reason... well, several reasons, including shitty communication, betrayal, and massive levels of frustration and sexual incompatibility. From the look of things you've been doing a lot better since then so... keep it up, don't backtrack to a prior time in your life. I still like you, we might still end up friends someday but... we are never getting back together, alright?@@"
<</if>>
<br><br>
You nod and she gives you a friendly hug only for <<=setup.getNpcName("npc_yogateacher","first")>> burst in to wrap <<his npc_yogateacher>> arms around the both of you. "@@.npc_yogateacher;Spiritual advancement! Wonderful! All are connected friends!@@" <<He npc_yogateacher>> states and you catch <<=setup.getNpcName("npc_exgirlfriend","first")>> rolling her eyes slightly.<br>
<br>
The three of you separate and you somewhat awkwardly leave, bypassing the locker-room to head straight home for some privacy to think.<br>
<br>
[<<moveTo "room_foyer" "Home." 120 "<<removeItem 'rope_bondage' true>><<deleteItem 'rope_bondage'>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: gym lift weights alone
#status: FINISHED 0.7.0.0
#ignore_spell: movin',fru
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.strengthSpecialPossible = !$scene.strengthSpecialPossible && setup.analyzeWornTags(['female','male','unisex']) == 'female' && setup.checkVisibleClothingTag('slutty') >= 50 && setup.analyzeWornTags(['modest','slutty','cute','fetish']) == "slutty">>
<<if (($gym.lewd_male && !$options.fem) || ($gym.lewd_futa && $options.fem)) && $gym.lewd_female && setup.isItemEquipped("cum_shorts") && !$gym.events.cum_shorts && setup.getTotalValue("strength") >= 13 && setup.checkItemTypeWorn("plug")>>
<<set $scene.strengthSpecial = "cumEvent">>
<<elseif (($gym.lewd_male && !$options.fem) || ($gym.lewd_futa && $options.fem)) && random(1,4) == 1>>
<<set $scene.strengthSpecial = "male">>
<<elseif $gym.lewd_female && setup.getTotalValue("strength") >=15 && (!$gym.events.eat_ass || random(1,10) == 1)>>
<<set $scene.strengthSpecial = "female">>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'slightly' $SEEN_STRANGER>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue 40>>
<<elseif $gym.lewd_futa && setup.getTotalValue("strength") > 10 && $npc_fit_bimbo.stage >= 3 && $npc_swolebro.stage >= 2 && !State.hasPlayed("event_gym_futa_1_1")>>
<<initRoom>>
<<moveTo "event_gym_futa_1_1">>
<<else>>
<<set $scene.strengthSpecial = "none">>
<</if>>
<<set $scene.exercise +=1>>
<<if $scene.strengthSpecial == "none">>
<<set _strength = setup.getTotalValue("strength")+1>>
<<applyExperience 'strength' _strength 'slightly' $SEEN_STRANGER>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue 40>>
<<set $scene.meetSwoleBro = (setup.getTotalValue("strength") >= 10 && $npc_swolebro.stage == 0)>>
<<if $scene.meetSwoleBro>>
<<set $npc_swolebro.stage = 1>>
<<set $npc_swolebro.profile = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.meetSwoleBro>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<<else>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.strengthSpecial == 'male'>>
You've just finished your warm-ups and are upping the weights for your first set when a <<guy>> wanders past and asks if you need "help." <br>
<br>
Turning around you look <<him>> over. <<Hes>> in pretty good shape with a classic "gym <<if $options.fem>>bunny<<else>>bro<</if>>" look. <<He>> cockily grins back at you.<br>
<br>
[<<moveTo "event_gym_weights_special_1" 'Accept <<his>> "help."' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_weights_special_1" "Say you're doing fine on your own." 600 "<<set $scene.accept=false>>">>]
<<elseif $scene.strengthSpecial == 'female'>>
Deadlift is on the schedule for today and, after a "warm-up" that would be a heavy lift for all but the strongest other gym patrons you notice you have an admirer.<br>
<br>
The woman before you stands well taller than you, even in flats. Your eyes rise up her body as you look upon an amazon of a woman, her thighs stretching her leggings so tight they look practically painted on, a sports bra serving to keep her substantial cleavage "under control" while leaving her muscular arms and six-pack abs on display.<br>
<br>
Nodding at the bar, she grins down at you. "@@.generic_female1;You planning on lifting all that weight, little girl?@@"<br>
<br>
Feeling called out, you straighten up and nod, throwing another five kilos on either side of the bar before chalking up good and then stepping into position. Taking a deep breath, and <<if setup.checkItemTypeWorn("plug")>>clenching down on the plug in your rear<<else>>squeezing tight<</if>>, you pull, hard, the weight slowly rising off the floor until you hit lockout holding it there for a moment as you make eye contact with the now grinning woman before reversing to put it back down.<br>
<br>
Stepping onto the platform, the woman places a foot in the bar to stop it from rolling, in so doing showing off that there is a wet spot forming between her legs.<br>
<br>
"@@.generic_female1;Well, well. Looks like this slut is skilled at deadlift. But... you know what they say about deadlifters, that they eat ass. So, is it true?@@"<br>
<br>
Your heart pounds — not just from the heavy lift you just finished, but from the woman's presence, radiating strength and a heady scent of sweat you can tell from her grin this isn't a joke, it's a proposition, but do you dare to take her up on it?<br>
<br>
[<<moveTo "event_gym_weights_eat_ass_1" 'Say "of course it is."' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_weights_eat_ass_1" 'Blush and turn her down.' 600 "<<set $scene.accept=false>>">>]
<<elseif $scene.strengthSpecial == "cumEvent">>
You're in the zone working some heavy squats. Facing the mirror to check your form means your plugged ass is on display the entire gym with every crisp, deep rep, your tight shorts meaning you don't just put on a show, but attract a pair of admirers.<br>
<br>
"@@.generic_female1;Goddamn, look at that slut go! Hey, girl, what's your secret to dat ass?@@"<br>
<br>
You finish your set and turn around to find a gym bunny hugging up against her slender and toned <<boy>>friend. Though she looks good in her tight top and butt-boosting yoga pants you are definitely winning the battle of THICCness.<br>
<br>
From the way both of them are leering in your direction, you get the feeling this could turn into a bit of fun, if you were up for it.<br>
<br>
[<<moveTo "event_gym_weights_cum_event_1" "Rub the words written across your ass and reply that such knowledge isn't free..." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_weights_cum_event_1" 'Shrug and respond "hard work and consistency."' 1800 "<<set $scene.accept=false>>">>]
<<else>>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
You head straight for the free weights and start moving massive kilos. People twice your size keep glancing in your direction with a mix of jealousy and surprise at how easily you rep out each heavy set.<br>
<br>
Savouring your nice pump you smile, for whatever else may have happened to you, you. Are. Strong.
<<else>>
You head for the free weights for a nice heavy workout. Squats, dead, bench, you do a circuit of the big three followed by additional accessory work to help sculpt and target problem areas.<br>
<br>
After this much time in the gym, you find it almost relaxing, feeling your strength building with every completed rep as you admire your toned form in the mirror.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
You stick to the machines for your lifts, still a bit intimidated to try free weights on your own.<br>
<br>
You aren't moving anything of real substance, but you at least feel like you're doing something, steadily chiseling away at sculpting a stronger body.
<<else>>
You spend some time trying to lift some weights, but even the pink fru-fru dumb-bells have your arms aching. You've got a long road ahead of you before you can even think about getting "strong."
<</if>>
<</if>>
<br><br>
<<include workoutBreasts>>
<<if $scene.meetSwoleBro>>
You notice a group of large, strong <<if $npc_swolebro.fem>>girls<<else>>dudes<</if>> working out together nearby, one of them seeming to look over at you occasionally. As you are packing up, <<he npc_swolebro>> approaches you with a smile.<br>
<br>
"@@.npc_swolebro;Hey, so couldn't help but notice you're movin' some serious weight over here! My name's <<=setup.getNpcName("npc_swolebro","first")>>, next time you're working out, you should come over with us. We're always happy to have another friend under the iron and it's always more fun to share a good lift with your <<=$npc_swolebro.bro + "s">><<if $npc_swolebro.bro == "bro">>, guys or girls<</if>> Plus having a spot ready so you can really go for it!@@"<br>
<br>
You thank <<him npc_swolebro>> for the offer and say you'll think about it.<br>
<br>
<</if>>
[<<moveTo "room_gym_main" "Do something else." 1200>>]
<</if>>
</div>/*#
#desc: gym lift accept help from random dude
#status: FINISHED 0.7.0.0
#ignore_spell: fru
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'little' $SEEN_STRANGER>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue 20>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod and motion for <<him>> to help load up the other side of the bar as you continue your workout. As you work through the set <<he>> offers tips and suggestions.
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
<<His>> advice is either wrong or useless and you finish up your warm-up with ease as you consider your next move.
<<else>>
<<His>> advice is bro-science nigh-useless, but you finish your warm-up with ease and consider your next move.
<</if>>
Looking over you realise <<hes>> already starting to strip the bar, seemingly assuming this is your max.<br>
<br>
"@@.generic_male1;So you obviously have a bit of experience, but squatting this heavy is just going to make you slow and bulky, here, let me show you a better routine...@@"<br>
<br>
[<<moveTo "event_gym_weights_special_2" "Show <<him>> what you're really capable of." 600 "<<set $scene.dumb=false>>">>]<br>
[<<moveTo "event_gym_weights_special_2" "Go along with things and play dumb and weak." 600 "<<set $scene.dumb=true>>">>]
<<else>>
<<if setup.getTotalValue("strength") > 5>>
Despite <<his>> somewhat patronising tone the extra set of eyes is helpful to correct some minor form issues.
<<else>>
Though <<his>> suggestions are a bit patronising the truth is you kind of need the help.
<</if>>
Racking the bar <<he>> starts to strip the weight, obviously figuring this is your max.<br>
<br>
"@@.generic_male1;So you obviously have a bit of experience, but squatting this heavy is just going to make you slow and bulky, here, let me show you a better routine...@@"<br>
<br>
[<<moveTo "event_gym_weights_special_2" "Go along with <<his>> suggestions." 600 "<<set $scene.dumb=true>>">>]<br>
[<<moveTo "event_gym_weights_special_1" "This has gone too far, tell <<him>> to buzz off and go back to your routine." 600 "<<set $scene.accept=false>>">>]
<</if>>
<<else>>
You roll your eyes and decline the <<if $options.fem>>girl's<<else>>dude's<</if>> offer of "help" with a shrug <<he>> wanders off and you continue your workout.<br>
<br>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
Now free of distraction, you finish loading the bar and start moving massive kilos. People twice your size keep glancing in your direction with a mix of jealousy and surprise at how easily you rep out each heavy set.<br>
<br>
Savouring your nice pump you smile, for whatever else may have happened to you, you. Are. Strong.
<<else>>
Now free of distraction, you do a nice heavy circuit of squats, dead, and bench, slightly regretting not having a spot for the last, but you end up not having any issues repping out.<br>
<br>
After this much time in the gym, you find it almost relaxing, feeling your strength building with every completed rep as you admire your toned form in the mirror.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
You stick to the machines for your lifts, still a bit intimidated to try free weights on your own.<br>
<br>
You aren't moving anything of real substance, but you at least feel like you're doing something, steadily chiseling away at sculpting a stronger body.
<<else>>
You spend some time trying to lift some weights, but even the pink fru-fru dumb-bells have your arms aching. You've got a long road ahead of you before you can even think about getting "strong."
<</if>>
<</if>>
<br><br>
<<include workoutBreasts>><br>
<br>
[<<moveTo "room_gym_main" "Do something else." 1200>>]
<</if>>
</div>/*#
#desc: gym workout with random dude
#status: FINISHED 0.7.0.0
#ignore_spell: fru
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _strength = setup.getTotalValue("strength")>>
<<if $scene.dumb>>
<<applyExperience 'strength' _strength 'little' $SEEN_STRANGER>>
<<if setup.getTotalValue("strength") > 10>>
<<applyExperience 'bimbofication' 11 'normal' $SEEN_STRANGER>>
<</if>>
<<else>>
<<applyExperience 'strength' _strength 'normal' $SEEN_STRANGER>>
<</if>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.dumb>>
<<if setup.getTotalValue("strength") > 10>>
Putting on a bubbly, blank expression you let <<him>> "drive" the rest of the workout. <<He>> runs you through a fairly basic bodybuilder "toning" sequence, having you work with machines and the small fru-fru weights while <<he>> "shows off" by demoing with dumb-bells that you could <<if setup.getTotalValue("strength") > 15>>easily<<else>>probably<</if>> handle yourself if you were actually trying.
<<else>>
You blush and thank <<him>> for the help as <<he>> runs you through the rest of the workout. You aren't sure if <<he>> has a plan, exactly, but if <<he>> does it is really complicated as <<he>> has you do a whole flurry of exercises with fru-fru dumb-bells and various machines, all the time "demoing" each move with heavy dumb-bells way outside of what you could handle.
<</if>>
<br><br>
Reaching the end of the routine, <<he>> leads you into one of the gyms private rooms where <<he>> "helps" you through a cooldown stretch that starts to get very... intimate, the scent of <<his>> sweat a bit intoxicating as you feel a non-muscular bulge pressing into you.<br>
<br>
[<<moveTo "event_gym_weights_special_3_weak" "Thank <<him>> and head on your way." 300 "<<set $scene.sex=false>>">>]<br>
[<<moveTo "event_gym_weights_special_3_weak" '"Reward" <<him>> for <<his>> assistance.' 600 "<<set $scene.sex=true>>">>]
<<else>>
Hiding a grin you start stacking on plates, <<he>> looks at you like you're making a joke, but you glare at <<him>> until <<he>> matches it on the other side.<br>
<br>
<<if setup.getTotalValue("strength") > 15>>
"@@.generic_male1;Hey, so I already worked out, I'm just helping out, besides this is a bit heavy even for me...@@" You cut <<him>> off mid-word as you swing under the bar and pop out three reps back to back, racking with authority as you flex to show off your pump.
<<else>>
"@@.generic_male1;Hey, so I wasn't asking about working in, just helping out, but if you want me to show you how I do work weight...@@"<br>
<br>
Before <<he>> can get into position you slide under the bar and pop out three reps back to back, racking with authority as you flex to show off your pump.
<</if>>
<br><br>
<<He>> stares at you, clearly teetering between fear and awe as you notice <<hes>> picked up an additional "bulge" in between the legs.<br>
<br>
[<<moveTo "event_gym_weights_special_3_strong" "Play at being <<his>> submissive muscle slut." 300 "<<set $scene.action='sub'>>">>]<br>
<<if setup.getTotalValue("dominance") > 0>>
[<<moveTo "event_gym_weights_special_3_strong" "Take charge and toss <<him>> around a bit." 300 "<<set $scene.action='dom'>>">>]<br>
<<else>>
[@@.link_locked;Dominate <<him>>? No, you don't have the skills for that...@@]<br>
<</if>>
[<<moveTo "event_gym_weights_special_3_strong" "Just finish off your workout." 300 "<<set $scene.action='none'>>">>]
<</if>>
</div>/*#
#desc: gym post-workout strong variant with random dude
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'sub'>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 7 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'little' $SEEN_STRANGER>>
<<applyFatigue 20>>
<<set $gym.events.strength_strong_sub = true>>
<<case 'dom'>>
<<applyFatigue -10>>
<<applyExperience 'dominance' 5 'very' $SEEN_STRANGER>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyStress _dom>>
<<set $gym.events.strength_strong_dom = true>>
<</switch>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'sub'>>
The <<guy>> stares at you in awe as you step closer, pulling <<him>> towards you and leaning in to whisper in <<his>> ear.<br>
<br>
You ask <<him>> if <<hes>> never seen a strong woman<<if $options.fem>> like you<</if>> before, and then follow up by asking how <<he>> would feel about "taming" one. From the way <<he>> moans, <<he>> damn near jizzed <<his>> pants, but reaching down and squeezing through <<his>> shorts confirms that, even if <<he>> has, <<he>> remains quite hard.<br>
<br>
Pulling back, you wink and make eyes towards one of the gym's "private training" rooms, seconds later the two of you are inside, alone, you on your knees yanking <<his>> shorts to the floor and hungrily swallowing <<his>> cock.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You show off that your strength extends to suction as well as musculature as you slurp <<his>> full length down your throat.
<<else>>
Pulling <<him>> into you, you suck <<him>> all the way to the base.
<</if>>
<<He>> tastes hot and sweaty and a little bit salty as you move your head up and down, grabbing <<his>> ass with both hands and lifting <<him>> into the air as you continue to suck.
<<else>>
You suck as best you can but, from the feel of things, <<hes>> so turned on by the way you're almost man-handling <<him>> it doesn't much matter.
<</if>>
<br><br>
With a shuddering gasp <<he>> cums, <<if setup.getTotalValue("oral") > 10>>and you thirstily slurp down every drop<<else>>and you find yourself swallowing rather than let it make a mess of your clothes<</if>>.<br>
<br>
Staggering back, <<he>> stares at you in awe as you lick your lips, wink and then skip out of the room.
<<case 'dom'>>
With a confident grin you step away from the weights and towards <<him>>, casually scooping <<him>> up into your arms and carrying <<him>> to one of the gym's private rooms. <<He>> looks up at you in awe as <<he>> dangles in your arms, dropping to <<his>> hands and knees the moment you put <<him>> down to kiss and worship your feet.<br>
<br>
"@@.generic_male1;My Goddess... I had no idea,@@" <<he>> pauses to stare up at you and you grin down. You have to admit it's a bit of a flip from "normal" to have someone at your feet rather than the other way around. Walking over to a bench you sit down and enjoy the sensation of <<him>> worshipping and massaging your feet, smiling as <<he>> moves up your legs, tracing your flexed muscles.<br>
<br>
You pull your top up to expose your breasts, moaning as <<he>> starts to suck and lick, though it doesn't last long before <<his>> attention is diverted to your biceps, kissing <<his>> way up and down your arms as <<he>> gushes over how beautiful and strong you are.<br>
<br>
Rolling over onto your front, you let <<him>> spend some time cuddling and worshipping your ass before finally deciding <<hes>> had enough. Rising to your feet, you casually press <<him>> against the wall and then lift <<him>> up smiling at the way <<he>> shudders in response. Grinning back at <<him>>, you wink and then let <<him>> drop before hurrying out of the room, leaving <<him>> breathing hot and heavy in your wake. For your part the brief massage has left you feeling energised.
<<case 'none'>>
You don't make a move and the moment passes. You can tell that the <<guy>> is hot and bothered and more than a bit in awe. <<He>> mostly just stares at you as you finish off your workout, occasionally expressing <<his>> impressed appreciation rather than giving any tips or suggestions as <<he>> had been earlier.<br>
<br>
Racking your final set, you give <<him>> a wink and head on your way, leaving <<him>> to sit and "cool down" since standing up would result in the tent <<hes>> been pitching in <<his>> shorts becoming VERY obvious.
<<default>>
ERROR unexpected scene.action: <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym post-workout weak variant with random dude
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 7 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'little' $SEEN_STRANGER>>
<<applyFatigue 20>>
<<set $gym.events.strength_weak = true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You ask <<him>> if <<hes>> got a blender bottle in <<his>> pocket, or if <<hes>> just happy to see you.<br>
<br>
<<He>> grins in response as you reach down to grab <<his>> cock through the thin fabric of <<his>> gym shorts.<br>
<br>
"@@.generic_male1;Oh yeah, looks like you know how to reward a trainer right...@@"<br>
<br>
You grin in response, soon having <<him>> on <<his>> back and your lips wrapped around <<his>> cock as you stare up at <<him>>. <<His>> cock is salty and sweaty, smelling of workout and <<if !$options.fem>>masculine <</if>>musk, but in a good way.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
<<His>> average <<getWordPenis>> meets your godlike fellatio skills
<<else>>
<<His>> average <<getWordPenis>> meets your very much above-average fellatio skills
<</if>>
and <<he>> is soon moaning in pleasure, leaving you to do all the work merely groaning and gasping as you give <<him>> the blow-job of a lifetime.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<Hes>> about average, but that's right in line with your skills as you give <<him>> the best blow/handjob you can.
<<else>>
<<Hes>> about average, but that's still a bit "big" for your skills, but you do your best, applying tongue and hand together to get <<him>> off.
<</if>>
You guess <<he>> was already really turned on by the workout and such because, even with your mediocre skill, it isn't long before <<hes>> gasping on the edge of climax.
<</if>>
<br><br>
<<His>> load is unimpressive in quantity, but you swallow the <<if setup.getTotalValue("cum") > 10>>delicious<<else>>bitter<</if>> baby batter without objection rather than disrupt the mood.<br>
<br>
Catching <<his>> breath, <<he>> quickly returns to <<his>> feet, a bit flustered as <<he>> reminds you to "@@.generic_male1;Keep doing what I showed you today,@@" before ducking out of the room and leaving you on your own.
<<else>>
You thank <<him>> for <<his>> assistance and, ignoring the obvious bulge in <<his>> pants and the way <<he>> is staring at you, head off on your way.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: eat ass after deadlifting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<set $scene.first = !$player.virgin.analingus>>
<<if $scene.first>>
<<set $player.virgin.analingus = "gym_woman">>
<</if>>
<<set $gym.events.eat_ass = true>>
<<applyFatigue 20>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
The woman grins and you half expect her to just throw you over her shoulder and carry you off... not that you would really mind, but you suppose it's probably better for "appearance" sake that she instead helps you clean up your weights and then leads the way to one of the gym's private rooms and closes the door.<br>
<br>
"@@.generic_female1;Alright, hot stuff,@@" she states with a leer as she turns and pulls down her pants to display her THICC, but sculpted ass. "@@.generic_female1;The buffet is open!@@" She announces, clenching and unclenching in invitation.<br>
<br>
<<if $scene.first>>
Rising up from her muscular thighs, her ass is a sight to behold. You've never done anything like this before, but you can't resist leaning kneeling forward, only for her to reach back with one hand and mash your face between her cheeks.
<<else>>
Dropping to your knees, you crawl over, leaning towards her rear only for her to reach back with one strong hand and mash your face in between her cheeks.
<</if>>
You gasp in surprise, your lips brushing her quivering hole as she moans. "@@.generic_female1;Mmm, yeah, now get in there nice and deep...@@"<br>
<br>
Pinned against her rear, you feel her powerful glutes squeeze against your face. Despite your position she smells good, sweaty and strong, a little bit musky and you do it, your tongue reaching out tentatively to trace the rim of her hole.<br>
<br>
Her taste — a little bit salty, a little bit musky draws you in and you hear her moan again as you spear your tongue into her hole, exploring that forbidden cavity, lips pressed against her tight rosebud as she hums in approval.<br>
<br>
"@@.generic_female1;Mmmm, you eat ass even better than you lift... and you were lifting pretty good.@@" She congratulates, adjusting her stance and spreading her cheeks for you to get even deeper.<br>
<br>
<<if $scene.first>>
This may be your first time, but you're already feeling addicted to this fun new activity, the sense of submissive depravity brought on by what you're doing causing you to reach out and hug her hips, pulling yourself even closer as you hungrily lick and kiss.
<<else>>
You are in heaven, eagerly munching away as you switch off from making circles around her hole and spearing as deep as you can, doing your best to bury your face between her cheeks.
<</if>>
<br><br>
Sucking against her hole, you feel her stagger slightly and groan as you realise that she just came, an assessment confirmed when you reach between her legs to find her already three fingers deep in her other hole.<br>
<br>
"@@.generic_female1;Don't stop...@@" she moans, grinding against you as you do your best to keep up in between gasping for air, your every breath now heady with the mix of sweat and sex.<br>
<br>
Two more orgasms follow before she finally relents, releasing her hold on your head as she staggers forward, your own balance such that you almost fall onto your face, instead looking up from all fours as she turns to smile down on you, her chest heaving as if she'd just ran a mile.<br>
<br>
"@@.generic_female1;Well! That was... that was the perfect end to a workout. You keep up the good work — muscle may be sculpted under the iron, but you need the right diet to keep you fuelled.@@"<br>
<br>
Smiling at her joke, she pulls up her pants and blows you a kiss before leaving the room. Catching your breath, you rise to your feet and exit as well, finding that she has already disappeared out of sight.
<<else>>
The woman shrugs and walks away. You let out a sigh, trying to clear your head of her intoxicating, slightly intimidating presence as you clean up your weights.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym use elliptical
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise += 1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<if $npc_fit_bimbo.stage >= 4 && $npc_swolebro.stage > 3 && setup.analyzeWornTags(['female','male','unisex']) == "female" && setup.getTotalValue("heels") > 7 && setup.checkVisibleClothingTag("slutty") > 50 && setup.checkVisibleClothingTag("slutty") + setup.calcBareSkin() > 70 && (!State.hasPlayed("event_gym_bimbo_peer_pressure_1") || !State.hasPlayed("event_gym_bimbo_peer_pressure_5") && random(1,5) == 1)>>
<<initRoom>>
<<moveTo "event_gym_bimbo_peer_pressure_1">>
<<else>>
<<if setup.getTotalValue("stamina") >= 5 && !setup.hasThreshold('stamina', 'gym_stamina', 'elliptical')>>
<<setThreshold 'stamina' 'gym_stamina' 'elliptical'>>
<<elseif setup.getTotalValue("stamina") >= 8 && setup.checkItemTypeWorn("plug") && !setup.hasThreshold('stamina', 'gym_stamina', 'run_plugged')>>
<<setThreshold 'stamina' 'gym_stamina' 'run_plugged'>>
<<else>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'normal' $EXPOSED>>
<</if>>
<<applyFatigue 30>>
<<set $scene.fitBimboTrigger = $npc_fit_bimbo.stage == 0 && setup.getTotalValue("stamina") >= 10 && setup.analyzeWornTags(['female','male','unisex']) == "female" && setup.getTotalValue("heels") > 0>>
<<if $scene.fitBimboTrigger>>
<<set $npc_fit_bimbo.stage = 1>>
<<set $npc_fit_bimbo.profile = true>>
<</if>>
<<set $scene.megaMilk = !$gym.events.mega_milk && (($gym.lewd_male && !$npc_swolebro.fem) || ($gym.lewd_futa && $npc_swolebro.fem)) && $npc_swolebro.stage > 3 && setup.isItemEquipped("dress_mm") && 'massive' == setup.calcBreastSize() && $player.body_ref.milkProduction > 0 && $player.flags.mealplan.hormones != 'none' && setup.getTotalValue("anal") > 10>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fitBimboTrigger>>
<<createAdvBGR "./images/locations/gym_elliptical.png" setup.charImage("npc_fit_bimbo")>>
<<elseif $scene.megaMilk>>
/%TODO: other two broteges%/
<<createAdvBGR "./images/locations/gym_elliptical.png" setup.charImage("npc_swolebro")>>
<<else>>
<<createAdvBGR "./images/locations/gym_elliptical.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
You head straight for the ellipticals. Even cranking speed and resistance to the max you're barely breathing heavy, your cardio practically limitless. <<if setup.checkItemTypeWorn("plug")>>The whole time your <<=setup.getItemTypeName("plug")>> only serves to spur you forward, every shift of it inside of you reminding you why you spend so much time on your body — so you can get be active to maximally enjoy being fucked long and hard.<</if>>
<<else>>
You head for the ellipticals and punch in a difficult routine. Even with the challenge before you, it takes a while before you even start to breathe heavy. <<if setup.checkItemTypeWorn("plug")>>Even the filling presence of the <<=setup.getItemTypeName("plug")>> in your ass is merely enjoyable, the challenge of its presence well within your capabilities as it spurs you on. <</if>>Pushing through, you go until the end, getting in the full routine before stepping off the machine.
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") >= 5>>
Feeling like you're starting to build up a bit of stamina, you head for the elliptical machine.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
With each movement, the <<=setup.getItemTypeName("plug")>> in your ass shifts and tugs, constantly pressuring your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> and sending your heart racing to really "amp up" your workout.<br>
<br>
By the time you step off the machine, you're sweaty and horny and feel almost like you've been fucked in the ass... almost.
<<else>>
It's much harder than a mere treadmill, but by the end you feel like you've accomplished something, your arms and legs both burning from the exertion in a way that is subtly satisfying.
<</if>>
<<else>>
A bit intimidated by options you just head for a treadmill. Unfortunately you're so unconditioned a mere brisk walk has you breathing heavy, forcing you to turn down the speed as you try to at least go a reasonable distance, even if you aren't doing so particularly swiftly.
<</if>>
<</if>>
<br><br>
<<include workoutBreasts>>
<<if $scene.fitBimboTrigger>>
You've finished your workout and are wiping down your machine when a woman cruises past and starts chatting at you. You aren't sure what's more distracting — her near perfect gym body, or her giant rack, all wrapped up in VERY tight and revealing pink outfit.<br>
<br>
"@@.npc_fit_bimbo;Hey, so I, like, couldn't help but notice that that you were motoring along like it wasn't no thing! If you're looking for a REAL workout to take things to the next level, you should check out the private workout group. It's a bit different than you're probably used to, but if you want to really push it and build a body that will attract ALL the guys... and gals! Well, I hope to see you there!@@"<br>
<br>
She bounces away before you can respond as you notice that she is, for some reason, wearing high heels in the gym?<br>
<br>
<<printThought "Weird, I wonder what sort of class she was talking about...">><br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif $scene.megaMilk>>
You're wiping the sweat off your machine when you look up and realise that three of the <<guy npc_swolebro>>s "swole<<=$npc_swolebro.bro + "s">>" are standing looking at you; <<=setup.getNpcName("npc_swolebro","first")>>, the leader by virtue of size and pump, and <<his npc_swolebro>> two smaller, but still conventionally jacked<<if $npc_swolebro.bro == "bro">> "broteges." <<else>> "proteges." <</if>><br>
<br>
You smile at them in greeting and ask what's up.<br>
<br>
"@@.npc_swolebro;Hey, so... couldn't help noticing that tight top, and the way those lovely tits were bouncing during your run... well, it's a bro-science fact that human milk is some of the purest calories there are... and, well... my <<=$npc_swolebro.bro + "'s">> here could use the nutrients to reinforce their gains.@@"<br>
<br>
[<<moveTo "event_gym_cardio_megamilk_1" "You gotta help your <<=$npc_swolebro.bro>>s! Say sure!" 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_cardio_megamilk_1" "Decline." 60 "<<set $scene.accept=false>>">>]
<<else>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
</div><<set $scene.breasts = setup.calcBreastSize()>>
<<if $scene.breasts != "none">>
<<if $scene.breasts == "large" || $scene.breasts == "massive">>
<<if setup.checkItemTypeWorn("bra")>>
<<if setup.getItemObjFromType("bra").tags.indexOf("gym") != -1>>
Your bra does its job, tightly containing even your ample bosom so that you can remain focused throughout the workout.
<<else>>
Unfortunately your bra just isn't up to the task of controlling your <<=$scene.breasts>> breasts during such exuberant activity, your <<getWordBreasts>> a constant distraction throughout your workout.
<</if>>
<<else>>
Without a bra, your <<=$scene.breasts>> breasts are constantly bouncing to and fro, threatening to pull you off-balance as well as being quite uncomfortable to feel them swing about.
<</if>>
<<elseif $scene.breasts == "small">>
<<if setup.checkItemTypeWorn("bra")>>
<<if setup.getItemObjFromType("bra").tags.indexOf("gym") != -1>>
Your secure sports bra may be a bit overkill given your miniscule breasts, but, well, better safe than sorry.
<<else>>
Your breasts are small enough that even your more style over function bra is up to the task of keeping things under control.
<</if>>
<<else>>
Your breasts are small enough that even forgoing a bra does not cause any problems.
<</if>>
<<elseif $scene.breasts == "small">>
<<if setup.checkItemTypeWorn("bra")>>
<<if setup.getItemObjFromType("bra").tags.indexOf("gym") != -1>>
Your secure sports bra is just the thing to keep the "girls" under control and let you properly focus on your workout.
<<else>>
Though it pushes it to the limit your current bra is barely sufficient to keep your <<getWordBreasts>> under control during your workout. If you get any bigger though, you'll definitely be wanting something designed for such purposes.
<</if>>
<<else>>
It isn't the most comfortable thing, but you manage to push through the workout sans bra without too much bother.
<</if>>
<</if>>
<br><br>
<</if>>/*#
#desc: gym cardio kickboxing class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1 >>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<<if $gym.classes.cardio_kickboxing.level == 0>>
<<set $gym.classes.cardio_kickboxing.level = 1>>
<</if>>
<<if !setup.hasThreshold('martial_arts', 'martial_arts', 'cardio_kickboxing')>>
<<setThreshold 'martial_arts' 'martial_arts' 'cardio_kickboxing'>>
<</if>>
<<applyExperience 'martial_arts' 2 'slightly' $EXPOSED>>
<<if setup.getTotalValue("dexterity") >= 4 && !setup.hasThreshold('dexterity', 'other', 'cardio_kickboxing')>>
<<setThreshold 'dexterity' 'other' 'cardio_kickboxing'>>
<<else>>
<<applyExperience 'dexterity' 8 'normal' $EXPOSED>>
<</if>>
<<set _martialArts = setup.getTotalValue("martial_arts")>>
<<applyExperience 'stamina' _martialArts 'almost' $EXPOSED>>
<<applyFatigue 30>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_martial_arts")>>
<div id="invframe" class="scrolltext">
You participate in a cardio kickboxing class along with a variety of students in a mix of genders. The instructor, <<=setup.getNpcName('npc_martial_arts', 'formal')>>, is a tall woman; slender and efficiently muscled like a fighter, with a hard confidence that has her looking like she could definitely kick your (and most other people's) asses.<br>
<br>
<<if setup.getTotalValue("stamina") >= 10>>
<<if setup.getTotalValue("stamina") > 15>>
Kicking high, hard and fast with your punch combo's coming smooth and swift you go move for move with the instructor, barely breaking a sweat in the course of the class.
<<else>>
You easily keep up with the class, kicking and punching along with each sequence without ever even breathing heavy.
<</if>>
<br><br>
<<printThought "Huh, that was kind of trivial.">>
<<if !$gym.classes.martial_arts_available>>
<br><br>
<<set $gym.classes.martial_arts_available = true>>
At the end of the class the instructor drops by to congratulate you on your performance.<br>
<br>
"@@.npc_martial_arts;Hey, you're doing really good, you ever think of learning to fight for real? I run all of the martial arts classes so if you wanna learn karate or mix it up with some Brazilian Jiu Jitsu groundwork you should check it out!@@"
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
You do your best, but by the end of class you're gasping for air, barely able to keep your hands above your waist. The instructor swings by with a smile, looking somewhat annoyingly chipper and not even breathing heavy.<br>
<br>
"@@.npc_martial_arts;Heh, now imagine if someone was punching back! You're doing good though, just gotta keep building up the old cardio!@@"
<<else>>
You never realised how much effort it takes to throw punches and kicks. To say the class kicked your butt would be a pun and an understatement, by the end you're barely able to stand, your legs like rubber, your arms hanging limp at your side.<br>
<br>
As you try to catch your breath, the instructor comes by, looking way too fresh and rested than seems at all fair.<br>
<br>
"@@.npc_martial_arts;Hey, good job trying to push through, I know it's tough, but you just gotta keep at it, cardio only comes with time!@@"
<</if>>
<br><br>
You gasp some sort of response as she walks away.<br>
<br>
<<printThought "I really need to get into better shape...">>
<</if>>
<br><br>
<<include workoutBreasts>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym generic class
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+10)>>
<<applyExperience 'stamina' 6 'little' $EXPOSED>>
<<applyExperience 'strength' 6 'little' $EXPOSED>>
<<applyExperience 'dexterity' 6 'little' $EXPOSED>>
<<applyFatigue 20>>
<<if $gym.classes.other.level == 0>>
<<set $gym.classes.other.level = 1>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png">>
<div id="invframe" class="scrolltext">
You attend a random fundamental fitness class at the gym. There's a bit of stretching, some calisthenics and a bit of dumb-bell work for a kind of "full-body" workout that covers both cardio and strength.<br>
<br>
<<if setup.getTotalValue("stamina") > 10 && setup.getTotalValue("strength") > 10 && setup.getTotalValue("dexterity") > 10>>
The activities are far too trivial for you to get much out of, you're heart-rate barely even budges over the course of the class.
<<elseif setup.getTotalValue("stamina") > 5 && setup.getTotalValue("strength") > 5 && setup.getTotalValue("dexterity") > 10>>
The class is overall very general and basic, you should probably seek out something more specialized or advanced.
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
You manage to keep up with everything asked of you, though you feel a bit weak on the more strength-focused activities.
<<elseif setup.getTotalValue("strength") > 5>>
You're strong enough for everything in class, but your cardio proves to still be the weak link as you find yourself breathing heavy less than halfway through the class.
<<elseif setup.getTotalValue("dexterity") > 5>>
You may have the agility for the class, but you struggle to exert strength, or keep things up without getting winded.
<<else>>
Even for as basic as the class is, you find yourself struggling, neither your strength, cardio or agility quite up to even this relatively low bar.
<</if>>
<</if>>
<br><br>
<<include workoutBreasts>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym lift accept help from random dude
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'bimbofication' 13 'very' $EXPOSED>>
<<else>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'little' $SEEN_STRANGER>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue 20>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
/% TODO: gym bunny + boyfriend %/
<<createAdvBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You angle to show off your ass while still facing the couple. You lick your lips and rub the words on your butt as you explain that "@@.pc;Knowledge cums at a price...@@"<br>
<br>
The woman grins, clearly picking up what you're laying down.<br>
<br>
"@@.generic_female1;Of course!@@" She eyes the words "CREAM FILLED" and smiles wider. "@@.generic_female1;So my <<man>> always needs to get off before and after each workout to maximise hormones... how about we grab a private room and you suck <<his>> pre-workout load out of my cunt while <<he>> pumps the post into that hot fucking ass of yours?@@"<br>
<br>
[<<moveTo "event_gym_weights_cum_event_2" "Accept her offer." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_weights_cum_event_2" 'Not today.' 1800 "<<set $scene.accept=false>>">>]
<<else>>
You shrug and reply that any body transformation is down to the usual hard work and dedication.<br>
<br>
The girl frowns, either hoping for an easier answer, or that you'd respond to the vibes she was putting out.<br>
<br>
The couple walks away and you finish your workout without further incident.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
</div>/*#
#desc: gym lift accept help from random dude
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'anal' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'cum' 13 'very' $SEEN_STRANGER>>
<<set $gym.events.cum_shorts = true>>
<<else>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'little' $SEEN_STRANGER>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyFatigue 20>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<else>>
<<set $player.location to "<<printShopName 'gym'>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
/% TODO: gym bunny + boyfriend %/
<<createAdvBGR "./images/locations/gym_private.png">>
<<else>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin at her offer and she slaps your ass before leading the way to a nearby private room.<br>
<br>
So far just going along with <<his>> enthusiastic girlfriend the <<man>> takes a bit of a lead as <<he>> adjusts the smith machine in the private room to bend you over the bar as the grinning woman arranges a bench in front of you and spreads her legs.<br>
<br>
"@@.generic_female1;Yeah, lick it all you cum-slut!@@" She crows in encouragement, holding your head with both hands and grinding against your face as her <<boy>>friend pounds you from behind with <<his>> slightly above-average cock.<br>
<br>
Your tongue probes deep, your initial <<if setup.getTotalValue("cum") > 10>>delicious <</if>>salty "prize" enhanced further when she turns out to be a squirter, climaxing hard all over your face at almost the exact same moment her <<boy>>friend shoots a thick load deep in your ass.<br>
<br>
You pant as the woman pulls you away by your hair, still bent over and moaning as the cock slides out of your ass and your plug gets to work keeping you from leaking. Feminine juices leaking down your chin you look at the woman with an unfocused gaze as she grins. "@@.generic_female1;Well, it looks like you enjoyed the toll... so, tell me, what's the secret to building dat ass?@@" Punctuating things the <<guy>> behind you helpfully snaps your tight shorts back into place.<br>
<br>
You reply that it's all about squatting heavy and deep — with a thick squat plug for tension and always remembering to stay on top of your nutrition.<br>
<br>
The woman grins as she steps out of the rack "@@.generic_female1;Hmm... looks like I need to pick me up a squat plug.@@" She walks past and gives yours a wiggle before you manage to stand back up. With an arm wrapped around her <<boy>>friend the couple leaves the room and you collect your thoughts and consider your next workout.
<<else>>
You reply that you really need to be getting back to your next set and the woman frowns.<br>
<br>
"@@.generic_female1;Damn... well, I guess we're off to deal with my <<boy>>friend's post-workout boost.@@"<br>
<br>
The two of them walk away and you resume your squats.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym accept megamilk offer
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
/%TODO: other two broteges%/
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You and the <<=$npc_swolebro.bro + "s">> head for one of the gyms private rooms. <<=setup.getNpcName("npc_swolebro","first")>> supervises as they re-arrange some equipment to give you a place to sit and you're about to get into position when <<he npc_swolebro>> makes a follow-up proposal.<br>
<br>
"@@.npc_swolebro;Say, so... given I got two growing <<boy npc_swolebro>>s here... how do you feel about turbo-charging production? By which I mean you take a ride in my lap on the bro-cannon and I give dat booty the business while these hungry pups drink their fill?@@"<br>
<br>
[<<moveTo "event_gym_cardio_megamilk_2" "Whatever it takes! Say you'd love to go for a ride." 1800 "<<set $scene.anal=true>>">>]<br>
[<<moveTo "event_gym_cardio_megamilk_2" "You're pretty sure you're milkers are already full enough that you'll be fine." 1800 "<<set $scene.anal=false>>">>]
<<else>>
You thank the <<=$npc_swolebro.bro + "s">> for the offer but reply that you don't have time today.<br>
<br>
"@@.npc_swolebro;It's that cardio! Robbing you of gainz!@@" The swole<<=$npc_swolebro.bro>> jokes before heading off, <<his npc_swolebro>> <<if $npc_swolebro.bro == "bro">>broteges<<else>>proteges<</if>> in tow.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
</div>/*#
#desc: gym accept megamilk w/anal offer
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gym.events.mega_milk = true>>
<<useClothSetPush 'tmp'>>
<<if $scene.anal>>
<<applyExperience 'anal' $npc_swolebro.penis_size 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_STRANGER>>
<<playerOrgasm>>
<<removeAllClothing>>
<<else>>
<<include "calcTopId">>
<<if $scene.topId != "">>
<<removeItem $scene.topId 'true'>>
<</if>>
<<set $scene.braId = setup.getItemFromType("bra")>>
<<if $scene.braId != "">>
<<removeItem $scene.braId 'true'>>
<</if>>
<<applyExperience 'bimbofication' 10 'very' $SEEN_STRANGER>>
<<changeHorny 10>>
<</if>>
<<set $scene.drained = $player.timebased.milking.milk_supply>>
<<set $player.timebased.milking.milk_supply = 0>>
<<applyStress -5>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
/%TODO: other two broteges%/
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
You say <<his npc_swolebro>> offer sounds great, stripping naked as <<=ps(setup.getNpcName("npc_swolebro","first"))>> takes a seat and unzips <<his npc_swolebro>> pants to reveal <<his npc_swolebro>> large, veiny cock.
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
You grin and take your seat, delighting at how the thick cock swells the hollow plug in your ass.
<<else>>
You grin and remove your plug before sitting back, enjoying the feel of such a nice cock in your ass.
<</if>>
<<else>>
You grin and take your seat, happy to have such a nice cock in your ass.
<</if>>
<br><br>
<<=ps(setup.getNpcName("npc_swolebro","first"))>> hands almost wrap all the way around your trim waist as <<he npc_swolebro>> gently takes hold of you and starts bouncing your body up and down like you don't weigh a thing.<br>
<br>
"@@.npc_swolebro;Alright, <<boy npc_swolebro>>s, thank the nice milk-<<switch $player.identify_as>><<case 'female' ''>>maid<<case 'male'>>man<<case 'fluid' 'agender'>>person<</switch>> for your treat — and I better not catch you biting or leaving hickies!@@"<br>
<br>
"@@.generic_male2;Yes, <<if $npc_swolebro.bro == "bro">>brofessor<<else>><<=setup.getNpcName("npc_swolebro","first")>><</if>>, thank you <<switch $player.identify_as>><<case 'female' ''>>ma'am<<case 'male'>>sir<<case 'fluid' 'agender'>><</switch>>.@@" They reply in unison before rising up towards you and wrapping their lips around your thick teats.<br>
<br>
Their strong lips joined by groping hands that squeeze your massive jugs you moan in delight, feeling each thrust up <<if $player.body_ref.penis>>into your prostate<<else>>inside your rear<</if>> as the <<men npc_swolebro>> suckle on your teats and the milk flows fast and thick.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
Getting "taken advantage" of... and yet wonderfully served by three strong <<men npc_swolebro>> at once turns you on something fierce, and, by the time your breasts run dry you are about to cum, and cum hard, a fact you breathlessly moan.<br>
<br>
"@@.npc_swolebro;You heard <<switch $player.identify_as>><<case 'female' ''>>the lady<<case 'male'>>the man<<case 'fluid' 'agender'>>them<</switch>>, get down there you two and make sure none of that bonus goes to waste!@@"<br>
<br>
Eagerly the <<men npc_swolebro>> drop to their knees,
<<if !setup.checkItemTypeWorn("cage")>>
one sucking your <<getWordMyPenis>> while the other sucks your balls and you cum, hard.
<<else>>
<<if setup.isCage()>>
joining forces to lick and kiss your cage as you leak your "cream."
<<else>>
licking the edge of your belt as you leak "cream."
<</if>>
<</if>>
<br><br>
Only once you have finished spurting do the two <<men npc_swolebro>> sit back and kiss, snowballing your load back and forth until it is evenly distributed and they gulp it down.
<<else>>
Just as they finish sucking your breasts dry you cum, moaning in delight as you clench down on the cock that somehow resists cumming in your butt.
<</if>>
<br><br>
You're a bit weak in the knees as <<=setup.getNpcName("npc_swolebro","first")>> casually lifts you up and off <<his npc_swolebro>> cock, <<his npc_swolebro>> two <<if $npc_swolebro.bro == "bro">>broteges<<else>>proteges<</if>> helping you dress before thanking you for the assistance.<br>
<br>
You wish the three of them "@@.pc;Fortune and gains.@@" And head on your way.
<<else>>
You decline <<=ps(setup.getNpcName("npc_swolebro","first"))>> offer and take your seat and <<he npc_swolebro>> nods. "@@.npc_swolebro;Right-o, you're the boss.@@" You look down; the two other <<guy npc_swolebro>>s kneeling before you and staring longingly at you chest as you slowly remove your top, teasing them the whole time. <<if $scene.bra>>The bra goes next and<<else>>They<</if>> look up at you with hunger, but seem to be waiting for the command.<br>
<br>
"@@.npc_swolebro;Alright, <<boy npc_swolebro>>s, thank the nice milk-<<switch $player.identify_as>><<case 'female' ''>>maid<<case 'male'>>man<<case 'fluid' 'agender'>>person<</switch>> for your treat — and I better not catch you biting or leaving hickies!@@"<br>
<br>
"@@.generic_male2;Yes, <<if $npc_swolebro.bro == "bro">>brofessor<<else>><<=setup.getNpcName("npc_swolebro","first")>><</if>>, thank you <<switch $player.identify_as>><<case 'female' ''>>ma'am<<case 'male'>>sir<<case 'fluid' 'agender'>><</switch>>.@@" They reply in unison before rising up towards you and wrapping their lips around your thick teats.<br>
<br>
You moan as they suck, their hands joining your own in supporting your massive milk-filled mammaries as your creamy deliciousness flows and they eagerly gulp it down.<br>
<br>
True to their instructions they are perfect <<if $npc_swolebro.fem>>ladies<<else>>gentlemen<</if>> — suckling softly as you moan with delight. By the time you are empty you have a content smile on your face, feeling a bit relaxed — and significantly lighter.<br>
<br>
They suck for an extra minute as if hoping you might produce a little more, but stand and bow in thanks before anything gets sore.<br>
<br>
They help you into your clothes and you stand to leave as <<=setup.getNpcName("npc_swolebro","first")>> taks a seat and reaches for <<his npc_swolebro>> bulging shorts. "@@.npc_swolebro;Thanks again — now it's time for these <<boy npc_swolebro>>s to get their protein chaser — remember, suck those balls, there's valuable test in that sweat!@@"<br>
<br>
You chuckle to yourself and leave the three of them to continue taking their "supplements."
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Get dressed and do something else." 180 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: gym "hardcore" lifting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.skip_swolebro = false>>
/* this is to prevent speeding through one class' content in the same visit */
<<if $scene.hasOwnProperty('swolebro') && $scene.swolebro>>
<<set $scene.skip_swolebro = true>>
<<elseif !$scene.skip_swolebro && $npc_swolebro.stage == 4>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+30)>>
<</if>>
<<switch $npc_swolebro.stage>>
<<case 2>>
<<if setup.getTotalValue("strength") < 10 || !$player.sec_style.sex.butt_plug>>
<<set $scene.skip_swolebro = true>>
<</if>>
<<case 3>>
<<if setup.getTotalValue("strength") < 13 || !$player.sec_style.sex.blowjob>>
<<set $scene.skip_swolebro = true>>
<</if>>
<<case 4>>
<<set $scene.skip_swolebro = $scene.swolebro || ($npc_swolebro.stage >= 4 && $player.sec_style.sex.anal && $player.sec_style.sex.blowjob && ($player.sec_style.sex.sex_man && !$npc_swolebro.fem || $player.sec_style.sex.sex_woman && $npc_swolebro.fem)) || random(1,10) <= 6>>
<<if !$scene.skip_swolebro>>
<<applyFatigue 15>>
<<set $now to setup.advanceDate($player, $now, "minutes", 15)>>
<<applyExperience 'strength' 14 'unbelievable' $EXPOSED>>
<<applyExperience 'cum' 13 'very' $EXPOSED>>
<<applyExperience 'oral' 7 'very' $EXPOSED>>
<<applyExperience 'penis' 9 'normal' $EXPOSED>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<if $scene.plugID != "">>
<<applyExperience 'anal' setup.getEffectivePlugSize() 'very' $EXPOSED>>
<</if>>
<</if>>
<</switch>>
<<set $scene.generic_swolebro = $npc_swolebro.stage < 4 && $scene.skip_swolebro && !$scene.swolebro>>
<<if $scene.generic_swolebro>>
<<applyExperience 'strength' 20 'skip' $EXPOSED>>
<<set $now to setup.advanceDate($player, $now, "minutes", 30)>>
<<applyFatigue 15>>
<</if>>
<<set $scene.swolebro = true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_swolebro.stage >= 4>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<<elseif $scene.skip_swolebro && !(setup.hasFreeTime($now, $player, $currentTasks, 3600) && $currentTasks.hasOwnProperty("hard_pump_contest"))>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<<else>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.skip_swolebro>>
<<if $npc_swolebro.stage >= 4 && $player.sec_style.sex.anal && $player.sec_style.sex.blowjob && ($player.sec_style.sex.sex_man && !$npc_swolebro.fem || $player.sec_style.sex.sex_woman && $npc_swolebro.fem)>>
You go looking for the group of hardcore lifters that call themselves the "Swole <<=$npc_swolebro.Bro + "s">>," but it seems like most of them have finished for the day and are nowhere to be found amongst the squat cages.<br>
<br>
<<set $scene.cum = false>>
<<include "swoleBroPrivateTraining">>
<<elseif $scene.generic_swolebro>>
You share another workout session with your friends the "Swole <<=$npc_swolebro.Bro + "s">>," lifting heavy and cheering each other on.<br>
<br>
<<if !State.hasPlayed("event_gym_swolebro_alpha_1")>>
[<<moveTo "event_gym_swolebro_alpha_1" "Continue." 60>>]
<<else>>
Feeling a proper "pump," you consider your next activity.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
<<else>>
You go looking for the group of hardcore lifters that call themselves the "Swole <<=$npc_swolebro.Bro + "s">>" unfortunately they seem to be prepping for a major comp and, as weak as you are, you feel like you'd be a distraction and decide to leave.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
<<else>>
<<switch $npc_swolebro.stage>>
<<case 1>>
Spotting a cluster of four large, muscular <<men npc_swolebro>> near the freeweights you walk up, saying <<=setup.getNpcName('npc_swolebro', 'first')>> said to talk to them about joining them to lift.<br>
<br>
As you talk, who do you see but <<=setup.getNpcName('npc_swolebro', 'first')>> sitting up having just finished up a set of bench press. <<His npc_swolebro>> four friends look you over silently, their eyes moving up and down your body as you subconsciously think about <<if $npc_swolebro.fem>>how small and effeminate you are, especially compared to their toned, Amazon-like selves<<else>>how small and effeminate you are, especially compared to their chiselled, jacked, single-digit body fat selves<</if>>.<br>
<br>
Finally <<=setup.getNpcName('npc_swolebro', 'first')>> breaks the silence. "@@.npc_swolebro;Always glad to have another recruit to the church of iron. You have permission to approach the bench — let's see what you got!@@"<br>
<br>
[<<moveTo "event_gym_swolebro_1" "Approach the bench." 1800>>]<br>
[<<moveTo "room_gym_main" "Chicken out and flee." 60>>]
<<case 2>>
You find the "Swole <<=$npc_swolebro.Bro + "s">>", as always, with the free weights. As you walk up, one of them finishes a heavy set of squats, racking the weight and walking out of the cage to much chest-slapping and celebration.<br>
<br>
"@@.npc_swolebro;Great job, <<=$npc_swolebro.bro>>!@@"<br>
<br>
"@@.generic_male1;Way to make it look light!@@"<br>
<br>
"@@.generic_male2;I told you that larger squat plug would make the difference!@@"<br>
<br>
<<printThought "Squat plug? What's that?">><br>
<br>
Noticing your approach, your <<if $npc_swolebro.fem>>amazon<<else>>ripped<</if>> friends greet you as they shuffle weights for the next <<man npc_swolebro>> to do <<his npc_swolebro>> set.<br>
<br>
[<<moveTo "event_gym_swolebro_2" "Ask what a squat plug is." 120 "<<set $scene.ask_plug = true>>">>]<br>
[<<moveTo "event_gym_swolebro_2" "Just wait for your turn to squat." 1200 "<<set $scene.ask_plug = false>>">>]
<<case 3>>
You meet your friends the "Swole <<=$npc_swolebro.Bro + "s">>" for another lifting session. Greeting you with a smile, one of them gives you a welcoming slap on the ass.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.npc_swolebro;What? Nothing inside? You need to remember to come prepared if are going maximize your workout time.@@"
<<else>>
"@@.npc_swolebro;That's <<switch $player.identify_as>><<case 'female' ''>>my girl<<case 'male'>>my boy<<case 'fluid' 'agender'>>what I'm talkin' about<</switch>>!@@" <<He npc_swolebro>> states, giving your plug a wiggle before removing <<his npc_swolebro>> hand. "@@.npc_swolebro;You ready to have a nice fullfilling workout?@@"
<</if>>
<br><br>
You smile as your warm-up set is racked and step under the bar.<br>
<br>
[<<moveTo "event_gym_swolebro_3" "Lift!" 300>>]
<<case 4>>
You share another workout session with your friends the "Swole <<=$npc_swolebro.Bro + "s">>," lifting heavy<<if $fetish.cum>> and then rewarded with a nice fresh "protein drink." <<else>>and really getting your pump on.<</if>><br>
<br>
<<if !State.hasPlayed("event_gym_swolebro_alpha_1")>>
[<<moveTo "event_gym_swolebro_alpha_1" "Continue." 60>>]
<<else>>
<<set $scene.cum = true>>
<<if $npc_swolebro.stage >= 4 && $player.sec_style.sex.anal && $player.sec_style.sex.blowjob && $player.sec_style.sex.anal && ($player.sec_style.sex.sex_man && !$npc_swolebro.fem || $player.sec_style.sex.sex_woman && $npc_swolebro.fem)>>
<<include "swoleBroPrivateTraining">>
<<else>>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
<</if>>
<<default>>
ERROR; unexpected npc_swolebro.stage <<=$npc_swolebro.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: first time joining the "hardcore" lifters
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_swolebro.stage = 2>>
<<if setup.getTotalValue("strength") <= 10>>
<<applyExperience 'humiliation' 4 'very' $EXPOSED>>
<</if>>
<<applyExperience 'strength' 8 'very' $EXPOSED>>
<<applyFatigue 15>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",15]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+15)>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
All eyes are on you as you nervously lay back on the bench, the four <<men npc_swolebro>> clustering around, two re-racking the weights and one moving into position near your head to squat.<br>
<br>
Looking up you can't help but be aware of <<his npc_swolebro>> columnar thighs, <<his npc_swolebro>> tight shorts highlighting an obvious bulge, so close you can smell <<his npc_swolebro>> ballsweat...<br>
<br>
"@@.generic_male1;You gonna lay there, or you gonna lift?@@" One of them jokes, jolting you back to attention.<br>
<br>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
The bar practically flies, so far below your work weight you hardly notice it's there. The <<men npc_swolebro>> gawk in surprise as you ask for another hundred kilos. On each side. Repping those out as well as they stare, stunned.
<<else>>
The weight they put on the bar would be barely enough for a warm-up and you ask for another plate on each side, the <<men npc_swolebro>> initially dubious, then obviously impressed when you rep it with ease, nods and smiles of approval greeting you as you sit back up.
<</if>>
<br><br>
"@@.npc_swolebro;Wow, so, like, dunno what all we can teach you about strength, really but, hey, you're welcome to join us any time!@@"
<<else>>
<<if setup.getTotalValue("strength") > 5>>
Though you have to strain a bit you do manage to move the weight they put up for you, only needing your spotter's assistance for the final rep when you stall out a couple centimetres off your chest.
<<else>>
You barely manage to even unrack the weight they've given you, stalling out on the first rep as the spotter is forced to lift it off your chest. Which <<he npc_swolebro>> does. With ease. One handed.
<</if>>
<br><br>
You feel embarrassed as you sit up, certain that they are about to laugh at you and send you away for your pathetic performance. Instead <<=setup.getNpcName('npc_swolebro', 'first')>> smiles and sits down next to you, giving you a glad hand slap on the back and words of encouragement. "@@.npc_swolebro;Alright, well, it looks like you've still got some work to do under the bar, but hey, you've started the journey and that's the important part. You're welcome to work in with us any time.@@"
<</if>>
<br><br>
The other <<men npc_swolebro>> introduce themselves to you with wide smiles and glad-handing slaps on the back. As a group, they call themselves the Swole <<=$npc_swolebro.Bro + "s">> and the lot of you spend some time lifting heavy things and then putting them back down.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym "hardcore" lifting squat plug option
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.ask_plug>>
<<applyExperience 'strength' 13 'very' $EXPOSED>>
<</if>>
<<applyFatigue 20>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
<<if $scene.ask_plug>>
As the next <<man npc_swolebro>> moves under the bar to start <<his npc_swolebro>> squat set, you sidle up to your friend to ask what a "squat plug" is.<br>
<br>
"@@.npc_swolebro;You've never heard of a squat plug? <<=$npc_swolebro.Bro>>! You're missing out. Y'see, lifting is all about tension, right? That's why you're always focusing on staying tight and how using a belt or a squat suit or whatnot can help you move more weight. Well, a squat plug is just applying that principle from the inside out. Squats are all about the glutes, so to help maximize muscle activation, well, it helps to have something to clamp down on.@@"<br>
<br>
You think <<he npc_swolebro>> has to be taking the piss, but then you glance at one of the other <<guy npc_swolebro>>s with <<his npc_swolebro>> back to you, and recognise a tell-tale shape betwixt <<his npc_swolebro>> cheeks.<br>
<br>
"@@.npc_swolebro;Yup, I'm telling you, the first time you settle back into a deep squat and have that nice thick plug to clamp down on... well... you won't want to lift empty again!@@"<br>
<br>
<<printThought "That's kind of weird, but, well... between the two of us <<he npc_swolebro>> is definitely more knowledgeable when it comes to lifting heavy.">><br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.getTotalValue("bimbofication") > 10 || $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_gym_swolebro_2_plug" "Proudly announce that, of course, you're plugged." 1580 "<<set $scene.brazen=true>>">>]<br>
<</if>>
[<<moveTo "event_gym_swolebro_2_plug" "Shyly confirm that, actually, you're plugged right now." 1580 "<<set $scene.brazen=false>>">>]<br>
<<else>>
[<<moveTo "event_gym_swolebro_2_plug" "Ask if maybe <<he npc_swolebro>> has a spare squat plug you could try out?" 1580>>]<br>
<</if>>
[<<moveTo "event_gym_swolebro_2" "Just lift normally." 1580 "<<set $scene.ask_plug = false>>">>]
<<else>>
You work in a few sets with the other "Swole <<=$npc_swolebro.Bro + "s">>" doing heavy squats. Everyone is very encouraging as you push yourself hard enough to stagger a bit when you finally rack, but there's no doubt that, even relative to your size you're the weakling of the group.<br>
<br>
By the end of the set your thighs are burning and you're a bit winded, but you feel like you've accomplished something.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
</div>/*#
#desc: hardcore lifters, lift with squat plug
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_swolebro.stage = 3>>
<<setThreshold 'strength' 'gym_strength' 'swolebro_1'>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if !setup.checkItemTypeWorn("plug")>>
<<addItem "squat_plug">>
<<wearItem "squat_plug" true>>
<<applyExperience 'humiliation' 8 'terrible' $EXPOSED>>
<<setThreshold 'anal' 'plugs' 'squat_plug'>>
<<else>>
<<if $scene.brazen>>
<<applyExperience 'bimbofication' 12 'very' $EXPOSED>>
<</if>>
<<applyExperience 'humiliation' 8 'very' $EXPOSED>>
<</if>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('strength')>>
<<applyFatigue 20>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.plug == "">>
It seems a little weird how casually you ask a <<if $npc_swolebro.fem>>girl<<else>>dude<</if>> in a public gym if <<he npc_swolebro>> has a butt plug, sorry "squat plug," you could use, but <<=setup.getNpcName('npc_swolebro', 'first')>> just grins. "@@.npc_swolebro;Hell yeah! How could I leave a fellow lifter empty and weak!@@"<br>
<br>
Heading to <<his npc_swolebro>> gym bag <<he npc_swolebro>> digs around and then comes up with a brand new shrink-wrapped butt plug.<br>
<br>
"@@.npc_swolebro;You'll be wanting to upgrade to something bigger down the road, of course, but this should be good as an introduction to kind of "open your mind" to the new possibilities, a nice full stretch, but not so advanced it overly distracts from the lift.@@"<br>
<br>
You nod as <<he npc_swolebro>> unwraps the plug and slathers it up with the included packet of lube.<br>
<br>
"@@.npc_swolebro;Alright, bend over like you're doing a good morning stretch and we'll get this installed!@@"<br>
<br>
You do as indicated, legs shoulder width apart and bending at the hips. <<He npc_swolebro>> gently pulls down your pants and then presses the plug against your pert hole.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
The plug is not exactly small, but definitely not "large" by your standards and it easily slides into your hungry hole.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
It's big, but between <<his npc_swolebro>> strength and the slick lube it pops into place.
<<else>>
It's big. REALLY big, but between <<his npc_swolebro>> strength and the slick lube it suddenly pops into you. You're wide-eyed and trembling a bit as you adjust to the massive intruder.
<</if>>
<</if>>
<br><br>
You let out a gasp, that becomes a bit of a moan when <<he npc_swolebro>> palms the base of the plug, grabbing your ass and jiggling everything, your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> crying out with joy.<br>
<br>
"@@.npc_swolebro;There we go, nice and set.@@" <<He npc_swolebro>> states as you pull up your pants and adjust to the new fullness.<br>
<br>
"@@.npc_swolebro;Good, good, it fit great, now let's see what you can do with it!@@"
<<else>>
<<if $scene.brazen>>
You grin, and explain that your booty is already stuffed and plugged... and you didn't even know it had these additional benefits!<br>
<br>
<<=setup.getNpcName('npc_swolebro', 'first')>> grins as you turn around and flex your rear to show the shape of the plug straining under your clothing.<br>
<br>
<<he npc_swolebro>> gives you a friendly slap on the ass as <<he npc_swolebro>> congratulates you. "@@.npc_swolebro;Dang, you're really built to go big! THICC, stuffed, and strong, a real freak. I love it! Now let's get that bar loaded and see you really FLEX.@@"
<<else>>
<<if $player.flags.humiliationStyle == "brazen">>
You smile mischievously and note that actually, you're already plugged.
<<else>>
You blush in embarrassment and whisper that you're actually already plugged.
<</if>>
<br><br>
"@@.npc_swolebro;Damn! Of course you are. See, I knew there was something special about you when I came up to you. Come on, lemme see.@@"<br>
<br>
Before you can think better of it, you've turned around and <<hes npc_swolebro>> fingering the base of the plug through your gym clothes.<br>
<br>
"@@.npc_swolebro;Aww yeah, that's in there good, you really are a natural at this sort of thing. Come on, let's see you squat!@@"
<</if>>
<</if>>
<br><br>
Stepping into the cage, you gawk a bit as enough weight to be a PR is thrown on the bar.<br>
<br>
"@@.npc_swolebro;Alright, now you're plugged and ready, really focus on how it feels between your glutes, especially when you're nice and deep in the hole.@@"<br>
<br>
Taking a deep breath, you squat down, focusing on the plug, how full and occupied and tight it makes you feel. You imagine it sliding deeper as you squat down, the weight "forcing" you onto it, deeper... fuller... with a start, you realise that your thighs have touched your calves, you're ALL the way down. Gritting your teeth, you push... and you start to rise, clenching and squeezing down on your anal companion as the other Swole <<=$npc_swolebro.Bro + "s">> hoot and holler.<br>
<br>
"@@.generic_male1;Light weight!@@" "@@.generic_male2;Took it DEEP!@@" "@@.generic_male3;All the way up!@@"<br>
<br>
There's a cheer as you finish, knees straightening and holding for a moment before shuffling forward to rack the weight.<br>
<br>
The weight removed from your shoulders, you suddenly feel weak, wobbling for a moment before your friend appears at your side for stability.<br>
<br>
"@@.npc_swolebro;Great job! That was a LIFT!@@" <<He npc_swolebro>> punctuates <<his npc_swolebro>> words by giving you a slap on the ass, <<his npc_swolebro>> fingers lingering to rub the plug through your clothes. "@@.npc_swolebro;See what I was saying? Squat plug, helpin' unlock those deep reserves of strength.@@"<br>
<br>
You nod and... moan? Softly as <<he npc_swolebro>> leads you to a seat. You have a short rest then work in for a couple lighter work sets before calling it a day, having unlocked a new tier of strength.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: gym "hardcore" lifting protein drink
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 20>>
<<set $scene.exercise +=1>>
<<alterStatAllWorn 'sweaty' '["add",20]'>>
<<set $player.timebased.dirty = Math.min(100,$player.timebased.dirty+20)>>
<<applyExperience 'strength' 13 'unbelievable' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemTypeWorn("plug")>>
You move through your lifting routine. From the first warm-up you can notice the emptiness in your rear and while all of your friends are as encouraging as ever, you can tell in your gut, or would it be better termed your ass? That without a proper squat plug you just aren't going to see the results you want.<br>
<br>
You finish up lifting without incident.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 1200>>]
<<else>>
The plug in your ass having you feeling frisky and energetic you almost skip over to the deadlift platform, smiling at your friends before bending over at the hips to grab the bar with both hands and then drop your hips deep.<br>
<br>
<<if setup.getEffectivePlugSize() >= 10>>
You clench down on the big plug filling your ass, the wonderful rear occupant focusing your muscle activation as you push off the floor, easily going all the way to lockout for one, two, three deep reps that have your heart pounding and your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> moaning.<br>
<br>
Staggering off the platform to recover, you join your friends off the side as someone else works in. Several of you each efficiently work in amongst each other's sets and by the time you're finished with your final set you're a bit light headed and exhausted.<br>
<br>
As you stand around and chat, another <<if $npc_swolebro.fem>>girl<<else>>dude<</if>> finishes <<his npc_swolebro>> set and walks over with a wide grin.<br>
<br>
"@@.generic_male1;So, which one of you weaklings wants a post-workout hormone supplement?@@"<br>
<br>
"@@.generic_male2;How about <<=$player.first_name>>? <<switch $player.identify_as>><<case "male">>He<<case "female">>She<<case "agender" "fluid">>They<</switch>> really pushed it out today!@@" A second <<man npc_swolebro>> chirps.<br>
<br>
One of the other <<guy npc_swolebro>>s recognises your obvious look of confusion, "@@.generic_male3;So <<if $npc_swolebro.fem>>Mary<<else>>Mark<</if>> is in a cutting cycle right now, so <<he npc_swolebro>> needs to bleed off excess energy post-workout and, well, no sense letting all those nutrients <<if !$npc_swolebro.fem>>and testosterone <</if>>go to waste...@@"<br>
<br>
Eying the bulge in <<if $npc_swolebro.fem>>Mary's<<else>>Mark's<</if>> tight compression pants, you instantly understand what <<hes npc_swolebro>> offering.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
<<printThought "Cum has health benefits? Like, yay! It really is the best substance on earth!">>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<printThought "I guess there's a bit of logic there... still seems kind of strange.">>
<<else>>
<<printThought "There's no way that's true yet... nobody's laughing... is this some weird hazing ritual?">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_gym_swolebro_3_suck" "Accept the offer and suck <<if $npc_swolebro.fem>>Mary<<else>>Mark<</if>> off." 300 "<<set $scene.suck = true>>">>]<br>
[<<moveTo "event_gym_swolebro_3_suck" "Decline the offer." 60 "<<set $scene.suck = false>>">>]
<<else>>
Stepping into position on the deadlift platform you feel the squat plug tightening everything up nice and good. Moving through the routine you are doing well until your final set where things just fall apart a bit and you end up stalling and bailing just a couple centimetres off the floor.<br>
<br>
Walking back to your fellow lifters, they are quick to offer comfort.<br>
<br>
"@@.npc_swolebro;It happens, don't focus on it but... well, it looked to me like you were losing a bit of tension towards the end and that's where things went wrong. Have you considered a larger squat plug? I think it could really solve your issues and let you push past this plateau.@@"<br>
<br>
You thank <<him npc_swolebro>> for the advice as you have a drink of water and wander off.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: suck cock after lifting for the first time
#status: FINISHED 0.7.0.0
#ignore_spell: 'tis
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<if $fetish.cum>>
<<setThreshold 'cum' 'gym_cum' 'gym_cum'>>
<<applyExperience 'cum' 13 'very' $EXPOSED>>
<</if>>
<<setThreshold 'strength' 'gym_strength' 'swolebro_2'>>
<<applyExperience 'oral' 7 'very' $EXPOSED>>
<<applyFatigue -10>>
<<set $npc_swolebro.stage = 4>>
<<if !$options.fem>>
<<set $gym.lewd_male = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
<<if setup.getTotalValue("bimbofication") > 10>>
You eagerly
<<else>>
Still not sure if this isn't an elaborate prank, you
<</if>>
follow <<if $npc_swolebro.fem>>Mary<<else>>Mark<</if>> into a private side room where <<he npc_swolebro>> gently closes the door behind.<br>
<br>
You turn back and <<his npc_swolebro>> cock is out, <<his npc_swolebro>> big, hard cock.<br>
<br>
<<He npc_swolebro>> grins as you stand momentarily transfixed.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("penis") > 10>>
<<printThought "This is really happening!">>
<<else>>
<<printThought "This is really happening...">>
<</if>>
<br><br>
As if in a trance, you walk towards <<him npc_swolebro>>, sliding to your knees, your lips parting to wrap around <<his npc_swolebro>> moist tip, tongue lapping up the beading precum.<br>
<br>
You look up at <<him npc_swolebro>> with your mouth full of cock. <<He npc_swolebro>> smiles down and nods for you to continue.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
<<Hes npc_swolebro>> big enough that you're able to show off a bit, hilting <<him npc_swolebro>> with ease as <<he npc_swolebro>> gasps out a "holy shi-" only for any further words to descend into mumbled incoherence as you bring the full power of your cock-caressing throat, nimble tongue and dick-sucking lips to bear.
<<else>>
Angling your neck you let <<him npc_swolebro>> slide down your throat, a moan of pleasure escaping <<his npc_swolebro>> lips as you go to work with all of your consummate skills.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<Hes npc_swolebro>> too big for you to deepthroat, so you just focus on the tip, sucking and licking away, <<his npc_swolebro>> quickening breaths indicating that <<he npc_swolebro>> is quite enjoying it.
<<else>>
It's a bit of a conundrum how to deal with something this big, but you do your best, bobbing and sucking and licking (and more than occasionally gagging) in an effort to get <<him npc_swolebro>> off.
<</if>>
<</if>>
<br><br>
Whether due to your skill, the situation, or <<he npc_swolebro>> was already turned on to begin with it isn't long before <<he npc_swolebro>> explodes, flooding your mouth with
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly "cream."
<<else>>
delicious cum.
<</if>>
You eagerly swallow every drop, sucking and licking and massaging <<his npc_swolebro>> balls until <<he npc_swolebro>> slowly wilts and there is nothing left for you to drink.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty, bitter cum.
<<else>>
pungent cum.
<</if>>
You try to pull back, but <<his npc_swolebro>> strong hands are suddenly cradling your head.<br>
<br>
"@@.generic_male1;Just relax, take it all, that's a good girl...@@" <<he npc_swolebro>> coos as you frantically gulp and swallow lest you drown.
<</if>>
<br><br>
"@@.generic_male1;Mmmm, that was good, you sucked out a real good load there! How's it feel to have all that power swimming through your veins?@@"<br>
<br>
You smile and catch your breath as <<he npc_swolebro>> helps you to your feet.<br>
<br>
"@@.generic_male1;They say lifting is a solitary sport but, well, it's moments like these, when one helps a fellow initiate of iron that well... 'tis a beautiful thing.@@"<br>
<br>
Stowing <<his npc_swolebro>> cock, <<he npc_swolebro>> heads back towards the door. You half expected a reaction, that this was some sort of hazing ritual, but everyone seems focused on the <<man npc_swolebro>> currently up on the platform, only one or two other Swole <<=$npc_swolebro.Bro + "s">> even acknowledging your return with a grin or a slight nod.<br>
<br>
Feeling remarkably refreshed, you're tempted to jump back in for another set but, mindful of the risk of over training, you decide to leave a few in the tank.
<<else>>
<<if $npc_swolebro.fem>>Mary<<else>>Mark<</if>> shrugs as you shake your head. Almost immediately another <<guy npc_swolebro>> quickly hops off the bench to take your place, the two of them heading into a small side room together.<br>
<br>
Emerging a few minutes later, <<if $npc_swolebro.fem>>Mary<<else>>Mark<</if>> has traded the bulge in <<his npc_swolebro>> pants for a satisfied smile on <<his npc_swolebro>> face, the other <<guy npc_swolebro>> licking <<his npc_swolebro>> lips and, well, it has to be a trick of the light, but you'd swear <<hes npc_swolebro>> looking a little bigger and vascular than a few minutes before.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 300>>]
</div>/*#
#desc: alpha approaches swolebros
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
You're finishing up another workout when a giant, ripped <<if $npc_swolebro.fem>>dudette<<else>>dude<</if>> you don't recognise approaches the "Swole <<=$npc_swolebro.Bro + "s">>," striking a confident, flexing pose <<he npc_swolebro>> does a quick introductory chin-raise and says "@@.generic_male1;Yo! I heard this is the hardcore lifting group at this gym? Tell me, which of you is the Alpha of this pack?@@"<br>
<br>
There is a tense moment of stand-off as <<=setup.getNpcName('npc_swolebro', 'first')>> and the other "Swole <<=$npc_swolebro.Bro + "s">>" glance back and forth at one another... then they start laughing.<br>
<br>
"@@.npc_swolebro;Alpha? The fuck you talkin' about <<=$npc_swolebro.bro>>? Like, call us a wolf pack? Yeah, that's fine, wolves are fuckin' sweet... but the pack works together to accomplish what it couldn't on its own, that whole Alpha shit is bunk!@@"<br>
<br>
"@@.generic_male2;Yeah! The author literally spent the rest of his career trying to correct his mistake!@@"<br>
<br>
"@@.generic_male3;That's right, takes a real strong man to not only acknowledge his mistake, but devote his life to addressing it. Fuckin' legend!@@"<br>
<br>
Whatever reaction the intruder may have been prepared for, it wasn't this, and <<he npc_swolebro>>'s still sputtering when <<=setup.getNpcName('npc_swolebro', 'first')>> suddenly gets serious. "@@.npc_swolebro;Wait... so-called Alpha behaviour was only seen with wolves under the pressure of captivity... bro... do you feel captive? Are you a prisoner of your own doubts and societal expectations? Because if you are... we're here for you man.@@"<br>
<br>
"@@.generic_male2;Yeah, <<=$npc_swolebro.bro>>. It takes real strength to ask for help...@@"<br>
<br>
The intruder has now gone through a more hectic journey than most roller-coasters and, surrounded by the "Swole <<=$npc_swolebro.Bro + "s">>" <<he npc_swolebro>> cracks, cathartic tears swiftly met with muscly pats on the back and <<=$npc_swolebro.bro>>-hugs.<br>
<br>
"@@.npc_swolebro;You let it out, <<if $npc_swolebro.fem>>dudette<<else>>dude<</if>>, come on, let's do some curls and talk about our feelings...@@"<br>
<br>
"@@.generic_male1;Yeah... I need that, I can feel my pump fading a bit...@@"<br>
<br>
"@@.generic_male2;Don't worry <<=$npc_swolebro.bro>>, you're still lookin' big...@@"<br>
<br>
You take a step back and watch as the new member is welcomed into the "pack" and then, your own workout finished, leave them to continue inducting their new <<=$npc_swolebro.bro>>.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 300>>]
</div><<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<=setup.getNpcName('npc_swolebro', 'first')>> glances towards the gym's private rooms. "@@.npc_swolebro;Looks like the private rooms are all filled up, maybe some other time.@@"<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<elseif $scene.cum>>
Licking your lips in <<if $fetish.cum>>salty <</if>>satisfaction, you
<<if $currentTasks.hasOwnProperty("hard_pump_contest")>>
are considering your next activity
<<if State.hasPlayed("event_gym_strength_private_1_3")>>
you notice <<=setup.getNpcName('npc_swolebro', 'first')>> is getting ready to head to one of the private rooms and you remember your last private session.<br>
<br>
<<if State.hasPlayed("event_gym_strength_private_2_3")>>
[<<moveTo "event_gym_strength_private_3_1" 'Follow <<=setup.getNpcName("npc_swolebro", "first")>> for another private strength training session?' 600>>]<br>
<<else>>
[<<moveTo "event_gym_strength_private_2_1" "Ask about another private strength training session?" 600>>]<br>
<</if>>
<<if State.hasPlayed("event_janitor_training_primrose_4")>>
<<if State.hasPlayed("event_janitor_training_2_forcefem_4") || State.hasPlayed("event_janitor_training_2_femboy_4") || State.hasPlayed("event_janitor_training_2_tomboy_4") || State.hasPlayed("event_janitor_training_2_fuckboy_4")>>
[@@.link_locked;You've already gotten <<=setup.getNpcName("npc_janitor", "first")>> some fitness assistance.@@]<br>
<<else>>
[<<moveTo "event_janitor_training_2_fuckboy_1" 'Ask if <<=setup.getNpcName("npc_swolebro", "first")>> and the swole<<=$npc_swolebro.bro>>s could help out <<=setup.getNpcName("npc_janitor", "first")>>?' 120>>]<br>
<</if>>
<</if>>
[<<moveTo "room_gym_main" "Go do something else." 60>>]
<<else>>
activity when <<=setup.getNpcName('npc_swolebro', 'first')>> walks up to you with a grin. "@@.npc_swolebro;Yo, so I heard you registered for the Miss Hard Pump comp? Right on! Competition is always a great way to help focus and really break through a plateau. That said, if you're looking podium you need to clamp down and focus on peaking in time for the event. There's some special routines I could coach you through, if you're interested.@@"<br>
<br>
[<<moveTo "event_gym_strength_private_1_1" "Say you're ready to go hard." 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_gym_strength_private_1_1" "Some other time." 60 "<<set $scene.accept = false>>">>]
<</if>>
<<else>>
consider your next activity.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
<<else>>
<<if $currentTasks.hasOwnProperty("hard_pump_contest")>>
<<if State.hasPlayed("event_gym_strength_private_1_3")>>
You notice <<=setup.getNpcName('npc_swolebro', 'first')>> is getting ready to head to one of the private rooms and you remember your last private session.<br>
<br>
<<if State.hasPlayed("event_gym_strength_private_2_3")>>
[<<moveTo "event_gym_strength_private_3_1" 'Follow <<=setup.getNpcName("npc_swolebro", "first")>> for another private strength training session?' 600>>]<br>
<<else>>
[<<moveTo "event_gym_strength_private_2_1" "Ask about another private strength training session?" 600>>]<br>
<</if>>
<<if State.hasPlayed("event_janitor_training_primrose_4")>>
<<if State.hasPlayed("event_janitor_training_2_forcefem_4") || State.hasPlayed("event_janitor_training_2_femboy_4") || State.hasPlayed("event_janitor_training_2_tomboy_4") || State.hasPlayed("event_janitor_training_2_fuckboy_4")>>
[@@.link_locked;You've already gotten <<=setup.getNpcName("npc_janitor", "first")>> some fitness assistance.@@]<br>
<<else>>
[<<moveTo "event_janitor_training_2_fuckboy_1" 'Ask if <<=setup.getNpcName("npc_swolebro", "first")>> and the swole<<=$npc_swolebro.bro>>s could help out <<=setup.getNpcName("npc_janitor", "first")>>?' 120>>]<br>
<</if>>
<</if>>
[<<moveTo "room_gym_main" "Go do something else." 60>>]
<<else>>
"@@.npc_swolebro;Yo, so I heard you registered for the Miss Hard Pump comp? Right on! Competition is always a great way to help focus and really break through a plateau. That said, if you're looking podium you need to clamp down and focus on peaking in time for the event. There's some special routines I could coach you through, if you're interested.@@"<br>
<br>
[<<moveTo "event_gym_strength_private_1_1" "Say you're ready to go hard." 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_gym_strength_private_1_1" "Some other time." 60 "<<set $scene.accept = false>>">>]
<</if>>
<<else>>
<<=setup.getNpcName('npc_swolebro', 'first')>> spots you and nods. "@@.npc_swolebro;Hey! Lookin' good... have you considered enrolling in the Miss Hard Pump Contest? Having a comp to train for is a great way to focus your motivation.@@"<br>
<br>
You thank <<him npc_swolebro>> for the tip before <<he npc_swolebro>> continues on <<his npc_swolebro>> way.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
<</if>>/*#
#desc: strength private - decline bench blowjob intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You thank <<=setup.getNpcName('npc_swolebro', 'first')>> for the offer and say you'd like <<him npc_swolebro>> to coach you a bit before the comp. "@@.npc_swolebro;Right on, why don't you grab a bar and I'll get the plates and we'll use one of the private rooms. We need to be able to go all out without distractions.@@"<br>
<br>
<<printThought "Hmm, sounds like this is probably going to involve sex...">><br>
<br>
[<<moveTo "event_gym_strength_private_1_2" "Grab a bar and meet <<him npc_swolebro>> in the room." 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_gym_strength_private_1_2" "Change your mind." 60 "<<set $scene.accept = false>>">>]
<<else>>
You decline <<=ps(setup.getNpcName('npc_swolebro', 'first'))>> offer to assist in your comp prep. "@@.npc_swolebro;No prob, but don't put off your preparations too long, strength is a marathon, not a sprint. Hit me up if you change your mind.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
<</if>>
</div>/*#
#desc: strength private - decline bench
#status: RELEASED 0.8.8.0
#ignore_spell: superset
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'strength' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_swolebro.penis_size 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You meet <<=setup.getNpcName('npc_swolebro', 'first')>> in one of the private training rooms where <<he npc_swolebro>> sets things up for a decline bench press. A moderate intensity warm-up has you feeling the pump and <<he npc_swolebro>> slaps on another set of plates to make it properly heavy.<br>
<br>
"@@.npc_swolebro;Alright, today is all about focusing on the upper body. Remember, tension is power, you want to feel the rep all the way through, clean, smooth and maximum gains.@@"<br>
<br>
<<He npc_swolebro>> shuffles forward to spot and help you rack, <<his npc_swolebro>> tight shorts barely a hands-breadth from your face as you take a deep breath in preparation and get a lungful of <<his npc_swolebro>> testicular musk.<br>
<br>
Pulling <<his npc_swolebro>> hands away from the bar once you're locked out in position <<he npc_swolebro>> watches closely as you start your first set.<br>
<br>
"@@.npc_swolebro;That's right, you got this, all the way down, touch the chest, now up, up, up! Yeah, that's right, and again, light weight! And up, perfect, perfect, now we're going for a pause this time down, down, hold it... now up, up with power!@@"<br>
<br>
You catch your breath at the top feeling a bit of a tremble as you stay focused on the lift and <<he npc_swolebro>> leans in closer just in case. "@@.npc_swolebro;One more rep now, you got this!@@" <<He npc_swolebro>> calls out and you let the weight lower. You almost stall at the bottom but with a grunt, and <<his npc_swolebro>> continued verbal encouragement you manage to push it all the way up where <<he npc_swolebro>> instantly helps guide you back onto the rack.<br>
<br>
"@@.npc_swolebro;Fantastic, now super set!@@" <<He npc_swolebro>> states as <<he npc_swolebro>> whips out <<his npc_swolebro>> <<getWordPenis "npc_swolebro">> right into your face. <<His npc_swolebro>> body isn't the only thing that's swole, swelled, and rock hard as you realise the angle of the decline bench has you perfectly aligned to take <<him npc_swolebro>> straight into your throat.<br>
<br>
[<<moveTo "event_gym_strength_private_1_3" "Superset!... or is that super suck?" 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_gym_strength_private_1_3_abort" "This isn't the workout you had in mind." 60 "<<set $scene.accept = false>>">>]
<<else>>
You tell <<=setup.getNpcName('npc_swolebro', 'first')>> you just remembered something else you needed to do and <<he npc_swolebro>> shrugs, putting the stack of plates casually back down.<br>
<br>
"@@.npc_swolebro;No prob, just... lemme know when you have some proper time to get some reps in. I'll be around.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
<</if>>
</div>/*#
#desc: strength private - bench blowjob decline
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'strength' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
This isn't the sort of workout you were looking for and you sit up in a huff.<br>
<br>
"@@.npc_swolebro;Hey, sorry!@@" <<=setup.getNpcName('npc_swolebro', 'first')>> states, sounding genuinely apologetic. "@@.npc_swolebro;I thought that it was clear that we were going to be going extra hard but if you aren't down for that then... well, that's the way it is.@@"<br>
<br>
<<He npc_swolebro>> stuffs <<his npc_swolebro>> meat muscle back into <<his npc_swolebro>> shorts and gestures for you to continue. You end up having a fairly productive session... though you have a nagging feeling that you're missing out not going as "hard" as you could be...<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
</div>/*#
#desc: strength private - bench blowjob
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'strength' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_swolebro.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
You open your mouth and <<=ps(setup.getNpcName('npc_swolebro', 'first'))>> <<getWordPenis "npc_swolebro">> thrusts forward directly into your throat.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
At this perfect angle taking <<him npc_swolebro>> is all but trivial and you soon have <<his npc_swolebro>> heavy balls pressed against your eyelids as <<he npc_swolebro>> bulges your throat.
<<else>>
Under normal conditions <<he npc_swolebro>> might be a slight struggle but the angle is perfect and your throat is instantly bulging with <<his npc_swolebro>> balls filling your vision.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<He npc_swolebro>>'s a bit too big for you but the angle surprisingly helps and you flinch as <<his npc_swolebro>> balls come almost to your eyes.
<<else>>
Even at this perfect angle <<he npc_swolebro>>'s too big and you gag before <<he npc_swolebro>>'s more than past the entrance to your throat.
<</if>>
<</if>>
"@@.npc_swolebro;That's right, feel the tension.@@" <<He npc_swolebro>> instructs as <<he npc_swolebro>> thrusts slightly. "@@.npc_swolebro;This is active recovery, focus, visualise the next lift and let the power flow through you, you got this!@@"<br>
<br>
A few more thrusts and <<he npc_swolebro>> pulls back, grabbing hold of the bar as you quickly re-establish your grips for another round of bench.<br>
<br>
Back and forth you go for another three rounds, pressing then sucking as you feel <<him npc_swolebro>> getting closer and closer even as your arms begin to fatigue.<br>
<br>
"@@.npc_swolebro;Alright, burnout set!@@" <<He npc_swolebro>> states, backing off the weight a little and getting in position. "@@.npc_swolebro;Everything you've got!@@" <<He npc_swolebro>> adds, thrusting back past your lips.<br>
<br>
Giving head WHILE benching, and being unable to even see what you're doing, is definitely surreal, but it somehow has you focusing even harder, as you suck on <<him npc_swolebro>> as hard as you can then do a modified valsalva manoeuvre as <<his npc_swolebro>> encouraging shouts get more and more breathless.<br>
<br>
You're groaning around <<his npc_swolebro>> cock as your arms start to fail, but <<he npc_swolebro>>'s there in an instant to catch the weight and, just as it slams back into the rack <<he npc_swolebro>> <<if $fetish.cum>>cums, spurting directly down your throat before pulling back, trailing cum across your gasping face<<else>>pulls free to cum in a towel<</if>>.<br>
<br>
"@@.npc_swolebro;Good job!@@" <<He npc_swolebro>> states, wiping your face with a fresh towel as you catch your breath. "@@.npc_swolebro;Next time we'll focus on the lower body.@@"<br>
<br>
<<He npc_swolebro>> helps you sit up and hands you a sports-drink. You take a deep gulp and a few more minutes to recover before heading on your way.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
</div>/*#
#desc: strength private - squat anal
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'strength' 16 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_swolebro', 'first')>> into one of the gym's private rooms and watch as <<he npc_swolebro>> sets things up for some heavy squats.<br>
<br>
"@@.npc_swolebro;Today is gonna be about power, and control. You're already strong, this is just about shaping and refining things, making you more aware of your body so when it comes time to perform at comp, you're ready to give it 111%.@@"<br>
<br>
You nod, stepping under the bar for the first of three sets, more weight stacked on with each set until you're close to your max.<br>
<br>
"@@.npc_swolebro;Alright,@@" <<he npc_swolebro>> states as <<he npc_swolebro>> strips a good hundred pounds off the bar. "@@.npc_swolebro;That was good, pushing it, but with a little still left in the tank. Now we're going to focus on really dialing in technique and control with a box squat variation — remember, in comp it's all about hitting exact depth, too high, it doesn't count, too low, you're wasting movement and that matters when you're going for a PR.@@"<br>
<br>
<<He npc_swolebro>> places a box in the back side of the squat cage, for a moment you're confused by how low it is — well below parallel for you... and then it all makes sense as <<he npc_swolebro>> takes a seat, stretching the front of <<his npc_swolebro>> pants down so that <<his npc_swolebro>> hard <<getWordPenis "npc_swolebro">> is sticking up invitingly.<br>
<br>
<<printThought 'Ah, a different sort of "deep" squat...'>><br>
<br>
"@@.npc_swolebro;Remember — precision and control, that's the key to this variation.@@"<br>
<br>
[<<moveTo "event_gym_strength_private_2_2" "Squat that cock." 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_gym_strength_private_2_2" "This isn't the workout you had in mind." 60 "<<set $scene.accept = false>>">>]
</div>/*#
#desc: strength private - squat anal
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'strength' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_swolebro.penis_size 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'strength' 16 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
You remove the plug from your ass and get into position under the bar.
<<else>>
You take a deep breath and get into position under the bar.
<</if>>
Taking a deep breath you shoulder the weight — compared to what you were moving earlier it's no trouble but you remain focused. <<printThought "Technique and control...">><br>
<br>
You take a step back so that you are directly infront of your "spotter" and then slowly lower down. <<His npc_swolebro>> hands gently guide your hips as you let the weight lower you directly onto <<his npc_swolebro>> <<getWordPenis "npc_swolebro">>. You go down, down, down until you brush <<his npc_swolebro>> thighs. <<His npc_swolebro>> <<getWordPenis "npc_swolebro">> is all the way inside you and you savour the full, tight feeling for a moment before you rise back up.<br>
<br>
"@@.npc_swolebro;Again, really focus, you did a bit of a butt-wink that time. Try to eliminate that, just smooth descent, squeeze, then back up.@@"<br>
<br>
You take a deep breath and repeat, doing rep after rep in what has to be the slowest ass-fucking you've ever had. As your muscles tire it becomes more of a challenge to maintain the smooth control necessary but you, and <<he npc_swolebro>>, keep it up, <<his npc_swolebro>> cock sliding into your now-gaping hole easier each time as you perfect the movement.<br>
<br>
"@@.npc_swolebro;And rack.@@" <<He npc_swolebro>> states when are about to question if you could make another rep. Stepping forward you rattle the weights back onto their hooks only to realise your very exposed position...<br>
<br>
[<<moveTo "event_gym_strength_private_2_3" "Wiggle your ass in invitation." 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_gym_strength_private_2_3_abort" "That was a good workout, call it here." 60 "<<set $scene.accept = false>>">>]
<<else>>
<<if setup.getTotalValue("penis") > 10>>
As enticing as <<his npc_swolebro>> hard, glistening penis is, you decline <<his npc_swolebro>> offer.
<<else>>
You decline <<his npc_swolebro>> offer.
<</if>>
<br><br>
<<He npc_swolebro>> frowns slightly and shrugs, standing up and sliding back into <<his npc_swolebro>> pants as <<he npc_swolebro>> adjusts the box to a more normal height. "@@.npc_swolebro;Alright, well we can do a more traditional variation, but it's not going to focus you as much as it would have otherwise.@@"<br>
<br>
You do another three sets of box squats to refine your technique and then leave.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
<</if>>
</div>/*#
#desc: strength private - squat anal
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'strength' 'gym_strength' 'strength_meet_prep'>>
<<applyExperience 'anal' $npc_swolebro.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
Partially bent over and still holding on to the bar you wiggle your ass in invitation. <<=setup.getNpcName('npc_swolebro', 'first')>> doesn't hesitate, rising to <<his npc_swolebro>> feet and plunging right back into your ass as smooth as when you were squatting down.<br>
<br>
You gasp; where before you were in control of smooth, deep, thrusts, now <<he npc_swolebro>>'s taking over, jackhammering inside of you as you surrender to the wonderful feeling of being fucked.<br>
<br>
<<His npc_swolebro>> strong arms help hold you up, <<his npc_swolebro>> breath on your neck as <<he npc_swolebro>> gives it to your hard and deep, almost lifting you into the air with each stroke until <<he npc_swolebro>> cums with a grunt, your feet lifting off the ground as you cling to the bar and moan.<br>
<br>
"@@.npc_swolebro;Whew! Good technique, good tension.@@" <<He npc_swolebro>> states as she lowers you back down and slides out. "@@.npc_swolebro;Yup, good workout all around.@@" <<He npc_swolebro>> adds with a nod as you <<if !setup.checkItemTypeTag('plug', ['hollow'])>>replace your plug and <</if>>fix your clothes.<br>
<br>
Legs still a bit rubbery from the hard workout you thank <<him npc_swolebro>> for the coaching assistance and head on your way.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
</div>/*#
#desc: strength private - squat anal abort
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
You catch your breath, step forward, and <<if !setup.checkItemTypeTag('plug', ['hollow'])>>stuff the plug back into your ass before kicking<<else>>kick<</if>> your legs a bit so they don't stiffen up. You thank <<=setup.getNpcName('npc_swolebro', 'first')>> for <<his npc_swolebro>> "assistance" and head on your way.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
</div>/*#
#desc: strength private - random repeat
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.variant = ['squat', 'bench', 'circuit'].random()>>
<<switch $scene.variant>>
<<case 'squat'>>
<<applyExperience 'anal' $npc_swolebro.penis_size 'normal' $SEEN_FRIEND>>
<<case 'bench'>>
<<applyExperience 'oral' $npc_swolebro.penis_size 'normal' $SEEN_FRIEND>>
<<case 'circuit'>>
<<applyExperience 'anal' $npc_swolebro.penis_size 'normal' $SEEN_FRIEND>>
<</switch>>
<<applyExperience 'strength' 20 'skip' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_swolebro")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_swolebro', 'first')>> head for a private room for
<<switch $scene.variant>>
<<case 'squat'>>
another hard lower body workout that sees you doing box squats on <<his npc_swolebro>> <<getWordPenis "npc_swolebro">>.
<<case 'bench'>>
another heavy bench session super-set with sucking <<his npc_swolebro>> <<getWordPenis "npc_swolebro">>.
<<case 'circuit'>>
a circuit routine that sees you do a variety of accessory lits, finishing off with you bending over for <<him npc_swolebro>>... while doing bent over rows.
<</switch>>
Feeling pumped, and a bit tired, you thank <<him npc_swolebro>> for the assistance and head on your way.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 120>>]
</div>/*#
#desc: ask about Miss Hard Pump
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _scheduleToday = $now.getUTCDay() == 0 && $now.getUTCHours() < 9 && !$scene.first>>
<<set $scene.weeksToContest = 0>>
<<set $scene.date = setup.getNextDayOfWeek($now, 0, 9, 0, _scheduleToday)>>
<<if !_scheduleToday && $now.getUTCDay() == 0>>
<<set $scene.date = setup.getNextDayOfWeek($scene.date, 0, 9, 0, false)>>
<<set $scene.weeksToContest = 1>>
<</if>>
<<set $scene.punt = setup.eventOverlap($scene.date, 3)>>
<<if $scene.punt>>
<<set $scene.weeksToContest += 1>>
<<set $scene.date = setup.getNextDayOfWeek($scene.date, 0, 9, 0, false)>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_desk.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You ask the clerk about the "Miss Hard Pump" posters. With a wide, enthusiastic smile they explain.<br>
<br>
"@@.generic_male1;We're looking for a woman who really exemplifies what this place is about for a new advertising campaign. Towards that end we thought the best way to really liven it up would be to make it a contest — to prove herself the winner will have to demonstrate strength, agility, stamina and, of course, aesthetics.@@" The clerk looks you over with a grin.<br>
<br>
"@@.generic_male1;I think you might be a good candidate, especially if we take into account the amount of progress you've made since you first started coming here! That said, well... it isn't going to be easy, the proper candidate will need to be nigh perfect in every way if they're going to really prove themselves worthy of the title. Anyway, the first comp is <<switch $scene.weeksToContest>><<case 0>><<if $now.getUTCDay() == 0>>Sunday<<else>>later this<</if>> morning<<case 1>>this coming Sunday<<case 2>>a week from Sunday<</switch>>. DO you want me to sign you up?@@"<br>
<br>
[<<moveTo "event_gym_contest_info_2" "Say yes." 60 "<<set $scene.signup = true>>">>]<br>
[<<moveTo "event_gym_contest_info_2" "Decline to sign up." 60 "<<set $scene.signup = false>>">>]
<<else>>
You ask the clerk about the next "Miss Hard Pump" competition.<br>
<br>
"@@.generic_male1;Yup, it was so successful we're running another comp <<switch $scene.weeksToContest>><<case 0>>at nine <<if $now.getUTCDay() == 0>>this<<else>>Sunday<</if>> morning<<case 1>>this Sunday at nine in the morning<<case 2>>a week from Sunday at nine in the morning<</switch>> — registrations are still open if you'd like to sign up?@@"<br>
<br>
[<<moveTo "event_gym_contest_info_2" "Say yes." 60 "<<set $scene.signup = true>>">>]<br>
[<<moveTo "event_gym_contest_info_2" "Decline to sign up." 60 "<<set $scene.signup = false>>">>]
<</if>>
</div>/*#
#desc: sign up for Miss Hard Pump
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.signup>>
<<addTaskById 'hard_pump_contest' $scene.date>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_desk.png">>
<div id="invframe" class="scrolltext">
<<if $scene.signup>>
The clerk smiles, quickly putting your information into the system. "@@.generic_male1;Alright, you're all registered for the comp — be here at <<if $options.militaryTime>>9:00<<else>>nine am<</if>> sharp, <<switch $scene.weeksToContest>><<case 0>><<if $now.getUTCDay() == 0>>later this<<else>>Sunday<</if>> morning<<case 1>>this Sunday<<case 2>>a week from Sunday<</switch>> for the first event!@@"
<<else>>
The clerk shrugs. "@@.generic_male1;Well, if you ever change your mind just let me know — we need pre-registrations to organise things and make sure all the equipment and such is in order for the competitors.@@"
<</if>>
<br><br>
[<<moveTo "room_gym_lobby" "Done." 60>>]
</div>/*#
#desc: miss gym contest
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall informing you that you have missed showing up for the start of the gym Miss Hard Pump contest.<br>
<br>
<<printThought "Dang, I really need to be more on top of my schedule! Maybe next week...">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: start of gym contest
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
You assemble "backstage" with roughly a dozen other fit looking ladies for the contest. Everyone is looking good, with bodytypes ranging from slender and toned to "I will break you" ripped. You guess that you're in for some stiff competition, though you estimate some of the "sure bet" winners for certain events are liable to perform poorly in others with all-around balance being the key to overall victory.<br>
<br>
Taking your place in line you file out across the stage as you and your fellow competitors are each "introduced" to the audience —
<<if $npc_swolebro.stage > 3 && $npc_fit_bimbo.stage > 3>>
you get quite a warm welcome, indeed, as your swole<<=$npc_swolebro.bro>> friends as well as a couple ladies from the bimbo fitness class cheer for you loudly.
<<elseif $npc_swolebro.stage > 3>>
you get an enthusiastic reaction from some of your "swole<<=$npc_swolebro.bro>>" friends.
<<elseif $npc_fit_bimbo.stage > 3>>
you get a high pitched encouragement from a couple ladies you recognise from the bimbo fitness class.
<<else>>
you get a relatively muted reaction compared to some of the other, apparently better-known, competitors.
<</if>>
<br><br>
"@@.generic_female1;Welcome, all!@@" The MC announces once you and the rest of the competitors have taken your place on the stage. "@@.generic_female1;Being crowned Miss Hard Pump is no easy task and all of you ladies will be pushed to the limit if you wish to earn that privilege. There are three primary events where you will demonstrate your power, your agility, and finally, the look and style of a champion. So good luck, and remember to pace yourselves, endurance is a key part of fitness as well!@@"<br>
<br>
The crowd cheers as the contestants are split up to either side of the stage, with a squat rack revealed in the centre.<br>
<br>
<<if setup.getTotalValue("strength") >= 19 && setup.checkItemTypeWorn("plug") && setup.getEffectivePlugSize() > 10>>
[<<moveTo "event_gym_contest_2" "The test of strength." 2400>>]
<<else>>
[<<moveTo "event_gym_contest_2_fail" "The test of strength." 2400>>]
<</if>>
</div>/*#
#desc: gym contest - strength fail
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'very' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
The strength "challenge" takes the form of a squat ladder; those unable to complete a rep to be eliminated as the weight goes up each round.<br>
<br>
<<if setup.getTotalValue("strength") >= 19>>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.getEffectivePlugSize() > 10>>
ERROR: unexpected state
<<else>>
You lift heavy, keeping up with women significantly larger and more visibly muscular than yourself before finally failing a lift. Beyond the weight itself something felt off, like you just couldn't keep things tight enough to rise back out of the hole...<br>
<br>
<<printThought "Maybe I need a larger squat plug to help maintain tension?">>
<</if>>
<<else>>
You stay right with the stronger competitors but end up bailing on a particularly tough lift when you lose tension at the bottom.<br>
<br>
<<printThought "Maybe a squat plug would help?">>
<</if>>
<<elseif setup.getTotalValue("strength") > 15>>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.getEffectivePlugSize() > 10>>
Even with the help of your large squat plug your impressive showing of strength falls far short of the elite competitors.
<<else>>
You lift heavy, but seem far off from the leaders. In particular it feels like the plug in your rear is too small for you to properly bear down on to maintain tension as the weights get heavy.
<</if>>
<<else>>
You're in the upper third of competitors for strength, but that doesn't mean much compared to how truly strong those remaining women are and you find yourself unable to maintain tension as the weight gets heavy.<br>
<br>
<<printThought "Maybe a squat plug would help?">>
<</if>>
<<elseif setup.getTotalValue("strength") > 10>>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.getEffectivePlugSize() > 10>>
Bearing down on your large plug you are able to set a PR, but the stronger competitors leapfrog right past you.
<<else>>
You lift as heavy as you ever have, though you find yourself wishing you had something larger in your ass to clench down on for maximal muscular tension.
<</if>>
<<else>>
You are stronger than most, but far weaker than the leaders and you are eliminated well before the final few battle it out.
<</if>>
<<elseif setup.getTotalValue("strength") > 5>>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.getEffectivePlugSize() > 10>>
Thanks to your squat plug you're able to maintain tension and set a PR, but that's still nothing compared to your stronger competition.
<<else>>
You last longer than one particularly sprightly looking lady, but that's about it, even your squat plug failing to help all that much.<br>
<br>
<<printThought "Maybe a larger plug would help?">>
<</if>>
<<else>>
You're struggling at the first weight increase and are soon eliminated
<</if>>
<<else>>
You can barely squat the bar and you are literally the first person eliminated.<br>
<br>
<<printThought "Shit, I need to spend more time lifting if I'm going to have a chance at this...">>
<</if>>
<br><br>
You watch from the sidelines as the large, muscular woman approaches the heavy bar that has eliminated the last of her competition. Jaw set, muscles looking ready to tear through her tight clothing, she makes the weight look easy to claim victory.<br>
<br>
The Amazonian winner flexes for the crowd. "@@.generic_female1;What a stunning performance! But there is more to being Miss Hard Pump than just muscles, the next competition will see our aspiring royalty racing through the Hard Pump obstacle course!@@"<br>
<br>
The audience is already filing out as you, and the other contestants, are led out of the building.<br>
<br>
<<if setup.getTotalValue("dexterity") >= 19 && setup.getTotalValue("heels") >= 20>>
[<<moveTo "event_gym_contest_3" "The test of agility." 2400>>]
<<else>>
[<<moveTo "event_gym_contest_3_fail" "The test of agility." 2400>>]
<</if>>
</div>/*#
#desc: gym contest - strength
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.winStrength = true>>
<<setThreshold 'strength' 'gym_strength' 'strength_final'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
The strength "challenge" takes the form of a squat ladder; those unable to complete a rep to be eliminated as the weight goes up each round.<br>
<br>
Awing the audience with your demonstration of strength it comes down to you and an Amazonian woman who is practically twice your size. Bearing down on the massive plug in your ass you set a massive new PR that has the audience on their feet, but she matches you and the next weight jump proves too much for you to handle.<br>
<br>
<<printThought "Still, I don't have to win every event, second place is respectable, and her size could be a liability in the agility contest.">><br>
<br>
You watch from the sidelines as the large, muscular woman approaches the heavy bar that has eliminated the last of her competition. Jaw set, muscles looking ready to tear through her tight clothing, she makes the weight look easy to claim victory.<br>
<br>
The Amazonian winner flexes for the crowd. "@@.generic_female1;What a stunning performance! But there is more to being Miss Hard Pump than just muscles, the next competition will see our aspiring royalty racing through the Hard Pump obstacle course!@@"<br>
<br>
The audience is already filing out as you, and the other contestants, are led out of the building.<br>
<br>
<<if setup.getTotalValue("dexterity") >= 19 && setup.getTotalValue("heels") >= 20>>
[<<moveTo "event_gym_contest_3" "The test of agility." 2400>>]
<<else>>
[<<moveTo "event_gym_contest_3_fail" "The test of agility." 2400>>]
<</if>>
</div>/*#
#desc: gym contest - dexterity
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dexterity = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexterity 'very' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
The "course" before you is like something out of a game-show, a running obstacle challenge over water that will require one to reach, jump and climb before a final sprint across a set of "shrinking steps" — progressively narrower pillars, the last few of which are even smaller than your foot!<br>
<br>
As the winner of the first round, the tall Amazon gets first crack at things. Her long reach proves helpful but, in the end, it seems her focus on power did come at the price of agility and she ends up tumbling into the water about two thirds of the way through. With the first event leader falling so far back on points the competition opens up and everyone looks motivated to put in their best showings.<br>
<br>
<<if setup.getTotalValue("dexterity") >= 19>>
You practically fly through the early course, dancing between hazards and scrambling over obstacles. The crowd is on their feet as your time is neck and neck with the leader as you come to the final obstacle — the "shrinking steps." <br>
<br>
<<if setup.getTotalValue("heels") >= 20>>
ERROR: unexpected state
<<elseif setup.getTotalValue("heels") >= 13>>
You step lively across up the steps, your practice in heels crossing over well to managing the narrow platforms. As you get to the end, however, you are forced to slow down finishing the course, but failing to match the top times.<br>
<br>
<<printThought "This reminds me of walking in heels... maybe more practice at that would help?">>
<<else>>
You try to navigate the steps but the final few are just too narrow and you tumble into the water when the platforms get too small for the heel of your foot to find purchase.<br>
<br>
<<printThought "Hmm, it's like I need to stay on my toes, sort of like walking in heels... maybe more practice at that would help?">>
<</if>>
<<elseif setup.getTotalValue("dexterity") > 15>>
You easily traverse the early course, surmounting each obstacle in turn while maintaining a fairly decent pace. You're in the mix with the faster runners as you address the final obstacle — the "shrinking steps." <br>
<br>
<<if setup.getTotalValue("heels") >= 20>>
With all your practice in ballet boots the steps are practically trivial and you easily traverse your way to the end. It isn't enough to put you at the top of the leaderboard, but you still beat out most of your competition.<br>
<br>
<<printThought "Hmm, seems I need to work on my agility to speed up my time in the earlier parts of the course...">>
<<elseif setup.getTotalValue("heels") >= 13>>
You step lively across up the steps, your practice in heels crossing over well to managing the narrow platforms. As you get to the end, however, you are forced to slow down finishing the course, .<br>
<br>
<<printThought "This reminds me of walking in heels... maybe more practice at that would help?">>
<<else>>
You try to navigate the steps but the final few are just too narrow and you tumble into the water when your heel fails to find purchase.<br>
<br>
<<printThought "Hmm, it's like I need to stay on my toes, sort of like walking in heels... maybe more practice at that would help?">>
<</if>>
<<elseif setup.getTotalValue("dexterity") > 10>>
By being careful you are able to traverse the early course; you aren't making the best time, but you also aren't falling and you take a moment to catch your breath as you address the final "shrinking steps" obstacle.<br>
<br>
<<if setup.getTotalValue("heels") >= 20>>
With all your practice in ballet boots the steps are practically trivial and you easily traverse your way to the end.
<<elseif setup.getTotalValue("heels") >= 13>>
You step lively across up the steps, your practice in heels crossing over well to managing the narrow platforms. As you get to the end, however, you are forced to slow down finishing the course, .<br>
<br>
<<printThought "This reminds me of walking in heels... maybe more practice at that would help?">>
<<else>>
You try to navigate the steps but the final few are just too narrow and you tumble into the water when your heel fails to find purchase.<br>
<br>
<<printThought "Hmm, it's like I need to stay on my toes, sort of like walking in heels... maybe more practice at that would help?">>
<</if>>
<<elseif setup.getTotalValue("dexterity") > 5>>
By stepping carefully you manage to make it through the first half of the course, albeit slower than most of your competition. Unfortunately it isn't much further where you end up falling when a particularly long reach causes you to slightly strain something and you tumble into the water.<br>
<br>
<<printThought "Hmm, need to work on my agility, more yoga?">>
<<else>>
You barely take a step before losing your balance and splashing into the water.<br>
<br>
<<printThought "Wow am I a klutz. I really need to work on my agility.">>
<</if>>
<br><br>
The final woman to address the course has to be some mix of gymnast and superhero. She flies through, light as a feather only to easily power herself over the vertical obstacles. In a final show of complete mastery she literally does a cartwheel across the shrinking steps, claiming the lead time with ease.<br>
<br>
<<printThought "Wow, I could never do anything like that, but I remember she didn't do that great at weight-lifting. Once again a specialist in a single event who is unlikely to win it all.">><br>
<br>
"@@.generic_female1;Let's give it up for our competitors!@@" the MC calls out once the last woman has had her shot at the obstacle course. "@@.generic_female1;Being strong and nimble is certainly great, but Miss Hard Pump is a representative position, so there's more than just physicality. The final event will be one of beauty and poise, but first our competitors will have some time to dry off and catch their breath. See you all back here in half an hour for the final event and then the winner's coronation!@@"<br>
<br>
You fall in with the rest of the competitors and head for the locker-room.<br>
<br>
[<<moveTo "event_gym_contest_4" "Intermission." 600>>]
</div>/*#
#desc: gym contest - dexterity
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.winDex = true>>
<<setThreshold 'dexterity' 'other' 'dexterity_final'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
The "course" before you is like something out of a game-show, a running obstacle challenge over water that will require one to reach, jump and climb before a final sprint across a set of "shrinking steps" — progressively narrower pillars, the last few of which are even smaller than your foot!<br>
<br>
As the winner of the first round, the tall Amazon gets first crack at things. Her long reach proves helpful but, in the end, it seems her focus on power did come at the price of agility and she ends up tumbling into the water about two thirds of the way through. With the first event leader falling so far back on points the competition opens up and everyone looks motivated to put in their best showings.<br>
<br>
You practically fly through the early course, dancing between hazards and scrambling over obstacles. The crowd is on their feet as your time is neck and neck with the leader as you come to the final obstacle — the "shrinking steps." <br>
<br>
You barely even break stride, springing from pillar to pillar on pointed feet, all your time in ballet boots making the otherwise difficult feat almost trivial.<br>
<br>
Reaching the end you claim first place, though there are a couple women left to make their run.<br>
<br>
The final woman to address the course has to be some mix of gymnast and superhero. She flies through, light as a feather only to easily power herself over the vertical obstacles. In a final show of complete mastery she literally does a cartwheel across the shrinking steps, claiming the lead time with ease.<br>
<br>
<<printThought "Wow, I could never do anything like that, but I remember she didn't do that great at weight-lifting. Once again a specialist in a single event who is unlikely to win it all.">><br>
<br>
"@@.generic_female1;Let's give it up for our competitors!@@" the MC calls out once the last woman has had her shot at the obstacle course. "@@.generic_female1;Being strong and nimble is certainly great, but Miss Hard Pump is a representative position, so there's more than just physicality. The final event will be one of beauty and poise, but first our competitors will have some time to dry off and catch their breath. See you all back here in half an hour for the final event and then the winner's coronation!@@"<br>
<br>
You fall in with the rest of the competitors and head for the locker-room.<br>
<br>
[<<moveTo "event_gym_contest_4" "Intermission." 600>>]
</div>/*#
#desc: gym contest - endurance intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
The first couple girls into the locker-room toss their clothes into a communal wash bin — even those who didn't take a dip in the drink during the agility contest strip, which you suppose makes sense given that you're all a bit sweaty. You only get a few moments to admire all the naked, fit flesh on display before things are interrupted by a group of what look like audience members walking into the room.<br>
<br>
"@@.generic_male1;Hey, ladies.@@" What seems to be the lead <<man>> states with a grin. "@@.generic_male1;Being crowned Miss Hard Pump is about more than just feats of athleticism — it's about impressing the crowd and pleasing the gym's loyal customers. Towards that end, well... you now have the opportunity to make a personal case of how perfect your bodies truly are!@@"<br>
<br>
The woman who won the strength competition makes the first move, literally throwing two <<men>> over her shoulder and heading for one of the private showers. The gymnast who triumphed in the second round dances around a subject of her own before skipping away with <<him>>.<br>
<br>
Most, but not quite all, of your fellow competitors are also stepping forward to pair off...<br>
<br>
<<if setup.getTotalValue("stamina") >= 15>>
<<printThought "This is a bit unorthodox... though I should have plenty of energy for some audience participation before the final event...">>
<<else>>
<<printThought "This is a bit unorthodox... I should be careful to at least not tire myself out before the final event...">>
<</if>>
<br><br>
<<if setup.getTotalValue("stamina") > 15>>
[<<moveTo "event_gym_contest_5" "Grab a partner." 600 "<<set $scene.partners=1>>">>]<br>
[<<moveTo "event_gym_contest_5" "Assemble a threesome." 600 "<<set $scene.partners=2>>">>]<br>
[<<moveTo "event_gym_contest_5" "Sit this round out." 600 "<<set $scene.partners=0>>">>]
<<else>>
[<<moveTo "event_gym_contest_5_fail" "Grab a partner." 600 "<<set $scene.partners=1>>">>]<br>
[<<moveTo "event_gym_contest_5_fail" "Assemble a threesome." 600 "<<set $scene.partners=2>>">>]<br>
[<<moveTo "event_gym_contest_5_fail" "Sit this round out." 600 "<<set $scene.partners=0>>">>]
<</if>>
</div>/*#
#desc: gym contest - endurance/sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.partners>>
<<case 0>>
You join the handful of girls who are refraining from sexcapades off to the side of the room. After a while your clothes are delivered back and you get dressed, joined a few minutes later by the remaining competitors. Some seem energised by their erotic activities while some of the less in-shape women are looking a bit tuckered out by what you estimate was some hard fucking.
<<case 1>>
You grab a partner and head for the shower stall, soon finding yourself pressed up against the wall as <<his>> hard <<getWordPenis>> slides into your ass.
<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15 && $fetish.get_raped>>
You're settling in for a nice fuck when the <<man>> suddenly spins you around and you find yourself facing two more grinning <<if $options.fem>>girls<<else>>dudes<</if>>. You catch a glimpse of a pair of your fellow competitors blowing you a kiss just before the door closes on you...<br>
<br>
<<printThought "Are they trying to sabotage me?">><br>
<br>
Still with a cock in your ass you're pushed forward as a second <<guy>> takes advantage of your surprise to fuck your throat. Rotating so as not to cum the three <<men>> switch off fucking you non-stop...
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
ERROR: unexpected state
<<else>>
You put up a valiant effort, but it's three on one, and even your prodigious stamina reaches its limit. By the time things are over <<if $options.fem>>they<<else>>the men<</if>> are tired, but you are exhausted, staggering out from your fuck-fest to get dressed as the women who set you up grin in triumph.<br>
<br>
<<printThought "I should probably work on my cardio...">>
<</if>>
<<else>>
Two rounds of athletic competition already has you a bit tired but getting triple teamed is something else entirely. By the time they're done you're almost falling over, helped to your feet and staggering out to get dressed as the women who set you up smile and gloat.<br>
<br>
<<printThought "Ugh, I really need to work on my cardio.">>
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
ERROR: unexpected state
<<else>>
You may be a little fatigued from your earlier athletic competition but you still have plenty in the tank to go one on one. Far too soon it's time for you to get dressed for the next event but you stride out confidently, looking far less worse for wear than some of your other competitors who seem to have gone a bit too hard.<br>
<br>
<<printThought "I should probably work on my cardio...">>
<</if>>
<<else>>
Two rounds of athletic competition already has you a bit tired and, against a fresh "opponent" you are soon panting for more reason than one. You end up letting <<him>> to pretty much all the work, eventually staggering out to get dressed once it's time for the next event.<br>
<br>
<<printThought "Ugh, I really need to work on my cardio.">>
<</if>>
<</if>>
<<case 2>>
<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15>>
You're heading into one of the private showers with your suitors in tow when you notice a couple of your fellow competitors scheming with the "unchosen" <<if $options.fem>>girls<<else>>dudes<</if>>. Your train grows as you realise that this is an attempt to sabotage your potential leader status with a full-on gang-Bearing...
<<else>>
You lead your pair of suitors to one of the private showers only to glance back and see more <<men>> following — it seems that the remaining "unchosen" <<if $options.fem>>girls<<else>>dudes<</if>> have taken your horniness for an open invitation...
<</if>>
<br><br>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
ERROR: unexpected state
<<else>>
Taking on all comers may be fun, but it definitely takes it out of you. By the time you are called back to dress for the next event you are more than a bit winded.<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15>> The women who set you up smile in triumph as they see you rejoin the group.<</if>><br>
<br>
<<printThought "Should probably spend some time working on cardio...">>
<</if>>
<<else>>
Two rounds of athletic competition already has you a bit tired, but getting triple teamed is something else entirely. By the time they're done you're almost falling over, helped to your feet and staggering out to get dressed <<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15>>as the women who set you up smile and gloat<<else>>your fellow competitors looking at you with pity<</if>>.<br>
<br>
<<printThought "Ugh, I really need to work on my cardio.">>
<</if>>
<<default>>
ERROR: unexpected scene.partners <<=$scene.partners>>
<</switch>>
<br><br>
Arriving backstage you and your fellow competitors start getting dressed and form a line once again as the first woman strides out for the "aesthetic" portion of the competition.<br>
<br>
[<<moveTo "event_gym_contest_6" "Put your clothes back on for the test of appearance." 2400>>]
</div>/*#
#desc: gym contest - endurance/sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.partners == 2 && setup.getTotalValue("stamina") >= 19>>
<<set $scene.winStam = true>>
<<applyFatigue 30>>
<<setThreshold 'stamina' 'gym_stamina' 'stamina_final'>>
<<else>>
<<set $scene.winStam = false>>
<<applyFatigue 30>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.partners>>
<<case 0>>
You join the handful of girls who are refraining from sexcapades off to the side of the room. After a while your clothes are delivered back and you get dressed, joined a few minutes later by the remaining competitors. Some seem energised by their erotic activities while some of the less in-shape women are looking a bit tuckered out by what you estimate was some hard fucking.
<<case 1>>
You grab a partner and head for the shower stall, soon finding yourself pressed up against the wall as <<his>> hard <<getWordPenis>> slides into your ass.
<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15 && $fetish.get_raped>>
You're settling in for a nice fuck when the <<man>> suddenly spins you around and you find yourself facing two more grinning <<if $options.fem>>girls<<else>>dudes<</if>>. You catch a glimpse of a pair of your fellow competitors blowing you a kiss just before the door closes on you...<br>
<br>
<<printThought "Are they trying to sabotage me?">><br>
<br>
Still with a cock in your ass you're pushed forward as a second <<guy>> takes advantage of your surprise to fuck your throat. Rotating so as not to cum the three <<men>> switch off fucking you non-stop...
<<if setup.getTotalValue("stamina") > 19>>
not that it matters, you are indefatigable, taking it from both ends like a champ and, by the time your "break" is over, it is <<if $options.fem>>them<<else>>the men<</if>> that are left exhausted and drained. You stride out of the room with a skip in your step and a smile, winking at two women who look at you in shock, presumably the scheming opponents who set you up, as you get dressed.
<<elseif setup.getTotalValue("stamina") > 15>>
three on one proves a little much for even your prodigious stamina. You struggle to breathe as you are pounded from either end, able to endure somewhat, though it has definitely taken its toll by the time you are called back to dress for the next event.<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15>> The women who set you up seem surprised that you even walk out, though they still smile in triumph at your somewhat tired appearance.<</if>><br>
<br>
<<printThought "My cardio may be good, but what if it was great?">>
<<else>>
ERROR: unexpected state
<</if>>
<<else>>
The <<man>> may be fresh compared to you coming off two strenuous events, but your endurance is close to legendary. By the time you need to get dressed for the next event you're barely even winded, but your partner looks drained and exhausted... though with a smile of pleasure on <<his>> face.<br>
<br>
<<printThought "Damn, why didn't I take on more than one challenger?">>
<</if>>
<<case 2>>
<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15>>
You're heading into one of the private showers with your suitors in tow when you notice a couple of your fellow competitors scheming with the "unchosen" <<if $options.fem>>girls<<else>>dudes<</if>>. Your train grows as you realise that this is an attempt to sabotage your potential leader status with a full-on gang-Bearing...
<<else>>
You lead your pair of suitors to one of the private showers only to glance back and see more <<men>> following — it seems that the remaining "unchosen" <<if $options.fem>>girls<<else>>dudes<</if>> have taken your horniness for an open invitation...
<</if>>
<br><br>
<<if setup.getTotalValue("stamina") >= 19>>
Whatever your opponents had planned, you are indefatigable, taking <<men>> two or three at a time and impatiently asking for more. Even in the short time before being called back to dress for the next event you drain over half a dozen partners. <<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15>>The women who set you up look at you in nervous surprise when you<<else>>In the end you<</if>> stride out proud and perky.
<<elseif setup.getTotalValue("stamina") > 15>>
Taking on a full gang-bang proves a little much for even your prodigious stamina. While not exhausted you are feeling a bit tired by the time you are called back to dress for the next event.<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15>>You take some solace in the nervously surprised looks you get from the women who set you up.<</if>><br>
<br>
<<printThought "My cardio is good, but what if it was great?">>
<<else>>
ERROR: unexpected state
<</if>>
<<default>>
ERROR: unexpected scene.partners <<=$scene.partners>>
<</switch>>
<br><br>
Arriving backstage you and your fellow competitors start getting dressed and form a line once again as the first woman strides out for the "aesthetic" portion of the competition.<br>
<br>
[<<moveTo "event_gym_contest_6" "Put your clothes back on for the test of appearance." 2400>>]
</div>/*#
#desc: gym contest - appearance
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<include "calcGymAttire">>
<<set $scene.clothingModifiers = setup.calcProstitutionModifiers()>>
<<set $scene.sexy = setup.analyzeWornTags(['female','male','unisex']) == 'female' && (setup.checkVisibleClothingTag("slutty") > 50 && setup.checkVisibleClothingTag("slutty") + setup.calcBareSkin() > 70)>>
<<set $scene.gym = $scene.gymAttire>>
<<set $scene.winLooks = $scene.sexy && $scene.gym && $player.makeup.permanent != "" && $player.makeup.template == "" && setup.getEffectiveBreastSize() >= 5 && $scene.partners >= 2>>
<<if $scene.winLooks>>
<<initRoom>>
<<moveTo "event_gym_contest_6_win">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
One at a time you and your fellow competitors take the stage. After an introduction from the MC the crowd is encouraged to show their "appreciation." <br>
<br>
<<switch $scene.partners>>
<<case 0>>
You get a tepid reaction of polite, but unenthusiastic applause.<br>
<br>
<<printThought "Hmm, guess I shouldn't have sat things out during the intermission...">>
<<case 1>>
<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15 && $fetish.get_raped>>
Your three rapists roar in approval, but it is not enough to make up for the somewhat more tepid response from the remainder of the crowd.<br>
<br>
<<printThought "Guess I shouldn't have tried to play it conservative during the intermission...">>
<<else>>
One voice stands out above the rest of the crowd as you recognise your "partner" from the intermission.
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
<<He>> whoops it up enthusiastically, clearly delighted at your efforts.<br>
<br>
<<printThought "Hmm, if I could get that much applause from more people... maybe I should take on more partners... that'll be quite the stamina stretcher though.">>
<<else>>
<<He>> cheers, though not as much as you heard for some of the other women.<br>
<br>
<<printThought "Maybe the crowd reaction would be better if I'd had more energy... or more partners?">>
<</if>>
<<else>>
<<He>> cheers politely, a little louder than the rest of the crowd, but not the enthusiastic reception some of your more adventuresome competitors received.<br>
<br>
<<printThought "Hmm, seems I need to go into the intermission with more energy... and maybe more partners?">>
<</if>>
<</if>>
<<case 2>>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") >= 19>>
Though many of them look tired, the crowd roars in support; even those who did not have the fortune of getting a piece of you in the locker-room expressing loud admiration for your indefatigable efforts to please all comers.<br>
<br>
"@@.generic_female1;Wow! Talk about the favour of the crowd! If this was the people's choice awards we'd have our winner, but to be Miss Hard Pump is about being well rounded, not merely a popularity contest!@@"
<<elseif setup.getTotalValue("stamina") > 15>>
Your crowd reaction is quite loud, and yet its volume only makes you think about how you could have performed even better if you had approached the intermission with more energy.
<<else>>
Your many partners cheer for you... though you get the feeling they would have cheered louder if you had been a bit more energetic during the intermission coupling.
<</if>>
<<else>>
Your many partners cheer... though not particularly loudly, perhaps if you had been able to muster the energy to do something more than lie there while they used your body...
<</if>>
<</switch>>
<br><br>
<<if $scene.sexy && $scene.gym && $player.makeup.permanent != "" && $player.makeup.template == "" && setup.getEffectiveBreastSize >= 5>>
In the latest tight, slutty gym fashion you walk the stage like a model, hips swaying, breasts bouncing, your permanently unblemished makeup immaculate despite your earlier exertions, truly the perfect picture of fit and feminine fashion. Making a turn you wink at the audience and then sashay your way backstage, from the looks of awe from the MC, audience members and even your fellow competitors, you know you nailed things.
<<else>>
<<if $scene.sexy && $scene.gym>>
Dressed sexy, slutty, and ready for the gym you make a real impression as you walk across the stage.
<<elseif $scene.sexy>>
As sexy as you are dressed you get the feeling the fact that it is not really gym-appropriate dings you with the judges.
<<elseif $scene.gym>>
Your gym attire may be appropriate, but it hardly turns heads as you make your way across the stage.
<<else>>
Dressed in unimpressive, un-athletic attire you make little impression on the judges.
<</if>>
<<if $player.makeup.template != "">>
Your makeup being ruined by sweat and exertion wrecks any impression of sexy, confident poise.
<<elseif $player.makeup.permanent != "">>
All else aside, your permanent makeup at least has you looking your best as you smile at the audience.
<<else>>
Compared to your competitors your lack of makeup has you feeling drab and plain.
<</if>>
<<if setup.getEffectiveBreastSize < 5>>
Swinging your hips with each step you feel strangely off-balance. <<printThought "Maybe I should invest in some larger breasts...">>
<<else>>
At least your large breasts, and ample hips, do their part to keep attention on your body as you finish your walk.
<</if>>
<</if>>
<br><br>
The last of the competitors finishes her walk and you're all called back onto the stage to line up for the announcement of the winner...<br>
<br>
[<<moveTo "event_gym_contest_7" "Victory ceremony." 2400>>]
</div>/*#
#desc: gym contest - appearance win
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
One at a time you and your fellow competitors take the stage. After an introduction from the MC the crowd is encouraged to show their "appreciation." <br>
<br>
Though many of them look tired, the crowd roars in support; even those who did not have the fortune of getting a piece of you in the locker-room expressing loud admiration for your indefatigable efforts to please all comers.<br>
<br>
"@@.generic_female1;Wow! Talk about the favour of the crowd! If this was the people's choice awards we'd have our winner, but to be Miss Hard Pump is about being well rounded, not merely a popularity contest!@@"<br>
<br>
In the latest tight, slutty gym fashion you walk the stage like a model, hips swaying, breasts bouncing, your permanently unblemished makeup impeccable despite your earlier exertions, truly the perfect picture of fit and feminine fashion. Making a turn you wink at the audience and then sashay your way backstage, from the looks of awe from the MC, audience members and even your fellow competitors, you know you nailed things.<br>
<br>
The last of the competitors finishes her walk and you're all called back onto the stage to line up for the announcement of the winner...<br>
<br>
<<if $scene.winStrength && $scene.winDex && $scene.winStam && $scene.winLooks>>
[<<moveTo "event_gym_contest_7_win" "Victory ceremony." 2400>>]
<<else>>
[<<moveTo "event_gym_contest_7" "Victory ceremony." 2400>>]
<</if>>
</div>/*#
#desc: gym contest - lose
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.wins = 0>>
<<if $scene.winStrength>>
<<set $scene.wins += 1>>
<</if>>
<<if $scene.winDex>>
<<set $scene.wins += 1>>
<</if>>
<<if $scene.winStam>>
<<set $scene.wins += 1>>
<</if>>
<<if $scene.winLooks>>
<<set $scene.wins += 1>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
<<if $scene.wins == 3>>
There is a tense moment as the scores are tallied due to the range of winners between different events. In the end, however, you come up just shy, your name mentioned in passing in second place before attention switches to the winner.
<<elseif $scene.wins > 0>>
Despite your bursts of performance you know you don't have a shot at the final prize, though you aren't too far off the podium as the new Miss Hard Pump is crowned.
<<else>>
You are nowhere close to the podium, left applauding from the wings as the new Miss Hard Pump is crowned.
<</if>>
<br><br>
"@@.generic_female1;Your new Miss Hard Pump! For her triumph she is granted a lifetime free gym membership as well as future promotional opportunities!@@" You show good sport and clap along with the other competitors as the victor bows to the audience.<br>
<br>
"@@.generic_female1;Congratulations to our winner, and good show to all of our competitors! Remember to come back next week because we are always looking for the NEXT MISS HARD PUMP!@@"<br>
<br>
The audience approaches the stage to congratulate the winner while you and the other also-rans go your separate ways.<br>
<br>
[<<moveTo "room_citymap" "Dress and leave." 600>>]
</div>/*#
#desc: gym contest - win
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "checkFitBimboClub">>
<<include "scheduleAdminPhotoshoot">>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_contest.png">>
<div id="invframe" class="scrolltext">
There is little surprise when your name is called as the champion and you take the stage to thunderous applause.<br>
<br>
"@@.generic_female1;Your new Miss Hard Pump! For her triumph she is granted a lifetime free gym membership as well as future sponsorship opportunities!@@"<br>
<br>
"@@.generic_female1;Congratulations to our winner, and good show to all of our competitors! Remember to come back next week because we are always looking for the NEXT MISS HARD PUMP!@@"<br>
<br>
You spend some time with the audience, accepting their congratulations and praise. Eventually though, the crowd fades and you leave the gym.<br>
<br>
[<<moveTo "room_citymap" "Leave." 600>>]
</div>/*#
#desc: admin suggests going to the gym together
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !State.hasPlayed("event_gym_alt_unlock")>>
<<set $scene.repeat = $currentTasks.hasOwnProperty('task_first_gym')>>
<<set _nextDate = setup.setNextDate($now, 1, 10, 0)>>
<<addTaskById 'task_first_gym' _nextDate>>
<<set $player.locations.gym = true>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.fem>>Your friend<<else>>The big guy<</if>> seems to think of something as you're both getting ready to depart.<br>
<br>
<<if State.hasPlayed("event_gym_alt_unlock")>>
"@@.npc_admin;Hey, so... I know things are still a bit crazy but... maybe you'd like to hit up the gym sometime? I know a good workout helps keep me sane... anyway, just hit me up if you want to hit <<printShopName 'gym'>> before work sometime, aight?@@"<br>
<br>
[<<moveTo "room_usual_place_inside" "Thank <<him npc_admin>> for the offer and head out." 60>>]
<<else>>
"@@.npc_admin;Hey, so with your whole life getting shaken up, the new job and, well, the rest... have you considered going back to the gym?<<if $scene.repeat>> I know I mentioned it before, but you stood me up instead of meeting me!<</if>>@@"<br>
<br>
You realise you can't even remember the last time you worked out. <<=setup.getNpcName('npc_admin', 'first')>> has always been athletic, lifting and doing Karate but outside of a bit in college when you were making a failed attempt to get "cut" you've just gotten by on a naturally fast metabolism.<br>
<br>
"@@.npc_admin;I know it's a cliche, but working out can really help you take your mind off things and just feel better overall... hey, tell you what, how about you come with me tomorrow morning to <<printShopName 'gym'>>, the gym I go to? Say... <<if $options.militaryTime>>10:00<<else>>ten o'clock, pm<</if>>. We can work off our hangovers and I'll show you the ropes, see how you like it, eh?@@"<br>
<br>
<<if $npc_admin.flags.promotion>>
Though you're back to working together you think it'd be nice to see <<if $npc_admin.fem>>your friend<<else>>the big guy<</if>> somewhere other than the office.
<<else>>
Thinking about it, with you two no longer working together, this would probably be a good way to stay in touch with your friend, you say you'll meet <<him npc_admin>> there.
<</if>>
<br><br>
<<if setup.analyzeWornTags(['female','male','unisex']) == 'male' && !State.hasPlayed('event_bar_pickup_8')>>
[<<moveTo "event_bar_pickup_1" "Thank <<him npc_admin>> for the offer and watch <<him npc_admin>> leave." 300>>]
<<else>>
[<<moveTo "room_usual_place_inside" "Thank <<him npc_admin>> for the offer and head out." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: admin calls you for not showing up to planned gym "date"
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.wasSleeping = $scene.beforetasklocation.last() == "room_dreams">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.wasSleeping>>
You are awoken by your phone ringing loudly.<br>
<br>
<<printThought "Shit! I was supposed to meet <<=setup.getNpcName('npc_admin', 'first')>> this morning to work out!">>
<<else>>
Your phone rings, it's <<=setup.getNpcName('npc_admin', 'first')>> as you remember you were going to get together this morning at the gym.
<</if>>
<br><br>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>, so I'm at the gym and... I ain't seeing you, don't tell me you're scared of working up a little sweat!@@"<br>
<br>
You hurriedly reply that you just overslept.<br>
<br>
<<He npc_admin>> laughs "@@.npc_admin;Ha! Well, you were putting them away last night, hurry on over, we'll sweat it out of you!@@"<br>
<br>
<<if $scene.wasSleeping>>
[<<moveTo "event_gym_noshow_2_change" "Say you'll be right there." 180 "<<set $scene.gymLate = true>>">>]<br>
[<<moveTo "event_gym_noshow_2" "Apologise and say you're busy." 180>>]
<<elseif setup.checkOutsideDecency()>>
[<<moveTo "event_gym_first_1" "Head to the gym." 180 "<<set $scene.gymLate = true>><<set $currentTasks.task_first_gym.condition= 'Complete'>>">>]<br>
[<<moveTo "event_gym_noshow_2" "Apologise and say you're busy." 180>>]
<<elseif setup.inPassageTag($locationbeforeuseage, "home")>>
[<<moveTo "event_gym_noshow_2_change" "Say you just need to get changed and you're on your way." 180 "<<set $scene.gymLate = true>>">>]<br>
[<<moveTo "event_gym_noshow_2" "Apologise and say you're busy." 180>>]
<<else>>
[<<moveTo "event_gym_noshow_2" "Apologise and say you're busy." 180>>]
<</if>>
</div>/*#
#desc: decline to meet admin at gym first time
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_admin' 2>>
<<set _nextDate = setup.setNextDate($now, 7, 10, 0)>>
<<addTaskById 'task_first_gym' _nextDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You apologise, but explain that you aren't going to make it out to the gym today.<br>
<br>
You hear <<him npc_admin>> sigh over the phone. "@@.npc_admin;Can't say I'm not disappointed. Not just for me, but for you! I know you've been in a bit of a funk and I really think exercising would help pull you out of it. Let's try this again next Saturday, eh?@@"<br>
<br>
You apologise again and promise to meet <<him npc_admin>> next Saturday morning.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: change clothes to head to gym
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You hang up and get changed to meet <<=setup.getNpcName('npc_admin', 'first')>> at the gym.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_gym_first_1" "Head to the gym." 180 "<<set $scene.gymLate = true>><<set $currentTasks.task_first_gym.condition= 'Complete'>>">>]<br>
<<else>>
[@@.link_locked;You are not dressed properly to go out.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
[<<moveTo "event_gym_noshow_3" "Change your mind and bail on your meeting." 60>>]
</div>/*#
#desc: decline to meet admin at gym first time
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_admin' 3>>
<<set _nextDate = setup.setNextDate($now, 7, 10, 0)>>
<<addTaskById 'task_first_gym' _nextDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You call <<=setup.getNpcName('npc_admin', 'first')>> to let <<him npc_admin>> know you aren't going to make it to the gym today after all. There is a long silence and you think for a moment <<he npc_admin>> has hung up when <<he npc_admin>> finally speaks.<br>
<br>
"@@.npc_admin;That's cold, <<callPlayer "npc_admin">>. First you're late, then you say you're still coming, then you cancel like this... not cool, but if you want to try again I'll meet you next Saturday. Same place, same time, I ain't givin' up on you!@@"<br>
<br>
You feel embarrassed to disappoint <<him npc_admin>> when <<hes npc_admin>> showing such earnest care, promising to show up next time before hanging up.<br>
<br>
[<<moveTo "room_foyer" "Done." 60>>]
</div>/*#
#desc: meet admin at gym first time, he signs you up for the "intro" offer
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $scene.alt= $currentTasks.hasOwnProperty('task_first_gym_alt')>>
<<set $scene.clothingStyle = setup.analyzeWornTags(['female','male','unisex'])>>
<<set $gym.membership.active = true>>
<<if $scene.alt>>
<<set $npc_guard.flags.gym_intro=true>>
<</if>>
<<addNpcTheme 'npc_primrose' 'other' 'theme_primrose_other_gym'
1
'theme_primrose_gym'
false
>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Lobby">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.alt>>
<<createAdvBGR "./images/locations/gym_desk.png" setup.charImage("npc_guard","npc_guard_gym")>>
<<else>>
<<createAdvBGR "./images/locations/gym_desk.png" setup.charImage("npc_admin","npc_admin_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.alt>>
<<if $scene.gymLate>>
You arrive at <<printShopName 'gym'>> and walk into the lobby to find <<=setup.getNpcName('npc_guard', 'formal')>> waiting for you. She looks even more impressive in tight gym clothes than her uniform — the compression clothing tight around her well-defined muscles.<br>
<br>
"@@.npc_guard;Welcome,@@" she states in greeting "@@.npc_guard;Now come on — I already signed you up for the intro package.@@"
<<else>>
Right at ten <<=setup.getNpcName('npc_guard', 'formal')>> comes strolling in. She looks even more impressive in tight gym clothes than her uniform — the compression clothing tight around her well-defined muscles and she comes straight towards you, looking every bit the Amazon on the prowl<br>
<br>
"@@.npc_guard;Early! Love the enthusiasm. I already called ahead to get you signed up for the intro package, so let's get to it!@@"
<</if>>
<br><br>
The woman behind the desk takes a quick moment to confirm your identity and has you quickly sign a waiver.
<<else>>
<<if $scene.gymLate>>
You arrive at <<printShopName 'gym'>> and walk into the lobby to find <<=setup.getNpcName('npc_admin', 'first')>> chatting up the woman at the front desk. She looks fit and in shape and she smiles at you in greeting as <<he npc_admin>> waves you over.<br>
<br>
"@@.npc_admin;Look who finally made it!@@" <<He npc_admin>> shouts in greeting.<br>
<br>
You try to make an excuse for your tardiness, but <<he npc_admin>> just shrugs it off as <<he npc_admin>> turns to the clerk. "@@.npc_admin;So this is my <<callPlayer "npc_admin">> <<=$player.first_name>>, they're lookin' to get all signed up and start working out!@@"
<<else>>
Right at ten <<=setup.getNpcName('npc_admin', 'first')>> walks in the door, fist bumping and saying hi to several other regulars before grabbing you and heading for the front desk. The in-shape woman on the other side smiles in greeting as your friend introduces you.<br>
<br>
"@@.npc_admin;Alright, so my <<callPlayer "npc_admin">> here is lookin' to get signed up. Another convert to the church of iron!@@"
<</if>>
<br><br>
<<if $scene.clothingStyle=='female'>>
<<if $player.sec_style.body.name != "">>
She smiles at you in greeting.
<<else>>
She cocks an eye in surprise, but makes no comment at the contrast between your name and your attire.
<</if>>
<<else>>
<<if $player.sec_style.body.name != "">>
She cocks an eye in surprise, but makes no comment at the contrast between your name and your attire.
<<else>>
She smiles at you in greeting.
<</if>>
<</if>>
<br><br>
<<switch $npc_admin.flags.knowgender>>
<<case "female">>
"@@.npc_admin;I know she looks a bit scrawny right now, but she's looking to change that, so sign her up!@@"
<<case "male">>
"@@.npc_admin;I know he looks a bit scrawny right now, but he's looking to change that, so sign him up!@@"
<<default>>
"@@.npc_admin;I know they look a bit scrawny right now, but they're looking to change that, so sign 'em up!@@"
<</switch>>
<br><br>
"@@.generic_female1;Of course, we would be glad to welcome you as a member.@@" She states warmly. "@@.generic_female1;If you could just sign here, I'll start you on our free introductory offer.@@"
<</if>>
<br><br>
After all that's happened, you're a bit trepidatious about signing your name to anything, but, in a bit of a turn, everything is remarkably straightforward, a simple waiver of liability and agreement to a no-commitment free trial through the end of the month, after which there's a monthly membership fee of <<=$gym.membership.monthly_price>> credits auto-billed on the first of the month.<br>
<br>
You hand over the signed paperwork and she smiles. "@@.generic_female1;If you would come with me for a quick tour, we will get you your complimentary workout attire and you can meet your friend in the main exercise room.@@"<br>
<br>
<<if $scene.alt>>
"@@.npc_guard;Perfect! I'll catch up to you on the floor!@@" She states as the gym employee leads the way towards the locker-rooms.
<<else>>
"@@.npc_admin;Imma go get changed, I'll see you in a few, <<callPlayer "npc_admin">>!@@" <<He npc_admin>> states, heading for the locker-room.<br>
<br>
You can't help but notice that the clerk stares at <<=ps(setup.getNpcName('npc_admin', 'first'))>> ass until <<he npc_admin>> disappears before turning back to you, looking a bit... flush.<br>
<br>
"@@.generic_female1;As I said, come with me for a quick tour and I'll soon have you back to your friend. Oh, what I wouldn't give to be in your shoes with such a succulent <<if $npc_admin.fem>>woman<<else>>hunk of man<</if>>... anyway, sorry, come with me, please.@@"<br>
<br>
<<printThought 'Wait, did she just assume <<=setup.getNpcName("npc_admin", "first")>> and I are, like, dating or something?'>>
<</if>>
<br><br>
[<<moveTo "event_gym_first_2" "Follow her." 180>>]
</div>/*#
#desc: gym tour
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.clothingStyle = setup.analyzeWornTags(['female','male','unisex'])>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
Following the clerk, you can't help but notice that she's quite easy on the eyes, and has clearly spent a LOT of time on the premises; her yoga pants tight enough to look almost painted on, and a compression tank showing off toned arms and shoulders.<br>
<br>
"@@.generic_female1;So we are a full service facility, free weights, bikes, treadmills and other machines in the main room with a number of private rooms that host a variety of classes. Whether it's yoga, general fitness, cardio kickboxing, karate or anything else we probably have you covered, and the membership is all-inclusive so drop in on whatever you fancy!@@"<br>
<br>
You marvel at the very clean, modern facilities as she guides you through before bringing you to what look like locker rooms.<br>
<br>
<<if $scene.clothingStyle!='male'>>
"@@.generic_female1;If you would just head on in and get undressed, I'll be right back with your complimentary outfit.@@"
<<else>>
"@@.generic_female1;If you would just head on in and get undressed, I'll send someone in with your complimentary outfit.@@"
<</if>>
<br><br>
"@@.generic_female1;Just so's you're aware, we do have a mild dress code. It's nothing crazy, so long as it's athletic attire you're fine, but we don't want people walking in from off the street in jeans or a suit or something. We sell all sorts of appropriate things in our store, feel free to check it out sometime!@@"<br>
<br>
[<<moveTo "event_gym_first_3" "Head into the locker room." 180>>]
</div>/*#
#desc: enter locker-room and start stripping
#status: FINISHED 0.7.0.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<<include "calcTopId">>
<<removeEverythingButUnderwear>>
<<addItem 'sneakers_white'>>
<<addItem 'yoga_pants_pink'>>
<<addItem 'shirt_beauty_beast'>>
<<addItem 'gym_socks'>>
<<set $clothSets.push({
"name":"Workout Clothes",
"data": ["sneakers_white", 'yoga_pants_pink', 'shirt_beauty_beast', 'gym_socks'],
"important":true,
"type" : "gym"
})>>
<<if $player.sec_style.body.name != "">>
<<wearItem 'sneakers_white' true>>
<<wearItem 'yoga_pants_pink' true>>
<<wearItem 'shirt_beauty_beast' true>>
<<if setup.checkItemTypeWorn("stockings")>>
<<wearItem 'gym_socks' true>>
<<else>>
<<wearItem 'gym_socks' true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.body.name != "">>
Naturally you find yourself in the women's locker-room. As you change, another woman walks through and greets you with a nod on her way to the showers.<br>
<br>
Standing with a towel around your body, you wait for a few minutes for the gym employee to finally return, handing you a pair of yoga pants, generic sneakers and a pink tank.<br>
<br>
You thank her and she skips off leaving you to change, it is only after you've put the shirt on the you catch yourself in the mirror and read the phrase "Look like a Beauty, Train like a BEAST" on the front. You can't help but chuckle; there was a time that something like this would have been quite embarrassing, but now, well... you finish tying your shoes and head out of the room.<br>
<br>
"@@.generic_female1;Lookin' good!@@" The girl states as you walk out. "@@.generic_female1;A bit of muscle and you'll be a right fine hotty! Well, I'll leave you to your friend, enjoy your time at <<printShopName 'gym'>>, and always remember, we're here to help you meet your fitness goals!@@"<br>
<br>
<<if setup.isItemEquipped("sneakers_white") && setup.isItemEquipped("shirt_beauty_beast") && setup.isItemEquipped("yoga_pants_pink")>>
[<<moveTo "event_gym_first_4" "Head out." 3600 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
<<printThought "I need to get dressed to workout before I can leave the locker-room!">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_gym_first_4" "Get changed." 300 "<<removeAllClothing>><<wearItem 'sneakers_white' true>><<wearItem 'shirt_beauty_beast' true>><<wearItem 'yoga_pants_pink' true>>">>]
<</if>>
<</if>>
<<elseif $scene.clothingStyle != 'male' || $player.body.breastsize[0] > 0 || (!["","nomakeupmakeup"].includes(setup.getCurrentMakeup()) && setup.getHairFem($player.hair.style) > 0)>>
The locker-room is initially empty and you've started changing when you someone else walks in. Someone... female.<br>
<br>
<<if $player.body.breastsize[0] > 0>>
<<printThought "I guess with these breasts being mistaken for a girl shouldn't come as a surprise...">>
<<elseif $scene.clothingStyle == 'female'>>
<<printThought "Oh crap! The clerk thought I was a girl! Though, I guess given what I'm wearing...">>
<<elseif !["","nomakeupmakeup"].includes(setup.getCurrentMakeup()) && setup.getHairFem($player.hair.style) > 0>>
<<printThought "Oh crap! The clerk thought I was a girl! Though, I guess with this hair and makeup...">>
<<else>>
<<printThought "Oh crap! The clerk thought I was a girl! I guess I just need to be careful I don't get spotted...">>
<</if>>
<br><br>
You grab a towel to wrap around yourself before removing any more clothing.<br>
<br>
A few minutes later the gym employee returns, handing you a pair of yoga pants, generic sneakers and a pink tank.<br>
<br>
<<printThought "Sigh, I guess I should just go with the flow rather than raise suspicions.">><br>
<br>
Thanking her, she skips off, leaving you to change. It is only after you've put the shirt on that you catch your reflection in the mirror and read the phrase "Look like a Beauty, Train like a BEAST" on the front. You sigh. With the tight top and pants, you do quite look like a skinny girl
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
the bulge of your cage only really visible if someone knows what to look for.
<<else>>
the smooth front of your chastity belt meaning nobody would know without coming in contact with its hard protective shield.
<</if>>
<<else>>
your bulge only visible if someone knew what to look for.
<</if>>
<br><br>
"@@.generic_female1;Lookin' good!@@" The girl states, walking towards the locker-room exit. "@@.generic_female1;A bit of muscle and you'll be a right fine hotty! Well, I'll leave you to your friend, enjoy your time at <<printShopName 'gym'>>, and always remember, we're here to help you meet your fitness goals!@@"<br>
<br>
<<if $scene.alt>>
You consider the idea of just staying in the locker-room but, really, there would be no point. You sigh and prepare to change.
<<else>>
You consider the idea of just staying in the locker-room. How long would <<=setup.getNpcName('npc_admin', 'first')>> wait, anyway? <<He npc_admin>>'d have to at least leave for food eventually. You sigh, no point in avoiding your friend any longer, besides, <<hes npc_admin>> never been anything but friendly and supportive.
<</if>>
<br><br>
<<if setup.isItemEquipped("sneakers_white") && setup.isItemEquipped("shirt_beauty_beast") && setup.isItemEquipped("yoga_pants_pink")>>
[<<moveTo "event_gym_first_4" "Head out." 3600 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
<<printThought "I need to get dressed to workout before I can leave the locker-room!">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_gym_first_4" "Get changed." 300 "<<removeAllClothing>><<wearItem 'sneakers_white' true>><<wearItem 'shirt_beauty_beast' true>><<wearItem 'yoga_pants_pink' true>>">>]
<</if>>
<</if>>
<<else>>
<<if $options.fem>>
Walking into the locker-room you head for a quiet corner and grab a towel to cover up as you remove your clothes.
<<else>>
Walking into the locker-room you immediately feel small and intimidated; every guy looks way bigger than you are, muscle-bound and glistening with sweat as they joke and talk about "macros" and "maxing out." You head for a quiet corner and grab a towel to cover up as you remove your clothes.
<</if>>
<br><br>
A few minutes later a male gym employee pokes his head in, looking around before making a bee-line for you and handing over some clothes.<br>
<br>
"@@.generic_male1;So, uh, unfortunately we're running a bit low on stock, this was all I could find in your size...@@"<br>
<br>
Your jaw almost drops, the sneakers look fine, but the rest... a pair of yoga pants and a pink tank with the phrase "Lift like a Beauty, Train like a BEAST" is a bit much...<br>
<br>
"@@.generic_male1;I guess it's a bit girly but, I mean, it's just clothing, right?@@" He states in an effort to smooth things over.<br>
<br>
[<<moveTo "event_gym_first_4" 'Just change and meet <<if $scene.alt>><<=setup.getNpcName("npc_guard", "formal")>><<else>><<=setup.getNpcName("npc_admin", "first")>><</if>>.' 3600 "<<wearItem 'sneakers_white' true>><<wearItem 'yoga_pants_pink' true>><<wearItem 'shirt_beauty_beast' true>><<set $player.cutscene.lockinventory = true>>">>]<br>
[<<moveTo "event_gym_first_3a" "Ask if you can maybe just wear what you came in?" 180>>]
<</if>>
</div>/*#
#desc: try not to wear female workout attire first time
#status: FINISHED 0.7.0.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.kept_shirt = $scene.topId != "" && setup.getItemObj($scene.topId).tags.includes("casual")>>
<<wearItem 'sneakers_white' true>>
<<wearItem 'yoga_pants_pink' true>>
<<if !$scene.kept_shirt>>
<<wearItem 'shirt_beauty_beast' true>>
<<else>>
<<wearItem $scene.topId true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.kept_shirt>>
"@@.generic_male1;Sorry, your pants aren't to dress code, but I guess you can keep your shirt. The tank is yours in any case, I dunno, give it to your girlfriend or something.@@"<br>
<br>
<<if $npc_technician.relationship.relationship_stage >=1>>
You consider his suggestion, but you don't think that it's quite <<=ps(setup.getNpcName('npc_technician', 'first'))>> style, in fact she'd probably rather see you wearing it.
<<else>>
You can't help but wince at the reminder of <<=setup.getNpcName('npc_exgirlfriend', 'first')>> so recently dumping you, but he doesn't seem to notice.
<</if>>
<br><br>
"@@.generic_male1;Alright then, well, once again, welcome and enjoy your time at <<printShopName 'gym'>>, and always remember, we're here to help you meet your fitness goals!@@"<br>
<br>
Catching sight of yourself in a mirror you almost don't recognise yourself. Even wearing your normal top the magic of yoga pants has you looking like a skinny <<if setup.getEffectiveBreastSize() > 2>>buxom <</if>>girl...
<<else>>
He looks over your outfit and shakes his head. "@@.generic_male1;Sorry, <<callPlayer "npc_admin">>, but it's gym policy. What you're wearing just isn't appropriate for going out on the workout floor.@@"<br>
<br>
You sigh and reluctantly change into the feminine outfit.<br>
<br>
"@@.generic_male1;Alright then, well, once again, welcome and enjoy your time at <<printShopName 'gym'>>, and always remember, we're here to help you meet your fitness goals!@@"<br>
<br>
Catching sight of your reflection in a mirror you almost don't recognise yourself. In the tight pants and suggestive top you really do look like a skinny <<if setup.getEffectiveBreastSize() > 2>>buxom <</if>>girl...
<</if>>
<br><br>
<<if $scene.alt>>
You consider the idea of just staying in the locker-room but, really, there would be no point. You sigh and prepare to change.
<<else>>
You consider the idea of just staying in the locker-room. How long would <<=setup.getNpcName('npc_admin', 'first')>> wait, anyway? <<He npc_admin>>'d have to at least go for food eventually. You sigh, no point in avoiding your friend any longer, besides, <<hes npc_admin>> never been anything but supportive of you.
<</if>>
<br><br>
[<<moveTo "event_gym_first_4" "Head out." 3600 "<<set $player.cutscene.lockinventory = true>>">>]
</div>/*#
#desc: workout with admin first time
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.alt>>
<<setThreshold 'strength' 'gym_strength' 'alternate'>>
<<else>>
<<setThreshold 'strength' 'gym_strength' 'admin'>>
<</if>>
<<set $player.timebased.fatigue = 200>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.alt>>
<<createAdvBGR "./images/locations/gym_desk.png" setup.charImage("npc_guard","npc_guard_gym")>>
<<else>>
<<createAdvBGR "./images/locations/gym_desk.png" setup.charImage("npc_admin","npc_admin_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.alt>>
Walking out of the locker-room you find yourself face to face with <<=setup.getNpcName('npc_guard', 'formal')>>. She grins.<br>
<br>
"@@.npc_guard;Now that's what I'm talking about! Office clothes are nice and all, but there's just something about a cute hussy ready to work out... mmm, come on, I want to see you sweaty.@@"<br>
<br>
Before you can say anything she's wrapped a strong arm around your shoulders and is leading you off towards the weight area.<br>
<br>
"Working out" would be an understatement — while your partner tosses up full plates with an ease that reminds you of your old friend <<=setup.getNpcName('npc_admin', 'first')>> you struggle to do much of anything, which is no protection from her running you ragged like she was some kind of drill sergeant. It isn't long before you're just stumbling after her, feeling like some put-open shield-maiden for the Amazonian Goddess that moves before you.<br>
<br>
Finally the workout comes to an end, you half dead, her with little more than a pump and a slight glean of sweat. "@@.npc_guard;Dang, you really need to get in shape! I guess head on home, I'm going to do a few more sets, really wanna work my delts a bit more.@@"<br>
<br>
She heads back to the gym floor as you stagger into the locker-room, not even bothering to change, just grabbing your clothes and heading straight home.
<<else>>
Walking out of the locker-room you find yourself face to face with <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
<<if $scene.kept_shirt>>
You note <<his npc_admin>> gaze drifting over your body, seeming to pay particular attention to your legs before zeroing back in on your face.<br>
<br>
"@@.npc_admin;Compression pants! Nice, those work way better than sweat pants or the like, come on, I got the weights all racked and ready, let's go pump some iron!@@"
<<else>>
<<His npc_admin>> gaze drops directly to your chest and you suddenly have sympathy for all of those "eyes up here" jokes.<br>
<br>
"@@.npc_admin;Woah, that's, uh... an interesting sentiment! Let's get to it then, I got the weights all racked and ready, beast mode! Amirite?@@"
<</if>>
<br><br>
<<He npc_admin>> gives you a "friendly" slap on the back that sends you stumbling forward, but you shrug it off and follow <<him npc_admin>> over to a squat rack where <<he npc_admin>> guides you through the exercise. You find yourself struggling with barely more than the bar, but <<he npc_admin>> praises you all the way along, only to inadvertently humiliate you when <<he npc_admin>> "works in" a set of <<his npc_admin>> own that's easily more than five times the combined weight of what you were lifting AND yourself.<br>
<br>
Moving on <<he npc_admin>> brings you to the bench, acting as your spotter and casually hoisting the bar off your chest with one hand when you inevitably fail. After bench it's deads, then curls, then machine work, a seemingly endless series of exercises that assault every muscle in your body... even ones you didn't even know you had!<br>
<br>
You are breathless and exhausted by the end while <<he npc_admin>> but glistens with the slightest sweat, <<his npc_admin>> already large muscles pumped and huge while you look the same skinny wimp as when you walked in.<br>
<br>
"@@.npc_admin;Not bad, you seem to be getting the hang of technique just gotta keep at it, plus work a bit on your cardio. I'm here pretty much every morning in the week at seven, so feel free to join me, it's great to have a partner to talk with between sets and help with motivation, plus spots and form checks!@@"<br>
<br>
You don't see how you could possibly help spot <<him npc_admin>> given the weight differential, but you thank <<him npc_admin>> for the offer and tell <<him npc_admin>> you'll consider it.<br>
<br>
"@@.npc_admin;You look pretty beat, but I wanna get in some more work, my delts were feeling a little weak earlier, so I'll see you around <<callPlayer "npc_admin">>!@@"<br>
<br>
<<He npc_admin>> heads back to the gym floor as you stagger into the locker-room, not even bothering to change, just grabbing your clothes and heading straight home.
<</if>>
<br><br>
[<<moveTo "event_jogging_intro" "Home" 600 "<<set $scene.changed_makeup=false>>">>]
</div>/*#
#desc: introduced to jogging as an activity option
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<<include "cleanPlayer">>
<<removeAllClothing>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.cage!="">>
<<changeItemStatus $scene.cage 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cage 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cage 'piss' '["remove"]'>>
<<changeItemStatus $scene.cage 'sweaty' '["remove"]'>>
<</if>>
<<if $player.makeup.template!="" && !$scene.changeMakeup>>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<</if>>
<<washClothes>>
<<set _x = setup.cleanSexToys()>>
<</if>>
<<set $player.location to "Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/shower_scene.mp4">>
<div id="invframe" class="scrolltext">
Back from the gym you're exhausted and sore, barely staggering into the shower to let the water flow over you and soothe your aching muscles.<br>
<br>
<<printThought "Wow, I guess being a desk jockey for so long has me really out of shape. Gym is probably a good idea, but even if I can't squeeze it into the budget I could always just jog around the block to build up my stamina.">><br>
<br>
<<if $currentTasks.hasOwnProperty('technician_cafe_1') && !$currentTasks.technician_cafe_1.finished && setup.getTaskDueDate('technician_cafe_1').getUTCDay() == $now.getUTCDay()>>
Speaking of exhausted you remember your scheduled date with <<=setup.getNpcName('npc_technician', 'first')>>. On the one hand going to the mall seems akin to embarking on a cross-continental run. On the other hand, well... there IS coffee, and sweet, sweet caffeine at the other end...<br>
<br>
[<<moveTo "event_technician_meeting_tired_1" "Text her you aren't going to make it." 60 "<<set $scene.skip=true>>">>]<br>
<<if setup.getWillpower() > 0>>
<<if setup.checkOutsideDecency() || setup.checkOutsideDecencyReason() == "makeup_none">>
<<set _timeToDate = setup.secondsToDate($now, setup.getTaskDueDate("technician_cafe_1")) - 900>>
[<<moveTo "event_technician_meeting_tired_1" "Rest up a bit and push through." _timeToDate "<<set $scene.skip=false>>">>] <<hint $options "Pushing past your exhaustion would take an act of will.">><br>
<<else>>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="event_jogging_intro">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Return to the Bathroom.">><<set $scene.changeMakeup=true>>'>>]<br>
<</if>>
[@@.link_locked;You need to be dressed to go outside if you even want to attempt to meet <<=setup.getNpcName('npc_technician', 'first')>>.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<</if>>
<<else>>
[@@.link_locked;You do not have the mental energy to overcome your physical exhaustion.@@]<br>
<</if>>
<<if setup.checkItemOwned("energy_drink") || setup.checkItemOwned("energy_drink_zero") || setup.checkItemOwned("energy_drink_fem")>>
[<<moveTo "event_technician_meeting_energy_1" "Knock back an energy drink and let's do this!" 300>>]
<</if>>
<<else>>
[<<moveTo "room_bathroom" "Finish shower." 180>>]
<</if>>
</div>/*#
#desc: drink energy drink to make technician date
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemOwned("energy_drink")>>
<<setTmpEffect 'drug_energy_drink'>>
<<set $scene.drink = "energy_drink">>
<<set $player.flags.drugs.energy_drink += 1>>
<<applyStress 10>>
<<elseif setup.checkItemOwned("energy_drink_zero")>>
<<setTmpEffect 'drug_energy_drink'>>
<<set $scene.drink = "energy_drink_zero">>
<<changeHorny 100>>
<<applyStress 15>>
<<set $player.flags.drugs.energy_drink += 1>>
<<elseif setup.checkItemOwned("energy_drink_fem")>>
<<setTmpEffect 'drug_energy_drink_fem'>>
<<set $scene.drink = "energy_drink_fem">>
<<changeHorny 50>>
<<set _stress = 15-setup.getTotalValue("feminization")>>
<<applyStress _stress>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $ALONE>>
<<set $player.flags.drugs.energy_drink_fem += 1>>
<<if setup.hasTmpEffect('hormone_light')>>
<<setTmpEffect 'hormone_normal'>>
<<elseif setup.hasTmpEffect('hormone_normal')>>
<<setTmpEffect 'hormone_heavy'>>
<<elseif setup.hasTmpEffect('hormone_heavy')>>
<<setTmpEffect 'hormone_ultra'>>
<<else>>
<<setTmpEffect 'hormone_light'>>
<</if>>
<</if>>
<<set $player.timebased.fatigue = 90>>
<<deleteItem $scene.drink>>
<</if>>
<<set $player.location to "Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.drink>>
<<case "energy_drink">>
<img src="./images/inventory/item/useable/energy_drink_ui.png" style="float: left;">
<<case "energy_drink_zero">>
<img src="./images/inventory/item/useable/energy_drink_zero_ui.png" style="float: left;">
<<case "energy_drink_fem">>
<img src="./images/inventory/item/useable/energy_drink_fem_ui.png" style="float: left;">
<</switch>>
<div id="invframe" class="scrolltext">
Determined not to miss your date, you crack open a can of <<=setup.getItemName($scene.drink)>> and pound it back,
<<switch $scene.drink>>
<<case "energy_drink">>
gulping down the shockingly sour and strangely astringent energy drink.
<<case "energy_drink_zero">>
gulping down the artificially sweet, "nutrient" packed drink.
<<case "energy_drink_fem">>
feeling a disorientating rush as you gulp down the surprisingly smooth drink.<br>
<br>
For some reason you giggle slightly as you finish the drink, your gaze lingering on your reflection in the mirror.<br>
<br>
<<printThought "Did my skin get softer? Or have I always looked this feminine?">>
<</switch>>
<br><br>
You're definitely feeling alert... at the cost of a slight headache and a case of the jitters.<br>
<br>
[<<moveTo "room_bathroom" "Do something else." 180>>]
</div>/*#
#desc: technician meeting after gym intro
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.skip>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<<completeTask 'technician_cafe_1' $now false>>
<<else>>
<<set $player.timebased.fatigue = 90>>
<<spendWillpower 1>>
<</if>>
<</if>>
<<set $player.location to "Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.skip>>
<<set $currentcall = true>>
<<set $player.location to "Phonecall">>
<<createAdvBGR "./images/locations/phonecall.png">>
<<elseif $player.sec_style.clothing.makeup != "">>
<<set $player.location to "Bathroom">>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<<else>>
<<set $player.location to "Cafe: Newtype IV">>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.skip>>
You text <<=setup.getNpcName('npc_technician', 'first')>> to let her know you are feeling under the weather and won't be able to make it to your scheduled <<if $npc_technician.relationship > 0>>date<<else>>meeting<</if>> with her today.<br>
<br>
<<if $npc_technician.relationship > 0>>
"@@.npc_technician;Oh no, you poor thing! I've got a cute nurse's outfit if you need ministering too...@@"<br>
<br>
As tempting as her offer is, you thank her, but explain that you're just too tired.<br>
<br>
"@@.npc_technician;Aww, that's disappointing, well, stay in touch and let me know when I can see you again!@@"
<<else>>
"@@.npc_technician;Damn, that sucks well, I guess get feeling better and maybe hit me up next weekend, okay?@@"
<</if>>
<br><br>
[<<moveTo 'room_bedroom' "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<elseif $player.sec_style.clothing.makeup != "">>
Even after resting up as much as you can you more fall out of bed than rise. Staggering through the house you catch a look in the mirror — you look like hell<<if $player.makeup.permanent != "" || $player.makeup.template != "" && $player.makeup.messed < 25>>, though your makeup is providing a bit of cover.<<else>>, maybe you should put on some makeup before meeting you friend?<</if>><br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Do your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="event_technician_meeting_tired_2">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Head to the mall.">>'>>]<br>
<</if>>
[<<moveTo "room_mall_cafe" "Just head for the mall." _tmpSeconds "<<addCredits -10>>">>]
<<else>>
You rest for a while, but your body is still sore and tired when the time comes for you to fall out of bed and head to the mall. Mustering every ounce of will you have you somehow drag your way to Cafe Newtype early, ordering the strongest drink they have and pounding it back as you feel the bitter brew flowing through your veins moving you from "dead on your feet" to "twitching corpse." <br>
<br>
Feeling tired yet too jittery to sit still you head to the front of the cafe to pace and wait for your friend.<br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
[<<moveTo "room_mall_cafe" "Wait." _tmpSeconds "<<addCredits -10>>">>]
<</if>>
</div>/*#
#desc: technician meeting after gym intro
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -10>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<</if>>
<<set $player.location to "Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Cafe: Newtype IV">>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
<<if $player.makeup != "">>
At least looking a bit better now that you have your "face" on you stagger out of your flat and head for the mall.
<<else>>
Though splashing your face is a bit refreshing you end up not having the energy to put on your "face" before heading out, instead merely staggering out of your flat and heading for the mall.
<</if>>
It takes nearly every ounce of will you have to put one foot in front of the other, but you make it to Cafe Newtype early, ordering the strongest drink they have and pounding it back as you feel the bitter brew flowing through your veins moving you from "dead on your feet" to "twitching corpse." <br>
<br>
Feeling tired yet too jittery to sit still you head to the front of the cafe to pace and wait for your friend.<br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
[<<moveTo "room_mall_cafe" "Wait." _tmpSeconds>>]
</div>/*#
#desc: invited to gym after evil admin
#status: RELEASED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 10, 0, false)>>
<<addTaskById 'task_first_gym_alt' _nextDate>>
<<set $player.locations.gym = true>>
<<set $npc_guard.profile = true>>
<</if>>
<<set $player.location to "Lobby of Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png" setup.charImage("npc_guard","npc_guard_casual")>>
<div id="invframe" class="scrolltext">
You're making your way across the lobby when a guard calls you over to the front desk.<br>
<br>
A bit nervous you rush over
<<if $npc_ai.flags.missions.connection>>
recognising the woman who had "inspected" you whilst you were smuggling <<=setup.getNpcName("npc_ai", "first")>> out of the building.
<<else>>
a tall, broad-shouldered woman who looks practically Amazonian in her tight uniform.
<</if>>
<br><br>
"@@.npc_guard;Hey, Miss <<=$player.last_name>>? My name is <<=setup.getNpcName("npc_guard", "formal")>> and I've been watching you and, well... my gym is running a special promo for if we bring in a friend and, no offence, you look like you could use a bit of exercise? Meet me Saturday morning and I'll show you around the gym, I think you'll really like the place.@@"<br>
<br>
You thank her for the offer. Too intimidated by her size and grin to turn her down outright you tell her you'll "@@.pc;Consider it,@@" and then hurry to the elevator.<br>
<br>
[<<moveTo "room_elevator_in" 'Up to <<=ps(setup.getNpcName("npc_manager", "formal"))>> office.' 120>>]
</div>/*#
#desc: npc_guard calls you for not showing up to gym
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.wasSleeping = $scene.beforetasklocation.last() == "room_dreams">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.wasSleeping>>
You are awoken by your phone ringing loudly.<br>
<br>
<<printThought "Gah! <<=setup.getNpcName('npc_guard', 'formal')>> wanted to show me the gym!">>
<<else>>
Your phone rings, it's <<=setup.getNpcName('npc_guard', 'formal')>> as you remember her invitation get together this morning at the gym.
<</if>>
<br><br>
"@@.npc_guard;Hey, <<=$player.first_name>>, so I'm at the gym and... you ain't here! Don't tell me you're scared of working up a little sweat!@@"<br>
<br>
You hurriedly reply that you just overslept.<br>
<br>
She laughs "@@.npc_guard;No excuses! You get your cute little ass over here, right now!@@"<br>
<br>
<<if $scene.wasSleeping>>
[<<moveTo "event_gym_noshow_2_change_alt" "Say you'll be right there." 180 "<<set $scene.gymLate = true>>">>]<br>
[<<moveTo "event_gym_noshow_2_alt" "Apologise and say you're busy." 180>>]
<<elseif setup.checkOutsideDecency()>>
[<<moveTo "event_gym_first_1" "Head to the gym." 180 "<<set $scene.gymLate = true>><<set $currentTasks.task_first_gym.condition='Complete'>>">>]<br>
[<<moveTo "event_gym_noshow_2_alt" "Apologise and say you're busy." 180>>]
<<elseif setup.inPassageTag($locationbeforeuseage, "home")>>
[<<moveTo "event_gym_noshow_2_change_alt" "Say you just need to get changed and you're on your way." 180 "<<set $scene.gymLate = true>>">>]<br>
[<<moveTo "event_gym_noshow_2_alt" "Apologise and say you're busy." 180>>]
<<else>>
[<<moveTo "event_gym_noshow_2_alt" "Apologise and say you're busy." 180>>]
<</if>>
</div>/*#
#desc: decline to meet guard at gym first time
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 10, 0)>>
<<addTaskById 'task_first_gym_alt' _nextDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You apologise, but explain that you aren't going to make it out to the gym today.<br>
<br>
You hear her sigh over the phone. "@@.npc_guard;Hmm, I don't see what you could have that's more important than fitness — you gotta invest in yourself my cute friend! Let's try this again next Saturday, okay?@@"<br>
<br>
You apologise again and reply you'll see what you can do.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: change clothes to head to gym
#status: RELEASED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You hang up and get changed to meet <<=setup.getNpcName('npc_guard', 'formal')>> at the gym.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_gym_first_1" "Head to the gym." 180 "<<set $scene.gymLate = true>><<set $currentTasks.task_first_gym.condition= 'Complete'>>">>]<br>
<<else>>
[@@.link_locked;You are not dressed properly to go out.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
[<<moveTo "event_gym_noshow_3_alt" "Change your mind and bail on your meeting." 60>>]
</div>/*#
#desc: decline to meet guard at gym first time
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 10, 0)>>
<<addTaskById 'task_first_gym_alt' _nextDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You call <<=setup.getNpcName('npc_guard', 'formal')>> to let her know you aren't going to make it to the gym today after all. There is a long silence and you think for a moment she has hung up when she finally speaks.<br>
<br>
"@@.npc_guard;Very disappointing, Miss <<=$player.last_name>>. I realise we don't know each other that well<<if $npc_ai.flags.missions.connection>>, well, unless you count me wearing your ass like a glove<</if>>, but I am only trying to help you out — fitness is good for everyone. You gotta invest in yourself!@@"<br>
<br>
You feel embarrassed to disappoint her and reflexively promise to show up next time before hanging up.<br>
<br>
[<<moveTo "room_foyer" "Done." 60>>]
</div>/*#
#desc: show up to gym
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I should change in the lockerroom.">>
<<include "calcGymAttire">>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_desk.png">>
<div id="invframe" class="scrolltext">
You arrive at <<printShopName 'gym'>>, the local gym. The ultra-fit clerk at the front desk greets you with a smile and a wave.<<if $gym.membership.active && $npc_swolebro.stage >= 1 && $npc_fit_bimbo.stage >= 1 && ($gym.lewd_male || $options.fem && $gym.lewd_female && $gym.lewd_futa)>> You see several posters advertising "Miss Hard Pump" competition hung around the lobby.<</if>><br>
<br>
<<if $currentTasks.hasOwnProperty('hard_pump_contest') && !$currentTasks.hard_pump_contest.finished>>
<<if setup.hoursToDate($now,setup.getTaskDueDate('hard_pump_contest')) <= 5 && setup.daysToDate($now,setup.getTaskDueDate('hard_pump_contest')) == 0>>
It looks like you're a bit early, the Miss Hard Pump Contest starts at nine.<br>
<br>
<<include "calcGymAttire">>
<<if $scene.gymAttire>>
<<set _tmpSeconds = setup.secondsToDate($now,setup.getTaskDueDate('hard_pump_contest'))>>
[<<moveTo "room_gym_lobby" 'Wait for the Miss Hard Pump Contest to start.' _tmpSeconds>>]<br>
<<else>>
[@@.link_locked;I can't enter the gym contest not dressed to workout, I should hit the locker-room to change.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You notice the posters and remember that you are registered for the Miss Hard Pump contest <<if setup.daysToDate($now,setup.getTaskDueDate('hard_pump_contest')) < 6>>this<<else>>next<</if>> weekend.@@]<br>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_first_gym_alt') && !$currentTasks.task_first_gym_alt.finished>>
<<if setup.daysToDate($now, setup.getTaskDueDate('task_first_gym_alt')) == 0 && $now.getUTCHours() < 10>>
It looks like you're a bit early, <<=setup.getNpcName("npc_guard", "first")>> told you to meet her here at ten.<br>
<br>
<<set _gymStart = setup.setNextDate($now, 0, 10, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_gymStart)>>
[<<moveTo "room_gym_lobby" 'Wait for <<=setup.getNpcName("npc_guard", "first")>> to arrive.' _tmpSeconds>>]<br>
[@@.link_locked;It appears the gym equipment and apparel shop is closed at the moment.@@]
<<else>>
<<printThought 'Hmm, <<=setup.getNpcName("npc_guard", "first")>> invited me here but I feel a bit awkward alone... I should come back on Saturday morning when she said to meet me.'>>
<</if>>
<<elseif $currentTasks.hasOwnProperty('task_first_gym_alt') && $currentTasks.task_first_gym_alt.finished && $currentTasks.task_first_gym_alt.condition == "Failed">>
<<printThought 'Hmm, <<=setup.getNpcName("npc_guard", "formal")>> is a little scary... probably best not to try to sneak a first gym visit rather than meeting her.'>>
<<elseif !$currentTasks.hasOwnProperty('task_first_gym_alt') && $currentTasks.hasOwnProperty('task_first_gym') && (!$currentTasks.task_first_gym.finished || $currentTasks.task_first_gym.condition == "Failed")>>
<<if $currentTasks.hasOwnProperty('task_first_gym') && !$currentTasks.task_first_gym.finished>>
<<if setup.daysToDate($now, setup.getTaskDueDate('task_first_gym')) == 0 && $now.getUTCHours() < 10>>
It looks like you're a bit early, <<=setup.getNpcName("npc_admin", "first")>> told you to meet <<him npc_admin>> here at ten.<br>
<br>
<<set _gymStart = setup.setNextDate($now, 0, 10, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_gymStart)>>
[<<moveTo "room_gym_lobby" "Wait for your friend to arrive." _tmpSeconds>>]<br>
[@@.link_locked;It appears the gym equipment and apparel shop is closed at the moment.@@]
<<else>>
<<printThought 'Hmm, <<=setup.getNpcName("npc_admin", "first")>> seemed really psyched to introduce me to this place, I should wait and meet <<him npc_admin>> on Saturday as we agreed.'>>
<</if>>
<<elseif $currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.finished && $currentTasks.task_first_gym.condition == "Failed">>
<<printThought 'Hmm, <<=setup.getNpcName("npc_admin", "first")>> seemed really psyched to introduce me to this place, I should make arrangements with <<him npc_admin>> again to show me around.'>>
<</if>>
<<else>>
<<if $gym.membership.active>>
<<if $now.getUTCHours() == 6 && $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
<<if ($npc_admin.flags.evil < 1 || $npc_admin.flags.evil >= 4) && State.hasPlayed("event_admin_talk_gym")>>
You glance at the clock, <<=setup.getNpcName('npc_admin', 'first')>> should be showing up at seven if you wanted to work out with <<him npc_admin>>.<br>
<br>
<<set _nextdate = setup.setNextDate($now, 0, 7, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<<if $scene.gymAttire>>
[<<moveTo "event_admin_gym_morning_1_gym_alt" "Wait for your friend." _tmpSeconds>>]<br>
<<else>>
[@@.link_locked;I should put on workout attire before <<he npc_admin>> gets here.@@]<br>
<</if>>
<<else>>
You glance at the clock; usually <<=setup.getNpcName('npc_admin', 'first')>> would be here at seven to work out, but now... you sigh, saddened at the thought of your lost friend.<br>
<br>
<</if>>
<</if>>
<<set _nextdate1 = setup.checkTaskLocationTime('room_gym_lobby')>>
<<if setup.compareDay($now,_nextdate1) && setup.secondsToDate($now,_nextdate1) != setup.secondsToDate($now,setup.getTaskDueDate('task_gym_tournament')) && setup.secondsToDate($now,_nextdate1) != setup.secondsToDate($now,setup.getTaskDueDate('hard_pump_contest'))>>
You have plans to meet somebody here today at <<=setup.shortTime(_nextdate1)>>.<br>
<br>
<<set _tmpSeconds1 = setup.secondsToDate($now,_nextdate1)>>
[<<moveTo "room_gym_lobby" 'Wait for your date.' _tmpSeconds1>>]<br>
<</if>>
<<if $now.getUTCHours() == 5 && ($now.getUTCDay() == 0 || $now.getUTCDay() == 6)>>
<<if $npc_guard.flags.canWorkout>>
You glance at the clock, <<=setup.getNpcName('npc_guard', 'formal')>> should be showing up at six if you wanted to work out with her.<br>
<br>
<<set _nextdate = setup.setNextDate($now, 0, 6, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<<if $scene.gymAttire>>
[<<moveTo "event_guard_gym_morning_1_gym_alt" 'Wait for <<=setup.getNpcName("npc_guard", "formal")>>.' _tmpSeconds>>]<br>
<<else>>
[@@.link_locked;I should put on workout attire before <<=setup.getNpcName("npc_guard", "formal")>> gets here.@@]<br>
<</if>>
<</if>>
<</if>>
<<if $gym.membership.active && $npc_swolebro.stage >= 1 && $npc_fit_bimbo.stage >= 1 && ($gym.lewd_male || $options.fem && $gym.lewd_female && $gym.lewd_futa)>>
<<if State.hasPlayed('event_gym_contest_info_1')>>
<<if $currentTasks.hasOwnProperty('hard_pump_contest')>>
<<if $currentTasks.hard_pump_contest.finished>>
<<if State.hasPlayed('event_gym_contest_7_win')>>
[@@.link_locked;You have already won the Miss Hard Pump Contest.@@]<br>
<<else>>
[<<moveTo "event_gym_contest_info_1" "Ask about taking another shot at the Miss Hard Pump contest." 60 "<<set $scene.first=false>>">>]<br>
<</if>>
<</if>>
<<else>>
[<<moveTo "event_gym_contest_info_1" "Ask about the Miss Hard Pump contest." 60 "<<set $scene.first=false>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_gym_contest_info_1" "Ask about the Miss Hard Pump posters." 60 "<<set $scene.first=true>>">>]<br>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_gym_tournament') && !$currentTasks.task_gym_tournament.finished && setup.hoursToDate($now,setup.getTaskDueDate('task_gym_tournament')) <= 5 && setup.daysToDate($now,setup.getTaskDueDate('task_gym_tournament')) == 0>>
<<set _time = setup.secondsToDate($now,setup.getTaskDueDate('task_gym_tournament'))>>
[<<moveTo "room_gym_lobby" "Get ready for the martial arts tournament." _time "<<set $scene.fromGym=true>>">>]<br>
<</if>>
[<<moveTo "room_gym_membership" "Cancel your membership." 60 "<<set $scene.cancel=true>>">>]<br>
[<<moveTo "room_gym_lockerroom_choice" "Head for the locker room." 180>>]<br>
<<else>>
Your membership at <<printShopName 'gym'>> has expired, you'll have to talk to the clerk to re-enrol.<br>
<br>
[<<moveTo "room_gym_membership" "Talk about re-enabling your membership." 60 "<<set $scene.cancel=false>>">>]<br>
<</if>>
<<if setup.checkTaskCompleted('task_first_gym') == 1 || setup.checkTaskCompleted('task_first_gym_alt') == 1>>
[<<moveTo "room_gym_shop" "Visit the gym apparel shop." 30>>]
<<else>>
[@@.link_locked;It appears the gym equipment and apparel shop is closed at the moment.@@]
<</if>>
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty("gym_futa_climbing")>>
<<if $currentTasks.gym_futa_climbing.finished>>
[@@.link_locked;You don't see any reason to visit the climbing gym without a belayer.@@]<br>
<<elseif setup.daysToDate($now, setup.getTaskDueDate("gym_futa_climbing")) > 0>>
[@@.link_locked;Your climbing date isn't today, so there's no sense heading around the corner to the climbing gym.@@]<br>
<<elseif setup.hoursToDate($now, setup.getTaskDueDate("gym_futa_climbing")) > 2>>
[@@.link_locked;It's the wrong time for your date at the climbing gym.@@]<br>
<<else>>
<<set _seconds = setup.secondsToDate($now, setup.getTaskDueDate("gym_futa_climbing"))>>
[<<moveTo "event_gym_futa_4_date_1" "Head around the corner to the climbing gym and wait for your date." _seconds>>]<br>
<</if>>
<</if>>
[<<moveTo "room_citymap" "Leave the gym." 300>>]
</div>/*#
#desc: adjust gym membership
#status: FINISHED 0.7.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I should change in the lockerroom.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !State.hasPlayed("event_gym_contest_7_win")>>
/% pro-rate your balance, assume all months are 30 days because lazy %/
<<set $scene.amount = Math.floor($gym.membership.monthly_price * (1 - $now.getUTCDate()/30))>>
<<if $scene.cancel>>
<<addCredits $scene.amount>>
<<set $gym.membership.active = false>>
<<else>>
<<addCredits `-($scene.amount)`>>
<<set $gym.membership.active = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_desk.png">>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_gym_contest_7_win")>>
You go to cancel your membership and the clerk raises an eyebrow in confusion. "@@.generic_female1;You're Miss Hard Pump... which means you have a lifetime complimentary membership!@@"
<<else>>
<<if $scene.cancel>>
You explain to the clerk that money is too tight right now and you need to cancel your membership.<br>
<br>
They express sympathy for your situation, refunding the remaining <<=$scene.amount>> on your account.
<<else>>
You tell the clerk that you'd like you re-up your membership, they smile and welcome you back, taking <<=$scene.amount>> to cover the rest of the month. It will auto-bill as part of your monthly expenses after that.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_gym_lobby" "Back." 60>>]
</div>/*#
#desc: gym choose activity
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I should change in the lockerroom.">>
<<if !$scene.hasOwnProperty("futaPresent")>>
<<set $scene.futaPresent = $gym.lewd_futa && State.hasPlayed("event_gym_futa_1_5") && random(1,4) == 1 && setup.hasFreeTime($now, $player, $currentTasks, 4000)>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
You look around the gym and consider what you want to do today. There's the usually open workout equipment, plus the gym offers a seemingly endless sequence of classes running a half hour each.
<<set _count = 0>>
<<if ($gym.classes.yoga.level_fem > 0 || $gym.classes.yoga.level_male > 0)>><<set _count += 1>><</if>>
<<if $gym.classes.high_heel.level > 0>><<set _count += 1>><</if>>
<<if $gym.classes.cardio_kickboxing.level > 0>><<set _count += 1>><</if>>
<<if $gym.classes.other.level > 0>><<set _count += 1>><</if>>
<<switch _count>>
<<case 4>>
While the schedule itself remains a confusing mess, you're confident you've found all of the "general public" classes the gym offers.
<<case 2 3>>
You are certain there are more classes to discover.
<<case 1>>
While you managed to attend the one class, you don't have any further understanding of the schedule, save that you're certain that there are more to discover.
<<case 0>>
Unfortunately, it's all organised by weird acronyms so unless you have experience, you are left basically rolling the dice and picking at random.
<</switch>>
<<if $scene.futaPresent>><br><br>You spot <<=setup.getNpcName("npc_gym_futa","first")>> working out by herself.<</if>>
<br><br>
<<if Math.round($player.timebased.fatigue) >= .75*($player.timebased.fatiguemax/2)>>
[@@.link_locked;Unfortunately you are too tired to get in any more exercise.@@]<br>
<<else>>
<<if $now.getUTCMinutes() > 25 && $now.getUTCHours() == 6 && $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
<<if ($npc_admin.flags.evil < 1 || $npc_admin.flags.evil >= 4) && State.hasPlayed("event_admin_talk_gym")>>
You glance at the clock, <<=setup.getNpcName('npc_admin', 'first')>> should be showing up at seven if you wanted to work out with <<him npc_admin>>.<br>
<br>
<<set _nextdate = setup.setNextDate($now, 0, 7, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
[<<moveTo "event_admin_gym_morning_1_gym_alt" "Wait for your friend." _tmpSeconds>>]<br>
<<else>>
You glance at the clock; usually <<=setup.getNpcName('npc_admin', 'first')>> would be here at seven to work out, but now... you sigh, saddened at the thought of your lost friend.<br>
<br>
<</if>>
<</if>>
[<<moveTo "event_gym_weights" "Hit the weights." 600>>]<br>
[<<moveTo "event_gym_cardio" "Do some cardio." 1800>>]<br>
<<if setup.hasThreshold('bimbofication', 'gym_bimbofication', 'bimbo_class')>>
[<<moveTo "event_gym_bimbo" "Attend a bimbo training class." 60>>]<br>
<<elseif $npc_fit_bimbo.stage == 1 && !State.hasPlayed("event_gym_bimbo_1")>>
[<<moveTo "event_gym_bimbo" 'Check out the "private" class you heard about.' 60>>] (NEW)<br>
<</if>>
<<if $npc_swolebro.stage == 1>>
[<<moveTo "event_gym_swolebro" "Take up the invite to work in with the hardcore lifters." 60>>] (NEW)<br>
<<elseif $npc_swolebro.stage > 1>>
[<<moveTo "event_gym_swolebro" "Jump in on a session with the hardcore lifters." 60>>]<br>
<</if>>
<br>
Jump In On a Fitness Class:<br>
<<if $gym.classes.yoga.level_fem > 0 || $gym.classes.yoga.level_male > 0>>
[<<moveTo "event_gym_class_yoga" "Take a yoga class." 300>>]<br>
<</if>>
<<if $gym.classes.high_heel.level > 0>>
[<<moveTo "event_heel_training_intro_alt" "Take a high heel fitness class." 1800>>]<br>
<</if>>
<<if $gym.classes.cardio_kickboxing.level > 0>>
[<<moveTo "event_gym_class_cardio_kickboxing" "Take a cardio kickboxing class." 1800>>]<br>
<</if>>
<<if $gym.classes.other.level > 0>>
[<<moveTo "event_gym_class_other" "Take a general fitness class." 1800>>]<br>
<</if>>
<<if $gym.classes.martial_arts_available>>
<<if $now.getUTCHours() > 17 && $now.getUTCHours() < 19>>
<<if $fetish.hypnosis && $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && !$currentTasks.psychiatrist_endless_hypnosis_1.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) == 0 && ($now.getUTCDay()==3 || $now.getUTCDay()==0)>>
[@@.link_locked;Karate is offered at 7 pm every evening, but something in your head is preventing you from changing for class.@@]<br>
<<printThought "Must... attend therapy...">>
<<elseif $currentTasks.hasOwnProperty('admin_code_red_1') && !$currentTasks.admin_code_red_1.finished && setup.daysToDate($now, setup.getTaskDueDate('admin_code_red_1')) == 0>>
[@@.link_locked;Looking at the martial arts schedule reminds you of your planned meet-up with <<=setup.getNpcName("npc_admin","first")>> tonight.@@]<br>
<<elseif !setup.hasFreeTime($now, $currentTasks, 3700)>>
[@@.link_locked;Karate is normally offered at 7 pm every evening, but there's a sign that says the instructor is out and today's class is cancelled.@@]<br>
<<else>>
[<<moveTo "event_gym_class_karate" "Work on your face-kicking skills and attend the Karate class." 60>>]
<<if !setup.hasThreshold('martial_arts', 'bjj', 'bjj_first') && !setup.hasThreshold('martial_arts', 'karate', 'karate_first')>>
(NEW)
<</if>>
<</if>>
<br>
<<else>>
[@@.link_locked;Karate is offered at 7 pm every evening.@@]<br>
<</if>>
<<if $now.getUTCHours() > 18 && $now.getUTCHours() < 20>>
<<if $fetish.hypnosis && $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && !$currentTasks.psychiatrist_endless_hypnosis_1.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) == 0 && ($now.getUTCDay()==3 || $now.getUTCDay()==0)>>
[@@.link_locked;BJJ is offered at 8 pm every evening, but something in your head is preventing you from changing for class.@@]<br>
<<printThought "Must... attend therapy...">>
<<elseif $currentTasks.hasOwnProperty('admin_code_red_1') && !$currentTasks.admin_code_red_1.finished && setup.daysToDate($now, setup.getTaskDueDate('admin_code_red_1')) == 0>>
[@@.link_locked;Looking at the martial arts schedule reminds you of your planned meet-up with <<=setup.getNpcName("npc_admin","first")>> tonight.@@]<br>
<<elseif !setup.hasFreeTime($now, $currentTasks, 3700)>>
[@@.link_locked;BJJ is normally offered at 7 pm every evening, but there's a sign that says the instructor is out and today's class is cancelled.@@]<br>
<<else>>
[<<moveTo "event_gym_class_bjj" "Practice aggressive snuggling and take a BJJ class." 60>>]<br>
<<if !setup.hasThreshold('martial_arts', 'bjj', 'bjj_first') && !setup.hasThreshold('martial_arts', 'karate', 'karate_first')>>
(NEW)
<</if>>
<</if>>
<br>
<<else>>
[@@.link_locked;BJJ is offered at 8 pm every evening.@@]<br>
<</if>>
<</if>>
<<if !(($gym.classes.yoga.level_fem > 0 || $gym.classes.yoga.level_male > 0) && $gym.classes.cardio_kickboxing.level > 0 && $gym.classes.other.level > 0 && $gym.classes.high_heel.level > 0)>>
<<switch random(1,4)>>
<<case 1>>
<<if $scene.hasOwnProperty('yoga') && $scene.yoga>>
[<<moveTo "event_gym_class_other" "Take a class at random." 1800>>]
<<else>>
[<<moveTo "event_gym_class_yoga" "Take a class at random." 1800>>]
<</if>>
<<case 2>>
[<<moveTo "event_gym_class_cardio_kickboxing" "Take a class at random." 1800>>]
<<case 3>>
<<if setup.getTotalValue("heels") > 0>>
[<<moveTo "event_heel_training_intro_1" "Take a class at random." 600>>]
<<else>>
[<<moveTo "event_gym_class_other" "Take a class at random." 1800>>]
<</if>>
<<case 4>>
[<<moveTo "event_gym_class_other" "Take a class at random." 1800>>]
<<default>>
ERROR: unknown class!<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</switch>>
<br>
<</if>>
<</if>>
<<if $scene.futaPresent>>
<<if !State.hasPlayed("event_gym_futa_2_8")>>
<<moveTo "event_gym_futa_2_1">>
<<elseif State.hasPlayed("event_gym_futa_dinner_2") && !State.hasPlayed("event_gym_futa_dissatisfaction_1")>>
[<<moveTo "event_gym_futa_dissatisfaction_1" 'Approach <<=setup.getNpcName("npc_gym_futa","first")>>.' 180>>]<br>
<<elseif State.hasPlayed("event_gym_futa_dissatisfaction_3_mall") && !State.hasPlayed("event_gym_futa_sexshop_1")>>
[<<moveTo "event_gym_futa_sexshop_1" 'Approach <<=setup.getNpcName("npc_gym_futa","first")>>.' 180>>]<br>
<<elseif State.hasPlayed("event_gym_futa_dissatisfaction_3_company") && !State.hasPlayed("event_gym_futa_application_1_intro_1")>>
[<<moveTo "event_gym_futa_application_1_intro_1" 'Approach <<=setup.getNpcName("npc_gym_futa","first")>>.' 180>>]<br>
<<else>>
[<<moveTo "event_gym_futa_repeatable_1" 'Approach <<=setup.getNpcName("npc_gym_futa","first")>>.' 180>>]<br>
<</if>>
<</if>>
<br>
[<<moveTo "room_gym_lockerroom_post" "Call it a day and head back to the locker-room." 60>>]
</div><<include enterroom>>
<<initRoom>>
<<if $taskEvents && $taskEvents.length == 0 && !$scene.triggeredEvent>>
<<if $scene.lockerroom == "female">>
<<moveTo "room_gym_lockerroom_women_post">>
<<else>>
<<moveTo "room_gym_lockerroom_men_post">>
<</if>>
<</if>>/*#
#desc: gym store
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I should change in the lockerroom.">>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Apparel Shop">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_desk.png">>
<div id="invframe" class="scrolltext">
You enter the gym apparel and equipment shop and look at the wares.<br>
<<printShop 'room_gym_shop' 'gym' $shopStatus>><br>
<br>
<<include thoughts_current>>
<br><br>
[<<moveTo "room_gym_lobby" "Back to the lobby." 60>>]
</div>/*#
#desc: npc_gym_futa saves you while lifting
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<div id="invframe" class="scrolltext">
You're lifting alone, working on <<if setup.getTotalValue("strength") > 15>>further <</if>>refining your technique when you make the mistake of going for one too many reps and find yourself in the precarious position of being stuck between the bar and the bench.<br>
<br>
You are attempting not to panic as you try to decide between attempting a roll of shame or the loud and embarrassing un-loading of weight... when a figure suddenly appears behind you, a hand wrapping around the bar and easily hoisting it off your chest.<br>
<br>
[<<moveTo "event_gym_futa_1_2" "Look up at your rescuer." 180>>]
</div>/*#
#desc: npc_gym_futa introduction
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You look up... and up, at the toned red-head towering over you. For an instant you wonder if you might have passed out under the weights and that you're dreaming of <<=setup.getNpcName("npc_manager","formal")>>... but your vision comes into focus a moment later and you find yourself looking up at a toned female titan.<br>
<br>
"@@.npc_gym_futa;Careful there!@@" The woman says in a slightly husky voice that also reminds you of your <<=setup.getNpcName("npc_manager","title")>> with its subtle dominance. "@@.npc_gym_futa;You shouldn't be going that heavy without a spot! Tell me, who taught you like this? Go on, I've seen you around the gym... was it the swole<<=$npc_swolebro.bro>>? Those gym-science ascribing galoots? Or maybe it was those cardio bunny bimbos, eh? Those martial artists thinking fancy flippy technique is a substitute for strength and the stamina to go hard all night long? I know <<=setup.getNpcName("npc_yogateacher","first")>> and the other pretzels won't touch a weight, so it wasn't them...@@"<br>
<br>
She snorts, not even letting you get a word in edgewise as she's already started changing your weights. "@@.npc_gym_futa;Well, whoever it was, you're in better hands now. Come on, get back on the bench, you can't let the weights win like that. I'm gonna guide you through the rest of this workout and you're gonna hit it hard, effective, and safe, right?@@"<br>
<br>
You blink in surprised, intimidated... and a little bit scared confusion as she sniffs in annoyance. "@@.npc_gym_futa;I SAID, is that right? I admire the silence before your betters, but when I ask you a question I expect a response, so... is that right?@@"<br>
<br>
<<if $fetish.daddy>>
[<<moveTo "event_gym_futa_1_3" "Yes, Mommy." 180 '<<set $scene.response="mommy">>'>>]<br>
<</if>>
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo "event_gym_futa_1_3" "Yes, Mistress." 180 '<<set $scene.response="mistress">>'>>]<br>
<</if>>
[<<moveTo "event_gym_futa_1_3" "Yes, Ma'am." 180 '<<set $scene.response="maam">>'>>]<br>
[<<moveTo "event_gym_futa_1_3" "Just nod." 180 '<<set $scene.response="nod">>'>>]
</div>/*#
#desc: npc_gym_futa guides you through workout
#status: FINISHED 0.9.0.0
#ignore_spell: noodly
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.response == 'mistress'>>
<<applyExperience 'submission' 12 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<switch $scene.response>>
<<case 'mommy'>>
"@@.pc;Yes, <<=setup.getNpcName("npc_gym_futa","custom", "Mommy")>>.@@" You softly reply and the woman grins.<br>
<br>
"@@.npc_gym_futa;Mommy? Hmm... yeah, I'll be your muscle mommy, and you can suckle on the teat of my training knowledge... metaphorically speaking.@@" She winks as if to silently add that "metaphorical" could be a temporary restriction.
<<case 'mistress'>>
"@@.pc;Yes, Mistress.@@" You submissively reply on reflex and the woman grins.<br>
<br>
"@@.npc_gym_futa;Mistress? Someone's been trained...<<if setup.checkItemTypeTag('choker', ['leash_attachment'])>> and maybe more, judging by that collar, eh?<</if>>@@" You blush as she chuckles.
<<case 'maam'>>
"@@.pc;Yes, ma'am.@@" You reply and the woman smiles.<br>
<br>
"@@.npc_gym_futa;Hmm... that'll do...@@" She replies after a long stare.
<<case 'nod'>>
You don't trust your voice and just nod nervously. The woman smirks. "@@.npc_gym_futa;Quiet one, eh? Well, you know what they say about what can be said just with body language.@@" She flexes casually as she looks down at you in a very clear demonstration of that very fact.
<<default>>
ERROR: unexpected scene.response <<=$scene.response>>
<</switch>>
<br><br>
"@@.npc_gym_futa;The name's <<=setup.getNpcName("npc_gym_futa","first")>>, by the way. Now get on this bench, we're gonna super-set with rows to see about getting those noodly arms of yours into proper shape.@@"<br>
<br>
You feel very small as you move back onto the bench as directed and she takes a spotters position... a position that has you looking straight up at her compression tights... and the unmistakable bulge they're stretched over...<br>
<br>
She doesn't give you a chance to think, already starting to un-rack the weight for you...<br>
<br>
[<<moveTo "event_gym_futa_1_4" "Get to lifting." 1800>>]
</div>/*#
#desc: npc_gym_futa guides you through strength workout
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'skip' $SEEN_FRIEND>>
<<applyFatigue 70>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_gym_futa","first")>> wasn't messing around with her invitation... she has you lifting hard, heavy... and constantly, barely giving you a moment's rest from racking one set before she has you back on your feet and bent over doing barbell rows.<br>
<br>
"@@.npc_gym_futa;Posture! Pull those shoulder blades together! Another rep! Now back on the bench!@@"<br>
<br>
The woman rides you like a drill sergeant, and you barely have time to think as she has you going back and forth between exercises, adjusting the weights up and down in a seeming quest to wring every drop of energy from your arms.<br>
<br>
By the time she finally finishes you're panting on the bench, arms flopped down on either side of you... as she grabs one limb and starts massaging it, her strong hands painfully breathing life into the aching muscles "@@.npc_gym_futa;Not bad, not bad... but I can see you still need quite a bit of work. Some of those habits...@@" she shakes her head.<br>
<br>
You take a moment to look up at the woman, her red hair and dominant presence initially had you comparing her to <<=setup.getNpcName("npc_manager","formal")>>... but looking closer they're really quite different, <<=ps(setup.getNpcName("npc_gym_futa","first"))>> presence much more on the physical side as she towers what has to be close to two metres tall, long limbs and glistening toned muscles on display for a far more "in your face" demonstration of power than <<=ps(setup.getNpcName("npc_manager","formal"))>> more quiet confidence.<br>
<br>
"@@.npc_gym_futa;Alright, almost done, time to hit the stair-master... or as I like to call it, the butt-mistress for some cardio, you always want to do a bit of lower body work and those glutes of yours can take getting hit hard and often.@@"<br>
<br>
[<<moveTo "event_gym_futa_1_5" "Looks like it's cardio time?" 1800>>]
</div>/*#
#desc: npc_gym_futa guides you through cardio workout
#status: FINISHED 0.9.0.0
#ignore_spell: plimentary
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'skip' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $EXPOSED>>
<<applyFatigue 70>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
Still holding you by the arm, <<=setup.getNpcName("npc_gym_futa","first")>> all but carries you over to the cardio machines and punches in the settings on the stair machine. "@@.npc_gym_futa;Get to it!@@" She barks as you stagger onto the machine and steady yourself on the handlebars.<br>
<br>
"@@.npc_gym_futa;Step lively, girl! Keep that ass tight, attack each stair! Your gains are at the top of that mountain so get at it!@@"<br>
<br>
Standing, no, TOWERING next to you <<=setup.getNpcName("npc_gym_futa","first")>> all but shouts encouragement for the entire session, your legs pumping up and down as she forces you to climb what feels like forever, even giving you a hard slap on the ass for the final sprint of an ascent that sets you almost jumping forward, your bottom tingling with the memory of her hand as you finish off the session... and wonder who else in the gym might have been watching.<br>
<br>
"@@.npc_gym_futa;Not bad, not bad,@@" <<=setup.getNpcName("npc_gym_futa","first")>> states as she hands you a towel and a fresh water bottle. "@@.npc_gym_futa;You got some real potential, but lots of work yet to do... I'm a trainer, by the way, if that wasn't obvious. So if you want to put in some more sessions, well... you just keep an eye out and let me know. I promise that with my routine we'll have you whipped into shape in no time! And don't worry bout my fee. Today was <<if $fetish.cum>>cum-<</if>> I mean, com-plimentary, and I'm always open to negotiating alternate payments for... special clients. <<if setup.analyzeWornTags(['slutty','casual','office','formal'])>>Wearing an outfit like that is a good start, always good to show<<else>>You could start with a better outfit. Show<</if>> some skin, it's scientifically proven to be a confidence-booster, and makes it easier for me to see your muscles move, and thus critique your form... plus, well... watching a snack like you working out... well, it's a real treat.@@"<br>
<br>
With a parting wink she leaves you in her proverbial dust as you blink and try to figure out what all happened... and if you're going to take her up on her offer...<br>
<br>
<<printThought "That's a problem for future <<=$player.first_name>>.">> you decide.<br>
<br>
[<<moveTo "room_gym_lockerroom_post" "Call it a day and head back to the locker-room." 60>>]
</div>/*#
#desc: npc_gym_futa ask 2nd lesson
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.futaPresent = false>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You spot <<=setup.getNpcName("npc_gym_futa","first")>> working out across the gym and walk over to ask about another lesson.<br>
<br>
She notices you as you approach, staring you down as she finishes her set on the adductor machine, bringing her legs together slow and controlled while looking you in the eye. You catch a notice of the setting... she's squeezing over two hundred and fifty kilos and you shiver, watching as her thighs flex in relief through her skin-tight compression leggings as she crushes the rest of her set.<br>
<br>
You find yourself at a loss for words as she looks up at you, and then she rises to her feet, looming over you<<if setup.getItemObjFromType("shoes").hasOwnProperty("heels")>> despite your steep gym heels<</if>>.<br>
<br>
"@@.npc_gym_futa;So,@@" she states, taking a step closer, her muscles glistening in the bright lights of the gym. "@@.npc_gym_futa;You ready for another lesson?@@"<br>
<br>
Your heart thunders in your chest as you suddenly feel small, weak... and oh-so-submissive.<br>
<br>
[<<moveTo "event_gym_futa_2_2" "Nod." 300 "<<set $scene.flee=false>>">>]<br>
[<<moveTo "event_gym_futa_2_2" "Flee!" 300 "<<set $scene.flee=true>>">>]
</div>/*#
#desc: npc_gym_futa 2nd lesson start
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.flee>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<else>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.flee>>
<<createAdvBGR "./images/locations/gym_weights.png">>
<<else>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.flee>>
The sight of <<=setup.getNpcName("npc_gym_futa","first")>> looking down at you, the intoxicating scent of her sweat... it's too much and you bolt away, not stopping your near sprint across the gym and all but diving behind a weight machine to hide,cowering for several minutes to catch your breath before peeking out and confirming that the coast is clear.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<<else>>
You try to open your mouth but think better of it and just nod. <<=setup.getNpcName("npc_gym_futa","first")>> grins. "@@.npc_gym_futa;Quiet today... that's fine, your job is to listen to my instructions and do EXACTLY as ordered. You can save those pretty lips and that luscious tongue for... other things.@@" She winks and your heart skips a beat... and then you're following after like a puppy as she leads the way to one of the gym's private rooms.<br>
<br>
The private room has mirrors, some weights, and padded mats, <<=setup.getNpcName("npc_gym_futa","first")>> closes the door and then addresses you with a cocky grin. "@@.npc_gym_futa;Alright, some ground rules. While I'm coaching you you are going to do everything exactly as I say. No arguments, no doubts, just immediate obedience I promise my methods will show fantastic results... but only if you follow them to the letter.
<<if $fetish.daddy>>
You will refer to me as <<=setup.getNpcName("npc_gym_futa","nickname")>>... because that's what I am, your harsh, but caring, Muscle Mommy, here to breed strength like you wouldn't believe.
<<else>>
If you need to address me you will refer to me as <<=setup.getNpcName("npc_gym_futa","first")>>.
<</if>>
Is that clear?@@"<br>
<br>
<<if $fetish.daddy>>
[<<moveTo "event_gym_futa_2_3" 'Yes, <<=setup.getNpcName("npc_gym_futa","nickname")>>.' 1800>>]
<<else>>
[<<moveTo "event_gym_futa_2_3" 'Yes <<=setup.getNpcName("npc_gym_futa","first")>>.' 1800>>]
<</if>>
<</if>>
</div>/*#
#desc: npc_gym_futa 2nd lesson hands on
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = true>>
<<set $player.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.latex = setup.checkVisibleClothingTag("latex") > 60>>
<<set $scene.slutty = setup.checkVisibleClothingTag("slutty") > 50 && setup.checkVisibleClothingTag("slutty") + setup.calcBareSkin() > 70>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<applyFatigue 30>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<<if setup.checkNaked()>>
<<moveTo "event_gym_futa_2_4">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $fetish.daddy>>
"@@.pc;Yes, <<=setup.getNpcName("npc_gym_futa","nickname")>>.@@"
<<else>>
"@@.pc;Yes <<=setup.getNpcName("npc_gym_futa","first")>>.@@"
<</if>>
You reply.<br>
<br>
"@@.npc_gym_futa;Excellent. We're going to start with a full strength and flexibility assessment. I need to know EXACTLY what I'm dealing with so I can optimise my routine for your precise personal needs. Let's start with some stretches...@@"<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> starts you off with some basic stretches, but almost immediately goes "hands on" to push you right to your limit,
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
nodding in approval at your body's lithe flexibility and the ease with which she all but turns you into a pretzel.
<<else>>
showing modest approval at your flexibility.
<</if>>
<<else>>
shaking her head in disapproval as she really tests your stiff body.
<</if>>
Her hands never stop groping and squeezing you throughout the exercise, and things only get worse as she moves from stretches to assessing your strength as she all but pins you to the ground as she pushes your legs forward and has you push back to gauge your leg power... acting completely blase about the vulnerable position this puts you in.<br>
<br>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
"@@.npc_gym_futa;Good power... but I think we can work on your tone, really sculpt these muscles to perfection.@@"
<<else>>
"@@.npc_gym_futa;Basic power... but we are going to need to build you up as we sculpt you to have some proper tone.@@"
<</if>>
<<else>>
"@@.npc_gym_futa;You are very weak... but I suppose that is why you came to me. Don't worry, I know just the plan to give you that perfect blend of power and tone...@@"
<</if>>
<br><br>
She takes a step back and you almost fall over, your heart beating faster as she looks down at you and casually gives another command. "@@.npc_gym_futa;Now if you would strip naked, I want a full view of what I'm working with.@@"<br>
<br>
<<printThought "What is it with dominant redheads and telling me to strip?">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_gym_futa_2_4" "Remove your clothes." 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">>
<</if>>
</div>/*#
#desc: npc_gym_futa 2nd lesson change
#status: RELEASED 0.9.1.0
#*/
<<set $player.lockinventory=true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverythingButUnderwear>>
<<addItemSet 'gym_latex_black'>>
<<wearItemSet 'gym_latex_black'>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('latex')>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You remove your clothes and shiver slightly as <<=setup.getNpcName("npc_gym_futa","first")>> looks down at you. She stares over your every curve, stalking a slow circle around you like a cat, inspecting you like a piece of meat and even occasionally moving you into a different position, spreading your legs and making you arch your back, squeezing your ass and groping your <<if $player.body.breastsize[0] > 0>>breasts<<else>>chest<</if>> as she treats you more like a posable doll than a person.<br>
<br>
"@@.npc_gym_futa;Not bad, not bad.@@" She finally notes in conclusion.
<<if setup.checkItemTypeWorn("cage") && setup.checkItemTypeWorn("plug")>>
"@@.npc_gym_futa;I especially like how you've fully committed to fitness by plugging that THICC ass and locking yourself on target...@@"
<<elseif setup.checkItemTypeWorn("cage") >>
"@@.npc_gym_futa;I especially like how you've fully committed to fitness by locking yourself on target...@@"
<<elseif setup.checkItemTypeWorn("cage") && setup.checkItemTypeWorn("plug")>>
"@@.npc_gym_futa;I especially like how you've fully committed to fitness by plugging that THICC ass.@@"
<<else>>
"@@.npc_gym_futa;You could do with some performance-enhancing accessories...@@"
<</if>>
You want to be relieved at this tentative approval... and yet you hold your breath, feeling like things have only started.<br>
<br>
"@@.npc_gym_futa;Now for you to dress for the session.@@" She digs into her bag and comes up with a very slutty athletic outfit in what looks to be black latex, complete with sky-high heel-less ballet boots.
<<if $scene.latex>>
"@@.npc_gym_futa;I believe you are familiar with wearing things like this. I will expect you to be dressed accordingly for any future lesson. The latex encourages healthy sweating, while the tightness provides compression to enhance performance, while the overall outfit is optimised so that I can have full visibility of what you're doing. After all, if I cannot see your muscles, how can I be sure they are operating properly?@@"
<<elseif $scene.slutty>>
"@@.npc_gym_futa;You prior outfit was... acceptable, but this is better. The latex encourages healthy sweating, while the tightness provides compression to enhance performance, while the overall outfit is optimised so that I can have full visibility of what you're doing. After all, if I cannot see your muscles, how can I be sure they are operating properly?@@"
<<else>>
"@@.npc_gym_futa;You prior outfit was quite a disaster, a detriment to your physical development, and an impediment to my assisting you in that regard. The latex encourages healthy sweating, while the tightness provides compression to enhance performance, while the overall outfit is optimised so that I can have full visibility of what you're doing. After all, if I cannot see your muscles, how can I be sure they are operating properly?@@"
<</if>>
<br><br>
Under her watchful eye you get changed, feeling almost immediately warmer as the tight latex clings to you like a second skin and you rise up onto the pointed shoes... while remaining at least a dozen centimeters shorter than <<=setup.getNpcName("npc_gym_futa","first")>>.<br>
<br>
"@@.npc_gym_futa;There, doesn't that feel better? I'm sure you can find similar at the gym's shop if you want to mix up colours.@@" She states, running a hand up your rubbery side. "@@.npc_gym_futa;NOW we can start your lesson properly... only, well, all this work has me thirsty. Fetch me a drink from my bag.@@" She states, gesturing towards her gym bag on the opposite side of the room... and adding a slap on your ass for good measure. The blow is not particularly hard, but enough for the sound of flesh on rubber to echo with a loud SNAP. "@@.npc_gym_futa;Hurry on, now.@@"<br>
<br>
[<<moveTo "event_gym_futa_2_5" "Fetch her drink." 300 "<<set $scene.drink=true>>">>]<br>
[<<moveTo "event_gym_futa_2_5" "What? No, you're here to work out, not be her servant!" 300 "<<set $scene.drink=false>>">>]
</div>/*#
#desc: npc_gym_futa 2nd fetch drink
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drink>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 12 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if $scene.drink>>
You walk to the other side of the room to her bag, digging through the usual assortment of gym clothes<<if $fetish.cum>>, including what you're certain are a pair of cum-drenched panties,<</if>> to find a can of <<=setup.getItemName("energy_drink")>>, feeling her eyes on you the whole time, feeling your tight latex leggings squeak and stretch over your ass<<if setup.checkItemTypeWorn("plug")>> and press your plug a little bit deeper into you<</if>>.<br>
<br>
You hand <<=setup.getNpcName("npc_gym_futa","first")>> the can and she casually tears the top off with ease before throwing it back with a single gulp and crushing the empty and tossing it into a receptacle near the door. "@@.npc_gym_futa;Ah, just what I needed. Now, as to what YOU need... well, I think the answer there is a good HARD workout... so let's get to it!@@"<br>
<br>
[<<moveTo "event_gym_futa_2_6" "Continue." 600>>]
<<else>>
You object to being sent off like some sort of servant and she takes a step towards you, glowering down as you suddenly find yourself pinned to the wall. "@@.npc_gym_futa;Are you questioning my methods?@@" She asks as your heart races faster.<br>
<br>
[<<moveTo "event_gym_futa_2_6" "No..." 180 "<<set $scene.apologize=true>>">>]<br>
[<<moveTo "event_gym_futa_2_6" "Yes?" 180 "<<set $scene.apologize=false>>">>]
<</if>>
</div>/*#
#desc: npc_gym_futa 2nd squats
#status: RELEASED 0.9.1.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'terrible' $SEEN_FRIEND>>
<<applyFatigue 50>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if !$scene.drink>>
<<if $scene.apologize>>
<<if $fetish.daddy>>
"@@.pc;N-n-no, <<=setup.getNpcName("npc_gym_futa","nickname")>>.@@"
<<else>>
"@@.pc;N-n-no <<=setup.getNpcName("npc_gym_futa","first")>>.@@"
<</if>>
<br><br>
"@@.npc_gym_futa;Good... though it would appear we have another thing to work on training you at. No matter. Let us proceed to the exercises, a good HARD workout is just what you need.@@"
<<else>>
You're at a sudden loss for words and she finally sniffs in annoyance and steps away.<br>
<br>
"@@.npc_gym_futa;Let us proceed to the exercises, a good HARD workout is just what you need.@@"
<</if>>
<br><br>
<</if>>
Your workout starts with pushups... which gets harder when <<=setup.getNpcName("npc_gym_futa","first")>> takes a seat and rests her feet on your back, pushing you down as she counts off each rep, critiquing your form and calling out no reps for the slightest mistake.<br>
<br>
From pushups she grabs your ankles to hold you upside-down, partially supporting your weight as she guides you through assisted handstand pushups<<if setup.getTotalValue("strength") > 15>>, not that you actually need the assistance<</if>>.<br>
<br>
Lifting you up in something closer to a pro wrestling move than anything else, <<=setup.getNpcName("npc_gym_futa","first")>> woman-handles you back to your feet for you to do squats, this time pushing down on your shoulders from above to increase the difficulty and keep you constantly focused on maintaining proper alignment and balance.<br>
<br>
[<<moveTo "event_gym_futa_2_7" "Continue..." 1800>>]
</div>/*#
#desc: npc_gym_futa 2nd cardio
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'terrible' $SEEN_FRIEND>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_elliptical.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
After working what seems like every muscle you have in a dizzying array of exercises, some you'd never heard of before... and some that seemed more appropriate to the Kama Sutra than to Health and Fitness, <<=setup.getNpcName("npc_gym_futa","first")>> leads you out of the private room and over to the gym's elliptical machines.<br>
<br>
"@@.npc_gym_futa;Always good to do a burn-off at the end of a session, now MOVE<<if $fetish.sissy>>, sissy<</if>>!@@" She commands, giving you a slap on the ass as she punches in a high intensity routine and the machine starts moving.<br>
<br>
"@@.npc_gym_futa;Yeah, keep working,@@" she commands as you race forward, continuing to spank you occasionally, even when you're managing to keep pace. "@@.npc_gym_futa;Tighten those glutes! Every step is a rep and you're going to work like it!@@"<br>
<br>
The intensity of the elliptical increases once again as <<=setup.getNpcName("npc_gym_futa","first")>> pushes you to the end for a final few minutes of maximum intensity before bringing things to an end.<br>
<br>
[<<moveTo "event_gym_futa_2_8" "Stumble off the machine." 300>>]
</div>/*#
#desc: npc_gym_futa 2nd finish
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 500>>
<<set $scene.futaPresent = false>>
<<set $scene.exercise = 3>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_elliptical.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_gym_futa","first")>> catches you as you almost stumble off the machine exhausted "@@.npc_gym_futa;<<if setup.getTotalValue("stamina") > 15>>Not bad, for a first session<<else>>Pathetic<</if>>.@@" She notes as you recover your feet.<br>
<br>
"@@.npc_gym_futa;Just drop in when you're ready for some more coaching. My rate is two hundred credits a session... and remember to dress accordingly!@@"<br>
<br>
She walks away, leaving you to try to catch your breath and stagger off in the direction of the locker-room.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: npc_gym_futa approach for repeatable
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.futaPresent = false>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You again approach <<=setup.getNpcName("npc_gym_futa","first")>> and she
<<if setup.checkItemTypeTag('shirt', ['latex']) && setup.checkItemTypeTag('legwear', ['latex']) && setup.getItemObjFromType("shoes").heels && setup.getItemObjFromType("shoes").heels.difficulty >= 13>>
greets you with a friendly grin. "@@.npc_gym_futa;So, you ready to put in some work today<<if $fetish.daddy>> with your <<=setup.getNpcName("npc_gym_futa","title")>><</if>>? Only a hundred credits for a session, hurry up, if you aren't interested there are plenty of other clients...@@"<br>
<br>
<<include "gymFutaLessonRepeatChoice">>
<<else>>
looks you over with a dismissive sneer "@@.npc_gym_futa;what did I tell you about proper workout attire? Tight so I can see your muscles working, latex to keep you sweaty, and steep heels to work those legs.@@"<br>
<br>
She turns away.<br>
<br>
<</if>>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
</div><<if State.hasPlayed("event_gym_futa_4_intro_1") && !($currentTasks.hasOwnProperty("gym_futa_climbing") && !$currentTasks.gym_futa_climbing.finished) && !State.hasPlayed("event_gym_futa_4_date_12")>>
[<<moveTo "event_gym_futa_4_intro_1_alt" "Ask her about getting together outside of the gym." 600>>]<br>
<</if>>
<<if $scene.askedPornWorkout>>
[@@.link_locked;You already asked about porn workouts today.@@]<br>
<<elseif State.hasPlayed("event_porn_bondage_gym_futa_1_intro_accept")>>
[@@.link_locked;<<=setup.getNpcName("npc_gym_futa","first")>> has already offered to shoot porn with you.@@]<br>
<<elseif State.hasPlayed("event_gym_futa_3_lewd_1")>>
[<<moveTo "event_porn_bondage_gym_futa_1_intro_accept" "Ask her about porn star focused workouts." 180>>]<br>
<<else>>
[<<moveTo "event_porn_bondage_gym_futa_1_intro_decline" "Ask her about porn star focused workouts." 180>>]<br>
<</if>>
<<if $player.money.total >= 100>>
<<if !State.hasPlayed("event_gym_futa_payment_offer_1") && State.hasPlayed("event_gym_futa_repeatable_2") && setup.getTotalValue("strength") >= 15 && setup.getTotalValue("stamina") >= 15 && setup.getTotalValue("dexterity") >= 15>>
[<<moveTo "event_gym_futa_payment_offer_1" "Pay up and work out." 600>>]<br>
<<elseif setup.getTotalValue("strength") >= 15 && $npc_gym_futa.flags.workout_basic.bench && $npc_gym_futa.flags.workout_basic.cardio && $npc_gym_futa.flags.workout_basic.stretch && !State.hasPlayed("event_gym_futa_3_lewd_1")>>
[<<moveTo "event_gym_futa_3_lewd_1" "Pay up and work out." 600 "<<set $scene.pay=true>>">>]<br>
<<else>>
[<<moveTo "event_gym_futa_repeatable_2" "Pay up and work out." 3600 "<<set $scene.pay=true>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You don't have enough money...@@]<br>
<</if>>
<<if State.hasPlayed("event_gym_futa_3_payment_1")>>
[<<moveTo "event_gym_futa_3_payment_repeat_1" "Ask about alternate payment..." 180 "<<set $scene.pay=false>>">>]<br>
<<else>>
[<<moveTo "event_gym_futa_3_payment_1" "Ask about alternate payment..." 180 "<<set $scene.pay=false>>">>]<br>
<</if>>
<<if State.hasPlayed("event_janitor_training_primrose_4")>>
<<if State.hasPlayed("event_janitor_training_2_forcefem_4") || State.hasPlayed("event_janitor_training_2_femboy_4") || State.hasPlayed("event_janitor_training_2_tomboy_4") || State.hasPlayed("event_janitor_training_2_fuckboy_4")>>
[@@.link_locked;You've already gotten <<=setup.getNpcName("npc_janitor", "first")>> some fitness assistance.@@]<br>
<<else>>
[<<moveTo "event_janitor_training_2_femboy_1" 'Ask if she could help out <<=setup.getNpcName("npc_janitor", "first")>>?' 120>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_gym_futa_application_1_intro_1")>>
<<if $scene.talkApplication>>
[@@.link_locked;You already asked about her applying to work at your company.@@]<br>
<<elseif State.hasPlayed("event_gym_futa_dissatisfaction_3") && !State.hasPlayed('event_gym_futa_dissatisfaction_3_company')>>
[<<moveTo "event_gym_futa_dissatisfaction_3_company" "Suggest she apply to work at your company." 120 "<<set $scene.talkApplication=true>>">>]<br>
<<elseif State.hasPlayed("event_gym_futa_application_10") && !State.hasPlayed("event_gym_futa_reference_9")>>
[<<moveTo "event_gym_futa_application_intermediate_1" "Ask how her application to work at your company is going?" 120 "<<set $scene.talkApplication=true>>">>]<br>
<<elseif !$workEvents.hasOwnProperty("gym_futa_interview")>>
[<<moveTo "event_gym_futa_application_1_intro_alt_1" "Talk about helping her interview with your company." 180 "<<set $scene.talkApplication=true>>">>]<br>
<</if>>
<</if>>/*#
#desc: npc_gym_futa repeatable exercise
#status: RELEASED 0.9.1.0
#ignore_spell: superset, supersetting
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pay>>
<<addCredits -100>>
<</if>>
<<set $scene.exercise = 3>>
<<if setup.getTotalValue("strength") < 15 || setup.getTotalValue("dexterity") < 15 || setup.getTotalValue("stamina") < 15 || !$npc_gym_futa.flags.workout_basic.bench || !$npc_gym_futa.flags.workout_basic.cardio || !$npc_gym_futa.flags.workout_stretch>>
<<set $scene.focus = ["bench","cardio","stretch"].random()>>
<<switch $scene.focus>>
<<case "bench">>
<<applyExperience 'penis' 10 'terrible' $SEEN_FRIEND>>
<<set _str = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _str 'terrible' $SEEN_FRIEND>>
<<applyFatigue 100>>
<<case "cardio">>
<<set _stam = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stam 'terrible' $SEEN_FRIEND>>
<<applyFatigue 200>>
<<case "stretch">>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'terrible' $SEEN_FRIEND>>
<<applyFatigue 50>>
<</switch>>
<<set $npc_gym_futa.flags.workout_basic[$scene.focus] = true>>
<<else>>
<<set $scene.focus = ["oral","anal","cardio","stretch"].random()>>
<<switch $scene.focus>>
<<case "oral">>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<<set _str = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _str 'terrible' $SEEN_FRIEND>>
<<applyFatigue 100>>
<<if setup.getTotalValue("oral") >= 15 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 1>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 1>>
<<setThreshold 'strength' 'gym_strength' 'strength_meet_prep'>>
<<elseif setup.getTotalValue("oral") > 17 && setup.getTotalValue("strength") > 17 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 2>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 2>>
<<elseif setup.getTotalValue("oral") >= 19 && setup.getTotalValue("strength") >= 19 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 3>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 3>>
<</if>>
<<if $npc_gym_futa.flags.workout_adv[$scene.focus] >= 3>>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<</if>>
<<case "anal">>
<<applyExperience 'anal' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<<set _str = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _str 'terrible' $SEEN_FRIEND>>
<<applyFatigue 100>>
<<if setup.getTotalValue("anal") >= 15 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 1>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 1>>
<<setThreshold 'strength' 'gym_strength' 'strength_meet_prep'>>
<<elseif setup.getTotalValue("anal") > 17 && setup.getTotalValue("strength") > 17 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 2>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 2>>
<<elseif setup.getTotalValue("anal") >= 19 && setup.getTotalValue("strength") >= 19 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 3>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 3>>
<</if>>
<<if $npc_gym_futa.flags.workout_adv[$scene.focus] >= 3>>
<<applyExperience 'anal' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<</if>>
<<case "cardio">>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<set _stam = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stam 'terrible' $SEEN_FRIEND>>
<<applyFatigue 200>>
<<if setup.getTotalValue("stamina") >= 15 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 1>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 1>>
<<setThreshold 'stamina' 'gym_stamina' 'stamina_meet_prep'>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<elseif setup.getTotalValue("submission") > 17 && setup.getTotalValue("stamina") > 17 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 2>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 2>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_FRIEND>>
<<elseif setup.getTotalValue("submission") >= 19 && setup.getTotalValue("stamina") >= 19 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 3>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 3>>
<</if>>
<<case "stretch">>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'terrible' $SEEN_FRIEND>>
<<applyFatigue 50>>
<<if setup.getTotalValue("dexterity") >= 15 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 1>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 1>>
<<setThreshold 'dexterity' 'other' 'dexterity_meet_prep'>>
<<elseif setup.getTotalValue("dexterity") > 17 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 2>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 2>>
<<elseif setup.getTotalValue("dexterity") >= 19 && $npc_gym_futa.flags.workout_adv[$scene.focus] < 3>>
<<set $npc_gym_futa.flags.workout_adv[$scene.focus] = 3>>
<<applyExperience 'dexterity' _dex 'terrible' $SEEN_FRIEND>>
<</if>>
<<if $npc_gym_futa.flags.workout_adv[$scene.focus] >= 3>>
<<applyExperience 'anal' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<</if>>
<</switch>>
<<applyFatigue 500>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("strength") < 15 || setup.getTotalValue("dexterity") < 15 || setup.getTotalValue("stamina") < 15 || !$npc_gym_futa.flags.workout_basic.bench || !$npc_gym_futa.flags.workout_basic.cardio || !$npc_gym_futa.flags.workout_stretch>>
<<=setup.getNpcName("npc_gym_futa","first")>> coaches you through another workout.
<<switch $scene.focus>>
<<case "bench">>
She focuses on bench as she continues to test your max strength, your efforts made even more interesting by the fact that her position to spot you has her squatting centimeters from your face, her compression tights straining to contain a massive <<if $fetish.futanari>>futa-<<else>>girl-<</if>>cock, the scent of it both intense and motivating, glistening through her clothes and nearly dripping on your face a few times.
<<case "cardio">>
She has you do a primarily cardio focused effort, switching from rowing machine to elliptical as she pushes, encourages, and occasionally spanks, you forward into a real max effort exertion.
<<case "stretch">>
She focuses on your flexibility, really pushing your body to the limit as she alternates folding you in half and stretching you wide, her own long limbs and taut muscles on display as she pulls and pushes you into increasingly strenuous positions.
<<default>>
ERROR: unexpected scene.focus <<=$scene.focus>>
<</switch>>
<br><br>
By the end of the workout you're sprawled out on the floor exhausted with <<=setup.getNpcName("npc_gym_futa","first")>> standing over you, barely having even broken a sweat, gleaming like some sort of Amazonian goddess.
<<else>>
<<switch $scene.focus>>
<<case "oral">>
<<switch $npc_gym_futa.flags.workout_adv.oral>>
<<case 1>>
You do pushups on one of <<=ps(setup.getNpcName("npc_gym_futa","first"))>> dildos, the size increasing with each set as she adds a weight vest and uses her foot to push you down, increasing the challenge both to your arms... and especially to your throat.
<<case 2>>
You superset pushups on a large dildo followed by crunches where she straddles you and you repeatedly rise up to suck the tip of her cock as she encourages you to go deeper and flex harder if you want to someday earn the "real" thing.
<<case 3>>
You've graduated from pushups on a dildo do supersetting bench-press with <<=setup.getNpcName("npc_gym_futa","first")>> tilting your head back to fuck your throat, her hand on your throat almost jerking herself off for your "rest" period before she pulls back, drops her sweaty balls on your face and has you do another even heavier set of bench press.
<<default>>
ERROR: unexpected npc_gym_futa.flags.workout_adv.oral <<=$npc_gym_futa.flags.workout_adv.oral>>
<</switch>>
<<case "anal">>
<<switch $npc_gym_futa.flags.workout_adv.anal>>
<<case 1>>
You do a squat-focused session, working your way up to a slightly larger dildo... and a much heavier weight as <<=setup.getNpcName("npc_gym_futa","first")>> tests you with both box (with dildo) squats, and going full ass to grass (onto a dildo) to work your posterior chain inside and out.
<<case 2>>
You've graduated to an even larger dildo... one that looks nearly as large as the monster straining beneath <<=ps(setup.getNpcName("npc_gym_futa","first"))>> tights. Groping and grinding as she loads the weight heavy and has you focus on perfect form, your thighs are trembling by the end of the workout.
<<case 3>>
You've proven your skill, and you do squats directly onto <<=ps(setup.getNpcName("npc_gym_futa","first"))>> cock, her thick girl-dick combined with the heavy weight pushing your limits... but her training means that you can handle it all.
<<default>>
ERROR: unexpected npc_gym_futa.flags.workout_adv.anal <<=$npc_gym_futa.flags.workout_adv.anal>>
<</switch>>
<<case "cardio">>
<<switch $npc_gym_futa.flags.workout_adv.cardio>>
<<case 1>>
<<=setup.getNpcName("npc_gym_futa","first")>> runs you through a cardio routine, barking at you like a drill sergeant as she pushes not just your body, but your mind to obediently follow her constant orders and keep up with the exhausting sequence of exercises.
<<case 2>>
<<=setup.getNpcName("npc_gym_futa","first")>> increases the intensity of your "cardio" machine once more, literally whipping you into shape as she flogs you while you race on a treadmill, dildo-gag "altitude training" mask in place.
<<case 3>>
<<=setup.getNpcName("npc_gym_futa","first")>> puts you through a "cardio" routine... well, more a marathon fuck-fest of you sitting on her cock getting fucked while you row, struggling for air around the dildo-gag equipped training mask the whole time.
<<default>>
ERROR: unexpected npc_gym_futa.flags.workout_adv.cardio <<=$npc_gym_futa.flags.workout_adv.cardio>>
<</switch>>
<<case "stretch">>
<<switch $npc_gym_futa.flags.workout_adv.stretch>>
<<case 1>>
<<=setup.getNpcName("npc_gym_futa","first")>> runs you through a balance and flexibility routine, woman-handling you into a standing splits among other challenging positions as your body is really put through its paces.
<<case 2>>
<<=setup.getNpcName("npc_gym_futa","first")>> pushes your body to the limits of flexibility and beyond, from multiple variants of splits, to folding knees-to-ears or flexing until your toes touch the back of your head, she pushes your flexibility and balance to new levels.
<<case 3>>
<<=setup.getNpcName("npc_gym_futa","first")>> puts you through a mix of extreme yoga and the positions of the karma sutra, stretching, flexing, and most of all, fucking you in every way until your body is loose<<if $fetish.cum>>, and leaking cum<</if>>.
<<default>>
ERROR: unexpected npc_gym_futa.flags.workout_adv.stretch <<=$npc_gym_futa.flags.workout_adv.stretch>>
<</switch>>
<<default>>
ERROR: unexpected scene.focus <<=$scene.focus>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_gym_futa","first")>> rides you hard in every sense of the word, and by the end of the workout you're dead tired, panting on the floor in sore exhaustion.
<</if>>
<br><br>
<<if !State.hasPlayed("event_gym_futa_4_intro_1") && State.hasPlayed("event_gym_futa_3_lewd_4") && State.hasPlayed("event_gym_futa_3_payment_3")>>
[<<moveTo "event_gym_futa_4_intro_1" "Continue." 600>>]
<<elseif $now.getUTCHours() >= 17 && $now.getUTCHours() <= 20 && State.hasPlayed("event_gym_futa_4_date_12") && !State.hasPlayed("event_gym_futa_dinner_2") && setup.hasFreeTime($now, $player, $currentTasks, 28800) && (!State.hasPlayed("event_gym_futa_dinner_invite_1") || random(1,4) == 1)>>
[<<moveTo "event_gym_futa_dinner_invite_1" "Continue." 180>>]
<<else>>
<<if $scene.pay>>
"@@.npc_gym_futa;Not bad! Now pay up, and I'll see you next time.@@"<br>
<br>
You hand over the credits and she
<<else>>
"@@.npc_gym_futa;Not bad! You're already paid up from earlier... so I guess I'll see you next time.@@"<br>
<br>
She winks at you and
<</if>>
walks away, hips swinging seductively as she makes her way across the gym.<br>
<br>
[<<moveTo "room_gym_main" "Get up." 60>>]
<</if>>
</div>/*#
#desc: npc_gym_futa lewd workout: intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pay>>
<<addCredits -100>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
From the moment you walk into the private room things feel different, as <<=setup.getNpcName("npc_gym_futa","first")>> wastes no time in ordering you into a pushup position.<br>
<br>
"@@.npc_gym_futa;So, you've been progressing well... but now it's time to train for REAL. To take you from merely fit to molding you into a perfect fucking machine. To start with...@@"<br>
<br>
Before you can figure out if her use of an exploitative was accentuation or literal... she removes pretty much all doubt, slapping a dildo down on the floor in front of you. "@@.npc_gym_futa;DOWN!@@" She orders, the position you're in meaning that doing a full pushup will require basically deep-throating the dildo...<br>
<br>
<<if $fetish.daddy>>
[<<moveTo "event_gym_futa_3_lewd_2" 'If <<=setup.getNpcName("npc_gym_futa","nickname")>> commands it...' 1200 "<<set $scene.obey=true>>">>]<br>
<<else>>
[<<moveTo "event_gym_futa_3_lewd_2" 'If <<=setup.getNpcName("npc_gym_futa","first")>> commands it...' 1200 "<<set $scene.obey=true>>">>]
<</if>>
[<<moveTo "event_gym_futa_3_lewd_2" "This isn't the sort of exercise you wanted..." 180 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: npc_gym_futa lewd workout: pushup
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'strength' 18 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You go down... in both senses of the word, <<if setup.getTotalValue("oral") > 10>>your prior experience proving sufficient to handle the medium-sized dildo<<else>>struggling to get to the bottom of the dildo<</if>>. <<=setup.getNpcName("npc_gym_futa","first")>> foot pressing down on your shoulders provides some additional "help" as she guides you through each rep, not letting you scrimp on depth as you push and suck repeatedly.<br>
<br>
"@@.npc_gym_futa;That's right, all the way down! It's not a rep until your nose touches the floor, keep at it! You LIVE for this!@@"<br>
<br>
You gurgle as she presses you back to the floor, your eyes rolling back as you struggle around the dildo... throat straining until she jerks you up, trailing drool as you pant for air, but she's already pulling you back to your feet and over to a squat rack, your ass unzipped as she slaps the spit-lubricated dildo down on top of a box and gets you into position. "@@.npc_gym_futa;No reset period! Squat to depth! Flex that booty and WORK IT!@@"<br>
<br>
Breathless and slightly overwhelmed you follow on auto-pilot, feeling like your hands are cuffed to the bar as you squat back, <<=setup.getNpcName("npc_gym_futa","first")>> in position to guide the dildo into your ass on each rep, forcing you to go slow and pause at the bottom every time. "@@.npc_gym_futa;That's right, pause and feel it...@@"<br>
<br>
[<<moveTo "event_gym_futa_3_lewd_3" 'Continue.' 1200>>]<br>
<<else>>
You balk at this escalation and <<=setup.getNpcName("npc_gym_futa","first")>> snorts in annoyance. "@@.npc_gym_futa;If you aren't willing to COMMIT to fitness, well... you aren't worth my time.<<if $scene.pay>> And my time is non-refundable, get<<else>>Get<</if>> out of my sight until you're ready to do whatever it takes!@@"<br>
<br>
[<<moveTo "event_gym_futa_3_lewd_2" 'On second thought, do as she says.' 1200 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "room_gym_main" "Leave." 60>>]
<</if>>
</div>/*#
#desc: npc_gym_futa lewd workout: cardio
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'stamina' 18 'normal' $SEEN_FRIEND>>
<<addItem 'elevation_mask'>>
<<wearItem 'elevation_mask' true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_elliptical.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
Several sets of squats have your thighs trembling slightly as you pant and <<=setup.getNpcName("npc_gym_futa","first")>> responds by producing a mask and pulling it over your face, the internal dildo sliding deep into your already stretched-out throat. "@@.npc_gym_futa;There you go, this will simulate being at altitude and force you to focus on nostril breathing, quite the useful skill to unlocking new levels of endurance!@@"<br>
<br>
Nostrils flaring under the mask as you struggle to breathe, you follow her to the elliptical machines, running as hard as you can, your thoughts as filled as your throat by the idea that you're effectively sucking a cock in the middle of the public gym, your pulse pounding in your ears from more than mere exertion as <<=setup.getNpcName("npc_gym_futa","first")>> eggs you on with every word and ass-slap for easily one of the most intense training sessions you've ever had.<br>
<br>
[<<moveTo "event_gym_futa_3_lewd_4" 'Wrap up.' 600>>]
</div>/*#
#desc: npc_gym_futa lewd workout: finish
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'elevation_mask' true>>
<<deleteItem 'elevation_mask'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
"@@.npc_gym_futa;Well done,@@" <<=setup.getNpcName("npc_gym_futa","first")>> states when she finally carries you off the machine and back to the private room to remove the mask and allow you to finally breathe and somewhat recover. "@@.npc_gym_futa;Going forward we're going to keep expanding from here, training your body and your holes for MAXIMUM performance.@@" A slap on the ass has you jiggle ever so slightly as you gasp, nodding reflexively at the understanding of exactly what she means.<br>
<br>
She grins, commanding you to pack up her things before calling it a day.<br>
<br>
[<<moveTo "room_gym_main" "Get up." 60>>]
</div>/*#
#desc: npc_gym_futa alternate payment massage
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_gym_futa","first")>> if you might be able to cover the cost of the day's session with an alternate payment?<br>
<br>
She grins, a hungry expression that has you feeling like she was waiting for this moment. "@@.npc_gym_futa;Why yes, I think we can come to an arrangement...@@" her eyes scan up and down your body as she pretends to think things over. "@@.npc_gym_futa;How about a massage<<if State.hasPlayed("event_gym_futa_3_payment_abort")>>, and I want a FULL massage this time, right<</if>>? You may be just getting ready to work out, but I've been at the gym since early morning... and these muscles could do with some tenderness.@@" She flexes theatrically as she waits for your response.<br>
<br>
[<<moveTo "event_gym_futa_3_payment_2" "Give her a massage in exchange for a coaching session." 600 "<<set $scene.accept=true>>">>]<br>
<<if $player.money.total >= 100>>
<<if State.hasPlayed("event_gym_futa_3_payment_3") && setup.getTotalValue("strength") >= 15 && $npc_gym_futa.flags.workout_basic.bench && $npc_gym_futa.flags.workout_basic.cardio && $npc_gym_futa.flags.workout_basic.stretch && !State.hasPlayed("event_gym_futa_3_lewd_1")>>
[<<moveTo "event_gym_futa_3_lewd_1" "Pay up and work out." 600 "<<set $scene.pay=true>>">>]<br>
<<else>>
[<<moveTo "event_gym_futa_repeatable_2" "Pay up and work out." 3600 "<<set $scene.pay=true>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You don't have enough money...@@]<br>
<</if>>
[<<moveTo "event_gym_futa_3_payment_2" "Never mind, you don't think you'll get coached today." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: npc_gym_futa alternate payment massage
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_gym_futa","first")>> leads you into the private room but, rather than immediately ordering you to start warming up as she normally would do, she lays face-down on the bench, shrugging out of her top and shimmying slightly. "@@.npc_gym_futa;really focus on my lats, I was hitting them hard earlier and they're feeling tense...@@"<br>
<br>
You take a deep breath, even casually spread out like this <<=setup.getNpcName("npc_gym_futa","first")>> is intimidating, long and lithe, reminding you of a tiger lounging around, her gorgeously toned muscles standing out on her back like a sculpted work of art. You step forward and get to work, adapting your skills at foot massage to the rest of the body.<br>
<br>
<<=ps(setup.getNpcName("npc_gym_futa","first"))>> skin is smooth, and her muscles firm, the similarity to some sort of tigress reinforced as she occasionally tells you to shift your focus, and then purrs in contentment as you work out a particularly tight knot.<br>
<br>
"@@.npc_gym_futa;Mmmm, you should have mentioned you had the magic fingers,@@" <<=setup.getNpcName("npc_gym_futa","first")>> states as you're nearing the end of her long, beautiful legs... "@@.npc_gym_futa;but are they magic all the way to a happy end?@@"<br>
<br>
She rolls over onto her back, in so doing revealing a very large, very hard <<getWordPenis false>>... the look in her eye as she rises up onto her elbows making the invitation... or is that order VERY clear.<br>
<br>
[<<moveTo "event_gym_futa_3_payment_3" "Lick your lips and give her the happy ending she's asking for." 180>>]<br>
<<if setup.getTotalValue("penis") > 15>>
[@@.link_locked;In scent and sight, you are too much of a cock-slut to pass up such an invitation.@@]
<<else>>
[<<moveTo "event_gym_futa_3_payment_abort" "Just finish the massage." 180>>]
<</if>>
<<else>>
You decline <<=ps(setup.getNpcName("npc_gym_futa","first"))>> request for a massage and she shrugs. "@@.npc_gym_futa;Suit yourself... but remember, fitness is an ongoing task, skip too many of my coaching sessions and those hard-earned gains could disappear.@@"<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
<</if>>
</div>/*#
#desc: npc_gym_futa refuse happy ending
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You take a step back and <<=setup.getNpcName("npc_gym_futa","first")>> glares at you, her throbbing <<getWordPenis false>> seeming to follow your movements.<br>
<br>
"@@.npc_gym_futa;Well! If you cannot handle such a straightforward task, well... I do not think I shall be coaching you today.@@" She waves her hand in dismissal and you swiftly beat a retreat from the room.<br>
<br>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
</div>/*#
#desc: npc_gym_futa alternate payment happy ending
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 11 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
Your heart pounds as you reach out to wrap both hands around <<=ps(setup.getNpcName("npc_gym_futa","first"))>> glorious girl-cock. Hot and hard, she watches as you stroke, her <<if $fetish.cum>> dripping pre<<else>>sweat<</if>> providing plenty of lubricant as you hands struggle to contain the soda-can thick, and far longer, cock and you stroke, stroke... and are soon drawn in for more.<br>
<br>
Your lips wrap around her tip, stretched wide and sucking passionately as your tongue dances through her slit<<if $fetish.cum>> and you enjoy the succulent taste of her pre-cum<</if>>. One hand continues to stroke as your other reaches down and, after a quick caress of her full balls, fingers her below, a quick gasp, <<if $fetish.cum>>and a hot spurt<</if>> of micro-orgasm providing a quick reward to egg you further on.<br>
<br>
"@@.npc_gym_futa;That's right, finish <<if $fetish.daddy>>mommy<<else>>me<</if>> off,@@" she commands, her hand on the back of your head, guiding you up and down as she smiles down, biting her lip slightly as she cums<<if $fetish.cum>>, pumping thick, ropey wads of <<if $fetish.futanari>>futa<<else>>girl<</if>> cum into your mouth, the look in her eye silently reminding you not to spill a drop as you gulp and swallow, struggling to handle her volume before<<else>>her orgasm as long and strong as she is, stretching on for almost a minute before<</if>> her cock starts to soften and you lean back, trailing saliva and panting slightly.<br>
<br>
"@@.npc_gym_futa;Now that is how you earn a free lesson,@@" she states with a smile as she swings her legs back to the floor and rises to her feet, zipping up her clothing to return her juicy cock to silhouetted mystery as the stands over you, tall and confident as always.<br>
<br>
<<if State.hasPlayed("event_gym_futa_3_payment_3") && setup.getTotalValue("strength") >= 15 && $npc_gym_futa.flags.workout_basic.bench && $npc_gym_futa.flags.workout_basic.cardio && $npc_gym_futa.flags.workout_basic.stretch && !State.hasPlayed("event_gym_futa_3_lewd_1")>>
[<<moveTo "event_gym_futa_3_lewd_1" "Time to work out." 600 "<<set $scene.pay=false>>">>]<br>
<<else>>
[<<moveTo "event_gym_futa_repeatable_2" "Time to work out." 3600 "<<set $scene.pay=false>>">>]<br>
<</if>>
</div>/*#
#desc: npc_gym_futa alternate payment repeat
#status: RELEASED 0.9.1.0
#ignore_spell: smooshes, limbered
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.vagina && setup.canSexOrRemoveChastity("vag")>>
<<set $scene.payment = ["suck", "anal", "eat", "massage", "vag"].random()>>
<<else>>
<<set $scene.payment = ["suck", "anal", "eat", "massage"].random()>>
<</if>>
<<switch $scene.payment>>
<<case "suck">>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 11 'terrible' $SEEN_FRIEND>>
<<case "anal">>
<<applyExperience 'anal' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<<case "eat">>
<<case "massage">>
<<applyExperience 'penis' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 11 'terrible' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<switch $scene.payment>>
<<case "suck">>
<<=setup.getNpcName("npc_gym_futa","first")>> doesn't waste time with the prologue of massage, instead swiftly having you on your knees sucking her off.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
She seems impressed at your ability to deep-throat her massive shaft... but that approval hardly holds her back from using your throat hard.
<<else>>
You can't quite manage to take her full length... but that doesn't stop her from trying
<</if>>
as she holds your head and gives it to you with the full power of her toned and trained hips.
<<else>>
She is far too thick and large for you to handle, leaving you to supplement with both hands as you suck and stroke.
<</if>>
She climaxes hard and fast, <<if $fetish.cum>>her cum dribbling from your nose<<else>>finishing off with a grin and a wet SHLURP as her wet cock slips from your lips<</if>>.
<<case "anal">>
You soon find yourself pressed up against a wall as your ass gets a "special" stretching warm-up, her cock
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
probing all the way to the end of your cavernous depths.
<<else>>
stretching you to the limit... without quite managing to sink all the way into your trained, but apparently not THAT trained rear hole.
<</if>>
<<else>>
stretching you out and making you feel something akin to a virgin with just how thick and long she is.
<</if>>
<<case "vag">>
You soon find yourself pinned to the bench, legs bent towards your head as she breeds you hard and deep, your belly stretching with each thrust as she re-arranges your organs and gets you limbered up, finishing <<if $fetish.cum>>with a massive load that leaks down towards your butt as she steps away<<else>>hard and deep<</if>>.
<<case "eat">>
You quickly find yourself between her thighs, her massive cock and heavy balls draped over your face as you eat out her dripping hidden valley, tongue probing and lips nibbling as her grasping fingers in your hair massage your scalp and you lick her to a thigh-clenching orgasm that almost smooshes your face.
<<case "massage">>
She has you back to basics, giving her a full-body massage once more, your hands rubbing over every one of her glorious muscles before she leads you down to finish things off with another jaw-stretching<<if $fetish.cum>>, and thirst-quenching,<</if>> happy ending.
<<default>>
ERROR: unexpected scene.payment <<=$scene.payment>>
<</switch>>
<br><br>
"@@.npc_gym_futa;Let's begin!@@" She commands, clearly not intending to give you a rest before your training session.<br>
<br>
<<if State.hasPlayed("event_gym_futa_3_payment_3") && setup.getTotalValue("strength") >= 15 && $npc_gym_futa.flags.workout_basic.bench && $npc_gym_futa.flags.workout_basic.cardio && $npc_gym_futa.flags.workout_basic.stretch && !State.hasPlayed("event_gym_futa_3_lewd_1")>>
[<<moveTo "event_gym_futa_3_lewd_1" "On to the work out..." 600 "<<set $scene.pay=false>>">>]<br>
<<else>>
[<<moveTo "event_gym_futa_repeatable_2" "On to the work out..." 3600 "<<set $scene.pay=false>>">>]<br>
<</if>>
</div>/*#
#desc: npc_gym_futa alternate payment invite
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You start to hand <<=setup.getNpcName("npc_gym_futa","first")>> the requisite credits, but she pauses without taking them.<br>
<br>
"@@.npc_gym_futa;You know, you have proven to be quite the special trainee... to the point that, well... I wonder if the economic basis of our transaction is damaging the coach/student bond. If you would like to do an experiment... how about you be a good <<switch $player.identify_as>><<case 'female' ''>>girl<<case 'male'>>boy<<case 'fluid' 'agender'>>athlete<</switch>> and give me a massage, and we'll call things square...@@"<br>
<br>
[<<moveTo "event_gym_futa_3_payment_2" "Give her a massage in exchange for a coaching session." 600 "<<set $scene.accept=true>>">>]<br>
<<if $player.money.total >= 100>>
<<if State.hasPlayed("event_gym_futa_3_payment_3") && setup.getTotalValue("strength") >= 15 && $npc_gym_futa.flags.workout_basic.bench && $npc_gym_futa.flags.workout_basic.cardio && $npc_gym_futa.flags.workout_basic.stretch && !State.hasPlayed("event_gym_futa_3_lewd_1")>>
[<<moveTo "event_gym_futa_3_lewd_1" "Pay up and work out." 600 "<<set $scene.pay=true>>">>]<br>
<<else>>
[<<moveTo "event_gym_futa_repeatable_2" "Pay up and work out." 3600 "<<set $scene.pay=true>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You don't have enough money...@@]<br>
<</if>>
[<<moveTo "event_gym_futa_3_payment_2" "Never mind, you don't think you'll get coached today." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: npc_gym_futa invite to date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You're catching your breath after your workout when you notice <<=setup.getNpcName("npc_gym_futa","first")>> staring at you.<br>
<br>
"@@.npc_gym_futa;You've come a long way,@@" she says with a grin. "@@.npc_gym_futa;Definitely one of my better projects... strong, flexible, tireless... committing yourself fully to the goal, not just with money, but with time and dedication... tell me, how would you feel about getting together in some more... casual circumstances. Not to train, but to put that training to use...@@"<br>
<br>
<<printThought "Is she asking me on a date?">><br>
<br>
[<<moveTo "event_gym_futa_4_intro_2" "Sure!" 60 "<<set $scene.accept=true>><<set $scene.fromAlt=false>>">>]<br>
[<<moveTo "event_gym_futa_4_intro_2" "You're pretty busy..." 60 "<<set $scene.accept=false>><<set $scene.fromAlt=false>>">>]
</div>/*#
#desc: talk to npc_gym_futa about date invite
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_gym_futa_4_date_failed")>>
You ask <<=setup.getNpcName("npc_gym_futa","first")>> if she'd be willing to give you another shot?<br>
<br>
"@@.npc_gym_futa;You mean after you stood me up?@@"<br>
<br>
She looms over you, strong and terrible, her presence reminding you that, even after all you've done to develop your body, she remains in a different league.<br>
<br>
"@@.npc_gym_futa;Tell you what. I've got a special workout... well, less a workout than a torture routine, a real test of mind and body... if you can survive... well, maybe I'll give you another shot.@@"<br>
<br>
[<<moveTo "event_gym_futa_4_date_punish_1" "Try to make it up to her..." 1800 "<<set $scene.fromAlt=true>><<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_futa_4_date_punish_1" "Actually, maybe just a normal lesson?" 60 "<<set $scene.fromAlt=true>><<set $scene.accept=false>>">>]
<<else>>
You ask <<=setup.getNpcName("npc_gym_futa","first")>> about her offer to get together more "casually." <br>
<br>
She grins hungrily. "@@.npc_gym_futa;Ready to take me up on my offer and spend some time together outside this gym?@@"<br>
<br>
[<<moveTo "event_gym_futa_4_intro_2" "Sure!" 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_futa_4_intro_2" "Actually, you're pretty busy..." 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: npc_gym_futa accept date invite
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _date = setup.getNextDayOfWeek($now, 0, 10, 0, false)>>
<<set $scene.punt = !setup.hasFreeTime(_date, $player, $currentTasks, 5000)>>
<<if $scene.punt>>
<<set _date = setup.getNextDayOfWeek(_date, 0, 10, 0, false)>>
<</if>>
<<addTaskById 'gym_futa_climbing' _date>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName("npc_gym_futa","first"))>> proposal and she grins. "@@.npc_gym_futa;Awesome... oh, I'm going to have FUN with you... even more than normal. There's a climbing gym around the corner. Meet me there <<if $scene.punt>>next <</if>>Sunday, let's say ten in the morning... and just because it isn't an official training session doesn't mean we won't be getting sweaty. Dress for the gym... and to show off, if you know what I mean.@@"<br>
<br>
<<if $scene.fromAlt>>
She winks, "@@.npc_gym_futa;so, with that scheduled... feel like a lesson?@@"
<<else>>
She grins, and then another client walks up for a lesson and <<=setup.getNpcName("npc_gym_futa","first")>> dismisses you for the day.
<</if>>
<<else>>
You make an excuse about being busy and <<=setup.getNpcName("npc_gym_futa","first")>> nods, hiding her disappointment behind a dominant facade.<br>
<br>
"@@.npc_gym_futa;Of course you are...<<if $scene.fromAlt>> now let's get busy with today's lesson! That'll be a hundred credits...<</if>>@@"
<</if>>
<br><br>
<<if $scene.fromAlt>>
<<include "gymFutaLessonRepeatChoice">>
<</if>>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
</div>/*#
#desc: npc_gym_futa fail to show up for date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.beforetasklocation.last() == "event_gym_futa_4_date_1">>
<<initRoom>>
<<moveTo "event_gym_futa_4_date_1">>
<<else>>
<<set $currentcall = true>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_gym_futa","first")>>.<br>
<br>
<<printThought "Shit, I forgot about our date!">><br>
<br>
"@@.npc_gym_futa;So I'm at the climbing gym... and you aren't. Very disappointing, you'll be making up for this at your next workout.@@"<br>
<br>
With that ominous statement lingering, she hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: npc_gym_futa punishment workout init
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<removeAllClothing>>
<<wearItem $scene.shoesId true>>
<<addItem "gap_catsuit_pink">>
<<wearItem "gap_catsuit_pink" true>>
<<addItem "gym_writing_humilation">>
<<wearItem "gym_writing_humilation" true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nervously agree to <<=ps(setup.getNpcName("npc_gym_futa","first"))>> proposal and she half grins, digging into her bag for a moment and then tossing you an even more scandalous outfit than what you normally wear, a tight pink latex bodysuit with transparent panels that will have you tightly compressed... yet almost completely on display.<br>
<br>
You strip, but before you can finish getting changed, <<=setup.getNpcName("npc_gym_futa","first")>> produces a pen, taking a few moments to write on your body, your goose-bump studded flesh tingling at the brush of the marker before she has you put on the latex outfit, phrases like "gym slut," "lift heavy, fuck hard," "shared equipment," and<<if $fetish.cum>> "pump me full of your protein shake" <<else>> "the workout isn't finished until you are" <</if>>peeking out through the clear panels.<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> gives you a moment to take in your own reflection before snapping her fingers as you notice she's now standing next to the door. "@@.npc_gym_futa;Come along. We have a workout to do.@@"<br>
<br>
[<<moveTo "event_gym_futa_4_date_punish_2" "You're going to work out in public dressed like this??" 300>>]
<<else>>
You balk at <<=ps(setup.getNpcName("npc_gym_futa","first"))>> suggestion. Her normal routines are challenge enough, for her to call something torture...<br>
<br>
She snorts in derision at your cowardice.<br>
<br>
"@@.npc_gym_futa;So, a regular training routine. That'll be one hundred credits.@@"<br>
<br>
<<include "gymFutaLessonRepeatChoice">>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
<</if>>
</div>/*#
#desc: npc_gym_futa punishment paraded
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<applyExperience 'submission' 15 'terrible' $EXPOSED>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_pink'>>
<<wearItem 'leash_pink' true>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
As if things weren't humiliating enough already, <<=setup.getNpcName("npc_gym_futa","first")>>
<<if $scene.addCollar>>
wraps a collar around your neck and parades you across the gym at the end of her leash.
<<else>>
clips a leash to your collar and parades you across the gym.
<</if>>
You can feel dozens of eyes on you, everyone pausing their workouts to oogle your figure and reading the degrading phrases written across your skin, a mix of lust and disgust that is inescapable thanks to <<=ps(setup.getNpcName("npc_gym_futa","first"))>> firm grip on your leash.<br>
<br>
For her part, <<=setup.getNpcName("npc_gym_futa","first")>> seems to ignore the attention... though she does choose a lifting rack in the middle of the gym as she has you load up the weights and get things in position for box squats.<br>
<br>
[<<moveTo "event_gym_futa_4_date_punish_3" "Start exercising..." 1800>>]
</div>/*#
#desc: npc_gym_futa punishment workout strength
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'strength' 18 'terrible' $EXPOSED>>
<<applyExperience 'anal' $npc_gym_futa.penis_size 'very' $EXPOSED>>
<<addItem "cloverclamps">>
<<wearItem "cloverclamps" true>>
<<applyFatigue 50>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plugId = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plugId true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You get into position for some heavy squats and <<=setup.getNpcName("npc_gym_futa","first")>> moves behind, partially unzipping the back of your catsuit<<if $scene.removePlug>> and pulling the plug out of your ass<</if>>... and then guiding you down, a dildo sliding into your ass, weight pushing you all the way down until you bottom out on the box, gasping as the dildo fills you, its size and shape instantly recognisable as a clone of <<=ps(setup.getNpcName("npc_gym_futa","first"))>> large and hard <<getWordPenis false>>.<br>
<br>
"@@.npc_gym_futa;Don't just sit there, slut,@@" <<=setup.getNpcName("npc_gym_futa","first")>> whispers in your ear. "@@.npc_gym_futa;Rise back out of that hole and keep squatting, this is just the first rep...@@"<br>
<br>
With <<=ps(setup.getNpcName("npc_gym_futa","first"))>> encouragement, and the attention of what feels like half the gym, you squat and squat, fucking yourself every time, your glutes and thighs straining as she pushes you past your limit, reps to failure truly being to failure as you almost fall over, all but pinned in place by the weight and dildo before she finally lifts the bar away and helps you to your feet... to scattered applause.<br>
<br>
You remember <<=ps(setup.getNpcName("npc_gym_futa","first"))>> promise of a torture routine as she doesn't even give you a moment's rest, practically dragging you to your feet, the leash pulling you forward as she leads you across the gym, your legs crying out in pain, and fear, as she heads for the elliptical machines...<br>
<br>
[<<moveTo "event_gym_futa_4_date_punish_4" "Continue." 60>>]
</div>/*#
#desc: npc_gym_futa punishment workout stamina
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<applyExperience 'stamina' 18 'terrible' $EXPOSED>>
<<applyExperience 'bdsm' 15 'very' $EXPOSED>>
<<applyExperience 'bondage' 10 'little' $EXPOSED>>
<<applyFatigue 200>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_elliptical.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
Over on the elliptical your wrists are cuffed to the handles as <<=setup.getNpcName("npc_gym_futa","first")>> punches in a brutal routine and unzips a pair of holes in the front of your top to attach a pair of nipple clamps. A hard slap on the ass setting you in motion, exhausted legs pumping as you arms scissor back and forth, any slowing met with a another blow as she encourages you forward, your attention narrowing as you pant and push, your only focus on trying to keep up with the grueling pace.<br>
<br>
Distantly, you hear "encouragement" from the rest of the gym, calls of "@@.generic_male1;work it slut!@@" and "@@.generic_female1;harder whore!@@" humiliating you... while also spurring you to keep pumping away even as you gasp for air, too tired to even cry out in pain as the nipple clamps bounce and <<=setup.getNpcName("npc_gym_futa","first")>> giving you a slap on the ass to egg you on whenever you even slightly slow.<br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_gym_futa_4_date_punish_5" "Press on!" 1800 "<<set $scene.focus=true>><<spendWillpower 2>>">>] <<hint $options "Focusing this hard will cost willpower">><br>
<<else>>
[@@.link_locked;You lack the mental energy to keep pushing yourself.@@]<br>
<</if>>
[<<moveTo "event_gym_futa_4_date_punish_5_fail" "Continue." 1800>>]
</div>/*#
#desc: npc_gym_futa punishment workout finish
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 1000>>
<<removeItem "cloverclamps" true>>
<<deleteItem "cloverclamps">>
<<removeItem "gap_catsuit_pink" true>>
<<deleteItem "gap_catsuit_pink">>
<<removeItem "gym_writing_humilation" true>>
<<deleteItem "gym_writing_humilation">>
<<if $scene.addCollar>>
<<removeItem "loose_collar" true>>
<<deleteItem "loose_collar">>
<</if>>
<<removeItem "leash_pink" true>>
<<deleteItem "leash_pink">>
<<set _date = setup.getNextDayOfWeek($now, 0, 10, 0, false)>>
<<set $scene.punt = !setup.hasFreeTime(_date, $player, $currentTasks, 5000)>>
<<if $scene.punt>>
<<set _date = setup.getNextDayOfWeek(_date, 0, 10, 0, false)>>
<</if>>
<<addTaskById 'gym_futa_climbing' _date>>
<<applyStress -10>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You grit your teeth and focus, somehow staying on your feet for <<=setup.getNpcName("npc_gym_futa","first")>> as the grueling workout rolls on. In a daze and on your last legs your body does eventually give out, and you sway for a moment, only to be caught easily in <<=ps(setup.getNpcName("npc_gym_futa","first"))>> strong arms.<br>
<br>
"@@.npc_gym_futa;Good <<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>boy<<default>>job<</switch>>...@@" you hear her whisper as she carries you past applauding fans, the humiliation and exhaustion of your workout fading in favour of a sense of pride as she carries you off to the gym showers, stripping you down and hosing you off, the words marked across your skin washing away down the drain.<br>
<br>
"@@.npc_gym_futa;A showing like that... well, you've earned another chance. Meet me at the climbing gym <<if $scene.punt>>next <</if>>Sunday, let's say ten in the morning... and just because it isn't an official training session doesn't mean we won't be getting sweaty. Dress for the gym... and to show off, if you know what I mean.@@"<br>
<br>
You nod, still exhausted, but somewhat mentally refreshed by her words as she leads you back to the locker-room and leaves you with your neatly stacked clothes.<br>
<br>
<<include "calcGymAttire">>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_gym_lobby" "Back to the lobby." 60>>]<br>
[<<moveTo "room_citymap" "Leave the gym." 300 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now!'>>">>]
<<else>>
<<if $scene.gymAttire>>
What you're wearing may be appropriate for the gym, but you don't feel like being seen outside in it!<br>
<</if>>
<<if $options.ezchange && $clothSetsInt.hasOwnProperty('preGym')>>
[<<moveTo "room_gym_lobby" "Change and head back to the lobby." 60 "<<useClothSetPop 'preGym'>>">>]<br>
<</if>>
[@@.link_locked;You are not appropriately attired to leave the gym.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: npc_gym_futa punishment workout finish fail
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 1000>>
<<removeItem "cloverclamps" true>>
<<deleteItem "cloverclamps">>
<<removeItem "gap_catsuit_pink" true>>
<<deleteItem "gap_catsuit_pink">>
<<removeItem "gym_writing_humilation" true>>
<<deleteItem "gym_writing_humilation">>
<<if $scene.addCollar>>
<<removeItem "loose_collar" true>>
<<deleteItem "loose_collar">>
<</if>>
<<removeItem "leash_pink" true>>
<<deleteItem "leash_pink">>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
Torture is right, and <<=ps(setup.getNpcName("npc_gym_futa","first"))>> routine proves to be too much for you as you stumble, stagger, and pass out on the elliptical.<br>
<br>
You wake some time later to find yourself in the gym shower, the last of your body-writing getting hosed off as <<=setup.getNpcName("npc_gym_futa","first")>> sneers down at you derisively. "@@.npc_gym_futa;Well that was a pathetic showing. You'll have to try again to regain my favour, because if that's all you can do, well... you're hardly worth my time.@@"<br>
<br>
<<include "calcGymAttire">>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_gym_lobby" "Back to the lobby." 60>>]<br>
[<<moveTo "room_citymap" "Leave the gym." 300 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now!'>>">>]
<<else>>
<<if $scene.gymAttire>>
What you're wearing may be appropriate for the gym, but you don't feel like being seen outside in it!<br>
<</if>>
<<if $options.ezchange && $clothSetsInt.hasOwnProperty('preGym')>>
[<<moveTo "room_gym_lobby" "Change and head back to the lobby." 60 "<<useClothSetPop 'preGym'>>">>]<br>
<</if>>
[@@.link_locked;You are not appropriately attired to leave the gym.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: npc_gym_futa start date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask "gym_futa_climbing" $now true>>
<</if>>
<<set $player.location to "Outside Going Down?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You head up the block from Hard Pump to find a warehouse that has been converted into the "Going Down?" Climbing and Rappelling gym. The time of your date rolls around and <<=setup.getNpcName("npc_gym_futa","first")>> arrives, already sporting a pump.<br>
<br>
"@@.npc_gym_futa;Good, you found the place. Now come on, let's hit the rocks!@@"<br>
<br>
[<<moveTo "event_gym_futa_4_date_2" "Continue." 1800>>]
</div>/*#
#desc: npc_gym_futa get equipped
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItem "climbing_harness">>
<<wearItem "climbing_harness" true>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_gym_futa","first")>> leads you into the gym and gets you equipped, cinching a harness tight around your waist and thighs,
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
highlighting the subtle outline of your cage.
<<case 4 5>>
highlighting the subtle outline of your large caged member.
<<case 6>>
further highlighting the subtle outline of your massive caged <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock<<elseif $player.body_ref.knot>>dog-cock<<elseif $player.body_ref.horsecock>>horse-cock<<else>>cock<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
accentuating the outline of your chastity shield.
<<case 4 5>>
accentuating the outline of your chastity shield and its large contents
<<case 6>>
accentuating the outline of your chastity shield and its <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock<<elseif $player.body_ref.knot>>dog-cock<<elseif $player.body_ref.horsecock>>horse-cock<<else>>cock<</if>> contents.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
giving you a bit of an artificial bulge.
<<case 2 3>>
amplifying your modest bulge.
<<case 4 5>>
further amplifying your already large bulge.
<<case 6>>
putting the bulge of your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock<<elseif $player.body_ref.knot>>dog-cock<<elseif $player.body_ref.horsecock>>horse-cock<<else>>cock<</if>> on full display.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
That said, <<=setup.getNpcName("npc_gym_futa","first")>> looks even more impressive, her cock looking primed to explode out from between the nylon webbing.
<<else>>
her own harness serving to draw further attention to her obvious bulge, though she seems unencumbered by the large nylon-strap bordered package.
<</if>>
<br><br>
<<=setup.getNpcName("npc_gym_futa","first")>> grins and leads you to one side of the gym where there's a crash-pad lined bouldering area. "@@.npc_gym_futa;This'll be a good warm-up, and faster than having to get all hooked in to the belay system. Come on, let's see what you got!@@"<br>
<br>
[<<moveTo "event_gym_futa_4_date_3" "Do some bouldering." 1800>>]
</div>/*#
#desc: bouldering
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<applyExperience 'dexterity' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'strength' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You take a deep breath<<if setup.getTotalValue("penis") > 10>>, focus your attention away from <<=ps(setup.getNpcName("npc_gym_futa","first"))>> delicious looking bulge,<</if>> and address the boulder problem before you. While you don't have much experience in climbing, per se, your time in the gym does translate over, especially with <<=setup.getNpcName("npc_gym_futa","first")>> giving instructions, pointing you to this handhold or the other, and even giving you the occasional boost... or is that grope?<br>
<br>
While your overall fitness serves you well, your hands start to fatigue and you take a break as takes her turn, her long limbs allowing her to scramble across the wall with ease, even arcing upwards to tackle a cave section, her gloriously muscular back flexing above you as she does a full arc, seemingly purposefully pausing right above you for a couple of drops of sweat to drip onto you.<br>
<br>
Back on the ground <<=setup.getNpcName("npc_gym_futa","first")>> looks even more impressive than when she started, muscles pumped, skin glistening with sweat, a hungry grin on her face as she helps you back to your feet.<br>
<br>
"@@.npc_gym_futa;Come on, now that we're warmed up its time to tackle some big walls... or maybe a little crack climbing?@@" She adds, one hand moving from a quick grope of your ass to trace a line between your tight cheeks.<br>
<br>
[<<moveTo "event_gym_futa_4_date_4" "Follow her out." 1800>>]
</div>/*#
#desc: npc_gym_futa climbs
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<applyExperience 'dexterity' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'strength' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'stamina' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
Back in the main climbing area <<=setup.getNpcName("npc_gym_futa","first")>> soon has you hooked up to the top rope and directs you up a basic wall.<br>
<br>
<<if setup.getTotalValue("strength") + setup.getTotalValue("dexterity") >= 40>>
Your excellent strength and agility provide the perfect blend to have you racing up the challenge, the safety of the rope only useful for the rappel down.
<<elseif setup.getTotalValue("strength") + setup.getTotalValue("dexterity") >= 30>>
Your blend of strength and dexterity serve you well as you make your way up the challenge, the safety of the rope only useful for the rappel down.
<<else>>
You carefully pick your way up the challenge, grateful for the promised safety of the rope.
<</if>>
<br><br>
As you climb <<=setup.getNpcName("npc_gym_futa","first")>> continues to coach, talking about not only the full body fitness that comes from climbing, but also how good the view is from "@@.npc_gym_futa;down here@@" as you feel her gaze all but burning into your tight ass.<br>
<br>
[<<moveTo "event_gym_futa_4_date_5" "Keep climbing." 1800>>]
</div>/*#
#desc: climbing
#status: RELEASED 0.9.1.0
#ignore_spell: onsight
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 100>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<applyExperience 'dexterity' 18 'normal' $SEEN_FRIEND>>
<<applyExperience 'strength' 18 'normal' $SEEN_FRIEND>>
<<applyExperience 'stamina' 18 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
The two of you go back and forth, <<=setup.getNpcName("npc_gym_futa","first")>> tackling the more difficult tagged routes using the auto-belay while you climb under her meticulous support and supervision. In between routes she coaches you further, talking about different grips "helpfully" demonstrating each style by groping you in various ways, from showing off an open-hand hold on your ass, to a pinch grip on your <<if setup.calcBreastSize() != "none">>breasts<<else>>other cheek<</if>> to showing off wedging her hand between your ample cheeks with your <<if setup.checkItemTypeWorn("plug")>>plug<<else>>clothes<</if>> nearly the only thing stopping her from demonstrating a pocket grip by way of your ass.<br>
<br>
You're starting to feel the exertion in your arms when <<=setup.getNpcName("npc_gym_futa","first")>> leads the way to a more intermediate course, pointing out a specific colour-coded route and challenging you to reach the top. "@@.npc_gym_futa;Onsight it and I'll give you a reward, go on, now!@@"<br>
<br>
You eye the climb... particularly the slight overhand near the top and take a deep breath, determined not to let her down...<br>
<br>
<<if setup.getWillpower() >= 1>>
[<<moveTo "event_gym_futa_4_date_6" "Focus hard and really give it your all." 600 "<<set $scene.focus=true>><<spendWillpower 1>>">>] <<hint $options "Focusing this hard will cost willpower">><br>
<<else>>
[@@.link_locked;You lack the mental energy to give 110%.@@]<br>
<</if>>
[<<moveTo "event_gym_futa_4_date_6" "Just see what you can do." 600 "<<set $scene.focus=false>>">>]
</div>/*#
#desc: you fall
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<alterStatAllWorn 'sweaty' '["add",10]'>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
Climbing without <<=ps(setup.getNpcName("npc_gym_futa","first"))>> constant advice is a bit of a challenge as you're forced to plan your way through the route, but you're
<<if $scene.focus>>
determined to impress <<=setup.getNpcName("npc_gym_futa","first")>> with what you've learned as you scramble up.<br>
<br>
<<if setup.getTotalValue("strength") + setup.getTotalValue("dexterity") >= 40>>
With total focus, and consummate skill, you're one hold away from the top when your grip slips and you fall,
<<else>>
<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15>>
You hope that your focus will give you that last little bit to compliment your skill and strength... but it proves not to be as you make it almost to the top when you miss a hold and go
<<elseif setup.getTotalValue("strength") >= 15>>
You hope that your focus will be enough to make up for your slight lack of agility... but it proves not to be as you make it almost to the top when you miss a hold and go
<<elseif setup.getTotalValue("dexterity") >= 15>>
You hope that your focus will be enough to make up for your slight lack of strength... but it proves not to be as you make it almost to the top when your grip gives out and you go
<<else>>
You hope that your focus will be enough to make up for your gaps in strength and agility... but you barely make it to the start of the overhang when you slip up and go
<</if>>
<</if>>
<<else>>
hopeful to impress <<=setup.getNpcName("npc_gym_futa","first")>> with what you've learned as you scramble up.<br>
<br>
<<if setup.getTotalValue("strength") + setup.getTotalValue("dexterity") >= 40>>
Even without dedicating total focus your athleticism is nearly enough to get you to the top... or it would have been, if you were a bit fresher. In the end you're just a hold or two from the end when your hand slips and you go
<<else>>
<<if setup.getTotalValue("strength") >= 15 && setup.getTotalValue("dexterity") >= 15>>
There proves to be a gap between your own strength and agility and what the challenge requires, as you barely make it to the start of the final overhang when your grip gives out and you go
<<elseif setup.getTotalValue("strength") >= 15>>
Though your strength holds, your dexterity proves to be your failing as you end up crossing yourself up in an attempt to switch grips and go
<<elseif setup.getTotalValue("dexterity") >= 15>>
Your strength prove sto be your failing, as your grip gives out just as you start the top overhang portion and you go
<<else>>
This wall is definitely beyond your current ability as you barely start the overhang when your grip gives out and you go
<</if>>
<</if>>
<</if>>
swinging off the wall.<br>
<br>
You've fallen less than a meter when the rope jerks taut, <<=setup.getNpcName("npc_gym_futa","first")>> doing her job to perfection to catch you, your harness pulling tighter against your body as you dangle in mid-air, swaying just out of reach of the wall...<br>
<br>
[<<moveTo "event_gym_futa_4_date_7" "Continue." 60>>]
</div>/*#
#desc: teasing
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
After the adrenaline jolt of falling it takes you a moment to regain your bearings as you glance down to see <<=setup.getNpcName("npc_gym_futa","first")>> grinning up at you with naked lust, letting you dangle for an extra moment before easing you down, stopping with you hanging right at eye-level where you start to spin in a slow circle before she pulls you in for a kiss.<br>
<br>
"@@.npc_gym_futa;Alas... it would seem that you have failed my challenge. Which, I suppose, just means that you are in need of additional instruction... PRIVATE instruction.@@"<br>
<br>
Another kiss all but takes your breath away before <<=setup.getNpcName("npc_gym_futa","first")>> lets you down the rest of the way to the floor. You're already scrambling to unclip from the ropes as she walks away, giving you a quick glimpse of her cock straining against pants and harness alike before she takes off for a side room, with you speeding after her.<br>
<br>
[<<moveTo "event_gym_futa_4_date_8" "Continue." 300>>]
</div>/*#
#desc: foreplay
#status: RELEASED 0.9.1.0
#ignore_spell: gock
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<wearItem "climbing_harness" true>>
<<addItem "rope_bondage">>
<<wearItem "rope_bondage" true>>
<<applyExperience 'penis' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'bondage' 17 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You've barely followed <<=setup.getNpcName("npc_gym_futa","first")>> into a private room when you find yourself in a similar predicament to where you were before. With strength and speed she clips a carabiner to your harness and lifts you into the air, suspending you in the middle of the room... at eye level with her ever-taunting bulge.<br>
<br>
She looks down at you with a smile, keeping her delicious gock just out of reach as she tugs at your clothes. "@@.npc_gym_futa;There we go, just need to make sure there's no injuries from your fall...@@"<br>
<br>
In what borders on a magic trick <<=setup.getNpcName("npc_gym_futa","first")>> removes your clothes for a full inspection, keeping you suspended the entire time as your tight outfit is removed... and replaced with even tighter rope bondage. By the time she's finished you're in a full-on shibari suspension... at perfect eye level with what is finally no longer a bulge, but her thick, hard, juicy <<if $fetish.futanari>>futa<<else>>girl<</if>>-cock dripping with splendor<<if $fetish.cum>>... and pre<</if>>.<br>
<br>
"@@.npc_gym_futa;Sucking?@@" She asks, in a teasing parody of the on a climber's standard on belay/belay on exchange as she rubs her gock against your cheeks.<br>
<br>
[<<moveTo "event_gym_futa_4_date_9" "Suck on!" 300>>]
</div>/*#
#desc: sex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<alterStatAllWorn 'sweaty' '["add",30]'>>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
Your lips part eagerly as <<=setup.getNpcName("npc_gym_futa","first")>> teases you a bit more with her hot, hard cock rubbing against your face before lining up and hilting herself in your throat. Your body trembles in mid-air as your nose buries itself in her dripping snatch and she throat-fucks you in mid-air.<br>
<br>
You're helpless to do anything but use your lips and tongue as <<=ps(setup.getNpcName("npc_gym_futa","first"))>> strong hips and the swing of the ropes control your movements, turning you into her pendulum of pleasure.<br>
<br>
<<if $fetish.cum>>
"@@.npc_gym_futa;I know today was to be more of a casual thing... but, despite the fall, your training is coming along quite well... and after-workout nutrition is a part of that, isn't that right?@@"<br>
<br>
She grins in approval as you moan around her cock in agreement... and she reaches down, a hand around your throat almost jerking herself off as she rewards you with a thick blast of <<if $fetish.futanari>>futa <</if>>cum.
<<else>>
She grins in approval as you moan around her cock... and she reaches down, a hand around your throat almost jerking herself off as she finishes off.
<</if>>
<<=setup.getNpcName("npc_gym_futa","first")>> pulls back, trails of saliva<<if $fetish.cum>> and semen<</if>> still tracing from your lips only to swing you close again, her still-hard <<if $fetish.futa>>futa cock<<else>><<getWordPenis false>><</if>> lifted out of the way for your lips to meet hers as you nestle between her strong thighs to eat her out.<br>
<br>
"@@.npc_gym_futa;Good <<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>boy<<default>>job<</switch>>...@@" she purrs, no longer swinging you in your restraints in favour of clamping down with her thighs and grinding against her face<<if $fetish.cum>> until your mouthful of cum is washed down by a squirting orgasm<<else>>until she cums again<</if>>.<br>
<br>
[<<moveTo "event_gym_futa_4_date_10" "Catch your breath..." 3000>>]
</div>/*#
#desc: sex
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 200>>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_gym_futa.penis_size 'terrible' $SEEN_FRIEND>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_gym_futa","first")>> is already up two orgasms to nil by the time your lips separate from her sex... and she immediately sets about evening up the score, spinning you in mid-air to take you from the other end, her still rock-hard <<if $fetish.futanari>>futa cock<<else>><<getWordPenis false>><</if>> thrusting into your ass with the help of your saliva as lube.<br>
<br>
"@@.npc_gym_futa;You belong on the end of my cock,@@" <<=setup.getNpcName("npc_gym_futa","first")>> states with a grin, her hands gripping your hips as she fucks you hard, your body swinging the length of her with each stroke. "@@.npc_gym_futa;All that work to turn you from a <<if $fetish.slurs>>weak pansy<<elseif $fetish.sissy>>weak sissy<<else>>weakling<</if>> into a strong, fit fuck-sleeve<<if $fetish.cum>> cumdumpster<</if>>, able to go round after round serving me up pleasure...@@"<br>
<br>
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
No sooner has <<=setup.getNpcName("npc_gym_futa","first")>> cum in your ass than she shifts one hold over, breeding you hard and deep and leaving you gaping<<if $fetish.cum>> and dripping <<if $fetish.futanri>>futa <</if>>cum <</if>> from both holes.
<<else>>
Perhaps to balance out the two orgasms she claimed from your lips, she doesn't stop until she's <<if $fetish.cum>>dumped two thick loads of <<if $fetish.futanari>>futa <</if>>cum in your ass<<else>>gotten off twice in your somehow still-tight ass<</if>>.
<</if>>
<br><br>
Somehow your own orgasm leaves you even more breathless than sucking <<=setup.getNpcName("npc_gym_futa","first")>> off... but you have hardly a moment to recover before you're spinning in air to come face to face with her still rigid <<if $fetish.futanari>>futa cock<<else>><<getWordPenis false>><</if>>, switching off until you've lost count of the number of rounds, eventually lowered to the padded floor, still in your bonds to cuddle up against your finally satisfied instructor...<br>
<br>
[<<moveTo "event_gym_futa_4_date_11" "Rest." 2000>>]
</div>/*#
#desc: caught
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -50>>
<<applyExperience 'humiliation' 18 'terrible' $SEEN_FRIEND>>
<<removeItem "rope_bondage" true>>
<<deleteItem "rope_bondage">>
<<removeItem "climbing_harness" true>>
<<deleteItem "climbing_harness">>
<</if>>
<<set $player.location to "Going Down? Climbing Gym">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/climbing_gym.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You wake up to a shout, looking up to find someone else has walked into the room, expressing shock over your situation. "@@.generic_male1;Hey, what the hell! I reserved this room for some training—@@"<br>
<br>
The <<man>> is cut off by <<=setup.getNpcName("npc_gym_futa","first")>> rising to her full, imposing height, <<his>> incredulous objections fraying into nervous blabber in the face of her dominant strength. "@@.generic_male1;I mean... if you're done, um, I'd like to, um, uh...@@"<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> smirks, winking at the man as she leans over to work at your restraints. "@@.npc_gym_futa;We'll just be a moment. After all, I wouldn't want to leave this rope all... knotted up.@@"<br>
<br>
The <<man>> just stares in shock as <<=setup.getNpcName("npc_gym_futa","first")>> unties you and passes you back your clothes... though you aren't in them for long as she leads you off to the gym's showers...<br>
<br>
[<<moveTo "event_gym_futa_4_date_12" "Clean up." 600>>]
</div>/*#
#desc: shower
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -25>>
<<applyExperience 'submission' 18 'normal' $SEEN_FRIEND>>
<<include "cleanPlayer">>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $player.location to "Going Down? Climbing Gym Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
In the showers things once again take a turn for the sensuous as you find yourself cleaning, massaging... and worshiping <<=ps(setup.getNpcName("npc_gym_futa","first"))>> muscles as the steamy water flows over you. She even returns the favour... though when she scrubs you down it somehow only makes you feel more owned, like a prized possession to be polished versus your subservient actions.<br>
<br>
Slightly refreshed, but still feeling a bit sore from your climbing and... other activities, you towel <<=setup.getNpcName("npc_gym_futa","first")>> like you were polishing a statue and then she's sending you on your way, her parting congratulation of you being a "@@.npc_gym_futa;good trainee@@" leaving you with tingles of pleasure as skip on your way.<br>
<br>
[<<moveTo "room_citymap" "Head out." 600 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: npc_gym_futa invites to dinner
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You finish up another workout when <<=setup.getNpcName("npc_gym_futa","first")>>, with just a hint of nerves raises a question.<br>
<br>
"@@.npc_gym_futa;So, hey... it's getting on towards suppertime, and nutrition is a big component of fitness... well, I found a place nearby what cooks really "clean" food... would you maybe be up for joining me for dinner?@@"<br>
<br>
Despite her casual tone you sense that this is a bit more than a mere dining recommendation...<br>
<br>
[<<moveTo "event_gym_futa_dinner_invite_2" "Sure!" 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_futa_dinner_invite_2" "Not today..." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: npc_gym_futa accept dinner invite
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _nextDate = setup.setNextDate($now, 0, 1+$now.getUTCHours(), $now.getUTCMinutes(), 0)>>
<<addTaskById 'task_gym_futa_dinner' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_private.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName("npc_gym_futa","first"))>> probably-not-as-casual as she's acting offer and she smiles.<br>
<br>
"@@.npc_gym_futa;Wonderful... we can meet there in an hour? Only... well, I mentioned that the chef was good and, well... <<he>>'s more than just good, award-winning, actually... and the place is a bit formal... but trust me, the dresscode is worth it for the food!@@"<br>
<br>
<<printThought "Hmmm.">><br>
<br>
You agree to go home and get changed to meet her for dinner.<br>
<br>
"@@.npc_gym_futa;Wonderful, wonderful. I should do likewise so... see you then!@@"<br>
<br>
She grabs her bag and dashes out of the room before you can respond further.
<<else>>
You decline <<=ps(setup.getNpcName("npc_gym_futa","first"))>> offer and she blows things off. "@@.npc_gym_futa;Sure, sure... I mean, it was a bit of a last-minute suggestion, wouldn't want to disrupt your meal-prep and all. Well, I should probably head out, I'll see you later.@@"<br>
<br>
She grabs her bag and dashes out of the room before you can respond further, leaving behind a slight cloud of awkwardness.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
</div>/*#
#desc: no show npc_gym_futa dinner date
#status: RELEASED 0.9.3.0
#ignore_spell: d'
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.atRestaurant>>
You arrive at the restaurant, but are turned away at the door by the Maitre d' for your "@@.generic_male1;uncouth attire.@@"<br>
<br>
A moment later you get a text from <<=setup.getNpcName("npc_gym_futa","first")>>.<br>
<br>
"@@.npc_gym_futa;I just saw you outside... I did tell you that the place had a dresscode... maybe some other time...@@"
<<else>>
You get a call from <<=setup.getNpcName("npc_gym_futa","first")>>.<br>
<br>
"@@.npc_gym_futa;Are you standing me up? Not that this was a date, of course but... still, very disrespectful!@@"<br>
<br>
She sounds hurt, not letting you get a word in edgewise before she hangs up.
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: seated for npc_gym_futa date
#status: RELEASED 0.9.3.0
#ignore_spell: d'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'task_gym_futa_dinner' $now true>>
<</if>>
<<set $player.location = "Truffled Up">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_gym_futa","npc_gym_futa_formal")>>
<div id="invframe" class="scrolltext">
You arrive at the restaurant... which seems even more formal than you expected, the Maitre d' greeting you with a nod before leading you to your table.<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> stuns in an off-the-shoulder backless dress that shows off her muscles better than the tightest muscle shirt.<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> compliments you on your outfit as she holds your chair... casually lifting you and it up rather than just sliding you forward to seat you at the table before sitting across.<br>
<br>
"@@.npc_gym_futa;So glad you could make it, please, take a look at the menu, and do not concern yourself with the price. I invited you, after all, and everything the chef prepares is superb.@@"<br>
<br>
You take advantage of the menu to slightly hide and think as you scan over the various dishes. You're slightly taken off-guard by <<=ps(setup.getNpcName("npc_gym_futa","first"))>> demeanor, she seems almost hesitant, and in all ways far from her normal borderline domineering attitude.<br>
<br>
<<printThought "If you asked me before I would have expected her to order for me... maybe her work is performance, as well as coaching?">><br>
<br>
[<<moveTo "event_gym_futa_dinner_2" "Place your order." 3600>>]
</div>/*#
#desc: dinner date with npc_gym_futa
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Truffled Up">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_gym_futa","npc_gym_futa_formal")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_gym_futa","first"))>> casual behaviour continues through dinner as you slowly stop expecting her dominant affectation to rear its head. In between bites of delicious food she chats with you about your work and other things beyond the gym, even as it sounds like her own life is occupied with little more than working out and coaching her clients.<br>
<br>
The dinner comes to an end and she pays the bill when you notice that she's had quite a number of glasses of wine, the slight vulnerability she displayed earlier in the evening seeming even more stark as she leads you out of the restaurant and makes another proposal. "@@.npc_gym_futa;Say, we've been having such a nice evening together... would you like to come back to my place? It isn't far...@@"<br>
<br>
[<<moveTo "event_gym_futa_dinner_3" "Accept her offer." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_futa_dinner_3" "Politely decline." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: go home with npc_gym_futa after date
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_gym_futa","first"))>> Flat'>>
<<else>>
<<set $player.location = "Truffled Up">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_gym_futa","npc_gym_futa_naked")>>
<<else>>
<<createAdvBGR "./images/locations/fancy_dinner.png" setup.charImage("npc_gym_futa","npc_gym_futa_formal")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
The night is cool as you walk the block or so to <<=ps(setup.getNpcName("npc_gym_futa","first"))>> flat and you realise just how close she lives to the gym. <<printThought "She really does have her life centred around her work...">><br>
<br>
Her flat itself is sparse and you get ready for sex as she leads the way to her bedroom and carefully removes her fancy dress.<br>
<br>
"@@.npc_gym_futa;Would it be alright if we just cuddled?@@" She asks. "@@.npc_gym_futa;I just... I have to be "on" all the time with my clients but with you... well... I was wondering if we could put that aside... for a few hours, at least?@@"<br>
<br>
[<<moveTo "event_gym_futa_dinner_4" "Shed your clothes and snuggle up with her." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_gym_futa_dinner_4" "Actually... you should probably go." 300 "<<set $scene.accept=false>>">>]
<<else>>
You reply that it's getting late and you do need to get home.<br>
<br>
"@@.npc_gym_futa;Of course, of course well... thank you for the evening, I do hope you enjoyed dinner. See you at the gym sometime, I guess.@@"<br>
<br>
She turns and disappears into the night.<br>
<br>
[<<moveTo "room_citymap" "Continue on your way." 60>>]
<</if>>
</div>/*#
#desc: sleep over npc_gym_futa
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_gym_futa","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_gym_futa","npc_gym_futa_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You shed your own formal attire and step forward for <<=setup.getNpcName("npc_gym_futa","first")>> to welcome you into her arms. Curled up as her little spoon you feel hear heart-beat slow as she sighs in contentment. "@@.npc_gym_futa;Thank you...@@" she whispers as she pulls you closer, you nestled against her as the little spoon as her breathing slows and she conks off to sleep...<br>
<br>
Snuggled tight you feel not just comfortable, but safe, your eyelids getting heavy as you start to drift off as well...<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_gym_futa_dinner_5" "Sleep..." _timeToMorning>>]
<<else>>
You have a twinge of regret as you excuse yourself and see a brief expression of hurt pass over <<=ps(setup.getNpcName("npc_gym_futa","first"))>> face before she manages to conceal it behind her more-standard bravado.<br>
<br>
"@@.npc_gym_futa;Of course, you are just a client, after all... well, I will see you at the gym again, sometime.@@"<br>
<br>
[<<moveTo "room_citymap" "Leave." 300>>]
<</if>>
</div>/*#
#desc: wake up after sleeping over with npc_gym_futa
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<applyFatigue -100>>
<<if setup.hasTmpEffect("tipsy")>>
<<cancelTmpEffect 'tipsy'>>
<</if>>
<<if setup.hasTmpEffect("drunk")>>
<<cancelTmpEffect 'drunk'>>
<<setTmpEffect "hangover">>
<</if>>
<<if setup.hasTmpEffect("wasted")>>
<<cancelTmpEffect 'wasted'>>
<<setTmpEffect "hangover">>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_gym_futa","first"))>> Flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/admin_bedroom.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You wake up to the blaring of an alarm, <<=setup.getNpcName("npc_gym_futa","first")>> thrashing awake as you roll out of the way and she takes a few moments of shock to recognise you and seem to catch up on the events of the previous night.<br>
<br>
"@@.npc_gym_futa;<<=$player.first_name>>! I'm sorry... did I hurt you? Only... I'm not used to sleeping with someone else and...@@" her shoulders slump slightly only for a second alarm to interrupt. "@@.npc_gym_futa;Shit, sorry... I, uh, sleep pretty soundly, and I need to get ready for a client... thank you for the night I... I really appreciate it but... I need to go...@@"<br>
<br>
Whatever emotions you've stirred up with <<=setup.getNpcName("npc_gym_futa","first")>> now doesn't seem the time to push things any further and you quickly grab your things and promise to see her later at the gym.<br>
<br>
"@@.npc_gym_futa;Later... yeah...@@" she replies, a hint of blushing surprise on her face as she modestly looks away while you both change and she leads you out of her flat.<br>
<br>
[<<moveTo "room_citymap" "Leave." 300>>]
</div>/*#
#desc: npc_gym_futa talks about her dissatisfaction
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_gym_futa","first")>> notices your approach and stops you before you can even say "@@.pc;Hi.@@"<br>
<br>
"@@.npc_gym_futa;Hey, so, I wanted to clear the air after our dinner...@@" she takes a deep breath, seeming to almost psych herself up before continuing. "@@.npc_gym_futa;So I think I came on a bit heavy and got a bit emotional and well... I wanted to apologise, I try to avoid that only...@@" she pauses even longer this time, continuing with a lowered voice as if afraid someone else at the gym might overhear. "@@.npc_gym_futa;So I've actually been getting a bit disillusioned with things lately, you're great, but so many of my other clients... well, I can't push them like they need, they either end up half-assing things are just drifting away, and when they fail, well... it leaves me feeling helpless... but if I push too hard I lose a client AND I get complaints from gym ownership...@@" She sighs. "@@.npc_gym_futa;So yeah, I guess all of that sort of came to a head with you and... well, I'm sorry. I'll try to keep things more professional going forward and not drag you into my... stuff.@@"<br>
<br>
[<<moveTo "event_gym_futa_dissatisfaction_2" "It sounds like she's pretty stressed... maybe a vacation?" 120 "<<set $scene.job=false>>">>]<br>
[<<moveTo "event_gym_futa_dissatisfaction_2" 'Has she considered a different job?' 120 "<<set $scene.job=true>>">>]
</div>/*#
#desc: ask about npc_gym_futa dissatisfaction
#status: RELEASED 0.9.4.0
#ignore_spell: connectinsider,tm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.suggestions = {}>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if $scene.job>>
You ask if <<=setup.getNpcName("npc_gym_futa","first")>> has considered changing jobs, maybe something more stable rather than jumping client to client?<br>
<br>
"@@.npc_gym_futa;Yeah? And what would I do... exactly? I never actually went to college or anything and I have a pretty specialised skillset. Getting endorsed for stepping on people's faces doesn't make for an in-demand connectInsider(tm) profile.@@"<br>
<br>
You consider that for a moment, wondering if there's any way you could help...<br>
<br>
<<include "gymFutaJobSuggestions">>
<<else>>
You suggest <<=setup.getNpcName("npc_gym_futa","first")>> take a vacation to unwind but she shakes her head. "@@.npc_gym_futa;In this economy? Even if I thought it would help, going away like that would just set me back even more clients... and well... you probably would not be surprised to hear that I don't really handle "doing nothing" that well, when it's going well I enjoy my work... but it also serves as a distraction from getting too in my own head, y'know?@@"<br>
<br>
[<<moveTo "event_gym_futa_dissatisfaction_2" 'Has she considered a different job?' 120 "<<set $scene.job=true>>">>]
<</if>>
</div><<if State.hasPlayed("event_gym_futa_sexshop_1")>>
[@@.link_locked;<<=setup.getNpcName("npc_gym_futa","first")>> already tried working at <<printShopName "mall_sexstore">> in the mall.@@]<br>
<<elseif $npc_sexstore_clerk.flags.workStage > 2>>
[<<moveTo "event_gym_futa_dissatisfaction_3_mall" 'Maybe <<printShopName "mall_sexstore">> in the mall?' 120>>]<br>
<</if>>
<<if $scene.suggestions.club>>
[@@.link_locked;You already suggested <<=setup.getNpcName("npc_gym_futa","first")>> try working at <<printShopName 'sex_club'>>.@@]<br>
<<elseif State.hasPlayed("event_sex_club_event_first_4")>>
[<<moveTo "event_gym_futa_dissatisfaction_3" "What about <<printShopName 'sex_club'>>?" 120 "<<set $scene.new_job='club'>>">>]<br>
<</if>>
<<if $scene.suggestions.bar>>
[@@.link_locked;You already suggested <<=setup.getNpcName("npc_gym_futa","first")>> try working at The Usual Place.@@]<br>
<<elseif $player.sec_style.submission.prostitution>>
[<<moveTo "event_gym_futa_dissatisfaction_3" "You could put in a word at The Usual Place?" 120 "<<set $scene.new_job='bar'>>">>]<br>
<</if>>
[<<moveTo "event_gym_futa_dissatisfaction_3_company" "Has she tried applying to your company?" 120>>]<br>
<<if $scene.suggestions.dom>>
[@@.link_locked;You already suggested <<=setup.getNpcName("npc_gym_futa","first")>> try striking out as a full-time pro-Domme.@@]<br>
<<else>>
[<<moveTo "event_gym_futa_dissatisfaction_3" "Strike out on her own as a pro-Domme?" 120 "<<set $scene.new_job='dom'>>">>]<br>
<</if>>/*#
#desc: suggest solutions to npc_gym_futa dissatisfaction
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.suggestions[$scene.new_job] = true>>
<<if $scene.new_job == "mall">>
<<set _nextDate = setup.setNextDate($now, 10, 0, 0)>>
<<addEvent "gym_futa_sexstore_post" _nextDate>>
<<elseif $scene.new_job == "company">>
<<set $npc_gym_futa.flags.applyCompany = true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<switch $scene.new_job>>
<<case 'club'>>
You ask if <<=setup.getNpcName("npc_gym_futa","first")>> has thought about plying her wares at <<printShopName "mall_sexstore">>?<br>
<br>
She shakes her head. "@@.npc_gym_futa;Don't get me wrong, it can be a fun place to visit... if a touch "busman's holiday"... but after see them suddenly close up shop well... I don't trust it long-term, y'know? Plus I kind of feel like it's more <<=ps(setup.getNpcName("npc_guard","formal"))>> turf, and I'm not one to barge in on another Domme.@@"
<<case 'bar'>>
You ask if <<=setup.getNpcName("npc_gym_futa","first")>> would be interested in working at The Usual Place?<br>
<br>
Her eyes narrow, "@@.npc_gym_futa;Are you calling me a whore?@@" A jolt of fear shoots through you before she grins, "@@.npc_gym_futa;Ah, just joshing you! No... I tried that a bit back when I was starting off and well... sure I'll fuck a client, as you well know... but I like taking time to build rapport, and do other stuff besides, it's a blend that doesn't work so well trying to grind out tricks. Thanks for the offer, and all respect for those that can maintain that hustle... but it ain't for this bitch.@@"<br>
<br>
<<case 'dom'>>
You ask if <<=setup.getNpcName("npc_gym_futa","first")>> has thought about going full pro-domme?<br>
<br>
She smirks, "@@.npc_gym_futa;And how is that all that different from what I do now? No... pro-domme is a tough market to break into, I've got a nice niche here... to say nothing of having to cultivate new clients and find facilities and such.@@"<br>
<br>
<<default>>
ERROR: unexpected scene.new_job <<=$scene.new_job>>
<</switch>>
<<include "gymFutaJobSuggestions">>
[<<moveTo "room_gym_main" "Back to the gym." 60>>]
</div>/*#
#desc: suggest apply company to npc_gym_futa dissatisfaction
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You ask if <<=setup.getNpcName("npc_gym_futa","first")>> would consider working for your company, Social Interaction Service Syndicate Inc.?<br>
<br>
She looks at you confused. "@@.npc_gym_futa;A corporate gig? I just told you, I don't even have a diploma and, no offense to what you do but... a desk job? Yeah... nope!@@"<br>
<br>
You sigh and explain that things at Social Interaction Service Syndicate Inc. are a bit different than that. As you lay out some of your own experience, and the goings-ons in the Employee Discipline department <<=setup.getNpcName("npc_gym_futa","first")>> starts to look intrigued.<br>
<br>
"@@.npc_gym_futa;Huh... yeah, I didn't even know that was an option, but the way you describe it? Steady work, growth opportunities, doing what I love? Yeah... I think I will apply, thanks for the suggestion!@@"<br>
<br>
You grin, happy to be of help, and tell her to feel free to use you as a reference.<br>
<br>
"@@.npc_gym_futa;I will at that! Anyway, enough of my shit... what were you thinking for today?@@"<br>
<br>
<<include "gymFutaLessonRepeatChoice">>
</div>/*#
#desc: suggest apply mall to npc_gym_futa dissatisfaction
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You ask if <<=setup.getNpcName("npc_gym_futa","first")>> has every considered retail, explaining that you've been doing some work at <<printShopName "mall_sexstore">> in the mall and they think for a moment.<br>
<br>
"@@.npc_gym_futa;Not really? But hey, there's usually downtime at the gym mid-day... I'll give it a shot! I can tell them you sent me?@@"<br>
<br>
You nod, quickly texting <<=setup.getNpcName("npc_gym_futa","first")>> a referral and getting back an enthusiastic confirmation.<br>
<br>
"@@.npc_gym_futa;Great cool... well, I guess I'll let you know! So... what were you thinking for today?@@"<br>
<br>
<<include "gymFutaLessonRepeatChoice">>
</div>/*#
#desc: npc_gym_futa talks about her attempt to work the sex store
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.suggestions>>
<<set $scene.suggestions = {}>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_gym_futa","first")>> greets you with a smile. "@@.npc_gym_futa;Hey, so... about that suggestion to check out <<printShopName "mall_sexstore">>...@@" she looks just a touch sheepish as you eagerly ask how it went?<br>
<br>
"@@.npc_gym_futa;Turns out that I'm maybe not cut out for retail... things were going fairly fine when this absolutely delicious <<if $fetish.fem_all_women>>cutie<<else>>twink<</if>> came in looking to buy a toy... well I, of course, tried to be the helpful saleswoman but I'm only human, and the little tremble in <<if $fetish.fem_all_women>>her<<else>>his<</if>> voice... the way <<if $fetish.fem_all_women>>she<<else>>he<</if>> bent over in those way-too-tight booty shorts...@@" <<=setup.getNpcName("npc_gym_futa","first")>> bites her lip and growls. "@@.npc_gym_futa;It was just too irresistible, and before long things were progressing to what you might call a "hard sell"... their only request was for me to add a gag when I picked them up to switch holes... but even that wasn't enough to keep their excitement down and, well... it turns out that there's zoning restrictions against running "that sort" of establishment in that designation of commercial district?@@"<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> shakes her head and shrugs. "@@.npc_gym_futa;I don't know, I'm a domme, not a lawyer but end of the day I was let off early. I still stuck around for after the customer checked out... I finished THEM off in a bathroom stall and sent them off with a smile, locked, stuffed, and collared with their purchases... but yeah, I think I set a couple of records for single-shift performance. It was nice of you to suggest and put in a good word... but I guess I'm stuck doing this whole personal trainer gig, after all, eh?@@"<br>
<br>
You stifle a laugh at the straight-out-of-a-porno story and think about what other options <<=setup.getNpcName("npc_gym_futa","first")>> might pursue...<br>
<br>
<<include "gymFutaJobSuggestions">>
</div>/*#
#desc: npc_gym_futa tells you about application
#status: RELEASED 0.9.4.0
#ignore_spell: byos
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.futaPresent = false>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_gym_futa","first")>> waves you over with an eager smile.<br>
<br>
"@@.npc_gym_futa;Guess who has two thumbs, a giant cock and a job interview with the fastest-growing megacorp on the continent?@@" She asks with a grin.<br>
<br>
You congratulate her and state that you're sure that she's going to just nail the interview... or is that rail the interviewer? Either way, you're happy for her seeking out new opportunities.<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> smirks, "@@.npc_gym_futa;Thanks for the vote of confidence, I gotta say, just the opportunity does have me feeling pretty pumped... and not just this,@@" she adds, flexing one bicep. "@@.npc_gym_futa;That out of the way... I actually needed to ask you about something. It seems that, while they liked my application and I got through a preliminary meet and greet well, with the department I'm applying to part of the interview process is an in-person test... and it's BYOS — Bring Your Own Slave. I did some digging online and the universal recommendation is to get help from someone at the company, since outsiders can be thrown off and it's like the both of you are interviewing so... yeah, you already helped with the initial rec but... would you be willing to be there for the interview?@@"<br>
<br>
[<<moveTo "event_gym_futa_application_1_intro_2" "Work is pretty hectic at the moment..." 60 "<<set $scene.job=false>>">>]<br>
[<<moveTo "event_gym_futa_application_1_intro_2" "Sure, you'd love to help." 60 "<<set $scene.job=true>>">>]
</div>/*#
#desc: npc_gym_futa asks for help
#status: RELEASED 0.9.4.0
#ignore_spell: byos
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addWorkEvent 'gym_futa_interview' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You reply that you'd love to "serve"... and you can totally understand why having someone "on the inside" would be a leg up for <<=ps(setup.getNpcName("npc_gym_futa","first"))>> interview.<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> grins. "@@.npc_gym_futa;Well, knowing what a subby little slut you can be certainly has me even more excited for the job. I said I did some research, apparently the way it works for BYOS if you choose an employee is that they'll just call you up without warning... I guess it's to balance out the insider advantage a little, and that you're expected to be "ready" at all times anyway.@@"<br>
<br>
You straighten professionally and promise that, as a <<=setup.getSecretaryTitle()>> you ARE always ready to serve.<br>
<br>
"@@.npc_gym_futa;Great, well... I'll look forward to seeing you at your office. Until then, the gym remains MY office... what were you thinking for today?@@"
<<else>>
You reply that work is pretty crazy and you don't think you can safely take the time away right now.<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> frowns. "@@.npc_gym_futa;And after you encouraged me to apply! Damn, well... I don't think I want to risk my opportunity using any of my other clients, so I guess it's just chugging away like I have and hoping your schedule clears up a bit. Let me know?@@" <<=setup.getNpcName("npc_gym_futa","first")>> sounds a bit bummed out, but quickly puts a smile on her face as she leans against one of the weight machines. "@@.npc_gym_futa;Anyway, back to why you're here, you looking to get some training in today?@@"
<</if>>
<br><br>
<<include "gymFutaLessonRepeatChoice">>
</div>/*#
#desc: npc_gym_futa talk about application
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You bring up <<=ps(setup.getNpcName("npc_gym_futa","first"))>> job application and pending interview for a job at Social Interaction Service Syndicate Inc.<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> immediately perks up. "@@.npc_gym_futa;Yeah? Work calm down a bit so you can lend me a hand... or a hole?@@"<br>
<br>
[<<moveTo "event_gym_futa_application_1_intro_2" "Work is still pretty hectic at the moment..." 60 "<<set $scene.job=false>>">>]<br>
[<<moveTo "event_gym_futa_application_1_intro_2" "Yup, you'd love to help." 60 "<<set $scene.job=true>>">>]
</div>/*#
#desc: summoned for npc_gym_futa interview
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You get a message from the employee discipline department. "@@.generic_female1;Report to floor 169.@@"<br>
<br>
<<printThought "That's cryptic... I don't think I've done anything wrong recently... and <<=setup.getNpcName('npc_manager','formal')>> would have surely handled things herself... so this must be <<=ps(setup.getNpcName('npc_gym_futa','first'))>> interview...">><br>
<br>
You take a deep breath and log off your computer and head for the elevator.<br>
<br>
[<<moveTo "event_gym_futa_application_2" "Travel up to floor 169." 300>>]
</div>/*#
#desc: npc_gym_futa interview meet
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_gym_futa") setup.charImage("npc_discipline","npc_discipline_assist")>>
<div id="invframe" class="scrolltext">
You travel up to the 169th floor where your guess is confirmed. <<=setup.getNpcName("npc_gym_futa","first")>> looks a bit nervous, out of her normal fitness attire and wearing what can only be referred to as "corporate dominatrix," a fitted suit, pants, gloves and boots showing off her muscles... and the bulge between her leds that you're certain you'll be "attending" to sometime soon.<br>
<br>
A dominatrix attendant is waiting patiently, her outfit even less subtle about her purpose than <<=ps(setup.getNpcName("npc_gym_futa","first"))>> own... right down to the whip coiled at the discipline department employees hip. "@@.generic_female2;Lovely... and I must say, recruiting one of the Director's personal slaves is quite a bold move... though it makes my job easier,@@" the woman looks down at her tablet. "@@.generic_female2;<<=setup.getNpcName("npc_gym_futa","other_call")>>? Working with an executive-class <<if $fetish.sissy>>SISSI <</if>>slave such as this, we can be quite certain that any failure will be your own.@@"<br>
<br>
If the added pressure was getting to <<=setup.getNpcName("npc_gym_futa","first")>> she hides it well, merely nodding in acknowledgement. "@@.npc_gym_futa;I am confident in my abilities, what sort of demonstration would you prefer?@@"<br>
<br>
The interviewing dominatrix smiles ever so slightly, whether taking <<=ps(setup.getNpcName("npc_gym_futa","first"))>> confidence as a challenge... or just because the woman enjoys her job, you can't be certain.<br>
<br>
"@@.generic_female2;There is a process to follow. You may commence by leashing your chosen slave and following me. It is standard policy in the discipline department that all submissives must be restrained or on a leash escorted by a dominant. It helps prevent confusion.@@"<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> clips a leash to your collar and you fall in line.<br>
<br>
[<<moveTo "event_gym_futa_application_3" "Follow." 1800>>]
</div>/*#
#desc: npc_gym_futa starts interview
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_gym_futa") setup.charImage("npc_discipline","npc_discipline_assist")>>
<div id="invframe" class="scrolltext">
The dominatrix proctor leads the way through the discipline department... the vast dungeon filled with row after row of employees being "corrected" for their failures.<br>
<br>
You are focused on doing your part to aid <<=setup.getNpcName("npc_gym_futa","first")>>... but you notice her glancing to one side or the other as you walk past the occasionally particularly inventive predicament. From the way her grip tightens on your leash you're certain that her interest in joining the company has just ramped up even higher.<br>
<br>
After this brief "tour" across the main dungeon the proctor turns down an aisle, leading the way into one of the discipline department's many private punishment rooms. The heavy door closes behind you, silencing the chorus of pained cries, aroused moans and gag-muffled words. It is now just the three of you.<br>
<br>
The room is sparse, save for some attachment points on the ceiling, and a cabinet and a table on one side with some neatly coiled hanks of rope.<br>
<br>
The proctor starts by addressing you. "@@.generic_female2;Your clothes will not be required for your part in this test. Remove them.@@"<br>
<br>
You immediately begin stripping as commanded as the proctor turns sharply to face <<=setup.getNpcName("npc_gym_futa","first")>>. "@@.generic_female2;<<=setup.getNpcName("npc_gym_futa","other_call")>>. Your first test will be to demonstrate bondage abilities. While we employee a vast array of purpose-built devices to punish, discipline, or reward employees every discipline department dominatrix<<if !$options.fem_all_women>>, dominant,<</if>> or overseer must be capable of restraining an employee with nothing save simple regulation rope. You will have twenty minutes to suspend your chosen slave in a manner of your choosing, and then await further requirements. Your test officially begins... now.@@"<br>
<br>
[<<moveTo "event_gym_futa_application_4" "Get tied." 1100>>]
</div>/*#
#desc: npc_gym_futa ties you up
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'rope_harness'>>
<<wearItem 'rope_harness' true>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_gym_futa") setup.charImage("npc_discipline","npc_discipline_assist")>>
<div id="invframe" class="scrolltext">
You well know <<=ps(setup.getNpcName("npc_gym_futa","first"))>> skill with rope, and she gets to work swiftly, starting with a full-body harness to provide attachment options before running a few lines to the ceiling and casually hoisting you into the air. You can't help but gasp as the rope digs in ever-so-slightly as it takes up the weight of your body.<br>
<br>
The proctor watches <<=setup.getNpcName("npc_gym_futa","first")>> intently, making the occasional note on her tablet, but no comments. As you sway and slowly rotate in your suspension you spot both a digital timer ticking down... and cameras in each corner of the room. Your "scene" is certainly being recorded... and possibly observed by additional members of the discipline department.<br>
<br>
Though you hang suspended in the air, you are far from helpless, with your arms and legs dangling free, <<=setup.getNpcName("npc_gym_futa","first")>> immediately sets to work addressing that issue, binding your wrists and pulling them up into a snug, but not particularly stressful strappado, then following up by binding each leg separately into a hogtie, finishing off by giving your dangling head some additional support with ropes woven through your hair to hold your head up and facing forward.<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> has worked swiftly and without a moment's hesitation, leaving her a few minutes yet of her twenty minute allotment, and she takes the time to double check that nothing has shifted improperly as you moved and adjusted before spending the final minute adding a few additional wraps around your limbs for excessive security and a bit of artistic flair.<br>
<br>
The final dozen seconds tick down and <<=setup.getNpcName("npc_gym_futa","first")>> takes a parade rest position next to you.<br>
<br>
[<<moveTo "event_gym_futa_application_5" "Listen to what she has to say." 180>>]
</div>/*#
#desc: npc_gym_futa ties you up
#status: RELEASED 0.9.4.0
#ignore_spell: tsuri,gyaku,ebi
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_gym_futa") setup.charImage("npc_discipline","npc_discipline_assist")>>
<div id="invframe" class="scrolltext">
The picture of formality, the dominatrix proctor waits of the final second to tick away before nodding.<br>
<br>
"@@.generic_female2;Let it be noted that <<=setup.getNpcName("npc_gym_futa","other_call")>> has completed her task in the allotted time. Now, <<=setup.getNpcName("npc_gym_futa","other_call")>> if you would explain your choices in making this tie.@@"<br>
<br>
"@@.npc_gym_futa;Of course,@@" <<=setup.getNpcName("npc_gym_futa","first")>> replies, speaking formally. "@@.npc_gym_futa;I started with a traditional gyaku-ebi tsuri shibari harness, as it is secure, versatile, and comfortable for extended wear, spreading the load over the submissive's entire body. From there, suspension was a simple, while also making further ties more convenient. Not knowing how long the scene was to last, I opted for a position that would be sufficiently restrictive, but not overly challenging, while making sure every part of the submissive was supported to prevent strain. The hair tie serves double purpose to keep hair from getting in the way or proving bothersome, while also providing head and neck support and presenting the submissive's mouth for use, if required. Similarly, the legs are bound, but kept separated to both display the submissive, as well as make them readily available for use at that end.@@"<br>
<br>
The dominatrix proctor makes several notes, and you believe that she is impressed, even if she is playing things close to the chest and remaining quite formal and stoic. "@@.generic_female2;All reasonable decisions, in context.<<if $player.body.breastsize > 0>>... tell me, why did you not bind the subject's breasts?<</if>>@@"<br>
<br>
<<if $player.body.breastsize > 0>>
"@@.npc_gym_futa;Breast bondage, particularly in a hanging arrangement such as this, has a strict time-limit before it risks damage to the sub. Not knowing how long things were going to last, I opted to forgo such, but I can add it if you would like?@@"<br>
<br>
"@@.generic_female2;That will not be necessary at this time.@@" The proctor replies... though, again, you sense a hint of approval in her voice.<br>
<br>
<</if>>
"@@.generic_female2;Now that your submissive is suitable restrained, we may proceed to the main portion of the interview. I would ask you to begin penetrating the submissive, as you do so I will be both asking questions, and giving you additional commands. This will test your ability to balance multiple responsibilities at once, as well as adapt the scene on the fly.@@"<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> nods and turns you in air until you are facing her... or, rather, her crotch. Holding you steady with one hand, <<=setup.getNpcName("npc_gym_futa","first")>> pulls out her cock for you to suck...<br>
<br>
[<<moveTo "event_gym_futa_application_6" "Slurp, slurp. The real test begins..." 1800>>]
</div>/*#
#desc: npc_gym_futa has you blow her while she adjust ties
#status: RELEASED 0.9.4.0
#ignore_spell: tsuri,gyaku,ebi,ashikubi,skasha
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_gym_futa.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_gym_futa") setup.charImage("npc_discipline","npc_discipline_assist")>>
<div id="invframe" class="scrolltext">
Your personal ability to focus on the interview is significantly hampered by the fact that you're choking on a giant <<if $options.futanari>>futa cock<<else>>girl dick<</if>>... or getting that "levitating high speed rail" as <<=setup.getNpcName("npc_gym_futa","first")>> switches off between holes.<br>
<br>
From what you're able to catch, <<=setup.getNpcName("npc_gym_futa","first")>> seems to be doing well as the dominatrix proctor grills your well-hung friend on disciplinary techniques, everything from chastity to sensory deprivation, predicament bondage to orgasm overload, verbal abuse or encouragement to orgasm denial, corporal punishment to tickling and sensation play.<br>
<br>
In some instances <<=setup.getNpcName("npc_gym_futa","first")>> supplements her words with demonstrations... with you as the subject and your body is not just fucked, but slapped and teased, groped and gagged, called everything from a "@@.npc_gym_futa;good <<if $fetish.sissy>>sissy<<else>>girl<</if>>@@" to "@@.npc_gym_futa;a worthless excuse for a <<if $fetish.sissy>>SISSI <</if>>employee.@@"<br>
<br>
Your bondage, too, shifts position as the proctor will, seemingly at random, call out for a different sort of suspension, requiring <<=setup.getNpcName("npc_gym_futa","first")>> to quickly re-tie you in everything from a flexibility-straining and stressful kata-ashi age tsuri shibari to an elegantly floating skasha ashikubi tsuri shibari... the questions never stopping even as flips you around to tie and re-tie.<br>
<br>
[<<moveTo "event_gym_futa_application_7" "This is one hell of an interview..." 1800>>]
</div>/*#
#desc: npc_gym_futa finishes test
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'ring_gag'>>
<<wearItem 'ring_gag' true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_gym_futa") setup.charImage("npc_discipline","npc_discipline_assist")>>
<div id="invframe" class="scrolltext">
You've quite lost track of time, your varying positions meaning you're only occasionally able to see the clock... and that's when your sight-line isn't fully taking up by <<=setup.getNpcName("npc_gym_futa","first")>> face-fucking you.<br>
<br>
As you start to wonder if this is an interview or a full-on dissertation the dominatrix proctor announces what you assume is the final stage of the trial.<br>
<br>
"@@.generic_female2;As a final test we would like to see the limits of your stamina. From your appearance and background we understand that you are more than familiar with the gym... now is the time to show it. For the remainder of our time I expect you to fuck your submissive as hard as you can... while also whipping her and keeping her shy of orgasm. When instructed you will ruin the submissive, action that will be timed.@@"<br>
<br>
<<=setup.getNpcName("npc_gym_futa","first")>> is fully focused on the scene at hand, nodding in understanding as she makes a few adjustments to your bondage to put you in the optimal position for this final portion.<br>
<br>
Moments later and you are moaning desperately around a gag, thick <<if $options.futanari>>futa cock<<else>>girl dick<</if>> pounding into you as you swing in the air<<if $player.body.breastsize > 0>>, your once neglected breasts now tightly bound, sending waves of sensation through your body with every swing and sway<</if>>.<br>
<br>
Joining your moans are the sharp crack of a short whip lashing your exposed flesh, <<=setup.getNpcName("npc_gym_futa","first")>> breathing fast in determination as she pushes you towards orgasm... and then cuts you off, the occasional ruins mandated by the dominatrix proctor even more intense as your entire body will shudder in the air as the agonisingly unsatisfying pleasure courses through you... only to be re-joined moments later with <<=ps(setup.getNpcName("npc_gym_futa","first"))>> thick <<if $options.futanari>>futa cock<<else>>girl dick<</if>> slamming back into you, forcing you right back to the peak of a wave that never crests.<br>
<br>
Overwhelmed, as opposed to your earlier confusion you descend into sub-space, returning to reality only as you hear the distant sound of the dominatrix proctor announcing "@@.generic_female2;that will mark the end of your test.@@"<br>
<br>
[<<moveTo "event_gym_futa_application_8" "It's finally over?" 600>>]
</div>/*#
#desc: npc_gym_futa aftercare
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_gym_futa") setup.charImage("npc_discipline","npc_discipline_assist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_gym_futa","first")>> steps away, leaving you hanging limp and panting, slowly returning to reality with your first thought that <<=setup.getNpcName("npc_gym_futa","first")>> never came... a realisation confirmed at a glance by her still rock-hard cock, still dripping with your juices.<br>
<br>
"@@.npc_gym_futa;Thank you for your time,@@" <<=setup.getNpcName("npc_gym_futa","first")>> states with a polite nod of her head. "@@.npc_gym_futa;May I have some time for after-care before my assistant is to return to work?@@"<br>
<br>
The faintest flicker of a smile appears on the dominatrix proctor's face as you conclude that she may have been setting a bit of a trap lying about the test being over. "@@.generic_female2;Of course. You have the room for another twenty minutes, I will return to escort you out afterwards.@@"<br>
<br>
The dominatrix proctor leaves and you hear the door lock behind her, <<=setup.getNpcName("npc_gym_futa","first")>> immediately removing your gag and commencing to untie your restraints.<br>
<br>
[<<moveTo "event_gym_futa_application_9" "Beg to finish her off first." 1600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_gym_futa_application_9" "Remain quiet as she works." 1600 "<<set $scene.suck=false>>">>]
</div>/*#
#desc: npc_gym_futa helps dress
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<removeItem 'rope_harness' true>>
<<deleteItem 'rope_harness'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_gym_futa") setup.charImage("npc_discipline","npc_discipline_assist")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
Drooling and panting you beg <<=setup.getNpcName("npc_gym_futa","first")>> to let you finish her off... but she merely smiles and tells you to wait as she
<<else>>
You take the moment of stillness to try and catch your breath as <<=setup.getNpcName("npc_gym_futa","first")>>
<</if>>
continues to work at your knots.<br>
<br>
Further proving her shibari skills, <<=setup.getNpcName("npc_gym_futa","first")>> has you back on your feet in less than a minute... only to pick you up herself, her lips meeting yours as she whispers "@@.npc_gym_futa;Thanks for the help... you were perfect... and now, some PROPER satisfaction.@@"<br>
<br>
You slide down onto <<=ps(setup.getNpcName("npc_gym_futa","first"))>> cock with a deep moan, your arms and legs wrapping around her body as she presses you against a wall and starts to fuck and make out. Distantly, you are certain the cameras continue to roll... but this isn't about putting on a show, this is about a moment of cathartic pleasure, <<=setup.getNpcName("npc_gym_futa","first")>> as focused on giving you a long-denied, pure orgasm as she is in getting relief of her own.<br>
<br>
In mere minutes the two of you cum in unison lips and hips locked together in passion as you are granted proper satisfaction after so many ruins... and <<=setup.getNpcName("npc_gym_futa","first")>> enjoys an explosive reward in culmination of her own high-intensity efforts.<br>
<br>
Your legs go limp, though your toes do not quite touch the ground as <<=setup.getNpcName("npc_gym_futa","first")>> continues to support your weight, the two of you hanging there for a moment, panting as the after-shocks of orgasm fade and <<=setup.getNpcName("npc_gym_futa","first")>> finally gently places you down.<br>
<br>
"@@.npc_gym_futa;Thanks... again for the help and also for... THAT.@@" She states, both of you glowing still in the aftermath of the torrential shared climax.<br>
<br>
You nod, as <<=setup.getNpcName("npc_gym_futa","first")>> locates your pile of clothes and helps you dress, the two of you finishing up and <<=setup.getNpcName("npc_gym_futa","first")>> takeing the remaining time to help fix your hair, the feeling of the brush running over your head a soothing, relaxing contrast to the prior far more intense sensations.<br>
<br>
[<<moveTo "event_gym_futa_application_10" "There is a knock on the door." 200 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: npc_gym_futa finishes interview
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem 'leash_black'>>
<<set _nextDate = setup.setNextDate($now, 5, 0, 0)>>
<<addWorkEvent 'gym_futa_reference' _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_gym_futa") setup.charImage("npc_discipline","npc_discipline_assist")>>
<div id="invframe" class="scrolltext">
Sharply on time the dominatrix proctor knocks returns, this time thanking <<=setup.getNpcName("npc_gym_futa","first")>> for her time... and congratulating her on advancing to the next stage of the interview process.<br>
<br>
"@@.npc_gym_futa;Next stage?@@" <<=setup.getNpcName("npc_gym_futa","first")>> asks, excitement in her voice putting the exertion of the last hour temporarily out of mind.<br>
<br>
"@@.generic_female2;Yes, we will remain in touch as necessary, but there are additional process and procedures to be followed on our end. A position in the employee discipline department is a very high impact one, so our standards are very high. The majority of hires come via internal transfers or promotions... but you have impressed enough to overcome the disadvantage of your outsider status... still, there remains more confirmation to perform before we will consider extending an offer.@@"<br>
<br>
You can tell that <<=setup.getNpcName("npc_gym_futa","first")>> is feeling mixed emotions at the confirmation of her skills being combined with remaining ambiguity.<br>
<br>
"@@.npc_gym_futa;Well... I look forward to hearing back,@@" <<=setup.getNpcName("npc_gym_futa","first")>> states as the three of you make your way back through the main discipline department dungeon... and it's constant sea of "subjects." "@@.npc_gym_futa;Everything today has only heightened my interest in the job, so whatever I can do to prove myself, just let me know.@@"<br>
<br>
Again the dominatrix proctor smiles, but says no more as she leads the two of you back to the elevator, dismissing you on your floor before continuing down to the lobby with <<=setup.getNpcName("npc_gym_futa","first")>>.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<removeItem 'leash_black' true>><<deleteItem 'leash_black'>><<completeWorkEvent>>">>]
</div>/*#
#desc: npc_gym_futa checkin about application
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.futaPresent = false>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_gym_futa")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_gym_futa","first")>> about the job with your company.<br>
<br>
"@@.npc_gym_futa;So... I'm actually still waiting to hear back. I mean, the vibes there were good, right? And they say no news is good news... but the couple times I've reached out they just say they're "reviewing" my application.@@" You can tell she's a bit anxious about the whole thing and you try to reassure her that, if it was a no, your company would have come back quick, and that it's probably just bureaucratic stuff.<br>
<br>
"@@.npc_gym_futa;Yeah... I hope your right. I mean, I was interested in the job before, but after that interview? Well, it went from "change of pace" to "holy shit, dream position" the literal textbook definition of looking forward to Monday over Friday, well, for me.@@" She laughs in amusement. "@@.npc_gym_futa;So... yeah, fingers crossed. But that's me, what were you thinking of for today?@@"<br>
<br>
<<include "gymFutaLessonRepeatChoice">>
</div>/*#
#desc: summoned for npc_gym_futa reference
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're working when you get a summons from <<=setup.getNpcName("npc_discipline","formal")>> instructing you to report to her employee discipline department.<br>
<br>
<<printThought "Huh, that's odd, I haven't done anything wrong, and usually <<=setup.getNpcName('npc_manager','formal')>> would be the one assigning punishment... wait, maybe this has something to do with <<=setup.getNpcName('npc_gym_futa','first')>>?">><br>
<br>
[<<moveTo "event_gym_futa_reference_2" "Head down to the Discipline Department." 300>>]
</div>/*#
#desc: npc_gym_futa prepared for reference interview
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.swapPlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['ems'])>>
<<if $scene.swapPlug>>
<<addItem 'school_plug'>>
<<wearItem 'school_plug' true>>
<</if>>
<<addItem "ball_gag_red">>
<<wearItem 'ball_gag_red' true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png">>
<div id="invframe" class="scrolltext">
You ride the elevator to the employee discipline department where one of the dommes on duty gags you, clips a leash to your collar, and leads you into a private room. Working with efficient authority, the domme silently <<if $scene.swapPlug>>swaps your plug<<else>>slides a plug into your rear<</if>> and straps you to a chair, following up by hooking up several electrodes as you recognise what must be some sort of lie detector system.<br>
<br>
Finishing up the domme nods curtly and departs, leaving you to sit in silence for several minutes as you continue to wonder what's going on.<br>
<br>
[<<moveTo "event_gym_futa_reference_3" "You hear someone at the door..." 120>>]
</div>/*#
#desc: npc_gym_futa npc_discipline interrogates you
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_discipline","formal")>> sweeps into the room with a smile. "@@.npc_discipline;Apologies for the delay but there was a... problem employee who required a bit more of my personal attention. Keeping this department running at such high capacity is quite the challenge, and it only works if everyone is in alignment. Who watches the watchmen and all and that translates to me needing to take swift and decisive action when any of my employees slips so that the disciplinarians never forget that they are not private tyrants, but their own type of servant ensuring the company runs smoothly.@@"<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> takes a seat in front of you, swinging a screen and a control panel into reach as she nods to you. "@@.npc_discipline;That brings us where we are today. With the cost in time and productivity incurred when any of my dommes make a punishment-worthy mistake... and my personal belief that all rules must be adhered to and enforced to the letter... well... my standards for hiring are even higher, in spite of the expanded company need.@@"<br>
<br>
<<printThought "Okay, this is definitely about <<=setup.getNpcName('npc_gym_futa','first')>>.">><br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> smiles, "@@.npc_discipline;I can see on your face that you have made the connection, yes, this is about <<=setup.getNpcName('npc_gym_futa','other_call')>> who you referred to us and who, I do not think it is any great surprise to reveal, did an excellent job with her in-person interview. There was a time when that would be enough for an offer, with any subsequent training being easily handled on an ongoing basis but now? Well, I need to be a bit more sure before I risk a situation where a new hire ends up slowly productivity, yes? So, since you recommended <<=setup.getNpcName('npc_gym_futa','other_call')>>, and have extensive personal experience with her... I have a few reference questions about her.@@"<br>
<br>
[<<moveTo "event_gym_futa_reference_4" "Nod in understanding." 120>>]
</div>/*#
#desc: npc_gym_futa npc_discipline asks calibration
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.lie_count = 0>>
<<removeItem 'ball_gag_red' true>>
<<deleteItem "ball_gag_red">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
You nod and <<=setup.getNpcName("npc_discipline","formal")>> reaches out to remove your gag.<br>
<br>
"@@.npc_discipline;We will start with a quick calibration. Note that in addition to alerting me to any falsehoods, the system will punish you as well. Now, please state your full name and the department in which you work.@@"<br>
<br>
[<<moveTo "event_gym_futa_reference_5" '<<=$player.first_name>> <<=$player.last_name>>, you work in the Human Resources department under <<=setup.getNpcName("npc_manager","formal")>>.' 60 "<<set $scene.lie_1=false>>">>]<br>
[<<moveTo "event_gym_futa_reference_5" "<<=$player.original_first_name>> <<=$player.original_last_name>>. You work as a data-management specialist for Cloud Data Services." 60 "<<set $scene.lie_1=true>>">>]
</div>/*#
#desc: npc_gym_futa npc_discipline respond to calibration question
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie_1>>
<<set $scene.lie_count++>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.lie_1>>
"@@.pc;<<=$player.original_first_name>> <<=$player.original_last_name>>. I work as a data-management specialist for Cloud Data Services.@@" No sooner have the words passed your lips when the plug in your rear punishes you with a powerful jolt of electricity. You thrash in pain as you catch sight of one of the graphs on the read-out spiking and a "lie" light turning on.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> sniffs in amusement and makes a couple slight adjustments to the machine. "@@.npc_discipline;Not the most pleasant way to calibrate... but sufficient for our purposes. I would prefer, and recommend, that you stick with the truth going forward... though I can certainly gather data from your lies, as well.@@"
<<else>>
"@@.pc;<<=$player.first_name>> <<=$player.last_name>>, I work in the Human Resources department under <<=setup.getNpcName("npc_manager","formal")>>.@@"<br>
<br>
You finish talking and have a little gasp of pleasure as the plug in your rear buzzes in pleasant stimulation.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> nods and makes a couple slight adjustments to the machine. "@@.npc_discipline;Very good, as you just saw truth is rewarded. In turn, falsehoods will be punished. I would advise honesty going forward... though I can gather data from your lies, as well.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_discipline","formal")>> splits her attention between looking at you, and the machine as she continues. "@@.npc_discipline;Now, tell me how you came to be acquainted with <<=setup.getNpcName("npc_gym_futa","other_call")>>.@@"<br>
<br>
[<<moveTo "event_gym_futa_reference_6" "You met her at the Hard Pump gym." 60 "<<set $scene.lie_2=false>>">>]<br>
[<<moveTo "event_gym_futa_reference_6" "You met her at the <<printShopName 'sex_club'>> fetish club." 60 "<<set $scene.lie_2=true>>">>]
</div>/*#
#desc: npc_gym_futa npc_discipline respond to how you met
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie_2>>
<<set $scene.lie_count++>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.lie_2>>
You state that you met <<=setup.getNpcName("npc_gym_futa","first")>> at the <<printShopName 'sex_club'>> fetish club... and are shocked for your lies.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> makes a note. "@@.npc_discipline;Interesting... by referencing the <<printShopName 'sex_club'>> I presume you are seeking to polish your friend's resume? Of course company tracking alone would prove your lie, even if you hadn't pinged the machine. The... quite thorough tracking you have been under for your sensitive position has actually been beneficial in expediting some of <<=setup.getNpcName("npc_gym_futa","first")>> verification.@@"<br>
<br>
<<printThought "Oh, right... the company does do that...">><br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> looks at you as you catch your breath from the punishment. "@@.npc_discipline;Again, I advise honesty... but I suppose there is a sense in which your words speak to your faith in <<=ps(setup.getNpcName("npc_gym_futa","other_call"))>> skills in regards to my department... after all, you, of all people, must be able to imagine the personal, as well as professional, consequences if your reference leads to a hire that... fails to work out.@@"<br>
<br>
You gulp nervously, <<printThought "Crap, I hadn't thought about it from that angle...">>
<<else>>
You explain how <<=setup.getNpcName("npc_gym_futa","first")>> works at the Hard Pump gym as a personal trainer and then go on to explain some of the "company-adjacent" techniques that she uses to keep her clients in line.<br>
<br>
You are rewarded with <<if $scene.lie_count>>a welcome<<else>>another<</if>> buzz of pleasure.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> makes a note and nods. "@@.npc_discipline;That is consistent with our records, and her resume. Very good. Some people think that you need a background in being a pro-domme to work in my department and, even now, that is quite untrue. While prior experience and skill are useful... and certainly, <<=setup.getNpcName("npc_gym_futa","other_call")>> proved in her in-person interview that she has enough of both to walk in as a senior domme, skills are for more trainable than attitude, temperament and empathy... all three of which can come up in all manner of prior positions.@@"
<</if>>
<br><br>
"@@.npc_discipline;Now, how would you summarise <<=ps(setup.getNpcName("npc_gym_futa","other_call"))>> skills as a domme, and as a trainer?@@"<br>
<br>
[<<moveTo "event_gym_futa_reference_7" "She's the best you've ever worked with." 60 "<<set $scene.lie_3=true>><<set $scene.exaggerate=true>>">>]<br>
[<<moveTo "event_gym_futa_reference_7" "She's great!" 60 "<<set $scene.lie_3=false>>">>]<br>
[<<moveTo "event_gym_futa_reference_7" "She's not very good." 60 "<<set $scene.lie_3=true>><<set $scene.exaggerate=false>>">>]
</div>/*#
#desc: npc_gym_futa npc_discipline respond to npc_gym_futa quality
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie_3>>
<<set $scene.lie_count++>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.lie_3>>
<<if $scene.exaggerate>>
You start to gush about how <<=setup.getNpcName("npc_gym_futa","first")>> is the best domme you've ever worked for, that she's a real slave-driver who can push a sub to superhuman feats... only to be cut-off by the plug shocking you <<if $scene.lie_count > 2>>yet again<<elseif $scene.lie_count == 1>>again<<else>>harshly<</if>>.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> shakes her head. "@@.npc_discipline;You work DIRECTLY under <<=setup.getNpcName("npc_manager","formal")>>, so any claim that someone else is the best domme you've ever met is... immediately suspect. And the rest? Well... that sounds more like porn than real life. I understand that you wish to up your friend but in such matters I always advise honesty as being the best policy.@@"
<<else>>
You start to deride <<=ps(setup.getNpcName("npc_gym_futa","first"))>> abilities as a domme only to get brutally cut off by <<if $scene.lie_count > 2>>yet another<<elseif $scene.lie_count == 1>>another<<else>>a<</if>> painfully harsh shock.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> gives you a moment to catch your breath and then sighs. "@@.npc_discipline;Why would you lie to make your friend sound worse? Especially when you were literally there for her in-person interview... very strange.@@"
<</if>>
<<else>>
You talk about <<=ps(setup.getNpcName("npc_gym_futa","first"))>> skills, recounting some of your sessions with her at the gym and how she blended authority, pain, encouragement, and dominance to push you to new heights of performance.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> smiles. "@@.npc_discipline;Wonderful. Obviously we have the data-point of her in-person interview... but interviews are a fickle thing, knowing that she can sustain that level of excellence over time, well... that is exactly what I am looking for.@@"
<</if>>
<br><br>
"@@.npc_discipline;And how about <<=ps(setup.getNpcName("npc_gym_futa","first"))>> skills at after-care?@@"<br>
<br>
[<<moveTo "event_gym_futa_reference_8" "She is empathetic and tender as well as domineering." 60 "<<set $scene.lie_4=false>>">>]<br>
[<<moveTo "event_gym_futa_reference_8" "She considers after-care a sign of weakness." 60 "<<set $scene.lie_4=true>>">>]
</div>/*#
#desc: npc_gym_futa npc_discipline explain aftercare philosophy
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie_4>>
<<set $scene.lie_count++>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.lie_4>>
You lie and state that <<=setup.getNpcName("npc_gym_futa","first")>> considers after-care weakness. <<if $scene.lie_count > 2>>Once again<<elseif $scene.lie_count == 1>>Again<<else>>The plug in your ass<</if>> harshly punished for your deceit.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> shakes her head. "@@.npc_discipline;Are you such a pain-slut that you are mapping a personal preference? Well, no matter, in this case the lie is as informative as the truth to confirm that <<=setup.getNpcName("npc_gym_futa","other_call")>> is skilled at after-care, which, despite what... certain people at this company may believe,@@" <<=setup.getNpcName("npc_discipline","formal")>> states in annoyance, presumably aimed at <<=setup.getNpcName("npc_discipline","formal")>><<if $npc_manager.flags.cruel>> and your cruel <</if>> "@@.npc_discipline;to me that is more than a point in her favour, but a requirement of the position. Pure sadism is simple but, in the long-term, ineffective for managing employees.@@"
<<else>>
You talk about <<=ps(setup.getNpcName("npc_gym_futa","first"))>> capacity to be tender... and how it was actually a part of her interest in this position.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> waits for you to enjoy your burst of pleasure before commanding simply. "@@.npc_discipline;Explain.@@"<br>
<br>
You go into more detail about <<=setup.getNpcName("npc_gym_futa","first")>> being frustrated at transitory domme work and wanting to have the power to take a more holistic, long-term interest in her subs. "@@.npc_discipline;Wonderful. The human touch is such an important, and under-appreciated, part of our department. If it was just about administering punishment we could use a machine, but the goal is not to punish, but to correct, to train, and to grow a happier, more efficient employee.@@"
<</if>>
<br><br>
"@@.npc_discipline;Final question.@@" <<=setup.getNpcName("npc_discipline","formal")>> states after you have had a moment to catch your breath. "@@.npc_discipline;Would you recommend <<=setup.getNpcName("npc_gym_futa","first")>> for work at the company... and would you feel confident if you were assigned to her after being sent for discipline?@@"<br>
<br>
[<<moveTo "event_gym_futa_reference_9" "Yes." 300 "<<set $scene.lie_5=false>>">>]<br>
[<<moveTo "event_gym_futa_reference_9" "No." 300 "<<set $scene.lie_5=true>>">>]
</div>/*#
#desc: npc_gym_futa npc_discipline would you recommend
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie_5>>
<<set $scene.lie_count++>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.lie_5>>
You state that you do not think that <<=setup.getNpcName("npc_gym_futa","first")>> would be a good fit for the company... and you are punished harshly, painful shocks having you struggle against your restraints for several seconds before going limp and panting, feeling like your ass has just been fried from the inside out.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> sniffs in annoyance. "@@.npc_discipline;Having second thoughs about the company and trying to sabotage <<=setup.getNpcName("npc_gym_futa","other_call")>> at the last moment? While I understand the concerns the machine just confirmed that she WOULD be a superb asset to the firm. I am sorry if you have mixed feelings about things but... I must do what is best for my department, and the company.@@"<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> looks at you with obviously mixed feelings. "@@.npc_discipline;I will promise to do what I can to keep her employment here a positive one, and who knows, maybe the... concerns you have about management may be resolved in the future.@@"
<<else>>
You heartily recommend <<=setup.getNpcName("npc_gym_futa","first")>> and stat that she would be a superb asset to the company. You moan as you are rewarded for your honesty... with <<=setup.getNpcName("npc_discipline","formal")>> leaving the stimulator on until you shudder with a small, but satisfying, analgasm.<br>
<br>
"@@.npc_discipline;Obviously your response does not come as a surprise... but positive re-confirmation is still valuable.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_discipline","formal")>> rises to her feet.
<<switch $scene.lie_count>>
<<case 0>>
"@@.npc_discipline;Thank you for your honesty. It has really helped fill in the details about <<=setup.getNpcName("npc_gym_futa","other_call")>> and we will be extending an offer to her shortly.@@"
<<case 1>>
"@@.npc_discipline;Thank you for your overall honesty... I confess that I am quite confused that you deviated the once... but the combination of data was exactly what I needed to confirm my decision and we will be extending an offer to <<=setup.getNpcName("npc_gym_futa","other_call")>> shortly.@@"
<<case 2 3>>
"@@.npc_discipline;Thank you for your time... if not your honesty. Fortunately, even with the occasional lie you gave me enought data to confirm my decision. We will be extending an offer to <<=setup.getNpcName("npc_gym_futa","other_call")>> shortly.@@"
<<case 4>>
"@@.npc_discipline;Thank you for your time... if not your honesty. Fortunately, even with the preponderance of lies you gave me enought data to confirm my decision. We will be extending an offer to <<=setup.getNpcName("npc_gym_futa","other_call")>> shortly.@@"
<<case 5>>
"@@.npc_discipline;Thank you for your time... if not your honesty. A part of me wants to report your total lack of veracity to <<=setup.getNpcName("npc_manager","formal")>>... but such would betray the confidence of the referral process. I will, instead, merely advise you to better consider your words in the future... if your punishment did not prove sufficient to that effect.@@"
<<default>>
ERROR: unexpected scene.lie_count <<=$scene.lie_count>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_discipline","formal")>> collects her things and nods. "@@.npc_discipline;That will be all, thank you for your time. One of my assistants will be in shortly to release you and return you to your normal duties.@@"<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> leaves. A minute or two later one of the department dommes removes your restraints and escorts you out of the discipline department<<if $scene.swapPlug>>, plug still in your rear<</if>>.<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName("npc_gym_futa","first") + " content">>
<<include "futureContentBoilerplate">><br>
<br>
[<<moveTo $scene.workEventReturn "Return to your office and get back to work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: gym women's locker-room
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.lockerroom="female">>
<<set $scene.breasts = setup.calcBreastSize()>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<<set $scene.origPants = setup.getItemFromType("legwear")>>
<<set $scene.fit_bimbo = $npc_fit_bimbo.stage == 0 && setup.getTotalValue("heels") > 5 && setup.getTotalValue("feminization") > 10>>
<<if $scene.fit_bimbo>>
<<set $npc_fit_bimbo.profile = true>>
<<if setup.getCurrentMakeup() == "ultimatebimbo" && ($scene.breasts == 'large' || $scene.breasts == 'massive')>>
<<set $npc_fit_bimbo.stage = 1>>
<</if>>
<</if>>
<<if $npc_swolebro.stage >= 2 && $npc_swolebro.fem && random(1,10) > 6>>
<<set $scene.lockerroomFriend = "swole">>
<<elseif $npc_fit_bimbo.stage >= 2>>
<<set $scene.lockerroomFriend = "bimbo">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<include calcGymAttire>>
<<set $scene.changed = ($scene.origPants != setup.getItemFromType("legwear"))>>
<<set $scene.meetSwoleBro = ($npc_swolebro.stage == 0 && $scene.changed && setup.checkItemTypeWorn("cage") && $npc_swolebro.fem)>>
<<if $scene.meetSwoleBro>>
<<set $npc_swolebro.stage = 1>>
<<set $npc_swolebro.profile = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fit_bimbo>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_fit_bimbo")>>
<<elseif $scene.meetSwoleBro>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_swolebro")>>
<<else>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<</if>>
<div id="invframe" class="scrolltext">
There's a sign on your way into the locker-room reminding you that you must wear proper gym attire to use the facilities.<br>
<br>
<<if $scene.meetSwoleBro>>
You're in the process of changing when a large, amazon built woman walks up and greets you with a smile.<br>
<br>
"@@.npc_swolebro;So, when's your comp?@@"<br>
<br>
You have no idea what she's talking about, looking back with confusion.<br>
<br>
"@@.npc_swolebro;Oh, sorry, I just saw your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> and figured you were on enforced celibacy to help prepare for a competition — sex robbing you of nutrients and thus gains, y'know.@@"<br>
<br>
Now you're confused AND embarrassed, your look of shock causing her to quickly pivot.<br>
<br>
"@@.npc_swolebro;Nah, it's cool, a lot of the girls wear one from time to time. Hey Catherine!@@" she calls out, an even larger woman on her way out of the shower looking over, a towel wrapped under her arms with a bit of cleavage peeking out above. "@@.npc_swolebro;You still locked up?@@"<br>
<br>
"@@.generic_male1;You know it, girl! Got a shoot next week, gotta get those results, keep it all inside, not leak those gainz!@@"<br>
<br>
Your jaw almost drops as the woman loosens her towel revealing a very large <<getWordPenis false>> that looks like some sort of primal beast inside a heavy steel cage.<br>
<br>
"@@.npc_swolebro;See, totally normal, if you're wearing it for some other reason that's cool too, but, well, y'know, I just assumed.@@" There is a bit of awkward silence before the woman continues. "@@.npc_swolebro;Hey, tell you what — since you're pretty new to working out why don't you join us sometime? There's a whole group of us that train most days, just roll on up and say <<=setup.getNpcName('npc_swolebro', 'first')>> sent you and they'll let you work in and give you the realtalk advice, full on brophessor shit, you get me? Anyway, I gotta hit the showers, you think on it.@@"<br>
<br>
Somehow you find your voice long enough to thank her for the offer and she walks away with a smile, giving Catherine a loud slap on the ass before disappearing into the steam of the showers.<br>
<br>
<<printThought "That was weird, but, I mean, she seemed friendly, and I probably could use the help if I want to get in better shape.">><br>
<br>
You can't help but glance at Catherine as she finishes changing into street clothes and heads out. Other than being a near perfectly muscled amazonian specimen, she looks utterly normal, and you find yourself already doubting your own memory of seeing her locked and caged.
<<elseif $scene.fit_bimbo>>
<<if setup.getCurrentMakeup() == "ultimatebimbo" && ($scene.breasts == 'large' || $scene.breasts == 'massive')>>
You're focused on your own affairs when a pair of drop-dead gorgeous blondes in matching skimpy pink outfits and heels, oddly enough, walk up to you.<br>
<br>
"@@.generic_female1;So, like, we're on our way to class when we saw you and... like damn girlfriend you look hot!@@" The first girl gushes<br>
<br>
"@@.npc_fit_bimbo;Seriously! I was just telling my friend that you would be perfect for our private workout group!@@"<br>
<br>
"@@.generic_female1;She totally was! Anyway, we have a private room reserved in the back of the gym running special classes all the time you totally need to join, you'll, like, love it for sure!@@"<br>
<br>
"@@.npc_fit_bimbo;Yeah! Plus, it's like the best, most functional workout you can get.@@"<br>
<br>
You thank them for the offer as they insist on sharing a hug, their large breasts pressing against your own, as you swear you felt something pressed against your leg with the second one, before they head out into the main gym area, still wearing high heels.<br>
<br>
<<printThought "That was weird, though maybe I could check the class out sometime?">>
<<elseif setup.getCurrentMakeup() == "ultimatebimbo">>
You're focused on your stuff when a buxom blonde happens by, chewing pink bubblegum as she talks to you. "@@.npc_fit_bimbo;Hey, like, I just wanted to say that your makeup is totally on fleek but, like... that's only part of the equation!@@"<br>
<br>
<<if setup.calcBreastSize() != 'none'>>
"@@.npc_fit_bimbo;Your boobs are, like, WAY too small. I guess maybe you're afraid they'll be challenging to handle but, like trust me it's TOTALLY worth it and as soon as you get the work done you'll only wish you'd upgraded sooner.@@"
<<else>>
"@@.npc_fit_bimbo;I mean, no offense, but you're so flat! They say <<guy>>s want a pretty face, but it don't mean much without something to squeeze! Trust me, once you get some work done your only regret will be not going bigger sooner!@@"
<</if>>
<br>
You mumble some sort of thanks for the compliment, but she has already moved on.
<<elseif $scene.breasts != 'none'>>
<<if $scene.breasts == 'small'>>
You're focused on your stuff when a gorgeous blonde walks past chatting with one of her friends.<br>
<br>
"@@.npc_fit_bimbo;Kind of cute, but she really needs some more work done!@@"<br>
<br>
"@@.generic_female1;Like, for real! She may have a cute butt, but ain't never going to attract <<if $options.fem>>someone<<else>>a man<</if>> without a bit more up top!@@"<br>
<br>
You blush in embarrassment as you glance around and realise they must have been talking about you.
<<else>>
You're focused on your stuff when a buxom blonde happens by, chewing pink bubblegum as she talks to you. "@@.npc_fit_bimbo;Hey, like, I just wanted to say your tits are looking good! Your doctor is, like, an artist, but you need to compliment it with more makeup, that would be, like, WOW.@@"<br>
<br>
You mumble some sort of thanks for the compliment, but she has already moved on.
<</if>>
<<else>>
You're a bit stunned at the raw beauty on display in the women's locker-room, careful not to stare at the half, or less, clothed women attending to business.<br>
<br>
<<if setup.getTotalValue("feminization") < 10 || setup.analyzeWornTags(['female','male','unisex']) == "male">>
You feel a bit out of place using the women's locker room, but nobody seems to really pay attention to you.
<</if>>
<br><br>
Though you're trying to keep focused on your things, you can't help but notice a small clique of women. Compression clothing barely containing huge breasts and sculpted bodies they remind you a bit of plastic sex-dolls, their perfect, slutty makeup and vapid chatter setting them apart from the other, more athletically focused women.
<</if>>
<<elseif $player.sec_style.clothing.purge != "" && !setup.inventorySlotTags('shoes', ['gym']) && !$scene.hasOwnProperty('sniff')>>
<<if setup.ownSlotTags('shoes', ['gym'])>>
<<printThought "Oh no, I forgot my gym shoes at home!">>
<<else>>
<<switch $player.sec_style.clothing.purge>>
<<case 'voluntary' 'enthusiast'>>
<<printThought "Oh no, in getting rid of all my male clothes I don't have any gym-appropriate shoes!">>
<<case 'obedient'>>
<<printThought "Oh no, now that <<=setup.getNpcName('npc_manager','formal')>> helped me get rid of all my male clothes I don't have any shoes appropriate for the gym!">>
<<case 'forced' 'strict'>>
<<printThought "Oh no, now that <<=setup.getNpcName('npc_manager','formal')>> forced me to get rid of all my male clothes I don't have any shoes appropriate for the gym!">>
<<case 'money'>>
<<printThought "Oh no, now that I donated all of all my male clothes I don't have any shoes appropriate for the gym!">>
<</switch>>
<</if>>
<br><br>
You sigh, which attracts the attention of a woman from the other side of the locker-room.<br>
<br>
"@@.generic_female1;Hey, what's the matter? You're cute, you're about to work out... what could have you down?@@"<br>
<br>
[<<moveTo "room_gym_shoes_1" "Look up." 60>>]<br>
<<else>>
/* TODO: random locker-room events here... */
You can't help but be a little distracted by all the strong, feminine beauty on display in the locker-room.
<<if $scene.lockerroomFriend == "swole">>
One of your bodybuilding friends gives you a friendly fist-bump as she makes her way past.
<<elseif $scene.lockerroomFriend == "bimbo">>
One of your bimbo friends waves and smiles at you in greeting before turning back to the mirror to continue working on her makeup.
<<else>>
You keep your head down so as not to draw attention to yourself.
<</if>>
<<if setup.getTotalValue("feminization") < 10 || setup.analyzeWornTags(['female','male','unisex']) == "male">>
<br><br>
You feel a bit out of place using the women's locker room, but nobody appears bothered by your presence.
<</if>>
<</if>>
<br><br>
<<if $scene.gymAttire>>
[<<moveTo "room_gym_main" "Head into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<elseif $scene.gymBraOnly>>
<<if $scene.gymCanBraOnly>>
[<<moveTo "room_gym_main" "Head into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to work out wearing only a sportsbra.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are inappropriately attired for the gym, you need to be wearing a workout top, pants and shoes to meet the gym's dress code.@@]<br>
<<if $options.ezchange && setup.getClothingSetIndex('Workout Clothes') != -1>>
[<<moveTo "room_gym_lockerroom_women_pre" "Change into your gym clothes." 180 "<<set _setId = setup.getClothingSetIndex('Workout Clothes')>><<useClothSet _setId>>">>]<br>
<</if>>
<</if>>
<<if setup.checkOutsideDecency() || (
setup.analyzeWornTags(['unisex','male','female']) == 'male' && setup.getTotalValue("feminization") < 5)>>
[<<moveTo "room_gym_lobby" "Go back to the lobby." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the gym.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: gym women's locker-room after workout
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 0>>
<<set $scene.lockerroommale = false>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<include "calcGymAttire">>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.exercise == 0>>
You aren't quite certain why you showed up to the gym and didn't bother to exercise, but that's how it goes as you start packing up your things. On the upside, at least you didn't build up a sweat!<<if $player.makeup.template != "">> Still, you take a moment to touch up your makeup.<</if>>
<<elseif $player.timebased.dirty < 10>>
All the sweat of your workout has been nicely washed away by your shower<<if $player.makeup.template != "">> and you follow up by taking a moment to touch up your makeup<</if>>.
<<else>>
<<if $scene.exercise == 1>>
You had a simple, straightforward workout. Still probably a good idea to take a shower before you leave.
<<elseif $scene.exercise == 2>>
You spent a bit of time working out in different ways, probably a good idea to shower before you depart.
<<elseif $scene.exercise > 2>>
You've had a long, varied workout. In other words, you kind of smell, a shower really is in order.
<<else>>
ERROR, unexpected scene.exercise <<=$scene.exercise>>
<</if>>
<</if>>
<br><br>
<<if setup.getIndecentValue() >= 90 && !setup.checkItemTypeWorn("shoes")>>
[<<moveTo "room_gym_lockerroom_private_shower" "Take a shower in one of the private stalls." 60>>]<br>
[<<moveTo "room_gym_lockerroom_women_shower" "Use the women's open shower." 60>>]
<<else>>
<<if setup.getIndecentValue() < 90>>
[@@.link_locked;You can't shower with clothes on!@@]<br>
<<elseif setup.checkItemTypeWorn("shoes")>>
[@@.link_locked;You can't shower with shoes on!@@]<br>
<<else>>
ERROR: unexpected inability to shower!
<</if>>
[<<moveTo "room_gym_lockerroom_women_post" "Strip." 60 "<<removeAllClothing>>">>]
<<if $options.ezchange && $clothSetsInt.hasOwnProperty('preGym')>>
<br>
[<<moveTo "room_gym_lockerroom_women_post" "Change back into what you were wearing before visiting the gym." 180 "<<useClothSetPop 'preGym'>><<useClothSetPush 'preGym'>>">>]
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Lockerroom">><<set $scene.return_makeuproom="room_gym_lockerroom_women_post">><<set $scene.makeuproom_image="./images/locations/gym_lockers.png">><<set $scene.return_makeuproomtext="Return to the locker-room.">>'>>]<br>
<br>
<</if>>
<<if $scene.gymAttire>>
[<<moveTo "room_gym_main" "Head back into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<elseif $scene.gymBraOnly>>
<<if $scene.gymCanBraOnly>>
[<<moveTo "room_gym_main" "Head back into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to go back to working out wearing only a sportsbra.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are inappropriately attired to return to the gym, you need to be wearing a workout top, pants and shoes to meet the gym's dress code.@@]<br>
<<if $options.ezchange && setup.getClothingSetIndex('Workout Clothes') != -1>>
[<<moveTo "room_gym_lockerroom_women_post" "Change back into your gym clothes." 180 "<<set _setId = setup.getClothingSetIndex('Workout Clothes')>><<useClothSet _setId>>">>]<br>
<</if>>
<</if>>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_gym_lobby" "Back to the lobby." 60 "<<deleteMember $clothSetsInt 'preGym'>>">>]<br>
[<<moveTo "room_citymap" "Leave the gym." 300 "<<deleteMember $clothSetsInt 'preGym'>><<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now!'>>">>]
<<else>>
<<if !$scene.gymAttire && $player.sec_style.clothing.unisex == "" && setup.analyzeWornTags(['unisex','male','female']) == 'unisex' && !($now.getUTCDay()==0 || $now.getUTCDay()==6) && $now.getUTCDay()<8>>
You aren't really comfortable going out dressed like this but you need to head to work.
<<if $npc_manager.flags.spill_event>>
Besides, after what happened in the lunchroom you have a feeling your <<=setup.getNpcName("npc_manager","title")>> is expecting it...
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
Besides, well, <<=setup.getNpcName("npc_manager","formal")>> did say this sort of thing was your new uniform...
<<else>>
You squint at your slightly feminine outfit, maybe you're over-thinking it, it's just work, right?
<</if>>
<br><br>
[<<moveTo "company_lobby" "Head to work." 900>>]
<<elseif $scene.gymAttire>>
What you're wearing may be appropriate for the gym, but you don't feel like being seen outside in it!<br>
<</if>>
<<if $options.ezchange && $clothSetsInt.hasOwnProperty('preGym')>>
[<<moveTo "room_gym_lobby" "Change and head back to the lobby." 60 "<<useClothSetPop 'preGym'>>">>]<br>
<</if>>
[@@.link_locked;You are not appropriately attired to leave the gym.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: gym women's locker-room shower after workout
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<<set $player.makeup.messed = 0>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.cage!="">>
<<changeItemStatus $scene.cage 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cage 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cage 'piss' '["remove"]'>>
<<changeItemStatus $scene.cage 'sweaty' '["remove"]'>>
<</if>>
<<if !$gym.lewd_female && !State.hasPlayed("room_gym_lockerroom_women_shower_wash") && ($npc_fit_bimbo.stage >= 4 || $options.fem && $npc_swolebro.stage >= 4)>>
<<set $scene.id = 7>>
<<elseif !$gym.lewd_futa && !State.hasPlayed("room_gym_lockerroom_women_shower_futa") && ($npc_fit_bimbo.stage >= 4 || $options.fem && $npc_swolebro.stage >= 4)>>
<<set $scene.id = 6>>
<<elseif $gym.lewd_female || $gym.lewd_futa>>
<<set $scene.id = random(1,11)>>
<<else>>
<<set $scene.id = random(1,7)>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room Shower">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
You head into the showers to clean yourself up from your workout<<if $player.makeup.template != "">>. You take some care to avoid washing off your makeup<</if>>.<br>
<br>
<<switch $scene.id>>
<<case 1 2 3>>
Your shower passes uneventfully, nobody paying attention to you and you carefully avoiding looking at anyone else.
<<case 4>>
As you're showering, you can't help but notice a pair of lesbians making out in a corner. You can't help but be turned on at their sensuous display, the mist of the shower and the water raining down on them making the whole scene as artistic as it is hot.
<<case 5>>
You find yourself a bit distracted by all of the beautiful, naked women sharing the shower with you. Your heart races with excitement as you try not to look around too overtly and concentrate just on scrubbing up.
<<case 6>>
<<set _disableLeaveLink=true>>
You're in the middle of washing up when an <<if $fetish.futanari>>Amazonian futanari<<else>>well-hung amazon<</if>> strides into the shower and calls out that she needs a "@@.generic_female1;Slutty mouth-hole to get over here to suck my cock and soap me down.@@"<br>
<br>
<<if ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (setup.getTotalValue("whoring") >= 5 || setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("humiliation") > 10)>>
[<<moveTo "room_gym_lockerroom_women_shower_futa" "Eagerly volunteer." 300 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;You're too embarrassed to speak up.@@] <<hint $options "To volunteer for something like that you'd need to have some anal experience and to have gotten used to more daring sexual things, either as a whore, a bimbo or general experience with embarrassing situations.">><br>
<</if>>
[<<moveTo "room_gym_lockerroom_women_shower_futa" "Try not to catch her eye." 120 "<<set $scene.accept=false>>">>]
<<case 7>>
<<set _disableLeaveLink=true>>
On one side of the shower a woman appears to be chained to the wall, another woman doing a very thorough job of hosing her off.<br>
<br>
<<if setup.getTotalValue("whoring") >= 5 || setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("humiliation") > 10>>
[<<moveTo "room_gym_lockerroom_women_shower_wash" "Ask if you can be next." 300>>]<br>
<<else>>
[@@.link_locked;You're too embarrassed to ask for a spot in the lady wash.@@]<br>
<</if>>
[<<moveTo "room_gym_lockerroom_women_post" "Just finish up showering." 120>>]
<<case 8>>
As you're washing up, you can't help but notice a cute <<if $fetish.futanari>>futa<<else>>well-hung girl<</if>> giving her Amazonian "partner" the business. As hot as it is incongruous, the smaller woman is railing her bigger, stronger partner hard and deep, both of them too focused on their frenzied fucking to pay much attention to anyone staring...<br>
<br>
You can't help but find yourself frequently glancing in their direction, though you try to at least keep it subtle as you go about your washing.
<<case 9>>
<<if $npc_fit_bimbo.stage > 1>>
You spot a cadre of fellow bimbos washing each other in a corner of the shower. They eagerly call you over and you join in on the fun of making sure all of your big breasts and tight asses are nice and squeaky clean, with plenty of giggling groping thrown in for good measure.
<<else>>
There are a handful of slutty women all showering together and chatting. Though they each look a little different they follow a common theme — huge tits, perfect ass, slutty makeup and a bit of an airheaded demeanour.<br>
<br>
Interestingly one of them turns to reveal a small, but definitely present, cock locked in a cute, pink cage. It looks like this pack of bimbos counts at least one <<if $fetish.sissy>>sissy<<else>>girl like you<</if>> amongst its sisterhood.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought "Mmm, what a lucky girl, I wish I was one of them...">>
<</if>>
<</if>>
<<case 10>>
<<if $gym.lewd_female && $fetish.piss && setup.getTotalValue("piss") >= 20 && setup.checkItemTypeWorn("plug")>>
While showering someone comes up behind you to "help" scrub. They help wash you head to toe, including removing your plug for "cleaning," as they finish you off they start grinding against your rear, their cock sliding into your ass.<br>
<br>
"@@.generic_female1;Mmmm, you're so tight... all this water, you don't mind if I relieve myself, do you?@@" They ask, as they continue to thrust deep inside of you.<br>
<br>
[<<moveTo "event_lockerroom_piss_1" "Of course." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_lockerroom_piss_1" "No!" 120 "<<set $scene.accept=false>>">>]
<<else>>
Your showering passes without incident<<if $fetish.piss>>... though it feels like something could happen... if you were only ready for it<</if>>.
<</if>>
<<case 11>>
<<set _disableLeaveLink=true>>
As you're showering off from your workout you hear a moan from one of the private stalls.<br>
<br>
[<<moveTo "event_gym_locker_sissy_1" "Investigate." 180>>]<br>
[<<moveTo "room_gym_lockerroom_women_post" "Just finish up and return to the locker-room." 60>>]
<<default>>
ERROR: unexpected scene id: <<=$scene.id>>
<</switch>>
<br><br>
<<if !_disableLeaveLink>>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 60>>]
<</if>>
</div>/*#
#desc: gym women's locker-room shower submissive futasex
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $gym.lewd_futa = true>>
<<set $scene.size = random(8,13)>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 11 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $scene.size 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' $scene.size 'very' $SEEN_STRANGER>>
<<elseif $fetish.get_raped && $player.virgin.blowjob && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
<<set $scene.size = random(8,13)>>
<<applyExperience 'cum' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 11 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $scene.size 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room Shower">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
As the <<if $fetish.futanari>>Amazonian futa<<else>>well-hung amazon<</if>> scans the showers for her "volunteer"/victim, you raise your hand and wave.<br>
<br>
The woman grins, her cock hardening in approval as she hungrily lays eyes on you.<br>
<br>
"@@.generic_female1;Well? What are you waiting for, this cock ain't gonna suck itself.@@"<br>
<br>
You almost slip in the wet shower in your hurry to get into position, but the Amazonian catches you, and then deposits you on your knees as she jams her cock into your face.<br>
<br>
She's big and hard and delicious.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You eagerly deepthroat her on the first gulp. She's obviously surprised at your skill, but you don't rest on your laurels, eagerly sucking and bobbing up and down to give her the full benefit of all that your trained throat has to offer.
<<else>>
You barely manage to hilt her full length. She's obviously impressed at your skill and you follow up with the best deep-throating blowjob you can give.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
She is too big for you to possibly take in her entirety, but you do your best until you gag, coughing slightly before resuming by sucking and licking around her head and up and down her shaft.
<<else>>
She is so big that you swiftly find yourself gagging without even getting so much as her tip into your throat. She tries to "help" with a few hard thrusts, but it's quite clear that you just don't have the skill to take one of her size. Trying to make up for it you swirl your tongue and suck for everything you've got as you move up and down her shaft with mouth, tongue and hands, stroking and sucking and slurping away.
<</if>>
<</if>>
<br><br>
Rewarded with a thick blast of <<if $fetish.futanari>>futa <</if>>cum, she waits for you to lick the both of you clean of her <<if setup.getTotalValue("cum") >= 10>>delicious<<else>>strong-tasting<</if>> splooge before handing you a bar of soap and a bath puff and telling you to "@@.generic_female1;Get to work.@@"<br>
<br>
You can tell she's had a long, hard workout by the amount of tension in her swelled muscles, and you give her a thorough scrubbing down/body massage. Just as you're finishing up the sudsy bar of soap slips from your grasp, skittering across the wet floor.<br>
<br>
Chasing after it and bending over, you are surprised to find her behind you, hard and horny once more as she holds your
<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
hips, removes your plug with a loud POP and fucks your ass fast and deep.
<<else>>
hips to fuck your ass good and fast.
<</if>>
<br><br>
"@@.generic_female1;Ah, now that's a full-service shower!@@" She states as she pumps you full of cream filling. You wobble a bit as she withdraws, trying to recover from taking her in both ends in such quick succession. <<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>She helpfully shoves the plug back into your still-gaping hole before giving<<else>>She gives<</if>> you a slightly too-hard slap on the ass and thanking you for your effort.<br>
<br>
Nice and "clean," she heads back to the locker-room to change. After a final rinse, you decide to do the same.
<<else>>
You keep your head down and try not to make eye contact as the <<if $fetish.futanari>>Amazonian futa<<else>>well-hung amazon<</if>> scans the room for prey.
<<if $fetish.get_raped && $player.virgin.blowjob && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
Unfortunately there seems to be something about you to mark you a perpetual victim because a few moments later she's dragging you to your knees by your hair, her thick cock thrusting past your lips to plunge down your helpless throat.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Though her intrusion past your lips may have been uninvited you find yourself swiftly falling back on your hard-learned skills, hilting her on the first stroke and making her moan at your throat's expert accommodation.
<<else>>
You may not have woken this morning intending to get throat-fucked you woke up with the ABILITY to be throat-fucked and you find yourself employing such now, even if it is a bit against your will.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You cough and gasp as she pounds away at your gag reflex, desperately sucking and licking in hopes of dissuading her from continuing to roughly thrust into you.
<<else>>
You cough and gasp and try not to choke as her cock rams up against the back of your throat. Eyes wide and tears streaming down your face you try to suck and lick in hopes that you might placate her from boring a hole out through the back of your head.
<</if>>
<</if>>
<br><br>
She cums. She cums in thick, creamy jets that spurt out your nose and dribble down your chin. Grunting in pleasure she wipes herself off on your face and then tosses you a luffa and soap.<br>
<br>
Fearfully you scrub her down and rinse her off. Your reward is a slap on the ass and a "@@.generic_female1;Good job, slut.@@" Before she walks away, leaving you to finish cleaning yourself up without actually ending up feeling any less dirty and used.
<<else>>
Fortunately for your holes another girl pops up with a smile, "volunteering" to help out... those being the last intelligible words out of her mouth before the <<if $fetish.futanari>>futa<<else>>woman<</if>> has the other girl down on her knees, plunging her big cock deep into the girl's throat.<br>
<br>
You focus on finishing washing up, trying not to get too distracted by the backing soundtrack of face-rape in the background.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 60>>]
</div>/*#
#desc: gym women's lockerroom shower get bound and hosed off
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gym.lewd_female = true>>
<<applyExperience 'bondage' 7 'little' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room Shower">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
Walking up to the hose-wielding woman, you note that you've been something of a "dirty girl" and ask if she could help get you clean.<br>
<br>
She grins as she gives her current client a final blast. Unchaining the woman's wrists from the ceiling mounted chain, she soon has you locked up in the girl's place.<br>
<br>
Arms stretched above your head, there is nothing you can do to evade the sharp, stinging spray of her hot hose, and she makes absolutely sure to get you from every angle, not letting up until every millimetre of you is squeaky-clean.<br>
<br>
Letting you drip for a few moments as you catch your breath, she unlocks the wrist cuffs to let you free. As you stagger away, you notice she already has another client stepping into position, arms held high as she is restrained for her cleaning.<br>
<br>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 60>>]
</div>/*#
#desc: women notices you not having shoes
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<include calcGymAttire>>
<<initRoom>>
<<include playerMenu>>
/% TODO: woman %/
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
The woman beams down at you looking fit, fab and with a friendly smile and you end up spilling that you came all the way to the gym, and you don't have shoes to work out in!<br>
<br>
"@@.generic_female1;Aww, that would be a bummer, the gym being so particular about what you can wear on the floor, and all...@@" She looks you over for a minute and then smiles. "@@.generic_female1;Hey, tell you what, I think I've got some old trainers in my locker... I think we might be the same size. If they fit, you can have 'em!@@"<br>
<br>
You don't even get a chance to respond before she's skipping back to her locker and then dashing back with a pair of pink sneakers in hand.<br>
<br>
"@@.generic_female1;Yup, here they are!@@" She brings them up to her face and takes a whiff, wrinkling her nose. "@@.generic_female1;Whew! I must have worked up quite a sweat the last time I wore these, here smell!@@"<br>
<br>
[<<moveTo "room_gym_shoes_2" "Let her shove her dirty shoes in your face." 180 "<<set $scene.sniff=true>>">>]<br>
<<if setup.getTotalValue("foot") > 15>>
[@@.link_locked;Pass up feet? Hell no!@@]
<<else>>
[<<moveTo "room_gym_shoes_2" "No, that's disgusting!" 60 "<<set $scene.sniff=false>>">>]
<</if>>
</div>/*#
#desc: woman "gives" you her old sneakers
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sniff>>
<<applyExperience 'foot' 15 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 12 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'foot' 7 'very' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<include calcGymAttire>>
<<initRoom>>
<<include playerMenu>>
/% TODO: woman %/
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sniff>>
<<if setup.getTotalValue("foot") > 10>>
<<if setup.getTotalValue("foot") > 15>>
You don't just sit there as she shoves the sweaty shoe in your face, you lean in, breathing deep as you savour the heavy smell of sweaty feet, opening your mouth in an attempt to taste the thick, pungent aroma.
<<else>>
You sit there as she shoves the sweaty shoe in your face. You take a whiff, then a deep breath, the scent of her sweaty feet intoxicating.
<</if>>
<br><br>
"@@.generic_female1;Holy shit, you're getting off on this!@@" She says in surprise, pulling the shoe away and causing you to reflexively lean forward in an attempt to follow. "@@.generic_female1;Ohmygod, look at this you drooled all over things! I've never seen someone get off on feet so much? Or is it my sweat, is that it? Do you want to wait until I've finished a long workout and just shove your face in my sweaty pits, is that it? Or do you just want to suck my toes?@@"<br>
<br>
You try to come up with a response but the eyes of the rest of the locker-room has you shamed into silence.<br>
<br>
"@@.generic_female1;God, you aren't even denying it! Maybe I shouldn't reward this sort of behaviour, but... well, I'm not going to wear these now that you've drooled all over them, here! Wear them or sniff them or use them to get yourself off... whatever your sick mind desires!@@"<br>
<br>
Despite her cruel words she's grinning the whole time, and she even laughs as she walks away, leaving the smelly, but functional, shoes at your feet.<br>
<br>
<<printThought "Well... I did need shoes, and, like... I'll just end up sweating in them anyway, right?">>
<<else>>
You grit your teeth and try to hold your breath as the woman shoves her sweaty shoe into your face. Despite your best efforts you can't resist the urge to take a little sniff.
<<if setup.getTotalValue("foot") > 5>>
It's actually not that bad, well, considering.
<<else>>
You almost gag at the smell of sweaty feet.
<</if>>
The woman holds the shoe against your face and then switches off, as if to let you compare left to right.<br>
<br>
"@@.generic_female1;So stinky, aren't they! Heh, I totally can't believe you let me do that.@@" She finally lets you breathe and you pant slightly as you look up at her smiling face.<br>
<br>
"@@.generic_female1;Well I guess you earned these! Have fun!@@"<br>
<br>
She drops the shoes in front of you and skips away.
<</if>>
<br><br>
[<<moveTo "room_gym_lockerroom_women_pre" "Pick up your new shoes." 60 "<<addItem 'sneakers_used'>>">>]
<<else>>
You jerk away in disgust from the stinky shoes and the woman frowns.<br>
<br>
"@@.generic_female1;Aww... well if you don't like my stinky old sneakers you can't have them! Guess you'll have to buy a new pair or skip today's workout, your loss!@@"<br>
<br>
[<<moveTo "room_gym_lockerroom_women_pre" "She walks away." 60>>]
<</if>>
</div>/*#
#desc: gym locker-room
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.exercise = 0>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
Heading into the gym, you are faced with that most pressing of questions — which locker-room to use?<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
<<printThought "Hmm, given what I'm wearing I suppose it makes sense to use the women's locker room.">>
<<case 'male'>>
<<if $player.sec_style.body.name != "">>
<<printThought "I guess I'm dressed male so I could use that locker-room? Feels a bit odd though.">>
<<elseif setup.getTotalValue("feminization") < 5>>
<<printThought "To the men's locker-room!">>
<<else>>
<<printThought "I'm dressed for the men's locker-room but...">>
<</if>>
<<case 'unisex'>>
<<printThought "Hmm, I guess I can fit in in either locker room in this outfit.">>
<<default>>
ERROR: unexpected clothing tag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
<<if setup.getTotalValue("feminization") > 10>>
You really feel like you belong in the women's locker-room.
<<elseif setup.getTotalValue("feminization") < 5>>
Despite what may have happened in your life of late you're a man, that means you should use the men's locker-room, right?
<<else>>
At this point you're kind of confused as to which locker-room you belong in.
<</if>>
<br><br>
[<<moveTo "room_gym_lockerroom_women_pre" "Enter the women's locker-room." 60 "<<useClothSetPush 'preGym'>>">>]<br>
[<<moveTo "room_gym_lockerroom_men_pre" "Enter the men's locker-room." 60 "<<useClothSetPush 'preGym'>>">>]
</div><<include "calcTopId">>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("bra")>>
<</if>>
<<set $scene.bottomId = setup.getItemFromType("legwear")>>
<<set $scene.shoeId = setup.getItemFromType("shoes")>>
<<set $scene.bra = setup.getItemFromType("bra")>>
<<set $scene.gymAttire = false>>
<<set $scene.gymBraOnly = false>>
<<set $scene.gymCanBraOnly = false>>
/*special case for workout dress*/
<<set _ingoreBottom = false>>
<<if $scene.topId != "" && (setup.getItemObj($scene.topId).specific=="dress" || setup.getItemObj($scene.topId).specific=="bodysuit") && setup.checkItemTag($scene.topId,["gym"]) && (setup.getTotalValue("bimbofication") >= 8)>>
<<set _ignoreBottom = true>>
<</if>>
<<if (setup.checkItemTag($scene.bottomId,["gym"])||_ignoreBottom) && setup.checkItemTag($scene.shoeId,["gym"])>>
<<if $scene.topId != "" && $scene.topId != $scene.bra && setup.checkItemTag($scene.topId,["gym"])>>
<<set $scene.gymAttire = true>>
<<elseif $scene.topId == $scene.bra && $scene.bra != "" && setup.checkItemTag($scene.bra,["gym"])>>
<<set $scene.gymBraOnly = true>>
<<set $scene.gymCanBraOnly = setup.getTotalValue("bimbofication") >= 9>>
<</if>>
<</if>><<set $player.timebased.dirty = 0>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<if $scene.cage>>
<<changeItemStatus $scene.cage 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cage 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cage 'piss' '["remove"]'>>
<<changeItemStatus $scene.cage 'sweaty' '["remove"]'>>
<</if>>
<<set _plug = setup.getItemFromType('plug')>>
<<if _plug>>
<<changeItemStatus _plug 'cumsoaked' '["remove"]'>>
<<changeItemStatus _plug 'dirty' '["remove"]'>>
<<changeItemStatus _plug 'piss' '["remove"]'>>
<<changeItemStatus _plug 'sweaty' '["remove"]'>>
<</if>>
<<set _plug = setup.getItemFromType('hollow_plug')>>
<<if _plug>>
<<changeItemStatus _plug 'cumsoaked' '["remove"]'>>
<<changeItemStatus _plug 'dirty' '["remove"]'>>
<<changeItemStatus _plug 'piss' '["remove"]'>>
<<changeItemStatus _plug 'sweaty' '["remove"]'>>
<</if>>/*#
#desc: gym private locker-room shower after workout
#status: FINISHED 0.7.0.0
#ignore_spell: occupie
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<<set _npcids = [0]>>
<<if ($gym.lewd_male || $gym.lewd_female || $gym.lewd_futa) && random(1,5) <= $npc_manager.stage>>
<<if $scene.lockerroommale>>
<<if $gym.lewd_male && !$options.fem>>
<<set _npcids.push(1)>>
<<set _npcids.push(2)>>
<</if>>
<<else>>
<<if $gym.lewd_futa && $options.fem>>
<<set _npcids.push(1)>>
<<set _npcids.push(2)>>
<</if>>
<<if $gym.lewd_female>>
<<set _npcids.push(3)>>
<</if>>
<<if $gym.lewd_futa>>
<<set _npcids.push(4)>>
<</if>>
<</if>>
<</if>>
<<set $scene.npcid = _npcids.random()>>
<<if $fetish.get_raped>>
<<switch $scene.npcid>>
<<case 1>>
<<if !$player.virgin.anal>>
<<set $scene.npcid = 0>>
<<else>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'very' $SEEN_STRANGER>>
<<if $options.fem>>
<<set $gym.private_shower.male_fem += 1>>
<<else>>
<<set $gym.private_shower.male += 1>>
<</if>>
<</if>>
<<case 2>>
<<if !setup.checkItemTypeWorn("cage")>>
<<playerOrgasm>>
<</if>>
<<if $options.fem>>
<<set $gym.private_shower.sissy_fem += 1>>
<<else>>
<<set $gym.private_shower.sissy += 1>>
<</if>>
<<applyExperience 'feminization' 11 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'very' $SEEN_STRANGER>>
<<case 3>>
<<if !$player.virgin.cunnilingus>>
<<set $scene.npcid = 0>>
<<else>>
<<set $gym.private_shower.female += 1>>
<<if $fetish.harass && random(1,3)==3 && $player.body_ref.penis && $player.identify_as == "male">>
<<if setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_22') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_22'
0
'event_psychiatrist_theme_street_harass'
false
>>
<</if>>
<<set $scene.harrassmentEvent = true>>
<<applyExperience 'humiliation' 11 'very' $SEEN_STRANGER>>
<<else>>
<<set $scene.harrassmentEvent = false>>
<<applyExperience 'submission' 7 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 9 'normal' $SEEN_STRANGER>>
<<if $fetish.piss>>
<<setThreshold 'piss' 'general_piss' 'gym_piss'>>
<<applyExperience 'piss' 7 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<case 4>>
<<applyExperience 'oral' 9 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 9 'normal' $SEEN_STRANGER>>
<<if $fetish.piss>>
<<applyExperience 'piss' 5 'terrible' $SEEN_STRANGER>>
<<if !setup.hasThreshold('piss', 'general_piss', 'gym_piss')>>
<<setThreshold 'piss' 'general_piss' 'gym_piss'>>
<</if>>
<</if>>
<<set $gym.private_shower.futa += 1>>
<</switch>>
<<elseif $fetish.harass>>
<<applyExperience 'humiliation' 11 'very' $SEEN_STRANGER>>
<<if setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_22') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_22'
0
'event_psychiatrist_theme_street_harass'
false
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
Embarrassed to be seen naked by strangers, you wait for one of the private shower stalls to free up before darting in and removing your towel.<br>
<br>
<<if $scene.npcid > 0>>
You're in the process of cleaning yourself off in the private stall when someone suddenly barges in!<br>
<br>
Reflexively covering yourself, you look over in shock at
<<switch $scene.npcid>>
<<case 1>>
a <<if $options.fem>>hung amazon woman<<else>>muscular man<</if>>.
<<case 2>>
a cute and caged fellow <<if $fetish.sissy>>sissy<<else>>girl<</if>>.
<<case 3>>
a svelte, naked woman.
<<case 4>>
a <<if $fetish.futanari>>big-dicked futa<<else>>well-hung woman<</if>>.
<<default>>
ERROR, unexpected scene.npc <<=$scene.npcid>>
<</switch>>
<br><br>
<<if $fetish.get_raped>>
As you stand stock still in fear, they slide into the shower with you.<br>
<br>
<<if !$player.virgin.cunnilingus && $scene.npcid == 3>>
<<set $scene.npcid = [2,4].random()>>
<</if>>
<<switch $scene.npcid>>
<<case 1>>
"@@.generic_male1;Oh, hello there.@@" <<He>> states with a grin as <<he>> finishes stepping into the stall, <<his>> large, muscle-bound body forcing you to jam into a corner to make room.<br>
<br>
"@@.generic_male1;Aww, don't be like that, there's plenty of room for the both of us, here, let me get your back.@@"<br>
<br>
There's no way you can slip past <<him>> to the door so you just turn around, <<his>> strong hands surprisingly delicate as <<he>> works <<his>> way down from your shoulders to your ass.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.generic_male1;Oh this ass is just too perfect, I hope you got a bit of stretch because I gotta get me some of this.@@"
<<else>>
<<His>> exploring hands find the <<=setup.getItemTypeName("plug")>> and suddenly stop.<br>
<br>
"@@.generic_male1;What's this? Oh you are a dirty one!@@" <<He>> wiggles your plug and you gasp at the stimulation.<br>
<br>
"@@.generic_male1;Oh I gotta get me a piece of this! I mean you went to all the trouble to prepare it'd be rude not to!@@"<br>
<br>
With a pop <<he>> pulls the plug out of your ass and tosses it in a corner of the shower.
<</if>>
<br><br>
Lifting you up as if it was nothing, <<he>> drops you ass first onto <<his>> cock, <<his>> thick member spearing into your rear powered by the full weight of your body.<br>
<br>
"@@.generic_male1;Aww yeah, now that's what I'm talking about!@@" <<He>> grunts, your toes not even touching the ground as <<he>> bounces you up and down on <<his>> dick.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
After the initial shock, your body adjusts to <<his>> size, though big it's nothing you can't handle and <<he>> grunts in pleasure as you reflexively clamp down and start milking <<him>>.
<<else>>
<<Hes>> big, really big, but your body has no choice but to try and stretch to accommodate as you are impaled and pounded in mid-air.
<</if>>
<br><br>
"@@.generic_male1;Damn you feel good, imma pop my nut any moment now!@@" Is all the warning you get before <<his>> cock spits cum deep in your bowels and <<he>> finally releases <<his>> hold on your body.<br>
<br>
There isn't really enough room for you to fall in the small shower and you find yourself pressed against the wall, leaking cum down your leg as <<he>> reaches for the soap.<br>
<br>
"@@.generic_male1;Don't just stand there, my back needs scrubbing too!@@" <<He>> states as <<he>> turns around. In a bit of a daze, you do as <<he>> asks, washing <<his>> whole body then cramming into a corner as <<he>> rinses off.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
"Oh, almost forgot!" <<He>> states as <<he>> turns to go, bending you over and shoving the <<=setup.getItemTypeName("plug")>> back into your ass.<br>
<br>
<</if>>
"@@.generic_male1;Ah, much better, have a good day!@@" <<He>> states with a wide smile before exiting the stall. You finish washing yourself off and stagger out, feeling more used than clean.
<<case 2>>
"@@.generic_female1;Mmm, you're cute!@@" they state with a smile, rubbing up against you.<br>
<br>
"@@.generic_female1;Here, let me get your back.@@"<br>
<br>
You shudder as their soapy fingers slide over your body.
<<if !setup.checkItemTypeWorn("cage")>>
They're caged and you're not which seems to setup an instant hierarchy. After finishing your back they slide to their knees, first groping you then moving around front to softly <<if $player.body_ref.penis>>suck your <<if $fetish.sissy>>sissy <</if>><<getWordMyPenis>><<if $player.body_ref.vagina>> and finger your <<getWordVagina>><</if>><<else>>lick your <<getWordVagina>><</if>>.<br>
<br>
Their mouth is warm, soft and oh-so-skilled and it isn't long before you <<if $player.body_ref.penis && $player.body_ref.cumProduction>>grant them a salty <<if $fetish.sissy>>sissy <</if>>snack<<else>>cum<</if>>.<br>
<br>
Smiling they return to their feet, <<if $player.body_ref.penis && $player.body_ref.cumProduction>>showily swallowing it down<<else>>licking their lips<</if>> with glee before giving you a <<if $player.body_ref.penis && $player.body_ref.cumProduction && $fetish.cum>>cum-scented <</if>>kiss and slipping back out of the "private" stall.
<<else>>
Given that you are both locked in chastity, you're a bit limited in what you can "do," but they seem to have an enjoyable enough time, drawing you in to a mutual scrubbing before sliding out of the "private" stall with a parting wink and a blown kiss.
<</if>>
<<case 3>>
<<if $scene.harrassmentEvent>>
"@@.generic_female1;What the fuck? You don't belong in here! Are you some perv trying to get off in the women's locker-room!? I'm going to go get an employee!@@"<br>
<br>
She rushes out and you hurriedly pack your stuff and flee before she can return, hoping she didn't catch a good enough look at you in the steamy shower to identify you.
<<else>>
"@@.generic_female1;Oh, hey,@@" she states with a smile. "@@.generic_female1;Didn't realise anyone was in here but that's great, you wanna do my back?@@"<br>
<br>
On obedient autopilot, you scrub away as she purrs in contentment. "@@.generic_female1;Mmmm, yeah, that's the stuff, now be a dear and finish me off?@@"<br>
<br>
You hesitate for a moment as you try to figure out what she said which is enough to trigger her impatience as she pushes you to your knees and shoves her wet snatch into your face.<br>
<br>
"@@.generic_female1;Yeah, really get in there.@@" She instructs as your gasp has your lips wrapping around hers.<br>
<br>
It doesn't take long before she has an orgasm, her moan of pleasure echoing in the narrow stall.<br>
<br>
<<if $fetish.piss>>
"@@.generic_female1;Not bad, but now I'm feeling a bit full... open wide!@@" Before you can react, she unleashes a stream of <<if setup.getTotalValue("piss") >= 10>>delectable <</if>>piss, the amber liquid splashing over your face and flowing down towards the drain.<br>
<br>
<</if>>
"@@.generic_female1;Ah, that was great. Catch you later, slut!@@" She states with a wink as she departs, leaving you feeling used, the water still flowing over you failing to make you feel the least bit clean.
<</if>>
<<if $player.makeup.template != "">>
<br><br>
Several minutes after she has left you emerge and fix your makeup.
<</if>>
<<case 4>>
"@@.generic_female1;Oh, didn't realise this was already occupie—@@" She halts mid-word, her rising cock foreshadowing what the grin on her face confirms.<br>
<br>
"@@.generic_female1;Oh, my. I didn't realise this was a... full-featured stall. Now, why don't you get down on your knees and put those adorably parted lips to some better use?@@"<br>
<br>
When you don't move fast enough for her liking, she pulls you to the floor, holding your head between her strong hands as she uses your throat like an onahole, your knees slipping and sliding on the wet and soapy tile floor as she pounds away.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Even your skilled throat is pushed to the limit by her hard, fast face-<<if $fetish.get_raped>>rape<<else>>fuck<</if>>. She cums fast and hard, the thick brew leaking out your nose as she nigh tosses you into the corner of the stall, leaving you in a gasping pile as you try to catch your breath.
<<else>>
Your tears disappear down the drain as the water continues flowing over you and she does her best to force every centimetre of her thick cock down your poor throat. Cumming fast and hard she leaves you in the corner of the stall, coughing for air, cum drooling down your chin.
<</if>>
<br><br>
<<if $fetish.piss>>
"@@.generic_female1;That's right, you love a thick <<if $fetish.futanari>>futa cock<<else>><<getWordPenis false>><</if>> don't you? But get ready because I've got a final treat for you!@@"<br>
<br>
As if to add insult to injury, she follows up by unleashing a stream of urine, painting all over your body with her amber emission, leaving you covered in piss and cum as she finishes washing up.
<<else>>
"@@.generic_female1;Good girl, you suck <<if $fetish.futanari>>futa cock<<else>><<getWordPenis false>><</if>> like a pro!@@"<br>
<br>
Leaving you in the corner she practically ignores you as she goes about scrubbing herself down, seeming to pay particular attention to using a sudsy washcloth to polish her shaft and sack.
<</if>>
<br><br>
"@@.generic_female1;Well, it's been fun. I'd love to break in your other hole, but I've got stuff to do today, maybe next time!@@"<br>
<br>
It takes a little longer for you to recover enough to make it back to your feet, still coughing occasionally thanks to your sore throat, but able to finish washing off without further incident.
<<default>>
ERROR, unexpected scene.npc <<=$scene.npcid>>
<</switch>>
<<else>>
<<if $scene.npcid == 1>>
"@@.generic_male1;Ooops, wrong stall, didn't realise it was occupied.@@" The <<man>> states before quickly popping back out.
<<else>>
"@@.generic_female1;Oh, sorry, didn't realise someone was already in here.@@" They state before pulling back.
<<if $fetish.harass>>
<br><br>
Just before the door closes they poke back in with a smile. "@@.generic_female1;Looking good in there, by the way.@@"
<</if>>
<</if>>
<br><br>
Standing stock still for several more moments you wait for your racing heart to calm down before finishing up washing off.
<</if>>
<<else>>
You quickly rinse off the sweat of the gym and get yourself clean, wrapping the towel back around your body to return to the locker-room to get dressed<<if $player.makeup.template != "">> and touch up your makeup<</if>>.
<</if>>
<br><br>
<<if $scene.lockerroommale>>
[<<moveTo "room_gym_lockerroom_men_post" "Return to the locker-room." 60>>]
<<else>>
[<<moveTo "room_gym_lockerroom_women_post" "Return to the locker-room." 60>>]
<</if>>
</div>/*#
#desc: gym private locker-room shower after workout
#status: FINISHED 0.8.4.0
#ignore_spell: qr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
You glance around to see if anyone else heard the moan, but the showering water, and the general debauchery of the gym's showers, seems to have covered things up. You head in the direction of the sound your excitement raised by the sound of another moan as you approach closer — this time allowing you to identify the source for certain. "Privacy" for these rooms provided by your standard stall door means there's a sizable gap at the edge of the door and you press your face close to get a look at the scene beyond.<br>
<br>
<<if $fetish.piss>>
"@@.generic_female1;Drink it all, you slut. We wouldn't want you to get de-hydrated...@@"<br>
<br>
With one hand tightly gripping the <<if $fetish.sissy>>sissy's<<else>>kneeling woman's<</if>> long black hair, an imposing amazon sprays a potent stream of <<getWordPiss>> directly into the <<if $fetish.sissy>>sissy's<<else>>woman's<</if>> mouth, submissive gulping as the excess flows down her chin.
<<else>>
"@@.generic_female1;That's right, put that tongue to work...@@"<br>
<br>
The imposing amazon of a woman speaking is standing over a kneeling <<if $fetish.sissy>>sissy<<else>>submissive<</if>> as the latter cleans the former's feet with her tongue.
<</if>>
<br><br>
A steel collar and a chastity cage gleaming on the girl's naked form reinforces her obvious role, but your attention is drawn to her lower back and what looks like a QR code.<br>
<br>
<<printThought "Hmm, if I crouched down under the door I think I could get a shot...">><br>
<br>
<<if setup.checkItemInInventory("smartphone")>>
[<<moveTo "event_gym_locker_sissy_2" "Scan the QR code." 180 "<<set $scene.scan=true>>">>]<br>
<<else>>
[@@.link_locked;You would need a phone to scan the QR code.@@]<br>
<</if>>
[<<moveTo "event_gym_locker_sissy_2" "You've seen enough, head back to the locker-room." 60 "<<set $scene.scan=false>>">>]
</div>/*#
#desc: gym private locker-room shower after workout
#status: FINISHED 0.8.4.0
#ignore_spell: d,qr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.scan>>
<<set $gym.events.sissy_shower = true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Showers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.scan>>
You crouch down carefully and pull out your phone, quickly snapping a shot of the QR code tattoo as the <<if $fetish.sissy>>sissy<<else>>woman<</if>>
<<if $fetish.piss>>
finishes up being used as a urinal and is then forced to lick her domme's feet.
<<else>>
continues worshipfully licking her domme's feet.
<</if>>
"@@.generic_female1;Suck those toes <<if $fetish.sissy>>sissy<<else>>slave<</if>>, or I'll shock your locked-up clitty again!@@"<br>
<br>
You shudder at the revelation that the <<if $fetish.sissy>>sissy<<else>>slave<</if>> appears to have been rented out as your phone finishes processing the QR code and brings up a humiliating "slave stat sheet" on a site called <<if $fetish.sissy>>sissy<<else>>slave<</if>>book.<br>
<br>
Owner: Miss Jennifer Stevens <br>
Name: Cindy <br>
Former Name: Carlos Perez <br>
Height: 165cm <br>
Weight: 52kg <br>
Hair: Black <br>
Breasts: D <br>
Penis: Small, permanently locked <br>
Services on offer: <<if $fetish.piss>>human toilet, <</if>>foot slave, <<if $fetish.cum>>cum-dump, <</if>>fucktoy; freely usable by anybody.<br>
<<if $fetish.sph>>Her tiny dicklet<<else>>In her former life<</if>> was found to be useless in bed, but now greatly enjoys being used. Contact owner with any questions or to request wireless access to the electrodes of her chastity cage.<br>
<br>
You take another glance at the helpless <<if $fetish.sissy>>sissy<<else>>slave<</if>> performing her degrading service before beating a hasty retreat.
<<else>>
Not wanting to be caught peeping, you quickly make your retreat, leaving the <<if $fetish.sissy>>sissy and her owner<<else>>two of them<</if>> to their private activities as you head back to the locker-room.
<</if>>
<br><br>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 60>>]
</div>/*#
#desc: piss fountain event in showers intro
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'piss' 13 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<</if>>
<<if $scene.lockerroom == "female">>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room Shower">>
<<else>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room Shower">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod and moan your assent and you feel a sharp, warm blast deep inside.<br>
<br>
<<if $scene.lockerroom == "female">>
"@@.generic_female1;You like that? Goddess, you're so fucking tight you little <<if $fetish.sissy>>sissy<<else>>slut<</if>>. I can feel you milking my cock like a good human toilet...@@"
<<else>>
"@@.generic_male1;You like that? Goddess, you're so fucking tight you little <<if $fetish.sissy>>sissy<<else>>slut<</if>>. I can feel you milking my cock like a good human toilet...@@"
<</if>>
You shudder as they finish up, slowly sliding free as you focus on clamping down lest you leak down your leg.<br>
<br>
As you wobble slightly you look around to realise that you've gathered a crowd, a half dozen grinning, leering gym-goers with hard cocks... and full bladders.<br>
<br>
[<<moveTo "event_lockerroom_piss_2" "Bend over like the toilet you are." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_lockerroom_piss_2" "One was enough, you may be a human toilet, but you aren't public use!" 60 "<<set $scene.accept=false>>">>]
<<elseif $fetish.get_raped>>
You try to resist, but the stranger only pulls you tighter as they fill you with their hot <<getWordPiss>>.<br>
<br>
<<if $scene.lockerroom == "female">>
"@@.generic_female1;Yeah, go ahead and struggle, you <<if $fetish.sissy>>sissy<<else>>slut<</if>>. I like it when your kind fights back, all tight around my cock, I can feel how turned on you are to be my personal piss-pot you little bitch.@@"
<<else>>
"@@.generic_male1;Yeah, go ahead and struggle, you <<if $fetish.sissy>>sissy<<else>>slut<</if>>. I like it when your kind fights back, all tight around my cock, I can feel how turned on you are to be my personal piss-pot you little bitch.@@"
<</if>>
<br><br>
By the time they're finished you notice you've attracted a crowd. A half dozen grinning, leering gym-goers with hard cocks... and full bladders... and you're already being forced to the ground...<br>
<br>
[<<moveTo "event_lockerroom_piss_2" "Welcome to the life of a human toilet." 600>>]
<<else>>
You thank the stranger for their assistance in cleaning you up, but reply that you aren't interested in having your ass be their personal urinal.<br>
<br>
<<if $scene.lockerroom == "female">>
"@@.generic_female1;A pity.@@"
<<else>>
"@@.generic_male1;A pity.@@"
<</if>>
They reply before slipping out and away.<br>
<br>
<<if $scene.lockerroom == "female">>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 60>>]
<<else>>
[<<moveTo "room_gym_lockerroom_men_post" "Back to the locker-room." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: piss fountain event in showers pissed in butt
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'piss' 20 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 20 'terrible' $EXPOSED>>
<</if>>
<<if $scene.lockerroom == "female">>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room Shower">>
<<else>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room Shower">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept || $fetish.get_raped>>
You're soon bent over, ass held high to keep from leaking as you have a cock shoved in each end,
<<if $scene.accept>>
guzzling eagerly
<<else>>
choking and sputtering
<</if>>
as you get your "lemonade injection" from both ends, your belly quickly starting to bloat as you're pumped past full.<br>
<br>
You try to focus, but this is too much for even a piss-slave like yourself, and you feel your control start to slip as a particularly large cock slips free of your ass, a quick squirt presaging a read-to-burst dam.<br>
<br>
<<if $scene.lockerroom == "female">>
"@@.generic_female2;Get clear!@@"
<<else>>
"@@.generic_male2;Get clear!@@"
<</if>>
Someone shouts as you are pushed to the ground, bent fully double, with your ass straight in the air and your knees near your ears as you lose control, a golden fountain shooting up to splash down your back as people look on... and the final un-served customers unload manually, several golden streams criss-crossing over your face as you become a temporary art exhibit, sputtering and drooling as fresh <<getWordPiss>> flows down your body, jeers from the crowd accompanying your humiliation... as you finish off by pissing yourself, <<if setup.checkItemTypeWorn("cage")>>leaking past your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> to drip all over your own face<<else>>spraying straight into your own face<</if>> thanks to your folded up position.<br>
<br>
<<if $scene.lockerroom == "female">>
"@@.generic_female1;What a slut, she doesn't even look human!@@"
<<else>>
"@@.generic_male1;What a slut, she doesn't even look human!@@"
<</if>>
Someone adds as the golden shower finally stops and you slump to the floor of the showers, soaked in piss and lying in a puddle of the same. Almost dismissively someone aims a stream of water at your body, cleaning you more like a janitor would pressure-wash a urinal than the tender scrubbing that started this whole thing off.<br>
<br>
Dripping and depraved you finally push yourself back to your feet and stagger out of the shower... still sloshing slightly thanks to the plug that somehow got corked back into your ass.
<<else>>
You're feeling more than full so you merely shove the plug back into your ass, clean on the outside, but feeling like a human piss-bottle as you slosh your way back out towards the locker-room.
<</if>>
<br><br>
<<if $scene.lockerroom == "female">>
[<<moveTo "room_gym_lockerroom_women_post" "Back to the locker-room." 60>>]
<<else>>
[<<moveTo "room_gym_lockerroom_men_post" "Back to the locker-room." 60>>]
<</if>>
</div>/*#
#desc: gym men's locker-room
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.lockerroom="male">>
<<set $scene.origPants = setup.getItemFromType("legwear")>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room">>
<<include calcGymAttire>>
<<set $scene.changed = $scene.changed || $scene.origPants != setup.getItemFromType("legwear")>>
<<set $scene.meetSwoleBro = ($npc_swolebro.stage == 0 && $scene.changed && setup.checkItemTypeWorn("cage") && !$npc_swolebro.fem)>>
<<if $scene.meetSwoleBro>>
<<set $npc_swolebro.stage = 1>>
<<set $npc_swolebro.profile = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.meetSwoleBro>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_swolebro")>>
<<else>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<</if>>
<div id="invframe" class="scrolltext">
There's a sign on your way into the locker-room reminding you that you must wear proper gym attire to use the facilities.<br>
<br>
<<if $scene.meetSwoleBro>>/% Can only be reached if swole bros are male %/
You're in the process of changing when a large, totally shredded man walks up and greets you with a smile.<br>
<br>
"@@.npc_swolebro;So, when's your comp?@@"<br>
<br>
You have no idea what he's talking about, looking back with confusion.<br>
<br>
"@@.npc_swolebro;Oh, sorry, I just saw your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> and figured you were on enforced celibacy to help prepare for a competition — sex robbing you of testosterone and thus gains, y'know.@@"<br>
<br>
Now you're confused AND embarrassed, your look of shock causing him to quickly pivot.<br>
<br>
"@@.npc_swolebro;Nah, it's cool, a lot of the guys wear one from time to time. Hey Dmitry!@@" he calls out, an even larger man on his way out of the shower looking over, a towel wrapped around his waist, chiselled abs peeking out above. "@@.npc_swolebro;You still locked up?@@"<br>
<br>
"@@.generic_male1;You know it, man! Got a shoot next week, gotta get those results, keep it all inside, not leak those gainz!@@"<br>
<br>
Your jaw almost drops as the man loosens his towel revealing a very large <<getWordPenis true>> that looks like some sort of primal beast inside a heavy steel cage.<br>
<br>
"@@.npc_swolebro;See, totally normal, if you're wearing it for some other reason that's cool too, but, well, y'know, I just assumed.@@" There is a bit of awkward silence before the man continues. "@@.npc_swolebro;Hey, tell you what — since you're pretty new to working out why don't you join us sometime? There's a whole group of us that train most days, just roll on up and say <<=setup.getNpcName('npc_swolebro', 'first')>> sent you and they'll let you work in and give you the realtalk advice, full on brophessor shit, you get me? Anyway, I gotta hit the showers, you think on it.@@"<br>
<br>
Somehow you find your voice long enough to thank him for the offer and he walks away with a smile, giving Dmitry a loud slap on the ass before disappearing into the steam of the showers.<br>
<br>
<<printThought "That was weird, but, I mean, he seemed friendly, and I probably could use the help if I want to get in better shape.">><br>
<br>
You can't help but glance at Dmitry as he finishes changing into street clothes and heads out. Other than being a near perfectly muscled male specimen, he looks utterly normal, and you find yourself already doubting your own memory of seeing him locked and caged.
<<elseif $npc_swolebro.stage == 0 && !$options.fem>>
You're a bit intimidated, trying not to stare at the other occupants of the locker-room. They all look much bigger and stronger than you do, chiselled <<if $options.fem>>Athena's<<else>>Adonis'<</if>> compared to your <<if $options.fem>>more slight<<else>>more feminine<</if>> form.<br>
<br>
<<if setup.getTotalValue("feminization") > 10 || setup.analyzeWornTags(['female','male','unisex']) != "male">>
You feel a bit out of place using the men's locker room, but nobody seems to pay you much mind.
<<else>>
You try to ignore the feelings of inadequacy as you get ready to head into the gym proper.
<</if>>
<<switch setup.calcBreastSize()>>
<<case "massive">>
Your ginormous breasts can't help but draw stares, maybe you're in the wrong locker-room?
<<case "large">>
Your large breasts draw a fair few looks, maybe you're in the wrong locker-room?
<<case "medium">>
Your breasts are a bit too large to pass for over-developed pectorals, you get a few glances and one jacked guy with an obvious case of gynecomastia who makes eye contact with you and gives a sympathetic nod.
<<case "small">>
Your breasts are small enough to pass for over-developed pecs and do not draw undue notice.
<<case "none">>
Your flat, unimpressive chest draws no attention.
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
<<else>>
/* TODO: random locker-room events here... */
You take care of business in the
<<if $options.fem>>
locker-room which is, oddly enough, completely empty except for you.
<br><br>
<<if setup.getTotalValue("feminization") > 10 || setup.analyzeWornTags(['female','male','unisex']) != "male">>
You feel a bit out of place using the men's locker room, but quickly get over your nerves.
<<else>>
You are glad for the peace and quiet as you get ready to head into the gym proper.
<</if>>
<<else>>
locker-room,
<<if $npc_swolebro.stage >= 2 && !$npc_swolebro.fem>>
one of your bodybuilding friends giving you a friendly fist-bump as he makes his way past.
<<else>>
keeping your head down so as not to draw any attention from any of the large, yoked men changing in the locker-room.
<</if>>
<br><br>
<<if setup.getTotalValue("feminization") > 10 || setup.analyzeWornTags(['female','male','unisex']) != "male">>
You feel a bit out of place using the men's locker room, but nobody seems bothered.
<<else>>
You try to ignore the feelings of inadequacy as you get ready to head into the gym proper.
<</if>>
<</if>>
<</if>>
<br><br>
<<if $scene.gymAttire>>
[<<moveTo "room_gym_main" "Head into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<elseif $scene.gymBraOnly>>
<<if $scene.gymCanBraOnly>>
[<<moveTo "room_gym_main" "Head into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to work out wearing only a sportsbra.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are inappropriately attired for the gym, you need to at a minimum be wearing a workout top, pants and appropriate shoes to meet the gym's dress code.@@]<br>
<<if $options.ezchange && setup.getClothingSetIndex('Workout Clothes') != -1>>
[<<moveTo "room_gym_lockerroom_men_pre" "Change into your gym clothes." 180 "<<set _setId = setup.getClothingSetIndex('Workout Clothes')>><<useClothSet _setId>><<set $scene.changed = $scene.origPants != setup.getItemFromType('legwear')>>">>]<br>
<</if>>
<</if>>
<<if setup.checkOutsideDecency() || (
setup.analyzeWornTags(['unisex','male','female']) == 'male' && setup.getTotalValue("feminization") < 5)>>
[<<moveTo "room_gym_lobby" "Go back to the lobby." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now!'>>">>]
<<else>>
[@@.link_locked;You are not appropriately attired to leave the gym.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: gym men's locker-room after workout
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 0>>
<<set $scene.lockerroommale = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = ''>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<include "calcGymAttire">>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.exercise == 0>>
You aren't quite certain why you showed up to the gym and didn't bother to exercise, but that's how it goes as you start packing up your things. On the upside, at least you didn't build up a sweat!<<if $player.makeup.template != "">> Still, you take a moment to touch up your makeup.<</if>>
<<elseif $player.timebased.dirty < 10>>
All the sweat of your workout has been nicely washed away by your shower<<if $player.makeup.template != "">> and you follow up by taking a moment to touch up your makeup<</if>>.
<<else>>
<<if $scene.exercise == 1>>
You had a simple, straightforward workout. Still probably a good idea to take a shower before you leave.
<<elseif $scene.exercise == 2>>
You spent a bit of time working out in different ways, probably a good idea to shower before you depart.
<<elseif $scene.exercise > 2>>
You've had a long, varied workout. In other words, you kind of smell, a shower really is in order.
<<else>>
ERROR, unexpected scene.exercise <<=$scene.exercise>>
<</if>>
<</if>>
<br><br>
<<if setup.getIndecentValue() >= 90 && !setup.checkItemTypeWorn("shoes")>>
[<<moveTo "room_gym_lockerroom_private_shower" "Take a shower in one of the private stalls." 60>>]<br>
[<<moveTo "room_gym_lockerroom_men_shower" "Use the men's open shower." 60>>]
<<else>>
<<if setup.getIndecentValue() < 90>>
[@@.link_locked;You can't shower with clothes on!@@]<br>
<<elseif setup.checkItemTypeWorn("shoes")>>
[@@.link_locked;You can't shower with shoes on!@@]<br>
<<else>>
ERROR: unexpected inability to shower!
<</if>>
[<<moveTo "room_gym_lockerroom_men_post" "Strip." 60 "<<removeAllClothing>>">>]
<<if $options.ezchange && $clothSetsInt.hasOwnProperty('preGym')>>
<br>
[<<moveTo "room_gym_lockerroom_men_post" "Change back into what you were wearing before visiting the gym." 180 "<<useClothSetPop 'preGym'>><<useClothSetPush 'preGym'>>">>]
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Lockerroom">><<set $scene.return_makeuproom="room_gym_lockerroom_men_post">><<set $scene.makeuproom_image="./images/locations/gym_lockers.png">><<set $scene.return_makeuproomtext="Return to the lockerroom.">>'>>]<br>
<br>
<</if>>
<<if $scene.gymAttire>>
[<<moveTo "room_gym_main" "Head back into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<elseif $scene.gymBraOnly>>
<<if $scene.gymCanBraOnly>>
[<<moveTo "room_gym_main" "Head back into the workout area." 60 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not while I am walking around the gym!'>>">>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to go back to working out wearing only a sportsbra.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are inappropriately attired to return to the gym, you need to be wearing a workout top, pants and shoes to meet the gym's dress code.@@]<br>
<<if $options.ezchange && setup.getClothingSetIndex('Workout Clothes') != -1>>
[<<moveTo "room_gym_lockerroom_men_post" "Change back into your gym clothes." 180 "<<set _setId = setup.getClothingSetIndex('Workout Clothes')>><<useClothSet _setId>>">>]<br>
<</if>>
<</if>>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_gym_lobby" "Back to the lobby." 60 "<<deleteMember $clothSetsInt 'preGym'>>">>]<br>
[<<moveTo "room_citymap" "Leave the gym." 300 "<<deleteMember $clothSetsInt 'preGym'>><<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason = 'Not now!'>>">>]
<<else>>
<<if $player.sec_style.clothing.unisex == "" && setup.analyzeWornTags(['unisex','male','female']) == 'unisex' && !($now.getUTCDay()==0 || $now.getUTCDay()==6) && $now.getUTCDay()<8>>
You aren't really comfortable going out dressed like this but you need to head to work.
<<if $npc_manager.flags.spill_event>>
Besides, after what happened in the lunchroom you have a feeling your <<=setup.getNpcName("npc_manager","title")>> is expecting it...
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
Besides, well, <<=setup.getNpcName("npc_manager","formal")>> did say this sort of thing was your new uniform...
<<else>>
You squint at your slightly feminine outfit, maybe you're over-thinking it, it's just work, right?
<</if>>
<br><br>
[<<moveTo "company_lobby" "Head to work." 900>>]
<<elseif $scene.gymAttire>>
What you're wearing may be appropriate for the gym, but you don't feel like being seen outside in it!<br>
<</if>>
<<if $options.ezchange && $clothSetsInt.hasOwnProperty('preGym')>>
[<<moveTo "room_gym_lobby" "Change and head back to the lobby." 60 "<<useClothSetPop 'preGym'>>">>]<br>
<</if>>
[@@.link_locked;You are not appropriately attired to leave the gym.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: gym men's locker-room shower after workout
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = 'Not in the shower!'>>
<<include "cleanPlayer">>
<<if $options.fem>>
<<set $scene.id = 1>>
<<elseif $gym.lewd_male && $player.sec_style.sex.sex_man>>
<<set $scene.id = random(1,10)>>
<<else>>
<<set $scene.id = random(1,6)>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room Shower">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
You head into the showers to clean yourself off from your workout<<if $player.makeup.template != "">>. You take some care to avoid washing off your makeup<</if>>.<br>
<br>
<<switch $scene.id>>
<<case 1 2 3>>
Your shower passes uneventfully, <<if $options.fem>>with there being no one else in the open showers<<else>>nobody paying attention to you and you carefully avoiding looking at anyone else<</if>>.
<<case 4>>
As you're showering, you can't help but notice a pair of fit <<if $options.fem>>dudettes<<else>>dudes<</if>> washing each other on the other side of the tile-lined room. They're definitely having a bit of fun, making out a little as the sudsy water flows down their bodies, but it isn't particularly lewd, per se. You quickly look away before they catch you staring.
<<case 5>>
You can't help but notice that practically everyone else in the shower seems bigger than you. In both senses of the word, a sexy array of fit, well-hung, jacked <<men>> washing themselves all around your slender, dainty self...<br>
<br>
You quickly focus back on your scrubbing and try not to look around as you finish up, though you swear you spotted the glint of a chastity cage on one <<guy>>...
<<case 6>>
<<set _disableLeaveLink=true>>
You're scrubbing up when the slick soap slips out of your grasp, popping into the air and then skipping along the floor to stop at the feet of a <<man>> a metre or so away.<br>
<br>
Glancing down <<he>> smiles, picking it up and starting to hand it to you before pulling back with an even wider grin.<br>
<br>
<<printThought "Wait... was that an invitation?">><br>
<br>
<<He>> looks you up and down like <<he>>'s inspecting a slab of meat, and from <<his>> smile <<he>> likes what <<he>> sees.<br>
<br>
<<printThought "Oh <<getWordGod>>, it's like my life is a porno...">><br>
<br>
<<if ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (setup.getTotalValue("whoring") >= 5 || setup.getTotalValue("bimbofication") > 8 || setup.getTotalValue("humiliation") > 8)>>
[<<moveTo "room_gym_lockerroom_men_shower_soap_sex" "Smile and say yes..." 300 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;You're too embarrassed to possibly accept his offer.@@]<br>
<</if>>
<<if $fetish.get_raped && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
[<<moveTo "room_gym_lockerroom_men_shower_soap_sex" "Quickly shake your head." 300 "<<set $scene.accept=false>>">>]<br>
<<else>>
[<<moveTo "room_gym_lockerroom_men_shower_soap" "Quickly shake your head." 60>>]
<</if>>
<<case 7>>
As you're washing up, you hear a moan, glancing up to see a pair of <<if $options.fem>>dudettes<<else>>dudes<</if>> fucking against the far wall. Both fit, sculpted paragons of <<if $options.fem>>womanly<<else>>man<</if>> muscle one is bent over, both arms braced against the wall as <<his>> friend takes <<him>> from behind. Too wrapped up in their private lusty world you don't think they noticed you, but you quickly turn away, yet are unable to avoid stealing peeks out of the corner of your eye as they continue to fuck throughout your washing up.
<<case 8>>
<<if $gym.lewd_male && $fetish.piss && setup.getTotalValue("piss") >= 20 && setup.checkItemTypeWorn("plug")>>
<<set _disableLeaveLink=true>>
While showering someone comes up behind you to "help" scrub. They help wash you head to toe, including removing your plug for "cleaning," as they finish you off they start grinding against your rear, their cock sliding into your ass.<br>
<br>
"@@.generic_male1;Mmmm, you're so tight... all this water, you don't mind if I relieve myself, do you?@@" They ask, as they continue to thrust deep inside of you.<br>
<br>
[<<moveTo "event_lockerroom_piss_1" "Of course." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_lockerroom_piss_1" "No!" 120 "<<set $scene.accept=false>>">>]
<<else>>
Your showering passes without incident<<if $fetish.piss>>... though it feels like something could happen... if you were only ready for it<</if>>.
<</if>>
<<case 9>>
<<if $npc_swolebro.stage > 1>>
There are a cluster of swole <<if $options.fem>>dudettes<<else>>dudes<</if>> washing up and chatting with each other in the shower. Recognising you they throw up a wave of greeting.
<<else>>
There are a cluster of swole <<if $options.fem>>dudettes<<else>>dudes<</if>> washing up and chatting with each other in the shower. They're a bit intimidating and... did you just see one of them is wearing a chastity cage?<br>
<br>
You can't tell anymore from this angle, but you would swear you caught a glint of cock-encasing steel out of the corner of your eye.<br>
<br>
<<printThought "Weird, I must be seeing things">>
<</if>>
<<case 10>>
<<set _disableLeaveLink=true>>
You're in the middle of washing up when an attractive <<man>> walks up to the shower next to you.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
You can't help but stare at <<his>> glorious, mouth-watering <<getWordPenis>>.
<<else>>
You can't help but gawk at <<his>> big, beautiful <<getWordPenis>>.
<</if>>
Noticing your attention, <<he>> flashes a smile that could be an invitation...
<<else>>
<<if setup.getTotalValue("penis") > 10>>
You try not to look, but it's hard to ignore <<his>> big, sexy <<getWordPenis>>.
<<else>>
You try to focus on your own things, but you still catch a glance of <<his>> big <<getWordPenis>> that has you feeling funny.
<</if>>
Fortunately, it doesn't look like <<he>> noticed your attention.
<</if>>
<br><br>
<<if ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && (setup.getTotalValue("whoring") >= 5 || setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("humiliation") > 10)>>
[<<moveTo "room_gym_lockerroom_men_shower_soap_alt" "Drop the soap." 60>>]<br>
<<else>>
[@@.link_locked;You're too embarrassed to try making an invitation.@@]<br>
<</if>>
[<<moveTo "room_gym_lockerroom_men_post" "Just finish washing up return to the locker-room." 60>>]
<<default>>
ERROR: unexpected scene id: <<=$scene.id>>
<</switch>>
<br><br>
<<if !_disableLeaveLink>>
[<<moveTo "room_gym_lockerroom_men_post" "Back to the locker-room." 60>>]
<</if>>
</div>/*#
#desc: gym men's locker-room drop the soap
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room Shower">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
"@@.pc;Ooops@@" you state as you let the bar of soap slip out of your fingers to land on the floor.<br>
<br>
With a slight smile, you bend over slowly, wiggling your butt in invitation in the direction of your new friend.<br>
<br>
[<<moveTo "room_gym_lockerroom_men_shower_soap_sex" "Continue." 300 "<<set $scene.accept=true>>">>]
</div>/*#
#desc: gym men's locker-room get fucked for dropping the soap
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gym.lewd_male = true>>
<<if $scene.accept>>
<<applyExperience 'anal' 9 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 9 'very' $SEEN_STRANGER>>
<<applyExperience 'penis' 11 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 12 'very' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'anal' 9 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room Shower">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You're bent over as the <<man>> slides up behind you
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow'])>>
to grope your ass and slide two thick fingers in to warm up your willing hole.
<<else>>
groping your ass before sliding your plug free to be replaced by a pair of thick fingers.
<</if>>
<br><br>
"@@.generic_male1;Damn, you are already eager to take it like a slut.@@" <<He>> whispers in your ear as <<his>> fingers work against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. You just moan in assent, not having long to wait as you feel <<his>> fingers slide out and <<his>> cock slide in, <<his>> hands moving to your hips as you steady yourself against the wall lest you fall on the slick shower floor.<br>
<br>
<<He>>'s pounding away in your ass when another cock appears in front of you. You don't even bother to look up to see who it belongs to, hungrily sucking away as more <<men>> appear out of the mists of the steamy shower, your hands soon both occupied as you become the centre of an impromptu shower gang-bang.<br>
<br>
You lose count of how many loads you've taken, but it's at least half a dozen by the time you run out of suitors, your spent partners finishing up by giving you a VERY thorough scrubbing<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>> even going so far as to helpfully <<if $fetish.cum>>lock in their juices by sliding<<else>>slide<</if>> the plug back into your ass<</if>>.<br>
<br>
Feeling a bit weak in the knees you take a bow before heading for the locker-room to change.
<<else>>
You try to demur, but you don't have have much control as you are suddenly pressed against the wall of the shower, the <<man>>'s hot breath on your neck, <<his>> hot other thing pressed against your rear.<br>
<br>
"@@.generic_male1;See, That ain't gonna work for me — you come on like that, and well... it just ain't fair to a <<if $options.fem>>lass<<else>>fella<</if>> not to close the deal.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
You gasp as <<he>> pulls the plug out of your ass. You feel it bounce on the floor against your foot as <<he>> slides <<his>> cock in between your cheeks.<br>
<br>
<</if>>
With a strong thrust, <<he>> impales your rear hole. The flowing water hides your tears as <<he>> rapes you, pounding you up against the wall until <<he>> cums with a grunt and <<he>> lets you slide to the floor, <<his>> cum leaking out of your ass as <<he>> walks away.<br>
<br>
Waiting for your pounding heart to come back under control, you
<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
shove your plug back into your worn and used ass and
<</if>>
stagger back to your feet, trying your best to clean up before heading back to the locker-room, feeling dirty and used.
<</if>>
<br><br>
[<<moveTo "room_gym_lockerroom_men_post" "Back to the locker-room." 60>>]
</div>/*#
#desc: gym men's locker-room don't get fucked for dropping the soap
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Men's Locker-room Shower">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_showers.png">>
<div id="invframe" class="scrolltext">
Blushing at the offer you accept the slippery soap, but shake your head as you quietly return to scrubbing yourself clean. Your "helpful" new friend shrugs and walks away.<br>
<br>
[<<moveTo "room_gym_lockerroom_men_post" "Back to the locker-room." 60>>]
</div>/*#
#desc: examine advert for gym tournament
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.tournament < 1>>
<<set $npc_admin.flags.tournament = 1>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Dojo">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_dojo.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
"Calling all Bad Dudes and Dudettes — The tournament to see who's the raddest, baddest couple is back on Saturday mornings!" <br>
<br>
The advertisement practically shouts. Reading the details it seems that it's an interesting doubles format matching pairs against each other in a multi-fight battle to see which duo is the best. Each match is contested in 3 rounds — the two larger competitors matching up, then the lighter pair, then a tie-breaker round matching the losers of the first two rounds for "all the glory." In ultra-tiny microscope print below that there's some boiler-plate liability fine print, as well as a specific ban on any competitor with cybernetic enhancements.<br>
<br>
<<if $currentTasks.hasOwnProperty('task_gym_tournament') && !$currentTasks.task_gym_tournament.finished>>
<<switch $npc_admin.flags.tournament>>
<<case 2>>
"@@.npc_admin;I told you I'd take care of it, <<callPlayer "npc_admin">>, we're already signed up! Yeah, lookin' forward to kickin' some butt this weekend fo' sho'!@@"
<<case 3>>
"@@.npc_admin;You gonna show up this time? Nah, it's cool <<callPlayer "npc_admin">>, first fight jitters come to all of us. I'll get us signed up again and we'll take 'em by storm this weekend!@@"
<<case 4>>
"@@.npc_admin;Yeah, that was a tough match, but you've been training, right? I've got good feeling's about this weekend!@@"
<<case 5>>
<<default>>
ERROR: unexpected npc_admin.flags.tournament <<=$npc_admin.flags.tournament>>
<</switch>>
<<else>>
<<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>>
<<printThought 'Hmm... wonder if <<=setup.getNpcName("npc_admin","first")>> would be interested in pairing with me?'>>
<<else>>
<<printThought 'If only <<=setup.getNpcName("npc_admin","first")>> was still around... that might have been fun to enter with <<him npc_admin>> ...'>>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Change and head back to the gym." 60 "<<useClothSetPop 'martialartsclass'>> <<removeItem 'gi_pink'>><<removeItem $scene.belt>><<deleteItem 'gi_pink'>><<deleteItem $scene.belt>>">>]
</div>/*#
#desc: ask admin about martial arts tournament
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.tournament == 1>>
<<set $npc_admin.flags.tournament = 2>>
<</if>>
<<set $scene.signup = !$currentTasks.hasOwnProperty('task_gym_tournament') || $currentTasks.task_gym_tournament.finished && $npc_admin.flags.tournament < 6>>
<<if $scene.signup>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 6, 9, 0, false)>>
<<addTaskById 'task_gym_tournament' _tmpDate>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You mention the advertisement you saw at the gym for the pair's martial arts tournament on Saturday.<br>
<br>
<<if !$scene.signup>>
<<switch $npc_admin.flags.tournament>>
<<case 2>>
"@@.npc_admin;I told you I'd take care of it, <<callPlayer "npc_admin">>, we're already signed up! Yeah, lookin' forward to kickin' some butt this weekend fo' sho'!@@"
<<case 3>>
"@@.npc_admin;You gonna show up this time? Nah, it's cool <<callPlayer "npc_admin">>, first fight jitters come to all of us. I'll get us signed up again and we'll take 'em by storm this weekend!@@"
<<case 4>>
"@@.npc_admin;Yeah, that was a tough match, but you've been training, right? I've got good feeling's about this weekend!@@"
<<case 5>>
"@@.npc_admin;I can't believe how good <<=setup.getNpcName("npc_retention","formal")>> is, but I'm healed up and ready to take another shot at the crown!@@"
<<default>>
ERROR: unexpected npc_admin.flags.tournament <<=$npc_admin.flags.tournament>>
<</switch>>
<<else>>
<<switch $npc_admin.flags.tournament>>
<<case 2>>
"@@.npc_admin;Hey, yeah, I've been to those contests a couple times, some interesting match-ups and fun bouts...@@" <<he npc_admin>> trails off for a moment as <<he npc_admin>> puts things together. "@@.npc_admin;Oh shit, yeah, we could totally enter! Heh, that would be fun. Nothing motivates progression like a bit of competition! If you're interested I can totally get us registered.@@"
<<case 3>>
"@@.npc_admin;Don't you remember, <<callPlayer "npc_admin">>? We're already signed up... again! Remember to show up this time!@@"
<<case 4>>
"@@.npc_admin;Yeah, that was a tough break last time, but if you're down for trying again I'll be by your side! I'll take care of the arrangements, <<callPlayer "npc_admin">>!@@"
<<case 5>>
"@@.npc_admin;I can't believe how good <<=setup.getNpcName("npc_retention","formal")>> is, but I'm healed up and ready to take another shot at the crown!@@"
<<case 6>>
"@@.npc_admin;Yeah, that was a good time, wasn't it? We crushed that tourney! That said, well... with everything going on now though... well, I'm thinking we put a hold on coming back to defend the title, y'know?@@"
<<default>>
ERROR: unexpected npc_admin.flags.tournament <<=$npc_admin.flags.tournament>>
<</switch>>
<</if>>
<br><br>
[<<moveTo $scene.beforePhoneCallLocation "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: arrive for tournament
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fromGym>>
<<set $scene.rematchFights = 0>>
<<useClothSetPush "tmp">>
<<removeEverythingButUnderwear>>
<<addItemSet "fight_gear">>
<<wearItemSet "fight_gear">>
<<set $scene.puntChastity = $currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks.task_chastity_trial.finished && setup.hoursToDate($now, setup.getTaskDueDate('task_chastity_trial')) < 5>>
<<if $scene.puntChastity>>
<<postponeTask 'task_chastity_trial' 1>>
<</if>>
<</if>>
<</if>>
<<if $scene.fromGym>>
<<set $player.location to "Hard Pump Tournament">>
<<else>>
<<set $player.location to "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fromGym>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.fromGym>>
It's time for the weekend tournament and, after a quick final registration and check-in with <<=setup.getNpcName("npc_admin","first")>>, you get changed into designated fight attire and join <<him npc_admin>> to wait for the first match.<br>
<br>
<<if $scene.postponeTask>>
As you're doing your final warm-ups you get a text from <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> that <<he npc_sexstore_clerk>> will be unavailable for your scheduled appointment today, but to come by the same time tomorrow if you are ready to end the chastity trial.<br>
<br>
<</if>>
"@@.npc_admin;Lookin' sharp, <<callPlayer "npc_admin">>! Hope you're loosened up and ready, the first round is usually pretty gimme but that's no reason to get sloppy!@@"<br>
<br>
Bleachers have been put up near the gym's practice cage and you watch as your opponents are introduced — <<=setup.getNpcName('npc_swolebro', 'first')>> and <<=setup.getNpcName('npc_fit_bimbo', 'first')>>!<br>
<br>
The <<if $npc_swolebro.fem == $npc_admin.fem>><<boy npc_admin>>s<<else>>strongest of each pair<</if>> are up first and <<=setup.getNpcName("npc_admin","first")>> enters the cage to touch gloves and face off with <<his npc_admin>> almost equally swole, if slightly shorter, opponent.<br>
<br>
[<<moveTo "event_tournament_2" "Round 1, Fight!" 300>>]
<<else>>
You get a call from <<=setup.getNpcName("npc_admin","first")>>. "@@.npc_admin;Yo, where you at, <<callPlayer "npc_admin">>? The tournament is starting! Don't bother now, we're going to just have to forfeit, but I guess there's always next week...@@"<br>
<br>
<<He npc_admin>> hangs up.<br>
<br>
<<printThought "Dang, how did I forget that? Guess it's good <<he npc_admin>>'s so chill about the whole thing...">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: fail to arrive for tournament
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if $npc_admin.flags.tournament < 5>>
<<set $npc_admin.flags.tournament = 3>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_admin","first")>>. "@@.npc_admin;Yo, where you at, <<callPlayer "npc_admin">>? The tournament is starting! Don't bother now, we're going to just have to forfeit, but I guess there's always next week...@@"<br>
<br>
<<He npc_admin>> hangs up.<br>
<br>
<<printThought "Dang, how did I forget that? Guess it's good <<he npc_admin>>'s so chill about the whole thing...">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: admin vs. first opponent - gym bro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_swolebro', 'first')>> may be jacked, stacked and swole but... it's immediately apparent <<he npc_swolebro>> doesn't know how to use those muscles against anything that isn't an inert weight.<br>
<br>
Almost casually <<=setup.getNpcName("npc_admin","first")>> slips a punch thrown like a shot put before coming up with a grip around <<his npc_admin>> opponent's arm and neck, finishing the slam like it was a pro wrestling match. <<=setup.getNpcName('npc_swolebro', 'first')>> has the wind knocked out of <<him npc_swolebro>> and <<=setup.getNpcName("npc_admin","first")>> wastes no time getting the tap, <<=setup.getNpcName("npc_admin","first")>> having not even started to sweat.<br>
<br>
Your opponent seems to have missed the entire match checking her makeup, looking a bit startled that it's over as she puts her purse down next to the cage and heads in.<br>
<br>
<<printThought "Either she's the world's best actress... or she has just as little business being in here as her partner...">><br>
<br>
[<<moveTo "event_tournament_3" 'Take after <<=ps(setup.getNpcName("npc_admin","first"))>> lead and put her away gently.' 300 "<<set $scene.nice = true>>">>]<br>
[<<moveTo "event_tournament_3" "Don't take any chances, take her out fast and hard." 300 "<<set $scene.nice = false>>">>]
</div>/*#
#desc: you vs. first opponent - gym bimbo
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'martial_arts' 10 'skip' $EXPOSED>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_fit_bimbo","npc_fit_bimbo_gi")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_fit_bimbo', 'first')>> may have a body toned and tanned for the 'gram, but she has as little for you as her partner had for your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>>friend<<else>>bud<</if>>.<br>
<br>
Your opponent
<<if $scene.nice>>
tries to throw a picture perfect high kick... from the front cover of a boxercise class. Rushing in under the blow that was easily half a foot above your head, you catch one leg on your shoulder and kick out her other foot, taking her to the ground where you immediately slide to her back where she frantically taps before you even have an arm around her neck.
<<else>>
comes at you like she's starting a tae-bo tape and you punish her for it. Easily dodging her kick you respond with one of your own, blasting her standing leg out from under her as her foot lingers in the air. She yelps as she falls to the ground covering up in a panic as you rush in to finish the job.
<</if>>
<br><br>
"@@.npc_fit_bimbo;Oh no!, My hair!@@" She cries out in frustration as she quickly taps and the fight ends. "@@.npc_fit_bimbo;You can, like, fight and stuff! Maybe I should stick to bra and panties matches...@@"<br>
<br>
Victory secured in a clean sweep you meet back up with <<=setup.getNpcName("npc_admin","first")>> for some hydration as you get ready for your next opponent.<br>
<br>
"@@.npc_admin;Alright, that's the gimme match out of the way, next one's gonna be a bit more interesting,@@" <<he npc_admin>> states, nodding across the room where you recognise your opponents once again — it's <<=setup.getNpcName("npc_shopkeeper","first")>> and <<=setup.getNpcName("npc_sexstore_clerk","first")>> from the mall!<br>
<br>
Due to relative sizes, <<=setup.getNpcName("npc_shopkeeper","first")>> enters the cage first to go against <<=setup.getNpcName("npc_admin","first")>>, while you'll be taking on the lean clerk of <<printShopName 'mall_sexstore'>>, who is squinting without <<his npc_sexstore_clerk>> signature sunglasses.<br>
<br>
[<<moveTo "event_tournament_4" "Round 2, Fight!" 600>>]
</div>/*#
#desc: admin vs. 2nd opponent shopkeeper
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_admin","first")>> shows more caution, and <<=setup.getNpcName("npc_shopkeeper","first")>> moves surprisingly fast to make up for a height and reach disadvantage. Trying to defuse <<=ps(setup.getNpcName("npc_admin","first"))>> kicking game by taking it to the ground it quickly proves to be a bad idea as <<=setup.getNpcName("npc_admin","first")>> snatches up a kimura and gets the tap, the two opponents sharing a sporting bow before it's your turn.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> flashes you the "good luck" double thumbs up and you square up with <<=setup.getNpcName("npc_sexstore_clerk","first")>>, touching gloves as you nervously realise just how long <<his npc_sexstore_clerk>> arms are as the round starts.<br>
<br>
[<<moveTo "event_tournament_5" 'No messing around this time, <<=setup.getNpcName("npc_sexstore_clerk","first")>> looks a bit dangerous.' 300>>]
</div>/*#
#desc: you vs. 2nd opponent sexstore_clerk
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'martial_arts' 18 'terrible' $EXPOSED>>
<<applyExperience 'strength' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("martial_arts") > 15 || setup.getTotalValue("strength") > 15>>
<<if setup.getTotalValue("martial_arts") > 15>>
<<=setup.getNpcName("npc_sexstore_clerk","first")>> may have a height advantage but <<his npc_sexstore_clerk>> technique is a step behind your own. Baiting <<him npc_sexstore_clerk>> to lead, you give ground then fire back, initially beating <<him npc_sexstore_clerk>> to the punch with a sharp jab before finishing it by stepping in with a hard hook to the liver that sees <<him npc_sexstore_clerk>> crumple to the ground. The ref calls off the fight and hands you the victory.<br>
<br>
"@@.npc_sexstore_clerk;A terrible tragedy... to be cut down so swiftly...@@" <<he npc_sexstore_clerk>> groans as <<he npc_sexstore_clerk>> hobbles out of the cage and you rejoin your friend, starting to feel excited for the next match, that you might well have a chance of winning the whole thing...
<<elseif setup.getTotalValue("strength") > 15>>
<<=setup.getNpcName("npc_sexstore_clerk","first")>> has the advantage in size, but from the first clinch it's clear you have the strength advantage and you manage to muscle <<him npc_sexstore_clerk>> to the ground and control <<him npc_sexstore_clerk>> long enough for the ref to call things off.<br>
<br>
"@@.npc_sexstore_clerk;A well-fought battle, you sprightling!@@" <<=setup.getNpcName("npc_sexstore_clerk","first")>> congratulates as you shake hands after the fight.
<<else>>
ERROR: this should never happen
<</if>>
<br><br>
"@@.npc_admin;Great job out there, <<callPlayer "npc_admin">>!@@" <<=setup.getNpcName("npc_admin","first")>> says as <<he npc_admin>> praises you. "@@.npc_admin;Now rest up for your next opponent. Always be on your A-game so you know that you did your best in the ring.@@"<br>
<br>
Taking a short break after the fight you hydrate and rest for your next match up.<br>
<br>
[<<moveTo "event_tournament_7" 'On to round 3...' 900 "<<set $scene.advice=true>>">>]
<<else>>
A dizzying confusion of elbows and knees, <<=setup.getNpcName("npc_sexstore_clerk","first")>> uses <<his npc_sexstore_clerk>> long limbs to good effect, keeping you from establishing range as <<he npc_sexstore_clerk>> cruises to an easy decision victory.<br>
<br>
"@@.npc_sexstore_clerk;Nice attempt, but disappointing, you'll need to practice a lot more to match the likes of me.@@"<br>
<br>
Despite the loss it isn't over as, with your teams now one and one, you have a short rest break, and get ready for a match with <<=setup.getNpcName("npc_shopkeeper","first")>>.<br>
<br>
"@@.npc_admin;Alright, so you're giving up size, but you should have the speed advantage.@@" <<=setup.getNpcName("npc_admin","first")>> coaches as you drink some water and try to catch a second wind. "@@.npc_admin;Don't let her relax, but don't over-extend yourself either — you should have the advantage if the fight goes long so don't rush things, focus on avoiding damage and countering.@@"<br>
<br>
<<if setup.getTotalValue("dexterity") > 15>>
[<<moveTo "event_tournament_6_win" 'Follow <<his npc_admin>> advice.' 900 "<<set $scene.advice=true>>">>]<br>
<<else>>
[<<moveTo "event_tournament_6_lose" 'Follow <<his npc_admin>> advice.' 300 "<<set $scene.advice=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("strength") > 18>>
[<<moveTo "event_tournament_6_win" 'Ignore <<his npc_admin>> advice and meet things head on.' 300 "<<set $scene.advice=false>>">>]
<<else>>
[<<moveTo "event_tournament_6_lose" 'Ignore <<his npc_admin>> advice and meet things head on.' 300 "<<set $scene.advice=false>>">>]
<</if>>
<</if>>
</div><<if $scene.rematchFights == 2>>
Though you managed to win yet another tie-breaker match even your legendary cardio is nearing its limit.
<<elseif setup.getTotalValue("stamina") > 10>>
Having to fight an extra match to save your place in the tournament isn't ideal, but you have good cardio and are holding up alright, for now.
<<else>>
You're a bit winded from the extra match, but at least you won and you re-join <<=setup.getNpcName("npc_admin","first")>> to get ready for the next round.
<</if>>/*#
#desc: you vs. 2nd opponent tiebreaker: you win
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.rematchFights += 1>>
<<applyExperience 'martial_arts' 18 'terrible' $EXPOSED>>
<<if $scene.advice>>
<<applyExperience 'dexterity' 15 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'strength' 15 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.advice>>
Following <<=ps(setup.getNpcName("npc_admin","first"))>> recommendation you stay light on your toes as you move in and out, chipping away at <<=setup.getNpcName("npc_shopkeeper","first")>> with leg-kicks, teeps, and the occasional body shot, always circling away from danger as you point your way to a decision victory.<br>
<br>
Clearly winded when the final bell sounds <<=setup.getNpcName("npc_shopkeeper","first")>> is exhausted as she congratulates you on your win. "@@.npc_shopkeeper;Damn, but you're a nimble little bugger! Well fought!@@"
<<else>>
Ignoring <<=ps(setup.getNpcName("npc_admin","first"))>> recommendation you attempt to go strength for strength with your larger opponent. Seemingly welcoming the opportunity to grapple she doesn't even attempt to disengage... a decision she quickly regrets as, to her, and the audience's, surprise, you overpower her, closing hands around her waist and suplexing her to the ground. You may have ignored <<his npc_admin>> advice, but from top position you adhere to <<if $npc_admin.fem>>HER<<else>>HIS<</if>> game-plan, snatching the double wrist-lock control and getting an even faster tap with another kimura.<br>
<br>
Bouncing to her feet she shakes her head with a smile. "@@.npc_shopkeeper;Guess I need to work on my sub defence! But you're pretty damn strong for a sweet little thing!@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_admin","first")>> joins you in the cage to celebrate your victory and then lead you back to the locker-rooms to catch your breath for the next match.<br>
<br>
<<include "rematchComments">>
<br><br>
"@@.npc_admin;Good save, <<callPlayer "npc_admin">>. Let's hope we don't have to do any more tie-breaker rounds though, eh?@@"<br>
<br>
You nod, neither of you bringing up the almost certainty that, if there is another tie-breaker round, you'll be the one fighting it.<br>
<br>
[<<moveTo "event_tournament_7" 'On to round 3...' 300>>]
</div>/*#
#desc: you vs. 2nd opponent tiebreaker: npc_shopkeeper win
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'martial_arts' 15 'terrible' $EXPOSED>>
<<if $scene.advice>>
<<applyExperience 'dexterity' 15 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'strength' 15 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.advice>>
You try to follow <<=ps(setup.getNpcName("npc_admin","first"))>> advice, but you just aren't quite nimble enough to pull it off and it only takes a couple mistakes on your part before <<=setup.getNpcName("npc_shopkeeper","first")>> manages to get a hold of you and take you to the ground.<br>
<br>
Once on the floor her weight and strength are even more overwhelming and it isn't long before the ref waves things off as you find yourself turtling up in an inescapable position.<br>
<br>
The instant the ref stops the fight <<=setup.getNpcName("npc_shopkeeper","first")>> is back to her normal friendly self, hoisting you back to your feet and passing you off to <<=setup.getNpcName("npc_admin","first")>> as <<he npc_admin>> rushes in to help.<br>
<br>
"@@.npc_admin;Nice try, <<callPlayer "npc_admin">>, but sometimes even the best game-plans don't work out. Still, you got some good experience today, back to the gym next week and work on fixing what you did wrong.@@"
<<else>>
Ignoring <<=ps(setup.getNpcName("npc_admin","first"))>> recommendation you attempt to go strength for strength with your larger opponent. Seemingly welcoming the opportunity to grapple, she doesn't even attempt to disengage, instead accepting the clinch where she easily muscles you around and takes you to the floor where the ref soon waves things off as you find yourself turtling up, unable to escape.<br>
<br>
<<=setup.getNpcName("npc_shopkeeper","first")>> helps you back to your feet to show there's no hard feelings and you leave the cage to re-join your friend.<br>
<br>
"@@.npc_admin;Tough break, <<callPlayer "npc_admin">>. Shoulda stuck to the game plan still, good try, you went out there, and that deserves all the respect.@@"<br>
<</if>>
<br><br>
<<printThought "This tournament is tougher than I thought... looks like I need to spend more time training...">><br>
<br>
[<<moveTo "event_tournament_lose_1" 'Get changed and prepare to head home.' 300>>]
</div>/*#
#desc: 3rd opponent intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
Rehydrated and ready for another match, you and <<=setup.getNpcName("npc_admin","first")>> walk back out to a clearly excited crowd.<br>
<br>
Looking to the other side of the cage you almost do a double take, your opponents looking like quasi-twins — as if someone took one androgynous person and clicked "copy." <br>
<br>
Your opponents introduced as Tatsuo and Kenzie there's a brief commotion as their weights (and other significant fight stats) are revealed to be somehow identical, a coin-flip determining that Tatsuo will be the one to challenge <<=setup.getNpcName("npc_admin","first")>> while you take on <<if !$options.fem>>the more feminine <</if>>Kenzie.<br>
<br>
Both looking confident <<=setup.getNpcName("npc_admin","first")>> and Tatsuo enter the cage and bow before waiting for the match to commence.<br>
<br>
[<<moveTo "event_tournament_8" 'Round 3, FIGHT!' 600>>]
</div>/*#
#desc: admin vs. 3rd opponent Tatsuo
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
Tatsuo comes out fast and strong, with a kick-based fighting style that sees the fight being almost a pure karate match-up with neither <<=setup.getNpcName("npc_admin","first")>> nor <<his npc_admin>> opponent at all looking to take things to the ground.<br>
<br>
Though both combatants are clearly skilled, you can tell that <<=setup.getNpcName("npc_admin","first")>> is doing greater damage and you wince in sympathy knowing how hard even one of <<his npc_admin>> blocked kicks can hit.<br>
<br>
After a moment of separation Tatsuo flashes a tricky tornado kick as <<=setup.getNpcName("npc_admin","first")>> fires back with a devastating roundhouse that takes <<his npc_admin>> opponent off <<his>> feet and ends the match.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> helps <<his npc_admin>> fallen foe back to <<his>> feet and the two fighters exchange a <<if !$options.fem && !$npc_admin.fem>>classic bro <</if>>hug before the official winner is announced, and then it's your turn as you eye Kenzie. If they're as good a striker their partner, you're in for quite a fight on the feet.<br>
<br>
<<printThought "Maybe I should take it to the ground?">><br>
<br>
<<if setup.getTotalValue("martial_arts") > 18 && setup.getTotalValue("strength") > 13>>
[<<moveTo "event_tournament_9_win" 'Try to make it a wrestling match.' 600 "<<set $scene.wrestle=true>>">>]<br>
<<else>>
[<<moveTo "event_tournament_9_lose" 'Try to make it a wrestling match.' 600 "<<set $scene.wrestle=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("martial_arts") > 15 && setup.getTotalValue("dexterity") > 13>>
[<<moveTo "event_tournament_9_win" 'Keep it standing.' 600 "<<set $scene.wrestle=false>>">>]
<<else>>
[<<moveTo "event_tournament_9_lose" 'Keep it standing.' 600 "<<set $scene.wrestle=false>>">>]
<</if>>
</div>/*#
#desc: you vs. 3rd opponent Kenny - win
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'martial_arts' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.wrestle>>
After seeing the exhibition of kicking that was <<=setup.getNpcName("npc_admin","first")>> vs. Tatsuo you opt to take <<his>> partner Kenzie to the ground. Entering the clinch the two of you are soon pressed against the fence, fighting for position but, after a back and forth technical contest, you manage to break their grip and get deep underhooks, driving to the floor and moving directly into side control.<br>
<br>
Not letting up the pressure, you force Kenzie to turn away and pounce on their back, fighting the choke before transitioning into an armbar and with it, the tap.
<<else>>
Despite watching how proficient their partner was on the feet against <<=setup.getNpcName("npc_admin","first")>> you decide to keep it standing, punishing their attempts at takedowns as you dance out of their reach, eventually timing a perfect knee as they rush desperately in yet again to leave them in a pile in the centre of the cage. The ref calls the fight and you quickly kneel down to check on your fallen foe. Fortunately they're back on their feet a few moments later, with Tatsuo and Kenzie both congratulating you on the win while resolving to train even harder as they insist that "@@.generic_female2;Win or lose, all of our battles make us stronger!@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_admin","first")>> rushes the cage with a cheer, lifting you into the air and spinning around as you make it another step deeper into the tournament, returning once again to the locker-room to await your next match.<br>
<br>
[<<moveTo "event_tournament_10" 'Continue.' 300>>]
</div>/*#
#desc: you vs. 3rd opponent Kenny - lose
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'martial_arts' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.wrestle>>
After watching how good Tatsuo was on the feet in their match against <<=setup.getNpcName("npc_admin","first")>> you try to turn things into a grappling match... and quickly regret the decision. You don't know if they're both just fantastic all around, or what, but Kenzie eagerly engages with you, quickly flipping you to the ground and burying the throw. The wind knocked out of you from the hard impact you don't have a chance to even try to get to your feet before they've snatched one of your limbs and have you tapping to a tight arm-bar.
<<else>>
Despite watching Tatsuo's exhibition on the feet you try to keep it standing; unfortunately this quickly turns into a classic grappler vs. striker match-up... i.e.: Kenzie catches a kick, puts you on your ass and quickly sinks in a deep choke that has you frantically tapping and almost passing out.
<</if>>
<br><br>
The match may be over, but that just means you're on to the tie-breaker. You've barely dusted yourself off when Tatsuo is already back in the cage looking ready to fight. "@@.generic_male1;Get up. Let's go again...@@" They state and you soon find yourself facing off once again.<br>
<br>
<<if $scene.rematchFights > 0>>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
You've already fought one tie-breaker, but fortunately stamina is one of your forte's and you're feeling in good shape to keep things up, raising your hands and doing a little "bring it on" motion as you mouth "@@.pc;I can do this all day.@@"
<<else>>
Having already gone through one tie-breaker round you're getting a bit tired, but you focus on the match ahead of you, and hope that this is your final "bonus" match.
<</if>>
<br><br>
<<if setup.getTotalValue("martial_arts") > 15 && setup.getTotalValue("strength") > 13>>
[<<moveTo "event_tournament_9a_win" 'Try and take things to the ground.' 600 "<<set $scene.wrestle=true>>">>]<br>
<<else>>
[<<moveTo "event_tournament_9a_lose" 'Try and take things to the ground.' 600 "<<set $scene.wrestle=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("martial_arts") > 18 && setup.getTotalValue("dexterity") > 13>>
[<<moveTo "event_tournament_9a_win" 'Follow after <<=ps(setup.getNpcName("npc_admin","first"))>> example and keep it standing.' 600 "<<set $scene.wrestle=false>>">>]
<<else>>
[<<moveTo "event_tournament_9a_lose" 'Follow after <<=ps(setup.getNpcName("npc_admin","first"))>> and keep it standing.' 600 "<<set $scene.wrestle=false>>">>]
<</if>>
<<else>>
Having already fought one tie-breaker the prospect of another is just too much and you throw in the towel before things even start, exhausted. <<=setup.getNpcName("npc_admin","first")>> quickly appears at your side,
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend' 'friendswbenefits'>>
scooping you up in <<his npc_admin>> arms and carrying you off
<<case 'friend' ''>>
half carrying you
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
to the locker-room to get changed.<br>
<br>
"@@.npc_admin;You put up a good fight, <<callPlayer "npc_admin">>, but we'll get 'em next time.@@"<br>
<br>
[<<moveTo "event_tournament_lose_1" 'Get changed and prepare to head home.' 300>>]
<</if>>
<<else>>
You may have just fought, but you're feeling ready for the tie-breaker round as you consider your tactics.<br>
<br>
<<if setup.getTotalValue("martial_arts") > 15 && setup.getTotalValue("strength") > 13>>
[<<moveTo "event_tournament_9a_win" 'Try and take things to the ground.' 600 "<<set $scene.wrestle=true>>">>]<br>
<<else>>
[<<moveTo "event_tournament_9a_lose" 'Try and take things to the ground.' 600 "<<set $scene.wrestle=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("martial_arts") > 18 && setup.getTotalValue("dexterity") > 13>>
[<<moveTo "event_tournament_9a_win" 'Follow after <<=ps(setup.getNpcName("npc_admin","first"))>> example and keep it standing.' 600 "<<set $scene.wrestle=false>>">>]
<<else>>
[<<moveTo "event_tournament_9a_lose" 'Follow after <<=ps(setup.getNpcName("npc_admin","first"))>> and keep it standing.' 600 "<<set $scene.wrestle=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: you vs. 2nd opponent tiebreaker: Tatsuo win
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.rematchFights += 1>>
<<applyExperience 'martial_arts' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.wrestle>>
Wary of Tatsuo's kicking game, you time their attack and rush in for a takedown. Already on one leg Tatsuo tries to hop away but you turn the corner and bring them down, immediately dropping into attack their leg with a tight knee-bar that has them tapping quick.
<<else>>
Once again, Tatsuo comes out kicking and you meet them the same. Warring back and forth across the cage you mix in a little boxing as well, the two of you pinging around like a pair of rock 'em sock 'em robots. Eventually you start to press the advantage, their prior match weighing on them as their strikes come slower and lose a bit of their sting.<br>
<br>
You start to string longer combos together and it isn't much later that the ref calls the fight with Tatsuo trying to be game, but stumbling and all but out on their feet.
<</if>>
<br><br>
"@@.generic_male1;We really wore each other out... it wouldn't be strange if we both lost!@@" They state in congratulations before Kenzie appears to help them out of the cage.<br>
<br>
<<include "rematchComments">>
<br><br>
<<printThought "Really hope I don't need to do another one of those! This many fights is adding up!">><br>
<br>
[<<moveTo "event_tournament_10" 'Recover some before the next round...' 300>>]
</div>/*#
#desc: you vs. 2nd opponent tiebreaker: Tatsuo lose
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'martial_arts' 18 'skip' $EXPOSED>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.wrestle>>
Not wanting to mess around with Tatsuo's kicking game you try to take it to the ground quickly... unfortunately they turn out to be well prepared for this tactic, meeting your charge with some brutal strikes that plant you on your ass and leaving you staring up at the lights as the ref waves things off.
<<else>>
You try to go kick for kick with Tatsuo, but it's clear almost immediately that they're the better striker. Before long they've turned your thigh into hamburger, and as you stumble and fall to the ground the ref rushes in to stop the fight.
<</if>>
<br><br>
The match ends and <<=setup.getNpcName("npc_admin","first")>> is quickly at your side. Tatsuo and Kenzie appear over you as well, both bowing graciously... though Kenzie somewhat cockily informs you that "@@.generic_female2;Your fundamentals are all over the place! You need to go back to the training room!@@"<br>
<br>
"@@.npc_admin;Don't mind them,@@" <<=setup.getNpcName("npc_admin","first")>> assures you as <<he npc_admin>> helps you back to your feet. "@@.npc_admin;You did good today, just a bit more training and we'll get them next time...@@"<br>
<br>
[<<moveTo "event_tournament_lose_1" 'Get changed and prepare to head home.' 300>>]
</div>/*#
#desc: 4th opponent nuns intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi") setup.charImage("npc_nun_constance","npc_nun_constance_battle") setup.charImage("npc_nun_patience","npc_nun_patience_battle")>>
<div id="invframe" class="scrolltext">
"@@.npc_admin;That was beautiful, <<callPlayer "npc_admin">>! We keep this up and we're gonna win this thing, but stay focused! I did some checking are this next pair is a bit of a weird one... there are rumblings about them being "blessed..." whatever that exactly means.@@"<br>
<br>
You find out what it means a moment later when a pair of
<<if ($npc_priest.flags.talk.dominatrix || $player.flags.church.activities.group_prayer > 0) && ($npc_priest.flags.talk.sm || $player.flags.church.activities.prayer > 0)>>
familiar nuns step forth.
<<elseif $player.flags.church.level > 1>>
women step forth... their seductive, yet holy-inspired garb marking them as acolytes of the Church of the Goddess.
<<else>>
women step forth, looking like no fighters you've ever seen.
<</if>>
<br><br>
"@@.generic_female1;Put your hands together, and not just in prayer for <<=setup.getNpcName('npc_nun_constance', 'formal')>> and <<=setup.getNpcName('npc_nun_patience', 'formal')>>! Here to lay hands and show off the kick of heaven as they fight for the Goddess!@@"<br>
<br>
<<=setup.getNpcName('npc_nun_constance', 'formal')>> is in the lead, looking shredded and dominant with boxing gloves confirming her style as "laying hands." Behind her is <<=setup.getNpcName('npc_nun_patience', 'formal')>>, cutting an even more eye-catching figure as she follows on a leash, bondage straps crossing her torso and holding her hands behind her back... with her mouth-guard looking more like a gag than a safety device and the flowing fabric of her reinforced wimple extending down to her waist.<br>
<br>
Stepping into the cage you expect them to change out of their walk-out attire... yet all that happens is <<=setup.getNpcName('npc_nun_constance', 'formal')>> unclips her partner/slave's leash and the two women strike a pose, <<=setup.getNpcName('npc_nun_constance', 'formal')>> looking every inch the confident boxer while <<=setup.getNpcName('npc_nun_patience', 'formal')>> does a spinning high-kick that takes your breath away... especially after you notice she is gracefully perched fully en pointe in modified kickboxing boots.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> glances at you and shrugs. "@@.npc_admin;They signed up... I guess they're up for it...@@"<br>
<br>
[<<moveTo "event_tournament_11" 'Round 4!' 300>>]
</div>/*#
#desc: admin vs. 4th opponent nuns
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi") setup.charImage("npc_nun_constance","npc_nun_constance_battle") setup.charImage("npc_nun_patience","npc_nun_patience_battle")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_nun_patience', 'formal')>> exit the cage as you watch <<=setup.getNpcName("npc_admin","first")>> square up with his opponent.<br>
<br>
There is a respectful touching of gloves and then the fight is on, <<=setup.getNpcName('npc_nun_constance', 'formal')>> applying relentless pressure as she moves in close to stifle <<=ps(setup.getNpcName("npc_admin","first"))>> kicking game while digging in with brutal body shots that you can hear from across the room as your friend grimaces.<br>
<br>
After several failed attempts to circle out to a range where <<he npc_admin>> can use <<his npc_admin>> height and longer limbs to better effect <<=setup.getNpcName("npc_admin","first")>> changes tactics, pressing forward <<him npc_admin>>self and securing a clinch as <<he npc_admin>> takes <<=setup.getNpcName('npc_nun_constance', 'formal')>> off her feet and planting her on the mat.<br>
<br>
Even from her back <<=setup.getNpcName('npc_nun_constance', 'formal')>> shows no shortage of confidence as she attempts to scramble and punch her way back to the feet... only for <<=setup.getNpcName("npc_admin","first")>> to secure an even better grip and return her to the mat, slipping a beefy arm around her neck as <<=setup.getNpcName("npc_admin","first")>> tightens in an arm triangle that sees the boxer tap just before she passes out.<br>
<br>
After helping <<=setup.getNpcName('npc_nun_constance', 'formal')>> back to her feet <<=setup.getNpcName("npc_admin","first")>> congratulates <<his npc_admin>> foe and then it's your turn, <<=setup.getNpcName('npc_nun_patience', 'formal')>> doing a full flip into the cage before bouncing delicately on her toes as she waits for the bell.<br>
<br>
<<printThought "Okay... her arms are still bound, so this is going to be a weird one, I'm not even sure what the best tactic is for this situation...">><br>
<br>
[<<moveTo "event_tournament_12_lose" 'Her arms are off the table... how about a leg lock?' 600 "<<set $scene.stand=false>>">>]<br>
[<<moveTo "event_tournament_12_win" "Without arms she's sure to have trouble defending chokes." 600>>]<br>
[<<moveTo "event_tournament_12_lose" "Keep it standing." 600 "<<set $scene.stand=true>>">>]<br>
</div>/*#
#desc: you vs. 4th opponent nuns choke npc_nun_patience
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi") setup.charImage("npc_nun_constance","npc_nun_constance_battle") setup.charImage("npc_nun_patience","npc_nun_patience_battle")>>
<div id="invframe" class="scrolltext">
You decide that anyone who is willing to fight without the use of their arms probably has a plan, an assessment confirmed by the way <<=setup.getNpcName('npc_nun_patience', 'formal')>> all but dances around the cage, peppering you with stinging kicks until you manage to let one ride up your leg and lift it high for a single leg.<br>
<br>
Even in this position she seems hardly perturbed, retaining her balance even as you raise her leg up into an almost full splits... but her attempt at a spinning counter-kick while you still have ahold of her ankle proves her doom as you drive her to the ground and scramble to her back.<br>
<br>
<<=setup.getNpcName('npc_nun_patience', 'formal')>> may be off her feet, but she is still fast and dangerous, not just impervious to pain or discomfort, but seemingly excited by such as you try to keep her from spinning out of you grasp.<br>
<br>
<<if $npc_priest.flags.talk.sm > 0>>
<<printThought "Right... her chosen focus was on penitence... so it seems like she's almost a pure masochist.">><br>
<br>
<</if>>
After significantly more trouble than you would have thought possible wrestling a venus de milo you manage to sink in a rear naked choke... though even then she scrambles to the end, and you quickly release the hold as she goes limp and the referee rushes in.<br>
<br>
Mere moments later <<=setup.getNpcName('npc_nun_patience', 'formal')>> is springing back to her feet, taking a moment to glance towards <<=setup.getNpcName('npc_nun_constance', 'formal')>> to confirm that the fight is, indeed, over before gracefully bowing to you, as graceful in defeat as she was in combat.<br>
<br>
The nuns share a kiss that sees <<=ps(setup.getNpcName('npc_nun_patience', 'formal'))>> leash returned before they depart the cage. You take a deep breath and try to clear your head of the strange contest and get ready for your final opponents...<br>
<br>
[<<moveTo "event_tournament_13" 'Final round!' 300>>]
</div>/*#
#desc: you vs. 4th opponent nuns lose to npc_nun_patience
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi") setup.charImage("npc_nun_constance","npc_nun_constance_battle") setup.charImage("npc_nun_patience","npc_nun_patience_battle")>>
<div id="invframe" class="scrolltext">
<<if $scene.stand>>
Keeping it standing rapidly proves a VERY big mistake as dances in and out of reach with ease, her kicks shooting out like lightning.<br>
<br>
Even when you manage to land a blow it only seems to invigorate her as you once swear you heard her moan from the impact.<br>
<br>
<<if $npc_priest.flags.talk.sm > 0>>
<<printThought "Right... her chosen focus was on penitence... so it seems like she's almost a pure masochist.">><br>
<br>
<</if>>
<<=setup.getNpcName('npc_nun_patience', 'formal')>> continues to get stronger as the battle wears on, kicking you around the cage before finishing off with a wall-running "showtime" kick that sends you to the ground and has the referee waving off the match.
<<else>>
You attempt to show patience of your own as you measure your distance and try to time <<=ps(setup.getNpcName('npc_nun_patience', 'formal'))>> dynamic movement and flurries of kicks.<br>
<br>
Though you don't get through un-scathed you manage to finally time your shot, rolling under an effortless high-kick to entangle <<=ps(setup.getNpcName('npc_nun_patience', 'formal'))>> other leg. Even in this precarious position she manages to remain vertical for a few moments, the rules-set's restriction on stomps probably your only saving grace as you lock in an achilles lock... only for her not to tap.<br>
<br>
Seemingly impervious to pain she spins and flips around faster than you can react, slipping free of your hold and then punishing your efforts with a soccer kick to the midsection as you try to return to your feet that literally lifts you into the air and leaves you crumpled and gasping for breath as the referee rushes forward to wave off the match.
<</if>>
<br><br>
<<=setup.getNpcName("npc_admin","first")>> rushes back into the cage to help you to your feet. Though the wind was knocked out of you for a moment you recover quickly... which is a good thing, because now you're going to have to face off with <<=setup.getNpcName('npc_nun_constance', 'formal')>>.<br>
<br>
The cage clears and you stare down your opponent, dominance flaring in her eyes as you think back to her aggressive ring-dominating pressure style against <<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
<<if setup.getTotalValue("dominance") > setup.getTotalValue("submission") && setup.getTotalValue("dominance") > 15 || setup.getTotalValue("dominance") >= 20>>
[<<moveTo "event_tournament_12a_win" "Don't bow to her pressure, fight fire with fire." 300>>]<br>
<<else>>
[<<moveTo "event_tournament_12a_lose" "Try to fight pressure with pressure." 300 "<<set $scene.pressure=true>>">>]<br>
<</if>>
[<<moveTo "event_tournament_12a_lose" 'Yield the initiative and try to work on the counter.' 300 "<<set $scene.pressure=false>>">>]
</div>/*#
#desc: you vs. 4th opponent tiebreaker nuns out-pressure npc_nun_constance
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi") setup.charImage("npc_nun_constance","npc_nun_constance_battle") setup.charImage("npc_nun_patience","npc_nun_patience_battle")>>
<div id="invframe" class="scrolltext">
You meet your opponents gaze without flinching, recognising immediately that, lacking <<=setup.getNpcName('npc_admin', 'first')>> size advantage, your only chance is to keep the intimidating nun on her back foot and prevent her from establishing rhythm and implement her game.<br>
<br>
The effort puts your martial skills and your dominance to the test as you enter a pitched battle both physical and mental... but, aided by a narrow edge in speed, you push her back, cutting the ring, mixing in kicks to imbalance her stance as you force her onto the back-foot, riding the razors edge with every strike lest she manage to get the space to press back.<br>
<br>
After a harrowing round it goes to the judges score-cards, with you claiming the unanimous victory as your opponent claps and tilts her head in acknowledgement.<br>
<br>
Another round over, the nuns share a kiss that sees <<=ps(setup.getNpcName('npc_nun_patience', 'formal'))>> leash returned before they depart the cage. You take a deep breath and try to clear your head of the strange contest and get ready for your final opponents...<br>
<br>
[<<moveTo "event_tournament_13" 'Final round!' 300>>]
</div>/*#
#desc: you vs. 4th opponent tiebreaker nuns lose to npc_nun_constance
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi") setup.charImage("npc_nun_constance","npc_nun_constance_battle") setup.charImage("npc_nun_patience","npc_nun_patience_battle")>>
<div id="invframe" class="scrolltext">
<<if $scene.pressure>>
You try to pressure <<=setup.getNpcName("npc_nun_constance", "formal")>> but she
<<if setup.getTotalValue("dominance") > 10>>
turns aside your attempt at control
<<else>>
All but laughs at your
<<if setup.getTotalValue("dominance") > 5>>
pedestrian
<<elseif setup.getTotalValue("dominance") > 5>>
amateur
<<else>>
feeble
<</if>>
efforts.
<</if>>
With little more than a glance and a couple of feints she has you on the retreat, corralling you into the cage and pummeling your body with a flurry of hooks until you drop to a knee and the referee steps in to call the round.
<<else>>
You try to handle <<=setup.getNpcName("npc_nun_constance", "formal")>> by working the counters... but all you get for it is pain as she claims the centre of the cage and all but pushes you around, corralling you with punches, having you swing wildly to counter feints and making you look all but a fool until she lines up a solid blow to the solar plexus that folds you in half and sends you to your knees as she walks away, already raising a hand in victory as the referee stops the already over fight.
<</if>>
<br><br>
<<=setup.getNpcName("npc_nun_constance", "formal")>> is already offering you a hand and helping you back to your feet before <<=setup.getNpcName("npc_admin","first")>> makes it back into the cage.<br>
<br>
"@@.npc_nun_constance;You fought well, sister... but today the Goddess was with me... perhaps some other day, she will be with you.@@"<br>
<br>
You nod as <<=setup.getNpcName("npc_admin","first")>> steps in for you to lean against <<him npc_admin>> as the two of you exit the cage.<br>
<br>
[<<moveTo "event_tournament_lose_1" 'Get changed and prepare to head home.' 300>>]
</div>/*#
#desc: final opponent intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
Your heart beats in anticipation of the finals, it's been a tough road to this point but <<=setup.getNpcName("npc_admin","first")>> has been all but unbeatable and you, well... you just hope you've trained hard enough to claim the prize.<br>
<br>
After a short re-introduction to a crowd that is by now well familiar with the two of you, attention turns to a temporary curtain as you are <<if $npc_admin.flags.tournament == 5>> once again <</if>>introduced to "@@.generic_male2;Your defending champions... <<=setup.getNpcName("npc_retention","formal")>> and <<=setup.getNpcName("npc_guard","formal")>>!@@"<br>
<br>
<<if $npc_admin.flags.tournament < 5>>
<<if $npc_ai.flags.missions.connection>>
You're a bit surprised, not just to see one of <<=ps(setup.getNpcName("npc_manager","formal"))>> subordinates, but that <<his npc_retention>> partner is the Amazonian security guard who fisted you when you were smuggling <<=setup.getNpcName("npc_ai","first")>> out of the building!
<<else>>
You're a bit surprised, not just to see one of <<=ps(setup.getNpcName("npc_manager","formal"))>> subordinates. You don't recognise the Amazon next to <<him npc_retention>> by name, but you vaguely recall seeing her at the office dressed in the no-nonsense uniform of one of the companies intimidating security force.
<</if>>
<br><br>
You do a double take at her obvious cybernetics in light of the rules... but nobody else seems to be perturbed and you decide it's best to just focus on the fight ahead.<br>
<br>
From across the room <<=setup.getNpcName("npc_retention","formal")>> grins with quiet menace that has you shiver, glad that <<=setup.getNpcName("npc_admin","first")>> will be the one to take <<him npc_retention>> on... not that you're likely to have anything short of a challenging match up against <<=setup.getNpcName("npc_guard","formal")>>.<br>
<br>
You glance over at <<=setup.getNpcName("npc_admin","first")>> who looks momentarily puzzled. "@@.npc_admin;Huh, I heard about <<him npc_retention>> in the war, <<if $npc_admin.flags.know_landlord>>I think <<=setup.getNpcName("npc_landlord","first")>> had some history with <<him npc_retention>>,<<else>>heard rumours about history between <<him npc_retention>> and my CO...<</if>> never found out the details though.@@"
<<else>>
Once again you find yourself looking across at <<=setup.getNpcName("npc_retention","formal")>> and <<his npc_retention>> <<if $npc_admin.fem>>own <</if>>Amazonian partner. <<He npc_retention>> grins menacingly as <<he npc_retention>> walks to the cage, flexing and pacing as <<he npc_retention>> stares down <<=setup.getNpcName("npc_admin","first")>>.
<</if>>
<br><br>
[<<moveTo "event_tournament_14" 'Round 5...' 300>>]
</div>/*#
#desc: admin vs. final opponent hr_retention
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.admin_win = $npc_retention.flags.cybernetic>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $npc_retention.flags.cybernetic>>
Armed with knowledge of <<=ps(setup.getNpcName("npc_retention","formal"))>> cheating ways <<=setup.getNpcName("npc_admin","first")>> keeps things at range with kicks, avoiding damage and forcing <<=setup.getNpcName("npc_retention","formal")>> to rush to cover the additional ground... only to circle away whenever the security chief gets close.<br>
<br>
Though <<=setup.getNpcName("npc_admin","first")>> manages <<his npc_admin>> positioning well, the cage is only so large and, eventually, <<=setup.getNpcName("npc_retention","formal")>> is able to force <<his npc_retention>> way into the clinch, locking hands around <<=ps(setup.getNpcName("npc_admin","first"))>> wide torso. <<=setup.getNpcName("npc_admin","first")>> doesn't even waste a moment in fighting the grips, instead firing back with hellacious elbows to force a separation.<br>
<br>
You can tell <<=setup.getNpcName("npc_retention","formal")>> is getting frustrated, but <<=setup.getNpcName("npc_admin","first")>> sticks rigidly to the game-plan, never over-committing or allowing <<=setup.getNpcName("npc_retention","formal")>> to set the pace.<br>
<br>
After yet another separation that sees <<=setup.getNpcName("npc_retention","formal")>> backing towards the cage <<=setup.getNpcName("npc_admin","first")>> senses blood, cornering <<his npc_admin>> opponent against the fence to land a bone-crushing flurry of body shots before finishing it with a uppercut that literally lifts <<=setup.getNpcName("npc_retention","formal")>> off the ground, the ref rushing in as <<=setup.getNpcName("npc_retention","formal")>> falls limp.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> raises <<his npc_admin>> hand in victory and you rush the cage in excitement, throwing your arms around <<him npc_admin>> in celebration before remembering that you still have a match of your own to deal with...<br>
<br>
Taking a moment to check on her boss <<=setup.getNpcName("npc_guard","formal")>> looks up at you in determination, the cage quickly clearing out until it's just you, her, and the ref.<br>
<br>
[<<moveTo "event_tournament_16" 'Time to fight...' 300>>]
<<else>>
<<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_retention","formal")>> seem very evenly matched and you're on the edge of your seat, wincing with every heavy blow as they wage a war back and forth in the cage.<br>
<br>
<<=ps(setup.getNpcName("npc_retention","formal"))>> most dangerous weapon seems to be a left cross, the heavy blow shooting out lightning fast after each time <<he npc_retention>> lands a jab.<br>
<br>
Another hard one-two wobbles <<=setup.getNpcName("npc_admin","first")>>. <<=setup.getNpcName("npc_admin","first")>> goes for a clinch, the two of them crashing against the cage where <<=setup.getNpcName("npc_retention","formal")>> hits a slick reversal leaving <<=setup.getNpcName("npc_admin","first")>> with <<his npc_admin>> back pressed against the fence.<br>
<br>
Still trying to recover from the hard shot, your friend is working to fight <<his npc_admin>> way back out as, for a moment <<=setup.getNpcName("npc_retention","formal")>> is looking directly at you...<br>
<br>
<<if (setup.getTotalValue("humiliation") > 10 && setup.getTotalValue("bimbofication") > 10) || setup.getTotalValue("bimbofication") > 15>>
<<printThought "Could I, like distract <<him npc_retention>>?">><br>
<br>
[<<moveTo "event_tournament_15" 'Flash <<him npc_retention>>!' 300 "<<set $scene.flash=true>>">>]<br>
[<<moveTo "event_tournament_15" 'No, that would be, like, cheating!' 300 "<<set $scene.flash=false>>">>]<br>
<<elseif setup.getTotalValue("humiliation") > 15>>
<<printThought "Do I dare try and distract <<him npc_retention>>?">><br>
<br>
[<<moveTo "event_tournament_15" 'Flash <<him npc_retention>>!' 300 "<<set $scene.flash=true>>">>]<br>
[<<moveTo "event_tournament_15" 'Sit still.' 300 "<<set $scene.flash=false>>">>]
<<else>>
[<<moveTo "event_tournament_15" 'Continue.' 300 "<<set $scene.flash=false>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: admin vs. final opponent hr_retention player action
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.admin_win = $scene.flash>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.flash>>
Whipping open your gi, you give <<=setup.getNpcName("npc_retention","formal")>> a full view. It may not technically be anything <<he npc_retention>> hasn't seen before, but it does the trick, <<his npc_retention>> momentary distraction giving <<=setup.getNpcName("npc_admin","first")>> just the opening <<he npc_admin>> needed to power <<=setup.getNpcName("npc_retention","formal")>> into the air and slam <<him npc_retention>> down with authority.<br>
<br>
Momentarily dazed <<=setup.getNpcName("npc_retention","formal")>> doesn't even manage to cover up before <<=setup.getNpcName("npc_admin","first")>> is pounding <<him npc_retention>> out, the ref rushing in to wave off the match.<br>
<br>
You catch a glance from <<=setup.getNpcName("npc_admin","first")>> that tells you <<he npc_admin>> knows you interfered... and <<he npc_admin>> isn't happy about it, but there's no time for that now as you step into the cage for your match — <<=setup.getNpcName("npc_guard","formal")>> staring across at you looking ready to destroy something.
<<else>>
The moment passes as the two behemoths toil against the cage; unfortunately for your team, however, <<=setup.getNpcName("npc_retention","formal")>> has a grip like a vice, heaving <<=setup.getNpcName("npc_admin","first")>> into the air and slamming <<him npc_admin>> to the ground, the entire cage shaking from the impact.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> scrambles hard and fast but <<=setup.getNpcName("npc_retention","formal")>> snatches up an arm, <<his npc_retention>> seemingly unbreakable grip leading in to a nasty americana finish.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> is still massaging <<his npc_admin>> shoulder as <<he npc_admin>> gets back to <<his npc_admin>> feet and the winner is announced. You gulp nervously — in every other round <<=setup.getNpcName("npc_admin","first")>> put your team up by one, now it's all up to you if you're going to have a shot at victory.<br>
<br>
Sharing a few words with her boss before <<he npc_retention>> leaves the cage <<=setup.getNpcName("npc_guard","formal")>> stands across from you looking ready to destroy something.
<</if>>
<br><br>
[<<moveTo "event_tournament_16" 'Time to fight...' 300>>]
</div>/*#
#desc: player vs. final opponent security guard
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.win = setup.getTotalValue("martial_arts") >= 19 && setup.getTotalValue("stamina") > 15 && setup.getTotalValue("strength") > 15 && setup.getTotalValue("dexterity") > 15>>
<<set $scene.skillLow = setup.getTotalValue("martial_arts") < 19>>
<<if $scene.win && $scene.admin_win>>
<<setThreshold 'martial_arts' 'martial_arts' 'final'>>
<<addItem "gym_champion_belt">>
<<wearItem "gym_champion_belt" true>>
<<else>>
<<set $npc_admin.flags.tournament = 5>>
<</if>>
<<applyExperience 'martial_arts' 20 'skip' $EXPOSED>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
Your opponent has the advantage in size, but seems cautious, the two of you circling for the better part of a minute with little more than a feint or a non-committal jab.<br>
<br>
You ignore the restless crowd as you look for an opening, going into an almost Zen state when you see your spot. You leap in for a quick combo before slipping out to the side before your slightly slower opponent can respond. Emboldened by the minor "first blood" you surrender ground and then step in again, meeting her advance and turning her momentum into a throw that sends her sailing over your body and the two of you scrambling on the floor. You try to assert position and she grabs your neck, a tight guillotine that you barely neutralise by clearing her legs.<br>
<br>
Despite your dominant position, she holds on, trying to choke you out with pure arm strength as you respond by driving your shoulder into her chin. You feel her grip finally give out and you pull away. Your neck is sore but the fight isn't over as she tries to roll away back to her feet. You can't stop her from moving, but you can stay on top. You stick to her and force her to carry your weight, continuing to pepper her with shots as she rises only for you to drag her back to the ground. Not giving her any space you keep up a relentless pace, staying too close for her to unleash anything with power and dropping her back to the mat or sneaking in a knee or elbow whenever there's an opening.<br>
<br>
As the round rolls on she starts to slow even more, eventually driving in for a desperation takedown. You counter the sloppy single leg directly into a triangle, your thighs squeezing tight and forcing her to tap.<br>
<br>
<<if !$scene.admin_win>>
As euphoric as you are by your win the excitement is dampened a few moments later as you learn that <<=setup.getNpcName("npc_retention","formal")>> has suffered a minor injury and will not be able to fight the tie-breaker round. Looking a bit beat up <<him npc_admin>>self <<=setup.getNpcName("npc_admin","first")>> appears almost relieved... even if "champion's advantage" means that the title will remain where it is... for now.<br>
<br>
[<<moveTo "event_tournament_lose_1" 'Get changed and prepare to head home.' 300>>]
<<else>>
As the ref calls the fight a wave of euphoria washes over you, you've won!<br>
<br>
Helped to your feet you find yourself suddenly lifted into the air, <<=setup.getNpcName("npc_admin","first")>> parades you around the cage as the crowd cheers and the championship belts are wrapped around your waists.<br>
<br>
Out of breath with excitement you don't even remember your post-fight interview, merely accepting your prize before
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
being carried off by your <<boy npc_admin>>friend to celebrate.
<<case 'friendswbenefits'>>
<<=setup.getNpcName("npc_admin","first")>> carries you off to celebrate.
<<case 'friend' ''>>
<<=setup.getNpcName("npc_admin","first")>> carries you out of the cage.
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<br><br>
[<<moveTo "event_tournament_win_1" 'Continue.' 300>>]
<</if>>
<<else>>
<<if $scene.skillLow && setup.getTotalValue("stamina") <= 15 && setup.getTotalValue("strength") <= 15 && setup.getTotalValue("dexterity") <= 15>>
Stronger, faster, more nimble and with better technique <<=setup.getNpcName("npc_guard","formal")>> dominates the fight,
<<elseif !$scene.skillLow>>
With your technique seemingly evenly matched <<=ps(setup.getNpcName("npc_guard","formal"))>> greater athleticism proves the difference, her <<if setup.getTotalValue("strength") <= 15>>strength advantage<<elseif setup.getTotalValue("dexterity") <= 15>>greater agility<<elseif setup.getTotalValue("stamina") <= 15>>superior stamina<<else>>ERROR: unexpected<</if>> proving the decider as she wears you down on the feet before countering a takedown with a deep, tight guillotine choke that has you tapping out and rubbing your neck.
<<else>>
As you and your opponent circle and feint you can tell that she has the slight edge in technique, seeming a step ahead of whatever you try to do.
<<if setup.getTotalValue("strength") <= 15 || setup.getTotalValue("dexterity") <= 15 || setup.getTotalValue("stamina") <= 15>>
As if that wasn't bad enough she also seems to hold the edge in <<if setup.getTotalValue("strength") <= 15>>strength<<elseif setup.getTotalValue("dexterity") <= 15>>speed<<elseif setup.getTotalValue("stamina") <= 15>>stamina<</if>>, as well as size, and she uses it all to grind out a clear-cut decision win.
<<else>>
Despite her size advantage you feel like you have her matched everywhere else, matching her strength, speed and stamina, but the technique wins out and she manages to come to a slim, but definitive, win on points.
<</if>>
<</if>>
<br><br>
<<if !$scene.admin_win>>
Your loss makes it a clean sweep. "@@.npc_admin;At least we made it to the finals?@@" <<=setup.getNpcName("npc_admin","first")>> states as <<he npc_admin>> tries to put on a brave face for your losers walk of shame back to the locker-room.<br>
<br>
[<<moveTo "event_tournament_lose_1" 'Get changed and prepare to head home.' 300>>]
<<else>>
As if things weren't bad enough already you have only a few minutes in the back to recover before you're heading back to the cage to face off with <<=setup.getNpcName("npc_retention","formal")>> for the final tiebreaker.<br>
<br>
[<<moveTo "event_tournament_17" 'Final round... fight!' 300>>]
<</if>>
<</if>>
</div>/*#
#desc: player vs. final opponent tiebreaker npc_retention
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
Coming off your other loss you have no chance against <<=setup.getNpcName("npc_retention","formal")>>. Almost as inhumanly strong as <<=setup.getNpcName("npc_admin","first")>> <<he npc_retention>> literally manhandles you, tapping you out with, of all things, a hammerlock submission as <<he npc_retention>> grinds your face into the matt.<br>
<br>
"@@.npc_retention;Silly <<if $fetish.sissy>>sissy<<else>>girl<</if>>. You never had a chance. Better you stick to desk work rather than risk that pretty face in the cage.@@"<br>
<br>
Sore and depressed by your dual losses you and <<=setup.getNpcName("npc_admin","first")>> return to the locker-rooms.<br>
<br>
[<<moveTo "event_tournament_lose_1" 'Get changed and prepare to head home.' 300>>]
</div>/*#
#desc: gym tournament lose
#status: RELEASED 0.8.8.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.tournament < 5>>
<<set $npc_admin.flags.tournament = 4>>
<</if>>
<<removeItemSet "fight_gear">>
<<deleteItemSet "fight_gear">>
<<useClothSetPop 'tmp'>>
<<include "cleanPlayer">>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_desk.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
You change out of your fight outfit and take a quick shower, the hot water quite welcome washing over your sore body.<br>
<br>
Back in your street clothes you step out of the locker-room to find <<=setup.getNpcName("npc_admin","first")>> waiting for you in the gym lobby.<br>
<br>
"@@.npc_admin;You alright? That was a pretty tough scrap, but you did good, if we keep practicing well... I think we've got a shot at the belt.@@"<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
You nod and <<he npc_admin>> pulls you in for a hug. <<He npc_admin>> kisses you on the forehead, you may feel a bit beat up but right now, in your <<boy npc_admin>>friend's arms... you feel like you've already won.<br>
<br>
[<<moveTo "event_tournament_lose_2" "Ask if you could give <<him npc_admin>> a consolation prize..." 300>>]<br>
<<case 'friendswbenefits'>>
You nod and <<he npc_admin>> grins. Maybe it's the lingering post-adrenaline high but seeing <<him npc_admin>> there, still sporting a pump from the fight has you feeling more than a bit randy...<br>
<br>
[<<moveTo "event_tournament_lose_2" "Ask if you could give <<him npc_admin>> a consolation prize..." 300>>]<br>
<<case 'friend' ''>>
You nod, promising you'll get back to training soon.<br>
<br>
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
[<<moveTo "room_citymap" "Say you'll catch <<him npc_admin>> later and head out." 300>>]
</div>/*#
#desc: gym tournament lose consolation sex
#status: RELEASED 0.8.8.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 18 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
You lean in close, your hand reaching down to squeeze <<his npc_admin>> large protective cup. You smile at the thought of the big, beautiful treasure within as you ask if <<he npc_admin>>'d like a "@@.pc;Consolation prize.@@"<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
Your <<boy npc_admin>>friend smiles and grinds back against your hand. One strong arm reaches around to lift you into the air as you kiss, the two of you soon finding your way into one of the gym's private training rooms.
<<case 'friendswbenefits'>>
<<=setup.getNpcName("npc_admin","first")>> grins back and the two of you are soon stumbling into one of the gym's private training rooms.
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
As soon as the door closes behind you, you're on your knees, tugging at <<his npc_admin>> shorts and jock strap in eager hunger for a "prize" of your own. <<His npc_admin>> <<getWordPenis "npc_admin">> pops free as big and beautiful as you remember. It almost thwacks you in the face but you slip the "strike" with a smile before diving in, your lips spread wide.<br>
<br>
"@@.npc_admin;The champ is here...@@" <<He npc_admin>> moans, one hand on your head as you suck away, your tongue exploring <<his npc_admin>> big, thick cock-head from every angle, breathing deep <<his npc_admin>> heady, <<if $npc_admin.fem>>intoxicating<<else>>masculine<</if>> scent as you enthusiastically award <<his npc_admin>> "prize." <br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Cocks like this are what you train for, and you eagerly take <<him npc_admin>> balls deep, loving the way your throat bulges and you savour the wonderful feeling that is being an accommodating cock-sheath...
<<else>>
<<He npc_admin>> may be big, but you've been training your throat for a reason, forcing yourself to <<his npc_admin>> base and groaning as your throat stretches and strains.
<</if>>
Bobbing your head back and forth you suck, lick, and stroke, enjoying every wonderful centimetre of <<his npc_admin>> glorious <<getWordPenis "npc_admin">>.
<<else>>
<<His npc_admin>> big, beautiful cock may be far too big for you to handle more than a portion of it at a time, but you focus on doing what you can, your lips sucking and kissing from <<his npc_admin>> throbbing tip to <<his npc_admin>> heavy bull-balls until <<he npc_admin>>'s right on the edge of orgasm...
<</if>>
<br><br>
<<if $fetish.cum>>
[<<moveTo "event_tournament_lose_3" "Oh no, right in the face!" 300 "<<set $scene.facial=true>>">>]<br>
[<<moveTo "event_tournament_lose_3" "Gobble it up and spill not a drop of your prize." 300 "<<set $scene.facial=false>>">>]<br>
<<else>>
[<<moveTo "event_tournament_lose_3" "Finish him off." 300 "<<set $scene.facial=false>>">>]
<</if>>
</div>/*#
#desc: gym tournament lose consolation sex
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.cum>>
<<applyExperience 'cum' 16 'very' $SEEN_FRIEND>>
<<if $scene.facial>>
<<changeMakeupMessed 75>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_yoga.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.facial>>
You give a final delicate tug and <<=setup.getNpcName("npc_admin","first")>> explodes all over your face. Thick ropes of <<getWordCum>> cover your vision and drip down your cheeks, a load truly fit for a champion that makes you smile up in pride as you imagine feeling <<his npc_admin>> powerful spermies wiggling around on your face.<br>
<br>
<<He npc_admin>> starts to apologise but you just lick your lips and smile, explaining that you are proud to wear your reward.<br>
<br>
<<He npc_admin>> chuckles, but still insists on helping you clean up before assisting you to your feet.
<<else>>
<<if $fetish.cum>>
The end approaching you hum happily as you suck with all your might, cheeks hollowing out as you take <<=setup.getNpcName("npc_admin","first")>> all the way down and feel <<him npc_admin>> tremble in your throat as <<his npc_admin>> powerful orgasm arrives.<br>
<br>
You hold your breath as long as you can and then lean back, feeling <<him npc_admin>> soften and sigh in contentment as <<he npc_admin>> passes over your lips and you grin.
<<else>>
Your lips wrapped around the thick tip of <<his npc_admin>> cock your shove your tongue into <<his npc_admin>> slit, holding back the tide for a fraction of a second before the force of <<his npc_admin>> climax floods your mouth with thick,
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
delectable
<<else>>
delicious
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty
<<else>>
bitter
<</if>>
<</if>>
<<getWordCum>>. <<His npc_admin>> load is large, <<his npc_admin>> <<getWordPenis "npc_admin">> pumping the full contents of <<his npc_admin>> heavy balls into your mouth as fast as you can swallow, leaving you out of breath and a little sloshy by the time <<he npc_admin>>'s finished.<br>
<br>
Holding <<his npc_admin>> softening member with one delicate hand you tilt your head back and showily swallow, licking your lips to ensure you consume every last drop.
<</if>>
<</if>>
<br><br>
Feeling perky and flirty, you continue to beam up at <<him npc_admin>> as you gently tuck <<his npc_admin>> limp, but still large, <<getWordPenis "npc_admin">> into <<his npc_admin>> shorts.<br>
<br>
"@@.npc_admin;Dang,@@" <<he npc_admin>> states with a grin, taking one glance at <<his npc_admin>> cup before tossing it in <<his npc_admin>> gym bag rather than stuff <<him npc_admin>>self into the snug protective shell. "@@.npc_admin;A reward like that and a <<guy npc_admin>> could get used to losing!@@"<br>
<br>
You flutter your eyelashes and reply that you have something even better planned for when <<he npc_admin>>'s proven <<him npc_admin>>self the big, bad champion.<br>
<br>
"@@.npc_admin;You mean when we're the champs@@" <<he npc_admin>> replies, giving you a hug. "@@.npc_admin;We both have to do our part if we're going to win, but I've got a good feeling, we keep training and there'll be a championship belt wrapped around those sexy hips of yours before you know it!@@"<br>
<br>
You smile, <<his npc_admin>> encouragement, and your tasty treat, putting a skip in your step as you say good-bye and leave the gym.<br>
<br>
[<<moveTo "room_citymap" "Say you'll catch <<him npc_admin>> later and head out." 300>>]
</div>/*#
#desc: gym tournament victory
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.tournament = 6>>
<<include "scheduleAdminPhotoshoot">>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.flash>>
<<=setup.getNpcName("npc_admin","first")>> parades you to the back on <<his npc_admin>> shoulders, waiting until you're out of sight of the crowd before putting you down and frowning.<br>
<br>
You're still riding high from the victory and you ask <<him npc_admin>> what's wrong.<br>
<br>
"@@.npc_admin;Sorry it just doesn't feel earned, y'know? Whatever you did to distract <<=setup.getNpcName("npc_retention","formal")>>... well, it cheapened the victory.@@"<br>
<br>
<<if $npc_admin.flags.training >= 2>>
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend' 'friendswbenefits'>>
[<<moveTo "event_tournament_win_2_punish" "Suggest that punishing you for your dastardly tactics would make <<him npc_admin>> feel better..." 300 "<<set $scene.spank=true>>">>]<br>
[<<moveTo "event_tournament_win_2_punish" "Apologise and head for the showers." 300 "<<set $scene.spank=false>>">>]
<<case 'friend' ''>>
You apologise and <<he npc_admin>> nods. You linger for a minute more but <<he npc_admin>> still seems to be in a bit of a funk so you finally give up and head to the locker-room on your own.<br>
<br>
[<<moveTo "room_citymap" "Change and leave." 300 '<<removeItemSet "fight_gear">><<removeItem "gym_champion_belt" true>><<useClothSetPop "tmp">>'>>]
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<<else>>
You apologise and <<he npc_admin>> nods. You linger for a minute more but <<he npc_admin>> still seems to be in a bit of a funk so you finally give up and head to the locker-room on your own.<br>
<br>
[<<moveTo "room_citymap" "Change and leave." 300 '<<removeItemSet "fight_gear">><<removeItem "gym_champion_belt" true>><<useClothSetPop "tmp">>'>>]
<</if>>
<<else>>
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
<<=setup.getNpcName("npc_admin","first")>> parades you to the back sitting astride <<his npc_admin>> shoulders before dropping you straight into an embrace, your lips meeting as you dangle in the air with your arms wrapped around the back of <<his npc_admin>> neck.<br>
<br>
"@@.npc_admin;Who's my sexy co-champ?@@" <<He npc_admin>> asks with a grin when your lips finally part.<br>
<br>
<<if $fetish.cum>>
<<if $player.body_ref.vagina>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if setup.canSexOrRemoveChastity("vag","npc_admin")>>
[<<moveTo "event_tournament_win_2_sex" "Correct <<him npc_admin>> that it's cum-champ... and that you want to unlock your oven and get basted." 300 "<<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is securely locked.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_tournament_win_2_sex" "Correct <<him npc_admin>> that it's cum-champ... and that you want to get basted." 300 "<<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_tournament_win_2_sex" "Correct <<him npc_admin>> that it's cum-champ... and that you want to celebrate your ass off." 300 "<<set $scene.anal=true>>">>]<br>
<<else>>
[<<moveTo "event_tournament_win_2_sex" "Remind <<him npc_admin>> that you're a lover, as well as a fighter... and that you want to celebrate your ass off." 300>>]<br>
<</if>>
[<<moveTo "event_tournament_win_2_sex_abort" "Just call it a day and hit the showers." 300 "<<set $scene.anal=true>>">>]
<<case 'friendswbenefits'>>
<<=setup.getNpcName("npc_admin","first")>> carries you to the back on <<his npc_admin>> shoulders and it's not until you're out of sight from the audience that <<he npc_admin>> gently places you back down on the floor.<br>
<br>
"@@.npc_admin;Now that was a match!@@" <<He npc_admin>> states with a grin, "@@.npc_admin;You've come a long way from when I had to practically drag you to a karate class!@@"<br>
<br>
You chuckle and give <<him npc_admin>> a hug, the feel of <<his npc_admin>> large cup pressing against you giving you ideas about "celebrating..." <br>
<br>
<<if $player.body_ref.vagina && $player.sec_style.sex.vagina && ($npc_admin.fem && $player.sec_style.sex.sex_woman || !$npc_admin.fem && $player.sec_style.sex.sex_man)>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "" && !setup.isCage()>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set _unlockable = setup.getItemFromType($scene.cage) != "" && !($npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId))>>
<<if _unlockable>>
[<<moveTo "event_tournament_win_2_sex" "Ask if <<he npc_admin>>'d like to unlock you and enjoy the spoils of victory..." 300 "<<set $scene.anal=false>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is securely locked.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_tournament_win_2_sex" "Ask if <<he npc_admin>>'d like to enjoy the spoils of victory..." 300 "<<set $scene.anal=false>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_tournament_win_2_sex" "Ask if <<he npc_admin>>'d like to help you celebrate you ass off..." 300 "<<set $scene.anal=true>>">>]<br>
[<<moveTo "event_tournament_win_2_sex_abort" "Just call it a day and hit the showers." 300>>]
<<case 'friend' ''>>
Parading to the back it isn't until you're out of sight of the crowd that <<=setup.getNpcName("npc_admin","first")>> puts you down.<br>
<br>
"@@.npc_admin;Great job, <<callPlayer "npc_admin">>! That was just electrifying, and considering how you used to fall over in a light breeze, well...@@" <<He npc_admin>> gives you a friendly punch in the shoulder that you return with a grin.<br>
<br>
"@@.npc_admin;Well, win or not, I think I'm going to hit the showers and head home, maybe have a bit of a cheat day dinner...@@"<br>
<br>
You nod, thanking <<him npc_admin>> again for being your partner.<br>
<br>
"@@.npc_admin;Always, <<callPlayer "npc_admin">>.@@" <<He npc_admin>> replies as you head for the locker-rooms to change.<br>
<br>
[<<moveTo "room_citymap" "Change and leave." 300 '<<removeItemSet "fight_gear">><<removeItem "gym_champion_belt" true>><<useClothSetPop "tmp">>'>>]
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<</if>>
</div>/*#
#desc: gym tournament victory "celebration" sex abort
#status: RELEASED 0.8.8.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
Feeling a bit tired and sore from your matches you thank <<=setup.getNpcName("npc_admin","first")>> once again for fighting alongside you.<br>
<br>
"@@.npc_admin;Always, <<callPlayer "npc_admin">>.@@" <<He npc_admin>> replies, giving you another kiss and a friendly slap on the ass to send you on your way to the locker-rooms to change.<br>
<br>
[<<moveTo "room_citymap" "Change and leave." 300 '<<removeItemSet "fight_gear">><<removeItem "gym_champion_belt" true>><<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: gym tournament victory "celebration" sex
#status: RELEASED 0.8.8.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<if $scene.anal>>
<<applyExperience 'anal' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<else>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.vaginalvirgin = !$player.virgin.vaginal>>
<<if !$player.virgin.vaginal>>
<<set $player.virgin.vaginal = "npc_admin">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_6'
0
'event_psychiatrist_session_vaginal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_vag'
0
'theme_church_confession_vag'
true
>>
<</if>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_admin">>
<</if>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$npc_admin.fem>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_admin.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.vaginalvirgin && !$scene.anal>>
The excitement of the moment spurs you forward... it's going to be your first time, and you can't think of a more perfect celebration.
<</if>>
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
Your <<boy npc_admin>>friend smiles as <<=setup.getNpcName("npc_admin","first")>> lifts you off your feet once again. Your lips press together as you both shimmy out of your pants, <<his npc_admin>> hard cock springing free as <<if $scene.removeCage>><<he npc_admin>> helps you out of your belt and <</if>>you practically leap onto <<his npc_admin>> hard <<getWordPenis "npc_admin">>, wrapping your legs around <<him npc_admin>> and riding <<him npc_admin>> as <<he npc_admin>> holds you horizontally.
<<case 'friendswbenefits'>>
No sooner have you made your offer than <<=setup.getNpcName("npc_admin","first")>> leans in for a kiss. In moments you find yourself with your back to a wall, returning <<his npc_admin>> embrace as you pull down your pants<<if $scene.removeCage>> and unlock your chastity belt<</if>>. <<He npc_admin>> lifts you up as you throw your arms around <<his npc_admin>> strong neck and you drop back down on <<his npc_admin>> cock. <<He npc_admin>> drives forward, pressing you against the wall as you moan into <<his npc_admin>> chest.
<</switch>>
<br><br>
<<if $scene.vaginalvirgin && !$scene.anal>>
<<printThought "My first time... this feels so good!">><br>
<br>
<</if>>
Fucked in mid-air you flex around <<his npc_admin>> magnificent <<if $npc_admin.fem>><<getWordPenis "npc_admin">><<else>>manhood<</if>>, <<his npc_admin>> strong arms holding you easily <<he npc_admin>> drills you deep and you moan. "@@.pc;Champion lover AND fighter...@@" you softly moan and <<he npc_admin>> grins, the champion belt still wrapped around <<his npc_admin>> waist bumping you with each thrust as the both of you get closer and closer to climax.<br>
<br>
"@@.npc_admin;The champ... is... here...@@" <<He npc_admin>> grunts with a final few powerful upwards thrusts. <<His npc_admin>> thick cock swells inside of you, the force of <<his npc_admin>> climax pressuring your <<if $scene.anal>><<if $player.body_ref.penis>>prostate<<else>>insides<</if>><<else>>g-spot<</if>>, a powerful <<if $scene.anal>>analgasm<<else>>orgasm<</if>> making you shudder and gasp, closing your eyes as you squeeze down and press into <<him npc_admin>>.<br>
<br>
"@@.npc_admin;So... tight...@@" <<He npc_admin>> grunts as <<he npc_admin>> pumps you full, your belly feeling like it's straining against the championship belt by the time <<he npc_admin>> finishes and your legs drop back to the ground.<br>
<br>
<<He npc_admin>> steps back and you stagger, feeling like a newborn deer as you take a wobbly step only for <<him npc_admin>> to be right there to help catch you.<br>
<br>
"@@.npc_admin;You alright?@@" <<He npc_admin>> asks and you smile and nod. <<if $scene.vaginalvirgin && !$scene.anal>><<printThought "More than alright...">> you think, tingling with new feelings of femininity. <</if>>Throat still sore from the choke you survived in the final round you just rise up onto your toes for another kiss, <<his npc_admin>> strong arms wrapping around you — you may both be champion fighters, but there's just something about how safe you feel in <<his npc_admin>> arms.<br>
<br>
Your heart-rate slowly comes down and the two of you decide to head out, triumphant, <<if $scene.removeBelt>>belted once more both champion and chastity,<</if>>tired, and satisfied.<br>
<br>
[<<moveTo "room_citymap" "Change and leave." 300 '<<removeItemSet "fight_gear">><<removeItem "gym_champion_belt" true>><<useClothSetPop "tmp">><<if !$scene.anal && $scene.removeCage>><<include "replaceCage_extendSissyomatic">><</if>>'>>]
</div>/*#
#desc: gym tournament victory "celebration" punishment for cheating
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.spank>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 13 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
<<if $scene.spank>>
You bite your lip and tell <<=setup.getNpcName("npc_admin","first")>> that you flashed <<=setup.getNpcName("npc_retention","formal")>> in the middle of the fight, and deserve to be punished for such naughty, slutty behaviour.<br>
<br>
"@@.npc_admin;Punished, hmm? Yeah, that does sound like what you deserve, for flaunting <<if $player.body.breastsize[0]>0>>these sexy tits<<else>>your hot body<</if>> without permission, hmm. Is that right, do I need to put your slutty ass back in line?@@"<br>
<br>
<<He npc_admin>> gropes you, one hand exposing your <<if $player.body.breastsize[0]>0>>breasts<<else>>chest<</if>> while the other palms your ass, <<his npc_admin>> large, strong fingers digging in possessively.<br>
<br>
With a jerk <<he npc_admin>> bends you over, giving your ass a quick slap. "@@.pc;Spank me harder, <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<Sir npc_admin>><</if>>,@@" you gasp, going weak in the knees at <<his npc_admin>> low growl of a response.<br>
<br>
<<He npc_admin>> gives your ass another firm squeeze before unbuckling your championship belt. You hold your breath as you feel the wide slab of leather fall from your hips, listening to the clink of the buckle as <<he npc_admin>> adjusts <<his npc_admin>> grip. You brace in anticipation as <<he npc_admin>> leaves you waiting for an extra moment before bringing the belt down across your ass with a loud crack.<br>
<br>
In <<his npc_admin>> strong hand the leather lands hard,
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
the delightful pain blossoming across your ass and making you eager for each subsequent blow.
<<else>>
the pain blooms across your whole ass, building with each subsequent blow.
<</if>>
You moan with arousal and then attempt to beg for forgiveness, unable to keep the breathless lust out of your voice.<br>
<br>
"@@.npc_admin;Are you getting off on this?@@" <<He npc_admin>> asks. You shudder in confirmation. <<He npc_admin>> snorts and brings the belt down again.
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
the pain blossoming across your bottom with each blow.
<<else>>
the impact painful, even spread across your entire ass, the agony rising with each strike.
<</if>>
You whimper and beg <<him npc_admin>> to forgive your transgression. "@@.npc_admin;Maybe you should have thought of that before you decided to mistake a fight for a strip club?@@" You moan in submissive humiliation as <<he npc_admin>> brings the belt down across your ass once again.
<</if>>
<br><br>
A trio of additional blows has your ass feeling properly fiery, stoked even more as <<he npc_admin>> puts the belt aside and squeezes your sensitive cheeks. "@@.npc_admin;Well, you learn your lesson about interfereing with my fights and exposing yourself without permission?@@"<br>
<br>
"@@.pc;Yes, <<if $fetish.daddy>><<Daddy npc_admin>><<else>><<Sir npc_admin>><</if>>,@@" you moan as <<he npc_admin>> pulls you back to your feet.<br>
<br>
<<He npc_admin>> grins. "@@.npc_admin;You look hot when you're this desperate, you know that?@@"<br>
<br>
You nod breathlessly and <<his npc_admin>> grin turns to a smile. "@@.npc_admin;Well don't just stand there! Show me you've taken your punishment to heart and put those lips to work sucking my championship-quality cock!@@"<br>
<br>
[<<moveTo "event_tournament_win_3_punish" "Get to work!" 300>>]<br>
[<<moveTo "event_tournament_win_3_punish_abort" "Actually, your throat is a bit sore from the fight..." 300>>]
<<else>>
You tell <<=setup.getNpcName("npc_admin","first")>> you're sorry for the cheap tactic, that it was just the spur of the moment and you didn't mean to cheapen <<his npc_admin>> victory.<br>
<br>
<<He npc_admin>> sighs and then looks up and musters a smile "@@.npc_admin;It's okay, I mean, it's not like <<his npc_retention>> was doing things completely above board, I've never felt grips like that outside of shaking hands with a cyborg! Besides... if I really want to get my ass kicked there's always <<=setup.getNpcName('npc_martial_arts', 'formal')>>!@@"<br>
<br>
You both laugh, and you're glad <<he npc_admin>>'s taking things so well. You thank <<him npc_admin>> again for being your partner before you head for the locker-room.<br>
<br>
"@@.npc_admin;I'll always be there to fight at your side, <<callPlayer "npc_admin">>, count on it!@@"<br>
<br>
[<<moveTo "room_citymap" "Change and leave." 300 '<<removeItemSet "fight_gear">><<removeItem "gym_champion_belt" true>><<useClothSetPop "tmp">><<include "cleanPlayer">>'>>]
<</if>>
</div>/*#
#desc: gym tournament victory "celebration" punishment: don't suck him off
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
You cough and explain that your throat is actually a bit sore from fighting out of that choke in the finals. <<He npc_admin>> winces, the put-upon "harsh <<Master npc_admin>>" facade replaced with <<his npc_admin>> normal joviality. "@@.npc_admin;Ah, shit, yeah... sorry about that, you gonna be alright?@@"<br>
<br>
You nod, promising to make it up to <<him npc_admin>> later as you give <<him npc_admin>> a hug.<br>
<br>
"@@.npc_admin;I'll be looking forward to it,@@" <<he npc_admin>> replies, giving you a kiss and then draping the belt over your shoulder.<br>
<br>
You smile, running your hand over your "prize" one final time before heading off.<br>
<br>
[<<moveTo "room_citymap" "Get changed and leave the gym." 300 '<<removeItemSet "fight_gear">><<removeItem "gym_champion_belt" true>><<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: gym tournament victory "celebration" punishment: suck him off
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 18 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Hard Pump Tournament">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tournament.png" setup.charImage("npc_admin","npc_admin_gi")>>
<div id="invframe" class="scrolltext">
Ignoring your sore throat, you drop to your knees, glancing at <<his npc_admin>> gleaming belt for a moment before your entire attention is taken up by <<his npc_admin>> big, beautiful cock.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Cocks like this are what you train for, and you ignore your sore throat to take <<him npc_admin>> balls deep, feeling <<him npc_admin>> stretch your tender throat and loving it.
<<else>>
<<He npc_admin>> may be big, but you've been training for a reason, ignoring your sore throat as you force yourself to <<his npc_admin>> base.
<</if>>
Bobbing your head back and forth you suck, lick, and stroke, enjoying every wonderful centimetre of <<his npc_admin>> glorious <<getWordPenis "npc_admin">>.
<<else>>
<<His npc_admin>> big, beautiful cock may be far too large for you to handle more than a portion of it at a time, so you focus on doing what you can, your lips sucking and kissing from <<his npc_admin>> throbbing tip to <<his npc_admin>> heavy bull-balls until <<he npc_admin>>'s right on the edge of orgasm...
<</if>>
<<if $fetish.cum>>
You look up at <<him npc_admin>> with a twinkle in your eye you swirl your tongue and <<he npc_admin>> explodes. You swallow eagerly, the thick, salty cum acting like balm as it coats your throat. You suck <<him npc_admin>> clean and lean back, gently tucking
<<else>>
You make eye contact as you finish <<him npc_admin>> off, feeling <<his npc_admin>> magnificent meatstick strain in your throat as the waves of pleasure flow through him and then slowly subside. With a triumphant grin you gently
<</if>>
<<him npc_admin>> back into <<his npc_admin>> pants.
<br><br>
Reaching down <<he npc_admin>> tussles your hair and smiles. "@@.npc_admin;That's my <<callPlayer "npc_admin">>, talk about celebrating a victory.@@"<br>
<br>
You lick your lips as <<he npc_admin>> helps you back to your feet, the smile on <<his npc_admin>> face telling you all crimes are forgiven as the two of you head for the locker-room.<br>
<br>
[<<moveTo "room_citymap" "Get changed and leave the gym." 300 '<<removeItemSet "fight_gear">><<removeItem "gym_champion_belt" true>><<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: mention tournament to landlord
#status: RELEASED 0.8.8.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_retention.flags.cybernetic = true>>
<</if>>
<<if $scene.return == "event_landlord_maidcafe_talk_1">>
<<set $player.location to "Cafe: Newtype IV">>
<<else>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.return == "event_landlord_maidcafe_talk_1">>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<<else>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_landlord.flags.sex_club_retention>>
You bring up <<=setup.getNpcName("npc_retention","formal")>>, how you've now run into <<him npc_retention>> as an opponent in the gym tournament... and a particularly dangerous one, at that!
<<elseif $npc_admin.flags.know_landlord>>
You bring up <<=setup.getNpcName("npc_retention","formal")>>, mentioning the fight you had at the gym tournament and how <<=setup.getNpcName("npc_admin","first")>> mentioned that <<=setup.getNpcName("npc_landlord","first")>> had some sort of history with the security manager?
<<else>>
You mention the gym tournament, specifically the scary "end boss" — <<=setup.getNpcName("npc_retention","formal")>>.
<</if>>
<br><br>
<<if $npc_landlord.flags.sex_club_retention>>
"@@.npc_landlord;<<=setup.getNpcName("npc_retention","formal")>>?@@" <<=ps(setup.getNpcName("npc_landlord","first"))>> prior levity all but evaporated as <<he npc_landlord>> speaks the name with distant horror. "@@.npc_landlord;When I knew <<him npc_retention>>, <<he npc_retention>> was <<=setup.getNpcName("npc_retention","Captain")>>... a cunning tactician, and fiercely protective of <<his npc_retention>> <<if $options.fem>>soldiers<<else>>men<</if>>, but what <<he npc_retention>> did to the enemy...@@" <<=setup.getNpcName("npc_landlord","first")>> shudders. "@@.npc_landlord;Just because it's war doesn't mean there aren't rules, the enemy is still people, after all, and some of the things <<he npc_retention>> did...@@"<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> shakes <<his npc_landlord>> head. "@@.npc_landlord;Sorry <<callPlayer "npc_landlord">>, didn't mean to scare you... besides, technically most of that stuff is still classified... just... be careful around that <<man npc_retention>>, there is a darkness inside <<him npc_retention>>.@@"<br>
<br>
You nod, snuggling closer and asking if <<=setup.getNpcName("npc_landlord","first")>> might have a suggestion of how to beat <<him npc_retention>>? You note that <<he npc_retention>> seems at least a match for <<=setup.getNpcName("npc_admin","first")>>, at least after the big <<guy npc_admin>> has worn <<him npc_admin>>self out fighting to that point.<br>
<br>
<<else>>
"@@.npc_landlord;Tournament! Oh, you no want to fight <<him npc_retention>>, <<callPlayer "npc_landlord">>!@@" <<=setup.getNpcName("npc_landlord","first")>> pauses as <<he npc_landlord>> sees the determination in your eyes. "@@.npc_landlord;But, if you must, well, I think I can give you a tip or two.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_landlord","first")>> nods. "@@.npc_landlord;Si, si. <<He npc_retention>> was never one to shy away from any edge <<he npc_retention>> could get in a fight, and that included some... enhancements.@@" <<=setup.getNpcName("npc_landlord","first")>> raises <<his npc_landlord>> cybernetic arm in demonstration.<br>
<br>
Puzzled, you point out the contest's restrictions on cyborgs and <<=setup.getNpcName("npc_landlord","first")>> chuckles. "@@.npc_landlord;These aren't your civilian mods, this is top secret military stuff, meant to escape detection for behind the lines missions... most of the enhancements were neural, faster reaction-time and such, I remember <<he npc_retention>> used to brag that if <<he npc_retention>> could land a jab, <<he npc_retention>>'d always nail the right cross follow-up... so that'd be the first tip, avoid the jab because it's just a spotter for a follow-up artillery strike. The other thing to watch out for is <<his npc_retention>> hands — <<he npc_retention>> used to show off crushing fuel cans with <<his npc_retention>> bare hands... doubt <<he npc_retention>>'d go that far in public but I doubt you'd be winning a grip fight with <<him npc_retention>> ever.@@"<br>
<br>
You thank <<=setup.getNpcName("npc_landlord","first")>> for the info, hoping that relaying it to <<=setup.getNpcName("npc_admin","first")>> will give <<him npc_admin>> the edge the next time you reach the finals.<br>
<br>
"@@.npc_landlord;I hope so too, <<callPlayer "npc_landlord">>. I doubt <<=setup.getNpcName("npc_retention","Captain")>> ever sees true justice for what <<he npc_retention>>'s done, but a good sound beating is something.@@"<br>
<br>
<<if $scene.return == 'room_foyer'>>
[<<moveTo 'room_foyer' "Return to your flat." 60>>]
<<elseif $scene.return == 'event_landlord_maidcafe_talk_1'>>
[<<moveTo $scene.return "Talk about something else." 60>>]
<<else>>
[<<moveTo $scene.return "Resume cuddling." 60>>]
<</if>>
</div>/*#
#desc: your bedroom
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasUpgrade($bed, 'vr') && setup.checkItemOwned("vr_helmet")>>
<<addUpgradeItem $bed 'vr'>>
<</if>>
<<movePets>>
<<if (setup.isItemEquipped("bitchsuit_black") || setup.isItemEquipped("puppy_hood_black") || setup.isItemEquipped("bitchsuit_pink") || setup.isItemEquipped("puppy_hood_pink"))>>
<<set $npc_dog.location = "room_bedroom">>
<</if>>
<<set $scene.startSleepPrep = false>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_dog.stage && $npc_dog.location == "room_bedroom">>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_dog")>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_bedroom">>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_cat","npc_cat_1")>>
<<else>>
<<createAdvBGR setup.getBedroomImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_dog.stage < 2 && (setup.isItemEquipped("bitchsuit_black") || setup.isItemEquipped("puppy_hood_black") || setup.isItemEquipped("bitchsuit_pink") || setup.isItemEquipped("puppy_hood_pink")) && !$daily.triedPromotion>>
You crawl into the bedroom where <<=setup.getNpcName("npc_dog","first")>> is already waiting...<br>
<br>
[<<moveTo "event_dog_promotion_1" '<<=setup.getNpcName("npc_dog","first")>> approaches you.' 300>>]
<<elseif (setup.isItemEquipped("bitchsuit_black") && setup.isItemEquipped("puppy_hood_black") || setup.isItemEquipped("bitchsuit_pink") && setup.isItemEquipped("puppy_hood_pink")) && !$daily.dogEvent>>
Wearing the full bitchsuit once again, your heart pounds at the thought of going searching for your Alpha...<br>
<br>
[<<moveTo "event_dog_breed_1" 'Offer yourself to your pack leader.' 60 "<<set $scene.offer=true>>">>]<br>
[<<moveTo "event_dog_breed_1" 'On second thought... you should change before you get into any trouble.' 60 "<<set $scene.offer=false>>">>]
<<else>>
<<include flatLinks>><br>
<<switch $status_flat.bedroom>>
<<case 0>>
Your bedroom is the same hum-drum it's always been...
<<if $options.tutorial && !$player.flags.jobsecretary>>
<br><br>
<<if $scene.hints>>
[<<moveTo "event_initial_hints_2" "What did I need to do again?" 0>>]<br>
<<else>>
[<<moveTo "event_initial_hints_1" "CLICK HERE What should I do? CLICK HERE." 0>>]<br>
<</if>>
<<elseif setup.hasUpgrade($bed, 'bed_bondage_gear') || setup.hasUpgrade($bed, 'penis_milker') || setup.hasUpgrade($bed, 'breast_milker')>>
Well, if you ignore the subtle kinky upgrades you've made.
<</if>>
<<case 1>>
Your bedroom is a gothic dream of wrought iron and lace.
<<case 2>>
Your bedroom is a <<if $fetish.sissy>>sissified<<else>>feminine<</if>> explosion of pink.
<<case 3>>
Your bedroom is one of classical luxury.
<<case 4>>
Your bedroom is punk rock perfection.
<<default>>
ERROR: unexpected status_flat.bedroom <<=$status_flat.bedroom>>
<</switch>>
[<<moveTo "room_bedroom_desc" "Look around your bedroom." 0 "<<set $scene.change=false>>">>] <br><br>
<<if $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_bedroom" || $npc_dog.stage && $npc_dog.location == "room_bedroom">>
<<if $npc_dog.stage && $npc_dog.location == "room_bedroom">>
<<=setup.getNpcName("npc_dog","first")>> is hanging out.
<</if>>
<<if $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_bedroom">>
<<=setup.getNpcName("npc_cat","first")>> is resting on a pillow.
<</if>>
<br><br>
<</if>>
<<include "thoughts_home">>
<<if !setup.checkItemOwned('smartphone')>>
[<<moveTo "event_take_phone" "Grab your phone." 30>>]<br>
<br>
<</if>>
[<<moveTo "event_sleep_configure" "Configure sleep options." 0>>]<br>
<br>
<<if getUTCHours($now) < 5>>
<<set _nextTime = setup.setNextDate($now, 0, 1, 0)>>
<<else>>
<<set _nextTime = setup.setNextDate($now, 1, 1, 0)>>
<</if>>
<<if setup.isWorkDay(_nextTime)>>
<<set _alarmWakeup = $player.clock["workweek"].h>>
<<else>>
<<set _alarmWakeup = $player.clock["weekend"].h - 1>>
<</if>>
<<if $now.getUTCHours() == (_alarmWakeup - 1)>>
[@@.link_locked;There's no sense in going to bed when you alarm is going off so soon.@@]<br>
<<elseif $now.getUTCHours() >= 19 || $now.getUTCHours() < (_alarmWakeup-1)>>
<<if setup.checkSleepWear() != "not_sleepwear">>
You are properly attired for bed<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>, complete with bed heels<</if>>.<br>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks['bed_heels_photo'].finished>>
<<if setup.checkItemOwned("bed_heels_pink")>>
<br>
<<printThought '<<=setup.getNpcName("npc_manager","formal")>> told me to send a picture wearing bed heels, I should make sure to do that.'>><br>
<br>
<<elseif setup.checkItemOwned("bed_heels_box")>>
<br>
<<printThought '<<=setup.getNpcName("npc_manager","formal")>> told me to send a picture in bed heels... I should probably unbox the pair I bought!'>><br>
<br>
<</if>>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo')>>
<<if setup.isItemEquipped('broken_cage') || setup.isItemEquipped("broken_belt")>>
[@@.link_locked;You do not wish to send a selfie of your broken chastity <<if setup.isCage()>>cage<<else>>belt<</if>>.@@]<br>
<<else>>
<<set $scene.selfie = $player.flat.sleep.selfie>>
<label>Take a selfie before bed: <<checkbox "$scene.selfie" false true autocheck>></label><br>
<</if>>
<</if>>
<br>
<<if setup.checkSleepWear() != "not_sleepwear">>
[<<moveTo "event_bed_root" "Go to bed." 0 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=true>><<set $scene.change=false>>">>]<br>
<</if>>
[<<moveTo "event_bed_root" "Change into sleep attire and go to bed." 180 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=true>><<set $scene.change=true>>">>] <<hint $options 'Editing a clothing set called Sleep Clothes will let you 1-button wear that to bed.'>><br>
<<if $currentTasks.hasOwnProperty('manager_bed_milking_penis') && !$currentTasks.manager_bed_milking_penis.finished || $currentTasks.hasOwnProperty('manager_bed_milking_vag') && !$currentTasks.manager_bed_milking_vag.finished || $currentTasks.hasOwnProperty('manager_bed_milking_both') && !$currentTasks.manager_bed_milking_both.finished>>
<<if setup.isItemEquipped("broken_cage") || setup.isItemEquipped("broken_belt")>>
[@@.link_locked;Video-conferencing <<=setup.getNpcName("npc_manager","formal")>> while you're wearing a broken chastity device? How about... no.@@]<br>
<<elseif !setup.hasUpgrade($bed, 'keysafe')>>
[@@.link_locked;<<=setup.getNpcName("npc_manager","formal")>> was going to send you a package, no sense calling her about bed until you've installed that.@@]<br>
<<else>>
<<if $npc_manager.stage > 3 && $npc_manager.stagevalues[$npc_manager.stage].advance == 1 && !setup.hasUpgrade($bed, 'bed_bondage_gear_2')>>
[@@.link_locked;You should unpack the sleep bondage gear <<=setup.getNpcName("npc_manager","formal")>> sent you before you call her up.@@]<br>
<<elseif !State.hasPlayed("room_bedroom_sleep_milker_permission_first_5")>>
<<if setup.checkSleepWear() == "sleepwear">>
[<<moveTo 'room_bedroom_sleep_milker_permission_first_1' 'Call <<=setup.getNpcName("npc_manager","formal")>> to get tucked in for the night.' 60 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>>">>] <<hint $options "This will skip sending selfies to anyone else.">><br>
<<else>>
[<<moveTo 'room_bedroom_sleep_milker_permission_first_1' 'Change for bed and call <<=setup.getNpcName("npc_manager","formal")>> to get tucked in for the night.' 60 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>><<include 'sleepClothesKeepCollar'>>">>] <<hint $options "This will skip sending selfies to anyone else.">><br>
<</if>>
<<elseif !State.hasPlayed("room_bedroom_sleep_milker_permission_1") || $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn("cage")>>
<<if setup.checkSleepWear() == "sleepwear">>
[<<moveTo 'room_bedroom_sleep_milker_permission_1' 'Call <<=setup.getNpcName("npc_manager","formal")>> to get tucked in for the night.' 60 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>>">>] <<hint $options "This will skip sending selfies to anyone else.">><br>
<<else>>
[<<moveTo 'room_bedroom_sleep_milker_permission_1' 'Change for bed and call <<=setup.getNpcName("npc_manager","formal")>> to get tucked in for the night.' 60 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>><<include 'sleepClothesKeepCollar'>>">>] <<hint $options "This will skip sending selfies to anyone else.">><br>
<</if>>
<<else>>
ERROR: unexpected state!
<</if>>
<</if>>
<<elseif State.hasPlayed("room_bedroom_sleep_milker_permission_first_5")>>
<<if setup.isItemEquipped("broken_cage") || setup.isItemEquipped("broken_belt")>>
[@@.link_locked;Video-conferencing <<=setup.getNpcName("npc_manager","formal")>> while you're wearing a broken chastity device? How about... no.@@]<br>
<<elseif $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn("cage")>>
[@@.link_locked;Video-conferencing <<=setup.getNpcName("npc_manager","formal")>> out of chastity seems like a recipe for trouble...<<if $npc_manager.flags.trustplayerwithkey>> even if she trusted me with the key<</if>>.@@]<br>
<<elseif $npc_manager.flags.evil == 1>>
[<<moveTo 'room_bedroom_sleep_milker_permission_evil' 'Get ready for bed and go through a full tuck-in with <<=setup.getNpcName("npc_manager","formal")>>.' 60 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>><<include 'sleepClothesKeepCollar'>>">>] <<hint $options "This will skip sending selfies to anyone else.">><br>
<<else>>
<<if setup.checkSleepWear() == "sleepwear">>
[<<moveTo 'room_bedroom_sleep_milker_permission_1' 'Go through a full tuck-in with <<=setup.getNpcName("npc_manager","formal")>>.' 60 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>>">>] <<hint $options "This will skip sending selfies to anyone else.">><br>
<<else>>
[<<moveTo 'room_bedroom_sleep_milker_permission_1' 'Get ready for bed and go through a full tuck-in with <<=setup.getNpcName("npc_manager","formal")>>.' 60 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>><<include 'sleepClothesKeepCollar'>>">>] <<hint $options "This will skip sending selfies to anyone else.">><br>
<</if>>
<</if>>
<</if>>
<<if setup.hasUpgrade($bed, 'vr_kig')>>
<<if State.hasPlayed("room_use_kig_vr")>>
<<if !State.hasPlayed("event_primrose_home_vr_bridge_first")>>
[<<moveTo "event_primrose_home_vr_first" 'Spend a night doing <<=ps(setup.getNpcName("npc_primrose","formal"))>> VR training.' 0 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>>">>]<br>
<</if>>
<</if>>
<<elseif setup.checkItemOwned("kig_vr_mask_box")>>
[@@.link_locked;You should unpack and install that kigurumi VR kit <<=setup.getNpcName("npc_primrose","formal")>> gave you if you wish to experience <<his npc_primrose>> routines.@@]<br>
<</if>>
<</if>>
<br>
<<if State.hasPlayed("event_evil_ex_redeem_2_update_1") && !State.hasPlayed("event_evil_ex_redeem_3_dream_4_success")>>
<<if (setup.hasUpgrade($bed, 'vr_kig') || setup.hasUpgrade($bed, 'vr'))>>
[<<moveTo "event_evil_ex_redeem_3_dream_1" 'Take a dip into <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> dreams.' 0 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>>">>]<br>
<<else>>
[@@.link_locked;You need vr equipment if you are going to jump into <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> dreams.@@]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_primrose_redemption_2_lab_infiltrate_4") && !State.hasPlayed("event_primrose_redemption_3_confrontation_aiko_3")>>
<<if (setup.hasUpgrade($bed, 'vr_kig') || setup.hasUpgrade($bed, 'vr'))>>
<<if State.hasPlayed("event_primrose_redemption_3_confrontation_6_pass")>>
<<if $npc_ai.flags.human.cured>>
[<<moveTo "event_primrose_redemption_3_confrontation_aiko_1" 'Enter <<=ps(setup.getNpcName("npc_primrose","formal"))>> dreams.' 0 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>>">>]<br>
<<else>>
[<<moveTo "event_primrose_redemption_3_confrontation_abort" 'Enter <<=ps(setup.getNpcName("npc_primrose","formal"))>> dreams.' 0 "<<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_primrose_redemption_3_confrontation_1" 'Enter <<=ps(setup.getNpcName("npc_primrose","formal"))>> dreams.' 0 "<<include 'event_bed_root'>><<set $scene.startSleepPrep = true>><<set $scene.quickSleep=false>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You need vr equipment if you are going to jump into <<=ps(setup.getNpcName("npc_primrose","formal"))>> dreams.@@]<br>
<</if>>
<</if>>
[<<moveTo "room_bedroom_wardrobe_1" "Open wardrobe." 10 "<<set $scene.firstWardrobe=!State.hasPlayed('room_bedroom_wardrobe_1')>>">>]<br>
<<if getUTCHours($now) >= 5 and getUTCHours($now) < 23>>
[<<link "Lie down and rest a bit.">>
<<set $scene.dTimeD = {}>>
<<set $scene.dTimeD.text = "How long?">>
<<set $scene.dTimeD.startHour = "00">>
<<set $scene.dTimeD.stepHour = 1>>
<<set $scene.dTimeD.maxHour = 12>>
<<set $scene.dTimeD.startMinute = "20">>
<<set $scene.dTimeD.stepMinute = 10>>
<<set $scene.dTimeD.maxMinute = 50>>
<<set $scene.dTimeD.followup = "room_bedroom_rest">>
<<set $scene.resting = true>>
<<openDialog "Rest" "dialog_selectDualTime">>
<</link>>]
<</if>>
<br><br>
<</if>>
</div>/*#
#desc: bedroom details
#status: FINISHED 0.7.10.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<switch $status_flat.bedroom>>
<<case 0>>
Your bedroom is dominated by the King Size Bed in the centre. The mattress is spacious and comfy, but sleeping by yourself makes it feel vast and empty — quite lonely — lying in it each night. Next to the bed there is a small nightstand with your alarm clock. There are some shelves on the wall filled with a fairly large selection of books. A window occupies one wall, concealed with always-drawn curtains, with an expansive wardrobe big enough for two people on the opposite side of the room.
<<case 1>>
Your bedroom is decorated in tones of black and bold red.<br>
<br>
Your walls are decorated to look like a castle's stone, your windows made dark by heavy, blood-red curtains. Your battle station is elegant and imposing, the mirror like something out of a fairy-tale... the villain's collection.<br>
<br>
Your wardrobe is made of dark hardwood, heavy and imposing, with enough capacity for all of your clothes, and perhaps a body, should the need arise.<br>
<br>
Your king-sized bed anchors the room — an intimidating four-poster bed of wrought iron peppered with attachment points, somewhere between regal imposition and medieval torture device.<br>
<br>
Your night-stand rests upon a spinal column, your alarm clock styled a hand-cranked ancient monstrosity, its chimes the harbingers of doom, or morning — which is much the same for the creature of the night that would call this sort of room home.
<<case 2>>
Your bedroom looks like the set for the final scene of an extreme Forced Feminisation Video.<br>
<br>
Pink Wallpaper coats the walls. A large makeup mirror behind a vast pink battle station takes up the side of the room, facing the window. Trimmed with frilly, baby pink curtains, the window lets in plenty of natural light, especially since you never draw the curtains. After all, it would be selfish and cruel not to share your wonderful life with the world.<br>
<br>
Standing in one corner is a giant pink wardrobe packed with all your beautiful clothes; a matching pink shoe rack placed next to it shows off your ever-growing collection of sexy heels.<br>
<br>
At the centre of the room is the piece de resistance — or would that be piece de soumission? — your King Size bed. Though lonely to sleep in alone, it has enough space on it to host a veritable orgy. Gone are your old, dull cotton sheets, replaced with pink silk and satin and beneath that? A slick, shiny layer of latex to make for easy cleanup, and that you just love to slide around on. Although concealed from view the frame, too, has been enhanced, packed with all the attachment points a Domme could desire, the pink padded headboard rising high and presenting even more options for binding a <<if $fetish.sissy>>sissy<<else>>girl<</if>>.<br>
<br>
Next to your bed is a cute nightstand, or more accurately, your vault of sex toys; all your naughty playthings within easy reach. Sitting on top is a cute pink alarm clock with the words <<if $fetish.sissy>>Sissy<<else>>Girl<</if>> Time, All The Time! surrounding its pink diode display. The alarm chimes with a special musical sting; "Wake up, <<if $fetish.sissy>>sissy<<else>>slut<</if>>! Open wide and seize the day!"
<<case 3>>
Your bedroom, discounting its size, would look at home in some aristocratic villa.<br>
<br>
Your walls are decorated with reproductions of old masters, your window covered by luxurious curtains. Your battlestation is a piece of art made of black walnut and with a perfectly polished antique silver mirror.<br>
<br>
Your wardrobe is made of burnished wood, hand carved and sturdy; a tribute to when things were built to last generations.<br>
<br>
Your king sized bed is fit for a literal king, complete with solid oak pillars, a canopy, carved headboard and many artistically concealed attachment points.<br>
<br>
Your night-stand is a replica of a Louis the XVI, with a hand-wound gilded alarm clock sitting atop it to chime in the day.
<<case 4>>
Your bedroom is decorated in classic punk-rock style; a tribute to rebellion and limitless energy.<br>
<br>
Your walls are adorned with old band posters, your windows tinted to protect your privacy. Your battle-station is decorated with spikes, bare wood, and leather.<br>
<br>
Your wardrobe is made of reclaimed steel and decorated with decals like an oversized roadie's case.<br>
<br>
Your king-sized bed anchors the room — big and ready for sex, with obvious attachment points and a padded headboard that says "I was meant for violent fucking." <br>
<br>
Your night-stand is oak and black pipe, with an old radio-clock that wakes you up to the sound of a shredding guitar solo.
<<default>>
ERROR: unexpected status_flat.bedroom <<=$status_flat.bedroom>>
<</switch>>
<br><br>
<<if setup.hasUpgrade($bed, 'flatscreen_tv') || setup.hasUpgrade($bed, 'camera')>>
<<if setup.hasUpgrade($bed, 'flatscreen_tv') && setup.hasUpgrade($bed, 'camera')>>
There is a large flatscreen and matching camera installed on one wall, facing the bed.
<<elseif setup.hasUpgrade($bed, 'flatscreen_tv')>>
There is a large flatscreen TV installed on one wall facing the bed.
<<elseif setup.hasUpgrade($bed, 'camera')>>
There is a camera mounted to one wall, facing the bed.
<</if>>
<br><br>
<</if>>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear') || setup.hasUpgrade($bed, 'penis_milker') || setup.hasUpgrade($bed, 'breast_milker')>>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear') && setup.hasUpgrade($bed, 'penis_milker') && setup.hasUpgrade($bed, 'breast_milker')>>
Your bed has been fully equipped with bondage and two separate auto-milking devices for nocturnal occupation.
<<else>>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear')>>
Your bed has been upgraded with bondage cuffs on a timer so that you can sleep restrained.
<</if>>
<<if setup.hasUpgrade($bed, 'penis_milker') && setup.hasUpgrade($bed, 'breast_milker')>>
There is a full-functioning milking device next to the bed.
<<elseif setup.hasUpgrade($bed, 'penis_milker')>>
There is a penile milking device next to the bed.
<<elseif setup.hasUpgrade($bed, 'breast_milker')>>
There is a breast auto-milker next to the bed.
<</if>>
<</if>>
<br><br>
<</if>>
[<<moveTo 'room_bedroom' 'Back.' 1>>]
</div>/*#
#desc: set time for activity
#status: FINISHED 0.4.0.0
#ignore_spell: h,m
#*/
<center>
<<=$scene.dTimeD.text>><br>
<br>
<table>
<tr>
<td>
<<button '<img src="./images/interface/arrow_up_64.png" height="64" width="64">'>>
<<set $scene.dTimeD.startHour = setup.changeTimeValue($scene.dTimeD.startHour,$scene.dTimeD.stepHour,0,$scene.dTimeD.maxHour)>>
<<set _tmp = setup.changeDialogValue($scene.dTimeD.startHour,"#dialogTimeHours")>>
<</button>>
</td>
<td>
<<button '<img src="./images/interface/arrow_up_64.png" height="64" width="64">'>>
<<set $scene.dTimeD.startMinute = setup.changeTimeValue($scene.dTimeD.startMinute,$scene.dTimeD.stepMinute,0,$scene.dTimeD.maxMinute)>>
<<set _tmp = setup.changeDialogValue($scene.dTimeD.startMinute,"#dialogTimeMinutes")>>
<</button>>
</td>
</tr>
<tr>
<td style="text-align:center;height:48px">
<span style="margin: 10px" id="dialogTimeHours"><<=$scene.dTimeD.startHour>></span>h
</td>
<td style="text-align:center;height:48px">
<span style="margin: 10px" id="dialogTimeMinutes"><<=$scene.dTimeD.startMinute>></span>m
</td>
</tr>
<tr>
<td>
<<button '<img src="./images/interface/arrow_down_64.png" height="64" width="64">'>>
<<set $scene.dTimeD.startHour = setup.changeTimeValue($scene.dTimeD.startHour,-1,0,$scene.dTimeD.maxHour)>>
<<set _tmp = setup.changeDialogValue($scene.dTimeD.startHour,"#dialogTimeHours")>>
<</button>>
</td>
<td>
<<button '<img src="./images/interface/arrow_down_64.png" height="64" width="64">'>>
<<set $scene.dTimeD.startMinute = setup.changeTimeValue($scene.dTimeD.startMinute,-10,0,$scene.dTimeD.maxMinute)>>
<<set _tmp = setup.changeDialogValue($scene.dTimeD.startMinute,"#dialogTimeMinutes")>>
<</button>>
</td>
</tr>
</table>
</center>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<moveTo $scene.dTimeD.followup>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: set onetime alarm at home
#status: FINISHED 0.8.0.0
#ignore_spell: m,h
#*/
@@.textLeftSide;
<<=$scene.dTimeD.text>>
@@
@@.textRightSide;
Currently set alarms
@@
<br>
<br>
<table>
<tr>
<td>
<<button '<img src="./images/interface/arrow_up_64.png" height="64" width="64">'>>
<<set $scene.dTimeD.startHour = setup.changeTimeValue($scene.dTimeD.startHour,$scene.dTimeD.stepHour,0,$scene.dTimeD.maxHour)>>
<<set _tmp = setup.changeDialogValue($scene.dTimeD.startHour,"#dialogTimeHours")>>
<</button>>
</td>
<td>
<<button '<img src="./images/interface/arrow_up_64.png" height="64" width="64">'>>
<<set $scene.dTimeD.startMinute = setup.changeTimeValue($scene.dTimeD.startMinute,$scene.dTimeD.stepMinute,0,$scene.dTimeD.maxMinute)>>
<<set _tmp = setup.changeDialogValue($scene.dTimeD.startMinute,"#dialogTimeMinutes")>>
<</button>>
</td>
<td width="320px" style="text-align:right">
@@.textRightSide;
Mon-Fri<br>
<span style="margin: 10px" id="workweekAlarm"><<=setup.shortTime(Date.UTC(1,1,1,$player.clock.workweek.h,$player.clock.workweek.m))>></span>
@@
</td>
</tr>
<tr>
<td style="text-align:center;height:48px">
<span style="margin: 10px" id="dialogTimeHours"><<=$scene.dTimeD.startHour>></span>h
</td>
<td style="text-align:center;height:48px">
<span style="margin: 10px" id="dialogTimeMinutes"><<=$scene.dTimeD.startMinute>></span>m
</td>
</tr>
<tr>
<td>
<<button '<img src="./images/interface/arrow_down_64.png" height="64" width="64">'>>
<<set $scene.dTimeD.startHour = setup.changeTimeValue($scene.dTimeD.startHour,-1,0,$scene.dTimeD.maxHour)>>
<<set _tmp = setup.changeDialogValue($scene.dTimeD.startHour,"#dialogTimeHours")>>
<</button>>
</td>
<td>
<<button '<img src="./images/interface/arrow_down_64.png" height="64" width="64">'>>
<<set $scene.dTimeD.startMinute = setup.changeTimeValue($scene.dTimeD.startMinute,-10,0,$scene.dTimeD.maxMinute)>>
<<set _tmp = setup.changeDialogValue($scene.dTimeD.startMinute,"#dialogTimeMinutes")>>
<</button>>
</td>
<td style="text-align:right">
@@.textRightSide;
Sat-Sun<br>
<span style="margin: 10px" id="weekendAlarm"><<=setup.shortTime(Date.UTC(1,1,1,$player.clock.weekend.h,$player.clock.weekend.m))>></span>
@@
</td>
</tr>
</table>
<br>
@@.textRightSide;
<<button "Close">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Set for weekdays">>
<<set $scene.dTimeD.part = "workweek">>
<<set _tmp = setup.changeDialogValue(setup.shortTime(Date.UTC(1,1,1,parseInt($scene.dTimeD.startHour,10),parseInt($scene.dTimeD.startMinute))), "#workweekAlarm")>>
<<moveTo $scene.dTimeD.followup>>
<</button>>
<<button "Set for weekend">>
<<set _tmp = setup.changeDialogValue(setup.shortTime(Date.UTC(1,1,1,parseInt($scene.dTimeD.startHour,10),parseInt($scene.dTimeD.startMinute))), "#weekendAlarm")>>
<<set $scene.dTimeD.part = "weekend">>
<<moveTo $scene.dTimeD.followup>>
<</button>>@@
<br>/*#
#desc: set morning alarm
#status: FINISHED 0.4.0.0
#*/
<<set $player.clock[$scene.dTimeD.part].h = parseInt($scene.dTimeD.startHour,10)>>
<<set $player.clock[$scene.dTimeD.part].m = parseInt($scene.dTimeD.startMinute)>>
<<if $player.clock[$scene.dTimeD.part].h < 5 || $player.clock[$scene.dTimeD.part].h > 12>>
<<set $player.clock[$scene.dTimeD.part].h = 7>>
<<set $player.clock[$scene.dTimeD.part].m = 0>>
<<set $scene.badAlarm = true>>
<</if>>
<<moveTo "event_sleep_configure">>/*#
#desc: try to sleep at home
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.resting>>
<<set $scene.rest = setup.fallAsleep()>>
<<set _tmp = parseInt($scene.dTimeD.startHour)*60+parseInt($scene.dTimeD.startMinute)>>
<<if $scene.rest.reason == "none">>
<<set $now to setup.sleepMin($player,$now,_tmp,true)>>
<<else>>
<<set $now to setup.sleepMin($player,$now,_tmp,false)>>
<</if>>
<<set $scene.resting = false>>
<</if>>
<</if>>
<<checkTaskEvents>> /% since we timejumped in the changeroom%/
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.rest.reason == 'none' || $scene.rest.reason == 'sleepless_night'>>
<<createAdvBGR setup.getBedroomImage()>>
<<else>>
<<createAnimatedBGR "./video/sleepless.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.rest.reason>>
<<case 'none'>>
You lie down and rest for a while.
<<case 'underwear'>>
Your toss and turn, bothered how your underwear seems to bunch up awkwardly.
<<case 'male_underwear'>>
Your toss and turn, your underthings bunching up and rubbing annoyingly.
<<case 'sleepless_night'>>
You try to lie down and nap, but end up tossing and turning without getting much in the way of rest.
<<case 'horny'>>
You try to lie down and rest, but you're simply too horny to relax enough to be well rested.
<<case 'plug'>>
You try to lie down and rest, but you can feel your <<=setup.getItemTypeName('plug')>> pressing against your <<getWordAnus false>>. This prevents you from being well rested.
<<case 'no_plug'>>
You try to lie down and rest, but you can't stop trying to finger your empty hole. You yearn to be plugged, to feel your posterior properly pacified, packed and stretched.
<<case 'cage'>>
You try to lie down and rest,
<<if $player.body_ref.penis>>
but you can feel the <<=setup.getItemTypeName('cage')>> encasing your <<getWordMyPenis false>> and it prevents you from getting a good night's sleep.
<<else>>
but the prison encasing your crotch has you pawing helplessly and unable to settle down to sleep.
<</if>>
<</switch>>
<br><br>
[<<moveTo "room_bedroom" "Get up again." 0>>]
</div>/*#
#desc: your wardrobe
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Wardrobe">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
<<if $scene.firstWardrobe>>
You open the Wardrobe. There's a lot of empty space now that <<=setup.getNpcName('npc_exgirlfriend', 'first')>> moved out and took her belongings with her.<br>
<br>
<<printThought "Just great. Even the absence of things reminds me of how hollow my existence has become. I really need to do something that fills that void.">><br>
<<else>>
You open the Wardrobe. You can put things from your inventory in here rather than carrying them all across creation.<br>
<<include thoughts_home>>
[<<moveTo "room_bedroom" "Return to the Bedroom." 1>>]<br>
<</if>>
<<printWardrobe>><br>
[<<moveTo "room_bedroom" "Return to the Bedroom." 1>>]
</div>/*#
#desc: camgirl intro forced: blackmailed
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You close the porn window only to get a pop-up ad. You gasp as it shows an image of you, clearly taken mere moments ago, your face twisted in pleasure as you were in the middle of passionately playing with yourself.<br>
<br>
<<printThought "What? My camera was broadcasting?">><br>
<br>
"@@.generic_male1;Hey <<if $fetish.sissy>>sissy<<else>>slut<</if>>. You look like just the sort of girl I'm looking for. I loved your show, but skills like that ought to be shown to the world. Here's a link to sign up to be a Camgirl — the perfect job for a lazy, horny <<if $fetish.sissy>>sissy<<else>>slut<</if>> like yourself. I'll be looking forward to your first stream... and you better make it a good one, otherwise I'll be sending these choice images I already have to everyone you know.@@"<br>
<br>
<<if setup.getTotalValue("humiliation") > 10>>
<<if setup.getTotalValue("humiliation") > 15>>
<<printThought "That idea turns me on, but so does camming...">>
<<else>>
<<printThought "That idea almost turns me on, but camming actually sounds kind of fun?">>
<</if>>
<<else>>
<<if setup.getTotalValue("humiliation") > 5>>
<<printThought "Camming? I could never do that, but if I don't...">>
<<else>>
<<printThought "Oh <<getWordGod>>! What am I going to do?">>
<</if>>
<</if>>
<br><br>
You try to think only for a count-down timer to appear on your screen and start ticking down...<br>
<br>
<<printThought "Shit... I don't have a choice... well, maybe I can just do one show and nobody else will have to know...">><br>
<br>
[<<moveTo "event_camgirl_first_1" "Apply for membership in the Camgirl Union." 60 "<<set $scene.style='forced'>>">>]
</div>/*#
#desc: camgirl enthusiast option
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.stream>>
<<set $player.sec_style.sex.camgirl = "enthusiast">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.stream>>
Still on a bit of an adrenaline high you search for how to start streaming, quickly finding yourself on an application page for Camgirl Union Membership, which seems to be the parent organisation that all streamers belong to.<br>
<br>
[<<moveTo "event_camgirl_first_1" "Apply for membership in the Camgirl Union." 60 "<<set $scene.style='enthusiast'>>">>]
<<else>>
You step away from your computer. Streaming is one thing, but just being on camera without that to focus on seems a bit much.<br>
<br>
[<<moveTo "room_livingroom" "Stand up from your computer." 60>>]
<</if>>
</div>/*#
#desc: camgirl intro obedient — therapist suggestion
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addEmail $computer
'<<=setup.getNpcName("npc_psychiatrist", "full")>>'
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
$now
'mail_camgirl_obedient_h'
'mail_camgirl_obedient_t'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You are getting ready to leave when <<=setup.getNpcName('npc_psychiatrist', 'formal')>> raises a final idea.<br>
<br>
"@@.npc_psychiatrist;So we have been making some wonderful progress, but one of the things I have noticed is that you still have a bit of hesitancy. I think it stems from a ingrained unwilligness to expose the real you, not just in public, but also to yourself.@@"<br>
<br>
<<printThought 'The "real" me?'>><br>
<br>
"@@.npc_psychiatrist;I have a suggestion that I think might help you explore such things in a more... secure way. Have you ever considered doing cam shows?@@"<br>
<br>
You blink in surprise — you don't know what you were expecting her to suggest, but this definitely wasn't it.<br>
<br>
Smoothly moving past your obvious shock she smiles, "@@.npc_psychiatrist;I understand that such a suggestion may seem strange, but it really would be a perfect solution for you. You would be in control, in the familiar environment of your own home, but also free to experiment and get real feedback from others... but without the "stakes" of it being people you know or have to work with. I will send you an email with some introductory sign-up information. The Camgirl Union offers some very impressive assistance, and, as a bonus, getting Camgirl Union Membership could actually cover part of your therapy costs due to their quite impressive mental wellness program.@@"<br>
<br>
You thank her for the... interesting suggestion, and continue getting ready to leave.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_citymap" "Thank her and leave the office." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "event_psychiatrist_1stsession_changingroom_leave" "Head for the changing room." 1 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: first time camgirl: setup
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600, true)>>
You are about to apply for your Camgirl Union Membership when you remember that you had something planned.<br>
<br>
<<printThought "Paperwork always takes longer than you'd thing. Best not a good idea to get involved in something like this right now. But when I have a bit more free time...">>
<<else>>
You try to register for the Camgirl Union, but the website spits back an error that it's temporarily down for maintenance, and you should check back later.<br>
<br>
<<printThought "Server outages... always frustrating.">>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Stand up from your computer." 60>>]
<<elseif !setup.hasUpgrade($computer, 'webcam')>>
Trying to be a camgirl when you don't even have a camera doesn't make much sense.<br>
<br>
<<if setup.checkItemOwned("webcam")>>
<<printThought "I should really install that webcam I bought...">>
<<else>>
<<printThought "Looks like I need to swing by <<printShopName 'mall_wholesale_store'>> in the mall to buy a webcam.">>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Stand up from your computer." 60>>]
<<else>>
<<if $scene.style == "enthusiast">>
You hit the sign-up link on the Camgirl Union website and start entering your info.
<<else>>
You browse to the Camgirl Union website and start the sign-up process.
<</if>>
Skimming their policies you're actually surprised at the breadth of benefits being a member will afford you, extending beyond what you would have expected, like the basics of assistance in growing your fan-base and participating in cross-overs with other streamers, but actually including healthcare subsidies that can be applied to both mental and physical healthcare.<br>
<br>
<<printThought "Wow, this is a better package than a lot of corporate jobs... looks like the dues are pretty reasonable too, especially starting out!">><br>
<br>
As a beginner streamer your union contribution will be small, with the percentage scaling progressively so that the larger, more successful streamers who can afford it pay a larger portion.<br>
<br>
You double check that everything is in order and then it's time to choose your Camgirl Union Membership handle.<br>
<br>
<<if $options.isMobile>>
<<textbox "$player.flags.camgirl.name" "" autofocus>><br>
<br>
[<<moveTo "event_camgirl_first_2" "Confirm." 30>>]<br>
<<else>>
[<<link "Enter your Camgirl Union Membership handle">><<openDialog "Enter your Camgirl Union Membership handle:" "dialog_selectNameCamgirl">><</link>>]
<</if>>
<</if>>
</div>/*#
#desc: dialog box for choosing your camgirl name
#status: RELEASED 0.8.9.0
#*/
<center>
<<textbox "$player.flags.camgirl.name" "" autofocus>>
</center>
<br>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'event_camgirl_first_2'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: first time camgirl: slut survey
#status: RELEASED 0.8.9.0
#ignore_spell: d,s,camgirling
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.stream_survey = {
"self" : false,
"dress" : false,
"kinkydress" : false,
"toys" : false,
"dungeon" : false,
"past" : 0,
"slut" : 0,
"adventure" : 0,
"sub" : 0
}>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.camgirl.name == "">>
The system spits out an error. It would appear that you can't enrol without selecting some sort of online handle.<br>
<br>
[<<link "Enter your Camgirl Union Membership handle">><<openDialog "Enter your Camgirl Union Membership handle:" "dialog_selectNameCamgirl">><</link>>]
<<else>>
"@@.generic_female1;Welcome!@@" The screen announces, complete with cheesy firework effects, as you finish your application.<br>
<br>
"@@.generic_female1;You've been approved to become Camgirl Union Member — before we introduce you to the world though, we'd like to ask a few questions so we can better direct viewers that would be most interested in the unique things YOU have to offer!@@"<br>
<br>
"@@.generic_female1;We respect and protect the privacy and security of all our members. Your answers will be never be used without your permission, and are only used by our advanced algorithm to better classify your stream based on your intentions and personal style — so answer honestly... but don't be timid! Camgirling is what YOU make it to be!@@"<br>
<br>
Your past performance:<br>
<<set _disable = '<input type="radio" name="nope" value="nope2" disabled>'>>
<label>I've never done anything like this: <<radiobutton "$scene.stream_survey.past" 0 autocheck>></label><br>
<label>I've streamed, but nothing sexual: <<if $player.flags.streaming.stage > 1>><<radiobutton "$scene.stream_survey.past" 1 autocheck>><<else>><<=_disable>><</if>></label><br>
<label>I've been on camera naked before... and I liked it!: <<if $player.flags.streaming.stage > 2>><<radiobutton "$scene.stream_survey.past" 2 autocheck>><<else>><<=_disable>><</if>></label><br>
<label>I've fucked in front of an audience: <<if $player.flags.streaming.stage > 3>><<radiobutton "$scene.stream_survey.past" 3 autocheck>><<else>><<=_disable>><</if>></label><br>
<label>I did a fetish stream once...: <<if $player.flags.porn.pornname>><<radiobutton "$scene.stream_survey.past" 4 autocheck>><<else>><<=_disable>><</if>></label><br>
<label>I've worked as a prostitute: <<if setup.getTotalValue("whoring") > 5>><<radiobutton "$scene.stream_survey.past" 5 autocheck>><<else>><<=_disable>><</if>></label><br>
<label>I've appeared professionally in porn: <<if $player.flags.porn.pornname>><<radiobutton "$scene.stream_survey.past" 6 autocheck>><<else>><<=_disable>><</if>></label><br>
<br>
Your style:<br>
<label>I don't want to do D/S play on stream <<radiobutton "$scene.stream_survey.sub" 0 autocheck>></label><br>
<label>I am, or aspire to be, a slave, and want to submit on stream <<radiobutton "$scene.stream_survey.sub" 1 autocheck>></label><br>
<label>I am a dominant, and want to put my fans in their place... at my feet! <<radiobutton "$scene.stream_survey.sub" 2 autocheck>></label><br>
<label>I want to switch it up! <<radiobutton "$scene.stream_survey.sub" 3 autocheck>></label><br>
<br>
What you'll do for fan engagement:<br>
<label>I just want to chat with and get to know my fans <<radiobutton "$scene.stream_survey.slut" 0 autocheck>></label><br>
<label>I could see myself streaming naked <<radiobutton "$scene.stream_survey.slut" 1 autocheck>></label><br>
<label>I want to masturbate for strangers... <<radiobutton "$scene.stream_survey.slut" 2 autocheck>></label><br>
<label>I'm interested in live sex shows <<radiobutton "$scene.stream_survey.slut" 3 autocheck>></label><br>
<br>
Equipment:<br>
<label>I just have myself! <<checkbox "$scene.stream_survey.self" false true>></label><br>
<label>I have some fun outfits I'd like to try on-stream <<checkbox "$scene.stream_survey.dress" false true>></label><br>
<label>I have some kinky stuff I'd like to show off... <<checkbox "$scene.stream_survey.kinkydress" false true>></label><br>
<label>I have sex toys I'd love to use on stream. <<checkbox "$scene.stream_survey.toys" false true>></label><br>
<label>I'm looking forward to inviting fans into my private dungeon... <<checkbox "$scene.stream_survey.dungeon" false true>></label><br>
<br>
[<<moveTo "event_camgirl_first_3" "Finish and get your profile picture taken." 60>>]
<</if>>
</div>/*#
#desc: first time camgirl: survey results
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.camgirl>>
<<set $player.sec_style.sex.camgirl = $scene.style>>
<</if>>
<<set $scene.stream_survey.adventure = $scene.stream_survey.past + $scene.stream_survey.sub + $scene.stream_survey.slut>>
<<if $scene.stream_survey.dress>>
<<set $scene.stream_survey.adventure += 1>>
<</if>>
<<if $scene.stream_survey.kinkydress>>
<<set $scene.stream_survey.adventure += 1>>
<</if>>
<<if $scene.stream_survey.toys>>
<<set $scene.stream_survey.adventure += 2>>
<</if>>
<<if $scene.stream_survey.dungeon>>
<<set $scene.stream_survey.adventure += 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You finish the survey and wait for it, and your picture, to be analysed.<br>
<br>
Our visual analysis indicates that you would be best advertising yourself as a:
<<if $fetish.sissy>>
Sissy Slut
<<elseif 'fetish' == setup.analyzeWornTags(['slutty','casual','office','formal','schoolgirl','maid','fetish'])>>
Fetish
<<elseif 'slutty' == setup.analyzeWornTags(['slutty','casual','office','formal','schoolgirl','maid','fetish'])>>
Bimbo
<<elseif setup.getTotalValue("feminization") > 15 || $player.identify_as == 'female'>>
Cute Girl
<<elseif $player.identify_as == 'male'>>
Cute Femboi
<<else>>
Cute Enby
<</if>>
Streamer. "Congratulations!" <br>
<br>
Your "adventurousness" score of: <<=$scene.stream_survey.adventure>> indicates that
<<switch $scene.stream_survey.adventure>>
<<case 17>>
you are the ultimate slut. Welcome to the team, so are we! If you show what you've got to the world the sky is the only limit... because you don't seem to have any!
<<case 14 15 16>>
you are a total slut. Welcome to the team, so are we! If you show what you've got to the world the sky is the only limit... because you don't seem to have any!
<<case 11 12 13>>
you are a committed slut. Welcome to the team, so are we! You do you and you're sure to suck... success, that is!
<<case 7 8 9 10>>
you are an accomplished slut. Welcome to the team, so are we! You're off to a strong start and we look forward to seeing where your future lies!
<<case 4 5 6>>
you're an aspiring slut. We were all there once, we wish you luck in your continued development and are looking forward to seeing how far you go!
<<case 1 2 3>>
you're inexperienced, but we all have to start somewhere!
<<case 0>>
you are a total innocent. You may struggle if you don't loosen up; though you could well attract fans who enjoy watching you take a journey from zero to hero-ic super-slut!
<<default>>
ERROR: unexpected scene.stream_survey.adventure <<=$scene.stream_survey.adventure>>
<</switch>>
<br><br>
<<if setup.checkOutsideDecency() || "makeup_too_fem" == setup.checkOutsideDecencyReason()>>
[<<moveTo "event_camgirl_first_4" "Start your first stream..." 600>>]
<<else>>
<<if ["makeup_none", "makeup_messy"].includes(setup.checkOutsideDecencyReason())>>
<<printThought "I can't go on camera with my makeup in THIS state!">><br>
<br>
[<<moveTo 'room_do_makeup' 'Go fix your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="event_camgirl_first_4">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Back to your computer and start your stream.">>'>>]<br>
<</if>>
[@@.link_locked;You wouldn't go outside dressed like this, so jumping on camera for your first stream feels like a no.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: first time camgirl: welcome intro
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You click go-live and your camera comes on, but rather than a chatroom for you to broadcast to fans, you find yourself in a one on one video chat with a smiling girl.<br>
<br>
"@@.generic_female1;Hello! My name is <<if $fetish.sissy>>Sissy <</if>>Prowler. I'm a CUM-slut — that's the slang we Camgirl Union Members casually refer to ourselves, I just wanted to welcome you to the fold and give you some tips before you start your first stream.@@"<br>
<br>
Her smile is positively radiant, her exuberance reminding you a bit of your friend <<=setup.getNpcName("npc_barista","nickname")>> as you can immediately see why she does these sorts of introductions.<br>
<br>
[<<moveTo "event_camgirl_first_5" "Thank her for the gesture and wait to hear what she has to say." 600>>]
</div>/*#
#desc: first time camgirl: detailed welcome
#status: RELEASED 0.8.9.0
#ignore_spell: fuckalong
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.stream_survey.past>>
<<case 0>>
"@@.generic_female1;So, according to your survey you don't have any prior experience? That's fine. I was the same way, just looking for some extra income to help with college and now, well... I'm putting that economics major to a bit of a different use, you know!@@"
<<case 1>>
"@@.generic_female1;So, according to your survey you've streamed, but nothing sexual. That's a good base, just think of it that, rather than playing a game, your body is the game, and people are tuning in to see how well you play with it...@@"
<<case 2>>
"@@.generic_female1;So, it says you've streamed naked before? That's great, being comfortable showing off in just what nature — or your favourite doctor, gave you is great. The only difference here is that rather there being a game for people to focus on, YOU have the limelight — enjoy it!@@"
<<case 3>>
"@@.generic_female1;So, it says you've had experience fucking in front of an audience before? That's great... and just looking at you I can imagine how fucking hot it was. Just take that experience as a springboard, embrace being an actor-director and you'll find camming great fun.@@"
<<case 4>>
"@@.generic_female1;So, it says you've done a fetish stream before? That's a bit unique, usually people ramp up rather than going straight into the deep end... either way, if you've done THAT, well... this should be pretty simple, just remember that it's all about that audience engagement.@@"
<<case 5>>
"@@.generic_female1;So, it says you've worked as a prostitute. That's great, much respect to my sisters on the street, or the sheets, or wherever else! This is sex work too, after all. You just need to think of the whole audience, rather than a single trick... with the added benefit that you can do it all from the comfort of your own home!@@"
<<case 6>>
"@@.generic_female1;Great, so from your survey it says you've worked in porn... wait... you're <<=$player.flags.porn.pornname>>! Oh I LOVE your work, the way you handle a giant dick? Life. GOALS.@@"<br>
<br>
You blush and thank her for the patronage.<br>
<br>
"@@.generic_female1;No, thank YOU for all you've done, and the times you've been done! To think I was expecting to welcome some naive neophyte... and I get to meet one of my idols!@@" She bites her lip and fans her face. "@@.generic_female1;Sorry, still star-struck, I bet you hear this all the time, but I've lost count of how many times I've cum watching your videos heck,
<<if $player.flags.porn.genre.anal>>
I did a "fuckalong" to
<<if $fetish.bestiality_soft>>
<<if !$npc_cook.fem>>The Stallion Who Would Mount<<else>>Mounting<</if>> the Girl: A <<=$player.flags.porn.pornname>> Love Story.
<<else>>
Bigger and Deeper: <<=$player.flags.porn.pornname>> Takes it All
<</if>>
just the other night, got some good tips too... well, more than the tip,
<<else>>
I've even considered doing a watch-along of one of your videos on stream...
<</if>>
if you know what I mean!@@"<br>
<br>
She laughs and you thank her for being a fan. "@@.generic_female1;Of course! Anyway, back on topic. What I was going to say is that, despite your previous experience... this is a new platform. You'll build a reputation over time, and I'm sure you're eager to start showing your skills, but our metrics show that members have better long-term success if they build their brand up progressively. Don't give things away for free, let your fans watch you develop gradually, focus on really enjoying every step and grope and fuck of the journey, you know?@@"
<<default>>
ERROR: unexpected scene.stream_survey.past <<=$scene.stream_survey.past>>
<</switch>>
<br><br>
She glances off-screen, presumably reviewing your survey.<br>
<br>
"@@.generic_female1;So I'm not going to bore you with the detailed analysis of your survey, suffice to say that the more you can offer your fans, the better, be that toys, clothes or what you're willing to do — just remember that you're a professional and that means acting like one — keep to your word, if you offer up a goal, deliver, but if you don't reach the goal... don't give it away for free, trust me, it's not worth it in the long term. The rest, well... "be yourself" is the cliche, but the more accurate version is be an exaggerated version of your best self — people are tuning in for a show, so perform, but keep it authentic! Take the "public" you and just... go a step or three further, experiment, and most of all? Have fun!@@"<br>
<br>
You thank her for the advice and she smiles. "@@.generic_female1;Of course, we want YOU to succeed, and enjoy yourself doing it. That's why the Union provides moderation assistance, plus medical and the rest — performing in front of an audience can be stressful, even under the best of situations. We're here to help make sure you can focus on the fun because when you do? Everyone wins. Now, if there are no further questions I'm going to let you continue on to your first stream — you'll go into a special queue for vetted viewers that like seeing the latest new thing just starting out — good luck, and have a great time in CUM!@@"<br>
<br>
[<<moveTo "event_camgirl_first_6" "Continue on to your first stream..." 600>>]
</div>/*#
#desc: first time camgirl: first stream start + set target
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
The two-way videocall ends and you find yourself in a new room — broadcasting to a handful of viewers.<br>
<br>
"@@.generic_male1;Welcome!@@"<br>
<br>
"@@.generic_female1;<<=$player.flags.camgirl.name>>! Welcome... you look even cuter than your pfp!@@"<br>
<br>
You blush, which only excites your viewers even more, and then say hi and introduce yourself as
<<switch $scene.stream_survey.sub>>
<<case 0>>
just a regular <<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>guy<<default>>person<</switch>> looking to experiment a little and show yourself off.
<<case 1>>
an eager slave looking to practice your submission online.
<<case 2>>
an aspiring <<if $player.identify_as=="male">>dom<<else>>domme<</if>> looking to hone your skills online.
<<case 3>>
an eager switch, looking to experience it all, and show off at the same time!
<<default>>
ERROR: unexpected scene.stream_survey.sub <<=$scene.stream_survey.sub>>
<</switch>>
<br><br>
"@@.generic_male2;That's hot! But, as this is your first time... let's ease into things. Crawl before you walk and all that.@@"<br>
<br>
"@@.generic_female2;Yeah, how about you set a "goal" for the session — always a good practice, then tell us a bit more about yourself and see how things go?@@"<br>
<br>
You smile, everyone is so welcoming! If you could make money like this, well...<br>
<br>
You consider what sort of goal to set, bearing in mind the advice you've already received.<br>
<br>
<<printThought "If I hit today's target I'll...">><br>
<br>
[<<moveTo "event_camgirl_first_7" "Flash chat." 60 "<<set $scene.goal='flash'>>">>]
<<if $scene.stream_survey.toys>>
[<<moveTo "event_camgirl_first_7" "Show off your sex toy collection." 60 "<<set $scene.goal='toy'>>">>]<br>
<</if>>
<<if $scene.stream_survey.dress>>
<<if setup.checkItemSetOwned("maid_basic_black") || setup.checkItemSetOwned("maid_basic_pink") || setup.checkItemSetOwned("maid_slutty_black") || setup.checkItemSetOwned("maid_slutty_pink") || setup.checkItemSetOwned("maid_pvc_black") || setup.checkItemSetOwned("maid_pvc_pink")>>
[<<moveTo "event_camgirl_first_7" "Pose in a maid outfit." 60 "<<set $scene.goal='maid'>>">>]<br>
<</if>>
<<if setup.checkItemSetOwned("schoolgirl_black") || setup.checkItemSetOwned("schoolgirl_pink") || setup.checkItemSetOwned("schoolgirl_slutty")>>
[<<moveTo "event_camgirl_first_7" "Pose in a schoolgirl outfit." 60 "<<set $scene.goal='school'>>">>]<br>
<</if>>
<</if>>
<<if $scene.stream_survey.kinkydress>>
<<if setup.checkItemSetOwned("maid_latex_black") || setup.checkItemSetOwned("maid_latex_pink")>>
[<<moveTo "event_camgirl_first_7" "Pose in a latex maid outfit." 60 "<<set $scene.goal='latex_maid'>>">>]<br>
<</if>>
<<if setup.inventorySlotTags('bodysuit', ['latex'])>>
[<<moveTo "event_camgirl_first_7" "Pose in a latex catsuit." 60 "<<set $scene.goal='catsuit'>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: first time camgirl: first stream target hit
#status: RELEASED 0.8.9.0
#ignore_spell: ui
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
The streamer UI is very intuitive and you set up your goal, accepting the default suggestion to set your target at a modest twenty credits.<br>
<br>
"@@.generic_female1;Hey, hey! Look at <<=$player.flags.camgirl.name>>, being all professional with goals and such!@@"<br>
<br>
You start chatting with your viewers a bit but it isn't more than a few minutes on before your target is hit... looks like it's time to make good on your promise...<br>
<br>
<<if ["flash","toy"].includes($scene.goal)>>
[<<moveTo "event_camgirl_first_8" "Complete the request and earn your reward." 60 "<<set $scene.obey=true>>">>]<br>
<<else>>
[<<moveTo "event_camgirl_first_8_equip" "Complete the request and earn your reward." 60 "<<set $scene.obey=true>>">>]<br>
<</if>>
[<<moveTo "event_camgirl_first_8" "Actually... you don't want to do that." 60 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: first time camgirl: first stream change per request
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.goal>>
<<case 'maid'>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<moveTo "event_camgirl_first_8">>
<</if>>
<<case 'school'>>
<<if setup.checkVisibleClothingTag('schoolgirl') > 50>>
<<moveTo "event_camgirl_first_8">>
<</if>>
<<case 'latex_maid'>>
<<if setup.checkVisibleClothingTag('maid') > 60 && setup.checkVisibleClothingTag('latex') > 75>>
<<moveTo "event_camgirl_first_8">>
<</if>>
<<case 'catsuit'>>
<<if setup.checkItemTypeTag('bodysuit', ['latex'])>>
<<moveTo "event_camgirl_first_8">>
<</if>>
<</switch>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You think about your promise to
<<switch $scene.goal>>
<<case 'maid'>>
show off in a maid's outfit...
<<case 'school'>>
show off in a schoolgirl outfit...
<<case 'latex_maid'>>
show off in a latex maid outfit...
<<case 'catsuit'>>
wear a catsuit...
<</switch>>
<br><br>
<<hint $options "Change into the promised outfit in your inventory.">><br>
[<<moveTo "event_camgirl_first_8" "Actually... you don't want to do that." 60 "<<set $scene.obey=false>><<set $player.cutscene.lockinventory=true>>">>]
</div>/*#
#desc: first time camgirl: first stream do requested thing
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<switch $scene.goal>>
<<case 'flash'>>
<<applyExperience 'bimbofication' 10 'normal' $EXPOSED>>
<<case 'toy'>>
<<applyExperience 'bimbofication' 15 'normal' $EXPOSED>>
<<case 'maid'>>
<<applyExperience 'bimbofication' 12 'normal' $EXPOSED>>
<<case 'school'>>
<<applyExperience 'bimbofication' 13 'normal' $EXPOSED>>
<<case 'latex_maid'>>
<<applyExperience 'bimbofication' 14 'normal' $EXPOSED>>
<<case 'catsuit'>>
<<applyExperience 'bimbofication' 13 'normal' $EXPOSED>>
<</switch>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
<<switch $scene.goal>>
<<case 'flash'>>
You bite your lip and then pull up your top to flash chat with your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive breasts.<br>
<br>
"@@.generic_male2;Damn, those are glorious!@@"
<<case 'large'>>
large breasts.<br>
<br>
"@@.generic_male2;Now that's a perfect pair<<if $fetish.milking>> of milkers<</if>>!@@"
<<case 'medium'>>
breasts.<br>
<br>
"@@.generic_male2;Now that's a sexy pair<<if $fetish.milking>> of milkers<</if>>!@@"
<<case 'small'>>
small breasts.<br>
<br>
"@@.generic_male2;Now those are some cute titties!@@"
<<case 'none'>>
flat chest.<br>
<br>
"@@.generic_male2;What a cute chest!@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
You smile at the compliment as you fix your top, congratulated on making do on your target, but not going further.<br>
<br>
"@@.generic_female2;We're here to have fun, but you need to remember that, for you, this is a business and you're worth it.@@"
<<case 'toy'>>
<<include "calcOwnedDildos">>
<<if $scene.dildosOwned == 1>>
You grab your trusty dildo and show it off to your viewers.
<<else>>
You grab your toy-chest and spend some time showing off your plethora of sex toys to the delight of your viewers.
<</if>>
<br><br>
"@@.generic_female2;Looking good! One can never have enough toys, both in general and, well... having a variety to play with is great for continuing viewership, always something new to tune in for, you know?@@"
<<case 'maid'>>
You step away to change and pop back wearing your trusty maid outfit.<br>
<br>
"@@.generic_female2;Oh don't you look just adorable! I'd let you clean for me ANY day!@@"
<<case 'school'>>
You step away to change and pop back wearing your cute (and slutty) schoolgirl outfit.<br>
<br>
"@@.generic_female2;Oh don't you look just adorable! I'd love to have you as my student...@@"
<<case 'latex_maid'>>
You step away to change and pop back wearing your tight latex maid outfit.<br>
<br>
"@@.generic_female2;Oh don't you look shiny and sexy! I'd let you clean for me ANY day!@@"
<<case 'catsuit'>>
You step away to change and pop back wearing your latex catsuit.<br>
<br>
"@@.generic_female2;Ooooh, now that's even better than naked in my book. So shiny and sexy!@@"
<<default>>
ERROR: unexpected scene.goal <<=$scene.goal>>
<</switch>>
<br><br>
[<<moveTo "event_camgirl_first_9" "Continue the stream." 1800>>]
<<else>>
You get cold feet, surprisingly your viewers are understanding.<br>
<br>
"@@.generic_female2;First time jitters? Well, take it as a lesson — don't put something up that you aren't willing to go through with, otherwise you're liable to lose and offend viewers.@@"<br>
<br>
<<if ["flash","toy"].includes($scene.goal)>>
[<<moveTo "event_camgirl_first_8" "Go through with things after all." 60 "<<set $scene.obey=true>>">>]<br>
<<else>>
[<<moveTo "event_camgirl_first_8_equip" "Go through with things after all." 60 "<<set $scene.obey=true>>">>]<br>
<</if>>
[<<moveTo "event_camgirl_first_9" "Thank them for the advice and continue on casually." 1800>>]
<</if>>
</div>/*#
#desc: first time camgirl: first stream finish
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<<if $scene.obey>>
<<addCredits 25>>
<<set $player.flags.camgirl.followers = 5>>
<<else>>
<<addCredits 5>>
<<set $player.flags.camgirl.followers = 2>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You chat with your viewers for the rest of your "intro" stream, getting a few additional tips and just generally having a nice time before things wind down.<br>
<br>
They are quick to note that a normal stream can be a bit rowdier — but that you're always in control, and that there are tools and services to help with moderation so that everything stays within your personal limits.<br>
<br>
<<if $scene.obey>>
Having reached your "goal" you get that, plus a few additional credits from tips, less one credit that's taken out for union dues.
<<else>>
Since you didn't fulfill your goal you aren't entitled to that reward, instead pulling in just a handful of tips, below the threshold where you'd be required to contribute a small portion to union dues.
<</if>>
<br><br>
Before shutting down you check, looks like your performance has led to <<=$player.flags.camgirl.followers>> viewers adding you as a follow.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: camgirl action fashion show
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<<set $scene.camgirl.baseMod = 1.1>>
<<include "calcCamgirlChanges">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
To finish off your show, you take advantage of the wireless feature of your webcam to head for your wardrobe, letting your fans play living doll dress-up with your clothes as you show off variants of office and casual ensembles before finishing off with a formal outfit that has viewers gushing about how elegant and beautiful you look.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action phone sex
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.1>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Making good on your promise,
<<switch $scene.camgirl.style>>
<<case 'flirty'>>
you finish things off with some flirty phone sex, breathlessly talking about how much you love your fans, reading snippets of their words aloud and teasing back with how turned on all this attention has you feeling, and all the fantasies it sparks in your mind...
<<case 'submissive'>>
you submissively read aloud every perverse fantasy you can read in chat, touching yourself and writhing erotically on your way to your knees, talking about how much you love being a slave, how much you need to be discipline and used, how your greatest dream is to be completely devoted to the pleasure of your owner...
<<case 'dominant'>>
you turn up the dominance, talking your fans through communal edging, demanding that they listen to their voice and beg you for permission. You string them along, teasing and taunting until the last second... and then cruelly deny them permission, telling them that they need to prove their devotion to your glory by restricting themselves.
<<case 'slutty'>>
you finish off the show with a VERY racy role-play that has you moaning and touching yourself as you talk about how horny talking to your fans makes you; about all the things you'd do if they were there, begging for them to ravish you in ever way while your body is used as nothing but a pornographic plaything.
<<case 'bimbo'>>
you, like, finish off the show by going full bimbo; talking about how much you, like, want to feel your fan's cocks, to be painted and pumped full of cum while begging for more, to become a perfect plastic sex-doll, a passionate, pure personage of perverse pleasure.
<<default>>
ERROR: unexpected scene.camgirl.style <<=$scene.camgirl.style>>
<</switch>>
<br><br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action dance
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1 + setup.getTotalValue("dexterity")/200>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Taking the suggestion from one of your viewers you queue up a classic music video and, after clearing some space in front of your camera, break into dance.
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
Your lithe body moves as well as any of the professional dancers as you go move for move...
<<else>>
Moving almost as well as some of the backup dancers as you try to follow the classic choreography.
<</if>>
You had forgotten a particularly lewd final verse that wasn't in the "radio" version, but you keep things up and dance on through to the end, your fans whooping you on.
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
There's no way you can match the expert choreography of the dancers in the original video, but you do your best to move along to the music as you perform for your fans.
<<else>>
You stumble through the music video, your lack of coordination having you out of sync and off-time... though your failure seems to provide some amusement for your fans.
<</if>>
<</if>>
<br><br>
The song comes to an end and you strike a pose, basking in the enthusiastic response from your viewers before you call things a day.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action yoga
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'normal' $EXPOSED>>
<<set $scene.camgirl.baseMod = 1 + setup.getTotalValue("dexterity")/200>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You clear some space and go into a mixed calisthenics/yoga routine,
<<if setup.getTotalValue("dexterity") > 15>>
your nimble body moving with catlike grace as you focus on the most suggestive positions and angles to put on a real show of your "flexibility" for your viewers.
<<else>>
your body moving with elegance and grace as you shift between increasingly erotic positions, lingering on each static pose to let your viewers take it all in.
<</if>>
<br><br>
By the end of your routine you've worked up a bit of a sweat — and not so much from the exertion, but from the reaction you drew from your fans. You do a final twirl and pose, thanking your viewers for helping you hit your goal before you call it a day and end the broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action flash
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1 + $player.body.breastsize[0]/100>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Having hit your goal, you do a throwback to your first stream and flash your fans.<br>
<br>
The classics are classic for a reason and your viewers
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
gush with excitement at the sight of your massive, jiggling breasts.
<<case 'large'>>
whoop with enthusiasm at the sight of your big, bouncing breasts.
<<case 'medium'>>
show appreciation for your perfectly sized boobies.
<<case 'small'>>
show their enamoured appreciation for your cute little breasts.
<<case 'none'>>
show their admiration for your sweet and smooth chest.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
Sure to give your viewers their money's worth you pose from multiple angles and really let them drink it in before the broadcast comes to an end.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action bread
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem "wonder_bread">>
<<set _humil = setup.getTotalValue("humiliation")>>
<<applyExperience 'humiliation' _humil 'very' $EXPOSED>>
<<set $scene.camgirl.baseMod = 1.5 + setup.getTotalValue("humiliation")/200>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You pull out the loaf of <<=setup.getItemName("wonder_bread")>> and chat starts going crazy.<br>
<br>
"@@.generic_male1;Yo, she got the fucking BREAD!@@" "@@.generic_female1;So decadent!... but I can't look away@@"<br>
<br>
The words of encouragement soon descend into just a wave of bread emojis as you unwrap the plastic packaging and take your first bite.
"@@.generic_male2;eat that bread you slut!@@"<br>
<br>
The bread is soft and the flavour could, at best, be described as "mild" but, with chat cheering you on you take bite after bite, wolfing down the near-tasteless lump and licking up the crumbs to rapturous encouragement. "@@.generic_male1;I can't believe she ate it all!@@" "@@.generic_female1;What a slut, I bet SHE wants to be bread.@@" "@@.generic_male2;You mean she wants to be bred!@@"<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action strip intro
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
As you get closer and closer to the target you tease your viewers on, exposing a bit of skin, then pulling your clothes back on, teasing your viewers onward until the threshold is reached.<br>
<br>
You stand up with a grin and start to strip...<br>
<br>
[<<moveTo "event_camgirl_sexish_strip_2" "Strip." 600>>]
</div>/*#
#desc: camgirl action strip on camera
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.maid = setup.checkVisibleClothingTag('maid') > 60>>
<<set $scene.office = setup.checkVisibleClothingTag('office') > 50>>
<<set $scene.shoes = setup.getItemObjFromType("shoes")>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<set $scene.bottom = setup.getItemObjFromType("legwear")>>
<<set $scene.bottomId = setup.getItemFromType("legwear")>>
<<include "calcTopId">>
<<set $scene.top = setup.getItemObj($scene.topId)>>
<<set $scene.corset = setup.getItemObjFromType("corset")>>
<<set $scene.corsetId = setup.getItemFromType("corset")>>
<<set $scene.bra = setup.getItemObjFromType("bra")>>
<<set $scene.braId = setup.getItemFromType("bra")>>
<<set $scene.panties = setup.getItemObjFromType("panties")>>
<<set $scene.pantiesId = setup.getItemFromType("panties")>>
<<set $scene.stockings = setup.getItemObjFromType("stockings")>>
<<set $scene.stockingsId = setup.getItemFromType("stockings")>>
<<set $scene.garters = setup.getItemObjFromType("garter")>>
<<set $scene.gartersId = setup.getItemFromType("garter")>>
<<set $scene.camgirl.baseMod = 1.2>>
<<include "calcCamgirlChanges">>
<<removeAllClothing>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You turn on some music for accompaniment and, with your body moving sensuously in time with the track, you start to remove your clothes.<br>
<br>
/* outer clothes */
<<if $scene.maid && $scene.topId != "" && $scene.shoesId != "" && $scene.bottomId && $scene.bottom.tags.includes("skirt")>>
Giving a curtsy you turn slowly to show off your cute maid outfit, flipping up your skirt to show off your <<if $scene.pantiesId>><<=setup.getItemName($scene.pantiesId)>><<else>>lack of panties<</if>> underneath.<br>
<br>
Making a show of it you slip out of <<if $scene.bottomId.includes("apron")>>your apron<<else>>skirt<</if>>, then your top, dropping them in a pile with a bashful smile before bending over to
<<if $scene.shoesId.includes("mary_janes")>>
unbuckle your cute Mary Janes and slip out of them.<br>
<<elseif $scene.shoes.tags.includes("ballet")>>
unlace your steep ballet boots, showing off by balancing on one foot at a time as you remove each towering boot in turn.<br>
<<else>>
unbuckle your shoes and remove them as well.<br>
<</if>>
<<elseif $scene.office && $scene.topId.includes("blouse") && $scene.bottomId && $scene.bottom.tags.includes("skirt") && $scene.shoesId && $scene.shoes.hasOwnProperty("heels")>>
You give a formal curtsy, walking in a small circle to show off your cute secretarial attire before facing the camera and slowly unbuttoning your top. Keeping it closed even after you have it fully unbuttoned you tilt your head and bite your lip before finally exposing your <<if $scene.bra !== null>><<=setup.getItemName($scene.braId)>><<else>><<if setup.calcBreastSize() == "none">>chest<<else>>breasts<</if>><</if>> in a quick flash. Closing your blouse once more you blink demurely back at the camera before finally shedding the top.<br>
<br>
Unzipping your skirt partway you turn around and make a show of wiggling your butt as you shimmy out of the tight leather tube, kicking it to one side and then bending over to show off your <<if $scene.pantiesId>><<=setup.getItemName($scene.pantiesId)>><<else>>un<</if>>-clad rear.<br>
<br>
<<if $scene.shoesId.includes("thigh_highs")>>
Running your hands over your thigh-high boots you wink at your audience before unzipping each shoe, peeling away the tight pink patent leather to reveal your legs.<br>
<<else>>
Unbuckling your shoes you step out of your cute <<=setup.getItemName($scene.shoesId)>> and finally turn to face the camera.<br>
<</if>>
<<elseif $scene.topId == "shirt_female_office_teal" && $scene.bottomId && $scene.bottomId == "trousers_female_office_grey" && $scene.shoesId == "flats_black">>
Unbuttoning your (almost) unisex top, you reveal <<if $scene.bra !== null>>the far more feminine <<=setup.getItemName($scene.braId)>> beneath,<<else>>your bare <<if setup.calcBreastSize() == "none">>chest<<else>>breasts<</if>><</if>> following up by turning around. Sliding your tight pants down past your butt you show off your <<if $scene.pantiesId>><<=setup.getItemName($scene.pantiesId)>><<else>>un<</if>>-clad rear before kicking off your shoes and removing the pants entirely.<br>
<<else>>
Wiggling your body, you start by slowly <<if $scene.topId>>removing your <<=setup.getItemName($scene.topId)>><<else>>dancing<</if>>. Groping yourself a little, you show off your
<<if $scene.braId>>
<<=setup.getItemName($scene.braId)>>
<<else>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive tits
<<case 'large'>>
large breasts
<<case 'medium'>>
breasts
<<case 'small'>>
small breasts
<<case 'none'>>
bare, smooth chest
<</switch>>
<</if>>
before tracing your hands down to your hips.<br>
<br>
You <<if $scene.shoesId>>kick out of your <<=setup.getItemName($scene.shoesId)>><<else>>put on a show<</if>> as you turn around and bend over to best display your rear. <<if $scene.bottomId>>Shedding your <<=setup.getItemName($scene.bottomId)>>, you<<else>>You<</if>> wiggle your butt to show off your <<if $scene.pantiesId>><<=setup.getItemName($scene.pantiesId)>><<else>>lack of panties<</if>> before turning back to face the camera sporting a smile.<br>
<</if>>
<br>
Your viewers cheer at the sight of your underthings and you dance around a bit, turning in a slow circle to make sure they have a full view before you continue.<br>
<br>
<<if $scene.corsetId>>
Turning your back to the camera you loosen the laces on your corset just enough to pop the front busk, feeling your body expand now that it's no longer tightly compressed by the stringent garment. You playfully use the corset to "flash" your fans before tossing it with the rest of your shed clothing.<br>
<br>
<</if>>
/% undergarments %/
<<if $scene.braId == "sissy_bra_pink" && $scene.pantiesId == "sissy_panties_pink" && $scene.stockingsId == "sissy_stockings_pink" && ($scene.gartersId == "sissy_garter_pink" || $scene.gartersId == "")>>
You run your hands over your <<if $fetish.sissy>>sissy<<else>>girly<</if>> pink frills, bouncing a little to set the bells incorporated into your undergarments to chime in merry accompaniment to your show before slowly peeling off the layers of pink.<br>
<br>
First comes the bra as you pull it down to expose your <<getWordBreasts>> before reaching behind your back to unhook the strap and shrug it off your shoulders.<br>
<br>
Reaching down, you unclip your garters one at a time, making a show of rolling each pink stocking down your pale, smooth legs before removing the garter belt entirely.<br>
<br>
Turning your back you bend over and unzip the rear opening to show off your bum<<if setup.checkItemTypeWorn('plug')>> and the <<=setup.getItemTypeName('plug')>> inside<</if>>.<br>
<br>
Finally shedding your <<if $fetish.sissy>>sissy<<else>>girl<</if>> panties, you turn to present yourself, naked<<if setup.checkItemTypeWorn("cage")>> save for your securely <<if $scene.isCage>>caged, but obviously excited, <<getWordMyPenis>><<else>>belted loins<</if>><</if>>.<br>
<<elseif (!$scene.bra || $scene.bra.tags.includes("bold")) && $scene.panties && $scene.panties.tags.includes("bold") && $scene.stockings && $scene.stockings.tags.includes("bold") && ($scene.garters == null || $scene.garters.tags.includes("bold"))>>
Standing there in your bold underwear, you let your followers enjoy a few moments of admiring your aggressive attire.<br>
<br>
Starting with your bra you slide the straps off your shoulder until it is barely staying up before reaching behind to unclip it and let things fall away to reveal your <<getWordBreasts>>.<br>
<br>
<<if $scene.braId>>
Letting the <<=setup.getItemName($scene.braId)>> drop to the floor,
<<else>>
Next
<</if>>
you
<<if $scene.gartersId>>
begin unclipping your garters, slowly freeing your <<=setup.getItemName($scene.stockingsId)>> one leg at a time, slipping out of them and them removing the garter as well.<br>
<<else>>
peel off your stockings, running your fingers back up your now-bare legs.<br>
<</if>>
<br>
Clad it naught but your panties you pull them partway down to
<<if setup.checkItemTypeWorn("cage")>>
allow <<if $scene.isCage>>your chastity cage to pop free<<else>>the front shield of your chastity belt to gleam and shine<</if>> before you
<<else>>
Chat explodes in delight as you reveal your <<if $player.body_ref.penis>><<if $player.body_ref.vagina>>and <<getWordVagina>><</if>><<getWordMyPenis>><<else>><<getWordVagina>><</if>> and
<</if>>
peel the <<=setup.getItemName($scene.pantiesId)>> the rest of the way down your legs and kick them to the side.<br>
<<elseif (!$scene.braId || $scene.bra.tags.includes("cute")) && $scene.panties && $scene.panties.tags.includes("cute") &&
$scene.stockings.tags.includes("cute") && ($scene.garters == null || $scene.garters.tags.includes("cute"))>>
Fluttering your eyelashes you pose to show off your cute ensemble before your bra "accidentally" bursts open to reveal your bare <<getWordBreasts>>. Putting a hand over your mouth in mock surprise
<<if $scene.gartersId != "">>
you continue the "accidental" disrobing as you unclip your garter straps one at a time, until your <<=setup.getItemName($scene.stockingsId)>> slips off followed by the <<=setup.getItemName($scene.gartersId)>> themselves.<br>
<<else>>
you turn and bend over, peeking back upside-down from between your legs as you roll the <<=setup.getItemName($scene.stockingsId)>> down your legs.<br>
<</if>>
<br>
Down to just your cute panties, you grope yourself through them, making a show of
<<if setup.checkItemTypeWorn("cage")>>
the <<if $scene.isCage>>bulge of your cage before revealing your imprisoned <<getWordMyPenis false>> with another look of surprise<<else>>smooth lines of your chastity belt as you draw attention to its unyielding facade by running your hand across it<</if>>.
<<else>>
your <<if $player.body_ref.penis>><<if $player.body_ref.vagina>>and <<getWordVagina>><</if>><<getWordMyPenis>><<else>><<getWordVagina>><</if>>.
<</if>>
Letting your panties fall to the ground you toss them in the pile with the rest of your clothes before crossing your hands behind your back, tilting your head to the side and looking at the camera with "innocent" bambi eyes.<br>
<<elseif (!$scene.bra || $scene.bra.tags.includes("modest")) && $scene.panties && $scene.panties.tags.includes("modest") &&
$scene.stockings.tags.includes("modest") && ($scene.gartersId == "" || $scene.garters.tags.includes("modest"))>>
Your modest, reserved undergarments somehow give a "girl next door" look to your little striptease. Each functional, but unflattering, item you remove causes chat to get even more excited, and additional tips to pour in.<br>
<br>
<<if $scene.braId>>
Shedding the <<=setup.getItemName($scene.braId)>> first to reveal your <<getWordBreasts>>, you follow up by
<<else>>
Next you
<</if>>
<<if $scene.gartersId != "">>
unclipping your <<=setup.getItemName($scene.gartersId)>> and letting them and your <<=setup.getItemName($scene.stockingsId)>> fall.
<<else>>
sliding out of your stockings.
<</if>>
It isn't long before the only thing granting you the slightest shred of modesty is your <<=setup.getItemName($scene.stockingsId)>>.<br>
<br>
Flashing a bashful smile, you bite your lip and rip off your <<=setup.getItemName($scene.pantiesId)>>, exposing yourself to your audience before giving a slow turn to show off your <<if setup.checkItemTypeWorn('plug')>>naughtily plugged<<else>>cute<</if>> butt as well.<br>
<<else>>
Somewhat embarrassed by your mis-matched underthings, you hurry to remove them<<if $scene.bra>>, first peeling off the <<=setup.getItemName($scene.braId)>> to expose your <<getWordBreasts>><</if>>.<br>
<br>
Regardless of your lack of coordination, your viewers are soon enthralled by the sight of your bare torso as you lean down to your legs,
<<if $scene.gartersId != "">>
unclipping your <<=setup.getItemName($scene.gartersId)>> and shedding them and your <<=setup.getItemName($scene.stockingsId)>>
<<else>>
sliding out of your stockings,
<</if>>
and prancing around <<if $scene.pantiesId>>for a moment in naught but your <<=setup.getItemName($scene.pantiesId)>>. Those remain on your body for but a few seconds longer before they are cast aside to leave you standing<</if>> naked and facing the camera with your <<if $player.body_ref.penis && $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>><<getWordVagina>> and <<getWordMyPenis>><<elseif $player.body_ref.penis>><<getWordMyPenis>><<else>><<if setup.checkItemTypeWorn("cage")>>chastity belt<<else>><<getWordVagina>><</if>><</if>> proudly on display.<br>
<</if>>
<br>
With the final piece of clothing cast aside you pose, giving your viewers a long view of their "prize" before closing things down for the day.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action fetish fashion show
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.1 + setup.getTotalValue("bimbofication")/200>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You gather up your kinkier outfits, showing off latex and leather for your viewers as they gush with excitement and encourage you to buy and wear even more of the same on future streams...<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action choose dildo to suck
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Reward tier hit, you consider your collection of dildos and decide which to suck for your fans...<br>
<br>
<<if setup.checkItemOwned('basic_dildo')>>
[<<moveTo "event_camgirl_sexish_suck_2" "Suck on a basic dildo." 600 "<<set $scene.dildo='basic_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('large_dildo')>>
[<<moveTo "event_camgirl_sexish_suck_2" "Suck on your large dildo." 600 "<<set $scene.dildo='large_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('dog_dildo')>>
[<<moveTo "event_camgirl_sexish_suck_2" "Suck on a knotted dildo." 600 "<<set $scene.dildo='dog_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('horse_dildo')>>
[<<moveTo "event_camgirl_sexish_suck_2" "Suck on your giant horse dildo." 600 "<<set $scene.dildo='horse_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('dragon_dildo')>>
[<<moveTo "event_camgirl_sexish_suck_2" "Suck on your massive dragon dildo." 600 "<<set $scene.dildo='dragon_dildo'>>">>]<br>
<</if>>
</div>/*#
#desc: camgirl action suck dildo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dildoSize = setup.getItemObj($scene.dildo).size>>
<<applyExperience 'oral' _dildoSize 'very' $EXPOSED>>
<<applyExperience 'penis' 7 'very' $EXPOSED>>
<<set $scene.dildoName = setup.getItemName($scene.dildo)>>
<<set $scene.camgirl.baseMod = 1 + $scene.dildoSize/40 + setup.getTotalValue("oral")/200>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.dildoSize > setup.getTotalValue("oral")>>
<<if $scene.dildoSize > setup.getTotalValue("oral") + 3>>
The <<=$scene.dildoName>> is far too large for your modest skill, so you entertain your fans by sucking and kissing, rubbing it up and down your cheek as you moan in exaggerated delight.
<<else>>
The <<=$scene.dildoName>> is larger than you can easily handle, but you do your best, switching off from deepthroating until you almost choke to kissing and sucking on the tip. Your viewers cheer you on while encouraging you to push yourself harder and deeper to become an even better cocksucker.
<</if>>
<<else>>
<<if ($scene.dildoSize < setup.getTotalValue("oral") - 5) || setup.getTotalValue("oral") == 20>>
With consummate skill you swallow the entire dildo, chat cheering you on as you demonstrate your sword (or is that schlong?)-swallowing skills on the <<=$scene.dildoName>>. Each throat-bulging stroke delights your fans further and you get even more tips on top of the bounty in celebration of your cock-sucking acumen.
<<else>>
You carefully work your way up to hilting the entirety of the <<=$scene.dildoName>> down your throat. Chat cheers on your deepthroating skills, talking about how hot you look with a face full of artificial cock... and how much hotter still you would look with a real one bulging your throat.
<</if>>
<</if>>
<br><br>
You finish off by kissing the tip of the dildo as a "proxy" for your fans, thanking them for encouraging you to practice your skills as the broadcast comes to an end.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action milk self
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.milking.milk_supply -= 20>>
<<set $scene.camgirl.baseMod = 1 + $player.body_ref.milkProduction/20 + $player.body.breastsize[0]/100>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You expose your <<=setup.calcBreastSize()>> breasts, toying with your nipples and groping yourself until you start <<if $player.body_ref.milkProduction >= 2>>squirting<<else>>leaking<</if>> milk.<br>
<br>
Catching your creamy product in a small saucer you show off your productivity, and your breasts, before finishing the broadcast off by drinking it all up.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action play fetish game
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.2 + setup.getTotalValue("gaming")/200>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
The goal reached you solicit chat for a suggestion of what to play. They link you a branching adventure game called "Clerk." Taking place in some late twentieth century pastiche you play as a somewhat naive "guy" who starts a new job for an important female executive.<br>
<br>
Before long your work responsibilities have grown far beyond balancing books to balancing how much cum you can take... and how much of your masculinity you can retain in the face of the constant demands from your manager...<br>
<br>
The game is fun, almost addictive. While it clearly functions on porn logic, you can't help but feel a bit of familiarity with some of the situations. With chat making the decisions it isn't long before your avatar has "advanced" into being a <<if $fetish.sissy>>sissified<<else>>feminised<</if>> bimbo slut; "saving" the company from your back...<br>
<br>
You reach one of the game's many varied endings just before the broadcast comes to an end.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action make out with npc_fit_bimbo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
Having already given your friend <<=setup.getNpcName("npc_fit_bimbo","first")>> the heads up that you were getting close to the session goal, she shows up just in the nick of time. She is dressed like she just came from the gym and the two of you position yourselves in front of the camera to give your viewers a quality show. Just the sight of her has you excited and you waste no time in locking lips and letting your hands roam over one another's bodies. You remain clothed throughout, but all it takes is a glance at chat to confirm that they're loving the show.<br>
<br>
The cherry taste of <<=setup.getNpcName("npc_fit_bimbo","first")>> still on your lips the broadcast eventually comes to a close. You smile at the numbers — the cross-promotion looks to have benefited the both of your channels, and even splitting the take you would call things a very successful broadcast.<br>
<br>
<<=setup.getNpcName("npc_fit_bimbo","first")>> thanks you for the invite and with a wink and a promise to "@@.npc_fit_bimbo;Do it again sometime.@@" She heads off.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action ass choose dildo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Reward tier hit you consider your collection of dildos and decide which to shove up your ass for your fans...<br>
<br>
<<if setup.checkItemOwned('basic_dildo')>>
[<<moveTo "event_camgirl_sex_ass_2" "Shove a basic dildo up your ass." 600 "<<set $scene.dildo='basic_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('large_dildo')>>
[<<moveTo "event_camgirl_sex_ass_2" "Shove a large dildo up your ass." 600 "<<set $scene.dildo='large_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('dog_dildo')>>
[<<moveTo "event_camgirl_sex_ass_2" "Shove a knotted dildo up your ass." 600 "<<set $scene.dildo='dog_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('horse_dildo')>>
[<<moveTo "event_camgirl_sex_ass_2" "Shove a giant horse-cock dildo up your ass." 600 "<<set $scene.dildo='horse_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('dragon_dildo')>>
[<<moveTo "event_camgirl_sex_ass_2" "Shove a fantastical dragon dildo up your ass." 600 "<<set $scene.dildo='dragon_dildo'>>">>]<br>
<</if>>
</div>/*#
#desc: camgirl action ass dildo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dildoSize = setup.getItemObj($scene.dildo).size>>
<<applyExperience 'anal' $scene.dildoSize 'very' $EXPOSED>>
<<set $scene.camgirl.baseMod = 1.1 + $scene.dildoSize/40 + setup.getTotalValue("anal")/200>>
<<include "calcCamgirlChanges">>
<<if $scene.dildoSize <= setup.getTotalValue("anal")>>
<<playerOrgasm>>
<</if>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.dildoSize > setup.getTotalValue("anal")>>
<<if $scene.dildoSize > setup.getTotalValue("anal") + 3>>
Your <<=setup.getItemName($scene.dildo)>> is more a prop than a toy; far too large for you to fuck yourself with. Instead you rub it between your cheeks, performing frottage rather than fucking. You entertain your fans as they remark on how much of a cock-addicted slut you must be to own a dildo so big it's unusable... while encouraging you to train your slut-hole to handle it.
<<else>>
The <<=setup.getItemName($scene.dildo)>> is too big for you to handle with comfortable ease, but you alternate humping it with taking "just the tip." Even just that much leaves you breathing hard, all the while your fans fantasise about you ascending to the level where you can take it all...
<</if>>
<<else>>
<<if ($scene.dildoSize < setup.getTotalValue("anal") - 5) || setup.getTotalValue("anal") == 20>>
You pound your ass with your <<=setup.getItemName($scene.dildo)>>, showing off how easily you can hilt it
<<switch $scene.dildo>>
<<case 'large_dildo'>>
the large dildo making your belly bulge, to the delight of your viewers.
<<case 'dog_dildo'>>
the large knot popping in and out of your gaping hole with every thrust, to the delight of your viewers.
<<case 'horse_dildo'>>
the massive horse-cock dildo making your belly bulge, to the delight of your viewers.
<<case 'dragon_dildo'>>
the massive dragon dildo making your belly bulge and your hole gape to the delight of your viewers.
<<default>>
as chat encourages you to purchase something even bigger for "next time."
<</switch>>
<<else>>
You fuck your ass with your <<=setup.getItemName($scene.dildo)>>, riding it hard, moaning about how it's the "perfect" size for filling you up.
<</if>>
With the encouragement of your fans you fuck your way to an ecstatic analgasm <<if !setup.checkItemTypeWorn("cage")>><<if $player.body_ref.penis>>spurting hands-free<<else>>as your viewers encourage you to embrace being an anal-only girl<</if>><<else>>leaking through your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> to the cheers of your viewer's<</if>>.
<</if>>
<br><br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action cunt choose dildo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Reward tier hit you consider your collection of dildos and decide which to fuck yourself with for your fans...<br>
<br>
<<if setup.checkItemOwned('basic_dildo')>>
[<<moveTo "event_camgirl_sex_cunt_2" "Fuck yourself with a basic dildo." 600 "<<set $scene.dildo='basic_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('large_dildo')>>
[<<moveTo "event_camgirl_sex_cunt_2" "Fuck yourself with a large dildo." 600 "<<set $scene.dildo='large_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('dog_dildo')>>
[<<moveTo "event_camgirl_sex_cunt_2" "Fuck yourself with a knotted dildo." 600 "<<set $scene.dildo='dog_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('horse_dildo')>>
[<<moveTo "event_camgirl_sex_cunt_2" "Fuck yourself with a giant horse-cock dildo." 600 "<<set $scene.dildo='horse_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('dragon_dildo')>>
[<<moveTo "event_camgirl_sex_cunt_2" "Fuck yourself with a fantastical dragon dildo." 600 "<<set $scene.dildo='dragon_dildo'>>">>]<br>
<</if>>
</div>/*#
#desc: camgirl action cunt dildo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $scene.dildoSize = setup.getItemObj($scene.dildo).size>>
<<set $scene.camgirl.baseMod = 1.1 + $scene.dildoSize/40 + .1>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You line up the <<=setup.getItemName($scene.dildo)>> and, wet with anticipation, you <<if $player.body_ref.penis>>hold your <<getWordMyPenis>> out of the way and <</if>>start fucking yourself with it.
<<switch $scene.dildo>>
<<case 'basic_dildo'>>
A little larger than an average cock the dildo slides into you easily and you spread your legs for the camera to give a clear view of you fucking yourself to orgasm.
<<case 'large_dildo'>>
Close to the size of your forearm you warm yourself up by rubbing the dildo between you legs, getting it nice and wet and then fingering yourself open before letting out a slow breath and easing the monstrosity into your <<getWordVagina>>. It takes both your hands to manage the monstrous dong, your belly distending slightly as the thick tip slides deep into your body. Stretched and filled you moan as you softly thrust, an orgasm almost as large as the dong shuddering through your body.
<<case 'dog_dildo'>>
The pointed tip of the canine cock slides in easily and you're soon biting your lip as the thick knot presses against your hole. Twisting it and working it back and forth you let your juices flow in anticipation before you hold your breath and push. Your eyes roll back as you stretch, stretch... and then, with a pop that sends earthquakes through your body, you are knotted. You orgasm... and then start grinding.
<<case 'horse_dildo'>>
Close to life size just getting the thick tip of the horse dildo into your body requires you to relax and breathe slowly. You moan as your body stretches to accommodate the equine phallus, the initial stretch making you even wetter, and hungry for more. It takes both your hands to manage the monstrous dong, your belly distending slightly as the thick tip slides deep into your body. Stretched and filled you moan as you softly thrust, an orgasm almost as large as the dong shuddering through your body as you surrender to the horse-cock.
<<case 'dragon_dildo'>>
Larger, and more fantastic, than life, just getting the thick tip of the dragon dildo into your body requires you to relax and breathe slowly. You moan as your body stretches to accommodate the supernatural phallus, the initial stretch making you even wetter, and hungry for more. It takes both your hands to manage the monstrous dong, your belly distending slightly as the thick tip slides deep into your body... and then the even thicker knot pops into place. Stretched and filled you moan as you softly thrust, an orgasm almost as large as the dong shuddering through your body as you surrender to the dragon.
<<default>>
ERROR: unexpected dildo <<=$scene.dildo>>
<</switch>>
<br><br>
Egged on by chat you increase your pace, pounding yourself to a second, then third climax before going limp in exhaustion, losing grip on the slick dildo as it slides out of your tired, and satisfied hole.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action wand
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
<<playerOrgasm>>
<</if>>
<<set $scene.camgirl.baseMod = 1.2 + setup.getTotalValue("bimbofication")/200>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Target reached, you pull out your wand vibrator and get to work.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
You hold your <<getWordMyPenis>> to one side as you press the wand against your wet <<getWordVagina>>. You moan, grinding against the vibrating head and thanking your viewers for "granting" you this pleasure.
<<else>>
You hold your breath as you run the wand up and down your <<getWordMyPenis>>, shuddering at the intense stimulation.
<</if>>
Against such a potent "spell" it isn't long before you climax, barely catching things to keep from spurting over your keyboard as you pull the wand away, feeling over-sensitised and spent.
<<else>>
You grind against the wand, turning the vibrations up all the way to bathe your clit in almost overwhelming stimulation. You gasp and moan, your thighs trembling as you have your first orgasm. Cheered on by your viewers you will yourself further, cumming repeatedly until your legs get weak and you become so sensitised that you're forced to pull the wand away and just pant.
<</if>>
<<else>>
<<if setup.isCage()>>
You grind the wand against your cage and crank the vibrations, your prison refracting the intense stimulation to stimulate your <<getWordMyPenis>> from all sides.<br>
<br>
You gasp and moan, putting on a show for your viewers, but it isn't long before it becomes too much. You spurt through your cage and collapse back onto your chair as you wilt in your prison and leak down your thigh.
<<else>>
You may have a wand, but no magic will keep your locked-on chastity belt from blunting its vibrations to the point of tormenting futility. You grind and vibe and hump and writhe to the delight of your viewers, working yourself into a sweat, but with an actual climax remaining out of reach.
<</if>>
<</if>>
<br><br>
You catch your breath and thank your viewers once again for their contributions before concluding the broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action masturbate
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("cage") || $player.body_ref.vagina && setup.isCage()>>
<<playerOrgasm>>
<</if>>
<<set $scene.camgirl.baseMod = 1.1 + setup.getTotalValue("bimbofication")/200>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Target reached, you angle the camera and reach between your legs.<br>
<br>
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
You wrap one hand around your <<=setup.calcPenisSize()>> <<getWordMyPenis>> as you use your other to slide two fingers into your wet <<getWordVagina>>. You moan, jerking and jilling at the same time.
<<else>>
You hold your breath as you start stroking your <<=setup.calcPenisSize()>> <<getWordMyPenis>>, feeling it swell between your fingers as your audience watches on.
<</if>>
The combination of your viewer's encouragement and your nimble fingers means it isn't long before you climax, barely catching things to keep from spurting over your keyboard as you sink into the chair, feeling over-sensitised and spent.
<<else>>
You use one hand to spread and display your clit while the other starts rubbing and fingering. Assisted by your audience it doesn't take long until your heart is beating fast and you gasp and moan, your thighs trembling as you have a thigh-trembling orgasm.
<</if>>
<br><br>
You catch your breath and thank your viewers once again for their contributions before concluding the broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action erotic video
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.2 + setup.getTotalValue("bimbofication")/200>>
<<include "calcCamgirlChanges">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Target hit, you grin and push your chair out of the way and make space as you give your viewers a couple minutes to choose the song for you to dance to. You smirk in recognition of a classic pop song of the always-slutty "this teen star is a WOMAN now" genre and start the music.<br>
<br>
The first beat hits and you throw yourself into the music, moaning along to every lyric as you make love to the camera; taking the already steamy original choreography and going even further, touching yourself, twerking, doing everything short of masturbating yourself to completion in the song's couple minute run-time, working yourself into a sweat and ending on your knees, making bedroom eyes at the camera. You let things linger just long enough before ending the broadcast there. <<printThought "Always leave them wanting more...">><br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action sex with admin intro
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
Target hit, you text <<=setup.getNpcName("npc_admin","first")>> that you're ready for <<him npc_admin>> to come over, killing time flirting on stream as you wait for <<him npc_admin>> to ring the bell.<br>
<br>
You don't have long before your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>>friend<<else>>friend<</if>> is at the door. You wink at chat, swap the camera feed to the bedroom, and dart away to let your <<man npc_admin>> in.<br>
<br>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>,@@" <<he npc_admin>> says with a grin<<if $npc_admin.flags.relationship == "boyfriend">>, and a kiss,<</if>> as you let <<him npc_admin>> into the flat. Your heart is beating with excitement as you confirm that <<he npc_admin>>'s up for this.<br>
<br>
<<if $npc_admin.flags.relationship == "boyfriend">>
"@@.npc_admin;Up for fucking my best girl's brains out in front of how many fans?@@"
<<else>>
"@@.npc_admin;Up for friend's-with-benefits-ing your sexy ass in front of how many fans?@@"
<</if>>
<<He npc_admin>> grins wider, "@@.npc_admin;I'm so hard right now I could drive nails, now come on, let's introduce fans to that sexy face you make when I'm balls deep inside of you.@@"<br>
<br>
You bite your lip and lead <<him npc_admin>> to the bedroom positioning <<him npc_admin>> just off-camera as you take a moment to consider how to play things...<br>
<br>
<<if $player.body_ref.vagina && (setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag","npc_admin")) || setup.getTotalValue("oral") > 10 || setup.getTotalValue("anal") > 10>>
[<<moveTo "event_camgirl_guest_admin_2" 'You are in the mood for some rough "pound my brains out" sex.' 1800 "<<set $scene.style='rough'>>">>]<br>
<<else>>
[@@.link_locked;You don't have the experience to handle a <<getWordPenis "npc_admin">> that big doing you hard and rough.@@]<br>
<</if>>
[<<moveTo "event_camgirl_guest_admin_2" "You want some tender on-camera loving." 1800 "<<set $scene.style='gentle'>>">>]<br>
<<if $player.flags.collar.owner == "npc_admin">>
[<<moveTo "event_camgirl_guest_admin_2" 'You want your <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>> to use your body on-camera.' 1800 "<<set $scene.style='bdsm'>>">>]<br>
<<elseif setup.checkItemTypeTag('leash_attachment', ['choker'])>>
[<<moveTo "event_camgirl_guest_admin_2" 'You want "<<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>>" to use your body on-camera.' 1800 "<<set $scene.style='bdsm'>>">>]<br>
<<else>>
[@@.link_locked;You would need a suitable collar for <<=setup.getNpcName("npc_admin","first")>> to play the part of your <<Master>>.@@]<br>
<</if>>
</div>/*#
#desc: camgirl action sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.style == 'bdsm'>>
<<applyExperience 'submission' 15 'very' $EXPOSED>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You give <<=setup.getNpcName("npc_admin","first")>> a quick run-down of what you want and <<he npc_admin>> grins,
<<switch $scene.style>>
<<case 'rough'>>
giving you a good-luck kiss before you stride into view of the camera.<br>
<br>
You make sure to angle yourself to show off for the camera as you wander over to your bed, acting "casual" and pretending like you're home alone and are just lying back to watch TV.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> let's things play out for a couple of minutes before making <<his npc_admin>> presence known, walking onto camera as chat explodes with excitement at the sight of your muscle-bound <<man npc_admin>>.<br>
<br>
"@@.npc_admin;Hey babe, what're you doing lounging? I just got off work and dinner ain't in the oven, the laundry bin is full... did you spend the whole day goofing off?@@"<br>
<br>
You give a lame excuse as <<he npc_admin>> moves closer, looking up at <<him npc_admin>> standing over your bed as you stutter that you were "@@.pc;Busy.@@"<br>
<br>
"@@.npc_admin;Busy? Here I am working hard to put a roof over our heads and food on the table and you? What are you offering?@@"<br>
<br>
<<if $player.body_ref.vagina>>
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || !setup.isCage() || $npc_admin.flags.keyholder)>>
<<if $player.virgin.vaginal>>
[<<moveTo "event_camgirl_guest_admin_3_rough_vag" "Offer your <<getWordVagina>>." 1200>>]<br>
<<else>>
[@@.link_locked;You don't want your first time to be on stream.@@]<br>
<</if>>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked away.@@]<br>
<</if>>
<</if>>
<<if $player.virgin.anal || $player.virgin.pegged && $fetish.pegging_is_anal>>
[<<moveTo "event_camgirl_guest_admin_3_rough_anal" "Offer your ass." 1200>>]<br>
<<else>>
[@@.link_locked;You don't want your first time getting ass-fucked to be on stream.@@]<br>
<</if>>
<<if setup.getTotalValue("oral") > 10>>
<<if $player.virgin.blowjob>>
[<<moveTo "event_camgirl_guest_admin_3_rough_oral" "Offer your mouth." 1200>>]
<<else>>
[@@.link_locked;You don't want your first time blowing someone to be on stream.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You don't have the oral skill to handle something that big pounding your throat.@@]
<</if>>
<<case 'gentle'>>
scooping you up into <<his npc_admin>> arms like a newly-wed before striding into view of the camera.<br>
<br>
<<He npc_admin>> carries you to the bed and then gently sets you down, leaning in for a kiss as you reach up and start helping <<him npc_admin>> out of <<his npc_admin>> clothes.<br>
<br>
<<His npc_admin>> hands return the favour, the two of you kissing and caressing as you strip naked.<br>
<br>
"@@.npc_admin;So,@@" <<he npc_admin>> says with a smile as <<his npc_admin>> big <<getWordPenis "npc_admin">> pops into view. "@@.npc_admin;My <<if $npc_admin.flags.relationship == "boyfriend">>love<<else>>dear<</if>>...@@" <<His npc_admin>> voice trails off leaving the question hanging like the drop of precum beading at the tip of <<his npc_admin>> <<getWordPenis "npc_admin">>.<br>
<br>
<<if $player.body_ref.vagina>>
<<set _caged = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if _caged>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<<if !$player.virgin.vaginal>>
[@@.link_locked;You don't want your first time to be on stream.@@]<br>
<<elseif _caged && !_unlockable>>
[@@.link_locked;Your <<getWordVagina>> is locked away.@@]<br>
<<else>>
[<<moveTo "event_camgirl_guest_admin_3_gentle_vag" "Welcome <<him npc_admin>> between your legs." 1200>>]<br>
<</if>>
<</if>>
<<if $player.virgin.anal || $player.virgin.pegged && $fetish.pegging_is_anal>>
[<<moveTo "event_camgirl_guest_admin_3_gentle_anal" "Turn around and present your ass." 1200>>]<br>
<<else>>
[@@.link_locked;You don't want your first time getting anal to be on stream.@@]<br>
<</if>>
<<if $player.virgin.blowjob>>
[<<moveTo "event_camgirl_guest_admin_3_gentle_oral" "You're feeling hungry..." 1200>>]
<<else>>
[@@.link_locked;You don't want your first time blowing someone to be on stream.@@]<br>
<</if>>
<<case 'bdsm'>>
somehow producing a leash from you're not sure where and clipping it to your collar.<br>
<br>
With a confident grin <<he npc_admin>> steps into the room, walking into view of the camera as you obediently stride behind <<him npc_admin>>.<br>
<br>
"@@.npc_admin;So, my pet,@@" <<he npc_admin>> states, pulling you in by the leash and giving you a kiss. "@@.npc_admin;How will you serve me today?@@"<br>
<br>
You curtsy, starting off by stripping for <<him npc_admin>>, and the camera, then following up by lovingly helping <<him npc_admin>> out of <<his npc_admin>> clothes before — naked save for your collar, you consider what to do next...<br>
<br>
<<if $player.body_ref.vagina>>
<<set _caged = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if _caged>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<<if _caged && !_unlockable>>
[@@.link_locked;Your <<getWordVagina>> is locked away.@@]<br>
<<elseif $player.virgin.vaginal>>
[<<moveTo "event_camgirl_guest_admin_3_bdsm_vag" 'Spread your <<getWordVagina>> for your <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>>.' 1200>>]<br>
<<else>>
[@@.link_locked;You don't want your first time to be on stream.@@]<br>
<</if>>
<</if>>
<<if $player.virgin.anal || $player.virgin.pegged && $fetish.pegging_is_anal>>
[<<moveTo "event_camgirl_guest_admin_3_bdsm_anal" 'Bend over and present your ass for your <<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>> use.' 1200>>]<br>
<<else>>
[@@.link_locked;You don't want your first time getting ass-fucked to be on stream.@@]<br>
<</if>>
<<if $player.virgin.blowjob>>
[<<moveTo "event_camgirl_guest_admin_3_bdsm_oral" 'Kneel as your <<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>> obedient mouth fuck-hole.' 1200>>]
<<else>>
[@@.link_locked;You don't want your first time blowing someone to be on stream.@@]
<</if>>
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
</div>/*#
#desc: camgirl action rough vag sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("bdsm")/200>>
<<include "calcCamgirlChanges">>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<removeAllClothing>>
<<playerOrgasm>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
You bite your lip and look up at <<=setup.getNpcName("npc_admin","first")>> to wordlessly ask forgiveness... as you spread your legs.<br>
<br>
"@@.npc_admin;Oh is, that it?@@" <<He npc_admin>> asks,
<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag", "npc_admin")>>
reaching down to expose your chastity belt. "@@.npc_admin;You do nothing all day and expect to be let out of your belt?@@" You make innocent eyes as <<he npc_admin>> produces the key. "@@.npc_admin;You're lucky I'm so turned on by you — but you don't know what you're in for, I'm going to fuck you so hard you'll need to be locked for a week to recover...@@"
<<else>>
pulling off your clothes to expose your dripping <<getWordVagina>>. "@@.npc_admin;You're lucky I'm so turned on by you — but you don't know what you're in for, I'm going to fuck you so hard you forget vocabulary.@@"
<</if>>
<br><br>
Taking advantage of <<him npc_admin>> momentarily blocking the camera you mouth a lusty "@@.pc;Fuck me now...@@"<br>
<br>
<<He npc_admin>> does, and you lose the rest of your clothing as <<he npc_admin>> rails you as hard as <<he npc_admin>> promised, <<his npc_admin>> hard <<getWordPenis "npc_admin">> slamming into you only interrupted by you subtly re-angling positions so that the camera gets the best view possible... beyond that, you're just along for the ride, screaming in orgasm as <<he npc_admin>> fucks you like a jackhammer, pounding you into the mattress like you were a railway tie and <<he npc_admin>> was a steel-driving <<man npc_admin>>...<br>
<br>
You catch a glimpse of chat out of the corner of your eye as <<=setup.getNpcName("npc_admin","first")>> rails you live on camera. <<He npc_admin>> notices your attention and breaks character, clearly turned on by the audience.<br>
<br>
"@@.npc_admin;You like that? You like getting fucked in front of <<if $player.flags.camgirl.followers < 100>>dozens of<<elseif $player.flags.camgirl.followers < 300>>a hundred<<elseif $player.flags.camgirl.followers < 1000>>hundreds of<<else>>thousands of<</if>> fans? God, you're such a slut... well get ready because <<if $fetish.daddy>><<Daddy npc_admin>> is about to <<if $fetish.cum>>fill you with <</if>>cum<<else>>I'm about to cum<</if>>...@@"<br>
<br>
<<He npc_admin>> explodes, pushing you to an even more powerful climax of your own as <<he npc_admin>> pumps you full, <<his npc_admin>> <<getWordCum>> leaking out of you
<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag", "npc_admin")>>
until <<he npc_admin>> locks your belt back in place.
<<else>>
as you pant and recover.
<</if>>
Out of breath you reflect <<his npc_admin>> satisfied smirk with a dopey, equally contented grin, turning to the camera to let your fans get a view before you end the broadcast.<br>
<br>
"@@.npc_admin;Wow, that was... that was hot...@@" <<He npc_admin>> pulls you in for a hug and then starts helping you clean up. "@@.npc_admin;You're a fucking hot as shit minx, you know that?@@" <<He npc_admin>> adds as <<he npc_admin>> looks you over with a smile, "@@.npc_admin;You make sure to let me know when you want to do this again... goddamn, but there's just something about fucking in front of an audience...@@"<br>
<br>
You promise you will and help <<him npc_admin>> get dressed before sending <<him npc_admin>> off and checking the results of your broadcast...<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action rough anal sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("bdsm")/200>>
<<include "calcCamgirlChanges">>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<removeAllClothing>>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_admin.penis_size 'terrible' $EXPOSED>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
You flap your gums as if trying to come up with an excuse as you subtly eye downward.<br>
<br>
"@@.npc_admin;You lazy slut. You think I'm going to let you sit on your ass all day? Nah, that ass is mine, and right now I think it needs to pay up for the rest of your sins.@@"<br>
<br>
You're light as a feather in <<=ps(setup.getNpcName("npc_admin","first"))>> grasp as <<he npc_admin>> flips you over. It takes but a few moments before <<he npc_admin>> has stripped you naked and you're bent over the bed.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
"@@.npc_admin;Spending the day plugged? At least you're ready for me, you slut,@@" <<he npc_admin>> states,
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
as <<his npc_admin>> cock slams through your hollow plug and into the depths of your ass.
<<else>>
pulling the plug out and tossing it to the side before <<his npc_admin>> cock slams into the depths of your ass.
<</if>>
<<else>>
"@@.npc_admin;Look at you wiggling that sexy ass! You're begging for this, you butt-slut.@@"
<</if>>
<br><br>
You moan as <<his npc_admin>> big <<getWordPenis "npc_admin">>
<<if setup.getTotalValue("anal") > 15>>
slams balls deep into your welcoming hole.
<<else>>
fills you to the limit.
<</if>>
<br><br>
<<He npc_admin>> doesn't give time for you to adjust to the telephone pole inside of you before <<he npc_admin>> starts thrusting, each pounding stroke making the entire bed quake as <<his npc_admin>> hands grip your hips and <<he npc_admin>> gives you all of <<his npc_admin>> many centimetres hard, deep, and repeatedly.<br>
<br>
"@@.npc_admin;You like that, huh, you like that?@@" <<He npc_admin>> grunts, your response little more than muffled moans as your entire body quakes with each thrust. Reaching forward with one hand <<he npc_admin>> lifts your head off the bed and turns you to face the camera, breaking character as <<he npc_admin>> lifts you higher and continues to fuck. "@@.npc_admin;Go on, slut, tell your <<if $player.flags.camgirl.followers < 100>>dozens of<<elseif $player.flags.camgirl.followers < 300>>a hundred<<elseif $player.flags.camgirl.followers < 1000>>hundreds of<<else>>thousands of<</if>> fans how much you love getting fucked in the ass. God, you're such a slut... tell them how good it feels when I re-arrange your organs with my cock.@@"<br>
<br>
"@@.pc;Yes! I love it!@@" You moan, meaning every word of it as you let your face go full ahegao, cumming repeatedly as <<he npc_admin>> pounds away, only distantly aware as <<he npc_admin>> approaches a climax of <<his npc_admin>> own... only to pull out and shoot <<his npc_admin>> load across your back as you lay exhausted on the bed.<br>
<br>
You
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
moan softly as <<he npc_admin>> "helpfully" replaces your plug and then you
<</if>>
roll over with a satisfied smile, turning to the camera to make sure your fans get a view before you end the broadcast.<br>
<br>
"@@.npc_admin;Wow, that was... that was hot...@@" <<He npc_admin>> pulls you in for a hug and then starts helping you clean up. "@@.npc_admin;You're a fucking hot as shit minx, you know that?@@" <<He npc_admin>> adds as <<he npc_admin>> looks you over with a smile, "@@.npc_admin;You make sure to let me know when you want to do this again... goddamn, but there's just something about fucking in front of an audience...@@"<br>
<br>
You promise you will and help <<him npc_admin>> get dressed before sending <<him npc_admin>> off and checking the results of your broadcast...<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action rough oral sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("bdsm")/200>>
<<include "calcCamgirlChanges">>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<applyExperience 'oral' $npc_admin.penis_size 'terrible' $EXPOSED>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
You open your mouth as if to "object" but make no sound.<br>
<br>
"@@.npc_admin;What's that? Can't think of an excuse? Well if you're going to just sit there I guess it falls to me to make sure at least ONE of us gets dinner...@@"<br>
<br>
<<He npc_admin>> unzips <<his npc_admin>> pants and you let your jaw drop as <<his npc_admin>> big, beautiful <<getWordPenis "npc_admin">> makes an appearance.<br>
<br>
"@@.npc_admin;Don't just stare at it,@@" <<he npc_admin>> adds, shifting slightly to give the camera a better view. "@@.npc_admin;You've been making excuses since I got home, put those lips to a better use and start making up for your failures...@@"<br>
<br>
It takes some restraint on your part not to get to into things, as you "hesitantly" kiss <<his npc_admin>> cock. <<He npc_admin>> expertly reads the signal in your wordless glance and <<he npc_admin>> grunts in annoyance, grabbing you by the hair and taking over, <<his npc_admin>> big <<getWordPenis "npc_admin">>
<<if setup.getTotalValue("oral") > 15>>
slamming balls deep as your eyes roll back in pleasure and your throat becomes the perfect cocksheath you have long trained it to be.
<<else>>
pounding your throat amidst a flood of drool, snot and pre-cum as you are pushed to your limit.
<</if>>
<br><br>
You catch a glimpse of chat out of the corner of your eye as <<=setup.getNpcName("npc_admin","first")>> skull-fucks you live on camera. <<He npc_admin>> notices your attention and breaks character, clearly turned on by the audience.<br>
<br>
"@@.npc_admin;You like that? You like getting your throat pounded in front of <<if $player.flags.camgirl.followers < 100>>dozens of<<elseif $player.flags.camgirl.followers < 300>>a hundred<<elseif $player.flags.camgirl.followers < 1000>>hundreds of<<else>>thousands of<</if>> fans? God, you're such a slut...<<if $fetish.cum>> well drink it up, take your medicine...<</if>>@@"<br>
<br>
You moan as <<he npc_admin>> <<if $fetish.cum>>pulls back and finishes on your face, thick, ropey strands of cum painting your face as your mouth hangs wide to catch a few blasts of <<if setup.getTotalValue("cum") > 10>>delicious<<else>>disgusting<</if>> <<getWordCum>>.<br>
<br>
You rise to your feet and approach the camera, giving your fans a nice complete view of your facial before you end the broadcast and grin back at <<=setup.getNpcName("npc_admin","first")>>.<<else>>finishes with a grunt, your throat trembling around <<his npc_admin>> pulsing cock.<</if>><br>
<br>
"@@.npc_admin;Wow, that was... that was hot...@@" <<He npc_admin>> pulls you in for a hug and then starts helping you clean up. "@@.npc_admin;You're a fucking hot as shit minx, you know that?@@" <<He npc_admin>> adds as <<he npc_admin>> looks you over with a smile, "@@.npc_admin;You make sure to let me know when you want to do this again... goddamn, but there's just something about fucking in front of an audience...@@"<br>
<br>
You promise you will and help <<him npc_admin>> get dressed before sending <<him npc_admin>> off and checking the results of your broadcast...<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action gentle anal sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("feminization")/200>>
<<include "calcCamgirlChanges">>
<<removeAllClothing>>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_admin.penis_size 'normal' $EXPOSED>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
You bend over the bed and arch your back in invitation.<br>
<br>
<<He npc_admin>> cups your hips and kisses your neck in response, grinding for a moment before
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
sliding the plug out of your ass and replacing it with <<his npc_admin>> magnificence.
<<else>>
sliding into your willing ass.
<</if>>
<br><br>
You moan in delight as <<he npc_admin>> eases <<his npc_admin>> way into you and then begins to softly thrust, kissing and stroking you the whole time. You manage to have the presence of mind to turn to present the best angle to the camera as <<he npc_admin>> fucks you standing before easing onto the bed where you ride <<him npc_admin>> reverse cowgirl, shuddering in pleasure as <<he npc_admin>> holds your legs to give a full view of the big, beautiful <<getWordPenis "npc_admin">> pumping, thrusting, and filling your ass with cum just as you shudder in a hands-free analgasm of your own.<br>
<br>
You lean back onto <<him npc_admin>> as you slide free, shuddering in post-orgasmic pleasure — giving your viewers a nice clear view of <<if $fetish.cum>><<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>the plug sealing in <<his npc_admin>> cum<<else>><<his npc_admin>> cum leaking out of your ass<</if>><<else>>your still-quivering hole<</if>> before you end the broadcast.<br>
<br>
Like a <<if $npc_admin.fem>>polite lady<<else>>gentleman<</if>> <<he npc_admin>> helps you back to your feet and you respond with a kiss, and then searching around for <<his npc_admin>> clothes.<br>
<br>
"@@.npc_admin;Thanks that was... that was lovely,@@" <<=setup.getNpcName("npc_admin","first")>> concludes with a smile. Giving you a kiss before finishing pulling on <<his npc_admin>> shoes. "@@.npc_admin;You let me know the next time, okay? Doing you on camera... well, it's even hotter than doing you normally.@@"<br>
<br>
You lead <<him npc_admin>> to the door and say your good-byes before you pop back to your computer to check the results of your broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action gentle oral sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("feminization")/200>>
<<include "calcCamgirlChanges">>
<<removeAllClothing>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $EXPOSED>>
<<applyExperience 'cum' 15 'very' $EXPOSED>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
You grin and slide to your knees, making sure the camera has a perfect view as you unzip <<his npc_admin>> pants and eagerly get to work sucking <<his npc_admin>> gorgeous <<getWordPenis "npc_admin">>.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Wanting to impress <<him npc_admin>> AND your fans
<<if setup.getTotalValue("oral") > 15>>
you deep-throat <<him npc_admin>> with slow ease, moving smoothly as you make love to <<him npc_admin>> with your throat, using one hand to show off that you can feel <<him npc_admin>> through your trachea as you bring <<him npc_admin>> to orgasm.
<<else>>
you manage to work all the way balls-deep, your entire body straining with effort.
<</if>>
<<else>>
<<He npc_admin>>'s too big to handle all at once,
<<if setup.getTotalValue("oral") > 5>>
so you double fist <<him npc_admin>> while you suck the rest, using lips, tongue and fingers to make passionate love to the <<getWordPenis "npc_admin">> before you.
<<else>>
so you work systematically. Kissing your way up and down <<his npc_admin>> shaft, letting your tongue trace around <<his npc_admin>> big, delicious cock-head, then suckle <<his npc_admin>> heavy balls, all while your fingers stroke and caress wherever your lips aren't.
<</if>>
<</if>>
You split your focus between showing off for your fans and paying attention to what is doing the most for <<him npc_admin>>, edging for a while to make sure there's a good show before pushing <<him npc_admin>> over the edge with an enthusiastic burst of energy.<br>
<br>
Your "reward" a mouth-full of <<his npc_admin>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
wonderful
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
surprisingly tasty, if strong
<<else>>
salty
<</if>>
<</if>>
<<getWordCum>> you show off your mouth-full to <<him npc_admin>>, then the camera, swallowing and then smiling at your fans as you end the broadcast.<br>
<br>
"@@.npc_admin;Damn you're good,@@" <<he npc_admin>> whispers from behind you, patting you on the head as you swoon, then helping you to your feet before the two of you set to work finding <<his npc_admin>> clothes.<br>
<br>
"@@.npc_admin;Thanks that was... that was lovely,@@" <<=setup.getNpcName("npc_admin","first")>> concludes with a smile. Giving you a kiss before finishing pulling on <<his npc_admin>> shoes. "@@.npc_admin;You let me know the next time, okay? Doing you on camera... well, it's even hotter than doing you normally.@@"<br>
<br>
You lead <<him npc_admin>> to the door and say your good-byes before you pop back to your computer to check the results of your broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action gentle vag sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("feminization")/200>>
<<include "calcCamgirlChanges">>
<<removeAllClothing>>
<<playerOrgasm>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
You make sure you're angled right for the camera and then pull <<=setup.getNpcName("npc_admin","first")>> on top of you.<br>
<br>
With one hand <<he npc_admin>> reaches between your legs to
<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag", "npc_admin")>>
remove your chastity belt, and then <<he npc_admin>>'s inside you.
<<else>>
finger you, but you need little in the way of foreplay and you eagerly guide <<his npc_admin>> cock where it belongs.
<</if>>
You gasp in pleasure. <<He npc_admin>>'s big and hard, but you're wet and willing as <<he npc_admin>> slowly pumps pleasure deep into your soul.<br>
<br>
<<He npc_admin>> cradles you in <<his npc_admin>> arms as <<he npc_admin>> fucks, <<his npc_admin>> lips whispering sweet nothings in your ear as you hold <<him npc_admin>> tight, moaning with joy as your orgasm builds and builds... until the two of you cum as one in a moment of perfect shared joy.<br>
<br>
Rolling off <<he npc_admin>> looks over at you with a smile. You end the broadcast, sharing a final, private kiss before returning to your feet <<if setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag", "npc_admin")>>where <<he npc_admin>> locks you back in your belt and then you<<else>>to<</if>> help <<him npc_admin>> find <<his npc_admin>> clothes.<br>
<br>
"@@.npc_admin;Thanks that was... that was lovely,@@" <<=setup.getNpcName("npc_admin","first")>> concludes with a smile. Giving you a kiss before finishing pulling on <<his npc_admin>> shoes. "@@.npc_admin;You let me know the next time, okay? Doing you on camera... well, it's even hotter than doing you normally.@@"<br>
<br>
You lead <<him npc_admin>> to the door and say your good-byes before you pop back to your computer to check the results of your broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action bdsm anal sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("submission")/200>>
<<include "calcCamgirlChanges">>
<<removeAllClothing>>
<<applyExperience 'submission' 15 'very' $EXPOSED>>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_admin.penis_size 'normal' $EXPOSED>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<<set _caged = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if _caged>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<<set $scene.removeCage = _caged && _unlockable>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
Still on <<his npc_admin>> leash you turn and grind against your <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>>, only for <<him npc_admin>> to pull you vertical and tilt your head back to kiss you from behind.<br>
<br>
"@@.npc_admin;You're too sexy sometimes, you know that?@@" You moan at <<his npc_admin>> <<if $npc_admin.fem>>commanding<<else>>deep<</if>> voice in your ear, then gasp as <<he npc_admin>> pushes you forward onto the bed.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
The <<=setup.getItemTypeName('plug')>> sliding free of your ass is replaced by your <<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>> cock.
<<else>>
Your <<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>> cock slides into you.
<</if>>
Your <<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>> big, hard, perfect <<getWordPenis "npc_admin">>.<br>
<br>
You moan, eyes rolling back only for <<=setup.getNpcName("npc_admin","first")>> to pull you up and re-position, covering for your sub-space ditziness to give the optimal angle for your viewers as <<he npc_admin>> starts fucking <<his npc_admin>> slave.<br>
<br>
The cock in your ass, the hands holding your hips... your world narrows in on this perfect moment of serving your <<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>>. You become so focused on <<his npc_admin>> pleasure that you lose track of your own, but <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>> is there to help — pulling deliciously on your leash until you start to choke as <<he npc_admin>> leans in and orders you to "@@.npc_admin;Cum for your <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>>.@@"<br>
<br>
You analgasm, hard as your vision flickers, your spasms sending <<him npc_admin>> off and you tense in ecstasy as <<he npc_admin>> pumps <<his npc_admin>> gratitude deep inside of you.<br>
<br>
Just before you lose consciousness <<he npc_admin>> shifts <<his npc_admin>> grip to supporting your chest, guiding you back to your feet as you wobble slightly.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
The <<=setup.getItemTypeName('plug')>> slips back into your rear<<if $fetish.cum>> before you can leak any of your precious cargo<</if>> and you smile.
<</if>>
You look up at <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>> with submissive, lovey eyes as <<he npc_admin>> leans in for a kiss, whispering "@@.npc_admin;Good girl,@@" before ending the broadcast.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grins. "@@.npc_admin;You really are perfection, you know that?@@"<br>
<br>
<<if $scene.action == "oral">>
You blush and curtsy in thanks as <<he npc_admin>>, sadly, unclips your leash and then departs.
<<else>>
You blush and bustle about finding <<his npc_admin>> clothes, helping <<him npc_admin>> dress before <<he npc_admin>> removes your leash and departs.
<</if>>
<br><br>
The door closes behind <<him npc_admin>> and you take a moment to catch your breath before returning to the living room to check the results of your broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action bdsm oral sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("submission")/200>>
<<include "calcCamgirlChanges">>
<<removeAllClothing>>
<<applyExperience 'submission' 15 'very' $EXPOSED>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $EXPOSED>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<<set _caged = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if _caged>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<<set $scene.removeCage = _caged && _unlockable>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
Maintaining submissive eye-contact the entire time you slide to your knees and unzip your <<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>> pants. Doing a little head-bob bow you loop the leash around <<his npc_admin>> <<getWordPenis "npc_admin">>; it gets just a little bit harder and you dive in to lick<<if $fetish.cum>> the precious bead of pre-cum from<</if>> the tip.<br>
<br>
"@@.npc_admin;Good girl...@@" <<He npc_admin>> whispers, pulling slightly on the leash to draw you forward.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
You slide forward, and <<=ps(setup.getNpcName("npc_admin","first"))>> <<getWordPenis "npc_admin">> goes where it belongs — all the way down your throat.
<<if setup.getTotalValue("oral") > 15>>
You continue to look up at <<him npc_admin>> the whole time, ignoring <<his npc_admin>> perfect glistening abs<<if $npc_admin.fem>> and boobs<</if>> to stare lovingly up at your <<=ps(setup.getNpcName("npc_admin","<<Master npc_admin>>"))>> smile of approval.
<<else>>
You struggle just a bit at the end, but are rewarded with the heavy, warm feeling of <<his npc_admin>> balls against your chin.
<</if>>
You interlace your fingers behind your back, showing off your skills with a hands-free blowjob.
<<else>>
Your lips part nervously, but <<=setup.getNpcName("npc_admin","first")>> does not force you to attempt more than you can handle, instead merely resting a hand gently on your head as you bob, suck, and stroke with both hands.
<</if>>
<br><br>
You can see the tension on <<his npc_admin>> face as <<he npc_admin>> holds back, but your lips are too much and your <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>> cums.
<<if $fetish.cum>>
Filling your mouth with
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
the most delicious
<<else>>
a wonderful
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
a strong, but not objectionable
<<else>>
a bitter... yet satisfying
<</if>>
<</if>>
prize.
<<else>>
Pulling you in at the last moment to shoot <<his npc_admin>> load directly into your belly without you tasting a drop.
<</if>>
<br><br>
You wait for <<him npc_admin>> to finish and then slowly lean back, swallowing smoothly before licking your lips clean and smiling up at <<him npc_admin>>.<br>
<br>
"@@.npc_admin;Good girl,@@" <<he npc_admin>> states, patting you on the head and then tenderly brushing your cheek.<br>
<br>
You tingle with pride as <<he npc_admin>> pulls you to your feet, ending the broadcast before rewarding you with a private kiss.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grins. "@@.npc_admin;You really are perfection, you know that?@@"<br>
<br>
<<if $scene.action == "oral">>
You blush and curtsy in thanks as <<he npc_admin>>, sadly, unclips your leash and then departs.
<<else>>
You blush and bustle about finding <<his npc_admin>> clothes, helping <<him npc_admin>> dress before <<he npc_admin>> removes your leash and departs.
<</if>>
<br><br>
The door closes behind <<him npc_admin>> and you take a moment to catch your breath before returning to the living room to check the results of your broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action bdsm vag sex with admin
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("submission")/200>>
<<include "calcCamgirlChanges">>
<<removeAllClothing>>
<<applyExperience 'submission' 15 'very' $EXPOSED>>
<<playerOrgasm>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<<set _caged = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if _caged>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set _unlockable = $npc_admin.flags.keyholder || setup.checkItemInInventory(_keyId)>>
<</if>>
<<set $scene.removeCage = _caged && _unlockable>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_admin","npc_admin_naked")>>
<div id="invframe" class="scrolltext">
You crawl up onto the bed and turn over to present yourself to your <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>>.<br>
<br>
<<He npc_admin>> nods in acceptance.
<<if $scene.removeCage>>
<<He npc_admin>> unlocks your chastity belt and then
<<else>>
<<He npc_admin>>
<</if>>
runs a finger between your folds as you gasp in pleasure. <<He npc_admin>> comes away wet, extending <<his npc_admin>> hand for you to suck clean before <<he npc_admin>> steps forward, easing into you.<br>
<br>
One arm slides under you and <<he npc_admin>> lifts you into the air, pulling you in by the collar for a kiss as your legs wrap around <<his npc_admin>> waist and <<he npc_admin>> fucks in mid-air.<br>
<br>
"@@.pc;<<=setup.getNpcName("npc_admin","<<if $npc_admin.fem>>D-d-domina<<else>>M-m-master<</if>>")>>,@@" you moan, doing everything you can to get <<him npc_admin>> off even as <<he npc_admin>> rockets you towards orgasm.<br>
<br>
Your eyes squeeze closed and you hug <<his npc_admin>> shoulders as <<he npc_admin>> whispers in your ear. "@@.npc_admin;Cum for me, my pet.@@"<br>
<br>
You do, the pleasure slamming into your body like an overwhelming force, your muscles clamping down in reflex to push <<him npc_admin>> over into an orgasm of <<his npc_admin>> own. For a moment it feels like <<he npc_admin>>'s holding you up with nothing but <<his npc_admin>> cock, but, as your own orgasm fades, your legs un-clasp, finding their way to the floor as <<he npc_admin>> eases you down and thanks you with a kiss.<br>
<br>
You're still in a bit of a sub-space as you bow to your <<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>>, and then to the camera before ending the broadcast.<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> grins. "@@.npc_admin;You really are perfection, you know that?@@"<br>
<br>
<<if $scene.action == "oral">>
You blush and curtsy in thanks as <<he npc_admin>>, sadly, unclips your leash and then departs.
<<else>>
You blush and bustle about finding <<his npc_admin>> clothes, helping <<him npc_admin>> dress before <<he npc_admin>> removes your leash and departs.
<</if>>
<br><br>
The door closes behind <<him npc_admin>> and you take a moment to catch your breath before returning to the living room to check the results of your broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action sex with technician intro
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<<case 'neutral' ''>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician")>>
<<case 'sub'>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<</switch>>
<div id="invframe" class="scrolltext">
Target hit you text <<=setup.getNpcName("npc_technician","first")>> that you're ready for her to come over, killing time flirting on stream as you wait for her to ring the bell.<br>
<br>
You'd swear she was waiting in the hallway the doorbell rings so swiftly. You tell chat you'll "@@.pc;Be back soon,@@" as you shift the broadcast to your bedroom and get the door.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You've open the door to find <<=setup.getNpcName("npc_technician","formal")>>, coat opened to show of her full domme regalia. She gives you a moment to drink it in before clipping a leash to your collar and walking into the flat.<br>
<br>
"@@.npc_technician;So Princess. Now that I have found you in your castle... how should I enjoy my prize?@@"<br>
<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && !setup.canSexOrRemoveChastity("vag", "npc_technician")>>
[@@.link_locked;Your <<getWordVagina>> is locked away.@@]<br>
<<elseif $npc_technician.relationship.done_vag>>
<<if setup.checkItemTypeWorn("cage") && setup.canSexOrRemoveChastity("vag", "npc_technician")>>
[<<moveTo "event_camgirl_guest_technician_2_dom_vag" "You want her to fuck you." 1200 "<<set $scene.action='dom_vag'>>">>]<br>
<<else>>
[<<moveTo "event_camgirl_guest_technician_2_dom_vag" "You want to unlock for her to fuck you." 1200 "<<set $scene.action='dom_vag'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You don't want your first time getting fucked to be on stream.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.done_you>>
[<<moveTo "event_camgirl_guest_technician_2_dom_anal_you" "You want her to fuck your ass." 1200 "<<set $scene.action='anal_you'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first time getting ass-fucked to be on stream.@@]<br>
<</if>>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage") && !setup.canSexOrRemoveChastity("penis", "npc_technician")>>
[@@.link_locked;Your <<getWordMyPenis>> is locked away.@@]<br>
<<elseif $npc_technician.relationship.done_her>>
<<if setup.checkItemTypeWorn("cage") && setup.canSexOrRemoveChastity("penis", "npc_technician")>>
[<<moveTo "event_camgirl_guest_technician_2_dom_anal_her" "You want to unlock and fuck her." 1200 "<<set $scene.action='anal_her'>>">>]<br>
<<else>>
[<<moveTo "event_camgirl_guest_technician_2_dom_anal_her" "You want to fuck her." 1200 "<<set $scene.action='anal_her'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You don't want your first time fucking her to be on stream.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.done_her>>
[<<moveTo "event_camgirl_guest_technician_2_dom_strapon" "You want to serve her with a strap-on." 1200 "<<set $scene.action='strapon'>>">>]<br>
<</if>>
<<if $player.virgin.blowjob>>
[<<moveTo "event_camgirl_guest_technician_2_dom_oral_her" "You wish to offer up your mouth." 1200 "<<set $scene.action='oral_her'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first blowjob to be on stream.@@]<br>
<</if>>
[<<moveTo "event_camgirl_guest_technician_2_dom_oral_you" "You want her head between your legs." 1200 "<<set $scene.action='oral_you'>>">>]<br>
[<<moveTo "event_camgirl_guest_technician_2_dom_punish" "You deserve to be punished." 1200 "<<set $scene.action='punish'>>">>]<br>
<<case 'neutral' ''>>
You've barely opened the door when <<=setup.getNpcName("npc_technician","first")>> almost leaps into your arms.<br>
<br>
<<switch $npc_technician.flags.knowgender>>
<<case 'female'>>
"@@.npc_technician;Sorry, I'm just... REALLY excited... goddess... getting to fuck a sexy camgirl, live AND she's my girlfriend? Does life get any better?@@"
<<case 'male'>>
"@@.npc_technician;Sorry, I'm just... REALLY excited... goddess... to fuck a sexy cam-boi, live AND he's my cute boyfriend? Does life get any better?@@"
<<default>>
"@@.npc_technician;Sorry, I'm just... REALLY excited... goddess... to fuck live on camera with my sexy, cute, oh-so-fucking-HAWT lover? Does life get any better?@@"
<</switch>>
<br><br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && !setup.canSexOrRemoveChastity("vag", "npc_technician")>>
[@@.link_locked;Your <<getWordVagina>> is locked away.@@]<br>
<<elseif $npc_technician.relationship.done_vag>>
[<<moveTo "event_camgirl_guest_technician_2_neut_vag" 'You are wet and eager to take a ride on the <<=setup.getNpcName("npc_technician","first")>> express.' 1200 "<<set $scene.action='vag'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first time getting fucked to be on stream.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.done_you>>
[<<moveTo "event_camgirl_guest_technician_2_neut_anal_you" "You want her to fuck your ass." 1200 "<<set $scene.action='anal_you'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first time getting ass-fucked to be on stream.@@]<br>
<</if>>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage") && !setup.canSexOrRemoveChastity("penis", "npc_technician")>>
[@@.link_locked;Your <<getWordMyPenis>> is locked away.@@]<br>
<<elseif $npc_technician.relationship.done_her>>
[<<moveTo "event_camgirl_guest_technician_2_neut_anal_her" "You want to fuck her." 1200 "<<set $scene.action='anal_her'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first time fucking her to be on stream.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.done_her>>
[<<moveTo "event_camgirl_guest_technician_2_neut_strapon" "You want to strap dat ass." 1200 "<<set $scene.action='strapon'>>">>]<br>
<</if>>
<<if $player.virgin.blowjob>>
[<<moveTo "event_camgirl_guest_technician_2_neut_oral_her" "You want to suck her off." 1200 "<<set $scene.action='oral_her'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first blowjob to be on stream.@@]<br>
<</if>>
[<<moveTo "event_camgirl_guest_technician_2_neut_oral_you" "You want her head between your legs." 1200 "<<set $scene.action='oral_you'>>">>]<br>
<<case "sub">>
You find <<=setup.getNpcName("npc_technician","first")>> standing outside your door, with a look of excitement on her face... and her leash in hand.<br>
<br>
"@@.npc_technician;Hello, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. How can this slave serve your glory today?@@"<br>
<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && !setup.canSexOrRemoveChastity("vag", "npc_technician")>>
[@@.link_locked;Your <<getWordVagina>> is locked away.@@]<br>
<<elseif $npc_technician.relationship.done_vag>>
[<<moveTo "event_camgirl_guest_technician_2_sub_vag" "You want to fuck her <<getWordPenis false>>." 1200 "<<set $scene.action='sub_vag'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first time getting fucked to be on stream.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.done_you>>
[<<moveTo "event_camgirl_guest_technician_2_sub_anal_you" "You want your slave in your ass." 1200 "<<set $scene.action='anal_you'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first time getting ass-fucked to be on stream.@@]<br>
<</if>>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage") && !setup.canSexOrRemoveChastity("penis", "npc_technician")>>
[@@.link_locked;Your <<getWordMyPenis>> is locked away.@@]<br>
<<elseif $npc_technician.relationship.done_her>>
[<<moveTo "event_camgirl_guest_technician_2_sub_anal_her" "You want to fuck her." 1200 "<<set $scene.action='anal_her'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first time fucking her to be on stream.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.relationship.done_her>>
[<<moveTo "event_camgirl_guest_technician_2_sub_strapon" "You want to strap dat ass." 1200 "<<set $scene.action='strapon'>>">>]<br>
<</if>>
<<if $player.virgin.blowjob>>
[<<moveTo "event_camgirl_guest_technician_2_sub_oral_her" "You're hungry for your slave's <<getWordPenis false>>." 1200 "<<set $scene.action='oral_her'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first blowjob to be on stream.@@]<br>
<</if>>
<<if $player.body_ref.penis && setup.checkItemTypeWorn("cage") && !setup.canSexOrRemoveChastity("penis", "npc_technician")>>
[@@.link_locked;You can't get a blowjob when you're locked in chastity.@@]<br>
<<elseif $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage() && !setup.canSexOrRemoveChastity("vag", "npc_technician")>>
[@@.link_locked;She can't eat you out through a chastity belt.@@]<br>
<<else>>
[<<moveTo "event_camgirl_guest_technician_2_sub_oral_you" "You want her on her knees putting her mouth to work." 1200 "<<set $scene.action='oral_you'>>">>]<br>
<</if>>
[<<moveTo "event_camgirl_guest_technician_2_sub_punish" "You want to punish her on camera." 1200 "<<set $scene.action='sub_punish'>>">>]<br>
<</switch>>
[<<moveTo "event_camgirl_guest_technician_2_abort" "Actually... you don't want to do this today." 300>>]
</div>/*#
#desc: camgirl action sex with technician abort
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = .5>>
<<include "calcCamgirlChanges">>
<<incrementEmotion 'anger' 'npc_technician' 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<<case 'neutral' ''>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician")>>
<<case 'sub'>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<</switch>>
<div id="invframe" class="scrolltext">
You apologise and tell <<=setup.getNpcName("npc_technician","first")>> that, actually... you don't think you're up for this today.<br>
<br>
"@@.npc_technician;Rats, but okay. don't want you doing anything you aren't comfortable with, but hey, maybe some other time?@@" She gives you a kiss goodbye and heads up the hallway.<br>
<br>
You head back to your computer and end the broadcast, wincing as your numbers almost immediately, and precipitously, drop.<br>
<br>
<<printThought "To be fair... if I thought I was going to see <<=setup.getNpcName('npc_technician','first')>>, then I didn't, well... I'd be peeved too...">><br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action sex with technician sex her dom vag
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
Holding you by the leash she smiles. "@@.npc_technician;Before we begin... I think this might confuse your viewers a bit,@@" she states, motioning towards her chastity device.<br>
<br>
You nod and unlock her and she instantly stiffens. "@@.npc_technician;Such a relief... NOW I'm ready for my close-up...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","formal")>> leads you through the flat into your bedroom. She gives time for your viewers to admire the both of you before gently tipping you onto the bed. She stands between your legs and slaps her <<getWordPenis false>> down
<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag", "npc_technician")>>
against the front shield of your chastity belt. "@@.npc_technician;Time for you to be let out for a... conjugal visit, I think.@@" She states, unlocking you to expose your wet eagerness. You spread your
<<else>>
against your crotch. You grin, spreading
<</if>>
your legs wider as she rubs between your folds, then pulls back and slams into you.<br>
<br>
You gasp and she grins. "@@.npc_technician;You like that, Princess? Go on, beg for it, beg for your <<=ps(setup.getNpcName("npc_technician","title"))>> broadsword.@@"<br>
<br>
You do as she commands, begging for her to fuck you as chat adds their voice to the call.<br>
<br>
<<=setup.getNpcName("npc_technician","formal")>> slides deeper, plunging forward until the full length and girth of her "weapon" are inside of you... and then she starts to thrust.<br>
<br>
You moan as she accelerates quickly to full-on "fucking your brains out" pace, squatting over you with quick, hard thrusts that rattle your body and cause her balls to rhythmically slap you with each stroke.<br>
<br>
She pins you down with her hands, then pins you in place with each thrust of her <<getWordPenis false>> as she takes her pleasure... and gives you plenty of your own; your excited juices providing plenty of lube until she finishes you off with a massive cream-pie. Stepping back, still sporting a half chub, she grins<<if setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag", "npc_technician")>>, and locks you back up<</if>>.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_dom" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her dom anal you
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
Holding you by the leash she smiles. "@@.npc_technician;Before we begin... I think this might confuse your viewers a bit,@@" she states, motioning towards her chastity device.<br>
<br>
You nod and unlock her and she instantly stiffens. "@@.npc_technician;Such a relief... NOW I'm ready for my close-up...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","formal")>> leads you through the flat into your bedroom. She gives time for your viewers to admire the both of you before bending you over the bed and presenting your <<if setup.checkItemTypeWorn("plug")>>plugged <</if>>ass to the camera.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.npc_technician;Look at this perfect Princess — plugged and stretched and ready for use at a moment's notice!@@"
<<else>>
"@@.npc_technician;Look at this sexy butt! All cute and plugged and ready for use.@@" You gasp as she slides the plug out of you, your hole quivering at the momentary emptiness.
<</if>>
<<else>>
"@@.npc_technician;Isn't this just the cutest butt?@@"
<</if>>
She starts fingering you open. "@@.npc_technician;So tight, but welcoming, that's a good slave.@@" She adds another finger and you start breathing heavier. "@@.npc_technician;Mmm, I heard that. You excited? You excited to get fucked by your <<=setup.getNpcName("npc_technician","title")>>?@@"<br>
<br>
You nod, only to realise that you're out of view of the camera, resulting in a light swat to your bottom. "@@.npc_technician;That isn't how you put on a show! Tell your fans how much you want to be the sheath for my broadsword.@@" A third finger slides into you and you moan. "@@.npc_technician;I know it's hard, but use your words!@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_technician","formal")>>. Please fuck your slave's ass, <<=setup.getNpcName("npc_technician","title")>>.@@"<br>
<br>
"@@.npc_technician;Very good!@@" She replies... and then you feel it, her fingers sliding free, and then the tip of her <<getWordPenis false>> pressing against your hole... and then gliding into you.<br>
<br>
"@@.npc_technician;Mmm, your ass feels so good to fuck... the perfect Princess hole.@@"<br>
<br>
You moan, her every stroke stimulating your slut button, completely under her control as she re-angles towards the camera and grabs hold of your hair to lift up your head. "@@.npc_technician;Say hi to your fans! Tell them how much you love being my shenis cozy.@@"<br>
<br>
You stare at the camera as chat scrolls past and moan as <<=setup.getNpcName("npc_technician","formal")>> increases her pace. "@@.pc;Yes, <<=setup.getNpcName("npc_technician","formal")>>. Fuck me! Fuck me harder!@@"<br>
<br>
She does, and you start to analgasm, a full-body submissive climax that lasts for over a minute as <<=setup.getNpcName("npc_technician","formal")>> pounds away until her own climax arrives. You groan as she finally releases her grip on your hair, your muscles giving out as you slump onto the bed.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_dom" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her dom
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
Holding you by the leash she smiles. "@@.npc_technician;Before we begin... I think this might confuse your viewers a bit,@@" she states, motioning towards her chastity device.<br>
<br>
You nod and unlock her and she instantly stiffens. "@@.npc_technician;Such a relief... NOW I'm ready for my close-up...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","formal")>> leads you through the flat into your bedroom. She gives time for your viewers to admire the both of you before she
<<if $scene.action == 'strapon'>>
buckles a harness around your hips to grant you a sizable strap-on sprouting forward.
<<else>>
<<if setup.checkItemTypeWorn("cage") && setup.canSexOrRemoveChastity("penis", "npc_technician")>>
unlocks your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>
<<else>>
removes your clothes
<</if>>
for your <<getWordMyPenis false>> to spring forth, hard and ready.<br>
<br>
<<if $player.body.penissize[0] < 2 && $fetish.sph>>
"@@.npc_technician;Hmm, you're cute, but that is hardly a proper thing to present to an <<=setup.getNpcName("npc_technician","title")>>, here, this should help.@@" You bite your lip as she slides a large cock-sheath over your member, the weight of your artificially massive penis pulling you forward.<br>
<br>
<</if>>
<</if>>
She crawls up onto the bed and wiggles her ass in invitation, pulling you forward by your leash. "@@.npc_technician;Come on, Princess — give it to your <<=setup.getNpcName("npc_technician","title")>>, let her feel your royal rod in her imperial chamber...@@"<br>
<br>
You do as she requests lining up your
<<if $scene.action == 'strapon'>>
artificial <<getWordPenis true>>
<<elseif $player.body.penissize[0] < 2 && $fetish.sph>>
artificially enhanced <<getWordMyPenis false>>
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small <<getWordMyPenis false>>
<<case 2 3>>
<<getWordMyPenis false>>
<<case 4 5>>
large <<getWordMyPenis false>>
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon <<elseif $player.body_ref.horsecock>>horse <<elseif $player.body_ref.knot>>dog <</if>>cock
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
with her rear. You start to ease your way in... and then she backs up fast, pulling your leash so that you stumble forward and slam all the way into her.<br>
<br>
<<if $player.body.penissize[0] == 6 && $player.body_ref.knot>>"@@.npc_technician;Fuck that knot feels good...@@" she moans, her dominant performance slipping for a moment as she adjusts to your size inside of her<<else>>"@@.npc_technician;Good Princess — now keep going, you cannot expect me to do ALL the work.@@"<</if>><br>
<br>
You start thrusting in time to her pulling on your leash, pace steadily increasing as you target her prostate and her moans get increasingly more intense.<br>
<br>
<<if $scene.action == 'strapon'>>
"@@.npc_technician;That's right, serve your <<=setup.getNpcName("npc_technician","title")>>. Make love to her perfect booty, yes, harder!@@"
<<else>>
"@@.npc_technician;You better not cum yet, slave! Now harder!@@"
<</if>>
<br><br>
You increase your pace as you can tell she's about to cum. She continues to direct you with the leash as her other hand reaches down to grab her own rock-hard <<getWordPenis false>>... A few strokes and she's painting your bed with her lady cannon
<<if $scene.action != 'strapon'>>
and finally giving you permission. "@@.npc_technician;Cum, Princess! Spill that royal offering!@@"<br>
<br>
You moan, and cum, shuddering as she squeezes the orgasm out of you... and then pushes you out.
<<if $fetish.cum>>
<br><br>
"@@.npc_technician;Well? You better clean up that mess. Just because you are a Princess doesn't mean you aren't still my slave!@@"<br>
<br>
Still deep in sub-space you obey instantly; dropping to your knees to lick your own cum out of her perfect ass, and then continuing south to slurp clean her dangling cock, the intermixed taste of cum and her ball-sweat almost enough to make you hands-free climax a second time.
<</if>>
<<else>>
and moaning in satisfaction.
<</if>>
<br><br>
Though her expression is flush she finds her way to her feet, smiling at you in pride. <<switch $npc_technician.flags.knowgender>><<case 'female'>>"@@.npc_technician;Good girl...@@"<<case 'male'>>"@@.npc_technician;Good boy...@@"<<default>>"@@.npc_technician;Good job...@@"<</switch>>
<br><br>
[<<moveTo "event_camgirl_guest_technician_3_dom" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her dom strapon
#status: RELEASED 0.8.9.0
#*/
<<initRoom>>
<<include playerMenu>>
<<moveTo "event_camgirl_guest_technician_2_dom_anal_her">>/*#
#desc: camgirl action sex with technician sex — her dom oral her
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
Holding you by the leash she smiles. "@@.npc_technician;Before we begin... I think this might confuse your viewers a bit,@@" she states, motioning towards her chastity device.<br>
<br>
You nod and unlock her and she instantly stiffens. "@@.npc_technician;Such a relief... NOW I'm ready for my close-up...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","formal")>> leads you through the flat into your bedroom. She gives time for your viewers to admire the both of you before she leads you to the foot of the bed and down to your knees.<br>
<br>
"@@.npc_technician;So, my adorable Princess... do you know what you <<=setup.getNpcName("npc_technician","title")>> desires from you today?@@" As she talks she lets her hard <<getWordPenis false>> sway in front of you. "@@.npc_technician;Her desire... is your lovely lips...@@"<br>
<br>
With a smile and a "@@.npc_technician;Yes, <<=setup.getNpcName("npc_technician","formal")>>,@@" you lean forward and start sucking, eagerly showing your <<=setup.getNpcName("npc_technician","title")>>
<<if setup.getTotalValue("oral") > 10>>
your ability to deepthroat her
<<if setup.getTotalValue("oral") > 15>>
hands free.
<<else>>
as you force your lips all the way down to her base.
<</if>>
<<else>>
your love by softly sucking and caressing her <<getWordPenis false>> with both hands.
<</if>>
<<=setup.getNpcName("npc_technician","formal")>> purrs in pleasure, stroking your hair as you suck and stroke her. "@@.npc_technician;That's right, keep sucking beautiful — your lips never look better than when they're around my Imperial Rod...@@"<br>
<br>
You try to remember to put on a show for your fans, but the more you suck the more you want to give yourself completely over to worshipping your <<=setup.getNpcName("npc_technician","title")>>.<br>
<br>
Her soft gasp and quickening breaths is all the encouragement you need, knowing that the ultimate reward of giving her an orgasm is so, so near...<br>
<br>
<<if $fetish.cum && State.hasPlayed("event_technician_cum_kiss_2")>>
You recall the idea she mentioned about sharing cummy kisses together...<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_oral_cum" "Make her fantasy come true." 120 "<<set $scene.cum_share=true>>">>]<br>
[<<moveTo "event_camgirl_guest_technician_3_oral_cum" "Just finish up." 120 "<<set $scene.cum_share=false>>">>]
<<else>>
<<if $fetish.cum>>
She cums, flooding your mouth
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
with the greatest prize imaginable.
<<else>>
with your delicious prize.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
with your surprisingly tasty prize.
<<else>>
with a salty prize.
<</if>>
<</if>>
You gulp, not wanting to disappoint your <<=setup.getNpcName("npc_technician","title")>> by spilling a single drop, sucking and licking until her twitching orgasm stops and
<<else>>
You shove her as far down your throat as possible as you feel her cum, her twitching climax reverberating through your body as you moan in submissive delight.
<</if>>
<<=setup.getNpcName("npc_technician","formal")>> pulls you off and then to your feet, almost dragging you up by the collar so she can kiss you. No... not kiss you: claim you with her lips, her tongue extending into your mouth to further assert that all of you is HERS.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_dom" "Finish up." 120>>]
<</if>>
</div>/*#
#desc: camgirl action sex with technician sex — her dom oral you
#status: RELEASED 0.8.9.0
#ignore_spell: g
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
Holding you by the leash she smiles. "@@.npc_technician;Before we begin... I think this might confuse your viewers a bit,@@" she states, motioning towards her chastity device.<br>
<br>
You nod and unlock her and she instantly stiffens. "@@.npc_technician;Such a relief... NOW I'm ready for my close-up...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","formal")>> leads you through the flat into your bedroom. She gives time for your viewers to admire the both of you before she leads you to the bed, and then pushes you onto your back.<br>
<br>
Sliding to her knees her firm grip on your leash has her still in control as she
<<if setup.checkItemTypeWorn("cage")>>
unlocks your <<=setup.getItemTypeName('cage')>> and
<</if>>
exposes you to the camera.<br>
<br>
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
She takes your <<getWordMyPenis false>> in hand, her tongue tracing between your folds and then up the length of your hard shaft.
<<else>>
Her tongue traces from your <<if $player.body_ref.balls>>balls<<else>>base<</if>> up the length of your hard shaft.
<</if>>
<<else>>
Her lips wrap around your clit, her tongue probing deeper into your <<getWordVagina>>.
<</if>>
"@@.npc_technician;Delicious... and mine.@@" She asserts
<<if $player.body_ref.penis>>
as she
<<if $player.body_ref.vagina>>
curls a pair of fingers into your <<getWordVagina>> and
<</if>>
starts sucking your <<getWordMyPenis false>>.<br>
<br>
You moan submissively as
<<switch $player.body.penissize[0]>>
<<case 0 1>>
she toys with your small <<getWordMyPenis false>> between her lips.
<<case 2 3>>
she sucks you off in complete control.
<<case 4 5>>
she barely manages to deepthroat your large member.
<<case 6>>
she kisses and sucks your massive <<getWordMyPenis false>><<if $player.body_ref.knot && $player.body_ref.horsecock>>, paying particular attention to your flared tip and engorged knot<<elseif $player.body_ref.horsecock>>, paying particular attention to your flared tip<<elseif $player.body_ref.knot>>, paying particular attention to your engorged knot<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
redirecting her tongue and lips to focus solely on your sensitive clit two of her fingers curl into you, pressuring your g-spot to accentuate the flower of pleasure blossoming between your legs.
<</if>>
<br><br>
"@@.npc_technician;I love how you taste...@@" She whispers in between licks, making you gasp as she tugs possessively on your leash. "@@.npc_technician;So delicate, so delicious... so mine. Yes... I could eat you up morning, noon and night and never tire of it, but I don't know if I could say to same for you. Hmm? Is this becoming too much? Do you need to cum?@@"<br>
<br>
You moan submissively and nod, reduced to wordlessly pleading with your eyes — torn between the deep need to cum, and the even stronger desire to obey your <<=setup.getNpcName("npc_technician","title")>> and not climax without her permission.<br>
<br>
"@@.npc_technician;Mmm, I love that look... it makes me tempted to <<if !setup.checkItemTypeWorn("cage")>>leave you like this — mad with need<<else>>lock you back up<</if>>, but I am a kind <<=setup.getNpcName("npc_technician","title")>>, A generous <<=setup.getNpcName("npc_technician","title")>>... A THIRSTY <<=setup.getNpcName("npc_technician","title")>>... cum for me, my love, cum hard for your <<=setup.getNpcName("npc_technician","title")>>!@@"<br>
<br>
Her permission was all you needed and you cum, hard,
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction == 0>>twitching in<<else>>spurting down<</if>> her throat<<if $player.body_ref.vagina>>, and gushing down her chin<</if>>.
<<else>>
<<if $player.body_ref.cumProduction == 0>>twitching in her throat<<else>>squirting into her mouth<</if>>.
<</if>>
She swallows eagerly, gulping everything you have and continuing to lick and suck until you are well and truly spent.<br>
<br>
She crawls forward, your taste on her lips as she pulls your leash and raises your head off the mattress to kiss you, to claim you once more as hers.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_dom" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her dom punish
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.her_caged>>
Holding you by the leash she smiles. "@@.npc_technician;Before we begin... I think this might confuse your viewers a bit,@@" she states, motioning towards her chastity device.<br>
<br>
You nod and
<<if $npc_technician.relationship.sissyomatic>>
the ever-watching <<=setup.getNpcName("npc_ai","title")>> unlocks your <<=setup.getNpcName("npc_technician","title")>>.
<<else>>
unlock her and she instantly stiffens.
<</if>>
"@@.npc_technician;Such a relief... NOW I'm ready for my close-up...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","formal")>> leads you through the flat into your bedroom. She gives time for your viewers to admire the both of you before <<=setup.getNpcName("npc_technician","formal")>> adopts a stern expression as she leads you into view of the camera, pulling your leash hard enough for you to stumble after her before she turns, her voice harsh (well... for her). "@@.npc_technician;Impudent slave! You may be a Princess, but you are my property and must learn to behave as such!@@"<br>
<br>
<<if $status_flat.bedroom == 1>>
She glances at your bed, bedecked with fetish glory. "@@.npc_technician;Fortunately this chamber is equipped for dealing with such failures. After all, removing the freedom to do anything save obey is a perfect start before attending to the failures of the past.@@"<br>
<br>
Taking advantage of your equipment she has you swiftly bound — spread eagled and helpless.
<<else>>
She glances around the room and frowns. "@@.npc_technician;An ill-equipped dungeon, but fortunately your <<=setup.getNpcName("npc_technician","title")>> is always prepared.@@"<br>
<br>
Pulling out a hank of rope she swiftly has you restrained, binding you in a tight hogtie.
<</if>>
<br><br>
"@@.npc_technician;Now that the... distraction of freedom is removed, we can move on to your punishment...@@" <<=setup.getNpcName("npc_technician","first")>> grins, but rather than reaching for a crop or a whip, she reaches out and runs her fingertips along your armpits.<br>
<br>
You giggle and thrash, but the restraints do their job, exposing you to her merciless tickling that soon has you gasping and almost crying, her ever so tender touch as gentle as is it is inescapable and torturous.<br>
<br>
She watches you like a hawk the entire time, pushing you right up to the limit, where you're afraid you might wet the bed as your body loses all control... and then she stops.<br>
<br>
"@@.npc_technician;So, Princess... you ready to be more obedient going forward?@@"<br>
<br>
You pant and nod, gasping out a "@@.pc;<<=setup.getNpcName("npc_technician","formal")>>@@" that brings a smile to her face before she leans in for a kiss.<br>
<br>
"@@.npc_technician;Wonderful...@@"<br>
<br>
You let out a sigh of relief as she releases your bonds, still tense lest the slightest wrong touch set you off again, but she is as careful as she was devilish before, avoiding your most ticklish areas and instead kissing each limb after it has been freed from its restraint.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_dom" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her dom finish
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("submission")/200>>
<<include "calcCamgirlChanges">>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $SEEN_FRIEND>>
<<switch $scene.action>>
<<case 'vag'>>
<<playerOrgasm>>
<<case 'anal_you'>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<playerOrgasm>>
<<case 'anal_her'>>
<<playerOrgasm>>
<<case 'oral_her'>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<case 'oral_you'>>
<<playerOrgasm>>
<<case 'punish'>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_FRIEND>>
<<if $status_flat.bedroom == 1>>
<<applyExperience 'bondage' 15 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bondage' 13 'normal' $SEEN_FRIEND>>
<</if>>
<</switch>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","formal")>> ends the broadcast and then pulls you in for some cuddling after-care, holding you in her arms and whispering how much she loves you as you drift back from sub space.<br>
<br>
"@@.npc_technician;Thanks for the invite... that was fun,@@" <<=setup.getNpcName("npc_technician","first")>> says with a grin as you help her cover up and kiss her good-bye.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action sex with technician sex — her submissive vag
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName("npc_technician","first")>> off camera as you stride into the bedroom and take a seat on the bed. You nod in acknowledgement towards chat, then motion for <<=setup.getNpcName("npc_technician","first")>> to step into view.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> walks into frame and bows to you, and then to chat before softly asking "@@.npc_technician;How may this slave serve you today, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"<br>
<br>
You reach down and <<if setup.checkItemTypeWorn("cage")>>unlock your chastity belt with a click to <</if>>expose yourself.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip and stares in eager anticipation as you rise to your feet and guide her to the edge of the bed.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
You unlock her chastity device and her
<<else>>
Her
<</if>>
<<getWordPenis false>> springs up.<br>
<br>
"@@.pc;So hard for your owner...@@" You state, giving her a couple of slow strokes as she gasps in pleasure. "@@.pc;Now serve me,@@" you add, shuffling forward and bending her legs back as you assume Amazon position. "@@.pc;But do not cum without permission.@@"<br>
<br>
"@@.npc_technician;Y-yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...@@" She pants, already forced to concentrate as you lower your weight, pinning her down as she slides into you.<br>
<br>
You look down and grin, feeling very much in charge as you move up and down, pushing her thighs further forward so you can feel her even deeper as she pants and moans.<br>
<br>
You thrust for a few minutes before she gasps and you freeze, giving her a moment's respite as she teeters on the edge. You take advantage of the brief pause to turn around, facing chat as you mount her backwards, folding her body up even more as you start bouncing faster.<br>
<br>
"@@.pc;You cum when I do, slave.@@" You command.<br>
<br>
"@@.npc_technician;Yes <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>! Thank you <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@" She moan-screams as you speed up.<br>
<br>
You cum, focusing carefully to still look in control as you slam all the way down and she cries out in ecstatic kind.<br>
<br>
You glance down to see <<=setup.getNpcName("npc_technician","first")>> balls twitch as they divest themselves of their full payloads as you give them a gentle squeeze.<br>
<br>
You rise up slightly and <<=setup.getNpcName("npc_technician","first")>> collapses out from under you.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_sub" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her submissive anal you
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName("npc_technician","first")>> off camera as you stride into the bedroom and take a seat on the bed. You nod in acknowledgement towards chat, then motion for <<=setup.getNpcName("npc_technician","first")>> to step into view.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> walks into frame and bows to you, and then to chat before softly asking "@@.npc_technician;How may this slave serve you today, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"<br>
<br>
You lead your slave to the bed and lay her down,
<<if $status_flat.bedroom == 1>>
taking advantage of your fetishistic bed to tie her spread eagle
<<elseif setup.hasUpgrade($bed, 'bed_bondage_gear') || setup.hasUpgrade($bed, 'bed_bondage_gear_2')>>
using some of your bed-time restraints to tie her spread eagle
<<else>>
using some rope to tie her spread eagle
<</if>>
in the centre of the bed<<if $npc_technician.relationship.her_caged>> before you unlock her chastity cage<</if>>.<br>
<br>
"@@.pc;Alright, my slave.@@" You state as you straddle her and begin wiggling your butt against her hard <<getWordPenis false>>. "@@.pc;Your<<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> wants to go for a ride. Remember, no cumming without permission.@@"<br>
<br>
"@@.npc_technician;Yes, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" she moans as you <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>remove your plug and <</if>>lower yourself onto her.<br>
<br>
You angle yourself to the screen, performing for the camera as you answer the occasional question from chat, showing yourself off as you talk about how good your slave feels in your ass.<br>
<br>
You can hear <<=ps(setup.getNpcName("npc_technician","first"))>> pants, her hips occasionally rising off the bed as she tries to get a bit more stimulation, but you remain in control, edging her with your ass as you continue to taunt her, drawing the show out until you feel your own climax approaching.<br>
<br>
On the advice of your viewers you spin in place so that you can look down at <<=ps(setup.getNpcName("npc_technician","first"))>> sweaty, desperate face as you finish her off, your hips slamming down repeatedly until you cum... and then you give her permission to do the same. The force of her climax feels like it should have blasted you off, but instead it merely drains her as she shoots everything she has and then wilts, sinking into the bed as her softened <<getWordPenis false>> flops out of your rear.<br>
<br>
You catch your breath and slide off<<if $npc_technician.relationship.her_caged>>, making sure the camera has a nice view of you locking her back up<</if>>.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_sub" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her submissive anal her
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName("npc_technician","first")>> off camera as you stride into the bedroom and take a seat on the bed. You nod in acknowledgement towards chat, then motion for <<=setup.getNpcName("npc_technician","first")>> to step into view.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> walks into frame and bows to you, and then to chat before softly asking "@@.npc_technician;How may this slave serve you today, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"<br>
<br>
<<if $scene.action == 'strapon'>>
You stand over your slave and wait as she busies herself with buckling a strap-on around your hips.
<<else>>
You shed your
<<if setup.checkItemTypeWorn("cage") && setup.canSexOrRemoveChastity("penis", "npc_technician")>>
chastity <<if setup.isCage()>>cage<<else>>belt<</if>>,
<<else>>
clothes,
<</if>>
your <<getWordMyPenis false>> already hard and ready.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> bites her lip in anticipation, distracted and entranced as she spends a bit too much time lubing you up. Frowning with impatience you grab her collar and lead her up onto the bed, making sure that the camera will have a nice view.<br>
<br>
You give her rear an encouraging slap, pulling one foot up on the bed and lining yourself up with her rear. "@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" <<=setup.getNpcName("npc_technician","first")>> softly moans.<br>
<br>
You start thrusting your
<<if $scene.action == 'strapon'>>
artificial <<getWordPenis true>>
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small <<getWordMyPenis false>>
<<case 2 3>>
<<getWordMyPenis false>>
<<case 4 5>>
large <<getWordMyPenis false>>
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon <<elseif $player.body_ref.horsecock>>horse <<elseif $player.body_ref.knot>>dog <</if>>cock
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
into your slave.
<br><br>
She moans,
<<if $scene.action == 'strapon'>>
"@@.npc_technician;You're so big, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@"
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
"@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@"
<<case 2 3>>
"@@.npc_technician;You feel so good, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@"
<<case 4 5>>
"@@.npc_technician;You're so big, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@"
<<case 6>>
<<if $player.body_ref.knot>>
"@@.npc_technician;Knot me, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>!@@"
<<else>>
"@@.npc_technician;You're so big, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@"
<</if>>
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<br><br>
You speed up, following a suggestion from chat to pull back on <<=ps(setup.getNpcName("npc_technician","first"))>> collar so she arches back as you continue to thrust, her entire body on display as you push her over the edge into orgasm<<if $scene.action != 'strapon' && $player.body_ref.cumProduction > 0>>, your own cum leaking out of her rear to drip down and mingle with hers spurting over the sheets<</if>>.<br>
<br>
Still half in sub-space she glances over at the screen to see all of the comments from chat... and tenses up, moaning with arousal as you pull her in for a hug.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_sub" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her submissive strapon
#status: RELEASED 0.8.9.0
#*/
<<initRoom>>
<<include playerMenu>>
<<moveTo "event_camgirl_guest_technician_2_sub_anal_her">>/*#
#desc: camgirl action sex with technician sex — her submissive oral her
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName("npc_technician","first")>> off camera as you stride into the bedroom and take a seat on the bed. You nod in acknowledgement towards chat, then motion for <<=setup.getNpcName("npc_technician","first")>> to step into view.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> walks into frame and bows to you, and then to chat before softly asking "@@.npc_technician;How may this slave serve you today, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"<br>
<br>
You guide <<=setup.getNpcName("npc_technician","first")>> to a seat at the edge of the bed<<if $npc_technician.relationship.her_caged>> and remove her cage<</if>>. You take her in hand possessively, one hand on her <<getWordPenis false>> and the other on her leash. You pull things tight and loop the leash around her base, her <<getWordPenis false>> stiffening even further before you dominantly feast on her divine damsel's dagger.<br>
<br>
You order her to read chat comments aloud as you slurp. "@@.npc_technician;You are so fucking hot, I would love to worship your beautiful cock. Your slave needs to be locked in chastity. You should train your slave to suck on her own cock...@@" Embarrassment and arousal rise with each phrase... spurred on by your constant licking and sucking.<br>
<br>
The tight leather strap around her balls slows her down, but between you forcing her to read comments, and your own aggressive action, it isn't long before even that isn't enough to forestall her orgasm and she uncontrollably explodes all over your face.<br>
<br>
<<if $fetish.cum && State.hasPlayed("event_technician_cum_kiss_2")>>
You recall the idea she mentioned about sharing cummy kisses together...<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_oral_cum" "Make her fantasy come true." 120 "<<set $scene.cum_share=true>>">>]<br>
[<<moveTo "event_camgirl_guest_technician_3_oral_cum" "Just finish up." 120 "<<set $scene.cum_share=false>>">>]
<<else>>
<<=setup.getNpcName("npc_technician","first")>> looks down in embarrassment, trying to come up with an excuse only for you to stand up and pull her closer for her to dutifully lick and kiss you clean while chat watches in jealously.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_sub" "Finish up." 120>>]
<</if>>
</div>/*#
#desc: camgirl action sex with technician sex — her submissive vag
#status: RELEASED 0.8.9.0
#ignore_spell: g
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName("npc_technician","first")>> off camera as you stride into the bedroom and take a seat on the bed. You nod in acknowledgement towards chat, then motion for <<=setup.getNpcName("npc_technician","first")>> to step into view.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> walks into frame and bows to you, and then to chat before softly asking "@@.npc_technician;How may this slave serve you today, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"<br>
<br>
You stand in the middle of the camera's field of view and order <<=setup.getNpcName("npc_technician","first")>> to her knees. The obedient slave that she is she dutifully follows your order... licking her lips in anticipation as you<<if setup.checkItemTypeWorn("cage") && $player.body_ref.penis && setup.canSexOrRemoveChastity("penis") || $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag")>> <<if setup.isCage()>>unlock yourself<<else>>remove your belt<</if>> and<</if>> reveal your <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>><<getWordVagina>><</if>>.<br>
<br>
<<if $player.body_ref.penis>>
Eagerly she
<<switch $player.body.penissize[0]>>
<<case 0 1>>
starts sucking on your small <<getWordMyPenis false>>.
<<case 2 3>>
starts sucking your <<getWordMyPenis false>>.
<<case 4 5>>
manages to deepthroat your large member.
<<case 6>>
she kisses and sucks your massive <<getWordMyPenis false>><<if $player.body_ref.knot && $player.body_ref.horsecock>>, paying particular attention to your flared tip and engorged knot<<elseif $player.body_ref.horsecock>>, paying particular attention to your flared tip<<elseif $player.body_ref.knot>>, paying particular attention to your engorged knot<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
Redirecting her tongue and lips to focus solely on your sensitive clit two of her fingers curl into you, pressuring your g-spot to accentuate the flower of pleasure blossoming between your legs.
<</if>>
"@@.npc_technician;<<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> tastes so good...@@" She moans between licks as you rest a hand possessively on her head and guide her progress, congratulating her on what a good job she's doing in between reading comments from chat.<br>
<br>
You control the pace for as long as you can but the combination of being on camera, how hot she looks on her knees, and her significant skill means that, eventually, you have no choice but to cum; barely holding on to your decorum as you cum,
<<if $player.body_ref.penis>>
<<switch $player.body_ref.cumProduction>>
<<case 0>>
dry orgasming into her mouth.<br>
<br>
She hides her thirsty disappointment, instead merely smiling up and licking you clean of her enthusiastic saliva.
<<case 1>>
filling her mouth with your <<getWordCum>>.<br>
<br>
She tilts her head back to show her full mouth, waiting until you have recovered and give her the nod of approval to swallow it all and grin up at you.
<<case 2>>
over-flowing her mouth with <<getWordCum>>; <<getWordCum>> shooting out of her nose and dribbling down her chin as you unleash the full force of your climax.<br>
<br>
She swallows as much as she can, but still ends up a panting mess, face covered in <<getWordCum>>.
<<default>>
ERROR: unexpected cum production <<=$player.body_ref.cumProduction>>
<</switch>>
<<else>>
grinding her face against your crotch as you try to maintain your balance.
<</if>>
<br><br>
You guide her back to her feet and pull her in for a kiss, tasting yourself on her lips as you hold her collar in one hand, and her ass in the other.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_sub" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her submissive vag
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName("npc_technician","first")>> off camera as you stride into the bedroom and take a seat on the bed. You nod in acknowledgement towards chat, then motion for <<=setup.getNpcName("npc_technician","first")>> to step into view.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> walks into frame and bows to you, and then to chat before softly asking "@@.npc_technician;How may this slave serve you today, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"<br>
<br>
You sit propped up on the bed and guide <<=setup.getNpcName("npc_technician","first")>> to lay back into you. Pulling her close you nibble her neck as your hands go exploring, commanding her to tell chat everything she's done that deserves punishment.<br>
<br>
You start by pinching her nipples and gently slapping her breasts, but soon move further down. <<if $npc_technician.relationship.her_caged>>You remove her cage to have full access to her hard, dripping <<getWordPenis false>> and<<else>>Reaching for her hard, dripping <<getWordPenis false>><</if>> you take it in one hand and her balls in the other, squeezing and digging your fingernails into her sensitive flesh.<br>
<br>
Panting in pain she continues to try to confess, even as every other word is a gasp or a yelp as you slap her balls and jerk her off, the combination of reward and punishment making the latter even more acute... even as you manage to perfectly time it so that she cums as you crush her balls in your hand.<br>
<br>
You release your grasp and she lets out a shuddering breath... before turning in place to gratefully kiss you, whispering a private "@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" too soft for your viewers to hear.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_sub" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex — her submissive
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3 + setup.getTotalValue("dominance")/200>>
<<include "calcCamgirlChanges">>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_FRIEND>>
<<switch $scene.action>>
<<case 'vag'>>
<<playerOrgasm>>
<<case 'anal_you'>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<playerOrgasm>>
<<case 'anal_her'>>
<<playerOrgasm>>
<<case 'oral_her'>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<case 'oral_you'>>
<<playerOrgasm>>
<<case 'punish'>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_FRIEND>>
<</switch>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<div id="invframe" class="scrolltext">
You end the broadcast and curl up next to your slave, wrapping your arms around her and whispering how good a job she did as you guide her back from sub-space to reality.<br>
<br>
"@@.npc_technician;That was fun...@@" <<=setup.getNpcName("npc_technician","first")>> finally says, exhausted satisfaction in her voice.<br>
<br>
You give her a kiss behind the ear and then help her back to her feet to get dressed and depart.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action sex with technician sex neutral anal you
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You've barely told <<=setup.getNpcName("npc_technician","first")>> your plan when she's eagerly taking you by the hand and dragging you into the bedroom.
<<if $npc_technician.relationship.her_caged>>
The only delay is you removing her chastity cage
<<else>>
You don't delay a moment
<</if>>
before she is eagerly pounding your ass.<br>
<br>
You moan in pleasure as your girlfriend rails you hard and deep. You turn your head to see the camera, catching a faint reflection of <<=setup.getNpcName("npc_technician","first")>> in the screen, the sight of your hot as hell girlfriend giving you the business — with chat cheering the both of you on — pushes you over the edge to orgasm, as your anal spasms causes her to cum as well.<br>
<br>
Pulling you close she stirs your insides as she spurts a full load before flopping over to nibble your neck and whisper how much she loves you as she slowly softens and slips out.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_neut" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex neutral anal her
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You've barely told <<=setup.getNpcName("npc_technician","first")>> your plan when she's eagerly taking you by the hand and dragging you into the bedroom. She grins as she helps
<<if $scene.action == 'strapon'>>
you buckle on the strap-on.
<<else>>
<<if setup.checkItemTypeWorn("cage") && setup.canSexOrRemoveChastity("penis", "npc_technician")>>
unlock your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>
<<else>>
remove your clothes
<</if>>
for your <<getWordMyPenis false>> to spring forth, hard and ready.
<</if>>
Flipping up her skirt she hops up on the bed and wiggles her butt in invitation.<br>
<br>
You don't leave your girlfriend, or you half-forgotten viewers, waiting as you lube up and slide your
<<if $scene.action == 'strapon'>>
artificial <<getWordPenis true>>
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
small <<getWordMyPenis false>>
<<case 2 3>>
<<getWordMyPenis false>>
<<case 4 5>>
large <<getWordMyPenis false>>
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon <<elseif $player.body_ref.horsecock>>horse <<elseif $player.body_ref.knot>>dog <</if>>cock
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
into her eager bum.<br>
<br>
"@@.npc_technician;Fuck, you feel so good,@@" she moans, and you respond in kind, every thrust causing increasingly powerful waves of pleasure to move between the two of you, building and building until the only release is <<if $scene.action == 'strapon'>>her massive orgasm<<else>>a massive shared climax<</if>> that concludes with the two of you collapsing into a passionately exhausted embrace.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_neut" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex neutral strapon
#status: RELEASED 0.8.9.0
#*/
<<initRoom>>
<<include playerMenu>>
<<moveTo "event_camgirl_guest_technician_2_neut_anal_her">>/*#
#desc: camgirl action sex with technician sex neutral oral her
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You've barely told <<=setup.getNpcName("npc_technician","first")>> your plan when she's eagerly taking you by the hand and dragging you into the bedroom.
<<if $npc_technician.relationship.her_caged>>
Her cage is removed and she
<<else>>
She
<</if>>
lays back as you crawl between her legs.<br>
<br>
You stare up as she smiles down, eagerly slurping her big, tasty <<getWordPenis false>> <<if ["mouth", "hand"].includes($npc_technician.flags.dataservice_encounter.handjob_finish)>>you can't help but remember that first time, under her desk...<<else>>you reflect back on how long the two of you knew each other at work<</if>> <<getWordGod>>, why did you waste so much time NOT dating this perfect woman?<br>
<br>
Your lips and tongue do their job, and do it well and it is not long before <<=setup.getNpcName("npc_technician","first")>> is adorably spreading her lips as she moans in orgasm<<if $fetish.cum>> — an orgasm you eagerly lick up<</if>>.<br>
<br>
<<if $fetish.cum && State.hasPlayed("event_technician_cum_kiss_2")>>
You recall the idea she mentioned about sharing cummy kisses together...<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_oral_cum" "Make her fantasy come true." 120 "<<set $scene.cum_share=true>>">>]<br>
[<<moveTo "event_camgirl_guest_technician_3_oral_cum" "Just finish up." 120 "<<set $scene.cum_share=false>>">>]
<<else>>
Still grinning you crawl up the bed to snuggle and she eagerly pulls you in for a kiss, arms wrapped passionately around you.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_neut" "Finish up." 120>>]
<</if>>
</div>/*#
#desc: camgirl action sex with technician sex neutral oral you
#status: RELEASED 0.8.9.0
#ignore_spell: g
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You've barely told <<=setup.getNpcName("npc_technician","first")>> your plan when she's eagerly taking you by the hand and dragging you into the bedroom. The two of you kiss and hug your way across the bedroom until you tip onto the bed and <<=setup.getNpcName("npc_technician","formal")>> all but leaps between your legs.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
She eagerly removes your <<=setup.getItemTypeName('cage')>>, making
<<else>>
She makes
<</if>>
sure not to block the camera's view with her head
<<if $player.body_ref.penis>>
as she
<<if $player.body_ref.vagina>>
curls a pair of fingers into your <<getWordVagina>> and
<</if>>
starts sucking your <<getWordMyPenis false>>.<br>
<br>
You moan as
<<switch $player.body.penissize[0]>>
<<case 0 1>>
she runs your small <<getWordMyPenis false>> between her lips.
<<case 2 3>>
she eagerly sucks you off.
<<case 4 5>>
she barely manages to deepthroat your large member.
<<case 6>>
she kisses and sucks your massive <<getWordMyPenis false>><<if $player.body_ref.knot && $player.body_ref.horsecock>>, paying particular attention to your flared tip and engorged knot<<elseif $player.body_ref.horsecock>>, paying particular attention to your flared tip<<elseif $player.body_ref.knot>>, paying particular attention to your engorged knot<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
Redirecting her tongue and lips to focus solely on your sensitive clit two of her fingers curl into you, pressuring your g-spot to accentuate the flower of pleasure blossoming between your legs.
<</if>>
<br><br>
A part of you says to check chat, but you can't tear your eyes of the gorgeous face between your thighs and it isn't long before you're cumming hard —
<<if $player.body_ref.penis>>
<<if $player.body_ref.cumProduction == 0>>twitching in<<else>>spurting down<</if>> her throat<<if $player.body_ref.vagina>>, and gushing down her chin<</if>>.
<<else>>
<<if $player.body_ref.cumProduction == 0>>twitching in her throat<<else>>squirting into her mouth<</if>>.
<</if>>
She swallows eagerly, gulping everything you have and continuing to lick and suck until you are well and truly spent.<br>
<br>
She crawls forward, your taste on her tongue as your lips meet and her arms wrap around you.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_neut" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex neutral vag
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You've barely told <<=setup.getNpcName("npc_technician","first")>> your plan when she's eagerly taking you by the hand and dragging you into the bedroom.
<<if $npc_technician.relationship.her_caged && setup.checkItemTypeWorn("cage")>>
Gleefully you let one another out of chastity,
<<elseif $npc_technician.relationship.her_caged>>
You eagerly remove her cage and then she tugs at your clothes,
<<elseif setup.checkItemTypeWorn("cage")>>
She eagerly unlocks your <<if setup.isCage()>>cage<<else>>belt<</if>> and flips up her skirt,
<<else>>
The two of you eagerly pull at your clothes,
<</if>>
revealing her hard <<getWordPenis false>> and your dripping <<getWordVagina>>.<br>
<br>
She enters you and you moan, her lips roaming your neck as she starts to thrust, noticing the donations roll in appreciation of your passionate lesbian tryst... though you don't see how any amount of credits could feel as good as getting railed by your girlfriend.<br>
<br>
You cum twice before she climaxes, her lady cream leaking out until she leans in to lick you clean with a smile. You return the favour, kissing her <<getWordPenis false>> dry before she pulls you up to her level and you fall onto the bed together for an eager make-out session.<br>
<br>
[<<moveTo "event_camgirl_guest_technician_3_neut" "Finish up." 120>>]
</div>/*#
#desc: camgirl action sex with technician sex neutral finish
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.35>>
<<include "calcCamgirlChanges">>
<<switch $scene.action>>
<<case 'vag'>>
<<playerOrgasm>>
<<case 'anal_you'>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<playerOrgasm>>
<<case 'anal_her'>>
<<playerOrgasm>>
<<case 'oral_her'>>
<<applyExperience 'oral' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<case 'oral_you'>>
<<playerOrgasm>>
<</switch>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
The two of you cuddle for a while before you remember that the broadcast is still live. You thank your fans once again before ending things. <<=setup.getNpcName("npc_technician","first")>> grins up at you from the bed for a few more moments before standing up; the two of you straightening your things before she gives you a kiss and heads home.<br>
<br>
You wait until she's in the elevator before you close the door and head back to check the overall results of your session.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: cum share finish after blow technician
#status: RELEASED 0.9.1.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.4>>
<<include "calcCamgirlChanges">>
<<if $scene.cum_share>>
<<applyExperience 'cum' 12 'very' $SEEN_FRIEND>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $SEEN_FRIEND>>
<<case 'sub'>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_dom_2")>>
<<case 'neutral' ''>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician")>>
<<case 'sub'>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_technician","npc_technician_leash")>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You feel your <<=ps(setup.getNpcName("npc_technician","title"))>> orgasm approach and you pull back, lovingly sucking on her tip as she tenses and cums hard, thick blasts of cum shooting the back of your throat as your hand stays wrapped around her thick, pulsing shaft as you milk every drop out of her.<br>
<br>
Before she can catch her breath you're rising to her feet, first opening your mouth to show her glob covering your tongue before the two of you meet for a passionate kiss, tongues dancing amidst the thick, salty girl-sludge.<br>
<br>
When she finally leans back <<=setup.getNpcName("npc_technician","formal")>> licks her lips and looks at you with a smile. "@@.npc_technician;You remembered... you really are the sweetest cum-dump of a slave, and your <<=setup.getNpcName("npc_technician","title")>> loves you offering.@@"
<<case 'neutral' ''>>
You can sense <<=ps(setup.getNpcName("npc_technician","first"))>> orgasm approach and you ease backwards, lovingly sucking on her tip she tenses and cums hard, thick blasts of cum filling your mouth as your hand stays wrapped around her thick, pulsing shaft to milk every drop out of her.<br>
<br>
Before she can catch her breath you're back on your feet, pulling together for a cummy kiss, your lips parting as you tongue extends in offering, the thick, saliva-infused girl goo passing back to its owner as her eyes light up and she melts into your embrace.<br>
<br>
You and <<=setup.getNpcName("npc_technician","first")>> kiss passionately, swapping the snowball back and forth several times before she finally swallows with a beaming smile. "@@.npc_technician;You remembered! Oh you really are the best... and I taste even better from between your lips...@@"
<<case 'sub'>>
You can sense <<=ps(setup.getNpcName("npc_technician","first"))>> orgasm approach and you ease backwards, lovingly sucking on her tip she tenses and cums hard, thick blasts of cum painting the back of your throat as your hand stays wrapped around her thick, pulsing shaft as you milk every drop out of your slave.<br>
<br>
Before she can catch her breath you're pulling her in for a kiss, lips parting as you tongue infiltrates her mouth, sopping with thick, creamy girl-cum.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> melts submissively into you, lingering in your grasp until you finally separate and allow her to swallow. "@@.npc_technician;Thank you, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... You remembered... you really are the best... and I taste even better from between your lips...@@"
<</switch>>
<br><br>
Seeming to finally remember that you're both on camera, <<=setup.getNpcName("npc_technician","first")>> looks back to the audience, sticking out her tongue for a moment to show off that she swallowed the whole load before winking good-bye as you close out the stream.<br>
<br>
"@@.npc_technician;That was fun...@@" <<=setup.getNpcName("npc_technician","first")>> states with a lingering pleased sigh and you help her pack up her things to head home.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action sex with fit bimbo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "checkFitBimboClub">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
Target hit, you text <<=setup.getNpcName("npc_fit_bimbo","first")>> and vamp for a bit on stream as you wait for her to arrive.<br>
<br>
The doorbell rings and <<=setup.getNpcName("npc_fit_bimbo","first")>> all but rushes past, dragging you back on camera to punch in her info for a "shared stream" and introducing herself to your fans.<br>
<br>
"@@.npc_fit_bimbo;Hey everyone! My name's <<=setup.getNpcName("npc_fit_bimbo","first")>>, <<=$player.flags.camgirl.name>> and I met at the gym,@@" she winks and flexes for emphasis. "@@.npc_fit_bimbo;I'm so excited to meet you all! I brought some equipment from home, so I figured we'd do a little "warm up" makeout and then show all you cool people how we work out!@@"<br>
<br>
She opens her bag to show off that her "equipment" consists of a strap-on harness and a pair of double dildos. Grabbing one of the double dildos she pulls you in for a kiss, rubbing up against you and making out for a bit before interjecting the dildo for you to each take an end and meet in the middle for a "kiss." <br>
<br>
Flexing and sucking for your fans it isn't long before both of you are a bit sweaty and breathing heavy. "@@.npc_fit_bimbo;So,@@" she whispers as she nibbles your ear, "@@.npc_fit_bimbo;You ready to start our workout?@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if !$player.virgin.penis || !$player.virgin.top_fem>>
[@@.link_locked;You don't want your first time fucking to be on stream.@@]<br>
<<elseif !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_fuck" "Fuck her." 1200 "<<set $scene.action='fuck'>>">>]<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_anal" "Fuck her ass." 1200 "<<set $scene.action='anal'>>">>]<br>
<<elseif setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_fuck" "Remove your chastity device and fuck her." 1200 "<<set $scene.action='fuck'>>">>]<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_anal" "Remove your chastity device and fuck her ass." 1200 "<<set $scene.action='anal'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is locked in chastity.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You do not have a penis.@@]<br>
<</if>>
<<if $player.virgin.top_fem>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_strapon_fuck" "Fuck her with a strap-on." 1200 "<<set $scene.action='strapon_fuck'>>">>]<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_strapon_anal" "Strap her ass." 1200 "<<set $scene.action='strapon_anal'>>">>]<br>
<<elseif !$player.body_ref.penis && !($player.virgin.penis || $player.virgin.top_fem)>>
[@@.link_locked;You don't want your first time fucking to be on stream.@@]<br>
<</if>>
<<if $player.virgin.pegged>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_get_anal" "Bend over for her to do your ass." 1200 "<<set $scene.action='get_anal'>>">>]<br>
<<else>>
[@@.link_locked;You don't want your first time getting pegged to be on stream.@@]<br>
<</if>>
<<if $player.virgin.top_fem>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_dildo" "Dildo workout!" 1200 "<<set $scene.action='dildo'>>">>]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
<<if $player.virgin.top_fem>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_double_dildo" "Double double dildo super set!" 1200 "<<set $scene.action='double_dildo'>>">>]<br>
<</if>>
<<if $player.virgin.vaginal>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_get_fucked" "Bend over for her to fuck you." 1200 "<<set $scene.action='get_fucked'>>">>]<br>
<</if>>
<<elseif setup.canSexOrRemoveChastity("vag")>>
<<if $player.virgin.top_fem>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_double_dildo" "Unlock chastity for a double double dildo super set!" 1200 "<<set $scene.action='double_dildo'>>">>]<br>
<</if>>
<<if $player.virgin.vaginal>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_get_fucked" "Unlock chastity and bend over for her to fuck you." 1200 "<<set $scene.action='get_fucked'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_camgirl_guest_fit_bimbo_2_scissor" "Scissor time." 1200 "<<set $scene.action='scissor'>>">>]
<</if>>
</div>/*#
#desc: camgirl action sex with fit bimbo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You switch the camera to the bedroom as <<=setup.getNpcName("npc_fit_bimbo","first")>> and you move to the bed to dive in to your "workout." <br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
She helps you out of your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>
<<else>>
She grins at the sight of your <<getWordMyPenis>>
<</if>>
and then straddles you on the bed.
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
<<if $fetish.sph>>
"@@.npc_fit_bimbo;When using smaller equipment the secret is to focus on form and really work to failure.@@"
<<else>>
"@@.npc_fit_bimbo;So today we're going to focus on those glute muscles and really work to failure.@@"
<</if>>
She explains as she bounces up and down.
<<case 4 5 6>>
<<if $player.body.penissize[0] >= 6>>
She takes a moment to stare in awe at your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon <<elseif $player.body_ref.horsecock>>horse <<elseif $player.body_ref.knot>>dog <</if>>cock before she takes a deep breath and squats down.<br>
<br>
<</if>>
"@@.npc_fit_bimbo;Remember to go slow when you're attempting a more challenging exercise,@@" she explains as she slowly lowers onto your large <<getWordMyPenis false>> "@@.npc_fit_bimbo;Fatigue could be an issue here so really focus on form and making the most of every rep.@@" She moans as she slowly works up and down. "@@.npc_fit_bimbo;In particular you want to make sure you're going all the way down, getting into and out of the hole is the most important part of the squat, and if you aren't hitting depth, you aren't getting the most out of your workout...@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Her pace starts to increase, and you feel a dual orgasm approaching...<br>
<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_3" "Finish the set!" 180>>]
</div>/*#
#desc: camgirl action sex with fit bimbo finish
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.4>>
<<include "calcCamgirlChanges">>
<<set $scene.her_cum = false>>
<<set $scene.you_cum = false>>
<<switch $scene.action>>
<<case 'fuck'>>
<<playerOrgasm>>
<<set $scene.her_cum = true>>
<<set $scene.you_cum = true>>
<<case 'strapon_fuck'>>
<<set $scene.her_cum = true>>
<<case 'anal'>>
<<playerOrgasm>>
<<set $scene.her_cum = true>>
<<set $scene.you_cum = true>>
<<case 'strapon_anal'>>
<<playerOrgasm>>
<<set $scene.her_cum = true>>
<<case 'get_fucked'>>
<<playerOrgasm>>
<<set $scene.you_cum = true>>
<<case 'get_anal'>>
<<applyExperience 'anal' 10 'terrible' $EXPOSED>>
<<set $scene.you_cum = true>>
<<case 'scissor'>>
<<if $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag")>>
<<playerOrgasm>>
<<set $scene.you_cum = true>>
<</if>>
<<set $scene.her_cum = true>>
<<case 'dildo'>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<<playerOrgasm>>
<<set $scene.her_cum = true>>
<<set $scene.you_cum = true>>
<<case 'double_dildo'>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<<playerOrgasm>>
<<set $scene.her_cum = true>>
<<set $scene.you_cum = true>>
<</switch>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
Your fans shout out encouragement, chat chanting "one more rep!" until your workout cums to a crescendo with
<<if $scene.her_cum && $scene.you_cum>>
the both of you
<<elseif $scene.her_cum>>
her
<<elseif $scene.you_cum>>
you
<<else>>
ERROR: should not happen!
<</if>>
cumming hard and the both of you falling to the bed for some massage and "active recovery" makeout.<br>
<br>
"@@.npc_fit_bimbo;That was fun!@@" She says with a grin before turning to chat and bringing the broadcast to a close "@@.npc_fit_bimbo;Remember to like, comment, and subscribe to both of our channels if you want us to share even more workout routines and tips!@@"<br>
<br>
You thank her for coming by and she grins, packing up her stuff and blowing you a kiss as she leaves the flat, and you turn back to check how your fans enjoyed the broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action sex with fit bimbo anal
#status: RELEASED 0.8.9.0
#*/
<<initRoom>>
<<include playerMenu>>
<<moveTo "event_camgirl_guest_fit_bimbo_2_fuck">>/*#
#desc: camgirl action sex with fit bimbo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You switch the camera to the bedroom as <<=setup.getNpcName("npc_fit_bimbo","first")>> and you move to the bed to dive in to your "workout." <br>
<br>
With mock seriousness she helps you cinch up your "workout harness" before lying back for you to start drilling away with the large strap-on.<br>
<br>
"@@.npc_fit_bimbo;Push it harder!@@" She moans in between doing a mock narration talking about how "@@.npc_fit_bimbo;Partner hip thrusts are the key to building powerful glutes!@@"<br>
<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_3" "Finish the set!" 180>>]
</div>/*#
#desc: camgirl action sex with fit bimbo strapon anal
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You switch the camera to the bedroom as <<=setup.getNpcName("npc_fit_bimbo","first")>> and you move to the bed to dive in to your "workout." <br>
<br>
With mock seriousness she helps you cinch up your "workout harness" before bending over and presenting her tight ass for your large strap-on.<br>
<br>
"@@.npc_fit_bimbo;Remember to always lubricate your equipment for a smooth workout!@@" She explains before guiding the slippery dildo into her ass. "@@.npc_fit_bimbo;Mmm, I can really feel it working deep in my glutes!@@"<br>
<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_3" "Finish the set!" 180>>]
</div>/*#
#desc: camgirl action sex with fit bimbo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.vag_strap>>
<<set $player.sec_style.sex.vag_strap = "voluntary">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You switch the camera to the bedroom as <<=setup.getNpcName("npc_fit_bimbo","first")>> and you move to the bed to dive in to your "workout." <br>
<br>
<<if setup.checkItemTypeWorn("cage")>>With your chastity belt temporarily removed, she<<else>>She<</if>> helps you onto your back as she "equips" herself with the strap-on harness. "@@.npc_fit_bimbo;Today's workout is really focused on the glutes@@" she explains as she thrusts into you... "@@.npc_fit_bimbo;But you're also going to see carry over to other muscle groups like thighs and abs, but only if you really take it seriously and GO. HARD.@@"<br>
<br>
Her temporary cock is big and thick... and she doesn't hesitate to "super set" by <<if $player.body_ref.penis>>jerking you off<<else>>going to town on your clit<</if>> so that you end up with a real intense, screaming workout.<br>
<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_3" "Finish the set!" 180>>]
</div>/*#
#desc: camgirl action sex with fit bimbo get anal
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You switch the camera to the bedroom as <<=setup.getNpcName("npc_fit_bimbo","first")>> and you move to the bed to dive in to your "workout." <br>
<br>
<<=setup.getNpcName("npc_fit_bimbo","first")>> tightly cinches a heavy-duty strap-on around her hips and then it's time for the "workout" to begin.<br>
<br>
"@@.npc_fit_bimbo;Today we're going to focus on an important two-person variation on downward dog,@@" she explains... before bending you over and slamming her large silicone cock into your ass.<br>
<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_3" "Finish the set!" 180>>]
</div>/*#
#desc: camgirl action sex with fit bimbo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You switch the camera to the bedroom as <<=setup.getNpcName("npc_fit_bimbo","first")>> and you move to the bed to dive in to your "workout." <br>
<br>
<<if $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag")>>
You unlock your chastity belt and join her on the bed.
<</if>>
With the two of you in a "neutral, stretching" position she takes charge and you both start scissoring hard.<br>
<br>
"@@.npc_fit_bimbo;As you can see this is a great position to really work that core!@@" She explains. "@@.npc_fit_bimbo;Really take your time, this is one of those exercises you can't really over-train,@@" she adds as
<<if $player.body_ref.vagina && (setup.checkItemTypeWorn("cage") && !setup.isCage() || setup.canSexOrRemoveChastity("vag"))>>
the two of you slide against each other in pleasure.
<<else>>
she grinds against your smooth chastity belt, her wet <<getWordVagina>> less than a centimetre away
<<if $player.body_ref.vagina>>
from your own your own accentuating your imprisoned torment.
<<else>>
serving to torment your <<getWordMyPenis>> even worse.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_camgirl_guest_fit_bimbo_3" "Finish the set!" 180>>]
</div>/*#
#desc: camgirl action sex with fit bimbo dildo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You switch the camera to the bedroom as <<=setup.getNpcName("npc_fit_bimbo","first")>> and you move to the bed to dive in to your "workout." <br>
<br>
Grabbing the longer of the two double dildos <<=setup.getNpcName("npc_fit_bimbo","first")>> crawls onto your bed. With the dildo lubed and lined up between you it slowly disappears into your rears until the two of you are moaning butt to butt.<br>
<br>
"@@.npc_fit_bimbo;What we're going for here is a real deep stretch,@@" she moans in "explanation," for chat. "@@.npc_fit_bimbo;Work with your partner to really get those trouble spots — this type of training has all sorts of carry-over throughout your life!@@"<br>
<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_3" "Finish the set!" 180>>]
</div>/*#
#desc: camgirl action sex with fit bimbo double dildo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.vag_strap>>
<<set $player.sec_style.sex.vag_strap = "voluntary">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
You switch the camera to the bedroom as <<=setup.getNpcName("npc_fit_bimbo","first")>> and you move to the bed to dive in to your "workout." <br>
<br>
With a double-ended dildo in each hand she grins, <<if setup.checkItemTypeWorn("cage") && !setup.isCage() && setup.canSexOrRemoveChastity("vag")>>helping you out of your chastity belt before<</if>> first lining up the thicker of the two in your cunts, before sliding either end of the longer, thinner dildo into each of your rears.<br>
<br>
The double-barrel fullness gets even better as she lets go and the two of you start bounding back and forth, the slick schlongs sliding deeper until you are grinding butt to butt and double-fucking each other.<br>
<br>
"@@.npc_fit_bimbo;The secret to a good workout partner is to find someone that you really, oh yes, fit together with, so you can help push each other to even higher success...@@"<br>
<br>
[<<moveTo "event_camgirl_guest_fit_bimbo_3" "Finish the set!" 180>>]
</div>/*#
#desc: camgirl action sex with barista
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Target hit you text <<=setup.getNpcName("npc_barista","nickname")>> and kill time on stream as you wait for her to arrive.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> practically barges into your house and you soon find yourself with her in your bedroom as she vamps for chat. "@@.npc_barista;Heya, guys! My name is <<=setup.getNpcName("npc_barista","nickname")>> and <<=$player.flags.streaming.name>> is, like, one of my bestest friends!@@" She reaches over, dragging you into frame and making out with you.<br>
<br>
"@@.npc_barista;You taste good...<<if setup.checkItemTypeWorn("cage")>> I know you're like, locked in chastity and stuff...<</if>>@@" Her voice drops low enough that only you can hear it "@@.npc_barista;And I'm not, like allowed to do you<<if setup.checkItemTypeWorn("cage")>>, anyway<</if>>...@@" She gets louder enough for chat to hear as she finishes "@@.npc_barista;But I'm, like, super-duper horny so maybe you can, like, help out?@@"<br>
<br>
As she finishes she drags you onto the bed, spreading her legs to reveal the twin plug barely held in place by a straining, sopping thong.<br>
<br>
She looks up at you as she touches herself. "@@.npc_barista;Like, come on! I'm so horny!@@"<br>
<br>
[<<moveTo "event_camgirl_guest_barista_2" "Help her out." 1200>>]<br>
[<<moveTo "event_camgirl_guest_barista_2_abort" "You changed your mind about doing this." 300>>]<br>
</div>/*#
#desc: camgirl action sex with barista
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.4 + setup.getTotalValue("bimbofication")/200>>
<<include "calcCamgirlChanges">>
<<addItem "panties_barista">>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You agree to "help" you friend out and you're soon between her legs as she moans in delight.<br>
<br>
You aren't sure if she's putting on a show for the camera or she's really this enthusiastic, but as you lick her clit and finger her plugs she's writhing on the bed, gushing around her plug as her rear occupant twitches with each ecstatic muscular spasm.<br>
<br>
After a certain point you're just along for the ride as <<=setup.getNpcName("npc_barista","nickname")>> gives your viewers a porn-quality performance before the both of you collapse into your drenched bed, exhausted.<br>
<br>
"@@.npc_barista;Mmm, that was fun! Thanks for letting me cum over!@@" She giggles at her pun as she pops up as if with a sudden second wind.<br>
<br>
Looking at her sopping underwear she shrugs and tosses them to the side, re-seating her two plugs before heading off commando.<br>
<br>
You lie in the bed for a bit longer to catch your breath, then rise to change your sheets and check the end result of your by now long timed-out broadcast.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action sex with barista abort
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = -.1>>
<<include "calcCamgirlChanges">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You change your mind and tell <<=setup.getNpcName("npc_technician","nickname")>> that you actually don't have time today. She does an exaggerated pout as she stands up from the bed.<br>
<br>
"@@.npc_barista;Boo! I'm going to, like, go find someone to fuck me,@@" she dashes off, leaving a wet spot behind on your bed.<br>
<br>
You sigh and end the broadcast, noticing that you promise-breaking reversal has cost you a chunk of fans.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action sex with landlord choice
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
Target hit you call <<=setup.getNpcName("npc_landlord","first")>> to come over.<br>
<br>
Out of view of the camera you explain the situation... <<he npc_landlord>> seems a bit uncertain about the whole idea. "@@.npc_landlord;You so young and pretty, but me... nobody want to see me on the camera, but if you sure... what do you want me to do?@@"<br>
<br>
[<<moveTo "event_camgirl_guest_landlord_2" "You just want to have sex on camera." 1200 "<<set $scene.roleplay=false>>">>]<br>
[<<moveTo "event_camgirl_guest_landlord_2_rp" 'You want to act out a harsh<<if $npc_landlord.fem>> "landlady<<else>> "landlord<</if>> demands rent" scene.' 1200 "<<set $scene.roleplay=true>>">>]
</div>/*#
#desc: camgirl action sex with landlord
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.1>>
<<include "calcCamgirlChanges">>
<<playerOrgasm>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_landlord","npc_landlord_naked")>>
<div id="invframe" class="scrolltext">
With your best bedroom eyes you lead <<=setup.getNpcName("npc_landlord","first")>> to your bed, kissing <<him npc_landlord>> and doing a strip-tease for both <<him npc_landlord>> and the camera as you shed your clothes and help <<him npc_landlord>> out of your own.<br>
<br>
The only word <<he npc_landlord>> manages to get out is "@@.npc_landlord;<<callPlayer "npc_landlord">>...@@" The camera, your fans... all of it falling away as the two of you make passionate love on your bed.<br>
<br>
A true <<if $npc_landlord.fem>>lady<<else>>gentleman<</if>> <<=setup.getNpcName("npc_landlord","first")>> doesn't stop with your first orgasm, but continues until you are FULLY satisfied. You look up at <<him npc_landlord>> with a beatific smile before pulling <<him npc_landlord>> close and feeling <<him npc_landlord>> finally climax <<him npc_landlord>>self.<br>
<br>
Wrapped in <<his npc_landlord>> arms you can feel the cold metal of <<his npc_landlord>> artificial limb holding you close, like <<he npc_landlord>> was both clinging to you and shielding you from harm, all at the same time.<br>
<br>
You catch a glimpse of movement from the screen, but the moment feels too personal and you are suddenly a little embarrassed for doing this in the view of the world. You end the broadcast and cuddle your <<man npc_landlord>>, joyful minutes stretching out as the two of you catch your breath... only to be interrupted by <<his npc_landlord>> phone ringing.<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>, someone toilet backed up. I must return to work but you... thank you for this. The way you make love, so lovely, so kind... you are truly as beautiful inside as you are out.@@"<br>
<br>
You blush, helping <<him npc_landlord>> dress and giving <<him npc_landlord>> a kiss goodbye as you wish <<him npc_landlord>> "luck" in whatever plumbing emergency <<he npc_landlord>> has to wrangle.<br>
<br>
"@@.npc_landlord;Si, si, <<callPlayer "npc_landlord">>@@" <<he npc_landlord>> replies with a parting wave as <<he npc_landlord>> grabs <<his npc_landlord>> toolbox and heads for the elevator.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action rp sex with landlord
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 1.3>>
<<include "calcCamgirlChanges">>
<<applyExperience 'anal' $npc_landlord.penis_size 'very' $EXPOSED>>
<<applyExperience 'oral' $npc_landlord.penis_size 'very' $EXPOSED>>
<<applyExperience 'submission' 12 'very' $EXPOSED>>
<<applyExperience 'bimbofication' 12 'very' $EXPOSED>>
<<applyExperience 'humiliation' 12 'very' $EXPOSED>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You explain the plan and <<=setup.getNpcName("npc_landlord","first")>> nods. "@@.npc_landlord;Si, <<callPlayer "npc_landlord">>. Understand I never do anything like that to you normally, but we both playing a part, yes? So, for sake of your channel, I help.@@"<br>
<br>
You nod, and return to your computer as <<=setup.getNpcName("npc_landlord","first")>> momentarily leaves the flat only to ring the bell and shout out "@@.npc_landlord;RENT! I know you're in there. There's no more dodging, now pay up!@@"<br>
<br>
You double check that the camera is angled for a good view as you hurry to the door and start begging your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> to show leniency.<br>
<br>
"@@.npc_landlord;Leniency? I should kick you out right now! Now either give me my money or get down on your knees and put those lips to a more useful purpose!@@"<br>
<br>
Your heart submissively skips a beat — you never realised that <<=setup.getNpcName("npc_landlord","first")>> was such a good actor...<br>
<br>
"@@.npc_landlord;I said kneel, puta!@@" <<He npc_landlord>> snaps when you fail to move, grabbing you by the hair and pushing you to your knees with <<his npc_landlord>> strong cybernetic arm as <<he npc_landlord>> unzips <<his npc_landlord>> pants and <<his npc_landlord>> cock slips halfway out. "@@.npc_landlord;Come on, whore — either get sucking or I'm tossing you on the street right now like the gutter-tramp you are.@@"<br>
<br>
"@@.pc;Yes, yes,@@" you hurriedly reply, struggling slightly to keep the submissive lust out of your voice as you try to follow the script of a desperate tenant.<br>
<br>
<<=ps(setup.getNpcName("npc_landlord","first"))>> tastes as good as ever, and you make sure to do as good a job as you can as you look up and suck.<br>
<br>
"@@.npc_landlord;You could suck chrome off a bumper, you should be paying me for this you cock-addicted puta!@@"<br>
<br>
You moan submissively as <<he npc_landlord>> cums all over your face. "@@.pc;Please... does this mean I'm paid up?@@"<br>
<br>
"@@.npc_landlord;Paid up? Hardly! I think you forgot that you owed back-rent.@@"<br>
<br>
You have to exert self control to keep up the "illusion" of being dragged into the bedroom as you quickly switch the broadcast and <<he npc_landlord>> tosses you onto the bed.<br>
<br>
You gasp as
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<he npc_landlord>> pulls the plug out of your ass and tosses it aside. "@@.npc_landlord;You can walk around with your ass stuffed and gaping, but you can't pay your rent? Pathetic puta.@@"<br>
<br>
You groan in pleasure as
<</if>>
<<his npc_landlord>> somehow still-hard cock slides into your ass and <<he npc_landlord>> starts making a series of quick deposits and withdrawals to cover your "back rent." <br>
<br>
You may be fucking for the camera, but <<=setup.getNpcName("npc_landlord","first")>> gives it to you with all of <<his npc_landlord>> considerable skill, not finishing until you are a wet, cum-soaked mess.<br>
<br>
"@@.npc_landlord;There,@@" <<he npc_landlord>> states with a final slap on your ass, "@@.npc_landlord;And I'll be back tomorrow for more — your ass is going on a payment plan until you shape up.@@"<br>
<br>
You moan some sort of response as <<he npc_landlord>> ends the broadcast. As soon as the camera's are off <<he npc_landlord>>'s at your side, <<his npc_landlord>> voice kind as <<he npc_landlord>> checks on you with concern. "@@.npc_landlord;You okay, <<callPlayer "npc_landlord">>? I try to do what you ask but... well, even in pretend I no like insult or hurt you.@@"<br>
<br>
You roll over and smile up, biting your lip at the memory as you explain that <<he npc_landlord>> was far, far from hurting you. You can tell <<he npc_landlord>>'s still a bit off so you pull <<him npc_landlord>> into the bed, cuddling and hugging your <<man npc_landlord>> as you whisper how wonderful <<he npc_landlord>> is and eventually get <<him npc_landlord>> to relax again.<br>
<br>
<<His npc_landlord>> phone rings and <<he npc_landlord>> sighs. "@@.npc_landlord;Sorry, <<callPlayer "npc_landlord">>, you know I almost always on call...@@"<br>
<br>
It turns out someone in the building is having issues with a leaky faucet and <<he npc_landlord>> needs to go take care of it.<br>
<br>
You blush, helping <<him npc_landlord>> dress and giving <<him npc_landlord>> a kiss goodbye as you wish <<him npc_landlord>> "luck" in whatever plumbing emergency <<he npc_landlord>> has to wrangle.<br>
<br>
"@@.npc_landlord;Si, si, <<callPlayer "npc_landlord">>@@" <<he npc_landlord>> replies with a parting wave as <<he npc_landlord>> grabs <<his npc_landlord>> toolbox and heads for the elevator.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action dp choose dildo
#status: RELEASED 0.8.9.0
#ignore_spell: dp
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Reward tier hit you consider your collection of dildos and decide which to double penetrate yourself with for your fans...<br>
<br>
<<if setup.checkItemOwned('basic_dildo')>>
[<<moveTo "event_camgirl_extreme_dp_2" "DP yourself with a pair of basic dildos." 600 "<<set $scene.dildo='basic_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('large_dildo')>>
<<if setup.getItemObj('large_dildo').size <= setup.getTotalValue("oral") && setup.getItemObj('large_dildo').size <= setup.getTotalValue("anal")>>
[<<moveTo "event_camgirl_extreme_dp_2" "DP yourself with a pair of large dildos." 600 "<<set $scene.dildo='large_dildo'>>">>]<br>
<<else>>
[@@.link_locked;The <<=setup.getItemName('large_dildo')>> is too large for you to DP yourself with.@@]
<</if>>
<</if>>
<<if setup.checkItemOwned('dog_dildo')>>
<<if setup.getItemObj('dog_dildo').size <= setup.getTotalValue("oral") && setup.getItemObj('dog_dildo').size <= setup.getTotalValue("anal")>>
[<<moveTo "event_camgirl_extreme_dp_2" "DP yourself with a pair of knotted dildos." 600 "<<set $scene.dildo='dog_dildo'>>">>]<br>
<<else>>
[@@.link_locked;The <<=setup.getItemName('dog_dildo')>> is too large for you to DP yourself with.@@]
<</if>>
<</if>>
<<if setup.checkItemOwned('horse_dildo')>>
<<if setup.getItemObj('horse_dildo').size <= setup.getTotalValue("oral") && setup.getItemObj('horse_dildo').size <= setup.getTotalValue("anal")>>
[<<moveTo "event_camgirl_extreme_dp_2" "DP yourself with a pair of giant horse-cock dildos." 600 "<<set $scene.dildo='horse_dildo'>>">>]<br>
<<else>>
[@@.link_locked;The <<=setup.getItemName('horse_dildo')>> is too large for you to DP yourself with.@@]
<</if>>
<</if>>
<<if setup.checkItemOwned('dragon_dildo')>>
<<if setup.getItemObj('dragon_dildo').size <= setup.getTotalValue("oral") && setup.getItemObj('dragon_dildo').size <= setup.getTotalValue("anal")>>
[<<moveTo "event_camgirl_extreme_dp_2" "DP yourself with a pair of giant dragon dildos." 600 "<<set $scene.dildo='dragon_dildo'>>">>]<br>
<<else>>
[@@.link_locked;The <<=setup.getItemName('dragon_dildo')>> is too large for you to DP yourself with.@@]
<</if>>
<</if>>
</div>/*#
#desc: camgirl action dp
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<set $scene.camgirl.baseMod = 1 + _dildoSize/40 + setup.getTotalValue("oral")/100 + setup.getTotalValue("anal")/100>>
<<include "calcCamgirlChanges">>
<<applyExperience 'oral' _dildoSize 'terrible' $EXPOSED>>
<<applyExperience 'anal' _dildoSize 'terrible' $EXPOSED>>
<<set $player.timebased.horny = 0>>
<<set $player.timebased.milking.milk_storage += $player.timebased.milking.milk_supply>>
<<set $player.timebased.milking.milk_supply = 0>>
<<applyFatigue 70>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You grab a pair of
<<switch $scene.dildo>>
<<case 'basic_dildo'>>
simple dildos and go to town, down on all fours with one in your ass and the other between your lips you simulate getting double fucked for your fans, following along with their suggestions to pound and suck and fuck until you orgasm in a pool of sweat and debauchery.
<<case 'large_dildo'>>
large dildos and go to town, forcing one up your ass and the other down your throat in accordance with your promise to chat.<br>
<br>
A drooling mess you moan and suck and fuck until you manage to cum, slumping to the ground in debauched exhaustion.
<<case 'dog_dildo'>>
canine dildos and double knot yourself — your lips spread and your ass gaping as you hilt both animalistic cocks, imagining that you're serving your "pack" two at a time while chat watches on and cheers.<br>
<br>
On all fours like a bitch you finally cum, your entire body shuddering in debauched excess as you almost faint.
<<case 'horse_dildo'>>
giant horse cocks, sitting balls deep on one before tilting your head back and letting the other slide down your throat.<br>
<br>
Bouncing up and down you grope yourself while you pound your own throat, the debauched display garnering much approval from your fans... even moreso when you manage to cum from the excess, almost choking on the cock in your throat as you slip off the chair and fall to the ground.
<<case 'dragon_dildo'>>
mammoth dragon cocks, sitting balls deep and knotted on one before tilting your head back and letting the other slide down your throat.<br>
<br>
Bouncing up and down you grope yourself while you pound your own throat, your belly and throat both straining as the debauched display garners much approval from your fans... even moreso when you manage to cum from the excess, almost choking on the cock in your throat as you slip off the chair and fall to the ground.
<<default>>
ERROR: unexpected scene.dildo <<=$scene.dildo>>
<</switch>>
<br><br>
You gasp and thank your fans for the "suggestions" before wiping your face and dragging yourself back up to end the broadcast and check where you stand.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action airtight choose dildo
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Reward tier hit you consider your collection of dildos and decide what to make yourself airtight with...<br>
<br>
<<if setup.checkItemOwned('basic_dildo')>>
[<<moveTo "event_camgirl_extreme_airtight_2" "Make yourself airtight with a trio of basic dildos." 600 "<<set $scene.dildo='basic_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('large_dildo')>>
[<<moveTo "event_camgirl_extreme_airtight_2" "Make yourself airtight with a trio of large dildos." 600 "<<set $scene.dildo='large_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('dog_dildo')>>
[<<moveTo "event_camgirl_extreme_airtight_2" "Make yourself airtight with a trio of knotted dildos." 600 "<<set $scene.dildo='dog_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('horse_dildo')>>
[<<moveTo "event_camgirl_extreme_airtight_2" "Make yourself airtight with a trio of giant horse-cock dildos." 600 "<<set $scene.dildo='horse_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemOwned('dragon_dildo')>>
[<<moveTo "event_camgirl_extreme_airtight_2" "Make yourself airtight with a trio of giant dragon dildos." 600 "<<set $scene.dildo='dragon_dildo'>>">>]<br>
<</if>>
</div>/*#
#desc: camgirl action airtight
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<set $scene.camgirl.baseMod = 1 + _dildoSize/30 + setup.getTotalValue("oral")/100 + setup.getTotalValue("anal")/100>>
<<include "calcCamgirlChanges">>
<<applyExperience 'oral' _dildoSize 'terrible' $EXPOSED>>
<<applyExperience 'anal' _dildoSize 'terrible' $EXPOSED>>
<<set $player.timebased.horny = 0>>
<<set $player.timebased.milking.milk_storage += $player.timebased.milking.milk_supply>>
<<set $player.timebased.milking.milk_supply = 0>>
<<applyFatigue 70>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You grab a trio of identical
<<switch $scene.dildo>>
<<case 'basic_dildo'>>
simple dildos and go to town. One by one you fill your ass, <<getWordVagina>>, and finally your throat, rocking your hips and bouncing the dildo back and forth past your lips as you simulate a full on air-tight gangbang.
<<case 'large_dildo'>>
large dildos and go to town. Balancing carefully, you slide one into your ass and then the other into your <<getWordVagina>>, gently lowering your weight back onto the chair to make both massive cocks disappear before bringing their third twin to your lips; licking it eagerly and making sweet oral love to it as your fans cheer on your stuffed-full airtight state.
<<case 'dog_dildo'>>
canine dildos. The first knot gapes your ass and makes you gasp, but the second dildo in your <<getWordVagina>> is what really makes you eyes-like-saucers "full." Riding a high as chat congratulates you on being a "double-fucked bitch" you deep-throat the final cock, every one of your holes knotted as you moan, drool... and frantically fuck yourself.
<<case 'horse_dildo'>>
giant horse cocks. Seeing a pair of them rising up from your chair like twin obelisks of bestial <<if $options.fem>>excellence<<else>>masculinity<</if>> would be too much for most girls, but you aren't most girls. With a lust-crazed look in your eyes, you line the dual flared cocks up with your holes and squat down, working your way lower and lower until you're balls deep on both before bringing their twin to your lips.<br>
<br>
Trembling slightly, you lick your lips and slide the final cock into the hole where it belongs, chat exploding with donations as you become fully air-tight... and then start fucking yourself.
<<case 'dragon_dildo'>>
giant dragon cocks. Seeing two of them rising up from your chair like twin obelisks of fantastical <<if $options.fem>>excellence<<else>>masculinity<</if>> would be too much for most girls, but you aren't most girls. With a lust-crazed look in your eyes you line the dual flared cocks up with your holes and squat down until you're stuffed and double knotted, balls deep on both before bringing their twin to your lips.<br>
<br>
Trembling slightly, you lick your lips and slide the final cock into the hole where it belongs, your cheeks swelling around the knot as your throat bulges and chat exploding with donations as you become fully air-tight... and then start fucking yourself.
<<default>>
ERROR: unexpected scene.dildo <<=$scene.dildo>>
<</switch>>
<br><br>
The faster you go the more chat gets excited and you are soon rocking and fucking, drool leaking down your front as your <<getWordVagina>> gushes with arousal, your eventual all-body orgasm so strong you all but faint.<br>
<br>
You gasp and thank your fans for the "suggestions" before wiping your face and dragging yourself back up to end the broadcast and check where you stand.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action machine sex
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'unbelievable' $EXPOSED>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'unbelievable' $EXPOSED>>
<</if>>
<<set $player.timebased.horny = 0>>
<<set $player.timebased.milking.milk_storage += $player.timebased.milking.milk_supply>>
<<set $player.timebased.milking.milk_supply = 0>>
<<applyFatigue 100>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<<set $scene.camgirl.baseMod = 1.5 + setup.getTotalValue("bimbofication")/100>>
<<include "calcCamgirlChanges">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
<<createAnimatedBGR "./video/blackbox_02.mp4">>
<<else>>
<<createAnimatedBGR "./video/blackbox_01.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
You drag out your Dreammaker and let it unfurl. Chat gushes in excitement... especially once you are strapped in and the control of the machine is turned over to your viewers.<br>
<br>
Bound and fucked, <<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>from both ends, <</if>>you gasp and drool and moan and cry as each tip from your viewers puts more "time" on the clock that is your machine-powered ravishing.<br>
<br>
Your ass is pounded without mercy, <<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>drool and tears running down your cheeks as the forward dildo thrusts in and out of your throat,<<else>>and you continually moan and beg for mercy from your fans,<</if>> your eyes losing focus as you succumb to the feeling of being fucked and controlled. Your consciousness flickers several times before the ordeal comes to an end and the <<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>dildos retract<<else>>dildo retracts<</if>>. Gasping and painting, leaking lube, tears, sweat, and spittle you remain lying atop the device even after the restraints click open, only rousing yourself into motion when an alert appears indicating that it is about to start another cycle.<br>
<br>
Back on your feet you lean against your desk as, with bleary eyes, you end the broadcast and check your totals.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action milking machine
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.horny = 80>>
<<set $player.timebased.milking.milk_storage += $player.timebased.milking.milk_supply>>
<<set $player.timebased.milking.milk_supply = 0>>
<<if $player.body_ref.penis && setup.canSexOrRemoveChastity("penis")>>
<<set $player.timebased.milking.cream_storage += $player.timebased.milking.cream_supply>>
<<set $player.timebased.milking.cream_supply = 0>>
<</if>>
<<set $scene.camgirl.baseMod = 1 + $player.body_ref.milkProduction/20 + $player.body.breastsize[0]/100 + $player.body_ref.cumProduction/20 + $player.body.penissize[0]/100>>
<<include "calcCamgirlChanges">>
<<applyFatigue 50>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You gather up your milking equipment and strap yourself in <<if $player.body_ref.penis && setup.canSexOrRemoveChastity("penis")>>above and below<</if>> before turning on the machines... and turning over control to chat.<br>
<br>
You gasp as the machines suck and pump, your efforts to keep up something resembling a "conversation" with chat stymied by the constant high-powered suction milking away at you.<br>
<br>
The more you leak the faster your tips grow and you are soon begging for more, for chat to treat you like a "@@.pc;Big-titted sow@@" and for them to train you to be a submissive hu-cow slut.<br>
<br>
Eventually even your powerful milkers fail to draw anything else from your body and you fall back, exhausted. You wince as you detach yourself from the machine, thanking your fans for their "help" and ending the broadcast before you transfer your production into storage and check how you did for tips.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action dog sex
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_dog' 2>>
<<applyStress -5>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<<set $scene.camgirl.baseMod = 1.5 + setup.getTotalValue("bestiality")/200 + setup.getTotalValue("bimbofication")/200>>
<<include "calcCamgirlChanges">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
True to your word you summon <<=setup.getNpcName("npc_dog","first")>>, submissively offering yourself to him — licking him just enough to make sure he's hard and wet before you bend over like the bitch you are for him to mount you with a single thrust.<br>
<br>
The tips flow in as your fans watch your so-called "pet" knot your ass and hump frantically — his hot canine cum soon filling your ass and leaking down your leg as you whisper a generalised "@@.pc;Thanks...@@" And bring the debased broadcast to an end.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action plant sex
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 12 'normal' $EXPOSED>>
<</if>>
<<applyExperience 'oral' 15 'very' $EXPOSED>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<applyExperience 'anal' 12 'normal' $EXPOSED>>
<<set $npc_chuck.timebased.fed += $player.timebased.milking.milk_supply>>
<<set $player.timebased.milking.milk_supply = 0>>
<<set $npc_chuck.timebased.fed += $player.timebased.milking.cream_supply>>
<<set $player.timebased.milking.cream_supply = 0>>
<<playerOrgasm>>
<<set $npc_chuck.timebased.water += 10>>
<<applyFatigue -20>>
<<applyStress -5>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<<set $scene.camgirl.baseMod = 1.5 + setup.getTotalValue("bestiality")/200 + setup.getTotalValue("bimbofication")/200>>
<<include "calcCamgirlChanges">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png" setup.getChuckImage()>>
<div id="invframe" class="scrolltext">
You move the camera to give a good view of <<=setup.getNpcName('npc_chuck', 'suffix')>>, giving your fans a quick tour of <<his npc_chuck>> "capabilities" before you shed your clothing and surrender yourself to <<his npc_chuck>> leafy embrace.<br>
<br>
Vines are soon entwined around your limbs, holding you up spreading you, displaying you for the camera... and then gripping you tight as <<=ps(setup.getNpcName('npc_chuck', 'suffix'))>> thicker tendrils fill you from every direction.<br>
<br>
Your eyes roll back in pleasure at the heavenly taste of <<his npc_chuck>> nectar as <<he npc_chuck>> fucks and fondles you in full view of your fans. You would swear <<he npc_chuck>> somehow understood what was going on chat the way <<he npc_chuck>> makes sure to give a full view of <<his npc_chuck>> slick tentacle appendages sliding in and out of you, once or twice even seeming like <<he npc_chuck>> was responding to chat as <<he npc_chuck>> turns you around for a better view or responds to a suggestion that you can "take more than that" by sliding another slick tentacle into one of your holes.<br>
<br>
You cum, of course, and <<=setup.getNpcName('npc_chuck', 'suffix')>> drinks you dry; probing tendrils slurping up every drop of sweat and other fluid you spill as <<he npc_chuck>> ravages you right to the edge of fainting before lightly placing you on your feet and curling up into a green, happy-looking "dormant" state.<br>
<br>
You wobble back to your computer to end the broadcast... your fun with <<=setup.getNpcName('npc_chuck', 'suffix')>> leaving you with a dopey smile, feeling slightly refreshed as you check your numbers.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl action gloryhole field trip
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _morning = setup.setNextDate($now, 1, 1, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_morning)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<addCredits `setup.getTotalValue("penis") + setup.getTotalValue("oral") + setup.getTotalValue("bimbofication")`>>
<<applyExperience 'penis' 15 'terrible' $EXPOSED>>
<<applyExperience 'oral' 13 'terrible' $EXPOSED>>
<<applyExperience 'whoring' 5 'terrible' $EXPOSED>>
<<applyExperience 'cum' 10 'terrible' $EXPOSED>>
<<applyExperience 'bimbofication' 15 'terrible' $EXPOSED>>
<<alterStatAllWorn 'cumsoaked' '["add",100]'>>
<<if $player.flags.camgirl.level < $scene.camgirl.eventLvl>>
<<set $player.flags.camgirl.level = $scene.camgirl.eventLvl>>
<</if>>
<<set $scene.camgirl.baseMod = 1.5 + setup.getTotalValue("whoring")/200 + setup.getTotalValue("bimbofication")/200>>
<<include "calcCamgirlChanges">>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/gloryhole_1.mp4">>
<div id="invframe" class="scrolltext">
You pack up your things and head for the Usual Place, setting up your phone camera to broadcast as you kneel down in the familiar gloryhole stall and go "live." <br>
<br>
It doesn't take long before your first customer appears and you split your attention between worshipfully sucking cock and watching chat, showing off all of your oral skills and let chat control whether you take a load to the face or gulp it down.<br>
<br>
Cock after cock makes for a "full" night as the gloryhole income combines with tips for your "live show." Unfortunately for your fans, and your slutty urges, you eventually come up on closing time. Lovingly "finishing off" your final <<getWordPenis>> you whisper a soft "@@.pc;Thank you.@@"<br>
<br>
With credits in your pocket<<if $fetish.cum>> a belly full of cum,<</if>> and your face plastered with the same, you trudge home the proud cock-whore to check how the night's broadcast turned out.<br>
<br>
<<include "camgirlSummary">>
</div>/*#
#desc: camgirl post congratulated on cum face
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Your audience continues to gush over your performance, and, after a particularly lewd suggestion things quickly start ramping up rapidly as a suggestion that you'd look "@@.generic_male1;great with a facial,@@" ramps up as people start posting favourite ruined looks from your "field trip" to the gloryhole... and fantasise about how your face was meant to blasted and soaked in a full-on bukkake.<br>
<br>
[<<moveTo "event_camgirl_extreme_cumbath_intro_2" "Hell yeah, the more cum the better!" 120 "<<set $scene.accept=true>>">>]<br>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You are too much of a cum-slut to even consider denying it.@@]
<<else>>
[<<moveTo "event_camgirl_extreme_cumbath_intro_2" "There's such a thing as too much cum." 120 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: gush about cum
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'cum' 10 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You don't just agree with chat, you go even further, gushing enthusiastically about your love of cum, how much you love to feel it splash all over you, or to gulp it down, be that fresh from the source, licking it up, or chugging it by the pint.<br>
<br>
You rapturously talk about how you wish all your viewers were there in the room with you to paint you with their "appreciation" inside and out until you were a sopping, leaking, drooling, dripping mess. The talks of showering only sends things further afield, and soon you are enthusiastically agreeing that you would LOVE to bathe in cum, to feel it all around you, soaking into your skin, there for whenever you want to slurp up a delicious mouthful, cum, cum, delicious, delectable, delightful cum.<br>
<br>
Sending chat off on that high-note you thank you followers again before closing things up for the day, promising that you'll be back for "more" soon.<br>
<br>
[<<moveTo "event_camgirl_extreme_cumbath_intro_3" "Step away from your computer." 600>>]
<<else>>
You try to pull chat back, politely thanking them for the interest but steering away from the extreme direction things are headed.<br>
<br>
Your putting a damper on things has the stream winding down and, after thanking you fans, you log off.<br>
<br>
<<include "camgirlSummary">>
<</if>>
</div>/*#
#desc: fit_bimbo offers cum bath opportunity
#status: RELEASED 0.8.9.0
#ignore_spell: c,u,m,gawdess
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You close up the stream only to get a phone call.<br>
<br>
"@@.npc_fit_bimbo;Heya, girlfriend! This is <<=setup.getNpcName("npc_fit_bimbo","first")>>, aka fit-bimbo_6969. One of our mutual fans just sent me the highlight from your most recent stream and OH. MY GAWDESS. That talk of bathing in cum... I so want to help you make that happen. Now, I don't have a source of that sort of quantity... I mean, I did the math, and you'd need at least 100 litres... but if you can take care of that end, I've got a bathtub at my place that I've used for other shoots and I would GLADLY be your videographer for a crossover stream.@@"<br>
<br>
You thank her for the offer and promise you'll let her know if you come into possession of sufficient quantities for such a scheme.<br>
<br>
"@@.npc_fit_bimbo;Awesome! We sluts gotta stick together and help each other out, in the gym, at the club, and on stream, go C.U.M.!@@"<br>
<br>
You join in with her cheer and she ends the call.<br>
<br>
[<<moveTo "room_livingroom" "Put your phone away and stand up." 60 "<<set $currentcall=false>>">>]
</div>/*#
#desc: off to cumbath
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.milking.cream_storage -= setup.mLtoCum(100000)>>
<</if>>
<<set $player.location to "Inside an Automated Taxi Cab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png">>
<div id="invframe" class="scrolltext">
Target hit, you make transport arrangements, and are soon streaming "on the go" as you zip across town just you... and two fifty litre barrels of cum...<br>
<br>
[<<moveTo "event_camgirl_extreme_cumbath_2" "Continue." 300>>]
</div>/*#
#desc: setup cum-bath
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_fit_bimbo","first"))>> Bathroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bathroom.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_fit_bimbo","first")>> greets you with excitement. Between camgirling and her "private lessons" she's obviously at the top of the fit-bimbo influencer game, as you each carry a barrel of cum up to her penthouse apartment, and straight to the opulent bathroom she has setup ready and waiting for the shoot.<br>
<br>
After some quick logistics of merging audiences for a "cum-girl crossover" <<=setup.getNpcName("npc_fit_bimbo","first")>> has you strip and lay back in the tub.<br>
<br>
"@@.npc_fit_bimbo;Alright cumsluts and pervs, get those donate buttons ready because I'm about to unleash a deluge of dick dribbling on <<=$player.flags.camgirl.name>> in THREE. TWO. ONE...!@@"<br>
<br>
[<<moveTo "event_camgirl_extreme_cumbath_3" "Lean back and let it flow..." 1800>>]
</div>/*#
#desc: cum-bath
#status: RELEASED 0.8.9.0
#ignore_spell: semeny
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<applyExperience 'cum' 20 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_fit_bimbo","first"))>> Bathroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bathroom.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
A literal torrent of cum washes over you as <<=setup.getNpcName("npc_fit_bimbo","first")>> tips out the first barrel... the force of so much <<getWordCum>> battering... and battering you into the tub, liter upon liter flowing down over your body to steadily fill the tub. The second barrel is somehow even more depraved, and you spin around to take it face first, mouth open wide as you swallow as much as you can as even more salty, semeny goodness washes over you and fills the tub.<br>
<br>
<<=setup.getNpcName("npc_fit_bimbo","first")>> takes the camera hand-held to pan back and forth over your depraved frolicking as she looks on with thirsty lust. With a grin you playfully splash her, the only invitation she needs to join in on the "fun," dunking your face under the cum in revenge... only for you to pop back up and spit a stream of thick <<getWordCum>> back at her.<br>
<br>
Having more fun than if it was a water park, the two of you are soon splashing and spraying, sharing the thickest, wettest cum-kisses imaginable, taking full advantage of every depraved thought you, or chat, has, as you guzzle and scrub, snowball, soak and slurp, continuing on until even your monumental cum-sluttery is close to sated and the both of you are feeling bloated and dehydrated from the salt.<br>
<br>
[<<moveTo "event_camgirl_extreme_cumbath_4" "Finish off the stream with a sexy shower." 1800>>]
</div>/*#
#desc: cum-bath aftermath
#status: RELEASED 0.8.9.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.baseMod = 10>>
<<include "calcCamgirlChanges">>
<<set $scene.camgirl.credits += 1000>>
<<addCredits 1000>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_fit_bimbo","first"))>> Bathroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bathroom.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
Reluctantly rising free of the bath-tub full of cum, you and <<=setup.getNpcName("npc_fit_bimbo","first")>> shiver slightly as you skip over to her large shower where you let the hot water wash you clean... if one could ever be considered clean after such an experience?<br>
<br>
You take a final moment to gawk at your massive gains: <<=$scene.camgirl.followers>> follower<<if $scene.camgirl.followers > 1>>s<</if>> and <<=$scene.camgirl.credits>> credits!<br>
<br>
<<=setup.getNpcName("npc_fit_bimbo","first")>> thanks you again for the fun as you get dressed and head home... though you have a feeling that she hasn't yet finished "enjoying" her bath-tub full of cum...<br>
<br>
[<<moveTo "room_foyer" "Back to your flat." 600 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: camgirl root selections
#status: RELEASED 0.8.9.0
#ignore_spell: dp,'cast,100l,8pm
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl = {}>>
<<if !$player.flags.camgirl.default_style>>
<<if setup.getTotalValue("submission") >= setup.getTotalValue("dominance") && setup.getTotalValue("submission") > 15>>
<<set $scene.camgirl.style = "submissive">>
<<elseif setup.getTotalValue("dominance") > 10>>
<<set $scene.camgirl.style = "dominant">>
<<elseif setup.getTotalValue("bimbofication") > 15>>
<<if setup.getTotalValue("smart") < 5>>
<<set $scene.camgirl.style = "bimbo">>
<<else>>
<<set $scene.camgirl.style = "slutty">>
<</if>>
<<else>>
<<set $scene.camgirl.style = "flirty">>
<</if>>
<<else>>
<<set $scene.camgirl.style = $player.flags.camgirl.default_style>>
<</if>>
<<set $scene.camgirl.event = "1_dance">>
<<if $player.flags.camgirl.level == 3>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('bedroom_upgrades')>>
<</if>>
<</if>>
<<include "calcStreamerVisual">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You get ready to start a broadcast, turning on the camera in private mode to check yourself out and make sure everything is setup properly before you go live to your <<=setup.numberInWords($player.flags.camgirl.followers)>> followers.<br>
<br>
<<include "streamerVisual">>
<<if !setup.checkOutsideDecency() && (setup.getTotalValue("bimbofication") + setup.getTotalValue("humiliation")) < 20>>
<<if $player.flags.camgirl.level < 2>>
<<if setup.checkItemTypeWorn("panties") && setup.checkItemVisible(setup.getItemFromType("panties")) && (!setup.checkItemTypeWorn("bra") || setup.checkItemVisible(setup.getItemFromType("bra")))>>
<<set _canStream = true>>
<<printThought "Hmm, I guess I could try streaming in just my underwear...">>
<<else>>
<<set _canStream = false>>
<<printThought "Hmm, I don't think I'm ready to begin a broadcast when I wouldn't go out in public like this...">><<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
<<set _canStream = true>>
<<printThought "Yeah, I think my fans would enjoy seeing me in this.">>
<</if>>
<<else>>
<<set _canStream = true>>
<<if $player.flags.camgirl.level < 2>>
<<printThought "Maybe a bit reserved, but I'm okay being seen on camera like this.">>
<<else>>
<<printThought "I'm okay being seen on camera like this.">>
<</if>>
<</if>>
<br><br>
<<if _canStream>>
<<set $player.cutscene.lockinventory = true>>
You consider how you want to act on stream, and what the day's "goal" should be...<br>
<br>
Camgirl style:<br>
<label>Flirty: <<radiobutton "$scene.camgirl.style" "flirty" autocheck>></label><br>
<<if setup.getTotalValue("submission") > 10>>
<label>Submissive: <<radiobutton "$scene.camgirl.style" "submissive" autocheck>></label><br>
<<else>>
<label>[@@.link_locked;You don't feel skilled enough to act submissive on stream.@@]</label><br>
<</if>>
<<if setup.getTotalValue("dominance") > 10>>
<label>Dominant: <<radiobutton "$scene.camgirl.style" "dominant" autocheck>></label><br>
<<else>>
<label>[@@.link_locked;You don't feel skilled enough to act dominant on stream.@@]</label><br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 10>>
<label>Slutty:
<<radiobutton "$scene.camgirl.style" "slutty" autocheck>></label><br>
<<if setup.getTotalValue("bimbofication") > 15>>
<label>Brainless and, like, Bimbofied: <<radiobutton "$scene.camgirl.style" "bimbo" autocheck>></label><br>
<<else>>
<label>[@@.link_locked;Slutty is one thing, but you aren't ready to go "full bimbo" on stream.@@]</label><br>
<</if>>
<<else>>
<label>[@@.link_locked;You aren't ready to slut it up on stream.@@]</label><br>
<</if>>
<br>
Day goal: <<hint $options "More extreme goals may draw more reaction, but once your fans get a taste they'll be less interested in the basics.">><br>
Basic:<br>
<label>Dance to a Music Video: <<radiobutton "$scene.camgirl.event" "1_dance" autocheck>></label><br>
<label>Fashion Show: <<radiobutton "$scene.camgirl.event" "1_fashion" autocheck>></label><br>
<label>Phone Sex Roleplay: <<radiobutton "$scene.camgirl.event" "1_phone" autocheck>></label><br>
<<if setup.hasThreshold('dexterity', 'other', 'yoga')>>
<label>Do Yoga on Stream: <<radiobutton "$scene.camgirl.event" "1_yoga" autocheck>></label><br>
<<else>>
<label>[@@.link_locked;You don't know enough yoga to do it on stream.@@]</label><br>
<</if>>
<label>Remove your Top: <<radiobutton "$scene.camgirl.event" "1_flash" autocheck>></label><br>
<<if setup.checkItemOwned("wonder_bread")>>
<label>Eat A Loaf of <<=setup.getItemName("wonder_bread")>> on camera: <<radiobutton "$scene.camgirl.event" "1_bread" autocheck>></label><br>
<<elseif State.hasPlayed("room_use_wonder_bread") || State.hasPlayed("event_camgirl_flirty_bread_1")>>
<label>[@@.link_locked;You do not have a loaf of <<=setup.getItemName("wonder_bread")>> to eat on camera.@@]</label><br>
<</if>>
Slutty:<br>
<<if setup.checkNaked()>>
<label>[@@.link_locked;You can't do a striptease when you're already naked.@@]</label><br>
<<elseif !setup.checkPlayerDecency()>>
<label>[@@.link_locked;You can't do a striptease when you're barely wearing anything.@@]</label><br>
<<else>>
<label>Do a Striptease: <<radiobutton "$scene.camgirl.event" "2_strip" autocheck>></label><br>
<</if>>
<label>Do a Fetish Fashion Show: <<radiobutton "$scene.camgirl.event" "2_fashion" autocheck>></label><br>
<label>Suck a Dildo: <<radiobutton "$scene.camgirl.event" "2_suck" autocheck>></label><br>
<<if $player.body_ref.milkProduction >= 1>>
<label>Milk Yourself: <<radiobutton "$scene.camgirl.event" "2_milk" autocheck>></label><br>
<<else>>
<label>[@@.link_locked;You can't milk yourself when you don't produce milk.@@]</label><br>
<</if>>
<label>Let's Play a Sex Game: <<radiobutton "$scene.camgirl.event" "2_game" autocheck>></label><br>
<<if State.hasPlayed("event_fit_bimbo_invite")>>
<label>Have <<=setup.getNpcName('npc_fit_bimbo', 'first')>> over for a Makeout session: <<radiobutton "$scene.camgirl.event" "2_makeout" autocheck>></label><br>
<</if>>
Hardcore:<br>
<label>Fuck Your Ass with a Dildo: <<radiobutton "$scene.camgirl.event" "3_ass" autocheck>></label><br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<label>[@@.link_locked;You are locked in chastity and cannot jerk off.@@]</label><br>
<<else>>
<label>Jerk off on camera: <<radiobutton "$scene.camgirl.event" "3_masturbate" autocheck>></label><br>
<</if>>
<<if setup.checkItemOwned('wand_vibrator')>>
<label>Wand your <<getWordMyPenis>>: <<radiobutton "$scene.camgirl.event" "3_wand" autocheck>></label><br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<label>[@@.link_locked;Your <<getWordVagina>> is locked in chastity.@@]</label><br>
<<else>>
<label>Fuck Yourself with a Dildo: <<radiobutton "$scene.camgirl.event" "3_cunt" autocheck>></label><br>
<</if>>
<<if setup.checkItemOwned('wand_vibrator')>>
<label>Wand your <<getWordVagina>>: <<radiobutton "$scene.camgirl.event" "3_wand" autocheck>></label><br>
<</if>>
<</if>>
<label>Act out an Explicit Dance Video: <<radiobutton "$scene.camgirl.event" "3_video" autocheck>></label><br>
<<if $player.flags.camgirl.level >= 3>>
<<if setup.hasUpgrade($bed, 'camera') && setup.hasUpgrade($bed, 'flatscreen_tv')>>
Guests:<br>
<<if ['friendswbenefits','boyfriend'].includes($npc_admin.flags.relationship)>>
<<if State.hasPlayed("event_boss_admin_8")>>
<label>[@@.link_locked;Thanks to your betrayal, <<=setup.getNpcName("npc_admin","first")>> is gone and cannot be invited over.@@]</label><br>
<<elseif $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<label>[@@.link_locked;It would not be safe to invite <<=setup.getNpcName("npc_admin","first")>> over in <<his npc_admin>> current state.@@]</label><br>
<<else>>
<label>Invite <<=setup.getNpcName("npc_admin","first")>> over to have Sex on Camera: <<radiobutton "$scene.camgirl.event" "4_admin" autocheck>></label><br>
<</if>>
<</if>>
<<if $npc_technician.relationship.relationship_stage >= 2>>
<<if State.hasPlayed("event_destroy_technician_6")>>
<label>[@@.link_locked;Thanks to your betrayal, <<=setup.getNpcName("npc_technician","first")>> is gone and cannot be invited over.@@]</label><br>
<<elseif $npc_technician.flags.evil == 1>>
<label>[@@.link_locked;It would not be safe to invite <<=setup.getNpcName("npc_technician","first")>> over in her current state.@@]</label><br>
<<else>>
<label>Invite <<=setup.getNpcName("npc_technician","first")>> over to have Sex on Camera: <<radiobutton "$scene.camgirl.event" "4_technician" autocheck>></label><br>
<</if>>
<</if>>
<<if State.hasPlayed("event_fit_bimbo_invite")>>
<label>Invite <<=setup.getNpcName("npc_fit_bimbo","first")>> over to have Sex on Camera: <<radiobutton "$scene.camgirl.event" "4_fit_bimbo" autocheck>></label><br>
<</if>>
<<if $npc_barista.flags.rescue.overload ||$npc_barista.flags.sex.peg_you || $npc_barista.flags.sex.cunnilingus || $npc_barista.flags.sex.peg_her>>
<<if State.hasPlayed("event_boss_destroy_psychiatrist_7")>>
<label>[@@.link_locked;Thanks to your betrayal, <<=setup.getNpcName("npc_barista","nickname")>> is gone and cannot be invited over.@@]</label><br>
<<else>>
<label>Invite <<=setup.getNpcName("npc_barista","nickname")>> over to have Sex on Camera: <<radiobutton "$scene.camgirl.event" "4_barista" autocheck>></label><br>
<</if>>
<</if>>
<<if $npc_landlord.stage >= 4>>
<<if State.hasPlayed("event_destroy_landlord_5")>>
<label>[@@.link_locked;Thanks to your betrayal, <<=setup.getNpcName("npc_landlord","first")>> is gone and cannot be invited over.@@]</label><br>
<<elseif $npc_manager.stage == 5 && !State.hasPlayed("event_maidcafe_landlord_intro_2")>>
<label>[@@.link_locked;<<=setup.getNpcName("npc_landlord","first")>> seems to have disappeared.@@]</label><br>
<<elseif $npc_landlord.flags.date_1.anal>>
<label>Invite <<=setup.getNpcName("npc_landlord","first")>> over to have Sex on Camera: <<radiobutton "$scene.camgirl.event" "4_landlord" autocheck>></label><br>
<</if>>
<</if>>
<<else>>
<label>[@@.link_locked;Maybe if your bedroom had a camera and a screen you could invite a guest and stream from there?@@]</label><br>
<</if>>
<</if>>
<<if $player.flags.camgirl.level >= 4>>
<<include "calcOwnedDildos">>
Extreme:<br>
<<if $scene.dildosOwned > 1>>
<label>Grab a Pair of Dildos for some DP: <<radiobutton "$scene.camgirl.event" "5_dp" autocheck>></label><br>
<<else>>
<label>[@@.link_locked;You only own one dildo.@@]</label><br>
<</if>>
<<if $scene.dildosOwned > 2 && $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
<label>Get Airtight with Three Dildos: <<radiobutton "$scene.camgirl.event" "5_airtight" autocheck>></label><br>
<<else>>
<label>[@@.link_locked;Your <<getWordVagina>> is locked in chastity, you can't get airtight.@@]</label><br>
<</if>>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.times_used > 1>>
<label>Broadcast going for a ride on the Dreammaker: <<radiobutton "$scene.camgirl.event" "5_machine" autocheck>></label><br>
<</if>>
<<if $player.body_ref.penis && $fetish.penis_milking>>
<<if $player.body_ref.cumProduction > 0 && setup.hasUpgrade($bed, 'penis_milker')>>
<<if setup.checkItemTypeWorn("cage")>>
<label>[@@.link_locked;You are locked in chastity and un-milkable.@@]</label><br>
<<else>>
<label>Machine-Milk Yourself: <<radiobutton "$scene.camgirl.event" "5_milk" autocheck>></label><br>
<</if>>
<<else>>
<label>[@@.link_locked;You do not own a penis milker.@@]</label><br>
<</if>>
<</if>>
<<if $npc_dog.stage >= 2>>
<label>Get Fucked by <<=setup.getNpcName('npc_dog', 'first')>> On Camera: <<radiobutton "$scene.camgirl.event" "5_dog" autocheck>></label><br>
<</if>>
<<if $npc_chuck.stage >= 4>>
<label>Get Fucked by <<=setup.getNpcName('npc_chuck', 'suffix')>> On Camera: <<radiobutton "$scene.camgirl.event" "5_plant" autocheck>></label><br>
<</if>>
<<if setup.getTotalValue("whoring") >= 3>>
<<if $now.getUTCDay() == 1>>
<label>[@@.link_locked;You can't 'cast from the gloryhole when the Usual Place is Closed.@@]</label><br>
<<elseif $now.getUTCHours() < 20 || $now.getUTCHours() >= 23>>
<label>[@@.link_locked;It's the wrong time of day to 'cast from the gloryhole at the Usual Place, maybe between <<if $options.militaryTime>>20:00<<else>>8pm<</if>> and midnight.@@]</label><br>
<<else>>
<label>Do a field trip and broadcast from the Usual Place Gloryhole: <<radiobutton "$scene.camgirl.event" "5_gloryhole" autocheck>></label><br>
<</if>>
<</if>>
<<if State.hasPlayed("event_camgirl_extreme_cumbath_intro_3")>>
<<if setup.mLtoCum(100000) > $player.timebased.milking.cream_storage>>
<label>[@@.link_locked;You do not have the 100L of cum it would take to bathe in it.@@]</label><br>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<label>[@@.link_locked;You check in with <<=setup.getNpcName("npc_fit_bimbo","first")>>, but she is not currently available for a cum-binded cum-bath scene.@@]</label><br>
<<else>>
<label>Bathe In Cum (Will Use up 100L): <<radiobutton "$scene.camgirl.event" "5_cumbath" autocheck>></label><br>
<</if>>
<</if>>
<</if>>
<br>
[<<moveTo "event_camgirl_root_2" "Start broadcasting." 120>>]<br>
<<else>>
<<printThought "I need to change before I go live...">><br>
<br>
<</if>>
[<<moveTo "room_livingroom" "Nevermind, do something else." 60>>]
</div>/*#
#desc: camgirl root start broadcast
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.camgirl.default_style = $scene.camgirl.style>>
<<switch $scene.camgirl.style>>
<<case 'flirty'>>
<<set $scene.camgirl.mod = 5>>
<<case 'submissive'>>
<<set $scene.camgirl.mod = setup.getTotalValue("submission")>>
<<case 'dominant'>>
<<set $scene.camgirl.mod = setup.getTotalValue("dominance")>>
<<case 'slutty'>>
<<set $scene.camgirl.mod = setup.getTotalValue("bimbofication")>>
<<case 'bimbo'>>
<<if setup.getTotalValue("smart") > 15 || setup.getTotalValue("smart") < 5>>
<<set $scene.camgirl.mod = setup.getTotalValue("bimbofication")+5>>
<<else>>
<<set $scene.camgirl.mod = setup.getTotalValue("bimbofication")-setup.getTotalValue("smart")>>
<</if>>
<</switch>>
<<switch $scene.camgirl.event>>
<<case '1_fashion'>>
<<set $scene.camgirl.eventLvl = 1>>
<<set $scene.camgirl.targetName = "put on a fashion show">>
<<case '1_phone'>>
<<set $scene.camgirl.eventLvl = 1>>
<<set $scene.camgirl.targetName = "do some phone sex role-play with your viewers">>
<<case '1_dance'>>
<<set $scene.camgirl.eventLvl = 1>>
<<set $scene.camgirl.targetName = "dance to a music video">>
<<case '1_yoga'>>
<<set $scene.camgirl.eventLvl = 1>>
<<set $scene.camgirl.targetName = "do some yoga on camera">>
<<case '1_flash'>>
<<set $scene.camgirl.eventLvl = 1>>
<<set $scene.camgirl.targetName = "take off your top">>
<<case '1_bread'>>
<<set $scene.camgirl.eventLvl = 1>>
<<set $scene.camgirl.targetName = "eat bread on camera">>
<<case '2_strip'>>
<<set $scene.camgirl.eventLvl = 2>>
<<set $scene.camgirl.targetName = "do a strip-tease">>
<<case '2_fashion'>>
<<set $scene.camgirl.eventLvl = 2>>
<<set $scene.camgirl.targetName = "do a fetish fashion show">>
<<case '2_suck'>>
<<set $scene.camgirl.eventLvl = 2>>
<<set $scene.camgirl.targetName = "suck one of your dildos">>
<<case '2_milk'>>
<<set $scene.camgirl.eventLvl = 2>>
<<set $scene.camgirl.targetName = "milk yourself">>
<<case '2_game'>>
<<set $scene.camgirl.eventLvl = 2>>
<<set $scene.camgirl.targetName = "do a porn game let's play">>
<<case '2_makeout'>>
<<set $scene.camgirl.eventLvl = 2>>
<<set $scene.camgirl.targetName = "have <<=setup.getNpcName('npc_fit_bimbo', 'first')>> over to make out">>
<<case '3_ass'>>
<<set $scene.camgirl.eventLvl = 3>>
<<set $scene.camgirl.targetName = "butt-fuck yourself with a dildo">>
<<case '3_cunt'>>
<<set $scene.camgirl.eventLvl = 3>>
<<set $scene.camgirl.targetName = "masturbate with a dildo">>
<<case '3_masturbate'>>
<<set $scene.camgirl.eventLvl = 3>>
<<set $scene.camgirl.targetName = "masturbate by hand">>
<<case '3_wand'>>
<<set $scene.camgirl.eventLvl = 3>>
<<set $scene.camgirl.targetName = "use a wand to masturbate">>
<<case '3_video'>>
<<set $scene.camgirl.eventLvl = 3>>
<<set $scene.camgirl.targetName = "explicitly dance to a music video">>
<<case '4_admin'>>
<<set $scene.camgirl.eventLvl = 4>>
<<set $scene.camgirl.targetName = 'invite <<=setup.getNpcName("npc_admin","first")>> over for sex'>>
<<case '4_technician'>>
<<set $scene.camgirl.eventLvl = 4>>
<<set $scene.camgirl.targetName = 'invite <<=setup.getNpcName("npc_technician","first")>> over for sex'>>
<<case '4_fit_bimbo'>>
<<set $scene.camgirl.eventLvl = 4>>
<<set $scene.camgirl.targetName = 'invite <<=setup.getNpcName("npc_fit_bimbo","first")>> over for sex'>>
<<case '4_barista'>>
<<set $scene.camgirl.eventLvl = 4>>
<<set $scene.camgirl.targetName = 'invite <<=setup.getNpcName("npc_barista","nickname")>> over for sex'>>
<<case '4_landlord'>>
<<set $scene.camgirl.eventLvl = 4>>
<<set $scene.camgirl.targetName = 'invite <<=setup.getNpcName("npc_landlord","first")>> over for sex'>>
<<case '5_dp'>>
<<set $scene.camgirl.eventLvl = 5>>
<<set $scene.camgirl.targetName = "DP yourself with dildos">>
<<case '5_airtight'>>
<<set $scene.camgirl.eventLvl = 5>>
<<set $scene.camgirl.targetName = "gang-bang yourself with dildos">>
<<case '5_machine'>>
<<set $scene.camgirl.eventLvl = 5>>
<<set $scene.camgirl.targetName = "take a ride on your Dreammaker fucking machine">>
<<case '5_milk'>>
<<set $scene.camgirl.eventLvl = 5>>
<<set $scene.camgirl.targetName = "milk yourself">>
<<case '5_dog'>>
<<set $scene.camgirl.eventLvl = 5>>
<<set $scene.camgirl.targetName = "get fucked by your dog">>
<<case '5_plant'>>
<<set $scene.camgirl.eventLvl = 5>>
<<set $scene.camgirl.targetName = "fuck <<=setup.getNpcName('npc_chuck', 'suffix')>>">>
<<case '5_gloryhole'>>
<<set $scene.camgirl.eventLvl = 5>>
<<set $scene.camgirl.targetName = "stream from the gloryhole">>
<<case '5_cumbath'>>
<<set $scene.camgirl.eventLvl = 5>>
<<set $scene.camgirl.targetName = "bathe in cum">>
<</switch>>
<<if $scene.camgirl.eventLvl < $player.flags.camgirl.level>>
<<if random(0,6) > ($player.flags.camgirl.level - $scene.camgirl.eventLvl)>>
<<if random(1, 50 * ($player.flags.camgirl.level - $scene.camgirl.eventLvl)) < $player.flags.camgirl.followers>>
<<set $scene.camgirl.target = 3>>
<<else>>
<<set $scene.camgirl.target = 2>>
<</if>>
<<else>>
<<if random(1, 50 * ($player.flags.camgirl.level - $scene.camgirl.eventLvl)) < $player.flags.camgirl.followers>>
<<set $scene.camgirl.target = 1>>
<<else>>
<<set $scene.camgirl.target = 0>>
<</if>>
<</if>>
<<elseif $scene.camgirl.eventLvl == $player.flags.camgirl.level>>
<<if random(0,5) < $player.flags.camgirl.level>>
<<if random(1, 100*$scene.camgirl.eventLvl) < $player.flags.camgirl.followers * $player.flags.camgirl.level>>
<<set $scene.camgirl.target = 3>>
<<else>>
<<set $scene.camgirl.target = 2>>
<</if>>
<<else>>
<<if random(1, 100*$scene.camgirl.eventLvl) < $player.flags.camgirl.followers * $player.flags.camgirl.level>>
<<set $scene.camgirl.target = 1>>
<<else>>
<<set $scene.camgirl.target = 0>>
<</if>>
<</if>>
<<else>>
<<if random(0,2) < ($scene.camgirl.eventLvl - $player.flags.camgirl.level)>>
<<if random(1, 50*$player.flags.camgirl.level) < $player.flags.camgirl.followers * $scene.camgirl.eventLvl>>
<<set $scene.camgirl.target = 3>>
<<else>>
<<set $scene.camgirl.target = 2>>
<</if>>
<<else>>
<<if random(1, 50*$player.flags.camgirl.level) < $player.flags.camgirl.followers * $scene.camgirl.eventLvl>>
<<set $scene.camgirl.target = 1>>
<<else>>
<<set $scene.camgirl.target = 0>>
<</if>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.camgirl.style>>
<<case 'flirty'>>
You start your broadcast and eagerly await your first viewers, welcoming everyone with a flirty lightness as you try to make everyone feel welcome and interested without getting TOO slutty.
<<case 'submissive'>>
<<if setup.getTotalValue("submission") > 15>>
You are your pure, submissive self,
<<else>>
You play up your already extremely submissive self,
<</if>>
doing what you can to enthusiastically serve your viewers and bring them pleasure.
<<case 'dominant'>>
<<if setup.getTotalValue("dominance") > 15>>
From the moment the first viewer joins chat you are "on" —
<<else>>
You focus on acting up your dominant side;
<</if>>
taking dominant charge of things and keeping your fans on the edge of their submissive seats.
<<case 'slutty'>>
You slut it up on stream, flirting constantly and trying to be as alluring as you can...
<<case 'bimbo'>>
<<if setup.getTotalValue("smart") > 15>>
You put your intelligence to the "good" ... of, like... acting even more of a brainless bimbo slut.
<<elseif setup.getTotalValue("smart") < 5>>
You fall back on what feels natural — acting like a brainless bimbo slut.
<<else>>
You put aside the whole "thinking" thing and let out your inner brainless bimbo slut.
<</if>>
<<default>>
ERROR: unexpected scene.camgirl.style <<=$scene.camgirl.style>>
<</switch>>
<br><br>
<<if $scene.camgirl.eventLvl < $player.flags.camgirl.level -1 >>
Your target for the stream fails to garner particular interest, unsurprising, given how much more extreme things you've done on camera.
<<elseif $scene.camgirl.eventLvl > $player.flags.camgirl.level>>
Your target for the stream garners significant excitement due to being further than you've ever gone before on-camera...
<<else>>
You target seems well chosen, encouraging contributions, but without putting yourself too "out there" too fast.
<</if>>
<br><br>
<<switch $scene.camgirl.target>>
<<case 0>>
You fail to draw enough interest and come nowhere near hitting your target of <<=$scene.camgirl.targetName>>...
<<case 1>>
You draw some interest, but fall just short of your target of <<=$scene.camgirl.targetName>>...
<<case 2>>
It's a bit touch and go, but you manage to hit your target for the stream of <<=$scene.camgirl.targetName>>...
<<case 3>>
You blow past your target to <<=$scene.camgirl.targetName>> with ease...
<<default>>
ERROR: unexpected scene.camgirl.target <<=$scene.camgirl.target>>
<</switch>>
<br><br>
<<if $scene.camgirl.target >= 2>>
<<printThought "Time to make good on my promise...">><br>
<br>
[<<moveTo "event_camgirl_root_3" "Make good on your promise." 1800 "<<set $scene.camgirl.act=true>>">>]<br>
[<<moveTo "event_camgirl_root_3" "On second thought... you don't want to do anything more on stream." 600 "<<set $scene.camgirl.act=false>>">>]
<<else>>
<<printThought "Damn, short of my goal...">><br>
<br>
[<<moveTo "event_camgirl_root_3" "Go through with things anyway." 1800 "<<set $scene.camgirl.act=true>>">>]<br>
[<<moveTo "event_camgirl_root_2_retry" "Try to rally fans for a final push!" 1800>>]<br>
[<<moveTo "event_camgirl_root_3" "No pay, no go, don't do anything further." 600 "<<set $scene.camgirl.act=false>>">>]
<</if>>
</div>/*#
#desc: camgirl action retry failed target
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.camgirl.secondSuccess = random(1,100) < (setup.getTotalValue("submission") + setup.getTotalValue("bimbofication") + setup.getTotalValue("humiliation") + setup.getTotalValue("dominance"))>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.camgirl.secondSuccess>>
It takes some effort on your part, but you manage to rally and entice your fans to hit the target for you to <<=$scene.camgirl.targetName>>.<br>
<br>
[<<moveTo "event_camgirl_root_3" "Make good on your promise." 1800 "<<set $scene.camgirl.act=true>>">>]<br>
[<<moveTo "event_camgirl_root_3" "On second thought... you don't want to do anything more on stream." 600 "<<set $scene.camgirl.act=false>>">>]
<<else>>
Even with your additional encouragement you are unable to hit your target to <<=$scene.camgirl.targetName>>.<br>
<br>
[<<moveTo "event_camgirl_root_3" "Go through with things anyway." 1800 "<<set $scene.camgirl.act=true>>">>]<br>
[<<moveTo "event_camgirl_root_3" "No pay, no go, don't do anything further." 600 "<<set $scene.camgirl.act=false>>">>]
<</if>>
</div>/*#
#desc: camgirl action mux
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<initRoom>>
<<if $scene.camgirl.act>>
<<switch $scene.camgirl.event>>
<<case '1_fashion'>>
<<moveTo "event_camgirl_flirty_fashion_1">>
<<case '1_phone'>>
<<moveTo "event_camgirl_flirty_phone_1">>
<<case '1_dance'>>
<<moveTo "event_camgirl_flirty_dance_1">>
<<case '1_yoga'>>
<<moveTo "event_camgirl_flirty_yoga_1">>
<<case '1_flash'>>
<<moveTo "event_camgirl_flirty_flash_1">>
<<case '1_bread'>>
<<moveTo "event_camgirl_flirty_bread_1">>
<<case '2_strip'>>
<<moveTo "event_camgirl_sexish_strip_1">>
<<case '2_fashion'>>
<<moveTo "event_camgirl_sexish_fashion_1">>
<<case '2_suck'>>
<<moveTo "event_camgirl_sexish_suck_1">>
<<case '2_milk'>>
<<moveTo "event_camgirl_sexish_milk_1">>
<<case '2_game'>>
<<moveTo "event_camgirl_sexish_game_1">>
<<case '2_makeout'>>
<<moveTo "event_camgirl_sexish_makeout_1">>
<<case '3_ass'>>
<<moveTo "event_camgirl_sex_ass_1">>
<<case '3_masturbate'>>
<<moveTo "event_camgirl_sex_masturbate_1">>
<<case '3_cunt'>>
<<moveTo "event_camgirl_sex_cunt_1">>
<<case '3_wand'>>
<<moveTo "event_camgirl_sex_wand_1">>
<<case '3_video'>>
<<moveTo "event_camgirl_sex_video_1">>
<<case '4_admin'>>
<<moveTo "event_camgirl_guest_admin_1">>
<<case '4_technician'>>
<<moveTo "event_camgirl_guest_technician_1">>
<<case '4_fit_bimbo'>>
<<moveTo "event_camgirl_guest_fit_bimbo_1">>
<<case '4_barista'>>
<<moveTo "event_camgirl_guest_barista_1">>
<<case '4_landlord'>>
<<moveTo "event_camgirl_guest_landlord_1">>
<<case '5_dp'>>
<<moveTo "event_camgirl_extreme_dp_1">>
<<case '5_airtight'>>
<<moveTo "event_camgirl_extreme_airtight_1">>
<<case '5_machine'>>
<<moveTo "event_camgirl_extreme_machine_1">>
<<case '5_milk'>>
<<moveTo "event_camgirl_extreme_milk_1">>
<<case '5_dog'>>
<<moveTo "event_camgirl_extreme_dog_1">>
<<case '5_plant'>>
<<moveTo "event_camgirl_extreme_plant_1">>
<<case '5_gloryhole'>>
<<moveTo "event_camgirl_extreme_gloryhole_1">>
<<case '5_cumbath'>>
<<moveTo "event_camgirl_extreme_cumbath_1">>
<</switch>>
<<else>>
<<set $scene.streaming = {}>>
<<if $scene.camgirl.secondSuccess>>
<<set $scene.streaming.followerChange = -random(25)/100>>
<<elseif $scene.camgirl.target >= 2>>
<<set $scene.streaming.followerChange = -random(20)/100>>
<<elseif $scene.camgirl.target == 1>>
<<set $scene.streaming.followerChange = -random(10)/100>>
<<elseif $scene.camgirl.target == 0>>
<<set $scene.streaming.followerChange = -(random(20)+5)/100>>
<</if>>
<<include "calcStreamerVisual">>
<<include "calcStreamerBonus">>
<<if $scene.streaming.followerChange > 0>>
<<if $scene.streaming.visMod > 0>>
<<set $scene.streaming.followerChange *= 1 + $scene.streaming.visMod>>
<<else>>
<<set $scene.streaming.followerChange *= 1 - $scene.streaming.visMod>>
<</if>>
<<elseif !$scene.streaming.followerChange && $scene.streaming.followerChange != 0>>
ERROR: undefined follower Change! Please upload save to discord so this can be fixed.
<<set $scene.streaming.followerChange = 0>>
<<else>>
<<if $scene.streaming.visMod > 0>>
<<set $scene.streaming.followerChange *= 1 - $scene.streaming.visMod>>
<<else>>
<<set $scene.streaming.followerChange *= 1 + $scene.streaming.visMod>>
<</if>>
<</if>>
<<set $scene.camgirl.followers = Math.ceil($player.flags.camgirl.followers * $scene.streaming.followerChange)>>
<<set $scene.camgirl.followers = setup.normalizeStreamerChange($player.flags.camgirl.followers, $scene.streaming.followerChange)>>
<<set $player.flags.camgirl.followers = Math.max(0, $player.flags.camgirl.followers + $scene.camgirl.followers)>>
<<set $scene.camgirl.credits = Math.ceil($player.flags.camgirl.followers *.01 + random(1,5))>>
<<if $scene.camgirl.followers > 0>>
<<set $scene.camgirl.credits += $scene.camgirl.followers>>
<</if>>
<<addCredits $scene.camgirl.credits>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.camgirl.act>>
ERROR: unexpected scene.camgirl.event: <<=$scene.camgirl.event>>
<<elseif $scene.camgirl.secondSuccess>>
After rallying your fans... you get cold feet and pull out... which provokes a fair bit of anger. As tensions rise you close up your broadcast.
<<elseif $scene.camgirl.target >= 2>>
Despite "hitting" your target you decline to follow through... which does not go over well with your fans and you end up closing up your broadcast not long after.
<<elseif $scene.camgirl.target == 1>>
You're a bit disappointed your fans didn't come through, but rules are rules and you decide to call it a day for broadcasting, collecting just a meager <<=$scene.camgirl.credits>> for your efforts, having missed out on the "big score" of hitting your target.
<<elseif $scene.camgirl.target == 0>>
It hurts a bit to get such minimal response, but rules are rules and you decide to call it a day for broadcasting, collecting just a meager <<=$scene.camgirl.credits>> for your efforts, having missed out on the "big score" of hitting your target.
<<else>>
ERROR: unexpected state
<</if>>
<br><br>
<<include "camgirlSummary">>
</div><<include "checkStablesTechnicianReady">>
<<set $scene.streaming = {}>>
<<if $scene.camgirl.secondSuccess>>
<<set $scene.streaming.followerChange = random(10)/100>>
<<elseif $scene.camgirl.target >= 3>>
<<set $scene.streaming.followerChange = random(10)/100>>
<<elseif $scene.camgirl.target == 2>>
<<set $scene.streaming.followerChange = (random(5))/100>>
<<elseif $scene.camgirl.target == 1>>
<<set $scene.streaming.followerChange = (random(10)-5)/100>>
<<elseif $scene.camgirl.target == 0>>
<<set $scene.streaming.followerChange = -(random(5))/100>>
<</if>>
<<include "calcStreamerVisual">>
<<include "calcStreamerBonus">>
<<if $scene.streaming.followerChange > 0>>
<<if $scene.streaming.visMod > 0>>
<<set $scene.camgirl.mod = $scene.camgirl.baseMod + $scene.streaming.visMod>>
<<else>>
<<set $scene.camgirl.mod = $scene.camgirl.baseMod - $scene.streaming.visMod>>
<</if>>
<<if $scene.camgirl.mod >= 1>>
<<set $scene.streaming.followerChange *= $scene.camgirl.mod - 1>>
<<else>>
<<set $scene.streaming.followerChange *= 1 - $scene.camgirl.mod>>
<</if>>
<<elseif !$scene.streaming.followerChange && $scene.streaming.followerChange != 0>>
ERROR: undefined follower Change! Please upload save to discord so this can be fixed.
<<set $scene.streaming.followerChange = 0>>
<<else>>
<<if $scene.streaming.visMod > 0>>
<<set $scene.camgirl.mod = $scene.camgirl.baseMod - $scene.streaming.visMod>>
<<else>>
<<set $scene.camgirl.mod = $scene.camgirl.baseMod + $scene.streaming.visMod>>
<</if>>
<<if $scene.camgirl.mod >= 1>>
<<set $scene.streaming.followerChange = $scene.streaming.followerChange * $scene.camgirl.mod>>
<<else>>
<<set $scene.streaming.followerChange *= $scene.camgirl.mod - 1>>
<</if>>
<</if>>
<<if $player.flags.camgirl.followers < 10 && $scene.streaming.followerChange > 0>>
<<set $scene.streaming.followerChange *= 100>>
<<elseif $player.flags.camgirl.followers < 100 && $scene.streaming.followerChange > 0>>
<<set $scene.streaming.followerChange = Math.max(1, $scene.streaming.followerChange * 10)>>
<</if>>
<<set $scene.camgirl.followers = Math.floor($player.flags.camgirl.followers * $scene.streaming.followerChange)>>
<<set $scene.camgirl.followers = setup.normalizeStreamerChange($player.flags.camgirl.followers, $scene.camgirl.followers)>>
<<set $player.flags.camgirl.followers = Math.max(0, $player.flags.camgirl.followers + $scene.camgirl.followers)>>
<<set $scene.camgirl.credits = Math.ceil($player.flags.camgirl.followers *.01 + random(1,5))>>
<<if $scene.camgirl.followers > 0>>
<<set $scene.camgirl.credits += $scene.camgirl.followers>>
<</if>>
<<addCredits $scene.camgirl.credits>>You have <<if $scene.camgirl.followers >= 0>>gained <<=$scene.camgirl.followers.toLocaleString()>><<else>>lost <<=-$scene.camgirl.followers.toLocaleString()>><</if>> <<if $scene.camgirl.followers == 1 || $scene.camgirl.followers == -1>>follower<<else>>followers<</if>> and made <<=$scene.camgirl.credits.toLocaleString()>> credits.<br>
<br>
You now have a total of <<=$player.flags.camgirl.followers.toLocaleString()>> followers.<br>
<br>
<<if State.hasPlayed("event_camgirl_extreme_gloryhole_1") && $fetish.cum && setup.getTotalValue("cum") > 10 && ["event_camgirl_flirty_phone_1","event_camgirl_sexish_suck_2","event_camgirl_extreme_dp_2","event_camgirl_extreme_airtight_1"].includes(passage()) && State.hasPlayed("event_camgirl_guest_fit_bimbo_1") && (!State.hasPlayed("event_camgirl_extreme_cumbath_intro_1") || !State.hasPlayed("event_camgirl_extreme_cumbath_intro_3") && $scene.rand == 1)>>
[<<moveTo "event_camgirl_extreme_cumbath_intro_1" "It looks like there's still some chat going on in the post-stream..." 60>>]<br>
<</if>>
[<<moveTo "room_livingroom" "Do something else." 60>>]/*#
#desc: use computer at home
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<movePets>>
<<if !setup.hasEmail("mail_camgirl_voluntary_h") && setup.hasUpgrade($computer, 'webcam') && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && !$player.sec_style.sex.camgirl>>
<<addEmail $computer
"Camgirl Promotional Offers!"
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
$now
'mail_camgirl_voluntary_h'
'mail_camgirl_voluntary_t'>>
<</if>>
<<set $scene.emailCount = setup.getUnreadEmailCount($computer)>>
<</if>>
<<set $player.location to "Computer">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_dog.stage && $npc_dog.location == "room_computer">>
<<createAdvBGR "./images/locations/flat_computer_01.png" setup.charImage("npc_dog")>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_computer">>
<<createAdvBGR "./images/locations/flat_computer_01.png" setup.charImage("npc_cat","npc_cat_1")>>
<<else>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("gloves") && setup.checkItemTypeTag('gloves', ['boundarms']) || setup.checkItemTypeWorn("bondagegear") && setup.checkItemTypeTag('bondagegear', ['boundarms'])>>
With your arms bound, you are unable to work your computer...<br>
<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<<elseif $npc_dog.stage && $npc_dog.location == "room_computer" && !$daily.dogEvent && !$scene.dogEvent && $npc_dog.stage == 1 && $npc_dog.flags.stage1.kitchen && setup.hasFreeTime($now, $player, 1800)>>
You're working on your computer when <<=setup.getNpcName("npc_dog","first")>> pokes his head up between your legs and jams his nose into your crotch, aggressively sniffing away.<br>
<br>
[<<moveTo "event_dog_computer_basic" "Spread your legs a bit wider for him." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_dog_computer_basic" "Shoo him away." 600 "<<set $scene.accept=false>>">>]
<<else>>
You've booted up your computer. It's a few years old, so it won't run the most bleeding edge games, but it's still a good system.
<<if setup.hasUpgrade($computer, 'webcam')>>
A webcam sits on the top of your primary monitor.
<</if>>
<<if $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_computer">><<=setup.getNpcName("npc_cat","first")>> is lounging on top of the computer. <</if>><<if $npc_dog.stage && $npc_dog.location == "room_computer">><<=setup.getNpcName("npc_dog","first")>> is resting under your computer chair. <</if>>
<br><br>
<<if !($currentTasks.hasOwnProperty('task_uniform_upgrade') || $player.flags.uniform_upgrade.fully_understood_contract || $player.flags.uniform_upgrade.aslut_enrollment_refused) && $npc_manager.stagevalues[2].femalesecretary != "">>
<<printThought "In light of all these uniform changes, maybe I should look into my contract some more? <<=setup.getNpcName('npc_manager', 'formal')>> e-mailed it to me back when I first started.">><br>
<br>
<</if>>
<<if $player.sec_style.sex.camgirl>>
[<<moveTo "event_camgirl_root_1" "Show off on cam." 60 "<<set $scene.camgirl = {}>>">>]<br>
<</if>>
[<<moveTo "room_computer_email" "Check your Emails." 0>>]
<<if $scene.emailCount > 0>>
<<=$scene.emailCount>> unread
<<if $scene.emailCount == 1>>email<<else>>emails<</if>>
<<else>>
0 unread emails
<</if>>
<br>
<<if setup.checkItemOwned("sailor_moon_crystal")>>
[<<moveTo "event_technician_rescue_friend_assist_2_barista_1_watch_1" 'Load the crystal <<=setup.getNpcName("npc_barista","nickname")>> gave you.' 180>>]<br>
<</if>>
<<printSearch $computer>>
<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<</if>>
</div>/*#
#desc: check email at home
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasEmail("spam02_h") && !setup.hasEmail("spam02_repeat_h") && !setup.hasEmail("spam02_2_h") && !$events.hasOwnProperty("sissyEmail1") && !$events.hasOwnProperty("sissyEmail2")>>
<<set _days = random(14,30)>>
<<set _nextDate = setup.setNextDate($now, _days, 14, 0)>>
<<addEvent "sissyEmail1" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<printEmail $computer>>
<br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: read an email (javascript to display email)
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<printEmailContent $computer $scene.readEmailNumber>>
<br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]<br>
[<<moveTo "room_computer" "Close your Email Program." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: take a shower
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Bathroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bathroom = {}>>
<<set $scene.bathroom.makeup = false>>
<<set $scene.bathroom.clothes = false>>
<<set $scene.bathroom.cage = false>>
<<set $scene.bathroom.cageItem = "">>
<<set $scene.bathroom.toys = false>>
<<set $scene.bathroom.time = 10>>
<<if setup.checkSexToyDirty()>>
<<set $scene.bathroom.toys = true>>
<<set $scene.bathroom.time += setup.cleanSexToys()>>
<<else>>
<<set _x = setup.cleanSexToys()>>
<</if>>
<<if setup.checkItemDirty()>>
<<set $scene.bathroom.clothes = true>>
<<set $scene.bathroom.time += 10>>
<</if>>
<<washClothes>>
<<set _tmpHorny = $player.timebased.hornymulti>>
<<set $player.timebased.hornymulti = -2>>
<<set $player.timebased.hornymulti = _tmpHorny>>
<<include "cleanPlayer">>
<<if $player.makeup.template!="">>
<<set $scene.bathroom.makeup = true>>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<<set $scene.bathroom.time += 5>>
<</if>>
<<if !setup.checkNaked()>>
<<if setup.isItemEquipped("shirt_stained")>>
<<set $scene.bathroom.stained_shirt = true>>
/% some stains never come out %/
<<changeItemStatus "shirt_stained" 'dirty' '["set",50]'>>
<</if>>
<<removeAllClothing>>
<<set $scene.bathroom.clothes = true>>
<</if>>
<<if Math.round($player.timebased.fatigue) > 25>>
<<set $now = setup.sleepMin($player,$now,$scene.bathroom.time,true)>>
<<else>>
<<set $now = setup.advanceDate($player, $now, 'seconds', $scene.bathroom.time*60)>>
<</if>>
<<if setup.hasUpgrade($bathroom, 'dildo')>>
<<set _anal = Math.max(setup.getTotalValue("penis"), setup.getTotalValue("anal"))>>
<<changeHorny _anal>>
<<if setup.getTotalValue("penis") > 10>>
<<applyExperience 'penis' 10 'normal' $ALONE>>
<<applyExperience 'anal' 12 'terrible' $ALONE>>
<<elseif setup.getTotalValue("penis") > 5>>
<<applyExperience 'penis' 10 'little' $ALONE>>
<<applyExperience 'anal' 12 'normal' $ALONE>>
<<else>>
<<applyExperience 'penis' 5 'little' $ALONE>>
<</if>>
<<set $scene.orgasm = setup.getTotalValue("penis") > 10 && ($player.timebased.horny + setup.getTotalValue("anal") + setup.getTotalValue("penis") + setup.getTotalValue("bimbofication")) >= 100>>
<<if $scene.orgasm>>
<<playerOrgasm>>
<<applyExperience 'bimbofication' 12 'normal' $ALONE>>
<</if>>
<</if>>
<<applyStress -3>>
<<applyFatigue -10>>
<<set $scene.randDog = random(1,5)>>
<</if>>
<<include playerMenuLocked>>
<<createStackedImage "flat_shower">>
<div id="invframe" class="scrolltext">
<<if $scene.bathroom.clothes>>
You start by removing your clothes and put them in the washer, running the automatic setting.
<<else>>
You start by removing your clothes and putting them on the side.
<</if>>
<<if $scene.bathroom.toys>>
Then you take your time, thoroughly cleaning your "toys."
<</if>>
<<if $scene.bathroom.makeup>>
After removing the remains of your makeup, you
<<else>>
Then you
<</if>>
take a <<if Math.round($player.timebased.fatigue) > 25>>long, rejuvenating<<else>>nice long<</if>> shower.
<<if $scene.bathroom.cageItem!="">>
You do your best to clean your <<=$scene.bathroom.cageItem>> while still wearing it.
<</if>>
<br><br>
<<if $scene.bathroom.clothes>>
<<set _permDirty = setup.getFirstItemTypeCarried("permanently_stained")>>
<<if _permDirty != "">>
Try as you might, you are unable to get the stain out of your <<=setup.getItemName(_permDirty)>>.<br>
<br>
<<printThought "Maybe I should just put it in my wardrobe to get it out of the way?">><br>
<br>
<</if>>
<</if>>
<<if $npc_dog.stage && $npc_dog.location == "room_bathroom" && !$daily.dogEvent && !$scene.dogEvent && $npc_dog.stage == 1 && $npc_dog.flags.stage1.kitchen && setup.hasFreeTime($now, $player, 1800)>>
You're in the middle of your shower when <<=setup.getNpcName("npc_dog","first")>> hops in with you.<br>
<br>
[<<moveTo "event_dog_bathroom_basic" "Stop what you're doing and give him a wash." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_dog_bathroom_basic" "Gah, wet dog! Kick him out." 60 "<<set $scene.accept=false>>">>]
<<elseif $npc_dog.stage && !$daily.dogEvent && !$scene.dogEvent && $npc_dog.stage >= 3 && (!State.hasPlayed("event_dog_bathroom_advanced") || $scene.randDog == 1) && setup.hasFreeTime($now, $player, 1800)>>
You step out of the shower and are in the process of drying off when you look down to see <<=setup.getNpcName("npc_dog","first")>> sitting facing you.<br>
<br>
He growls softly, your eyes drawn to his hard cock as he looks about to pounce.<br>
<br>
<<printThought "Shit, the shower must mean he can't smell himself on me... and he wants to rectify that matter.">><br>
<br>
[<<moveTo "event_dog_bathroom_advanced" "Stop what you're doing and give him a wash." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_dog_bathroom_advanced" "Run away!" 60 "<<set $scene.accept=false>>">>]
<<else>>
<<if $scene.bathroom.stained_shirt>>
Taking your clothes out of the wash you are dismayed to discovered that the bright red stain on your shirt remains, the cleaning having hardly even dulled it.<br>
<br>
<<printThought "Crap, it looks like this is a permanent stain. There's no way <<=setup.getNpcName('npc_manager', 'formal')>> will accept this as meeting requirements. I'll need to wear something else if I don't want to get in trouble...">><br>
<br>
<</if>>
<<if setup.hasUpgrade($bathroom, 'dildo')>>
<<if setup.getTotalValue("penis") > 10>>
Of course the best part of your shower remains the dildo your <<=setup.getNpcName('npc_manager', 'title')>> left behind and you enjoy a nice hard ride in the course of getting "clean."
<<else>>
<<if setup.getTotalValue("penis") > 5>>
Though you try to resist its siren call you can't help but enjoy a few pumps on the dildo <<=setup.getNpcName('npc_manager', 'formal')>> left behind for you. <<printThought "just to clean everywhere">> you tell yourself...
<<else>>
The dildo <<=setup.getNpcName('npc_manager', 'formal')>> left behind taunts you throughout the shower but you try to ignore it as you go about your business cleaning yourself.
<</if>>
<</if>>
<br><br>
<<if $scene.orgasm>>
You cannot resist finishing off just as you finish your shower and you come hard from pounding your slutty rear against the wall-mounted dildo<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>, the raining water washing away all evidence of your dirty deeds<</if>>.<br>
<br>
<</if>>
<</if>>
[<<moveTo "room_bathroom" "Return to the Bathroom." 1>>]
<</if>>
</div>/*#
#desc: attempt to read employment contract
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "contract.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.contract.read<=3>>
<<set $scene.readcontractTime = Math.round(Math.random()*1200 + 2400)>>
<<else>>
<<set $scene.readcontractTime = 20*60>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.contract.read == 0>>
You open the attachment of the email from your new boss, <<=setup.getNpcName('npc_manager', 'formal')>>. It starts off like any normal contract with work-time regulation, vacation, how overtime is to be handled, and things like that. But after page three, when the legal bindings for the non-disclosure agreement begins, you're not so sure that this is even written in English. You have trouble grasping even the "simplest" terms after a while, since everything seems to be written in this weird business legalese, using way too many complicated words and bizarrely formal and convoluted syntax. You shake your head. You like your text simple and easy to read, like source code. You suppose this is what you get for sleeping during business classes at school.
<<else>>
You open the cursed document yet another time, even though you really don't want to. Are you sure you want to incur this mental pain again?
<</if>>
<br><br>
<<if $player.timebased.fatigue>=($player.timebased.fatiguemax/2)>>
You feel too worn out to read any more now. Maybe when you're more rested.
<<elseif $player.timebased.stress>50>>
This document reminds you too much of work, and you already feel stressed enough. Maybe read it once you feel better?
<<if $player.flags.contract.read == 0>>
<br><br>
<<printThought "No, I should really try to read this thing at least once...">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "attachment_read_contract_2" "Force your way through the whole document!" $scene.readcontractTime "<<spendWillpower 1>>">>]
<<else>>
[@@.link_locked;You presently lack the willpower to force yourself to read.@@]
<</if>>
<</if>>
<<elseif setup.calcErection()>>
<<if $player.body_ref.penis>>
Your <<getWordMyPenis>> is jumping up and down with excitement.
<<else>>
You are dripping in excitement.
<</if>>
Not because of the document, but it distracts you enough to make untangling the contract impossible.
<<elseif $player.flags.contract.read == 0>>
Dense with legalese you doubt you'd be able to understand the contract fully, but maybe there's something useful you could glean from it?<br>
<br>
[<<moveTo "attachment_read_contract_2" "Attempt to read through the whole document!" $scene.readcontractTime>>]<br>
<<else>>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication') || setup.getTotalValue('smart')>=13>>
[<<moveTo "attachment_read_contract_2" "Read the whole document." $scene.readcontractTime>>]<br>
[<<moveTo "attachment_read_contract_pay" "Try focusing on the section on employee pay." $scene.readcontractTime>>]<br>
[<<moveTo "attachment_read_contract_punishment_1" "Try focusing on the section on employee discipline." $scene.readcontractTime>>]<br>
[<<moveTo "attachment_read_contract_uniform" "Focus specifically on trying to find information about uniform requirements." $scene.readcontractTime>>]
<<else>>
<<if setup.getWillpower() >0>>
[<<moveTo "attachment_read_contract_uniform" "The contract is, like, hard, but maybe if you just focus on clothes stuff you can force yourself to read the important parts?" $scene.readcontractTime "<<spendWillpower 1>>">>] <<hint $options "Your ditziness means that this level of focus takes an act of willpower.">><br>
<<else>>
[@@.link_locked;You presently lack the willpower to put aside your ditzy tendencies and focus specifically on researching your uniform requirements.@@]
<</if>>
<</if>>
<<else>>
You don't feel like dealing with attempting to read the contract right now.<br>
<br>
<<if setup.getWillpower() >= 1>>
[<<moveTo "attachment_read_contract_2" "Screw it, force yourself to read." $scene.readcontractTime "<<spendWillpower 1>>">>]<br>
<<else>>
[@@.link_locked;You don't have the willpower to force yourself into such dry futility.@@]<br>
<</if>>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div>/*#
#desc: read employment contract
#status: FINISHED 0.4.0.0
#ignore_spell: d&d
#*/
<<set $player.location to "contract.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.attachment_read_contract_2_onlineUniversity = false>>
<<set $player.flags.contract.read += 1>>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
<<if setup.getTotalValue('smart')<6>>
<<applyExperience 'smart' 6 'very' $ALONE>>
<<set _stress = Math.max(0,(10-setup.getTotalValue('smart')))>>
<<applyStress _stress>>
<</if>>
<<if setup.getTotalValue('smart')>=12>>
<<set $player.flags.contract.understoodcomplete = true>>
<</if>>
<<if setup.getTotalValue('smart')>=7>>
<<set $player.flags.contract.understoodpartial = true>>
<</if>>
<<if !setup.computerHasSearch($computer, "R&D Online University")>>
<<addPopUpText "misc" 'New Link "R&D Online University" added'>>
<<set $scene.attachment_read_contract_2_onlineUniversity = true>>
<<addSearch $computer 'R&D Online University' 'room_online_university_start'>>
<</if>>
<<else>>
<<applyExperience 'bimbofication' 5 'normal' $ALONE>>
<<set _stress = -setup.getTotalValue('bimbofication')>>
<<applyStress _stress>>
<<if $player.flags.contract.read >= 3 && !setup.computerHasSearch($computer, "R&D Online University")>>
<<addPopUpText "misc" 'New Link "R&D Online University" added'>>
<<set $scene.attachment_read_contract_2_onlineUniversity = true>>
<<addSearch $computer 'R&D Online University' 'room_online_university_start'>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue('bimbofication')>setup.getTotalValue('smart') && ($player.timebased.horny > (60 - (setup.getTotalValue('bimbofication') - setup.getTotalValue('smart')) * 5) || setup.calcErection(true)) || $player.timebased.horny == 100>>
Wow. Trying to make sense of that mess really made your head hurt. You tried your best to understand the contract, constantly drawing on different resources on the net to clarify things. At least that was your original plan, but it does not take your mind long before it drifts off and pursue other matters of importance, like cute cat videos and the alizon homepage with many, many things you cannot afford at the moment, but you don't intend to be very petty minded about such matters, and after a while forgot what you were doing in the first place anyway.<br>
<br>
<<if $scene.attachment_read_contract_2_onlineUniversity>>
<<printThought "Who cares for that stupid document anyway? Let's do something fun!">>
<<elseif setup.getWillpower() > 0>>
[<<moveTo "attachment_read_contract_bimbo" "This is, like... important, force yourself to keep reading." 1800>>] <<hint $options "Pushing yourself like this will cost willpower.">>
<<else>>
[@@.link_locked;You're, like, too mentally fried to push yourself to read another word.@@] <<hint $options "Pushing yourself like this would cost willpower.">>
<</if>>
<<elseif setup.getTotalValue('smart')<7>>
<<switch $player.flags.contract.read>>
<<case 1>>
Wow. That really made your head hurt. You tried your best to understand the contract, constantly drawing on different resources on the net to clarify things. And even though you are not even close to understanding the whole document, you've managed to stay focused the whole time and learned many things about company organisation, which might come in handy with your job. Still, the whole ordeal was very stressful for you. It's like this convoluted business language is trying to bend the words you're reading while you're looking at them. It's like a maze with no exit, and after a while your head simply starts to hurt. Maybe you should try this again later.<br>
<br>
<<printThought "This is getting me nowhere... signing this monster was a premature decision!">>
<<case 2>>
Your second session with the document is nearly as futile as the first. Armed with new knowledge, you still gain a devastating defeat at the hand of whoever wrote this infernal piece of paper. Still, you're not about to give up... yet. One more time, and you're sure, you'll crack it open.<br>
<br>
<<printThought "Come on! This is getting me nowhere... what the fuck does indemnification mean? Amends? According to this page it means amends. Why the fuck can't they use the fucking word amends?">>
<<case 3>>
At your third session with the document, you finally cracked it. Your will to continue that is. It's broken, gone, dead. You are unable to understand anything beyond a couple of random paragraphs where they forgot the business encryption. Looking through the document makes you realise one thing. The people who wrote this are way smarter than you are. Maybe than you ever will be. And way more malicious. It's time to change this. The "being smart" part, not the part about being malicious. You tried to play a blackguard once in D&D in high-school. Didn't work out that well for you. Anyway, you could look for an online course to upskill your smarts. Somehow anticipating your needs, you notice a banner ad for "R&D Online University" on the side of your screen. You've vaguely heard of it before, it should be a good place to improve your mind and skills.<br>
<br>
<<printThought "I really need to up my game to figure out what I've gotten myself into.">>
<<default>>
Reading this more often will only lead to more headaches, but won't give you the answers you seek. Maybe you should spend your time trying to hone your intellect instead of staring at the cursed letters of this infernal document.<br>
<br>
<<printThought "I really need to up my game to figure out what I've got myself into.">>
<</switch>>
<<elseif setup.getTotalValue('smart')>=12>>
The efforts you've put into the hours of learning and honing your intelligence have finally paid off. Partially. You're still working on understanding the whole document, but you managed to decrypt at least some sections. From what you can tell, the restrictions on what to wear are still in place, at least for male employees. Wait. No, that's not right. The way it's written, it is for male type clothing, but the gender of the employee doesn't actually matter. If you decide to wear a suit, you have to go for the company standard. Female clothing on the other hand is a lot less restrictive. Like barely restrictive at all. You can basically wear whatever you want, as long as it is not too provoking, and the definition of "too provoking" is liberal to say the least. So as long as your breasts are hidden beneath a bra, and that bra is partially covered, you're safe up top. Skirts can be really short, more like bigger belts. Heels can be of any size, as long you're able to "safely" walk in them.<br>
<br>
What you find particularly strange (and concerning) is that the contract goes out of its way to specify that your superior is allowed to overwrite practically any portion of the dress code. Both in a more restrictive or less restrictive manner. As stated in the contract, this can, and should, be used for disciplinary measures "when deemed necessary and appropriate, any concerns should be checked with HR for approval." <br>
<br>
<<printThought "Wait, <<=setup.getNpcName('npc_manager', 'formal')>> is in charge of HR! She could approve anything, in theory. Man, I really hope she doesn't order me to work naked...">><br>
<br>
As for the disciplinary measures, they're in here as well. You do not understand everything the document says about them, but it seems like it is <<=setup.getNpcName('npc_manager', 'formal')>> right to invoke them if she deems them necessary. Once again, it spells out that "novel" techniques should be cleared with HR, but that hardly matters for your case. Not a lot you can do there, if you want to keep the job.<br>
<br>
A final chapter that catches your attention is the one on "employee development." It seems your superior can arrange for supplemental or re-education courses for the employee depending on which of their skills is in need for improvement or if said skill would benefit the employee's "long-term development plan at the company." But these courses are not for free. If the employee decides to take on this course, they must remain at the company for a minimum period of time... you're unsure how long exactly. It seems to depend on the kind of course. And if the employer-employee relationship is terminated for any reason at all, the company can mandate a "re-purpose of material" until the debts are amortised. Your eyes start to glaze over at that point, seems like you still need to get better at navigating legalese to figure everything out.
<<elseif setup.getTotalValue('smart')>=7>>
Reading the document leaves you with a fair amount of confusion, but one certainty: how royally fucked you are right now.
<<else>>
As hard as you try, the document is just too complex for you to glean meaning beyond an overall sense of foreboding.
<</if>>
<br><br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div>/*#
#desc: read employment contract
#status: FINISHED 0.4.0.0
#ignore_spell: b
#*/
<<set $player.location to "contract.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("smart") >= 12>>
<<if $player.flags.firstWorkDay>>
<<set $player.flags.uniform_upgrade.fully_understood_contract = true>>
<<if !$npc_manager.flags.can_ask_uniform_stipend>>
<<set $npc_manager.flags.can_ask_uniform_stipend = true>>
<<addNpcTheme 'npc_manager' 'aslut' 'theme_manager_uniform_stipend'
0
'event_uniform_stipend_1'
true
>>
<</if>>
<</if>>
<<elseif setup.getTotalValue("smart") >= 7>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') || $player.flags.uniform_upgrade.aslut_enrollment_refused>>
<<set $npc_manager.flags.can_ask_uniform_stipend = true>>
<<set _stress = Math.max(0,(10-setup.getTotalValue('smart')))>>
<<applyStress _stress>>
<<elseif !$npc_manager.flags.can_ask_uniform_stipend>>
<<set $npc_manager.flags.can_ask_uniform_stipend = true>>
<<addNpcTheme 'npc_manager' 'aslut' 'theme_manager_uniform_stipend'
0
'event_uniform_stipend_1'
true
>>
<</if>>
<<set $player.flags.contract.understoodpartial = true>>
<<elseif setup.getTotalValue('smart')<6>>
<<applyExperience 'smart' 5 'normal' $ALONE>>
<<set _stress = Math.max(0,(10-setup.getTotalValue('smart')))>>
<<applyStress _stress>>
<</if>>
<<if !setup.computerHasSearch($computer, "R&D Online University")>>
<<addPopUpText "misc" 'New Link "R&D Online University" added'>>
<<set $scene.attachment_read_contract_2_onlineUniversity = true>>
<<addSearch $computer 'R&D Online University' 'room_online_university_start'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.contract.understoodcomplete>>
While you already technically understand the entire contract, it's so long and convoluted remembering anything in particular isn't worth it. You're smart enough to know that, when it comes to legalese this dense, if you want to know something specific, you need to review the actual text. Now that you have a specific purpose in mind, you can really focus in on what's the story with your uniform.
<<elseif $player.flags.contract.understoodpartial>>
You somewhat understand the contract as a whole, but for particulars you need to re-read the text, and that means hunting down the section on uniform requirements.
<<else>>
Reading the contract as a whole is still well beyond your abilities, but perhaps if you focus on just the section on uniform requirements you'll have better luck?
<</if>>
<br><br>
<<if setup.getTotalValue('smart') < setup.getTotalValue('bimbofication')>>
It took an act of will, but you are able to temporarily put aside your desire to think of nothing but sex and other such fun things and attempt to read, and understand, part of the document.<br>
<br>
<</if>>
<<if setup.getTotalValue("smart") >= 12>> /* unqualified success */
<<if $player.flags.firstWorkDay>>
Legalese is becoming as easy to read as normal writing or code used to be and you zero right in on the section of the document detailing uniform and dress code requirements. Reading things thoroughly confirms that your "uniform" can be just about anything that your superior decides to require. Reading further, you perk up at a clause that states that changes to the "basic" uniform requirements entitle the employee to a compensatory bonus, only for that momentarily excitement to be dashed when you untangle the following clauses that lay out how this is less a perk than another trap.<br>
<br>
The "bonus" is actually legally considered a stipend and must be spent on clothing for work according to managerial specification. Moreover, merely accepting the stipend counts as enrollment in an "Allotment for <<if $fetish.sissy>>Sissy<<else>>Secretary<</if>> Learning and Uniform Transformation" career development programme. Agreeing to such brings automatic consent for a contract extension AND making the employee further liable for any breach of contract so as to require a payback of triple the bonus on top of any other penalties for breach of contract.
<<if $npc_manager.stage < 3>>
<br><br>
Of course this is all a bit useless to you at present given that all of these "perks" are only available to full-time, non-probationary secretaries but... maybe in the future?
<</if>>
<<else>>
On a pure intellectual level you should have no trouble reading the contract, but there's some weird phrasing and terms that either trip you up, or just flat don't make sense, and it seems that the document lacks an appendix.<br>
<br>
<<printThought "Maybe after I've actually worked my new job I'll have the context for this to make sense.">>
<</if>>
<<elseif setup.getTotalValue("smart") >= 7>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') || $player.flags.uniform_upgrade.aslut_enrollment_refused>>
With the added details provided by <<=ps(setup.getNpcName('npc_manager', 'first'))>> explanation of the A-SLUT programme you are able to track down the requisite clause and confirm that everything she described really was part of your "agreement" from the very beginning.<br>
<br>
<<printThought '<<if setup.getTotalValue("submission") >= 10>>It is so wonderful she thought ahead so that everything <<else>>Everything <</if>>I do brings brings me even deeper into her clutches.'>>
<<else>>
Your studies have paid off. While you still don't understand the entirety of the dense legal document you are at least able to zero in on the section dealing with uniform requirements. Reading methodically you start getting excited; if you are understanding Section II, Subsection 3, Clause b correctly any change from the "basic" uniform entitles the employee to enrollment in a special "career advancement" programme and, more importantly, a monetary bonus. There seems to be some stuff about having to repay some portion if you break contract, plus some tax implications of receiving it, but that shouldn't really matter, the fact is, you're owed money! You fist-pump in excitement, finally you are getting ahead of things; discovering this loophole has you more excited than beating a hard video game boss for the first time!
<</if>>
<<else>>
It takes everything you have just to trace your way to the section of the contract dealing with uniform requirements. Unfortunately the mere equivalent of doing an index lookup is your limit, after that it's all just lawyer-speak. You'll need to better yourself if you're going to puzzle this out. Perhaps spending some time studying online could help?
<</if>>
<br><br>
<<if $scene.attachment_read_contract_2_onlineUniversity>>
As you close the attachment, you notice a banner ad on your email for an online university — "Learn everything you need to get ahead in business!" it proclaims... you recognise the name as being a legit institution, maybe it's worth checking out sometime?<br>
<br>
<</if>>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div>/*#
#desc: bimbo force read employment contract
#status: FINISHED 0.8.1.0
#*/
<<set $player.location to "contract.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 1>>
<<set $scene.attachment_read_contract_2_onlineUniversity = false>>
<<if !setup.computerHasSearch($computer, "R&D Online University")>>
<<addPopUpText "misc" 'New Link "R&D Online University" added'>>
<<addSearch $computer 'R&D Online University' 'room_online_university_start'>>
<<set $scene.attachment_read_contract_2_onlineUniversity = true>>
<</if>>
<<applyExperience 'smart' 6 'very' $ALONE>>
<<set _stress = 5+setup.getTotalValue('bimbofication')>>
<<applyStress _stress>>
<<applyFatigue 25>>
<<changeHorny -50>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Gritting your teeth you pour yourself some coffee and try to focus on untangling the seemingly endless mess of legalese that is your contract.<br>
<br>
Just getting through a page or two leaves you with a headache, and little else to show for it, but you press on until the point of exhaustion. Even your most firm determination turns out to be no match for the contracts complexity and you slump in your chair, exhausted and defeated.<br>
<br>
<<printThought "Maybe I should, like... study up or something? Or do something so I'm not constantly distracted by thoughts of sex, otherwise I'm never going to crack this thing...">><br>
<br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div>/*#
#desc: read punishment section of contract
#status: RELEASED 0.9.1.0
#*/
<<set $player.location to "contract.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You read the section of the contract describing "Employee Disciplinary Measures." <br>
<br>
<<if $player.flags.firstWorkDayDone>>
Having experienced first-hand punishment at the hands of <<=setup.getNpcName("npc_manager","formal")>> the complex legalese of the contract and you realise that the lack of specificity is functionally a blanket authorisation for <<=setup.getNpcName("npc_manager","formal")>> to enforce discipline in just about any means she prefers. Wading through things you can pick out allusions to corporal punishment (corrective measures performed using official <<if $fetish.sissy>>SISSI <</if>>Secretary use or other manager approved devices), monetary consequences (performance demerits or pay reductions), as well as clothing (temporary or permanent uniform modifications)<<if $fetish.drugs>>, what might be drugs (products to induce improved performance),<</if>> as well as a nebulous "or other measures determined by management."
<<else>>
the complex legalese of the contract is somehow overly specific to the point of vagueness as it lists approved punitive measures as including "corrective measures performed using official <<if $fetish.sissy>>SISSI <</if>>Secretary use or other manager approved devices", "performance demerits or pay reductions," as "temporary or permanent uniform modifications" and the hyper-nebulous<<if $fetish.drugs>> "products to induce improved performance" and<</if>> "other measures determined by management." <br>
<br>
<<printThought "Well that seems a bit ominous... guess I should be on my best behaviour at my new job...">>
<</if>>
<br><br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div>/*#
#desc: read pay section of contract
#status: RELEASED 0.9.1.0
#*/
<<set $player.location to "contract.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
At least compared to the rest of the document the section on pay is remarkably straightforward. Your pay schedule is every Thursday with your compensation consisting of a base pay modified by performance, with the potential for additional bonus at the discretion of management. There seems to be a lot of things in the contract left up to "managerial discretion"... you wonder if that's universal, or perhaps specific to you working for the Director of Human Resources.<br>
<br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div><<set _setId = setup.getClothingSetIndex('Sleep Clothes')>>
<<set _collarReswap = $player.flags.collar.collarId != '' && setup.checkItemWorn($player.flags.collar.collarId)
|| setup.checkItemTypeWorn("choker") && setup.getItemObjFromType("choker").lockonly>>
<<if _collarReswap>>
<<set _collar = setup.getItemFromType("choker")>>
<</if>>
<<useClothSet _setId true>>
<<if _collarReswap>>
<<wearItem _collar true>>
<</if>>/*#
#desc: preping for bed
#status: FINISHED 0.7.6.0
#*/
<<if $events.hasOwnProperty("forced_sleep_event")>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<<set $scene.creamAdd = 0>>
<<set $scene.milkAdd = 0>>
<<if $scene.change>>
<<include "sleepClothesKeepCollar">>
<<if setup.checkSleepWear() == "not_sleepwear">>
<<fixSleepAttire>>
<<include 'sleepClothesKeepCollar'>>
<<initRoom>>
<<moveTo "event_bedroom_fix_sleep_clothes">>
<<else>>
<<set $scene.change = false>>
<<initRoom>>
<<moveTo "event_bed_root">>
<</if>>
<<else>>
<<set $player.flat.sleep.selfie = false>>
<<if $scene.selfie>>
<<set $player.flat.sleep.selfie = true>>
<<initRoom>>
<<if !$currentTasks['bed_heels_photo'].finished>>
<<moveTo "event_bedroom_bed_heels">>
<<else>>
<<moveTo "room_bedroom_picture">>
<</if>>
<<elseif $player.flat.sleep.penisMilk && !$player.sec_style.sex.testicle_milking>>
<<moveTo "event_penis_milk_enthusiast_confirm_1">>
<<elseif $events.hasOwnProperty('exgf_firstday_visit') || $events.hasOwnProperty('exgf_firstday_w_order')>>
<<initRoom>>
<<moveTo "room_first_night_dreams_1">>
<<elseif $npc_dog.stage && $npc_dog.location == "room_bedroom" && !$daily.dogEvent && !$scene.dogEvent>>
<<initRoom>>
<<moveTo "event_dog_bedroom_sleep_1">>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_bedroom" && !$daily.catEvent && !$scene.catEvent>>
<<initRoom>>
<<moveTo "event_cat_bedroom_sleep_1">>
<<else>>
<<initRoom>>
<<set $scene.startSleep = false>>
<<moveTo "room_dreams">>
<</if>>
<</if>>/*#
#desc: calculate and display dreams
#status: FINISHED 0.3.0.0
#ignore_spell: mx
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<<set $scene.noWake=false>>
<<set $scene.firstSleep = !$scene.startedSleep>>
<<if $scene.forceSleep>>
<<set $scene.no_dreams = true>>
<<else>>
<<if !$scene.startedSleep>>
<<if !$scene.hasOwnProperty("tuckin")>>
<<set $scene.tuckin = $player.flat.sleep.tuckin>>
<</if>>
<<set $scene.wornChastity = setup.checkItemTypeWorn("cage") && !["penis_milker","vag_milker","vag_and_penis_milker"].includes(setup.getItemFromType("cage"))>>
<<if !$scene.tuckin || $scene.tuckin && $npc_manager.flags.evil == 1 && setup.changedGenitals($player,$npc_manager, true) == "">>
<<if $scene.wornChastity && !setup.canCharRemoveChastity()>>
<<set $scene.penisMilk = false>>
<<set $player.flat.sleep.penisMilk = false>>
<<set $scene.vagMilk = false>>
<<set $player.flat.sleep.vagMilk = false>>
<</if>>
<<elseif $npc_manager.flags.evil != 1 && $npc_manager.flags.require_chastity && !$scene.wornChastity>>
<<set $scene.tuckin = false>>
<<elseif setup.changedGenitals($player,$npc_manager, true) != "">>
<<set $scene.tuckin = false>>
<<elseif $currentTasks.hasOwnProperty('task_manager_date_club') && setup.hoursToDate($now, $currentTasks.task_manager_date_club.trigger.atFoyer.time.date) < 6 && !$currentTasks.task_manager_date_club.finished>>
<<set $scene.tuckin = false>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<<if !$scene.tuckin && $scene.wornChastity && !setup.canCharRemoveChastity()>>
<<set $scene.penisMilk = false>>
<<set $player.flat.sleep.penisMilk = false>>
<<set $scene.vagMilk = false>>
<<set $player.flat.sleep.vagMilk = false>>
<</if>>
<<startSleep $player $scene>>
<<set $scene.startedSleep = true>>
<<include "equipSleepMilkers">>
<<if $player.flat.sleep.vr == "ai">>
<<addItem "vr_helmet">>
<<wearItem "vr_helmet" true>>
<<initRoom>>
<<if State.hasPlayed("event_vr_sleep_first_1") && !State.hasPlayed("event_vr_sleep_final_1") &&
State.hasPlayed("event_vr_sleep_exgf_1") &&
State.hasPlayed("event_vr_sleep_admin_1") &&
State.hasPlayed("event_vr_sleep_landlord_1") &&
State.hasPlayed("event_vr_sleep_technician_1") &&
State.hasPlayed("event_vr_sleep_manager_1") &&
State.hasPlayed("event_vr_sleep_barista_1")>>
<<moveTo "event_vr_sleep_final_1">>
<<else>>
<<moveTo "event_vr_sleep_first_1">>
<</if>>
<<elseif $npc_manager.stage >= 3 && (!$player.flags.last_fire_alarm || setup.dayDiff($now, $player.flags.last_fire_alarm) > 30) && (random(1,20) == 1 || $forceEvents) && $now.getUTCHours() >= 21 && !$scene.vr_punish && !$scene.vr_relax>>
<<set _minutes = random(60,180)>>
<<set $now = setup.advanceDate($player, $now, 'minutes', _minutes)>>
<<initRoom>>
<<finishSleep $player $scene>>
<<moveTo "event_fire_alarm_1">>
<<elseif State.hasPlayed("event_nefarious_nurse_home_email_1") && $player.flat.sleep.bondage_level > 0 && ($player.flat.sleep.penisMilk || $player.flat.sleep.breastMilk) && !State.hasPlayed("event_nefarious_nurse_home_visit_2") && ($now.getUTCHours() >= 21 || $now.getUTCHours() >= 19 && setup.hasFreeTime($now, $player, $currentTasks, 10800)) && !$scene.vr_punish && !$scene.vr_relax>>
<<initRoom>>
<<set _minutes = random(60,180)>>
<<set $now = setup.advanceDate($player, $now, 'minutes', _minutes)>>
<<moveTo "event_nefarious_nurse_home_visit_1">>
<</if>>
<</if>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<if !$inventory[$scene.shoesId].status.lock>>
<<manipulateItem $scene.shoesId 'lock' true>>
<</if>>
<</if>>
<</if>>
<<if $player.flat.sleep.vr == '' && !$player.flat.sleep.tuckin && $player.flat.sleep.bondage_level == 0 && !$player.flat.sleep.breastMilk && !$player.flat.sleep.penisMilk && !$player.flat.sleep.vagMilk>>
<<set $scene.fallAsleep = setup.fallAsleep($scene.no_nightmares)>>
<</if>>
<<if !$scene.forceSleep && $scene.fallAsleep && $scene.fallAsleep.reason == "sleepless_night">>
<<initRoom>>
<<moveTo "room_sleepless_night">>
<<elseif !$scene.forceSleep && $scene.fallAsleep && $scene.fallAsleep.reason != "none">>
<<initRoom>>
<<moveTo "room_sleepless">>
<<else>>
<<if $player.flat.sleep.tuckin && $npc_manager.flags.evil != 1>>
<<set $scene.acceptRoutine = $npc_manager.flags.cruel == 0 && $player.flat.sleep.sleep_routine > 0 && $npc_manager.anger <= 5 && $npc_manager.affection >= 3>>
<<if $scene.acceptRoutine>>
<<set _routine = $player.flat.sleep.sleep_routine>>
<<else>>
<<set _routine = 0>>
<</if>>
<<switch _routine>>
<<case 0>>
<<if $npc_manager.flags.cruel > 0>>
<<set $scene.sleep_routine = "harsh">>
<<elseif $npc_manager.anger > 5 && $npc_manager.affection < 3>>
<<set $scene.sleep_routine = "harsh">>
<<if $scene.acceptRoutine>>
<<decrementEmotion 'anger' 'npc_manager' 2>>
<<elseif $player.flat.sleep.sleep_routine == 3>>
<<decrementEmotion 'anger' 'npc_manager' 3>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<elseif $npc_manager.anger < 2 && $npc_manager.affection > 5>>
<<set $scene.sleep_routine="gentle">>
<<else>>
<<set $scene.sleep_routine="balance">>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<case 1>>
<<set $scene.sleep_routine = "gentle">>
<<case 2>>
<<set $scene.sleep_routine = "balance">>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<case 3>>
<<set $scene.sleep_routine = "harsh">>
<<decrementEmotion 'anger' 'npc_manager' 3>>
<</switch>>
<</if>>
<<if $player.flat.sleep.bondage_level > 0>>
<<setThreshold 'bondage' 'self_bondage' 'night_bondage'>>
<<set $scene.noPhone = true>>
<<if $player.flat.sleep.bondage_level == 1>>
<<applyExperience 'bondage' 15 'normal' $ALONE>>
<<elseif $player.flat.sleep.bondage_level == 2>>
<<applyExperience 'bondage' 18 'normal' $ALONE>>
<</if>>
<</if>>
<<set _makeupMess = Math.round(25+Math.random()*25)>>
<<changeMakeupMessed _makeupMess>>
<</if>>
<<if !$scene.dream>>
<<set $player.timebased.triedtosleep=0>>
<<set $scene.dream = {}>>
<<set $scene.dream.dream = "">>
<<set $scene.dream.file = ''>>
<<set $scene.dream.file2 = ''>>
<<switch $player.flat.sleep.vr>>
<<case "prim_relax">>
<<addItem "kig_vr_mask">>
<<wearItem "kig_vr_mask" true>>
<<set $scene.dream.dream = "primrose_relax">>
<<set $scene.forceSleep = true>>
<<set $scene.fallAsleep = setup.fallAsleep($scene.no_nightmares)>>
<<set $player.timebased.fatigue = 0>>
<<applyStress -30>>
<<spendWillpower 1>>
<<setTmpEffect 'vr_relax'>>
<<applyExperience 'bondage' 15 'normal' $ALONE>>
<<case "prim_punish">>
<<addItem "kig_vr_mask">>
<<wearItem "kig_vr_mask" true>>
<<set $scene.dream.dream = "primrose_punish">>
<<set $scene.forceSleep = true>>
<<set $scene.fallAsleep = setup.fallAsleep($scene.no_nightmares)>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'skip' $ALONE>>
<<set $player.timebased.fatigue = Math.floor($player.timebased.fatigue/2)>>
<<spendWillpower 2>>
<<applyStress 20>>
<<setTmpEffect 'vr_punish'>>
<<applyExperience 'bondage' 15 'normal' $ALONE>>
<<default>>
<<set $scene.dream.dream = setup.getDream($player, $scene.no_nightmares)>>
<</switch>>
<<set $scene.dream.wetdream = false>>
<<if ($scene.dream.dream != 'normal') && (setup.getItemFromType('cage')=="") && ($player.timebased.horny>=25) && (random(100)>75) && $player.flat.sleep.penisMilk>>
<<set $scene.dream.itemoverpenis = setup.checkTopBodySlot('penis','bottom')>>
<<playerOrgasm>>
<<if $scene.dream.itemoverpenis != "">>
<<changeItemStatus $scene.dream.itemoverpenis 'cumsoaked' '["set",100]'>>
<</if>>
<<set $scene.dream.wetdream = true>>
<</if>>
<<if !$scene.dream>>
<<set $scene.dream = {}>>
<</if>>
<<switch $scene.dream.dream>>
<<case 'cage'>>
<<set $scene.dream.file = './video/chastity_01.mp4'>>
<<case 'cum'>>
<<set $scene.dream.file = './video/swallow_cum_1.mp4'>>
<<case 'multifetish'>>
<<set $player.flags.dreams.multifetish = true>>
<<case "stressed">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_stress'
0
'event_psychiatrist_session_stressed'
false
>>
<<default>>
<<if !$options.epilepsy>>
<<set $scene.dream.file = './video/stormcloud.mp4'>>
<</if>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "Dream">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<if !$scene.forceSleep && $scene.tuckin && $scene.firstSleep && $npc_manager.flags.evil != 1>>
<<if $player.body_ref.penis>>
<<if $player.flat.sleep.breastMilk && $player.flat.sleep.penisMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk" "milk_cream">>
<<elseif $player.flat.sleep.breastMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk">>
<<elseif $player.flat.sleep.penisMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream">>
<<else>>
<<createStackedImage "bedroomMilking">>
<</if>>
<<else>>
<<if $player.flat.sleep.breastMilk>>
<<createStackedImage "bedroomMilking" "vagina" "milk">>
<<else>>
<<createStackedImage "bedroomMilking" "vagina">>
<</if>>
<</if>>
<<elseif $scene.no_nightmares || $scene.no_dreams>>
<<elseif $scene.dream && $scene.dream.file>>
<<createAnimatedBGR $scene.dream.file>>
<<else>>
<<if _file2>>
<<createAdvBGR $scene.dream.file $scene.dream.file2>>
<<elseif $scene.dream && $scene.dream.file>>
<<createAdvBGR $scene.dream.file>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.firstSleep>>
<<if $scene.quickSleep>>
<<if $scene.tuckin>>
<<if $npc_manager.flags.evil == 1>>
You attempt to call <<=setup.getNpcName('npc_manager', 'formal')>> for a tuck-in, but she does not pick up.<br>
<br>
<<printThought "I guess she's too busy being evil right now to take care of me like this...">><br>
<br>
Feeling very alone, you lay back and sleep.
<<elseif setup.changedGenitals($player,$npc_manager, true) != "">>
You attempt to call <<=setup.getNpcName('npc_manager', 'formal')>> for a tuck-in, but it goes straight to voicemail.<br>
<br>
"@@.npc_manager;I am currently in a meeting, if you would like to schedule time please contact my Secretary during normal business hours.@@"
<<elseif $currentTasks.hasOwnProperty('task_manager_date_club') && setup.hoursToDate($now, $currentTasks.task_manager_date_club.trigger.atFoyer.time.date) < 6 && !$currentTasks.task_manager_date_club.finished>>
You attempt to call <<=setup.getNpcName('npc_manager', 'formal')>> for a tuck-in, but are instead greeted with an annoyed voice over the phone.<br>
<br>
"@@.npc_manager;A tuck-in? I thought you were to accompany me to <<printShopName 'sex_club'>> this evening? Very disappointing...@@" she hangs up.
<<else>>
You call <<=setup.getNpcName("npc_manager","formal")>> and she tucks you in for the night.
<<if $player.flat.sleep.sleep_routine == 0>>
<<if $npc_manager.flags.cruel > 0>>
Her lips turn up for a cruel smile as she programs a harsh and painful routine for you.
<<else>>
She programs you a <<=$scene.sleep_routine>> routine based on your recent behaviour.
<</if>>
<<else>>
<<if $scene.acceptRoutine>>
She accepts your request and leaves you with a <<=$scene.sleep_routine>> routine for the night.
<<elseif $player.flat.sleep.sleep_routine == 3>>
She accepts your request with some measure of amusement. "@@.npc_manager;I had planned something harsh, in light of your recent behaviour. But it seems you already anticipated what you deserved. Good girl.@@"
<<else>>
In light of your recent behaviour, she rejects your request of sleep routine, instead programming something harsh and painful to punish your recent transgressions.
<</if>>
<</if>>
Bound and stimulated by your milking devices, you drift off to sleep.
<</if>>
<br><br>
<<elseif $npc_manager.flags.evil != 1 && $player.flat.sleep.tuckin && !$scene.tuckin && $npc_manager.flags.require_chastity && !$scene.wornChastity>>
Just before calling <<=setup.getNpcName("npc_manager","formal")>> you remember your lack of chastity and, realising the potentially dire consequences of her seeing you in such a state, you tuck yourself in on your own.<<if $player.flat.sleep.breastMilk || $player.flat.sleep.penisMilk>>strapping yourself in for a nocturnal milking routine, drifting off to sleep to the pumping stimulation<<if $player.flat.sleep.penis_pain>> and tormenting pain<</if>> of your various devices.<</if>><br>
<br>
<<elseif $player.flat.sleep.breastMilk || $player.flat.sleep.penisMilk>>
You strap yourself in for a nocturnal milking routine, drifting off to sleep to the pumping stimulation<<if $player.flat.sleep.penis_pain>> and tormenting pain<</if>> of your various devices.<br>
<br>
<<elseif $player.flat.sleep.bondage_level == 1>>
Lying down in your bed, you <<if $player.flat.sleep.vagMilk>>buckle the vaginal "milker" between your legs and <</if>>secure your limbs one at a time, taking a deep breath before you click the final lock closed — there's no getting out till morning, but you snap the lock shut before you can think twice, letting out a held breath as you settle back for your bound slumber.<br>
<br>
<<elseif $player.flat.sleep.bondage_level == 2>>
Lying down in your bed, you <<if $player.flat.sleep.vagMilk>>buckle the vaginal "milker" between your legs and <</if>>slide into the auto-bind sleepsack, lying back as the restraints tighten around you until you are completely helpless till morning. You settle into your restraints and relax into your bound slumber.<br>
<br>
<</if>>
<</if>>
<<else>>
You sleep...<br>
<br>
<</if>>
<<if !$scene.dream>>
/% this prevents spam in the console when there isn't a dream/we're jumping to another page anyway %/
<<set $scene.dream = {}>>
<</if>>
<<switch $scene.dream.dream>>
<<case "primrose_relax">>
Rather than dreams of your own, you experience one of the programmed creations of <<=setup.getNpcName("npc_primrose","formal")>>. You spend the night adrift in the virtual sea of rose liquid and rainbow bubbles. You recount your fears and anxieties of the day to the omnipotent narrator and watch as they sink into the abyss and far from view. You are rewarded by a wave of warm bubbles that scrub away your negative thoughts and leave you feeling refreshed and ready for the day ahead.
<<if setup.getWillpower() == 0>>
<br><br>
<<include "calcSleepTime">>
<<set $scene.noWake=true>>
[<<moveTo "event_primrose_home_vr_relaxation_ending_1" "Awaken." $scene.sleepTime>>]
<</if>>
<<case "primrose_punish">>
Rather than dreams of your own, you experience one of the programmed creations of <<=setup.getNpcName("npc_primrose","formal")>>.<br>
<br>
You spend the nights in Mx. Nightingale's classroom writing lines on the board. Each line reminds you of your place in the corporate hierarchy and reaffirms your dedication to the company's mission statement. You are rewarded for your obedience and dedication by the latex enthusiast teacher who coos reinforcement in your ear while stroking your body with their hands. You leave the classroom a polished corporate drone ready to obey<<if $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>... if slightly saddened that it is the weekend, and you cannot actually go to work<<else>>, and eager to work another day at your glorious company<</if>>.
<<if setup.getWillpower() == 0>>
<br><br>
<<include "calcSleepTime">>
<<set $scene.noWake=true>>
<<if $npc_manager.stage < 5>>
[<<moveTo "event_primrose_home_vr_punishment_ending_1" "Awaken." $scene.sleepTime>>]
<<else>>
[<<moveTo "event_primrose_home_vr_punishment_ending_alternate_1" "Awaken." $scene.sleepTime>>]
<</if>>
<</if>>
<<case "stressed">>
You may be asleep, but it is far from restful — a nightmare of stress as you find yourself replaying the burdens of your day to day life. All the changes, all the burdens, it all feels too much.<br>
<br>
<<printThought "This is becoming too much... I need some help, but what?">>
<<case 'cage'>>
You wake up from a very long nightmare. You dreamt that you lost your girlfriend <<=setup.getNpcName('npc_exgirlfriend', 'first')>>, your job and your dignity to your new manager <<=setup.getNpcName('npc_manager', 'formal')>>, by being feminised, though, strangely enough, not against your will. But then you wake up and everything is okay. You're back in your comfortable flat, and your girlfriend lies next to you in bed, looking at you with a yearning glance. You know what to do. It's time to make her happy with your enormous <<getWordPenis true>>.<br>
<br>
<<printThought "You know that's not true, your <<getWordMyPenis false>> would have never satisfied her!" 40>><br>
<br>
You pull down your boxer shorts to reveal your <<glitchText "giant love hammer">>, your <<glitchText "normal sized penis">>.<br>
<br>
<<printThought "Don't lie to yourself!" 40>><br>
<br>
You pull up your pink, frilly <<if $fetish.sissy>>sissy <</if>>maid uniform to reveal crotchless lace panties, within which your <<getWordMyPenis false>> <<if setup.checkItemTypeWorn("cage") && setup.isCage() || $player.flags.chastity_style == "cage">>sits nicely caged<<else>>is safely shielded by your chastity belt<</if>>, like it's supposed to be. You cannot remember a time where your <<getWordMyPenis false>> wasn't locked up. It is always kept safe and secure since you're not going to use it to pleasure anyone else anyway.<br>
<br>
<<printThought "Now I remember. My sole purpose is to serve others. My own pleasure is not of importance." 40>><br>
<br>
This assertion echoes through your head as you fall to your knees, ready to serve all the <<if !$options.fem>>men and <</if>>women that appear in front of you, serve them like the little <<if $fetish.sissy>>sissy <</if>>whore you are. Your first customer unzips <<his>> pants, to reveal <<his>> <<getWordPenis>> already glistening with precum. <<He>> nods, indicating for you to bend over and present your <<getWordAnus>>. You do as you are told and bend over, spreading your asscheeks, giving access to your eager and craving rear. You feel the tip of this giant <<getWordPenis>> pressing against your sphincter. With brute force and only <<his>> precum as lube <<he>> thrusts, pushing <<his>> way into your...
<<case 'cum'>>
You're back at the 2nd from the last toilet stall of the Usual Place. The location seems familiar and yet somehow different from your last visit. You're on your knees as you see a gloryhole appear a little bit above your head. And then a second one. And another one, each with a thick cock sticking through. While you're wondering where these gloryholes come from you realise that the door of the room is now a wall sprouting gloryholes of its own, surrounding you and closing you inside the room.
<br><br>
The holes started to leak thick, gooey, hot, strong smelling cum. Drops become a trickle. A trickle becomes a shower, and a shower becomes a torrent. You know what you <<glitchText "have">> to do. You know what you <<glitchText "want">> to do. If you don't want to drown in here.
<br><br>
You start licking the cum off the floor. At first you are tentative, but the flow is unceasing so you speed up, licking faster, like it's the best thing you've ever had. Like you were close to dying of thirst, and cum was the only thing capable of saving you. You play with the cum on your tongue, savour its taste, relish its thickness, indulge in its texture. You know your reason for being, it is to be a cumbucket, a cumwhore. Your stomach is full and your belly button pops out and still you continue to lick and lick. Your belly starts to grow larger and larger. Before you realise you've licked every last drop of cum from the toilet floor. Your belly looks like you're 9 months pregnant. But you want more. You crave more. You need more.<br>
<br>
<<printThought "Please, I need more cum!" 40>><br>
<br>
And as if your prayers have been answered by a higher force, a giant thirty centimetre babymaker appears through the gloryhole before you. You try to reach out only to find your hands are tied behind your back. You cannot touch this yummy looking meat hammer. You know what to do. You lick your lips and shuffle forward, moving closer to the head that is glistening with precum and part your lips. Your tongue seeks out its target with the precision of a surgeon. You are millimetres away from your destination, your destiny. Your purpose. You just need to...
<<case 'plug'>>
In your dreams you are bent over, your ass raised high in the air as someone fucks you. A hand on the back of your head pushes you down, keeps you from even looking back to see who it is that is plowing your ass. It could be <<if $options.fem>>anyone<<else>>a man, a woman<</if>>, hell, you aren't even sure if it might be multiple people, the cock in your rear occasionally withdrawing fully only to plunge back in feeling slightly different.<br>
<br>
At first you try to struggle, but eventually just surrender to the feeling of the cock going in. And out. In. And out, your perception narrowing until all you can feel is your ass filled and fucked in a never-ending plowing.<br>
<br>
<<if $scene.bondage>>
Blinking awake, you find yourself back in bondage, grinding the plug against the bed in desperate need for more penetrating stimulation. You moan as you strain against your restraints, trying not to think about the <<=setup.getItemTypeName('plug')>> inside you and the way it is pressing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>...
<<else>>
Blinking awake, you find that you are holding onto the plug in your rear, rocking it back and forth with one hand in your sleep. Blushing you pull your hand away, the <<=setup.getItemTypeName('plug')>> seating back into your hungry hole. You try to ignore the delicious gaping, attempting not to think about the erotic pressure against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>...
<</if>>
<br><br>
<<printThought "I wish someone was fucking me right now..." 40>>
<<case 'bondage'>>
/% note, position inspired by bondage_hogtie.gif %/
In your sleep, you dream. In your dreams, you find yourself unable to move. <<if setup.getTotalValue('bondage') < 7>>The feeling of helplessness is scary and you thrash around in your dream state to figure out what is going on.<<else>>You are used to the feeling of being restrained, enjoying the restrictive feeling of being figuratively bound in your own mind you try to figure out how you have been tied.<</if>><br>
<br>
Inspecting your situation, you find that you are in a <<if setup.getTotalValue('bondage') > 15>>deliciously tight <<elseif setup.getTotalValue('bondage') > 10>>tight <</if>>hogtie.
<<if setup.getTotalValue('bondage') > 10>>
Your arms are encased in a tight leather armbinder, which is in turn attached by short links to your <<if setup.getTotalValue('heels') > 15>>ballet-boot equipped <<else>>pointed <</if>>and cuffed feet.
<<if setup.getTotalValue('bondage') > 15>>
Making your position even more severe, there is a taut strap running from the crown of your head to your ankles. Pulled very tight the result is that your head is pulled back, forcing you to look forward, your chest raised slightly off the ground. The leather straps that make up your head harness cover your head, a panel gag <<if setup.getTotalValue('penis') > 10>>with an internal pecker gag<<else>>with an internal pad<</if>> dangling ominously from the side of your face.
<</if>>
<<else>>
Your wrists and ankles are individually cuffed and then chained together. Although not painfully tight it is quite sufficient to render you helpless.
<</if>>
You look around as mirrors fade into existence around you, reflecting your image back at you to grant a view of your bound form from every angle.<br>
<br>
The sight of your <<if setup.getTotalValue('feminization') > 10>>feminine <<else>>helpless <</if>>bound form is <<if setup.getTotalValue('bondage') > 5>><<if setup.getTotalValue('bondage') > 15>>extremely arousing <<elseif setup.getTotalValue('bondage') > 10>>arousing <<elseif setup.getTotalValue('bondage') > 5>>intriguing<</if>>. The longer you stare at yourself, at the way the leather bonds press into your flesh and highlight your form, the more <<if setup.getTotalValue('bondage') > 10>>lusty you feel<<else>>curiosity becomes arousal<</if>>. <<else>>intimidating. Despite your fear you cannot help but look at yourself, marveling at how just a few pieces of leather is sufficient to render you helpless. The longer you stare the more fear turns to arousal.<</if>><br>
<br>
Straining experimentally against your bonds, you find them quite secure, the best you can do is rock a bit and shuffle side to side. The movement causes you to grind against the ground under you, the friction combining with the sights surrounding you to have you very aroused. More and more enjoying your helpless situation your lips part in a soft moan.<br>
<br>
<<if setup.getTotalValue('bondage') > 10>><<printThought "Mmmm, being restrained feels so nice...">><<else>><<printThought "What, why am I dreaming of bondage?">><</if>>
<br><br>
In an instant, you find your opened mouth occupied, the initial separation of your jaw widened as your lips are spread around a gag. Biting down and looking at your reflection, you find that you are now wearing
<<switch setup.getTotalValue('bondage')>>
<<case 1 2 3 4 5>>
a basic ball gag, the <<if setup.getTotalValue('feminization') > 10>>bright pink<<else>>classic red<</if>> ball framed by your lips, held in place by a single strap around your head.
<<case 6 7 8 9 10>>
a harness gag, a large bit occupying your mouth while leather straps run over and around your head to secure everything.
<<case 11 12 13 14 15>>
a trainer gag holding a large ring gag between your teeth to spread your mouth wide and inviting. Leather straps run up over your head and under your chin for added security, there is no way you'll be spitting this out.
<<case 16 17 18 19 20>>
the panel gag that had hung so portentously from your head harness. Now it is pressed tight over your lips, its internal <<if setup.getTotalValue('penis') > 10>>dong filling your mouth, a squat simulacrum as the real thing you love so much. On reflex you quietly suck on it, wishing it <<if setup.getTotalValue('cum') > 10>>could serve you up some delicious cum.<<else>>was the real thing.<</if>><<else>>pad filling your mouth and stifling any sound you might make.<</if>>
<<default>>ERROR! bondage stat: <<=setup.getTotalValue('bondage')>> out of range!
<</switch>>
<br><br>
<<if setup.getTotalValue('bondage') > 10>><<printThought "Mmmm, a gag is just what I needed, being bound is the best.">><<else>><<printThought "What happened, how much more restrictive can this get?">><</if>><br>
<br>
The gag's appearance is utterly miraculous and you look around, but find no sign of anyone else. It is just you; alone with naught but your reflection. Your brief shock fades into arousal as you can do little save stare at your bound form and grind against the floor.<br>
<br>
<<switch setup.getTotalValue('bondage')>>
<<case 1 2 3 4 5>>
You cower in fear of additional restraints, though this somehow only makes you more aroused. Trying to move across the floor in a futile attempt to escape despite there being nothing around you save the unreachable mirrors.<br>
<br>
It isn't long before your struggles tire you out, though you find your arousal unaffected by your exhaustion.<br>
<br>
<<printThought "Why does being tied up make me feel... so good?">>
<<case 6 7 8 9 10>>
Despite your restrictive position and the mysterious, invisible force acting to make it moreso you can't help but be aroused by the combination of your restraints and seeing yourself in such.<br>
<br>
<<printThought "How can this feel so good? I wonder how this would feel in real life...">>
<<case 11 12 13 14 15>>
The gag filling your mouth is like the perfect cherry on your bondage sundae. You waggle your tongue out past your ring gag spread lips <<if setup.getTotalValue('penis') > 10>>wishing a real cock would appear to thread through your forced-open face-hole.<<else>>enjoying the naughty paradox that is your helpless availability.<</if>><br>
<br>
<<if setup.getTotalValue('whoring') > 10>><<printThought "Hmmm, I wonder how a gag like this would be for when I'm working at the glory hole?">><<else>><<printThought "Mmmm, this is nice...">><</if>>
<<case 16 17 18 19 20>>
You are in heaven, the tight restraints near perfection in their restrictive embrace. Breathing through your nose you let out a gag-muffled moan, your eyes fluttering as you submit to the near totality of your bondage.<br>
<br>
The same invisible force that insert your gag returns again, a steep posture collar appearing around your throat to raise your chin even higher than the tight strap running from ankle to crown is already enforcing.<br>
<br>
<<printThought "Thank you... oh, I love this...">>
<<default>>ERROR! bondage stat: <<=setup.getTotalValue('bondage')>> out of range!
<</switch>>
<br><br>
Almost lost in your bound bliss, you nearly don't notice when a blindfold slips over your face, plunging you into total, helpless darkness. You hear the unmistakable click, click of stiletto heels approaching...
<<case 'heelslow'>>
You toss fitfully, the throbbing pain in your calves and fire from your arches through your toes, distracting you and keeping you from falling asleep. No matter how you kick the infernal footwear never budge, even clawing at the straps for relief budging them not a bit — you are locked in till morning.<br>
<br>
Whimpering in pain you flop around, trying to ignore your body from the waist down and get some sleep...
<<case 'heelsmid'>>
You toss fitfully, the strained ache from your knees down a constant torment. You know by now to even attempt to remove the heels before morning is useless so you don't even try. You swear you can feel your tendons shrinking, your body re-shaping itself around wearing steep footwear.<br>
<br>
Stretching out you turn over and try to sleep as best you can...
<<case "multifetish">>
As soon as you fall asleep you find yourself in a new, ethereal place. Though you seem to be floating in mid-air stringent bondage has you all but immobile, a jaw-stretching ring gag and spreader bar ensuring that all of your holes are available for use.<br>
<br>
And used they are, you haven't even finished cataloging your situation when the first cock thrusts into your ass, as second appearing before you as your head is treated like an onahole. Thus starts a seemingly endless gang-bang as nary a second passes that you are not taking it hard and deep from both ends.<br>
<br>
If being fucked by a steady stream of partners was not enough you are also constantly flogged, spanked and slapped, the pain only serving to amp up your arousal even further, only interrupted on the occasion you feel the sharp heels of someone seeming to walk over your body, the subsequent moments of licking and worshipping a foot your only "break" from tongue-tiring or throat-pounding oral.<br>
<br>
Seemingly at the centre of this private realm of debauchery the sex draws out, your only sustenance the cum pumped into you<<if $fetish.piss>>, or the occasional mouthful of piss that you are forced to swallow hot from the source<</if>>.<br>
<br>
With no choice but to surrender to this "fantasy" you are finally interrupted by the sound of your alarm. Blinking awake to find yourself "back" in your bed you feel a twinge of regret that the heavenly dream has come to an end, but that feeling is soon replaced with one of excitement. After all, a new day means opportunity to indulge all of your favourite fetishes in the real world leaving you awaking with eager anticipation for what fresh depravity you will get to experience next.
<<default>>
<<if $scene.no_nightmares>>
Pleasant, but unremembered, dreams grant you a restful sleep; all nightmares warded off by your furry friend.
<<elseif $scene.no_dreams>>
Your sleep is deep and dreamless.
<<else>>
Strange dreams plague your sleep.
<<set _rng = random(0,8)>>
<<switch _rng>>
<<case 0>>
But you're unable to remember them in the morning.
<<case 1>>
You think you left your umbrella back at the train station, but a dragon-like creature always prevented you from going back since it's Tuesday, and everyone knows war is on Tuesday!
<<case 2>>
Not knowing where you are, you ask a random stranger where you are, before you realise that the person is made of pudding. Of course, you remember, that it is rude to not taste them, but you forgot your spoon at home. <<printThought "Too bad">>, you think, while staring at them longingly, unable to taste them.
<<case 3>>
There is a screaming sun on the horizon, right next to the moon, who looks oddly calm about the whole situation. You think about asking him how he keeps his cool, but he simply counters that question with "@@.generic_male1;Did you just assume my gender?@@"<br>
<br>
You answer with "@@.pc;Yes.@@" He states that he is just making sure, since it's not Tuesday.
<<case 4>>
You dream about driving. Backwards. It does not go well for you. Again.
<<case 5>>
You dream about driving. There is a good reason why you don't do that anymore.
<<case 6>>
You dream about walking. But you have wheels instead of legs. It does not end well for everyone else. Again.
<<case 7>>
You think dreams have hidden messages. Then you wake up.
<<case 8>>
You enter a long, dark room that resembles your bedroom. The lights don't work and there is an eerie atmosphere lingering. You move forward a few steps, but as you turn around the door seems to be far, far away. You pass by a tent made of whipped cream, where your ex-girlfriend <<=setup.getNpcName('npc_exgirlfriend', 'first')>> lays.<br>
<br>
"@@.npc_exgirlfriend;Don't go any further, only death awaits those who confront the ghost with the fly!@@"<br>
<br>
Not listening to her, you advance further into the dark forest that used to be your bedroom. You see a glowing figure far in the distance, closing in fast.<br>
<br>
"@@.npc_barista;Behold, for I am the Ghost with the fly!@@" the Ghost proclaims, while circled by a single, small fly.
<</switch>>
<</if>>
<<if setup.checkItemTypeWorn("plug") && setup.getTotalValue("anal") >= setup.getEffectivePlugSize() && setup.getTotalValue("anal") > 5 && setup.getTotalValue("bimbofication") > 5>>
<br><br>
Your ass is so accustomed to being filled your plug no longer impacts your slumber<<if setup.getTotalValue("anal") < 20>>, perhaps a sign you could upgrade?<<else>>.<</if>>
<<elseif setup.getTotalValue("anal") < setup.getEffectivePlugSize()>>
<br><br>
The plug in your rear stretches you out all night long... why are you sleeping like this?
<<elseif setup.checkItemTypeWorn("plug")>>
<br><br>
You keep thinking about the plug in your ass... what does it say about you that you would sleep like this?
<</if>>
<<if !$scene.forceSleep>>
<<if ($player.flat.sleep.bondage_level > 0 || $player.flat.sleep.penisMilk || $player.flat.sleep.breastMilk || $player.flat.sleep.vagMilk)>>
<br><br>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>Feet en pointe thanks to your bed heels, you<<else>>You<</if>> sleep rigidly restrained,
<<if $player.flat.sleep.breastMilk && $player.flat.sleep.penisMilk>>
the tubes connected to your breast cups and the "milking" device between your legs winding through your bondage, constantly stimulating your body as you sleep.
<<elseif $player.flat.sleep.breastMilk>>
twin breast cups irremovable and pumping away constantly.
<<elseif $player.flat.sleep.penisMilk>>
the "milking" device between your legs softly pumping away.
<<else>>
cuffed and bound to the bed until morning.
<</if>>
<<elseif setup.checkItemTypeTag('shoes', ['bedheels']) && setup.getTotalValue("heels") >= setup.getItemObjFromType("shoes").heels.difficulty>>
<br><br>
If anyone were watching, they would see you sleeping quite adorably. Curled up on your side your feet are harshly pointed by your heels, but you are used to it, the severe angle almost comfortable and no longer impacting your slumber.
<</if>>
<</if>>
<</switch>>
<br><br>
<<if !$scene.noWake>>
<<include "calcSleepTime">>
<<if $scene.sleepTime < 1800>>
<<moveTo "room_wake_up">>
<</if>>
[<<moveTo "room_wake_up" "Continue to sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div><<if $player.clock["workweek"].h >= 8>>>
<<set $player.clock["workweek"].h = 7>>
<<set $player.clock["workweek"].m = 50>>
<</if>>
<<if setup.isWorkDay($now) && ($now.getUTCHours() > $player.clock["workweek"].h || $now.getUTCHours() == $player.clock["workweek"].h && $now.getUTCMinutes() > $player.clock["workweek"].m)
|| !setup.isWorkDay($now) && ($now.getUTCHours() > $player.clock["weekend"].h || $now.getUTCHours() == $player.clock["weekend"].h && $now.getUTCMinutes() > $player.clock["weekend"].m)>>
<<set _tomorrow = setup.setNextDate($now, 1, 1, 0)>>
<<if setup.isWorkDay(_tomorrow)>>
<<if $now.getUTCHours() >= $player.clock["workweek"].h && $now.getUTCHours() < 12>>
<<set _morning = setup.setNextDate($now, 0, $now.getUTCHours() + 3, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, $player.clock["workweek"].h, $player.clock["workweek"].m)>>
<</if>>
<<else>>
<<if $now.getUTCHours() >= $player.clock["weekend"].h && $now.getUTCHours() < 12>>
<<set _morning = setup.setNextDate($now, 0, $now.getUTCHours() + 3, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, $player.clock["weekend"].h, $player.clock["weekend"].m)>>
<</if>>
<</if>>
<<else>>
<<set _tomorrow = setup.setNextDate($now, 0, 1, 0)>>
<<if setup.isWorkDay(_tomorrow)>>
<<set _morning = setup.setNextDate($now, 0, $player.clock["workweek"].h, $player.clock["workweek"].m)>>
<<else>>
<<set _morning = setup.setNextDate($now, 0, $player.clock["weekend"].h, $player.clock["weekend"].m)>>
<</if>>
<</if>>
<<set $scene.sleepTime = setup.secondsToDate($now,_morning)>>/*#
#desc: dreamless sleep + restlessness
#status: FINISHED 0.3.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('forced_sleep_event')>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<<set $player.timebased.triedtosleep+=1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', $scene.fallAsleep.time)>>
<<set $now to setup.sleepMin($player,$now,$scene.fallAsleep.time,true)>>
<<finishSleep $player $scene>>
<</if>>
<<set $player.location to "Sleepless">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<if $player.flat.sleep.bondage_level == 0>>
<<createAnimatedBGR "./video/sleepless.mp4">>
<<else>>
<<createAnimatedBGR "./video/sleepless_no_flash.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.flat.sleep.bondage_level > 0>>
You toss and turn, or rather, you try, your night-time restraints subduing your movement to little more than straining against your bondage.<br>
<br>
<<if $player.flat.sleep.penisMilk && $player.flat.sleep.breastMilk>>
All three of your milking devices continue to pump away, the stimulation distracting even as the rhythmic cycling of it acts to lull you to sleep.<br>
<br>
<<elseif $player.flat.sleep.breastMilk>>
The cups attached to your breast softly suck away, the pump itself quiet enough not to distract you as you not to let the constant stimulation keep you from sleep.<br>
<br>
<<elseif $player.flat.sleep.penisMilk>>
The milking device attached between your legs is a constant distraction, yet no matter how you hump against it you can gain no more stimulation than its algorithms choose to dole out. Whimpering slightly at the constant drain you try to ignore it and just sleep.<br>
<</if>>
<<if setup.getTotalValue("bondage") > 10>>
<<if setup.getTotalValue("bondage") > 15>>
The way the restraints hold you in place, locked until morning makes you feel blissfully safe and secure.
<<else>>
The pleasure of being so helplessly restrained steadily grows and you sigh in contentment.
<</if>>
With a final strain to confirm that the restraints are as secure as you dream you settle back and fall peacefully to sleep.<br>
<br>
[<<moveTo "room_dreams" "Try to fall asleep again." 0 "<<set $scene.forceSleep = true>>">>]
<<else>>
<<if setup.getTotalValue("bondage") > 5>>
You strain against your bondage, but there will be no release until morning. A part of you is excited by this fact, which scares you, yet there is nothing you can do about it save try to fall asleep.<br>
<br>
[<<moveTo "room_dreams" "Try to fall asleep again." 0>>]
<<else>>
You try to shift into a more comfortable position, but the restraints hold fast.<br>
<br>
<<printThought "What's wrong with me, why did I do this to myself?">><br>
<br>
The room is silent and there is no answer as you try again to fall asleep.<br>
<br>
[<<moveTo "room_sleepless_night" "Try to fall asleep again." 0>>]
<</if>>
<</if>>
<<else>>
You toss and turn sleeplessly in your king size bed, without being able to find any sleep.
<<switch($scene.fallAsleep.reason)>>
<<case 'sissy'>>
You try to fall asleep, but your frilly, <<if $fetish.sissy>>sissy <</if>>sleepwear proves a distraction.<br>
<br>
<<printThought "Who'd have thought something could be TOO soft to sleep in?">>
<<case 'female'>>
You try to fall asleep, but your sleepwear proves a distraction.<br>
<br>
<<if setup.getTotalValue("feminization") < 10 && $player.sec_style.body.name == "">>
<<printThought "This being designed for girls makes it feel weird, after all I'm a dude, right?">>
<</if>>
<<case 'male'>>
You try to fall asleep, but your masculine night clothes rub against you in a distracting manner.<br>
<br>
<<printThought "These clothes feel strangely rough, how did I never notice this before?">>
<<case 'naked'>>
You try to fall asleep, but your nakedness proves to be a distraction.<br>
<br>
<<printThought "The sheets are really irritating, I should really dress properly for bed.">>
<<case 'underwear_male'>>
You try to fall asleep, but things don't feel right.<br>
<br>
<<printThought "I should really get proper night clothes, this men's underwear is uncomfortable...">>
<<case 'no_plug'>>
You try to fall asleep, but you can't stop trying to finger your empty hole. You yearn to be plugged, to feel your posterior properly pacified, packed and stretched.<br>
<br>
<<printThought "I need to be plugged...">>
<<case 'horny'>>
You try to fall asleep, but you are just too horny to drift off.
<<case 'cage'>>
The <<=setup.getItemTypeName('cage')>> encasing your <<getWordMyPenis false>> makes it impossible for you to find a comfortable position to sleep in.
<<if $scene.fallAsleep.chance < 33>>
Maybe you should simply try to fall asleep again, you're almost used to it...
<<elseif $scene.fallAsleep.chance < 66>>
Maybe you should think about a different solution, you're still not used to it <<glitchText "as much as you'd like to be...">>
<<elseif setup.checkItemTypeWorn("cage") && !setup.checkItemOwned(setup.getItemObjFromType('cage')['lockable'][1])>>
Maybe giving up the key was a mistake, you're not used to it at all; unfortunately you have little alternative, but to lie here and suffer.
<<else>>
Maybe you should take it off over the night, you're not used to it at all. This way you're not getting any sleep at all.
<</if>>
<br><br>
<<printThought "If I'm going to sleep like this, I need to embrace total submission — or learn to love pain and restraints.">>
<<case 'milker'>>
The tormenting milking device pumping away on your <<getWordMyPenis false>> is too much for you to handle.<br>
<br>
<<printThought "If I'm going to sleep like this, I need to embrace total submission — or learn to love pain and restraints.">>
<<case 'plug'>>
The <<=setup.getItemTypeName('plug')>> in your <<getWordAnus false>> makes it impossible for you to find any position to sleep in.
<<if $scene.fallAsleep.chance < 33>>
Maybe you should simply try to fall asleep again, you're hardly feeling the plug anymore.
<<elseif $scene.fallAsleep.chance < 66>>
Maybe you should think about a different solution, you're still not used to it <<glitchText "as much as you'd like to be...">>
<<else>>
Maybe you should remove it over the night, you're not used to it at all. This way you're not getting any sleep at all.
<</if>>
<</switch>>
<br><br>
[<<moveTo "room_bedroom" "Stand up again." 0 "<<set $player.cutscene.lockinventory = false>><<include 'removeGenitalMilkers'>><<if setup.isItemEquipped('breast_milker')>><<removeItem 'breast_milker' true>><<deleteItem 'breast_milker'>><</if>>">>]<br>
[<<moveTo "room_dreams" "Try to fall asleep again." 0>>]
<</if>>
</div>/*#
#desc: spent the entire night tossing and turning
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.triedtosleep+=1>>
<<set $now = setup.sleepClock($player,$now)>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
Your alarm blares and you squint in annoyance.<br>
<br>
<<printThought "Morning, already? But I never fell asleep! Maybe I need to do something about my sleeping arrangements...">><br>
<br>
[<<moveTo "room_wake_up" "Ugghhh." 0 "<<set $player.cutscene.lockinventory = false>><<set $scene.night_sleep=false>>">>]
</div>/*#
#desc: fix sleep clothing set
#status: RELEASED 0.8.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
You start to change into your planned bed attire, but it's quickly clear that you weren't thinking very well and that what you planned was very much not appropriate to sleep in. You skip putting on the out of line items and feel much more optimistic about having a good night's sleep.<br>
<br>
<<if setup.checkSleepWear() != "not_sleepwear">>
[<<moveTo "event_bed_root" "Go to bed properly." 0 "<<set $player.cutscene.lockinventory = true>><<set $player.cutscene.reason='...'>><<set $scene.change=false>>">>]<br>
<<else>>
[@@.link_locked;No, I don't think what I'm wearing is quite bed-appropriate, I should change if I'm going to go to bed.@@]<br>
<</if>>
[<<moveTo "room_bedroom" "Back to your bedroom." 0>>]
</div>/*#
#desc: forced to sleep
#status: RELEASED 0.8.1.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($scene.beforetasklocation.last(), 'noforcesleep')>>
<<initRoom>>
<<set _beforetasklocation = $scene.beforetasklocation.pop()>>
<<if $scene.continueTaskTime>>
<<set $now = setup.advanceDate($player, $now, 'seconds', $scene.continueTaskTime)>>
<</if>>
<<moveTo _beforetasklocation>>
<<else>>
<<set $player.timebased.fatigue = Math.max($player.timebased.fatiguemax*.75, $player.timebased.fatigue+20)>>
<</if>>
<<if $events.hasOwnProperty("forced_sleep_event")>>
<<removeEvent 'forced_sleep_event'>>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
The drugs in your system seem to catch up to you all at once, and your energy levels take a dive.<br>
<br>
<<if setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
You stagger into the bedroom, desperate for sleep.
<<else>>
You somehow stagger home, stumbling through your flat and into your bedroom.
<</if>>
<br><br>
[<<moveTo "event_bed_root" "Crash." 0 "<<set $player.timebased.forceSleepCounter = 0>><<set $scene.forceSleep=true>><<set $scene.change=true>><<set $scene.no_dreams = true>><<applyFatigue -30>>">>]
</div>/*#
#desc: configure sleep options
#status: RELEASED 0.8.8.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
Alarms:
[<<link "Set Alarmclock.">>
<<set $scene.dTimeD = {}>>
<<set $scene.dTimeD.text = "Set Alarm">>
<<set $scene.dTimeD.startHour = fullnumber($player.clock.workweek.h)>>
<<set $scene.dTimeD.stepHour = 1>>
<<set $scene.dTimeD.maxHour = 23>>
<<set $scene.dTimeD.startMinute = fullnumber($player.clock.workweek.m)>>
<<set $scene.dTimeD.stepMinute = 5>>
<<set $scene.dTimeD.maxMinute = 55>>
<<set $scene.dTimeD.followup = "room_bedroom_setalarmclock">>
<<openDialog "Alarm" "dialog_selectAlarmTime">>
<</link>>]<br>
<div style="text-indent: 2em;">Weekdays: <<=setup.shortTime(Date.UTC(1,1,1,$player.clock.workweek.h,$player.clock.workweek.m))>></div>
<div style="text-indent: 2em;">Weekends: <<=setup.shortTime(Date.UTC(1,1,1,$player.clock.weekend.h,$player.clock.weekend.m))>></div>
<br>
<<if $scene.badAlarm>>
<<printThought "No, I don't think that's a reasonable time to get up, how about seven am instead?">><br>
<<set $scene.badAlarm = false>>
<</if>>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear') || setup.hasUpgrade($bed, 'bed_bondage_gear_2')>>
Sleep in bondage?<br>
<label>Sleep unbound: <<radiobutton "$player.flat.sleep.bondage_level" 0 autocheck>></label><br>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear')>>
<label>Sleep bound spread-eagle: <<radiobutton "$player.flat.sleep.bondage_level" 1 autocheck>></label><br>
<</if>>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear_2')>>
<label>Sleep bound in a sleep-sack: <<radiobutton "$player.flat.sleep.bondage_level" 2 autocheck>></label><br>
<</if>>
<br>
<</if>>
<<if setup.hasUpgrade($bed, 'breast_milker') || $player.body_ref.penis && setup.hasUpgrade($bed, 'penis_milker')>>
<<if setup.hasUpgrade($bed, 'bed_bondage_gear_2') || setup.hasUpgrade($bed, 'bed_bondage_gear')>>
Overnight Milking: <<hint $options "You will need to sleep restrained to safely milk yourself overnight.">><br>
<<if setup.hasUpgrade($bed, 'breast_milker') && $fetish.milking>>
<label>Breast Milking: <<checkbox "$player.flat.sleep.breastMilk" false true autocheck>></label> <<hint $options "You will need to sleep restrained to safely milk yourself overnight.">><br>
<</if>>
<<if $player.body_ref.penis && setup.hasUpgrade($bed, 'penis_milker') && $fetish.penis_milking>>
<label>Penis Milking: <<checkbox "$player.flat.sleep.penisMilk" false true autocheck>></label> <<hint $options "You will need to be able to access your penis and sleep restrained to safely milk yourself overnight.">><br>
<<if setup.hasUpgrade($bed, 'penis_pain')>>
<<if $player.body_ref.balls>>
<label>Use the testicular punishment upgrade. <<checkbox "$player.flat.sleep.penis_pain" false true autocheck>></label><br>
<<else>>
<label>Use the penis punishment upgrade. <<checkbox "$player.flat.sleep.penis_pain" false true autocheck>></label><br>
<</if>>
<</if>>
<</if>>
<<if $player.body_ref.vagina && setup.hasUpgrade($bed, 'vag_milker')>>
<label>Additional Vaginal Stimulation: <<checkbox "$player.flat.sleep.vagMilk" false true autocheck>></label> <<hint $options "You will need to be able to access your vagina and sleep restrained to safely milk yourself overnight.">><br>
<</if>>
<br>
<<else>>
[@@.link_locked;Milking yourself overnight without "safety" restraints would be a recipe for a messy disaster.@@]<br>
<</if>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if !setup.checkItemInInventory(_keyId)>>
<<if State.hasPlayed("room_bedroom_sleep_milker_permission_first_5")>>
Note: As you are locked securely in chastity you will need to call <<=setup.getNpcName("npc_manager","formal")>> if you wish to sleep with penile or vaginal stimulation.
<<elseif $currentTasks.hasOwnProperty("manager_bed_milking_both") || $currentTasks.hasOwnProperty("manager_bed_milking_penis") || $currentTasks.hasOwnProperty("manager_bed_milking_vag")>>
<<printThought "I need to follow <<=ps(setup.getNpcName('npc_manager','formal'))>> instructions if I want to remove my chastity device for nocturnal access.">>
<<else>>
<<include "addMilkingTopic">>
<<printThought "I'm stuck in chastity... maybe I should talk to <<=setup.getNpcName('npc_manager','formal')>> if I want to access things at night?">>
<</if>>
<br><br>
<</if>>
<</if>>
<<if State.hasPlayed("room_bedroom_sleep_milker_permission_first_5")>>
<label>Get tucked in by <<=setup.getNpcName("npc_manager","formal")>>: <<checkbox "$player.flat.sleep.tuckin" false true autocheck>></label> <<hint $options "You will need to sleep restrained to safely milk yourself overnight.">><br>
<<if $npc_manager.flags.cruel != 0>>
<div style="text-indent: 2em;"><label>Accept her chosen routine: <<radiobutton "$player.flat.sleep.sleep_routine" 0 autocheck>></label></div>
<div style="text-indent: 2em;"><label>Request a gentle routine: <<radiobutton "$player.flat.sleep.sleep_routine" 1 autocheck>></label></div>
<div style="text-indent: 2em;"><label>Request a balanced routine: <<radiobutton "$player.flat.sleep.sleep_routine" 2 autocheck>></label></div>
<div style="text-indent: 2em;"><label>Request a harsh routine: <<radiobutton "$player.flat.sleep.sleep_routine" 3 autocheck>></label></div>
<br>
<</if>>
<</if>>
<<if setup.hasUpgrade($bed, 'vr')>>
Sleep with VR: <<hint $options "You will need to sleep restrained to enjoy overnight VR experiences.">>
<<if State.hasPlayed("event_primrose_home_vr_bridge_first") || State.hasPlayed("event_psychiatrist_ai_plug_1")>>
<div style="text-indent: 2em;"><label>Do not sleep with VR: <<radiobutton "$player.flat.sleep.vr" "" autocheck>></label></div>
<<if State.hasPlayed("event_primrose_home_vr_bridge_first")>>
<div style="text-indent: 2em;"><label><<=setup.getNpcName("npc_primrose","formal")>> Relaxing VR: <<radiobutton "$player.flat.sleep.vr" "prim_relax" autocheck>></label> <<hint $options "<<=setup.getNpcName('npc_primrose','formal')>> routines are very intense. It would be wise to only use them in moderation.">></div>
<div style="text-indent: 2em;"><label><<=setup.getNpcName("npc_primrose","formal")>> Punitive VR: <<radiobutton "$player.flat.sleep.vr" "prim_punish" autocheck>></label> <<hint $options "<<=setup.getNpcName('npc_primrose','formal')>> routines are very intense. It would be wise to only use them in moderation.">></div>
<<elseif State.hasPlayed("room_use_kig_vr")>>
<div style="text-indent: 2em;">[@@.link_locked;You need to experience <<=ps(setup.getNpcName("npc_primrose","formal"))>> first VR sleep program before you can add it to your routine.@@]</div>
<</if>>
<<if State.hasPlayed("event_psychiatrist_ai_plug_1")>>
<div style="text-indent: 2em;"><label><<=setup.getNpcName("npc_ai","first")>> VR-influenced Dreams: <<radiobutton "$player.flat.sleep.vr" "ai" autocheck>></label></div>
<</if>>
<<else>>
<div style="text-indent: 2em;">[@@.link_locked;Though you have the equipment, you do not have access to any VR programs suitable for nocturnal use.@@]</div>
<</if>>
<br><br>
<</if>>
[<<moveTo "room_bedroom" "Finished." 0>>]
</div>/*#
#desc: attempt to read psychiatrist nda
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.readcontractTime = Math.round(Math.random()*600+600)>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.flags.signednda>>
You open the attachment of the email sent to you by <<=setup.getNpcName('npc_psychiatrist', 'first')>>. It starts off like any normal NDA, defining both parties, in this case you the participant and the "VR Neurolinguistic Programming Task Force", led by <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>. Then the usual follows with declaring that both parties have a mutual goal during the duration of this contract, and that there might be an exchange of confidential information. But what follows is too much for you. A ton of neuroscience buzzwords are thrown at you, combined with scientific terms, you didn't even know exist.<br>
<br>
<<if $player.flags.contract.read>>
<<printThought "It's just like that stupid contract all over again!">>
<<else>>
<<printThought "What the... why does this have to be so complicated!">>
<</if>>
<br><br>
Since you've already signed the document, you see no reason to subject yourself any longer to this mental torture.
<<else>>
You open the attachment of the email sent to you by <<=setup.getNpcName('npc_psychiatrist', 'first')>>. It starts off like any normal NDA, defining both parties, in this case you the participant and the "VR Neurolinguistic Programming Task Force", led by <<=setup.getNpcName('npc_psychiatrist', 'full_formal')>>. Then the usual follows with declaring that both parties have a mutual goal during the duration of this contract, and that there might be an exchange of confidential information. But what follows is too much for you. A ton of neuroscience buzzwords bombard you along with even more scientific terms you didn't even know exist.<br>
<br>
<<if $player.flags.contract.read>>
<<printThought "It's just like that stupid contract all over again!">>
<<else>>
<<printThought "What the... why does this have to be so complicated!">>
<</if>>
<br><br>
<<if !$npc_psychiatrist.flags.signednda>>
[<<moveTo "attachment_sign_nda" "Sign it and send it back." 60>>]<br>
<</if>>
<<if !$npc_psychiatrist.flags.signednda && $fetish.hypnosis>>
[<<moveTo "attachment_read_nda_2" "Keep reading..." $scene.readcontractTime>>]<br>
[@@.link_locked;You can't seem to look away from the screen...@@]
<<elseif $player.timebased.fatigue>=($player.timebased.fatiguemax/2)>>
You feel too worn out to read it now. Maybe when you're more rested.<br><br>
<<elseif setup.calcErection()>>
<<if $player.body_ref.penis>>
Your <<getWordMyPenis>> is jumping up and down with excitement.
<<else>>
You are dripping in excitement.
<</if>>
<<else>>
[<<moveTo "attachment_read_nda_2" "Read it anyway." $scene.readcontractTime>>]<br>
<</if>>
<</if>>
<<if $npc_psychiatrist.flags.signednda || !$fetish.hypnosis>>
<br><br>
[<<moveTo "room_computer_email" "Close this Email." 30>>]<br>
<</if>>
</div>/*#
#desc: sign psychiatrist nda without reading
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.signednda = true>>
<<if !$player.sec_style.submission.vr_therapy>>
<<set $player.sec_style.submission.vr_therapy = "voluntary">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You decide it's too much of a hassle to read this document. Too many scientific sounding words, where you have no idea what they could mean after about the middle of page 5. You scroll to the end and put in your digital signature and return it to <<=setup.getNpcName('npc_psychiatrist', 'first')>>.<br>
<br>
<<printThought "Well, since I've signed it I could call her and arrange a new appointment. Who knows, maybe it'll be as good for my psyche as she describes it.">><br>
<br>
[<<moveTo "room_computer_email" "Close this Email." 30>>]<br>
</div>/*#
#desc: read psychiatrist nda
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
<<set $scene.attachment_read_nda_2_read = true>>
<<else>>
<<set $scene.attachment_read_nda_2_read = false>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You try to force yourself reading the document from start to finish, but are unable to do so.
<<if $scene.attachment_read_nda_2_read>>
<<if $player.flags.contract.read>>
Unlike a certain contract, this time it is a lack of expertise.
<<else>>
You simply lack the knowledge to understand this.
<</if>>
You haven't taken a psych or other traditional scientific class since freshman GE's, which is nowhere close to what you would need to understand this thing and it's not like you can simply research this on the Net. This is some pretty serious neuro science... stuff. You focus so hard on the subject, that after a while the letters seem to blur. Looks like you're at your limit.
<<else>>
You are simply too unfocused to even grasp a little bit of what's going on. After a while you catch yourself just scrolling the document up and down, trying to line up the mouse cursor with points and paragraphs and stuff like that. You let your mind drift, and after a while it the letters seem to blur.
<</if>>
<br><br>
[<<moveTo "attachment_read_nda_3" "Continue." 0>>]<br>
</div>/*#
#desc: psychiatrist nda brainwashing
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.reason = "Relax... obey... be passive... consent...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $ALONE>>
<<applyExperience 'penis' 5 'insignificant' $ALONE>>
<<applyExperience 'cum' 7 'insignificant' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<set $player.location to "Computer...?">>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/hypnosis_nda_01.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<shinyText "Relax..." 0.0>><br>
<<shinyText "Obey!" 0.5>><br>
<<shinyText "Be passive..." 1.0>><br>
<<shinyText "Consent!" 1.5>><br>
<<shinyText "Stare..." 2.0>><br>
<<shinyText "Accept!" 2.5>>
<br>
<<if $options.impatient>>
<<printThought "What's going on?">>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis4;animation-name: hypnosis4;">
<<printThought "What's going on?">></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Why can't I look away?" -10>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis1;animation-name: hypnosis1;">
<<printThought "Why can't I look away?" -10>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "It's so hard to focus..." -20>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis2;animation-name: hypnosis2;">
<<printThought "It's so hard to focus..." -20>></span>
<</if>>
<br>
<<if $options.impatient>>
<<printThought "Am I going to..." -30>>
<<else>>
<span class="text_hypnosis_1" style="-webkit-animation-name: hypnosis3;animation-name: hypnosis3;">
<<printThought "Am I going to..." -30>></span>
<</if>>
<br>
<br>
<<if $options.impatient>>
[<<moveTo 'attachment_read_nda_4' 'Obey...' 2700>>]
<<else>>
<span id="hypnosis_1_6_continue" style="visibility: hidden;">
[<<moveTo 'attachment_read_nda_4' 'Obey...' 2700>>]
</span>
<<makeVisible 'hypnosis_1_6_continue' 15>>
<</if>>
/%<<videoLoop>>%/
</div>/*#
#desc: wake up after psychiatrist nda brainwashing having signed it
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.signednda = true>>
<<if !$player.sec_style.submission.vr_therapy>>
<<set $player.sec_style.submission.vr_therapy = "forced">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You suddenly wake up. Seems like you must have dozed off. You take a closer look at your computer screen. Looks like you've signed and returned the NDA to <<=setup.getNpcName('npc_psychiatrist', 'first')>>.<br>
<br>
<<printThought "Strange, I don't recall doing that at all. Maybe that nap messed with my memory. Screw it, I'm not going to read that thing again! Well, since I've signed it I could call her and arrange a new appointment. Who knows, maybe it's as good for my psyche as she describes it.">><br>
<br>
[<<moveTo "room_computer_email" "Close this Email." 30>>]<br>
</div>/*#
#desc: attempt to read psychiatrist nda after having signed it
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "nda_vr_therapy.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.readcontractTime = Math.round(Math.random()*600+600)>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<br>
<br>
[<<moveTo "room_computer_email" "Close this Email." 30>>]<br>
</div>/*#
#desc: entranceroom to your flat
#status: FINISHED 0.4.0.0
#ignore_spell: meatspace
#*/
<<set $player.inside = true>>
/% brute force so that we can always change clothes at home %/
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.noitems = false>>
<<set $player.cutscene.reason = "This doesn't seem like the time or place to change your clothes.">>
<<if $taskEvents.length == 0>>
<<setScene true>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<movePets>>
<<set $clothSetsInt = {}>>
<<set $currentcall = false>>
<<unset $workEvent>>
<<if $workEvents.hasOwnProperty('holiday_dog_cafe')>>
<<removeWorkEvent 'holiday_dog_cafe'>>
<</if>>
<<resetStressMulti>>
<<if setup.checkItemTypeWorn("hollow_plug", true)>>
<<set $scene.plug = setup.getItemFromType("hollow_plug", true)>>
<<if $scene.plug.startsWith('sissyomatic') && $scene.plug.endsWith('_plug')>>
<<set $scene.code = "plugomatic">>
<<set $scene.dest = "room_foyer">>
<<moveTo "debug_island">>
<</if>>
<</if>>
<<set $scene.dogPromo =
!setup.inPassageTag($player.llocation,"home") &&
!setup.inPassageTag($player.llocation,"dogWalk") &&
$npc_dog.flags.stage1.kitchen &&
$npc_dog.flags.stage1.foyer &&
$npc_dog.flags.stage1.shower &&
$npc_dog.flags.stage1.bedroom &&
$npc_dog.flags.stage1.computer &&
$npc_dog.flags.stage1.masturbation &&
$npc_dog.flags.stage1.walk &&
$npc_dog.flags.stage1.meal &&
$npc_dog.flags.stage1.sleep &&
$npc_dog.flags.stage1.maid &&
$npc_dog.flags.stage1.fetch &&
($npc_dog.flags.stage1.living_room || !$fetish.piss)
&& $npc_dog.affection == 10 && $npc_dog.anger == 0 && $npc_dog.stage == 1 && setup.hasFreeTime($now, $player, 1800) && !$shopStatus['mall_sexstore'].unlocked_inventory.includes("bitchsuit")>>
<<if $scene.dogPromo>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('bitchsuit')>>
<<elseif $npc_dog.stage && $npc_dog.location == "room_foyer" && !$daily.dogEvent && !$scene.dogEvent && setup.hasFreeTime($now, $player, 1800) && !setup.inPassageTag($player.llocation,"dogWalk") && !setup.inPassageTag($player.llocation,"home")>>
<<if $npc_dog.stage >= 3 && random(1,10) != 1>>
<<set $scene.dogEvent = true>>
<</if>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_foyer" && !$daily.catEvent && !$scene.catEvent && setup.hasFreeTime($now, $player, 1800) && !setup.inPassageTag($player.llocation,"home")>>
<<set $scene.catPromo = $npc_cat.stage < 2 && $npc_cat.flags.foyer && $npc_cat.flags.kitchen && $npc_cat.flags.bathroom && $npc_cat.flags.bedroom && $npc_cat.flags.porn && $npc_cat.affection == 10 && $npc_cat.anger == 0>>
<<if $npc_cat.stage > 1>>
<<incrementEmotion 'affection' 'npc_cat' 1>>
<<set _stress = $npc_cat.anger-$npc_cat.affection>>
<<applyStress _stress>>
<</if>>
<<if $scene.catPromo>>
<<set $npc_cat.stage = 2>>
<</if>>
<</if>>
<</if>>
<<set $scene.voluntaryFollowupScene = "room_citymap">>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<set $scene.unlockHeels = setup.checkItemTypeTag('shoes', ['bedheels']) && $inventory[$scene.shoes].status.lock && setup.inPassageTag($player.llocation, 'home')>>
<<if $scene.unlockHeels>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<manipulateItem $scene.shoesId 'unlock' true>>
<</if>>
<<include checkPossibleVoluntary>>
<<set $player.location to "Foyer">>
<<readyToLeaveHome>>
<<include "calcDressedForWork">>
<<set _nextdate = setup.checkTaskLocationTime('room_foyer')>>
<<if !(_nextdate == null) && setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_dog.stage && $npc_dog.location == "room_foyer">>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_foyer">>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_cat","npc_cat_3")>>
<<else>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.flags.collar.collarId && $player.flags.collar.collarId != setup.getItemFromType("choker")>>
ERROR: collar de-sync, please report save!<br>
<br>
<<addItem $player.flags.collar.collarId>>
<<wearItem $player.flags.collar.collarId true>>
<</if>>
<<if $scene.dogPromo>>
You come home to find <<=setup.getNpcName("npc_dog","first")>> waiting for you looking very insistent. Curious, you look closer to see that there is a flyer from <<printShopName 'sex_club'>> under his paw, a flyer that VERY prominently shows someone in a full bitchsuit.<br>
<br>
You look up and would swear the dog nodded as he barks in confirmation and then walks away.<br>
<br>
<<printThought "Oh <<getWordGod>>... imagine if he fucked me while I was bound like that? That would be the ultimate assertion that he was my pack-master, my Alpha... and me his lowly bitch... maybe I should check out <<printShopName 'mall_sexstore'>> in the mall?">><br>
<br>
[<<moveTo "room_foyer" "Continue." 60>>]
<<elseif $npc_dog.stage && $npc_dog.location == "room_foyer" && !$daily.dogEvent && !$scene.dogEvent && setup.hasFreeTime($now, $player, 1800) && (!setup.inPassageTag($player.llocation,"home") || $daySkip && $daySkip.hasOwnProperty("fromHome") && !$daySkip.fromHome)>>
<<if $npc_dog.stage == 1>>
You arrive home to find <<=setup.getNpcName("npc_dog","first")>> waiting for you in excitement.<br>
<br>
[<<moveTo "event_dog_foyer_2" "Spend some time playing and training him." 600 "<<set $scene.accept=true>><<deleteMember $daily 'dayskipFromHome'>>">>]<br>
[<<moveTo "event_dog_foyer_2" "You have other things to do." 60 "<<set $scene.accept=false>><<deleteMember $daily 'dayskipFromHome'>>">>]
<<else>>
You arrive home to be greeted by <<=setup.getNpcName("npc_dog","first")>>. You spent a few minutes petting him before dropping to the floor and showing your belly submissively. Satisfied with your efforts he allows you into the flat.<br>
<br>
[<<moveTo "event_dog_foyer_2" "Show your proper submission." 600 "<<set $scene.accept=true>><<deleteMember $daily 'dayskipFromHome'>>">>]<br>
[<<moveTo "event_dog_foyer_2" "Keep walking, you have other things to do." 60 "<<set $scene.accept=false>><<deleteMember $daily 'dayskipFromHome'>>">>]
<</if>>
<<elseif (!setup.inPassageTag($player.llocation,"home") || $daySkip && $daySkip.hasOwnProperty("fromHome") && !$daySkip.fromHome) && $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_foyer" && !$daily.catEvent && !$scene.catEvent && setup.hasFreeTime($now, $player, 1800)>>
<<if $scene.catPromo>>
You walk through the door to see <<=setup.getNpcName("npc_cat","first")>> perched waiting for you. Sitting tall and proud she looks you over for a moment and then slinks forward, affectionately wending between your legs as it to say "@@.npc_cat;Yes, I have accepted you. You are now welcome in this house. That is mine.@@"<br>
<br>
You smile in amusement, giving her a few pets as she nuzzles into your hand before she scampers off for more feline mischief.<br>
<br>
[<<moveTo "room_foyer" "Continue." 60 "<<deleteMember $daily 'dayskipFromHome'>>">>]
<<elseif $npc_cat.stage == 1>>
You step into the flat to find <<=setup.getNpcName("npc_cat","first")>> waiting for you, standing proudly behind some sort of small, dead rodent.<br>
<br>
[<<moveTo "event_cat_foyer_basic" "Thank her for the tribute with some scratchies." 600 "<<set $scene.accept=true>><<deleteMember $daily 'dayskipFromHome'>>">>]<br>
[<<moveTo "event_cat_foyer_basic" "Ew, throw it away." 600 "<<set $scene.accept=false>><<deleteMember $daily 'dayskipFromHome'>>">>]
<<else>>
You arrive home to be greeted by <<=setup.getNpcName("npc_cat","first")>>. She wends between your legs, rubbing you affectionately and enjoying a few moments of scratchies before, having successfully welcomed you home, bounding away into the apartment leaving a smile on your face.<br>
<br>
[<<moveTo "room_foyer" "Continue." 60 "<<set $daily.catEvent=true>><<deleteMember $daily 'dayskipFromHome'>>">>]
<</if>>
<<else>>
<<include flatLinks>><br>
You enter the foyer. <<if $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_foyer">><<=setup.getNpcName("npc_cat","first")>> is lounging around, disinterested.<</if>><<if $npc_dog.stage && $npc_dog.location == "room_foyer">> <<=setup.getNpcName("npc_dog","first")>> is resting near the door.<</if>>
<br><br>
<<include thoughts_home>>
<<if !setup.checkItemOwned('shoes_black') && !$player.flags.firstWorkDay && !$currentTasks.hasOwnProperty('psychiatrist_apointment_1')>>
[<<moveTo "event_take_shoes" "Grab your shoes." 30>>]<br>
<</if>>
<<if $scene.unlockHeels>>
As you approach the door, you hear a soft "click" from your heels. While they remain secure on your feet, it appears they are no longer locked.<br>
<br>
<<printThought "Some sort of safety feature in case you had to leave in an emergency?">><br>
<br>
<</if>>
<<if setup.getItemsInInventoryByFilter('tag', ['bulky']).length > 0>>
[@@.link_locked;<<=setup.getItemObj(setup.getItemsInInventoryByFilter('tag', ['bulky'])[0]).leave_warning>>@@]<br>[<<moveTo "event_stow_uncarryable" "Put things away in your wardrobe.">>]<br>
<<elseif setup.checkItemTypeTag('shoes', ['bedheels']) && (setup.getTotalValue("heels") < setup.getItemObj('bed_heels_pink').heels.difficulty)>>
[@@.link_locked;<<=setup.getItemObj('bed_heels_pink').leave_warning>>@@]<br>
<<elseif setup.getItemsInInventoryByFilter('tag', ['bondage']).length > 0>>
[@@.link_locked;Bondage gear is too bulky to carry around, and wearing it outside would be... yeah...@@]<br>
[<<moveTo "event_stow_uncarryable" "Put things away in your wardrobe.">>] <<hint $options "I should put <<=setup.getItemName(setup.getItemsInInventoryByFilter('tag', ['bondage'])[0])>> <<if setup.getItemsInInventoryByFilter('tag', ['bondage']).length>1>> and the rest <</if>>in my wardrobe.">><br>
<<elseif setup.getItemsInInventoryByFilter('tag', ['vr_display']).length > 0>>
[@@.link_locked;Carrying VR gear around in meatspace doesn't make much sense.@@]<br>
[<<moveTo "event_stow_uncarryable" "Put things away in your wardrobe.">>] <<hint $options "I should leave such things in my wardrobe.">><br>
<<elseif setup.checkItemWorn("locking_plug")>>
<<if setup.isWorkDay($now) && $now.getUTCHours() < 9 && $now.getUTCHours() >= 6>>
<<printThought "My ass is locked and filled... but I have a job to get to. Hopefully <<=setup.getNpcName('npc_manager','formal')>> will unlock me...">><br>
<br>
<<removeItem "locking_plug" true>>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_office_sissy_secretary" "Head straight to the office." 900>>]
<<else>>
[@@.link_locked;You aren't going outside dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<wearItem "locking_plug" true>>
<<else>>
[@@.link_locked;The plug locked in your ass constantly reminds you of its presence. You do not wish to go out like this without a pressing reason.@@]<br>
<</if>>
<<elseif $player.readytoleave && $player.timebased.fatigue > ($player.timebased.fatiguemax/2) && $currentTasks.hasOwnProperty('manager_morning_inspection_task')>>
<<if setup.isWorkDay($now) && $now.getUTCHours() < 9 && $now.getUTCHours() >= 6 && setup.daysToDate($now,setup.getTaskDueDate('manager_morning_inspection_task')) == 0>>
You are exhausted, but you have work today...<br>
<br>
<<if $player.timebased.fatigue >= 150 && !setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if setup.getWillpower() > 3>>
[<<moveTo "event_work_exhausted_1" "Grit your teeth and make the herculean effort to force yourself to go to work." 900 "<<if $now.getUTCHours()== 7 && $now.getUTCMinutes() > 40>><<completeTask 'manager_morning_inspection_task' $now true>><</if>><<spendWillpower 3>>">>]
<<else>>
[@@.link_locked;You are all but dead on your feet and short of the apartment being on fire do not have any sort of energy to do much save go to bed.@@]
<</if>>
<<elseif setup.getWillpower() > 0>>
Despite your need for sleep, you think you could force yourself to make it to work...<br>
<br>
[<<moveTo "event_work_exhausted_1" "Grit your teeth and force yourself to go to work." 900 "<<if $now.getUTCHours()== 7 && $now.getUTCMinutes() > 40>><<completeTask 'manager_morning_inspection_task' $now true>><</if>><<spendWillpower 1>>">>]
<<elseif setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
You are physically exhausted and mentally drained, but there's something about the crushing weight of the drug withdrawal that pushes you past a threshold, your thoughts too clouded to be concerned with anything but your next fix... and for that, you need to get back to work.<br>
<br>
[<<moveTo "event_work_exhausted_1" "Trudge your way to the office." 900>>]
<<else>>
[@@.link_locked;You are as mentally wiped as you are physically and cannot bring yourself to leave your apartment.@@]
<</if>>
<<elseif $currentTasks.hasOwnProperty('psychiatrist_apointment_1') && !$currentTasks.psychiatrist_apointment_1.finished && setup.hoursToDate($now, setup.getTaskDueDate('psychiatrist_apointment_1')) < 2>>
<<set _tmpSeconds = setup.secondsToDate($now,setup.getTaskDueDate('psychiatrist_apointment_1'))+1>>
[<<moveTo "room_psychiatrist_lobby" "You are exhausted, but you have that mandatory therapy appointment..." _tmpSeconds>>]
<<else>>
[@@.link_locked;You are too tired to leave the house.@@]
<</if>>
<<elseif setup.hasTmpEffect('drunk') && setup.hasTmpEffect('sissypill_mk1_od')>>
You are drunk and high on pink pills, going out into the world would not be a safe idea.
<<elseif setup.hasTmpEffect('wasted')>>
You're so drunk you can barely stand, leaving the apartment seems like a very poor idea; confirmed by the fact that you almost face-plant just trying to make it to the door.
<<elseif !setup.checkItemInInventory('alizon_box_1') && !setup.checkItemTypeWorn("panties") && !$player.flags.commando && setup.getTotalValue("feminization") < 3 && $currentTasks.hasOwnProperty("manager_first_morning_inspection_task") && !$currentTasks.manager_first_morning_inspection_task.trigger.hasOwnProperty("clothesUnderwear") && $now.getUTCHours() < 9>>
You consider leaving the house, the idea of wearing women's underwear for the day had seemed like such a simple one but now, faced with the dual terrors of putting on panties, or going to work commando the stakes seem suddenly much, much higher...<br>
<br>
[<<moveTo "event_first_panties_1" "It's just for one day, it doesn't mean anything, you can do this." 300 "<<set $scene.reason='reluctant'>>">>]<br>
[<<moveTo "event_first_panties_1" "Where did these doubts come from? You're excited to wear panties!" 300 "<<set $scene.reason='enthus'>>">>]<br>
[<<moveTo "event_first_panties_1" "Let's just go commando..." 300 "<<set $scene.reason='commando'>>">>]<br>
[<<moveTo "event_first_panties_1" "Maybe you can hit the mall before work?" 300 "<<set $scene.reason='mall'>>">>]<br>
<<elseif $player.readytoleave && setup.checkOutsideDecency() && $scene.voluntaryScene == "">>
<<if !$player.flags.firstWorkDayDone && $now.getUTCHours() < 7>>
<<if $player.sec_style.clothing.underwear == "money">>
[<<moveTo "event_exgirlfriend_fetchthings_1_alt" "Hmm, might as well head for the mall and attend to this commando situation." 300>>]
<<else>>
[@@.link_locked;There's getting to work early, and there's this... I don't think weirdly loitering in the lobby the morning before my shift would be the best impression.@@]
<</if>>
<<elseif $player.timebased.stress >= 90>>
Life of late has caught up to you and you are feeling too stressed out to leave your flat.<br>
<br>
<<if setup.getWillpower() > 1>>
<<if $player.sec_style.clothing.female == "strict" && $now.getUTCDay() >= 1 && $now.getUTCDay() <= 5 && $now.getUTCHours() < 9 && $now.getUTCHours() >= 6>>
<<set _clothingMods = setup.calcProstitutionModifiers()>>
<<if $scene.workUnderwear && $scene.workOuterwear && (!$scene.hasOwnProperty("workHeels") || $scene.workHeels)>>
Your door unlocks, it would appear this outfit is "work appropriate." <br>
<br>
[<<moveTo "room_citymap" "Force yourself to ignore some of your stress and just leave the apartment." 300 "<<spendWillpower 2>><<set $player.timebased.stress=50>>">>]<br>
<<elseif $scene.workUnderwear && $player.flags.bimbo_work.unlock && ["slutty", "kinky"].includes(_clothingMods.attireType)>>
Your door unlocks, with a message "@@.computer;<<uc "attire insufficient for office work, approved only for bimbo activities.">>@@"<br>
<br>
[<<moveTo "room_citymap" "Force yourself to ignore some of your stress and just leave the apartment looking slutty." 300 "<<spendWillpower 2>><<set $player.timebased.stress=50>>">>]<br>
<<else>>
[@@.link_locked;Your door does not unlock — it would seem your outfit is not work appropriate...@@]
<</if>>
<<else>>
[<<moveTo "room_citymap" "Force yourself to ignore some of your stress and just leave the apartment." 300 "<<spendWillpower 2>><<set $player.timebased.stress=50>>">>]<br>
<</if>>
<<else>>
<<if $npc_psychiatrist.profile>>
<<if $npc_psychiatrist.flags.phone_therapy.stage == 0>>
<<if setup.checkItemOwned('card_psychiatrist')>>
<<printThought '<<=setup.getNpcName("npc_psychiatrist","formal")>> said to call if I had any issues between sessions... I know her contact card is around here somewhere...'>>
<<else>>
<<printThought '<<=setup.getNpcName("npc_psychiatrist","formal")>> said to call if I had any issues between sessions. I am pretty sure this qualifies...'>>
<</if>>
<<else>>
<<printThought 'Maybe I should call <<=setup.getNpcName("npc_psychiatrist","formal")>> for help again?'>>
<</if>>
<br><br>
<</if>>
<<if setup.getWillpower() > 0>>
[@@.link_locked;Everything is too much and you just do not have the mental energy to force yourself to leave the flat.@@]
<<else>>
[@@.link_locked;You are mentally drained, too fried to remotely attempt to force yourself out of the house.@@]
<</if>>
<</if>>
<<elseif $player.timebased.stress >= 75>>
<<if setup.inPassageTag($player.llocation,"home")>>
The prospect of leaving your flat is exacerbating your already stressed state...
<<else>>
Finally arriving home is the closest to a relief you've felt all day.
<</if>>
<br><br>
<<if setup.getWillpower() > 0>>
<<if $player.sec_style.clothing.female == "strict" && $now.getUTCDay() >= 1 && $now.getUTCDay() <= 5 && $now.getUTCHours() < 9 && $now.getUTCHours() >= 6>>
<<set _clothingMods = setup.calcProstitutionModifiers()>>
<<if $scene.workUnderwear && $scene.workOuterwear && (!$scene.hasOwnProperty("workHeels") || $scene.workHeels)>>
Your door unlocks, it would appear this outfit is "work appropriate." <br>
<br>
[<<moveTo "room_citymap" "Grit your teeth, push your concerns aside, and leave the apartment." 300 "<<spendWillpower 1>><<set $player.timebased.stress=60>>">>]<br>
<<elseif $scene.workUnderwear && $player.flags.bimbo_work.unlock && ["slutty", "kinky"].includes(_clothingMods.attireType)>>
Your door unlocks, with a message "@@.computer;<<uc "attire insufficient for office work, approved only for bimbo activities.">>@@"<br>
<br>
[<<moveTo "room_citymap" "Grit your teeth, push your concerns aside, and leave the apartment looking slutty." 300 "<<spendWillpower 2>><<set $player.timebased.stress=50>>">>]<br>
<<else>>
[@@.link_locked;Your door does not unlock — it would seem your outfit is not work appropriate...@@]
<</if>>
<<else>>
[<<moveTo "room_citymap" "Grit your teeth, push your concerns aside, and leave the apartment." 300 "<<spendWillpower 1>><<set $player.timebased.stress=60>>">>]<br>
<</if>>
<<elseif $now.getUTCDay() == 5 && $currentTasks.hasOwnProperty('psychiatrist_apointment_1') && !$currentTasks.psychiatrist_apointment_1.finished && setup.hoursToDate($now, setup.getTaskDueDate('psychiatrist_apointment_1')) < 2>>
<<set _tmpSeconds = setup.secondsToDate($now,setup.getTaskDueDate('psychiatrist_apointment_1'))+1>>
[<<moveTo "room_psychiatrist_lobby" 'You are mentally toast, but you have that mandatory psychological assessment... you have to go, and maybe whoever is administering it could help?' _tmpSeconds>>]<br>
<<elseif $now.getUTCDay() == 5 && $currentTasks.hasOwnProperty('psychiatrist_endless_apointment_1') && !$currentTasks.psychiatrist_endless_apointment_1.finished && setup.hoursToDate($now, setup.getTaskDueDate('psychiatrist_endless_apointment_1')) < 2>>
<<set _tmpSeconds = setup.secondsToDate($now,setup.getTaskDueDate('psychiatrist_endless_apointment_1'))+1>>
[<<moveTo "room_psychiatrist_lobby" 'You are mentally toast, but maybe if you can just make it to <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> appointment she can help?' _tmpSeconds>>]<br>
<<elseif $currentTasks.hasOwnProperty('task_psychiatrist_endless_hypnosis_1') && !$currentTasks.task_psychiatrist_endless_hypnosis_1.finished && setup.hoursToDate($now, setup.getTaskDueDate('task_psychiatrist_endless_hypnosis_1')) < 2>>
<<set _tmpSeconds = setup.secondsToDate($now,setup.getTaskDueDate('task_psychiatrist_endless_hypnosis_1'))+1>>
[<<moveTo "room_psychiatrist_lobby" 'You are mentally toast, but maybe if you can just make it to <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> experimental therapy that will help?' _tmpSeconds>>]<br>
<<elseif !$npc_psychiatrist.profile && setup.isWorkDay($now) && $now.getUTCHours() < 9>>
[<<moveTo "company_lobby" "You're mentally fried and exhausted, but you have work, and pissing off your new boss is probably an even worse idea. Force yourself to go in." 300 "<<applyStress 10>>">>]<br>
<<elseif setup.isWorkDay($now) && $now.getUTCHours() < 9>>
<<if $player.sec_style.clothing.female == "strict" && $now.getUTCDay() >= 1 && $now.getUTCDay() <= 5 && $now.getUTCHours() < 9 && $now.getUTCHours() >= 6>>
<<set _clothingMods = setup.calcProstitutionModifiers()>>
<<if $scene.workUnderwear && $scene.workOuterwear && (!$scene.hasOwnProperty("workHeels") || $scene.workHeels)>>
Your door unlocks, it would appear this outfit is "work appropriate." <br>
<br>
[<<moveTo "company_lobby" "You're mentally fried and exhausted, but you have work, and angering your boss is even more scary than the prospect of dragging yourself out of the house. Force yourself to work." 300 "<<applyStress 10>>">>]<br>
<<elseif $scene.workUnderwear && $player.flags.bimbo_work.unlock && ["slutty", "kinky"].includes(_clothingMods.attireType)>>
Your door unlocks, with a message "@@.computer;<<uc "attire insufficient for office work, approved only for bimbo activities.">>@@"<br>
<br>
[<<moveTo "company_lobby" "You're mentally fried and exhausted, but you have work, and angering your boss is even more scary than the prospect of dragging yourself out of the house. Force yourself to work." 300 "<<applyStress 10>>">>]<br>
<<else>>
[@@.link_locked;Your door does not unlock — it would seem your outfit is not work appropriate...@@]
<</if>>
<<else>>
[<<moveTo "company_lobby" "You're mentally fried and exhausted, but you have work, and angering your boss is even more scary than the prospect of dragging yourself out of the house. Force yourself to work." 300 "<<applyStress 10>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You are mentally drained, too fried to even try to force yourself out of the house.@@]
<</if>>
<<else>>
<<if $player.sec_style.clothing.unisex == "" && setup.isItemEquipped("shirt_stained")>>
<<printThought "Do I really want to wear this shirt out with such an obvious stain on it?">><br>
<br>
<</if>>
<<if $player.locations.gym && ($currentTasks.hasOwnProperty('task_first_gym') && $currentTasks.task_first_gym.condition == "Complete" || $currentTasks.hasOwnProperty('task_first_gym_alt') && $currentTasks.task_first_gym_alt.condition == "Complete")>>
<<include "calcGymAttire">>
<<if $scene.gymAttire>>
<<if $npc_manager.stagevalues[2].no_change && !setup.analyzeWornTags(['female','male','unisex']) == "female" && $now.getUTCDay() >= 0 && $now.getUTCDay() <= 5 && ($now.getUTCHours() < 8 || $now.getUTCHours() < 9 && $currentTasks.hasOwnProperty('manager_morning_inspection_task_repeat') && !$currentTasks.manager_morning_inspection_task_repeat.finished)>>
[@@.link_locked;You may be dressed for the gym... but it does not appear to be sufficiently feminine to satisfy the scanner in your door.@@]
<<else>>
<<if $now.getUTCMinutes() < 50 && $now.getUTCHours() == 6 && $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
[<<moveTo "event_admin_gym_morning_evil" 'Text <<=setup.getNpcName("npc_admin", "first")>> to meet up for a morning workout.' 60 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif State.hasPlayed("event_admin_talk_gym")>>
[<<moveTo "event_admin_gym_morning_1" 'Text <<=setup.getNpcName("npc_admin", "first")>> and meet up for a morning workout.' 60 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<elseif $now.getUTCDay() == 0 || $now.getUTCDay() == 6>>
[@@.link_locked;It is the weekend, if you want to meet to work out with <<=setup.getNpcName('npc_admin', 'first')>> you should do it before work when <<he npc_admin>> normally goes.@@]<br>
<<elseif $now.getUTCHours() < 6>>
[@@.link_locked;It is too early to text <<=setup.getNpcName('npc_admin', 'first')>> about meeting to work out, <<he npc_admin>> starts at seven in the morning, before work.@@]<br>
<<else>>
[@@.link_locked;It is too late to meet <<=setup.getNpcName('npc_admin', 'first')>> at the gym to work out today. <<He npc_admin>> starts <<his npc_admin>> routine at seven in the morning, sharp.@@]<br>
<</if>>
<<if $npc_guard.flags.canWorkout>>
<<if $now.getUTCMinutes() < 50 && $now.getUTCHours() == 5 && ($now.getUTCDay() == 0 || $now.getUTCDay() == 6)>>
[<<moveTo "event_guard_gym_morning_1" 'Text <<=setup.getNpcName("npc_guard", "formal")>> and meet up for a morning workout.' 60 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
[@@.link_locked;It is a workday, if you want to meet to work out with <<=setup.getNpcName("npc_guard", "formal")>> she works out early Saturday or Sunday Morning at six.@@]<br>
<<elseif $now.getUTCHours() < 5>>
[@@.link_locked;It is too early to text <<=setup.getNpcName("npc_guard", "formal")>> about meeting to work out, she starts at six in the morning.@@]<br>
<<else>>
[@@.link_locked;It is too late to meet <<=setup.getNpcName("npc_guard", "formal")>> at the gym to work out today. She starts her routine at six in the morning sharp.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_jogging" "Go for a jog." 60 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<else>>
<<if $now.getUTCHours() < 7 && $now.getUTCHours() >= 6 && $now.getUTCDay() != 0 && $now.getUTCDay() != 6>>
[@@.link_locked;You are not properly dressed to go for a jog or meet <<=setup.getNpcName('npc_admin', 'first')>> at the gym before work.@@]
<<else>>
[@@.link_locked;You should wear workout attire if you are going to go for a jog.@@]
<</if>>
<<if $options.ezchange>>
<br>
[<<moveTo "room_foyer" "Change into your workout outfit." 180 "<<set _setId = setup.getClothingSetIndex('Workout Clothes')>><<useClothSet _setId>>">>]
<</if>>
<</if>>
<br><br>
<</if>>
<<if $npc_dog.stage > 0>>
<<if $npc_manager.stagevalues[2].no_change && !setup.analyzeWornTags(['female','male','unisex']) == "female" && $now.getUTCDay() >= 0 && $now.getUTCDay() <= 5 && ($now.getUTCHours() < 8 || $now.getUTCHours() < 9 && $currentTasks.hasOwnProperty('manager_morning_inspection_task_repeat') && !$currentTasks.manager_morning_inspection_task_repeat.finished)>>
[@@.link_locked;The scanner in your door does not approve of you leaving as you are at this time, even merely to walk <<=setup.getNpcName("npc_dog", "first")>>.@@]<br>
<<else>>
[<<moveTo "event_dog_walking_1" 'Take <<=setup.getNpcName("npc_dog", "first")>> for a walk.' 900 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<</if>>
<<if $player.flags.jobsecretary && !$player.flags.firstWorkDay && ($player.sec_style.clothing.underwear != "enthusiast" && $player.sec_style.clothing.underwear != "strict" && setup.checkItemInInventory('cotton_bra') || !$player.sec_style.clothing.female && (setup.checkItemInInventory('satin_blouse_white') || setup.checkItemInInventory('skirt_black')))>>
<<if $player.timebased.fatigue>($player.timebased.fatiguemax/2)>>
You may be exhausted, but you'll push through for the first day at your new job...<br>
<br>
<</if>>
[<<moveTo "event_first_workday_leave_clothing" "Leave the apartment." 60 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
<<if !$player.flags.firstWorkDay && $player.timebased.fatigue>($player.timebased.fatiguemax/2)>>
You may be exhausted, but you'll push through for the first day at your new job...<br>
<br>
<</if>>
<<if $now.getUTCDay() >= 0 && $now.getUTCDay() <= 5 && ($now.getUTCHours() < 8 || $now.getUTCHours() < 9 && $currentTasks.hasOwnProperty('manager_morning_inspection_task_repeat') && !$currentTasks.manager_morning_inspection_task_repeat.finished) && (!$player.sec_style.clothing.female && $npc_manager.stagevalues[2].femalesecretary || !$player.sec_style.clothing.unisex && $npc_manager.stagevalues[2].unisexsecretary || ["forced", "strict", "money"].includes($player.sec_style.clothing.underwear) && setup.getTotalValue("feminization") < 10)>>
You consider your uniform requirements... do you really want to go out in public wearing
<<if $npc_manager.stagevalues[2].femalesecretary>>
women's clothing? The office is one thing... but wearing it on the street?
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
unisex clothing? Sure, it's not technically feminine... but do you really want to go out like that?
<<else>>
women's underwear? Sure, nobody will technically know... but maybe you could change at the office?
<</if>>
<<if $npc_manager.stagevalues[2].no_change>>
<<=setup.getNpcName("npc_manager","formal")>> may have effectively banned you from the bathroom at work... but there's a park across the street. You could change there, and at least minimise the humiliating reality of being forced to wear women's clothing.
<<else>>
You remember a public restroom in the lobby... maybe you could change there?
<</if>>
<br><br>
<<printThought "Yeah, I mean, the uniform is just part of the job, right? Better to restrict it to just that, not like I'm some <<if $fetish.sissy>>sissy <</if>>cross-dresser on my own time.">><br>
<br>
<</if>>
<<if $player.sec_style.clothing.female == "strict" && $now.getUTCDay() >= 1 && $now.getUTCDay() <= 5 && $now.getUTCHours() < 9 && $now.getUTCHours() >= 6>>
<<set _clothingMods = setup.calcProstitutionModifiers()>>
<<if $scene.workUnderwear && $scene.workOuterwear && (!$scene.hasOwnProperty("workHeels") || $scene.workHeels)>>
Your door unlocks, it would appear this outfit is "work appropriate." <br>
<br>
[<<moveTo "room_citymap" "Leave the building." 300>>]<br>
<<if $player.flags.jobsecretary && $player.flags.firstWorkDay>>
[<<moveTo "room_hallway" "Go somewhere else in the apartment building." 60 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<elseif $scene.workUnderwear && $player.flags.bimbo_work.unlock && ["slutty", "kinky"].includes(_clothingMods.attireType)>>
Your door unlocks, with a message "@@.computer;<<uc "attire insufficient for office work, approved only for bimbo activities.">>@@"<br>
<br>
[<<moveTo "room_citymap" "Leave the building looking slutty." 300>>]<br>
<<if $player.flags.jobsecretary && $player.flags.firstWorkDay>>
[<<moveTo "room_hallway" "Go somewhere else in the apartment building looking slutty." 60 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;Your door does not unlock — it would seem your outfit is not work appropriate...@@]
<</if>>
<<else>>
[<<moveTo "room_citymap" "Leave the building." 300>>]<br>
<<if $player.flags.jobsecretary && $player.flags.firstWorkDay>>
[<<moveTo "room_hallway" "Go somewhere else in the apartment building." 60 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<<elseif setup.checkOutsideDecencyReason() == "chastity">>
<<if $currentTasks.hasOwnProperty('psychiatrist_endless_apointment_1') && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_apointment_1')) == 0 && $now.getUTCDay() == 5>>
<<if setup.hoursToDate($now,setup.getTaskDueDate('psychiatrist_endless_apointment_1')) < 2>>
<<printThought "If I focus, I think I can make it to my therapy appointment without wearing chastity... and maybe <<=setup.getNpcName('npc_psychiatrist', 'formal')>> can help with my submissive need for bondage...">><br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "room_psychiatrist_lobby" "Head to therapy." 600 "<<set $player.cutscene.lockinventory=true>><<spendWillpower 2>><<applyStress 20>>">>] <<hint $options "This will cost Willpower">><br>
<<else>>
[@@.link_locked;You do not have the mental energy to force yourself to go out without chastity, even to a therapy appointment.@@]
<</if>>
<<else>>
<<printThought "I'm so submissively addicted to bondage I can't imagine going out without protective chastity... but it's too early to head to <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> office.">>
<</if>>
<<else>>
<<printThought "I'm so submissively addicted to bondage I can't imagine going out without protective chastity... maybe I should talk to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about that at our next session?">>
<</if>>
<br><br>
<<else>>
<<if setup.isWorkDay($now) && $now.getUTCHours() < 9 && $player.sec_style.clothing.unisex == "">>
<<if setup.checkVisibleClothingTag('unisex') > 30>>
<<if $npc_manager.flags.spill_event && setup.checkItemSetOwned("unisex_office")>>
<<if setup.analyzeWornTags(['female','male','unisex']) == 'unisex'>>
You consider your unisex attire.<br>
<br>
<<printThought 'After the outfit she gave me I bet <<=setup.getNpcName("npc_manager", "formal")>> would appreciate it if I wore something like this to work, but am I ready for the possible consequences of that?'>>
<<elseif (setup.checkItemWorn("shirt_female_office_teal") || setup.checkItemWorn("trousers_female_office_grey") || setup.checkItemWorn("flats_black"))>>
<<if (setup.checkItemWorn("shirt_female_office_teal") && setup.checkItemWorn("trousers_female_office_grey") && setup.checkItemWorn("flats_black"))>>
You consider yourself, wearing the outfit your <<=setup.getNpcName("npc_manager", "title")>> gave you after your "spill." <br>
<br>
<<printThought 'I bet <<=setup.getNpcName("npc_manager", "formal")>> would appreciate it if I wore this outfit she gave me to work, but am I ready for the possible consequences if I do?'>>
<<else>>
You consider yourself, wearing pieces of the outfit your <<=setup.getNpcName("npc_manager", "title")>> gave you after your "spill." <br>
<br>
<<printThought 'I bet <<=setup.getNpcName("npc_manager", "formal")>> would appreciate it if I wore the full outfit she gave me to work, but am I ready for the possible consequences if I do?'>>
<</if>>
<<else>>
You consider your partial unisex attire.<br>
<br>
<<printThought 'I bet <<=setup.getNpcName("npc_manager", "formal")>> would appreciate it if I wore the full outfit she gave me to work, but am I ready for the possible consequences of that?'>>
<</if>>
<br><br>
[<<moveTo "company_lobby" "Head to work." 900>>]<br>
<<if setup.checkItemSetOwned("unisex_office") && !setup.checkItemSetWorn("unisex_office") && $options.ezchange>>
<<if !setup.checkItemTypeTag('shirt', ['unisex']) || !setup.checkItemTypeTag('legwear', ['unisex'])>>
[<<moveTo "company_lobby" 'Put on the full outfit <<=setup.getNpcName("npc_manager", "formal")>> gave you and head to work.' 900 "<<if !setup.isItemEquipped('shirt_female_office_teal')>><<if setup.inWardrobe('flats_black')>><<wardrobeToItem 'shirt_female_office_teal'>><</if>><<wearItem 'shirt_female_office_teal'>><</if>><<if !setup.isItemEquipped('trousers_female_office_grey')>><<if setup.inWardrobe('flats_black')>><<wardrobeToItem 'trousers_female_office_grey'>><</if>><<wearItem 'trousers_female_office_grey'>><</if>><<if !setup.isItemEquipped('flats_black')>><<if setup.inWardrobe('flats_black')>><<wardrobeToItem 'flats_black'>><</if>><<wearItem 'flats_black'>><</if>>">>]
<</if>>
<</if>>
<<elseif $npc_manager.stagevalues[1].unisexsecretary && $player.sec_style.clothing.unisex == "">>
You still can't quite wrap your head around voluntarily going out in non-male clothing but <<=setup.getNpcName("npc_manager", "formal")>> was very clear on your new requirements... maybe you could change at the office?<br>
<br>
<<printThought "Even if I only dress unisex at work... Do I really want to keep bowing to her whims?">><br>
<br>
<<else>>
<<include glanceVoluntary>>
<<include triggerVoluntary>>
<</if>>
<<else>>
<<include glanceVoluntary>>
<<include triggerVoluntary>>
<</if>>
<<else>>
<<include glanceVoluntary>>
<<include triggerVoluntary>>
<</if>>
<</if>>
<<if !(_nextdate == null) && setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)-600>>
<<if _tmpSeconds < 28800 && $currentTasks.hasOwnProperty('manager_visit') && !$currentTasks.manager_visit.finished>>
<br>
[<<moveTo "event_manager_visit_prep_1" 'Spend the rest of the day cleaning for your <<=ps(setup.getNpcName("npc_manager","title"))>> visit.' _tmpSeconds>>]
<<if $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && !$currentTasks.psychiatrist_endless_hypnosis_1.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) == 0>>
<br><<printThought 'Hmm, I have an appointment with <<=setup.getNpcName("npc_psychiatrist","formal")>> today... maybe I should do that first?'>>
<</if>>
<<if _tmpSeconds < 7200>>
<br>
<<set _waitFor = _tmpSeconds+601>>
[<<moveTo "room_foyer" 'Wait for your "date."' _waitFor>>]
<</if>>
<<elseif _tmpSeconds < 7200>>
<br>
<<set _waitFor = _tmpSeconds+601>>
[<<moveTo "room_foyer" 'Wait for your date.' _waitFor>>]
<</if>>
<<elseif $currentTasks.hasOwnProperty('task_landlord_date_2') && !$currentTasks.task_landlord_date_2.finished && setup.hoursToDate($now,setup.getTaskDueDate('task_landlord_date_2')) < 12>>
<<if setup.checkPlayerDressed($player) && setup.analyzeWornTags(['casual','office', 'formal']) == 'formal'>>
<<if setup.getCurrentMakeup($player) == "">>
<<printThought "I'm going out with <<=setup.getNpcName('npc_landlord','first')>> for dinner. I should put on makeup to look my best!">>
<<elseif $player.makeup.messed > 25>>
<<printThought "My makeup is a wreck. I should fix it before leaving for the restaurant for my date with <<=setup.getNpcName('npc_landlord','first')>>.">>
<<elseif $player.makeup.messed > 10>>
<<printThought "I should touch up my makeup before I leave — I want everything to be perfect for my date with <<=setup.getNpcName('npc_landlord','first')>>!">>
<<else>>
<<set _wait = setup.secondsToDate($now,setup.getTaskDueDate('task_landlord_date_2'))>>
[<<moveTo "event_landlord_second_date_1" 'Go meet <<=setup.getNpcName("npc_landlord","first")>> for dinner.' _wait>>]
<</if>>
<<else>>
<<printThought "After all that effort to get <<=setup.getNpcName('npc_landlord','first')>> to invite me out, I need to dress for the occasion! I should wear something formal.">>
<</if>>
<br><br>
<<elseif $currentTasks.hasOwnProperty('task_gym_futa_dinner') && !$currentTasks.task_gym_futa_dinner.finished && setup.hoursToDate($now,setup.getTaskDueDate('task_gym_futa_dinner')) < 12>>
<<if setup.hoursToDate($now,setup.getTaskDueDate('task_gym_futa_dinner')) > 1>>
<<printThought "I have a dinner date with <<=setup.getNpcName('npc_gym_futa','first')>> tonight... but it's a bit early, yet!">>
<<else>>
<<set _wait = setup.secondsToDate($now,setup.getTaskDueDate('task_gym_futa_dinner'))>>
<<if !setup.checkTaskReason("task_gym_futa_dinner","fancyFemale") || !setup.checkTaskReason("task_gym_futa_dinner","fancyMakeup")>>
[<<moveTo "event_gym_futa_dinner_fail" 'Head to the restaurant to meet <<=setup.getNpcName("npc_gym_futa","first")>> for dinner.' _wait "<<set $scene.atRestaurant=true>>">>]
<<else>>
[<<moveTo "event_gym_futa_dinner_1" 'Head to the restaurant to meet <<=setup.getNpcName("npc_gym_futa","first")>> for dinner.' _wait>>]
<</if>>
<</if>>
<br><br>
<</if>>
<</if>>
</div>/*#
#desc: play games at home selection screen
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("gloves") && setup.checkItemTypeTag('gloves', ['boundarms']) || setup.checkItemTypeWorn("bondagegear") && setup.checkItemTypeTag('bondagegear', ['boundarms'])>>
With your arms bound, you are unable to work the controls to play a game.<br>
<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
<<elseif (setup.getTotalValue('bimbofication')-setup.getTotalValue('smart'))>5 ||
!setup.isWorkDay($now) ||
(((setup.getUTCDay($now)==5) && (getUTCHours($now)>=$player.work.time_friday.hour)) || ((setup.getUTCDay($now)!=5) && (getUTCHours($now)>=$player.work.time_evening.hour)) || getUTCHours($now) < 6) ||
$player.work.sendhome ||
$currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.hoursToDate($now, setup.getTaskDueDate('manager_morning_inspection_task')) > 6>>
<<if $player.work.sendhome && $now.getUTCDay() >= 1 && $now.getUTCDay() <= 5>>
<<printThought 'Well, since I was sent home I might as well spend some time with my games...'>><br>
<<else>>
<<printThought 'So, what should I play today?'>><br>
<</if>>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
<label>Play in combination with the "Fill me Fun" sex machine attachments <<checkbox "$scene.sex_machine" false true>></label><br>
<br>
<</if>>
[<<link "Play something that requires skill!">>
<<set $player.timebased.stressmulti = 2>>
<<set $scene.dTime = {}>>
<<set $scene.dTime.timeMulti = 60>>
<<set $scene.dTime.text = "How long do you wish to play?">>
<<set $scene.dTime.startTime = 60>>
<<set $scene.dTime.changeTime = 10>>
<<set $scene.dTime.minTime = 10>>
<<set $scene.dTime.maxTime = 240>>
<<set $scene.dTime.followup = "room_play_games_skill">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
[<<link "Play something that tests your savvy!">>
<<set $player.timebased.stressmulti = 1>>
<<set $scene.dTime = {}>>
<<set $scene.dTime.timeMulti = 60>>
<<set $scene.dTime.text = "How long do you wish to play?">>
<<set $scene.dTime.startTime = 60>>
<<set $scene.dTime.changeTime = 10>>
<<set $scene.dTime.minTime = 10>>
<<set $scene.dTime.maxTime = 240>>
<<set $scene.dTime.followup = "room_play_games_smart">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
[<<moveTo "room_play_games_relax" "Play something relaxing." 0 "<<set $scene.classic=false>>">>]<br>
<<else>>
[<<link "Play something relaxing.">>
<<set $scene.dTime = {}>>
<<set $scene.dTime.timeMulti = 60>>
<<set $scene.dTime.text = "How long do you wish to play?">>
<<set $scene.dTime.startTime = 60>>
<<set $scene.dTime.changeTime = 10>>
<<set $scene.dTime.minTime = 10>>
<<set $scene.dTime.maxTime = 240>>
<<set $scene.classic=true>>
<<set $scene.dTime.followup = "room_play_games_relax">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<</if>>
<<if $player.locations.hotties_game>>
<<if $player.flags.hotties_game.times_played > 0>>
[<<moveTo "room_play_games_hotties" "Play HOTTIES." 60>>]<br>
<<else>>
[<<moveTo "room_play_games_hotties" 'Play the game <<=setup.getNpcName("npc_technician","first")>> gave you.' 60>>]<br>
<</if>>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.times_played == 0>>
[<<moveTo "room_home_auto_bondage_rrr_first" "Boot up your new sex game." 60>>]
<<else>>
<<if $fetish.get_raped>>
[<<moveTo "room_home_auto_bondage_rrr_intro" "Play Rape Rape Revolution." 1800>>]
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_intro" "Play Space Slut Supreme." 1800>>]
<</if>>
<</if>>
<</if>>
<<else>>
<<printThought 'I really should make myself ready for work...'>><br>
<</if>>
<br>
[<<moveTo "room_livingroom" "Nope, no playing games today.">>]
</div>/*#
#desc: play hotties game
#status: FINISHED 0.7.10.0
#*/
<<set $player.timebased.stressmulti = 0>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You start up Heroes of Time: The Infinite Eternal Struggle.
<<if !$player.flags.hotties_game.role>>
The game boots up for the first time to show a quick-cut montage of what you assume are the various selectable player characters. Though sharing an overall artistic style, each character is distinct, and you find yourself picking out which ones are tanks, DPS and support. It is only when the actual game logo appears as HOTTIES! that you realise that every single character was... distinctly feminine.<br>
<br>
Realising that the somewhat... suggestive logo is an acronym for the mouthful that is Heroes of Time: The Infinite Eternal Struggle, you click through to the character select screen, confirming your initial assessment that, while a couple of the characters may have male names, the actual appearances ranges from "androgynous" to VERY feminine, though that femininity is spread across a large range of bodytypes.<br>
<br>
Trying to put the "fun" art aside, you click to bring up the main menu.<br>
<br>
[<<moveTo "room_play_games_hotties_character_select" "Character Selection." 30>>]<br>
<<else>>
The familiar HOTTIES! logo scrolls across the screen and you click through to the main menu.<br>
<br>
<<if State.hasPlayed("event_destroy_technician_6")>>
<<=ps(setup.getNpcName('npc_technician', 'first'))>> name in your friends list shows offline, thanks to your betraying her to <<=setup.getNpcName('npc_boss', 'formal')>>.
<<elseif $npc_technician.flags.evil != 1 && $now.getUTCDay()>0 && $now.getUTCDay()<6 && $now.getUTCHours() > 18>>
Looking at your friends list it appears that <<=setup.getNpcName('npc_technician', 'first')>> is online, and she is already poking you to ask if you want to play together.<br>
<br>
[<<moveTo "room_play_games_hotties_technician" 'Play a game with <<=setup.getNpcName("npc_technician", "first")>>.' 300 "<<set $player.timebased.stressmulti = -0.2>>">>]<br>
<<else>>
Checking your friends list you do not see <<=setup.getNpcName('npc_technician', 'first')>> online.<br>
<br>
[@@.link_locked;<<=setup.getNpcName('npc_technician', 'first')>> isn't online to play with you.@@]<br>
<</if>>
<<if $player.flags.hotties_game.adv_heal || $player.flags.hotties_game.adv_melee || $player.flags.hotties_game.adv_range || $player.flags.hotties_game.tank>>
[<<moveTo "room_play_games_hotties_pug_choose" "Play with a random pick-up group." 60 "<<set $player.timebased.stressmulti = 0.3>><<if $now.getUTCDay()>0 && $now.getUTCDay()<6 && $now.getUTCHours() > 18>><<set $npc_technician.flags.hotties.stood_up = true>><<decrementEmotion 'affection' 'npc_technician' 1>><</if>>">>]<br>
<<else>>
[<<moveTo "room_play_games_hotties_pug" "Play with a random pick-up group." 3600 "<<set $player.timebased.stressmulti = 0.3>><<set $scene.role=$player.flags.hotties_game.role>><<if $now.getUTCDay()>0 && $now.getUTCDay()<6 && $now.getUTCHours() > 18>><<set $npc_technician.flags.hotties.stood_up = true>><<decrementEmotion 'affection' 'npc_technician' 1>><</if>>">>]<br>
<</if>>
<<if $player.flags.hotties_game.trial_unlock>>
<<if $player.flags.hotties_game.adv_heal || $player.flags.hotties_game.adv_melee || $player.flags.hotties_game.adv_range || $player.flags.hotties_game.adv_tank>>
<<if $player.flags.hotties_game.adv_heal && $player.flags.hotties_game.adv_melee && $player.flags.hotties_game.adv_range && $player.flags.hotties_game.adv_tank>>
[@@.link_locked;You have unlocked all advanced character classes.@@]<br>
<<else>>
[<<moveTo "room_play_games_hotties_trial_choose" "Attempt to unlock another advanced class." 60>>]<br>
<</if>>
<<else>>
[<<moveTo "room_play_games_hotties_trial" "Attempt the single player character trial to upgrade your avatar." 1800 "<<set $scene.role=$player.flags.hotties_game.role>>">>]<br>
<</if>>
<</if>>
<</if>>
<<if setup.getTotalValue("gaming") >= 7 && $player.flags.streaming.stage == 0>>
As you're sitting in the lobby you see an advertisement for a Pro/Am streaming event.<br>
<br>
[<<moveTo "event_streaming_invite" "Check out the ad." 60 "<<set $scene.streaming = {}>>">>]<br>
<<elseif $player.flags.streaming.stage > 0>>
You glance at your streamer overlay, looks like you have <<=$player.flags.streaming.followers.toLocaleString()>> followers.
<<if $player.flags.streaming.followers > 99>>
You have <<=$player.flags.streaming.subs.toLocaleString()>> subscribers, bringing in <<=Math.ceil($player.flags.streaming.subs/10).toLocaleString()>> credits of ad revenue, in addition to whatever tips you can attract.
<<else>>
If you can reach 100 followers you can start attracting subscribers and get recurring ad revenue on top of tips.
<</if>>
<<if $player.flags.streaming.cumScriberUnlock>>
You also have <<=$player.flags.streaming.doms.toLocaleString()>> domscribers and <<=$player.flags.streaming.cum.toLocaleString()>> elite cumtributors, thanks to your whorish behaviours.
<<elseif $player.flags.streaming.doms > 0>>
You also have <<=$player.flags.streaming.doms.toLocaleString()>> domscribers, thanks to your slutty behaviours.
<</if>>
<br><br>
<<if !State.hasPlayed("event_streaming_first_1")>>
[<<moveTo "event_streaming_first_1" "Let's stream!" 60 "<<set $scene.streaming = {}>>">>]<br>
<<else>>
[<<moveTo "event_streaming_root" "Let's stream!" 60 "<<set $scene.streaming = {}>>">>]<br>
<</if>>
<</if>>
[<<moveTo "room_livingroom" "Nope, no playing HOTTIES today.">>]
</div>/*#
#desc: play "skill" game
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _xp = Math.ceil(5*($scene.dTime.startTime/60))>>
<<applyExperience 'dexterity' 3 _xp $ALONE>>
<<applyExperience 'gaming' 8 _xp $ALONE>>
<<if $scene.sex_machine>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<set $npc_exgirlfriend.flags.bondage_machine.skill_game += 1>>
<<applyExperience 'bondage' 12 'terrible' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<<set $player.timebased.horny = 10>>
<<set _fatigue = $scene.dTime.startTime/2>>
<<applyFatigue _fatigue>>
<</if>>
<</if>>
<<resetStressMulti>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex_machine>>
The "Fill me Fun" "enhancements" mod augments your experience with bondage and a dildo in both of your holes. It's an extra challenge to focus while spit-roasted by cock, but the result is definitely a more intense experience — the dildo on your ass modulates its speed and depth to match your health while activating "combat sense" and drinking potions requires you to literally suck on the cock in your mouth. Once you get accustomed to the perverse upgrades, you actually perform better! Your whole body working together to down what had previously been a particularly "hard" boss.<br>
<br>
By the end of your session when the device releases you from its clutches, you're feeling a bit tired, yet also invigorated.
<<else>>
You start up your Gamestation VI and start the incredibly difficult Game "Opaque Anima", where every enemy has the will to live as much as you do and the desire to destroy you in many creative ways. You sometimes simply want to test your skill of throwing the controller through the room, but then you remember it's just a game. And a pretty good one as well, once you calm down and learn its secrets. Focusing and doing your best has you learning a lot about reflexes and micromanagement.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: play "smart" game
#status: FINISHED 0.4.0.0
#ignore_spell: vii,wilco
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _xp = Math.ceil(5*($scene.dTime.startTime/60))>>
<<applyExperience 'smart' 3 _xp $ALONE>>
<<applyExperience 'gaming' 8 _xp $ALONE>>
<<if $scene.sex_machine>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used += 1>>
<<set $npc_exgirlfriend.flags.bondage_machine.smart_game += 1>>
<<applyExperience 'bondage' 12 'terrible' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<<applyExperience 'penis' 15 'very' $ALONE>>
<<set $player.timebased.horny = 20>>
<<set _fatigue = $scene.dTime.startTime/3>>
<<applyFatigue _fatigue>>
<</if>>
<</if>>
<<resetStressMulti>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex_machine>>
Having a dildo stuffed in your ass certainly makes focusing on solving puzzles a bit trickier but, to your surprise, you find that, combined with the bondage that is part of the "Fill me Fun's" enhancements, you are actually better able to focus your full attention, imagining that you are nothing, but a restrained intellect. You steadily solve puzzles as you are constantly, but gently, fucked, the experience giving you a new appreciation for how wonderful cock can be for centering your attention.
<<else>>
You start up your Gamestation VI and start up the adventure "Star Quest VII: Return to Roman Numerals." A game of wits where you really need all your grey matter to solve riddles and help Ruthe Wilco to overthrow StarCon, the galactic government and return the golden mob to the centre of the universe before the Great Old Ones return to this side of the plane of existence. Unlike classic adventure games, this one has random generated content, so you have to figure a different way to save the known universe every time. You like the time where you proposed to C'thulhu the best. You feel smarter afterwards.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: play "relaxing" game
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade && !$scene.sex_machine || $scene.classic>>
<<set _fatigue = -$scene.dTime.startTime/8>>
<<applyFatigue _fatigue>>
<<set _stress = -$scene.dTime.startTime/10>>
<<applyStress _stress>>
<<if $player.timebased.stress < 10 && $scene.dTime.startTime >= 60>>
<<gainWillpower 1>>
<</if>>
<</if>>
<</if>>
<<resetStressMulti>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex_machine>>
<<if $fetish.bestiality_hard>>
As you load the "Fill me Fun" mod plug-in for "Animal Town Mayor," you notice an ad for a free to play meditation game called "PiToR: Plug in, Turn on, Relax."
<<else>>
To your surprise there does not seem to be a "Fill me Fun" mod that is compatible with "Animal Town Mayor." About to give up you get a suggestion of a free to play offering called "PiToR: Plug in, Turn on, Relax."
<</if>>
<br><br>
You need to decide which game to play:<br>
<br>
[<<link "Play Animal Town Mayor!">>
<<set $scene.dTime = {}>>
<<set $scene.dTime.timeMulti = 60>>
<<set $scene.dTime.text = "How long do you wish to play?">>
<<set $scene.dTime.startTime = 60>>
<<set $scene.dTime.changeTime = 10>>
<<set $scene.dTime.minTime = 10>>
<<set $scene.dTime.maxTime = 240>>
<<set $scene.dTime.followup = "room_play_games_relax_classic">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_meditative>>
[<<link "Play PiToR!">>
<<set $scene.dTime = {}>>
<<set $scene.dTime.timeMulti = 60>>
<<set $scene.dTime.text = "How long do you wish to play?">>
<<set $scene.dTime.startTime = 60>>
<<set $scene.dTime.changeTime = 10>>
<<set $scene.dTime.minTime = 10>>
<<set $scene.dTime.maxTime = 240>>
<<set $scene.dTime.followup = "room_play_games_relax_rrr">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<<else>>
[<<link "Try PiToR.">>
<<set $scene.dTime = {}>>
<<set $scene.dTime.timeMulti = 60>>
<<set $scene.dTime.text = "How long do you wish to play?">>
<<set $scene.dTime.startTime = 60>>
<<set $scene.dTime.changeTime = 10>>
<<set $scene.dTime.minTime = 10>>
<<set $scene.dTime.maxTime = 240>>
<<set $scene.dTime.followup = "room_play_games_relax_rrr">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]<br>
<</if>>
[<<moveTo "room_livingroom" "Do something else, instead." 60>>]
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade && !$scene.classic>>
You boot up your old favourite — "Animal Town Mayor," and consider how long you want to spend "relaxing" with your town of furry friends...<br>
<br>
[<<link "Play Animal Town Mayor!">>
<<set $scene.dTime = {}>>
<<set $scene.dTime.timeMulti = 60>>
<<set $scene.dTime.text = "How long do you wish to play?">>
<<set $scene.dTime.startTime = 60>>
<<set $scene.dTime.changeTime = 10>>
<<set $scene.dTime.minTime = 10>>
<<set $scene.dTime.maxTime = 240>>
<<set $scene.classic = true>>
<<set $scene.dTime.followup = "room_play_games_relax">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]
<<else>>
Starting up your Gamestation VI, you choose to play "Animal Town Mayor," and simply spend your time relaxing with the strange, but likeable, cast of strange furry characters who chose you, a total stranger and human, to be their mayor.<br>
<br>
[<<moveTo "room_livingroom" "Well, that was relaxing!" 60>>]
<</if>>
</div>/*#
#desc: play relaxing game w/rape rape revolution upgrade (bestiality)
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used += 1>>
<<set $npc_exgirlfriend.flags.bondage_machine.relax_bestiality_game += 1>>
<<set _xp = Math.ceil(5*($scene.dTime.startTime/60))>>
<<applyExperience 'bondage' 12 _xp $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size _xp $ALONE>>
<<applyExperience 'bestiality' 10 _xp $ALONE>>
<<set $player.timebased.horny = 20>>
<<set _fatigue = -$scene.dTime.startTime/3>>
<<applyFatigue _fatigue>>
<<set _stress = -$scene.dTime.startTime/10>>
<<applyStress _stress>>
<<if $player.timebased.stress < 10 && $scene.dTime.startTime >= 60>>
<<gainWillpower 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Starting up your Gamestation VI, you choose to play "Animal Town Mayor," and simply spend your time relaxing with the strange, but likeable, cast of strange furry characters who chose you, a total stranger and human, to be their mayor.<br>
<br>
<<if $fetish.bestiality_hard>>
The "Fill me Fun" enhancements for this game are subtle, but intense. Bound on all fours in the device, your find that your avatar has been replaced with a furry facade to match the other characters in the game. As you navigate the town, your ass is gently stretched by a dildo, a slow, gentle fucking combined with almost melodic vibrations that is remarkably relaxing even as it leaves you wanting more.<br>
<br>
An additional side effect of this new playstyle is that you find yourself being strangely attracted to your fellow townsfolk in a more... carnal manner.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Wow! that was relaxing!">>]
</div>/*#
#desc: play bondage-upgrade relaxing game
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used += 1>>
<<set $npc_exgirlfriend.flags.bondage_machine.relax_game += 1>>
<<set _xp = Math.ceil(5*($scene.dTime.startTime/60))>>
<<applyExperience 'bimbofication' 12 _xp $ALONE>>
<<applyExperience 'bondage' 12 _xp $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size _xp $ALONE>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size _xp $ALONE>>
<<set $player.timebased.horny = 20>>
<<set _fatigue = $scene.dTime.startTime/3>>
<<applyFatigue _fatigue>>
<<if setup.getTotalValue("bondage") > 10>>
<<if setup.getTotalValue("bondage") > 15>>
<<set _stress = -$scene.dTime.startTime/3>>
<<else>>
<<set _stress = -$scene.dTime.startTime/4>>
<</if>>
<<else>>
<<if setup.getTotalValue("bondage") > 5>>
<<set _stress = -$scene.dTime.startTime/5>>
<<else>>
<<set _stress = -$scene.dTime.startTime/6>>
<</if>>
<</if>>
<<set _stress -= 10>>
<<applyStress _stress>>
<<if $player.timebased.stress < 10 && $scene.dTime.startTime >= 60>>
<<gainWillpower 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.sex_machine>>
You try to startup PiToR without using your "extra" peripherals, but it refuses to even boot.<br>
<br>
[<<moveTo "room_livingroom" "Time for something else.">>]
<<else>>
Just as its name states, you plug a dildo into each hole, feel almost immediately turned on, and relax into your tight bondage.<br>
<br>
The game itself is remarkably ephemeral, reminding you in some ways of your VR therapy sessions. You follow along as a gentle voice commands you to relax, to surrender, to turn off your thoughts and just suck...<br>
<br>
<<if $player.body_ref.penis>>
The only thing that's technically "hard" about the game is you, and yet you find it
<<else>>
The game isn't exactly hard... but you are definitely wet, and you find the whole thing
<</if>>
quite addictive, floating through a pink world and "completing" puzzles whose solutions involve some combination of quieting your thoughts or working a dildo with your hands and holes as you are rewarded with gentle vibrations.<br>
<br>
You almost lose track of time before you finish, ending up feeling quite relaxed and content.<br>
<br>
[<<moveTo "room_livingroom" "Mmm, that was nice...">>]
<</if>>
</div>/*#
#desc: flat kitchen
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<movePets>>
<<if $npc_dog.stage && $npc_dog.location == "room_kitchen" && !$daily.dogEvent && !$scene.dogEvent && setup.hasFreeTime($now, $player, 1800)>>
<<set $scene.mealEvent = setup.hasFreeTime($now, $player, 1800) && $now.getUTCHours() >= 17 && $now.getUTCHours() <= 20 && random(1,2) == 2>>
<<if $npc_dog.stage >= 3>>
<<set $scene.mealEvent = $scene.mealEvent && random(1,10) == 1>>
<</if>>
<</if>>
<</if>>
<<set $scene.addMilk = false>>
<<set $scene.addCream = false>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_dog.stage && $npc_dog.location == "room_kitchen">>
<<createAdvBGR "./images/locations/flat_kitchen_01.png" setup.charImage("npc_dog")>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_kitchen">>
<<createAdvBGR "./images/locations/flat_kitchen_01.png" setup.charImage("npc_cat","npc_cat_2")>>
<<else>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_dog.stage && $npc_dog.location == "room_kitchen" && !$daily.dogEvent && !$scene.dogEvent && setup.hasFreeTime($now, $player, 1800)>>
<<if $scene.mealEvent>>
<<if $npc_dog.stage == 1>>
<<switch $player.flags.mealplan.base>>
<<case "cheap">>
You're heating up a depressing meal of knock-off hamburger helper when <<=setup.getNpcName("npc_dog","first")>> appears, staring up and looking forlorn.
<<case "premium">>
You're cooking up a steak when <<=setup.getNpcName("npc_dog","first")>> appears, drooling a puddle on the floor.
<<case "boiless">>
You're mixing up a batch of Boil-Less when <<=setup.getNpcName("npc_dog","first")>> appears, looking up at you with curious interest.
<<default>>
ERROR: unexpected player.flags.mealplan.base <<=$player.flags.mealplan.base>>
<</switch>>
<br><br>
[<<moveTo "event_dog_meal" 'Share some food with <<=setup.getNpcName("npc_dog","first")>>.' 300 "<<set $scene.action=true>>">>]<br>
[<<moveTo "event_dog_meal" "This is human food!" 300 "<<set $scene.action=false>>">>]
<<else>>
<<switch $player.flags.mealplan.base>>
<<case "cheap">>
You're heating up a depressing meal of knock-off hamburger helper when <<=setup.getNpcName("npc_dog","first")>> appears, rearing up onto the counter and scarfing down your meal.
<<case "premium">>
You're unpacking a steak for dinner when <<=setup.getNpcName("npc_dog","first")>> appears, ripping the meat out of your hand and setting to work eating it.
<<case "boiless">>
You're mixing up a batch of Boil-Less when <<=setup.getNpcName("npc_dog","first")>> bumps into you, making you spill your meal into the sink. You turn to the pantry to get some more Boil-Less mix only to find <<=setup.getNpcName("npc_dog","first")>> blocking the way.
<<default>>
ERROR: unexpected player.flags.mealplan.base <<=$player.flags.mealplan.base>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_dog","first")>> looks at you, and then looks pointedly towards his food-bowl full of dried kibble.<br>
<br>
<<printThought "Master is telling me I have to eat dog-food...">><br>
<br>
[<<moveTo "event_dog_meal" "Get down on all fours and eat like a bitch." 300 "<<set $scene.submit=true>>">>]<br>
[<<moveTo "event_dog_meal" "You aren't going to eat dog food!" 300 "<<set $scene.submit=false>>">>]
<</if>>
<<else>>
<<if $npc_dog.stage == 1>>
You walk into the kitchen to find <<=setup.getNpcName("npc_dog","first")>> staring at the cupboard where you put his treats. He looks at you eagerly.<br>
<br>
<<printThought "Hmm... seems like someone wants a treat...">><br>
<br>
[<<moveTo "event_dog_kitchen_basic_1" "Make him do a trick." 180 "<<set $scene.action=true>>">>]<br>
[<<moveTo "event_dog_kitchen_basic_1" "Just give him a snack." 60 "<<set $scene.action=false>>">>]
<<else>>
You walk into the kitchen and <<=setup.getNpcName("npc_dog","first")>> looks at you, and then towards the cupboard with the treats. You feel a sudden submissive shudder, this isn't like the old days where he would beg for a treat, no, this is him giving you an order, that as his personal bitch you are only going to be treated to his big, throbbing dick if you treat him first...<br>
<br>
[<<moveTo "event_dog_kitchen_adv" "Give him a treat, and then suck him off like a submissive bitch." 180 "<<set $scene.action=true>>">>]<br>
[<<moveTo "event_dog_kitchen_adv" "Just give him a snack." 60 "<<set $scene.action=false>>">>]
<</if>>
<</if>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_kitchen" && !$daily.catEvent && !$scene.catEvent && setup.hasFreeTime($now, $player, 1800)>>
<<if $npc_cat.stage == 1>>
You walk into the kitchen to find <<=setup.getNpcName("npc_cat","first")>> lounging on the counter. Noticing your presence she lets out a "@@.npc_cat;Meow.@@"<br>
<br>
<<printThought "Hmm... sounds like she wants something...">><br>
<br>
[<<moveTo "event_cat_kitchen_basic" "Pick her up for some cuddles and a treat." 600 "<<set $scene.action=true>>">>]<br>
[<<moveTo "event_cat_kitchen_basic" "Ignore her begging." 60 "<<set $scene.action=false>>">>]
<<else>>
As you're poking around the kitchen <<=setup.getNpcName("npc_cat","first")>> walks over, wending between your legs as she rubs up against you affectionately.<br>
<br>
[<<moveTo "event_cat_kitchen_adv" "Pick her up for some cuddles and a treat." 300>>]<br>
[<<moveTo "room_kitchen" "Get back to what you were doing." 30 "<<set $scene.catEvent = true>>">>]
<</if>>
<<else>>
<<include flatLinks>><br>
You enter your kitchen. <<if $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_kitchen">><<=setup.getNpcName("npc_cat","first")>> is lounging around, disinterested.<</if>><<if $npc_dog.stage && $npc_dog.location == "room_kitchen">> <<=setup.getNpcName("npc_dog","first")>> is sleeping next to his food-bowl.<</if>><br>
<br>
<<if $now.getUTCHours() < 5>>
Coffee in the wee hours of the morning? That seems like a bad idea.<br>
<br>
<<elseif ($player.flags.coffee.lastcoffee==null) || (setup.minDiff($now,$player.flags.coffee.lastcoffee)>60)>>
You think a coffee would be nice right now.
<<if setup.dayDiff($now,$player.flags.coffee.lastcoffee)>0>>
It feels like eons since you last enjoyed a coffee in peace.
<</if>>
<br><br>
<<if $fetish.penis_milking && ($player.timebased.milking.cream_storage > 0 || $player.flags.mealplan.cum_unlocked || setup.hasUpgrade($bed, 'penis_milker'))>>
<<if $player.timebased.milking.cream_storage >= 50>>
<label>Add "cream" to your coffee. <<checkbox "$scene.addCream" false true>></label><br>
<<else>>
[@@.link_locked;You do not have "cream" for your coffee.@@]<br>
<</if>>
<</if>>
<<if $fetish.penis_milking && ($player.timebased.milking.milk_storage > 0 || $player.body_ref.milkProduction > 0 || setup.hasUpgrade($bed, 'breast_milker'))>>
<<if $player.timebased.milking.milk_storage >= 10>>
<label>Add some milk to your coffee. <<checkbox "$scene.addMilk" false true>></label><br>
<<else>>
[@@.link_locked;You do not have milk for your coffee.@@]<br>
<</if>>
<</if>>
[<<moveTo "room_kitchen_coffee" "Drink a nice, hot Coffee." 60>>]
<br><br>
<</if>>
[<<moveTo "room_kitchen_set_food" "Make changes to your daily mealplan.">>]<br>
<<if $fetish.milking || $fetish.penis_milking>>
<<if $player.timebased.milking.milk_storage > 0 || $player.timebased.milking.cream_storage > 0>>
[<<moveTo "room_kitchen_fridge" "Check the fridge.">>]<br>
<<else>>
[@@.link_locked;There is presently nothing of interest in the fridge.@@]<br>
<</if>>
<<elseif $fetish.cum && $player.timebased.milking.cream_storage > 0>>
[<<moveTo "room_kitchen_fridge" "Check the fridge.">>]<br>
<</if>>
<<if $player.timebased.horny > 0>>
[<<moveTo "event_kitchen_ice" "Use some ice to cool your arousal.">>]<br>
<</if>>
<br>
<<include thoughts_home>>
<</if>>
</div>/*#
#desc: have coffee at home
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.coffee.lastcoffee=$now>>
<<applyStress -5>>
<<if $scene.addCream>>
<<applyExperience 'cum' 13 'little' $ALONE>>
<<set $player.timebased.milking.cream_storage -= 50>>
<<if setup.getTotalValue("cum") >= 10>>
<<set _stressChange = -setup.getTotalValue("cum")/10>>
<<applyStress _stressChange>>
<<else>>
<<set _stressChange = (10-setup.getTotalValue("cum"))>>
<<applyStress _stressChange>>
<</if>>
<</if>>
<<if $scene.addMilk>>
<<applyFatigue -30>>
<<set $player.timebased.milking.milk_storage -= 10>>
<<set $player.flags.mealplan.total_hormones += 1>>
<<set $player.flags.mealplan.hormones_since_grow += 1>>
<</if>>
<<applyFatigue -15>>
<</if>>
<<set _tmpTime = 240+Math.random()*240>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/coffee_01.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.addCream && $scene.addMilk>>
You whip up a nice cup of cafe au lait using some of your stored milk, finishing it off with just a dash of your extra-special "cream." <br>
<br>
The rich taste of your milk brings a smile to your face and causes you to sigh pleasantly, as if a great weight were lifted from your shoulders.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Enhancing things even further is the lovely taste of your "cream" — even as this slight hint can't help but make you fantasise of guzzling it by the bucketful...
<<else>>
The subtle flavour of <<getWordCum>> makes you feel even happier as you fantasise about drinking even more of that so-lovely beverage.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
The bitter taste of <<getWordCum>> cuts through even the roasted coffee flavour, yet you find yourself strangely enjoying it.
<<else>>
The bitter taste of <<getWordCum>> causes you to wrinkle your nose and you question why you added such a thing to your coffee.
<</if>>
<</if>>
<<elseif $scene.addCream>>
You brew up a strong cut of coffee with just a hint of "cream."
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Even this small taste has you eager for more and you fantasise about guzzling a whole pitcher of salty, wonderful <<getWordCum>>.
<<else>>
Though subtle, the taste of your <<getWordCum>> cuts through even the strong roasted flavour of the coffee, bringing a smile to your face and a hunger to your belly.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
The salty bitterness of the <<getWordCum>> pairs oddly with the roasted flavour of the coffee, though you find the combination strangely tasty.
<<else>>
The bitter taste of <<getWordCum>> causes you to wrinkle your nose and you question why you added such a thing to your coffee.
<</if>>
<</if>>
<<elseif $scene.addMilk>>
Whipping some of your milk into the fresh cup of coffee results in a decadently rich brew that brings a smile to your face as you feel energised and ready to face the day.
<<else>>
You sit down for a moment and ignore everything that happened to you lately to simply enjoy a nice cup of steaming hot coffee. For a short while, all your worries seem to disappear.
<</if>>
<br><br>
[<<moveTo "room_kitchen" "Finish your coffee." _tmpTime>>]
</div>/*#
#desc: use ice in kitchen
#status: FINISHED 0.8.5.0
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _stress = $player.timebased.horny/10>>
<<applyStress _stress>>
<<if !setup.checkItemTypeWorn("cage") || setup.getChastityLevel() != 5>>
<<set $player.timebased.horny = 0>>
<</if>>
<</if>>
<<set $scene.addMilk = false>>
<<set $scene.addCream = false>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
You grab some ice from the freezer and
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.getChastityLevel() == 5>>
attempt to use it on your crotch... but your devilish <<=setup.getItemTypeName('cage')>> proves as insulating as it is secure. Other than some melt that manages to sneak down from your now wet belly you're unable to actually dampen the fire between your legs, the high-tech <<if setup.isCage()>>cage<<else>>belt<</if>> remaining in total control.
<<else>>
<<if setup.isCage() && $player.body_ref.vagina>>
run it over your chastity cage and between the sensitive fold behind. While your prison provides some insulation, the net effect, particularly when you pop a piece of ice inside your <<getWordVagina>>, proves more than sufficient to quell your arousal.
<<else>>
run it over <<if setup.isCage()>>your chastity cage<<else>>the front of your chastity belt<</if>>. Your prison provides some insulation, but you feel the calming coolness spread through your genitals and, along with some slow breathing, you're able to dissipate your arousal.
<</if>>
<</if>>
<<else>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
run it along your <<getWordMyPenis>>, and then down and back and between your folds. Cooling your shaft and slipping one ice cube into your hot hole proves more than sufficient to cool you down and, more importantly, quell your lusts.
<<elseif $player.body_ref.penis>>
run it along your <<getWordMyPenis>>. You gasp softly as you soften and relax, the chill of the ice combining with some slow breathing to allow you to dissipate your arousal.
<<elseif $player.body_ref.vagina>>
run it between your folds before slipping a small cube into your <<getWordVagina>>. You gasp softly as you feel a pleasant chill spread through your body as your arousal dissipates and you're able to think more clearly.
<<else>>
ERROR: unexpected genitals!
<</if>>
<</if>>
<br><br>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
You curse your infernally advanced chastity device and whine in frustration, having accomplished little more than to leave yourself sweaty and even more desperate.
<<else>>
However much your arousal may have been reduced, it wasn't exactly the most comfortable of acts and you find yourself feeling frustrated in a different way.
<</if>>
<br><br>
[<<moveTo "room_kitchen" "Dry yourself off." 20 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: set your mealplan
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
Looking around, your bare kitchen reminds you of how little you cook. Oh well, food is fuel, right? You consider whether you want to change up your mealplan.<br>
<br>
You are currently living on a <<=setup.getMealplanInfo($player.flags.mealplan.base).name>> mealplan.<br>
<br>
<<if $player.sec_style.sex.boiless_bottle != "">>
Your manager is monitoring all of your food and hormone intake via the dildo-capped bottle you use to drink Boil-Less Pink. You imagine changing to a mealplan other than Boil-Less Pink will get you in trouble.<br>
<br>
<</if>>
<<if $player.flags.mealplan.unlocked.length == 1>>
You try to use your smart refrigerator to change your mealplan... but it would seem that, once again, <<=setup.getNpcName("npc_manager","formal")>> has intruded on your life beyond work, as it will allow no selection save for the Boil-Less plan she inflicted on you.<br>
<label>
<<set _mealPlanObj = setup.getMealplanInfo('boiless')>>
<<radiobutton "$player.flags.mealplan.base" 'boiless' checked>> <<=ucfirst(_mealPlanObj.name)>> mealplan — <<=_mealPlanObj.daily_price>> credits per day: <<=_mealPlanObj.description>></label><br>
<<else>>
<<for _i, _mealPlanId range $player.flags.mealplan.unlocked>>
<<set _mealPlanObj = setup.getMealplanInfo(_mealPlanId)>>
<label>
<<if $player.flags.mealplan.base == _mealPlanId>>
<<radiobutton "$player.flags.mealplan.base" _mealPlanId checked>>
<<else>>
<<radiobutton "$player.flags.mealplan.base" _mealPlanId>>
<</if>>
<<=ucfirst(_mealPlanObj.name)>> mealplan —
<<if _mealPlanId == "boiless" && $currentTasks.hasOwnProperty("psychiatrist_boiless_review") && !$currentTasks['psychiatrist_boiless_review'].finished>>
free, at least until your "trial" supply runs out...:
<<else>>
<<=_mealPlanObj.daily_price>> credits per day:
<</if>>
<<=_mealPlanObj.description>>
</label><br>
<</for>>
<</if>>
<br>
<<if $player.flags.mealplan.cum_unlocked>>
<<if $player.timebased.milking.cream_storage >= 3*setup.mLtoCum(10)>>
<label>You consider whether to "spice up" your meals with some <<if setup.getTotalValue("cum") > 15>>mouth-watering <<elseif setup.getTotalValue("cum") >= 10>>delicious <<elseif setup.getTotalValue("cum") <5>>revolting <</if>>cum.<br>
You have <<=Math.floor(setup.cumtomL($player.timebased.milking.cream_storage, true)/30)>> days worth of cumdomints on hand
<<checkbox "$player.flags.mealplan.cum" false true autocheck>>
</label>
<<elseif $player.timebased.milking.cream_supply > 0>>
You do not have enough "cream" on hand to properly supplement a days worth of meals.
<<else>>
You are out of cum to add to your daily meals! You'll have to gather more if you want to augment your food with tasty <<getWordCum>>!
<</if>>
<br><br>
<<if $player.timebased.milking.cream_supply > 0 && State.hasPlayed("event_cum_toothbrush_2")>>
<label>Brush your teeth with cum: <<checkbox "$player.flags.mealplan.cum_toothpaste" false true autocheck>></label><br>
<</if>>
<</if>>
<<if $player.flags.mealplan.hormones_unlocked>>
You consider adding hormone supplements to your meals, and how much.
<<if $player.flags.mealplan.hormones_required>>
<<=setup.getNpcName('npc_manager', 'formal')>> has mandated that you take hormones every day for the sake of your "health." You probably want to add at least a little to your meals if you don't want to risk getting in trouble.
<<if $player.sec_style.sex.boiless_bottle != "">>
<br>
Well, "risk" you suppose, though given that you're expected to suck down your every meal through the phallic-cap of your Boil-Less Pink blender bottle, you'd estimate the risk is more of a certainty.
<</if>>
<</if>>
<br><br>
<<switch $player.flags.mealplan.hormones>>
<<case 'none'>>
You are not currently taking supplementary hormones, some people may not appreciate your reticence to "take your medicine."
<<case 'little'>>
You are currently just taking a small dose of hormones so as to minimise changes, but technically fulfill requirements.
<<case 'normal'>>
You are currently taking hormones in the prescribed quantities and should expect steady, standard results.
<<case 'lots'>>
You are currently going beyond recommended doses, which may have extreme effects and interactions with other drugs...
<<default>>
ERROR: unexpected player.flags.mealplan.hormones <<=$player.flags.mealplan.hormones>>
<</switch>>
<br>
Set your daily hormone intake:<br>
<label>None: <<radiobutton "$player.flags.mealplan.hormones" 'none' autocheck>></label><br>
<label>A little: <<radiobutton "$player.flags.mealplan.hormones" 'little' autocheck>></label><br>
<label>As prescribed: <<radiobutton "$player.flags.mealplan.hormones" 'normal' autocheck>></label><br>
<label>Pour it on: <<radiobutton "$player.flags.mealplan.hormones" 'lots' autocheck>></label><br>
<br>
<</if>>
[<<moveTo "room_kitchen_save_food" "Save mealplan." 20>>]
</div>/*#
#desc: save food settings
#status: FINISHED 0.7.2.0
#*/
<<initRoom>>
<<include playerMenu>>
<<switch $player.flags.mealplan.base>>
<<case "cheap">>
<<set $player.timebased.fatiguemax = 200>>
<<case "premium">>
<<set $player.timebased.fatiguemax = 250>>
<<case "boiless">>
<<switch $player.flags.mealplan.hormones>>
<<case "none">>
<<set $player.timebased.fatiguemax = 220>>
<<case "little">>
<<set $player.timebased.fatiguemax = 230>>
<<case "normal">>
<<set $player.timebased.fatiguemax = 240>>
<<case "lots">>
<<set $player.timebased.fatiguemax = 250>>
<</switch>>
<</switch>>
<<if $player.flags.mealplan.cum>>
<<set $player.timebased.fatiguemax += 20>>
<</if>>
<<if $player.sec_style.body.boiless == "" && $player.flags.mealplan.base == "boiless" && $currentTasks.hasOwnProperty("psychiatrist_boiless_review") && $currentTasks['psychiatrist_boiless_review'].finished>>
/* Note: this happens if the player avoids using Boil-Less during the "trial" period, but then switches to it afterwards */
<<set $player.sec_style.body.boiless = "voluntary">>
<</if>>
<<moveTo "room_kitchen">>/*#
#desc: check cum and milk
#status: FINISHED 0.7.6.0
#ignore_spell: l,ml
#*/
<<set $scene.milk_quantity = 0>>
<<set $scene.cream_quantity = 0>>
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.timebased.milking.milk_storage > 0 || $player.timebased.milking.cream_storage > 0>>
<<if $fetish.milking && $player.timebased.milking.milk_storage > 0>>
You have <<=Number.parseFloat($player.timebased.milking.milk_storage*.04).toPrecision(3)>> litres of your milk stored.<br>
<br>
<<if $player.flags.milking.can_sell>>
<<if $player.timebased.milking.milk_storage >= 25>>
How many litres of milk would you like to sell?<br>
<<numberbox "$scene.milk_quantity" 1>>L [<<moveTo "room_kitchen_sell" 'Sell!' 300 "<<set $scene.sell='milk'>>">>]<br>
<<if $player.timebased.milking.milk_storage >= 50>>
[<<moveTo "room_kitchen_sell" 'Sell all milk.' 300 "<<set $scene.sell='all_milk'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You need at least 1 litre of milk to sell.@@]<br>
<</if>>
<</if>>
<<if $player.timebased.milking.milk_storage >= 25>>
[<<moveTo "room_kitchen_drink" 'Drink some milk.' 300 "<<set $scene.drink='milk'>>">>]<br>
<<else>>
[@@.link_locked;You do not have enough milk to drink.@@]<br>
<</if>>
<br>
<</if>>
<<if $fetish.cum && $player.timebased.milking.cream_storage > 0>>
You have <<=setup.cumtomL($player.timebased.milking.cream_storage)>> of <<if $fetish.sissy>>sissy <</if>>"cream" saved up.<br>
<br>
<<if $player.flags.milking.can_sell>>
<<if $player.timebased.milking.cream_storage >= setup.mLtoCum(10)>>
How many mL of "cream" would you like to sell?<br>
<<numberbox "$scene.cream_quantity" 10>>mL [<<moveTo "room_kitchen_sell" 'Sell!' 300 "<<set $scene.sell='cum'>>">>]<br>
<<if $player.timebased.milking.cream_storage >= 66>>
[<<moveTo "room_kitchen_sell" 'Sell all "cream."' 300 "<<set $scene.sell='all_cum'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You need at least 10 mL of cream to sell.@@]<br>
<</if>>
<</if>>
<<if $player.timebased.milking.cream_storage >= setup.mLtoCum(30)>>
[<<moveTo "room_kitchen_drink" 'Have a sip of "cream."' 300 "<<set $scene.drink='cum'>>">>]<br>
<<else>>
[@@.link_locked;You do not have enough "cream" to drink.@@]<br>
<</if>>
<</if>>
<<if $player.timebased.milking.cream_storage >= setup.mLtoCum(500)>>
You further contemplate your substantial hoard of cum...<br>
<br>
<<printThought "That looks like enough to have a full liquid lunch...">><br>
<br>
<<if setup.getTotalValue("cum") > 10>>
[<<moveTo "event_cum_shot_1" "Maybe just a shot..." 300>>]<br>
<<if setup.getTotalValue("cum") > 15>>
[<<moveTo "event_cum_meal_1" "I'm ravenous at the mere thought..." 600>>]<br>
<<else>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_cum_meal_1" 'Mmmm... what a tempting challenge...' 600>>] <<hint $options "Choking that much down would take an act of will.">><br>
<<else>>
[@@.link_locked;Even for you, this is a bit much, and would take an act of will.@@]<br>
<</if>>
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_cum_shot_1" 'A shot of cum? Why am I even contemplating such a thing? No way am I going to guzzle a whole glass though!' 300>>] <<hint $options "Pounding that much down would take an act of will.">><br>
<<else>>
[@@.link_locked;You don't think you can you force yourself to take a shot of cum!@@]<br>
<</if>>
[@@.link_locked;No way are you forcing yourself to guzzle cum!@@]<br>
<<else>>
[@@.link_locked;That's disgusting, why would you even think of that?@@]<br>
<</if>>
<</if>>
<<elseif $player.timebased.milking.cream_storage >= setup.mLtoCum(45)>>
You look at your store of <<getWordCum>> and realise you have enough to easily fill a shot glass...<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
[<<moveTo "event_cum_shot_1" "Mmm, a shot of cum? Could anything be better?" 300>>]<br>
<<else>>
[<<moveTo "event_cum_shot_1" 'A shot of cum? That sounds fun...' 300>>]<br>
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_cum_shot_1" 'A shot of cum? Why am I even contemplating such a thing?' 300>>] <<hint $options "Pounding that much down would take an act of will.">><br>
<<else>>
[@@.link_locked;You don't think you can you force yourself to take a shot of cum!@@]<br>
<</if>>
<<else>>
[@@.link_locked;That's disgusting, why would you even think of that?@@]<br>
<</if>>
<</if>>
<</if>>
<<else>>
You do not find anything of particular interest in the fridge.<br>
<</if>>
<br>
[<<moveTo "room_kitchen" "Close the fridge." 20>>]
</div>/*#
#desc: sell cum or milk
#status: FINISHED 0.7.6.0
#ignore_spell: mls,l,ml
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.milkDressEvent = false>>
<<set $scene.cumShortsEvent = false>>
<<if $scene.sell == "milk">>
<<if $scene.milk_quantity < 0>>
<<set $scene.sell = "neg_milk">>
<<elseif $scene.milk_quantity * 25 > $player.timebased.milking.milk_storage>>
<<set $scene.sell = "no_milk">>
<</if>>
<<set $scene.batches = $scene.milk_quantity>>
<<elseif $scene.sell == "cum">>
<<if $scene.cream_quantity < 0>>
<<set $scene.sell = "neg_cum">>
<<elseif setup.mLtoCum($scene.cream_quantity) > $player.timebased.milking.cream_storage>>
<<set $scene.sell = "no_cum">>
<</if>>
<<set $scene.batches = Math.floor($scene.cream_quantity/10)>>
<</if>>
<<switch $scene.sell>>
<<case 'milk'>>
<<set $player.flags.milking.sold_milk += $scene.batches * 25>>
<<set $player.timebased.milking.milk_storage -= $scene.batches * 25>>
<<set $scene.pay = 25 * $scene.batches>>
<<set $scene.milkDressEvent = $player.flags.milking.sold_milk >= 100*25 && !setup.checkItemOwned('dress_mm')>>
<<case 'all_milk'>>
<<set $scene.batches = Math.floor($player.timebased.milking.milk_storage/25)>>
<<set $player.flags.milking.sold_milk += 25*$scene.batches>>
<<set $player.timebased.milking.milk_storage -= 25*$scene.batches>>
<<set $scene.pay = 25 * $scene.batches>>
<<set $scene.milkDressEvent = $player.flags.milking.sold_milk >= 100*25 && !setup.checkItemOwned('dress_mm')>>
<<case 'cum'>>
<<set $player.flags.milking.sold_cream += setup.mLtoCum($scene.batches*10)>>
<<set $player.timebased.milking.cream_storage -= setup.mLtoCum($scene.batches*10)>>
<<set $scene.pay = 5 * $scene.batches>>
<<set $scene.cumShortsEvent = setup.cumtomL($player.flags.milking.sold_cream, true) >= 1000 && !setup.checkItemOwned('cum_shorts')>>
<<case 'all_cum'>>
<<set $scene.batches = Math.floor(setup.cumtomL($player.timebased.milking.cream_storage, true)/10)>>
<<set $player.flags.milking.sold_cream += setup.mLtoCum(10*$scene.batches)>>
<<set $player.timebased.milking.cream_storage -= setup.mLtoCum(10*$scene.batches)>>
<<set $scene.pay = 5 * $scene.batches>>
<<set $scene.cumShortsEvent = setup.cumtomL($player.flags.milking.sold_cream, true) >= 1000 && !setup.checkItemOwned('cum_shorts')>>
<</switch>>
<<if ["milk", "all_milk", "cum", "all_cum"].includes($scene.sell)>>
<<addCredits $scene.pay>>
<</if>>
<<if $scene.milkDressEvent>>
<<addItem 'dress_mm'>>
<<elseif $scene.cumShortsEvent>>
<<addItem 'cum_shorts'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sell == "neg_milk">>
You consider selling negative quantities of milk... but that is nonsensical, and you fail.
<<elseif $scene.sell == "neg_mum">>
You consider selling negative quantities of cream... but that is nonsensical, and you fail.
<<elseif $scene.sell == "no_milk">>
You do not have <<=$scene.batches>>Litres of milk to sell.
<<elseif $scene.sell == "no_cum">>
You do not have <<=$scene.batches*10>>mL of "cream" to sell.
<<elseif $scene.milkDressEvent>>
You sell off yet another <<if $scene.sell == 'milk' && $scene.milk_quantity == 1>>litre<<else>><<=$scene.batches>> litres<</if>> of milk. You're so used to the whole process you barely pay attention as the drone collects your offering... until it shoots off a small explosion of confetti and unfurls a banner announcing "CONGRATULATIONS! — Welcome to the 100 Litre Club!" <br>
<br>
<<printThought "Have I really sold that much?">><br>
<br>
After a short ditty (consisting of musical mooing) plays the drone opens a hatch and drops a small package into your lap. As it zips away you unfold the rolled up piece of clothing to reveal a long shirt/dress with the words "MEGA MILK" across the front.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
<<printThought "Hehe! I'm such a hu-cow! This is definitely a bit too casual for work... maybe the gym? I just wish it was a more flattering cut — or showed off my cleavage! These udders are for more than just production!">>
<<else>>
<<printThought "Hehe! I'm such a hu-cow! Though this outfit is definitely a bit too casual for work... maybe the gym?">>
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
<<printThought "Well... I guess that's true, given how much I've sold... definitely not something appropriate for work... maybe the gym? Or just to sleep in?">>
<<else>>
<<printThought "Well... I guess that's true, given how much I've sold... don't think I'm going to wear it outside... maybe to sleep in?">>
<</if>>
<</if>>
<<elseif $scene.cumShortsEvent>>
You sell off yet another <<if $scene.sell == 'cum' && $scene.batches == 1>>vial<<else>><<=$scene.batches>> small vials<</if>> of "cream." You're so used to the whole process you barely pay attention as the drone collects your offering... until it shoots off a small explosion of confetti and unfurls a banner announcing "CUMGRATULATIONS! — Welcome to the Litre of Cum Club!" <br>
<br>
<<printThought "Have I really sold that much?">><br>
<br>
After a short ditty plays the drone opens a hatch and drops a small package into your lap. As it zips away you unfold the rolled up piece of clothing to reveal a pair of VERY skimpy booty shorts with the words "CREAM FILLED" across the butt.<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
<<printThought "Hehe! These seem fun! I should, like, wear them to the gym and see if people will help make them true!">>
<<else>>
<<printThought "Mmmm, these make me feel thirsty — maybe I could wear it to the gym sometime?">>
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<printThought "Wow... these are... wow... if they didn't have such vulgar words on them I guess I could wear them at the gym?">>
<<else>>
<<printThought "Wow... who would ever even wear something like this?">>
<</if>>
<</if>>
<<else>>
<<switch $scene.sell>>
<<case 'milk'>>
Using your phone you quickly arrange for a pickup of milk, a drone showing up at your door a few minutes later to take the <<if $scene.sell == 'milk' && $scene.milk_quantity == 1>>full bottle<<else>><<=$scene.batches>> Litres<</if>> and give you a fresh container to fill for the future, your account credited with <<=$scene.pay>> credits. It also informs you that you have now sold a total of <<=Number.parseFloat($player.flags.milking.sold_milk*.04).toPrecision(3)>>L of milk.
<<case 'all_milk'>>
Using your phone you quickly arrange for a pickup of milk, a drone showing up at your door a few minutes later to watch ominously as you fill <<=$scene.batches>> with your milk. Once it has zipped away your account is credited with <<=$scene.pay>> credits. It also informs you that you have now sold a total of <<=Number.parseFloat($player.flags.milking.sold_milk*.04).toPrecision(3)>>L of milk.
<<case 'cum'>>
Using your phone you quickly arrange for a pickup of "cream." A drone appears at your door a few minutes later to take the <<if $scene.sell == 'milk' && $scene.milk_quantity == 1>>full small vial<<else>><<=$scene.batches*10>> mLs<</if>> and give you a fresh container to fill for the future, your account credited with <<=$scene.pay>> credits. It also informs you that you have now sold a total of <<=setup.cumtomL($player.flags.milking.sold_cream)>> of "cream."
<<case 'all_cum'>>
Using your phone you quickly arrange for a pickup of "cream." A drone appears at your door a few minutes later to watch ominously as you fill <<=$scene.batches>> small vials of with your cum. Once it has zipped away your account is credited with <<=$scene.pay>> credits. It also informs you that you have now sold a total of <<=setup.cumtomL($player.flags.milking.sold_cream)>> of "cream."
<<default>>
ERROR: unexpected scene.sell <<=$scene.sell>>
<</switch>>
<</if>>
<br><br>
[<<moveTo "room_kitchen_fridge" "Keep looking in the fridge." 20>>]<br>
[<<moveTo "room_kitchen" "Back to the kitchen." 20>>]
</div>/*#
#desc: drink cum or milk
#status: FINISHED 0.7.6.0
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.drink>>
<<case 'milk'>>
<<set $player.timebased.milking.milk_storage -= 25>>
<<applyFatigue -30>>
<<applyStress -5>>
<<set $player.flags.mealplan.total_hormones += 2>>
<<set $player.flags.mealplan.hormones_since_grow += 2>>
<<set $player.timebased.milking.milk_supply += 10>>
<<case 'cum'>>
<<setThreshold 'cum' 'cum_eater' 'cum_sipper'>>
<<set $player.timebased.milking.cream_storage -= setup.mLtoCum(30)>>
<<applyExperience 'cum' 18 'normal' $ALONE>>
<<if setup.getTotalValue("cum") >= 10>>
<<set _stressChange = -setup.getTotalValue("cum")/10>>
<<applyStress _stressChange>>
<<else>>
<<set _stressChange = (10-setup.getTotalValue("cum"))/2>>
<<applyStress _stressChange>>
<</if>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.drink>>
<<case 'milk'>>
You enjoy a nice glass of milk. Thick and creamy it leaves you feeling quite refreshed. You would swear you feel your breasts fill slightly and you recall something about milk concentrating hormones and you wonder at the effect of "recycling" like this.
<<case 'cum'>>
You take a quick sip from your store of saved-up cum.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Even cold you love it, like a heavenly treat of salty ambrosia.
<<else>>
It loses a bit of tang from being cold rather than hot from the source, but it is still the flavour you have come to love.
<</if>>
Licking your lips, you feel happier, your prior worries seeming less bad now that you've enjoyed a tasty treat.<br>
<br>
<<printThought "Mmmm, makes me hungry for more...">>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Cold it tastes quite a bit worse than fresh and you wonder if your growing obsession with it is maybe overblown.
<<else>>
You almost retch, the bitter flavour even worse cold.
<</if>>
You wrinkle your nose, wondering why you did such a thing, the act only serving to remind you of the uncontrolled spiral that has been your life of late.<br>
<br>
<<printThought "Yuck, why did I do that?">>
<</if>>
<<default>>
ERROR: unexpected scene.drink <<=$scene.drink>>
<</switch>>
<br><br>
[<<moveTo "room_kitchen_fridge" "Keep looking in the fridge." 20>>]<br>
[<<moveTo "room_kitchen" "Back to the kitchen." 20>>]
</div>/*#
#desc: masturbate at home, root
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<set $player.inside = true>>
<<set $scene.masturbate_style = "">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_dog.stage && $npc_dog.location == "room_computer">>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_computer">>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_cat","npc_cat_1")>>
<<else>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
You think about what might be the best way to release some stress.<br>
<br>
<<include thoughts_home>>
<<if setup.checkSlotFree(['penis']) || $player.flags.masturbation.caged && setup.checkItemTypeWorn("cage") && setup.checkItemVisible(setup.getItemFromType("cage"))>>
[<<link "Watch some porn on the internet.">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.1>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 20)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<goto room_masturbate_porn>><</link>>]<br>
<<elseif $player.body_ref.penis && setup.checkItemTypeWorn("cage") && !$player.flags.masturbation.caged>>
<<if setup.checkItemVisible(setup.getItemFromType("cage"))>>
[<<moveTo "event_masturbate_caged_1" "Watch some porn on the Internet." 300>>]<br>
<<else>>
<<if !setup.checkSlotFree(['penis']) && setup.getTotalValue('humiliation')>=3>>
<<if setup.checkItemTypeWorn("cage") && setup.checkItemVisible(setup.getItemFromType("cage"))>>
<<if $player.flags.masturbation.caged || $player.body_ref.vagina>>
[<<moveTo "event_masturbate_caged_1" "Watch some porn on the Internet and try to masturbate, despite your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>." 300>>]<br>
<</if>>
<<else>>
[<<link "Watch some porn on the Internet and <<if setup.analyzeWornTags(['skirt','pants'])=='skirt' && !setup.checkItemTypeWorn('panties')>>flip up your skirt to masturbate<<else>>masturbate through your clothing<</if>>.">>
<<set $scene.masturbate_style = "clothed">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.2>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 25)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<goto room_masturbate_porn>><</link>>]<br>
<</if>>
<<else>>
[@@.link_locked;Watch some porn on the Internet — you should probably take off some clothes first.@@]<br>
<</if>>
<</if>>
<<elseif setup.checkItemTypeWorn("cage") && !$player.flags.masturbation.caged>>
<<if $player.body_ref.penis>>
[@@.link_locked;Watch some porn on the Internet — You have to <<if setup.isCage()>>free your <<getWordMyPenis>><<else>>remove your chastity belt<</if>> first.@@]<br>
<<else>>
[@@.link_locked;Watch some porn on the Internet — You have to remove your chastity belt first.@@]<br>
<</if>>
<<elseif !setup.checkSlotFree(['penis']) && !(setup.checkItemTypeWorn('cage') && setup.checkItemVisible(setup.getItemFromType('cage')))>>
<<if setup.getTotalValue('humiliation')>=3>>
[<<link "Watch some porn on the Internet and <<if setup.analyzeWornTags(['skirt','pants'])=='skirt' && !setup.checkItemTypeWorn('panties')>>flip up your skirt to masturbate<<else>>masturbate through your clothing<</if>>.">>
<<set $scene.masturbate_style = "clothed">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.2>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 25)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<goto room_masturbate_porn>><</link>>]<br>
<<else>>
[@@.link_locked;Watch some porn on the Internet — you should probably take off some clothes first.@@]<br>
<</if>>
<</if>>
<<if $player.flags.masturbation.plug || setup.isItemTypeEquipped('plug')>>
<<if setup.isItemTypeEquipped('plug')>>
[<<link "Let's plug and play!">>
<<set $roomchange = true>>
<<set $player.timebased.dirtmulti = 1.2>>
<<set $player.timebased.fatiguemulti = 1.1>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 25)>>
<<set $player.timebased.dirtmulti = 1.0>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<goto room_masturbate_plug>><</link>>]<br>
<<else>>
[@@.link_locked;If you aren't plugged in, how can you play?@@] <<hint $options "You need to be wearing an anal plug for this.">><br>
<</if>>
<</if>>
<<if setup.checkItemOwned('basic_dildo')>>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage() && setup.getChastityLevel() < 5>>
[<<moveTo "room_masturbate_dildo_vag" "Play with yourself with your dildo." 360 "<<set $scene.dildo = 'basic_dildo'>>">>]<br>
<<else>>
[@@.link_locked;You can't use a dildo through your chastity belt!@@]<br>
<</if>>
<</if>>
<<if !$player.flags.masturbation.dildo>>
<<if setup.checkItemWorn("locking_plug")>>
[@@.link_locked;Your ass is locked full. No way you can fit a dildo right now.@@]<br>
<<else>>
[<<moveTo "room_masturbate_dildo_first" "Anally masturbate with a dildo." 360 "<<set $scene.dildo = 'basic_dildo'>>">>]<br>
<</if>>
<<else>>
<<if setup.checkItemWorn("locking_plug")>>
[@@.link_locked;Your ass is locked full. No way you can fit a dildo right now.@@]<br>
<<else>>
[<<moveTo "room_masturbate_dildo" "Pound your ass with a dildo again." 360 "<<set $scene.dildo = 'basic_dildo'>>">>]<br>
<</if>>
<</if>>
<<if setup.getTotalValue("oral") > 3 || setup.getTotalValue("penis") > 5>>
<<if $player.flags.masturbation.suck_dildo>>
[<<moveTo "room_suck_dildo" "Practice deepthroating your dildo." 360 "<<set $scene.dildo = 'basic_dildo'>>">>]<br>
<<else>>
[<<moveTo "room_suck_dildo_first" "Try sucking on a dildo..." 360 "<<set $scene.dildo = 'basic_dildo'>>">>]<br>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemOwned('large_dildo')>>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo "room_masturbate_dildo_vag" "Ride your giant dildo." 360 "<<set $scene.dildo = 'large_dildo'>>">>]<br>
<<else>>
[@@.link_locked;There's absolutely no way you could fit a giant dildo past your chastity belt!@@]<br>
<</if>>
<</if>>
<<if setup.checkItemWorn("locking_plug")>>
[@@.link_locked;Your ass is locked full. No way you can fit a dildo right now, especially a massive one!@@]<br>
<<else>>
[<<moveTo "room_masturbate_large_dildo" "Pound your ass with your giant dildo." 360>>]<br>
<</if>>
<<if setup.getTotalValue("oral") >= 10>>
[<<moveTo "room_suck_large_dildo" "Practice sucking off your giant dildo." 360>>]<br>
<<else>>
[@@.link_locked;Taking a massive dildo up my ass was hard enough, no way could I deepthroat it!@@]<br>
<</if>>
<</if>>
<<if setup.checkItemOwned('dog_dildo')>>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo "room_masturbate_dildo_vag" "Knot your cunt with your dog dildo." 360 "<<set $scene.dildo = 'dog_dildo'>>">>]<br>
<<else>>
[@@.link_locked;Your chastity belt shields you from using your artificial canine cock.@@]<br>
<</if>>
<</if>>
<<if setup.checkItemWorn("locking_plug")>>
[@@.link_locked;Your ass is locked full. No way you can fit a dildo right now, canine or otherwise.@@]<br>
<<else>>
[<<moveTo "room_masturbate_dog_dildo" "Try and knot your dog dildo in your ass." 360>>]<br>
<</if>>
<</if>>
<<if setup.checkItemOwned('horse_dildo')>>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo "room_masturbate_dildo_vag" "Ride your horse dildo." 360 "<<set $scene.dildo = 'horse_dildo'>>">>]<br>
<<else>>
[@@.link_locked;Even an equine dildo cannot pierce your chastity belt.@@]<br>
<</if>>
<</if>>
<<if setup.checkItemWorn("locking_plug")>>
[@@.link_locked;Your ass is locked full. No way you can fit an equine dildo right now.@@]<br>
<<else>>
[<<moveTo "room_masturbate_horse_dildo" "Pound your ass with your horse dildo." 360>>]<br>
<</if>>
<<if $player.flags.masturbation.horsecock>>
<<if setup.getTotalValue("oral") >= 10>>
[<<moveTo "room_suck_horse_dildo" "Practice sucking off your horse dildo." 360>>]<br>
<<else>>
[@@.link_locked;Taking a horsecock up my ass was hard enough, no way could I deepthroat it!@@]<br>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemOwned('dragon_dildo')>>
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage() && setup.getChastityLevel() < 5)>>
[<<moveTo "room_masturbate_dildo_vag" "Ride your dragon dildo." 360 "<<set $scene.dildo = 'dragon_dildo'>>">>]<br>
<</if>>
<<if setup.checkItemWorn("locking_plug")>>
[@@.link_locked;Your ass is locked full. No way you can fit a dildo right now, especially a draconic one!@@]<br>
<<else>>
[<<moveTo "room_masturbate_dragon_dildo" "Pound your ass with your dragon dildo." 360>>]<br>
<</if>>
<<if $player.flags.masturbation.dragoncock>>
<<if setup.getTotalValue("oral") >= 10>>
[<<moveTo "room_suck_dragon_dildo" "Practice sucking off your dragon dildo." 360>>]<br>
<<else>>
[@@.link_locked;Taking a dragon dildo up my ass was hard enough, no way could I deepthroat it!@@]<br>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemOwned('wand_vibrator')>>
[<<moveTo "room_masturbate_wand" "Grab your wand and cast a spell of induce orgasm." 360>>]<br>
<</if>>
<<if $player.body.breastsize[0] > 0>>
[<<moveTo "room_masturbate_breasts" "Play with your breasts." 360>>]<br>
<<else>>
[<<moveTo "room_masturbate_breasts" "Play with your nipples." 360>>]<br>
<</if>>
<<if setup.hasUpgrade($bed, 'penis_milker') || setup.hasUpgrade($bed, 'breast_milker')>>
<<if setup.hasUpgrade($bed, 'penis_milker') && setup.hasUpgrade($bed, 'breast_milker')>>
[<<moveTo "room_bedroom_use_milker_1" "Head to the bedroom and masturbate with your milking devices." 360>>]<br>
<<elseif setup.hasUpgrade($bed, 'breast_milker')>>
[<<moveTo "room_bedroom_use_milker_1" "Head to the bedroom and masturbate with your breast milkers." 360>>]<br>
<<else>>
[<<moveTo "room_bedroom_use_milker_1" "Head to the bedroom and masturbate with your penis milker." 360>>]<br>
<</if>>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.unlocked>>
<<if setup.checkItemWorn("locking_plug")>>
[@@.link_locked;Your ass is locked full. You would not be able to properly use the black box.@@]<br>
<<else>>
[<<moveTo "room_home_auto_bondage_1" "Pull out the black box." 360 "<<set $scene.masturbate_style='machine'>>">>]<br>
<</if>>
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
<<if $now.getUTCHours() < 4>>
<<set _morning = setup.setNextDate($now, 0, 3, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 3, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
<<if setup.checkItemWorn("locking_plug")>>
[@@.link_locked;Your ass is locked full. You would not be able to properly use the Dreammaker auto-bondage/fucking machine.@@]<br>
<<elseif $npc_exgirlfriend.flags.evil == 1 && ($now.getUTCHours() > 18 || $now.getUTCHours() < 3) && setup.hasFreeTime($now, $player, $currentTasks, _timeToMorning)>>
[<<moveTo "event_evil_ex_blackbox_1" "Strap yourself in to the Dreammaker auto-bondage/fucking machine." 360>>]<br>
<<else>>
[<<moveTo "room_home_auto_bondage_1" "Strap yourself in to the Dreammaker auto-bondage/fucking machine." 360 "<<set $scene.masturbate_style='machine'>>">>]<br>
<</if>>
<</if>>
[<<link "Do something else.">><<goto room_livingroom>><</link>>]
</div>/*#
#desc: masturbate to porn at home
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $ALONE>>
<<if $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_computer" && !$daily.catEvent && !$scene.catEvent && setup.hasFreeTime($now, $player, 1800)>>
<<initRoom>>
<<moveTo "event_cat_porn_1">>
<<else>>
<<set $scene.caged = setup.checkItemTypeWorn('cage')>>
<<set $scene.plugged = setup.checkItemTypeWorn('plug')>>
<<set $scene.clothing = setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','female'])>>
/%Masturbation per hand has no value. Either it works or not. It's always 0 or 100%, independent of any external values%/
<<set _tmp = ['masturbation_hand',0]>>
<<set $scene.cum = setup.canPlayerCum($player,[_tmp])>>
<<if !$scene.caged && $player.body_ref.penis && $player.body_ref.vagina>>
<<set $scene.cum = true>>
<</if>>
<<if $scene.masturbate_style=="clothed">>
<<set $scene.cloth_penis_top = setup.checkTopBodySlot('penis','top')>>
<<set $scene.cloth_penis_bottom = setup.checkTopBodySlot('penis','bottom')>>
<<if $scene.caged>>
<<if $scene.cum>>
<<if $scene.cloth_penis_bottom && $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<changeItemStatus $scene.cloth_penis_bottom 'cumsoaked' '["set",100]'>>
<</if>>
<<playerOrgasm>>
<<applyStress -10>>
<<else>>
<<if $scene.cloth_penis_bottom && $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<changeItemStatus $scene.cloth_penis_bottom 'cumsoaked' '["add",10]'>>
<</if>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<</if>>
<<applyExperience 'bimbofication' 9 'normal' $ALONE>>
<<applyExperience 'humiliation' 4 'little' $ALONE>>
<<else>>
<<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue('cum')==0>>
<<setThreshold 'cum' 'masturbation' 'jizz_in_panties'>>
<<else>>
<<applyExperience 'cum' 2 'insignificant' $ALONE>>
<</if>>
<<changeItemStatus $scene.cloth_penis_bottom 'cumsoaked' '["set",100]'>>
<</if>>
<<if $scene.femClothing==true>>
<<applyExperience 'bimbofication' 9 'little' $ALONE>>
<</if>>
<<applyExperience 'humiliation' 4 'little' $ALONE>>
<<if $scene.cum>>
<<playerOrgasm>>
<<applyStress -5>>
<</if>>
<</if>>
<<else>>
<<if $scene.cum>>
<<playerOrgasm>>
<<applyStress -5>>
<<else>>
<<changeHorny 10>>
<<applyStress 10>>
<</if>>
<</if>>
<<if !$scene.caged>>
<<set $player.flags.masturbation.normal = true>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_masturbate'
0
'theme_church_confession_masturbate'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/blowjob_1.mp4">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue('humiliation')<3>>
You're pretty rusty on that whole porn business, since it was actually the plan to remain virgin until marriage, not that that worked out all that well. Thanks to modern technology and search engines it only takes you a few minutes to find some stimulating material.
<<else>>
It only takes you a few minutes to find some stimulating material.
<</if>>
A classic tale as old as time, <<if ($scene.femClothing || (!$player.body_ref.penis && !$scene.caged)) && $options.fem>>Peach<<else>>Mario<</if>> the plumber has to fix some pipes, but gets delayed by a pink-haired bimbo bombshell.<br>
<br>
<<if $scene.caged>>
<<if $player.body_ref.penis>>
You soon realise the error in your thinking. Rubbing your <<getWordMyPenis>>
<<if $scene.masturbate_style=="clothed">>
through your <<=setup.getItemName($scene.cloth_penis_top)>>
<</if>>
<<if $scene.femClothing>>
while being dressed up
<<switch $scene.clothing>>
<<case 'sissy'>>
like <<if $fetish.sissy>>a total sissy<<else>>an ultra-feminine girl<</if>>
<<case 'cute'>>
in cute<<if $fetish.sissy>>, sissylike<</if>> clothing
<<case 'bold'>>
in hot lingerie
<<case 'fetish'>>
in fetishistic attire
<<case 'modest'>>
in modest feminine attire
<<case 'female'>>
in female attire
<</switch>>
whilst locked up in your <<=setup.getItemTypeName('cage')>> only makes you hornier. Your <<getWordMyPenis false>> expands, only to be <<if setup.isCage()>>crushed from all directions at once by the cage<<else>>kept tightly pressed against your body by your chastity belt<</if>>.
<<if !$scene.cum>>
You soon give up, frustrated, unable to release <<if $fetish.cum>>anything besides a few drops of precum<<else>>any of your pent-up need<</if>>. If you only had another way to release yourself.
<<else>>
You manage to stimulate your <<getWordMyPenis>> enough <<if $fetish.cum && $scene.cloth_penis_bottom>>to release a constant flow of cum right into your <<=setup.getItemName($scene.cloth_penis_bottom)>><<else>>for a hint of pleasure<</if>>, but without a proper orgasm you remain way too horny.
<</if>>
<br><br>
<<if ($player.flags.gloryhole.handjob > 0 || $player.flags.gloryhole.blowjob > 0) && !$player.sec_style.sex.camgirl && setup.hasUpgrade($computer, 'webcam') && $npc_manager.stage > 1 && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && setup.hasFreeTime($now, $player, $currentTasks, 4000)>>
[<<moveTo "event_camgirl_intro_forced_1" "Give up in frustration." 60>>]
<<elseif random(1,4) <= $npc_manager.stage>>
Stewing in your own horny frustration you don't notice that the video has ended until you glance up to see a totally different scene starts to play out...<br>
<br>
<<if ($npc_work_doctor.flags.aphrodisiac.stage >= 9 && $fetish.bestiality_hard || $npc_work_doctor.flags.aphrodisiac.stage >= 5 && !$fetish.bestiality_hard) && !State.hasPlayed("room_masturbate_porn_aphrodisiac")>>
[<<moveTo "event_masturbate_porn_aphrodisiac_1" "Keep watching." 180 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]<br>
<<else>>
[<<moveTo "room_masturbate_porn_special" "Keep watching." 180 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>><<set $scene.first = !State.hasPlayed('room_masturbate_porn_special')>>">>]<br>
<</if>>
[<<moveTo "room_livingroom" "Give up in frustration." 0 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]
<<else>>
[<<moveTo "room_livingroom" "Give up in frustration." 0 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]
<</if>>
<<else>>
while it is locked up in your <<=setup.getItemTypeName('cage')>> only makes you hornier. Your <<getWordMyPenis>> expands, only to be <<if setup.isCage()>>crushed from all directions at once by the cage<<else>>kept tightly pressed against your body by your chastity belt<</if>>.
<<if !$scene.cum>>
You soon give up, frustrated, unable to release anything besides a few drops of precum. If you only had another way to release yourself.
<<else>>
You manage to stimulate your <<getWordMyPenis>> enough to release a constant flow of cum right into your hand, but without a proper orgasm you remain way too horny.
<</if>>
<br><br>
<<if ($player.flags.gloryhole.handjob > 0 || $player.flags.gloryhole.blowjob > 0) && !$player.sec_style.sex.camgirl && setup.hasUpgrade($computer, 'webcam') && $npc_manager.stage > 1 && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && setup.hasFreeTime($now, $player, $currentTasks, 4000)>>
[<<moveTo "event_camgirl_intro_forced_1" "Give up in frustration." 60>>]
<<else>>
[<<moveTo "room_livingroom" "Give up in frustration." 0 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]
<</if>>
<</if>>
<<else>>
Grinding
<<if $scene.masturbate_style=="clothed">>
through your <<=setup.getItemName($scene.cloth_penis_top)>>
<</if>>
<<if $scene.femClothing>>
while being dressed up
<<switch $scene.clothing>>
<<case 'sissy'>>
like <<if $fetish.sissy>>a total sissy<<else>>an ultra-feminine girl<</if>>
<<case 'cute'>>
in cute<<if $fetish.sissy>>, sissylike<</if>> clothing
<<case 'bold'>>
in hot lingerie
<<case 'fetish'>>
in fetishistic attire
<<case 'modest'>>
in modest feminine attire
<<case 'female'>>
in female attire
<</switch>>
whilst locked up in your <<=setup.getItemTypeName('cage')>> only makes you hornier. Your <<getWordVagina>> drips, but it remains unreachable and locked behind the shield of your chastity belt.
<<if !$scene.cum>>
You soon give up, frustrated, unable to release anything<<if $fetish.cum>> besides a few drops of precum<</if>>. If you only had another way to release yourself.
<<else>>
You manage to stimulate your <<getWordMyPenis>> enough to <<if $fetish.cum && $scene.cloth_penis_bottom>>release a constant flow of cum right into your <<=setup.getItemName($scene.cloth_penis_bottom)>><<else>>obtain a modicum of relief<</if>>, but without a proper orgasm you remain way too horny.
<</if>>
<br><br>
<<if ($player.flags.gloryhole.handjob > 0 || $player.flags.gloryhole.blowjob > 0) && !$player.sec_style.sex.camgirl && setup.hasUpgrade($computer, 'webcam') && $npc_manager.stage > 1 && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && setup.hasFreeTime($now, $player, $currentTasks, 4000)>>
[<<moveTo "event_camgirl_intro_forced_1" "Give up in frustration." 60>>]
<<else>>
[<<moveTo "room_livingroom" "Give up in frustration." 0 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]
<</if>>
<<else>>
while being locked up in your <<=setup.getItemTypeName('cage')>> only makes you hornier. Your <<getWordVagina>> drips, but it remains unreachable and locked behind the shield of your chastity belt.
<<if $scene.cum>>
You soon give up, frustrated, unable to release anything<<if $fetish.cum>> besides a few drops of precum<</if>>. If you only had another way to release yourself.
<<else>>
As frustrating as it is, you can't stop and you find yourself humping a pillow, grinding desperately for the slightest stimulation denied by your infernal belt. Though you feel infuriatingly close you are unable to reach orgasm<<if $fetish.cum>>, merely soaking your thighs in the attempt<</if>>.
<</if>>
<br><br>
<<if ($player.flags.gloryhole.handjob > 0 || $player.flags.gloryhole.blowjob > 0) && !$player.sec_style.sex.camgirl && setup.hasUpgrade($computer, 'webcam') && $npc_manager.stage > 1 && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && setup.hasFreeTime($now, $player, $currentTasks, 4000)>>
[<<moveTo "event_camgirl_intro_forced_1" "Give up in frustration." 60>>]
<<else>>
[<<moveTo "room_livingroom" "Give up in frustration." 0 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
The prospect of choosing between your <<getWordMyPenis>> and your dripping cunt is too much. Tearing at your clothes you expose yourself, jerking with one hand while the other frigs yourself with all your might.<br>
<br>
<<if $scene.plugged>>
You grind on the plug in your ass, fantasising about fucking and being fucked,
<<else>>
You jerk and finger-blast, going so far as to adjust so you can slide one finger into your ass for a full "shocker" experience —
<</if>>
the Mario/Bimbo scene playing out in front of you almost tame compared to the thoughts racing through your mind.<br>
<br>
You climax hard, and repeatedly, your sex-changed body gushing<<if $fetish.cum && $player.body_ref.cumProduction > 0>> and squirting<</if>> with joy as you abuse yourself until the end of the film, your hands cramped and exhausted<<if $fetish.cum>> as you sit in a pool of your own sex<<else>>by the time you stop<</if>>.<br>
<br>
<<printThought "Maybe I am turning into a sex demon...">><br>
<br>
<<if $fetish.cum && setup.getTotalValue('cum')>15 && $player.body_ref.cumProduction > 0>>
[<<moveTo "room_masturbate_lickcum" "Eagerly slurp up your cum." 180 "<<playerOrgasm>><<set $player.timebased.horny = 5>><<set $scene.from_porn=true>>">>]<br>
[@@.link_locked;You are too much of a cum hound to let delicious <<getWordCum>> go to waste.@@]
<<else>>
<<if $fetish.cum && setup.getTotalValue('cum')>0 && $player.body_ref.penis && $player.body_ref.cumProduction > 0 && setup.getTotalValue('humiliation')>=3>>
It would be a shame to waste all that <<getWordCum>> you've just carelessly squirted around, don't you think?<br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<playerOrgasm>><<set $player.timebased.horny = 5>><<set $scene.from_porn=true>>">>]<br>
<</if>>
[<<moveTo "room_livingroom" "Do something else." 0 "<<playerOrgasm>>">>]
<</if>>
<<elseif $player.body_ref.penis>>
<<if $scene.masturbate_style=="">>
<<if $scene.femClothing>>
You stroke your <<getWordMyPenis>>
<<if $player.virgin.handjob || $player.virgin.anal || $player.virgin.blowjob || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
while dreaming about getting pounded yourself by <<if $options.fem>>Peach's<<else>>Mario's<</if>> energetic and well endowed <<getWordPenis>>.
<<else>>
as you marvel at the energy <<if $options.fem>>Peach<<else>>Mario<</if>> displays while pounding the pink-haired bimbo with <<his>> mighty <<getWordPenis>>. But seeing how you're dressed for your spanking session, you're unsure if you might prefer to be the Bimbo.
<</if>>
<<if $scene.cum>>
<<if $scene.plugged>>
Your other hand searches for your <<=setup.getItemTypeName('plug')>> and moves it up and down a little bit, stimulating your <<getWordAnus false>>.
<<elseif setup.getTotalValue('submission')>0>>
You take a finger of your other hand in your mouth, lubing it with spit amd then you start to finger your <<getWordAnus>> in the same rhythm as <<if $options.fem>>Peach<<else>>Mario<</if>> fucks the Bimbo.
<</if>>
It only takes you a short while before you <<if $fetish.cum>>cum<<else>>climax<</if>>.
<<if $fetish.cum>>
<br><br>
<<printThought "Aaahh... so much cum...">>
<</if>>
<<else>>
<<if $scene.plugged>>
Even though your other hand searches your <<=setup.getItemTypeName('plug')>> and moves it up and down a little bit, stimulating your <<getWordAnus false>> you are unable to reach an orgasm.
<<elseif setup.getTotalValue('submission')>0>>
Even though you take a finger of your other hand in your mouth, lubing it with spit and start to finger your <<getWordAnus>> in the same rhythm as <<if $options.fem>>Peach<<else>>Mario<</if>> fucks the Bimbo, you're still unable to reach an orgasm.
<</if>>
<<if $scene.caged>>
Looks like you need to find some other ways to relieve yourself <<if $fetish.sissy>>sissy<<else>>girl<</if>>!
<<else>>
Looks like you need to find some other ways to relieve yourself.
<</if>>
<br><br>
<<printThought "Aaahh... I want to cum so badly!">>
<</if>>
<<else>>
You work your <<getWordMyPenis>> as Mario fucks the pink-haired bimbo in the pussy and the anus like there is no tomorrow.
<<if $scene.cum>>
You fantasise how it would feel to fuck a babe like that yourself and climax within a matter of minutes.<br>
<br>
<<printThought "Wow. I really needed to get that out of my system...">>
<<else>>
Maybe you're simply not into porn like this, or you're getting used to relieve yourself by other means, but even after a lengthy beating, besides a few drops of precum, you're still unable to cum like you're used to.<br>
<br>
<<printThought "I need to find another way to relieve myself.">>
<</if>>
<</if>>
<br><br>
<<elseif $scene.masturbate_style=="clothed">>
<<if !$scene.femClothing>>
You start rubbing along your <<getWordMyPenis>> through your clothes. Watching Mario almost gets irrelevant as you awe the feeling of your <<getWordMyPenis>><<if $scene.cloth_penis_bottom>> being caressed by the material of your <<=setup.getItemName($scene.cloth_penis_bottom)>><</if>>.
<<if $scene.cum>>
You fantasise how it would feel to fuck a babe like that yourself and <<if $fetish.cum>>fill your underwear with <<getWordCum>> in<<else>>get off after just<</if>> a few minutes.
<<else>>
You fantasise how it would feel to fuck a babe like that yourself. But that does not seem to do the trick. Even after a lengthy session you're still unable to relieve yourself. Maybe you need a different kind of stimulation now.<br>
<br>
<<printThought "I need to find another way to relieve myself.">>
<</if>>
<<else>>
<<if setup.getTotalValue('feminization')<4>>
Realising that you are still wearing female undergarments, you start rubbing your <<getWordMyPenis>>
<<else>>
Enjoying your attire while masturbating, you start rubbing your <<getWordMyPenis>>
<</if>>
through your <<=setup.getItemName($scene.cloth_penis_top)>><<if $fetish.cum>> until your precum makes them sticky<</if>>.
<<if setup.getTotalValue('submission')>=3>>
<<if setup.checkItemTypeWorn('bra')>>
In the meantime your other hand is twisting and pinching your nipples through your <<=setup.getItemTypeName('bra')>>, until they are throbbing and hurt, like <<if $options.fem>>Peach<<else>>Mario<</if>> does with the pink-haired bimbo in the movie.
<<else>>
In the meantime your other hand is twisting and pinching your nipples until they are throbbing and hurt, like <<if $options.fem>>Peach<<else>>Mario<</if>> does with the pink-haired bimbo in the movie.
<</if>>
<</if>>
<<if !$scene.plugged>>
For a short moment, you wonder how it would feel to be fucked by <<if $options.fem>>Peach<<else>>Mario<</if>>,
<<if $scene.cum>>
the thought the final thing you need to <<if $fetish.cum>>spray a load of <<getWordCum>> into your undergarments<<else>>climax hard<</if>>, like the slut you are.<br>
<br>
<<printThought "Oh <<getWordGod>>. I am not turning into a Bimbo slut, like in the porno am I?">>
<<else>>
but you're unable to cum, even after a lengthy session. Maybe you need a different kind of stimulation now.<br>
<br>
<<printThought "I need to find another way to relieve myself.">>
<</if>>
<<else>>
<<if $scene.cum>>
Having your <<getWordAnus false>> plugged with the <<=setup.getItemTypeName('plug')>> you wonder how it would feel being fucked into submission by a real cock, like a submissive little slut. This feeling of total submission makes your <<getWordMyPenis>> <<if $fetish.cum && $scene.cloth_penis_bottom>>shoot a giant load of <<getWordCum>> into your <<=setup.getItemName($scene.cloth_penis_bottom)>><<else>>pulse with orgasm<</if>>.<br>
<br>
<<printThought "I want to feel some <<if $options.fem>>girlcock<<else>>manmeat<</if>> in my <<getWordAnus>>!" 40>><br>
<br>
<<printThought "Oh <<getWordGod>>. I am not turning into a Bimbo slut like in the porno am I?">>
<<else>>
Having your <<getWordAnus false>> plugged with the <<=setup.getItemName(_plug)>> you wonder how it would feel being fucked into submission by a real cock, like a submissive little slut. But even this feeling of total submission is not enough to make you cum. Maybe you need a different kind of stimulation now.<br>
<br>
<<printThought "Oh <<getWordGod>>, I need something to fuck my <<getWordAnus>>!">>
<</if>>
<</if>>
<</if>>
<br><br>
<</if>>
<<if $fetish.cum && setup.getTotalValue('cum')>15 && $player.body_ref.cumProduction > 0>>
[<<moveTo "room_masturbate_lickcum" "Eagerly slurp up your cum." 180 "<<set $player.timebased.horny = 5>><<set $scene.from_porn=true>>">>]<br>
[@@.link_locked;You are too much of a cum hound to let delicious <<getWordCum>> go to waste.@@]
<<elseif $fetish.cum && $scene.cum && $player.body_ref.cumProduction > 0 && setup.getTotalValue('cum')>0 && setup.getTotalValue('humiliation')>=3>>
It would be a shame to waste all that <<getWordCum>> you've just carelessly squirted around, don't you think?<br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<playerOrgasm>><<set $player.timebased.horny = 5>><<set $scene.from_porn=true>>">>]<br>
<<if ($player.flags.gloryhole.handjob > 0 || $player.flags.gloryhole.blowjob > 0) && !$player.sec_style.sex.camgirl && setup.hasUpgrade($computer, 'webcam') && $npc_manager.stage > 1 && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && setup.hasFreeTime($now, $player, $currentTasks, 4000)>>
[<<moveTo "event_camgirl_intro_forced_1" "Do something else." 60 "<<if $scene.cum>><<playerOrgasm>><<else>><<changeHorny 10>><</if>>">>]
<<else>>
[<<moveTo "room_livingroom" "Do something else." 0 "<<playerOrgasm>>">>]
<</if>>
<<else>>
<<if ($player.flags.gloryhole.handjob > 0 || $player.flags.gloryhole.blowjob > 0) && !$player.sec_style.sex.camgirl && setup.hasUpgrade($computer, 'webcam') && $npc_manager.stage > 1 && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && setup.hasFreeTime($now, $player, $currentTasks, 4000)>>
[<<moveTo "event_camgirl_intro_forced_1" "Do something else." 60 "<<if $scene.cum>><<playerOrgasm>><<else>><<changeHorny 10>><</if>>">>]
<<else>>
<<if $scene.cum>>
[<<moveTo "room_livingroom" "Continue." 0 "<<playerOrgasm>>">>]
<<else>>
[<<moveTo "room_livingroom" "Continue." 0 "<<changeHorny 10>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
<<if $scene.masturbate_style=="">>
<<if $scene.femClothing>>
You reach under your clothes to start fingering yourself,
<<if $player.virgin.handjob || $player.virgin.anal || $player.virgin.blowjob || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
while dreaming about getting pounded yourself by <<if $options.fem>>Peach's<<else>>Mario's<</if>> energetic and well endowed <<getWordPenis>>.
<<else>>
as you marvel at the energy <<if $options.fem>>Peach<<else>>Mario<</if>> displays while pounding the pink-haired bimbo with <<his>> mighty <<getWordPenis>>. But seeing how you're dressed for your spanking session, you're unsure if you might prefer to be the Bimbo.
<</if>>
<<if $scene.cum>>
<<if $scene.plugged>>
Your other hand searches for your <<=setup.getItemTypeName('plug')>> and moves it up and down a little bit, stimulating your <<getWordAnus false>>, the idea of being double-penetrated turning you on something fierce.
<<elseif setup.getTotalValue('submission')>0>>
You take a finger of your other hand in your mouth, lubing it with spit amd then you start to finger your <<getWordAnus>> in the same rhythm as <<if $options.fem>>Peach<<else>>Mario<</if>> fucks the Bimbo, fantasise about which hole you'd rather <<he>> fucked you in.
<</if>>
<br><br>
It only takes you a short while before you cum<<if $fetish.cum>>, gushing down your legs as<<else>>, in a lusty frenzy,<</if>> you pant and frig yourself to another two orgasms before going limp.<br>
<br>
<<printThought "Aaahh... so wet...">>
<<else>>
<<if $scene.plugged>>
Even though your other hand searches for your <<=setup.getItemTypeName('plug')>> and moves it up and down a little bit, stimulating your <<getWordAnus false>> you are unable to reach an orgasm, your body stubbornly resisting your need to cum.
<<elseif setup.getTotalValue('submission')>0>>
Even though you take a finger of your other hand in your mouth, lubing it with spit and start to finger your <<getWordAnus>> in the same rhythm as <<if $options.fem>>Peach<<else>>Mario<</if>> fucks the Bimbo, you're still unable to reach an orgasm, your body stubbornly resisting your need to cum.
<</if>>
<<if $scene.caged>>
Looks like you need to find some other ways to relieve yourself <<if $fetish.sissy>>sissy<<else>>girl<</if>>!
<<else>>
Looks like you need to find some other ways to relieve yourself.
<</if>>
<br><br>
<<printThought "Aaahh... I want to cum so badly!">>
<</if>>
<<else>>
<<if $player.body_ref.penis>>
You work your <<getWordMyPenis false>> as <<if $options.fem>>Peach<<else>>Mario<</if>> fucks the pink-haired bimbo in the pussy and the anus like there is no tomorrow.
<<if $scene.cum>>
You fantasise how it would feel to fuck a babe like that yourself and climax within a few minutes.<br>
<br>
<<printThought "Wow. I really needed to get that out of my system...">>
<<else>>
Maybe you're simply not into porn like this, or you're getting used to relieve yourself by other means, but even after a lengthy beating,<<if $fetish.cum>> besides a few drops of precum,<</if>> you're still unable to cum like you're used to be.<br>
<br>
<<printThought "I need to find another way to relieve myself.">>
<</if>>
<<else>>
You finger yourself as <<if $options.fem>>Peach<<else>>Mario<</if>> fucks the pink-haired bimbo in the pussy and the anus like there is no tomorrow.
<<if $scene.cum>>
You fantasise how it would feel to get railed like that and climax hard, your orgasms syncing up with the porn starlet's own screaming climaxes.<br>
<br>
<<printThought "Wow. I really needed to get that out of my system...">>
<<else>>
Maybe you're simply not into porn like this, or you're getting used to relieve yourself by other means, but the video ends and, while the stars have cum several times, you've yet to get off.<br>
<br>
<<printThought "I need to find another way to relieve myself.">>
<</if>>
<</if>>
<</if>>
<br><br>
<<elseif $scene.masturbate_style=="clothed">>
<<if !$scene.femClothing>>
You start fingering yourself through your clothes. Watching <<if $options.fem>>Peach<<else>>Mario<</if>> almost gets irrelevant as you focus on the feeling of the fabric rubbing against your clit.
<<if $scene.cum>>
You fantasise how it would feel to be fucked like that<<if $fetish.cum>> and soak your underwear<<else>>get off<</if>> in a matter of minutes.
<<else>>
You fantasise how it would feel to be fucked like that yourself. But that does not seem to do the trick. Even after a lengthy session you're still unable to relieve yourself. Maybe you need a different kind of stimulation.<br>
<br>
<<printThought "I need to find another way to relieve myself.">>
<</if>>
<<else>>
<<if setup.getTotalValue('feminization')<4>>
Realising that you are still wearing female undergarment, you start rubbing yourself
<<else>>
Enjoying your attire while masturbating, you start rubbing yourself
<</if>>
through your <<=setup.getItemName($scene.cloth_penis_top)>> until you make them sticky.
<<if setup.getTotalValue('submission')>=3>>
<<if setup.checkItemTypeWorn('bra')>>
In the meantime your other hand is twisting and pinching your nipples through your <<=setup.getItemTypeName('bra')>>, until they are throbbing and hurt, like <<if $options.fem>>Peach<<else>>Mario<</if>> does with the pink-haired bimbo in the movie.
<<else>>
In the meantime your other hand is twisting and pinching your nipples until they are throbbing and hurt, like <<if $options.fem>>Peach<<else>>Mario<</if>> does with the pink-haired bimbo in the movie.
<</if>>
<</if>>
<<if !$scene.plugged>>
For a short moment, you wonder how it would feel to be fucked by <<if $options.fem>>Peach<<else>>Mario<</if>>,
<<if $scene.cum>>
the thought the final thing you need to <<if $fetish.cum>>gush into your panties<<else>>cum hard<</if>>, like the slut you are.<br>
<br>
<<printThought "Oh <<getWordGod>>. I am not turning into a Bimbo slut, like in the porno am I?">>
<<else>>
but you're unable to get off, even after a lengthy session. Maybe you need a different kind of stimulation now.<br>
<br>
<<printThought "I need to find another way to relieve myself.">>
<</if>>
<<else>>
<<if $scene.cum>>
Having your <<getWordAnus false>> plugged with the <<=setup.getItemTypeName('plug')>> you wonder how it would feel being fucked into submission real cocks, to take it in both holes like a submissive little slut. This feeling of total submission makes you <<if $fetish.cum && $scene.cloth_penis_bottom>>squirt into your <<=setup.getItemName($scene.cloth_penis_bottom)>><<else>>cum hard<</if>>.<br>
<br>
<<printThought "I want to feel some <<if $options.fem>>girlcock<<else>>manmeat<</if>> inside of me!" 40>><br>
<br>
<<printThought "Oh <<getWordGod>>. I am not turning into a Bimbo slut like in the porno am I?">>
<<else>>
Having your <<getWordAnus false>> plugged with the <<=setup.getItemName(_plug)>> you wonder how it would feel being fucked into submission by real cocks, to take it in both holes like a submissive little slut. But even this feeling of total submission is not enough to makes you cum. Maybe you need a different kind of stimulation now.<br>
<br>
<<printThought "Oh <<getWordGod>>, I need something to fuck my <<getWordAnus>>!">>
<</if>>
<</if>>
<</if>>
<br><br>
<</if>>
<<if ($player.flags.gloryhole.handjob > 0 || $player.flags.gloryhole.blowjob > 0) && !$player.sec_style.sex.camgirl && setup.hasUpgrade($computer, 'webcam') && $npc_manager.stage > 1 && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && setup.hasFreeTime($now, $player, $currentTasks, 4000)>>
[<<moveTo "event_camgirl_intro_forced_1" "Do something else." 60 "<<playerOrgasm>>">>]
<<else>>
[<<moveTo "room_livingroom" "Do something else." 0 "<<playerOrgasm>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: masturbate at home with anal plug
#status: FINISHED 0.4.0.0
#*/
/* NOTE: it is assumed that you're already plugged to get this scene */
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ndef $scene.chosenLocation>>
<<set $scene.chosenLocation = "room_livingroom">>
<</if>>
<<set $scene.horny = $player.timebased.horny>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<<set $scene.legsId = setup.getItemFromType('legwear')>>
<<set $scene.size = 'average'>>
<<if setup.getEffectivePlugSize()-5 > setup.getTotalValue("anal")>>
<<set $scene.size = 'too_large'>>
<<applyStress 10>>
<<elseif setup.getEffectivePlugSize()+5 < setup.getTotalValue("anal")>>
<<set $scene.size = 'too_small'>>
<<applyStress 3>>
<</if>>
<<if $scene.size == 'average'>>
<<if setup.isItemTypeEquipped("cage")>>
<<set $scene.cum = setup.canPlayerCumSimple($player,setup.getTotalValue('anal'))>>
<<else>>
<<set $scene.cum = true>>
<</if>>
<<if $scene.cum>>
<<playerOrgasm>>
<<applyStress -10>>
<<else>>
<<changeHorny 10>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<</if>>
<<applyExperience 'anal' setup.getEffectivePlugSize() 'very' $ALONE>>
<</if>>
<<set $player.flags.masturbation.plug = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/masturbation_plug_01.mp4">>
<div id="invframe" class="scrolltext">
<<switch $scene.size>>
<<case 'too_large'>>
You try to play with your plug, but it is just too big, barely moving as your stretched ass strains to not just shoot it across the floor, your efforts only succeeding in raising your heart-rate, and your frustrations.<br>
<br>
<<printThought "Maybe this is a bit too much for me to be training with yet...">><br>
<br>
[<<moveTo "room_livingroom" "Give up in frustration and do something else." 60>>]
<<case 'too_small'>>
You reach back to try to play with your plug, but it is like trying to stir a stock-pot with a teaspoon.<br>
<br>
<<printThought "Ugh, I need something bigger to properly fill my hole...">><br>
<br>
[<<moveTo "room_livingroom" "Give up in frustration and do something else." 60>>]
<<case 'average'>>
<<if $scene.horny>50>>
Your horny mind fixates on the <<=$scene.plugObj.name>> in your ass.
<<elseif $scene.horny>25>>
The embers of your arousal soon roar into a proper fire as you think about, and feel, the <<=$scene.plugObj.name>> in your ass.
<<else>>
Your thoughts turned towards the <<=$scene.plugObj.name>> in your ass you soon feel your arousal rising.
<</if>>
<<if setup.isItemTypeEquipped("panties")>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
Pulling off your pants and <<=setup.getItemObjFromType("panties").name>>
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
Flipping up your skirt you pull off your <<=setup.getItemObjFromType("panties").name>>
<<else>>
Removing your <<=setup.getItemObj($scene.legsId).name>> and your <<=setup.getItemObjFromType("panties").name>>
<</if>>
<<else>>
Shimmying out of your <<=setup.getItemObjFromType("panties").name>>
<</if>>
you reach around behind to finger your plug.
<<else>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
Pulling off your pants to reveal your lack of undergarments
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
Flipping up your skirts to reveal your lack of undergarments
<<else>>
Removing your <<=setup.getItemObj($scene.legsId).name>>
<</if>>
<<else>>
Already <<if setup.checkItemTypeWorn("dress") || setup.checkItemTypeWorn("shirt") || setup.getItemFromType("strapless_dress") != "">>half <</if>>naked
<</if>>
you reach around behind to finger your plug.
<</if>>
<br><br>
<<if setup.isItemTypeEquipped("cage")>>
Wiggling the plug has <<if $player.body_ref.penis>>your poor, <<getWordMyPenis>> straining with excitement<<else>>you dripping within your belt<</if>>. Ignoring your out of reach <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<getWordVagina>><</if>>, you focus on your rear, clenching around your "intruder" and wiggling it with your finger.<br>
<br>
<<if $scene.cum>>
Walking over to a mirror you turn around, admiring the view and spreading your cheeks to show off your occupant. Moaning with lust you barely even consider your imprisoned member, obsessed with your rear as you clench and hump. The steady teasing of your hole and drumming against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> builds and builds until, with a gasp and a shudder you
<<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
cum, your boijuices leaking <<if setup.isCage()>>out of your cage<<else>>down your leg<</if>> like tears of joy.<br>
<br>
<<if (setup.getTotalValue("cum") > 0) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips while you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming at your feet, you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis false>> means.
<</if>>
<<else>>
climax, <<if $player.body_ref.penis>>straining and twitching inside its prison as you dry orgasm<<else>>dripping your excitement past your belt and down your leg<</if>>.
<</if>>
<<else>>
Try as you might, you just can't reach relief, the <<=$scene.plugObj.name>> in your ass wonderful and stimulating, but somehow not enough to get you off. Your <<if $player.body_ref.penis>><<getWordMyPenis>> weeping a few scant drops of pre cum<<else>><<getWordVagina>> juices dripping down your thigh<</if>> is your only reward before you give up in still-horny frustration. Reaching around behind, you spread your cheeks, focusing on the <<=$scene.plugObj.name>> inside of you, milking it, imagining that it was bigger, deeper. You moan with frustrated lust as, despite your clenching and wiggling and humping the relief of an orgasm remains as locked away as your poor <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<getWordVagina>><</if>>.
<</if>>
<<else>>
You try to make a game of it, avoiding touching your <<if $player.body_ref.penis>>very erect <<getWordMyPenis>><<else>>wet <<getWordVagina>><</if>> as you focus on your rear companion. The pleasure of the <<=$scene.plugObj.name>> stretching your hole and probing your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> slowly becomes too much. Spreading your ass in front of a mirror to admire the plug peeking out you hump the air and finally grab yourself, the mere touch of your hand <<if $player.body_ref.penis>>around your <<getWordMyPenis>><<else>>between your folds<</if>> is the final straw and you
<<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
spurt with joy.<br>
<br>
<<if (setup.getTotalValue("cum") > 0) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips while you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming at your feet, you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis>> means.
<</if>>
<<else>>
spasm with joy.
<</if>>
<</if>>
<br><br>
Panting with exertion, you pull yourself back together. The deed done,
<<if setup.isItemTypeEquipped("panties")>>
and the plug is still nestled in your bum you pull on your panties<<if $scene.legsId != "">> and then the rest of your clothes<</if>>.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("skirt")) || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
you let your skirt fall back into place. Smoothing it over your <<if setup.getItemFromType("cage")>><<getWordMyPenis>> and the fun bonus you still have stuffed behind<<else>>thighs and bum and the "secret" hidden betwixt your cheeks<</if>>.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("pants"))>>
you pull up your pants, the plug still safely occupying your bum.
<<elseif setup.checkItemTypeWorn("shirt")>>
you remain pantsless, continuing to shirtcock it with the plug still in your ass<<if setup.getItemFromType("cage")>> and your <<getWordMyPenis false>> in its chastity prison<</if>>.
<<else>>
you remain as naked as you started, the plug yet inside you<<if setup.getItemFromType("cage")>> and your <<getWordMyPenis false>> in its chastity prison<</if>>.
<</if>>
<br><br>
<<if $fetish.cum && setup.getTotalValue('cum') > 15 && $player.body_ref.cumProduction > 0 && $player.body_ref.penis>>
[<<moveTo "room_masturbate_lickcum" "Eagerly slurp up your cum." 180 "<<set $player.timebased.horny = 5>>">>]<br>
[@@.link_locked;You are too much of a cum hound to let delicious <<getWordCum>> go to waste.@@]
<<elseif $fetish.cum && $scene.cum && setup.getTotalValue('cum')>0 && setup.getTotalValue('humiliation')>=3 && $player.body_ref.cumProduction > 0 && $player.body_ref.penis>>
<<printThought "It would be a shame to waste all that <<getWordCum>> you've just carelessly squirted around...">><br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<changeHorny 5>>">>]<br>
[<<moveTo $scene.chosenLocation "Do something else." 0>>]
<<else>>
[<<moveTo $scene.chosenLocation "Continue." 0>>]
<</if>>
<<default>>
ERROR: unexpected scene.size <<=$scene.size>>
<</switch>>
</div>/*#
#desc: lick up cum after masturbating at home
#status: FINISHED 0.4.0.0
#*/
<<set _femClothing = false>>
<<if setup.checkVisibleClothingTag('female') > 50>>
<<set _femClothing = true>>
<</if>>
<<set _firsttime = false>>
<<set _otherbefore = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $ALONE>>
<<if !$player.virgin.swallow_cum_self>>
<<set $player.virgin.swallow_cum_self = true>>
<<set _firsttime = true>>
<<if $player.virgin.swallow_cum_other == true>>
<<set _otherbefore = true>>
<</if>>
<</if>>
<<set $scene.first = !(setup.hasThreshold('cum', 'toilet', 'dispose_evidence') || setup.hasThreshold('cum', 'masturbation', 'lick_it_up'))>>
<<if $scene.masturbate_style=="clothed">>
<<set _c1 = setup.checkTopBodySlot('penis','bottom')>>
<<if _c1>>
<<set _i1 = setup.getItemName(_c1)>>
<<set _panties = setup.getItemFromType('panties')>>
<<changeItemStatus _c1 'cumsoaked' '["set",50]'>>
<<else>>
<<set $scene.masturbate_style = "">>
<</if>>
<<else>>
<</if>>
<<setThreshold 'cum' 'masturbation' 'lick_it_up'>>
<<if !$player.sec_style.sex.drink_cum>>
<<set $player.sec_style.sex.drink_cum = "voluntary">>
<</if>>
<<applyExperience 'cum' 12 'insignificant' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.getTotalValue('cum')<5>>
<<createAnimatedBGR "./video/swallow_cum_1.mp4">>
<<else>>
<<createAnimatedBGR "./video/lick_cum.mp4" true>>
<</if>>
<div id="invframe" class="scrolltext">
<<if _otherbefore>>
Your curiosity got the better of you. You've already tasted the <<getWordCum>> of another's loins, and now you want to compare it to your own.
<<elseif _firsttime>>
<<printThought "What the hell am I doing?">><br>
<br>
You're confused. Why do you want to taste your own <<getWordCum>> right now? You're into girls! But <<if $options.fem>>some girls have <<getWordCum>> too<<else>>are you<</if>>? So much has happened lately, leaving nagging doubts in your mind.
<<elseif $scene.first>>
Tentatively you lick up your <<getWordCum>>... just to dispose of the evidence, right?
<<else>>
Licking your own cum has become like a ritual after masturbating. You're almost as eager to lick up your <<getWordCum>> afterwards as you were to climax in the first place!
<</if>>
<<if $scene.masturbate_style=="">>
You start licking at your fingers, like you're tasting cookie dough. You sprayed quite a load into your hand.
<<elseif $scene.masturbate_style=="clothed">>
You take off your <<=_i1>> and start licking the <<getWordCum>> off it, like you're licking cookie dough from a bowl. You sprayed quite a load in your <<=_i1>>.
<<elseif $scene.masturbate_style=="machine">>
On all fours you lick up every spilled drop of <<getWordCum>> that you have spilled across the padded vinyl base of the bondage contraption.
<</if>>
It is viscous and gooey, and has a strong, unique and yet not unpleasant smell.
<<if setup.getTotalValue('cum')<5>>
Just a little dip of your tongue should be enough to evaluate its taste. Just a little dip, nothing more, you say to yourself.<br>
<br>
<<printThought "I am just going to take a little taste... solely to satisfy... my curiosity, and not, because I absolutely love the... flavour!">><br>
<br>
Before you can even think about what just happened, you've already enjoyed slurping up the whole load.
<<else>>
You know you won't be satisfied with just a little bit so you swallow it all like the good little cumslut you are. You've accepted the fact that you love the taste of cum on your tongue bathing all your taste buds in it.
<</if>>
You let it roll around your tongue, like you're tasting a fine glass of wine, and only once the flavour has filled your throat do you swallow it.<br>
<br>
<<if setup.getTotalValue('cum')<5>>
<<printThought "Oh no. What have I done? This is so much unlike me!">>
<<else>>
<<printThought "I love the taste of cum so much!">>
<</if>>
<br><br>
<<if setup.getTotalValue('cum')>=5>>
Oh no, it seems some of the <<getWordCum>> has spilled on the floor. For a second, you hesitate, but your desires guide your tongue towards the floor and you start licking it like a cat lapping up spilt milk. You lick and lick until there's not a drop of <<getWordCum>> left — only a smear of saliva on the floor remains as evidence of your kinky deed.<br>
<br>
<<if setup.getTotalValue('cum')<10>>
<<printThought "Oh no. I am such a naughty cumwhore! I am not going to get addicted, am I?">>
<<else>>
<<printThought "Oh <<getWordGod>>, this tastes so good. I need more!">>
<</if>>
<br><br>
<</if>>
<<if $scene.hasOwnProperty('chosenLocation')>>
[<<moveTo $scene.chosenLocation "Continue." 0>>]
<<else>>
<<if $scene.from_porn>>
<<if ($player.flags.gloryhole.handjob > 0 || $player.flags.gloryhole.blowjob > 0) && !$player.sec_style.sex.camgirl && setup.hasUpgrade($computer, 'webcam') && $npc_manager.stage > 1 && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && setup.hasFreeTime($now, $player, $currentTasks, 4000)>>
[<<moveTo "event_camgirl_intro_forced_1" "Continue." 60>>]
<<elseif random(1,3) <= $npc_manager.stage>>
As you finish swallowing your <<getWordCum>>, you look up to realise that the video you were watching has come to an end and another, different scene has started to auto-play.<br>
<br>
<<if ($npc_work_doctor.flags.aphrodisiac.stage >= 9 && $fetish.bestiality_hard || $npc_work_doctor.flags.aphrodisiac.stage >= 5 && !$fetish.bestiality_hard) && !State.hasPlayed("room_masturbate_porn_aphrodisiac")>>
[<<moveTo "event_masturbate_porn_aphrodisiac_1" "Keep watching." 180 "<<set $player.timebased.horny = Math.min(50, $player.timebased.horny+10)>>">>]<br>
<<else>>
[<<moveTo "room_masturbate_porn_special" "Keep watching." 180 "<<playerOrgasm>><<changeHorny 5>><<set $scene.first = !State.hasPlayed('room_masturbate_porn_special')>>">>]<br>
<</if>>
[<<moveTo "room_livingroom" "Turn off the video and do something else." 0 "<<playerOrgasm>>">>]
<<else>>
[<<moveTo "room_livingroom" "Continue." 0>>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Continue." 0>>]
<</if>>
<</if>>
</div>/*#
#desc: masturbate at home with dildo the first time
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.masturbation.dildo = true>>
<<set $scene.horny = $player.timebased.horny>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<set $scene.cum = false>>
<<if $scene.plugID != "">>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<</if>>
<<set $scene.legsId = setup.getItemFromType('legwear')>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<set _tmp = ['anal',_dildoSize]>>
<<set _sizeArr = [_tmp]>>
<<if setup.canPlayerCum($player, _sizeArr)>>
<<set $scene.cum = true>>
<<playerOrgasm>>
<<set _panties = setup.getItemFromType('panties')>>
<<if _panties != "">>
<<changeItemStatus _panties 'cumsoaked' '["set",50]'>>
<</if>>
<<applyStress -5>>
<<else>>
<<set _X = setup.gainHorny($player,_sizeArr)>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<</if>>
<<applyExperience 'anal' _dildoSize 'normal' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.body_ref.penis>>
<<if setup.isItemTypeEquipped("cage")>>
<<createAnimatedBGR "./video/masturbate_dildo_chastity_01.mp4">>
<<else>>
<<createAnimatedBGR "./video/lolatrap_masturbate_01.mp4">>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
Retrieving the dildo, you take a few moments to admire it, the thick, long phallus almost intimidating as you contemplate how it will feel in your ass.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
Even for an experienced butt-slut like yourself this feels somehow different.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
You may not be a novice to "back door" play, but this seems different.
<<else>>
For a novice such as yourself this is intimidating and different from any of your prior experience.
<</if>>
<</if>>
Unlike your other anal experiences you are totally alone. Just you and a surprisingly realistic dildo that is soon going to be plunging deep into your rear hole.<br>
<br>
<<if $scene.plugID != "">>
Your heart beats fast as you put the dildo down and stare at the phallus laid out before you as you start off by carefully "clearing the way" by removing the <<=$scene.plugObj.name>> from your rear.
<<if $scene.horny>50>>
You're so horny even this sensation is somewhat overwhelming and you take a moment to catch your breath as you shudder and gasp.
<<elseif $scene.horny>25>>
The act of sliding the plug out of your rear has you gasp in shock, your rear hole quivering as it recovers from the sudden emptiness.
<<else>>
You gasp slightly as you slide the plug out of your ass, arousal rising as you stare at the dildo that will soon be replacing it.
<</if>>
<<else>>
Your heart races as you lay out the dildo in front of you and prepare to use it.
<<if $scene.horny>50>>
You're so horny you can already imagine its thick girth sliding into your hungry hole and you hurry in anticipation.
<<elseif $scene.horny>25>>
The embers of horniness flare to life as you anticipate how it will feel to have the phallic object sliding into you.
<<else>>
Even though you weren't feeling particularly horny the sight of the dildo, the knowledge that it will soon be entering you, can't help but send you pulse racing.
<</if>>
<</if>>
<br><br>
Taking a deep breath, you
<<if setup.checkItemTypeWorn("panties")>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
pull off your pants and <<=setup.getItemObjFromType("panties").name>>.
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
flip up your skirt and pull off your <<=setup.getItemObjFromType("panties").name>>.
<<else>>
remove your <<=setup.getItemObj($scene.legsId).name>> and your <<=setup.getItemObjFromType("panties").name>>.
<</if>>
<<else>>
shimmying out of your <<=setup.getItemObjFromType("panties").name>>.
<</if>>
You slather the dildo in lube before you grasp it in one hand and position it against your hole.
<<else>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
pull off your pants to reveal your lack of undergarments
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
flip up your skirt to reveal your lack of undergarments
<<else>>
remove your <<=setup.getItemObj($scene.legsId).name>>,
<</if>>
<<else>>
are already <<if setup.checkItemTypeWorn("dress") || setup.checkItemTypeWorn("shirt") || setup.getItemFromType("strapless_dress") != "">>half <</if>>naked and
<</if>>
slathering the dildo in lube before grasping it in one hand and positioning it against your hole.
<</if>>
<br><br>
Biting your lip, you slide the dildo between your cheeks, the slippery shaft gliding over your quivering hole as you stroke, stroke, and then angle it to press the tip into you. You let out a low moan as the dildo enters you. This is it, you're doing it. You bought a dildo, and now you're fucking yourself with it...<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
You moan and slump to your side, working the slippery fake cock in and out of your ass as <<if $player.body_ref.penis>>your <<getWordMyPenis>> strains<<if $player.body_ref.vagina>> and <</if>><</if>><<if $player.body_ref.vagina>> your imprisoned <<getWordVagina>> drips<</if>> with excitement. Ignoring your out of reach <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>><<getWordVagina>><</if>>, you focus on going deeper, working more and more of the artificial cock into your ass as you buck and moan.<br>
<br>
Eyes rolled back in pleasure, your arm moves of its own volition, pumping the dildo in and out of your ass as you whimper and gasp, the fact that you're violating yourself while helplessly locked in chastity making you an aroused, gibbering mess.
<<if $scene.cum>>
With each stroke your <<if $player.body_ref.penis>>prostate<<else>>bottom<</if>> blossoms with forbidden pleasure, the fact that you are are locked up and out of reach fading away — you are a <<if $fetish.sissy>>sissy<<else>>girl<</if>>, this is better. This is all that you deserve, all that you want. Pulses of cock-drunk submissive pleasure course through your body, pushing you over the edge as you shudder and <<if $player.body_ref.penis.cumProduction || $player.body_ref.vagina>>leak <<if setup.isCage()>>through your cage<<else>>down your leg<</if>><<else>>dry orgasm<</if>>.
<<if $player.body_ref.penis && $fetish.cum && $player.body_ref.penis.cumProduction>>
<br><br>
<<if (setup.getTotalValue("cum") > 5) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips as you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming at your feet, you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis false>> means.
<</if>>
<</if>>
<<else>>
Try as you might, you just can't reach relief, even as you slam yourself up and down, pounding the dildo into your hole without mercy. Your legs finally giving out you flop to the floor, the dildo plunging all the way into you as <<if $player.body_ref.penis>>a single tear of pre-cum escapes from your <<getWordMyPenis>><<else>>you leak past your rigid belt<</if>>, your orgasm remaining as locked away as <<if $player.body_ref.penis>>as you are<<else>>your poor <<getWordMyPenis>><</if>>.
<</if>>
<<else>>
With a moan you slump to the side, one hand <<if $player.body_ref.penis>>grasping your hard <<getWordMyPenis>><<else>>sliding between your wet, blood-swelled folds<</if>> as the other works the dildo into your ass. Rocking your hips you work yourself from both directions, pushing the dildo further inside of you as you <<if $player.body_ref.penis>>stroke your cock. Fantasising that your hand is a portal to your ass you imagine fucking yourself, your pace increasing as you figuratively pound your <<if $fetish.sissy>>sissy <</if>>slut ass<<else>>finger yourself, imagining how it would feel to get railed in both ends<</if>>.<br>
<br>
<<if $player.body_ref.penis>>Prostate<<else>>Bottom<</if>> buzzing, <<if $player.body_ref.penis>>penis quivering<<else>><<getWordVagina>> dripping<</if>>, you cum<<if $player.body_ref.penis && $fetish.cum && $player.body_ref.cumProduction>>, spurting as hard as you ever have at<<else>>hard than you ever did "normally" thanks to<</if>> the intense, overwhelming stimulation. <<if $player.body_ref.penis>>Releasing the grasp on your <<getWordMyPenis>><<else>>You let your fingers go limp as<</if>> you slowly pump the dildo back and forth in your ass.<<if $player.body_ref.penis && $fetish.cum && $player.body_ref.cumProduction>> You stare in awe as you continue to spurt and "milk" every last drop out of your tight balls.<</if>>
<<if $player.body_ref.penis && $fetish.cum && $player.body_ref.cumProduction>>
<br><br>
<<if (setup.getTotalValue("cum") > 5) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips while you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming in front of you, you quickly wipe yourself clean and try to ignore what being able to achieve release in such a depraved manner means.
<</if>>
<</if>>
<</if>>
<br><br>
Panting with exertion, you pull yourself back together, loosening your grip and letting the dildo slide out of your ass.<br>
<br>
The deed done,
<<if $scene.plugID != "">>
<<if $scene.plugObj.hasOwnProperty('lockable')>>
you sigh in contentment, squeezing in pleasure around the plug still locked in your hole
<<else>>
you solve the "problem" of your sudden emptiness by sliding the <<=$scene.plugObj.name>> back into your hole
<</if>>
<<else>>
you feel your well-used hole twitch and slowly relax
<</if>>
<<if setup.isItemTypeEquipped("panties")>>
before you pull on your panties<<if $scene.legsId != "">> and then the rest of your clothes<</if>>.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("skirt")) || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
before you let your skirt fall back into place. You smooth it over your <<if setup.getItemFromType("cage")>> <<if setup.isCage()>>securely caged self<<else>>smooth chastity-belt enhanced crotch<</if>><<else>>thighs and bum<</if>> as you carefully rise to your feet.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("pants"))>>
before you pull up your pants.
<<elseif setup.checkItemTypeWorn("shirt")>>
before you remain pantsless, continuing to shirtcock it<<if setup.getItemFromType("cage")>>with your <<getWordMyPenis false>> <<if setup.isCage()>>securely caged<<else>>secure inside your chastity belt<</if>><</if>>.
<<else>>
as you remain as naked as when you started<<if setup.getItemFromType("cage")>>, your <<getWordMyPenis false>> <<if setup.isCage()>>securely caged<<else>>secure inside your chastity belt<</if>><</if>>.
<</if>>
<br><br>
<<if $player.body_ref.penis && setup.getTotalValue('cum')>15 && $player.body_ref.cumProduction > 0>>
[<<moveTo "room_masturbate_lickcum" "Eagerly slurp up your cum." 180 "<<set $player.timebased.horny = 5>>">>]<br>
[@@.link_locked;You are too much of a cum hound to let delicious <<getWordCum>> go to waste.@@]
<<elseif $player.body_ref.penis && $scene.cum && setup.getTotalValue('cum')>0 && setup.getTotalValue('humiliation')>=3 && $player.body_ref.cumProduction > 0>>
<<printThought "It would be a shame to waste all that <<getWordCum>> you've just carelessly squirted around...">><br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<changeHorny 5>>">>]<br>
[<<moveTo "room_livingroom" "Do something else." 600>>]
<<else>>
[<<moveTo "room_livingroom" "Continue." 600>>]
<</if>>
</div>/*#
#desc: masturbate at home with dildo (repeatable)
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_dog.stage && $npc_dog.location == "room_livingroom" && !$daily.dogEvent && !$scene.dogEvent && $npc_dog.flags.stage1.kitchen && ($npc_dog.stage < 3 || random(1,10) == 1) && setup.hasFreeTime($now, $player, 1800)>>
<<initRoom>>
<<moveTo "event_dog_masturbate_1">>
<<else>>
<<set $scene.horny = $player.timebased.horny>>
<<set $scene.plugID = setup.getItemFromType('plug', true)>>
<<if $scene.plugID != "">>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<</if>>
<<set $scene.legsId = setup.getItemFromType('legwear')>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<set _tmp = ['anal',_dildoSize]>>
<<set _sizeArr = [_tmp]>>
<<set $scene.cum = setup.canPlayerCum($player, _sizeArr)>>
<<if $scene.cum>>
<<playerOrgasm>>
<<applyStress -10>>
<<else>>
<<set _X = setup.gainHorny($player,_sizeArr)>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<</if>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<applyExperience 'anal' _dildoSize 'normal' $ALONE>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.body_ref.penis>>
<<if setup.isItemTypeEquipped("cage")>>
<<createAnimatedBGR "./video/masturbate_dildo_chastity_01.mp4">>
<<else>>
<<createAnimatedBGR "./video/lolatrap_masturbate_01.mp4">>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.plugID != "">>
Heart racing as you glance at the <<=setup.getItemName($scene.dildo)>> laid out before you, you start off by carefully removing the <<=$scene.plugObj.name>> from your rear.
<<if $scene.horny>50>>
You're so horny even this sensation is somewhat overwhelming and you take a moment to catch your breath as you shudder and gasp.
<<elseif $scene.horny>25>>
The act of sliding the plug out of your rear has you gasp in shock, your rear hole quivering as it recovers from its sudden emptiness.
<<else>>
You gasp slightly as you slide the plug out of your ass, arousal rising as you stare at the dildo that will soon be replacing it.
<</if>>
<<else>>
Your heart races as you lay out the <<=setup.getItemName($scene.dildo)>> in front of you and get ready to use it.
<<if $scene.horny>50>>
You're so horny you can already imagine its thick girth sliding into your hungry hole and you hurry in anticipation.
<<elseif $scene.horny>25>>
The embers of horniness flare to life as you anticipate how it will feel to have the phallic object sliding into you.
<<else>>
Even though you aren't feeling particularly horny the sight of it, the knowledge that it will soon be entering you, can't help but send you pulse racing.
<</if>>
<</if>>
<<if setup.isItemTypeEquipped("panties")>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
Pulling off your pants and <<=setup.getItemObjFromType("panties").name>>
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
Flipping up your skirt you pull off your <<=setup.getItemObjFromType("panties").name>>
<<else>>
Removing your <<=setup.getItemObj($scene.legsId).name>> and your <<=setup.getItemObjFromType("panties").name>>
<</if>>
<<else>>
Shimmying out of your <<=setup.getItemObjFromType("panties").name>>
<</if>>
you slather the dildo in lube before grasping it in one hand and positioning it against your <<if $player.body_ref.vagina>>rear <</if>>hole.
<<else>>
<<if $scene.legsId != "">>
<<if setup.getItemObj($scene.legsId).tags.includes("pants")>>
Pulling off your pants to reveal your lack of undergarments
<<elseif setup.getItemObj($scene.legsId).tags.includes("skirt") || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
Flipping up your skirts to reveal your lack of undergarments
<<else>>
Removing your <<=setup.getItemObj($scene.legsId).name>>
<</if>>
<<else>>
Already <<if setup.checkItemTypeWorn("dress") || setup.checkItemTypeWorn("shirt") || setup.getItemFromType("strapless_dress") != "">>half <</if>>naked
<</if>>
you slather the dildo in lube before grasping it in one hand and positioning it against your <<if $player.body_ref.vagina>>rear <</if>>hole.
<</if>>
<br><br>
<<if setup.getTotalValue("anal") < 10>>
Laying on your side you attempt to relax as you line up the tip of the dildo with your rear. The lube makes things wet and slippery but, letting out a breath, you slowly ease the tip inside, your body relaxing and spreading before the pseudo-phallus.<br>
<br>
<<if setup.getTotalValue("anal") < 5>>
You gasp, still unaccustomed to something like this "back there," and yet you cannot help yourself, working it deeper and deeper before slowly commencing to thrust it in and out.
<<else>>
You moan, you are becoming increasingly accustomed to taking it in the back door and have come to really enjoy it.
<</if>>
With each stroke your heart beats faster and you find yourself reveling in how it feels to fuck yourself, varying your pace as you experiment to find the perfect angle to rub your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
<<if setup.isItemTypeEquipped("cage")>>
<<if $player.body_ref.penis>>
<<printThought "This feels so good... maybe being caged doesn't even matter?">>
<<else>>
<<printThought "This feels so good... maybe chastity isn't really an impediment?">>
<</if>>
<<else>>
<<if $player.body_ref.penis>>
<<printThought "Wow, this feels really good and I'm not even touching my <<getWordMyPenis>>!">>
<<else>>
<<printThought "Wow, this feels really good and I'm not even touching myself!">>
<</if>>
<</if>>
<br><br>
Closing your eyes in concentration you keep working, feeling a special orgasm build and grow,
<<if $scene.cum>>
<<if setup.isItemTypeEquipped("cage")>>
and then, with a gasp, you leak <<if setup.isCage()>>through your cage<<else>>past your belt<</if>>, moaning softly as you continue to pump the dildo in and out until your <<if $player.body.penis>><<getWordMyPenis false>> is empty and exhausted<<else>>wrist is stiff and you're panting with overload<</if>>.
<<else>>
until you cum, a hands-free analgasm that has you moaning your thoughts swirling as you spurt, the pleasure drawing out as you continue to pump the dildo in and out of your rear.
<</if>>
<<else>>
but remain out of reach. Whimpering in desperation you feel yourself so, so close to what you imagine would be a glorious analgasm and yet you remain unable to quite reach the summit. Your wrist is getting tired and you give up with a sigh, your hole used and yet unsatisfied,
<<if setup.isItemTypeEquipped("cage")>>
and yet, <<if setup.isCage()>>caged<<else>>locked in chastity<</if>> as you are, there is no other stimulation to be had.
<<else>>
yet you find yourself disinterested in taking advantage of yourself in another matter, having a strange thought that touching your <<getWordMyPenis>> would somehow "spoil" things.
<</if>>
<</if>>
<<else>>
<<if setup.isItemTypeEquipped("cage")>>
Easing the dildo into your ass <<if $player.body_ref.penis>>your <<getWordMyPenis>> strains<<else>>you moan<</if>> with excitement. Ignoring your locked away <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<getWordVagina>><</if>>, you focus on your rear, working the dildo deeper and deeper into your hole.<br>
<br>
Leaving the dildo halfway buried in your ass you go hands free, squatting deep and bouncing up and down, fucking yourself right there on the floor.
<<if $scene.cum>>
Building closer and closer to orgasm you slam down, pounding your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> with glee, all thoughts of your <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>><<getWordVagina>><</if>> forgotten in favour of the deliriously wonderful pleasure of taking it from behind. Though you might have wished to enjoy things a bit longer you soon
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
climax, leaking <<if setup.isCage()>>out of your cage<<else>>down your leg<</if>> to form a pool as you slump to the floor, the dildo fully buried in your ass as the final drops of joy leak <<if setup.isCage()>>through your cage<<else>>past your belt<</if>>.
<<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<br><br>
<<if (setup.getTotalValue("cum") > 5) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips as you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming at your feet, you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis false>> means.
<</if>>
<</if>>
<<else>>
climax, straining and twitching inside its prison as you dry orgasm.
<</if>>
<<else>>
Try as you might, you just can't reach relief, even as you slam yourself up and down, pounding the dildo into your hole without mercy. Your legs finally giving out you flop to the floor, the dildo plunging all the way into you as single tear of pre cum <<if $player.body_ref.penis>>escapes from your <<getWordMyPenis>>, your orgasm remaining as locked away as your poor <<getWordMyPenis>><<else>>leaks down your thigh, your orgasm remaining as locked away as your <<getWordVagina>><</if>>.
<</if>>
<<else>>
You try to make a game of it, avoiding touching your <<if $player.body_ref.penis>>very erect <<getWordMyPenis>><<else>>glistening <<getWordVagina>><</if>> as you work the dildo into your rear and then shift to go hands free. Placing the dildo on the floor you squat deep, letting the weight of your body force you down, down down onto the dildo. Overcome with excitement you continue to roll your hips and finally <<if $player.body_ref.penis>>grasp your <<getWordMyPenis>><<else>>run a finger between your folds<</if>>, your mere light touch the final straw and you <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>spurt with joy<<else>>climax<</if>>.
<<if $fetish.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<br><br>
<<if (setup.getTotalValue("cum") > 5) && (setup.getTotalValue("humiliation") > 3)>>
Groaning with lust you reflexively lick your lips while you thirstily stare at your yummy looking discharge.
<<else>>
Embarrassed at the small pool forming in front of you, you quickly wipe yourself clean and try to ignore what being able to achieve release without even touching your <<getWordMyPenis>> means.
<</if>>
<</if>>
<</if>>
<br><br>
Panting with exertion, you pull yourself back together and slowly rise off the dildo. Arcing as it follows you up it finally pops free, skittering off across the floor as it escapes your rear.
<</if>>
<br><br>
The deed done,
<<if $scene.plugID != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
you solve the "problem" of your sudden emptiness by sliding the <<=setup.getItemName($scene.plugID)>> back into your hole before
<</if>>
<<if setup.isItemTypeEquipped("panties")>>
you pull on your panties<<if $scene.legsId != "">> and then the rest of your clothes<</if>>.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("skirt")) || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
you let your skirt fall back into place. You smooth it over your <<if setup.getItemFromType("cage")>> securely <<if setup.isCage()>>caged<<else>>belted<</if>> self<<else>>thighs and bum<</if>> as you carefully rise to your feet.
<<elseif ($scene.legsId != "" && setup.getItemObj($scene.legsId).tags.includes("pants"))>>
you pull up your pants.
<<elseif setup.checkItemTypeWorn("shirt")>>
you remain pantsless, continuing to shirtcock it<<if setup.getItemFromType("cage")>>with your <<getWordMyPenis false>> securely <<if setup.isCage()>>caged<<else>>locked inside your chastity belt<</if>><</if>>.
<<else>>
you remain as naked as you started, <<if setup.getItemFromType("cage")>> <<if $player.body_ref.penis>>your <<getWordMyPenis false>> <</if>>securely <<if setup.isCage()>>caged<<else>>locked inside your chastity belt<</if>><<else>>your <<if $player.body_ref.penis>><<getWordMyPenis false>> dripping with excitement<<else>><<getWordVagina>> glistening with excitement<</if>><</if>>.
<</if>>
<br><br>
<<if $fetish.cum && $player.body_ref.penis>>
<<if setup.getTotalValue('cum')>15 && $player.body_ref.cumProduction > 0>>
[<<moveTo "room_masturbate_lickcum" "Eagerly slurp up your cum." 180 "<<set $player.timebased.horny = 5>>">>]<br>
[@@.link_locked;You are too much of a cum hound to let delicious <<getWordCum>> go to waste.@@]
<<elseif $scene.cum && setup.getTotalValue('cum')>0 && setup.getTotalValue('humiliation')>=3 && $player.body_ref.cumProduction > 0>>
<<printThought "It would be a shame to waste all that <<getWordCum>> you've just carelessly squirted around...">><br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<changeHorny 5>>">>]<br>
[<<moveTo "room_livingroom" "Do something else." 600>>]
<<else>>
[<<moveTo "room_livingroom" "Continue." 600>>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Continue." 600>>]
<</if>>
</div>/*#
#desc: porn auto-plays a scene to match your max fetish
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.first>>
<<set $scene.fetish = setup.getMaxFetish()>>
<<else>>
<<set _fetishOptions = ['penis','bdsm','bondage','foot']>>
<<if $fetish.bestiality_hard && setup.getTotalValue("bestiality") > 8 || $fetish.bestiality_soft>>
<<set _fetishOptions.push('bestiality')>>
<</if>>
<<if $fetish.cum>>
<<set _fetishOptions.push('cum')>>
<</if>>
<<if $fetish.piss>>
<<set _fetishOptions.push('piss')>>
<</if>>
<<set $scene.fetish = _fetishOptions.random()>>
<</if>>
<<applyExperience $scene.fetish 10 'very' $ALONE>>
<<set $scene.horny = 0>>
<</if>>
<<initRoom>>
<<include playerMenu>>
/% TODOfuture <<createAnimatedBGR $scene.image>>%/
<div id="invframe" class="scrolltext">
You watch as a new, far more extreme scene begins to play out, the auto-play feature having taken quite a turn from the run of the mill bimbo/plumber video you were just watching. A part of you wants to turn away and yet you find yourself unable to look away, transfixed at the extreme porn playing out on your computer screen.<br>
<br>
<<include "maxFetishPorno">>
<br><br>
<<if setup.checkItemTypeWorn("cage")>>
Without thinking your hand has snaked back down between your legs, groping <<if setup.isCage()>>your caged <<getWordMyPenis false>><<else>>the smooth front of your chastity belt<</if>> as you moan and gasp, transfixed by the video in front of you.<br>
<br>
<<if $scene.cum>>
For as unsatisfying as your earlier orgasm was this time you cum like gangbusters, leaking your joyous juices <<if setup.isCage()>>out through your cage<<else>>down your leg<</if>> as the video reaches its climax, moaning along as your cramped <<getWordMyPenis false>> strains and cries within its prison.
<<else>>
The <<if setup.isCage()>>cage<<else>>chastity belt<</if>> may have prevented you from experiencing relief earlier, but it seems like this new, intense video has more than done the trick as your <<getWordMyPenis false>> strains and cries with joy, your <<getWordCum>> leaking out through the <<if setup.isCage()>>cage<<else>>chastity belt<</if>>.
<</if>>
<br><br>
Panting with exertion as the video comes to a close you quickly close the browser window before another video can queue up.
<<else>>
Without noticing you've started stroking yourself again, your <<getWordMyPenis>> even harder than it was before you came the first time. Caught up in the moment you're beating off with everything you've got as you stare with rapt attention at the intense porn scene served up by some perverted algorithm.<br>
<br>
As the scene reaches its crescendo, you cum, spurting all over your monitor as a final highlight to the pornographic display.<br>
<br>
Utterly spent and suddenly embarrassed you quickly close the browser window before another video can queue up. You wipe the monitor clean and hurriedly get up from your computer.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Do something else." 600>>]
</div><<switch $scene.fetish>>
<<case 'penis'>>
/* porn_penis.jpg */
Your screen is covered in cocks. At the centre is a single overworked feminine face, her mouth distended as she tries to blow two <<men>> at once, another pair of cocks on either side of her head, one in each hand with another couple poking in from off-screen.<br>
<br>
Mascara streaked as she tries to handle the plethora of penises she's obviously straining and yet you can't help but think she's enjoying it. Perhaps even more disturbing is that you find yourself feeling jealous, imagining what it would be like to be servicing so many delicious cocks...
<<case 'cum'>>
/* porn_cum.jpg */
You watch as a woman is painted with cum. The <<men>> "gifting" her with such bounty never visible on screen you only barely even see the cocks themselves, the entire focus on her pretty face, her eyes blissfully closed, lips slightly parted as she is rewarded with load after load splashing across her features.<br>
<br>
The sight of all that cum makes you thirsty, especially whenever her tongue darts out to catch a drop trickling down over her lips. Despite drips and drinks her face is steadily covered in a thin, milky film and you can't help but fantasise what it would be like to be her. or maybe to be there to lick her clean...
<<case 'piss'>>
You watch as a girl kneels on the floor of a shower, a circle of <<if !$options.fem>>men and <</if>>women surrounding her and unleashing golden streams across her body.<br>
<br>
Moaning with arousal she opens her mouth to drink anything she can, her fingers scrubbing her hair as if she was in a proper shower, amber streams trickling down her naked body. Something about her enthusiasm draws you in as you wonder what it would feel like to be so completely degraded. and yet love every moment of it.
<<case 'bestiality'>>
<<if $fetish.bestiality_hard && setup.getTotalValue("bestiality") > 8>>
You watch as a naked woman walks through a stables and up to a large, muscular stallion.<br>
<br>
Your heart pounds in your chest as you realise where things are going, the woman dropping to her knees and crawling under the large horse, reaching out to caress his cock, sucking and stroking it to mammoth, fear-inducing size before turing around.<br>
<br>
Forced to rise up onto her tip-toes she glances at the camera before guiding the cock into her from behind, moaning and gasping as it works into her only to pitch forward as the stallion becomes overcome with impatience and lurches forward.<br>
<br>
Catching herself with both hands she remains with her hips high in the air as the stallion commences to fuck her, the massive horse-wang looking like it could break her in half with every stroke.<br>
<br>
You are both horrified and fascinated by the scene playing out before you, transfixed as you imagine what she could be feeling, even as the ahegao expression on her face gives you a very strong idea.
<<else>>
You watch as a pair of women step into frame. Each is naked save for a leather strap-on harness, one woman "equipped" with what looks like a canine cock complete with thick knot, the other bearing an even larger equine dong. Striding forward they approach a naked figure already bent over a frame, ass exposed, a <<if $player.flags.chastity_style=='cage'>>caged <<getWordPenis>> dangling below,<<else>>chastity belt locking <<him>> away and<</if>> driving home what the focus of the scene to come will be.<br>
<br>
The dog-cock equipped woman goes first, plunging into the waiting hole as her partner in crime circles around front, theatrically stroking her oversized horse-cock as she has the bound figure suck on the tip. Moans escape past the artificial equine penis as the dog-girl knots herself, grinding and humping with vigour before finally pulling free with a pop.<br>
<br>
Giving the ass a hard, loud slap as she leaves it gaping and quivering the dog-cock woman steps aside as her partner circles back around. You can't help but be amazed as you watch the long, thick equine member slowly slide into the gaping ass until all of its more than thirty centimetre length has sunk into the bent-over figure and she commences to thrust in and out.
<</if>>
<<case 'bdsm'>>
You watch a video of a <<if $fetish.sissy>>sissy<<else>>cute<</if>> maid being instructed by her domineering Mistress. Despite being hobbled and forced to use a feather duster attached to her gag to clean the maid is mercilessly hounded, her buttocks tasting crop and hand and paddle as her slightest error is met by her Mistress' swift reprisal.<br>
<br>
Despite sympathising with the poor maid, you can't help but put yourself in her high-heel shoes, thinking how much better and more obedient you would be than she is, while also thinking that a few errors here or there and, well... punishment is part of the fun...
<<case 'bondage'>>
You watch as the camera pans over a bound figure. Already strapped and restrained to start, hands reach out from off-screen to cinch each buckle tighter, reducing the trembling figure to almost complete immobility. The face-covering hood that they wear masking their gender, you stare in awe as the camera lingers on their face, a pair of lips wrapped around an oversized gag their only visible flesh, a soft moan escaping their throat as drool trickles down past the gag.<br>
<br>
You can't help but fantasise about how it would feel to be so completely, utterly restrained...
<<case 'foot'>>
You find yourself in a POV scene staring at a cute pair of high-heel adorned feet. After a slow, luxurious camera pan that gives you a view of the heavenly heels from every angle you watch as your "hands" reach out from the screen. Perfectly shot so as to allow you to pretend that you're "in the moment" the hands gently remove the heels and peel down the pantyhose beneath before massaging and lotioning each foot in turn.<br>
<br>
Watching in case you might learn a new foot massage trick you would still be transfixed by the beauty of the feet, from their smooth heels to their cute toes, wishing that it really was your hands reaching out to caress them...
<<default>>
ERROR, unknown fetish: <<=$scene.top_fetish>>
<</switch>>/*#
#desc: use autobondage device
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.masturbation.fuckmachine = true>>
<<set $player.flags.masturbation.selfbondage = true>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<</if>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 0>>
<<set _stress = -Math.floor(setup.getTotalValue("bondage")/2)>>
<<applyStress _stress>>
<<applyFatigue 30>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
<<createAnimatedBGR "./video/blackbox_02.mp4">>
<<else>>
<<createAnimatedBGR "./video/blackbox_01.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("bondage") > 10>>
With almost giddy excitement,
<<elseif setup.getTotalValue("bondage") > 5>>
With curious interest,
<<else>>
With serious trepidation,
<</if>>
you approach the black box left behind by your ex-girlfriend. Punching in the code and positioning yourself in anticipation of what happens next, you are still a bit surprised at how swiftly the device renders you bound and helpless.<br>
<br>
With no capacity to resist, you are vibrated and fucked. If anything, the experience is even more intense than before, the dildo behind you thrusting with such vigour <<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>it forces its merciless, front-aligned twin even deeper down your throat.<<else>> you almost think there ought to be another up front to balance out. After all, your mouth is already spread wide by the ring gag.<</if>> All in all, you are unable to do anything but enjoy the experience until, with a shuddering gasp that runs through your entire body, your
<<if $player.body_ref.penis>>
<<if $scene.cage != "">>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.isCage()>>
<<getWordMyPenis>> dribbles tears of joy through your cage.
<<else>>
joy dribbles out past your belt and down your leg.
<</if>>
<<else>>
<<getWordMyPenis>> strains and twitching inside its prison as you dry orgasm.
<</if>>
<<elseif $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<getWordMyPenis>> spurts with joy.
<<else>>
<<getWordMyPenis>> shudders with joy.
<</if>>
<<else>>
<<getWordVagina>> ripples and spurts with joy.
<</if>>
<br><br>
<<if !$npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
<<printThought "Whew, that was intense... I wonder if this crazy thing has upgrades? I bet that new Sex Store in the mall would know something...">><br>
<br>
<</if>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
The restraints releasing, you find yourself staring at the pool of your emission.<br>
<br>
<<if setup.getTotalValue("cum") > 5>>
[<<moveTo "room_masturbate_lickcum" "Slurp it up before the auto-cleaning cycle beats you to it." 180>>] <br>
<</if>>
<<if setup.getTotalValue("cum") >= 10>>
[@@.link_locked;You can't allow the auto-cleaner to steal your delicious <<getWordCum>>.@@]
<<else>>
[<<moveTo "room_livingroom" "Leave it for the auto-cleaning cycle.">>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Do something else.">>]
<</if>>
</div>/*#
#desc: use horse dildo
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_dog.stage && $npc_dog.location == "room_livingroom" && !$daily.dogEvent && !$scene.dogEvent && $npc_dog.flags.stage1.kitchen && setup.hasFreeTime($now, $player, 1800) && ($npc_dog.stage < 3 || random(1,10) == 1)>>
<<initRoom>>
<<moveTo "event_dog_masturbate_1">>
<<else>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'horse' 'dildo'>>
<<applyExperience 'bestiality' 7 'little' $ALONE>>
<</if>>
<<set $scene.cum = setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 8>>
<<setThreshold "anal" "other_anal" "horse_dildo">>
<</if>>
<<set _dildoSize = setup.getItemObj('horse_dildo').size>>
<<if setup.getTotalValue("anal") > 5>>
<<applyExperience 'anal' _dildoSize 'very' $ALONE>>
<</if>>
<<applyExperience 'penis' 12 'very' $ALONE>>
<<applyFatigue 20>>
<<if $scene.cum>>
<<set $player.flags.masturbation.horsecock = true>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<applyStress -10>>
<<if $player.flags.masturbation.dogcock || $player.flags.masturbation.dogcock_vag>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('dragon_dildo')>>
<</if>>
<<else>>
<<changeHorny 15>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<</if>>
<<set _panties = setup.getItemFromType("panties")>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") >= 15>>
<<if setup.getTotalValue("anal") == 15>>
Squatting over the massive dildo, the tip of the thick horsecock enters you without too much difficulty, but each subsequent centimetre is more challenging as you try to relax and let your weight do the work.<br>
<br>
Your breaths come quick and short and you tremble, almost losing your balance before, with a final wiggle, it slides the rest of the way into position and you find yourself seated fully atop the large attached balls.
<<else>>
Arranging the massive dildo on the floor you squat down, take aim, and lower your weight, your well-used hole spreading easily before the massive equine cock. You savour every delightful centimetre as the thick head makes its way into you, your feelings mixed when you finally hit the base, the large artificial testicles pressed against you as you slowly rock.
<</if>>
<br><br>
Rocking back and forth, you work your way up to bouncing up and down nearly the full length of the thick cock, moaning with each thrust as it re-arranges your insides, wonderfully filled with each thrust. The intense pressure against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> combined with the pounding fullness pushes you towards orgasm and it is not long before you are spurting your joy, your whole body shuddering before your legs give out and you find yourself sitting with the entire dildo inside of you as you pant.
<<elseif setup.getTotalValue("anal") > 10>>
Squatting down on the large dildo, the thick head enters you without much issue, but that proves to only be the first challenge. Each centimetre of thick horsecock that plunges into your body is more challenging than the last and, after much effort expended to get past the ridge partway down the shaft, you finally come to a stop, unable to force any more of the monstrous dildo into your body.<br>
<br>
Heart pounding in your chest, you begin to bounce up and down, fucking yourself atop the massive dildo, your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> crying out in compressed joy with each eye-widening thrust.<br>
<br>
Though you fail to get any closer to being balls deep, you soon feel an orgasm rising, your legs trembling as you thrust faster and faster before finally exploding in joy, frozen in place with the cock most of the way inside of your ass.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Taking a deep breath, you arrange the dildo on the floor, and then slowly squat down. Despite your prior experience, you are soon wide-eyed in shock, unable to fit much more than the tip inside of you; and even that has you feeling spread as never before.<br>
<br>
<<printThought "Oh <<getWordGod>> it's too big, there's no way this is possible to insert.">><br>
<br>
You try to bounce up and down and get off, but the dildo is just too massive to leave you feeling anything, but stretched.
<<else>>
Even with copious lubricant there is no way you can get even the tip of the massive horse-cock dildo into your rear. You try just rubbing it between your cheeks, but all it does is reinforce your fear of the thick, club-like implement.
<</if>>
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty('task_horse_dildo') && !$currentTasks.task_horse_dildo.finished>>
[<<moveTo "room_masturbate_horse_dildo_picture" "Snap a picture and send it off." 60>>]<br>
<<elseif setup.getTotalValue("anal") >= setup.getItemObj('horse_dildo').size>>
[<<moveTo "room_masturbate_large_dildo_bonus" "Wait..." 180 "<<set $scene.dildo='horse_dildo'>>">>]<br>
<</if>>
<<if $scene.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("cum") > 5 >>
[<<moveTo "room_masturbate_lickcum" "Slurp up your spilt cum." 180>>] <br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't allow delicious <<getWordCum>> to go to waste.@@]
<<else>>
[<<moveTo "room_livingroom" "Clean up after yourself.">>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
<</if>>
</div>/*#
#desc: send picture of you w/horse dildo
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("anal") >= 15>>
<<completeTask 'task_horse_dildo' $now true>>
<<addCredits 40>>
<<if !setup.hasEmail("mail_camgirl_money_h")>>
<<addEmail $computer
'Hole Fan'
'The Bottomless Bum'
false
false
$now
'mail_camgirl_money_h'
'mail_camgirl_money_t'>>
<</if>>
<</if>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") >= 15>>
Angling things so you can get a proper shot to show that the dildo is all the way inside your ass, you fire off a picture.<br>
<br>
"@@.generic_female1;Perfection! This is exactly what I wanted to see, another slutty mare broken and enslaved by their own lusts.@@"<br>
<br>
<<if $fetish.bestiality_hard>>
"@@.generic_female1;Let this be, but the first stage of your journey — just imagine how much better this could feel if the cock inside you was real, hot and pulsing, bloating you with rivers of cum.@@"
<<else>>
"@@.generic_female1;Congratulations on cresting a summit that few size queens manage. I would wish you luck in the future, but who needs luck when they are already a gaping fuck-hole?@@"
<</if>>
<br><br>
Your phone chimes indicating you have received a money transfer, an additional 40 credits appearing in your account.
<<elseif setup.getTotalValue("anal") > 10>>
Barely keeping your balance atop the equine edifice, you manage to snap a picture and send it off.<br>
<br>
"@@.generic_female1;Impressive, but insufficient — if I am going to pay out, I want to see you balls deep. Keep practicing though, I think your ass has what it takes to be a champion.@@"
<<else>>
<<if setup.getTotalValue("anal") > 5>>
With the head of the dildo still inside of your rear, you snap a picture and fire it off.<br>
<br>
"@@.generic_female1;Can you not read? I want pictures of that wonderful cock hilted balls deep! Some might be impressed at the ability to spread enough to take the head, but I demand more if I am going to pay out!@@"
<<else>>
Posing as best you can you snap a picture of the dildo pressed up against you and fire it off.<br>
<br>
"@@.generic_female1;What the heck is that? I don't want a picture of someone posing next to a horse cock, I want proof that they can take it all the way inside their slutty hole! If you aren't up to the challenge, please do not waste my time.@@"
<</if>>
<</if>>
<br><br>
<<if $scene.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("cum") > 5 >>
[<<moveTo "room_masturbate_lickcum" "Slurp up your spilt cum." 180>>] <br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't allow delicious <<getWordCum>> to go to waste.@@]
<<else>>
[<<moveTo "room_livingroom" "Clean up after yourself.">>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
<</if>>
</div>/*#
#desc: suck horse dildo
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.masturbation.suck_horsecock = true>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 7 'little' $ALONE>>
<</if>>
<<setThreshold 'oral' 'other_oral' 'horse_dildo_practice'>>
<<set _dildoSize = setup.getItemObj('horse_dildo').size>>
<<applyExperience 'oral' _dildoSize 'very' $ALONE>>
<<applyExperience 'penis' 12 'very' $ALONE>>
<<set _penis = setup.getTotalValue("penis")>>
<<changeHorny _penis>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You take a deep breath and tilt your head back as you extend your arm and bring the tip of the long, floppy horse-cock to your lips.
<<if setup.getTotalValue("oral") >= 15>>
You take a moment to enjoy the delicate texture of the frilled tip, kissing and licking it with the love you have for all cocks. Smiling as you look down the thick barrel of this example of equine excellence you open wide and guide it into your mouth.
<<if setup.getTotalValue("oral") == 15>>
The first few centimetres go smoothly and the flexible shaft makes the gentle corner down your throat. Holding the balls with one hand you raise it high and let the weight of the large dildo do some of the work, using your other hand to feel the glorious bulge moving down your throat.<br>
<br>
You reach the slightly thicker bottom third of the dildo and you stall. Your throat strains in protest at what you are demanding but you want this, you want this so badly. Closing your eyes you forcibly shove the whole thing down your throat, your body stretching to accommodate the inhuman member, your enthusiasm such that the balls end up slamming you in the chin as the last centimetre of silicone cock passes your lips.
<<else>>
The first half of the dildo enters your trained throat easily, but even when the bottom third of the dildo swells and forces your throat to stretch further, you are not dissuaded. You watch your fingers wrapped around the wide base of the dildo approaching your face, feeling a jolt of pleasure run through your body as the artificial balls bump your chin — you've taken it all, an entire giant horse-cock dildo occupies your slutty throat.
<</if>>
<br><br>
You gurgle, gaze unfocused, brain struggling for air as you process the fact that you have an entire horse dildo stuffed down your gullet. Unfortunately such joys cannot last and you are forced to pull the dildo free to take a breath, panting as you look at the saliva-soaked dildo flopping in your hand before going to town to repeatedly face-fuck yourself with it until your throat is near its limit and your chin is dripping with drool.
<<else>>
From the first moment you face a struggle, the frilled tip tickling your lips and tongue and preventing you from even attempting to force it deeper into your throat. Though you manage to take the tip your throat fails to stretch any further; unable to manage the slightly thicker lower third of the dildo. Gagging and shuddering you struggle to stay in control of your body as your eyes roll back. In an almost explosive effort you rip the dildo from your throat, trailing thick saliva and snot as you pant and gasp.<br>
<br>
<<printThought "This is definitely hard-mode...">>
<</if>>
<br><br>
<<if setup.getTotalValue("oral") >= 15 && $currentTasks.hasOwnProperty('task_horse_dildo') && $currentTasks.task_horse_dildo.finished>>
<<if $player.flags.masturbation.suck_horsecock_pic>>
[@@.link_locked;You've already been paid out for deepthroating a horse dildo.@@]<br>
<<else>>
<<printThought "Hmm... I wonder if that person might enjoy a picture of me deepthroating a horse cock...">><br>
<br>
[<<moveTo "room_suck_horse_dildo_picture" "Tilt your head back and get ready to snap a picture." 60>>]<br>
<</if>>
<</if>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
</div>/*#
#desc: send picture of you sucking horse dildo
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.masturbation.suck_horsecock_pic = true>>
<<addCredits 40>>
<<applyExperience 'humiliation' 15 'normal' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You let the dildo drop back down your throat, pushing it deeper until the balls are against your chin. You snap a picture, holding things for as long as you can before pitching forward, trailing drool and panting for air. You fire off the message before you can think any further and try to catch your breath.<br>
<br>
<<printThought "Holy shit, I really am becoming a mouth fuck-hole...">><br>
<br>
Your phone chimes with a response message and you put the dildo to one side to eagerly read it.
<<if $fetish.bestiality_hard>>
"@@.generic_female1;Wow, I enjoyed your previous picture but this... you can't even use the excuse of fucking yourself in any normal way, the person who took this picture is 110% desperately addicted to horse cock. Now that you have proven yourself on the artificial... I think it's time for you to find the real thing.@@"
<<else>>
"@@.generic_female1;Wow, I enjoyed your previous picture but this... you can't even use the excuse of fucking yourself in any normal way, the person who took this picture is 110% desperately addicted to horse cock.@@"
<</if>>
<br><br>
There is a second notification as your bank account swells by 40 credits.<br>
<br>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
</div>/*#
#desc: first time masturbating whilst caged
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $ALONE>>
<<set $scene.clothing = setup.analyzeWornTags(['sissy','bold','fetish','modest','cute','female'])>>
<<set $player.flags.masturbation.caged = true>>
<<applyExperience 'humiliation' 4 'little' $ALONE>>
<<changeHorny 25>>
<<applyStress 10>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You start to bring up some porn and reach down for a nice wank to blow off steam, only for your fingers to close uselessly around your rigid prison.<br>
<br>
In frustration you paw and tug, but the device is as stubborn as it is effective, foiling all efforts to obtain the pleasurable stimulation you crave while feeling even tighter and more uncomfortable as you swell. Shouting in annoyance, you are particularly annoyed that your exasperation seems to only increase your arousal.<br>
<br>
<<if setup.getTotalValue("bondage") > 10>>
<<if setup.getTotalValue("bondage") > 15>>
<<printThought "Good girls can't cum, I love my chastity device!">>
<<else>>
<<printThought "Being in chastity is such a turn on, I love being locked up!">>
<</if>>
<<else>>
<<if setup.getTotalValue("bondage") > 5>>
<<printThought "Being in chastity can't be turning me on... can it?">>
<<else>>
<<printThought "Ugh, this is the worst, but why is it turning me on? It must be just a blood flow thing due to the chastity device.">>
<</if>>
<</if>>
<br><br>
Giving up in frustration, you close the media player as your thoughts turn to other avenues of stimulation,
<<if setup.checkItemTypeWorn('plug')>>
like the plug currently nestled in your ass.
<<else>>
maybe you could experiment with penetration?
<</if>>
<br><br>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
<<if setup.getTotalValue("submission") > 10>>
<<printThought 'I have the key so I could unlock myself? Though I doubt <<=setup.getNpcName("npc_manager","formal")>> would be happy about that. Maybe I should talk to her about keeping it safe even when I am not at work.'>>
<<else>>
<<printThought 'Maybe I could unlock myself? I doubt <<=setup.getNpcName("npc_manager","formal")>> would be happy about that, but she did give me the key...'>>
<</if>>
<<else>>
<<if setup.getTotalValue("submission") > 10>>
<<printThought "It's a good thing <<=setup.getNpcName('npc_manager','formal')>> is holding onto my key, it is better that I stay frustrated and restrained.">>
<<else>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<printThought 'Damn, why did I agree to give up the key? What is wrong with me!'>>
<<elseif $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
<<printThought "Did I really agree to stay locked up for a chastity trial? And what happens when it's over...">>
<<else>>
<<printThought "I can't believe I let <<=setup.getNpcName('npc_manager','formal')>> take my key, what does it say that I'm willing to let her control me like this?">>
<</if>>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Do something else." 120>>]
</div>/*#
#desc: masturbate with your breasts
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $ALONE>>
<<set $player.flags.masturbation.nipples = true>>
<<set $scene.canCum = setup.canPlayerCum($player, [ ['breasts',''] ])>>
<<if $scene.canCum>>
<<set $player.flags.masturbation.breasts = true>>
<<applyStress -20>>
<<applyExperience 'feminization' 15 'very' $ALONE>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<if $scene.panties != "">>
<<changeItemStatus $scene.panties 'cumsoaked' '["set",100]'>>
<</if>>
<<if $player.body_ref.milkProduction > 0>>
<<set $player.timebased.milking.milk_supply = Math.max(0,$player.timebased.milking.milk_supply-20)>>
<</if>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 10>>
<<else>>
<<set _stress = $player.timebased.horny/10>>
<<applyStress _stress>>
<<changeHorny 25>>
<<if $player.body_ref.milkProduction > 0>>
<<set $player.timebased.milking.milk_supply = Math.max(0,$player.timebased.milking.milk_supply-10)>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
You take hold of your massive breasts. Each glorious globe far too big to fit in your hands you instead focus your attention on your thick, pert nipples.
<<case 'large'>>
You start to grope yourself, your large, full breasts feeling almost as good in your hands as it feels to have your hands squeeze and fondle them. Enjoying how soft and smooth they are your attention drifts towards the hard nipples at their tip.
<<case 'medium'>>
You take hold of your breasts — each the perfect size to fit in your hand you give a few wonderfully experimental squeezes before focusing your efforts on your pert nipples.
<<case 'small'>>
Your small breasts easily fit in your hands and you fondle your lovely cute love-sacks, fingers roaming towards your cute, but presently very hard and swelled, nipples.
<<case 'none'>>
Your chest may be flat, but you still sport a pair of cute nipples and you experimentally roll them between your fingers.
<</switch>>
<<if setup.checkItemTypeWorn("nipple_piercing")>>
Grabbing hold of your piercings you tug gently, purring at the wonderful blend of pain and pleasure.
<</if>>
<br><br>
The more you play with your <<if $player.body.breastsize[0] > 0>>breasts<<else>>nipples<</if>> the more turned on you become.
<<switch $player.flags.mealplan>>
<<case 'none'>>
<<if setup.findThemeId('npc_psychiatrist', 'supplement', 'theme_psychiatrist_supplement_2') != -1>>
The added sensitivity that lingered after your first dose of hormones seems to have faded completely, and yet still each touch sends sparks of delight shooting out from your <<if $player.body.breastsize[0] > 0>>breasts<<else>>nipples<</if>>.
<<else>>
Your nipples may be less sensitive than you would prefer, but the mere act of playing with your wonderful fun-bags is more than sufficient to make up for it.
<</if>>
<<case 'little'>>
Even your modest hormone regime has made your nipples more sensitive and you moan and pinch and twist, loving both how it feels and how wonderful your body feels in your hands.
<<case 'normal'>>
There is no doubt your hormone regime has
<<if $player.flags.mealplan.hormone_growth>>
helped grow you a lovely pair of breasts, but it also seems to have
<</if>>
made your nipples more sensitive and you moan and pinch and twist, loving both how it feels and how wonderful your body feels in your hands.
<<case 'lots'>>
<<if $player.flags.mealplan.hormone_growth>>
In addition to rapidly growing your breasts your heavy dose of hormones has made your nipples hyper-sensitive; puffy and full
<<else>>
Though your titty skittles have not yet worked their magic to swell your chest there is no doubt that they have affected your nipples. Hyper-sensitive, full and puffy
<</if>>
every touch sends sparks of delight through your body as you
<<if $player.body.breastsize[0] > 0>>
mix pinching and twisting with luxuriating in digging your fingers into that soft, fatty parcels of wonder.
<<else>>
pinch and twist and pull, fantasising about the day your breasts start to come in proper.
<</if>>
<</switch>>
<<if $scene.canCum>>
<<if $player.body_ref.milkProduction > 0>>
Cumming with a gasp your nipples shoot milk, twin fountains of white<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>> to match the spurting between your legs<</if>>. Shuddering as you try to recover you glory at how wonderfully empowering it felt to get off this way — your hands never once descending below your ribs.
<<else>>
With a stuttering gasp you cum, your hands never once descending lower than your ribs, the fact that you can get yourself off that way bringing a smile to your face and leaving the coals of arousal warm and lit.
<<if $player.flags.mealplan.hormones == "none">>
You can't help but wonder as you clean up if all this nipple play could spur lactation, concluding that you'd probably need even stronger stimulation, and probably a bit of hormonal assistance.
<<else>>
As you clean up, you notice a bit of milky moisture around your nips. Are you lactating? A quick taste would seem to confirm that assessment; your production is minimal, but sweet and rich. You suppose with the hormones you've been taking this shouldn't be too much of a surprise, though you feel like you would need some more serious stimulation than just your hands to spur full-on production.
<</if>>
<</if>>
<<else>>
Despite how you squeeze and pinch however, it never manages to be enough to get you to climax. Finally, as your hands begin to cramp and your sensitive nipples start to get sore, you give up, sighing in frustration.
<<if $player.body_ref.milkProduction > 0>>
As you clean up, you notice a slight moisture around your nipples, you appear to have leaked a bit of milk in your excitement.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Do something else." 120>>]
</div>/*#
#desc: suck on a dildo the first time
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.masturbation.suck_dildo = true>>
<<set _penis = setup.getTotalValue("penis")>>
<<changeHorny _penis>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<applyExperience 'oral' _dildoSize 'normal' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGARTdildo_suck.png">>
<div id="invframe" class="scrolltext">
You don't know what's going on that put the idea of sucking on a dildo into your head, but now that it's there you just have to try it...<br>
<br>
You start off by washing everything clean and then take a seat, stumped for a moment of how "best" to do things before just bringing it to your lips.<br>
<br>
<<if !$player.virgin.blowjob>>
You have, of course, never tasted a REAL cock so you don't have any means of comparison but the dildo is kind of flat, firm and you guess a bit fleshy,
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
but it's shaped like a <<getWordPenis>>, and thus you love it.
<<else>>
but it's shaped like a <<getWordPenis>> to get you at least a little going.
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
but nothing really exciting.
<<else>>
but not in any way exciting.
<</if>>
<</if>>
<<else>>
It's quite a bit different from the real cocks you have tasted. A bit firmer, definitely, but close enough in shape to be familiar.
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
<<printThought "Mmm, makes me hungry for the real thing, but any cock is better than no cock!">>
<<else>>
<<printThought "Mmm, has me in the mood for the real thing...">>
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
<<printThought "Hmm... I like the real thing a bit better, but maybe there's value in practice?">>
<<else>>
<<printThought "What's wrong with me? I don't like cock! Why would I want an artificial one?">>
<</if>>
<</if>>
<</if>>
<br><br>
You decide to experiment a bit more as you spread your lips and push it deeper.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
The dildo slots into your throat with ease, you can even close your mouth with it fully inside without issue, and you do, humming in happiness as you stroke your modest throat bulge until you need to breathe and are forced to pull it free.
<<else>>
The dildo easily slides into your throat and you give it few playful thrusts, slurping your way all the way to the base with ease and then looking at the wet dildo with a smile.
<</if>>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "Mmmm, I need something bigger to practice on...">><br>
<br>
You put in a few more reps deep-throating the dildo, but as much as you may enjoy it there's no getting around the fact that it's just too small to really develop your skills.
<<else>>
<<printThought "What's wrong with me that I'm so good at sucking cock?">><br>
<br>
Disgusted with yourself you decide to put it away, after all, you hardly need the practice, anyway.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You manage to get the dildo into your mouth and probe the back of your throat gently before you feel yourself start to gag and you have to pull it away.
<<else>>
Almost immediately you find yourself gagging, yanking it out of your mouth as you cough and spit.
<</if>>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "Hmm... I think I need a lot more practice...">><br>
<br>
You spend some more time practicing, imagining how it might pay off the next time you have the opportunity to suck on a real scrumptious schlong.
<<else>>
<<printThought "Ugh, why would anyone be into this sort of thing?">><br>
<br>
Disgusted with yourself you decide to put it away, why would you want to practice something like this?
<</if>>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Continue." 600>>]
</div>/*#
#desc: practice deepthroating a dildo
#status: RELEASED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _penis = setup.getTotalValue("penis")>>
<<changeHorny _penis>>
<<setThreshold 'oral' 'other_oral' 'dildo_practice'>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<applyExperience 'oral' _dildoSize 'normal' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "MISSINGARTdildo_suck.png">>
<div id="invframe" class="scrolltext">
Once again you wash your dildo and bring it to your lips.
<<if setup.getTotalValue("penis") > 10>>
<<printThought "Mmm, practicing sucking cock is the next best thing to actually sucking cock!">>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
<<printThought "Yeah, maybe I should do some more practice...">>
<<else>>
<<printThought "I don't like cock... why am I doing this again?">>
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Your lips and throat both smoothly accept the full length of the dildo. Even as you enjoy the subtle bulge you find yourself disappointed — the dildo is just too small to properly stress your expert skills.
<<else>>
You have little trouble deep-throating the dildo, your skills having surpassed its dimensions.
<</if>>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "Mmmm... this is almost frustrating... I need a real big, juicy cock to stretch me out and really make me feel it...">>
<<else>>
<<printThought "I don't like cock... so why am I so skilled at sucking it?">>
<</if>>
Though it may be trivial you spend a few minutes practicing.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You manage to get most of the dildo past your lips, and even get it a little into your throat before your gag reflex kicks in. Apparently practice pays off?
<<else>>
Just as before you soon find yourself coughing and gagging. You just can't understand how porn actresses can manage this sort of thing so easily, and on far larger implements!
<</if>>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "Mmm, practicing sucking cock is the next best thing to actually sucking cock!">>
<<else>>
Quickly frustrated,
<<if setup.getTotalValue("penis") > 5>>
you make a couple more attempts to prod at your gag reflex before tasting a bit of bitter bile and giving up. You
<<else>>
and more than a little disgusted at yourself, you
<</if>>
put things away and wash out your mouth.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Continue." 600>>]
</div>/*#
#desc: use dog dildo
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_dog.stage && $npc_dog.location == "room_livingroom" && !$daily.dogEvent && !$scene.dogEvent && $npc_dog.flags.stage1.kitchen && setup.hasFreeTime($now, $player, 1800) && ($npc_dog.stage < 3 || random(1,10) == 1)>>
<<initRoom>>
<<moveTo "event_dog_masturbate_1">>
<<else>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'dog' 'dildo'>>
<<applyExperience 'bestiality' 4 'little' $ALONE>>
<</if>>
<<set $scene.cum = setup.getTotalValue("anal") > 9>>
<<if setup.getTotalValue("anal") > 6>>
<<setThreshold "anal" "other_anal" "dog_dildo">>
<</if>>
<<set _dildoSize = setup.getItemObj('dog_dildo').size>>
<<if setup.getTotalValue("anal") > 3>>
<<applyExperience 'anal' _dildoSize 'very' $ALONE>>
<</if>>
<<applyExperience 'penis' 12 'very' $ALONE>>
<<applyFatigue 20>>
<<if $scene.cum>>
<<set $player.flags.masturbation.dogcock = true>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<applyStress -10>>
<<if ($player.flags.masturbation.dogcock || $player.flags.masturbation.dogcock_vag) && ($player.flags.masturbation.horsecock || $player.flags.masturbation.horsecock_vag)>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('dragon_dildo')>>
<</if>>
<<else>>
<<changeHorny 15>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<</if>>
<<set _panties = setup.getItemFromType("panties")>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") >= 10>>
You sit back and gently push the dog-inspired dildo into your ass.
<<if setup.getTotalValue("anal") == 10>>
You bite your lip to suppress a moan, methodically pushing it deeper until the thick knot is pressed against your spread hole. You take a deep breath, close your eyes and push. For a moment you think it might be impossible. Then, after a instant of final resistance, your ass spreads for the thick base. Once you start to accept the knot things happen almost too fast to process, your hole spreading wide and almost sucking the toy deeper, only to reach the far end of the knot and clamp down, the entire thing seating inside you with a pop that has you gasping and staring forward in shock.
<<else>>
You moan, the tip of the dildo sinking into you easily and you speed up, eager to experience the final challenge that is its thick knot. Reaching the thick base you take a deep breath and then spread for the knot. Thick and hard the knot claims you from the inside. It sockets into position with a pop, your hungry ass swallowing the large intruder as the swelled knot locks in place.
<</if>>
<br><br>
You take a moment to enjoy the sensation of being locked full of dog-cock and then you reach down for more. Grabbing hold of the base of the dildo you start to wiggle it around, feeling the knot pressing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as the rest of the sizable member churns your insides. You work yourself higher and higher before grabbing firm hold of the dildo you try to pull it out. True to its evolutionary purpose the knot makes this a challenge, your body resisting parting with its thick occupant. Closing your eyes in concentration you push and pull at the same time until
<<if $scene.cum>>
it pops free. The sudden stretch proves to be just what you needed and, as the tip of the cock scrapes your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> on the way out, you cum.
<<else>>
it pops free. You groan in need; feeling empty and proud of your accomplishment, but without the satisfaction of an orgasm.
<</if>>
<<elseif setup.getTotalValue("anal") > 6>>
You manage to take most of the shaft but the thick knot proves beyond your ability. You grind against it in frustration, <<if $scene.cum>>actually managing a frustrating, groaning climax<<else>>imagining how hard you'd cum if it would only pop into you<</if>>, before giving up in frustration.
<<else>>
<<if setup.getTotalValue("anal") > 3>>
You try to shove the large artificial dog cock into your ass, but you can barely manage the tip before everything becomes too much. <<if $scene.cum>>Even just that much is intense, and you actually manage a small orgasm just from playing with the tip and fantasising about actually being knotted.<<else>>imagining how hard you'd cum if you could only feel the knot inside of you.<</if>> In the end you give up in frustration with the understanding that your ass needs a lot more training.
<<else>>
You lean back and try to push the dog dildo into your ass, but it's just too big, you can barely get the tip in without pain, much less the rest of the head. The thick knot might as well be in a different city for all the odds you could reach it, much less fit it inside.
<</if>>
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty('task_dog_dildo') && !$currentTasks.task_dog_dildo.finished>>
You consider the advertisement you saw...<br>
<br>
[<<moveTo "room_masturbate_dog_dildo_picture" "Shove it back into your ass and snap a picture." 60>>]<br>
<</if>>
<<if $scene.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("cum") > 5 >>
[<<moveTo "room_masturbate_lickcum" "Slurp up your spilt cum." 180>>] <br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't allow delicious <<getWordCum>> to go to waste.@@]
<<else>>
[<<moveTo "room_livingroom" "Clean up after yourself.">>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
<</if>>
</div>/*#
#desc: send picture of you w/dog dildo
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("anal") >= 10>>
<<completeTask 'task_dog_dildo' $now true>>
<<addCredits 25>>
<<if !setup.hasEmail("mail_camgirl_money_h")>>
<<addEmail $computer
'Hole Fan'
'The Bottomless Bum'
false
false
$now
'mail_camgirl_money_h'
'mail_camgirl_money_t'>>
<</if>>
<</if>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") >= 10>>
Like a familiar lover the dog-cock dildo slams back into your ass, the knot feeling like it's where it belongs as you angle your phone to snap a picture. Your heart racing you send the pic before something other than slut brain can give you second thoughts.<br>
<br>
A moment later you get a return text.
<<if $fetish.bestiality_hard>>
"@@.generic_female2;Now that's a proper bitch! Oh, I just love the sight of a knotted hole... you should try the real thing, it's even better than the toys!@@"
<<else>>
"@@.generic_female2;Now that's a proper bitch! Oh, I just love the sight of a knotted hole... congrats, you totally earned your reward... well, another reward!@@"
<</if>>
<br><br>
Your phone chimes indicating you have received a money transfer, an additional 25 credits appearing in your account.<br>
<br>
With a smile on your face you let out a slow breath and slide the dildo out once more.
<<elseif setup.getTotalValue("anal") > 7>>
You shove the dildo as far as it will go, still unable to accommodate the knot, and fire off a picture.<br>
<br>
"@@.generic_female2;Hmm, you're right on the threshold, but no knot means no reward. Keep working at it, believe me that it'll be worth it when you feel it pop into place that first time...@@"
<<else>>
You press the tip of the dildo to your rear and fire off a picture and swiftly receive a response. "@@.generic_female2;What is this, foreplay? No, that pert hole needs a lot more practice just to get to that delicious knot! But trust me, when it slots into position? Oh, you'll be in bitch heaven.@@"
<</if>>
<br><br>
Putting the dildo to the side you catch your breath and start your clean-up.<br>
<br>
<<if $scene.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("cum") > 5>>
[<<moveTo "room_masturbate_lickcum" "Slurp up your spilt cum." 180>>]<br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't allow delicious <<getWordCum>> to go to waste.@@]
<<else>>
[<<moveTo "room_livingroom" "Clean up after yourself.">>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
<</if>>
</div>/*#
#desc: fuck your vag with a dildo
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_dog.stage && $npc_dog.location == "room_livingroom" && !$daily.dogEvent && !$scene.dogEvent && $npc_dog.flags.stage1.kitchen && setup.hasFreeTime($now, $player, 1800) && ($npc_dog.stage < 3 || random(1,10) == 1)>>
<<initRoom>>
<<moveTo "event_dog_masturbate_1">>
<<else>>
<<switch $scene.dildo>>
<<case "basic_dildo">>
<<set $player.flags.masturbation.dildo_vag = true>>
<<case "dog_dildo">>
<<set $player.flags.masturbation.dogcock_vag = true>>
<<case "horse_dildo">>
<<set $player.flags.masturbation.horsecock_vag = true>>
<<case "large_dildo">>
<<set $player.flags.masturbation.large_dildo_vag = true>>
<<case "dragon_dildo">>
<<set $player.flags.masturbation.dragon_dildo_vag = true>>
<</switch>>
<<if ($player.flags.masturbation.dogcock || $player.flags.masturbation.dogcock_vag) && ($player.flags.masturbation.horsecock || $player.flags.masturbation.horsecock_vag)>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('dragon_dildo')>>
<</if>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<applyStress -10>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.dildo>>
<<case "basic_dildo">>
You eagerly pull our your dildo and, after running it between your fold to get it properly wet, slide it into your waiting cunt.<br>
<br>
You moan, each thrust better than the last, the feeling of being fucked by the ever-hard chunk of silicone wonderful, even as it makes you lust for the real thing.
<<case "dog_dildo">>
You run the dog dildo between your legs in anticipation before excitedly sliding it into your cunt. You moan as the thick dong penetrates you, and then your eyes roll back in ecstasy as the even larger knot pops into place.<br>
<br>
You pant as you ride the dildo, filled and bred like a bitch by your silicone friend. You cum hard.
<<case "horse_dildo">>
You plunge the horse dildo into your cunt, pushing it all the way to the end of you as you feel it stretch you open. You moan, using both hands to fuck yourself as you cum and cum and cum, only stopping when your arms are rubbery and you feel too exhausted to pound yourself anymore.
<<case "large_dildo">>
You plunge the large dildo into your cunt, pushing it all the way to the end of you as you feel it stretch you open. You moan, using both hands to fuck yourself as you cum and cum and cum, only stopping when your arms are rubbery and you feel too exhausted to pound yourself anymore.
<<case "dragon_dildo">>
You plunge the dragon dildo into your cunt, pushing it all the way to the end of you as you feel it stretch you open. You moan, using both hands to fuck yourself as you cum and cum and cum... with the dildo nearly keeping up, the artificial instant cum leaking out of you with each enthusiastic thrust. Your arms rubbery and exhausted, you finally stop, sitting in a small puddle as you pant with pleasure, your pussy lips quivering slightly as they gradually tighten up and recover from their pounding..
<<default>>
ERROR: unexpected scene.dildo <<=$scene.dildo>>
<</switch>>
<br><br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0 && setup.getTotalValue("cum") > 5>>
[<<moveTo "room_masturbate_lickcum" "Slurp up your spilt cum." 180>>] <br>
<</if>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0 && setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't allow delicious <<getWordCum>> to go to waste.@@]
<<else>>
[<<moveTo "room_livingroom" "Clean up after yourself.">>]
<</if>>
</div>/*#
#desc: use large dildo
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cum = setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 8>>
<<setThreshold "anal" "other_anal" "large_dildo">>
<</if>>
<<set _dildoSize = setup.getItemObj('large_dildo').size>>
<<if setup.getTotalValue("anal") > 5>>
<<applyExperience 'anal' _dildoSize 'very' $ALONE>>
<</if>>
<<applyExperience 'penis' 12 'very' $ALONE>>
<<applyFatigue 20>>
<<if $scene.cum>>
<<set $player.flags.masturbation.large_dildo = true>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<applyStress -10>>
<<else>>
<<changeHorny 15>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<</if>>
<<set _panties = setup.getItemFromType("panties")>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") >= 15>>
<<if setup.getTotalValue("anal") == 15>>
Squatting over the massive dildo, the tip of the thick dong enters you without too much difficulty, but each subsequent centimetre is more challenging as you try to relax and let your weight do the work.<br>
<br>
Your breaths come quick and short and you tremble, almost losing your balance before, with a final wiggle, it slides the rest of the way into position and you find yourself seated fully atop the large attached balls.
<<else>>
Arranging the massive dildo on the floor you squat down, take aim, and lower your weight, your well-used hole spreading easily before the massive cock. You savour every delightful centimetre as the thick head makes its way into you, your feelings mixed when you finally hit the base, the large artificial testicles pressed against you as you slowly rock.
<</if>>
<br><br>
Rocking back and forth, you work your way up to bouncing up and down nearly the full length of the thick cock, moaning with each thrust as it re-arranges your insides, wonderfully filled with each thrust. The intense pressure against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> combined with the pounding fullness pushes you towards orgasm and it is not long before you are <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>spurting your<<else>>shuddering with<</if>> joy, your whole body shuddering before your legs give out and you find yourself sitting with the entire dildo inside of you as you pant.
<<elseif setup.getTotalValue("anal") > 10>>
Squatting down on the large dildo, the thick head enters you without much issue, but that proves to only be the first challenge. Each centimetre of massive that plunges into your body is more challenging than the last and, after much effort expended to get past the ridge partway down the shaft, you finally come to a stop, unable to force any more of the monstrous dildo into your body.<br>
<br>
Heart pounding in your chest, you begin to bounce up and down, fucking yourself atop the massive dildo, your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> crying out in compressed joy with each eye-widening thrust.<br>
<br>
Though you fail to get any closer to being balls deep, you soon feel an orgasm rising, your legs trembling as you thrust faster and faster before finally exploding in joy, frozen in place with the cock most of the way inside of your ass.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Taking a deep breath, you arrange the dildo on the floor, and then slowly squat down. Despite your prior experience, you are soon wide-eyed in shock, unable to fit much more than the tip inside of you; and even that has you feeling spread as never before.<br>
<br>
<<printThought "Oh <<getWordGod>> it's too big, there's no way this is possible to insert.">><br>
<br>
You try to bounce up and down and get off, but the dildo is just too massive to leave you feeling anything, but stretched.
<<else>>
Even with copious lubricant there is no way you can get even the tip of the massive dildo into your rear. You try just rubbing it between your cheeks, but all it does is reinforce your fear of the thick, club-like implement.
<</if>>
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty('task_large_dildo') && !$currentTasks.task_large_dildo.finished>>
[<<moveTo "room_masturbate_large_dildo_picture" "Snap a picture and send it off." 60>>]<br>
<<elseif setup.getTotalValue("anal") >= setup.getItemObj('large_dildo').size>>
[<<moveTo "room_masturbate_large_dildo_bonus" "Wait..." 180 "<<set $scene.dildo='large_dildo'>>">>]<br>
<</if>>
<<if $scene.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("cum") > 5>>
[<<moveTo "room_masturbate_lickcum" "Slurp up your spilt cum." 180>>] <br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't allow delicious <<getWordCum>> to go to waste.@@]
<<else>>
[<<moveTo "room_livingroom" "Clean up after yourself.">>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
<</if>>
</div>/*#
#desc: send picture of you w/large dildo
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("anal") >= 15>>
<<completeTask 'task_large_dildo' $now true>>
<<addCredits 40>>
<<if !setup.hasEmail("mail_camgirl_money_h")>>
<<addEmail $computer
'Hole Fan'
'The Bottomless Bum'
false
false
$now
'mail_camgirl_money_h'
'mail_camgirl_money_t'>>
<</if>>
<</if>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") >= 15>>
Angling things so you can get a proper shot to show that the dildo is all the way inside your ass, you fire off a picture.<br>
<br>
"@@.generic_female1;Perfection! This is exactly what I wanted to see, another gaping slut filled with... lust.@@"<br>
<br>
"@@.generic_female1;Congratulations on cresting a summit that few size queens manage. I would wish you luck in the future, but who needs luck when they are already a gaping fuck-hole?@@"<br>
<br>
Your phone chimes indicating you have received a money transfer, an additional 40 credits appearing in your account.
<<elseif setup.getTotalValue("anal") > 10>>
Barely keeping your balance atop the large dildo edifice, you manage to snap a picture and send it off.<br>
<br>
"@@.generic_female1;Impressive, but insufficient — if I am going to pay out, I want to see you balls deep. Keep practicing though, I think your ass has what it takes to be a champion.@@"
<<else>>
<<if setup.getTotalValue("anal") > 5>>
With the head of the dildo still inside of your rear, you snap a picture and fire it off.<br>
<br>
"@@.generic_female1;Can you not read? I want pictures of that wonderful cock hilted balls deep! Some might be impressed at the ability to spread enough to take the head, but I demand more if I am going to pay out!@@"
<<else>>
Posing as best you can you snap a picture of the dildo pressed up against you and fire it off.<br>
<br>
"@@.generic_female1;What the heck is that? I don't want a picture of someone posing next to a giant dildo, I want proof that they can take it all the way inside their slutty hole! If you aren't up to the challenge, please do not waste my time.@@"
<</if>>
<</if>>
<br><br>
<<if $scene.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("cum") > 5>>
[<<moveTo "room_masturbate_lickcum" "Slurp up your spilt cum." 180>>] <br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't allow delicious <<getWordCum>> to go to waste.@@]
<<else>>
[<<moveTo "room_livingroom" "Clean up after yourself.">>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
<</if>>
</div>/*#
#desc: bonus after large dildo masturbation
#status: RELEASED 0.8.5.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dildoSize = setup.getItemObj($scene.dildo).size>>
<<applyExperience 'anal' _dildoSize 'very' $ALONE>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You shudder as you rock with the massive <<if $scene.dildo == "horse_dildo">>equine <</if>>dildo still impaling you from behind. Even post climax your breaths continue to come in short, quick gasps, and it takes you over a minute before you manage to summon the energy to lift yourself off. You groan as you rise, the shift somehow unbelievably stoking the embers of your arousal. As the bulbous head rubs past your most sensitive spot you can sense your body recharging. You can't resist the temptation and you slide back down. This time your gasp is a moan of pleasure and your mind flashes.<br>
<br>
<<printThought "More... I need more...">><br>
<br>
After only a few strokes you can feel another orgasm starting to build
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
your now very limp and entirely spent dick is slapping around in its prison.
<<else>>
your now very limp and entirely spent dick is flapping about.
<</if>>
<<else>>
your <<getWordVagina>> drips with excitement, and yet remains on the periphery of your attention<<if setup.checkItemTypeWorn("cage")>>, locked within its prison<</if>>.
<</if>>
The forthcoming analgasm builds, feeling different than what came before. You mumble how good it feels, your senses sharpening with each shift of your hips.<br>
<br>
The full length is sliding into your ass with each stroke now, every single inch of silicone cock triggers the most delightful pulse of pleasure. You test your balance as you move into a squat, bouncing up and down as your hands grasp and tweak your
<<if $player.body.breastsize[0] > 0>>breasts<<else>>nipples<</if>>, adding further to the growing surge of desire.<br>
<br>
You can't believe you are going to cum again, so soon... and like this. But it is happening<<if $player.body_ref.penis>>, even as your still soft penis flaps around<</if>>.<br>
<br>
With more consciousness, you flex and work your hips, extracting as much as you can from each thrust of the giant dildo. Your body feels alive, every pore of your skin on fire with desire, each pinch or caress of your hand are like a thousand all over. You push harder, fucking yourself deeper, driving manically up and down to reach your goal.<br>
<br>
"@@.pc;I need to cum again,@@" you cry out, desperate to get over the line, your thrusts becoming frantic
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
as you paw at your imprisoned privates,
<<else>>
as you reach for your soft, flapping cock, grasping your balls and squeezing,
<</if>>
<<else>>
as you finger yourself, feeling the massive dildo in your ass through the thin membrane separating your holes with each pounding thrust,
<</if>>
anything to get you there.<br>
<br>
You are grunting and groaning. Begging for release, speeding up and now slamming up and down,
<<if $player.body_ref.penis>>
you can't get hard<<if setup.checkItemTypeWorn("cage")>>, not even enough to fill your prison<</if>>,
<<else>>
your clit aches at the slightest touch,
<</if>>
but you don't care. Everything feels amazing, your entire body is alive and all you want is to cum... cum with your ass.<br>
<br>
Your legs trembling from strain you fall back as your body contorts. Full body spasms take control like you were a puppet to the orgasm now ripping through you.
<<if $player.body_ref.penis>>
Your cock stiffened slightly but failed to become hard as the climax tears you apart, a large ooze of cum leaking from it, merging with a second and third surge that seemed to flow in one constant river.
<<else>>
Your cunt spurts with excitement, not just leaking but popping off like a geyser.
<</if>>
<br><br>
Your first orgasm had been a burst of pleasure but this seems to roll on like a giant tsunami, crashing over you as your hand shoves the dildo deeper, your body twitching, spasming and moaning through a complete body climax, more intense than any mere <<if $player.body_ref.penis>>penile<<else>>vaginal<</if>> orgasm. You blink up at the ceiling, your mind blank but for the feeling of utter satisfaction.<br>
<br>
<<if $scene.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("cum") > 5>>
[<<moveTo "room_masturbate_lickcum" "Slurp up your spilt cum." 180>>] <br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't allow delicious <<getWordCum>> to go to waste.@@]
<<else>>
[<<moveTo "room_livingroom" "Clean up after yourself.">>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
<</if>>
</div>/*#
#desc: suck large dildo
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.masturbation.suck_large_dildo = true>>
<<setThreshold 'oral' 'other_oral' 'large_dildo_practice'>>
<<set _dildoSize = setup.getItemObj('large_dildo').size>>
<<applyExperience 'oral' _dildoSize 'very' $ALONE>>
<<applyExperience 'penis' 12 'very' $ALONE>>
<<set _penis = setup.getTotalValue("penis")>>
<<changeHorny _penis>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You take a deep breath and tilt your head back as you extend your arm and bring the tip of the long, thick dildo to your lips.
<<if setup.getTotalValue("oral") >= 15>>
You take a moment to enjoy the thick mushroom tip, kissing and licking it with the love you have for all cocks. Smiling as you look down the thick barrel of this example of penile excellence you open wide and guide it into your mouth.
<<if setup.getTotalValue("oral") == 15>>
The first few centimetres go smoothly and the flexible shaft makes the gentle corner down your throat. Holding the balls with one hand you raise it high and let the weight of the large dildo do some of the work, using your other hand to feel the glorious bulge moving down your throat.<br>
<br>
You reach the slightly thicker bottom third of the dildo and you stall. Your throat strains in protest at what you are demanding but you want this, you want this so badly. Closing your eyes you forcibly shove the whole thing down your throat, your body stretching to accommodate the inhumanly large member, your enthusiasm such that the balls end up slamming you in the chin as the last centimetre of silicone cock passes your lips.
<<else>>
The first half of the dildo enters your trained throat easily, but even when the bottom third of the dildo swells and forces your throat to stretch further, you are not dissuaded. You watch your fingers wrapped around the wide base of the dildo approaching your face, feeling a jolt of pleasure run through your body as the artificial balls bump your chin — you've taken it all, an entire giant dildo occupies your slutty throat.
<</if>>
<br><br>
You gurgle, gaze unfocused, brain struggling for air as you process the fact that you have an entire inhumanly large dildo stuffed down your gullet. Unfortunately such joys cannot last and you are forced to pull the dildo free to take a breath, panting as you look at the saliva-soaked dildo flopping in your hand before going to town to repeatedly face-fuck yourself with it until your throat is near its limit and your chin is dripping with drool.
<<else>>
From the first moment you face a struggle, the thick, mushroom tip tickling your lips and tongue and preventing you from even attempting to stretch your throat. Though you manage to take the tip you soon come up short, unable to manage the slightly thicker lower third of the dildo. Gagging and shuddering you struggle to stay in control of your body as your eyes roll back. In an almost explosive effort you rip the dildo from your throat, trailing thick saliva and snot as you pant and gasp.<br>
<br>
<<printThought "This is definitely hard-mode...">>
<</if>>
<br><br>
<<if setup.getTotalValue("oral") >= 15 && $currentTasks.hasOwnProperty('task_large_dildo') && $currentTasks.task_large_dildo.finished>>
<<if $player.flags.masturbation.suck_large_dildo_pic>>
[@@.link_locked;You've already been paid out for deepthroating a giant dildo.@@]<br>
<<else>>
<<printThought "Hmm... I wonder if that person might enjoy a picture of me deepthroating a giant cock...">><br>
<br>
[<<moveTo "room_suck_large_dildo_picture" "Tilt your head back and get ready to snap a picture." 60>>]<br>
<</if>>
<</if>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
</div>/*#
#desc: send picture of you sucking large dildo
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.masturbation.suck_large_dildo_pic = true>>
<<addCredits 40>>
<<applyExperience 'humiliation' 15 'normal' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You let the dildo drop back down your throat, pushing it deeper until the balls are against your chin. You snap a picture, holding things for as long as you can before pitching forward, trailing drool and panting for air. You fire off the message before you can think any further and try to catch your breath.<br>
<br>
<<printThought "Holy shit, I really am becoming a mouth fuck-hole...">><br>
<br>
Your phone chimes with a response message and you put the dildo to one side to eagerly read it. "@@.generic_female1;Wow! I enjoyed your previous picture but this one is in some ways even better... you can't even use the excuse of fucking yourself in any normal way, the person who took this picture is 110% a gaping size queen! Perfection. Now go forth and use those skills for the benefit of others. You whore.@@"<br>
<br>
There is a second notification as your bank account swells by 40 credits.<br>
<br>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
</div>/*#
#desc: use wand on yourself
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 30>>
<<if !setup.checkItemTypeWorn("cage") || (setup.getChastityLevel() < 5 && setup.isCage())>>
<<if setup.checkItemTypeWorn("cage") && (setup.isCage() || setup.getChastityLevel() < 4)>>
<<applyStress 5>>
<<else>>
<<playerOrgasm>>
<</if>>
<<if !setup.checkItemTypeWorn("cage")>>
<<playerOrgasm>>
<<if $player.body_ref.vagina>>
<<set $player.flags.masturbation.wand_vagina = true>>
<<else>>
<<set $player.flags.masturbation.wand = true>>
<</if>>
<<else>>
<<set $player.flags.masturbation.wand_cage = true>>
<</if>>
<<elseif setup.getChastityLevel() == 5>>
<<changeHorny -50>>
<<applyStress 15>>
<<applyExperience 'bdsm' 18 'terrible' $ALONE>>
<<elseif setup.getChastityLevel() == 4>>
<<changeHorny 10>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<</if>>
<<if $player.body_ref.vagina>>
<<changeHorny 30>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<<elseif setup.getChastityLevel() < 4 || setup.isCage()>>
<<playerOrgasm>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You turn on the vibrator, a little intimidated by how loud and powerful it feels.
<<if setup.getChastityLevel() == 4 && !setup.isCage()>>
Despite the vibrator's power the technology packed into your <<=setup.getItemTypeName('cage')>> proves superior, dampening the vibrations enough to keep your orgasm frustratingly far out of reach.<br>
<br>
With a frustrated groan you finally give up, turning off the vibrator and putting it away, your hips a bit numb from bearing the brunt of the vibrations, still desperately horny within your prison.<br>
<br>
[<<moveTo "room_livingroom" "Pack up and do something else." 60>>]
<<elseif setup.getChastityLevel() == 5>>
Your heart races in anticipation of relief as you bring the wand to the front of your chastity device, and feel nothing. Confused at how such powerful vibrations could be unfelt and you crank it to max, grinding against the wand in a desperate desire to feel something...<br>
<br>
You feel nothing, and then you feel pain,
<<if $player.body_ref.vagina>>
<<if $player.body_ref.penis>>
your vagina AND <<getWordMyPenis>> lighting up with electricity inside and out, a dual fork of white-hot agony.
<<else>>
your vagina lighting up with electrified agony, a bolt of lightning going through your clit and then exploding out through your insides with white-hot pain.
<</if>>
<<else>>
your <<getWordMyPenis>> lighting up with electricity inside and out, like a jolt of lightning agony.
<</if>>
<br><br>
Your phone rings.<br>
<br>
[<<moveTo "event_caught_wand" "Oh shit." 60>>]
<<else>>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage")>>
You bring it to your cunt and shudder, the vibrations suffuse your entire crotch and, after a slight positional adjustment, the first orgasm hits. You moan, grinding against the toy like you're steering yourself, steering towards even more orgasms. Unlike in real life you are a VERY effective driver.<br>
<br>
Your hips sore you start to feel so sensitive that the vibrations become almost painful, forcing you to turn off the vibrator and lean back, sweaty and exhausted.
<<else>>
You press the wand against the front shield of your chastity belt, and a rumble of vibrations courses past your prison!<br>
<br>
You moan with want, grinding against the wand as you try to find the perfect angle for stimulation, but nothing works. You grind and vibe and almost cry in desperation but, when you finally give up, all you are left with is a feeling of numbness all through your crotch, the chastity device not just thwarting your efforts, but leaving you frustrated and humiliated by your failure.
<</if>>
<<else>>
<<if !setup.checkItemTypeWorn("cage")>>
You bring it to your <<getWordMyPenis>> and shudder, your <<getWordMyPenis>> twitching away in response to the stimulation, but you persevere, shoving the vibrator against the base of your shaft, the vibrations running through your hips and making you moan as you fold forward, the intense stimulation making you cry out as your entire body shudders and you cum almost painfully hard.<br>
<br>
Flopping back you finally flick the switch to off as you catch your breath, almost scared of how powerful the wand is.
<<else>>
You press the wand against your cage and gasp. Rather than muffling the stimulation the cage somehow amplifies it; redirecting it so that it feels like it is coming from all over, your <<getWordMyPenis>> straining against its prison and, eventually, weeping in an almost painful climax.<br>
<br>
The orgasm leaves you hyper-sensitive and you pull the wand away, wincing slightly as the momentary release seems to have left you only more aware of your private cell.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue('cum') > 15 && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
[<<moveTo "room_masturbate_lickcum" "Eagerly slurp up your cum." 180 "<<set $player.timebased.horny = 5>>">>]<br>
[@@.link_locked;You are too much of a cum hound to let delicious <<getWordCum>> go to waste.@@]
<<else>>
<<if setup.getTotalValue('cum')>0 && $player.body_ref.penis && $player.body_ref.cumProduction > 0 && setup.getTotalValue('humiliation')>=3>>
It would be a shame to waste all that <<getWordCum>> you've just carelessly squirted around, don't you think?<br>
<br>
[<<moveTo "room_masturbate_lickcum" "Lick your cum up." 180 "<<set $player.timebased.horny = 5>>">>]<br>
<</if>>
[<<moveTo "room_livingroom" "Pack up and do something else." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: manager calls you for trying to wand through 9001
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<playerOrgasm>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<applyExperience 'submission' 15 'terrible' $ALONE>>
<<set $player.flags.masturbation.wand_remote = true>>
<<applyFatigue 20>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Phonecall">>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Still shaking from the painful shock you pick up your phone.<br>
<br>
"@@.npc_manager;Hello, <<=$player.first_name>> I see you have discovered the anti-stimulation measures of that lovely device we have you locked in.@@"<br>
<br>
You whimper, from denied stimulation, to harsh punishment, and then on to cruel taunting from your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
"@@.npc_manager;On the one hand the vibration-dampening material would be enough, but this is about control and training, so I set it to respond to such improper attempts with immediate corrective measures. I expect this was sufficient for you to learn your lesson in regards to subverting the permanent control you have submitted yourself to?@@"<br>
<br>
She waits for your response and you bite your lip in humiliation before responding with a quiet "@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>.@@"<br>
<br>
"@@.npc_manager;Good, good,@@" she replies, you can practically see her satisfied smile — her control over you nigh complete, even this far distant. "@@.npc_manager;Let it not be said that I am not a merciful Domme... so I shall grant you what you were apparently so desperate to achieve — an orgasm, but in a manner more appropriate for <<if $fetish.sissy>>a sissy<<else>>one such as yourself<</if>>.@@"<br>
<br>
You gasp as the hollow plug built into your chastity device begins to pulse. Changing size from narrow to ass-stretching wide the thickest portion moves in and out, like you were being fucked underneath your locked-on chastity. You moan, which prompts a soft chuckle from <<=setup.getNpcName("npc_manager","formal")>>. "@@.npc_manager;See? Is that not far superior stimulation? Go on, cum for me, cum for me like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"<br>
<br>
The stimulation becomes even more intense, driving you to your hands and knees as you gasp, totally alone yet feeling like you were being fucked by a train. It's too much; combined with your <<=ps(setup.getNpcName("npc_manager","title"))>> taunting encouragement you do as she commands, cumming hard, leaking down your thighs as the orgasm wracks your body and you slump to the floor.<br>
<br>
"@@.npc_manager;Beautiful. See how much better things are when you simply obey?@@" Your response is a low whine. "@@.npc_manager;Lovely, well I will let you get back to things, have a lovely, obedient, day.@@"<br>
<br>
She hangs up with you still slumped in a heap, drooling onto the carpet, the still-running wand having bounced its way across the floor.<br>
<br>
With a sigh you turn off the "evil" wand that ensorcelled you into this situation and put your phone away.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60 "<<set $currentcall=false>>">>]
</div>/*#
#desc: use dragon dildo
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_dog.stage && $npc_dog.location == "room_livingroom" && !$daily.dogEvent && !$scene.dogEvent && $npc_dog.flags.stage1.kitchen && setup.hasFreeTime($now, $player, 1800) && ($npc_dog.stage < 3 || random(1,10) == 1)>>
<<initRoom>>
<<moveTo "event_dog_masturbate_1">>
<<else>>
<<if $fetish.bestiality_hard>>
<<setThreshold 'bestiality' 'other_bestiality' 'dragon_dildo'>>
<<applyExperience 'bestiality' 7 'little' $ALONE>>
<</if>>
<<set $scene.cum = setup.getTotalValue("anal") > 12>>
<<if setup.getTotalValue("anal") > 12>>
<<setThreshold "anal" "other_anal" "dragon_dildo">>
<</if>>
<<set _dildoSize = setup.getItemObj('dragon_dildo').size>>
<<if setup.getTotalValue("anal") > 5>>
<<applyExperience 'anal' _dildoSize 'very' $ALONE>>
<</if>>
<<applyExperience 'penis' 12 'very' $ALONE>>
<<applyFatigue 20>>
<<if $scene.cum>>
<<set $player.flags.masturbation.dragoncock = true>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<applyStress -10>>
<<else>>
<<changeHorny 15>>
<<set _stress = $player.timebased.horny/5>>
<<applyStress _stress>>
<</if>>
<<set _panties = setup.getItemFromType("panties")>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") >= 18>>
<<if setup.getTotalValue("anal") == 18>>
You squat over the massive dildo and settle back, the frilled tip spreading you open and easing the journey of the next half-dozen centimetres. You start rocking and moaning — each subsequent centimetre more challenging as you try to relax and let your weight do the work.<br>
<br>
Your breaths come quick and short and you tremble, almost losing your balance before, with a final wiggle, it slides the rest of the way into position and you find yourself seated fully atop the large attached balls.
<<else>>
Arranging the massive dildo on the floor you squat down, take aim, and lower your weight, your well-used hole spreading easily for the frilled tip of the fantastical cock. You savour every delightful centimetre, the scales giving the dildo a unique, inhuman texture as you plunge deeper, your feelings mixed when you finally hit the base, the large artificial testicles pressed against you as you slowly rock.
<</if>>
<br><br>
Rocking back and forth, you work your way up to bouncing up and down nearly the full length of the thick cock, moaning with each thrust as it re-arranges your insides, wonderfully filled with each thrust. The intense pressure against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> combined with the pounding fullness pushes you towards orgasm and it is not long before you cry out in joy, moaning even harder as the dildo responds in kind, spurting artificial cum deep into your rear to leak out down the shaft as you crumple to the floor, shuddering and moaning in a pool of perverse joy.
<<elseif setup.getTotalValue("anal") > 12>>
Squatting down on the large dildo you manage to take the large, frilled head, but that is only your first challenge. Each centimetre of thick dragon cock that plunges into your body is more challenging than the last and, after much effort expended as you cope with the interesting texture of the dildo's scaled sheath, you finally come to a stop, unable to force any more of the monstrous dildo into your body.<br>
<br>
Heart pounding in your chest, you begin to bounce up and down, fucking yourself atop the massive dildo, your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> crying out in compressed joy with each eye-widening thrust.<br>
<br>
Though you fail to get any closer to being balls deep, you soon feel an orgasm rising, only for the dildo to beat you to it as it spurts forth artificial cum that not only fills you, but flows out down the shaft tightly packed in your ass, your legs trembling as you thrust faster and faster with the added lube before crumpling to the floor in exhaustion.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
You take a deep breath and arrange the dildo on the floor, and then slowly squat down. Despite your prior experience, you are soon wide-eyed in shock, unable to fit much more than the tip inside of you; and even that has you feeling spread as never before.<br>
<br>
<<printThought "Oh <<getWordGod>> it's too big, there's no way this is possible to insert.">><br>
<br>
You try to bounce up and down and get off, but the dildo is just too massive to leave you feeling anything, but stretched.
<<else>>
Even with copious lubricant there is no way you can get even the tip of the massive dragon-cock dildo into your rear. You try just rubbing it between your cheeks, but all it does is reinforce your fear of the thick, club-like implement.
<</if>>
<</if>>
<br><br>
<<if $scene.cum && $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("cum") > 5 >>
[<<moveTo "room_masturbate_lickcum" "Slurp up your spilt cum." 180>>] <br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You can't allow delicious <<getWordCum>> to go to waste.@@]
<<else>>
[<<moveTo "room_livingroom" "Clean up after yourself.">>]
<</if>>
<<else>>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
<</if>>
</div>/*#
#desc: suck dragon dildo
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.masturbation.suck_dragoncock = true>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 7 'little' $ALONE>>
<</if>>
<<if setup.getTotalValue("oral") > 10>>
<<setThreshold 'oral' 'other_oral' 'dragon_dildo_practice'>>
<</if>>
<<set _dildoSize = setup.getItemObj('dragon_dildo').size>>
<<applyExperience 'oral' _dildoSize 'very' $ALONE>>
<<applyExperience 'penis' 12 'very' $ALONE>>
<<set _penis = setup.getTotalValue("penis")>>
<<changeHorny _penis>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You take a deep breath and tilt your head back as you extend your arm and bring the tip of the long, floppy dragon-cock to your lips.
<<if setup.getTotalValue("oral") >= 18>>
You take a moment to enjoy the large, frilled tip, kissing and licking it with the love you have for all cocks. Smiling as you look down the thick barrel of this fantastical sculpture, you open wide and guide it into your mouth.
<<if setup.getTotalValue("oral") == 18>>
The first few centimetres fill your mouth, but you manage to get the tip to compress as you guide the flexible shaft down your throat. Holding the balls with one hand you raise the dildo high and let its weight do some of the work, using your other hand to feel the glorious bulge moving down your throat.<br>
<br>
You reach the slightly thicker bottom third of the dildo and you stall. Your throat strains in protest at what you are demanding but you want this, you want this so badly. Closing your eyes you forcibly shove the whole thing down your throat, your body stretching to accommodate the inhuman member, your enthusiasm such that the balls end up slamming you in the chin as the last centimetre of silicone cock passes your lips.
<<else>>
The first half of the dildo enters your trained throat easily, but even as you feel the larger scales of the thick lower shaft move past your lips, you are not dissuaded. You watch your fingers wrapped around the wide base of the dildo approaching your face, feeling a jolt of pleasure run through your body as the artificial balls bump your chin — you've taken it all, the fantasy of taking an entire giant dragon-cock dildo a reality right here in your own throat...
<</if>>
<br><br>
You gurgle, and then almost choke as the dildo unleashes its cummy payload, artificial <<getWordCum>> spurting out of your nose as you struggle to contain things, feeling like a true and proper throat fuck-hole. With a final moan you are forced to withdraw, staring in awe at the saliva ring around the massive dildo's base. You drool fake cum and brim with pride at having taken it all.
<<else>>
From the first moment you face a struggle, the frilled tip tickling your lips and tongue and preventing you from even attempting to force it deeper into your throat. Though you manage to take the tip your throat fails to stretch any further; unable to manage the slightly thicker lower third of the dildo. Gagging and shuddering you struggle to stay in control of your body as your eyes roll back. In an almost explosive effort you rip the dildo from your throat, trailing thick saliva and snot as you pant and gasp.<br>
<br>
<<printThought "This is definitely hard-mode...">>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
</div>/*#
#desc: porn auto-plays aphrodisiac video
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.bestiality_hard>>
<<applyExperience "bestiality" 10 'very' $ALONE>>
<</if>>
<<applyExperience "humiliation" 15 'very' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
You watch as a new, far more extreme scene begins to play out, a scene that you quickly recognise as your eyes widen in shock.<br>
<br>
<<if $fetish.bestiality_hard>>
You look on in shock at a super-cut of a very familiar location... and an even more familiar person as you watch yourself get fucked by a pig and a donkey in <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab...
<<else>>
You look on in shock at a super-cut of a very familiar location... and an even more familiar person as you watch yourself in the centre of an orgy in <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab...
<</if>>
<br><br>
<<printThought "What?? <<he npc_work_doctor>> sold video of <<his npc_work_doctor>> experimenting on me??">><br>
<br>
[<<moveTo "event_masturbate_porn_aphrodisiac_2" "Might as well finish off..." 300>>]<br>
[<<moveTo "event_masturbate_porn_aphrodisiac_2_abort" "No, this is wrong!" 300>>]
</div>/*#
#desc: cum to aphrodisiac video
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience "humiliation" 20 'unbelievable' $ALONE>>
<<playerOrgasm>>
<<set _stress = 20 - setup.getTotalValue("bimbofication") >>
<<applyStress _stress>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
<<printThought "I'm so fucked up...">><br>
<br>
The thought may be in your head, but it doesn't stop you from continuing to masturbate, both watching and remembering how it felt to
<<if $fetish.bestiality_hard>>
get fucked by the literal barnyard
<<else>>
experience an orgy
<</if>>
under <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> supervision.<br>
<br>
Staring intently at the depravity of your past self you cum... hard, and then continue watching to video to the end,
<<if setup.getTotalValue("bimbofication") >= 20>>
your unremittent depraved horniness leaving you not just unaffected by <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> violation of your privacy... but turned on.<br>
<br>
<<printThought "Was I always this depraved? And why do I barely seem to care that <<=setup.getNpcName('npc_work_doctor','formal')>> so violated my privacy?">>
<<elseif setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
barely affected by the depravity of the act you just performed,
<<else>>
mildly shaken that you've descended this far,
<</if>>
post-nut clarity leaving you mildly disturbed instead of calm.<br>
<br>
<<printThought "What have I become? And why is it that I can't even seem to care that <<=setup.getNpcName('npc_work_doctor','formal')>> would violate my privacy like that?">>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
disgusted with yourself... even as you can't help continuing to fantasise,
<<else>>
utterly disgusted with yourself,
<</if>>
post-nut "clarity" instead leaving you in despair.<br>
<br>
<<printThought "What have I become? And what does it mean that I'm still at this deranged company?">>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
</div>/*#
#desc: close aphrodisiac video
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.horny = 10>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
You smash the close window button, shock turning to fear and revulsion at the fact that <<=setup.getNpcName("npc_work_doctor","formal")>> uploaded videos of you online...<br>
<br>
<<printThought "And there's nothing I can do about it...">><br>
<br>
Your arousal all but dissipated, you shake your head and turn away from the computer.<br>
<br>
[<<moveTo "room_livingroom" "Pack up and do something else.">>]
</div>/*#
#desc: online university root
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Online University">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.room_online_university_start_firsttime = !setup.hasThreshold('smart', 'online_university', 'beginner') &&
!setup.hasThreshold('smart', 'online_university', 'intermediate') &&
!setup.hasThreshold('smart', 'online_university', 'advanced') &&
!setup.hasThreshold('smart', 'online_university', 'expert')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.room_online_university_start_firsttime>>
This is your first time visiting the online University Homepage. Everything a real university has, including some pricey fees, all a mere mouseclick away. Skimming through their range of courses, you're astounded by the versatility of this page. Coding, Cooking, Theology, Psychology, Bio Engineering and Cybernetics, just to name a few. You're searching for something that might help you with your current job and make a find with the "Company Management Course." <br>
<br>
<<printThought "Hmm... looks like the Level 0 Course is free of charge. Nice.">><br>
<br>
You create a user account and log in.<br>
<br>
<</if>>
You're greeted by a synthesized voice: "@@.computer;Welcome<<if !$scene.room_online_university_start_firsttime>> back<</if>>, <<=$player.call>> <<=$player.last_name>>, to the simulated halls of the Online University. Knowledge awaits. Each course is a Unit of 60 Minutes with a virtual Professor or industry subject-matter expert depending on the course. A VR Unit would maximize the efficiency of instruction, but is not needed for low level Courses. Please select your course.@@"<br>
<br>
[<<moveTo "room_online_university_course_smart_1" "Company Management." 60>>]<br>
<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: online university "smart" root
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Online University">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.onlineUniversity_smartLevel = 0>>
<<set $scene.onlineUniversityCoursesAvailable = 0>>
<<if setup.getTotalValue('smart') >= 10 || setup.hasThreshold("smart","online_university", "expert")>>
<<set $scene.onlineUniversityCoursesAvailable = 3>>
<<elseif setup.getTotalValue('smart')>=8 || setup.hasThreshold("smart","online_university", "advanced")>>
<<set $scene.onlineUniversityCoursesAvailable = 2>>
<<elseif setup.getTotalValue('smart')>=6 || setup.hasThreshold("smart","online_university", "intermediate")>>
<<set $scene.onlineUniversityCoursesAvailable = 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/online_learning.mp4">>
<div id="invframe" class="scrolltext">
<<switch $scene.onlineUniversity_smartLevel>>
<<case 0>>
"@@.computer;Welcome to Company Management 1-0-1. You are currently at Level <<=$scene.onlineUniversityCoursesAvailable>>. Your options are the following:@@"<br>
<br>
Level 0: (free of charge): <br>
This course will be free of charge and covers basic knowledge and business English.<br>
<br>
<<if $scene.onlineUniversityCoursesAvailable>=1>>
Level 1: (25 Credits/hour): <br>
This course focuses its studies on a wide range of business, economics, law and management subjects in the ever changing landscape of middle management.<br>
<br>
<</if>>
<<if $scene.onlineUniversityCoursesAvailable>=2>>
Level 2: (75 Credits/hour): <br>
From here on the in depth studies of how to work efficiently using different tools to tie the law into knots for your own benefit will be discussed. Theoretically of course. R&D University would never recommend to bend a law to your will.<br>
<br>
<</if>>
<<if $scene.onlineUniversityCoursesAvailable>=3>>
Level 3: (200 Credits/hour): <br>
And if you thought the last course was morally questionable, oh boi, you're in for a ride.<br>
<br>
<</if>>
<<if $player.timebased.fatigue<($player.timebased.fatiguemax/2) && $player.timebased.stress < 80>>
[<<moveTo "room_online_university_course_smart_2" "Beginner course (free, 1 hour)" 3600 "<<set $scene.onlineUniversity_smartLevel=0>>">>]<br>
<<if $scene.onlineUniversityCoursesAvailable>=1>>
<<if $player.money.total >= 25>>
[<<moveTo "room_online_university_course_smart_2" "Advanced Course (25 Credits, 1 hour)" 3600 "<<set $scene.onlineUniversity_smartLevel=1>>">>]<br>
<<else>>
[@@.link_locked;You do not have the 25 credits to take the Advanced Course.@@]<br>
<</if>>
<</if>>
<<if $scene.onlineUniversityCoursesAvailable>=2>>
<<if $player.money.total >= 75>>
[<<moveTo "room_online_university_course_smart_2" "Professional Course (75 Credits, 1 hour)" 3600 "<<set $scene.onlineUniversity_smartLevel=2>>">>]<br>
<<else>>
[@@.link_locked;You do not have the 75 credits to take the Professional Course.@@]<br>
<</if>>
<</if>>
<<if $scene.onlineUniversityCoursesAvailable>=3>>
<<if $player.money.total >= 200>>
[<<moveTo "room_online_university_course_smart_2" "Quantum Course (200 Credits, 1 hour)" 3600 "<<set $scene.onlineUniversity_smartLevel=3>>">>]<br>
<<else>>
[@@.link_locked;You do not have the 200 credits to take the Quantum Course.@@]<br>
<</if>>
<</if>>
<<elseif $player.timebased.fatigue>=($player.timebased.fatiguemax/2) && $player.timebased.stress >= 80>>
[@@.link_locked;You're too stressed and exhausted to learn anything at the moment.@@]
<<elseif $player.timebased.stress >= 80>>
[@@.link_locked;You're too stressed to focus on learning anything at the moment.@@]
<<else>>
[@@.link_locked;You're too worn out to learn anything right now.@@]
<</if>>
<</switch>>
<br><br>
[<<moveTo "room_online_university_start" "Return to the Online University Start page." 0>>]<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: pop-up to choose time to spend at an activity
#status: FINISHED 0.4.0.0
#*/
<<=$scene.dTime.text>><br>
<center>
<<button "-">>
<<set $scene.dTime.startTime = setup.changeTimeValue($scene.dTime.startTime,-$scene.dTime.changeTime,$scene.dTime.minTime,$scene.dTime.maxTime)>>
<<set _tmp = setup.changeDialogValue($scene.dTime.startTime,"#dialogTime")>>
<</button>>
<span id="dialogTime"><<=$scene.dTime.startTime>></span>
<<button "+">>
<<set $scene.dTime.startTime = setup.changeTimeValue($scene.dTime.startTime,$scene.dTime.changeTime,$scene.dTime.minTime,$scene.dTime.maxTime)>>
<<set _tmp = setup.changeDialogValue($scene.dTime.startTime,"#dialogTime")>>
<</button>>
</center>
<br>
@@.textRightSide;
<<button "Cancel">>
<<script>>
Dialog.close();
<</script>>
<</button>>
<<button "Okay">>
<<set _tmpTime = $scene.dTime.startTime*$scene.dTime.timeMulti>>
<<moveToDialog $scene.dTime.followup _tmpTime>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: take online university "smart" class
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Online University">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.onlineUniversity_smartLevel>>
<<case 0>>
<<applyExperience 'smart' 6 'skip' $ALONE>>
<<set _stress = Math.max(0,setup.calcStressStudy(setup.getTotalValue('smart'),6))>>
<<applyStress _stress>>
<<setThreshold 'smart' 'online_university' 'beginner'>>
<<case 1>>
<<setThreshold 'smart' 'online_university' 'intermediate'>>
<<applyExperience 'smart' 8 'skip' $ALONE>>
<<set _stress = Math.max(0,setup.calcStressStudy(setup.getTotalValue('smart'),8))>>
<<applyStress _stress>>
<<addCredits -25>>
<<case 2>>
<<setThreshold 'smart' 'online_university' 'advanced'>>
<<applyExperience 'smart' 10 'skip' $ALONE>>
<<set _stress = Math.max(0,setup.calcStressStudy(setup.getTotalValue('smart'),10))>>
<<applyStress _stress>>
<<addCredits -75>>
<<case 3>>
<<setThreshold 'smart' 'online_university' 'expert'>>
<<applyExperience 'smart' 12 'skip' $ALONE>>
<<set _stress = Math.max(0,setup.calcStressStudy(setup.getTotalValue('smart'),12))>>
<<applyStress _stress>>
<<addCredits -200>>
<</switch>>
<</if>>
/%<<include playerMenuLocked>%/
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/online_learning.mp4">>
<div id="invframe" class="scrolltext">
<<switch $scene.onlineUniversity_smartLevel>>
<<case 0>>
This lesson focuses on general economics, business English and how to read contracts. Your general understanding of the subject matter rises.
<<case 1>>
This lesson focuses its studies on a wide range of business, economics, legal and management subjects in the ever changing landscape of middle management. Your general understanding of the subject matter rises significantly.
<<case 2>>
This lesson digs deeper on advanced business topics. Your general understanding of the subject matter rises significantly.
<<case 3>>
This lesson is very complicated, focusing on contract law, project planning, advanced statistical techniques and other things you would need to master to succeed at the highest levels of corporate advancement.<br>
<br>
Interestingly your company — Social Interaction Service Syndicate Inc., is mentioned specifically by name, with the work of its current CEO, <<=setup.getNpcName("npc_boss","formal")>> described in glowing terms in a detailed "case study" meant as an example of the power of aggressive and decisive corporate leadership.
<</switch>>
<br><br>
[<<moveTo "room_online_university_course_smart_1" "Return to the course page." 0>>]<br>
[<<moveTo "room_online_university_start" "Return to the Online University Start page." 0>>]<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: search for online makeup tutorial
#status: FINISHED 0.4.0.0
#ignore_spell: hd
#*/
<<set $player.location to "Youtube">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.room_online_makeup_tutorial_start_firsttime = false>>
<<if !setup.hasThreshold('makeup', 'online_makeup', 'beginner_tutorial')>>
<<set $scene.room_online_makeup_tutorial_start_firsttime = true>>
<<setThreshold 'makeup' 'online_makeup' 'beginner_tutorial'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01_makeup.png">>
<div id="invframe" class="scrolltext">
<<if $scene.room_online_makeup_tutorial_start_firsttime>>
You start to search the internet for makeup tutorials. It does not take you very long to find a ton of them on Youtube. Ranging from beginner to advanced techniques. Perhaps even more significant is that many are intended to aid in transforming masculine features into more feminine appearance. Looks like there are a lot of people interested in things like this, according to the video hit numbers. These tutorials seem easy enough for you. You need a handful of makeup articles and a makeup mirror or a good HD Webcam. Working with a mirror would be preferred, since they illuminate your face up in the right way without grilling your eyes.<br>
<br>
<<if setup.checkItemInInventory('makeup_mirror')>>
<<printThought "Should be easy enough with this makeup mirror.">>
<<elseif setup.hasUpgrade($computer, 'webcam')>>
<<printThought "Lucky! I just recently installed a really good Webcam.">>
<<elseif setup.checkItemInInventory('webcam')>>
<<printThought "I bought this Webcam, but it's useless until I install it!">>
<<else>>
<<printThought "I need to figure out a way to see myself...">>
<</if>>
<<else>>
You search your links for a makeup tutorial fitting your current level.
<<if !(setup.checkItemInInventory('makeup_basic')||setup.checkItemInInventory('makeup_advanced')||setup.checkItemInInventory('makeup_expert'))>>
<br><br>
You need some makeup material to work with.<br>
<br>
<<printThought "Hmm, didn't <<=setup.getNpcName('npc_exgirlfriend', 'first')>> leave some stuff behind when she moved out?">>
<</if>>
<<if !setup.checkItemInInventory('makeup_mirror') && !setup.hasUpgrade($computer, 'webcam')>>
You need some way to see what you're doing, an HD webcam or, preferably, a makeup mirror.
<<if !setup.hasUpgrade($computer, 'webcam') && setup.checkItemInInventory('webcam')>>
<br><br>
<<printThought "I bought this nice Webcam, but it's useless until I install it!">>
<</if>>
<</if>>
<</if>>
<br><br>
<<if (setup.checkItemInInventory('makeup_basic') || setup.checkItemInInventory('makeup_advanced') || setup.checkItemInInventory('makeup_expert')) && (setup.hasUpgrade($computer, 'webcam') || setup.checkItemInInventory('makeup_mirror'))>>
<<if $player.timebased.fatigue<($player.timebased.fatiguemax/2)>>
[<<moveTo "room_online_makeup_tutorial_course_1" "Basic makeup tutorial (1 hour)" 3600>>]<br>
<<if setup.getTotalValue('makeup')<2>>
[@@.link_locked;I don't feel quite ready for the next tutorial... maybe after I have more practice!@@]<br>
<<elseif !$player.makeup.unlocked.nomakeupmakeup>>
[@@.link_locked;I should probably start with the basics.@@]<br>
<<elseif setup.getTotalValue('makeup')>=2>>
[<<moveTo 'room_online_makeup_tutorial_course_2' 'Do the "Normal Makeup" tutorial (1 hour)' 3600>>]<br>
<</if>>
<<if setup.getTotalValue('makeup')<5>>
[@@.link_locked;I don't feel quite ready for the next tutorial... maybe after I have more practice!@@]<br>
<<elseif setup.getTotalValue('makeup')>=5>>
<<if $player.makeup.unlocked.normalmakeup && $player.makeup.unlocked.nomakeupmakeup>>
[<<moveTo 'room_online_makeup_tutorial_course_3' 'Do the "Advanced Makeup" tutorial (1 hour)' 3600>>]<br>
<<else>>
[@@.link_locked;Probably best to work through tutorials in order.@@]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_technician_cosplay_makeup_1")>>
[<<moveTo 'room_online_makeup_tutorial_cosplay' 'Watch some cosplay makeup tutorials (1 hour)' 3600>>]<br>
<</if>>
<<else>>
[@@.link_locked;You're too tired to do any tutorials@@]<br>
<</if>>
<<else>>
[@@.link_locked;You're unable to practice the tutorials right now, since you're missing some things.@@] <<hint $options "To do makeup you need a way to see your reflection or the like, plus a makeup kit... didn't <<=setup.getNpcName('npc_exgirlfriend', 'first')>> leave something like that behind somewhere when she moved out?">> <br>
<</if>>
<br><br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: watch basic online makeup tutorial
#status: FINISHED 0.4.0.0
#ignore_spell: squareness
#*/
<<set $player.location to "Youtube">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.way = ''>>
<<if setup.checkItemInInventory('makeup_mirror')>>
<<applyExperience 'makeup' 2 'normal' $INCOGNITO>>
<<set $scene.way = 'mirror'>>
<<elseif setup.hasUpgrade($computer, 'webcam')>>
<<applyExperience 'makeup' 2 'little' $INCOGNITO>>
<<set $scene.way = 'webcam'>>
<</if>>
<<unlockMakeup 'nomakeupmakeup'>>
<<set $player.makeup.template = 'nomakeupmakeup'>>
<<set $player.makeup.messed = 0>>
<<updateBonusStats>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01_makeup.png">>
<div id="invframe" class="scrolltext">
This tutorial starts with the basics of makeup,
<<if setup.getTotalValue('makeup')<=1>>
which is great since you're totally new to this.
<<else>>
which is a good way to hone your below average makeup skills.
<</if>>
It focuses on 3 things. Upping your eyebrow skills, upping your eyeliner skills and the most basic contouring. You learn that your eyebrows alone can pretty much decide between a feminine or masculine facial structure. There are about a million different ways to do your eyebrows, but they all got one basic thing in common: no girl walks around with bushy eyebrows, at least according to the girl in the tutorial. Shave it, pluck it, shape it, just bring it under control. The second thing she goes into detail is eyeliner. According to her, eyeliner changes your facial appearance more than any other makeup application. Lastly, she talks about contouring, since male and female faces normally differ a lot in structure. Luckily for you, your face does have a feminine touch, so that's something you can work with. The general gist is to get rid of your "squareness" by applying makeup to make your features more round, triangular and feminine. The easiest way to do this is to work on your jawline and your nose with different makeup colours.
<<switch $scene.way>>
<<case 'webcam'>>
Using a webcam as a mirror is a less-than-perfect solution, but it works.<br>
<br>
<<printThought "Maybe I should get myself makeup mirror. The slight lag is bugging me.">><br>
<br>
<<case 'mirror'>>
You put your portable makeup mirror next to your computer and try to replicate the techniques shown in the video with varying results.<br>
<br>
<<printThought "Is... is that really me? I can look like this?">><br>
<br>
<</switch>>
Thanks to the tutorials step by step nature, you manage to pull off what is shown in the video; the infamous "no makeup" makeup.<br>
<br>
<<if setup.getTotalValue('feminization')>3>>
<<printThought "I don't think anyone is going to notice this one. Maybe I can go outside with this. And it kinda shaves 5 years away from my face. Nice.">><br>
<br>
<<else>>
<<printThought "I don't think anyone would notice this, though I still don't think I want to go outside with makeup on.">><br>
<br>
<</if>>
[<<moveTo "room_online_makeup_tutorial_start" "Return to the makeup tutorials." 0>>]<br>
<br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: watch intermediate online makeup tutorial
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Youtube">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.way = ''>>
<<if setup.checkItemInInventory('makeup_mirror')>>
<<applyExperience 'makeup' 6 'normal' $INCOGNITO>>
<<set $scene.way = 'mirror'>>
<<elseif setup.hasUpgrade($computer, 'webcam')>>
<<applyExperience 'makeup' 6 'little' $INCOGNITO>>
<<set $scene.way = 'webcam'>>
<</if>>
<<unlockMakeup 'normalmakeup'>>
<<set $player.makeup.template = 'normalmakeup'>>
<<set $player.makeup.messed = 0>>
<<updateBonusStats>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01_makeup.png">>
<div id="invframe" class="scrolltext">
This tutorial assumes that you have certain knowledge about makeup. You go slowly through this tutorial, trying to follow everything step by step. Applying the skills you already learned you manage to do this without any problems and learn the make up template "normal makeup." <br>
<br>
<<switch $scene.way>>
<<case 'webcam'>>
Using a webcam as a mirror is a less-than-perfect solution, but it works.<br>
<br>
<<printThought "The lag is still very distracting. But the result is nothing to sneeze at!">><br>
<br>
<<case 'mirror'>>
You put your portable makeup mirror next to your computer and try to replicate the techniques shown in the video with varying results.<br>
<br>
<<printThought "Wow...Is... is that really me? I can look like this?">><br>
<br>
<</switch>>
[<<moveTo "room_online_makeup_tutorial_start" "Return to the makeup tutorials." 0>>]<br>
<br><br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: watch advanced online makeup tutorial
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Youtube">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.way = ''>>
<<if setup.checkItemInInventory('makeup_mirror')>>
<<applyExperience 'makeup' 8 'very' $INCOGNITO>>
<<set $scene.way = 'mirror'>>
<<elseif setup.hasUpgrade($computer, 'webcam')>>
<<applyExperience 'makeup' 8 'normal' $INCOGNITO>>
<<set $scene.way = 'webcam'>>
<</if>>
<<unlockMakeup 'camgirl'>>
<<unlockMakeup 'egirl'>>
<<unlockMakeup 'qtpie'>>
<<set $player.makeup.template = 'camgirl'>>
<<set $player.makeup.messed = 0>>
<<updateBonusStats>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01_makeup.png">>
<div id="invframe" class="scrolltext">
This tutorial is done by a makeup artists and has a heavy focus on being heavy. You learn to apply makeup and foundation to the whole face, without looking like an evil clown (unless that's what you're going for, more power to you ancient one!). Thanks to your advanced knowledge you can follow most steps without any problems and are pretty certain you could replicate the brazen effect. If that was what you wanted.<br>
<br>
<<switch $scene.way>>
<<case 'webcam'>>
Using a webcam as a mirror is a less-than-perfect solution, but it works.<br>
<br>
<<printThought "The lag is still very distracting. But the result is nothing to sneeze at!">><br>
<br>
<<case 'mirror'>>
You put your portable makeup mirror next to your computer and try to replicate the techniques shown in the video with varying results.<br>
<br>
<<printThought "Wow...Is... is that really me? I can look like this?">><br>
<br>
<</switch>>
[<<moveTo "room_online_makeup_tutorial_start" "Return to the makeup tutorials." 0>>]<br>
<br><br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
</div>/*#
#desc: watch cosplay makeup tutorial
#status: RELEASED 0.8.7.0
#*/
<<set $player.location to "Youtube">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'makeup' 'online_makeup' 'cosplay'>>
<<applyExperience 'makeup' 18 'terrible' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01_makeup.png">>
<div id="invframe" class="scrolltext">
You spend some time watching cosplay makeup tutorials. <<=setup.getNpcName("npc_technician","first")>> wasn't kidding that it's a whole other thing from your day to day, even down to the required supplies!<br>
<br>
Fortunately the channel has a promotional tie-in and a drone delivery later and you're practicing with skin tape and some exotic palettes as you go through various techniques for reshaping your appearance from the simple to the inhuman, diligently focused on mastering this new style and degree of artistry...<br>
<br>
[<<moveTo "room_online_makeup_tutorial_start" "Return to the makeup tutorials." 0>>]<br>
<br><br>
[<<moveTo "room_computer" "Close your browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: links for rooms in your flat
#status: FINISHED 0.5.0.0
#ignore_spell: [bathroom],[bedroom],[foyer],[living,room],[kitchen]
#*/
<div style="text-align: center;"><span align="center">
<<if $player.location == "Bathroom">>
[Bathroom]
<<else>>
[<<moveTo "room_bathroom" "Bathroom" 20>>]
<</if>>
<<if $player.location == "Bedroom">>
[Bedroom]
<<else>>
[<<moveTo "room_bedroom" "Bedroom" 20>>]
<</if>>
<<if $player.location == "Foyer">>
[Foyer]
<<else>>
[<<moveTo "room_foyer" "Foyer" 20>>]
<</if>>
<<if $player.location == "Living Room">>
[Living Room]
<<else>>
[<<moveTo "room_livingroom" "Living Room" 20>>]
<</if>>
<<if $player.location == "Kitchen">>
[Kitchen]
<<else>>
[<<moveTo "room_kitchen" "Kitchen" 20>>]
<</if>>
</span></div>/*#
#desc: flat bathroom
#status: FINISHED 0.4.0.0
#*/
<<set $player.location to "Bathroom">>
<<set $player.inside = true>>
<<set _bathroom_string = "Take a shower.">>
<<set _itemDirty = setup.checkItemDirty()>>
<<set _sextoyDirty = setup.checkSexToyDirty()>>
<<if _itemDirty && !_sextoyDirty>>
<<set _bathroom_string = "Take a shower while you put your clothes into the washer.">>
<<elseif !_itemDirty && _sextoyDirty>>
<<set _bathroom_string = "Clean your sextoys and take a shower afterwards.">>
<<elseif _itemDirty && _sextoyDirty>>
<<set _bathroom_string = "Clean your sextoys and take a shower while you put your clothes into the washer.">>
<</if>>
<<if $scene && $scene.hasOwnProperty('makeupStartTime')>>
<<set $scene.makeupStartTime = 0>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<movePets>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_dog.stage && $npc_dog.location == "room_bathroom">>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_dog")>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_bathroom">>
<<createAdvBGR "./images/locations/flat_bathroom_01.png" setup.charImage("npc_cat","npc_cat_2")>>
<<else>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_bathroom" && !$daily.catEvent && !$scene.catEvent && setup.hasFreeTime($now, $player, 1800)>>
<<if $npc_cat.stage == 1>>
You walk into the bathroom just as <<=setup.getNpcName("npc_cat","first")>> hops up onto the counter and starts shoving things off.<br>
<br>
<<printThought "Hmm, looks like she wants some attention...">><br>
<br>
[<<moveTo "event_cat_bathroom_basic" "Kitty time!" 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_cat_bathroom_basic" "Shoo her out of the bathroom, you don't have time for this." 60 "<<set $scene.accept=false>><<set $scene.catEvent = true>><<set $daily.catEvent = true>>">>]
<<else>>
From a perch high atop the medicine cabinet <<=setup.getNpcName("npc_cat","first")>> supervises your actions. Her expression is somewhat inscrutable, but then she appears to nod and you take it as her approving of what you're doing and it makes you smile.<br>
<br>
[<<moveTo "room_bathroom" "Continue." 30 "<<set $scene.catEvent=true>>">>]
<</if>>
<<else>>
<<include flatLinks>><br>
You enter your bathroom. <<if $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_bathroom">><<=setup.getNpcName("npc_cat","first")>> is napping atop the medicine cabinet. Best not to disturb her.<</if>><<if $npc_dog.stage && $npc_dog.location == "room_bathroom">> <<=setup.getNpcName("npc_dog","first")>> is drinking out of the toilet.<</if>><br>
<br>
<<if _itemDirty>0>>
<<if _itemDirty<3>>
As you take a short sniff at your clothes. Smells like some are in dire need of washing.
<<else>>
As you take a short sniff at your clothes. Woah, it is just about time you do a thorough laundry.
<</if>>
<</if>>
<<if ($player.timebased.dirty < 25)>>
<<if $player.timebased.stress > 25>>
<<if _itemDirty>0>>
And while
<<else>>
While
<</if>>
you still feel clean though a shower might help you relax.
<<else>>
You feel quite clean.
<</if>>
<<elseif ($player.timebased.dirty < 75)>>
<<if _itemDirty>0>>
And it looks
<<else>>
Looks
<</if>>
like you should take a shower, since you're really starting to smell.
<<else>>
<<if _itemDirty>0>>
And it looks
<<else>>
Looks
<</if>>
like you are in desperate need of a thorough cleaning as well.
<</if>>
<<if setup.checkSexToyDirty()>>
Looks like your sextoys
<<if _itemDirty > 0 || $player.timebased.dirty >= 25>>
also
<</if>>
need some washing off.
<</if>>
<br><br>
<<if setup.hasUpgrade($bathroom, 'dildo')>>
The dildo mounted in your shower taunts you with promises of being "clean" inside and out.<br>
<br>
<</if>>
<<if $fetish.hair_growth && !$player.sec_style.body.hair_face>>
<<if $player.body.facialhair >= 1>>
<<switch Math.floor($player.body.facialhair)>>
<<case 1>>
You are sporting a bit of stubble.
<<case 2 3 4>>
You are looking positively scruffy.
<<case 5>>
Your beard is really coming in...
<<default>>
ERROR: unexpected player.body.facial_hair <<=$player.body.facialhair>>
<</switch>>
<br><br>
[<<moveTo "room_bathroom_shave" "Shave your face." 300>>]<br>
<<else>>
[@@.link_locked;You have no need to shave at this time.@@]<br>
<</if>>
<<elseif $fetish.hair_growth && !$player.sec_style.body.hair_body>>
<<if State.hasPlayed("event_secretary_style_bodyhair_shave_1")>>
<<if $player.body.bodyhair >= 1>>
<<switch Math.floor($player.body.bodyhair)>>
<<case 1>>
You have the slightest amount of thin body hair.
<<case 2 3 4>>
Your body hair is definitely becoming noticeable.
<<case 5>>
You look pretty short for a wookie...
<<default>>
ERROR: unexpected player.body.body hair <<=$player.body.bodyhair>>
<</switch>>
<br><br>
[<<moveTo "event_secretary_style_bodyhair_shave_1" "Shave your body." 300>>]<br>
<<else>>
[@@.link_locked;You have no need to shave at this time.@@]<br>
<</if>>
<<else>>
You start to toss your old razor since you don't have any use for it anymore... only to notice that <<=setup.getNpcName("npc_exgirlfriend","first")>> left behind her body razor...<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_shave_1" "Shave your body." 300>>]<br>
<</if>>
<</if>>
<<set _shoes = setup.getItemFromType("shoes")>>
<<if setup.checkItemTypeWorn("shoes") && setup.checkItemTypeTag('shoes', ['bedheels']) && $inventory[_shoes].status.lock>>
[@@.link_locked;A shower would not be good for your bed heels, and they're locked on.@@]<br>
<<else>>
[<<moveTo "room_bathroom_shower" _bathroom_string>>]<br>
<</if>>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Bathroom">><<set $scene.return_makeuproom="room_bathroom">><<set $scene.makeuproom_image="./images/locations/flat_bathroom_01.png">><<set $scene.return_makeuproomtext="Return to the Bathroom.">>'>>]<br>
<</if>>
<br>
<<include thoughts_home>>
<</if>>
</div>/*#
#desc: flat living room
#status: FINISHED 0.4.0.0
#ignore_spell: hdtv,16k
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<movePets>>
<<if !setup.hasEmail("mail_camgirl_voluntary_h") && setup.hasUpgrade($computer, 'webcam') && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo")) && !$player.sec_style.sex.camgirl>>
<<addEmail $computer
"Camgirl Promotional Offers!"
'<<=$player.first_name>> <<=$player.last_name>>'
false
false
$now
'mail_camgirl_voluntary_h'
'mail_camgirl_voluntary_t'>>
<</if>>
<<set $scene.emailCount = setup.getUnreadEmailCount($computer)>>
<<if $npc_dog.stage && $npc_dog.location == "room_livingroom" && !$daily.dogEvent && !$scene.dogEvent && $npc_dog.flags.stage1.kitchen && setup.hasFreeTime($now, $player, 1800)>>
<<set $scene.livingRoomEvent = random(1,4) == 4>>
<<if $npc_dog.stage > 1 && $scene.livingRoomEvent>>
<<set _stress = -setup.getTotalValue("submission")>>
<<applyStress _stress>>
<<set $daily.dogEvent = true>>
<<elseif $npc_dog.stage >= 3>>
<<set $scene.livingRoomEvent = $scene.livingRoomEvent && random(1,10) == 1>>
<</if>>
<</if>>
<</if>>
<<set $scene.urge_to_clean = false>>
<<set $scene.need_to_clean = false>>
<<set $scene.wearingMaid = setup.checkVisibleClothingTag('maid') > 60>>
<<if setup.getTotalValue("feminization") >= 15>>
<<set $scene.cleaningstressmulti = -2>>
<<elseif setup.getTotalValue("feminization") >= 10>>
<<set $scene.cleaningstressmulti = -.5>>
<<else>>
<<set $scene.cleaningstressmulti = -.25>>
<</if>>
<<if $scene.wearingMaid>>
<<set $scene.cleaningstressmulti -= 1>>
<</if>>
<<if $scene.wearingMaid && $scene.need_to_clean>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm a maid, I need to clean!">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_dog.stage && $npc_dog.location == "room_livingroom">>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_livingroom">>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_cat","npc_cat_1")>>
<<else>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.need_to_clean && $scene.wearingMaid>>
<<printThought "I am a maid! I can't leave without cleaning this place up!">><br>
<br>
<<else>>
<<include flatLinks>><br>
<</if>>
<<if $currentTasks.hasOwnProperty('event_interview') && !$currentTasks.event_interview.finished && $player.flags.resume.base <= 0>>
<<printThought "I should probably work on my resume before Monday...">><br>
<br>
[<<moveTo "event_job_interview_resume_1" "Sit down at your computer and put together a resume." 60>>]
<<elseif $npc_dog.stage && $npc_dog.location == "room_livingroom" && !$daily.dogEvent && !$scene.dogEvent && $scene.livingRoomEvent>>
<<if $npc_dog.stage == 1>>
You're passing through the living room when you spot <<=setup.getNpcName("npc_dog","first")>>.
<<if $fetish.piss>>
Looking you right in the eye he starts pissing on a tile section of the floor.<br>
<br>
Time seems to stop as he continues to stare at you, steam rising off the small, fresh puddle of his fragrant urine...<br>
<br>
[<<moveTo "event_dog_livingroom" "Lick it up..." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_dog_livingroom" "Scold him, bad dog!" 600 "<<set $scene.accept=false>>">>]
<<else>>
With a friendly smile he wanders over for some quick pets before curling up next to the couch.<br>
<br>
[<<moveTo "room_livingroom" "Back to the living room." 60 "<<set $scene.dogEvent=true>>">>]
<</if>>
<<else>>
<<=setup.getNpcName("npc_dog","first")>> wanders through the living room, head held high, ears peaked as if he was surveying his territory, which, really, he kind of is.<br>
<br>
Seeing your alpha, and knowing he is watching over things, makes you feel better.<br>
<br>
[<<moveTo "room_livingroom" "Back to the living room." 60 "<<set $scene.dogEvent=true>>">>]
<</if>>
<<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_livingroom" && !$daily.catEvent && !$scene.catEvent && setup.hasFreeTime($now, $player, 1800)>>
<<if $npc_cat.stage == 1>>
<<=setup.getNpcName("npc_cat","first")>> is perched on the couch, paying little attention as you walk into the living room...<br>
<br>
[<<moveTo "event_cat_livingroom_basic" "Kitty time!" 600>>]<br>
[<<moveTo "room_livingroom" "You have other things to do." 60 "<<set $scene.catEvent=true>><<set $daily.catEvent = true>>">>]
<<else>>
Barely have you entered the living room when <<=setup.getNpcName("npc_cat","first")>> slinks past your legs and hops up onto the couch and "@@.npc_cat;Meows@@" for you to join her.<br>
<br>
<<if setup.checkItemInInventory("smartphone")>>
You recall that your phone has a laser pointer function...<br>
<br>
<</if>>
[<<moveTo "event_cat_livingroom_laser" "Time to hunt the red dot!" 600>>]<br>
[<<moveTo "event_cat_livingroom_adv" "Kitty time!" 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_cat_livingroom_adv" "You have other things to do." 60 "<<set $scene.accept=false>><<set $scene.catEvent=true>><<set $daily.catEvent = true>>">>]
<</if>>
<<else>>
Your living room is quite spacious. It contains a large and comfortable couch and two armchairs. On the wall across from the couch is your relatively new 16k Super Ultra-MAX HDTV and a collection of current console systems, like the new Nintendolls VR System or the Pony Game station VI. There is a quite large bookshelf on the far side of the room, containing your favourite books, mangas, comics, games, movies and series. <<if $npc_manager.stage < 3>>There are several large gaps since <<=setup.getNpcName('npc_exgirlfriend', 'first')>> took her books when she left. <</if>>Next to the book shelf is a small computer table with a desktop workstation on it, a quite well equipped gaming system you put together yourself. <<if $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_livingroom">> <<=setup.getNpcName("npc_cat","first")>> is sleeping on the couch, best not to disturb her. <<elseif $fetish.cat && $npc_cat.stage && $npc_cat.location == "room_computer">> <<=setup.getNpcName("npc_cat","first")>> is lounging on top of the computer. <</if>><<if $npc_dog.stage && $npc_dog.location == "room_livingroom">> <<=setup.getNpcName("npc_dog","first")>> is staring out the window.<<elseif $npc_dog.stage && $npc_dog.location == "room_computer">> <<=setup.getNpcName("npc_dog","first")>> is resting under your computer chair.<</if>> And then there's <<=setup.getNpcName('npc_chuck', 'suffix')>>,
<<if $npc_chuck.timebased.water<5>>
who hasn't been watered since the dawn of time.
<<elseif $npc_chuck.timebased.water<50>>
who looks like <<he npc_chuck>> needs to be watered again.
<<else>>
who looks pretty happy for a plant.
<</if>>
<br><br>
<<if $player.flat.dirty == 0>>
Your flat is in a state of immaculate cleanliness. <<if $scene.wearingMaid>>You are filled with maidenly pride at how well-kept your living space is.<</if>>
<<elseif $player.flat.dirty < 3>>
<<if $scene.wearingMaid>>
<<if setup.getTotalValue("feminization") >= 15>>
<<set $scene.urge_to_clean = true>>
Though your flat is quite clean, it isn't perfect, and your current outfit gives you the urge to rectify that.
<<else>>
Though you are dressed to clean you don't feel like there's really enough to bother with doing.
<</if>>
<<elseif setup.getTotalValue("feminization") >= 15 >>
Though your flat is quite clean, it isn't perfect, but you aren't really dressed to do anything about it.
<<else>>
Your flat is looking quite clean.
<</if>>
<<elseif $player.flat.dirty < 7>>
<<if $scene.wearingMaid>>
<<if setup.getTotalValue("feminization") >= 15>>
<<set $scene.urge_to_clean = true>>
Dressed as you are, looking around your flat fills you with the urge to give it a good cleaning.
<<else>>
<<set $scene.need_to_clean = true>>
Dressed as you are, spending a bit of time cleaning up the relatively minor messes in your apartment sounds like a great idea.
<</if>>
<<elseif setup.getTotalValue("feminization") >= 15>>
You feel like you ought to do a bit of cleaning, but without the proper clothes you can't quite get in the mood.
<<elseif setup.getTotalValue("feminization") >= 10>>
Your flat is looking a bit dusty, but not enough to really bother with living alone.
<<else>>
Your flat is a bit dusty and cluttered, but not enough to really bother a bachelor.
<</if>>
<<elseif $player.flat.dirty < 14>>
<<if $scene.wearingMaid>>
<<set $scene.need_to_clean = true>>
<<set $scene.urge_to_clean = true>>
Your flat is very messy, an affront to your cute outfit that gives you the urge to clean.
<<elseif setup.getTotalValue("feminization") >= 15>>
<<set $scene.need_to_clean = true>>
Your flat is very messy, though you feel like you ought to be wearing a more appropriate outfit you are filled with the urge to clean.
<<elseif setup.getTotalValue("feminization") >= 10>>
<<set $scene.need_to_clean = true>>
Your flat is looking a bit messy. There was a time it wouldn't have bothered you, but for some reason you feel like you should do some straightening up.
<<else>>
Your flat is definitely in need of some tidying up, but with all that's been going on in your life you decide to push it off a bit longer.
<</if>>
<<else>>
<<set $scene.need_to_clean = true>>
<<if $scene.wearingMaid>>
<<set $scene.urge_to_clean = true>>
Your flat is a sty, an affront to your cute outfit that imbues you with an almost irresistible urge to clean.
<<elseif setup.getTotalValue("feminization") >= 15>>
<<set $scene.urge_to_clean = true>>
Even though you aren't really dressed for it you can't stand to look at the mess strewn about your apartment and not do something about it.
<<elseif setup.getTotalValue("feminization") >= 10>>
Your flat is a mess, you really need to do some cleaning!
<<else>>
The time has come, you've procrastinated long enough, but you should really do some cleaning up.
<</if>>
<</if>>
<br><br>
<<if !$scene.urge_to_clean>>
<<if $player.timebased.horny >= 25>>
<<if $player.timebased.fatigue>($player.timebased.fatiguemax/2)>>
[@@.link_locked;You are too worn out to masturbate right now.@@]<br>
<<elseif setup.isItemEquipped("broken_cage")>>
[@@.link_locked;You don't think it would be safe to masturbate with the broken cage still locked onto you.@@]<br>
<<else>>
[<<moveTo "room_masturbate" "Masturbate.">>]<br>
<</if>>
<<else>>
[@@.link_locked;You are not horny enough to masturbate right now.@@]<br>
<</if>>
[<<moveTo "room_computer" "Use your Computer." 30>>]
<<if $scene.emailCount > 0>>
<<=$scene.emailCount>> unread
<<if $scene.emailCount == 1>>email<<else>>emails<</if>>
<</if>>
<br>
<<if $npc_chuck.stage >= 2>>
[<<moveTo "room_chuck_care_1" 'Take care of <<=setup.getNpcName("npc_chuck", "suffix")>>.' 300>>]<br>
<<else>>
[<<moveTo "room_water_chuck" 'Water <<=setup.getNpcName("npc_chuck", "suffix")>>.' 300>>]<br>
<</if>>
<<if $player.timebased.fatigue>($player.timebased.fatiguemax/2)>>
[@@.link_locked;You are too exhausted to play games.@@]<br>
<<else>>
[<<moveTo "room_play_games" "Play some games.">>]<br>
<</if>>
<<if $scene.need_to_clean>>
[<<link "Clean your apartment">>
<<set $player.timebased.stressmulti = $scene.cleaningstressmulti>>
<<set $scene.dTime = {}>>
<<set $scene.dTime.timeMulti = 60>>
<<set $scene.dTime.text = "How long do you wish to spend cleaning?">>
<<set $scene.dTime.startTime = 60>>
<<set $scene.dTime.changeTime = 10>>
<<set $scene.dTime.minTime = 10>>
<<set $scene.dTime.maxTime = 240>>
<<set $scene.dTime.followup = "room_home_cleaning">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]
<<else>>
[@@.link_locked;You don't feel the need to clean your apartment.@@]
<</if>>
<<else>>
[<<link "You need to do some cleaning up before you do anything else at home.">>
<<set $player.timebased.stressmulti = $scene.cleaningstressmulti>>
<<set $scene.dTime = {}>>
<<set $scene.dTime.timeMulti = 60>>
<<set $scene.dTime.text = "How long do you wish to spend cleaning?">>
<<set $scene.dTime.startTime = 60>>
<<set $scene.dTime.changeTime = 10>>
<<set $scene.dTime.minTime = 10>>
<<set $scene.dTime.maxTime = 240>>
<<set $scene.dTime.followup = "room_home_cleaning">>
<<openDialog "Select Time" "dialog_selectTime">>
<</link>>]
<</if>>
<</if>>
</div>/*#
#desc: apartment building
#status: FINISHED 0.7.2.0
#*/
<<set $player.inside = false>>
<<set $player.location to "Apartment Hallway">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<div id="invframe" class="scrolltext">
You stand outside your apartment in the empty hallway leading to the elevator.<br>
<br>
<<if $currentTasks.hasOwnProperty('task_landlord_date_1') && !$currentTasks.task_landlord_date_1.finished && setup.daysToDate($now, setup.getTaskDueDate('task_landlord_date_1')) < 1 && $now.getUTCHours() < setup.getTaskDueDate('task_landlord_date_1').getUTCHours()>>
<<if setup.hoursToDate($now, setup.getTaskDueDate('task_landlord_date_1')) >= 1>>
<<printThought "I have a date tonight with <<=setup.getNpcName('npc_landlord', 'first')>>, but it's a bit early to be bothering <<him npc_landlord>>.">><br>
<br>
<<else>>
<<printThought "I have a date tonight with <<=setup.getNpcName('npc_landlord', 'first')>>...">><br>
<br>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_landlord_date_1') && !$currentTasks.task_landlord_date_1.finished && setup.hoursToDate($now, setup.getTaskDueDate('task_landlord_date_1')) < 1 && $now.getUTCHours() < setup.getTaskDueDate('task_landlord_date_1').getUTCHours()>>
<<set _timeTo = setup.secondsToDate($now,setup.getTaskDueDate('task_landlord_date_1'))+1>>
[<<moveTo "event_visit_landlord" 'Meet <<=setup.getNpcName("npc_landlord", "first")>> for your date.' _timeTo>>]<br>
<<elseif State.hasPlayed("event_landlord_rent_first_2") || State.hasPlayed("room_call_landlord_talk_cleaning")>>
<<if ($now.getUTCDay() == 0 && $now.getUTCHours() < 12)>>
<<if $now.getUTCHours() < 6>>
[@@.link_locked;It's a bit early in the morning to visit <<=setup.getNpcName('npc_landlord', 'first')>>.@@]
<<elseif $npc_landlord.flags.cleaning.last_landlord_clean == undefined || setup.secondsToDate($npc_landlord.flags.cleaning.last_landlord_clean,$now) > 518400>>
[<<moveTo "event_visit_landlord" "See if you can clean your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>'s apartment." 120>>]
<<else>>
[@@.link_locked;I already cleaned <<=ps(setup.getNpcName('npc_landlord', 'first'))>> flat this week.@@]
<</if>>
<<elseif $now.getUTCHours() < 6>>
[@@.link_locked;It's a bit early in the morning to visit <<=setup.getNpcName('npc_landlord', 'first')>>.@@]
<<elseif $now.getUTCHours() >= 22>>
[@@.link_locked;It's a bit late to visit <<=setup.getNpcName('npc_landlord', 'first')>>.@@]
<<else>>
[<<moveTo "event_visit_landlord" "Try and drop in on your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>." 120>>]
<</if>>
<br><br>
<<if $npc_landlord.flags.cleaning.maid_work>>
<<=setup.getNpcName('npc_landlord', 'first')>> said I could spend evenings cleaning apartments for a bit of extra cash.<br>
<br>
<<if $now.getUTCHours() >= 17 && $now.getUTCHours() < 22>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<if setup.getTotalValue("feminization") < 12>>
[@@.link_locked;Glancing at your cute reflection you don't think you can work as a maid in such a girly outfit.@@]<br>
<<else>>
[<<moveTo "event_landlord_maid_work_root" 'Text <<=setup.getNpcName("npc_landlord", "first")>> that you are ready to do some work cleaning apartments.' 60>>]<br>
<</if>>
<<else>>
[<<moveTo "event_landlord_maid_work_root" 'Text <<=setup.getNpcName("npc_landlord", "first")>> that you are ready to do some work cleaning apartments.' 60>>] <<hint $options "Wasn't I supposed to wear a full maid's uniform to clean apartments?">><br>
<</if>>
<<else>>
[@@.link_locked;It is the wrong time of day to clean apartments, <<=setup.getNpcName('npc_landlord', 'first')>> said you could do it during the evening.@@]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "room_foyer" "Go back into your apartment." 20>>]<br>
[<<moveTo "room_citymap" "Head into town." 300>>]
</div>/*#
#desc: clean your flat
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Can't change clothes while I'm busy cleaning...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.wearingMaid>>
<<if setup.getTotalValue("feminization") >= 15>>
<<set $scene.cleaning_min = 0>>
<<else>>
<<set $scene.cleaning_min = 1>>
<</if>>
<<elseif setup.getTotalValue("feminization") >= 15>>
<<set $scene.cleaning_min = 3>>
<<elseif setup.getTotalValue("feminization") >= 10>>
<<set $scene.cleaning_min = 3>>
<<else>>
<<set $scene.cleaning_min = 5>>
<</if>>
<<set $player.flat.dirty = Math.max($scene.cleaning_min, $player.flat.dirty - $scene.dTime.startTime/10)>>
<<set $scene.foundPassword = $player.flat.dirty < 3 && !$npc_exgirlfriend.flags.bondage_machine.know_password && !$npc_exgirlfriend.flags.bondage_machine.unlocked && !setup.checkItemOwned("black_box_password")>>
<<if $scene.foundPassword>>
<<addItem "black_box_password">>
<</if>>
<</if>>
<<resetStressMulti>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Your Flat">>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.wearingMaid>>
Feeling quite adorable in your maid outfit, you do as you're dressed and work on cleaning up your apartment.
<<else>>
You spend some time cleaning your apartment.
<</if>>
<br><br>
<<if $scene.foundPassword>>
In the process of cleaning the flat top to bottom you happen upon an odd scrap of paper.<br>
<br>
You are about to just throw it in the trash, but there is a strange sequence on it — <<= $npc_exgirlfriend.flags.bondage_machine.password>> it looks like it might be a password to something and you decide to hold on to it.<br>
<br>
<</if>>
<<if !$scene.foundPassword && $npc_dog.stage > 0 && random(1,5) == 5>>
You're hard at work cleaning your flat, down on your hands and knees scrubbing a stain off the floor when <<=setup.getNpcName("npc_dog","first")>> walks up to you.<br>
<br>
[<<moveTo "event_dog_cleaning_1" "Roll over submissively for him." 300 "<<set $scene.action='submit'>>">>]<br>
[<<moveTo "event_dog_cleaning_1" "Get up and play with him for a bit." 300 "<<set $scene.action='play'>>">>]<br>
[<<moveTo "event_dog_cleaning_1" "Ignore him and keep cleaning." 300 "<<set $scene.action='clean'>>">>]
<<else>>
<<if $player.flat.dirty == 0>>
By the time you're finished cleaning, your flat is immaculate; all that you own in its place, every surface polished and clean enough to eat off of.
<<elseif $player.flat.dirty < 3>>
You go above and beyond to get your apartment all but perfectly clean<<if $scene.wearingMaid>>, which is about all you feel like doing. After all, it's not like you're some sort of maid who needs to clean every nook and cranny to be immaculate<</if>>.
<<elseif $player.flat.dirty < 7>>
You've managed to clean up most of your apartment. It's not quite a professional job, <<if $scene.wearingMaid>>you aren't a maid, after all, <</if>>but things look decent enough.
<<elseif $player.flat.dirty < 14>>
You have improved things with your cleaning. It's still not great, but it's technically serviceable so long as you don't have anyone else over to see it.
<<else>>
Even after all your work your apartment still looks like a disaster zone, you'll need to do a lot more cleaning to get it back into shape.
<</if>>
<br><br>
<<if $scene.cleaningstressmulti < -2>>
[<<moveTo "room_livingroom" "Wow, that was fun!" 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $scene.cleaningstressmulti < 0>>
[<<moveTo "room_livingroom" "That was surprisingly relaxing." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
[<<moveTo "room_livingroom" "Well, that sucked." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
</div><<set _bondageitems = setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<itemsToWardrobe _bondageitems>>
<<set _bulkyitems = setup.getItemsInInventoryByFilter('tag', ['bulky'])>>
<<itemsToWardrobe _bulkyitems>>
<<set _vritems = setup.getItemsInInventoryByFilter('tag', ['vr_display'])>>
<<itemsToWardrobe _vritems>>/*#
#desc: stow bondage/etc. in your wardrobe
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Wardrobe">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "bulkyToWardrobe">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
You pack up all the things that you can't take outside the flat and stuff them in your wardrobe.<br>
<br>
<<printThought "Wow, what was I thinking trying to carry so much? Hammerspace is an astounding thing...">><br>
<br>
[<<moveTo "room_foyer" "Back to the foyer." 60>>]
</div>/*#
#desc: shave face
#status: RELEASED 0.9.0.0
#*/
<<set $player.location to "Bathroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body.facialhair = 0>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('hair_remove')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You take a few minutes shaving your face, taking a moment to take pride in how smooth your face looks<<if $player.sec_style.body.tblock>>, even moreso since you started the testosterone blockers<</if>>.<br>
<br>
<<printThought "I do look better shaved... but such a repetitive hassle. I wonder if there's a more permanent solution?">><br>
<br>
[<<moveTo "room_bathroom" "Back to the bathroom." 60>>]
</div>/*#
#desc: first time using sex game
#status: FINISHED 0.7.6.0
#*/
<<set $player.timebased.stressmulti = 0>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Clearing space in front of your computer, you set the black box in the living room and load up<<if $fetish.get_raped>> "Rape Rape Revolution." <<else>> "Space Slut Supreme." <</if>>A cheesy rendered cutscene introduces you to the game and its paper-thin plot that seems to involve specially trained "sluts" competing in an intergalactic sex competition to protect earth.<br>
<br>
<<printThought "So it's Mortal Kombat, but sex... I guess that isn't all that much more absurd than the original premises.">><br>
<br>
Presented with the main menu, you wait for it to auto-sync to your "device." With an orgasmic moan, it confirms success and the box clicks and then unfolds automatically, the bondage contraption sitting ominously in front of your computer without doing its normal entrapping ambush.<br>
<br>
Taking a deep breath, you try to click on "start game" only to be presented with an error.<br>
<br>
"@@.computer;ERROR: Please remove clothes and assume gaming position and use included controllers for all game input.@@"<br>
<br>
<<if setup.checkNaked()>>
<<printThought "Whelp, I'm already naked, guess I just need to get into position...">>
<<else>>
<<printThought "Hmm, guess I need to strip and strap in to play...">>
<</if>>
You glance down at the bondage device, the twin phallic "controller" dildos positioned directly in front of the wrist cuffs.<br>
<br>
[<<moveTo "room_home_auto_bondage_rrr_root" "Let's play! — Do as instructed." 1800>>]<br>
[<<moveTo "room_livingroom" "Change your mind, pack up and do something else.">>]
</div>/*#
#desc: sex game intro
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.startNaked = setup.checkNaked()>>
<<useClothSetPush 'tmp'>>
<<if !$scene.startNaked>>
<<removeAllClothing>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.startNaked>>
Already naked, you
<<else>>
Removing your clothes, you
<</if>>
boot up<<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>>and skip past the pervy intro sequence to the main menu. The game "helpfully" popping up a warning to: <br>
<br>
"@@.computer;Please assume gaming position and use included controllers for all game input.@@"<br>
<br>
[<<moveTo "room_livingroom" "Change your mind, pack up and do something else." 180 "<<useClothSetPop 'tmp'>>">>]<br>
[<<moveTo "room_home_auto_bondage_rrr_root" "Let's play! — Do as Instructed." 60>>]
</div>/*#
#desc: sex gamemain menu
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.times_played += 1>>
<<set $scene.startNaked = setup.checkNaked()>>
<<if !$scene.startNaked>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<if State.hasPlayed("event_ai_sex_lesson_gangbang_1") && !State.hasPlayed("event_ai_black_box_1") && $npc_exgirlfriend.flags.bondage_machine.rrr.both_final && (!$player.body_ref.penis || $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level >= 3) && (!$player.body_ref.vagina || $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level >= 3) && (!setup.checkItemTypeWorn("cage") || setup.getChastityLevel() >= 3) && setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<initRoom>>
<<moveTo "event_ai_black_box_1">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You look at the level select screen for<<if $fetish.get_raped>> "Rape Rape Revolution." <<else>> "Space Slut Supreme." <</if>><br>
<br>
Somewhat cartoonish, there is a naked female avatar in a similar all fours position to yourself just under the large game logo, her legs and arms extending down past the level select.
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final && $npc_exgirlfriend.flags.bondage_machine.rrr.oral_final>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade>>Massive Ultra-Cocks(tm)<<else>>Thick cocks<</if>> penetrate her from both directions
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
fucking her constantly, only occasionally pulling back to further paint her already dripping body with cum.
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>
her body subtly painted with cum.
<<else>>
though she remains motionless between them like a slutty spit-roast.
<</if>>
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier || $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>
Her body is painted with cum.
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final>>
From the left side of the screen, a <<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade>>Massive Ultra-Cock(tm)<<else>>cock<</if>> extends to fill her ass<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>, nestled deep between her cum-drenched fuck-pillows<</if>>.
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier>>
From the left side of the screen, a <<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade>>Massive Ultra-Cock(tm)<<else>>cock<</if>> extends to hover just outside of her ass
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>, occasionally spurting cum over her ass and back<</if>>.
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.oral_final>>
From the right side of the screen, a <<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade>>Massive Ultra-Cock(tm)<<else>>cock<</if>> extends to fill her face, her lips spread wide to accommodate its girth as her dewy eyes <<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>and cum-splattered cheeks<</if>> express her joy.
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
From the right side of the screen, a <<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade>>Massive Ultra-Cock(tm)<<else>>cock<</if>> extends to hover just out of reach of her mouth<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>, occasionally spurting cum into her face<</if>> as she looks desperately towards the <<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade>>Massive Ultra-Cock(tm)<<else>>cock<</if>> with watering lips.
<</if>>
<</if>>
<br><br>
<<if State.hasPlayed("event_ai_black_box_1")>>
In the corner of the screen there is a twinkling icon depicting <<=setup.getNpcName('npc_ai', 'first')>>.<br>
<br>
<</if>>
Below the slutty bimbo is a list of available levels: <br>
<br>
[<<moveTo "room_home_auto_bondage_rrr_anal_1" "Tournament Qualifier: Putting Your Ass On the Line." 1800>>]<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier>> — STAGE CUMPLETE<</if>><br>
[<<moveTo "room_home_auto_bondage_rrr_oral_1" "Tournament Qualifier: Wide Open Field." 1800>>]<<if $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>> — STAGE CUMPLETE<</if>><br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier && $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
[<<moveTo "room_home_auto_bondage_rrr_double_1" "Bonus Stage: Double Trouble!" 1800>>]<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>> — STAGE CUMPLETE<</if>><br>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier || $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
<br>The Tournament of Triumph!<br>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier>>
[<<moveTo "room_home_auto_bondage_rrr_anal_2" "The ASStral Challenge." 1800>>]<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final>> — STAGE CUMPLETE<</if>><br>
<<else>>
[@@.link_locked;STAGE LOCKED.@@]<br>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
[<<moveTo "room_home_auto_bondage_rrr_oral_2" "Throat of the Galaxy." 1800>>]<<if $npc_exgirlfriend.flags.bondage_machine.rrr.oral_final>> — STAGE CUMPLETE<</if>><br>
<<else>>
[@@.link_locked;STAGE LOCKED.@@]<br>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final &&
$npc_exgirlfriend.flags.bondage_machine.rrr.oral_final &&
$npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>
[<<moveTo "room_home_auto_bondage_rrr_double_2" "Secret Stage: Holes of Glory." 1800>>]<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>> — STAGE CUMPLETE<</if>><br>
<<else>>
[@@.link_locked;STAGE LOCKED.@@]<br>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_upgrade>>
[<<moveTo "room_home_auto_bondage_rrr_vag_root" "Load into the Demons Love Cunt Expansion." 60>>]<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level >= 3>> — STAGE CUMPLETE<</if>><br>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.penis_upgrade>>
[<<moveTo "room_home_auto_bondage_rrr_penis_root" "Load into the Devils Love Cock Expansion." 60>>]<<if $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level >= 3>> — STAGE CUMPLETE<</if>><br>
<</if>>
<br>
<<if State.hasPlayed("event_ai_black_box_1")>>
[<<moveTo "event_ai_black_box_2" 'You would like to have <<=setup.getNpcName("npc_ai", "first")>> take control of the black box.' 300 "<<set $scene.accept=true>><<set $scene.first=false>>">>]
<</if>>
[<<moveTo "room_livingroom" "Change your mind, pack up and do something else.">>]
</div>/*#
#desc: sex game anal start
#status: FINISHED 0.7.6.0
#ignore_spell: tacular
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 12 'little' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'little' $ALONE>>
<<applyFatigue 30>>
<<changeHorny 20>>
<<if setup.getTotalValue("anal") < 5>>
<<setThreshold 'anal' 'extreme_anal' 'early_machine_anal'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Angling your monitor so that you'll be able to see it from the floor, you situate yourself in the self bondage machine and wait for the restraints to click securely closed.<br>
<br>
It isn't as striking as when the machine "forces" itself on you, but it is no less secure, your head and wrists in stocks, your hands wrapped around penis-shaped controllers, your waist supported and bound with your ankles restrained to leave your ass exposed.<br>
<br>
Using the dildo-controllers, you click start game.<br>
<br>
Looking up at the screen, you watch the story intro as it explains that, in anticipation of the galactic sex tournament, you have joined other eager prospects to prove that you have what it takes to defend earth from any threat that might "cum from behind." <br>
<br>
You run through a basic tutorial where you feel the familiar dildo sliding into your ass as a cheese-tacular gruff sergeant character<<if $options.fem>> comes up and she<</if>> tells you that you need to be the best if you're going to save the earth. Completing an almost trivial "handjob" warm-up using the dual controllers it's finally time for the "final exam" to see if your ass is ready to represent earth in the sex tournament.<br>
<br>
"@@.computer;Alright, space slut, it's time to show what that ass can do!@@" The game instructs as a helpful pop-up tells you to use the phallic controllers in your hands to control the dildo in your ass and "prove that you're ready to represent humanity." <br>
<br>
Bent over, bound and exposed, you feel the lubricated dildo slide into your ass as a rhythm-game overlay appears on the screen. Trying to relax, you use the controllers to, effectively, fuck yourself. Your left hand controls depth while your right controls speed and you try to keep up with the instructions on screen to demonstrate your "qualifications." <br>
<br>
<<if setup.getTotalValue("anal") >= 9>>
[<<moveTo "room_home_auto_bondage_rrr_anal_1_success" "Spread and take it for humanity!">>]
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_anal_1_failed" "Show what you've got!">>]
<</if>>
</div>/*#
#desc: sex game anal 1 win
#status: FINISHED 0.7.6.0
#ignore_spell: a+
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'very' $ALONE>>
<<applyFatigue 60>>
<<changeHorny 20>>
<<set $scene.first_win = !$npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier = true>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier && $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade && !($events.hasOwnProperty('bondage_upgrades_delivery') || setup.checkItemOwned('bondage_upgrades_box2') || $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade)>>
<<addEvent 'bondage_upgrades_delivery'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Taking a firm grip on the dildo-controller in each hand, you let out a breath, relax, and start aggressively fucking your own ass.<br>
<br>
Panting and moaning with each hard thrust, you follow the instructions on the screen precisely, plunging the cock fast and deep, then stutter-stepping it back out, working your hips at the same time as best your binds allow to match the encouragement of your in-game supervisor to work it and be a "perfect butt slut!" <br>
<br>
Riding a combo, you hit the halfway point. Things get even faster, but you stay the course, plunging the thick dildo in and out of your ass in perfect rhythm with the game's commands. With a final hurrah you bury the artificial cock so deep you feel your sphincter start to close around the thinner metal shaft it is mounted to.<br>
<br>
There is a brief game of tug of war between your ass and the machine before you relax and let your eyes roll back as the pleasant, <<if $player.body_ref.penis>>prostate<<else>>bum<</if>>-probing penetrator retracts.<br>
<br>
Smiling in satisfaction, you look up as your final score is tallied: A+ — perfect combo!<br>
<br>
"@@.computer;Now that's a galaxy-class ass!@@" The game congratulates before cutting to a short cutscene of you being appointed earth's anal champion.<br>
<br>
<<if $scene.first_win>>
Dropped back to the main menu STAGE LOCKED shimmers and changes as a new level becomes available — "The ASStral Challenge." A cock slides into view from the left side of the screen, stopping just shy of penetrating the ass of the cartoonish avatar bent over at the top of the screen.
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
<br><br>
The screen freezes for a moment before glowing as a new level is revealed in a previously blank area on the screen — "Bonus Stage: Double Trouble!"
<</if>>
<<else>>
Great job, slut! Now see if you can conquer your next challenge! The game congratulates as you recover from another perfect anal qualifier run.
<</if>>
<br><br>
Your binds unlocking, you smile with accomplishment and rise to your feet, working the kinks out of your wrists and wiggling your certified expert butt.<br>
<br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: sex game anal game 1 lose
#status: FINISHED 0.7.6.0
#ignore_spell: b+,d,f+
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<<applyFatigue 50>>
<<changeHorny 10>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") >= 8>>
Clutching a dildo in each hand you focus your gaze, relax your sphincter and use the phallic controller to start thrusting into your ass.<br>
<br>
Large, but within your capabilities, the dildo slides into your ass and you follow along with instructions, being encouraged by the gruff sergeant to "take it deep!" and "work it like a slut!" <br>
<br>
Making it through the first "phase" you start to fall behind as the level continues, the distraction of the hard anal fucking you are administering to yourself throwing off your rhythm.<br>
<br>
Moaning and gasping like a slut you push yourself as hard as you can in the race to the finish only for the level to end and the dildo to automatically retract from your ass.<br>
<br>
Looking up you are frustrated by your assessment:<br>
B+, "@@.computer;Not bad, slut, but we need an A-grade asshole if we're going to protect the planet, but keep up your practice and you'll make it for sure!@@"
<<elseif setup.getTotalValue("anal") > 5>>
A dildo in each hand you grit your teeth and focus as your use the phallic controller to slide the dildo into your ass.<br>
<br>
Gasping at the size you try to focus on the instructions flashing in front of you, using the controllers to plunge the dildo deeper into your ass and then fuck yourself with rhythmic efficiency.<br>
<br>
Your entire body shudders with each thrust as you struggle to gape wide enough to take it like the "good slut" the in-game supervisor calls you.<br>
<br>
Despite your efforts your ass isn't up to the occasion, clenching down instead of relaxing as the dildo shudders to a stop half-way into your sore, used hole.<br>
<br>
Drooping in your bonds you glance up for your assessment: D, "@@.computer;You call that an ass? You need to train much harder if you're going to take it well enough to save earth!@@"
<<else>>
You cry out as you try to insert the dildo into your ass. Far too big for your novice hole you can't bring yourself to use the controllers to force more than the tip into your body.<br>
<br>
Panting and crying with each short thrust you try to at least match the rhythm that scrolls across the screen even as you utterly fail at depth.<br>
<br>
Your ass sore and gaping as the dildo finally slides out you don't even need to look up to know you failed.<br>
<br>
"@@.computer;What are you doing? We need sluts, not prudes! I've never seen such a sorry ass in all my years!@@"<br>
<br>
You find yourself wincing at the chastisement, catching a glimpse of the F+ grade before clicking away.
<</if>>
<br><br>
Catching your breath, you feel your restraints release and rise to your feet.<br>
<br>
<<if setup.getMaxThresholdValue("anal") < 10>>
<<printThought "That was a bit much... I think I need to practice with something smaller and work up to this...">><br>
<br>
<</if>>
[<<moveTo "room_livingroom" "Well, that was something...">>]
</div>/*#
#desc: sex game anal game 2 start
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if !$npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade>>
Settling into the familiar bondage, you select the newly upgraded level only to be presented with an error message.<br>
<br>
ERROR: Ultra-Cock(tm) not detected.<<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>>patented Ultra-Cock(tm) is required to play this mission. Returning to main menu<br>
<br>
[<<moveTo "room_home_auto_bondage_rrr_root" "Darn it all." 1>>]
<<else>>
Settling into the familiar bondage, you
<<if setup.getTotalValue("anal") < 13>>
nervously anticipate being fucked by the thick Ultra-Cock(tm).
<<else>>
wiggle your butt in anticipation of the unseen Ultra-Cock(tm) that will soon be entering you.
<</if>>
<br><br>
A pre-level cutscene plays, building up the anticipation as it shows the spaceship carrying you docking with the station that houses the "Arena of the Galaxy" where you will be putting your ass on the line... literally, in defence of humanity. Met by a honour guard of scantily clad escorts, you are led through a hallway where you come face to face with your opposition.<br>
<br>
Standing across from you is your opponent, a <<if $options.fem>>true amazon with a toned body and towering height. You note that her strength extends<<else>>vision of masculine power from his ripped pecks<</if>> down to <<his>> large cock.<br>
<br>
Even with it being just a cutscene, you find yourself staring at the cock, imagining the thick "Ultra-Cock(tm)" lurking out of sight that will be its corporeal representation for the game. Too distracted by anticipation, you only hear bits and pieces of the "intro" laying out that, in accordance with the treaties, you, as earth's champion, will defend earth by submitting your ass to be used by the enemy champion. Only if you can endure <<his>> assault, earth will be protected from invasion.<br>
<br>
The stakes laid out, your opponent bows to you before gesturing towards "The Colosseum of Competition" (a large bed).<br>
<br>
The cutscene over, you are able to move using your dildo controllers and you make your way towards the bed.<br>
<br>
The competition begins with you being bent over the bed, looking up at a mirrored ceiling that shows a semi-transparent, indistinct rendition of your "avatar" in a similar all-fours position to which you are bound and behind it your opponent, <<his>> hands on your hips, <<his>> cock about to enter you.<br>
<br>
A helpful reminder text pops up to tell you that you must maintain a gentle grasp on both controllers or else you will be considered to have surrendered and lost the "battle." <br>
<br>
<<if $player.timebased.fatigue/$player.timebased.fatiguemax <= .1 && setup.getTotalValue("anal") >= 13>>
[<<moveTo "room_home_auto_bondage_rrr_anal_2_success" "Let the contest begin!">>]
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_anal_2_failed" "Time to defend earth...">>]
<</if>>
<</if>>
</div>/*#
#desc: sex game anal game 2 win
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<if setup.getTotalValue("anal") > 15>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'skip' $ALONE>>
<<else>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'terrible' $ALONE>>
<</if>>
<<applyFatigue 60>>
<<changeHorny 20>>
<<set $scene.first_win = !$npc_exgirlfriend.flags.bondage_machine.rrr.anal_final>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Taking a deep breath, you relax into your restraints as your opponent's first thrust sends the Ultra-Cock(tm) behind you gliding into your ass. Your experienced ass opens yourself to its passage and it slides easily, and pleasurably, into your rear. Rather than clenching you find yourself idly stroking your dildo controllers, eager for the "encounter" to continue.<br>
<br>
"Not bad!" Your opponent chides, "but we haven't even started, prepare to be pounded into submission, weak human!" <br>
<br>
A warning pops up on the screen "continuing this scene requires disabling safety settings, including the player's ability to abort, do you wish to proceed?" <br>
<br>
Excitedly you click past the warning, rolling your hips to get a little extra pressure against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as you impatiently await the start of the competition proper.<br>
<br>
In response to your desire the cheesy intro dialogue has barely faded when the cock in your ass begins pistoning in and out aggressively.<br>
<br>
You can't help but moan and gasp at the hard fucking, feeling the thick dildo plunder your depths as your opponent seeks to exhaust you.<br>
<br>
Locked in your bonds you can do little save enjoy the fucking and watch the monitor, noting that your opponent seems to be showing signs of exhaustion, <<his>> pace slowing slightly.<br>
<br>
The words "Fight back!" appear on the screen followed by a series of QTE's that you easily ace, jerking and stroking the dildo controllers in your hands.<br>
<br>
"What? No human has ever resisted my cock..." <<His>> words are matched by a slight loosening of <<his>> grip on your body, mirrored in the real world by the restraints holding your waist slackening slightly.<br>
<br>
Quickly taking charge you press back, fucking yourself deeper onto the cock and then clamping down with all your sphinctoral might.<br>
<br>
"What is this! Impossible!" Your opponent shouts as the on-screen instructions turn to ones familiar from the "qualifier" level. Taking grasp of the dual dildo controllers you modulate the speed of your fucking, the challenge made even harder as you are expected to also synchronise the movement of your hips AND either squeeze or relax your ass to trigger pressure-sensors built into the advanced Ultra-Cock(tm).<br>
<br>
With a look of determination on your face you fuck yourself hard, your on-screen opponent slowly wilting and the positions changing until your avatar is bouncing happily up and down on <<his>> member after <<he>> has collapsed onto the bed.<br>
<br>
Holding a final squeeze the cock retreats as your avatar stands, your opponent lying on the bed exhausted as earth is saved by your mighty ass.<br>
<br>
Your opponent carried off by <<his>> people in shame, you are given a medal to commemorate your victory a cutscene showing crowds back on earth cheering and celebrating having witnessed your triumph.<br>
<br>
<<if $scene.first_win>>
Your binds unlocking, you smile with accomplishment and rise to your feet. On screen the main menu pops back up, the dildo sliding into the ass of the cartoonish avatar
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.oral_final>>
matched to the cock on the other side already deep in her throat the cartoon animates to move back and forth, fucking herself from both ends for several seconds as the screen shimmers and another bonus mission level appears: <br>
Secret Stage: Holes of Glory
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
even as the oral-aimed twin hangs centimetres from eagerly parted lips.
<</if>>
<<else>>
Back at the main menu your restraints unlock and you stand you watch the anal dildo give the cartoon avatar a few thrusts to commemorate yet another "victory."
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: sex game anal game 2 lose
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $ALONE>>
<<if setup.getTotalValue("anal") >= 10 && $player.timebased.fatigue/$player.timebased.fatiguemax <= .1>>
<<setThreshold 'anal' 'extreme_anal' 'machine_anal'>>
<</if>>
<<set $scene.fatigue = $player.timebased.fatigue>>
<<applyFatigue 60>>
<<changeHorny 10>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Your restraints act like <<his>> hands, holding you in place as <<his>> <<getWordPenis>> approaches...<br>
<br>
<<if setup.getTotalValue("anal") < 10>>
You gasp in pain as the thick Ultra-Cock(tm) forces its way into your rear.<br>
<br>
<<printThought "Ohmy<<getWordGod>> it's too big!">><br>
<br>
You try to hold out, but the dildo is still forcing its way into your rear when you clench down on the controllers and things suddenly end.<br>
<br>
The dildo slides back out of your rear as you gasp, the screen darkening with the word FAILED appearing across it.<br>
<br>
Still trying to recover, you still feel shamed by the game over cutscene — showing you being sent back to earth bound and humiliated, followed by the first wave of invaders whose assault you have failed to stem.<br>
<br>
<<printThought "Damn, I need a lot more practice before I'm ready for this level of challenge...">>
<<else>>
Careful not to squeeze your dual dildo controllers too hard and fail the mission, you gasp as the thick Ultra-Cock(tm) makes its way into your ass. Heart pounding, breaths coming fast and shallow, you feel like it is going on forever, spreading you to your very core.<br>
<br>
Finally the dildo grinds to a halt, your "opponent" grunting in response. "@@.generic_male1;Not bad, maybe you humans aren't as weak as you look, but I have more than just size to break you...@@"<br>
<br>
A warning pops up on the screen. "@@.computer;Continuing the scene requires disabling safety settings, including the player's ability to abort, do you wish to proceed?@@"<br>
<br>
Still adjusting to the thick rod in your rear, you end up clicking "confirm" before you've even finished reading, a slight shiver of fear running down your spine as the dildo in your ass slowly pulls back...<br>
<br>
The enthusiasm of your digital partner perfectly matched by the machine abusing your ass you get fucked, hard.<br>
<br>
<<if $scene.fatigue/$player.timebased.fatiguemax <= .1>>
Each thrust of cock into your ass sends shudders through your body. Focusing your will, you control your breathing and try to endure even enjoy, the hard fucking.<br>
<br>
Reaching the second "phase" of the encounter your opponent mockingly congratulates you on your ability to take <<his>> cock, only to laugh and warn you "but are you prepared for the hammer of a god?" <br>
<br>
In real life, the dildo thrusts harder, and deeper, than ever before. You feel something open inside of you, the ruthless thrust forcing its way past a mental barrier to open the very depths of your hole to new "pleasures." <br>
<br>
Letting out a guttural moan, you look up to see your opponent laugh even harder.<br>
<br>
"@@.generic_male1;Ha, ha, ha! You are broken, puny human! I have fucked you just as I will fuck your world!@@"<br>
<br>
Instructions pop up on screen telling you to "fight back!" Reacting to the prompt, you squeeze and jerk your dildo controllers as indicated, your opponent looking confused at your resistance.<br>
<br>
"@@.generic_male1;What? No human has ever resisted my cock...@@"<br>
<br>
You feel the restraints around your waist loosen slightly and you realise that you are now expected to fuck yourself on the thick dildo already rooted so deep in your ass.<br>
<br>
Leaning forward, you try to do as instructed but, though you have broken through to a new level, your inner ass closes up tight and you are unable to take<<if $options.fem>> "her" <<else>> "him" <</if>>to the depth required.<br>
<br>
Despite your best attempts your tired, sore ass is soon empty, your opponent walking away laughing as a game over cutscene plays, your limp body taken into slavery and then brought along as a "pet" for the subsequent invasion of earth.
<<elseif $scene.fatigue/$player.timebased.fatiguemax <= .25>>
It is all you can do to hold on, each thrust of the thick cock into your ass sending jolts through your bound body, leaving you panting and out of breath.<br>
<br>
Though you try to hold out it soon becomes too much for you and you lose focus on the game, unable to pay attention to anything but the brutal ass-fucking.<br>
<br>
Looking up at the screen, you watch a surreal mirroring of your situation, the digital avatar of your "opponent" thrusting deep into your blurred form. <<His>> pace slows as it seems like you've reached another "phase" of the encounter, but your reflexes are dulled and you fail to react in time to the QTE.<br>
<br>
You let out a raw moan as the cock slides out of your ass, the screen above displaying the word FAILED which fades into a game over cutscene of your being enslaved as the first conquest in the invasion of earth.<br>
<br>
<<printThought "Maybe I'd have better luck if I tried when I was more rested?">>
<<else>>
Being fucked like this would exhaust almost anyone and you were tired before you even sat down to your "gaming" session. Drooling and panting it is all you can do to resist passing out, gripping your dildo controllers for dear life. By the time the anal ravaging finally stops you look up to find that you have apparently failed your "mission." <br>
<br>
You catch the last few seconds of a cutscene showing you being taken into slavery, with the rest of earth soon following.<br>
<br>
<<printThought "Maybe I'd have better luck if I tried when I wasn't already exhausted?">>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Well, that was something...">>]
</div>/*#
#desc: sex game oral game 1 start
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("oral") < 5>>
<<setThreshold 'oral' 'extreme_oral' 'early_machine_oral'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Angling your monitor so that you'll be able to see it from the floor, you situate yourself in the deployed self bondage device, waiting for it to click securely closed to temporarily restrain your body.<br>
<br>
Grabbing hold of the dual dildo "controllers," you select the first oral option, your restraints reconfiguring themselves slightly as you watch the intro video.<br>
<br>
The introductory cutscene has a tight-uniformed woman welcome you before panning out to show a line of half-naked <<men>>, their <<if $options.fem>>chests puffed out and <</if>>hard cocks jutting out proudly as they stand at attention.<br>
<br>
"@@.generic_female1;Your skills have impressed us, but if you want to represent earth at the galactic level you need to prove that you, truly, are a perfect cocksucker.@@"<br>
<br>
Glancing over her shoulder at the line of <<men>> she smiles, "well, I imagine you're eager to begin, so limber up those lips and lets see how you suck. some. COCK!" <br>
<br>
As she spoke, a mechanical arm unfolded from under the platform of your bondage device, presenting you now with a realistic phallus just out of reach of your lips.<br>
<br>
As it locks in place, you hear a click and suddenly your head can move. Still collared there is now a short chain linking your neck rather than being stuck in rigid stocks. For most practical purposes, you are just as restrained as before, but now you'll be able to lean forward and suck cock with more than just your lips.<br>
<br>
Using your controllers as prompted, you guide yourself "forward," your perspective on the monitor changing as you approach the first <<man>> in the line and kneel down, the view of <<his>> crotch lining up with the "real" (artificial) cock pointing at your face.<br>
<br>
"@@.generic_female1;Alright, you thirsty tramp. These cocks aren't going to suck themselves, so lets see what you can do!@@"<br>
<br>
<<if setup.getTotalValue("oral") >= 9>>
[<<moveTo "room_home_auto_bondage_rrr_oral_1_success" "Suck some cock!">>]
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_oral_1_failed" "Time to do your job... your blowjob.">>]
<</if>>
</div>/*#
#desc: sex game oral game 1 win
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'very' $ALONE>>
<<applyFatigue 60>>
<<changeHorny 10>>
<<set $scene.first_win = !$npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.oral_qualifier = true>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier && $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade && !($events.hasOwnProperty('bondage_upgrades_delivery') || setup.checkItemOwned('bondage_upgrades_box2') || $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade)>>
<<addEvent 'bondage_upgrades_delivery'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Licking your lips in anticipation, you open your mouth, fixate your gaze on the screen in front of you and lean forward to start sucking.<br>
<br>
The first "warm-up" cock is trivial and then you're off to the races, "suck hard," "tongue pressure," "focus on the tip," "lick the shaft," "use your lips," "tongue only," "go deep" alone or in combination, you follow the instructions of each technique to perfection, cheeks drawing in tight with each suck. Your tongue a tornado, your deepthroats take you to the limit of the chain attached to your collar you lavish the thick cock before you with every ounce of your considerable skill.<br>
<br>
In return for your efforts, the "progress gauge" for each virtual cock you suck veritably flies upwards, each CGI cock in turn bursting with joy across your viewscreen until all is fuzzed by a thin layer of simulated cummy goodness.<br>
<br>
Reaching the "end" of the line of virtual clients, you are almost disappointed, looking up to find the female instructor, her own thick lady lance between your lips, looking down with a wide, prideful smile.<br>
<br>
"@@.generic_female1;Astounding! With you sucking cock on our behalf, earth's security is all but assured!@@"<br>
<br>
Your cum-drenched view fades as a short cutscene plays where you are appointed the cocksucker representative for all of earth.<br>
<br>
<<if $scene.first_win>>
Dropped back to the main menu STAGE LOCKED shimmers and changes as a new level becomes available — "Throat of the Galaxy." A cock slides into view from the right side of the screen, stopping just shy of the now-parted lips of the cartoonish avatar bent over at the top of the screen.
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier>>
<br><br>
The screen freezes for a moment before glowing as a new level is revealed in a previously blank area on the screen — "Bonus Stage: Double Trouble!"
<</if>>
<<else>>
Great job, slut! Now see if you can conquer your next challenge! The game congratulates as you recover from another perfect oral qualifier run.
<</if>>
<br><br>
Your restraints unlock and you smile with accomplishment. Your jaw a little sore, you rise to your feet and lick your lips, your thoughts a bit eager for the "real thing." <br>
<br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: sex game oral game 1 lose
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<<applyFatigue 50>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("oral") > 8>>
Though large, the artificial cock before you is, at least no larger than any you have tasted in the past. Leaning forward you start sucking, your eyes glued upwards at the screen, a timer counting down once your lips are fully wrapped around the dildo.<br>
<br>
Ten seconds count down followed by a cheery chime and then the dildo retracts, the video showing the line shifting down for a fresh cock to be presented, this time with a dialogue box with two bullet points: "suck hard" and "tongue pressure." <br>
<br>
Obeying the instructions this time you have a "progress" bar. Sucking hard it isn't long before the progress bar begins to fill and once maxed the dildo retreats from your lips again with a soft "pop," its digital facsimile in the video spurting cum that stains the camera.<br>
<br>
Continuing down the line each cock presents a new challenge — "@@.generic_female1;Focus on the tip,@@" "@@.generic_female1;Lick the shaft,@@" "@@.generic_female1;Use your lips,@@" "@@.generic_female1;Tongue only,@@" "@@.generic_female1;Go deep@@" you do your best to rise to each occasion as your "view" becomes steadily obscured by ropey strands of cum.<br>
<br>
A master of nearly every variation you struggle only when you're ordered to "@@.generic_female1;Go deep,@@" coughing and gasping once the dildo slides into your throat.<br>
<br>
By the time you reach the "end" of the line your chin is a drooling mess and the screen is almost covered in cum. The dildo pulls back one final time as your view pans up to see the female instructor looming over you.<br>
<br>
"@@.generic_female1;Not bad, slut, you're a great cocksucker, for sure, but your planet needs an AMAZING cocksucker, so you better train that throat a bit more or we're surely doomed!@@"
<<elseif setup.getTotalValue("oral") > 5>>
The artificial cock before you is larger than most you've even seen and you struggle a bit as you lean forward to wrap your mouth around it. Looking up the monitor counts down for a short "intro" round before the dildo pulls back and your perspective shifts laterally to the next cock in the line.<br>
<br>
This time you are presented with a dialogue box with two bullet points: "suck hard" and "tongue pressure." <br>
<br>
You do your best to obey the instructions, a progress bar steadily filling as you do, rewarded with a spurt of "cum" splattering across your view before you continue down the line.<br>
<br>
Each cock requires you to demonstrate different skills, from sucking to licking to full-on deepthroating. Though you do your best your jaw and neck is soon quite sore, and anything that could even charitably be referred to as deep-throating has you coughing and gagging and soon pulling back. On balance you "get off" more cocks than you fail, your screen splattered with cum in reward for each successful fill of the progress bar.<br>
<br>
Reaching the end you look up to find the digital female instructor looking down at you and shaking her head.<br>
<br>
"@@.generic_female1;Not a bad effort, but you need to do a lot better if you're going to represent earth and save the planet!@@"
<<else>>
You're barely accustomed to sucking cock so the monstrous dildo before your lips seems almost impossibly huge. Still, you do what you can, sucking on the tip and licking it until it pulls back.<br>
<br>
Confused you look up to note that your perspective is changing, your view on the monitor moving laterally down the row of <<men>> to the next cock in line, this one presented with a dialogue box with two bullet points: "suck hard" and "tongue pressure." <br>
<br>
You do what you can, but you aren't very experienced in the first place and your "subject" is scary-big. You don't even manage to "fill" the progress bar most times, reaching the end of the row having brought only a couple of your digital partners to climax, the evidence of your scant success scattered drops of "cum" splashed across your display.<br>
<br>
Panting with exertion you look up at the digital female instructor looking down at you with a frown.<br>
<br>
"@@.generic_female1;Pathetic! You need to suck cock much better than that if you expect to save the earth with your throat!@@"
<</if>>
<br><br>
Your restraints release and you rise to your feet once again, your neck a little stiff.<br>
<br>
<<if setup.getMaxThresholdValue("oral") < 10>>
<<printThought "That was a bit much... I think I need to practice with something smaller and work up to this...">><br>
<br>
<</if>>
[<<moveTo "room_livingroom" "Well, that was interesting...">>]
</div>/*#
#desc: sex game oral game 2 start
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<include enterroom>>
<<set $player.inside = true>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if !$npc_exgirlfriend.flags.bondage_machine.rrr.rrr_dildo_upgrade>>
Settling into the familiar bondage, you select the newly upgraded level only to be presented with an error message.<br>
<br>
ERROR: Ultra-Cock not detected. Rape, Rape Revolution patented Ultra-Cock is required to play this mission. Returning to main menu.<br>
<br>
[<<moveTo "room_home_auto_bondage_rrr_root" "Darn it all." 1>>]
<<else>>
Locked in the bondage frame as usual, you raise your chin and
<<if setup.getTotalValue("oral") < 13>>
try not to psych yourself out at the idea of taking something as large as the Ultra-Cock(tm) down your throat.
<<else>>
lick your lips in anticipation of feeling the Ultra-Cock(tm) down your throat.
<</if>>
<br><br>
An intro cutscene plays, showing your ship docking with the station that houses the "Arena of the Galaxy" where you will be making an "oral defence" of humanity. Met by a honour guard of scantily clad escorts, you are led through a hallway where you come face to face with your opposition.<br>
<br>
Standing across from you is your opponent, a <<if $options.fem>>true amazon with a toned body and towering height. You note that her strength extends<<else>>vision of masculine power from his ripped pecks<</if>> down to <<his>> large cock.<br>
<br>
Even with it being just a cutscene, you find yourself staring at the cock. As you do, you hear the whir of machinery as the Ultra-Cock(tm) rises into your vision. Staring at it is like looking down the barrel of a gun... a big, thick, sexy gun...<br>
<br>
Somewhat distracted, you only pay attention to bits and pieces of the "intro." The competition will see you matched skill for skill against the opposing champion. You must not only hold off your own pleasure, but push your opposite number to the limit to prove your superiority.<br>
<br>
The stakes laid out, you and your opponent step into a large contraption, your bodies bound into a floating sixty-nine. As this happens in-game, you feel something tighten around your forehead. A padded strap cinching into place your head is pulled back and your collar locks into position, holding you facing forward, your mouth precisely lined up with the slightly swaying cock just beyond your lips.<br>
<br>
Unable to move your head, you part your lips as your vision flits between the cock and the monitor as your on-screen avatar floats towards your opponent. Just as the fat tip of the cock comes into reach of your lips and tongue, you feel something below: the fat head of a vibrator pressed against <<if $player.body_ref.penis>><<if setup.getItemTypeName("cage") == "">>the base of <</if>>your <<getWordMyPenis>><<else>><<if setup.getItemTypeName("cage") == "">>your crotch<<else>>the front of your chastity belt<</if>><</if>>.<br>
<br>
You can't help but give the cock a gentle kiss, rewarded with a buzz between your legs, and then the competition begins...<br>
<br>
<<if $player.timebased.fatigue/$player.timebased.fatiguemax <= .1 && setup.getTotalValue("oral") >= 13>>
[<<moveTo "room_home_auto_bondage_rrr_oral_2_success" "It's sucking time!">>]
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_oral_2_failed" "Open wide!">>]
<</if>>
<</if>>
</div>/*#
#desc: sex game oral game 2 win
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<if setup.getTotalValue("oral") > 15>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'skip' $ALONE>>
<<else>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'terrible' $ALONE>>
<</if>>
<<applyFatigue 60>>
<<changeHorny 10>>
<<set $scene.first_win = !$npc_exgirlfriend.flags.bondage_machine.rrr.oral_final>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.oral_final = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Opening wide, you slurp every centimetre of the thick dildo as it slides into your mouth, using your tongue to stimulate the underside of the shaft as you have been taught.<br>
<br>
Sucking hard as it pulls back, it takes every ounce of skill and endurance that you have to keep pace with what, for one less experienced, would be a brutal face-fucking.<br>
<br>
A warning pops up asking if you want to disable "safety functionality" to continue and you eagerly squeeze the dual-dildo controllers to confirm. Vibrations ramp up into high gear, but you ignore the pleasure emanating from between your legs as you focus completely on the cock plunging into your throat.<br>
<br>
Continuing to jerk the controllers with enthusiasm, you moan like a whore as the cock thrusts its full length down your throat. On screen you note that your digital "opponent" is starting to look a bit distracted as the chains holding you by the head and neck loosen slightly.<br>
<br>
Fully embracing your duties as an eager mouth fuck-hole, you use this minor freedom to bob back and forth on the thick phallus. Giddy with cocklust you resist the oncoming orgasm as you follow familiar instructions, sucking and licking along with the pop up dialogue prompts as you turn the tables on your digital opponent.<br>
<br>
It is almost over too soon, leaving you still horny and panting for more as the cock slides out from your lips and the vibrator retracts. On screen your opponent shudders in <<his>> bonds, cumming hard to mark your triumph while leaving you saddened that the artificial member in front of you is unable to shower you with wonderful jizz.<br>
<br>
Your opponent is carried off by <<his>> people in shame as you are given a medal to commemorate your victory, your avatar still sporting the "evidence" of your triumph in a cutscene that shows crowds back on earth cheering and celebrating at their cum-anointed saviour.<br>
<br>
<<if $scene.first_win>>
You smile with accomplishment as your binds unlock and you rise to your feet. On screen the main menu pops back up, the cock sliding into the mouth of the cartoonish avatar, her throat bulging around its
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final>>
girth.<br>
<br>
Now "properly" stuffed from either direction thanks to the cock already in her ass, the cartoon animates to move back and forth, fucking herself from both ends for several seconds as the screen shimmers and another bonus mission level appears: <br>
Secret Stage: Holes of Glory
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.anal_qualifier>>
girth, even as the anal-aimed twin hangs centimetres from her wiggling bum.
<</if>>
<<else>>
Back at the main menu your restraints unlock and you stand you watch the oral dildo give the cartoon avatar a few thrusts to commemorate yet another "victory."
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: sex game oral game 2 lose
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $ALONE>>
<<if setup.getTotalValue("oral") >= 10 && $player.timebased.fatigue/$player.timebased.fatiguemax <= .1>>
<<setThreshold 'oral' 'extreme_oral' 'machine_oral'>>
<</if>>
<<set $scene.fatigue = $player.timebased.fatigue>>
<<playerOrgasm>>
<<applyFatigue 60>>
<<changeHorny 5>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Unable to move or resist, you can only open your mouth as the Ultra-Cock(tm) slides past your lips.<br>
<br>
<<if setup.getTotalValue("oral") < 10>>
The initial entry may be gentle, but it doesn't last, after the first brush of your throat the cock pulls partway back and begins jackhammer-fucking your face.<br>
<br>
You can barely even notice the intense vibrations coursing through your <<if $player.body_ref.penis>><<if setup.getItemTypeName("cage") != "">>caged <</if>><<getWordMyPenis false>><<else>><<if setup.getItemTypeName("cage") != "">>imprisoned <</if>>crotch<</if>> due to the intense face-fucking, drooling and gagging and almost retching as it tries to pound its way down your throat.<br>
<br>
Despite the brutal treatment the vibrations are too much, you moan a scream around the cock filling your mouth as you <<if setup.getItemTypeName("cage") != "">>dribble through your cage<<else>>spurt uncontrollably<</if>>.<br>
<br>
The word FAILED appears on-screen, your uncontrolled orgasm and failure to even partially deepthroat your opponent dooming humanity to conquest and enslavement.<br>
<br>
Separated from your opponent, you become the first of your people to be enslaved, bound, collared and gagged as your new owner promises to train you to be a "proper" cocksucker.<br>
<br>
<<printThought "Damn, I need a lot more practice before I'm ready for this level of challenge...">>
<<else>>
Your mouth opens wide for the fat cock-head and soon it is plunging down your throat, blocking your airway with each thrust and soon having you gasping for breaths in between thrusts.<br>
<br>
<<if $scene.fatigue/$player.timebased.fatiguemax <= .1>>
Timing your breaths to match the rhythm of your fucking, you focus your attentions and suck along, humping your hips slightly against the vibrator as you feel the cock forcing its way deeper and deeper down your throat.<br>
<br>
On screen a dialogue box appears telling you to squeeze the controllers to temporarily disable safety protocols and continue the scene.<br>
<br>
Moaning and working the controllers a final thrust tries to hit new depths. You can feel your throat bulge around the full length of the cock, but with it comes the discovery of some final lingering shred of gag reflex. Retching slightly, the cock slides out of your throat, your focus shattered.<br>
<br>
The machine shows no mercy even as you fall to pieces, on screen you are instructed to deploy your suite of cock-sucking skills to suck or lick, but all you can do is gasp and cough as the dildo uses your throat like nothing but a wet hole, face-fucking you into submission until a large FAILED message appears on screen.<br>
<br>
Hanging in your bonds, you realise that, somehow during the intense experience, you actually came, your poor, over-vibrated <<if $player.body_ref.penis>><<if setup.getItemTypeName("cage") != "">>caged <</if>><<getWordMyPenis false>><<else>>puss<</if>> trickling a final few drops onto the vinyl platform below.
<<elseif $scene.fatigue/$player.timebased.fatiguemax <= .25>>
You try to keep up with the aggressive face-fuck, but with each thrust you find yourself falling behind, each increasingly frantic gasp insufficient to fill your lungs before the cock thrusts forward again.<br>
<br>
Your vision starts to close in, the light-headed feeling met by even more intense vibrations between your legs.<br>
<br>
Letting out a long, moaning groan you cum, <<if setup.getItemTypeName("cage") != "">>your failure dribbling out of your <<if setup.isCage()>>cage<<else>>belt<</if>><<else>>your over-stimulated <<if $player.body_ref.penis>><<getWordMyPenis>> spurting twice<<else>>love canal unleashing an orgasmic burst<</if>><</if>>.<br>
<br>
Exhausted and drooling you hang in your bonds as the cock slides out of your mouth and the word FAILED appears on the screen. A brief game over cutscene plays as you become the first of humanity to be enslaved; bound, collared and gagged as your new owner promises to train you to be a "proper" cocksucker.<br>
<br>
<<printThought "Maybe I'd have better luck if I tried when I was more rested?">>
<<else>>
Light-headed and overloaded, you're just too tired to keep up with the face-fuck, shuddering in your bonds as you spurt your failure from your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>sensitive snatch<</if>>. Groaning and drooling as the cock slides out of your face you stare up at the screen as it confirms your failure.<br>
<br>
Too weak to resist your own pleasure, you have fallen to your opponent, the first of humanity to be enslaved; bound, collared and gagged as your new owner promises to train you to be a "proper" cocksucker.<br>
<br>
<<printThought "Maybe I'd have better luck if I tried when I wasn't already exhausted?">>
<</if>>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Well, that was intense...">>]
</div>
/* Note: this is effectively a "bonus" scene/faster way to get to lvl 10 *//*#
#desc: sex game double penetration game 1 start
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<set $player.inside = true>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
In familiar bondage in front of your computer, you hum quietly as the intro cutscene for the bonus stage starts.<br>
<br>
Set on the space-ship as you are traveling to the "Arena of the Galaxy" where you will put your holes on the line to defend earth, you find yourself sitting in your bunk when the door to your fairly large personal chamber chimes.<br>
<br>
Using the dildo controllers, you stand up and walk over to open the door. Packed into the hallway on the other side are a bunch of sharply dressed crewmembers, their leader smiling at you and offering a proposition.<br>
<br>
"@@.generic_male1;It'll be a few more days, yet, before we arrive at the arena and me and the <<boy>>s... we were wondering if you might want to get in some practice in the meantime?@@"<br>
<br>
Your first-person perspective bobs as you nod. You turn to lead them back into your room.<br>
<br>
Filing in behind by the time you turn back around, they have all unzipped their snug outfits, a line of delicious cocks arrayed all around as you get up onto your circular bed.<br>
<br>
<<if setup.getTotalValue("anal") >= 10 && setup.getTotalValue("oral") >= 10>>
[<<moveTo "room_home_auto_bondage_rrr_double_1_success" "Isn't it great when your job is doing what you love?">>]
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_double_1_failed" "Time to get some reps in...">>]
<</if>>
</div>/*#
#desc: sex game double penetration game 1 win
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'very' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'very' $ALONE>>
<<applyFatigue 60>>
<<changeHorny 20>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 0>>
<<set $scene.first_win = !$npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Hopping up onto your round bed, your view pans around to show the circle of cocks all pointed towards you before you get to work.<br>
<br>
From a first-person perspective, you watch your avatar grab a cock in each hand as a third approaches down the middle. In real life, the integrated ring gag already has your mouth open in anticipation as the dildo in front of you extends towards your lips and you feel the one behind press against your hole.<br>
<br>
Your gaze moves past the cock that is now in your mouth to focus on the screen. You watch the four "pleasure" gauges that appear intently, jerking the two dildo controllers and moving back and forth to suck and fuck your dick-shaped visitors, deploying every trick you've learned to make sure that all four "pleasure" meters remain maxed out.<br>
<br>
On screen, you are treated to frequent fountains of jizz as you serve cock after cock, rotating in a circle as your body takes on four "customers" at a time. As well as cum, you are showered with compliments "@@.generic_male1;Our champion!@@" "@@.generic_female1;Greatest cocksucker in the galaxy!@@" and other words of praise coming from the crew<<men>>.<br>
<br>
Both cocks extend further and further as the level progresses, meaning that even fully penetrating yourself in one direction leaves your other hole mostly full. After a while the excitement of your personal virtual gangbang becomes too much for you — despite never touching your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<getWordVagina>><</if>>, you have a potent orgasm, moaning around the cock in your throat even as you never once break stride sucking and fucking.<br>
<br>
Not long after your own orgasm, your final digital partner cums with a groan. Your view pans up to <<his>> post-orgasmic expression.<br>
<br>
"@@.generic_male1;Well, if this is what you're bringing... humanity is in good hands... or is that holes?@@" Laughing along with the other crewmembers, they start to file out of your chamber when the screen freezes and large "BONUS MISSION: COMPLETE!" appears on screen.<br>
<br>
<<if !$scene.first_win>>
Triumphing over the mission yet again, you are returned to the main menu where two cocks comically bulge and spurt out fresh loads.
<<else>>
The mission screen glows to show that you have successfully beaten it.
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final && $npc_exgirlfriend.flags.bondage_machine.rrr.oral_final>>
At the bottom of the screen a new level name appears — "Secret Stage: Holes of Glory."
<</if>>
From either side the two cocks that constantly "torment" the animated avatar comically bulge as they spurt out twin loads of celebratory cum.
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final && $npc_exgirlfriend.flags.bondage_machine.rrr.oral_final>>
Her cheeks bulge as the load bursts in her mouth, spurting out her nose and spilling down her chin as some of the load taken up her ass trickles down her thighs.
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.anal_final>>
Spraying over her face the second load is deposited deep in her ass, some of it trickling down her thigh.
<<elseif $npc_exgirlfriend.flags.bondage_machine.rrr.oral_final>>
Her cheeks bulge as the load bursts in her mouth, spurting out her nose and spilling down her chin as the rear shot blasts across her ass and back.
<<else>>
One cock spraying over her face the rear shot blasts across her ass and back.
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: sex game double penetration game 1 lose
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<applyExperience 'bondage' 12 'normal' $ALONE>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.dildo_size 'normal' $ALONE>>
<<applyFatigue 60>>
<<changeHorny 10>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 0>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Taking a similar kneeling position on the bed to your own bound predicament you remain in a first-person perspective, one <<mans>> hard cock before you the same as the dildo rising towards you in real life. Your avatar's hands reach out to grab the cocks of the <<men>> to either side to match your grasp around the dual dildo controllers.<br>
<br>
"Gang Bang Bonus Mode!" appears on the top of the screen as multiple gauges appear. Your neck and hip restraints get some slack in them as the object of this level will be to follow the commands to suck, fuck, squeeze and jerk in rhythm with the instructions on-screen as your whole body — inside and out, becomes your controller.<br>
<br>
The intro over the cock in front of you comes closer — on screen, and in real life, joined by its twin behind to have you properly spit-roasted.<br>
<br>
Following along with the instructions on-screen you start rocking back and forth, fucking both your holes as you lick and suck and squeeze, jerking the controllers the whole time.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
Though you find yourself struggling to keep up with the oral commands your ass is on point, hungrily taking the cock behind you deep as you try to catch your breath, panting around the cock in your mouth.
<<elseif setup.getTotalValue("oral") >= 10>>
You struggle to squeeze and push backwards to fuck your ass, though you mostly make up for it with your world-class cock-sucking skills. Slurping and licking and sucking hard you do your best on the other three cocks, but there is no doubt that the <<man>> in your behind is getting the short end of it.
<<else>>
Four cocks is just too much for your to coordinate at once. Jerking them off is easy enough to keep in rhythm, but your mouth and ass just aren't skilled enough to react at the speed required, and trying to do both at once? You do your best, lunging forward and sitting back, but your holes are just that... holes as you are unable to bring more than the barest amount of your trained skills to bear.
<</if>>
<br><br>
As the level progresses, the commands come faster, and the cocks extend further, until it becomes impossible to have less than half a length of artificial cock in both holes at any time. The whole time you are showered with compliments, as well as cum, the crewmembers hailing you as "@@.generic_male1;Our champion@@" and "@@.generic_female1;My cock has never felt this good!@@" among other lewd, but congratulatory, remarks.<br>
<br>
Your perspective rotating as you serve cock after cock you reach the end having served them all, the leader giving you a final congratulation.<br>
<br>
"@@.generic_male1;Not bad, looks like you needed the practice, I hope you can perform in the real competition, we're all counting on you!@@"<br>
<br>
The screen fades. The lukewarm assessment and lack of change on the main menu make it clear that you didn't manage to actually "beat" this special stage.<br>
<br>
[<<moveTo "room_livingroom" "Whew, that was intense!">>]
</div>/*#
#desc: sex game double penetration game 2 start
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Selecting the secret stage, you strap in as you watch a replay of the "victory" cutscene you remember from before. Instead of cutting to earth to show the crowds cheering at their salvation, the ceremony is suddenly interrupted.<br>
<br>
Standing in the ornate entrance to the arena are three figures, a scantily, and yet, ostentatiously dressed woman flanked by two robed alien <<men>>. A helpful on screen notification informs you that the woman, as beautiful as she is regal, is the ruler of the civilization over which you have just triumphed.<br>
<br>
"@@.generic_female1;STOP!@@" She commands with all her regal authority. "@@.generic_female1;I invoke the rite of siy'loh!@@"<br>
<br>
A shocked gasp goes through the room until the leader of the neutral arbiters of the competition, the keepers of the station speaks.<br>
<br>
"@@.generic_female2;You would seek to dispute the results of the trial? Both of your champions have been fairly beaten in sexual competition, rendering earth safe. By invoking siy'loh you reject this ruling and request another trial, but should you lose this time not only will earth be safe, but your own realm will be surrendered and your rule forfeit.@@"<br>
<br>
The woman nods confidently. "@@.generic_female1;I accept these terms. I present as my champions the twin <<if $options.fem>>empresses<<else>>emperors<</if>>, the paragons of my people, they will best this human with ease.@@"<br>
<br>
Apparently you don't get a vote on this matter as, with things apparently decided, your avatar is hustled on to a platform and strapped in to a bondage device nigh identical in function that which you find yourself in in real life.<br>
<br>
You watch as the two <<men>> that had been escorting the Empress shed their robes to reveal even larger hardons than the champions you already bested.<br>
<br>
<<printThought "I guess those are the Twin <<if $options.fem>>Empresses<<else>>Emperors<</if>>... hurray for model reuse!">><br>
<br>
Securely bound with large cocks looming fore and aft, you get ready to put your holes on the line to defend humanity one last time.<br>
<br>
<<if setup.getTotalValue("anal") >= 15 && setup.getTotalValue("oral") >= 15>>
[<<moveTo "room_home_auto_bondage_rrr_double_2_success" "Show these so-called <<if $options.fem>>Empresses<<else>>Emperors<</if>> what humanity is made of." 300>>]<br>
[<<moveTo "room_home_auto_bondage_rrr_double_2_failed" "Throw the match." 300 "<<set $scene.throw=true>>">>]
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_double_2_failed" "It seems a bit unfair to have a match two on one..." 300 "<<set $scene.throw=false>>">>]
<</if>>
</div>/*#
#desc: sex game double penetration game 2 win
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.both_final = true>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 0>>
<<applyExperience 'bondage' 14 'very' $ALONE>>
<<applyExperience 'penis' 16 'very' $ALONE>>
<<if setup.getTotalValue("oral") > 17>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'skip' $ALONE>>
<<else>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'unbelievable' $ALONE>>
<</if>>
<<if setup.getTotalValue("anal") > 15>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'skip' $ALONE>>
<<else>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'unbelievable' $ALONE>>
<</if>>
<<setThreshold 'penis' 'machine_penis' 'final_victory'>>
<<if setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_7') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_7'
4
'event_psychiatrist_session_other_rrr_win_1'
false
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Your on-screen perspective shifts to give you a view of your indistinct avatar, the approaching Twin <<if $options.fem>>Empresses<<else>>Emperors<</if>> and the crowd behind. You lick your lips and relax your ass in anticipation of the twin Ultra-Cocks(tm) looming fore and aft. Fluttering your eyes up at the screen you spread your lips as the cock slides forward, humming around it in delight as its twin enters your hungry ass.<br>
<br>
Bound as you are, you can't contribute to your fucking save to suck and squeeze in accordance with the instructions on-screen. Pounded hard and deep from both ends, you shudder in your bonds, but remain focused on your task, slurping every centimetre and clenching down as the cock in your ass scrapes against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
Maintaining your rhythm even as the two thrusting dongs try to throw you off with their lack of synchronization, you watch the crowd in the background, picking out a "secret" sequence to enter using your twin dildo controllers, stroking and squeezing in a perfect combo, your efforts steadily bringing the double-ended thrusting into alignment.<br>
<br>
Working towards your goal, you have a double-insertion instant where, stuffed deep from either direction, the vibrator springs into position, buzzing strong against your sensitive <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>clit<</if>>. Adding to the cacophony of sensation, the dildo in your ass starts to vibrate as well, both dongs slowly retracting only to thrust forward yet again, as if trying to meet in the middle of your body.<br>
<br>
Jerking, squeezing, and slurping, you watch as the on-screen renditions of the Twin <<if $options.fem>>Empresses<<else>>Emperors<</if>> become more frantic, worry furrowing their brows in response to your continued survival. Matching their fragmenting focus by redoubling your efforts, you feel some of your restraints slacken and you know just what to do, throwing your body forward and backward to impale yourself even further on the twin Ultra-Cocks(tm).<br>
<br>
Ripples of ecstasy run through your body with each thrust and vibrations thrum through your <<if $player.body_ref.penis>>prostate<<else>>bum<</if>> and <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>clit<</if>>. You focus on your goal, holding back the oncoming orgasm as you push your body to the limit.<br>
<br>
Faces twisted, the Twin <<if $options.fem>>Empresses<<else>>Emperors<</if>> cum, flooding your on-screen avatar with their thick seed as the dual Ultra-Cocks(tm) hilt themselves in your body. Unable to breathe, you suck and squeeze on autopilot, humping and jerking frantically as you try to ride the cresting wave.<br>
<br>
Your vision starts to narrow and the dildos retract, the Twin <<if $options.fem>>Empresses<<else>>Emperors<</if>> collapsing to their knees as the word VICTORY! appears on screen. In real life you cum, crying out in pained pleasure as your over-stimulated <<if $player.body_ref.penis>><<getWordMyPenis>> explodes<<else>>vagina flows<</if>> with <<if $fetish.sissy>>sissy<<else>>girl<</if>> juices.<br>
<br>
Shuddering and panting as the aftershocks of the overwhelming <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>> runs through your body, you watch the cutscene as your avatar is released from its bonds and helped to its feet. Evidence of your triumph painted on your face and down your thighs, you stand tall as the lead Empress is forced to join the Twin <<if $options.fem>>Empresses<<else>>Emperors<</if>> in kneeling before you. Handed a collar, you lock it around her throat as she begs for mercy, following up with additional collars around the throats of the far more stoic Twins.<br>
<br>
Your new subjects drop to their knees in supplication and the humans in the audience cheer. Your triumph has not just won the day, but secured the safety of humanity for all time!<br>
<br>
The screen shimmers and fades, resuming "several months later" to show you, in full Empress garb, astride your throne, the old Empress chained and collared at your feet, her face buried in your crotch.<br>
<br>
Smiling up at the Twin <<if $options.fem>>Empresses<<else>>Emperors<</if>> standing guard to either side of your throne, you run your fingers lightly over one of their hard cocks... yes, it is good to be the ruler...<br>
<br>
Finally the main menu returns, your cartoon avatar adorned with your new Empress crown, the cocks constantly thrusting in and out of her in an animated loop.<br>
<br>
[<<moveTo "room_livingroom" "Well, that was fun!">>]
</div>/*#
#desc: sex game double penetration game 2 lose
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 10>>
<<set $npc_exgirlfriend.flags.bondage_machine.times_used++>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 0>>
<<applyExperience 'bondage' 14 'very' $ALONE>>
<<applyExperience 'penis' 16 'normal' $ALONE>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $ALONE>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
The twin Ultra-Cocks(tm) looming large on either end of your bound body, the game wastes no time going to work. On screen you are given an out of body experience, watching from the side as the Twin <<if $options.fem>>Empresses<<else>>Emperors<</if>> approach and put you in the same situation as the cartoon avatar on the game menu — cock-stuffed from both ends.<br>
<br>
Unable to move, you become a helpless receptacle of cock, the Ultra-Cock(tm) in your ass and mouth moving on different rhythms so the degree to which you are filled varies constantly, your throat bulging and your insides shifting to accommodate each deep, powerful thrust.<br>
<br>
Despite your immobility, you are presented with instructions on screen, commands hovering over each of the <<if $options.fem>>empresses<<else>>emperors<</if>> instructing you to suck and squeeze.<br>
<br>
<<if setup.getTotalValue("anal") >= 15>>
<<if $scene.throw>>
Sure your ass is more than up to taking the Ultra-Cock(tm) hard and deep... but you hold back, surrendering to your robotic dom without "fighting back."
<<else>>
Your expert ass easily rises to the occasion, relaxing to take the Ultra-Cock(tm) deep on each stroke and then squeezing tight to give it maximum sensation as it slides back out.
<</if>>
<<else>>
Muscles straining at its girth all you are able to do with your ass is try to relax as you are fucked all the way to your depths.
<</if>>
<br><br>
<<if setup.getTotalValue("oral") >= 15>>
<<if $scene.throw>>
Certainly your skill is such that deep-throating even an Ultra-Cock(tm) is well within your capacity... if you were trying. But you're not, instead getting face-fucked like a helpless bound slut...
<<else>>
You suck and lick for all you are worth, relishing each throat-bulging thrust as you show off your oral expertise.
<</if>>
<<else>>
You struggle to keep up with the massive cock thrusting down your throat, barely able to breathe much less properly suck or slurp its magnificence.
<</if>>
<br><br>
Struggling just to keep up with the double-ended pounding, you wait for something to change, for you to get an opening to "turn the tables" as happened in the previous levels. Exhaustion and frustration rising, you are near the end of your endurance when you spot another set of instructions: a separate scroll interleaved into the crowd of onlookers that you had thought merely a background.<br>
<br>
<<printThought "Secret level... secret technique">><br>
<br>
Taking hold of the dildo controllers, you try to squeeze and jerk as best you can. As you do, the cock in your ass starts to vibrate even as it continues to thrust, the timing of the Twin <<if $options.fem>>Empresses<<else>>Emperors<</if>> seeming to become more in sync.<br>
<br>
Just when you think you've figured things out, the vibrator crams against your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>. Howling around the <<getWordPenis>> filling your throat, you succumb to the overwhelming sensation of full-body pounding, your <<if $player.body_ref.penis>>prostate<<else>>rear<</if>> and genitals exploding with buzzing ecstasy.<br>
<br>
Mirroring your real-life loss of control, your on-screen avatar succumbs as well, fucked into oblivion by the two majestic <<if $options.fem>>Empresses<<else>>Emperors<</if>>, who withdraw as one to loom over you, still hard and glistening with your virtual juices.<br>
<br>
Your perspective shifts back to a first-person one and you helplessly stare up as your opponents step aside, framing your view of the lead Empress as she casually strolls over holding an ornate metal collar.<br>
<br>
Leaning down, she fastens it around your throat with a smile. "@@.generic_female1;See, just another weak human, ready to take your place at my feet...@@"<br>
<br>
She tugs on your leash and you crawl along behind, the humans in the gallery to your either side looking dejected and defeated as her guards fan through the crowd to take them prisoner, victims of your failure.<br>
<br>
Back in the real world, your restraints release as the words GAME OVER fade back into the main menu.<br>
<br>
[<<moveTo "room_livingroom" "Damn, this final level is really tough...">>]
</div>/*#
#desc: sex game vag menu
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.gender = "female">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You load up the "Demons Love Cunt" expansion,
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage() || setup.getChastityLevel() == 5>>
<<if setup.getChastityLevel() == 5>>
you gasp as you feel the front plug of your chastity device swell in size... as the dildo slides into you.<br>
<br>
<<printThought "Wait... how the heck is this a chastity belt if it will let me be fucked from either end?">><br>
<br>
Such thoughts are put aside as your body adjusts to its new, VERY filling presence and the main menu loads.
<<else>>
a dildo rising to slide its tip into your <<getWordVagina>> as the main menu loads.<br>
<</if>>
<br><br>
Demons' gender:
<label>Men: <<radiobutton "$scene.gender" "male" autocheck>></label>
<label>Women: <<radiobutton "$scene.gender" "female" autocheck>></label>
<label>Both: <<radiobutton "$scene.gender" "both" autocheck>></label><br>
<br>
[<<moveTo "room_home_auto_bondage_rrr_vag_1" "Demonically Trained." 1800>>] <<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level >= 2>> — STAGE CUMPLETE<</if>><br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level < 2>>
[@@.link_locked;STAGE LOCKED.@@]<br>
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_vag_2" "Demonic Descent." 1800>>] <<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level >= 3>> — STAGE CUMPLETE<</if>><br>
<</if>>
<<else>>
only for the game to pop up an error as the dildo bumps into your chastity belt. "@@.computer;ERROR: Obstacle detected, unable to interface for chosen game mode.@@"<br>
<</if>>
<<else>>
"@@.computer;ERROR: Player not properly endowed for selected game mode.@@"<br>
<</if>>
<br><br>
[<<moveTo "room_home_auto_bondage_rrr_root" "Back to the main game.">>]<br>
[<<moveTo "room_livingroom" "Change your mind, pack up and do something else.">>]
</div>/*#
#desc: sex game vag lvl 1
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You start the game and are immediately dumped into a cutscene. You find yourself staring up at an authoritarian <<if $scene.gender=="male">>Incubus, he<<else>>Succubus, she<</if>> leers down at you and stares into your eyes.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;You're finally awake...@@" He grins as your view pans down his naked, muscular body to his large, hard <<getWordPenis true>>. "@@.generic_male1;Ah, ah, not yet, slave. I am the Incubus King and you must prove yourself before you feel your Master's member. For only the most gifted of holes are worthy of my time.@@"
<<else>>
"@@.generic_female1;You're finally awake...@@" She grins as your view pans down her gorgeous, naked body to a large, hard <<getWordPenis false>>. "@@.generic_female1;Ah, ah, not yet, slave. I am the Succubus Queen and you must prove yourself before you feel your Mistress' member. For only the most gifted of holes are worthy of my time.@@"
<</if>>
<br><br>
The <<if $scene.gender=="male">>incubus snaps his<<else>>succubus snaps her<</if>> fingers and another, less endowed, and clearly subservient <<if $scene.gender=="female">>succubus<<else>>incubus<</if>> approaches.<br>
<br>
Bowing to their <<if $scene.gender=="male">>Master<<else>>Mistress<</if>> the second demon moves behind you... and in the real world the dildo thrusts deeper into your <<getWordVagina>>.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;Foolish human. We have barely begun! For you to be a worthy hole you must learn the art of pompoir — to flex your muscles so as to take complete responsibility of pleasing your partner. Such a simple concept... but one requiring the utmost of skill and focus.@@"
<<else>>
"@@.generic_female1;Foolish human. We have barely begun! For you to be a worthy hole you must learn the art of pompoir — to flex your muscles so as to take complete responsibility of pleasing your partner. Such a simple concept... but one requiring the utmost of skill and focus.@@"
<</if>>
<br><br>
A tutorial tip pops up explaining a handful of symbols and how they translate to what you should be doing with your cunt. A small warning notes that failure to perform will meet with immediate punishment.<br>
<br>
The instructions fade and your
<<if $scene.gender=="male">>
"Master"
<<else>>
"Mistress"
<</if>>
turns away with a smile as an initial sequence begins...<br>
<br>
<<if setup.getTotalValue("smart") > 12 && setup.getWillpower() > 0>>
[<<moveTo "room_home_auto_bondage_rrr_vag_1_success" "Think sharp, focus, and use your head to search for patterns in the sequence." 600 "<<set $scene.smart=true>><<spendWillpower 1>>">>] <<hint $options "Focusing this hard will cost willpower">><br>
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_vag_1_failed" "Try to use your head to search for patterns in the sequence." 600 "<<set $scene.smart=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 12 && setup.getWillpower() > 0>>
[<<moveTo "room_home_auto_bondage_rrr_vag_1_success" "Channel bimbo zen and commit yourself to the flow..." 600 "<<set $scene.smart=false>><<spendWillpower 1>>">>] <<hint $options "Focusing this hard will cost willpower">>
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_vag_1_failed" "Attempt to clear your mind and embrace the moment." 600 "<<set $scene.smart=false>>">>]
<</if>>
</div>/*#
#desc: sex game vag lvl 1 success
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level < 2>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level = 2>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.smart>>
With keen focus your entire attention focuses on the dildo inside of you as you squeeze and milk the dildo inside of you
<<else>>
With total depraved devotion you put all of yourself into the task at hand, feeling every centimetre of the glorious dildo inside of you as you squeeze and milk, your muscles twitching and pulsing on command
<</if>>
at behest of your demonic trainer. The cruel voice of the <<if $scene.gender=="female">>succubus<<else>>incubus<</if>> taunts you the whole time, reminding you that all humans are good for is to serve their demonic betters... and that all you are good for is to serve cock.<br>
<br>
Though your tormentor's words make you wet, you block out all but the next command, your pussy working like never before, vaginal walls straining as the challenge ramps higher — the dildo inside of you beginning to vibrate, and then alter in size as the demon tells you how your only purpose is to be human fuck-meat for its kind.<br>
<br>
You moan submissively, <<if $scene.smart>>your thoughts entirely focused on being what it demands<<else>>your entire being subsumed with the urge to be the perfect fuck-doll<</if>>.<br>
<br>
The dildo momentarily retracts and you think things are over... until you glance up to see the
<<if $scene.gender=="male">>
Incubus King approaching once again. "@@.generic_male1;Well, well, well... time for the final test, slut. Let us see how you handle a Master demon...@@"
<<else>>
Succubus Queen approaching once again "@@.generic_female1;Well, well, well... time for the final test, slut. Let us see how you handle a Demon Queen...@@"
<</if>>
<br><br>
Thicker and longer than ever before, the dildo thrusts back into you... but you are already deep in sub-space, the wonderful feeling of being fucked only pushing you to greater heights of ecstatic effort, your muscles straining and pumping through this final round until you are granted an orgasm, the dildo vibrating almost violently against your sore muscles as you cry out and strain against your restraints, voice almost hoarse by the time you finally look up to see the welcome words — "@@.computer;trial complete.@@"<br>
<br>
Your restraints release and you stagger back to your feet.<br>
<br>
[<<moveTo "room_livingroom" "Stand up.">>]
</div>/*#
#desc: sex game vag lvl 1 fail
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level < 1>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level = 1>>
<</if>>
<<applyExperience 'bdsm' 15 'terrible' $ALONE>>
<<applyFatigue 30>>
<<applyStress 5>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.smart>>
<<if setup.getTotalValue("smart") > 12>>
You try to apply your intellect to the problem and it works... until a minor slip-up causes the dildo to punish you with an agonising electric shock. The pain may serve to tighten you up per your instructions, but it also throws off your focus and you enter a spiral of shocks and mistakes that has
<<else>>
You try to search for a pattern or a trick to the task at hand, but you just can't seem to figure it out, your attempts to get ahead of things an utter failure that sees your efforts resulting in frequent agonising electric shocks. The pain may serve to tighten you up per your instructions... but in a nigh uncontrollable manner as it leaves
<</if>>
you thrashing against your restraints and whimpering through to the end of the lesson.
<<else>>
<<if setup.getTotalValue("bimbofication") > 12>>
Despite your lusty skills you can't seem to keep focused on your task. You'll rattle off several correct moves in a row — squeezing and rippling your muscles, only to lose the rhythm and be punished with an agonising shock that may serve to tighten you up per your instructions, but also disrupts your attention as you thrash against your restraints.
<<else>>
You attempt to embrace the rhythm of things... but you don't seem to be able to get yourself in tune with the whole situation, your vaginal squeezes always coming a little late resulting in painful shocks that may serve to tighten you up per your instructions... but not well enough as you spend the rest of the lesson crying out in pain and thrashing against your restraints.
<</if>>
<</if>>
<br><br>
As the timer ticks down, the Demon
<<if $scene.gender=="male">>
King re-appears to dismiss your failure. "@@.generic_male1;Pathetic human. You are unworthy of my time.@@"
<<else>>
Queen re-appears to dismiss your failure. "@@.generic_female1;Pathetic human. You are unworthy of my time.@@"
<</if>>
<br><br>
Exhausted and sore, you are grateful when the dildo finally retracts and the restraints of the Dreammaker apparatus release you.<br>
<br>
[<<moveTo "room_livingroom" "Stand up.">>]
</div>/*#
#desc: sex game vag lvl 2
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
The
<<if $scene.gender=="male">>
Incubus King appears before you upon his throne. "@@.generic_male1;So, you consider yourself worthy of my interest... and your training is quite impressive. Still, the true test is yet to come. I am throwing a party and you will be its entertainment. Show my guests the depths of pleasure lurking within your holes and make me proud. Few mortals could hope to survive such hellish pleasures but, should you survive, you will earn a place of honour as my personal cock-slave.@@"<br>
<br>
He grins, his
<<else>>
Succubus Queen appears before you upon her throne. "@@.generic_female1;So, you consider yourself worthy of my interest... and your training is quite impressive. Still, the true test is yet to come. I am throwing a party and you will be its entertainment. Show my guests the depths of pleasure lurking within your holes and make me proud. Few mortals could hope to survive such hellish pleasures but, should you survive, you will earn a place of honour as my personal cock-slave..@@"<br>
<br>
She smiles, her
<</if>>
demonic cock dripping with fiery cum, the sight of its unholy magnificence filling you with fear and lust.<br>
<br>
With a wave of <<if $scene.gender=="male">>his<<else>>her<</if>> infernal hand you are teleported to a grand, hellish hall. Demonic servants appear on either side of you — your virtual avatar soon bound in a position much the same as that in which your corporeal form is restrained.<br>
<br>
Guests begin to arrive; demons and devils of all sorts, from <<if $scene.gender=="male">>incubi<<elseif $scene.gender=="female">>succubi<<else>>incubi and succubi<</if>> to more brutish monsters and smaller imps, fallen angels, unholy <<if $scene.gender=="male">>priests and perverted nuns<<elseif $scene.gender=="female">>priestesses and perverted nuns<<else>>priests and priestesses, monks and nuns<</if>> mingle with powerful warlocks, every guest looking upon you with lust, each waiting until their <<if $scene.gender=="male">>King<<else>>Queen<</if>> arrives, and, after welcoming their honoured guests, welcomes them to avail themselves of you according to their whims and station.<br>
<br>
<<if setup.getTotalValue("stamina") >= 13 && setup.getWillpower() > 1>>
[<<moveTo "room_home_auto_bondage_rrr_vag_2_success" "Grit your teeth, focus, and endure as you put all that you have learned into effect." 600 "<<spendWillpower 2>>">>] <<hint $options "This will surely take a mighty act of will.">><br>
<<elseif setup.getWillpower() > 2>>
[<<moveTo "room_home_auto_bondage_rrr_vag_2_failed" "Grit your teeth, focus, and endure as you put all that you have learned into effect." 600 "<<spendWillpower 2>><<set $scene.effort=true>><<set $scene.spendWillpower=true>>">>] <<hint $options "This will surely take a mighty act of will.">><br>
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_vag_2_failed" "Attempt to endure and put all that you have learned into effect." 600 "<<set $scene.effort=true>><<set $scene.spendWillpower=false>>">>]<br>
<</if>>
[<<moveTo "room_home_auto_bondage_rrr_vag_2_failed" "Surrender to the oncoming infernal onslaught..." 600 "<<set $scene.effort=false>><<set $scene.spendWillpower=false>>">>]
<<else>>
You attempt to start your "Demonic Descent" but are instead presented with an image of the
<<if $scene.gender=="male">>
Incubus King. "@@.generic_male1;Such enthusiasm... but to attend my party you must prove yourself with ALL of your holes... better get practicing, slut.@@"
<<else>>
Succubus Queen. "@@.generic_female1;Such enthusiasm... but to attend my party you must prove yourself with ALL of your holes... better get practicing, slut.@@"
<</if>>
<br><br>
[<<moveTo "room_home_auto_bondage_rrr_root" "Time to put in more time with the base game.">>]<br>
[<<moveTo "room_livingroom" "Change your mind, pack up and do something else.">>]
<</if>>
</div>/*#
#desc: sex game vag lvl 2 success
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level < 3>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.vag_level = 3>>
<</if>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'terrible' $ALONE>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You metaphorically grit your teeth and give it your all, five cocks at a time filling your holes and hands as you jerk, suck and squeeze with every bit of your considerable skill.<br>
<br>
If you were not so focused on merely keeping up with instructions; in maintaining two holes of pompoir while sucking and stroking for your life, you would be awed at the variety of infernal characters that make use of your body... and how the mechanical dildos thrusting in and out of you manage to vary everything from size to stroke, to vibrations and painful shocks to differentiate the scores of demons and their allies that use your <<getWordVagina>> for their entertainment.<br>
<br>
From the biggest brutes to the smallest, yet still startlingly well-hung imps, to depraved human servants<<if $fetish.tentacle>>, tentacled creatures from the void,<</if>> and angels whose fall can only be compared to their blazing cocks... you pledge yourself to the infernal host, your <<if $scene.gender=="male">>King's<<else>>Queen's<</if>> faithful, devout servant.<br>
<br>
The night comes to an end with the
<<if $scene.gender=="male">>
Incubus King descending from his
<<else>>
Demon Queen descending from her
<</if>>
throne. Your hands are cramped and sore, your jaw hanging open and gaping holes leaking with lube... and yet you rally one final time, eagerly sucking, and then presenting both of your holes as your <<if $scene.gender=="male">>Master's<<else>>Mistress's<</if>> cock magically splits in twain to a final, screaming multi-orgasm so strong you nearly pass out.<br>
<br>
The three dildos finally retract and you hear the sound of your restraints release as if from a great distance. Looking up you are greeted with a cutscene epilogue — how your efforts brought a time of peace to the realms of hell; your example drawing more perverted humans into the stygian depths to satisfy its inhabitants' every carnal excess under your <<if $scene.gender=="male">>King's<<else>>Queen's<</if>> watchful gaze.<br>
<br>
[<<moveTo "room_livingroom" "That was intense...">>]
</div>/*#
#desc: sex game vag lvl 2 fail
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.effort && $scene.spendWillpower>>
<<applyExperience 'bdsm' 10 'normal' $ALONE>>
<<applyExperience 'stamina' 15 'terrible' $ALONE>>
<<elseif $scene.effort>>
<<applyExperience 'bdsm' 12 'very' $ALONE>>
<<applyExperience 'stamina' 13 'terrible' $ALONE>>
<<elseif $scene.spendWillpower>>
<<applyExperience 'bdsm' 14 'terrible' $ALONE>>
<<applyExperience 'stamina' 10 'terrible' $ALONE>>
<<else>>
<<applyExperience 'bdsm' 16 'unbelievable' $ALONE>>
<<applyExperience 'stamina' 8 'terrible' $ALONE>>
<</if>>
<<if $scene.effort>>
<<applyFatigue 100>>
<<else>>
<<applyFatigue 50>>
<</if>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
Now that they have permission, the party-goes descend upon you up to half a dozen at a time.<br>
<br>
<<if $scene.effort>>
You give it your all<<if $scene.spendWillpower>>, and then some<</if>> as you try to not just serve all of your myriad malefactors, but serve them well.<br>
<br>
Unfortunately, <<if $scene.spendWillpower>>gumption and <</if>>desire is insufficient to carry you through, as the constant stream of cocks pounding you in ever hole is too much for you to endure... doubly so as your errors are punished with painful shocks, a spiral of failure that has you twitching and moaning and gasping in pain-filled orgasm as the simulation draws to a close.
<<else>>
<<if $scene.spendWillpower>>Focus is no substitute for effort<<else>>Without effort<</if>> and the simulated gang-bang rapidly descends into writhing hell. Forced to service with both hands and all three holes your every mistake is punished with a painful shock... and mistakes you make in droves, unable to remotely keep up with the grueling pace set by the simulation as you end up writhing and moaning, your body all but betraying you with pain-fuelled orgasms that leave you an exhausted husk of a human being.
<</if>>
<br><br>
GAME OVER is your final assessment, your restraints releasing you to slump to the floor.<br>
<br>
<<if $scene.effort && $scene.spendWillpower>>
<<printThought "Who knew being gang-banged by demons required so much energy?">>
<<elseif $scene.effort>>
<<printThought "I tried... I guess I didn't try hard enough?">>
<<elseif $scene.spendWillpower>>
<<printThought "Seems like I need my body to be better able to keep up with my mental desires.">>
<<else>>
<<printThought "Turns out getting fucked to Hell and back requires work!">>
<</if>>
<br><br>
[<<moveTo "room_livingroom" "Stagger back to your feet." 180>>]
</div>/*#
#desc: sex game penis menu
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.gender = "female">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You load up the "Devils Love Cock" expansion,
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
"@@.computer;ERROR: Unable to properly interface with player for this activity. Please clear obstruction to continue play.@@"<br>
<br>
<<printThought "Yeah... guess this isn't going to work while I'm in chastity...">>
<<else>>
and you gasp as the lubricated sleeve slides over your member.<br>
<br><br>
Devil gender:
<label>Male: <<radiobutton "$scene.gender" "male" autocheck>></label>
<label>Female: <<radiobutton "$scene.gender" "female" autocheck>></label>
<label>Both: <<radiobutton "$scene.gender" "both" autocheck>></label><br>
<br>
[<<moveTo "room_home_auto_bondage_rrr_penis_1_1" "The Trials of Hell." 1800>>] <<if $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level >= 2>> — STAGE CUMPLETE<</if>><br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level < 2>>
[@@.link_locked;STAGE LOCKED.@@]<br>
<<elseif setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
[@@.link_locked;ERROR: UNABLE TO LOAD LEVEL, REMOVE REAR BLOCKAGE TO PROCEED.@@]<br>
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_1" "Devil's Doom." 1800>>] <<if $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level >= 3>> — STAGE CUMPLETE<</if>><br>
<</if>>
<</if>>
<<else>>
"@@.computer;ERROR: Player not properly endowed for selected game mode.@@"<br>
<</if>>
<br>
[<<moveTo "room_home_auto_bondage_rrr_root" "Back to the main game.">>]<br>
[<<moveTo "room_livingroom" "Change your mind, pack up and do something else.">>]
</div>/*#
#desc: sex game penis lvl 1 round 1
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 20>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You start the game and immediately gasp as the sheath immediately sucks tighter around your member, the smooth, slick texture heavenly in contrast to the hellish aesthetic projected through your visor.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;Welcome to hell,@@" a smirking devil states in greeting, "@@.generic_male1;hell is for the wicked, and you have been VERY bad... time to find out just how much can you handle?@@"
<<else>>
"@@.generic_female1;Welcome to hell,@@" a smirking devil-girl states in greeting, "@@.generic_female1;hell is for the wicked, and you have been VERY bad... time to find out just how much can you handle?@@"
<</if>>
<br><br>
That turns out to be as much "intro" as you get before your "tormentor" descends between your legs, the sleeve sliding up and down to match the lips of your devilish companion.<br>
<br>
An instruction pops up on the screen in front of you. "@@.computer;The pleasures of hell are beyond mortal ken... how long can you survive without succumbing?@@"<br>
<br>
The machine begins pumping away as you listen to the devil enthusiastically slurp on your <<getWordMyPenis>>. A slowly filling meter appears on screen with the title "@@.computer;ROUND 1.@@"<br>
<br>
<<printThought "This feels so good... but I think to progress I need to resist?">><br>
<br>
<<set _wpCost = Math.max(1,Math.floor($player.timebased.horny/50))>>
<<if setup.getWillpower() >= _wpCost>>
[<<moveTo "room_home_auto_bondage_rrr_penis_1_2" "Control your breathing and focus on resisting the devilishly intense pleasure." 600 "<<set $scene.resist=true>><<spendWillpower _wpCost>>">>] <<hint $options "Focusing this hard will cost willpower">><br>
<<else>>
[@@.link_locked;You lack the will to resist the forbidden pleasures of the machine.@@]<br>
<</if>>
[<<moveTo "room_home_auto_bondage_rrr_penis_1_2" "This feels too good, don't fight, just enjoy the orgasm." 600 "<<set $scene.resist=false>>">>]
</div>/*#
#desc: sex game penis lvl 1 round 2
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level < 1>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level = 1>>
<</if>>
<<if $scene.resist>>
<<changeHorny 20>>
<<else>>
<<applyExperience 'bdsm' 16 'terrible' $ALONE>>
<<playerOrgasm>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
You focus on controlling your breathing and resisting the urge to cum as the machine strokes away.<br>
<br>
The progress meter steadily fills, though each bit of progress has you fighting even harder to resist the urge to cum.<br>
<br>
You're panting with need as the final few drops fill and the meter reaches max. The machine halts, giving you a momentary respite... as two more devils appear along with a large "@@.computer;ROUND 2@@" announcement.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;You have shown some self-control in your introduction to hell,@@" the twin devils state with dual grins greeting, "@@.generic_male1;but let us see how you handle the twins...@@"
<<else>>
"@@.generic_female1;You have shown some self-control in your introduction to hell,@@" the twin devils state with dual grins greeting, "@@.generic_female1;but let us see how you handle the twins...@@"
<</if>>
<<if $scene.gender=="both">>
One female, one male, the two new devils
<<else>>
Identical twin devil<<if $scene.gender=="male">>-boys<<else>>-girls<</if>>,
<</if>>
descend between your legs,
<<if $player.body_ref.balls>>
one each suckling on each of your balls,
<<else>>
licking and kissing the base of your shaft where your balls once were,
<</if>>
the machine between your legs mimicking the feeling of lips massaging gently as the stroking of your shaft resumes.<br>
<br>
Whatever recovery the brief respite allowed is soon erased as you pant and struggle, your restraints as tight as ever, rendering you unable to escape the constant stimulation...<br>
<br>
<<set _wpCost = Math.max(2,Math.floor($player.timebased.horny/33))>>
<<if setup.getWillpower() >= _wpCost>>
[<<moveTo "room_home_auto_bondage_rrr_penis_1_3" "Keep fighting against the devilishly intense pleasure." 600 "<<set $scene.resist=true>><<spendWillpower _wpCost>>">>] <<hint $options "Focusing this hard will cost willpower">><br>
<<else>>
[@@.link_locked;You lack the will to resist the forbidden pleasures of the machine.@@]<br>
<</if>>
[<<moveTo "room_home_auto_bondage_rrr_penis_1_3" "You've fought long enough, surrender to orgasm." 600 "<<set $scene.resist=false>>">>]
<<else>>
You don't even bother resisting the warm, wonderful stimulation pumping away at your <<getWordMyPenis>>, in fact humping the sheath as much as your restraints will let you. The combination of sensations cause you to cum in moments... and then scream in agony as your climax is met with intense, painful shocks.<br>
<br>
"@@.computer;Mission Failed.@@" You are helpfully informed, as the devil re-appears licking <<if $scene.gender=="male">>his<<elseif $scene.gender=="female">>her<<else>>its<</if>> lips.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;Pathetic human. Your time in hell will be long indeed if that is all the control you have...@@"
<<else>>
"@@.generic_female1;Pathetic human. Your time in hell will be long indeed if that is all the control you have...@@"
<</if>>
<br><br>
The image fades to the sound of devilish laughter and your restraints release.<br>
<br>
You wince as the sheath retracts from your tired and punished <<getWordMyPenis>>.<br>
<br>
[<<moveTo "room_livingroom" "Stand up.">>]
<</if>>
</div>/*#
#desc: sex game penis lvl 1 round 3
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.resist>>
<<changeHorny 50>>
<<else>>
<<applyExperience 'bdsm' 18 'terrible' $ALONE>>
<<playerOrgasm>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
If anything, the suction is only more intense now than it was in round one, the sheath pumping and squeezing aggressively as <<if $player.body_ref.balls>>each of your balls are treated to mind-blowing stimulation of their own<<else>>your perineum is stimulated just as strongly<</if>>.<br>
<br>
Watching the oh-so-slow filling of the status gauge is its own torture as you thrash and strain against your restraints, unable to gain the slightest reprieve from the trio of devious digital devils between your legs as you somehow hold back from orgasm.<br>
<br>
You almost cry out in despair when the gauge fills and, rather than victory, you are greeted with the gut-punch of "@@.computer;ROUND 3.@@"<br>
<br>
The "twins" continue their teasing as the lead devil re-appears before you.
<<if $scene.gender=="male">>
"@@.generic_male1;Such a feisty one... But I am not defeated yet. I will have your cum — and with it, your soul!@@"<br>
<br>
He
<<else>>
"@@.generic_female1;Such a feisty one... But I am not defeated yet. I will have your cum — and with it, your soul!@@"<br>
<br>
She
<</if>>
smiles, revealing a long, slender tongue as it descends between your legs once more. The sheath now does more than just pumping, warming slightly in what you imagine to be hell-fire as <<if $fetish.sounding>>a demon-tongue urethral rod penetrates you...<<else>>sensations no mortal mouth could produce run up and down your cock<</if>> and the entire assembly begins vibrating with bone-rattling power.<br>
<br>
<<set _wpCost = Math.max(3,Math.floor($player.timebased.horny/25))>>
<<if setup.getWillpower() >= _wpCost>>
[<<moveTo "room_home_auto_bondage_rrr_penis_1_4" "Keep fighting against the infernal stimulation." 600 "<<set $scene.resist=true>><<spendWillpower _wpCost>>">>] <<hint $options "Focusing this hard will cost willpower">><br>
<<else>>
[@@.link_locked;You lack the will to resist the hellish pleasures of the machine.@@]<br>
<</if>>
[<<moveTo "room_home_auto_bondage_rrr_penis_1_4" "You're at the end of your rope, surrender to orgasm." 600 "<<set $scene.resist=false>>">>]
<<else>>
You survived round one... but the increased stimulation of three devils is just too much. You cum hard and explosively — your initial pleasure met with even stronger pain as electricity flows up and down your shaft <<if $player.body_ref.balls>>and through your balls <</if>>as you scream in orgasmic anguish.<br>
<br>
"@@.computer;Mission Failed.@@" You are helpfully informed, as the devil re-appears licking <<if $scene.gender=="male">>his<<elseif $scene.gender=="female">>her<<else>>its<</if>> lips.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;Poor human. Your loss was inevitable... but your struggle was oh so delicious...@@"
<<else>>
"@@.generic_female1;Poor human. Your loss was inevitable... but your struggle was oh so delicious...@@"
<</if>>
<br><br>
The devil's laugh echoes in your mind as you are left completely drained — and then some. The machine finally goes still, but the mere brush as it detaches is a fresh agony that it takes you several minutes to recover from, even after the restraints have released you from their firm grasp.<br>
<br>
[<<moveTo "room_livingroom" "Stand up.">>]
<</if>>
</div>/*#
#desc: sex game penis lvl 1 bonus round
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.resist>>
<<changeHorny 50>>
<<if setup.getTotalValue("stamina") > 15>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level < 2>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level = 2>>
<</if>>
<</if>>
<<else>>
<<applyExperience 'bdsm' 20 'terrible' $ALONE>>
<<playerOrgasm>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You might have hoped the vibrations would have had a slight numbing effect, but it is, in fact, the opposite.
<<if $scene.resist>>
The writhing, buzzing <<if $fetish.sounding>>urethral stimulator fucks you<<else>>stimulators accentuate every sensation<</if>> while your are sucked and stroked at an inhuman pace. Your every muscle tenses as you strain, begging for relief, your sanity fraying with each moment that you fight back against your body's need to cum...<br>
<br>
Time seems to slow, the gauge not even moving as each heart-beat seems to bring with it enough stimulative pleasure for a dozen orgasms. Through it all you, somehow, stand firm, dancing on the edge, excited, and fearful at what will happen when you fill the gauge...<br>
<br>
With the devil's own cruelty the gauge fills... only to swell longer, the voice in your ear taunting you
<<if $scene.gender=="male">>
"@@.generic_male1;Silly human, never trust a devil not to cheat...@@"
<<else>>
"@@.generic_female1;Silly human, never trust a devil not to cheat...@@"
<</if>>
<br><br>
<<if setup.getTotalValue("stamina") > 15>>
You almost break at the mocking words, yet manage to hold on, the gauge creeping forward again, filling, filling... and then everything stops.<br>
<br>
You had almost grown accustomed to the cacophony of stimulation and the sudden halt is mind-blowing in its own right. You scream as the most powerful ruin imaginable wracks your body, your muscles clenching and trembling in agony until you go completely limp, as drained as you are unsatisfied.
<<else>>
More than mere will, the intensity of stimulation strains your physical endurance. It's as if all of your blood is occupied in your and you feel light-headed, vision flickering for a moment... only for everything to stop as some sort of safety measure kicks in, the game ending with an error as you try to catch your breath.<br>
<br>
<<printThought "Damn... guess I need to work on the old cardio...">>
<</if>>
<<else>>
The stimulation, from within and without, vibrating and stroking and sucking every millimetre of your flesh is too much, and you give up your fight against the forthcoming orgasm.<br>
<br>
Your climax comes... and you scream in pain, electricity coursing through you as you thrash in agony, the urethral plug in particular feeling like a fiery spike as it bottles up your orgasm, turning your <<getWordMyPenis>> into a molotov of pain, finally leaking out only as the mechanisms withdraw leaving you dripping and crying in agony.
<</if>>
<br><br>
The restraints unlock and you all but fall off the machine, still panting with exertion as you recover from your ordeal splayed out on the floor.<br>
<br>
[<<moveTo "room_livingroom" "Stand up.">>]
</div>/*#
#desc: sex game penis lvl 2 round 1
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 50>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You boot up the "advanced" level of Devils Love Cock, your heart beating faster even before the sheath sucks a little tighter around your <<getWordMyPenis>>.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;Well, well, well...@@"
<<else>>
"@@.generic_female1;Well, well, well...@@"
<</if>>
You find yourself bound and staring up at a tall devil.
<<if $scene.gender=="male">>
"@@.generic_male1;It would seem you proved too resilient for my minions,@@"
<<else>>
"@@.generic_female1;It would seem you proved too resilient for my minions,@@"
<</if>>
they state, waving their hand to show your trio of prior tormentors being flogged.
<<if $scene.gender=="male">>
"@@.generic_male1;They will be punished severely for being bested by a human... but that still leaves the matter of you. Hell cannot neglect its... guest.@@"
<<else>>
"@@.generic_female1;They will be punished severely for being bested by a human... but that still leaves the matter of you. Hell cannot neglect its... guest.@@"
<</if>>
The devil smiles menacingly.
<<if $scene.gender=="male">>
"@@.generic_male1;I have a new game for you — one that you will find far HARDER to manage. Before you could merely resist and win but now? Now you will face the full powers of hell...@@"
<<else>>
"@@.generic_female1;I have a new game for you — one that you will find far HARDER to manage. Before you could merely resist and win but now? Now you will face the full powers of hell...@@"
<</if>>
<br><br>
You gasp as a swarm of devils leap onto you at once. In the physical world the sheath sucks tight, your holes filled from every direction as you are penetrated fore<<if $fetish.sounding>>, aft, and urethrally<<else>>and aft<</if>>.<br>
<br>
Your restraints seem to tighten further as dildos begin to thrust and you are immediately treated to an intense mechanical blow-job<<if $player.body_ref.balls>> and ball suck<</if>>.<br>
<br>
The devil laughs.
<<if $scene.gender=="male">>
"@@.generic_male1;Experience the hospitality of hell! To triumph all you have to do is cum...@@"
<<else>>
"@@.generic_female1;Experience the hospitality of hell! To triumph all you have to do is cum...@@"
<</if>>
<br><br>
<<printThought "Cum, wait, what?">><br>
<br>
The stimulation is so intense you doubt it will be long before you climax... but just before you reach that ecstatic crescendo the dildo in your mouth thrusts deep, violating your throat at the same time as your constantly stroked <<getWordMyPenis>> is electrocuted hard and painfully.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;Did you think it would be easy? Before you lies only ruin — surrender, or be doomed!@@"
<<else>>
"@@.generic_female1;Did you think it would be easy? Before you lies only ruin — surrender, or be doomed!@@"
<</if>>
<br><br>
The pain of the electrocution hasn't even ended and already the machines are thrusting and stroking away, the intensity already has you panting around the <<if $fetish.get_raped>>mouth-raping<<else>>face-fucking<</if>> dildo... and then you are groaning in frustration as the rear dildo thrusts deep against your prostate as everything freezes for a painfully ruined orgasm that leaves you twitching and desperate.<br>
<br>
The lead devil laughs as your ruin barely fades before your still hard, still sensitive <<getWordMyPenis>> is being sucked again...<br>
<br>
<<printThought "Ruins don't count? Maybe I should just give up...">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_2" "Fight on!" 600 "<<set $scene.resist=true>><<spendWillpower 1>>">>] <<hint $options "Choosing to endure this treatment will cost willpower">><br>
<<else>>
[@@.link_locked;You lack the will to endure the hellish pleasures of the machine.@@]<br>
<</if>>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_2" "This is too much, surrender." 600 "<<set $scene.resist=false>>">>]
</div>/*#
#desc: sex game penis lvl 2 round 2
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.lvl = 1>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'terrible' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
Even as you struggle to breathe around the dildo plowing your throat you pant and press on.<br>
<br>
The devil laughs.
<<if $scene.gender=="male">>
"@@.generic_male1;Foolish human! You cannot stand against infernal endurance! But perhaps I should attend to you myself.@@"
<<else>>
"@@.generic_female1;Foolish human! You cannot stand against infernal endurance! But perhaps I should attend to you myself.@@"
<</if>>
<br><br>
The devil may lean down between your legs... but there is no questioning that they are in charge. Their grinning lips engulf your <<getWordMyPenis>> as the sheath in the real world sucks even harder, vibrating and stroking rapidly <<if $fetish.sounding>>while the urethral plug flutters and fucks<<else>>and inescapably<</if>>.<br>
<br>
You shudder, sweating and panting, as you try to keep up with the constant intensity...<br>
<br>
<<if setup.getTotalValue("stamina") >= $player.timebased.horny/6>>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_3" "Keep going!" 60 "<<set $scene.resist=true>>">>]<br>
<<else>>
[@@.link_locked;You do not have the stamina to keep going... perhaps some time at the gym would be in order?@@]<br>
<</if>>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_3" "Give up." 600 "<<set $scene.resist=false>>">>]
<<else>>
You tap out and the game ends to the mocking laughter of devils.<br>
<br>
Your heart is pounding in your chest as the restraints release, your body painfully sensitive as you rise to your feet and stagger out of the room.<br>
<br>
[<<moveTo "room_livingroom" "That was intense...">>]
<</if>>
</div>/*#
#desc: sex game penis lvl 2 round infinite
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.resist>>
<<set $scene.lvl += 1>>
<<applyFatigue 25>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level < 3>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.penis_level = 3>>
<</if>>
<<set $scene.variant = random(1,5)>>
<<applyStress 3>>
<<else>>
<</if>>
<<if $scene.lvl > $npc_exgirlfriend.flags.bondage_machine.rrr.penis_endless>>
<<set $npc_exgirlfriend.flags.bondage_machine.rrr.penis_endless = $scene.lvl>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
<<switch $scene.variant>>
<<case 1>>
The devils continue to ravage you, as you nearly choke on simulated cock, your light-headedness making the subsequent ruin even more intense and soul-destroying.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;Surrender, mortal! You cannot survive the fires of hell!@@"
<<else>>
"@@.generic_female1;Surrender, mortal! You cannot survive the fires of hell!@@"
<</if>>
<<case 2>>
Though you continue to be spit-roasted and sucked focus seems to momentarily accentuate within, the urethra probe twisting and vibrating as you feel its ever textured bump. You moan desperately as it swells larger, seeming to block your orgasm until the dam is fit to burst, your eventual leaking, dribbling ruin one of over-sensitised agony.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;You are doomed, human! Your every orifice ours to violate and defile!@@"
<<else>>
"@@.generic_female1;You are doomed, human! Your every orifice ours to violate and defile!@@"
<</if>>
<<case 3>>
The sheath sucks hard at your <<getWordMyPenis>>, milking you so aggressively you can barely even call the resulting climaxes orgasms... more forced drainings that have you straining against your restraints in a futile effort to escape.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;With every climax I drink more of your soul! Keep postponing the inevitable, for your spirit is as delicious as you are damned.@@"
<<else>>
"@@.generic_female1;With every climax I drink more of your soul! Keep postponing the inevitable, for your spirit is as delicious as you are damned.@@"
<</if>>
<<case 4>>
The devils edge you for what seems like forever, your body so sensitive even the slightest movement could set you off, your eyes rolling back as you struggle to breathe around the dildo, the pressure against your prostate nigh unbearable as you desperately try to hump the oh-so-slowly moving sheath.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;Your pleasure is ours to control, your denial ours to prolong for eternity!@@"
<<else>>
"@@.generic_female1;Your pleasure is ours to control, your denial ours to prolong for eternity!@@"
<</if>>
<<case 5>>
You come the closest yet to a normal orgasm... only to be cut cruelly down at the last moment by a scorching electric shock that leaves you weeping... and yet still hard.<br>
<br>
<<if $scene.gender=="male">>
"@@.generic_male1;Feel the lightning of hell! Surrender or accept an eternity of torment!@@"
<<else>>
"@@.generic_female1;Feel the lightning of hell! Surrender or accept an eternity of torment!@@"
<</if>>
<<default>>
ERROR: unexpected!
<</switch>>
<br><br>
<<if $player.timebased.fatigue/$player.timebased.fatiguemax > 1.5>>
[@@.link_locked;You are too exhausted to keep pushing forward.@@]<br>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_3" "Game Over..." 60 "<<set $scene.resist=false>>">>]
<<elseif $player.timebased.stress > 90>>
[@@.link_locked;You are too stressed to continue playing.@@]<br>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_3" "Game Over..." 60 "<<set $scene.resist=false>>">>]
<<elseif $player.timebased.fatigue/$player.timebased.fatiguemax >= 1>>
You are a panting, drooling mess, the exertion of the devilish abuse exceeding your limits...<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_3" "Keep going!" 60 "<<set $scene.resist=true>><<spendWillpower 1>>">>] <<hint $options "Choosing to endure will cost willpower">><br>
<<else>>
[@@.link_locked;You are too mentally and physically exhausted to continue on.@@]<br>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_3" "Game Over..." 60 "<<set $scene.resist=false>>">>]
<</if>>
<<else>>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_3" "Keep going!" 60 "<<set $scene.resist=true>>">>]<br>
[<<moveTo "room_home_auto_bondage_rrr_penis_2_3" "Give up." 60 "<<set $scene.resist=false>>">>]
<</if>>
<<else>>
You've reached your limit and you surrender, a "@@.computer;GAME OVER@@" message appearing over the scene of the devils laughing as they gang-<<if $fetish.get_raped>>rape<<else>>bang<</if>> your body.<br>
<br>
"@@.computer;You survived <<=$scene.lvl>> eons. The high score is <<=$npc_exgirlfriend.flags.bondage_machine.rrr.penis_endless>>... recover, human, then try again to see how long you can last in hell!@@"<br>
<br>
<<printThought "Hmm, this must be like an endless runner type thing... An endless sucker?">><br>
<br>
[<<moveTo "room_livingroom" "That was intense...">>]
<</if>>
</div>/*#
#desc: streaming intro
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png" "streamer_dude">>
<div id="invframe" class="scrolltext">
You turn on your webcam and jump into the queue. You have to wait a few minutes for the next "pro" streamer to become available but you're soon being greeted by a smiling <<if $options.fem>>lady<<else>>dude<</if>> with blue hair and a headset. You have to resist gawking at the counter in the lower corner of the screen that lists how many subs <<he>> has, and how much money <<he>> makes from them!<br>
<br>
"@@.generic_male1;Hey! I'm <<=ps(setup.getNpcName("generic_male1", "custom", "F1yps73r"))>>, welcome to streaming! We'll hop into a match in a minute but I just wanted to privately say welcome and give you some tips. We'll be jumping in the co-op queue against another pro/am pairing but who wins matters less than being entertaining. You want to do a bit of banter, maybe go for those more exciting plays rather than being conservative, but most of all, have fun!@@"<br>
<br>
The <<guy>> seems really good-natured and welcoming, friendly and charismatic and you can see why <<he>>'s attracted an audience.<br>
<br>
<<He>> waits to see if you have any questions and then grins. "@@.generic_male1;Alright, we're going live, get ready to say hi to the world!@@"<br>
<br>
[<<moveTo "event_streaming_intro_2" "Here we go..." 600>>]
</div>/*#
#desc: streaming intro start game
#status: RELEASED 0.8.9.0
#ignore_spell: worntag
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming = { "tips" : 0 }>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png" "streamer_dude">>
<div id="invframe" class="scrolltext">
You go live, your screen changing to show the "streamer" overlay as you find yourself suddenly in front of <<=ps(setup.getNpcName("generic_male1", "custom", "F1yps73r"))>> massive audience, the chat scrolling fast as they shoot out greetings.<br>
<br>
Your role assigned at random the counter to match start is already ticking down and you only get a chance to read a couple of comments before it's time to start playing.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.generic_male2;Woo, check out the hottie playing HOTTIES!@@"
<<case "unisex">>
"@@.generic_male2;Nice look, fam!@@"
<<case "male">>
"@@.generic_male2;Wow, this dude is prettier than you are <<=setup.getNpcName("generic_male1", "custom", "F1yps73r")>>!@@"
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
"@@.generic_male2;Hey, welcome to the game!@@"<br>
<br>
"@@.generic_male1;Remember — just be yourself and have fun!@@" <<=setup.getNpcName("generic_male1", "custom", "F1yps73r")>> instructs as the match starts.<br>
<br>
You take a deep breath and try to ignore that you're on camera in front of literally a thousand people to focus on how you're going to approach the match...<br>
<br>
[<<moveTo "event_streaming_intro_3" "Just focus on playing well." 600 "<<set $scene.streaming.style='play'>>">>]<br>
[<<moveTo "event_streaming_intro_3" 'Follow <<=ps(setup.getNpcName("generic_male1", "custom", "F1yps73r"))>> lead — <<he>> is the professional, after all.' 600 "<<set $scene.streaming.style='follow'>>">>]<br>
[<<moveTo "event_streaming_intro_3" "Focus more on chat than the game." 600 "<<set $scene.streaming.style='show'>>">>]
</div>/*#
#desc: streaming intro play game
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.streaming.stage = 1>>
<<set $player.flags.hotties_game.times_played += 1>>
<<switch $scene.streaming.style>>
<<case 'play'>>
<<set $player.flags.hotties_game.wins_pug += 1>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<set $player.flags.streaming.followers = 1>>
<<case 'follow'>>
<<set $player.flags.hotties_game.wins_pug += 1>>
<<set _gaming = setup.getTotalValue("gaming")+2>>
<<applyExperience 'gaming' _gaming 'very' $EXPOSED>>
<<set $player.flags.streaming.followers = 12>>
<<case 'show'>>
<<set _gaming = setup.getTotalValue("gaming")-2>>
<<applyExperience 'gaming' _gaming 'little' $EXPOSED>>
<<set $player.flags.streaming.followers = 5>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png" "streamer_dude">>
<div id="invframe" class="scrolltext">
<<switch $scene.streaming.style>>
<<case 'play'>>
You hunker down and focus on playing to the best of your ability, ignoring <<=ps(setup.getNpcName("generic_male1", "custom", "F1yps73r"))>> attempts to engage in banter; though you listen to <<his>> tactical calls. The result is an effective match that the two of you win handily, but glancing at chat at the end it doesn't seem like you've exactly inspired interest.<br>
<br>
"@@.generic_male1;Good game.@@" <<=setup.getNpcName("generic_male1", "custom", "F1yps73r")>> states, "@@.generic_male1;And everyone thank our guest for dipping their toe into the streaming pool — if you show your support they might decide to make a thing of it, so be sure to like and subscribe!@@"<br>
<br>
Your trial session up you drop back to the main streaming menu... it would seem that your focus on play didn't exactly impress as you seem to have but a single subscriber. You'll probably need to change tactics if you have any hope of building up an audience.
<<case 'follow'>>
You don't have near the charisma to keep up with <<=ps(setup.getNpcName("generic_male1", "custom", "F1yps73r"))>> banter, but you do your best, trying to joke along with <<him>> while not distracting yourself too much from the game. The result is a close, but definitely exciting match that sees several momentum swings before the two of you claim a narrow victory.<br>
<br>
"@@.generic_male1;Hey! Let's give it to our guest! You're a natural at this,@@" <<=setup.getNpcName("generic_male1", "custom", "F1yps73r")>> states in congratulation, their words echoed by approval from chat. "@@.generic_male1;I hope you enjoyed this little sample of streaming, and everyone else — if you enjoyed our guest's performance make sure you show your support and they might decide to make a thing of it! So be sure to like and subscribe!@@"<br>
<br>
Your trial session up, you drop back to the main streaming menu... it would seem that you already have a dozen followers. It's nothing compared to <<=ps(setup.getNpcName("generic_male1", "custom", "F1yps73r"))>> audience, but for a single session you'd say it's pretty good.
<<case 'show'>>
You end up focusing more on chat than the game, struggling to keep up with the fast-scrolling comments and ending up losing the match.<br>
<br>
"@@.generic_male1;Good game... though maybe focus a little more attention on play — audience interaction is great, but some of them are watching for the game, so you can't totally neglect that.@@" <<=setup.getNpcName("generic_male1", "custom", "F1yps73r")>> advises as the score screen pops up. "@@.generic_male1;Anyway, I hope you enjoyed this little sample of streaming, and everyone else — if you enjoyed our guest's performance make sure you show your support and they might decide to make a thing of it! So be sure to like and subscribe!@@"<br>
<br>
Your trial session up you drop back to the main streaming menu... it would seem that your efforts to appeal to chat has picked you up a handful of followers. It's nothing compared to <<=ps(setup.getNpcName("generic_male1", "custom", "F1yps73r"))>> audience, but it's at least a start...
<<default>>
ERROR: unexpected scene.streaming.style <<=$scene.streaming.style>>
<</switch>>
<br><br>
[<<moveTo "event_streaming_first_1" "Try your first solo stream..." 60>>]<br>
[<<moveTo "room_livingroom" "Get up from the computer." 60>>]
</div>/*#
#desc: first time streaming
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.streaming.stage = 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You boot up the streaming client for your first solo stream.<br>
<br>
<<if $player.flags.streaming.followers > 10>>
Of your dozen followers, about a third look to currently be online.
<<elseif $player.flags.streaming.followers == 1>>
To your slight surprise it would appear your lone follower is online.
<<else>>
It looks like a couple of your followers are online.
<</if>>
<br><br>
<<if !setup.checkOutsideDecency()>>
Before turning on your camera you check your outfit.<br>
<br>
<<printThought "Hmm... I wouldn't go out like this... so I don't think I want to show myself on stream, either.">><br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
<<else>>
[<<moveTo "event_streaming_first_2" "Setup a room and start streaming." 60>>]
<</if>>
</div>/*#
#desc: first time streaming - game start
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You start up a room and join a public queue, attracting a couple of randos as well as online followers.<br>
<br>
<<printThought "Alright, <<=$player.first_name>> — let's see what we can do to impress and maybe gain a few more followers...">><br>
<br>
It looks like you're going to be playing support as "Chastity the Devoted."
<<if setup.checkItemTypeWorn("cage")>>
You smile in amusement — you wonder how your followers would react if they knew how accurate that name really was feeling the <<if setup.isCage()>>rigid cage locked onto your <<getWordMyPenis false>><<else>>tight chastity belt locked around your hips<</if>>.<br>
<br>
<<elseif $player.sec_style.submission.chastity != "">>
You consider what it would be like to play locked in chastity... sure nobody other than you would know but still...<br>
<br>
<<printThought "Wait, what am I thinking? It's bad enough I have to be locked at work, why would I do that on my free time?">><br>
<br>
<</if>>
The counter is ticking down until the start of the match...<br>
<br>
[<<moveTo "event_streaming_first_3" "Focus on winning." 1800 "<<set $scene.streaming.style='focused'>>">>]<br>
[<<moveTo "event_streaming_first_3" "Try to have fun and engage chat while you play." 1800 "<<set $scene.streaming.style='fun'>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10 || $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_streaming_first_3" "You're playing support — let out your inner healslut." 1800 "<<set $scene.streaming.style='slut'>>">>]
<<else>>
[@@.link_locked;You don't have the "courage" to play up being a healslut on stream.@@]
<</if>>
</div>/*#
#desc: first time streaming - play
#status: RELEASED 0.8.9.0
#ignore_spell: worntag
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "gaming" "hotties" "streamer">>
<<set $player.flags.hotties_game.times_played += 1>>
<<switch $scene.streaming.style>>
<<case "focused">>
<<set $player.flags.hotties_game.wins_pug += 1>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'very' $EXPOSED>>
<<case "fun">>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<case "slut">>
<<set $player.flags.hotties_game.wins_pug += 1>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'little' $EXPOSED>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.streaming.style>>
<<case "focused">>
You scale down the chat overlay as small as it will go to focus on the game, the result is you carrying your team to victory, but with only minor fanfare from the viewers, the overall feedback seemingly summed up in a single comment:
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.generic_male2;It's nice to see a girl that's got some skills, but you're acting so serious! Smile a bit, show some personality! It's not really worth watching if we don't get to know you.@@"
<<case "unisex">>
"@@.generic_male2;You're pretty good, but you're so generic, no personality, no style... hell I can't even tell what gender you are!@@"
<<case "male">>
"@@.generic_male2;You're pretty good, and a bit cute, but, like, smile sometime and show some personality! Otherwise I might as well be just watching replays.@@"
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<<case "fun">>
You focus on having fun, being yourself, and just enjoying the game, reacting to chat in lulls and overall not taking things too seriously. In the end your team narrowly loses, but not after you made a play of the game epic save that, alas, your teammates were unable to leverage into victory.<br>
<br>
Chat, which has been lively, and even grown a bit since you started playing, comforts your loss. One of them even throws you a tip! It's only a single credit but, hey, you just got paid for playing a game! You can't find who sent you the tip, but one comment in particular seems to sum up the general vibe of chat.
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.generic_male2;Can't win 'em all, but you played pretty good for a girl — and easy on the eyes, I may check you out again sometime.@@"<br>
<br>
<<printThought "That was a bit backhanded, but I guess I can use all the followers I can get at this point...">>
<<case "unisex">>
"@@.generic_male2;You can't win 'em all, but you can, and do, look cute doing it!@@"
<<case "male">>
"@@.generic_male2;These things happen, man — but you're pretty fun to watch, I may check you out again sometime.@@"
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<<case "slut">>
You spend the match moaning lustily, talking about how horny it makes you to make your tank all big and full of... health, gushing whenever <<he>> takes down one of your foes about how you'll reward <<him>> after the match, how glad you are that <<he>>'s protecting your "innocence" from the vile enemy and how eager you are to make it up to <<him>>...<br>
<br>
Whether due to your skill, or your encouragement, your tank carries the team to victory, echoing chat's assessment that you're a "horny slut." <br>
<br>
"@@.pc;Horny for you, <<master>>!@@" You moan, just as the play of the game finishes and you're dumped out into the general queue.<br>
<br>
Chat has been excited by your behaviour the whole game, but one comment in particular stands out.
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
"@@.generic_male2;What a horny slut! I'd love to see you in something more revealing, but you've already got the attitude to be one of my favourite streamers, here, have a tip!@@"
<<case "unisex">>
"@@.generic_male2;Dang, I don't usually go in for androgynous streamers, but the sound of your moans really does something for me. I'm throwing you a tip — I hope you keep at it, you've got a real future in streaming!@@"
<<case "male">>
"@@.generic_male2;Damn, your voice sounds so hot I almost forgot you were a dude<<if $fetish.sissy>>, or maybe you're a sissy? Yeah, I bet you are... and I can't wait to see you dressing more appropriately on stream.<<else>>Or maybe you're just dressed like one? Either way, you're pretty hot, even moreso once you ditch that dull outfit for something sexier.<</if>> You femboys always end up being the biggest sluts after no time at all!@@"
<<default>>
ERROR: unhandled worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<<default>>
ERROR: unexpected scene.streaming.style <<=$scene.streaming.style>>
<</switch>>
<br><br>
The stream auto-closes with an animated fanfare. "Congratulates on running your first stream! To continue you should choose a streaming handle." <br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.streaming.streamername" "" autofocus>><br>
<br>
[<<moveTo "event_streaming_first_4" "Confirm your streaming handle." 30>>]
<<else>>
[<<link "Enter your streaming handle">><<openDialog "Enter your streamer handle:" "dialog_selectNameStreamer">><</link>>]
<</if>>
</div>/*#
#desc: dialog box for choosing your streaming name
#status: RELEASED 0.8.9.0
#*/
<center>
<<textbox "$scene.streaming.streamername" "" autofocus>>
</center>
<br>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'event_streaming_first_4'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: first time streaming - choose alias + results
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.streaming.streamername != "">>
<<set $player.flags.streaming.name = $scene.streaming.streamername>>
<<switch $scene.streaming.style>>
<<case "focused">>
<<set $scene.streaming.followers = 4>>
<<set $scene.streaming.tips = 0>>
<<case "fun">>
<<set $scene.streaming.followers = 6>>
<<set $scene.streaming.tips = 1>>
<<case "slut">>
<<set $scene.streaming.followers = 10>>
<<set $scene.streaming.tips = 10>>
<</switch>>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
<<set $scene.streaming.followers *= 2>>
<<case "male">>
<<set $scene.streaming.followers *= .5>>
<<case "unisex">>
<<set $scene.streaming.followers *= 1>>
<</switch>>
<<include "calcStreamerDashboard">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.streaming.streamername == "">>
You need to enter a streamer alias!<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.streaming.streamername" "" autofocus>><br>
<br>
[<<moveTo "event_streaming_first_4" "Confirm your streaming handle." 30>>]
<<else>>
[<<link "Enter your streaming handle">><<openDialog "Enter your streamer handle:" "dialog_selectNameStreamer">><</link>>]
<</if>>
<<else>>
You enter your streamer alias of <<=$scene.streaming.streamername>> and the screen transitions to your streamer status dashboard.<br>
<br>
<<include "streamerDashboard">>
<<if $scene.streaming.tips > 0>>
<<printThought "Cool, <<=$scene.streaming.tips>> in tips! It's not much, but every credit helps!">><br>
<br>
<</if>>
<<if $scene.streaming.followers == 2>>
<<printThought "Hmm... seems like I need to change my approach if I'm going to grow my channel... maybe a different outfit would help?">>
<<elseif $scene.streaming.followers >= 20>>
<<printThought "Wow... it looks like I'm doing something right if I'm gaining followers this quickly, but is this what I want to do?">>
<<elseif $scene.streaming.followers >= 10>>
<<printThought "Not bad for a first stream, but there's gotta be a way to grow my brand faster...">>
<<else>>
<<printThought "Well, that's not nothing on the follower count, but this is going to be slow-going if I don't find a hook. Maybe changing my style or playing up a certain personality would help?">>
<</if>>
<br><br>
You go to close the streaming status window and the plug-in crashes.<br>
<br>
<<printThought "Heh, well I guess some things never change...">><br>
<br>
<<if !$player.sec_style.sex.camgirl && setup.hasFreeTime($now, $player, $currentTasks, 4000) && (setup.checkItemOwned("basic_dildo") || setup.checkItemOwned("horse_dildo") || setup.checkItemOwned("dog_dildo") || setup.checkItemOwned("large_dildo") || setup.checkItemOwned("dragon_dildo"))>>
As you sit back and stare at the webcam over your computer even more ideas suddenly spin in your head...<br>
<br>
[<<moveTo "event_camgirl_intro_enthusiast_1" "Streaming? How about... camming?" 60 "<<set $scene.stream=true>>">>]<br>
[<<moveTo "event_camgirl_intro_enthusiast_1" "Gaming is one thing, but you aren't interested in doing it on camera." 60 "<<set $scene.stream=false>>">>]
<<else>>
[<<moveTo "room_livingroom" "Do something else." 60>>]
<</if>>
<</if>>
</div><<set $scene.streaming.income = Math.ceil(.001*$player.flags.streaming.followers + $player.flags.streaming.subs/100 + .02*$player.flags.streaming.doms + $scene.streaming.tips)>>
<<addCredits $scene.streaming.income>>You currently have:
<<=$player.flags.streaming.followers.toLocaleString()>> followers bringing in <<=Math.ceil(.001*$player.flags.streaming.followers)>> credits of ad revenue per streaming session.<br>
<<if $player.flags.streaming.followers > 99>>
<<=$player.flags.streaming.subs.toLocaleString()>> subscribers contributing <<=Math.ceil($player.flags.streaming.subs/100).toLocaleString()>> credits per streaming session.<br>
<<else>>
You cannot gain subscribers until you have at least 100 followers.<br>
<</if>>
<<if $player.flags.streaming.doms > 0>>
<<=$player.flags.streaming.doms.toLocaleString()>> domscribers ordering you to slut it up, and contributing <<=Math.ceil(.02*$player.flags.streaming.doms).toLocaleString()>> credits per streaming session.<br>
<</if>>
<<if $player.flags.streaming.cumScriberUnlock>>
<<=$player.flags.streaming.cum.toLocaleString()>> elite cumtributors feeding your voracious, depraved thirsts with <<=setup.cumtomL($player.flags.streaming.cum*30/7).toLocaleString()>> of cum per day.<br>
<</if>>
<br>
<<if $scene.streaming.results>>
In your last session you:<br>
<<if $scene.streaming.followers > 0>>
Gained
<<else>>
Lost
<</if>>
<<=$scene.streaming.followers.toLocaleString()>> followers<br>
<<if $player.flags.streaming.subs > 0>>
<<if $scene.streaming.subs > 0>>
Gained
<<else>>
Lost
<</if>>
<<=$scene.streaming.subs.toLocaleString()>> subscribers<br>
<</if>>
<<if $player.flags.streaming.doms > 0>>
<<if $scene.streaming.doms > 0>>
Gained
<<else>>
Lost
<</if>>
<<=$scene.streaming.doms.toLocaleString()>> domscribers<br>
<</if>>
<<if $player.flags.streaming.cum > 0>>
<<if $scene.streaming.cum > 0>>
Gained
<<else>>
Lost
<</if>>
<<=$scene.streaming.cum.toLocaleString()>> elite cumtributors<br>
<</if>>
<br>
<<if $scene.streaming.subs>>
Bringing in a total of <<=$scene.streaming.income.toLocaleString()>> credits, you also earned <<=$scene.streaming.tips.toLocaleString()>> credits in tips.
<<else>>
Without subs you do not earn ad revenue, but you did earn <<=$scene.streaming.tips.toLocaleString()>> credits in tips.
<</if>>
<br><br>
<</if>>/*#
#desc: stream: root
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.tips = 0>>
<<set $scene.streaming.results=false>>
<<include "calcStreamerVisual">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<include "streamerDashboard">>
<<include "streamerVisual">>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3800)>>
You are about to start streaming when you
<<if !setup.hasFreeTime($now, $player, $currentTasks, 3800, true)>>
remember you have something scheduled soon.<br>
<br>
<<printThought "Wouldn't want to interrupt things mid-stream. I'll just hop on some other time.">>
<<else>>
are informed that there is some server maintenance going on.<br>
<br>
<<printThought "Dang, maybe some other time.">>
<</if>>
<br>
<<elseif !setup.checkOutsideDecency() && (setup.getTotalValue("bimbofication") + setup.getTotalValue("humiliation")) <= 20>>
You would need to be either more sex-crazed, or more accustomed to humiliation to possibly consider streaming looking like this... <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<else>>
<<if $player.flags.streaming.stage <= 2>>
[<<moveTo "event_streaming_normal_1" "Launch a streaming session." 60>>]<br>
<<else>>
You consider what sort of stream you want to do...<br>
<br>
[<<moveTo "event_streaming_normal_1" "Launch a normal streaming session." 60>>]<br>
<<if $player.flags.streaming.stage >= 3>>
[<<moveTo "event_streaming_slutty_1" 'Launch a slutty "After Dark" streaming session.' 60>>]<br>
<</if>>
<<if $player.flags.streaming.stage == 3 && State.hasPlayed("event_streaming_whore_invite_1") && !State.hasPlayed("event_streaming_whore_first_10")>>
[<<moveTo "event_streaming_whore_first_1" 'Account approved; start your first XXXstream session!' 60>>]<br>
<</if>>
<<if $player.flags.streaming.stage >= 4>>
[<<moveTo "event_streaming_whore_1" 'Launch an anything-goes THOT stream.' 60>>]<br>
<</if>>
<<if $player.flags.streaming.stage >= 5>>
[<<moveTo "event_streaming_extreme_1" 'Screw it, or, rather, screw you; strap into your Dreammaker for a "pulse-pounding" audience participation fuck-stream.' 60>>]<br>
<</if>>
<</if>>
<</if>>
<br>
[<<moveTo "room_livingroom" "Do not stream today." 60>>]
</div><<if !$scene.streaming>>
<<set $scene.streaming = {}>>
<</if>>
<<if !$scene.streaming.hasOwnProperty("tips")>>
<<set $scene.streaming.tips = 0>>
<</if>>
<<if setup.checkNaked()>>
<<set $scene.streaming.streamer_clothing = "naked">>
<<elseif setup.isBodySlotVisible("tits")>>
<<set $scene.streaming.streamer_clothing = "topless">>
<<elseif setup.checkItemTypeWorn("panties") && setup.checkItemVisible(setup.getItemFromType("panties")) && (!setup.checkItemTypeWorn("bra", true) || setup.checkItemVisible(setup.getItemFromType("bra", true)) && setup.getItemObjFromType("bra", true).specific == "bra")>>
<<switch setup.analyzeWornTags(['cute','bold','sissy','male', 'slutty'])>>
<<case 'cute'>>
<<set $scene.streaming.streamer_clothing = "underwear_cute">>
<<case 'slutty'>>
<<set $scene.streaming.streamer_clothing = "underwear_slutty">>
<<case 'bold'>>
<<set $scene.streaming.streamer_clothing = "underwear_bold">>
<<case 'sissy'>>
<<set $scene.streaming.streamer_clothing = "underwear_sissy">>
<<case 'male'>>
<<set $scene.streaming.streamer_clothing = "underwear_male">>
<<default>>
<<set $scene.streaming.streamer_clothing = "underwear">>
<</switch>>
<<elseif setup.checkVisibleClothingTag("maid") > 60>>
<<if setup.checkVisibleClothingTag("slutty") > 50 && setup.checkVisibleClothingTag("slutty") + setup.calcBareSkin() > 70>>
<<set $scene.streaming.streamer_clothing = "maid_slutty">>
<<else>>
<<set $scene.streaming.streamer_clothing = "maid">>
<</if>>
<<elseif setup.checkVisibleClothingTag("schoolgirl") > 60>>
<<if setup.checkVisibleClothingTag("slutty") > 50 && setup.checkVisibleClothingTag("slutty") + setup.calcBareSkin() > 70>>
<<set $scene.streaming.streamer_clothing = "schoolgirl_slutty">>
<<else>>
<<set $scene.streaming.streamer_clothing = "schoolgirl">>
<</if>>
<<elseif setup.checkVisibleClothingTag("goth") > 60>>
<<if setup.checkVisibleClothingTag("slutty") > 50 && setup.checkVisibleClothingTag("slutty") + setup.calcBareSkin() > 70>>
<<set $scene.streaming.streamer_clothing = "goth_slutty">>
<<else>>
<<set $scene.streaming.streamer_clothing = "goth">>
<</if>>
<<elseif setup.checkVisibleClothingTag("latex") > 60>>
<<set $scene.streaming.streamer_clothing = "latex">>
<<elseif setup.checkVisibleClothingTag("fetish") > 60>>
<<set $scene.streaming.streamer_clothing = "fetish">>
<<elseif setup.checkVisibleClothingTag("slutty") > 50 && setup.checkVisibleClothingTag("slutty") + setup.calcBareSkin() > 70>>
<<set $scene.streaming.streamer_clothing = "slutty">>
<<elseif setup.checkVisibleClothingTag("sleepwear") > 40 || setup.checkTopBodySlot('tits','top') && setup.checkItemTag(setup.checkTopBodySlot('tits','top'), ["sleepwear"]) && (setup.checkVisibleClothingTag("sleepwear") + setup.calcBareSkin() > 70)>>
<<if setup.analyzeWornTags(['fetish'])>>
<<set $scene.streaming.streamer_clothing = "fetish">>
<<else>>
<<set $scene.streaming.streamer_clothing = "sleep">>
<</if>>
<<else>>
<<set $scene.streaming.streamer_clothing = setup.computeWorstGender() + "_" + setup.analyzeWornTags(["casual","office","formal","gym"])>>
<</if>>
<<set $scene.streaming.streamer_makeup = setup.getCurrentMakeup()>>
<<if $scene.streaming.streamer_makeup != "">>
<<if $player.makeup.messed > 50>>
<<set $scene.streaming.streamer_makeup = "ruined">>
<</if>>
<<else>>
<<set $scene.streaming.streamer_makeup = "none">>
<</if>>
<<set $scene.streaming.collar = setup.checkItemTypeTag('choker', ['leash_attachment'])>>You take a moment to check yourself in the camera before you go "live."
<<switch $scene.streaming.streamer_clothing>>
<<case 'naked'>>
You are naked... which is a great way to show off your
<<switch setup.calcBreastSize()>>
<<case "massive">>
huge breasts.
<<case "large">>
large breasts.
<<case "medium">>
breasts.
<<case "small">>
small breasts.
<<case "none">>
flat chest.
<</switch>>
And, down below
<<if $player.body_ref.penis>>
the
<<if setup.checkItemTypeWorn("cage")>>
imprisoned <<if $player.body.penissize[0] > 4>>monster<<else>><<getWordMyPenis false>><</if>>
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
tiny <<getWordMyPenis>>
<<case 2 3>>
average <<getWordMyPenis>>
<<case 4 5>>
large <<getWordMyPenis>>
<<case 6>>
massive <<if $player.body_ref.horsecock && $player.body_ref.knot>>dragon dick<<elseif $player.body_ref.horsecock>>horsecock<<elseif $player.body_ref.knot>>knot<<else>>cock<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
between your legs.
<<else>>
your sleek slit.
<</if>>
<<case 'underwear_cute'>>
You are dressed in cute underwear, teehee!
<<case 'underwear_bold'>>
You are sporting bold underwear, ready to take charge in the bedroom... or the battlefield?
<<case 'underwear_slutty'>>
You are sporting very slutty underwear, you slutty slut.
<<case 'underwear_sissy'>>
You are dressed in nothing but <<if $fetish.sissy>>sissifying<<else>>frilly<</if>> underwear
<<case 'underwear'>>
You are dressed in your underwear.
<<case 'underwear_male'>>
You are dressed like a dude in boxer shorts... why?
<<case 'topless'>>
You are "dressed" as a topless titty streamer,
<<switch setup.calcBreastSize()>>
<<case "massive">>
your huge breasts on full display.
<<case "large">>
your large breasts on full display.
<<case "medium">>
your breasts on full display.
<<case "small">>
showing off your small breasts.
<<case "none">>
showing off your flat chest.
<</switch>>
<<case 'maid'>>
You are dressed as a cute maid.
<<case 'maid_slutty'>>
You are dressed as a slutty maid.
<<case 'schoolgirl'>>
You are dressed as a cute schoolgirl.
<<case 'schoolgirl_slutty'>>
You are dressed as a slutty schoolgirl.
<<case 'goth'>>
You are rocking a goth style.
<<case 'goth_slutty'>>
You are rocking a slutty goth style.
<<case 'slutty'>>
You are dressed like a slut.
<<case 'latex'>>
You are dressed in latex, kinky.
<<case 'fetish'>>
You are dressed fetishistically.
<<case 'slutty'>>
You are dressed very slutty.
<<case 'sleep'>>
You are dressed for bed.
<<case 'female_casual'>>
You are dressed casually, a girl on her day off.
<<case 'female_office'>>
You are dressed like a businesswoman.
<<case 'female_formal'>>
You are dressed feminine and formal.
<<case 'female_gym'>>
You are dressed to get your sweat on.
<<case 'unisex_casual'>>
You are dressed casual and gender neutral.
<<case 'unisex_office'>>
You are dressed neutral like a nigh-faceless office worker.
<<case 'unisex_formal'>>
You are dressed gender-neutral, but in a high-class, formal style.
<<case 'unisex_gym'>>
You are dressed to blend in at the gym.
<<case 'male_casual' 'male_'>>
You are dressed like yet another "dude."
<<case 'male_gym'>>
You are dressed a gym bro.
<<case 'male_office'>>
You are dressed like a working stiff on his way to the office.
<<case 'male_formal'>>
You are dressed for a formal affair.
<<default>>
ERROR: unexpected scene.streaming.streamer_clothing <<=$scene.streaming.streamer_clothing>>
<</switch>>
<<switch $scene.streaming.streamer_makeup>>
<<case "none">>
You are not wearing any makeup.
<<case "ruined">>
Your makeup is ruined; lipstick smudged, mascara running down your cheeks as if you had been crying.
<<case "nomakeupmakeup">>
Your "no makeup" makeup subtly smooths out any imperfections in your face.
<<case "normalmakeup">>
You are wearing normal, feminine makeup.
<<case "camgirl">>
You are wearing heavy, eye-catching makeup.
<<case "egirl">>
You are wearing very thick, eGirl throwback makeup.
<<case "expertmakeup">>
You are wearing bold, goth-inspired makeup.
<<case "moviestar">>
You are wearing expertly applied red-carpet worthy makeup.
<<case "ultimatebimbo">>
Your makeup was put on like a trowel, you look like a total bimbo slut.
<<case "sissy_doll">>
Your makeup has you looking like a cute <<if $fetish.sissy>>sissy <</if>>doll.
<<case "qtpie">>
Your makeup has you looking like a real cutie pie.
<<case "camgirl">>
Your makeup screams camgirl.
<<case "egirl">>
Your gives you the look of a hip e-girl.
<<default>>
ERROR: unexpected scene.streamer_makeup <<=$scene.streaming.streamer_makeup>>
<</switch>>
<<if $scene.streaming.collar>>
Wrapping it all off you are wearing what is very obviously a BDSM slave collar.
<</if>>
<br><br><<include "calcStreamerVisual">>
<<include "calcStreamerBonus">>
<<if $scene.streaming.followerChange <= -$player.flags.streaming.followers>>
<<set $scene.streaming.followerChange = 1-$player.flags.streaming.followers>>
<<elseif !$scene.streaming.followerChange && $scene.streaming.followerChange != 0>>
ERROR: undefined follower Change! Please upload save to discord so this can be fixed.
<<set $scene.streaming.followerChange = 0>>
<<else>>
<<set $scene.streaming.followerChange = Math.ceil($scene.streaming.followerChange)>>
<</if>>
<<set $scene.streaming.followerChange = setup.normalizeStreamerChange($player.flags.streaming.followers, $scene.streaming.followerChange, 0)>>
<<set $player.flags.streaming.followers += $scene.streaming.followerChange>>
<<if $player.flags.streaming.followers >= 100>>
<<if $scene.streaming.subsChange <= -$player.flags.streaming.subs>>
<<set $scene.streaming.subsChange = 1-$player.flags.streaming.subs>>
<</if>>
<<set $scene.streaming.subsChange = setup.normalizeStreamerChange($player.flags.streaming.subs, $scene.streaming.subsChange, 1)>>
<<set $player.flags.streaming.subs += $scene.streaming.subsChange>>
<<if $player.flags.streaming.stage >= 3>>
<<if $scene.streaming.domsChange <= -$player.flags.streaming.doms>>
<<set $scene.streaming.domsChange = 1-$player.flags.streaming.doms>>
<</if>>
<<set $scene.streaming.domsChange = setup.normalizeStreamerChange($player.flags.streaming.doms, $scene.streaming.domsChange, 2)>>
<<set $player.flags.streaming.doms += $scene.streaming.domsChange>>
<</if>>
<<if $player.flags.streaming.cumScriberUnlock && passage() != "event_streaming_whore_cum_2">>
<<if $scene.streaming.cumChange <= -$player.flags.streaming.cum>>
<<set $scene.streaming.cumChange = 1-$player.flags.streaming.cum>>
<</if>>
<<set $scene.streaming.cumChange = setup.normalizeStreamerChange($player.flags.streaming.cum, $scene.streaming.cumChange, 3)>>
<<set $player.flags.streaming.cum += $scene.streaming.cumChange>>
<</if>>
<</if>>
<<include "calcStreamerDashboard">>/*#
#desc: streaming choice menu
#status: RELEASED 0.8.9.0
#ignore_spell: s
#*/
You have <<if $scene.streaming.followerChange >= 0>>gained <<=$scene.streaming.followerChange.toLocaleString()>><<else>>lost <<=-$scene.streaming.followerChange.toLocaleString()>><</if>> follower(s). You now have <<=$player.flags.streaming.followers.toLocaleString()>> follower(s).<br>
<<if $player.flags.streaming.followers >= 100>>
You have <<if $scene.streaming.subsChange >= 0>>gained <<=$scene.streaming.subsChange.toLocaleString()>><<else>>lost <<=-$scene.streaming.subsChange.toLocaleString()>><</if>> subscriber(s). You now have <<=$player.flags.streaming.subs.toLocaleString()>> subscriber(s).<br>
<<if $player.flags.streaming.stage >= 3>>
You have <<if $scene.streaming.domsChange >= 0>>gained <<=$scene.streaming.domsChange.toLocaleString()>><<else>>lost <<=-$scene.streaming.domsChange.toLocaleString()>><</if>> domscriber(s). You now have <<=$player.flags.streaming.doms.toLocaleString()>> domscriber(s).<br>
<</if>>
<<if $player.flags.streaming.cumScriberUnlock>>
You have <<if $scene.streaming.cumChange >= 0>>gained <<=$scene.streaming.cumChange.toLocaleString()>><<else>>lost <<=-$scene.streaming.cumChange.toLocaleString()>><</if>> cumtributor(s). You now have <<=$player.flags.streaming.cum.toLocaleString()>> cumtributor(s).<br>
<</if>>
<<if !State.hasPlayed("event_streaming_extreme_offer_1") && setup.getTotalValue("gaming") > 10 && $npc_exgirlfriend.flags.bondage_machine.rrr.both_final && $player.flags.streaming.stage >= 4>>
<br>
[<<moveTo "event_streaming_extreme_offer_1" "Special offer for ELITE Streamers!" 60 "<<set $scene.fromStreaming=true>>">>]<br>
<<elseif !State.hasPlayed("event_streaming_extreme_first_fans_2") && State.hasPlayed("event_streaming_extreme_offer_2") && setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<br>
Someone in chat asks when you're going to make dreams come true by streaming on a "Dreammaker?" <br>
<br>
[<<moveTo "event_streaming_extreme_first_fans_1" "No time like the present..." 600>>]<br>
<<else>>
<br>
<</if>>
<<else>>
[@@.link_locked;You need at least 100 followers to gain Subscribers and other elite follows.@@]<br>
<br>
<</if>><<switch $scene.streaming.streamer_clothing>>
<<case 'naked'>>
<<set $scene.streaming.clothingMod = .15>>
<<case 'underwear_cute'>>
<<set $scene.streaming.clothingMod = .15>>
<<case 'underwear_bold'>>
<<set $scene.streaming.clothingMod = .15>>
<<case 'underwear_slutty'>>
<<set $scene.streaming.clothingMod = .2>>
<<case 'underwear_sissy'>>
<<set $scene.streaming.clothingMod = .2>>
<<case 'underwear'>>
<<set $scene.streaming.clothingMod = .05>>
<<case 'underwear_male'>>
<<set $scene.streaming.clothingMod = -.1>>
<<case 'topless'>>
<<set $scene.streaming.clothingMod = .2>>
<<case 'maid'>>
<<set $scene.streaming.clothingMod = .15>>
<<case 'maid_slutty'>>
<<set $scene.streaming.clothingMod = .25>>
<<case 'schoolgirl'>>
<<set $scene.streaming.clothingMod = .15>>
<<case 'schoolgirl_slutty'>>
<<set $scene.streaming.clothingMod = .25>>
<<case 'goth'>>
<<set $scene.streaming.clothingMod = .15>>
<<case 'goth_slutty'>>
<<set $scene.streaming.clothingMod = .5>>
<<case 'slutty'>>
<<set $scene.streaming.clothingMod = .2>>
<<case 'latex'>>
<<set $scene.streaming.clothingMod = .2>>
<<case 'fetish'>>
<<set $scene.streaming.clothingMod = .2>>
<<case 'sleep'>>
<<set $scene.streaming.clothingMod = .15>>
<<case 'female_casual'>>
<<set $scene.streaming.clothingMod = 0>>
<<case 'female_gym'>>
<<set $scene.streaming.clothingMod = .05>>
<<case 'female_office'>>
<<set $scene.streaming.clothingMod = .1>>
<<case 'female_formal'>>
<<set $scene.streaming.clothingMod = .2>>
<<case 'unisex_casual'>>
<<set $scene.streaming.clothingMod = -.2>>
<<case 'unisex_office'>>
<<set $scene.streaming.clothingMod = -.2>>
<<case 'unisex_formal'>>
<<set $scene.streaming.clothingMod = -.1>>
<<case 'unisex_gym'>>
<<set $scene.streaming.clothingMod = -.05>>
<<case 'male_casual'>>
<<set $scene.streaming.clothingMod = -.5>>
<<case 'male_office'>>
<<set $scene.streaming.clothingMod = -.25>>
<<case 'male_gym'>>
<<set $scene.streaming.clothingMod = -.3>>
<<case 'male_formal'>>
<<set $scene.streaming.clothingMod = -.15>>
<</switch>>
<<switch $scene.streaming.streamer_makeup>>
<<case "none">>
<<set $scene.streaming.makeupMod = -.1>>
<<case "ruined">>
<<set $scene.streaming.makeupMod = -.2>>
<<case "nomakeupmakeup">>
<<set $scene.streaming.makeupMod = 0>>
<<case "normalmakeup">>
<<set $scene.streaming.makeupMod = .01>>
<<case "expertmakeup">>
<<set $scene.streaming.makeupMod = .03>>
<<case "moviestar">>
<<set $scene.streaming.makeupMod = .05>>
<<case "ultimatebimbo">>
<<set $scene.streaming.makeupMod = .05>>
<<case "sissy_doll">>
<<set $scene.streaming.makeupMod = .05>>
<<case "qtpie">>
<<set $scene.streaming.makeupMod = .05>>
<<case "egirl">>
<<set $scene.streaming.makeupMod = .05>>
<<case "camgirl">>
<<set $scene.streaming.makeupMod = .1>>
<</switch>>
<<switch setup.calcBreastSize()>>
<<case "massive">>
<<set $scene.streaming.breastMod = .1>>
<<case "large">>
<<set $scene.streaming.breastMod = .7>>
<<case "medium">>
<<set $scene.streaming.breastMod = .5>>
<<case "small">>
<<set $scene.streaming.breastMod = 0>>
<<case "none">>
<<set $scene.streaming.breastMod = -.05>>
<</switch>>
<<if $scene.streaming.collar>>
<<set $scene.streaming.collarMod = .05>>
<<else>>
<<set $scene.streaming.collarMod = 0>>
<</if>>
<<set $scene.streaming.visMod = ($scene.streaming.clothingMod + $scene.streaming.makeupMod + $scene.streaming.breastMod + $scene.streaming.collarMod)>>
<<if $scene.streaming.followerChange > 0>>
<<if $scene.streaming.visMod > 0>>
<<set $scene.streaming.followerChange *= 1 + $scene.streaming.visMod>>
<<else>>
<<set $scene.streaming.followerChange *= 1 - $scene.streaming.visMod>>
<</if>>
<<else>>
<<if $scene.streaming.visMod > 0>>
<<set $scene.streaming.followerChange *= 1 - $scene.streaming.visMod>>
<<else>>
<<set $scene.streaming.followerChange *= 1 + $scene.streaming.visMod>>
<</if>>
<</if>>/*#
#desc: stream: normal
#status: RELEASED 0.8.9.0
#ignore_spell: pg
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if setup.isBodySlotVisible("tits") || setup.checkItemTypeWorn("bra", true) && setup.getItemObjFromType("bra", true).specific == "bra" && setup.checkItemVisible(setup.getItemFromType("bra"))>>
You barely turn on your camera when a warning pops up — apparently the streaming service's subroutines have determined that you are not dressed "appropriately" for the general queue.<br>
<br>
<<if $player.flags.streaming.stage < 3>>
Rather than kick you out completely, however, you are offered the opportunity to "upgrade" your account to "After Dark" tier — apparently if you play on this mode you can dress (or not) however you want, and generally slut it up — so long as you don't show any explicit sexual content on-camera.<br>
<br>
Upgrading your account will cost 100 credits.<br>
<br>
<<if $player.money.total >= 100>>
<<printThought "Yeah, I can afford that — gotta spend spend credits to make credits, right? I bet I can get subscribers way faster if I don't have to worry about always keeping it PG.">>
<<else>>
<<printThought "Money is tight, but I can always put it on credit. Besides, you have to spend credits to make credits, right? I bet I can get subscribers way faster if I don't have to worry about always keeping it PG.">>
<</if>>
<br><br>
[<<moveTo "event_streaming_slutty_first_1" 'Launch a slutty "After Dark" streaming session.' 60 "<<set $scene.accept=true>>">>]<br>
<<else>>
You get a friendly reminder to either "fix" your outfit, or stream a different mode.<br>
<br>
[<<moveTo "event_streaming_slutty_1" 'Launch a slutty "After Dark" streaming session.' 60>>]<br>
<<if $player.flags.streaming.stage == 3 && State.hasPlayed("event_streaming_whore_invite_1") && !State.hasPlayed("event_streaming_whore_first_10")>>
[<<moveTo "event_streaming_whore_first_1" 'Account approved; start your first XXXstream session!' 60>>]<br>
<</if>>
<<if $player.flags.streaming.stage >= 4>>
[<<moveTo "event_streaming_whore_1" 'Launch an anything-goes THOT stream.' 60>>]<br>
<</if>>
<<if $player.flags.streaming.stage >= 5>>
[<<moveTo "event_streaming_extreme_1" 'Screw it, or, rather, screw you; strap into your Dreammaker for a "pulse-pounding" audience participation fuck-stream.' 60>>]<br>
<</if>>
<</if>>
<<else>>
You turn on your stream and hop into a lobby, greeting followers as they trickle into your channel.<br>
<br>
You take a moment to consider how you want to handle this session...<br>
<br>
[<<moveTo "event_streaming_normal_2" "You're in a serious mood — hop into the comp queue and focus on grinding rank." 1800 "<<set $scene.streaming.style='comp'>>">>]<br>
[<<moveTo "event_streaming_normal_2" "You feel like blowing off some steam. Jump into the public queue and see about going for some of the day's more playful challenges." 1800 "<<set $scene.streaming.style='play'>>">>]<br>
[<<moveTo "event_streaming_normal_2" "Playing for your followers makes you so horny... whore it up like a moaning slut." 1800 "<<set $scene.streaming.style='slut'>>">>]<br>
<</if>>
[<<moveTo "room_livingroom" "Do not stream today." 60>>]
</div>/*#
#desc: stream: normal root
#status: RELEASED 0.8.9.0
#ignore_spell: bm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.events = []>>
<<set $scene.streaming.events.push($scene.streaming.style)>>
<<set $scene.streaming.events.push('bet_knees')>>
<<set $scene.streaming.events.push('cute')>>
<<switch $scene.streaming.style>>
<<case "comp">>
<<set $scene.streaming.events.push('stream_sniper')>>
<<set $scene.streaming.events.push('win_trade')>>
<<case "play">>
<<set $scene.streaming.events.push('bad_manners')>>
<<set $scene.streaming.events.push('ahegao')>>
<<case "slut">>
<<set $scene.streaming.events.push('slut_sniper')>>
<<if $player.body.breastsize[0]>>
<<set $scene.streaming.events.push('tits')>>
<</if>>
<</switch>>
<<set $scene.streaming.event = $scene.streaming.events.random()>>
<<switch $scene.streaming.event>>
<<case "comp">>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'very' $SEEN_FRIEND>>
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") > 15>>
<<set $scene.streaming.followerChange = Math.max(5, Math.floor($player.flags.streaming.followers * .1))>>
<<else>>
<<set $scene.streaming.followerChange = -Math.max(2, Math.floor($player.flags.streaming.followers * .05))>>
<</if>>
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
<<set $scene.streaming.followerChange = -Math.max(2, Math.floor($player.flags.streaming.followers * .1))>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(1, Math.floor($player.flags.streaming.followers * .1))>>
<</if>>
<</if>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = -Math.max(1, Math.floor($player.flags.streaming.doms * .05))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .05))>>
<<include "followersChange">>
<<case "play">>
<<applyExperience 'gaming' 10 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") > 15>>
<<set $scene.streaming.followerChange = Math.max(5, Math.floor($player.flags.streaming.followers * .1))>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(2, Math.floor($player.flags.streaming.followers * .05))>>
<</if>>
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
<<set $scene.streaming.followerChange = -Math.max(2, Math.floor($player.flags.streaming.followers * .1))>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(1, Math.floor($player.flags.streaming.followers * .1))>>
<</if>>
<</if>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = -Math.max(1, Math.floor($player.flags.streaming.doms * .05))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .05))>>
<<include "followersChange">>
<<case "slut">>
<<applyExperience 'gaming' 7 'little' $SEEN_FRIEND>>
<<set $scene.streaming.followerChange = 10>>
<<set $scene.streaming.subsChange = 3>>
<<set $scene.streaming.domsChange = 2>>
<<set $scene.streaming.cumChange = 1>>
<<include "followersChange">>
<<case "stream_sniper" "win_trade" "bad_manners">>
<<if setup.getTotalValue("gaming") <= 10>>
<<applyExperience 'gaming' 5 'little' $SEEN_FRIEND>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = -Math.max(1, Math.floor($player.flags.streaming.doms * .05))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .05))>>
<<include "followersChange">>
<</if>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.streaming.event>>
<<case "comp">>
You hop on to the ranked queues and focus on grinding.
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") > 15>>
Your skills are such that, even focusing purely on the game, you are impressive enough to gain a few followers.
<<else>>
Your skills may be a bit above average, but that's far from impressive in the tough world of streamers. By focusing on playing rather than your followers you end up losing a few.
<</if>>
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
Your mediocre skill fails to impress, and you actually lose followers over the course of your stream.
<<else>>
Your followers take amusement at your "skills," seeming to conclude that your play is a parody rather than the reality of you being really that bad.
<</if>>
<</if>>
<<if $player.flags.streaming.stage >= 3>>
Your more "advanced" fans are clearly disinterested in this sort of content.
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<<case "play">>
You hop on to the general queues to do some achievement hunting while interacting with your fans.
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") > 15>>
You may be aiming for "alternate" objectives, but you're still damn good at the game, and you gain some followers over the course of your play session.
<<else>>
You may not be able to stand out in the game on pure skill, but you make up for it with personality and going for the "fun" rather than the optimal choice. The result is happy fans.
<</if>>
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
You try to liven things up with chat interaction, but achievement hunting ends up being pretty dull and you lose a few fans in the process.
<<else>>
You fail your way through achievements... much to the amusement of your followers who believe that you're doing a bit, rather than truly being this terrible at the game.
<</if>>
<</if>>
<<if $player.flags.streaming.stage >= 3>>
Your more "advanced" fans are clearly disinterested in this sort of content.
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<<case "slut">>
You hop on to the comp queues, but your behaviour is more "cum" than comp. You slut your way through a few games, playfully interacting with your followers and lewdly talking about how much you want to "@@.pc;Take that big load@@" or "@@.pc;Feel that heal-stream all over my face.@@"<br>
<br>
<<if $player.flags.streaming.stage >= 3>>
Your more "advanced" fans are somewhat amused, but you can tell from the feed that they'd rather you were doing something more extreme than just slutting it up in chat.<br>
<br>
<</if>>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<<case "stream_sniper">>
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") > 15>>
As you play you realise that one of the enemy team has WAY too good intelligence — you've got a stream sniper!
<<else>>
One of the enemy team seems to have an uncanny ability to predict where you are at... could you have a stream sniper on your hands?
<</if>>
<br><br>
[<<moveTo "event_streaming_normal_sniper" "Teach the sniper a lesson." 1800 "<<set $scene.callout=true>>">>]<br>
[<<moveTo "event_streaming_normal_sniper" "Ask the sniper for mercy." 1800 "<<set $scene.callout=false>>">>]
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
You have a very tough match as it seems like one of the enemy team is damn near psychic in their ability to predict where you are.
<<else>>
Even by your normal standards you have a tough match as it seems like one of the enemy team seems to always know exactly where you are.
<</if>>
<br><br>
As the match ends one of your "followers" laughs and says they were watching you the whole stream, "@@.generic_male1;Thanks for the free win, loser!@@"<br>
<br>
In a huff you ban them... which means you're now down one follower; and you still lost.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<</if>>
<<case "win_trade">>
<<if setup.getTotalValue("gaming") > 10>>
You jump into game and notice something off... it looks like there's some win trading going on!<br>
<br>
[<<moveTo "event_streaming_normal_wintrade" "Fuck this, you always play to win." 1800 "<<set $scene.wintrade=false>>">>]<br>
[<<moveTo "event_streaming_normal_wintrade" "Go along with it." 1800 "<<set $scene.wintrade=true>>">>]
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
You have a weird game, both teams seeming to focus on fighting in the middle of the map while only a couple people even bother with objectives.
<<else>>
You have a strange game — most of the other players seem to be just running around without even attempting to claim objectives and you score an easy win.
<</if>>
<br><br>
As the match ends one of your followers points out that you stumbled into a win-trading scheme.<<if $player.flags.streaming.stage >= 3>> Whatever the scheme... your more pervy followers didn't seem to be entertained by things.<</if>><br>
<br>
<<printThought "Huh... weird.">><br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<</if>>
<<case "bad_manners">>
<<if setup.getTotalValue("gaming") > 10>>
You jump into game and one of your team-mates is just a wall-to-wall jerk, screaming at everyone else for the slightest perceived mistake while giving directions that are just plain wrong.<br>
<br>
[<<moveTo "event_streaming_normal_bad_manners" "Tell <<him>> off in voice." 1800 "<<set $scene.badmanner=true>>">>]<br>
[<<moveTo "event_streaming_normal_bad_manners" "Just focus on your play." 1800 "<<set $scene.badmanner=false>>">>]
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
You have an unpleasant match — you're playing your best, but one of your teammates seems to be blaming everyone but themselves — from you, to the rest of the team to "the latest patch" for... anything that goes wrong (which seems to be everything, as far as they're concerned).
<<else>>
You have a particularly unpleasant match; one of your teammates spending seemingly half the match putting you on blast for whatever you're doing wrong.
<</if>>
<br><br>
As the match end you get some sympathy from your followers "@@.generic_female1;That <<guy>> was total BM, good job keeping your cool.@@"<<if $player.flags.streaming.stage >= 3>> Your more pervy followers, on the other hand seem turned off by the whole thing.<</if>><br>
<br>
<<if $player.flags.streaming.stage > 3>>
<<printThought "Hmm... they're probably just annoyed that the abuse was so uncreative...">>
<<else>>
<<printThought "Internet dick-wad theorem at work, I suppose.">>
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<</if>>
<<case "bet_knees">>
You're playing <<switch $scene.streaming.style>>
<<case "comp">>
aggressively
<<case "play">>
casually
<<case "slut">>
sluttily
<<default>>
ERROR: unexpected scene.streaming.style <<=$scene.streaming.style>>
<</switch>>
when you one of your followers offers a bonus if you play from your knees.<br>
<br>
<<printThought "Hmm... a bit submissive, but not really a big deal. Credits is credits, right?">><br>
<br>
[<<moveTo "event_streaming_normal_bet_knees" "Play from your knees." 1800 "<<set $scene.kneel=true>>">>]<br>
[<<moveTo "event_streaming_normal_bet_knees" 'Do not take the "challenge."' 1800 "<<set $scene.kneel=false>>">>]
<<case "ahegao">>
You're having fun playing casually when you one of your followers offers a bonus if you make an ahegao face every time you die or get a kill.<br>
<br>
<<printThought "That's kind of slutty but... credits is credits, right?">><br>
<br>
[<<moveTo "event_streaming_normal_bet_ahegao" "Accept the challenge." 1800 "<<set $scene.ahegao=true>>">>]<br>
[<<moveTo "event_streaming_normal_bet_ahegao" 'Do not take the "challenge."' 1800 "<<set $scene.ahegao=false>>">>]
<<case "tits">>
You're flirting with your follower when one of them calls out for you to "@@.generic_male1;Show us your tits!@@" Immediately money pledges start lining up in support of this idea.<br>
<br>
<<printThought "That's kind of slutty... am I even allowed to do that sort of thing on stream?">><br>
<br>
[<<moveTo "event_streaming_normal_promotion_1" "Flash your fans." 1800 "<<set $scene.flash=true>>">>]<br>
[<<moveTo "event_streaming_normal_promotion_1" 'Do not flash your fans.' 1800 "<<set $scene.flash=false>>">>]
<<case "cute">>
You're playing when one of your followers calls you "@@.generic_male1;Cute!@@" Almost immediately things snowball as chat becomes a bit of a meme-fest calling you cute.<br>
<br>
[<<moveTo "event_streaming_normal_cute" "Thank them for the compliment." 1800 "<<set $scene.cute=true>>">>]<br>
[<<moveTo "event_streaming_normal_cute" "No, you're not cute!" 1800 "<<set $scene.cute=false>>">>]
<<case "slut_sniper">>
You're playing and flirting with your followers when an enemy player ganks you from seemingly out of nowhere. You laugh it off and respawn... only for the exact same thing to happen again!<br>
<br>
You glance at chat where a guy is spamming laugh emojis "@@.generic_male1;Hahahahahaha! Got you again you dumb slut! How do you enjoy deepthroating my sniper rifle, huh?@@"<br>
<br>
<<printThought "I'm, like, being stream-sniped!">><br>
<br>
[<<moveTo "event_streaming_normal_slut_sniper" "Slut it up and say you love to deepthroat a long gun<<if $fetish.cum>>... and you love getting blasted in the face<</if>>..." 1800 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_streaming_normal_slut_sniper" "Call <<him>> an asshole and ban <<him>>." 1800 "<<set $scene.slut=false>>">>]
<<default>>
ERROR: unexpected scene.streaming.event <<=$scene.streaming.event>>
<</switch>>
</div>/*#
#desc: stream: normal stream sniper
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.callout>>
<<if setup.getTotalValue("gaming") > 15>>
<<applyExperience 'gaming' 15 'normal' $SEEN_FRIEND>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .15))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .1))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .07))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * .05))>>
<<else>>
<<applyExperience 'gaming' 13 'little' $SEEN_FRIEND>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = -Math.max(1, Math.floor($player.flags.streaming.doms * .03))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .01))>>
<</if>>
<<else>>
<<if setup.getTotalValue("gaming") > 15>>
<<applyExperience 'gaming' 13 'normal' $SEEN_FRIEND>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .03))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .01))>>
<<else>>
<<applyExperience 'gaming' 13 'little' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .15))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .1))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .07))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * .05))>>
<</if>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.callout>>
<<if setup.getTotalValue("gaming") > 15>>
You mock your sniper in chat as, even though they know your location, you dance circles around them, either killing them yourself or making sure they're walking right into a trap formed by your entire squad.<br>
<br>
The rest of your followers are amused by how you utterly humiliate your would-be nemesis<<if $player.flags.streaming.stage >= 3>> even your more perverted fans getting in on the action as they lob insults at your failed foe<</if>>.
<<else>>
You try to take revenge on your sniper directly, but you just don't have the skill to compensate for their informational advantage, your efforts only causing your team to fall further behind and disappoint your fans.
<</if>>
<<else>>
You beg for mercy from your stream sniper...
<<if setup.getTotalValue("gaming") > 15>>
You beg for mercy from your stream sniper... while simultaneously wiping the floor with them in-game. The combination of mock innocence and ruthless skill entertaining <<if $player.flags.streaming.stage >= 3>>even your perviest fans<<else>>you followers<</if>>.
<<else>>
which only causes them to mock you further as they hand you a humiliating defeat. While you lose the game your fans seem to enjoy themselves as they meme a clip of you begging for mercy only to get repeatedly killed in-game.<br>
<br>
<<printThought "I guess fans are fans... even if that was a bit humiliating.">>
<</if>>
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: normal stream wintraders
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.wintrade>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.subs * .2))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .1))>>
<<set $scene.streaming.domsChange = -Math.max(1, Math.floor($player.flags.streaming.doms * .07))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .05))>>
<<applyExperience 'gaming' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<if setup.getTotalValue("gaming") >= 20>>
<<applyExperience 'gaming' 18 'very' $SEEN_FRIEND>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .2))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .03))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .01))>>
<<else>>
<<applyExperience 'gaming' 15 'very' $SEEN_FRIEND>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .07))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .05))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * .03))>>
<</if>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.wintrade>>
You go along with the win-trading scheme... much to the annoyance of your followers. You wince as you practically hemorrhage fans.<br>
<br>
<<printThought "Note to self... win trading... is not popular.">>
<<else>>
You recognise the win-trading scheme going on, but you are having none of it.
<<if setup.getTotalValue("gaming") >= 20>>
While the rest of your so-called team faffs around in mid you put the match on your back, taking several objectives before the traders realise what's going on... at which point you single-handedly carry the match, only (reluctantly) assisted by the rest of your team after you have been a 1-player wrecking crew against the entire enemy force.<br>
<br>
Your followers are hyped as hell by your performance — not just that you won, but that you stood up for the integrity of the game itself. You smile and take a welcome breath as you watch your Play of the Game... and your fan numbers increase.
<<else>>
Unfortunately there is only so much a single player can do against such odds and, though you manage to claim a couple of objectives, you end up falling to the full force of the enemy team.<br>
<br>
Despite your loss chat is full of congratulations. It would seem win-traders are less than popular and, even if your efforts were for naught, the fact that you stood up and fought back has gained you some fans.
<</if>>
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: normal stream bm teammate
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 15 'normal' $SEEN_FRIEND>>
<<if $scene.badmanner>>
<<if setup.getTotalValue("gaming") >= 15>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .07))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .05))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .03))>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .07))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .03))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * .01))>>
<</if>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .05))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .03))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .01))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .01))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.badmanner>>
<<if setup.getTotalValue("gaming") >= 15>>
You tell the jerk teammate off in voice... and then proceed to style all over <<his>> face as you carry the team to victory.<br>
<br>
Rather than even be happy with the win <<he>> continues to be an ass, eventually quitting in a huff when you and the rest of the team laugh at <<his>> insistence that ACTUALLY it was <<him>> that saved you all from losing.<br>
<br>
Your take-no-shit efforts, with the skills to back it up, garner you some additional fans.
<<else>>
You tell the jerk teammate off in voice... and then proceed to work with the rest of the team to pull off a hard-fought victory despite <<him>>.<br>
<br>
Rather than even be happy with the win <<he>> continues to be an ass, eventually quitting in a huff when you and the rest of the team laugh at <<his>> insistence that ACTUALLY it was <<him>> that saved you all from losing.<br>
<br>
Your take-no-shit efforts, with the skills to back it up, garner you some additional fans.
<</if>>
<<else>>
You hunker down and focus on the game, muting the asshole teammate as you do your part to carry the rest of the team to victory.<br>
<br>
You get a smattering of compliments for ignoring the asshole... though you get the feeling that muting <<him>> may have made for "less interesting" viewing.
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: normal stream bet - kneel
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 15 'normal' $SEEN_FRIEND>>
<<if $scene.kneel>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .05))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .07))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .1))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * .01))>>
<<set $scene.streaming.tips += Math.ceil($player.flags.streaming.doms*.1 + .001*($player.flags.streaming.followers + $player.flags.streaming.subs*.01))>>
<<else>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.followers * .05))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = -Math.max(5, Math.floor($player.flags.streaming.doms * .2))>>
<<set $scene.streaming.cumChange = -Math.max(3, Math.floor($player.flags.streaming.cum * .1))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.kneel>>
You push your chair back and kneel for the remainder of the match. Your fans seem to get a great kick out of this — talking about how good you look on your knees... followed by a bit of an argument between the group that thinks you belong on your knees sucking cock... and those that think you would make a good slave.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("submission") > 10>>
You bring "order" to things by pointing out that
<<else>>
Eventually order is restored when someone points out that
<</if>>
a good sex slave would, obviously, kneel to suck their owners cock.<br>
<br>
At the end of the match you claim your prize of <<=$scene.streaming.tips>> credits.
<<else>>
You remain seated and the "challenge" times you... from the crowd reaction your unwillingness to "go along" was the opposite of popular with your fans.
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: normal stream bet -ahegao
#status: RELEASED 0.8.9.0
#ignore_spell: d,k
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 15 'normal' $SEEN_FRIEND>>
<<if $scene.ahegao>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'whoring' 1 'little' $SEEN_FRIEND>>
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") >= 20>>
<<set _mod = .15>>
<<elseif setup.getTotalValue("gaming") > 15>>
<<set _mod = .1>>
<<else>>
<<set _mod = .05>>
<</if>>
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
<<set _mod = .05>>
<<else>>
<<set _mod = .1>>
<</if>>
<</if>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * _mod*2))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * _mod))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * _mod/2))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * _mod/3))>>
<<set _mod += 1>>
<<set $scene.streaming.tips += Math.ceil(_mod * .01*$player.flags.streaming.doms + _mod *.5*(.0001*$player.flags.streaming.followers + .001* $player.flags.streaming.subs))>>
<<else>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.followers * .05))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = -Math.max(5, Math.floor($player.flags.streaming.doms * .2))>>
<<set $scene.streaming.cumChange = -Math.max(3, Math.floor($player.flags.streaming.cum * .1))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.ahegao>>
You agree to the bet and are soon moaning and making slutty faces every time you kill — or are killed.
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") >= 20>>
Given your near-perfect skills it's a lot of you mercing people while moaning and otherwise acting like a slut. All the rolling your eyes back almost gets you killed a couple times, but you manage to complete the match perfect... perfectly slutty.
<<elseif setup.getTotalValue("gaming") > 15>>
With your skills it's more you killing others and moaning orgasmically about it than anything else... though rolling your eyes back to satisfy your fans that you've made a "proper" ahegao face is enough to distract you and get you killed a couple times... which you think might have been the goal.
<<else>>
You trade kills and deaths, moaning and making faces like a slut the whole time.
<</if>>
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
You mostly get killed, slightly worried you may accidentally form some sort of pavlovian connection between dying in-game and acting like a total slut.
<<else>>
Per usual you get killed a lot — and constantly rolling your eyes back and moaning like a whore does little to help your K/D ratio. Fortunately, it seems your fans are quite enamoured with their poorly playing slutty streamer... so you suppose it all works out.
<</if>>
<</if>>
<br><br>
At the end of the round you collect your "reward" for fulfilling the bet, and abandoning your dignity; <<=$scene.streaming.tips>> credits.<br>
<br>
<<printThought "Was that... was that sex work?">>
<<else>>
You refuse to make slutty faces and the "challenge" times you... from the crowd reaction your unwillingness to "go along" was the opposite of popular with your fans.
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: normal stream called cute
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 15 'normal' $SEEN_FRIEND>>
<<if $scene.cute>>
<<set _fem = setup.getTotalValue("feminization")>>
<<if $player.identify_as == 'male'>>
<<set _humil = _fem+10>>
<<applyExperience 'humiliation' _humil 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'feminization' _fem 'normal' $SEEN_FRIEND>>
<</if>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .15))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * .05))>>
<<set $scene.streaming.cumChange = Math.max(3, Math.floor($player.flags.streaming.cum * .03))>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .05))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * .2))>>
<<set $scene.streaming.cumChange = Math.max(3, Math.floor($player.flags.streaming.cum * .1))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cute>>
<<if $player.identify_as == 'male'>>
You blush and thank chat for the compliment, which results in even more encouragement as they talk about how you're "@@.generic_male1;The cutest femboy on the internet!@@"
<<else>>
You smile and thank chat for the compliment, beaming for the rest of the match.
<</if>>
<<else>>
You try to deny that you're cute, but that just spurs your audience on even further as they deem you a "cutie cute cutie." <<if $player.identify_as == 'male'>>Your manhood in tatters<<else>>Though you have clearly lost the battle,<</if>> you try to take solace in the fact that the exchange seems to have quite improved your fan numbers...
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: normal stream slut it up with sniper
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 15 'normal' $SEEN_FRIEND>>
<<if $scene.slut>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'very' $SEEN_FRIEND>>
<<set _mod = _bimbo/200 + .1>>
<<set $scene.streaming.followerChange = Math.max(15, Math.floor($player.flags.streaming.followers * _mod))>>
<<set $scene.streaming.subsChange = Math.max(10, Math.floor($player.flags.streaming.subs * _mod))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * _mod))>>
<<set $scene.streaming.cumChange = Math.max(3, Math.floor($player.flags.streaming.cum * _mod))>>
<<else>>
<<set $scene.streaming.followerChange = -Math.max(5, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .1))>>
<<set $scene.streaming.domsChange = -Math.max(3, Math.floor($player.flags.streaming.doms * .2))>>
<<set $scene.streaming.cumChange = -Math.max(5, Math.floor($player.flags.streaming.cum * .3))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
<<if setup.getTotalValue("bimbofication") > 10>>
You respond to the sniper that, like... sure you'd LOVE to deep-throat the long barrel of their gun, but wouldn't they rather you suck their cock?
<<if setup.getTotalValue("bimbofication") > 15>>
Turning up your brazenness even further you ask if they could bring their team-mates? That, as a slutty, worthless battlefield whore you deserve to be taken as prize for their worthy victory and fucked by all of them.
<<else>>
Turning up your brazenness even further you gush about how they could shove their gun up your ass, that, since they've killed you twice they should use both of your holes as well...
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
You reply that, like... why would you suck their gun when you could suck their cock?
<<else>>
You stutter that wouldn't they prefer you sucked their cock than their gun?
<</if>>
<</if>>
<br><br>
Your sluttiness seems to script-break the stream-sniper as they get dog-piled by your enthusiastic fans bragging about how you're THEIR slut and that the sniper could never hope to earn such a hot piece of ass without cheating.
<<else>>
You call out the sniper as an asshole and ban <<him>> from your stream.<br>
<br>
Your sudden, decisive action seems to kill the mood in chat, the rest of the round passing mostly in silence as you wonder if you would have been better off "playing along" with things rather than immediately dropping the hammer?
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: normal stream flash breasts
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.flash>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<<else>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.subs * .1))>>
<<set $scene.streaming.subsChange = -Math.max(10, Math.floor($player.flags.streaming.subs * .2))>>
<<set $scene.streaming.domsChange = -Math.max(3, Math.floor($player.flags.streaming.doms * .2))>>
<<set $scene.streaming.cumChange = -Math.max(3, Math.floor($player.flags.streaming.cum * .3))>>
<<include "followersChange">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.flash>>
You flash your <<getWordBreasts>> and are presented with a pop-up "WARNING: Female Presenting Nipples Detected!" <br>
<br>
<<if $player.flags.streaming.stage >= 3>>
"Current stream not approved for such content, replace top or stream will end in 5... 4..." <br>
<br>
[<<moveTo "event_streaming_normal_promotion_repeat" "Fix your top and finish the stream." 1800 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_streaming_normal_promotion_repeat" "Slut streams are way more fun anyway!" 1800 "<<set $scene.accept=true>>">>]
<<else>>
"Account not verified for adult content." <br>
<br>
You start to curse yourself for getting sloppy and violating community guidelines... only for a follow-up pop-up to appear.<br>
<br>
"Would you like to upgrade to be a premium adult streamer? Enables higher level pledges and fewer broadcast restrictions. Only 100 credits to upgrade to a paid account!" <br>
<br>
<<printThought "Spend money to make money, right? Not censoring myself would be nice... and I could probably make more money if I slutted it up and showed more skin...">><br>
<br>
[<<moveTo "event_streaming_slutty_first_1" "Upgrade to premium status." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_streaming_slutty_first_1" "Decline and quit for the day." 60 "<<set $scene.accept=false>>">>]
<</if>>
<<else>>
You ignore the rapidly growing "tip" for you to flash your tits... and lose quite a few followers as a result when the request times out without be fulfilled.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<</if>>
</div>/*#
#desc: stream: first slutty stream intro
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<addCredits -100>>
<<setThreshold 'bimbofication' 'spending_money' 'streaming_slut'>>
<<if $player.money.total <= 0>>
<<applyExperience 'bimbofication' 12 'very' $ALONE>>
<<else>>
<<applyExperience 'bimbofication' 8 'normal' $ALONE>>
<</if>>
<<set $scene.streaming.tips = 75>>
<<else>>
<<set $scene.streaming.followerChange = -Math.max(5, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .1))>>
<<set $scene.streaming.domsChange = -Math.max(3, Math.floor($player.flags.streaming.doms * .2))>>
<<set $scene.streaming.cumChange = -Math.max(3, Math.floor($player.flags.streaming.cum * .3))>>
<<include "followersChange">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $player.money.total <= 0>>
Perhaps foolishly, you put a streamer account upgrade on credit.
<<else>>
You pay the hundred credits to upgrade your account.
<</if>>
The transaction clears smoothly and the screen changes to a "celebratory" message of "@@.computer;WELCOME, SLUT!@@"<br>
<br>
You roll your eyes, and then notice a count-down... looks like your first "premium" stream is starting now!<br>
<br>
A few moments later and your camera kicks back on and you're dropped back into the lobby. Your audience is smaller since there are account restrictions on who can watch "adult" content, but you spot a few regulars who congratulate you as you wait in queue for the next game and cash out the "bounty" for fulfilling chat's wish — a full 75 credits!<br>
<br>
<<printThought "Maybe this was a good investment, I'm not far off from breaking even...">><br>
<br>
You glance at chat to see the reaction to your new status.
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
"@@.generic_male1;Damn! How could you have denied us so long! Those tits are fucking amazing, and they're real!@@"
<<case 'large'>>
"@@.generic_male1;Damn! How could you have denied us so long! Those tits are hawt!@@"
<<case 'medium'>>
"@@.generic_male1;Now those are some nice tiddys!@@"
<<case 'small'>>
"@@.generic_male1;Dang, those little titties are even cuter than I was expecting@@"
<<case 'none'>>
"@@.generic_male1;Mmmm, now that's a sexy femboy chest if I ever saw one!@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
You don't get time to react in chat before you're jumping into a new match... looks like you've been assigned tank...<br>
<br>
[<<moveTo "event_streaming_slutty_first_2" "You're a titty streamer now — take your punishment like a proper tank-slut!" 120 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_streaming_slutty_first_2" "You're already topless, that should be enough for your first stream." 60 "<<set $scene.slut=false>>">>]
<<else>>
You decide against upgrading your account and call it a day. After all, you can always upgrade later, if you change your mind. That said... you find yourself wince at the bite cutting out mid-stream seems to have taken out of your follower numbers.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<</if>>
</div>/*#
#desc: stream: first slutty stream
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'very' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You jump into the game and "embrace" your new role. You talk about how you want to take on the whole enemy team at once, moaning with arousal as you take damage and
<<if $player.body.breastsize[0] > 0>>
jiggling your tits,
<<else>>
showing off your flat chest,
<</if>>
tweaking your nipples and spending your respawn times talking about how you need to be spanked for dying.<br>
<br>
When your team wins you cheer, "rewarding" your followers by taking off the rest of your clothes to give your followers a celebratory strip-tease.<br>
<br>
Chat seems to really enjoy the "new" you and it looks like you've picked up quite a few new followers...
<<else>>
Other than showing off your bare <<if $player.body.breastsize[0] > 0>>
breasts
<<else>>
chest
<</if>>
you don't do anything much different than you normally do. The game plays out like any other, with your team losing at the last second.<br>
<br>
There are the usual condolences from chat on the loss, but you get the feeling they were expecting a bit "more" from your new status.
<</if>>
<br><br>
[<<moveTo "event_streaming_slutty_first_3" "Continue." 1800>>]
</div>/*#
#desc: stream: finish first slutty stream
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.streaming.stage = 3>>
<<if $scene.slut>>
<<set _mod = $player.body.breastsize[0]/10 + .05>>
<<set $scene.streaming.followerChange = Math.max(5, Math.floor($player.flags.streaming.followers * _mod))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * _mod))>>
<<set $scene.streaming.domsChange = Math.max(10, Math.floor($player.flags.streaming.subs * _mod))>>
<<set $scene.streaming.cumChange = 0>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(5, Math.floor($player.flags.streaming.followers * .05))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.cumChange = 0>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<br><br>
As you close things up you discover that your "upgraded" account has allowed you to accrue a new type of fan — Domscribers. More lucrative than Subscribers you'll make more money from them, but they're also liable to have higher expectations as to what you're willing to do...<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty stream conversion
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'bimbofication' 10 'very' $ALONE>>
<<set $scene.streaming.tips = 25>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * .05))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * .03))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * .01))>>
<<else>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.followers * .01))>>
<<set $scene.streaming.subsChange = -Math.max(5, Math.floor($player.flags.streaming.subs * .03))>>
<<set $scene.streaming.domsChange = -Math.max(3, Math.floor($player.flags.streaming.doms * .05))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .1))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept converting to a slutty stream and immediately lose a chunk of "un-authenticated" viewers. Despite this, chat remains strong and enthused for you slutty decision and you finish the rest of the stream strong, even cashing in on some extra tips.
<<else>>
You decide against switching over to a slutty screen and fix your top to continue on. Chat definitely isn't happy with your decision, and that is reinforced further when you check your follower numbers at the end.
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.hiltableDildo = "">>
<<if setup.checkItemOwned("basic_dildo") && setup.getTotalValue("anal") >= setup.getItemObj("basic_dildo").size>>
<<set $scene.streaming.hiltableDildo = "basic_dildo">>
<</if>>
<<if setup.checkItemOwned("dog_dildo") && setup.getTotalValue("anal") >= setup.getItemObj("dog_dildo").size>>
<<set $scene.streaming.hiltableDildo = "dog_dildo">>
<</if>>
<<if setup.checkItemOwned("large_dildo") && setup.getTotalValue("anal") >= setup.getItemObj("large_dildo").size>>
<<set $scene.streaming.hiltableDildo = "large_dildo">>
<</if>>
<<if setup.checkItemOwned("horse_dildo") && setup.getTotalValue("anal") >= setup.getItemObj("horse_dildo").size>>
<<set $scene.streaming.hiltableDildo = "horse_dildo">>
<</if>>
<<if setup.checkItemOwned("dragon_dildo") && setup.getTotalValue("anal") >= setup.getItemObj("dragon_dildo").size>>
<<set $scene.streaming.hiltableDildo = "dragon_dildo">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.streaming.dildo && $scene.streaming.hiltableDildo != "" && setup.getTotalValue("bimbofication") > 10>>
You're about to go "live" when you get a naughty thought — what if you played the game with a dildo in your ass? Just the idea of it has you excited — it wouldn't be visible, so you wouldn't be breaking any rules, and you bet it would make things a bit more lively...<br>
<br>
[<<moveTo "event_streaming_slutty_dildo" "Yes, play sitting on a dildo." 300>>]<br>
[<<moveTo "event_streaming_slutty_2" "Just go live normally." 1800>>]<br>
<<else>>
You take a deep breath and get ready to go live<<if setup.hasUpgrade($computer, 'holocam')>>, winking at one of the drones as the array of cameras floats into position around you<</if>>.<br>
<br>
[<<moveTo "event_streaming_slutty_2" "Go live!" 1800>>]<br>
<</if>>
[<<moveTo "room_livingroom" "Change your mind, do not stream today." 60>>]
</div>/*#
#desc: stream: slutty sit on dildo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.dildo = true>>
<<applyExperience 'anal' _dildoSize 'normal' $ALONE>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You quickly snag <<=setup.getItemName($scene.streaming.hiltableDildo)>> — the largest dildo you own that you know will fully fit in your ass. Lubing it up, you lower your weight onto it and moan as it fills your rear. You grind a bit to make sure everything is good and seated, feeling like a whore, eager to get into game...<br>
<br>
<<printThought "Let's do that! By this I mean the game... I'm already being done!">><br>
<br>
[<<moveTo "event_streaming_slutty_2" "Go live and look for a game." 1800>>]<br>
[<<moveTo "room_livingroom" "Change your mind, do not stream today." 60>>]
</div><<set $scene.dildosOwned = 0>>
<<if setup.checkItemOwned("basic_dildo")>>
<<set $scene.dildosOwned += 1>>
<</if>>
<<if setup.checkItemOwned("dog_dildo")>>
<<set $scene.dildosOwned += 1>>
<</if>>
<<if setup.checkItemOwned("large_dildo")>>
<<set $scene.dildosOwned += 1>>
<</if>>
<<if setup.checkItemOwned("horse_dildo")>>
<<set $scene.dildosOwned += 1>>
<</if>>
<<if setup.checkItemOwned("dragon_dildo")>>
<<set $scene.dildosOwned += 1>>
<</if>>/*#
#desc: stream: slutty root
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.events = []>>
<<include "calcOwnedDildos">>
<<if $scene.streaming.dildo && !State.hasPlayed("event_streaming_whore_invite_1")>>
<<set $scene.streaming.events.push('at_door')>>
<<else>>
<<set $scene.streaming.events.push('ass')>>
<</if>>
<<set $scene.streaming.events.push('bet_suck')>>
<<set $scene.streaming.events.push('bet_gag')>>
<<if $scene.streaming.streamer_clothing != "naked" && $scene.streaming.streamer_clothing != "topless">>
<<set $scene.streaming.events.push('bet_strip')>>
<</if>>
<<if $player.body.breastsize[0] > 4 && $scene.streaming.streamer_clothing != "naked" && $scene.streaming.streamer_clothing != "topless">>
<<set $scene.streaming.events.push('tits')>>
<</if>>
<<if $now.getUTCDay()>0 && $now.getUTCDay()<6 && $now.getUTCHours() > 18 && $npc_technician.relationship.relationship_stage >= 2 && !State.hasPlayed("event_destroy_technician_6") && $npc_technician.flags.evil != 1>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<set $scene.streaming.events.push('technician_dom')>>
<<case 'neutral'>>
<<set $scene.streaming.events.push('technician_gf')>>
<<case "sub">>
<<set $scene.streaming.events.push('technician_sub')>>
<</switch>>
<</if>>
<<set $scene.streaming.event = $scene.streaming.events.random()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.streaming.event>>
<<case 'at_door'>>
You're waiting on respawn when the doorbell chimes.<br>
<br>
<<printThought "Huh, what could that be? I could probably get back before I respawn if I hurry...">><br>
<br>
[<<moveTo "event_streaming_slutty_door" "Go get the door." 60 "<<set $scene.door=true>>">>]<br>
[<<moveTo "event_streaming_slutty_door" "Worry about it later." 60 "<<set $scene.door=false>>">>]
<<case 'bet_suck'>>
You're in between rounds when one of your subscribers proposes a bet that you suck on a dildo for the duration of the next match. "@@.generic_male1;Gagging on a cock would probably turbo-charge your skills, you slut!@@"<br>
<br>
<<if $scene.dildosOwned > 1 || !$scene.streaming.dildo && $scene.dildosOwned > 0>>
[<<moveTo "event_streaming_slutty_dildo_suck" "Take the bet!" 300>>]<br>
[<<moveTo "event_streaming_slutty_dildo_suck_no" "That would be too much of a distraction, decline." 300>>]
<<elseif $scene.streaming.dildo>>
[<<moveTo "event_streaming_slutty_dildo_suck_no" "Your only dildo is already stuffed in your ass, and thus unavailable for other use..." 300>>]
<<else>>
[<<moveTo "event_streaming_slutty_dildo_suck" "Tell chat you don't have a dildo to practice with." 300>>]
[<<moveTo "event_streaming_slutty_dildo_suck_no" "Even if you owned a dildo, that would be too much of a distraction, decline." 300>>]
<</if>>
<<case 'bet_strip'>>
You lose a particularly one-sided round when one of your domscribers suggests that such a performance means you've lost the "privilege" of wearing a top. Soon the rest of chat is joining in on the idea that you should go "tits out" and strip further with each loss... with bounties for each item of clothing you shed.<br>
<br>
<<printThought "I notice there's no provision here to earn clothes back if I win...">><br>
<br>
[<<moveTo "event_streaming_slutty_strip" "Accept the bounty... and jump into the sudden death high level comp queue." 300>>]<br>
[<<moveTo "event_streaming_slutty_strip_no" "Decline chat's proposal." 300>>]
<<case 'technician_gf' 'technician_sub' 'technician_dom'>>
There's a pop-up alert that a friend has joined the stream, you look over to see that <<=setup.getNpcName("npc_technician","first")>> is asking to group up to queue together...<br>
<br>
<<switch $scene.streaming.event>>
<<case 'technician_gf'>>
[<<moveTo "event_streaming_slutty_tech_1" "Heck yeah! Welcome your girlfriend to the stream." 1800 "<<set $scene.tech=true>>">>]<br>
<<case 'technician_sub'>>
[<<moveTo "event_streaming_slutty_tech_1" "Heck yeah! Welcome your slave to the stream." 1800 "<<set $scene.tech=true>>">>]<br>
<<case 'technician_dom'>>
[<<moveTo "event_streaming_slutty_tech_1" 'Heck yeah! Welcome your <<=setup.getNpcName("npc_technician","title")>> to the stream.' 1800 "<<set $scene.tech=true>>">>]<br>
<</switch>>
[<<moveTo "event_streaming_slutty_tech_1" "Decline, you don't want to mix business with pleasure." 60 "<<set $scene.tech=false>>">>]
<<case 'tits'>>
In a bit of a throwback, chat gets on board that you should play the next round "tits out." <br>
<br>
[<<moveTo "event_streaming_slutty_tits_1" "Expose your tits for the rest of the session." 300>>]<br>
[<<moveTo "event_streaming_slutty_tits_1_no" "Decline chat's proposal." 300>>]
<<case 'ass'>>
The queue is dragging a bit and someone in chat proposes that you show off your ass and give them a booty dance until the next round.<br>
<br>
[<<moveTo "event_streaming_slutty_ass_1" "Twerk it, baby!" 300>>]<br>
[<<moveTo "event_streaming_slutty_ass_1_no" "Decline chat's proposal." 300>>]
<<case 'bet_gag'>>
In a tough fire-fight you fall silent to focus, coming back to find a domscriber has suggested — and chat has rallied behind, the idea that, if you're not going to talk, you should play gagged!<br>
<br>
[<<moveTo "event_streaming_slutty_gag_1" "Agree to be gagged for the rest of the session." 300 "<<set $scene.gag=true>>">>]<br>
[<<moveTo "event_streaming_slutty_gag_1" "Decline chat's proposal." 300 "<<set $scene.gag=false>>">>]
<<default>>
ERROR: unexpected scene.streaming.event <<=$scene.streaming.event>>
<</switch>>
</div>/*#
#desc: stream: slutty stream suck dildo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.suckDildo = "">>
<<if setup.checkItemOwned("basic_dildo") && setup.getTotalValue("oral") >= setup.getItemObj("basic_dildo").size>>
<<set $scene.streaming.suckDildo = "basic_dildo">>
<</if>>
<<if setup.checkItemOwned("dog_dildo") && setup.getTotalValue("oral") >= setup.getItemObj("dog_dildo").size>>
<<set $scene.streaming.suckDildo = "dog_dildo">>
<</if>>
<<if setup.checkItemOwned("large_dildo") && setup.getTotalValue("oral") >= setup.getItemObj("large_dildo").size>>
<<set $scene.streaming.suckDildo = "large_dildo">>
<</if>>
<<if setup.checkItemOwned("horse_dildo") && setup.getTotalValue("oral") >= setup.getItemObj("horse_dildo").size>>
<<set $scene.streaming.suckDildo = "horse_dildo">>
<</if>>
<<if setup.checkItemOwned("dragon_dildo") && setup.getTotalValue("oral") >= setup.getItemObj("dragon_dildo").size>>
<<set $scene.streaming.suckDildo = "dragon_dildo">>
<</if>>
<<if $scene.streaming.suckDildo != "">>
<<set _oral = setup.getItemObj($scene.streaming.suckDildo).size>>
<<applyExperience 'oral' _oral 'terrible' $EXPOSED>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<<set _mod = (setup.getTotalValue("bimbofication") + setup.getTotalValue("oral"))/400>>
<<else>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<set $scene.streaming.tips += 100>>
<<set _mod = setup.getTotalValue("bimbofication")/400>>
<</if>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * _mod*2))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * _mod*1.5))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * _mod))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * _mod*.5))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.streaming.suckDildo != "">>
You reach under your desk to grab another dildo and slap it down in front of your keyboard.<br>
<br>
Chat cheers as you lean over to wrap your lips around the artificial cock and start sucking. Attentions split between game and chat you vary your pace, from teasing tongue when you're in the midst of combat to punishing your throat with deep-throat pounding when there's no enemies nearby... or slapping yourself with the floppy rod of silicone when you die and are waiting for a respawn.<br>
<br>
Your slutty skill ensures that chat enjoys the show and you smile at both the immediate tip, and the bump to your overall numbers.
<<else>>
You moan and explain that you wish you could bury a nice big cock in your throat for chat, but that you don't own one to use!<br>
<br>
The result is not only excitement, but brief, but profitable, crowd-funding effort to get you the credits to buy a new "streaming tool"...
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty stream decline suck dildo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = -Math.max(5, Math.floor($player.flags.streaming.subs *.13))>>
<<set $scene.streaming.domsChange = -Math.max(3, Math.floor($player.flags.streaming.doms *.07))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum *.05))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.dildosOwned == 1 && $scene.streaming.dildo>>
Even as you find yourself grinding on the dildo you're sitting on you explain that you don't have anything available to practice sucking.
<<elseif $scene.dildosOwned>>
You make an excuse about your throat being a bit sore and "not up to the task" of sucking cock on stream.
<<else>>
You explain that you don't own a dildo that you could suck on stream.
<</if>>
<br><br>
Your lack of enthusiasm is a definite turn-off for your viewers, and even you amping up the sluttiness for the rest of the match fails to revive the depressed interest.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty stream strip
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 18 'terrible' $EXPOSED>>
<<if $scene.streaming.dildo>>
<<removeAllClothing>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'terrible' $EXPOSED>>
<<set _humil = setup.getTotalValue("humiliation")>>
<<applyExperience 'humiliation' _humil 'terrible' $EXPOSED>>
<<set _mod = (setup.getTotalValue("bimbofication") + setup.getTotalValue("humiliation"))/400>>
<<else>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<set _mod = setup.getTotalValue("bimbofication")/400>>
<</if>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * _mod))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * _mod*.7))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * _mod*.5))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * _mod*.3))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You grin and agree to chat's request... gaining even more cheers when you then dive into the highest rank solo queues.<br>
<br>
The challenge at this level is, as expected, brutal
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") > 15>>
as you compete with the fellow elite of the elite... often in various forms of handicap matches.
<<else>>
as you compete against people far better than you.
<</if>>
<<else>>
as you get repeatedly crushed.
<</if>>
With each piece of clothing you shed chat gets more excited, and more viewers turn in and you end the session breathless, naked, but actually feeling like challenging yourself so much helped you pickup a few new tricks.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty stream decline strip
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 10 'terrible' $EXPOSED>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = -Math.max(5, Math.floor($player.flags.streaming.subs *.13))>>
<<set $scene.streaming.domsChange = -Math.max(3, Math.floor($player.flags.streaming.doms *.07))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum *.05))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You refuse to strip on stream... much to the annoyance of your viewers and you wince at the resulting veritable rage-exodus.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty stream play gagged
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.gag>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = -Math.max(5, Math.floor($player.flags.streaming.subs *.13))>>
<<set $scene.streaming.domsChange = -Math.max(3, Math.floor($player.flags.streaming.doms *.07))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum *.05))>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.gag>>
You grin and accept chat's "challenge," taking a moment to consider how you'll gag yourself...<br>
<br>
[<<moveTo "event_streaming_slutty_gag_2" "You've got some tape handy..." 180 "<<set $scene.gag_type='tape'>>">>]<br>
[<<moveTo "event_streaming_slutty_gag_2" "Clean panties." 180 "<<set $scene.gag_type='panties_clean'>>">>]<br>
<<if setup.checkItemTypeWorn("panties")>>
[<<moveTo "event_streaming_slutty_gag_2" "Gag yourself with your dirty panties." 180 "<<set $scene.gag_type='panties_dirty'>>">>]<br>
<<else>>
[@@.link_locked;You are not wearing panties.@@]<br>
<</if>>
<<if false>>
<<if setup.checkItemOwned("ball_gag_streamer")>>
[<<moveTo "event_streaming_slutty_gag_2" "A ball gag." 180 "<<set $scene.gag_type='ball'>>">>]
<br>
<<else>>
[@@.link_locked;You do not own a ball gag.@@]<br>
<</if>>
<<if setup.checkItemOwned("ring_gag_streamer")>>
[<<moveTo "event_streaming_slutty_gag_2" "A ring gag." 180 "<<set $scene.gag_type='ring'>>">>]
<<else>>
[@@.link_locked;You do not own a ring gag.@@]
<</if>>
<</if>>
<<else>>
You reject the request that you play gagged, your justification that you would be unable to interact with chat falling on deaf ears as you shed viewers until the bounty times out.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<</if>>
</div>/*#
#desc: stream: slutty stream play gagged
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 5 'little' $EXPOSED>>
<<applyExperience 'humiliation' 12 'terrible' $EXPOSED>>
<<switch $scene.gag_type>>
<<case 'tape'>>
<<set $scene.gagId = 'tape_gag'>>
<<set _mod = .8>>
<<set $scene.streaming.tips += 30>>
<<case 'panties_dirty'>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<removeItem $scene.panties true>>
<<set $scene.gagId = 'dirty_panty_gag'>>
<<set _mod = 1.1>>
<<set $scene.streaming.tips += 70>>
<<case 'panties_clean'>>
<<set $scene.gagId = 'panty_gag'>>
<<set _mod = .8>>
<<set $scene.streaming.tips += 20>>
<<case 'ball'>>
<<set $scene.gagId = 'ball_gag_streamer'>>
<<set _mod = .9>>
<<set $scene.streaming.tips += 40>>
<<case 'ring'>>
<<set $scene.gagId = 'ring_gag_streamer'>>
<<set _mod = 1>>
<<set $scene.streaming.tips += 50>>
<</switch>>
<<addItem $scene.gagId>>
<<wearItem $scene.gagId true>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .1*_mod))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * _mod*.05))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * _mod*.07))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * _mod*.03))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.gag_type>>
<<case 'tape'>>
You wrap tape over your mouth and dive back into game, mumbling responses to chat as they cheer (and tease) you on through the match.
<<case 'panties_dirty'>>
You peel off your panties and stuff them into your mouth to the roaring approval — and jealousy, of chat. You moan and drool through your dirty panties, not speaking, but definitely "connecting" with your viewers for the rest of the stream.
<<case 'panties_clean'>>
You grab a fresh pair of panties and stuff them into your mouth. Chat chides you for not using a used pair, several offering to send you theirs as they cheer you on.
<<case 'ball'>>
You grab a classic ball-gag, egging chat on as you seductively take it between your lips and buckle it tight.<br>
<br>
Chat cheers as you moan your way through the rest of your stream, drooling quite a bit around the large, shiny ball.
<<case 'ring'>>
You grab a ring gag, buckling it tight and waggling your tongue as you moan and drool your way through the rest of the stream — much to chat's roaring enjoyment.
<</switch>>
<br><br>
Finishing your stream you make a kissing sound through your gag and wave, waiting until you're off-camera to free yourself from your stifling bondage.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60 "<<removeItem $scene.gagId true>><<deleteItem $scene.gagId>>">>]
</div>/*#
#desc: stream: slutty stream play tits out
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 10 'normal' $EXPOSED>>
<<include "calcTopId">>
<<for ;$scene.topId != "";>>
<<removeItem $scene.topId true>>
<<include "calcTopId">>
<</for>>
<<if setup.checkItemTypeWorn("bra")>>
<<set _bra = setup.getItemFromType("bra")>>
<<removeItem _bra true>>
<</if>>
<<applyExperience 'bimbofication' 12 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 8 'normal' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(2, Math.floor($player.flags.streaming.followers * .03))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * .01))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .01))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * .01))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You strip far enough to show off your large, shapely breasts and chat cheers. You jiggle and flirt your way through the rest of the stream... though it seems that merely going topless is not the view-gainer that it once was.<br>
<br>
<<printThought "Guess it's like they say, the audience is never content, they always want you to give them more...">><br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty stream decline play tits out
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 10 'normal' $EXPOSED>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = -Math.max(5, Math.floor($player.flags.streaming.subs *.1))>>
<<set $scene.streaming.domsChange = -Math.max(3, Math.floor($player.flags.streaming.doms *.15))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum *.15))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You don't feel like playing the topless streamer... and chat rakes you over the coals as you watch numbers tank in protest to your sudden prudishness.<br>
<br>
<<printThought "Yikes... guess once you start down the titty streamer route, there's no going back.">><br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty stream twerk for the camera
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 12 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 8 'normal' $EXPOSED>>
<<set _mod = (setup.getTotalValue("strength") + setup.getTotalValue("feminization"))/400>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * _mod))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * _mod*.75))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * _mod*.5))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * _mod*.25))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
While you wait for the next queue you stand up to give your viewers a real show — positioning to make sure they have a nice view before bending over and wiggling your butt.<br>
<br>
<<if setup.getTotalValue("strength") > 10>>
You've always had good hips but you'd swear your butt is looking even THICC'er of late.<br>
<br>
<<printThought "Must be all those squats...">>
<<else>>
You've always had good hips but you'd swear your butt is looking a little THICC'er of late.<br>
<br>
<<if setup.getTotalValue("strength") > 5>>
<<printThought "I can't be getting a squat booty this fast, can I?">>
<<else>>
<<printThought "Must be a trick of the light or something...">>
<</if>>
<</if>>
<br><br>
Whatever it is, your booty jiggles and chat cheers. By the time your queue pops and you sit down to continue playing chat has descended into a spirited argument of which would be better — to spank your ample bum, or to butt-fuck your plentiful posterior.<br>
<br>
You focus more on the game and just smile, occasionally egging one group or the other onward without taking a side yourself, the arguments — combined with people gif'ing your short performance, seeing quite a few viewers upgrade their status...<br>
<br>
<<printThought "Just gotta give people what they want... and what they want, is dat ass...">><br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty stream decline twerk for the camera
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = -Math.max(5, Math.floor($player.flags.streaming.subs *.13))>>
<<set $scene.streaming.domsChange = -Math.max(3, Math.floor($player.flags.streaming.doms *.15))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum *.05))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You reply that you don't want to get up and wait for your queue to pop... by which time you've lost a chunk of viewers as they head off to watch someone "@@.generic_male1;More fun.@@"<br>
<br>
<<printThought "Hmm... guess as a performer at this tier the expectation is that I... perform.">><br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty stream technician joins you on stream
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.tech>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_technician' 1>>
<<set $scene.streaming.followerChange = -5+random(1,10)>>
<<set $scene.streaming.subsChange = -2+random(1,4)>>
<<set $scene.streaming.domsChange = -1+random(1,3)>>
<<set $scene.streaming.cumChange = -1+random(1,3)>>
<<include "followersChange">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.tech>>
You welcome <<=setup.getNpcName("npc_technician","first")>> to your party and introduce your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>slave<</switch>> to chat.<br>
<br>
Immediately people are grilling you for information only for <<=setup.getNpcName("npc_technician","first")>> to pop up in your stream personally (you blush as you notice that she's apparently already a <<switch $player.flags.streaming.stage>><<case 6>>cumtributor<<case 5>>domscriber<<case 3 4>>subscriber<<default>>ERROR: unexpected player.flags.streaming.stage <<=$player.flags.streaming.stage>><</switch>>) and talk about how
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
she is your owner — and now it's time for you to serve her as her personal heal-slut.
<<case 'neutral' ''>>
she is, in fact, your girlfriend, and that she actually taught you the game, and is now here to team up with you and stomp some noobz.
<<case "sub">>
she is your obedient slave, here to serve you as your personal heal-slut.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
Chat immediately shows their excitement — while also asking her when she's going to appear on-stream with you as you queue pops.<br>
<br>
[<<moveTo "event_streaming_slutty_tech_2" "Let's do this!" 1800>>]
<<else>>
You decline <<=ps(setup.getNpcName("npc_technician","first"))>> invite with a lame excuse. Turning her down kind of kills your mood and, after losing a couple of rounds, you decide to pack it in for the day, your numbers barely changed.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<</if>>
</div>/*#
#desc: stream: slutty stream play w/technician
#status: RELEASED 0.8.9.0
#ignore_spell: ult
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'skip' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .3))>>
<<set $scene.streaming.cumChange = Math.max(3, Math.floor($player.flags.streaming.cum *.3))>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * .2))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * .3))>>
<<case 'neutral' ''>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * .25))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * .25))>>
<<case "sub">>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * .3))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * .2))>>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
You and <<=setup.getNpcName("npc_technician","formal")>> make quite a team — she pushes aggressively as you do everything you can to keep up — and keep her up, your reward threefold: steady progress up-field, the excited cheers of your viewers and, most importantly of all, the approval of your <<=setup.getNpcName("npc_technician","title")>> as she gushes about "@@.npc_technician;What a good heal-slut you are,@@" and how much she loves to feel your healing beam "@@.npc_technician;All over me.@@"<br>
<br>
The two of you go on a tear, winning a string of matches as <<=ps(setup.getNpcName("npc_technician","formal"))>> encouragement gets even more lewd; talking about how horny it makes her, and how your popping your ult makes her almost want to "@@.npc_technician;Come... over and visit.@@"
<<case 'neutral' ''>>
You and <<=setup.getNpcName("npc_technician","first")>> make quite a team — a deadly duo providing fire support and precision kills on the enemy team that leads you to a string of victories.<br>
<br>
The whole time <<=setup.getNpcName("npc_technician","first")>> flirts with you unabashedly, talking celebrating each kill you score with how talking about how hot you look doing it, egged on even further by chat as she tease about how the two of you might "celebrate" your glorious victory...
<<case "sub">>
You and your slave make quite a team, as you push hard into enemy territory with <<=setup.getNpcName("npc_technician","first")>>, and her important healing beam, all but glued to your ass, the whole time talking about how much she loves "@@.npc_technician;Healing tank-sama.@@"<br>
<br>
The two of you go on a roll, stringing together a chain of victories as you praise your slave and <<=setup.getNpcName("npc_technician","first")>> gushes back with adoration.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
Chat clearly likes the sound of that and you gawk at how much your numbers increase.<br>
<br>
Your phone buzzes with a text message as you realise <<=setup.getNpcName("npc_technician","first")>> is sending you a message where chat can't see it.<br>
<br>
<<if $player.flags.hotties_game.rank >= 8>>
"@@.npc_technician;That was fun! And you're getting pretty damn good. Hit me up whenever you want to rank, I think we could make a run at the pairs ladder this season!@@"<br>
<br>
You fire back that you'll let her know when you're ready to play again and then spend a bit of time welcoming your new patrons before signing off.
<<else>>
"@@.npc_technician;That was fun! Nice to just play and not be all stressed in regards to ranking up.@@"
<</if>>
<br><br>
You fire back that you'll let her know when you're ready to play again and then spend a bit of time welcoming your new patrons before signing off.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: whore
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You sit down for another streaming session and set your broadcast mode to XXXstreaming. Your heart is pounding with excitement at the thought of your fans watching "play" while putting on essentially a live sex-show.<br>
<br>
[<<moveTo "event_streaming_whore_2" "Go live, slut!" 1800>>]<br>
[<<moveTo "room_livingroom" "Change your mind, do not stream today." 60>>]
</div>/*#
#desc: stream: whore root
#status: RELEASED 0.8.9.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.events = []>>
<<set $scene.streaming.events.push('facefuck')>>
<<if setup.getTotalValue("dominance") > 5>>
<<set $scene.streaming.events.push('tankdom')>>
<</if>>
<<if $scene.streaming.collar>>
<<set $scene.streaming.events.push('slave')>>
<</if>>
<<if $player.flags.streaming.doms > 10>>
<<set $scene.streaming.events.push('healslut')>>
<</if>>
<<if $fetish.slurs>>
<<set $scene.streaming.events.push('slurs')>>
<</if>>
<<if $player.body_ref.penis && !setup.checkItemTypeWorn("cage") && $player.body.penissize[0] >= 6 && $player.timebased.horny > 70>>
<<set $scene.streaming.events.push('suck_self')>>
<</if>>
<<if $fetish.cum && $player.flags.streaming.doms > 10 && $player.flags.streaming.subs > 100 && $player.flags.streaming.followers > 1000 && setup.getTotalValue("cum") > 10>>
<<set $scene.streaming.events.push('cum')>>
<</if>>
<<if $now.getUTCDay()>0 && $now.getUTCDay()<6 && $now.getUTCHours() > 18 && setup.hasFreeTime($now, $player, $currentTasks, 3600) && $npc_technician.flags.evil != 1 && !State.hasPlayed("event_destroy_technician_6")>>
<<if State.hasPlayed("event_streaming_slutty_tech_2")>>
<<if $npc_technician.relationship.her_role == 'dom' && State.hasPlayed("event_streaming_slutty_tech_2")>>
<<set $scene.streaming.events.push('technician_dom')>>
<<elseif $npc_technician.relationship.her_role == 'sub' && State.hasPlayed("event_streaming_slutty_tech_2")>>
<<set $scene.streaming.events.push('technician_sub')>>
<</if>>
<<if $npc_technician.relationship.kinks.penis && !$npc_technician.relationship.kink_indulge.penis>>
<<set $scene.streaming.events.push('technician_penis')>>
<</if>>
<</if>>
<</if>>
<<if $player.flags.streaming.doms + $player.flags.streaming.subs > 100>>
<<set $scene.streaming.events.push('raid')>>
<</if>>
<<set $scene.streaming.event = $scene.streaming.events.random()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.streaming.event>>
<<case 'technician_dom'>>
You're about to start streaming when you get a ping from <<=setup.getNpcName("npc_technician","formal")>>.<br>
<br>
"@@.npc_technician;Ooooh! You're gonna stream today? How about I pop on over and we give the fans a REAL show — I've got some training techniques that'd be perfect for a hot slut- I mean a HOTTIES player like yourself.@@"<br>
<br>
[<<moveTo "event_streaming_whore_technician_dom_1" 'Yes, <<=setup.getNpcName("npc_technician","formal")>>.' 1200>>]<br>
[<<moveTo "event_streaming_whore_technician_no" "Decline her offer." 1800 "<<set $scene.door=false>>">>]
<<case 'technician_sub'>>
You're about to start streaming when you get a ping from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_technician;Ooooh! You're gonna stream today? How about I pop on over and help — you'll be able to focus on the game so much better with a doting slave taking care of you...@@"<br>
<br>
You aren't quite sure about her "help" outweighing the distraction, but it'd be fun, and you're sure your fans will enjoy the guest spot.<br>
<br>
[<<moveTo "event_streaming_whore_technician_sub_1" "You'd love to have your slave over!" 1200>>]<br>
[<<moveTo "event_streaming_whore_technician_no" "Decline her offer." 1800 "<<set $scene.door=false>>">>]
<<case 'suck_self'>>
You start playing, your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly shaped<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock sticking up proudly and dripping for the camera.<br>
<br>
Chat is soon gushing about how much they'd love to lick you clean... when someone raises the question of if you can suck yourself, and soon there's a rising "bounty" for you to make the attempt...<br>
<br>
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
<<printThought "Hmm, looks like a way to put all that yoga to good use...">>
<<else>>
<<printThought "Hmm, a payoff for all that yoga?">>
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
<<printThought "Hmm, I don't have to lean far, but that still seems like a challenge.">>
<<else>>
<<printThought "That seems like quite a stretch...">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_streaming_whore_selfblow_1" "Try and suck yourself off on camera." 1800>>]<br>
[<<moveTo "event_streaming_whore_no" "Decline the suggestion." 1800>>]
<<case 'facefuck'>>
You have a bit of a rocky first round and chat turns a bit mean, saying that in "penance" you should spend some time "apologising" to your collection of regulation dildos...<br>
<br>
[<<moveTo "event_streaming_whore_facefuck_1" "That's reasonable, face-fuck in apology." 1800>>]<br>
[<<moveTo "event_streaming_whore_no" "You don't feel like doing that." 1800>>]
<<case 'slurs'>>
You're having some tough games when one of your so-called "fans" starts popping off, verbally abusing you as they call you a "@@.generic_male1;Worthless <<if $fetish.sissy>>sissy <</if>>faggot who should go back to cam-whoring rather than waste your time trying to play a game you suck at.@@"<br>
<br>
<<if $fetish.sissy>>
[<<moveTo "event_streaming_whore_slurs_1" "You are a sissy faggot, embrace the abuse." 1800 "<<set $scene.accept=true>>">>]<br>
<<else>>
[<<moveTo "event_streaming_whore_slurs_1" "You are a faggot, embrace the abuse." 1800 "<<set $scene.accept=true>>">>]<br>
<</if>>
[<<moveTo "event_streaming_whore_slurs_1" "Ban them." 1800 "<<set $scene.accept=false>>">>]
<<case 'tankdom'>>
You get assigned the tank role. Your support speaks up in voice soft, cute and a bit hesitant...<br>
<br>
<<printThought "Hmm, sounds like someone needs a tank-dom to put them in their heal-slut place...">><br>
<br>
[<<moveTo "event_streaming_whore_tankdom_1" "Order around your heal-slut." 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_streaming_whore_no" "Just play normally." 1800>>]
<<case 'healslut'>>
You get assigned the healer role and chat immediately encourages you to go full heal-slut.<br>
<br>
[<<moveTo "event_streaming_whore_healslut_1" "Be the perfect heal-slut." 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_streaming_whore_no" "Just play normally." 1800>>]
<<case 'technician_penis'>>
You're playing when you get a message from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_technician;So... I was thinking about some of the interests you told me about and... well, I cooked up a plug-in that I think you would just LOVE... feel like taking it for a spin?@@"<br>
<br>
[<<moveTo "event_streaming_whore_penis_1" "Sure!" 1800>>]<br>
[<<moveTo "event_streaming_whore_technician_no" "Not today." 1800>>]
<<case 'slave'>>
Spotting your collar one of your Domscribers suggests that you add a leash and attach yourself to your monitor stand.<br>
<br>
[<<moveTo "event_streaming_whore_slave_1" "Be a slave to your fans..." 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_streaming_whore_no" "Not today." 1800>>]
<<case 'raid'>>
You're having fun playing and flirting with chat when there is a sudden jump in viewers. Loud and insulting it doesn't take you long to realise, from the insults thrown out calling you a "no-skill titty streamer," that this is a raid from some dude-bro other channel.<br>
<br>
[<<moveTo "event_streaming_whore_raid_1" "Challenge their home streamer back for an on-stream match." 1800>>]<br>
[<<moveTo "event_streaming_whore_raid_1_no" "B-b-banhammer." 1800>>]
<<case 'cum'>>
You crack into a can of some sponsor-provided energy drink when one of your fans makes the suggestion that a slut like you should drink it with cum!<br>
<br>
<<if $player.timebased.milking.cream_storage >= 50>>
[<<moveTo "event_streaming_whore_cum_1" "Add some cum from the fridge." 1800 "<<set $scene.action='fridge'>>">>]<br>
<<elseif $player.timebased.milking.cream_storage > 0>>
[@@.link_locked;You don't have enough cum stored to add to your drink.@@]
<</if>>
<<if $player.body_ref.penis && setup.canSexOrRemoveChastity("penis") && $player.body_ref.cumProduction > 0>>
[<<moveTo "event_streaming_whore_cum_1" "Jerk off into your drink." 1800 "<<set $scene.action='jerk'>>">>]<br>
<</if>>
[<<moveTo "event_streaming_whore_cum_1" "Point out you don't have cum to add." 1800 "<<set $scene.action='nohave'>>">>]<br>
[<<moveTo "event_streaming_whore_cum_1" "Ignore them and just enjoy your energy drink." 1800 "<<set $scene.action='ignore'>>">>]
<<default>>
ERROR: unexpected scene.streaming.event <<=$scene.streaming.event>>
<</switch>>
</div>/*#
#desc: whore stream: turn down technician
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
At the last moment you decide that you aren't up to do a stream with
<<if $npc_technician.relationship.her_role == 'dom'>>
<<=setup.getNpcName("npc_technician","formal")>> as your dominant guest.
<<else>>
your subby slave in attendance.
<</if>>
<br><br>
<<=setup.getNpcName("npc_technician","first")>> frowns and then ruffles your hair with a smile. "@@.npc_technician;Damn, and I got dressed up and everything! Ah well, if you're not feeling it, you're not feeling it. I'll catch you later my love.@@"<br>
<br>
She leans in to give you a parting kiss and then she's our the door and heading home.<br>
<br>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: whore stream: turn down chat
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<set $scene.streaming.followerChange = -Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = -Math.max(1, Math.floor($player.flags.streaming.doms * (random(5,15)/100)))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * (random(5,15)/100)))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You decline chat's request and just focus on playing... the result is slowly declining viewer numbers as people become disinterested with your "misnomer" XXXstream session.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: technician penis kink event
#status: RELEASED 0.8.9.0
#ignore_spell: samey
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<applyExperience 'penis' 16 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(5,15)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(10,20)/100)))>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $npc_technician.relationship.kink_indulge.penis = true>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You reply that you'd love to see what <<if $npc_technician.relationship.her_role == 'dom'>><<=ps(setup.getNpcName("npc_technician","formal"))>><<else>><<=ps(setup.getNpcName("npc_technician","first"))>><</if>> has cooked up and immediately follow the download link she sends you.<br>
<br>
"@@.npc_technician;Enjoy! :)@@" She says in parting and you load into the game... to find that nearly every asset has been replaced by a model of a cock... no, not just ANY cock, but <<if $npc_technician.relationship.her_role == 'dom'>><<=ps(setup.getNpcName("npc_technician","formal"))>><<else>><<=ps(setup.getNpcName("npc_technician","first"))>><</if>> big, beautiful broadsword...<br>
<br>
<<printThought "Oh my <<getWordGod>>...">><br>
<br>
The game — already a bit kinky thanks to your streaming activities, takes on a whole new dimension as every menu features cocks, your cursor — a cock, and every mob and art asset in game is replaced by cocks... at first it's a bit surreal but you find yourself impressed at how <<=setup.getNpcName("npc_technician","first")>> managed to utilize such an apparently limited medium to remake the game while still remaining playable — differences in size, stiffness, balls or no... after a few minutes you're playing as "normal" wielding a healing "gun" that is instead a cock spewing cum while chasing after the giant walking willy that is your tank...<br>
<br>
Watching your screen chat expresses mixed approval of the new mod, pointing out that it does get a bit samey after a while... and HOTTIES has such awesome baseline assets and skins.<br>
<br>
Still, the result is a fun game and you see your numbers bump up a fair bit at your depraved, enthusiastic enjoyment of play with penis as far as the eye can see...<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: technician comes over to dom
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
Startlingly fast <<=setup.getNpcName("npc_technician","formal")>> is at your flat, shedding her overcoat to reveal her full domme outfit underneath.<br>
<br>
"@@.npc_technician;Alright, Princess — we're going to train you good and hard, <<if $player.flags.hotties_game.rank >= 7>>I don't care if the game already classifies you as a Goddess — you can be better<<else>>you need to keep improving if you're going to rise to the Goddess rank<</if>>.@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_technician","formal")>>@@" you reply, soon finding yourself bound to your chair, sitting on a remote-control dildo with her hard, dripping <<getWordPenis false>> pressed against your cheek. "@@.npc_technician;You ready to start streaming?@@" She asks, looking down at you with a grin... and the remote in one hand.<br>
<br>
[<<moveTo "event_streaming_whore_technician_dom_2" 'Yes, <<=setup.getNpcName("npc_technician","formal")>>.' 1200>>]<br>
[<<moveTo "event_streaming_whore_technician_no" "You changed your mind... you don't want to stream today." 60>>]
</div>/*#
#desc: stream: technician doms you in person
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<playerOrgasm>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'skip' $EXPOSED>>
<<applyExperience 'oral' $npc_technician.penis_size 'very' $EXPOSED>>
<<set $scene.punish = 20-setup.getTotalValue("gaming")>>
<<applyExperience 'bdsm' $scene.punish 'very' $EXPOSED>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'very' $EXPOSED>>
<<applyExperience 'bondage' 11 'normal' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(20,25)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(15,20)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(10,20)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(5,15)/100)))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png" setup.charImage("npc_technician","npc_technician_dom_2")>>
<div id="invframe" class="scrolltext">
The stream starts and your fans immediately explode with excitement at the sight of your "@@.generic_male1;Smoking hot domme!@@"<br>
<br>
A portion of chat just wants <<=setup.getNpcName("npc_technician","formal")>> to fuck you, but she's here for "training" and, after letting you and chat enjoy a quick slurp of her <<if $npc_technician.relationship.her_caged>>caged <</if>><<getWordPenis false>>, she has you queued up and into a game.<br>
<br>
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") >= 20>>
Your perfect play means you don't earn punishment, instead seeing frequent rewards of
<<elseif setup.getTotalValue("gaming") > 15>>
Your superb play means you get only infrequent corrective punishments; instead spending most of the game winning in both senses of the word as you get to enjoy
<<else>>
You make the odd mistake — and are quickly reprimanded for such, but you still more of your time enjoying
<</if>>
<<if $npc_technician.relationship.her_caged>>worshiping<<else>>sucking on<</if>> <<=ps(setup.getNpcName("npc_technician","formal"))>> delicious <<if $npc_technician.relationship.her_caged>>caged <</if>><<getWordPenis false>>, or being granted permission to grind on its silicone clone that you're sitting on.
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
Your skills prove quite lacking, which means quite a number of painful electric shocks and only the rare reward that is being allowed to <<if $npc_technician.relationship.her_caged>>lick<<else>>suck on<</if>> <<=ps(setup.getNpcName("npc_technician","formal"))>> delicious <<if $npc_technician.relationship.her_caged>>caged <</if>><<getWordPenis false>>.
<<else>>
Your skills are pathetic, your play disrupted even more by the frequent punishing shocks, but that just makes the rare occasion where you DO get to <<if $npc_technician.relationship.her_caged>>worship<<else>>taste<</if>> <<=ps(setup.getNpcName("npc_technician","formal"))>> wonderful <<if $npc_technician.relationship.her_caged>>caged <</if>><<getWordPenis false>> all the more motivating.
<</if>>
<</if>>
<br><br>
By the end of your play session you, <<=setup.getNpcName("npc_technician","formal")>> and most of chat are beyond pent up... as you notch a final win for the day <<=setup.getNpcName("npc_technician","formal")>> shares your "final" reward, <<if $npc_technician.relationship.her_cage>>letting you lick her cage<<else>>sliding her <<getWordPenis false>> past your lips and letting you suck<</if>> to your hearts content as the dildo you're sitting on vibrates to push you over the edge<<if !$npc_technician.relationship.her_cage>> at practically the same moment she <<if $fetish.cum>>fills your belly with your reward<<else>>reaches her own peak of satisfaction<</if>><</if>>.<br>
<br>
Chat explodes with cheers and <<=setup.getNpcName("npc_technician","formal")>> thanks them all for tuning in before ending the stream, giving you a kiss, and then untying your bonds.<br>
<br>
"@@.npc_technician;You did wonderful today,@@" she states, giving you a soft head-pat as a bonus reward. "@@.npc_technician;And I had, like... SO MUCH fun.@@"<br>
<br>
You thank her for joining you to "help" and she grins, giving you a parting kiss before pulling on her jacket and heading home... walking a little wobbly up the hallway, you notice with a touch of pride.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: technician comes over to sub
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'skip' $EXPOSED>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'skip' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png" setup.charImage("npc_technician","npc_technician_sub")>>
<div id="invframe" class="scrolltext">
With startling speed <<=setup.getNpcName("npc_technician","first")>> is at your flat, shedding her overcoat to reveal her full slave outfit underneath.<br>
<br>
"@@.npc_technician;Alright, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> shall I slide under your desk to keep up morale while you train?@@"<br>
<br>
[<<moveTo "event_streaming_whore_technician_sub_2" 'Good girl.' 1200>>]<br>
[<<moveTo "event_streaming_whore_technician_no" "You changed your mind... you don't want to stream today." 60>>]
</div>/*#
#desc: stream: technician sub training
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'skip' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(20,25)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(15,20)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(10,20)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(5,15)/100)))>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.unlockable = $npc_technician.relationship.keyholder || setup.checkItemInInventory(_keyId)>>
<<if $scene.unlockable>>
<<include "removeCage_retractSissyomatic">>
<<playerOrgasm>>
<</if>>
<<else>>
<<playerOrgasm>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png" setup.charImage("npc_technician","npc_technician_sub")>>
<div id="invframe" class="scrolltext">
<<if $scene.cage != "" && !$scene.unlockable>>
You may not be able to remove your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>, but your cute slave makes do, massaging your legs, whispering encouragement... kissing your thighs gently and helping you stay calm and focused as she gives you general tips of things to focus on practicing.
<<elseif $scene.cage>>
<<=setup.getNpcName("npc_technician","first")>> removes your <<if $scene.isCage>>cage<<else>>chastity belt<</if>> and then gets to work with lips and tongue; showing off her oral abilities in between whispering encouragement or generalised advice.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> immediately gets to work with lips and tongue; showing off her oral abilities in between whispering encouragement or generalised advice.
<</if>>
The combination of support and stimulation somehow helping you stay calm and focused on the game as you notch some good wins, but, more importantly, hone your craft.<br>
<br>
<<if setup.hasUpgrade($computer, 'holocam')>>
The holocam setup ensures that chat has a great view of what's going on above AND below the desk.
<<else>>
You make sure to take advantage of breaks in the game to move your camera below the desk so that your viewers have a full understanding of what's going on.
<</if>>
<<=setup.getNpcName("npc_technician","first")>> smiles and winks adorably at the camera while remaining focused on her "job" — the whole thing leading to a very satisfying, and productive, training session.<br>
<br>
The final round for the day in the books — with you scoring another win, you pull your cute slave up into your lap, the two of you making out on stream before finally shutting down the broadcast.<br>
<br>
[<<moveTo "event_streaming_whore_technician_sub_3" 'That was fun!' 300>>]<br>
</div>/*#
#desc: stream: technician sub training
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.unlockable>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png" setup.charImage("npc_technician","npc_technician_sub")>>
<div id="invframe" class="scrolltext">
<<if $scene.unlockable>>
<<=setup.getNpcName("npc_technician","first")>> dutifully helps you back into your chastity device and then it's time for her to go.
<</if>>
The two of you share a parting kiss as she tells you how much she enjoyed "@@.npc_technician;Helping@@" from under your desk. You confirm you loved it too, and are looking forward to doing it again sometime.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins, stealing another kiss before putting her concealing jacket back on and leaving for home.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "That was great, check your streamer dashboard." 60>>]
</div>/*#
#desc: stream: autofellatio
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'normal' $EXPOSED>>
<<playerOrgasm>>
<<if setup.getTotalValue("dexterity") > 10>>
<<applyExperience 'oral' _dex 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * setup.getTotalValue("dexterity")/100))>>
<<set $scene.streaming.subsChange = Math.max(2, Math.floor($player.flags.streaming.subs * setup.getTotalValue("dexterity")/100))>>
<<set $scene.streaming.domsChange = Math.max(2, Math.floor($player.flags.streaming.doms * setup.getTotalValue("dexterity")/100))>>
<<set $scene.streaming.cumChange = Math.max(5, Math.floor($player.flags.streaming.cum * setup.getTotalValue("dexterity")/100))>>
<<else>>
<<applyExperience 'cum' 14 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,10)/100)))>>
<<set $scene.streaming.subsChange = Math.max(2, Math.floor($player.flags.streaming.subs * (random(5,10)/100)))>>
<<set $scene.streaming.domsChange = Math.max(2, Math.floor($player.flags.streaming.doms * (random(5,10)/100)))>>
<<set $scene.streaming.cumChange = Math.max(3, Math.floor($player.flags.streaming.cum * (random(5,15)/100)))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You finish your current round and roll your seat back to see if you can fulfill chat's request.<br>
<br>
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
Your combination of flexibility and length allows you to not only suck yourself off, but to deepthroat yourself, your entire body straining as you go almost balls-deep in your own throat.
<<else>>
The combination of your flexibility and size means you're able to self-administer a fairly serviceable blowjob.
<</if>>
<br><br>
Chat cheers you on enthusiastically, encouraging you to reposition so that you're upside-down with your <<getWordMyPenis>> stuffed between your lips.<br>
<br>
You lick and suck until you burst, cumming all over your face to a massive pop from your fans, leaning back and panting as your <<getWordMyPenis>> softens and shrinks and you catch your breath.<br>
<br>
<<printThought "Wow, a bit awkward still but... wow.">>
<<else>>
You make an attempt but, even with your massive <<getWordPenis false>>
<<if setup.getTotalValue("dexterity") > 5>>
there's no way you can get more than the tip of your tongue to your member.
<<else>>
you can't come anywhere close to sucking yourself off.
<</if>>
Still, despite your failure, chat is amused by the attempt, egging you on as you try different angles... and eventually end up inverted and jerking a full load into your own face.
<br><br>
<<printThought "Definitely need more yoga...">>
<</if>>
<br><br>
Looking up you realise you're about to time out of the game due to inactivity. Thanking your fans as they shower you with praise for the show you wrap up the stream and clean up.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: dildo blowbang
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'gaming' 10 'normal' $EXPOSED>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $EXPOSED>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * setup.getTotalValue("oral")/100))>>
<<set $scene.streaming.subsChange = Math.max(2, Math.floor($player.flags.streaming.subs * setup.getTotalValue("oral")/100))>>
<<set $scene.streaming.domsChange = Math.max(2, Math.floor($player.flags.streaming.doms * setup.getTotalValue("oral")/100))>>
<<set $scene.streaming.cumChange = Math.max(5, Math.floor($player.flags.streaming.cum * setup.getTotalValue("oral")/100))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You place a pair of dildos in front of you and start sucking both of them as you wait for the next queue. With chat's encouragement you escalate from just double sucking to bobbing up and down in turn,
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
smoothly
<<else>>
roughly
<</if>>
deepthroating each in turn as you play, holding at depths for as long as you can
<<else>>
<<if setup.getTotalValue("oral") > 5>>
gagging on each in turn as you pound your throat
<<else>>
sputtering as you fail to take more than the top few centimetres
<</if>>
<</if>>
while you strain your neck to keep your eyes on the screen.<br>
<br>
Strangely your "blowbang" game actually proves better than the one before, as your team pounds through the enemy line just as the dual dildos pound your throat.<br>
<br>
Drooling and sputtering by the end of the round you finally receive your congratulations from chat as they come to an agreement that you'd performed sufficient penance for your earlier failure, but, as a reward, you should spend more time sucking cock.<br>
<br>
You moan submissively, taking a dildo in each hand and leaning back in your chair to alternate taking one or both as far as you can until the stream ends.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: verbal abuse in chat
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'humiliation' 16 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(5,15)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(10,20)/100)))>>
<<else>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'little' $EXPOSED>>
<<set $scene.streaming.followerChange = -Math.max(1, Math.floor($player.flags.streaming.followers * (random(5,10)/100)))>>
<<set $scene.streaming.subsChange = -Math.max(3, Math.floor($player.flags.streaming.subs * (random(0,5)/100)))>>
<<set $scene.streaming.domsChange = -Math.max(5, Math.floor($player.flags.streaming.doms * (random(3,7)/100)))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * (random(5,10)/100)))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Rather than countering the intruder in chat you moan with lust, replying that "@@.pc;Yes, I am a worthless <<if $fetish.sissy>>sissy <</if>>faggot@@" — before giving them a free domscriber account to reward their putting you in your place.<br>
<br>
The floodgates open and soon all of chat is heaping abuse on you, calling out your every mistake and calling you a bitch and a whore, telling you how stupid you are to even think anyone would watch you for your play while ordering you to make ahegao faces and expose yourself to affirm just what a trashy slut you truly are.<br>
<br>
By the end of the stream you've lost a string of games, but hardly care, you've been degraded and insulted and called every name in the book... and the only thing that turns you on more than that... is how much your fan numbers appear to have increased.<br>
<br>
<<printThought "I really am an exhibitionist <<if $fetish.sissy && setup.getTotalValue('humiliation') > 10>>sissy <</if>>slut...">>
<<else>>
You ban the offending viewer and chat evens out. Most of your fans seem to approve of your aggressive action... though, given the nature of your stream, you have a feeling a handful of them would have been just as entertained if you embraced the abuse.<br>
<br>
The remainder of the stream passes without incident.
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: tankdom
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(5, Math.floor($player.flags.streaming.followers * 2*(_dom/100)))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * 2*(_dom/100)))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * (_dom/100)))>>
<<set $scene.streaming.cumChange = Math.max(3, Math.floor($player.flags.streaming.cum * 3*(_dom/100)))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
Even before the match starts you lay into your support, cooing gently, telling them how, if they are your "good girl" and keep you nice and healed for the whole match your team is sure to win.<br>
<br>
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
With your skills they are almost instantly putty in your hands, softly replying "@@.generic_female1;Yes <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" as they instantly become your pocket healslut.
<<else>>
With your skills it doesn't take much before they are softly replying "@@.generic_female1;Yes <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@"
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
It takes a bit of work, but as you show your skills and talk about "protecting" your sweet heal-slut, they come around. By mid match
<<else>>
It's a challenge for your skills, but fortunately you are dealing with a natural submissive. By the midpoint of the match
<</if>>
they are responding "@@.generic_female1;Yes <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" to your every command.
<</if>>
<br><br>
With you leading the charge and your obedient heal-slut keeping you going your team cruises to victory... you shower your obedient assistant with praise for their performance and it almost sounds like they cum midway through the replay of your play of the game.<br>
<br>
Chat has been quiet, but encouraging through the entire display and they congratulate you at the end as you order your healer to keep up their practice before ending your stream.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: healslut
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<<applyExperience 'bimbofication' 15 'very' $EXPOSED>>
<<applyExperience 'oral' 14 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 14 'unbelievable' $EXPOSED>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(5, Math.floor($player.flags.streaming.followers * 3*(_sub/100)))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * 2*(_sub/100)))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * 2*(_sub/100)))>>
<<set $scene.streaming.cumChange = Math.max(3, Math.floor($player.flags.streaming.cum * (_sub/100)))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
Chat is eager for a sort of "replay" of your first XXXstream stream... and you're more than happy to give it to them.
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getTotalValue("submission") > 15>>
Going all out you moan and beg
<<else>>
Doing your best over-the-top slave impression
<</if>>
<<else>>
<<if setup.getTotalValue("submission") > 5>>
Playing the part of a nervous slave
<<else>>
Stumbling through the role of novice slave
<</if>>
<</if>>
whenever your lips are not wrapped around the dildo in front of you, bouncing on its <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>twins<<else>>twin<</if>> mounted to your chair whenever you are given permission.<br>
<br>
You win the match, but you hardly care, all that matters is keeping your tank — and your fans happy, and if that means you being their eager, desperate, horny, submissive healslut... well, what could be more perfect than that?<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slave stream
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(10,20)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(5,15)/100)))>>
<<addItem 'stream_leash'>>
<<wearItem 'stream_leash' true>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You submissively run a leash from your collar to the computer and play the rest of your rounds as chat's "slave" — working hard for your team to earn the slightest praise, all the while obsequiously thanking chat for the privilege and talking about how much you love being their slave.<br>
<br>
Your performance seems to have garnered you a nice bump to your numbers and you sign off with a grateful smile and a submissive bow, waiting until you're no longer on camera to remove your leash.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60 "<<removeItem 'stream_leash' true>><<deleteItem 'stream_leash'>>">>]
</div>/*#
#desc: stream: raided by other stream
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<<if setup.getTotalValue("gaming") > 15>>
<<if $player.flags.hotties_game.rank >= 7>>
<<set _mod = 2>>
<<else>>
<<set _mod = .5>>
<</if>>
<<else>>
<<if setup.getTotalValue("gaming") > 10>>
<<set _mod = -.1>>
<<elseif setup.getTotalValue("gaming") > 5>>
<<set _mod = -.5>>
<<else>>
<<set _mod = -1>>
<</if>>
<</if>>
<<set $scene.streaming.followerChange = Math.floor(_mod*Math.max(1, Math.floor($player.flags.streaming.followers * (random(15,20)/100))))>>
<<set $scene.streaming.subsChange = Math.floor(_mod*Math.max(3, Math.floor($player.flags.streaming.subs * (random(10,15)/100))))>>
<<set $scene.streaming.domsChange = Math.floor(_mod*Math.max(5, Math.floor($player.flags.streaming.doms * (random(3,7)/100))))>>
<<set $scene.streaming.cumChange = Math.floor(_mod*Math.max(1, Math.floor($player.flags.streaming.cum * (random(5,10)/100))))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
In reaction to the raid you first agree that, of course you're a "@@.pc;Cum-slut titty streamer...@@" but that you can totally kick their <<guy>>'s ass.<br>
<br>
Your fans rallying behind you, it isn't long before the streams are "merged" as you jump into a 1v1 challenge match.<br>
<br>
<<if setup.getTotalValue("gaming") > 15>>
<<if $player.flags.hotties_game.rank >= 8>>
You show your opponent what it REALLY means to be Goddess-rank as you don't just beat <<him>>, but utterly humiliate <<him>> as you stomp <<his>> ass back and forth across the arena.<br>
<br>
By the end of the match you haven't just won, you've swiped a sizable chunk of <<his>> fan-base.
<<else>>
It's a close match, but you win, "proving" that you're more than just a pretty face... while also doubling down that you absolutely are a pretty face compared to the basement troll who is your opponent.
<</if>>
<br><br>
Your fans go wild, the would-be raiders either slinking out of your stream in shame... or switching allegiances.
<<else>>
<<if setup.getTotalValue("gaming") > 10>>
You lose a squeaker of a match, but you still lose, a few of the opposing fans expressing some back-handed compliments as to your skills being good... but not good enough.
<<elseif setup.getTotalValue("gaming") > 5>>
You lose in relatively lopsided match, the opposing fans trashing your skills the whole time.
<<else>>
Your courage in laying down the challenge is only exceeded by your foolishness in going through with it — your opponent stomps you hard, some of your fans abandoning you in disgust in light of your failure.
<</if>>
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: raided by other stream
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(1, Math.floor($player.flags.streaming.followers * (random(5,10)/100)))>>
<<set $scene.streaming.subsChange = -Math.max(3, Math.floor($player.flags.streaming.subs * (random(0,5)/100)))>>
<<set $scene.streaming.domsChange = -Math.max(5, Math.floor($player.flags.streaming.doms * (random(3,7)/100)))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * (random(5,10)/100)))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You take aggressive action to ban all of the offending "raiders", but at a cost. While your more casual followers seem to appreciate you cleaning up the chat, some of your more high level fans show their distaste for the purge by dropping off.<br>
<br>
The rest of the stream passes slowly, the rollercoaster purge having dampened the mood.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: cum monster
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'fridge'>>
<<applyFatigue -20>>
<<applyExperience 'cum' 13 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(2, Math.floor($player.flags.streaming.followers * (random(3,7)/100)))>>
<<set $scene.streaming.subsChange = Math.max(2, Math.floor($player.flags.streaming.subs * (random(3,7)/100)))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * (random(5,10)/100)))>>
<<set $scene.streaming.cumChange = Math.max(5, Math.floor($player.flags.streaming.cum * .1))>>
<<case 'jerk'>>
<<applyFatigue -20>>
<<applyExperience 'cum' 10 'normal' $EXPOSED>>
<<playerOrgasm>>
<<set $scene.streaming.followerChange = Math.max(2, Math.floor($player.flags.streaming.followers * (random(3,7)/100)))>>
<<set $scene.streaming.subsChange = Math.max(2, Math.floor($player.flags.streaming.subs * (random(5,10)/100)))>>
<<set $scene.streaming.domsChange = Math.max(3, Math.floor($player.flags.streaming.doms * (random(3,7)/100)))>>
<<set $scene.streaming.cumChange = Math.max(5, Math.floor($player.flags.streaming.cum * .1))>>
<<case 'nohave'>>
<<applyFatigue -10>>
<<set $scene.streaming.followerChange = Math.max(1, Math.floor($player.flags.streaming.followers * (random(5,10)/100)))>>
<<set $scene.streaming.subsChange = Math.max(3, Math.floor($player.flags.streaming.subs * (random(5,10)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(10,15)/100)))>>
<<set $scene.streaming.cumChange = Math.max(5, Math.floor($player.flags.streaming.cum * .1))>>
<<case 'ignore'>>
<<applyFatigue -10>>
<<set $scene.streaming.followerChange = -Math.max(1, Math.floor($player.flags.streaming.followers * (random(5,10)/100)))>>
<<set $scene.streaming.subsChange = -Math.max(3, Math.floor($player.flags.streaming.subs * (random(5,10)/100)))>>
<<set $scene.streaming.domsChange = -Math.max(5, Math.floor($player.flags.streaming.doms * (random(10,15)/100)))>>
<<set $scene.streaming.cumChange = -Math.max(10, Math.floor($player.flags.streaming.cum * .2))>>
<</switch>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'fridge'>>
You fetch cum from the fridge and mix it into your drink.
<<case 'jerk'>>
You wait for the match to end and then <<if setup.checkItemTypeWorn("cage")>>unlock yourself just long enough to <</if>> jerk it into your drink, making sure that chat has a view of the entire thing.
<<case 'nohave'>>
<<if $player.flags.streaming.cumScriberUnlock>>
You reply that you don't have any cum to mix in. Your Cumscribers immediately promising to fap even harder to replenish your stores.
<<else>>
You reply that you don't have any cum on hand to mix in chat expresses disappointment and things move on.
<</if>>
<<case 'ignore'>>
You ignore the request and just drink your drink straight.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.action != 'ignore' && $scene.action != 'nohave'>>
You give your drink a stir and then down it — the thick, salty cum contrasting with the artificially flavoured citrus of the energy drink for a combination that
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
tastes almost as good as straight <<getWordCum>> —
<<else>>
is quite tasty —
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
is... strangely okay —
<<else>>
is more than a little disgusting —
<</if>>
<</if>>
as well as being invigorating.<br>
<br>
Chat cheers on your debauched drink, enthusiastically dubbing you a "@@.generic_male1;Cum Monster@@" <<if $player.flags.streaming.cumScriberUnlock>>as your Cumscribers assure you that they're already producing "more" for your consumption.<<else>>— with several fans talking about how they just busted a nut and would you like to come lick it up?<</if>><br>
<br>
<<elseif $scene.action == 'ignore'>>
Chat expresses dismay at your ignoring their request to focus on the game. Nothing much else happens before the end of the stream, save you losing fans.<br>
<br>
<</if>>
<<if $scene.action == 'ignore' || $player.flags.streaming.cumScriberUnlock>>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<<else>>
The current match ends and you're presented with a new opportunity.<br>
<br>
"You've been selected for our new Cumscriber pilot program — select elite-tier fans can sign up and send you their <<getWordCum>>! Showing you their full appreciation and giving you a reward even better than cash! We handle rapid delivery and quality confirmation leaving you to sit back and swallow the adoration of your fans!" <br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
<<printThought "This is the greatest program in the history of EVER.">>
<<else>>
<<printThought "Hmm... why am I tempted by that offer?">>
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<printThought "That is... one hell of a program.">>
<<else>>
<<printThought "What? That's disgusting!">>
<</if>>
<</if>>
<<if setup.getTotalValue("cum") > 5>>
[<<moveTo "event_streaming_whore_cum_2" "Sign up!" 60 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;No way are you going to solicit cum from strangers!@@]<br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;This is the opportunity of a lifetime! You can't possibly say no!@@]<br>
<<else>>
[<<moveTo "event_streaming_whore_cum_2" "Decline the offer." 60 "<<set $scene.accept=false>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: stream: cumscriber signup
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $player.flags.streaming.cumScriberUnlock = true>>
<<if $player.flags.streaming.cum == 0>>
<<set $player.flags.streaming.cum = 12>>
<</if>>
<<if $scene.action == 'nohave'>>
<<set $scene.streaming.followerChange = Math.max(1, Math.floor($player.flags.streaming.followers * (random(3,7)/100)))>>
<<set $scene.streaming.subsChange = Math.max(3, Math.floor($player.flags.streaming.subs * (random(3,7)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(5,10)/100)))>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(1, Math.floor($player.flags.streaming.followers * (random(5,10)/100)))>>
<<set $scene.streaming.subsChange = Math.max(3, Math.floor($player.flags.streaming.subs * (random(5,10)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(10,15)/100)))>>
<</if>>
<<include "followersChange">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You enrol in the Cumscriber trial program... and instantly gain a handful of fans at this "new" tier. Reading the fine print it sounds like you'll get automated daily deliveries of whatever your followers produce...
<<else>>
You decline participation in the Cumscriber trial program.
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: slutty get door while sitting on dildo
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.door>>
<<applyExperience 'humiliation' 16 'terrible' $EXPOSED>>
<<else>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .01))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * .01))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .005))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * .005))>>
<<set $scene.streaming.tips += Math.max(200, Math.floor($player.flags.streaming.followers*.1+$player.flags.streaming.subs*.3))>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.door>>
You stand up, and gasp as you are suddenly reminded of the dildo that you had been sitting on, that slides and wobbles behind you as you rush to the door.<br>
<br>
<<printThought "Shit, how could I have forgotten that? Well, I bet chat will be entertained...">><br>
<br>
Damage "done" you rush to the door without glancing at the screen... to find that it's a plaque congratulating you on hitting 1000 followers.<br>
<br>
<<printThought "And how many of them just watched a dildo slide out of my ass? <<getWordGod>> I am such a degenerate...">><br>
<br>
Returning to your desk you find the dildo still wobbling on the chair... your stream ended, a message on-screen informing you that "explicit sexual content" is not allowed at your current account level.<br>
<br>
"@@.computer;Would you like to upgrade your account to XXXstream Streamer mode for 500 credits?@@"<br>
<br>
[<<moveTo "event_streaming_whore_invite_1" "Upgrade to premium status." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_streaming_whore_invite_1" "Decline and quit for the day." 60 "<<set $scene.accept=false>>">>]
<<else>>
You ignore the door and focus on finishing off the round, only remembering to get up and check after you're done with the session. Only after the stream is off do you rise off the dildo to check the door... at which point you find it must have been a mis-delivery as there's nothing there.<br>
<br>
<<printThought "Probably for the best — imagine how embarrassing it would have been to stand up off a dildo live on stream!">><br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
<</if>>
</div>/*#
#desc: stream: upgrade to whore streaming
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<setThreshold 'bimbofication' 'spending_money' 'streaming_whore'>>
<<addCredits -500>>
<<if $player.money.total <= 0>>
<<applyExperience 'bimbofication' 16 'very' $ALONE>>
<<else>>
<<applyExperience 'bimbofication' 10 'normal' $ALONE>>
<</if>>
<<applyExperience 'anal' 12 'very' $ALONE>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * .1))>>
<<set $scene.streaming.domsChange = Math.max(1, Math.floor($player.flags.streaming.doms * .05))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * .05))>>
<<set $scene.streaming.tips += Math.max(200, Math.floor($player.flags.streaming.followers*.2+$player.flags.streaming.subs*.5))>>
<<else>>
<<set $scene.streaming.followerChange = -Math.max(5, Math.floor($player.flags.streaming.followers * .1))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * .1))>>
<<set $scene.streaming.domsChange = -Math.max(1, Math.floor($player.flags.streaming.doms * .05))>>
<<set $scene.streaming.cumChange = -Math.max(1, Math.floor($player.flags.streaming.cum * .05))>>
<</if>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $player.money.total <= 0>>
You, perhaps foolishly, go into debt
<<else>>
You pay
<</if>>
to upgrade your account for "XXXstream Streaming." <br>
<br>
You get a notification that your account upgrade is in the "verification process" before you will be fully enabled with the new permissions and functionality. It isn't until you are sat back down on the dildo — thus hiding it from the camera, that your screen fully unlocks and you are able to return to your stream.<br>
<br>
Your fans are overjoyed by your new status, making quite the dent in what you shelled out for the upgrade while promising that they'll be tuning in once the verification process is complete and you run what you learn is commonly called your first "THOT stream."
<<else>>
500 credits seems like a lot to pay for the "privilege" of fucking yourself on-camera. You decline the offer and drop back to the main menu, wincing that your cut-short stream seems to have cost you a bit on the followers front.
<</if>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: first whore stream
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.streaming.stage = 4>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You click to start your first XXXstream Stream and are treated to a welcome video.<br>
<br>
"@@.computer;Congratulations on becoming one of our premium XXXstreamers! We're sure your fans are eager to watch you at this new level, which is why we've designed a special cherry-popping event for you to give a show they won't forget!@@"<br>
<br>
You're wondering what this is all about when you hear someone at the door. "@@.computer;Hurry! Our drone has arrived to deliver a special introductory kit to ensure a MAX QUALITY stream!@@"<br>
<br>
You're now VERY curious and you hurry to the door to take automated delivery of a package.<br>
<br>
Tearing it open you find it contains three identical HOTTIES-branded dildos. "Engineered for Peak Performance!" The packaging states and you take your "prize" back to your desk.<br>
<br>
Back in front of the computer you find yourself facing "instructions" for your stream.<br>
<br>
You eye the viewer-count numbers already building up — it seems that part of this "special event" included pre-paid advertising for... whatever it is you're about to do...<br>
<br>
You take a deep breath — whatever you're in for is sure to be interesting, and you can't let your fans down, right?<br>
<br>
[<<moveTo "event_streaming_whore_first_2" "Proceed." 300>>]
</div>/*#
#desc: stream: first whore stream - instructions
#status: RELEASED 0.8.9.0
#ignore_spell: ult
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You click to confirm that you've taken delivery of the "introductory package." Rather than dropping you into the stream proper you are greeted with a set of instructions.<br>
<br>
"@@.computer;Welcome, <<=$player.flags.streaming.name>>! As a verified XXXstreamer you have an almost limitless opportunity to entertain your fans, to celebrate this new capability we have designed a special game that we're sure they, and you, will love — and will be directing other interested viewers your way for this special occasion! So put on a show, and get some fans!@@"<br>
<br>
You're getting more and more excited about getting "on camera" and you quickly read on to learn what "task" has been planned for you.<br>
<br>
"@@.computer;Congratulations, Heal-slut! For your first XXXstream you'll be putting your new HOTTIES dildos to use, just follow instructions and you'll make one HOT impression on your fans!@@"<br>
<br>
Pre-game: arrange <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>two dildos<<else>>a dildo<</if>> on your chair and another in front of you — make sure they're in view of the camera and, once you're live, take a seat!<br>
Waiting for queue: Sit still, but practice your handjob technique, you tramp!<br>
When healing: Grind on that cock, you slut!<br>
When damage boosting: Rock on that cock, you whore!<br>
When you revive a teammate: Lick the cock in front of you!<br>
When you ult: Suck and fuck! Go deeper with every revive!<br>
When you di.e.: Slap yourself with a cock, you bitch!<br>
Win: Celebrate by taking the whole team hard and deep!<br>
Lose: Stand up — cock is for winners! Beg to be fucked and filled until your next game!<br>
<br>
<<printThought "Wow, this is going to be intense...">><br>
<br>
You gawk at the pre-viewer queue — it looks like those advertisements are working gangbusters and there are a lot of fans eager to see you start XXXstreaming...<br>
<br>
[<<moveTo "event_streaming_whore_first_3" "Get things in position and let's do this!" 300>>]
</div>/*#
#desc: stream: first whore stream - sit down
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 12 'normal' $EXPOSED>>
<<set $scene.slut_counter = 0>>
<<set $scene.doubleDildo = $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You setup your dildos, start the stream, and theatrically take a seat. <<if $scene.doubleDildo>>Dual dildos<<else>>Your new dildo<</if>> glides easily into you and you softly moan, the waiting fans cheering you on.<br>
<br>
Remembering your instructions — which appear as a side overlay to your screen, you start jerking off the dildo in front of you as you queue up to heal a round...<br>
<br>
<<printThought "Holy shit, I'm really doing this...">><br>
<br>
Your queue pops.<br>
<br>
[<<moveTo "event_streaming_whore_first_4" "It's time to make an impression and gain viewers, go all out!" 300 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_streaming_whore_first_4" "Focus on gameplay." 300 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: stream: first whore stream - game 1: losers
#status: RELEASED 0.8.9.0
#ignore_spell: ult
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<set $scene.slut_counter += 1>>
<<applyExperience 'bdsm' 13 'normal' $EXPOSED>>
<<applyExperience 'bimbofication' 13 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<<changeHorny 20>>
<<else>>
<<applyExperience 'bdsm' 13 'very' $EXPOSED>>
<<applyExperience 'humiliation' 12 'very' $EXPOSED>>
<</if>>
<<applyExperience 'anal' 12 'very' $EXPOSED>>
<<applyExperience 'oral' 8 'normal' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
Your queue pops and your hands move from stroking cock to keyboard and mouse. You wait for the countdown and then moan as the <<if $scene.doubleDildo>>dildos<<else>>dildo<</if>> inside of you starts vibrating.<br>
<br>
Even as you try to focus on the game you reflexively grind slightly... only to be punished with a painful shock directly in your rear. You gasp — it looks like the "rules" are being enforced by more than just the honour system...<br>
<br>
<<if $scene.slut>>
This extra layer only turns you on more and you focus on the game, eagerly getting your healing beam onto your tank so you can start grinding properly — now rewarded with some gentle vibrations to encourage you onward as you race towards the enemy team.
<<else>>
You bite your lip and try to hold still as you re-focus on the game itself... only to get another punishing shock when you start firing your healing beam at your tank and are punished with another shock for again failing to follow instructions.
<</if>>
<br><br>
Your heart beating you adjust to this "new" flow of the game, grinding, humping, and building up towards your ult; your mouth watering more and more each time you lick the dildo in front of you; even as you realise that all this reviving is a sign that your team is a bit out-classed...<br>
<br>
As if to confirm your assessment you follow your tank into what proves to be an ambush, the enemy team wiping you all out as chat reminds you that it's time to "take your punishment." <br>
<br>
[<<moveTo "event_streaming_whore_first_5" "You're a failure, slap yourself with that cock!" 300 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_streaming_whore_first_5" "You aren't going to hit yourself with a dildo just because your team sucks!" 300 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: stream: first whore stream - game 1: punish for death
#status: RELEASED 0.8.9.0
#ignore_spell: ult
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<set $scene.slut_counter += 1>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<<else>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<applyExperience 'bdsm' 15 'very' $EXPOSED>>
<</if>>
<<applyExperience 'oral' 13 'very' $EXPOSED>>
<<applyExperience 'anal' 13 'very' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You slap yourself with the dildo and chat cheers, a mix of approval of your obedience, and heaped-on deprecation for how much of a "worthless slut" you are for failing your team.
<<else>>
You sit back to wait for respawn... only to see your lack of self-punishment dealt with by another harsh shock that almost has you jumping out of your chair. Chat roars with laughter as you rush to slap yourself in the face with the dildo to make the pain stop, calling you a "@@.generic_male1;Dumb slut@@" and other insults as they pile blame for your teams poor performance on you alone.
<</if>>
<br><br>
You focus in on following all instructions, managing to rally a bit and pop your ult and <<if $scene.slut>>eagerly<<else>>hurry to<</if>> start sucking and bouncing as you split your attention between working more and more of the "regulation" phallus down your throat while keeping up with your team and managing a momentary comeback.<br>
<br>
Unfortunately, your efforts just aren't enough to make up for the poor play of your team-mates and, your cheeks sore from many more deaths, you lose the round... and are instantly thrown back into the general queue for "redemption." <br>
<br>
<<printThought "This is a helluva way to play...">><br>
<br>
You are roused to attention by a quick shock as you remember that you have a "task" to perform between games as well...<br>
<br>
[<<moveTo "event_streaming_whore_first_6" "Stand up empty and beg to be filled!" 300 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_streaming_whore_first_6" "Stand up before you get more punishment." 300 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: stream: first whore stream - game 1: lost
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<set $scene.slut_counter += 1>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<<applyExperience 'bimbofication' 15 'very' $EXPOSED>>
<<applyExperience 'penis' 16 'very' $EXPOSED>>
<<else>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You stand up, gasping as the <<if $scene.double>>dildos slide<<else>>dildo slides<</if>> out of you.
<<if $scene.slut>>
Panting softly you begin begging for cock, egged on by chat as you explain that you're a worthless heal-slut who's only good as a cock cozy, that your performance shows you'd be better staying at base to suck off the REAL winners rather than embarrass yourself on the battlefield.
<<else>>
Rather than say anything you just try to recover from the intense round... as chat "fills in" by telling you off for being a useless heal-slut who should stay at base to suck off the REAL winners rather than embarrass yourself on the battlefield.
<</if>>
<br><br>
You would swear the queue runs longer than normal as abuse and humiliation is piled on, but eventually it's time to take your seat and get back into the game...<br>
<br>
[<<moveTo "event_streaming_whore_first_7" "Sit down." 300>>]
</div>/*#
#desc: stream: first whore stream - game 2: winners
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You sit down and gasp as you are filled up once again, mindful to resist the urge to shift to better seat things lest you get another punishment for "premature grinding." <br>
<br>
Fortunately, you don't have much longer to wait as the match starts and you instantly jam your heal-beam onto the tank, biting your lip and moaning with genuine delight as you follow after <<him>> and feel your lower <<if $scene.double>>occupants<<else>>occupant<</if>> buzz merrily.<br>
<br>
It becomes quickly clear that your new team is quite a bit better than your previous, tank and DPS working in coordination, affording you more time DPS boosting than healing and thus rocking in delight.<br>
<br>
The dildo in front of you wet from saliva but wobbling ignored you are eagerly grateful when your relentless advance sees your team hit the re-spawned enemy and you finally get the opportunity to pop your ultimate... which means it's time to suck...<br>
<br>
[<<moveTo "event_streaming_whore_first_8" "Suck hard and deep, slut!" 300 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_streaming_whore_first_8" "Slurp gently." 300 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: stream: first whore stream: celebrate
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<set $scene.slut_counter += 1>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<<applyExperience 'bimbofication' 15 'very' $EXPOSED>>
<<applyExperience 'oral' 14 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 14 'unbelievable' $EXPOSED>>
<<else>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<applyExperience 'oral' 8 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 14 'unbelievable' $EXPOSED>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You almost lunge forward, keeping one eye on the screen as you eagerly suck on the cock in front of you while you bounce up and down on your chair, airtight and ecstatic as you perform for chat.<br>
<br>
Even your death doesn't sway your mood as you merely slap yourself in the face with the dildo as penance while rushing back to the battle, arriving just in time to pop a res, slurp a cock, and put your team over the line to victory...
<<else>>
Keeping your eyes on the screen you lean forward and wrap your lips around just the tip of the dildo, chat chiding you for your lack of enthusiasm as you merely gently bounce and go almost imperceptibly deeper with each revive.<br>
<br>
Your team stabilizes, though not before a sniper manages to take you out. Not wanting to be punished worse you gently slap yourself in the face with the dildo as you hurry back to the action.
<</if>>
<br><br>
A part of you wonders if this whole thing was staged but, whatever the reason, you shortly claim victory, which means it's time to celebrate...<br>
<br>
[<<moveTo "event_streaming_whore_first_9" "You're a good healslut, claim your reward!" 300 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_streaming_whore_first_9" "The best reward would be relaxing for a bit..." 300 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: stream: first whore stream: celebrate
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<set $scene.slut_counter += 1>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<<applyExperience 'bimbofication' 15 'very' $EXPOSED>>
<<applyExperience 'oral' 14 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 14 'unbelievable' $EXPOSED>>
<<else>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You celebrate your victory like the enthusiastic healslut you are, bouncing up and down on your chair and <<if setup.getTotalValue("oral") > 12>>smoothly deepthroating<<else>>gagging on<</if>> the cock in front of you.<br>
<br>
Chat showers you with praise and encouragement as you occasionally break to gush about how much you "enjoy" serving your team, earning even more congratulations when it turns out that you won play of the game... and you respond by pounding yourself even harder like the desperately <<if $fetish.sissy>>sissy <</if>>submissive healslut you are.
<<else>>
When you fail to properly "celebrate" your victory you are instead punished, shocked twice before you get with the program to start <<if setup.getTotalValue("oral") > 12>>deepthroating<<else>>gagging on<</if>> the cock in front of you as you bounce up and down and tell chat how much you enjoy being healslut fuck-hole.<br>
<br>
Chat both encourages and degrades you about your performance, with the biggest focus being that, while you've made a start, you need a lot more "practice" to really prove yourself as a <<if $fetish.sissy>>sissy <</if>>heal-slut whore..
<</if>>
<br><br>
[<<moveTo "event_streaming_whore_first_10" "Continue." 300>>]
</div>/*#
#desc: stream: first whore stream: end
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _mod = .1+$scene.slut_counter*$scene.slut_counter/100>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * _mod))>>
<<set $scene.streaming.subsChange = Math.max(7, Math.floor($player.flags.streaming.subs * (_mod+.2)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * _mod))>>
<<set $scene.streaming.cumChange = 0>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
The stream comes to an end and you lean back, gasping.
<<switch $scene.slut_counter>>
<<case 0>>
Your efforts to retain dignity more served to earn you punishment, your overall performance leading to a slight bump in fans, but nothing major.
<<case 1 2>>
Your mild enthusiasm has seen your fan numbers go up a bit... though you find yourself wondering what would have happened if you had REALLY embraced the opportunity.
<<case 3>>
Your measured enthusiasm has seen your fan numbers climb significantly... though you cannot help but wonder how much more you might have gained had you gone all out.
<<case 4>>
Though your fan numbers have sky-rocketed... you find yourself fixating on your momentary hesitancy — what could you be looking at if you had gone completely all out?
<<case 5>>
Your whorish enthusiasm must have really spoke to fans, because you gawk in amazement as how far your numbers have sky-rocketed.
<<default>>
ERROR: unexpected scene.slut_counter <<=$scene.slut_counter>>
<</switch>>
<br><br>
<<include "printStreamingChange">>
[<<moveTo "room_livingroom" "Log out and stand up." 60>>]
</div>/*#
#desc: stream: sex machine
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<if $npc_exgirlfriend.flags.bondage_machine.suction_upgrade>>
You fully strap yourself in for an over-the-top "Dreammaker" streaming session. Your viewership numbers immediately jump as it appears that people have literally set up notifications for you streaming in this mode, chat already eagerly talking about how they want to control you today... unfortunately for any second-guessing, the restraints are already closed and the only way you're getting "out" is to finish your stream...<br>
<br>
[<<moveTo "event_streaming_extreme_2" 'Start playing.' 60>>]
<<else>>
You attempt to start a session using the "Dreammaker" auto-bondage device... only to learn that, after your initial "trial" the HOTTIES streaming integration will not let you play without fully upgrading the machine.<br>
<br>
<<printThought "Hmm, maybe check out <<printShopName 'mall_sexstore'>> in the mall?">><br>
<br>
[<<moveTo "room_livingroom" 'Back to the living room.' 60>>]
<</if>>
</div>/*#
#desc: stream: sex machine
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.events = []>>
<<set $scene.streaming.events.push('edge')>>
<<set $scene.streaming.events.push('overload')>>
<<set $scene.streaming.events.push('sniper')>>
<<if !$daily.technicianStreamEvent && $now.getUTCDay()>0 && $now.getUTCDay()<6 && $now.getUTCHours() > 18 && !State.hasPlayed("event_destroy_technician_6")>>
<<if $npc_technician.relationship.kinks.bdsm && !$npc_technician.relationship.kink_indulge.bdsm>>
<<set $scene.streaming.events.push('technician_bdsm')>>
<</if>>
<<if $npc_technician.relationship.kinks.bestiality && $npc_technician.relationship.kink_indulge.dog >= 2>>
<<set $scene.streaming.events.push('technician_beast')>>
<</if>>
<</if>>
<<if $player.flags.streaming.cum >= 100>>
<<set $scene.streaming.events.push('cum')>>
<</if>>
<<if $player.flags.streaming.doms + $player.flags.streaming.subs > 100>>
<<set $scene.streaming.events.push('raid')>>
<</if>>
<<set $scene.streaming.event = $scene.streaming.events.random()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.streaming.event>>
<<case 'technician_beast'>>
You've just started streaming when you get a message from <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<if State.hasPlayed("event_technician_fantastic_beast_1")>>
"@@.npc_technician;Hey, so how about another round of Retreat To Legend: Survival Mythologised? The servers are up, and I heard they fixed some more bugs.@@"<br>
<br>
[<<moveTo "event_technician_fantastic_beast_repeat" "Sounds fun!" 300 "<<set $scene.accept=true>><<set $daily.technicianStreamEvent=true>>">>]<br>
[<<moveTo "event_streaming_extreme_2" "Turn her down and do a normal stream." 60 "<<set $daily.technicianStreamEvent=true>>">>]
<<else>>
"@@.npc_technician;Hey, so I saw you pop online and well... I heard about a pre-release game Retreat To Legend: Survival Mythologised. It sounds pretty cool, and the developers are soliciting streamers to help get the word out. Oh... and did I mention the game interfaces with that sexy Dreammaker system you have? So... yeah... do you wanna play? I'll join up if you're up for it, though my system isn't nearly as complete as yours...@@"<br>
<br>
[<<moveTo "event_technician_fantastic_beast_1" "Sounds fun!" 300 "<<set $scene.accept=true>><<set $daily.technicianStreamEvent=true>>">>]<br>
[<<moveTo "event_technician_fantastic_beast_1" "That sounds like a bit more than you want to do today." 60 "<<set $scene.accept=false>><<set $daily.technicianStreamEvent=true>>">>]
<</if>>
<<case 'technician_bdsm'>>
You've strapped in when you get a message from
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName("npc_technician","formal")>>. "@@.npc_technician;So, my perfect Princess... I was thinking of you talking about how much of a masochistic pain-slut you are, combined with that fancy machine you've got and, well... I coded up a little game plug-in... if you're up for trying it? I'll warn you — it is going to be intense, even for you.@@"
<<case 'neutral'>>
<<=setup.getNpcName("npc_technician","first")>> "@@.npc_technician;So, my love... I was thinking of you talking about how much of a masochistic you said you were and, well, combined with that fancy machine you've got and, I coded up a little game plug-in... if you're up for trying it? I'll warn you — it is going to be intense, even for you.@@"
<<case "sub">>
<<=setup.getNpcName("npc_technician","first")>> "@@.npc_technician;Hello, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... I guess this is a bit weird for a slave to suggest but... I was thinking of you talking about how much of a masochistic you said you were and, well, combined with that fancy machine you've got and, I coded up a little game plug-in... if you're up for trying it? I'll warn you — it is going to be intense, even for you.@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
[<<moveTo "event_streaming_extreme_bdsm_1" "Sure!" 1800 '<<set $daily.technicianStreamEvent = true>>'>>]<br>
[<<moveTo "event_streaming_extreme_bdsm_1_no" "Not today." 1800 '<<set $daily.technicianStreamEvent = true>>'>>]
<<case 'edge'>>
You jump into the round and turn over control to your "fans"...<br>
<br>
[<<moveTo "event_streaming_extreme_edge_1" "Play on." 1800>>]
<<case 'overload'>>
You jump into the round and turn over control to your "fans"...<br>
<br>
[<<moveTo "event_streaming_extreme_overload_1" "Play on." 1800>>]
<<case 'cum'>>
You're about to start playing but, while you lay atop the Dreammaker machine, the restraints fail to click closed. Confused you look up at the screen where you see a flashing note to "fill cum reservoir before proceeding." <br>
<br>
<<printThought "Well... it looks like chat has some interesting plans for today...">><br>
<br>
[<<moveTo "event_streaming_extreme_cum_1" "Fill her up!" 1800>>]<br>
[<<moveTo "event_streaming_extreme_cum_1_no" "Just play normally." 600>>]
<<case 'raid'>>
You've just started playing when you see a huge spike in viewers. You wonder what's going on... and soon find out — you're being raided by a group from a rival stream, the spike in viewers resulting in a growing total of tips, but at the cost that these invaders are now effectively in control of your situation...<br>
<br>
[<<moveTo "event_streaming_extreme_raid_1" "Uh-oh..." 300>>]
<<case 'sniper'>>
Things have been going well as you "enjoy" another stream fucked and bound by your followers but you've barely started the round when you get ambushed out of nowhere by a member of the enemy. Chalking it up to bad luck you respawn... only for it to happen almost immediately again, the death automatically paired with your machine fucking you hard from either end while you wait to respawn.<br>
<br>
<<printThought "Shit, I'm being stream-sniped!">><br>
<br>
You moan around your gag as you glance towards chat where your assessment is confirmed, your slayer taunting you with how they're going to spend the whole match making sure you "get what's coming to you." <br>
<br>
[<<moveTo "event_streaming_extreme_sniper_1" "Uh-oh..." 1800>>]
<<default>>
ERROR: unexpected scene.streaming.event <<=$scene.streaming.event>>
<</switch>>
</div>/*#
#desc: stream: technician bdsm kink event
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'unbelievable' $EXPOSED>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'unbelievable' $EXPOSED>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(15,25)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(10,20)/100)))>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $EXPOSED>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $EXPOSED>>
<<set $npc_technician.relationship.kink_indulge.bdsm = true>>
<<include "checkTechnicianBarterEvent">>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You agree to <<if $npc_technician.relationship.her_role == 'dom'>><<=ps(setup.getNpcName("npc_technician","formal"))>><<else>><<=setup.getNpcName("npc_technician","first")>><</if>> to play around with her "masochist trainer" plug-in.<br>
<br>
"@@.npc_technician;Alright! Well strap in and start playing... and let's see how pain-based conditioning work for accelerated learning...@@"<br>
<br>
You're already strapped into the Dreammaker device for the stream so all there is to do is jump into game. At first some of your fans are disappointed that this aspect of your torment is out of their control, but their tune changes a few moments later when the game starts and you make your first "mistake." <br>
<br>
You're playing DPS today and all you did was fail to check a corner when you were sneaking up to a sniper nest — but the result is a painful shock delivered deep into your rear by the large, thrusting dildo. This proves to be a comparatively mild harbinger of things to come as, once the game gets going in earnest you are almost constantly shocked and fucked; dildos savagely thrusting into you from either end while your nipples and insides are both all but cooked by painful electrics.<br>
<br>
It isn't long before you're drooling and breathing heavy, hyper-alert to everything in game in a vain attempt to avoid at least the worst of the punishment. Your fans are little "help" in the matter as chat is soon filled with gifs of you wide-eyed and flailing against your bonds as they discuss how hot you look when you're being shocked... as well as how much you seem to be dripping in excitement at each punishing jolt.<br>
<br>
You barely survive two rounds before having to cut the stream a little short, your nerves fried as your every thought has become fixated on playing "correctly" lest the deviously-written plug-in decides to administer another corrective measure. Peeling yourself out of the Dreammaker machine you make sure to send <<if $npc_technician.relationship.her_role == 'dom'>><<=ps(setup.getNpcName("npc_technician","formal"))>><<else>><<=setup.getNpcName("npc_technician","first")>><</if>> a note for creating something so evil... checking your numbers you have little choice but to make it a thank-you; despite what should have been painful distractions almost all of your stats are up for the session, both in-game and in terms of fans...<br>
<br>
"@@.npc_technician;Glad you enjoyed it — and you were hella-hot to watch. I'll make a few tweaks and it'll be even better for next time.@@"<br>
<br>
You wince reflexively at the thought of next time... even if the not-so-secret pain-slut inside of you is already lusting at the thought.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: whore stream: turn down technician bdsm event
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You decide that
<<if $npc_technician.relationship.her_role == 'dom'>>
<<=ps(setup.getNpcName("npc_technician","formal"))>>
<<else>>
<<=ps(setup.getNpcName("npc_technician","first"))>>
<</if>>
is a bit more than you're ready for today.<br>
<br>
"@@.npc_technician;Alright... it is a pretty cruel routine, well, maybe some other time. I'll catch you later.@@"<br>
<br>
She logs off, you feel disappointed in yourself, somehow, and decide to stop here for the day.<br>
<br>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: extreme, edging
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'very' $EXPOSED>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(3, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(15,25)/100)))>>
<<set $scene.streaming.cumChange = Math.max(3, Math.floor($player.flags.streaming.cum * (random(10,20)/100)))>>
<<include "followersChange">>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'little' $EXPOSED>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'little' $EXPOSED>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $EXPOSED>>
<<set $player.timebased.horny = 95>>
<<applyStress 10>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
Things start out fairly subtle as you dive into the first match; there is stimulation, of course, as large dildos thrust into you from either end while your nipples are pumped and tormented, but it all feels almost... subtle.<br>
<br>
At the end of the match you finally catch up with chat and find out what's going on — your fans having coordinated to setup what looks like a forced edging routine...<br>
<br>
<<printThought "Uh-oh...">><br>
<br>
Your body betrays you in being turned on by this degree of control, and things ramp up in the next round as you are pushed right to the limit... only to be met with a punishing shock to knock you back from the edge.<br>
<br>
You whimper and drool around the dildo forcibly filling your throat as your body twitches; you feel overwhelmed, yet compelled to keep playing, entering a state of flow as you fixate on the idea that, if you can play well enough, you will be granted the orgasm that feels so, so close...<br>
<br>
Filled and teased you lose track of anything but the moment, playing some of your best rounds ever, but still denied, edged, filled, buzzed, shocked, fucked and tormented but never satiated. Your stream session ends with you a desperate, leaking mess, your fans congratulating you on your "endurance" as the restraints release and you stagger to your feet.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: extreme, orgasm overload
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'little' $EXPOSED>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(15,25)/100)))>>
<<set $scene.streaming.cumChange = Math.max(3, Math.floor($player.flags.streaming.cum * (random(10,20)/100)))>>
<<include "followersChange">>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $EXPOSED>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $EXPOSED>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'normal' $EXPOSED>>
<<playerOrgasm>>
<<set $player.timebased.fatigue = 150>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
From the moment the game starts things go into overdrive. Thrusting, vibration, suction and more you try to focus on playing while your fans push you to your limits and beyond.<br>
<br>
Moaning and drooling and, most of all, cumming, you don't have a chance to recover from one orgasm before your body is pushed towards the next. The distraction causes you to make increasing mistakes in-game, but the resultant punishing shocks are just another type of stimulation. Your mouth filled with a repeatedly thrusting dildo you beg chat... to stop, or continue, even you aren't sure, drool running down your chin as you play and cum and play and cum until, limp and exhausted, the stream comes to a close and your restraints finally release.<br>
<br>
You slump to the ground and it takes you a couple minutes to recover your breath before crawling back up to check your streamer dashboard.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: extreme, pumped with cum
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'normal' $EXPOSED>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(5, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(5, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(15,25)/100)))>>
<<set $scene.streaming.cumChange = Math.max(10, Math.floor($player.flags.streaming.cum * (random(30,50)/100)))>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $EXPOSED>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $EXPOSED>>
<<applyExperience 'cum' 20 'unbelievable' $EXPOSED>>
<<set $player.timebased.dirty = 100>>
<<alterStatAllWorn 'cumsoaked' '["add",100]'>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You rise to head for the fridge... only to be diverted to the front door where a drone floats heavy carrying a large reservoir of <<getWordCum>>. You hurriedly bring the large "Courtesy of your Cumtributors" jug into the house and hook it up to the Dreammaker, nervously eyeing the massive quantity as you are strapped in for the day's stream...<br>
<br>
What follows next is half gaming, half bukkake... and all debauchery as the "product" of <<if $player.flags.streaming.cum >= 1000>>innumerable<<elseif $player.flags.streaming.cum >= 200>>hundreds<<else>>over a hundred<</if>> fans is pumped into and over you.<br>
<br>
Far surpassing your capacity you leak <<getWordCum>> out of every hole, fucked and sprayed as your damage-soaking tanking in-game is "mirrored" by you taking load after artificially dispensed load in real life.<br>
<br>
Chat cheers you on with words of "@@.generic_male1;Cum-slut@@" and "@@.generic_male2;Spermophile@@"... and it's hard to do anything but agree as you guzzle and drool and bathe until the entire contents of the delivery has been spilled onto you and, after your fans enjoy a long glance of you bound and dripping with <<getWordCum>>, you are finally released and the stream ends.<br>
<br>
Your mouth slips off the dildo that has been pounding your throat this whole time, unable to quite close as you drool a mix of saliva and sperm down your front.<br>
<br>
Panting, and dripping with <<getWordCum>>, you glance at your increased numbers.<br>
<br>
<<printThought "I should really shower...">><br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: extreme, decline pumped with cum
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.followerChange = -Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = -Math.max(1, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = -Math.max(5, Math.floor($player.flags.streaming.doms * (random(15,25)/100)))>>
<<set $scene.streaming.cumChange = -Math.max(10, Math.floor($player.flags.streaming.cum * (random(20,30)/100)))>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You don't feel like getting pumped full of <<getWordCum>> for today's stream, but it seems like your fans have different opinions. Your refusal results in the Dreammaker failing to latch closed and eventually you are forced to give up on streaming, but not before your recalcitrance has put a large dent in your numbers.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: extreme, raided by rivals
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.streaming.tips += Math.ceil(.001*$player.flags.streaming.subs + .01*$player.flags.streaming.doms)>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
The "invading" fans unleash a routine on you like no other. You are pounded hard, deep, and constantly from either end, punished with the most painful shocks all while your <<if $player.body.breastsize[0] > 0>>breasts<<else>>nipples<</if>> are sucked and abused.<br>
<br>
The invaders demand from you total obedience, forcing you to lose matches either at their order... while threatening that if you do not obey, they will fuck and abuse you to the point of distraction so you have no choice.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_streaming_extreme_raid_2" "Stand tall! You will not give in!" 1800>>] <<hint $options "This will require an expenditure of willpower.">><br>
<<else>>
[@@.link_locked;You have not the will to fight back.@@]<br>
<</if>>
[<<moveTo "event_streaming_extreme_raid_2_submit" "Submit, surrender, and hope for mercy." 600 "<<set $scene.resist=false>>">>]
</div>/*#
#desc: stream: extreme, resist raid by rivals
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<spendWillpower 1>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'unbelievable' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(10, Math.floor($player.flags.streaming.followers * (random(15,25)/100)))>>
<<set $scene.streaming.subsChange = Math.max(10, Math.floor($player.flags.streaming.subs * (random(15,25)/100)))>>
<<set $scene.streaming.domsChange = Math.max(10, Math.floor($player.flags.streaming.doms * (random(15,25)/100)))>>
<<set $scene.streaming.cumChange = Math.max(10, Math.floor($player.flags.streaming.cum * (random(15,25)/100)))>>
<<applyExperience 'anal' 20 'unbelievable' $EXPOSED>>
<<applyExperience 'oral' 20 'unbelievable' $EXPOSED>>
<<applyExperience 'bdsm' 20 'unbelievable' $EXPOSED>>
<<set $scene.streaming.tips += Math.ceil(.001*$player.flags.streaming.subs + .01*$player.flags.streaming.doms)>>
<<set $player.timebased.tired = 200>>
<<playerOrgasm>>
<<applyStress -10>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
Despite the distraction of the large dildos thrust deep into you from either end and pulsing shocks punishing your most sensitive areas... you play on, sucking hard on the cock thrust down your throat as, in rebellion against your bound position and the invaders taking over chat... you try to keep playing, to do your best despite the pounding, jolting distractions.<br>
<br>
The result is the machine, and your body, pushed to the limit, but then things start to shift, your fans rallying, the action either causing them to make smurf accounts or drawing new viewers as your defenders swing the tide, and some of the invaders even start to waver at the sight of your determination.<br>
<br>
The battle in-game is mirrored both in chat, and across your body as factions fight over your restraints until, eventually, after you have been pushed past the limit, your fans triumph and the Dreammaker falls silent.<br>
<br>
You gasp and pant, groaning as the dildos slide out of your abused holes. You try to force a smile of gratitude as chat cheers for you. You have endured; exhausted, but triumphant; the price you paid with your body made up by a stunning jump in fans, as well as the bidding war between them and the invaders resulting in a jaw-dropping tip.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: extreme, submit to raid by rivals
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<applyExperience 'submission' 18 'unbelievable' $EXPOSED>>
<<set $scene.streaming.followerChange = -Math.max(10, Math.floor($player.flags.streaming.followers * (random(5,10)/100)))>>
<<set $scene.streaming.subsChange = -Math.max(10, Math.floor($player.flags.streaming.subs * (random(5,10)/100)))>>
<<set $scene.streaming.domsChange = -Math.max(10, Math.floor($player.flags.streaming.doms * (random(5,10)/100)))>>
<<set $scene.streaming.cumChange = -Math.max(10, Math.floor($player.flags.streaming.cum * (random(5,10)/100)))>>
<<applyExperience 'anal' 20 'very' $EXPOSED>>
<<applyExperience 'oral' 20 'very' $EXPOSED>>
<<applyExperience 'bdsm' 20 'very' $EXPOSED>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<set $player.timebased.tired = 100>>
<<playerOrgasm>>
<<applyStress 20>>
<<include "followersChange">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You surrender — to the disgust of your fans, and the amusement of the invaders. You lose match after match, enduring abuse from your teammates, your fans, and the amused raiders — who, rather than take mercy, continue to torment your body, forcing you to cum on command and dance in your bonds as they shock you repeatedly.<br>
<br>
Eventually the stream times out, but not without leaving you exhausted and broken, a machine-used slut collapsing to the ground when your restraints finally release.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: stream: extreme, stream sniper
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<set $scene.streaming.followerChange = Math.max(3, Math.floor($player.flags.streaming.followers * (random(5,15)/100)))>>
<<set $scene.streaming.subsChange = Math.max(1, Math.floor($player.flags.streaming.subs * (random(5,15)/100)))>>
<<set $scene.streaming.domsChange = Math.max(5, Math.floor($player.flags.streaming.doms * (random(15,25)/100)))>>
<<set $scene.streaming.cumChange = Math.max(1, Math.floor($player.flags.streaming.cum * (random(10,20)/100)))>>
<<include "followersChange">>
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") > 15>>
<<applyExperience 'anal' _gaming 'unbelievable' $EXPOSED>>
<<applyExperience 'oral' _gaming 'unbelievable' $EXPOSED>>
<<applyExperience 'bdsm' _gaming 'unbelievable' $EXPOSED>>
<<applyExperience 'gaming' _gaming 'unbelievable' $EXPOSED>>
<<else>>
<<applyExperience 'anal' _gaming 'very' $EXPOSED>>
<<applyExperience 'oral' _gaming 'very' $EXPOSED>>
<<applyExperience 'bdsm' _gaming 'very' $EXPOSED>>
<<applyExperience 'gaming' _gaming 'very' $EXPOSED>>
<</if>>
<<else>>
<<if setup.getTotalValue("gaming") > 5>>
<<applyExperience 'anal' 10 'normal' $EXPOSED>>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<<applyExperience 'bdsm' 10 'normal' $EXPOSED>>
<<applyExperience 'gaming' 10 'normal' $EXPOSED>>
<<else>>
<<applyExperience 'anal' 10 'little' $EXPOSED>>
<<applyExperience 'oral' 10 'little' $EXPOSED>>
<<applyExperience 'bdsm' 10 'little' $EXPOSED>>
<<applyExperience 'gaming' 10 'little' $EXPOSED>>
<</if>>
<</if>>
<<set $scene.streaming.tips += 100 + Math.ceil((setup.getTotalValue("gaming")/20)*(.001*$player.flags.streaming.subs + .01*$player.flags.streaming.doms))>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/streaming.png">>
<div id="invframe" class="scrolltext">
You've dealt with stream snipers before, but this is on a whole other level. Not only can your foe take advantage of their perfect intel about what you're doing... they can also throw you off by paying to have your machine distract you by thrusting a cock between your lips, or unleashing pain, or pleasure upon your body.<br>
<br>
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") > 15>>
Despite your disadvantages, your skill starts to win out and you manage to out-play your opposition, chat cheering you on as you manage to barely scrape a win.
<<else>>
You make your foe work for their cheated win, using all of your skill to force them to pay heavily to unleash the Dreammaker upon your body to maintain their edge. Your team still loses the game, but only just.
<</if>>
<<else>>
You try to fight back,
<<if setup.getTotalValue("gaming") > 5>>
but it is just a matter of a few tips for the Dreammaker to unleash its distraction upon you and swing things back in favour of the stream sniper.
<<else>>
but your meager skills are more than countered by their extra intel; though they tip a couple of times to activate your Dreammaker seemingly just to rub your face in it.
<</if>>
<</if>>
<br><br>
The match ends and the sniper disappears... though you note that they paid quite dearly for the "privilege" of cheating against you; the sum of their various tips to activate the Dreammaker totally an impressive <<=$scene.streaming.tips>> credits.<br>
<br>
The excitement over you unwrap your lips from the cock that has been pounding your throat and thank your fans before the stream ends.<br>
<br>
<<include "printStreamingChange">>
[<<moveTo "event_streaming_root" "Back to the streamer dashboard." 60>>]
</div>/*#
#desc: hotties streaming advertisement
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You click on the advertisement for more details. It brings up a short video package touting how much fun and lucrative it can be to stream games and that, to encourage new streamers to sign up for a new streaming service they're running a special tournament where first-time streamers are matched up for a match with an experienced "pros." Reading the requirements all you need is a fully unlocked HOTTIES account and a webcam.<br>
<br>
<<if $player.flags.hotties_game.adv_heal && $player.flags.hotties_game.adv_melee && $player.flags.hotties_game.adv_range && $player.flags.hotties_game.adv_tank && setup.hasUpgrade($computer, 'webcam')>>
<<if setup.checkOutsideDecency()>>
<<printThought "Huh, looks like I have everything I need...">><br>
<br>
[<<moveTo "event_streaming_intro_1" "Yeah, that sounds fun!" 300>>]<br>
<<else>>
<<printThought "I need... should change first, I don't want to be seen like this on cam! No, just because I'm at home doesn't mean I'm ready to expose myself, if I wouldn't go out on it I shouldn't be seen in it on cam!">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<</if>>
[<<moveTo "room_play_games_hotties" "Not today." 60>>]
<<else>>
<<if setup.hasUpgrade($computer, 'webcam')>>
<<printThought "Got the webcam, but it looks like I need to do some more unlocks.">>
<<elseif $player.flags.hotties_game.adv_heal && $player.flags.hotties_game.adv_melee && $player.flags.hotties_game.adv_range && $player.flags.hotties_game.adv_tank>>
<<if setup.checkItemOwned("webcam")>>
<<printThought "I should really install that webcam I bought...">>
<<else>>
<<printThought "Looks like I need to swing by <<printShopName 'mall_wholesale_store'>> in the mall to buy a webcam.">>
<</if>>
<<else>>
<<printThought "Hmm, looks like I need to do some more unlocks and hit up <<printShopName 'mall_wholesale_store'>> in the mall to buy a webcam...">>
<</if>><br>
<br>
[<<moveTo "room_play_games_hotties" "Maybe some other time." 60>>]
<</if>>
</div>/*#
#desc: bondage machine upgrade offer
#status: RELEASED 0.8.9.0
#*/
<<set _price = 50>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/blackbox_02.mp4">>
<div id="invframe" class="scrolltext">
You win another game and drop back to the lobby where you spot an alluring ad showing an image very similar to your "Dreammaker" fucking machine with an offer "Calling All Intergalactic Sluts!" Intrigued you click on the link to discover that it's a mod pack for "compatible" devices that allows them to integrate with HOTTIES — including chat integration and an advanced "Pain and Gain" mode that promises to train you to the "pinnacle of performance." <br>
<br>
<<if $scene.fromStreaming>>
You start scrolling down only to be surprised by a ding from the chat channel — one of your "fans" just bought you the software and chat is now exploding with excitement at the idea of you using it on stream...<br>
<br>
[<<moveTo "event_streaming_extreme_first_fans_1" "You owe it to your fans..." 600>>]<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getWillpower() > 0 && setup.getTotalValue("submission") < 15 || setup.getWillpower() > 1>>
[<<moveTo "event_streaming_extreme_offer_2" "Resist your submissive urges and say no." 600 "<<if setup.getTotalValue('submission') < 15>><<spendWillpower 2>><<else>><<spendWillpower 1>><</if>>">>] <<hint $options "Overcoming your submissive nature will cost willpower.">>
<<else>>
[@@.link_locked;On stream fans are your master, you can't let them down!@@]
<</if>>
<<else>>
[<<moveTo "event_streaming_extreme_offer_2" "Some other time." 600 "<<set $scene.buy=false>>">>]
<</if>>
<<else>>
You scroll down to the price, looks like the software upgrade will run you <<=_price>> credits...<br>
<br>
[<<moveTo "event_streaming_extreme_offer_2" "A sex machine upgrade, AND it promises to improve your gaming skills? Hell yeah!" 180 "<<set $scene.buy=true>><<addCredits `-_price`>>">>]<br>
<<if $player.money.total >= _price>>
<<if setup.getTotalValue("bimbofication") > 10 && (setup.getTotalValue("bdsm") > 10 || setup.getTotalValue("submission") > 15)>>
<<set $scene.wpCost = 0>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<set $scene.wpCost += 0>>
<</if>>
<<if setup.getTotalValue("bdsm") > 10>>
<<set $scene.wpCost += 0>>
<</if>>
<<if setup.getTotalValue("submission") > 15>>
<<set $scene.wpCost += 0>>
<</if>>
<<if setup.getWillpower() >= $scene.wpCost>>
[<<moveTo "event_streaming_extreme_offer_2" "Resist your slutty urges and say no." 600 "<<spendWillpower $scene.wpCost>>">>] <<hint $options "Fighting your slutty nature will cost willpower">>
<<else>>
[@@.link_locked;You are too much of a horny pain-slut to pass up such an offer.@@]
<</if>>
<<else>>
[<<moveTo "event_streaming_extreme_offer_2" "Close the window." 180 "<<set $scene.buy=false>>">>]
<</if>>
<<else>>
[@@.link_locked;You unfortunately, to not have enough credits to purchase the software upgrade.@@]
<</if>>
<</if>>
</div>/*#
#desc: accept/reject bondage machine upgrade offer
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/blackbox_02.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.buy>>
The transaction goes through in seconds and you let the installer run as you contemplate whether you're "up" to take things for a spin immediately...<br>
<br>
[<<moveTo "event_streaming_extreme_first_1" "No time like the present..." 600>>]<br>
<<if $player.flags.streaming.stage >= 4>>
[<<moveTo "event_streaming_extreme_first_fans_1" "You should jump on stream for this." 600>>]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 15 && (setup.getTotalValue("bdsm") > 10 || setup.getTotalValue("submission") > 15)>>
[@@.link_locked;You're too excited! You, like, HAVE to try it out now!@@]
<<else>>
[<<moveTo "room_livingroom" 'Do something else.' 60>>]
<</if>>
<<elseif $scene.fromStreaming>>
You break the sad news to your fans that you're packing it in for the day, but you encourage them to come back the next time you stream if they want to see you take the new purchase for a spin.<br>
<br>
"@@.generic_male1;Lame!@@" "@@.generic_female1;Stay with us, slut!@@" "@@.generic_male2;Can't wait to see you take it hard!@@" and other messages shower you before you wave good-bye and close the chat window.<br>
<br>
[<<moveTo "room_livingroom" 'Do something else.' 60>>]
<<else>>
Double checking the purchase went through you let the installer run in the background and walk away from the computer.<br>
<br>
[<<moveTo "room_livingroom" 'Do something else.' 60>>]
<</if>>
</div>/*#
#desc: first time using bondage machine + hotties alone
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'very' $EXPOSED>>
<<applyExperience 'bdsm' 13 'normal' $EXPOSED>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'little' $EXPOSED>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'little' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/blackbox_02.mp4">>
<div id="invframe" class="scrolltext">
You drag the "Dreammaker" machine into position in front of the computer, angling the monitor and situating yourself atop the device before letting its auto-restraints close around you.<br>
<br>
You moan as the rear <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage()) && $npc_exgirlfriend.flags.bondage_machine.rrr.vag_upgrade>>dildos slip<<else>>dildo slips<</if>> into position, its twin up front taking advantage of your parted lips to slide into your mouth. The dildo in your rear vibrates, then shocks you as the system goes through an "initialisation" routine before dumping you into a splash menu.<br>
<br>
The system defaults into an "enhanced gameplay" mode that promises to add stimulative buzzing and punishing shocks based on your performance to better immerse you in the game and focus you on improving. While currently greyed out, it would appear that there is no way to disable the "chat integration" while streaming. Thankfully, it appears that the chat controls only work in menus or while you're waiting for respawn... though you can imagine that would be plenty enough, your mind spinning at the thought of someone on the other side of the world fucking you by remote while you are helplessly bound...<br>
<br>
<<if $player.flags.streaming.stage >= 6>>
<<printThought "Okay, this should be a bit easier than when I tried on stream...">>
<<elseif setup.getTotalValue("bimbofication") > 15>>
<<printThought "Wow, this is going to get intense... I have to try it on stream sometime...">>
<<else>>
<<printThought "Wow, this is going to get intense, I can't imagine doing it on stream...">>
<</if>>
<br><br>
[<<moveTo "event_streaming_extreme_first_2" 'Jump in the queue and start playing...' 1800>>]
</div>/*#
#desc: first game with bondage machine + hotties alone
#status: RELEASED 0.8.9.0
#ignore_spell: ult,tpk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.hotties_game.played_blackbox_solo = true>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $INCOGNITO>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 15 'very' $INCOGNITO>>
<<applyExperience 'bdsm' 15 'very' $INCOGNITO>>
<<applyExperience 'bondage' 18 'very' $INCOGNITO>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('upgrade_suction')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/blackbox_02.mp4">>
<div id="invframe" class="scrolltext">
You decide to play it safe and jump into the free-play queue where you end up assigned the role of, what else, support.<br>
<br>
<<printThought "Guess I'm REALLY putting the slut in heal slut today...">><br>
<br>
Following proper tactics you glue yourself to your tanks ass, the reward for your performance a steady buzzing fuck from behind, the power of the vibrations growing with how much healing you put out while the thrusting seems to speed up with each enemy killed by your tank.<br>
<br>
Forming the point of the spear you and your tank push into enemy territory as <<he>> congratulates you on voice for the assist. "@@.generic_male1;Damn, you're on me like glue, you think we can drive all the way to the objective?@@"<br>
<br>
Bound, with a mouth full of artificial cock and your hands clutching the twin dildo controllers you have no means of replying, the tank only emboldened by your silence. "@@.generic_male1;Shy one, are ya? That's fine, I'll do the talking, you can save your mouth for sucking my cock after we win.@@"<br>
<br>
It has to be a coincidence but <<his>> degrading words cause the machine to speed up again, the dildo in your mouth sliding another notch deeper towards your throat, the spit-roasted humiliation somehow slowing time as you enter a lust-addled, but oddly focused, state.<br>
<br>
With you at <<his>> back, your tank presses forward recklessly and you are forced to use every ounce of skill you have to keep up with <<him>>, and keep the both of you alive, as you get closer and closer to the objective.<br>
<br>
In a pitched five on three with the enemy team, your DPS wing moves out of range of your heals and dies, a failure that sends a harsh shock through your ass even as your healing of the tank has you relentlessly pounded hard and deep.<br>
<br>
The painful shock causes your body to jolt and you to cry into the mouth-filling cock, the momentary distraction causing you to miss-time a dodge and eat a stun.<br>
<br>
By the time you've regained control your tank is too low. Even popping your ult isn't enough to keep <<him>> from falling and leaving the remaining enemy team to dust you moments later.<br>
<br>
Your death causes <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage()) && $npc_exgirlfriend.flags.bondage_machine.rrr.vag_upgrade>>all three<<else>>both<</if>> dildos to thrust to maximum depth, filling your fore and aft and then punishing your <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage()) && $npc_exgirlfriend.flags.bondage_machine.rrr.vag_upgrade>>holes<<else>>rear<</if>> with agonising shocks that have you thrashing against your bondage as you howl out in such overwhelmed agony that your senses overload and you almost cum from it.<br>
<br>
"@@.generic_male2;Holy shit, did heals just orgasm?@@" one of the DPS asks as you realise your frantic thrashing caused you to somehow click push to talk.<br>
<br>
"@@.generic_male1;Sounds like it. What a total heal slut, come on whore, scrape yourself off the ground and lets finish this thing! You don't cum till we win, now glue to my ass and imagine me pounding yours, one more push and we've got this game!@@"<br>
<br>
This time your entire team unites, your perfectly-timed buffs putting you over the top as you TPK the enemy without a loss and drive all the way to the objective before your foes can respawn. A minute of defence while the sapper channels and you claim victory, your ass buzzing at max power the whole time, the machine pushing you right over the edge to orgasm as the WINNER screen pops up and your team-mates congratulate one another.<br>
<br>
The full-body orgasm is so strong you go limp, somehow clicking the return to lobby key before your teammates can degrade you even further.<br>
<br>
Your bonds unlock and the dildos retract from your body as you try to catch your breath. The new program is definitely intense... and your edge of orgasm zen state was certainly something.<br>
<br>
<<if !$player.flags.hotties_game.played_blackbox_solo>>
Staggering to your feet you look up at the monitor to see that there's apparently another, even more intense mode: "Xtreme Xcellence" — which promises "INSANE Improvements!" ... by disabling safety protocols in order to push you past the limits of your abilities. Strangely, the option is greyed out, and you mouse-over to discover that it requires another attachment to help you "play your Breast." <br>
<br>
<<printThought "Have to check out <<printShopName 'mall_sexstore'>> for that sometime...">>
<<else>>
Staggering to your feet you reflect on how different things were without your "fans" to cheer you on... even as you regret the tips you surely would have earned if you had logged on first...
<</if>>
<br><br>
[<<moveTo "room_livingroom" 'Do something else.' 60 "<<set $player.flags.hotties_game.played_blackbox=true>>">>]
</div>/*#
#desc: first time using bondage machine + hotties on stream
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/blackbox_02.mp4">>
<div id="invframe" class="scrolltext">
Chat is buzzing with excitement as you drag the "Dreammaker" machine in front of the computer and start setting things up. You turn on the multi-angle broadcast mode so that your fans can have a full view of things as you let the auto-bondage machine take you into its embrace, pledges exploding as the rear dildo slides into your ass and your lips spread for its forward-mounting twin.<br>
<br>
"@@.generic_male1;Spit-roasted perfection!@@" "@@.generic_female1;Now THAT'S a proper heal-slut!@@" and other comments scroll past quickly as the dildo in your rear buzzes and then shocks you as it goes through an "initialisation" routine... you moan around the dildo in your mouth as you check settings.<br>
<br>
The system defaults into "enhanced gameplay" mode that promises to add stimulative buzzing and punishing shocks based on your performance to better immerse you in the game and focus you on improving.<br>
<br>
The chat-integration appears permanently enabled and one of your fans gives you a quick shock to encourage you to get into the game.<br>
<br>
"@@.generic_male2;Hurry up, slut, time to play hard!@@"<br>
<br>
You, thankfully, note that the chat integration only works in lobbies or when you're waiting on respawn, but, still, the feeling of people all over the world able to take such an active part while you are so helpless has you dripping in excitement.<br>
<br>
<<if $player.flags.hotties_game.played_blackbox_solo>>
<<printThought "Wow, this is already way more intense than playing solo...">>
<<else>>
<<printThought "Wow, I can already tell this is going to get intense...">>
<</if>>
<br><br>
[<<moveTo "event_streaming_extreme_first_fans_2" 'Jump in the queue and start playing...' 1800>>]
</div>/*#
#desc: first game with bondage machine + hotties on camera
#status: RELEASED 0.8.9.0
#ignore_spell: ult
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'very' $EXPOSED>>
<<applyExperience 'oral' $npc_exgirlfriend.flags.bondage_machine.upgrade_dildo_size 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<applyExperience 'bdsm' 15 'very' $EXPOSED>>
<<applyExperience 'bondage' 18 'very' $EXPOSED>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('upgrade_suction')>>
<<set $player.flags.streaming.stage = 5>>
<<include "checkStablesTechnicianReady">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/blackbox_02.mp4">>
<div id="invframe" class="scrolltext">
Perhaps foolishly, you join the ranked competitive queue where you find yourself assigned to, what else, a support role.<br>
<br>
With the match not yet started your fans remain partly in control of your torment, which means your <<if $player.body_ref.penis>>prostate is<<else>>insides are<</if>> treated to some teasing vibrations as you wait for all players to be ready, sharp, painful shocks counting down in time to the match start as your stream-watchers cheer you on.<br>
<br>
The match starts proper and the buzzing and shocks stop, only for the dildo in your ass to thrust forward as if to encourage you to advance. Filled deep you moan around your mouth-occupying phallus as you rush to keep up with your tank, your experienced team hurrying up-field for the first engagement.
<<if $player.flags.hotties_game.played_blackbox_solo>>
Despite being in a situation similar to your solo "trial" run everything feels even more intense, between the audience and the higher stakes of your solo ranking being technically on the line.
<<else>>
Egged on by your viewers you try to focus in on the task at hand; after all, your ranking is technically on the line so you really don't want to lose.
<</if>>
<br><br>
Engaging with the enemy the tank does their job soaking fire and you start channeling heals, the vibrations returning in time to your healing beam causing you to tense up and focus harder. Your team scores first blood and the dildo slides forward, slowly fucking you, only to speed up slightly as your DPS notches another kill.<br>
<br>
Pressure letting off the tank for a moment you discover that the vibrations don't happen if you're channeling on a full health target. The thrusting continues on, regardless, but you eagerly switch to topping up a DPS as you move further into the horny zone.<br>
<br>
Your team carries its momentum forward in pursuit of the retreating enemy, another couple of kills accelerating your ass-fucking even faster as your heart races with eagerness.<br>
<br>
Crashing into the enemy respawn you hold the line until a perfect head-shot combo takes one of your teams DPS from a hundred to zero in barely an instant. Your punishment for this "totally-not-your-fault" failure is a harsh shock that has you groan into your throat-probing dildo. Despite the ache you focus in on keeping the heals, and thus vibrations, going as your team tries to fight back a man down.<br>
<br>
So close to the enemy base your team's momentum falters and you miss one of the more mobile opponents managing to circle behind to bypass your tank and ambush you directly. You try to dodge but it isn't enough, the added distraction of a painful shock sparked by another of your DPS falling leading to your death as well. You don't even have time to remember that respawn turns control back over to chat before both dildos thrust to full depth, your eyes rolling back as your throat and ass are filled with artificial cock, a slight battle ensuing in chat between those that want to reward you to do better, and those that wish to punish you for failing resulting in both shocks and vibrations wracking your body until the respawn timer ticks down and you find yourself safe from chat's control.<br>
<br>
Mercifully given a reprieve as the dildos retreat until just the tips are inside of your body you rush towards the front, managing to arrive just in time to deliver a clutch save to your beleaguered tank, the momentum swinging back towards your team as your ult charges almost immediately and you fire it off, your anal vibrator going off at max power for the duration as your team drives towards the payload, switching to defence as you hold the line and cruise to a match victory.<br>
<br>
The splash screen barely pops up to show "play of the game" when your fans give you the reward of a simulated gang-fucking, dildos thrusting in and out of you from both ends... though without the addition of punishing shocks.<br>
<br>
Going limp in your bonds you take it hard and deep in both of your bound fuck-holes until the session ends completely and your restraints unlock.<br>
<br>
Falling off to the floor you push yourself to your knees and
<<if !$player.flags.hotties_game.played_blackbox_solo>>
look up at the monitor to see that there's apparently another, even more intense mode: "Xtreme Xcellence" — which promises "INSANE Improvements!" ... by disabling safety protocols in order to push you past the limits of your abilities. Strangely, the option is greyed out, and you mouse-over to discover that it requires another attachment to help you "play your Breast." <br>
<br>
<<printThought "Have to check out <<printShopName 'mall_sexstore'>> for that sometime...">><br>
<br>
Coughing once, you
<</if>>
address chat, thanking them for the "help" and promising more fun later before signing off for the day.<br>
<br>
Closing the game and stowing the "Dreammaker" you bite your lip and grind your thighs together, already fantasising about the next time you take it for a ride...<br>
<br>
[<<moveTo "room_livingroom" 'Do something else.' 60>>]
</div>/*#
#desc: install bondage machine suction upgrade
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'bondage_upgrade_suction_box'>>
<<set $npc_exgirlfriend.flags.bondage_machine.suction_upgrade = true>>
<</if>>
<div id="invframe" class="scrolltext">
You unpack the box and unfold your Dreammaker machine into "maintenance" mode and follow the instructions to install the new upgrades — a compact vacuum pump and a trio of attachments that mean whoever is strapped in could be subject to all manner of suction-based stimulation...<br>
<br>
You take a moment to ensure that things are "paired" and that your streaming account has recognised the upgrade. You take a deep breath as you close things back up and put the machine away.<br>
<br>
[<<moveTo "room_livingroom" "Do something else." 60>>]
</div>/*#
#desc: wake up to your alarm clock
#status: FINISHED 0.4.0.0
#ignore_spell: l,tblockers
#*/
<<set $player.location to "Bedroom">>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Wow. Maybe I dreamt of changing clothes.">>
<<if $scene.night_sleep>>
<<finishSleep $player $scene>>
<<deleteMember $scene "night_sleep">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.noPhone = false>>
<<set $player.timebased.fatiguemulti = 1.0>>
<<set $player.timebased.dirtymulti = 1.0>>
<<set $player.timebased.hornymulti = 1.0>>
<<set $player.timebased.stressmulti = 0>>
<<if $player.flat.sleep.bondage_level == 1>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<elseif $player.flat.sleep.bondage_level == 2>>
<<applyExperience 'bondage' 18 'terrible' $ALONE>>
<</if>>
<<if $currentTasks.hasOwnProperty('manager_bondage_task') && !$currentTasks.manager_bondage_task.finished>>
<<if $player.flat.sleep.bondage_level > 0>>
<<set $npc_manager.stagevalues[4].advance = 2>>
<<completeTask 'manager_bondage_task' $now true>>
<<else>>
<<completeTask 'manager_bondage_task' $now false>>
<</if>>
<</if>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.dream && $scene.dream.wetdream && !$scene.tuckin>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<<set $player.timebased.horny = 0>>
<</if>>
<<advanceTmpEffects $tempEffects>>
<<set $scene.passThrough =
($scene.quickSleep || $scene.tuckin && !$scene.sleepRemoveCage) &&
((!$scene.tuckin || $scene.tuckin && (!$scene.cage || State.hasPlayed("event_morning_milking_cage")))
|| $scene.hasOwnProperty("forceSleep") && $scene.forceSleep || $scene.tuckin && (!$scene.sleepRemoveCage || $scene.quickSleep)) &&
!(setup.checkItemTypeTag('shoes', ['bedheels']) && (!setup.hasThreshold('heels', 'wearing_heels', 'advanced')
|| setup.getTotalValue("heels") < setup.getItemObjFromType("shoes").heels.difficulty
|| $scene.conquerbedheels)
|| $daily.breastsBefore && $daily.breastsBefore != $player.body.breastsize[0]
|| $daily.penisBefore && $daily.penisBefore != $player.body.penissize[0]) &&
!(setup.hasTmpEffect("sissy_pill_mk1_withdrawal"))>>
<<if $tempEffects.hangover>>
<<applyFatigue 30>>
<</if>>
<<if $tempEffects.sissy_pill_mk1_withdrawal>>
<<applyFatigue 75>>
<<changeHorny 25>>
<</if>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $scene.shoes = 'bed_heels_pink'>>
<<set $scene.thresholdUnlock = !setup.hasThreshold('heels', 'wearing_heels', 'advanced')>>
<<if $scene.thresholdUnlock>>
<<setThreshold 'heels' 'wearing_heels' 'advanced'>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.pushUnique('extreme')>>
<<else>>
<<applyExperience 'heels' 15 'very' $EXPOSED>>
<</if>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<manipulateItem $scene.shoesId 'unlock' true>>
<<if setup.getTotalValue("heels") < setup.getItemObjFromType('shoes').heels.difficulty>>
<<removeItem $scene.shoesId true>>
<<else>>
<<if !$player.flags.uniform_upgrade.conquer_bed_heels>>
<<set $player.flags.uniform_upgrade.conquer_bed_heels = true>>
<<set $scene.conquerbedheels = true>>
<</if>>
<</if>>
<</if>>
<<switch $player.flat.sleep.vr>>
<<case "prim_relax" "prim_punish">>
<<removeItem "kig_vr_mask" true>>
<<itemToWardrobe "kig_vr_mask">>
<<case "ai">>
<<removeItem "vr_helmet" true>>
<<itemToWardrobe "vr_helmet">>
<</switch>>
<<if $player.flat.sleep.breastMilk || $player.flat.sleep.penisMilk || $player.flat.sleep.vagMilk>>
<<set $player.timebased.horny = 0>>
<<switch $scene.sleep_routine>>
<<case "gentle">>
<<set _milkMod = 1.1>>
<<case "balanced">>
<<set _milkMod = 1.5>>
<<applyExperience 'bdsm' 14 'normal' $ALONE>>
<<case "harsh">>
<<set _milkMod = 1.3>>
<<applyExperience 'bdsm' 18 'terrible' $ALONE>>
<<default>>
<<set _milkMod = 1.0>>
<</switch>>
<<if $player.flat.sleep.vagMilk>>
<<set _milkMod = _milkMod * 1.5>>
<</if>>
<<if $player.flat.sleep.breastMilk>>
<<set $scene.firstMilk = !$player.body_ref.milkEvent && $player.body.breastsize[1] > 0 && $player.body_ref.milkProduction == 0 && $player.flags.mealplan.hormones != "none">>
<<if $scene.firstMilk>>
<<set $player.body_ref.milkEvent = true>>
<<set $player.body_ref.milkProduction = 1>>
<</if>>
<</if>>
<<if $player.flat.sleep.breastMilk && $player.flat.sleep.penisMilk>>
<<set $scene.milkAdd = $player.timebased.milking.milk_supply * _milkMod * 1.25>>
<<set $player.timebased.milking.milk_storage += $scene.milkAdd>>
<<set $player.timebased.milking.milk_supply = 0>>
<<changeHorny 20>>
<<if $player.body_ref.penis>>
<<set $scene.creamAdd = $player.timebased.milking.cream_supply * _milkMod * 1.25>>
<<set $player.timebased.milking.cream_storage += $scene.creamAdd>>
<<set $player.timebased.milking.cream_supply = 0>>
<</if>>
<<set $player.timebased.horny = 0>>
<<elseif $player.flat.sleep.breastMilk>>
<<set $scene.milkAdd = $player.timebased.milking.milk_supply * _milkMod * 1.1>>
<<set $player.timebased.milking.milk_storage += $scene.milkAdd>>
<<set $player.timebased.milking.milk_supply = 0>>
<<changeHorny 20>>
<<elseif $player.flat.sleep.penisMilk>>
<<if $player.body_ref.penis>>
<<set $scene.creamAdd = $player.timebased.milking.cream_supply * _milkMod * 1.1>>
<<set $player.timebased.milking.cream_storage += $scene.creamAdd>>
<<set $player.timebased.milking.cream_supply = 0>>
<</if>>
<<set $player.timebased.horny = 0>>
<</if>>
<<if $scene.tuckin && $player.flags.collar.owner == "">>
<<removeItem "obedience_collar" true>>
<</if>>
<</if>>
<<if setup.hasTmpEffect('hormone_first_linger')>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_2'
2
'event_psychiatrist_session_request_hormones'
false
>>
<<applyStress -10>>
<</if>>
<<if !($scene.tuckin && !$scene.quickSleep && $scene.cage) || $scene.passThrough>>
<<include "removeGenitalMilkers">>
<</if>>
<<if $scene.passThrough>>
<<initRoom>>
<<set $player.cutscene.lockinventory = false>>
<<moveTo "room_breakfast">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.tuckin && $scene.cage && !State.hasPlayed("event_morning_milking_cage")>>
<<if $player.body_ref.penis>>
<<if $player.flat.sleep.breastMilk && $player.flat.sleep.penisMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk" "milk_cream">>
<<elseif $player.flat.sleep.breastMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk">>
<<elseif $player.flat.sleep.penisMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream">>
<<else>>
<<createStackedImage "bedroomMilking">>
<</if>>
<<else>>
<<if $player.flat.sleep.breastMilk>>
<<createStackedImage "bedroomMilking" "vagina" "milk">>
<<else>>
<<createStackedImage "bedroomMilking" "vagina">>
<</if>>
<</if>>
<<else>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$scene.tuckin>>
<<if $scene.firstPenisMilking>>
You've lost track of your orgasms, the milking device indefatigable and relentless in its depraved thirst. By the time the "routine" comes to an end and your bonds release you are sweaty and spent, secretly proud of your survival, but grateful to remove the device<<if $scene.sleepRemoveCage>>, and welcoming your chastity to keep your over-sensitised <<getWordMyPenis>> safe and secure<<else>>and give your poor <<getWordMyPenis>> something resembling relief<</if>>.
<<elseif !$scene.forceSleep && ($player.flat.sleep.breastMilk || $player.flat.sleep.penisMilk || $player.flat.sleep.vagMilk)>>
Your sleep is finally brought to an end as the soft, steady milking that has drained you overnight suddenly ramps into an intense frenzy.<br>
<br>
Wide-eyed and alert you thrash against your restraints as it seems the milking device make a final attempt to suck out your soul<<if $scene.vag_milker>> — all made worse... or is that better? by your vaginal insert buzzing and pumping away to literally fuck you awake<</if>><<if $scene.plug == 'remote_control_plug'>>. Inside your ass your plug swells and shocks and vibrates, your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> no more able to escape the intense stimulation than your exterior erogenous zones<<elseif $scene.plug != "">>, your ass clenches and quivers, sucking your plug deeper and grinding against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>><</if>>.<br>
<br>
<<if $scene.firstMilk>>
The machine finally finishes its brutal work, leaving you panting, and its reservoir partially filled with milk...<br>
<br>
<<printThought "Wait... I'm producing milk now?">>
<<else>>
<<if $player.flat.sleep.breastMilk>>
Just when you think your poor breasts can take no more, the machine falls silent, leaving you drained and empty of milk and somehow still slightly horny.
<<else>>
With a final scream you cum, the last drops of liquid sucked out of your body as you crumple onto the bed just as your normal alarm goes off.
<</if>>
<</if>>
<<elseif $status_flat.bedroom == 2>>
Your alarm chimes merrily; a sing-song feminine voice calling out "Wake up, <<if $fetish.sissy>>sissy<<else>>slut<</if>>! Open wide and seize the day!" its optimistic message burrowing into your mind.<br>
<br>
Letting the alarm finish its happy message, you hit the button on top<<if $fetish.sissy>>, switching things over to a recording of "Sissy that Walk" to accompany you<</if>> as you swing out of bed and get ready for the day.
<<else>>
The noise of your alarm clock has woken you up.
<</if>>
<br><br>
<<if !$scene.forceSleep && $player.flat.sleep.bondage_level > 0 && !$scene.firstPenisMilking>>
Alongside the sound of your alarm, your restraints unlock with a click granting you freedom of movement for the first time since you "tucked yourself in." <<if setup.getTotalValue("bondage") > 10>>You are a bit disappointed at no longer feeling restrained, maybe you can find someone to bind you up again today, that would be even better than the self bondage you have just concluded with.<</if>><br>
<br>
<</if>>
<<if !$scene.forceSleep>>
<<if $scene.milkAdd > 0 && $scene.creamAdd > 0>>
Your nocturnal "work" has resulted in a harvest of <<=Number.parseFloat($scene.milkAdd*.04).toPrecision(3)>>L of milk and <<=setup.cumtomL($scene.creamAdd)>> of "cream." <br>
<br>
<<elseif $scene.milkAdd > 0>>
Your nocturnal "work" has resulted in a harvest of <<=Number.parseFloat($scene.milkAdd*.04).toPrecision(3)>>L of milk.<br>
<br>
<<elseif $scene.creamAdd>>
Your nocturnal "work" has resulted in a harvest of <<=setup.cumtomL($scene.creamAdd)>> of "cream." <br>
<br>
<</if>>
<</if>>
<<if $scene.dream && $scene.dream.wetdream>>
As you start to stretch out of bed, you feel something warm and wet around your groin area. Looks like you've had a wet dream<<if !$player.body_ref.penis>>... it seems that even without a penis, you remain a something of a squirter<</if>>.<br>
<br>
<</if>>
<<if $scene.sleepRemoveCage && !$scene.firstPenisMilking>>
You dutifully replace your chastity device almost before you even realise what you've done.<br>
<br>
<</if>>
<<for _id, _isSet range $tempEffects>>
<<if _isSet>>
<<switch _id>>
<<case 'hormone_first'>>
You feel different than when you fell asleep — not physically, well, other than that your <<if $player.body.breastsize[0]>>breasts feel<<else>>chest feels<</if>> somewhat more sensitive and your nipples a bit puffy, but overall you feel more calm, centred and yet also with a lingering feeling and you wonder if you + hormones might be the more natural, proper state.<br>
<br>
Fingers brushing your nipples, you gasp, yup, they are definitely a bit more sensitive.<br>
<br>
<<printThought 'Maybe I should mention this to <<=setup.getNpcName("npc_psychiatrist","formal")>> the next time I see her?'>><br>
<br>
<<case 'tblock_eternal'>>
Your tblockers seem to be subtly evening you out, and seemingly counteracting those penis pills you took.<br>
<br>
<<case 'hangover'>>
Last night's drinking has left you with an aching head, stiff joints and a dry mouth: ie a classic hangover.<br>
<br>
<<case 'sissy_pill_mk1_withdrawal'>>
Your mind is clouded, body weak and clumsy, your thoughts filled with thoughts of sex and submission, and even more; a desperate need to once again feel the happy effects of the wonderful pink pills
<<if $player.sec_style.body.pinkpill_eternal>>
you once had eternalised.<br>
<br>
<<printThought "Ugh, having to remember drugs is a pain... maybe I should check out the lab again?">>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> gives you...
<<if $currentTasks.hasOwnProperty('event_doctor_first_appointment')>>
<br><br>
<<if $currentTasks.event_doctor_first_appointment.finished>>
<<printThought "Ugh, I guess this is why I was prescribed <<=setup.getItemName('personal_medication')>>...">>
<<else>>
<<printThought 'Ugh, I need to make that appointment with <<=setup.getNpcName("npc_work_doctor","formal")>>, this withdrawal is killing me.'>>
<</if>>
<<elseif $player.flags.pink_pill.times_od1 > 1>>
<br><br>
You consider the tolerance you appear to be building up the drug thanks to your prior abuse, hoping that you can manage another "hit" so that the wonderful pink feelings do not go away.
<</if>>
<</if>>
<br><br>
<<case 'sissypill' 'sissypill_mk1' 'sissypill_eternal'>>
You feel horny, femme and submissive, the effects of the pink pill you got from work lingering on in your mind... and your body, you note as you give your <<=setup.calcBreastSize()>>, sensitive breasts a squeeze. You feel the urge to take another pill before the end of the day to keep the good times rolling.<br>
<br>
<<case 'sissypill_mk2' 'sissypill_2_eternal'>>
The effects of the <<=setup.getItemName('personal_medication')>> linger on, ensuring that your dulled mind stays firmly in the gutter and leaving you very open to the prospect of new experiences of the sexual kind... despite, or perhaps because of, the side effects, you feel an urge to keep up with your "medication," not least of all out of fear of the unpleasant withdrawal symptoms the pill is meant to address.<br>
<br>
<<case 'sissypill_mk1_od'>>
The effects of overdosing on the <<=setup.getItemName('sissy_pill_mk1')>> pills lingers leaving you feeling horny, dim and submissive, but a little nervous as to what is going to happen when you finally crash.<br>
<br>
<<case 'sissypill_mk2_od'>>
The after-effects of overdosing on the <<=setup.getItemName('personal_medication')>> pills leave you feeling fuzzy and dull.<br>
<br>
<<case 'bimbo_suppressant_hangover'>>
Whatever was in the "bimbo suppressant" you took yesterday to help with work it has left you with a void where your sexual desire would normally be along with a deep need to serve and submit.<br>
<br>
<<case 'hormone_light'>>
<<if !$tempEffects.hasOwnProperty('hormone_first')>>
You don't really feel anything from your light hormone regime, are they even doing anything?<br>
<br>
<</if>>
<<case 'hormone_normal'>>
<<if !$tempEffects.hasOwnProperty('hormone_first')>>
Your daily dose of hormones has you feeling nice and even.<br>
<br>
<</if>>
<<case 'hormone_heavy'>>
<<if !$tempEffects.hasOwnProperty('hormone_first')>>
You can feel the lingering effects of your heavy hormone regime keeping you feeling nice and feminine.<br>
<br>
<</if>>
<<case 'hormone_ultra'>>
<<if !$tempEffects.hasOwnProperty('hormone_first')>>
You feel excited and abuzz thanks to your massive dose of feminising hormones...<br>
<br>
<</if>>
<<case 'vr_punish'>>
Your programmed dreams have you beaming with corporate loyalty and pride.<br>
<br>
<<case 'vr_relax'>>
Your programmed dreams have you feeling relaxed and content, unbothered by the stresses of life.<br>
<br>
<<case 'sissypill_mk3'>>
You feel a strange... though not quite withdrawal-inducing, come-down from the invigorating effects of <<=setup.getItemName('sissy_pill_mk3')>> wearing off.<br>
<br>
<<case 'sissypill_pure'>>
You feel weirdly hollow, yet not actually hungover, no longer being under the glorious effects of <<=setup.getItemName('sissy_pill_pure')>>.<br>
<br>
<<case 'sissypill_3_eternal'>>
You feel almost overwhelmingly submissive, sexy, and aroused thanks to the perpetual effects of <<=setup.getItemName('sissy_pill_pure')>>.<br>
<br>
<<case 'sissypill_pure_eternal'>>
You feel all but transcendent, a veritable incarnation of lust thanks to the eternal effects of <<=setup.getItemName('sissy_pill_pure_eternal')>>.<br>
<br>
<<default>>
<<if !_id.includes('_linger')>>
ERROR: unknown drug: <<=_id>>
<</if>>
<</switch>>
<</if>>
<</for>>
<</if>>
<<if $scene.tuckin && $scene.sleepRemoveCage && (!$scene.quickSleep || !State.hasPlayed("event_morning_milking_cage"))>>
"@@.npc_manager;Good morning!@@"<br>
<br>
<<if $scene.firstPenisMilking>>
"@@.npc_manager;I would ask if you enjoyed your latest experiment... but I actually reviewed some of the footage and, well... I suppose I would describe your sleep as intense, but there was no mistaking that bright, orgasmic look on your face as it pumped away... delightful. Nevertheless, the night is over and now it is time to dress and prepare for the day!@@"
<<else>>
You almost jump in shock, looking up to find <<=setup.getNpcName('npc_manager', 'formal')>> staring down from the flatscreen. She looks alert and practically chipper compared to you, actually, it's strange; while you certainly feel used, and a bit violated, with the milkers quiet you are surprised at how refreshed you feel. In fact, when she asks "@@.npc_manager;Have a good sleep?@@" you nod without even thinking!<br>
<br>
"@@.npc_manager;Wonderful. <<if $scene.cage == "">>I hope you are feeling well-rested? In any case,<<else>>Well, it is a new day now, which means you need to get back in chastity! First though,<</if>> you should probably extricate yourself from your fun little devices.@@"
<</if>>
<br><br>
Still in a bit of a daze, you nod once again, unstrapping and peeling off the milking devices from your sweat-coated body. Sensitive to the cool morning air, your <<if $player.body.breastsize[0] > 0>>breasts are a little swollen and sensitive<<else>>your chest is sore<</if>>,
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
implements slipping out and off from your tired and drained genitals.
<<else>>
your limp <<getWordMyPenis false>> sliding out of its cylinder, exhausted.
<</if>>
<<else>>
the vaginal insert sliding out as you try to tighten up, your pussy lips tired, but already missing the companion.
<</if>>
<br><br>
<<if $scene.isSissyomatic && ($scene.vagMilk || $scene.penisMilk)>>
Free of the milking device, you have a brief moment to glimpse your exposed, <<if $player.body_ref.penis>>deflated <<getWordMyPenis false>><<else>>drenched <<getWordVagina>><</if>> before the <<=setup.getItemName($scene.cage)>> begins to slowly envelop it in full security.<br>
<br>
[<<moveTo "event_morning_milking_cage" "Continue." 60>>]
<<elseif $scene.cage && ($scene.vagMilk || $scene.penisMilk)>>
Locating your <<=setup.getItemName($scene.cage)>>, you have a final decision to make — lock yourself up as instructed, or try to hold on to your freedom.<br>
<br>
<<if setup.getTotalValue("submission") >= 15>>
[@@.link_locked;Remain out of chastity? You can't go against your <<=setup.getNpcName('npc_manager', 'title')>> like that.@@]<br>
[<<moveTo "event_morning_milking_cage" 'Such a "choice" is no choice at all — if your <<=setup.getNpcName("npc_manager", "title")>> wants you locked in chastity, then in chastity locked you shall be.' 60>>]
<<else>>
[<<moveTo "event_morning_milking_punishment" "Ignore her command and remain free." 60>>]<br>
[<<moveTo "event_morning_milking_cage" "Lock yourself up as instructed." 60>>]
<</if>>
<<elseif $npc_manager.flags.require_chastity>>
She nods. "@@.npc_manager;Well, as you still have my trust in allowing you possession of your key I will leave you to get ready — just be sure to be locked up with that key in your possession when I see you at the office!@@" She ends the call.<br>
<br>
[<<moveTo "room_breakfast" "Go have breakfast." 600 "<<include 'removeGenitalMilkers'>><<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<<else>>
She nods. "@@.npc_manager;Well, I believe that should cover matters.@@" She ends the call.<br>
<br>
[<<moveTo "room_breakfast" "Go have breakfast." 600 "<<include 'removeGenitalMilkers'>><<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<elseif setup.checkItemTypeTag('shoes', ['bedheels']) && (!setup.hasThreshold('heels', 'wearing_heels', 'advanced') || setup.getTotalValue("heels") < setup.getItemObjFromType("shoes").heels.difficulty || $scene.conquerbedheels) || $daily.breastsBefore && $daily.breastsBefore != $player.body.breastsize[0] || $daily.penisBefore && $daily.penisBefore != $player.body.penissize[0]>>
[<<moveTo "room_get_up" "Get up." 20>>]
<<else>>
[<<moveTo "room_breakfast" "Get up and have breakfast." 600 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: get out of bed
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeGenitalMilkers">>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.shrinkEvent = ($player.body_ref.penis && $daily.penisBefore > $player.body.penissize[1] && !$player.body_ref.firstShrink) ||
($player.body.penissize[1] <= 1 && $scene.cage != "" && !setup.getItemObj($scene.cage).tags.includes('secure'))>>
<<if $scene.shrinkEvent>>
<<if $scene.cage != "" && !setup.getItemObj($scene.cage).tags.includes('secure') && $player.body.penissize[1] <= 1>>
<<set $scene.isCage = setup.isCage()>>
<<removeItem $scene.cage true>>
<</if>>
<</if>>
<<if !$scene.shrinkEvent && $daily.breastsBefore == $player.body.breastsize[0] &&
!(!$scene.tuckin && setup.checkItemTypeTag('shoes', ['bedheels']) && ($scene.thresholdUnlock || setup.getTotalValue("heels") < setup.getItemObj($scene.shoes).heels.difficulty || $scene.conquerbedheels))>>
<<initRoom>>
<<moveTo "room_breakfast">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.tuckin>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<if $scene.thresholdUnlock>>
You feet ache from your first night locked in the diabolical bed heels and you remove them with relief, taking a minute to massage your sore arches and cramped calves. Putting them away in the wardrobe you are not looking forward to the evening when you will be expected to wear them again...<br>
<br>
Putting that aside for now you try to ignore the lingering ache... even as you find that you are feeling more natural walking on the balls of your feet...<br>
<br>
<<elseif setup.getTotalValue("heels") < setup.getItemObj($scene.shoes).heels.difficulty>>
Over all you slept badly and you eagerly sit up, stripping off the now-unlocked bed heels before even silencing the alarm.<br>
<br>
Tossing the torturous implements into your wardrobe you take a moment to stretch and attempt to massage some life into your calves and toes before getting out of bed.<br>
<br>
<<if setup.getTotalValue("heels") <= 7>>
You barely touch the ground before you collapse to the floor, your legs crumpling under you. Pulling yourself backup onto the bed it takes a second try to force your foot flat and manage to stand normally.
<<elseif setup.getTotalValue("heels") <= 10>>
Your feet slowly flatten as you put your weight onto them. Your heels seem to not quite want to touch the floor. Your calves feel tight, your toes squashed and your arches on fire, but the sensations slowly fade as you take a few springy steps.
<<else>>
Your feet are, for a moment, stuck in the arched position in which they have been bound all night. Starting with just your toes and the balls of your feet on the floor you slowly flatten, only to find that it's actually more painful to force your feet flat than it was to perch in a steep arch. <<if setup.getTotalValue("heels") >= 10 && setup.getTotalValue("foot") >= 10>>Excited<<elseif setup.getTotalValue("feminization") >= 10>>Wondering<<else>>Somewhat scared<</if>> if you might be losing the ability to walk in flats you take a few more steps, toe-walking the whole way to clear your head.
<</if>>
<br><br>
<<elseif $scene.conquerbedheels>>
You roll to the side and start to step out of bed. Not realising what you've done you've been standing in your heels with ease for a few seconds when you hear the sound of the lock releasing. Feeling yourself slide out you quickly jump backwards, falling onto your butt on the bed as the heels slip off your feet.<br>
<br>
<<printThought "Wait, what just happened?">><br>
<br>
Still a bit shocked you reach your feet back over the bed. Once more the balls of your feet touch down with your feet still in the same pointed position forced by the steep heels. Adding weight changes little, your heels remain high and unsupported, your calves taut, but pain free.<br>
<br>
You take a few experimental steps, surprised at how easy it is to toe walk, as well as appreciating the odd perspective provided by your suddenly raised height. Experimentally you start to lower your feet flat, only for pain to explode through your contracted calf muscles. Reflexively returning to the "comfortable" arched position, you realise that you're probably stuck wearing at least some sort of high-heel shoe if you don't want to be in pain.<br>
<br>
<</if>>
<</if>>
<</if>>
<<if $daily.breastsBefore < $player.body.breastsize[0]>>
As you stand, your chest feels a bit odd and sensitive. Touching yourself you gasp, not just because of how strongly you react from even the light brush of your fingers, but also because it is very clear that
<<if $daily.breastsBefore == 0>>
you have grown a pair of small breasts!
<<else>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
your breasts have swelled to a truly massive size!
<<case 'large'>>
your breasts have grown to an even larger size, much further and you'll be approaching anime tiddy territory...
<<case 'medium'>>
your breasts have grown, though they remain a reasonable size for your frame.
<<case 'small'>>
your breasts, though yet small, are definitely larger than they were when you went to bed.
<</switch>>
<</if>>
<br><br>
<<elseif $daily.breastsBefore > $player.body.breastsize[0]>>
As you stand, you notice something a bit off... touching yourself you gasp, not just because of how strongly you react from even the light brush of your fingers, but also because it is very clear that
<<if $player.body.breastsize[0] == 0>>
you no longer have the breasts you went to sleep with!
<<else>>
your breasts have shrunk
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
slightly... though they are still quite massive.
<<case 'large'>>
slightly, though they remain on the large side.
<<case 'medium'>>
slightly, they remain quite noticeable, but not distracting given for the size of your frame.
<<case 'small'>>
slightly, much more and you will be totally flat-chested!
<</switch>>
<</if>>
<br><br>
<</if>>
<<if $scene.shrinkEvent>>
<<if $daily.penisBefore > $player.body.penissize[1]>>
You look down to find that your <<getWordMyPenis false>> has noticeably shrunk.
<<else>>
You feel something off and look down.
<</if>>
<<if !$player.body_ref.firstShrink>>
<<if $player.body.penissize[0] <= 1>>
<<if $scene.cage == "">>
You stare at your noticeably smaller <<getWordMyPenis>>.
<<else>>
<<if $scene.isCage && !setup.getItemObj($scene.cage).tags.includes('secure')>>
As you move a bit, your cage falls off, your <<getWordMyPenis false>> just too small for the device to stay attached...
<<else>>
You move a bit, marveling at how small you have become, but your chastity device is designed for this sort of thing and remains securely in place despite your now diminutive size.
<</if>>
<</if>>
<<elseif setup.checkItemTypeWorn("cage")>>
Your chastity device remains in place, but it is noticeably less snug than before.
<</if>>
<br><br>
[<<moveTo "event_first_shrink_1" "Freak out." 600 "<<set $scene.react='freak'>>">>]<br>
[<<moveTo "event_first_shrink_1" "Pretend nothing happened." 600 "<<set $scene.react='neutral'>>">>]<br>
[<<moveTo "event_first_shrink_1" "This is wonderful!" 600 "<<set $scene.react='happy'>>">>]
<<elseif $player.body.penissize[0] <= 1>>
<<if $scene.cage == "">>
You gawk at your reduced size and wonder if you would even fit in chastity anymore without wriggling out?<br>
<br>
<<printThought "Maybe if it was a specially designed and secure device...">><br>
<br>
[<<moveTo "room_breakfast" "Have breakfast." 600 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<<elseif !setup.getItemObj($scene.cage).tags.includes('secure')>>
As you move a bit, your cage falls off, your <<getWordMyPenis false>> just too small for the device to stay attached...<br>
<br>
[<<moveTo "event_shrink_chastity_1" "Uh-oh." 600>>]
<<else>>
Inside your secure chastity device, things feel just a little roomier — you have certainly shrunk further, but the ingenious design of the contraption locked onto you means that you remain completely secure.<br>
<br>
[<<moveTo "room_breakfast" "Have breakfast." 600 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
<<if $player.flags.mealplan.hormones != "none">>
<<printThought "Wow, those hormones are really something!">>
<<else>>
<<printThought "It just keeps getting smaller...">>
<</if>>
<br><br>
[<<moveTo "room_breakfast" "Have breakfast." 600 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<elseif setup.checkItemOwned('party_data_crystal') && setup.hasTmpEffect('vr_punish') && $player.flags.data_crystal.video && $player.flags.data_crystal.doc && !State.hasPlayed("event_primrose_crystal_bridge_pawn") && !State.hasPlayed("event_primrose_crystal_bridge_pass")>>
As you prepare to leave the bedroom, you remember the data crystal you "stole." You dig it out and stare at the storage device with newfound curiosity, peering at the mirrored surfaces of its many faces. While you cannot read it without the assistance of a computer you know it contains falsified incriminating evidence against <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
You tilt your head to the side. Two conflicting ideas rise in your mind. The existence of this crystal is certainly newsworthy and relevant to the company's operations. To that end, bringing it to <<=ps(setup.getNpcName("npc_boss","formal"))>> attention seems like the logical thing to do. After all, who better to decide the best course of action for the company than its glorious CEO? On the other hand, you know that wasting such an important man's time would reflect very poorly on you and you desperately wish to be seen as a flawless employee.<br>
<br>
[<<moveTo "event_primrose_crystal_bridge_pawn" 'Take the data crystal to <<=setup.getNpcName("npc_boss","formal")>>. Only he can be trusted to do the right thing with it.' 600>>]
[<<moveTo "event_primrose_crystal_bridge_pass" "Forget about the data crystal. You have far more important things to focus on." 120>>]
<<else>>
[<<moveTo "room_breakfast" "Have breakfast." 600 "<<set $roomchange = true>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div><<set $scene.from_hub = true>>
<<set $scene.shoesObj = setup.getItemObjFromType("shoes")>>
<<if setup.isItemTypeEquipped('shoes') && $scene.shoesObj.hasOwnProperty("heels")>>
<<set $scene.heelsDiff = setup.getTotalValue("heels") - $scene.shoesObj.heels.difficulty>>
<<if $scene.heelsDiff >= 14>>
Your borderline obsession with higher and higher heels has you to the point that what you are presently wearing is too close to flat to be comfortable.
<<elseif $scene.heelsDiff >= 0>>
Though you are by now quite capable at walking in <<=setup.getItemTypeName("shoes")>>, it may yet be prudent to get a ride rather than walk far in them.
<<elseif $scene.heelsDiff < -2>>
You are barely even standing in your heels without falling, walking to your destination seems like an exhaustingly bad idea that is liable to take forever.
<<else>>
You're a bit unsteady in your current heels which will greatly increase your travel time. Maybe it would be better to spring for a ride rather than try to walk to your destination, unless you really want the practice?
<</if>>
<br><br>
<</if>>/*#
#desc: city location select
#status: FINISHED 0.4.0.0
#ignore_spell: slutica,sissifica,dumi
#*/
<<set $player.cutscene.lockinventory=true>>
<<set $player.location to "Inner City">>
<<set $scene.startDay = false>> /%hacky fix for if player had been tasked out of flat while sleeping/without go through foyer %/
<<set $player.inside = false>>
<<if (getUTCHours($now)>=6) && (getUTCHours($now) <= 20)>>
<<set _tmpImage = "./images/locations/city_skyline.png">>
<<else>>
<<set _tmpImage = "./images/locations/city_skyline_night.png">>
<</if>>
<<include enterroom>>
<<if $taskEvents && $taskEvents.length == 0 && !$scene.triggeredEvent>>
<<if $npc_manager.stage > 1 && (!$currentTasks.hasOwnProperty("manager_morning_inspection_task") || $currentTasks.manager_morning_inspection_task.finished) && !($now.getUTCHours() == 8 && $now.getUTCMinutes() == 0)>>
<<if !$currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && !($currentTasks.hasOwnProperty('event_interview') && !$currentTasks.event_interview.finished)>>
<<set $scene.dest = "room_citymap">>
<<set $scene.code = "notask">>
<<initRoom>>
<<moveTo "debug_island">>
<</if>>
<<elseif setup.checkItemTypeWorn("hollow_plug", true)>>
<<set $scene.plug = setup.getItemFromType("hollow_plug", true)>>
<<if $scene.plug.startsWith('sissyomatic') && $scene.plug.endsWith('_plug')>>
<<set $scene.code = "plugomatic">>
<<set $scene.dest = "room_citymap">>
<<initRoom>>
<<moveTo "debug_island">>
<</if>>
<<elseif $now.getUTCHours() < 3 && !$player.flags.firstWorkDayDone>>
<<initRoom>>
<<moveTo "event_first_home_forced_1">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $scene.outsideReason = setup.checkOutsideDecencyReason()>>
<<createAdvBGR _tmpImage>>
<div id="invframe" class="scrolltext">
Where do you want to go next?<br>
<br>
<<include travelHeader>>
<<if $currentTasks.hasOwnProperty('task_landlord_date_2') && !$currentTasks.task_landlord_date_2.finished && setup.hoursToDate($now,setup.getTaskDueDate('task_landlord_date_2')) < 12>>
<<if setup.hoursToDate($now,setup.getTaskDueDate('task_landlord_date_2')) > 1>>
<<printThought "I have a dinner date with <<=setup.getNpcName('npc_landlord','first')>> tonight... but it's a bit early, yet!">>
<<elseif setup.checkPlayerDressed($player) && setup.analyzeWornTags(['casual','office', 'formal']) == 'formal'>>
<<if setup.getCurrentMakeup($player) == "">>
<<printThought "If I'm going to meet <<=setup.getNpcName('npc_landlord','first')>> for dinner I should put on makeup to look my best!">>
<<elseif $player.makeup.messed > 25>>
<<printThought "My makeup is a wreck! I should fix it before heading to the restaurant to meet <<=setup.getNpcName('npc_landlord','first')>>.">>
<<elseif $player.makeup.messed > 10>>
<<printThought "I should touch up my makeup before I meet <<=setup.getNpcName('npc_landlord','first')>> for dinner — I want everything to be perfect!">>
<<else>>
<<set _wait = setup.secondsToDate($now,setup.getTaskDueDate('task_landlord_date_2'))>>
[<<moveTo "event_landlord_second_date_1" 'Head to the restaurant to meet <<=setup.getNpcName("npc_landlord","first")>> for dinner.' _wait>>]
<</if>>
<<else>>
<<printThought "After all that effort to get <<=setup.getNpcName('npc_landlord','first')>> to invite me out, I need to dress for the occasion! I should wear something formal.">>
<</if>>
<br><br>
<</if>>
<<if $currentTasks.hasOwnProperty('task_gym_futa_dinner') && !$currentTasks.task_gym_futa_dinner.finished && setup.hoursToDate($now,setup.getTaskDueDate('task_gym_futa_dinner')) < 12>>
<<if setup.hoursToDate($now,setup.getTaskDueDate('task_gym_futa_dinner')) > 1>>
<<printThought "I have a dinner date with <<=setup.getNpcName('npc_gym_futa','first')>> tonight... but it's a bit early, yet!">>
<<else>>
<<set _wait = setup.secondsToDate($now,setup.getTaskDueDate('task_gym_futa_dinner'))>>
<<if !setup.checkTaskReason("task_gym_futa_dinner","fancyFemale") || !setup.checkTaskReason("task_gym_futa_dinner","fancyMakeup")>>
[<<moveTo "event_gym_futa_dinner_fail" 'Head to the restaurant to meet <<=setup.getNpcName("npc_gym_futa","first")>> for dinner.' _wait "<<set $scene.atRestaurant=true>>">>]
<<else>>
[<<moveTo "event_gym_futa_dinner_1" 'Head to the restaurant to meet <<=setup.getNpcName("npc_gym_futa","first")>> for dinner.' _wait>>]
<</if>>
<</if>>
<br><br>
<</if>>
<<if $npc_exgirlfriend.flags.evil == 1 && State.hasPlayed("event_evil_ex_intro_6")>>
<<if $currentTasks.hasOwnProperty("evilExTask_5_person") && !$currentTasks.evilExTask_5_person.finished>>
<<if $now.getUTCHours() > 22 || $now.getUTCHours() < 4>>
[<<moveTo "event_evil_ex_redeem_4_home_1" 'Head for <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> place...' 300>>]
<<else>>
<<printThought "I need to visit <<=setup.getNpcName('npc_exgirlfriend','first')>> when she's sure to be in bed, not now.">>
<</if>>
<<elseif !State.hasPlayed("event_evil_ex_work_1")>>
<<printThought "After what happened last time, I don't feel safe visiting <<=setup.getNpcName('npc_exgirlfriend','first')>>.">>
<</if>>
<br><br>
<<elseif $currentTasks.hasOwnProperty("exgf_her_flat") && !$currentTasks.exgf_her_flat.finished && setup.hoursToDate($now,setup.getTaskDueDate('exgf_her_flat')) < 12>>
<<if setup.hoursToDate($now,setup.getTaskDueDate('exgf_her_flat')) > 1>>
<<printThought "I was going to drop by <<=ps(setup.getNpcName('npc_exgirlfriend','first'))>> place tonight... but it's a bit early, yet!">>
<<else>>
<<set _wait = setup.secondsToDate($now,setup.getTaskDueDate('exgf_her_flat'))>>
[<<moveTo "event_exgirlfriend_her_flat_1" 'Head over to <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> place.' _wait>>]
<</if>>
<br><br>
<</if>>
<<if $currentTasks.hasOwnProperty('sissica_meeting') && !$currentTasks.sissica_meeting.finished && setup.hoursToDate($now,setup.getTaskDueDate('sissica_meeting')) < 12>>
<<if setup.hoursToDate($now,setup.getTaskDueDate('sissica_meeting')) > 1>>
<<printThought "I need to remember to meet with Miss Dumi <<if $fetish.sissy>>Sissifica<<else>>Slutica<</if>> later...">>
<<else>>
<<set _wait = setup.secondsToDate($now,setup.getTaskDueDate('sissica_meeting')) - 10>>
[<<moveTo "event_sissy_email_4_freedom_1" 'Find the alleyway and meet up with Miss Dumi <<if $fetish.sissy>>Sissifica<<else>>Slutica<</if>>.' _wait>>]
<</if>>
<br><br>
<</if>>
<label>Foot: <<radiobutton "$player.timebased.defaultTravel" "foot" autocheck>></label>
<label>Taxi: <<radiobutton "$player.timebased.defaultTravel" "taxi" autocheck>></label>
<<if $npc_buggy_driver.stage > 2>>
<label>Horse: <<radiobutton "$player.timebased.defaultTravel" "horse" autocheck>></label>
<</if>>
<br>
<<printTravel "room_foyer" "Home" 600>><br>
<<if Math.round($player.timebased.fatigue) >= ($player.timebased.fatiguemax/2)>>
[@@.link_locked;You are too exhausted to do anything but head directly home.@@]
<<elseif setup.hasTmpEffect('drunk')>>
[@@.link_locked;You are drunk, you should get home.@@]
<<elseif setup.hasTmpEffect('wasted')>>
[@@.link_locked;You are almost falling-down drunk, you should stumble along home.@@]
<<elseif $scene.outsideReason != "" && $scene.outsideReason != "locked">>
<<switch $scene.outsideReason>>
<<case "female">>
[@@.link_locked;You are not comfortable dressing this feminine in public and decide you should head directly home to change.@@]
<<case "unisex">>
[@@.link_locked;You are not comfortable being out and about in your current outfit and decide you should head directly home to change.@@]
<<case "male">>
[@@.link_locked;Being seen in public dressed like a dude? Ew, you feel disgusted at yourself.@@]
<<case "makeup_too_fem">>
[@@.link_locked;Wearing makeup is one thing, but this style is just too much, you're feeling WAY too self-conscious to be out and about.@@]
<<case "makeup_none">>
[@@.link_locked;Out in public without your battle paint? Oh no, you need to attend to this at once!@@]
<<case "makeup_messy">>
[@@.link_locked;You can't be seen with such messy makeup, you need to fix things before you do anthing else!@@]
<<case "collar">>
[@@.link_locked;Running around without your collar? Never!@@]
<<case "chastity">>
[@@.link_locked;You feel scared being out of chastity, you should go home and lock up.@@]
<<case "chastity_vag">>
[@@.link_locked;You feel like you should be in more secure chastity, you should go home and put on a belt, for safety.@@]
<<case "no_stockings">>
[@@.link_locked;My shoes rubbing against my skin is uncomfortable, I need <<if $player.sec_style.clothing.female==''>>socks<<else>>stockings<</if>>.@@]
<<case "no_bra">>
[@@.link_locked;I need a bra to keep the girls supported.@@]
<<case "bra">>
[@@.link_locked;My bra is visible, that isn't proper at all!@@]
<<case "panties">>
[@@.link_locked;I'm not wearing panties!@@]
<<case "barefoot" "heels_high" "heels_short" "heels_none">>
[@@.link_locked;You can't walk around like this, go home and get some more appropriate footwear.@@]
<<case "breasts" "indecent" "underwear" "undressed">>
[@@.link_locked;You need to go home and cover up a bit more.@@]
<<case "bondage">>
[@@.link_locked;It's not safe to be out and about while bound.@@]
<<case "commando">>
[@@.link_locked;Commando? How about command-no.@@]
<<case "naked">>
[@@.link_locked;You aren't a streaker! You need to go home and cover up a bit more.@@]
<<case "locking_plug">>
[@@.link_locked;You have a plug locked in your ass... this is too much, you just want to go home.@@]
<<case "penis">>
[@@.link_locked;I can't run around with me <<if $player.body_ref.penis>>penis<<else>>bits<</if>> showing!@@]
<<default>>
<<if setup.checkItemOwned($scene.outsideReason)>>
[@@.link_locked;You don't feel comfortable wearing <<=setup.getItemName($scene.outsideReason)>> in public, you should change.@@]
<<else>>
ERROR: unexpected outside reason: <<=$scene.outsideReason>>
<</if>>
<</switch>>
<<else>>
<<include "calcDressedForWork">>
<<if !$npc_manager.stagevalues[2].no_change || $scene.workUnderwear && $scene.workOuterwear>>
<<printTravel "company_lobby" "Work" 600>><br>
<<else>>
<<printTravel "company_lobby_exterior" "Work" 600>><br>
<</if>>
<<printTravel "room_mall" "Mall" 600>>
<<if $player.sec_style.clothing.underwear == "money" && $player.flags.commando && $now.getUTCFullYear() == 2033 && $now.getUTCMonth() == 5 && $now.getUTCDate() == 29 && $now.getUTCHours($now) < 12>>
<<hint $options "I'm not employed in a special forces unit, so I need to buy some new underwear before I head to work.">>
<</if>>
<br>
<<if $player.locations.psychiatrist>>
<<set _str = "Office of <<=$npc_psychiatrist.call>> <<=$npc_psychiatrist.last_name>>">>
<<printTravel "room_psychiatrist_lobby" _str 600>><br>
<</if>>
<<if $player.locations.theusualplace>>
<<printTravel "room_usual_place_outside" "Outside of the Usual Place" 600>><br>
<</if>>
<<if $currentTasks.hasOwnProperty("admin_barkeeper_matchmaker_2")>>
<<if $currentTasks.admin_barkeeper_matchmaker_2.finished>>
<<if State.hasPlayed("event_barkeeper_admin_date_3")>>
[@@.link_locked;You see no reason to return to the Unusual Place.@@]<br>
<<else>>
[@@.link_locked;You have no reason to visit to the Unusual Place at this time.@@]<br>
<</if>>
<<else>>
<<printTravel "room_unusual_place_outside" "The Unusual Place" 600>><br>
<</if>>
<</if>>
<<if $player.flags.jobsecretary>>
<<printTravel "room_student_quarter" "The Student Quarter" 600>><br>
<</if>>
<<if $player.locations.gym>>
<<printTravel "room_gym_lobby" '<<printShopName "gym" true>>' 600>><br>
<</if>>
<<if $player.locations.boss>>
<<set _txt = '<<=ps(setup.getNpcName(\"npc_boss\", \"formal\"))>> mansion'>>
<<printTravel "event_boss_home_sneak_1" _txt 1800>><br>
<</if>>
<<if $npc_buggy_driver.stage > 0 && $npc_buggy_driver.stage < 3 && random(1,4) == 1>>
[<<moveTo "event_horse_buggy_special_unlock_1" "You spot a familiar horse and buggy up the street..." 60 "<<set $scene.rideshare = true>>">>]
<</if>>
<<if $currentTasks.hasOwnProperty("task_nintendolls_destroy") && !$currentTasks.task_nintendolls_destroy.finished>>
<<if setup.hoursToDate($now, setup.getTaskDueDate('task_nintendolls_destroy')) < 2>>
<<set _timeTo = setup.secondsToDate($now, setup.getTaskDueDate('task_nintendolls_destroy'))-1>>
[<<moveTo "event_nintendolls_destroy_1" 'Head to the meet-up location with <<=setup.getNpcName("npc_nintendolls_son", "nickname")>>.' _timeTo>>]
<<else>>
[@@.link_locked;It's too early to head out for your job with <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>>.@@]<br>
<</if>>
<</if>>
<</if>>
</div>
<<timed 0s>><<run setup.updateCityMap()>><</timed>>/*#
#desc: use a rideshare to get around the city
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Inside an Automated Taxi Cab">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom() && $taskEvents.length == 0>>
<<if !$scene.triggeredEvent && $fetish.bestiality_hard &&
setup.hasFreeTime($now, $player, $currentTasks, 7200) &&
setup.hasThreshold('bestiality', 'horse', 'horsecock_lover') &&
setup.getTotalValue("anal") > 10 &&
!setup.hasThreshold('bestiality', 'horse', 'horsecock_expert') &&
($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) &&
$npc_buggy_driver.stage == 0>>
<<initRoom>>
<<moveTo "event_first_horse_buggy_1">>
<<else>>
<<addCredits `-($scene.price)`>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/taxi_interior.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.catcall && !$player.flags.world_events.taxi_slut && $scene.destination == "company_lobby" && $now.getUTCHours() < 8 && $now.getUTCDay() >= 1 && $now.getUTCDay() <= 3 && setup.analyzeWornTags(['male','unisex','female']) == "female" && random(1,5) == 2 && setup.checkItemTypeWorn("cage") && setup.checkItemTypeWorn("panties")>>
You're surprised when you look up midway through the drive and the partition opens to reveal that, rather than the usual auto-cab, this one has a driver!<br>
<br>
[<<moveTo "event_taxi_flirt_1" "Continue." 0 "<<set $scene.rideshare = true>>">>]
<<elseif $player.virgin.anal && $fetish.catcall && $player.flags.world_events.taxi_slut && !$player.flags.world_events.taxi_sex && $scene.destination == "room_foyer" && $now.getUTCHours() > 14 && $now.getUTCDay() >= 1 && $now.getUTCDay() <= 3 && setup.analyzeWornTags(['male','unisex','female']) == "female" && setup.hasFreeTime($now, $player, $currentTasks, 3600) && setup.checkItemTypeWorn("cage") && setup.checkItemTypeWorn("panties", true) && !setup.checkItemTypeTag('panties', ['crotchless'])>>
You have just flagged down a cab and climbed into the backseat when you realise that, again, you have a driver rather than an auto-cab or, rather... the SAME driver you all but masturbated in front of before. <<He>> smiles at you in the mirror in acknowledgement as you set off.<br>
<br>
[<<moveTo "event_taxi_sex_1" "Continue." 0 "<<set $scene.rideshare = true>>">>]
<<else>>
/%TODOfuture: enhance this + random events allow riding when negative cash for bimbo + alternate payment?%/
You hail an automated cab and sit down for a swift, stress-free and uneventful trip to your destination.<br>
<br>
After depositing the price of the fare, you are allowed to step out of the vehicle and it speeds away.<br>
<br>
[<<moveTo $scene.destination "Arrive at your destination." 0 "<<set $scene.rideshare = true>>">>]
<</if>>
</div>/*#
#desc: city location Student Quarters
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Student Quarter">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_student_quarter.png">>
<div id="invframe" class="scrolltext">
The Student Quarters are in their usual perpetual twilight beneath the downtown plate built above it. Even with artificial light the smog is thick enough to make it difficult to figure out what time of day it is. Not that it matters, since this part of town is busy no matter the hour.<br>
<br>
<<if !$player.flags.firstWorkDayDone>>
Your college days are long gone and you can think of nothing to do here today.<br>
<br>
<<else>>
<<if $player.locations.home_technician>>
[<<moveTo "room_hallway_technician" "Visit the Technomancer's Cave." 300>>]<br>
<</if>>
<<if $player.locations.bodyshop>>
<<if State.hasPlayed("room_bodyshop_exterior")>>
[<<moveTo "room_bodyshop_exterior" "Visit the Bodyshop." 300>>]<br>
<<elseif $player.flags.bodyshop_unlock == "technician">>
[<<moveTo "room_bodyshop_alleyway" 'The alleyway <<=setup.getNpcName("npc_technician", "first")>> told you about.' 300>>]<br>
<<elseif $player.flags.bodyshop_unlock == "female">>
[<<moveTo "room_bodyshop_alleyway" "A strange alleyway." 300>>]<br>
<<else>>
[<<moveTo "room_bodyshop_alleyway" "A strange alleyway." 300>>]<br>
<</if>>
<</if>>
<<if $npc_tattoo.profile>>
[<<moveTo "room_tattoo" "Visit the Tattoo Parlour." 120>>]<br>
<<else>>
[<<moveTo "event_tattoo_first" "A somewhat run-down storefront with a flickering sign saying TATTOOS above the steel-reinforced door." 180>>]<br>
<</if>>
<<if $player.locations.church>>
[<<moveTo "location_church_exterior" "Visit the Church of the Goddess." 180>>]<br>
<</if>>
<<if $player.locations.sex_club>>
[<<moveTo "room_sex_club_exterior" "<<printShopName 'sex_club' true>>." 300>>]<br>
<</if>>
<<if State.hasPlayed("room_call_cook_schedule")>>
[<<moveTo "room_porn_film_studio_lobby" "Visit the porn studio." 300>>]<br>
<</if>>
<</if>>
[<<moveTo "room_citymap" "Return to the inner city." 600>>]
</div>/*#
#desc: hallway in front of the technicians apartment
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_hallway_technician')>>
<<set $player.location to "Trenner Housing Inc Building 23, Floor 63">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_student_quarter_hallway.png">>
<div id="invframe" class="scrolltext">
The monolithic structure of these giant housing blocks makes you thankful that you managed to get a flat in the inner city. These gigantic maze-like buildings are the pinnacle of structural and civil engineering, but also of uncontrolled and unmonitored capitalistic sprawl.<br>
<br>
<<if State.hasPlayed("event_destroy_technician_6")>>
You stand outside what was once <<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment, but the door is locked, and nobody answers.
<<else>>
You think you've reached <<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment but, then again, every floor looks the same in here.<br>
<br>
<<if setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<<if _tmpSeconds > 600 && $now.getUTCDay() == 6>>
You're pretty early for the game and it looks like <<=setup.getNpcName('npc_technician', 'first')>> isn't home yet.<br>
<br>
<<set _tmpSeconds = _tmpSeconds-600>>
[<<moveTo "room_hallway_rpg_wait" "Wait around for her to return." _tmpSeconds>>]
<<elseif _tmpSeconds > 600>>
It's a bit early to be barging in on <<=setup.getNpcName('npc_technician', 'first')>>...<br>
<br>
[<<moveTo "room_hallway_technician" "Wait." _tmpSeconds>>]
<<else>>
<<if $now.getUTCDay() == 6 && $npc_technician.flags.rpg_campaign.no_showed && !$scene.notTardy && (!$currentTasks.hasOwnProperty('technician_roleplay_punish_1') || $currentTasks.technician_roleplay_punish_1.finished)>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks.technician_roleplay_1.finished>>
You are about to ring the bell to <<=ps(setup.getNpcName('npc_technician', 'first'))>> flat when you think back to the "punishment" you received for no-showing and, perhaps more importantly, the "penance" you were required to perform after...<br>
<br>
<<printThought "Hmm, I don't want to miss a whole session... maybe if I was just a little tardy?">><br>
<br>
[<<moveTo "event_rpg_tardy_1" 'Hide for a few minutes and return "late."' 0 "<<storeVisual $player $npc_technician>>">>]<br>
<<else>>
<<printThought "Hmm, tonight is more than just a normal game. Definitely don't want to be tardy.">><br>
<br>
<</if>>
<</if>>
[<<moveTo "room_hallway_technician" "Ring the Bell." _tmpSeconds "<<set $scene.notTardy=true>>">>]
<</if>>
<<elseif $events.hasOwnProperty("stage_5_evil_rpg_restart") && setup.secondsToDate($now,$events.stage_5_evil_rpg_restart.trigger.date) < 3600>>
<<set _tmpSeconds = setup.secondsToDate($now,$events.stage_5_evil_rpg_restart.trigger.date)>>
[<<moveTo "event_rpg_first_evil_1" "Ring the Bell." _tmpSeconds "<<removeEvent 'stage_5_evil_rpg_restart'>><<removeEvent 'event_stage5_rpg_reinvite_1'>>">>]
<<else>>
<<if $npc_technician.flags.evil == 1 && $now.getUTCDay() == 6 && $now.getUTCHours() == 18 && (
$currentTasks.hasOwnProperty("technician_roleplay_evil_repeat") && $currentTasks.technician_roleplay_evil_repeat.finished || !$currentTasks.hasOwnProperty("technician_roleplay_evil_repeat") && $currentTasks.hasOwnProperty("technician_roleplay_evil_second") && $currentTasks.technician_roleplay_evil_second.finished)>>
<<set _tmpDate = setup.setNextDate($now, 0, 19, 0, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_tmpDate)>>
<<if (!($player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag)) && !setup.checkItemTYpeWorn("cage")>>
[<<moveTo "event_rpg_evil_1" "Ring the Bell." _tmpSeconds>>]
<<else>>
[<<moveTo "event_evil_tech_tardy_1" "Ring the Bell." _tmpSeconds>>]
<</if>>
<<else>>
[@@.link_locked;You knock, but it would appear that nobody is home.@@]
<</if>>
<</if>>
<</if>>
<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 300>>]
</div>/*#
#desc: wait outside technicians apartment before game
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_hallway_technician')>>
<<set $player.location to "Trenner Housing Inc Building 23, Floor 63">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_student_quarter_hallway.png">>
<div id="invframe" class="scrolltext">
Unfortunately you get chased out of the hallway by some over-enthusiastic hall monitor, but you manage to find a lounge down on a different floor to hang out. Waiting until it's time to game, you hurry back up to <<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.<br>
<br>
<<if $currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks.technician_roleplay_surgery.finished>>
[@@.link_locked;<<=ps(setup.getNpcName('npc_rpg_warlock', 'first'))>> celebration is today — I don't want to be late for that!@@]<br>
<<elseif $currentTasks.hasOwnProperty('rpg_session_gangbang') && !$currentTasks.rpg_session_gangbang.finished>>
[@@.link_locked;We've made plans for <<=setup.getNpcName('npc_barista', 'nickname')>> today — I don't want to be late for that!@@]<br>
<<elseif $currentTasks.hasOwnProperty('technician_collar_her_ceremony') && setup.daysToDate($now,setup.getTaskDueDate('technician_collar_her_ceremony')) == 0>>
[@@.link_locked;It would be unthinkable to be purposefully late to <<=ps(setup.getNpcName('npc_technician', 'first'))>> collaring!@@]<br>
<<elseif $currentTasks.hasOwnProperty('technician_collar_ceremony') && setup.daysToDate($now,setup.getTaskDueDate('technician_collar_ceremony')) == 0>>
[@@.link_locked;You don't want to be late to your own collaring, that would be VERY rude!@@]<br>
<<elseif $npc_technician.flags.rpg_campaign.no_showed && !$scene.notTardy && (!$currentTasks.hasOwnProperty('technician_roleplay_punish_1') || $currentTasks.technician_roleplay_punish_1.finished)>>
You are about to ring the bell to <<=ps(setup.getNpcName('npc_technician', 'first'))>> flat when you think back to the "punishment" you received for no-showing and, perhaps more importantly, the "penance" you were required to perform after...<br>
<br>
<<printThought "Hmm, I don't want to miss a whole session... maybe if I was just a little tardy?">><br>
<br>
[<<moveTo "event_rpg_tardy_1" 'Hide for a few minutes and return "late."' 0 "<<storeVisual $player $npc_technician>>">>]<br>
<</if>>
<<set _tmpSeconds = setup.secondsToDate($now,setup.checkTaskLocationTime('room_hallway_technician'))+1>>
[<<moveTo "room_hallway_technician" "Ring the Bell." _tmpSeconds "<<storeVisual $player $npc_technician>><<set $scene.notTardy=true>>">>]
</div>/*#
#desc: outside apparel store
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<initJquery>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.flags.firstWorkDayShopvisit && ($player.sec_style.clothing.underwear == "") && ($now.getUTCDate()==29) && ($now.getUTCMonth()==5) && ($now.getUTCHours()<12)>>
<<set $player.flags.firstWorkDayShopvisit = true>>
<<initRoom>>
<<moveTo "event_general_storevisit_1_1">>
<<elseif !(State.hasPlayed("event_sex_club_event_first_3") || State.hasPlayed("event_exgirlfriend_intro_date_1")) && setup.analyzeWornTags(['female','unixsex','male']) != "male" && !State.hasPlayed("event_ex_mall_1")>>
<<initRoom>>
<<moveTo "event_ex_mall_1">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png">>
<div id="invframe" class="scrolltext">
<<if !$player.flags.firstWorkDayDone>>
You find a sign posted on the door of the store. It reads "The <<printShopName 'mall_apparel_store'>> is currently closed while we re-organize to better serve your needs! Please come back tomorrow!" <br>
<br>
<<elseif !$player.flags.firstWorkDayDone && ($now.getUTCHours()<12)>>
You find a sign posted on the door of the store. It reads "We are terribly sorry, but the inventory took longer then expected. The <<printShopName 'mall_apparel_store'>> will be open after midday today. Thank you for your understanding. Please come back this afternoon!".<br>
<br>
<<elseif $currentTasks.hasOwnProperty("party_dress") && !($currentTasks["party_dress"].finished || setup.checkItemOwned("formal_dress_red"))>>
<<set $scene.discountprice = setup.getItemObj('formal_dress_red').price*.2>>
Looking through the normal clothing you don't find anything that would really be "formal party" appropriate; about to give up when you round a corner and find yourself facing a mannequin dressed in a gorgeous sexy red dress.<br>
<br>
<<printThought "This would be perfect for the party! And it even comes with matching shoes!">><br>
<br>
To your further shock there's a sign noting that the whole outfit is on 80% markdown clearance for only <<=$scene.discountprice>> credits!<br>
<br>
<<if ($player.money.total-$scene.discountprice)>=($player.money.maxcredit*-1)>>
[<<moveTo "purchase_formal_party_dress" "Buy it." 30>>]
<<else>>
[@@.link_locked;You do not have the funds to afford even the discounted price.@@]
<</if>>
<br><br>
<<else>>
You enter the <<printShopName 'mall_apparel_store'>>, a general apparel store. At the entrance of the store is the Female Section, with quite the selection of different clothes and undergarments. Nothing too fancy or unusual.
<<if setup.getTotalValue('feminization')>=10>>
You could wear most of these clothes outside, though you kind of think they're a bit too boring for your taste.
<<elseif setup.getTotalValue('feminization')>=3>>
You'd like to check a few of these items out, maybe to wear them underneath your normal clothes, or just in the privacy of your own home.
<</if>>
On the far end of the store is the male section, which is less than half the size of the female section.
<<if setup.getTotalValue('feminization')>=10>>
Not, that you're interested in these kinds of clothes anymore.
<<else>>
Talk about inequality.
<</if>>
There are some <<moveTo room_mall_apparel_store_changing_booths "changing booths" 30>> spread through the store.<br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<set _daysTo = setup.daysToDate($now, setup.getTaskDueDate('task_uniform_upgrade'))>>
Mindful of your uniform upgrade assignment due <<if _daysTo == 1>>in 1 day<<elseif _daysTo == 0>>today<<else>>in <<=_daysTo>> days<</if>> you look around the boutique but
<<if setup.getTotalValue("feminization") >= 10>>
you already know they don't stock the sort of thing <<if setup.getTotalValue("submission") <= 10>>you need<<else>>your Mistress desires<</if>>.
<<else>>
looking high and low doesn't turn up anything that you think would pass muster with your <<=setup.getNpcName('npc_manager', 'title')>>.
<</if>>
<br><br>
<</if>>
<<if State.hasPlayed("event_feminization_bride_1") && $player.sec_style.clothing.bride == "">>
[<<moveTo "event_feminization_bride_1" "Check out the bridal section." 180>>]<br>
<</if>>
<<printShop 'room_mall_apparel_store' 'mall_apparel_store' $shopStatus>>
<br><br>
<<include thoughts_current>>
<</if>>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]</div>/*#
#desc: apparel store changing booths
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include checkPossibleVoluntary>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.voluntaryFollowupScene = "room_mall_apparel_store">>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
You're currently inside the changing booth of <<printShopName 'mall_apparel_store'>>.<br>
<br>
<<include glanceVoluntary>>
<<include thoughts_current>>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_mall_apparel_store" "Return to <<printShopName 'mall_apparel_store'>>." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that now...">><br>
<br>
[<<moveTo "room_mall_apparel_store" "Return to <<printShopName 'mall_apparel_store'>>." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<<printThought "My makeup is a wreck! I need to find a bathroom to fix this stat!">><br>
<br>
[<<moveTo "room_mall_apparel_store" "Return to <<printShopName 'mall_apparel_store'>>." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<<elseif $npc_manager.stage == 1 && $player.sec_style.clothing.female != "enthusiast" && setup.checkOutsideDecencyReason() == "female" && $npc_manager.stagevalues[1].unisexsecretary>>
<<printThought "My work uniform may be unisex attire but this? This is a bit more than I'm quite ready to wear out...">><br>
<br>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<<else>>
[@@.link_locked;You're not going to leave the changing booth dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $player.makeup.template != "" && "too_fem" == setup.checkOutsideMakeupReason()>>
[<<moveTo "room_mall_apparel_store_changing_booths" "Maybe if I removed this makeup?" 120 "<<set $player.makeup.template = ''>>">>]<br>
<<elseif setup.checkOutsideDecencyReason() == "chastity" && setup.calcErection()>>
[<<moveTo "event_changing_room_jerk_1" "Jerk off so you can put your chastity device back on." 180 '<<set $scene.background="./images/locations/mall_fashion_store_fitting_room.png">><<set $scene.returnLoc="room_mall_apparel_store_changing_booths">>'>>]<br>
<</if>>
<</if>>
<<include triggerVoluntary>>
</div>/*#
#desc: purchase + change into red party dress
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<initJquery>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverythingButUnderwear>>
<<addCredits `-($scene.discountprice)`>>
<<addItemSet "formal_outfit_red">>
<<wearItemSet "formal_outfit_red">>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<</if>>
<<set _tmpVal = setup.checkOutsideDecency()>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
Taking the dress and matching heels up to the front your heart races as you purchase them, scarcely believing you got such a deal as you rush for the changing room.<br>
<br>
Slipping out of your clothes you take a deep breath and put on the dress, avoiding looking into the mirror until you've finished slipping on the matching high-heel shoes.<br>
<br>
Looking at your reflection your jaw almost drops — you look gorgeous.
<<if setup.getCurrentMakeup() != "">>
<<if $player.makeup.messed > 25>>
The only flaw the fact that your makeup is showing the day's wear.
<<else>>
Your makeup taking the elegant look of your dress and heels and pushing you over the top to perfect formal feminine beauty.
<</if>>
<<else>>
The only real flaw your lack of makeup.
<</if>>
<br><br>
<<if setup.getTotalValue("heels") < .5 * setup.getItemObj('formal_heels_red').heels.difficulty>>
You wobble a bit atop the heels — they are going to take up most of your focus to walk in properly, here's hoping the party has some chairs.
<<elseif setup.getTotalValue("heels") < setup.getItemObj('formal_heels_red').heels.difficulty>>
Taking a few experimental steps proves that the heels definitely require focus, but you should be able to handle it if you take things slow and careful.
<<else>>
You give a confident twirl, the dress floating out away from your legs as you delicately balance atop the steep heels.
<</if>>
<br><br>
The "outfit" part of preparing for the party sporting a big old check you marshal your thoughts —
<<if !setup.checkTaskReason("party_dress","playerClean")>>
you really need to wash up before the party, you kind of stink.
<<else>>
<<if setup.checkTaskReason('party_dress','fancyMakeup')>>
<<if $player.makeup.messed > 25>>
you think your makeup style is good, but it's showing a bit of wear, you should fix that.
<<else>>
you think you're ready for the party.
<</if>>
<<else>>
You just need to apply some "appropriate" makeup and you should be ready for the party.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_mall_apparel_store" "Return to <<printShopName 'mall_apparel_store'>>." 30>>]
</div>/*#
#desc: outside apparel store
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<initJquery>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_wholesale_store' true>> Glasses Section">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_muralmart.png">>
<div id="invframe" class="scrolltext">
You enter the glasses section of <<printShopName 'mall_wholesale_store'>> and its dizzying array of options for decorating your peepers. Well, dizzying if you're a girl, as seems to always be the case, the male fashion options are a bit more sparse.<br>
<br>
<<printShop 'room_mall_glasses' 'mall_glasses' $shopStatus>>
<br><br>
<<include thoughts_current>>
[<<moveTo "room_mall_wholesale_store" 'Back to <<printShopName "mall_wholesale_store" true>>.' 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: outside apparel store
#status: FINISHED 0.8.2.0
#*/
<<set $player.inside = false>>
<<initJquery>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_wholesale_store' true>> Special Interest Section">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_muralmart.png">>
<div id="invframe" class="scrolltext">
You enter the Special Interest section of <<printShopName 'mall_wholesale_store'>>. According to a sign the wares here are based on couture fashion items commissioned by celebrities, now released to the public. <<hint $options "Items in this shop were commissioned by high level patrons of the game, head on over to Patreon or SubStar if you have an idea of your own!">><br>
<br>
<<printShop 'room_mall_special_interest' 'mall_special_interest' $shopStatus>>
<br><br>
<<include thoughts_current>>
[<<moveTo "room_mall_wholesale_store" 'Back to <<printShopName "mall_wholesale_store" true>>.' 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: outside apparel store
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<changeHorny 20>>
<<applyExperience 'humiliation' 'terrible' $INCOGNITO>>
<</if>>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.background>>
<div id="invframe" class="scrolltext">
You try to keep quiet as you squeeze one out in the quasi-privacy of the stall. The humiliating idea of getting caught both spurs you forward... as well as rendering your eventual climax a strained, almost ruined orgasm more awkward than satisfying.<br>
<br>
You lean against a wall and pant as you try to recover, silently thankful as you feel your <<getWordMyPenis>> soften and droop. You can safely lock yourself back in chastity... though this risky effort has you regretting even momentarily unlocking yourself.<br>
<br>
<<printThought "I really have become a chastity addict, is this how I am going to stay in control of my life... or is the chastity itself in charge now?">><br>
<br>
You contemplate your key, wondering if it would be safer if you just handed it off to your <<=setup.getNpcName("npc_manager","title")>> for "safe keeping" like she keeps hinting... both disturbed, and aroused, at the feelings such a thought sparks.<br>
<br>
[<<moveTo $scene.returnLoc "Continue." 30>>]
</div>/*#
#desc: discover "new" barbershop, greeted by barber
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.locations.beautyparlor = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_barber', 'first_masc'))>> Barber Shop for Men?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_barbershop.png">>
<div id="invframe" class="scrolltext">
Ah, yes, walking through the mall towards your barbershop of choice you fondly remember <<=ps(setup.getNpcName('npc_barber', 'first_masc'))>> Barber Shop for Men. And running your hand through your chaotic hair, it seems like another visit has been long overdue. It must have been ages since you've last visited <<=setup.getNpcName('npc_barber', 'first_masc')>>. But even with all those strange changes in your life lately you can still count on <<=setup.getNpcName('npc_barber', 'first_masc')>> being the same as always. Caught up in your thoughts, you enter the location. Something seems to be off. Some of your senses send the wrong kind of information to your brain. The smell is supposed to be a mixture of cut hair, beard oil and manliness, but currently it's more like a sweet fragrance, like the embrace of a beautiful woman and kittens playing on the floor mixed with cotton candy and happiness. Gone is the dimly lit atmosphere of a manly retreat where you could be alone together and talk about politics and sport ~ though it's not like you ever cared for either of these things ~ and replaced it with upbeat music and friendly chatter about who knows what. This does not seem right. You finally snap out of your thoughts of the past back into reality and take a step outside.<br>
<br>
<<printThought "No, this can't be right. But still, this is definitely the right location...">><br>
<br>
You read "Dye Me Crazy: Beauty Parlour" in a girly pink font over the storefront. Checking the shops to either side confirms that yes, this is the right location. Damn it, it looks like <<=ps(setup.getNpcName('npc_barber', 'first_masc'))>> Barber Shop for Men is no more. Well, fuck. You're about to give up and leave in search of a new place where you can cut your hair when you suddenly hear a recognisable yet strangely unfamiliar voice behind you.<br>
<br>
"@@.npc_barber;Like, oh my god!
<<if $player.sec_style.body.name != "">>
<<=$player.original_first_name>>
<<else>>
<<=$player.first_name>>
<</if>>
darling, is that you?@@" bursts out from behind you loud like a horn as two <<if $npc_barber.fem>>arms wrap around and<<else>>trunk-like arms with fingers like... really big fingers... or like slightly smaller trunks... look not everything has to be an allegory for something...<</if>> grab you from behind.<br>
<br>
[<<moveTo "room_mall_manlystan1" "Turn around." 300>>]
</div>/*#
#desc: "meet" barber
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barber.profile = true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
The <<man npc_barber>> towering above you at over two meters tall, you simply let it happen. Given the size difference there's not much you can do at the moment so you just wait until <<if $npc_barber.fem>>she stops hugging you<<else>><<=setup.getNpcName('npc_barber', 'first')>> puts you down<</if>> and starts to blush.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "male" "unisex">>
"@@.npc_barber;Oh my god, I'm so sorry. It seems like I've messed up and lost it for a moment, without even considering if you'd be repulsed by unwanted physical contact. It's just I thought I lost you as a valued customer when I changed this place. But my psychiatrist told me to be true to my feelings, so that's what I try to do now. Then again I should consider others' feelings as well. Ah, life gets so complicated!@@"<br>
<br>
<<He npc_barber>> really seems to be in an emotional predicament. You assure <<him npc_barber>> that it's alright. Maybe to be a little less forceful next time, but it's okay.
<<if $player.sec_style.body.name != "">>
You also explain, that you now have a different name.
<</if>>
<<case "female">>
"@@.npc_barber;Oh my goodness. You look amazing with a capital A!@@"<br>
<br>
<<He npc_barber>> abruptly stops and takes <<his npc_barber>> hands off you.<br>
<br>
"@@.npc_barber;Oh, I am so sorry. It seems like I've messed up and lost it for a moment, without even considering if you'd be repulsed by unwanted physical contact. But I was so happy to still realise it was you, even though you've changed quite a bit. Oh, who am I to talk about change, amirite?@@"<br>
<br>
You assure <<him npc_barber>> that it's alright. Maybe to be a little less forceful next time, but it's okay.
<<if $player.sec_style.body.name != "">>
You also explain, that you now have a different name.
<</if>>
<</switch>>
<br><br>
"@@.npc_barber;It's just, I'm so goddamn happy when one of my old clients shows up. Most of them disappeared for good when I changed the place a few months ago<<if $npc_barber.fem>> now with it being "<<=ps(setup.getNpcName('npc_barber', 'first'))>> Dye Me Crazy: Beauty Parlour."<<else>>.<</if>> @@"<br>
<br>
<<printThought "Oh, I guess it has been a few months since I've been here last.">><br>
<br>
[<<moveTo "room_mall_manlystan2" "You were actually coming in for a hair-cut..." 120 "<<set $scene.voluntary=true>>">>]<br>
[<<moveTo "room_mall_manlystan2" "You just haven't had the time." 120 "<<set $scene.voluntary=false>>">>]
</div>/*#
#desc: talk to barber about haircut
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barber.profile = true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<if $scene.voluntary>>
You tell <<=setup.getNpcName('npc_barber', 'first')>> that you were actually coming in for a hair-cut and <<his npc_barber>> eyes light up even brighter.<br>
<br>
"@@.npc_barber;Wonderful! Oh, you have to let me take care of EVERYTHING, for old times' sake? If you let me work on that canvas you call hair without worrying too much of what might end up on your head, I'll give you one treatment for free. Or you could simply order what's on the menu. Don't worry about the hair length. Despite everything else, the goddess of business has been kind to me lately, so I bought myself one of these fancy Nanorobotic hives that can extend your hair length and volume to a level needed for any haircut. The future sure is fancy, darling! So, what do you say? For old times' sake?@@"
<<else>>
You assure <<him npc_barber>> that you weren't avoiding <<him npc_barber>>, you have just not found the time for a barber recently.<br>
<br>
<<if $player.hair.style == "long_open">>
"@@.npc_barber;Not found time, but your hair, it is gorgeous! Why, the colour and volume I almost didn't recognise you... fortunately I could never forget such a lovely face! That said if you are style changing to this you NEED a barber. Come on, now I'll give you one treatment for free. Or you could simply order what's on the menu. Don't worry about the hair length. Despite everything else, the goddess of business has been kind to me lately, so I bought myself one of these fancy Nanorobotic hives that can extend your hair length and volume to a level needed for any haircut. The future sure is fancy, darling! So, what do you say? For old times' sake?@@"
<<else>>
"@@.npc_barber;Darling, that is something someone can hardly overlook. Your hair is like a piece of modern art. In dire need of an explanation. But your prayers have been answered! I'm always up for a challenge. You know what? If you let me work on that canvas you call hair without worrying too much of what might end up on your head, I'll give you one treatment for free. Or you could simply order what's on the menu. Don't worry about the hair length. Despite everything else, the goddess of business has been kind to me lately, so I bought myself one of these fancy Nanorobotic hives that can extend your hair length and volume to a level needed for any haircut. The future sure is fancy, darling! So, what do you say? For old times' sake?@@"
<</if>>
<</if>>
<<he npc_barber>> says while extending <<his npc_barber>> hand.<br>
<br>
[<<moveTo "room_mall_manlystan3" "Shake <<his npc_barber>> hand and accept the offer." 300>>]<br>
[<<moveTo "room_mall_beautyparlor" "Decline the offer, but take <<him npc_barber>> up on <<his npc_barber>> suggestion to look at the menu." 300>>]<br>
</div>/*#
#desc: shake hands with barber, accept offer of hairstyling
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
You feel bad for <<=setup.getNpcName('npc_barber', 'first')>>, since it seems like <<he npc_barber>> lost most of <<his npc_barber>> patrons due <<his npc_barber>> transition, so you agree to be <<his npc_barber>> canvas. As <<he npc_barber>> hears your answer, <<his npc_barber>> mood seems to lighten up a lot.<br>
<br>
"@@.npc_barber;Oh, this is going to be awesome! Follow me inside "Dye Me Crazy," a beauty parlour where everyone can aspire to be anything!@@" <<=setup.getNpcName('npc_barber', 'first')>> puts a washbasin behind your head and starts to rinse your hair.<br>
<br>
<<if $player.hair.style == "long_open">>
"@@.npc_barber;So, obviously, your current style is just simply gorgeous, and so much volume! Still, I said I'd give you whatever you want so name a style and it's yours!@@"
<<elseif $player.identify_as == "male">>
"@@.npc_barber;You have to take better care of your hair, darling. Too many men your age can start balding since they do not tend to their hair's needs in time. Well, not that baldness would be a problem in the age of nanotechnology, but why spend that much if you don't have to? I'm not going to radically change your hair length right now, but maybe you want to try another colour? These new colours are pure magic, I simply massage them into your pericranium and your hair will keep the new colour for years. You don't have to be afraid to wash it either and you can simply come here if you want to change the colour. So, what should it be?@@"
<<else>>
"@@.npc_barber;You have to take better care of your hair, darling. Hair is an investment in yourself, so how about you let me do a bit of touch up? I'm not going to radically change your hair length right now, but maybe you want to try another colour? These new colours are pure magic, I simply massage them into your pericranium and your hair will keep the new colour for years. You don't have to be afraid to wash it either and you can simply come here if you want to change the colour. So, what should it be?@@"
<</if>>
<br><br>
<<if $player.hair.color == "brown">>
[<<moveTo 'room_mall_manlystan4' "No, let's stick with brown." 600 '<<set $scene.color="brown">>'>>]<br>
<<else>>
[<<moveTo 'room_mall_manlystan4' "Let's go with brown." 600 '<<set $scene.color="brown">>'>>]<br>
<</if>>
<<if (setup.getTotalValue('feminization')>0) || (setup.getTotalValue('bimbofication')>1)>>
<<if $player.hair.color == "blonde">>
[<<moveTo 'room_mall_manlystan4' "Blondes have more fun, let's stick with that." 600 '<<set $scene.color="blonde">>'>>]<br>
<<else>>
[<<moveTo 'room_mall_manlystan4' "Maybe something complete different? Let's try blonde?" 600 '<<set $scene.color="blonde">>'>>"]<br>
<</if>>
<</if>>
[<<moveTo 'room_mall_manlystan4' "I want to look mystical and mysterious. Let's go with black!" 600 '<<set $scene.color="black">>'>>]<br>
[<<moveTo 'room_mall_manlystan4' "Hmm... I'm the protagonist... how about silver?" 600 '<<set $scene.color="silver">>'>>]<br>
<<if (setup.getTotalValue('feminization')>1) || (setup.getTotalValue('bimbofication')>2)>>
[<<moveTo 'room_mall_manlystan4' "Hmm... I always wanted to be a redhead..." 600 '<<set $scene.color="red">>'>>]<br>
<</if>>
<<if (setup.getTotalValue('feminization')>3) || (setup.getTotalValue('bimbofication')>4)>>
[<<moveTo 'room_mall_manlystan4' "Hmm... maybe a little bit punky? Let's go with pink." 600 '<<set $scene.color="pink">>'>>]<br>
<<if (setup.getTotalValue('feminization')>5) || (setup.getTotalValue('bimbofication')>5)>>
[<<moveTo 'room_mall_manlystan4' "Hot Pink!!!!" 600 '<<set $scene.color="hotpink">>'>>]<br>
<</if>>
<</if>>
</div>/*#
#desc: barber styles and colours your hair first time
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyStress -5>>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "male" "unisex">>
<<changeHair "pixiecut" $scene.color>>
<<case "female">>
<<changeHair "shoulderlength" $scene.color>>
<</switch>>
<<if setup.getTotalValue('feminization')<3>>
<<applyExperience 'humiliation' 2 'little' $SEEN_FRIEND>>
<</if>>
<<if !$player.sec_style.body.hair && !["umkempt","combed"].includes($player.hair.style)>>
<<if $scene.voluntary>>
<<set $player.sec_style.body.hair = "voluntary">>
<<else>>
<<set $player.sec_style.body.hair = "obedient">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<switch $scene.color>>
<<case 'brown'>>
"@@.npc_barber;Even though you're sticking with what you already have, I'm still going to massage something for your skin and hair into that head of yours, okay? So just lie back and relax,@@" <<=setup.getNpcName('npc_barber', 'first')>> explains, while kneading your head with <<his npc_barber>> <<if !$npc_barber.fem>>strong, yet <</if>>gentle hands.
<<default>>
"@@.npc_barber;Well, then lie back and relax while I massage this new colour into that messy hair of yours,@@" <<=setup.getNpcName('npc_barber', 'first')>> explains, while kneading your head with <<his npc_barber>> <<if !$npc_barber.fem>>strong, yet <</if>>gentle hands.
<</switch>>
You're getting really sleepy while relaxing. <<His npc_barber>> hands are pure magic and help you to undo some of the stress you've piled up lately, and after a while of trying to stay awake you doze off. You awaken to a <<if !$npc_barber.fem>>big <</if>>hand shaking your shoulder.<br>
<br>
"@@.npc_barber;Wake up, <<=$player.first_name>>. We're done, darling. Rise and smell the ashes!@@"<br>
<br>
You open your eyes to inspect what <<=setup.getNpcName('npc_barber', 'first')>> did to your messy hair. You're startled for a short moment, as you realise that your <<=$scene.color>> hair
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "male" "unisex">>
has been cut into a rather feminine pixie cut hair style.
<<case "female">>
is now shoulder long with a really feminine cut. <<He npc_barber>> didn't lie when <<he npc_barber>> said longer hair is possible, but this, this is almost magic!
<</switch>>
<br><br>
<<if setup.getTotalValue('feminization')<3>>
<<set _tmpText = "Oh god. This looks way too girly.">>
<<if $scene.color == 'pink'>>
<<set _tmpText += " And why did I choose the pink, of all colours??">>
<</if>>
<<printThought _tmpText>><br>
<br>
<<=setup.getNpcName('npc_barber', 'first')>> notices the distress your new hair seems to cause you.<br>
<br>
"@@.npc_barber;If it's not to your liking, we can change it back to the way it was...@@"<br>
<br>
Remembering how happy <<=setup.getNpcName('npc_barber', 'first')>> was seeing you again, you assure <<him npc_barber>> it's just what you've always wanted. You just need a little time to adjust to it. You decide to keep this haircut for the time being.
<<else>>
<<printThought "Oh my. I did not know I could look this cute.">><br>
<br>
"@@.npc_barber;So you like it? Thank heavens, I was afraid you might find it a touch too girly. These unisex cuts are all the craze though at the moment.@@"<br>
<br>
You thank <<him npc_barber>> for <<his npc_barber>> time and effort.
<</if>>
<br><br>
[<<moveTo "room_mall_beautyparlor" "Continue." 300>>]
</div>/*#
#desc: visit mall beauty parlour
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
You enter the "Dye Me Crazy" beauty parlour. As usual, <<=setup.getNpcName('npc_barber', 'first')>> greets you with a smile from ear to ear and a heartfelt hug.<br>
<br>
<<if setup.getCurrentMakeup() == "ultimatebimbo" && (!State.hasPlayed("room_mall_beautyparlor_makeup_unlock_moviestar") || !$player.makeup.unlocked.moviestar && setup.getTotalValue("makeup") >= 20)>>
<<=setup.getNpcName('npc_barber', 'first')>> looks at you with wide-eyed horror.<br>
<br>
"@@.npc_barber;Oh no! Were you, like, assaulted by a bunch of slutty clowns or something? Your makeup it's just... I don't even have the words! Please, if you want to go heavy let me help, I can give you a look that will be, classy and beautiful. You'll look like you were painted by a great artist, instead of troweled over by a bricklayer.@@"<br>
<br>
You find yourself being shuffled towards a chair by the insistently enthusiastic stylist.<br>
<br>
[<<moveTo "room_mall_beautyparlor_makeup_unlock_moviestar" "Continue." 30>>]
<<elseif !$npc_barber.flags.makeup_options && setup.getCurrentMakeup() != "">>
Taking a step back, <<he npc_barber>> looks at your face, seeming to notice your makeup for the first time.<br>
<br>
[<<moveTo "room_mall_beautyparlor_makeup_intro" "Continue." 30>>]
<<else>>
<<if setup.getCurrentMakeup() == "ultimatebimbo">>
<<if $player.makeup.permanent == "moviestar">>
"@@.npc_barber;Oh, mercy! How could you cover up artistry with something so vulgar as... that!@@"<br>
<br>
<<He npc_barber>> shakes <<his npc_barber>> head, "@@.npc_barber;I suppose it is your decision, but really, to all but defile such a pretty face... I can hardly understand it!@@"
<<elseif $player.makeup.permanent == "ultimatebimbo">>
"@@.npc_barber;Oh dearie me, that's permanent, isn't it?@@" <<He npc_barber>> shakes <<his npc_barber>> head in disappointment. "@@.npc_barber;To deface your lovely countenance in such a way... I beg you to change to something else, or at least put something more appropriate over top! Oh, it just hurts me to see something so lovely made up to look so trashy...@@"
<<else>>
<<=setup.getNpcName('npc_barber', 'first')>> looks at your makeup and shakes <<his npc_barber>> head, obviously disappointed at your garish choice.
<</if>>
<br><br>
<<elseif $player.makeup.messed > 25>>
<<=setup.getNpcName('npc_barber', 'first')>> looks at your makeup with mild horror, clearly put off by how ruined it has become from wear.<br>
<br>
<<printThought "Hmm, I guess I really should fix things up...">><br>
<br>
<</if>>
"@@.npc_barber;<<=$player.first_name>> darling, what can I do for you?@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<set _daysTo = setup.daysToDate($now, setup.getTaskDueDate('task_uniform_upgrade'))>>
Mindful of your uniform assignment due <<if _daysTo == 1>>in 1 day<<elseif _daysTo == 0>>today<<else>>in <<=_daysTo>> days<</if>> you consider changing your hair.
<<if $player.flags.uniform_upgrade.fully_understood_contract>>
You recall from the contract, however, that hair, being part of your body, is covered by a different section and not technically considered a portion of your "uniform."
<<else>>
You're starting to consider if one of the new 'do's would qualify when the shopkeeper swings by.<br>
<br>
"@@.npc_barber;Thinkin' about a new haircut? I tell you, there's nothing like it, it's totally different than just changing your outfit.@@"<br>
<br>
<<His npc_barber>> comment makes you realise that hair isn't technically clothing. Knowing how rule-based everything seems to be you're willing to bet that means it wouldn't qualify as a uniform "upgrade."
<</if>>
Not wanting to get in trouble due to another loophole you decide you should probably look somewhere else to find a suitable uniform upgrade.<br>
<br>
<</if>>
<<if $npc_manager.stage >= 3 || $player.sec_style.clothing.nails>>
<<if !$npc_barber.flags.firstnails>>
You notice a new machine off to one side of the salon. Printed in holographic letters across the top is the name "Nail Dream Automatic 3000." <br>
<br>
Noting your glance <<=setup.getNpcName("npc_barber","first")>> smiles. "@@.npc_barber;Just another way we are seeking to expand our offerings and better serve our customers! It employs the latest technology to give you perfect, nigh-indestructible nails in mere minutes!@@"<br>
<br>
[<<moveTo "room_mall_beautyparlor_nails_first" "Check it out." 30>>]
<<else>>
[<<moveTo "room_mall_beautyparlor_nails_1" "Get your nails done." 30>>]
<</if>>
<br>
<</if>>
<<if $currentTasks.hasOwnProperty("ai_robot_body_mimic_manager_task") && !$currentTasks.ai_robot_body_mimic_manager_task.finished && (!$currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_hair.condition || !$currentTasks.ai_robot_body_mimic_manager_task.trigger.manager_makeup.condition) || $currentTasks.hasOwnProperty("ai_robot_body_weekend_meeting") && !$currentTasks.ai_robot_body_weekend_meeting.finished && (!$currentTasks.ai_robot_body_weekend_meeting.trigger.manager_hair.condition || !$currentTasks.ai_robot_body_weekend_meeting.trigger.manager_makeup.condition)>>
[<<moveTo "event_beautyparlor_manager_mimic_1" 'Ask <<him npc_barber>> to help you mimic <<=setup.getNpcName("npc_manager", "formal")>>.' 60 "<<set $scene.first=!State.hasPlayed('event_beautyparlor_manager_mimic_1')>>">>]<br>
<</if>>
[<<moveTo "room_mall_beautyparlor_haircut" "Get a haircut." 30>>]<br>
<<if $npc_barber.flags.makeup_options>>
[<<moveTo "room_mall_beautyparlor_makeup_1" 'Have <<=setup.getNpcName("npc_barber", "first")>> do your makeup.' 0>>]<br>
<<elseif $player.sec_style.clothing.makeup != "">>
<br><br>
[<<moveTo "room_mall_beautyparlor_makeup_intro_alt" "Ask <<him npc_barber>> about makeup." 30>>]<br>
<</if>>
<<if $fetish.hair_growth>>
<<if !$player.sec_style.body.hair_face>>
[<<moveTo "event_secretary_style_facial_hair_voluntary_1" "Ask about <<him npc_barber>> about permanent facial hair removal." 60>>]<br>
<</if>>
<<if $player.sec_style.body.hair_face && !$player.sec_style.body.hair_body>>
<<if State.hasPlayed("theme_secretary_style_bodyhair_enthusiast_3")>>
[<<moveTo "event_secretary_style_bodyhair_voluntary_1" "Ask about <<his npc_barber>> offer of electrolysis." 60>>]<br>
<<else>>
[<<moveTo "event_secretary_style_bodyhair_voluntary_0" "Ask <<him npc_barber>> about permanent body-hair removal." 60>>]<br>
<</if>>
<</if>>
<</if>>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<</if>>
</div>/*#
#desc: beauty parlour haircut
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
"@@.npc_barber;Considering a haircut <<=$player.first_name>>? Splendid, what are you thinking?@@"<br>
<br>
<<include haircut_menu>><br>
<br>
[<<moveTo "room_mall_beautyparlor" "Style something else." 30>>]
</div>/*#
#desc: beauty parlour haircut options
#status: RELEASED 0.6.0.0
#*/
You ponder your options. Your hair is currently <<=$player.hair.color>> and
<<switch $player.hair.length>>
<<case 0>>very short in length.
<<case 1>>short in length.
<<case 2>>reaches the top of your shoulders.
<<case 3>>reaches just under your shoulder-blades.
<<case 4>>reaches your hips with ease.
<<case 5>>reaches your ankles, so you have to watch out not to trip over it.
<</switch>><br>
<br>
<<set _femOnly = State.hasPlayed("event_secretary_style_hair_finish_1")>>
<<if _femOnly>>
<<=setup.getNpcName("npc_barber","first")>> informs you that the nanites already in your hair are programmed to restrict what styles <<he npc_barber>> can modify things to.<br>
<br>
<<printThought 'Of course <<=setup.getNpcName("npc_manager","formal")>> would do something like that, I guess there is no sense further limiting myself...'>><br>
<br>
<</if>>
<<getHairCut 'room_mall_beautyparlor_cutcolor' _femOnly>>/*#
#desc: choose colour for haircut
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
"@@.npc_barber;Very well. And what colour would you like?@@"<br>
<br>
<<getHairColor $scene.haircuttime $scene.haircutcost $scene.haircutstyle "room_mall_beautyparlor_cut">>
<br>
[<<moveTo "room_mall_beautyparlor" "You've changed your mind." 0>>]
</div>/*#
#desc: choose hairstyle
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.haircutcost)`>>
<<changeHair $scene.haircutstyle $scene.haircutcolor>>
<<if !$player.sec_style.body.hair && setup.getCurrentHairstyle().femininity > 0>>
<<set $player.sec_style.body.hair = "voluntary">>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
"@@.npc_barber;And we're done! How do you like it?@@"<br>
<br>
[<<moveTo "room_mall_beautyparlor" "Continue." 0>>]
</div>/*#
#desc: abort hairstyle choice for being too feminine
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
You take a closer look at the <<=$scene.haircutname>> hairstyle, but conclude that it's a bit too girly for you.<br>
<br>
<<printThought $scene.haircutthought>><br>
<br>
[<<moveTo "room_mall_beautyparlor" "Let's pick something else..." 0>>]
</div>/*#
#desc: stan introduces you to makeup options
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barber.flags.makeup_options = true>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barber', 'first')>> examines your makeup.<br>
<br>
<<if $player.makeup.permanent == "">>
<<if $player.makeup.messed >= 50>>
"@@.npc_barber;Oh my, your makeup is such a mess! You should really get something done before you leave.@@"
<<else>>
<<if $player.makeup.messed >= 25>>
"@@.npc_barber;Hmm, your makeup is showing a bit of wear, we could always refresh it... or go with something totally different!@@"
<<else>>
"@@.npc_barber;Your makeup is looking in good condition, very competently done. Were you thinking of trying something different?@@"
<</if>>
<</if>>
<<elseif $player.makeup.template != "">>
<<if $player.makeup.messed >= 50>>
"@@.npc_barber;Oh my, your makeup is such a mess! You should really get something done... or strip it off and go with the permanent makeup I can see peeking out.@@"
<<else>>
<<if $player.makeup.messed >= 25>>
"@@.npc_barber;Hmm, your makeup is showing a bit of wear, and the permanent underlayer is peeking through. Should either remove or refresh for sure.@@"
<<else>>
"@@.npc_barber;Your makeup is looking in good condition, were you thinking of trying something different?@@"
<</if>>
<</if>>
<<else>>
"@@.npc_barber;My, my, is that permanent makeup? Well, know that I can put something over top, as well as having the equipment to replace it with something else entirely, just name the style and its yours permanently!@@"
<</if>>
<br><br>
<<switch $scene.makeup>>
<<case "nomakeupmakeup">>
"@@.npc_barber;What you have now is quite subdued, but I think you could pull of something a bit bolder, don't you think?@@"
<<case "normalmakeup">>
"@@.npc_barber;That look is quite nice on you. Very feminine, but I think we can push it a bit further, don't you think?@@"
<<case "camgirl">>
"@@.npc_barber;A bit heavy of a look... striking, but hides some of your natural beauty... still, if it is what you enjoy.@@"
<<case "egirl">>
"@@.npc_barber;Oh, wow, is that style coming back into fashion? Well I suppose it was due. A bit heavy of a look... striking, but hides some of your natural beauty... still, if it is what you enjoy.@@"
<<case "expertmakeup">>
"@@.npc_barber;A very bold look, I like it, but it's maybe a bit much for everyday wear.@@"
<<case "moviestar">>
"@@.npc_barber;This style is utterly stunning on you... though I will note the maintenance can be a bit of a burden.@@"
<<case "ultimatebimbo">>
"@@.npc_barber;This... why would you do this to your lovely face? Oh, this is just...@@" <<He npc_barber>> shudders.
<<case "sissy_doll">>
"@@.npc_barber;I have to say, on most people that much makeup would be a bit much, but you just look so adorably cute!@@"
<<case "qtpie">>
"@@.npc_barber;I have to say, that makeup... well it turn your natural cuteness up so high I think it may have broken the dial!@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<br><br>
"@@.npc_barber;So... what are you thinking of? Your face is a canvas of near infinite possibility...@@"<br>
<br>
[<<moveTo "room_mall_beautyparlor_makeup_1" "View your options." 0>>]
</div>/*#
#desc: ask stan about makeup
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barber.flags.makeup_options = true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_barber', 'first')>> if the parlour also offers makeup services?<br>
<br>
"@@.npc_barber;Of course my dear! Oh, you would just look lovely with a bit of blush and lipstick... not that you are not adorable already but, well... one can never be too beautiful, right?@@"<br>
<br>
[<<moveTo "room_mall_beautyparlor_makeup_1" "View your options." 0>>]
</div>/*#
#desc: stan gives you moviestar makeup
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.template = 'moviestar'>>
<<set $player.makeup.messed = 0>>
<<if setup.getTotalValue("makeup") == 20>>
<<set $scene.unlockedmoviestar = true>>
<<unlockMakeup 'moviestar'>>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barber', 'first')>> helps you up into the chair and takes a deep breath.<br>
<br>
"@@.npc_barber;Now just relax and let the magic happen!@@"<br>
<br>
<<if $scene.unlockedmoviestar>>
With all your experience doing your makeup you find you're actually able to follow along as <<=setup.getNpcName('npc_barber', 'first')>> gives you a movie-star quality makeover. By the time you step out of the chair with your dazzling new look you're pretty sure you could reproduce the look on your own...
<<else>>
<<He npc_barber>> carefully cleans your face before deploying a dizzying array of creams, paints, mascara and some things you don't even recognise, your face transforming from you into, well, still you, but like the special edition high definition post-production version of yourself.<br>
<br>
<<printThought "Wow, how can <<he npc_barber>> remember all that? I can barely imagine being skilled enough to do all that...">>
<</if>>
<br><br>
"@@.npc_barber;There we go!@@" <<He npc_barber>> states with pride before helping you off the chair.<br>
<br>
[<<moveTo "room_mall_beautyparlor" "Continue." 0>>]
</div>/*#
#desc: beauty parlour makeup selection
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
"@@.npc_barber;Looking for some professional makeup? Well, you have come to the right place, just tell me what style you have in mind. Once you find something you like, note that we can also make it permanent with state of the art nanobots. It certainly makes the morning routine faster! And you can always style over it to mix things up.@@"<br>
<br>
<<printSalonMakeup>><br>
<br>
[<<moveTo "room_mall_beautyparlor" "Style something else." 30>>]
</div>/*#
#desc: beauty parlour makeup application
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 0>>
<<if $scene.permanent>>
<<set $player.makeup.template = ''>>
<<set $player.makeup.permanent = $scene.style>>
<<else>>
<<set $player.makeup.template = $scene.style>>
<</if>>
<<addCredits `-($scene.price)`>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<if $scene.permanent>>
Nodding at your selection <<=setup.getNpcName('npc_barber', 'first')>> takes you over to a machine, first showing you a render of how you will look with the new style and then holding up the smooth, hard mask that will clean your face and apply the nanites for your new "permanent" style.<br>
<br>
<<switch $scene.style>>
<<case "" ''>>
"@@.npc_barber;Ready to start over with a blank slate? Remember that once you settle on a new style to hurry on back, having it permanently applied is just so much more convenient.@@"
<<case "nomakeupmakeup">>
"@@.npc_barber;A nice subtle default? A good choice, if a bit conservative.@@"
<<case "normalmakeup">>
"@@.npc_barber;A fine basic choice, though I think with your face you can afford to be a bit more daring — you'd make anything look good!@@"
<<case "expertmakeup">>
"@@.npc_barber;This is definitely a bold choice to make permanent, but I think it suits you.@@"
<<case "moviestar">>
"@@.npc_barber;Getting something this powerful is certainly a statement, you are going to turn so many heads!@@"
<<case "camgirl">>
"@@.npc_barber;This is certainly a heavy of a look... striking, but a shame how it overpowers some of your natural, delicate beauty.@@"
<<case "egirl">>
"@@.npc_barber;Oh, wow, is that style coming back into fashion? Well I suppose it was due. A bit heavy of a look... striking, but hides some of your natural beauty... still, if it is what you enjoy.@@"
<<case "ultimatebimbo">>
<<=setup.getNpcName('npc_barber', 'first')>> sighs and shakes <<his npc_barber>> head. "@@.npc_barber;I know they say the customer is always right but... well, this seems like such a tragedy to paint over your lovely features with something so garish.@@"
<<case "sissy_doll">>
"@@.npc_barber;You know, normally I would recommend against something like this but on you it somehow fits, you are going to look so cute!@@"
<<case "qtpie">>
"@@.npc_barber;I have to say, this makeup... well I didn't think you could get much cuter than you already are... but I have proven myself wrong!@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.style>>
<</switch>>
<br><br>
The mask is slightly warm as it presses tight against your skin, and you feel an odd tingle as the nanites work their magic. Barely a minute or two later and the mask is gently removed and you stare out at your new appearance, in awe at the efficient power of technology.
<<else>>
Confirming your choice, <<=setup.getNpcName('npc_barber', 'first')>> helps you into a chair and begins mixing colours in <<his npc_barber>> expansive, professional makeup kit.<br>
<br>
<<switch $scene.style>>
<<case "" ''>>
"@@.npc_barber;Time to start over? Not that I'm complaining, but this is quite simple to do, you really should learn to remove makeup yourself sometime...@@"
<<case "nomakeupmakeup">>
"@@.npc_barber;A simple look, but I will also admit a bit of a basic one for my skills. You could easily learn to do this by watching some online videos or such.@@"
<<case "normalmakeup">>
"@@.npc_barber;A nice basic look, well, let's get to it then.@@"
<<case "expertmakeup">>
"@@.npc_barber;A bold look, but I think it will suit you.@@"
<<case "camgirl">>
"@@.npc_barber;A striking look, though it somewhat overpowers a bit of your natural, delicate beauty.@@"
<<case "egirl">>
"@@.npc_barber;Oh, wow, is that style coming back into fashion? Well I suppose it was due. A bit heavy of a look... striking, but hides some of your natural beauty... still, if it is what you enjoy.@@"
<<case "moviestar">>
"@@.npc_barber;Alright my dear, just sit back and I'll soon have you looking like the belle of the ball...@@"
<<case "ultimatebimbo">>
"@@.npc_barber;Tell me the truth, is this on a dare? The customer is always right, they say, but... well, it is such a shame to paint over your lovely features like this.@@"
<<case "sissy_doll">>
"@@.npc_barber;Oh my, are you going to a party or something? This is such a cute look but... mmm, a bit much for day to day I would say...@@"
<<case "qtpie">>
"@@.npc_barber;With how cute you already are I almost hesitate to apply this style... but what the hell, in for a penny, right?@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.style>>
<</switch>>
<br><br>
Working remarkably fast, you are soon looking in the mirror at your new lovely face, thanking <<him npc_barber>> for the expert work and rising to your feet.
<</if>>
<br><br>
[<<moveTo "room_mall_beautyparlor" "Style something else." 30>>]<br>
[<<moveTo "room_mall_interior" "Leave the beauty parlour." 30>>]
</div>/*#
#desc: beauty parlour nails first
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barber.flags.firstnails = true>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
You walk over to the "Nail Dream Automatic 3000" and check things out. Designed to accommodate two customers at a time there is a seat and then two holes through which you would insert your hands. A screen above displays an options menu, it seems things are as simple as punching in your selection, inserting your hands and letting it go to work.<br>
<br>
<<if $player.sec_style.clothing.nails == "">>
"@@.npc_barber;Feel like taking it for a spin? First treatment is on the house!@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 15>>
[<<moveTo "room_mall_beautyparlor_nails_voluntary_1" "Get your nails done." 30>>]<br>
<<elseif setup.getTotalValue("feminization") > 10>>
<<if setup.getWillpower() >0>>
[<<moveTo "room_mall_beautyparlor_nails_voluntary_1" "Gather your courage and get your nails done." 30>>]<br>
<<else>>
[@@.link_locked;You can't quite muster the courage to get your nails done.@@]<br>
<</if>>
<<else>>
[@@.link_locked;Getting your nails done? No, that sounds a bit too girly.@@]<br>
<</if>>
<<else>>
"@@.npc_barber;Go ahead and try it out if you like — professional quality work with a fraction of the effort of doing it by hand, great if you want to mix things up.@@" There is a chime as another customer walks through the door and <<he npc_barber>> turns away. "@@.npc_barber;Well I'll leave you to it, enjoy!@@"<br>
<br>
[<<moveTo "room_mall_beautyparlor_nails_1" "Get your nails done." 30>>]<br>
<</if>>
<br>
[<<moveTo "room_mall_interior" "Leave the beauty parlour." 30>>]
</div>Nail colour:
<label>Skintone <<radiobutton "$scene.color" 'skin' checked>></label><br>
<label>Red <<radiobutton "$scene.color" 'red'>></label><br>
<label>Black <<radiobutton "$scene.color" 'black'>></label><br>
<label>Pink <<radiobutton "$scene.color" 'pink'>></label><br>
<br>
Nail length:
<label>Short <<radiobutton "$scene.length" 1 checked>></label><br>
<label>Medium <<radiobutton "$scene.length" 2>></label><br>
<label>Long <<radiobutton "$scene.length" 3>></label>/*#
#desc: beauty parlour nails choice
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.nailPrice = 35>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nail_machine.png">>
<div id="invframe" class="scrolltext">
Sitting in front of the "Nail Dream Automatic 3000" to get your nails done the menu on-screen menu lists your options.<br>
<br>
<<include "nails_options">><br>
<br>
<<if $player.money.total >= 35>>
[<<moveTo "room_mall_beautyparlor_nails_2" "Make your selection — <<=$scene.nailPrice>> credits." 300>>]<br>
<<else>>
[@@.link_locked;Getting your nails done costs <<=$scene.nailPrice>> credits and you do not have such to spend.@@]
<</if>>
[<<moveTo "room_mall" "Change your mind and leave the beauty parlour." 30>>]
</div>/*#
#desc: beauty parlour nails application
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.nails.length = $scene.length>>
<<set $player.nails.color = $scene.color>>
<<set $player.nails.style = "simple">>
<<addCredits -35>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nail_machine.png">>
<div id="invframe" class="scrolltext">
Having made your selection, and your payment, you stick your hands through the two holes in the front of the machine. You feel a slight pressure as something tightens around your wrists to hold things in place and then a tingling as unseen robotic arms set to work polishing, cleaning and then replacing your nails. A few minutes later and the pressure relaxes as you pull out your hands to find ten perfectly done nails adorning your fingers, precisely to your specification.<br>
<br>
[<<moveTo "room_mall" "Stand up and leave the beauty parlour." 30>>]
</div>Style: <<hairStyle>><br>
Colour: <<hairColor>><br>/*#
#desc: outside mall cafe
#status: FINISHED 0.4.0.0
#*/
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<if !(_nextdate == null) && setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<</if>>
<<set _timeEnoughToWork = _nextdate == null || !setup.compareDay($now,_nextdate) || _tmpSeconds > 3600>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkTaskEvent() && _timeEnoughToWork && $player.flags.maidcafe.stage == 0 && setup.checkVisibleClothingTag('maid') > 60 && $npc_maid.profile>>
<<if !$currentTasks.hasOwnProperty('task_uniform_upgrade') || $currentTasks['task_uniform_upgrade'].finished>>
<<initRoom>>
<<moveTo "event_maid_cafe_maidery_intro_1">>
<</if>>
<<elseif $player.flags.maidcafe.stage >= 3 && setup.checkItemTypeTag('headdress', ['cat']) && setup.checkVisibleClothingTag('maid') > 60 && !$player.flags.maidcafe.cat && $fetish.pet_play>>
<<initRoom>>
<<moveTo "event_maid_cafe_work_cat_first_1">>
<</if>>
<<set $scene.maidSneakAvail = $player.flags.maidcafe.stage == 0 && $player.sec_style.clothing.female != "" && $player.sec_style.clothing.maid == "" && $player.sec_style.clothing.nails != "" && setup.getCurrentMakeup() != "" && $player.makeup.messed < 25 && random(1,4) == 1 && $npc_maid.profile && _timeEnoughToWork>>
<<set $scene.chessAvailable = random(1,3) == 1 || !$scene.hasOwnProperty("chessAvailable") && ($now.getUTCDay() == 0 || $now.getUTCDay() == 6)>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You enter the Maid Cafe NewType IV.
<<if _timeEnoughToWork>>
<<if (_nextdate == null) || !setup.compareDay($now,_nextdate) || _tmpSeconds <= 0>>
You're not scheduled to meet anyone here today.
<<else>>
You're scheduled to meet someone here at <<=setup.shortTime(_nextdate)>>, but that's a while off.
<</if>>
Of course you could just stay to soak up the atmosphere and
<<if setup.getTotalValue('feminization') < 2>>oogle
<<elseif setup.getTotalValue('feminization') < 4>>check out
<<elseif setup.getTotalValue('feminization') < 8>>admire
<<elseif setup.getTotalValue('feminization') < 15>>jealously admire
<<else>>fantasise being one of
<</if>>
the oh-so-cute waitress-maids while you relish a steaming hot cup of coffee goodness.
<<if $npc_maid.profile>>
<br><br>
<<switch $player.flags.maidcafe.stage>>
<<case 0>>
<<if $scene.maidSneakAvail>>
The cafe seems quite a bit busier than usual, maidtresses rushing back and forth, barely keeping up with customers.<br>
<br>
As you wait for a seat to clear up you notice that the door to the back room is open, and you can see what looks like a full maid outfit laid out — perhaps it was intended for someone that failed to show up, and that's why they appear short-staffed?<br>
<br>
<</if>>
You notice a "help wanted" sign near the register.<br>
<br>
<<if $player.sec_style.clothing.female == "">>
<<printThought "Hmm, traipsing around as a maid? No, even just going out in public dressed female sounds a bit much, much less something so... extreme!">>
<<else>>
<<if setup.getTotalValue("feminization") >= 12>>
[<<moveTo "event_maid_cafe_job_request_1" "Ask about the job opening." 120>>]
<<else>>
[@@.link_locked;Looking around at the feminine maid outfits worn by the waitresses of the Newtype Cafe, you don't think you could manage to go out in public looking so girly, so asking about a job would be a bit silly.@@]
<</if>>
<</if>>
<<if $scene.maidSneakAvail>>
<br>
[<<moveTo "event_enthusiast_maid_1" 'Sneak into the changing room and put on the outfit.' 180>>]
<</if>>
<<case 1>>
Noticing you walk into the cafe <<=setup.getNpcName('npc_maid', 'first')>> walks over to meet you.<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 60 && setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>
"@@.npc_maid;Lookin' good, you ready to start your training?@@"<br>
<br>
[<<moveTo "event_maid_cafe_training_1" "Start training." 600>>]
<<elseif setup.checkVisibleClothingTag('maid') > 60>>
Her gaze slides down your body before frowning as she looks at your feet.<br>
<br>
"@@.npc_maid;Perfect outfit but... well, you'll be expected to wear heels while you're working so it wouldn't really be proper training with you just in flats.@@"
<<else>>
"@@.npc_maid;Dunno if you were planning on starting your training, but you need to be properly attired first. Come back with a maid outfit on, okay?@@"
<</if>>
<<case 2>>
<<if setup.checkVisibleClothingTag('maid') > 60 && setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>
[<<moveTo "event_maid_cafe_first_shift_1" "Work your first shift." 60>>]
<<elseif setup.checkVisibleClothingTag('maid') > 60>>
[@@.link_locked;You recall you need to wear heels to work at the maid cafe.@@]
<<else>>
[@@.link_locked;You aren't properly attired to work at the maid cafe today.@@]
<</if>>
<<case 3>>
<<include maidCafeWork>>
<<default>>
ERROR, unknown maid stage: <<=$player.flags.maidcafe.stage>>
<</switch>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
[<<moveTo "room_mall_cafe_ask_uniform_upgrade" 'Order a coffee and ask <<=setup.getNpcName("npc_maid", "first")>> for suggestions on how to "upgrade" your uniform.' 60>>]<br>
<br>
<</if>>
<<if $npc_technician.flags.evil == 1 && State.hasPlayed("event_rpg_second_evil_4") && !State.hasPlayed("event_technician_rescue_friend_assist_2_maid_1")>>
[<<moveTo "event_technician_rescue_friend_assist_2_maid_1" 'Talk to <<=setup.getNpcName("npc_maid", "first")>> about de-evilifying your mutual friend, <<=setup.getNpcName("npc_technician", "first")>>.' 180>>]<br>
<</if>>
<</if>>
<</if>>
<br><br>
<<if setup.compareDay($now,_nextdate)>>
You have plans to meet somebody here today at <<=setup.shortTime(_nextdate)>>.<br>
<br>
<<else>>
<<if ($player.flags.coffee.lastcoffee==null) || setup.minDiff($now,$player.flags.coffee.lastcoffee)>60>>
[<<moveTo "event_maid_cafe_drink_1" "Order a quick drink — 5 credits." 300>>]<br>
<<else>>
[@@.link_locked;You're still a bit jittery from your last caffeine hit... better to wait.@@]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_maid_cafe_chess_intro") && $scene.chessAvailable && !$scene.chess>>
<<if State.hasPlayed("event_maid_cafe_chess_play_maid_final_win_2")>>
[<<moveTo "event_maid_cafe_chess_root" "A maid-attired chess player." 60>>]<br>
<<else>>
[<<moveTo "event_maid_cafe_chess_root" "A chess player waiting for a game." 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_maidcafe_landlord_intro_2") && !(State.hasPlayed("event_surgeon_help_landlord_2") || State.hasPlayed("event_surgeon_help_landlord_miss"))>>
[<<moveTo "event_landlord_maidcafe_talk_1" 'Sit down and chat with <<=setup.getNpcName("npc_landlord","first")>>.' 60>>]<br>
<</if>>
<br>
<<include thoughts_current>>
<<if _nextdate != null && setup.compareDay($now,_nextdate)>>
<<if $currentTasks.hasOwnProperty('task_landlord_surgery') && !$currentTasks.task_landlord_surgery.finished && setup.compareDay($now, setup.getTaskDueDate('task_landlord_surgery'))>>
<<set _timeTo = setup.secondsToDate($now, setup.getTaskDueDate('task_landlord_surgery'))>>
[<<moveTo "room_mall_cafe" "Wait for the surgeon to arrive." _timeTo>>]<br>
<<elseif !$player.sec_style.clothing.nails && $player.sec_style.clothing.female && $player.sec_style.clothing.makeup && setup.hasFreeTime($now, $player, $currentTasks, 1800) && $now.getUTCHours() > 12 && $npc_maid.profile && !($player.sec_style.body.name != "" && !$npc_technician.flags.reactnamechange)>>
[<<moveTo "event_enthusiast_nails_1" "Wait." 120>>]<br>
<<elseif $fetish.karmic_harass && $npc_technician.profile && !$npc_technician.flags.nazi_event && $npc_technician.stage>1 && $currentTasks.hasOwnProperty('technician_cafe_1') && !$currentTasks.technician_cafe_1.finished && (!$player.sec_style.body.name || $npc_technician.flags.reactnamechange)>>
<<set _tmpSeconds -= 20>>
[<<moveTo "event_random_nazis" "Wait." _tmpSeconds>>]<br>
<<else>>
[<<moveTo "room_mall_cafe" "Wait." _tmpSeconds>>]<br>
<</if>>
<</if>>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: mall cafe: coffee
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.coffee.lastcoffee=$now>>
<<addCredits -5>>
<<set $scene.event = 'none'>>
<<if ($npc_technician.relationship.kink_indulge.piss < 4 || !$fetish.piss) && ($npc_technician.relationship.kink_indulge.cum < 2 || !$fetish.cum)>>
<<applyStress -7>>
<<applyFatigue -10>>
<<set $scene.event = 'none'>>
<<elseif $npc_technician.relationship.kink_indulge.cum == 2 && $fetish.cum>>
<<set $scene.event='cum'>>
<<elseif $npc_technician.relationship.kink_indulge.piss == 4 && $fetish.piss>>
<<set $scene.event='piss'>>
<<else>>
<<if random(2) == 1 && $fetish.piss>>
<<set $scene.event='piss'>>
<<elseif $fetish.cum>>
<<set $scene.event='cum'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You order a coffee and it is quickly prepared by one of the cafe's lovely Maidtressess.<br>
<br>
<<if $scene.event == 'none'>>
You eagerly drink it down, savouring that wonderful, wonderful taste of fresh coffee and feeling immediately invigorated.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<<else>>
<<switch $scene.event>>
<<case 'piss'>>
It seems to take an extra minute or two for them to prepare your drink, but the maidtress is soon smiling as she places your cup on the counter. "@@.npc_waitress;There you go! Hot and fresh... and with your special additive.@@"<br>
<br>
You thank her and bring the cup to your lips, the strong taste of coffee unmistakably intermingled with the taste of <<getWordPiss>>. The maidtress winks at you. "@@.npc_waitress;Is it to your liking? I drew it fresh from the tap personally!@@"<br>
<br>
<<if setup.getTotalValue("piss") > 15>>
<<printThought '<<=setup.getNpcName("npc_technician","first")>> must have told them to do this to me... she really is the best.'>>
<<else>>
<<printThought '<<=setup.getNpcName("npc_technician","first")>> must have put them up to this... why does that turn me on so much?'>>
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_drink_2" "Knock it back with a smile, yum!" 180 "<<set $scene.piss=true>>">>]<br>
<<if setup.getTotalValue("piss") > 15>>
[@@.link_locked;You'll never pass up a bit more <<getWordPiss>> in your life...@@]
<<else>>
[<<moveTo "event_maid_cafe_drink_2" "Clarify you were hoping for something a bit less... acidic." 300 "<<set $scene.piss=false>>">>]
<</if>>
<<case 'cum'>>
A minute later the Maidtress re-appear with a piled-high frap. She sets it down in front of you with a wink.<br>
<br>
"@@.npc_waitress;Pounded and whipped fresh for you.@@"<br>
<br>
You pick up the drink and immediately smell something
<<if setup.getTotalValue("cum") > 15>>
very, very right: the frothy foam smells like frothy cum.<br>
<br>
<<printThought '<<=setup.getNpcName("npc_technician","first")>> must have told them to do this to me... she really is the best.'>>
<<else>>
wrong? The frothy foam smells like frothy... cum.<br>
<br>
<<printThought '<<=setup.getNpcName("npc_technician","first")>> must have put them up to this... why does that make ME want to cum?'>>
<</if>>
<br><br>
<<if $npc_technician.flags.evil == 1>>
The thought makes you wince... given the state <<=setup.getNpcName("npc_technician","first")>> is currently in.<br>
<br>
<<printThought "I really need to figure out how to get her back...">><br>
<br>
<</if>>
[<<moveTo "event_maid_cafe_drink_2" "Take a big bite of foam and lick your lips, yum!" 180 "<<set $scene.cum=true>>">>]<br>
[<<moveTo "event_maid_cafe_drink_2" "Clarify you were hoping for something a bit less... salty." 300 "<<set $scene.cum=false>>">>]
<<default>>
ERROR: unexpected scene.event <<=$scene.event>>
<</switch>>
<</if>>
</div>/*#
#desc: mall cafe - coffee
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.event>>
<<case 'cum'>>
<<if $scene.cum>>
<<applyExperience 'cum' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 11 'terrible' $SEEN_STRANGER>>
<<if $npc_technician.relationship.kink_indulge.cum < 3>>
<<set $npc_technician.relationship.kink_indulge.cum = 3>>
<</if>>
<</if>>
<<set _stress = -(setup.getTotalValue("cum") - 10)>>
<<case 'piss'>>
<<if $scene.piss>>
<<applyExperience 'piss' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<<if $npc_technician.relationship.kink_indulge.piss < 5>>
<<set $npc_technician.relationship.kink_indulge.piss = 5>>
<<include "addTechnicianPiss">>
<</if>>
<</if>>
<<set _stress = -(setup.getTotalValue("piss") - 10)>>
<</switch>>
<<set $player.flags.coffee.lastcoffee=$now>>
<<applyStress _stress>>
<<applyFatigue -20>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
<<switch $scene.event>>
<<case 'piss'>>
<<if $scene.piss>>
You smile and polish off the drink, telling the maidtress that you "@@.pc;Love it!@@"<br>
<br>
She grins in knowing depravity, "@@.npc_waitress;I bet you do! Oh you are just so kinky, I love it!@@"<br>
<br>
Before you can chat any further another customer approaches and you move out of the way to let the maidtress get back to work, feeling freshly "energised" by your drink.
<<else>>
You tell the maidtress that your drink isn't quite how you ordered it. She looks sad, quickly taking it back as she promises to make you a new one.<br>
<br>
"@@.npc_waitress;I'm sorry, it's just that your friend said... oh, Goddesss, what have I done!@@"<br>
<br>
You hurry to assure the panicking maidtress that you aren't upset, you just were planning on something a bit less... acidic.<br>
<br>
Looking partially relieved she quickly nods "@@.npc_waitress;Of course, let me just make you up something fresh...@@" A couple minutes later and a fresh cup of coffee is once again in your hands, this one tasting of pure roasted goodness and you smile and feel invigorated.
<</if>>
<<case 'cum'>>
<<if $scene.cum>>
You take a long slug and then lick your lips clean of the cummy foam.<br>
<br>
<<printThought "Yum.">><br>
<br>
The Maidtress grins and winks.<br>
<br>
"@@.npc_waitress;Hehe, glad you like it! And don't worry! I locked myself back up right after I finished drawing your drink.@@" She reaches under her skirt to rap on her steel prison.<br>
<br>
You thank her again and wander off to finish your yummy drink as another customer approaches the counter.
<<else>>
You frown and cough politely as you shake your head.<br>
<br>
The Maidtress sighs. "@@.npc_waitress;Damn! Unlocked for nothing! Well, guess I could use the pick-me-up to finish the shift...@@"<br>
<br>
She knocks the coffee back in a single shot and then licks her lips clean of the "foam." <br>
<br>
"@@.npc_waitress;Hmm... see what you mean, guess I need to get more fruit in my diet! I'll be right back with something fresh and unsalted.@@"<br>
<br>
A minute later and you have a regular coffee. This one tasting of pure roasted goodness and you thank her, walking off to enjoy your drink and the wonderful invigoration of caffeine.
<</if>>
<<default>>
ERROR: unexpected scene.event <<=$scene.event>>
<</switch>>
<br><br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: goto store first day as secretary to buy underwear
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'humiliation' 6 'normal' $SEEN_STRANGER>>
<</if>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set _tmpImage = "./images/locations/mall_outside.png">>
<<set _open = true>>
<<else>>
<<set _tmpImage = "./images/locations/mall_outside_night.png">>
<<set _open = false>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _tmpImage>>
<div id="invframe" class="scrolltext">
<<if getUTCHours($now)<6>>
You look around, but it seems that it's way too early for anyone to be around.<br>
<br>
[<<moveTo "room_citymap" "Back to city centre." 300>>]
<<else>>
You think you finally found a solution that will not send you into hot water. Well, at least not too much. You have no idea how well your new Boss <<=setup.getNpcName('npc_manager', 'formal')>> will react to arriving late for work, and on the very first day of your new job! But the thought of going into work commando was simply too much so you decided to bet everything on a single roll of the dice and wait until the mall opened so you could finally buy some underwear before heading to work. You bet everything on this plan, but now, as you read the sign on the door of <<printShopName 'mall_apparel_store'>> you swiftly realise that you have already lost.<br>
<br>
<<printThought "Oh, you have got to be kidding me!">><br>
<br>
The sign reads: "We are terribly sorry, but inventory has taken longer then expected. The <<printShopName 'mall_apparel_store'>> will be open after midday today. Thank you for your understanding. Please come back later today!" Your heart sinks. This is it. You have lost. Not only will you be late for work, but you're stuck going to work commando.<br>
<br>
<<printThought "No! I am not giving up this time! There has to be a solution! If they're taking inventory then someone has to be around here to help me out.">><br>
<br>
And as if Fortunas heart-warming smile graces you at that precise moment, a frustrated looking female shopkeeper comes out of the shop for a smoke break. She greets you with a "@@.generic_female1;How may I help you, <<if setup.analyzeWornTags(['unisex','male','female'])=="female">>ma'am<<else>>sir<</if>>,@@" though it is pretty apparent that she does not want to talk to you during her 5 minutes regulated union break. You start to plead, that all you need is some underwear, which gets you a confused look.<br>
<br>
Blowing out a sighing puff of smoke, she explains to you that they are doing an inventory making now is pretty much the worst time to ask for anything. Desperate, you take out a few credsticks, underlining your argument, that you're willing to pay more then the usual price in an attempt to bribe her, which actually seems to work.<br>
<br>
"@@.generic_female1;Look, I can't give you anything from the official inventory, since it is all accounted for and the cashier system is disabled. But we found some unindexed boxes back in the warehouse and have no idea where they came from or who ordered them. I can get you a box labeled "underwear" for... 40 creds, okay? No one will miss these, and you get what you wanted. But for all that's holy, do not start to change here, please... <<if setup.analyzeWornTags(['unisex','male','female'])=="female">>ma'am<<else>>sir<</if>>.@@"<br>
<br>
<<printThought "I'd best make my choice now if I want to make it to work on time">><br>
<br>
[<<moveTo "event_general_storevisit_1_2" "Accept her offer." 120>>]<br>
[<<moveTo "room_citymap" "Decline her offer and leave." 120>>]
<</if>>
</div>/*#
#desc: accept offer of underwear from store clerk first day as secretary
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -40>>
<<addItemSet "fishnet_lingerie">>
<</if>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set _tmpImage = "./images/locations/mall_outside.png">>
<<set _open = true>>
<<else>>
<<set _tmpImage = "./images/locations/mall_outside_night.png">>
<<set _open = false>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _tmpImage>>
<div id="invframe" class="scrolltext">
Handing over the credits, you try to calm down as she places her smouldering cigarette down and heads back into the store.<br>
<br>
Reappearing a couple minutes later, she hands you the box. "@@.generic_female1;Here you go, one box of write-off underwear, enjoy!@@"<br>
<br>
Taking a final drag of her cigarette, she stomps it out and turns to head back in just as you open the box to find a black wad of fabric.
<<if setup.analyzeWornTags(['unisex','male','unisex'])=="female">>
<br><br>
<<printThought "I guess this makes sense, given how I'm dressed... though wow, they're skimpy! But it isn't like anyone is going to see them at work, right">>
<<elseif $player.sec_style.clothing.underwear == "enthusiast">>
<<printThought "Woah, these are feminine... and skimpy... but it's not like anyone is going to see them at work, right?">>
<<else>>
Thinking there has been some mistake, you pull things apart to find what appears to be a 4-piece set of black lace garters, thong, bra and fishnets...<br>
<br>
<<printThought "What, no, this can't be right, they're so skimpy, and feminine!">>
<</if>>
<br><br>
You try to catch her attention, but she just looks back with a smirk. "@@.generic_female1;Sorry, no returns and my break's over anyway. Now get out of here and do NOT change into these in public!@@"<br>
<br>
You continue to object, but it falls on deaf ears as the door locks and you are left holding your box of bold, sexy lingerie...<br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
<<printThought "Did male underwear just stop existing? It's like I'm stuck with bad, worse... or commando.">>
<<elseif $player.sec_style.clothing.underwear == "enthusiast">>
<<printThought "Well, I guess everything's just coming up femme for me now.">>
<<else>>
<<printThought "Shit, could that have gone any worse? And now I'm out of options, it's either wear these or go to work commando...">>
<</if>>
<br><br>
[<<moveTo "event_general_storevisit_1_3" "Find some place private to put them on." 300>>]<br>
[<<moveTo "company_lobby" "Just go to work commando." 300 "<<if $player.sec_style.clothing.underwear == ''>><<set $player.sec_style.clothing.underwear = ''>><</if>><<set $player.flags.commando=true>>">>]
</div>/*#
#desc: put on underwear from store clerk first day as secretary
#status: RELEASED 0.5.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<if setup.checkItemTypeWorn("panties")>>
<<set _panties = setup.getItemFromType("panties")>>
<<removeItem _panties true>>
<</if>>
<<if setup.checkItemTypeWorn("stockings")>>
<<set _stockings = setup.getItemFromType("stockings")>>
<<removeItem _stockings true>>
<</if>>
<<if setup.checkItemTypeWorn("bra")>>
<<set _bra = setup.getItemFromType("bra")>>
<<removeItem _bra true>>
<</if>>
<</if>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $player.flags.commando = false>>
<<if $player.sec_style.clothing.underwear == "">>
<<set $player.sec_style.clothing.underwear = "money">> /% note: this can be set to forced if you end up not wearing what you get at the mall %/
<</if>>
<<if $player.sec_style.clothing.underwear == "money">>
<<setThreshold 'feminization' 'money' 'mall_panties'>>
<<else>>
<<wearItem "lace_bra_black" true>>
<</if>>
<<applyExperience 'feminization' 5 'normal' $ALONE>>
<<wearItem "fishnet_stockings_black" true>>
<<wearItem "lace_garter_black" true>>
<<wearItem "lace_thong_black" true>>
<</if>>
<<set $player.location to "Mall Male Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
Fortuitously there is a nearby public restroom open and you duck inside a stall and start taking off your clothes.<br>
<br>
You take a moment to examine your new
<<if $player.sec_style.clothing.underwear == "enthusiast">>
purchase. Sure you agreed to wear women's panties but these... these are another level beyond compared to what you've worn before, skimpy and sexy and sending a shiver through your body just imagining how they'd feel...<br>
<br>
<<printThought "Well... only one way to find out!">><br>
<br>
Your heart races as you pull on your new purchase, struggling a bit to figure out the garters so that the fishnets will stay up before finally looking at your reflection.<br>
<br>
<<printThought "Wow... these are... wow.">><br>
<br>
You're somewhat entranced by your reflection, you've never worn something so sexy... and if you turn just right it almost looks like you have something in your bra, and that gives you all sorts of weird tingly feelings.<br>
<br>
<<printThought "Good thing nobody's going to see this under my work clothes!">><br>
<br>
You spend a little more time admiring your reflection before remembering that you really do need to be getting to work...<br>
<br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if !setup.checkItemTypeWorn("panties")>>
<<printThought "All this work and not wearing underwear? Hmm...">><br>
<br>
<</if>>
[<<moveTo "company_lobby" "Head to work." 300 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<printThought "I can't go out like this, I need to be dressed!">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "company_lobby" "Put the rest of your clothes back on and head to work." 300 "<<set _bra = setup.getItemFromType('bra')>><<set _panties = setup.getItemFromType('panties')>><<set _garter = setup.getItemFromType('garter')>><<set _stockings = setup.getItemFromType('stockings')>><<useClothSetPop 'tmp'>><<set $player.cutscene.lockinventory=true>><<if _bra>><<wearItem _bra true>><</if>><<if _panties>><<wearItem _panties true>><</if>><<if _garter>><<wearItem _garter true>><</if>><<if _stockings>><<wearItem _stockings true>><</if>>">>]
<</if>>
<</if>>
<<elseif $player.sec_style.clothing.underwear == "strict">>
purchase before just sighing and slipping them on.<br>
<br>
<<printThought "I guess I'm required to wear feminine underthings like this now but... ugh, is the entire world conspiring against me?">><br>
<br>
On a roll, you put on everything, even the bra and garters. Holding nothing the bra is weird, but not uncomfortable, the thong, on the other hand... cramming your <<getWordMyPenis>> in place behind the skimpy scrap of fabric is one thing, but you haven't even finished pulling your pants back up when it starts creeping into your crack.<br>
<br>
Ignoring the wedgie situation, you are surprised at how comfortable everything is, the mix of lace and fishnet feeling quite nice against your skin. Different from your usual fare, you are reminded of the feminine presence with nearly your every movement. Whatever other feelings you are harboring your <<getWordMyPenis>> seems to enjoy its soft new home, especially compared to rubbing against the rough insides of your pants. For some reason you decide to shove the bra into your pocket as you get ready to leave the mall bathroom.<br>
<br>
<<printThought "It's just for today. I can swing by after work and buy some proper boxers and socks once that dumb inventory is finished.">><br>
<br>
Mustering your courage, you head out of the bathroom. While there's nobody around, and all of your "new" clothes are hidden anyway, you still can't help, but feel embarrassed and watched as you head for the office.<br>
<br>
<<if setup.checkItemWorn('tie') && setup.checkItemWorn('shirt') && setup.checkItemWorn('b_trousers') && setup.checkItemWorn('shoes_black')>>
<<if !setup.checkItemTypeWorn("panties")>>
<<printThought "All this work and not wearing underwear? Hmm...">><br>
<br>
<</if>>
[<<moveTo "company_lobby" "Head to work." 300 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<printThought "Going to work like this? No... I at least need shoes, pants, and a shirt and tie!">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "company_lobby" "Put the rest of your clothes back on and head to work." 300 "<<set _bra = setup.getItemFromType('bra')>><<set _panties = setup.getItemFromType('panties')>><<set _garter = setup.getItemFromType('garter')>><<set _stockings = setup.getItemFromType('stockings')>><<useClothSetPop 'tmp'>><<set $player.cutscene.lockinventory=true>><<if _bra>><<wearItem _bra true>><</if>><<if _panties>><<wearItem _panties true>><</if>><<if _garter>><<wearItem _garter true>><</if>><<if _stockings>><<wearItem _stockings true>><</if>>">>]
<</if>>
<</if>>
<<else>>
purchase before just sighing and slipping them on. You skip the bra, of course, but for some reason opt to wear all three of the other items when you discover that the fishnets just don't stay up properly without the garters.<br>
<br>
<<printThought "Maybe that's why they were getting rid of them? Wearing these feels weird though... not bad?">><br>
<br>
The thong on the other hand... cramming your <<getWordMyPenis>> in place behind the skimpy scrap of fabric is one thing, but you haven't even finished pulling your pants back up when it starts creeping into your crack.<br>
<br>
Ignoring the wedgie situation, you are surprised at how comfortable everything is, the mix of lace and fishnet feeling quite nice against your skin. Different from your usual fare, you are reminded of the feminine presence with nearly your every movement. Whatever other feelings you are harboring your <<getWordMyPenis>> seems to enjoy its soft new home, especially compared to rubbing against the rough insides of your pants. For some reason you decide to shove the bra into your pocket as you get ready to leave the mall bathroom.<br>
<br>
<<printThought "It's just for today. I can swing by after work and buy some proper boxers and socks once that dumb inventory is finished.">><br>
<br>
Mustering your courage, you head out of the bathroom. While there's nobody around, and all of your "new" clothes are hidden anyway, you still can't help, but feel embarrassed and watched as you head for the office.<br>
<br>
<<if setup.checkItemWorn('tie') && setup.checkItemWorn('shirt') && setup.checkItemWorn('b_trousers') && setup.checkItemWorn('shoes_black')>>
<<if !setup.checkItemTypeWorn("panties")>>
<<printThought "All this work and not wearing underwear? Hmm...">><br>
<br>
<</if>>
[<<moveTo "company_lobby" "Head to work." 300 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<printThought "Going to work like this? No... I at least need shoes, pants, and a shirt and tie!">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "company_lobby" "Put the rest of your clothes back on and head to work." 300 "<<set _bra = setup.getItemFromType('bra')>><<set _panties = setup.getItemFromType('panties')>><<set _garter = setup.getItemFromType('garter')>><<set _stockings = setup.getItemFromType('stockings')>><<useClothSetPop 'tmp'>><<set $player.cutscene.lockinventory=true>><<if _bra>><<wearItem _bra true>><</if>><<if _panties>><<wearItem _panties true>><</if>><<if _garter>><<wearItem _garter true>><</if>><<if _stockings>><<wearItem _stockings true>><</if>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: lingerie shop
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ($player.llocation == "room_mall_lingerie_shop_changing_booth") && !$npc_shopkeeper.profile && setup.wearItemFromShop('mall_lingerie_shop') && (!['','striped_bra_blue'].includes(setup.getItemFromType('bra')) || !['','striped_panties_blue'].includes(setup.getItemFromType('panties')) || !['','striped_stockings_blue'].includes(setup.getItemFromType('stockings')))>>
<<addEvent 'lingerie_reup'>>
<<initRoom>>
<<moveTo "event_shopkeeper_01_1">>
<<elseif setup.computeWorstGender() == "female" && setup.checkItemTypeTag('plug', ['vibrating']) && State.hasPlayed("event_take_anal_plug_box") && !State.hasPlayed("event_shop_encourage_1") && (State.hasPlayed("event_fetstore_chastity_finish_bonus_1") || $npc_sexstore_clerk.flags.workStage >= 6 || State.hasPlayed("event_secretary_style_latex_enthusiast_5"))>>
<<initRoom>>
<<moveTo "event_shop_encourage_1">>
<<else>>
<<set $scene.bespokeAvailable = true>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && $player.flags.uniform_upgrade.aslutStage < 4>>
<<for _i range $npc_shopkeeper.bespokeItems>>
<<set _box = _i + "_box">>
<<if !setup.checkItemOwned(_i) && !setup.checkItemOwned(_box)>>
<<continue>>
<<elseif !$npc_manager.flags.uniform_upgrade.item_comments[_i]>>
<<set $scene.bespokeAvailable = false>>
<<break>>
<</if>>
<</for>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png">>
<div id="invframe" class="scrolltext">
<<if !$npc_shopkeeper.profile>>
<<if setup.getTotalValue('feminization')<5>>
You enter <<printShopName 'mall_lingerie_shop' true>>. Theres no denying it, all articles of clothing here are made for women, and you're not. This makes you kind of uncomfortable. The salesladies seem to notice and ask you, if you're in need some help and what the measurements of your girlfriend are, or if you're shopping for yourself.
<<else>>
You enter <<printShopName 'mall_lingerie_shop' true>>. Theres no denying it, all articles of clothing here are looking really good. Maybe you should try on a few of them, for scientific purposes of course. The salesladies seem to notice and ask you, if you're in need some help and what the measurements of your girlfriend are, or if you're shopping for yourself.
<</if>>
<<else>>
You enter <<printShopName 'mall_lingerie_shop'>>, <<=ps(setup.getNpcName('npc_shopkeeper', 'first'))>> lingerie shop. You're surrounded by cute and sexy articles of clothing for feminine beings to wear underneath their regular clothing, or on their own for other more daring occasions. You're interested in the articles they're offering here, but your curiosity goes not unnoticed. You blush as a saleslady asks you if you'd like to try a certain piece on.
<</if>>
<<if setup.getTotalValue('feminization')<3>>
There are some changing booths spread through the store, but you see no reason to enter them.
<<elseif !$npc_shopkeeper.profile && (setup.getTotalValue('feminization')<5)>>
There are some <<moveTo "room_mall_lingerie_shop_changing_booth" "changing booths" 30>> spread through the store. Some of them are in the back of the store, so you could sneak into them when nobody is looking to try something on.
<<else>>
There are some <<moveTo "room_mall_lingerie_shop_changing_booth" "changing booths" 30>> spread through the store.
<</if>>
<br><br>
<<if setup.checkItemInInventory('analplug_small_box')>>
[<<moveTo "event_shopkeeper_02_1" "Approach the shopkeeper about what you found in the changing room." 30>>]<br>
<br>
<</if>>
<<printShop 'room_mall_lingerie_shop' 'mall_lingerie_shop' $shopStatus>><br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade')>>
<<if !$currentTasks['task_uniform_upgrade'].finished>>
<<if (setup.checkItemOwned("hoop_earrings_gold") || setup.checkItemOwned("thigh_highs_pink") || setup.checkItemOwned("satin_corset_pink"))>>
You consider the bespoke offerings, but decide you should wait to see how <<=setup.getNpcName('npc_manager', 'formal')>> reacts to what you have already purchased.
<<else>>
You look around the "normal" section of the lingerie shop, but nothing catches your eye. You just know that <<=setup.getNpcName('npc_manager', 'formal')>> is expecting something more
<<if setup.getTotalValue("humiliation") >= 10>>
publicly visible
<<else>>
embarrassing
<</if>> and extreme.
<<if setup.getTotalValue("feminization") >= 15>>
Your heart racing in excited anticipation you
<<else>>
You are slightly scared, but you see no other choice, but to
<</if>>
check out the fetish section.<br>
<</if>>
<<elseif $scene.bespokeAvailable>>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Ask about bespoke items." 30>>]
<<elseif !(setup.checkItemOwned("hoop_earrings_gold") || setup.checkItemOwned("thigh_highs_pink") || setup.checkItemOwned("satin_corset_pink"))>>
<<printThought 'Hmm, probably best to see what <<=setup.getNpcName("npc_manager", "formal")>> thinks of my last purchase before buying another pricey bespoke item.'>>
<<else>>
<<printThought 'I guess I cleared them out of bespoke items.'>>
<</if>>
<br><br>
<<else>>
<<include thoughts_current>>
<br>
<</if>>
<<if State.hasPlayed("event_feminization_bride_2")>>
<<if $player.sec_style.clothing.bride>>
[@@.link_locked;No sense bothering <<=setup.getNpcName('npc_shopkeeper', 'first')>> when you can just buy another wedding gown normally.@@]<br>
<<else>>
[<<moveTo "event_feminization_bride_2" "Ask to check out the bridal section again." 30 "<<set $scene.enthusiast=false>>">>]<br>
<</if>>
<<elseif ($npc_technician.relationship.relationship_stage >= 2 || $npc_admin.flags.relationship == "boyfriend" || $npc_landlord.stage >= 6) && !State.hasPlayed("event_feminization_bride_enthusiast")>>
As you look around you find yourself thinking about your relationships... and fantasising about the sound of wedding bells.<br>
<br>
[<<moveTo "event_feminization_bride_enthusiast" "Ask if the store sells wedding gowns?" 30>>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task') && !setup.checkItemOwned("manager_skirt_copy") && !setup.checkItemOwned("manager_shirt_copy") && !State.hasPlayed("event_ask_manager_dress_1")>>
[<<moveTo "event_ask_manager_dress_1" 'Ask about a dress similar to the one <<=setup.getNpcName("npc_manager", "formal")>> wears.' 120>>]<br>
<</if>>
<<if setup.getTotalValue('feminization')>5>>
[<<moveTo "room_mall_lingerie_shop_fetish" "Enter the Fetish Section." 30>>]<br>
<<else>>
[@@.link_locked;You see no reason to enter the fetish section.@@]<br>
<</if>>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]<br>
</div>/*#
#desc: lingerie shop fetish section
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ($player.llocation == "room_mall_lingerie_shop_changing_booth") && !$npc_shopkeeper.profile && setup.wearItemFromShop('mall_lingerie_shop') && (!['','striped_bra_blue'].includes(setup.getItemFromType('bra')) || !['','striped_panties_blue'].includes(setup.getItemFromType('panties')) || !['','striped_stockings_blue'].includes(setup.getItemFromType('stockings')))>>
<<moveTo "event_shopkeeper_01_1">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png">>
<div id="invframe" class="scrolltext">
You enter the fetish section of Tease me, Please me. Here is where all the fetish stuff is collected that other kinky stuff would call kinky stuff.
<<if !$npc_shopkeeper.profile && setup.getTotalValue('feminization') < 5>>
There are some <<moveTo "room_mall_lingerie_shop_changing_booth" "changing booths" 30>> spread through the store. Some of them are in the back of the store, so you could sneak into them when nobody is looking to try some of the articles on.
<<else>>
There are some <<moveTo "room_mall_lingerie_shop_changing_booth" "changing booths" 30>> spread through the store.
<</if>>
<br>
<<printShop 'room_mall_lingerie_shop_fetish' 'mall_lingerie_shop_fetish' $shopStatus>><br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<if setup.checkItemOwned('thigh_highs_pink') || setup.checkItemOwned('hoop_earrings_gold') || setup.checkItemOwned('satin_corset_pink') || setup.checkItemOwned('thigh_highs_pink_box') || setup.checkItemOwned('hoop_earrings_gold_box') || setup.checkItemOwned('satin_corset_pink_box')>>
<<=setup.getNpcName('npc_shopkeeper', 'first')>> looks busy with another customer... but you should probably wait until <<=setup.getNpcName('npc_manager', 'formal')>> has approved your latest purchase before buying another such item, anyway.<br>
<br>
<<else>>
You haven't been in the fetish section for more than a minute when, as if by shopkeeper magic <<=setup.getNpcName('npc_shopkeeper', 'first')>> appears.<br>
<br>
"@@.npc_shopkeeper;Hello, looking for a little something, something to take things to another level?@@"<br>
<br>
<<printThought "Woah, where did she come from? And that comment is kind of eerily prescient...">><br>
<br>
A little surprised you nod.<br>
<br>
<<if setup.getTotalValue("feminization") < 10>>
[<<moveTo "room_mall_lingerie_shop_outfit_upgrade_shy" "Blurt out that you're looking for something for a friend." 60>>]<br>
<</if>>
[<<moveTo "room_mall_lingerie_shop_outfit_upgrade" "Tell her you are looking for something to really improve your outfit." 120>>]<br>
<</if>>
<<elseif $currentTasks.hasOwnProperty('bed_heels_photo') && !setup.checkItemOwned('bed_heels_pink')>>
Thinking about your latest manager-assigned task and how <<=setup.getNpcName('npc_shopkeeper', 'first')>> helped you previously you consider asking her if she can get you some so-called "bed heels." <br>
<br>
[<<moveTo "room_mall_lingerie_shop_bed_heels" "Ask if they sell bed heels." 30>>]<br>
<<else>>
<<include thoughts_current>>
<</if>>
[<<moveTo "room_mall_lingerie_shop" "Return to the entrance." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: lingerie shop changing booth
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.noitems = false>>
<<include checkPossibleVoluntary>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.voluntaryFollowupScene = "room_mall_lingerie_shop">>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set _tmpVal = setup.checkOutsideDecency()>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
You stand in the changing booth of <<printShopName 'mall_lingerie_shop' false>>.<br>
<br>
<<include glanceVoluntary>>
<<include thoughts_current>>
<<if $player.flags.firstWorkDay && !setup.checkItemOwned('analplug_small_box') && !setup.checkItemOwned('analplug_beginner')>>
[<<moveTo "event_take_anal_plug_box" 'You see something sitting on the bench, set out almost like a gift...' 30>>]<br><br>
<</if>>
<<if _tmpVal>>
[<<moveTo "room_mall_lingerie_shop" 'Return to <<printShopName "mall_lingerie_shop" false>>.' 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<<elseif setup.checkOutsideDecencyReason() == "makeup_none">>
<<printThought "I really shouldn't be out in public without makeup, but I can't really fix that now...">><br>
<br>
[<<moveTo "room_mall_lingerie_shop" "Return to <<printShopName 'mall_lingerie_shop' false>>." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<<elseif setup.checkOutsideDecencyReason() == "makeup_messy">>
<<printThought "My makeup is a wreck! I need to find a bathroom to fix this stat!">><br>
<br>
[<<moveTo "room_mall_lingerie_shop" "Return to <<printShopName 'mall_lingerie_shop' false>>." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<<elseif $npc_manager.stage == 1 && $player.sec_style.clothing.female != "enthusiast" && setup.checkOutsideDecencyReason() == "female" && $npc_manager.stagevalues[1].unisexsecretary>>
<<printThought "My work uniform may be unisex attire but this? This is a bit more than I'm quite ready to wear out...">><br>
<br>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<<else>>
[@@.link_locked;You're not going to leave the changing booth dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $player.makeup.template != "" && "too_fem" == setup.checkOutsideMakeupReason()>>
[<<moveTo "room_mall_apparel_store_changing_booths" "Maybe if I removed this makeup?" 120 "<<set $player.makeup.template = ''>>">>]<br>
<<elseif setup.checkOutsideDecencyReason() == "chastity" && setup.calcErection()>>
[<<moveTo "event_changing_room_jerk_1" "Jerk off so you can put your chastity device back on." 180 '<<set $scene.background="./images/locations/mall_fashion_store_fitting_room.png">><<set $scene.returnLoc="room_mall_lingerie_shop_changing_booth">>'>>]<br>
<</if>>
<</if>>
<<include triggerVoluntary>>
</div>/*#
#desc: take anal plug box
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include checkPossibleVoluntary>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'analplug_small_box'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
You pick up the box that looked set out for you, somewhat surprised to turn it over and read the label to discover that it contains... an anal plug? And the words "free gift!"
<<if setup.getTotalValue("anal") > 0>>
You quickly pocket the box, feeling a slight thrill as you
<<if setup.checkItemTypeOwned('plug')>>
"expand" your collection.
<<else>>
do.
<</if>>
<<else>>
Perhaps even more surprising is that you find yourself pocketing the box before continuing on with what you were doing.
<</if>>
<br><br>
You feel a <<if setup.getTotalValue("anal") > 0>>slight<<else>>bizarre<</if>> urge to try your new find on, <<printThought "or is that in?">> After all, it is a private changing booth...<br>
<br>
[<<moveTo "room_mall_lingerie_shop_changing_booth" "Now what were you doing in this changing booth, again?" 30>>]<br>
</div>/*#
#desc: shopkeeper "ambushes" you coming out of changing room
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<storeVisual $player $npc_shopkeeper>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<gainWillpower 1>>
<<set $npc_shopkeeper.profile = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
You prepare to exit the changing booth after changing some of your underwear. You don't want to be seen by anyone so you take a small peek out of the door. Looks like the coast is clear so you make your move.<br>
<br>
As you exit the changing booth, you almost run into a tall black woman. Even without her impossibly high stilettos, she would be a lot taller than you, but on those high heels she towers over you like a sexy black mountain.<br>
<br>
"@@.npc_shopkeeper;Well, well, well, Darling!@@" her voice is a lot louder than most people you're used to talking to, with the possible exception of when <<=setup.getNpcName('npc_manager', 'formal')>> switches into full-bore dominant mode, "@@.npc_shopkeeper;Look what the cat dragged in. Well, honey, what are you supposed to be? Walking around here, all small and stealthy. Like a little mouse. My girls over there,@@" she points into the direction of the sales personnel, "@@.npc_shopkeeper;Well, my girls over there, they told me all about you
<<if $player.sec_style.clothing.underwear == "money" || setup.getItemsByFilter("specific", "panties").length > 4>>
buying
<<else>>
looking at
<</if>>
some of my wonderful lingerie. My store, that is. My actual lingerie well... I don't think it'd fit you, and it isn't available, anyway; at least not to the public.@@"<br>
<br>
No matter how small you try to become, somehow you're still the centre of attention in the store. All eyes are focused upon you and the black lady. Your face turns red with shame and you ponder your options. Run away? But you've done nothing wrong, well, legally wrong. How do you always get stuck in situations like this?<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
"@@.npc_shopkeeper;Ah, look at you! Buying your first bit of lingerie! Oh, I am so proud of you, girl why, to think of the first time I saw you... you probably didn't even notice me, but I pay attention to ALL my customers, I could tell something was up, even back then... well, let me just congratulate you on the courage to blossom into this wonderful woman, and to encourage you to keep shopping for more fun things! And I don't just say that because I own the place!@@"
<<if setup.getTotalValue("feminization") < 10>>
<br><br>
You blush at the compliment as she laughs at her own joke in that inviting way only certain people can ever pull off properly.
<</if>>
<<case 'unisex'>>
"@@.npc_shopkeeper;So, finally making a purchase of a little something, something? Ah, how wonderful, I just know you will love it, and look amazing in it! Perhaps a sign of things to come?@@" She smiles as you blush. "@@.npc_shopkeeper;Oh, don't be embarrassed! You are simply lovely, but I remember seeing you once before and, well... you've come a long way, girlfriend, but I expect your journey has many twists and turns remaining! Well, wherever you end up, you can rest assured that the things you buy in my store will never let you down! Quality, comfortable things for all who enjoy a bit of femininity underneath, that's why I opened this shop and that's the only products I stock!@@"
<<case 'male'>>
"@@.npc_shopkeeper;Now see,@@" she turns back to you, "@@.npc_shopkeeper;I've told my girls that, if you really bought these for your "girlfriend"@@" and puts the word "girlfriend" under air quotes. "@@.npc_shopkeeper;Why do you lurk around in the back of the store hmm? Maybe a stalker? Maybe some pervert? And I said girls, I said girls NO! That man is no stalker. That man is no pervert... at least no more perverted than the average customer.@@"<br>
<br>
You still have no idea what is going on and you continue to focus on checking if you might have suddenly developed powers of invisibility.<br>
<br>
"@@.npc_shopkeeper;Now look here, honey. I've seen you buying some of my merchandise. Then you leave for the changing booth and when you come back the merch is suddenly gone? And you try to sneak out, prowling like a common thief, just because you think someone can see you? Come on! Everyone can see you. There's no shame in that. Be proud. Fritz over there,@@" she points into the direction of a beautiful woman on the other side of the store, "@@.npc_shopkeeper;Who goes now with the fancy name of Francine has been a regular of mine for years.@@"<br>
<br>
You hear a slight "@@.generic_female1;Sup@@" from the other side of the store, you suppose it's from Fritz or Francine. As you look around, you realise that, after the initial outburst, no one is really paying attention to you anymore, everyone returning to their routines.
<<default>>
Error: unexpected worn tags, expecting male, female or unisex
<</switch>>
<br><br>
"@@.npc_shopkeeper;The name is <<=setup.getNpcName('npc_shopkeeper', 'first')>>, honey. <<=setup.getNpcName('npc_shopkeeper', 'full')>>. And as long as you're paying, you're welcome to check out whatever you like. And if somebody gives you a hard time over this, well, I may be a lady, but when I'm mad, I'm an evil demon bitch from hell that'll make someone wish they'd never been born!@@"<br>
<br>
She gives you a soft pat on the back. Well, sort of; it's neither soft nor on your back, precisely. Other games might call this her special move and you need a few seconds to catch your breath. She holds her hand out for you as she continues.
<<if setup.getTotalValue("feminization") < 10>>
"@@.npc_shopkeeper;Now that we're all friends, how about in the future you enter my humble abode as a valued customer, and not like some skulking suspect.@@"<br>
<br>
Even though she is very loud and commanding, <<=setup.getNpcName('npc_shopkeeper', 'first')>> seems to mean well. You shake her hand in agreement. She moves her head closer to you and starts to whisper, "@@.npc_shopkeeper;Unless you're some kind of ninja. Then that's totally okay...@@"<br>
<br>
What she said makes sense. Even though circumstances forced you into this strange behaviour, you still came here by your own free will and bought some of her merchandise with your own money. Her encouragement strengthens your will to move on!
<<else>>
"@@.npc_shopkeeper;I can't believe it took this long to run into each other like this, but let me confirm that you are a valued customer and always welcome in any of my stores!@@"<br>
<br>
You smile back, even for how far you've come it is still great to receive encouragement as your journey continues.
<</if>>
<br><br>
[<<moveTo "room_mall_lingerie_shop" "Continue." 30>>]
</div>/*#
#desc: talk to shopkeeper about finding butt plug in changing room
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "analplug_beginner">>
<<deleteItem 'analplug_small_box'>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_shopkeeper', 'first')>> about the box you've found in the changing booth, and how another customer might have forgotten it.<br>
<br>
<<if $player.locations.sexstore>>
<<if $npc_sexstore_clerk.profile>>
"@@.npc_shopkeeper;Oh you are just too sweet! That wonderful toy is part of a promotional push to make our customers aware of that other shop of mine that recently opened — <<printShopName 'mall_sexstore'>>. Obviously you are already QUITE aware of its existence, but you may still feel free to enjoy that little gift with my compliments!@@"
<<else>>
"@@.npc_shopkeeper;Hardly, those are a little gift for mah customers to help advertise my newly opened venture — <<printShopName 'mall_sexstore'>>. It is just on the other side of the food court, you really should stop in and until then, well... enjoy that free gift!@@"
<</if>>
<<else>>
"@@.npc_shopkeeper;You sure are an honest soul, honey. Nah, these are my little gifts to my customers. We're branching out soon, since I've managed to get a hold of another store location here in the mall, so we're opening up a little, frisky sextoy shop with all the little toys and trinkets a fun-loving adult could desire. Maybe even some custom made BDSM gear, who knows. So I've been putting these and other small thank yous into the changing booth all day long. Seems to be a hit! Some of the ladies came out purring I tell you.@@"
<</if>>
<br><br>
She opens the box and puts the plug into your palm, closing your hand around the cool metal as she continues talking to you. "@@.npc_shopkeeper;So put this little gift of mine over your fireplace or where the sun does not shine, or inside that special someone. So long as you enjoy it, it's fine by me!@@" She throws her head back in a boisterous laugh, smiling wide.<br>
<br>
[<<moveTo "room_mall_lingerie_shop" "Continue." 30>>]
</div>/*#
#desc: shoestore_assistant making a delivery to lingerie shop
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shoestore_assistant")>>
<div id="invframe" class="scrolltext">
You're just browsing a bit when you hear a touch of commotion over by the door.<br>
<br>
Looking over you gawk as a giantess of a woman strolls through the door carrying what looks like a fully loaded pallet.<br>
<br>
<<if $npc_shoestore_assistant.profile>>
It'd be hard not to recognise <<=setup.getNpcName('npc_shoestore_assistant', 'first')>> and the giant cyborg flashes you a smile without breaking stride on her way to deposit her load next to the counter.
<<else>>
Even her obvious cybernetic enhancements aren't enough to keep you from gawking at how easily she walks across the store and places the large load next to the counter.
<</if>>
<br><br>
She confirms the delivery with the shopowner while one of the other staff appears with a pallet jack to move the boxes into the back room.<br>
<br>
"@@.npc_shoestore_assistant;Sure you don't need a hand with that, sugar?@@"<br>
<br>
"@@.npc_shopkeeper;She's quite fine, don't want you banging your head on the low ceilings in the back room again, <<=setup.getNpcName('npc_shoestore_assistant', 'first')>>!@@"<br>
<br>
The two women chuckle before <<=setup.getNpcName('npc_shoestore_assistant', 'first')>> nods.<br>
<br>
<<if $player.locations.sexstore>>
"@@.npc_shoestore_assistant;We'll have the next shipment of boots in a week or so, how's the new space coming?@@"
<<else>>
"@@.npc_shoestore_assistant;We'll have the next shipment of boots in a week or so, I'll get the other delivery over to <<printShopName 'mall_sexstore'>> later this afternoon.@@"
<</if>>
<br><br>
Shaking hands the women part ways and you return to your browsing.<br>
<br>
[<<moveTo "room_mall_lingerie_shop" "Continue." 180>>]
</div>/*#
#desc: shopkeeper rewards you with discount card
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = false>>
<<storeVisual $player $npc_shopkeeper>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_lingerie_shop'].discount = 10>>
<<set $shopStatus['mall_lingerie_shop_fetish'].discount = 10>>
<<set $shopStatus['mall_sexstore'].discount = 10>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
You walk into <<printShopName 'mall_lingerie_shop'>> once again and are all but bowled over by <<=setup.getNpcName('npc_shopkeeper', 'formal')>> rushing over.<br>
<br>
"@@.npc_shopkeeper;<<=$player.first_name>>! Ah, my favourite customer!@@" She swallows you up in a boisterous hug before leaning back and smiling down at you. "@@.npc_shopkeeper;Ah! Truly, you have come into your own in beauty and in confidence! So much more lovely than that... well, we don't need to talk about that past, not when you are surely on the road to an every-lovely future!@@"<br>
<br>
You blush and thank her for the compliment and she smiles wider.<br>
<br>
"@@.npc_shopkeeper;Ah! But today I bring more than compliments! Yes, I was speaking with <<=setup.getNpcName("npc_sexstore_clerk", "formal")>> about your contributions to my other venture, combine that with your lovely new look and your, shall we say, internalisation of something else...@@" she smiles and brandishes a large key-chain with a "universal remote," a quick tap has your plug buzz and you reflexively gasp... and then blush harder. "@@.npc_shopkeeper;As I said, my favourite customer! Anyway, as a note of appreciation for everything you've done, well... I wanted to give you this.@@"<br>
<br>
She hands you a plastic card decorated in a slightly old-fashioned style with "10% off." <br>
<br>
"@@.npc_shopkeeper;So go ahead and keep that with you, or scan it into your phone with the code on the back. It's my new VIP shopper program, works at both of my stores and is an automatic 10% off all purchases.@@"<br>
<br>
She winks. "@@.npc_shopkeeper;You earned it, hun, enjoy!@@" She adds... along with another buzz of the vibrator.<br>
<br>
By the time you've caught your breath she's dashed off to another customer, leaving you with a discount, and tingles of excitement.<br>
<br>
[<<moveTo "room_mall_lingerie_shop" "Look around the shop." 60>>]
</div>/*#
#desc: band starts assembling
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_waitress") "boymode_maid" _TODOdrummer>>
<div id="invframe" class="scrolltext">
You're working you usual shift at when you notice a bit of commotion, your friends <<=setup.getNpcName("npc_maid","first")>>, <<=setup.getNpcName("generic_female1","custom", "Jay")>>, <<=setup.getNpcName("npc_waitress","first")>> and a maid you don't recognise busily unpacking instruments and setting up on a stage. As you pause between customers you see the maid you don't recognise finish setting up the drum-kit, the base drum painted with the band's logo labeling them, apparently as the "Five Skanky Maids." <br>
<br>
<<printThought "Huh, live music, that's cool... wonder who the fifth member is?">> You think to yourself as you get back to work, figuring that the last thing they need is you getting in the way of setup.<br>
<br>
[<<moveTo "event_maidcafe_band_2" "Keep maidtressing." 300>>]
</div>/*#
#desc: asked to help band
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_waitress") "boymode_maid" _TODOdrummer>>
<div id="invframe" class="scrolltext">
You do the usual coffee business as the stage and such takes shape. After things look all ready to go you notice some looks of consternation on your friend's faces, annoyed glances at phones and whispered discussion followed by <<=setup.getNpcName("generic_female1","custom", "Jay")>> dashing up to you.<br>
<br>
The tall maid tries in vain to shrink, remaining a good dozen centimetres taller than you in her steep heels as she nervously asks a question. "@@.generic_female1;Hey, so... I don't suppose you know how to play an instrument? You see we've been working on this band debut for a while, and the solo artist we hired to fill things out just canceled out... given that you're already, like, dressed for the occasion... any chance you could fill in? And don't worry about an instrument, we've got that, we just need someone to, like... play it.@@"<br>
<br>
[<<moveTo "event_maidcafe_band_3" "You used to do a bit of guitar in college..." 180 "<<set $scene.instrument='guitar'>>">>]<br>
[<<moveTo "event_maidcafe_band_3" "You actually play trumpet... maybe that's why you're such a good kisser?" 180 "<<set $scene.instrument='trumpet'>>">>]<br>
[<<moveTo "event_maidcafe_band_3" "You know your way around more than just a computer keyboard!" 180 "<<set $scene.instrument='keyboard'>>">>]<br>
[<<moveTo "event_maidcafe_band_3" "You've been known to strum a bass line on occasion." 180 "<<set $scene.instrument='bass'>>">>]<br>
[<<moveTo "event_maidcafe_band_3" "Sorry... you're not musically inclined." 180 "<<set $scene.instrument='none'>>">>]
</div>/*#
#desc: asked to help band
#status: RELEASED 0.9.4.0
#ignore_spell: pog
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_waitress") "boymode_maid" _TODOdrummer>>
<div id="invframe" class="scrolltext">
<<switch $scene.instrument>>
<<case "guitar">>
You reply that, actually, you used to putter around on guitar back in college... though you haven't kept up much since, what with work and all.
<<case "trumpet">>
You reply that, actually, you used to blow a bit of trumpet back in college... though you haven't kept up much since, what with work and all.
<<case "keyboard">>
You reply that, actually, you used to tickle the old ivories back in college... though you haven't kept up much since, what with work and all.
<<case "bass">>
You reply that, actually, you strummed a bit of bass back in college... though you haven't kept up much since, what with work and all.
<<case "none">>
You apologise and reply that you don't really know how to play anything.<br>
<br>
"@@.generic_female1;Dang, it was a long-shot anyway... guess we'll pretend the band name is intentionally a miss-count and just... fake it.@@"<br>
<br>
[<<moveTo "event_maidcafe_band_skip" "Continue." 1800>>]<br>
<<default>>
ERROR: unexpected scene.instrument <<=$scene.instrument>>
<</switch>>
<<if $scene.instrument != "none">>
<br><br>
Relief blossoms over <<=setup.getNpcName("generic_female1","custom", "Jay")>> face. "@@.generic_female1;That'll be fine, I mean, none of us are professional, professionals... well, other than the drummer, we're just here to have some fun and entertain a few customers.@@"<br>
<br>
Even before you've followed back to the stage she's calling out to <<=setup.getNpcName("npc_maid","first")>>
<<switch $scene.instrument>>
<<case "guitar">>
"@@.generic_female1;I got us a guitarist!@@"
<<case "trumpet">>
"@@.generic_female1;I got us some brass!@@"
<<case "keyboard">>
"@@.generic_female1;I got us a keyboardist!@@"
<<case "bass">>
"@@.generic_female1;I got us a bass line!@@"
<</switch>>
<br><br>
"@@.npc_maid;POG,@@" <<=setup.getNpcName("npc_maid","first")>> replies with visible relief as she
<<switch $scene.instrument>>
<<case "guitar" "trumpet" "bass">>
digs into another instrument case and hands you a <<=$scene.instrument>>
<<case "keyboard">>
gestures to the already setup keyboard.
<</switch>>
<br><br>
You follow along and hop up on stage as <<=setup.getNpcName("npc_waitress","first")>>, instrument in hand, motions everyone into one of the club's back-rooms for some privacy and the five of you have a quick band meeting.<br>
<br>
"@@.npc_maid;First off, thanks for saving the show, we've been kicking this around for a while... and I'd hate to have had to tell that it was a flop from the start after <<he npc_butler>> was so kind to give us a venue. We're a Ska band, if you hadn't figured that out from the name, I'll introduce everyone else in a moment but, just for calibration, and no pressure but... where's your musical ability at?@@"<br>
<br>
[<<moveTo "event_maidcafe_band_4" "Not to brag... but you're kind of a badass." 180 "<<set $scene.skill='high'>>">>]<br>
[<<moveTo "event_maidcafe_band_4" "You can carry a tune, but no solos, please." 180 "<<set $scene.skill='med'>>">>]<br>
[<<moveTo "event_maidcafe_band_4" "Honestly, you're not good for much more than standing around looking pretty." 180 "<<set $scene.skill='low'>>">>]
<</if>>
</div>/*#
#desc: how well can you play
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_waitress") "boymode_maid" _TODOdrummer>>
<div id="invframe" class="scrolltext">
<<switch $scene.skill>>
<<case "high">>
You grab the offered <<=$scene.instrument>> and, after taking a quick moment to limber of your fingers, bang out a few quick bars.<br>
<br>
"@@.npc_waitress;Shit... she's better than I am!@@" <<=setup.getNpcName("npc_waitress","first")>> remarks with an impressed smile.<br>
<br>
"@@.npc_maid;Honestly sounds better than the audition for that jerk who stood us up. Okay, welcome to the band.@@"
<<case "med">>
You reply that you're probably going to be a bit rusty, but you're confident that you can play along and keep up so long as they expect you to carry a solo.<br>
<br>
"@@.npc_waitress;That'll be more than fine. Just help round out the sound and y'know, jam out for the audience. The maid vibe is probably more important than musical abilities... given this crowd.@@" <<=setup.getNpcName("npc_maid","first")>> replies.<br>
<br>
"@@.npc_maid;Quite so, so yeah... welcome to the band!@@"
<<case "low">>
You reply that you were mainly just wanting to help your friends, but that really, you don't know if you're good for all much more than holding an instrument up...<br>
<br>
"@@.npc_waitress;That'll be more than fine.@@" <<=setup.getNpcName("npc_waitress","first")>> comforts. "@@.npc_waitress;With the crowd her I figure the appeal of maids on stage may be more important than our actual sound so just... do what you can and help carry the vibe, right?@@" <<=setup.getNpcName("npc_maid","first")>> replies.<br>
<br>
"@@.npc_maid;Quite so, so yeah... welcome to the band!@@"
<</switch>>
<br><br>
You nod and look around as <<=setup.getNpcName("npc_maid","first")>> starts introductions.
<<switch $scene.instrument>>
<<case "guitar">>
"@@.npc_maid;So yeah, <<=$player.first_name>> will be playing back-up guitar, and I'll be supporting you on bass, <<=setup.getNpcName("generic_female1","custom", "Jay")>>, as you know, is an expert at blow and stroking things... and that extends to the trombone. <<=setup.getNpcName("npc_waitress","first")>> is vocals and lead guitar<<if $scene.skill=='high'>>, you may be a better player, but she knows the set-list<</if>> and <<=setup.getNpcName("generic_female2","custom", "Aldona")>> here will be laying down the beat on drums.@@"
<<case "trumpet">>
"@@.npc_maid;So yeah, <<=$player.first_name>> will be keeping things peppy on the trumpet while I'll be holding down the bass line. <<=setup.getNpcName("generic_female1","custom", "Jay")>>, as you know, is an expert at blow and stroking things... and that extends to the trombone. <<=setup.getNpcName("npc_waitress","first")>> is vocals and lead guitar and <<=setup.getNpcName("generic_female2","custom", "Aldona")>> here will be laying down the beat on drums.@@"
<<case "bass">>
"@@.npc_maid;So yeah, <<=$player.first_name>> will be holding down the bass line while I support on backing guitar. <<=setup.getNpcName("generic_female1","custom", "Jay")>>, as you know, is an expert at blow and stroking things... and that extends to the trombone. <<=setup.getNpcName("npc_waitress","first")>> is vocals and lead guitar and <<=setup.getNpcName("generic_female2","custom", "Aldona")>> here will be laying down the beat on drums.@@"
<<case "keyboard">>
"@@.npc_maid;So yeah, <<=$player.first_name>> will be tickling the ivories while I'll be holding down the bass line. <<=setup.getNpcName("generic_female1","custom", "Jay")>>, as you know, is an expert at blow and stroking things... and that extends to the trombone. <<=setup.getNpcName("npc_waitress","first")>> is vocals and lead guitar and <<=setup.getNpcName("generic_female2","custom", "Aldona")>> here will be laying down the beat on drums.@@"
<</switch>>
<br><br>
Drum-sticks in hand, <<=setup.getNpcName("generic_female2","custom", "Aldona")>> does a little twirl in greeting and you check out the new maid. She's pretty cute, though what maid isn't, average height blending a sort of goth/maid/punk combo with pale skin, large breasts for her otherwise average size, long black hair pulled safely out of the way in a ponytail with a single teardrop earring and cut-off sleeves for her maid's outfit to show off a gorgeous rose tattoo running down her left arm. Topping it all off her sparkling hazel eyes peer out from a cute pair of glasses.<br>
<br>
"@@.npc_maid;Alright,@@" says with a grin "@@.npc_maid;Let's show these people a show. And, again, it's more about the vibe than the exact notes, and this is a pretty friendly crowd so just stay loose, and have fun and if you the mood hits you with the urge to skank, well... it IS in the band name, right?@@"<br>
<br>
A quick exchange of smiles says everyone is ready and <<=setup.getNpcName("npc_maid","first")>> leads the way back out to the stage.<br>
<br>
[<<moveTo "event_maidcafe_band_5" "Time for the show!" 180>>]
</div>/*#
#desc: get ready to play
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_waitress") "boymode_maid" _TODOdrummer>>
<div id="invframe" class="scrolltext">
You head out to the stage and take your positions. <<=setup.getNpcName("npc_waitress","first")>> takes a moment to warm-up the crowd as the rest of you get plugged in and ready. <<=setup.getNpcName("generic_female2","custom", "Aldona")>> surprises you by sitting down and kicking out of her shoes, her bare feet doing a quick, gentle pass over the pedals as she flashes you a wink and a smirk.<br>
<br>
"@@.npc_waitress;And now, for our opening number, not just of the night, but of our official band, put it together for the Five Skanky Maids!@@"<br>
<br>
The crowd, which, you notice includes <<=setup.getNpcName("npc_butler","formal")>> watching from the back... and <<=setup.getNpcName("npc_technician","first")>> having somehow appeared front and centre with the rest of the RPG troupe cheers as whispers some musical directions, <<=setup.getNpcName("generic_female2","custom", "Aldona")>> establishes a beat and <<=setup.getNpcName("npc_maid","first")>> launches into the intro...<br>
<br>
[<<moveTo "event_maidcafe_band_6" "Let's get down!" 1800>>]
</div>/*#
#desc: play music
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_waitress") "boymode_maid" _TODOdrummer>>
<div id="invframe" class="scrolltext">
With a cry of "@@.npc_waitress;FORWARD MAID!@@" <<=setup.getNpcName("npc_waitress","first")>> starts things out old, first wave and classic, the band bopping along to a slightly tweaked version of the Derrick Morgan classic and from there bouncing through history with a string of covers and maid-tweaked tribute-parodies of ska classics from each of its revivals.<br>
<br>
<<switch $scene.skill>>
<<case "high">>
A few songs into things and you've really found your groove, signaling to <<=setup.getNpcName("npc_maid","first")>> that you're ready for a solo where you
<<switch $scene.instrument>>
<<case "guitar" "bass" "keyboard">>
tear the house down...
<<case "trumpet">>
blow the house down...
<</switch>>
and even have <<=setup.getNpcName("npc_technician","first")>> on the floor skanking her heart out<<if $npc_technician.relationship.stage >= 2>>... and very clearly pointing you out to other dancer as "@@.npc_technician;hey, that's my <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>enby<</switch>>friend!@@"<</if>>
<<case "med">>
You focus on just keeping up with the music, jamming along as best you can while leaving the occasional solo to one of the more experienced musicians.
<<case "low">>
You play where you can and make up for it with energy,
<<switch $scene.instrument>>
<<case "keyboard">>
skanking out behind the keyboard
<<case "guitar" "bass">>
skanking as you strum
<<case "trumpet">>
skanking to the music as you toot toot along
<</switch>>
and the rest of the band carries the musical portion.
<</switch>>
<br><br>
The crowd on their feet, the band moves through a set-list that includes a variety of tweaked classics such as Maid Hop, My Maid Lollypop, Tears of a Maid, Friday Night Maid, and finishing off with a monochromatic "@@.npc_waitress;black dress, black heels, black hat, cadillac@@" maidtress-outfit reworked version of Time Bomb.<br>
<br>
[<<moveTo "event_maidcafe_band_7" "Wrap up the show." 300>>]
</div>/*#
#desc: finish set
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_waitress") "boymode_maid" _TODOdrummer>>
<div id="invframe" class="scrolltext">
With a final bow, and applause filling the small maid-cafe, you and the band finally depart the stage to the privacy of the back-room.<br>
<br>
"@@.generic_female1;That was so fucking fun!@@" <<=setup.getNpcName("generic_female1","custom", "Jay")>> shouts as she leaps into <<=ps(setup.getNpcName("npc_maid","first"))>> arms.<br>
<br>
<<if $npc_technician.relationship.stage >= 2>>
You aren't left out either, as <<=setup.getNpcName("npc_technician","first")>> barges her way into the room to scoop you up. "@@.npc_technician;I didn't know you could play! That was so frelling hot!@@" She gushes.<br>
<br>
<</if>>
The festivities are interrupted before things can go further by <<=setup.getNpcName("npc_butler","formal")>> gently knocking and being let in where <<he npc_butler>> grins with pride.<br>
<br>
"@@.npc_butler;I have to call that a resounding success of a first show!@@" <<He npc_butler>> states with a smile. "@@.npc_butler;I only hope you don't immediately go off on tour... I'd be short-staffed!@@" Everyone enjoys a hearty laugh at that before <<=setup.getNpcName("npc_maid","first")>> replies.<br>
<br>
"@@.npc_maid;I don't think that's liable to happen... that'd be a lot of complexity and logistics, for one... and, besides, <<=$player.first_name>> already has what, two, three, more? Different jobs? Yeah... I think today was more of a one-off, after all that setup the idea of doing frequent gigs, well... I don't think I'm ready for that hustle.@@"<br>
<br>
<<if $npc_technician.relationship.done_you || $npc_technician.relationship.done_her>>
"@@.npc_technician;Mmmm, I could be a roadie... they get to sleep with the band, right?@@" <<=setup.getNpcName("npc_technician","first")>> states with a grin as she eyes you up and pulls you closer.<br>
<br>
<</if>>
Some additional laughs and congratulations are shared around... followed by the five of you divvying up pay and even some tips for a tidy <<=$scene.pay>> credits each.<br>
<br>
"@@.npc_maid;Thanks again,@@" <<=setup.getNpcName("npc_maid","first")>> states with a smile. "@@.npc_maid;That show wouldn't have gone half as well without you... but, well... we DO have work to get back to, and I imagine the rest of the crew would appreciate the help on the floor after half the shift was busy jamming rather than waiting. You go handle the customers, we'll clean up the stage.@@"<br>
<br>
You agree and head back to finish out your original shift.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 600>>]
</div>/*#
#desc: watch band
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_waitress") "boymode_maid" _TODOdrummer>>
<div id="invframe" class="scrolltext">
With a cry of "@@.npc_waitress;FORWARD MAID!@@" <<=setup.getNpcName("npc_waitress","first")>> jumps into their set, the band bopping along to a slightly tweaked version of the Derrick Morgan classic and from there bouncing through history with a string of covers and maid-tweaked tribute-parodies of ska classics from each of its revivals.<br>
<br>
There's a clear gap where another instrument should be filling things out, but with <<=setup.getNpcName("npc_waitress","first")>> carrying the vocals, the rest playing backup, and a positive crowd the show goes pretty well, some of the other maids and customers even getting into it on their feet for a bit of eponymous skanking before the show wraps to enthusiastic applause.<br>
<br>
"@@.npc_waitress;You've been great, thanks everyone!@@" <<=setup.getNpcName("npc_waitress","first")>> states as the curtain falls and you and the other maidtresses get back to work.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 600>>]
</div>/*#
#desc: first time working bunny maid
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeTag('dress', ['bunny']) && setup.checkItemTypeTag('plug', ['bunny']) && setup.checkItemTypeTag('headdress', ['bunny'])>>
You enter the maid cafe with your bunny outfit and tail and a customer is immediately waving you over with an order...<br>
<br>
[<<moveTo "event_maid_cafe_work_bunny_first_2" "Hop to it!" 1800>>]
<<else>>
You start working and immediately catch a look from a customer who stares intently at part of your outfit before shaking their head.<br>
<br>
<<if setup.checkItemTypeTag('plug', ['bunny']) && setup.checkItemTypeTag('headdress', ['bunny'])>>
<<printThought "Hmm, I think they were looking at my bunny accessories... I should really find a proper outfit to tie things together...">>
<<elseif setup.checkItemTypeTag('plug', ['bunny']) && setup.checkItemTypeTag('dress', ['bunny'])>>
<<printThought "Hmm, not having bunny ears to match my tail means this costume is incomplete.">>
<<elseif setup.checkItemTypeTag('dress', ['bunny']) && setup.checkItemTypeTag('headdress', ['bunny'])>>
<<printThought "Hmm, I guess I'm kind of missing a tail to pull the whole bunny look together...">>
<<elseif setup.checkItemTypeTag('plug', ['bunny'])>>
<<printThought "Hmm, I think they were looking at my bunny tail... I wonder if I could complete the outfit? Would probably need ears... and a proper bunny maid outfit...">>
<<elseif setup.checkItemTypeTag('headdress', ['bunny'])>>
<<printThought "Hmm, I think they were looking at my bunny ears... I wonder if I could complete the outfit? Would probably need a tail... and a proper bunny maid outfit...">>
<<elseif setup.checkItemTypeTag('dress', ['bunny'])>>
<<printThought "Hmm, wearing a bunny dress without ears and a tail... Guess that isn't doing things justice.">>
<<else>>
ERROR: unexpected state!
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_work_root" "Work at Cafe Newtype for an hour." 60>>]
<</if>>
</div>/*#
#desc: first time working bunny maid
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -20>>
<<addCredits `25 + random(25,35)`>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
Maybe it's the bunny outfit, or maybe it's the shot of espresso you knocked back at the start of your shift, but you find yourself energetically zipping around the cafe serving customers left, right and centre.<br>
<br>
Bright-eyed and bushy tailed (literally, thanks to your cute plug) you motor through a surge of customers without missing a step; surprised, and a little disappointed when your shift comes to an end and <<=setup.getNpcName('npc_butler', 'formal')>> calls you into <<his npc_butler>> office. You collect the last of your tips and scurry off to the back room.<br>
<br>
[<<moveTo "event_maid_cafe_work_bunny_first_3" "See what <<he npc_butler>> has to say." 600>>]
</div>/*#
#desc: first time working bunny maid - rewarded with reverse bunny outfit
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'bunny_reverse_pink'>>
<<addItem 'pasties_heart_pink'>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('reverse_bunny')>>
<<set $player.flags.maidcafe.bunny = 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_butler', 'formal')>> welcomes you into the back room with a smile.<br>
<br>
"@@.npc_butler;Hello, Miss <<=$player.last_name>>. I wanted to thank you for your efforts today. You seem to have found a new gear of efficiency and it was quite lovely to see. Perhaps the new outfit had something to do with it?@@" <<He npc_butler>> smiles and you blush, your bunny suit is on the skimpy side compared to what most of the maidtresses wear. To say nothing of the tail plug constantly stimulating your bum.<br>
<br>
"@@.npc_butler;That leads me to the second point — obviously the theme of the cafe is maids but there are so many variations on that concept, and I think our customers appreciate a variety.@@" <<He npc_butler>> nods at your outfit. "@@.npc_butler;Your current attire is, thus, a lovely addition to our menagerie, but the thing with bunny outfits is there are two fun different styles. You are sporting the lovely "traditional" one right now, but I happen to have a fun reverse version, if you wanted to mix things up.@@"<br>
<br>
<<He npc_butler>> hands you a box with a smile.<br>
<br>
"@@.npc_butler;Well, I had better get back to work, thank you again for dropping in again and I look forward to seeing your next shift!@@"<br>
<br>
[<<moveTo "room_mall_cafe" "Thank <<him npc_butler>> and leave." 300>>]
</div>/*#
#desc: repeat working bunny maid
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You come to the end of another shift working as a cute bunny maid — bouncing around to the approval of customers and co-workers alike.<br>
<br>
As you finish bussing your final table and drop things off at the kitchen your waitress friend <<=setup.getNpcName("npc_waitress","first")>> appears sporting a sly smile.<br>
<br>
"@@.npc_waitress;Hey, before you head out, how about a little treat? I got a special one here that seems just perfect for that cute outfit you're sporting.@@"<br>
<br>
She hands you a chocolate egg — one of the more recent additions to the cafe's offerings, they are so popular with customers it's become something of a treat for an employee to lay hands on one.<br>
<br>
[<<moveTo "event_maid_cafe_work_bunny_2" "Eat the egg." 300 "<<set $scene.share=false>>">>]<br>
[<<moveTo "event_maid_cafe_work_bunny_2" "Ask if she'd like to share the egg with you?" 300 "<<set $scene.share=true>>">>]<br>
</div>/*#
#desc: repeat working bunny maid
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.maidcafe.bunny = 2>>
<<if $npc_technician.relationship.kink_indulge.cum >= 3>>
<<set $player.flags.maidcafe.bunny = 3>>
<<applyExperience 'cum' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<if $scene.share>>
<<applyStress -10>>
<<applyFatigue -10>>
<<else>>
<<applyStress -5>>
<<applyFatigue -30>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
<<if $scene.share>>
You offer to share and <<=setup.getNpcName("npc_waitress","first")>> smiles.<br>
<br>
"@@.npc_waitress;Friendly AND cute! You're just the best.@@" She places the egg between her teeth and beckons you in with her eyes. You press in close, sharing a kiss alongside the chocolatey goodness, followed by a burst of rich
<<if $npc_technician.relationship.kink_indulge.cum >= 3>>
semen flavour as the egg discharges its "special" payload.<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
For a cumslut like yourself there could hardly be a better treat and you eagerly lick and suck up every drop you can,
<<if setup.getTotalValue("cum") > 15>>
having a tongue skirmish with your friend to see who can slurp up the most before finally breaking the kiss.
<<else>>
not breaking the kiss until the two of you have gobbled up every drop.
<</if>>
"@@.npc_waitress;Yum!@@" <<=setup.getNpcName("npc_waitress","first")>> says with a grin, that you knowingly return.
<<else>>
ERROR: should not be possible.
<</if>>
<<else>>
creme flavour.<br>
<br>
You each gobble down your respective portions before finishing the kiss with dual sweet smiles.
<</if>>
<br><br>
"@@.npc_waitress;Well, thanks for sharing — but I still have to finish my shift, catch you later!@@"<br>
<br>
<<=setup.getNpcName("npc_waitress","first")>> zips away, your shared treat leaving a smile on your face.
<<else>>
You pop the whole egg between your lips and bite down with a grin,
<<if $npc_technician.relationship.kink_indulge.cum >= 3>>
chocolatey goodness giving way to
<<if setup.getTotalValue("cum") > 10>>
rich, semen flavour.
<<if setup.getTotalValue("cum") > 15>>
For a cumslut like yourself there could hardly be a better treat and you eagerly gobble up the whole egg and its delicious payload.
<<else>>
a tasty, though perhaps not surprising, bonus that you eagerly gobble up.
<</if>>
<<else>>
ERROR: should not be possible.
<</if>>
<br><br>
<<=setup.getNpcName("npc_waitress","first")>> winks knowingly as you finish off your treat.<br>
<br>
"@@.npc_waitress;Me and some of the girls "pitched in" for that special filling — I knew you'd love it!@@"<br>
<br>
You blush, but nod and she smiles wider.
<<else>>
your mouth filled with the delicious blend of chocolate and rich, creme filling.
<</if>>
<br><br>
"@@.npc_waitress;Glad you enjoyed the treat — but I still have to finish my shift, catch you later!@@"<br>
<br>
<<=setup.getNpcName("npc_waitress","first")>> zips away, your bonus treat leaving you feeling refreshed.
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 600>>]
</div>/*#
#desc: offered maid catfe work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You're about to start another shift when the waitress notices your ears and smiles.<br>
<br>
"@@.npc_waitress;Oh what a cute kitty! Those ears are just ADORABLE... I don't suppose you'd be up for doing a "catfe" shift... all you need is a tail and a cute <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>bell for that collar<<else>>collar and bell<</if>> and you would be PERFECT.@@" She bites her lip and glances around conspiratorially. "@@.npc_waitress;And by tail well... I know we're supposed to keep things clean at work, but it's hardly YOUR tail if it isn't mounted properly... right?@@"<br>
<br>
<<printThought "Of course this would involve a tail plug...">><br>
<br>
[<<moveTo "event_maid_cafe_work_cat_first_2" "Meow! That sounds great!" 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_cat_first_2" "That sounds a bit much, you'll work a normal shift." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: agree to work as kitty waitress
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<addItem 'bell_gold'>>
<<wearItem 'bell_gold' true>>
<<else>>
<<addItem 'kitty_collar_pink'>>
<<wearItem 'kitty_collar_pink' true>>
<</if>>
<<addItem 'cat_tail_plug_adv'>>
<<wearItem 'cat_tail_plug_adv' true>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You let out a happy "@@.pc;Meow@@" and the waitress grins.<br>
<br>
"@@.npc_waitress;Oh you're so fun! Come on, kitty, let's get you finished dressing!@@"<br>
<br>
The two of you dart off to the back room where she opens her locker and pulls out a long fuzzy tail... connected to a quite large anal plug.<br>
<br>
"@@.npc_waitress;Here we go!@@" She says with a smile, taking a few moments to wipe the already clean plug down with disinfectant before lubing it up and handing it to you. "@@.npc_waitress;Don't mind the size — it has to be that big for all the electronics. It's adapted from a cosplay item, sensors monitor your mood and swish back and forth accordingly!@@"<br>
<br>
Excited you're soon plugged
<<if setup.checkItemWorn('kitty_collar_pink')>>
as she pulls out a cute kitten collar, complete with bell, and helps buckle it around your neck.
<<else>>
as she finds a large bell and attaches it to the front of your collar.
<</if>>
"@@.npc_waitress;There! Oh, you are just the cutest kitty! Well I had better get back to my tables, you enjoy your shift!@@"<br>
<br>
She dashes off, giving you a few moments to check your reflection, and admire how the tail moves almost on its own... resulting in some "interesting" sensations inside.<br>
<br>
[<<moveTo "event_maid_cafe_work_cat_first_3" "Go work the catfe." 3000 "<<set $scene.accept=true>>">>]<br>
<<else>>
You decline the offer and the waitress nods.<br>
<br>
"@@.npc_waitress;Ah well, maybe some other time? Whelp, I've gotta get back to my tables, have a good shift!@@" She darts off and you get to work.<br>
<br>
[<<moveTo "event_maid_cafe_work_root" "Work at Cafe Newtype for an hour." 3600>>]
<</if>>
</div>/*#
#desc: first shift as kitty waitress
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 50>>
<<removeItem 'cat_tail_plug_adv' true>>
<<set $player.flags.maidcafe.cat = 1>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('cat')>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('cat')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('cat')>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You stride out into the maid cafe and immediately draw attention — it would seem that the one thing your clientele likes more than a sweet maidtress is a cute kitty maid.<br>
<br>
Your bell jingles and you meow and curtsy and dart about taking and delivering orders. The whole time your tail twitches happily as you enjoy a fun, exciting shift... and quite the haul in tips... though it seems that the customers are still adjusting to your new look and not quite yet in the playful mood...<br>
<br>
As you finally wiggle off back to the changing room to remove your "tail" and call it a day you wonder what might happen if you work this way again...<br>
<br>
<<=setup.getNpcName("npc_waitress","first")>> meets up with you in the changing room with a wide grin. "@@.npc_waitress;So you're even more adorable than I imagined! You can totally keep the accessories, they look WAY too good on you for me to ask for them back!@@"<br>
<br>
You smile and thank her for the gift before continuing on your way.<br>
<br>
[<<moveTo "room_mall_cafe" "Continue." 60>>]
</div>/*#
#desc: repeat working cat maid
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.maidcafe.cat = 2>>
<<if $npc_technician.relationship.kink_indulge.cum >= 3>>
<<if $npc_technician.relationship.kink_indulge.cum == 3>>
<<set $npc_technician.relationship.kink_indulge.cum = 4>>
<</if>>
<<applyExperience 'cum' 15 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
Your shift as a cute kitty maid sees you becoming close to the centre of attention as you prance back and forth around the cafe, delivering orders and enjoying the occasional encouraging head-pats or appreciative scratches behind the ear from customers.<br>
<br>
Your tail swaying happily back and forth — and stimulating you with every motion, you finish your shift with a nice bowl of
<<if $npc_technician.relationship.kink_indulge.cum >= 3>>
"cream" — the thick, salty treat courtesy of your fellow maids who must have all contributed to the bountiful saucer-full, and who watch and wink at you in understanding as you eagerly slurp up your treat in full view of applauding customers.<br>
<br>
<<printThought "Do they realise I just slurped up an entire saucer of cum? I'm so depraved...">><br>
<br>
Driving things home <<=setup.getNpcName("npc_waitress","first")>> leans over after you've finished licking the saucer clean to pat you on the head and whisper "@@.npc_waitress;Good kitty cumslut,@@" her voice just loud enough to make you shudder at the thought a customer might have heard.
<<else>>
milk — a nice appropriate, and surprisingly tasty, treat to finish off your shift in front of applauding customers. <<=setup.getNpcName("npc_waitress","first")>> finishes things off by leaning over to pick up the saucer, giving you an encouraging pat on the head as you "@@.pc;Meow@@" happily.
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 600>>]
</div>/*#
#desc: first shift at maid cafe
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.maidcafe.stage = 3>>
<<addNpcTheme 'npc_technician' 'work' 'theme_technician_work_maid'
0
'event_technician_maid_work'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_25'
1
'event_psychiatrist_theme_maid_cafe'
true
>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_maid', 'first')>> greets you and gives you a quick once over before giving you your shift assignment.<br>
<br>
<<=setup.getNpcName('npc_waitress', 'first')>> passes by with a smile, welcoming you to the "team" before hurrying off to her table.<br>
<br>
Being that it's your first day <<=setup.getNpcName('npc_maid', 'first')>> has you shadow her, getting some extra practice in watching how she deals with customers, your clientele appearing more than happy to be waited on by two cute maids at a time rather than just the one.<br>
<br>
After about half an hour of her taking the lead <<=setup.getNpcName('npc_maid', 'first')>> flips things around and lets you take point while she supports and you get into the groove of taking and delivering orders.<br>
<br>
Things are going quite smooth when you spot a familiar face — <<=setup.getNpcName('npc_technician', 'first')>> walks in to the cafe and takes her usual seat, giving the two of you a wave.<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> grins and then nods towards you. "@@.npc_maid;Alright, this should be good practice in dealing with a known PROBLEM customer. I'm going to stay back here, you go ahead and take <<=ps(setup.getNpcName('npc_technician', 'first'))>> order while I watch.@@"<br>
<br>
A bit nervous to be "on your own" you take a deep breath, fix your skirts, and walk over to where your <<if $npc_technician.relationship.relationship_stage >= 1>>girlfriend<<else>>friend<</if>> is sitting.<br>
<br>
[<<moveTo "event_maid_cafe_first_shift_2" "Take her order." 1800>>]
</div>/*#
#desc: first shift at maid cafe - technician as customer
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Giving a welcoming curtsy you try not to blush as <<=setup.getNpcName('npc_technician', 'first')>> looks you over with obvious desire.<br>
<br>
"@@.npc_technician;My, my, aren't you looking simply... adorable.@@"<br>
<br>
You thank her for the compliment and ask what you can get for her, today, bracing for the mind-boggling Cofferasque that she seems to prefer.<br>
<br>
She makes a show of looking at the menu and stealing a side-eyed glance in <<=ps(setup.getNpcName('npc_maid', 'first'))>> direction.<br>
<br>
"@@.npc_technician;Hmm, I think I'll take a cup of the house blend, and a couple biscuits?@@"<br>
<br>
You're a bit surprised but you nod in acknowledgement, stating that you'll be right back with her order. You feel her eyes on you every step of the way back to the counter.<br>
<br>
Overhearing the bog-simple order <<=setup.getNpcName('npc_maid', 'first')>> glares daggers back at her friend, <<=setup.getNpcName('npc_technician', 'first')>> merely smiling in mock innocence as you gather up the order and return to the table; this time with <<=setup.getNpcName('npc_maid', 'first')>> in tow.<br>
<br>
"@@.npc_technician;Ah, delicious!@@" <<=setup.getNpcName('npc_technician', 'first')>> states, taking a sip of her drink with a taunting smile. "@@.npc_technician;And so much more courteous of a delivery. Really, <<=setup.getNpcName('npc_maid', 'first')>>, you ought to take lessons in customer service from our friend here...@@"<br>
<br>
<<=ps(setup.getNpcName('npc_maid', 'first'))>> gaze narrows as she shakes her head, but the slight smile on her face, combined with <<=setup.getNpcName('npc_technician', 'first')>> taking another small sip to conceal her own smirk tells you that this is just another round in their ongoing spars.<br>
<br>
"@@.npc_maid;Of course, unfortunately such a lovely, helpful waitress is needed with other customers so...@@"<br>
<br>
"@@.npc_technician;More's the pity, but, well, if she's busy I don't suppose you could take care of bringing me another drink... the usual, of course. And chop-chop!@@"<br>
<br>
<<=ps(setup.getNpcName('npc_technician', 'first'))>> grin could slay an army, and <<=ps(setup.getNpcName('npc_maid', 'first'))>> reply of "@@.npc_maid;Certainly@@" drips with enough venom to poison a city.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> flashes you a wink as you head off to serve another customer.<br>
<br>
[<<moveTo "event_maid_cafe_first_shift_3" "Continue your shift." 600>>]
</div>/*#
#desc: first shift at maid cafe - grabby customer
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
Continuing your shift on your own you turn to wave goodbye to <<=setup.getNpcName('npc_technician', 'first')>> when she finishes up, only to be surprised when you feel a hand sliding up your thigh!<br>
<br>
"@@.generic_male1;Shhh, everything is fine, you're just so hot...@@" the customer whispers, <<if $options.fem>>her<<else>>their<</if>> hand roaming further up under your skirt to grab your butt.<br>
<br>
You're momentarily frozen in place, you hadn't seen anything like this happen before at the maid cafe and you don't know how to handle it...<br>
<br>
Suddenly <<=setup.getNpcName('npc_waitress', 'first')>> is back at your side, looming over you like a big sister as she slaps the customer's hand away.<br>
<br>
"@@.npc_waitress;That is not allowed. You've been warned before, get out. Now. And consider yourself perma-banned from the premises.@@"<br>
<br>
"@@.generic_male1;But I—@@" the customer starts to say only to be shut down by <<=ps(setup.getNpcName('npc_waitress', 'first'))>> glare of death.<br>
<br>
You're still standing like a statue as the customer slinks past and <<=setup.getNpcName('npc_waitress', 'first')>> turns towards you.<br>
<br>
"@@.npc_waitress;You alright? Hmm, let's go talk to <<=setup.getNpcName('npc_butler', 'formal')>>, I think it would be good to hear it from the owner <<him npc_butler>>self what the policies are here.@@"<br>
<br>
[<<moveTo "event_maid_cafe_first_shift_4" 'Follow <<=setup.getNpcName("npc_waitress", "first")>> to the back office.' 600>>]
</div>/*#
#desc: first shift at maid cafe - owner explains policies re: fraternisation
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = $player.flags.maidcafe.base_pay + 5>>
<<addCredits $scene.pay>>
<<set $npc_butler.profile = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler")>>
<div id="invframe" class="scrolltext">
After listening to <<=setup.getNpcName('npc_waitress', 'first')>> explain what happened, <<=setup.getNpcName('npc_butler', 'formal')>> takes a few moments to make sure you're alright before launching into monologue.<br>
<br>
"@@.npc_butler;As you know, our clientele is such that, well... they usually have a bit of a thing for "maids" and that's wonderful, it means that lovelies like <<if $npc_butler.fem>>ourselves<<else>>yourself<</if>> can dress up, provide a service, make some money and everyone is happy. That said, I am very much not running a brothel. Not that there is anything wrong with such an establishment, but here we are selling a fantasy — things can get a bit flirty, and that's fine, but there is a sharp line of no contact between customers and staff on premises. If you ever have another situation like the one you experienced earlier, you should either deal with it there, or, if you do not feel safe in doing so, come directly to myself to report it so that I may attend to it. I am always there for you and the rest of <<if $npc_butler.fem>>our<<else>>your<</if>> fellow maids and I will not allow you to be mistreated in any way, do you understand?@@"<br>
<br>
You nod and <<=ps(setup.getNpcName('npc_butler', 'formal'))>> expression softens. "@@.npc_butler;Good, now that all that nasty business is out of the way why don't you call it a day early, here's your pay, plus a nice tip left behind by that blonde friend of <<=ps(setup.getNpcName('npc_maid', 'first'))>> I hope to see you back in soon, and have a lovely rest of your day.@@"<br>
<br>
You pocket the <<=$scene.pay>> and depart.<br>
<br>
[<<moveTo "room_mall" "Back to the mall." 600>>]
</div>/*#
#desc: offered heels job at maid cafe confusion
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_shoestore_manager.flags.waitressHeelsOffer = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler") setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
You've checked assignments and are about to head to your first customer when <<=setup.getNpcName("npc_butler","formal")>> calls you into <<his npc_butler>> office where you find <<=setup.getNpcName("npc_shoestore_manager","formal")>> is waiting for you.<br>
<br>
"@@.npc_butler;Since she's here you might as well lay out your proposal directly, save me having to play go-between.@@"<br>
<br>
<<printThought "Proposal?">> you look with curiosity between the two of them and <<=setup.getNpcName("npc_shoestore_manager","formal")>> smiles.<br>
<br>
"@@.npc_shoestore_manager;So I was just talking to <<=setup.getNpcName("npc_butler","formal")>> here about the possibility of some cross-promotion, namely having some of <<his npc_butler>> girls wear some of my new shoes on the job. In particular I was hoping to get at least one waitress to show off my wonderful ballet boots, which was where your name came up.@@" She nods for <<=setup.getNpcName("npc_butler","formal")>> to continue.<br>
<br>
"@@.npc_butler;Yes. Obviously, the idea of putting a waitress in such... challenging footwear had me concerned. Then <<=setup.getNpcName("npc_shoestore_manager","formal")>> showed me your video and, well... I am willing to give it a shot, if you are. With the caveat that if you feel the slightest bit unsteady or fatigued you end your shift there. Advertising shoes is one thing but it is not worth it if it means a customer, or one of you lovely waitresses, risking a third degree burn in a spill!@@"<br>
<br>
"@@.npc_shoestore_manager;So, are you up to it? If you want to get some practice in first, that's fine, but I'll give you a nice bonus the first time you finish a perfect shift in ballet boots.@@"<br>
<br>
<<if setup.checkItemTypeTag('shoes', ['ballet'])>>
"@@.npc_butler;I should hope so! Given she is already wearing a pair and was about to go on shift!@@"<br>
<br>
<<set _duration=3600*(setup.getTotalValue("heels")-10)/10>>
[<<moveTo "event_maid_cafe_work_ballet_0" "Work a shift in your ballet heels." _duration "<<set $scene.accept=true>>">>]<br>
<<else>>
[<<moveTo "event_maid_cafe_work_ballet_0" "Agree to work a shift in ballet heels." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_ballet_0" "Say you'd rather just work a normal shift today." 300 "<<set $scene.accept=false>>">>]<br>
<</if>>
[<<moveTo "room_mall_cafe" "Actually, you remembered somewhere you need to be. Return to the mall." 300>>]
</div>/*#
#desc: offered job working maid in ballet boots
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.wearingballet = setup.checkItemTypeTag('shoes', ['ballet'])>>
<<if !$scene.wearingballet>>
<<addItem 'ballet_boots_black'>>
<<wearItem 'ballet_boots_black' true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler") setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $scene.wearingballet>>
With you already dressed in a pair of ballet boots there is nothing more to discuss and you bow in acknowledgement and confirm that you're ready to start your shift.
<<else>>
<<=setup.getNpcName("npc_shoestore_manager","formal")>> seems to have brought along a pair of ballet boots for just this purpose. You are treated the fresh scent of leather as she unboxes them before helping lace things up your legs.
<</if>>
<br><br>
"@@.npc_shoestore_manager;Wonderful!@@" She states with a smile as you look down at both her and <<=setup.getNpcName("npc_butler","formal")>> from your lofty heel-assisted height.<br>
<br>
"@@.npc_butler;Remember — if you start feeling unsteady, stop. You taking a tumble mid-shift is the last thing we want to happen.@@"<br>
<br>
You nod and head out of the office to commence waitressing.<br>
<br>
<<set _duration=3600*(setup.getTotalValue("heels")-10)/10>>
[<<moveTo "event_maid_cafe_work_ballet_1" "Begin your first ballet shift." _duration>>]
<<else>>
You thank <<=setup.getNpcName("npc_shoestore_manager","formal")>> for the offer but explain that you do not quite feel up to such a challenge today.<br>
<br>
"@@.npc_butler;Prudent, that sort of knowing one's own limits is exactly what I like to hear. If your training progresses and you would like to make an attempt in the future... just come back wearing appropriate boots.@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_root" "Start a normal shift at Cafe Newtype." 60>>]
<</if>>
</div>/*#
#desc: work at the maid cafe in ballet boots
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'heels' 20 'skip' $EXPOSED>>
<<if setup.getTotalValue("heels") >= 19>>
<<setThreshold 'heels' 'wearing_heels' 'final'>>
<<else>>
<<addCredits $player.flags.maidcafe.base_pay>>
<</if>>
<<applyFatigue 50>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("heels") >= 19>>
From the moment you step forth to begin your shift you know you have it in the bag. As challenging as it may be to dance between customers and fellow maidtresses atop your towering ballet heels you manage it with ease, gracefully stepping and pirouetting between tables without spilling a single drop of caffeinated deliciousness.<br>
<br>
You earn gawking surprise and complimentary praise in abundance from customers, to which you gleefully recommend <<printShopName 'mall_shoe_store'>> and bed heels as the ultimate recipe for high-heel perfection.<br>
<br>
You end your shift with a bow and find yourself, once again, in the back room with <<=setup.getNpcName("npc_butler","formal")>> and <<=setup.getNpcName("npc_shoestore_manager","formal")>>.<br>
<br>
[<<moveTo "event_maid_cafe_work_ballet_finish" "Finish up." 300>>]
<<else>>
<<if setup.getTotalValue("heels") > 17>>
You start out strong, but by the half-way point of your shift your ankles are starting to strain and you are forced to call it in. You find it was less the heels themselves than the challenge of managing them AND drink orders at the same time making you less able to use your arms for additional steadiness.<br>
<br>
You try to stick things out to the end but, after a near-fall dodging a distracted customer, you are reminded of <<=ps(setup.getNpcName("npc_butler","formal"))>> words and you reluctantly decide to call it a day.
<<else>>
It turns out that working in ballet heels is quite a different thing than merely wearing them for a controlled photoshoot. The combination of needing to move around customers, along with carrying orders, proves to be too much for you. Though you make it past the half-way point of your shift you are forced to call it a day when you feel your ankles start to wobble.
<</if>>
<br><br>
Somewhat saddened by your failure you collect your <<=$player.flags.maidcafe.base_pay>> credits in earnings and inform <<=setup.getNpcName("npc_butler","formal")>> that you are cutting out early. <<He npc_butler>> nods in understanding. "@@.npc_butler;I thought those shoes were a bit high for anything functional, but you did better than I would have thought possible so if you wish to try again in the future, I will permit it.@@"<br>
<br>
You thank <<him npc_butler>> and depart.<br>
<br>
[<<moveTo "room_mall_cafe" "Return to the mall." 60>>]
<</if>>
</div>/*#
#desc: post first ballet boot shift
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `3*$player.flags.maidcafe.base_pay + 200`>>
<<addItem 'ballet_boots_pink'>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.pushUnique('ballet')>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler") setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
Having triumphantly completed a full maidtress shift elegantly balanced atop the steepest of ballet boots you join <<=setup.getNpcName("npc_butler","formal")>> and <<=setup.getNpcName("npc_shoestore_manager","formal")>> for enthusiastic congratulations.<br>
<br>
"@@.npc_butler;Wonderfully done, my dear.@@" <<=setup.getNpcName("npc_butler","formal")>> states with pride. "@@.npc_butler;I confess I was uncertain about this plan but... you have shown your unparalleled skill and I have no hesitation in giving you blanket permission to work in those devilish heels any time you like.@@" <<He npc_butler>> hands you your pay of <<=$player.flags.maidcafe.base_pay*3>> and you smile.<br>
<br>
<<printThought "Wow, seems like wearing ballet boots quite attracts the customers, maybe I should add them to my normal maidtress ensemble?">><br>
<br>
"@@.npc_shoestore_manager;I told you she could do it! And let me tell you, a few of your other employees have already been by my shop to pickup bed heels and ballet boots of their own. Who knows, maybe ballet maids will become the norm!@@"<br>
<br>
<<=setup.getNpcName("npc_butler","formal")>> chuckles. "@@.npc_butler;I would not go that far, but the customers seem to like it so anyone who can meet the high bar of efficiency is welcome to it.@@"<br>
<br>
<<=setup.getNpcName("npc_shoestore_manager","formal")>> smiles, definitely excited by this idea as she hands you a box. "@@.npc_shoestore_manager;In any case, I wanted you to have this.@@"<br>
<br>
You open the box to find a pair of ballet boots identical to your own, but in pink, as well as an envelope full of credits.<br>
<br>
"@@.npc_shoestore_manager;I figured you might want a bit of colour variation when you're choosing an outfit. And that is your cut for your shift and what was effectively yet another wonderfully effective advertising campaign. Ta-ta!@@"<br>
<br>
<<=setup.getNpcName("npc_shoestore_manager","formal")>> prances away in her thick platforms and <<=setup.getNpcName("npc_butler","formal")>> bids you good-day with a nod.<br>
<br>
[<<moveTo "room_mall_cafe" "Return to the mall." 60>>]
</div>/*#
#desc: show up to maid cafe in maid outfit and get roped into working
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You've barely walked into the, currently quite busy, Maid Cafe when an over-burdened waitresses notices you with surprise.<br>
<br>
"@@.npc_waitress;What are you doing just standing there? Here, take this to table five.@@" She states, handing you one of the drinks from her platter.<br>
<br>
You stare back in confusion as she rolls her eyes. "@@.npc_waitress;Table FIVE, the one in the back corner there, come on, hop to it!@@" She offers the drink to you once again.<br>
<br>
<<printThought "She must think I work here...">><br>
<br>
[<<moveTo "event_maid_cafe_maidery_intro_2" "Take the drink and deliver it as requested." 1800 "<<set $scene.accept=true>>">>]<br>
<<if setup.getTotalValue("submission") >= 15>>
[@@.link_locked;You are far too submissive to do anything but obey such a direct order.@@]
<<else>>
[<<moveTo "event_maid_cafe_maidery_intro_2" "Explain to her that you don't actually work here..." 600 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: attempt to keep up with things after getting press-ganged at maid cafe
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_waitress.profile = true>>
<<applyExperience 'submission' 13 'very' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Obediently taking the offered cup, you hurry towards the indicated table as the other waitress heads the opposite direction with another delivery.<br>
<br>
<<switch setup.analyzeWornTags(['slutty','modest','fetish','cute'])>>
<<case 'slutty'>>
Placing the cup in front of the customer there's no mistaking the leering glance of <<his>> eyes gliding over your skimpy outfit and the flesh it reveals.<br>
<br>
"@@.generic_male1;Thanks.@@" <<He>> states as you give a little curtsy, a motion that seems to only turn <<his>> crank harder as <<he>> nervously sips <<his>> drink.
<<case 'fetish'>>
<<if setup.checkVisibleClothingTag('latex') > 60>>
Your latex maid outfit creaks slightly with every movement. Though it is technically quite modest in the sense of exposed skin, the tight rubber highlights every curve and draws numerous glances from customers and fellow waitresses alike.
<<else>>
Your over the top maid outfit draws attention at every movement. Though it is technically quite modest in the sense of exposed skin, its level of feminine beauty garners awe to all who look upon it.
<</if>>
<br><br>
You place the drink down in front of your customer and <<he>> smiles, <<his>> eyes roaming over your body with obvious lust.
<<default>>
You place the cup in front of the indicated customer and <<he>> gives a nod of thanks, taking a slow sip as <<he>> appears to admire your cute outfit.<br>
<br>
You give a quick curtsy to spark a smile before heading away.
<</switch>>
<br><br>
Having made one delivery, you find yourself facing the same waitress again as she motions for you to hurry up as the two of you head back to the counter to pick up the next round of orders.<br>
<br>
After explaining which table each should be delivered to she flashes you a smile.<br>
<br>
"@@.npc_waitress;Don't worry, you'll get the hang of it, believe me, as crowded and understaffed as we are today, I'll take any help I can get!@@"<br>
<br>
Swelling with pride, you hurry off with your next order.<br>
<br>
Busy, busy, busy things are finally slowing down a bit when, on your way back to deposit a tray of dirty glasses in the kitchen, you bump into <<=setup.getNpcName('npc_maid', 'first')>>.<br>
<br>
"@@.npc_maid;<<=$player.first_name>>? When did you- wait, <<=setup.getNpcName('npc_waitress', 'first')>>!@@" She calls out, attracting the attention of the waitress who roped you into working in the first place.<br>
<br>
"@@.npc_maid;Did you press-gang this cutie into working today?@@"<br>
<br>
<<=setup.getNpcName('npc_waitress', 'first')>> suddenly looks embarrassed as she makes her way over to the two of you. "@@.npc_waitress;Wait, you're saying she's not one of—?@@"<br>
<br>
"@@.npc_maid;Bingo, outfit aside, she doesn't work here, though I guess she's submissive enough to just go along with it...@@"<br>
<br>
"@@.npc_waitress;Well... she was doing a pretty good job...@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> shakes her head. "@@.npc_maid;Come on, <<=$player.first_name>>, let's go talk to the boss-<<man npc_butler>>. And <<=setup.getNpcName('npc_waitress', 'first')>>? Try not to forcibly enlist any more customers, hmm?@@"<br>
<br>
You can't help but wonder if this isn't the first time this has happened as <<=setup.getNpcName('npc_waitress', 'first')>> meekly curtsies and they hurry off back to work as <<=setup.getNpcName('npc_maid', 'first')>> leads the way through the kitchen to a small door tucked in the back.<br>
<br>
[<<moveTo "event_maid_cafe_maidery_intro_3" "Meet the boss-<<man npc_butler>>." 300>>]
<<else>>
You hurriedly explain that, outfit aside, you aren't actually an employee.<br>
<br>
It takes the waitress a few moments to believe you before she finally sighs and puts the drink back on her tray.<br>
<br>
"@@.npc_waitress;Look, I get it that our customer base is made up of... maid aficionados, but it's really confusing if you show up in costume when you don't work here. Sorry about the confusion now, if you would please excuse me, I need to deliver these drinks.@@"<br>
<br>
She hurries off, her cute skirts bouncing with each step. You look around to find that they really are near capacity and you don't spot any any tables available.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<</if>>
</div>/*#
#desc: offered job after maid cafe confusion
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler")>>
<div id="invframe" class="scrolltext">
Entering the back room with <<=setup.getNpcName('npc_maid', 'first')>> you are introduced to the "boss-<<man npc_butler>>." <<=setup.getNpcName('npc_butler', 'formal')>> is a prim and proper <<if $npc_butler.fem>>maid<<else>>butler<</if>>, a couple centimetres shorter than yourself with a bit of an androgynous face. <<He npc_butler>> listens carefully as <<=setup.getNpcName('npc_maid', 'first')>> explains the situation before turning to you with a smile.<br>
<br>
"@@.npc_butler;Well, let me apologise for my... over-exuberant employee, but, from the sound of things, you performed quite admirably... I do not suppose you would be interested in a part-time position?@@" <<=ps(setup.getNpcName('npc_butler', 'formal'))>> voice is formal, but warm, with a bit of an old fashioned English accent.<br>
<br>
[<<moveTo "event_maid_cafe_maidery_intro_4" "Say sure." 30 "<<set $scene.job=true>>">>]<br>
[<<moveTo "event_maid_cafe_maidery_intro_4" "Decline the offer." 30 "<<set $scene.job=false>>">>]
</div>/*#
#desc: accept/reject job after maid cafe confusion
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = $player.flags.maidcafe.base_pay>>
<<addCredits $scene.pay>>
<<if $scene.job>>
<<set $player.flags.maidcafe.stage = 1>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('bunny')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('bunny')>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('bunny')>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler")>>
<div id="invframe" class="scrolltext">
<<if $scene.job>>
After thinking for a moment, you nod, stating that you'd love to work part-time at Cafe Newtype.<br>
<br>
"@@.npc_butler;Wonderful to hear. First I would like to compensate you for your efforts today@@" <<he npc_butler>> states handing you <<=$scene.pay>> credits. "@@.npc_butler;Given your already productive day I will let you go, but next time you are in we will jump into your training.@@"<br>
<br>
<<=setup.getNpcName('npc_butler', 'formal')>> gives a <<if $npc_butler.fem>>curtsy<<else>>formal bow<</if>> that you and <<=setup.getNpcName('npc_maid', 'first')>> return with curtsies before <<=setup.getNpcName('npc_butler', 'formal')>> holds the door for the two of you to head out of the room.<br>
<br>
"@@.npc_maid;Not bad, and welcome to the team, I guess I'll be seeing even more of you around.@@" She states with a friendly grin, escorting you out of the cafe and waving you off with a smile.
<<else>>
You thank <<=setup.getNpcName('npc_butler', 'formal')>> for the offer, but explain that you are just too busy at present to consider another job.<br>
<br>
"@@.npc_butler;Ah, of course. More's the pity, I do believe you would fit in quite well on our staff, would you not agree, Miss <<=setup.getNpcName('npc_maid', 'first')>>?@@"<br>
<br>
<<=setup.getNpcName('npc_maid', 'first')>> glances at you and shrugs. "@@.npc_maid;She seemed to be doing alright without any real instruction, just <<=setup.getNpcName('npc_waitress', 'first')>> ordering her about.@@"<br>
<br>
"@@.npc_butler;Yes, well, again, my apologies. Here, I think this should be sufficient remuneration for your efforts?@@" <<He npc_butler>> states, handing you <<=$scene.pay>> credits. "@@.npc_butler;Thank you again for helping out with the rush, and, well, if you have some time free up and change your mind we would welcome you back to help out with the odd shift — after going through a bit of training, of course.@@"<br>
<br>
You tell <<=setup.getNpcName('npc_butler', 'formal')>> you'll keep that in mind as <<he npc_butler>> holds the door for you to head back out on your way.
<</if>>
<br><br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask about a job at the maid cafe
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You approach one of the waitresses to ask about the posted job opening.<br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks.task_uniform_upgrade.finished>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
She looks over your maid attire and smiles awkwardly. "@@.npc_waitress;Sorry, dear — while you certainly look the part, we're doing some re-training this week and don't have capacity to take on new staff. Maybe come back next week when we've got the lady-power to deal with a new hire?@@"
<<else>>
She smiles apologetically. "@@.npc_waitress;Sorry, we kind of left the help wanted sign up... but we're in the middle of some re-training this week and don't have the lady-power to deal with a new hire — come back in a week or so and we'll talk!@@"
<</if>>
<br><br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<<else>>
<<if setup.getTotalValue("feminization") < 13 || $player.sec_style.clothing.female == "" || setup.getTotalValue("heels") < 5>>
Glancing over you with a critical eye she shakes her head.<br>
<br>
"@@.npc_waitress;Sorry, we pride ourselves on being very open employers but, well... I don't really think you currently have what it takes for this sort of thing.@@"<br>
<br>
Glancing around at the other maids and reflecting on yourself you find yourself agreeing, nodding with a touch of sadness as she heads back to work.<br>
<br>
<<printThought "It seems like the unifying factor amongst the maids is an aire of femininity... well, that and the fact that they're all dressed in high-heel maid outfits!">><br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<<else>>
The waitress looks you over with a critical eye before nodding with a smile.<br>
<br>
"@@.npc_waitress;Hmm, yes, I think you might have what it takes to be a Newtype maid. Come with me, I'll introduce you to the boss-<<man npc_butler>> and <<he npc_butler>> can give you the details about the position.@@"<br>
<br>
Following the waitress through the kitchen, you are led to a room in the back, the door swinging open to reveal a small, but immaculately kept, office with an oaken desk and a small, formally dressed <<man npc_butler>> sitting behind it.<br>
<br>
The <<man npc_butler>> looks up, rising to <<his npc_butler>> feet to stand slightly shorter than yourself. Attired in the style of <<if $npc_butler.fem>>a maid<<else>>old-fashioned butler<</if>>, the <<man npc_butler>> gives a gentle inclination of <<his npc_butler>> head in greeting as the waitress introduces the two of you.<br>
<br>
"@@.npc_waitress;<<=setup.getNpcName('npc_butler', 'formal')>>, this woman... sorry, I didn't get your name?@@" You provide it and she continues. "@@.npc_waitress;Sorry, yes, <<=$player.first_name>> has expressed interest in joining our team.@@"<br>
<br>
"@@.npc_butler;Wonderful.@@" <<He npc_butler>> replies. <<=ps(setup.getNpcName('npc_butler', 'formal'))>> voice is friendly, but formal, with a strong upper-class English accent. "@@.npc_butler;We are always looking for hardworking individuals able to rise to the responsibilities and join our lovely team of maids. At present we only have part-time positions available, but if that is to your satisfaction...?@@"<br>
<br>
[<<moveTo "event_maid_cafe_job_request_2" "Say that would be perfect." 600 "<<set $scene.job=true>>">>]<br>
[<<moveTo "event_maid_cafe_job_request_2" "Change your mind and decline." 30 "<<set $scene.job=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: accepted/rejected for job at maid cafe
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.job>>
<<if !setup.checkItemOwned('maid_uniform_black')>>
<<addItem 'maid_uniform_black'>>
<<elseif setup.inWardrobe('maid_uniform_black')>>
<<wardrobeToItem 'maid_uniform_black'>>
<</if>>
<<if !setup.checkItemOwned('maid_uniform_apron')>>
<<addItem 'maid_uniform_apron'>>
<<elseif setup.inWardrobe('maid_uniform_apron')>>
<<wardrobeToItem 'maid_uniform_apron'>>
<</if>>
<<if !setup.checkItemOwned('maid_headdress')>>
<<addItem 'maid_headdress'>>
<<elseif setup.inWardrobe('maid_headdress')>>
<<wardrobeToItem 'maid_headdress'>>
<</if>>
<<if !setup.checkItemOwned('mary_janes_black')>>
<<addItem 'mary_janes_black'>>
<<elseif setup.inWardrobe('mary_janes_black')>>
<<wardrobeToItem 'mary_janes_black'>>
<</if>>
<<if !setup.checkItemOwned('thigh_stockings_white')>>
<<addItem 'thigh_stockings_white'>>
<<elseif setup.inWardrobe('thigh_stockings_white')>>
<<wardrobeToItem 'thigh_stockings_white'>>
<</if>>
<<wearItemSet 'maid_basic_black' true>>
<<wearItem 'mary_janes_black' true>>
<<wearItem 'thigh_stockings_white' true>>
<<wearItem 'maid_uniform_black' true>>
<<if $player.sec_style.clothing.maid == "">>
<<set $player.sec_style.clothing.maid = "money">>
<<setThreshold 'feminization' 'maid_feminization' 'waitress_maid'>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_in'] 'latex_outfit' _nextDate>>
<<set $clothSets.push({
"name":"Maid Outfit",
"data": ["maid_uniform_black", 'maid_uniform_apron', 'maid_headdress', 'mary_janes_black', 'thigh_stockings_white'],
"important":true,
"type" : "maid"
})>>
<</if>>
<<set $player.flags.maidcafe.stage = 1>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('bunny')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('bunny')>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('bunny')>>
<<set _location = "./images/locations/cafe_changing.png">>
<<set $npc_waitress.profile = true>>
<<else>>
<<set _location = "./images/locations/cafe_backroom.png">>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _location>>
<div id="invframe" class="scrolltext">
<<if $scene.job>>
<<=setup.getNpcName('npc_butler', 'formal')>> smiles pleasantly.<br>
<br>
"@@.npc_butler;Wonderful. You will, of course, be needing a proper uniform so if you would please go with <<=setup.getNpcName('npc_waitress', 'first')>>, she will help you with that and get you on the road towards your new job.@@"<br>
<br>
Exchanging <<if !$npc_butler.fem>>a bow for two <</if>>curtsies, <<=setup.getNpcName('npc_butler', 'formal')>> dismisses yourself and <<=setup.getNpcName('npc_waitress', 'first')>> as the latter escorts you back to the other corner of the kitchen where you find a small changing room.<br>
<br>
"@@.npc_waitress;Alright, so, obviously the work uniform here is a maid's outfit — we'll provide a basic one, but you are free to alter it or obtain your own so long as it fits with the overall aesthetic.@@"<br>
<br>
She has you strip then passes a hand-held scanner over your body.<br>
<br>
"@@.npc_waitress;There we go, uploading your measurements into the system and... boop! Oh, I guess we haven't been introduced — my name is <<=setup.getNpcName('npc_waitress', 'full_formal')>>. A lot of clients like using titles, but among the staff we mostly just use first names, so you can call me <<=setup.getNpcName('npc_waitress', 'first')>>.@@"<br>
<br>
As she talks, some strange sounds emanate from a large wardrobe in the corner and as she finishes it opens to reveal a cute black and white maid's outfit similar to what <<=setup.getNpcName('npc_waitress', 'first')>> is wearing.<br>
<br>
"@@.npc_waitress;Here we go, your first maid outfit! Go ahead and slip it on.@@"<br>
<br>
As promised, the outfit is perfectly sized to your measurements and you can't help but admire yourself in a nearby mirror.<br>
<br>
<<if setup.getTotalValue("feminization") > 15>>
<<printThought "Wow, I look so wonderful and cute!">>
<<elseif setup.getTotalValue("feminization") > 10>>
<<printThought "Wow, this makes me look really cute and feminine...">>
<<else>>
<<printThought "Woah, I look way too cute and feminine, this is embarrassing.">>
<</if>>
<br><br>
"@@.npc_waitress;Lovely! You're definitely going to fit in around here!@@"<br>
<br>
<<=setup.getNpcName('npc_waitress', 'first')>> stands behind you and you look at the paired reflection of a couple of cute maids, a perfect picture of why this cafe is patronised.<br>
<br>
"@@.npc_waitress;Alright, well, that'll do it for today, when you're ready to start working just come on back with an appropriate outfit, there will be some training and then you'll be ready to wait on customers!@@"<br>
<br>
You thank her as she insists that you wear the maid outfit out "@@.npc_waitress;To get used to it,@@" she says.<br>
<br>
Walking out through the restaurant, you can't help but notice several approving glances from customers, but you hurry on your way.
<<else>>
<<=setup.getNpcName('npc_butler', 'formal')>> frowns slightly, clearly annoyed at your having wasted <<his npc_butler>> time even if such disapproval does not affect the tone of <<his npc_butler>> response.<br>
<br>
"@@.npc_butler;Ah, I am sorry to hear that. Well, if you ever wish to change your mind do feel free to return.@@"<br>
<br>
Exchanging <<if !$npc_butler.fem>>a bow for two <</if>>curtsies, <<=setup.getNpcName('npc_butler', 'formal')>> dismisses yourself and <<=setup.getNpcName('npc_waitress', 'first')>> as the latter escorts you back out of the cafe.
<</if>>
<br><br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: sneak into maid back room
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'maid_basic_black'>>
<<wearItemSet 'maid_basic_black'>>
<<setThreshold 'feminization' 'maid_feminization' 'waitress_maid'>>
<<if !$player.sec_style.clothing.maid>>
<<set $player.sec_style.clothing.maid = "enthusiast">>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_in'] 'latex_outfit' _nextDate>>
<<set $clothSets.push({
"name":"Maid Outfit",
"data": ['maid_uniform_black', 'maid_uniform_apron', 'maid_headdress'],
"important":true,
"type" : "maid"
})>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You glance around to make sure the coast is clear, but all the maidtresses are so busy that none are paying attention as you dart into the back room and take a moment to admire the maid uniform.<br>
<br>
Made of fine satin the outfit feels as wonderful as it looks, and you can't stop yourself from trying it on, admiring your appearance in the nearby mirror when you are suddenly startled by one of the staff.<br>
<br>
"@@.npc_waitress;Hey! What the hell! We're swamped out here! This is no time to admire yourself in the mirror — no matter how cute you may look! We've got tables to wait!@@"<br>
<br>
You can't think of anything to talk your way out of what would otherwise look like theft and you soon find yourself press-ganged into working, a tray shoved into your hands as the waitress sends you off to your first table...<br>
<br>
[<<moveTo "event_maid_cafe_maidery_intro_2" "Get to work!" 1800 "<<set $scene.accept=true>>">>]
</div>/*#
#desc: job intro training for maid cafe - test heels
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.locations.gym && $gym.classes.high_heel.level < 1>>
<<set $gym.classes.high_heel.level = 1>>
<</if>>
<<if $player.sec_style.body.name == "" && $now.getUTCDay() < 25 && !$npc_landlord.flags.insuranceDecline>>
<<set _nextDate = setup.setNextDate($now, 2, 15, 0)>>
<<addEvent 'insurance_alt' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_inside.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
Business being relatively light, <<=setup.getNpcName('npc_maid', 'first')>> takes time to run you through the basics of the job. She starts off by taking you out into the mall, setting a brisk, prim pace as you make a loop while she pays particular attention to how you handle yourself walking around in heels.<br>
<br>
<<if setup.getTotalValue("heels") < setup.getItemObjFromType("shoes").heels.difficulty>>
You wobble around atop heels too steep for your skills and <<=setup.getNpcName('npc_maid', 'first')>> frowns.<br>
<br>
"@@.npc_maid;I am sorry to say that I do not think you can work like this. High heels are a part of our standard uniform, you need to either practice or find something easier to walk it, but still appropriate to the job.<<if $player.locations.gym>> You ever been to the gym, Hard Pump? They've got a high heel fitness class that would do you good.<</if>>@@"<br>
<br>
Thanking <<=setup.getNpcName('npc_maid', 'first')>> for her time, you watch her disappear back into the maid cafe as you reflect on the additional practice you need to do.<br>
<br>
<<if !$player.locations.gym>>
<<printThought "Maybe I need to get in better shape... I should get together with <<=setup.getNpcName('npc_admin', 'first')>>, <<he npc_admin>> damn near lives at the gym!">>
<<else>>
<<printThought "I really should make sure I can walk in my heels before wearing them...">>
<</if>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<<elseif setup.getTotalValue("heels") < 8>>
Though you are adept enough with your current heels, the volume of walking that <<=setup.getNpcName('npc_maid', 'first')>> puts you through has your feet aching, your difficulty beginning to show in your gait.<br>
<br>
"@@.npc_maid;Sorry, but walking in heels is a key part of your job. You seem to have some baseline competency — which is better than some people we know, but, well, that isn't enough when a slip could lead to spilling hot coffee all over a customer. Get in some more practice and come back later.<<if $player.locations.gym>> You ever been to the gym, Hard Pump? They've got a high heel fitness class that would do you good.<</if>>@@"<br>
<br>
Thanking <<=setup.getNpcName('npc_maid', 'first')>> for her time, you watch her disappear back into the maid cafe as you reflect on the additional practice you need to do.<br>
<br>
<<if !$player.locations.gym>>
<<printThought "Maybe I need to get in better shape... I should get together with <<=setup.getNpcName('npc_admin', 'first')>>, <<he npc_admin>> damn near lives at the gym!">><br>
<br>
<</if>>
[<<moveTo "room_mall" "Return to the mall." 30>>] <<hint $options "You need at least 8 skill in heels.">>
<<else>>
Having finished your circuit of the mall <<=setup.getNpcName('npc_maid', 'first')>> takes a moment in front of Cafe Newtype to congratulate you.<br>
<br>
"@@.npc_maid;Good, good, you know how to properly comport yourself in heels, unlike a certain someone we know.@@"<br>
<br>
You immediately recall <<=ps(setup.getNpcName('npc_technician', 'first'))>> frequent complaints about the heel dress code at work — and that with a job that's mostly sitting down!<br>
<br>
"@@.npc_maid;Always remember that we are selling a fantasy. The outfits, the heels, the femininity... certainly the coffee is good, but most of our customers are here for more than just that, and it is your responsibility to deliver.@@"<br>
<br>
You nod in acknowledgement as you follow her back into the cafe for the next part of your instruction.<br>
<br>
[<<moveTo "event_maid_cafe_training_2" "Continue." 600>>]
<</if>>
</div>/*#
#desc: job intro training for maid cafe - test skilled/stamina
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
Back in the cafe <<=setup.getNpcName('npc_maid', 'first')>> loads you up with a tray and cups filled with water to have you walk around, delivering each cup to a different empty table.<br>
<br>
Even with the sparse customers the task requires you to be nimble on your feet to avoid running into one of the other bustling maids, as well as keep balanced lest you spill anything.<br>
<br>
<<if setup.getTotalValue("stamina") < 7 || setup.getTotalValue("dexterity") < 7>>
<<if setup.getTotalValue("stamina") < 7 && setup.getTotalValue("dexterity") < 7>>
Trying to keep the surprisingly heavy tray of drinks balanced, while also making your way through the cafe is far more physically challenging than you would have expected.<br>
<br>
You end up slopping a bit on the tray as you struggle to adjust to the weight shift from removing the first drink, and your arm is already aching with fatigue by the time you finish your second loop to pick up all the drinks you distributed.
<<elseif setup.getTotalValue("stamina") < 7>>
You're nimble enough to keep from spilling a single drop as you zip around the cafe delivering the training cups of water, but the effort is far more taxing than it should be.<br>
<br>
By the time you finish circling back through to collect the drinks you deposited earlier you're breathing a bit heavy, your arm stiffening up as you continue to balance the surprisingly-heavy tray of drinks.
<<else>>
You have more than enough stamina to carry the heavy tray of drinks, but the actual navigation... well, that's a different issue.<br>
<br>
Struggling with the narrow space between tables and having to work around the other waitresses you end up spilling onto your tray, not quite figuring out how to keep everything balanced while you remove one drink to "deliver" it to an empty table.
<</if>>
<br><br>
<<=setup.getNpcName('npc_maid', 'first')>> shakes her head. "@@.npc_maid;Sorry, but though you may be a fit for the role in terms of appearance, you seem to be lacking in the physicality required to work a full shift. Being a maid isn't just being cute, it's hard work and you need endurance plus be nimble enough to navigate a crowded cafe. Come on back once you're in better shape and you're ready to properly finish your training.@@"<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>] <<hint $options "You need at least 8 each dexterity and stamina.">>
<<else>>
Fortunately you are more than up to the task, zipping between tables to deliver the mock orders and then making another pass to pick everything back up, not fatigued in the slightest.<br>
<br>
"@@.npc_maid;Good job, looks like you've got what it takes physically — in both senses of the word, to work here. Now there's just one more hurdle, <<=setup.getNpcName('npc_butler', 'other')>> is going to test your mind.@@"<br>
<br>
You curtsy in thanks, looking up to realise that <<=setup.getNpcName('npc_butler', 'formal')>> has appeared and is sitting at a booth in the far corner, waving the two of you over.<br>
<br>
"@@.npc_maid;Alright, this is the final test — just go over there and take <<his npc_butler>> order.@@"<br>
<br>
[<<moveTo "event_maid_cafe_training_3" 'Head over to where <<=setup.getNpcName("npc_butler", "formal")>> is sitting.' 600>>]
<</if>>
</div>/*#
#desc: job intro training for maid cafe - test intelligence/has pen
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("smart") > 10 || setup.checkItemInInventory("fountain_pen")>>
<<set $player.flags.maidcafe.stage = 2>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_butler")>>
<div id="invframe" class="scrolltext">
You walk over to where <<=setup.getNpcName('npc_butler', 'formal')>> is seated and drop into a curtsy as you ask
<<if setup.getTotalValue("submission") > 10>>
"@@.pc;What can I do to serve you today, <<sir npc_butler>>?@@"<br>
<br>
<<=setup.getNpcName('npc_butler', 'formal')>> smiles at your submission and begins dictating a quite complicated order.
<<else>>
"@@.pc;What can I get for you today, <<sir npc_butler>>?@@"<br>
<br>
<<=setup.getNpcName('npc_butler', 'formal')>> gives an acknowledging nod and begins dictating a quite complicated order.
<</if>>
<br><br>
<<if setup.getTotalValue("smart") > 10 || setup.checkItemInInventory("fountain_pen")>>
<<if setup.getTotalValue("smart") > 7 && setup.checkItemInInventory("fountain_pen")>>
Thinking fast you pull out the pen <<=setup.getNpcName('npc_manager', 'formal')>> gave you what seems so long ago, writing down the order and repeating it back for confirmation before zipping off to the counter to get it filled.
<<elseif setup.checkItemInInventory("fountain_pen")>>
You're momentarily stumped as to how you could possibly keep track of the complicated order when you remember the pen <<=setup.getNpcName('npc_manager', 'formal')>> gave you way back when. Producing the pink pen you quickly write down the order, reading it back for confirmation before heading for the counter to get things filled.
<<else>>
Despite the dizzying order you're able to keep all the details straight in your head, quickly repeating things back to <<=setup.getNpcName('npc_butler', 'formal')>> confirm before zipping back to the counter to get it filled.
<</if>>
<br><br>
Striding gracefully through the cafe with tray held high you gently place each part of <<=ps(setup.getNpcName('npc_butler', 'formal'))>> order on the table. Taking a moment to review things <<he npc_butler>> smiles up at you with a nod.<br>
<br>
"@@.npc_butler;Very well done, I think this more than proves that you are ready to join us as another lovely maid. Welcome to the team and I look forward to seeing you for your first shift. Note that, in exchange for the flexibility of being able to work a shift at your leisure any time we are open your base pay will be somewhat modest — <<=$player.flags.maidcafe.base_pay>> per hour shift, plus whatever tips you manage to earn.@@"<br>
<br>
You drop into a thankful curtsy before turning away. <<=setup.getNpcName('npc_maid', 'first')>> gives you a congratulatory high-five on the way out.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<<else>>
You quickly lose track of <<=ps(setup.getNpcName('npc_butler', 'formal'))>> complicated order, forced to have <<him npc_butler>> go through the whole thing multiple times and then still missing a couple parts when you try to repeat it back at the counter.<br>
<br>
Shaking <<his npc_butler>> head in disappointment <<=setup.getNpcName('npc_butler', 'formal')>> renders the bad news.<br>
<br>
"@@.npc_butler;While it seems that you are quite up to most of the job's responsibilities you need to be able to perfectly fulfil customer orders, even when they become quite intricate. Note that I am not requesting the powers of a mentalist — many of my girls keep a pen and paper to write things down, which is a precise, classy method that you might consider the next time you attempt to prove your readiness.@@"<br>
<br>
You thank <<=setup.getNpcName('npc_butler', 'formal')>> for the feedback, and <<=setup.getNpcName('npc_maid', 'first')>> for her assistance, giving a final parting curtsy before heading off on your way.<br>
<br>
<<printThought "Damn, I was so close. Who would have though waitressing would be so complicated?">><br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>] <<hint $options "You need 10 intelligence or some way to keep notes.">>
<</if>>
</div>/*#
#desc: check if you can work at the maid cafe
#status: FINISHED 0.7.2.0
#*/
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<if _nextdate != null && setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<</if>>
<<if getUTCHours($now) < 8 || getUTCHours($now) > 22>>
[@@.link_locked;The Maid Cafe is closed.@@]
<<else>>
<<set _timeEnoughToWork = _nextdate == null || !setup.compareDay($now,_nextdate) || _tmpSeconds > 4000>>
<<if _timeEnoughToWork>>
[<<moveTo "event_maid_cafe_changingroom" "Pop in to the Maid Cafe changing room." 60>>]<br>
<<if setup.checkVisibleClothingTag('maid') <= 60 && !setup.checkItemTypeTag('dress', ['bunny']) && setup.checkVisibleClothingTag('bunny') < 70 && !(setup.checkItemTypeTag('shirt', ['bunny']) && setup.checkItemTypeTag('stockings', ['bunny']))>>
[@@.link_locked;You aren't properly attired to work at the maid cafe today.@@]
<<elseif $player.timebased.fatigue > .75*$player.timebased.fatiguemax>>
[@@.link_locked;You are too tired to work at the Maid Cafe.@@]
<<elseif $fetish.pet_play && (setup.checkItemTypeTag('plug', ['bunny']) || setup.checkItemTypeTag('headdress', ['bunny'])) && !$player.flags.maidcafe.bunny>>
[<<moveTo "event_maid_cafe_work_bunny_first_1" "Work at Cafe Newtype for an hour." 60>>]
<<else>>
[<<moveTo "event_maid_cafe_work_root" "Work at Cafe Newtype for an hour." 60>>]
<</if>>
<<else>>
You do not have time to work a shift before your date and it would be poor form to be working when you are supposed to be meeting a friend.<br>
<br>
[<<moveTo "event_maid_cafe_changingroom" "Pop in to the Maid Cafe changing room." 60>>]
<</if>>
<</if>>/*#
#desc: work at the maid cafe
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plugID = setup.getItemFromType('plug')>>
<<if $scene.plugID != "">>
<<set $scene.plugObj = setup.getItemObj($scene.plugID)>>
<</if>>
<<set $scene.gothMaid = setup.getCurrentMakeup() == "expertmakeup" && (
setup.isItemEquipped('maid_uniform_apron') && setup.isItemEquipped('maid_headdress') && setup.isItemEquipped('maid_uniform_black') ||
setup.isItemEquipped('maid_headdress_latex_black') && setup.isItemEquipped('maid_uniform_latex_black') ||
setup.isItemEquipped('maid_uniform_slutty_apron') && setup.isItemEquipped('maid_uniform_gloves_slutty') && setup.isItemEquipped('maid_uniform_slutty') || setup.isItemEquipped('maid_uniform_pvc_black') && setup.isItemEquipped('maid_ultimate_headdress_black')
) &&
(setup.isItemEquipped('maid_heels_extreme_black') || setup.isItemEquipped('mary_janes_black') || setup.isItemEquipped('ballet_boots_black'))
>>
<<set $scene.sissyMaid = (setup.getCurrentMakeup() == "sissy_doll" || setup.getCurrentMakeup() == "ultimatebimbo") && (
setup.isItemEquipped('maid_uniform_apron') && setup.isItemEquipped('maid_headdress_pink') && setup.isItemEquipped('maid_uniform_pink') ||
setup.isItemEquipped('maid_headdress_latex_pink') && setup.isItemEquipped('maid_uniform_latex_pink') ||
setup.isItemEquipped('maid_uniform_slutty_apron') && setup.isItemEquipped('maid_uniform_gloves_slutty_pink') && setup.isItemEquipped('maid_uniform_slutty_pink') ||
setup.isItemEquipped('maid_uniform_pvc_pink') && setup.isItemEquipped('maid_ultimate_headdress_pink')
) &&
(setup.isItemEquipped('maid_heels_extreme_pink') || setup.isItemEquipped('mary_janes_pink') || setup.isItemEquipped('ballet_boots_pink') || setup.isItemEquipped('bed_heels_pink')) && (setup.isItemEquipped('choker_sissy') ||setup.isItemEquipped('secure_sissy_choker') || $player.sec_style.submission.collar != "")
>>
<<set $scene.catMaid = setup.checkItemTypeTag('headdress', ['cat']) && setup.checkItemTypeTag('plug', ['cat'])>>
<<set $scene.bunnyMaid = setup.checkItemTypeTag('headdress', ['bunny']) && setup.checkItemTypeTag('plug', ['bunny']) && (setup.checkVisibleClothingTag('bunny') >= 65 || setup.checkItemTypeTag('shirt', ['bunny']) && setup.checkItemTypeTag('stockings', ['bunny']))>>
<<set _possibleEvents = ["noevent","pervert","drop"]>>
<<if $npc_technician.flags.spin && $npc_technician.relationship.relationship_stage >= 1 && $npc_technician.flags.evil != 1>>
<<set _possibleEvents.push("jay")>>
<</if>>
<<if !State.hasPlayed("event_chess_maidtress")>>
<<set _possibleEvents.push("chess")>>
<</if>>
<<if $scene.gothMaid && !$player.flags.maidcafe.events.goth>>
<<set _possibleEvents.push("goth")>>
<</if>>
<<if $scene.sissyMaid && !$player.flags.maidcafe.events.sissy>>
<<set _possibleEvents.push("sissy")>>
<</if>>
<<if $fetish.pet_play && $scene.catMaid>>
<<set _possibleEvents.push("cat")>>
<</if>>
<<if $fetish.pet_play && $scene.bunnyMaid>>
<<set _possibleEvents.push("bunny")>>
<</if>>
<<if !State.hasPlayed("event_maidcafe_band_1") && $npc_technician.flags.rpg_campaign.penance.maid && State.hasPlayed("event_boymode_date_11")>>
<<set _possibleEvents.push("band")>>
<</if>>
<<if !(setup.getUTCDay($now) == 6 || $npc_barista.stage >= 5 && $npc_barista.stage < 10 || State.hasPlayed("event_boss_destroy_psychiatrist_7"))>>
<<set _possibleEvents.push("candy")>>
<</if>>
<<if !(setup.getUTCDay($now) == 6 || State.hasPlayed("event_destroy_technician_6") || ($currentTasks.hasOwnProperty('technician_cafe_1') && !$currentTasks.technician_cafe_1.finished && setup.daysToDate($now, setup.getTaskDueDate('technician_cafe_1')) == 0) || $npc_technician.flags.evil == 1)>>
<<set _possibleEvents.push("technician")>>
<</if>>
<<if !setup.checkItemTypeWorn("hood")>>
<<set _possibleEvents.push("old_coworker")>>
<</if>>
<<if $scene.hasOwnProperty('events')>>
<<set _possibleEvents.push("noevent")>>
<<set _possibleEvents.push("noevent")>>
<<set _possibleEvents.push("noevent")>>
<</if>>
<<if !setup.checkItemOwned("panties_waitress") && State.hasPlayed("theme_psychiatrist_panties_first_2") && (!State.hasPlayed("event_panties_waitress_1") || random(1,10)< 2)>>
<<set _possibleEvents.push("waitress_panties")>>
<</if>>
<<if !State.hasPlayed("event_destroy_landlord_5") && !($npc_manager.stage == 5 && !(State.hasPlayed("event_surgeon_help_landlord_2") || State.hasPlayed("event_surgeon_help_landlord_miss")))>>
<<set _possibleEvents.push("landlord")>>
<</if>>
<<if State.hasPlayed("event_egg_guard_6_threesomes_1_offer_1") && !State.hasPlayed("event_egg_guard_maidcafe_intro_3_accept")>>
<<set _possibleEvents.push("egg")>>
<</if>>
<<set $scene.event = _possibleEvents.random()>>
<<if !$daily.hasOwnProperty("maidCafeEvents")>>
<<set $daily.maidCafeEvents = []>>
<</if>>
<<if $daily.maidCafeEvents.includes($scene.event)>>
<<set $scene.event = "noevent">>
<</if>>
<<if ($player.flags.maidcafe.times_worked > 5 || setup.checkItemTypeTag('shoes', ['ballet'])) && setup.hasThreshold("heels", "wearing_heels", "expert") && !State.hasPlayed("event_maid_cafe_work_high_heels_1")>>
<<set $scene.event = "high_heels">>
<<elseif setup.checkItemTypeTag('shoes', ['ballet']) && !setup.hasThreshold("heels", "wearing_heels", "final")>>
<<set $scene.event = "ballet_reward">>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
Dressed and ready, you head up to the counter for another shift at the Newtype Maid Cafe.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && random(1,200) < $player.timebased.horny && setup.getEffectivePlugSize() >= setup.getTotalValue("anal")>>
The too-large plug in your ass works in concert with your arousal and the exciting attention of your clientele staring at your cute maid self, a cacophony of distractions that makes focusing on your work quite a challenge.<br>
<br>
[<<moveTo "event_maid_cafe_work_plugged" "Work your shift." 3600>>]
<<else>>
<<set $daily.maidCafeEvents.pushUnique($scene.event)>>
<<switch $scene.event>>
<<case "landlord">>
[<<moveTo "event_maid_cafe_work_landlord" "Work your shift." 900>>]
<<case "old_coworker">>
[<<moveTo "event_maid_cafe_work_old_coworker" "Work your shift." 900 "<<set $scene.firstCoworkerMaid = !State.hasPlayed('event_maid_cafe_work_old_coworker')>>">>]
<<case "technician">>
[<<moveTo "event_maid_cafe_work_technician" "Work your shift." 900>>]
<<case "candy">>
[<<moveTo "event_maid_cafe_work_candy" "Work your shift." 900>>]
<<case "drop">>
[<<moveTo "event_maid_cafe_work_drop_1" "Work your shift." 900>>]
<<case "pervert">>
[<<moveTo "event_maid_cafe_work_pervert_1" "Work your shift." 900>>]
<<case "goth">>
[<<moveTo "event_maid_cafe_work_goth_1" "Work your shift." 2200>>]
<<case "sissy">>
[<<moveTo "event_maid_cafe_work_sissy_1" "Work your shift." 900>>]
<<case "cat">>
[<<moveTo "event_maid_cafe_work_cat_1" "Work your shift." 900>>]
<<case "bunny">>
[<<moveTo "event_maid_cafe_work_bunny_1" "Work your shift." 900>>]
<<case "band">>
[<<moveTo "event_maidcafe_band_1" "Work your shift." 300>>]
<<case "chess">>
<<if !State.hasPlayed("event_maid_cafe_chess_intro")>>
[<<moveTo "event_maid_cafe_chess_intro" "Work your shift." 1800>>]
<<elseif State.hasPlayed("event_maid_cafe_chess_play_maid_final_win_5") && !State.hasPlayed("event_chess_maidtress")>>
[<<moveTo "event_chess_maidtress" "Work your shift." 1800>>]
<<else>>
[<<moveTo "event_maid_cafe_work_default" "Work your shift." 3600>>]
<</if>>
<<case "jay">>
<<if State.hasPlayed("event_maid_cafe_work_boymode_5_promotion_7") && !State.hasPlayed("event_maid_cafe_work_boymode_seduce_3_like_3")>>
<<if State.hasPlayed("event_maid_cafe_work_boymode_seduce_2_anal_4")>>
[<<moveTo "event_maid_cafe_work_boymode_seduce_3_like_1" "Start your shift." 60>>]
<<elseif !State.hasPlayed("event_maid_cafe_work_boymode_seduce_2_anal_4") && State.hasPlayed("event_maid_cafe_work_boymode_seduce_1_intro_3_store") && setup.daysToDate($npc_maid.flags.last_haze, $now) > 7>>
<<if State.hasPlayed("event_maid_cafe_work_boymode_seduce_2_anal_1")>>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_repeat" "Start your shift." 1800>>]
<<else>>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_1" "Start your shift." 1800>>]
<</if>>
<<elseif setup.daysToDate($npc_maid.flags.last_haze, $now) > 7 && !State.hasPlayed("event_maid_cafe_work_boymode_seduce_1_intro_3_store")>>
[<<moveTo "event_maid_cafe_work_boymode_seduce_1_intro_1" "Start your shift." 1800>>]
<<elseif !State.hasPlayed("event_maid_cafe_work_boymode_hazing_1_1")>>
[<<moveTo "event_maid_cafe_work_boymode_hazing_1_1" "Start your shift." 600>>]
<<else>>
[<<moveTo "event_maid_cafe_work_default" "Work your shift." 3600>>]
<</if>>
<<elseif State.hasPlayed("event_maid_cafe_work_boymode_3_8") && !State.hasPlayed("event_maid_cafe_work_boymode_hazing_4_1") && setup.daysToDate($npc_maid.flags.last_haze, $now) > 3>>
<<if !State.hasPlayed("event_maid_cafe_work_boymode_4_1")>>
[<<moveTo "event_maid_cafe_work_boymode_4_1" "Work your shift." 300>>]
<<elseif State.hasPlayed("event_maid_cafe_work_boymode_hazing_3_1")>>
[<<moveTo "event_maid_cafe_work_boymode_hazing_4_1" "Start your shift." 600>>]
<<elseif State.hasPlayed("event_maid_cafe_work_boymode_hazing_2_1")>>
<<if State.hasPlayed("event_maid_cafe_work_ballet_finish")>>
[<<moveTo "event_maid_cafe_work_boymode_hazing_3_1" "Start your shift." 600>>]
<<else>>
[<<moveTo "event_maid_cafe_work_default" "Work your shift." 3600>>]
<</if>>
<<elseif State.hasPlayed("event_maid_cafe_work_boymode_hazing_1_1")>>
[<<moveTo "event_maid_cafe_work_boymode_hazing_2_1" "Start your shift." 120>>]
<<else>>
[<<moveTo "event_maid_cafe_work_boymode_hazing_1_1" "Start your shift." 600>>]
<</if>>
<<elseif State.hasPlayed("event_maid_cafe_work_boymode_2_3") && !State.hasPlayed("event_maid_cafe_work_boymode_3_8") && ($now.getUTCDay() == 0 || $now.getUTCDay() == 6)>>
[<<moveTo "event_maid_cafe_work_boymode_3_1" "Start your shift." 300>>]
<<elseif State.hasPlayed("event_maid_cafe_work_boymode_1_6") && !State.hasPlayed("event_maid_cafe_work_boymode_2_3") && setup.checkItemTypeWorn("corset")>>
[<<moveTo "event_maid_cafe_work_boymode_2_1" "Work your shift." 300>>]
<<elseif !State.hasPlayed("event_maid_cafe_work_boymode_1_6")>>
[<<moveTo "event_maid_cafe_work_boymode_1_1" "Work your shift." 300>>]
<<else>>
[<<moveTo "event_maid_cafe_work_default" "Work your shift." 3600>>]
<</if>>
<<case "high_heels">>
[<<moveTo "event_maid_cafe_work_high_heels_1" "Work your shift." 900>>]
<<case "ballet_reward">>
<<if State.hasPlayed("event_maid_cafe_work_high_heels_1")>>
<<=setup.getNpcName("npc_butler","formal")>> notes your steep ballet boots with a smile. "@@.npc_butler;Taking a shot at a shift in ballet heels? Wonderful, just remember to pay attention to your body. If you start feeling unsteady, stop, I will not have you taking a tumble mid-shift!@@"<br>
<br>
<<set _duration=3600*(setup.getTotalValue("heels")-10)/10>>
[<<moveTo "event_maid_cafe_work_ballet_1" "Begin a ballet shift." _duration>>]
<<else>>
You're about to start working when a fellow maidtress pauses and glances at your towering heels.<br>
<br>
"@@.npc_waitress;Hey, those heels are a bit... well, we're carrying hot drinks around, y'know? Still, I'm impressed,have you talked to <<=setup.getNpcName('npc_shoestore_manager', 'first')>> over at <<printShopName 'mall_shoe_store'>>? Stuff that high is totally her jam.@@"<br>
<br>
[<<moveTo "event_maid_cafe_changingroom" "Head to the changing room." 60>>]<br>
[<<moveTo "room_mall_cafe" "Maybe you won't work today." 60>>]
<</if>>
<<case "waitress_panties">>
You've barely started your shift when you hear a loud swear and spin to see <<=setup.getNpcName("npc_waitress","first")>> has just been the unfortunate victim of a large spill, the front of her skirt and apron dripping with coffee as she heads for the back room.<br>
<br>
<<printThought "Guess I'm not the only spill magnet...">><br>
<br>
[<<moveTo "event_panties_waitress_1" "Go see if she needs help." 180>>]<br>
[<<moveTo "event_maid_cafe_work_default" "Continue working." 3600>>]
<<case "egg">>
[<<moveTo "event_egg_guard_maidcafe_intro_1" "Work your shift." 900>>]
<<case "noevent">>
[<<moveTo "event_maid_cafe_work_default" "Work your shift." 3600>>]
<<default>>
ERROR: unexpected scene.event <<=$scene.event>>
<</switch>>
<</if>>
</div>/*#
#desc: work at the maid cafe
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shoes = setup.getItemObjFromType("shoes")>>
<<set $scene.heelsDiff = $scene.shoes.heels.difficulty>>
<<set $player.flags.maidcafe.times_worked += 1>>
<<applyExperience 'heels' $scene.heelsDiff 'normal' $EXPOSED>>
<<applyExperience 'stamina' 8 'normal' $EXPOSED>>
<<set $scene.dexChallenge = Math.min($scene.heelsDiff + 2, setup.getTotalValue("dexterity"))>>
<<applyExperience 'dexterity' $scene.dexChallenge 'normal' $EXPOSED>>
<<applyExperience 'feminization' 17 'normal' $EXPOSED>>
<<set $scene.maidtype = ''>>
<<if setup.checkItemWorn('maid_ultimate_headdress_pink') && setup.checkItemWorn('maid_uniform_pvc_pink') || setup.checkItemWorn('maid_ultimate_headdress_black') && setup.checkItemWorn('maid_uniform_pvc_black') >>
<<set $scene.maidtype = 'ultimate'>>
<<set $scene.tips = $player.flags.maidcafe.base_pay*.3>>
<<elseif setup.checkVisibleClothingTag('latex') > 60>>
<<set $scene.maidtype = 'latex'>>
<<set $scene.tips = $player.flags.maidcafe.base_pay*.25>>
<<elseif setup.checkVisibleClothingTag('goth') > 60>>
<<set $scene.maidtype = 'goth'>>
<<set $scene.tips = $player.flags.maidcafe.base_pay*.2>>
<<elseif setup.checkVisibleClothingTag('sissy') > 60 || setup.checkItemWorn("sissy_dress_pink")>>
<<set $scene.maidtype = 'sissy'>>
<<set $scene.tips = $player.flags.maidcafe.base_pay*.2>>
<<elseif setup.checkVisibleClothingTag('slutty') > 60>>
<<set $scene.maidtype = 'sexy'>>
<<set $scene.tips = $player.flags.maidcafe.base_pay*.2>>
<<else>>
<<set $scene.maidtype = 'normal'>>
<<set $scene.tips = $player.flags.maidcafe.base_pay*.1>>
<</if>>
<<if $scene.catMaid>>
<<set $scene.maidtype = 'cat'>>
<<set $scene.tips = $player.flags.maidcafe.base_pay*.2>>
<<elseif $scene.bunnyMaid>>
<<set $scene.maidtype = 'bunny'>>
<<set $scene.tips = $player.flags.maidcafe.base_pay*.2>>
<</if>>
<<set $scene.plugID = setup.getItemFromType("plug")>>
<<if setup.checkItemTypeWorn("plug")>>
<<set $scene.tips *= 1+ (setup.getEffectivePlugSize()/10)>>
<</if>>
<<if setup.checkItemTypeWorn("hood") && !setup.checkItemTypeTag('hood', ['openFace'])>>
<<set $scene.tips *= 1.2>>
<<set $scene.hoodBonus = true>>
<<else>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<<if $player.makeup.messed >= 25 || ['ultimatebimbo', 'nomakeupmakeup', "camgirl", "egirl", ''].includes($scene.makeup)>>
<<set $scene.tips *= .9>>
<<elseif ['expertmakeup', 'qtpie'].includes($scene.makeup)>>
<<set $scene.tips *= 1.2>>
<<elseif ['sissy_doll', 'moviestar'].includes($scene.makeup)>>
<<set $scene.tips *= 1.3>>
<<set $scene.makeupbonus = true>>
<<else>>
<<set $scene.tips *= 1.1>>
<</if>>
<</if>>
<<set $scene.breastBonus = setup.getEffectiveBreastSize() > 3>>
<<if $scene.breastBonus>>
<<set $scene.tips *= (1 + $player.body.breastsize[0]/100)>>
<</if>>
<<if setup.checkItemTypeWorn("corset")>>
<<set $scene.tips *= (1 + $player.timebased.tightlacing/100)>>
<<set $scene.corsetBonus = true>>
<</if>>
<<set $scene.nailsBonus = $player.nails.style != "">>
<<if $scene.nailsBonus>>
<<if $player.nails.hasOwnProperty('length')>>
<<set $scene.tips *= (1 + (1+$player.nails.length)/20)>>
<<else>>
<<set $scene.tips *= 1 + 1/20>>
<</if>>
<<elseif !setup.isBodySlotVisible("hands")>>
<<set $scene.tips *= 1 + 1/20>>
<</if>>
<<set $scene.balletbonus = setup.checkItemTypeTag('shoes', ['ballet']) && State.hasPlayed("event_maid_cafe_work_ballet_finish")>>
<<if $scene.balletbonus>>
<<set $scene.tips *= 1.1>>
<</if>>
<<if ($scene.hoodBonus || $scene.makeupbonus) && $scene.corsetBonus && $scene.breastBonus && ($scene.nailsBonus || !setup.isBodySlotVisible("hands"))>>
<<set $scene.looksbonus = true>>
<</if>>
<<set $scene.tips = Math.floor($scene.tips)>>
<<addCredits `$player.flags.maidcafe.base_pay + $scene.tips`>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
The rest of your shift at the Maid Cafe passes uneventfully, you clock out pocketing your base pay of <<=$player.flags.maidcafe.base_pay>> and another <<=$scene.tips>> credits in tips.<br>
<br>
<<if $scene.plugID != "">>
Working with a plug stimulating your rear hole had you feeling excited and aroused, lending a bit of an extra skip to your step and seeming to have definitely earned you larger tips in proportion to its size.<br>
<br>
<</if>>
<<if setup.checkItemTypeWorn("hood") && !setup.checkItemTypeTag('hood', ['openFace'])>>
Your hood lent you a bit of anonymised mysteriousness... which some customers seem to have really appreciated, judging by your tips.
<<else>>
<<if $scene.makeup == ''>>
<<printThought "I wonder if I'd get better tips if I wore makeup?">>
<<elseif $scene.makeup == 'nomakeupmakeup'>>
<<printThought "I wonder if I'd get better tips if I wore visible makeup?">>
<<elseif $player.makeup.messed >= 25>>
You get the feeling that your sloppy makeup has depressed your tips.
<<elseif $scene.makeup == 'ultimatebimbo'>>
Wearing full-on bimbo makeup seems to have put off most of your customers, depressing your tips.
<<elseif $scene.makeup == 'moviestar'>>
Your immaculate moviestar makeup seems to have increased your tips.
<<elseif $scene.makeup == 'sissy_doll'>>
Your doll-like makeup seems to have increased your tips.
<<else>>
Glancing around, you're glad you wore makeup, though you still feel a bit inadequate compared to the stylistic perfection of some of your fellow maids. Still, had you gone without you're certain your tips would have been even lower.
<</if>>
<</if>>
<br><br>
<<if $scene.looksbonus>>
There's no mistaking how womanly you look, the lovely combination of your perfect nails, lovely breasts and corset-enhanced waist enhancing the fantasy for your customers, and with it, your tips.
<<else>>
<<if $scene.corsetBonus>>
There's no mistaking the way customers stare at your corset-enhanced curves and you are certain it has improved your tips.
<<elseif setup.checkItemTypeOwned('corset')>>
You can't help but notice the stunning figures of some of your fellow maids, from the way customers look at them versus yourself you think it might be a good idea to invest in a corset to keep up with the "arms race."
<<else>>
You can't help but gawk at the stunning figures of some of your fellow maids and you wonder how they have obtained such fantastically trim waists...
<</if>>
<br><br>
<<if $scene.breastBonus>>
Your ample breasts can't help but draw attention, and attention means tips.
<<else>>
Your less than eye-catching chest seems to depress customer interest and you have a feeling that having more of a rack would lead to better tips.
<</if>>
<br><br>
<<if $scene.nailsBonus>>
Your perfect nails give a dash of beautiful class each time you place an order in front of a customer.
<<elseif setup.isBodySlotVisible("hands")>>
Your drab, unadorned nails are a bit of a negative contrast to your overall feminine mien.
<<else>>
Your plain nails are safely hidden away beneath your gloves.
<</if>>
<</if>>
<br><br>
<<switch $scene.maidtype>>
<<case 'ultimate'>>
Everyone from your fellow maids to customers you aren't even waiting on seems transfixed by your outfit. It is certainly not as salacious as some of your coworkers, but in terms for over the top maid perfection... you turn heads.
<<case 'goth'>>
Your goth-inspired take on a maid outfit draws smiles of approval from customers.
<<case 'sexy'>>
Though you catch the odd glance of jealousy from some of your more modest coworkers, there is no doubt that your more salacious take on a "maid outfit" garners approval from customers.
<<case 'sissy'>>
Your poofy pink maid outfit brings a smile to your customers.
<<case 'latex'>>
The occasional squeak of your tight latex maid outfit draws some special attention from your customers.
<<case 'normal'>>
Your basic maid attire blends in with the rest of the waitstaff.
<<case 'cat'>>
Your cute kitty-maid look; combined with your adorable matching behaviour, earns you some additional tips.
<<case 'bunny'>>
Your cute <<if setup.checkVisibleClothingTag('reverse_bunny') > 50>>reverse <</if>>bunny suit delights your customers and you earn some additional tips.
<</switch>>
<br><br>
<<if $scene.makeupbonus && $scene.corsetBonus && !($scene.nailsBonus || !setup.isBodySlotVisible("hands")) && $player.sec_style.clothing.nails == "">>
As you reach the end of another shift, you head for the small employee lounge and collapse with a sigh. You had no idea being on your feet for so long could be that tiring! Sinking into the over-stuffed chair you don't notice someone else enter until <<=setup.getNpcName("npc_butler","formal")>> appears standing over you.<br>
<br>
"@@.npc_butler;Well done. I know I demand a lot from my girls but you really showed yourself, both in training and today. That said I thought I'd extend a little offer — I noticed you don't paint your nails. While I try to strike a balance between high standards and letting my employees express themselves I will note that customers seem to prefer the look of a pair of shiny, perfect fingers placing their drinks in front of them. As extra encouragement, I'll extend a one-time offer of a bonus of twenty credits and complimentary work if you'd like to get your nails done right here and now.@@"<br>
<br>
[<<moveTo "event_nails_money_1" "Say sure." 60>>]<br>
[<<moveTo "room_mall" "Decline." 60>>]
<<else>>
<<if $scene.balletbonus>>
Finishing another shift wearing ballet boots sees your pay boosted commensurately. <<=setup.getNpcName("npc_butler","formal")>> nods at you in admiration and you can notice more than a few of your fellow maidtresses eyeing your towering heels with interest.<br>
<br>
<</if>>
<<include maidCafeWork>>
<br><br>
<<if $npc_technician.relationship.relationship_stage >= 2 && $now.getUTCDay() == 6 && $now.getUTCHours() < 18 && $currentTasks.hasOwnProperty('technician_roleplay_1') && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_1')) == 0 && !($currentTasks.hasOwnProperty("technician_brunch") && !$currentTasks.technician_brunch.finished) && (random(1,2) == 1 || (State.hasPlayed("event_technician_maid_cafe_2") && random(1,10) == 1)) && (!$currentTasks.hasOwnProperty("technician_cafe_1") || $currentTasks.technician_cafe_1.finished)>>
[<<moveTo "event_technician_maid_cafe_1" "Return to the mall." 30>>]
<<else>>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<</if>>
<</if>>
</div>/*#
#desc: work at the maid cafe - technician event
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_technician.relationship.relationship_stage == 0>>
<<set $scene.tip = 20>>
<<addCredits $scene.tip>>
<</if>>
<<set $player.flags.maidcafe.events.technician = true>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.relationship.relationship_stage > 0>>
As you're working your shift, your girlfriend, <<=setup.getNpcName('npc_technician', 'first')>>, walks into the cafe. You shoot her a wave and put in the order for her preferred drink, appearing at her table bearing the fabled Cofferasque just over a minute later.<br>
<br>
Taking her first sip, she smiles blissfully. "@@.npc_technician;You really are just the most wonderful woman.@@" Reaching up she gives you a soft head pat as you blush and bashfully look away.<br>
<br>
"@@.npc_technician;Thank you for the lovely drink, but I wouldn't want to distract you from your important duties,@@" she states with a smile as you curtsy and hurry off to your next customer.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
On her way out, she passes by you, whispering in your ear. "@@.npc_technician;Well done today, slave, you really do make a perfect submissive <<if $fetish.sissy>>sissy-<</if>>maid.@@"<br>
<br>
Weak in the knees, you whisper a response of "@@.pc;Thank you, Mistress.@@"
<<case "sub">>
On her way out, she passes by you, whispering in your ear. "@@.npc_technician;Thank you for that, I'll have to make it up to you later... mistress.@@"<br>
<br>
You smile and whisper back that "@@.pc;You can count on it, slave.@@"
<<case "neutral">>
On her way out, she bids you goodbye, thanking you for the drink and telling you that she's looking forward to spending time together when you aren't working.
<</switch>>
The two of you share a parting kiss before she slips away back to the mall.<br>
<br>
Taking a deep breath, you clear your head and return to your work.
<<else>>
As you're working your shift, your friend, <<=setup.getNpcName('npc_technician', 'first')>>, walks into the cafe. Shooting you a wave she takes a seat in your area and you hurry over to take her order.<br>
<br>
"@@.npc_technician;Lookin' good.@@" She states with a grin. "@@.npc_technician;No more going easy on you though, so... I will have my usual — the Cofferasque!@@"<br>
<br>
You've prepared for this moment and you take a deep breath before responding in a single breath "@@.pc;One venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 3 short sprinkles of ceylon alba cinnamon coming right up, madame.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smiles even wider. "@@.npc_technician;What service! Almost as pretty as you are!@@"<br>
<br>
You blush at the compliment and hurry off to register her order, the barista behind the counter rolling her eyes in recognition before mixing it up.<br>
<br>
Gently placing the cup down on <<=ps(setup.getNpcName('npc_technician', 'first'))>> table a few minutes later she takes an experimental sip as a look of bliss spreads over her face. "@@.npc_technician;Ah, perfection!@@"<br>
<br>
She slides a tip of <<=$scene.tip>> across the table, quite absorbed in her beloved drink.<br>
<br>
You're pretty busy, unable to do much more than say hi as you pass by <<=ps(setup.getNpcName('npc_technician', 'first'))>> table as she finishes up her drink and departs, leaving you to focus on the remainder of your shift.
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 2700>>]
</div>/*#
#desc: work at the maid cafe - barista event
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 10 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 7 'little' $EXPOSED>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*2>>
<<addCredits $scene.bonus_pay>>
<<changeHorny 10>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You're busy working your shift, a bit distracted, in fact, when you approach a new customer to find yourself face to face with <<=setup.getNpcName('npc_barista', 'nickname')>>!<br>
<br>
"@@.npc_barista;Hiya!@@" She says with a grin as you jump slightly and fumble <<if setup.checkItemInInventory("fountain_pen")>>your pen<<else>>a menu<</if>> onto the ground.<br>
<br>
<<if $player.flags.special_skills.sexy_pickup>>
Remembering her prior lesson, you bend at the waist, leaning all the way over to pick up the fallen item and sensuously rising back straight as she looks on with a grin.<br>
<br>
"@@.npc_barista;So hawt, I love it! Anyway, I'd like an Ultra Caramel Frap with extra foam!@@"<br>
<br>
You nod, hurrying off to fulfill her order.
<<else>>
You squat down to pick up your fallen item only for her to stop you with a cough. "@@.npc_barista;Like, what are you doing?@@"<br>
<br>
You glance up, unable to help but notice that she has decided to forgo panties beneath her too-short skirt.<br>
<br>
You stutter that you're picking up your- but she cuts you off, rising to her feet to stand over you.<br>
<br>
"@@.npc_barista;That, like, is no way to pick something up, THIS!@@" Her legs long and straight atop a pair of stiletto heels, she shoves her hips back to present her ass as she bends in half, reaching all the way down to the ground to scoop up your dropped item from right in front of you. Biting her lip she gives you a wink as she slides her hands up her legs as she rises back to full height. "@@.npc_barista;-is how you pick something up.@@" She concludes.<br>
<br>
You blink twice, heart racing a bit after witnessing her brief display as you rise back to your feet.<br>
<br>
Looking you in the eye she drops <<if setup.checkItemInInventory("fountain_pen")>>your pen<<else>>the menu<</if>> onto the ground again. "@@.npc_barista;Now. Do it right.@@"<br>
<br>
You nod, attempting to replicate her display, feeling the heat of other customers' gaze on your presented rear as, surprisingly, you manage to reach all the way down to grab your fallen item, even doing a decent replica of her sensuous rise as you come back up.<br>
<br>
"@@.npc_barista;Much better!@@" She states with a proud grin. "@@.npc_barista;That's, like, the ONLY way to pick things up for girls like us.@@" Plopping back down in her seat she blinks up at you. "@@.npc_barista;I'll take an Ultra Caramel Frap with extra foam. And don't forget your lesson!@@"<br>
<br>
Heart still racing, you nod in acknowledgement. Her display burned into your brain there's no way you'll forget, though replicating it is still a bit of a... yeah. You hurry off to fulfill her order.
<</if>>
<br><br>
Returning with her drink, you hand it to her and she tips it back for a long gulp. Showily licking froth from her lips, she smiles.<br>
<br>
"@@.npc_barista;Mmmm, sweet and creamy, my favourite!@@"<br>
<br>
She hands you payment for the drink plus <<=$scene.bonus_pay>> credits in tip with a wink. "@@.npc_barista;You deserve it, hot stuff, just remember my lesson, okay?@@"<br>
<br>
You nod and flash a smile, heading off towards your next customer while <<=setup.getNpcName('npc_barista', 'nickname')>> returns to enthusiastically slurping her drink.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 2700 "<<set $player.flags.special_skills.sexy_pickup = true>>">>]
</div>/*#
#desc: work at the maid cafe -pick up spoon
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
Going about your duties as a waitress-maid you are in the process of delivering a customer's order when their spoon falls to the ground.<br>
<br>
<<if $player.flags.special_skills.sexy_pickup && setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;You can't pass up an opportunity to sluttily show off.@@]<br>
<<else>>
[<<moveTo "event_maid_cafe_work_default" "Reach down to pick it up." 2640 "<<set $scene.sexy=false>>">>]<br>
<</if>>
<<if $player.flags.special_skills.sexy_pickup>>
[<<moveTo "event_maid_cafe_work_drop_2" 'Bend over to pick it up like <<=setup.getNpcName("npc_barista", "nickname")>> taught you.' 180 "<<set $scene.sexy=true>>">>]
<<else>>
[@@.link_locked;Hmm, I bet there's some sort of secret sexy pick-up method, but if you don't know the trick you'll just fall on your face...@@]
<</if>>
</div>/*#
#desc: work at the maid cafe -pick up spoon
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sexy>>
<<applyExperience 'bimbofication' 10 'very' $EXPOSED>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*2>>
<<set $player.flags.maidcafe.events.spoon_pickup = true>>
<<if !setup.isItemTypeEquipped('panties')>>
<<applyExperience 'humiliation' 13 'very' $EXPOSED>>
<</if>>
<<else>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*1.5>>
<</if>>
<<addCredits $scene.bonus_pay>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sexy>>
Using the special technique <<=setup.getNpcName('npc_barista', 'nickname')>> taught you, you give your customer a wink before bending at the waist to reach down to retrieve the fallen spoon.<br>
<br>
<<if $player.body.breastsize[0] > 0>>
You make sure to give them a nice view down your cleavage before slowly rising back to standing.
<<else>>
You position yourself in profile to give them a better view of your heel-accentuated legs.
<</if>>
<br><br>
"@@.pc;Ooops.@@" You state with a smile. "@@.pc;Let me go fetch you a clean spoon.@@"<br>
<br>
<<if !setup.isItemTypeEquipped('panties')>>
You hear a gasp from somewhere behind you as a customer catches sight of your complete lack of underwear.
<<if setup.getTotalValue("humiliation") > 10>>
<<if setup.getTotalValue("humiliation") > 15>>
<<if $player.flags.humiliationStyle == "brazen">>
You grin with wanton arousal.
<<else>>
You shudder in embarrassed, depraved arousal.
<</if>>
<<else>>
The attention fills you with humiliated arousal.
<</if>>
<<else>>
<<if setup.getTotalValue("humiliation") > 5>>
You shudder in humiliated arousal.
<<else>>
You shudder in humiliation.
<</if>>
<</if>>
<br><br>
<</if>>
You can feel the customer's gaze following you all the way back to the counter as you make sure to keep your gait nice and sexy the whole way, gently placing the spoon back on their table with a smile.<br>
<br>
Moving on to your next table when the customer finally departs, you find a quite substantial tip of <<=$scene.bonus_pay>> left for you.
<<else>>
Squatting down you scoop up the fallen spoon, smiling at your customer and quickly retrieving a fresh, clean utensil from the counter.<br>
<br>
They thank you and you move on to your other tables. When they leave they leave behind a modest tip of <<=$scene.bonus_pay>>.
<br>
<<if $player.flags.special_skills.sexy_pickup>>
<<printThought "Hmm, I wonder if they'd have left more if I used those special techniques <<=setup.getNpcName('npc_barista', 'nickname')>> showed me...">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 2580>>]
</div>/*#
#desc: work at the maid cafe - old coworker
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 8 'very' $EXPOSED>>
<<if State.hasPlayed("event_brazen_choice_8_dude_1") || State.hasPlayed("event_brazen_choice_8_dude_evil_1")>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*1.5>>
<<else>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*2>>
<</if>>
<<addCredits $scene.bonus_pay>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
In the course of your shift, you approach a customer to recognise them as one of your old co-workers from back when you still worked at Cloud Data Service.<br>
<br>
<<if State.hasPlayed("event_brazen_choice_8_dude_1") || State.hasPlayed("event_brazen_choice_8_dude_evil_1")>>
Engrossed in <<his>> phone as you approach to take <<his>> order, the <<man>> looks up with a slight start as <<he>> recognises you.<br>
<br>
<<if $scene.firstCoworkerMaid>>
"@@.generic_male1;Wait, <<=$player.original_first_name>>? Wow, it's really you, but I thought you were working on one of the upper floors now?@@"<br>
<br>
You politely remind <<him>> that it's <<=$player.first_name>> now, and that while being a secretary at Social Interaction Service Syndicate Inc. remains your primary job you enjoy working in the maid cafe part-time to relax and earn a little extra money.<br>
<br>
"@@.generic_male1;Shit, of course... <<=$player.first_name>>. right, I'm incredibly sorry for the mistake, and... wow, you certainly do look the part of a proper maid.@@"<br>
<br>
Thanking <<him>> you take <<his>> order and continue with your work. Busy with other tables you do not get further opportunity to chat, but you do eventually find that <<he>> has left a quite generous tip of <<=$scene.bonus_pay>> behind for you.
<<else>>
"@@.generic_male1;Heya, <<=$player.first_name>>, still working multiple jobs? You know they always talk about beauty rest but with you it seems like industrious cuteness is even better!@@"<br>
<br>
You laugh and thank <<him>> for the compliment, chatting for a few minutes before you are pulled off to another table, returning later to find <<he>> has once again left you a nice <<=$scene.bonus_pay>> tip.
<</if>>
<<else>>
Smiling up at you, it's clear that they don't recognise the "new" you. You smile and curtsy and attend to their order like the good maid that you are. As they leave a tip of <<=$scene.bonus_pay>> behind for you, they give you a funny look.<br>
<br>
"@@.generic_female1;You know, you seem kind of familiar... are you sure we haven't met before?@@"<br>
<br>
You smile and shrug, the fact that an old acquaintance so totally fails to recognise you sending a flutter through your body whilst temporarily robbing you of your voice.
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 2700>>]
</div>/*#
#desc: work at the maid cafe - pervert event
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
As you attend to your maid waitressing duties, you can't help but notice one customer in particular staring at you.<br>
<br>
<<He>> seems fixated upon you, <<his>> gaze clouded with lust and, as you lean down to deliver <<his>> third drink, you notice <<he>> is playing a bit of the old pocket pool under the table.<br>
<br>
You remember the rules of the maid cafe — that flirting is fine, but contact isn't allowed. Technically <<he>> isn't breaking any rules, and <<hes>> being relatively discreet, considering.<br>
<br>
[<<moveTo "event_maid_cafe_work_pervert_2" "Ignore things and just move on with your shift." 120 "<<set $scene.style='ignore'>>">>]<br>
[<<moveTo "event_maid_cafe_work_pervert_2" "Tease <<him>> a bit." 120 "<<set $scene.style='tease'>>">>]<br>
<<if $npc_barkeeper.flags.prostitution.can_work_vip>>
[<<moveTo "event_maid_cafe_work_pervert_2" "Mention that <<he>> can see more of you at The Usual Place..." 120 "<<set $scene.style='prostitute'>>">>]
<<elseif $npc_barkeeper.flags.prostitution.can_work_alley>>
[@@.link_locked;If only you were more established as a prostitute, you could invite <<him>> to visit you at The Usual Place.@@] <<hint $options "A client like this, you'd need to be able to serve VIPs.">>
<</if>>
</div>/*#
#desc: work at the maid cafe - pervert your reaction
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case 'tease'>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*1.5>>
<<case 'prostitute'>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*3>>
<<set $player.flags.maidcafe.events.john = true>>
<<case 'ignore'>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*.5>>
<</switch>>
<<addCredits $scene.bonus_pay>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'tease'>>
Leaning even closer, you whisper in <<his>> ear that <<he>> needs to be careful — after all, if <<he>> makes a mess, you'd have to be a good maid and clean it up.<br>
<br>
As you lean back, <<he>> looks up at you with desperation and softly whimpers. You just put on a cute smile, giving a little wiggle as you wave and continue on to your next table.<br>
<br>
When next you circle back to <<his>> table, you find <<he>> has departed, leaving behind a tip of <<=$scene.bonus_pay>> credits behind for you.
<<case 'prostitute'>>
Leaning even closer, you whisper in <<his>> ear that you'd love to "help" clean <<him>> all up, inside and out; all <<he>> has to do is visit you at The Usual Place and you promise to be <<his>> personal, private maid...<br>
<br>
<<He>> gasps and you can't help but grin at the wet spot at the front of <<his>> jeans.<br>
<br>
"@@.pc;Remember — The Usual Place, ask for <<=$player.first_name>>,@@" you state with a wink as <<he>> weakly nods.<br>
<br>
Returning to your duties you notice <<him>> slip out of the cafe a short time later, finding <<he>> has left a tip of <<=$scene.bonus_pay>> credits behind for you.
<<case 'ignore'>>
You ignore your customer's perversion as you continue on with your duties. When you pass by <<his>> table again you find <<him>> departed with a meager tip of <<=$scene.bonus_pay>> credits left behind.
<<default>>
ERROR: unknown style: <<=$scene.style>>
<</switch>>
<br><br>
[<<moveTo "event_maid_cafe_work_default" "Continue your shift." 2580>>]
</div>/*#
#desc: work at the maid cafe - plug too distracting
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<set $player.flags.maidcafe.events.plugged = true>>
<<applyExperience 'anal' setup.getEffectivePlugSize() 'very' $INCOGNITO>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
With each step you take the plug in your ass rubs against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>, every glance of a lusty customer cranking your arousal even higher, your heart racing as you start to feel a bit light-headed.<br>
<br>
Pushing on with your duties the next thing you know you're waking up in a small changing room, <<=setup.getNpcName('npc_waitress', 'first')>> dabbing your face with a cool cloth.<br>
<br>
"@@.npc_waitress;You okay? Only, well, you fainted right on the floor! And no wonder why, with how over-stimulated you were!@@"<br>
<br>
Regaining your senses you feel quite cold, realising that that this is due to the ice pack placed against your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>.<br>
<br>
"@@.npc_waitress;Working plugged! So daring. I mean, it's not all that uncommon, really, adds a bit of excitement and pep to your step, after all but, well... you need to be more careful. <<=setup.getNpcName('npc_butler', 'other')>> only tolerates that sort of thing if we keep it subtle which, well, passing out mid-shift isn't quite that.@@"<br>
<br>
Feeling a bit better you nod, thanking her for taking care of you.<br>
<br>
"@@.npc_waitress;Of course. We girls gotta stick together, after all. Still, I think you oughta head home and get some rest. You're in no shape to work a shift.@@"<br>
<br>
You'd like to object, but after what happened you have no choice but to agree, thanking her again and fixing your clothes before heading home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: work at the maid cafe - landlord event
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first_seen_maid = !$npc_landlord.flags.seen_maid>>
<<if setup.checkItemWorn('maid_uniform_pvc_black')>>
<<incrementEmotion 'affection' 'npc_landlord' 3>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*3>>
<<else>>
<<incrementEmotion 'affection' 'npc_landlord' 1>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*2>>
<</if>>
<<addCredits $scene.bonus_pay>>
<<if $scene.first_seen_maid>>
<<set $npc_landlord.flags.seen_maid = true>>
<</if>>
<<set $scene.reactnamechange = !$npc_landlord.flags.reactnamechange && $player.sec_style.body.name>>
<<if $scene.reactnamechange>>
<<set $npc_landlord.flags.reactnamechange = true>>
<</if>>
<<set $player.flags.maidcafe.events.landlord = true>>
<<set $npc_landlord.call_player = "Chica">>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<if $npc_landlord.stage > 1>>
You're working your shift when you see <<=setup.getNpcName('npc_landlord', 'first')>>, your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>/<<boy npc_landlord>>friend.<br>
<br>
<<He npc_landlord>> looks at you with joy, adorably taking the seat offered to <<him npc_landlord>> and staring up at you with sparkling eyes.<br>
<br>
<<if setup.checkItemWorn('maid_uniform_pvc_black')>>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>! You are truly the loveliest maid there ever was and in that outfit! Oh, truly I have never given a gift that paid me back so well!@@"
<<else>>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>! You are truly the loveliest maid there ever was!@@"
<</if>>
<br><br>
You blush at the compliment, but <<he npc_landlord>> seems to believe it as, despite all the other cute maids working with you, <<he npc_landlord>> seems to have eyes for you and you alone.<br>
<br>
Busy with other tables, you don't get much time alone with <<him npc_landlord>>, but you make sure to slip <<him npc_landlord>> a pink little heart-shaped dessert as a surprise. <<He npc_landlord>> smiles up at you with love and you lean in for a soft kiss, your lips barely touching, almost chaste, in a way, and yet the act is surprisingly sensuous.<br>
<br>
Called away to another customer, you dash off, returning to find that <<he npc_landlord>> has departed as well, leaving behind a napkin folded into a heart and a tip of <<=$scene.bonus_pay>> credits.
<<else>>
You're working your shift when you see <<=setup.getNpcName('npc_landlord', 'first')>>, your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>, walk in and take a seat.<br>
<br>
<<if !$scene.first_seen_maid>>
Recognising you immediately, <<his npc_landlord>> eyes light up at the sight of you in your maid finery.<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>! You are so beautiful like that!@@"<br>
<br>
You blush and give a little curtsy, delivering <<his npc_landlord>> order as <<he npc_landlord>> continues to swoon over you and the rest of your fellow maids.<br>
<br>
When <<he npc_landlord>> finishes up and finally leaves you find that <<he npc_landlord>> has left behind a tip of <<=$scene.bonus_pay>> credits for you.
<<else>>
<<if $scene.reactnamechange>>
Recognising you immediately, <<his npc_landlord>> eyes light up at the sight of you in your maid finery.<br>
<br>
<<if $npc_landlord.flags.cleaning.cleaned_maid>>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>! You look even more radiant than the first time! You really make the loveliest maid, I hope you continue to work for doing the cleaning as well as serving the food here.@@"<br>
<br>
You blush, suppressing a giggle at <<his npc_landlord>> distracted, mangled english as you thank <<him npc_landlord>> and take <<his npc_landlord>> order.<br>
<br>
<<He npc_landlord>> spends <<his npc_landlord>> whole time swooning over you, only occasionally glancing at your fellow maids and when <<he npc_landlord>> finally departs <<he npc_landlord>> leaves behind a tip of <<=$scene.bonus_pay>> credits.
<<else>>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">>! You look so radiant in that outfit! You need to wear it to clean for sure, you would be an excellent maid, I just know it!@@"<br>
<br>
You smile and tell <<him npc_landlord>> you'll consider the offer. You take <<his npc_landlord>> order as <<he npc_landlord>> continues to swoon over you and the rest of your fellow maids.<br>
<br>
When <<he npc_landlord>> finishes up and finally leaves you find that <<he npc_landlord>> has left behind a tip of <<=$scene.bonus_pay>> credits for you.
<</if>>
<<else>>
At first <<he npc_landlord>> doesn't recognise you, though <<he npc_landlord>> has an expression of curiosity whenever <<he npc_landlord>> looks at you.<br>
<br>
It is only when <<he npc_landlord>> has finished and is about to leave that <<he npc_landlord>> motions you closer.<br>
<br>
"@@.npc_landlord;<<=$player.first_name>>?@@"<br>
<br>
<<if $player.sec_style.body.name>>
You start, surprised that <<he npc_landlord>> has used your "new" name.<br>
<br>
Recognising your confusion <<he npc_landlord>> explains. "@@.npc_landlord;Sorry, when you changed your name I got new paperwork, but I didn't realise... <<callPlayer "npc_landlord">>, you are so beautiful! Ah, I would love it so much if you could lend your maid skills for a bit of cleaning, I know it is hard for you to cover the cost of your flat since your girl move out and I could help a bit.@@"
<<else>>
You blush and nod.<br>
<br>
"@@.npc_landlord;Ah, <<callPlayer "npc_landlord">> you look even more beautiful in this than I see you before! And that is not only because I have the soft spot for maids. Ah, I would love it so much if you could lend your maid skills for a bit of cleaning, I know it is hard for you to cover the cost of your flat since your girl move out and I could help a bit.@@"
<</if>>
<br><br>
You thank <<him npc_landlord>> for the reminder of the offer and say you'll consider it. You take <<his npc_landlord>> order as <<he npc_landlord>> continues to swoon over you and the rest of your fellow maids.<br>
<br>
When <<he npc_landlord>> finishes up and finally leaves you find that <<he npc_landlord>> has left behind a tip of <<=$scene.bonus_pay>> credits for you.
<</if>>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 2700>>]
</div>/*#
#desc: work at the maid cafe - goth bonus event
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
As you're bustling through your shift you notice one customer, in particular, who seems to be paying particular attention to you. She isn't staring, per se, but you catch her looking at you more than a few times, and she seems to be lingering in her seat far after the point when her coffee has surely gotten cold.<br>
<br>
[<<moveTo "event_maid_cafe_work_goth_2" "Approach her." 60>>]<br>
[<<moveTo "event_maid_cafe_work_default" "Just finish your shift." 600>>]
</div>/*#
#desc: work at the maid cafe - goth event chat
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
/%TODO: girl%/
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You approach the customer that has been admiring you the whole shift and ask if there's anything you can get for her?<br>
<br>
Suddenly nervous she blushes and stumbles through her words. "@@.generic_female1;Oh, sorry... I didn't mean to stare but, like I just LOVE the goth look and you're just so beautiful! Sorry if I offended you, or anything...@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Accept their apology and continue on your way." 60>>]<br>
[<<moveTo "event_maid_cafe_work_goth_3" "Suggest that, if they enjoy it, they should try it for herself." 60>>]
</div>/*#
#desc: work at the maid cafe - goth event suggestion
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
/%TODO: girl%/
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You gently suggest that she should try goth fashion herself, which causes the woman to blush. "@@.generic_female1;Oh, no, I could never. I mean you're so pretty and I'm... no, I could never go out like that...@@"<br>
<br>
You assure her that a goth style is for anyone with the dedication to appreciate it but you can tell she's shy and un-convinced.<br>
<br>
<<if setup.getTotalValue("makeup") > 10>>
[<<moveTo "event_maid_cafe_work_goth_4" "Offer to do her makeup." 600>>]<br>
<<elseif setup.getTotalValue("makeup") > 7>>
[@@.link_locked;You may have mastered doing goth makeup on yourself, but you aren't confident in translating that to another.@@]
<<else>>
[@@.link_locked;You barely know what you're doing with makeup, trying to show someone else? Out of the question.@@]
<</if>>
[<<moveTo "event_maid_cafe_work_default" "Insist that she should give it a try, but you need to get on with your shift." 600>>]<br>
</div>/*#
#desc: work at the maid cafe - goth event makeup help
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay>>
<<addCredits $scene.bonus_pay>>
<<applyExperience 'makeup' 10 'very' $SEEN_STRANGER>>
<<set $player.flags.maidcafe.events.goth = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
/%TODO: girl w/gothmakeup%/
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You offer to do the customer's makeup like your own and her jaw drops. "@@.generic_female1;Ohmygod, no, I couldn't but...@@"<br>
<br>
You can tell she's intrigued and, with a little more cajoling, you manage to drag her into the back room and get to work.<br>
<br>
You've barely started to remove her modest current makeup when she has a bit of a freak-out and closes her eyes. This just makes you grin as you go all out; heavy, even foundation, black lipstick and thick, smokey eyes combine for a look that is quite striking, if you do say so yourself. Leaning down behind so that your faces are next to each other in the mirrors' reflection you tell her to open her eyes.<br>
<br>
She hesitates for another moment and then does as you commanded, her jaw dropping in awe. "@@.generic_female1;Ohmygod, that- that's me!@@" She brings a hand to her face, gently poking her cheek as if to confirm things are real. "@@.generic_female1;I never imagined...@@" she turns her face from side to side, admiring her reflection from all angles. "@@.generic_female1;Oh I just can't believe this! You were totally right! Wow! I don't know if I can quite pull off the full outfit like you but... oh, I just have to get some clothes to match...@@"<br>
<br>
She bounces to her feet and thanks you again before running out of the room. You smile at her passing, taking a minute to finish cleaning things up before returning to the cafe, to find that she has left you with quite a substantial tip.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 600>>]
</div>/*#
#desc: work at the maid cafe - sissy bonus event
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You deliver a drink and a cake to a customer who seems VERY enamoured with your look.<br>
<br>
"@@.generic_male1;Now aren't you just the perfect pink <<if $fetish.sissy>>sissy <</if>>bimbo!@@" <<if $options.fem>>She states<<else>>They state<</if>> in admiration. "@@.generic_male1;I just hope you remembered my order properly!@@" They add with a laugh.<br>
<br>
<<if setup.getTotalValue("bimbofication") < 10>>
<<printThought "Hmm, I bet they'd be impressed if I played it up a bit...">><br>
<br>
<<if setup.getTotalValue("bimbofication") >= 5>>
[<<moveTo "event_maid_cafe_work_sissy_2" "Strike a pose and play up your ditziness for them." 600>>]<br>
<<elseif setup.getTotalValue("bimbofication") < 3>>
[@@.link_locked;You are not a bimbo, nor are you going to act like one!@@]<br>
<<else>>
[@@.link_locked;You can't quite summon the inspiration to do a bimbo show in public like this.@@]
<</if>>
[<<moveTo "event_maid_cafe_work_default" "Resume your shift." 2700>>]<br>
<<else>>
[<<moveTo "event_maid_cafe_work_sissy_2" "Like, of course you're a <<if $fetish.sissy>>sissy<<else>>sexy<</if>> bimbo! What could be better?" 600>>]
<</if>>
</div>/*#
#desc: work at the maid cafe - sissy bonus event
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bonus_pay = $player.flags.maidcafe.base_pay*.5>>
<<addCredits $scene.bonus_pay>>
<<applyExperience 'bimbofication' 10 'normal' $EXPOSED>>
<<setThreshold "bimbofication" "ditzy_secretary" "maid">>
<<set $player.flags.maidcafe.events.sissy_bimbo = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You smile and giggle at their compliment, agreeing that it can be, "@@.pc;Like, hard@@" — but that you have natural talent with "@@.pc;Cock- I mean, coffee, well... really anything strong... though I like to add just a little sweetness...@@" Emphasising your point you lean over <<if $options.fem>>her<<else>>their<</if>> table and drop a sugar cube into <<if $options.fem>>her<<else>>their<</if>> drink and give it a stir.<br>
<br>
You lick the spoon clean with a smile "@@.pc;Mmm... I just love a nice, stiff... drink.@@"<br>
<br>
With a parting wink you return to your work, being sure to put an extra swing in your hips as you walk away.<br>
<br>
Caught up with other customers you return several minutes later to an empty table, where you find they have left you a tidy <<=$scene.bonus_pay>> credit tip.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 2100>>]
</div>/*#
#desc: changing room at maid cafe
#status: WRITTEN 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png">>
<div id="invframe" class="scrolltext">
While not the largest of changing areas, the Maid Cafe's changing room is neatly organised and convenient for any maidtress who needs to get into uniform or touch up their makeup.<br>
<br>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Cafe: Newtype IV Changing Room">><<set $scene.return_makeuproom="event_maid_cafe_changingroom">><<set $scene.makeuproom_image="./images/locations/cafe_backroom.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_mall_cafe" "Return to the cafe." 30 "<<set $player.cutscene.lockinventory = true>>">>]<br>
<<else>>
[@@.link_locked;You're not going to go out in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<</if>>
</div>/*#
#desc: mall male restroom: caught caged
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_STRANGER>>
<<set $player.flags.mall_events.chastity = true>>
<</if>>
<<set $player.location to "Mall Male Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
You're relieving yourself and don't notice the person next to you until you realise that they're staring down at your <<=setup.getItemTypeName('cage')>>.<br>
<br>
<<printThought "Why didn't I use a stall...">><br>
<br>
Noticing your attention, they blush. "@@.generic_female1;Oh, sorry, just admiring how nice you look in <<if setup.isCage()>>your cage<<else>>that chastity belt<</if>>... don't worry, I wear one too! So you, like, don't have to worry about any funny business from me!@@"<br>
<br>
"@@.generic_female1;So... tell me, do you wear a plug too?@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
You quickly shake your head.<br>
<br>
"@@.generic_female1;Aww, you really should! Like, it's the best thing next to <<if $fetish.daddy>><<Daddy>>'s cock<<else>>a nice thick cock<</if>>, plus it just, like... feels right to be full, you know?@@"
<<else>>
Without thinking you nod, your rear clench around its occupant.<br>
<br>
"@@.generic_female1;Mmm, I thought so. I bet it's a nice big one too! Isn't being plugged the best? Well, no the BEST is <<if $fetish.daddy>><<Daddy>>'s cock<<else>>a nice thick cock<</if>>, but for just, like, everyday wear there's nothing better than a <<if setup.isCage()>>cage<<else>>chastity belt<</if>> and a plug for keeping a <<if $fetish.sissy>>sissy<<else>>girl<</if>> behaved.@@"
<</if>>
<br><br>
"@@.generic_female1;Well, gotta go, it was nice meeting you!@@"<br>
<br>
They skip away and out of the restroom before you can say anything else.<br>
<br>
[<<moveTo "room_mall" "Wash your hands and return to the mall." 30>>]
</div>/*#
#desc: mall female restroom: one of the maids from cafe newtype
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Mall Female Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<div id="invframe" class="scrolltext">
<<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>
She looks at you a bit nervously and then walks out of the restroom disappearing before you can talk with her.<br>
<br>
<<printThought "Hmm, I suppose I am not really dressed to be in here...">>
<<else>>
<<if $player.flags.maidcafe.stage > 1 >>
<<if setup.checkVisibleClothingTag('maid') > 60>>
Your eyes meet in recognition and she smiles.<br>
<br>
"@@.npc_waitress;Headin' back to work soon? I'm on break, myself.@@"
<<else>>
She smiles and drops into a shallow curtsy.<br>
<br>
"@@.npc_waitress;Tsk, tsk, you're out of uniform!@@" She laughs, "@@.npc_waitress;Guess you aren't workin' today, huh?@@"
<</if>>
<<elseif $player.locations.mallcafe>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
"@@.npc_waitress;Haven't I seen you around the cafe? You should consider working there. You look totally perfect for the job!@@"
<<else>>
She smiles and drops into a shallow curtsy.<br>
<br>
"@@.npc_waitress;Hello, Mistress, what can I do for you today?@@"
<</if>>
<<else>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
"@@.npc_waitress;Hey! You ever think of working at Cafe Newtype? You've got JUST the right look we're always keeping an eye out for.@@"
<<else>>
She smiles and drops into a shallow curtsy.<br>
<br>
"@@.npc_waitress;Hello, Mistress, what can I do for you today?@@"
<</if>>
<</if>>
<br><br>
[<<moveTo "event_random_mall_rrf_newtype_2" "Ask if she wants to fool around a bit..." 30>>]
<</if>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: mall female restroom: flirt with maid from cafe newtype
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Mall Female Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<div id="invframe" class="scrolltext">
She blushes adorably.<br>
<br>
<<if $npc_manager.stage > 2>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
"@@.npc_waitress;Oh my, like, of course I'd love to play with you, what did you have in mind?@@"<br>
<br>
Crossing her arms in front of her body to accentuate her cleavage, she tilts her head, smiling and flashing bambi eyes at you.<br>
<br>
[<<moveTo "event_random_mall_rrf_newtype_3" "Say you just want to make out." 30 "<<set $scene.action='snog'>>">>]<br>
<<if $player.virgin.blowjob>>
[<<moveTo "event_random_mall_rrf_newtype_3" "Ask to go down on her." 30 "<<set $scene.action='give_oral'>>">>]<br>
<</if>>
<<if $player.virgin.first>>
<<if $player.body_ref.penis>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_random_mall_rrf_newtype_3" "Ask her to go down on you." 30 "<<set $scene.action='get_oral'>>">>]<br>
[<<moveTo "event_random_mall_rrf_newtype_3" "Ask if you could fuck her." 30 "<<set $scene.action='give_anal'>>">>]<br>
<<else>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_random_mall_rrf_newtype_3" "Ask her to go down on you." 30 "<<set $scene.action='get_oral'>>">>]<br>
[<<moveTo "event_random_mall_rrf_newtype_3" "Ask if you could unlock yourself and fuck her ass." 30 "<<set $scene.action='give_anal'>>">>]<br>
<<else>>
[@@.link_locked;You are <<if setup.isCage()>>caged<<else>>locked in chastity<</if>>.@@]<br>
<</if>>
<</if>>
<<else>>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_random_mall_rrf_newtype_3" "Ask her to go down on you." 30 "<<set $scene.action='get_vag_oral'>>">>]
<<else>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
[<<moveTo "event_random_mall_rrf_newtype_3" "Ask if you could unlock yourself so she can go down on you." 30 "<<set $scene.action='get_vag_oral'>>">>]
<<else>>
[@@.link_locked;You are locked in chastity.@@]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<<if $player.virgin.anal>>
[<<moveTo "event_random_mall_rrf_newtype_3" "Ask her to fuck your ass." 30 "<<set $scene.
action='get_anal'>>">>]<br>
<</if>>
<<if setup.getTotalValue("piss") >= 10>>
[<<moveTo "event_random_mall_rrf_newtype_3" "Offer to drink her piss." 30 "<<set $scene.action='get_piss'>>">>]<br>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo "event_random_mall_rrf_newtype_3" "Ask her to drink your piss." 30 "<<set $scene.action='give_piss'>>">>]<br>
<<else>>
[@@.link_locked;Pissing through your chastity belt would be too much of a mess for her to drink.@@]<br>
<</if>>
<</if>>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<<else>>
"@@.npc_waitress;I appreciate the offer, and I happily serve you any time you're at Cafe Newtype but, well... in my personal life I guess I'm what you might call maid-sexual. You look lovely, don't get me wrong but, well, if it doesn't have a cute skirt and frills I'm not really into it.@@"<br>
<br>
Blowing you a consolatory kiss she skips out of the restroom.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
<<else>>
You chat for a few minutes but than she excuses herself. "@@.npc_waitress;Sorry to run but I need to get back to work, today's been really hectic!@@"<br>
<br>
She skips past you out of the restroom.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
</div>/*#
#desc: mall female restroom: sex with maid from cafe newtype
#status: FINISHED 0.7.10.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.mall_events.maid = true>>
<<switch $scene.action>>
<<case 'snog'>>
<<applyStress -3>>
<<case 'give_oral'>>
<<applyExperience 'oral' 8 'normal' $SEEN_STRANGER>>
<<case 'get_oral'>>
<<playerOrgasm>>
<<case 'get_vag_oral'>>
<<applyExperience 'feminization' 11 'normal' $SEEN_STRANGER>>
<<playerOrgasm>>
<<case 'give_anal'>>
<<if $player.virgin.penis>>
<<applyExperience 'anal' 8 'normal' $SEEN_STRANGER>>
<</if>>
<<case 'get_anal'>>
<<applyExperience 'anal' 8 'normal' $SEEN_STRANGER>>
<<playerOrgasm>>
<<case 'give_piss'>>
<<applyExperience 'piss' 7 'normal' $SEEN_STRANGER>>
<<case 'get_piss'>>
<<applyExperience 'piss' 14 'normal' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<set $player.location to "Mall Female Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'snog'>>
She smiles adorably, the two of you taking a few moment of one-upsmanship trading of innocent expressions before you get too excited, leaning in and pressing your lips together.<br>
<br>
One hand on her cheek as you delicately kiss your other wraps around her oh-so-slender waist, feeling the tight corset rigidly enhancing her figure.<br>
<br>
<<if setup.calcBreastSize() == 'massive'>>
Mammoth breasts pressed against her not immodest pair makes for a barrier such that you are barely able to kiss, the squish of boobs constantly threatening to push the two of you apart.<br>
<br>
<</if>>
Your eyes close in delight. She tastes of strawberries and cream and everything else good and sweet about the world and you daringly explore with your tongue, her lips parting obediently as your tongues entwine in a submissive <<if $fetish.sissy>>sissy <</if>>dance, the kiss drawing delightfully on.<br>
<br>
You could stay like this forever, two lovely <<if $fetish.sissy>>sissy <</if>>maids sharing a kiss both innocent and oh so erotic. Unfortunately all good things must come to an end and as if of one mind, you both finally lean back.<br>
<br>
Eyes meeting you both blush, looking away bashfully, no words seeming equal to the moment.<br>
<br>
Holding hands delicately she finally turns to go, stepping half a step away before darting back in to land a quick peck on your cheek. Blushing again she shares a final glance, biting her lip before quickly dashing away.
<<case 'give_oral'>>
She blushes at your request.<br>
<br>
"@@.npc_waitress;Mmm, that sounds really nice, but, well...@@" gently lifting her skirt she pulls her cute panties out of the way to reveal her securely caged penis. "@@.npc_waitress;See, I'm a good girl who keeps her <<if $fetish.sissy>>sissy <</if>>clitty safe and secure...@@"<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
You shake your head, smiling and giving her a kiss to show that this isn't a problem, it isn't a problem at all...
<<else>>
You blush and expose your own <<=setup.getItemTypeName("cage")>> before sliding to the ground.
<</if>>
<br><br>
Leading her into one of the stalls you slide to your knees between her legs and lean in to lick between the "bars" of her cage.<br>
<br>
She gasps, then gasps again when you reach between her legs to find the plug nestled in her rear.<br>
<br>
"@@.npc_waitress;Oh! That feels so good!@@"<br>
<br>
Responding to tell her that she tastes even better you kiss and lick her caged clitty, sucking on her cute balls and wiggling her plug against her prostate until she is a panting, moaning mess, her clitty straining to escape its cage and only looking even more lovely as it is held fast and secure.<br>
<br>
"@@.npc_waitress;Too intense...@@" she whimpers, backing up until she bumps into a wall. You crawl along, your head never separating from between her legs. Finally she cries out in orgasm, <<if $fetish.sissy>>sissy<<else>>girly<</if>> juices dribbling out of her clitty and into your waiting mouth. She is delicious, light and delicate and you eagerly lick up every drop, further torturing her with pleasure until she finally runs dry.<br>
<br>
Standing up you gently kiss her cheeks, rousing her from her overwhelmed state.<br>
<br>
"@@.npc_waitress;That was so good...@@" she whispers and you smile, giving a curtsy and an innocent wink.<br>
<br>
Sighing with contentment she suddenly jumps. "@@.npc_waitress;Oh no! I need to get back to work! Love you!@@"<br>
<br>
Like a whirlwind she zooms past, her high-heeled feet barely touching the ground as you wonder what, exactly it was that alerted her to the time...
<<case 'get_oral'>>
Blushing slightly as you wait for her reply she just smiles, taking you by the hand and leading you into a nearby stall before sliding to her knees, looking up at you with a cute, eager smile.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
You're already hard by the time you lift your skirt and expose yourself and she gasps in surprise.<br>
<br>
"@@.npc_waitress;Oh! You're so big! Aren't you scared, leaving something like this uncaged? Don't worry... I'll pacify it!@@"<br>
<br>
Jumping in face-first she swallows all of your, her throat tight, her lips soft, and the "@@.npc_waitress;Mmmm@@" sound she makes in approval of the taste feels just divine.
<<else>>
Her previous happy smile becomes one of utter delight when you expose your <<=setup.getItemTypeName("cage")>>.<br>
<br>
"@@.npc_waitress;Oh! It's so cute! I wear one too! Oh, I'm so happy for you!@@"<br>
<br>
Leaning in she shows her approval with something other than words, her tongue slipping between the bars of your "prison" before you hand over the key and she releases you with excitement.
<</if>>
<br><br>
Unable to see precisely what is going on beneath your skirts you are taken by surprise when her hand slides up between your legs to explore your cute rear.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
One, then another of her delicate fingers slides into your bottom, their presence only adding more pleasure as she <<if $player.body_ref.penis>>goes directly for your prostate<<else>>fingers you expertly<</if>>, sucking the whole while.<br>
<br>
<<if setup.getTotalValue("anal") >= 15>>
Two fingers become three become... you lose count, until you realise that her entire fist is inside of you, your sphincter clutching around her wrist as her fist kneads your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<else>>
Her fingers continue to slide in and out of your hole as you moan and twist, her lips never stopping the constant exploration of your <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>caged <<else>>chastity encased <</if>><</if>>clitty.
<</if>>
<br><br>
You pant and gasp and moan, finally leaking your <<if $fetish.sissy>>sissy<<else>>girly<</if>> juices <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>through your cage<<else>>past your belt<</if>><</if>> when the combination of her lips and her determined <<if $player.body_ref.penis>>milking of your prostate<<else>>stimulation of your rear<</if>> becomes just too much. <<if !setup.checkItemTypeWorn("cage")>>With obvious pleasure<<else>><<if setup.isCage()>>Wrapping her mouth around your cage as best she can<<else>>Running her lips along the edge of your chastity shield<</if>><</if>> she licks up every precious drop before finally sliding her hand from your rear with a "@@.generic_female1;Shlurp.@@"
<<else>>
She lets out a coo of approval as her fingers discover the <<=setup.getItemTypeName("plug")>> securely rooted in your rear. Continuing to lick and suck she adds wiggling the plug to her routine, the added stimulation of your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> having you moan an gasp in ecstatic delight.<br>
<br>
<<if setup.getTotalValue("anal") >= 13 && !setup.checkItemTypeTag('plug', ['hollow'])>>
You don't think it could get much better when she suddenly pulls the plug out of your rear. You gasp in shock, about to object only to moan like a slut as she replaces it with her entire fist.<br>
<br>
<</if>>
Putty in her hands your eyes roll back as you try not to fall over as she continues to lick and slurp and wiggle, and after no small amount of edging and teasing you finally cum as she opens wide to catch every drop of <<if $fetish.sissy>>sissy<<else>>girly<</if>> emission.
<<if setup.getTotalValue("anal") >= 15 && !setup.checkItemTypeTag('plug', ['hollow'])>>
<br><br>
Working your ass as if she was churning butter as she milks out an aftershock splurt she finally withdraws her fist, only to just as quickly shove your plug back in place. End to end you've probably been "empty" for less than ten seconds...
<</if>>
<</if>>
<br><br>
Smiling up at you she hums in contentment "@@.npc_waitress;Anyone ever tell you you're, like, delicious?@@"<br>
<br>
You blush and she stands giving you a brief kiss that lets you enjoy the combination of her strawberry-sweetness mixed with your own tasty flavour.<br>
<br>
"@@.npc_waitress;Oh!@@" she states, doing a little jump. "@@.npc_waitress;It's time for me to get back to work! See you later honey!@@"<br>
<br>
Still recovering from your <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>> you just watch her cute skirts bouncing as she skips away.
<<case "get_vag_oral">>
You expose yourself
<<if setup.checkItemTypeWorn("cage")>>
and unlock your <<=setup.getItemTypeName('cage')>>
<</if>>
as she looks on with almost drooling hunger.<br>
<br>
Once you're exposed she pounces, her lips pressing against your own as her tongue explores with eager relish. You gasp, almost losing your feet at the wave of sensation, but she squeezes you tight with both hands, grinding her nose against your clit as she nibbles and sucks and, most importantly, licks.<br>
<br>
Her tongue is long, nimble, and utterly amazing, the first, small orgasm, making you reach out with one hand to brace against the stall. She is far from finished however, eating you out until your legs are rubber and you have to practically pull her offer.<br>
<br>
Lips glistening with your <<getWordCum true>> she smiles up at you.<br>
<br>
"@@.npc_waitress;Sorry... I have a bit of a sweet tooth and you taste so delectable, well...@@" She flutters her eyelashes and you blush, thanking her as she <<if setup.checkItemTypeWorn("cage")>>re-locks your belt with a wink and<</if>> helps you back into your clothes. "@@.npc_waitress;There, all neat and tidy,@@" she pops up to her feet with a wink, her maid skirts bouncing merrily. "@@.npc_waitress;See you around!@@"<br>
<br>
She darts away as you continue to catch your breath.
<<case 'give_anal'>>
<<if !$player.virgin.penis>>
Your heart beats faster as you ask if you could do her.<br>
<br>
<<printThought "Is this it... am I going to <<if $player.virgin>>lose my virginity<<else>>do someone for the first time<</if>> in a mall bathroom?">><br>
<br>
You swear she's about to say yes only for a loud buzzing to echo off the bathroom walls. She pulls out her phone and swears. "@@.npc_waitress;Shit, sorry — something just blew up at work... literally, the cappuccino boiler exploded and I need to go help... some other time, maybe!@@"<br>
<br>
She dashes out of the bathroom, leaving you alone.<br>
<br>
<<printThought "Am I cursed? Or maybe this is the universe telling me my first time should be a bit more special...">>
<<else>>
Smiling and wiggling her tush to send her voluminous skirts bouncing about, she quickly heads into an empty stall and bends over. Burrowing past her petticoats you spread the rear gap in her cute, pink panties to reveal that her tush is already filled!<br>
<br>
"@@.npc_waitress;Mmm, you can remove it, I love being plugged, but the real thing is always sooo much better.@@"<br>
<br>
Sliding out the quite large plug with a pop and a gasp from your partner's two ends, you line up your <<getWordMyPenis false>> with her ready and gaping hole.<br>
<br>
She is seemingly self-lubricating and you slide in easily, <<if $player.body_ref.balls>>your testicles brushing against her own cute balls just behind<<else>>your smooth flesh brushing against her cute balls just below<</if>> her caged clitty.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
She doesn't seem bothered by your small dicklet, cooing and moaning and feeling quite tight.
<<case 3 4>>
She seems to be quite enjoying your <<getWordMyPenis false>>. You find yourself reflecting on your prior fears, maybe your concerns were as unfounded as your ex-girlfriend said? Such thoughts are fleeting, however as it is difficult to concentrate on anything save the sweet, wonderful <<if $fetish.sissy>>sissy <</if>>hole into which you have inserted yourself.
<<case 5 6>>
"@@.npc_waitress;Oh!@@" She states in surprise as you spread even her well-trained hole. "@@.npc_waitress;What a surprise that a cute <<if $fetish.sissy>>sissy<<else>>girl<</if>> like you could be so big! Oh I feel so full!@@"
<<default>>
ERROR: unknown penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
You start slowly thrusting and she gasps and moans, her every sound a further delight as, combined with her tight, squeezing hole, the two of you build and build until finally cumming in a unified crescendo.<br>
<br>
You slowly slide out of her still-snug hole and she makes a nimble spin. In one smooth motion she slides the plug back into her ass and then latches her lips around your <<getWordMyPenis false>>, sucking you dry and then looking up at you with a proud smile.<br>
<br>
"@@.npc_waitress;Mmm... that was fun... though I really think you'd be better off caged like a proper <<if $fetish.sissy>>sissy<<else>>girl<</if>>, freedom is just a recipe for trouble!@@"<br>
<br>
Despite how good she felt, you find yourself nodding in agreement as she rises to her feet and gives you a quick peck on the cheek.<br>
<br>
"@@.npc_waitress;Ooop!@@" she states with a jump, reacting to some unseen stimuli. "@@.npc_waitress;Time to get back to work, gotta go!@@"<br>
<br>
Before you can say another word she zips past you and out of the room, leaving you to carefully fix your clothes in private.
<</if>>
<<case 'get_anal'>>
She blushes. "@@.npc_waitress;Oh, how lewd! Unfortunately I am not free to meet your needs.@@" Raising her skirts, she temporarily pulls aside her panties to flash her securely locked chastity cage. "@@.npc_waitress;I wish you luck in finding a nice big cock to stuff your <<if $fetish.sissy>>sissy<<else>>cute<</if>> hole, maybe you should try the men's room?@@"<br>
<br>
You try to think of a response only for her to jump with a start. "@@.npc_waitress;Oh! sorry, but that's the signal that I need to get back to work, good luck to you!@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
Left alone and empty you finally turn towards the door.
<<else>>
Left alone, you rear clenches down on the <<=setup.getItemTypeName("plug")>> in disappointment at having been denied the cock it constantly craves.
<</if>>
<<case 'give_piss'>>
"@@.npc_waitress;Of course I can help you out!@@" She states after you make your request. "@@.npc_waitress;Just, like, be careful, okay? I need to go back to work after this and I wouldn't want to be a mess for any of my wonderful customers!@@"<br>
<br>
Selecting an empty stall, she drops to her knees and opens her mouth expectantly as you shuffle your skirts to reveal your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>cunt<</if>>.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2>>
"@@.npc_waitress;Oh! What a cute <<if $fetish.sissy>>sissy <</if>>clitty!@@"
<<case 3 4>>
"@@.npc_waitress;Mmmm, what a lovely clitty!@@"
<<case 5 6>>
"@@.npc_waitress;Oh!@@" She notes in shock. "@@.npc_waitress;What a big surprise for such a cute <<if $fetish.sissy>>sissy<<else>>girl<</if>>!@@"
<<default>>
ERROR: unknown penis size: <<=$player.body.penissize[0]>>
<</switch>>
She states before wrapping her lips around your <<getWordMyPenis>>.<br>
<<else>>
"@@.npc_waitress;Mmmm, it looks beautiful,@@" she states before pressing her lips against your lower ones.
<</if>>
<br>
"@@.npc_waitress;Mmmm, dewifious@@" she mumbles, sucking for a few moments before flashing you a thumbs up to signal that she's ready.
<<else>>
"@@.npc_waitress;Oh, look at your <<if setup.isCage()>>caged clitty<<else>>chastity belt<</if>>! Such a good girl!@@" With a bright smile, she glomps her lips around the tip of your <<getWordMyPenis>> and flashes the thumbs up for you to start.
<</if>>
<br><br>
You let out a sigh as you unleash your flow, she gulps quickly and enthusiastically, swallowing every drop with ease and then giving you a tongue bath to clean everything up.<br>
<br>
"@@.npc_waitress;Yum!@@" She says with a smile. You think she's about to say something else, but she starts, as if distracted by something.<br>
<br>
"@@.npc_waitress;Oh! Sorry, but that's the signal for me to return to work, it was lovely serving you, cya later!@@"<br>
<br>
She has already darted past you and out the door before you can reply.
<<case 'get_piss'>>
"@@.npc_waitress;Oh my, you're so helpful! I would love if you could do that for me!@@"<br>
<br>
Skipping into an empty stall she lifts her skirts and pulls down her cute panties to reveal her caged <<if $fetish.sissy>>sissy <</if>>clit.<br>
<br>
"@@.npc_waitress;Now make sure you swallow it all! I need to head back to work after and I don't want to be a mess!@@"<br>
<br>
You nod in agreement before shuffling forward on your knees and wrapping your lips around her caged tip.<br>
<br>
You flash a thumbs up and she lets out a sigh and unleashes her flow.<br>
<br>
<<if setup.getTotalValue("piss") > 15>>
You have to suppress a moan of delight lest you spill a single drop of her utterly divine emission. Delicate and flowery it is just acidic enough to give you a pleasant burn on the way down, its taste as heavenly as its producer.
<<else>>
Even by the standards of your rapidly-developing palate she tastes delicious, flowery and feminine with just a touch of acidic burn on the way down you eagerly gulp down every drop.
<</if>>
<br><br>
Her bladder as dainty as she is she leaves you wanting more, your tongue desperately cleaning and seeking any residual flavour for several seconds after she sputters to a stop.<br>
<br>
"@@.npc_waitress;Good girl!@@" She congratulates, patting you on the head. Standing up with a start she lets out a little gasp. "@@.npc_waitress;Oh! Looks like it's time to head back to work, thanks for the help!@@"<br>
<br>
Kneeling and catching your breath, you don't have a chance to get in another word before she has dashed past and out the door, her cute skirts bouncing merrily the whole way.
<<default>>
ERROR unknown scene action: <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: mall male restroom: normal-looking guy turns out to be an asshole
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $options.fem>>
<<set $player.flags.mall_events.asshole_fem = true>>
<<else>>
<<set $player.flags.mall_events.asshole = true>>
<</if>>
<<if $fetish.harass>>
<<if setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_22') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_22'
0
'event_psychiatrist_theme_street_harass'
false
>>
<</if>>
<</if>>
<</if>>
<<if $options.fem>>
<<set $player.location to "Mall Female Toilet">>
<<else>>
<<set $player.location to "Mall Male Toilet">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $fetish.harass>>
You try to introduce yourself only to be rebuffed with a sneer.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
<<if $options.fem>>
"@@.generic_male1;What the fuck, can't you see I'm busy. Leave me alone you dumb bitch.@@"
<<else>>
"@@.generic_male1;What the fuck are you even doing in here, this is the MEN'S room, you dumb bitch.@@"
<</if>>
<<case 'male'>>
<<if $options.fem>>
"@@.generic_male1;What the fuck are you even doing in here, this is the WOMEN'S room, you fucking pervert.@@"
<<else>>
"@@.generic_male1;What the fuck, I'm not gay, fag. Leave me alone before I beat your ass.@@"
<</if>>
<<case 'unisex'>>
"@@.generic_male1;What the hell? I ain't into... whatever the hell you are, buzz off.@@"
<</switch>>
<br><br>
Wincing from the rejection, you quickly move out of <<his>> way.
<<else>>
You try to talk to the <<man>>, but <<he>> dismisses you with a glance and a <<if $options.fem>>huff<<else>>grunt<</if>>.<br>
<br>
<<printThought "Hmm, guess I forgot the old rule that you never talk to a <<guy>> in a public restroom">>
<</if>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: mall male restroom: assaulted restroom
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.mall_events.assault = true>>
<<if $fetish.harass>>
<<if setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_22') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_22'
0
'event_psychiatrist_theme_street_harass'
false
>>
<</if>>
<</if>>
<<set $scene.altExit = false>>
<</if>>
<<set $player.location to "Mall Male Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.harass>>
You walk up to the two men and almost instantly realise you've made a mistake.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female' 'unisex'>>
"@@.generic_male1;What the fuck?@@" The first guy asks, looking up from his conversation.<br>
<br>
<<if $player.body_ref.penis>>
"@@.generic_male2;Yeah, what are you even doing in here... wait, are you some kind of drag queen<<if $fetish.slurs>> faggot<</if>>?@@"<br>
<br>
Before you can react, one of the men shoves you.
<<if setup.getTotalValue("martial_arts") > 10>>
On reflex you turn the shove into a throw, grabbing his outstretched arm and pulling him over your back and sending him slamming to the hard tile floor of the bathroom.<br>
<br>
As if with some sort of spider sense you notice the other man start to throw a punch, slipping it easily before slamming a knee into his sternum. The man falls to the ground, desperately sucking wind.<br>
<br>
The whole altercation has taken less than ten seconds, both of your foes sprawled out on the floor and you decide to make your escape before they can stand.
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
You manage to remain standing through the first shove and try to fight back, but two opponents is just too much and it isn't long before you're on the floor, your landing having exposed the "bonus" between your legs.
<<else>>
You tumble backwards, landing in a sprawl, and in the process exposing the "bonus" between your legs.
<</if>>
<br><br>
"@@.generic_male1;What the shit? It's a dude!@@"<br>
<br>
You don't hear much more before they're on top of you, a booted foot slamming into your side.
<<if $fetish.karmic_harass && !$npc_barber.fem>>
You're braced for even more blows only to hear a scuffle. Looking up you're shocked to see <<if $player.locations.beautyparlor>><<=setup.getNpcName('npc_barber', 'first')>>!<<else>>a gigantic purple-haired <<man npc_barber>> who looks strangely familiar.<</if>><br>
<br>
Even two on one, your assailants aren't a match for your rescuer and they soon flee the scene, sporting bruises and a bloody nose.<br>
<br>
Hurrying to your side, <<he npc_barber>> kneels down. "@@.npc_barber;Are you alright?@@"<br>
<br>
<<if !$player.locations.beautyparlor>>
Hearing <<his npc_barber>> voice you finally recognise your saviour, it's <<=setup.getNpcName('npc_barber', 'first')>>! The proprietor of the mall barbershop you used to go to... though <<he npc_barber>> looks quite a bit different than last you saw <<him npc_barber>>.<br>
<br>
"@@.npc_barber;<<=$player.first_name>>?... is that you? Oh, I hadn't seen you in so long, I guess you didn't know that I changed the name of the shop, but I'm still at the same old location!@@"<br>
<br>
<</if>>
"@@.npc_barber;Oh just look at you, you poor thing!@@" Helping to your feet, <<he npc_barber>> gives you a hug, a "friendly" bear-like embrace that takes the breath out of you even more than the beating. "@@.npc_barber;Oh, I'm just so glad I walked in, to think such mongrels are still around in this day and age... I'm so sorry that something happened to one of my favourite customers! Anyway, I'm sure you want to head home for a nice lie-down, but I really hope to see you at the salon sometime soon!@@"<br>
<br>
You thank <<him npc_barber>> for <<his npc_barber>> help as <<he npc_barber>> asks once again if you're okay before continuing on to one of the stalls.
<<elseif $fetish.karmic_harass>>
You're braced for even more blows only to hear a scuffle. Looking up you're shocked to see a gigantic blue-haired man.<br>
<br>
Even two on one, your assailants aren't a match for your rescuer and they soon flee the scene, sporting bruises and a bloody nose.<br>
<br>
Hurrying to your side, he kneels down. "@@.generic_female2;Are you alright?@@"<br>
<br>
You thank him for his help as he asks once again if you're okay before continuing on to one of the stalls.
<<else>>
Curling up for protection and praying to survive you absorb a few more hits before they get bored and leave, though not before spitting on you in disgust.
<</if>>
<</if>>
<<else>>
<<set $scene.altExit = true>>
"@@.generic_male2;Yeah, did you take a wrong turn? This restroom is for MEN, broads don't belong in here!@@"<br>
<br>
"@@.generic_male1;Hey, maybe that's why she's here — is that it, you come looking for men? Or maybe you just came looking for cock — huh? You some kind of gutter whore desperate for a fuck?@@"<br>
<br>
As the two men talk you realise they're starting to move between you and the exit, you probably need to do something soon...<br>
<br>
<<if setup.getTotalValue("penis") > 10 && setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_random_mall_rrm_gangbang_1" "You ARE desperate for dick — beg for theirs." 180 "<<set $scene.action='slut'>>">>]<br>
<<else>>
[@@.link_locked;You are not going to beg for dick like a cock-hungry slut.@@]<br>
<</if>>
[<<moveTo "event_random_mall_rrm_gangbang_1" "Mouth off and say that you were looking for something more impressive..." 180 "<<set $scene.action='tease'>>">>] <<hint $options "This is maybe a bad idea...">><br>
[<<moveTo "event_random_mall_rrm_gangbang_1" "You made a wrong turn..." 180 "<<set $scene.action='flee'>>">>]
<</if>>
<<case 'male'>>
"@@.generic_male1;What the fuck, bro, can't you see we're talking?@@"<br>
<br>
"@@.generic_male2;Yeah, fuck off, weirdo.@@" The other man adds and you quickly get out of their way.
<</switch>>
<<else>>
You start to walk up to the two men, but they seem pretty involved in conversation, barely even glancing at you as they step around, not even slowing their discussion as they belly up to adjacent urinals.
<</if>>
<<if !$scene.altExit>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
</div>/*#
#desc: mall female restroom: harrased restroom for option fem
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.mall_events.assault_fem = true>>
<<if $fetish.harass>>
<<if setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_22') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_22'
0
'event_psychiatrist_theme_street_harass'
false
>>
<</if>>
<</if>>
<<set $scene.altExit = false>>
<</if>>
<<set $player.location to "Mall Female Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.harass>>
You walk up to the two women and almost instantly realise you've made a mistake.<br>
<br>
<<if (!$player.flags.mall_events.gangbang_fem || random(1,4) == 1) && setup.analyzeWornTags(['female','male','unisex']) == "male">>
"@@.generic_female1;What the fuck?@@" The first girl asks, looking up from her conversation.<br>
<br>
"@@.generic_female2;Hey, what the fuck do you want... wait, are you some kind of pervert in the girl's bathroom?@@"<br>
<br>
<<set $scene.altExit = true>>
"@@.generic_female1;Yeah, did you take a wrong turn? This restroom is for WOMEN, guys don't belong in here!@@"<br>
<br>
"@@.generic_female2;Well, maybe that's why they're here — is that it, you come looking for a girlfriend? Or maybe you just came looking for sex — huh? You some kind of virgin weirdo desperate for a fuck?@@"<br>
<br>
As the two women talk you realise they're starting to move between you and the exit, you probably need to do something soon...<br>
<br>
<<if setup.getTotalValue("penis") > 10 && setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_random_mall_rrm_gangbang_1" "You ARE desperate for sex — beg for them." 180 "<<set $scene.action='slut'>>">>]<br>
<<else>>
[@@.link_locked;You are not sex-hungry enough to beg.@@]<br>
<</if>>
[<<moveTo "event_random_mall_rrm_gangbang_1" "Mouth off and say that you weren't looking for a <<if $fetish.slurs>>bitch<<else>>skank<</if>>..." 180 "<<set $scene.action='tease'>>">>] <<hint $options "This is maybe a bad idea...">><br>
[<<moveTo "event_random_mall_rrm_gangbang_1" "Say that you made a wrong turn..." 180 "<<set $scene.action='flee'>>">>]<br>
[<<moveTo "room_mall" "Run out of the Toilet." 30>>] <<hint $options "Leave without a confrontation.">>
<<else>>
"@@.generic_female1;What the fuck, can't you see we're talking?@@"<br>
<br>
"@@.generic_female2;Yeah, fuck off, weirdo.@@" The other woman adds and you quickly get out of their way.
<</if>>
<<else>>
You start to walk up to the two women, but they seem pretty involved in conversation, barely even glancing at you as they step around, not even slowing their discussion as they stand next to the sinks.
<</if>>
<<if !$scene.altExit>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
</div>/*#
#desc: mall male restroom: biker (nice)
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $options.fem>>
<<set $player.location to "Mall Female Toilet">>
<<else>>
<<set $player.location to "Mall Male Toilet">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
The gruff biker pauses for a moment, looking you over as your heart skips a beat.<br>
<br>
<<printThought "Oh shit, this was a bad idea...">><br>
<br>
<<if $player.virgin.anal && $player.virgin.blowjob>>
"@@.generic_male1;Hmm... you're pretty cute... come on.@@" <<He>> reaches to take you by the hand. Though <<his>> hand is rough <<he>> holds you remarkably gently as <<he>> turns into one of the stalls. Before you realise what you're doing you follow behind.<br>
<br>
[<<moveTo "event_random_mall_rrm_biker_sex" "Drop to your knees." 30 "<<set $scene.hole='oral'>>">>]<br>
[<<moveTo "event_random_mall_rrm_biker_sex" "Bend over." 30 "<<set $scene.hole='anal'>>">>]
<<else>>
<<He>> grins and gives you a nod of greeting as <<he>> heads for a stall.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
</div>/*#
#desc: mall male restroom: biker gentle sex
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $options.fem>>
<<set $player.flags.mall_events.biker_fem = true>>
<<else>>
<<set $player.flags.mall_events.biker = true>>
<</if>>
<<switch $scene.hole>>
<<case 'oral'>>
<<applyExperience 'oral' 11 'normal' $ALONE>>
<<case 'anal'>>
<<if setup.checkItemTypeWorn("plug") && setup.checkItemTypeTag('plug', ['hollow'])>>
<<applyExperience 'anal' 13 'normal' $ALONE>>
<<else>>
<<applyExperience 'anal' 11 'normal' $ALONE>>
<</if>>
<</switch>>
<</if>>
<<if $options.fem>>
<<set $player.location to "Mall Female Toilet">>
<<else>>
<<set $player.location to "Mall Male Toilet">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.hole>>
<<case 'oral'>>
You start to slide to your knees and reach for <<his>> belt only for <<him>> to hold you up.<br>
<br>
"@@.generic_male1;I admire the enthusiasm but, well... I like a touch of foreplay, come on, cutie, gimme some sugar.@@"<br>
<br>
<<He>> leans in for a kiss. Despite <<his>> <<if $options.fem>>forcefulness <<his>> lips are gentle, <<his>> presence dominating as to make you feel more dainty and adorable and cared for<<else>>scratchy beard <<his>> lips are gentle, <<his>> presence so masculine as to make you feel more dainty and adorable and cared for<</if>>.<br>
<br>
You kiss for several minutes, hands wandering over one another's bodies before you slowly slide down as before without <<him>> stopping you.<br>
<br>
Peeking out from a thick bush of hair, <<his>> cock is thick and long and heady with the scent of <<if $options.fem>>musk and sweat<<else>>man-sweat<</if>>.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
Opening wide you slide <<his>> cock all the way down your throat until your lips are wrapped around <<his>> base. Twisting your head you start gently moving back and forth, <<his>> moans and grateful words of approval guiding your actions.
<<elseif setup.getTotalValue("oral") > 10>>
Estimating that <<hes>> within your range of skill you tease it a bit, leaning in, then pulling back. You go further each time until you surprise <<him>> by taking <<his>> full length and holding there.
<<elseif setup.getTotalValue("oral") > 5>>
<<Hes>> a bit too big for you to deepthroat, but that doesn't stop you from deploying all of your other skills as your run tongue and lips over <<his>> deliciously heady cock.
<<else>>
You start by sucking on the tip, spreading spittle up and down <<his>> member to lubricate your hand as you attempt to stroke and suck in tandem.
<</if>>
<br><br>
"@@.generic_male1;Mmmm, you mouth is magical...@@" <<he>> croons as you keep working, sucking and slurping and licking until you are rewarded with a big, thick wad of <<getWordCum>>.<br>
<br>
<<He>> pulls you back to your feet so fast, you feel momentarily weightless, pulling you close for another kiss, your tongues dancing in a sea of cum, playfully passing <<his>> load back and forth until there is no more.<br>
<br>
"@@.generic_male1;Mmm, mind if I return the favour?@@" <<He>> asks.<br>
<br>
Blushing, you shake your head and <<he>> lets you go, smiling as you skip away out of the stall and the bathroom.
<<case 'anal'>>
You bend over and wiggle your ass and <<he>> steps closer.<br>
<br>
"@@.generic_male1;Not that your ass isn't just lovely, but I want to look at your pretty face while I make love to you...@@"<br>
<br>
Hand on your hips <<he>> spins you around, and then easily hoists you into the air, balancing you around <<his>> waist until you wrap your legs around to help hold yourself up.<br>
<br>
"@@.generic_male1;Much better.@@" <<He>> states leaning in for a kiss. Your lips part, inviting <<his>> tongue to explore, <<his>> <<if $options.fem>>forcefulness and dominating presence as to make you feel more dainty and adorable and cared for<<else>>scratchy beard not bothering you, instead only reminding you of how masculine he is, and thus your own femininity<</if>>.<br>
<br>
Holding you up with one hand, <<he>> frees <<his>> cock and exposes your butt
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
and slots in through your plug
<<else>>
and deftly removes your plug
<</if>>
<</if>>. You feel <<his>> fat cock-head pressing against your hole and then your weight settling as <<he>> slides into you.<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
You groan in pleasure, squeezing and working <<his>> cock with your expert ass as <<he>> slides deeper.<br>
<br>
"@@.generic_male1;Fuck, your ass is amazing...@@" <<he>> gasps, moaning and kissing you as you double your efforts.
<<elseif setup.getTotalValue("anal") >= 10>>
Relaxing until <<hes>> inside, you clamp down tight until <<he>> gasps.<br>
<br>
"@@.generic_male1;Fuck you're tight... uhhh.@@"<br>
<br>
You muffle <<his>> moans with kisses and relax just enough for <<him>> to move inside of you.
<<elseif setup.getTotalValue("anal") > 5>>
You shudder a bit as <<he>> slides into you, but <<he>> is gentle, seemingly sensitive to your every twitch so as to only give you what you can take and waiting for you to adjust before letting you slip down so as to enter you deeper.
<<else>>
<<He>> may be a bit larger than you're really used to, but your weight takes care of that, and <<he>> is so gentle and passionate that the expected pain never arrives.
<</if>>
<br><br>
You moan and wrap your arms around <<his>> head for balance as you lean in for another kiss as you bounce up and down on <<his>> cock.<br>
<br>
<<His>> pace increasing as <<he>> moans into your lips and kisses you harder, you finally feel <<him>> explode in orgasm, cumming deep in your ass as you have an analgasm of your own from <<his>> expert stimulation of your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
Panting slightly <<he>> continues to hold you up until you get your legs back under yourself.<br>
<br>
Leaning in for a final kiss <<he>> smiles as <<he>> fixes <<his>> pants.<br>
<br>
"@@.generic_male1;Thanks, that was... that was just lovely.@@"<br>
<br>
You blush and fix your own clothes as <<he>> gallantly holds the door to the stall for you to walk out first.
<<default>>
ERROR unknown scene hole! <<=$scene.hole>>
<</switch>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>
/* Note: this could EASILY lead to a followup quest, at a minimum I'd say he shows up later in the fetish club *//*#
#desc: mall male restroom: a fellow closeted sissy
#status: FINISHED 0.7.10.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $options.fem>>
<<set $player.flags.mall_events.rrmSissy_fem = true>>
<<else>>
<<set $player.flags.mall_events.rrmSissy = true>>
<</if>>
<</if>>
<<if $options.fem>>
<<set $player.location to "Mall Female Toilet">>
<<else>>
<<set $player.location to "Mall Male Toilet">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.flags.mall_events.rrmSissy_sex>>
You start to approach but <<he>> seems in a hurry and <<he>> disappears into a stall before you can say anything.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<<else>>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female' 'unisex'>>
The <<man>> smiles and blushes as <<he>> looks at you.<br>
<br>
"@@.generic_male1;Oh, wow, you're so beautiful, I could never have the courage to—@@"<br>
<br>
<<He>> turns beet red, stopping mid-sentence. You smile and comfort <<him>>, slowly coaxing <<him>> to continue.<br>
<br>
"@@.generic_male1;Sorry it's just... you're so lovely and I just couldn't have the courage to wear something like that in public... I mean I wear panties and garters and sometimes a bra underneath, but going all the way...@@"<br>
<br>
You smile encouragingly and ask if you could see what <<he>>'s wearing.<br>
<br>
<<He>> blushes even harder, but follows you into a stall and sheds <<his>> dull t-shirt and skinny jeans to reveal a quite fetching, if basic, set of lacey red undergarments. Full-body blushing to match <<his>> underthings <<he>> bashfully looks away even as <<he>> tents and stretches <<his>> sexy panties something fierce.<br>
<br>
You consider your next move carefully, feeling like you could have quite the effect on this cute young <<man>>'s future...<br>
<br>
[<<moveTo "event_random_mall_rrm_sissy_2" "Tell <<him>> <<he>>'s lovely and encourage <<him>> to continue pursuing <<his>> interests." 30 "<<set $scene.sex=false>>">>]<br>
<<if $player.virgin.blowjob>>
<<if setup.getTotalValue("oral") > 7>>
[<<moveTo "event_random_mall_rrm_sissy_2" 'Drop to your knees and "reward" <<his>> courage.' 30 "<<set $scene.sex=true>>">>]
<<else>>
[@@.link_locked;You aren't enough of a cocksucker to give <<him>> a "proper" reward.@@]
<</if>>
<<else>>
[@@.link_locked;They're cute, but you're not going to just start sucking off random <<guy>>s!@@]
<</if>>
<<case 'male'>>
"@@.generic_male1;Oh, uh, hi.@@" The <<man>> states before continuing past.<br>
<br>
Staring at <<his>> slender form and <<his>> cute, trim butt you can't help but think there's something about <<him>>, maybe if you were wearing something different <<he>> might be more amenable to chatting?<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</switch>>
<</if>>
</div>/*#
#desc: mall male restroom: encourage a fellow closeted sissy
#status: FINISHED 0.7.10.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<set $player.flags.mall_events.rrmSissy_sex = true>>
<</if>>
<</if>>
<<if $options.fem>>
<<set $player.location to "Mall Female Toilet">>
<<else>>
<<set $player.location to "Mall Male Toilet">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
Not saying a word, you slide to your knees. Grabbing hold of <<his>> panties with both hands you smile up at <<him>> before pulling <<him>> down, <<his>> rock-hard <<if $fetish.sissy>>sissy <</if>>clit almost slapping you in the face it springs forth with such enthusiasm.<br>
<br>
Grasping <<him>> with one hand, you lovingly lick and kiss <<his>> member, maintaining eye-contact the whole time.<br>
<br>
Switching off between stroking and sucking you tell <<him>> how much you love what <<he>>'s wearing, how cute and sexy <<he>> is... and how much better <<he>> would look, and feel with a "full" <<if $fetish.sissy>>sissy<<else>>feminine<</if>> ensemble.<br>
<br>
Drawing <<him>> out you gush about how much <<he>> would enjoy walking in heels, how sexy it would be to show off <<his>> lovely long legs with a nice short skirt. Sensing <<he>> could cum at any moment you slow down even more, your touch as gentle as a feather as you talk about the cute top <<he>> could wear, and how good <<he>>'d look in makeup.<br>
<br>
It's unlikely that anyone in the world could have kept <<him>> from cumming to the sound of your voice and <<he>> spurts and moans and gasps right into your open mouth.<br>
<br>
Holding it on your tongue you look up and then rise to your feet, grabbing <<his>> head and pulling <<him>> in for a kiss where you pass <<his>> emission back. <<His>> eyes go wide in shock, but then <<he>> melts, submitting to your offering and swallowing it all.<br>
<br>
"@@.pc;Good girl.@@" You whisper. "@@.pc;Maybe next time I see you we can have even more... fun.@@"<br>
<br>
Closing the stall door behind yourself you leave <<him>> standing there, dressed only in underwear, and with a dazed, but happy expression on <<his>> face.
<<else>>
You gush about how much you love <<his>> outfit. <<He>> seems buoyed by your encouragement but, as <<he>> gets dressed and heads off, you wonder if it will be enough to break <<him>> out of <<his>> shell...<br>
<br>
<<printThought "Hmm, maybe next time I can give <<him>> some... stronger encouragement.">>
<</if>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: mall female restroom: harassed by a terf
#status: FINISHED 0.7.10.0
#ignore_spell: d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.harass>>
<<set $player.flags.mall_events.terf = true>>
<<if setup.findThemeId('npc_psychiatrist', 'transition', 'theme_psychiatrist_transition_22') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_22'
0
'event_psychiatrist_theme_street_harass'
false
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Mall Female Toilet">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.harass && $fetish.karmic_harass>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_shoestore_assistant","npc_shoestore_assistant_lower_body")>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $fetish.harass>>
She regards you with obvious disgust.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female' 'unisex'>>
"@@.generic_female1;Ugh, it doesn't matter if you like to play dress up, you aren't a REAL woman and you don't belong in here.@@"
<<case 'male'>>
"@@.generic_female1;What the hell are you doing in here, this is the WOMEN'S restroom, can't you read? Or is that too hard for your neanderthal so-called "brain."@@"
<</switch>>
<br><br>
"@@.generic_female1;Why are you still standing there? You. Don't. BELONG here. You. Need. To. Leave.@@"<br>
<br>
<<if $fetish.karmic_harass>>
She starts rooting around in her purse. Only for a shadow to fall over her. Looking up, you find one of the biggest women you've ever seen.
<<if $npc_shoestore_manager.profile>>
<<if $npc_shoestore_assistant.profile>>
Your eyes trace up... WAY up to find your friend <<=setup.getNpcName('npc_shoestore_assistant', 'first')>> looming above your harrasser who looks suddenly nervous.
<<else>>
Your eyes trace up... WAY up to recognise the towering cyborg shop assistant from <<printShopName 'mall_shoe_store'>>.
<</if>>
<br><br>
With casual ease she reaches down to gently pluck the pepper spray from your accuser's grasp, crushing it in one massive hand.
<<else>>
Towering over your harrasser, the woman's partial-conversion cybernetics gleam as she reaches down to pluck the pepper spray out of your accuser's grip, casually crushing it in her massive hand.
<</if>>
<br><br>
"@@.npc_shoestore_assistant;She wasn't bothering you, so why bother her? Now I suggest you get out of here and keep your retrograde opinions to yourself.@@"<br>
<br>
Looking quite petrified, the TERF lets out a yelp and scampers away.<br>
<br>
"@@.npc_shoestore_assistant;Sorry you had to experience that... I can't imagine how much courage it takes to live your true life like you're doing. Just know that even if backwards people like that are still around, there's a lot more of us that support you.@@"<br>
<br>
You blush, thanking her for the help, and the comfort. She smiles, tossing the remains of the pepper spray bottle in the trash and washing her hands before departing the restroom.
<<else>>
She starts rooting through her purse and you quickly make your exit.
<</if>>
<<else>>
Another woman steps out of a stall as you walk into the bathroom. She barely glances at you before continuing on her way.
<</if>>
<br><br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
</div>/*#
#desc: mall male restroom: gangbang intro
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case "slut">>
<<applyExperience 'bimbofication' 16 'terrible' $SEEN_STRANGER>>
<<set $scene.sex = true>>
<<case "tease">>
<<if $fetish.get_raped>>
<<set $scene.sex = true>>
<</if>>
<<case "flee">>
<<if $fetish.get_raped>>
<<set $scene.sex = true>>
<</if>>
<</switch>>
<</if>>
<<if $options.fem>>
<<set $player.location to "Mall Female Toilet">>
<<else>>
<<set $player.location to "Mall Male Toilet">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "slut">>
The forwardness of your offer takes the two <<men>> off-guard for a moment before they share a glance and grin.<br>
<br>
You wink and lead the way into one of the larger stalls.<br>
<br>
[<<moveTo "event_random_mall_rrm_gangbang_2" "Continue." 600>>]
<<case "tease">>
Your teasing has the two <<men>> bristling,
<<if $fetish.get_raped>>
"@@.generic_male1;Oh, you think you're funny, <<if $options.fem>>huh<<else>>bitch<</if>>? Come on, let's show this cocky <<if $options.fem>>perv<<else>>slut<</if>>...@@"<br>
<br>
One of the <<men>> is suddenly behind you, arms wrapping around your chest and lifting you into the air as <<his>> friend opens the door to one of the private stalls.<br>
<br>
[<<moveTo "event_random_mall_rrm_gangbang_fight" "Fight!" 600>>]<br>
[<<moveTo "event_random_mall_rrm_gangbang_2" "Give in." 600>>]
<<else>>
but a mall guard happens to walk into the bathroom before they can do anything, the two <<men>> merely glaring at you in annoyance before hurrying on their way.<br>
<br>
"@@.generic_male3;<<if $options.fem>>Are you alright?<<else>>Ma'am? I think you took a wrong turn.<</if>>@@" The guard <<if $options.fem>>asks<<else>>states<</if>>. You nod and leave the bathroom.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
<<case "flee">>
<<if $fetish.get_raped>>
You try to take a step back, only to discover that one of the <<men>> has shifted behind you and you soon find yourself penned in against a wall.<br>
<br>
"@@.generic_male2;So, <<if $options.fem>>boy<<else>>you pretty thing<</if>>... all lost somewhere <<if $options.fem>>they<<else>>she<</if>> shouldn't belong... how about you come with us for a bit of fun, hmm?@@"<br>
<br>
A firm grip on your arm the <<men>> start leading you into one of the bathroom's private stalls.<br>
<br>
[<<moveTo "event_random_mall_rrm_gangbang_fight" "Fight!" 600>>]<br>
[<<moveTo "event_random_mall_rrm_gangbang_2" "Continue." 600>>]
<<else>>
You slip out of the way before the <<men>> can surround you and hurry out of the claustrophobic restroom.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: mall male restroom: gangbang
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $options.fem>>
<<set $player.location to "Mall Female Toilet">>
<<else>>
<<set $player.location to "Mall Male Toilet">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("martial_arts") > 10>>
You twist away from your assailant, landing a sharp kick to the groin to get enough separation to flee out of the restroom and into the safety of a more public space.<br>
<br>
[<<moveTo "room_mall" "Return to the mall." 30>>]
<<else>>
You try to twist away from your assailant
<<if setup.getTotalValue("martial_arts") > 5>>
but your momentary success is squashed once <<his>> friend lends a hand.
<<else>>
but you just can't seep to break <<his>> grasp.
<</if>>
You're dragged into one of the private stalls and pushed to the ground, hands held tightly as you hear the sounds of zippers.<br>
<br>
[<<moveTo "event_random_mall_rrm_gangbang_2" "Continue." 600>>]
<</if>>
</div>/*#
#desc: mall male restroom: gangbang
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 9 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 9 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 14 'very' $SEEN_STRANGER>>
<<if $options.fem>>
<<set $player.flags.mall_events.gangbang_fem = true>>
<<else>>
<<set $player.flags.mall_events.gangbang = true>>
<</if>>
<<set $player.timebased.horny = 20>>
<</if>>
<<if $options.fem>>
<<set $player.location to "Mall Female Toilet">>
<<else>>
<<set $player.location to "Mall Male Toilet">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
It doesn't take long after you're in the relative privacy of the stall before you're being bent over as multiple hands pull at clothes, your mouth the first hole to meet <<if $options.fem>>girl<</if>>dick before the second <<man>> takes you from behind.<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
"@@.generic_male1;A chastity <<if setup.isCage()>>cage<<else>>belt<</if>>? What's a rampant <<if $options.fem>>pervert<<else>>slut<</if>> like you doing with something like this? No matter, you've got another hole I can use...@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
You gasp as <<he>> roughly rips the plug out of your rear.
<</if>>
<</if>>
A saliva-soaked thumb is the closest thing you get to foreplay before you're taking it hard and deep from both ends.
<<else>>
"@@.generic_male1;Looks like this <<if $options.fem>>weirdo<<else>>bitch<</if>> is itching to get filled!@@" <<He>> calls out, shoving a finger into your ass before replacing it with <<his>> hard, thrusting cock.
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
"@@.generic_male1;Chastity belt? What's a rampant slut like you doing with something like this? No matter, you've got another hole I can use...@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
You gasp as <<he>> roughly rips the plug out of your rear.
<</if>>
<</if>>
A saliva-soaked thumb is the closest thing you get to foreplay before you're taking it hard and deep from both ends.
<<else>>
"@@.generic_male1;Look at how wet this <<if $options.fem>>little shit<<else>>broad<</if>> is!@@" <<He>> calls out, running a finger through your dripping snatch before replacing it with <<his>> hard, thrusting cock.
<</if>>
<</if>>
<br><br>
The <<men>> are as rough as they are rude, pounding you hard while talking about what a desperate, filthy <<if $options.fem>>perv<<else>>slut<</if>> you are — the cock burried in your throat preventing you from even considering offering a response to the hard to deny accusations.<br>
<br>
Your body pushed back and forth you lose the fight to stay on your feet moments after the first <<man>> cums deep in your <<if setup.getItemFromType("cage")>>ass<<else>>cunt<</if>>. Your hips sad as <<he>> pulls out, held up by <<his>> "friend's" tight grip on your head as <<he>> dumps a load of <<his>> own down your throat and then tosses you aside.<br>
<br>
Slumped next to the toilet you feel like a discarded, cum-soaked tissue as you look up at the two leering <<men>> walking out of the stall.<br>
<br>
[<<moveTo "room_mall" "Pick yourself up and return to the mall." 30>>]
</div>/*#
#desc: picketers outside of newcafe, technician tells them off
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'technician_cafe_1' $now true>>
<<set $npc_technician.flags.nazi_event = true>>
<<set $scene.firstfemale = !$npc_technician.flags.sawyouinfemaleclothes && (setup.analyzeWornTags(['female','male','unisex'])=='female')>>
<<if $scene.firstfemale>>
<<set $npc_technician.flags.sawyouinfemaleclothes = true>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You're waiting for <<=setup.getNpcName('npc_technician', 'first')>> at Cafe NewType when you notice that there looks to be a group of people assembling across the court in front of an abandoned storefront.<br>
<br>
They are carrying picketing signs and you get a chill as you start to read them.<br>
<br>
"No to NewTypes," "Deus Vult," and "#Purity" you're starting to feel a bit nervous when your friend appears.<br>
<br>
Glaring daggers across the foodcourt, she raises a middle finger and shouts out at them.<br>
<br>
"@@.npc_technician;Nazis, Fuck off!@@"<br>
<br>
Noting your concerned expression, she smiles at you as she guides you into the cafe, her prior harshness instantly melted into the friendly woman you've been growing steadily closer to.<br>
<br>
"@@.npc_technician;Ignore those retrograde idiots, mall security will be through soon to knock a few heads, we've got PLENTY of friends to keep things safe around here.@@"<br>
<br>
You nod, glad to be safely inside the cafe while still impressed by your friend's brazen courage.<br>
<br>
Glancing over your shoulder confirms her prediction as a half dozen truncheon-wielding security guards, joined by <<if $npc_shoestore_assistant.profile>><<=setup.getNpcName('npc_shoestore_assistant', 'first')>> and<<else>>what looks like a giantess and<</if>> a couple other shopkeepers chase off the now fleeing "protestors." <br>
<br>
<<if $scene.firstfemale>>
She watches the commotion for a few more moments before turning to you with, her eyes running up and down your body as she takes in your new outfit. "@@.npc_technician;I am LOVING the new style, so cute and gorgeous and very, very you. I guess, back in the day, I was so used to just seeing you in those boring work slacks and shirts but this.@@" She brings her fingers to her lips for a chef's kiss motion. "@@.npc_technician;Magnifique! Now come on, let's get some coffee!@@"
<<else>>
"@@.npc_technician;Come on, let's grab some coffee!@@"
<</if>>
She heads into the Cafe.<br>
<br>
[<<moveTo "event_technician_cafe_1_2a" "Follow her in and place an order." 30>>]
</div>/*#
#desc: random event, spot rapists
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Mall Glass Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/glass_elevator.png">>
<div id="invframe" class="scrolltext">
Wandering through the mall, you pass by what once had passed for an "attraction" just off the food court.<br>
<br>
A glass elevator shuttles between the levels of the mall itself before rising higher to provide a view down across the food court, and then a panoramic view of the city itself... well, or it would if the city had not risen up around, the horizon long obscured by block upon block of glass and steel rising towards the sky.<br>
<br>
Glancing inside the elevator, you see a trio of <<men>>. <<Men>> of a particular type, the sort for which anyone with a lick of street sense is always on the look out for, but would never admit to seeing; particularly if asked by a member of the constabulary. Radiating menace and unsavouriness, the <<men>> look at you like the wolf upon the rabbit.<br>
<br>
The world may have, on the whole, moved on from people of their sort. Hard, simple people that believe in giving it to the universe hard and fast before the universe can do the same and yet here you find them, a lingering pack, lurking in plain sight within a literal bottle of brass glass.<br>
<br>
Your heart pounds in your chest, flight instincts rising fast as you are reminded that they are predator and you prey, concepts of consent as alien to their sort as it is to the feral wolves to which their hungry eyes hearken back.<br>
<br>
[<<moveTo "room_mall_interior" "Continue on your way." 60>>]<br>
[<<moveTo "event_random_glass_elevator_rape_1" "Step into the elevator." 600>>]<br>
</div>/*#
#desc: random event, raped in glass elevator
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Mall Glass Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/glass_elevator.png">>
<div id="invframe" class="scrolltext">
<<if !$fetish.get_raped || !$player.virgin.blowjob || !$player.virgin.anal>>
You take a step towards the elevator and then think better of it.<br>
<br>
<<printThought "No... that's not something I want to do<<if $fetish.get_raped>>... yet<</if>>.">> <<if !$fetish.get_raped>><<hint $options "This scene is incompatible with your current fetish flag settings.">><</if>><br>
<br>
[<<moveTo "room_mall_interior" "Hurry on your way." 0>>]
<<else>>
The <<men>> in the elevator stare at you with mounting hunger as you approach. Silent and motionless until you step inside and one reaches past to press the close button.<br>
<br>
Innocently you turn in the centre of the elevator, the door sliding closed, sealing you in and giving you a brassy reflected view as their leader, the alpha, steps towards you.<br>
<br>
<<if setup.getTotalValue("martial_arts") > 0>>
[<<moveTo "event_random_glass_elevator_rape_2" "Fight back!" 180 "<<set $scene.fight=true>>">>]<br>
<</if>>
[<<moveTo "event_random_glass_elevator_rape_2" "Freeze." 0 "<<set $scene.fight=false>>">>]
<</if>>
</div>/*#
#desc: random event, fight off rapists in glass elevator
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.fight && setup.getTotalValue("martial_arts") >= 20>>
<<set $player.flags.mall_events.elevator_fight = true>>
<<else>>
<<changeHorny 20>>
<<set $player.flags.mall_events.elevator = true>>
<<applyExperience 'humiliation' 16 'terrible' $EXPOSED>>
<<applyExperience 'anal' 12 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Mall Glass Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/glass_elevator.png">>
<div id="invframe" class="scrolltext">
<<if $scene.fight>>
<<if setup.getTotalValue("martial_arts") >= 20>>
You see the <<man>> make <<his>> move and you are instantly in motion. Slipping to the side you slam <<him>> forward into the door with enough force that <<he>> leaves a blood-trail on <<his>> slide to the floor. Before the other <<men>> can even react you're lashing out with your feet, taking one <<guy>> under the chin with enough force to lift <<him>> off the ground and almost certainly break <<his>> jaw.<br>
<br>
Your moment of surprise over the remaining <<men>> fall on you in a scramble. You put one <<guy>> down with a straight right but then two more are on you, the close quarters leaving you nowhere to retreat as they hold you for their third remaining friend to start pummeling you.<br>
<br>
You wince as <<his>> fist slams into your ribs and then fight back, stomping as hard as you can on the nearest foot then lunging forward with a head-butt. With two momentarily stunned you roll through on the other, reversing <<his>> grip into a rolling omoplata as you go straight through to detach <<his>> shoulder before putting the final two <<men>> down with a short elbow and a rising knee that probably means <<if $options.fem>>she's probably going to be sore for a few weeks<<else>>he's never going to have kids<</if>>.<br>
<br>
Over in less than a minute you stand in the middle of the elevator, broken bodies strewn around you. You catch your breath and press the button to go back down, walking away as the would-be assailant's travel back up to their original destination.<br>
<br>
<<if State.hasPlayed("theme_technician_nintendolls_mission_2")>>
[<<moveTo "event_gang_intro_alt_1" 'Head up to <<=ps(setup.getNpcName("npc_nintendolls_son", "nickname"))>> hideout.' 180 "<<set $scene.fuck=false>>">>]<br>
<</if>>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
<<elseif setup.getTotalValue("martial_arts") > 15>>
For as good as you are, one versus half a dozen would be a steep order, add in the close quarters and even your skills are insufficient. You manage to daze one attacker before they overcome your resistance, two <<men>> holding you for their leader.
<<elseif setup.getTotalValue("martial_arts") > 10>>
For as good as you are, one versus half a dozen is still way too many. With the close quarters you barely manage to throw a punch before they overcome your resistance, two <<men>> holding you for their leader.
<<elseif setup.getTotalValue("martial_arts") > 5>>
Whatever the movies may have said about fighting off a group of attackers, it was a lie, at least for someone of your skill. You barely start to throw a punch before you're overwhelmed, two <<men>> holding you for their leader.
<<else>>
Whatever the movies may have said about fighting off a group of attackers, it was a lie, at least for someone of your novice skill. You barely start to throw a punch before you're overwhelmed, two <<men>> holding you for their leader.
<</if>>
<br><br>
<</if>>
<<if !$scene.fight || setup.getTotalValue("martial_arts") < 20>>
The <<man>> is fast, very fast, gripping you tight and pressing you against the door. Without saying a word, <<he>> communicates in more primal ways, <<his>> hot breath, the way <<he>> holds you in place, giving you a moment of anticipation before pulling you back and pressing you against the clear glass at the rear of the elevator.<br>
<br>
One of the other <<men>> silently presses a button. The elevator rises and you find yourself looking down on the food court receding below.<br>
<br>
Your face <<if $player.body.breastsize[0] > 0>>and tits <</if>>mashed against the glass, you look down at the innocent mall-goers as the <<man>> enters you from behind.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>You don't even know what happened to your plug, but there is no mistaking what is inside you now for anything but what it is, a big, hard, hot human cock.<br>
<br><</if>>
Growling in your ear and forcing you to look down, the <<man>> takes <<his>> pleasure. A fucking as simple as it is primal, the alpha marking its territory. The world below, if anyone was to look up, witness to the confirmation of exactly what sort of girl you are, and where you rank.<br>
<br>
Fogging the glass with your pants, you are almost afraid it could shatter. <<His>> every thrust hard and strong, rattling through your body until, as the elevator reaches the top of its route, and you look down upon a slice of the city. <<He>> cums, lifting you just a few centimetres higher, your legs swinging in the air. You can't help but moan, momentarily imagining the whole world looking up at you, at your shame, at your surrender.<br>
<br>
Of course the rule of the pack is that everything is shared, no sooner has the alpha slid out of your cum-filled ass when it is replaced by the next. If anything <<he>> fucks you even harder, the cut-throat runner up, always looking to prove itself, its position even more precarious than that of the leader.<br>
<br>
The same sense of compensation that has the <<man>> raising you into the air with each stroke also gives <<him>> voice as <<he>> growls in your ear, calling you slut and whore and everything else, your only response to moan louder into the glass.<br>
<br>
With startling efficiency, the third and final <<man>> takes you from behind.
<<if $options.fem>>
She
<<else>>
As rough and brutal as these <<men>> are, they operate by a code. So long as certain specific bits never touch, their actions remain linear and above board, <<if $options.fem>>the last bit of what they think is dignity<<else>>their masculinity<</if>>, the only thing they have other than hate and anger and rage, preserved.<br>
<br>
Of course, if, on occasion, in the heat of the moment those bits do touch, well, did they, really? These are the sort of <<men>> around whom witnesses develop memory loss, if they know what's good for them.<br>
<br>
Such thoughts are far from your mind as the third <<man>>
<</if>>
gives it to you hard and fast. You can feel the altered timbre of <<his>> aggression — certainly <<he>> is raping your ass, as is right and proper, and yet, you feel like <<he>> is not so much using you, though <<he>> is, but punishing you, taking out on your <<if $fetish.sissy>>sissy <</if>>hole the frustration at you appearing to usurp <<his>> position. For, though you have proven definitively that "women such as you" exist and are still subject to the law of<<if $options.fem>> "women <<else>> "men <</if>>such as them," it is not every day that the rabbit hops into the wolf's den, but the wolf yet needs to eat.<br>
<br>
Your third and final injection of cum happens just as the glass elevator reaches the top, the elevator letting out a cheery ding as the door slides open and the <<men>> file out, leaving you on the floor like used trash<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>, your plug is kicked back into the elevator, bouncing twice before settling next to your leg. Reflexively you fumble it back into your ass lest any more cum leak out of you.<</if>><br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
Ass once again filled, as is proper, you stagger to your feet.
<<else>>
Leaking cum, you stagger to your feet.
<</if>>
The rabbit has sacrificed itself, and thus it gets to gingerly hop away from the wolf's den and survive, even as it carries the mark of the pack deep in its core.<br>
<br>
You watch as the <<men>> disappear into a private club. You had no idea it even existed up here, and from the looks of it, and the <<men>> who just went inside, you can't help but wonder what nefarious plans are happening within.<br>
<br>
<<if State.hasPlayed("theme_technician_nintendolls_mission_2")>>
You're lying in a pool of cum as the <<men>> laugh and walk out of the elevator on their way into the private club...<br>
<br>
[<<moveTo "event_gang_intro_alt_2" "Force yourself back to your feet and ask to see their boss!" 180 "<<set $scene.intro='fuck'>>">>]
<<else>>
The elevator doors close and it starts back down.<br>
<br>
<</if>>
[<<moveTo "event_random_glass_elevator_rape_3" "Back to the mall." 600>>]
<</if>>
</div>/*#
#desc: random event, raped in glass elevator
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 16 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Mall Glass Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_inside.png">>
<div id="invframe" class="scrolltext">
As you ride down you find yourself looking down at the other mall patrons, some of whom are looking back up, the looks of disgust telling you that they watched the entire thing — your debauched display happening in full public view. Full of cum and depravity you wobble a bit as the elevator settles back on the ground floor and you rise to your feet.<br>
<br>
Staggering out you lock eyes with another mall patron, their look of disgust before they turn away telling you everything — they were watching, they saw you being fucked up against the glass.<br>
<br>
There is nowhere to hide and so you take another step on your walk of shame, one <<man>> leering at you, a woman turning away into a shop at the sight of you, they all know what you are — a used slut.<br>
<br>
<<if $fetish.catcall>>
A wolf whistle sounds across the foodcourt, a <<man>> grinning at you and moving <<his>> hand like <<he>> was pushing your head down for an under-the-table blowjob. You almost take a step towards <<him>> and <<he>> laughs harshly, shaking <<his>> head and turning away.<br>
<br>
<</if>>
<<printThought "Is this what I am? Why did I let that happen to me? And... why does the memory of it turn me on so much?">><br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: random event, anal vibrator in mall
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeTag('plug', ['vibrating'])>>
<<removeRandomEvent 'mall_interior' 'anal_vibrator'>>
<<set $randomEvents.mall_interior.pushUnique({id : 'anal_vibrator', done: false})>>
<<moveTo "room_mall_interior">>
<<else>>
<<changeHorny 30>>
<</if>>
<</if>>
<<set $player.location to "Mall Interior">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_inside.png">>
<div id="invframe" class="scrolltext">
You are walking through the mall when you feel something odd. It takes you a moment to realise that the <<=setup.getItemTypeName('plug')>> in your rear is vibrating, not just vibrating, but steadily increasing in speed seemingly with each step.<br>
<br>
Your heart starts to race as you look around — nobody seems to be aware of your predicament, but the power is steadily ramping up and becoming ever more distracting...<br>
<br>
[<<moveTo "event_random_anal_vibrator_2" "Hurry and find someplace quiet to hide and wait things out." 600 "<<set $scene.hide=true>>">>]<br>
[<<moveTo "event_random_anal_vibrator_2" "Try to ignore the stimulation and continue on your way." 600 "<<set $scene.hide=false>>">>]
</div>/*#
#desc: random event, react to anal vibrator in mall
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.world_events.mall_plug = true>>
<<set _anal = setup.getEffectivePlugSize()>>
<<if $scene.hide>>
<<applyExperience 'humiliation' 8 'very' $INCOGNITO>>
<<applyExperience 'anal' _anal 'unbelievable' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 12 'very' $EXPOSED>>
<<applyExperience 'anal' _anal 'unbelievable' $EXPOSED>>
<</if>>
<<playerOrgasm>>
<<set $player.timebased.horny = 20>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.hide>>
<<set $player.location to "Mall Restroom Private Stall">>
<<createAdvBGR "./images/locations/private_bathroom_stall.png">>
<<else>>
<<set $player.location to "<<printShopName 'mall_wholesale_store' true>>">>
<<createAdvBGR "./images/locations/mall_muralmart.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.hide>>
The vibrations increase in power as you manage to stumble into a restroom and slam the stall door closed behind you. By now the stimulation in your rear is a full on party and you lose your balance, landing hard on the bare toilet, the final jostling of the plug pushing you over the edge and making you climax,
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.checkItemTypeWorn("cage")>>
leaking through your <<if setup.isCage()>>cage<<else>>belt<</if>> and
<<else>>
jizzing your "pants" in humiliation,
<</if>>
<<else>>
leaking down your leg <<if setup.checkItemTypeWorn("cage")>>past your belt <</if>>while
<</if>>
struggling to suppress a depraved moan as you hear someone washing their hands.<br>
<br>
"@@.generic_female1;You alright in there?@@" They ask as you bite your lip, heart still racing as you bite your lip and try to act like you don't exist.<br>
<br>
<<printThought "I just analgasmed nearly in public... what's wrong with me?">> You ask, though there is no answer, save for the plug finally halting its vibrations.<br>
<br>
You wait until you hear the fading footfalls of the person giving up and walking away before you finally emerge from the stall. Still walking on somewhat rubbery legs it is only after you're back in the mall proper that you realise that you never even removed the plug...
<<else>>
You try to focus and ignore the roiling stimulation in the rear, but there's no denying the distraction and you find yourself wandering aimlessly into one of the mall's many stores.<br>
<br>
Your heart is pounding as you focus on walking somewhat normally as the plug buzzes faster and faster. A particularly hard step has it jostle into an even more stimulative position and you stumble, barely catching yourself on a shelf to keep from falling as another passing shopper looks at you in surprise.<br>
<br>
"@@.generic_male1;You okay?@@" They ask as you bite and nod quickly, desperate for them to move on as you do everything you can to put on a "normal" face even as an analgasm roars towards you like an oncoming train.<br>
<br>
Fortunately they move on and you manage to keep it together just long enough for them to turn the corner onto another aisle before your plug kicks into another gear and you sag to the floor, cumming right there in the middle of the store,
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.checkItemTypeWorn("cage")>>
your humiliation leaking through your <<if setup.isCage()>>cage<<else>>belt<</if>> and
<<else>>
jizzing your "pants" in humiliation,
<</if>>
<<else>>
leaking down your leg <<if setup.checkItemTypeWorn("cage")>>past your belt <</if>>while
<</if>>
barely suppressing an analgasm cry of depraved joy.<br>
<br>
The plug thankfully stopping its stimulation a few moments after your perverted climax you hurry back to your feet and rush away, eager to put distance between yourself and the site of your "crime..."
<</if>>
<br><br>
[<<moveTo "room_mall_interior" "Continue." 60>>]
</div>/*#
#desc: mall location select
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set _tmpImage = "./images/locations/mall_outside.png">>
<<set _open = true>>
<<else>>
<<set _tmpImage = "./images/locations/mall_outside_night.png">>
<<set _open = false>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_interior')>>
<<if !(_nextdate == null) && setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _tmpImage>>
<div id="invframe" class="scrolltext">
You arrive at the local mall. It is open from <<if $options.militaryTime>>8:00 till 23:00 o'clock<<else>>8 am to 11 pm<</if>>, though the hours of the various shops might be different.
<<if _open>>
The doors to the mall are currently wide open.
<<else>>
The doors to the mall have been closed since it is outside business hours.
<</if>>
<br><br>
<<if !$player.flags.jobsecretary>>
You wonder what made you decide to walk to the mall — you need to get to work!
<<elseif $currentTasks.hasOwnProperty('manager_first_morning_inspection_task_retry') && !$currentTasks.manager_first_morning_inspection_task_retry.finished>>
[@@.link_locked;The mall is opening too slowly and you need to get to work ASAP.@@]<br>
<<else>>
<<if _open>>
<<if _nextdate != null && setup.compareDay($now,_nextdate)>>
[<<moveTo "room_mall_interior" "Head inside and wait for your date." _tmpSeconds>>]<br>
<br>
<</if>>
<<include "mall_shops">>
<<if !(_nextdate != null && setup.compareDay($now,_nextdate))>>
[<<moveTo "room_mall_interior" "Head inside the mall." 60>>]<br>
<</if>>
<<if $player.locations.plant>>
<br><br>
Across the street you see <<printShopName 'plant_shop'>>.<br>
[<<moveTo "room_horticulturist" "Visit <<printShopName 'plant_shop'>>." 120>>]
<</if>>
<<elseif window.getUTCHours($now) < 8>>
<<set _mallOpen = setup.setNextDate($now, 0, 8, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_mallOpen)>>
<<if (8-window.getUTCHours($now)) == 1>>
The mall opens at 8, which is in less than an hour.
<<elseif (7-window.getUTCHours($now)) == 1>>
The mall opens at 8, which is over an hour away.
<<else>>
The mall opens at 8, which is over <<=7-window.getUTCHours($now)>> hours away.
<</if>>
<<if $player.locations.plant>>
Across the street you see <<printShopName 'plant_shop' true>>. It, too, is closed.
<</if>>
<br><br>
<<if $now.getUTCFullYear() == 2033 && $now.getUTCMonth() == 5 && $now.getUTCDate() == 29 && $now.getUTCHours($now) < 12>>
<<if setup.checkItemTypeWorn("panties")>>
<<printThought "Maybe I can to find an employee who can sell me some underwear before the mall?">>
<<else>>
<<printThought "Alright, so I just need to find an employee who can sell me some underwear before the mall opens so I can get to work on time.">>
<</if>>
<br><br>
[<<moveTo "event_general_storevisit_1_1" "Head for the general apparel store and try to get someone's attention." 120>>]<br>
<</if>>
[<<moveTo "room_mall" "Wait for the mall to open." _tmpSeconds>>]
<</if>>
<</if>>
<br><br>
<<include thoughts_current>>
[<<moveTo "room_citymap" "Return to the inner city." 300>>]
</div>/*#
#desc: mall bathroom
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("cage") && !$options.fem>>
<<if random(10) == 1>>
<<initRoom>>
<<moveTo "event_random_mall_chastity">>
<</if>>
<</if>>
<<if $npc_manager.stage > 1 && !$scene.hasOwnProperty('mallMale') && random(10) <= 5 && !$options.fem>>
<<set $scene.character = setup.getRandomChar("mall_male_restroom")>>
<<if $scene.character.passage_approach == "event_random_mall_rrm_assault" && !$npc_barber.profile>>
<<set $scene.character = "">>
<<else>>
<<set $scene.mallMale = true>>
<</if>>
<<else>>
<<set $scene.character = "">>
<</if>>
<</if>>
<<set $player.location to "Mall Men's Restroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
You enter the mall toilet.<br>
<br>
<<if !$scene.character>>
<<include thoughts_current>>
<<else>>
As you're standing around a <<=$scene.character.description>> walks <<if random(2)==1>>into the restroom<<else>>out of one of the stalls<</if>>.<br>
<br>
<<mallBathroomOption $scene.character>>
<br>
<</if>>
<<if setup.getTotalValue("makeup") > 0>>
<<if $player.sec_style.clothing.makeup == "">>
[@@.link_locked;You do not think you are ready to put on makeup in a public restroom.@@]
<<if $player.makeup.template != "">>
<br>
[<<moveTo 'room_mall_toilet_men' 'Just wash your face.' 0 "<<set $player.makeup.template=''>><<set $player.makeup.messed=0>>">>]
<</if>>
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Mall Bathroom">><<set $scene.return_makeuproom="room_mall_toilet_men">><<set $scene.makeuproom_image="./images/locations/mall_toilet.png">><<set $scene.return_makeuproomtext="Finished.">>'>>]
<</if>>
<br><br>
<</if>>
[<<moveTo "room_mall_toilet_men_change" "Enter a private stall." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: mall men's room changing
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include checkPossibleVoluntary>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.voluntaryFollowupScene = "room_mall_interior">>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "Mall Men's Restroom Private Stall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private_bathroom_stall.png">>
<div id="invframe" class="scrolltext">
You're currently inside a private toilet stall.<br>
<br>
<<include glanceVoluntary>>
<<include thoughts_current>>
<<if setup.checkOutsideDecency() || setup.checkOutsideDecencyReason() == "makeup_none" || setup.checkOutsideDecencyReason() == "makeup_messy">>
[<<moveTo "room_mall_toilet_men" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif $npc_manager.stage == 1 && $player.sec_style.clothing.female != "enthusiast" && setup.checkOutsideDecencyReason() == "female" && $npc_manager.stagevalues[1].unisexsecretary>>
<<printThought "My work uniform may be unisex attire but this? This is a bit more than I'm quite ready to wear out...">><br>
<br>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<<else>>
<<include triggerVoluntary>>
[@@.link_locked;You're not going to leave the stall dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $player.makeup.template != "" && "too_fem" == setup.checkOutsideMakeupReason()>>
[<<moveTo "room_mall_toilet_men_change" "Maybe if I removed this makeup?" 120 "<<set $player.makeup.template = ''>>">>]<br>
<<elseif setup.checkOutsideDecencyReason() == "chastity" && setup.calcErection()>>
[<<moveTo "event_changing_room_jerk_1" "Jerk off so you can put your chastity device back on." 180 '<<set $scene.background="./images/locations/private_bathroom_stall.png">><<set $scene.returnLoc="room_mall_toilet_men_change">>'>>]<br>
<</if>>
<</if>>
</div>/*#
#desc: mall women's bathroom
#status: FINISHED 0.7.10.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.stage > 1 && random(10) < 5 && !$scene.hasOwnProperty('mallFemale')>>
<<set $scene.character = setup.getRandomChar("mall_female_restroom")>>
<<set $scene.mallFemale = true>>
<<else>>
<<set $scene.character = "">>
<</if>>
<</if>>
<<set $player.location to "Mall Women's Restroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<div id="invframe" class="scrolltext">
You enter the bathroom.<br>
<br>
<<if !$scene.character>>
<<include thoughts_current>>
<<else>>
As you're standing around a <<=$scene.character.description>> walks <<if random(2)==1>>into the restroom<<else>>out of one of the stalls<</if>>.<br>
<br>
<<mallBathroomOption $scene.character>>
<br>
<</if>>
<<if setup.getTotalValue("makeup") > 0>>
<<if $player.sec_style.clothing.makeup == "">>
[@@.link_locked;You do not think you are ready to put on makeup in a public restroom.@@]
<<if $player.makeup.template != "">>
<br>
[<<moveTo 'room_mall_toilet_women' 'Just wash your face.' 0 "<<set $player.makeup.template=''>><<set $player.makeup.messed=0>>">>]
<</if>>
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Mall Restroom">><<set $scene.return_makeuproom="room_mall_toilet_women">><<set $scene.makeuproom_image="./images/locations/mall_toilet_2.png">><<set $scene.return_makeuproomtext="Finished.">>'>>]
<</if>>
<br><br>
<</if>>
[<<moveTo "room_mall_toilet_women_change" "Enter a private stall." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: mall women's room changing
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = true>>
<<include checkPossibleVoluntary>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.voluntaryFollowupScene = "room_mall_interior">>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "Mall Women's Restroom Private Stall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private_bathroom_stall.png">>
<div id="invframe" class="scrolltext">
You're currently inside a private toilet stall.<br>
<br>
<<include glanceVoluntary>>
<<include thoughts_current>>
<<if setup.checkOutsideDecency() || setup.checkOutsideDecencyReason() == "makeup_none" || setup.checkOutsideDecencyReason() == "makeup_messy">>
[<<moveTo "room_mall_toilet_women" "Leave the stall." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif $npc_manager.stage == 1 && $player.sec_style.clothing.female != "enthusiast" && setup.checkOutsideDecencyReason() == "female" && $npc_manager.stagevalues[1].unisexsecretary>>
<<printThought "My work uniform may be unisex attire but this? This is a bit more than I'm quite ready to wear out...">><br>
<br>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<<else>>
[@@.link_locked;You're not going to leave the stall dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $player.makeup.template != "" && "too_fem" == setup.checkOutsideMakeupReason()>>
[<<moveTo "room_mall_toilet_women_change" "Maybe if I removed this makeup?" 120 "<<set $player.makeup.template = ''>>">>]<br>
<<elseif setup.checkOutsideDecencyReason() == "chastity" && setup.calcErection()>>
[<<moveTo "event_changing_room_jerk_1" "Jerk off so you can put your chastity device back on." 180 '<<set $scene.background="./images/locations/private_bathroom_stall.png">><<set $scene.returnLoc="room_mall_toilet_women_change">>'>>]<br>
<</if>>
<</if>>
<<include triggerVoluntary>>
</div>/*#
#desc: sex store
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.tv = setup.checkItemInInventory("flatscreen_tv")>>
<<if $scene.tv>>
<<itemToWardrobe "flatscreen_tv">>
<<addEvent "tv_delivery">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_wholesale_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_muralmart.png">>
<div id="invframe" class="scrolltext">
<<if $scene.tv>>
Your newly purchased tv is shipped to your flat.<br>
<br>
<</if>>
<<printShop 'room_mall_wholesale_store' 'mall_wholesale_store' $shopStatus>>
<br><br>
[<<moveTo "room_mall_glasses" "Check out the glasses section." 30>>]<br>
<<if $npc_manager.stage >= 2>>
[<<moveTo "room_mall_special_interest" "Check out the special interest section." 30>>]<br>
<<else>>
[@@.link_locked;The special interest section is being reorganised, check back in a few days.@@]<br>
<</if>>
<<include thoughts_current>>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: mall interior location select
#status: FINISHED 0.7.8.0
#*/
<<if setup.getItemsInInventoryByFilter('tag', ['bondage']).length > 0>>
<<initRoom>>
<<moveTo "event_bondage_force_home">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom() && !$scene.mallEvent>>
<<set $scene.location = "mall_interior">>
<<set $scene.passthrough = "room_mall_interior">>
<<set $scene.mallEvent = true>>
<<include locationBasedRandomEvent>>
<</if>>
<</if>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set _tmpImage = "./images/locations/mall_inside.png">>
<<set _open = true>>
<<else>>
<<set _tmpImage = "./images/locations/mall_outside_night.png">>
<<set _open = false>>
<</if>>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_interior')>>
<<if !(_nextdate == null) && setup.compareDay($now,_nextdate)>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR _tmpImage>>
<div id="invframe" class="scrolltext">
<<if _open>>
You are wandering around the mall.<br>
<br>
<<if _nextdate != null && setup.compareDay($now,_nextdate)>>
[<<moveTo "room_mall_interior" "Wait to meet your friend." _tmpSeconds>>]<br>
<br>
<</if>>
<<include "mall_shops">>
<br>
<<if $currentTasks.hasOwnProperty("task_nintendolls_destroy")>>
<<if $currentTasks.task_nintendolls_destroy.condition == "Failed">>
[<<moveTo "event_gang_repeat_1" 'Try and talk to <<=setup.getNpcName("npc_nintendolls_son","nickname")>> about re-scheduling the job.' 300>>]<br>
<<elseif $currentTasks.task_nintendolls_destroy.finished>>
[@@.link_locked;The elevator to the gangster hideout above the mall is no longer in service.@@]<br>
<<else>>
[@@.link_locked;You do not currently have business with <<=setup.getNpcName("npc_nintendolls_son","nickname")>>.@@]<br>
<</if>>
<<elseif State.hasPlayed("theme_technician_nintendolls_mission_2")>>
<<if $player.flags.mall_events.elevator || $player.flags.mall_events.elevator_fight>>
You stand outside the glass elevator in the mall and reflect on your previous experiences. You don't remember any of the <<men>> looking like the picture <<=setup.getNpcName('npc_technician', 'first')>> showed you of <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>>,
<<if $player.flags.mall_events.elevator && $player.flags.mall_events.elevator_fight>>
you wonder if they realise that the girl they fucked and the one who kicked their ass was the same person, either way, maybe it'll be enough to get you in the door?
<<elseif $player.flags.mall_events.elevator>>
they were pretty rough, but your "partners" seemed pleased with using you, perhaps they might recognise you and let you in for another round?
<<elseif $player.flags.mall_events.elevator_fight>>
on the one hand... you beat up a gang, on the other, well... wouldn't that make you a valuable recruit?
<<else>>
error; unexpected state
<</if>>
<br><br>
[<<moveTo "event_gang_intro_1" "Head up and introduce yourself..." 180>>]<br>
<<else>>
You stand outside the glass elevator in the mall, a group of rough-looking <<men>> leering out at you.<br>
<br>
<<printThought "Those must be part of <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> gang... Do I really want to get into an enclosed space with them, alone?">><br>
<br>
[<<moveTo "event_random_glass_elevator_rape_1" "Step on board." 180>>]<br>
<</if>>
[<<moveTo "event_gang_intro_2" 'Call <<=setup.getNpcName("npc_admin", "first")>> to accompany you up...' 600 "<<set $scene.intro='admin'>>">>]<br>
<</if>>
<<if $player.locations.plant>>
<br>
[<<moveTo "room_horticulturist" "Visit <<printShopName 'plant_shop'>> across the street." 120>>]<br>
<br>
<</if>>
[<<moveTo "room_citymap" "Leave the mall." 300>>]
<<else>>
The mall has closed, best to be on your way.<br>
<br>
<<include thoughts_current>>
[<<moveTo "room_citymap" "Return to the inner city." 300>>]
<</if>>
</div>Glancing at the directory, a handful of locations spark your interest: <br>
<br>
<<if $player.sec_style.clothing.underwear == "">>
<<if (getUTCHours($now) >=17 )>>
[<<moveTo "room_mall_apparel_store" "<<printShopName 'mall_apparel_store' true>>." 30>>]<br>
<<elseif $now.getUTCFullYear() == 2033 && $now.getUTCMonth() == 5 && $now.getUTCDate() == 29 && $now.getUTCHours($now) < 12 && State.hasPlayed("event_landlord_brokenwashmachine_3_money_2")>>
<<printThought "Alright, so I just need to find an employee who can sell me some underwear before the mall opens so I can get to work on time.">><br>
<br>
[<<moveTo "event_general_storevisit_1_1" "Head for the general apparel store and try to get someone's attention." 120>>]
<</if>>
<<elseif $now.getUTCFullYear() == 2033 && $now.getUTCMonth() == 5 && $now.getUTCDate() == 29 && $now.getUTCHours($now) < 12 && State.hasPlayed("event_landlord_brokenwashmachine_3_money_2")>>
The <<printShopName 'mall_apparel_store' true>> is closed: "We are terribly sorry, but inventory has taken longer then expected. The <<printShopName 'mall_apparel_store'>> will be open after midday today. Thank you for your understanding. Please come back later today!" <br>
<br>
You look inside, but cannot seem to get anyone's attention.<br>
<br>
<<printThought "Looks like I'm stuck with what I already have, I should really head to work, I'm already late.">><br>
<<else>>
[<<moveTo "room_mall_apparel_store" "<<printShopName 'mall_apparel_store' true>>." 30>>]
<</if>>
<br>
[<<moveTo "room_mall_lingerie_shop" "<<printShopName 'mall_lingerie_shop' true>>." 30>>]<br>
[<<moveTo "room_mall_shoe_store" "<<printShopName 'mall_shoe_store' true>>." 30>>]<br>
<<if !$player.locations.beautyparlor>>
[<<moveTo "room_mall_manlystan" '<<=ps(setup.getNpcName("npc_barber","first"))>> barber shop for men.' 30>>]<br>
<<else>>
[<<moveTo "room_mall_beautyparlor" "Dye Me Crazy: Beauty Parlour." 30>>]<br>
<</if>>
[<<moveTo "room_mall_wholesale_store" "<<printShopName 'mall_wholesale_store' true>>." 30>>]<br>
<<if $player.locations.mallcafe>>
<<if State.hasPlayed("event_destroy_technician_fate_1")>>
[@@.link_locked;Cafe: Newtype IV is boarded up and closed.@@]<br>
<<else>>
[<<moveTo "room_mall_cafe" "Cafe: Newtype IV." 30>>]<br>
<</if>>
<</if>>
<<if $player.locations.sexstore>>
[<<moveTo "room_mall_sexstore" "<<printShopName 'mall_sexstore' true>>." 30>>]<br>
<<else>>
[@@.link_locked;You see a new storefront — <<printShopName 'mall_sexstore'>>! but it's currently closed up and says "Opening Soon."@@] <<hint $options "You need to progress further into the game for this to be available.">><br>
<</if>>
<br>
<<if $player.plocation != "room_mall">>
[<<moveTo "room_mall_toilet_men" "Men's Public Bathrooms." 30>>]
[<<moveTo "room_mall_toilet_women" "Women's Public Bathrooms." 30>>]
<</if>>/*#
#desc: mall interior location select
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set _tmpImage = "./images/locations/mall_inside.png">>
<<set _open = true>>
<<else>>
<<set _tmpImage = "./images/locations/mall_outside_night.png">>
<<set _open = false>>
<</if>>
<<createAdvBGR _tmpImage>>
<div id="invframe" class="scrolltext">
You look at some of your recent purchases and decide that they're a bit bulky to be lugging around all over the place.<br>
<br>
[<<moveTo "room_foyer" 'Head home.' 300>>]
</div>/*#
#desc: ask about working sex store
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> about the offer of work <<he npc_sexstore_clerk>> mentioned when you saw <<him npc_sexstore_clerk>> at <<printShopName 'sex_club'>>?<br>
<br>
"@@.npc_sexstore_clerk;Ah... yes... the offer remains open, but now is not a good time,@@" <<he npc_sexstore_clerk>> gestures at the store where there are quite a number of customers milling about. "@@.npc_sexstore_clerk;I am caught in one of those Catch-22 situations where I am so understaffed I cannot take time to train you, but please, do come back some other time when things are perhaps a bit quieter.@@"<br>
<br>
[<<moveTo "room_mall_sexstore" "Browse the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Head back to the mall." 30>>]
</div>/*#
#desc: first offer to do bondage work at sex store
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
As you're browsing the store <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> approaches you with a friendly smile.<br>
<br>
"@@.npc_sexstore_clerk;Good day, <<=$player.first_name>>... I was just looking at you from across the shop and had a thought. You see your interests in bondage might make you qualified to provide us with a much-needed service. For which you would be compensated, of course.@@"<br>
<br>
[<<moveTo "room_mall_sexstore_first_bondage_offer_2" "Listen to what <<he npc_sexstore_clerk>> has to say." 30>>]
</div>/*#
#desc: first offer to do bondage work at sex store
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_sexstore_clerk.flags.workStage = 1>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> smiles wider as <<he npc_sexstore_clerk>> leads you to the front of the store, specifically the relatively empty storefront window.<br>
<br>
"@@.npc_sexstore_clerk;So there was a bit of a mix-up and the mannequin we ordered ended up on back-order, leading to this appallingly empty storefront. Obviously a more interesting display will attract more foot traffic, and thus more customers to make purchases. I was just in the process of trying to make an arrangements of whips and such but... well, a living exhibit would be far more enticing, don't you think?@@"<br>
<br>
<<printThought "Wait, is <<he npc_sexstore_clerk>> suggesting I pose in the window, where everyone can see... in some sort of fetishistic outfit?">><br>
<br>
"@@.npc_sexstore_clerk;Now before your exhibitionist side gets TOO excited, we just got in a shipment of vacuum beds. I was thinking we pop you in one of those — total anonymity but quite the enticing image for anyone passing by. Especially if they happen to spot you... wiggle.@@"<br>
<br>
Your heart pounds. <<Hes npc_sexstore_clerk>> right that nobody would know it was you, but to be so tightly bound in public, for money... you can't help but shiver a bit at the thought.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_1_1" "Say you'll do it." 60>>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_decline" "Decline <<his npc_sexstore_clerk>> offer." 60>>]
</div>/*#
#desc: first offer to do bondage work at sex store
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> that you are unable to work as a store-window bondage model today.<br>
<br>
"@@.npc_sexstore_clerk;Well, I suppose I will figure something else out, then. But if you have availability some other time, do let me know.@@"<br>
<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]
</div>/*#
#desc: ask about another bondage shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() >= 20>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> shakes <<his npc_sexstore_clerk>> head. "@@.npc_sexstore_clerk;It is a bit too close to closing for a proper shift, come back some other time earlier in the day.@@"<br>
<br>
[<<moveTo "room_mall_sexstore" "Back to the store." 30>>]
<<elseif setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> smiles. "@@.npc_sexstore_clerk;Of course, of course! You in the window does wonders for driving traffic! If I could only afford a full-time slave to keep trussed and on display, but, alas.@@"<br>
<br>
<<if $npc_sexstore_clerk.flags.workStage > 1>>
[<<moveTo "room_mall_sexstore_bondage_work_vac_1" "Ask to be zipped up in the vacbed again." 300>>]<br>
<<else>>
[<<moveTo "room_mall_sexstore_bondage_work_1_1" "Say you're ready to try working a shift." 300>>]<br>
<</if>>
<<if $npc_sexstore_clerk.flags.workStage > 3>>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_1" 'Ask if you can "suspend" a shift.' 300>>]<br>
<</if>>
<<if $npc_sexstore_clerk.flags.workStage > 5>>
[<<moveTo "room_mall_sexstore_bondage_work_floor_1" 'Ask to work as a floor model.' 300>>]<br>
<</if>>
<<if $npc_sexstore_clerk.flags.workStage > 2>>
[<<moveTo "room_mall_sexstore_bondage_work_progress" "Ask if <<he npc_sexstore_clerk>> might have any new sales opportunities?" 120>>]
<</if>>
<<else>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> shakes <<his npc_sexstore_clerk>> head. "@@.npc_sexstore_clerk;I don't think I can squeeze you in today — pun not intended. Come back some other time.@@"<br>
<br>
[<<moveTo "room_mall_sexstore" "Back to the store." 30>>]
<</if>>
</div>/*#
#desc: ask about a more advanced bondage shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You ask if <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> has any further "opportunities" for you to work at the store?<br>
<br>
<<switch $npc_sexstore_clerk.flags.workStage>>
<<case 2>>
"@@.npc_sexstore_clerk;At present just the vacbed — you make such a lovely window model in it!@@"<br>
<br>
<<case 3>>
"@@.npc_sexstore_clerk;In fact, I do! We just got a new line of suspension gear in and I think it would be wonderful promotion if we could show it off by hanging you in the window! I have a catsuit you can borrow and really highlight the appearance of a helpless slave, suspended in the air! I think the anonymity really draws the customer in and helps them imagine how it might feel if it was them inside the restraints. Of course there is always still the vacbed, if you wished to do another shift all zipped up.@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo "room_mall_sexstore_bondage_work_2_1" "Say you'll do it." 60>>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_1" "Opt for the vacbed." 60>>]<br>
<<else>>
[@@.link_locked;You remembered you have something planned soon.@@]<br>
<</if>>
<<case 4>>
"@@.npc_sexstore_clerk;Nothing at the moment, but maybe if you can prove yourself more by working suspended I might have something, especially if you're willing to wear a nice plug and hand over remote control to customers.@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_2" "Agree to work a suspended shift and give customers control over a vibrating, electrified plug." 600 "<<set $scene.vibe=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_2" "Agree to work a suspended shift and be bound and taunted, but no remote control." 600 "<<set $scene.vibe=false>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_1" "Opt for the vacbed." 60>>]<br>
<<else>>
[@@.link_locked;You remembered you have something planned soon.@@]<br>
<</if>>
<<case 5>>
"@@.npc_sexstore_clerk;Back for even more? You really are a bondage slut. Still, now that you mention it, I did have another idea... how would you feel about being a "floor model?" You wouldn't believe how many comments I've gotten while you were on shift from people asking how you might look in something else. With you a living mannequin, well... we would get all sorts of additional sales, and you would probably get tips, to boot! Of course your other opportunities remain, vacbed or suspension, if you would rather a more passive shift...@@"<br>
<br>
<<printThought "All the previous work has been bound and anonymous... this seems like quite the additional step. But she who dares, right?">><br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo "room_mall_sexstore_bondage_work_3_1" "Say you'll do it." 60>>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_1" "Opt for the vacbed." 60>>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_1" "Work another suspended shift." 60>>]<br>
<<else>>
[@@.link_locked;You remembered you have something planned soon.@@]<br>
<</if>>
<<case 6>>
"@@.npc_sexstore_clerk;Further? You really are an insatiable kinkster! Alas, at present I can offer you no more than what you have done previously, though certainly that is more than enough! The store is getting quite the buzz thanks to you!@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
[<<moveTo "room_mall_sexstore_bondage_work_vac_1" "Ask to be zipped up in the vacbed again." 300>>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_1" 'Ask if you can "suspend" a shift.' 300>>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_1" 'Ask to work as a floor model.' 300>>]<br>
<<else>>
[@@.link_locked;You remembered you have something planned soon.@@]<br>
<</if>>
<</switch>>
[<<moveTo "room_mall_sexstore_bondage_work_decline" "Decline <<his npc_sexstore_clerk>> offer." 60>>]
</div>/*#
#desc: offered to work in vacbed
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You agree to <<=ps(setup.getNpcName('npc_sexstore_clerk', 'first'))>> job offer and <<he npc_sexstore_clerk>> grins wide. "@@.npc_sexstore_clerk;Wonderful! Well, no reason to wait, come on then — your pay will be based on the sales you bring in while you're working. I figure an hour should be a good shift length — don't want you getting TOO hot and bothered — at least not for your first shift!@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_1_2" "Nod in agreement." 60>>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_decline" "Change your mind." 60>>]
</div>/*#
#desc: put in vacbed
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Window.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sexstore_window.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> draws a curtain closed over the store window-front for privacy and then helps you up into the display area. Pulling a standing vacbed out from a storage closet <<he npc_sexstore_clerk>> nods.<br>
<br>
"@@.npc_sexstore_clerk;This will work, and feel, better if you strip, the better to show off exactly how skin-tight the whole thing gets.@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_1_3" "Remove your clothes." 60 "<<set $scene.strip='all'>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_1_3" "Just strip to your underwear." 60 "<<set $scene.strip='outer'>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_1_3" "Say you'd rather remain dressed." 60 "<<set $scene.strip='none'>>">>]
</div>/*#
#desc: strip and get into vacbed
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.strip>>
<<case 'all'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<case 'outer'>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<</switch>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Window.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sexstore_window.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.strip>>
<<case 'all'>>
You strip naked and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> smiles. "@@.npc_sexstore_clerk;Yes... that body nice and shrink-wrapped under latex... if that does not drive traffic, nothing will!@@"
<<case 'outer'>>
You shed your outer clothes but stop once you're down to your underthings. <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> peers at you. "@@.npc_sexstore_clerk;Hmm, not quite as nice as naked for really highlighting what the vacbed can do, but some might be drawn in by the shadowy profile of compressed lingerie nonetheless.@@"
<<case 'none'>>
You decline to take off any of your clothes before stepping into the vacuum frame. <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> shrugs. "@@.npc_sexstore_clerk;Doubt you'll pull in as much attention that way, the clothing kind of messes up the crisp lines of that shrink-wrapped look, but it is your decision. Just having something in the window will be better than nothing.@@"
<<default>>
ERROR: unexpected scene.strip <<=$scene.strip>>
<</switch>>
<br><br>
You step into the frame and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> zips things up. You bite onto the mouthpiece and <<he npc_sexstore_clerk>> confirms that you can breathe before guiding you to position yourself standing on a pair of small platforms with your arms raised. <<He npc_sexstore_clerk>> turns on the vacuum, the latex around you drawing in rapidly.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_1_4" "Here we go." 300>>]
</div>/*#
#desc: how to act during vacbed shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'bondage' 'other_bondage' 'vacbed'>>
<<applyExperience 'humiliation' 7 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sexstore_window.png">>
<div id="invframe" class="scrolltext">
The compression of the latex gets tighter and tighter until it clings to you like a second skin, squeezing you from every direction in its slick embrace. You gasp as you feel the platforms you were standing on removed but things are so tight you do not move a centimetre, instead remaining suspended in latex, unable to shift more than a finger.<br>
<br>
Your head covered you cannot see and your hearing is greatly muffled, the result that your senses shift, your breaths and pulse echoing in your ears as you become hyper-aware of the tight latex against your skin<<if setup.checkItemTypeWorn("plug")>>, as well as the <<=setup.getItemTypeName("plug")>> inside your ass<</if>>.<br>
<br>
It does not take long before you lose all track of time, floating in your rubber prison, a <<if $scene.strip == "naked">>naked <</if>>latex fuck-doll, desperate for someone to unwrap and put to use...<br>
<br>
<<printThought "I wonder if anyone is looking at me right now? Oh this is so kinky... I'm getting so turned on...">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_1_5" "Give in to lusts and writhe in your bonds." 600 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_1_5" "Attempt to retain your composure." 600 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: vacbed shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<switch $scene.strip>>
<<case 'all'>>
<<applyExperience 'humiliation' 13 'terrible' $INCOGNITO>>
<<case 'outer'>>
<<applyExperience 'humiliation' 10 'terrible' $INCOGNITO>>
<<case 'none'>>
<<applyExperience 'humiliation' 7 'terrible' $INCOGNITO>>
<</switch>>
<<alterStatAllWorn 'sweaty' '["add",100]'>>
<<applyFatigue 80>>
<<else>>
<<switch $scene.strip>>
<<case 'all'>>
<<applyExperience 'humiliation' 10 'terrible' $INCOGNITO>>
<<case 'outer'>>
<<applyExperience 'humiliation' 7 'terrible' $INCOGNITO>>
<</switch>>
<<alterStatAllWorn 'sweaty' '["add",70]'>>
<<applyFatigue 50>>
<</if>>
<<applyExperience 'bondage' 18 'terrible' $INCOGNITO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sexstore_window.png">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You writhe in your bonds, straining against the stretchy but oh-so-tight latex encasement. The feeling of it rubbing against your sweaty flesh soon has you moaning with lust as you wonder what unseen mall-walkers are thinking as they look at you in the window,
<<else>>
You try to remain still but the erotic nature of your situation — completely encased in latex, exposed to unseen strangers, makes that hard... pun intended.<br>
<br>
Panting through the gag that is your only contact to the outside world you endure, wondering what passing mall-walkers must think about you hanging there,
<</if>>
<<switch $scene.strip>>
<<case 'all'>>
naked, with your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive, heaving breasts
<<case 'large'>>
large, heaving breasts
<<case 'medium'>>
heaving breasts
<<case 'small'>>
small, heaving breasts
<<case 'none'>>
shrink-wrapped chest
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<if setup.checkItemTypeWorn("cage")>>and the outline of your secure chastity device <</if>>on silhouetted display.
<<case 'outer'>>
your skimpy under things in no way concealing your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive, heaving breasts
<<case 'large'>>
large, heaving breasts
<<case 'medium'>>
heaving breasts
<<case 'small'>>
small, heaving breasts
<<case 'none'>>
shrink-wrapped chest
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<if setup.checkItemTypeWorn("cage")>> and secure chastity device<</if>> on display.
<<case 'none'>>
technically fully clothed but with the compressing latex highlighting your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive, heaving breasts.
<<case 'large'>>
large, heaving breasts.
<<case 'medium'>>
heaving breasts
<<case 'small'>>
small, heaving breasts.
<<case 'none'>>
shrink-wrapped chest.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<</switch>>
<br><br>
[<<moveTo "room_mall_sexstore_bondage_work_1_6" "Finish your shift." 3000>>]
</div>/*#
#desc: finish and paid for vacbed shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.strip != "none">>
<<useClothSetPop 'tmp'>>
<</if>>
<<if $scene.slut>>
<<set $scene.payLevel = 3>>
<<else>>
<<set $scene.payLevel = 0>>
<</if>>
<<switch $scene.strip>>
<<case 'all'>>
<<set $scene.payLevel += 2>>
<<case 'outer'>>
<<set $scene.payLevel += 1>>
<</switch>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
<<set $scene.payLevel += 3>>
<<case 'large'>>
<<set $scene.payLevel += 2>>
<<case 'medium'>>
<<set $scene.payLevel += 1>>
<<case 'none'>>
<<set $scene.payLevel += 1>>
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.payLevel += 2>>
<</if>>
<<set $scene.pay = $scene.payLevel*$scene.payLevel*2>>
<<addCredits $scene.pay>>
<<set $npc_sexstore_clerk.flags.workStage = 2>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You lose track of time in your dark, confined containment, collapsing in a sweaty heap when the pressure releases. <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> is there to catch you, supporting your limp body as you blink and try to adjust to what seems like blinding light.<br>
<br>
"@@.npc_sexstore_clerk;Quite the shift.@@" The clerk states with a grin as <<his npc_sexstore_clerk>> face slowly comes into focus. "@@.npc_sexstore_clerk;Enjoy yourself?@@"<br>
<br>
Not yet finding your voice you just softly moan as your head does something between going limp and a nod.<br>
<br>
When you're finally able to stand on your own <<he npc_sexstore_clerk>>
<<switch $scene.strip>>
<<case 'none'>>
hands you your clothes and then your pay of <<=$scene.pay>> credits. "@@.npc_sexstore_clerk;Wearing your clothes definitely muted your reception, but latex can still cover for quite a bit.@@"
<<case 'outer'>>
hands you your clothes and then your pay of <<=$scene.pay>> credits. "@@.npc_sexstore_clerk;The lingerie was an interesting choice — possibly drove a bit of business to our sister store, but it's all the same ownership in the end.@@"
<<case 'all'>>
nods in approval as <<he npc_sexstore_clerk>> hands you your pay of <<=$scene.pay>> credits. "@@.npc_sexstore_clerk;The way the latex clung to your naked body... a fantastic display.@@"
<</switch>>
<br><br>
<<if $scene.slut>>
"@@.npc_sexstore_clerk;The display you put on... simply fantastic, your movements really drew attention. I kept being asked which one of our toys you were using!@@"
<<else>>
"@@.npc_sexstore_clerk;I wish you had been a bit more lively, but still, there's no resisting a bit of erotic movement when you're all sealed up!@@"
<</if>>
<br><br>
<<He npc_sexstore_clerk>> leads you out of the window and then pulls back the curtain to expose it to the outside as you return to the shop.
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_sexstore_clerk;Oh, and the sight of your chastity through the latex? Simply divine, I had at least a dozen people asking about what you were wearing and several of them placed orders!@@"
<<else>>
"@@.npc_sexstore_clerk;I would note that a chastity device looks fantastic under latex, I think the sight of that would really draw in customers, if you could swing it.@@"
<</if>>
<br><br>
Though <<he npc_sexstore_clerk>> doesn't say anything you have a feeling your
<<switch setup.calcBreastSize()>>
<<case 'massive' 'large'>>
large breasts also played a part in your success.
<<case 'medium' 'small'>>
breasts may have played an additional modest part in your success.
<<case 'none'>>
flat chest probably didn't aid your success.
<</switch>>
<br><br>
The hour spent under rubber has you feeling sweaty and smelling a bit rank so, after <<he npc_sexstore_clerk>> tells you to come back again if you would like to work a future shift, you decide to head home.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: intro repeat work in vacbed bondage
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> grins and pulls the curtain closed over the storefront as <<he npc_sexstore_clerk>> sets up the vacbed. "@@.npc_sexstore_clerk;There really is nothing like tight latex to make customers eager to buy. Imagine if they could purchase the opportunity to unwrap you! Ah, but we are not in that sort of business here.@@"<br>
<br>
You consider what you want to wear while you're "working." <br>
<br>
<<printThought "It seems the less I wear, and the more active I am, the more sales I encourage...">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_2" "Get naked." 60 "<<set $scene.strip='all'>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_2" "Just strip to your underwear." 60 "<<set $scene.strip='outer'>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_2" "Remain dressed." 60 "<<set $scene.strip='none'>>">>]
</div>/*#
#desc: repeat work in vacbed bondage - extras
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.strip>>
<<case 'all'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<case 'outer'>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<</switch>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<switch $scene.strip>>
<<case 'all'>>
You quickly shed your clothing and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> smiles.
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_sexstore_clerk;Excellent! You are locked in chastity — seeing such a device through the latex never ceases to drive sales. Is there anything better than people paying you to be locked up?@@"
<<else>>
"@@.npc_sexstore_clerk;Wonderful, no clothes means nothing to get in the way of the tight latex...<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>> though I do think a nice chastity device highlighted under the tight latex would be good for sales.<</if>>@@"
<</if>>
<<case 'outer'>>
You strip down to your underthings and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> nods.
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_sexstore_clerk;Not quite as good as bare skin for highlighting how tight the latex gets, but the sight of that chastity device through the latex should drive some sales.@@"
<<else>>
"@@.npc_sexstore_clerk;Not quite as good as bare skin for highlighting how tight the latex gets, but it should do.@@"
<</if>>
<<case 'none'>>
You keep your clothes on and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> shrugs.
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_sexstore_clerk;Hmm, the latex being tight enough to highlight that chastity device you have under there should be a nice effect... better naked though.@@"
<<else>>
"@@.npc_sexstore_clerk;Clothed? How prudish. Still, some people might be into the contrast of being dressed up yet on display and exposed inside the tight latex.@@"
<</if>>
<<default>>
ERROR: unexpected scene.strip <<=$scene.strip>>
<</switch>>
<br><br>
You get into position and wait for <<him npc_sexstore_clerk>> to zip things up when <<he npc_sexstore_clerk>> makes another offer.<br>
<br>
<<if $scene.plug != "" && (setup.getItemObj($scene.plug).tags.includes("vibrating") || setup.checkItemTypeTag('hollow_plug', ['vibrating']))>>
"@@.npc_sexstore_clerk;So, not to violate your privacy but... well, I have a scanner that checks for any remote-controlled plugs in the vicinity and... you're wearing one. I have a lovely routine I could run for you that should make your shift more entertaining... and your writhing should be very enticing to customers.@@"<br>
<br>
<<printThought "Trapped in latex, on public display, and vibrated? And I'd get paid for that?">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_3" "Agree to be anally vibrated while you work." 60 "<<set $scene.vibe=true>>">>]<br>
<<else>>
"@@.npc_sexstore_clerk;So, given that a more... active model will draw more attention, I though you might find your shift a bit more entertaining, and productive, if you also test-drove one of our vibrating anal plugs? I have a nice heavy egg model that will slip in easy but really keep you entertained with its potent power.@@"<br>
<br>
<<printThought "Trapped in latex, on public display, and vibrated? And I'd get paid for that?">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_3" "Agree to have a vibrating egg inside your rear while you work." 60 "<<set $scene.vibe=true>>">>]<br>
<</if>>
[<<moveTo "room_mall_sexstore_bondage_work_vac_3" "Decline <<his npc_sexstore_clerk>> offer." 60 "<<set $scene.vibe=false>>">>]
</div>/*#
#desc: repeat work in vacbed bondage - vibe
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addEgg = $scene.vibe && !(setup.checkItemTypeTag('plug', ['vibrating']) || setup.checkItemTypeTag('hollow_plug', ['vibrating']))>>
<<if $scene.addEgg>>
<<if !setup.checkItemOwned('egg_vibe_electric')>>
<<addItem 'egg_vibe_electric'>>
<<else>>
<<if setup.inWardrobe('egg_vibe_electric')>>
<<wardrobeToItem 'egg_vibe_electric'>>
<</if>>
<</if>>
<<wearItem 'egg_vibe_electric' true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sexstore_window.png">>
<div id="invframe" class="scrolltext">
<<if $scene.vibe>>
<<if $scene.addEgg>>
You nod in acceptance of <<his npc_sexstore_clerk>> offer and <<he npc_sexstore_clerk>> smiles, handing you the cool metal egg and waiting for you to bend over and slide it home. <<if $scene.plug != "">>You look around for where to put the plug you removed to make space but <<he npc_sexstore_clerk>> produces a box that says "personal toy cleaner" on the side. "@@.npc_sexstore_clerk;Always useful around the shop, this will keep it safely stored until you're off shift.@@"<</if>>
<<else>>
You nod in acceptance of <<his npc_sexstore_clerk>> offer and <<he npc_sexstore_clerk>> smiles just before passing you the breather gag and zipping you up.
<</if>>
<br><br>
"@@.npc_sexstore_clerk;Lovely.@@"
<<else>>
You decline <<his npc_sexstore_clerk>> offer and <<he npc_sexstore_clerk>> shrugs. "@@.npc_sexstore_clerk;Fair enough. Being under vacuum can be intense enough all on its own.@@"
<</if>>
Is the last thing you hear before the vacuum kicks on and the latex pulls in tight, leaving you once again blind and almost deaf, suspended in the window.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_4" '"Work."' 1800>>]
</div>/*#
#desc: repeat work in vacbed bondage - work
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.vibe>>
<<set $scene.analLevel = setup.getEffectivePlugSize()+2>>
<<applyExperience 'anal' $scene.analLevel 'very' $INCOGNITO>>
<<changeHorny 50>>
<<applyFatigue 100>>
<<else>>
<<changeHorny 20>>
<<applyFatigue 70>>
<</if>>
<<switch $scene.strip>>
<<case 'all'>>
<<if $scene.vibe>>
<<applyExperience 'humiliation' 15 'terrible' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 13 'terrible' $INCOGNITO>>
<</if>>
<<case 'outer'>>
<<if $scene.vibe>>
<<applyExperience 'humiliation' 12 'terrible' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 10 'terrible' $INCOGNITO>>
<</if>>
<<case 'none'>>
<<if $scene.vibe>>
<<applyExperience 'humiliation' 9 'terrible' $INCOGNITO>>
<<else>>
<<applyExperience 'humiliation' 7 'terrible' $INCOGNITO>>
<</if>>
<</switch>>
<<alterStatAllWorn 'sweaty' '["add",100]'>>
<<applyExperience 'bondage' 18 'terrible' $INCOGNITO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sexstore_window.png">>
<div id="invframe" class="scrolltext">
<<if $scene.vibe>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> was not kidding as the vibrations kick on strong, yet erratic. The unpredictable patterns has you writhing in your latex cocoon, humping the air in desperation, though <<if setup.checkItemTypeWorn("cage")>>twice denied between your chastity device and<<else>>unable to get the stimulation you yearn for due to<</if>> the tight, restrictive latex encasing you.
<<else>>
Even without the assistance of a vibrator the sensation of floating while completely encased in tight latex is intense and erotic. Add in the fact that who knows how many mall visitors are looking at you at any given time and, well... you're soon straining and shaking, your movement causing the latex to shift against your sweat-slick skin in a way that makes you moan and long for the vibrating stimulation you declined.
<</if>>
<br><br>
Losing track of time as you hang in the window your thoughts fade. You are an object, a prize, a latex-wrapped gift, just waiting for someone to buy you and take you home to put on the mantle...<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_vac_5" 'Is that the sound of a zipper?' 1800>>]
</div>/*#
#desc: repeat work in vacbed bondage - finish
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.strip != "none">>
<<useClothSetPop 'tmp'>>
<</if>>
<<if $scene.vibe>>
<<set $scene.payLevel = 3>>
<<else>>
<<set $scene.payLevel = 1>>
<</if>>
<<switch $scene.strip>>
<<case 'all'>>
<<set $scene.payLevel += 2>>
<<case 'outer'>>
<<set $scene.payLevel += 1>>
<</switch>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
<<set $scene.payLevel += 3>>
<<case 'large'>>
<<set $scene.payLevel += 2>>
<<case 'medium'>>
<<set $scene.payLevel += 1>>
<<case 'none'>>
<<set $scene.payLevel += 1>>
<</switch>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.payLevel += 2>>
<</if>>
<<set $scene.pay = $scene.payLevel*$scene.payLevel>>
<<addCredits $scene.pay>>
<<if $scene.payLevel >= 7 && $npc_sexstore_clerk.flags.workStage < 3>>
<<set $npc_sexstore_clerk.flags.workStage = 3>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
The zipper opens, releasing the wonderful pressure of your latex prison while leaving you to flinch at the blinding light.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> is there to catch you as you stumble free, holding you up until you find your feet.<br>
<br>
"@@.npc_sexstore_clerk;Another productive shift.@@" <<He npc_sexstore_clerk>> states, once you have come to your senses. "@@.npc_sexstore_clerk;You were born for this, a beautiful flame drawing in the other moths to buy things the hadn't yet realised they needed...<<if $scene.addEgg>> Speaking of needed — you may keep the egg.<</if>>@@"<br>
<br>
<<if $scene.strip != 'none'>>
<<He npc_sexstore_clerk>> waits until you have gotten dressed before
<<else>>
Once you are standing on your own
<</if>>
<<he npc_sexstore_clerk>> hands you your <<=$scene.pay>>.<br>
<br>
<<switch $scene.payLevel>>
<<case 10>>
"@@.npc_sexstore_clerk;Absolute perfection. There is nothing I can think of that would make you more perfect for this job — and the customer flow confirms it! I know you love the latex but I can think of some additional sales opportunities that I think would work as well or better!@@"
<<case 9 8 7>>
"@@.npc_sexstore_clerk;Wonderfully done, you really are astounding at this. After all the customer compliments I have another idea that might mix things up and draw even more traffic. I can see you are a bit exhausted by your ordeal so just let me know sometime if you are interested in hearing it.@@"
<<case 6 5 4>>
"@@.npc_sexstore_clerk;A decent haul. I believe you have potential for more but... I cannot really complain, there is definitely a customer spike whenever you are on shift.@@"
<<case 3 2 1>>
"@@.npc_sexstore_clerk;A somewhat disappointing tally, I am afraid. Perhaps if you could liven up your performance some it might bring in more customers?@@"
<<default>>
ERROR: unexpected scene.pay level <<=$scene.payLevel>>
<</switch>>
<br><br>
Practically dripping with sweat from your time in the vacbed you thank <<him npc_sexstore_clerk>> for the pay and head home to clean.<br>
<br>
[<<moveTo "room_foyer" 'Home' 600>>]
</div>/*#
#desc: intro to first suspended bondage shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You agree to <<=ps(setup.getNpcName('npc_sexstore_clerk', 'first'))>> proposal and <<he npc_sexstore_clerk>> leads you up into the window display, pulling the outer curtain closed for privacy.<br>
<br>
"@@.npc_sexstore_clerk;So, given your previous popularity as a helpless latex work d'art I thought you would look good in this.@@" <<He npc_sexstore_clerk>> presents you with a full hood, gloves and feet covering latex catsuit. "@@.npc_sexstore_clerk;It's chlorinated so it should slide on easily, go ahead and get changed while I double check the rigging — safety first.@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_2_2" "Get changed." 600>>]
</div>/*#
#desc: change into catsuit for first suspended shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.ownedCatsuit = setup.checkItemOwned("catsuit_latex_black")>>
<<addItem "catsuit_latex_black">>
<<wearItem "catsuit_latex_black" true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
The latex catsuit slips on as easily as <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> said it would and you are soon a faceless, shiny drone, your vision tinged by the tinted lenses that cover your eyes, your mouth occupied by a built-in gag.<br>
<br>
"@@.npc_sexstore_clerk;Perfect!@@" The clerk says with a smile as <<he npc_sexstore_clerk>> approaches bearing some heavy-duty leather restraints. "@@.npc_sexstore_clerk;Now let's get you restrained!@@"<br>
<br>
Your hands are buckled into padded restraints that encircle your wrists and cover your palm. You are clipped to chains descending from the ceiling then <<he npc_sexstore_clerk>> does the same to your feet followed by a heavy belt.<br>
<br>
"@@.npc_sexstore_clerk;There we go.@@" <<He npc_sexstore_clerk>> says, double checking all of the attachments before pressing a button that causes a winch to slowly lift you into the air. "@@.npc_sexstore_clerk;Comfortable?@@" <<He npc_sexstore_clerk>> asks as your weight is spread between your various restraints — the waist-belt bearing most of it while the ankle and wrist cuffs pull you into a helpless arch.<br>
<br>
You nod and <<he npc_sexstore_clerk>> smiles, opening the curtain. If you lift your head you are barely able to look out the window, catching sight of the first passer-by noticing you and staring in surprise as you slowly sway.<br>
<br>
"@@.npc_sexstore_clerk;Looking good! Well I better get back inside before we get flooded with customers — enjoy your shift. If anything goes wrong just howl and I'll come running.@@"<br>
<br>
<<He npc_sexstore_clerk>> slides past you, leaving you alone, helplessly suspended in the air.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_2_3" '"Work."' 1800>>]
</div>/*#
#desc: work first suspended shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $INCOGNITO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sexstore_window.png">>
<div id="invframe" class="scrolltext">
Unlike your prior predicament you can now watch as the mall-goers look at you. Still enjoying latex-granted anonymity you get to stare back as they react to your predicament — hurrying on their way, gazing in interest... or being drawn in to look closer or even enticed into the store to shop.<br>
<br>
Though thoroughly helpless you are capable of moving some, able to shift your weight between your extremities or partially influence the swaying of your body in its chains. Your struggles seem to attract more attention than when you just hang loosely...<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_2_4" 'Put on a show.' 2400 "<<set $scene.active=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_2_4" 'Just hang out until your shift is over.' 2400 "<<set $scene.active=false>>">>]
</div>/*#
#desc: action during first suspended shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.active>>
<<applyExperience 'bimbofication' 13 'terrible' $INCOGNITO>>
<<applyExperience 'humiliation' 13 'terrible' $INCOGNITO>>
<<alterStatAllWorn 'sweaty' '["add",100]'>>
<<changeHorny 50>>
<<applyFatigue 100>>
<<else>>
<<applyExperience 'humiliation' 10 'terrible' $INCOGNITO>>
<<alterStatAllWorn 'sweaty' '["add",70]'>>
<<changeHorny 20>>
<<applyFatigue 60>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sexstore_window.png">>
<div id="invframe" class="scrolltext">
<<if $scene.active>>
The latex alone would have you sweating but the addition of the restrictive bondage and, most importantly, the constant stares of passers-by... you moan through the gag, an initial gentle rocking and light testing of your bonds turning to a passionate groan as you writhe, putting on a show for whoever might be watching. Looking down at them as they stare back, unable to see your face turns you on further and you soon find your lusts overwhelming, unable to control yourself as you feel their eyes fucking your helpless, exposed form<<if setup.getEffectiveBreastSize() > 2>> seeming to pay particular attention to your dangling breasts<</if>>.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
Your chastity device "protects" you, even as the open crotch of the catsuit has your prison fully on display, you you hump and gasp, unable to get off. <<if setup.isCage()>>You notice people seem particularly attentive to your latex-highlighted prison.<</if>>
<<else>>
Your dangling bits straining against the tight latex of the catsuit but no matter how you hump and thrust you just slide against your own sweat, unable to get off. Your obvious arousal certainly seems to draw attention from the crowd, however.
<</if>>
<<else>>
You try to control your breathing, hanging in your bonds and avoiding looking at the people beneath you... standing in front of the shop window... watching you.<br>
<br>
Between the latex, the bondage and the near constant stares staying "calm" is impossible but you manage to keep yourself together until the curtain is drawn and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> lowers you to the ground.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore_bondage_work_2_5" 'Finish shift.' 600>>]
</div>/*#
#desc: finish first suspended shift
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'catsuit_latex_black' true>>
<<if !$scene.ownedCatsuit>>
<<deleteItem 'catsuit_latex_black'>>
<</if>>
<<useClothSetPop 'tmp'>>
<<set $npc_sexstore_clerk.flags.workStage = 4>>
<<if $scene.active>>
<<set $scene.payLevel = 3>>
<<else>>
<<set $scene.payLevel = 1>>
<</if>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
<<set $scene.payLevel += 3>>
<<case 'large'>>
<<set $scene.payLevel += 2>>
<<case 'medium'>>
<<set $scene.payLevel += 1>>
<</switch>>
<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<set $scene.payLevel += 2>>
<<elseif !setup.checkItemTypeWorn("cage")>>
<<set $scene.payLevel += 1>>
<</if>>
<<set $scene.pay = Math.floor($scene.payLevel*$scene.payLevel*1.5)>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Once you are on the ground and the chains are removed you go limp, your body stiff and exhausted by your ordeal.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> helps you to your feet and slowly peels off the catsuit, smiling as <<he npc_sexstore_clerk>> hands you your clothing and <<=$scene.pay>> credits. "@@.npc_sexstore_clerk;Another great job, you really do make a perfect latex bound slut... so many positive comments from customers, plus some ideas of how to make you even more "effective" the next time you feel like working a shift!@@"<br>
<br>
<<printThought "People want me even more helplessly exposed?">><br>
<br>
You say you'll think about it and head home to wash up.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: intro repeat work suspended bondage
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "inspectionData_plug">>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> if you could be suspended for another shift and <<he npc_sexstore_clerk>> smiles.
<<if $npc_sexstore_clerk.flags.workStage >= 5>>
"@@.npc_sexstore_clerk;Ready for another punishment session? Oh how delicious, come, let's get you equipped for the customers!@@"<br>
<br>
You follow <<him npc_sexstore_clerk>> into the window display where <<he npc_sexstore_clerk>> hands you the catsuit and the rest and then you get in position for <<him npc_sexstore_clerk>> to hog-tie you and hoist you up.<br>
<br>
"@@.npc_sexstore_clerk;So, question of the day — customer-controlled punishment or no?@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_2" "Agree to give customers control over a vibrating, electrified plug." 600 "<<set $scene.vibe=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_2" "Say you'll just be bound and taunted but no remote control." 600 "<<set $scene.vibe=false>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_decline" "Change your mind and don't work a shift." 60>>]
<<else>>
"@@.npc_sexstore_clerk;Back for more? Oh that is positively lovely only this time, well... if are you willing I have some extras in mind...@@"<br>
<br>
You follow <<him npc_sexstore_clerk>> into the window display where <<he npc_sexstore_clerk>> draws the curtain for privacy and hands you the catsuit to get changed as <<he npc_sexstore_clerk>> explains.<br>
<br>
"@@.npc_sexstore_clerk;So the first time you did this the question was raised by a couple of customers if your harsh bondage was some sort of "punishment" and, well... I thought we could run with that. To start with, I was thinking of a more stringent suspended hogtie, then a set of earmuffs so that customers could offer you "encouragement..." plus a combination electrified/vibrating plug to keep you from getting bored. Don't worry — a customer only gets to activate it if they buy a similar device themselves, and you'll be getting an extra cut of any such sale!@@"<br>
<br>
<<if $scene.plug_vibe && $scene.plug_ems>>
<<He npc_sexstore_clerk>> grins as <<he npc_sexstore_clerk>> glances in the direction of your plugged bottom. "@@.npc_sexstore_clerk;I can just tap in to what you've already got inserted. It's like we were on the same wavelength before you even got here!@@"
<<elseif $scene.plug_vibe || $scene.plug_ems>>
<<He npc_sexstore_clerk>> grins as <<he npc_sexstore_clerk>> glances in the direction of your plugged bottom. "@@.npc_sexstore_clerk;Unfortunately your current device is not quite as full-functioned as my idea requires. But I have one you can use instead — and you can keep it after as a bonus.@@"
<<else>>
<<He npc_sexstore_clerk>> grins as <<he npc_sexstore_clerk>> glances in the direction of your rear. "@@.npc_sexstore_clerk;Don't worry, I have just the plug that you can borrow... well, have, actually, bonus perk!@@"
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_2" "Agree to <<his npc_sexstore_clerk>> idea completely." 600 "<<set $scene.vibe=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_2" "Say you'll do everything but the remote plug." 600 "<<set $scene.vibe=false>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_decline" "Say that's a bit much and decline." 60>>]
<</if>>
</div>/*#
#desc: suspended bondage repeat - choose action
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.ownedCatsuit = setup.checkItemOwned("catsuit_latex_black")>>
<<addItem "catsuit_latex_black">>
<<wearItem "catsuit_latex_black" true>>
<<addItem "latex_hood_blind_black">>
<<wearItem "latex_hood_blind_black" true>>
<<if $scene.vibe>>
<<if !$scene.plug_vibe || !$scene.plug_ems>>
<<if !setup.checkItemOwned('remote_control_plug')>>
<<addItem 'remote_control_plug'>>
<<else>>
<<if setup.inWardrobe('remote_control_plug')>>
<<wardrobeToItem 'remote_control_plug'>>
<</if>>
<</if>>
<<wearItem 'remote_control_plug' true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.vibe && (!$scene.plug_vibe || !$scene.plug_ems)>>
Unzipping a rear panel on your catsuit <<he npc_sexstore_clerk>> <<if $scene.plug != "">>removes your current plug and<</if>> slides a large, well-lubricated plug into place, zipping the catsuit closed to hold everything in.
<</if>>
Producing a pile of leather straps <<he npc_sexstore_clerk>> pulls you into a hogtie, finishing up with a combination gag/harness/headphones that <<he npc_sexstore_clerk>> uses to pull your head back towards your feet before attaching everything to a ring and slowly raising you into the air.<br>
<br>
Pausing with you at head height <<he npc_sexstore_clerk>> places a pair of thick headphones over your head, plunging you into silence. You watch eerily as <<his npc_sexstore_clerk>> mouth moves, but you hear nothing until <<he npc_sexstore_clerk>> brings a microphone to <<his npc_sexstore_clerk>> lips. "@@.npc_sexstore_clerk;Testing, testing, let's hear a moan from you?@@" You're already getting turned on so this is an easy request to grant and <<he npc_sexstore_clerk>> smiles before raising you higher. <<He npc_sexstore_clerk>> opens the curtain and then sets you to slowly turn as you realise your suspended position grants you a view across most of the shop on one side and the front window/exterior of the store on the other.<br>
<br>
You watch <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> return to the counter, greeting a customer who seems quite distracted by your suspended display. You watch as <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> gives what is obviously an introductory spiel before your slow rotation moves them out of your line of sight and you are looking out at the mall once more.<br>
<br>
You rotate back to the store just in time to see <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> ring the customer up and hand them a controller.
<<if $scene.vibe>>
"@@.generic_male1;This is for being such a naughty slut!@@" comes a surprisingly loud voice to break the silence and then your entire body writhes with a mild, but still intense, shock.<br>
<br>
Looking down you see the customer smile at your reaction as a few other people in the store look on with interest.<br>
<br>
<<printThought "Hmm... I wonder if playing things up would encourage more purchases?">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_3" "Ham up your punishments." 3000 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_3" "Try to keep your cool and endure in silence." 3000 "<<set $scene.slut=false>>">>]
<<else>>
"@@.generic_male1;You naughty slut, I hope you learn your lesson up there, but if not I've left my number because — I'd be glad to buy you off <<his npc_sexstore_clerk>> hands!@@" The last thing you hear is a mocking laugh as you watch the <<man>> walk away.<br>
<br>
Looking down you see a handful of other customers looking up and you wonder if <<his>> words were broadcasted to the whole shop.<br>
<br>
<<printThought "Hmm, I wonder if reacting would drive more sales?">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_3" "Writhe in mock pain." 3000 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_3" "Try to keep your cool." 3000 "<<set $scene.slut=false>>">>]
<</if>>
</div>/*#
#desc: repeat work suspended bondage
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<changeHorny 20>>
<<applyFatigue 50>>
<<alterStatAllWorn 'sweaty' '["add",100]'>>
<<applyExperience 'humiliation' 15 'terrible' $INCOGNITO>>
<<else>>
<<applyFatigue 30>>
<<alterStatAllWorn 'sweaty' '["add",70]'>>
<<applyExperience 'humiliation' 12 'terrible' $INCOGNITO>>
<</if>>
<<if $scene.vibe>>
<<changeHorny 20>>
<<applyFatigue 30>>
<<set $scene.analLevel = setup.getEffectivePlugSize()+2>>
<<applyExperience 'anal' $scene.analLevel 'terrible' $INCOGNITO>>
<<applyExperience 'bdsm' 13 'terrible' $INCOGNITO>>
<</if>>
<<applyExperience 'bondage' 20 'terrible' $INCOGNITO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
Suspended above the shop you writhe and moan, your activities spurring a stream of purchases as it seems like everyone wants to give you "advice" that you should "@@.generic_female1;Be a good girl@@" and "@@.generic_male1;Obey your owner.@@"
<<if $scene.vibe>>
Each "tip" is matched with torturous shocks or bone-rattling vibrations that are only accentuated by your constant straining against your stringent bonds.
<<else>>
With every "tip" you strain against your bonds, putting on a show that the customers clearly enjoy.
<</if>>
<<else>>
As you look down you are frequently tormented by customers telling you to "@@.generic_female1;Be a good girl@@" and "@@.generic_male1;Obey your owner.@@"
<<if $scene.vibe>>
Their "tips" are matched with torturous shocks or bone-rattling vibrations as they seem to try to spark a reaction from you as you do your best to retain control.
<<else>>
You try to remain stoically immobile, even as the humiliating taunting makes you sweat even harder in your bonds.
<</if>>
<</if>>
<br><br>
Held fast by your bonds your
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>
dangling cage
<<else>>
sleek, locked crotch
<</if>>
drives home the fact that your tortured, helpless state is
<<else>>
<<if $player.body_ref.penis>>
hard <<getWordMyPenis>>
<<if $player.body_ref.vag>>
and dripping <<getWordVagina>> are
<</if>>
<<else>>
dripping <<getWordVagina>> is
<</if>>
<</if>>
on display<<if setup.getEffectiveBreastSize() > 1>> as your <<=setup.calcBreastSize()>> breasts sway and heave<</if>>.<br>
<br>
Eventually there is a lull as <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> puts up an "on break" sign in the door and moves to let you down.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_suspend_4" "Finish your shift." 600>>]
</div>/*#
#desc: repeat work finish suspended bondage
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<if $scene.vibe>>
<<set $scene.payLevel = 4>>
<<else>>
<<set $scene.payLevel = 3>>
<</if>>
<<else>>
<<if $scene.vibe>>
<<set $scene.payLevel = 2>>
<<else>>
<<set $scene.payLevel = 1>>
<</if>>
<</if>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
<<set $scene.payLevel += 3>>
<<case 'large'>>
<<set $scene.payLevel += 2>>
<<case 'medium'>>
<<set $scene.payLevel += 1>>
<</switch>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.payLevel += 2>>
<<else>>
<<set $scene.payLevel += 1>>
<</if>>
<<set $scene.pay = Math.floor($scene.payLevel*$scene.payLevel*1.25)>>
<<addCredits $scene.pay>>
<<applyExperience 'bondage' 20 'terrible' $INCOGNITO>>
<<set $scene.offer = $scene.slut && $scene.vibe && $npc_sexstore_clerk.flags.workStage < 5>>
<<if $scene.offer>>
<<set $npc_sexstore_clerk.flags.workStage = 5>>
<</if>>
<<removeItem 'catsuit_latex_black' true>>
<<removeItem "latex_hood_blind_black">>
<<deleteItem "latex_hood_blind_black" true>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
With the shop temporarily empty <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> lets you down and removes your restraints.<br>
<br>
Helping you to your feet, <<he npc_sexstore_clerk>> hands you <<=$scene.pay>> credits and then waits as you get dressed, nodding for you to keep the catsuit.<br>
<br>
<<if $scene.offer>>
"@@.npc_sexstore_clerk;So, you look so comfortable and sexy putting on a show for customers well... check back later, I think I have an even more potentially lucrative idea for you.@@"
<<elseif $scene.slut && $scene.vibe>>
"@@.npc_sexstore_clerk;Another great job, you really pull in sales with your show!@@"
<<elseif $scene.slut>>
"@@.npc_sexstore_clerk;You put on a good show, but I think you'd do even better with a bit of back-door "encouragement" — think about it for next time.@@"
<<elseif $scene.vibe>>
"@@.npc_sexstore_clerk;The customers definitely enjoy "helping" you out, but I think it would work even better if you amped up your reactions a bit.@@"
<<elseif $npc_sexstore_clerk.flags.workStage >= 5>>
"@@.npc_sexstore_clerk;Well, thanks for working another shift... though I feel like you could pull in more sales if you were a bit more... participant.@@"
<<else>>
"@@.npc_sexstore_clerk;Well, thanks for working another shift... though I wish you'd be a bit more participatory, it would drive sales so much better.@@"
<</if>>
<br><br>
Once you're dressed you decide to head home to recover.<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: offer of to first shift as a floor model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> that working as a "floor model" sounds right up your alley...<br>
<br>
<<if !setup.checkItemTypeWorn("cage") && ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis)>>
"@@.npc_sexstore_clerk;Lovely to hear... unfortunately for your safety, our insurance policy, and to help drive sales... well, I think you ought to be wearing a chastity device of some sort. Maybe come back some other time when you are locked up, if you are still interested.@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_progress" "Discuss other work opportunities." 60>>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_decline" "You don't feel like working today." 60>>]
<<else>>
"@@.npc_sexstore_clerk;Wonderful. I was thinking a nice latex catsuit — both to show off the quality and fit of our wares, as well as to give customers a blank canvas to work with.<<if setup.checkItemTypeWorn("cage")>> Plus it will keep you technically "decent" while showing off that lovely chastity device I know you're wearing.<</if>>@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_3_2" "Agree to <<his npc_sexstore_clerk>> proposal." 60>>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_decline" "Decline <<his npc_sexstore_clerk>> offer." 60>>]
<</if>>
</div>/*#
#desc: change for first shift as a floor model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeTag('shoes', ['ballet'])>>
<<set $scene.ballet = setup.getItemFromType('shoes')>>
<<else>>
<<set $scene.ballet = "">>
<</if>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.ownedCatsuit = setup.checkItemOwned("catsuit_latex_black")>>
<<addItem "catsuit_latex_black">>
<<wearItem "catsuit_latex_black" true>>
<<addItem "ball_gag_red">>
<<wearItem "ball_gag_red" true>>
<<if $scene.ballet != "">>
<<wearItem $scene.ballet true>>
<<else>>
<<if !setup.checkItemOwned('stiletto_black')>>
<<addItem 'stiletto_black'>>
<<else>>
<<if setup.inWardrobe('stiletto_black')>>
<<wardrobeToItem 'stiletto_black'>>
<</if>>
<</if>>
<<wearItem "stiletto_black" true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Once again you get changed into a catsuit, followed by a classic red ballgag and
<<if $scene.ballet != "">>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> helps you back into your ballet boots. "@@.npc_sexstore_clerk;You haven't been trained as a clerk so it would be best to keep you from distracting the customers, but those ballet heels are just perfect!@@"
<<else>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> hands you a pair of matching heels. "@@.npc_sexstore_clerk;You haven't been trained as a clerk so it would be best to keep you from distracting the customers, and, of course, you need a pair of heels! We're partnered with <<printShopName 'mall_shoe_store'>>, after all.@@"
<</if>>
<br><br>
<<He npc_sexstore_clerk>> looks you over with a grin. "@@.npc_sexstore_clerk;Very nice — remember, you are here to help, not harass. Many of those who come to a shop like this want privacy, so just wait for a customer to approach and help them see how the item looks and works. I doubt many will be able to resist once they see how our wares look on something as lovely as yourself.@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_3_3" "Wait for the first customer." 1800>>]
</div>/*#
#desc: first customer working first shift as a floor model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
The first few customers that pass through the shop after you've begun your shift are either intimidated or uninterested in your help but, after a while, <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> calls you over to a <<man>> browsing the bondage section.<br>
<br>
"@@.npc_sexstore_clerk;Here, rather than try to imagine which restraint you like the most, use our live model?@@"<br>
<br>
A pair of stout leather cuffs in <<his>> hand the customer looks you over with piqued interest.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_3_4" "Offer your wrists submissively." 60 "<<set $scene.sub=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_3_4" "Stand and wait." 60 "<<set $scene.sub=false>>">>]
</div>/*#
#desc: assist first customer trying out bondage items as a floor model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sub>>
<<applyExperience 'submission' 13 'very' $INCOGNITO>>
<<else>>
<<applyExperience 'submission' 8 'normal' $INCOGNITO>>
<</if>>
<<applyExperience 'bondage' 6 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sub>>
You offer your wrists and the customer smiles in delight, quickly slapping the cuffs onto you as <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> slips away.
<<else>>
You stand and wait as the <<man>> takes your hand and buckles a cuff around each wrist.
<</if>>
<br><br>
"@@.generic_male1;Hmm, good, but a bit bulky on your delicate frame, let's try something a bit more graceful...@@"<br>
<br>
Cuffed, spread and otherwise restrained the <<man>> uses you to try out seemingly the entire catalogue of limb restraints from cuffs to armbinders before finally settling on a matching set of seven rubber-lined steel restraints that link your ankles, thighs, waist, wrists and biceps. You attract a bit of an audience in the process and, once your current customer is satisfied and removes things to check out you immediately have another customer leading you over to the clothing section for you to try on skirts...<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_3_5" "Keep working." 3000>>]
</div>/*#
#desc: middle customers working first shift as a floor model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 6 'normal' $INCOGNITO>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You run through a whole series of customers looking to use you to "try out" everything from rope to hoods to "will these panties conceal chastity." From the look of things over at the till it appears your "assistance" is definitely driving sales — as well as contribute to the tip jar that <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> has helpfully set out for you.<br>
<br>
After a while things thin out, leaving an opening for a nervous looking girl to gesture you over to the furniture section of the store.<br>
<br>
Standing next to a deluxe spanking bench she asks if you could show her how it works?<br>
<br>
You hop onto the bench and she slowly circles around it, figuring out restraints and adjustments to get you completely secured. The bench is well padded and actually quite comfortable, though you are certainly vulnerable. Coming to a stop standing next to you the girl's gaze drifts towards the wall of impact toys...<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_3_6" "Continue." 60>>]
</div>/*#
#desc: final customer working first shift as a floor model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 8 'little' $INCOGNITO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
Staring at the various punitive implements seems to spark a bit of a mischievous streak in the girl. "@@.generic_female1;Hmm, you don't mind if I test a few things out, right? Need to make sure this bench works for its intended purpose, after all.@@"<br>
<br>
Not paying attention to your response the girl skips over to the wall, plucking a paddle from a hook and then disappearing behind you.<br>
<br>
<<printThought 'This just got a bit more "interesting..."'>><br>
<br>
WHACK!<br>
<br>
The first blow lands across your latex-wrapped bottom and the girl squees. "@@.generic_female1;Wow, that felt amazing, I didn't hit you too hard, did I? Oh, I just have to test out some more things...@@"<br>
<br>
Darting over to the display she comes back with her arms full of floggers and whips...<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_3_7" 'Let her continue to "test things out."' 300 "<<set $scene.pain=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_3_7" 'No, this is too much.' 300 "<<set $scene.pain=false>>">>]
</div>/*#
#desc: final customer pt 2 first shift as a floor model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pain>>
<<applyExperience 'bdsm' 12 'very' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.pain>>
Biting down on your gag you endure as the customer enthusiastically "tries out" what feels like every different spanking implement in the store. The thin latex compressing your bottom provides no padding from the onslaught as she paddles, whips, flogs and spanks you to the delight of a growing crowd.<br>
<br>
You're panting by the time a pause finally comes, the girl looking around in surprise at onlookers as <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> appears to gently take the current cricket-bat sized paddle out of her hands.
<<else>>
This is looking to be a bit much and you thrash around in your bonds, managing to make enough of a racket to attract the attention of <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> who hurries out from behind the counter to gently confront the customer.
<</if>>
"@@.npc_sexstore_clerk;I believe that will be enough — were you planning on making a purchase today?@@"<br>
<br>
Her earlier bashfulness returned the girl hems and haws "@@.generic_female1;Um, uh, not quite yet, um... I need to go...@@" She dashes out of the store without another word. <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> waves away the crowd and then unstraps you from the spanking bench before informing you that your shift is over.<br>
<br>
"@@.npc_sexstore_clerk;Sorry about that, sometimes customers get a bit overenthusiastic — how about you get changed and I'll tally up your share of the day's sales?@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_3_8" 'Change.' 300>>]
</div>/*#
#desc: paid for working first shift as a floor model
#status: RELEASED 0.8.5.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sub>>
<<set $scene.payLevel = 2>>
<<else>>
<<set $scene.payLevel = 1>>
<</if>>
<<if $scene.pain>>
<<set $scene.payLevel += 3>>
<<else>>
<<set $scene.payLevel += 1>>
<</if>>
<<if $scene.ballet != "">>
<<set $scene.payLevel += 2>>
<</if>>
<<set $scene.pay = 25*$scene.payLevel>>
<<addCredits $scene.pay>>
<<removeItem 'catsuit_latex_black' true>>
<<if !$scene.ownedCatsuit>>
<<deleteItem 'catsuit_latex_black'>>
<</if>>
<<removeItem 'ball_gag_red' true>>
<<deleteItem 'ball_gag_red'>>
<<if $scene.ballet == "">>
<<removeItem "stiletto_black" true>>
<</if>>
<<useClothSetPop 'tmp'>>
<<set $npc_sexstore_clerk.flags.workStage = 6>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You change out of the catsuit and re-emerge. <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> has emptied the tip jar and added some additional credits from the till to come to a total of <<=$scene.pay>> credits.<br>
<br>
<<if $scene.sub && $scene.ballet && $scene.pain>>
"@@.npc_sexstore_clerk;Once again you have displayed a natural skill for retail. You came dressed to impress, played the role of subservient slave expertly and even endured a customer getting a bit over-exuberant without complaint. Your pay reflects your efficiency. If you are feeling even more daring for next time you can dress as you like, show a bit of personal style as an alternative to dehumanising latex.@@"
<<else>>
"@@.npc_sexstore_clerk;Thank you for another productive shift.
<<if $scene.sub>>
You played the role of helpful slave to a T, and the customers definitely showed their appreciation.
<<else>>
You were effective, but I think you could have been even moreso if you embraced the role of helpful slave a bit further.
<</if>>
<<if $scene.pain>>
I added a bit of additional compensation to make up for that one customer getting a bit over-exuberant, and you handling it with real professionalism.
<<else>>
Sorry about that final customer, I added a little extra to make up for her misbehaviour.
<</if>>
<<if $scene.ballet>>
Oh, and wonderful job with the ballet boots — if you have other things of that sort feel free to wear them, I'm sure customers would be impressed with your personal style.
<<else>>
Next time see if you can dress for the occasion — come up with something appealing enough and you could wear that instead of the latex, "humanising" yourself for the customers, in the right way, might draw additional business.
<</if>>
Thanks again, your assistance has really helped this ship find its footing — and so soon after our initial opening!@@"
<</if>>
<br><br>
[<<moveTo "room_foyer" 'Thank <<him npc_sexstore_clerk>> and head home.' 600>>]
</div>/*#
#desc: intro repeat work floor bondage model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> glances over your outfit.
<<if !setup.checkItemTypeWorn("cage") && ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis)>>
"@@.npc_sexstore_clerk;Unfortunately this job requires a chastity device. Not that I don't trust our customers, or you, but... it's just safer. Plus it helps drive sales!@@"<br>
<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]
<<else>>
<<if ["fetish", "slutty"].includes(setup.analyzeWornTags(['fetish','cute','sissy','male','modest','unisex']))>>
"@@.npc_sexstore_clerk;I just knew you'd say that... and your outfit today well... I think it would be perfect for this sort of work<<if setup.checkItemTypeWorn("hood") && !setup.checkItemTypeTag('hood', ['openFace'])>>. The hood might put off some customers... but it could also put others at ease.<<else>>, if you are amenable to showing your face?<</if>>@@"<br>
<br>
<<if setup.checkItemTypeWorn("hood") && !setup.checkItemTypeTag('hood', ['openFace'])>>
[<<moveTo "room_mall_sexstore_bondage_work_floor_2" "Say sure." 600 "<<set $scene.outfit='custom'>>">>]<br>
<<else>>
[<<moveTo "room_mall_sexstore_bondage_work_floor_2" "Work as you are, with your face uncovered." 600 "<<set $scene.outfit='custom'>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_2" "Ask to borrow a hood." 600 "<<set $scene.outfit='hood'>>">>]<br>
<</if>>
[<<moveTo "room_mall_sexstore_bondage_work_floor_2" "Opt for the standard catsuit instead." 600 "<<set $scene.outfit='catsuit'>>">>]<br>
<<else>>
"@@.npc_sexstore_clerk;Hmm, that outfit isn't quite what would appeal to our customers, how about you change into the usual latex catsuit?@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_2" "Opt for the standard catsuit." 600 "<<set $scene.outfit='catsuit'>>">>]<br>
<</if>>
[<<moveTo "room_mall_sexstore_bondage_work_decline" "Don't work a shift today." 60>>]
<</if>>
</div>/*#
#desc: choose equipment for work as floor bondage model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.outfit>>
<<case 'custom'>>
<<case 'hood'>>
<<if !setup.checkItemTypeWorn("hood") || setup.checkItemTypeTag('hood', ['openFace'])>>
<<addItem "leather_gimp">>
<<wearItem "leather_gimp" true>>
<</if>>
<<case 'catsuit'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.ownedCatsuit = setup.checkItemOwned("catsuit_latex_black")>>
<<addItem "catsuit_latex_black">>
<<wearItem "catsuit_latex_black" true>>
<</switch>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<switch $scene.outfit>>
<<case 'custom'>>
You decide to stick with your current outfit to work in, which mean's you'll be forgoing any anonymity as you work.
<<case 'hood'>>
<<if setup.checkItemWorn("leather_gimp")>>
You opt for a hood to keep your identity protected while you work. <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> pulls a leather hood off the rack and helps you zip it up.
<<else>>
You opt to keep your face covered and work anonymously.
<</if>>
<<case 'catsuit'>>
You decide to work in the latex catsuit again and take a few minutes in the changing room to change.
<</switch>>
<br><br>
"@@.npc_sexstore_clerk;So,@@" <<he npc_sexstore_clerk>> states, "@@.npc_sexstore_clerk;I was thinking of some other tweaks that might make you a more effective salesperson, and I had some ideas. First — a gag, while one might consider it a vital piece of the "full slave" picture, but it might scare off more timid clients, plus it means you cannot offer your own experience and advice. Next is your other hole — allowing customers to give you immediate feedback would both make you a better salesperson, as well as give an extra incentive to make a purchase. Finally, your example has started to draw some more "scene" clientele — rather than risk you being confused as just another sub I was thinking a leash attached to the counter while you wait for customers would make it clear your responsibilities — and that you are "available" for use.@@"<br>
<br>
<label>Work with a gag. <<checkbox "$scene.gag" false true>></label><br>
<label>Agree to work while being vibed and shocked. <<checkbox "$scene.remote" false true>></label><br>
<label>Agree to be leashed. <<checkbox "$scene.leash" false true>></label><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_3" "Finish preparations for your shift." 600>>]
</div>/*#
#desc: choose equipment for work as floor bondage model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.gag>>
<<addItem "ball_gag_red">>
<<wearItem "ball_gag_red" true>>
<</if>>
<<if $scene.remote>>
<<include "inspectionData_plug">>
<<set $scene.swapPlug = !$scene.plug_vibe || !$scene.plug_ems>>
<<if $scene.swapPlug>>
<<if !setup.checkItemOwned('remote_control_plug')>>
<<addItem 'remote_control_plug'>>
<<else>>
<<if setup.inWardrobe('remote_control_plug')>>
<<wardrobeToItem 'remote_control_plug'>>
<</if>>
<</if>>
<<wearItem 'remote_control_plug' true>>
<</if>>
<</if>>
<<if $scene.leash>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<set $scene.switchCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.switchCollar>>
<<addItem 'bondage_collar'>>
<<wearItem 'bondage_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.gag>>
You opt for the ballgag and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> buckles it in place, ensuring you will be working a silent shift.
<<else>>
You decline to wear the ballgag and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> puts it away.
<</if>>
<br><br>
<<if $scene.remote>>
<<if $scene.plug == "">>
You agree to give customers the option to remotely reward and punish your behaviour and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> presents you with a lubricated remote controlled plug that you slide into your hungry hole. "@@.npc_sexstore_clerk;Lovely, I already have the remote setup at the counter so you'll be buzzing away in no time.@@"
<<elseif $scene.swapPlug>>
You agree to wear a remote control plug for customers to reward and punish your behaviour and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> presents you with a lubricated device of suitable functionality. "@@.npc_sexstore_clerk;If you could wear this, please. Your current device is not quite advanced enough for our needs.@@"
<<else>>
You agree to give customers the option to remotely reward and punish your behaviour and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> smiles. "@@.npc_sexstore_clerk;Wonderful, I'll calibrate to your frequency and you can use what you're wearing now.@@"
<</if>>
<<else>>
You decline to be "remote controlled" for your shift and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> shrugs in disappointment.
<</if>>
<br><br>
<<if $scene.leash>>
You agree to work leashed
<<if $scene.switchCollar>>
<<if $scene.collar == "">>
and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> buckles a collar around your throat and attaches your leash
<<else>>
and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> has you swap to a collar with an attachment point, cliping a leash to it and hanging the other end of the leash
<</if>>
<<else>>
and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> clips a leash to your collar before hanging the other end of the leash
<</if>>
from a hook on the side of the counter.
<<else>>
You decline to wear a leash for your shift.
<</if>>
<br><br>
"@@.npc_sexstore_clerk;Well, I think that does it. let's make some sales.@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_root" "Start working." 600>>]
</div>/*#
#desc: floor bondage model - pick scene
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sceneOptions = ['generic']>>
<<if !$scene.gag && !$scene.leash && $scene.outfit == 'custom'>>
/%<<set $scene.sceneOptions.push('vanilla')>>%/
<</if>>
<<if $scene.outfit == 'catsuit'>>
/%<<set $scene.sceneOptions.push('latex')>>%/
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
/%<<set $scene.sceneOptions.push('chastity_curious')>>%/
<</if>>
<<if $scene.leash && $fetish.pet_play>>
/%<<set $scene.sceneOptions.push('petplay')>>%/
<</if>>
<<if !$scene.gag && $fetish.daddy>>
/%<<set $scene.sceneOptions.push('daddy')>>%/
<</if>>
<<if !State.hasPlayed("event_ex_sexstore_1") && setup.checkItemTypeWorn("hood") && !setup.checkItemTypeTag('hood', ['openFace']) && $scene.gag && $scene.remote && $scene.outfit == 'catsuit'>>
<<set $scene.sceneOptions.push('ex')>>
<</if>>
<<if setup.hasThreshold('bimbofication', 'slut_bimbofication', 'lunch_slut') && $npc_sissy_secretary.stage >= 5 && $npc_development.flags.class >= 5 && $scene.remote && (!setup.checkItemTypeWorn("hood") || setup.checkItemTypeTag('hood', ['openFace'])) && !State.hasPlayed("event_mall_sexstore_analbeads_6_win_2")>>
<<set $scene.sceneOptions.push('analbeads')>>
<</if>>
<<if $fetish.milking && $npc_work_doctor.flags.hucowProcedure > 0 && $scene.remote && (!setup.checkItemTypeWorn("hood") || setup.checkItemTypeTag('hood', ['openFace'])) && !$scene.gag && !State.hasPlayed("event_mall_sexstore_bedbondage_4")>>
<<set $scene.sceneOptions.push('bedBondage')>>
<</if>>
<<if State.hasPlayed("event_fetstore_chastity_finish_bonus_1") && !$scene.gag && $scene.remote && !State.hasPlayed("event_mall_sexstore_chastity_12")>>
<<set $scene.sceneOptions.push('chastity')>>
<</if>>
<<if $scene.remote && !$scene.gag && !State.hasPlayed("event_mall_sexstore_clone_5") && $npc_futa.flags.topics.doing>>
<<set $scene.sceneOptions.push('clone')>>
<</if>>
<<if $scene.remote && !$scene.gag && !State.hasPlayed("event_mall_sexstore_fuckmachine_3") && $npc_sexdoll.stage >= 4 && $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
<<set $scene.sceneOptions.push('fuckmachine')>>
<</if>>
<<if !$scene.gag && !setup.checkItemOwned("panties_pr_sissy") && $npc_pr_sissy.stage >= 4>>
<<set $scene.sceneOptions.push('pr_sissy_panties')>>
<</if>>
<<if !$npc_sexstore_clerk.flags.layaway>>
<<set $npc_sexstore_clerk.flags.layaway = 0>>
<</if>>
<<if !$daily.layaway>>
<<switch $npc_sexstore_clerk.flags.layaway>>
<<case 0>>
<<if !$scene.gag>>
<<set $scene.sceneOptions.push('layaway_corset')>>
<</if>>
<<case 1>>
<<if $scene.remote>>
<<set $scene.sceneOptions.push('layaway_chastity')>>
<</if>>
<<case 2>>
<<if $scene.leash>>
<<set $scene.sceneOptions.push('layaway_work')>>
<</if>>
<<case 4>>
<<set $scene.sceneOptions.push('layaway_break')>>
<</switch>>
<</if>>
<<set $scene.sceneId = $scene.sceneOptions.random()>>
<<if $scene.sceneId == 'generic'>>
<<include "calcShiftGeneric">>
<<set $now = setup.advanceDate($player, $now, 'seconds', 3600)>>
<<else>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 1800)>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.sceneId>>
<<case 'generic'>>
You work another shift "assisting" customers as a floor model. Though you help a number of customers in choosing their purchase none of them particularly stands out from the rest.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Wrap things up." 600>>]
<<case 'vanilla'>>
TODO: encourage vanilla experiment
<<case 'latex'>>
TODO: latex slave fun time
<<case 'returning_customer'>>
TODO: returning customer
<<case 'chastity_curious'>>
TODO: up-sell chastity
<<case 'petplay'>>
TODO: fellow pet
<<case 'daddy'>>
TODO: sugar baby
<<case 'ex'>>
You're doing some minor shelf reorganisation when someone behind you asks a question.<br>
<br>
[<<moveTo "event_ex_sexstore_1" "Turn to see what they want." 180>>]
<<case 'pr_sissy_panties'>>
<<if State.hasPlayed("event_panties_pr_sissy_1")>>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> pops in again and you greet her with a smile — all the wider when you realise you're properly "equipped" to demo for her today.
<<else>>
Your shift is the usual mix of standing around, posing, and answering the occasional minor customer question until a familiar face walks in the door.<br>
<br>
"@@.npc_pr_sissy;Hey!, Fancy meeting you here... though I'm surprised, Social Interaction Service Syndicate Inc. has quite competitive employee compensation... or are you just doing this for fun?@@" <<=setup.getNpcName('npc_pr_sissy', 'first')>> states, her "corporate shill" mode seeming to extend out of the office as she glances around the fetish store and grins. "@@.npc_pr_sissy;Yeah... I get that. Anyway, I came in today to get some new underthings. I love wearing latex 24/7, but unfortunately the material just doesn't have the durability one might wish.@@"
<</if>>
<br><br>
[<<moveTo "event_panties_pr_sissy_1" "Show her to the latex underwear section." 60>>]
<<case 'bedBondage'>>
You help the odd customer, but are otherwise puttering through a slow shift as you take advantage of a momentarily empty store to straighten up a display only to be alerted to someone entering the store by your vibrator kicking on to alert you customer... and elicit a low moan.<br>
<br>
[<<moveTo "event_mall_sexstore_bedbondage_1" "Look who came in." 60>>]
<<case 'clone'>>
You help the odd customer, but are otherwise puttering through a slow shift as you take advantage of a momentarily empty store to straighten up a display only to be alerted to someone entering the store by your vibrator kicking on to alert you to a customer... and elicit a low moan.<br>
<br>
[<<moveTo "event_mall_sexstore_clone_1" "Look who came in." 60>>]
<<case 'fuckmachine'>>
You help the odd customer, but are otherwise puttering through a slow shift as you take advantage of a momentarily empty store to straighten up a display only to be alerted to someone entering the store by your vibrator kicking on to alert you to a customer... and elicit a low moan.<br>
<br>
[<<moveTo "event_mall_sexstore_fuckmachine_1" "Look who came in." 60>>]
<<case 'analbeads'>>
You help the odd customer, but are otherwise puttering through a slow shift as you take advantage of a momentarily empty store to straighten up a display only to be alerted to someone entering the store by your vibrator kicking on to alert you customer... and elicit a low moan.<br>
<br>
[<<moveTo "event_mall_sexstore_analbeads_1" "Look who came in." 60>>]
<<case 'chastity'>>
As you're working you notice a somewhat shy customer in a hoodie looking at the chastity display.<br>
<br>
[<<moveTo "event_mall_sexstore_chastity_1" "Go see if they need help." 180 "<<set $scene.help=true>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_1" "Just keep working." 3600 "<<set $scene.help=false>>">>]
<<case 'layaway_corset'>>
Partway through your shift you a woman motions you over to the corset section for assistance.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_1_1" "Go help her out." 600>>]
<<case 'layaway_chastity'>>
You are industriously working another shift when a familiar woman — her corset-enhanced waist stunningly shown off in her sheath dress spots you from across the room and immediately rushes across the shop to greet you.<br>
<br>
"@@.npc_sexstore_layaway;Oh, I was hoping to find you again! My name is <<=setup.getNpcName('npc_sexstore_layaway', 'first')>>, by the way@@" She gives you an enthusiastic hug before continuing. "@@.npc_sexstore_layaway;So I want to thank you again for introducing me to this corset, I love it so much and the locks make it even better! Whenever I have a moment of weakness and think about being able to bend normally or breathe deeply I am reminded that I'm stuck until I pay it off, forcing me to stay the course!@@"<br>
<br>
<<if $scene.gag>>
Noting your gag she blushes "@@.npc_sexstore_layaway;Oh, wow, you can't speak, can you? That is, like... so kinky... how does it feel? Silly me, you can't answer! Anyway, I came in for another reason.@@"<br>
<br>
<</if>>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_2_1" "Listen to what she has to say." 600>>]
<<case 'layaway_work'>>
You are finishing up helping a customer when they look over your shoulder in surprise. Turning around you are shocked as well — <<=setup.getNpcName('npc_sexstore_layaway', 'first')>>, the "layaway girl" you have helped before is back... and turning heads. Gone is her "regular girl" ordinariness; knee length dress traded for a tight black miniskirt, the corset on full display rather than merely granting her an hourglass waist under an otherwise normal outfit. The steel waist-band of the chastity belt peeks up past her skirt; the crotch strap dipping down to tell anyone in the know exactly what is going on. Finally, her makeup has been put on with a trowel, all tied off with feet raised in ten centimetre stiletto ankle boots.<br>
<br>
The customer you were working with thanks you and moves away as you watch <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> head straight for the front counter where <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> looks on with a mild expression of amusement.<br>
<br>
Curious as to what is going on you walk over to the counter to listen in.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_3_1" "Listen to what she has to say." 600>>]
<<case 'layaway_break'>>
You work another shift alongside <<=setup.getNpcName('npc_sexstore_layaway', 'first')>>.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_n_1" "Work." 1800>>]
<<default>>
ERROR: unexpected scene: <<=$scene.sceneId>>
<</switch>>
</div>/*#
#desc: finish working shift as floor bondage model
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcShiftGeneric">>
<<if $scene.leash>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<if $scene.switchCollar>>
<<removeItem 'bondage_collar' true>>
<<if $scene.collar>>
<<wearItem $scene.collar>>
<</if>>
<</if>>
<</if>>
<<if $scene.gag>>
<<removeItem 'ball_gag_red' true>>
<<deleteItem 'ball_gag_red'>>
<</if>>
<<switch $scene.outfit>>
<<case 'hood'>>
<<if setup.checkItemWorn("leather_gimp")>>
<<removeItem 'leather_gimp' true>>
<<deleteItem 'leather_gimp'>>
<</if>>
<<case 'catsuit'>>
<<removeItem 'catsuit_latex_black' true>>
<<if !$scene.ownedCatsuit>>
<<deleteItem 'catsuit_latex_black'>>
<</if>>
<<useClothSetPop 'tmp'>>
<</switch>>
<<if $scene.hasOwnProperty('payBonus')>>
<<set $scene.pay += $scene.payBonus>>
<</if>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
Your shift comes to an end.
<<if $scene.outfit == 'custom' && !$scene.gag && !$scene.leash>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> tallies up your pay of <<=$scene.pay>> credits and thanks you for your assistance.
<<else>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> waits for you to change out of your "work" attire as <<he npc_sexstore_clerk>> tallies up your pay, handing you <<=$scene.pay>> credits and thanking you for your assistance.
<</if>>
<br><br>
[<<moveTo "room_mall_interior" "Leave the store." 30>>]
</div><<switch $scene.outfit>>
<<case 'hood'>>
<<set $scene.pay = 3>>
<<applyExperience 'humiliation' 12 'normal' $INCOGNITO>>
<<case 'catsuit'>>
<<set $scene.pay = 4>>
<<applyExperience 'humiliation' 10 'normal' $INCOGNITO>>
<<case 'custom'>>
<<if setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish']) == 'fetish'>>
<<set $scene.pay = 4>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<<elseif setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish']) == 'slutty'>>
<<set $scene.pay = 3>>
<<applyExperience 'humiliation' 10 'terrible' $EXPOSED>>
<<else>>
<<set $scene.pay = 2>>
<<applyExperience 'humiliation' 8 'terrible' $EXPOSED>>
<</if>>
<</switch>>
<<if $scene.leash>>
<<set $scene.pay += 1>>
<<set _bondageLevel = 6>>
<<else>>
<<set _bondageLevel = 4>>
<</if>>
<<if $scene.gag>>
<<set $scene.pay += 2>>
<<set _bondageLevel+=2>>
<</if>>
<<applyExperience 'bondage' _bondageLevel 'normal' $INCOGNITO>>
<<if $scene.remote>>
<<set $scene.pay += 3>>
<<set $scene.analLevel = setup.getItemObjFromType("plug").effect.anal+2>>
<<applyExperience 'anal' $scene.analLevel 'terrible' $INCOGNITO>>
<<applyExperience 'bdsm' 13 'terrible' $INCOGNITO>>
<<changeHorny 30>>
<<else>>
<<changeHorny 10>>
<</if>>
<<set $scene.pay = $scene.pay*$scene.pay*2>>/*#
#desc: floor bondage model - generic shift finish
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
Nothing particularly stands out over the course of the rest of your shift.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Wrap things up." 600>>]
</div>/*#
#desc: floor bondage model - layaway 1 - corset
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.layaway=true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_0")>>
<div id="invframe" class="scrolltext">
You approach the woman, <<if $scene.outfit == 'catsuit'>>you can tell she's intrigued by your catsuit, though she's trying not to stare<<elseif $scene.outfit == 'hood'>>she seems a bit weirded out by your face-concealing hood<<else>>she smiles and compliments your outfit<</if>>.<br>
<br>
"@@.npc_sexstore_layaway;Hi, so does this look the right size to you?, Or should I go one down?@@" She asks as she holds a corset up against her body.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_1_2" "Offer to help her try it on." 300 "<<set $scene.help=true>>">>]<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_1_2" "Say it looks like about right." 300 "<<set $scene.help=false>>">>]
</div>/*#
#desc: floor bondage model - layaway 1 - corset help
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_1")>>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
You suggest that corsets vary quite a bit depending on how tightly laced they are and it would be best if she tried it on.<br>
<br>
"@@.npc_sexstore_layaway;Oh, silly me, that makes way more sense... do you think you can help? I've never laced a corset before and in the movies it seems like a two person job!@@"<br>
<br>
You note that is why you are here and follow her into the changing room where she removes her belt and loose top before wrapping the corset around her body.<br>
<br>
It is immediately clear she doesn't know what she's doing as you have to flip the corset to be right-side up before you can even begin lacing it. It's down to a gap of a couple centimetres left when she starts really puffing.<br>
<br>
"@@.npc_sexstore_layaway;Wow, that's, like, really tight! Maybe I should go up a size?@@"<br>
<br>
<<if setup.getTotalValue("strength") > 8>>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_1_3" "Finish lacing her down." 300 "<<set $scene.tight=true>>">>]<br>
<<else>>
[@@.link_locked;You do not have the strength to lace her any tighter.@@]<br>
<</if>>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_1_3" "Tie her off." 300 "<<set $scene.tight=false>>">>]
<<else>>
You tell the customer that the corset looks like it would fit her. She nods and thanks you but seems a bit uncertain as she waves you off. Some time later you notice her leaving without making a purchase.<br>
<br>
<<printThought "Hmm... probably should have tried to be more helpful.">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish your shift." 1800>>]
<</if>>
</div>/*#
#desc: floor bondage model - layaway 1 - corset checkout
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk") setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_1")>>
<div id="invframe" class="scrolltext">
<<if $scene.tight>>
Starting over from the top you work her laces down, closing her up most of the way and then investing a feat of strength into cinching her in the final centimetre.<br>
<br>
Teetering on her toes as you tie things off she looks momentarily faint and you think she is about to object until she turns and catches sight of her reflection in the mirror.<br>
<br>
"@@.npc_sexstore_layaway;Ohmygod! I look AMAZING!@@" She turns to admire herself from different angles, clearly infatuated with the new look of her hourglass shape. "@@.npc_sexstore_layaway;I was originally just curious to try it on — been a bit bored with my <<boy>>friend out of town but... holy shit, if I surprised <<him>> with this when <<he>> came home? I HAVE to have this, do you think I could wear it out?@@"<br>
<br>
You assure her that would be fine. She takes another minute entranced by her reflection before pulling on her top, tightening her belt all the way down to show off her new waistline.<br>
<br>
You follow her to the register anticipating a tip for your assistance only for tragedy to strike. As she swipes her card she discovers she is overdrawn, her shoulders slumping even as the corset forces her posture to remain upright.<br>
<br>
"@@.npc_sexstore_layaway;Shit, I was so excited I plumb forgot that I used the last of my money on rent — really counting on my <<boy>>friend coming back from <<his>> business trip to right the old financial ship. I so, so want this though...@@"<br>
<br>
<<if $player.flags.uniform_upgrade.autoLacing>>
You recall the auto-laces that the store sells, and that it would probably be possible to pair them with a padlock to prevent removal. A solution to her problem begins to form...<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_1_4" 'Suggest she could purchase the corset on "layaway" — with it locked on until she can return and pay it off.' 120 "<<set $scene.layaway=true>>">>]<br>
<</if>>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_1_4" 'Help her remove the corset.' 300 "<<set $scene.layaway=false>>">>]
<<else>>
You just tie off the corset where it is, leaving her to check herself out in the mirror. "@@.npc_sexstore_layaway;Hmm, it's nice, but a bit uncomfortable, and I really shouldn't be spending money now, anyway. Thanks for the help but I think I'm ready to take it off now.@@"<br>
<br>
You unlace the corset and the woman leaves the shop without making a purchase.<br>
<br>
<<printThought "Maybe if I invested in showing the full features of the product?">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish your shift." 1800>>]
<</if>>
</div>/*#
#desc: floor bondage model - layaway 1 - corset layaway start
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.layaway>>
<<set $npc_sexstore_clerk.flags.layaway = 1>>
<<set $scene.payBonus = 20>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk") setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_1")>>
<div id="invframe" class="scrolltext">
<<if $scene.layaway>>
You raise the suggestion of her being "locked" into the corset with a layaway plan. "@@.npc_sexstore_clerk;An intriguing suggestion, and one that I am open to but... well, that corset is laced pretty tight, especially for a beginner.@@"<br>
<br>
Like a drowning man clinging to a log the woman gets almost frantic. "@@.npc_sexstore_layaway;No, it's fine! You don't understand — this is the sexiest I've ever felt and the tightness? It was weird at first but it's like a constant hug and I love it. Do that auto-lace thing and lock me in, I'll do whatever it takes if it means I can wear this home... oh, my <<boy>>friend is going to be SO excited!@@"<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> is obviously amused at the woman's reaction but things are soon straightened out as she is swapped for the auto-laces and a set of small locks are put through the grommets of the corset — the busk already so tight there is no way she could open it without damaging something.<br>
<br>
Almost giddy by the time she is laced back up she thanks you again for your help and then scampers out of the store<<if $scene.vibe>> before <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> can even explain the vibrator reward system<</if>>.<br>
<br>
"@@.npc_sexstore_clerk;Good thinking securing that sale. I'll toss a little extra into your bonus.@@"
<<else>>
You remain silent and eventually the girl gives up, trudging back to the changing room where you help her out of the corset and, with a final forlorn glance back at it as she holds her hands around her no longer teeny waist and then leaves.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish your shift." 1800>>]
</div>/*#
#desc: floor bondage model - layaway 2 - chastity intro
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.layaway=true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_1")>>
<div id="invframe" class="scrolltext">
"@@.npc_sexstore_layaway;So, the thing is that, as hot as I feel in this new corset, well... my <<boy>>friend is STILL away on <<his>> business trip and I've started to crawl up the walls in sexual frustration. I don't know what it is but I was thinking that maybe you might have a suggestion of something I could get to help deal with my problem?@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_2_2" 'Show her some vibrators.' 300 "<<set $scene.chastity=false>>">>]<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_2_2" 'Introduce her to chastity.' 300 "<<set $scene.chastity=true>>">>]
<<else>>
[@@.link_locked;Not wearing chastity yourself, it would be a hard sale to convince her that such would "solve" her problem.@@]
<</if>>
</div>/*#
#desc: floor bondage model - layaway 2 - chastity or vibe demo
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_1")>>
<div id="invframe" class="scrolltext">
<<if $scene.gag>>
Unable to speak you instead tilt your head and
<<else>>
You smile and tell her you have just the thing as you
<</if>>
lead her across the store.<<if $scene.leash>> Blushing slightly she takes hold of your leash and follows after.<</if>><br>
<br>
<<if $scene.chastity>>
You stop in front of the store's large collection of chastity belts and her jaw drops in surprise. "@@.npc_sexstore_layaway;Some sort of steel underwear? What is this a joke, wait... chastity belt?? Like, you think I should lock myself up?@@" She looks at you incredulously.<br>
<br>
<<if $scene.gag>>
You smile, pointing towards one of the devices then down between your legs. It takes her a moment and then her eyes go wide in realisation. "@@.npc_sexstore_layaway;Wait, you're locked in chastity? And, you're, like... okay with that?@@"<br>
<br>
You nod and try to wordlessly convey how much you think she would benefit from such as well.
<<else>>
You smile and explain that it would "solve" her current problem of distraction... and make the moment when she was let out even more exciting. She remains unconvinced so you follow up by the "success" you have personally experienced from wearing chastity.
<</if>>
<br><br>
"@@.npc_sexstore_layaway;What? No... I mean, I guess being locked away would remove the option of playing with myself, and the thought of being finally unlocked by my <<boy>>friend... shit, thinking about it has me feeling all breathless, and I don't think I can blame the corset for it!@@"<br>
<br>
She looks back at the chastity devices with a new eye, biting her lip as she examines her options more closely, seemingly drawn to the SecurHer — a sleek, high-end model made of polished steel that advertises its "attachment" options.<br>
<br>
"@@.npc_sexstore_layaway;Hmm, not sure what it means by attachments — this thing seems pretty secure as-is but... well, I guess options are always better than not, right?@@"<br>
<br>
You nod, and the two of you head for the register.
<<else>>
<<if $scene.gag>>
Unable to speak you do the old Vanna White flourish in front of the vibrators.
<<else>>
Arriving at the vibrator section you start showing her the different options.
<</if>>
She seems quite entranced, making you wonder how little experience she has and you show her the classics — wand, egg, butterfly and finally a top of the line rabbit that sports a primary shaft, clit-stimulating ears and a beaded anal attachment.<br>
<br>
"@@.npc_sexstore_layaway;Oh, wow, that goes in... and people like that? Oh, that's so perverted!@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if $scene.gag>>
You wink and wiggle your butt as her eyes open even wider. "@@.npc_sexstore_layaway;Oh, you mean you're wearing something... back there?@@"<br>
<br>
You nod and smile around your gag leaving her momentarily speechless.
<<else>>
You smile and explain that, yes, people like that sort of thing... people like you, as you explain about the <<=setup.getItemTypeName("plug")>> presently occupying your rear.
<</if>>
<<else>>
<<if $scene.gag>>
You nod and smile around her gag to help assure her that yes, people are into that sort of thing.
<<else>>
You smile and explain that, yes, people certainly do like "that sort of thing."
<</if>>
<</if>>
<br><br>
"@@.npc_sexstore_layaway;Oh, wow... now I'm, like... doubly curious. And this looks a bit more manageable than a cock... though if it's as fun as you imply, well... maybe I'll end up springing another surprise on my <<boy>>friend when <<he>> gets back from <<his>> trip? <<He>> mentioned anal a few times, but I always turned <<him>> down...@@"<br>
<br>
She blushes as if suddenly embarrassed by her words before making a beeline for the register.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_2_3" 'Check out.' 300>>]
</div>/*#
#desc: floor bondage model - layaway 2 - chastity layaway offer
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk") setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_1")>>
<div id="invframe" class="scrolltext">
Tammy places her purchase on the counter with a nervous smile and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> rings her up.<br>
<br>
<<if $scene.chastity>>
She winces slightly at the total but immediately adopts an innocent expression as she looks across the counter. "@@.npc_sexstore_layaway;So, like... since it locks on anyway... I don't suppose I could just get this on layaway too... I can pay a hundred credits towards my tab and then you could just... tack this on top?@@" She bites her lip, obviously hamming it up for <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> who is clearly amused.<br>
<br>
"@@.npc_sexstore_clerk;Hmm, I think we could come to an arrangement. Quite a daring decision to lock yourself away... I couldn't help but overhear when you first came into the store and I have an additional offer — how would you feel about my throwing in a few "attachments" to be locked in with you?@@"
<<else>>
She cringes at the price. "@@.npc_sexstore_layaway;Oh, no... there's no way I can afford that right now... I don't suppose I could have it on layaway?@@" She flutters her eyelashes at <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> and <<he npc_sexstore_clerk>> chuckles.<br>
<br>
"@@.npc_sexstore_clerk;Well I do not believe the toy you picked out could be safely locked in place, but I have an alternate proposal if you are so desperate to be... filled.@@"<br>
<br>
She is suddenly incensed "@@.npc_sexstore_layaway;Hey, I have a <<boy>>friend, you know!@@"<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> waves <<his npc_sexstore_clerk>> hands in dismissal. "@@.npc_sexstore_clerk;It is nothing like that. We are a retail establishment, not a brothel. This would be a toy similar to the one you selected just... with a minor addition to keep everything secure until you can pay everything off.@@"
<</if>>
<br><br>
She bites her lip and you watch a war waging behind her eyes between better judgement not to sink herself further into debt... and the same arousal that got her locked into a corset urging her forward.<br>
<br>
Slut brain wins out and she nods. "@@.npc_sexstore_layaway;Okay, sure. It's just until my <<boy>>friend gets home, anyway, <<he>>'s due for a big bonus once this trip is over. It's just taking a bit longer than originally planned.@@"<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> nods in sympathetic understanding.
<<if $scene.chastity>>
<<He npc_sexstore_clerk>> unboxes the chastity belt and takes it behind the counter for a few moments before setting it back out with some decidedly un-chaste additions —
<<else>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> turns to you. "@@.npc_sexstore_clerk;If you could fetch a chastity belt, I think a SecurHer model should do nicely?@@"<br>
<br>
"@@.npc_sexstore_layaway;Chastity belt?@@" the girl asks in puzzlement as you head across the store to retrieve the item in question — a sleek, high-end model made of polished steel that advertises its "attachment" options.<br>
<br>
"@@.npc_sexstore_clerk;As I was saying — a chastity device can be quite fun on its own<<if setup.checkItemTypeWorn("cage")>>, why my assistant here is locked in one as we speak!<</if>>@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
The girl looks at you with surprise but also interest "@@.npc_sexstore_layaway;Wait, really?@@" she asks. Mindful of the sale you nod<<if $scene.gag>>, the best you can do given your gag<<else>>explaining that it is quite erotic, both to wear... and to eventually be unlocked<</if>>.<br>
<br>
<</if>>
"@@.npc_sexstore_layaway;Hmm... now that you mention it the idea of my <<boy>>friend coming home and unlocking me like a knight from a fairy tale... okay, I'll do it! But you mentioned that the belt was just for security?@@"<br>
<br>
She turns back to where <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> has already unboxed the belt and "enhanced" it — placing it back on the counter equipped with
<</if>>
a dildo mounted each fore and aft, with additional nubs attached to the inner strap right where they would be pressed against the wearer's clit.<br>
<br>
"@@.npc_sexstore_layaway;Oh, wow, and that would be locked inside of me? That's... no! This has to be a joke or something!@@"<br>
<br>
"@@.npc_sexstore_clerk;Not at all — and I would add that this is not a mere static addition. All three attachments are capable of independent control for all manner of stimulating routines.<<if setup.checkItemTypeWorn("cage")>> Once more I draw your attention to my lovely sales assistant — they are presently stuffed full and available for stimulation at the press of a button, here, try it out.<</if>>@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<He npc_sexstore_clerk>> slides the remote across the counter and the girl stares from it to you in shock before nervously reaching out and pressing a button.<br>
<br>
You shudder as a jolt of electricity painfully shocks your rear. "@@.npc_sexstore_layaway;Ohmygod! You weren't kidding oh that's just so crazy!@@" She presses the button again and you gasp in pain.<br>
<br>
"@@.npc_sexstore_clerk;I should point out that you are currently engaging the "punishment" mode, which means administering painful jolts of electricity in very intimate areas.@@"<br>
<br>
"@@.npc_sexstore_layaway;Oh no! I'm so sorry!@@" She replies in shock. "@@.npc_sexstore_layaway;Here, let me make it up to you!@@" She mashes the other button. The vibrations in your rear blast to full power and you stagger slightly at the intense stimulation, forced to reach out for the counter lest you lose your balance.<br>
<br>
<<else>>
"@@.npc_sexstore_layaway;Oh, wow, and I'd have control over things?@@"<br>
<br>
"@@.npc_sexstore_clerk;Everything but the lock, of course,@@" <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> replies, carefully refraining from grinning as <<he npc_sexstore_clerk>> watches the girl's thoughts spin and horniness make the decision for her...<br>
<br>
"@@.npc_sexstore_layaway;This day is getting crazier and crazier... but sure, I'll do it! My <<boy>>friend is going to be so excited... the thought of <<him>> locking me back up and taking over the controls...@@" She bites her lip.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_2_4" "Continue." 300>>]
</div>/*#
#desc: floor bondage model - layaway 2 - chastity equip
#status: RELEASED 0.8.5.0
#ignore_spell: aaaah
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.payBonus = 30>>
<<set $npc_sexstore_clerk.flags.layaway = 2>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_sexstore_clerk") setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_1")>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_sexstore_clerk;Perhaps that will be enough for our lovely sales assistant — she has the rest of her shift to survive, after all.@@" <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> states, gently reclaiming the remote.<br>
<br>
"@@.npc_sexstore_layaway;Right, uh, sure,@@" she replies, almost dumbstruck as she looks at you and then glances as the "enhanced" chastity belt.<br>
<br>
<</if>>
"@@.npc_sexstore_layaway;So, I just... lock this on? But how do I, like...@@" her voice trails off.<br>
<br>
"@@.npc_sexstore_clerk;That's why I selected this model — it is meant for long duration wear — the rear panel can be released without impacting the overall security of the device — do your business, clean up, then secure yourself again. If you would like to use one of the changing rooms I'll get the remote programmed for your devices.@@"<br>
<br>
"@@.npc_sexstore_layaway;Could you, um?@@" She asks and you nod, taking the bottle of lube <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> offers and following the woman across the shop as she carries the chastity device with fearful anticipation.<br>
<br>
In the changing room you lube things up as she slips out of her dress to reveal the oh-so-tight corset beneath... and a drenched pair of panties.<br>
<br>
She blushes as she slips out of them. "@@.npc_sexstore_layaway;Hey, I told you I was a bit pent up... plus I just can't get over that I'm about to lock myself in like an... anti-chastity device? I guess I always get a little crazy and desperate when my <<boy>>friend is away but there's no way <<he>>'s going to be expecting THIS!@@"<br>
<br>
You smile in encouragement and hand off the device. Taking a deep breath she brings it up her legs pausing just before penetration to look at you. "@@.npc_sexstore_layaway;Still can't believe I'm doing this... here goes!@@"<br>
<br>
Biting her lip she slides the front plug into her cunt, her breaths coming short and fast until it is fully seated and she snaps the belt around her waist with a click. "@@.npc_sexstore_layaway;Holy crap, that was intense!@@" Taking several deep breaths and occasionally glancing back at the rear panel and plug dangling behind she seems to be psyching herself up for the next step. "@@.npc_sexstore_layaway;Every time I move I feel it shift... and you say you enjoy having something "back there," too?@@"<br>
<br>
You nod and she shudders. "@@.npc_sexstore_layaway;Okay... here goes...@@" Reaching behind she grabs the plug and lines things up. "@@.npc_sexstore_layaway;Ooo, the lube feels so slippery but I don't know if I can get it in...@@" She closes her eyes as she starts to push, the (relatively modest) plug slowly sliding into her rear hole.<br>
<br>
"@@.npc_sexstore_layaway;Hmm... that's not so bad, more weird than anything else...@@" She keeps pushing until the belt clicks closed and she does a full body writhe. "@@.npc_sexstore_layaway;Aaaah! Everything just vibrated! That's so intense!@@" She reflexively claws at the belt but the steel device is already locked and utterly unyielding.<br>
<br>
"@@.npc_sexstore_layaway;I... may have bitten off a bit more than I can handle,@@" she states as she gingerly pulls up her panties and skirt. "@@.npc_sexstore_layaway;Heck, this is so distracting, but the more I think about it, the more turned on I am!@@" Taking a few breaths she seems to calm down, walking carefully as she heads out of the changing room. "@@.npc_sexstore_layaway;I tell you one thing — once I get home I am going to town with that remote!@@"<br>
<br>
You chuckle and she blushes, <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> handing her the remote with a smile, "@@.npc_sexstore_clerk;Good luck.@@" <<He npc_sexstore_clerk>> states calmly as the newly plugged girl pockets the remote and carefully walks out of the store, stopping in the doorway for almost a minute as she seems to be fighting to adjust to her predicament.<br>
<br>
"@@.npc_sexstore_clerk;You caught a live one there.@@" <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> congratulates you once the woman is out of sight. "@@.npc_sexstore_clerk;That's good for another bonus on your pay — that was quite the purchase she made, even if it may take her some time to pay off the layaway.@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish your shift." 1800>>]
</div>/*#
#desc: floor bondage model - layaway 3 - work
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.layaway=true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk") setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_2")>>
<div id="invframe" class="scrolltext">
"@@.npc_sexstore_clerk;Here to make a payment?@@" <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> asks casually.<br>
<br>
"@@.npc_sexstore_layaway;No, I mean... sort of,@@" the woman states, gripping the edge of the counter as she wobbles slightly in what are clearly too-steep heels. "@@.npc_sexstore_layaway;I— gah@@" she groans, grinding her thighs together and taking a moment to catch her breath. "@@.npc_sexstore_layaway;What did you do to me? No matter what I do with the remote things always cut off before I can cum, but I can't resist trying, it's the only thing that distracts me from...@@"<br>
<br>
She sighs, her shoulders drooping. "@@.npc_sexstore_layaway;I kept talking about my <<boy>>friend? Well... <<he>> dumped me, said <<he>> found someone else on <<his>> business trip and that <<he>> wasn't coming home. So now I have an apartment I can't afford on my own, kinky shit that's locked on to me thanks to my own stupid eagerness and... all I can think about is how fucking turned on I am all the time. I want a job. Please, let me work here and show myself off. I'll learn about all the kinky, crazy shit you sell but you have to show me some mercy!@@"<br>
<br>
You reach out to comfort her as she eagerly wraps you in a hug as <<=ps(setup.getNpcName('npc_sexstore_clerk', 'first'))>> expression softens. "@@.npc_sexstore_clerk;As to your first question, well... that is simple — the default mode for those toys is one of programmed denial, they will automatically cut off if they detect you getting too close to orgasm. It is a chastity belt, after all.@@"<br>
<br>
"@@.npc_sexstore_layaway;That's diabolical!@@" She groans, only for her voice to trail off into a whispered follow-up... "@@.npc_sexstore_layaway;But why does the thought of it turn me on so much?@@"<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> smiles wider for a moment before continuing on as if <<he npc_sexstore_clerk>> had not heard her whispered comment. "@@.npc_sexstore_clerk;As to employment... <<=$player.first_name>> has been doing quite well, but their hours are limited so if you can commit to a fuller schedule... yes, I believe I can agree to that.@@"<br>
<br>
The woman sighs with relief and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> reaches out a hand. "@@.npc_sexstore_clerk;If you could please give me the remote?@@"<br>
<br>
She hands it over before even realising what she has done but <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> fiddles for only a few moments before handing it back.<br>
<br>
"@@.npc_sexstore_clerk;There, the denial override is temporarily disabled. If you would like to go get yourself off in one of the changing rooms to clear your mind? You are in no condition to work at present.@@"<br>
<br>
Scooping up the remote the woman dashes off, trailing a breathless "@@.npc_sexstore_layaway;Thank you!@@" before she disappears into the changing room and slams the door.<br>
<br>
A moment later a screaming orgasm echoes through the store and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> sits back with a smile. "@@.npc_sexstore_clerk;Don't worry about your position — I wouldn't hire a replacement in front of you, but I know this is just a side-gig for you. If you wouldn't mind showing her the ropes today. For all her enthusiasm she has a lot to learn before she's a functionally knowledgeable and effective saleswoman.@@"<br>
<br>
You nod, waiting by the counter for the woman to return, the sound of a second, groaning orgasm floating through the door telling you that you may be in for something of a wait.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_3_2" "Wait." 300>>]
</div>/*#
#desc: floor bondage model - layaway 3 - equip her for work
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk") setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_3")>>
<div id="invframe" class="scrolltext">
Several minutes pass before <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> wobbles back out looking breathless and relieved. All eyes in the shop are upon her as the customers break out in spontaneous applause.<br>
<br>
In the proverbial spotlight she freezes, blushing and then discovering some well of confidence that has her bowing as best the rigid corset allows.<br>
<br>
"@@.npc_sexstore_layaway;Thank you, um... everything you see here is available for sale — talk to myself or one of our other associates to figure out what would best get YOU off!@@"<br>
<br>
Her brief monologue garners an enthusiastic response as she hurries back to the counter and passes over the remote.<br>
<br>
<<if $scene.gag>>
"@@.npc_sexstore_layaway;So, uh, I can start working now? I guess I need a collar and a gag? I don't want any special treatment!@@"
<<else>>
"@@.npc_sexstore_layaway;So, uh, I can start working now? I guess I need a collar and a leash?@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> nods, producing a simple dog collar for her.<br>
<br>
She wraps the collar around her throat and shudders. "@@.npc_sexstore_layaway;Oh, wow, this feels weird but... I kind of like it... does that make me a freak?@@"<br>
<br>
"@@.npc_sexstore_clerk;If you are, you are certainly in good company.@@" <<He npc_sexstore_clerk>> replies with a grin. She is distracted toying with her new collar when <<he npc_sexstore_clerk>> hands her a ballgag.<br>
<br>
"@@.npc_sexstore_clerk;I know it can seem a bit weird to have shopping assistants that can't speak, but it really sells the aesthetic of the store. Besides, you have a lot to learn before I'd have confidence in you instructing customers.@@"<br>
<br>
She nods and places it in her mouth. She starts to buckle it when you step in, tightening it an extra notch to make sure it's secure. "@@.npc_sexstore_layaway;Mmmfff!@@" She replies with a mix of surprise and arousal.<br>
<br>
"@@.npc_sexstore_clerk;Alright, I think that does it, have a good shift!@@"<br>
<br>
You and <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> share a glance then turn back to the shop where a couple customers seem to be in need of some assistance.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_layaway_3_3" "Work." 2700>>]
</div>/*#
#desc: floor bondage model - layaway 3 - work shift together
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.payBonus = 20>>
<<set _nextDate = setup.setNextDate($now, 2, 6, 0)>>
<<addEvent 'layaway_greet' _nextDate>>
<<set $npc_sexstore_clerk.flags.layaway = 3>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk") setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_3")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> work a shift side by side, having a bit of a friendly competition for customers as you combine for what has to be one of the best single day totals the shop has ever had.<br>
<br>
You watch as each time another customer takes hold of her leash <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> seems to be pulled even deeper into sub-space, her expression of bliss when she gets a vibrating "reward" after making a sale almost making her orgasm right next to the counter.<br>
<br>
The shop has a bit of a lull and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> summons the two of you back to the counter.<br>
<br>
"@@.npc_sexstore_clerk;I think that will do for today — don't want you to burn out on your first shift!@@"<br>
<br>
<<if $scene.gag>>
<<=setup.getNpcName('npc_sexstore_layaway', 'first')>> looks almost reluctant as the gag is removed.
<</if>>
"@@.npc_sexstore_layaway;I can come back tomorrow though, right?@@" She asks eagerly as <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> unbuckles her collar and leash.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> nods. "@@.npc_sexstore_clerk;Until you're caught up I'll split your pay between cash and paying off your layaway. So here is today's portion.@@"<br>
<br>
"@@.npc_sexstore_layaway;Oh, wow,@@" the girl replies as she counts up the credits. Staring at them for a moment she bites her lip and looks back up at <<him npc_sexstore_clerk>>. "@@.npc_sexstore_layaway;So, uh... could I buy something else... on layaway?@@"<br>
<br>
<<if $scene.gag>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> laughs and you chortle through your gag
<<else>>
You and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> both laugh
<</if>>
as <<he npc_sexstore_clerk>> nods. Dashing across the store <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> returns with a steel collar in hand — its polished design looking to match the gleam of her chastity belt.<br>
<br>
"@@.npc_sexstore_layaway;What I wore today was okay, but the moment I saw this I couldn't stop thinking about it being locked on to me.@@"<br>
<br>
Moments later and <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> is collared once again, practically beaming as she checks herself out in a mirror next to the counter. "@@.npc_sexstore_layaway;Oh, wow, I just love the weight of it!... tomorrow, right? well, I guess I'll see you in the morning!@@" She dashes away only to turn around at the doorway and rush back for the remote.<br>
<br>
Glancing at you once <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> is gone <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> smiles. "@@.npc_sexstore_clerk;Well she was certainly a fun find, I'll see you around.@@"<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Wrap things up." 300>>]
</div>/*#
#desc: first visit to store after npc_sexstore_layaway starts working
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
<<changeHorny 5>>
<</if>>
<<set $npc_sexstore_clerk.flags.layaway = 4>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk") setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_3")>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeTag('plug', ['vibrating'])>>
As you walk through the door of <<printShopName 'mall_sexstore' true>> your plug buzzes to life. You notice that <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> — sporting a straitjacket and a gag leashed in the centre of the store, writhes at the same time.
<<else>>
As you walk in the door of <<printShopName 'mall_sexstore' true>> you notice that <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> — sporting a straitjacket and a gag leashed in the centre of the store, suddenly writhes.
<</if>>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> waves you over and explains. "@@.npc_sexstore_clerk;So for as naive and innocent as she was <<=setup.getNpcName('npc_sexstore_layaway', 'first')>> has a delightfully perverted mind. She had the idea that, instead of the usual chime sensor for customers entering the shop, it could be tied to the vibrators she has locked under her chastity belt. What a delight, eh?@@"<br>
<br>
You glance over at <<=setup.getNpcName('npc_sexstore_layaway', 'first')>>, she flutters her eyelashes in mock innocence, only to jolt and then moan when <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> responds by pressing the "punish" button on her remote.<br>
<br>
"@@.npc_sexstore_clerk;As I was saying — she is doing wonderful as a showcase and an assistant, but that doesn't mean I won't welcome you back whenever you wish to work a shift.@@"<br>
<br>
You nod as you glance over at <<=setup.getNpcName('npc_sexstore_layaway', 'first')>>. She really does look like she's having the time of her life, balancing significantly better in even steeper heels than she wore when she first requested the job, her waist still pinched tight by her beloved corset.<br>
<br>
[<<moveTo "room_mall_sexstore" "Look around the store." 30>>]
</div>/*#
#desc: floor bondage model - layaway n - repeat
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bonusPay = 40>>
<<set $npc_sexstore_clerk.flags.layaway = 5>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_layaway","npc_sexstore_layaway_3")>>
<div id="invframe" class="scrolltext">
Well, working "beside" is a bit of a misnomer as, while you work the floor, <<=setup.getNpcName('npc_sexstore_layaway', 'first')>>
<<switch random(0,5)>>
<<case 0 1>>
spends the shift standing in the middle of the shop in a straitjacket, greeting customers with a gagged-smile and writhing whenever her chastity belt's vibrating inserts are triggered.
<<case 2>>
spends the time in the shop window, naked and encased in a vacbed.
<<case 3>>
spends the time in the shop window, suspended in helpless latex bondage.
<<case 4>>
spends the time strapped to a Saint Andrew's Cross being used by customers for "test drives" of various paddles, whips, and floggers.
<<case 5>>
<<if $fetish.pet_play>>
spends the time showing off some of the store's "pet play" gear on her hands and knees as a masked latex kitty crawling past customers' legs.
<<else>>
is occupied teaching a demo on corset lacing.
<</if>>
<<default>>
ERROR: random value out of range
<</switch>>
<br><br>
Combined with the fact that there is apparently a social media alert for when you're both working the shop sales are brisk with <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> constantly ringing people up.<br>
<br>
<<printThought "Gonna get a bonus for sure...">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Work out the rest of your shift." 1800>>]
</div>/*#
#desc: floor bondage model - vanilla customer
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = _TODO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
TODO
[[event_mall_sexstore_bondage_work_floor_vanilla]]
</div>/*#
#desc: floor bondage model - latex play
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = _TODO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
TODO
[[event_mall_sexstore_bondage_work_floor_latex]]
</div>/*#
#desc: floor bondage model - pet play event
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = _TODO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
TODO
[[event_mall_sexstore_bondage_work_floor_petplay]]
</div>/*#
#desc: floor bondage model - sugar baby event
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = _TODO>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
TODO
[[event_mall_sexstore_bondage_work_floor_daddy]]
</div>/*#
#desc: working sexstore floor: npc_sissy_secretary arrives
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You turn to the door and lay eyes on a familiar figure, <<=setup.getNpcName("npc_sissy_secretary","first")>> noticing you with a grin and immediately rushing over, practically dive-tackling her way into a hug as her lips
<<if $scene.gag>>
wrap around your gag.
<<else>>
press against yours as she eagerly makes out.
<</if>>
<br><br>
Her hands roam over your body and she whispers in between <<if $scene.gag>>gagged <</if>>kisses. "@@.npc_sissy_secretary;Hanging out in a sex store? That's so fucking hot! We really live the best lives, don't we?@@"<br>
<br>
"@@.npc_sexstore_clerk;Hey! You two! I'm not paying her to suck face! This isn't that type of establishment.@@"<br>
<br>
You gently push <<=setup.getNpcName("npc_sissy_secretary","first")>> as she licks her lips and looks you over. "@@.npc_sissy_secretary;Wait, you WORK here? That's perfect! Because I am very in need of some help.@@"<br>
<br>
[<<moveTo "event_mall_sexstore_analbeads_2" "Curtsy, of course you are here to serve all... well, most customer needs." 180>>]
</div>/*#
#desc: working sexstore floor: npc_sissy_secretary says she's looking for plugs
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.choices = {}>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You nod and <<=setup.getNpcName("npc_sissy_secretary","first")>> grins. "@@.npc_sissy_secretary;Okay, so after you out-slutted me at lunch I've been working hard to up my game. Part of that has been what we learned in class and trying to take my ass to the next level.@@" She laughs and puts a hand on her hip as she strikes a natural "go ahead and stare, I know I'm fucking sexy" pose, "@@.npc_sissy_secretary;you know, it's funny. I remember a time when I was actually intimidated by the idea of taking <<=ps(setup.getNpcName("npc_rival","formal"))>> cock. Don't get me wrong, I'm a trained professional slut now, so I always tell <<him npc_rival>> that <<he npc_rival>> feels so big whenever <<he npc_rival>> fucks my <<if $fetish.sissy>>sissy <</if>>ass... but, honestly, the only time I even really feel <<him npc_rival>> is if <<he npc_rival>> juices up on <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> drugs first.@@" She seems distracted for a moment, twirling her hair and smiling. "@@.npc_sissy_secretary;Isn't medical science the best? I just love my pink pills... sometimes I wonder what it would be like to work for <<=setup.getNpcName("npc_work_doctor","formal")>> directly... I bet <<he npc_work_doctor>> has all sorts of experimental stuff that would be just, like WOW.@@"<br>
<br>
<<printThought "She's practically turning into <<=setup.getNpcName('npc_barista','nickname')>>...">><br>
<br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> shakes her head and gets back on track. "@@.npc_sissy_secretary;Anyway, there's no doubt about it that this <<if $fetish.sissy>>sissy<<else>>slut<</if>> is a total size queen now! So I came in today hoping to find something new to push my body even further. So come on, sell me on something! Dish me those secret toys that make the biggest butt-sluts go woah!@@"<br>
<br>
<<include "analbeadDemoChoices">>
</div><<if $scene.choices.plug>>
[@@.link_locked;You already tried showing her butt plugs.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_analbeads_3" "Show her some butt plugs." 60 "<<set $scene.action='plug'>>">>]<br>
<</if>>
<<if $scene.choices.dildo>>
[@@.link_locked;You already tried showing her dildos.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_analbeads_3" "Show her some dildos." 60 "<<set $scene.action='dildo'>>">>]<br>
<</if>>
[<<moveTo "event_mall_sexstore_analbeads_3" "Show her some anal beads." 60 "<<set $scene.action='beads'>>">>]/*#
#desc: working sexstore floor: npc_sissy_secretary show off anal toys
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.choices[$scene.action] = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == "beads">>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_sexstore_clerk")>>
<<else>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'plug'>>
You lead <<=setup.getNpcName("npc_sissy_secretary","first")>> to the store's collection of anal plugs but she<<if $scene.choices.plug>>, yet again<</if>> shakes her head.<br>
<br>
"@@.npc_sissy_secretary;I said I was looking for something new — you know I have a <<=setup.getItemName('sissyomatic')>> locked on 24/7, so as addicted as I am to being plugged, they're totally old news.@@"<br>
<br>
<<include "analbeadDemoChoices">>
<<case 'dildo'>>
You lead <<=setup.getNpcName("npc_sissy_secretary","first")>> to end of the dildo aisle where the shop stocks its largest models. While she licks her lips and runs her fingers along the realistic veins of a particularly girthy beast she<<if $scene.choices.plug>>, yet again<</if>> shakes her head.<br>
<br>
"@@.npc_sissy_secretary;Not that the sight of these doesn't have me fantasising about getting pounded into a mattress, but I've got plenty of experience being an anal cock-whore. I'm looking to break out of my rutting rut, as it were and experience something different.@@"<br>
<br>
<<include "analbeadDemoChoices">>
<<case 'beads'>>
<<if $scene.choices.plug && $scene.choices.dildo>>Running out of ideas, you<<else>>You<</if>> show <<=setup.getNpcName("npc_sissy_secretary","first")>> the store's collection of anal beads. She frowns.<br>
<br>
"@@.npc_sissy_secretary;These tiny things? I dunno, I mean, I guess some of those XXL strands could give me a stretch for a moment... but it seems like it'd be pretty transitory before my hungry ass sucked the sphere in and I was left with that boring narrow bit...@@"<br>
<br>
<<if $scene.gag>>
You're trying to think of how to pitch her on the benefits of anal beads while gagged
<<else>>
You're trying to think of the best pitch on the benefits of anal beads
<</if>>
when <<=setup.getNpcName("npc_sexstore_clerk","first")>> appears behind you.<br>
<br>
<<if $scene.gag>>
"@@.npc_sexstore_clerk;I couldn't help but overhear your... discussion@@" <<he npc_sexstore_clerk>> states, with a grin in the direction of your gag. "@@.npc_sexstore_clerk;I believe a nice product demo would really clear things up as to why anal beads are an essential tool in a butt-slut's arsenal.@@"
<<else>>
"@@.npc_sexstore_clerk;I couldn't help but overhear your discussion. I believe a nice product demo would really clear things up as to why anal beads are an essential tool in a butt-slut's arsenal.@@"
<</if>>
<br><br>
<<He npc_sexstore_clerk>> plucks several sets of anal beads from the rack and gestures towards the club's furniture/demo area. "@@.npc_sexstore_clerk;If the two of you would come with me?@@"<br>
<br>
[<<moveTo "event_mall_sexstore_analbeads_4" "Follow." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_mall_sexstore_analbeads_4" "You're not up for doing a demo today..." 180 "<<set $scene.accept=false>>">>]<br>
<<default>>
ERROR: unexpected scene.action
<</switch>>
</div>/*#
#desc: working sexstore floor: npc_sissy_secretary shown anal beads
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<changeHorny 10>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
"@@.npc_sexstore_clerk;So,@@" <<=setup.getNpcName("npc_sexstore_clerk","first")>> explains as <<he npc_sexstore_clerk>> guides the two of you up onto some kneeling benches and exposes your rears. "@@.npc_sexstore_clerk;I heard you express some envy for <<=$player.first_name>>'s consummate rear skill, so how about a competition to show how anal beads are part of a slut's complete butt-fest, a butt to butt competition for who can take the most balls. If <<=$player.first_name>> wins, well... I think that would be proof of beads being useful for pushing the limits of capacity, hmm?@@"<br>
<br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> grins, "@@.npc_sissy_secretary;I never turn down a challenge... but for a pair of sluts like us I don't see how those little balls could ever be much more than a minor stimulation.@@"<br>
<br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> wiggles her butt in invitation as <<if $scene.removePlug>>removes your current plug and <</if>>lays things out in preparation.<br>
<br>
[<<moveTo "event_mall_sexstore_analbeads_5" "Anything to make a sale!" 600>>]
<<else>>
You shake your head and <<=setup.getNpcName("npc_sexstore_clerk","first")>> frowns while <<=setup.getNpcName("npc_sissy_secretary","first")>> looks disappointed.<br>
<br>
"@@.npc_sexstore_clerk;Sorry, but it would appear that my lovely assistant is not quite up to things today.@@"<br>
<br>
"@@.npc_sissy_secretary;Oh well,@@" <<=setup.getNpcName("npc_sissy_secretary","first")>> says with a shrug. "@@.npc_sissy_secretary;I guess I'll just take solace that maybe you aren't the ultimate slut after all. I guess some other time, maybe? Anyway, all this talk about anal has me feeling pretty horny. I'm going to go see if I can't find someone to fuck this <<if $fetish.sissy>>sissy's<<else>>slut's<</if>> brains out.@@" She walks away and you hear the unmistakable chime of the Grind-her casual fuck-buddy dating app.<br>
<br>
<<=setup.getNpcName("npc_sexstore_clerk","first")>> returns to the till, leaving you to re-stock the anal beads.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish your shift." 1800>>]
<</if>>
</div>/*#
#desc: working sexstore floor: npc_sissy_secretary shown anal beads
#status: RELEASED 0.8.6.0
#ignore_spell: f
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 12 'normal' $EXPOSED>>
<<changeHorny 25>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Cracking open the first package and slathering things up with lube <<=setup.getNpcName("npc_sexstore_clerk","first")>> starts shoving one ball at a time into both your and <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> rears. "@@.npc_sissy_secretary;Hmm, feeling each bead pop into place is more interesting than I was anticipating... but I don't really see how these are such a must-have.@@"<br>
<br>
"@@.npc_sexstore_clerk;So I'm starting you out with one of our medium models, and it's clear your ass is already hungry for more... though, note that even at this scale there can be uses. There's a more advanced version we stock that's electrified, so after each ball you get a nice shock to tighten you up, great for muscular control.@@"<br>
<br>
"@@.npc_sissy_secretary;Yeah, I could see that being fun... but not really what I'm shopping for today.@@"<br>
<br>
"@@.npc_sexstore_clerk;Quite right, quite right,@@" <<=setup.getNpcName("npc_sexstore_clerk","first")>> states as <<he npc_sexstore_clerk>> pauses after shoving a final bead into your rear. "@@.npc_sexstore_clerk;That said, it would appear that we've reached the end of the first strand without a winner. This is a great opportunity to show off one of the really fun techniques with beads — the withdrawal.@@"<br>
<br>
<<=setup.getNpcName("npc_sexstore_clerk","first")>> takes a firm hold of the rings that are the only part of the anal beads sticking out of your and <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> rear and begins to pull.<br>
<br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> almost immediately begins to moan, and your own pleasure is overridden by watching her ecstatic expression as bead after bead pops free of her rear.<br>
<br>
"@@.npc_sissy_secretary;F-f-fuck,@@" she gasps when the final bead falls free, "@@.npc_sissy_secretary;being emptied never felt so good...@@"<br>
<br>
"@@.npc_sexstore_clerk;As I said, a fun technique, now, since the two of you are tied, how about we move up to the larger size?@@"<br>
<br>
"@@.npc_sissy_secretary;Yes, <<sir npc_sexstore_clerk>>! Goddess... my rear is all aquiver after that last bit, and varying the speed could make it even more interesting... call me a crazed pain-slut but I'm curious what it would be like if you just yanked like you were starting a lawn-mower... goddess I'd be ruined...@@"<br>
<br>
<<=setup.getNpcName("npc_sexstore_clerk","first")>> chuckles as <<he npc_sexstore_clerk>> lubes up the next set.<br>
<br>
<<if setup.getTotalValue("anal") > 18>>
[<<moveTo "event_mall_sexstore_analbeads_6_win_1" "Round two..." 300>>]
<<else>>
[<<moveTo "event_mall_sexstore_analbeads_6_lose" "Round two..." 300>>]
<</if>>
</div>/*#
#desc: working sexstore floor: npc_sissy_secretary lose bead contest
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<<playerOrgasm>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Bead after massive bead disappears into each of your and <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> <<if $fetish.sissy>>sissy fuck-holes<<else>>rears<</if>>. After a while <<if $scene.removePlug && $scene.remote>>you hear a buzzing as your plug walks off the table and <<elseif $scene.remote>>things are made even more challenging as your hollow plug rumbles the beads in your ass, <</if>>you look around to realise you have a small audience of additional customers.<br>
<br>
You tremble and glance over at <<=setup.getNpcName("npc_sissy_secretary","first")>>,
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
she looks close to her limit.
<<else>>
she's breathing a bit hard, but more in excitement than strain.
<</if>>
<<else>>
she's biting her lip in anticipation, clearly eager for many more beads to be shoved up her ass.
<</if>>
Unfortunately you are at your limit, straining as you try to take one more... only to lose tension and have two beads pop out of your rear.<br>
<br>
"@@.npc_sexstore_clerk;My, my! It would appear the challenger has won the match!@@" <<=setup.getNpcName("npc_sexstore_clerk","first")>> announces as you pant and moan. You glance back as <<he npc_sexstore_clerk>> takes hold of the end of both sets of beads and starts to pull. Soon you and <<=setup.getNpcName("npc_sissy_secretary","first")>> are both crying out, the cheers of the crowd driving you on until the final bead pops out of each of your asses to the lous sound of dual <<if $fetish.sissy>>sissygasms<<else>>analgasms<</if>>.<br>
<br>
It's <<=setup.getNpcName("npc_sissy_secretary","first")>> turn to gasp, <<=setup.getNpcName("npc_sexstore_clerk","first")>> leaving the two of you to recover as <<he npc_sexstore_clerk>> hurries back to the register where several customers have been inspired to make purchases of their own.<br>
<br>
Rising to her feet <<=setup.getNpcName("npc_sissy_secretary","first")>> <<if $scene.removePlug>>slides your plug back into your tired hole and <</if>>gives you a kiss, whispering "@@.npc_sissy_secretary;you always show me the best times!@@" In your ear before skipping out of the store... seemingly having totally forgotten to make a purchase.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish the rest of your shift." 600>>]
</div>/*#
#desc: working sexstore floor: npc_sissy_secretary win bead contest
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Bead after bead is packed into your and <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> cavernous <<if $fetish.sissy>>sissy fuck-holes<<else>>rears<</if>>. You feel stuffed like few times before you hear a stifled gasp from your opponent and you look over just in time to witness your "victory" as <<=setup.getNpcName("npc_sissy_secretary","first")>> cries out in <<if $fetish.sissy>>sissygasm<<else>>orgasm<</if>> as her body shoots the beads out of her rear.<br>
<br>
This depraved display is followed by applause and you look around to realise that several customers have trickled in to watch the competition while you were distracted.<br>
<br>
Your heart thumps in your chest as <<=setup.getNpcName("npc_sexstore_clerk","first")>> announces "@@.npc_sexstore_clerk;your champion!@@" Before slowly pulling the beads out of your rear, each large orb stretching your hole as your eyes roll back and you tremble in place.<br>
<br>
[<<moveTo "event_mall_sexstore_analbeads_6_win_2" "Oh fuck..." 180>>]
</div>/*#
#desc: working sexstore floor: npc_sissy_secretary after win bead contest
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<set $scene.payBonus = 100>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
The combination of the audience and the intensity of stimulation gives you a climax of your own and you go limp in place as <<=setup.getNpcName("npc_sexstore_clerk","first")>> gives you a comforting pat on the rear before hurrying back to the register to handle the sudden rush of excited customers.<br>
<br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> staggers back to her feet and smiles down at you. "@@.npc_sissy_secretary;On the one hand, I guess I should have just trusted the expert... on the other, insisting on a demo, well... that was fucking hot!@@"<br>
<br>
<<if $fetish.fisting>>
She reaches behind to massage your hole, and in a matter of moments her entire hand is inside of you. "@@.npc_sissy_secretary;Fuck am I jealous of this hole... but now that I know your secret, well...@@" She opens her fist slightly, rocking against your sensitive <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> for a moment longer before sliding her hand out<<if $scene.removePlug>> and helpfully replacing your plug<</if>>.<br>
<br>
<</if>>
Scooping up both sets of anal beads <<=setup.getNpcName("npc_sissy_secretary","first")>> skips off to make her purchase. You take a few more minutes to recover before returning to your feet to wrap up your shift.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Finish off your shift." 300>>]
</div>/*#
#desc: working sexstore floor: npc_hucow arrives
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_hucow","npc_hucow_3")>>
<div id="invframe" class="scrolltext">
You're working your usual shift at <<printShopName 'mall_sexstore'>> when a familiar face walks through the door, <<=setup.getNpcName("npc_hucow","full")>> heading for you as soon as she notices you, her massive milk-jugs jiggling with every step as the buttons on her shirt put in a championship level performance.<br>
<br>
"@@.npc_hucow;<<=$player.first_name>>!@@" She shouts in excitement as she runs over. "@@.npc_hucow;You're exactly the person who'd be able to help me with my predicament.@@"<br>
<br>
[<<moveTo "event_mall_sexstore_bedbondage_2" "You are here to serve your customers, what does she need?" 180>>]
</div>/*#
#desc: working sexstore floor: npc_hucow explains need
#status: RELEASED 0.8.8.0
#ignore_spell: udderly
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_hucow","npc_hucow_3") setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_hucow","full")>> grins and you would swear her horns almost perked up. "@@.npc_hucow;I knew you'd have my back! So, you've seen the arrangement I use at work... but sometimes <<=setup.getNpcName("npc_work_doctor","formal")>> is unavailable or too busy to hook me up for the night. I bought a milking system for my apartment, but even if I drain myself totally right before bed I still wake up in a pool of ruined sheets and wasted milk!@@"<br>
<br>
You nod in understanding, replying that she's looking for a more "secure" solution so she can milk all night long.<br>
<br>
"@@.npc_hucow;Exactly! See, I knew you were just the person to help me out! So yeah, on the practical side I want something nice and restrictive so I can be hooked up all night safely and stop spending so much time on laundry... plus, well, I'm just more calm and sleep better in general if I'm udderly... er, I mean, utterly restrained.@@"<br>
<br>
You chuckle at the horrible pun and show her some bed restraints. She, of course, opts for the most secure system you sell, a medical-grade assembly with timer-controlled magnetic locking straps that will have her all but immobile and helpless with a combination of padded mitts, two sets of cuffs for each limb and full torso, neck and head restraint.<br>
<br>
"@@.npc_hucow;Oh this will be just perfect!@@" <<=setup.getNpcName("npc_hucow","full")>> states with excitement as <<=setup.getNpcName("npc_sexstore_clerk","first")>> rings up her purchase.<br>
<br>
"@@.npc_sexstore_clerk;Yes, they really are the top of the line for those seeking the ultimate in a safe, secure sleep... and they come with a complimentary install service. Miss <<=$player.last_name>>, your shift is getting close to the end, would you be free to accompany the customer home and take care of that?@@"<br>
<br>
[<<moveTo "event_mall_sexstore_bedbondage_3" "Of course! You are here to serve all client needs!" 180 "<<set $scene.help=true>>">>]<br>
[<<moveTo "event_mall_sexstore_bedbondage_3" "You don't have time today..." 180 "<<set $scene.help=false>>">>]
</div>/*#
#desc: working sexstore floor: npc_hucow takes you to her flat
#status: RELEASED 0.8.8.0
#ignore_spell: dlc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.help>>
<<set $scene.bonus = 40>>
<<addCredits $scene.bonus>>
<<addCredits $player.flags.maidcafe.base_pay>>
<<if $scene.leash>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<if $scene.switchCollar>>
<<removeItem 'bondage_collar' true>>
<</if>>
<</if>>
<<if $scene.gag>>
<<removeItem 'ball_gag_red' true>>
<<deleteItem 'ball_gag_red'>>
<</if>>
<</if>>
<</if>>
<<if $scene.help>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_hucow","full"))>> flat'>>
<<else>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.help>>
<<createAdvBGR "./images/locations/hucow_flat.png" setup.charImage("npc_hucow","npc_hucow_3")>>
<<else>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_hucow","npc_hucow_3") setup.charImage("npc_sexstore_clerk")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
You agree to go home with <<=setup.getNpcName("npc_hucow","full")>> to help install and <<=setup.getNpcName("npc_sexstore_clerk","first")>> finishes ringing up the sale, handing you your pay of <<=$player.flags.maidcafe.base_pay>> and an extra <<=$scene.bonus>> credits from the till to "@@.npc_hucow;cover the cost of time and transport.@@"<br>
<br>
Clutching her new purchase with glee, <<=ps(setup.getNpcName("npc_hucow","full"))>> plug-mounted tail twitches with excitement as she bounces towards the exit, moving gracefully in her steep, hoof-inspired boots, her bubble butt jiggles.<br>
<br>
Her flat proves to be quite close to the mall, a small studio absolutely bedecked in hucow-themed adornments: from a "Keep Calm and Get Milked" poster to limited edition cow-print Dreammaker hooked up to the "Bovine Fields" DLC to Animal Town Mayor.<br>
<br>
Almost giddy with excitement <<=setup.getNpcName("npc_hucow","full")>> skips over to her fridge, opening it to reveal bottle after bottle of creamy liquid. "@@.npc_hucow;Can I offer you breast milk, I mean breast milk?@@" She asks with a giggle, her breasts bouncing merrily as she laughs, already starting to stain through her shirt as you are reminded of the original reason for her purchase.<br>
<br>
[<<moveTo "event_mall_sexstore_bedbondage_4" "Accept a drink and then get to work." 900 "<<set $scene.drink=true>>">>]<br>
[<<moveTo "event_mall_sexstore_bedbondage_4" "Politely decline, you're just here to do an installation." 900 "<<set $scene.drink=false>>">>]
<<else>>
You state you don't have time today to do a customer install and <<=setup.getNpcName("npc_hucow","full")>> frowns in disappointment. "@@.npc_hucow;Oh... I don't think I feel confident in hooking up something that complicated on my own... I guess I'll come back some other day.@@"<br>
<br>
<<=setup.getNpcName("npc_hucow","full")>> turns and leaves, moving gracefully in her steep, hoof-inspired boots and giving you quite the nice view of her bouncing bubble-butt... and the swaying tail behind that you just know is attached via a likely sizable anal plug.<br>
<br>
<<=setup.getNpcName("npc_sexstore_clerk","first")>> has you restock the bed bondage kit back on its shelf and then it's nearing the end of your shift.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Finish off your shift." 300>>]
<</if>>
</div>/*#
#desc: working sexstore floor: tuck in npc_hucow
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drink>>
<<applyStress -5>>
<<applyFatigue -20>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_hucow","full"))>> flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hucow_flat.png" setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.drink>>
You accept her offer and she pours half a glass from the fridge before topping it off with a fresh squirt straight from the source.<br>
<br>
"@@.npc_hucow;Enjoy!@@" She says with a smile.<br>
<br>
You do exactly that, tipping back the rich, creamy milk and feeling a rush of relief and energy go through you.<br>
<br>
<<=setup.getNpcName("npc_hucow","full")>> drains the rest of the bottle with a throaty gulp and then she leads you to her bed.
<<else>>
You politely decline <<=ps(setup.getNpcName("npc_hucow","full"))>> offer and she shrugs, pouring and pounding back a glass of her own before leading you to her bed.
<</if>>
<br><br>
Her bed is a simple twin, with her breast milking system setup conspicuously to one side atop a large, after-market reservoir.<br>
<br>
"@@.npc_hucow;Oooh,@@" she states, already starting to hook herself up, "@@.npc_hucow;I'm feeling so full! I think I'll have a bit of a nap, could you install everything and then strap me down?@@" She sighs with relief as the pumps start running, milk almost immediately spurting out of her swelled breasts to get slurped away for storage.<br>
<br>
You smile and note that's what you're here for, and the two of you set about hooking things around the mattress before you have her lie back so you can adjust everything to line up with her body. <<=setup.getNpcName("npc_hucow","full")>> seems to be getting more excited by the moment as you start strapping her down, walking her through using the timer and guiding her how to go about doing things solo.<br>
<br>
"@@.npc_hucow;A little tighter,@@" she moans as you make a few final adjustments, straining deliciously against the restraints. "@@.npc_hucow;Now, if you could turn up the suction?@@" She pants, glancing towards the milker controls.<br>
<br>
You start turning the dial up from its current midpoint and she starts mooing passionately, egging you on until you've maxed everything out. "@@.npc_hucow;Goddess, yes!@@" She gasps, grinding against the bed, yet held securely in place by the heavy duty restraints.<br>
<br>
"@@.npc_hucow;This is exactly what I needed... if only I wasn't locked up so you could take advantage of me...@@"<br>
<br>
You look down to where she has spread her thighs in invitation as far as the restraints allow, a gleaming <<if $player.sec_style.submission.sissyomatic != "" || $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $currentTasks.hasOwnProperty('task_sissyomatic_steal')>><<=setup.getItemName("sissyomatic_fem")>><<else>>high-tech chastity device<</if>> enveloping her crotch.<br>
<br>
[<<moveTo "event_mall_sexstore_bedbondage_5" "Her thighs look pretty sensitive..." 900 "<<set $scene.oral=true>>">>]<br>
[<<moveTo "event_mall_sexstore_bedbondage_5" "You need to go, actually." 900 "<<set $scene.oral=false>>">>]
</div>/*#
#desc: working sexstore floor: npc_hucow extra stim
#status: RELEASED 0.8.8.0
#ignore_spell: gasm,mooo
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.oral>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_hucow","full"))>> flat'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hucow_flat.png" setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.oral>>
You slide between <<=ps(setup.getNpcName("npc_hucow","full"))>> bound, trembling legs, ignoring the treasure locked within her chastity device as you merely run your fingers along her thighs, and then lean in to gently kiss and lick the soft, slightly sweaty woman-flesh.<br>
<br>
"@@.npc_hucow;Mooo!@@" <<=setup.getNpcName("npc_hucow","full")>> moans passionately as your efforts combine with the enthusiastically pumping breast devices to give her what you can only describe as a moo-gasm, settling down slightly afterwards as her eyelids flicker and she drifts into stimulated bovine slumber.
<<else>>
You demure from <<=ps(setup.getNpcName("npc_hucow","full"))>> request, but she hardly seems to notice, lost in a world of milked bliss as she enjoys a passionate moo-gasm as the machine sucks away.
<</if>>
<br><br>
You slip out of <<=ps(setup.getNpcName("npc_hucow","full"))>> flat and head on your way.<br>
<br>
[<<moveTo "room_citymap" "Leave." 180>>]
</div>/*#
#desc: floor bondage model: chastity customer spot
#status: RELEASED 0.9.4.0
#ignore_spell: riiight
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.help>>
<<set $scene.seenAdv = false>>
<<set $scene.why = {}>>
<<set $scene.score = 0>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
You approach the shy customer and ask if you could help?<br>
<br>
They jump slightly and keep out from under their hoodie. Despite their baggy clothes you can spot a slight bulge of excitement between their legs. "@@.generic_male1;Y-yeah... um, so... a friend of mine was talking about chastity? And I was just, like... wondering why anyone would be into that sort of thing?@@"<br>
<br>
<<printThought 'A "friend"... riiight... maybe best to lead them along carefully...'>><br>
<br>
<<include "sexstoreChastityWhy">>
<<else>>
You leave the shy customer to their own devices... with the chastity devices. A few minutes later you look back and they've disappeared without making a purchase.<br>
<br>
<<printThought "Maybe I should have offered some help...">><br>
<br>
Nothing else of particular note happens through the rest of your shift.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Wrap things up." 600>>]
<</if>>
</div><<if $scene.why.denial>>
[@@.link_locked;You already explained using chastity for erotic denial.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_chastity_2" "Talk about using chastity for erotic denial." 120 "<<set $scene.topic='denial'>>">>]<br>
<</if>>
<<if $scene.why.no_penis>>
[@@.link_locked;You already explained using chastity for erotic denial.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_chastity_2" "Talk about using chastity to lock away an unwanted penis." 120 "<<set $scene.topic='no_penis'>>">>]<br>
<</if>>
<<if $scene.why.control>>
[@@.link_locked;You already explained using chastity so surrender control.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_chastity_2" "Talk about using chastity to surrender control." 120 "<<set $scene.topic='control'>>">>]<br>
<</if>>
<<if $scene.why.aesthetic>>
[@@.link_locked;You already explained using chastity for aesthetic purposes.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_chastity_2" "Talk about using chastity for aesthetics." 120 "<<set $scene.topic='aesthetic'>>">>]<br>
<</if>>
[<<moveTo "event_mall_sexstore_chastity_3" "Ask if they're ready to make a purchase?" 120>>]/*#
#desc: floor bondage model: chastity customer discuss
#status: RELEASED 0.9.4.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.why[$scene.topic] = true>>
<<set $scene.score += 1>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case "denial">>
You talk about how chastity can aid in erotic denial, how the feeling of being locked away can either intensify thoughts of arousal, or place limitations around such.<br>
<br>
"@@.generic_male1;Wait so after I... I mean, my friend unlocks they would have, like... an even better orgasm?@@"<br>
<br>
You nod in confirmation and the customer continues to think.
<<case "no_penis">>
You explain how some people may not want to be reminded of their penis, and find that locking it away can help remove it as a concern. You point to the flat and belt style chastity devices as more extreme examples of that urge that can even help hide away or eliminate the bulge or profile of having something sticking out "down there." <br>
<br>
"@@.generic_male1;Huh, yeah... that makes sense. I could see my friend maybe wanting something like that...@@"
<<case "control">>
You talk about how being locked up means that the key becomes effectively an object of power, either to leave at home for a thrill while going out... or entrusted to a close friend as a way of surrendering control.<br>
<br>
"@@.generic_male1;Oh, wow, that would be pretty intense... but I don't think my friend has anyone they could trust for something like that.@@"<br>
<br>
You point out that the customer could offer to provide that service to their "friend" and they squirm nervously. "@@.generic_male1;N—no... my friend, um... they go to a different mall, a long way from here... you probably haven't heard of it...@@"<br>
<br>
You go along with things and nod... though not without pointing to some of the shop's electronic devices with remote-operated locking mechanisms.
<<case "aesthetic">>
You talk about how some just enjoy the look and feel of a chastity cage, how it can adorably encase, or brutally constrain any manner of penis.<br>
<br>
The customer looks a bit closer at some of the cages, seeming to pay particular attention to one of the "flat" designed cages. "@@.generic_male1;Wow... yeah, looking down... I mean, looking at someone and seeing this instead of a penis would be a real eye-catcher...@@"
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexstoreChastityWhy">>
</div>/*#
#desc: floor bondage model: chastity customer try to sell
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
You ask the customer if they're ready to make a purchase?<br>
<br>
<<switch $scene.score>>
<<case 0>>
"@@.generic_male1;No... I, um... I think I need to go.@@" They turn and run off back into the mall before you can get a word in edgewise.<br>
<br>
<<printThought "That was definitely too hard of a sell... but maybe they'll be back sometime?">>
<<case 1>>
"@@.generic_male1;No, I think I'll leave that to my, um... friend... thanks for the help, though.@@" They nod at you and then leave the store.<br>
<br>
<<printThought "Hmm... should have spent more time explaining things... but maybe they'll be back sometime?">>
<<case 2>>
The customer hesitates and then shakes their head. "@@.generic_male1;No... I think I have enough information for my friend... thanks for the help.@@" They nod at you and then leave the store.<br>
<br>
<<printThought "Hmm... feels like I was so close... just a little more time talking them around... maybe they'll be back sometime?">>
<<case 3 4>>
The customer blushes as they reply. "@@.generic_male1;Um... maybe but... uh... if this is too personal, just say so but, like... do you have any experience with this sort of thing?@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_mall_sexstore_chastity_4" "Of course! (Show yours off)" 180 "<<set $scene.personal='chaste'>>">>]<br>
<<else>>
[@@.link_locked;You can't show off chastity when you aren't wearing chastity.@@]<br>
<</if>>
[<<moveTo "event_mall_sexstore_chastity_4" "You have played with it before." 180 "<<set $scene.personal='past'>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_4" "You have locked someone else in chastity." 180 "<<set $scene.personal='other'>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_4" "Say it's not your thing." 180 "<<set $scene.personal='no'>>">>]<br>
<<default>>
ERROR: unexpected scene.score <<=$scene.score>>
<</switch>>
<<if $scene.score < 3>>
With the customer gone, nothing else of particular note happens through the rest of your shift.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Wrap things up." 600>>]
<</if>>
</div>/*#
#desc: floor bondage model: chastity customer personal testimony
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.personal>>
<<case 'chaste'>>
<<set $scene.score += 2>>
<<set $scene.seenAdv = setup.getChastityLevel() >= 4>>
<<case 'past'>>
<<set $scene.score += 1>>
<<case 'other'>>
<<set $scene.score += 1>>
<<case 'no'>>
<<set $scene.score -= 3>>
<</switch>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
<<switch $scene.personal>>
<<case 'chaste'>>
You smile and reveal your <<=setup.getItemTypeName("cage")>>.<br>
<br>
<<switch setup.getChastityLevel()>>
<<case 1>>
The customer looks at your simple chastity <<if setup.isCage()>>cage<<else>>belt<</if>>.<br>
<br>
"@@.generic_male1;Huh, that's a lot more basic than some of these others...@@""
<<case 2>>
The customer stares at your sleek chastity <<if setup.isCage()>>cage<<else>>belt<</if>>.<br>
<br>
"@@.generic_male1;Wow, it's so small! And it's not, like, uncomfortable or anything?@@"
<<case 3>>
The customer stares at your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> as you explain that it is sleeker and more secure thanks to being electronically controlled.<br>
<br>
"@@.generic_male1;Wow, so, like... you don't even need a key, just, like... a code?@@"<br>
<br>
You nod, playfully noting that one could say you're literally remote-controlled.
<<case 4>>
The customer stares in awe at your ultra-secure <<if setup.isCage()>>cage<<else>>belt<</if>>.<br>
<br>
"@@.generic_male1;Woah... that looks so cool... and you sell those here?@@"<br>
<br>
You nod, noting that it's the most cutting-edge and advanced device on the market.<br>
<br>
"@@.generic_male1;Wow, I, er, I mean, my friend, is a bit of a tech enthusiast, that looks REALLY cool...@@"
<<case 5>>
The customer gawks at your high-tech <<if setup.isCage()>>cage<<else>>belt<</if>>.<br>
<br>
"@@.generic_male1;Woah... that doesn't look like anything you sell here! What is it?@@"<br>
<br>
You explain that it's actually a personalised custom device that is not publicly available... but that the store sells many devices that are nearly as secure... and that would be a bit more appropriate for a first-timer, anyway.<br>
<br>
"@@.generic_male1;Yeah... I, er, my friend doesn't have that much experience...@@"
<<default>>
ERROR: unexpected chastity level <<=setup.getChastityLevel()>>
<</switch>>
<br><br>
You let the customer stare for a little longer and they nervously ask a follow-up question. "@@.generic_male1;So, um... are you just wearing that as part of your job or...@@"<br>
<br>
<<if $player.sec_style.submission.permanent_key>>
You smile and reply that, actually, you've given up permanent control of your key.<br>
<br>
"@@.generic_male1;Permanent?@@" The customer asks with obvious surprise. "@@.generic_male1;Wow... I wish I had someone I trusted that much.@@"
<<elseif $npc_manager.flags.hascagekey>>
You smile and reply that your key is actually with your keyholder, and you will be unable to unlock without their permission.<br>
<br>
"@@.generic_male1;Keyholder?@@" The customer asks in awe. "@@.generic_male1;Wow... I wish I had someone I trusted that much.@@"
<<else>>
You shake your head and explain that, while you retain possession of your key, you wear chastity for more than just your job at the shop.<br>
<br>
"@@.generic_male1;I see...@@" The customer replies. "@@.generic_male1;I wish I was brave enough to try something like that...@@"
<</if>>
<<case 'past'>>
You explain that you have experimented with chastity in the past.<br>
<br>
"@@.generic_male1;Huh... so people do use it on themselves.@@" The customer replies. "@@.generic_male1;I wish I was brave enough to try something like that...@@"
<<case 'other'>>
You explain that you have experienced chastity... by locking someone else up.<br>
<br>
"@@.generic_male1;Huh... so people do use it on themselves.@@" The customer replies. "@@.generic_male1;I wish I had someone to lock me up...@@"
<<case 'no'>>
You reply that you don't have any personal experience with chastity.<br>
<br>
"@@.generic_male1;Oh,@@" the customer replies, sounding a bit crestfallen. "@@.generic_male1;Well, I, um... I guess that's all I needed to know for my friend... thanks.@@"<br>
<br>
They leave.<br>
<br>
<<printThought "Dang... close...">><br>
<br>
With the customer gone, nothing else of particular note happens through the rest of your shift.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Wrap things up." 600>>]
<<default>>
ERROR: unexpected scene.personal <<=$scene.personal>>
<</switch>>
<<if $scene.personal != "no">>
<br><br>
[<<moveTo "event_mall_sexstore_chastity_5" "Ask if the customer means their friend?" 120 "<<set $scene.friend=true>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_5" "Ignore the slip." 120 "<<set $scene.friend=false>>">>]
<</if>>
</div>/*#
#desc: floor bondage model: chastity customer react to friend slip
#status: RELEASED 0.9.4.0
#ignore_spell: r,f
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.friend>>
<<set $scene.score += 1>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
<<if $scene.friend>>
You ask the customer if they meant for their friend and they blush a shade of red usually reserved for sports-cars or stop-signs.<br>
<br>
"@@.generic_male1;R-right... my f-friend... my friend that wants to be locked in chastity.@@" They reply.
<<else>>
You breeze past the customer's slip-up.
<</if>>
<br><br>
[<<moveTo "event_mall_sexstore_chastity_6" "Ask if they're ready for a fitting?" 180 "<<set $scene.fitting=true>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_6" "Ask if they're ready to make a purchase?" 180 "<<set $scene.fitting=false>>">>]
</div>/*#
#desc: floor bondage model: chastity customer fitting
#status: RELEASED 0.9.4.0
#ignore_spell: f,bs
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
<<if $scene.fitting>>
You ask the customer if they're ready to have a chastity fitting?<br>
<br>
"@@.generic_male1;F-fitting?@@" They ask in confusion.<br>
<br>
You smile and explain that chastity devices need to be quite precisely sized, pointing to some of the different rings on display and noting that different people can be very differently endowed.<br>
<br>
<<if $scene.score >= 6>>
"@@.generic_male1;Oh... yeah, that makes sense.@@" They reply, "@@.generic_male1;Only, like I said, this is for my friend, so...@@"<br>
<br>
[<<moveTo "event_mall_sexstore_chastity_7" 'Call them on this "friend" BS.' 180 "<<set $scene.friend=false>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_7" 'Point out that they would be able to show their "friend."' 300 "<<set $scene.friend=false>>">>]<br>
<<else>>
"@@.generic_male1;Oh, okay, but I was just doing research to understand my friend, so that doesn't make any real sense. Thanks for your time.@@" They reply before hurriedly leaving the store.<br>
<br>
<<printThought "Dang... maybe if I'd spent more time talking with them...">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Finish off your shift." 300>>]
<</if>>
<<else>>
You ask if they are ready to make a purchase.<br>
<br>
"@@.generic_male1;Oh, no, as I said, I was just doing some research for a friend.@@" They reply before leaving.<br>
<br>
<<printThought "Dang... pushed too hard.">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Finish off your shift." 300>>]
<</if>>
</div>/*#
#desc: floor bondage model: chastity customer start measuring
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
<<if $scene.friend>>
You put your proverbial foot down and tell the customer that they can drop the "friend" act and you can just help them buy a chastity device.<br>
<br>
Rather than showing off an inventive shade of red, they go ghost-white in fear, your confrontation clearly pushing things too far too fast as they start to stutter something and then just full-on sprint out of the store.<br>
<br>
<<printThought "Damnit... but I think they'll be back someday...">><br>
<br>
You sigh and go back to your normal work, nothing else particularly interesting happening.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Finish off your shift." 300>>]
<<else>>
You smile and point out that by seeing how the fitting process works first-hand the customer would be much better equipped to share that knowledge with their "friend." <br>
<br>
"@@.generic_male1;Oh, yeah... that does make sense.@@"<br>
<br>
You smile and grab a measuring tape as you lead the way to one of the private fitting rooms.<br>
<br>
In the privacy of the fitting room you try to keep the customer at-ease as you kneel down and motion for them to pull their clothes out of the way.<br>
<br>
They blush... but obey, lifting the bottom of their hoodie and fumbling with their other clothes to reveal...<br>
<br>
[<<moveTo "event_mall_sexstore_chastity_8" "A small and sweet<<if $fetish.sissy>> sissy<</if>> clitty." 300 "<<set $scene.size='small'>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_8" "A run of the mill, regular penis." 300 "<<set $scene.size='average'>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_8" "A nice large dong." 300 "<<set $scene.size='large'>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_8" "A truly massive monster cock." 300 "<<set $scene.size='massive'>>">>]
<</if>>
</div>/*#
#desc: floor bondage model: chastity customer set penis
#status: RELEASED 0.9.4.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
The customer blushes and looks away as they reveal their
<<switch $scene.size>>
<<case 'small'>>
small penis.
<<case 'average'>>
average sized penis.
<<case 'large'>>
large penis.
<<case 'massive'>>
truly massive cock.
<<default>>
ERROR: unexpected scene.size <<=$scene.size>>
<</switch>>
<br><br>
You gently explain that they need to watch as you start wrapping the tape-measure around their base... which only causes their erection to get harder
<<if ['massive','large'].includes($scene.size)>>, their <<=$scene.scale>> almost smacking you in the face<</if>>.<br>
<br>
"@@.generic_male1;S-sorry,@@" they reply, staring down... and getting even more erect.<br>
<br>
[<<moveTo "event_mall_sexstore_chastity_9" "Comfort them." 300 "<<set $scene.comfort='words'>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_9" "Offer to get them off." 300 "<<set $scene.comfort='suck'>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_9" "Offer to fetch some ice." 300 "<<set $scene.comfort='ice'>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_9" "Don't say anything and move forward." 300 "<<set $scene.comfort='silent'>>">>]
</div>/*#
#desc: floor bondage model: chastity customer react penis
#status: RELEASED 0.9.4.0
#ignore_spell: p,th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
<<switch $scene.comfort>>
<<case 'words'>>
You smile up at the customer and assure them that their
<<switch $scene.size>>
<<case 'small'>>
penis is adorably cute.
<<case 'average'>>
penis is quite nice.
<<case 'large'>>
is wonderfully large.
<<case 'massive'>>
is drool-worthy massive.
<<default>>
ERROR: unexpected scene.size <<=$scene.size>>
<</switch>>
They blush at the compliment, but
<<case 'suck'>>
You ask if they'd like some help "dealing" with things.<br>
<br>
"@@.generic_male1;Oh, I couldn't possibly intrude, I—@@" they start only to gasp as you lay a gentle kiss on their tip and explain that you would be "@@.pc;MORE than happy to be of service.@@"<br>
<br>
They moan, legs trembling as they steady themselves against one of the walls as they nod. "@@.generic_male1;P-p-please...@@"<br>
<br>
You smile and get to work, caressing their balls with one hand as you
<<switch $scene.size>>
<<case 'small'>>
wrap your lips around their small peen and put your tongue to work.
<<case 'average'>>
start sucking.
<<case 'large'>>
casually deep-throat and start bobbing back and forth.
<<case 'massive'>>
show off by deep-throating their full massive length, stroking them through your throat with your free hand as you bob back and forth.
<<default>>
ERROR: unexpected scene.size <<=$scene.size>>
<</switch>>
<br><br>
You look up the whole time as they bite their lip and struggle not to cry out, it isn't long at all before your skills are "rewarded" with <<if $fetish.cum>>a nice creamy mouth-full of cum as they climax and<<else>>them climaxing with a stifled moan,<</if>> their <<=$scene.size>> member softens and shrinks.<br>
<br>
"@@.pc;So delicious,@@" you state with a smile as you lick your lips and pull out the measuring tape once more. "@@.pc;Such a tasty prize deserves to be locked up for safe keeping.@@"<br>
<br>
Perhaps thanks to post-orgasm clarity, they
<<case 'ice'>>
You offer to get some ice and they nod nervously, calming down slightly as you retrieve an ice-pack from the small minifridge in the corner of the changing room for just such occasions.
<<case 'silent'>>
You remain silent and professional as you set to work. The customer bites their lip to focus and
<<default>>
ERROR: unexpected scene.comfort
<</switch>>
remain still as you demonstrate how to measure around the base at the correct level of tightness, doing the measurement once yourself before having them repeat until they can match your precision.<br>
<br>
"@@.generic_male1;Th-thanks... I guess that is a bit tricky to measure...@@"<br>
<br>
[<<moveTo "event_mall_sexstore_chastity_10" "Write down their measurements." 300 "<<set $scene.buy=false>>">>]<br>
[<<moveTo "event_mall_sexstore_chastity_10" "Ask what type of chastity they would like to purchase?" 300 "<<set $scene.buy=true>>">>]
</div>/*#
#desc: floor bondage model: chastity customer sell chastity
#status: RELEASED 0.9.4.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.upgrades = {}>>
<<set $scene.upgrades.adv = $scene.seenAdv>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
<<if $scene.buy>>
You ask if they've decided on which sort of device they'd like to purchase.<br>
<br>
There is a moment of hesitation before the "friend" facade is finally put aside.
<<if $scene.personal == 'chaste'>>
<<if setup.getChastityLevel() == 5>>
"@@.generic_male1;One like yours... only, wait, you said it was custom... well... I guess whatever the most advanced and secure one you sell is?@@"
<<else>>
"@@.generic_male1;Maybe one like yours?@@"
<</if>>
<<else>>
"@@.generic_male1;Um... I guess whatever your most popular cage is? I'm just starting out only... can I... can I wear it out with me?@@"
<</if>>
<br><br>
You smile and reply "@@.generic_male1;Of course!@@" and that you'll be right back to help them try things on.<br>
<br>
[<<moveTo "event_mall_sexstore_chastity_11" 'Go fetch that <<if $scene.personal == "chaste" && setup.isCage()>>belt<<else>>cage<</if>>.' 300>>]
<<else>>
You write down the measurements and hand them over.<br>
<br>
The customer blushes hard... but quickly stuffs the scrap of paper into the pocket of their hoodie before fixing their clothes and apologetically leaving.<br>
<br>
"@@.generic_male1;Th-thanks for your help... I'll let my friend know... I need to go...@@" they blurt as they exit the fitting room and flee the shop.<br>
<br>
<<printThought "So close, guess that was the time to make the sale... maybe next time...">><br>
<br>
You sigh and go back to your normal work, nothing else particularly interesting happening.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Finish off your shift." 300>>]
<</if>>
</div>/*#
#desc: floor bondage model: chastity customer upsell intro
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
You dash back to the store and snag the properly sized chastity device off the shelf... and flash a wink at <<=setup.getNpcName('npc_sexstore_clerk', 'full')>> as you head back to the fitting room.<br>
<br>
"@@.npc_sexstore_clerk;You're really hustling to lock in that sale.@@" <<He npc_sexstore_clerk>> states with a grin before you pop back into the changing room.<br>
<br>
The customer is waiting and starts to cover themselves up only to realise how silly that is.<br>
<br>
You merely smile and kneel back down, unpacking the brand new <<if $scene.personal == 'chaste' && !setup.isCage()>>belt<<else>>cage<</if>> and walking through how everything works.<br>
<br>
The proverbial "seal" broken, the customer is almost in a rush to get locked up, and it isn't long before they
<<if $scene.personal == 'chaste' && !setup.isCage()>>
have the belt around their waist and you are helping arrange them under the front shield.
<<else>>
have the ring in place and you are helping them slide everything into proper position.
<</if>>
A click later and everything is locked, the customer trembling and then staring down in excitement.<br>
<br>
"@@.generic_male1;It's so, so...@@" they start, voice trailing off.<br>
<br>
"@@.pc;Secure? Tight?@@" You offer only for them to finally tear their eyes away from the new <<if $scene.personal == 'chaste' && !setup.isCage()>>belt<<else>>cage<</if>> and look at you with a look of gratitude and a tear in their eye. "@@.generic_male1;... so beautiful! I've been fantasising about this for awhile, but I could never get up the courage... then you! You were so kind and patient and everything and now I'm locked and it's more perfect that I could have imagined!@@"<br>
<br>
They turn towards the fitting room's mirror and start shifting around, looking awestruck as they admire things from every angle.<br>
<br>
<<printThought "Hmm... I wonder if I show them just a little more...">><br>
<br>
<<include "sexstoreChastityUpgrade">>
</div><<if $scene.upgrades.wand>>
[@@.link_locked;You already showed them how to use a wand with chastity.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_chastity_12" "Show them how to use a wand." 300 "<<set $scene.upgrade='wand'>>">>]<br>
<</if>>
<<if $scene.upgrades.plug>>
[@@.link_locked;You helped them accessorise with a butt plug.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_chastity_12" "Suggest a matching plug?" 300 "<<set $scene.upgrade='plug'>>">>]<br>
<</if>>
<<if $scene.upgrades.adv>>
<<if $scene.upgrades.electric>>
[@@.link_locked;You already showed them the electric features of their device.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_chastity_12" "Demonstrate their device's electric features." 300 "<<set $scene.upgrade='electric'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_mall_sexstore_chastity_12" 'Up-sell them to a <<=setup.getItemName("c_cage_advanced")>>.' 300 "<<set $scene.upgrade='adv'>>">>]<br>
<</if>>
<<if $scene.upgrades.wand && $scene.upgrades.plug && $scene.upgrades.electric && $scene.upgrades.adv>>
[<<moveTo "event_mall_sexstore_chastity_13_perfect" 'Time to check out...' 180>>]
<<else>>
[<<moveTo "event_mall_sexstore_chastity_13" 'Time to check out...' 180>>]
<</if>>/*#
#desc: floor bondage model: chastity customer upsell
#status: RELEASED 0.9.4.0
#ignore_spell: s,m
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.upgrades[$scene.upgrade] = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer")>>
<div id="invframe" class="scrolltext">
<<switch $scene.upgrade>>
<<case 'wand'>>
You congratulate the customer on their new device... and ask if they've thought of how to play with it?<br>
<br>
"@@.generic_male1;Play with it? But, like... everything is already so perfect! Every time I move I'm reminded it's there and that I'm all locked away and can't touch it and it's so perfect and...@@"<br>
<br>
You wink and reply that you'll be right back, dashing off to grab a wand off one of the store's displays.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'full')>> sees you running past and makes a "@@.npc_sexstore_clerk;Making a magic sale?@@" Joke before you return to the fitting room.<br>
<br>
You return, wand in hand as the customer looks on with curiosity... then you touch the buzzing wand to the <<if $scene.personal == 'chaste' && !setup.isCage()>>front of their shield<<else>>tip of their cage<</if>> and they all but cum on the spot.<br>
<br>
"@@.generic_male1;Oh Goddess! It's like it's buzzing everywhere!@@"<br>
<br>
You start to pull away, only for the customer's hand to shoot down and grab your own with surprising strength as they grind against the wand. Their words descend into mumbled nonsense as they <<if $fetish.cum>>, leaking <<if $scene.personal == 'chaste' && !setup.isCage()>>down their thigh<<else>>from their cage<</if>><<else>>climax<</if>>.<br>
<br>
You ask if you should add the wand to the days purchase and they nod, still recovering... still clearly very aroused. "@@.generic_male1;So... so good...@@"
<<case 'plug'>>
You ask if they've considered "accesorising" the cage with something behind.<br>
<br>
"@@.generic_male1;Behind?@@" They ask and you smile and spin around to show off your own plug as you re-iterate, "@@.generic_male1;behind!@@"<br>
<br>
You explain that, while in chastity, many will explore other sorts of stimulation... and that a nice filling plug is just perfect to have one straining<<if $fetish.cum>>, leaking,<</if>> and always cognisant of their imprisoned state.<br>
<br>
Somehow, the customer discovers yet another shade of red to blush in... though this time it's definitely tinged with excitement as they reply that they really like that idea...<br>
<br>
Once again you dash out to the store shelves, <<=setup.getNpcName('npc_sexstore_clerk', 'full')>> quipping "@@.npc_sexstore_clerk;Filling a customer need?@@" As you rush past.<br>
<br>
The customer is bouncing in excitement as you rip open a sampler packet of lube and lather up the plug. It's medium-sized, with a jewel-accented base but they stare at it with a mix of fear and excitement as they ask "@@.generic_male1;Are you sure it'll fit?@@"<br>
<br>
You smile back and hand it over, insisting that it'll be perfect... and with a bit of training they'll be begging for something even bigger!<br>
<br>
The customer looks a little suspicious at that, but is more than excited enough to go along as you guide them to press the tip of the plug against their puckering rear hole and then talk them through slowly pushing it in...<br>
<br>
They're closing their eyes in concentration as you repeatedly tell them to relax, the slick plug slowly stretching, stretching... and then shooting in the final couple centimetres as they pass the widest point.<br>
<br>
With a surprised gasp, the customer <<if $fetish.cum>>shoots an orgasm <<if $scene.personal == 'chaste' && !setup.isCage()>>down their thigh<<else>>out of their cage<</if>><<else>>gasps<</if>> and you ask if that was their first analgasm?<br>
<br>
"@@.generic_male1;That's what that's called?@@" They pant, turning to admire the plug glittering in their rear, and then reaching behind to tease it a bit more. "@@.generic_male1;S-so good... you said there are bigger ones, too?@@"<br>
<br>
You nod. <<printThought "Looks like someone has discovered they're both a chastity fanatic... and a size-queen butt-slut in the same day...">>
<<case 'electric'>>
You explain to the customer that, in addition to remote-control security, their new device packs some additional high-tech features.<br>
<br>
"@@.generic_male1;Like what?@@" They ask and you show them the remote, putting the shock setting to its lowest value before offering for them to try it out?<br>
<br>
They tap the button and jolt in pain... and then grin, "@@.generic_male1;Yeah! That's right, get punished!@@" They state as they tap the button again and jerk once more. "@@.generic_male1;And, like... anyone could control me like this?@@" They ask as they take the remote and raise the power level to the "medium" setting.<br>
<br>
"@@.pc;Anyone with the remote... or a paired phone app.@@" You explain as the customer psyches themselves up and delivers another shock that has them yelp in pain.<br>
<br>
"@@.generic_male1;Okay... I'm going to need to be careful with that.@@"<<if $fetish.cum>> As they leak <<if $scene.personal == 'chaste' && !setup.isCage()>>out of the side of the belt<<else>>out of the tip of the cage<</if>>.<</if>>
<<case 'adv'>>
You ask the customer if they'd, perhaps, be interested in an even more secure device?<br>
<br>
"@@.generic_male1;M-more secure?@@" They ask, still admiring their current situation, and with obvious breathless excitement in their voice.<br>
<br>
You confirm that the shop stocks the top-of-the-line, cutting-edge, recently-released <<if $scene.personal == 'chaste' && !setup.isCage()>><<=setup.getItemName("chastity_belt_adv")>><<else>><<=setup.getItemName("c_cage_advanced")>><</if>>.<br>
<br>
From the moment you said "cutting-edge" you can see you had them hooked and they eagerly beg you. "@@.generic_male1;I know I just got locked... but please, I have to try it on!@@"<br>
<br>
You grin and dart out, <<=setup.getNpcName('npc_sexstore_clerk', 'full')>> joking about "@@.npc_sexstore_clerk;Up-selling so quickly?@@" As <<he npc_sexstore_clerk>> retrieves the requested device from its locked case.<br>
<br>
The customer's hands are trembling in excitement as they unlock and remove their current device... and rush to stuff themselves into the new <<if $scene.personal == 'chaste' && !setup.isCage()>><<=setup.getItemName("chastity_belt_adv")>><<else>><<=setup.getItemName("c_cage_advanced")>><</if>>.<br>
<br>
"@@.generic_male1;This... this is what I needed...@@" they state, staring in awe at their reflection as they experimentally bounce around. "@@.generic_male1;I know I'm, like... new to chastity... but compared to that other thing it's like I wasn't secured at all! So sleek, so controlled! I never want to take it off!@@"
<<default>>
ERROR: unexpected scene.upgrade <<=$scene.upgrade>>
<</switch>>
<br><br>
<<include "sexstoreChastityUpgrade">>
</div>/*#
#desc: floor bondage model: chastity customer check out
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.credits = 10*$scene.score>>
<<if $scene.upgrades.adv>>
<<set $scene.credits += 50>>
<</if>>
<<if $scene.upgrades.wand>>
<<set $scene.credits += 20>>
<</if>>
<<if $scene.upgrades.plug>>
<<set $scene.credits += 20>>
<</if>>
<<if $scene.upgrades.electric>>
<<set $scene.credits += 10>>
<</if>>
<<addCredits $scene.credits>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer") setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You suggest that it's time to check out and the customer nods, taking a final lingering glance at their caged reflection before fixing their clothes and heading for the check-out counter.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'full')>> rings them up with a smile and a knowing nod in your direction.<br>
<br>
The customer barely glances at the total as they pay for their purchase and skip away. Unlike when they entered the shop, their hood is down and their cute head is exposed, you happen to notice with a smile.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'full')>> slides you an extra pile of credits.<br>
<br>
"@@.npc_sexstore_clerk;Good selling. Not just moving product, but building customer loyalty. Just what I like to see.@@"<br>
<br>
You scoop up your bonus and get back to finishing your shift.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Finish off your shift." 300>>]
</div>/*#
#desc: floor bondage model: chastity customer check out
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.comfort == 'suck'>>
<<set $scene.credits = 10*$scene.score>>
<<set $scene.credits += 100>>
<<else>>
<<set $scene.credits = 15*$scene.score>>
<</if>>
<<if $scene.upgrades.adv>>
<<set $scene.credits += 50>>
<</if>>
<<if $scene.upgrades.wand>>
<<set $scene.credits += 20>>
<</if>>
<<if $scene.upgrades.plug>>
<<set $scene.credits += 20>>
<</if>>
<<if $scene.upgrades.electric>>
<<set $scene.credits += 10>>
<</if>>
<<addCredits $scene.credits>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImageGeneric("chastity_customer") setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
The customer is bursting with excitement... not to mention stuffed, as you finally head for the check-out counter and <<=setup.getNpcName('npc_sexstore_clerk', 'full')>> rings everything up.<br>
<br>
There is a raised eyebrow and a knowing smile when it comes to the plug... but the customer is clearly too excited to remember their prior shyness as they eagerly pay for their purchase... and then add an additional <<=$scene.pay>> on as a tip.<br>
<br>
"@@.generic_male1;You've been soooo patient with me today... AND you locked me up, and everything else? You totally deserve it!@@"<br>
<br>
You insist that you were just doing your job... but they're already skiping away... making it just past the door before the combination of excitement and their plug has them stopping to lean against a wall and recover... before continuing on at a somewhat more measured pace.<br>
<br>
As they disappear into the mall you make a final realisation — unlike when they entered the store, their hoodie is down, their cute, smiling face on display to the world.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'full')>> nods at you in gratitude and acknowledgement and you get back to work.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_end" "Finish off your shift." 300>>]
</div>/*#
#desc: working sexstore floor: npc_futa arrives
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions = {}>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_boyfriend")>>
<div id="invframe" class="scrolltext">
You turn to the door and lay eyes on a pair of familiar figures, <<=setup.getNpcName("npc_futa","first")>> and her <<boy>>friend... her leashed <<boy>>friend walking into the shop. <<=setup.getNpcName("npc_futa","first")>> notices you with a smile and leads the way over.<br>
<br>
"@@.npc_futa;Hey, fancy seeing you outside of work... well, outside the office, I suppose, since it looks like you're working?@@"<br>
<br>
You nod and ask if you could help her with anything today?<br>
<br>
"@@.npc_futa;You could indeed. You see my <<boy>>friend has a bit of a problem... namely, that I have two holes... and <<he>> but the single cock...@@"<br>
<br>
<<include "sexstoreCloneSuggestions">>
</div><<if $scene.actions.dildo>>
[@@.link_locked;You already suggested dildos.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_clone_2" "Show them the store's selection of dildos." 120 "<<set $scene.action='dildo'>>">>]<br>
<</if>>
[<<moveTo "event_mall_sexstore_clone_2" "What about a silicone clone of <<his>> member?" 120 "<<set $scene.action='clone'>>">>]<br>
<<if $scene.actions.friend>>
[@@.link_locked;You already suggested a threesome.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_clone_2" "Maybe they could phone a friend?" 120 "<<set $scene.action='friend'>>">>]<br>
<</if>>
[<<moveTo "event_mall_sexstore_clone_2" "You can't think of anything." 120 "<<set $scene.action='none'>>">>]/*#
#desc: working sexstore floor: offer suggestions
#status: RELEASED 0.9.1.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions[$scene.action] = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_boyfriend")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "dildo">>
You ask if <<=setup.getNpcName("npc_futa","first")>> would like to look thorough the shop's expansive selection of dildos?<br>
<br>
She frowns. "@@.npc_futa;No, we've got several dildos, and they're fun but I'm looking for something that would give it a bit more of a personal touch. The problem isn't that I'm not stuffed in both holes, that's easy, it's that <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> is only in one of them at a time.@@"<br>
<br>
<<include "sexstoreCloneSuggestions">>
<<case "friend">>
You suggest that a third might be the solution.<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> smiles in amusement while "@@.npc_futa;you making an offer?@@" She winks at her <<boy>>friend and <<he>> blushes, which makes her smile even wider. "@@.npc_futa;No, while a threesome, or more is certainly fun, it can be a bit of a scheduling challenge. I want something that we can use any time, and just the two of us. Getting fucked in both holes isn't a challenge, I mean, you know how the office is, the challenge is that I want that doubled up intimacy with this lovely <<man>>.@@"<br>
<br>
<<include "sexstoreCloneSuggestions">>
<<case "none">>
You reply that you can't think of anything and <<=setup.getNpcName("npc_futa","first")>> frowns.<br>
<br>
"@@.npc_futa;A pity... I suppose I shall remain partially unfulfilled... until next time.@@" She nods and her <<boy>>friend waves good-bye as she leads <<him>> out of the shop.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish your shift." 1800>>]
<<case "clone">>
You ask if they've considered making a silicone copy of <<if $options.fem>><<=ps($npc_futa.flags.gfname)>> <<getWordPenis false>><<else>><<=ps($npc_futa.flags.bfname)>> <<getWordPenis true>><</if>>?<br>
<br>
"@@.npc_futa;A copy?@@" <<=setup.getNpcName("npc_futa","first")>> raises an eyebrow in interest. "@@.npc_futa;Now that sounds perfect. Obviously there's no perfect substitute for the real thing... but knowing that it's the same shape... and feeling <<him>> fucking me in both holes at the same time...@@"<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> has a hunger in her eyes as she looks over at her <<boy>>friend who bites <<his>> lip and shifts with nervous excitement.<br>
<br>
"@@.npc_futa;I don't suppose customer service includes... fluffing?@@"<br>
<br>
[<<moveTo "event_mall_sexstore_clone_3" "Of course!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_mall_sexstore_clone_3" "No, you'll just be operating the 3d printer." 180 "<<set $scene.accept=false>>">>]<br>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: working sexstore floor: opportunity to fluff
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'bimbofication' 13 'terrible' $SEEN_FRIEND>>
<<applyExperience 'oral' 10 'little' $SEEN_FRIEND>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_boyfriend")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You lead the two of them into the shop's changing room where <<=setup.getNpcName("npc_futa","first")>> unlocks <<if $options.fem>><<=ps($npc_futa.flags.gfname)>><<else>><<=ps($npc_futa.flags.bfname)>><</if>> cage and <<he>> springs free with excitement, your lips making quick work of bringing <<him>> to quivering hardness as <<=setup.getNpcName("npc_futa","first")>> looks on with pride.
<<else>>
You decline the offer to help <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> get hard and <<=setup.getNpcName("npc_futa","first")>> shrugs, the two of them following you into the shop's changing room where <<=setup.getNpcName("npc_futa","first")>> unlocks <<if $options.fem>><<=ps($npc_futa.flags.gfname)>><<else>><<=ps($npc_futa.flags.bfname)>><</if>> cage and <<he>> springs free with excitement.<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> smiles with pride, a few gentle strokes serving to have <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> rock hard as you quickly prepare the scanner.
<</if>>
<br><br>
You explain that <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> needs to remain stiff and still while the scanner makes its reading and <<=setup.getNpcName("npc_futa","first")>> nods, moving behind her <<boy>>friend to whisper in <<his>> ear and grind against <<him>> from behind as <<he>> bites <<his>> lip.<br>
<br>
"@@.npc_futa;Oh <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> is good at that. We've been training <<his>> endurance... and <<he>> wouldn't get soft without <<if $fetish.daddy>>mommy's <</if>>permission, right?@@"<br>
<br>
You get the machine into position as <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> trembles and shakes <<his>> head.<br>
<br>
[<<moveTo "event_mall_sexstore_clone_4" "Scanners to full!" 300>>]
</div>/*#
#desc: working sexstore floor: orders
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_boyfriend")>>
<div id="invframe" class="scrolltext">
Just as promised, <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> remains VERY hard as the lasers scan up and down <<his>> <<if $options.fem>><<getWordPenis false>><<else>><<getWordPenis true>><</if>>.<br>
<br>
With a merry chime the machine signals its completion and starts printing. As you wait for the print to complete and cure <<=setup.getNpcName("npc_futa","first")>> flips through the product brochure and smiles even wider. "@@.npc_futa;Oooo! There's a scale option! I mean, not that I don't love <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> as is... but mixing things up with something a bit bigger from time to time... and they even have a sheath version!@@"<br>
<br>
One sale turns to many as the printer is soon working overtime to spit out a pair each of harness-compatible dildos, flanged plugs and oversized sheaths... one sized for <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> and the other for herself.<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> watches with excitement as the larger sheath prints out and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> looks on. "@@.npc_futa;Oh that is going to be so fun... I can't wait for the next time you're naughty and I help you fuck yourself...@@"<br>
<br>
All this talk clearly has <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> excited... and yet <<=setup.getNpcName("npc_futa","first")>> somehow manages to get <<him>> locked back into <<his>> cage before having <<him>> assist in sliding the two newly printed plugs into her.<br>
<br>
"@@.npc_futa;Oh yeah, that's the familiar feeling I love... even better getting it from both directions...@@"<br>
<br>
[<<moveTo "event_mall_sexstore_clone_5" "Perhaps a pecker gag to round things out?" 300 "<<set $scene.pecker=true>>">>]<br>
[<<moveTo "event_mall_sexstore_clone_5" "Finish the sale." 300 "<<set $scene.pecker=false>>">>]
</div>/*#
#desc: working sexstore floor: checkout
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_boyfriend")>>
<div id="invframe" class="scrolltext">
<<if $scene.pecker>>
You suggest a pecker gag to go from not two, but a full three holes fille and <<=setup.getNpcName("npc_futa","first")>> grins. "@@.npc_futa;A superb idea! And a good way to reduce complaints from the neighbours.@@" She states as you set the machine loose printing up the final item. You
<<else>>
The last of the items finishes printing and you
<</if>>
help bag up everything that isn't being "worn out." <br>
<br>
"@@.npc_futa;Come along, dear,@@" <<=setup.getNpcName("npc_futa","first")>> states with a lusty smile and a tug on the leash after you've finished ringing her up. "@@.npc_futa;We need to hurry home, because as fun as this shopping trip has been, well... it has me positively WET for the real deal...@@"<br>
<br>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> grins as <<he>> hurries after <<=setup.getNpcName("npc_futa","first")>> and you return to work.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish your shift." 700>>]
</div>/*#
#desc: working sexstore floor: npc_sexdoll arrives
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions = {}>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_sexdoll","first")>> recognises you from across the store and rushes over, hips swaying and breasts bouncing with every bimbo step. "@@.npc_sexdoll;<<=$player.first_name>>! Oh, you're just, like, the perfect person to help! I'm looking for, like... I think it's called a fucking machine? I need something for the house to keep me occupied, I keep taking on more shifts at work but they eventually send me home... and when the bars aren't open I get, like, so bored!@@"<br>
<br>
<<include "sexstoreFuckmachineSuggestions">>
</div><<if $scene.actions.dildo>>
[@@.link_locked;You already suggested dildos.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_fuckmachine_2" "Perhaps some dildos?" 120 "<<set $scene.action='dildo'>>">>]<br>
<</if>>
[<<moveTo "event_mall_sexstore_fuckmachine_2" "Show her the Dreammaker fucking machine system." 120 "<<set $scene.action='black_box'>>">>]<br>
<<if $scene.actions.wand>>
[@@.link_locked;You already suggested a wand.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_fuckmachine_2" "Maybe a wand?" 120 "<<set $scene.action='wand'>>">>]<br>
<</if>>
<<if $scene.actions.hobby>>
[@@.link_locked;You already doing something other than sex.@@]<br>
<<else>>
[<<moveTo "event_mall_sexstore_fuckmachine_2" "Maybe a non sex-related hobby?." 120 "<<set $scene.action='hobby'>>">>]<br>
<</if>>
[<<moveTo "event_mall_sexstore_fuckmachine_2" "You can't think of anything." 120 "<<set $scene.action='none'>>">>]/*#
#desc: working sexstore floor: npc_sexdoll arrives
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions[$scene.action] = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "dildo">>
You start to lead <<=setup.getNpcName("npc_sexdoll","first")>> over to where the store sells dildos in all shapes an sizes but she cuts you off.<br>
<br>
"@@.npc_sexdoll;I, like, own plenty of dildos, but my arms get tired after a while... or sometimes my neck or thighs, deepening what I'm doing. No, I want something that can just fuck my brains out without me having to, like... do stuff.@@"<br>
<br>
<<include "sexstoreFuckmachineSuggestions">>
<<case "wand">>
You start to show <<=setup.getNpcName("npc_sexdoll","first")>> a wand but she is clearly uninterested. "@@.npc_sexdoll;Wands are alright, but I need to be FUCKED, you know? And a wand just isn't all that great for that, it's okay to shove in my butt, but even that's a bit clunky and doesn't move enough, and the other option I'm liable to chip a tooth!@@"<br>
<br>
<<include "sexstoreFuckmachineSuggestions">>
<<case "hobby">>
You ask if <<=setup.getNpcName("npc_sexdoll","first")>> has considered occupying her time away from work with a hobby, like tennis, or philately?<br>
<br>
She blinks in confusion. "@@.npc_sexdoll;Not sex? That sounds, like... really boring. I thought this was a sex store! I want something that can like, rail me whenever I want it... which is all the time!@@"<br>
<br>
<<printThought "The company has really done a number on her...">><br>
<br>
<<include "sexstoreFuckmachineSuggestions">>
<<case 'black_box'>>
You lead <<=setup.getNpcName("npc_sexdoll","first")>> over to the store's show model of the Dreammaker fucking machine and <<=setup.getNpcName("npc_sexdoll","first")>> eyes almost immediately light up.<br>
<br>
"@@.npc_sexdoll;So I can just get strapped in and fucked for hours on end? This is EXACTLY what I was looking for! I HAVE to try it out!@@"<br>
<br>
[<<moveTo "event_mall_sexstore_fuckmachine_3" "Take her into the back room to see how everything works." 1200>>]
<<case "none">>
You reply that you can't think of anything and <<=setup.getNpcName("npc_sexdoll","first")>> frowns.<br>
<br>
"@@.npc_sexdoll;That, like... sucks... and not the good suck!@@" She bites her lip "@@.npc_sexdoll;now I'm hungry for cock! I'm going to go, like, find something to eat.@@"<br>
<br>
She walks out, leaving you to get back to work.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish your shift." 1800>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: working sexstore floor: npc_sexdoll tries out fucking machine
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back room.">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/blackbox_02.mp4">>
<div id="invframe" class="scrolltext">
You take <<=setup.getNpcName("npc_sexdoll","first")>> into the back room where the black box has barely unfolded and she's enthusiastically jumping on top. "@@.npc_sexdoll;Oh! This is like, the best!@@" She states as she starts jerking off the controllers and wiggles her butt and licks her lips in anticipation.<br>
<br>
Even though the sale is all but made, you take the time to show <<=setup.getNpcName("npc_sexdoll","first")>> the Dreammaker's various features, including booting up a copy of <<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>> for her to try out.<br>
<br>
"@@.npc_sexdoll;Mmmmm!@@" She moans around the large cock as she bobs her head forward and back, quickly racking up points as she takes it from both ends, her excitement dripping out through her company-branded chastity cage.<br>
<br>
You try to give her some additional tips about the game, and her eyes light up with excitement at your description of some of the "later" stages. In the end, however, <<=setup.getNpcName("npc_sexdoll","first")>> hardly needs the help, and your real challenge is getting her to stop pouting when you pause the game and start extricating her from the contraption for her to eagerly rush to pay... and take her prize home.<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" "Finish your shift." 1800>>]
</div>/*#
#desc: mall location select
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.mall_open = false>>
<<if ( (getUTCHours($now)>=8) && (getUTCHours($now) <= 22) )>>
<<set $player.locations.sexstore = true>>
<<set $scene.mall_open = true>>
<<else>>
<<addEvent 'sexstoreOpeningEvent'>>
<</if>>
<</if>>
<<set $player.location to "The Mall">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.mall_open>>
<<createAdvBGR "./images/locations/mall_inside.png" setup.charImage("npc_acolyte","npc_acolyte_1")>>
<<else>>
<<createAdvBGR "./images/locations/mall_outside_night.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.mall_open>>
You arrive at the mall to notice that there seems to be some sort of event going on. As you watch and gawk, a pair of scantily-clad individuals parade through the centre promenade holding signs advertising <<printShopName 'mall_sexstore'>> Grand Opening!<br>
<br>
<<if $options.fem>>One<<else>>The<</if>> woman is dressed in a shiny, snug bodysuit, her entire body technically covered, with the material clinging to her like a second skin to show off every gorgeous curve as it shines with a mirror polish. The<<if $options.fem>> second<</if>> <<man>> is dressed in leather, six-pack abs rising up from <<his>> tight jeans, <<his>> bulging biceps highlighted by a thick cuff around each arm.<br>
<br>
You can't help but stand and stare as they walk past, but instead of being bothered they just smile at you in turn, the <<if $options.fem>>first <</if>>woman blowing you a kiss and the <<if $options.fem>>other <</if>><<man>> grinning and nodding at you in a way no one <<if $player.flags.landlordsawyounaked>>except maybe your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> when you appeared naked <</if>>has ever looked at you.<br>
<br>
You blush and turn away to find yourself looking at an attractive girl standing next to you staring in just as much awe. In any other situation her painted-on jeans and tube top would draw far more than a cursory glance, but compared to the fetish goddess that just walked past she seems almost... pedestrian.<br>
<br>
Noticing your attention, she grins at you "@@.npc_acolyte;Hey! That was really something, eh? It's about time this mall had a proper sex shop, oh what fun.@@" She walks away leaving you still dumbfounded, though not so much that you don't momentarily gawk at the stunning butt nigh shrink-wrapped inside some of the tightest jeans you've ever seen. In the distance you indeed watch as the two parading models pass in front of the newly opened shop.<br>
<br>
You can't help but be curious, and aroused in interesting ways, but do you really dare enter what is obviously a sex shop?<br>
<br>
[<<moveTo "room_mall" "Look around the mall." 120>>]
<<else>>
<<if $now.getUTCHours() < 8>>
<<set _mallOpen = setup.setNextDate($now, 0, 8, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_mallOpen)>>
<<if (8-window.getUTCHours($now)) == 1>>
The mall opens at 8, which is in less than an hour.
<<elseif (7-window.getUTCHours($now)) == 1>>
The mall opens at 8, which is over an hour away.
<<else>>
The mall opens at 8, which is over <<=7-window.getUTCHours($now)>> hours away.
<</if>>
<br><br>
[<<moveTo "event_mall_sexstore_opening" "Wait for the mall to open." _tmpSeconds "<<removeEvent 'sexstoreOpeningEvent'>>">>]<br>
<<else>>
The mall is closed, you should come back tomorrow morning after its <<if $options.militaryTime>>8:00<<else>>eight o'clock<</if>> opening time.<br>
<br>
<</if>>
[<<moveTo "room_citymap" "Return to the inner city." 300>>]
<</if>>
</div>/*#
#desc: visit to mall sex store
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_sexstore_clerk.profile>>
<<initRoom>>
<<moveTo "room_mall_sexstore_first_visit_1">>
<<elseif $npc_sexstore_clerk.flags.topics.work && $npc_sexstore_clerk.flags.workStage == 0 && setup.hasFreeTime($now, $player, $currentTasks, 4100)>>
<<initRoom>>
<<moveTo "room_mall_sexstore_first_bondage_offer_1">>
<<elseif !$player.flags.uniform_upgrade.autoLacing && setup.checkItemTypeWorn("corset") && $player.timebased.tightlacing>>
<<initRoom>>
<<moveTo "room_mall_sexstore_autolaces_1">>
<</if>>
<<if setup.getTotalValue("bondage") > 7>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('bed_bondage')>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You look around the recently opened sex store. It looks like most of the "clothing" section of the store is still being unpacked, but there looks like there are some sex toys and the like available.<br>
<br>
Behind the cash register is <<=setup.getNpcName('npc_sexstore_clerk', 'first')>><<if !$npc_sexstore_clerk.flags.chastity_quest.start>> and behind <<him npc_sexstore_clerk>> a sign advertising "New products in development — ask about our paid trial programme!" <<else>>.<</if>> There is also a separate, small board where people can post other sorts of advertisements.
<<printShop 'room_mall_sexstore' 'mall_sexstore' $shopStatus>><br>
<br>
<<if (!$player.body_ref.penis || $npc_exgirlfriend.flags.bondage_machine.rrr.penis_upgrade) && $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade && ($npc_cook.flags.porn.vag_stage < 3 || !$player.body_ref.vagina || $npc_exgirlfriend.flags.bondage_machine.rrr.vag_upgrade)>>
[@@.link_locked;You already own an upgraded Dreammaker bondage/fucking machine.@@]<br>
<<elseif $npc_manager.stage > 2 || $npc_exgirlfriend.flags.bondage_machine.unlocked>>
<<if $npc_exgirlfriend.flags.bondage_machine.unlocked>>
You notice a display in the toy section advertising a very... familiar item. Called the "Dreammaker" it appears to be the same bondage/fucking machine "left behind" by your ex-girlfriend.
<<else>>
You notice a new display in the toy section. Called the "Dreammaker" it looks to be for some sort of complicated bondage/fucking machine.
<</if>>
[<<moveTo "room_mall_sex_shop_bondage_device" "Examine the device." 30>>]<br>
<</if>>
<<if (setup.checkItemOwned('breast_milker_box') || setup.hasUpgrade($bed, 'breast_milker')) && (!$player.body_ref.penis || (setup.checkItemOwned('penis_milker_box') || setup.hasUpgrade($bed, 'penis_milker')) && setup.hasUpgrade($bed, 'penis_pain')) && (!$player.body_ref.vagina || setup.checkItemOwned('vag_milker_box') || setup.hasUpgrade($bed, 'vag_milker'))>>
[@@.link_locked;You own as many milking devices as your body can handle.@@]<br>
<<elseif ($npc_manager.stage > 3 || $npc_barista.flags.milking.first_seen || $player.body_ref.milkProduction > 0 || $currentTasks.hasOwnProperty('manager_bed_milking_penis') || $currentTasks.hasOwnProperty('manager_bed_milking_vag') || $currentTasks.hasOwnProperty('manager_bed_milking_both')) && $fetish.milking>>
There is an "endcap" display near the register advertising "Just in: Everything YOU require for ALL your Milking Needs!" [<<moveTo "room_mall_sex_shop_milking" "Ask about milking devices." 30>>]<br>
<</if>>
<<if !$npc_sexstore_clerk.flags.chastity_quest.start>>
<<if $player.sec_style.submission.sissyomatic>>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
[@@.link_locked;There is no sense asking about a chastity trial when you are locked in the ultimate in chastity that is your <<=setup.getItemTypeName("cage")>>.@@]<br>
<<else>>
[@@.link_locked;You see no sense in asking about the trial having experienced the ultimate chastity that is a 9001 device... even if you are strangely not wearing such at present.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_fetstore_chastity_offer_1" "Ask about the paid trial programme." 30>>]<br>
<</if>>
<br>
<<elseif $currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks['task_chastity_trial'].finished>>
<<if !setup.checkItemTypeWorn("cage")>>
[@@.link_locked;I can't end the chastity trial if I'm not even wearing the device!@@]
<<elseif setup.getChastityLevel() == 4>>
[<<moveTo "event_fetstore_chastity_finish_1" "Ask about ending the paid chastity trial programme." 30>>]
<<else>>
[@@.link_locked;I can't end the chastity trial if I'm not even wearing the device!@@]
<</if>>
<br>
<</if>>
<<if $npc_sexstore_clerk.flags.workStage >= 1>>
[<<moveTo "room_mall_sexstore_bondage_work_root" "Ask if you could work at the store?" 30>>]<br>
<</if>>
<<if $npc_manager.stage >= 2>>
<<if (!($fetish.milking && ($npc_manager.stage > 3 || $npc_barista.flags.milking.first_seen || $player.body_ref.milkProduction > 0)) || $player.flags.milking.can_sell) && (!($fetish.bestiality_soft || $fetish.bestiality_hard) && $currentTasks.hasOwnProperty('task_large_dildo') || $currentTasks.hasOwnProperty('task_dog_dildo') && $currentTasks.task_dog_dildo.finished && $currentTasks.hasOwnProperty('task_horse_dildo') && $currentTasks.task_horse_dildo.finished) && !($fetish.drugs && State.hasPlayed("event_nefarious_nurse_home_visit_2") && !State.hasPlayed("event_nefarious_nurse_drug_ad_1"))>>
[<<moveTo "room_mall_sex_shop_advert" "There is nothing new on the advertisement board, check it anyway." 30>>]<br>
<<else>>
[<<moveTo "room_mall_sex_shop_advert" "Check the advertisement board." 30>>]<br>
<</if>>
<</if>>
<<if $npc_sexstore_clerk.flags.topics.work && $npc_sexstore_clerk.flags.workStage == 0>>
[<<moveTo "event_sexstore_ask_work_1" "Ask about <<his npc_sexstore_clerk>> work offer?" 180>>]<br>
<</if>>
<<if $player.sec_style.clothing.female && !(State.hasPlayed("event_secretary_style_latex_enthusiast_1") || State.hasPlayed("event_shop_stock_latex"))>>
[<<moveTo "event_secretary_style_latex_enthusiast_1" "Ask why they don't offer more latex items?" 180>>]<br>
<</if>>
<<include thoughts_current>>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: first visit to mall sex store
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_sexstore_clerk.profile = true>>
<<if !State.hasPlayed("event_shop_stock_latex") && $npc_sexstore_clerk.profile && $player.sec_style.clothing.latex>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addEvent "shop_stock_latex" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Walking past the "Grand Opening!" sign outside the new sex toy shop, you barely have a chance to look around before you are distracted by a slight ruckus going on at one side of the shop.<br>
<br>
"@@.npc_sexstore_clerk;I do not care if you can buy some cheap vibrator for a few credits online, THIS is of much higher quality and some of us have standards on what we put inside our bodies.@@"<br>
<br>
A tall, thin <<man npc_sexstore_clerk>> appears to be berating a pair of customers, the latter storming off out of the store as the <<mans npc_sexstore_clerk>> attention turns towards you.<br>
<br>
Dressed in a flowing outfit that wouldn't be out of place at a Renaissance fair, the <<man npc_sexstore_clerk>> is tall, slender and the peak of "Elegant Gothic Aristocrat" style. Despite <<his npc_sexstore_clerk>> recent outburst, <<his npc_sexstore_clerk>> annoyance melts away as <<he npc_sexstore_clerk>> greets you with a friendly, if a little predatory, smile.<br>
<br>
"@@.npc_sexstore_clerk;Ah, another customer! Excuse those... ignoramuses, you look like a person of taste, what can I help you find today?@@"<br>
<br>
[<<moveTo "room_mall_sexstore_first_visit_2" "Continue." 60>>]
</div>/*#
#desc: introduced to clerk at sex store
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $npc_shopkeeper.profile>>
"@@.npc_shopkeeper;Now, now <<=setup.getNpcName('npc_sexstore_clerk', 'first')>>, do try not to scare off the customers. Especially this lovely thing.@@"<br>
<br>
You turn around to find <<=setup.getNpcName('npc_shopkeeper', 'first')>>, the owner of the Tease me, Please me lingerie shop.<br>
<br>
<<printThought "That's right, she mentioned something about opening a sex store...">><br>
<br>
"@@.npc_sexstore_clerk;Of course, madame,@@" the <<man npc_sexstore_clerk>> who you now realise must be the clerk replies with a formal bow. "@@.npc_sexstore_clerk;I was merely encouraging some of the riff-raff to move along, clearly an esteemed acquaintance of yours is more than welcome in this establishment.@@"<br>
<br>
The <<man npc_sexstore_clerk>> moves along as <<=setup.getNpcName('npc_shopkeeper', 'first')>> turns to you. "@@.npc_shopkeeper;Don't mind <<him npc_sexstore_clerk>>. <<Hes npc_sexstore_clerk>> a good <<man npc_sexstore_clerk>>, just a bit... opinionated about so-called "vanillas." Anyway, I am so glad to see you found this place, we are still working on expanding our offerings, but you should find some fun items already, <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> can help you out if you have any questions.@@"<br>
<br>
You thank her and resume looking around as she goes off to talk with her clerk some more.
<<else>>
Despite <<his npc_sexstore_clerk>> sudden shift in tone, you are still a bit intimidated by the strange <<man npc_sexstore_clerk>> with <<his npc_sexstore_clerk>> formal, clipped speech.<br>
<br>
"@@.npc_sexstore_clerk;I do apologise for the clutter,@@" <<he npc_sexstore_clerk>> notes, gesturing around to some boxes sitting around still unpacked. "@@.npc_sexstore_clerk;I imagine you want to do some looking around, I promise we stock nothing but the finest wares for you to use with confidence on yourself or others.@@"<br>
<br>
You nod in acknowledgement, that seeming to satisfy the <<man npc_sexstore_clerk>> as <<he npc_sexstore_clerk>> heads back to the counter and you look around.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore" "Look around the store." 30>>]
</div>/*#
#desc: offered autolaces at mall sex store
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Walking into <<printShopName 'mall_sexstore' true>>, you immediately catch the attention of <<=setup.getNpcName('npc_sexstore_clerk', 'first')>>, <<his npc_sexstore_clerk>> gaze zeroing in on your pinched waist.<br>
<br>
"@@.npc_sexstore_clerk;My, my... is that a corset? And a properly cinched one at that.@@" <<He npc_sexstore_clerk>> folds up the book <<he npc_sexstore_clerk>> was reading, but not before you catch the title. "On Layaway and Other Shop Stories." <br>
<br>
<<printThought "Huh, who'd have thought there was a market for store-themed fiction...">><br>
<br>
Walking around the counter, <<he npc_sexstore_clerk>> approaches you, <<his npc_sexstore_clerk>> downward gaze never deviating from your waist as <<he npc_sexstore_clerk>> peers over <<his npc_sexstore_clerk>> glasses and slowly circles around you like a tall, slender shark.<br>
<br>
"@@.npc_sexstore_clerk;Very nicely laced, and by hand! Quite impressive only...@@" Stepping into the clothing section of the store, <<he npc_sexstore_clerk>> returns a few moments later holding a small hank of what looks like slightly thick laces. "@@.npc_sexstore_clerk;I just so love the sight of a PROPERLY laced corset... seeing you like this well... this one is on the house.@@"<br>
<br>
You look at the laces with curiosity as <<he npc_sexstore_clerk>> explains. "@@.npc_sexstore_clerk;I know they do not look so amazing, but they are woven of an advanced nano-material laced with carbon fibre. Nigh un-cuttable they also have the benefit of auto-lacing themselves. Why don't you go swap them out, I am sure you will just love being able to cut the same dashing figure you do now without all that bothersome upkeep.@@"<br>
<br>
[<<moveTo "room_mall_sexstore_autolaces_2" "Swap into the new laces." 600 "<<set $scene.help=false>>">>]<br>
[<<moveTo "room_mall_sexstore_autolaces_2" "Ask if <<he npc_sexstore_clerk>> could assist?" 600 "<<set $scene.help=true>>">>]
</div>/*#
#desc: install autolaces at mall sex store
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.uniform_upgrade.autoLacing = true>>
<<set $player.timebased.tightlacing = 100>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore'>> Fitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
You ask <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> if <<he npc_sexstore_clerk>> could help you swap to the new laces and <<he npc_sexstore_clerk>> stares at you for a long moment, clearly tempted.<br>
<br>
"@@.npc_sexstore_clerk;Mmmm, I am afraid not, I need to be watching the counter plus, really, the whole point of these is that you can efficiently lace all the way down without fuss or assistance. Now run along, girl. Every moment you tarry those boring old laces are getting a hair looser.@@"<br>
<br>
<</if>>
Thanking <<him npc_sexstore_clerk>> for the gift, you enter the changing room and quickly remove your corset. It takes you a few minutes to remove the old laces, then a few more minutes to figure out how to properly pattern the new ones. Once you are finished, however, and the corset is back around your body, you gasp. First because of the way that it squeezes the air out of you, but perhaps even moreso from the effect it has on your figure.<br>
<br>
Your waist is stunningly sculpted in the most feminine of figures, and a hand reaching behind proves that the corset is nigh seamlessly closed behind, the new laces pulled taut as they hold the back panels perfectly flush to one another.<br>
<br>
You put the rest of your clothes back on and emerge from the changing room, somehow standing up even straighter than the normally rigid posture the corset enforces. <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> greets you with a smile before returning to <<his npc_sexstore_clerk>> book.<br>
<br>
[<<moveTo "room_mall_sexstore" "Browse the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Head back to the mall." 30>>]
</div>/*#
#desc: ask about bondage device at sex store
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$npc_exgirlfriend.flags.bondage_machine.store_demo>>
<<set $npc_exgirlfriend.flags.bondage_machine.store_demo = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You start to inspect the bondage device when the shopkeeper appears.<br>
<br>
<<if $scene.first>>
"@@.npc_sexstore_clerk;Ah, a <<switch $player.identify_as>><<case 'female' ''>>lady<<case 'male'>>gentleman<<case 'fluid' 'agender'>>person<</switch>> of discerning taste! That is a very advanced and exciting piece of technology you're looking at, do you have any questions?@@"<br>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.unlocked>>
Advanced indeed, you immediately recognise the device as the same self-bondage contraption "trap" that your ex-girlfriend left behind... and that you had such an intense experience trying out. Though you note that the "floor model" has a far less intimidating dildo attached than the one that so thoroughly pounded your ass. Glancing at the description, it would seem the gag is an "optional" addition, as well.
<<else>>
Though the device appears well-made you don't quite see why it would be called "advanced." A simple steel frame rising from a padded platform in such an arrangement that a person could be bound at neck, wrist and ankle to put them in a quite compromised position on all fours with their neck and wrists in a set of stocks. A dildo mounted to a pillar on the back side of the platform appears perfectly positioned for whoever was bound, a small sales sign promising "precision thrusting action!"
<</if>>
<br><br>
"@@.npc_sexstore_clerk;I note your look of confusion, let me show you why this little puppy is so convenient.@@"<br>
<br>
Picking up a remote from the display, <<he npc_sexstore_clerk>> hits a button and you watch in surprise as the entire device folds up on itself until all that you can see is an innocuous box, a very familiar box, in fact.
<<if !$npc_exgirlfriend.flags.bondage_machine.unlocked>>
You try to hide your surprise at the fact that this box looks nigh identical to the mysterious container left behind by your ex-girlfriend...
<<else>>
You try to hide your look of recognition, the box nigh identical to the once-mysterious container left behind by your ex-girlfriend...
<</if>>
<br><br>
"@@.npc_sexstore_clerk;Sneaky, isn't it? And it's all kept secure with a programmable lock, while being compatible with a number of attachments...@@"<br>
<br>
"@@.npc_sexstore_clerk;I would be, of course, happy to answer any questions you have, though I should let you know up front that it isn't for sale at present. This floor model is the only one we have in stock and there seems to be some sort of issue with the distributor and we cannot yet take orders for the main unit — though you can still buy attachments if you happen to already own one.@@"
<<else>>
"@@.npc_sexstore_clerk;Back again to admire it, are we? I apologise again that we only have the display model in stock. Still, I can answer any questions.@@"
<</if>>
<br><br>
[<<moveTo "room_mall_sex_shop_bondage_device_attachments" "Ask about attachments." 60>>]<br>
[<<moveTo "room_mall_sex_shop_bondage_device_lock" "Ask about the locking mechanism." 60>>]<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 120>>]
</div>/*#
#desc: ask sex shop clerk about black box locking mechanism
#status: FINISHED 0.7.6.0
#ignore_spell: s6e9x
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.bondage_machine.know_trick = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
"@@.npc_sexstore_clerk;Impressive, isn't it? Case-sensitive alphanumeric with a user-configured password... though it's more for show.@@"<br>
<br>
Curious, you ask what <<he npc_sexstore_clerk>> means.<br>
<br>
"@@.npc_sexstore_clerk;Well, you see, for as fancy as the security looks it isn't actually all that secure. First there's the fact that it's wireless enabled and the signal isn't even encrypted, but even moreso is that there's a factory override that will unlock the device no matter what the password is! All you do is hold down the keys S6E9X, wait until you hear the chime and enter the factory default code of 12345.@@"<br>
<br>
"@@.npc_sexstore_clerk;Whatever, really, who would want to keep something like this locked up? And if you did, well, it's secure enough for casual use — and the phone integration is kind of nice as you can sync it with an app and control all of the various features, as well as monitoring whatever lucky individual is locked inside.@@"<br>
<br>
You nod and thank <<him npc_sexstore_clerk>> for the information.<br>
<br>
[<<moveTo "room_mall_sex_shop_bondage_device_attachments" "Ask about attachments." 60>>]<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask sex shop clerk about bondage device upgrades
#status: FINISHED 0.7.6.0
#ignore_spell: r,s
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
"@@.npc_sexstore_clerk;Where should I begin?! I mean, obviously the base unit is good for all sorts of fun, but you can also purchase additional stimulator mounts. There's a double-pounder for those blessed with two holes down there, you can also get one for the front if you want that spit-roasted action, and finally there's a male milker or a vibrating wand that will auto-target clit or shaft!@@"<br>
<br>
Moving along after pointing out each device, <<he npc_sexstore_clerk>> comes to another display.<br>
<br>
"@@.npc_sexstore_clerk;Of course, in addition to hardware, there are also software upgrades! In addition to synchronising with an app the device is compatible with most home gaming systems as well as VR! You can either experience a fully-simulated experience or settle in for a gaming session with a few "bonus" objectives, if you know what I mean!@@"<br>
<br>
Apparently concluding that you're interested in this "feature," <<he npc_sexstore_clerk>> continues on.<br>
<br>
"@@.npc_sexstore_clerk;The most popular option for this is the "Fill me Fun" pack — it comes with the oral dildo attachment and a pair of controllers compatible with all your favourite games.@@" <<He npc_sexstore_clerk>> points to a display with a pair of controllers that, while sporting thumbsticks and buttons like regular nunchaku controllers, are shaped like penises. "@@.npc_sexstore_clerk;A little silly, for sure, but really, doesn't a cock in your hand make everything a bit more fun? Anyway, in addition to the hardware you get plugins for all the popular games, plus a free copy of the classic<<if $fetish.get_raped>> "Rape Rape Revolution" <<else>> "Space Slut Supreme" <</if>>if you want to really work those holes! I'll warn you though, triple-<<if $fetish.get_raped>>R<<else>>S<</if>> can be a bit addictive!@@"<br>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.unlocked>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.rrr_upgrade>>
[@@.link_locked;You already own the "Fill me Fun" pack.@@]<br>
<<else>>
[<<moveTo "room_mall_sex_shop_bondage_device_purchase_upgrade" 'Ask to purchase the "Fill me Fun" pack.' 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;Without a base unit you have no use for attachments.@@]<br>
<</if>>
[<<moveTo "room_mall_sex_shop_bondage_device_lock" "Ask about the locking mechanism." 60>>]<br>
<<if $npc_cook.flags.porn.vag_stage >= 3>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.vag_upgrade>>
[@@.link_locked;You already upgraded the machine to handle vaginal stimulation.@@]<br>
<<elseif setup.checkItemOwned("rrr_vag_upgrade")>>
[@@.link_locked;You already bought a vaginal upgrade... You should really install it!@@]<br>
<<else>>
[<<moveTo "room_mall_sex_shop_bondage_device_vag_upgrade" 'Ask about the vaginal upgrade <<=setup.getNpcName("npc_cook","first")>> mentioned.' 60>>]<br>
<</if>>
<</if>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.penis_upgrade>>
[@@.link_locked;You already upgraded the machine to handle penile stimulation.@@]<br>
<<elseif setup.checkItemOwned("rrr_penis_upgrade")>>
[@@.link_locked;You already bought a penis sleeve upgrade... You should really install it!@@]<br>
<<else>>
[<<moveTo "room_mall_sex_shop_bondage_device_penis_upgrade" 'Ask about a penis-stimulating upgrade for your Dreammaker.' 60>>]<br>
<</if>>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask to purchase upgrade for bondage device/black box
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> smiles.<br>
<br>
"@@.npc_sexstore_clerk;Oh, aren't upgrades so much fun! Anyway, it'll be only <<=$npc_exgirlfriend.flags.bondage_machine.price>> credits. I'm sorry to inform you that we don't accept credit, but I will note that the price is a full 30% discount compared to buying things separately AND it comes with a mail-in rebate for an extra dildo!@@"<br>
<br>
<<if $player.money.total >= $npc_exgirlfriend.flags.bondage_machine.price>>
[<<moveTo "room_mall_sex_shop_bondage_device_purchase_upgrade_confirm" "Buy it." 30>>]<br>
<<else>>
[@@.link_locked;You don't enough credits to purchase it.@@]<br>
<</if>>
[<<moveTo "room_mall_sexstore" "Decline and return to the store." 30>>]
</div>/*#
#desc: confirm purchase of upgrade for black box/bondage device
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($npc_exgirlfriend.flags.bondage_machine.price)`>>
<<addItem 'bondage_upgrades_box'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> grins even wider as <<he npc_sexstore_clerk>> rings you up, boxing up your purchase and sliding it to you across the counter.<br>
<br>
"@@.npc_sexstore_clerk;I'd tell you to enjoy your new purchase, but really... what else could one do with it?@@"<br>
<br>
Looking at the size of the box, you conclude you should take it directly home.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: ask about milking devices at sex store
#status: FINISHED 0.6.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You start to look at the "milking" display when the shopkeeper pops up helpfully.<br>
<br>
"@@.npc_sexstore_clerk;Ah, I see you have noticed our ever-expanding offerings. This is unit is the absolute top of the line, milkers above and below for whatever anatomy you've got, refrigerated storage for up to two gallons and everything computer controlled and totally hands free.@@"<br>
<br>
<<if setup.checkItemOwned('breast_milker_box')>>
[@@.link_locked;You already own a breast milking kit, maybe you should install it?@@]<br>
<<elseif setup.hasUpgrade($bed, 'breast_milker')>>
[@@.link_locked;You already own a breast milking kit.@@]<br>
<<else>>
[<<moveTo "room_mall_sex_shop_milking_breasts" "Ask about breast milkers." 60>>]<br>
<</if>>
<<if setup.checkItemOwned('penis_milker_box')>>
[@@.link_locked;You already own a penis milker... maybe you should actually install it?@@]<br>
<<elseif setup.hasUpgrade($bed, 'penis_milker')>>
<<if setup.hasUpgrade($bed, 'penis_pain')>>
[@@.link_locked;You already own a penis milking kit... with pain-inducing bonus features.@@]<br>
<<elseif $player.body_ref.penis>>
[<<moveTo "room_mall_sex_shop_milking_penis_pain_1" "Ask about the pain upgrade for your penis milker." 60>>]<br>
<</if>>
<<elseif $player.body_ref.penis>>
[<<moveTo "room_mall_sex_shop_milking_penis" "Ask about penis milker." 60>>]<br>
<</if>>
<<if setup.checkItemOwned('vag_milker_box')>>
[@@.link_locked;You already own a vaginal sleep attachment... maybe you should actually install it?@@]<br>
<<elseif setup.hasUpgrade($bed, 'vag_milker')>>
[@@.link_locked;You already own a vaginal sleep attachment.@@]<br>
<<elseif $player.body_ref.vagina>>
[<<moveTo "room_mall_sex_shop_milking_vagina" "Ask about the vaginal attachment." 60>>]<br>
<</if>>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask about breast milking devices at sex store
#status: FINISHED 0.6.0.0
#ignore_spell: api
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
<<switch setup.calcBreastSize()>>
<<case 'none'>>
<<He npc_sexstore_clerk>> smiles at your flat chest. "@@.npc_sexstore_clerk;Just so you know, these can't turn a plains into a mountain, as it were, though that does not stop them from being fun... or punishing. It all depends on how you set the power.@@"
<<case 'small'>>
<<He npc_sexstore_clerk>> smiles at your chest. "@@.npc_sexstore_clerk;Just so you know, these cannot turn a molehill into a mountain, as it were, though that does not stop them from being fun... or punishing. It all depends on how you set the power.@@"
<<case 'medium'>>
<<He npc_sexstore_clerk>> smiles at your chest. "@@.npc_sexstore_clerk;Yes, these would work perfectly for your lovely orbs, they would look quite beautiful and sensitive all swelled up and under pressure!@@"
<<case 'large'>>
<<He npc_sexstore_clerk>> grins in the direction of your full chest. "@@.npc_sexstore_clerk;You truly have a pair of breasts that practically scream out in need to be milked. With the proper routine I imagine you could be quite productive.@@"
<<case 'massive'>>
<<He npc_sexstore_clerk>> grins in the direction of your massive breasts. "@@.npc_sexstore_clerk;You look full to bursting already, I can see why you would want milkers to relieve a bit of pressure.@@"
<<default>>
ERROR, unknown breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
"@@.npc_sexstore_clerk;So, down to brass tacks, this is a full featured package, breast cups, the pump, harness and storage reservoir, all controlled via wireless interface on your phone and with standard API interfaces. As if THAT was insufficient@@" <<he npc_sexstore_clerk>> notes opening up one of the breast cups and showing you the double cup design — large hemispheres to envelop the breast with smaller cups for the nipple. "@@.npc_sexstore_clerk;These do not just milk and stimulate the whole area, they are also electric. Yes, there is nothing like some extra shocks to help spur production. So, anyway, whole package, special deal, only <<=setup.getItemObj("breast_milker_box").price>> credits!@@"<br>
<br>
<<if $player.money.total > setup.getItemObj("breast_milker_box").price>>
[<<moveTo "room_mall_sexstore" "Purchase breast milker." 60 "<<addCredits `-(setup.getItemObj('breast_milker_box').price)`>><<addItem 'breast_milker_box'>><<if !$player.sec_style.sex.milking>><<set $player.sec_style.sex.milking = 'voluntary'>><</if>>">>]<br>
<<else>>
[@@.link_locked;You cannot afford the breast milker at this time.@@]<br>
<</if>>
<<if setup.checkItemOwned('penis_milker_box') || setup.hasUpgrade($bed, 'penis_milker')>>
[@@.link_locked;You already own a penis milking kit.@@]<br>
<<elseif $player.body_ref.penis>>
[<<moveTo "room_mall_sex_shop_milking_penis" "Ask about penis milker." 60>>]<br>
<</if>>
<<if setup.checkItemOwned('vag_milker_box') || setup.hasUpgrade($bed, 'vag_milker')>>
[@@.link_locked;You already own a vaginal sleep attachment.@@]<br>
<<elseif $player.body_ref.vagina>>
[<<moveTo "room_mall_sex_shop_milking_vagina" "Ask about the vaginal attachment." 60>>]<br>
<</if>>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask about penis milking device at sex store
#status: FINISHED 0.6.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
"@@.npc_sexstore_clerk;Excellent taste! This is far more than a simple pump or an onahole. It combines suction, a textured interior, and electronic stimulation for the ultimate in sensation that sends you to the heights of pleasure, the depths of pain, or blur the line in betwixt... all wirelessly controlled, and all whilst saving every extracted drop in a temperature-controlled receptacle!@@"<br>
<br>
"@@.npc_sexstore_clerk;I know, it sounds pretty amazing, but what's even better is that it only costs <<=setup.getItemObj("penis_milker_box").price>> credits!@@"<br>
<br>
<<if $player.money.total > setup.getItemObj("penis_milker_box").price>>
[<<moveTo "room_mall_sex_shop_advert_milk_3" "Purchase penis milker." 60 "<<set $scene.price=setup.getItemObj('penis_milker_box').price>><<addItem 'penis_milker_box'>><<addCredits `-$scene.price`>>">>]<br>
<<else>>
[@@.link_locked;You cannot afford the penis milker at this time.@@]<br>
<</if>>
<<if setup.checkItemOwned('breast_milker_box') || setup.hasUpgrade($bed, 'breast_milker')>>
[@@.link_locked;You already own a breast milking kit.@@]<br>
<<else>>
[<<moveTo "room_mall_sex_shop_milking_breasts" "Ask about breast milkers." 60>>]<br>
<</if>>
<<if setup.checkItemOwned('vag_milker_box') || setup.hasUpgrade($bed, 'vag_milker')>>
[@@.link_locked;You already own a vaginal sleep attachment.@@]<br>
<<elseif $player.body_ref.vagina>>
[<<moveTo "room_mall_sex_shop_milking_vagina" "Ask about the vaginal attachment." 60>>]<br>
<</if>>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask about vaginal milking upgrade at sex store
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
"@@.npc_sexstore_clerk;Excellent taste! This device is meant to promote sexual wellness, sleep, and, where applicable, maximal milk production. It combines clitoral suction and textured vaginal insert, combining suction, thrusting and electronic stimulation for the ultimate in sensation that send you to the heights of pleasure, the depths of pain, or blur the line in betwixt... all wirelessly controlled, and with a fuzzy logic artificial intelligence subroutines that will integrate and synchronise with breast, anal or penile stimulators.!@@"<br>
<br>
"@@.npc_sexstore_clerk;I know it sounds pretty amazing, but what's even better is that it only costs <<=setup.getItemObj("vag_milker_box").price>> credits!@@"<br>
<br>
<<if $player.money.total > setup.getItemObj("vag_milker_box").price>>
[<<moveTo "room_mall_sexstore" "Purchase vaginal stimulator." 60 "<<addCredits `-(setup.getItemObj('vag_milker_box').price)`>><<addItem 'vag_milker_box'>>">>]<br>
<<else>>
[@@.link_locked;You cannot afford the vaginal stimulator at this time.@@]<br>
<</if>>
<<if setup.checkItemOwned('breast_milker_box') || setup.hasUpgrade($bed, 'breast_milker')>>
[@@.link_locked;You already own a breast milking kit.@@]<br>
<<else>>
[<<moveTo "room_mall_sex_shop_milking_breasts" "Ask about breast milkers." 60>>]<br>
<</if>>
<<if setup.checkItemOwned('penis_milker_box') || setup.hasUpgrade($bed, 'penis_milker')>>
[@@.link_locked;You already own a penis milking kit.@@]<br>
<<elseif $player.body_ref.penis>>
[<<moveTo "room_mall_sex_shop_milking_penis" "Ask about penis milker." 60>>]<br>
<</if>>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask about penis milking device at sex store
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.milking && ($npc_manager.stage > 3 || $npc_barista.flags.milking.first_seen || $player.body_ref.milkProduction > 0)>>
<<if !$player.flags.milking.can_sell>>
[<<moveTo "room_mall_sex_shop_advert_milk_1" "Calling all Hu-cows!" 30>>]<br>
<<else>>
[@@.link_locked;You already know about selling your "milk."@@]<br>
<</if>>
<<elseif $fetish.penis_milking && !$fetish.milking && $npc_manager.stage > 3>>
[<<moveTo "room_mall_sex_shop_advert_penis_milk_1" "Hard Up? Paying Top $$$ for YOUR CUM!" 30>>]<br>
<</if>>
[<<moveTo "room_mall_sex_shop_advert_large_dildo_1" "Size Queens Wanted!" 30>>]<br>
<<if $fetish.bestiality_soft || $fetish.bestiality_hard>>
[<<moveTo "room_mall_sex_shop_advert_dog_dildo_1" "Calling all knotty girls!" 30>>]<br>
[<<moveTo "room_mall_sex_shop_advert_horse_dildo_1" "Ready to take a chance?" 30>>]<br>
<</if>>
<<if State.hasPlayed("event_nefarious_nurse_home_visit_2") && !State.hasPlayed("event_nefarious_nurse_drug_ad_1")>>
[<<moveTo "event_nefarious_nurse_drug_ad_1" "Look at the Nurse's Nefarious Narcotic advertisement." 30>>]<br>
<</if>>
<br>
None of the other advertisements look of interest to you.<br>
<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
</div>/*#
#desc: ask about milking device at sex store
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.hasUpgrade($bed, 'breast_milker') || setup.hasUpgrade($bed, 'penis_milker') || setup.checkItemOwned('breast_milker_box') || setup.checkItemOwned('penis_milker_box')>>
<<set $player.flags.milking.can_sell = true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You look at the hu-cow advertisement.<br>
<br>
"Do you produce milk<<if $fetish.penis_milking>> or cream<</if>>? Make credits now!" <br>
"We come to YOU, so YOU can focus on <<if $fetish.penis_milking>>cumming<<else>>production<</if>>!" <br>
"Use any standard milking device and container then use our app for near-instant drone pickup!" <br>
"Paying top credits for milk<<if $fetish.penis_milking>> and cum<</if>>!" <br>
"Special introductory discounts on necessary equipment!" <br>
<br>
<<if setup.hasUpgrade($bed, 'breast_milker') || setup.hasUpgrade($bed, 'penis_milker')>>
<<printThought "Hmm, I already have equipment, maybe this could be an opportunity to earn some extra credits?">><br>
<br>
[<<moveTo "room_mall_sexstore" "Back to the store." 30>>]
<<elseif setup.checkItemOwned('breast_milker_box') || setup.checkItemOwned('penis_milker_box')>>
<<printThought "Hmm, I already own equipment for this, maybe once I get it installed it could be an opportunity to earn some extra credits?">><br>
<br>
[<<moveTo "room_mall_sexstore" "Back to the store." 30>>]
<<else>>
[<<moveTo "room_mall_sex_shop_advert_milk_2" "Ask at the counter about the introductory discount." 30>>]<br>
[<<moveTo "room_mall_sexstore" "Back to the store." 30>>]
<</if>>
</div>/*#
#desc: ask about milk device intro discount
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = Math.floor(.7 * (setup.getItemObj('penis_milker_box').price + setup.getItemObj('breast_milker_box').price))>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You approach the counter and ask <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> about the "milking" introductory offer.<br>
<br>
"@@.npc_sexstore_clerk;Yes, we are offering a discount subsidy on a full milking kit — <<if $fetish.penis_milking>>breast and penile milkers both<<else>>a pair of large breast milkers<</if>> for those interested in selling their production. It really is a wonderful opportunity to get started at a productive new field for only <<=$scene.price>>. That's 30% less than retail for both devices!@@"<br>
<br>
<<if $player.body_ref.milkProduction == 0>>
You point out that you can't physically produce milk, but the <<man npc_sexstore_clerk>> just smiles.<br>
<br>
"@@.npc_sexstore_clerk;Show some optimism! The human body is quite the wondrous thing, and these modern devices use advanced programing to stimulate production. There's some associated hormonal requirements as well, but you would be surprised at how quickly you can go from a dry well to a flowing stream when things are used correctly.@@"<br>
<br>
<</if>>
<<if $player.money.total >= $scene.price>>
[<<moveTo "room_mall_sex_shop_advert_milk_3" "Accept the offer." 30 "<<addItem 'breast_milker_box'>><<addItem 'penis_milker_box'>><<if $player.sec_style.sex.milking==''>><<set $player.sec_style.sex.milking = 'money'>><</if>><<addCredits `-$scene.price`>>">>]<br>
<<else>>
[@@.link_locked;You do not have enough to pay for even the reduced price.@@]
<</if>>
[<<moveTo "room_mall_sexstore" "Back to the store." 30>>]
</div>/*#
#desc: milk device with intro discount
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> nods, taking your credits and pushing a pair of packages across the counter.<br>
<br>
"@@.npc_sexstore_clerk;Setup is quite trivial: I recommend doing it somewhere you can lie down, you might even try running them overnight while you slept!@@"<br>
<br>
<<if $fetish.penis_milking>>
The clerk is just about done packaging up your new device when you notice an additional note on the advertisement — "compatible with electronic punishment!" <br>
<br>
[<<moveTo "event_enthusiast_testicle_milking_1" 'Ask the clerk about this extra feature.' 180>>]<br>
<</if>>
[<<moveTo "room_mall_interior" 'Just take your purchase and leave.' 30>>]
</div>/*#
#desc: milk device with intro discount
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You ask the clerk about the add-on feature for the milking device and <<he npc_sexstore_clerk>> pauses, appearing slightly surprised at your interest.<br>
<br>
"@@.npc_sexstore_clerk;That? Oh, yes, that's a punishment upgrade incorporating electrified testicle attachments. VERY painful. The marketing wank talks about it improving production but... I think that's bullshit. I've only ever heard of it being used by particularly cruel <<if $options.fem_all_men>>Masters<<elseif $options.fem_all_women>>Mistresses<<else>>Masters and Mistresses<</if>>, as I noted before shocks to those tender bits hurt A LOT — and this is far from an under-powered device. Buying this for yourself, well... I doubt this is something you, or anyone but a totally degenerate pain-slut, would willingly want to use.@@"<br>
<br>
[<<moveTo "event_enthusiast_testicle_milking_2" 'You are that slut, you want the upgrade.' 180 "<<set $scene.pain=true>>">>]<br>
[<<moveTo "event_enthusiast_testicle_milking_2" "Hmm, that sounds scary, you'll take <<his npc_sexstore_clerk>> advice and pass." 180 "<<set $scene.pain=false>>">>]<br>
</div>/*#
#desc: milk device with intro discount
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pain>>
<<addUpgradeItem $bed 'penis_pain'>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.pain>>
You insist that you ARE that pain-slut, and you want the attachment.<br>
<br>
The clerk stares at you for a long moment before shrugging. "@@.npc_sexstore_clerk;Very well, customer is always right, and all that...@@" <<He npc_sexstore_clerk>> digs around behind the counter for a few moments before coming up with another attachment and tossing it into the box with the base model. "@@.npc_sexstore_clerk;To tell you the truth I feel a bit guilty even selling you something so cruel... so go ahead, take it with my compliments. I don't wish you to feel obligated to try it to get your money's worth.@@"<br>
<br>
You thank <<him npc_sexstore_clerk>>, and note that you will take <<his npc_sexstore_clerk>> recommendation under advisement.
<<else>>
You thank <<him npc_sexstore_clerk>> for the advice.<br>
<br>
"@@.npc_sexstore_clerk;Of course. This business is about pleasure — I would hate to up-sell you on something that is almost literally the opposite of that.@@"
<</if>>
<br><br>
[<<moveTo "room_mall_interior" 'Leave with your purchase.' 30>>]
</div>/*#
#desc: horse dildo photo advertisement
#status: FINISHED 0.7.6.0
#ignore_spell: tm
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You look at the advertisement across the top of which is the image of what looks to be a VERY large horse cock.<br>
<br>
"@@.generic_female1;Is your hole world class? Paying top $$$ for images of any wanton slut who can hilt a <<=setup.getItemName('horse_dildo')>> balls deep!@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('task_horse_dildo')>>
<<if $currentTasks.task_horse_dildo.finished>>
You reflect back on your accomplishment; you have already answered this advertisement.
<<else>>
You have already taken down the information for this task, though you have yet to FULLfill it.
<</if>>
<<else>>
<<if setup.checkItemOwned("horse_dildo")>>
<<printThought "Hmm, I think that's the name of that horse cock I have...">>
<<else>>
<<printThought "I guess I'd have to buy that brand of dildo first...">>
<</if>>
<br><br>
[<<moveTo "room_mall_sex_shop_advert_horse_dildo_2" "Note down the information." 30>>]
<</if>>
<br><br>
[<<moveTo "room_mall_sex_shop_advert" "Look at other advertisements." 30>>]<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: horse dildo photo advertisement
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'task_horse_dildo'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You jot down the information for how to get paid for submiting an image of yourself taking a giant horse-cock dildo.<br>
<br>
[<<moveTo "room_mall_sex_shop_advert" "Look at other advertisements." 30>>]<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: dog dildo photo advertisement
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You look at the advertisement across the top of which is the image of what looks to be a dog-inspired cock with a sizable knot just above the base.<br>
<br>
"@@.generic_female2;I love being a bitch, and I'm looking for friends! Show you're ready to run in my pack by sending me a picture with a <<=setup.getItemName('dog_dildo')>> knotted inside you. I'll pay if you prove up the challenge!@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('task_dog_dildo')>>
<<if $currentTasks.task_dog_dildo.finished>>
You reflect back on your accomplishment; you have already answered this advertisement.
<<else>>
You have already taken down the information for this task, though you have yet to FULLfill it.
<</if>>
<<else>>
<<if setup.checkItemOwned("dog_dildo")>>
<<printThought "Hmm, I think that's the name of that dog cock I have...">>
<<else>>
<<printThought "I guess I'd have to buy that brand of dildo first...">>
<</if>>
<br><br>
[<<moveTo "room_mall_sex_shop_advert_dog_dildo_2" "Note down the information." 30>>]
<</if>>
<br><br>
[<<moveTo "room_mall_sex_shop_advert" "Look at other advertisements." 30>>]<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: dog dildo photo advertisement
#status: FINISHED 0.7.10.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'task_dog_dildo'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You jot down the information for how to get paid for submiting an image of yourself knotting a large canine-inspired dildo.<br>
<br>
[<<moveTo "room_mall_sex_shop_advert" "Look at other advertisements." 30>>]<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: large dildo photo advertisement
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You look at the advertisement across the top of which is the image of what looks to be a VERY large <<getWordPenis>>.<br>
<br>
"@@.generic_female1;Are you ROYALTY? Paying top $$$ for images of any slutty size queen who can hilt a <<=setup.getItemName('large_dildo')>> balls deep!@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('task_large_dildo')>>
<<if $currentTasks.task_large_dildo.finished>>
You reflect back on your accomplishment; you have already answered this advertisement.
<<else>>
You have already taken down the information for this task, though you have yet to FULLfill it.
<</if>>
<<else>>
<<if setup.checkItemOwned("large_dildo")>>
<<printThought "Hmm, I think that's the name of that oversized dildo I have...">>
<<else>>
<<printThought "I guess I'd have to buy that brand of dildo first...">>
<</if>>
<br><br>
[<<moveTo "room_mall_sex_shop_advert_large_dildo_2" "Note down the information." 30>>]
<</if>>
<br><br>
[<<moveTo "room_mall_sex_shop_advert" "Look at other advertisements." 30>>]<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: large dildo photo advertisement
#status: FINISHED 0.7.12.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'task_large_dildo'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You jot down the information for how to get paid for submiting an image of yourself taking a giant dildo.<br>
<br>
[<<moveTo "room_mall_sex_shop_advert" "Look at other advertisements." 30>>]<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask to purchase vaginal upgrade for bondage device/black box
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price=setup.getItemObj("rrr_vag_upgrade").price>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> raises an eyebrow.<br>
<br>
"@@.npc_sexstore_clerk;My, my. Such a... discerning customer. Yes, it was released as an all-in-one expansion pack entitled Demons Love Cunt, designed for vaginal stimulation and punishment... unfortunately there was some quality control issues and the punishment mode was a bit over-tuned and, thanks to some pain-averse early reviews, well... it kind of crashed, and most of the units ended up recalled. Of course, to the discerning user, that just makes the devices even more coveted.@@" <<He npc_sexstore_clerk>> grins, clearly trying to impress that <<he npc_sexstore_clerk>> considers you such a "discerning" user.<br>
<br>
"@@.npc_sexstore_clerk;We happen to have a unit for sale, if you would be interested, only <<=$scene.price>> credits for the peripheral and the accompanying game expansion.@@"<br>
<br>
<<if $player.money.total >= $scene.price>>
[<<moveTo "room_mall_sex_shop_bondage_device_vag_upgrade_purchase" "Buy it." 30>>]<br>
<<else>>
[@@.link_locked;You don't enough credits to purchase it.@@]<br>
<</if>>
[<<moveTo "room_mall_sexstore" "Decline and return to the store." 30>>]
</div>/*#
#desc: confirm purchase of vag upgrade for black box/bondage device
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<addItem 'rrr_vag_upgrade'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You say you'd like to purchase the "Demons Love Cunt" upgrade and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> grins. "@@.npc_sexstore_clerk;I knew you were the daring sort. Installation is easy, the dildo comes pre-loaded with a series of associated scenarios. Believe me when I say they are quite intense... but anyone who manages to triumph over the full series, well... they will have quite the experience.@@"<br>
<br>
You nod and hand over your credits. Only after you've taken possession of the box do you realise that you are unsure if <<he npc_sexstore_clerk>> means experience merely in the sense of the activity, or that you'd be learning something in the process...<br>
<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask to purchase penis upgrade for bondage device/black box
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price=50>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> grins.<br>
<br>
"@@.npc_sexstore_clerk;Heh, heh. Honestly surprised they don't just package those with the machine, given the way they sell. Anyway, that sales rate — and the fact that the sleeves are build on a standardised open-source platform, means they're quite the bargain. Only <<=$scene.price>> credits for the device AND the quite intense Devils Love Cock expansion.@@"<br>
<br>
<<if $player.money.total >= $scene.price>>
[<<moveTo "room_mall_sex_shop_bondage_device_penis_upgrade_purchase" "Buy it." 30>>]<br>
<<else>>
[@@.link_locked;You don't enough credits to purchase it.@@]<br>
<</if>>
[<<moveTo "room_mall_sexstore" "Decline and return to the store." 30>>]
</div>/*#
#desc: confirm purchase of penis upgrade for black box/bondage device
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<addItem 'rrr_penis_upgrade'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You say you'd like to purchase the "Devils Love Cock" upgrade and <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> grins, pulling a box down from behind the counter. "@@.npc_sexstore_clerk;Wonderful, wonderful. here you go, and enjoy!@@"<br>
<br>
You thank <<him npc_sexstore_clerk>> and pay.<br>
<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask about penis pain milking device at sex store
#status: FINISHED 0.8.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> raises an eyebrow as you enquire about the pain upgrade for your penis milker.<br>
<br>
"@@.npc_sexstore_clerk;My, my... I don't get many asking for that sort of thing for themselves. The upgrade is actually quite simple, additional electronics incorporating electrified testicle attachments. VERY painful. The marketing wank talks about it improving production but... I think that's bullshit. I've only ever heard of it being used by particularly cruel Masters and Mistresses, as I noted before shocks to those tender bits hurt A LOT — and this is far from an under-powered device. Buying this for yourself, well... I doubt this is something you, or anyone but a totally degenerate pain-slut, would willingly want to use. I actually feel a bit guilty charging for it... so, given how good a customer you are, well... I'll give it away for free, just to save the hassle of a potential return.@@"<br>
<br>
[<<moveTo "room_mall_sex_shop_milking_penis_pain_2" "Free? Free is good, you'll take the upgrade." 180 "<<set $scene.pain=true>>">>]<br>
[<<moveTo "room_mall_sex_shop_milking_penis_pain_2" "Hmm, that sounds scary, you'll take <<his npc_sexstore_clerk>> advice and pass." 180 "<<set $scene.pain=false>>">>]<br>
</div>/*#
#desc: pain upgrade for penis milker
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.pain>>
You insist that you ARE the sort of pain-slut that needs something like that.<br>
<br>
The clerk stares at you for a long moment before shrugging. "@@.npc_sexstore_clerk;Very well, customer is always right, and all that...@@" <<He npc_sexstore_clerk>> digs around behind the counter for a few moments before coming up with another attachment and handing it to you.<br>
<br>
You thank <<him npc_sexstore_clerk>> and decide to head straight home to install things.<br>
<br>
[<<moveTo "room_mall_sex_shop_milking_penis_pain_3" 'Leave with your purchase.' 600>>]
<<else>>
You thank <<him npc_sexstore_clerk>> for the advice.<br>
<br>
"@@.npc_sexstore_clerk;Of course. This business is about pleasure — I would hate to up-sell you on something that is almost literally the opposite of that.@@"<br>
<br>
[<<moveTo "room_mall_interior" 'Leave.' 30>>]
<</if>>
</div>/*#
#desc: install pain upgrade for penis milker
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addUpgradeItem $bed 'penis_pain'>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You head home with your new acquisition and spend a few minutes enhancing your milking contraption with the new pain-giver upgrades.<br>
<br>
The whole assembly takes on a new level of menace once everything is hooked up.
<<if $player.sec_style.submission.testicle_pain>>
It reminds you of the device you've used at work... only, if anything, even more painful.
<</if>>
You nervously put things away, somewhat afraid at the thought of how it would feel to use.<br>
<br>
[<<moveTo "room_bedroom" 'Step away.' 30>>]
</div>/*#
#desc: ask about penis milking device at sex store
#status: FINISHED 0.8.7.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.hasUpgrade($bed, 'breast_milker') || setup.hasUpgrade($bed, 'penis_milker') || setup.checkItemOwned('breast_milker_box') || setup.checkItemOwned('penis_milker_box')>>
<<set $player.flags.milking.can_sell = true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png">>
<div id="invframe" class="scrolltext">
You look at the cum advertisement.<br>
<br>
"Do find yourself with an excess of cum?" <br>
"Your salty drippings could be worth HARD CASH!" <br>
"We come to YOU, so YOU can focus on cumming!" <br>
"Use any standard penis milking device and container then use our app for near-instant drone pickup!" <br>
"Paying top credits!" <br>
"Special introductory discounts on necessary equipment!" <br>
<br>
<<if setup.checkItemOwned('penis_milker_box')>>
<<printThought "Hmm, I already own equipment for this, maybe once I get it installed it could be an opportunity to earn some extra credits?">><br>
<br>
[<<moveTo "room_mall_sexstore" "Back to the store." 30>>]
<<else>>
[<<moveTo "room_mall_sex_shop_advert_penis_milk_2" "Ask at the counter about the introductory discount." 30>>]<br>
[<<moveTo "room_mall_sexstore" "Back to the store." 30>>]
<</if>>
</div>/*#
#desc: ask about milk device intro discount
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.price = Math.floor(.7 * setup.getItemObj('penis_milker_box').price)>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You approach the counter and ask <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> about the "milking" introductory offer.<br>
<br>
"@@.npc_sexstore_clerk;Yes, we are offering a discount subsidy on a full milking kit — guaranteed to pump and suck you dry! It really is a wonderful opportunity to get started at a productive new field for only <<=$scene.price>>. That's 30% less than retail for!@@"<br>
<br>
<<if $player.money.total >= $scene.price>>
[<<moveTo "room_mall_sex_shop_advert_penis_milk_3" "Accept the offer." 30>>]<br>
<<else>>
[@@.link_locked;You do not have enough to pay for even the reduced price.@@]
<</if>>
[<<moveTo "room_mall_sexstore" "Back to the store." 30>>]
</div>/*#
#desc: milk device with intro discount
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<addItem 'penis_milker_box'>>
<<if !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = "money">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> nods, taking your credits and pushing a pair of packages across the counter.<br>
<br>
"@@.npc_sexstore_clerk;Setup is quite trivial: I recommend doing it somewhere you can lie down, you might even try running them overnight while you slept!@@"<br>
<br>
The clerk is just about done packaging up your new device when you notice an additional note on the advertisement — "compatible with electronic punishment!" <br>
<br>
[<<moveTo "event_enthusiast_testicle_milking_1" 'Ask the clerk about this extra feature.' 180>>]<br>
[<<moveTo "room_mall_interior" 'Just take your purchase and leave.' 30>>]
</div>/*#
#desc: mall shoe store
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.allowSpecific='shoes'>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<include "bestialityFinalChecker">>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png">>
<div id="invframe" class="scrolltext">
<<if !$player.flags.firstWorkDayDone>>
You stop yourself in front <<printShopName 'mall_shoe_store'>><br>
<br>
<<printThought "No, money is tight enough. I shouldn't be shoe shopping. Maybe if this new job pans out? But for now I should focus on getting by with what I have.">><br>
<br>
<<if !setup.checkItemTypeWorn("shoes")>>
[@@.link_locked;Leaving a shoestore NOT wearing shoes would be very silly...@@]
<<else>>
[<<moveTo "room_mall_interior" "Return to the mall." 30 "<<set $player.cutscene.allowSpecific= ''>>">>]
<</if>>
<<else>>
<<if $player.ears == "large_elf">>
The store owner's ears visible perk up at the sight of you, and they twitch slightly as she smiles in greeting, a sort of silent "one of us" recognition.<br>
<br>
<</if>>
<<if $currentTasks.hasOwnProperty('bed_heels_photoshoot') && !$currentTasks['bed_heels_photoshoot'].finished && setup.daysToDate($now, setup.getTaskDueDate('bed_heels_photoshoot')) == 0>>
As soon as you walk into <<printShopName "mall_shoe_store">> the owner ushers you into the back room.<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2" 'Follow.' 60 "<<set $player.cutscene.allowSpecific= ''>><<completeTask 'bed_heels_photoshoot' $now true>>">>]
<<else>>
<<if $currentTasks.hasOwnProperty('bed_heels_photoshoot') && !$currentTasks['bed_heels_photoshoot'].finished>>
<<=setup.getNpcName('npc_shoestore_manager', 'first')>> winks at you in greeting. "@@.npc_shoestore_manager;Keeping up with your training, I hope? I'm looking forward to that "after" photoshoot!@@"<br>
<br>
<</if>>
<<printShop 'room_mall_shoe_store' 'mall_shoe_store' $shopStatus>>
<<if $currentTasks.hasOwnProperty('bed_heels_photoshoot') || setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_11') != -1>>
<<if setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_11') != -1 || $currentTasks['bed_heels_photoshoot'].finished>>
<<if !$npc_shoestore_manager.flags.shot_ballet_heels_final>>
You recall <<=ps(setup.getNpcName('npc_shoestore_manager', 'first'))>> proposal to shoot a final advertisement.<br>
<br>
<<if setup.getTotalValue("heels") >= 15>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_3" "Ask about another high heel photoshoot." 60 "<<set $player.cutscene.allowSpecific= ''>>">>]<br>
<<else>>
[@@.link_locked;You feel like you still need more practice if you're going to impress in something even more difficult than the last ballet boot photoshoot.@@]<br>
<</if>>
<<elseif !$npc_shoestore_manager.flags.shot_ballet_heels_bdsm && setup.checkItemTypeTag('shoes', ['ballet'])>>
As you walk around the store in your ballet boots, you can't help but notice how <<=setup.getNpcName('npc_shoestore_manager', 'first')>> seems to be constantly looking in your direction.
<<if $scene.collar != "" && setup.getItemObj($scene.collar).hasOwnProperty("tags") && setup.getItemObj($scene.collar).tags.includes("leash_attachment")>>
You also can't help but notice how her gaze occasionally flits towards your neck, or, more probably, the bondage collar wrapped around it.<br>
<br>
<<printThought "Hmm... I bet we could make a really intense video with me in this outfit...">><br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_bdsm" "Ask about shooting an even more bdsm-focused high heel photoshoot." 60 "<<set $player.cutscene.allowSpecific= ''>>">>]<br>
<<else>>
Her gaze occasionally flits towards your throat only to be tinged with disappointment as if there was something missing.<br>
<br>
<<printThought "Hmm, I think she's expecting me to be wearing a bondage collar to go along with these fetishistic boots?">><br>
<br>
[@@.link_locked;Maybe I should come back with a collar sometime?@@]<br>
<</if>>
<</if>>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_1" 'Talk to <<=setup.getNpcName("npc_shoestore_manager", "first")>> about recording a testimonial on the benefits of bed heels.' 60 "<<set $player.cutscene.allowSpecific= ''>>">>]<br>
<<if State.hasPlayed("event_bestiality_final_invite")>>
<<if State.hasPlayed("event_bestiality_final_8")>>
[@@.link_locked;You have finished the exotic photoshoot.@@]<br>
<<elseif $currentTasks.hasOwnProperty("bestiality_final_task") && !$currentTasks.bestiality_final_task.finished>>
[@@.link_locked;You have already agreed to do an exotic photoshoot.@@]<br>
<<elseif State.hasPlayed("event_bestiality_final_volunteer_1")>>
[<<moveTo "event_bestiality_final_volunteer_1_alt" 'Say you are ready to take her up on her "opportunity."' 180>>]<br>
<<else>>
[<<moveTo "event_bestiality_final_volunteer_1" 'Ask about her "opportunity."' 180>>]<br>
<</if>>
<</if>>
<br>
<<if $currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task') && !setup.checkItemOwned("manager_shirt_copy") && !setup.checkItemOwned("manager_skirt_copy") && !State.hasPlayed("event_ask_manager_heels_1")>>
[<<moveTo "event_ask_manager_heels_1" 'Ask about heels similar to what <<=setup.getNpcName("npc_manager", "formal")>> wears.' 120>>]<br>
<</if>>
<<if !setup.checkItemTypeWorn("shoes")>>
[@@.link_locked;Leaving a shoestore NOT wearing shoes would be very silly...@@]
<<else>>
[<<moveTo "room_mall_interior" "Return to the mall." 30 "<<set $player.cutscene.allowSpecific= ''>>">>]
<</if>>
<<else>>
<br><br>
<<if $currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task') && !setup.checkItemOwned("manager_shirt_copy") && !setup.checkItemOwned("manager_skirt_copy") && !State.hasPlayed("event_ask_manager_heels_1")>>
[<<moveTo "event_ask_manager_heels_1" 'Ask about heels similar to what <<=setup.getNpcName("npc_manager", "formal")>> wears.' 120>>]<br>
<</if>>
<<if !setup.checkItemTypeWorn("shoes")>>
[@@.link_locked;Leaving a shoestore NOT wearing shoes would be very silly...@@]
<<else>>
[<<moveTo "room_mall_interior" "Return to the mall." 30 "<<set $player.cutscene.allowSpecific= ''>>">>]
<</if>>
<</if>>
<<else>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && !setup.checkItemOwned('bed_heels_pink') && !setup.checkItemOwned('bed_heels_box')>>
[<<moveTo "event_mall_shoe_store_bed_heels_request" 'Ask the owner about the "bed heels" <<=setup.getNpcName("npc_manager", "formal")>> told you about.' 60 "<<set $player.cutscene.allowSpecific= ''>>">>]<br>
<br>
<<elseif $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<set _daysTo = setup.daysToDate($now, setup.getTaskDueDate('task_uniform_upgrade'))>>
Mindful of your uniform assignment due <<if _daysTo == 1>>tomorrow<<elseif _daysTo == 0>>today<<else>>in <<=_daysTo>> days<</if>> you look around the shoe store. Unfortunately it looks like the pink Mary Jane's
<<if setup.isItemEquipped("mary_janes_pink")>>you're wearing<<else>><<=setup.getNpcName('npc_manager', 'formal')>> gave you<</if>> are already more extreme than what you see for sale here.<br>
<br>
<<elseif setup.checkItemTypeTag('shoes', ['bedheels'])>>
Catching sight of your shoes, <<=ps(setup.getNpcName('npc_shoestore_manager', 'first'))>> jaw drops and then her expression spreads into a wide smile.
<<if setup.getTotalValue("heels") >= setup.getItemObj('bed_heels_pink').heels.difficulty>>
"@@.npc_shoestore_manager;Oh my, you're not just wearing those out, but you're walking in them? Talk about the best advertising I could ask for!@@" She seems entranced, staring as you mince around gracefully atop what most would call impossible footwear. "@@.npc_shoestore_manager;Say... I don't suppose you'd be up for recording a bit of an advertisement for me in those?@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2_alt" "Say sure." 30 "<<set $player.cutscene.allowSpecific= ''>>">>]<br>
<<elseif $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<set _daysTo = setup.daysToDate($now, setup.getTaskDueDate('task_uniform_upgrade'))>>
Mindful of your uniform assignment due <<if _daysTo == 1>>tomorrow<<elseif _daysTo == 0>>today<<else>>in <<=_daysTo>> days<</if>> you look around the shoe store. Unfortunately it looks like the pink Mary Jane's
<<if setup.isItemEquipped("pink_mary_janes")>>you're wearing<<else>><<=setup.getNpcName('npc_manager', 'formal')>> gave you<</if>> are already more extreme than what you see for sale here.
<br><br>
<<elseif setup.checkItemTypeTag('shoes', ['bedheels'])>>
Catching sight of your shoes, <<=ps(setup.getNpcName('npc_shoestore_manager', 'first'))>> jaw drops and then her expression spreads into a wide smile.
<<if setup.getTotalValue("heels") >= setup.getItemObj('bed_heels_pink').heels.difficulty>>
"@@.npc_shoestore_manager;Oh my, you're not just wearing those out, but you're walking in them? Talk about the best advertising I could ask for!@@" She seems entranced, staring as you mince around gracefully atop what most would call impossible footwear. "@@.npc_shoestore_manager;Say... I don't suppose you'd be up for recording a bit of an advertisement for me in those?@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2_alt" "Say sure." 30 "<<set $player.cutscene.allowSpecific= ''>>">>]
<<else>>
"@@.npc_shoestore_manager;Wow, talk about someone after my own heart. Bed heels in public, what a sight!@@" She frowns as you wobble slightly. "@@.npc_shoestore_manager;That said well... you seem a bit unsteady, maybe practice some more before you do something so daring. If you managed to master them though...@@" She stares off into the distance, momentarily lost in fantasy. "@@.npc_shoestore_manager;Well, if you do, come back, I might be interested in having you star in an advertisement video.@@"
<</if>>
<br><br>
<<else>>
<<include thoughts_current>>
<</if>>
<<elseif setup.checkItemOwned("bed_heels_pink") && setup.getTotalValue("heels") >= setup.getItemObj('bed_heels_pink').heels.difficulty>>
You notice a somewhat forlorn advertisement for bed heels with the question "Have YOU tried bed heels?" and you reflect on your own experience, wondering what <<=setup.getNpcName('npc_shoestore_manager', 'first')>> might say if you wore your heels to the shop.<br>
<br>
<</if>>
<<if $currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task') && !setup.checkItemOwned("manager_shirt_copy") && !setup.checkItemOwned("manager_skirt_copy") && !State.hasPlayed("event_ask_manager_heels_1")>>
[<<moveTo "event_ask_manager_heels_1" 'Ask about heels similar to what <<=setup.getNpcName("npc_manager", "formal")>> wears.' 120>>]<br>
<br>
<</if>>
<<if !setup.checkItemTypeWorn("shoes")>>
[@@.link_locked;Leaving a shoestore NOT wearing shoes would be very silly...@@]
<<else>>
[<<moveTo "room_mall_interior" "Return to the mall." 30 "<<set $player.cutscene.allowSpecific= ''>>">>]
<</if>>
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: get sex club advertisement in mail
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Apartment Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png">>
<div id="invframe" class="scrolltext">
You're still a bit weak in the knees when you get home, unable to fully process what your <<=setup.getNpcName("npc_manager","title")>> did with... or is that TO you out of your mind...<br>
<br>
<<printThought "This is certainly one helluva job... and it only keeps getting more extreme...">><br>
<br>
You are about to open the door to your flat when you notice something in your mailbox.<br>
<br>
<<printThought "Weird, who sends snail mail anymore?">><br>
<br>
You pull out what looks like an advertisement flyer and are about to toss it when you take a closer look and realise just WHAT it is advertising.<br>
<br>
<<printShopName 'sex_club'>> Grand Re-Opening!<br>
<br>
You hurriedly close the door before anyone can see you standing in the hallway gawking at the fetishistic images on the advert.<br>
<br>
[<<moveTo "event_sex_club_invite_2" "Read the flyer." 300>>]
</div>/*#
#desc: read sex club advertisement
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'sex_club_advert'>>
<<set $player.locations.sex_club = true>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/inventory/item/useable/sex_club_flier.png">>
<div id="invframe" class="scrolltext">
You try not to get distracted by the images of bound, rubber-clad <<if !$options.fem>>men and <</if>>women on the flyer as you read the actual text.<br>
<br>
It would appear that the flyer is an invite to a downtown fetish club, specifically to announce that it is open for business once again on "Sin-day" and "Moan-day" evenings. It specifies that a "dress code" will be enforced... though it fails to specify exactly what such code comprises.<br>
<br>
From the address you are pretty sure the club is located on the edge of the Industrial District not too far from
<<if $player.locations.home_technician>>
<<=ps(setup.getNpcName("npc_technician","first"))>> flat.
<<else>>
the university.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Put the flyer away." 60>>]
</div>/*#
#desc: read sex club advertisement
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_exgirlfriend.flags.sexclub.flier = true>>
<</if>>
<<createAdvBGR "./images/inventory/item/useable/sex_club_flier.png">>
<div id="invframe" class="scrolltext">
You examine the flyer for <<printShopName 'sex_club'>> — a fetish club downtown.<br>
<br>
In addition to listing the club's address, the flyer indicates that the club is open "Sin-day" and "Moan-day" evenings and that admission is contingent on meeting the "dress code." The rest of the flyer is a collage of images (presumably taken at the club) of <<if !$options.fem>>men and <</if>>women bound and in other fetishistic situations. Most of them are dressed in latex or leather; you assume that is a hint at what sort of "dress code" the place ascribes to.<br>
<br>
Flipping the flyer over you find yet more images and the mailing address that indicates that the flyer was actually addressed to <<=setup.getNpcName("npc_exgirlfriend","first")>> — your ex.<br>
<br>
<<printThought "Huh, that's interesting...">><br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Put the flyer away." 60 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: npc_manager receives sex club advertisement
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.sexclub.invite = true>>
<<set $player.locations.sex_club = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're working when a piece of inter-office mail is delivered to your desk in a manila envelope. You take it straight in to <<=ps(setup.getNpcName("npc_manager","formal"))>> office where she opens it with a raised eye.<br>
<br>
"@@.npc_manager;And just who is sending around hard copy communication these days? So inefficient...@@"<br>
<br>
She pulls a glossy advertisement partway out of the envelope and then laughs. "@@.npc_manager;Really? As if I have time for this sort of thing...@@"<br>
<br>
She smiles at you and then hands you the advertisement: a personal invite to the <<printShopName 'sex_club'>> fetish club.<br>
<br>
"@@.npc_manager;We — by which I mean myself and your predecessor — used to frequent the establishment quite often.@@" She pauses briefly, sighing wistfully. "@@.npc_manager;Of course, these days I am far too busy to say nothing of the recent addition of work-related social obligations.@@" She shakes her head. "@@.npc_manager;Still, you might find something to enjoy there. Maybe even learn something useful! In any case, I suppose it is nice to know that the club is back open again.@@"<br>
<br>
<<if setup.checkItemOwned('sex_club_advert')>>
She smiles and dismisses you. You read the flyer again, but it has no new information that wasn't on the one that came in the mail. You put it in the recycling.<br>
<br>
<</if>>
<<if !$npc_sex_club.flags.firstVisit>>
<<printThought "Maybe I should check the place out sometime... it wouldn't hurt, right?">><br>
<br>
<</if>>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: sex club first visit - change into catsuit
#status: RELEASED 0.8.5.0
#ignore_spell: h
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You walk out of the changing room wearing your new latex catsuit as the guard greets you with a wide grin.<br>
<br>
"@@.npc_guard;Now THAT is fucking hot with a capital H! Unf, you are definitely dressed appropriately to join the party... but first is the matter of your payment for that steaming hot outfit.@@"<br>
<br>
She pulls a large bottle of lube from behind the counter and pours some into her hand.<br>
<br>
<<printThought 'Right... she wanted to "shine me up."'>><br>
<br>
[<<moveTo 'event_sex_club_first_2' "If that's the rub..." 60 "<<set $scene.shine=true>>">>]<br>
[<<moveTo 'event_sex_club_first_2' "Actually... you'd rather not enter the club tonight." 60 "<<set $scene.shine=false>>">>]
</div>/*#
#desc: sex club first visit - shined up
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.shine>>
<<set $npc_guard.flags.first_shine = true>>
<<else>>
<<if $scene.hasOwnProperty("outfit")>>
<<include "removesex_clubOutfit">>
<</if>>
<<useClothSetPop "sex_club">>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<if $scene.shine>>
You nod and <<=setup.getNpcName("npc_guard","formal")>> grins wider, approaching you and looming a good foot above you through a combination of natural height and steep boots. She rubs her lube-slick hands together in glee before reaching out and going to work on your body.<br>
<br>
"@@.npc_guard;Goddamn, this body was MADE for latex!@@" She states as she starts polishing you from head to toe. "@@.npc_guard;You were meant to be a perfect, shiny slut... especially this delicious ass!@@"<br>
<br>
Though she has made a quite thorough tour of the rest of your body she seems to fixate on your bottom, rubbing and playfully slapping it in-between squeezing
<<if setup.checkItemTypeWorn("plug")>>
and fiddling with your plug.
<<if $npc_ai.flags.missions.connection>>
"@@.npc_guard;I knew you were going to be stuffed... mmm, just thinking about having my fist in this hole... your ass really is perfection inside and out!@@"
<<else>>
"@@.npc_guard;Such a perfect, THICC butt... and it comes pre-plugged? Lawd save me, you are just perfection!@@"
<</if>>
<<else>>
and fingering your empty hole.
<<if $npc_ai.flags.missions.connection>>
"@@.npc_guard;Empty? Now that is a surprise... and an almost irresistible invitation to fist you again. I bet you remember how that felt, don't you? Yeah, I know you do... you just love being a human puppet.@@"
<<else>>
"@@.npc_guard;Empty? Now that is a surprise... still, I doubt you would have trouble finding suitors to fill it for you...@@"
<</if>>
<</if>>
<br><br>
She finally reaches the front of your pelvis, stroking the latex that rests tight over your
<<if setup.checkItemTypeWorn("cage")>>
<<=setup.getItemTypeName('cage')>>. "@@.npc_guard;Locked up safe and sound? Now aren't you the chaste saint of denial...@@"
<<else>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<getWordMyPenis>>. "@@.npc_guard;No protection? Now that's a daring choice, but a sexy looking one... mmm, look at how your hard cock gleams through the latex, so hot..! Is this a cunt too? Aren't you just full of surprises! I bet you're already soaked under that tight rubber... and not just with sweat!@@"
<<elseif $player.body_ref.penis>>
<<getWordMyPenis>>. "@@.npc_guard;Uncaged? Now that's a daring choice, but a sexy looking one... mmm, look at how your hard cock gleams through the latex. So hot...@@"
<<else>>
smooth cunt. "@@.npc_guard;Good thing this is a seamless suit, because I bet you are just SO wet under there already.@@"
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName("npc_guard","formal")>> stands up as you catch your breath, and you watch as she sashays back around the counter. "@@.npc_guard;Alright, you can head on in, sugar. Enjoy your night!@@"<br>
<br>
You nod and head for the door into the club...<br>
<br>
<<printThought "I haven't even made it into the club proper and already I'm having one hell of a night...">><br>
<br>
[<<moveTo 'event_sex_club_first_3' 'Enter the club.' 300>>]
<<else>>
Getting cold feet, you stutter out an excuse that you "@@.pc;Remembered somewhere you need to be.@@"<br>
<br>
The guard gives a disappointed frown but makes no further comment as you change out of the catsuit and make your exit.<br>
<br>
[<<moveTo 'room_sex_club_exterior' 'Leave.' 60>>]
<</if>>
</div>/*#
#desc: enter sex club for the first time
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info = {
'owner' : {
'dom' : true
},
"play" : {
"id" : "nun",
"seen" : false
},
"danceFloor" : {
"id" : "shopkeeper",
"seen" : false
},
'event' : "event_sex_club_event_first_1"
}>>
<<set _nextHour = $now.getUTCHours()+1>>
<<set _nextDate = setup.setNextDate($now, 0, _nextHour, 0)>>
<<addEvent 'sex_club_event' _nextDate>>
<<set $npc_sex_club.profile = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
You step into the interior of the <<printShopName 'sex_club'>> and almost gasp. Leather, latex, steel, and flesh surround you. The sole exception is a mere handful of satin-clad <<if $fetish.sissy>>sissies<<else>>maids<</if>>. All patrons are attired in extremely fetishistic ensembles. While the club-goers are dressed to turn heads on the street, here it is all taken in stride. The club is kinky as hell, yet it is fully featured — from the dance floor to the bar and the currently empty stage. Discounting the attire and the number of attendees crawling or otherwise restrained, the only "out of place" section is a small dungeon in the back where you can see a few people bound being whipped or fucked.<br>
<br>
You gawk at the hedonistic display when a particularly <<if $npc_sex_club.fem>>debonair lady<<else>>dapper gentleman<</if>> wearing a sharp, militaristic uniform made of perfectly-fitted leather approaches you with a welcoming smile.<br>
<br>
"@@.npc_sex_club;Ah! Ein new visitor! Welcome, welcome to my fine establishment! My name is <<=setup.getNpcName("npc_sex_club","formal")>>, and I own and run this wonderful palace of hedonism.@@"<br>
<br>
Draping an arm over your shoulder <<he npc_sex_club>> gestures across at <<his npc_sex_club>> den of sin. "@@.npc_sex_club;So, what do you think? Is it not glorious? I see you availed yourself of one of our rental outfits — I bet it already has you excited to buy something of your own, eh? Something a bit more personal, rather than the generic sameness of the most cliche latex outfit in existence? Ha! Not that there isn't anything wrong with the classics!@@"<br>
<br>
Still in awe of everything going on around you, you're a bit overcome by the <<mans npc_sex_club>>... energy, but you mumble a reply that <<his npc_sex_club>> establishment is very impressive.<br>
<br>
"@@.npc_sex_club;A shy one, eh? Well I'll leave you to poke around a bit — you never know what interesting people might show up here! All sorts of fun to be had... and sometimes, the anonymity of a mask can open some additional doors, eh? I'll leave you to it. I've got a bit of fun planned for later that you're sure to enjoy. It shall help you come out of that shell a bit — if you don't manage on your own!@@"<br>
<br>
Laughing heartily, the <<man npc_sex_club>> gives you a parting shoulder squeeze and then wanders off, leaving you to make your own way through the den of debauchery.<br>
<br>
[<<moveTo 'event_sex_club_interior' 'Look around.' 600>>]
</div>/*#
#desc: first sex club stage show start
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<<changeHorny 20>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
You look up towards the stage where a spotlight shines on <<=setup.getNpcName("npc_sex_club","formal")>> as <<he npc_sex_club>> greets the crowd.<br>
<br>
"@@.npc_sex_club;Good evening, one and all! Oh, I am still getting used to being open again. I had missed you all so very much!@@"<br>
<br>
A cheer erupts from the crowd; seems that <<he npc_sex_club>> has quite a few loyal patrons.<br>
<br>
"@@.npc_sex_club;Now, I hope you have all been enjoying your own sin of choice, but I have a very special demonstration for tonight... if I could get a volunteer?@@"<br>
<br>
Several people are already raising their hands but <<=setup.getNpcName("npc_sex_club","formal")>> ignores them as <<he npc_sex_club>> scans the audience. "@@.npc_sex_club;Actually... we have a first timer here, black rental catsuit and everything. How about you all give
<<switch $player.identify_as>>
<<case "female">>
her
<<case "fluid" "agender" "">>
them
<<case "male">>
him
<<default>>
ERROR: unexpected player.identify_as <<=$player.identify_as>>
<</switch>>
a hand. Come on up!@@"<br>
<br>
<<=setup.getNpcName("npc_sex_club","formal")>> locks eyes with you and the crowd parts, cheering in encouragement and pushing you forward as you, moments later, find yourself on stage.<br>
<br>
The MC winks at you and whispers a few words. "@@.npc_sex_club;Told you I had something fun planned... loosen up, enjoy it! Nobody knows who you are, so you can indulge yourself however you want...@@"<br>
<br>
A quick slap on the ass echoes through the club as another cheer goes up and <<=setup.getNpcName("npc_sex_club","formal")>> re-addresses the crowd.<br>
<br>
[<<moveTo 'event_sex_club_event_first_2' 'Continue.' 600>>]
</div>/*#
#desc: first sex club stage show join the show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEvent 'sex_club_end'>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<applyExperience 'bondage' 13 'terrible' $EXPOSED>>
<<changeHorny 50>>
<<addItemSet "club_bondage">>
<<wearItemSet "club_bondage">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
You look out at the cheering crowd of perverts as <<=setup.getNpcName("npc_sex_club","formal")>> speaks. "@@.npc_sex_club;I know this is <<switch $player.identify_as>>
<<case "female">>
her
<<case "fluid" "agender" "">>
their
<<case "male">>
his
<<default>>
ERROR: unexpected player.identify_as <<=$player.identify_as>>
<</switch>>
first night, but you all have to agree that they make for the perfect shiny slut! Come on, give them a hand!@@"<br>
<br>
A cheer goes up as you freeze like a statue and <<=setup.getNpcName("npc_sex_club","formal")>> produces a blindfold with a flourish. "@@.npc_sex_club;Here, this will help you just focus on the moment. Best to not get... distracted by all those people staring at you, lusting over you,@@" <<he npc_sex_club>> whispers before pulling the blindfold over your head as another, now unseen pair of hands pull your arms behind your back and cuff your wrists together.<br>
<br>
You open your mouth only for a large gag to be pressed between your lips and pulled tightly in place.<br>
<br>
"@@.npc_sex_club;Now, who wants to REALLY welcome our new friend?@@" <<=setup.getNpcName("npc_sex_club","formal")>> asks the crowd as your ankles are cuffed together. In a matter of minutes you have gone from an anonymous face in the crowd to the centre of attention; blind, mute and helplessly rooted in place. From the sound of things there are quite a number of volunteers to "welcome" you but a selection is made. Before long, you feel a pair of breasts pressing against you as unseen hands reach around to squeeze your ass.<br>
<br>
"@@.npc_sex_club;Wonderful! Now, let's see some reciprocity, eh?@@" Your hands are rebound behind the back of your partner as you feel them cuffed similarly, additional straps around your chest and waist pulling you even closer together to the unseen woman. Her fingers eagerly dig into your latex-clad rear and you find yourself squeezing back — to keep your balance, if nothing else.<br>
<br>
"@@.npc_sex_club;Beautiful! Now kiss!@@" <<He npc_sex_club>> calls out, the crowd echoing is word with a chant of "@@.generic_female1;Kiss!@@"
"@@.generic_male1;Kiss!@@" "@@.generic_female2;Kiss!@@"<br>
<br>
What's going on suddenly becomes clear as your head is tilted slightly to the side and you feel a second pair of lips "sharing" your gag. Your partner moans and rubs against you... and you moan in return.<br>
<br>
Your partner continues to grind and squeeze as you find yourself caught up in the moment as the two of you writhe against one another as the crowd hollers their approval.<br>
<br>
[<<moveTo 'event_sex_club_event_first_3' 'This is so embarrassing...' 600 "<<set $scene.brazen=false>>">>]<br>
<<if $player.flags.humiliationStyle == "brazen">>
[<<moveTo 'event_sex_club_event_first_3' 'This is so hot!' 600 "<<set $scene.brazen=true>>">>]
<</if>>
</div>/*#
#desc: first sex club stage show exgf reveal
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<<playerOrgasm>>
<<addNpcTheme 'npc_psychiatrist' 'ex_girlfriend' 'theme_psychiatrist_ex_10'
5
'event_psychiatrist_session_girlfriend_club_1'
false
>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_topless")>>
<div id="invframe" class="scrolltext">
<<if $scene.brazen>>
You put on a show for the adoring crowd, pressing against the gag as you "kiss" your partner,
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
your massive breasts squished against her more modest rack
<<case 'large'>>
your large breasts pressed against her more modest rack
<<case 'medium'>>
your breasts squishing against her own
<<case 'small'>>
your small breasts pressed against her more substantial pair
<<case 'none'>>
her breasts pressed against your flat chest
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
as your bound hands run over her rear and she responds with the same.
<<else>>
Your body can't help but react to the crowd, despite your trepidations. The woman's lips pressed around the gag opposite you, her <<switch setup.calcBreastSize()>>
<<case 'massive'>>
more modest breasts pressed against your own massive mammaries
<<case 'large'>>
more modest breasts pressed against you
<<case 'medium'>>
breasts pressed against your own
<<case 'small'>>
breasts squished over your smaller pair
<<case 'none'>>
breasts pressed against your flat chest
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
as her hands squeeze your butt. With your hands wrapped around her, you are almost helpless to do anything but return the favour...
<</if>>
<br><br>
Her hand reaches inward,
<<if setup.checkItemTypeWorn("plug")>>
teasing your plug...
<<else>>
probing your rear hole, the latex stretching as her finger pokes into you...
<</if>>
You moan, the combination of the tight latex, the bound position, the embarrassing roar of the crowd... you cum. Hard. A potent full-body orgasm shakes you from heels to head.<br>
<br>
Your writhing draws on with a gag-muffled moan. The crowd cheers as you feel your partner orgasm as well, the hot breath shooting out from her nostrils combining with her shuddering body to make the two of you almost fall over. The unseen hands stabilize you only to draw out your climax. The thrashing causes your blindfold to slip- and you find yourself looking into the eyes of <<=setup.getNpcName("npc_exgirlfriend","first")>>, your ex!<br>
<br>
Your eyes go wide in shock but there is nothing you can do. Her gaze is hazy with lust as your latex mask continues to conceal your identity...<br>
<br>
Your legs go rubbery as this new dimension piles on; <<=setup.getNpcName("npc_sex_club","formal")>> is there behind you to hold you up. "@@.npc_sex_club;Oh, ho, ho! We almost had a fainter! Now THAT is what I call an orgasm!@@"<br>
<br>
Assistants appear and start unstrapping you, <<=setup.getNpcName("npc_exgirlfriend","first")>> separating and waving to the crowd before blowing you a kiss and disappearing off-stage. Still gagged and helpless, you flail as the curtain drops and you are guided into a chair.<br>
<br>
"@@.npc_sex_club;See, now wasn't that fun?@@" <<=setup.getNpcName("npc_sex_club","formal")>> asks with a grin as your gag is finally removed and you struggle for words.<br>
<br>
"@@.npc_sex_club;Well, I'll leave you to it, again, welcome to <<printShopName 'sex_club'>>... and I hope we see you again. You're a fun one.@@"<br>
<br>
You're still utterly flabbergasted. The invite had technically been for <<=setup.getNpcName("npc_exgirlfriend","first")>> but.. you and her... your mind spins as you find yourself on autopilot, making your way back to the club floor.<br>
<br>
[<<moveTo 'event_sex_club_event_first_4' 'Continue.' 600>>]
</div>/*#
#desc: first sex club stage post-show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet "club_bondage">>
<<deleteItemSet "club_bondage">>
<<deleteMember $scene.sex_club_info "event">>
<<set $npc_sex_club.flags.firstVisit = true>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_sexclub_1'
0
'event_manager_date_club_invite_1'
true
>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_club'
0
'theme_ai_date_club_invite_1'
true
>>
<<set $shopStatus['mall_special_interest'].unlocked_inventory.pushUnique('club_dress')>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<div id="invframe" class="scrolltext">
Back on the floor you may still be "anonymous," but you are definitely not unknown. Everyone you pass congratulates you on the show, expressing everything from admiration to jealousy at your "performance." <br>
<br>
Though you search, you are unable to find your ex... not that you really have any idea what you'd say to her if you did. Your nerves are still frayed and your emotions still conflicted from your shared experience.<br>
<br>
[<<moveTo 'event_sex_club_leave' 'You decide to call it a night.' 1200 "<<removeEvent 'sex_club_end'>>">>]
</div>/*#
#desc: sex club exterior
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Outside <<printShopName 'sex_club'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_exterior.png">>
<div id="invframe" class="scrolltext">
Just past the line between the Student Quarter and the Industrial District you find what looks to have once been a brick factory building. From the look of things (and various peeling posters), the only thing "Industrial" that has happened recently has been some metal concerts. Above an otherwise nondescript door is a sign marking the entrance to <<printShopName 'sex_club'>>.<br>
<br>
<<set _nextTask = setup.getNextTaskLocation('room_sex_club_exterior')>>
<<if $scene.hasOwnProperty('sex_club_info')>>
[@@.link_locked;One visit to the fetish club is probably enough for one night.@@]<br>
<<elseif _nextTask && setup.compareDay($now,_nextTask.date)>>
<<if $now.getUTCHours() >= 18>>
<<if setup.checkTaskUntimedComplete(_nextTask.id)>>
<<printThought "I made a date to meet someone here later this evening.">><br>
<br>
<<set _tmpSeconds = setup.secondsToDate($now,_nextTask.date)+1>>
[<<moveTo 'room_sex_club_exterior' "Wait for your date." _tmpSeconds>>]<br>
<<else>>
<<printThought "I'm not properly dressed for my date!">><br>
<br>
<</if>>
<<else>>
<<printThought "I'm meeting someone here this evening... but evening is a long way off.">><br>
<br>
<</if>>
<<elseif $daily.noGuard>>
There's a "no more entrance" sign up in front of the club... looks like <<=setup.getNpcName('npc_sex_club', 'formal')>> got bored of working the door and decided <<he npc_sex_club>> had enough guests for the evening.<br>
<br>
<<elseif ($now.getUTCDay() == 0 || $now.getUTCDay() == 1) && $now.getUTCHours() >= 20>>
The entrance door is cracked open and light is coming from inside. It is <<if $now.getUTCDay() == 1>>Moan-day<<else>>Sin-Day<</if>> and the club is open for business.<br>
<br>
[<<moveTo 'room_sex_club_entrance' "Enter <<printShopName 'sex_club'>>." 300>>]<br>
<<elseif ($now.getUTCDay() == 0 || $now.getUTCDay() == 1) && $now.getUTCHours() >= 18>>
<<set _clubOpen = setup.setNextDate($now, 0, 20, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_clubOpen)>>
[<<moveTo 'room_sex_club_exterior' "Wait for the club to open." _tmpSeconds>>]<br>
<<else>>
The door is currently closed, the sign beside it indicating that the club's hours are from <<if $options.militaryTime>>20:00<<else>>ten<</if>> to midnight, Sin-day and Moan-day.<br>
<br>
<</if>>
[<<moveTo 'room_student_quarter' 'Return to the Student Quarter.' 300>>]
</div>/*#
#desc: sex club entrance
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$npc_sex_club.flags.firstVisit>>
<<set $npc_guard.flags.sexclub = true>>
<<if !$clothSetsInt.hasOwnProperty('sex_club')>>
<<useClothSetPush 'sex_club'>>
<</if>>
<<if !$scene.first && State.hasPlayed("event_egg_guard_5_collaring_7")>>
<<set _eggVariants = ["toes", "foot", "guard", "none", "none"]>>
<<if ["penis","futa","cybernetic","cyber-futa"].includes($npc_guard.genitals)>>
<<set _eggVariants.push("anal")>>
<</if>>
<<if State.hasPlayed("event_egg_guard_6_threesomes_4_oral_4")>>
<<set _eggVariants.push("oral")>>
<</if>>
<<if State.hasPlayed("event_egg_guard_6_threesomes_4_piss_5") && $fetish.piss>>
<<set _eggVariants.push("piss")>>
<</if>>
<<if State.hasPlayed("event_egg_guard_6_threesomes_4_sweat_3")>>
<<set _eggVariants.push("sweat")>>
<</if>>
<<if State.hasPlayed("event_egg_guard_6_threesomes_4_bondage_todo")>>
<<set _eggVariants.push("bondage")>>
<</if>>
<<if State.hasPlayed("event_egg_guard_6_threesomes_4_analingus_todo")>>
<<set _eggVariants.push("analingus")>>
<</if>>
<<set $scene.egg_variant = _eggVariants.random()>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() == 23 || $now.getUTCHours() < 12>>
You enter the club but are waved off.<br>
<br>
"@@.npc_guard;Sorry, no more guests tonight. It's too late for you to properly enjoy your time.@@"<br>
<br>
<<printThought "Hmm, guess I should come by earlier in the evening.">><br>
<br>
<<if $player.llocation == "event_sex_club_change">>
[<<moveTo 'room_sex_club_exterior' 'Change and leave.' 300 "<<useClothSetPop 'sex_club'>>">>]
<<else>>
[<<moveTo 'room_sex_club_exterior' 'Leave.' 60>>]
<</if>>
<<else>>
You enter the <<printShopName 'sex_club' true>> to find yourself in a small antechamber.
<<if $npc_guard.profile && !$scene.first>>
<<=setup.getNpcName('npc_guard', 'formal')>>, dressed in a jaw-dropping leather ensemble that only further emphasises her muscular build is
<<else>>
A large, leather-clad woman seems to be
<</if>>
playing the dual role of greeter and door-person from behind a desk.<br>
<br>
The guard/front desk attendant
<<if !$scene.first>>
greets you with a smile, "@@.npc_guard;Welcome back to <<printShopName 'sex_club'>>.@@"
<<if State.hasPlayed("event_egg_guard_5_collaring_7") && $scene.egg_variant != "none">>
<<switch $scene.egg_variant>>
<<case "toes">>
Down behind the check-in table <<=setup.getNpcName("npc_egg","first")>> is on her back, one of<<=ps(setup.getNpcName("npc_guard","formal"))>> feet shoved in her mouth with <<=setup.getNpcName("npc_egg","first")>> eagerly sucking on each toe in turn.
<<case "foot">>
Down behind the check-in table <<=setup.getNpcName("npc_egg","first")>> is hard at work massaging one of <<=ps(setup.getNpcName("npc_guard","formal"))>> feet.
<<case "piss">>
As you step up <<=setup.getNpcName("npc_guard","formal")>> just finishes relieving herself, <<=setup.getNpcName("npc_egg","first")>>
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
sucking her owner's <<getWordPenis 'npc_guard'>>
<<case 'cybernetic' 'cyber-futa'>>
her owner's cybernetic <<getWordPenis 'npc_guard'>>
<<case 'vag'>>
her owner
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
of a final few flecks of piss.
<<case "sweat">>
<<=setup.getNpcName("npc_guard","formal")>> is casually manning the check-in counter with <<=ps(setup.getNpcName("npc_egg","first"))>> face burried in one of her armpits, the subby one-time egg's eyes closed with a blissed out expression as she marinates in her owner's scent.
<<case "anal">>
Back behind the counter <<=setup.getNpcName("npc_egg","first")>> is bent over with <<=ps(setup.getNpcName("npc_guard","formal"))>> hard <<if $fetish.futanari && ["penis","futa","cybernetic","cyber-futa"].includes($npc_guard.genitals)>>futa <</if>>cock in her ass.<br>
<br>
Whether because she is dealing with a customer (you), or just part of some long-term teasing effort, <<=setup.getNpcName("npc_guard","formal")>> seems content to have <<=setup.getNpcName("npc_egg","first")>> do all the work, pressed balls-deep in her slave's ass without doing more than very slightly rocking her hips on occasion.
<<case "bondage">>
As a sort of bonus advertisement for the club, <<=setup.getNpcName("npc_egg","first")>> is tightly bound and suspended over the check-in counter, <<=setup.getNpcName("npc_guard","formal")>> occasionally reaching out to caress or tease her trussed-up slave. A blindfold and earmuffs ensure that <<=setup.getNpcName("npc_egg","first")>> is hyper-sensitive, twitching and gasping through her gag at every touch.
<<case "analingus">>
<<=setup.getNpcName("npc_guard","formal")>> is seated on a specially designed stool, <<=setup.getNpcName("npc_egg","first")>> safely tucked under at the perfect angle to eat her owner's ass while <<=setup.getNpcName("npc_guard","formal")>> works.
<<case "guard">>
<<=setup.getNpcName("npc_egg","first")>> is kneeling obediently next to her owner, looking, in a way, like a guard for the guard, with <<=ps(setup.getNpcName("npc_guard","formal"))>> possessively rested on her slaves head, occasionally patting her head or giving her a scratch like the good pet she is.
<<case "oral">>
Peering past the counter you spot <<=setup.getNpcName("npc_egg","first")>> on her knees with a blindfold and earmuffs, totally happy, and totally focused on
<<switch $npc_guard.genitals>>
<<case 'penis' 'futa'>>
sucking off her owner's <<getWordPenis 'npc_guard'>>.
<<case 'cybernetic' 'cyber-futa'>>
sucking off her owner's cybernetic <<getWordPenis 'npc_guard'>>.
<<case 'vag'>>
eating out her owner.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<<default>>
ERROR: unexpected scene.egg_variant <<=$scene.egg_variant>>
<</switch>>
<</if>>
<<else>>
<<if $npc_ai.flags.missions.connection>>
looks up and greets you with a wide smile. "@@.npc_guard;Hey, it's you! I should have known from how easily my fist fit in that ass that you'd be showing up here sooner or later!@@"<br>
<br>
You blink as it comes together — the latex mask may conceal her face, but you suddenly recognise the guard who "inspected" you that day when you were smuggling <<=setup.getNpcName("npc_ai","first")>> out of the company in your ass. Her Amazonian proportions looked impressive in the company's fitted regulation uniform, but in her current leather ensemble she looks drop-dead gorgeous... and like she could probably break you in half without even a warm-up.<br>
<br>
She grins as recognition dawns over your face. "@@.npc_guard;Yeah, I work the door here for a bit of money on the side — never pass up an opportunity, y'know! Plus, well... the view is mighty fine!@@"
<<else>>
looks up at you with a smile. "@@.npc_guard;Welcome to <<printShopName 'sex_club'>> — entrance is free, providing you meet the dress code.@@"
<</if>>
<</if>>
<br><br>
<<if $scene.first && ($now.getUTCHours() == 23 || $now.getUTCHours() < 12)>>
She looks at a clock and then frowns. "@@.npc_guard;Hmm, not really enough time for a first-timer to get the full experience. How about you come back a little earlier in the evening so you can have a proper initial outing?@@" She crosses her muscular arms over her chest in the universal bouncer signal of "you ain't gettin' in tonight." <br>
<br>
<<printThought "Dang, should have come in earlier.">><br>
<br>
[<<moveTo 'room_sex_club_exterior' 'Leave.' 60>>]
<<else>>
She looks you over and
<<if ["fetish","latex"].includes(setup.analyzeWornTags(['fetish','cute','sissy','modest','latex']))>>
<<if $npc_sex_club.flags.firstVisit>>
nods "@@.npc_guard;Nice outfit, go ahead and head on in and enjoy the party.@@"
<<else>>
half-frowns. "@@.npc_guard;Now, normally, I would let you in as-is, but, being this is your first time, well... the policy is that first-timer's visiting alone need to rent an appropriate catsuit — the anonymity giving them safer opportunity for experimentation their first time.@@"
<</if>>
<<elseif setup.checkVisibleClothingTag('underwear') > 50>>
shakes her head. "@@.npc_guard;This is a fetish club, not a boudoir — as nice as those underthings look on you, I am afraid that is just too vanilla for me to grant entry.@@"
<<else>>
shakes her head. "@@.npc_guard;Sorry, but that isn't quite to code — we operate here by a strict dress code. Latex, leather, or at my discretion... and that ain't cutting it.@@"
<</if>>
<br><br>
You note a sign to one side marked "changing rooms." <br>
<br>
<<if ['catsuit_latex_headless_club_black','catsuit_latex_headless_club_red','catsuit_latex_headless_club_white','catsuit_latex_headless_club_pink'] == $scene.outfit>>
<<if !$npc_sex_club.flags.firstVisit>>
[<<moveTo 'event_sex_club_first_1' 'Head inside.' 60>>]<br>
<<else>>
[<<moveTo 'event_sex_club_interior' 'Head inside.' 60>>]<br>
<</if>>
<<elseif $scene.first>>
<<if !["fetish","latex"].includes(setup.analyzeWornTags(['fetish','cute','sissy','modest','latex']))>>
"@@.npc_guard;As a first time solo guest you'll need to rent an outfit. It's the rules — gives you an opportunity to check things out in a more standard manner. Next time you visit you'll be able to wear whatever you want — provided it meets the dress code, of course.@@"<br>
<br>
<</if>>
[<<moveTo 'event_sex_club_rental_1' 'Ask about outfit rentals.' 60>>]<br>
<<else>>
[<<moveTo 'event_sex_club_rental_1' 'Ask about outfit rentals.' 60>>]<br>
[<<moveTo 'event_sex_club_change' 'Enter the changing rooms.' 60>>]<br>
<</if>>
<<if ["fetish","latex"].includes(setup.analyzeWornTags(['fetish','cute','sissy','modest','latex'])) && !$scene.first>>
[<<moveTo 'event_sex_club_interior' 'Head inside.' 60>>]<br>
<</if>>
<<if !$scene.first>>
<<if $scene.guard_offer>>
[@@.link_locked;You have already "tipped" <<=setup.getNpcName("npc_guard", "formal")>> this evening.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_guard_help_1' 'Ask if <<=setup.getNpcName("npc_guard", "formal")>> accepts "tips."' 60>>]<br>
<</if>>
<</if>>
<<if setup.checkOutsideDecency()>>
[<<moveTo 'room_sex_club_exterior' 'Leave.' 60>>]
<<else>>
[@@.link_locked;You aren't going outside dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: changing room at the fetish club
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
You find an empty changing room and consider what you have that might fit the club's "dress code." <br>
<br>
<<if $player.sec_style.clothing.maid != "">>
<<if $npc_sex_club.flags.firstVisit && setup.getTotalValue("humiliation") >= 15>>
<<printThought "Latex, leather... or the guard's discretion... I wonder how she feels about maids? Or... what about nothing but chastity?">>
<<else>>
<<printThought "Latex, leather... or the guard's discretion... I wonder how she feels about maids?">>
<</if>>
<<else>>
<<if $npc_sex_club.flags.firstVisit && setup.getTotalValue("humiliation") >= 15>>
<<printThought "Latex, leather... or the guard's discretion... hmm... I wonder about nothing but chastity?">>
<<else>>
<<printThought "Latex, leather... or the guard's discretion...">>
<</if>>
<</if>>
<br><br>
<<if $now.getUTCHours() < 22 && setup.hasFreeTime($now, $player, $currentTasks, 14400) && $player.flags.boiless.sissy_hitch && State.hasPlayed("event_sex_club_event_first_4")>>
There is a dildo mounted to a pole on one side of the changing room...<br>
<br>
<<if $scene.hasOwnProperty("one_bar")>>
[@@.link_locked;You have already "inspected" the one-bar prison this evening.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_onebar_1' 'Inspect the pole-mounted dildo.' 180>>]<br>
<</if>>
<</if>>
<<if setup.checkNaked() && setup.checkItemTypeWorn("cage")>>
<<if $scene.humilAbort>>
[@@.link_locked;Go out wearing just chastity? Yeah, no, I tried that already tonight and... no.@@]
<<else>>
[<<moveTo 'event_sex_club_chastity_1' 'Walk out in nothing but your chastity device.' 60>>]
<</if>>
<<elseif setup.checkNaked() && setup.checkItemTypeTag('choker', ['leash_attachment']) && !($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
<<if $scene.humilAbort>>
[@@.link_locked;Go out naked? Yeah, no, I tried that already tonight and... no.@@]
<<else>>
[<<moveTo 'event_sex_club_chastity_1' 'Walk out naked save for your collar.' 60>>]
<</if>>
<<else>>
[<<moveTo 'room_sex_club_entrance' 'See if this outfit will work.' 60>>]
<</if>>
</div>/*#
#desc: sex club rental
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You approach the guard and ask if there are any dress-code appropriate outfits they might have for rent?<br>
<br>
She looks you over with a grin,
<<if $npc_sex_club.flags.firstVisit>>
"@@.npc_guard;Certainly — I can offer a basic catsuit in a number of colours. We also have a full pony gear tack, if you're looking for something more... restrictive. All are available for the evening for a nominal cash fee to cover wear (ha) and cleaning.@@"<br>
<br>
<<if $player.money.total >= 50>>
[<<moveTo 'event_sex_club_rental_2' 'Black catsuit — 50 credits.' 600 "<<set $scene.outfit='catsuit_latex_headless_club_black'>><<set $scene.price=50>>">>]<br>
<<else>>
[@@.link_locked;You cannot afford 50 credits for a basic black catsuit.@@]<br>
<</if>>
<<if $player.money.total >= 75>>
[<<moveTo 'event_sex_club_rental_2' 'Red catsuit — 75 credits.' 600 "<<set $scene.outfit='catsuit_latex_headless_club_red'>><<set $scene.price=75>>">>]<br>
[<<moveTo 'event_sex_club_rental_2' 'White catsuit — 75 credits.' 600 "<<set $scene.outfit='catsuit_latex_headless_club_white'>><<set $scene.price=75>>">>]<br>
[<<moveTo 'event_sex_club_rental_2' 'Pink catsuit — 75 credits.' 600 "<<set $scene.outfit='catsuit_latex_headless_club_pink'>><<set $scene.price=75>>">>]<br>
<<else>>
[@@.link_locked;You cannot afford 75 credits for a colourful catsuit.@@]<br>
<</if>>
<<if $player.money.total >= 125>>
[<<moveTo 'event_sex_club_rental_2' 'Pony gear — 125 credits.' 600 "<<set $scene.outfit='pony'>><<set $scene.price=125>>">>]<br>
<<else>>
[@@.link_locked;You cannot afford 125 credits for the pony outfit.@@]<br>
<</if>>
<<else>>
"@@.npc_guard;So as a first timer you'll be wearing something nice and basic — a nice black catsuit, suitable for any fetish gathering. A bonus is that your identity is concealed so you can really let wild and enjoy yourself. As an introductory offer — and because you're so gosh-dang cute, I'll even waive the normal rental fee... if you let me help shine you up once you're dressed.@@" She winks at you.<br>
<br>
[<<moveTo 'event_sex_club_rental_2' 'Accept her offer and get changed.' 600 "<<set $scene.outfit='catsuit_latex_headless_club_black'>>">>]<br>
<</if>>
[<<moveTo 'room_sex_club_entrance' 'Never mind.' 60>>]
</div>/*#
#desc: changing room at the fetish club
#status: FINISHED 0.8.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<switch $scene.outfit>>
<<case 'catsuit_latex_headless_club_black'>>
<<addItemSet 'catsuit_club_black'>>
<<wearItemSet 'catsuit_club_black'>>
<<case 'catsuit_latex_headless_club_red'>>
<<addItemSet 'catsuit_club_red'>>
<<wearItemSet 'catsuit_club_red'>>
<<case 'catsuit_latex_headless_club_white'>>
<<addItemSet 'catsuit_club_white'>>
<<wearItemSet 'catsuit_club_white'>>
<<case 'catsuit_latex_headless_club_pink'>>
<<addItemSet 'catsuit_club_pink'>>
<<wearItemSet 'catsuit_club_pink'>>
<<case 'pony'>>
<<addItemSet 'pony_girl'>>
<<wearItemSet 'pony_girl'>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.outfit>>
<<case 'catsuit_latex_headless_club_black'>>
You change into a black latex catsuit, the outfit hugging you like a second skin. Complete with a hood, it will protect your identity... and have you looking sleek and sexy.
<<case 'catsuit_latex_headless_club_red'>>
You change into a red latex catsuit, the outfit hugging you like a second skin. Complete with a hood, it will protect your identity... and have you looking red-hot and sexy.
<<case 'catsuit_latex_headless_club_white'>>
You change into a white latex catsuit, the outfit hugging you like a second skin. Complete with a hood, it will protect your identity and have you looking very far from "virginally pure."
<<case 'catsuit_latex_headless_club_pink'>>
You change into a pink latex catsuit, the outfit hugging you like a second skin. Complete with a hood, it will have you looking anonymously hot and sexy.
<<case 'pony'>>
You strap yourself up with a full set of pony tack — harness, gag, and steep pony boots. It fits like a glove and leaves your breathing hot and heavy.
<</switch>>
<br><br>
<<if $scene.first>>
[<<moveTo 'event_sex_club_first_1' 'Step out of the changing room.' 300>>]<br>
<<else>>
[<<moveTo 'event_sex_club_interior' 'Confirm your selection and head in to the club.' 60 "<<addCredits `-$scene.price`>>">>]<br>
[<<moveTo 'room_sex_club_entrance' 'Change your mind and change back out.' 60 "<<include 'removesex_clubOutfit'>><<useClothSetPop 'sex_club'>>">>]
<</if>>
</div><<switch $scene.outfit>>
<<case 'catsuit_latex_headless_club_black'>>
<<removeItemSet 'catsuit_club_black'>>
<<deleteItemSet 'catsuit_club_black'>>
<<case 'catsuit_latex_headless_club_red'>>
<<removeItemSet 'catsuit_club_red'>>
<<deleteItemSet 'catsuit_club_red'>>
<<case 'catsuit_latex_headless_club_white'>>
<<removeItemSet 'catsuit_club_white'>>
<<deleteItemSet 'catsuit_club_white'>>
<<case 'catsuit_latex_headless_club_pink'>>
<<removeItemSet 'catsuit_club_pink'>>
<<deleteItemSet 'catsuit_club_pink'>>
<<case 'pony'>>
<<removeItemSet 'pony_girl'>>
<<deleteItemSet 'pony_girl'>>
<</switch>>
<<deleteMember $scene 'outfit'>>/*#
#desc: sex club interior
#status: RELEASED 0.8.5.0
#ignore_spell: qr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.hasOwnProperty('sex_club_info')>>
<<set $scene.sex_club_info = setup.generateSexClub()>>
<<if $currentTasks.hasOwnProperty("ai_mission_primrose_club") && !$currentTasks.ai_mission_primrose_club.finished>>
<<if $scene.sex_club_info.bathroom && $scene.sex_club_info.bathroom.id == "primrose">>
<<deleteMember $scene.sex_club_info "bathroom">>
<</if>>
<<if $scene.sex_club_info.dance && $scene.sex_club_info.dance.id == "primrose">>
<<deleteMember $scene.sex_club_info "dance">>
<</if>>
<<if $scene.sex_club_info.bar && $scene.sex_club_info.bar.id == "primrose">>
<<deleteMember $scene.sex_club_info "bar">>
<</if>>
<<if random(1,2) == 1 && $scene.sex_club_info.play>>
<<set $scene.sex_club_info.play.id = "primrose">>
<</if>>
<</if>>
<<if $scene.sex_club_info.hasOwnProperty('event') && $now.getUTCHours() < 23 && $now.getUTCHours() > 12>>
<<set _nextHour = $now.getUTCHours()+1>>
<<set _nextDate = setup.setNextDate($now, 0, _nextHour, 0)>>
<<addEvent 'sex_club_event' _nextDate>>
<</if>>
<</if>>
<<if !($now.getUTCHours() >= 1 && $now.getUTCHours() < 18) && !$scene.first>>
<<set _nextDate = setup.setNextDate($now, 1, 0, 0)>>
<<addEvent 'sex_club_end' _nextDate>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.hasOwnProperty('main') && !($now.getUTCHours() >= 1 && $now.getUTCHours() < 18)>>
<<switch $scene.sex_club_info.main.id>>
<<case "maidMistress">>
<<createAdvBGR "./images/locations/sex_club_interior.png" "./images/characters/maid_mistress.png">>
<<case "fit_bimbo">>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_fit_bimbo") _TODOfitbimbos>>
<<case "shoestore">>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_shoestore_manager","npc_shoestore_pony")>>
<<case "futa">>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<<case "discipline">>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_discipline","npc_discipline_3") setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_discipline","npc_discipline_3") setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<</switch>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() >= 1 && $now.getUTCHours() < 18>>
Everywhere you look customers are making their way to the exists while the staff ushers them out or is attending to clean-up.<br>
<br>
[<<moveTo 'event_sex_club_end_night' 'It appears the night is coming to a close...' 300>>]<br>
<<else>>
<<if !$scene.sex_club_info.hasOwnProperty('main') || $scene.sex_club_info.main.id != "discipline">>
You see
<<if $scene.sex_club_info.owner.dom>>
<<=setup.getNpcName("npc_sex_club", "formal")>> dressed in stunning, and dominant leather attire.<br>
<br>
[<<moveTo 'event_sex_club_owner' 'Talk with the club owner.' 60>>]<br>
<<else>>
<<if $npc_sex_club.flags.gimp>>
<<=setup.getNpcName("npc_sex_club", "nickname")>> dressed and restrained in a leather gimp suit.<br>
<br>
[<<moveTo 'event_sex_club_owner' 'Talk with the gimp-attired club owner.' 60>>]<br>
<<else>>
a somehow familiar <<man npc_sex_club>> dressed head to toe in a leather gimp suit.<br>
<br>
[<<moveTo 'event_sex_club_owner' 'Approach the <<man npc_sex_club>> in the gimp suit.' 60>>]<br>
<</if>>
<</if>>
<br>
<</if>>
<<if $scene.sex_club_info.hasOwnProperty('main')>>
<<switch $scene.sex_club_info.main.id>>
<<case "maidMistress">>
<<switch $npc_landlord.flags.cleaning.maid_mistress>>
<<case 0>>
You see an imperious Mistress standing around, but do not have the courage to approach her.
<<case 1>>
You see an imperiously-dressed Mistress... who looks very similar to a certain client whose apartment you have cleaned. You feel too nervous to approach her.
<<case 2 3>>
You see one of your maid "clients" — dressed in full imperious Mistress regalia.
<<case 4>>
You see <<=setup.getNpcName("npc_maid_mistress", "formal")>> — dressed in full imperious Mistress regalia
<<default>>
ERROR: unexpected npc_landlord.flags.cleaning.maid_mistress <<=$npc_landlord.flags.cleaning.maid_mistress>>
<</switch>>
<br><br>
<<if $scene.sex_club_info.hasOwnProperty('danceFloor') && $scene.sex_club_info.danceFloor.seen && $npc_landlord.flags.cleaning.maid_mistress > 1>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_maid_mistress", "formal")>> this evening.@@]
<<elseif $npc_landlord.flags.cleaning.maid_mistress < 2>>
[@@.link_locked;<<=setup.getNpcName("npc_maid_mistress", "formal")>> turns away without acknowledging you.@@]
<<else>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
She smiles at the sight of you in your maid finery.<br>
<br>
[<<moveTo 'event_sex_club_maid_mistress_1' 'Approach <<=setup.getNpcName("npc_maid_mistress", "formal")>>.' 60>>]
<<else>>
The woman glances in your direction and then turns away in dismissal.<br>
<br>
<<printThought "Hmm... maybe if I was dressed as a maid?">>
<</if>>
<</if>>
<<case "shoestore">>
<<if $npc_shoestore_manager.profile>>
Looming higher than any other patron you see <<=setup.getNpcName("npc_shoestore_manager", "first")>> and <<=setup.getNpcName("npc_shoestore_assistant", "first")>> — the proprietors of <<printShopName 'mall_shoe_store'>> in the mall. <<=setup.getNpcName("npc_shoestore_assistant", "first")>> — already tall naturally — is raised above every other party-goer on a set of stunning pony boots. The rest of her body is bound with a full pony harness, including feathered headpiece and bit gag. Riding on her back on a modified side-saddle is the far shorter <<=setup.getNpcName("npc_shoestore_manager", "first")>> dressed very sharply in French riding habit.<br>
<br>
<<if $scene.sex_club_info.main.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_shoestore_manager", "first")>> and <<=setup.getNpcName("npc_shoestore_assistant", "first")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_shoestore_1' 'Approach <<=setup.getNpcName("npc_shoestore_manager", "first")>> and <<=setup.getNpcName("npc_shoestore_assistant", "first")>>.' 60>>]
<</if>>
<<else>>
Looming over every other patron are a stunning pair — a towering giantess of a cybernetic woman raised even higher by the ponyboots that are a part of her exquisite human pony ensemble — complete with an adapted saddle upon which rides her far shorter, but very sharply dressed rider.<br>
<br>
You can only stare at the pair in awe, unable to muster the courage to approach... though you swear there is something familiar about them under all the fetish attire.<br>
<br>
<<printThought "Maybe I've seen them at the mall or something?">>
<</if>>
<<case "futa">>
<<if $npc_futa.stage >= 4>>
Looking around you spot <<=setup.getNpcName('npc_futa', 'first')>>... with a somewhat awkwardly nervous <<if $options.fem>>girl<<else>>dude<</if>> standing next to her on her leash.<br>
<br>
<<printThought "Must be her <<boy>>friend...">><br>
<br>
<<if $scene.sex_club_info.main.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName('npc_futa', 'first')>> and her <<boy>>friend this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_futa_1' 'Approach <<=setup.getNpcName("npc_futa", "first")>>.' 60>>]
<</if>>
<<else>>
You do not see anyone to talk to.
<</if>>
<<case "discipline">>
<<if $npc_discipline.stage > 3>>
Clad in latex, standing tall in thigh-high boots and with a whip at her hip and a large dildo sprouting from her polished loins, <<=setup.getNpcName("npc_discipline", "formal")>> looks intimidating and ready for business as she casually chats with
<<if $scene.sex_club_info.owner.dom>>
<<=setup.getNpcName("npc_sex_club", "formal")>>.
<<else>>
<<=setup.getNpcName("npc_sex_club", "nickname")>>,
<</if>>
<br><br>
<<if $scene.sex_club_info.main.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_discipline", "formal")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_discipline_1' 'Approach <<=setup.getNpcName("npc_discipline", "formal")>>.' 60>>]
<</if>>
<<else>>
You do not see anyone to talk to.
<</if>>
<<case "fit_bimbo">>
Even in the sexy world of the club, <<=setup.getNpcName("npc_fit_bimbo","first")>>, and her "Team Plastic" entourage stand out.<br>
<br>
<<if $scene.sex_club_info.main.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_fit_bimbo","first")>> this evening.@@]
<<else>>
<<if State.hasPlayed("event_fit_bimbo_sexclub_talk_first_1")>>
[<<moveTo 'event_sex_club_fit_bimbo_1' 'Approach <<=setup.getNpcName("npc_fit_bimbo","first")>> and friends.' 60>>]
<<else>>
[<<moveTo 'event_fit_bimbo_sexclub_talk_first_1' 'Approach <<=setup.getNpcName("npc_fit_bimbo","first")>> and friends.' 60>>]
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.sex_club_info.main.id <<=$scene.sex_club_info.main.id>>
<</switch>>
<<else>>
You do not see anyone else to talk to.
<</if>>
<br><br>
[<<moveTo 'event_sex_club_bar' 'Swing by the bar.' 1200>>]<br>
[<<moveTo 'event_sex_club_play' 'Check out the "play" area.' 1200>>]<br>
[<<moveTo 'event_sex_club_dance' 'Hit the dance floor.' 1200>>]<br>
<<if State.hasPlayed('event_sexclub_broken_bathroom_4')>>
<<if $scene.sex_club_info.bathroom && $scene.sex_club_info.bathroom.seen>>
[@@.link_locked;You have already used the bathroom this evening.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_bathroom' 'Visit the bathroom.' 1200>>]<br>
<</if>>
<</if>>
[<<moveTo 'event_sex_club_leave' 'Leave the club.' 1200 "<<removeEvent 'sex_club_end'>>">>]
<</if>>
</div><<if $now.getUTCHours() >= 1 && $now.getUTCHours() < 18>>
[<<moveTo 'event_sex_club_end_night' 'It appears the night is coming to a close...' 300>>]<br>
<<else>>
[<<moveTo 'event_sex_club_bar' 'Swing by the bar.' 1200>>]<br>
[<<moveTo 'event_sex_club_play' 'Check out the "play" area.' 1200>>]<br>
[<<moveTo 'event_sex_club_dance' 'Hit the dance floor.' 1200>>]<br>
[<<moveTo 'event_sex_club_interior' 'Return to the main area.' 180>>]
<</if>>/*#
#desc: sex club bar
#status: RELEASED 0.8.5.0
#ignore_spell: foxgirl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.hasOwnProperty('bar') && !($now.getUTCHours() >= 1 && $now.getUTCHours() < 18)>>
<<switch $scene.sex_club_info.bar.id>>
<<case "sexStoreClerk">>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImageGeneric("party_bartender") setup.charImage("npc_sexstore_clerk")>>
<<case "psychiatrist">>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImageGeneric("party_bartender") setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<<case "hr_retention">>
<<if $npc_retention.stage > 3>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImageGeneric("party_bartender") setup.charImage("npc_retention")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImageGeneric("party_bartender")>>
<</if>>
<<case "foxgirl">>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImageGeneric("party_bartender") "foxgirl">>
<</switch>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImageGeneric("party_bartender")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() >= 1 && $now.getUTCHours() < 18>>
You approach the bar. The latex-clad barkeeper seems to be in the process of packing up and meeting <<his>> eye only causes <<him>> to shake <<his>> head.<br>
<br>
[<<moveTo 'event_sex_club_end_night' 'It appears the night is coming to a close...' 300>>]
<<else>>
You approach the bar. The latex-clad barkeeper nods at you and before noting a prominent sign indicating that customers will be cut off at the slightest hint of intoxication.<br>
<br>
<<printThought "Given what's going on, I guess that makes sense... though at these prices, who could afford to get drunk?">><br>
<br>
<<if setup.hasTmpEffect('tipsy') || setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted')>>
The bartender takes one look at you and shakes <<his>> head. Seems that they're serious about that "cutting off" rule.
<<else>>
[<<moveTo "room_order_drink" "Order a drink." 0 "<<set $scene.postDrink = 'event_sex_club_bar'>><<set $scene.drinkLoc=$player.location>><<set $scene.drinkBGR = './images/locations/sex_club_bar.png'>><<set $scene.drinkChar = setup.charImageGeneric('party_bartender')>><<set $scene.priceMulti=2>>">>]<br>
<</if>>
<br>
<<if $scene.sex_club_info.hasOwnProperty('bar') && $scene.sex_club_info.bar.id>>
<<switch $scene.sex_club_info.bar.id>>
<<case "sexStoreClerk">>
<<if $npc_sexstore_clerk.profile>>
You see <<=setup.getNpcName('npc_sexstore_clerk', 'first')>>, the clerk at <<printShopName 'mall_sexstore'>> in the mall.<br>
<br>
<<if $scene.sex_club_info.bar.seen>>
[@@.link_locked;You have already talked to <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_sexStoreClerk_1' 'Approach <<=setup.getNpcName("npc_sexstore_clerk", "first")>>.' 60>>]
<</if>>
<<else>>
Nobody at the bar seems particularly interested in talking to you.
<</if>>
<<case "psychiatrist">>
You see <<=setup.getNpcName("npc_psychiatrist","formal")>>, your therapist, sitting at the bar.<br>
<br>
<<if $scene.sex_club_info.bar.seen>>
[@@.link_locked;You have already talked to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_psychiatrist_1' 'Approach <<=setup.getNpcName("npc_psychiatrist", "formal")>>.' 60>>]
<</if>>
<<case "hr_retention">>
<<if $npc_retention.stage > 3>>
You see <<=setup.getNpcName('npc_retention', 'formal')>>, dressed in the same leather uniform <<he npc_retention>> wears at work.
<<if $fetish.pet_play>>
Drinking from a bowl at <<his npc_retention>> feet is <<his npc_retention>> "pet" in a full bitchsuit.
<<else>>
<<His npc_retention>> "pet" is wearing a slave harness kneeling obedient and leashed at <<his npc_retention>> side.
<</if>>
<br><br>
<<if $scene.sex_club_info.bar.seen>>
[@@.link_locked;You have already talked to <<=setup.getNpcName('npc_retention', 'formal')>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_hr_retention_1' 'Approach <<=setup.getNpcName("npc_retention", "formal")>>.' 60>>]
<</if>>
<<else>>
Nobody at the bar seems particularly interested in talking to you.
<</if>>
<<case "primrose">>
You see <<=setup.getNpcName("npc_primrose","first")>>, the shut-in scientist from the R&D department, recognisable by <<his npc_primrose>> steep company collar and <<his npc_primrose>> kigurumi mask.<br>
<br>
<<if $scene.sex_club_info.bar.seen>>
[@@.link_locked;You have already talked to <<=setup.getNpcName('npc_primrose', 'first')>> this evening.@@]
<<elseif $npc_primrose.flags.evil == 1>>
To your surprise, you catch <<=setup.getNpcName("npc_primrose","first")>> at the club's bar. <<he npc_primrose>> is wearing what <<he npc_primrose>> wore to work, foregoing <<his npc_primrose>> usually flashy attire.<br>
<br>
[<<moveTo 'event_sex_club_primrose_bar_intro' 'Approach <<=setup.getNpcName("npc_primrose", "first")>>.' 60>>]
<<else>>
[<<moveTo 'event_sex_club_primrose_bar_intro' 'Approach <<=setup.getNpcName("npc_primrose", "first")>>.' 60>>]
<</if>>
<<case "foxgirl">>
You spot a cute blonde foxgirl dressed in a somewhat skimpy latex kimono and a pair of sexy pumps sipping a drink at the bar. She notices your attention and winks as if invitation, her bushy tail swinging invitingly.<br>
<br>
[<<moveTo 'event_sex_club_fox_1' 'Approach the foxgirl.' 60>>]
<<default>>
ERROR: unexpected scene.sex_club_info.bar.id <<=$scene.sex_club_info.bar.id>>
<</switch>>
<<else>>
Nobody at the bar seems particularly interested in talking to you.
<</if>>
<br><br>
[<<moveTo 'event_sex_club_play' 'Check out the "play" area.' 1200>>]<br>
[<<moveTo 'event_sex_club_dance' 'Hit the dance floor.' 1200>>]<br>
[<<moveTo 'event_sex_club_interior' 'Return to the main area.' 180>>]
<</if>>
</div>/*#
#desc: sex club play area
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex_club_info.play && $scene.sex_club_info.play.id == "cook" && !$npc_cook.flags.porn.handjob_successful>>
<<deleteMember $scene.sex_club_info 'play'>>
<</if>>
<<if $scene.sex_club_info.play && $scene.sex_club_info.play.id == "primrose" && (!$currentTasks.hasOwnProperty("ai_mission_primrose_club") || $currentTasks.ai_mission_primrose_club.finished)>>
<<deleteMember $scene.sex_club_info 'play'>>
<</if>>
<<if $scene.sex_club_info.play && $scene.sex_club_info.play.id == "exgirlfriend_dom" && !$npc_exgirlfriend.flags.bitch>>
<<set $scene.sex_club_info.play.id = "exgirlfriend_foreshadow">>
<<set $scene.bitchFirst = true>>
<<set $npc_exgirlfriend.flags.bitch = true>>
<<else>>
<<set $scene.bitchFirst = false>>
<</if>>
<<if $scene.sex_club_info.play && $scene.sex_club_info.play.id == "exgirlfriend_sub">>
<<set $npc_exgirlfriend.flags.club_sub = true>>
<</if>>
<<if $scene.sex_club_info.play && $scene.sex_club_info.play.id == "dunk" && $now.getUTCHours() < 23 && $now.getUTCHours() > 12>>
<<if !State.hasPlayed("event_sex_club_dunk_1")>>
<<initRoom>>
<<moveTo "event_sex_club_dunk_1">>
<<else>>
<<if $fetish.cum && !$fetish.piss>>
<<set $scene.dunkStyle = "cum">>
<<elseif $fetish.piss && !$fetish.cum>>
<<set $scene.dunkStyle = "piss">>
<<elseif random(1,2) == 1>>
<<set $scene.dunkStyle = "cum">>
<<else>>
<<set $scene.dunkStyle = "piss">>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.hasOwnProperty('play') && !($now.getUTCHours() >= 1 && $now.getUTCHours() < 18)>>
<<switch $scene.sex_club_info.play.id>>
<<case "exgirlfriend_dom">>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch")>>
<<case "exgirlfriend_sub">>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_topless")>>
<<case "exgirlfriend_foreshadow">>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImageGeneric("generic_sex_club_male") setup.charImageGeneric("generic_sex_club_male2")>>
<<case "nun">>
<<createAdvBGR "./images/locations/sex_club_play.png" "npc_nun_chastity">>
<<case "cook">>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_cook","npc_cook_club")>>
<<case "martial_arts">>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_martial_arts","npc_martial_arts_club")>>
<<case "" "dunk">>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<<case "primrose">>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.getPrimroseImage("club")>>
<</switch>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<</if>>
<div id="invframe" class="scrolltext">
You approach the designated "play" area. A section of the club filled with bondage furniture and sex machines where interested parties can have a bit of "public" fun.
<<if $now.getUTCHours() >= 1 && $now.getUTCHours() < 18>>
Everywhere you look people seem to be in the process of packing up.<br>
<br>
[<<moveTo 'event_sex_club_end_night' 'It appears the night is coming to a close...' 300>>]<br>
<<else>>
You also note a couple of doors beyond that look to lead to more private rooms.<br>
<br>
<<if $scene.sex_club_info.hasOwnProperty('play') && $scene.sex_club_info.play.id != "">>
<<switch $scene.sex_club_info.play.id>>
<<case "exgirlfriend_dom">>
<<if $npc_manager.stage >= 3 && ($npc_exgirlfriend.flags.sexclub.peg_talk || (!$npc_exgirlfriend.flags.sexclub.pegged && setup.checkItemTypeWorn('hood')))>>
You spot <<=setup.getNpcName("npc_exgirlfriend","first")>>, your ex-girlfriend. She is "dressed" in a very tight latex top. A large <<if $fetish.bestiality_soft>>canine-inspired<<else>>strap-on<</if>> penis hangs from a sturdy leather harness buckled over her hips, heavy combat boots buckled up to her knee adding to her "edge" and you somehow sense that this is "THE BITCH" that you've heard about.<br>
<br>
<<if $npc_exgirlfriend.flags.sexclub.pegged>>
She recognises you and greets you with a wave and a grin.<br>
<br>
<<if $scene.sex_club_info.play.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_exgirlfriend","first")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_exgf_dom_1' 'Approach <<=setup.getNpcName("npc_exgirlfriend","first")>>.' 60>>]
<</if>>
<<else>>
Thanks to your fetish attire, and mask, she does not appear to recognise you...<br>
<br>
<<if $scene.sex_club_info.play.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_exgirlfriend","first")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_exgf_dom_1' 'Approach <<=setup.getNpcName("npc_exgirlfriend","first")>>.' 60>>]
<</if>>
<</if>>
<<else>>
Everyone in the play area seems otherwise occupied and they pay no attention to you.
<</if>>
<<case "exgirlfriend_sub">>
Wandering through the play area, much of the attention seems focused on a woman who is in the midst of being flogged. There is something oddly familiar about her and you move a bit closer before you realise that it's <<=setup.getNpcName("npc_exgirlfriend","first")>>, your ex-girlfriend!<br>
<br>
Strapped over a spanking bench, her ass and back are criss-crossed with red marks. From the way she's dripping, she must be enjoying the harsh treatment... well, that, or something to do with the large plug buzzing in her rear — "anal doesn't count," indeed.<br>
<br>
Blindfolded, and with a heavy set of earmuffs over her head, she has no way of knowing that you are here watching... though from the way she is slack-jaw drooling past her gag... she might be too deep in subspace to care.
<<case "exgirlfriend_foreshadow">>
You are wandering through the play area, observing a handful of different scenes of couples utilising the various bondage equipment and fucking machines, some with audiences of varying sizes.
<<if $scene.bitchFirst>>
Nobody seems to pay much attention to your presence, but you end up overhearing a pair of <<guy>>s chatting as you pass.<br>
<br>
"@@.generic_male1;So you think The Bitch is going to be here tonight?@@" One of them asks. From <<his>> tone you get the feeling that whoever "The Bitch" is... they are someone to be feared...<br>
<br>
"@@.generic_male2;Nah, if she was going to show we'd have seen her by now.@@"<br>
<br>
<<if $fetish.bestiality_soft>>
"@@.generic_male1;Damn, I was really looking forward to feeling her knot my ass again...@@"
<<else>>
"@@.generic_male1;Damn, she wields a strap-on like few women I've ever met. I was really looking forward to getting pegged again!@@"<br>
<</if>>
<br><br>
"@@.generic_male2;You and me both! I've been practicing all week in hopes of taking her all the way!@@"<br>
<br>
"@@.generic_male1;I'm telling you — chastity as motivator, lock yourself up until you can take it like a proper butt-slut. Having access to your peen is just a distraction from learning how to analgasm.@@"<br>
<br>
"@@.generic_male2;Yeah, maybe you're right...@@"<br>
<br>
Their voices fade as you move past, worried that if you linger further you might draw attention.
<<else>>
Somehow the two <<guy>>s are STILL talking about "The Bitch" as you walk past.
<</if>>
<br><br>
<<printThought 'Dang, I really wonder who "The Bitch" is...'>>
<<case "nun">>
You see <<if $player.flags.church.level >= 2>><<=setup.getNpcName('npc_nun_chastity', 'formal')>>, clad in skin-tight latex<<else>>a latex-clad nun<</if>> standing watching the play area.<br>
<br>
<<if $scene.sex_club_info.play.seen>>
[@@.link_locked;You have already visited with <<if $player.flags.church.level >= 2>><<=setup.getNpcName('npc_nun_chastity', 'formal')>><<else>>the nun<</if>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_nun_1' 'Approach the nun.' 60>>]
<</if>>
<<case "cook">>
You see <<=setup.getNpcName("npc_cook","first")>>, the canteen worker you see every day at work when you go for lunch. <<Hes npc_cook>> sitting idly by on one side of the play area... and you can't help but gawk.<br>
<br>
<<if $npc_cook.flags.porn.first_handjob>>
There is something about seeing <<=setup.getNpcName("npc_cook","first")>> and <<his npc_cook>> truly monstrous <<if $fetish.bestiality_soft>>horse-<</if>>cock in public that <<if $npc_cook.flags.porn.handjob_successful>>even after your prior experience, still <</if>>takes your breath away.
<<else>>
<<=setup.getNpcName("npc_cook","first")>> may be sitting down, but from between <<his npc_cook>> legs sprouts a truly monstrous <<if $fetish.bestiality_soft>>horse-<</if>>cock; larger than anything you've ever seen on a human.
<</if>>
<<He npc_cook>> appears to be the subject of some sort of contest, as men and women occasionally attempt to deep-throat <<his npc_cook>> magnificence... though none that you see appear up to the task of swallowing <<his npc_cook>> mighty sword.<br>
<br>
<<if $scene.sex_club_info.play.seen>>
[@@.link_locked;You have already visited <<=setup.getNpcName("npc_cook","first")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_cook_1' 'Approach <<=setup.getNpcName("npc_cook","first")>>.' 60>>]
<</if>>
<<case "martial_arts">>
<<if $npc_martial_arts.profile && !setup.checkItemTypeWorn('hood')>>
You see <<=setup.getNpcName("npc_martial_arts","formal")>>, dressed in a tight, slippery latex wrestler's singlet. She seems to be offering an open challenge to "wrestle" with other guests.<br>
<br>
<<if $scene.sex_club_info.play.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_martial_arts","formal")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_martial_arts_1' 'Approach <<=setup.getNpcName("npc_martial_arts","formal")>>.' 60>>]
<</if>>
<<else>>
You see a scary looking woman throwing people around on one side of the play area in some sort of quasi... wrestling... thing? Match?
<</if>>
<<case "primrose">>
You spy with your little eye something very pink sticking out of the intimately lit play area. It's <<=setup.getNpcName("npc_primrose","first")>>!<<if $npc_primrose.flags.evil == 1>> There is something about <<his npc_primrose>> that has <<him npc_primrose>> looking significantly happier than you've seen in awhile... looking much more "doll" than <<his npc_primrose>> dour self of late. <<printThought "Maybe it's something about the doll mask instead of that creepy pink visor <<he npc_primrose>>'s always wearing now?">><</if>><br>
<br>
<<if $scene.sex_club_info.play.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_primrose","first")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_primrose_play_area_1' 'Approach <<=setup.getNpcName("npc_primrose","first")>>.' 60>>]
<</if>>
<<case "dunk">>
It looks like the dunk tank is back...
<<if $now.getUTCHours() < 23 && $now.getUTCHours() > 12>>
the barker trying to wrangle up a new "competitor" to take their seat above the deep tank of <<=$scene.dunkStyle>>.<br>
<br>
[<<moveTo 'event_sex_club_dunk_repeat_1' 'Walk over to the dunk tank.' 60>>]
<<else>>
but the barker is quiet and it looks like they're packing up for the evening.<br>
<br>
<<printThought "Dang, should have swung by earlier, when there was still time to play...">>
<</if>>
<<case "lilith">>
As you wander the play area you spot the familiar face of <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>>, though only after a bit of a double take as she is hanging out "out of character" without the literal porn-star quantity of makeup she uses on-screen. She is sitting casually on a couch, dressed in a leather outfit that deliberately leaves her breasts and crotch exposed while covering everything else and just seeming to soak in the atmosphere as she lets here gaze wander the club.<br>
<br>
Between her legs kneels one of the club's patrons, alternating between kissing <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> balls and struggling to take her length down their throat. Exuding confidence and control as the proverbial centre of attention, <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> arms are spread wide, draped possessively over the shoulders of two of her frequent co-stars, the two other women occasionally glancing down with a mix of amusement and pity at the enthusiastic fan struggling with <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> magnificent star power.<br>
<br>
<<if $scene.sex_club_info.play.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_lilith_1' 'Approach <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>>.' 60>>]
<</if>>
<<default>>
ERROR: unexpected scene.sex_club_info.play.id <<=$scene.sex_club_info.play.id>>
<</switch>>
<<else>>
You do not see anyone to approach in the play area.
<</if>>
<br><br>
[<<moveTo 'event_sex_club_bar' 'Swing by the bar.' 1200>>]<br>
[<<moveTo 'event_sex_club_dance' 'Hit the dance floor.' 1200>>]<br>
[<<moveTo 'event_sex_club_interior' 'Return to the main area.' 180>>]
<</if>>
</div>/*#
#desc: sex club dance floor
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.hasOwnProperty('danceFloor') && !($now.getUTCHours() >= 1 && $now.getUTCHours() < 18)>>
<<switch $scene.sex_club_info.danceFloor.id>>
<<case "shopkeeper">>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_shopkeeper","npc_shopkeeper_club")>>
<<case "rpgFriends">>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_rpg_warlock","npc_rpg_warlock_club") setup.charImage("npc_rpg_dude","npc_rpg_dude_club")>>
<<case "sexdoll">>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<</switch>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_dance.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCHours() >= 1 && $now.getUTCHours() < 18>>
You look across the rapidly emptying dance floor, the performance area looking somewhat depressing with the house lights up and no music playing.<br>
<br>
[<<moveTo 'event_sex_club_end_night' 'It appears the night is coming to a close...' 300>>]<br>
<<else>>
You look across the dance floor — there is perhaps a bit less "movement" than a normal club, given how many of the dancers are sporting steep heels or are bound in some manner. What is there is MUCH more erotic: a groping, grinding mash of flesh, leather, and latex with it not unusual for one, two, or more to peel off from the dance floor and head straight to the "play" area.<br>
<br>
<<if $scene.sex_club_info.hasOwnProperty('danceFloor')>>
<<switch $scene.sex_club_info.danceFloor.id>>
<<case "shopkeeper">>
<<if $npc_shopkeeper.profile>>
You recognise <<=setup.getNpcName("npc_shopkeeper","first")>>, the shopkeeper from the mall, jamming out in the centre of the dance floor. She is dressed in a stunning fashion runway latex ensemble. The current song comes to an end and she moves to the edge of the floor to get a drink.<br>
<br>
<<if $scene.sex_club_info.danceFloor.seen>>
[@@.link_locked;You have already chatted with <<=setup.getNpcName("npc_shopkeeper","first")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_shopkeeper_1' 'Approach <<=setup.getNpcName("npc_shopkeeper","first")>>.' 60>>]
<</if>>
<<else>>
At the centre of the dance floor is a large woman in a runway-quality fashion ensemble jamming out, her enthusiastic momentum causing the rest of the dancers to orbit around her. You watch in awe, unable to even consider interrupting her.
<</if>>
<<case "rpgFriends">>
<<if $npc_rpg_warlock.profile>>
You spot your friends <<=setup.getNpcName("npc_rpg_warlock","first")>> and <<=setup.getNpcName("npc_rpg_dude","first")>> jamming out on the dance floor. Their normal pairing of punk/goth and metal-head has been amped up to the extreme with the incorporation of latex and VERY tight leather. <<=setup.getNpcName("npc_rpg_warlock","first")>> uses the leash clipped to her <<boy npc_rpg_dude>>friend's collar to guide <<him npc_rpg_dude>> through the dance, the passionate couple occasionally drawing another club-goer into their orbit for a verse or two before the guest sling-slingshots away like a passing comet.<br>
<br>
<<if !setup.checkItemTypeWorn('hood')>>
In a lull between songs they notice you and wave.<br>
<<else>>
You realise that, with your face hidden, they cannot recognise you.
<</if>>
<br><br>
<<if $scene.sex_club_info.danceFloor.seen>>
[@@.link_locked;You have already visited with your friends this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_rpgFriends_1' 'Approach your friends.' 60>>]
<</if>>
<<else>>
You find your gaze drifting towards
<<if $npc_rpg_dude.fem>>
two women dancing. One is rocking a sort of goth/punk look, while the other is very "metal-head" — but both their outfits have been pushed to eye-catching extreme with the incorporation of latex and fantastically tight leather. The collar the metal-head wears — and the leash goth/punk
<<else>>
a pair of dancers: a man and a woman. She is rocking a sort of goth/punk look, while he is very "metal-head" — but both their outfits have been pushed to eye-catching extreme with the incorporation of latex and fantastically tight leather. The collar he wears — and the leash she
<</if>>
holds — advertises their relationship. They do not merely dance together, instead acting like a binary pair of stars that often draws others temporarily in to the orbit of their passionate movements.<br>
<br>
As awed as you are by the pair, you can't quite muster the courage to approach them.
<</if>>
<<case "sexdoll">>
<<if $npc_sexdoll.stage >= 4>>
You spot <<=setup.getNpcName("npc_sexdoll","first")>> on the dance floor writhing, grinding and generally looking INCREDIBLY slutty in barely any clothes at all.<br>
<br>
<<if $scene.sex_club_info.danceFloor.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_sexdoll","first")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_sexdoll_1' 'Approach <<=setup.getNpcName("npc_sexdoll","first")>>.' 60>>]
<</if>>
<<else>>
None of the dancers appear particularly approachable.
<</if>>
<<case "primrose">>
You notice a shiny kigurumi doll dancing within a throng of bright pink bimbos on the dance floor. You'd wager your last dollar it's <<=setup.getNpcName("npc_primrose","first")>>.<br>
<br>
<<if $scene.sex_club_info.danceFloor.seen>>
[@@.link_locked;You have already visited with <<=setup.getNpcName("npc_primrose","first")>> this evening.@@]
<<else>>
[<<moveTo 'event_sex_club_primrose_dancefloor' 'Approach <<=setup.getNpcName("npc_primrose","first")>>.' 60>>]
<</if>>
<<default>>
ERROR: unexpected scene.sex_club_info.dance_floor.id <<=$scene.sex_club_info.danceFloor.id>>
<</switch>>
<<else>>
None of the dancers appear particularly approachable.
<</if>>
<br><br>
[<<moveTo 'event_sex_club_bar' 'Swing by the bar.' 1200>>]<br>
[<<moveTo 'event_sex_club_play' 'Check out the "play" area.' 1200>>]<br>
[<<moveTo 'event_sex_club_interior' 'Return to the main area.' 180>>]
<</if>>
</div>/*#
#desc: sex club event trigger
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !["event_sex_club_bar", "event_sex_club_play", "event_sex_club_interior", "event_sex_club_dance","sex_club_event_intro"].includes($scene.beforetasklocation.last())>>
<<addEvent 'sex_club_event_interior'>>
<<addEvent 'sex_club_event_play'>>
<<addEvent 'sex_club_event_dance'>>
<<addEvent 'sex_club_event_bar'>>
<<initRoom>>
<<set _before = $scene.beforetasklocation.pop()>>
<<set $scene.beforetasklocation.push("sex_club_event_intro")>>
<<moveTo _before>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png">>
<div id="invframe" class="scrolltext">
There is a sudden commotion in the direction of the stage. The dance floor goes quiet as the dancers and club-goers migrate over to watch the show.<br>
<br>
[<<moveTo $scene.sex_club_info.event 'Continue.' 180>>]
</div>/*#
#desc: sex club leave
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.sex_club_info.hasOwnProperty('event') || $scene.sex_club_info.event != "event_sex_club_event_first_1">>
<<include "clearSexClubEvent">>
<<set $scene.rentedOutfit = $scene.outfit>>
<<if $scene.rentedOutfit>>
<<include "removesex_clubOutfit">>
<<useClothSetPop 'sex_club'>>
<<elseif !setup.checkOutsideDecency()>>
<<useClothSetPush 'sclubcheck'>>
<<set $scene.changeOutfit = $clothSetsInt.sex_club.data != $clothSetsInt.sclubcheck.data>>
<<useClothSetPop 'sclubcheck'>>
<<useClothSetPop 'sex_club'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex_club_info.hasOwnProperty('event') && $scene.sex_club_info.event == "event_sex_club_event_first_1" && !$npc_sex_club.flags.firstVisit>>
You are about to leave when you notice a commotion going on at the stage on one side of the club. The dance floor has gone silent as it seems everyone is migrating to check out the show.<br>
<br>
<<printThought "Huh, well... might as well stay a little longer, right?">><br>
<br>
[<<moveTo 'event_sex_club_event_first_1' 'Watch the show.' 60>>]
<<else>>
You head for the exit.
<<if $scene.rentedOutfit>>
Stopping off in the changing room, you change back into your "street" clothes and hand in your rental outfit. The guard bids you good-night as you head out.
<<elseif $scene.changeOutfit>>
You stop off in the changing rooms to revert back to the clothes you came with.
<<else>>
On your way out you wave at <<=setup.getNpcName("npc_guard","formal")>>, then head out into the night, dressed in the same fetishistic outfit you wore when you arrived.
<</if>>
<br><br>
[<<moveTo 'room_student_quarter' 'Leave.' 600>>]
<</if>>
</div>/*#
#desc: sex club end night
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<<if $scene.hasOwnProperty('outfit')>>
<<include "removesex_clubOutfit">>
<<useClothSetPop 'sex_club'>>
<<elseif !setup.checkOutsideDecency()>>
<<useClothSetPop 'sex_club'>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<div id="invframe" class="scrolltext">
The day's festivities have wrapped up and the fetish club is closing up.
<<if $scene.outfit>>
You make your way out and turn in your rental outfit, the guard waving you good-night as you head out. You're feeling a bit strange wearing "normal" attire... you head home all the same.
<<elseif setup.checkOutsideDecency()>>
You skip the line outside the changing room and head straight home.
<<else>>
You stop off in the changing rooms to revert back to the clothes you came in with before heading home.
<</if>>
<br><br>
[<<moveTo 'room_foyer' 'Home.' 600>>]
</div>/*#
#desc: sex club bathroom
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.sex_club_info.bathroom>>
<<set $scene.sex_club_info.bathroom = {}>>
<</if>>
<<if !$scene.sex_club_info.bathroom.hasOwnProperty('id')>>
<<set $scene.sex_club_info.bathroom.gender = random(1,3)>>
<<set $scene.sex_club_info.bathroom.left = 10+random(1,10)>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.sex_club_info.bathroom.id>>
<<case 'sissy_secretary'>>
<<if $npc_sissy_secretary.stage >= 5 && !$scene.sex_club_info.bathroom.used>>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3_gag")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_toilet.png">>
<</if>>
<<case 'nun'>>
<<createAdvBGR "./images/locations/sex_club_toilet.png" "npc_nun_temperance_club">>
<<case "primrose">>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.getPrimroseImage("club")>>
<<default>>
<<if $scene.sex_club_info.bathroom.gender == 3 && $now.getUTCHours() < 23 && $now.getUTCHours() > 12>>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImageGeneric("generic_sex_club_male")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_toilet.png">>
<</if>>
<</switch>>
<div id="invframe" class="scrolltext">
You step into the bathroom.
<<switch $scene.sex_club_info.bathroom.id>>
<<case 'sissy_secretary'>>
<<if $npc_sissy_secretary.stage >= 5 && !$scene.sex_club_info.bathroom.used>>
You spy someone kneeling in the gap between urinals, her jaw spread wide by a ring gag. She is locked in her <<=setup.getItemName('sissyomatic')>> and with hands cuffed behind her back and her counter down to one. You recognise <<=setup.getNpcName('npc_sissy_secretary', 'first')>>.<br>
<br>
She notices you and looks up lustily, a trickle of drool leaking out past her gag.<br>
<br>
[<<moveTo 'event_sex_club_sissy_secretary_1' 'Help finish her shift...' 600>>]
<<elseif $now.getUTCHours() < 23 && $now.getUTCHours() > 12>>
though the padded space between the urinals is unoccupied, the counter indicates that it is closed for the evening.
<<else>>
the padded space between the urinals is presently unoccupied.<br>
<br>
As you stand in the doorway another customer walks in and swears. "@@.generic_male3;Damn, nobody on-shift... guess I'll wait for later.@@"<br>
<br>
[<<moveTo 'event_sex_club_bathroom_work' 'Hurry and get to work!' 3600>>]
<</if>>
<<case 'nun'>>
<<if $player.flags.church.level >= 2>>
You find <<=setup.getNpcName("npc_nun_temperance","formal")>> kneeling between the urinals, clad and bound in her latex habit. Her eyes are covered by a blindfold to aid her "focus," but her yellow, piss-flecked lips are unmistakable as they are spread wide by her ring gag.
<<else>>
To your surprise you find a latex nun kneeling between the urinals. Her black and white habit incorporating a mask that covers her face save for her mouth, her yellow-painted lips spread wide around a ring gag.
<</if>>
<br><br>
Rather than cuffing herself, she kneels un-restrained with her hands cupped in front of her in something between a prayer and a request for offering. You suspect she plans to be here all night.<br>
<br>
[<<moveTo 'event_sex_club_bathroom_nun_1' 'Make an "offering."' 600>>]
<<case 'primrose'>>
You find a familiar silhouette kneeling in the gap between urinals wearing an even more familiar company-issued latex bodysuit with an emblem of a urinal on the chest. By the pink pigtails poking out of the blinding hood, you are 99% sure that it's <<=setup.getNpcName("npc_primrose","first")>>. The last 1% is confirmed by the severe white posture collar around <<his npc_primrose>> neck. The kigurumi doll mask <<he npc_primrose>> was wearing earlier sits on one of the unused anchor points for bondage within the urinal cubby. A note on the forehead reads "my mouth is up here" with a helpful arrow pointing to the item's creator.<br>
<br>
You decide not to touch it as you consider your options.<br>
<br>
[<<moveTo 'event_sex_club_bathroom_primrose' 'Time to add gold highlights to pink hair.' 600>>]
<<default>>
<<if $scene.sex_club_info.bathroom.gender == 3 && $now.getUTCHours() < 23 && $now.getUTCHours() > 12>>
The padded space between the urinals is presently unoccupied, a plug gag hanging ready as if beckoning for someone to "volunteer" to work a shift...<br>
<br>
As you stand in the doorway another customer walks in and swears. "@@.generic_male3;Damn, nobody on-shift... guess I'll wait for later.@@"<br>
<br>
[<<moveTo 'event_sex_club_bathroom_work' 'Hurry and get to work!' 600>>]
<<else>>
In the empty gap between urinals kneels a <<if $scene.sex_club_info.bathroom.gender == 2 && !$options.fem>>man<<else>>woman<</if>> you do not recognise, their mouth spread wide by a plug gag, their hands cuffed behind their back. It looks like they have another <<=$scene.sex_club_info.bathroom.left>> clients to go before their shift is complete.
<</if>>
<</switch>>
<br><br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club bathroom work
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bathroom_bonus = setup.calcSexclubBathroomBonus($scene.sex_club_info)>>
<<addItemSet "club_bathroom">>
<<wearItemSet "club_bathroom">>
<<applyExperience 'piss' 15 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<switch $scene.sex_club_info.bathroom_bonus>>
<<case 'cook'>>
<<applyExperience 'penis' 12 'very' $EXPOSED>>
<<case 'nun'>>
<<applyStress -10>>
<<case 'psychiatrist'>>
<<applyStress -5>>
<<case 'guard'>>
<<if !$npc_guard.genitals>>
<<set $scene.sex_club_info.bathroom_bonus = "">>
<</if>>
<<case 'futa'>>
<<if setup.checkItemTypeWorn('hood') && $scene.sex_club_info.bathroom_bonus == 'futa'>>
<<set $scene.sex_club_info.bathroom_bonus = ''>>
<</if>>
<</switch>>
<<if $scene.sex_club_info.bathroom_bonus != "" && !(setup.checkItemTypeWorn('hood') && $scene.sex_club_info.bathroom_bonus == 'futa')>>
<<set $npc_sex_club.flags.urinal[$scene.sex_club_info.bathroom_bonus] = true>>
<</if>>
<<addCredits `random(50,80)`>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.bathroom_bonus == "" || (!setup.checkItemTypeWorn('hood') && $scene.sex_club_info.bathroom_bonus == 'futa')>>
<<createAdvBGR "./images/locations/sex_club_toilet.png">>
<<else>>
<<switch $scene.sex_club_info.bathroom_bonus>>
<<case 'futa'>>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<<case "cook">>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImage("npc_cook","npc_cook_club")>>
<<case "nun">>
<<createAdvBGR "./images/locations/sex_club_toilet.png" "npc_nun_chastity">>
<<case "hr_retention">>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImage("npc_retention")>>
<<case "psychiatrist">>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<<case "sexStoreClerk">>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImage("npc_sexstore_clerk")>>
<<case "sexdoll">>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<<case "guard">>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<</switch>>
<</if>>
<div id="invframe" class="scrolltext">
You hurriedly strap the funnel gag between your lips and cuff yourself to the wall as the full-bladder customer grins and dances in anticipation. "@@.generic_male3;Now that's service!@@"<br>
<br>
<<He>> pulls your "plug" and jams <<his>> flaccid cock past your lips moaning in relief as <<he>> unleashes <<his>>
<<if setup.getTotalValue("piss") > 15>>
powerfully delicious
<<else>>
potent
<</if>>
stream. <<getWordPiss>> blasts the back of your throat as you swallow as best you can, the <<man>> sighing in obvious relief as <<he>> drains a very full bladder. "@@.generic_male3;Whew! What a relief!@@" <<He>> states as <<he>> shakes the final few drops out and waits for your tongue to finish cleaning <<him>> off "@@.generic_male3;You're a real life-saver. Have a good rest of your evening you piss-chugging slut!@@" <<He>> grins as <<he>> jams the plug back into your gag, washing <<his>> hands before leaving you alone to await your next client.<br>
<br>
You settle in for a "shift" in the <<printShopName 'sex_club'>> bathroom.
<<if $scene.sex_club_info.bathroom_bonus == "">>
None of your customers are particularly remarkable but, after an hour of
<<if setup.getTotalValue("piss") > 15>>
eagerly gulping down
<<else>>
helplessly guzzling
<</if>>
<<getWordPiss>> you hit your quota and your restraints unlock.
<<else>>
Most of your customers are generically uninteresting... with one exception.<br>
<br>
<<switch $scene.sex_club_info.bathroom_bonus>>
<<case 'futa'>>
Striding through the door with her <<boy>>friend in tow <<=setup.getNpcName('npc_futa', 'first')>> recognises you and grins wide as her skirt pops up.<br>
<br>
She rushes over to you as her <<boy>>friend looks nervously on. Her <<getWordPenis false>> half-chub in hand, she pauses to look back at <<him>>. "@@.npc_futa;Oh, believe me, <<switch $player.identify_as>><<case 'female' ''>>she fucking loves<<case 'male'>>he fucking loves<<case 'fluid' 'agender'>>they fucking love<</switch>> this. It's sanitary and like... SO submissive...@@"<br>
<br>
You nod in agreement, drooling in anticipation as her <<getWordPenis false>> hovers in front of you. She reaches for your plug. She pauses, with a mischievous grin. "@@.npc_futa;Actually... well, you've been due for this for a while. Get over here, cock-slave!@@"<br>
<br>
She tugs <<his>> leash and her <<boy>>friend rushes over and is soon kneeling next to you, nervously mimicking your position with <<his>> lips spread wide. "@@.npc_futa;Good <<boy>>! Now I'm going to let the two of you share... and then you're going to show your thanks to <<=$player.first_name>> by giving <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>him<<case 'fluid' 'agender'>>them<</switch>> your <<if !$options.fem>>boi-<</if>>lemonade, okay?@@"<br>
<br>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> looks a bit nervous, glancing once more at you before <<he>> opens <<his>> mouth and looks up. "@@.npc_futa;Like two cute baby birds...@@" She states with a smile, removing your plug and putting a hand on each of your heads. "@@.npc_futa;Alright, good <<boy>>s go first.@@" She explains, sliding between her <<boy>>friend's lip and purring as she lets loose.<br>
<br>
<<He>> coughs once in reaction to the bitter brew but only lets a little bit trickle down <<his>> chin before <<he>> starts gulping.<br>
<br>
<<Hes>> only a mouthful in when <<=setup.getNpcName('npc_futa', 'first')>> grits her teeth and switchs off, dumping another golden stream down your eager throat and then continuing to switch back and forth as she empties her bladder.<br>
<br>
By the end <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> is eagerly awaiting <<his>> turn, sucking hard even as <<his>> girlfriend pulls back, <<his>> lips puckered like a hungry animal suckling a teat.<br>
<br>
Finally finished <<=setup.getNpcName('npc_futa', 'first')>> pulls her <<boy>>friend to <<his>> feet and then shares a kiss before unzipping <<his>> tight pants and aiming <<his>> chastity cage into the gaping hole of your mouth.<br>
<br>
One hand on <<his>> collar and the other aiming <<his>> cock, <<=setup.getNpcName('npc_futa', 'first')>> and her <<boy>>friend make out for the entire time <<he>> is relieving <<himself>>... and <<he>> even finishes off by leaning down to tongue kiss you in gratitude.<br>
<br>
Arm in arm the lovebirds wash their hands and leave, <<=setup.getNpcName('npc_futa', 'first')>> blowing you a kiss as you settle in for your next customer.
<<case "cook">>
<<=setup.getNpcName("npc_cook","first")>> walks into the bathroom with <<his npc_cook>> <<getWordPenis "npc_cook">> hanging out. It is an awe-inspiring specimen even while flaccid and <<he npc_cook>> wastes no time un-corking you and jamming the tip against the opening of your gag, the head plugging your mouth completely as <<he npc_cook>> lets loose.<br>
<br>
It's drink or drown and you shudder submissively as the taste of <<his npc_cook>> monster <<if $fetish.bestiality_soft>>horse <</if>>cock overpowers even the heady flavour of <<his npc_cook>> <<getWordPiss>>. Tinged with the saltiness of pre-cum <<his npc_cook>> "deposit" is less titanic than <<his npc_cook>> member and <<he npc_cook>> finishes off by giving you a head-pat as you lick <<his npc_cook>> slit clean before corking your gag back up before washing <<his npc_cook>> hands and leaving.
<<case "nun">>
A latex nun walks into the bathroom and notices you with a smile. "@@.npc_nun_chastity;How lovely! With <<=setup.getNpcName("npc_nun_temperance","formal")>> being unable to attend tonight I was worried this wonderful job would go un-filled, but <<if $player.flags.church.level >= 2>>I should have known I could count on you!<<else>>it would seem someone is eager to fill in.<</if>>@@"<br>
<br>
She approaches you and unzips the tight crotch-piece of her latex habit to reveal the gleaming steel of a chastity belt. Adjusting the shield and un-corking your gag she presses your face against her and whispers a soft prayer as she begins to piss down your throat.<br>
<br>
"@@.npc_nun_chastity;Bless this lovely thing, and <<switch $player.identify_as>><<case 'female'>>her<<case 'male'>>his<<default>>their<</switch>> service, may your glory flow through me and into them to grant the strength for even greater acts of supplication.@@"<br>
<br>
Her piss is
<<if setup.getTotalValue("piss") > 15>>
fantastically
<<else>>
startlingly
<</if>>
delicious, metered out just fast enough for you to swallow without putting you in danger of spilling.<br>
<br>
Finishing up, the nun steps back with a smile, caressing your face with her latex-gloved hand as she corks your plug and zips up. "@@.npc_nun_chastity;Enjoy the rest of your evening. May it be active and full of golden joy.@@"<br>
<br>
You feel strangely serene as you watch her walk away, steep stiletto heels echoing in the tile bathroom as she washes her hands, checks the polish of her habit in the mirror, and departs.
<<case "hr_retention">>
<<=setup.getNpcName('npc_retention', 'formal')>> stomps into the bathroom with <<his npc_retention>> <<if $fetish.pet_play>>pup<<else>>slave<</if>> following on a leash. Your presence brings a frightening grin to <<his npc_retention>> face...<br>
<br>
"@@.npc_retention;Looks like you lucked out.@@" <<He npc_retention>> states... and you're unsure if <<hes npc_retention>> talking to you, or <<his npc_retention>> slave as <<he npc_retention>> walks over in front of you and <<if $fetish.pet_play>>jams <<his npc_retention>> large cock through your gag<<else>>crosses <<his npc_retention>> arms, waiting for <<his npc_retention>> slave to unzip <<him npc_retention>> and aim <<his npc_retention>> large cock through your gag<</if>>.<br>
<br>
<<His npc_retention>> piss is like <<him npc_retention>> — strong and harsh, shooting straight down your throat with such force you barely even have to swallow. You can simply relax and let the <<getWordPiss>> flow down.<br>
<br>
<<His npc_retention>> <<if $fetish.pet_play>>pet<<else>>slave<</if>> sits watching obediently, finishing off by licking its <<if $npc_retention.fem>>mistress'<<else>>master's<</if>> member clean and putting it away.<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> replaces the plug in your gag and departs.
<<case "psychiatrist">>
<<=setup.getNpcName("npc_psychiatrist", "formal")>> walks into the bathroom and immediately notices you. She smiles and says "@@.npc_psychiatrist;Oh, how wonderful, <<=$player.first_name>>! You are really taking advantage of the unique opportunities here at <<printShopName 'sex_club'>>.@@"<br>
<br>
Walking quickly over to you, she raises her skirt and pulls aside her panties to slide her small member past your gag. Her stream is slow and mild, and she beams down at you the whole time while stroking your cheek affectionately.<br>
<br>
"@@.npc_psychiatrist;Doesn't that feel just wonderfully submissive? You know, in some cultures, piss was considered to carry knowledge, or, at least, bitter truths. Not so bitter for you, though, I imagine?@@" She chuckles as she tapers off and you moan, licking her <<getWordPenis false>> clean in appreciation.<br>
<br>
"@@.npc_psychiatrist;Mmm, wonderful. I am so proud of your progress... yes, you are blossoming like the prettiest rose...@@"<br>
<br>
You blush as she gives you a final head-pat before fixing her clothes and washing up to go.
<<case "sexStoreClerk">>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> saunters in looking just a tiny bit tipsy. Hurrying to your kneeling form, <<he npc_sexstore_clerk>> slides <<his npc_sexstore_clerk>> cock through your gag and <<he npc_sexstore_clerk>> unleashes a stream that has a smokey and almost whiskey-like flavour to it.<br>
<br>
<<He npc_sexstore_clerk>> whistles a cheery tune as <<he npc_sexstore_clerk>> empties <<his npc_sexstore_clerk>> bladder, finishing up by giving your head a friendly tussle before corking your gag and washing <<his npc_sexstore_clerk>> hands.
<<case "sexdoll">>
<<=setup.getNpcName('npc_sexdoll', 'first')>> walks into the bathroom and notices your presence with clear disappointment.<br>
<br>
"@@.npc_sexdoll;Dang, I was feeling a bit thirsty... oh well, guess I'll just empty myself out and go offer myself at the bar to save someone a trip.@@"<br>
<br>
She walks over and places her caged clitty between your lips, groping her breasts and licking her lips the whole time as she empties her bladder down your throat before adjusting her short skirt and heading back out.
<<case "guard">>
<<=setup.getNpcName("npc_guard","formal")>>, the club's Amazonian bouncer walks in and notices you with a wide grin.<br>
<br>
"@@.npc_guard;Oh-ho! Looks like I'm not the only one working a little side hustle tonight. Well don't let me leave you thirsty. Besides, a little suction always helps me empty faster — and I need to hurry back to the desk. I can't risk letting any degenerates in!@@"<br>
<br>
She chuckles as she unzips her leather pants and takes a wide
<<switch $npc_guard.genitals>>
<<case 'penis'>>
stance, jamming her large <<getWordPenis false>> past your gag, its taste strong and heady as your nostrils are filled with the smell of her leather outfit. "@@.npc_guard;Enjoy!@@" She calls out mirthfully as she unleashes her stream directly into your throat.
<<case 'futa'>>
stance, jamming her large <<getWordPenis false>> past your gag until her hidden cunt is pressed against your chin as your nostrils are filled with the smell of her leather outfit..<br>
<br>
"@@.npc_guard;Enjoy!@@" She calls out mirthfully as she unleashes her stream directly into your throat.
<<case 'cybernetic'>>
stance, cool metal lips pressing against your gag as her bionic cunt unleashes its stream directly down your throat.
<<case 'cyber-futa'>>
stance, her cybernetic cock pressed between your lips as you catch a brief sight of the similarly bionic cunt hidden behind.<br>
<br>
"@@.npc_guard;Enjoy!@@" She calls out mirthfully as she unleashes her stream directly into your throat.
<<case 'vag'>>
stance to press her lower lips against your gag. "@@.npc_guard;Or maybe the other way around!@@" She laughs as she pisses down your throat, patting your head the whole time you're busy gulping her strong lady lemonade.
<<default>>
ERROR: unexpected npc_guard.genitals <<=$npc_guard.genitals>>
<</switch>>
<br><br>
She finishes up and corks you closed, quickly rinsing her hands before leaving the bathroom.
<<default>>
ERROR: unexpected scene.sex_club_info.bathroom_bonus <<=$scene.sex_club_info.bathroom_bonus>>
<</switch>>
<br><br>
Your quota eventually reached, you remove your restraints and stand, working stiffness out of your limbs with a few stretches.
<</if>>
<br><br>
Belly full, you collect your tips and take a few minutes to rinse up in the sink and head on your way.<br>
<br>
[<<moveTo 'event_sex_club_interior' 'Return to the club.' 60 '<<removeItemSet "club_bathroom" true>><<deleteItemSet "club_bathroom">>'>>]
</div>/*#
#desc: sex club bathroom use nun
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bathroom.used = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_toilet.png" "./images/characters/latex_nun_temperance_club.png">>
<div id="invframe" class="scrolltext">
You approach the nun and un-cork her gag
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
<<if setup.isCage()>>
to slide the tip of your cage in between her lips.
<<else>>
to press the "evacuation" slit of your chastity shield against her lips.
<</if>>
<<else>>
to press the "evacuation" slit of your chastity shield against her lips.
<</if>>
<<else>>
<<if $player.body_ref.penis>>
to slide your <<=setup.calcPenisSize()>> <<getWordMyPenis>> between her lips.
<<else>>
to press your lower lips against her spread lips.
<</if>>
<</if>>
She moans in delight and as you unleash your stream. Her eyes soften in obvious bliss while she swallows it all without spilling a drop, and then licks you clean. You know it is an act of silent, devout thanks.<br>
<br>
You step back and her hands rise. You realise, now, that they are actually bound together in the cupped position, clearly intended for you to make an offering.<br>
<br>
<<if $player.money.total < 10>>
[@@.link_locked;You do not have money for an offering.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_bathroom_nun_2' 'Leave an additional offering.' 60 "<<set $scene.sex_club_info.bathroom.offering=true>>">>]<br>
<</if>>
[<<moveTo 'event_sex_club_bathroom_nun_2' 'Leave without making an additional offering.' 60 "<<set $scene.sex_club_info.bathroom.offering=false>>">>]
</div>/*#
#desc: sex club bathroom tip nun
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bathroom.refund = false>>
<<if $scene.sex_club_info.bathroom.offering>>
<<addCredits -10>>
<<elseif $player.money.total < 10>>
<<set $scene.sex_club_info.bathroom.refund = true>>
<<addCredits 20>>
<<else>>
<<applyStress 5>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_toilet.png" "./images/characters/latex_nun_temperance_club.png">>
<div id="invframe" class="scrolltext">
<<if $scene.sex_club_info.bathroom.offering>>
You place your offering into the nun's hands and she brings them to her breasts in a sort of prayer. The credits disappear into some sort of hidden pocket and her hands come back out empty as she bobs her head in thanks.
<<elseif $scene.sex_club_info.bathroom.refund>>
You confess that you have no money to make an offering. Silently she reaches between her breasts to a hidden pocket and then offers you up twenty credits. You try to push it back but she is silently insistent and you end up leaving the bathroom with an empty bladder, but a slightly fuller pocketbook.
<<else>>
You make no offering and, though it has you feeling a bit guilty, you wash your hands and leave.
<</if>>
<br><br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club bathroom visit npc_sissy_secretary
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bathroom.used = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3_gag")>>
<div id="invframe" class="scrolltext">
You sidle up to <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> kneeling form and
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
<<if setup.isCage()>>
slide the tip of your cage in between her lips.
<<else>>
press the "evacuation" slit of your chastity shield against her lips.
<</if>>
<<else>>
press the "evacuation" slit of your chastity shield against her lips.
<</if>>
<<else>>
<<if $player.body_ref.penis>>
slide your <<=setup.calcPenisSize()>> <<getWordMyPenis>> between her lips.
<<else>>
press your lower lips against her spread lips.
<</if>>
<</if>>
She gulps eagerly and, a few seconds after she has finished licking your clean, the counter ticks down to zero and her restraints unlock.<br>
<br>
You help remove her gag as she rises to her feet and smiles.<br>
<br>
"@@.npc_sissy_secretary;Mmm, you taste delicious... and to think I could have had that way back when we first met each other in the work bathroom...@@" She smiles "@@.npc_sissy_secretary;Well, I guess neither of us were really ready for that yet. Still, no time like the present! <<printShopName 'sex_club'>> is a great place to make up for lost time.@@"<br>
<br>
She walks over to the sink, checking her makeup and washing her hands before popping a breath-mint, "@@.npc_sissy_secretary;Whelp, my thirst is quenched, but now I'm feeling really hungry for cock. I'm going to go see about getting spit roasted. Have a wonderful evening, <<=$player.first_name>>@@"<br>
<br>
She practically skips away enthusiastically, leaving you alone in the empty bathroom.<br>
<br>
[<<moveTo 'event_sex_club_bathroom' 'Continue.' 60>>]
</div>/*#
#desc: piss on primrose
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bathroom.used = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_toilet.png" setup.getPrimroseImage("club")>>
<div id="invframe" class="scrolltext">
You waltz up to the kneeling scientist and
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
<<if setup.isCage()>>
slide the tip of your cage in between <<his npc_primrose>> painted lips.
<<else>>
press the "evacuation" slit of your chastity shield against <<his npc_primrose>> plush lips.
<</if>>
<<else>>
press the "evacuation" slit of your chastity shield against <<his npc_primrose>> pillowy lips.
<</if>>
<<else>>
<<if $player.body_ref.penis>>
slide your <<=setup.calcPenisSize()>> <<getWordMyPenis>> between <<his npc_primrose>> inviting lips.
<<else>>
press your lower lips against <<his npc_primrose>> cushioned lips.
<</if>>
<</if>>
<<=setup.getNpcName("npc_primrose","first")>> drinks your <<getWordPiss>> down like a pro, giving you immaculate aftercare with <<his npc_primrose>> tongue. The ticker next to the stall counts down another digit. You turn to leave when you notice that you've gotten a new text message. "@@.npc_primrose;Thanks for the drink, cutie~ ;)@@" You blink, looking back at the still very bound scientist. <<printThought "Huh...">><br>
<br>
[<<moveTo 'event_sex_club_bathroom' 'Continue.' 60>>]
</div>/*#
#desc: meeting Primrose at the club for the first time
#status: RELEASED 0.8.9.0
#ignore_spell: qr,sooooooooo,gawdess
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_primrose' 'other' 'theme_primrose_other_sex_club'
2
'theme_primrose_sex_club'
true
>>
<<addNpcTheme 'npc_primrose' 'other' 'theme_primrose_other_sex_club_costume'
2
'theme_primrose_sex_club_costume'
true
>>
<<addNpcTheme 'npc_primrose' 'other' 'theme_primrose_other_sex_club_owner'
2
'theme_primrose_sex_club_owner'
true
>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.getPrimroseImage("club")>>
<div id="invframe" class="scrolltext">
You notice a latex-clad kigurumi cosplayer hanging out with a gaggle of bimbos. Despite the head to toe latex covering and mask, the severe metallic posture collar with its bold QR code, can belong to none other than that <<if $fetish.sissy>>sissy<<else>>enthusiastic<</if>> scientist from work — <<=setup.getNpcName("npc_primrose","first")>>.<br>
<br>
<<if setup.checkItemTypeWorn('hood')>>
As if by some sixth sense <<=setup.getNpcName("npc_primrose","first")>> doesn't just notice you, but recognises you through your mask as
<<else>>
<<=setup.getNpcName("npc_primrose","first")>> notices you almost instantly and
<</if>>
<<he npc_primrose>> skips across the floor to greet you.<br>
<br>
The reclusive researcher is clad in an all-encompassing black bodysuit connected to a doll mask. Hip and breast fills make <<his npc_primrose>> silhouette far more curvaceous than you have seen at work. A few glowing pink accent lines run the length of the catsuit giving it some futuristic flair. Intriguingly, handles rest at <<his npc_primrose>> shoulders and hips. You suspect they are for giving others additional leverage during penetration. The outfit is rounded out by a pair of elbow length gloves made of pink rubber and matching knee-high ballet boots.<br>
<br>
"@@.npc_primrose;<<=$player.first_name>>?@@" He chirps in a computerized rendition of <<his npc_primrose>> normal voice, looking at you through the eyes of <<his npc_primrose>> mask. "@@.npc_primrose;It is you!@@" <<=setup.getNpcName("npc_primrose","first")>> hops forward on <<his npc_primrose>> heels to give you a squeaky hug before stepping back. "@@.npc_primrose;Like... oh my gawdess! I didn't know you came here!@@"<br>
<br>
You laugh pleasantly and explain that you only recently started frequenting the club. <<=setup.getNpcName("npc_primrose","first")>> nods giddily, adding "@@.npc_primrose;Isn't this place the best? I missed visiting after a long weekend shift. Sooooooooo glad it is open again.@@"<br>
<br>
You ask <<=setup.getNpcName("npc_primrose","first")>> what is on <<his npc_primrose>> agenda for the evening. The rubber enthusiast hums, tapping the side of <<his npc_primrose>> hard plastic mask.<br>
<br>
"@@.npc_primrose;Well, me and the girls were about to hit the bar and then the dance floor. Bimbo<<if !$npc_primrose.fem>>/bimboi<</if>> solidarity, ya know~? I wanna see if I can get some action in the play area before heading back. I gotta make the most of these nights, you know~?@@"<br>
<br>
You agree with <<=setup.getNpcName("npc_primrose","first")>>, noting that <<he npc_primrose>> has a full night ahead of <<him npc_primrose>>. "@@.npc_primrose;You know it!@@" <<He npc_primrose>> says, giving a spin on <<his npc_primrose>> painfully-steep heels. "@@.npc_primrose;The night is young and so am I. If I am lucky, I will get to make it long and dark and packed full too~@@"<br>
<br>
One of the more muscular bimbos snaps her fingers to get the doll's attention. "@@.npc_primrose;Coming~!@@" <<=setup.getNpcName("npc_primrose","first")>> leans in to plant the mouth of <<his npc_primrose>> mask against your cheek in a strangely chaste "kiss" before mincing back to the group. Before long <<he npc_primrose>> is back to vapidly gossiping with the others as they all walk towards the dance floor.<br>
<br>
You can't help but smile, for as hard as <<=setup.getNpcName("npc_primrose","first")>> seems to work, it's nice to see <<him npc_primrose>> doing what passes for relaxation. <<printThought "I'll have to keep an eye out for <<him npc_primrose>> on future visits.">><br>
<br>
[<<moveTo 'event_sex_club_interior' 'Continue on into the club.' 180>>]
</div>/*#
#desc: visit with apartment cleaning maid Mistress
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" "./images/characters/maid_mistress.png">>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_maid_mistress", "formal")>> with a curtsy. Cocktail in hand, she stands motionlesss, save for her gaze flicking momentarily downward.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<printThought "Of course, a proper greeting would be to kneel down and kiss her boots.">>
<<else>>
<<printThought "Does she want me to kiss her boots... in public?">>
<</if>>
<br><br>
<<if setup.getTotalValue("submission") > 5>>
[<<moveTo "event_sex_club_maid_mistress_2" "Drop to your knees and kiss her feet." 60>>]<br>
<<else>>
[@@.link_locked;You are not some slave who would act so submissively in public.@@]<br>
<</if>>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Disobey a Mistress' expectations? Never!@@]<br>
<<else>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Walk away, you are not ready to so prostrate yourself in public." 60 "<<set $scene.topic='leave'>>">>]
<</if>>
</div>/*#
#desc: kiss apartment cleaning maid Mistress feet
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" "./images/characters/maid_mistress.png">>
<div id="invframe" class="scrolltext">
You move from curtsy to the ground, on hands and knees as you bring your lips to the tip of her polished boot.<br>
<br>
"@@.npc_maid_mistress;Good, your proper behaviour extends into public. Now that you have demonstrated your devotion you may rise, and speak.@@"<br>
<br>
<<include "sexClubmaid_mistressTopics">>
</div><<if $scene.sex_club_info.main.doing>>
[@@.link_locked;You have already asked what she is doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Ask what she's doing here this evening." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.main.serve>>
[@@.link_locked;You have already asked if you can do anything for her.@@]<br>
<<else>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Ask if there is anything you can do for her?" 60 "<<set $scene.topic='serve'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_maid_mistress at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main[$scene.topic] = true>>
<<set $npc_maid_mistress.flags.topics[$scene.topic] = true>>
<<if $scene.topic == 'piss'>>
<<applyExperience 'piss' 15 'unbelievable' $EXPOSED>>
<<applyExperience 'submission' 13 'very' $EXPOSED>>
<<applyExperience 'humiliation' 18 'unbelievable' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" "./images/characters/maid_mistress.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'piss'>>
You drop to your knees as <<=setup.getNpcName("npc_maid_mistress", "formal")>> smiles down in triumph. Though you can feel the eyes of the crowd turning towards you as <<=setup.getNpcName("npc_maid_mistress", "formal")>> lifts her skirt you cannot look away, or deviate from your path. You lean forward, your lips meeting her own... her hand on your head...<br>
<br>
You become her public urinal.<br>
<br>
You drink. Her <<getWordPiss>> burning down your throat as you simmer in embarrassment, hearing the whispered remarks of your rapidly growing audience commenting about your depraved act.<br>
<br>
Despite the humiliation you can't stop — to pull away would just see her stream splash all over you and so you keep gulping, swallowing every drop that she sprays down your throat as your audience grows and her grip tightens.<br>
<br>
The flow finally stops and she grinds against your face, waiting until you have licked her clean before releasing her grasp. You look up. Her expression is possessive... and a little cruel. You catch your breath as your temporary crowd suddenly starts to move on... though you can still hear their whispers, feel their eyes, knowing that nobody who saw what you just did will ever forget your humiliatingly depraved act of "service." <br>
<br>
<<=setup.getNpcName("npc_maid_mistress", "formal")>> seems amused to watch you wallow in shock for over a minute before she finally coughs. "@@.npc_maid_mistress;You should stand — else someone may conclude you are open for further use.@@"<br>
<br>
In a daze you hurry to your feet,
<<if setup.getTotalValue("humiliation") >= 15 && setup.getTotalValue("piss") > 15>>
turned on by the knowledge that if someone did ask... you would obey.
<<else>>
scared of the fact that if someone had asked... you probably would have obeyed.
<</if>>
<<case 'doing'>>
You ask what she is doing this evening. She sighs.<br>
<br>
<<if $events.hasOwnProperty('sex_club_event') || $events.hasOwnProperty('sex_club_event_interior')>>
"@@.npc_maid_mistress;Very little, just waiting for the show to begin.@@"
<<else>>
"@@.npc_maid_mistress;Very little now that the show is over.@@"
<</if>>
<<case 'serve'>>
You ask if there is any way you might be of service to her?<br>
<br>
<<if $fetish.piss>>
She smiles, finishing her drink before nodding. "@@.npc_maid_mistress;Yes, actually. My bladder is feeling a mite full. Be a dear and assist me?@@"<br>
<br>
<<if setup.getTotalValue("humiliation") >= 15 && setup.getTotalValue("piss") > 15>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Drop to your knees like the eager piss-slave you are." 600 "<<set $scene.topic='piss'>>">>]<br>
<<elseif setup.getTotalValue("humiliation") < 10>>
<<if setup.getTotalValue("piss") > 15>>
Her offer is as perverted as it is humiliating and yet you thirst...<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Push through your embarrassment and drop to your knees like a good human urinal." 600 "<<set $scene.topic='piss'>><<spendWillpower 1>>">>] <<hint $options "Overcoming your embarrassment will cost willpower.">><br>
<<else>>
[@@.link_locked;You do not have the mental energy to overcome your sense of embarrassment to drink her piss.@@]
<</if>>
<<elseif setup.getTotalValue("piss") < 10>>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Push through your embarrassment and reservations and drink her piss." 600 "<<set $scene.topic='piss'>><<spendWillpower 2>>">>] <<hint $options "Overcoming your embarrassment and revulsion will cost willpower.">><br>
<<else>>
[@@.link_locked;You do not have the mental energy to overcome the embarrassing, disgusting through of drinking her piss in public.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Drop to your knees to serve her." 600 "<<set $scene.topic='piss'>>">>]<br>
<</if>>
<<else>>
<<if setup.getTotalValue("piss") < 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Ignore your revulsion and drink her piss." 600 "<<set $scene.topic='piss'>><<spendWillpower 2>>">>] <<hint $options "Overcoming your embarrassment will cost willpower.">><br>
<<else>>
[@@.link_locked;You do not have the mental energy to overcome the disgusting idea of drinking her piss.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Drop to your knees to serve her." 600 "<<set $scene.topic='piss'>>">>]<br>
<</if>>
<</if>>
<<if setup.getTotalValue("piss") > 15 && setup.getTotalValue("humiliation") >= 10>>
[@@.link_locked;You cannot resist the offer of golden ambrosia.@@]
<<else>>
[<<moveTo "event_sex_club_maid_mistress_talk" "Walk away, you are not going to drink her piss in the middle of a crowd!" 180 "<<set $scene.topic='leave'>>">>]
<</if>>
<<else>>
She smiles and looks you over. "@@.npc_maid_mistress;Hmm... no, I do not think there is anything you can do for me.@@"<br>
<br>
~ Content disabled due to fetish flags ~ <<hint $options "Enable watersports content to experience this scene.">> <br>
<</if>>
<<case 'leave'>>
You aren't ready to debase yourself that badly in public and you nervously taks a step backwards. <<=setup.getNpcName("npc_maid_mistress","formal")>> shakes her head in disappointment as you walk away.<br>
<br>
<<include "sexClubLocations">>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<if $scene.topic != 'leave'>>
<<include "sexClubmaid_mistressTopics">>
<</if>>
</div>/*#
#desc: visit with nun at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.play.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" "npc_nun_chastity">>
<div id="invframe" class="scrolltext">
You approach the latex-clad nun — she smiles at you, her lips and eyes the only part of her body peeking out from her layers of latex — mask under wimple, the material stretched tight over her corset-sculpted body and displaying the outline of a chastity belt locked over her loins.<br>
<br>
<<if $player.flags.church.level >= 2>>
"@@.npc_nun_chastity;Hello, <<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>, are you enjoying a blessed evening?@@"<br>
<br>
<<if !setup.checkItemTypeWorn('hood')>>
You greet her in return.
<<else>>
You are slightly surprised that she recognised you through your mask, with a knowing wink she explains.<br>
<br>
"@@.npc_nun_chastity;Those of our order train to recognise the person beneath the mask — build, eyes, the way one moves? All are revelatory to the discerning eye. It avoids confusion when masks and gags are so often an important part of a penitent's attire.@@"
<</if>>
<<else>>
"@@.npc_nun_chastity;Hello, Sister, are you enjoying a blessed evening?@@"<br>
<br>
You nod slowly, a bit unnerved by the intense energy radiating from the woman.
<</if>>
<br><br>
<<include "sexClubNunTopics">>
</div><<if $player.flags.church.level < 2>>
<<if $scene.sex_club_info.play.real>>
[@@.link_locked;You have already asked about her professional status.@@]<br>
<<else>>
[<<moveTo "event_sex_club_nun_talk" "Ask if she's a real nun." 60 "<<set $scene.topic='real'>>">>]<br>
<</if>>
<</if>>
<<if $scene.sex_club_info.play.doing>>
[@@.link_locked;You have already asked what she is doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_nun_talk" "Ask what she's doing here this evening." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.play.confession>>
[@@.link_locked;You have already asked to take confession.@@]<br>
<<else>>
[<<moveTo "event_sex_club_nun_talk" "Ask if she can take your confession?" 60 "<<set $scene.topic='confession'>>">>]<br>
<</if>>
<<if $fetish.piss && State.hasPlayed("event_sex_club_bathroom_nun_2") && $scene.sex_club_info.bathroom && $scene.sex_club_info.bathroom.id == 'nun'>>
<<if $scene.sex_club_info.bathroom_bonus == 'nun'>>
<<if $scene.sex_club_info.play.bathroom>>
[@@.link_locked;You have already asked about the nun you saw in the bathroom.@@]<br>
<<else>>
[<<moveTo "event_sex_club_nun_talk" "Ask about the nun you saw in the bathroom." 60 "<<set $scene.topic='bathroom'>>">>]<br>
<</if>>
<<else>>
<<if $scene.sex_club_info.play.bathroom>>
[@@.link_locked;You have already asked about the nun you saw in the bathroom.@@]<br>
<<else>>
[<<moveTo "event_sex_club_nun_talk" "Ask about the nun you saw in the bathroom the other night..." 60 "<<set $scene.topic='bathroom'>>">>]<br>
<</if>>
<</if>>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with nun at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.play[$scene.topic] = true>>
<<set $npc_nun_chastity.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" "npc_nun_chastity">>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'real'>>
You ask the "nun" if she's a real nun?<br>
<br>
She smiles and laughs. "@@.npc_nun_chastity;What, you don't believe in latex habits?@@" She winks. "@@.npc_nun_chastity;There's even more fun things underneath.@@"<br>
<br>
Somewhat taken aback by her brazen attitude you blush as she continues, "@@.npc_nun_chastity;To answer your question, yes. My name is <<=setup.getNpcName('npc_nun_chastity', 'formal')>>, and I am a follower of the Church of the Goddess. My present attire is a part of my devotion to her, the same as the chastity belt I wear beneath — and the dual plugs that belt locks within.@@"<br>
<br>
Your jaw drops and she grins wider. "@@.npc_nun_chastity;Yes, I thought that would get your attention... I believe you would quite enjoy some of our... practices. Our church is actually quite nearby. You should seek it out.@@"<br>
<br>
<<if $player.flags.church.visited>>
<<printThought "I didn't see anyone dressed like this when I was there... that church is crazier than I thought!">>
<<else>>
You nod, still not entirely sure if you believe her... despite sensing not the slightest hint of duplicity, just serene, passionate holiness.
<</if>>
<<case 'doing'>>
You ask the nun what she is doing here tonight?<br>
<br>
"@@.npc_nun_chastity;Why, evangelising, of course. A place like this contains many who would certainly benefit from the word of the Goddess... plus,@@" her eyes twinkle conspiratorially. "@@.npc_nun_chastity;Well, it is so nice to go out in public without having to cover up my shining devotion with staid robes.@@"<br>
<br>
She smiles. "@@.npc_nun_chastity;Is there anything else I can help you with this evening, Sister?@@"
<<case 'confession'>>
You ask the nun if she could take your confession?<br>
<br>
She smiles and shakes her head. "@@.npc_nun_chastity;I am sorry, Sister, but I am only here to evangelise. This is not an appropriately... intimate venue for the taking of confession, in any case. You should visit our church if you wish to unburden your soul. Tonight, here? Well... active worship would certainly please the Goddess — nothing exults her more greatly than the joyous ecstasy of her followers.@@"
<<case 'bathroom'>>
You ask <<=setup.getNpcName('npc_nun_chastity', 'formal')>> about the other nun you saw in the bathroom.<br>
<br>
She smiles wistfully. "@@.npc_nun_chastity;Ah, yes, <<=setup.getNpcName('npc_nun_temperance', 'formal')>>. She has a tremendous thirst to serve. Please, if you have a chance, make an offering to her. It will bring her joy, and you good fortune for helping such a devout servant of the Goddess.@@"
<<if $scene.sex_club_info.bathroom.used>>
<br><br>
You reply that you gave a <<if $scene.sex_club_info.bathroom.tip>>dual <</if>>offering to <<=setup.getNpcName('npc_nun_temperance', 'formal')>>. "@@.npc_nun_chastity;Wonderful, a blessing upon you. The one downside of her service gag is her inability to fully convey her thanks, so let me do it for you when I tell you that she swallowed every drop of your offering with ecstatic joy.@@"
<</if>>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubNunTopics">>
</div>/*#
#desc: sex club talk with shoestore owner
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main.seen = true>>
<<set $scene.ponyEventOffer = $npc_shoestore_manager.flags.shot_ballet_heels_final && $scene.outfit == 'pony' && setup.getTotalValue("foot") >= 20 && ($events.hasOwnProperty('sex_club_event') || $events.hasOwnProperty('sex_club_event_interior'))>>
<<if $scene.ponyEventOffer>>
<<set $scene.sex_club_info.event = "event_sexclub_event_pony_1">>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_shoestore_manager","npc_shoestore_pony")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_shoestore_manager", "first")>>, elegantly dressed and looking down at you from her perch astride her towering pony-girl wife.<br>
<br>
<<if $npc_shoestore_manager.flags.shot_ballet_heels_final>>
"@@.npc_shoestore_manager;Hey, <<=$player.first_name>>! I'd recognise that gait anywhere, how are you doing this fine evening?@@"<br>
<br>
Her "steed" nods at you in greeting and makes a whinny sound through her gag. <<=setup.getNpcName("npc_shoestore_manager", "first")>> smiles, "@@.npc_shoestore_manager;<<=setup.getNpcName("npc_shoestore_assistant", "first")>> conveys her regards, as well.@@"<br>
<br>
<<if $scene.ponyEventOffer>>
<<=setup.getNpcName("npc_shoestore_manager", "first")>> looks you up and down and smiles. "@@.npc_shoestore_manager;Say, you're an expert in heels, and you're dressed for the occasion... how would you feel about helping us with our show tonight? We're doing a little dressage presentation, bit of advertising, y'know, and well... two beautiful ponies would surely be better than one, right? Just let me know if you're up for it and we can go get prepared.@@"
<<else>>
"@@.npc_shoestore_manager;So, what are you up to tonight?@@"
<</if>>
<<else>>
"@@.npc_shoestore_manager;Hello, how are you doing this fine evening?@@"
<</if>>
<br><br>
<<include "sexClubShoestoreTopics">>
</div><<if $scene.ponyEventOffer>>
[<<moveTo "event_sex_club_dressage_1" "Say you're ready to help with the show." 1800>>]<br>
<</if>>
<<if $scene.sex_club_info.main.steed>>
[@@.link_locked;You have already complimented <<=setup.getNpcName("npc_shoestore_assistant", "first")>>.@@]<br>
<<else>>
[<<moveTo "event_sex_club_shoestore_talk" 'Compliment her steed.' 600 "<<set $scene.topic='steed'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.main.doing>>
[@@.link_locked;You have already asked what <<=setup.getNpcName("npc_shoestore_manager", "first")>> is doing here.@@]<br>
<<else>>
[<<moveTo "event_sex_club_shoestore_talk" "Ask what she's doing here." 600 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with shoestore npcs at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main[$scene.topic] = true>>
<<set $npc_shoestore_manager.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_shoestore_manager","npc_shoestore_pony")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'steed'>>
You congratulate <<=setup.getNpcName("npc_shoestore_manager", "first")>> on her glorious steed. Barely visible between the straps of her bit gag and her blinkers you see <<=ps(setup.getNpcName("npc_shoestore_assistant", "first"))>> cheeks blush red at the compliment.<br>
<br>
"@@.npc_shoestore_manager;Aye,@@" <<=setup.getNpcName("npc_shoestore_manager", "first")>> states, patting her wife on the shoulder. "@@.npc_shoestore_manager;She's the most beautiful, perfect pony I could ever ask for.@@"<br>
<br>
<<=setup.getNpcName("npc_shoestore_manager", "first")>> smiles down at you.
<<if $scene.outfit == 'pony'>>
<<if $npc_shoestore_manager.flags.shot_ballet_heels_final>>
"@@.npc_shoestore_manager;Of course, you make a lovely pony yourself.@@"
<<elseif setup.getTotalValue("heels") >= 20>>
"@@.npc_shoestore_manager;Of course, you make a lovely pony yourself... and so nimble in those hoof-boots! You should come by the shop sometime, someone of your skill would be great for recording a few advertisement testimonials.@@"
<<else>>
"@@.npc_shoestore_manager;Of course, you make a lovely pony yourself... though you look like you could do with a bit more practice in those boots.@@"
<</if>>
<<else>>
<<if $npc_shoestore_manager.flags.shot_ballet_heels_final>>
"@@.npc_shoestore_manager;Hmm... I bet you would make a lovely pony as well... just a matter of the right tack, and proper hoof-boots, of course!@@"
<<elseif setup.getTotalValue("heels") >= 20>>
"@@.npc_shoestore_manager;You know, with your skill in heels I bet you would make a lovely pony yourself. Something to think about, hmm? Steep hoof boots, nice tight tack... yes, that would suit you nicely.@@"
<<else>>
"@@.npc_shoestore_manager;Of course, you would make a lovely pony yourself — and the boots would be a great way for you to practice walking in heels — always a useful skill.@@"
<</if>>
<</if>>
<<case 'doing'>>
You ask what she's doing here tonight.<br>
<br>
"@@.npc_shoestore_manager;Oh, the usual. Enjoying the sights, hoping to drum up a bit of business for ponyboots, and it's just great to be able to get away from the shop and enjoy a ride — it's no country trot where I can really let her take off and work those sexy legs, but being out for a bit of public prancing is still a fun opportunity.@@"
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubShoestoreTopics">>
</div>/*#
#desc: sex club talk with npc_futa
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main.seen = true>>
<<set $scene.first_met = !State.hasPlayed("event_sex_club_futa_talk")>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_futa","first")>> as she stands with an arm around her partner with a hungry look in her eye.<br>
<br>
She notices you with a hungry grin and you notice her skirt twitch slightly.
<<if $scene.first_met>>
"@@.npc_futa;Hey, <<=$player.first_name>>! This is <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>, my <<boy>>friend/slave/fuck-toy. <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>. This is <<=$player.first_name>>, one of my work friends and among the top cock cosies in the office!@@"<br>
<br>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> blushes and mumbles a response, you get the feeling <<he>> isn't quite as... outgoing as <<his>> girlfriend has become.
<<else>>
"@@.npc_futa;Hey, <<=$player.first_name>>! Nice to see you, you're looking hot tonight!@@"
<</if>>
<br><br>
<<include "sexClubFutaTopics">>
</div><<if $scene.sex_club_info.main.doing>>
[@@.link_locked;You've already asked what they're doing tonight.@@]<br>
<<else>>
[<<moveTo "event_sex_club_futa_talk" "Ask what they're up to tonight." 600 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.main.doing>>
<<if $scene.sex_club_info.main.changes>>
[@@.link_locked;You've already asked how they've been handling <<=ps(setup.getNpcName("npc_futa","first"))>> changes.@@]<br>
<<else>>
[<<moveTo "event_sex_club_futa_talk" "Ask <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> how <<hes>> handled <<his>> girlfriend's changes." 600 "<<set $scene.topic='changes'>>">>]<br>
<</if>>
<</if>>
<<if $scene.sex_club_info.main.fun_ask>>
[@@.link_locked;You've already brought up the idea of having fun together this evening.@@]<br>
<<else>>
[<<moveTo "event_panties_futa_1" "Ask if they'd like to have some fun together?" 60>>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with futa npc at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main[$scene.topic] = true>>
<<set $npc_futa.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
You ask <<=setup.getNpcName("npc_futa","first")>> what she and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> are up to this evening?<br>
<br>
<<if $scene.first_met>>
"@@.npc_futa;Just checking the place out — <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> here found an ad for them and was just oh-so-curious!@@" She squeezes her <<boy>>friend a little closer and <<he>> blushes sheepishly. "@@.npc_futa;So far? Pretty fuckin' hot!@@"
<<else>>
<<=setup.getNpcName("npc_futa","first")>> grins. "@@.npc_futa;Back for more! We love this place, always fun to hang out and get some new ideas...@@"
<</if>>
<<case 'changes'>>
You ask <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> how <<hes>> taken to <<his>> girlfriend's changes?<br>
<br>
<<He>> nervously looks over at <<=setup.getNpcName("npc_futa","first")>> but she just smiles. "@@.npc_futa;Go on, <<switch $player.identify_as>><<case 'female' ''>>she's<<case 'male'>>he's<<case 'fluid' 'agender'>>they're<</switch>> an old friend, you can tell the truth.@@"<br>
<br>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> blushes, <<his>> voice quivering with excitement as <<he>> replies. "@@.generic_male1;I—I love having a big-dicked <<if $fetish.futanari>>futa <</if>>girlfriend... like, at first I was a bit freaked out, and her enthusiasm can be a bit much but I'm so glad she stuck it out... and stuck it in. Now I love being her number-one cocksleeve.@@"<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> beams with pride. "@@.npc_futa;Number one AND number two,@@" she adds, giving <<him>> a playful tap on the nose. "@@.npc_futa;Your deep-throat skills are really coming along.@@"<br>
<br>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> bites <<his>> lip absolutely adorably. "@@.generic_male1;Well... it's pretty easy to practice when you taste so good.@@"<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> grins and pulls <<him>> in by the collar for a kiss. You smile too, at the combination of depravity and cute lovey-doveyness of the pair.
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubFutaTopics">>
</div>/*#
#desc: sex club talk with npc_discipline
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_discipline","npc_discipline_3") setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_discipline","npc_discipline_3") setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_discipline", "formal")>> in the middle of a conversation with <<=setup.getNpcName("npc_sex_club", "formal")>> in <<his npc_sex_club>> <<if $scene.sex_club_info.owner.dom>>crisp uniform<<else>>gimp outfit<</if>>.<br>
<br>
"@@.npc_discipline;Ah, Miss <<=$player.last_name>>, so nice to see you... expanding your horizons this lovely evening.@@"<br>
<br>
<<include "sexClubDisciplineTopics">>
</div><<if $scene.sex_club_info.main.doing>>
[@@.link_locked;You have already asked what she is doing this evening.@@]<br>
<<else>>
[<<moveTo "event_sex_club_discipline_talk" "Ask what she's doing this evening." 600 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_discipline at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main[$scene.topic] = true>>
<<set $npc_discipline.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
<<if ($events.hasOwnProperty('sex_club_event') || $events.hasOwnProperty('sex_club_event_interior')) && $scene.sex_club_info.event == 'event_sexclub_event_bdsm_1'>>
"@@.npc_discipline;Just talking to <<=setup.getNpcName("npc_sex_club", "formal")>> about my demo later this evening... hmm, you know, if you stick around you would make for a lovely... assistant.@@"
<<elseif $scene.sex_club_info.event == 'event_sexclub_event_bdsm_1'>>
"@@.npc_discipline;Other than my demo presentation earlier?@@" She smiles, "@@.npc_discipline;Oh, nothing much, just considering when I might come back to do another one.@@"
<<else>>
"@@.npc_discipline;Oh, nothing in particular. I am here tonight just to enjoy myself rather than put on a demonstration.@@"
<</if>>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubDisciplineTopics">>
</div>/*#
#desc: visit with npc_sexstore_clerk at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bar.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> and <<he npc_sexstore_clerk>> raises a glass in your direction with a rakish grin.<br>
<br>
"@@.npc_sexstore_clerk;Good evening, I hope you are doing well on this fine day.@@"<br>
<br>
<<include "sexClubSexStoreClerkTopics">>
</div><<if $scene.sex_club_info.bar.doing>>
[@@.link_locked;You have already asked what <<he npc_sexstore_clerk>> is doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_sexStoreClerk_talk" "Ask what <<hes npc_sexstore_clerk>> doing here this evening." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.bar.work>>
[@@.link_locked;You have already asked <<him npc_sexstore_clerk>> about work.@@]<br>
<<else>>
[<<moveTo "event_sex_club_sexStoreClerk_talk" "Ask if <<he npc_sexstore_clerk>> might have any work for you?" 60 "<<set $scene.topic='work'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_sexstore_clerk at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bar[$scene.topic] = true>>
<<set $npc_sexstore_clerk.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
You ask <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> what <<hes npc_sexstore_clerk>> doing and <<he npc_sexstore_clerk>> grins.<br>
<br>
"@@.npc_sexstore_clerk;Doing? Why, working, of course. Isn't it obvious?@@" <<he npc_sexstore_clerk>> takes a sip of <<his npc_sexstore_clerk>> drink as you blink.<br>
<br>
"@@.npc_sexstore_clerk;Look around! Why, this is one of the most concentrated group of potential customers one could ask for... well, other than the Sunday pews, but some of those can be real hard sales, if you get my drift.@@" <<He npc_sexstore_clerk>> grins and nudges you with <<his npc_sexstore_clerk>> elbow before continuing. "@@.npc_sexstore_clerk;Yes, I am here to do market research! Finger on the pulse of the community... or is that pulsing and cumming in unity? No matter, the fact is, that, despite my apparent sedentary position I am hard at work gathering intelligence!@@"
<<case 'work'>>
You ask <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> if <<he npc_sexstore_clerk>> might have any work for you?<br>
<br>
<<if $npc_sexstore_clerk.flags.workStage == 0>>
<<He npc_sexstore_clerk>> looks you up and down and grins. "@@.npc_sexstore_clerk;Mmm, I can think of more than a few ways I'd like to see you "work", but no, tonight is a one <<man npc_sexstore_clerk>> operation. Though... perhaps you could come by the shop sometime in the future. Business keeps picking up as it has and I would not say no to some part-time help. Given your skills I could certainly see... locking you in for something.@@"
<<elseif $npc_sexstore_clerk.flags.workStage == 1>>
<<He npc_sexstore_clerk>> chuckles slightly. "@@.npc_sexstore_clerk;Not tonight... but my offer remains open if you would be interested in assisting at the store.@@"
<<else>>
<<He npc_sexstore_clerk>> chuckles slightly. "@@.npc_sexstore_clerk;Not tonight... but you are welcome to assist at the store at any time...@@"
<</if>>
<br><br>
You nod, having the distinct impression that <<he npc_sexstore_clerk>> means that quite literally...
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubSexStoreClerkTopics">>
</div>/*#
#desc: visit with npc_psychiatrist at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bar.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
You approach your therapist, <<=setup.getNpcName("npc_psychiatrist", "formal")>> and she greets you with a wide smile.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>! How lovely to see you! I expect you are enjoying the evenings festivities? Yes, this is a wonderful place to come for inspiration ... or to experiment at broadening your horizons.@@"<br>
<br>
<<include "sexClubPsychiatristTopics">>
</div><<if $scene.sex_club_info.bar.experiment>>
[@@.link_locked;You have already attempted to proposition her.@@]<br>
<<else>>
[<<moveTo "event_sex_club_psychiatrist_talk" "Ask if she'd like to experiment with you?" 60 "<<set $scene.topic='experiment'>>">>]<br>
<</if>>
<<if setup.checkItemTypeWorn('hood')>>
<<if $scene.sex_club_info.bar.recognise>>
[@@.link_locked;You have already asked how she recognised you.@@]<br>
<<else>>
[<<moveTo "event_sex_club_psychiatrist_talk" "Ask how she recognised you through your mask?" 60 "<<set $scene.topic='recognise'>>">>]<br>
<</if>>
<</if>>
<<if $scene.sex_club_info.bar.doing>>
[@@.link_locked;You have already asked what she's doing here.@@]<br>
<<else>>
[<<moveTo "event_sex_club_psychiatrist_talk" "Ask what she is doing this evening?" 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_psychiatrist at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bar[$scene.topic] = true>>
<<set $npc_psychiatrist.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_formal")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
You ask <<=setup.getNpcName("npc_psychiatrist", "formal")>> what she is doing?<br>
<br>
"@@.npc_psychiatrist;Doing? Why, enjoying a night out! And off, I might add.@@" She takes a swig of her beer and smiles "@@.npc_psychiatrist;Yes, sitting here, enjoying the sight of all these lovely people indulging their desires... well, it really helps me recharge, and motivates me to help you, and all my other clients, unlock their full potential.@@"
<<case 'recognise'>>
You ask <<=setup.getNpcName("npc_psychiatrist", "formal")>> how she recognised you and she smiles mysteriously.<br>
<br>
"@@.npc_psychiatrist;Oh, we doctors have our ways. It is my job to assist my clients in any way I can — clearly I cannot do such without being able to keep track of them, hmm?@@"<br>
<br>
<<printThought "You know... it wouldn't exactly be off brand for the company to have implanted me with some sort of tracking device...">>
<<case 'experiment'>>
You ask <<=setup.getNpcName("npc_psychiatrist", "formal")>> if she would be up for an "experiment?" <br>
<br>
She smiles and shakes her head. "@@.npc_psychiatrist;An oh-so-tempting offer, but one I must, alas, decline. I am off the clock at present and it would not be proper for me to abuse my knowledge. The doctor/client relationship is a very delicate one and my first priority is to make sure I remain able to give you the best therapy possible.@@"
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubPsychiatristTopics">>
</div>/*#
#desc: visit with npc_retention at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bar.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_retention', 'formal')>> who grins at you, <<if $npc_retention.fem>>her dominant<<else>>his dominant, masculine<</if>> expression making you a bit weak in the knees.<br>
<br>
<<include "sexClubHRRetentionTopics">>
</div><<if setup.checkItemInInventory("blackmail_chip")>>
[<<moveTo "event_landlord_retention_mission_give_chip_1" 'Slip <<=setup.getNpcName("npc_retention","formal")>> the chip <<=setup.getNpcName("npc_landlord","first")>> gave you.' 60 "<<set $scene.fromSexclub=true>>">>]<br>
<</if>>
<<if $scene.sex_club_info.bar.doing>>
[@@.link_locked;You have already asked what <<hes npc_retention>> doing here.@@]<br>
<<else>>
[<<moveTo "event_sex_club_hr_retention_talk" "Ask what <<hes npc_retention>> doing here tonight?" 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.bar.job>>
[@@.link_locked;You have already asked <<him npc_retention>> about <<his npc_retention>> job.@@]<br>
<<else>>
[<<moveTo "event_sex_club_hr_retention_talk" "Ask <<him npc_retention>>, off the record, what <<he npc_retention>> thinks of <<his npc_retention>> job?" 60 "<<set $scene.topic='job'>>">>]<br>
<</if>>
<<if $npc_landlord.flags.sex_club_retention>>
<<if $scene.sex_club_info.bar.landlord>>
[@@.link_locked;You have already asked <<him npc_retention>> about <<his npc_retention>> history with <<=setup.getNpcName("npc_landlord", "first")>>.@@]<br>
<<else>>
[<<moveTo "event_sex_club_hr_retention_talk" 'Ask <<him npc_retention>> about <<his npc_retention>> history with <<=setup.getNpcName("npc_landlord", "first")>>.' 60 "<<set $scene.topic='landlord'>>">>]<br>
<</if>>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_retention at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bar[$scene.topic] = true>>
<<set $npc_retention.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'landlord'>>
You ask <<=setup.getNpcName("npc_retention", "formal")>> about <<his npc_retention>> history with <<=setup.getNpcName("npc_landlord", "first")>> and <<he npc_retention>> chuckles. "@@.npc_retention;You mean the <<=setup.getNpcName("npc_landlord", "Colonel")>>? Oh, don't get me wrong... <<hes npc_landlord>> a fine soldier, good <<man npc_landlord>> to have at your side in a scrap, but wars, wars aren't won by good soldiers. They're won by being willing to do what the other side is not, even, especially, if that means getting a little dirty. The <<=setup.getNpcName("npc_landlord", "Colonel")>>, well... <<he npc_landlord>> ain't willing to cross that line... moreover, <<he npc_landlord>> ain't smart enough to look aside while those of us do take care of what needs doing.@@" <<He npc_retention>> shakes <<his npc_retention>> head and finishes <<his npc_retention>> drink. "@@.npc_retention;Ancient history, now. War's over, we won... or something like that, no point in dwelling any more on the past.@@"
<<case 'job'>>
You ask <<=setup.getNpcName("npc_retention", "formal")>> how <<he npc_retention>> likes <<his npc_retention>> job?<br>
<br>
<<if $npc_retention.stage > 3 && $npc_boss.flags.party_join>>
<<He npc_retention>> smiles for a moment, looking you over before reaching down to scratch <<his npc_retention>> slave behind the ears and speak. "@@.npc_retention;Good paycheck, interesting work — not as interesting as combat but... well, wars only come around everyone once in a while. Still, protection, pay, and the flexibility to fuck just about anything I like... who could say no?@@"
<<else>>
<<He npc_retention>> looks you up and down for a moment and then shrugs. "@@.npc_retention;It's a living.@@"<br>
<br>
<<printThought "Hmm... I get the feeling <<he npc_retention>> still doesn't trust me.">>
<</if>>
<<case 'doing'>>
You ask <<=setup.getNpcName("npc_retention", "formal")>> what <<hes npc_retention>> doing here tonight and <<he npc_retention>> merely shrugs and grunts before taking another sip of <<his npc_retention>> drink.
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubHRRetentionTopics">>
</div>/*#
#desc: sex club meet rpg friends
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.danceFloor.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_rpg_warlock","npc_rpg_warlock_club") setup.charImage("npc_rpg_dude","npc_rpg_dude_club")>>
<div id="invframe" class="scrolltext">
You approach your friends from <<=ps(setup.getNpcName("npc_technician","first"))>> RPG group and
<<if setup.checkItemTypeWorn('hood')>>
once you tell them who you are,
<</if>>
they greet you with twin smiles.<br>
<br>
"@@.npc_rpg_warlock;<<=$player.first_name>>! How you doing? This club is just the best, isn't it?@@"<br>
<br>
If "the club" was just <<=setup.getNpcName("npc_rpg_warlock","first")>> in her outfit you'd have to agree, add in the rest... you nod and she grins, idly toying with her <<boy npc_rpg_dude>>friend's leash.<br>
<br>
<<include "sexClubRpgFriendsTopics">>
</div><<if $scene.sex_club_info.danceFloor.doing>>
[@@.link_locked;You have already asked about their plans.@@]<br>
<<else>>
[<<moveTo "event_sex_club_rpg_friends_talk" "Ask what they've got planned for the night." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with rpg friends at sex club
#status: RELEASED 0.8.5.0
#ignore_spell: f
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.danceFloor[$scene.topic] = true>>
<<set $npc_rpg_warlock.flags.topics[$scene.topic] = true>>
<<if $scene.topic == "suck">>
<<applyExperience 'penis' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_rpg_dude.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.topic == "suck">>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_rpg_warlock","npc_rpg_warlock_club") setup.charImage("npc_rpg_dude","npc_rpg_dude_club")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_rpg_warlock","npc_rpg_warlock_club") setup.charImage("npc_rpg_dude","npc_rpg_dude_club")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'suck'>>
As your friends turn to go you ask if you could help, <<=setup.getNpcName("npc_rpg_warlock","first")>> turns back and smiles wider. "@@.npc_rpg_warlock;Oh HELLS yeah, come on, I can't wait to snowball some spooge from your sexy lips.@@"<br>
<br>
With <<=setup.getNpcName("npc_rpg_warlock","first")>> in the lead the three of you scoot off to the play area where she plonks <<him npc_rpg_dude>> down on a sex chair and swiftly cuffs <<his npc_rpg_dude>> thighs apart and <<his npc_rpg_dude>> wrists above <<his npc_rpg_dude>> head.<br>
<br>
"@@.npc_rpg_warlock;Sorry hunny-bun, but I don't want you wiggling away or putting up any distractions while the two of us are snarfing down on your love sausage.@@" She checks <<his npc_rpg_dude>> restraints and then hops up onto <<his npc_rpg_dude>> lap for a deep, passionate kiss. "@@.npc_rpg_warlock;You ready for this, my love?@@" She asks when they finally break.<br>
<br>
<<He npc_rpg_dude>> grins up enthusiastically. "@@.npc_rpg_dude;Yup!@@"<br>
<br>
With an evil grin she pulls on <<his npc_rpg_dude>> leash, "@@.npc_rpg_warlock;Yup? The correct answer is "Yes, oh great and wonderful Demon Goddess" — for your impertinence you're going right back in the cage when we're done and I'm not going to unlock it until at LEAST Wednesday... or, like... whenever I get really hungry.@@"<br>
<br>
<<He npc_rpg_dude>> grins and bobs <<his npc_rpg_dude>> head. "@@.npc_rpg_dude;Yes, oh great and wonderful Demon Goddess that I love. Your slave is sorry for <<his npc_rpg_dude>> impertinence.@@"<br>
<br>
"@@.npc_rpg_warlock;Good... good, now shut up, you're embarrassing me in front of <<=$player.first_name>>! And after they were so nice to offer to help.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_warlock","first")>> slinks to the floor to unzip <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> pants and slide out <<his npc_rpg_dude>> caged cock. Using the key around her neck she unlocks the cage and then starts stroking, <<his npc_rpg_dude>> member quickly rising to attention as she glances up and waves you in.<br>
<br>
You join <<=setup.getNpcName("npc_rpg_warlock","first")>> for a messy, passionate blowjob. There's no doubting the raw lust she has for her <<boy npc_rpg_dude>>friends package, but she also seems just as turned on by the two of you putting on a show as <<he npc_rpg_dude>> gasps and moans and strains against <<his npc_rpg_dude>> bonds.<br>
<br>
Kissing and drooling and sucking you join forces for a slobbery, messy, drawn out, ultra-hot blowjob. <<=setup.getNpcName("npc_rpg_warlock","first")>> seems to know <<=ps(setup.getNpcName("npc_rpg_dude","first"))>> every limit, edging <<him npc_rpg_dude>> over and over as the two of you suck, stroke, and make out. <<=setup.getNpcName("npc_rpg_dude","first")>> almost has tears in <<his npc_rpg_dude>> eyes as <<he npc_rpg_dude>> beg-whispers for permission before she finally grants it — with <<his npc_rpg_dude>> leash wrapped around the base of <<his npc_rpg_dude>> cock and her hand in your hair bobbing you up and down like a flesh-light until <<he npc_rpg_dude>> cums with a moan.<br>
<br>
An instant later she rips you off, mashing her lips against yours as her tongue goes searching for its prize, the two of you swapping <<his npc_rpg_dude>> salty glob back and forth several times before she gulps it down.<br>
<br>
"@@.npc_rpg_dude;F-f-fuck,@@" <<he npc_rpg_dude>> moans, looking down at the two of you as <<=setup.getNpcName("npc_rpg_warlock","first")>> licks her lips and reaches for <<his npc_rpg_dude>> cage.<br>
<br>
"@@.npc_rpg_warlock;Hey, don't go passing out on me, slave! I'm ready for some more dancing.@@"<br>
<br>
You smile at the two of them as <<=setup.getNpcName("npc_rpg_warlock","first")>> slides in for a kiss that <<he npc_rpg_dude>> eagerly returns. You have a feeling that, despite her words, it'll be a while yet before she finishes tormenting her bound <<boy npc_rpg_dude>>-toy and you quietly back away to leave the two love-birds to it.
<<case 'doing'>>
You ask what the two of them have planned for the evening and <<=setup.getNpcName("npc_rpg_warlock","first")>> grins. "@@.npc_rpg_warlock;Oh, you know, the usual — work up a nice sweat on the dance floor... then find a corner where I can unlock my <<boy npc_rpg_dude>>friend's chastity cage and suck <<him npc_rpg_dude>> dry of all <<his npc_rpg_dude>> pent-up cum.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> blushes and <<=setup.getNpcName("npc_rpg_warlock","first")>> smiles wider, choking up on the leash and brushing <<his npc_rpg_dude>> cheek. "@@.npc_rpg_warlock;<<He npc_rpg_dude>> gets so shy when <<hes npc_rpg_dude>> pent up! Shy and... delicious.@@"<br>
<br>
She looks around. "@@.npc_rpg_warlock;Yeah, that's it, I'm feeling thirsty, it's time for a taste of my favourite cock.@@"<br>
<br>
She tugs on the leash and starts to turn.<br>
<br>
[<<moveTo 'event_sex_club_rpg_friends_talk' 'Ask if you could help.' 600 "<<set $scene.topic='suck'>>">>]
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br>
<<include "sexClubRpgFriendsTopics">>
</div>/*#
#desc: sex club meet npc_sexdoll
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.danceFloor.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
You dance across to <<=setup.getNpcName("npc_sexdoll","first")>>, they don't even stop grinding on the <<man>> behind her as they greet you with a lusty smile.<br>
<br>
<<include "sexClubSexdollTopics">>
</div><<if $scene.sex_club_info.danceFloor.doing>>
[@@.link_locked;You've already asked what she's up to tonight.@@]<br>
<<else>>
[<<moveTo "event_sex_club_sexdoll_talk" "Ask what she's doing this evening." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_sexdoll at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.danceFloor[$scene.topic] = true>>
<<set $npc_sexdoll.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
You ask <<=setup.getNpcName("npc_sexdoll","first")>> what she's doing this evening.<br>
<br>
"@@.npc_sexdoll;Oh, the usual,@@" she replys with a smile. "@@.npc_maid_mistress;Trawling for dick, or puss... or whatever. Never know what I'll find here, but it's always hot fun!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_sexdoll","first"))>> partner starts possessively groping her and she leans back with a smile.<br>
<br>
"@@.npc_sexdoll;Sorry, looks like I found another customer... mmm, aww yeah...@@" She turns around and slides to her knees and are soon sucking her "dance partner" off in the middle of the floor.<br>
<br>
<<printThought "Wow, she's really turned into a total bimbo sexdoll, hard to believe they're the same person as that guy I met going home my first day...">>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubSexdollTopics">>
</div>/*#
#desc: sex club see npc_shopkeeper
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.danceFloor.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_shopkeeper","npc_shopkeeper_club")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_shopkeeper","first")>> who greets you with a wide smile.<br>
<br>
<<if !setup.checkItemTypeWorn('hood')>>
"@@.npc_shopkeeper;<<=$player.first_name>>! How you doing?@@"
<<else>>
"@@.npc_shopkeeper;<<=$player.first_name>>? is that you?@@"
<</if>>
She pulls you in for a hug, casually lifting you off the ground for a moment. "@@.npc_shopkeeper;Good to see you here at <<printShopName 'sex_club'>> — I hope you're having a great evening!@@"<br>
<br>
<<include "sexClubShopkeeperTopics">>
</div><<if $scene.sex_club_info.danceFloor.doing>>
[@@.link_locked;You have already asked what she is doing this evening.@@]<br>
<<else>>
[<<moveTo "event_sex_club_shopkeeper_talk" "Ask what she's up to this evening." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.danceFloor.business>>
[@@.link_locked;You have already asked how business is going.@@]<br>
<<else>>
[<<moveTo "event_sex_club_shopkeeper_talk" "Ask how her businesses are doing." 60 "<<set $scene.topic='business'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.danceFloor.dance>>
[@@.link_locked;You have already danced with her this evening.@@]<br>
<<else>>
[<<moveTo "event_sex_club_shopkeeper_talk" "Ask if you can have this dance?" 300 "<<set $scene.topic='dance'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_shopkeeper at sex club
#status: RELEASED 0.8.5.0
#ignore_spell: 'un
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.danceFloor[$scene.topic] = true>>
<<set $npc_shopkeeper.flags.topics[$scene.topic] = true>>
<<if $scene.topic == 'dance'>>
<<set _dexterity = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexterity 'very' $EXPOSED>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'little' $EXPOSED>>
<<if setup.checkItemTypeWorn("shoes") && setup.getItemObjFromType("shoes").hasOwnProperty('heels')>>
<<set _heels = setup.getItemObjFromType("shoes").heels.difficulty>>
<<applyExperience 'heels' _heels 'normal' $EXPOSED>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_shopkeeper","npc_shopkeeper_club")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
You ask <<=setup.getNpcName("npc_shopkeeper","first")>> what she's doing this evening.<br>
<br>
She does a little shimmy.
<<if ($events.hasOwnProperty('sex_club_event') || $events.hasOwnProperty('sex_club_event_interior'))&& $scene.sex_club_info.event == 'event_sexclub_event_demo_1'>>
"@@.npc_shopkeeper;Well right now I'm getting my dance on, but a bit later I'm doing a demo. Drum up some business for <<printShopName 'mall_sexstore'>>, y'know?@@"<br>
<br>
She pauses and looks you over. "@@.npc_shopkeeper;Say... how would you feel about helping me out during my demo? Go ahead and think on it — but if you wanna volunteer, well... I just know your cute bod will be sure to move some units!@@" She winks.
<<else>>
"@@.npc_shopkeeper;Taking some time for myself... to get my dance on!@@"
<</if>>
<<case 'business'>>
You ask <<=setup.getNpcName("npc_shopkeeper","first")>> how her various business ventures are going?<br>
<br>
"@@.npc_shopkeeper;Doing great! Even better now that <<printShopName 'sex_club'>> is open again — ain't nothing helps move sex toys and haute couture than people horny from a visit to this palace of sin... or eager to show off the next time they come — pun intended!@@"
<<case 'dance'>>
The music starts up again and you ask <<=setup.getNpcName("npc_shopkeeper","first")>> if you can join her for a dance. She grins. "@@.npc_shopkeeper;Damn right you can!, Come on, let's groove this dance floor!@@"<br>
<br>
She takes you by the hand and plows her way to the middle of the dance floor, and soon the two of you are the centre of attention, jamming to the music as she swings you around. You dance on through the next song as you garner a few cheers, getting in quite the work-out before finally sliding back out of the spotlight in favour of the next dancer, though <<=setup.getNpcName("npc_shopkeeper","first")>> continues to low-key jive on the sidelines.<br>
<br>
<<set _danceScore = setup.getTotalValue("dexterity") + setup.getTotalValue("stamina")>>
<<if setup.checkItemTypeWorn("shoes") && setup.getItemObjFromType("shoes").hasOwnProperty('heels')>>
<<set _danceScore += setup.getTotalValue("heels")>>
<<if _danceScore >= 60>>
"@@.npc_shopkeeper;Damn but you got MOVES, and in heels!@@" she shakes her head in awe. "@@.npc_shopkeeper;I'm used to being the one making it happen on the dance floor, but I could barely keep up with you!@@"
<<elseif _danceScore >= 40>>
"@@.npc_shopkeeper;Now that's what I call dancing!@@" She states with a grin. "@@.npc_shopkeeper;Never would have thought that shy 'un that first showed up in my shop would cut such a rug!@@"
<<elseif _danceScore >= 20>>
"@@.npc_shopkeeper;Not bad, not bad@@" she states with a grin. "@@.npc_shopkeeper;You move pretty good, especially in heels.@@"
<<else>>
She makes no comment about your dancing; you both know she carried things, your "almost falling over" quasi-lindy-hop stylings very much not an act.
<</if>>
<<else>>
<<if _danceScore >= 40>>
"@@.npc_shopkeeper;You got some moves, that's for sure!@@" she states with a grin. "@@.npc_shopkeeper;Now do it in heels... well... then we're talking!@@"
<<elseif _danceScore >= 20>>
"@@.npc_shopkeeper;Not bad, you don't dance half bad... though doing it in flats is a bit of a cheat.@@" She states with a wink.
<<else>>
She makes no comment about your dancing; you both know she carried things, your "almost falling over" quasi-lindy-hop stylings very much not an act.
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubShopkeeperTopics">>
</div>/*#
#desc: sex club npc_cook
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.play.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_cook", "first")>>, who looks very different than how you're normally used to seeing <<him npc_cook>> — trading <<his npc_cook>> normal hair-net for chaps that only serve to draw even more attention to <<his npc_cook>> massive cock — <<if $options.fem>>two women<<else>>a woman and a man<</if>> currently busy worshipping its obelisk-like edifice as <<he npc_cook>> sits looking almost bored.<br>
<br>
<<include "sexClubCookTopics">>
</div><<if $scene.sex_club_info.play.doing>>
[@@.link_locked;You have already asked what <<he npc_cook>> is doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_cook_talk" "Ask what <<hes npc_cook>> doing here this evening." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if setup.checkItemTypeWorn("gag")>>
[@@.link_locked;Your gag interferes with sucking <<him npc_cook>> off.@@]<br>
<<else>>
<<if $scene.sex_club_info.play.cock>>
[@@.link_locked;You have already tried your "hand" with <<him npc_cook>>.@@]<br>
<<else>>
[<<moveTo "event_sex_club_cook_talk" "Try to spend some time with <<his npc_cook>> cock." 60 "<<set $scene.topic='cock'>>">>]<br>
<</if>>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_cook at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.play[$scene.topic] = true>>
<<set $npc_cook.flags.topics[$scene.topic] = true>>
<<if $scene.topic == "cock" && $npc_cook.flags.porn.first_handjob>>
<<applyExperience 'oral' $npc_cook.penis_size 'terrible' $EXPOSED>>
<<applyExperience 'penis' 15 'very' $EXPOSED>>
<<set $npc_cook.flags.topics["cock_success"] = true>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
You ask <<=setup.getNpcName("npc_cook", "first")>> what <<hes npc_cook>> doing and <<he npc_cook>> shrugs.<br>
<br>
<<if ($events.hasOwnProperty('sex_club_event') || $events.hasOwnProperty('sex_club_event_interior')) && $scene.sex_club_info.event == 'event_sexclub_event_bukkake_1'>>
"@@.npc_cook;Aye, just killing time before tonight's presentation... and hoping I might luck out and find a throat that can handle me glory.@@"
<<elseif $scene.sex_club_info.event == 'event_sexclub_event_bukkake_1'>>
"@@.npc_cook;Aye, just recovering from the show.@@"<br>
<br>
You nod, amazed that <<hes npc_cook>> already this hard again so soon after <<his npc_cook>> massive on-stage climax.
<<else>>
"@@.npc_cook;Aye, the usual, <<callPlayer "npc_cook">>. Trying to find the throat that can handle me glory.@@"
<</if>>
<br><br>
<<case 'cock'>>
<<if $npc_cook.flags.porn.handjob_successful>>
<<if setup.getTotalValue("oral") >= $npc_cook.penis_size>>
With
<<if $npc_cook.flags.porn.oral_stage >= 4>>
knowing
<<else>>
cautious
<</if>>
confidence you approach <<=setup.getNpcName("npc_cook", "first")>> and deep-throat it to the root with a single slurp. Feeling it practically between your lungs you savour the inhuman fullness as the other club-goers look on in amazement before you smoothly pull off with a pop and a smile.<br>
<br>
<<=setup.getNpcName("npc_cook", "first")>> grins as a fresh group of worshippers rush in to attempt, and fail, to match your feat.
<<if $npc_cook.flags.porn.oral_stage >= 4>>
<<if $player.flags.porn.pornname != "">>
"@@.npc_cook;Aye! I'd recognise that throat anywhere! <<=$player.flags.porn.pornname>>, ladies and gentlemen! The best throat in porn!@@"
<<else>>
"@@.npc_cook;Aye! I'd recognise that throat anywhere! And the rest of you'uns will too — mark me words, she's coming to a porn viewer near you soon!@@"
<</if>>
<<else>>
<<=setup.getNpcName("npc_cook", "first")>> gasps in surprise. "@@.npc_cook;Now that's a throat that belongs in porn! Yowza! Where have you been all me life?@@"
<</if>>
<br><br>
<<if setup.hasThreshold('penis', 'other_penis', 'obsession') || setup.getTotalValue("penis") < 15>>
You grin, excited by the cock-rush that your feat has encouraged.
<<else>>
As you lean back you notice another patron out of the corner of your eye. At first you are unsure what drew you to them, they look like any other <<if $options.fem>>girl<<else>>dude<</if>>... and then you turn your head enough to look closer, at the <<if $fetish.sph>>pathetically <</if>>undersized bulge in their pants, the look of shame on their face as they stare at <<=ps(setup.getNpcName("npc_cook", "first"))>> massive meatstick.<br>
<br>
[<<moveTo "event_sex_club_penis_obsess_1" "Crawl over and show that you love ALL cock." 60 "<<set $scene.cock=true>>">>]<br>
[<<moveTo "event_sex_club_penis_obsess_1" "You're a size queen, be on your way." 60 "<<set $scene.cock=false>>">>]
<</if>>
<<elseif setup.getTotalValue("oral") >= 15>>
You come close to taking <<=setup.getNpcName("npc_cook", "first")>> down your throat, but <<he npc_cook>> is just too long for you to manage <<his npc_cook>> full <<if $fetish.bestiality_soft>>horse <</if>>cock and you are forced to pull off gasping and trailing drool.
<<elseif setup.getTotalValue("oral") >= 10>>
You make it but a little past the half-way ridge of <<=ps(setup.getNpcName("npc_cook", "first"))>> <<if $fetish.bestiality_soft>>horse <</if>>cock before you have to pull away, gasping and trailing drool.
<<else>>
You have no chance of handling <<=setup.getNpcName("npc_cook", "first")>> mammoth dimensions, but you feel its heat between your fingers and get a few long, luscious licks in before the next supplicant elbows their way in make their attempt at <<=ps(setup.getNpcName("npc_cook", "first"))>> glory.
<</if>>
<<if setup.hasThreshold('penis', 'other_penis', 'obsession') || setup.getTotalValue("penis") < 15 || setup.getTotalValue("oral") < 15>>
<br><br>
<<if !($events.hasOwnProperty('sex_club_event') || $events.hasOwnProperty('sex_club_event_interior')) && $scene.sex_club_info.event == 'event_sexclub_event_bukkake_1'>>
As you step away you are surprised to note that <<his npc_cook>> balls are already looking heavy, despite <<his npc_cook>> monstrous climax. You wonder just what rate <<he npc_cook>> produces at.
<<else>>
As you step away you notice a heavy cock-ring around <<his npc_cook>> base... and that <<his npc_cook>> large balls are looking VERY full. You wonder what <<hes npc_cook>> preparing for...
<</if>>
<</if>>
<<else>>
You try to get some "action" with <<=ps(setup.getNpcName("npc_cook", "first"))>> awe-inspiring <<getWordPenis "npc_cook">>, but there is just too much competition to get access to its magnificence.
<</if>>
<br><br>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<<if $scene.topic != "cock" || ($scene.topic == "cock" && !($npc_cook.flags.porn.handjob_successful && setup.getTotalValue("oral") >= $npc_cook.penis_size && (!setup.hasThreshold('penis', 'other_penis', 'obsession') && setup.getTotalValue("penis") >= 15)))>>
<<include "sexClubCookTopics">>
<</if>>
</div>/*#
#desc: sex club npc_exgirlfriend dom
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.play.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch")>>
<div id="invframe" class="scrolltext">
<<if $npc_exgirlfriend.flags.sexclub.pegged>>
You again approach <<=setup.getNpcName("npc_exgirlfriend","first")>> and she greets you with a smile,
<<else>>
You approach <<=setup.getNpcName("npc_exgirlfriend","first")>> under the protective "safety" of face-covering anonymity. She looks you over with a grin,
<</if>>
her hand idly stroking her <<if $fetish.bestiality_soft>>large-knotted canine <</if>>strap-on.<br>
<br>
<<if $npc_exgirlfriend.flags.sexclub.pegged>>
"@@.npc_exgirlfriend;Hey <<=$player.first_name>>... how you doing this fine evening?@@"<br>
<br>
You smile in response and she grins wider.
<<else>>
"@@.npc_exgirlfriend;Hey, sexy how you doing this fine evening?@@"<br>
<br>
Your heart beats faster at your clandestine operation...
<</if>>
<br><br>
<<include "sexClubExgirlfriendTopics">>
</div><<if $npc_exgirlfriend.flags.sexclub.peg_talk>>
<<if $scene.sex_club_info.play.doing>>
[@@.link_locked;You have already asked what she is doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_exgf_dom_talk" "Ask what she's doing here this evening." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.play.strap>>
[@@.link_locked;She has already done you this evening.@@]<br>
<<else>>
[<<moveTo "event_sex_club_exgf_dom_talk" "Ask if she's up for strapping you again..." 60 "<<set $scene.topic='strap'>>">>]<br>
<</if>>
<<else>>
<<if $scene.sex_club_info.play.doing>>
[@@.link_locked;You have already asked what she is doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_exgf_dom_talk" "Ask what she's doing here this evening." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.play.seduce>>
[@@.link_locked;You have already attempted to seduce your ex.@@]<br>
<<else>>
[<<moveTo "event_sex_club_exgf_dom_talk" "Try to seduce her." 60 "<<set $scene.topic='seduce'>>">>]<br>
<</if>>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with exgirlfriend in dom mode at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.play[$scene.topic] = true>>
<<set $npc_exgirlfriend.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
<<if $npc_exgirlfriend.flags.sexclub.pegged>>
You ask <<=setup.getNpcName("npc_exgirlfriend","first")>> what she's doing here tonight?<br>
<br>
She grins. "@@.npc_exgirlfriend;Oh, you know, working off some steam, keeping up my reputation... the usual.@@"<br>
<<else>>
Careful to disguise your voice, you ask <<=setup.getNpcName("npc_exgirlfriend","first")>> what she's doing here tonight.<br>
<br>
She grins... no... LEERS at you. "@@.npc_exgirlfriend;Just hanging out, hoping to blow off some steam<<if $fetish.bestiality_soft>>, on the prowl for knotty sluts<</if>>.@@"
<</if>>
<<case 'strap' 'seduce'>>
Mustering your courage you eye <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> strap-on and ask if she "@@.pc;Knows how to use that thing?@@"<br>
<br>
"@@.npc_exgirlfriend;Can't you read?@@" She states, thrusting out her chest and its "THE BITCH" lettering. She takes a slow step closer to you. "@@.npc_exgirlfriend;You wanna feel it, huh? You think you got the courage to take it?@@"<br>
<br>
Your heart races, you're face to face with your ex... and she's offering to fuck you...<<if !$npc_exgirlfriend.flags.sexclub.pegged>> and she has no idea who you are...<</if>><br>
<br>
[<<moveTo "event_sex_club_exgf_dom_2" "Submit to the pack leader." 60 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_sex_club_exgf_dom_2" "Run away." 60 "<<set $scene.sex=false>>">>]
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubExgirlfriendTopics">>
</div>/*#
#desc: exgirfriend pegs you for the first time
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_private.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You match gaze with your ex, seeing a fire in her eyes that was never there when you were dating... it scares you a little, even as it has your pulse racing with excitement; the sort of look that could shatter a virginity pledge. She steps closer, her silicone cock pressing against your belly as your heart thunders in your chest...<br>
<br>
She grins and takes you by the hand as she turns, the broken eye-contact allowing you to take a breath. "@@.npc_exgirlfriend;Come along, I want to see that rubber ass wiggling around my cock...@@"<br>
<br>
You follow as she leads you towards a door and into a small, private room containing a bed just off the play area. She clicks the light and pushes you forward as you turn and half stumble before falling back onto the bed.<br>
<br>
"@@.npc_exgirlfriend;Flip over, I'm what you call a back-door bitch.@@"<br>
<br>
You turn face-down on the bed as she lubes up her cock, planting her feet behind you and pushing your hips down before unzipping your ass and
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
fingering your gaped hole.<br>
<br>
"@@.npc_exgirlfriend;All gaping and ready... what an eager butt-slut you are.@@"
<<else>>
removing your plug and teasing your hole with her lube-soaked fingers.<br>
<br>
"@@.npc_exgirlfriend;What an eager butt-slut, stretched and ready.@@"
<</if>>
<<else>>
teasing your hole with her lube-soaked fingers.
<</if>>
<br><br>
[<<moveTo "event_sex_club_exgf_dom_3" "She pushes forward..." 600>>]
<<else>>
You match gaze with your ex for a moment. Her eyes blaze with a crazed fire you never saw back when you were dating... you blink, and scurry away to the sound of her laughter fading behind you.<br>
<br>
<<include "sexClubLocations">>
<</if>>
</div>/*#
#desc: exgirfriend pegs you for the first time
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 12 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_FRIEND>>
<<set $npc_exgirlfriend.flags.sexclub.pegged = true>>
<<addNpcTheme 'npc_psychiatrist' 'ex_girlfriend' 'theme_psychiatrist_ex_11'
5
'event_psychiatrist_session_girlfriend_club_sex_1'
false
>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_private.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch")>>
<div id="invframe" class="scrolltext">
<<if $fetish.bestiality_soft>>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
She slides easily into your welcoming ass, her knot popping into position with ease.
<<else>>
She slides easily into your welcoming ass, her thick knot presented with only momentary resistance before it pops into position.
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
She is big and your entire body shudders... and yet you find yourself opening for her.
<<else>>
She is big, too big, in any rational sense, but you aren't really thinking rationally and somehow, neither is your body, your ass relaxing and spreading like never before.
<</if>>
Her knot stretches you wider than you imagined possible, but it pops into position as if it belonged there.
<</if>>
She locks in place and starts going to work on your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> with magical skill.
<<else>>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
She slides easily into your welcoming, well-trained ass.
<<else>>
She slides easily into your welcoming ass.
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
She is big and your entire body shudders... and yet you find yourself opening for her.
<<else>>
She is big, too big, in any rational sense, but you aren't really thinking rationally and somehow, neither is your body, your ass relaxing and spreading like never before.
<</if>>
<</if>>
You moan as she starts to thrust inside of you.
<</if>>
<br><br>
"@@.npc_exgirlfriend;Who's the bitch now?@@" She growls in your ear, her breath hot on the back of your neck. "@@.npc_exgirlfriend;I said, who's the bitch, now?@@" She repeats louder.<br>
<br>
"@@.pc;I am!@@" You moan as she continues to grind against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> and she nibbles your ear.<br>
<br>
"@@.npc_exgirlfriend;Damn right you are. My submissive, butt-slut bitch, isn't that right, <<=$player.first_name>>?@@"<br>
<br>
<<if $scene.topic == "strap">>
You moan and cum as if on cue — the erotic feeling of your ex-girlfriend — who you never had sex with, and who even cheated on you... the mental state of her fucking your in the ass and calling you her bitch...<br>
<br>
Your entire body shudders at the intense orgasm, eventually going limp as you all but faint.<br>
<br>
"@@.npc_exgirlfriend;Good job... god, every time I <<if $player.identify_as=='male'>>peg<<else>>fuck<</if>> you like this I think about what could have been... we were both so foolish.@@" She sighs wistfully as she stands up and you start to collect yourself. "@@.npc_exgirlfriend;I think we would have broken up eventually, in any case — a fling like tonight is fun, but I've learned that I need a strong, dominant man... or woman, to keep me in line and you? Well, you're AT LEAST as much of a sub as I am. Thanks for the fun — I'll catch you around.@@"<br>
<br>
She gives a parting nod and leaves the room as you take a few more minutes to catch your breath.<br>
<br>
<<include "sexClubLocations">>
<<else>>
She somehow times things to make you cum at that exact moment, your climax distracting you from realising what she just said, but when you do you freeze in place, pinned by and under her...<br>
<br>
"@@.npc_exgirlfriend;That's right, <<=$player.first_name>>. I knew it was you all along. Just like I knew it was you on stage the moment my fingers dug into this THICC ass...@@"<br>
<br>
You don't even know what to say, instead merely moaning as she continues to grind, your body betraying you as she wields her fake cock with masterful skill.<br>
<br>
"@@.npc_exgirlfriend;I used to be jealous of your ass, you know that? But seeing what you've done with it... well... it's a pity you couldn't open up like this before, if I'd known what a freak you were... though... I don't think two subs would have worked all that well, in the end.@@"<br>
<br>
She finally pulls back and out and you regain control of your body, scrambling over to look up at her in shock as her expression softens.<br>
<br>
"@@.npc_exgirlfriend;Sorry, uh... are you okay? I guess I got a bit caught up in the moment... I guess, just... after how it ended between us, and then you approached me...@@" She sighs, "@@.npc_exgirlfriend;I'll leave you to recover, and, well... I hope you find someone who can do you proper someday. After all, anal doesn't count, right?@@"<br>
<br>
She gives your foot a friendly squeeze and blows you a kiss before turning for the door.<br>
<br>
[<<moveTo "event_sex_club_exgf_dom_4" "Don't go..." 600 "<<set $scene.talk=true>>">>]<br>
[<<moveTo "event_sex_club_exgf_dom_4" "Remain still." 600 "<<set $scene.talk=false>>">>]
<</if>>
</div>/*#
#desc: exgirfriend talks after pegging you
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.talk>>
<<set $npc_exgirlfriend.flags.sexclub.peg_talk = true>>
<<applyStress -20>>
<<else>>
<<applyStress 10>>
<<if $now.getUTCHours() < 5>>
<<set _nextDate = setup.setNextDate($now, 0, 7, 0)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 1, 7, 0)>>
<</if>>
<<if $npc_exgirlfriend.flags.knowTruth < 2>>
<<addEvent 'event_exgirlfriend_peg_call' _nextDate>>
<</if>>
<</if>>
<<if $scene.sex_club_info.play>>
<<set $scene.sex_club_info.play.id = "">>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_private.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch")>>
<div id="invframe" class="scrolltext">
<<if $scene.talk>>
<<=setup.getNpcName("npc_exgirlfriend","first")>> is almost to the door when you reach out towards her, "@@.pc;Wait...@@"<br>
<br>
She turns back and you and it all tumbles out; your regret over how your relationship ended, your guilt at your silly virginity pledge, your paranoia about your size... to say nothing of all the changes you've gone through since.<br>
<br>
She ends up next to you on the bed, holding you close, just... being there for you until you run out of steam and fall silent.<br>
<br>
<<if $npc_exgirlfriend.flags.knowTruth == 2>>
"@@.npc_exgirlfriend;I guess what you said before... about me being drugged... well, these are the long-term effects. I just can't help myself sometimes... but it feels so good. Every time I come here as "THE BITCH" I have a wonderful night... and then fall asleep yearning to be put back in my submissive place...@@"
<<else>>
"@@.npc_exgirlfriend;I'm sorry too... I... I really did love you, and, while I didn't understand it at the time, I think my going along with the virginity thing was my submissive side peeking out. But then I started getting urges, NEEDING sex, even before you took those stupid drugs I was crawling up the walls, but unable to tell you... rationalising the fling with <<=setup.getNpcName("npc_yogateacher","first")>>... that was just wrong, even if, in a way, we kind of needed the kick in the pants to get us to end things.@@"<br>
<br>
She leans back and wipes away your tear. "@@.npc_exgirlfriend;I hope you can forgive me someday for... all of it, but, I think we were mismatched from the start, stuck in a spiral of sameness that was never going to have either of us happy.@@"
<</if>>
<br><br>
You nod, then suddenly struck by confusion, if she's that submissive... what's with "THE BITCH" persona, was it all just to entrap you?<br>
<br>
"@@.npc_exgirlfriend;No, no, no! To tell the truth I was shocked when you approached me, and then just caught up in the moment... as to your original question, well... you know how I said my sex-drive jumped a few gears back before? Well, it's gotten even worse since, this, well... it's just another way of dealing with those urges, in a hopefully safe way.@@"<br>
<br>
She smiles, hesitating for a moment before rising to her feet. "@@.npc_exgirlfriend;I'm glad we had this talk... I'll, uh... see you around?@@"<br>
<br>
You nod, this time letting her go with a sense of resolution... even if you also have a few new questions. You take a few more minutes to collect yourself and then head back out.
<<else>>
You don't know what to say, even as she glances back at you and pauses in the doorway you can only watch her leave.<br>
<br>
Several minutes pass before you manage to recover, collecting yourself and returning to the club where <<=setup.getNpcName("npc_exgirlfriend","first")>> is nowhere to be found.
<</if>>
<br><br>
<<include "sexClubLocations">>
</div>/*#
#desc: exgirlfriend calls you about pegging
#status: FINISHED 0.8.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set $npc_exgirlfriend.flags.sexclub.peg_talk = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You phone rings and you pick up to find <<=setup.getNpcName("npc_exgirlfriend","first")>> on the other end.<br>
<br>
"@@.npc_exgirlfriend;Hi, <<=$player.first_name>>? Please don't hang up just... listen.@@" You hear her take a deep breath. "@@.npc_exgirlfriend;Last night I... I got carried away. I was so taken off guard that you approached me, and knowing that you thought that I DIDN'T know... well, I wanted to see how far it would go. Then once I was inside of you... fuck your ass is amazing, by the way, well... things came over me.@@"<br>
<br>
She goes quiet and you almost think the line is dead when she starts talking again, soft and hesitant. "@@.npc_exgirlfriend;I never told you this and... maybe that's the worst part of it all but... well, before we broke up something changed. I'd gone along with your virginity thing — my first submissive tendencies peeking out, but then suddenly one day I just started having this urges, these lusts... I tried to keep it under control but it just kept getting worse, by the time you were having your size freak-out I was almost crawling up the walls and well, in a moment of weakness I bought into my own bullshit about "anal not counting," and the rest is history.@@"<br>
<br>
She sighs "@@.npc_exgirlfriend;I don't know if this makes it any better, but I don't think we were going to work out anyway, we were both just too timid and submissive to address our incompatibilities until it all just... exploded. From what I can tell you've found a better life since, and I'm happy for you for that, even if I wish I hadn't made it so hard in the first place. Anyway, I'll, uh... leave you to it, and I guess see you around, maybe?@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: sex club meet npc_martial_arts
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.play.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_martial_arts","npc_martial_arts_club")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_martial_arts","formal")>> as she stands up from hip-throwing someone through the centre of the earth.<br>
<br>
Pinning <<him>> down casually as the <<guy>> moans lustily she looks up at you with a smile.<br>
<br>
"@@.npc_martial_arts;Hey, <<=$player.first_name>>! How you doing, you been keeping up with your training?@@"<br>
<br>
<<include "sexClubMartialArtsTopics">>
</div><<if $scene.sex_club_info.play.doing>>
[@@.link_locked;You've already asked what she's doing.@@]<br>
<<if $scene.sex_club_info.play.assist>>
[@@.link_locked;You've already tried to help her out.@@]<br>
<<else>>
[<<moveTo "event_sex_club_martial_arts_talk" "Ask if she could use any help?" 60 "<<set $scene.topic='assist'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_sex_club_martial_arts_talk" "Ask what she's doing." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_sexdoll at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.play[$scene.topic] = true>>
<<set $npc_martial_arts.flags.topics[$scene.topic] = true>>
<<if $scene.topic == "assist">>
<<set _martialArts = setup.getTotalValue("martial_arts")>>
<<applyExperience 'martial_arts' _martialArts 'normal' $EXPOSED>>
<<if $npc_martial_arts.flags.topics.assist < 1>>
<<set $npc_martial_arts.flags.topics.assist = 1>>
<</if>>
<<if setup.getTotalValue("martial_arts") >= 15>>
<<if $npc_martial_arts.flags.topics.assist < 3>>
<<set $npc_martial_arts.flags.topics.assist = 3>>
<</if>>
<<addCredits 50>>
<<else>>
<<if $npc_martial_arts.flags.topics.assist < 2>>
<<set $npc_martial_arts.flags.topics.assist = 2>>
<</if>>
<<addCredits 25>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_martial_arts","npc_martial_arts_club")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
You ask <<=setup.getNpcName("npc_martial_arts","formal")>> what she's doing.<br>
<br>
Her opponent tries to escape but she smoothly rolls them over to pin them down even harder. "@@.npc_martial_arts;Just a bit of fun — you wouldn't believe how many degenerates will pay to be woman-handled — plus, it's decent practice for how to handle an unskilled opponent.@@"<br>
<br>
Shifting position she wraps her arm around her opponents neck. "@@.npc_martial_arts;Alright, say night-night.@@" The <<man>>'s eyes roll back in pleasure... and then <<he>> goes limp, <<=setup.getNpcName("npc_martial_arts","formal")>> sliding out from under <<him>> as what appears to be an assistant appears with smelling salts, helping the <<man>> to <<his>> feet and leading <<him>> off as <<=setup.getNpcName("npc_martial_arts","formal")>> wipes herself off with a towel.<br>
<br>
"@@.npc_martial_arts;See? Good, clean fun, now who's next?@@" She looks over to where a half-dozen <<men>> ranging from leather-wearing <<if $options.fem>>amazons<<else>>brutes<</if>> to a rubber gimp eagerly wave.
<<case 'assist'>>
You ask <<=setup.getNpcName("npc_martial_arts","formal")>> if you could, perhaps, help her out?<br>
<br>
<<if setup.checkItemTypeWorn("bondagegear")>>
She looks you over and shakes her head. "@@.npc_martial_arts;Sorry, there's handicap matches but... all that bondage gear just wouldn't be safe. Maybe some other night, eh?@@"
<<else>>
<<if setup.getTotalValue("martial_arts") < 10>>
She glances at you for a moment, then shakes her head. "@@.npc_martial_arts;Sorry, maybe if you were a bit more practiced but... well, I don't want to see you hurt. And "winning" their match would just kill my customer's enjoyment of the whole thing.@@"
<<else>>
<<if setup.getTotalValue("martial_arts") >= 15>>
She grins at you, and then points to the largest <<guy>> waiting. "@@.npc_martial_arts;You, you're up, let's see how you fare against my cute little protege.@@"<br>
<br>
The <<man>>, an outfit change away from cosplaying <<if $options.fem>>She-Hulk<<else>>a small barn<</if>>, walks towards you with a confident grin. "@@.generic_male2;Alright, little thing, I promise not to hurt you...@@"<br>
<br>
You beckon <<him>> forward, then smoothly slide under <<his>> hips and send <<him>> sailing through the air.<br>
<br>
<<He>> lands with a loud "@@.generic_male2;Ooof@@" as you follow <<him>> to the ground, aggressively going for a high mount and riding <<him>> heavy as <<he>> tries unsuccessfully to throw you off or stand up as you keep knocking <<him>> back down until <<hes>> panting and <<=setup.getNpcName("npc_martial_arts","formal")>> appears standing over you.<br>
<br>
"@@.npc_martial_arts;Hmm... looks like size isn't all it's cracked up to be, hmm? Nice try, though, now beg to be let back up like a good <<if $options.fem>>girl<<else>>himbo<</if>>.@@"<br>
<br>
Chagrined as you grin down the <<guy>> nods in between pants. "@@.generic_male2;I'm sorry for insulting you, please let me up?@@"<br>
<br>
You rise to your feet and offer <<him>> a hand up, though <<his>> pride keeps <<him>> from taking it as <<he>> slinks away... sporting an obvious hard-on.
<<else>>
She smiles at you, then points at a tall bean-pole of a <<guy>> from the waiting cluster. "@@.npc_martial_arts;You, you're up, let's see how you fare against my cute little protege.@@"<br>
<br>
Well over a head taller than you the <<guy>> approaches somewhat tentatively... and you blast-double <<him>> off <<his>> feet.<br>
<br>
All arms and legs with little plan <<he>> flails around as you move across <<his>> body like you were traversing a scrawny colossus, eventually dragging <<him>> to the ground as you lock <<him>> up in a reverse triangle, sitting up to smile down at <<him>> as <<his>> eyelids flicker and <<he>> goes limp with a smile on <<his>> face.<br>
<br>
You release and step away as the "assistant" appears and helps the <<guy>> back to <<his>> feet and off the mat.
<</if>>
<br><br>
"@@.npc_martial_arts;Great job!@@" She says with a grin at the end of your "match" — "@@.npc_martial_arts;Here's your cut. I think I have it in hand for the rest of the night — can't be letting the student have all the fun!@@"<br>
<br>
You're surprised at the <<if setup.getTotalValue("martial_arts") >= 15>>fifty credits<<else>>twenty-five<</if>> she handed you and you stick around for another few minutes to watch her gently toss another woman around for a bit before you head off.
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<if $scene.topic == "assist" && setup.getTotalValue("martial_arts") >= 10>>
<<include "sexClubLocations">>
<<else>>
<<include "sexClubMartialArtsTopics">>
<</if>>
</div>/*#
#desc: visit with npc_sex_club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.sex_club_info.owner.dom>>
<<set $scene.firstGimp = !$npc_sex_club.flags.gimp>>
<<set $npc_sex_club.flags.gimp = true>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex_club_info.owner.dom>>
You somewhat nervously approach the club owner and <<he npc_sex_club>> grins at you and nods in greeting, <<his npc_sex_club>> <<if $npc_sex_club.fem>>black punk clothing<<else>>bird-like mask<</if>> only adding to <<his npc_sex_club>> air of dominance.<br>
<br>
"@@.npc_sex_club;Enjoying the party?@@"<br>
<br>
You quickly nod and <<he npc_sex_club>> smiles wider.
<<elseif $scene.firstGimp>>
You approach the gimp, finally realising that it is <<=setup.getNpcName("npc_sex_club","formal")>> in a VERY different outfit from when last you saw <<him npc_sex_club>> — arms bound behind <<his npc_sex_club>> back, covered head to toe in tight leather, complete with a zipper-adorned gimp hood over <<his npc_sex_club>> head... and yet you somehow know <<his npc_sex_club>> identity underneath it all.<br>
<br>
<<He npc_sex_club>> bows deep at your approach, <<his npc_sex_club>> voice submissive and meek rather than <<his npc_sex_club>> prior baritone smoothness. "@@.npc_sex_club;I hope you are finding the party to your liking?@@"<br>
<br>
You nod and <<he npc_sex_club>> smiles... well, <<his npc_sex_club>> eyes smile, <<his npc_sex_club>> lips are hidden by <<if $npc_sex_club.fem>>the closed off mask<<else>>a zipper<</if>> over <<his npc_sex_club>> mouth; the leather hood looking to be layered over a latex one.<<if !$npc_sex_club.fem>> Similarly <<he npc_sex_club>> wears a leather straitjacket over what you estimate is a head to toe latex catsuit<</if>>.
<<else>>
You approach <<=setup.getNpcName("npc_sex_club","nickname")>> in <<his npc_sex_club>> bound gimp attire and <<he npc_sex_club>> bows in greeting before softly exchanging pleasantries.
<</if>>
<br><br>
<<include "sexClubOwnerTopics">>
</div><<if $scene.sex_club_info.owner.doing>>
[@@.link_locked;You have already asked what <<hes npc_sex_club>> doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_owner_talk" "Ask what <<hes npc_sex_club>> doing." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.owner.outfit>>
[@@.link_locked;You have already asked about <<his npc_sex_club>> clothes.@@]<br>
<<else>>
[<<moveTo "event_sex_club_owner_talk" "Ask about <<his npc_sex_club>> current outfit." 60 "<<set $scene.topic='outfit'>>">>]<br>
<</if>>
<<if !$scene.sex_club_info.owner.dom || $npc_sex_club.flags.gimp>>
<<if $scene.sex_club_info.owner.role>>
[@@.link_locked;You have already learned about <<his npc_sex_club>> status as a "switch."@@]<br>
<<else>>
[<<moveTo "event_sex_club_owner_talk" "Ask why <<he npc_sex_club>> dresses and acts differently on different nights." 60 "<<set $scene.topic='role'>>">>]<br>
<</if>>
<</if>>
<<if $scene.sex_club_info.owner.closing>>
[@@.link_locked;You already asked why the club was closed.@@]<br>
<<else>>
[<<moveTo "event_sex_club_owner_talk" "Ask why the club was closed for a while?" 60 "<<set $scene.topic='closing'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_ceo_visit_invite_1")>>
<<if $scene.sex_club_info.owner.visit>>
[@@.link_locked;You already talked about visiting <<=ps(setup.getNpcName("npc_sex_club","formal"))>> special client.@@]<br>
<<elseif $currentTasks.hasOwnProperty("ceo_visit_first") && !$currentTasks.ceo_visit_first.finished || $currentTasks.hasOwnProperty("ceo_visit_repeat") && !$currentTasks.ceo_visit_repeat.finished>>
[@@.link_locked;You have already been scheduled for a visit with <<=ps(setup.getNpcName("npc_sex_club","formal"))>> special client.@@]<br>
<<else>>
[<<moveTo "event_sex_club_owner_ceo_visit_1" "Ask about visiting their special client?" 60>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_egg_guard_1_club_7")>>
<<if $scene.sex_club_info.owner.rachel>>
[@@.link_locked;You have already talked about <<=setup.getNpcName("npc_rachel","first")>> this evening.@@]<br>
<<else>>
<<if State.hasPlayed("event_rachel_9001_intro_6")>>
[<<moveTo "event_sex_club_owner_talk" 'Ask about <<=setup.getNpcName("npc_rachel","first")>>.' 60 "<<set $scene.topic='rachel'>>">>]<br>
<<else>>
[<<moveTo "event_rachel_9001_intro_1" 'Ask about <<=setup.getNpcName("npc_rachel","first")>>.' 60 "<<set $scene.sex_club_info.owner.rachel=true>>">>]<br>
<</if>>
<</if>>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_sex_club_owner at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.owner[$scene.topic] = true>>
<<set $npc_sex_club.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
You ask <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> what <<hes npc_sex_club>> doing this evening and <<he npc_sex_club>>
<<if $scene.sex_club_info.owner.dom>>
smiles broadly. "@@.npc_sex_club;What else but enjoying the depravity! Oh it is so good to be back open. I was going through withdrawal not having a weekly dose of sinful excess!@@"
<<else>>
nods at you. "@@.npc_sex_club;What else but enjoying the depravity! Oh it is so good to be back open. I was going through withdrawal not being able to give myself over to sinful perversion.@@"
<</if>>
<<case 'outfit'>>
You ask <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> about <<his npc_sex_club>> outfit and <<he npc_sex_club>> smiles.<br>
<br>
<<if $scene.sex_club_info.owner.dom>>
"@@.npc_sex_club;Exquisite, isn't it? Custom vat-grown leather — one single piece grown, tanned and stitched. The seams are all for effect and shape, no actual cutting was involved... marvelous what technology can do, hmm?@@"
<<else>>
"@@.npc_sex_club;Well clothes maketh the <<man npc_sex_club>>, as they say and for me, well... to get in the proper submissive state of mind there's nothing like a thick leather bodysuit followed by a hood and cuffs mmm... I just love the feeling of restraint.@@"
<</if>>
<<case 'role'>>
You ask about the fact that <<he npc_sex_club>> seems to switch outfits and demeanour night to night.<br>
<br>
"@@.npc_sex_club;But of course! Dom, sub, they are but two sides to the same glorious coin, and I want to experience all of it! For me, sticking to a single role is far too limiting — and not in the "mmm, bind me tighter" sort of way!@@"
<<case 'closing'>>
You ask about why the club had its recent grand re-opening?<br>
<br>
<<He npc_sex_club>> seems a touch pensive, as if planning <<his npc_sex_club>> words before responding. "@@.npc_sex_club;Yes, well, bit of a mess, that. Mostly bureaucracy, I would not want to bore you but... suffice to say, after some negotiation with our investors we are back, and isn't that the important thing?@@"
<<case 'rachel'>>
You ask if <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> has heard from <<=setup.getNpcName("npc_rachel","first")>> recently?<br>
<br>
<<if State.hasPlayed("event_rachel_9001_install_11")>>
<<He npc_sex_club>> laughs. "@@.npc_sex_club;Something like that. It will not shut up about its new chastity cage and how much it wants to be a Social Interaction Service Syndicate Inc. owned <<if $fetish.sissy>>SISSI<<else>>asset<</if>>... to tell the truth it's getting a bit repetitive so I'm either get my cock sucked or gag-on-sight stage... though with <<=setup.getNpcName("npc_rachel","first")>> neither is exactly a deterrent.@@"
<<else>>
<<He npc_sex_club>> nods. "@@.npc_sex_club;Da, it will not shut up about that chastity device... I hope you make the connection with your company soon before it exhausts itself, or us, begging for punishment for being "insufficiently secured."@@"
<</if>>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubOwnerTopics">>
</div><<if $npc_primrose.flags.evil == 1>>
<<if $scene.sex_club_info.primrose.work>>
[@@.link_locked;You have already asked how work is going.@@]<br>
<<else>>
[<<moveTo "event_sex_club_primrose_bar" "Ask what how work is going." 60 "<<set $scene.topic='work'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.primrose.outfit>>
[@@.link_locked;You have already asked about how <<hes npc_primrose>>'s feeling.@@]<br>
<<else>>
[<<moveTo "event_sex_club_primrose_bar" "Ask how <<he npc_primrose>>'s feeling." 60 "<<set $scene.topic='feeling'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.primrose.visor>>
[@@.link_locked;You already asked about <<his npc_primrose>> visor.@@]<br>
<<else>>
[<<moveTo "event_sex_club_primrose_bar" "Ask about <<his npc_primrose>> visor." 60 "<<set $scene.topic='visor'>>">>]<br>
<</if>>
<<else>>
<<if $scene.sex_club_info.primrose.doing>>
[@@.link_locked;You have already asked what <<hes npc_primrose>> doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_primrose_bar" "Ask what <<hes npc_primrose>> doing." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.primrose.outfit>>
[@@.link_locked;You have already asked about <<his npc_primrose>> clothes.@@]<br>
<<else>>
[<<moveTo "event_sex_club_primrose_bar" "Ask about if <<he npc_primrose>> has any issues getting to the club in that outfit.." 60 "<<set $scene.topic='outfit'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.primrose.cocktail>>
[@@.link_locked;You already asked what <<hes npc_primrose>> is drinking.@@]<br>
<<else>>
[<<moveTo "event_sex_club_primrose_bar" "Ask what is in the glass." 60 "<<set $scene.topic='cocktail'>>">>]<br>
<</if>>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: npc_primrose at sex club bar
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.bar.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.getPrimroseImage("club")>>
<div id="invframe" class="scrolltext">
<<if $npc_primrose.flags.evil == 1>>
You approach <<=setup.getNpcName("npc_primrose","first")>>, asking if you can drink with <<him npc_primrose>>?<br>
<br>
<<his npc_primrose>> distant expression does not change. <<he npc_primrose>> does not look upset or annoyed; if anything, <<he npc_primrose>> looks distinctly sad. <<he npc_primrose>> looks like <<he npc_primrose>> knows where <<he npc_primrose>> is but not why <<he npc_primrose>> is there. "@@.npc_primrose;You may. I do not mind your presence.@@" You take a seat and look at your drinking companion.
<<else>>
You walk up to the familiar latex doll at the bar and <<=setup.getNpcName("npc_primrose","first")>> greets you... well, technically with a smile, since that's the only expression their kigurumi mask can show, but, beyond that their body-language tells you they're happy to see you.
<</if>>
<br><br>
<<include "sexClubPrimroseTopics">>
</div>/*#
#desc: talk with npc_primrose at sex club
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.primrose[$scene.topic] = true>>
<<set $npc_primrose.flags.sexclubtopics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.getPrimroseImage("club")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
It's unusual to see <<=setup.getNpcName("npc_primrose","first")>> away from the office. You ask <<him npc_primrose>> how <<he npc_primrose>>'s enjoying <<his npc_primrose>> night. "@@.npc_primrose;Good so far! I get to spend some of it with you~@@" <<he npc_primrose>> winks before returning to the topic at hand: "@@.npc_primrose;I got all my logs penned a little early so I was able to walk here instead of taking a cab. I enjoy city nights. The crisp air, the neon lights, the thrill of not knowing what's around the corner. I'm sure you experience it too.@@"
<<case 'outfit'>>
Admiring the scientist's taste in latex, you ask <<=setup.getNpcName("npc_primrose","first")>> if <<he npc_primrose>> has any trouble getting <<his npc_primrose>> gear to the club. "@@.npc_primrose;Great question. Usually I will change before leaving. Some of the gear I take with me qualifies as company property so it needs to be checked out before I head over. I have a big trench coat that belonged to an old fling. It's good for hiding whatever I'm wearing until I arrive. Can't just walk around showing all this off, ya know?@@"
<<case 'cocktail'>>
Eying the borderline glowing drink, you ask <<=setup.getNpcName("npc_primrose","first")>> what's in the glass. "@@.npc_primrose;Oh, this? It's a Kiss on the Lips.@@" <<he npc_primrose>> motions to the margarita glass and walks you through the recipe: "@@.npc_primrose;it's ice, white rum, raspberry juice, and triple sec in a blender. Strain into a cocktail glass, add grenadine, and flourish with an orange wedge. The brightness is just food colouring and bartender magic.@@"<br>
<br>
Well, now you know.
<<case 'work'>>
You ask <<=setup.getNpcName("npc_primrose","first")>> how <<his npc_primrose>> work has been.<br>
<br>
"@@.npc_primrose;Productive.@@" The change between how <<he npc_primrose>> talked about <<his npc_primrose>> work before and after <<his npc_primrose>> capture is striking. There is no joy in <<his npc_primrose>> tone, there isn't even satisfaction. You ask if he enjoys <<his npc_primrose>> work. "@@.npc_primrose;My enjoyment is secondary. My contribution to the company is of sole importance.@@"<br>
<br>
You are not particularly surprised by the answer.
<<case 'feeling'>>
You ask <<=setup.getNpcName("npc_primrose","first")>> how he is feeling. There's a moment of hesitation. A quiet hint of resistance behind <<his npc_primrose>> eyes. A sorrow that transcends <<his npc_primrose>> programming. <<he npc_primrose>> is about to speak when you notice a flicker of light from inside the visor. <<his npc_primrose>> demeanour changes instantly, returning to <<his npc_primrose>> previous detached disposition. "@@.npc_primrose;I am fine. Glory to <<=setup.getNpcName("npc_boss","formal")>> and <<if $fetish.sissy>>SISSI<<else>>the company<</if>>.@@"<br>
<br>
You cringe. <<he npc_primrose>>'s definitely not <<him npc_primrose>>self. <<he npc_primrose>> certainly won't be until you find a way to free <<him npc_primrose>> of that visor...
<<case 'visor'>>
You ask <<=setup.getNpcName("npc_primrose","first")>> about the visor <<he npc_primrose>>'s wearing. "@@.npc_primrose;This? It is a productivity enhancement device that has been incorporated into my punishment. It keeps me focused on what is important and blocks out what isn't. In the future that we shall bring together for <<if $fetish.sissy>>SISSI<<else>>the company<</if>>, they will be mandatory.@@"<br>
<br>
You nod. Hopefully that future will never come. You quietly return to your drink. Thank goodness it isn't on your head...
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "sexClubPrimroseTopics">>
</div>/*#
#desc: see npc_primrose at the sex club
#status: RELEASED 0.8.9.0
#ignore_spell: hyperpop,exxxcel
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png">>
<div id="invframe" class="scrolltext">
You shimmy over to <<=setup.getNpcName("npc_primrose","first")>> who greets you with a giddy hug. "@@.npc_primrose;Hey! Good to see you on the floor!@@" You two get squeezed together by the surrounding dancers and idly chat while trying to avoid turning a chaste dance into a carnal bump-and-grind.<br>
<br>
<<if setup.getTotalValue("bimbofication") >= 10>>
The track changes to a bright and bubbly hyperpop song. You brighten up and ask "is this Happy Hardcore Fucking by Exxxcel?" <<=setup.getNpcName("npc_primrose","first")>> gasps happily, nodding rapidly. "@@.npc_primrose;Like, yeah! It's my favourite club song! I didn't know you were a fan!@@" You giggle and say that you've just started to get into their stuff. <<=setup.getNpcName("npc_primrose","first")>> is obviously overjoyed to have a friend to share in this dance and the two of you join with the other surrounding bimbos to form a hot and heavy grope-dance that only ends when one of the bouncers break up your group before it turns into an orgy.
<<else>>
The track changes to a thrumming hyperpop song. The pitched-up vocals, repetitive melody, and general "pinkness" of it all is overwhelming. You falter in your dance as <<=setup.getNpcName("npc_primrose","first")>> picks up the pace. "@@.npc_primrose;Oh my god, this is my favourite song! It's called Happy Hardcore Fucking and it's the best!@@" You don't get a word in as the excited scientist gushes about music that you can charitably describe as headache-inducing. Still, you act polite until it is over. It's not the worst thing in the world, just not your taste. When the song is over, you excuse yourself.
<</if>>
<br><br>
[<<moveTo 'event_sex_club_interior' 'Continue on your way.' 60>>]
</div><<if $events.hasOwnProperty('sex_club_event')>>
<<removeEvent 'sex_club_event'>>
<</if>>
<<if $events.hasOwnProperty('sex_club_event_interior')>>
<<removeEvent 'sex_club_event_interior'>>
<</if>>
<<if $events.hasOwnProperty('sex_club_event_play')>>
<<removeEvent 'sex_club_event_play'>>
<</if>>
<<if $events.hasOwnProperty('sex_club_event_dance')>>
<<removeEvent 'sex_club_event_dance'>>
<</if>>
<<if $events.hasOwnProperty('sex_club_event_bar')>>
<<removeEvent 'sex_club_event_bar'>>
<</if>>
<<if $events.hasOwnProperty('sex_club_end')>>
<<removeEvent 'sex_club_end'>>
<</if>>
<<if $events.hasOwnProperty('sex_club_end_interior')>>
<<removeEvent 'sex_club_end_interior'>>
<</if>>
<<if $events.hasOwnProperty('sex_club_end_play')>>
<<removeEvent 'sex_club_end_play'>>
<</if>>
<<if $events.hasOwnProperty('sex_club_end_dance')>>
<<removeEvent 'sex_club_end_dance'>>
<</if>>
<<if $events.hasOwnProperty('sex_club_end_bar')>>
<<removeEvent 'sex_club_end_bar'>>
<</if>>/*#
#desc: sex club show - bdsm whipping
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
You look to the club's stage where the curtain rises to reveal <<=setup.getNpcName("npc_discipline", "formal")>> standing next to a Saint Andrew's cross <<if $scene.sex_club_info.owner.dom>>with the now bare-backed club owner<<else>>with a bare-backed gimp<</if>> strapped to it.<br>
<br>
<<=setup.getNpcName("npc_discipline", "formal")>> immediately launches into a discussion/demo of single tail techniques, showing off how to vary intensity, crack for intimidation, and precisely aim each blow as she lays a criss-cross of red lines across her "assistant's" back.<br>
<br>
<<if $scene.sex_club_info.owner.dom>>The club owner<<else>>Her assistant<</if>> hanging a bit heavy <<=setup.getNpcName("npc_discipline", "formal")>> turns to the audience with a grin.<br>
<br>
"@@.npc_discipline;It appears I could use a new model... <<=$player.first_name>>... how about you come up and give me a hand?@@"<br>
<br>
Her gaze finds you in the crowd and the way parts as you are quickly guided to the front and then helped up onto the stage.<br>
<br>
The crowd cheers as, rather than being placed on the cross, your hands are cuffed above your head as your back is exposed and you are left to do little more but twirl in place.<br>
<br>
"@@.npc_discipline;This sort of arrangement has advantages in that it requires far less equipment,@@" <<=setup.getNpcName("npc_discipline", "formal")>> explains as she gestures towards the large cross on the other side of the stage. "@@.npc_discipline;But it presents additional challenges as the submissive has greater freedom of movement, so one must pay close attention between blows and aim conservatively and with an eye towards predicting where the target will be, rather than where it is in the moment.@@"<br>
<br>
[<<moveTo "event_sexclub_event_bdsm_2" "Continue." 1800>>]<br>
</div>/*#
#desc: sex club show - you whipped
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'terrible' $EXPOSED>>
<<applyExperience 'bondage' 7 'normal' $EXPOSED>>
<<if setup.getTotalValue("dominance") > 0>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $EXPOSED>>
<</if>>
<<include "checkCeoInviteEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
You hang helpless as <<=setup.getNpcName("npc_discipline", "formal")>> lines up, continuing to lecture as she walks around you and gives you what feels like the hardest whipping you could handle.<br>
<br>
She does more than just flog your back and ass, showing off aim and technique to sting your thighs, your armpits, or even just crack the whip near your head to make you jump or turn into a better position.<br>
<br>
<<if setup.getTotalValue("dominance") > 0>>
Despite being on the receiving end you can't help but learn a thing or two from <<=ps(setup.getNpcName("npc_discipline", "formal"))>> masterful — or is that Mistress-full? technique... when you aren't gasping in pain, that is.<br>
<br>
<</if>>
At the end of her demo the crowd cheers, for her, and then for you as she demonstrates after-care by rubbing your sore back with some healing salves and then gently helps you back down.<br>
<br>
You return to the crowd to a few painfully "congratulatory" slaps on the back...<br>
<br>
<<=setup.getNpcName("npc_discipline", "formal")>> thanks the audience for their attention to close out the show.<br>
<br>
The curtain drops and customers scatter through the club as the dance floor spins up and the play area comes alive.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show - pony dressage (audience)
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png">>
<div id="invframe" class="scrolltext">
You look towards the stage at <<=setup.getNpcName("npc_shoestore_manager", "first")>>, looking striking in her fitted riding habit and towering heels.<br>
<br>
Holding a long buggy whip in one hand she bows and then gestures to the side of the stage as <<=setup.getNpcName("npc_shoestore_assistant", "first")>> prances proudly forth.<br>
<br>
To say that <<=setup.getNpcName("npc_shoestore_assistant", "first")>> is stunning is an understatement.
<<if $fetish.pet_play>>
Rather than her normal cybernetic legs she is attached to a full-on centaur apparatus, arms bound behind her back, nipple and clit bells chiming with each step.
<<else>>
She looms every centimetre of her over two-metre height; and more, thanks to the steep pony-boots that seem to in no way limit her mobility. Arms bound behind her back her chest is thrust forward, putting her nipple bells on display as they, and her matching clit bell, chime with each step.
<</if>>
Leather restraints criss-crossing her body and culminating in her gorgeous bit gag and head-dress making her look positively stunning — the picture of <<if $fetish.pet_play>>cybernetic centaur<<else>>human pony<</if>> perfection.<br>
<br>
Looking tall <<=setup.getNpcName("npc_shoestore_assistant", "first")>> is nonetheless completely subservient to <<=setup.getNpcName("npc_shoestore_manager", "first")>>, launching into a jaw-dropping acrobatic dressage routine... before taking a knee for her wife to mount the saddle attached to her back and continue on with even more stunning gymnastic feats — seeming in no way hindered by the weight of her rider.<br>
<br>
The crowd whoops and cheers as the show comes to an end. <<=setup.getNpcName("npc_shoestore_manager", "first")>> flips to the floor to land perfectly on her platform heels and takes a bow.<br>
<br>
"@@.npc_shoestore_manager;Thank you, thank you! If you are looking to train a pony of your own — or become one yourself! Everything you could need is available in the mall — <<printShopName 'mall_sexstore'>> for the best tack, and <<printShopName 'mall_shoe_store'>> for the finest pony-boots in the world!@@"<br>
<br>
She takes another bow as the curtain falls.<br>
<br>
<<printThought "Wow, that was stunning!">><br>
<br>
Riding high from the exciting show the crowd disperses.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show - pony dressage prep (participate)
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 12 'normal' $SEEN_FRIEND>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_shoestore_assistant","npc_shoestore_centaur")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_shoestore_manager", "first")>> that you're ready to do the show and she grins, leading you through the back room and up onto the stage. Hidden from view by the curtain <<=setup.getNpcName("npc_shoestore_manager", "first")>> cinches your restraints tight and takes a few minutes to give you some practice in following basic dressage commands while her wife "finishes changing." <br>
<br>
You hear the announcement filter back through the curtain and <<=setup.getNpcName("npc_shoestore_manager", "first")>> has you stand next to her as she poses with her buggy whip. Your pony-boots basically cancel out her steep platform heels leaving you quite a bit taller than her... yet feeling totally submissive between your leather bondage and her stern formality.<br>
<br>
[<<moveTo "event_sex_club_dressage_2" "Time for the show..." 1800>>]
</div>/*#
#desc: sex club show - pony dressage (participate)
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'very' $EXPOSED>>
<<applyExperience 'bondage' 12 'very' $EXPOSED>>
<<applyExperience 'anal' 12 'very' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_shoestore_manager","npc_shoestore_club") setup.charImage("npc_shoestore_assistant","npc_shoestore_centaur")>>
<div id="invframe" class="scrolltext">
The curtain rises and the crowd cheers as <<=setup.getNpcName("npc_shoestore_manager", "first")>> bows and then gestures at you in introduction before starting in on a simple routine of you high-stepping around the stage.<br>
<br>
Between the cheering crowd and your bouncing pony-plug you are feeling very excited, but the sight of <<=setup.getNpcName("npc_shoestore_assistant", "first")>> striding out a short while later to turn your one pony show into a duet almost has you fall over in shock.<br>
<br>
<<if $fetish.pet_play>>
Rather than her normal cybernetic legs <<=setup.getNpcName("npc_shoestore_assistant", "first")>> is attached to a full-on centaur apparatus, arms bound behind her back, nipple and clit bells chiming with each step.
<<else>>
She looms every centimetre of her over two-metre height; and more, thanks to the steep pony-boots that seem to in no way limit her mobility. Arms bound behind her back her chest is thrust forward, putting her nipple bells on display as they, and her matching clit bell, chime with each step.
<</if>>
Leather restraints criss-crossing her body and culminating in her gorgeous bit gag and head-dress making her look positively stunning — the picture of <<if $fetish.pet_play>>cybernetic centaur<<else>>human pony<</if>> perfection.<br>
<br>
While her appearance is impressive her performance is astounding. Despite being over a third of a metre taller than yourself — and unable to use her arms for balance, she prances and jumps and twirls with the power and grace of the professional athlete she once was.<br>
<br>
A testament to the skill of <<=setup.getNpcName("npc_shoestore_manager", "first")>> and <<=setup.getNpcName("npc_shoestore_assistant", "first")>> your place in the routine looks like it has been rehearsed a hundred times as you weave back and forth and <<=setup.getNpcName("npc_shoestore_assistant", "first")>> even leaps over you or her wife.<br>
<br>
By the end of the routine the entire crowd is on their feet cheering, <<=setup.getNpcName("npc_shoestore_manager", "first")>> standing between her two ponies to take a bow before making a closing announcement. "@@.npc_shoestore_manager;Thank you, thank you! If you are looking to train a pony of your own — or become one yourself — everything you could need is available in the mall — <<printShopName 'mall_sexstore'>> for the best tack, and <<printShopName 'mall_shoe_store'>> for the finest pony-boots in the world!@@"<br>
<br>
<<=setup.getNpcName("npc_shoestore_assistant", "first")>> takes a knee and <<=setup.getNpcName("npc_shoestore_manager", "first")>> mounts the saddle attached to her back, the two doing a final loop of the stage before prancing off the stage with you following behind as the curtain falls.<br>
<br>
[<<moveTo "event_sex_club_dressage_3" "Continue." 600>>]
</div>/*#
#desc: sex club show - pony dressage (participate) end
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "bestialityFinalChecker">>
<<include "checkCeoInviteEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_shoestore_manager","npc_shoestore_club") setup.charImage("npc_shoestore_assistant","npc_shoestore_centaur")>>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;Marvelously done!@@" <<=setup.getNpcName("npc_shoestore_manager", "first")>> states with a smile as she scratches her wife behind the ear. "@@.npc_shoestore_manager;It is good to have someone a bit more... normal to take part in the show — not that you aren't a stunning example of beautiful pony-ness in your own right but... well, you're still a bit more relatable compared to my lovely towering wife.@@"<br>
<br>
You nod, even next to normal people <<=ps(setup.getNpcName("npc_shoestore_assistant", "first"))>> size is eye-catching, to say nothing of the pairing she makes with the wife half her height. Your bit-gag removed you thank the both of them for the opportunity and head back out; the loving couple taking a bit more time together to come down from the high-adrenaline show.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show - bondage show intro
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png">>
<div id="invframe" class="scrolltext">
You look to the stage where <<=setup.getNpcName("npc_shopkeeper","first")>> addresses the audience with her trademark boisterous enthusiasm.<br>
<br>
"@@.npc_shopkeeper;Good evening, Sünders! I don't want to take too much time away from your lovely revelry but... well, I've got a store to pimp out, so who wants to see some bondage!@@"<br>
<br>
A cheer goes up as she smiles, know thy audience, indeed.<br>
<br>
"@@.npc_shopkeeper;Could I have a volunteer?@@" She asks.<br>
<br>
[<<moveTo "event_sexclub_event_demo_2_join" "Raise your hand." 1800>>]<br>
[<<moveTo "event_sexclub_event_demo_2" "Just enjoy the show." 1800>>]
</div>/*#
#desc: sex club show - bondage show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_shopkeeper","npc_shopkeeper_club")>>
<div id="invframe" class="scrolltext">
<<if $scene.sex_club_info.owner.dom>>
<<=setup.getNpcName("npc_shopkeeper","first")>> looks around for a volunteer only for <<=setup.getNpcName("npc_sex_club","formal")>> to pop up onto the stage.<br>
<br>
"@@.npc_shopkeeper;Well! I guess when the <<man npc_sex_club>> running the show asks... I'd better go along!@@"<br>
<br>
The crowd laughs and she sets to work removing <<his npc_sex_club>> <<if $npc_sex_club.fem>>clothes<<else>>straitjacket<</if>> and strapping <<him npc_sex_club>> up with a full set of bondage cuffs.
<<else>>
Either as a plant or a joke <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> finds <<himself npc_sex_club>> pushed to the front of the crowd, the chunk of the audience that know who <<he npc_sex_club>> is laughing in amusement as <<he npc_sex_club>> pretends at resistance while <<=setup.getNpcName("npc_shopkeeper","first")>> starts strapping <<him npc_sex_club>> up with a set of bondage cuffs.<br>
<br>
"@@.npc_shopkeeper;Watch yourself, <<=setup.getNpcName('npc_sexstore_clerk', 'first')>>, or I'm going to add all of these to your uniform and cuff you behind the counter!@@" She jokes to the amusement of the crowd.
<</if>>
<br><br>
The crowd cheers the show as <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> shows off how the system of restraints can be used for a multitude of bondage positions, up to and including suspension.<br>
<br>
She works remarkably quickly — another selling point of the gear, and it isn't long before the extended infomercial comes to a close and the normal club happenings resume.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show - bondage show — participate
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'demo'>>
<<addItem "high_tech_restraints">>
<<wearItem "high_tech_restraints" true>>
<<include "checkCeoInviteEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_shopkeeper","npc_shopkeeper_club")>>
<div id="invframe" class="scrolltext">
You raise your hand and immediately draw <<=ps(setup.getNpcName("npc_shopkeeper","first"))>> attention, the crowd making way for you to be swiftly escorted up onto stage.<br>
<br>
<<=setup.getNpcName("npc_shopkeeper","first")>> quickly straps restraints around you at the wrist, upper arm, ankle, thigh and harness as she explains to the crowd.<br>
<br>
"@@.npc_shopkeeper;Our new system — available now, in-store at <<printShopName 'mall_sexstore'>> in the mall, is, as you can see, swift to apply, and oh so versatile!@@"<br>
<br>
With each strap she pulls closed you hear a click that you realise is a lock as she continues. "@@.npc_shopkeeper;Made of synth-hide they have all the look and feel of leather, but without any of the maintenance issues. Sweat, cum <<if $fetish.piss>>piss, <</if>>whatever you throw at them, it washes off easily, and they're even dishwasher safe! As to durability — each cuff is lined with carbon fibers making it nigh unbreakable — you could tow a truck with these babies!@@"<br>
<br>
She grins, and you can tell the crowd is impressed, but she isn't done, showing off some shorter straps that she swiftly uses to pull you into a hog-tie. "@@.npc_shopkeeper;As you can see, attachments are simple, but what's even more impressive about the system is the bio-coding of the lock mechanism. You can tie them to a specific individual, or, my personal favourite — make it so that it keys off the wearer. As presently configured anyone EXCEPT the bound person can unlock them — quite delicious, I think.@@"<br>
<br>
She calls another guest up to demonstrate removing your hog-tie, then has you try (and fail) to remove any of your cuffs. The crowd is in the palm of her hand as she moves on to the final feat — attaching another set of straps to you to put you in a suspended position as she demonstrates the versatility of how she can adjust your position at a touch... while you remain utterly helpless to remove a single cuff.<br>
<br>
"@@.npc_shopkeeper;Remember,@@" she announces as she lets you back down, "@@.npc_shopkeeper;<<printShopName 'mall_sexstore'>> — for ALL your bondage needs!@@"<br>
<br>
The restraints removed <<=setup.getNpcName("npc_shopkeeper","first")>> gives you a pat on the ass and sends you back into the crowd as people disperse save for those who still have questions — or wish to place orders.<br>
<br>
[<<moveTo 'event_sex_club_interior' 'Continue.' 180 "<<removeItem 'high_tech_restraints' true>><<deleteItem 'high_tech_restraints'>><<useClothSetPop 'demo'>>">>]
</div>/*#
#desc: sex club show - bukkake show intro
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
You look to the stage where a small, though empty, pool has been set up as <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> appears to introduce the show.<br>
<br>
"@@.npc_sex_club;Welcome, one and all! Tonight we are venturing far from my homeland for a wonderful communal tradition that I know you all love. I speak, of course... of bukkake! I know just the mention of the word has many of you hard and excited, but this sort of party is impossible without a maid — or man! Of the hour so... who among you wishes to be at the centre of our celebration?@@"<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
[<<moveTo "event_sexclub_event_bukkake_2" "Raise your hand!" 60 "<<set $scene.volunteer=true>>">>]<br>
<<else>>
[@@.link_locked;No, that does not sound like something you want to volunteer for.@@]<br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
<<if setup.getWillpower() > 3>>
[<<moveTo "event_sexclub_event_bukkake_2_audience" "Somehow fight the near irresistible thirst to join in..." 60 "<<set $scene.volunteer=false>><<spendWillpower 4>>">>] <<hint $options "Fighting against such a strong fetish will cost a lot of willpower">><br>
<<else>>
[@@.link_locked;No way are you going to miss out on all that wonderful <<getWordCum>>!@@]
<</if>>
<<elseif setup.getTotalValue("cum") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_sexclub_event_bukkake_2_audience" "Resist the thirst to join in..." 60 "<<set $scene.volunteer=false>><<spendWillpower 1>>">>] <<hint $options "Fighting against your growing cum-obsession fetish will cost willpower">><br>
<<else>>
[@@.link_locked;No way can you pass up such an opportunity!@@]
<</if>>
<<else>>
[<<moveTo "event_sexclub_event_bukkake_2_audience" "Stay silent." 60 "<<set $scene.volunteer=false>>">>]
<</if>>
</div>/*#
#desc: sex club show - bukkake show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 20 'unbelievable' $EXPOSED>>
<<applyExperience 'humiliation' 18 'skip' $EXPOSED>>
<<alterStatAllWorn 'cumsoaked' '["add",100]'>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png">>
<div id="invframe" class="scrolltext">
You raise your hand and are chosen, quickly helped up onto the stage by the eager crowd where <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> has you kneel in the centre of the pool before turning back to the crowd.<br>
<br>
"@@.npc_sex_club;Alright my lusty friends, it's time! Come one, cum all, bathe this slut in your seed — but keep it orderly!@@"<br>
<br>
A line is already forming, <<if $options.fem>><<if $fetish.futanari>>futas<<else>>women<</if>><<else>>people<</if>> stroking in preparation as enthusiastic slaves move up and down the line to help "fluff" with hand or lips.<br>
<br>
Your heart races as you realise just how many <<if $options.fem>><<if $fetish.futanari>>futas<<else>>women<</if>><<else>>people<</if>> are about to splatter you with semen... and how many more are watching! Your attention is re-centred a moment later as you take your first shot, a splash of <<getWordCum>> blasted across your face, and another following a moment after before you can blink away your surprise.<br>
<br>
Once the stream starts the floodgates open, as half a dozen <<if !$options.fem>>men or <</if>>"suitably equipped" women are standing around you at a time to jerk and shoot their appreciation onto your body.<br>
<br>
Caught up in the moment you find yourself responding to the calls of "@@.generic_male1;Take it slut!@@" and "@@.generic_female1;Make her a painted whore!@@" And you find yourself reaching out to "help" by taking hold of the paintbrushes yourself... all the while licking your lips in anticipation of more, more more.<br>
<br>
[<<moveTo "event_sexclub_event_bukkake_3" "Continue." 600>>]
</div>/*#
#desc: sex club show - bukkake show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 10 'normal' $INCOGNITO>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png">>
<div id="invframe" class="scrolltext">
You watch as a volunteer is chosen from the audience and they take their place centre-stage.<br>
<br>
A line swiftly forms as people take their turns with up to a half-dozen at a time joining in the "celebration" as the target gleefully showers in semen.<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
[@@.link_locked;You are locked in chastity and unable to "contribute."@@]<br>
<<else>>
<<if $player.body_ref.cumProduction == 0>>
[@@.link_locked;You no longer produce cum.@@]<br>
<<else>>
[<<moveTo "event_sexclub_event_bukkake_3_audience" "Make your contribution." 600 "<<set $scene.join=true>>">>]<br>
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are no longer equipped for bukkake.@@]<br>
<</if>>
[<<moveTo "event_sexclub_event_bukkake_3_audience" "Help fluff." 600 "<<set $scene.fluff=true>>">>]<br>
[<<moveTo "event_sexclub_event_bukkake_3_audience" "Just watch." 600 "<<set $scene.join=false>>">>]
</div>/*#
#desc: sex club show - bukkake show finale as audiencemember
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.join>>
<<playerOrgasm>>
<<elseif $scene.fluff>>
<<applyExperience 'penis' 15 'very' $EXPOSED>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<</if>>
<<applyExperience 'cum' 10 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
<<if $scene.join>>
You join the line to make an "offering," jerking yourself as you wait to take your turn and blast your load across the subjects face.<br>
<br>
<<if $player.body_ref.cumProduction > 2>>
Your inhumanly massive shot takes your target by surprise, and the audience cheers in awe at your feat as your fountain of cum drips down and you take a bow before moving off-stage.
<<else>>
Your shot joins the rest, taking your target in the right cheek and joining the thick layer of <<getWordCum>> dripping down their body.
<</if>>
<<elseif $scene.fluff>>
You join several other enthusiastic sluts in running up and down the line sucking and stroking prospective shooters so that they are ready to take their shot once it's their turn.
<<else>>
You remain in the audience, watching as the line quickly moves and load after load of cum splatters across the volunteer's face until their expression is little more than a smiling, milky blob.
<</if>>
<br><br>
The line starts to shorten as you notice that the final person is one you recognise — <<=setup.getNpcName("npc_cook", "first")>>, the cook at work, but <<he npc_cook>> looks to be "cooking up" something far more than lunch, idly stroking a massive <<if $fetish.bestiality_soft>>horse-<</if>>cock larger than any of the many, many cocks that have gone before <<him npc_cook>> this evening.<br>
<br>
The audience falls quiet as <<he npc_cook>> takes <<his npc_cook>> turn, the volunteer having but a moment to look down the massive cum-barrel aimed at their face before <<he npc_cook>> shoots. <<His npc_cook>> load is possibly even more impressive than the <<his npc_cook>> weapon, the force of it almost knocking the volunteer over as <<=setup.getNpcName("npc_cook", "first")>> follows up the cannon-like blast by shaking out the after-spurts over her body, the crowd roaring with applause at this glorious capstone to the celebration of cum.<br>
<br>
The volunteer is helped to their feet and takes a bow, smiling and dripping with <<getWordCum>> as the curtain falls and the club resumes its normal activities.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show - bukkake show finale as participant
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 20 'skip' $EXPOSED>>
<<applyExperience 'penis' 18 'unbelievable' $EXPOSED>>
<<include "checkCeoInviteEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
You've lost track of how many <<if $options.fem>><<if $fetish.futanari>>futas<<else>>women<</if>><<else>>people<</if>> have cum on you, your body dripping with <<getWordCum>> as the scent fills your nose and the taste fills your mouth while even more drips down your chin with every breath... and then you see it.<br>
<br>
Pointing towards you is a cannon of a cock, a quick glance upwards showing that the massive <<if $fetish.bestiality_soft>>horse-<</if>>dong belongs to <<=setup.getNpcName("npc_cook","first")>>, the cook at work.<br>
<br>
You don't have any longer to contemplate this reality before <<he npc_cook>> unleashes a shotgun blast directly into your face. Like being struck by a water balloon the cum blasts into you and almost knocks you over, part of it going into your mouth as the rest temporarily blinds you, with a follow-up spurt enough to finish coating you as you stagger and stare back in awe.<br>
<br>
The crowd cheers — it seems <<he npc_cook>> was waiting for the end as... who could possibly follow <<him npc_cook>> up? You pant for air as <<his npc_cook>> cum drips down your body, scarcely believing what you just saw as the curtain drops and some club employees appear to help wipe you up enough to rejoin the party.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show - dominance challenge
#status: RELEASED 0.8.5.0
#ignore_spell: d,s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("dominance") > 0>>
<<applyExperience 'dominance' 7 'normal' $INCOGNITO>>
<</if>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You watch as <<=setup.getNpcName('npc_retention', 'formal')>> ascends the stage with <<his npc_retention>> <<if $fetish.pet_play>>pet<<else>>slave<</if>> crawling behind.<br>
<br>
Wordlessly <<=setup.getNpcName('npc_retention', 'formal')>> stands in the centre of the stage, and with only a few minor gestures sends <<his npc_retention>>
<<if $fetish.pet_play>>
pup through a submissive routine.
<<else>>
slave through a series of slave positions.
<</if>>
<<He npc_retention>> waits for the applause to die down before speaking. "@@.npc_retention;Dominance is about attitude, and technique. Attitude is something you need to have inside, but today I will give instructions on techniques that you might add to your arsenal.@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>>, with the "assistance" of <<his npc_retention>> <<if $fetish.pet_play>>pet<<else>>slave<</if>> proceeds to give a quite informative lecture on various bdsm techniques for establishing and re-enforcing the dominant side of a D/S scene.<br>
<br>
After the lecture <<he npc_retention>> opens things up for interested parties to come on stage for some additional troubleshooting, while leaving everyone else to return to the other club activities.<br>
<br>
<<if setup.getTotalValue("dominance") > 0>>
[<<moveTo "event_sexclub_event_dominance_2" "Go up on stage to get some tutoring." 1800>>]
<<else>>
[@@.link_locked;You don't know anything about dominance... and in front of a crowd seems like the wrong time to experiment.@@]
<</if>>
<br><br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show - dominance challenge participate
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<if _dom <= 15>>
<<applyExperience 'dominance' _dom 'skip' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" >>
<div id="invframe" class="scrolltext">
You wait your turn and then join <<=setup.getNpcName('npc_retention', 'formal')>> on stage where <<he npc_retention>> has you spend a minute "supervising" <<his npc_retention>> <<if $fetish.pet_play>>pet<<else>>slave<</if>> to assess your skills. At the conclusion of your efforts
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
<<he npc_retention>> looks almost intimidated. "@@.npc_retention;Yes, well... that is certainly one approach, let me show you something a bit different.@@"<br>
<br>
You watch politely as <<he npc_retention>> gives another demo, but you learn nothing from the experience as you realise with quiet amusement that your skills have surpassed <<his npc_retention>> own. Mindful of <<his npc_retention>> position relative to your own back at work you thank <<him npc_retention>> and go through the motions of showing that you have "learned" from <<his npc_retention>> advice.
<<else>>
<<he npc_retention>> nods, appearing almost impressed. "@@.npc_retention;Hmm, you must have been practicing... still, there are a few flaws in your technique that I saw, things that might matter with a less-well trained slave than my own.@@"<br>
<br>
<<He npc_retention>> goes through several small adjustments, even commanding <<his npc_retention>> slave to "act out" so that you have the opportunity to practice corrective measures.
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
<<he npc_retention>> nods, seemingly slightly taken by surprise at your skills. "@@.npc_retention;Hmm... I guess I should think of you as <<if $player.work.secretaryRank == 3>>an Executive<<elseif $player.work.secretaryRank == 2>>a Senior<<else>>a lead<</if>> <<if $fetish.sissy>>SISSI <</if>>Secretary. I suppose working under <<=setup.getNpcName('npc_manager', 'other')>> gave you ample opportunity to observe an expert. Still, you could do with some refinement, some tweaks to better fit things to your own physique<<if !setup.checkItemTypeWorn("glasses")>> — looking down your nose over your glasses works less-well when you do not wear glasses<</if>>.@@"<br>
<br>
You nod and <<he npc_retention>> spends several minutes refining a few things, showing you how to adjust your stance to appear taller, how to better vary the impact of a crop between instructive and punishment and a few other subtle, but significant tweaks to what you know.
<<else>>
<<he npc_retention>> smiles in obvious amusement. "@@.npc_retention;I think you would be better sticking to being just a normal <<if $fetish.sissy>>SISSI <</if>>Secretary, but, if you insist on investigating in this direction, well, I will do what I can...@@"<br>
<br>
<<He npc_retention>> spends several minutes instructing you on some of the basics — how to stand, how to speak more actively, and some things to look out for that indicate a submissive is drifting out of head-space.
<</if>>
<</if>>
<br><br>
<<He npc_retention>> brushes you aside and the next "student" steps forward. You descend the stage and re-join the party.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show — generic/stat-based events
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
You look towards the stage where <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> appears to announce
<<if !$scene.sex_club_info.owner.dom && $fetish.piss && $npc_maid_mistress.flags.topics.piss && (!State.hasPlayed('event_sexclub_broken_bathroom_4') || random(1,10) == 10)>>
that there is a plumbing issue with the urinals and that, until they get it fixed, it would be very much appreciated if <<he npc_sex_club>> could get some additional "assistance" in the bathroom...<br>
<br>
<<if setup.getTotalValue("piss") > 10>>
[<<moveTo "event_sexclub_broken_bathroom_1" 'Volunteer to "help."' 300>>]
<<else>>
<<if setup.getTotalValue("piss") > 5>>
<<printThought "<<He npc_sex_club>> can't be talking about... can <<he npc_sex_club>>?">>
<<else>>
<<printThought "That's weird, I wonder what sort of assistance <<he npc_sex_club>> could be talking about? I suppose it's possible there might be a plumber in attendance.">>
<</if>>
<br><br>
[@@.link_locked;You do not feel like volunteering for this.@@]<br>
<</if>>
<<if setup.getTotalValue("piss") > 15>>
[@@.link_locked;Your mouth is already watering, you are too much of a piss-fiend to pass up such an opportunity!@@]
<<else>>
[<<moveTo "event_sex_club_interior" 'Turn around and do something else.' 300>>]
<</if>>
<<else>>
unfortunately, there will be no stage show this evening.<br>
<br>
After some grumbled acknowledgement the crowd returns to what they were doing.<br>
<br>
<<include "sexClubLocations">>
<</if>>
</div>/*#
#desc: sex club broken bathroom event
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $EXPOSED>>
<<applyExperience 'submission' 18 'terrible' $EXPOSED>>
<<removeEvent 'sex_club_end'>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<div id="invframe" class="scrolltext">
You, and a couple other party-goers volunteer, or are "volunteered" by their owners and <<=setup.getNpcName("npc_sex_club","nickname")>> leads the way into the bathroom you had not realised existed.<br>
<br>
Already the row of urinals that make up one side of the room have been marked as "out of service," but there are foam pads placed in front of them and <<he npc_sex_club>> leads you over to explain.<br>
<br>
"@@.npc_sex_club;Fortunately the rest of the building is functioning, but the bar means the urinals see quite a bit of use, so this is going to lead to issues if we don't make a substitution.@@"<br>
<br>
Still wearing <<his npc_sex_club>> <<if $npc_sex_club.fem>>gimp outfit<<else>>straitjacket<</if>> <<he npc_sex_club>> nods to an assistant to take you by the end and lead you to the end of the aisle.<br>
<br>
"@@.npc_sex_club;I know you are familiar with this sort of thing,@@" <<he npc_sex_club>> notes, as your thoughts cast back to drinking <<=ps(setup.getNpcName("npc_maid_mistress", "formal"))>> piss in the middle of the club, "@@.npc_sex_club;The system is simple, each of you will be bound in place for safety, and fitted with a specialised service gag.@@" As <<he npc_sex_club>> speaks your wrists are cuffed behind your back and a wide plug gag is strapped into your mouth. A bathtub stopper currently blocks off the front of the gag it has an extended, curved shape that you realise would be almost perfect for allowing a non-penis having "client" to use your face while standing...<br>
<br>
You are guided to your knees in front of one of the urinals before your wrist-cuff is attached to one of the pipes, meaning you are basically stuck in place.<br>
<br>
"@@.npc_sex_club;See? A replacement urinal! And far prettier than the original! Come on, now, let's get the rest of you situated before anyone's beer decides to finish its journey...@@"<br>
<br>
Though a couple balk the rest of you "volunteers" are soon in position — some more eager than others. Finishing it off <<=setup.getNpcName("npc_sex_club","nickname")>> surprises you by kneeling down <<himself npc_sex_club>>. "@@.npc_sex_club;As proprietor I have a responsibility to my guests,@@" <<he npc_sex_club>> explains before opening <<his npc_sex_club>> mouth to accept a gag of <<his npc_sex_club>> own.<br>
<br>
<<set _midnight = setup.setNextDate($now, 0, 23, 50)>>
<<set _timeToMidnight = Math.min(3600, setup.secondsToDate($now,_midnight))>>
[<<moveTo "event_sexclub_broken_bathroom_2" 'Work.' _timeToMidnight>>]
</div>/*#
#desc: sex club broken bathroom event
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 20 'terrible' $EXPOSED>>
<<applyExperience 'piss' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
It doesn't take long before the first club-goer enters the re-opened bathroom looking to take a leak. With over half a dozen of you working the "load" is spread around, but you hardly go thirsty as the full-bladder <<if $options.fem>>women<<else>>guests<</if>> eagerly un-cork your gag before sliding their cock through, or pressing their cunt against your the curved outer funnel to let loose a golden stream.<br>
<br>
Your fellow urinals react in a variety of ways, some statuesque and still, others almost begging to be used while one seems to regret her decision after her first drink and constantly try to wordlessly direct "customers" elsewhere — an effort that seems to only attract more clientele... though you wonder if that might actually be her intent...<br>
<br>
Out of you all <<=setup.getNpcName("npc_sex_club","nickname")>> drinks the least... though <<he npc_sex_club>> accepts customers without complaint, in fact looking almost rapturous as <<he npc_sex_club>> closes <<his npc_sex_club>> eyes and shifts <<his npc_sex_club>> hips after each customer. Plus, well... despite <<his npc_sex_club>> straight-jacket there is technically nothing keeping <<him npc_sex_club>> from standing up...<br>
<br>
Making things worse... or is that better? Is the occasional customer that seems to really get off on degrading you — calling you "human toilets" or "piss-drunk whores" or otherwise humiliating you as you gulp down their <<getWordPiss>>.<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 0, 1)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_sexclub_broken_bathroom_3" 'Keep working.' _timeToMorning>>]
</div>/*#
#desc: sex club broken bathroom event end of night
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 20 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
The night comes to an end with you and your fellow urinals sitting with full bellies, sore knees and stiff necks.<br>
<br>
An employee arrives to free <<=setup.getNpcName("npc_sex_club","nickname")>> first before helping the rest of you out of your gags and cuffs and back to your feet.<br>
<br>
As your binds are removed <<=setup.getNpcName("npc_sex_club","nickname")>> thanks you for your efforts.<br>
<br>
"@@.npc_sex_club;Thank you, all of you, for your hard work this evening. To show my appreciation for the contribution of your time and bodies you may accept payment — unless you feel that such would lessen the delight you received from spending so many hours on your knees as literal piss-slaves.@@"<br>
<br>
You shudder slightly at <<his npc_sex_club>> words... even if you wonder if being paid makes your debasement any less...<br>
<br>
"@@.npc_sex_club;Oh!, and as a final note — after watching the phenomenal customer-response I am going to remove one of the normal urinals and install a permanent station for anyone who wants to work. Not for the whole night. I think we can all agree that's a bit TOO much, but for a set number of customers? Yes, that will make quite the popular attraction indeed!@@"<br>
<br>
You walk towards the exit where an employee is offering credits for those who wish...<br>
<br>
[<<moveTo 'event_sexclub_broken_bathroom_4' 'Accept payment for being a piss slut.' 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sexclub_broken_bathroom_4' 'Decline payment like an eager human urinal.' 600 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: sex club broken bathroom event accept payment
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'whoring' 10 'terrible' $EXPOSED>>
<<addCredits 50>>
<<else>>
<<applyExperience 'humiliation' 20 'terrible' $EXPOSED>>
<</if>>
<<set $scene.change = false>>
<<if $scene.hasOwnProperty('outfit')>>
<<include "removesex_clubOutfit">>
<<useClothSetPop 'sex_club'>>
<<elseif !setup.checkOutsideDecency()>>
<<set $scene.change = true>>
<<useClothSetPop 'sex_club'>>
<</if>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept your payment of... fifty credits. Which seems a bit low for an entire night of drinking piss, but you're too tired to complain.
<<else>>
You've already been paid in "gold" and decline anything further as the employee knowingly smiles.
<</if>>
<br><br>
<<if $scene.hasOwnProperty('outfit')>>
You swing through the changing rooms and return your rental outfit on the way out.
<<elseif $scene.change>>
You swing through the changing room to change back into "street" attire before leaving the club.
<<else>>
You leave the club.
<</if>>
The early morning air is cool as you step out of the building, your mouth still tasting of <<getWordPiss>> as you make your way out into the night.<br>
<br>
[<<moveTo 'room_student_quarter' 'Leave.' 60>>]
</div>/*#
#desc: sex club show - npc_discipline
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
You look to the club's stage and watch as <<=setup.getNpcName("npc_discipline", "formal")>> strides into view, whip in hand and flanked by a pair of "assistants" bedecked in bondage gear. One walks obediently, <<his>> gaze pointed unerringly at the floor, while the other thrashes dramatically against her restraints and moans loudly through a jaw-stretching gag, fighting every step as she's pulled forward by a leash.<br>
<br>
<<if setup.getTotalValue("dominance") > 15>>
Your experience at dominance gives you the judgement to suss out feigned resistance from authentic reluctance, the woman's movements seem too rehearsed to be truly desperate, and you can only conclude that she's either acting up for the sake of the show... or just plain bratty, rather than actually resistant.
<<elseif setup.getTotalValue("submission") > 15>>
Your own experience at submission gives you an eye for the authentic thing and, even though the woman is doing a great job pretending to resist, you recognise telltale signs of a brat in want, and need, of a punishment.
<<else>>
You shiver slightly at the reminder that the harsh disciplinary ways of the company is not solely confined to its walls.
<</if>>
<br><br>
Your attention is drawn back to the imposing presence of <<=setup.getNpcName("npc_discipline", "formal")>> as she takes centre stage with her companions falling in on either side, the rambunctious brat still squirming, but remaining silent as her owner speaks.<br>
<br>
"@@.npc_discipline;Greetings. Tonight I would speak to you about... Dominance.@@" She smiles slightly, giving the audience a few moments to finish settling down. "@@.npc_discipline;Dominance may seem like a singular talent to some, but like anything, it is also a learned skillset... and a wide one, at that, all its components working together to inspire, or demand, obedience...@@" Her brief speech is punctuated by cracks of her whip that, even though you are not the target, make you jump reflexively.<br>
<br>
"@@.npc_discipline;But enough talking... you came here for a demonstration, yes?@@" The audience cheers and <<=setup.getNpcName("npc_discipline", "formal")>> grins. "@@.npc_discipline;So, who among you has the courage to see your dominance tested?@@"<br>
<br>
<<if setup.getTotalValue("dominance") >= 20 && (setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle'))>>
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') && setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
[<<moveTo "event_sexclub_event_hr_discipline_2_ultra" "Step up to the bratty slave and show them the meaning of punishment." 1200 "<<set $scene.action='ultra_dom_harsh'>>">>]<br>
[<<moveTo "event_sexclub_event_hr_discipline_2_ultra" "Step up to the bratty slave and show the power of gentle dominance." 1200 "<<set $scene.action='ultra_dom_gentle'>>">>]<br>
<<elseif setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh')>>
[<<moveTo "event_sexclub_event_hr_discipline_2_ultra" "Step up to the bratty slave and start the REAL show." 1200 "<<set $scene.action='ultra_dom_harsh'>>">>]<br>
<<elseif setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
[<<moveTo "event_sexclub_event_hr_discipline_2_ultra" "Step up to the bratty slave and start the REAL show." 1200 "<<set $scene.action='ultra_dom_gentle'>>">>]<br>
<<else>>
ERROR: unexpected state
<</if>>
<</if>>
<<if setup.getTotalValue("dominance") > 10>>
[<<moveTo "event_sexclub_event_hr_discipline_2_dom" 'Approach the obedient slave and follow <<=ps(setup.getNpcName("npc_discipline", "formal"))>> lead.' 1200 "<<set $scene.action='dom'>>">>]<br>
<<else>>
[@@.link_locked;You don't feel confident enough in your dominance to display it on stage.@@]<br>
<</if>>
<<if setup.getTotalValue("submission") > 15 && setup.getTotalValue("bdsm") > 10>>
[<<moveTo "event_sexclub_event_hr_discipline_2_volunteer" "Ask if you could take place among the submissives?" 1200 "<<set $scene.action='volunteer'>>">>]<br>
<</if>>
[<<moveTo "event_sexclub_event_hr_discipline_3_watch" "Just watch." 1200 "<<set $scene.action='watch'>>">>]
</div>/*#
#desc: sex club show - npc_discipline
#status: RELEASED 0.9.2.0
#ignore_spell: bratting
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
<<=setup.getNpcName("npc_discipline", "formal")>> nods at you knowingly and
<<else>>
<<=setup.getNpcName("npc_discipline", "formal")>> looks you over and cocks her head to one side with a moments surprise but nods as she
<</if>>
welcomes you on stage.<br>
<br>
<<switch $scene.action>>
<<case "ultra_dom_harsh">>
<<=setup.getNpcName("npc_discipline", "formal")>> watches you approach her bratty subject and reaches out to hand you a whip, which you take with great pleasure, instantly sensing its weight and balance in your hand.<br>
<br>
You catch the slave's eye and let a confident smile pass across your lips. Her expression turns from rebellion to shock and she stops squirming, but that only eggs you on further. Without hesitation, you move into position and unleash a flurry of blows, knowing exactly just what, and how, to target for greatest effect.<br>
<br>
She tries to evade them at first, dancing and twisting or leaning to the side, but it is of no use. You can see her movements coming before she even thinks of them, and each swing lands right where you want it. Once she's been "softened up" you start to talk, your words reminding her of her proper place under your heel, stinging even harder than the whip.<br>
<br>
You go on a full tour of her body, leaving no piece of skin unmarked, while simultaneously berating every failure to live up to your high standards. When <<=setup.getNpcName("npc_discipline", "formal")>> finally calls time, the slave falls on her knees in exhaustion, breath ragged... and yet the look in her eyes as she briefly glances up to meet your gaze tells you that this was exactly what she needed.
<<case "ultra_dom_gentle">>
<<=setup.getNpcName("npc_discipline", "formal")>> watches you approach her bratty subject and reaches out to hand you a whip, but you decline the offer.<br>
<br>
Knowing what you're capable of, she steps back to watch with an almost proud smile.<br>
<br>
The slave may be bratting, but you're a new, unknown dominant, and your subject reflexively recoils as you walk up and reach out hand out. You smile gently, your fingers but brushing her cheek softly. You begin to speak, softly reading her brattiness for what it is... while noting the intensity of her current bound punishment, pondering aloud what she must have done to deserve it. All the while your hand flows along her skin, teasing, seductive, ever-so-subtly correcting her posture, calming her until she is standing proud at attention the same as her more well-behaved compatriot.<br>
<br>
You come to a stop standing in front of your subject, your hand under her chin, fingers gently, yet firmly raising it up, so that she has nowhere to look but in your eyes.<br>
<br>
"@@.pc;There, isn't that better? I know it is... but you have to earn it.@@"<br>
<br>
She trembles for a moment, and you wipe away a strand of drool that has escaped past her gag... and then she nods enthusiastically and you look over to <<=setup.getNpcName("npc_discipline", "formal")>>. She nods in response to your wordless question... and turns on the vibrator in her slave's plug.<br>
<br>
"@@.pc;See, it's so much more rewarding it is to be a good girl...@@"<br>
<br>
Your hand descends down her body once again, tracing her curves around the restraints, leaving goose-flesh in its wake until, eventually making your way to her pert bum. Once there, you give it a perfectly measured slap, the sharp crack resulting in a lusty moan escaping her gag as she falls even deeper under your spell.<br>
<br>
You step back and look in her eyes again. "@@.pc;Will you be a good girl for me?@@"<br>
<br>
Her voice is muffled by the large gag, but the words are as clear to you as they are sweet. "@@.generic_female1;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>...@@"
<<default>>
ERROR unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "event_sexclub_event_hr_discipline_3_dom" "Continue on your way." 300>>]
</div>/*#
#desc: sex club show hr_discipline basic dominance
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
<<=setup.getNpcName("npc_discipline", "formal")>> nods at you knowingly and
<<else>>
<<=setup.getNpcName("npc_discipline", "formal")>> looks you over and cocks her head to one side with a moments surprise but nods as she
<</if>>
welcomes you on stage.<br>
<br>
<<=setup.getNpcName("npc_discipline", "formal")>> talks you through some of the more involved mental techniques and then hands you a whip. Though your first couple of strikes are imperfect, you quickly get a feel for its weight and flexibility, while her encouraging words lend you increasing confidence.<br>
<br>
By the time <<=setup.getNpcName("npc_discipline", "formal")>> calls out to stop, your movements are flowing in a graceful dance, your words reinforce each blow with a reminder of your superiority, and your subject is moaning out from a mixture of pleasure and pain. Even this reaction to your assault pales in comparison to when you step up, give <<him>> a soft brush with your hand, and call <<him>> a good <<boy>>. You step back, hand the whip over and receive your assessment.<br>
<br>
"@@.npc_discipline;I see spending time at the feet of a Master has proven informative... or should I say... Mistress?@@" She states with a knowing wink and a chuckle.<br>
<br>
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
"@@.npc_discipline;You have handled yourself extremely well... as I would have expected. Perhaps next time you should take on a more fitting challenge?@@" She looks over at the other slave before turning back to you.
<<elseif setup.getTotalValue("dominance") >= 19>>
"@@.npc_discipline;You show considerable skill... but you need to define a personal touch, to truly come into your own and assert your own style of dominance.@@"
<<else>>
"@@.npc_discipline;You still have some ways to go, but your progress so far is admirable.@@"
<</if>>
<br><br>
You thank her for the guidance and move on, letting the next would-be dominant step up and take their place as you take a bow and fade into the crowd.<br>
<br>
[<<moveTo "event_sexclub_event_hr_discipline_3_dom" "Continue on your way." 300>>]
</div>/*#
#desc: sex club show hr_discipline volunteer
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
Rather than step forward to dom, you attempt to "volunteer as tribute" but <<=setup.getNpcName("npc_discipline", "formal")>> shakes her head and chuckles at your request, a slight amused recognition in her voice as she turns away your request. "@@.npc_discipline;I appreciate the enthusiasm, but no. I have trained these two specifically for this demonstration, and have no time or intent to catch you up.@@"<br>
<br>
[<<moveTo "event_sexclub_event_hr_discipline_3_watch" "Watch the rest of the show." 1800>>]
</div>/*#
#desc: sex club show - npc_discipline
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
You stand with the crowd and watch as a nascent dom steps forth to perform under <<=ps(setup.getNpcName("npc_discipline", "formal"))>> watchful gaze.<br>
<br>
The <<man>> is not ill-skilled... and yet the gulf in both natural dominance and performative technique are clearly apparent as <<=setup.getNpcName("npc_discipline", "formal")>> steers <<him>> away from the rebellious brat to hone <<his>> skills on the more pliable submissive, the crack of the whip occasionally landing with an awkward thud against a buckle or strap as the <<man>>'s accuracy is further degraded by the pressure of performing for the crowd.<br>
<br>
Making the best of the situation, <<=setup.getNpcName("npc_discipline", "formal")>> does put on quite the informative demo, and the crowd claps politely when things come to an end, before slowly breaking up to return to their prior activities.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show - npc_discipline
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_discipline", "formal"))>> expression remains professional, but her subtle nod is more than enough to communicate that she is impressed by your performance before she even starts to talk.
<<if State.hasPlayed("event_bdsm_work_repeatable_3")>>
"@@.npc_discipline;A pleasure to watch as always, <<=$player.first_name>>. Of course, I am no stranger to overseeing your work, but I look forward to doing so again.@@"
<<else>>
"@@.npc_discipline;A pleasure... and some interesting skills you have been developing. It would seem that someone wants you to be trained in... versatility. One of these days you should see about getting permission for me to borrow you for an afternoon.@@"
<</if>>
<br><br>
You thank her for the opportunity and move on to let another prospective student take their place, though you notice a lot of the crowd is hesitant to follow up your act.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club humiliation unlock/chastity only
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You walk out of the changing room wearing nothing but <<if setup.checkItemTypeWorn("cage")>>your <<=setup.getItemTypeName('cage')>><<if setup.checkItemTypeWorn("choker")>> and the <<=setup.getItemTypeName('choker')>> around your throat<</if>><<else>>the <<=setup.getItemTypeName('choker')>><</if>>.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> looks up from her station and a wide grin spreads across her face.<br>
<br>
"@@.npc_guard;Hoo, boy, now that's a daring outfit! <<if setup.checkItemTypeWorn("cage")>>The chastity <<if setup.isCage()>>cage<<else>>belt<</if>><<else>>Wearing just a collar<</if>> somehow makes you look even MORE naked! Yup, you wear that and you're going to be in for a humiliating evening of being eye-fucked at every turn... at a minimum!@@"<br>
<br>
You shiver slightly, she's right, and the way she's looking at you is just a first dose... are you really ready to go through with this?<br>
<br>
<<if setup.getTotalValue("humiliation") < 13>>
[@@.link_locked;Actually, no, you can't handle this level of humiliation.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_2' 'Yes, this is what you want.' 300>>]<br>
<</if>>
[<<moveTo 'event_sex_club_change' 'No, change into something else.' 60>>]
</div>/*#
#desc: sex club humiliation evening confirm
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "inflatable_plug_club">>
<<wearItem "inflatable_plug_club" true>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $EXPOSED>>
<<changeHorny 20>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You take a deep breath and nod. Even at a fetish club spending the whole evening all but naked is something, but you're ready to "put yourself" out there...<br>
<br>
The guard smiles, moving out from around her desk to loom over you.<br>
<br>
"@@.npc_guard;How daring, but I need to do a final inspection before I let you in... for safety...@@"<br>
<br>
She reaches around around to your ass, squeezing it and
<<if !setup.checkItemTypeWorn("plug")>>
then fingering your empty hole.<br>
<br>
"@@.npc_guard;Hmm... empty? No, that seems VERY unsafe. Here, let me help.@@"
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
then sliding a finger through your hollow plug.<br>
<br>
"@@.npc_guard;Permanently gaped? No, I do not think that will be a safe way for you to be running around for an entire evening...@@"
<<else>>
then fingering your plug.<br>
<br>
"@@.npc_guard;Hmm, this feels a bit loose. We wouldn't want it falling out on the middle of the dance floor so how about something a bit more secure?@@"<br>
<br>
She pops the plug out of your rear with a tug that prompts you to moan.
<</if>>
<</if>>
<br><br>
She casually lifts you up and lays you over her desk just as another pair of patrons walk through the door.<br>
<br>
The guard pauses with her thumb up your ass to give the new arrivals a once over. "@@.npc_guard;You look good, go ahead and head on in — I'm just doing a little cavity search here — can never be too safe!@@"<br>
<br>
The pair chuckles as they walk past and you turn a slightly darker shade of red as the guard fingers your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> and makes you gasp — the timing making it seem like you're getting off on this whole thing... "@@.generic_female1;What a slut@@" one of the unseen guests mutters loud enough for you to hear.<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
<<printThought "Yes... call me names, degrade me, parade me in public, let me show how much of a depraved pervert I am! I love it all...">>
<<else>>
<<printThought "Oh <<getWordGod>>, I am getting off on this... I think I'm becoming addicted to humiliation...">>
<</if>>
<br><br>
Using her finger in your ass to hold you down <<=setup.getNpcName("npc_guard","formal")>> reaches over the counter to come back up with an inflatable plug trailing a squeeze-bulb tail. "@@.npc_guard;Yeah, this will be PERFECT for you — and, bonus, it has a vibrator tied in with the club sound-system if you feel like hitting the dance floor!@@"<br>
<br>
She slides the plug easily into your ass and gives it enough squeezes so that it swells securely in place. As she is about finished up another guest walks in that she recognises and she calls the woman over.<br>
<br>
"@@.npc_guard;Hey, <<=setup.getNpcName("generic_female3","custom","Judith")>>, come look at this. Does this seem properly secure to you?@@"<br>
<br>
[<<moveTo 'event_sex_club_chastity_3' 'Continue.' 180>>]
</div>/*#
#desc: sex club humiliation evening confirm
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<if $scene.collar != "">>
<<set $scene.doubleCollar = (setup.getItemObjFromType("choker").hasOwnProperty("lockable") && setup.getItemObjFromType("choker")["lockable"][0])>>
<</if>>
<<set $scene.swapCollar = $scene.collar != "" && !$scene.doubleCollar>>
<<if $scene.doubleCollar>>
<<addItem "slut_collar_wide">>
<<wearItem "slut_collar_wide" true>>
<<else>>
<<addItem "slut_collar">>
<<wearItem "slut_collar" true>>
<</if>>
<<addItemSet "club_humiliation">>
<<wearItemSet "club_humiliation">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
The woman walks over, a gloved hand caressing your ass before she wiggles your plug aggressively.<br>
<br>
"@@.npc_guard;As you can see this brazen hussy was trying to get in with basically nothing... so I figured on helping her out, I just don't want my gift falling out of her whore's ass partway through the evening, y'know?@@"<br>
<br>
"@@.generic_female3;Yes, an astute concern.@@" The other woman states, giving your "tail" another squeeze to make you gasp in fullness. "@@.generic_female3;I believe that should do it, but I think additional top-ups through the night will surely be needed.@@"<br>
<br>
"@@.npc_guard;You're right, good call... here, this should do it.@@"<br>
<br>
She grabs a marker from the desk and you feel it tickle your lower back.<br>
<br>
"@@.generic_female3;Squeeze my tail!@@" The woman reads, "@@.generic_female3;Yes, that should definitely help... hmm, would you mind if I added a note? In fact, you should just give <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>him<<case 'fluid' 'agender'>>them<</switch>> the marker so that other guests can add useful notes.@@"<br>
<br>
You groan as you feel something written on your ass and the guard chuckles. "@@.npc_guard;That sounds like a perfect idea!@@"<br>
<br>
You are yanked to your feet.
<<if $scene.doubleCollar>>
"@@.npc_guard;Hmm... this collar is nice, but not QUITE what appropriate for you... one second.@@"<br>
<br>
You gasp as she wraps something else around your neck and slides it under your collar. You feel it grow slightly until your chin is raised high.
<<elseif $scene.swapCollar>>
"@@.npc_guard;Here we go, I think this is a MUCH more appropriate neck adornment.@@" She states as she removes your <<=setup.getItemName($scene.collar)>> and replaces it with a steep, restrictive posture collar.
<<else>>
"@@.npc_guard;Here we go, you were definitely missing a collar.@@" She states as she tightens a steep, restrictive posture collar around your throat.
<</if>>
She clips the marker to the front ring of your collar so that it dangles down
<<if $player.body.breastsize[0] > 0>>
between your breasts.
<<else>>
over your chest.
<</if>>
<br><br>
You turn towards a mirror to see that you are now wearing a very steep posture collar that advertises you as a "SLUT." <br>
<br>
"@@.generic_female3;Oh, that is MUCH more appropriate — and it will keep <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>him<<case 'fluid' 'agender'>>them<</switch>> from looking at the ground to avoid any of that wonderfully humiliating attention they are going to be drawing!@@"<br>
<br>
"@@.npc_guard;Exactly! And because idle hands are the devil's playthings...@@"<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> finishes off by pulling your arms into a box tie and then giving you a slap on the ass to send you towards the door.<br>
<br>
You jump forward and catch a glimpse of your reflection — it would seem that her friend wrote "For Public Use" over one butt cheek... and "Spank Me" across the other.<br>
<br>
<<printThought "This is definitely going to be an evening...">><br>
<br>
[<<moveTo 'event_sex_club_chastity_4' 'Head inside...' 180>>]<br>
[<<moveTo 'event_sex_club_chastity_abort' 'This is too much, you do not want to do this.' 180>>]
</div>/*#
#desc: sex club humiliation evening confirm
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet "club_humiliation">>
<<deleteItemSet "club_humiliation">>
<<if $scene.doubleCollar>>
<<removeItem "slut_collar_wide" true>>
<<deleteItem "slut_collar_wide">>
<<else>>
<<removeItem "slut_collar" true>>
<<deleteItem "slut_collar">>
<</if>>
<<removeItem "inflatable_plug_club" true>>
<<deleteItem "inflatable_plug_club">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
Your idea of wearing just a <<if setup.checkItemTypeWorn("cage")>>chastity device<<else>>collar<</if>> has spun out of control and you tap out, almost tearing up as you tell the guard you can't do this.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> frowns in disappointment, but nods as she helps you out of the collar and armbinder before deflating the plug and using a bit of rubbing alcohol to wipe off the marker writing before pointing back towards the changing room.<br>
<br>
"@@.npc_guard;A pity... how about you get changed into something you feel a bit more comfortable with?@@"<br>
<br>
You nod and dash back into the changing room.<br>
<br>
[<<moveTo 'event_sex_club_change' 'Enter the changing rooms.' 60 "<<set $scene.humilAbort=true>>">>]
</div>/*#
#desc: sex club humiliation event - enter
#status: RELEASED 0.8.5.0
#ignore_spell: tation
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "ring_gag_clear">>
<<wearItem "ring_gag_clear" true>>
<<if $player.flags.humiliationStyle == 'brazen'>>
<<setThreshold 'humiliation' 'brazen_humiliation' 'unflappable'>>
<<else>>
<<setThreshold 'humiliation' 'embarrassed_humiliation' 'cowering'>>
<</if>>
<<applyExperience 'humiliation' 15 'unbelievable' $EXPOSED>>
<<set $scene.humiliation = {
"piss" : false,
"bdsm" : false,
"bondage" : false,
"foot" : false,
"bestiality" : false,
"penis" : false,
"facial" : false,
"cum" : false
}>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_landlord_retention_mission_7") || State.hasPlayed("event_guard_retention_mission_5")>>
<<if $npc_pokerman.fem>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImageGeneric("man_fem")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImageGeneric("npc_pokerman","man")>>
<</if>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_retention")>>
<</if>>
<div id="invframe" class="scrolltext">
You walk into the club and immediately realise that this isn't the end of tonight being "unique." The guard must have signalled ahead because a spotlight is suddenly aimed at you as the owner's voice sounds out over the PA.<br>
<br>
"@@.npc_sex_club;Turn your gaze to the entrance for the SLUT OF THE EVENING! Yes, this utter tramp may be locked up — but <<switch $player.identify_as>><<case 'female' ''>>she's<<case 'male'>>he's<<case 'fluid' 'agender'>>they're<</switch>> out to prove that that's no barrier to being the trashiest whore in the building! Give <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>his<<case 'fluid' 'agender'>>their<</switch>> tail a squeeze, or leave a nice note on <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>his<<case 'fluid' 'agender'>>their<</switch>> sweet flesh — whatever it is, just know that <<switch $player.identify_as>><<case 'female' ''>>she is<<case 'male'>>he is<<case 'fluid' 'agender'>>they are<</switch>> here for all the humiliation you can pile on!@@"<br>
<br>
<<printThought "Oh fuck, what have I gotten myself into?">><br>
<br>
<<if State.hasPlayed("event_landlord_retention_mission_7") || State.hasPlayed("event_guard_retention_mission_5")>>
Many pairs of eyes are looking at you with lust as the announcement ends and the normal sounds of the club resume... there is a heartbeat when you think that you're going to be left to your own moderately-helpless devices... and then <<if $npc_pokerman.profile>>you spot <<=setup.getNpcName('npc_pokerman', 'formal')>> making <<his npc_pokerman>><<else>>a confident-looking <<man>> stalking <<his npc_pokerman>><</if>> way through the crowd, pushing a couple others aside to stand in front of you with a grin.<br>
<br>
"@@.npc_pokerman;Well, well, look at the poor, helpless <<if $fetish.sissy>>SISSI <</if>>Secretary on her night off...@@" <<if $npc_pokerman.profile>>You blink in surprise, from the <<man>>'s look <<he>> must be some sort of senior manager... though you cannot put a name to the face. <</if>>As <<he npc_pokerman>> talks <<he npc_pokerman>> un-caps your marker and writes something across your chest. "@@.npc_pokerman;Of course there's one piece missing from this outfit... after all, what sort of <<if $fetish.sissy>>sissy <</if>>SLUT would you be with the mere CAPABILITY of saying no?@@"<br>
<br>
You open your mouth to reply, but that seems to have been <<his npc_pokerman>> plan all along as <<he npc_pokerman>> snaps a large ring gag between your teeth, spreading your lips wide and locking things tight with a small padlock. "@@.npc_pokerman;Timed lock — it will release at midnight... enjoy your evening, Cinderella!@@"<br>
<br>
You gulp, already drooling out of your gag. You move out of the doorway as a fresh set of club-goers arrive and find yourself facing another mirror, taking a moment to read your chest — below the steep collar that announces you as a SLUT are written <<if $fetish.sissy>>SISSI <</if>>SECRETARY — ask me about dick-tation!
<<else>>
Many pairs of eyes are looking at you with lust as the announcement ends and the normal sounds of the club resume... there is a heartbeat when you think that you're going to be left to your own moderately-helpless devices... and then you spot <<=setup.getNpcName('npc_retention', 'formal')>> making <<his npc_retention>> way through the crowd, pushing a couple others aside to stand in front of you with a grin.<br>
<br>
"@@.npc_retention;Well, well, look at the poor, helpless <<if $fetish.sissy>>SISSI <</if>>Secretary on her night off...@@" As <<he npc_retention>> talks <<he npc_retention>> un-caps your marker and writes something across your chest. "@@.npc_retention;Of course there's one piece missing from this outfit... after all, what sort of <<if $fetish.sissy>>sissy <</if>>SLUT would you be with the mere CAPABILITY of saying no?@@"<br>
<br>
You open your mouth to reply, but that seems to have been <<his npc_retention>> plan all along as <<he npc_retention>> snaps a large ring gag between your teeth, spreading your lips wide and locking things tight with a small padlock. "@@.npc_retention;Timed lock — it will release at midnight... enjoy your evening, Cinderella!@@"<br>
<br>
You gulp, already drooling out of your gag. You move out of the doorway as a fresh set of club-goers arrive and find yourself facing another mirror, taking a moment to read your chest — below the steep collar that announces you as a SLUT are written <<if $fetish.sissy>>SISSI <</if>>SECRETARY — ask me about dick-tation!
<</if>>
<br><br>
You groan at the pun, which only makes you drool more... spittle trickling down
<<if $player.body.breastsize[0] > 0>>
between your breasts,
<<else>>
your chest,
<</if>>
and confirming that the marker is a permanent one.<br>
<br>
<<include "sexclubHumilChoices">>
</div><<if $scene.bar>>
[@@.link_locked;You have already spent some time at the bar.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_bar_1' 'Check out the bar.' 1200>>]<br>
<</if>>
<<if $scene.play>>
[@@.link_locked;You have already visited the play area.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_play_1' 'Check out the "play" area.' 1200>>]<br>
<</if>>
<<if $scene.dance>>
[@@.link_locked;You have already spent some time on the dance floor.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_dance_1' 'Hit the dance floor.' 1200>>]<br>
<</if>>
<<if $scene.bar && $scene.play && $scene.dance>>
The spotlight is back on, tracing from the stage over the crowd... to come to a stop pointed at you once again.<br>
<br>
[<<moveTo 'event_sex_club_chastity_finale_1' 'Uh-oh...' 1200>>]
<</if>>/*#
#desc: sex club humiliation event - bar
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bar=true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImageGeneric("party_bartender")>>
<div id="invframe" class="scrolltext">
You wander over to the bar where the barkeeper takes one look at you and shakes <<his>> head.<br>
<br>
"@@.generic_male1;Sorry, but official policy is no drinks served if the customer cannot serve themselves.@@" <<He>> gestures towards your arm restraints. "@@.generic_male1;I hate to cut-off such a sexy SLUT but... those are the rules.@@"<br>
<br>
A customer sitting at a stool next to you looks over with a grin.<br>
<br>
<<if $fetish.piss>>
"@@.generic_male2;Say... if you're looking to whet your whistle, how about some... processed beer?@@"<br>
<br>
The <<man>> grins as <<he>> finishes a pint and reaches for <<his>> zipper.<br>
<br>
<<printThought "Kneeling at the bar to drink some stranger's piss? How humiliating!">><br>
<br>
<<if setup.getTotalValue("piss") < 5>>
[@@.link_locked;Drink some stranger's piss at the bar? No way!@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Accept <<his>> offer.' 1200 "<<set $scene.piss=true>><<set $scene.accept=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("piss") > 15>>
[@@.link_locked;Pass up an offer of golden nectar? No way!@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Decline <<his>> offer.' 1200 "<<set $scene.piss=true>><<set $scene.accept=false>>">>]
<</if>>
<<else>>
A woman sitting on a stool next to you looks over with a grin. "@@.generic_female1;I can't help you with the drinks, but, well... I'm a squirter if you're feeling particularly thirsty...@@"<br>
<br>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Accept her offer.' 1200 "<<set $scene.piss=false>><<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Decline her offer.' 1200 "<<set $scene.piss=false>><<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: sex club humiliation event - bar drink piss/cum
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if $scene.piss>>
<<applyExperience 'piss' 13 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<<set $scene.humiliation.piss = true>>
<<else>>
<<set $scene.humiliation.facial = true>>
<</if>>
<<elseif $fetish.get_raped>>
<<if $scene.piss>>
<<applyExperience 'piss' 9 'very' $EXPOSED>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<<set $scene.humiliation.piss = true>>
<<else>>
<<set $scene.humiliation.facial = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $scene.piss>>
You drop to your knees as the <<man>> unzips. <<He>> barely slids <<his>> cock through your ring-gag before unleashing a hot stream of <<getWordPiss>> down your throat.<br>
<br>
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
Your eyes roll back in debased pleasure as you drink down every delicious bitter drop.
<<else>>
You take a final breath and then focus on swallowing as <<he>> unloads the full contents of <<his>> bladder across your tongue.
<</if>>
You gulp softly as <<he>> looks down with a grin.<br>
<br>
"@@.generic_male2;Wow, you really are a piss-drinking whore! You fucking love this, you disgusting slut!@@"<br>
<br>
You moan in humiliated lust and nod only for <<him>> to pull you away and finish off by spraying you right in the face. "@@.generic_male2;Yeah! Take it you tramp! Hah, you're dripping with piss you fucking human toilet!@@"
<<else>>
You cough at the bitter brew, immediately regretting your decision... which only results in half of it spilling down your chin, then <<man>> finishing off by spraying the final few drops into your face in annoyance.<br>
<br>
"@@.generic_male2;Dumb slut. Can't even hold your liquor! Now clean me up, you piss-drinking whore!@@"
<</if>>
<br><br>
You shudder in humiliation as you feel the eyes of other nearby bar patrons upon you as you lick the <<man>> clean.<br>
<br>
You're taking a moment to figure out how to stand without the aid of your arms when you look up at the woman to your other side.<br>
<br>
"@@.generic_female1;Hey, sugar. You looking to chase that beer with something harder? Because, if you are, well... I'm a squirter.@@"<br>
<br>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Accept her offer.' 1200 "<<set $scene.piss=false>><<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Decline her offer.' 1200 "<<set $scene.piss=false>><<set $scene.accept=false>>">>]
<<else>>
You slide to your knees before the woman as she shuffles to the edge of her stool, her skirt raised and legs spread to reveal her complete lack of underwear. "@@.generic_female1;Lick it good, slut.@@" She commands as you lean forward, her hand landing on the back of your head, fingers entwined with your hair as she steers your progress.<br>
<br>
Thighs press against your face from either side as you extend your tongue and lick as hard as you can, the woman's stifled moans and her delicious flavour your initial "reward" as you work towards getting her off proper.<br>
<br><br>
You can feel her muscles tremble just before she cums, her description of being a squirter no understatement as she gushes into your mouth, feminine juices flowing down your chin until she pulls you away to pant and catch your breath.<br>
<br>
"@@.generic_female1;Good slut, that's the type of tongue I like! Now get back in there and clean up your mess!@@"<br>
<br>
She pulls you back in while holding your face a centimetre or so away from her thighs as you go to work with your tongue once more, licking her clean before she finally lets you back to your feet to stumble away, your own face still a mess of drool and her.<br>
<br>
<<include "sexclubHumilChoices">>
<</if>>
<<elseif $fetish.get_raped>>
<<if $scene.piss>>
You shake your head and the <<mans>> gaze narrows. "@@.generic_male2;Do you think you're too good for my piss you fucking whore?@@"<br>
<br>
You gasp as <<he>> grabs you by the hair and drags your face downward, <<his>> firm grip the only thing keeping you from falling to the floor as you scramble to get your knees under you. <<He>> holds you with one hand as <<he>> unzips with the other and then jams <<his>> cock through your gag to unleash a hot, hard stream of <<getWordPiss>>.<br>
<br>
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
Your initial thrashing is overcome by the first taste of amber gold, your eyes rolling back in pleasure as you try to drink down every last drop.
<<else>>
You try to struggle, but it's no use as <<he>> holds you against <<his>> crotch and pisses down your throat.
<</if>>
You gulp softly as <<he>> looks down with a grin.<br>
<br>
"@@.generic_male2;Wow, you really are a piss-drinking whore! You fucking love this you disgusting slut!@@"<br>
<br>
You moan in humiliated lust and reflexively nod only for <<him>> to pull you away and finish off by spraying you right in the face. "@@.generic_male2;Yeah! Take it you tramp! Hah, you're dripping with piss you fucking human toilet!@@"
<<else>>
You cough at the bitter brew and try to struggle away but <<he>> holds you firm. The end result is that you drink half, and half flows down your chin... well until <<he>> sprays the final few drops onto your face in annoyance.
<</if>>
<br><br>
You pant for air and look up to find the woman who had been on the stool to your other side standing over you with her skirt raised.<br>
<br>
"@@.generic_female1;Damn that was hot — for turning me on you need to get me off and, warning — I'm a squirter.@@"<br>
<br>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Accept her offer.' 1200 "<<set $scene.piss=false>><<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Decline her offer.' 1200 "<<set $scene.piss=false>><<set $scene.accept=false>>">>]
<<else>>
Holding up her skirt with one hand the woman drives your face between her legs. "@@.generic_female1;Did you think that was a choice? Hell no, it was a command, now stick your tongue out you filthy slut<<if $fetish.cum>> — there's a nice appetiser in there to give you the energy to lick me to the main course<</if>>!@@"<br>
<br>
If you hope to breathe again you had better do as she says, and you extend your tongue
<<if $fetish.cum>>
to find a nice salty cream-pie to drip out into your mouth.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
You eagerly gulp down the tasty treat and then re-focus on getting her off.
<<else>>
You slurp the salty bonus and focus on getting her off.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
You swallow the disturbingly tasty morsel and then focus on getting her off.
<<else>>
You choke the nastiness down and try to focus on getting her off.
<</if>>
<</if>>
<<else>>
and lick frantically in an effort to get her off.
<</if>>
<br><br>
Not only is the woman a squirter, but an easy one at that, and it is not long before she is nigh-drowning you, her juices gushing down your chin as she pulls you away and you pant.<br>
<br>
"@@.generic_female1;Good slut. Now get the fuck out of here — you look disgusting!@@"<br>
<br>
Your face covered with <<if $fetish.piss>>piss and <</if>>feminine juices that you cannot wipe clean you push to your feet and stagger away.<br>
<br>
<<include "sexclubHumilChoices">>
<</if>>
<<else>>
<<if $scene.piss>>
You decline the <<mans>> offer only for a woman on the other side of you to put her cocktail down and smile.<br>
<br>
"@@.generic_female1;If you're looking for something a bit different to whet your whistle, well... I'm a squirter.@@"<br>
<br>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Accept her offer.' 1200 "<<set $scene.piss=false>><<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sex_club_chastity_bar_2' 'Decline her offer.' 1200 "<<set $scene.piss=false>><<set $scene.accept=false>>">>]
<<else>>
You decline the woman's offer and she shrugs before going back to her cocktail. there seems to be nothing else to do at the bar.<br>
<br>
<<include "sexclubHumilChoices">>
<</if>>
<</if>>
</div>/*#
#desc: sex club humiliation event - play area
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.play=true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You head into the play area where it seems like a pack of Masters and Mistresses are closing in on you until a latex-clad nun appears beside you.<br>
<br>
<<if $player.flags.church.level >= 2>>
"@@.npc_nun_chastity;<<if $player.identify_as == "male">>Sir<<else>>Sister <<=$player.first_name>><</if>>! Oh, you are looking just ravishing tonight, putting yourself through a bit of a walk of shame, hmm? How wonderful, let me help! Mmm, it reminds me of a prank I endured during seminary — I was already known as a bit of an exhibitionist tart so one day someone stole my habit and I had to walk a mile home to the convent in nothing but my chastity belt! What fun! Seeing how people looked at me as I walked down the street was what convinced me that my calling was to focus on evangelising to the masses!@@"
<<else>>
"@@.npc_nun_chastity;Oh, you are looking just ravishing tonight, putting yourself through a bit of a walk of shame, hmm? How wonderful, let me help! Mmm, it reminds me of a prank I endured during seminary — I was already known as a bit of an exhibitionist tart so one day someone stole my habit and I had to walk a mile home to the convent in nothing but my chastity belt! What fun!@@"
<</if>>
<br><br>
She places a rubber arm over your shoulder and leads you through the play area.
<<if $player.flags.humiliationStyle == "brazen">>
"@@.npc_nun_chastity;Come, my brazen slut — let us see what catches your eye to deepen your blessed depravity...@@"
<<else>>
"@@.npc_nun_chastity;Come, let us see what catches your eye to further your divine embarrassment...@@"
<</if>>
<br><br>
[<<moveTo 'event_sex_club_chastity_play_2' 'Continue.' 300>>]
</div>/*#
#desc: sex club humiliation event - bondage
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
The nun leads you around the play area for a bit before stopping in front of an intricate shibari scene — two slaves bound together in a very challenging position, their arrangement such that either one moving will make the other's position even more uncomfortable. The result is them struggling to remain still, even as tiring muscles tremble and see-saw things back and forth.<br>
<br>
"@@.npc_nun_chastity;What do you think of that?@@" The nun asks, "@@.npc_nun_chastity;Bound, not just for mild helplessness like you are now, but utterly inescapable, your every movement constrained, bondage so tight it becomes paradoxically freeing...@@"<br>
<br>
She reaches down to squeeze your tail and prompt a moan. "@@.npc_nun_chastity;Well? Speak truth, is this the sort of thing you would love to endure?@@"<br>
<br>
<<if setup.getTotalValue("bondage") < 5>>
[@@.link_locked;Get tied up? No, you don't want that...@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_play_3' 'Yes, you love bondage and wish to be tied often.' 300 "<<set $scene.humiliation.bondage=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("bondage") > 15>>
[@@.link_locked;There is no way you can deny your love of bondage.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_play_3' 'No, you do not want to be bound.' 300 "<<set $scene.humiliation.bondage=false>>">>]
<</if>>
</div>/*#
#desc: sex club humiliation event - bdsm
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.humiliation.bondage>>
<<addItem "club_writing_bind">>
<<wearItem "club_writing_bind" true>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
<<if $scene.humiliation.bondage>>
You lustily moan and nod as you stare in increasing jealousy at the two bound slaves.<br>
<br>
"@@.npc_nun_chastity;Mmmm, moaned like a true rope bunny who ever longs to be tied tighter, gagged harder and give themselves over to bound bliss.@@"<br>
<br>
She takes the marker and writes something on your arms.
<<else>>
You shake your head and she nods. "@@.npc_nun_chastity;I see. Well, some prefer their freedom, but our faith teaches that even freedom can be chains, and that bondage can be a perfect blessing. Perhaps you just have not been secured properly yet.@@"
<</if>>
<br><br>
The two of you continue on and then come to a stop where a Mistress is harshly flogging a <<man>>.<br>
<br>
"@@.npc_nun_chastity;Look at <<his>> back — each red mark throbbing with pain, every blow cleansing <<him>> of sin, of failures... is this what you desire? To be spanked every morning and flogged every night? To touch the divine at the point where agony becomes ecstasy?@@"<br>
<br>
<<if setup.getTotalValue("bdsm") < 5>>
[@@.link_locked;Pain? Of course you don't like pain!@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_play_4' 'Yes, you love pain and long for a good flogging.' 300 "<<set $scene.humiliation.bdsm=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("bdsm") > 15>>
[@@.link_locked;There is no way you can deny your masochistic desires.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_play_4' 'No, you do not like pain.' 300 "<<set $scene.humiliation.bdsm=false>>">>]
<</if>>
</div>/*#
#desc: sex club humiliation event - foot
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.humiliation.bdsm>>
<<addItem "club_writing_whip">>
<<wearItem "club_writing_whip" true>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
<<if $scene.humiliation.bdsm>>
You nod, twitching in commiserate joy at the sound of the flogger finding its fleshy target.<br>
<br>
"@@.npc_nun_chastity;I should have known.@@" The nun states, giving your rear a swat right over where the words "Spank me!" were written. "@@.npc_nun_chastity;Pleasure and pain are but two sides of the same coin, it is wonderful that you have already made that realisation.@@"
<<else>>
You shake your head and the nun nods.<br>
<br>
"@@.npc_nun_chastity;I see. Certainly we are taught to avoid pain, but a deeper investigation can be valuable. We are taught that pain and pleasure are two sides of the same coin, that only in combination can one come to full satisfaction.@@"
<</if>>
<br><br>
You continue on to where several slaves are worshipping at the feet of a throne, showering the boots of the occupant in kisses, the foot occasionally rising to press into one of their faces as their eyes roll back in ecstasy.<br>
<br>
"@@.npc_nun_chastity;And this, my dear? How does this manner of service strike you?@@"<br>
<br>
<<if setup.getTotalValue("foot") < 5>>
[@@.link_locked;Feet, no, feet are disgusting!@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_play_5' 'Yes, you long to lick toes and be stepped on.' 300 "<<set $scene.humiliation.foot=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("foot") > 15>>
[@@.link_locked;There is no way you can deny your love of feet.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_play_5' 'No, you do not like feet.' 300 "<<set $scene.humiliation.foot=false>>">>]
<</if>>
</div>/*#
#desc: sex club humiliation event
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.humiliation.foot>>
<<addItem "club_writing_step">>
<<wearItem "club_writing_step" true>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
<<if $scene.humiliation.foot>>
You nod, imagining how it would feel to have someone step on you, to feel the shaft of a stiletto heel slide through your gag, or to suck on a set of toes...<br>
<br>
"@@.npc_nun_chastity;Lovely. The symbolism of foot-washing is common in many religions, of course, but our order believes in taking it further. To worship at the feet of another can be such a glorious act.@@"<br>
<br>
She takes the marker and writes something across your belly.
<<else>>
You shake your head.<br>
<br>
"@@.npc_nun_chastity;Interesting, and rebellious. The symbolism of washing feet is a common one of service through multiple religions and societies. Certainly taking it to the sexual level can be even more wonderful, but embracing caring for another in such manner can be a boon of its own that you should well consider.@@"
<</if>>
<br><br>
<<if $fetish.bestiality_hard>>
She leads you onward.<br>
<br>
[<<moveTo 'event_sex_club_chastity_play_5_best_1' 'Continue.' 300>>]
<<else>>
You come to the edge of the play area.<br>
<br>
[<<moveTo 'event_sex_club_chastity_play_6' 'Continue.' 300>>]
<</if>>
</div>/*#
#desc: sex club humiliation event - bestiality
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You continue on, passing into one of the private rooms adjacent to the play area where you find a massive wolf-like creature hard at work fucking a <<if $fetish.sissy>>fellow sissy<<else>>slave<</if>>.<br>
<br>
You watch for a minute or so before the beast cums with a howl, its rich emission flowing out of its partner's ass as the used human slumps to the floor in exhaustion. Even partially soft the creature's cock is glorious, its knot thick and purple, a member as magnificent as its owner as the creature struts away through a flap to its lair.<br>
<br>
"@@.npc_nun_chastity;What do you think of that, my dear? Have you listened to the call of the wild? Do you long to feel a knot swell inside you, or perhaps the deep fullness that only a stallion can provide? Or maybe your tastes wander even further afield or off to realms fantastic...@@"<br>
<br>
<<if setup.getTotalValue("bestiality") < 3>>
[@@.link_locked;You do not like animals that way...@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_play_5_best_2' 'Yes, you long to be bred like a bitch or mounted like a mare.' 300 "<<set $scene.humiliation.bestiality=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("bestiality") > 10>>
[@@.link_locked;There is no way you can deny your love of all beasts.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_play_5_best_2' 'No, you do not like beasts.' 300 "<<set $scene.humiliation.bestiality=false>>">>]
<</if>>
</div>/*#
#desc: sex club humiliation event - bestiality choice
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.humiliation.bestiality>>
<<addItem "club_writing_knot">>
<<wearItem "club_writing_knot" true>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
<<if $scene.humiliation.bestiality>>
You reply that you love being fucked by your non-human friends.<br>
<br>
The nun smiles and leans down to write on your thighs, front and back. "@@.npc_nun_chastity;Limiting oneself to merely human partners is so narrow-minded. The Goddess blessed us with so many beasts — to say nothing of our imaginations! It is only right to indulge in mutually pleasurable acts. To be knotted, or to feel a bull fill you with its rich cum... to feel such primal power is to be truly blessed, and at one with a state of nature.@@"
<<else>>
You shake your head and <<=setup.getNpcName('npc_nun_chastity', 'formal')>> frowns. "@@.npc_nun_chastity;I see. Well, certainly one should not do things that make them uncomfortable... though I advise you to keep an open mind. Societal restrictions are often onerous and wrong, so long as no harm is done the world presents so many opportunities, to embrace the primal power of a horse cumming down your throat or a dog knotting inside you... such things are true blessings.@@"
<</if>>
<br><br>
You come to the edge of the play area.<br>
<br>
[<<moveTo 'event_sex_club_chastity_play_6' 'Continue.' 300>>]
</div>/*#
#desc: sex club humiliation event - conclusion
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
At the edge of the play area the nun turns to you with a smile. "@@.npc_nun_chastity;Well, my dear. I hope you have enjoyed our journey, and that it has taught you a bit more about yourself. Know that you are beautiful, and have so much to give the world. That being a slut on parade is nothing to be ashamed of... unless you enjoy that humiliation. In which case take it from a servant of the Goddess that you are a depraved, sinful harlot, fit for scorn and punishment, little more than an object to be abused.@@"<br>
<br>
You shudder — and almost cum as she squeezes your tail one final time before walking away.<br>
<br>
<<include "sexclubHumilChoices">>
</div>/*#
#desc: sex club humiliation event - dance
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dance=true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png">>
<div id="invframe" class="scrolltext">
Almost the moment you step onto the dance floor you find yourself staggering and wiggling as the swelled plug in your ass sets to vibrating in tune with the music.<br>
<br>
Unaware of your private predicament the other dancers welcome you in and you are soon writhing to the beat... literally.<br>
<br>
With your arms bound you are more than a little bit helpless — and unsteady, and the other dancers seem to delight in pushing you back and forth, keeping you constantly off-balance as the staggering motion only serves to whip your tail around and cause your body to flex and strain against the shifting plug.<br>
<br>
A particularly frenetic song comes on and you end up losing your balance — caught from falling face-first by a helpful fellow dancer, but still finding yourself on your knees, looking up...<br>
<br>
With your mouth spread wide by your gag, the announcement of your collar and the degrading words written on your skin you realise how inviting and vulnerable your position is as you look around at your fellow dancers' bulges or exposed, flapping cocks...<br>
<br>
<<if setup.getTotalValue("penis") < 5>>
[@@.link_locked;No, you do not like cock.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_dance_2' 'Yes, use me.' 300 "<<set $scene.humiliation.penis=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("penis") > 15>>
[@@.link_locked;There is no way you can deny your hunger for cock.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_dance_2' 'Scramble to your feet.' 300 "<<set $scene.humiliation.penis=false>>">>]
<</if>>
</div>/*#
#desc: sex club humiliation event - dance cock
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.humiliation.penis || $fetish.get_raped>>
<<applyExperience 'penis' 18 'terrible' $EXPOSED>>
<<applyExperience 'oral' 13 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png">>
<div id="invframe" class="scrolltext">
<<if $scene.humiliation.penis || $fetish.get_raped>>
<<if $scene.humiliation.penis>>
You're more than happy to be on your knees, and it doesn't take much of you waggling your tongue and lustily looking up before "fuck the depraved slut in the mouth" becomes the hottest dance craze.
<<else>>
You try to rise but are pushed back to your knees, the crowd closing in around you, eager to "make use" of your gaping mouth-hole...
<</if>>
<br><br>
You soon become the centre of the dance floor, the occasional <<if $options.fem>>woman<<else>>person<</if>> "accidentally" stepping on your tail to swell your powerfully vibrating plug even further as you moan and gasp, all the while having cock after cock rammed down your throat or slapping you in the face.<br>
<br>
All the excitement builds rapidly and you look around to see at least half a dozen <<if $options.fem>>girl<</if>>cocks being beaten furious as you realise you are about to be the centre of a small, impromptu bukkake session.<br>
<br>
<<if setup.getTotalValue("cum") < 5>>
[@@.link_locked;No, you do not like cum.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_dance_3' 'Yes, cover me in cum!' 300 "<<set $scene.humiliation.cum=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;There is no way you can deny your thirst for cum.@@]<br>
<<else>>
[<<moveTo 'event_sex_club_chastity_dance_3' 'Shake your head.' 300 "<<set $scene.humiliation.cum=false>>">>]
<</if>>
<<else>>
You scramble to your feet and soon after make your way off the dance floor to recover.<br>
<br>
<<include "sexclubHumilChoices">>
<</if>>
</div>/*#
#desc: sex club humiliation event - dance cum
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.humiliation.cum || $fetish.get_raped>>
<<applyExperience 'cum' 18 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<</if>>
<<if $scene.humiliation.penis>>
<<addItem "club_writing_penis">>
<<wearItem "club_writing_penis" true>>
<</if>>
<<if $scene.humiliation.cum>>
<<addItem "club_writing_cum">>
<<wearItem "club_writing_cum" true>>
<</if>>
<<addItem "club_writing_misc">>
<<wearItem "club_writing_misc" true>>
<<if $player.body.breastsize[0] > 0>>
<<addItem "club_writing_tits">>
<<wearItem "club_writing_tits" true>>
<<else>>
<<addItem "club_writing_flat">>
<<wearItem "club_writing_flat" true>>
<</if>>
<<addItem "condom_belt">>
<<wearItem "condom_belt" true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png">>
<div id="invframe" class="scrolltext">
<<if $scene.humiliation.cum || $fetish.get_raped>>
<<if $scene.humiliation.cum>>
Your eyes light up in anticipation... and then quickly close as the spunk starts flying. You smile around your gag, trying to catch as much as you can as you feel a shower of semen rain down over you.
<<else>>
You try to shake your head but it's too late, the first shot an eyeful of cum that has you brace for the veritable deluge that follow. A few eagle-eyed shooters manage to hit your tongue or the back of your throat through the gag, but for the most part you take things full on the face, with a few particularly errant shots splattering over your chest.
<</if>>
As you feel the impacts stop and the hot cum starts dripping down your body you blink your eyes open, watching with a mix of pride and sorrow as your partners' cocks droop.<br>
<br>
Someone helps you to your feet and off the floor where your plug falls silent and you are able to rest for a moment.
<<else>>
You shake your head and it breaks the spell, someone helping you to your feet and escorting you off the dance floor where you take a moment to recover.
<</if>>
As you stand helpless a few of your partners drift past, their thanks unheard over the music... the notes they write on your flesh; your face, your body... those are far less transitory. As you stagger back to your feet you notice that somewhere along the line you've gained a "skirt" of sorts... one made entirely of used condoms, the dangling latex loads sticky against your sweaty thighs.<br>
<br>
<<include "sexclubHumilChoices">>
</div>/*#
#desc: sex club humiliation event - finale
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
You blink at the bright light as the rest of the club looks towards you and <<=setup.getNpcName("npc_sex_club","formal")>> calls for you to join <<him npc_sex_club>> on stage. "@@.npc_sex_club;Come on, give a hand for your degenerate slut of the evening! Someone who really went above and beyond to embody what <<printShopName 'sex_club'>> is all about!@@"<br>
<br>
Someone starts a slow clap and it soon turns to roaring applause as you stagger to the front and are helped up onto the stage.<br>
<br>
You get a momentary glimpse of your reflection and you gasp anew, your body bearing witness to your depraved evening — from
<<if $scene.humiliation.cum || ($fetish.cum && $fetish.get_raped)>>
<<if $scene.piss && ($scene.humiliation.piss || $fetish.get_raped)>>
your matted hair and face dripping with piss and cum,
<<else>>
cum-dripped face and matted hair,
<</if>>
<<elseif $scene.piss && ($scene.humiliation.piss || $fetish.get_raped)>>
piss-drenched face and wet hair,
<<else>>
sweat-drenched face and matted hair,
<</if>>
to the words written across your body — "slut" and "trash" and "fuck me" and "worthless whore," degradations innumerable, but the most notable are the ones that directly map to your experiences —
<<if $scene.humiliation.bondage>>
"bind me" encircling each of your arms,
<</if>>
<<if $scene.humiliation.bdsm>>
"whip me" across your back,
<</if>>
<<if $scene.humiliation.foot>>
"step on me" on your belly,
<</if>>
<<if $scene.humiliation.bestiality>>
"Knot me" and "I spread for horse cock" across your thighs,
<</if>>
<<if $scene.humiliation.cum>>
"cum dumpster" over your chest,
<</if>>
<<if $player.body.breastsize[0] > 0>>
"slap my tits" and "bitch tits" decorating your breasts,
<<else>>
"flat fuck-slut" across your chest,
<</if>>
<<if $scene.humiliation.penis>>
and finally "COCK" across your forehead, and WHORE, with your gaped mouth forming the O across your face,
<</if>>
you shudder in humiliation even as you trudge the rest of the way to take centre-stage.<br>
<br>
<<=setup.getNpcName("npc_sex_club","formal")>> grins at you as the spotlight bears down and almost blinds you.<br>
<br>
"@@.npc_sex_club;I hope many of you have had a chance to play or see this hot piece of sluttitude, but for those that haven't, or those that want a second shot, I want you to take a moment to shout your congratulations, really let <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>him<<case 'fluid' 'agender'>>them<</switch>> have it! As you can tell there's nothing they get off on more than being treated like a worthless, depraved gutter-trash piece of meat!@@"<br>
<br>
Your massive plug starts to vibrate and you start to tremble...<br>
<br>
[<<moveTo 'event_sex_club_chastity_finale_2' 'Oh fuck...' 180>>]
</div>/*#
#desc: sex club humiliation event - finale humiliation
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyExperience 'humiliation' 20 'skip' $EXPOSED>>
<<removeItem "ring_gag_clear" true>>
<<deleteItem "ring_gag_clear">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
The shouts wash over you loud and vicious, "whore," "tramp," "slattern," "worthless bitch,"
<<if $fetish.slurs>>
"faggot," "tranny slut,"
<</if>>
<<if $scene.humiliation.bdsm>>
"pain slut,"
<</if>>
<<if $scene.humiliation.foot>>
"foot slave,"
<</if>>
<<if $scene.humiliation.bestiality>>
"dog fucker,"
<</if>>
<<if $scene.humiliation.cum>>
"cum fiend,"
<</if>>
all this and more. As the words blur together it becomes too much to process. You cum, hard, the humiliation amplifying the vibrations in your ass as you almost faint from the intensity of your climax... only for <<=setup.getNpcName("npc_sex_club","formal")>> to hold you up and roughly shove a hand between your thighs.<br>
<br>
"@@.npc_sex_club;Look!, <<switch $player.identify_as>><<case 'female' ''>>she<<case 'male'>>he<<case 'fluid' 'agender'>>they<</switch>> just came from your words! Truly the sign of a degenerate who gets off on everything, including their own abject humiliation.@@"<br>
<br>
Somehow over the roar of the crowd you hear a click and your gag is removed, the crowd's cheers and jeers continue and yet your hear <<=setup.getNpcName("npc_sex_club","formal")>> growling in your ear. "@@.npc_sex_club;Tell them what you are, shout your truth!@@"<br>
<br>
Still shuddering in orgasmic aftermath you are caught up in the moment as you call back, "@@.pc;Yes! I am a worthless <<if $fetish.sissy>>sissy <</if>>slut! Fuck me<<if $fetish.get_raped>>, rape me<</if>>, use me for your pleasure and then cast me aside yyyyyeeeeesssssss!@@"<br>
<br>
Your shout becomes a scream as you cum again, climaxing so hard that you black out.<br>
<br>
[<<moveTo 'event_sex_club_chastity_finale_3' '...' 1800>>]
</div>/*#
#desc: sex club humiliation event - wake up and leave
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "box_tie" true>>
<<deleteItem "box_tie">>
<<removeItem "permanent_marker_club" true>>
<<deleteItem "permanent_marker_club">>
<<if $scene.doubleCollar>>
<<removeItem "slut_collar_wide" true>>
<<else>>
<<removeItem "slut_collar" true>>
<</if>>
<<if setup.checkItemWorn("club_writing_spank")>>
<<removeItem "club_writing_spank" true>>
<<deleteItem "club_writing_spank">>
<</if>>
<<if setup.checkItemWorn("club_writing_whip")>>
<<removeItem "club_writing_whip" true>>
<<deleteItem "club_writing_whip">>
<</if>>
<<if setup.checkItemWorn("club_writing_step")>>
<<removeItem "club_writing_step" true>>
<<deleteItem "club_writing_step">>
<</if>>
<<if setup.checkItemWorn("club_writing_knot")>>
<<removeItem "club_writing_knot" true>>
<<deleteItem "club_writing_knot">>
<</if>>
<<if setup.checkItemWorn("club_writing_cum")>>
<<removeItem "club_writing_cum" true>>
<<deleteItem "club_writing_cum">>
<</if>>
<<if setup.checkItemWorn("club_writing_tits")>>
<<removeItem "club_writing_tits" true>>
<<deleteItem "club_writing_tits">>
<</if>>
<<if setup.checkItemWorn("club_writing_flat")>>
<<removeItem "club_writing_flat" true>>
<<deleteItem "club_writing_flat">>
<</if>>
<<if setup.checkItemWorn("club_writing_penis")>>
<<removeItem "club_writing_penis" true>>
<<deleteItem "club_writing_penis">>
<</if>>
<<if setup.checkItemWorn("club_writing_bind")>>
<<removeItem "club_writing_bind" true>>
<<deleteItem "club_writing_bind">>
<</if>>
<<removeItem "club_writing_misc" true>>
<<deleteItem "club_writing_misc">>
<<removeItem "condom_belt" true>>
<<deleteItem "condom_belt">>
<<addItem "humiliating_photos">>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_humiliation'
0
'event_manager_theme_humiliation_1'
true
>>
<<set $npc_sex_club.flags.humil.piss = $npc_sex_club.flags.humil.piss || $scene.humiliation.piss>>
<<set $npc_sex_club.flags.humil.bdsm = $npc_sex_club.flags.humil.bdsm || $scene.humiliation.bdsm>>
<<set $npc_sex_club.flags.humil.bondage = $npc_sex_club.flags.humil.bondage || $scene.humiliation.bondage>>
<<set $npc_sex_club.flags.humil.foot = $npc_sex_club.flags.humil.foot || $scene.humiliation.foot>>
<<set $npc_sex_club.flags.humil.bestiality = $npc_sex_club.flags.humil.bestiality || $scene.humiliation.bestiality>>
<<set $npc_sex_club.flags.humil.penis = $npc_sex_club.flags.humil.penis || $scene.humiliation.penis>>
<<set $npc_sex_club.flags.humil.facial = $npc_sex_club.flags.humil.facial || $scene.humiliation.facial>>
<<set $npc_sex_club.flags.humil.cum = $npc_sex_club.flags.humil.cum || $scene.humiliation.cum>>
<<include "checkCeoInviteEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Backstage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_back.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You wake up to find yourself stripped of your restraints. Something soft and wet is brushing your skin and you sit up to see <<=setup.getNpcName("npc_guard","formal")>> finishing wiping away the last of your markings.<br>
<br>
"@@.npc_guard;Welcome back, you have a fun night?@@" She asks with a grin.<br>
<br>
You think back to what you did and blush... and then nod as she grins.<br>
<br>
"@@.npc_guard;I knew it. Well, your clothes are over there. You can go on and head out when you're ready — and you can keep the collar as a souvenir — there's also some choice pictures in case you want to remember your fun.@@"<br>
<br>
She helps you to your feet and then watches as you change.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo 'room_foyer' 'Head home.' 600 "<<set $player.cutscene.lockinventory=true>><<set $player.inside=false>>">>]
<<else>>
[@@.link_locked;You aren't going outside dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: attempt to demonstrate penis obsession at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 16 'terrible' $EXPOSED>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<applyExperience 'oral' 1 'little' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImageGeneric("generic_sex_club_male")>>
<div id="invframe" class="scrolltext">
<<if $scene.cock>>
Still on your hands and knees you crawl across the floor towards the <<man>> you saw, taking <<him>> by surprise as you're already reaching for <<his>> zipper before <<he>> realises <<he>> was your target.<br>
<br>
"@@.generic_male1;What? No, you don't—@@" <<he>> starts in embarrassment but you cut <<him>> off with a wink and an "@@.pc;I WANT@@" as you unbutton <<his>> pants to reveal the cute thing within.<br>
<br>
After your earlier handling of <<=setup.getNpcName("npc_cook","first")>> all eyes are still on you... as you whisper "@@.pc;beautiful,@@" and lean in with rapturous joy to prove that you aren't a mere size queen — but a total penis-obsessed cock-addict.<br>
<br>
Coming off the jaw-stretching challenge that is <<=setup.getNpcName("npc_cook","first")>> this <<if $options.fem == $npc_cook.fem>>other <</if>><<guy>> is simplicity itself, but you lick and suck with no less passion, your efforts drawing additional attention as you see several other <<if $options.fem>>girls<<else>>people<</if>> walking forming up for what could easily turn into a blow-bang...<br>
<br>
[<<moveTo "event_sex_club_penis_obsess_2" "YES! You want ALL the cock!" 1800 "<<set $scene.cock=true>>">>]<br>
[<<moveTo "event_sex_club_penis_obsess_2" "Finish up and make your exit before things get out of hand." 180 "<<set $scene.cock=false>>">>]
<<else>>
You stand up and take a bow, strutting slightly as you walk away past all of those who had either previously failed to handle <<=ps(setup.getNpcName("npc_cook","first"))>>, or been too scared to even try.<br>
<br>
<<include "sexClubLocations">>
<</if>>
</div>/*#
#desc: demonstrate penis obsession at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cock>>
<<applyExperience 'penis' 16 'terrible' $EXPOSED>>
<<applyExperience 'bimbofication' 16 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cock>>
You love and hunger for cock, and after eagerly sucking your new diminutive friend to completion you turn to find yourself face to... well... cock with several additional subjects.<br>
<br>
<<printThought "Yes! More!">><br>
<br>
One cock in each hand — and at least one stuffing your mouth you eagerly suck and stroke, stare and submit as you take all cummers — from the biggest <<if !$options.fem>>male <</if>>meat missile, to the smallest <<if $fetish.sissy>>sissy schlong<<else>>trouser treasure<</if>>, from the most delicate lady lance to big, firm broadswords, cocks, theynises, dongs, <<if $options.fem>>crotch cannons<<else>><<getWordPenis>><</if>>, en-peens, <<getWordPenis false>>, and androgenises. Naturally grown or surgically enhanced, big, small, <<if $fetish.bestiality_soft>> knotted or more<<else>> and anything in between<</if>>; hard as steel or pillow soft — if it's a cock you want it, you love it, your partner's existence above the hips or below the knees all but forgotten as you give yourself over to the wonder of penis in all its forms...<br>
<br>
[<<moveTo "event_sex_club_penis_obsess_3" "Cooooooock!" 1800>>]
<<else>>
Sucking cock at either end of the spectrum is one thing... but you aren't quite up for going whole hog on all comers <<printThought "Or should that be cummers?">> tonight, so you quickly finish off your still surprised subject and then slip away into the crowd like some sort of phantom dick-sucker.<br>
<br>
<<include "sexClubLocations">>
<</if>>
</div>/*#
#desc: finish penis event with cook at sex club
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'penis' 'other_penis' 'obsession'>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
Your cock-lust is unending... but your stream of clients, alas, is not. The final phallus falling from your lips as its owner walks away you sigh in a mix of disappointment and contentment before rising to your feet and looking around for your next adventure...<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: examine one bar prison
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.one_bar = {}>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
You examine the post-mounted dildo; it reminds you somewhat of the<<if $fetish.sissy>> "sissy hitching post" <<else>> hitching post <</if>>you used at work, only significantly taller and stripped down, seemingly designed to be used standing, with a narrow platform providing a stop-gap from over-penetration... though you imagine the discomfort of resting all of one's weight on such a small area would have the user quickly getting their feet back under them.<br>
<br>
Thinking about it a bit more, and its position in the room, you surmise it's so that a dominant might keep their slave "occupied" while they changes... or possibly even do a bit of human dress-up with their helplessly standing slave.<br>
<br>
You don't see a clear mechanism for adjusting the height of the pole, so you presume there must be some sort of remote. As it currently stands it's a bit short for you<<if setup.checkItemTypeWorn("shoes") && setup.getItemObjFromType("shoes").hasOwnProperty("heels")>> especially in your heels,<</if>> and you could easily squat over it and step off without any trouble.<br>
<br>
[<<moveTo "event_sex_club_onebar_2" "See how it feels..." 180>>]<br>
[<<moveTo "event_sex_club_change" "Get back to changing." 0>>]
</div>/*#
#desc: use one bar prison
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true)>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<changeHorny 50>>
<<applyExperience 'anal' 12 'normal' $ALONE>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
The dildo has you excited, and curious, and you decide a little "pre-game" could be just perfect for getting you ready for your night at the club.<br>
<br>
You<<if $scene.removePlug>> carefully remove your plug and<</if>> position yourself over the dildo, squatting down slowly to let it ease into your rear with moan.<br>
<br>
<<printThought "Goddess... I needed that.">> You think to yourself as you bottom out the artificial cock before bouncing up and down, your thighs grateful when the pole rises slightly to make it so you don't have to squat quite so deep to take it all.<br>
<br>
<<printThought "So good... maybe a quick orgasm to clear my mind before I head into the club?">><br>
<br>
[<<moveTo "event_sex_club_onebar_3" "Yes, you deserve a nice pole-fuck orgasm." 300 "<<set $scene.cum=true>>">>]<br>
[<<moveTo "event_sex_club_onebar_3" "Restrain yourself... and step off the pole." 300 "<<set $scene.cum=false>>">>]
</div>/*#
#desc: trapped one bar prison
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cum>>
<<playerOrgasm>>
<<applyExperience 'bondage' 10 'normal' $ALONE>>
<<else>>
<<applyStress 10>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
Making short, quick bounces on the dildo you manage to analgasm with a cry of joy, going almost limp as the pleasure washes over your body, but the pole between your legs keeps you upright.<br>
<br>
<<printThought "Whew! That was satisfying!">><br>
<br>
As you catch your breath you start to step off to get back to changing... only to discover that you can't, that, while you were distracted by your self-pleasure debauchery, the pole has risen so high that, even rising up onto your tippy-toes, you can't manage to lift off the dildo.<br>
<br>
<<printThought "Uh-oh...">><br>
<br>
<<include "onebarEscapeOptions">>
<<else>>
Even though you are now desperate for release, you manage to force yourself off the dildo, forced to rise up onto your tippy-toes as you realise just how close you were to being trapped in the 1-bar prison.<br>
<br>
<<printThought "Gotta be careful with horny brain and keep my wits about me, that could have been embarrassing, or dangerous!">><br>
<br>
[<<moveTo "event_sex_club_change" "Get back to changing." 0>>]
<</if>>
</div><<if $scene.one_bar.stretch>>
[@@.link_locked;Your attempts to reach something above you to pull your way out resulted in your hands being cuffed.@@]<br>
<<else>>
[<<moveTo "event_sex_club_onebar_4" "See if you can grab something above you and pull your way out." 180 "<<set $scene.one_bar.action='stretch'>>">>]<br>
<</if>>
<<if $scene.one_bar.phone>>
[@@.link_locked;You dropped your phone, and there is no way you can reach it.@@]<br>
<<elseif $scene.one_bar.stretch>>
[@@.link_locked;Your hands are cuffed and suspended above your head, there is no way you could reach your phone, much less use it.@@]<br>
<<else>>
[<<moveTo "event_sex_club_onebar_4" "Pull out your phone." 180 "<<set $scene.one_bar.action='phone'>>">>]<br>
<</if>>
<<if $scene.one_bar.legs>>
[@@.link_locked;You tried to somehow step free of the pole, and now your legs are cuffed to it.@@]<br>
<<else>>
[<<moveTo "event_sex_club_onebar_4" "Try to lift your legs and somehow wiggle off the dildo." 180 "<<set $scene.one_bar.action='legs'>>">>]<br>
<</if>>
[<<moveTo "event_sex_club_onebar_5" "Give up and call out for help." 180>>]/*#
#desc: try to escape one bar prison
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.one_bar[$scene.one_bar.action] = true>>
<<if $scene.one_bar.action == "phone">>
<<deleteItem "smartphone">>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.one_bar.action>>
<<case "stretch">>
You look above you and feel a rush of good fortune — there are a pair of dangling handholds hanging from the ceiling! You reach up, figuring it will be a simple measure to pull yourself free... but the instant you close your hands around the handles steel traps snap around your wrists. In an instant the shot at freedom is turned to further imprisonment as metal globes encase your hands as you discover that it was not chains attaching the hand-holds to the ceiling up, but springs, any effort to pull yourself upwards causing you to strain, but lift up off the dildo no more than a centimetre!
<<case "phone">>
As embarrassing as it might be to summon help to get out of your predicament, you figure it's the only way. Eager to get free, you pull out your phone... only, your body still trembling with a combination of fear over your situation, and post-orgasmic excitement, you fumble the phone and it slips from your grasp, falling to the floor a dozen centimetres from your pillar... but that might as well be a light-year away as far as you reaching it is concerned.<br>
<br>
<<printThought "Shit!">>
<<case "legs">>
You try to shimmy your legs and rock your way off the dildo... but this seems to trigger some sort of "safety" feature, and suddenly a pair of steel cuffs snap around your thighs. You reflexively flail in response, and another pair of cuffs snatch up your ankles, holding you even tighter in place, your legs now locked against your imprisoning pole.
<<default>>
ERROR: unexpected scene.one_bar.action <<=$scene.one_bar.action>>
<</switch>>
<br><br>
You re-consider your situation. You are stuck atop a one-bar prison in the changing room of <<printShopName 'sex_club'>>, your horny-brain distraction having left you impaled atop the cunningly simple device.<<if $scene.one_bar.stretch>> As if things were not bad enough, some sort of "safety" routine has cuffed your legs to the pole, further locking you in position.<</if>><<if $scene.one_bar.stretch>> Your attempt to pull yourself free has resulted in your hands being cuffed and cocooned in metal spheres, all but dangling from the ceiling.<</if>><<if $scene.one_bar.phone>> Your phone sits less than a meter away on the floor... totally out of reach in your current predicament.<</if>><br>
<br>
<<include "onebarEscapeOptions">>
</div>/*#
#desc: guard finds you in one bar prison
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<if $scene.one_bar.stretch && $scene.one_bar.legs && $scene.one_bar.phone>>
Well and truly out of options,
<<elseif $scene.one_bar.stretch || $scene.one_bar.legs>>
Your efforts to effect escape on your own only having worsened your predicament,
<<else>>
Desperate for a way out of your predicament,
<</if>>
you shout for help.<br>
<br>
A minute later and <<=setup.getNpcName("npc_guard","formal")>>, taking a moment to look you over, her eyes hungry as her face splits into a knowing grin.<br>
<br>
"@@.npc_guard;Well! Look who got themselves into trouble<<if State.hasPlayed("event_sex_club_onebar_6")>>... again<</if>>. You know that one-bar prison is here so that a dom or domme can keep their slave occupied while they change... but you seem to have done it to yourself.<<if $scene.one_bar.stretch && $scene.one_bar.legs>> Quite the predicament,<<elseif $scene.one_bar.stretch || $scene.one_bar.legs>>Quite the predicament,<<else>><</if>>@@" <<if $scene.one_bar.stretch && $scene.one_bar.legs>>She adds, looking at your leg and wrist restraints<<elseif $scene.one_bar.stretch>>She adds, looking at your wrist restraints<<elseif $scene.one_bar.legs>>She adds, looking at your leg restraints<<else>>She concludes<</if>>.<br>
<br>
Still grinning, she steps closer, the whip at her side<<if ["penis", "futa", "cybernetic", "cyber-futa"].includes($npc_guard.genitals)>>, not to mention her big, <<if ["cybernetic", "cyber-futa"].includes($npc_guard.genitals)>>cybernetic <</if>><<getWordPenis false>><</if>> swinging in a mix of invitation, and intimidation. "@@.npc_guard;You know, a <<if $fetish.sissy>>sissy<<else>><<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>boy<<default>>person<</switch>><</if>> could be in quite the pickle in a situation like this. Why, who knows who might take advantage of them... can you imagine?@@" Her eyes twinkle in invitation.<br>
<br>
[<<moveTo "event_sex_club_onebar_6" "You can imagine... and that's quite enough." 180 "<<set $scene.imagine=true>>">>]<br>
[<<moveTo "event_sex_club_onebar_6" "You don't know... you'd probably have to experience it for yourself." 180 "<<set $scene.imagine=false>>">>]
</div>/*#
#desc: guard one bar prison tease
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.imagine>>
<<if $scene.one_bar.phone>>
<<addItem "smartphone">>
<</if>>
<<else>>
<<addItem "handcuffs">>
<<wearItem "handcuffs" true>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
<<if $scene.imagine>>
You reply that your time stuck has given you PLENTY of time to imagine how this could all go wrong, and that you're ready to be let free.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> looks a little disappointed in your decision, but she quickly <<if $scene.one_bar.stretch || $scene.one_bar.legs>>taps a button to release your restraints, and then <</if>>lifts you free of the dildo and sets you gently back on the ground.<br>
<br>
"@@.npc_guard;There you go,@@" she states<<if $scene.one_bar.phone>>, finishing off by handing you your phone<</if>>. "@@.npc_guard;Maybe be a little more careful in the future... the <<printShopName 'sex_club'>> is a place of safety and consent... but if you did something like this back at the office, well...@@" her voice trails off in mutual understanding.<br>
<br>
You thank her for the assistance and she heads back to her post, leaving you, once again, alone in the changing room.<br>
<br>
[<<moveTo "event_sex_club_change" "Get back to changing." 0>>]
<<else>>
You bat your eyes playfully and confess that you just can't think of how your current predicament could be taken advantage of.<br>
<br>
"@@.npc_guard;No way at all?@@" She asks. "@@.npc_guard;What about something like this?@@" She states
<<if $scene.strip>>
somehow removing your remaining clothes in an instant.
<<else>>
as she starts groping you.
<</if>>
"@@.npc_guard;Or what about this?@@" She adds, squeezing your ass and grinding against you from behind as she whispers in your ear.
"@@.npc_guard;Or how about this?@@" She continues, <<if $scene.one_bar.stretch>>releasing the restraints enclosing your hands just long enough to cuff<<else>>cuffing<</if>> your wrists behind your back.<br>
<br>
"@@.npc_guard;Goddess you're cute... imagine if all the club's patrons could see you like this? Helpless, impaled...@@"<br>
<br>
[<<moveTo "event_sex_club_onebar_7" "Yes..." 180 "<<set $scene.show=true>>">>]<br>
[<<moveTo "event_sex_club_onebar_7" "A private show was enough..." 180 "<<set $scene.show=false>>">>]
<</if>>
</div>/*#
#desc: guard one bar prison night start
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.show>>
<<addItem "ball_gag_red">>
<<wearItem "ball_gag_red" true>>
<<else>>
<<if $scene.one_bar.phone>>
<<addItem "smartphone">>
<</if>>
<<removeItem "handcuffs" true>>
<<deleteItem "handcuffs">>
<</if>>
<</if>>
<<if $scene.show>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<else>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<if $scene.show>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<<else>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.show>>
You shiver, and then lean back into <<=setup.getNpcName("npc_guard","formal")>> and whisper that you'd be "@@.pc;so embarrassed.@@" To be put on display like that.<br>
<br>
"@@.npc_guard;That's what makes it fun.@@" <<=setup.getNpcName("npc_guard","formal")>> whispers, before pulling a ball gag tightly between your teeth and pressing a switch that causes the platform you're standing on, and the one-bar prison upon it, to lift into the air atop a low hover pad.<br>
<br>
You moan through the gag as <<=setup.getNpcName("npc_guard","formal")>> pushes you out of the changing room, lowering you back to the ground next to her guard station... directly outside the entrance to the club proper.<br>
<br>
[<<moveTo "event_sex_club_onebar_8" "Continue." 3600>>]
<<else>>
You decide you've had enough for one night and reply that a public showing is a bit more than you're up for.<br>
<br>
"@@.npc_guard;They'll never know what they missed out on,@@" she replies with a chuckle, giving your ass a final squeeze before removing the cuffs and lifting you off the one-bar prison to place you gently back on the ground, as if you were as light as a feather.<br>
<br>
"@@.npc_guard;Try to be a bit more careful, eh?@@" <<=setup.getNpcName("npc_guard","formal")>> states with a wink<<if $scene.one_bar.phone>> as she hands you your phone<</if>>.<br>
<br>
She heads back to her station and you look around the now empty room, the one-bar prison still glistening with the evidence of where it, and you, just were.<br>
<br>
[<<moveTo "event_sex_club_change" "Get back to changing." 0>>]
<</if>>
</div>/*#
#desc: night in one bar prison
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<div id="invframe" class="scrolltext">
You haven't been in your position long when a pair of club patrons walk through the door. They pause to look at you as <<=setup.getNpcName("npc_guard","formal")>> grins, explaining that it's "good luck" to grope<<if $fetish.sissy>> a sissy. <<else>> "the slut." <</if>> You shiver in place... an act that only serves to make the dildo shift inside of you<<if setup.getEffectiveBreastSize() > 3>>, and your breasts jiggle<</if>>.<br>
<br>
Needless to say, you get fondled and groped by just about everyone who enters the club, bare hands, latex-encased fingers and leather gloved hands alike roaming over your body, fondling and teasing as you twist fitfully on your one-bar prison, unable to escape or do anything save moan through your gag as you are prodded, groped, poked and spanked like a piece of meat...<br>
<br>
<<set _midnight = setup.setNextDate($now, 1, 0, 30)>>
<<set _timeToMidnight = setup.secondsToDate($now,_midnight)>>
[<<moveTo "event_sex_club_onebar_9" "Continue..." _timeToMidnight>>]
</div>/*#
#desc: end of night one bar prison
#status: RELEASED 0.8.9.0
#ignore_spell: sün
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.one_bar.phone>>
<<addItem "smartphone">>
<</if>>
<<removeItem "handcuffs" true>>
<<deleteItem "handcuffs">>
<<removeItem "ball_gag_red" true>>
<<deleteItem "ball_gag_red">>
<<useClothSetPop 'sex_club'>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish") setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<div id="invframe" class="scrolltext">
Your night of on-display public fondling comes to an end with a final flurry. As the club reaches closing time there is a rush of patrons heading home, resulting in literally dozens of hands at a time fondling your sensitive flesh, some going quite far as they entertain themselves waiting for their turn in the changing room.<br>
<br>
By the time the last customers clear out your'e a quivering mess, pent-up excitement soaking the pillar of your one-bar prison, your thighs tingling from dozens of "good luck" kisses left behind on your legs<<if setup.checkItemTypeWorn("cage")>>, and, especially, your chastity <<if setup.isCage()>>cage<<else>>belt<</if>><</if>> after someone suggested that it would be a faux pas for a sub to leave without paying their respects to one of their own.<br>
<br>
<<=setup.getNpcName("npc_sex_club","formal")>> is the last to appear, standing proud after another successful night of supervising "Sün." <br>
<br>
"@@.npc_sex_club;Well done,@@" <<he npc_sex_club>> states with pride. "@@.npc_sex_club;You really put on quite the show, quite a lovely entrance statue, and a part performed the way only a real professional exhibition-slut could... I shall certainly remember you, should I be scheduling some sort of... special engagement but, for tonight, well... all things must come to an end, and the light of dawn fast approaches.@@" <<He npc_sex_club>> nods towards <<=setup.getNpcName("npc_guard","formal")>> and she sets about removing your restraints before lifting you off and setting you back down as if you were as light as a feather.<<if $scene.one_bar.phone>> She winks at you as she hands you back your phone.<</if>><br>
<br>
"@@.npc_guard;I scheduled a cab for you, so you'll be able to head straight home,@@" she states. You nod and get dressed before heading out, the cool air outside the club feeling even stranger compared to the many warm hands that had so recently been all over you.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
</div>/*#
#desc: approach foxgirl
#status: RELEASED 0.8.9.0
#ignore_spell: foxgirl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteMember $scene.sex_club_info 'bar'>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" "foxgirl">>
<div id="invframe" class="scrolltext">
You approach the foxgirl and she greets you with an animated and enthusiastic smile.<br>
<br>
"@@.generic_female1;Hi! Do you come here often? I bet you do, I mean, that outfit, gorgeous!@@"<br>
<br>
You respond by complimenting her outfit and she smiles wider, her ears and tail twitching in excitement. "@@.generic_female1;Oh, thanks! I saw it and just loved the colours and style... and latex just makes it!@@" She bites her lip in obvious excitement as she does a graceful twirl, the rubbery material shiny and tight as it catches the light, the short skirt of the flirty kimono allows both her ponytail and the long, fluffy fox-tail that swishes between her legs to whip around to brush past you as she spins.<br>
<br>
"@@.generic_female1;See, so fun!@@" She grins and takes a sip of her drink, teasing the straw around with her tongue as she looks at you. "@@.generic_female1;So... you complimented my outfit but... what do you think of my ears, hmm?@@"<br>
<br>
[<<moveTo "event_sex_club_fox_2" "They look great, and so realistic!" 120 "<<set $scene.ears=true>>">>]<br>
[<<moveTo "event_sex_club_fox_2" "They're fine, you really hadn't noticed." 120 "<<set $scene.ears=false>>">>]
</div>/*#
#desc: flirt with foxgirl
#status: RELEASED 0.8.9.0
#ignore_spell: foxgirl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" "foxgirl">>
<div id="invframe" class="scrolltext">
<<if $scene.ears>>
You compliment her on how lifelike her ears look and they wiggle, perking up even more than their already were as she grins. "@@.generic_female1;They don't just LOOK realistic, they ARE realistic! Yup, them and my tail,@@" she adds, bringing her tail in front of her to brush it with her hand. "@@.generic_female1;No more head-bands and tail plugs for this girl! <<if setup.checkItemTypeTag('headdress', ['ears'])>>Not to brag, I mean your ears are cute and all, but... well, mine are cute AND functional. <</if>>And, in addition to excellent hearing, well... my ears are just so fantastically sensitive in other ways... do you want to feel?@@"<br>
<br>
Her eyes twinkle and her cute dirty blonde ears twitch in invitation as she leans forward, smiling just enough to show off her pearly white teeth.<br>
<br>
[<<moveTo "event_sex_club_fox_3" "You'd love to play with her ears!" 120 "<<set $scene.ears=true>>">>]<br>
[<<moveTo "event_sex_club_fox_3" "Decline her offer." 120 "<<set $scene.ears=false>>">>]
<<else>>
You reply that you hadn't really noticed the foxgirl's ears. She pouts theatrically and you feel her earlier energy dissipate. "@@.generic_female1;Oh, well... it was still nice meeting you, I think I'm going to go check out the play area, see you around!@@"<br>
<br>
She bounces off, skipping lithely in her heels, her fluffy tail swaying behind her.<br>
<br>
<<include "sexClubLocations">>
<</if>>
</div>/*#
#desc: stroke foxgirl
#status: RELEASED 0.8.9.0
#ignore_spell: foxgirl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" "foxgirl">>
<div id="invframe" class="scrolltext">
<<if $scene.ears>>
You're excited by the foxgirl's offer and soon she's having you rub her ears between your fingers, purring in pleasure as she gives you tips. "@@.generic_female1;Oh that feels so good, don't just play with the tips, massage the base, mmmm...@@"<br>
<br>
Her ears are smaller, and furrier, than feet, but your same skills apply and she starts melting, turning around to give you a better angle as her tail begins to swish between the two of you as her hips sway in delight.<br>
<br>
You glance around to realise that the two of you have attracted a small audience. Your new friend notices as well, rubbing against you even more as she blows a kiss to the growing crowd. She bends forward, her butt grinding back against you as her tail swishes against your chest. Someone whistles in approval, and then an even bolder patron is holding out a fox-ear headband and a matching tail-plug to you in invitation as a cheer goes up at the possibility of two fox-girls putting on a show. The matching tail and plug are a more traditional orange compared to your feisty new friend's dirty blonde and your heart beats a little faster at the thought of joining her in foxy frolic.<br>
<br>
Phones are out and recording as the foxgirl continues rubbing against you as she looks back over her shoulder with an eager grin, her tail teasing against your cheek as she clearly eggs you on.<br>
<br>
[<<moveTo "event_sex_club_fox_4" "Go along with things. Being a foxy vixen sounds fun!" 300 "<<set $scene.tail=true>>">>]<br>
[<<moveTo "event_sex_club_fox_4" "Step back and let the all-natural foxgirl have the limelight." 120 "<<set $scene.tail=false>>">>]
<<else>>
You politely decline the offer to play with the foxgirl's ears and she shrugs. "@@.generic_female1;Oh, well... it was nice meeting you, I think I'm going to go check out the play area, see you around!@@"<br>
<br>
She bounces off, skipping lithely in her heels, her fluffy tail swaying behind her.<br>
<br>
<<include "sexClubLocations">>
<</if>>
</div>/*#
#desc: become foxgirl
#status: RELEASED 0.8.9.0
#ignore_spell: foxgirl
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.tail>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug")>>
<<set $scene.hasTail = setup.checkItemTypeTag('plug', ['tail'])>>
<<addItemSet "fox_girl">>
<<wearItemSet "fox_girl">>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_bar.png" "foxgirl">>
<div id="invframe" class="scrolltext">
<<if $scene.tail>>
You accept the offer and the crowd claps as the foxgirl helps straighten the ears on your head and <<if $scene.removePlug>>replace the plug in your rear<<else>>slide the plug into your rear<</if>>, spending a moment of steady teasing the thick plug past your sphincter before before your hungry hole pulls the sizable plug deep into position with an almost audible pop.<br>
<br>
<<if $scene.hasTail>>
"@@.generic_female1;Hehe, not that your other tail wasn't super cute... but this feels so much better, doesn't it? All full and fluffy, just heavy enough to remind you it's there with every swish...@@"
<<else>>
"@@.generic_female1;I remember that feeling, when the tail is finally where it belongs, and you feel that weight hanging and swishing behind you...@@"
<</if>>
She strokes your tail and you wiggle in excitement, the two of you putting on a playful show for your impromptu audience, grooming one another and doing a bit of dancing before taking a closing bow.<br>
<br>
"@@.generic_female1;You're fun!@@" The foxgirl states, her ears wiggling with what you now immediately recognise as excitement. "@@.generic_female1;I'm off to more adventure... enjoy your new accessories, who knows, maybe some day you'll decide to go all the way like me!@@"<br>
<br>
She winks and skips away, her fluffy tail swishing behind as she almost dances in her steep, sexy heels.<br>
<br>
The small crowd dissipates, leaving you standing at the bar with your new ears and tail.
<<else>>
You decide to take a step back, leaving the foxgirl as the centre of attention. She gives you a little wave goodbye, and then focuses her attention at her audience, playfully doing a little dance as her tail swishes and sways.<br>
<br>
You watch for a few minutes more before she ends up skipping off to the club's play area and the crowd disperses.
<</if>>
<br><br>
<<include "sexClubLocations">>
</div>/*#
#desc: run into lilith at sex club
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.play.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You walk towards <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> and, undistracted by the amateur efforts between her legs, <<=setup.getNpcName("generic_female2", "custom", "Lilith Longwood")>> is soaking things in, she notices you a moment later.<br>
<br>
She smiles and waves you over, tapping her "fan" on the head in a signal for them to quiet down. Their gagging struggles are replaced by a more gentle focus on sucking on <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> tip while the hands that you now notice are cuffed massage her balls.<br>
<br>
"@@.generic_female2;<<=$player.flags.porn.pornname>>? Lovely meeting you here. Makes all the sense, I suppose. This is the best place in town to take a load off between shoots, I so missed it while it was shuttered.@@"<br>
<br>
[<<moveTo "event_sex_club_lilith_2" "Ask what she's up to this evening?" 300>>]
</div>/*#
#desc: run into lilith at sex club
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> what she's doing in the club. "@@.generic_female2;Searching for talent, what else? I've got my lovely regulars, of course...@@" She squeezes her hands around both of her companions' waists to emphasize the point.<br>
<br>
"@@.generic_female2;But I'm always on the lookout for more, and <<=setup.getNpcName("npc_sex_club", "formal")>> is so generous to allow me to recruit from <<his npc_sex_club>> clientele. One never knows where the next star or scene inspiration might cum from, hmm? And what about you, here for business, or pleasure? Ignoring that our business IS pleasure...@@"<br>
<br>
[<<moveTo "event_sex_club_lilith_3_pleasure" "You're just here to relax and enjoy the club." 300>>]<br>
[<<moveTo "event_sex_club_lilith_3_business" "Ask if you can be next?" 300>>]
</div>/*#
#desc: ask to suck lilith at club
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You ask if you could take the spot between <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> legs when its current applicant has finished. She chuckles before replying. "@@.generic_female2;Now wouldn't that be a fun time! But, I'll have to decline. I'm here on business, after all, scoping out the talent pool — and I already know what you're capable of. I wouldn't say no to doing something again, though, I'm sure we'll run into one another for another shoot sometime.@@"<br>
<br>
[<<moveTo "event_sex_club_lilith_4" "Wish her luck with her search." 300>>]
</div>/*#
#desc: chat with lilith at the club
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You reply that you're just here to enjoy the club, and you and <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> spend a few more minutes chatting, the "applicant" softly sucking her off the whole time.<br>
<br>
[<<moveTo "event_sex_club_lilith_3_business" "Ask if you can be next?" 300>>]<br>
[<<moveTo "event_sex_club_lilith_4" "Wish her luck with her evening." 300>>]
</div>/*#
#desc: wish lilith luck
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You wish <<=setup.getNpcName("generic_female2", "custom", "Lilith")>>
<<if State.hasPlayed("event_sex_club_lilith_3_business")>>
luck in her continued search for talent. If there's any place fit for such a search, <<printShopName 'sex_club'>> has to be it. With nothing else to discuss, you bid her
<<else>>
a
<</if>>
good evening and step away from the couch, sneaking another look at her prospective co-star. Despite their enthusiasm, they don't seem any closer to successfully taking her on. While she is not quite <<his npc_cook>> size, you have a flashback to your "training" with <<=setup.getNpcName("npc_cook","first")>> as you conclude that <<=ps(setup.getNpcName("generic_female2", "custom", "Lilith"))>> search will continue for a while longer.<br>
<br>
<<if State.hasPlayed("event_sexclub_event_hr_discipline_3_dom") && !State.hasPlayed("event_sex_club_lilith_5")>>
[<<moveTo "event_sex_club_lilith_5" "Continue." 300>>]
<<else>>
<<include "sexClubLocations">>
<</if>>
</div>/*#
#desc: lilith brings up domme
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
Before you step out of earshot <<=setup.getNpcName("generic_female2", "custom", "Lilith")>> calls you back. "@@.generic_female2;Hold up, I just realised, seeing you here... I realise I saw you somewhere other than the studios. You did a show here, yes? You were the one who tamed that brat on stage, with the corporate woman, yeah?@@"<br>
<br>
Thinking back to your demonstration with glee, you confirm to her that it was indeed you.<br>
<br>
"@@.generic_female2;Screen AND stage! So much talent in such a cute package.@@" She chuckles. "@@.generic_female2;Tell you what. I've been thinking of taking a spin on the other side of the camera. Someone's still gotta be the domme, though, and I've just found my first choice. If you're up for it.@@"<br>
<br>
You thank her for the compliment and reply that you'll think about her offer.<br>
<br>
"@@.generic_female2;No pressure, just call me for a shoot as usual, I'm up for it whenever.@@"<br>
<br>
You return to the play area reinvigorated by her recognition.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: maid_mistress finds you fucking dog
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.cleaning.maid_mistress = 4>>
<<set $npc_landlord.flags.cleaning.maid_dog = 4>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning") setup.charImage("npc_maid","npc_maid_mistress")>>
<div id="invframe" class="scrolltext">
Whether through an inborn devilish streak... or that he has been trained to respond to such words Zeus only accelerates, his knot seeming to swell even larger as his balls slap against you and you release an un-suppressed groan.<br>
<br>
"@@.npc_maid_mistress;It sounds like something is wrong — hold on, I am coming in,@@"<br>
<br>
Your voice cracks as you try to call out "@@.pc;No! Stop!@@" You shout... just as the "Mistress" you have cleaned for previously walks in the door.<br>
<br>
She freezes in place, key in hand as the door swings slams shut behind her. Everything freezes for an instant, your eyes wide in horror before she raises her other hand... with her phone to snap a picture.<br>
<br>
"@@.npc_maid_mistress;My! To think something like this was happening next door... with my personal maid! What do you have to say for yourself?@@"<br>
<br>
The thick dog-cock still filling your ass makes it hard to compose and your response is garbled and nonsensical, cut off a moment later by her snapping another picture of you, squatting down to frame your drool-covered face with the dog behind.<br>
<br>
"@@.npc_maid_mistress;Look at you, struck dumb... no, I am never going to get an answer out of you until that beast is finished rutting — yes, that knot is locked in your ass very tight indeed.@@"<br>
<br>
You moan as she snaps another picture — presumably of the canine cock slamming away at you.<br>
<br>
You can feel that the beast is close, clearly unconcerned by the embarrassment of what is going on he keeps slamming into you with primal power. As you moan on the floor you hear the woman speak, but not to you, it sounds like she's on her phone? "@@.npc_maid_mistress;Yes, hello? I hate to bother you two but there is something of an incident going on in your flat — oh, no, nothing is damaged and there is nothing to be worried about but... you should hurry home as quickly as possible.@@"<br>
<br>
She hangs up just as Zeus dumps his massive load in your ass, his knot deflating and pulling free as you slump to the floor.<br>
<br>
[<<moveTo "event_maid_work_dog_4_2" "Try to stand up." 600>>]
</div>/*#
#desc: npc_maid_mistress waits for couple to come home
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning") setup.charImage("npc_maid","npc_maid_mistress")>>
<div id="invframe" class="scrolltext">
You try to push yourself up off the floor, but your arms and legs are like rubber, slow, and uncoordinated in their response as you feel dog cum leaking out of your ass.<br>
<br>
Paying you hardly any mind the woman takes a seat on the couch, the dog happily trotting over to place his head on her lap as she pets him gently.<br>
<br>
"@@.npc_maid_mistress;Do not just lay there!@@" She finally states, "@@.npc_maid_mistress;Crawl over and put those lips to work kissing my feet. The <<=$npc_maid_mistress.flags.dog_owner_last>>'s should be home soon and THEN we can discuss what has just happened.@@"<br>
<br>
You shudder submissively, unable to muster the will to resist her command... even as the humiliation burns within you.<br>
<br>
[<<moveTo "event_maid_work_dog_4_3" "Lick her feet." 600>>]
</div>/*#
#desc: npc_maid_mistress confronts dog-loving couple
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 12 'very' $EXPOSED>>
<<applyExperience 'submission' 18 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning") setup.charImage("npc_maid","npc_maid_mistress") setup.charImage("generic","npc_maid_couple")>>
<div id="invframe" class="scrolltext">
You've finished tongue-polishing one kitten-heeled shoe to the stern Mistress' satisfaction and are moving to the other when the door opens and the owners walk in. "@@.generic_male1;What is the problem is the maid—@@"<br>
<br>
You look back to see the <<man>> standing slack-jawed in shock, <<his>> wife having had just enough forethought to close the door before starting to stutter a response, "@@.generic_female1;<<=setup.getNpcName("npc_maid_mistress","other")>>! I, what are you—@@"<br>
<br>
"@@.npc_maid_mistress;Quiet,@@" the Mistress states; sitting imperiously petting the dog like some sort of super-villain. As always her cold commanding tone cuts far harsher than her old-fashioned exterior would imply possible. "@@.npc_maid_mistress;Sit, now. And you? I did not say you could stop.@@"<br>
<br>
You see the <<man>> almost drop to the floor where <<he>> stands before <<his>> wife grabs <<him>> by the arm and drags <<him>> over to sit down across from <<=setup.getNpcName("npc_maid_mistress","formal")>>. Even with the added witnesses you cannot control yourself and you turn back to resume tongue-cleaning her feet.<br>
<br>
"@@.npc_maid_mistress;Now, as to the reason I called you back.@@" You hear dual ring-tones go off and the couple fumbles for their phones, "@@.npc_maid_mistress;I just sent you a glimpse of what your maid was up to while you were out — I already knew her as a submissive <<if $fetish.sissy>>sissy<<else>>slut<</if>>, but I did not realise she was also a slutty bitch.@@"<br>
<br>
The <<man>> finally finds <<his>> voice, though <<his>> reply is stuttering and un-confident. "@@.generic_male1;We had no idea, I mean—@@"<br>
<br>
"@@.generic_female1;Oh, cool it <<if $options.fem>><<=$npc_maid_mistress.flags.dog_owner_male_fem>><<else>><<=$npc_maid_mistress.flags.dog_owner_male>><</if>> — she knows,@@" <<his>> wife replies, a sense of resignation in her voice, "@@.generic_female1;Don't you?@@"<br>
<br>
You continue to lick her feet, not even needing to look up to see the smile of satisfaction on <<=ps(setup.getNpcName("npc_maid_mistress","formal"))>> face. "@@.npc_maid_mistress;Know that there is no way an animal would copulate with a stranger unless it had been specifically trained? Know that this suddenly explains some of the sounds I have heard coming from your apartment late at night? These walls are quite thin, you know. Yes... I know indeed. In fact, I estimate that there is not just one submissive bitch in this room, but three.@@"<br>
<br>
Tense silence descends, the only sound that of Zeus' happy panting.<br>
<br>
"@@.npc_maid_mistress;You can get up now,@@" she orders, pulling her foot back to make it clear the command is directed at you.<br>
<br>
[<<moveTo "event_maid_work_dog_4_4" "Obediently rise." 600>>]
</div>/*#
#desc: npc_maid_mistress makes offer for you and couple
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = (1+.2*$npc_landlord.flags.cleaning.maid_dog)*$npc_landlord.flags.cleaning.base_pay>>
<<set $scene.pay *= 3>>
<<addCredits $scene.pay>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning") setup.charImage("npc_maid","npc_maid_mistress") setup.charImage("generic","npc_maid_couple")>>
<div id="invframe" class="scrolltext">
You rise to stand obediently next to <<=setup.getNpcName("npc_maid_mistress","formal")>>, feeling a bit like some sort of royal guard as she casually commands the room.<br>
<br>
"@@.generic_female1;What are you... what are you going to do to us?@@" The woman finally asks to break the silence.<br>
<br>
"@@.npc_maid_mistress;Do? Well, that is up to you. Your behaviour thus far shows a degree of... recklessness. I offer you order, control and in exchange, well... there is a certain club I attend that hosts a variety of stage shows. I have long had an idea for one myself, but I lacked the proper cast. The three of you, well... you would be just perfect.@@"<br>
<br>
Stunned silence once again descends on the room as <<=setup.getNpcName("npc_maid_mistress","formal")>> rises to her feet with an artificial smile. "@@.npc_maid_mistress;Well, the offer is made, I will give you some time to think it over. When your perverted lusts finally get the better of you — which it would appear they do often.@@" She pointedly glances at Zeus who, with the petting hand no longer keeping him placated has wandered across the room to attempt to jam his nose between the seated woman's legs. "@@.npc_maid_mistress;Well, when that happens, the three of you can just give me a ring and I will pop right over to give you the training you need. Ta-ta!@@"<br>
<br>
She leaves the room and you and the couple stare back and forth awkwardly.<br>
<br>
A minute passes as Zeus continues his enthusiastic attempt to lick between his owner's legs before she finally stands up, shoving a handful of credits at into your hand. "@@.generic_female1;Look, my <<if $options.fem>>wife<<else>>husband<</if>> and I, um... we need to talk. We'll speak again the next time you show up to clean the apartment, okay? But tonight... I think you should go.@@"<br>
<br>
You pocket the money and leave.<br>
<br>
<<printThought "What... what just happened? Is there something in the plumbing turning everyone in this building into perverts?">><br>
<br>
[<<moveTo "room_foyer" "Home" 900>>]
</div>/*#
#desc: declining to start training with maid_mistress and couple
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_dog","npc_dog_cleaning")>>
<div id="invframe" class="scrolltext">
The couple looks a little disappointed when you say you're just here to "clean" but a few minutes later and they are off to their show, with you alone in the apartment with the eagerly enthusiastic Zeus; the pet dog excitedly running around your legs and shoving his nose up under your skirt.<br>
<br>
<<printThought "I don't think I'll be getting any work done unless I attend to man's best friend first...">><br>
<br>
[<<moveTo "event_maid_work_dog_3" "Get on all fours like a bitch." 1800 "<<set $scene.style = 'anal'>>">>]<br>
[<<moveTo "event_maid_work_dog_3" "Get him off by hand." 1800 "<<set $scene.style = 'hand'>>">>]<br>
[<<moveTo "event_maid_work_dog_3" "Try to ignore him and just clean." 1800 "<<set $scene.style = 'resist'>>">>]
</div>/*#
#desc: start training with npc_maid_mistress and couple
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.cleaning.maid_dog = 5>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_maid","npc_maid_mistress") setup.charImage("generic","npc_maid_couple")>>
<div id="invframe" class="scrolltext">
You reply that you are ready to join the couple in accepting <<=ps(setup.getNpcName("npc_maid_mistress","formal"))>> offer of training.<br>
<br>
The two of them appear both excited and nervous, glancing back and forth as the woman pulls out her phone and sends a text. "@@.generic_female1;She's... she's on her way.@@" She whispers softly, her voice nervous, her <<if $options.fem>>wife<<else>>husband<</if>> flush... and your heart pounding with excitement.<br>
<br>
But a minute or two later there is a knock on the door and <<=setup.getNpcName("npc_maid_mistress","formal")>> swishes in, dropping a large duffel in the middle of the floor and locking the door, setting her large purse next to the entrance. As if recognising the shift in power Zeus quietly walks over to sit next to <<=ps(setup.getNpcName("npc_maid_mistress","formal"))>> feet.<br>
<br>
"@@.npc_maid_mistress;Good evening my lovelies — I was so glad to get your text. Now, let us waste no time. You will find everything you need to begin training — get naked, and then get changed.@@"<br>
<br>
The woman once again taking the lead she unzips the duffel to reveal three matching leather bitchsuits. Standing with arms crossed in her paradoxical throwback housewife dress <<=setup.getNpcName("npc_maid_mistress","formal")>> waits as the three of you dutifully strip naked and begin helping one another into the restrictive outfits.<br>
<br>
Once again your female counterpart takes the lead, standing unashamed in her nudity as she tightly buckles you and her <<if $options.fem>>wife<<else>>husband<</if>> into the restrictive leather outfits before running into the problem that it is quite impossible to put a bitchsuit on oneself...<br>
<br>
[<<moveTo "event_maid_work_dog_5_2" "Continue." 300>>]
</div>/*#
#desc: start training with npc_maid_mistress and couple
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'puppy_black_copy'>>
<<wearItemSet 'puppy_black_copy'>>
<<if setup.checkItemTypeWorn("choker")>>
<<addItem 'princess_collar'>>
<<wearItem 'princess_collar' true>>
<<else>>
<<addItem 'princess_collar_wide'>>
<<wearItem 'princess_collar_wide' true>>
<</if>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'submission' 18 'terrible' $SEEN_STRANGER>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_maid","npc_maid_mistress") setup.charImage("generic","npc_maid_couple_bitch")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_maid_mistress","formal")>> strides over with a smile and helps the woman into a bitchsuit of her own as you and her <<if $options.fem>>wife<<else>>husband<</if>> nervously watch on.<br>
<br>
"@@.npc_maid_mistress;It would seem we have found this pack's alpha bitch,@@" she states as she pulls the final buckle tight. "@@.npc_maid_mistress;That means you get this,@@" She adds, adding a strap-on harness — and a large knotted dog cock, to dangle between the woman's restrained legs. She finishes off by buckling a thick dog collar around the woman's neck that labels her as Hera. "@@.npc_maid_mistress;Don't worry, you will be using that thing later. But first, some ground rules.@@"<br>
<br>
<<=setup.getNpcName("npc_maid_mistress","formal")>> standing over you emphasises just how helpless you and the couple are and she directs you into a row as she paces in front of you like a drill sergeant.<br>
<br>
"@@.npc_maid_mistress;So, the three of you may be dog-fucking bitches in heat, but you lack control, and I am going to mold you into a pack. For this purpose Hera is in charge — for too long the three of you have submitted to an unthinking, improperly trained beast. Hera will be my girl on the ground to keep the rest of you in line. Of course, the flipside is that she will bear partial blame for all failures of her pack. Now, to commence training, we are going to start with the basic commands — sit, stay, heel, fetch, roll over and submit. That last one I imagine should come quite easily to all three of you given how easily you surrendered to Zeus here.@@"<br>
<br>
[<<moveTo "event_maid_work_dog_5_3" "Start training." 1800>>]
</div>/*#
#desc: training with npc_maid_mistress and couple
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 5 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 18 'normal' $SEEN_STRANGER>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'very' $SEEN_STRANGER>>
<<applyFatigue 100>>
<<playerOrgasm>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_maid","npc_maid_mistress") setup.charImage("generic","npc_maid_couple_bitch")>>
<div id="invframe" class="scrolltext">
For all her soft, modest exterior <<=setup.getNpcName("npc_maid_mistress","formal")>> is near brutal with her training, using a sharp crop to smack the offending bare bottom whenever any of the three of you make the slightest mistake. In the case of <<if $options.fem>>Hera's wife<<else>>the husband<</if>> — or "Ixion" to your "Princess" — a shot to <<his>> exposed balls... though <<his>> cock remains hard throughout. For every two crops on you or Ixion, Hera earns a "bonus" hit herself... which soon results in her developing a bit of a cruel streak, growling through her gag and nipping at whoever has screwed up... even as her aroused juices flow down her dangling dog-cock to drip onto the carpet.<br>
<br>
After running the three of you almost ragged crawling around on knees and elbows <<=setup.getNpcName("npc_maid_mistress","formal")>> calls for you to "submit" — three red bums shooting up in the air almost instantly.<br>
<br>
"@@.npc_maid_mistress;Good, good, the three of you are learning your parts quite well... and now for a little reward... well, maybe not so little.@@"<br>
<br>
Your initial "reward" takes the form of Hera fucking both you and Ixion — first violating your throats, and then circling around to mount you like the submissive bitches you are, your saliva and her enthusiastic juices providing plenty of lube for her to slam the knot all the way into both of you until you have each leaked onto the carpet... and been ordered to "clean up" for the other.<br>
<br>
Ravaged from both ends you and Ixion get to sit back and watch as Hera gets her final reward — to be mounted and fucked by Zeus himself, the dog eagerly zooming across the room to fuck his helpless, horny Mistress the moment <<=setup.getNpcName("npc_maid_mistress","formal")>> gives the signal.<br>
<br>
Only after Zeus has had his satisfaction — and you and Ixion have licked both Zeus and Hera clean of every last trace of his thick, strong cum, does <<=setup.getNpcName("npc_maid_mistress","formal")>> call an end to the training.<br>
<br>
"@@.npc_maid_mistress;Very good. The three of you have picked up the basics quickly. Now comes the matter of properly preparing you for the stage...@@"<br>
<br>
The thought of performing your dog act in public sends a shiver down your spine as you wait your turn to be helped out of the bitchsuit and sent on your way.<br>
<br>
[<<moveTo "room_foyer" "Home" 900 "<<removeItem 'bitchsuit_black_copy' true>><<deleteItem 'bitchsuit_black_copy'>><<removeItem 'puppy_hood_black_copy' true>><<deleteItem 'puppy_hood_black_copy'>><<if setup.isItemEquipped('princess_collar')>><<removeItem 'princess_collar' true>><<deleteItem 'princess_collar'>><<else>><<removeItem 'princess_collar_wide' true>><<deleteItem 'princess_collar_wide'>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: 2nd training with npc_maid_mistress and couple
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "An apartment.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'puppy_black_copy'>>
<<wearItemSet 'puppy_black_copy'>>
<<if setup.checkItemTypeWorn("choker")>>
<<addItem 'princess_collar'>>
<<wearItem 'princess_collar' true>>
<<else>>
<<addItem 'princess_collar_wide'>>
<<wearItem 'princess_collar_wide' true>>
<</if>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'submission' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_STRANGER>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 10 'very' $SEEN_STRANGER>>
<<set $scene.pay = (1+.2*$npc_landlord.flags.cleaning.maid_dog)*$npc_landlord.flags.cleaning.base_pay>>
<<set $scene.pay *= 4>>
<<addCredits $scene.pay>>
<<if $now.getUTCDay() < 4>>
<<set $scene.date = setup.getNextDayOfWeek($now, 1, 19, 30, false)>>
<<else>>
<<set $scene.date = setup.getNextDayOfWeek($now, 1, 19, 30, false)>>
<<set $scene.date = setup.setNextDate($scene.date, 7, 19, 30)>>
<</if>>
<<set $npc_landlord.flags.cleaning.maid_dog = 6>>
<<addTaskById 'task_maid_mistress_dog' $scene.date>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/apartment.png" setup.charImage("npc_maid","npc_maid_mistress") setup.charImage("generic","npc_maid_couple_bitch")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_maid_mistress","formal")>> wastes no time in appearing and getting you, Ixion and Hera back into your bitchsuits. <<=setup.getNpcName("npc_maid_mistress","formal")>> and Hera are even crueller taskmasters this time, the three of you running, jumping, rolling and practically dancing on your padded knees and elbows — with any errors in movement or timing punished by a disapproving yip from your alpha and a sharp blow from the buggy whip.<br>
<br>
By the time you have earned your "reward" you are almost too exhausted to appreciate it, but you and Ixion submit obediently as Hera fucks you and Zeus fucks his<<if $options.fem>> "Mistress" <<else>> "Master" <</if>>until <<if $options.fem>>Ixion<<else>>the man<</if>> is splayed out on the floor in a pool of cum.<br>
<br>
"@@.npc_maid_mistress;So,@@" <<=setup.getNpcName("npc_maid_mistress","formal")>> announces as you and Ixion lay exhausted with Hera and Zeus sitting at attention on either side of the true leader of the pack. "@@.npc_maid_mistress;Your movements are satisfactory, but there is a certain passion that you need before you can perform in public. Monday the <<=$scene.date.getUTCDate()>> will be perfect for you three to make your debut — meet me at <<printShopName 'sex_club'>> at <<if $options.militaryTime>>19:30<<else>>seven thirty pm<</if>> so that we have time to get ready.@@" She grins as you realise that, with the three of you still in your bitchsuits, there is literally nothing you can do to resist her until she decides to free you.
<<if !setup.checkItemTypeWorn("cage")>>
"@@.npc_maid_mistress;Princess is a natural born submissive<<if $fetish.sissy>> sissy<</if>>, but you other two... I am all for marital bliss but some temporary... or maybe not so temporary, adjustments need to be made if you are to perform to your full potential.@@"
<<else>>
"@@.npc_maid_mistress;Princess is a natural born submissive<<if $fetish.sissy>> sissy<</if>> — and locked up to boot, but you other two... I am all for marital bliss but some temporary... or maybe not so temporary, adjustments need to be made if you are to perform to your full potential.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_maid_mistress","formal")>> commands Hera to fetch her purse, the "alpha bitch" obeying without hesitation to place the large bag in front of her Mistress in exchange for a head pat and a "@@.npc_maid_mistress;Good girl.@@"<br>
<br>
From the cavernous purse <<=setup.getNpcName("npc_maid_mistress","formal")>> pulls out two chastity devices —<<if $options.fem>> a matching "couple's set" <<else>> "his and hers," <</if>>as it were. Hera submits obediently, the steel waist band and shield; along with the rubber-coated anal wire that curves between her butt-cheeks, securing her completely.<br>
<br>
You note a flicker of fear in Ixion's eyes, but <<he>> submits to <<his>> wife and obeys <<=ps(setup.getNpcName("npc_maid_mistress","formal"))>> command to "roll over" where she has you lick <<him>> clean before locking <<him>> away in a sleek cage that, unlike <<his>> wife, leaves <<his>> rear exposed.<br>
<br>
"@@.npc_maid_mistress;Alright, my pets, the chastity on its own should serve to help Hera embody her bitchiest self, but Ixion needs some additional assistance.@@" Ixion shifts nervously, seeming to try to adjust to <<his>> new cage as <<=setup.getNpcName("npc_maid_mistress","formal")>> looks at Hera to relay instructions. "@@.npc_maid_mistress;Every night I want you to put Ixion into <<his>> bitchsuit and run <<him>> through a practice session — once that is complete you are to equip yourself with your strap-on and join with Zeus to take your <<if $options.fem>>wife<<else>>husband<</if>> from both ends. You should switch off night to night — and make sure <<he>> licks clean any of Zeus's offering that drips onto the floor. If you judge <<his>> overall performance to have been good, you may then release <<him>> so that <<he>> may help you into your own suit for some additional practice. If <<he>> has been bad, however... <<he>> should remain dressed until the morning — either sleeping at the foot of your bed, or cuddle next to you at your discretion.@@"<br>
<br>
Hera's eyes have been getting steadily brighter as the instructions have been given... while Ixion has seemed to submissively shrink... well, everywhere except within <<his>> cage which looks nigh ready to explode.<br>
<br>
Instructions given <<=setup.getNpcName("npc_maid_mistress","formal")>> helps the three of you out of your outfits... or, rather, the two of you, since, still wearing the collar and with a wide grin on her face Hera decides that Ixion would be better off "practicing" spending a night restrained.<br>
<br>
Slipping back into your maid outfit you glance back at the perverted, but obviously happy couple and follow <<=setup.getNpcName("npc_maid_mistress","formal")>> out into the hallway.<br>
<br>
"@@.npc_maid_mistress;Oh, one final thing,@@" she states as you are about to head for the elevator. "@@.npc_maid_mistress;With the training I believe you have been missing out on the cleaning, I would not want you to be short on money come the end of the month so... here, that should square things up.@@" She hands you a stack of credits that you gratefully accept before heading home.<br>
<br>
[<<moveTo "room_foyer" "Home" 900 "<<removeItemSet 'puppy_black_copy'>><<deleteItemSet 'puppy_black_copy'>><<if setup.isItemEquipped('princess_collar')>><<removeItem 'princess_collar' true>><<deleteItem 'princess_collar'>><<else>><<removeItem 'princess_collar_wide' true>><<deleteItem 'princess_collar_wide'>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: failed to show up for maid dog show
#status: RELEASED 0.8.5.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<deleteTask 'task_maid_mistress_dog'>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 19, 30, 0, false)>>
<<addTaskById 'task_maid_mistress_dog' _nextDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from a restricted number. <<=setup.getNpcName("npc_maid_mistress","formal")>> is on the other end, her voice seething with artificial niceness. "@@.npc_maid_mistress;I would call you a bitch for standing us up, but that would be an undeserved compliment. Instead I will merely note that you have failed all three of us and we are all quite disappointed. On the upside Ixion will be seeing another week of training... I will speak to <<=setup.getNpcName("npc_sex_club","formal")>> about rescheduling, but next Monday, be here!@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: meet npc_maid_mistress for dog show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Around Back of <<printShopName 'sex_club'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/back_alley.png" setup.charImage("npc_maid","npc_maid_mistress_club") setup.charImage("generic","npc_maid_couple")>>
<div id="invframe" class="scrolltext">
You circle around to the back of the club where <<=setup.getNpcName("npc_maid_mistress","formal")>> greets you and the couple with a smile.<br>
<br>
There is something... different about Hera and Ixion — the former seeming to stand a little taller and both of them having a bit of a healthy glow about them, looking slightly more toned than when you first met the pair.<br>
<br>
"@@.npc_maid_mistress;Lovely, the pack is assembled.@@" <<=setup.getNpcName("npc_maid_mistress","formal")>> states with a grin. "@@.npc_maid_mistress;Come — we need to get the three of you clean, clothed and ready for your big debut!@@"<br>
<br>
<<=setup.getNpcName("npc_maid_mistress","formal")>> leads the way with Hera right behind as you and Ixion follow dutifully into the back door of the building.<br>
<br>
[<<moveTo "event_maid_work_dog_show_2" "Follow." 300>>]
</div>/*#
#desc: get cleaned for dog show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'submission' 18 'little' $SEEN_FRIEND>>
<<applyExperience 'bondage' 15 'very' $SEEN_FRIEND>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $fetish.drugs>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'very' $SEEN_FRIEND>>
<<setTmpEffect 'drug_pacification'>>
<</if>>
<<include "cleanPlayer">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_back.png" setup.charImage("npc_maid","npc_maid_mistress_club") setup.charImage("generic","npc_maid_couple_naked")>>
<div id="invframe" class="scrolltext">
The back of <<printShopName 'sex_club'>> turns out to be a storage area... with a tiled shower drawing the most attention due to the padded wrist cuffs hanging from the ceiling from chains, with a matching pair about a metre apart anchored to the floor with a dildo-topped rod rising from the middle.<br>
<br>
"@@.npc_maid_mistress;Strip,@@" <<=setup.getNpcName("npc_maid_mistress","formal")>> orders and the three of you hurry to remove your clothing. "@@.npc_maid_mistress;Alright, Princess,@@" <<=setup.getNpcName("npc_maid_mistress","formal")>> commands as your near daily practice has you slipping out of your clothes faster than either of the couple. Ixion stands nervously in nothing but <<his>> chastity cage as Hera assists in cuffing you in place before
<<if $scene.removePlug>>
removing your plug and
<<elseif setup.checkItemTypeTag('plug', ['hollow'])>>
aligning things with your hollow plug and
<</if>>
raising the dildo up until you are rooted in place with it thrust deep in your ass.<br>
<br>
A motor pulls your wrist chains up a few centimetres, leaving you spread wide and helplessly rooted in place. A mask is brought to your face, a large pecker gag filling your mouth and your hair carefully pulled out of the way. "@@.npc_maid_mistress;Would not wish to harm this pretty face.@@" She states.
<<if $fetish.drugs>>
You moan as a tube connected to the front of your mask flowing with pink liquid that you are helpless to resist swallowing.<br>
<br>
"@@.npc_maid_mistress;A little something extra to help with nerves.@@" She states with a smile as a soft pink cloud buffers your thoughts and you relax into your restraints.
<</if>>
<br><br>
Hera and <<=setup.getNpcName("npc_maid_mistress","formal")>> step back as you are sprayed down — hot water scouring all of your exposed flesh as additional liquid is pumped up into your rear. The cleansing fast and brutal you are rinsed, scrubbed and rinsed again before the water drains away and you are let down to stagger out of the shower.<br>
<br>
"@@.npc_maid_mistress;Catsuit first, then bitchsuit,@@" <<=setup.getNpcName("npc_maid_mistress","formal")>> explains as you look at the three outfits laid out for you — the collar resting atop each leaving no question as to whose is whose.<br>
<br>
[<<moveTo "event_maid_work_dog_show_3" "Start getting dressed." 600>>]
</div>/*#
#desc: changed for dog show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'puppy_black_copy'>>
<<wearItemSet 'puppy_black_copy'>>
<<if setup.checkItemTypeWorn("choker")>>
<<addItem 'princess_collar'>>
<<wearItem 'princess_collar' true>>
<<else>>
<<addItem 'princess_collar_wide'>>
<<wearItem 'princess_collar_wide' true>>
<</if>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('princess_collar')>>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
<<addItem 'puppy_anal_hook'>>
<<wearItem 'puppy_anal_hook' true>>
<<else>>
<<addItem 'puppy_anal_hook_hollow'>>
<<wearItem 'puppy_anal_hook_hollow' true>>
<</if>>
<<applyExperience 'bondage' 18 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_back.png" setup.charImage("npc_maid","npc_maid_mistress_club") "TODOfuturemaidbitchsuit">>
<div id="invframe" class="scrolltext">
You slip into the catsuit as first Ixion, and then finally Hera submit to the shower, the three of you shivering slightly before Hera helps you and her <<if $options.fem>>wife<<else>>husband<</if>> into your respective bitchsuits before submitting to the same, the three of you sitting patiently as she add collars and arranges them to show off your names below your hooded faces and gag-spread lips.<br>
<br>
"@@.npc_maid_mistress;Oh you three look simply lovely!@@" <<=setup.getNpcName("npc_maid_mistress","formal")>> states with a smile... "@@.npc_maid_mistress;But there is one final special piece to make sure you look your proud best for your debut!@@"<br>
<br>
She opens a case you had not previously noticed, pulling out a silicone plug attached to a realistic looking puppy tail... and also a short right-angled rod ending in a metal ring.<br>
<br>
You are curious what is going on as she chooses you as a "demo." <br>
<br>
Though stiff, the plug is smooth and, with a bit of lube, slides easily into your hole. She twists things so that the tail sticks up happily, and then clips something to the back of your hood, and then to the plug. A tightening strap forces your head back as what you now realise is a hollow anal hook digs deeper, your entire body becoming taut as she does not stop until you are forced to face directly forward.<br>
<br>
"@@.npc_maid_mistress;Your turn, Ixion,@@" she says with a smile, the <<man>> dutifully submitting to be pulled into the same stringent position as yourself.<br>
<br>
The two of you sit proud and obedient — as if your restraints allows for any different, drooling and leaking from both ends as she turns to Hera.<br>
<br>
[<<moveTo "event_maid_work_dog_show_4" "Watch the alpha bitch get hitched." 600>>]
</div>/*#
#desc: Hera equipped for dog show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.cleaning.maid_dog = 7>>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<<include "checkCeoInviteEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_back.png" setup.charImage("npc_maid","npc_maid_mistress_club") setup.charImage("generic","npc_maid_couple_bitch")>>
<div id="invframe" class="scrolltext">
Whereas her <<if $options.fem>>wife<<else>>husband<</if>> had merely dutifully submitted to the anal hook Hera appears almost... eager? It takes you a moment to remember her chastity situation — locked out from accessing either of her lower holes you can imagine she is eager for any stimulation — compared to her <<if $options.fem>>wife<<else>>husband<</if>> who has been bred at least once an evening.<br>
<br>
Kneeling down to remove the chastity belt reveals that Hera is literally dripping, the inner shield of the cage holding a small puddle as its removal has her trickling onto the floor.<br>
<br>
"@@.npc_maid_mistress;Look at you — a horny, wet alpha bitch in heat... only, well, I am afraid I have some bad news for you. You see your oh so loving <<if $options.fem>>wife<<else>>husband<</if>> well... it turns out <<hes>> a bit of a snitch.@@"<br>
<br>
Hera freezes, her excited expression turning to one of fear as <<=setup.getNpcName("npc_maid_mistress","formal")>> slowly pulls out her phone, flicking through what looks to be a short album as Hera's head dips in shame.<br>
<br>
"@@.npc_maid_mistress;Trying to get off by shoving an electric toothbrush up your ass... I almost admire the ingenuity, but such disobedience. Tsk, tsk@@" she shakes her head and you wonder what Hera would say for herself if she was not securely gagged. "@@.npc_maid_mistress;Fortunately your misbehaviour appears to have fallen quite short of a disruptive climax... and some would say that the torturous edging would be punishment enough.@@"<br>
<br>
Hera looks up in hope but <<=ps(setup.getNpcName("npc_maid_mistress","formal"))>> smile only spreads wider, crueller. "@@.npc_maid_mistress;Oh, do not worry, I would not be so neglectful as to fail to address such a lapse in obedience. You should just be grateful that you had such a loving <<if $options.fem>>wife<<else>>husband<</if>> there to report your failure. Why, imagine the harm that could have come to you had I been unable to address this matter.@@"<br>
<br>
A soft whine escapes Hera's gag along with a long trail of drool. Reaching into her case once more <<=setup.getNpcName("npc_maid_mistress","formal")>> pulls forth a far more elaborate device — a chastity belt not unlike what Hera had been wearing, but with a hollow tail-plug built into the rear wire... and a knotted canine cock on the inside of the front shield.<br>
<br>
Hera looks upon the device with a mix of fearful apprehension... and lusty excitement. "@@.npc_maid_mistress;You recognise this fellow, don't you? What with how many times you've used its twin to train your <<if $options.fem>>wife<<else>>husband<</if>>... how many nights have you laid awake wishing to feel it inside of you? Desperate to be free of your belt so that you could feel your friend Zeus breeding you in either of your bitch-holes...@@"<br>
<br>
Hera is on another plane, moaning through her gag as the large knot slides into her, gasping softly as the belt is pulled tight, filled fore and aft and then her head wrenched back by the anal hook strap to match your and Ixion's positions.<br>
<br>
<<=setup.getNpcName("npc_maid_mistress","formal")>> grins down, clipping a leash to the front of Hera's collar with a smile. "@@.npc_maid_mistress;There, I can see it in your eyes. For a short while there you had mistakenly thought yourself the ALPHA bitch, but you have accepted the truth — though you remain a lust slut in heat... you are now perfect as MY alpha BITCH.@@"<br>
<br>
Hera shudders, and glances for a moment at her <<if $options.fem>>wife<<else>>husband<</if>>, who smiles back around <<his>> gag in pride.<br>
<br>
All three of you leashed you fall in behind <<=setup.getNpcName("npc_maid_mistress","formal")>>.<br>
<br>
"@@.npc_maid_mistress;Come, we must get into position for our performance. It is almost time.@@"<br>
<br>
[<<moveTo "event_maid_work_dog_show_5" "The show is about to begin..." 300>>]
</div>/*#
#desc: dog show
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_maid","npc_maid_mistress_club") setup.charImage("generic","npc_maid_couple_bitch") setup.charImage("npc_dog","npc_dog_direwolf")>>
<div id="invframe" class="scrolltext">
You, Ixion and Hera prance back and forth across the stage, the added challenge of your enforced posture somehow fading away, even as your every movement causes your hollow anal hooks to shift and tease.<br>
<br>
Hera, in particular moves like a woman possessed and you fantasise about how it must feel for her to be filled, knotted and plugged after enduring days of complete denial...<br>
<br>
In contrast to Hera's bold, crisp movements Ixion acts the part of, well... a bitch's bitch, somehow infusing <<his>> every move with submissive lust... not to mention constantly leaking drops of arousal from <<his>> chastity cage.<br>
<br>
Breathless from the combination of the awkward posture and large gag you are grateful when you reach the end of your routine — you, Ixion and Hera lining up at the front of the stage and bringing your faces to the ground in unison; raising your asses high in the "submit" position as you bow to the audience.<br>
<br>
The crowd starts to cheer, and then breaks out into a roar in response to something happening behind you. Curiosity taking charge you turn just enough to look behind... where the largest dog you have ever seen is padding across the stage.<br>
<br>
<<printThought "No, that isn't a dog... it's some sort of primal beast from another age...">><br>
<br>
With a pointed nose and hungry eyes the creature does look more wolf than dog... well, dire wolf. In your elbows and knees bound position you could probably crawl under its belly without even brushing fur and, with <<=setup.getNpcName("npc_sex_club","formal")>> loosely holding its leash, it stalks forward and then sniffs and licks Ixion's rear...<br>
<br>
You hold your breath, wondering what its large, rough tongue would feel like lapping against your tender skin as it gives Ixion's balls and bum an efficient tongue-bath that has <<him>> moaning and drooling through <<his>> gag.<br>
<br>
You do not have long to wonder as you turn out to be next, the monster's "inspection" of you making you groan with want, eyelids flickering as you drool through your gag, feeling desperate for more as it moves on to Hera...<br>
<br>
"@@.npc_sex_club;Well, well, well. I do not think <<=$npc_sex_club.flags.dogname>> has ever been faced with such a difficult choice. Why don't you help him out, let's watch these lovely bitches make a final showing to demonstrate who deserves to be bred...@@"<br>
<br>
<<printThought "Oh goddess... he's the size of a small horse! Would I even survive being knotted by him?">><br>
<br>
It looks like you get to make your "case" first and you have but a moment to make your decision...<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
[<<moveTo "event_maid_work_dog_show_6" "Give it your all, you NEED to feel his dire wolf cock filling your ass..." 300 "<<set $scene.win=true>>">>]<br>
<<else>>
[@@.link_locked;No way can my ass handle something that size! I'd split in half!@@]
<</if>>
[<<moveTo "event_maid_work_dog_show_6" "He's too scary, hold back so that Ixion or Hera can have him." 300 "<<set $scene.win=false>>">>]
</div>/*#
#desc: dog show - perform for wolf
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.win>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_maid","npc_maid_mistress_club") setup.charImage("generic","npc_maid_couple_bitch") setup.charImage("npc_dog","npc_dog_direwolf")>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
The hardest part of your performance is not just freezing in place to stare at <<=$npc_sex_club.flags.dogname>>'s big, beautiful canine cock. Your prance, you strut, you show off your needy hole — first to the audience, and then shifting all of your attention to <<=$npc_sex_club.flags.dogname>> himself, crawling in figure eights under him as you feel his <<getWordPenis true>> drag across your back.<br>
<br>
The crowd near cheers the house down and you figure you have it in the bag for sure... until you recall the crazed look in Hera's eyes. After what she's been through it wouldn't be safe to underestimate what she might be willing to do finally get fucked...<br>
<br>
Ixion is next, whether resigned in the face of your performance, or out of pure submission, <<he>> gives a modest effort that more emphasizes <<his>> submissive concession and acceptance of <<his>> position at the very bottom of the pack's hierarchy. <<He>> is rewarded with polite applause as all eyes turn towards Hera.<br>
<br>
For a moment you think that even she doesn't know what she is going to do. You can't help thinking of the large canine dildo locked and knotted inside her cunt — surely she yearns to feel its flesh ideal finishing the double penetration. To your surprise, however you watch what looks like a switch flip in her head. Instead of starting a lusty routine she merely bows — first to <<=$npc_sex_club.flags.dogname>>, then to <<=setup.getNpcName("npc_maid_mistress","formal")>>, the crowd... and, finally, to you.<br>
<br>
It takes you a moment to realise what's going on — this is her final penance, she is showing her leadership, proving her place as "alpha bitch." Not by tyranny, but by prioritising the pack and making sure that those in her care are attended to first.<br>
<br>
Catching her eye for a moment you try to infuse your glance with as much gratitude as you can muster... and then the contest is over. There is no need to tally the scores or review the tape, you have won, Ixion and Hera moving to the side of the cage to watch as you take centre stage and <<=$npc_sex_club.flags.dogname>> strides towards you to make you his own...<br>
<br>
[<<moveTo "event_maid_work_dog_show_7" "Get bred, bitch." 900>>]
<<else>>
Even if you weren't purposefully sand-bagging the fact that you can't help but keep glancing fearfully at the stalking wolf... and the massive canine cock hanging beneath it, would ensure that your performance was less than impressive. Despite your tepid effort the crowd is still running hot and you get enough cheers that you are momentarily nervous that your poor ass may yet meet the beast.<br>
<br>
Ixion goes second and, though <<he>> looks a bit more tired than you are, <<he>> makes an obvious effort to impress the crowd with <<his>> prancing, jumping and prostrating. You calm down slightly when <<his>> cheers are definitely louder than your own and all attention turns towards Hera...<br>
<br>
Taking a different tact than either you or Ixion, Hera does not play to the crowd at all, instead directing her entire focus at <<=$npc_sex_club.flags.dogname>> himself.<br>
<br>
Crawling on all fours she rubs up against the beast in between prostrating herself, submissively grooming its fur, presenting her rear, and even taking a few tentative licks of its dripping cock, the look on her face as she swallows his pre-cum that of someone who has transcended to a new plane of bitch bliss.<br>
<br>
Though they may have not been the technical target the crowd roars... not that <<=$npc_sex_club.flags.dogname>> seems interested in waiting for their input as he moves on Hera and her eagerly raised rear...<br>
<br>
[<<moveTo "event_maid_work_dog_show_7" "Watch the encore..." 900>>]
<</if>>
</div>/*#
#desc: dog show fucked
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.win>>
<<set $npc_maid_mistress.flags.dogsex = true>>
<<applyExperience 'bestiality' 16 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' 20 'unbelievable' $EXPOSED>>
<<applyExperience 'humiliation' 20 'unbelievable' $EXPOSED>>
<<playerOrgasm>>
<<else>>
<<set $npc_maid_mistress.flags.dogsub = true>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_maid","npc_maid_mistress_club") setup.charImage("generic","npc_maid_couple_bitch") setup.charImage("npc_dog","npc_dog_direwolf")>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
You take your place centre-stage, positioning yourself facing to the side to give the audience the best vantage point of what is about to come.<br>
<br>
You drop your face to the floor and raise your ass in the "submit" posture as you brace for what is to come.
<<if setup.getTotalValue("anal") > 15>>
Between <<=$npc_sex_club.flags.dogname>>'s massive cock and the hollow plug already spreading your ass even your size queen skills are stretched to the ecstatic limit.
<<else>>
<<=$npc_sex_club.flags.dogname>> would be huge on his own, combined with the hollow plug that was already gaping your ass.
<</if>>
You hold back from the climax as the beast inserts, but the feel of his knot popping into place as he finishes re-arranging your organs is just too much. You cum, hard... and then keep cumming as he starts to fuck you; his power such that your entire body lifts off the ground as he thrusts, throwing his head back in a howl that drowns out the cheering crowd as you shudder in ecstasy.<br>
<br>
<<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
Literally pounded into the floor you slip and the cock pops free... only for a shout to go up through the crowd<br>
"@@.generic_male1;BREED!, BREED!, BREED!@@"<br>
"@@.generic_female1;BREED!, BREED!, BREED!@@"<br>
<br>
Before you can even attempt to find your footing on the cum-slick stage <<=$npc_sex_club.flags.dogname>>'s knot is pounding into your dripping cunt, injecting its inhuman load directly into your womb as the crowd cheers and your "partner" howls.<br>
<br>
<</if>>
Only after the echoes of the long howl begins to fade does <<=$npc_sex_club.flags.dogname>> cum, a massive, fire-hose like release that almost shoots you off like a pop-gun, his cock continuing to shower you with <<getWordCum>> after it pops free and Hera and Ixion rush over to take their portion, licking you clean as the beast lopes off and the crowd cheers.<br>
<br>
<<printThought "Holy shit...">><br>
<br>
<<if setup.getTotalValue("cum") > 5>>
[<<moveTo "event_maid_work_dog_show_8" "Get up and join in with licking your fill of the thick spooge." 300 "<<set $scene.lick=true>>">>]<br>
<<else>>
[@@.link_locked;Laying in a pool of <<getWordCum>> is bad enough, you aren't going to lick it up!@@]
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;Even after all this you can't pass up the prize of <<getWordCum>>!@@]
<<else>>
[<<moveTo "event_maid_work_dog_show_8" "Just lay there." 300 "<<set $scene.lick=false>>">>]<br>
<</if>>
<<else>>
You sit next to Ixion at <<=ps(setup.getNpcName("npc_maid_mistress","formal"))>> feet and watch in awe as <<=$npc_sex_club.flags.dogname>> fucks Hera into the ground. You do not know if you have ever seen anything like it, a sentiment shared by the audience who soon fall to stunned silence as Hera. Is. FUCKED.<br>
<br>
You recall how large the knotted cock filling her cunt already is, plus the volume of the hollow anal hook as well... and yet Hera takes <<=$npc_sex_club.flags.dogname>>'s cock knot and all, somehow throwing her head even further back than her restraints force, her expression one of overwhelmed bliss. Despite the clear intensity of her experience she holds out until <<=$npc_sex_club.flags.dogname>>'s knot pops fully inside of her. From that moment forth Hera appears to be orgasming almost constantly — practically locked to the cock impaling her from behind, her entire body occasionally lifting off the ground as <<=$npc_sex_club.flags.dogname>> pounds away, fucking her, breeding her... giving her a glimpse of what you know she would surely describe as heaven.<br>
<br>
Though he lasts nearly as long as his cock, eventually <<=$npc_sex_club.flags.dogname>> reaches satisfaction of his own, the intensity of his climax literally shooting Hera off his canine colossus as his copious cum leaks out of her gaped ass... and she continues to twitch and thrash in orgasmic aftershocks.<br>
<br>
Eagerly Ixion rushes across the stage to comfort <<his>> wife... and lick up as much cum as <<he>> can.<br>
<br>
[<<moveTo "event_maid_work_dog_show_8" "Join <<him>> in licking up the thick spooge." 300 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_maid_work_dog_show_8" "Just watch." 300 "<<set $scene.lick=false>>">>]
<</if>>
</div>/*#
#desc: dog show lick up cum
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lick>>
<<applyExperience 'bestiality' 13 'unbelievable' $EXPOSED>>
<<applyExperience 'cum' 18 'unbelievable' $EXPOSED>>
<<applyExperience 'humiliation' 20 'unbelievable' $EXPOSED>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_maid","npc_maid_mistress_club") setup.charImage("generic","npc_maid_couple_bitch") setup.charImage("npc_dog","npc_dog_direwolf")>>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
<<if $scene.win>>
You may have just been fucked like few people ever have before, but that only makes you more eager to replace the gaping hole left behind in your ass with as much canine <<getWordCum>> as you can lick up.<br>
<br>
It becomes something of a competition between you, Ixion and Hera to see who can get the most, the two of them enjoying a slight advantage in that fact as they are able to lick up all of the copious cum that has soaked your backside, while you are left with the floor and whatever leaks out of your still-gaped hole.
<<else>>
You join Ixion in scampering across the stage to eagerly lick as much cum as you can.
<</if>>
Your bellies full to bursting the three of you glance back at the audience one final time as
<<else>>
<<if $scene.win>>
You can feel the hot cum even through the catsuit, but you lack the energy or will to do anything about it, just lying on the stage and panting as you try to suck air through your gag, feeling Ixion and Hera tenderly licking you clean and nuzzling you in congratulations.<br>
<br>
Several minutes pass before you rise to your feet, the crowd cheering once more as
<<else>>
The scent of <<getWordCum>> is almost overwhelming, even from a good two meters away across the stage. You content yourself to sit and watch as Ixion does <<his>> best to lick <<his>> wife clean, Hera eventually stopping twitching with orgasm, and then recovering enough to stagger back up onto all fours to the encouraging cheers of the crowd.<br>
<br>
Walking back to the centre of the stage
<</if>>
<</if>>
<<=setup.getNpcName("npc_maid_mistress","formal")>> clips leashes to each of the three of your collars and then leads the way off stage and through the maze-like back areas of <<printShopName 'sex_club'>>.<br>
<br>
"@@.npc_sex_club;<<=setup.getNpcName("npc_maid_mistress","formal")>> and her three bitches!@@" <<=setup.getNpcName("npc_sex_club","formal")>> calls out as you leave, the cheers fading into the distance and you head back to the room where this evening started.<br>
<br>
[<<moveTo "event_maid_work_dog_show_9" "Continue." 900>>]
</div>/*#
#desc: dog show change + leave
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<removeItemSet 'puppy_black_copy'>>
<<deleteItemSet 'puppy_black_copy'>>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
<<removeItem 'puppy_anal_hook' true>>
<<deleteItem 'puppy_anal_hook'>>
<<else>>
<<removeItem 'puppy_anal_hook_hollow' true>>
<<deleteItem 'puppy_anal_hook_hollow'>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Back Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_back.png" setup.charImage("npc_maid","npc_maid_mistress_club") setup.charImage("generic","npc_maid_couple")>>
<div id="invframe" class="scrolltext">
With some help from <<=setup.getNpcName("npc_sex_club","formal")>> you, Ixion and Hera are helped out of your sweaty outfits and returned to something resembling human.<br>
<br>
Exhausted and emotionally fried from the public performance none of you seem able to quite find the words... what you have been through almost too intense for such things.<br>
<br>
A final surprise comes at the end when <<=setup.getNpcName("npc_maid_mistress","formal")>> removes Hera's chastity device to unleash a near flood of feminine juices when the knotted dildo is removed from her cunt.<br>
<br>
<<=setup.getNpcName("npc_maid_mistress","formal")>> is about to step away to leave Hera to change when the woman shakes her head — firmly pointing a stiff arm at her original chastity belt.<br>
<br>
<<=setup.getNpcName("npc_maid_mistress","formal")>> smiles with pride as she locks Hera away. Wearing nothing but her collar and her chastity Hera looks like she is walking on air, immediately going back to doing her part as alpha bitch to help the rest of her pack finish changing.<br>
<br>
You are riding the elevator back up to your flat when you realise you are still wearing the "Princess" collar...<br>
<br>
<<if $npc_dog.stage > 1>>
[<<moveTo "event_dog_postsexclub_1" "Home." 900>>]
<<else>>
[<<moveTo "room_foyer" "Home." 900>>]
<</if>>
</div>/*#
#desc: come home from sexclub dogshow
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_dog.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
You stumble home from your eventful night feeling exhausted. After all, between the show, the excitement <<if $scene.win>>and being fucked by that beast<<else>>the rest<</if>>... you're definitely ready for bed, already imagining how nice it will feel to fall back on your mattress...<br>
<br>
You step through the door of your flat and have barely closed it when you turn to find yourself face to face with <<=setup.getNpcName("npc_dog","first")>>. You freeze, he looks ready to pounce his teeth barred... though you can also sense a hint of fear in him as you realise he must smell the monster that was fucking you earlier, your strong pack-leader clearly a bit intimidated by the evidence of such a strong rival...<br>
<br>
A switch flips in <<=setup.getNpcName("npc_dog","first")>> and he is on you, dragging you to the ground in no uncertain-terms before throwing himself into your ass with such force you actually slide into the living room.<br>
<br>
You gasp, you've never felt <<=setup.getNpcName("npc_dog","first")>> this aggressive before, his knot swelled almost as thick as <<=$npc_sex_club.flags.dogname>>, gliding in easily thanks to the cum still soaking into your hole, each hard, slamming thrust balls-deep as <<=setup.getNpcName("npc_dog","first")>> reclaims you as HIS bitch.<br>
<br>
<<if $now.getUTCHours() < 1>>
<<set _morning = setup.setNextDate($now, 0, 1, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 1, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_dog_postsexclub_2" "This could be a long night..." _timeToMorning>>]
</div>/*#
#desc: fucked all night after sexclub dogshow
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_dog.penis_size 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<applyFatigue 300>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
With inhuman and... in-canine? stamina <<=setup.getNpcName("npc_dog","first")>> keeps fucking you, pumping his cum deep inside of you without ever softening, his knot re-abusing <<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>both of your holes<<else>>your hole<</if>> with each hard stroke. You have long ago given up any attempt to escape — even if you weren't exhausted from the night before he is like a creature possessed, pinning you in place and pounding, pounding away...<br>
<br>
<<set _morning = setup.getTaskDueDate('manager_morning_inspection_task')>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_dog_postsexclub_3" "He has to get tired eventually, right?" _timeToMorning "<<set _time=setup.getTaskDueDate('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' _time false>>">>]
</div>/*#
#desc: manager morning call after sexclub dogshow
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('hormones_checkin') && setup.daysToDate($now,$events.hormones_checkin.trigger.date) == 0>>
<<postponeEvent 'hormones_checkin' 1>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Somehow you fall asleep with <<=setup.getNpcName("npc_dog","first")>> <<if $player.body_ref.vagina && $player.virgin.vaginal && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>breeding you<<else>>pounding your ass<</if>> like a machine... only to be woken up by your phone.<br>
<br>
Still in the mist of being fucked you manage to pull out your phone...<br>
<br>
<<printThought "Shit... it's <<=setup.getNpcName('npc_manager','formal')>>... have I really been fucked all night?">><br>
<br>
Still exhausted you manage to answer the phone in exchange for sliding a few centimetres across the floor as the force of <<=setup.getNpcName("npc_dog","first")>> pounding overcomes the minimal friction of puddle of drool and cum spreading below you.<br>
<br>
"@@.pc;I'm, uh, feeling, uh, a bit under the — oh <<getWordGod>> — under the weather, I don't think I can make it to work today.@@" As if punishing you further for your prior night's dalliance <<=setup.getNpcName("npc_dog","first")>> finds another gear, slamming into you like he was fresh rather than on something like hour ten of pounding your poor <<if $player.body_ref.vagina && !setup.checkItemTypeWorn("cage")>>holes<<else>>hole<</if>>.<br>
<br>
"@@.npc_manager;Under the weather? I've never met someone named Weather, but I suppose it's possible, because what it sounds like is that you're under someone getting fucked<<if $fetish.sissy>> in your sissy hole<</if>>.@@"<br>
<br>
You groan as <<=setup.getNpcName("npc_dog","first")>> chooses that moment to bark loud enough to be heard over the phone.<br>
<br>
"@@.npc_manager;Was that a dog? Are you? Oh my, my, you really are a little bitch in multiple ways. Well I suppose you are in no shape to come in, but I WILL expect you bright and early tomorrow morning ready to catch up on everything you were unable to do today.@@"<br>
<br>
You mumble something that might be mistaken for a thanks as you hang up.<br>
<br>
"@@.pc;See what trouble you got me into?@@" You gasp over your shoulder.<br>
<br>
<<=setup.getNpcName("npc_dog","first")>> responds by dumping another load of cum into your ass, holding just long enough to make sure it's all pumped deep before resuming thrusting in and out.<br>
<br>
<<printThought "Is he secretly part machine? How much longer can he keep this up...">><br>
<br>
[<<moveTo "event_dog_postsexclub_4" "Continue." 1800>>]
</div>/*#
#desc: manager visit after sexclub dogshow
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog")>>
<div id="invframe" class="scrolltext">
Half an hour passes when you hear someone at the door. You make yet another attempt to crawl away from your Alpha, but your arms and legs are like rubber, and it is almost impossible to even get traction in the pool of cum and drool that you lie in. <<=setup.getNpcName("npc_dog","first")>> has no trouble pinning you in place... and then you hear the lock click and the door opens...<br>
<br>
You can't see who is at the door, but you feel <<=setup.getNpcName("npc_dog","first")>> instantly freeze and, for the first time in almost half a day there is not a dog cock filling your ass. You feel some cum leak out of your abused hole as you realise <<=setup.getNpcName("npc_dog","first")>> is sitting up at attention. Too exhausted to take advantage of your freedom you somehow manage to roll over to look up at your visitor...<br>
<br>
[<<moveTo "event_dog_postsexclub_5" "Look up." 300>>]
</div>/*#
#desc: manager visit after sexclub dogshow
#status: RELEASED 0.8.5.0
#ignore_spell: vpn
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You look up at <<=setup.getNpcName('npc_manager','formal')>>, suddenly understanding why <<=setup.getNpcName("npc_dog","first")>> stopped and is standing at obedient attention — he may have made you his bitch, but <<=ps(setup.getNpcName('npc_manager','formal'))>> dominance operates on entire other plane...<br>
<br>
"@@.npc_manager;It would appear that I was correct,@@" she shakes her head. "@@.npc_manager;Calling in sick to get fucked like a bitch... you are lucky that you know someone high up in Human Resources or this could represent a real blemish on your career.@@"<br>
<br>
She leans over, lifting you up by cum-matted hair to look you in your half-focused, exhausted eyes. "@@.npc_manager;Hmm, you are looking a bit tired, my dear, but, since you have taken the day off anyway...@@" She releases her grasp and you flop back to the floor. "@@.npc_manager;You may resume.@@"<br>
<br>
Her command is issued to the seemingly indefatigable <<=setup.getNpcName("npc_dog","first")>> and he immediately resumes railing you.<br>
<br>
"@@.npc_manager;I think I will stick around in case your illness worsens... you do not mind if I use your computer to keep up with things at the office, do you?@@"<br>
<br>
You are past the point of forming coherent words, merely groaning in humiliation as she takes a seat in front of your computer and warms up the monitor.<br>
<br>
Out of the corner of your eye you watch as she opens up a VPN and starts working, humming softly to herself to partially drown out the sounds of you getting dog-fucked.<br>
<br>
[<<moveTo "event_dog_postsexclub_6" "What the hell kind of day is this..." 7200>>]
</div>/*#
#desc: manager videocall while visiting
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'unbelievable' $EXPOSED>>
<<applyExperience 'anal' $npc_dog.penis_size 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_dog") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Having failed to get anything resembling properly restful sleep as <<=setup.getNpcName("npc_dog","first")>> continues the marathon-fuck of proving that you are HIS you drift in and out of consciousness as <<=setup.getNpcName("npc_manager","formal")>> works from your living room.<br>
<br>
You are finally roused to something approaching alertness by the sound of another voice, "@@.npc_discipline;I love the background video, <<=setup.getNpcName("npc_manager","other")>>, but why are you remote, anyway?@@"<br>
<br>
<<printThought "Oh shit, she's on a conference call!">><br>
<br>
"@@.npc_manager;Background? Oh, no, that is my sweet <<if $fetish.sissy>>SISSI <</if>>Secretary!@@" <<=setup.getNpcName("npc_manager","formal")>> states as she walks over and lifts your head up to look at the camera. "@@.npc_manager;Say hi, <<=$player.first_name>>!@@"<br>
<br>
You gurgle something that gets cut off by a moan as your raised position causes <<=ps(setup.getNpcName("npc_dog","first"))>> cock to probe a bit of your insides that is somehow something other than numb from use.<br>
<br>
"@@.npc_manager;As to the latter question, well... would you believe this silly thing called in sick to spend the day fucking her dog? Once I realised that I just had to come over and make sure she was not going to ACTUALLY injure herself. Fortunately she is quite a slut and continues to be knotted with aplomb! Isn't that right?@@" <<=setup.getNpcName("npc_manager","formal")>> adds, scratching <<=setup.getNpcName("npc_dog","first")>> behind the ears, "@@.npc_manager;Who's a good boy? Yes you are! You keep filling that <<if $fetish.sissy>>SISSI <</if>>slut up while I get back to this meeting.@@"<br>
<br>
You groan as the rest of the conference call laughs or shouts encouragement that blends into a humiliating cacophony and you surrender to the situation — you don't know when your existence will be anything other than being fucked by a dog, but you no longer care. You are a bitch to be fucked, by who and for how long is a decision far beyond your pay-grade.<br>
<br>
[<<moveTo "event_dog_postsexclub_7" "Continue." 10600>>]
</div>/*#
#desc: manager release after videocall
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Living Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You must have fallen asleep eventually because you awake to <<=setup.getNpcName("npc_manager","formal")>> standing over you and <<=setup.getNpcName("npc_dog","first")>> nowhere to be seen.<br>
<br>
"@@.npc_manager;I think that is enough of a lesson for today. Come, let us get you cleaned up.@@"<br>
<br>
Heedless of the fact that you are soaked in cum and drool <<=setup.getNpcName("npc_manager","formal")>> lifts up up, giving you a moment to try to find your feet before catching you in your fall and carrying you into the bathroom.<br>
<br>
[<<moveTo "event_dog_postsexclub_8" "Continue." 600>>]
</div>/*#
#desc: manager cleans you up and puts you to bed
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<include "cleanPlayer">>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Neither of you say a word as <<=setup.getNpcName("npc_manager","formal")>> holds you up and hoses you off with the detachable shower head<<if setup.hasUpgrade($bathroom, 'dildo')>>, using the dildo mounted in your shower as a hook to help you stay<<else>>her support the only think keeping you<</if>> vertical as she rinses you off completely and then tenderly soaps you down and scrubs you clean.<br>
<br>
You feel safe and supported, her grip startlingly strong as she holds you up and massages her way up and down your sore, stiff muscles.<br>
<br>
Finally drying you off she once again lifts you up, carrying you into the bedroom where <<=setup.getNpcName("npc_dog","first")>> is curled up asleep at the foot of the bed.<br>
<br>
Laying you out <<=setup.getNpcName("npc_manager","formal")>> brushes a strand of hair back into position and smiles. "@@.npc_manager;There you go, my wonderful <<if $fetish.sissy>>SISSI <</if>>Secretary — I hope you enjoyed your little "sick day" — yet again you have soared beyond my expectations. Enjoy some rest, I will see you tomorrow.@@"<br>
<br>
<<if $npc_manager.anger == 0 && $npc_manager.affection == 10>>
She leans over and kisses you good-night...
<<else>>
She smiles down at you wishing you a "@@.npc_manager;Good night@@" —
<</if>>
though you are fairly certain it is barely afternoon...<br>
<br>
Exhausted... yet strangely content you fall asleep.<br>
<br>
[<<moveTo "room_bedroom" "Sleep." 7200>>]
</div>/*#
#desc: dunk event - see woman
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCHours() > 22 || $now.getUTCHours() < 5>>
<<initRoom>>
<<moveTo "event_sex_club_play">>
<</if>>
<<if $fetish.cum && !$fetish.piss>>
<<set $scene.dunkStyle = "cum">>
<<elseif $fetish.piss && !$fetish.cum>>
<<set $scene.dunkStyle = "piss">>
<<elseif setup.getTotalValue("cum") > setup.getTotalValue("piss")>>
<<set $scene.dunkStyle = "cum">>
<<else>>
<<set $scene.dunkStyle = "piss">>
<</if>>
<<set $scene.first=true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
You're walking through the club play area when a naked woman staggers past escorted by a pair of latex-clad slaves. The woman looks all but dead on her feet, arms draped over the shoulders of her escorts the only thing keeping her vertical. Even more than her exhaustion what stands out about the woman is that she reeks, and is literally dripping, with <<if $scene.dunkStyle == 'piss'>>piss<<else>>cum<</if>>, her hair sopping wet and matted to the side of her face,
<<if $scene.dunkStyle == 'piss'>>
her bare flesh glistening with drops of liquid gold
<<else>>
thick <<getWordCum>> dripping from every orifice
<</if>>
and leaving a trail behind her that is being helpfully mopped up by another latex-garbed servant.<br>
<br>
Other patrons move out of her way, and you immediately understand why as the
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
heavenly scent
<<else>>
disturbingly enticing scent
<</if>>
<<else>>
<<if setup.getTotalValue($scene.dunkStyle) > 5>>
powerful stench
<<else>>
disgusting stench
<</if>>
<</if>>
of her slams into you. You wonder what happened to her as you look across the play area in the direction she came from.<br>
<br>
[<<moveTo 'event_sex_club_dunk_2' 'You see a <<man>> standing in front of a large tank shouting.' 180>>]
</div>/*#
#desc: dunk event - intro
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.dunkStyle>>
<<if $fetish.cum && !$fetish.piss>>
<<set $scene.dunkStyle = "cum">>
<<elseif $fetish.piss && !$fetish.cum>>
<<set $scene.dunkStyle = "piss">>
<<elseif setup.getTotalValue("cum") > setup.getTotalValue("piss")>>
<<set $scene.dunkStyle = "cum">>
<<else>>
<<set $scene.dunkStyle = "piss">>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png">>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_sex_club_dunk_5")>>
The barker looks you over with a knowing grin.
<<if State.hasPlayed("event_sex_club_dunk_13")>>
"@@.generic_male1;Back for more? Well come on, let's get you mounted and under attack, see if you can win the prize once more!@@"
<<else>>
"@@.generic_male1;Back for another round? Well come on, let's get you mounted and under attack, see if you can win that prize!@@"
<</if>>
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
<<if State.hasPlayed("event_sex_club_dunk_13")>>
<<printThought "Mmm... spending the rest of the night swimming in <<=$scene.dunkStyle>>... I MUST WIN!">>
<<else>>
<<printThought "Mmm... I wonder what the prize is? Not that just going for a dip isn't a prize enough!">>
<</if>>
<<else>>
<<if State.hasPlayed("event_sex_club_dunk_13")>>
<<printThought "Am I really going to compete to spend the rest of the night swimming in <<=$scene.dunkStyle>>?">>
<<else>>
<<printThought "Another night swimming in <<=$scene.dunkStyle>>... is that the prize I want?">>
<</if>>
<</if>>
<<else>>
<<if setup.getTotalValue($scene.dunkStyle) > 5>>
<<if State.hasPlayed("event_sex_club_dunk_13")>>
<<printThought "Am I really going to compete to spend the rest of the night swimming in <<=$scene.dunkStyle>>... what's wrong with me?">>
<<else>>
<<printThought "Could any prize be worth this risk? And why does part of me want to try regardless?">>
<</if>>
<<else>>
<<printThought "No prize is worth this... this was a terrible idea!">>
<</if>>
<</if>>
<<else>>
Seeming to notice your attention the <<man>>, who is dressed in a latex rendition of an old-fashioned carnival barker's outfit, turns <<his>> booming voice towards you with a wide grin.<br>
<br>
"@@.generic_male1;Step right up! I can see the thirst in your eye! Come on up and take a seat in our premium dunk tank!@@"<br>
<br>
You glance past <<him>> at the large, clear-walled tank, noticing the small seat hanging above the
<<if $scene.dunkStyle == 'piss'>>
golden
<<else>>
thick, "creamy"
<</if>>
pool below.<br>
<br>
<<if $scene.dunkStyle == 'piss'>>
"@@.generic_male1;Yessiree! You're looking at two thousand litres of liquid gold! Certified pure and never watered down!@@"
<<else>>
<<if $fetish.bestiality_hard>>
"@@.generic_male1;Yessiree! You're looking at two thousand litres of cum — a blend of horse, pig and bull, to be exact... plus whatever punters decide to contribute! Yup, you'll be swimming in the barn-yard if you end up taking the plunge!@@"
<<else>>
"@@.generic_male1;Yessiree! You're looking at two thousand litres of top grade artificial cum — the same flavour and thick texture you love, but in quantities you can only dream of!@@"
<</if>>
<</if>>
<br><br>
You blink in surprise and the <<man>> takes it as licence to continue, moving closer and draping an arm over your shoulder as <<he>> continues <<his>> sales pitch. "@@.generic_male1;Come on, you seem the daring sort — how about you take a ride, and maybe win the prize! That's right, if you can survive being under fire for a mere half an hour, well... you'll win the secret grand prize so come on... what have you got to lose?@@"<br>
<br>
<<printThought "Well... there's the whole getting dunked in <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>>...">><br>
<br>
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
... but that's more like a reward for a degenerate <<=$scene.dunkStyle>>-fiend like yourself...
<<else>>
... but that's almost more like a reward, given your growing depravity...
<</if>>
<<else>>
<<if setup.getTotalValue($scene.dunkStyle) > 5>>
... which sounds like quite the downside, even if a part of you is disturbingly enticed.
<<else>>
... which sounds absolutely disgusting.
<</if>>
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
[<<moveTo 'event_sex_club_dunk_3' 'Yes! The only challenge will be not just diving in.' 180 "<<set $scene.accept=true>>">>]<br>
<<if setup.getWillpower() > 1>>
[<<moveTo 'event_sex_club_dunk_3' "No, you don't think so." 180 "<<set $scene.accept=false>><<spendWillpower 2>>">>] <<hint $options "Resisting such an opportunity will cost willpower.">>
<<else>>
[@@.link_locked;You lack the willpower to resist such an opportunity to indulge.@@]<br>
<</if>>
<<else>>
[<<moveTo 'event_sex_club_dunk_3' 'Hmm... that could be interesting...' 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_sex_club_dunk_3' 'You will pass on this so-called "opportunity."' 180 "<<set $scene.accept=false>>">>]
<</if>>
<<else>>
<<if setup.getTotalValue($scene.dunkStyle) > 5>>
<<if setup.getWillpower() > 0>>
[<<moveTo 'event_sex_club_dunk_3' 'Hmm... that could be interesting...' 180 "<<set $scene.accept=true>><<spendWillpower 1>>">>] <<hint $options "Push past your initial revulsion will cost willpower.">><br>
<<else>>
[@@.link_locked;You are too mentally drained to push past the feeling of revulsion and try such a thing.@@]<br>
<</if>>
<<else>>
[@@.link_locked;No way, no how are you going to do something so disgusting.@@]<br>
<</if>>
[<<moveTo 'event_sex_club_dunk_3' 'You will pass on this so-called "opportunity."' 180 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: dunk event - bound and installed
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
You eagerly accept the <<mans>> offer, licking your lips in anticipation as you oogle the large, delicious pool.
<<else>>
You accept the <<mans>> offer and <<he>> grins.
<</if>>
<<else>>
Pushing past your better judgement you accept the <<mans>> offer.
<</if>>
<br><br>
<<if $scene.first>>
"@@.generic_male1;Enticed by that mysterious grand prize... or just looking for any opportunity you can get to be "forced" into a pool of <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>>? Well I guess we'll find out soon!@@"
<<else>>
<<if State.hasPlayed("event_sex_club_dunk_13")>>
"@@.generic_male1;Coming back to defend your throne? what a <<switch $player.identify_as>><<case 'female'>>girl<<case 'male'>>guy<<default>>competitor<</switch>>!@@"
<<else>>
"@@.generic_male1;Back for more? Let's see if you've got what it takes to claim the grand prize this time!@@"
<</if>>
<</if>>
<br><br>
<<He>> leads you to a small booth tucked behind the tank and directs you to strip.<br>
<br>
<<if setup.checkNaked()>>
"@@.generic_male1;As lovely as your naked flesh is, we have some special accessories to make the game more interesting!@@"<br>
<br>
[<<moveTo 'event_sex_club_dunk_4' "Get equipped." 180>>]<br>
<<else>>
"@@.generic_male1;We wouldn't want to stain that lovely outfit you're wearing... plus there are a few accessories to make the game more interesting!@@"<br>
<br>
[<<moveTo 'event_sex_club_dunk_4' "Strip and change." 180>>]<br>
<</if>>
<<if setup.getTotalValue($scene.dunkStyle) <= 15>>
[<<moveTo 'event_sex_club_dunk_3' "On second thought... you don't want to do this." 180 "<<set $scene.accept=false>>">>]
<<else>>
[@@.link_locked;There's no way a <<if $scene.dunkStyle == 'piss'>>piss-fiend<<else>>cum-slut<</if>> like you is backing out now!@@]
<</if>>
<<else>>
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
With a final longing glance at the tank you shift free of the carnival barker's grasp.
<<else>>
You shake your head and slip away from the carnival barker's grasp as you decline <<his>> offer and walk away from the subtly enticing pool.
<</if>>
<<else>>
<<if setup.getTotalValue($scene.dunkStyle) > 5>>
You pull away from the carnival barker and hurry away from the disgusting... but also disturbingly enticing pool.
<<else>>
Suppressing the urge to gag you pull away from the carnival barker and hurry away from the disgusting pool.
<</if>>
<</if>>
<br><br>
"@@.generic_male1;Your loss!@@" <<He>> calls out after you, before shifting <<his>> attention to another potential recruit.<br>
<br>
[<<moveTo 'event_sex_club_play' "Back to the play area." 60>>]
<</if>>
</div>/*#
#desc: dunk event - get changed
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<addItem "bondage_mitts_black">>
<<wearItem "bondage_mitts_black" true>>
<<addItem "ankle_cuffs_steel">>
<<wearItem "ankle_cuffs_steel" true>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' 15 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
In the relative privacy of the small booth the <<man>> supervises you stripping naked before instructing you to offer your hands for <<him>> to pull a pair of padded mitts over. You are now effectively helpless and the <<man>> whistles happily as <<he>> <<if $scene.removePlug>>removes your plug and <</if>>adds a set of ankle chains to your "outfit." <br>
<br>
"@@.generic_male1;Watch your step,@@" the <<man>> notes as <<he>> leads you up a ladder, a short platform extending for you to approach and then straddle the dunk "seat" — your cuffed ankles dangling below. The <<man>> adjusts your position slightly and then presses a button and you gasp as a <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>pair of slick dildos glide up into you<<else>>slick dildo thrusts up into your rear<</if>>.<br>
<br>
"@@.generic_male1;All part of the show,@@" the <<man>> states with a grin, tapping another button that causes the entire seat to vibrate you inside and out, and you wobble slightly.<br>
<br>
"@@.generic_male1;Now now, don't be taking a tumble before things even start! Remember — survive half an hour to win the prize... good luck!@@"<br>
<br>
The <<man>> steps back and <<his>> platform retracts to leave you alone above the pool of <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>> and you note that quite a crowd has already gathered, the first punter lining up eagerly as the <<man>> hands over a ball and you hear a sound behind.<br>
<br>
[<<moveTo 'event_sex_club_dunk_5' "Wait, what's going on now?" 180>>]
</div>/*#
#desc: dunk event - game explained
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
You glance behind to see a large target descend behind you as you realise that this is a bit more than a mere dunk tank — you're going to have to play goal-tender for the full half hour!<br>
<br>
The punter steps up to the line and your <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>twin dildos<<else>>anal occupant<</if>> pause. <<printThought "So I'm either being shelled... or stimulated... this is going to be a challenging prize to win...">><br>
<br>
Waiting for you to figure out your full situation the punter readies a throw, lobbing it fairly slow just above your right shoulder.<br>
<br>
[<<moveTo 'event_sex_club_dunk_6' "Bat it away." 180>>]<br>
[<<moveTo 'event_sex_club_dunk_lose_1' "Speed loss!" 180 "<<set $scene.source='event_sex_club_dunk_5'>>">>]
</div>/*#
#desc: dunk event - lose
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience $scene.dunkStyle 16 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 16 'terrible' $EXPOSED>>
<<set $npc_sex_club.flags.dunk.lose[$scene.dunkStyle] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.source>>
<<case "event_sex_club_dunk_5">>
You don't even bother reaching out to block the easy throw and it sails past you towards the hanging target. Your seat drops out from under you as you are plunged into the tank of
<<case "event_sex_club_dunk_6">>
You lock eyes with the punter and then let your arms drop, sitting in silence as they send a hard pitch past your head at the target behind you. Your seat drops out from under you as you are plunged into the tank of
<<case "event_sex_club_dunk_7" "event_sex_club_dunk_8">>
The target struck you flail in the air for a moment before splashing down into the pool of
<<case "event_sex_club_dunk_9">>
You yelp as, with <<=$scene.throwName>> looking on, you tumble into the
<<default>>
ERROR: unexpected prior location: <<=$player.llocation>>
<</switch>>
<<if $scene.dunkStyle == 'piss'>>
piss below.
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
You catch a mouthful of warm <<getWordPiss>> as you splash into the warm, wonderful pool. You twist underwater, embracing the feeling of being utterly submerged as you look
<<else>>
You catch part of a mouthful of warm <<getWordPiss>> as you are dragged under the water. You spend a moment looking
<</if>>
around, the club goers fuzzy and amber-tinged as they watch you through the clear tank. Needing air you pop up to the surface.
<<else>>
You flail in panic, disgusted by the warm, slightly acidic liquid all around you.
<</if>>
<<else>>
cum below.
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
You catch a mouthful of warm <<getWordCum>> as you splash into the warm, wonderful pool. The thick liquid has you naturally buoyant but you dive your head under for a moment and look
<<else>>
You catch part of a mouthful of warm <<getWordCum>> as you are dragged under the water, velocity temporarily overcoming your buoyancy in the thick liquid. You spend a moment looking
<</if>>
around, the thick cream completely blocking your visibility until you pop your head above the surface and look out at the club goers cheering you take a gulp as you lazily float in the thick liquid.
<<else>>
You flail in panic, disgusted by the thick liquid all around you.
<</if>>
<</if>>
The combination of restraints and your heavy ankle hobbles makes just treading water a challenge, and you spend about a minute flailing to the amusement of the audience before a large hook reaches out to grab you.<br>
<br>
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
You are floating in heaven and you try to swim away from the hook — the crowd is VERY entertained by your depravity, even if it ends up for naught as you soon run up against the edge of the tank and are dragged out.
<<else>>
You float in your pool of depravity for a few minutes before a hook reaches out and gently drags you out of the tank.
<</if>>
You are back on your feet as
<<else>>
You gratefully cling to this path to freedom as you are dragged up and out of the <<=$scene.dunkStyle>>, standing sopping wet as the barker hands you a towel and
<</if>>
a trio of latex-clad slaves appear to escort you away.<br>
<br>
"@@.generic_male1;Better luck next time!@@" The barker announces as you file through the crowd and the barker resumes <<his>> call of another challenger.<br>
<br>
Drenched and dripping with <<=$scene.dunkStyle>>, you are in no condition to continue your night and your latex honour guard leads you out to the changing room.<br>
<br>
[<<moveTo 'event_sex_club_dunk_lose_2' "Clean up and change." 300>>]
</div>/*#
#desc: dunk event - leave after losing
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<<removeItem "bondage_mitts_black" true>>
<<deleteItem "bondage_mitts_black">>
<<removeItem "ankle_cuffs_steel" true>>
<<deleteItem "ankle_cuffs_steel">>
<<if $scene.hasOwnProperty('outfit')>>
<<include "removesex_clubOutfit">>
<<useClothSetPop 'sex_club'>>
<<elseif !setup.checkOutsideDecency()>>
<<useClothSetPop 'sex_club'>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png">>
<div id="invframe" class="scrolltext">
You take a quick shower to rinse off and towel down before changing back into your clothes and heading home, the taste of <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>> still on your tongue and filling your nostrils.<br>
<br>
[<<moveTo 'room_foyer' "Home." 600>>]
</div>/*#
#desc: dunk event - first throw
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience $scene.dunkStyle 15 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
You easily reach out to block the attack... only for the ball to burst at your touch, soaking you as you discover that it is not a ball... but a water balloon filled with <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>>!<br>
<br>
The audience shouts in excitement at your discovery as you work to steady yourself on your seat, rocking on your <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>dildos<<else>>anal support<</if>> to keep from tumbling off and into the tank below.<br>
<br>
Just as you steady yourself the vibrator kicks back on and you brace and gasp, almost grateful when another person steps up, balloon in hand and a grin on their face that says that this isn't going to be another easy shot...<br>
<br>
<<printThought "The challenges keep piling up...">><br>
<br>
[<<moveTo 'event_sex_club_dunk_7' "Get ready to block." 300>>]<br>
[<<moveTo 'event_sex_club_dunk_lose_1' "Why fight the inevitable?" 180 "<<set $scene.source='event_sex_club_dunk_6'>>">>]
</div>/*#
#desc: dunk event - mook throws
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
You squeeze with your thighs to stay steady on your mount as you wait for the throw...
<<if setup.getTotalValue("dexterity") > 10>>
and easily bat it aside, this time managing to do so with a minimal of splash as the balloon pops at about waist-level and showers over the pool.<br>
<br>
"@@.generic_male1;Oooh! A good block!@@" The barker commentates, another punter appearing before your vibrator can even kick on... but this one has a different plan, hucking their balloon directly at you without even an attempt to hit the target.<br>
<br>
An explosion of <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>> explodes over your body, some getting into your mouth as you
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
<<if setup.getTotalValue($scene.dunkStyle) > 15>>
lick your lips eagerly.
<<else>>
reflexively lick your lips and shudder.
<</if>>
<<else>>
sputter in disgust.
<</if>>
You try to wipe your face clean with one mitted paw as you look at the line of punters, soon under constant bombardment, forced to contend with both direct shots and those actually aiming for the target in between teetering on your seat and the occasional distracting buzz between your legs whenever there is a pause in the onslaught.<br>
<br>
You start to lose track of time until a hush falls over the crowd as you realise this next thrower is one you recognise...<br>
<br>
[<<moveTo 'event_sex_club_dunk_8' "Who's that?" 180>>]<br>
[<<moveTo 'event_sex_club_dunk_lose_1' "Why fight the inevitable?" 180 "<<set $scene.source='event_sex_club_dunk_7'>>">>]
<<else>>
You blocked one shot... but this one comes in faster and you reflexes just aren't up to the task. Zipping past your hand you're already off-balance as the target thuds with the hit and you lose your seat.<br>
<br>
[<<moveTo 'event_sex_club_dunk_lose_1' "You tumble..." 180 "<<set $scene.source='event_sex_club_dunk_7'>>">>]
<</if>>
</div>/*#
#desc: dunk event - named throw
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _throwers = ['guard', 'owner']>>
<<if $scene.sex_club_info.hasOwnProperty('danceFloor') && $scene.sex_club_info.danceFloor.id == "rpgFriends" && $npc_technician.flags.rpg_campaign.session_actions.fantasy.succubus[7]>>
<<set _throwers.push("rpg_warlock")>>
<</if>>
<<if $scene.sex_club_info.hasOwnProperty('danceFloor') && $scene.sex_club_info.danceFloor.id == "rpgFriends" && $npc_technician.flags.rpg_campaign.penance.dude>>
<<set _throwers.push("rpg_dude")>>
<</if>>
<<if $scene.sex_club_info.hasOwnProperty('bathroom') && $scene.sex_club_info.bathroom.id == "nun">>
<<set _throwers.push("nun")>>
<</if>>
<<if $npc_exgirlfriend.flags.sexclub.peg_talk>>
<<set _throwers.push("ex")>>
<</if>>
<<if State.hasPlayed("event_sex_club_primrose_intro")>>
<<set _throwers.push("primrose")>>
<</if>>
<<set $scene.special_thrower = _throwers.random()>>
<<switch $scene.special_thrower>>
<<case "rpg_warlock">>
<<set $scene.difficulty = 17>>
<<set $scene.throwName = setup.getNpcName("npc_rpg_warlock","first")>>
<<case "rpg_dude">>
<<set $scene.difficulty = 14>>
<<set $scene.throwName = setup.getNpcName("npc_rpg_warlock","first") + " and " + setup.getNpcName("npc_rpg_dude","first")>>
<<case "nun">>
<<set $scene.difficulty = 20>>
<<if $player.flags.church.level >= 2>>
<<set $scene.throwName = setup.getNpcName("npc_nun_temperance","formal")>>
<<else>>
<<set $scene.throwName = "the nun">>
<</if>>
<<case "ex">>
<<set $scene.difficulty = 18>>
<<set $scene.throwName = "your ex">>
<<case "primrose">>
<<set $scene.difficulty = 12>>
<<set $scene.throwName = setup.getNpcName("npc_primrose","first")>>
<<case "guard">>
<<set $scene.difficulty = 19>>
<<set $scene.throwName = setup.getNpcName("npc_guard","formal")>>
<<case "owner">>
<<set $scene.difficulty = 13>>
<<if $scene.sex_club_info.owner.dom>>
<<set $scene.throwName = setup.getNpcName("npc_sex_club","formal")>>
<<else>>
<<set $scene.throwName = setup.getNpcName("npc_sex_club","nickname")>>
<</if>>
<</switch>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.special_thrower>>
<<case "rpg_warlock">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_rpg_warlock","npc_rpg_warlock_club") setup.charImage("npc_rpg_dude","npc_rpg_dude_club")>>
<<case "rpg_dude">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_rpg_warlock","npc_rpg_warlock_club") setup.charImage("npc_rpg_dude","npc_rpg_dude_club")>>
<<case "nun">>
<<createAdvBGR "./images/locations/sex_club_tank.png" "npc_nun_temperance">>
<<case "ex">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch")>>
<<case "primrose">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.getPrimroseImage("club")>>
<<case "guard">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<<case "owner">>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.special_thrower>>
<<case "rpg_warlock">>
You watch as <<=setup.getNpcName("npc_rpg_warlock","first")>> steps up to the line, brandishing the "water" balloon with a cruel grin, her voice somehow audible over the crowd.<br>
<br>
"@@.npc_rpg_warlock;This is for betraying the party, you vile demoness!@@" She announces as she throws a fast-ball to your weak side.
<<case "rpg_dude">>
You watch as <<=setup.getNpcName("npc_rpg_warlock","first")>> steps up to the line, handing the balloon to her <<boy npc_rpg_dude>>friend and pulling <<him npc_rpg_dude>> in by <<his npc_rpg_dude>> leash to tell <<him npc_rpg_dude>> — in a voice loud enough for you to hear "@@.npc_rpg_warlock;if you send her down, I'll go down on you.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> looks at you with a bit of sympathy before shrugging and winding up for a throw...
<<case "nun">>
You watch as <<if $player.flags.church.level >= 2>><<=setup.getNpcName("npc_nun_temperance","formal")>><<else>>a latex-clad nun<</if>> steps up to throw. Her eyelashes flutter, a look of beatific love on her face as she kisses the balloon and whispers a prayer before looking at you and letting fly.<br>
<br>
"@@.npc_rpg_warlock;Be baptised and blessed, Sister!@@"
<<case "ex">>
You are struck speechless as your ex steps up to the proverbial plate.<br>
<br>
"@@.npc_exgirlfriend;I can't believe that shy guy I dated is now into stuff like this... but hey, least I owe you is to give you a bit of help, right?@@"<br>
<br>
She winds up for an underhand throw and you suddenly recall her once mentioning that she used to play fast-pitch softball in high school...
<<case "primrose">>
You watch as <<=setup.getNpcName("npc_primrose","first")>> — in full dollified glory steps up. With unblinking eyes and an eternal smile they stare at you for a moment, and you get the feeling that they're a bit jealous of your situation.<br>
<br>
The person behind them mumbles something about "hurrying up" and <<=setup.getNpcName("npc_primrose","first")>> blows you a kiss before making their throw.
<<case "guard">>
You watch with some degree of trepidation as <<=setup.getNpcName("npc_guard","formal")>> steps up to throw. You wonder if she just spent a few minutes working out for the occasion, her muscles glistening and pumped as she winks at you and winds up.
<<case "owner">>
<<if $scene.sex_club_info.owner.dom>>
<<=setup.getNpcName("npc_sex_club", "formal")>> steps up, grinning below <<his npc_sex_club>> mask as <<he npc_sex_club>> winds up to throw.<br>
<br>
"@@.npc_sex_club;Glad to see you're taking full advantage of the facilities... let me help you take the plunge...@@"
<<else>>
<<=setup.getNpcName("npc_sex_club", "nickname")>> steps up, waiting a moment as someone unbuckles one of <<his npc_sex_club>> bound arms before accepting the water balloon and silently hurling it past you.
<</if>>
<<default>>
ERROR: unexpected scene.special_thrower <<=$scene.special_thrower>>
<</switch>>
<br><br>
[<<moveTo 'event_sex_club_dunk_9' "Try to block!" 180>>]<br>
[<<moveTo 'event_sex_club_dunk_lose_1' "You tumble..." 180 "<<set $scene.source='event_sex_club_dunk_8'>>">>]
</div>/*#
#desc: dunk event - final throw
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.special_thrower>>
<<case "rpg_warlock">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_rpg_warlock","npc_rpg_warlock_club") setup.charImage("npc_rpg_dude","npc_rpg_dude_club")>>
<<case "rpg_dude">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_rpg_warlock","npc_rpg_warlock_club") setup.charImage("npc_rpg_dude","npc_rpg_dude_club")>>
<<case "nun">>
<<createAdvBGR "./images/locations/sex_club_tank.png" "npc_nun_temperance">>
<<case "ex">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_exgirlfriend","npc_exgirlfriend_bitch")>>
<<case "primrose">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.getPrimroseImage("club")>>
<<case "guard">>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_guard","npc_guard_fetish")>>
<<case "owner">>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_tank.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<</switch>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dexterity") >= $scene.difficulty>>
<<switch $scene.special_thrower>>
<<case "rpg_warlock">>
You reach for the speeding balloon, barely managing to get your mitted hand in front of it, the force of the impact almost knocking you from your perch as it bursts into an explosion of <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>>.
<<case "rpg_dude">>
You swat the balloon out of the air and <<=setup.getNpcName("npc_rpg_warlock","first")>> mock glares at you before tugging on her <<boy npc_rpg_dude>>friend's leash. "@@.npc_rpg_warlock;Heh, good thing I'm not dating you for your sports-ball skills... doesn't mean I'm not adding to your chastity for the failure though.@@"<br>
<br>
<<=setup.getNpcName("npc_rpg_dude","first")>> looks at you with a barely-concealed grin and shrugs as <<=setup.getNpcName("npc_rpg_warlock","first")>> winks in your direction and tosses off a playful "@@.npc_rpg_warlock;see you at game.@@" Before walking off.
<<case "nun">>
Even a divine blessing isn't enough to overcome your nimble agility, as you barely manage to swat the balloon out of the air and remain "mounted" on your seat.<br>
<br>
Clearly surprised the nun nonetheless bows in acceptance before moving away for some random other club-goer to take their turn.
<<case "ex">>
<<=ps(setup.getNpcName("npc_exgirlfriend", "first"))>> balloon flies hard and fast... and somehow rises slightly at the last moment... but you manage to knock it off-target and barely stay on your perch.<br>
<br>
<<=setup.getNpcName("npc_exgirlfriend", "first")>> smirks, tipping an imaginary hat at you before walking away.
<<case "primrose">>
You knock <<=ps(setup.getNpcName("npc_primrose", "first"))>> balloon out of the air. They watch until the drops finish falling... before dipping a hand into the pool and rubbing it between their legs.<br>
<br>
With a parting curtsy the cute doll disappears back into the crowd.
<<case "guard">>
You manage to block <<=ps(setup.getNpcName("npc_guard", "first"))>> balloon... though the force of the impact slightly numbs your hand, even through the mitt!<br>
<br>
<<=setup.getNpcName("npc_guard", "first")>> chuckles in amusement before walking away.
<<case "owner">>
You knock the balloon out of the air,
<<if $scene.sex_club_info.owner.dom>>
<<=setup.getNpcName("npc_sex_club", "formal")>> smiling, clearly impressed by your reflexes.<br>
<br>
"@@.npc_sex_club;My, my... looks like you may win, indeed.@@" <<He npc_sex_club>> states ominously before walking away.
<<else>>
<<=setup.getNpcName("npc_sex_club", "nickname")>> frowns for a moment before sliding <<his npc_sex_club>> arm back into its straight-jacket restraint and speaking an ominous "@@.npc_sex_club;Good luck with your prize...@@" before walking away.
<</if>>
<<default>>
ERROR: unexpected scene.special_thrower <<=$scene.special_thrower>>
<</switch>>
<br><br>
After this "friendly" challenge you slip into a sort of zen state. Even the vibrators kicking on permanently do not impact your heightened state as you bat away attacks with ease, embracing the feel of those that hit your body, not caring in the slightest that you're just as soaked in <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>> as if you'd fallen into the pool below.<br>
<br>
You are surprised when the shelling stops, the platform sliding towards you once again as the barker announces your victory.<br>
<br>
[<<moveTo 'event_sex_club_dunk_10' "You won?" 180>>]
<<else>>
<<switch $scene.special_thrower>>
<<case "rpg_warlock">>
You reach to block the balloon, but it's going too fast, out-racing your flailing mitted hand to hit the target behind you.
<<case "rpg_dude">>
You try to swat the balloon out of the sky, but it barely evades your grasp to strike the target behind you.
<<case "nun">>
Divine aim is more than you can handle, the balloon sailing through your fingers to hit the target behind you.
<<case "ex">>
You try to block <<=setup.getNpcName("npc_exgirlfriend","first")>>, but it rises at the last moment, evading your mitted hand to zip past and crash into the target behind you.
<<case "primrose" "owner">>
You flub your block, the balloon sailing past to hit the target behind you.
<<case "guard">>
You actually partially block the balloon... but it was thrown with such power that it still manages to set off the target behind you.
<<default>>
ERROR: unexpected scene.special_thrower <<=$scene.special_thrower>>
<</switch>>
<br><br>
You yelp in surprise as your seat drops away.<br>
<br>
[<<moveTo 'event_sex_club_dunk_lose_1' "You tumble..." 180 "<<set $scene.source='event_sex_club_dunk_9'>>">>]
<</if>>
</div>/*#
#desc: dunk event - victory, dunked
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.dunkStyle == "piss">>
<<addItem "breather_mask_piss">>
<<wearItem "breather_mask_piss" true>>
<<else>>
<<addItem "breather_mask_cum">>
<<wearItem "breather_mask_cum" true>>
<</if>>
<<applyExperience $scene.dunkStyle 17 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 17 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
"@@.generic_male1;Let's give a big hand for tonight's winner! You all made <<switch $player.identify_as>><<case 'female'>>her<<case 'male'>>him<<default>>them<</switch>> work for it, but now they've earned their prize!@@"<br>
<br>
You're still teetering and trying to catch your breath when the <<man>> pulls a mask over your face, before you can even react your seat drops out from under you and you go plunging into the pool of <<=$scene.dunkStyle>> below.<br>
<br>
[<<moveTo 'event_sex_club_dunk_11' "What!?" 180>>]
</div>/*#
#desc: dunk event - victory, prize explanation
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
You plunge into the pool of <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>>, initial shock is amped up further when you discover that you are being pulled down, your ankle chains holding you to the bottom of the pool.<br>
<br>
Starting to panic, you gasp for air, discovering that you can breathe through the mask as your exhalation bubbles and churns the <<=$scene.dunkStyle>> around your face as every breath takes effort... and is tinged with the heavy scent and flavour of the liquid you are now submerged in.<br>
<br>
A speaker clicks on in your ear as the booth owner laughs and explains the situation. "@@.generic_male1;Here it is — the "ultimate prize" for a <<=$scene.dunkStyle>>-slut like yourself — an entire world flooded with your lust!@@" <<He>> laughs. "@@.generic_male1;Thanks again for your performance — and for the show you're about to put on now! I'll let you out at the end of the night... but until then, enjoy floating in your depraved wonderland!@@"<br>
<br>
All you can hear is your own pulse throbbing in your ears, chained to the bottom of the pool of <<=$scene.dunkStyle>>, your every sight <<if $scene.dunkStyle == 'piss'>>tinted amber<<else>>blotted out by thick cum<</if>>...<br>
<br>
<<set _midnight = setup.setNextDate($now, 1, 0, 0)>>
<<set _timeToMidnight = setup.secondsToDate($now,_midnight)>>
[<<moveTo 'event_sex_club_dunk_12' "Try to escape." _timeToMidnight "<<set $scene.action='thrash'>>">>]<br>
[<<moveTo 'event_sex_club_dunk_12' "Wait out the night." _timeToMidnight "<<set $scene.action='float'>>">>]<br>
[<<moveTo 'event_sex_club_dunk_12' "Put on a show!" _timeToMidnight "<<set $scene.action='show'>>">>]
</div>/*#
#desc: dunk event - victory, swim
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'thrash'>>
<<applyExperience $scene.dunkStyle 16 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 16 'terrible' $EXPOSED>>
<<case 'float'>>
<<applyExperience $scene.dunkStyle 18 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<case 'show'>>
<<applyExperience $scene.dunkStyle 20 'skip' $EXPOSED>>
<<applyExperience 'humiliation' 20 'terrible' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'thrash'>>
You try to escape, thrashing and attempting to swim upwards to discover that you can barely get your head above the water. Between the sound of splashing and the insulation of the helmet you can't hear what people are saying... but you can guess by the amused expressions as they watch your panicked flailing, the chains repeatedly pulling you under until you give up and sink, your mitted hands useless for removing your restraints or much of anything else...
<<case 'float'>>
You
<<if setup.getTotalValue($scene.dunkStyle) > 10>>
are in heaven, and
<<else>>
may be in hell, but
<</if>>
you relax, floating upward as the chain holding your feet relaxes slightly and you bob along the surface.<br>
<br>
Breathing is a little easier than when you were below, though just as <<=$scene.dunkStyle>>-flavoured as you float in the pool of <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>>.
<<case 'show'>>
You decide to put on a show,
<<if $scene.dunkStyle == 'piss'>>
swimming laps in the golden pool, feeling the tingling warmth on your skin as you twirl underwater like a graceful <<switch $player.identify_as>><<case 'female'>>mermaid<<case 'male'>>merman<<default>>merperson<</switch>>, delighted in your acrid home.
<<else>>
rising to the top of the pool to make cum angels, lifting your mitted hand to let cum drip across your face, <<if setup.getTotalValue($scene.dunkStyle) > 10>>luxuriating in depravity<<else>>succumbing to depravity<</if>> as you float and frolic to the great entertainment of the crowd.
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
After a while you spy another competitor mounting the dunk platform, and you watch as they make a valiant effort... only to splash down a meter or two away when they fail to properly guard the target.<br>
<br>
You can't help but chuckle in amusement at their failures, at their oh-so-brief dips in the pool of <<if $scene.dunkStyle == 'piss'>><<getWordPiss>><<else>><<getWordCum>><</if>>, fished out after mere moments while you get to float on...<br>
<br>
Fully adjusted to breathing through the hose you lose track of time, of the slow rhythm of other failed competitors, the occasional shower when a balloon bursts above your head... you just embrace the moment, and the secret pride at the fact that none of the other competitors come anywhere close to your victory...<br>
<br>
[<<moveTo 'event_sex_club_dunk_13' "Something is pulling you up." 180>>]
</div>/*#
#desc: dunk event - victory, fished out
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "bondage_mitts_black" true>>
<<deleteItem "bondage_mitts_black">>
<<removeItem "ankle_cuffs_steel" true>>
<<deleteItem "ankle_cuffs_steel">>
<<if $scene.dunkStyle == "piss">>
<<removeItem "breather_mask_piss" true>>
<<deleteItem "breather_mask_piss">>
<<else>>
<<removeItem "breather_mask_cum" true>>
<<deleteItem "breather_mask_cum">>
<</if>>
<<set $npc_sex_club.flags.dunk.win[$scene.dunkStyle] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
You realise that the end of the night has finally arrived as you are fished out. Waterlogged and exhausted your mask and restraints are removed as someone hands you a drink.<br>
<br>
You don't even think as you knock it back... to discover that the glass was filled with <<=$scene.dunkStyle>>... <<=$scene.dunkStyle>> that you thirstily finish off as the barker laughs.<br>
<br>
"@@.generic_male1;What a slut! Seldom have I seen someone so depraved and thirsty for <<=$scene.dunkStyle>>! Well I'm glad you enjoyed your prize — maybe come back some other night if you'd like to take another dip!@@"<br>
<br>
A trio of latex-clad escorts appear around you, leading you off to a changing room where they hose you off and pat you dry before leaving you to dress.<br>
<br>
[<<moveTo 'room_foyer' "Change and head home." 600 "<<if $scene.hasOwnProperty('outfit')>><<include 'removesex_clubOutfit'>><<useClothSetPop 'sex_club'>><<elseif !setup.checkOutsideDecency()>><<useClothSetPop 'sex_club'>><</if>>">>]
</div>/*#
#desc: dunk event - repeat available
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dunk Tank">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_tank.png">>
<div id="invframe" class="scrolltext">
You approach the "dunk tank" — this time filled with <<=$scene.dunkStyle>>. The carnival barker managing the booth turns <<his>> attention towards you with a grin.<br>
<br>
[<<moveTo 'event_sex_club_dunk_2' 'Step right up!' 180 "<<set $scene.first=false>>">>]<br>
[<<moveTo 'event_sex_club_play' "Retreat to the play area." 180>>]
</div><<if (State.hasPlayed("event_camgirl_guest_fit_bimbo_1") || _TODOporn) && State.hasPlayed("event_gym_contest_7_win") && !($events.hasOwnProperty("gym_bimbo_club_invite") || State.hasPlayed("event_fit_bimbo_sexclub_invite_1"))>>
<<set _nextDate = setup.setNextDate($now, 2, 0, 0)>>
<<addEvent 'gym_bimbo_club_invite'>>
<</if>>
/%Hard Pump + porn or streaming%//*#
#desc: run into fit_bimbo
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_fit_bimbo") _TODOfitbimbos>>
<div id="invframe" class="scrolltext">
You're heading for the showers and run into <<=setup.getNpcName('npc_fit_bimbo', 'first')>> coming the other direction. She's got the full "Team Plastic" bimbo squad with her, the gyms resident sluts all dressed to impress on their way to work out.<br>
<br>
Spotting you, <<=setup.getNpcName('npc_fit_bimbo', 'first')>> greets you with an excited "@@.npc_fit_bimbo;Hey girlfriend! How's tricks?@@"<br>
<br>
You consider who's asking as you frame your response.<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_invite_2" "Never better!" 180 "<<set $scene.action='great'>>">>]<br>
[<<moveTo "event_fit_bimbo_sexclub_invite_2" "Good... but you're always hustling for more!" 180 "<<set $scene.action='good'>>">>]<br>
[<<moveTo "event_fit_bimbo_sexclub_invite_2" "You really need more cock in your life... and in you." 180 "<<set $scene.action='bad'>>">>]
</div>/*#
#desc: tell fit_bimbo how things are going
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_fit_bimbo") _TODOfitbimbos>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'great'>>
You grin and reply that everything with you is going great!<br>
<br>
"@@.npc_fit_bimbo;Unf! Happy for you... but also, like... totes jelly! Like sure, my days are packed with fun, and my nights are packed with cock, but...@@"
<<case 'good'>>
You reply that you're doing good... but are always pushing to do better!<br>
<br>
"@@.npc_fit_bimbo;You know it, girlfriend! Life's to short to leave empty holes! I wanna be the centre of every room and every orgy... and the same for all my bimbo besties!@@"
<<case 'bad'>>
You reply that you're a bit hard up at the moment.<br>
<br>
"@@.npc_fit_bimbo;I feel ya, fam... but you keep at it. You're Miss Hard Pump! A hot piece of meat like you can't be kept down for long, sooner or later someone is going to see what you're offering up, and give you that good dick you deserve.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_fit_bimbo', 'first')>> pauses, her tone shifting from flirty friend to bimbo business. "@@.npc_fit_bimbo;Maybe, like, you can help meout. See, I feel like I'm hitting a plateau. Like, seeing you working it on-stream, while holding down a day job AND building a Miss Hard Pump body? You really inspire a slut to reach for the stars... and I've been thinking about how to get the word out. Not just for Team Plastic, though I love a new bottom bitch to haze... but just for the whole bimbo fitness in general. I just don't think people appreciate how much getting fit can help you fuck.@@"<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_invite_3" 'Ask if she has considered putting on a show at <<printShopName "sex_club">>?' 180>>]
</div>/*#
#desc: tell fit_bimbo about club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_fit_bimbo") _TODOfitbimbos>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_fit_bimbo', 'first')>> if she has tried spreading the word, or her legs, at <<printShopName "sex_club">>?<br>
<br>
"@@.npc_fit_bimbo;<<printShopName "sex_club">> what's that? Like, the name sounds fun... but... wait, is that that fetish club that closed down?@@"<br>
<br>
You explain that, actually, they're back open, and with them putting on a stage show near every night... maybe <<=setup.getNpcName('npc_fit_bimbo', 'first')>> and her friends could put something together and pull in some new converts? Or at least raise awareness of the virtues of bimbo fitness.<br>
<br>
"@@.npc_fit_bimbo;Hmm... I prefer to think of them as vices, I mean, yeah, I get that virtue has, like... other meanings... but when it's lust versus anything... well, I'm on the team with lust! Anyway, I better hurry along before these bitches get restless, but it was great talking... and maybe I'll see you at the club!@@"<br>
<br>
You reply that you'll look forward to it and watch as the pack continues on, drawing attention with every high-heel, hip-swaying, boob-bouncing step as they strut across the gym.<br>
<br>
[<<moveTo "room_gym_lockerroom_women_post" "Continue to the locker-room." 180>>]
</div>/*#
#desc: first visit with fit_bimbo
#status: RELEASED 0.9.4.0
#ignore_spell: ucated
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main.seen = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_fit_bimbo") _TODOfitbimbos>>
<div id="invframe" class="scrolltext">
You walk up to <<=setup.getNpcName('npc_fit_bimbo', 'first')>>, initially wondering how she and her friends are at the club in their "normaL," if slutty, gym attire... before you get close enough to realise that she somehow managed to reproduce her exact outfit in fetish latex.<br>
<br>
"@@.npc_fit_bimbo;<<=$player.first_name>>!@@" <<=setup.getNpcName('npc_fit_bimbo', 'first')>> states in greeting, "@@.npc_fit_bimbo;<<if State.hasPlayed("event_camgirl_guest_fit_bimbo_1")>>Or maybe it's <<=$player.flags.camgirl.name>> here? <</if>><<if _TODOfitbimboporn>>Or I guess it could be <<=$player.flags.porn.pornname>>... <</if>>You're like, so famous, it's hard to keep track! Anyway... thanks for telling me about this place! Me and the girls are having SUCH a good time, the sights are amazing, the people are great and my ass is already sore in like... two different ways... so yeah, needless to say LOVE IT. I even talked to the owner and <<he npc_sex_club>> said there was actually a last-minute cancellation and we can do a show TO-NIGHT! It's going to be a bit tossed together, but if you'd like to help, well... having such a famous bimbo on stage to help show off the power of bimbo fitness can only help us, and everyone who gets sex-ucated.@@"<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_talk_first_2" "You'd love to help!" 180 "<<set $scene.show=true>>">>]<br>
[<<moveTo "event_fit_bimbo_sexclub_talk_first_2" "Some other night, perhaps." 180 "<<set $scene.show=false>>">>]
</div>/*#
#desc: fit_bimbo mentions show
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_fit_bimbo") _TODOfitbimbos>>
<div id="invframe" class="scrolltext">
<<if $scene.show>>
You reply that you'd love to take part in <<=ps(setup.getNpcName('npc_fit_bimbo', 'first'))>> show and she grins.<br>
<br>
"@@.npc_fit_bimbo;Awesome! You're like, totes the best, and with YOUR star-power? This club isn't gonna know what hit 'em! Come on girls, let's get changed!@@"<br>
<br>
You follow along as the bimbo brigade marches across the floor. Even in a place of debauchery like <<printShopName "sex_club">> it's enough to turn heads... which is a good harbinger for the show, you figure.<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_show_1" "Get ready for the big show." 300>>]
<<else>>
You tell <<=setup.getNpcName('npc_fit_bimbo', 'first')>> that you aren't really ready to be in show tonight.<br>
<br>
"@@.npc_fit_bimbo;Sure, sure, last minute and all... well, me and the girls had better get changed so... I hope you're sticking around, 'cause we'll be hitting the stage soon enough!@@"<br>
<br>
You watch the bimbo brigade march across the floor. Even in a place of debauchery like <<printShopName "sex_club">> it's enough to turn heads... which is a good harbinger for the show, you figure.<br>
<br>
<<include "sexClubLocations">>
<</if>>
</div>/*#
#desc: dress for fit_bimbo show
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<useClothSetPush 'fit_bimbo_show'>>
<<addItem "latex_catsuit_pink">>
<<addItem "hood_latex_pink">>
<<addItem "heelless_ballet_shoes_pink">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Changing Rooms">>
<<initRoom>>
<<include playerMenu>>
<<if setup.checkItemWorn("latex_catsuit_pink") && setup.checkItemWorn("hood_latex_pink") && setup.checkItemWorn("heelless_ballet_shoes_pink")>>
<<moveTo "event_fit_bimbo_sexclub_show_2">>
<</if>>
<<createAdvBGR "./images/locations/sex_club_private.png" setup.charImage("npc_fit_bimbo") _TODOfitbimbos>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_fit_bimbo', 'first')>> leads the way to a back room where a rack of hot pink catsuits and matching stiletto platform stripper-heels are hanging ready.<br>
<br>
"@@.npc_fit_bimbo;Alright my plastic princesses, time to get changed. I know you all spent so much effort on your makeup and hair, but this show is about showing off the exercises, not what fuckable bitches you are, so I want a pink squad of sexy, seamless dolls. The audience should look up and see a squad of interchangeable drones, no fuck-me-looks to distract, just the shrink-wrapped sexiness of the stretching and flexing human form.@@"<br>
<br>
If there's any misgivings about this strategy, they aren't voiced as the girls descend on the rack of catsuits like it's a half off sale, quickly shedding bracelets and bangles to transform themselves into the pink forms that <<=setup.getNpcName('npc_fit_bimbo', 'first')>> requires.<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_fit_bimbo_sexclub_show_2" "Put on your catsuit." 300 '<<wearItem "latex_catsuit_pink" true>><<wearItem "hood_latex_pink" true>><<wearItem "heelless_ballet_shoes_pink" true>>'>>]
<</if>>
</div>/*#
#desc: start fit_bimbo show
#status: RELEASED 0.9.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_fit_bimbo") _TODOpinkdrones>>
<div id="invframe" class="scrolltext">
You take your place with the rest of team plastic to form <<=ps(setup.getNpcName('npc_fit_bimbo', 'first'))>> as she takes a few minutes to arrange everyone by height and listen for <<=setup.getNpcName('npc_sex_club', 'formal')>> to announce the show.<br>
<br>
"@@.npc_sex_club;... and now, put those hands and mitts together... or slap a nearby ass and get ready to enjoy a show of fitness, fashion and fetish!@@"<br>
<br>
<<=setup.getNpcName('npc_fit_bimbo', 'first')>> strides onto the stage with her line of pink performers following after.<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_show_3" "Showtime!" 600>>]
</div>/*#
#desc: participate in fit_bimbo show
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_fit_bimbo") _TODOpinkdrones>>
<div id="invframe" class="scrolltext">
"@@.npc_fit_bimbo;So the first order of business in any exercise routine is flexibility,@@" <<=setup.getNpcName('npc_fit_bimbo', 'first')>> explains as you join the other pink ladies in striking a variety of poses, from a deep squat to standing splits to jack-o posing... to even more lewd knees-to-shoulders spread.<br>
<br>
"@@.npc_fit_bimbo;If you can't get into the position safely, how can you expect to work on stamina or strength?@@" <<=setup.getNpcName('npc_fit_bimbo', 'first')>> narrates as she walks between her pink statues. "@@.npc_fit_bimbo;Form AND function, that's what my program is all about. Being on Team Plastic isn't about just being good, it's about being PERFECT.@@" As she continues to talk she walks past her minions, groping and demonstrating each point in turn. "@@.npc_fit_bimbo;Perfect tits, perfect hips, perfect ass, perfect lass.@@"<br>
<br>
Back in the centre of the stage <<=setup.getNpcName('npc_fit_bimbo', 'first')>> strikes a pose of her own as she moves on to the next part of her presentation.<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_show_4" "Continue." 600>>]
</div>/*#
#desc: show off cardio in fit_bimbo show
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _stam = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stam 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_fit_bimbo") _TODOpinkdrones>>
<div id="invframe" class="scrolltext">
"@@.npc_fit_bimbo;Once you've limbered up, it's time to work that cardio. It doesn't matter how good you look, if you can't go all night long, well... what's the point. That's why, with my bimbo fitness program, we prioritise functional movements that will give you the stamina for what you need...@@"<br>
<br>
As she talks you and the other girls break into a variety of exercises, both conventional in squats, running in place and boob-jiggling jumping jacks, and more "focused" exercises like hip thrusts and twerking.<br>
<br>
"@@.npc_fit_bimbo;Feeling the burn isn't just a phrase, it's a mantra, whether it's straining for that final circuit... or sustaining raging lust, a fit bimbo is ready for it all... and I'm there for that EXTRA,@@" she gives one the girls a loud rubbery slap on the ass that has her booty jiggling, "@@.npc_fit_bimbo;Push to be her bimbo best! Oh...@@" she adds, pointing to the high heels that all of you are wearing, "@@.npc_fit_bimbo;And we get that pump wearing pumps. A bimbo is NEVER out of her heels and under my supervision you'll learn to run, jump... and just lay back and enjoy, with those feet pointed and those legs long and lithe!@@"<br>
<br>
The crowd is definitely engaged now, only for a lone dismissive voice to somehow carry up to the stage from the audience. "@@.generic_female2;Of course they focus on stamina. Bunch of cardio bunnies, probably break in half if they saw a free-weight.@@"<br>
<br>
"@@.npc_fit_bimbo;Why said that?@@" <<=setup.getNpcName('npc_fit_bimbo', 'first')>> asks as the crowd parts to reveal a large dominatrix sneering up at the stage.<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_show_5" "Time for bimbo power!" 600>>]
</div>/*#
#desc: show off strength in fit_bimbo show
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _strength 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_fit_bimbo") _TODOpinkdrones>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_fit_bimbo', 'first')>> smirks as she motions for the dominatrix to come forward. "@@.npc_fit_bimbo;You think my girls are just for show? Psh, we don't just go long, we go hard as well.@@" <<=setup.getNpcName('npc_fit_bimbo', 'first')>> waves you over as the dominatrix mounts the stage.<br>
<br>
The woman looms over you, big and beautiful in leather and spikes, a confident smile as she looks you over. "@@.generic_female2;This thing? I've got dildos bigger than this! She's a toy, I'd break her in half!@@"<br>
<br>
A step-stool appears behind you and <<=setup.getNpcName('npc_fit_bimbo', 'first')>> grins as she has the confident dominatrix step up onto it as she positions you in front. Now at a good angle, you squat down slightly and reach back under the large woman's legs, settling yourself slightly and then rising to your feet.<br>
<br>
"@@.npc_fit_bimbo;How's that for fragile?@@" <<=setup.getNpcName('npc_fit_bimbo', 'first')>> replies as the crowd claps... and then you lower into a squat.<br>
<br>
The woman is heavy... but your PR is far higher, the biggest challenge to adapt to the difference in weight distribution compared to a bar as you go ass-to-grass and then back up once, twice... and then a third time as the crowd goes from applause to full-on cheering.<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_show_6" "Bimbo Power!" 300>>]
</div>/*#
#desc: finish fit_bimbo show
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_fit_bimbo") _TODOpinkdrones>>
<div id="invframe" class="scrolltext">
You carefully let the woman drop back to the floor and she steps aside, nodding and clapping politely in acknowledgement as you flex in triumph as the crowd continues its cheers.<br>
<br>
"@@.npc_fit_bimbo;And there you have it! Whatever the challenge, bimbo fitness is ready to power through, so if you want to take your sex to the next level, to be able to fuck hard, in EVERY position... then come check us out at the Hard Pump Gym... Team Plastic wants YOU!@@"<br>
<br>
You're still flexing as the rest of your pink-clad cohorts arrange around you for a closing pose that would have the crowd on their feet if they weren't standing already. As it is you get nearly a minute of cheers before the curtain falls and you hear <<=setup.getNpcName('npc_sex_club', 'formal')>> wrap things up.<br>
<br>
"@@.npc_sex_club;Such a show! And if you want a third-party review, well... I went several rounds with your leading lady earlier this evening... and as you can see she was still fresh and full of energy... though I may need to hit some classes because my hips are still tired!@@"<br>
<br>
The crowd laughs as you and the rest of Team Plastic share in excitement at a presentation well done.<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_show_7" "Get changed." 300>>]
</div>/*#
#desc: change after fit_bimbo show
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'fit_bimbo_show'>>
<<set $scene.sex_club_info.play.id = "">>
<<removeEvent "sex_club_event">>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_fit_bimbo") _TODOfitbimbos>>
<div id="invframe" class="scrolltext">
"@@.npc_fit_bimbo;Thanks again,@@" <<=setup.getNpcName('npc_fit_bimbo', 'first')>> states as you and some of the other bimbos slip out of your catsuits and back into your club attire.<br>
<br>
<<=setup.getNpcName('npc_fit_bimbo', 'first')>> grins, "@@.npc_fit_bimbo;Looks like a few of your girls are embracing the pure pink... well you have fun out there!@@" She states with a grin as a trio of pink latex hotties bow and scamper off in the direction of the play area. "@@.npc_fit_bimbo;As for the rest of us... well, the night is young... and I'm in the mood for sex!@@"<br>
<br>
"@@.generic_female2;Aren't you, like... always in the mood for sex?@@" One of her friends asks in response.<br>
<br>
"@@.npc_fit_bimbo;No...@@" replies before finishing up with a smirking "@@.npc_fit_bimbo;Sometimes I'm in the mood for MORE SEX!@@"<br>
<br>
Laughter and cheers voice assent to this statement of philosophy and the rest of Team Bimbo heads back out to the club... though, at least after the show everyone should know what they're in for if they take one of the bubbly bimbos home for the night.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: watch fit_bimbo show
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<<set $scene.sex_club_info.play.id = "">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_fit_bimbo") _TODOpinkdrones>>
<div id="invframe" class="scrolltext">
You watch as <<=setup.getNpcName('npc_fit_bimbo', 'first')>>, and a backing squad of nearly half a dozen pink-catsuited bimbos, put on a show of fitness. <<=setup.getNpcName('npc_fit_bimbo', 'first')>> extols the cross-over benefits of fitness in general, and her "fit bimbo" program in particular for its bedroom potential.<br>
<br>
Jiggling buts, bouncing tits and fuck-me flexibility is the order of the day as <<=setup.getNpcName('npc_fit_bimbo', 'first')>> has her pink minions show off a variety of poses and exercises and finishing off by inviting the crowd to check out the performers in the play area to "test out" their capabilities.<br>
<br>
You join in with applause and glance around the audience, the show has certainly inspired lust... but you can also see more than a few club-goers looking on with genuine interest, recruits in the making for Team Plastic.<br>
<br>
<<=setup.getNpcName('npc_fit_bimbo', 'first')>> and her girls head for the play area, with quite a few club-goers in tow, with the rest of the audience scattering as the normal club activities resume.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: visit with fit bimbo at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main.seen = true>>
<<if !$scene.sex_club_info.hasOwnProperty("event")>>
<<set $scene.sex_club_info.event = "event_fit_bimbo_sexclub_show_watch_1">>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" "./images/characters/fit_bimbo.png">>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_fit_bimbo", "first")>> and Team Plastic and <<=setup.getNpcName("npc_fit_bimbo", "first")>> greets you with a smile and an enthusiastic hug "@@.npc_fit_bimbo;<<if _TODOfitbimboporn>><<=$player.flags.porn.pornname>><<elseif State.hasPlayed("event_camgirl_guest_fit_bimbo_1")>><<=$player.flags.camgirl.name>><</if>>! So hawt to see you here tonight!@@"<br>
<br>
<<include "sexClubfit_bimboTopics">>
</div><<if $scene.sex_club_info.main.doing>>
[@@.link_locked;You have already asked what she is doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_fit_bimbo_talk" "Ask what she's doing here this evening." 60 "<<set $scene.topic='doing'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.main.work>>
[@@.link_locked;You have already asked how her work was doing.@@]<br>
<<else>>
[<<moveTo "event_sex_club_fit_bimbo_talk" "Ask how work is going?" 60 "<<set $scene.topic='work'>>">>]<br>
<</if>>
<<if $scene.sex_club_info.main.show>>
[@@.link_locked;You have already talked to <<=setup.getNpcName("npc_fit_bimbo", "first")>> about Team Plastic show tonight.@@]<br>
<<else>>
[<<moveTo "event_sex_club_fit_bimbo_talk" "Ask about joining tonight's show." 60 "<<set $scene.topic='show'>>">>]<br>
<</if>>
<br>
<<include "sexClubLocations">>/*#
#desc: talk with npc_fit_bimbo at sex club
#status: RELEASED 0.9.4.0
#ignore_spell: watchin',s,stretchin',suckin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main[$scene.topic] = true>>
<<set $npc_fit_bimbo.flags.topics[$scene.topic] = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" "./images/characters/fit_bimbo.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'doing'>>
You ask what <<=setup.getNpcName("npc_fit_bimbo", "first")>> is up to tonight?<br>
<br>
"@@.npc_fit_bimbo;Oh the usual. Enjoying the sights, suckin' some poles and stretchin' some holes!@@"<br>
<br>
Her entourage laughs along at the joke.<br>
<br>
<<if $scene.showAvailable>>
"@@.npc_fit_bimbo;Actually, though, we're just hanging out a bit enjoying the vibe before our show later this evening.@@"<br>
<br>
She looks you over.
<<if setup.calcBreastSize() == "massive">>
<<set _hidechoices = true>>
"@@.npc_fit_bimbo;Say, you're looking stacked and racked... you interested in joining the show?@@"
[<<moveTo "event_sex_club_fit_bimbo_talk" "Heck yes you want to join the show!" 60 "<<set $scene.topic='show'>>">>]<br>
[<<moveTo "event_sex_club_fit_bimbo_talk" "Not tonight." 60 "<<set $scene.topic='show_no'>>">>]<br>
<<else>>
"@@.npc_fit_bimbo;I'd ask you to join... but
<<switch setup.calcBreastSize()>>
<<case 'large'>>
being a bimbo is all about excess, you're big but, well...
<<case 'medium'>>
being a bimbo is all about excess, you're looking good by normal standards but, well... we're not normal, and
<<case 'small'>>
you're looking a bit small, and not the way the swole<<=$npc_swolebro.bro>>s are always going on, I mean small in the chest,
<<case 'none'>>
you're, well... a bit flat,
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
it's that wiggle and jiggle that keeps the audience watchin'!@@"
<</if>>
<<else>>
"@@.npc_fit_bimbo;Just hanging out tonight... well, until we find some hot dick to jump on. I think we may need to split up, this munch concentrated energy seems to be too intimidating...@@"<br>
<br>
You nod, Team Plastic does seem to own any room they're in... even one as sex-charge as this.
<</if>>
<<case 'show'>>
<<set _hidechoices = true>>
You reply that you'd love to join <<=setup.getNpcName("npc_fit_bimbo", "first")>> and the rest of Team Plastic for a stage show.<br>
<br>
"@@.npc_fit_bimbo;Totes fab! It was going to be a good show, but with the star power of a reigning Miss Hard Pump? This club isn't gonna know what hit 'em! Come on girls, let's get changed!@@"<br>
<br>
You follow along as the bimbo brigade marches across the floor. Even in a place of debauchery like <<printShopName "sex_club">> it's enough to turn heads... which is a good harbinger for the show, you figure.<br>
<br>
[<<moveTo "event_fit_bimbo_sexclub_show_1" "Get ready for the big show." 300>>]
<<case 'show_no'>>
You turn down <<=ps(setup.getNpcName("npc_fit_bimbo", "first"))>> offer to join her and Team Plastic for their show tonight. She shrugs, "@@.npc_fit_bimbo;Maybe some other time, we gotta keep pimping out Bimbo Fitness!@@"
<<case 'work'>>
You ask <<=setup.getNpcName("npc_fit_bimbo", "first")>> how goes the hustle?<br>
<br>
She grins. "@@.npc_fit_bimbo;Always on that grind!@@"<br>
<br>
"@@.generic_female1;Team Plastic never stop!@@" The other girls cheer, attracting a bit of attention from some nearby club-goers... attention returned with winks, blown kisses and mouthed "call me's." <br>
<br>
"@@.npc_fit_bimbo;That's right! Finding out about this place has really opened some new doors, and energised me to really push bimbo fitness to the next level! Bigger and better, that's where it's at... and not just breasts and booty!@@"
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<<if !_hidechoices>>
<br><br>
<<include "sexClubfit_bimboTopics">>
<</if>>
</div>/*#
#desc: sex club show: botanist and plant intro
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearSexClubEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_botanist")>>
<div id="invframe" class="scrolltext">
You turn towards the stage and the still-lowered curtain as <<=setup.getNpcName('npc_botanist', 'first')>> steps forth.<br>
<br>
"@@.npc_botanist;Welcome, friends! My name is <<=setup.getNpcName('npc_botanist', 'full_formal')>> and I'm here tonight for education... and a little fun.@@" She winks at the audience who seem far more interested in the latter than the former, but, for the moment, are watching on.<br>
<br>
"@@.npc_botanist;I am a botanist by trade, and more than that, a lover of plants. Plants are such wonderful things, beautiful, diverse, and with so, so many uses. Obviously there is construction and food and producing oxygen and regulating the climate but, tonight, I want to dig in to some of the more... "fun" uses.@@"<br>
<br>
She gives a beat to let anticipation heighten, moving across the stage as the audience pays closer attention. "@@.npc_botanist;Now I could point out the myriad plant-derived toys: from rattan sticks to wood for a Saint Andrews Cross, natural lubricants, and who could forget latex! But tonight, well... tonight I have something more... immediately entertaining.@@"<br>
<br>
[<<moveTo "event_botanist_club_2" 'At a silent signal, the curtain rises...' 300>>]
</div>/*#
#desc: sex club show: botanist and plant plant appears
#status: RELEASED 0.9.3.0
#ignore_spell: tentāculum,sexus
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_botanist") _TODOplant setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
The curtain rises to reveal <<=setup.getNpcName('npc_botanist_assistant', 'first')>>... suspended and writhing above the stage in the clutches of a large tentacle plant.<br>
<br>
"@@.npc_botanist;Give a hand to my lovely assistant... and one of my larger specimens!@@"<br>
<br>
The audience cheers, the noise prompting the plant to flex its vines, tentacle-like stalks thrusting in and out of all three of <<=ps(setup.getNpcName('npc_botanist_assistant', 'first'))>> holes as she moans lustily, her body dripping with sweat and excitement as <<=setup.getNpcName('npc_botanist', 'first')>> move closer.<br>
<br>
Gently turning away an exploratory tentacle, <<=setup.getNpcName('npc_botanist', 'first')>> smiles and continues her lecture. "@@.npc_botanist;This plant, one of genus Tentāculum Sexus, has taken a very interesting evolutionary path. Much like the various carnivorous plants who supplement nutrient-poor soil, the plants of Tentāculum Sexus have adapted to feed on the sexual emissions of animals.... including, as you see, humans. Over many hundreds of thousands of years, and aided by some clever breeding by myself and others, these adaptations have grown to provide all manner of pleasure as, after all, an animal that enjoys its "feeding" is more likely to return for more in a symbiotic exchange.@@"<br>
<br>
As she speaks, <<=setup.getNpcName('npc_botanist', 'first')>> slowly walks around the large plant and her in-the-midst-of-being-fucked assistant, her gesturing hand drawing attention not just to the thick, lubricated stalks that have <<=setup.getNpcName('npc_botanist_assistant', 'first')>> airtight, but the various tendrils safely keeping her bound and suspended, as well as the slightly different sucker-tipped tentacles suckling at her breasts.<br>
<br>
"@@.npc_botanist;A fully grown specimen such as this can feed for hours at a time, potentially on a small pack of animals, and, well... how about you hear it straight from my assistant?@@"<br>
<br>
With a skilled hand, <<=setup.getNpcName('npc_botanist', 'first')>> gently extracts the tentacle that had been bulging <<=ps(setup.getNpcName('npc_botanist_assistant', 'first'))>> throat. "@@.npc_botanist;Enjoying yourself?@@"<br>
<br>
"@@.npc_botanist_assistant;Yessss,@@" <<=setup.getNpcName('npc_botanist_assistant', 'first')>> replies with a moan that turns into a howling orgasm, her vocalisation only cut off when she resumes eagerly sucking on another tentacle, nectar dribbling down her chin.<br>
<br>
The ecstatic display has the crowd on their proverbial feet as they cheer in appreciation.<br>
<br>
[<<moveTo "event_botanist_club_3" 'Join in on the applause.' 300>>]
</div>/*#
#desc: sex club show: botanist and plant sex
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_botanist") _TODOplant setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_botanist', 'first')>> gives a few moments for the applause to die down, which takes some time as <<=setup.getNpcName('npc_botanist_assistant', 'first')>> cums a second time as either she, or the plant, acts further energised by the attention. "@@.npc_botanist;Obviously a plant of this size is a bit more than anyone who did not have a live-in harem would have the... capacity to care for, which is why I have been working on selective breeding for dwarf, home-sized species so that the intrepid plant-paramour can enjoy similar fun in a more pint-sized package.@@"<br>
<br>
A club employee rolls a tray onto the stage, upon which rests a plant reminiscent of <<=setup.getNpcName('npc_chuck', 'suffix')>> in one of <<his npc_chuck>> earlier stages of growth, the plan just having sprouted its first phallic stalk.<br>
<br>
"@@.npc_botanist;My assistant remains engaged... could I get a volunteer to help demonstrate?@@" She asks, gently stroking... or is that stroking off? the plant as she scans the audience.<br>
<br>
[<<moveTo "event_botanist_club_4_volunteer" 'Volunteer.' 900>>]<br>
[<<moveTo "event_botanist_club_4_watch" 'Let someone else have a go.' 900>>]
</div>/*#
#desc: sex club show: botanist and plant volunteer
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<<applyExperience 'oral' 10 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 17 'terrible' $EXPOSED>>
<<playerOrgasm>>
<<include "checkCeoInviteEvent">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_botanist") _TODOplant setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
You excitedly hop up on stage <<=setup.getNpcName('npc_botanist', 'first')>> smiles in greeting. "@@.npc_botanist;Well, well! I promise this is not a plant, pun intended, but here we have one of my OTHER assistants... and a proud caretaker of a slightly larger breed of the plant before us.@@"<br>
<br>
<<=setup.getNpcName('npc_botanist', 'first')>> motions for you to get to work and you confidently start blowing the <<=setup.getNpcName('npc_chuck', 'suffix')>>-alike. You haven't been sucking for long when you're surprised by a touch from behind, glancing over your shoulder to see that the larger plant has taken an interest, tentacle-tendrils reaching out and starting to entwine around your body.<br>
<br>
"@@.npc_botanist;Looks like someone else wants in on the fun! If anyone else wishes to join, well... I'm sure our leafy friend here would appreciate the company!@@"<br>
<br>
By the time the plant has you suspended next to <<=setup.getNpcName('npc_botanist_assistant', 'first')>> half a dozen other volunteers have stepped up, and soon there is a full-on tentacle orgy going on.<br>
<br>
<<=setup.getNpcName('npc_botanist_assistant', 'first')>> remains at the centre of things as you, and those after you are systematically satisfied, and then set aside as the "show" turns into more of a side entertainment for those who wish to partake.<br>
<br>
You watch for a few minutes more and, after waving good-bye to your two botanist friends, turn back to the club.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club show: botanist and plant watch
#status: RELEASED 0.9.3.0
#ignore_spell: fellatist
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.volunteer>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<<applyExperience 'oral' 10 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 17 'terrible' $EXPOSED>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Stage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_stage.png" setup.charImage("npc_botanist") _TODOplant setup.charImage("npc_botanist_assistant")>>
<div id="invframe" class="scrolltext">
You decide to let someone else have a turn, and you watch as another club-goer steps up on stage and blows the small plant. The look of pleasure on the plant-fellatist tells you that this plant must produce a similar tasty nectar to what you know and love from <<=setup.getNpcName('npc_chuck', 'first')>>, a smile of pleasure wrapped around the plant's twitching stalk... until its friend begins to take an interest in things from the other end.<br>
<br>
The audience cheers as several tentacles reach out in invitation, and soon the "volunteer" is rising up into suspension next to <<=setup.getNpcName('npc_botanist_assistant', 'first')>>.<br>
<br>
"@@.npc_botanist;Looks like someone else wants in on the fun! If anyone else wishes to join, well... I'm sure our leafy friend here would appreciate the company!@@"<br>
<br>
Within minutes a full-on tentacle orgy is happening on-stage, <<=setup.getNpcName('npc_botanist_assistant', 'first')>> remaining at the centre of things as adventurous club-goers are systematically satisfied, and then set aside as the "show" turns into more of a side entertainment for those who wish to partake.<br>
<br>
You watch for a few minutes more and, after waving good-bye to your two botanist friends, turn back to the club.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: sex club talk about rachel
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
You ask <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> about <<=setup.getNpcName("npc_rachel","first")>> and <<he npc_sex_club>> slaps <<his npc_sex_club>> head. "@@.npc_sex_club;Ach! This reminds me. You mention <<=setup.getNpcName("npc_rachel","first")>>, and I recall your employer, yah? Well... <<=setup.getNpcName("npc_rachel","first")>> somehow heard about that 9001-series device your company is making. Yes, yes, I realise it is supposed to be some secret hush-hush project... but now that <<=setup.getNpcName("npc_rachel","first")>> aware... it not shut up about wanting one. Even when I tell it I can do nothing, and respond to further pestering with a massive gag... still <<=setup.getNpcName("npc_rachel","first")>> persist! Sort of like that mechanical bunny, yes? Pink, cute, unstoppable!@@"<br>
<br>
<<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> shakes <<his npc_sex_club>> head, clearly both amused, and a touch exasperated. "@@.npc_sex_club;I suppose gag not exactly perfect deterrent for one such as that... but I digress. My contacts within your company are... not what they once were, but I just put together... perhaps might have a friend who could put <<=setup.getNpcName("npc_rachel","first")>> on some sort of early access list? Or, maybe early no-access, given we are talking of chastity... either way, would you be willing to speak with <<=setup.getNpcName("npc_rachel","first")>> about it?@@"<br>
<br>
[<<moveTo "event_rachel_9001_intro_2" 'Sure, you can talk to <<=setup.getNpcName("npc_rachel","first")>>... are they here tonight?' 120>>]<br>
[<<moveTo "event_rachel_9001_intro_abort" "You don't think you can help." 60>>]
</div>/*#
#desc: npc_sex_club, decline to help rachel
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
You tell <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> that you don't think you can help.<br>
<br>
"@@.npc_sex_club;Ack! Well, I suppose its keeping that begging mouth-hole stuffed with gags or cocks... not that <<=setup.getNpcName("npc_rachel","first")>> mind, mmm? Do please ask around and think about it, though, and if you have a lead, you speak with me again, jah?@@"<br>
<br>
<<include "sexClubOwnerTopics">>
</div>/*#
#desc: npc_sex_club agree to help rachel
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
You reply that you're willing to at least talk with <<=setup.getNpcName("npc_rachel","first")>>... and are they here tonight?<br>
<br>
"@@.npc_sex_club;Are they here! Hah!@@" <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> states with a laugh, "@@.npc_sex_club;When are they not here, is the better question. That thing is one of those insatiable fetish sluts, always looking for another partner to play with and debase it. If I open, it basically a guarantee it here... well, unless it has been auctioned off and taken home. You go check out the play area. I saw it getting the double anal a little while ago, it probably still there, if you hurry.@@"<br>
<br>
[<<moveTo "event_rachel_9001_intro_3" 'Go find <<=setup.getNpcName("npc_rachel","first")>>.' 180>>]
</div>/*#
#desc: find rachel at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_rachel","npc_rachel_club")>>
<div id="invframe" class="scrolltext">
You say good-night to <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> and head for the club's public play area. As usual, there are a number of exciting and enticing scenes going on, but you are quickly able to find <<=setup.getNpcName("npc_rachel","first")>> just as <<if $scene.sex_club_info.owner.dom>><<=setup.getNpcName("npc_sex_club","formal")>><<else>><<=setup.getNpcName("npc_sex_club","nickname")>><</if>> described, locked in a set of stocks, with two well-hung <<men>> arranged over and behind her, double-pounding her <<if $fetish.sissy>>sissy<<else>>rear<</if>> hole.<br>
<br>
From her drooling, cum-drunk expression as she licks another patrons cunt<<if $fetish.cum>>, and the pool of drips forming below <<=ps(setup.getNpcName("npc_rachel","first"))>>'s chastity cage,<</if>> it is clear that <<=setup.getNpcName("npc_rachel","first")>> is very much enjoying her evening.<br>
<br>
As you watch the woman in front of <<=setup.getNpcName("npc_rachel","first")>> suddenly clenches her hold on <<=ps(setup.getNpcName("npc_rachel","first"))>> hair, the woman's legs going wobbly as she moans and shudders in what is clearly a powerful orgasm<<if $fetish.cum>>... powerful, and gushing, as she squirts all over the bound <<if $fetish.sissy>>sissy's<<else>>slut's<</if>> face<</if>> before pulling away and catching her breath.<br>
<br>
Rather than express gratitude for the obvious pleasure, the woman steps back and lands a slap across <<=ps(setup.getNpcName("npc_rachel","first"))>> face... though the blow does nothing to impact the submissive's wide-eyed enthusiasm... if anything it might have increased it. "@@.generic_female2;I told you to take your time, you hussy!@@" The woman scolds.<br>
<br>
"@@.npc_rachel;<<if $fetish.sissy>>Sissy<<else>>Unit<</if>> rachel...@@" <<=setup.getNpcName("npc_rachel","first")>> moans suddenly as one of the cocks in her ass slams particularly deep "@@.npc_rachel;... apologises if its efforts were not to preference, but it will not hold back with its skills. Perhaps you should should train to increase your pleasure threshold... or surrender to being a multi-orgasmic pleasure-slut?@@"<br>
<br>
The woman snorts and attempts to storm away... but the post-orgasmic leg weakness has her instead struggle in too-tall heels.<br>
<br>
You watch as rachel licks her lips and looks around for her next "meal." <br>
<br>
<<printThought "Guess this passes for my opportunity...">><br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_rachel_9001_intro_4" 'Step in front of <<=setup.getNpcName("npc_rachel","first")>>... and have her lick your <<=setup.getItemTypeName("cage")>>.' 300>>]
<<else>>
<<if $player.body_ref.penis>>
[<<moveTo "event_rachel_9001_intro_4" 'Step in front of <<=setup.getNpcName("npc_rachel","first")>>... and have her suck you off.' 300 "<<set $scene.penis=true>>">>]
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_rachel_9001_intro_4" 'Step in front of <<=setup.getNpcName("npc_rachel","first")>>... and have her eat you out.' 300 "<<set $scene.penis=false>>">>]
<</if>>
<</if>>
[<<moveTo "event_rachel_9001_intro_4_abort" 'Wander off.' 300>>]
</div>/*#
#desc: walk away from rachel
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_rachel","npc_rachel_club")>>
<div id="invframe" class="scrolltext">
You decide to leave <<=setup.getNpcName("npc_rachel","first")>> to her fun and do something else.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: talk to rachel at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_rachel","npc_rachel_club")>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
You approach <<=setup.getNpcName("npc_rachel","first")>> and she immediately smiles up at you with her mouth open and tongue extended in invitation... only for her jaw to drop even further as you reveal your <<=setup.getItemTypeName("cage")>>.<br>
<br>
"@@.npc_rachel;Is that a 9001-series chastity device?!@@" <<=setup.getNpcName("npc_rachel","first")>> asks with giddy excitement, "@@.npc_rachel;Oh, it looks so tight and sleek and secure! With the size-adjusting polymers,<<if $fetish.sounding>> and it has the urethral insert, yes?<</if>> And the full remote tracking and control? Please, turn around, I want to see the rear plug!@@"<br>
<br>
You do as requested and <<=setup.getNpcName("npc_rachel","first")>> continues to gush with excitement "@@.npc_rachel;Oh! It is perfection! This <<if $fetish.sissy>>sissy<<else>>slut<</if>> needs to be locked like that! To have its rear constantly stretched and gaped... to feel forever imprisoned in the ultimate in permanent chastity! Please, you must tell <<=setup.getNpcName("npc_rachel","first")>> where you obtain this perfection of a device! But let rachel worship while you do!@@"<br>
<br>
<<printThought '<<=setup.getNpcName("npc_sex_club","formal")>> did warn me about <<=ps(setup.getNpcName("npc_rachel","first"))>> enthusiasm...'>><br>
<br>
<<if setup.checkItemInInventory("sissyomatic") && setup.getItemFromType("cage") != "sissyomatic" || setup.checkItemInInventory("sissyomatic_technician")>>
[<<moveTo "event_rachel_9001_intro_5" 'Tell her that, actually, you have a spare <<=setup.getItemName("sissyomatic")>> on you...' 120 "<<set $scene.action='offer'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_work_doctor_help_lab_4_sissyomatic_2") || State.hasPlayed("event_print_technician_sissyomatic_1")>>
[<<moveTo "event_rachel_9001_intro_5" 'Tell her you could probably print her up a <<=setup.getItemName("sissyomatic")>>.' 120 "<<set $scene.action='print'>>">>]<br>
<</if>>
[<<moveTo "event_rachel_9001_intro_5" 'Tell her you work for Social Interaction Service Syndicate Inc. and were locked by the company.' 120 "<<set $scene.action='company'>>">>]
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
You step in front of <<=setup.getNpcName("npc_rachel","first")>> and she eagerly begins tongue-polishing your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>.<br>
<br>
"@@.npc_rachel;You look beautiful in chastity... <<=setup.getNpcName("npc_rachel","first")>> is locked as well, as it proper for an owned <<if $fetish.sissy>>sissy <</if>>thing... though <<=setup.getNpcName("npc_rachel","first")>> dreams of being even more secure. Have you heard of something called a <<=setup.getItemName("sissyomatic")>>? This thing has heard rumours and it is desperate to find out if they are true.@@"
<<else>>
<<if $scene.penis>>
You step in front of <<=setup.getNpcName("npc_rachel","first")>> and she eagerly begins sucking your <<getWordMyPenis>>,
<<switch $player.body.penissize[0]>>
<<case 0 1>>
seemingly infatuated with your small member as she licks and kisses.
<<case 2 3>>
eagerly deep-throating and sucking away with glee.
<<case 4 5>>
having no difficulties deep-throating you and sucking happily.
<<case 6>>
drooling with anticipation as she throats you massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>mythical <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
"@@.npc_rachel;Mmmm, you taste delicious. This set of holes exists to service cock, and to remain locked itself.@@" <<=setup.getNpcName("npc_rachel","first")>> continues to suck
<<else>>
You step in front of <<=setup.getNpcName("npc_rachel","first")>> and she eagerly begins eating you out, showing impressive skill with tongue and lips.<br>
<br>
"@@.npc_rachel;Mmmm, you taste delicious. This set of holes exists to serve, and to remain locked itself.@@" <<=setup.getNpcName("npc_rachel","first")>> continues to lick
<</if>>
as it looks up at you.<br>
<br>
"@@.npc_rachel;This <<if $fetish.sissy>>sissy <</if>>object yearns for even greater security... have you ever heard of a <<=setup.getItemName("sissyomatic")>>? This thing has heard rumours and it is desperate to find out if they are true.@@"
<</if>>
<br><br>
<<if setup.checkItemInInventory("sissyomatic") && setup.getItemFromType("cage") != "sissyomatic" || setup.checkItemInInventory("sissyomatic_technician")>>
[<<moveTo "event_rachel_9001_intro_5" 'Tell her that, you have a spare <<=setup.getItemName("sissyomatic")>> with you.' 120 "<<set $scene.action='offer'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_work_doctor_help_lab_4_sissyomatic_2") || State.hasPlayed("event_print_technician_sissyomatic_1")>>
[<<moveTo "event_rachel_9001_intro_5" 'Tell her you could probably print her up a <<=setup.getItemName("sissyomatic")>>.' 120 "<<set $scene.action='print'>>">>]<br>
<</if>>
[<<moveTo "event_rachel_9001_intro_5" 'Tell her you work for Social Interaction Service Syndicate Inc. and may be able to get her a <<=setup.getItemName("sissyomatic")>>.' 120 "<<set $scene.action='company_help'>>">>]<br>
[<<moveTo "event_rachel_9001_intro_5" 'Tell her to shut up and work.' 120 "<<set $scene.action='work'>>">>]
<</if>>
</div>/*#
#desc: offer chastity to rachel
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == 'work'>>
<<if !setup.checkItemTypeWorn("cage")>>
<<playerOrgasm>>
<</if>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_rachel","npc_rachel_club")>>
<div id="invframe" class="scrolltext">
You turn around and let <<=setup.getNpcName("npc_rachel","first")>> passionately kiss and polish your chastity <<if setup.isCage()>>cage<<else>>shield<</if>> with her tongue as you
<<switch $scene.action>>
<<case 'offer'>>
explain that you actually have a spare <<=setup.getItemName("sissyomatic")>> you could give her right now...<br>
<br>
"@@.npc_rachel;If you do not jest, surely that is the most heavenly of offers... but no. <<=setup.getNpcName("npc_rachel","first")>> wishes for the ULTIMATE in permanent chastity and control, and for that it knows that a <<=setup.getItemName("sissyomatic")>> must be precisely built to its wearers unique body specifications. If you could somehow get <<=setup.getNpcName("npc_rachel","first")>> into a lab, with a suitably skilled technician to make all the measurements and ensure that <<=setup.getNpcName("npc_rachel","first")>> is utterly controlled... could you do this for <<=setup.getNpcName("npc_rachel","first")>>? It would be grateful for as long as it remained locked, which should, of course, be forever...@@"
<<case 'print'>>
tell her that you have access to one of the company labs where such devices are printed.<br>
<br>
"@@.npc_rachel;Ah! How fortunate you are to have access to the means to produce perfection... only for maximum security a <<=setup.getItemName("sissyomatic")>> must be precisely built to its wearer's unique body specifications. If you could somehow get <<=setup.getNpcName("npc_rachel","first")>> into a lab, with a suitably skilled technician to make all the measurements and ensure that <<=setup.getNpcName("npc_rachel","first")>> is utterly controlled... could you do this for <<=setup.getNpcName("npc_rachel","first")>>? It would be grateful for as long as it remained locked, which should, of course, be forever...@@"
<<case 'company'>>
tell her that you work for Social Interaction Service Syndicate Inc. and have been locked as part of your professional responsibilities.<br>
<br>
"@@.npc_rachel;Such fortune! And such brilliant corporate policy. Alas, <<=setup.getNpcName("npc_rachel","first")>> has contracted itself into objectifying slavery and is unable to apply to work for your divine company. Perhaps you might know someone at the company who could help? Who could somehow get <<=setup.getNpcName("npc_rachel","first")>> into a lab, with a suitably skilled technician to make all the measurements and ensure that <<=setup.getNpcName("npc_rachel","first")>> is utterly controlled... could you do this for <<=setup.getNpcName("npc_rachel","first")>>? It would be grateful for as long as it remained locked, which should, of course, be forever...@@"
<<case 'company_help'>>
tell her that you work for Social Interaction Service Syndicate Inc. and may be able to help her get locked in a <<=setup.getItemName("sissyomatic")>>.<br>
<br>
"@@.npc_rachel;Please! Oh, please grant this pathetic thing's dream and lock it up forever! <<=setup.getNpcName("npc_rachel","first")>> is blessed and cursed with having contracted itself into objectifying slavery and is unable to apply to work for your divine company. But you know someone who could help? Who could somehow get <<=setup.getNpcName("npc_rachel","first")>> into a lab, with a suitably skilled technician to make all the measurements and ensure that <<=setup.getNpcName("npc_rachel","first")>> is utterly controlled... could you do this for <<=setup.getNpcName("npc_rachel","first")>>? It would be grateful for as long as it remained locked, which would, of course, be forever...@@"
<<case 'work'>>
You tell <<=setup.getNpcName("npc_rachel","first")>> to shut up and work. She moans submissively and does exactly that without further comment or complaint,
<<if setup.checkItemTypeWorn("cage")>>
polishing your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> until
<<else>>
<<if $scene.penis>>
sucks you to completion, a real human vacuum of a cock-sucker that drains your balls in near record time<<if $fetish.cum && $player.body_ref.cumProduction>>, licking up every drop with an eager smile<</if>>.
<<else>>
licks you to a rapid orgasm, tongue moving with the speed of a of human vibrator as your knees get weak and you reflect on the previous customer's comments.
<</if>>
As <<=setup.getNpcName("npc_rachel","first")>> licks you clean and you recover from the swift, powerful orgasm
<</if>>
someone bumps up behind you sporting a raging erection and looking to take their turn.
<br><br>
You step away and leave <<=setup.getNpcName("npc_rachel","first")>> to her night's fun.<br>
<br>
<<include "sexClubLocations">>
<<default>>
ERROR: unexpected
<</switch>>
<<if $scene.action != 'work'>>
<br><br>
<<=setup.getNpcName("npc_rachel","first")>> continues to passionately
<<if setup.checkItemTypeWorn("cage")>>
lick, polish, and worship the front of your <<=setup.getItemTypeName("cage")>>
<<elseif $player.body_ref.penis>>
deep-throat your <<getWordMyPenis>>
<<else>>
lick your clit
<</if>>
as she awaits your response. She looks up at you with pleading eyes as her body shudders with every thrust as she continues to get double-railed on the far side of her stockades.<br>
<br>
[<<moveTo "event_rachel_9001_intro_6" "You will see what you can do." 180>>]
<</if>>
</div>/*#
#desc: tell rachel you'll help
#status: RELEASED 0.9.4.0
#ignore_spell: qr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("cage")>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_rachel","npc_rachel_club")>>
<div id="invframe" class="scrolltext">
You reply that you will have to check with your contacts at the company.<br>
<br>
"@@.npc_rachel;Yes, please! <<=setup.getNpcName("npc_rachel","first")>> begs you to lock its worthless <<if $fetish.sissy>>sissy <</if>>thing away forever. You may find <<=ps(setup.getNpcName("npc_rachel","first"))>> contact information on <<=ps(setup.getNpcName("npc_rachel","first"))>> <<if $fetish.sissy>>Sissy<<else>>Slave<</if>>book profile, the link is in the QR code that is <<=ps(setup.getNpcName("npc_rachel","first"))>> tramp stamp.@@"<br>
<br>
You time things around the <<men>> still double-railing <<=setup.getNpcName("npc_rachel","first")>> and snap a picture, replying that you will do what you
<<if !setup.checkItemTypeWorn("cage")>>
can.<br>
<br>
Seemingly energised by this agreement, <<=setup.getNpcName("npc_rachel","first")>> returns to its original task with gusto,
<<if $scene.penis>>
sucking you to completion, a real human vacuum of a cock-sucker that drains your balls in near record time<<if $fetish.cum && $player.body_ref.cumProduction>>, licking up every drop with an eager smile<</if>>.
<<else>>
licking you to a rapid orgasm, tongue moving with the speed of a of human vibrator as your knees get weak and you reflect on the previous customer's comments.
<</if>>
<<=setup.getNpcName("npc_rachel","first")>> licks you clean as you recover from the swift, powerful orgasm and then
<<else>>
can as
<</if>>
you step away.<br>
<br>
You've barely moved aside before <<=setup.getNpcName("npc_rachel","first")>> is already deep-throating the cock of her next "customer," so her only further reply is how her eyes lustily continue to stare at your <<=setup.getItemTypeName("cage")>>. She barely even blinks, eyes watering not because of the monster sausage straining her throat... or the double package pounding her ass, but out of the fervent intensity with which she continues to covetously stare at your prison until you have moved out of sight.<br>
<br>
<<printThought 'Strange person... or, I guess it might prefer, strange "thing"... I wonder if <<=setup.getNpcName("npc_pr_sissy","first")>> might be able to pull some strings? They definitely share a bit of similar intensity...'>><br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: contact pr_sissy
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.workEventReturn>>
You message <<=setup.getNpcName("npc_pr_sissy","first")>> about the possibility of a non-company employee being locked in a <<=setup.getItemName("sissyomatic")>> as some sort of promotional effort.<br>
<br>
"@@.npc_pr_sissy;An interesting proposal... how about we meet for coffee to discuss? 52 in five?@@" She replies.<br>
<br>
You double check the schedule and that <<=setup.getNpcName("npc_manager","formal")>> doesn't have an impending need for you and then hurry down to the cafe.<br>
<br>
[<<moveTo "event_rachel_9001_pr_sissy_2" 'Head on down to Cafe 52.' 300>>]
<<else>>
You go to message <<=setup.getNpcName("npc_pr_sissy","first")>>, but she is listing as out of office.<br>
<br>
<<printThought "Hmm, have to try her some other time.">><br>
<br>
[<<moveTo $scene.returnFromEmployee 'Back.' 60>>]
<</if>>
</div>/*#
#desc: meet pr_sissy about rachel
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
You arrive to find <<=setup.getNpcName("npc_pr_sissy","first")>> picking up her order, sharing a smile and a hands-free cheek kiss before turning to you with a smile and gesturing to a free table for the two of you to have a seat.<br>
<br>
"@@.npc_pr_sissy;I had <<=setup.getNpcName("npc_barista","nickname")>> brew up your usual.@@" <<=setup.getNpcName("npc_pr_sissy","first")>> states as she slides a cream-topped latte macchiato across the table. <<if State.hasPlayed("event_coffee_job_milked_1") && ($fetish.cum && $fetish.penis_milking || $fetish.milking)>><<=setup.getNpcName("npc_pr_sissy","first")>> gives her own drink a quick stir. From the blend of shades in the swirling liquid it looks like it's more <<if $fetish.cum && $fetish.milking>>cum<<else>>milk<</if>> than coffee... but she takes a long sip and grins "@@.npc_pr_sissy;Almost as good as fresh from the tap... anyway, let's hear your pitch?@@"<</if>><br>
<br>
[<<moveTo "event_rachel_9001_pr_sissy_3" 'Tell <<=setup.getNpcName("npc_pr_sissy","first")>> about <<=setup.getNpcName("npc_rachel","first")>>.' 300>>]
</div>/*#
#desc: explain rachel to pr_sissy
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_pr_sissy","first")>> about <<=setup.getNpcName("npc_rachel","first")>>, your friend's eyes lighting up with excitement as her Public Relations brain immediately starts churning. You're pretty certain <<=setup.getNpcName("npc_pr_sissy","first")>> is on board, but you really seal the deal by bringing up <<=ps(setup.getNpcName("npc_rachel","first"))>> <<if $fetish.sissy>>Sissy<<else>>Slave<</if>>book profile.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> finishes her drink with an excited suck that almost sounds like it could blow out the bottom of the cup. "@@.npc_pr_sissy;Okay, wow. I mean, working at Social Interaction Service Syndicate Inc. I'm obviously surrounded by hot, sexy subs all the time... present company OBVIOUSLY included... but to see someone push themselves so far? Well, it's an inspiration. You said they aren't available to just hire? I can think of half a dozen teams at the company who would love to take someone like <<=setup.getNpcName("npc_rachel","first")>> on-board.@@"<br>
<br>
You confirm that hiring is off the table. <<=setup.getNpcName("npc_pr_sissy","first")>> nods and thinks. "@@.npc_pr_sissy;Well, I still may talk to merger's an acquisitions about buying out whatever their company is... but that's a long term solution. Short term we need to get that <<if $fetish.sissy>>sissy<<else>>slave<</if>> SECURED... long-term secured.@@" <<=setup.getNpcName("npc_pr_sissy","first")>> grins. "@@.npc_pr_sissy;I need to do a bit of work, and talk to legal about a contract... but I promise that I will move heaven, hell, and earth to get that <<if $fetish.sissy>>sissy<<else>>slave<</if>> locked... and I'll make sure you're there for the show. I mean, it's the least you deserve for bringing such a DIVINE little devil to my attention...@@"<br>
<br>
You thank <<=setup.getNpcName("npc_pr_sissy","first")>> for the help and open a three-way (or, as the app refers to it: double penetration DM) chat on <<if $fetish.sissy>>Sissy<<else>>Slave<</if>>book to relay the good news to <<=setup.getNpcName("npc_rachel","first")>>. You get an automated reply of "@@.computer;<<if $fetish.sissy>>Sissy<<else>>Slave<</if>> <<=setup.getNpcName("npc_rachel","first")>> is indisposed for its <<if $now.getUTCHours() < 12>>morning<<else>>afternoon<</if>> programming. An automated punishment has been added to <<=ps(setup.getNpcName("npc_rachel","first"))>> routine as penance. It hopes to serve you soon.@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> blows you a kiss and skips for the exit. You finish off your drink and head up to your office.<br>
<br>
[<<moveTo "event_rachel_9001_pr_sissy_4" "Head back to work." 300>>]
</div>/*#
#desc: contacted by rachel after meeting pr_sissy
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addWorkEvent "rachel_9001_install" _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're just about to sit down at your desk when you get a notification that <<=setup.getNpcName("npc_rachel","first")>> has replied to your post.<br>
<br>
"@@.npc_rachel;This <<if $fetish.sissy>>sissy<<else>>slave<</if>> is ecstatic to be so honored with your consideration. It's excitement is as unbounded as it deserves to be restrained, and has requested that it's daily ruins be increased by twenty percent as it eagerly anticipates your next glorious words.@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> almost immediately fires back with a stream of emojis, starting with a wide grin, several peach<<if $fetish.cum>>, squirting,<</if>> and egg-plant variants before finishing off with a lock, a no symbol over a key... and the infinity sign.<br>
<br>
You look over as <<=setup.getNpcName("npc_rachel","first")>> responds with star-eyes and you smile... those two really are a perfect pair, the way their enthusiastic energy feeds off one another borderline on dangerous.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: contacted by pr_sissy about rachel
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're packing up for the day when you get an message from <<=setup.getNpcName("npc_pr_sissy","first")>>. "@@.npc_pr_sissy;Hey! So, I managed to squeeze a favour out of one of the science hotties and they're going to stay after work to measure and fit <<=setup.getNpcName("npc_rachel","first")>> with a <<=setup.getItemName("sissyomatic")>>. Things with legal are running just a scootch behind, so could you head on down to the lobby and bring <<=setup.getNpcName("npc_rachel","first")>> up to floor 120? I'll meet you there!@@"<br>
<br>
<<printThought "A bit last minute... but I guess that's how it goes sometimes.">><br>
<br>
[<<moveTo "event_rachel_9001_install_2" "Take the elevator down to the lobby." 300>>]
</div>
/%outfit similar to: https://us.shein.com/Letter-Mountain-Print-Contrast-Trim-Bodycon-Dress-p-3458398-cat-1727.html%//*#
#desc: meet rachel in lobby
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_rachel","npc_rachel_formal")>>
<div id="invframe" class="scrolltext">
You step out of the elevator and immediately spot <<=setup.getNpcName("npc_rachel","first")>>... who clearly had a bit more warning for this evening's event because they are VERY dressed for the occasion — oversized company-logo hoop earrings accessorised with a similar bangle hanging from the front ring of <<=ps(setup.getNpcName("npc_rachel","first"))>> choker/collar... and an eye-catching candy-red full length bodycon dress that is both incredibly tight and form-fitting... and printed with "Property of Social Interaction Service Syndicate Inc." both across the chest and down the side, the "corporate couture" fashion rounded off with a pair of steep heels that pack yet another stylised company logo into the side of the wedge heel.<br>
<br>
<<=setup.getNpcName("npc_rachel","first")>> is clearly enjoying the many glances they're getting from employees heading home for the day through the lobby, but they brighten up even more as they spot you and hurry across the room, oversized (and obviously artificial) tits bouncing as the bulge of their cage stretches their dress and wiggles back and forth with every step.<br>
<br>
"@@.npc_rachel;<<=$player.first_name>>!@@" <<=setup.getNpcName("npc_rachel","first")>> shouts in greeting as you hold the elevator door and lead them in. "@@.npc_rachel;<<if $fetish.sissy>>Sissy<<else>>Slave<</if>> <<=setup.getNpcName("npc_rachel","first")>> could barely sleep last night, it was so excited about today! It ended up starting its ten hour preparatory auto-<<if $fetish.get_raped>>rape<<else>>fuck<</if>> and ruin an extra four hours early... but even after all that its excitement for a new is unrelenting!@@"<br>
<br>
You nod in understanding and tap the button for floor 120. <<if $fetish.cum>>Standing this close there is no missing an unmistakable wet spot at the front of the dress where <<=ps(setup.getNpcName("npc_rachel","first"))>> dribbling excitement is soaking through.<</if>><br>
<br>
[<<moveTo "event_rachel_9001_install_3" "Ride up." 300>>]
</div>/*#
#desc: take rachel up to meet pr_sissy
#status: RELEASED 0.9.4.0
#ignore_spell: m&a,ohmygoddess
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Hallway'">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_rachel","npc_rachel_formal") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
As if <<=setup.getNpcName("npc_rachel","first")>> wasn't bubbly enough to begin with, her excitement seems to rise even higher with each floor upwards the elevator zips.<br>
<br>
The doors open on floor 120 and <<=setup.getNpcName("npc_pr_sissy","first")>> is there waiting, the PR worker and the objectified <<if $fetish>>sissy <</if>>diving in for a hug like a pair of old friends.<br>
<br>
"@@.npc_pr_sissy;Ohmygoddess, that dress! So hot!@@" <<=setup.getNpcName("npc_rachel","first")>> gushes as, arm in arm, the two of them head down the hallway with you following a step behind. "@@.npc_pr_sissy;I wore one just like it to a convention last year, curves to die for, the only flaw that it's so long that it makes getting bent over and fucked in the ass more effort than it ought to be.@@"<br>
<br>
"@@.npc_rachel;It knows the dress rolls up easily enough... but then it just kind of bunches at the hips and it's not that flattering... but the look just seemed perfect for today... <<=setup.getNpcName("npc_rachel","first")>> can't believe it is in <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate Inc.<</if>> R&D... the only way this could be more of a dream-come-true would be if the day ended with kidnapping, brainwashing, and never letting <<=setup.getNpcName("npc_rachel","first")>> free again!@@"<br>
<br>
"@@.npc_pr_sissy;Don't tempt me,@@" <<=setup.getNpcName("npc_pr_sissy","first")>> enthusiastically replies, "@@.npc_pr_sissy;But no, <<=$player.first_name>> explained about your contract situation... but don't you worry. Today we're getting you locked up, but I've already hit up some of my friends over in M&A about looking into buying up your company. Whatever it is you're working on there HAS to be a home for it in the <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate Inc.<</if>> family.@@"<br>
<br>
The two hard-working bimbos continue to chatter back and forth as you make your way to a room, <<=setup.getNpcName("npc_pr_sissy","first")>> leaning in to have her collar scanned for the door to open.<br>
<br>
"@@.npc_rachel;Now THAT'S how you do site security!@@" <<=setup.getNpcName("npc_rachel","first")>> states with a grin.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> winks back. "@@.npc_pr_sissy;Down on the lower, high-security floors some systems actually run off our belts, instead. Can't have an unsecured <<if $fetish.sissy>>sissy<<else>>slave<</if>> running around improperly, hmm?@@"<br>
<br>
<<=setup.getNpcName("npc_rachel","first")>> shudders. "@@.npc_rachel;That buy-out can't come soon enough... <<=setup.getNpcName("npc_rachel","first")>> NEEDS to be a company-slave to <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate Inc.<</if>>, you're like... the most perfect corporation that has ever existed!@@"<br>
<br>
"@@.npc_pr_sissy;We try,@@" <<=setup.getNpcName("npc_pr_sissy","first")>> replies as she leads the way into the room with a saucy swish of her hips.<br>
<br>
[<<moveTo "event_rachel_9001_install_4" "Head on in." 300>>]
</div>/*#
#desc: rachel gets restrained
#status: RELEASED 0.9.4.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Exam Room'">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_rachel","npc_rachel_formal") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_pr_sissy","first")>> leads <<=setup.getNpcName("npc_rachel","first")>> to take a seat at the table in the centre of the small exam room... where a set of strap automatically wrap around <<=ps(setup.getNpcName("npc_rachel","first"))>> waist and chest, binding her in place.<br>
<br>
"@@.npc_pr_sissy;Standard procedure. You're about to be dealing with some very important corporate secrets, we can't have you running off without signing the appropriately binding NDAs, now can we?@@"<br>
<br>
"@@.npc_rachel;N-no, <<=setup.getNpcName("npc_pr_sissy","formal")>>@@" <<=setup.getNpcName("npc_rachel","first")>> replies, voice trembling, clearly struggling to contain her excitement.<br>
<br>
"@@.npc_pr_sissy;<<=setup.getNpcName("npc_pr_sissy","formal")>>? No... for now I think <<=setup.getNpcName("npc_pr_sissy","custom", "Mistress")>> <<=setup.getNpcName("npc_pr_sissy","last")>> would be more appropriate, being that I am the official company representative and you want to be a slave to the company... don't you? A sweet, submissive <<if $fetish.sissy>>SISSI<<else>>company<</if>> slave...@@"<br>
<br>
"@@.npc_rachel;Of course, <<=setup.getNpcName("npc_pr_sissy","custom", "Mistress")>> <<=setup.getNpcName("npc_pr_sissy","last")>>...@@" <<=setup.getNpcName("npc_rachel","first")>> all but pants. Squirming in her bonds.<br>
<br>
"@@.npc_pr_sissy;Much better.@@" <<=setup.getNpcName("npc_pr_sissy","first")>> states, in full "corporate control" mode as she slides the stack of papers closer in front of <<=setup.getNpcName("npc_rachel","first")>>. "@@.npc_pr_sissy;Now, legal was unable to draw up a permanent agreement... but I was able to make your chastity contract a full 99-years...@@" <<=setup.getNpcName("npc_rachel","first")>> squirms as <<=setup.getNpcName("npc_pr_sissy","first")>> points to that clause before flipping over a few additional pages and continuing "@@.npc_pr_sissy;... with compulsory auto-renewal. Failure to renew will come with a suitable buy-out penalty. Given the expense of the technology in question, and the length of term, this total would currently be estimated at six point three million credits... but that is merely a floor and would be subject to market conditions and inflation.@@"<br>
<br>
<<=setup.getNpcName("npc_rachel","first")>> is so excited she has all but lost the capability of speech as <<=setup.getNpcName("npc_pr_sissy","first")>> places a pen on top of the paperwork. "@@.npc_pr_sissy;If this agreement is acceptable you may proceed to initial each page, and then sign. You may feel free to review any part of the document to confirm that there are no loopholes or gaps to be exploited... or you can be a good <<if $fetish.sissy>>sissy<<else>>slave<</if>> and trust that corporate knows best.@@"<br>
<br>
[<<moveTo "event_rachel_9001_install_5" "Keep watching." 300>>]
</div>/*#
#desc: rachel signs contract
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Exam Room'">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_rachel","npc_rachel_formal") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.submission.contract == "enthusiast">>
Even your initial contract wasn't quite this eagerly signed,
<<else>>
You don't think you've ever seen someone so eagerly enter a legally binding arrangement,
<</if>>
<<=setup.getNpcName("npc_rachel","first")>> is almost a blur as she flicks through paperwork, scrawling out her initials... only to take a deep breath at the final page, focusing with all her might not to tremble as she elegantly signs her full name... followed by an alphanumeric <<if $fetish.sissy>>sissy <</if>>slave ID.<br>
<br>
"@@.npc_pr_sissy;Lovely. Signed and witnessed.@@" <<=setup.getNpcName("npc_pr_sissy","first")>> states as she neatly stacks the paperwork and stuffs it into an envelope as she walks around the table towards the door. "@@.npc_pr_sissy;The company will retain the originals while a copy will be forwarded to you, and to your owning corporation. With that out of the way...@@" she turns to you for a moment, the first acknowledgement of your presence since you stepped off the elevator. "@@.npc_pr_sissy;If you would keep a safe distance?@@"<br>
<br>
You step a bit closer to the wall as <<=setup.getNpcName("npc_pr_sissy","first")>> presses a button next to the door... <<=ps(setup.getNpcName("npc_rachel","first"))>> flipping back forty-five degrees, additional cuffs lifting her legs up and out as the chair transforms into a medical examination seat, her wrists bound to her side as her dress slides up her legs. As a final touch <<=setup.getNpcName("npc_pr_sissy","first")>> personally stuffs a massive penis gag down <<=ps(setup.getNpcName("npc_rachel","first"))>> throat... and then the chair swivels one-eighty, leaving <<=setup.getNpcName("npc_rachel","first")>> helplessly bound and exposed in the direction of the room's only door, a slight split in the seat and her angled hips showing off both her small, tight<<if $fetish.cum>>, dripping <</if>>cage, and the massive plug stretching her rear, its base adorned with yet another glittering company logo.<br>
<br>
[<<moveTo "event_rachel_9001_install_6" "The door slides open..." 120>>]
</div>/*#
#desc: lab tech gets to work
#status: RELEASED 0.9.4.0
#ignore_spell: twinky
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Exam Room'">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_rachel","npc_rachel_formal") setup.charImage("npc_pr_sissy","npc_pr_sissy_3") _TODOlabTechTwink>>
<div id="invframe" class="scrolltext">
The door opens and a twinky lab-coat wearing corporate tech walks in, taking a moment to review the paperwork before even glancing at <<=setup.getNpcName("npc_rachel","first")>>.<br>
<br>
"@@.generic_male1;Everything appears to be in order. Subject...@@" the tech pauses to flick through the paperwork, "@@.generic_male1;... has been secured and gagged per regulation for the measurement and fitting procedure... ah, it appears you are not just gagged, but are sucking on a precise silicone clone of our CEO, <<=setup.getNpcName("npc_boss","formal")>>. A perfect throat-stretcher for us to lock you under <<his npc_boss>> distant, but inescapable corporate control.@@"<br>
<br>
You watch as <<=ps(setup.getNpcName("npc_rachel","first"))>> eyes roll back in arousal as she drools around the gag, her throat flexing as she sucks and shows her "appreciation" for <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
The lab-tech continues on, producing a key to unlock <<=ps(setup.getNpcName("npc_rachel","first"))>> already high-tech current <<=setup.getItemName("c_cage_advanced")>>. As soon as the cage is removed <<=setup.getNpcName("npc_rachel","first")>> springs forth<<if $fetish.sph>>, small, but<</if>> very hard.<br>
<br>
<<if $fetish.sph>>
"@@.generic_male1;Let the record show that, despite subject's file indicating that they are useless, tiny, and impotent, they have a measurable <<if $fetish.sissy>>sissy <</if>>erection. This will not interfere with procedures and should be taken as further confirmation that they require the security that only a <<=setup.getItemName("sissyomatic")>> provides.@@"<br>
<br>
<</if>>
<<=setup.getNpcName("npc_rachel","first")>> wiggles with excitement... and <<=setup.getNpcName("npc_pr_sissy","first")>> responds by stepping in to re-tighten a few restraints, straps now biting in to <<=ps(setup.getNpcName("npc_rachel","first"))>> thighs as she is held even more immobile.<br>
<br>
[<<moveTo "event_rachel_9001_install_7" "The tech pulls out some measuring devices..." 300>>]
</div>/*#
#desc: lab tech measures
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Exam Room'">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_rachel","npc_rachel_formal") setup.charImage("npc_pr_sissy","npc_pr_sissy_3") _TODOlabTechTwink>>
<div id="invframe" class="scrolltext">
You watch as <<=setup.getNpcName("npc_rachel","first")>> squirms and the lab technician pulls on a pair of elbow-length latex gloves and begins to meticulously measure every dimension of the helpless <<if $fetish.sissy>>sissy's<<else>>sub's<</if>><<if $fetish.sph>> pathetic<</if>>clitty. As <<he>> works, the technician makes occasional comments including <<if $fetish.sph>>"@@.generic_male1;Hmm, in the lowest percentile of employee length and girth, I'll have to make adjustments to ensure that the diminutive size is compensated for and kept appropriately secure.@@" and <</if>>"@@.generic_male1;Stop squirming, it will only delay your permanent chastity longer. Suck on <<=ps(setup.getNpcName("npc_boss","formal"))>> cock like a good <<if $fetish.sissy>>sissy<<else>>slut<</if>> and remain still.@@"<br>
<br>
<<=setup.getNpcName("npc_rachel","first")>> does her best to follow instructions, but it is plainly obvious that her arousal and excitement is off the charts as the technician not-so-delicately <<man>>-handles <<=ps(setup.getNpcName("npc_rachel","first"))>> cock and balls... before grabbing hole of the base of the plug below and yanking out the massive, multi-bulbed anal gaper.<br>
<br>
<<=setup.getNpcName("npc_rachel","first")>> howls and <<if $fetish.cum>>spurts in orgasm... as thick cum locked in after what you presume was the previous evenings ass-<<if $fetish.get_raped>>rape<<else>>bang<</if>> oozes out<<else>>seems to cum<</if>>.<br>
<br>
"@@.generic_male1;Easy, slut,@@" the technician commands as <<he>> tosses the plug to one side and <<if $fetish.fisting>>shoves <<his>> whole fist into <<=ps(setup.getNpcName("npc_rachel","first"))>> ass to hold it open, sinking well over half of <<his>> elbow-length gloved arm into <<=setup.getNpcName("npc_rachel","first")>> while <<he>> measures<<else>>shoves a large speculum into <<=ps(setup.getNpcName("npc_rachel","first"))>> gaping hole and spreads it wide to begin measuring<</if>> the quivering<<if $fetish.cum>>, dripping<</if>> orifice. "@@.generic_male1;We'll be locking this <<if $fetish.sissy>>sissy <</if>><<if $fetish.get_raped>>rape-<<else>>fuck-<</if>>hole full soon enough...<<if $fetish.cum>> and maybe having you lick up this mess you're dripping on my floor<</if>>.@@"<br>
<br>
<<=setup.getNpcName("npc_rachel","first")>> moans through her gag, beyond aroused as the technician continues <<his>> rough, clinical measurements.<br>
<br>
[<<moveTo "event_rachel_9001_install_8" "Wow, what a slut..." 180>>]
</div>/*#
#desc: rachel while 9001 prints
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Exam Room'">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_rachel","npc_rachel_formal") setup.charImage("npc_pr_sissy","npc_pr_sissy_3") _TODOlabTechTwink>>
<div id="invframe" class="scrolltext">
The measurements complete, the technician <<if $fetish.fisting>>withdraws <<his>> fist<<else>>removes the speculum<</if>> and rises to <<his>> feet, peeling off <<his>> gloves as <<he>> taps a few more times on <<his>> tablet before setting it aside on the table.<br>
<br>
"@@.generic_male1;It will take a few minutes for the <<=setup.getItemName("sissyomatic")>> to be fabricated and delivered, while I wait for the install. While we're waiting...@@" The technician opens <<his>> labcoat and unzips <<his>> fly to reveal a <<=setup.getItemName("sissyomatic")>> securing <<his>> loins. You can't fathom how, but this sight somehow turns <<=setup.getNpcName("npc_rachel","first")>> on even more... especially as the technician walks over to <<=ps(setup.getNpcName("npc_rachel","first"))>> head, rubbing <<his>> cage against the side of <<=ps(setup.getNpcName("npc_rachel","first"))>> face, while motioning for <<=setup.getNpcName("npc_pr_sissy","first")>> to join in.<br>
<br>
Skirt raised, <<=setup.getNpcName("npc_pr_sissy","first")>> takes up position on <<=ps(setup.getNpcName("npc_rachel","first"))>> other cheek and glances at you in invitation.<br>
<br>
[<<moveTo "event_rachel_9001_install_9" "Join the fun." 600 "<<set $scene.join=true>>">>]<br>
[<<moveTo "event_rachel_9001_install_9" "Just watch." 600 "<<set $scene.join=false>>">>]
</div>/*#
#desc: you help tease rachel
#status: RELEASED 0.9.4.0
#ignore_spell: sissygram,s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Exam Room'">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_rachel","npc_rachel_formal") setup.charImage("npc_pr_sissy","npc_pr_sissy_3") _TODOlabTechTwink>>
<div id="invframe" class="scrolltext">
<<if $scene.join>>
You unveil your own <<=setup.getItemName("sissyomatic")>> and join in on the chastity-<<if setup.isCage()>>cage<<else>>device<</if>> blow-bang of the deliriously excited <<=setup.getNpcName("npc_rachel","first")>>.<br>
<br>
Bound, helpless, and surrounded on all sides by what is clearly one of her greatest loves and lusts, <<=setup.getNpcName("npc_rachel","first")>> cums
<<else>>
You stand back and watch as <<=setup.getNpcName("npc_pr_sissy","first")>> grind against <<=ps(setup.getNpcName("npc_rachel","first"))>> ecstatic face, the bound, helpless <<if $fetish.sissy>>sissy<<else>>submissive<</if>> cumming
<</if>>
at least twice fully hands free, with no stimulation save for the gag being removed for her to kiss and lick the stereo <<=setup.getItemName("sissyomatic")>>s<<if $fetish.cum>>, and for the technician to occasionally reach down and scoop up a few fingers full of cum from <<=ps(setup.getNpcName("npc_rachel","first"))>> to force-feed to the desperately eager <<if $fetish.sissy>>sissy<<else>>slut<</if>><</if>>, even snapping a few "selfies" of the situation to post to <<=ps(setup.getNpcName("npc_rachel","first"))>> <<if $fetish.sissy>>sissygram<<else>>social media<</if>>.<br>
<br>
[<<moveTo "event_rachel_9001_install_10" "A knock at the door." 300>>]
</div>/*#
#desc: rachel installed with 9001
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Exam Room'">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_rachel","npc_rachel_formal") setup.charImage("npc_pr_sissy","npc_pr_sissy_3") _TODOlabTechTwink>>
<div id="invframe" class="scrolltext">
The <<=ps(setup.getNpcName("npc_rachel","first"))>> <<=setup.getItemName("sissyomatic")>> delivered things suddenly begin happening swiftly. Where <<=ps(setup.getNpcName("npc_rachel","first"))>> quest and fitting played out as a sort of extended, teasing foreplay, now that the moment has arrived the technician works with blistering speed.<br>
<br>
This start with the plug, at maximum girth, being shoved into <<=ps(setup.getNpcName("npc_rachel","first"))>> ass, the thick anal intruder locking in place to anchor the rest as the technician expertly<<if $fetish.sounding>>feeds the urethral tube all the way in and then lets<<else>>has<</if>> the device work its erection-canceling magic for the cage to be secured in place.<br>
<br>
With a resounding "click" the lock closes, the <<=setup.getItemName("sissyomatic")>> perfectly, and completely securing its payload. Remote in hand, <<=setup.getNpcName("npc_pr_sissy","first")>> grins as she "tests out" the devices remote features. Roughly re-gagged, <<=setup.getNpcName("npc_rachel","first")>> howls in ecstasy as <<=setup.getNpcName("npc_pr_sissy","first")>> wastes no time in delivering maximum power shocks fore<<if $fetish.sounding>>, aft, and inside<<else>>and aft<</if>>, the cage turning this obviously ecstatic moment into little more than a prolonged ruin that leaves <<=setup.getNpcName("npc_rachel","first")>> wide-eyed and panting.<br>
<br>
There is a moment of quasi-silence, as <<=ps(setup.getNpcName("npc_rachel","first"))>> vision flutters and you wonder if the sensation-slut<<if $fetish.sissy>>-sissy<</if>> might actually pass out... but instead she blinks back to focused determination. Grinning around her gag as she lets out a moan of pure satisfaction... satisfaction at being denied.<br>
<br>
With an amused smirk the technician departs, <<=setup.getNpcName("npc_pr_sissy","first")>> finally removing <<=ps(setup.getNpcName("npc_rachel","first"))>> restraints... only for the abused <<if $fetish.sissy>>sissy<<else>>slave<</if>> to practically bounce to her feet with energetic enthusiasm.<br>
<br>
[<<moveTo "event_rachel_9001_install_11" "Wow..." 300>>]
</div>/*#
#desc: rachel enjoys new 9001
#status: RELEASED 0.9.4.0
#ignore_spell: sissysmash,smasher
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_rachel","npc_rachel_formal") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<set _tempDesc = "locked4ever!!!!<3<3<3">>
You watch as <<=setup.getNpcName("npc_rachel","first")>> wastes no time profusely thanking both you, and "@@.npc_rachel;<<=setup.getNpcName("npc_pr_sissy","custom", "Mistress")>> <<=setup.getNpcName("npc_pr_sissy","last")>>@@" for your time... before snapping a dozen more selfies of her "new" situation and firing them off to multiple <<if $fetish.sissy>>sissy<<else>>lewd<</if>> social media platforms with variations on the caption <<=_tempDesc>>.<br>
<br>
"@@.npc_rachel;Goddess, <<=setup.getNpcName("npc_rachel","first")>> don't know if it has ever been happier than this moment... like, even when it has been sensory deprived, airtight and whipped there's always been that fear that it could somehow free myself... or be freed!@@" <<=setup.getNpcName("npc_rachel","first")>> shudders "@@.npc_rachel;<<=setup.getNpcName("npc_rachel","first")>> is a submissive object to be used and, preferably, abused, but it MUST remain locked!@@"<br>
<br>
She catches her breath, then pauses to glance down dismissively at her "old" device and plug, laying abandoned on the floor. "@@.npc_rachel;But this? This is security perfection, oh, it can't wait to feel the Digital <<Master>> close its fingers around <<=ps(setup.getNpcName("npc_rachel","first"))>><<if $fetish.sph>> pathetic<</if>><<if $fetish.sissy>> sissy<</if>> peen... and<<if $fetish.fisting>>stuff its fist in <<=ps(setup.getNpcName("npc_rachel","first"))>> ass<<else>>simultaneously claim <<=ps(setup.getNpcName("npc_rachel","first"))>> ass<</if>>.@@"<br>
<br>
<<=setup.getNpcName("npc_rachel","first")>> takes you and <<=setup.getNpcName("npc_pr_sissy","first")>> by the hands, looking at you totally star-eyed as she starts to tear up and finishes "@@.npc_rachel;Thank you, thank you so much... obviously I now have a goal to be owned by the magnificent company that manufactured this divine denial device... but even if that doesn't come to be I will be deliriously delighted to be locked like this, and it's all thanks to you!@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> beams, taking a moment to insist on "friending" <<=setup.getNpcName("npc_rachel","first")>> on all platforms before the three of you head back for the elevator.<br>
<br>
You've barely dropped a few floors when <<=ps(setup.getNpcName("npc_rachel","first"))>> starts blowing up with replies, and <<=setup.getNpcName("npc_rachel","first")>> is quickly scrolling through <<if $fetish.sissy>>sissySmash<<else>>Smasher<</if>> spamming "accept" to what seems like every offer.<br>
<br>
"@@.npc_rachel;Well it looks like I'm in for a gloriously "unsatisfying" evening of being a <<if $fetish.sissy>>sissy <</if>>fuck-toy for other people's pleasure!@@" <<=setup.getNpcName("npc_rachel","first")>> states with giddy excitement.<br>
<br>
"@@.npc_pr_sissy;You fuck 'em, tiger,@@" <<=setup.getNpcName("npc_pr_sissy","first")>> states with a parting slap on the ass that has <<=setup.getNpcName("npc_rachel","first")>> jump, grin... and near sprint across the lobby.<br>
<br>
"@@.npc_pr_sissy;Fun friend you found there... well, I have a few more lawyers to finish "thanking" for their assistance... I'll see you around!@@" States as you return to your floor... and she rides back up towards the upper floors of corporate debauchery.<br>
<br>
[<<moveTo $scene.workEventReturn "Get back to your desk." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: tattoo parlour
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<set $player.cutscene.allowSpecific='nipple_piercing'>>
<<set $player.inside = true>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
The tattooist smiles at you from behind the counter, waiting to see what you want.<br>
<br>
<<include "tattoo_options">>
<<if $shopStatus.tattoo_parlor.unlocked_inventory.length > 0>>
<<printShop 'room_tattoo' 'tattoo_parlor' $shopStatus>><br>
<br>
<</if>>
<<if $player.sec_style.clothing.tattoo == "" && $npc_tattoo.flags.offer>>
[<<moveTo "event_tattoo_money_1" "Ask about her earlier offer." 300 "<<set $scene.accept=true>>">>]<br>
<</if>>
<br>
<<if !$npc_tattoo.flags.offer && $player.sec_style.clothing.tattoo == "" && $player.sec_style.clothing.underwear != "">>
[<<moveTo "event_tattoo_offer" "Return to the Student Quarter." 300 "<<set $player.cutscene.allowSpecific= ''>><<set $player.inside = false>>">>]
<<else>>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 300 "<<set $player.cutscene.allowSpecific= ''>><<set $player.inside = false>>">>]
<</if>>
</div>/*#
#desc: tattoo parlour first visit
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_tattoo.profile = true>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
You walk into the tattoo parlour, walls covered in samples of "previous work" with a large sign over the counter saying "cash only." As you look around, the sound of the door attracts the attention of the woman behind the counter.<br>
<br>
Looking up from a magazine, she greets you with a smile that oozes cool — just like the rest of her. From her throwback hairstyle to the tattoos running from her neck down, down under her minimal clothes and the length of her arms, she oozes self-confidence and style.<br>
<br>
"@@.npc_tattoo;Sup? You looking to get some work done?@@" She asks, her tone enticing and also a little dangerous.<br>
<br>
<<include "tattoo_options">><br>
<<if $shopStatus.tattoo_parlor.unlocked_inventory.length > 0>>
<<printShop 'room_tattoo' 'tattoo_parlor' $shopStatus>><br>
<br>
<</if>>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 300 "<<set $player.cutscene.allowSpecific= ''>><<set $player.inside = false>>">>]
</div>/*#
#desc: tattoo parlour first visit
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_tattoo.flags.offer = true>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
You turn to go and the tattooist calls after you, staring at you intently, her eyes seeming to go right through your clothes to the skin beneath. She's staring hard enough that it's almost a bit creepy as she speaks.<br>
<br>
"@@.npc_tattoo;So, this is maybe a bit out of the blue but... I just got some new inks in and your skin tone looks like it'd be PERFECT for them... what do you say? I've got a perfect idea that would look great on you and I'll do it for free, even throw in a few credits on top if you let me test things out and take a few pictures for marketing purposes...@@"<br>
<br>
[<<moveTo "event_tattoo_money_1" "Say sure." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_tattoo_money_1" "Decline her offer." 60 "<<set $scene.accept=false>>">>]
</div><<if $player.piercings.nipples>>
[@@.link_locked;Your nipples are already pierced.@@]<br>
<<else>>
<<if $player.money.total >= 50>>
<<if setup.getTotalValue("bdsm") >= 7>>
[<<moveTo "event_pierce_nipple" "Get your nipples pierced — 50 credits." 300>>]<br>
<<else>>
[@@.link_locked;Nipple piercings? No, that sounds a bit too kinky.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You do not have enough money to get your nipples pierced.@@]<br>
<</if>>
<</if>>
<<if !$player.piercings.penis && $player.body_ref.penis>>
<<if $player.money.total >= 100>>
<<if setup.getTotalValue("bdsm") >= 10>>
[<<moveTo "event_pierce_penis" "Get your <<getWordMyPenis false>> pierced — 100 credits." 300>>]<br>
<<else>>
[@@.link_locked;A <<getWordMyPenis false>> piercing? No, that sounds a bit too kinky.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You do not have enough money to get your <<getWordMyPenis false>> pierced.@@]<br>
<</if>>
<</if>>
<<printTattoo>>/*#
#desc: tattoo parlour nipple piercings
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -50>>
<<set $player.piercings.nipples = true>>
<<set $shopStatus['tattoo_parlor'].unlocked_inventory.pushUnique('nipple')>>
<<addItem 'nipple_piercings'>>
<<wearItem 'nipple_piercings' true>>
<<applyExperience 'bdsm' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor_back.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
You inquire about getting your nipples pierced and the shopkeeper grins, thrusting out her chest and wiggling as you notice sizable piercings of her own even through her top.<br>
<br>
"@@.npc_tattoo;Ready to decorate the girls? Great choice, it really makes them stand out — and so much more sensitive!@@"<br>
<br>
Leading you to the back, she has you sit down as she pulls out an odd looking set of pliers, waiting for you to present your nips before wiping everything down with a swab. She flicks your right nipple a few times until it is sticking out big and full, then flashes you an encouraging smirk before lining up the pliers.<br>
<br>
"@@.npc_tattoo;This'll pinch a bit but beauty is pain, right?@@"<br>
<br>
Before you can reply, she squeezes, the needle going through your nipple to make you gasp in pain.<br>
<br>
"@@.npc_tattoo;Good job, one more!@@" She adds, moving to the other side as you try to catch your breath.<br>
<br>
Click goes the pliers sending off another bolt of pain. "@@.npc_tattoo;There, balanced!@@" She states sliding a barbell through each hole to replace the needles, before rubbing a salve over everything to dampen the pain.<br>
<br>
"@@.npc_tattoo;All done! The salve accelerates the healing so you should be able to go to town with them by the time you get home, have fun!@@"<br>
<br>
You're still a bit surprised how fast it all happened as you fix your top and rise to your feet as she stows her tools.<br>
<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 60 "<<set $player.cutscene.allowSpecific= ''>><<set $player.inside = false>>">>]
</div>/*#
#desc: tattoo parlour penis piercing
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("cage")>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_piercing'
0
'event_manager_theme_chastity_piercing_1'
true
>>
<<applyExperience 'humiliation' 12 'terrible' $SEEN_STRANGER>>
<<else>>
<<addCredits -100>>
<<set $player.piercings.penis = true>>
<<set $shopStatus['tattoo_parlor'].unlocked_inventory.pushUnique('penis')>>
<<addItem 'prince_albert'>>
<<wearItem 'prince_albert' true>>
<</if>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor_back.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
You inquire about piercing your <<getWordMyPenis false>> and she grins.<br>
<br>
"@@.npc_tattoo;Oooh, adventurous! Of course I can take care of that!@@"<br>
<br>
In the back room, she has you seated and exposed as she pulls on a pair of gloves and examines the lay of the land.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
Faced with your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> the tattoo artist frowns. "@@.npc_tattoo;Now ain't that something! I'm skilled but I can't pierce something I can't access! How's about you come back here when you're not all locked up tight. Beg your keyholder for a night off or what have you.@@"<br>
<br>
You blush in embarrassment at her casual comment, fix your clothes, and leave.
<<else>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_tattoo;Oh my, look at how small it is! Why, some of my needles are bigger than what you're sporting, but have no worry, I can rise to the challenge... something I doubt anyone would notice you doing!@@"
<<else>>
She makes no comment as to your size, merely looking it over then switching to a smaller needle.
<</if>>
<<case 'spe'>>
"@@.npc_tattoo;Oh, you look so lovely! Just a perfect little thing, and it will be even better with a nice bit of steel to accent things...@@"
<<case 'none'>>
She makes no comment as to your size, merely looking it over then switching to a smaller needle.
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 2 3>>
She makes no comment as you reveal yourself, merely glancing you over.
<<case 4 5>>
Her eyebrow shoots up as she lays eyes on your member. "@@.npc_tattoo;Very nice, but it will look even better with a bit of jewellery, hmm?@@"
<<case 6>>
She seems almost taken aback as you reveal your massive <<getWordMyPenis>>. "@@.npc_tattoo;I'll admit I saw a bulge but I wasn't expecting this! I damn near need a harpoon to get through that monstress!@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Flashing a grin, she starts spreading cream over your member; initially cool you twitch once and then a numb feeling comes over you.
<<if $fetish.sounding>>
"@@.npc_tattoo;Don't worry, most tell me the piercing doesn't really hurt that much, it's just that the receiving tube is uncomfortable.@@" Before you can ask, she has pulled out a small tube that looks awfully large as she moves it towards the tip of your penis. "@@.npc_tattoo;Close your eyes... deep breath... there we go!@@" Your surprised shock takes a moment to fade, but you find that she's right. The feeling of a foreign object stretching your urethra is uncomfortable more than anything, and even that fades as your body adjusts to the spreading intrusion.
<<else>>
"@@.npc_tattoo;Don't worry, most tell me the piercing doesn't really hurt that much.@@"
<</if>>
<br><br>
You're about to comment when she pinches your glans, hard. Your eyes fly open, but your words of protest are silenced by the sight of a gigantic needle sticking in your <<getWordMyPenis>>, just underneath the glans.<br>
<br>
<<printThought "UUHHHHH...?">><br>
<br>
<<printThought "Wait, that was it?">><br>
<br>
"@@.npc_tattoo;There, told you.@@" She states as she turns and reaches for a metal ring<<if $fetish.sounding>>, takes out the tube in your urethra<</if>>, and pushes the needle out with the piercing, from the inside.<br>
<br>
Rubbing a different cream over things, she continues to talk "@@.npc_tattoo;This will basically have it healed by the time you get home, enjoy... and my best wishes to whoever you decide to share it with, having a PA inside you is just...@@" She does a chef's kiss gesture and then helps you to your feet.<br>
<br>
You fix your clothes, thank her, and leave.
<</if>>
<br><br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 60 "<<set $player.cutscene.allowSpecific= ''>><<set $player.inside = false>>">>]
</div>/*#
#desc: tattoo parlour remove tattoo
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removefail = $player.tattoos[$scene.tattooSlot] == "company_owned" || $player.tattoos[$scene.tattooSlot] == "manager_own">>
<<if !$scene.removefail>>
<<set $player.tattoos[$scene.tattooSlot] = "">>
<<addCredits -50>>
<</if>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor_back.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
You explain that you would like to have one of your tattoos removed. You're braced for the tattoo artist to object but she merely shrugs.<br>
<br>
"@@.npc_tattoo;Clearing some space to try something else out? Good stuff — we guarantee painless and permanent removal with no side effects in mere minutes!@@"<br>
<br>
Taking your money, she leads you to the backroom and pulls out a high tech gizmo to run over your skin.
<<if $scene.removefail>>
You expose the tattoo to be removed and she pauses, peering at it for a long moment before letting out a slow whistle. "@@.npc_tattoo;Wow! Where'd you get that thing? This is the high tech stuff that's meant to be irremovable! Even disregarding the fact I don't have the equipment, it's technically illegal to tamper with so... sorry I'm afraid you're stuck with this.@@"<br>
<br>
She refunds your money and waves you on your way.
<<else>>
As if by magic, the tattoo disappears, like an eraser tool wiping things clean a second pass of the device has your skin looking as perfect and clear without a hint of scaring, wrinkles or other damage.
<</if>>
<br><br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 60 "<<set $player.cutscene.allowSpecific= ''>><<set $player.inside = false>>">>]
</div>/*#
#desc: tattoo parlour voluntary tattoo
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !State.hasPlayed("room_tattoo") && !$player.sec_style.clothing.tattoo>>
<<set $player.sec_style.clothing.tattoo = 'enthusiast'>>
<<include "checkTattooCollar">>
<</if>>
<<set $player.tattoos[$scene.tattooSlot] = $scene.tattooId>>
<<addCredits `-($scene.price)`>>
<<setThreshold "bdsm" "bdsm_other" "inked">>
<<if $player.sec_style.clothing.tattoo == 'money'>>
<<applyExperience 'bondage' 8 'normal' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor_back.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.clothing.tattoo == '' || !State.hasPlayed("room_tattoo")>>
<<if !State.hasPlayed("room_tattoo")>>
The tattoo artist raises her eyebrow in surprise.<br>
<br>
"@@.npc_tattoo;You must have been practically waiting for this, it is a rare customer who walks right in off the street and asks for something without seeming to spend any time thinking it over. Well, come along, then, if this is such a priority for you far be it from me to make you wait any longer.@@"
<<else>>
Having picked your tattoo, you somewhat nervously follow the woman into the back room.<br>
<br>
"@@.npc_tattoo;First time?@@" She asks with a grin. "@@.npc_tattoo;Don't worry — just relax, sit back and let me work my magic — you'll hardly feel a thing.@@"
<</if>>
<br><br>
[<<moveTo "event_tattoo_voluntary" "Continue." 60>>]
<<else>>
Heading into the back room, you get in position for another tattoo.<br>
<br>
<<switch $player.sec_style.clothing.tattoo>>
<<case 'money'>>
Exposing the area at question, she "helpfully" restrains you once again, then winks before turning on some more melodic death metal and getting to work.
<<case 'strict'>>
Showing the human gentleness absent from your first tattoo experience at the hands of <<=setup.getNpcName("npc_work_doctor","formal")>>, she has you expose the area in question and then get comfortable on a chair before turning on some loud metal going to work.
<<case 'obedient' 'forced'>>
Showing the human gentleness absent from your first tattoo experience in the work basement, she has you expose the area in question and then get comfortable on a chair before turning on some loud metal going to work.
<<case 'voluntary' 'enthusiast'>>
Once again having you expose the area in question, she turns on her music and sets to work.
<<default>>
ERROR: unexpected feminisation style tattoo: <<=$player.sec_style.clothing.tattoo>>
<</switch>>
<br><br>
The first touch of the needle is a dull sting, turning to a fiery pain as she efficiently conjures art upon your flesh.<br>
<br>
She slaps something cool over the area that soaks into your skin before stepping away and turning off the music. "@@.npc_tattoo;There you go, enjoy.@@" She says with a wink, giving you a moment to admire things and thank her for the work before she heads back to the front counter.<br>
<br>
You fix your clothes and stand up.<br>
<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 60 "<<set $player.cutscene.allowSpecific= ''>><<set $player.inside = false>>">>]
<</if>>
</div>/%vip%/
/%TODO: Riding Sexy%/
/%tester%/
/%TODO: dotversion: Ask evil Antlers for another session w/Nursula. The night follows a similar activity structure (some game time, a feeding, being tied down for bed in the crib, possibly some very targeted hypnosis to build up affection towards Nursula and raise helplessness in the player).%/
/%other%/
<<moveTo "event_barista_cure_brainwash_1">>
/%<<moveTo "event_gym_futa_celebrate_1">>%/
/%<<moveTo "event_gym_futa_work_manager_1">>%/
/%<<moveTo "event_delta_plus_extreme_gangbang_1">>%/
/%<<moveTo "event_porn_futa_forcefem_1">>%/
/%<<moveTo "event_landlord_maid_good_1">>%/
/%kurt as keyholder%/
/%event_nurse_primrose_reprogram_intro_1%/
/%Alex evil nurse cosplay after Toru mission%/
/%<<moveTo "event_boss_aura_cure_1">>%/
/%(PlasmaManatee) shilling Globe of Dirigibles%/
/%theme_manager_dom_progress_1 with janitor%/
/%theme_manager_dom_progress_1 and ex%/
/%event: antlers run in stocking%%/
/%hucow at club, working bar%/
/%return from dominance event, manager gently returns you to submission%/
/%July 23rd 2018 https://discord.com/channels/439185438637293569/439202475917049857/471113704709292032 %/
/%pondering if I can write a scene of "ok, so you have problems with heels, so we're going to work on ballance in the best way possible: by learning to land some sick tricks"
if you can grind a rail you can walk in heels%/
/%guard + futa: you're taking the elevator down after work and they both happen to be in the elevator with you then "oh no!" malfunction, they both make a simultaneous comment to you of ~heh, pity it's not just the etwo of us so we can kill time" -> mirror conversation of "wait, you know <player> too?> -> look at each other -> slow grin -> turn to player -> "Mommy..."%/
/%evil manager RTO initiative%/
/%strict/forced unlock for gym bimbo bully%/
/%themes:%/
/%aiko drone, valkyrie mission discussion%/
/%antler drone, valkyrie mission discussion%/
/%alex post-evil discussion%/
/%mention original CEO to Alex, Trapper, Manager, Candy%/
/%tell horticulturist about twig's fate%/
/%discuss pawn with trapper%/
/%achievs for manager themes?%/
/%theme_manager_discipline, theme_manager_harassment, theme_manager_development%/
/%ask therapist about VR therapy%/
/%dialogue with bob/trapper/antlers about bob fucking antlers%/
/%misc:%/
/%event_sexclub_date_technician_sub_invite_1 should use Jay%/
/%loopy - splice event_primrose_ai_second_mission_4 and event_primrose_redemption_2_lab_infiltrate_1 visit together%/
/%move chair to sub-menu%/
/%evil trapper events when visiting twig%/
/%aiArticleList alternate read%/
/%remove makeup sleep%/
/%1.0.0%/
/%Alex: Steel%/
/%A Doll's Life%/
/%Alex 9001 at work (starting the day off right)%/
/%see art link from final page%/
/%endscreen show passages visited/"time" played%/
/%mention black box in epilogue%/
/%you HR manager ending%/
/%edge translator breaks in shops + can't handle "timed" scenes%/
/%jga2513 - unable to progress bestiality if didn't finish aphrodisiac (requires camgirl or porn shoot)%/
/%alternate unlock for aphrodisiac trial%/
/%loopy - add sprocket, berg, nintendolls to valkyrie_wanted%/
/%handle rent in stage 5%/
/%$scene.takeKey in stage 4%/
/%event_technician_private_game_root scene track%/
/%explain Trapper being safe to talk to in stage 5%/
/%trapper dinner discussion post twig and primrose destroy%/
/%kalastria cruel stuff%/
/%sissyandrea - cruelMode enabled prior to first therapy session%/
/%sumfukinggai "avoid" variant for forced sex w/black box%/
/%sumfukinggai t-block forced%/
/%no-sex for pegging event ???%/
/%complete event removes done%/
/%code%/
/%gameOver -> go back%/
/%??? npc_sexdoll de-brainwash scene%/
/%??? npc_pr_sissy de-brainwash scene%/
/%npc_sexdoll stage 5%/
<<moveTo "dummy">>
Antlers will accept you being collared by her + others... but only if she approves of them first:
For Alex alex needs to prove herself as BOTH dom and sub (so you need to do both sides of training with her to completion with Antlers)
For Bob he needs to be approved for keyholding, then something, something showing that he has mental as well as physical power/another "lesson" in dominance (bondage focused?)
Kurt you first need to unlock him as keyholder (~automatic on his reputation, but requires him and Antlers meet, she makes a cryptic reference to things he did in the war that she should NOT know about/he refuses to confirm or deny) for proving Kurt's worthiness to have your collar to Antlers, she tasks him with demonstrating his ability to train a "proper" maid, so a prep scene where he trains you/you have to convince him to train you harder, then a "test" where Antlers loads you up with vibrators and restraints and you have to show full maid decorum despite the distractions.
your predecessor was a natural sub, which was why Antlers selected her. Unlike <<=setup.getNpcName('npc_evil_nurse', 'formal')>>, however, your predecessor was ambitious... and Antlers was a bit too protective of her personal secretary against Pawn's growing machinations. Pawn "stealing?" Bambi? That was a lie to keep Antlers in line, what actually happened was Bambi came to him, looking for advancement, after all Antlers is great, but director isn't the same as CEO. Pawn (incorrectly) sensing a trap hands her over to Twig to "figure out the play"... and by the time Twig has finished failing there's no way she can be sent back without Antlers going off the handle. So he orders Primrose to "fix" her and takes her as his own and lies to Antlers to hold Bambi over her... and force her to set her sights on a new SISSI secretary...
The revelation would come after Horn is brought down and Antlers is reinstated, Pawn drops in to congratulate (thinking she's still evil antlers) and drops the information, which stretches Antlers' ability to keep her cool/after Pawn leaves AIKO pulling records to confirm that this time, Pawn isn't lying/*#
#desc: open maid outfit box (gift from landlord)
#status: FINISHED 0.7.2.0
#ignore_spell: tm
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'maid_clothing_box'>>
<<set $scene.itemOwned = false>>
<<set $scene.allItemOwned = true>>
<<if !setup.checkItemOwned('maid_uniform_black')>>
<<addItem 'maid_uniform_black'>>
<<set $scene.allItemOwned = false>>
<<else>>
<<set $scene.itemOwned = true>>
<<if setup.inWardrobe('maid_uniform_black')>>
<<wardrobeToItem 'maid_uniform_black'>>
<</if>>
<</if>>
<<if !setup.checkItemOwned('maid_uniform_apron')>>
<<addItem 'maid_uniform_apron'>>
<<set $scene.allItemOwned = false>>
<<else>>
<<set $scene.itemOwned = true>>
<<if setup.inWardrobe('maid_uniform_apron')>>
<<wardrobeToItem 'maid_uniform_apron'>>
<</if>>
<</if>>
<<if !setup.checkItemOwned('maid_headdress')>>
<<addItem 'maid_headdress'>>
<<set $scene.allItemOwned = false>>
<<else>>
<<set $scene.itemOwned = true>>
<<if setup.inWardrobe('maid_headdress')>>
<<wardrobeToItem 'maid_headdress'>>
<</if>>
<</if>>
<<if !setup.checkItemOwned('mary_janes_black')>>
<<addItem 'mary_janes_black'>>
<<set $scene.allItemOwned = false>>
<<else>>
<<set $scene.itemOwned = true>>
<<if setup.inWardrobe('mary_janes_black')>>
<<wardrobeToItem 'mary_janes_black'>>
<</if>>
<</if>>
<<if !setup.checkItemOwned('thigh_stockings_white')>>
<<addItem 'thigh_stockings_white'>>
<<set $scene.allItemOwned = false>>
<<else>>
<<set $scene.itemOwned = true>>
<<if setup.inWardrobe('thigh_stockings_white')>>
<<wardrobeToItem 'thigh_stockings_white'>>
<</if>>
<</if>>
<<if !$player.sec_style.clothing.maid>>
<<set $player.sec_style.clothing.maid = "obedient">>
<<setThreshold 'feminization' 'maid_feminization' 'cleaning_maid'>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_in'] 'latex_outfit' _nextDate>>
<<set $clothSets.push({
"name":"Maid Outfit",
"data": ["maid_uniform_black", 'maid_uniform_apron', 'maid_headdress', 'mary_janes_black', 'thigh_stockings_white', 'maid_uniform_black'],
"important":true,
"type" : "maid"
})>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
Peeling off the tape holding it closed, you open the box to find a gorgeous, cute, maid's outfit.<br>
<br>
<<if setup.getTotalValue("feminization") >= 15>>
<<printThought "Ooooh, so cute!">>
<<elseif setup.getTotalValue("feminization") > 7>>
<<printThought "I guess I really should have expected that...">>
<<else>>
<<printThought "Really? How feminised do people want me to be!?">>
<</if>>
<br><br>
<<if $scene.allItemOwned>>
You unpack a VERY familiar maid outfit, so familiar as to be identical and you have a strange feeling that, in fact, you already own this exact ensemble...
<<elseif $scene.itemOwned>>
Unpacking things you find everything an aspiring cute maid could desire, stockings, heels, apron and a dress with a nice bouncy skirt and even a cute headpiece. A few of the pieces you recognise since you already own them, but "filling out the set" is certainly a perk... though you see little purpose in owning dupes... even as you have a weird feeling that, in fact, you do not...<br>
<br>
Reading the label you learn it is all made out of ultra-satin(tm); all the smooth, gentle feel of satin, but with orders of magnitude more durability and easy to clean. "No matter how dirty it gets, still washes in minutes!" the cheesy marketing copy boasts.
<<else>>
Unpacking things you find everything an aspiring cute maid could desire, stockings, heels, apron and a dress with a nice bouncy skirt and even a cute headpiece.<br>
<br>
Reading the label you learn it is all made out of ultra-satin(tm); all the smooth, gentle feel of satin, but with orders of magnitude more durability and easy to clean. "No matter how dirty it gets, still washes in minutes!" the cheesy marketing copy boasts.
<</if>>
<br><br>
[<<moveTo $locationbeforeuseage "Put things away." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: landlord gives you another maid's outfit
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.maid>>
<<set $player.sec_style.clothing.maid = "obedient">>
<<setThreshold 'feminization' 'maid_feminization' 'cleaning_maid'>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_in'] 'latex_outfit' _nextDate>>
<<set $clothSets.push({
"name":"Maid Outfit",
"data": ["maid_uniform_black", 'maid_uniform_apron', 'maid_headdress', 'mary_janes_black', 'thigh_stockings_white', 'maid_uniform_black'],
"important":true,
"type" : "maid"
})>>
<</if>>
<<if !setup.checkItemOwned('maid_uniform_black')>>
<<addItem 'maid_uniform_black'>>
<<elseif setup.inWardrobe('maid_uniform_black')>>
<<wardrobeToItem 'maid_uniform_black'>>
<</if>>
<<if !setup.checkItemOwned('maid_uniform_apron')>>
<<addItem 'maid_uniform_apron'>>
<<elseif setup.inWardrobe('maid_uniform_apron')>>
<<wardrobeToItem 'maid_uniform_apron'>>
<</if>>
<<if !setup.checkItemOwned('maid_headdress')>>
<<addItem 'maid_headdress'>>
<<elseif setup.inWardrobe('maid_headdress')>>
<<wardrobeToItem 'maid_headdress'>>
<</if>>
<<if !setup.checkItemOwned('mary_janes_black')>>
<<addItem 'mary_janes_black'>>
<<elseif setup.inWardrobe('mary_janes_black')>>
<<wardrobeToItem 'mary_janes_black'>>
<</if>>
<<if !setup.checkItemOwned('thigh_stockings_white')>>
<<addItem 'thigh_stockings_white'>>
<<elseif setup.inWardrobe('thigh_stockings_white')>>
<<wardrobeToItem 'thigh_stockings_white'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
You're a bit nervous as <<=setup.getNpcName('npc_landlord', 'first')>> leads you into <<his npc_landlord>> flat and then to <<his npc_landlord>> bedroom.<br>
<br>
Leaving you standing next to the bed <<he npc_landlord>> digs through <<his npc_landlord>> closet to come up with a box and hand it to you.<br>
<br>
"@@.npc_landlord;Here, change.@@"<br>
<br>
Opening the box, you find a complete maid's outfit from cute shoes all the way up to a hairpiece.<br>
<br>
<<printThought "How many of these does <<he npc_landlord>> have?">><br>
<br>
Looking back at <<him npc_landlord>> you see no real choice, placing the box on the bed and starting to remove your clothes only for <<him npc_landlord>> to shake <<his npc_landlord>> head in embarrassment.<br>
<br>
"@@.npc_landlord;No, no, I'm not going to force you to do it in front of me! You can use the bathroom.@@"<br>
<br>
[<<moveTo "event_landlord_maid_outfit_regift_2" "Head into the bathroom." 0 "<<set $scene.flirty=false>>">>]<br>
<<if $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_landlord_maid_outfit_regift_2" "Ignore <<his npc_landlord>> instruction and strip in front of <<him npc_landlord>>." 0 "<<set $scene.flirty=true>>">>]<br>
<<else>>
[@@.link_locked;You don't have the courage to strip in front of <<him npc_landlord>>.@@]
<</if>>
</div>/*#
#desc: change into maid's outfit after being ordered
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasThreshold('feminization', 'maid_feminization', 'cleaning_maid')>>
<<setThreshold 'feminization' 'maid_feminization' 'cleaning_maid'>>
<</if>>
<<wearItemSet 'maid_basic_black'>>
<<wearItem 'mary_janes_black' true>>
<<wearItem 'thigh_stockings_white' true>>
<<if $scene.flirty>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.flirty>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<<else>>
<<createAdvBGR "./images/locations/landlord_bathroom.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.flirty>>
Ignoring <<his npc_landlord>> instructions you continue removing your clothes, setting your current outfit to one side as you stand naked for several moments before picking up the first piece of maid attire.<br>
<br>
Holding up <<his npc_landlord>> hands <<he npc_landlord>> makes an attempt to block <<himself npc_landlord>> from seeing before turning around to face the other way, but you can see <<him npc_landlord>> sneaking the occasional peek as you sensuously slip into the maid's outfit.<br>
<br>
You announce that you're done, giving a little twirl to show off once <<hes npc_landlord>> facing you again and asking if that's better.
<<else>>
Stepping into the bathroom you close the door and quickly change clothes, putting your current outfit in a neat pile and donning the full maid attire before checking yourself in the mirror.<br>
<br>
<<printThought "Wow, I really do look like a cute, submissive maid...">><br>
<br>
Stepping back out you ask if your outfit is okay to start work?
<</if>>
<br><br>
"@@.npc_landlord;Si, muy, muy... better.@@"<br>
<br>
You can't help but notice the bulge in <<his npc_landlord>> jeans confirming that assessment, but <<he npc_landlord>> quickly turns away and leads you back off.<br>
<br>
[<<moveTo "event_landlord_maid_work" "Get to work." 0>>]
</div>/*#
#desc: meet chess player at maid cafe
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You're working as usual when you notice a bit of a commotion to the side as a customer storms out in a huff. Concerned, you follow their track backwards to see a <<man>> sitting in front of a chess board looking very self-satisfied as <<he>> starts packing the pieces.<br>
<br>
One of your fellow waitresses notices your concern and explains.<br>
<br>
"@@.npc_waitress;Ah, that's what we privately call the chess-hole or, as <<he>> insists on being referred to "The Master." <<He>> isn't technically disruptive, but <<he>>'s kind of a smarmy jerk when <<he>> sets up shop to play. I don't really do chess, and <<he>> plays some weird variant anyway that I've never seen anyone beat <<him>> at. <<He>> tips well, so we kind of let <<him>> be, but damn I'd love to see someone kick <<his>> condescending ass someday.@@"<br>
<br>
You thank her for the information and continue on with your shift.<br>
<br>
<<printThought "Have to keep an eye out for that <<guy>> in the future, maybe give <<him>> a lesson...">><br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Resume your shift." 2700>>]
</div>/*#
#desc: talk to chess player at maid cafe
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_maid_cafe_chess_play_maid_final_win_5")>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess_maid")>>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<if State.hasPlayed("event_maid_cafe_chess_play_maid_final_win_5")>>
The chess player, dressed in a full poofy maid outfit, smiles up at you. "@@.npc_chess;Hiya! Thanks again for beating me... my ego was totally out of control and it turns out I love being a maid! I'm on break now if you wanted to play a quick friendly? And, while I'm, of course, plugged, I promise that it's not hooked up to the cheating engine!@@"
<<elseif State.hasPlayed("event_maid_cafe_chess_play_maid_final_lose_1")>>
The chess player leers up at you. "@@.npc_chess;Hungry for more? If you want to play, it'll be the same stakes as last time.@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("penis") > 15>>
<<printThought 'That means if I lose, I suck <<him>> off, but if I win, <<he>> has to work a shift in "full uniform." So, like... totally a win/win for me!'>>
<<else>>
<<printThought 'That means if I lose, I suck <<him>> off, but if I win, <<he>> has to work a shift in "full uniform." Last time did not go so well...'>>
<</if>>
<<elseif State.hasPlayed("event_maid_cafe_chess_play_maid_1_won")>>
The chess player leers up at you. "@@.npc_chess;Oh, it's you... you know I let you win. Let me know when you're ready to play a SERIOUS game, with actual stakes. Then I'll show you how a real Fairy Chess Master plays the game.@@"
<<else>>
The chess player glances up at you for just a moment. "@@.npc_chess;Doing good on coffee right now, thanks though.@@"<br>
<br>
<<if State.hasPlayed("event_maid_cafe_chess_play_maid_1_won") || $player.flags.maidcafe.events.chess.lost_normal > 0>>
<<printThought "It's like <<he>> doesn't even recognise me, <<he>> just sees the maid uniform...">>
<<else>>
<<printThought "Wow, what a jerk. It's like <<he>> can't even imagine I might be here to play...">>
<</if>>
<</if>>
<br><br>
<<if State.hasPlayed("event_maid_cafe_chess_play_maid_final_win_5")>>
[<<moveTo "event_maid_cafe_chess_play_friendly" "Sit down for a friendly game." 60>>]<br>
<<elseif State.hasPlayed("event_maid_cafe_chess_play_maid_final_lose_1")>>
<<He>> leers up at you, "@@.npc_chess;You're back for more? Gotta say I'm impressed... or maybe you're just looking for another taste of my big cock? Either way, I'm ready to give it to you...@@"<br>
<br>
You notice your fellow maidtresses looking over, it seems that, despite your loss, there's eager hope for you to finally put "The Master" in <<his>> place.<br>
<br>
<<if !$player.virgin.blowjob>>
[@@.link_locked;You recall <<his>> terms; no way are you going to risk giving a blow-job because you lost a chess match!@@]
<<else>>
<<if State.hasPlayed("theme_ai_chess_1") && setup.checkItemTypeTag('plug', ['vibrating']) && setup.checkItemTypeTag('plug', ['ems'])>>
You clench down on the plug in your rear, preparing to take "directions" from your AI advisor...<br>
<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final" 'Follow the "back seat" directions and make your move.' 600 "<<set $scene.aiCheat=true>><<set $scene.wager=true>>">>]<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final" "Ignore any buzzing recommendations and play your own game." 600 "<<set $scene.aiCheat=false>><<set $scene.wager=true>>">>]<br>
<<else>>
[<<moveTo "event_maid_cafe_chess_play_maid_final" "Accept <<his>> terms and ask for a rematch." 1800 "<<set $scene.wager=true>>">>]<br>
<</if>>
<</if>>
<<elseif $player.flags.maidcafe.events.chess.lost_maid > 0>>
"@@.npc_chess;Same stakes as before, twenty credits a game, you in?@@"<br>
<br>
<<if $player.money.total >= 20>>
[<<moveTo "event_maid_cafe_chess_play_maid_1" "Sit down for a game." 60>>]<br>
<<else>>
[@@.link_locked;You do not have enough cash to play@@]<br>
<</if>>
<<else>>
[<<moveTo "event_maid_cafe_chess_play_first_1" "Sit down for a game." 60>>]<br>
<</if>>
<<else>>
<<if State.hasPlayed("event_maid_cafe_chess_play_maid_final_win_2")>>
The chess playing maid looks up at you with a smile. "@@.npc_chess;Not working today? That's cool. I'm on break now if you wanted to play a quick friendly. I'll note that, while I'm, of course, plugged, I promise that it's not hooked up to the cheating engine!@@"
<<elseif State.hasPlayed("event_maid_cafe_chess_play_maid_1_won")>>
The chess player looks at you and shakes their head, "@@.npc_chess;Sorry, I'm waiting for someone else, don't have time to play today.@@"<br>
<br>
<<if $player.flags.maidcafe.events.chess.lost_maid > 0>>
<<printThought "Wow, one loss and they totally tuck tail... maybe I should come back again dressed as a maid...">>
<<else>>
<<printThought "Wow, one loss and they totally tuck tail... I wonder if a different outfit might entice them into another game? They seem pretty dismissive of the maids...">>
<</if>>
<<elseif $player.flags.maidcafe.events.chess.lost_normal > 0>>
The chess player looks at you with a grin "@@.npc_chess;Ready for another game?@@"<br>
<br>
<<if State.hasPlayed("event_maid_cafe_chess_play_maid_1_won")>>
<<printThought "Wow, they totally don't recognise that I beat them dressed as a maid...">>
<<else>>
<<printThought "I guess they think I'm an easy win...">>
<</if>>
<<else>>
They greet you with a smile. "@@.npc_chess;Interested in a game?@@"<br>
<br>
<<if State.hasPlayed("event_maid_cafe_chess_play_maid_1")>>
<<printThought "They totally don't recognise me out of a maid outfit...">><br>
<br>
<</if>>
<</if>>
<br><br>
<<if State.hasPlayed("event_maid_cafe_chess_play_maid_final_win_2")>>
[<<moveTo "event_maid_cafe_chess_play_friendly" "Sit down for a friendly game." 60>>]<br>
<<else>>
<<if $player.flags.maidcafe.events.chess.lost_normal > 0>>
"@@.npc_chess;Same stakes as before, twenty credits a game, you in?@@"<br>
<br>
<<if $player.money.total >= 20>>
[<<moveTo "event_maid_cafe_chess_play_1" "Sit down for a game." 60 "<<set $scene.ignoreAi=false>>">>]<br>
<<else>>
[@@.link_locked;You do not have enough cash to play.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_maid_cafe_chess_play_first_1" "Sit down for a game." 60>>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "room_mall_cafe" "Walk away." 60>>]
</div>/*#
#desc: sit down to play chess first time
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -20>>
<<set $scene.chess = true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<div id="invframe" class="scrolltext">
You sit down and place your credits next to the board
<<if setup.checkVisibleClothingTag('maid') > 60>>
the <<man>> looks surprised, but then grins. "@@.npc_chess;Well, well, your coworkers didn't warn you off? The delusion of some dumb service bimbo could have a chance against me! Still, I got no problem taking your credits...@@" Even with the warning you can barely believe how patronising <<he>>'s acting as <<he>>
<<else>>
as the <<man>> grins and starts
<</if>>
arranges the pieces on the board.<br>
<br>
"@@.npc_chess;So, appropriate for the venue, this is a Fairy Chess variant — the Queen is replaced by an Amazon — moves like a queen or a knight, and the bishops are replaced by Princesses — moves like a bishop or a knight.@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
You nod in understanding.
<<else>>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "Wow, that's, like, even more complicated, and chess is already hard... and not the fun type of hard!">>
<<else>>
<<printThought "I think the knight is the horsey? This is so complicated!">>
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "This sounds complicated...">>
<<else>>
<<printThought "Yikes, I can barely remember how the knight moves normally!">>
<</if>>
<</if>>
<</if>>
<br><br>
Your opponent grins and motions for you to start "@@.npc_chess;I'll let you play white... which means you go first.@@"<br>
<br>
[<<moveTo "event_maid_cafe_chess_play_first_2" "Play." 600>>]
</div>/*#
#desc: play chess first time (and lose)
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -20>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<set $player.flags.maidcafe.events.chess.lost_maid += 1>>
<<else>>
<<set $player.flags.maidcafe.events.chess.lost_normal += 1>>
<</if>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("smart") > 10>>
You struggle a bit as you focus on remembering the new rule-set,
<<if setup.getTotalValue("smart") > 15>>
losing a couple of your key pieces early due to evaluating the board under "normal" rules.
<<else>>
and it costs you a few key pieces early in the game.
<</if>>
You still put up a fight as it gets to the mid-game, but you're just too far behind on resources to recover and end up losing not long after.
<<else>>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
Chess is, like... hard, and
<<if setup.getTotalValue("smart") > 5>>
you barely make it to the mid-game
<<else>>
the game has barely begun, with <<him>> repeatedly having to correct you on how different pieces move.
<</if>>
when <<he>> announced "@@.npc_chess;Check-mate.@@" You look from the board to <<him>> in confusion "@@.npc_chess;That means you've lost — see, my knight has your king pinned and you can't move anywhere else.@@"<br>
<br>
<<if $fetish.bestiality_hard>>
<<printThought "Mmmm... <<he>> called it a knight, but it's totally a horsey. I'd like to be pinned down by a horse...">>
<<else>>
<<printThought "This is like... so complicated!">>
<</if>>
<<else>>
You were never exactly great at chess,
<<if setup.getTotalValue("smart") > 5>>
and that seems to have extended to this variant; <<he>> beats you easily.
<<else>>
and you seem to have only gotten worse, <<he>> wipes you out in barely a dozen moves without you ever really understanding what's going on.
<</if>>
<</if>>
<</if>>
<br><br>
<<if setup.checkVisibleClothingTag('maid') > 60>>
Your triumphant opponent grins as <<he>> collects <<his>> winnings. "@@.npc_chess;Don't be too hard on yourself. After all, chess is the game of kings, not maids. Plus, if you were any smart at all, well... I doubt you'd be working some bimbo service job, right?@@"<br>
<br>
The <<man>> laughs as you walk away. A fellow maidtress offers you a moment of comfort.<br>
<br>
"@@.npc_waitress;Told you <<he>> was kind of a jerk. Credit for trying though, most of the girls just try to ignore <<him>> unless they're assigned to <<his>> table.@@"
<<else>>
The <<man>> smirks as <<he>> collects <<his>> winnings. "@@.npc_chess;Good game... feel free to come back again anytime you want to watch a master.@@"
<</if>>
<br><br>
You glance back, the chess-player looks to be packing up for the day.<br>
<br>
[<<moveTo "room_mall_cafe" "Walk away." 60>>]
</div>/*#
#desc: play chess repeatable (non-maid)
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.chess = true>>
<<set $scene.win = setup.getTotalValue("smart") > 15 && (setup.getTotalValue("smart") + $player.flags.maidcafe.events.chess.lost_normal + $player.flags.maidcafe.events.chess.lost_maid) > 20 && setup.hasPermBonus("smart", "cyber")>>
<<if $scene.win>>
<<initRoom>>
<<moveTo "event_maid_cafe_chess_play_1_won">>
<<else>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_chess'
0
'theme_ai_chess_1'
false
>>
<<set $player.flags.maidcafe.events.chess.lost_normal += 1>>
<<addCredits -20>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'very' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<div id="invframe" class="scrolltext">
<<if !$scene.ignoreAi>>
You sit down for another game of chess.<br>
<br>
<<else>>
You ignore the buzzing in your rear and just focus in on the board.<br>
<br>
<</if>>
<<if State.hasPlayed("theme_ai_chess_1") && setup.checkItemTypeTag('plug', ['vibrating']) && setup.checkItemTypeTag('plug', ['ems'])>>
A couple moves into opening you tentatively reach for a piece only for the plug in your rear to give you a quick, sharp shock. Pausing, you let your hand drift over the board until a more pleasurable buzzing points you towards a far better move.<br>
<br>
[<<moveTo "event_maid_cafe_chess_play_1_cheat" 'Let, <<=setup.getNpcName("npc_ai", "first")>>, by way of your ass, guide the way...' 600>>]<br>
[<<moveTo "event_maid_cafe_chess_play_1" "Ignore the hint and play a fair game using only your own intellect." 600 "<<set $scene.ignoreAi=true>>">>]<br>
<<elseif setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15 && (setup.getTotalValue("smart") + $player.flags.maidcafe.events.chess.lost_normal + $player.flags.maidcafe.events.chess.lost_maid) > 20>>
You feel like you're playing a perfect game, leveraging intellect and experience to handle your opponent through the opening and into the mid-game... but, as if <<he>> flipped a switch, what you initially see as almost random moves proving to be setting perfect traps that see your resources dwindle and check-mate following soon after.<br>
<br>
You look at your opponent in shock, noticing that <<he>> is breathing heavy and sweating as <<he>> shifts in <<his>> seat, distracted for several moments before dropping into the expected victory speech.<br>
<br>
"@@.npc_chess;You played a good game, but you were going against The Master. I was just seeing what you had, my true victory was never in doubt!@@"<br>
<br>
<<printThought "At the end they were playing like a computer! I don't know how I can compete without doing the same...">>
<<elseif setup.getTotalValue("smart") > 15>>
You play an even match, but your opponent's greater familiarity with the alternate rule-set gives them the win.<br>
<br>
They grin as they collect their winnings. "@@.npc_chess;You played a good game, but you were going against The Master. My victory was never in doubt.@@"<br>
<br>
<<printThought "Maybe with more practice I could beat <<him>>?">>
<<else>>
You feel like you're off to a decent start but it ends up all falling apart as you realise that you were relying on "normal" chess tactics and your opponent uses <<his>> greater familiarity with the Princess and Amazon's movement patterns to control the game and force you to concede..<br>
<br>
<<printThought "This is tough... I need to spend more time studying if I'm going to cope with these weird rules.">><br>
<br>
They grin as they collect their winnings. "@@.npc_chess;You played a decent game, but you were going against The Master. My victory was never in doubt.@@"
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
You try to concentrate on the game but chess, is, like... really hard. As your pieces dwindle in number you start moving more and more randomly and it isn't many moves later before <<he>> announces <<his>> victory.
<<else>>
You're still struggling with this new variant of chess and your opponent hands you a loss with ease.
<</if>>
<br><br>
"@@.npc_chess;Check-mate,@@" <<he>> states with a grin, "@@.npc_chess;Maybe chess just isn't your game. Not that I don't enjoy your money, but this is the game of kings and you, well... have you considered checkers?@@"
<<else>>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
Chess is, like, hard... and you aren't quite sure why you even bother. You push your pieces around almost at random resulting in swift loss.
<<else>>
Chess is really hard... and your opponent is WAY better than you are. Moving <<his>> pieces with confidence <<he>> easily moves across the board and finishes you off.
<</if>>
<br><br>
"@@.npc_chess;You know some people just aren't suited for chess.@@" <<He>> jokes as <<he>> collects <<his>> winnings, "@@.npc_chess;It's the game of kings, after all and you, well... have you considered checkers? Or maybe tic-tac-toe would be more your speed? Oh, I know! Chutes and Ladders!@@"
<<if setup.getTotalValue("bimbofication") > 15>>
<br><br>
<<printThought "Mmmm, maybe sluts and lay-hers?">>
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
<<printThought "I, like... really need to study up if I'm going to beat <<him>>, but that sounds hard... maybe I should stick to hard cocks instead? Those are, like, way more fun!">>
<<else>>
<<printThought "I, really need to study up if I'm ever going to beat <<him>>...">>
<</if>>
<</if>>
<br><br>
<<if $player.money.total >= 20>>
[<<moveTo "event_maid_cafe_chess_play_1" "Rematch!" 60 "<<set $scene.ignoreAi=false>>">>]<br>
<<else>>
[@@.link_locked;You do not have enough cash to play@@]<br>
<</if>>
[<<moveTo "room_mall_cafe" "Walk away." 60>>]
</div>/*#
#desc: play chess repeatable and cheat with ai help
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 20>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'little' $EXPOSED>>
<<applyExperience 'anal' _anal 'little' $EXPOSED>>
<<changeHorny 20>>
<<applyStress 5>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<div id="invframe" class="scrolltext">
You let <<=setup.getNpcName('npc_ai', 'first')>> guide your hand, feeling the subtle shift of the plug stuffed in your rear as she feeds you moves.<br>
<br>
As the game rolls on focusing becomes more challenging, the tension of the game blending with the stimulation in your rear to have you breathing a bit heavy. Somewhat surprisingly, your opponent seems almost similarly distracted, the two of you locked in a tense end-game battle before, with your plug throbbing <<if $player.body_ref.penis>>against your prostate<<else>>in your rear<</if>> in encouragement, you cinch the win with a forced checkmate.<br>
<br>
Breathing heavy the <<man>> spares a glare of annoyance before hurriedly packing up, leaving your winnings behind and walking somewhat unsteadily as <<he>> leaves the cafe.<br>
<br>
<<printThought "Hmm... less satisfying than I had hoped... maybe if I beat <<his>> pants off while dressed as a maid to prove that cute and smart go together?">><br>
<br>
[<<moveTo "room_mall_cafe" "Walk away." 60>>]
</div>/*#
#desc: play chess repeatable and win (non-maid)
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 20>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'very' $EXPOSED>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<div id="invframe" class="scrolltext">
You sit down for another game of chess.
<<if setup.getTotalValue("smart") >= 20>>
With only mild reference assistance from the voice in your head, you crush your opponent, bypassing <<his>> defences with ease until <<he>> finds <<him>>self staring at the board in a daze and <<he>> lays <<his>> king down.<br>
<br>
"@@.npc_chess;Damn, it's like I'm playing against a computer...@@"
<<elseif setup.getTotalValue("smart") >= 18>>
Now that you've gotten a bit of experience playing this variant of Fairy Chess you manage to start stringing things together, engaging in a close game, but one you eventually win through a clever sequence of forks and pins that forces your opponent to all but sacrifice <<his>> way into a checkmate.<br>
<br>
"@@.npc_chess;How did you do that? You must have really been studying to know a trick like that...@@"
<<else>>
You leverage your experience from your prior losses to exploit your opponents weakness, chipping away at <<his>> board position until <<he>> is forced to concede.<br>
<br>
"@@.npc_chess;How did you- But that opener should be unbeatable...@@"
<</if>>
<br><br>
The <<man>> starts to pack up and you sense more than a little bitterness from <<him>> as you collect your winnings.<br>
<br>
[<<moveTo "room_mall_cafe" "Walk away." 60>>]
</div>/*#
#desc: play chess as maid
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = $player.flags.maidcafe.events.chess.lost_normal == 0>>
<<set $scene.chess = true>>
<<set $scene.win = setup.getTotalValue("smart") > 15 && (setup.getTotalValue("smart") + $player.flags.maidcafe.events.chess.lost_normal + $player.flags.maidcafe.events.chess.lost_maid) > 20>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You sit down and the <<man>> leers at your outfit. "@@.npc_chess;Well, well, your coworkers didn't warn you off? The delusion of some dumb service bimbo could have a chance against me! Still, I got no problem taking your credits...@@" Even with the warning as to the customer's self-importance you can barely believe how patronising <<he>>'s acting as <<he>>
<<else>>
You sit down as the <<man>>, once again, leers at your outfit. "@@.npc_chess;Back for more? Do you get off on being mentally humiliated, or something? I guess that would be a boon in your line of work. Here, I'll make your inevitable defeat even more embarrassing, you can play white... that means you go first.@@" <<He>> adds, patronisingly as <<he>>
<</if>>
arranges the pieces on the board.<br>
<br>
<<if $scene.win>>
[<<moveTo "event_maid_cafe_chess_play_maid_1_win" "Make your move." 600 "<<set $scene.aiCheat=false>>">>]
<<else>>
<<if State.hasPlayed("theme_ai_chess_1") && setup.checkItemTypeTag('plug', ['vibrating']) && setup.checkItemTypeTag('plug', ['ems'])>>
You clench down on the plug in your rear, preparing to take "directions" from your AI advisor...<br>
<br>
[<<moveTo "event_maid_cafe_chess_play_maid_1_win" "Make your move." 600 "<<set $scene.aiCheat=true>>">>]<br>
[<<moveTo "event_maid_cafe_chess_play_maid_1_lose" "Ignore any buzzing recommendations and play your own game." 600 "<<set $scene.aiCheat=true>>">>]
<<else>>
[<<moveTo "event_maid_cafe_chess_play_maid_1_lose" "Make your move." 600 "<<set $scene.aiCheat=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: play chess as maid and win
#status: RELEASED 0.8.9.0
#ignore_spell: kruger
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'very' $EXPOSED>>
<<if $scene.aiCheat>>
<<applyExperience 'anal' _anal 'little' $EXPOSED>>
<<changeHorny 20>>
<<applyStress 5>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<div id="invframe" class="scrolltext">
<<if $scene.aiCheat>>
With <<=setup.getNpcName('npc_ai', 'first')>> guiding your hand it feels like you can't lose, systematically dismantling your opponent's board position with every arousing buzz of your plug.
<<elseif setup.getTotalValue("smart") >= 20>>
Your moves are cunning and brutal, your opponent's initial flippancy soon turning to concern as you systematically take <<him>> apart, ravaging <<his>> board position before dropping the hammer.
<<elseif setup.getTotalValue("smart") >= 18>>
Now that you've gotten a bit of experience playing this variant of Fairy Chess, you manage to start stringing things together. You can tell <<he>>'s focusing much harder for the second half of the game, but after a close back and forth, you seal your win.
<<else>>
You leverage your experience from your prior losses to exploit your opponents weakness, chipping away at <<his>> board position until <<he>> is forced to concede.
<</if>>
<br><br>
"@@.npc_chess;What, no, that's impossible!@@" <<He>> states, staring at the board as if hoping to find some way out of the very obvious checkmate. "@@.npc_chess;I was going easy on you, anyway. That doesn't count.@@"<br>
<br>
You look around and notice that half the cafe, and all of your fellow maidtresses, are watching.<br>
<br>
"@@.npc_chess;Double or nothing! I was taking it easy and you still barely won. I doubt you have the courage to play for real.@@"<br>
<br>
"@@.npc_waitress;Yeah, right,@@" one of your fellow maidtresses calls out. "@@.npc_waitress;How about, after she stomps you again, you work a shift, see what it's like to have to put up with crap from snobby customers!@@"<br>
<br>
"@@.generic_female1;Yeah!@@" "@@.generic_male1;What, are you scared?@@" A chorus of encouragement rises up from maidtresses and customers alike...<br>
<br>
The <<man>> looks about ready to burst <<his>> top but there's no way <<he>> can back down now.<br>
<br>
"@@.npc_chess;Fine!, If she wants to go full Dunning-Kruger, I'll show you all! But if I win, which I will...@@" <<He>> glowers, and then flashes a leering grin in your direction, "@@.npc_chess;she has to suck my cock.@@"<br>
<br>
You suddenly remember the rules about sexual activity on the premises, but you glance over to see <<=setup.getNpcName("npc_butler","formal")>> peeking out... <<his npc_butler>> expression is neutral, seeming to leave the decision up to you.<br>
<br>
<<if !$player.virgin.blowjob>>
[@@.link_locked;No way are you going to risk giving a blow-job because you lost a chess match!@@]
<<else>>
<<if State.hasPlayed("theme_ai_chess_1") && setup.checkItemTypeTag('plug', ['vibrating']) && setup.checkItemTypeTag('plug', ['ems'])>>
[<<moveTo "event_maid_cafe_chess_play_maid_final" 'Accept the wager, how can you lose with <<=ps(setup.getNpcName("npc_ai","first"))>> help?' 1800 "<<set $scene.wager=true>><<set $scene.aiCheat=true>>">>]<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final" 'The risks are higher... but it would be more satisfying to beat your opponent without AI chicanery.' 1800 "<<set $scene.wager=true>><<set $scene.aiCheat=false>>">>]<br>
<<else>>
[<<moveTo "event_maid_cafe_chess_play_maid_final" "Accept the wager." 1800 "<<set $scene.wager=true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_maid_cafe_chess_play_maid_final" "Decline." 60 "<<set $scene.wager=false>>">>]
</div>/*#
#desc: play chess as maid and lose
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_chess'
0
'theme_ai_chess_1'
false
>>
<<set $player.flags.maidcafe.events.chess.lost_maid += 1>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'very' $EXPOSED>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<div id="invframe" class="scrolltext">
<<if $scene.aiCheat>>
You ignore the buzzing in your rear and focus on playing a "fair" game.<br>
<br>
<</if>>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
You're starting to understand the differences presented by the non-standard rules, but that just isn't enough compared to your opponent's experience and <<he>> routes you handily.
<<else>>
You're still struggling with the complexities added by the different rules, using normal chess tactics in this alternate version of the game clearly doesn't work as <<he>> captures almost all of your pieces.
<</if>>
<br><br>
You lay down your king. Your opponent pockets <<his>> winning with a smarmy grin. "@@.npc_chess;My, my, did you memorise a few openings? I guess you'd be good at that sort of thing from taking orders, but that's hardly enough to play chess properly. No, you really should just accept that you're mentally inferior, it's no crime, it's just what you are. You'll be much happier if you embrace something more your speed... like soap operas and fashion.@@"
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
Chess is, like... hard. As it becomes apparent you're in for another loss you find yourself fantasising about "amazon's" and princesses... why are the components of Fairy Chess so much more fun than the reality?
<<else>>
You do your best just to follow the course of the game, but it's clear your opponent is working multiple moves ahead and you never had a chance.
<</if>>
<br><br>
"@@.npc_chess;Pathetic. I should have known better than to expect a challenge from a waitress.@@" <<He>> states as <<he>> collects <<his>> winnings... "@@.npc_chess;You performed no better than the rest of your coworkers. So foolish. Just bring me my coffee and count yourself lucky for your tips. If you had any brains you wouldn't be doing such a mundane job.@@"
<<else>>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
Chess is, like... way too hard. Adding in the distraction of thinking about amazons and princesses and, well... you lose, badly.
<<else>>
You're struggling to remember how different pieces move, much less form a strategy, and you're beaten handily.
<</if>>
<br><br>
"@@.npc_chess;Pathetic. I almost feel bad taking this money from you.@@" <<He>> states as <<he>> collects <<his>> winnings... "@@.npc_chess;But, really, this is the only way you'll ever learn... if you can learn, honestly, I'm unsure. It is good for you that you have such a cute face, because there does not appear to be anything behind it.@@"
<</if>>
<</if>>
<br><br>
You bristle at another humiliating defeat.<br>
<br>
<<if $player.money.total >= 20>>
[<<moveTo "event_maid_cafe_chess_play_maid_1" "Rematch!" 60 "<<addCredits -20>>">>]<br>
<<else>>
[@@.link_locked;You do not have enough cash to play.@@]
<</if>>
[<<moveTo "room_mall_cafe" "Walk away." 60>>]
</div>/*#
#desc: play high-stakes chess as maid
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.chesss = true>>
<<if $scene.wager>>
<<set $scene.win = setup.getTotalValue("smart") >= 20>>
<<if $scene.win>>
<<applyStress -10>>
<<else>>
<<applyExperience 'humiliation' 12 'very' $EXPOSED>>
<</if>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'very' $EXPOSED>>
<<else>>
<<applyStress 5>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess")>>
<div id="invframe" class="scrolltext">
<<if $scene.wager>>
Your audience waits with bated breath as the board is set and play begins. Your opponent is playing white now, which means <<he>> goes first.
<<if $scene.win || $scene.aiCheat>>
<<He>> opens with a Queen's Gambit... which you seem to surprise <<him>> by accepting, taking advantage of the space to develop the more powerful pieces afforded to you by the modified rules.<br>
<br>
You can tell that <<he>>'s playing better than before, but it's also clear to the both of you that it isn't enough.
<<if $scene.aiCheat>>
Buzzing in your rear, <<=setup.getNpcName('npc_ai', 'first')>> gives you everything you need to claim the win.
<<elseif State.hasPlayed("theme_ai_chess_1") && setup.checkItemTypeTag('plug', ['vibrating']) && setup.checkItemTypeTag('plug', ['ems'])>>
Even without AI assistance your studies have paid off, and you have your opponent's number.
<</if>>
Steadily you take over the game, using the combination of your Amazon and your Princess to finally close the noose, pinning <<his>> King between them as you softly announce "@@.pc;Check-mate.@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10 || $options.fem>>
<<printThought "Pinned between a Princess and an Amazon... how curious that that is considered LOSING.">>
<<else>>
<<printThought "How apropos that <<his>> defeat should come at the hands of strong women...">>
<</if>>
<br><br>
<<He>> stares at the board for a long moment before reaching out and knocking <<his>> king over.<br>
<br>
A cheer goes up from the crowd as you swell with pride.<br>
<br>
Suddenly your fellow maids are at the front of the crowd, dragging <<him>>, and you, from your seats to eagerly help <<him>> "pay <<his>> debt." <br>
<br>
<<if $options.fem>>
[<<moveTo "event_maid_cafe_chess_play_maid_final_win_1" 'Watch her transformation...' 60>>]<br>
<<else>>
[<<moveTo "event_maid_cafe_chess_play_maid_final_win_1" 'Watch "her" transformation...' 60>>]<br>
<</if>>
<<else>>
<<if State.hasPlayed("theme_ai_chess_1") && setup.checkItemTypeTag('plug', ['vibrating']) && setup.checkItemTypeTag('plug', ['ems'])>>
You take a deep breath and focus past the buzzing in your rear, determined to win, or lose, all on your own.<br>
<br>
<</if>>
<<if setup.getTotalValue("smart") >= 18>>
<<He>> opens with a Queen's Gambit... which you decline, entering a battle for the centre of the board.<br>
<br>
You put up a good fight, but <<he>>'s definitely playing better than <<he>> was before and you slowly lose board position until, after a long battle, you are left no option save to concede.
<<elseif setup.getTotalValue("smart") >= 15>>
<<He>> opens strong, and the combination of <<his>> tighter than usual play, along with playing white, puts you on the back foot and you never recover. You have a couple clever trades but <<he>> never loses control of the game and you eventually find yourself routed.
<<else>>
<<He>> crushes you so fast your head is spinning.
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
By the end <<he>> seems to be almost toying with you, taunting you that maybe you're just too enticed by the possibility of tasting <<his>> cock to think straight. You blush in humiliation at the cruel insult, but are unable to offer a rebuttal, already anticipating your coming loss, and the subsequent debt-paying to be had.
<<else>>
By the end <<he>> seems to be almost toying with you, taunting you that your first win was pure luck... an assessment you might have to give <<him>> given how poorly you played.
<</if>>
<</if>>
<br><br>
The crowd seems to sigh as one as you lay your king down in concession. Your opponent grins, seeming to bask in their derision.
<<if setup.getTotalValue("smart") >= 18>>
"@@.npc_chess;A valiant effort, but you were never going to beat the Master at <<his>> own game... now, I believe there is the matter of your wager...@@"
<<elseif setup.getTotalValue("smart") >= 15>>
"@@.npc_chess;Pathetic, your prior win was surely a fluke. Now, as to the matter of your wager...@@"
<<else>>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
"@@.npc_chess;You clearly had cock on the brain... so let us get to it.@@"
<<else>>
"@@.npc_chess;Abysmal play, are you some sort of idiot twin of the person who beat me before? No matter, let us proceed to the matter of your wager...@@"
<</if>>
<</if>>
<<He>> grins wider as your audience rapidly disperses. Rising to <<his>> feet <<he>> grins and offers you <<his>> hand as <<he>> gestures out of the cafe towards a sign pointing towards the public restrooms...<br>
<br>
<<if setup.getTotalValue("penis") > 15>>
<<printThought "Sure being outplayed was embarrassing, but now I get to suck cock! So... am I REALLY a loser?">><br>
<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final_lose_1" "Eagerly pay your debt." 300 "<<set $scene.bj=true>>">>]<br>
[@@.link_locked;Pass up a blowjob? Never!@@]
<<else>>
<<printThought "I lost, so now I have to suck <<him>> off...">><br>
<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final_lose_1" "Pay your debt." 300 "<<set $scene.bj=true>>">>]<br>
<<if $player.money.total <= 0>>
[@@.link_locked;You are destitute and have nothing to trade with but yourself.@@]
<<else>>
[<<moveTo "event_maid_cafe_chess_play_maid_final_lose_1" "Offer <<him>> money instead." 300 "<<set $scene.bj=false>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
You decline <<his>> offer and <<he>> grins in triumph. "@@.npc_chess;The frailties of the <<if $options.fem>>service bimbo<<else>>feminine<</if>> mind, I should have expected such cowardice.@@"<br>
<br>
Your audience is deflated... and you feel bad for letting them down. Your foe merely chuckles as <<he>> gathers <<his>> things and leaves.<br>
<br>
[<<moveTo "room_mall_cafe" "Walk away." 60>>]
<</if>>
</div>/*#
#desc: chess opponent forced into maid attire
#status: RELEASED 0.8.9.0
#ignore_spell: quoi
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("generic","npc_chess_maid") setup.charImage("npc_waitress","npc_waitress_trayless") setup.charImage("npc_maid","npc_maid_dom_2")>>
<div id="invframe" class="scrolltext">
You follow behind the pack as the maidtresses lead your opponent to the changing room and set to work. Stripping <<him>> naked they are immediately amused by the fact that <<he>>'s locked in a chastity cage.<br>
<br>
"@@.npc_chess;It's to keep me focused on important things... and keep she-demons from trying to drain my <<if $options.fem>>intellectual<<else>>masculine<</if>> energy!@@" <<He>> complains, prompting the maidtresses to laugh even harder.<br>
<br>
<<if $fetish.sph>>
"@@.npc_waitress;Sure, hun — it's totally that, and not because a tiny thing like that is only good for being locked away. Hey, <<=setup.getNpcName("npc_maid","first")>>, show this loser what a REAL cock looks like!@@"<br>
<br>
With a swagger in her step <<=setup.getNpcName("npc_maid","first")>> walks to the front of the pack and lifts her skirt to reveal her two-handed broadsword. Even at half chub "The Destroyer" is double the size of the chess player, cage included. "@@.npc_waitress;Aww, look, it's straining in its prison!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> grins, dropping her skirt and laughing. "@@.npc_maid;There, there, that steel will keep you safe from the big, scary lady... until you're ready to beg to see how it tastes. You'd look cute with my skirt as a hat!@@"<br>
<br>
The <<man>> bristles... though you would swear <<he>> gets even harder inside <<his>> cage.
<<else>>
"@@.npc_waitress;Oh, you don't have to talk that <<if !$options.fem>>misogynistic <</if>>flim-flam around us, we know all about good girls being caged, see?@@" She lifts her skirt to show off her own locked <<getWordPenis false>>. "@@.npc_waitress;See, I'm a good girl who keeps her <<if $fetish.sissy>>sissy <</if>>clitty safe and secure... just like you! I will say, though,@@" she adds, as she fixes her panties and drops her skirt to hide everything away. "@@.npc_waitress;It's way more comfortable to be caged under a skirt, pants are always smooshing things together and making them pinch!@@"<br>
<br>
The <<man>> blushes even harder... though you would swear <<he>> swells in <<his>> cage.
<</if>>
<br><br>
<<=setup.getNpcName("npc_maid","first")>> laughs and gives the chess-player a slap on the ass... only to stop, groping the increasingly embarrassed <<man>> from behind.<br>
<br>
"@@.npc_maid;Hey! This <<if $fetish.sissy && !$options.fem>>sissy<<else>>girl<</if>> was cheating!@@"<br>
<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final_win_2" "Wait, what?" 180>>]
</div>/*#
#desc: chess opponent plug found
#status: RELEASED 0.8.9.0
#ignore_spell: q
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("generic","npc_chess_maid") setup.charImage("npc_waitress","npc_waitress_trayless") setup.charImage("npc_maid","npc_maid_dom_2")>>
<div id="invframe" class="scrolltext">
All eyes are on the hyper-embarrassed chess "Master" as <<=setup.getNpcName("npc_maid","first")>> bends them over to show a slender butt-plug peeking out from between their cheeks.<br>
<br>
"@@.npc_maid;Look at this cheater! Pretending to play above board while they were getting secret signals the whole time!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> reaches over to wiggle the plug as the fallen Master gasps and trembles. "@@.npc_maid;Tell me, if you're so clever, what move was that?@@"<br>
<br>
"@@.npc_chess;Q-queen takes rook?@@" They moan only for <<=setup.getNpcName("npc_maid","first")>> to scoff.<br>
<br>
"@@.npc_maid;More like Pawn promotes... normally that'd be to Amazon... but I think you'd make a MUCH better Princess. I guess this thing isn't sending a strong enough signal, hmm?@@" <<=setup.getNpcName("npc_maid","first")>> teases as she grabs the base of the plug and pulls it free with a pop. It's not quite the smallest plug you've ever seen... but it isn't much larger, either. "@@.npc_maid;Heh, no wonder you lost, if you're going to cheat, cheat BIG!@@" <<=setup.getNpcName("npc_maid","first")>> announces as <<=setup.getNpcName("npc_waitress","first")>> hands over a plug, nothing too mammoth<<if setup.getTotalValue("anal")>15>>, especially by your standards<<elseif setup.getTotalValue("anal") > 10>>, at least by your standards<</if>>, but easily twice the length and triple the girth of what they were wearing previously.<br>
<br>
Slick with lube, the plug slides into place remarkably easily as the "Chess Master" moans and full-body shudders. "@@.npc_maid;There you go! On the path to being a Chess GRAND Master... or at least being able to draw with a cute maid.@@"<br>
<br>
The other maidtresses cheer as <<=setup.getNpcName("npc_maid","first")>> stands the maid-to-be up and passes them off to <<=setup.getNpcName("npc_waitress","first")>>.<br>
<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final_win_3" "Witness the creation of a new maid(tress)!" 180>>]
</div>/*#
#desc: chess opponent dressed as maid
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("generic","npc_chess_maid") setup.charImage("npc_waitress","npc_waitress_trayless") setup.charImage("npc_maid","npc_maid_dom_2")>>
<div id="invframe" class="scrolltext">
"@@.npc_waitress;Speaking of becoming a maid...@@" <<=setup.getNpcName("npc_waitress","first")>> adds with a grin as she proffers a VERY frilly maid's outfit with several thick layers of petticoats. "@@.npc_waitress;Yes, this will fit you nicely...<<if !$options.fem>> only... well, with all this volume down below, we need something up top to balance it out!<</if>>@@"<br>
<br>
<<if $options.fem>>
The <<man>> wasn't exactly flat previously... but <<his>> existing breasts all but disappear under the massive set of falsies that are soon dropped over <<his>> shoulders, strapping tightly in place to take <<him>> from slightly below average to head-turning huge.
<<else>>
Before the <<man>> can reply somehow has dropped a very large set of falsies over <<his>> shoulders, strapping them in place so tight <<he>> gasps as <<he>> goes from skinny, flat-chested male to head-turning fake knockers.
<</if>>
<br><br>
"@@.npc_waitress;Much better!@@" The waitress adds with a grin as one of the taller maids raises the dress over the poor <<guy>>'s head and pulls it into place. <<He>>'s blushing like a tomato as they adjust things into position, before gasping again as a matching waist-cincher is wrapped around <<him>> from behind and pulled brutally tight. "@@.npc_waitress;Feel those curves coming in? Yeah, you're going to look great when we're done with you!@@"<br>
<br>
<<He>>'s taking short breaths as <<he>> tries to adjust to the corset before <<he>> is dumped into a chair. "@@.npc_waitress;Of course clothing is only part of the equation, ladies? Let's make this diamond shine!@@"<br>
<br>
Like a ravenous swarm the maids descend on <<him>> from every direction, <<=setup.getNpcName("npc_maid","first")>> supervising simultaneous painting of <<his>> fingers and toes at the same time as <<=setup.getNpcName("npc_waitress","first")>> goes to work with makeup. In a matter of minutes <<his>> complexion is contoured, plucked and painted to look like a cute, surprised, and perpetually blushing, girl; <<if $options.fem>>hair extensions adding length and volume<<else>>a long wig finishing off the transformation<</if>> as another maid waits impatiently for nails to dry, holding a pair of stockings and three-inch strappy heels.<br>
<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final_win_4" "Rise up ye new maid(tress)!" 180>>]
</div>/*#
#desc: chess opponent dressed as maid finished
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("generic","npc_chess_maid") setup.charImage("npc_waitress","npc_waitress_trayless") setup.charImage("npc_maid","npc_maid_dom_2")>>
<div id="invframe" class="scrolltext">
"@@.npc_waitress;We'll start you off easy,@@" <<=setup.getNpcName("npc_waitress","first")>> explains as the newly transformed<<if $options.fem>> chess "Master" <<else>> <<he>>... or should you say "she?" <</if>>gawks at the footwear. "@@.npc_waitress;Legs like yours should be <<if !$options.fem>>shaved and <</if>>shown off in at least twelve centimetre heels, but we'll take it simple for your first shift, see, these cute things even have platforms to make them easier!@@"<br>
<br>
<<His>> pouting expression would indicate that <<he>> doesn't quite buy the "easier" idea, but you notice <<he>> hasn't said a word through the whole transformation... and ever since the makeup went on has been constantly sneaking glances at<<if $options.fem>> her <<else>> "her" <</if>>reflection.<br>
<br>
Stockings rolled up, and shoes buckled on <<he>> is hauled to <<his>> wobbly feet as <<=setup.getNpcName("npc_waitress","first")>> grins and steps in front of <<him>>. "@@.npc_waitress;Hmm... such a pretty girl you make... perfectly dressed to put in some honest work, but there's something missing. The dress, the makeup, the nails... all perfect, but still missing a je ne sais quoi... that lusty enthusiasm that marks the best maids...@@" Her grin widens as her victim shakes and looks nervously up. "@@.npc_waitress;Oh, I know just the thing, a secret little bonus to put a real smile on your face... and silence that self-important boasting...@@"<br>
<br>
She produces a gag... but not just any gag, a jaw-stretching large clear ball-gag with a pawn suspended in its centre. You glance over at the the self-proclaimed "Chess Master" — already stuffed behind, looking on wide-eyed in shock.<br>
<br>
<<printThought "Wait... how long have they been planning this?">><br>
<br>
<<=setup.getNpcName("npc_waitress","first")>> glances over at you. "@@.npc_waitress;So, what do you think, champ... would our pretty new maid benefit from a nice little reminder to stay silent, humble, and subservient?@@"<br>
<br>
You glance at the newly-christened maid,<<if $options.fem>> she <<else>> "she" <</if>>may be staring in fear at the gag but... there's something about the way she's biting her pretty pink lips... how she's been meekly going along with this whole thing.<br>
<br>
<<printThought "She... she wants this, even if she never would have admitted it before she must have been hanging out at the cafe fantasising about something like this happening...">><br>
<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final_win_5" "A good maid should full-fill ALL of her responsibilities." 60 "<<set $scene.gag=true>>">>]<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final_win_5" "Such a big distraction would be a bit much for one's first day." 60 "<<set $scene.gag=false>>">>]
</div>/*#
#desc: chess opponent forced into maid attire - gag
#status: RELEASED 0.8.9.0
#ignore_spell: istance
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 1, 0, 0)>>
<<addEvent 'chessMaidMeeting' _nextDate>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.gag>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("generic","npc_chess_maid_gag")>>
<<else>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("generic","npc_chess_maid")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.gag>>
You grin, enjoying the way your opponent squirms as they wait for your decision. "@@.pc;Oh, she definitely needs practice holding her tongue... especially with all those distracting moans she's been making! Not even playing, and she's getting cheating tips!@@"<br>
<br>
The former "Master" trembles at the reminder of their plug as you move closer. As you lean in to bring the gag to her lips you whisper in her ear.
<<if setup.checkItemTypeWorn("plug")>>
"@@.pc;Enjoying your new plug? By the way... I had one in for my victory... maybe next time we go inflatable and each piece lost swells the... stakes.@@"
<<else>>
"@@.pc;Enjoying your new plug? Maybe next time we can both play plugged... maybe go inflatable and each piece lost swells the... stakes.@@"
<</if>>
she lets out a cute gasp, her lips parting perfectly for you to shove the gag in place and buckle it tight.<br>
<br>
"@@.npc_waitress;Oh, my! Just look at those pretty lips! Keep looking that adorable and this pawn is going to become a Princess soon enough!@@"<br>
<br>
Between the tight corset and the new occupant the newest maid is taking short, quick breaths, a helper on either side providing support as she takes her first heel-equipped steps out into the cafe...
<<else>>
You decide to show a touch of mercy, noting that it would be hard for them to "properly" greet customers with the large gag... and they'd probably drool all over their pretty new outfit!<br>
<br>
The former "Master" lets out a sigh of relief... but as the gag is put away you notice them casting one final longing glance after it.
<</if>>
<br><br>
<<=setup.getNpcName("npc_maid","first")>> sidles up next to you with a grin as the new "maidtress" heads out to begin her shift. "@@.npc_maid;Y'know, it seems you did multiple good deeds today — putting that chess-hole in <<his>> place was one thing, but I've seldom seen someone so immediately take to the role of a maid... I think we just swapped a full-time annoyance for a new part-time employee!@@"<br>
<br>
You follow <<=setup.getNpcName("npc_maid","first")>> back into the cafe where the "new" maid is already taking her first order, <<if $scene.gag>>curtsying in welcome to one of the cafe's regulars<<else>>rattling off an introductory welcome to a regular that seems practically rehearsed<</if>>.<br>
<br>
Your other co-workers flash you a grin and a thumbs up you decide to leave them to their fun. You glance back just before you leave the cafe and catch your opponent's eye. Things freeze for a moment as<<if $options.fem>> she <<else>> "she" <</if>>smiles before bashfully looking away and stumbling off to her next customer...<br>
<br>
[<<moveTo "room_mall" "Back to the mall." 300>>]
</div>/*#
#desc: suck cock for losing chess game
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_chess'
0
'theme_ai_chess_1'
false
>>
<<set $player.flags.maidcafe.events.chess.lost_maid += 1>>
<<if $scene.bj>>
<<applyExperience 'oral' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Mall Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $scene.bj>>
You follow your opponent into an empty stall where <<he>> wastes no time in unzipping <<his>> pants... to reveal a chastity cage.<br>
<br>
Noticing your expression of surprise <<he>> smirks. "@@.npc_chess;What? You don't think I wouldn't take precautions against women wanting to steal my <<if $options.fem>>feminine<<else>>masculine<</if>> juices? Chastity helps focus the mind, helps a <<man>> stay focused, avoid distractions of the flesh. You should try it, if you weren't such a wanton slut you might have time to study up more on chess strategy, like me.@@"<br>
<br>
If you were even thinking of objecting to the description, the fact that you're about to blow <<him>> stays your tongue. <<He>> sighs in relief as the lock clicks open and begins to rise to attention. "@@.npc_chess;Still, the occasional reward is useful for reinforcement... and beating you, well... that's definitely appropriate. Come on, slut, you know you want it.@@"<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
You make no effort to even bother hiding that yes, you do want it... you ALWAYS want more cock.
<<else>>
You try to restrain yourself but there's really no hiding your eagerness as you reach for <<his>> cock.
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
You turn up your nose, you're just doing this because you lost the bet... right?
<<else>>
You turn up your nose and glare at <<him>> as if to tell <<him>> that you're only doing this because you lost the bet.
<</if>>
<</if>>
Taking <<him>> in hand it is a matter of moments before your lips and fingers have <<him>> at full mast.
<<if setup.getTotalValue("oral") > 10>>
<<He>>'s about average size... i.e.: all but trivial to your cavernous throat. Dropping to your knees you handle <<him>> with ease, even showing off by going "hands free" as you swiftly bring <<him>> to climax.
<<else>>
<<He>>'s about average
<<if setup.getTotalValue("oral") > 5>>
size, meaning you're just able to handle deep throating <<him>>.
<<else>>
size... which is still large as far as your novice mouth is concerned, so you mix it up with hands and lips to get things over with as soon as possible.
<</if>>
Despite <<his>> general crudeness <<he>> seems content to let you do all the work and you efficiently lick and suck <<him>> to orgasm.
<</if>>
<br><br>
<<if $fetish.cum>>
In a slight surprise <<he>> actually pulls out just before <<he>> cums and shoots it into <<his>> hand before you can react. "@@.npc_chess;Heh, what, you thought you'd be stealing any of my <<if $options.fem>>brain-stimulating<<else>>masculine<</if>> energy? Fat chance.@@" You watch
<<if setup.getTotalValue("cum") > 10>>
with
<<if setup.getTotalValue("cum") > 15>>
jealous hunger
<<else>>
a twinge of jealousy
<</if>>
<<else>>
in
<<if setup.getTotalValue("cum") > 5>>
shock
<<else>>
disgust
<</if>>
<</if>>
as <<he>> surprises you by slurping up <<his>> own load and licking <<his>> hand clean... with what you would swear was delight.
<<else>>
<<He>> actually surprises you by pulling away just before climax, finishing in a tissue and wiping <<him>>self clean as you blink in mild shock.
<</if>>
<br><br>
<<He>> locks the cage back onto <<his>> softened member and zips up. "@@.npc_chess;Well, debt's paid... feel free to try again, I could use the entertainment... and you give pretty good head!@@"<br>
<br>
<<He>> laughs as <<he>> walks away, leaving you to stew in the humiliation of what you've just done.<br>
<br>
[<<moveTo "room_mall" "Back to the mall." 300>>]
<<else>>
You're outside the mall bathroom when you start begging if there might be some other way to "pay your debt." <br>
<br>
"@@.npc_chess;Lose, and then try to weasel out of things? Pathetic, but sure, I've defended my public image so I guess I can let you avoid private shame, but it won't be cheap. Let's say... ten times the normal bet, so a round two hundred credits.@@"<br>
<br>
[<<moveTo "event_maid_cafe_chess_play_maid_final_lose_1" "Just suck <<him>> off." 300 "<<set $scene.bj=true>>">>]<br>
<<if $player.money.total >= 200>>
[<<moveTo "event_maid_cafe_chess_play_maid_final_lose_2" "Pay <<him>> off." 300>>]
<<else>>
[@@.link_locked;You don't have enough money.@@]
<</if>>
<</if>>
</div>/*#
#desc: pay up rather than sucking cock for losing chess
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -200>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Mall Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png">>
<div id="invframe" class="scrolltext">
You give <<him>> the requested two hundred credits.<br>
<br>
"@@.npc_chess;Dang, you really don't want to suck my cock... should I be insulted?@@" <<He>> laughs as you blush in humiliation at what you've just done. "@@.npc_chess;No matter, cya around, loser.@@"<br>
<br>
[<<moveTo "room_mall" "Back to the mall." 300>>]
</div>/*#
#desc: play friendly game of chess
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.chess=true>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'skip' $EXPOSED>>
<<set $scene.win = setup.getTotalValue("smart") >= 20 && 9 <= random(1,10)>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess_maid")>>
<div id="invframe" class="scrolltext">
You sit down for a friendly game of chess with the now far-more-pleasant self-appointed "Chess Maid-ster." <br>
<br>
<<if $scene.win>>
After a challenging battle you win, and you opponent graciously reaches across the board to shake your hand... with long, perfectly painted nails.<br>
<br>
"@@.npc_chess;Thanks again for beating some sense into me! I can't believe how much of a jerk I used to be, but finding my inner maid... and making her my OUTER maid, well... everything is just so much better!@@"
<<else>>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") >= 20>>
You play a razor-close game, but your opponent manages to win, looks like they've been studying hard.<br>
<br>
"@@.npc_chess;You've really made me up my game, you're always a tough match!@@"
<<elseif setup.getTotalValue("smart") > 15>>
You play a close game that you end up losing.<br>
<br>
"@@.npc_chess;A good match! But you made a few errors that surprised me. I guess you're experimenting with new strategies?@@"
<<else>>
You struggle throughout the game and end up losing fairly decisively.<br>
<br>
"@@.npc_chess;You're not letting me win, are you? The only way to get better is to play your best — I can handle it!@@"
<</if>>
<<else>>
You lose... badly.<br>
<br>
"@@.npc_chess;Is something the matter? I feel like I'm playing a totally different opponent than the one that kicked my ass so hard I ended up in a maid's outfit! Totes grateful for that, if I hadn't mentioned recently!@@"
<</if>>
<</if>>
<br><br>
Your opponent looks up where one of the other maidtresses is waving her over. "@@.npc_chess;Ooops, looks like my break is over, catch you later!@@"<br>
<br>
They dash away, cute skirts bouncing behind them... momentarily giving you a glimpse of the large plug nestled between her butt-cheeks.<br>
<br>
[<<moveTo "room_mall_cafe" "Return to the cafe." 60>>]
</div>/*#
#desc: greeted post-maidtress victory
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.chess=true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("generic","npc_chess_maid")>>
<div id="invframe" class="scrolltext">
You barely step foot into the maid cafe when one of the maidtresses runs towards you and almost knocks you over with a hug.<br>
<br>
"@@.npc_chess;Hey!@@" They state in greeting as it takes you a moment to recognise the one-time chess-playing scourge of the cafe. "@@.npc_chess;Oh, I can't thank you enough for showing me the delight that is working as a maidtress! All that pent-up anger and bitterness I used to have... it's all gone... and not being burdened by it all I actually play chess better too! We should totally grab a game sometime!@@" She adds before glancing over at a customer "@@.npc_chess;Whoops, gotta get back to work! A maidtress' first duty is to serve their customers, after all!@@"<br>
<br>
They dash off — moving surprisingly sprightly in what have to be at least ten-centimetre heels. You shake your head in amazement, only to lock eyes with <<=setup.getNpcName("npc_butler","formal")>>. The owner of the maid cafe smiles and winks at you before disappearing back into <<his npc_butler>> office.<br>
<br>
[<<moveTo "room_mall_cafe" "Look around the cafe." 60>>]
</div>/*#
#desc: ask npc_ai for help with chess
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_ai","first")>> if she might be able to help you triumph over the chess-playing jerk at the mall maid cafe?<br>
<br>
"@@.npc_ai;<<uc "Yes, merely wear something suitable in that cute rear of yours for me to signal you with, and I will give you everything you need to triumph, Unit">> <<uc $player.first_name>>.@@"<br>
<br>
<<printThought "Cheating at chess with an anal plug... I guess some things are eternal...">><br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: work at the maid cafe: boymode ask for help event intro
#status: FINISHED 0.8.4.0
#ignore_spell: h
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode">>
<div id="invframe" class="scrolltext">
Your shift passes mostly without incident, though you notice one customer in particular — perhaps because they seem to be going out of their way to NOT be noticed. Dressed in a too-large hoodie that's almost swallowing them up, they nurse their drink for almost your entire shift, though you can tell they are constantly looking around.<br>
<br>
As you deliver the bill and turn to go they finally speak, their voice soft and nervous. "@@.generic_female1;H-hi, I, uh, was wondering if...@@" You pause, turning to smile down at them as they look up and you finally get a look at their face.<br>
<br>
They're actually quite cute, hidden inside the hoodie, soft features that could be steered towards either cute boy or sweet girl with a bit of effort.<br>
<br>
"@@.generic_female1;You're pretty!@@" they state, suddenly louder as their eyes go wide and they clap their hands over their face in embarrassment.<br>
<br>
<<printThought "Hmm... I think I see what's going on here...">><br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_1_2" "Say they're pretty too." 60 "<<set $scene.compliment=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_1_2" "Accept the compliment and move on rather than risk further embarrassing them." 60 "<<set $scene.compliment=false>>">>]
</div>/*#
#desc: work at the maid cafe: boymode ask for help event help
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode">>
<div id="invframe" class="scrolltext">
<<if $scene.compliment>>
You smile back and reply that "@@.pc;you're pretty too... pretty cute!@@"<br>
<br>
Their eyes are the size of saucers as they look to be experimenting with the idea of sinking into their chair... and yet your flirty response seems to be just the ticket for them to push past their nervousness to ask the question that you knew was lurking.<br>
<br>
"@@.generic_female1;So, like... you're really, really, pretty... everyone here is.@@" They glance around the cafe with the look of someone both enthralled and jealous of everything they see. "@@.generic_female1;My name is <<=setup.getNpcName("generic_female1","custom", "Jay")>> and, um... I was wondering if you had any suggestions for me?@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_1_3" "Take them shopping." 60 "<<set $scene.shop=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_1_3" "Give them some generic suggestions." 60 "<<set $scene.shop=false>>">>]
<<else>>
You politely thank them for the compliment and curtsy before returning to your work. When you finally glance back a few minutes later they are finally gone... though you get the feeling they left not-quite-fulfilled.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 600>>]
<</if>>
</div>/*#
#desc: work at the maid cafe: boymode ask for help event shop
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.shop>>
<<set $scene.pay = $player.flags.maidcafe.base_pay*1.5>>
<<addCredits $scene.pay>>
<</if>>
<</if>>
<<if $scene.shop>>
<<set $player.location to "<<printShopName 'mall_apparel_store' true>>">>
<<else>>
<<set $player.location to "Cafe: Newtype IV">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.shop>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" "boymode">>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.shop>>
You smile and reply that you'd love to help! You instruct <<=setup.getNpcName("generic_female1","custom", "Jay")>> to wait a few minutes while you wrap up your shift and cash out for <<=$scene.pay>> credits.<br>
<br>
You keep an eye on them the whole time, and dash over to almost ambush them when they start to sneak away in a moment of weakness.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Jay")>> jumps in surprise as you appear next to them and you smile and chatter away to cover their nervousness as you lead the way to <<printShopName 'mall_apparel_store' false>>...<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_1_4" "Shopping makeover time!" 900>>]
<<else>>
You give <<=setup.getNpcName("generic_female1","custom", "Jay")>> some generic encouragement and suggestions, that they should feel free to experiment and that they should embrace being themselves — especially in a place like the cafe, you add with a gesture towards their concealing attire.<br>
<br>
They blush and thank you for the advice and you move on to your next table. As you glance back to see them slip out the door you get the feeling you failed to make a proper impression, and that a more direct approach might have been better.<br>
<br>
<<printThought "Hmm... maybe next time...">><br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 600>>]
<</if>>
</div>/*#
#desc: work at the maid cafe: boymode ask for help event choose dress
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" "boymode">>
<div id="invframe" class="scrolltext">
You start casually flicking through the racks as you ask <<=setup.getNpcName("generic_female1","custom", "Jay")>> what sort of things they already have... or are wearing, you add with teasing wink as you nod towards their concealing hoodie.<br>
<br>
They mumble that they only wear stuff at home, that what they have is too risque to wear in public.<br>
<br>
You nod appreciatively... but sense something's off as you push a little harder as you continue to paw through clothing. You watch out of the corner of your eye as they blush beet red and admit they're wearing panties...<br>
<br>
"@@.pc;I knew it, <<=setup.getNpcName("generic_female1","custom", "Jay")>>.@@" You whisper. "@@.pc;That's so cool and awesome... and you seem pretty cool, and awesome... but you can totally do more... here, immediate gut reaction, which of these two do you like better?@@"<br>
<br>
You turn around, holding up a baby-doll shirt in one hand, and a skater dress in the other.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Jay")>> hesitates and you insist on the immediate decision. "@@.pc;Don't think, <<=setup.getNpcName("generic_female1","custom", "Jay")>>, choose!@@"<br>
<br>
Their hand shoots out... and then they blush and look away, finger still pointed directly at the skater dress.<br>
<br>
You grin and hurry for the changing rooms, hanging their chosen outfit inside and then shoving them in after.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_1_5" "Listen at the door." 240>>]
</div>/*#
#desc: work at the maid cafe: boymode ask for help event twirl
#status: FINISHED 0.8.4.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" "boymode_girl">>
<div id="invframe" class="scrolltext">
You listen at the door, hearing the sound of <<=ps(setup.getNpcName("generic_female1","custom", "Jay"))>> nervous breathing... then some pacing, then the sound of a zipper and fumbling with the hanger then a pause.<br>
<br>
In a sing-song voice you ask if they're ready to come out, and the silence lingers.<br>
<br>
"@@.generic_female1;N-no, I look silly, I—@@"<br>
<br>
You cut them off that they came to YOU for help, so you will be the judge and they need to let you see.<br>
<br>
There's another drawn-out pause and then you hear them fumble with the latch and you step away for them to come into view.<br>
<br>
Head down, hands nervously clasped in front of them, they look as shy as a baby deer — and even cuter. True to your suspicion they have quite a sweet figure hidden under their hoodie — slender and on the tall side for a girl now that they're not all hunched over — but quite sweet, especially in the dress.<br>
<br>
"@@.pc;Alright <<=setup.getNpcName("generic_female1","custom", "Jay")>>, now twirl,@@" you command, recalling a similar scene with your friend <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Jay")>> bites their lip... and then, with a slight look of confusion, does as you command, a brief, slow spin that slightly flares their skirt and takes their breath away as it leaves them facing a mirror.<br>
<br>
You creep up behind and whisper congratulations. "@@.pc;Nice little shot of euphoria there, huh <<=setup.getNpcName("generic_female1","custom", "Jay")>>? You deserve it — look at that cutie in the mirror! Why I bet <<=setup.getNpcName("generic_female1","custom", "Jay")>> stands for "just the cutest thing!", isn't that right?@@"<br>
<br>
Your new friend's gaze is fixated on their reflection as another customer approaches the dressing room.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_1_6" "Continue." 240>>]
</div>/*#
#desc: work at the maid cafe: boymode ask for help event finish
#status: FINISHED 0.8.4.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" "boymode_girl">>
<div id="invframe" class="scrolltext">
The other customer pauses and smiles. "@@.generic_female2;Oh you definitely need to buy that — it's gorgeous! And the colour really sets off your eyes.@@"<br>
<br>
Your new friend practically melts into a puddle at the compliment, and you quietly wave the other customer off to give them time to recover. "@@.pc;See, double-official <<=setup.getNpcName("generic_female1","custom", "Jay")>> — you're a lovely girl, and you need to show it off — not hide under that frumpy hoodie.@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Jay")>> bites their lip and you see the gears turning... but you also saw their expression during their first spin, and you know there's no turning back.<br>
<br>
"@@.generic_female1;Oh-okay...@@" they finally reply as you take a step back to let them admire their reflection without distraction. They turn towards you and light up with a smile. "@@.generic_female1;Th-thank you, I—@@" they seem at a loss for words, instead doing another spin — this one a full 720, skirts flaring all the way out, and giving you the briefest glimpse of their lace panties — slightly stretched and with a dot of pre due to their straining excitement.<br>
<br>
You wink at <<=setup.getNpcName("generic_female1","custom", "Jay")>> knowingly... but, though they blush, it's more playful than embarrassed.<br>
<br>
Eventually tearing their eyes away from the mirror they gather their things and lead the way to the front of the store to purchase the dress they're still wearing. The shop-keeper, too, compliments their selection and your new friend is all but glowing as you exit the store and, after thanking you again for all your help, they go bounding across the mall — directly towards Dye Me Crazy.<br>
<br>
<<printThought "<<=setup.getNpcName('npc_barber', 'first')>> should take good care of them...">> You think with a smile as you consider what to do next.<br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 600>>]
</div>/*#
#desc: work at the maid cafe: spot boymode again
#status: RELEASED 0.8.8.0
#ignore_spell: boymoding
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
You're partway into your shift when a customer walks in that seems weirdly familiar. They take a seat outside of your section and you sneak another look when you finally recognise <<=setup.getNpcName("generic_female1","custom", "Jay")>>!<br>
<br>
<<printThought "Someone moved past boymoding... way past. Even from way over here they look heckin' CUTE!">><br>
<br>
Looking even more adorable than when you first met them... complete some subtle makeup, they are sticking to the basics with some kitten heels and a simple black dress down to their knees.<br>
<br>
<<printThought "Hmm, they just sat down, I wonder if I could swap tables?">><br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_2_2" "Ask to swap tables." 120 "<<set $scene.swap=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_2_2" "Just finish your shift." 60 "<<set $scene.swap=true>>">>]
</div>/*#
#desc: work at the maid cafe: barter for Jay's table
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.swap>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_waitress")>>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.swap>>
Before she can make it across the cafe you grab <<=setup.getNpcName('npc_waitress', 'first')>> and ask if you could swap tables with her?<br>
<br>
She looks at you for a moment then glances past towards <<=setup.getNpcName("generic_female1","custom", "Jay")>> sitting nervously on their chair.<br>
<br>
"@@.npc_waitress;Wait... I remember them! They came in a while back looking all shy... lemme guess, checking in on a project?@@" She winks at you "@@.npc_waitress;well don't let me get in the way, you've made such cute progress so far, I can't wait to see that cutie blossom fully!@@"<br>
<br>
You thank for the favour and head for your "new" table.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_2_3" 'Approach <<=setup.getNpcName("generic_female1","custom","Jay")>> .' 120>>]
<<else>>
You leave <<=setup.getNpcName("generic_female1","custom","Jay")>> in the capable hands of one of your fellow maidtresses and continue on with your shift.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Continue on with your shift." 3000>>]
<</if>>
</div>/*#
#desc: work at the maid cafe: approach <<=setup.getNpcName("generic_female1","custom","Jay")>> 2nd
#status: RELEASED 0.8.8.0
#ignore_spell: h
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_girl_2">>
<div id="invframe" class="scrolltext">
You approach <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> table and their eyes light up, followed by a blush peeking through their thin in spots makeup.<br>
<br>
"@@.generic_female1;H-hi! Thanks again for your help before... I've been experimenting a bit since then and... well it's all so much!@@"<br>
<br>
You nod, closer up, now, you can spot the tell-tale signs of a corset under their dress, the fortifying garment doing nothing to help with <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> excitement already having them out of breath as they stumble through an order.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_2_3_wait" "They did come here for drinks, it would be unprofessional not to get their order." 180>>]
</div>/*#
#desc: work at the maid cafe: wait on boymode 2nd
#status: RELEASED 0.8.8.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_girl_2">>
<div id="invframe" class="scrolltext">
You decide not to push things too far, too fast with your cute friend, so you take their order — a Strawberry Latte Macchiato, big surprise — and quickly serve up their drink.<br>
<br>
<<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> hands are trembling a bit as they take the cup, and you compliment them on their nail polish.<br>
<br>
"@@.generic_female1;Th-thanks... it's been a learning experience, like I said...@@" Still nervous they start sucking away on their drink straw just to distract from trying to talk.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_2_3_ask" "Take a seat and chat them up a bit." 60>>]<br>
[<<moveTo "event_maid_cafe_work_default" "Continue on with your shift." 3000>>]
</div>/*#
#desc: work at the maid cafe: chat with boymode 2nd
#status: RELEASED 0.8.8.0
#ignore_spell: girlmode,basecoat
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_girl_2">>
<div id="invframe" class="scrolltext">
You smile and ask <<=setup.getNpcName("generic_female1","custom","Jay")>> what exactly they've been up to?<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> drains almost a third of their drink in one long slurp... at which time it's like the caffeine hit immediately because they start gushing with excitement, explaining how much fun they've had learning makeup. "@@.generic_female1;It's totally like painting mini's! Basecoat, highlights... but it's the clothes! And the shoes! So many options and every time I go for a spin, or go in public in girlmode... well my heart starts pounding and I can barely contain my excitement!@@"<br>
<br>
You beam like a proud mum as you advise them that it's the excitement of being their true self, and that the wonderful thing about gender euphoria is that it only gets stronger the more authentic they are.<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> looks even more excited at this thought as they look back at you in awe. "@@.generic_female1;And it's all thanks to you! I don't know if I would have ever had the courage on my own but you... you saw straight through all of that! I already can't thank you enough, but, like... the reason I came back was to see if you had any more advice?@@" They pause and bite their lip sheepishly, "@@.generic_female1;well, that and... you maids are SO GORGEOUS to look at!@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_2_4" "Give them some advice." 120>>]
</div>/*#
#desc: work at the maid cafe: boymode 2nd struggles
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_girl_2">>
<div id="invframe" class="scrolltext">
You smile at <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> compliment. You slyly tack on by pointing out that they'd make a very cute maid, too.<br>
<br>
<<printThought "Her blush reserve is really getting a workout today...">><br>
<br>
You kick off tips by noting the fact that they seem to be struggling a bit sitting in their corset.<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> blushes... which you're beginning to think is close to her natural mode around you, and then she explains. "@@.generic_female1;Yeah... it looked a lot better in the picture, and was so hard to put on! I dunno... maybe I shouldn't have expected much for something off Alizon.@@"<br>
<br>
You sigh and explain that for best results a corset should be custom fit, demonstrating with your own before noting telling <<=setup.getNpcName("generic_female1","custom","Jay")>> to follow you into the back so you can take a closer look.<br>
<br>
As you head for the cafe's changing room you flash another glance over to <<=setup.getNpcName('npc_waitress', 'first')>> who grins and flashes a thumbs up to let you know she'll cover for your absence.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_2_5" "To the changing room!" 300>>]
</div>/*#
#desc: work at the maid cafe: assist boymode 2nd
#status: WRITTEN 0.8.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_girl_2">>
<div id="invframe" class="scrolltext">
Once in the dressing room you have <<=setup.getNpcName("generic_female1","custom","Jay")>> take off their dress so you can get a look at the corset. Maybe you've finally hit the limits of their blushing, because they obey without hesitation... though you have to politely avoid staring at the obvious bulge in their cute panties. You do sigh meaningfully at the fact that her bra and panties do not match in the slightest — the bra in particular looking bad as it is half-crushed due to being far too large for <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> very modest chest.<br>
<br>
The corset is, if anything, even more of a disaster than you imagined; not just cheap... but upside-down, and laced with one of the most severe ()'s you ever seen.<br>
<br>
You sigh and tell them to untie it as you head to the "donation" bin — a convenient resource where maids drop off clothes that no longer fit or would otherwise be discarded to be given a second life as hand-me-downs for other maids. <<printThought "Maids helping maids... you love to see it.">><br>
<br>
By the time <<=setup.getNpcName("generic_female1","custom","Jay")>> has finished shedding the cheap corset you're back with a couple items starting with a new corset — still "off the rack," but a bit nicer, especially in terms of boning.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_2_6" "Makeover!" 300>>]
</div>/*#
#desc: work at the maid cafe: upgrade boymode 2nd
#status: WRITTEN 0.8.8.0
#ignore_spell: d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_girl_3">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female1","custom","Jay")>> holds her breath as you demonstrate how to have the corset right-side up and then walk them through the best ways to lace it solo<<if $player.flags.uniform_upgrade.autoLacing>> noting that auto-laces can make the whole process even simpler<</if>>. You also emphasise the importance of having the back nice and parallel, both for comfort, and to keep from damaging the corset itself.<br>
<br>
You take the time to lace everything down nice and tight, noting that <<=setup.getNpcName("generic_female1","custom","Jay")>> has a couple centimetres left to "grow into" before the back will be truly flush. <<=setup.getNpcName("generic_female1","custom","Jay")>> is already marveling at their figure in a nearby mirror when you present the next piece — a breastplate in a nice D, a donation from a fellow maidtress who had decided to not just max out several sizes up... but get a real pair<<if $fetish.milking>> of big mommy milkers<</if>>.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_2_7" "Woah..." 300>>]
</div>/*#
#desc: work at the maid cafe: boymode 2nd waitress congratulates
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_girl_3" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female1","custom","Jay")>> is all but enthralled marveling at their reflection as they spin back and forth and gushing their thanks for your help yet... when <<=setup.getNpcName('npc_waitress', 'first')>> pokes her head through the door to let you know that you're needed back on the floor.<br>
<br>
You reply that you'll be right out... but <<=setup.getNpcName('npc_waitress', 'first')>> is already distracted ogling <<=setup.getNpcName("generic_female1","custom","Jay")>> , letting out an appreciative whistle that all but makes your bashful friend faint.<br>
<br>
"@@.npc_waitress;Damn, girl! I thought you had a project... but you've made a right BOMBSHELL.@@" <<=setup.getNpcName('npc_waitress', 'first')>> steps into the room, eye to eye with the tall <<=setup.getNpcName("generic_female1","custom","Jay")>> despite the maidtress' far steeper heels. "@@.npc_waitress;If you're ever looking for work you'd look just dynamite in a maid's outfit... and if you want something else, well... I'll leave my number on your receipt.@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> is too dumbfounded to respond but, after letting them have one last spin/lingering glance at their reflection you shuffle them back to their table and get back to work.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish your shift." 1800>>]
</div>/*#
#desc: work at the maid cafe: boymode 3rd: start as waitress
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
You've barely started another shift at the cafe when you notice a new, but familiar face on-staff! It appears as if the cafe has hired a new coworker... and <<=setup.getNpcName("generic_female1","custom","Jay")>> is looking very nervous, and intimidated as <<=setup.getNpcName("npc_maid","first")>> looks to be showing them the ropes.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> looks to be finishing up her walk-through as someone calls out for her from behind the counter. <<=setup.getNpcName("npc_maid","first")>> whispers something to <<=setup.getNpcName("generic_female1","custom","Jay")>> and then cuts them loose, shooting you a glance that says "keep an eye on the new girl" as she heads for the kitchen.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_3_2" 'Wish <<=setup.getNpcName("generic_female1","custom","Jay")>> a good first shift.' 1000>>]
</div>/*#
#desc: work at the maid cafe: boymode 3rd: work+notice tenting
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid">>
<div id="invframe" class="scrolltext">
You flash <<=setup.getNpcName("generic_female1","custom","Jay")>> an encouraging double thumbs up and keep an eye on her. Other than wobbling a bit in her heels she looks to be doing already, a little nervously scared, perhaps, but clearly motivated to push herself to new heights... figuratively and literally.<br>
<br>
By mid shift a new issue has popped up; there's just no mistaking that <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> bouncing skirts are not quite bouncing DOWN all the way in the front.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_3_3" 'Pull <<=setup.getNpcName("generic_female1","custom","Jay")>> aside.' 300 "<<set $scene.warn=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_3_3" 'Just focus on your own work.' 300 "<<set $scene.warn=false>>">>]
</div>/*#
#desc: work at the maid cafe: boymode 3rd: work+notice tenting
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.warn>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid">>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid" setup.charImage("npc_waitress")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.warn>>
You carefully pull <<=setup.getNpcName("generic_female1","custom","Jay")>> aside and whisper a warning as to her "problem." Barely have you spoken the words than she turns full-on stoplight-red, all but freezing in mortified fear as she slams both hands down over the front of her skirts.<br>
<br>
You can immediately tell that this is a problem that demands a more "private" solution and you lead the dazed, panicked maidtress into the cafe's private changing room.
<<else>>
You continue working, only to notice <<=setup.getNpcName("npc_waitress","first")>> stepping in to inform <<=setup.getNpcName("generic_female1","custom","Jay")>> of her "problem." <br>
<br>
You aren't close enough to hear the exact words... but you can certainly see the first-time maidtress turn full-on stoplight-red and all but freeze in mortified fear as she slams both hands down over the front of her skirts.<br>
<br>
It's immediately clear that this is a problem that demands a more "private" solution, but rather than deal with things herself <<=setup.getNpcName("npc_waitress","first")>> waves you over and shuffles you and <<=setup.getNpcName("generic_female1","custom","Jay")>> both into the cafe's private changing room.
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_work_boymode_3_4" 'Looks like <<=setup.getNpcName("generic_female1","custom","Jay")>> needs your help once again...' 300>>]
</div>/*#
#desc: work at the maid cafe: boymode 3rd: assist in back room
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid">>
<div id="invframe" class="scrolltext">
Only once you close the door to give the two of you privacy does <<=setup.getNpcName("generic_female1","custom","Jay")>> manage to find their voice. Still very flustered they try to apologise for her "impropriety." <br>
<br>
"@@.generic_female1;I'm sorry! I was so focused on my job... you don't think anyone noticed, right? I mean, obviously you did<<if $scene.warn>>, but <<=setup.getNpcName("npc_maid","first")>> told you to keep an<<else>>... and <<=setup.getNpcName("npc_waitress","first")>> too... but you were both keeping a really close<</if>> eye on me!@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_3_5" 'Inform <<=setup.getNpcName("generic_female1","custom","Jay")>> that everyone noticed.' 180 "<<set $scene.placate=false>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_3_5" 'Re-assure <<=setup.getNpcName("generic_female1","custom","Jay")>> that nobody else noticed.' 180 "<<set $scene.placate=true>>">>]
</div>/*#
#desc: work at the maid cafe: boymode 3rd: taunt
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.placate>>
<<applyExperience 'dominance' 11 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid">>
<div id="invframe" class="scrolltext">
<<if $scene.placate>>
You re-assure <<=setup.getNpcName("generic_female1","custom","Jay")>> that nobody else noticed, after all, her skirts are wonderfully floofy.<br>
<br>
"@@.generic_female1;Oh thank the Goddess,@@" she whispers "@@.generic_female1;only... I don't know what to do, even if I got through today, well... my shift isn't even over!@@"
<<else>>
You explain to <<=setup.getNpcName("generic_female1","custom","Jay")>> that everyone noticed, the other maidtresses, the customers... probably a couple mall-walkers that were just walking past the cafe...<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> shifts somewhere into the infra-red, putting off enough heat that you could swear the room got warmer. "@@.generic_female1;Oh Goddess,@@" she whines "@@.generic_female1;I don't... I don't know what to do!@@"
<</if>>
<br><br>
At the point of desperation, <<=setup.getNpcName("generic_female1","custom","Jay")>> lifts her skirt all the way to reveal that they're not just still tenting... but doing it despite wearing a heavy duty set of panties, their cute <<getWordPenis false>> looking
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
about average size... certainly much larger than yours.
<<case 2>>
a bit larger than your own.
<<case 3>>
about the same size as your own.
<<case 4>>
a bit smaller than your own.
<<case 5>>
significantly smaller than your own.
<<case 6>>
much smaller than your own... but, than again, whose isn't?
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<else>>
looking about the size yours once was... back when you had one.
<</if>>
"@@.generic_female1;I did everything I could! I specifically wore a gaff today, rather than something cuter... but I just can't help how excited being a maidtress around all you mind-blowingly hot people working here makes me feel!@@"<br>
<br>
You note that, if fabric is insufficient, the solution may be steel as you dip into the Cafe's "in case of emergency" drawer to come up with a chastity cage.<br>
<br>
Wide-eyed with sudden hope <<=setup.getNpcName("generic_female1","custom","Jay")>> nods eagerly as you face the issue that, to get them into said cage, they're going to need to be a lot softer than they are now...<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_3_6" 'Tell <<=setup.getNpcName("generic_female1","custom","Jay")>> to deal with it, and supervise.' 180 "<<set $scene.action='watch'>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_3_6" 'Give <<=setup.getNpcName("generic_female1","custom","Jay")>> some privacy to attend to things.' 180 "<<set $scene.action='private'>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_3_6" 'Offer to jerk <<=setup.getNpcName("generic_female1","custom","Jay")>> off.' 180 "<<set $scene.action='jerk'>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_3_6" 'Offer an oral approach to <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> problem.' 180 "<<set $scene.action='blow'>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_3_6" 'Go get some ice.' 180 "<<set $scene.action='ice'>>">>]
</div>/*#
#desc: work at the maid cafe: boymode 3rd: get them soft
#status: WRITTEN 0.8.8.0
#ignore_spell: h
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'watch'>>
<<applyExperience 'dominance' 15 'normal' $SEEN_FRIEND>>
<<case 'private'>>
<<case 'jerk'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<if $fetish.cum>>
<<applyExperience 'cum' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<case 'blow'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' 7 'normal' $SEEN_FRIEND>>
<<if $fetish.cum>>
<<applyExperience 'cum' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<case 'ice'>>
<<applyExperience 'dominance' 13 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'watch'>>
You tell <<=setup.getNpcName("generic_female1","custom","Jay")>> to "@@.pc;deal with,@@" her problem.<br>
<br>
She waits nervously, skirt still raised as a bead of pre-cum grows... and then drops to the ground. She finally finds her voice to ask "@@.generic_female1;h-here?@@"<br>
<br>
You cross your arms and grin as you nod, explaining that you are here to "@@.pc;supervise,@@" after all.<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> zooms straight past infra-red to "could microwave popcorn" as she holds her skirts with one arm folded across her belly while her satin-gloved hand reaches for her rock-hard, trembling <<getWordPenis false>>.<br>
<br>
It takes less than three strokes before <<=setup.getNpcName("generic_female1","custom","Jay")>> gasps and cums, closing her eyes in almost tearful ecstasy as she catches the spurted joy in her palm... and brings her hand to her face to lick it clean before realising what she's doing.<br>
<br>
"@@.pc;Good girl.@@" You whisper as she momentarily freezes "@@.pc;a maid should always clean up after herself, after all...@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> meeps submissively, but finishes licking her palm clean as her softened <<getWordPenis false>> twitches in excitement.
<<case 'private'>>
You point <<=setup.getNpcName("generic_female1","custom","Jay")>> towards a dividing partition in the corner of the room and tell her to "deal" with things. She blushes... again, and then scurries off.<br>
<br>
In less than a minute you hear the cutest gasp and then <<=setup.getNpcName("generic_female1","custom","Jay")>> re-appears, still holding her skirt up, but now showing a sweet, softened <<if $fetish.sissy>>sissy <</if>>dick, rather than the rock-hard tent-pole from before.
<<case 'jerk'>>
You offer to jerk <<=setup.getNpcName("generic_female1","custom","Jay")>> off and they zoom straight past infra-red to "could microwave popcorn" before excitedly nodding.<br>
<br>
You grin, looking <<=setup.getNpcName("generic_female1","custom","Jay")>> in the eye as you reach down to wrap your fingers around their hard, hot <<getWordPenis false>>. You barely finish a single stroke before she cums<<if $fetish.cum>>, a spurting burst that you expertly catch in your palm... and then lick clean with a smile<</if>>.
<<if $fetish.cum>>
<br><br>
"@@.pc;Mmmm, you taste delightful.@@" You purr as <<=setup.getNpcName("generic_female1","custom","Jay")>> tries to phase through the floor in embarrassment.
<</if>>
<<case 'blow'>>
You offer to give <<=setup.getNpcName("generic_female1","custom","Jay")>> some oral relief and they zoom straight past infra-red to "could microwave popcorn" before excitedly nodding.<br>
<br>
Your lips curl into a sultry smile and you slide to the floor, disappearing under <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> poofy skirts as your lips part and you gently suck... or try, you haven't even made it halfway down their shaft before they cum, gasping loudly as their hips twitch and you pull them close<<if $fetish.cum>>, not wanting to spill a single drop of their delectable girl-cum<</if>>.<br>
<br>
You rise to your feet with a smile as <<=setup.getNpcName("generic_female1","custom","Jay")>> mumbles an apology for <<if $fetish.cum>>not warning you<<else>>cumming so fast<</if>>.<br>
<br>
You smile and reply that it's fine, after all, she "@@.pc;tasted delicious.@@" The compliment has <<=setup.getNpcName("generic_female1","custom","Jay")>> trying to phase through the floor as their soft <<getWordPenis false>> twitches.
<<case 'ice'>>
You ask if <<=setup.getNpcName("generic_female1","custom","Jay")>> would like some ice and she nods nervously. You wink and sprint back to the cafe, coming back with an iced-coffee-without-the-coffee... <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> melting almost half the cup before they finally soften.<br>
<br>
You grin and take a sip of the slushy water, "@@.pc;tasty!@@" You note, sending <<=setup.getNpcName("generic_female1","custom","Jay")>> off onto a fresh round of blushing, and causing their limp <<getWordPenis false>> to twitch ominously.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You kneel down to lock the cage in place, working fast given that they're already showing signs of renewed excitement. The cool steel makes <<=setup.getNpcName("generic_female1","custom","Jay")>> sigh with relief and you close the lock with a satisfying click... followed by a CLAP, CLAP, CLAP coming from the direction of the door.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_3_7" 'Look over.' 180>>]
</div>/*#
#desc: work at the maid cafe: boymode 3rd: npc_maid arrives
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
You turn towards the sound of clapping, still kneeling as you look over to see <<=setup.getNpcName("npc_maid","first")>> in the doorway "@@.npc_maid;very nice... I always say, good <<if $fetish.sph>>little <</if>><<if $fetish.sissy>>sissies<<else>>girls<</if>> get caged, only the biggest cock stays unlocked.@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> blinks, and then their jaw hits the floor as <<=setup.getNpcName("npc_maid","first")>> flashes the "Destroyer" literally strapped to her thigh with leather belts, the leather creaking slightly as the veins of her <<getWordPenis false>> pulse with excitement.<br>
<br>
"@@.npc_maid;<<=setup.getNpcName("npc_waitress","first")>> told me all about your little... performance. I was going to suggest the same solution at the end of your shift... but it seems the <<=$player.first_name>> got to you first.@@" As she talks, <<=setup.getNpcName("npc_maid","first")>> swaggers across the room and you stand back up.<br>
<br>
Face to face with <<=setup.getNpcName("npc_maid","first")>>, <<=setup.getNpcName("generic_female1","custom","Jay")>>, even in by far the shortest heels, is actually the tallest of all three of you... but there is no question who is in control as <<=setup.getNpcName("npc_maid","first")>> casually plucks the cage key from your grasp and tucks it between her breasts. "@@.npc_maid;I think I should hold onto this... at least until your shift is over, right <<=setup.getNpcName("generic_female1","custom","Cherry")>>?@@"<br>
<br>
You look at <<=setup.getNpcName("npc_maid","first")>> in confusion. "@@.npc_maid;<<=setup.getNpcName("generic_female1","custom","Cherry")>>? Oh, the name just fits, don't you think? I mean, they're sweet... and always such a lovely shade of red...@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> blushes once again, but otherwise can do nothing but nod as <<=setup.getNpcName("npc_maid","first")>> turns and walks towards the exit, her hips swinging excessively with each step. "@@.npc_maid;Come on girls, it's the weekend, and we're all needed on the floor.@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_3_8" 'Back to work...' 600>>]
</div>/*#
#desc: work at the maid cafe: boymode 3rd: finish shift
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.flags.last_haze = $now>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid" setup.charImage("npc_maid") setup.charImage("npc_waitress") "cafe_maid">>
<div id="invframe" class="scrolltext">
The rest of your shift passes in a blur, the steel cage proving just the thing to have <<=setup.getNpcName("generic_female1","custom","Jay")>> focused on her job and eagerly waiting tables. At the end of the shift there's an impromptu party for <<=setup.getNpcName("generic_female1","custom","Jay")>> having "made it through," a couple other maids comforting <<=setup.getNpcName("generic_female1","custom","Jay")>> with stories of their own "first shift" challenges.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> definitely comes off as "head maid," as she welcomes <<=setup.getNpcName("generic_female1","custom","Jay")>> to the team, but notes that <<=setup.getNpcName("generic_female1","custom","Jay")>> "@@.npc_maid;has a lot to learn, but you're part of the maid sisterhood, now, and we're all here to help.@@" <<=setup.getNpcName("npc_maid","first")>> grins, and you sense a weird tension ripple through the room as all eyes fixate on <<=setup.getNpcName("generic_female1","custom","Jay")>>.<br>
<br>
"@@.npc_maid;On the topic of motivation, well... there's a little game we play. That key of yours? Well, it will be passed off to one of your fellow maidtresses at random, to get it back she'll have to complete whatever "development" task they assign...@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> looks excited, emboldened... and nervous as she asks. "@@.generic_female1;How do I know know who has the key?@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> smiles and shrugs. "@@.npc_maid;That's the fun part! You don't! The rules of the game are you'll get the key after the task, but you won't know until then... and whoever has the key is free to trade it around to anyone you haven't already served at any time. If you're lucky you could get it on the first or second try... of course that could take some time, and if you're REALLY ambitious you could try multiple tasks at once. Go ahead and sleep on it, the game starts tomorrow when you come in for a less... perky shift.@@"<br>
<br>
You hear a shout from the Cafe and head out to deal with a customer, leaving <<=setup.getNpcName("generic_female1","custom","Jay")>> to get to know the other maidtresses.<br>
<br>
On your way past <<=setup.getNpcName("npc_maid","first")>> you ask her why they didn't do anything like that with you and she chuckle.<br>
<br>
"@@.npc_maid;Look, <<=setup.getNpcName("npc_technician","first")>> and I may both be poly as heck... but you were a sweet, innocent little lamb... and the excitement <<=setup.getNpcName("npc_technician","first")>> had when she called "dibs?" Well, nobody was going to cross someone insane enough to pound back multiple Cofferasques in a single sitting.@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Wrap up your shift." 300>>]
</div>/*#
#desc: jay hazing Week 1: nail polish
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.flags.last_haze = $now>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid">>
<div id="invframe" class="scrolltext">
You're plugging along through your shift when you almost bump into <<=setup.getNpcName("generic_female1","custom","Jay")>>. They turn to you with a smile as they flash a gorgeous, and seemingly painted set of nails.<br>
<br>
"@@.generic_female1;Oh, these?@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> says with a smile. "@@.generic_female1;Well I asked <<=setup.getNpcName("npc_waitress","first")>> for my key, and she said that I had to get my nails done and work a shift...@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> smiles even wider as she leans conspiratorially close. "@@.generic_female1;If this is all I have to do for hazing, this'll be easy... though I doubt my first time will see me get the key... though, to tell you the truth, well... I'm kind of getting used to being locked... it feels right, in a weird way.@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
You smile in understanding, and
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemOwned(_keyId)>>
note that you are locked, as well, even though you have control of your key, rather than it being in the hands of a keyholder.
<<else>>
agree that having a "keyholder" is really the best.
<</if>>
<<else>>
You share an amused laugh and wish <<=setup.getNpcName("generic_female1","custom","Jay")>> luck in satisfying their figurative keyholder.
<</if>>
<br><br>
"@@.generic_female1;Keyholder?@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> asks and you explain the concept, responsibility, and power of trusting someone to take care of one's key.<br>
<br>
"@@.generic_female1;Oh, wow... I mean, being locked up for this whole work thing was already exciting... but if it was someone like <<=setup.getNpcName("npc_maid","first")>> who had my key? And it was totally up to her when, or if I was unlocked?@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> bites her lip, reflexively checking her skirt, even though her cage means that such "accidents" are no longer a danger. "@@.generic_female1;I'm, uh... feeling pretty cramped in this cage right now... I better get back to work.@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> skips off to help another customer.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Continue your shift." 3000>>]
</div>/*#
#desc: jay hazing Week 2: ask you
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid">>
<div id="invframe" class="scrolltext">
You've barely started your shift when <<=setup.getNpcName("generic_female1","custom","Jay")>> nervously approaches you. "@@.generic_female1;Hey, so... <<=setup.getNpcName("npc_waitress","first")>> didn't have my key... and I'm a little nervous asking some of the other maidtresses so... how about I do a favour for you today and then maybe you can unlock me? What task should I perform?@@"<br>
<br>
Before you can respond <<=setup.getNpcName("npc_maid","first")>> appears, her grin clearly giving <<=setup.getNpcName("generic_female1","custom","Jay")>> feelings as <<=setup.getNpcName("npc_maid","first")>> drapes a strong arm over each of your shoulders. "@@.npc_maid;I had a feeling our newest, cutest maidtress would be hitting you up for help next, what with your pre-existing relationship... but, given you didn't go through this process yourself, well... I thought I'd lend a hand, come along, girls, I've got something in the back...@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_hazing_2_2" "Follow along." 120>>]
</div>/*#
#desc: jay hazing Week 2: assign a dress
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.flags.last_haze = $now>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_maid","first")>> leads you and <<=setup.getNpcName("generic_female1","custom","Jay")>> into the changing room where a pair of maid outfits have been laid out: one "normal," but made of latex... and the other a somewhat salacious and slutty take on a maid's attire.<br>
<br>
"@@.npc_maid;As cute as <<=setup.getNpcName("generic_female1","custom","Jay")>> looks as-is... well, I was thinking something a bit more daring would REALLY delight our customers... so, <<=$player.first_name>>... whaddaya think?@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> seems equally entranced by both outfits and, even though you don't have her key, you decide to play along with the whole game...<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_hazing_2_3" 'Have <<=setup.getNpcName("generic_female1","custom","Jay")>> change into the latex maid outfit.' 120 "<<set $scene.slutty=false>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_hazing_2_3" 'Have <<=setup.getNpcName("generic_female1","custom","Jay")>> change into the slutty maid outfit.' 120 "<<set $scene.slutty=true>>">>]
</div>/*#
#desc: jay hazing Week 2: dress
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.flags.last_haze = $now>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.slutty>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid_slutty" setup.charImage("npc_maid")>>
<<else>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid_latex" setup.charImage("npc_maid")>>
<</if>>
<div id="invframe" class="scrolltext">
You select the
<<if $scene.slutty>>
slutty
<<else>>
latex
<</if>>
maid outfit for <<=setup.getNpcName("generic_female1","custom","Jay")>> and they nervously change... all while you and <<=setup.getNpcName("npc_maid","first")>> "supervise." <br>
<br>
"@@.npc_maid;Oh yes... I mean, you'd make anything look good, but <<=$player.first_name>> DEFINITELY made the right recommendation for our sweet <<=setup.getNpcName("generic_female1","custom","Cherry")>>.@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> makes good of their name, turning bright red at the combination of the compliment... and a noticeable twitch of <<=ps(setup.getNpcName("npc_maid","first"))>> skirt.<br>
<br>
"@@.generic_female1;I, um... should probably get back to my tables...@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> nervously states, waiting for <<=setup.getNpcName("npc_maid","first")>> to nod in permission before scurrying out of the room.<br>
<br>
"@@.npc_maid;Goddess she's cute...@@" <<=setup.getNpcName("npc_maid","first")>> tells you once <<=setup.getNpcName("generic_female1","custom","Jay")>> is out of earshot. "@@.npc_maid;Thanks for helping out... we'd probably better get back to it too, can't keep customers waiting!@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_hazing_2_4" 'Back to work.' 2400>>]
</div>/*#
#desc: jay hazing Week 2: dress
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.flags.last_haze = $now>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.slutty>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid_slutty" setup.charImage("npc_maid")>>
<<else>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid_latex" setup.charImage("npc_maid")>>
<</if>>
<div id="invframe" class="scrolltext">
Your shift passes relatively uneventfully... if you don't count sneaking glances at <<=setup.getNpcName("generic_female1","custom","Jay")>> as they go from nervously shy in their new <<if $scene.slutty>>slutty<<else>>latex<</if>> attire... to full-on embracing the looks it garners from customers... or maybe it's just the way that <<=setup.getNpcName("npc_maid","first")>> looks at <<=setup.getNpcName("generic_female1","custom","Jay")>> as the newest maidtress goes about her duties.<br>
<br>
At the end of your shift <<=setup.getNpcName("generic_female1","custom","Jay")>> reports back in to you where you confess that you don't actually have her key... though she seems to take that fact in stride.<br>
<br>
"@@.generic_female1;You know... I kind of expected that was going to be the case... secretly, I think this whole thing may be rigged for me to have to go through everyone... but hey! So far I've gotten some cute nails and this sexy new outfit.@@" For emphasis <<=setup.getNpcName("generic_female1","custom","Jay")>> does a spin in place <<if $scene.slutty>>though the short, slutty skirt doesn't have much to flare out<<else>>though the latex skirt more clings to her body than flares out<</if>>.<br>
<br>
"@@.generic_female1;Well, on to the next maidtress! Thanks, though, and I'll see you later!@@"<br>
<br>
Still raring with enthusiasm <<=setup.getNpcName("generic_female1","custom","Jay")>> skips off as you finish clocking out.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Continue your shift." 120>>]
</div>/*#
#desc: jay hazing Week 3: heels
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_2">>
<div id="invframe" class="scrolltext">
Another day... another encounter with your friend <<=setup.getNpcName("generic_female1","custom","Jay")>>. They aren't wearing your prior suggestion anymore... but have, instead, seemed to merge the two "choices" with a slightly slutty, VERY tight and shiny latex maid outfit... paired with some ten centimetre heels that they are definitely struggling with. Subtly locked onto her feet, the sexy and steep shoes are causing her to teeter a bit unsteadily... though also to really show off her already long legs and give her hips a seductive swing when she manages to keep on-balance.<br>
<br>
"@@.generic_female1;<<=$player.first_name>>!@@" She says in excited greeting, starting to run towards you only to nearly stumble and make a more measured, mincing approach. "@@.generic_female1;Heh, so... still locked, and this time I'm been instructed to "raise my game..." I don't suppose you have any advise? These heels are quite the challenge, but I've seen you working a full shift in ballet boots! Please!, Tell me your secrets!@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_hazing_3_2" "Evangelise the benefits of bed heels." 120>>]
</div>/*#
#desc: jay hazing Week 3: bed heels recommendation
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_2">>
<div id="invframe" class="scrolltext">
You grin and explain that the BEST way to raise one's skill in heels, no pun intended, is to add some bed heels to the rotation.<br>
<br>
"@@.generic_female1;Bed heels?@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> asks, confused, but also intrigued.<br>
<br>
You give a quick run-down and refer <<=setup.getNpcName("generic_female1","custom","Jay")>> to the shoestore in the mall, instructing her to tell <<=setup.getNpcName("npc_shoestore_manager","first")>> that you sent them.<br>
<br>
"@@.generic_female1;I'll do that for sure! Thanks, again...@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> hesitates for a moment, and then jumps in for a hug, slipping slightly on her heels as you return the embrace and keep the two of you from falling over. "@@.generic_female1;You really are the best... always helping me with everything and... well, I just want you to know I appreciate it!@@"<br>
<br>
You smile back and assure <<=setup.getNpcName("generic_female1","custom","Jay")>> that you're just happy to help, and seeing them so pretty and cute as a maidtress is a reward and more!<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> blushes, "@@.generic_female1;Gah! I need to get back to work, thanks again, and I'll DEFINITELY be checking out the shoestore after my shift! I'm starting to feel pent up from all this chastity... so I'm really hoping today is the day and I'll finally earn my freedom.@@"<br>
<br>
You wish them luck as they dash... well, mince carefully, away, and you turn to your own work.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Actually start your shift." 2800>>]
</div>/*#
#desc: jay hazing Week 3: heels
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 3, 14, 0)>>
<<addEvent 'jay_promo_invite' _nextDate>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
Immediately after starting your shift your attention is drawn to <<=setup.getNpcName("generic_female1","custom","Jay")>>. They must have taken your advice, and then some, because they've added full-on ballet boots to their uniform... along with a stringently-laced corset supporting a large pair of fake breasts above their very real, and very wasp-like, waist.<br>
<br>
Spotting you, in turn, <<=setup.getNpcName("generic_female1","custom","Jay")>> teeters over to you, revealing that they're still struggling a bit in this new outfit, but the flush of their cheeks peeking out through their gorgeous make-up face is mostly excitement.<br>
<br>
"@@.generic_female1;Hi, <<=$player.first_name>>!, So I ended up going all-in and taking on multiple tasks at once... I NEED that key back, and doing things serial just wasn't cutting it.@@" She leans in closer, "@@.generic_female1;I'm even wearing a butt plug right now... don't have the courage to turn it on while I'm working in these shoes, but I burned through an entire battery charge last night... though I'm not sure if that ended up making the whole caged situation better or worse...@@"<br>
<br>
You grin and congratulate them on how fantastic they look... and wish them luck in completing their "quest." <br>
<br>
As <<=setup.getNpcName("generic_female1","custom","Jay")>> walks away, and you turn to your own responsibilities, <<=setup.getNpcName("npc_maid","first")>> meets your gaze. From her proud expression, and the twinkle in her eye, you're pretty sure there's more in store for the Cafe's newest maidtress...<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Wrap up your shift." 3000>>]
</div>/*#
#desc: invited to Jay promotion
#status: RELEASED 0.9.0.0
#ignore_spell: née
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set $scene.scheduleTime = setup.getNextDayOfWeek($now, 0, 22, 30, false)>>
<<set $scene.punt = !setup.hasFreeTime($scene.scheduleTime, $player, $currentTasks, 7200) || $currentTasks.hasOwnProperty("task_corporate_retreat") && !$currentTasks.task_corporate_retreat.finished>>
<<if $scene.punt>>
<<set $scene.scheduleTime = setup.getNextDayOfWeek($scene.scheduleTime, 0, 22, 30, false)>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall from <<=setup.getNpcName("npc_maid","first")>>.<br>
<br>
"@@.npc_maid;Hey-yo. I won't keep you from work too long, just wanted to give you the heads up that our lovely sweet <<=setup.getNpcName("generic_female1","custom","Cherry")>> finally earned her chastity key. She really persevered through so much "bad luck" in having to do a favour for literally every other maidtress before finally hitting the jackpot... though it would seem all that hard, or should I say, prison-straining, effort seems to have left an impression. After earning her key the literally first thing she did was track me down and ask if I could "hold onto" it until the end of her shift! Of course, I accepted immediately, and even offered to keep things safe all the way to her "graduation"... which is what I wanted to talk to you about.@@"<br>
<br>
You smile in amusement at <<=setup.getNpcName("generic_female1","custom","Cherry")>> née <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> ongoing maid-ventures.<br>
<br>
"@@.npc_maid;So, anyway, to celebrate <<=setup.getNpcName("generic_female1","custom","Cherry")>> becoming a full-fledged Maidtress, and after seeing her fall in love with the chest-plate we assigned we're going to reward her with a real set of tits, that <<=setup.getNpcName("npc_butler","formal")>> was oh-so-happy to fund, and after that? Well, I've scheduled a night at <<printShopName 'sex_club'>> and, well... second only to me and our guest of honour of course YOU need to be there! How does <<if $scene.punt>>next <</if>>Sunday night after the cafe closes sound?@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_invite_2" "You'll be there!" 120>>]
</div>/*#
#desc: accept Jay promotion
#status: RELEASED 0.9.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<addTaskById 'jay_promotion' $scene.scheduleTime>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You say you'll be there for <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> celebration.<br>
<br>
"@@.npc_maid;Sounds good, I'll see you there, and be sure to come dressed for the occasion, maids represent! Oh, our <<=setup.getNpcName("generic_female1","custom","Cherry")>> is going to be so ripe and ready for plucking after this long locked up... I could just gobble her up...@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: fail to arrive for jay promotion
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _time = setup.getNextDayOfWeek($now, 0, 22, 30, false)>>
<<set $scene.punt = !setup.hasFreeTime(_time, $player, $currentTasks, 7200)>>
<<if $scene.punt>>
<<set _time = setup.getNextDayOfWeek(_time, 0, 22, 30, false)>>
<</if>>
<<addTaskById 'jay_promotion' _time>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_maid', 'first')>>.<br>
<br>
"@@.npc_maid;Hey, so... I don't know if you're running late or whatever, but <<=ps(setup.getNpcName("generic_female1","custom","Cherry"))>> promotion tonight is getting pushed back. Something came up, though not THAT thing, they're stacking caged and locked for another week, and we're having to postpone. See you <<if $scene.punt>>a week from <</if>>next Sunday!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: arrive for jay promotion
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_guard","npc_guard_fetish") setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_waitress","npc_waitress_trayless") "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
You arrive at the club to find the screening area all but packed with sexy maidtresses, with <<=setup.getNpcName("npc_maid","first")>> clearly in charge in full "domme mode," even as the girl of the hour beams with a mix of excitement and bashfulness, having fully embraced her new self, ballet heels augmenting her already impressive height to have her rising nearly a head taller than even the amazonian door guard.<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> notices your arrival and skips across the room with just a couple of long strides to gather you up in a hug, her new breasts sandwiched against you as she gushes in excitement. "@@.generic_female1;You're here! Oh, I've been working so hard to reach this moment, and it's all thanks to you! If I wasn't caged I don't know how I'd be able to contain my excitement!@@"<br>
<br>
The other maidtresses laugh as <<=setup.getNpcName("npc_maid","first")>> grins, twirling an entire key-ring of chastity keys on her finger. "@@.npc_maid;Wonderfully said and now, my sweet <<=setup.getNpcName("generic_female1","custom","Cherry")>>, friends, coworkers... our night begins!@@"<br>
<br>
As one the squad of sexy maids heads into the club...<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_2" "Follow the group." 1800>>]
</div>/*#
#desc: celebrate jay's promotion
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_dance.png" setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_waitress","npc_waitress_trayless") "boymode_maid_perfect" "party_maid">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_maid","first")>> leads the way to the dance floor where your near-formation of sexy maids dances, drinks and celebrates to many admiring glances and cheers from the other club patrons.<br>
<br>
Seemingly fully accepted, and accepting themselves, as part of the "team" nobody is having more fun than <<=setup.getNpcName("generic_female1","custom","Jay")>> as they dance and cheer, a broad smile on their face, skirts bouncing and their big new breasts heaving with every thumping beat.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_3" "Dance, maidtress, dance!" 1800>>]
</div>/*#
#desc: celebrate jay's promotion: destroyer intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_waitress","npc_waitress_trayless") "boymode_maid_perfect" "party_maid">>
<div id="invframe" class="scrolltext">
After a full day of working the cafe there's a limit to how much partying excitement and adrenaline can sustain, and the group ends up shifting from the dance floor to the play area.<br>
<br>
Still very much in charge, <<=setup.getNpcName("npc_maid","first")>> takes a seat as you, <<=setup.getNpcName("generic_female1","custom","Jay")>> and the rest of the maidtresses look on with rapt attention. "@@.npc_maid;So, there's one final celebratory milestone,@@" <<=setup.getNpcName("npc_maid","first")>> states as she spreads her legs, pulling back her skirt to reveal her panties straining to contain the so-called "Destroyer" within. "@@.npc_maid;We all work hard, and tonight we played hard, and, while at work we follow <<=ps(setup.getNpcName("npc_butler","formal"))>> rules, here, well... it's time to see if any of you are up to the challenge of sheathing my sword... <<=setup.getNpcName("npc_waitress","first")>>? As the defending record-holder, shall you show our newest maiden how it's done?@@"<br>
<br>
You try to take everything in, but <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> attention is in one place, and one place only, staring in awe at <<=ps(setup.getNpcName("npc_maid","first"))>> large <<getWordPenis false>> known as "The Destroyer" for its blend of girth, length, and obvious hole-conquering power.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_4" "Watch." 600>>]
</div>/*#
#desc: celebrate jay's promotion: destroyer npc_waitress
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_waitress","npc_waitress_trayless") "boymode_maid_perfect" "party_maid">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_waitress","first")>> strides up to <<=setup.getNpcName("npc_maid","first")>> on her throne, taking a brief moment to free The Destroyer from its panty palace and give it a few lubricating licks before spinning in place, lifting her skirt, and removing her butt-plug to sit back.<br>
<br>
<<=setup.getNpcName("npc_waitress","first")>> closes her eyes in concentration and <<=setup.getNpcName("npc_maid","first")>> bites her lip as <<=setup.getNpcName("npc_waitress","first")>> squats down, centimetre after centimetre of the glorious Destroyer disappearing into her ass before she manages to take it all the way balls-deep. <<=setup.getNpcName("npc_maid","first")>> grabs the waitress' legs and pulls them up, putting the impressive feat on full display as <<=ps(setup.getNpcName("npc_waitress","first"))>> cage bounces on top of <<=ps(setup.getNpcName("npc_maid","first"))>> full balls.<br>
<br>
The maidtresses, and a few other club patrons, look on in awe as <<=setup.getNpcName("npc_maid","first")>> gives a few thrusts, and then allows <<=setup.getNpcName("npc_waitress","first")>> to put her feet back on the ground to rise and stagger away,
already breathing heavily "@@.npc_maid;<<=setup.getNpcName("npc_waitress","first")>> has re-proven herself as my number two...now, who else wants to take a shot?@@"<br>
<br>
As <<=setup.getNpcName("npc_maid","first")>> talks, one of the other maidtresses hurries over to clean and polish the still throbbing Destroyer as several others lick their lips and start forming a queue...<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_5" "Watch." 600 "<<set $scene.suck=false>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_5" "Get in line." 600 "<<set $scene.suck=true>>">>]
</div>/*#
#desc: celebrate jay's promotion: destroyer oral
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_waitress","npc_waitress_trayless") "boymode_maid_perfect" "party_maid">>
<div id="invframe" class="scrolltext">
You watch as most of the other girls take their turn, lipstick-rings appearing around the Destroyer to mark their progress... even though none manages to get more than about three-quarters of the way down despite their best efforts.<br>
<br>
Seemingly purposefully placed at the end of the line, <<=setup.getNpcName("generic_female1","custom","Jay")>> watches on with a mix of nervous fear, and obvious lusty excitement, and you notice <<=setup.getNpcName("npc_maid","first")>> occasionally glance over at the newest maidtress with a hungry grin.<br>
<br>
<<if $scene.suck>>
<<if setup.getTotalValue("oral") > $npc_maid.penis_size>>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_5_you_full" "Time to show what you've got... or rather, what you can take." 600>>]<br>
<<else>>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_5_you" "Your turn..." 600>>]<br>
<</if>>
<<else>>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_6" '<<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> turn...' 600>>]
<</if>>
</div>/*#
#desc: celebrate jay's promotion: destroyer oral you full
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_waitress") "boymode_maid_perfect" "party_maid">>
<div id="invframe" class="scrolltext">
You have trained long and hard, and you deep-throat The Destroyer with gusto. Balls deep, you hum and look up as <<=ps(setup.getNpcName("npc_maid","first"))>> bottom lip trembles and the assembled maids gasp. <<=setup.getNpcName("generic_female1","custom","Jay")>> is looking more than a little flush as you slowly pull back, barely holding onto control as she eases you backwards and takes a deep breath before congratulating your triumph. "@@.npc_maid;Well, well! It seems that we have quite the skilled coworker...@@"<br>
<br>
It's down to just <<=setup.getNpcName("generic_female1","custom","Jay")>> as <<=setup.getNpcName("npc_maid","first")>> looks up with a grin, all eyes on the tall, nervous maid as she steps forward and kneels before the looming Destroyer.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_6" "Watch." 600>>]
</div>/*#
#desc: celebrate jay's promotion: destroyer oral you
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_waitress","npc_waitress_trayless") "boymode_maid_perfect" "party_maid">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("oral") > 10>>
You make a noble effort... but The Destroyer is too large, even for your honed skills.
<<elseif setup.getTotalValue("oral") > 5>>
The Destroyer is far beyond your skills, as you barely reach the first lipstick mark, well before the halfway point before you must admit defeat.
<<else>>
Your skills are woefully inadequate, as you barely manage to take the very tip of the "warhead" before retreating in shame.
<</if>>
<br><br>
It's down to just <<=setup.getNpcName("generic_female1","custom","Jay")>> as <<=setup.getNpcName("npc_maid","first")>> looks up with a grin, all eyes on the tall, nervous maid as she steps forward and kneels before the looming Destroyer.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_6" "Watch." 600>>]
</div>/*#
#desc: celebrate jay's promotion: destroyer oral Jay
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_maid","npc_maid_dom_2") "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
You all watch as <<=setup.getNpcName("generic_female1","custom","Jay")>> kneels in front of <<=setup.getNpcName("npc_maid","first")>> and the dominant maid smiles down, one hand wrapped around the glistening Destroyer as her other caresses <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> face.<br>
<br>
"@@.npc_maid;I've seen you staring, and I'm so proud of the progress you've made to become one of us maids. Now go on, take your reward<<if $fetish.cum>>, become my cream-filled <<=setup.getNpcName("generic_female1","custom","Cherry")>><</if>>.@@"<br>
<br>
You and your fellow maidtresses hold your breath as <<=setup.getNpcName("generic_female1","custom","Jay")>> pushes past her obvious intimidation to make her attempt. <<=setup.getNpcName("generic_female1","custom","Jay")>> makes a mighty effort, struggling to get more than half of the Destroyer past her lips... but, where she had previously chided similar such failed attempts, this time <<=setup.getNpcName("npc_maid","first")>> looks down with a smile, letting <<=setup.getNpcName("generic_female1","custom","Jay")>> back away slightly before holding her hair and unleashing a long pent-up orgasm.<br>
<br>
<<if $fetish.cum>>
Girl-cum fountains with joy as <<=setup.getNpcName("generic_female1","custom","Jay")>> struggles to swallow... only for you and the other maidtresses to immediately be there to help, kissing and licking up every delicious drop as you
<<else>>
As <<=setup.getNpcName("npc_maid","first")>> cums, you and your fellow maidtresses descent, hugging and kissing and licking with and alongside <<=setup.getNpcName("generic_female1","custom","Jay")>> to
<</if>>
TRULY welcome the newest maidtress.<br>
<br>
The orgasm drags out, but then it is just <<=setup.getNpcName("npc_maid","first")>> and <<=setup.getNpcName("generic_female1","custom","Jay")>> once again, "The Destroyer" hanging tired and sated as <<=setup.getNpcName("generic_female1","custom","Jay")>> nervously tucks it back away in its panties, and <<=setup.getNpcName("npc_maid","first")>> stands, offering the newest maidtress a hand and raising her up to cheers.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_5_promotion_7" "Continue." 600>>]
</div>/*#
#desc: celebrate jay's promotion: finish night
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.flags.last_haze = $now>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Screening Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_foyer.png" setup.charImage("npc_maid","npc_maid_dom_2") setup.charImage("npc_waitress","npc_waitress_trayless") "boymode_maid_perfect" "party_maid">>
<div id="invframe" class="scrolltext">
As exhilarating as the night's celebration was, it's nearing closing time... after another long week of maidtressing. Arm and arm, you all head for the exits, <<=setup.getNpcName("npc_maid","first")>> and <<=setup.getNpcName("generic_female1","custom","Jay")>> right in the centre, the lead maidtress and the guest of honour, ready, willing, and excited to tackle another week...<br>
<br>
[<<moveTo "room_citymap" "Head your separate ways." 300>>]
</div>/*#
#desc: jay matchmaker: see jay and npc_maid
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
As you're working you notice <<=setup.getNpcName("generic_female1","custom","Jay")>> and <<=setup.getNpcName("npc_maid","first")>> come back from break together. <<=setup.getNpcName("generic_female1","custom","Jay")>> is walking a bit bow-legged, and <<=setup.getNpcName("npc_maid","first")>> flashes <<=setup.getNpcName("generic_female1","custom","Jay")>> a smile before hurrying off to deal with some sort of minor emergency.<br>
<br>
<<set _txt = "Ask " + setup.getNpcName("generic_female1","custom","Jay") + " what's up.">>
[<<moveTo "event_maid_cafe_work_boymode_seduce_1_intro_2" _txt 60 "<<set $scene.ask=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_1_intro_2" "Get back to work." 60 "<<set $scene.ask=false>>">>]
</div>/*#
#desc: jay matchmaker intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
<<if $scene.ask>>
You can ask <<=setup.getNpcName("generic_female1","custom","Jay")>> what's up and she blushes, "@@.generic_female1;The Destroyer is just... it life-changing too strong a word? I keep trying, and <<=setup.getNpcName("npc_maid","first")>> feels and tastes to good, and she's so understanding but... I want more. I want to be able to feel her balls slapping my butt, for her to look down at me as my lips make it all the way to her base and my throat swells...@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> bites her lip. "@@.generic_female1;I, uh, don't suppose you could offer any advise? I'm a bit new to this sort of thing, and I never thought of myself as a size queen or anything like that but... oh, I want to take The Destroyer all the way, I want it so, so bad...@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_1_intro_3_store" 'A trip to <<printShopName "mall_sexstore">> would seem in order...' 1200>>]<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_1_intro_3" "You don't have advise at the moment." 60>>]
<<else>>
You flash a smile to <<=setup.getNpcName("generic_female1","custom","Jay")>> and continue on with your work.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Finish off your shift." 1800>>]
<</if>>
</div>/*#
#desc: jay matchmaker intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
You wish <<=setup.getNpcName("generic_female1","custom","Jay")>> luck, but say that you don't have any advise to offer.<br>
<br>
"@@.generic_female1;Dang, well... hopefully practice makes perfect... and that practice is, like... so good... but I really do want to double-hole take The Destroyer, and it feels like some extra-curriculars may be needed to push me past my limits...@@" A customer walks in and <<=setup.getNpcName("generic_female1","custom","Jay")>> bounces off to help.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Resume your shift." 1200>>]
</div>/*#
#desc: help jay with training supplies
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_maid.flags.last_haze = $now>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
You wave for <<=setup.getNpcName('npc_waitress', 'first')>> to cover for you and she winks knowingly as you lead <<=setup.getNpcName("generic_female1","custom","Jay")>> out of the cafe and across the mall to <<printShopName 'mall_sexstore'>>.<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> is definitely a bit bashful in this shop full of perversity, and they stick close as you take them to the dildo section to pick out a "training" set.<br>
<br>
You quiz <<=setup.getNpcName("generic_female1","custom","Jay")>> on their current capacity, and then use that as a starting point to get them an assortment of toys leading up to one very similar in dimension to the legendary Destroyer.<br>
<br>
<<if $fetish.bestiality_soft>>
<<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> attention is momentarily drawn to the shop's collection of horse, dog... and more exotic dildos and you ask if they'd like to try one. <<=setup.getNpcName("generic_female1","custom","Jay")>> blushes even harder before quietly explaining that "@@.generic_female1;no... I mean, they look like they could feel interesting... but <<=setup.getNpcName("npc_maid","first")>> is penile perfection, I want to focus on The Destroyer not get... distracted.@@"<br>
<br>
<</if>>
Toys in hand, you head for the check-out, where <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> applies <<if $npc_sexstore_clerk.flags.workStage >= 2>>your employee discount<<else>>a "maid" discount, noting how much business your fellow maidtresses have done at the shop<</if>>.<br>
<br>
Still wide-eyed, and grateful once her purchases are hidden away in a large, inconspicuous bag, you and <<=setup.getNpcName("generic_female1","custom","Jay")>> head back to the cafe so you can finish off your shift.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Resume your shift." 600>>]
</div>/*#
#desc: jay matchmaker: first hole
#status: RELEASED 0.9.1.0
#ignore_spell: destroyered
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female1","custom","Jay")>> spots you from across the cafe and skips over, diving in for a hug before biting her lip speaking with a mix of excitement and nerves.<br>
<br>
"@@.generic_female1;So, your help REALLY paid off... my throat has never felt so full, but when my nose touched <<=setup.getNpcName("npc_maid","first")>> belly, and then I looked up to see her smiling...@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> flutters her eyes and shudders as if in micro-orgasm. "@@.generic_female1;Of course, when she said something about how good I'd look wearing a collar for her to pop... well, she has a way with words, as well as other things...@@"<br>
<br>
You congratulate <<=setup.getNpcName("generic_female1","custom","Jay")>> on her success but she's already bouncing forward to the next thing. "@@.generic_female1;<<if State.hasPlayed("event_maid_cafe_work_boymode_5_promotion_5_you_full")>>Your success really gave me the motivation and inspiration to pull through, and the other maidtresses are really impressed that I've been the second<<else>>I can't believe I'm the first maidtress<</if>> to swallow <<=setup.getNpcName("npc_maid","first")>> balls deep... but I'm not done. I've got another hole and, well... thanks to your advise, and some hard training, I think I'm ready to get my ass Destroyered... and I want you there.@@"<br>
<br>
<<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> excitement overcomes her nerves as she plunges forward. "@@.generic_female1;<<=setup.getNpcName("npc_waitress","first")>> was there for the deepthroat, and the look on her face when I made it balls deep? To be honest I was expecting jealousy... but she just looked so happy and proud of me! All the maids here are just so wonderful! Anyway... for this second challenge I really want you to be there... I mean, such a triumph requires a witness, right? Though... it's not like it isn't a feat that I'd gleefully reproduce on demand again, and again and...@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> giggles. "@@.generic_female1;So, anyway... yeah, you up for being there to help a girl achieve her dream of sitting all the way down on <<=ps(setup.getNpcName("npc_maid","first"))>> throne?@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_2" "Of course!" 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_2" "Just wish them luck." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: jay matchmaker: ask anal help
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female1","custom","Jay")>> is finishing their shift when they spot you and run over.<br>
<br>
"@@.generic_female1;Hey, so... I was wondering if you might have time today to help? I didn't quite hilt the Destroyer last time, but I want to take another shot at seating its magnificence... and I really think you being there would help push me over the edge...@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_2" "Of course!" 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_2" "Just wish them luck." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: jay matchmaker: accept anal offer and prep
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<set $npc_maid.flags.last_haze = $now>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<else>>
<<set $player.location to "Cafe: Newtype IV">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid_perfect" setup.charImage("npc_maid")>>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You reply that you'd love to help and <<=setup.getNpcName("generic_female1","custom","Jay")>> grins, hurrying off to find <<=setup.getNpcName("npc_maid","first")>> before the three of you head for the backroom, <<=setup.getNpcName("npc_maid","first")>> explaining that while intimacy with customers is banned, <<=setup.getNpcName("npc_butler","first")>> looks the other way for some of the maidtresses own fun for purposes of "@@.npc_maid;team-building and morale.@@"<br>
<br>
"@@.npc_maid;Alright my good girl,@@" <<=setup.getNpcName("npc_maid","first")>> states with a smile that has <<=setup.getNpcName("generic_female1","custom","Jay")>> swoon as she kneels down to start fluffing The Destroyer. "@@.npc_maid;You've got your witness, but if you want to go for the prize and become the first maidtress to take me all the way in two holes, well... no shortcuts, suck it down and get it nice and wet before you bend over...@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> trembles, licking her lips as she looks up and whispers "@@.generic_female1;yes, <<=setup.getNpcName("npc_maid","Maidtress")>>,@@" with submissive passion.<br>
<br>
Holding The Destroyer with both hands, <<=setup.getNpcName("generic_female1","custom","Jay")>> leans forward, a kiss turning to parted lips turning to a smooth deepthroat, The Destroyer stiffening to its full challenging dimensions as <<=setup.getNpcName("generic_female1","custom","Jay")>> slides it halfway down on the first lunge. Bobbing back and forth <<=setup.getNpcName("generic_female1","custom","Jay")>> works her way forward a centimetre at a time, the whole time staring intently upwards, as focused on <<=ps(setup.getNpcName("npc_maid","first"))>> approval as she is on this first challenge.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> keeps her hands akimbo as she lets <<=setup.getNpcName("generic_female1","custom","Jay")>> do all the work, though even her stoic control slips for a moment as <<=setup.getNpcName("generic_female1","custom","Jay")>> finishes the final lunge to hilt The Destroyer all the way past her lips to go completely hands free.<br>
<br>
"@@.npc_maid;Good girl...@@" <<=setup.getNpcName("npc_maid","first")>> moan-whispers, barely resisting a voice crack as she strokes <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> cheek and <<=setup.getNpcName("generic_female1","custom","Jay")>> pulls back with a gasp, trailing drool<<if $fetish.cum>> and pre<</if>> from her panting lips to the glistening Destroyer.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_3" 'Encourage <<=setup.getNpcName("generic_female1","custom","Jay")>> as they bend over.' 300>>]
<<else>>
You wish <<=setup.getNpcName("generic_female1","custom","Jay")>> luck, but explain that you can't help today.<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> sighs, but there's no diminishing her built-up excitement at taking another shot at The Destroyer... or is that giving The Destroyer another shot at her? <<=setup.getNpcName("generic_female1","custom","Jay")>> skips off to find <<=setup.getNpcName("npc_maid","first")>> and you resume your shift.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Resume your shift." 600>>]
<</if>>
</div>/*#
#desc: jay matchmaker: anal
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female1","custom","Jay")>> rises from her knees to bend over a small, but sturdy, table. You move in front whispering encouragement and reminding her to relax and breathe as <<=setup.getNpcName("npc_maid","first")>> moves around behind, first extracting a thick butt-plug before lining up The Destroyer for its next mission.<br>
<br>
"@@.npc_maid;You ready?@@" <<=setup.getNpcName("npc_maid","first")>> asks and <<=setup.getNpcName("generic_female1","custom","Jay")>> nods, her entire body trembling with excitement as she replies "@@.generic_female1;I want it... all of it...@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> moans as <<=setup.getNpcName("npc_maid","first")>> presses forward, and you do your part, leaning in close to whisper in <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> ear, talking about what a good girl they are, how they've worked so hard to deserve this, and all they need to do now is relax and prove themselves the Cafe's two-hole champion...<br>
<br>
You can gauge progress by looking past to where <<=setup.getNpcName("npc_maid","first")>> is very focused on both resisting an obviously impending orgasm as well as slowly thrusting her way deeper, adding a bit of additional lube to supplement <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> saliva as The Destroyer advances with each thrust.<br>
<br>
<<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> breaths are coming in quick, staccato pants as you assert that she can take this, that she's earned this and now is HER time...<br>
<br>
With a final thrust <<=ps(setup.getNpcName("npc_maid","first"))>> hips audibly slap against <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> ass... promoting <<=setup.getNpcName("generic_female1","custom","Jay")>> to <<if $fetish.cum>>cum through<<else>>climax despite<</if>> her cage, her entire body shuddering in prolonged orgasm as <<=setup.getNpcName("npc_maid","first")>> starts thrusting, each stroke going all the way now as <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> body becomes accustomed... becomes claimed, by the might of the Destroyer.<br>
<br>
You pull <<=setup.getNpcName("generic_female1","custom","Jay")>> in for a kiss to muffle her extending, howling orgasm lest you alert customers... or wake the damned. <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> eyes roll back as she slowly comes down, eventually going limp a brief moment of silence filling the room as <<=setup.getNpcName("npc_maid","first")>> and <<=setup.getNpcName("generic_female1","custom","Jay")>> catch their breath<<if $fetish.cum>>, the only sound in the room the drip, drip of her leaking through her cage<</if>>.<br>
<br>
<<if $fetish.cum>>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_4" "Lick your friend clean." 60 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_4" 'Leave <<=setup.getNpcName("npc_maid","first")>> and <<=setup.getNpcName("generic_female1","custom","Jay")>> to aftercare.' 60 "<<set $scene.lick=false>>">>]
<<else>>
[<<moveTo "event_maid_cafe_work_boymode_seduce_2_anal_4" "Continue." 300>>]
<</if>>
</div>/*#
#desc: jay matchmaker: anal lick
#status: RELEASED 0.9.1.0
#ignore_spell: defeater
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.cum && $scene.lick>>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
<<if !$fetish.cum || !$scene.lick>>
You step back as <<=setup.getNpcName("generic_female1","custom","Jay")>> rolls over to grin up at <<=setup.getNpcName("npc_maid","first")>>.<br>
<br>
<<else>>
You slide to your knees, lips wrapping around <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> cage to lick her clean, <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> thin, delicate cum complimented by the thicker, stronger emission that is trickling down between her crack from where <<=setup.getNpcName("npc_maid","first")>> dropped a monster load in <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> ass.<br>
<br>
As you finish licking, <<=setup.getNpcName("generic_female1","custom","Jay")>> rolls over, sparing a momentary smile for you, before looking up starry-eyed at <<=setup.getNpcName("npc_maid","first")>>.
<</if>>
<br><br>
"@@.npc_maid;Congratulations,<<if $fetish.cum>>, my cream-filled<</if>> <<=setup.getNpcName("generic_female1","custom","Cherry")>>. You're certified, and witnessed as the first Double Destroyer Defeater.@@"<br>
<br>
You move towards the door, deciding it's best to leave this moment for the two of them.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Leave the two of them to post-coital celebration and get back to maidtressing." 1800>>]
</div>/*#
#desc: jay matchmaker: jay confused
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
As you're starting work and waiting for your first customer you see <<=setup.getNpcName("generic_female1","custom","Jay")>>.<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_3_like_2" 'Ask how things are going with <<=setup.getNpcName("npc_maid","first")>>?' 180 "<<set $scene.ask=true>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_3_like_2" 'Continue on with your shift.' 60 "<<set $scene.ask=false>>">>]<br>
</div>/*#
#desc: jay matchmaker: jay confused
#status: RELEASED 0.9.1.0
#ignore_spell: destroyered
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.ask>>
<<set $npc_maid.flags.last_haze = $now>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
<<if $scene.ask>>
You ask <<=setup.getNpcName("generic_female1","custom","Jay")>> how things are going with <<=setup.getNpcName("npc_maid","first")>>?<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> grins. "@@.generic_female1;Oh, it feels so good being Destroyered in both holes only... well...@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> blushes and looks at her feet.<br>
<br>
You ask if, since she's interested, why <<=setup.getNpcName("generic_female1","custom","Jay")>> hasn't asked <<=setup.getNpcName("npc_maid","first")>> out?<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> turns stop-light red. "@@.generic_female1;Oh, no, I mean, I'd love too... but we get along so well together, and I don't know if she feels the same way, and I wouldn't want to mess anything up between us...@@"<br>
<br>
You blink in shock as <<=setup.getNpcName("generic_female1","custom","Jay")>> continues to babble on.<br>
<br>
<<printThought "Useless lesbian...">><br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_seduce_3_like_3" 'Time for the clue bat...' 300>>]
<<else>>
You wave at <<=setup.getNpcName("generic_female1","custom","Jay")>> and she smiles back before the two of you continue on with your shifts.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Resume your shift." 3000>>]
<</if>>
</div>/*#
#desc: jay matchmaker: provide clarity
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_technician' 'other' 'theme_boymode_date_invite_1'
0
'theme_boymode_date_invite_1'
false
>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" "boymode_maid_perfect">>
<div id="invframe" class="scrolltext">
You sigh and explain that you are quite certain that <<=setup.getNpcName("npc_maid","first")>> would be happy to go out sometime if <<=setup.getNpcName("generic_female1","custom","Jay")>> asked, pointing out that you've seen them kissing on the lips, with tongue, that <<=setup.getNpcName("generic_female1","custom","Jay")>> literally sucks <<=ps(setup.getNpcName("npc_maid","first"))>> <<getWordPenis false>> on the reg, <<=setup.getNpcName("npc_maid","first")>> calls <<=setup.getNpcName("generic_female1","custom","Jay")>> by a pet name, congratulates <<=setup.getNpcName("generic_female1","custom","Jay")>> by calling her "her good girl," and mentioned about how cute <<=setup.getNpcName("generic_female1","custom","Jay")>> would look wearing <<=ps(setup.getNpcName("npc_maid","first"))>> collar...<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> scrunches up her face before shaking her head nervously. "@@.generic_female1;Sure, but, like, WHAT DID SHE MEAN??? No... better to play it safe...@@"<br>
<br>
Before you can think of a response to <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> baffling conclusion a customer waves for assistance and <<=setup.getNpcName("generic_female1","custom","Jay")>> dashes off to help, as eager to get back to work as to escape the conversation.<br>
<br>
You sigh, this looks like a level of dense that's going to require some some industrial-level drilling... perhaps <<=setup.getNpcName("npc_technician","first")>> would be able to help, given how long she's been friends with <<=setup.getNpcName("npc_maid","first")>>.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Resume your shift." 3000>>]
</div>/*#
#desc: ask npc_technician about jay
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName("generic_female1","custom","Jay")>> and <<=ps(setup.getNpcName("npc_maid","first"))>> seemingly stalled-out relationship to <<=setup.getNpcName("npc_technician","first")>> and she smirks, glancing across the cafe to the now-common sight of <<=setup.getNpcName("generic_female1","custom","Jay")>> and <<=setup.getNpcName("npc_maid","first")>> making obvious, yet bashful, eyes at one another as they work.<br>
<br>
"@@.npc_technician;Ahhh, why am I not surprised? So, a bit of background on our normally bold friend <<=setup.getNpcName("npc_maid","first")>>... under all that bravado she's a softy who is scared to hurt anyone. Add in <<=setup.getNpcName("generic_female1","custom","Jay")>> being obviously a total sub, and, well...@@" <<=setup.getNpcName("npc_technician","first")>> shakes her head and leans in closer.<br>
<br>
"@@.npc_technician;You see, <<=setup.getNpcName("npc_maid","first")>> is a bit of a paradox. Take our own brief fling, <<=setup.getNpcName("npc_maid","first")>> may have been full-domme during the relationship, but we never would have gotten together if I wasn't gifted with some switchy initiative to ask her out in the first place. Someone like <<=setup.getNpcName("generic_female1","custom","Jay")>>, who looks like they couldn't even brat? <<=setup.getNpcName("npc_maid","first")>> will flirt and drop hints with the subtlety of orbital bombardment... but is going to be too afraid of screwing up to pull the trigger, and that's before you add in the pressure that comes from working together! No, there is only one solution, and it seems like you saw it too. It's time for some wizard magic...@@" <<=setup.getNpcName("npc_technician","first")>> grins even wider. "@@.npc_technician;you up for a double date? I promise that I have... a plan.@@"<br>
<br>
[<<moveTo "theme_boymode_date_invite_2" "You're in!" 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "theme_boymode_date_invite_2" "You don't think you have time right now..." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: re-ask npc_technician about jay
#status: RELEASED 0.9.1.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You mention helping <<=setup.getNpcName("generic_female1","custom","Jay")>> and <<=setup.getNpcName("npc_maid","first")>> get together.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;As I said before. I have a plan... if you're ready for that double date? Say... <<if $now.getUTCDay() == 0>>next <</if>>Sunday evening?@@"<br>
<br>
<<set $scene.jayDate = setup.getNextDayOfWeek($now, 0, 18, 0, false)>>
<<if setup.hasFreeTime($scene.jayDate, $player, $currentTasks, 7600)>>
[<<moveTo "theme_boymode_date_invite_2" "You're in!" 60 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;You're busy that night.@@]<br>
<</if>>
[<<moveTo "theme_boymode_date_invite_2" "You don't think you have time right now..." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: schedule double date with technician
#status: RELEASED 0.9.1.0
#ignore_spell: singleton,flustration,yeet,maidstress
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.jayDate = setup.getNextDayOfWeek($now, 0, 18, 0, false)>>
<<addTaskById 'jay_double_date' $scene.jayDate>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_boymode_date_invite_alt')>>
<<if _themeId != -1>>
<<set $npc_technician.themes.other[_themeId].repeatable = false>>
<</if>>
<<else>>
<<addNpcTheme 'npc_technician' 'other' 'theme_boymode_date_invite_alt'
0
'theme_boymode_date_invite_1_alt'
true
>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_maid_perfect" setup.charImage("npc_maid")>>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_technician","first")>> waits until <<=setup.getNpcName("generic_female1","custom","Jay")>> is the closest maidtress to your table, then summons them over, putting up a facade of frustration as she demands "@@.npc_technician;you summon thine head maid... or would that be maidstress? Either way, I demand her presence post-haste!@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> blushes and stutters a response as she dutifully, if nervously, motions <<=setup.getNpcName("npc_maid","first")>> over.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> rolls her eyes at <<=setup.getNpcName("npc_technician","first")>>, "@@.npc_technician;is this customer giving you problems? Because I will yeet her ass onto the street if she's causing trouble for my sweet <<=setup.getNpcName("generic_female1","custom","Cherry")>>.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_maid","first"))>> comment turns <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> flustration up to eleven as <<=setup.getNpcName("npc_technician","first")>> ignores the quip and explains that the "problem." <br>
<br>
"@@.npc_technician;Hardly, I am a model customer, despite this constant, unfair harassment... but, the reason I summoned you two here, today is, well... <<=setup.getNpcName("npc_maid","first")>>, and <<=$player.first_name>> have this wonderful new friend, and they have hardly introduced them to me!@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> somehow manages to find yet a deeper shade of red as her lips flap noiselessly and <<=setup.getNpcName("npc_technician","first")>> continues.<br>
<br>
"@@.npc_technician;So, there is obviously only one solution to this dastardly conundrum — a double date so the four of us to get to know one another better. <<if $now.getUTCDay() == 0>>next <</if>>Sunday evening, my place, "grub and game." Bring some "Occult Conclave" decks because while the date may be double, we're going to be getting down with some Ancient Dragon Singleton action.@@"<br>
<br>
"@@.npc_maid;Fine, but don't get all salty when I CRUSH your piddly deck like I always do. You've played before, right <<=setup.getNpcName("generic_female1","custom","Jay")>>?@@" She asks.<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> is still a bit too overwhelmed to form words, but she nods and <<=setup.getNpcName("npc_technician","first")>> grins.<br>
<br>
"@@.npc_technician;Perfect! It's a date... well, two dates... date squared? Whatever, be there Sunday, where the only things square... or straight, will be the definitely not curling cardboard wizard squares!@@"<br>
<br>
The two maidtresses depart to resume their duties... with <<=ps(setup.getNpcName("npc_maid","first"))>> facade slipping for just a moment as she glances back at <<=setup.getNpcName("npc_technician","first")>> to mouth "thank you." <br>
<br>
<<=setup.getNpcName("npc_technician","first")>> winks at you. "@@.npc_technician;This'll be perfect... and I'll brew up a deck for you, so you don't need to worry about a thing other than parking your cute bum across the table and playing.@@"
<<else>>
You reply that now isn't a good time and <<=setup.getNpcName("npc_technician","first")>> nods. "@@.npc_technician;As Well, let me know. If I know anything about those two they're just going to keep circling until someone shoves them together, so just give me the word when it's catalyst time...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: no show movie date with admin
#status: RELEASED 0.8.8.0
#ignore_spell: frakin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<incrementEmotion 'anger' 'npc_technician' 2>>
<<set _themeId = setup.findThemeId('npc_technician', 'other', 'theme_boymode_date_invite_alt')>>
<<if _themeId == -1>>
<<addNpcTheme 'npc_technician' 'other' 'theme_boymode_date_invite_alt'
0
'theme_boymode_date_invite_1_alt'
true
>>
<<else>>
<<set $npc_technician.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_technician","first")>>, you were supposed to be at her place for the double date with <<=setup.getNpcName("generic_female1","custom","Jay")>> and <<=setup.getNpcName("npc_maid","first")>>!<br>
<br>
"@@.npc_technician;Hey, so, if you're on your way, you can go ahead and head home. Apparently <<=setup.getNpcName("generic_female1","custom","Jay")>> saw <<=setup.getNpcName("npc_maid","first")>> in the elevator and like... panicked and ran home... talk to me over coffee and we'll reschedule for some other time. Useless frakin' lesbians, I swear.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: start jay double date
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_casual">>
<div id="invframe" class="scrolltext">
You run into <<=setup.getNpcName("generic_female1","custom","Jay")>> in the elevator and lead the way to <<=ps(setup.getNpcName("npc_technician","first"))>> where <<=setup.getNpcName("npc_technician","first")>> greets the both of you and gives you a deck, leading <<=setup.getNpcName("generic_female1","custom","Jay")>> to take a seat and chatting casually as you wait for <<=setup.getNpcName("npc_maid","first")>> to arrive.<br>
<br>
"@@.npc_technician;After all,@@" <<=setup.getNpcName("npc_technician","first")>> explains with a wink that could slay armies, "@@.npc_technician;threesomes are fun, but four is where the magic REALLY starts to happen...@@"<br>
<br>
[<<moveTo "event_boymode_date_2" '<<=setup.getNpcName("npc_maid","first")>> arrives, time to play.' 300>>]
</div>/*#
#desc: introduce decks
#status: RELEASED 0.9.1.0
#ignore_spell: magicks,swollyness,playmat,raaah,turnin',selpam,freakin',shuf,fle,seld,saphielle,zazex,propitiatrix
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_casual" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_maid","first")>> arrives looking obviously more nervous than you've seen her before, but <<=setup.getNpcName("npc_technician","first")>> is already having everyone take their seats and leading off the deck introductions.<br>
<br>
"@@.npc_technician;Alright, I'm running Selpam, the Goblin Queen, so I'm looking to go wide and swarm, I blew my load on long term planning getting y'all here, in-game it's all about makin' a bunch of dudettes and turnin' them sideways! Raaah!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> turns to <<=setup.getNpcName("npc_maid","first")>> as she unfurls a playmat with a flourish and slams her deck on the table, her normal confidence back in full. "@@.npc_maid;My champion is Her swollyness, Bev, Goddess of Muscle, and I'm going to be dropping some big old monsters to stomp over those puny goblins and claim victory!@@"<br>
<br>
You glance at the deck <<=setup.getNpcName("npc_technician","first")>> provided and she steps in to explain.
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;Princess <<=$player.first_name>> here will be running Zazex, Daemonic Dominatrix.@@" You look at the card, depicting a sexy demoness posing confidently with whip in hand. "@@.npc_technician;The deck is built around gaining value by giving your opponents thralls.@@"
<<case 'neutral' ''>>
"@@.npc_technician;<<=$player.first_name>> here will be running Zazex, Mirthless Manipulator.@@" You look at the card, depicting a demoness whispering in the ear of a Paladin sort. "@@.npc_technician;It's a bit chaos-y involving swapping control of permanents between players.@@"
<<case "sub">>
"@@.npc_technician;My lovely <<=$player.first_name>> will be running Zazex, Pleasing Propitiatrix.@@" You look at the card, depicting a sexy demoness kneeling and wearing a glowing collar. "@@.npc_technician;The deck is all about taking control of your opponents stuff.@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
Attention turns to <<=setup.getNpcName("generic_female1","custom","Jay")>> as she nervously rolls out a playmat with a maid on it... and a matching custom alter for her deck's champion. "@@.generic_female1;So, um, this is Saphielle Seld, Cleanser of Worlds.@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> reveals a foiled out holo-card with enough rules text it might require a microfiche reader. One side depicts a fragile looking servant maid, with the other showing the same character looking like a world-conquering badass (but still in a maid outfit). "@@.generic_female1;She starts out pretty weak, but she has the transform mechanic with a trigger of being on an empty battlefield, so I'm running lots of sweepers and stuff so she can power up...@@"<br>
<br>
"@@.npc_technician;An interesting blend of strategies, but in the end, only one shall stand! To make things a bit more interesting however...@@" <<=setup.getNpcName("npc_technician","first")>> drops another, smaller deck onto the middle of the table. "@@.npc_technician;So this is a shared deck, any player can channel five magicks to draw and cast a table-spanning "bonus effect" ... but the twist is you have to do whatever the card says, as well. Think of it like a party game getting tossed into the mix. Now... LET'S GET READY TO SHUF-FLE!@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> rolls her eyes and <<=setup.getNpcName("generic_female1","custom","Jay")>> stifles a laugh at <<=ps(setup.getNpcName("npc_maid","first"))>> trademark histrionics and the game is on...<br>
<br>
[<<moveTo "event_boymode_date_3" "Draw, and let's go!" 300>>]
</div>/*#
#desc: initial turns, resolve never have I spell
#status: RELEASED 0.9.1.0
#ignore_spell: magick
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_casual" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
Play commences with <<=setup.getNpcName("npc_technician","first")>> off to a bit of an explosive start as she vomits goblins onto the field... and then sacrifices a few for magick to make the first draw from the the bonus deck.<br>
<br>
"@@.npc_technician;Alright, this is "Never Had It, Ever" the caster states something they've done, and anyone who HASN'T has to permanently banish the strongest thrall they control.@@" <<=setup.getNpcName("npc_technician","first")>> glances over the battlefield, she currently has the largest board state, though <<=setup.getNpcName("npc_maid","first")>> has the first of her big, beefy girls on the board and will surely be going for a major attack on her next turn.<br>
<br>
"@@.npc_technician;Okay, so raise your hand if you've both sucked and fucked <<=ps(setup.getNpcName("npc_maid","first"))>> big, beautiful broadsword.@@" <<=setup.getNpcName("npc_technician","first")>> raises her hand, and you and <<=setup.getNpcName("generic_female1","custom","Jay")>> follow suit... though <<=setup.getNpcName("generic_female1","custom","Jay")>> seems a touch surprised.<br>
<br>
"@@.npc_maid;I told you we dated for a hot minute,@@" <<=setup.getNpcName("npc_maid","first")>> explains as she removes her thrall from the game.<br>
<br>
"@@.npc_technician;Yeah, I'm just a bit too switchy for it to work out, <<=setup.getNpcName("npc_maid","first")>> is 100% hot, hard, and domme, and she deserves a fully-time sweet sub, not a mercurial chaos goblin.@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> ignores the comment... though <<=setup.getNpcName("generic_female1","custom","Jay")>> appears both assuaged and excited. "@@.npc_maid;Anyway, I think that spell was a bit cheap, given that I'm not that flexible to suck on more than the tip... and the other option is just physically impossible.@@"<br>
<br>
"@@.npc_technician;There's nothing about that sort of restriction on the card,@@" <<=setup.getNpcName("npc_technician","first")>> announces with a grin. "@@.npc_technician;But, since you're wide open... I'm going to go ahead and swing in.@@"<br>
<br>
"@@.npc_maid;I take it... but you just earned my undying wrath... well, until the end of the game. After that you'll go back to having my NORMAL levels of wrath.@@"<br>
<br>
"@@.npc_technician;Sure, sure, talk is cheap, it's <<=ps($player.first_name)>> turn...@@"<br>
<br>
You look at your board. <<=setup.getNpcName("npc_maid","first")>> just took a significant setback, and it's pretty even among the rest of you. You drop your magick nexus for the turn and consider your actions, you're starting to get the hang of the deck and could go for progressing your plan... or you could sink your magick into the special deck...<br>
<br>
[<<moveTo "event_boymode_date_4" "Play normally." 300 "<<set $scene.cast=false>>">>]<br>
[<<moveTo "event_boymode_date_4" "Cast from the bonus deck." 300 "<<set $scene.cast=true>>">>]
</div>/*#
#desc: your choice
#status: RELEASED 0.9.1.0
#ignore_spell: magick,gobbos
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_casual" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<if $scene.cast>>
You channel all of your magick to draw from the bonus deck and reveal
<<else>>
You play on,
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
casting a spell that grants a thrall to target opponent and using it to "help" <<=setup.getNpcName("npc_maid","first")>> get back on the board.
<<case 'neutral' ''>>
casting a spell to swap control of a couple permanents between <<=setup.getNpcName("npc_technician","first")>> and <<=setup.getNpcName("generic_female1","custom","Jay")>> to disrupt their game-plans
<<case "sub">>
swiping one of <<=ps(setup.getNpcName("npc_technician","first"))>> goblin-synergy effects to disrupt her game-plan.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
Play proceeds without anything too splashy going on as <<=setup.getNpcName("npc_maid","first")>> rebuilds and <<=setup.getNpcName("generic_female1","custom","Jay")>> doesn't do much. <<=ps(setup.getNpcName("npc_technician","first"))>> turn rolls around and, after popping out a few more gobbos, she draws from the bonus deck once again, revealing
<</if>>
"Bound To The Plan." Each opponent may search their deck for a card, reveal it, and put it into their hand... but if they do, they have to wear either thigh, wrist, or ankle restraints for the remainder of the game. If all three opponents so choose, the caster can search up TWO cards... but they have to wear all three restraints.<br>
<br>
<<if $scene.cast>>
[<<moveTo "event_boymode_date_5" "Resolve the spell." 300>>]
<<else>>
[<<moveTo "event_boymode_date_5" "You can't pass up such a powerful effect." 300 "<<set $scene.search=true>>">>]<br>
[<<moveTo "event_boymode_date_5" "Decline to search." 300 "<<set $scene.search=false>>">>]
<</if>>
</div>/*#
#desc: resolve bondage spell
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cast>>
<<addItem "leather_thigh_cuffs">>
<<wearItem "leather_thigh_cuffs" true>>
<<addItem "leather_ankle_cuffs">>
<<wearItem "leather_ankle_cuffs" true>>
<<addItem "leather_wrist_cuffs">>
<<wearItem "leather_wrist_cuffs" true>>
<<elseif $scene.search>>
<<addItem "leather_wrist_cuffs">>
<<wearItem "leather_wrist_cuffs" true>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_casual" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<if $scene.cast>>
The allure of the best card out of their deck is too much, as <<=setup.getNpcName("npc_maid","first")>> handcuffs her self and reveals a powerful thrall that she might be able to cast in another few turns, <<=setup.getNpcName("npc_technician","first")>> cuffs her thighs and grabs a spell that boosts the attack of all goblins, and <<=setup.getNpcName("generic_female1","custom","Jay")>> ends up with ankle cuffs and a "destroy all" effect.<br>
<br>
You accept the full ensemble of restraints and hunt down a two card combo that you should be able to deploy to powerful effect later in the game.
<<else>>
You
<<if $scene.search>>
accept thigh cuffs and search up a magical item that can double spell effects while
<<else>>
decline to search, but
<</if>>
<<=setup.getNpcName("npc_maid","first")>> accepts wrist-cuffs and reveals a powerful thrall while <<=setup.getNpcName("generic_female1","custom","Jay")>> ends up with ankle cuffs and a "destroy all" effect.<br>
<br>
<<if $scene.search>>
<<=setup.getNpcName("npc_technician","first")>> grins as she accepts her full bindings and reveals a pair of goblin twins that have a powerful synergistic effect.
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;An <<=setup.getNpcName("npc_technician","title")>> restrained remains an <<=setup.getNpcName("npc_technician","title")>>@@"
<<case 'neutral' ''>>
"@@.npc_technician;A bit of bondage really does make everything better,@@"
<<case "sub">>
"@@.npc_technician;Back in restraints where I belong,@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
she states with a wink and a jangle of her chains as she re-sorts her hand and passes the turn.
<<else>>
<<=setup.getNpcName("npc_technician","first")>> frowns at you for having denied her the "value" of two cards... or maybe she just feels left out not being restrained...
<</if>>
<</if>>
<br><br>
"@@.npc_technician;Now you can't run away...@@" <<=setup.getNpcName("npc_technician","first")>> says with a playful wink that has <<=setup.getNpcName("generic_female1","custom","Jay")>> blushing and flicking through her cards as play continues.<br>
<br>
[<<moveTo "event_boymode_date_6" "Continue." 300>>]
</div>/*#
#desc: chastity reveal
#status: RELEASED 0.9.1.0
#ignore_spell: whallops,magick
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_casual" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
The next couple of rounds of the table are a bit more tense, as <<=setup.getNpcName("generic_female1","custom","Jay")>> hits the proverbial reset button with a board-wipe, but only gets a couple hits in before her transformed champion is neutralised. A few more haymakers are thrown back and forth and, after staring at her hand, and the board, and her cards again... <<=setup.getNpcName("generic_female1","custom","Jay")>> takes a deep breath, channels five magick... and draws from the bonus deck.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> is on the edge of her seat with excitement as <<=setup.getNpcName("generic_female1","custom","Jay")>> reads out. "@@.generic_female1;Dress or Di.e.: name an unseen article of clothing, anyone NOT wearing that item loses half their vitality points.@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> bites her lip and looks around the table... as usual, <<=setup.getNpcName("npc_maid","first")>> has the largest thrall on the board, but <<=ps(setup.getNpcName("npc_technician","first"))>> near endless swarm of goblins means she's had lots of blockers and has taken the fewest direct hits to her vitality total. "@@.generic_female1;I name chastity cage... or belt.@@" <<=setup.getNpcName("generic_female1","custom","Jay")>> states and <<=setup.getNpcName("npc_technician","first")>> grins even wider.<br>
<br>
<<if $npc_technician.relationship.her_caged>>
<<=setup.getNpcName("generic_female1","custom","Jay")>> looks surprised by your host once again as <<=setup.getNpcName("npc_technician","first")>> reveals her <<if $npc_technician.relationship.sissyomatic>>fantastically high-tech <<=setup.getItemName("sissyomatic")>>, <<=setup.getNpcName("generic_female1","custom","Jay")>> biting her lip with excitement at the sight of the cutting-edge device<<else>>steel prison<</if>>.<br>
<br>
"@@.npc_technician;The protective power of chastity shows itself once again!@@" <<=setup.getNpcName("npc_technician","first")>> states with a grin as she toys with her vitality tracker.
<<else>>
"@@.npc_technician;A clever call! Alright girls<<if $npc_technician.flags.knowgender != 'female'>>... and <<=$player.first_name>><</if>>, time to show the goods. I am unencumbered... I presume the Destroyer, too is armed, operational, and unrestrained?@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_maid","first")>> is slightly breathless with excitement as she reaches for her skirt to reveal a heavy steel chastity cage biting into the tumescent flesh of the Destroyer. "@@.npc_maid;I wanted to keep focused on the game, and be on my best behaviour... plus I figured <<=setup.getNpcName("npc_technician","first")>> would be up to SOMETHING so I took measures and locked myself up before heading over. The Destroyer, and the key, are on ice until I get home and, well... thaw out the key.@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> is practically drooling as the look with surprise at the sight of the steel-bound Destroyer.<br>
<br>
"@@.npc_technician;Such noble sacrifice! I am sure we innocent maidens are quite fortunate that you are able to demonstrate such... restraint.@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
You and <<=setup.getNpcName("generic_female1","custom","Jay")>> reveal your own chastity devices
<<else>>
<<=setup.getNpcName("generic_female1","custom","Jay")>> reveals her chastity cage
<</if>>
and the spell
<<if setup.checkItemTypeWorn("cage") && $npc_technician.relationship.her_caged>>
fizzles... at least in game, out of game sparks
<<elseif $npc_technician.relationship.her_caged || $npc_technician.relationship.her_caged>>
all but fizzles... at least in game. Out of game sparks
<<else>>
whallops you and <<=setup.getNpcName("npc_technician","first")>>, but that's nothing compared to the sparks that
<</if>>
are now flying in real life as <<=setup.getNpcName("npc_maid","first")>> and <<=setup.getNpcName("generic_female1","custom","Jay")>> share a momentary passionate glance.<br>
<br>
[<<moveTo "event_boymode_date_7" "This game is really getting intense..." 300>>]
</div>/*#
#desc: remove clothing spell
#status: RELEASED 0.9.1.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_casual" setup.charImage("npc_maid","npc_maid_naked")>>
<div id="invframe" class="scrolltext">
Things swing back and forth as powerful spells are cast, vitality totals dwindle and players get closer and closer to elimination. Through it all <<=setup.getNpcName("npc_maid","first")>> continues to resist the allure of the bonus deck... but <<=setup.getNpcName("npc_technician","first")>> has no such compunctions, drawing from it yet again and then grinning as she casts it.<br>
<br>
"@@.npc_technician;Exposed!: target player must reveal their hand or remove their clothing.@@" <<=setup.getNpcName("npc_technician","first")>> makes grasping at <<=setup.getNpcName("npc_maid","first")>> and her fistful of cards. "@@.npc_technician;Targeting you, <<=setup.getNpcName("npc_maid","first")>>. Gimmie, time to see what evil plans you've got cooking up...@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> pauses for a moment, looking at her hand, then around the table... and replies by casting a spell of her own. "@@.npc_maid;Copy target spell targeting you or a permanent you control, you may assign new targets to the copy...@@" she mockingly mimics <<=ps(setup.getNpcName("npc_technician","first"))>> gesture as she puts her remaining cards back face-down and starts shedding her clothes. "@@.npc_maid;Alright, hand 'em over!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> moves but a single hand as she taps one of the cards she has on the table and recites "@@.npc_technician;Chaos Shield: redirect any spell targeting you or a permanent you control to a random other valid target.@@"<br>
<br>
You hold your breath as <<=setup.getNpcName("npc_technician","first")>> pulls out a goblin themed "chaos cube" "@@.npc_technician;one or two is <<=$player.first_name>>, three-four is <<=setup.getNpcName("npc_maid","first")>> and five-six for <<=setup.getNpcName("generic_female1","custom","Jay")>>...@@"<br>
<br>
[<<moveTo "event_boymode_date_8" "She rolls... and gets a five!" 300>>]
</div>/*#
#desc: jay strips, you get bumped out of the game
#status: RELEASED 0.9.1.0
#ignore_spell: c,magick
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_naked" setup.charImage("npc_maid","npc_maid_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female1","custom","Jay")>> bites her lip, looks at her hand, at <<=ps(setup.getNpcName("npc_maid","first"))>> nudity save for ankle cuffs and the steel-caged Destroyer... and then silently slips out of her clothes for play to continue.<br>
<br>
The room feels like it's getting warmer as the four of you sit in a mix of bondage and partial nudity... and soon you're freed up to watch as a casting of "Inevitable Betrayal" causes the very thralls you had stolen from other players to "revolt" and knock off the last of your vitality points.<br>
<br>
<<printThought "Guess it makes sense I'm the first one out, since everyone else knows their decks way better..">><br>
<br>
You watch the three-way stand-off as your friends jockey for advantage, <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> repeated board-wipes keeping the goblin horde in check as <<=setup.getNpcName("npc_maid","first")>> sees fatty after fatty hit the bin. Down to her last couple of cards, <<=setup.getNpcName("npc_maid","first")>> channels the last of her magick into her first draw from the bonus deck, taking a moment to read the card before looking around the table, slowly grinning and casting "@@.npc_maid;Enemy, Mine: You may offer a collar to target opponent, if they accept, you are allied until the end of the game.@@"<br>
<br>
You hold your breath. You're pretty sure that <<=setup.getNpcName("npc_technician","first")>> is holding a narrow lead thanks to a goblin warren-based thrall engine that is serving up more bodies every turn... but <<=setup.getNpcName("npc_maid","first")>> locks eyes and, with courage born of competitiveness, asks <<=setup.getNpcName("generic_female1","custom","Jay")>> "@@.npc_maid;would you accept my collar?@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> swoons, her voice cracking as she replies "@@.generic_female1;of, c-c-course... I thought you'd never ask.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> produces a collar and <<=setup.getNpcName("npc_maid","first")>> buckles it <<=ps(setup.getNpcName("generic_female1","custom","Jay"))>> throat... as <<=setup.getNpcName("generic_female1","custom","Jay")>> moves to <<=ps(setup.getNpcName("npc_maid","first"))>> side of the table to kneel next to her "owner" as the two of them face down <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
[<<moveTo "event_boymode_date_9" "Is this game?" 300>>]
</div>/*#
#desc: jay collar
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addCollar = false>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom' 'neutral' ''>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<set $scene.keepCollar = setup.checkItemOwned("bondage_collar")>>
<<addItem "bondage_collar">>
<<wearItem "bondage_collar" true>>
<</if>>
<<addItem "leash_black">>
<<wearItem "leash_black" true>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<case 'sub'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_naked_collar" setup.charImage("npc_maid","npc_maid_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> mock pouts, and then smiles at you and motions you over to sit next to her "@@.npc_technician;for moral support...@@" she explains as she
<<switch $npc_technician.relationship.her_role>>
<<case 'dom' 'neutral' ''>>
<<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>
clips a leash to your collar.
<<else>>
quickly grants you a collar and leash of your own
<</if>>
<<case "sub">>
<<if $npc_technician.relationship.her_collared>>
clips a leash to her collar and hands it to you with a wink.
<<else>>
has you buckle a collar around her throat and hands you the leash.
<</if>>
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
"@@.npc_technician;there we go, now we're all in!@@" She grins across the table as she toys with her leash. "@@.npc_technician;Tell me, <<=setup.getNpcName("generic_female1","custom","Jay")>>, isn't it simply lovely to be owned?@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> bites her lip and stares at her cards, but there's no mistaking the look on her face as a response of "very yes." <br>
<br>
[<<moveTo "event_boymode_date_10" "Final battle!" 300>>]
</div>/*#
#desc: finish game
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual") "boymode_naked_collar" setup.charImage("npc_maid","npc_maid_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> puts up a good fight, but working together <<=setup.getNpcName("npc_maid","first")>> and <<=setup.getNpcName("generic_female1","custom","Jay")>> pull off the win and then jump up and down in excitement.<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> getting momentarily caught up in the excitement, she literally sweeps <<=setup.getNpcName("npc_maid","first")>> off her feet as she spins around, only to freeze in shock as she remembers they're both naked... only for <<=setup.getNpcName("npc_maid","first")>> to grin and pull her leash in for a passionate kiss.<br>
<br>
You wouldn't know that <<=setup.getNpcName("npc_technician","first")>> lost the game from the way she's grinning like a madwoman and you sit and watch as, with the ice shattered, <<=setup.getNpcName("generic_female1","custom","Jay")>> and <<=setup.getNpcName("npc_maid","first")>> confess their love for one another.<br>
<br>
"@@.generic_female1;Please, I know it was just for the game... but I really love wearing your collar, I never had the courage to ask at work but... will you... will you go out with me?@@"<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> almost blushes herself, somehow mustering a bit of her usual confidence as she replies. "@@.npc_maid;Date you? You so hot and tall and cute and skilled? Do you know how hard it was to resist just taking you for my own every time you asked to "train" with The Destroyer? How seductively intoxicating it was every time I saw you at work? I just... I didn't want to presume but... if you want to date I—@@"<br>
<br>
Further emboldened, <<=setup.getNpcName("generic_female1","custom","Jay")>> leaps in for a kiss, the two love-birds melting into one another until, reluctantly, they have to come up for air.<br>
<br>
"@@.npc_maid;Damn but I wish that key wasn't at home, in the middle of a block of ice...@@" <<=setup.getNpcName("npc_maid","first")>>.<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> grins "@@.generic_female1;well you're pretty hot... I bet we can melt it together...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins "@@.npc_technician;I guess I'll call that the end of a successful night. You two can go ahead and borrow the collar and leash for the night, I don't want to stand in the way of you heading home...@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> and <<=setup.getNpcName("npc_maid","first")>> can't seem to keep eyes or hands off one another as they quickly get dressed to go, the whole time <<=setup.getNpcName("npc_technician","first")>> watches on with a grin even wider than the gleeful goblins in her deck as she revels in her triumph.<br>
<br>
[<<moveTo "event_boymode_date_11" "It's getting late, and it is a work night." 1800>>]
</div>/*#
#desc: leave
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemWorn("leather_thigh_cuffs")>>
<<removeItem "leather_thigh_cuffs" true>>
<<deleteItem "leather_thigh_cuffs">>
<</if>>
<<if setup.checkItemWorn("leather_ankle_cuffs")>>
<<removeItem "leather_ankle_cuffs" true>>
<<deleteItem "leather_ankle_cuffs">>
<</if>>
<<if setup.checkItemWorn("leather_wrist_cuffs")>>
<<removeItem "leather_wrist_cuffs" true>>
<<deleteItem "leather_wrist_cuffs">>
<</if>>
<<if $scene.addCollar && !$scene.keepCollar>>
<<removeItem "bondage_collar" true>>
<<deleteItem "bondage_collar">>
<</if>>
<<if setup.checkItemWorn("leash_black")>>
<<removeItem "leash_black" true>>
<<deleteItem "leash_black">>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_technician', 'first'))>> apartment.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You spend some time cuddling with your
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
<<=setup.getNpcName('npc_technician', 'title')>>
<<case 'neutral' ''>>
girlfriend,
<<case "sub">>
slave,
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
but the evening's excitement has you both pretty tired and you decide to pack it in. "@@.npc_technician;Sorry you lost... but sometimes sacrifices must be made for the greater good.@@"<br>
<br>
You chuckle, assuring her that you understand, and that you had a great time anyway before you help her clean things up and then kiss her good-bye to head out.<br>
<br>
[<<moveTo "room_citymap" "Head off." 300>>]
</div>/*#
#desc: work at the maid cafe: boymode n: humiliation
#status: WRITTEN 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
You happen to pop into the cafe's changing room for a moment during your shift and see <<=setup.getNpcName("generic_female1","custom","Jay")>> getting some "assistance" from <<=setup.getNpcName("npc_maid","first")>>.<br>
<br>
"@@.npc_maid;So one of the regulars noted that you didn't seem as "excited" to serve them as your first time and, even though I tried to explain that you're properly caged now for both your own, and customer, safety... but they were quite insistent! So if you could wear this strap on under your skirt while you wait on them today?@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> bites her lip and stares nervously at the quite large, if not quite "Destroyer" tier strap-on dildo that <<=setup.getNpcName("npc_maid","first")>> produces. "@@.npc_maid;Yes, I know it's quite a bit larger than you are, but being a maidtress is all about going above and beyond in pursuit of customer service. You need to keep focus on that, and not how humiliating it is to pretend to have a big, throbbing hard-on when actually you're a locked up, leaking <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"<br>
<br>
[<<moveTo "event_maid_cafe_work_boymode_4_2" 'Get back to work before <<=setup.getNpcName("generic_female1","custom","Jay")>> notices you.' 300 "<<set $scene.tease=false>>">>]<br>
[<<moveTo "event_maid_cafe_work_boymode_4_2" 'Reinforce <<=ps(setup.getNpcName("npc_maid","first"))>> advice.' 300 "<<set $scene.tease=true>>">>]
</div>/*#
#desc: work at the maid cafe: boymode n: humiliation response
#status: WRITTEN 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.tease>>
<<applyExperience 'dominance' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" "boymode_maid" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
<<if $scene.tease>>
You take a step further into the room and announce yourself by agreeing with <<=setup.getNpcName("npc_maid","first")>> that <<=setup.getNpcName("generic_female1","custom","Jay")>> needs to prioritise focusing on their job and not get distracted, after all — "@@.pc;good <<if $fetish.sissy>>sissies<<else>>girls<</if>> serve.@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom","Jay")>> turns one of their classic shades of
<<if $fetish.cum>>
red and leaks down her thigh. <<=setup.getNpcName("npc_maid","first")>> catching the drops and licks her finger clean with a smile. "@@.npc_maid;That's my <<=setup.getNpcName("generic_female1","custom","Cherry")>>! Sweet, red, and juicy! Now get out there and serve up some nice hot... coffee for our customers!@@"
<<else>>
red. <<=setup.getNpcName("npc_maid","first")>> grins and winks at you as she finishes buckling the harness in place. "@@.npc_maid;That's my <<=setup.getNpcName("generic_female1","custom","Cherry")>>! Goddess, you are the cutest thing in the world when you blush! Now get out there and serve up some nice hot... coffee for our customers!@@"
<</if>>
<br><br>
Nervously vibrating, <<=setup.getNpcName("generic_female1","custom","Jay")>> curtsies obediently and then shuffles out of the room. <<=setup.getNpcName("npc_maid","first")>> watches her mentee go with a smile and then follows after.
<<else>>
You decide that <<=setup.getNpcName("npc_maid","first")>> has things "well in hand" and you slip out of the changing room before anyone notices you.
<</if>>
<br><br>
[<<moveTo "event_maid_cafe_work_default" "Back to your shift." 3000>>]
</div>/*#
#desc: manager orders you into a meeting with admin, refers to you as slave and sends you off for coffee
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<registerProgressionEvent>>
<<if $now.getUTCDay() == 5>>
<<set _nextDate = setup.setNextDate($now, 6, 9, 0)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<</if>>
<<addWorkEvent 'brazen_humil_event' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are working along per usual when <<=setup.getNpcName('npc_admin', 'first')>> arrives for a meeting with your <<=setup.getNpcName('npc_manager', 'title')>>. From <<his npc_admin>> hurry, and a check of her schedule, it seems <<he npc_admin>> is running a touch late, merely throwing you a smile and a wave before heading for the inner office where, you imagine, <<=setup.getNpcName('npc_manager', 'formal')>> is sternly waiting.<br>
<br>
<<printThought "Punctuality is a pillar of society, you need to get on the ball <<if $npc_admin.fem>><<=setup.getNpcName('npc_admin', 'first')>><<else>>big guy<</if>>...">><br>
<br>
You sit with an ear half-cocked, but the heavy door of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> serves to keep their meeting quite secret. With a shrug you return to work.<br>
<br>
[<<moveTo "event_work_admin_coffee_1" "Work." 1200 "<<set $scene.proper = true>>">>]
</div>/*#
#desc: manager orders you into a meeting with admin, refers to you as slave and sends you off for coffee
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're plugging along with your work when you hear <<=setup.getNpcName('npc_manager', 'formal')>> summon you into her office.<br>
<br>
Walking into the inner office, you note quite a number of papers scattered across <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desk, it looks like the two of them are deep into planning... something.<br>
<br>
"@@.npc_manager;Ah, lovely. Be a good slave and fetch us some coffee?@@" She turns towards <<=setup.getNpcName('npc_admin', 'first')>> "@@.npc_manager;Let me guess, strong and black?@@"<br>
<br>
<<He npc_admin>> takes a moment to process things before nodding, a sudden realisation coming over <<his npc_admin>> face and <<he npc_admin>> grins at you. "@@.npc_admin;Heh, you told her about my old nickname for you, heh? Well, hustle it along work-slave!@@"<br>
<br>
You blush, especially as you catch a glimpse of <<=setup.getNpcName('npc_manager', 'formal')>> smiling wider than the cheshire cat from just out of <<=ps(setup.getNpcName('npc_admin', 'first'))>> line of sight.<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Even faced with <<=setup.getNpcName('npc_admin', 'first')>> being present you are too well trained to consider departing without properly acknowledging your <<=setup.getNpcName('npc_manager', 'title')>>.@@]<br>
[<<moveTo "event_work_admin_coffee_2" 'Curtsy and properly verbally acknowledge your <<=ps(setup.getNpcName("npc_manager", "title"))>> command.' 180 "<<set $scene.proper = true>>">>]
<<elseif setup.getTotalValue("submission") < 5>>
[<<moveTo "event_work_admin_coffee_2" "Silently depart to fulfill their order." 180 "<<set $scene.proper = false>>">>]<br>
[@@.link_locked;You are already embarrassed, there's no way you could give away the game and refer to your <<=setup.getNpcName('npc_manager', 'title')>> by her proper title in front of <<=setup.getNpcName('npc_admin', 'first')>>.@@]
<<else>>
[<<moveTo "event_work_admin_coffee_2" "Silently depart to fulfill their orders." 180 "<<set $scene.proper = false>>">>]<br>
[<<moveTo "event_work_admin_coffee_2" 'Curtsy and properly verbally acknowledge your <<=ps(setup.getNpcName("npc_manager", "title"))>> command.' 180 "<<set $scene.proper = true>>">>]
<</if>>
</div>/*#
#desc: acknowledge manager's order to get coffee for you and admin
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.proper>>
<<if $npc_admin.flags.knowManagerTruth < 2>>
<<set $npc_admin.flags.knowManagerTruth = 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.proper>>
Smiling wide, you drop into a deep curtsy.<br>
<br>
"@@.pc;Of course <<sir npc_admin>>, <<=setup.getNpcName('npc_manager', 'title')>>@@" you reply, <<=ps(setup.getNpcName('npc_admin', 'first'))>> jaw dropping in response, but you've spun on your heels and minced your way out the door before <<he npc_admin>> can collect <<himself npc_admin>> enough to make a response.
<<else>>
Somehow conjuring a smile you give a quick curtsy and hurry out of the office before <<=setup.getNpcName('npc_manager', 'formal')>> can further embarrass you.
<</if>>
<br><br>
[<<moveTo "event_work_admin_coffee_3" "Head to Cafe 52." 180>>]
</div>/*#
#desc: try to pick up coffee for admin+manager, outfit ruined
#status: FINISHED 0.7.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<addItemSet 'maid_latex_black'>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<<set $scene.latex = setup.checkItemTypeTag('legwear', ['latex']) || setup.checkItemTypeTag('dress', ['latex']) || setup.checkItemTypeTag('strapless_dress', ['latex'])>>
<<if !$scene.latex>>
<<set _legwear = setup.getItemFromType("legwear")>>
<<if !_legwear>>
<<set _legwear = setup.getItemFromType("dress")>>
<</if>>
<<if !_legwear>>
<<set _legwear = setup.getItemFromType("strapless_dress")>>
<</if>>
<<changeItemStatus _legwear 'dirty' '["add",50]'>>
<</if>>
<<if $now.getUTCDay() == 5>>
<<set _nextDate = setup.setNextDate($now, 3, 12, 0)>>
<<elseif $now.getUTCDay() == 4>>
<<set _nextDate = setup.setNextDate($now, 4, 12, 0)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 1, 12, 0)>>
<</if>>
<<addWorkEvent 'first_maid_coffee' _nextDate>>
<</if>>
<<if setup.isItemEquipped('maid_uniform_latex_black') && setup.checkPlayerDressed()>>
<<set $player.cutscene.lockinventory = true>>
<<set $scene.forced = false>>
<<moveTo "event_work_admin_coffee_4">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Cafe 52 is relatively busy when you arrive, you narrowly evade crashing into another customer on your way into the room.<br>
<br>
<<if $player.flags.canteen_spill > 0>>
<<printThought "Hah, not going to have that happen again!">>
<<else>>
<<printThought "Whew, that was a close one!">>
<</if>>
<br><br>
You wait for <<=setup.getNpcName('npc_barista', 'nickname')>> to prepare the two drinks and thank her before turning to go. Carefully balancing the too-full cups of coffee, you're too focused on your hands to notice the patch of freshly-mopped floor until one of your heels starts to slip.<br>
<br>
Your eyes swell wide as time slows down, you try to get your feet back under you, but you seem unable to get traction. Trying desperately not to spill the two drinks, your legs finally fly out from under you and you land on your bum<<if setup.checkItemTypeWorn("plug")>> forcing the <<=setup.getItemTypeName('plug')>> even deeper into your rear<</if>>.<br>
<br>
Sitting on the floor, you're astonished to realise that you miraculously didn't spill coffee on yourself! It is only as the seconds tick by and the adrenaline dump starts that you realise that you landed right in the middle of the puddle, your legs and rear completely soaked.<br>
<br>
"@@.npc_barista;Like, ohmygawd! Are you okay?@@" <<=setup.getNpcName('npc_barista', 'nickname')>> and a couple patrons look down at you with concern. Helped to your feet, you try to reassure them that everything is fine only for her to gawk at your dripping lower half.
<<if $scene.latex>>
"@@.npc_barista;At least you were wearing latex!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> notes with a chipper smile. "@@.npc_barista;... but we still ought to get you out of those clothes. Latex may be like... sexy and protective, but you're still, like, all wet, and we wouldn't want the acid in the coffee to, like, damage things. Come on, I'll help you change!@@"
<<else>>
"@@.npc_barista;Oh no, you're, like, soaked through! And not in the fun way, either! <<=setup.getNpcName('npc_manager', 'other')>> is going to be so upset if you show up looking so bedraggled, come on, I'll help you change!@@"
<</if>>
<br><br>
Before you can react, you find yourself being dragged across the cafe and into a small private room in the back. Looking around, you notice one entire wall is occupied with what look to be a dozen or more fetishistic latex maid outfits identical to the one worn by your enthusiastically helpful friend.<br>
<br>
Plucking one off the rack, <<=setup.getNpcName('npc_barista', 'nickname')>> offers it to you with an excited grin. "@@.npc_barista;Here you go! Hurry out of those wet clothes!@@"<br>
<br>
You realise that she has positioned herself between you and the door, doesn't look like there's an escape without changing...<br>
<br>
<<printThought "Hmm, guess she's waiting for me to change into this...">><br>
<br>
<<if $options.ezchange>>
<<set _jacket = setup.getItemFromType("jacket")>>
[<<moveTo "event_work_admin_coffee_4" "Get changed as instructed." 60 "<<useClothSetPop 'tmp'>><<wearItem 'maid_uniform_latex_black' true>><<if _jacket>><<removeItem _jacket true>><</if>>">>]<br>
<</if>>
[<<moveTo "event_work_admin_coffee_3_1" "You aren't a kinky maid, refuse!" 60>>] <<hint $options "Reminder: you can change clothing via the inventory.">>
</div>/*#
#desc: forced to change into fetish maid outfit
#status: FINISHED 0.7.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.forced = true>>
<<set $scene.isStrapless = setup.checkItemTypeWorn("strapless_dress")>>
<</if>>
<<if setup.isItemEquipped('maid_uniform_latex_black') && setup.isItemEquipped('maid_headdress_latex_black') && setup.checkPlayerDressed() && !setup.checkItemTypeWorn("jacket")>>
<<initRoom>>
<<set $player.cutscene.lockinventory = true>>
<<moveTo "event_work_admin_coffee_4">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if setup.isItemEquipped('maid_uniform_latex_black')>>
<<=setup.getNpcName('npc_barista', 'nickname')>> rolls her eyes at you.<br>
<br>
<<if setup.checkItemTypeWorn("jacket")>>
And take off that jacket! It's, like, totally hiding your look!
<<else>>
<<printThought "Even if I'm stuck wearing this latex fetish costume that's no excuse not to wear a properly complete outfit — dress, stocking, shoes, bra and panties.">>
<</if>>
<<else>>
You start to refuse only for a weird change to come over <<=setup.getNpcName('npc_barista', 'nickname')>>. Her eyes, normally slightly out of focus suddenly sharpen, her voice temporarily losing its air-head affect.<br>
<br>
"@@.npc_barista;I said to get out of those clothes! It'll be my head if I am responsible for ruining her prize so I am not letting you out dressed like that, now get changed you clumsy slut!@@"<br>
<br>
You blink in surprise, but the moment passes, her expression softening back to her familiar lusty gaze.<br>
<br>
"@@.npc_barista;Come on, I promise the tight latex feels, like, sooooo good!@@"<br>
<br>
<<printThought "Looks like I don't really have a choice... and she is right, <<=setup.getNpcName('npc_manager', 'formal')>> would certainly be unhappy if I returned soaked through. I guess I have no choice but to change into the outfit she just gave me.">>
<</if>>
<br><br>
<<if $options.ezchange>>
<<set _jacket = setup.getItemFromType("jacket")>>
[<<moveTo "event_work_admin_coffee_4" "Get dressed as instructed." 60 "<<useClothSetPop 'tmp'>><<wearItemSet 'maid_latex_black'>><<if _jacket>><<removeItem _jacket true>><</if>>">>]
<</if>>
<<hint $options "Reminder: you can change clothing via the inventory.">><br>
[<<moveTo "event_strict_maid_1" "Run away!" 120>>]
</div>/*#
#desc: forced to change into fetish maid outfit
#status: FINISHED 0.7.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.maid>>
<<set $player.sec_style.clothing.maid = "strict">>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_in'] 'latex_outfit' _nextDate>>
<<set $clothSets.push({
"name":"Maid Outfit",
"data": ['maid_uniform_latex_black', 'maid_headdress_latex_black'],
"important":true,
"type" : "maid"
})>>
<</if>>
<<setThreshold 'feminization' 'maid_feminization' 'forced_fetish'>>
<<useClothSetPop 'tmp'>>
<<wearItemSet 'maid_latex_black'>>
<<set _jacket = setup.getItemFromType("jacket")>>
<<if _jacket>>
<<removeItem _jacket true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_barista") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You turn to run out of Cafe 52... only to have another accident as you crash into, or, more accurately, bounce off of, <<=setup.getNpcName("npc_retention","formal")>>.<br>
<br>
"@@.npc_retention;Going somewhere?@@" <<He npc_retention>> asks sternly, <<his npc_retention>> eyes scanning your stained clothes as <<=setup.getNpcName("npc_barista","nickname")>> rushes over.<br>
<br>
"@@.npc_barista;I was, like, trying to get her into some new clothes, and she just ran away!@@" <<=setup.getNpcName("npc_barista","nickname")>> explains.<br>
<br>
"@@.npc_retention;Well we cannot have that.@@" In a blur <<he npc_retention>> draws <<his npc_retention>> stun gun, pressing it to your side and sending you to the floor, twitching painfully.<br>
<br>
"@@.npc_retention;There, she should be a bit less... resistant, now.@@" <<He npc_retention>> states as you lay frozen and unable to move.<br>
<br>
"@@.npc_barista;Y-yeah, thanks.@@" <<=setup.getNpcName("npc_barista","nickname")>> replies nervously, momentarily put off by <<=ps(setup.getNpcName("npc_retention","formal"))>> casual violence before moving on to start stripping your dirty clothes and pulling the latex maid's outfit onto you.<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> watches the entire time, <<=setup.getNpcName("npc_barista","nickname")>> finishing getting you dressed just as you start to recover from the temporary paralysis of <<his npc_retention>> weapon.<br>
<br>
"@@.npc_barista;See, doesn't that, like, feel better than those soggy old clothes? You can head back to <<=setup.getNpcName("npc_manager","other")>>, now — thanks <<=setup.getNpcName("npc_retention","formal")>> for the help!@@"<br>
<br>
You retreat, catching sight of <<=setup.getNpcName("npc_barista","nickname")>> dropping to her knees to give the <<man npc_retention>> a different sort of thanks as you finally escape the Cafe... wearing the humiliating maid's attire.<br>
<br>
[<<moveTo "event_work_admin_coffee_5" "Slink back to the office..." 300>>]
</div>/*#
#desc: dirty outfit replaced with fetish maid, sent back to manager/admin
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.maid == "">>
<<if $scene.forced>>
<<set $player.sec_style.clothing.maid = "forced">>
<<setThreshold 'feminization' 'maid_feminization' 'forced_fetish'>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_FRIEND>>
<<else>>
<<set $player.sec_style.clothing.maid = "obedient">>
<<setThreshold 'feminization' 'maid_feminization' 'obedient_fetish'>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_in'] 'latex_outfit' _nextDate>>
<<set $clothSets.push({
"name":"Maid Outfit",
"data": ['maid_uniform_latex_black', 'maid_headdress_latex_black'],
"important":true,
"type" : "maid"
})>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.forced>>
You start changing clothes under <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> watchful eye, only for her to get frustrated at your struggles with the tight latex and help pull and prod things into place.
<<else>>
You change as <<=setup.getNpcName('npc_barista', 'nickname')>> looks on, all smiles. You have a bit of trouble with the ultra-tight latex, but she's there to help you pull everything into place.
<</if>>
<<=setup.getNpcName('npc_barista', 'nickname')>> helps fluff your skirts, preening and smiling as you adjust to your fetishistic new attire.<br>
<br>
"@@.npc_barista;You look like... SOOOO hawt! We're like twinsies!@@" She gushes, leaning in for a hug.<br>
<br>
Leading you back into the main cafe, you stand and try to ignore the customers staring at you as <<=setup.getNpcName('npc_barista', 'nickname')>> quickly re-makes your order.<br>
<br>
"@@.npc_barista;Here you go! Hot and fresh, just like you!@@"<br>
<br>
You blush, staring at the ground for multiple reasons as you carefully make your way out of the cafe.<br>
<br>
"@@.npc_barista;Go ahead and keep the clothes! I'll get your old stuff dried out and sent back by the end of the day.@@"<br>
<br>
You mumble a thanks as a <<man>> holds the door for you. You can feel <<his>> eyes on your rear, your short skirt barely enough to keep you decent.<br>
<br>
[<<moveTo "event_work_admin_coffee_5" "Make your delivery." 300>>]
</div>/*#
#desc: deliver coffee to manager and admin wearing fetish maid outfit
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Careful not to have another accident, you hurry back to the office, mindful that you have taken far too long.<br>
<br>
Your mental assessment of your tardiness is confirmed as soon as you walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
"@@.npc_manager;Finally!@@" she starts to say only to turn to look at you and pause, her eyes running all over your body inspecting your new outfit — a tour that you note <<=ps(setup.getNpcName('npc_admin', 'first'))>> gaze is making as well, though with a bit more in the way of embarrassed subtlety. "@@.npc_manager;Hmm... I sense a story here, but we are far too busy to get into it at the moment. Leave the coffee and return to your desk. I will talk to you later.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> is too dumbstruck by your new look to do anything but mumble a thanks as you hand <<him npc_admin>> <<his npc_admin>> drink. The delivery finally complete, you give a parting curtsy and return to your desk.<br>
<br>
[<<moveTo "event_work_admin_coffee_post" "Back to work." 300>>]
</div>/*#
#desc: manager meets you after admin leaves to discuss your new attire/working at coffee shop
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<washClothes>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You work for a while before the meeting concludes and <<=setup.getNpcName('npc_admin', 'first')>> passes by your desk making an obvious effort not to stare at your slutty self, <<=setup.getNpcName('npc_manager', 'formal')>> waiting until <<he npc_admin>> has departed the office completely before taking a seat on the edge of your desk.<br>
<br>
"@@.npc_manager;So, what happened?@@"<br>
<br>
You run down your mild adventure as <<=setup.getNpcName('npc_manager', 'formal')>> listens intently.<br>
<br>
"@@.npc_manager;I see, well, I am glad you are alright, but this definitely solidifies something that I have been considering for some time now. You see, the delay resultant from you having to go all the way across the floor to fetch my coffee is, well, even without such aggravating events as today it is frustratingly long. To address this issue, I have ordered a top of the line brewing apparatus to be kept out here in your area, this will allow you to prepare my drinks much more quickly, while also being able to serve any guests that might be waiting for a meeting. Of course for this to work at all, you will need to spend some time educating yourself in proper preparation techniques and, well, your new attire makes that all the more simple.@@"<br>
<br>
"@@.npc_manager;Once those workers take care of getting things installed, you will be spending some of your time working in the Cafe 52 coffee shop. I believe you are already on quite good terms with <<=setup.getNpcName('npc_barista', 'nickname')>> and both she and her owner are quite looking forward to the assistance.@@"<br>
<br>
<<printThought "First a secretary, now a barista? Well, I guess it could be fun to get away from the computer for a bit...">><br>
<br>
Rising and returning to her office <<=setup.getNpcName('npc_manager', 'formal')>> pauses in the doorway. "@@.npc_manager;Oh, one final thing — while I do appreciate your current attire, and the conditions that brought you into it, I do not believe it is appropriate work attire unless you are to be working in Cafe 52 that day. It might confuse people into thinking you are some... bimbo barista instead of what you are — MY <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
You blush as she winks at you and closes the door before you can respond.<br>
<br>
Returning to your work, a few minutes pass before your freshly cleaned outfit is delivered and you put it with your things to take home with you.<br>
<br>
<<if $player.flags.canteen_spill > 0 && !$npc_manager.flags.severeCleanings == 0>>
<<printThought "Wait, if there is a laundry facility on site, why couldn't I have just used that after the lunchroom spill?">><br>
<br>
<</if>>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: peek before special maid outfit reward
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 5 'little' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 10 'slightly' $SEEN_FRIEND>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<<addItem 'blindfold_pink'>>
<<wearItem 'blindfold_pink' true>>
<<addItem 'handcuffs'>>
<<wearItem 'handcuffs' true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The suspense is too much for you and, after what feels like an eternity, but is likely little more than a minute, you try to sneak a peek over your shoulder. Unfortunately for you it seems that your <<=setup.getNpcName('npc_manager', 'title')>> has more than anticipated your weakness as she stands behind you having not even moved. One hand on her hip she looks more amused than angry as she slowly shakes her head and walks towards you.<br>
<br>
"@@.npc_manager;Such a simple order, and yet you just cannot restrain yourself. Fortunately I am more than happy to take care of that...@@"<br>
<br>
With a sharp grab she takes hold of your hair, pulling your head back and forcing you to look up at her. She seems to relish your wide-eyed fear for several moments before landing a hard spank on your bottom with her other hand. You gasp in a mix of surprise and pain as she follows up with half a dozen more stinging blows that leave you shaking.<br>
<br>
"@@.npc_manager;There, let that serve as a lesson, and now to preserve the surprise.@@"<br>
<br>
With a flourish she produces a soft satin blindfold; pink, of course and places it over your head. Plunged into soft darkness the rest of your senses ramp up as you try to listen to her moving around you.<br>
<br>
"@@.npc_manager;And just in case that was insufficient to curb your little disobedient streak...@@" Your hands are pulled behind your back and a set of handcuffs fastened down around your wrists.<br>
<br>
"@@.npc_manager;Now this time be a good girl while I prepare your surprise.@@"<br>
<br>
[<<moveTo "event_manager_maid_present_2" "Wait." 600>>]
</div>/*#
#desc: wait obediently for special maid outfit reward
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Though your heart races in anticipation you stand obediently silent and still, your ears sharp as you try to guess what might be coming as you hear her pulling something out of the wardrobe and the rustle of fabric from behind you.<br>
<br>
"@@.npc_manager;Good girl. Just another minute or two to get everything perfect for you...@@"<br>
<br>
[<<moveTo "event_manager_maid_present_2" "Keep waiting." 600>>]
</div>/*#
#desc: given special maid outfit reward
#status: FINISHED 0.7.2.0
#ignore_spell: pvc
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'maid_uniform_pvc_pink'>>
<<if $scene.obey>>
<<else>>
<<removeItem 'blindfold_pink' true>>
<<deleteItem 'blindfold_pink'>>
<<removeItem 'handcuffs' true>>
<<deleteItem 'handcuffs'>>
<</if>>
<</if>>
<<if setup.isItemEquipped('maid_uniform_pvc_pink') && setup.checkItemTypeWorn("shoes")>>
<<set $player.cutscene.lockinventory = true>>
<<moveTo "event_manager_maid_present_3">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You hear the sound of her coming up behind you, her hands gently covering your eyes as she guides you to turn around.<br>
<br>
"@@.npc_manager;Now, time for your surprise.@@"<br>
<br>
You hold your breath in anticipation as she removes her hands. you blink twice and then are transfixed as you look upon your gift.
<<else>>
After a few minutes of her moving around and, you are pretty sure, retrieving something from the wardrobe, you hear her walk back over to you. You tense as she circles around behind you, her breath sounding in your ear as she takes hold of the blindfold.<br>
<br>
"@@.npc_manager;Now, time for your surprise.@@"<br>
<br>
You hold your breath in anticipation as the blindfold is removed. You blink twice and then are transfixed as you look upon your gift.
<</if>>
<br><br>
Standing before you, mounted on a stand so that it seems to almost float in air, is the pinkest maid outfit you have ever seen. In contrast to some of the more... evocative outfits you have come to wear it is fully concealing, with a high neckline, long sleeves and a floor-length skirt and yet it is amongst the most feminine garments you have ever laid eyes on; white frills over pink folds, all wrapped up (literally) with an oversized bow affixed to the back. The material reminds you somewhat of PVC the way it shines, and yet it looks more flowing, more elegant, a totally unique, jaw-dropping garment in every way.<br>
<br>
You are at a loss for words as your gaze traces up and down the outfit, her hands sliding down your side to rest gently around your <<if setup.checkItemTypeWorn("corset")>>corset-narrowed <</if>>waist. She whispers softly in your ear, sending tingles down your spine. "@@.npc_manager;It is an authentic Zoe original — one of a kind made and sized special for my favourite secretary.
<<if $player.sec_style.clothing.maid == "voluntary">>
With you showing such unprompted enthusiasm, and of late
<<else>>
With you
<</if>>
devoting so much time to honing every facet of your maid service skills well... I thought you deserved a special outfit.@@"<br>
<br>
You gasp, you cannot even fathom what such a commission must have cost and you find yourself humbled by the display of affection even as you are filled with an almost overwhelming urge to try it on...<br>
<br>
<<if !$scene.obey>>
There is a click and the cuffs around your wrists fall away.<br>
<br>
<</if>>
"@@.npc_manager;Go on then, my pet. I know you want to try it on and I have so been looking forward to seeing you in it...@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_maid_present_3" "Put on the new dress." 60 "<<wearItem 'maid_uniform_pvc_pink' true>><<if !setup.checkItemTypeTag('panties', ['female'])>><<wearItemSlotTag 'shoes' 'female'>><</if>>">>]
<</if>>
</div>/*#
#desc: manager admires your new maid outfit
#status: FINISHED 0.7.2.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'maid_ultimate_headdress_pink'>>
<<wearItem 'maid_ultimate_headdress_pink' true>>
<<applyExperience 'feminization' 17 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As you straighten the drape of your skirt and finish donning the maid outfit, you can't help, but let out a feminine gasp. For as beautiful as the outfit looked on the mannequin, the feel of it against your skin, from the soft layers of petticoats beneath the wide skirt to the wonderfully smooth texture of the pvc-like material, every item of which is so perfectly sized so as to fit better than any outfit you have ever worn. You shiver, it is almost like you are in a dream.<br>
<br>
After giving you time to admire your reflection, <<=setup.getNpcName('npc_manager', 'formal')>> finally steps into view, her own delighted smile speaking to how lovely you are.<br>
<br>
"@@.npc_manager;Once again I find that an already lovely outfit improves tenfold when it is worn by you...@@" Reaching out, she brushes one of your shoulder frills, her smile making you blush.<br>
<br>
"@@.npc_manager;There is, however, one final detail remaining...@@" You are suddenly nervous as you watch her produce the frilliest, laciest pink headpiece you've ever seen. With a wide smile on her face, she carefully places it over your head, ribbons streaming down past your ears as she steps aside leaving you to gasp anew at this amplification of your already unbelievable feminine beauty.<br>
<br>
"@@.pc;Th-thank you, <<=setup.getNpcName('npc_manager', 'title')>>,@@" you whisper, for there really is nothing else to say.<br>
<br>
"@@.npc_manager;It has been my pleasure. Unfortunately, other duties yet call, so I will bid you good night and look forward to aiding in ever wonderful development on the morrow.@@"<br>
<br>
All but transfixed by your reflection, you nod softly, giving a twirl to admire yourself from every angle one last time before dropping into a curtsy and departing.<br>
<br>
<<if $currentTasks.hasOwnProperty("event_doctor_first_appointment") && !$currentTasks.event_doctor_first_appointment.finished && setup.daysToDate($now,setup.getTaskDueDate('event_doctor_first_appointment')) == 0 || $currentTasks.hasOwnProperty("event_doctor_reup") && !$currentTasks.event_doctor_reup.finished && setup.daysToDate($now,setup.getTaskDueDate('event_doctor_reup')) == 0>>
<<printThought "I still have an appointment with <<=setup.getNpcName('npc_work_doctor', 'formal')>> today...">><br>
<br>
<<include "afterWorkVisiting">>
<<else>>
The elevator down proves its own challenge as the mirrored walls present you with dizzying reflections of your pink, feminine beauty before the doors finally part for you to step forth, the security guard across the lobby staring at you in awe.<br>
<br>
[<<moveTo "company_lobby" "Leave." 600>>]
<</if>>
</div>/*#
#desc: manager gifts you pink slutty maid outfit
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'maid_slutty_pink'>>
<<set $npc_manager.flags.lastOfficeVisit = $now>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Removing the lid you find a maid outfit and matching gloves — an ensemble as skimpy and slutty as they are devastatingly pink.<br>
<br>
"@@.npc_manager;Enjoy!@@" She says with a smile as you take them out of the box and hold them up to your body. "@@.npc_manager;My, my, even sluttier than I expected... quite like their new owner, hmm?@@"<br>
<br>
You blush as she smiles and walks back to her desk, looks like she has work to get back to and no time for the usual fashion show that seems to follow her "gifts" of attire.<br>
<br>
<<if $currentTasks.hasOwnProperty('task_stage_3_party') && $now.getUTCDate() == setup.getTaskDueDate('task_stage_3_party').getUTCDate()>>
"@@.npc_manager;And do not forget the party tonight! The limo will be coming round as usual to pick you up... I do not think your new outfit would be quite appropriate, however — you would only get confused for one of the members of the waitstaff!@@"<br>
<br>
<</if>>
You package up your new clothes and thank her before leaving for the day.<br>
<br>
[<<moveTo "room_office_after_work" "Leave." 600>>]
</div>/*#
#desc: Boil-Less initial delivery
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
Arriving home, you find a large pink package sitting next to your door. Picking it up, you find it's pretty heavy <<if setup.getTotalValue("strength") > 10>>but no problem for one of your physicality<<elseif setup.getTotalValue("strength") < 5>>and you struggle to carry it into the apartment, maybe you should consider hitting the gym<<else>>but you're able to handle it<</if>>.<br>
<br>
The label confirms what you expected; this is your initial shipment of Boil-Less Pink. You head for the kitchen and crack it open.<br>
<br>
[<<moveTo "event_boiless_open" "Check out what you have." 60>>]
</div>/*#
#desc: open container containing Boil-Less
#status: FINISHED 0.7.2.0
#ignore_spell: qr
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $randomEvents['work_coffee_shop'].pushUnique({ done: false, id: "boiless"})>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
You enter the kitchen and drop the box of Boil-Less Pink on the counter. Cracking it open, you find a blender bottle resting on top of neatly stacked individually wrapped pink packages. Pulling one out, you read the simple instructions printed on the packet: 1 packet per meal, three meals per day, just put in the bottle, mix with water and drink at your leisure. Guaranteed to serve all your basic nutritional needs!<br>
<br>
You transfer the contents of the box to an empty cupboard,
<<if $player.sec_style.body.boiless == "strict">>
each packet adorned with a QR code and information to order more.
<<else>>
you count just enough satchels to cover your food needs for the next month. On the bottom of the box is a reminder of your commitment to do the follow up appointment at the end of the month, as well as a QR code you can use to order more.<br>
<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("smart") < 5>>
You, like, think it's cheaper? You can't quite remember if <<=setup.getMealplanInfo("boiless").daily_price>> was bigger than <<=setup.getMealplanInfo($player.flags.mealplan.base).daily_price>>, if only you had a pair of cocks that size in front of you the comparison would be, like, so much more easy!
<<else>>
You do some quick mental math and conclude that you'll still save roughly <<=30*(setup.getMealplanInfo($player.flags.mealplan.base).daily_price-setup.getMealplanInfo("boiless").daily_price)>> credits a month switching off your current mealplan after the trial period is over and you have to start paying for it yourself.
<</if>>
<br><br>
Your tummy groans a little <<if setup.checkItemTypeWorn("corset")>>inside its corset-walled prison <</if>>and you consider if you want to switch from your current mealplan to the new Boil-Less Pink option.<br>
<br>
[<<moveTo "room_kitchen_set_food" "Set mealplan." 20>>]<br>
<br>
[<<moveTo "room_bathroom" "Bathroom." 20>>]
[<<moveTo "room_bedroom" "Bedroom." 20>>]
[<<moveTo "room_foyer" "Foyer." 20>>]
[<<moveTo "room_livingroom" "Living Room." 20>>]
</div>/*#
#desc: open first cum delivery
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $taskEvents.length > 0>>
<<for _i, _e range $taskEvents>>
<<addEvent _e.id>>
<</for>>
<<set $taskEvents = []>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
Arriving home, you find the expected shipment <<=setup.getNpcName('npc_psychiatrist', 'formal')>> promised sitting next to the door. Picking it up, you head inside and to the kitchen to open it up.<br>
<br>
[<<moveTo "event_cum_supplement_open" "See what you got." 60>>]
</div>/*#
#desc: open package of cum sent by psychiatrist
#status: FINISHED 0.7.2.0
#ignore_spell: sg
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.milking.cream_storage += 14*3*setup.mLtoCum(10)>>
<<set $player.flags.mealplan.cum_unlocked = true>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_5'
5
'event_psychiatrist_session_boiless_cum_1'
false
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
Opening the package, which is oddly large, you discover that it isn't a flavour powder as you were expecting, but an insulated container filled with small vials of a creamy liquid. Shrugging at the odd packaging, you pull one out and mix up a new batch of Boil-Less Pink as you shove the rest in your refrigerator for safe keeping.<br>
<br>
You take a sip and
<<if setup.getTotalValue("cum") > 15>>
immediately recognise the delicious cum flavour!
<<elseif setup.getTotalValue("cum") >= 10>>
swiftly recognise the taste of cum.
<<elseif setup.getTotalValue("cum") > 5>>
detect the new flavour, it takes you a few moments to recognise the taste of... cum?
<<else>>
taste something bitter and salty that you can't quite place.
<</if>>
Pulling out the box, you go through the packaging eventually finding the shipping label — "From: SG <<if $fetish.futanari && $options.fem>>Futa <<elseif $options.fem>>Women Only <</if>>Fertility Clinic and Sperm Bank." <br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
<<printThought "Is this a mistake? If so... it's a delicious mistake!" 40>>
<<else>>
<<printThought "Wait, what? This can't be real...">>
<</if>>
<<else>>
<<printThought "Wait, what? This has to be a mistake!">>
<</if>>
<br><br>
You consider whether you should call <<=setup.getNpcName('npc_psychiatrist', 'formal')>> immediately to inform her of the obvious error or not bother her and just wait for your next session.<br>
<br>
[<<moveTo "event_call_psychiatrist_cum" "Call your psychiatrist." 60>>]<br>
[<<moveTo "event_cum_supplement_ignore" "Wait and discuss it face to face at your next appointment." 60>>]
</div>/*#
#desc: ignore that psychiatirst mailed you cum
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
You consider calling <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to complain about what just happened, but decide against it. After all, it was certainly just a mistake of the mail, no reason to bother her when you'll be seeing her for your next therapy session soon enough.<br>
<br>
So decided you are about to leave the kitchen when you realise that you reflexively finished drinking your meal while you were lost in thought.<br>
<br>
Slightly embarrassed, you rinse out the bottle and stow it before hurrying out of the kitchen.<br>
<br>
[<<moveTo "room_livingroom" "Leave the kitchen." 180>>]
</div>/*#
#desc: call psychiatrist about the package of cum she mailed you
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You dial up <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and she almost immediately picks up.<br>
<br>
"@@.npc_psychiatrist;Hello <<=$player.call>> <<=$player.first_name>> is there something the matter? Did the package not arrive as I promised?@@"<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
[<<moveTo "event_call_psychiatrist_cum_happy" "Thank her for the tasty additive.">>]<br>
<</if>>
[<<moveTo "event_call_psychiatrist_cum_confused" "Ask about the confusing contents of the package.">>]<br>
[<<moveTo "event_call_psychiatrist_cum_angry" "Demand to know what the hell she was thinking mailing you cum!">>]
</div>/*#
#desc: angry phone response to psychiatrist mailing you cum
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.boiless.confront_psych_phone = "angry">>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You start to explode on <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the perverted contents of the package she sent you only for her to deftly deflect your anger.<br>
<br>
"@@.npc_psychiatrist;Cum? Oh, my, there must have been a mix-up, I was trying to send you some of the flavour extract used for those chocolates you so like! I do not know how this could have happened, these shipments should have been kept very separate. Do accept my sincerest apologies.@@"<br>
<br>
<<printThought "Wait, why would she even be ordering cum in the first place?">><br>
<br>
"@@.npc_psychiatrist;You can go ahead and throw away the <<if $options.fem>>girl <</if>>cum, or keep it for your own use, it is up to you. I will try to send you the proper supplements, but I think I need to figure out this mail issue first, so I am sorry, but it might take some time.@@"<br>
<br>
She hangs up.<br>
<br>
<<if setup.getTotalValue("cum") < 6>>
As for the open vial you pour it down the sink, turning on the tap to wash away every last trace of the disgusting goo.
<<else>>
Looking down, you realise that you have idly finished the whole bottle of Boil-Less Pink while you were talking. You shake your head and decide to focus on something else as you put away your phone.
<</if>>
<br><br>
[<<moveTo "room_kitchen" "Do something else." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: confused phone response to psychiatrist mailing you cum
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.boiless.confront_psych_phone = "confused">>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> your confusion about the perverted delivery you just received.<br>
<br>
"@@.npc_psychiatrist;Oh! I am so sorry, there must have been a mix-up, I was trying to send you some of the flavour extract used for those chocolates you so like! I do not know how this could have occurred. These shipments should have been kept very separate. Do accept my sincerest apologies.@@"<br>
<br>
<<printThought "I guess a mail mix-up makes sense, but... why would she be ordering cum in the first place?">><br>
<br>
"@@.npc_psychiatrist;You can go ahead and throw away the <<if $options.fem>>girl <</if>>cum, or keep it for your own use, it is up to you. I will try to send you the proper supplements, but I think I need to figure out this mail issue first, so I am sorry, but it might take some time.@@"<br>
<br>
She hangs up.<br>
<br>
Still a bit confused you decide against risking throwing a bunch of medical-grade semen into the public apartment trash and just leave it in your fridge.
<<if setup.getTotalValue("cum") < 6>>
As for the open vial you pour it down the sink, turning on the tap to wash away every last trace of the disgusting goo.
<<else>>
Looking down, you realise that you have idly finished the whole bottle of Boil-Less Pink while you were talking. You shake your head and decide to focus on something else as you put away your phone.
<</if>>
<br><br>
[<<moveTo "room_kitchen" "Do something else." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: happy/thankful phone response to psychiatrist mailing you cum
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.boiless.confront_psych_phone = "happy">>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Immediately you begin gushing to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> with excitement about the cum she sent you.<br>
<br>
"@@.npc_psychiatrist;I just knew you'd love it. Try not to guzzle it too fast you slut, be a cumoisseur rather than a cumaholic.@@"<br>
<br>
<<printThought "I'm so glad she's my doctor, she really gets me and knows just how to help improve my life!">><br>
<br>
"@@.npc_psychiatrist;Unfortunately this will have to be a one-time thing. I do not have infinite supplies of <<if $options.fem>>girl <</if>>cum so you will have to seek out additional sources... though I imagine you'll find that quite enjoyable.@@"<br>
<br>
You thank her again and she hangs up.<br>
<br>
Resisting the <<if setup.getTotalValue("cum") < 5>>disgusting<<elseif setup.getTotalValue("cum") < 10>>depraved<<else>>intense<</if>> urge to start doing cum-shots on the kitchen counter you pound the rest of the bottle of Boil-Less Pink with a delighted smile and put your phone away as you walk out of the kitchen.<br>
<br>
[<<moveTo "room_livingroom" "Return to the living room." 180 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: eat breakfast
#status: FINISHED 0.7.2.0
#ignore_spell: l
#*/
<<set $player.location to "Kitchen">>
<<set $player.inside = true>>
<<if $scene.hasOwnProperty("org_dirtymulti")>>
<<set $scene.code = "org_multi">>
<<set $scene.dest = "room_breakfast">>
<<initRoom>>
<<moveTo "debug_island">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<movePets>>
<<set _dogReady = $npc_dog.stage < 2 &&
$npc_dog.flags.stage1.kitchen &&
$npc_dog.flags.stage1.foyer &&
$npc_dog.flags.stage1.shower &&
$npc_dog.flags.stage1.computer &&
$npc_dog.flags.stage1.masturbation &&
$npc_dog.flags.stage1.walk &&
$npc_dog.flags.stage1.meal &&
$npc_dog.flags.stage1.sleep &&
$npc_dog.flags.stage1.maid &&
$npc_dog.flags.stage1.fetch &&
($npc_dog.flags.stage1.living_room || !$fetish.piss) &&
!$npc_dog.flags.stage1.bedroom>>
<<if ($npc_dog.stage && $npc_dog.location == "room_bedroom" || _dogReady) && !$scene.dogEvent>>
<<if $npc_dog.stage < 2 || random(1,10) == 1>>
<<initRoom>>
<<moveTo "event_dog_bedroom_wakeup_1">>
<</if>>
<</if>>
<<set _catReady = $npc_cat.stage < 2 &&
$npc_cat.flags.kitchen &&
$npc_cat.flags.porn &&
$npc_cat.flags.bathroom &&
$npc_cat.flags.foyer &&
!$npc_cat.flags.bedroom>>
<<if !_dogReady && !$scene.catEvent && !$scene.dogEvent && (_catReady || ($fetish.cat && $npc_cat.stage && $npc_cat.location == "room_bedroom" && ($npc_cat.stage < 2 || random(1,10) == 1)))>>
<<initRoom>>
<<moveTo "event_cat_bedroom_wakeup_1">>
<</if>>
<<switch $player.flags.mealplan.base>>
<<case "boiless">>
<<if $player.sec_style.sex.boiless_bottle != "">>
<<applyExperience 'oral' 8 'normal' $ALONE>>
<<applyExperience 'penis' 10 'normal' $ALONE>>
<<changeHorny 10>>
<</if>>
<</switch>>
<<if $player.flags.mealplan.cum>>
<<set _cum = Math.max(11, Math.min(16, setup.getTotalValue("cum")))>>
<<applyExperience 'cum' _cum 'normal' $INCOGNITO>>
<<if $player.flags.mealplan.cum_toothpaste>>
<<changeHorny 10>>
<</if>>
<</if>>
<<set $scene.clothes = -1>>
<<set $scene.makeup = "">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_kitchen_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.passThrough>>
<<if $scene.milkAdd > 0 && $scene.creamAdd > 0>>
Your nocturnal "work" has resulted in a harvest of <<=Number.parseFloat($scene.milkAdd*.04).toPrecision(3)>>L of milk and <<=setup.cumtomL($scene.creamAdd)>> of "cream." <br>
<br>
<<elseif $scene.milkAdd > 0>>
Your nocturnal "work" has resulted in a harvest of <<=Number.parseFloat($scene.milkAdd*.04).toPrecision(3)>>L of milk.<br>
<br>
<<elseif $scene.creamAdd > 0>>
Your nocturnal "work" has resulted in a harvest of <<=setup.cumtomL($scene.creamAdd)>> of "cream." <br>
<br>
<</if>>
<</if>>
Rising to start the day, you head for the kitchen.
<<switch $player.flags.mealplan.base>>
<<case "cheap">>
Eating quickly, you scarf down a microwaved breakfast burrito.
<<case "premium">>
Eating quickly, you enjoy a tasty breakfast wrap.
<<case "boiless">>
You mix up a fresh batch of Boil-Less Pink and
<<if $player.sec_style.sex.boiless_bottle != "">>
jam the phallic-topped "straw" into your mouth and
<<if setup.getTotalValue("penis") > 15>>
joyously
<<elseif setup.getTotalValue("penis") > 10>>
happily
<<elseif setup.getTotalValue("penis") > 5>>
reluctantly
<<else>>
resignedly
<</if>>
suck down every tasty drop through your "morning cock."
<<else>>
chug down the sweet, fruity concoction.
<</if>>
<<default>>
ERROR: unknown mealplan! $player.flags.mealplan.base
<</switch>>
<<if $player.flags.mealplan.hormones != "none">>
Almost immediately, you feel your morning dose of hormones kicking in.
<</if>>
<<if $player.flags.mealplan.cum>>
<<if $player.flags.mealplan.cum_toothpaste>>
You enjoy your cum-seasoned meal... and then brush your teeth with an extra squirt of <<getWordCum>> leaving you feeling clean, yet with that
<<else>>
Thanks to your extra seasoning, your mouth is filled with the
<</if>>
<<if setup.getTotalValue("cum") >= 15>>
intoxicating
<<elseif setup.getTotalValue("cum") >= 10>>
delicious
<<elseif setup.getTotalValue("cum") >= 5>>
salty-sweet
<<else>>
disgusting
<</if>>
taste of <<getWordCum>>.
<<elseif $player.flags.mealplan.cum_toothpaste && $player.timebased.milking.cream_storage>>
You finish off your meal by brushing your teeth... with bit of cum.
<<elseif $player.flags.mealplan.cum_toothpaste>>
Unfortunately, you don't even have enough cum to brush your teeth! A true travesty that leaves you hungry for your favourite salty flavour.
<</if>>
<br><br>
<label>Shower:
<<if $player.flat.wakeup.shower>>
<<checkbox "$scene.shower" false true checked>>
<<else>>
<<checkbox "$scene.shower" false true>>
<</if>>
</label>
<br><br>
<<if $player.sec_style.clothing.makeup != "">>
Makeup:<br>
<<if setup.checkItemInInventory('makeup_basic') || setup.checkItemOwned('makeup_advanced')>>
<<getMakeupCheckbox>>
<<else>>
[@@.link_locked;You can't do your makeup without supplies!@@]
<</if>>
<br>
<</if>>
<<if $player.sec_style.body.pinkpill>>
<<if setup.hasTmpEffect("sissypill_eternal") ||
setup.hasTmpEffect("sissypill_2_eternal") ||
setup.hasTmpEffect("sissypill_3_eternal") ||
setup.hasTmpEffect("sissypill_pure_eternal") ||
setup.hasTmpEffect("sissypill_pure")>>
You no longer need to take daily drugs.
<<elseif setup.checkItemInInventory('personal_medication') || $npc_manager.stage >= 5 && $player.flags.used_sissy_pill_2_count>>
<label>Take your daily <<=setup.getItemName('personal_medication')>>:
<<if $player.flat.wakeup.drug>>
<<checkbox "$scene.pill2" false true checked>><br>
<<else>>
<<checkbox "$scene.pill2" false true>><br>
<</if>>
</label>
<br>
<<elseif setup.checkItemInInventory('sissy_pill_mk1') || setup.checkItemInInventory('sissy_drug_1') || setup.checkItemInInventory('pillbottle') || $npc_manager.stage >= 5>>
<label>Take your daily <<=setup.getItemName('sissy_pill_mk1')>>:
<<if $player.flat.wakeup.drug>>
<<checkbox "$scene.pill1" false true checked>><br>
<<else>>
<<checkbox "$scene.pill1" false true>><br>
<</if>>
</label>
<br>
<<elseif $player.flags.atesissypill>>
You do not have any pills to take.<br>
<br>
<</if>>
<</if>>
Change clothes:<br>
<<if $player.flat.wakeup.clothes == -1>>
<label>Do not change <<radiobutton "$scene.clothes" -1 checked>></label><br>
<<else>>
<label>Do not change <<radiobutton "$scene.clothes" -1>></label><br>
<</if>>
<<if $player.flat.wakeup.clothes == -2>>
<label>Naked <<radiobutton "$scene.clothes" -2 checked>></label><br>
<<else>>
<label>Naked <<radiobutton "$scene.clothes" -2>></label><br>
<</if>>
<<for _index, _clothSet range $clothSets>>
<<if _index == $player.flat.wakeup.clothes>>
<label><<=_clothSet.name>> <<radiobutton "$scene.clothes" _index checked>></label><br>
<<else>>
<label><<=_clothSet.name>> <<radiobutton "$scene.clothes" _index>></label><br>
<</if>>
<</for>>
<br>
<<if $npc_chuck.stage >= 1 || $npc_chuck.timebased.grow > 50>>
<<if $npc_chuck.stage == 0>>
<<if $player.flat.wakeup.chuck_water == 'water'>>
<label>Water <<=setup.getNpcName('npc_chuck', 'suffix')>>: <<checkbox "$scene.chuck_water" false true checked>></label><br>
<<else>>
<label>Water <<=setup.getNpcName('npc_chuck', 'suffix')>>: <<checkbox "$scene.chuck_water" false true>></label><br>
<</if>>
<<else>>
Water <<=setup.getNpcName('npc_chuck', 'suffix')>> with:
<<if $player.flat.wakeup.chuck_water == 'none'>>
<label>Nothing: <<radiobutton "$scene.chuck_special" 'none' checked>></label>
<<else>>
<label>Nothing: <<radiobutton "$scene.chuck_special" 'none'>></label>
<</if>>
<<if $player.flat.wakeup.chuck_water == 'water'>>
<label>Water: <<radiobutton "$scene.chuck_special" 'water' checked>></label>
<<else>>
<label>Water: <<radiobutton "$scene.chuck_special" 'water'>></label>
<</if>>
<<if $npc_chuck.flags.fed_piss>>
<<if $player.flat.wakeup.chuck_water == 'piss'>>
<label>Piss: <<radiobutton "$scene.chuck_special" 'piss' checked>></label>
<<else>>
<label>Piss: <<radiobutton "$scene.chuck_special" 'piss'>></label>
<</if>>
<</if>>
<br>
<</if>>
<<if $npc_chuck.flags.fed_cum>>
<<if $player.timebased.milking.cream_storage >= 50>>
<label>Pour <<=setup.getNpcName('npc_chuck', 'suffix')>> some cum from the fridge:
<<if $player.flat.wakeup.chuck_cum>>
<<checkbox "$scene.chuck_cum" false true checked>>
<<else>>
<<checkbox "$scene.chuck_cum" false true>>
<</if>></label><br>
<<else>>
<<if $player.flat.wakeup.chuck_cum>>
[@@.link_locked;Your stores of cum have gotten too low to feed <<=setup.getNpcName('npc_chuck', 'suffix')>> this morning.@@]<br>
<<else>>
[@@.link_locked;You do not have sufficient stored cum to give to <<=setup.getNpcName('npc_chuck', 'suffix')>>.@@]<br>
<</if>>
<</if>>
<</if>>
<<if $npc_chuck.flags.fed_milk>>
<<if $player.timebased.milking.milk_storage >= 50>>
<label>Pour <<=setup.getNpcName('npc_chuck', 'suffix')>> some milk from the fridge:
<<if $player.flat.wakeup.chuck_milk>>
<<checkbox "$scene.chuck_milk" false true checked>>
<<else>>
<<checkbox "$scene.chuck_milk" false true>>
<</if>>
</label><br>
<<else>>
<<if $player.flat.wakeup.chuck_milk>>
[@@.link_locked;You have run too low on stored milk to feed <<=setup.getNpcName('npc_chuck', 'suffix')>> this morning.@@]<br>
<<else>>
[@@.link_locked;You do not have sufficient stored milk to give to <<=setup.getNpcName('npc_chuck', 'suffix')>>.@@]<br>
<</if>>
<</if>>
<</if>>
<br>
<</if>>
<<if $currentTasks.hasOwnProperty('event_interview') && !$currentTasks.event_interview.finished && $player.flags.resume.base <= 0>>
<<set $scene.dayskipExpectedDest = "event_job_interview_resume_0">>
[<<moveTo "event_job_interview_resume_0" "Start the day." 0 _expectedAction>>]<br>
<<elseif $player.flags.mealplan.cum && setup.getTotalValue("cum") > 10 && !State.hasPlayed("event_cum_toothbrush_1") && $player.timebased.milking.cream_storage>>
<<set $scene.dayskipExpectedDest = "event_cum_toothbrush_1">>
[<<moveTo "event_cum_toothbrush_1" "Start the day." 120 "<<set $scene.startDay = true>><<include 'startDay'>>">>]<br>
<<else>>
<<set $scene.dayskipExpectedDest = "room_foyer">>
[<<moveTo "room_foyer" "Start the day." 0 "<<set $scene.startDay = true>><<include 'startDay'>>">>]<br>
<</if>>
<<set $scene.dayskipExpectedAction = "<<set $scene.startDay = true>><<include 'startDay'>>">>
<<if $player.flags.firstWorkDayDone && !$events.hasOwnProperty("finale_leave_home")>>
<<include "event_dayskip_config_1">>
<</if>>
</div>/*#
#desc: macro that handles getting showered/dressed/etc.
#status: FINISHED 0.7.6.0
#*/
<<if $scene.startDay>>
<<set $daily = {}>>
<<if $player.flags.firstWorkDayDone>>
<<setProgressionEvent>>
<</if>>
<<set $scene.time = 0>>
<<set $player.flat.wakeup.shower = $scene.shower>>
<<set $player.flat.wakeup.makeup = $scene.makeup>>
<<set $player.flat.wakeup.clothes = $scene.clothes>>
<<if $scene.chuck_water>>
<<set $player.flat.wakeup.chuck_water = 'water'>>
<<elseif $scene.hasOwnProperty('chuck_special')>>
<<set $player.flat.wakeup.chuck_water = $scene.chuck_special>>
<<else>>
<<set $player.flat.wakeup.chuck_water = 'none'>>
<</if>>
<<set $player.flat.wakeup.chuck_cum = $scene.chuck_cum == true>>
<<set $player.flat.wakeup.chuck_milk = $scene.chuck_milk == true>>
<<set $player.flat.wakeup.drug = $scene.pill1 || $scene.pill2>>
<<if $scene.shower>>
<<if setup.checkSexToyDirty()>>
<<set $scene.time += setup.cleanSexToys()>>
<</if>>
<<if setup.hasUpgrade($bathroom, 'dildo')>>
<<changeHorny 20>>
<</if>>
<<if setup.checkItemDirty()>>
<<set $scene.time += 10>>
<</if>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = "">>
<<washClothes>>
<<include "cleanPlayer">>
<<if setup.hasUpgrade($bathroom, 'dildo')>>
<<if setup.getTotalValue("penis") > 10>>
<<applyExperience 'penis' 10 'normal' $ALONE>>
<<applyExperience 'anal' 12 'terrible' $ALONE>>
<<elseif setup.getTotalValue("penis") > 5>>
<<applyExperience 'penis' 10 'little' $ALONE>>
<<applyExperience 'anal' 12 'normal' $ALONE>>
<<else>>
<<applyExperience 'penis' 5 'little' $ALONE>>
<</if>>
<</if>>
<</if>>
<<if $scene.pill1>>
<<if setup.checkItemInInventory('pillbottle')>>
/%no op%/
<<elseif setup.checkItemInInventory('sissy_pill_mk1')>>
<<deleteItem 'sissy_pill_mk1'>>
<<elseif setup.checkItemInInventory('sissy_drug_1')>>
<<deleteItem 'sissy_drug_1'>>
<</if>>
<<if $player.flags.pink_pill.times_od1 < 1>>
<<changeHorny 50>>
<<applyStress -20>>
<<setTmpEffect 'sissypill_mk1'>>
<<applyExperience 'bimbofication' 10 'normal' $ALONE>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<</if>>
<<elseif $scene.pill2>>
<<if setup.checkItemInInventory('personal_medication')>>
<<deleteItem 'personal_medication'>>
<</if>>
<<setTmpEffect 'sissypill_mk2'>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<changeHorny 20>>
<<applyStress -30>>
<<applyFatigue -30>>
<<set $player.flags.used_sissy_pill_2_count += 1>>
<</if>>
<<if $player.flat.wakeup.makeup != "">>
<<if $player.flat.wakeup.makeup == 'none'>>
<<if $player.makeup.template!="">>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<<set $scene.time += 5>>
<</if>>
<<else>>
<<set $scene.room_do_makeup_apply_obj = setup.applyMakeup($player,$player.flat.wakeup.makeup)>>
<<set $scene.time += Math.round(setup.getMakeupTime($player,$player.flat.wakeup.makeup)/60)>>
<<switch setup.getMakeupDifficult($player.flat.wakeup.makeup)>>
<<case 'easy'>>
<<set _makeupDiff = 'insignificant'>>
<<case 'medium'>>
<<set _makeupDiff = 'normal'>>
<<case 'hard'>>
<<set _makeupDiff = 'very'>>
<<case 'impossible'>>
<<set _makeupDiff = 'little'>>
<</switch>>
<<applyExperience 'makeup' $scene.room_do_makeup_apply_obj.level _makeupDiff $INCOGNITO>>
<<set $player.makeup.template = $player.flat.wakeup.makeup>>
<<set $player.makeup.messed = $scene.room_do_makeup_apply_obj.newValue>>
<</if>>
<</if>>
<<switch $scene.clothes>>
<<case -1>>
<<set $scene.time += 0>>
<<case -2>>
<<removeAllClothing>>
<<set $scene.time += 3>>
<<default>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.noitems = false>>
<<set $player.inside = true>>
<<useClothSet $scene.clothes>>
<<set $scene.time += 5>>
<</switch>>
<<set $now = setup.advanceDate($player, $now, 'seconds', $scene.time*60)>>
<<set $scene.startDay = false>>
<<if $scene.chuck_water || $scene.chuck_special == 'water'>>
<<if $npc_chuck.timebased.water <= 75>>
<<set $npc_chuck.timebased.water=100>>
<<applyStress -2>>
<</if>>
<</if>>
<<if $scene.chuck_cum>>
<<if $npc_chuck.timebased.fed <= 75>>
<<set $npc_chuck.timebased.fed+=25>>
<<applyStress -1>>
<<set $player.timebased.milking.cream_storage -= 25>>
<</if>>
<</if>>
<<if $scene.chuck_milk>>
<<if $npc_chuck.timebased.fed <= 75>>
<<set $npc_chuck.timebased.fed+=25>>
<<applyStress -1>>
<<set $player.timebased.milking.milk_storage -= 25>>
<</if>>
<</if>>
<<if $scene.chuck_special == 'piss'>>
<<set $npc_chuck.timebased.water=100>>
<<set $npc_chuck.timebased.aggressive = true>>
<</if>>
<<if $npc_chuck.timebased.grow >= 100 && !$player.locations.plant>>
<<set $npc_chuck.flags.event = "outgrew">>
<<initRoom>>
<<set $taskEvents.push({"scene" : "event_chuck_outgrow_planter", "date" : $now, "continueTime" : 0, "id" : "chuck_outgrow"})>>
<<elseif $npc_chuck.flags.event != "" && $fetish.tentacle>>
<<switch $npc_chuck.flags.event>>
<<case "cum">>
<<initRoom>>
<<moveTo "event_chuck_first_cum_grow">>
<<case "piss">>
<<initRoom>>
<<moveTo "event_chuck_first_piss_grow">>
<<case "milk">>
<<initRoom>>
<<moveTo "event_chuck_first_milk_grow">>
<<case "final">>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
<<if (!$player.body_ref.vagina || setup.checkItemTypeWorn("cage") && !setup.isCage() || $player.virgin.vaginal)>>
<<initRoom>>
<<moveTo "event_chuck_final_grow">>
<<else>>
<<set $npc_chuck.flags.event = "">>
<</if>>
<</if>>
<</switch>>
<</if>>
<</if>>/*#
#desc: look up Boil-Less info online
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You open up a search for the "Boil-Less" meal replacement drink. It would appear that it's a pretty new product to the market, so there isn't a whole lot of general info with most things being just rewrites of the company marketing material.<br>
<br>
Checking out the official website you find more of the same, with an interesting quirk — from the pink branding to consistent pronoun use in "providing all the nutrients she needs!" and "hear it from her!" testimonials the site seems to be targeted at an assumed-feminine reader.<br>
<br>
<<if $player.sec_style.body.name == "">>
<<printThought "That's a bit odd... though I guess no more odd than male pronouns being standard marketing fare.">>
<<else>>
<<printThought "Something to do with cookies? That's a little creepy...">>
<</if>>
<br><br>
In the end you don't really learn anything you don't already know, save for a handful of small, but definitive, medical studies that purport to prove the safety and efficacy of the product, including one preliminary study specifically focused on how Boil-Less interacts with hormone therapy.<br>
<br>
<<if $player.flags.mealplan.unlocked.includes("boiless")>>
<<if $player.sec_style.sex.boiless_bottle != "">>
Finally you check out the "other products" tab, noting the "special" bottle you already own, and nothing else of interest.<br>
<br>
[<<moveTo "room_computer" "Close the tab." 60>>]
<<else>>
[<<moveTo "room_computer_boiless_2" 'Check the "other products" link before you go.' 60 "<<set $scene.voluntary=true>>">>]<br>
[<<moveTo "room_computer_boiless_close" "Close your Browser." 60>>]
<</if>>
<<else>>
[<<moveTo "room_computer" "Close the tab." 60>>]
<</if>>
</div>/*#
#desc: look up Boil-Less info online
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<div id="invframe" class="scrolltext">
You close the window only to get a parting pop-up offer.<br>
<br>
<nowiki>~~~~~~~~~~~~ !!!!! BEFORE YOU GO !!!!! ~~~~~~~~~~~~~</nowiki><br>
<nowiki>~ LOOKING TO ENHANCE YOUR BOIL-LESS EXPERIENCE? ~</nowiki><br>
<nowiki>~~~~ SPECIAL OFFER ON OUR BEST BOTTLE YET! ~~~~</nowiki><br>
<br>
[<<moveTo "room_computer_boiless_2" "Hmm, might be interesting?" 60 "<<set $scene.voluntary=false>>">>]<br>
[<<moveTo "room_computer" "Close the window, you're not interested." 60>>]
</div>/*#
#desc: look up Boil-Less info online
#status: RELEASED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.voluntary>>
You check out the "other products" page, most of it is just blender bottles in different shades of pastel, but you scroll down and find a bottle of an entirely different design. Or, rather, the cap is completely different.
<<else>>
You decide to check out the offer and are presented with a "limited time" offer to upgrade your Boil-Less bottle to a new model. Similar to what you currently have the difference comes with the cap —
<</if>>
Seemingly designed to be sucked rather than drank from it's quite a bit longer than the "standard" design... resulting in a somewhat phallic shape. The marketing materials promises that this shift results in an aerating effect that improves nutrient uptake, as well as packing additional monitoring sensors into the elongated cap to better optimise results.<br>
<br>
<<if $scene.voluntary>>
It looks like the new bottle runs 50 credits, but the various features sound pretty impressive...<br>
<br>
<<if $player.sec_style.body.boiless == "">>
[@@.link_locked;The fine print says you can only order if you are already a "verified" Boil-Less user.@@]<br>
<<else>>
[<<moveTo "room_computer_boiless_3" "Order it." 600>>]<br>
<</if>>
<<else>>
The bottle already having been added to your cart there's a flashing indicator on the screen indicating that your promo offer has already been applied, rendering the cost to you totally free.<br>
<br>
<<printThought "Huh, free is good, right? I mean, I'd be a fool not to take advantage of such a deal...">><br>
<br>
[<<moveTo "room_computer_boiless_3" "Accept the offer." 600>>]<br>
<</if>>
[<<moveTo "room_computer" "Close your browser." 60>>]
</div>/*#
#desc: Boil-Less bottle delivery
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.voluntary>>
<<set $player.sec_style.sex.boiless_bottle = "voluntary">>
<<addCredits -50>>
<<else>>
<<set $player.sec_style.sex.boiless_bottle = "money">>
<</if>>
<<applyExperience 'oral' 5 'normal' $ALONE>>
<<applyExperience 'penis' 10 'normal' $ALONE>>
<</if>>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<div id="invframe" class="scrolltext">
You place your order and get an immediate response that the drone-shipment is already on the way.<br>
<br>
You've barely stood up from the computer when the door chimes, your purchase delivered with truly startling efficiency.<br>
<br>
Unboxing your new purchase it looks even more phallic in person than it did in the picture, but you find yourself taking it to the kitchen for a test.<br>
<br>
From the first sip... er, suck you can taste the difference.
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
Everything in life is better with penis, and you're overjoyed to add
<<else>>
The shape is pleasant between your lips and you find yourself looking forward to adding
<</if>>
a little suck-suck to your every meal. Even better, you judge that the lighter, more aerated texture is an improvement from the basic blend.
<<else>>
<<if setup.getTotalValue("penis") > 5>>
The phallic shape is... interesting, and unmistakable,
<<else>>
The phallic shape is a bit off-putting...
<</if>>
but the mechanism is remarkably smooth, and the aerated texture is a slight improvement from the basic blend.
<</if>>
<br><br>
You get ready to put the new bottle away when you check your old one, you're immediately grateful for your order as you notice a small crack has formed in your old cap. A quick check confirms, merely the act of unscrewing it catches on the flaw and the entire cap disintegrates. Good thing you just got the new model, otherwise you would be in real trouble about now!<br>
<br>
[<<moveTo "room_foyer" "Fortune working in my favour for once!" 60>>]
</div>/*#
#desc: first time brushing teeth with cum
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<set $player.location to "Bathroom">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You're finishing preparing for the day by brushing your teeth, only to have a pang of regret as the minty-fresh toothpaste erases the addictive flavour of your cummy breakfast...<br>
<br>
<<printThought "Hmm... what if I brushed my teeth with cum?">><br>
<br>
[<<moveTo "event_cum_toothbrush_2" "Yes, cum makes everything better!" 180 "<<set $scene.addCum=true>>">>]<br>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;You are too much of an addicted cum-slut to pass up the idea, now that you've thought of it.@@]
<<else>>
[<<moveTo "event_cum_toothbrush_2" "That's too much, even for you." 180 "<<set $scene.addCum=false>>">>]
<</if>>
</div>/*#
#desc: first time brushing teeth with cum
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.mealplan.cum_toothpaste = $scene.addCum>>
<<if $player.flags.mealplan.cum_toothpaste>>
<<applyExperience 'cum' 18 'little' $ALONE>>
<</if>>
<</if>>
<<set $player.location to "Bathroom">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.addCum>>
A quick dash to the fridge sees your toothbrush refreshed with a dab of delicious, salty cum. From the moment you start brushing you know you made the right choice, suppressing a lusty moan as you work your favourite flavour into every part of your mouth, brushing even longer than the "dentist recommended" two minutes and finishing off by licking the bristles clean of every last scrap of scrumptious, salty semen.
<<else>>
As tempting as the idea is for a cum-slut such as yourself, you resist the urge to use it as toothpaste.
<</if>>
<br><br>
<<hint $options "You can adjust using cum in your toothpaste from meal planning in the kitchen.">><br>
<br>
[<<moveTo "room_foyer" "Start the day." 0 "<<set $scene.startDay = true>><<include 'startDay'>>">>]
</div>/*#
#desc: ask technician about meeting for lunch, she tells you about Boil-Less
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.body.boiless != 'strict'>>
<<set $player.flags.boiless.known = true>>
<<addEmail $computer
'<<=setup.getNpcName("npc_technician", "first")>>'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_boiless_01_h'
'mail_boiless_01_t'
'{"name":"BoiLess_Pink_Free_Coupon.pdf","type":"event","data":{"event":"attachment_enroll_boiless"}}'
>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up that, what with the two of you working in the same building, maybe <<=setup.getNpcName('npc_technician', 'first')>> would like to get together for lunch sometime during the week? She smiles and... did she blush just a little? Before slowly shaking her head.<br>
<br>
You are a bit crestfallen at the rejection. Your head drops in dismay only for her to reach across the table and place her hand on yours in comfort.<br>
<br>
"@@.npc_technician;No, no, no! It's nothing like that. You see it's not that I don't want to get together with you, I totally do, you're real great to hang out with<<if $npc_technician.relationship.relationship_stage >= 1>> like... REALLY great..<</if>>. No, it's nothing like that, it's just lunch, you see.@@"<br>
<br>
You don't see, but at least you're feeling a bit better about the state of your friendship as you look up in confusion.<br>
<br>
<<if $player.sec_style.body.boiless == 'strict'>>
"@@.npc_technician;Well, the short version is that I don't eat lunch anymore. Don't really eat at all, except on special occasions. Instead I go for the convenience of a meal substitute — the one I use is called Boil-Less.@@"<br>
<br>
You smile and reply that
<<if $player.flags.mealplan.base == "boiless">>
you use the same product!
<<else>>
you've heard of it.
<</if>>
<br><br>
"@@.npc_technician;Hey, cool! So, yeah... you understand the no lunch thing, but maybe we could get together for something else, eh?@@"<br>
<br>
<<printNpcThemeReturn>>
<<else>>
"@@.npc_technician;Well, the short version is that I don't eat lunch anymore. Don't really eat at all, except on special occasions.@@"<br>
<br>
<<printThought "Wait, what? How can someone not eat?">><br>
<br>
She smiles as you look up at her in confusion. "@@.npc_technician;Well, you see eating takes so much time every day, plus the cost, and the prep and everything, it is really quite an inefficient way to replenish energy. No, what I do is I drink this special protein mix call Boil-Less. It covers all my body's needs, is cheap, tastes pretty good and I can just pound it without even leaving the keyboard. So yeah, that's why we can't meet for lunch — I don't even take it anymore, just power on through the afternoon!@@"<br>
<br>
Confusion now replaced with curiosity, you ask her more about her meal replacement.<br>
<br>
Clearly delighted at your interest, she launches into one of her patented too-fast monologues. "@@.npc_technician;It's a scientifically proven mix of all macro and micro nutrients, plus vitamins, minerals and a little bit of tasty flavouring all precisely dosed out to meet your exact nutritional needs. Even better is the latest mixture — called Boil-Less Pink, it's not just better than the older formulas, but they are running a special introduction promotion! One second, I'll forward you the email and you can look through and try it out for yourself. Realtalk though — since switching over I find life sooooo much easier than when I had to figure out meals every day, plus I feel more energetic and I even save money!@@"<br>
<br>
She makes a pretty good sales pitch as she whips out her phone and forwards you the email and you make a mental note to look into it after you get home. As she drops her phone back into her purse, you notice a small thermos and ask if she brought some with her.<br>
<br>
"@@.npc_technician;Someone made <<switch $npc_technician.flags.knowgender>><<case 'female'>>her<<case 'male'>>his<<default>>their<</switch>> spot check! Yes indeed, this is my "lunch." I would offer to let you try a sip but, well, I mix my hormones in since taking them together helps even out the dosage, and it means I only have to remember the one thing. You can still try it, if you want, I just wanted to let you know. Though... maybe a little femme boost like that that just makes you more interested?@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> smiles slyly as she offers you the thermos across the table.<br>
<br>
<<if $player.sec_style.body.hormones != ''>>
You grin and explain that you're already taking hormones.<br>
<br>
[<<moveTo "event_technician_cafe_boiless_accept" "Take a sip.">>]
<<elseif setup.getTotalValue("feminization") >= 12>>
The mentioning of feminine hormones definitely has you even more interested in accepting her offer.<br>
<br>
[<<moveTo "event_technician_cafe_boiless_accept" "Take a sip." 60>>]
<<elseif setup.getTotalValue("feminization") < 8>>
<<if setup.getTotalValue("feminization") < 5>>
<<printThought "It probably wouldn't do anything, but do I really want to take feminine hormones? That seems like a dangerous idea...">>
<<else>>
As welcoming as her smile is, a part of you is screaming that mucking around with your hormones is a terrible idea.
<</if>>
<br><br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_technician_cafe_boiless_accept_willpower" "Push past your reservations and take a sip." 60 "<<spendWillpower 1>>">>] <<hint $options "Pushing yourself this fast would require an act of will.">>
<<else>>
[@@.link_locked;Just thinking about a "fem boost" of hormones is stressing you out.@@]
<</if>>
<<else>>
<<printThought "Hmm... I'm a little curious... I mean just a little can't hurt, right?">><br>
<br>
[<<moveTo "event_technician_cafe_boiless_accept" "Take a sip.">>]
<</if>>
<br>
[<<moveTo "event_technician_cafe_boiless_decline" "Thank her for the offer and decline.">>]
<</if>>
</div>/*#
#desc: accept technician's offer to try her hormone-laden Boil-Less
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $player.flags.boiless.tasted = true>>
<<set $scene.first = $player.sec_style.body.hormones == ''>>
<<if $scene.first>>
<<setTmpEffect 'hormone_first'>>
<<set $player.sec_style.body.hormones = "voluntary">>
<<if !$player.body_ref.penis>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> smiles expectantly as she hands you the thermos and you bring it to your lips for a sip.<br>
<br>
Looking down, you note that it's a bright, happy pink, smelling faintly sweet but otherwise unplaceable. You tilt it back for the first taste, taking a tiny sip and letting it flow over your tongue.<br>
<br>
<<printThought "Not bad, a little fruity, but mild. Dunno about all meals, but I could see drinking this for some.">><br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> still looking at you expectantly she nods and you take another, bigger sip, filling your mouth before handing the thermos back and making a show of gulping it down before flashing a triumphant smile.<br>
<br>
<<if $scene.first>>
As you swallow, you imagine you feel the hormones working through you, eating away at your masculinity.
<<if setup.getTotalValue("feminization") > 10>>
It feels good, though you doubt such a small dose is enough to have any measurable effects. You wonder if you could find some hormones of your own, not wanting to impose on <<=setup.getNpcName('npc_technician', 'first')>> after she already shared so graciously.
<<else>>
It feels strange, like you're losing a piece of yourself. You console yourself with the almost certain fact that such a small dose is unlikely to have any sort of physical effect, even temporarily.
<</if>>
<br><br>
<</if>>
<<=setup.getNpcName('npc_technician', 'first')>> grins back at you. "@@.npc_technician;You know you look really hot swallowing things...@@"<br>
<br>
<<printThought "A sip was one thing... do I really want to drink more?">><br>
<br>
<<if setup.getTotalValue("feminization") < 10>>
<<if setup.getWillpower() >0>>
[<<moveTo "event_technician_cafe_boiless_drink_extra" "Have another gulp." 120 "<<set $scene.chug=true>><<spendWillpower 1>>">>] <<hint $options "You pushed yourself once, but going even further is going to take additional effort... if you dare.">>
<<else>>
[@@.link_locked;You've pushed yourself enough already today.@@]
<</if>>
<<else>>
[<<moveTo "event_technician_cafe_boiless_drink_extra" "Have another gulp." 120 "<<set $scene.chug=true>>">>]
<</if>>
<br>
[<<moveTo "event_technician_cafe_boiless_drink_extra" "Thank her and return the bottle." 120 "<<set $scene.chug=false>>">>]
</div>/*#
#desc: willpower accept technician's offer to try her hormone-laden Boil-Less
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.willpower.bonus += 1>>
<<applyStress -5>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<<set $player.flags.boiless.tasted = true>>
<<set $scene.first = $player.sec_style.body.hormones == ''>>
<<if $scene.first>>
<<setTmpEffect 'hormone_first'>>
<<set $player.sec_style.body.hormones = "voluntary">>
<<if !$player.body_ref.penis>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Time seems to slow down as you stare at the thermos, then at <<=setup.getNpcName('npc_technician', 'first')>> and then slowly reach out your hand.<br>
<br>
Your heart racing, you try to play it casual as you bring the drink to your lips and tip it back.<br>
<br>
If you expected some sort of immediate effect, you are sorely disappointed. It tastes good, certainly, a sort of tropical lime flavour that is quite pleasant, though you don't exactly feel anything different.<br>
<br>
"@@.npc_technician;Pretty good, isn't it? It's a special throwback flavour called Baja Blast. There's just something about that citrus kick that makes me feel like a right sexy tart!@@"<br>
<br>
You laugh along with her pun as you stare at the thermos in your hand and contemplate taking another, bigger drink...<br>
<br>
<<if setup.getTotalValue("feminization") < 10>>
<<if setup.getWillpower() >0>>
[<<moveTo "event_technician_cafe_boiless_drink_extra" "Have another gulp." 120 "<<set $scene.chug=true>><<set $scene.spendWillpower = true>>">>] <<hint $options "You pushed yourself once, but going even further is going to take additional effort... if you dare.">><br>
<<else>>
[@@.link_locked;You've pushed yourself enough already today.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_technician_cafe_boiless_drink_extra" "Have another gulp." 120 "<<set $scene.chug=true>><<set $scene.spendWillpower = false>>">>]<br>
<</if>>
[<<moveTo "event_technician_cafe_boiless_drink_extra" "Thank her and return the bottle." 120 "<<set $scene.chug=false>>">>]
</div>/*#
#desc: chug technician's hormone-laden Boil-Less
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.chug>>
<<if $scene.spendWillpower>>
<<spendWillpower 1>>
<<set $player.willpower.bonus += 1>>
<</if>>
<<applyStress -5>>
<<setTmpEffect 'hormone_heavy'>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<else>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.chug>>
Your heart races as you bring the bottle to your lips and tilt it back. Staring at you from across the table <<=setup.getNpcName("npc_technician","first")>> grins wide, pretending to pound the table and she softly chants "@@.npc_technician;Chug! Chug! Chug!@@"<br>
<br>
Spurred on by her encouragement you let the fruity lime deliciousness flow freely, gulping down every drop as you feel what has to be just a psychosomatic rush going through your body.<br>
<br>
As you hand the empty bottle back, <<=setup.getNpcName("npc_technician","first")>> beams. "@@.npc_technician;Someone likes it! Keep up with that sort of thing and you'll be a good girl in no time!@@" She winks at you as you blush "@@.npc_technician;Gah, you're so fucking hot when you pretend to be embarrassed.@@"
<<else>>
Having second thoughts, you just hand her the half-full bottle back. She continues to smile and you feel a slight spark run from her to you in the brief moment your hands are both on the container.
<</if>>
<br><br>
"@@.npc_technician;Anyway, check out that email I sent. You really have nothing to lose enrolling in the free trial, see how you like it.@@"
<<if $scene.chug>>
Screwing the top back onto the now-empty bottle she drops it into her purse. "@@.npc_technician;Don't worry, I've got plenty more at home. Mommy needs her Baja Blast Girljuice!@@"
<<else>>
She takes a large gulp to finish off the bottle before screwing on the top and putting it back in her purse. "@@.npc_technician;Mmmmm, tasty.@@"
<</if>>
<br><br>
<<printNpcThemeReturn>>
</div>/*#
#desc: decline technician's offer to drink her hormone-supplemented Boil-Less
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
She seems a little disappointed as she shoves the thermos back in her purse. The dismay doesn't last long, however, her usual smile back on her face as she looks back up at you.<br>
<br>
"@@.npc_technician;Well, anyway, check out that email and give it a shot — it's at least worth the free trial to see how you like it.@@"<br>
<br>
You thank her again for the info about Boil-Less.<br>
<br>
<<printNpcThemeReturn>>
</div>/*#
#desc: email attachment describing Boil-Less enrollment
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "Boil-Less_Pink_Free_Coupon.pdf">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.body.boiless != "strict">>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_0'
0
'event_psychiatrist_session_boiless_intro'
false
>>
<<addSearch $computer "Research Boil-Less" "room_computer_boiless_1">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You open the attachment of the email forwarded to you by
<<if $player.sec_style.body.boiless == "strict">>
<<=setup.getNpcName('npc_technician', 'first')>>, but it seems your forcible enrollment in Boil-Less makes you no longer eligible for a free trial. Seeing nothing else to do, you close the email.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>>. It is a bit more complicated than just "free stuff," but the legalese is surprisingly straightforward and clear; basically it is less a "free" month's supply than a sort of trial programme. To qualify, you just need get approval from a doctor and to agree to complete a simple survey before and after to see how taking Boil-Less Pink for a month affects you.<br>
<br>
Mindful of other recent happenings, you re-read the thing twice, but it really does seem that straightforward. You make a mental note to talk with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about it during your next session.
<</if>>
<br><br>
[<<moveTo "room_computer_email" "Close this Email." 0>>]
</div>/*#
#desc: talk to psychiatrist about switching to drinking Boil-Less
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $player.flags.mealplan.unlocked.pushUnique("boiless")>>
<<if $fetish.cum && !$player.flags.mealplan.cum_unlocked && (setup.hasThreshold('cum', 'hypnosis_cum', '7') || $npc_psychiatrist.hypnosis > 3 || setup.getTotalValue("cum") > 10)>>
<<addEvent 'cum_first_delivery'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about your experiences switching to drinking Boil-Less Pink instead of normal food. Overall you've found it simple and convenient, it even seems to give you a little extra energy and make you more regular so combined with the <<if $player.sec_style.body.boiless == "voluntary" || $currentTasks.hasOwnProperty('psychiatrist_boiless_review') && $currentTasks.psychiatrist_boiless_review.finished || $currentTasks.hasOwnProperty('psychiatrist_boiless_review_failthrough') && $currentTasks.psychiatrist_boiless_review_failthrough.finished>>affordable<<else>>(currently) free<</if>> price there really seems to be no downsides.<br>
<br>
"@@.npc_psychiatrist;That is just great, and really supports all of the progress we have been making together. You heard of something new, tried it out, and your life is better as a result! Win, win, win!@@"<br>
<br>
You nod in agreement, though you mention that, despite the pleasant mild fruity-flavour you are starting to find the taste of Boil-Less Pink a little repetitive and dull.<br>
<br>
<<if $fetish.cum && setup.getTotalValue("cum") > 15 && setup.hasThreshold('cum', 'hypnosis_cum', '7') && !$player.flags.mealplan.cum_unlocked>>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> smiles. "@@.npc_psychiatrist;You mention that and I think, based on the VERY positive reactions that you've been seeing embracing your innermost desires in my experimental VR therapy study well... I think I have EXACTLY the flavour additive that you will totally love. I'll just have some shipped to you to enjoy.@@"<br>
<br>
For some reason you find yourself unconsciously licking your lips.<br>
<br>
<<printThought "Hmm... she didn't say what flavour it was... I really wish it was cum though! Cum's the best!">><br>
<br>
<<elseif $fetish.cum && $npc_psychiatrist.hypnosis > 3 && !$player.flags.mealplan.cum_unlocked>>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> smiles, clearly ready with an idea. "@@.npc_psychiatrist;You know, it is funny you should mention that. I was just going over some of the results from your experimental VR therapy test sessions and, well, we are getting some GREAT data. Again, thank you so much for participating in the experiment, but more importantly, for the moment, is that I found that there is a particular flavour that you react VERY positively to. I could arrange to send some flavourings matching your profile to be sent to your apartment. Maybe mixing them in would help liven up your meals?@@"<br>
<br>
<<printThought "Why didn't she specify what the flavour was? I guess she wants it to be a surprise?">><br>
<br>
That sounds great and you quickly agree and she promises to drone them over so that they are there by the time you next return home.<br>
<br>
<<elseif !$fetish.cum>>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> nods. "@@.npc_psychiatrist;I see, well there are always tradeoffs. The simplicity of consistency does mean there will be... consistency, simple as that.@@"
<<elseif ($currentTasks.hasOwnProperty('psychiatrist_boiless_review') && !$currentTasks.psychiatrist_boiless_review.finished) || ($currentTasks.hasOwnProperty('psychiatrist_boiless_review_failthrough') && !$currentTasks.psychiatrist_boiless_review_failthrough.finished)>>
You think she is about to propose an idea, but instead merely nods and says that you just have to deal with it and provide such feedback at the end of your trial.<br>
<br>
<</if>>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: confront psychiatrist with the fact she mailed you a package of cum
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up how she mailed you a package of <<if $options.fem>>girl <</if>>cum after promising to send you flavour-enhancers to mix in with your Boil-Less Pink.<br>
<br>
<<switch $player.flags.boiless.confront_psych_phone>>
<<case "happy">>
"@@.npc_psychiatrist;I am so glad you enjoyed my present. It would be good for us to talk more in depth about how it makes you feel.@@"
<<case "confused">>
"@@.npc_psychiatrist;I thought I explained things on the phone, but I suppose it would be good to unpack your feelings in person since we have some time.@@"
<<case "angry">>
"@@.npc_psychiatrist;As I explained on the phone, it was a simple mailing mistake, but I suppose it would be therapeutic to spend some time unpacking your anger.@@"
<<default>> /* i.e.: didn't call her */
"@@.npc_psychiatrist;What, cum? That doesn't make any sense... one moment, let me check something.@@" She turns to her computer and types for a few moments before looking back at you with an embarrassed expression. "@@.npc_psychiatrist;Oh my, it does seem like there was a mix-up. I guess that explains why I got an extra pack of flavour-mix for those chocolates you like so much. I really am sorry, I thought it would be a fun little surprise!@@"<br>
<br>
She smiles and gives a little laugh. "@@.npc_psychiatrist;Well, I suppose it WAS a surprise, though not the type I had intended. Anyway, don't worry about it, you can just throw the <<if $options.fem>>girl <</if>>cum away, after this long it's not medically useful... though it would still be just as tasty.@@" She quietly adds.<br>
<br>
<<printThought "Wait, what?">>
<</switch>>
<br><br>
"@@.npc_psychiatrist;Anyway, ignoring how it happened, how did swallowing the <<if $options.fem>>girl <</if>>cum-laced drink make you feel?@@"<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
[<<moveTo "event_psychiatrist_session_boiless_cum_1_love" "Tell her you loved it." 0>>]<br>
<<else>>
[@@.link_locked;Her lie detection is too good for you to plausibly claim to enjoy adding cum to your meals.@@]<br>
<</if>>
<<if setup.getTotalValue("cum") < 15 && setup.getTotalValue("cum") > 5>>
[<<moveTo "event_psychiatrist_session_boiless_cum_1_indifferent" "Tell her it was weird." 0>>]<br>
<</if>>
<<if setup.getTotalValue("cum") <= 10>>
[<<moveTo "event_psychiatrist_session_boiless_cum_1_hate" "Tell her you hated it." 0>>]
<<else>>
[@@.link_locked;Her lie detection is too good for you to plausibly deny your enjoyment.@@]
<</if>>
</div>/*#
#desc: tell psychiatrist you loved the packaged of cum she mailed you
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You gush effluviently about how much you appreciate her present, how the salty tangy taste of <<if $options.fem>>girl <</if>>cum is just the perfect addition to any meal.<br>
<br>
"@@.npc_psychiatrist;I am so glad to hear you like it... though I was obviously pretty sure you would — I don't give cum to all of my clients... I mean, I guess most of them, but not all!@@"
<br>
<<printThought "She's doing what with her clients? What sort of operation is this?">><br>
<br>
"@@.npc_psychiatrist;Unfortunately for my billable hours I do not see much to unpack here — you love cum, I gave you cum, you loved it. Pretty straightforward, all I can really say is <<if $player.identify_as == 'female'>>you go girl<<else>>congrats<</if>>! Anyway, <<if $player.flags.boiless.confront_psych_phone == "happy">>as I told you before —<<else>>I suppose I should give you the bad news now —<</if>> that shipment was a one-time thing, a bit of extra supply I lucked into. Normally I need all the cum I get for my research.@@"<br>
<br>
<<printThought "Wait, research? Is this related to the experimental VR therapy study? What is she doing... have I?">><br>
<br>
Your head starts to hurt so you abandon the thought.<br>
<br>
"@@.npc_psychiatrist;Anyway, once that runs out you'll be on your own, but I am sure a cute slut like you will have no trouble, but quite a bit of fun, tracking down an alternate supply.@@"<br>
<br>
<<if !$player.sec_style.body.hormones>>
Her eyes light up as she suddenly has an idea. "@@.npc_psychiatrist;Actually, speaking of "additives..." well, I just remembered a paper I read about how the chemical makeup of Boil-Less is known to have some curious, but positive, interactions with certain hormones... I don't suppose you would be up for try a little experiment for me? I would compensate you, of course.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_boiless_money_hormones" "Say sure." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_boiless_money_hormones" "Decline the offer." 60 "<<set $scene.accept=false>>">>]
<<else>>
<<printNpcThemeReturn 150>>
<</if>>
</div>/*#
#desc: act indifferent to psychiatrist mailing you a package of cum
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
With some measure of confusion you explain how you felt after tasting the <<if $options.fem>>girl <</if>>cum-laced drink. She listens quietly, only speaking to offer the occasional encouragement when you fall momentarily silent. When you finally finish she nods slowly and speaks.<br>
<br>
"@@.npc_psychiatrist;Again, I apologise for the mix-up with the mail, though I will also thank you for being understanding rather than angry at what resulted. Circling back to YOUR feelings however I want to ask one question — after that initial sip, when you had realised what had happened... what did you do with the rest of the bottle?@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
You proudly declare that you drank it all up, only to realise what you've just admitted to when a smile spreads across her face.
<<else>>
Blushing hard you admit that you consumed the whole bottle rather than dumping any of it out. She smiles.
<</if>>
<br><br>
"@@.npc_psychiatrist;Well, it seems like you have your answer. As we have discussed before, you need to put aside what society "expects" from you and focus on what you want, what you enjoy, what feels... or in this case, tastes, good to YOU. One final question — did you throw out the rest of the <<if $options.fem>>girl <</if>>cum?@@"<br>
<br>
<<if $player.flags.mealplan.total_days_cum > 0 >>
You admit that not only did you keep the rest of the cum shipment, but that you continued using it to flavour your meals <<if $player.flags.mealplan.cum>>including today<<else>>though quickly add that you haven't had any today<</if>>.<br>
<br>
"@@.npc_psychiatrist;Hmm, it seems like you are not so confused after all. You like cum, there is nothing wrong with that. Many <<if !$options.fem>>men, and some <</if>>special women would quite appreciate someone into sort of thing.@@"
<<else>>
You admit that it is still in your fridge, though quickly add that you haven't touched it since putting it there.<br>
<br>
"@@.npc_psychiatrist;Interesting, and smart — it is never good to close off opportunities if one does not have to. Feel free to hold on to it and do what you feel is best, discard it or save it for a tasty treat.@@"
<</if>>
<br><br>
<<printThought "Is that what I want?">><br>
<br>
<<if $player.flags.mealplan.hormones == "none">>
Her eyes light up as she suddenly has an idea. "@@.npc_psychiatrist;Actually, speaking of "additives..." well, I just remembered a paper I read about how the chemical makeup of Boil-Less is known to have some curious, but positive, interactions with certain hormones... I don't suppose you would be up for try a little experiment for me? I would compensate you, of course.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_boiless_money_hormones" "Say sure." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_boiless_money_hormones" "Decline the offer." 60 "<<set $scene.accept=false>>">>]
<<else>>
<<printNpcThemeReturn 150>>
<</if>>
</div>/*#
#desc: act angry that psychiatrist mailed you a package of cum
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You angrily rant about how disgusting it was to drink the <<if $options.fem>>girl <</if>>cum-laced Boil-Less Pink meal. She sits quietly taking notes until you run out of steam before calmly responding.<br>
<br>
"@@.npc_psychiatrist;First off, I should remind you that this sort of anger really does not do anyone any good. It was an honest mistake of the postal service, happens hundreds of times every day and in the grander scheme of things barely affected your life. I think you may want to drill down a little deeper though — I mean, this hatred for <<if $options.fem>>girl <</if>>cum... is it, perhaps a deep-seated dislike of cum <<if $options.fem>>represents you thinking that only girls eat cum?<<else>>representing a sort of... fountain of masculinity?<</if>> I mean, many men, straight men, even, eat their own cum by habit, so this revulsion... I think it may point to some as-yet-uncovered feelings you have concerning <<if $options.fem>>your feminine side<<else>>masculinity<</if>> as a whole.@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought "Huh, maybe that's right? I mean I am really enjoying embracing my feminine side.">>
<<elseif setup.getTotalValue("feminization") > 5>>
<<printThought "Huh, maybe she's right and this is just a reaction to my struggling with embracing my more feminine side of late?">>
<<else>>
<<printThought "I don't think that makes sense, I'm happy being a man, <<if $options.fem>>not a girl<<else>>a straight man<</if>>!... aren't I?">>
<</if>>
<br><br>
"@@.npc_psychiatrist;That said, I would like to ask you a final, simple question. The bottle of... tainted Boil-Less Pink... what did you do with it, did you pour it out... or did you finish drinking it?@@"<br>
<br>
<<if setup.getTotalValue("cum") < 6>>
You quickly reply that, of course, you poured it out.<br>
<br>
"@@.npc_psychiatrist;I see... well you have to agree that that was a bit of a waste but... well, if that was your preference. No matter, what is done is done. Though I will note that, if you were ever to change your mind about such things, you would need to secure your own supply. That shipment was kind of a one-time thing, since it was a mistake on their end my suppliers have reimbursed me but, in general, my supplies are tight and I need all the cum I can get for my research.@@"<br>
<br>
<<printThought "Why would I do something like that? I guess she's just being weirdly thorough...">>
<<else>>
Even if you weren't turning the shade of a tomato there's no way you could get past her human lie-detector powers so, finally, you bashfully admit that you finished it. All of it.<br>
<br>
"@@.npc_psychiatrist;Very interesting, I think that, shall we say "unconscious response" is your body telling you something. I imagine you didn't throw the rest of the <<if $options.fem>>girl <</if>>cum out either, did you?@@" You shake your head and she nods sagely before continuing. "@@.npc_psychiatrist;I thought as much. Well, just remember you have the option if you want to spice up your meals per your original intent. Options are good, right? Anyway, I suppose I should let you know that shipment was kind of a one-time thing, since it was a mistake on their end my suppliers have reimbursed me but, in general, my supplies are tight and I need all the cum I can get for my research.@@"<br>
<br>
<<printThought "Wait, research? Is this related to the VR therapy? What is she doing... have I?">><br>
<br>
Your head starts to hurt so you abandon the thought.<br>
<br>
"@@.npc_psychiatrist;Anyway, if your stash runs out you'll be on your own and you'll have to figure out some sort of alternate supply.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: tell psychiatrist you have tried adding cum to your meal
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain how you decided to spice-up your daily meals with the <<if $options.fem>>girl <</if>>cum she sent you.<br>
<br>
She smiles wide with delight at the revelation, eagerly waiting for you to finish speaking so she can give her analysis.<br>
<br>
"@@.npc_psychiatrist;Well, that IS interesting. First off, let me congratulate you on trying something new, and that you put that package you got in the mail to a good use! Waste not, want not, right? Getting back on topic, how does it make you feel?@@"<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
You explain that you love it, that it makes every meal taste a thousand percent better.
<<elseif setup.getTotalValue("cum") >= 10>>
You state that you quite enjoy it, really appreciate the extra "spice" it adds to any meal.
<<elseif setup.getTotalValue("cum") > 5>>
You state that you don't really like it, but something seems to compel you to do it and you seem to be slowly developing a taste?
<<else>>
You state that you really dislike the taste, yet you feel compelled to keep adding it.
<</if>>
<br><br>
"@@.npc_psychiatrist;I see, I see. Well, there is no harm in it, so I encourage you to embrace your desires. Liking cum does not have to have any real deeper meaning, it can be like enjoying avocados or scotch or anything else. You can be straight or gay or anything else and love the taste. In your case, I think, it is mainly symbolic of you experimenting with new things, opening up your life options after a very stressful period, it's good, keep it up!@@"<br>
<br>
<<printThought "That was a bit weird, though it's good to know nothing is wrong with me.">><br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about mixing cum with all of your meals
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain how you have taken to adding <<if $options.fem>>girl <</if>>cum to all your meals.<br>
<br>
"@@.npc_psychiatrist;Ooooh! How depraved! I mean think how far you've come, pun intended, that you willingly incorporate such an act into such a basic part of your daily routine as eating. So... how does it work, do you drizzle it on top like hot sauce or spread it like jam or what?@@"<br>
<br>
<<if $player.flags.mealplan.base == "boiless">>
You explain that, actually, you mix it into each batch of Boil-Less Pink, as you drink that instead of eating "normal" meals.
<<else>>
You nod, stating that that is basically how it works, how you sprinkle or spread it across whatever you're eating like any other condiment.
<</if>>
<<if setup.getTotalValue("cum") >= 10>>
There is no hiding the delight in your voice as you explain how the delicious flavour makes every meal better.<br>
<<elseif setup.getTotalValue("cum") >= 5>>
You add that, though you were disgusted at first you have come to appreciate the salty tanginess.<br>
<<else>>
Though you are able to explain your process you find yourself unable to quite articulate why you do these things, given that you find the flavour far from appetising.<br>
<</if>>
<br>
"@@.npc_psychiatrist;How industrious! Well, keep it up if you enjoy it, you do enjoy it, right?@@"<br>
<br>
<<if setup.getTotalValue("cum") >= 15>>
[<<moveTo "event_psychiatrist_session_boiless_cum_3_thank" "Agree that you love it and thank her for providing you with cum in the first place." 60>>]<br>
[@@.link_locked;There's no way you could convincingly lie and say you don't love your new supplement.@@]<br>
<<elseif setup.getTotalValue("cum") >= 5>>
[<<moveTo "event_psychiatrist_session_boiless_cum_3_thank" "Agree that you love it and thank her for providing you with cum in the first place." 60>>]<br>
[<<moveTo "event_psychiatrist_session_boiless_cum_3_reject" "State that you actually don't like it, but you feel almost compelled to do it." 60>>]
<<else>>
[@@.link_locked;You can't lie and say you like what you're doing... even if you do keep doing it.@@]<br>
[<<moveTo "event_psychiatrist_session_boiless_cum_3_reject" "State that you actually don't like it, but you feel almost compelled to do it." 60>>]
<</if>>
</div>/*#
#desc: thank psychiatrist for providing the cum that you now take with every meal
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 17 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName('npc_psychiatrist', 'formal')>> for the initial supply of <<if $options.fem>>girl <</if>>cum that you so relish using like, well relish, the viscous liquid swiftly having become your favourite condiment.<br>
<br>
"@@.npc_psychiatrist;Thank you for saying that, but all I did was help reveal something you always secretly wanted. That said, well... I don't suppose you would like a nice fresh taste hot from the source? All this talking has me feeling more than a little randy!@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_boiless_cum_3_suck" "Volunteer to suck her off." 120>>]<br>
[<<moveTo "event_psychiatrist_session_boiless_cum_3_declinebj" "Say you're full." 120>>]
</div>/*#
#desc: try (and fail) to explain away the fact that you add cum to your meals
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 15 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You quickly try to deflect responsibility for your flavour choices, but your babbling, convoluted excuse just leaves her calmly smiling while taking the occasional note on her pad.<br>
<br>
"@@.npc_psychiatrist;Hmm, what you say is interesting, but I think it just a facade. Disappointing, but not unexpected. Just know that I am always here and ready for when you wish to admit the truth. For now, shall we move to another topic?@@"<br>
<br>
<<printThought "What I said was the truth! I mean sure I put the cum in my food of my own volition, but that doesn't...">><br>
<br>
Even in your head the argument is flawed and forced so you merely blush and move on with the session.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: suck off psychiatrist to thank her for providing you with cum
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_psychiatrist.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Wordlessly you drop to your knees and crawl around the desk as she swivels her chair and spreads her legs. By the time you make it around, her skirt is hiked up and her hard <<getWordPenis false>> is invitingly on display.<br>
<br>
Her smile is the only invitation you need as you move between her legs and bring your lips to her glistening tip. Your lips glide over her smooth member as you start to suck.<br>
<br>
<<if setup.getTotalValue("oral") >= 15>>
With expert skill you slide her tasty cock into your mouth, your tongue doing an erotic dance that prompts her to release a quick gasp of pleasure. Blinking up at her as you run your lips over her smooth cock and it isn't long before you get your reward, a delicate, hot dose of girlcum spurting out onto your tongue.
<<elseif setup.getTotalValue("oral") >= 10>>
You have to focus not to be distracted at how sweet and feminine she tastes. Humming in delight as it smoothly slides across your tongue it doesn't take more than a few slow, sucking head-bobs before you get the cummy girl-spooge treat you were promised.
<<elseif setup.getTotalValue("oral") >= 5>>
You do your best to deploy what skills you have in such matters, but she ends up taking over to hasten things along, gently taking hold of your head and helping you set an even pace until finally she gasps and spurts hot girl-cum right into your mouth.
<<else>>
Your technique is amateurish and clumsy and she ends up helpfully taking your head in her hands, gently guiding your pace and whispering instructions that you do your best to follow. The assistance proves to be sufficient and before long you taste a fresh, hot burst of girlcum spraying into your mouth.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") >= 15>>
Even given your normal predilection for semen her girlcum tastes divine. A little sweet, a little salty and oh-so-feminine you make sure to slurp up every drop before finally separating with a contented smile.<br>
<<elseif setup.getTotalValue("cum") >= 10>>
Her salty-sweet girl-cum is a true delight, even compared to all the cum you are normally so happy to consume. Plentiful and a little thin but oh-so-feminine, you make sure to lick up every drop before leaning back with a grateful, happy smile.<br>
<<elseif setup.getTotalValue("cum") >= 5>>
Though you have started to at least tolerate the taste of cum you are surprised to find hers tastes genuinely... good. Salty and sweet and delightfully feminine, you find yourself licking up every last drop before leaning back with a surprised, but thankful, smile.<br>
<<else>>
You still think cum tastes kind of yucky, and yet hers is different, almost... good? Salty and sweet in equal measure it's the weird way it tastes distinctly feminine that really sets it apart and you can't help but slurp up every drop before finally releasing her cock from your lip's embrace.<br>
<</if>>
<br>
"@@.npc_psychiatrist;Mmm, that really hit the spot, and from the look on your face I can tell you enjoyed it too.@@" She glances down at her still half-hard <<getWordPenis false>> before pulling up her panties and sliding back down her skirt to conceal her delightful "special" feature. "@@.npc_psychiatrist;As much as I would like to go straight to round two, I think it is best we continue your session with you returning to employing a... different sort of oral skill.@@"<br>
<br>
Rising to your feet, you walk back around the desk and take your seat.<br>
<br>
"@@.npc_psychiatrist;Oh, one final thing, I imagine your supplies of cum are getting a bit low by now? Well, I still cannot offer you any more, myself, but I am sure an industrious person like yourself could... figure out a way to get more of that creamy goodness streaming in.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: decline psychiatrist's offer to blow her to thank her for providing you with cum
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You thank her for the offer, but state that you are feeling a bit full and would rather focus on your therapy.<br>
<br>
"@@.npc_psychiatrist;Hmm, you are lucky you are my patient, otherwise I might have to do something about you so cruelly blue-balling me here.@@"<br>
<br>
The smile on her face makes it clear that she is joking. Though she does shift a bit in her chair as she waits for your next topic of conversation.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about the sissy hitching post (solo)
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about being "hitched" to the post in your <<=ps(setup.getNpcName('npc_manager', 'title'))>> office and forced to suck your cummy lunch through an artificial cock while being "trained" in the techniques of fellatio.<br>
<br>
"@@.npc_psychiatrist;Ah, the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post! I was wondering when you'd get to take a ride, quite the challenge, but a bit fun, too, isn't it?@@"<br>
<br>
<<printThought "How does she know about- Has she... taken a ride on it?">><br>
<br>
[<<moveTo "event_psychiatrist_session_sissy_hitch_2" "Agree that it was kind of fun." 60 "<<set $scene.like=true>>">>]<br>
[<<moveTo "event_psychiatrist_session_sissy_hitch_2" "Say you hated it." 60 "<<set $scene.like=false>>">>]<br>
<<if $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_psychiatrist_session_sissy_hitch_2_bold" "Ask if she is speaking from experience." 60>>]
<</if>>
</div>/*#
#desc: talk about your feelings about the sissy hitching post (solo)
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.like>>
You gush about how fun it was riding the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post, and how much you feel like it could help you develop your oral talents.<br>
<br>
"@@.npc_psychiatrist;Great attitude! Every challenge is an opportunity and your eagerness to tackle this one, well... I don't think it's just your manager who will be impressed!@@"
<<else>>
You talk about how painful and uncomfortable the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post was, not to mention humiliating!<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> merely smiles. "@@.npc_psychiatrist;Ah! so you see the true utility of it as a training tool! Certainly being strapped down like that, helpless, a thick cock in both holes, forced to suck for all you've got... well, of course it's humiliating! But that's the point, to help you rise to your potential because if you can endure that, ride the post while giving it your all? Well, anyone who can do that is a <<if $fetish.sissy>>sissy <</if>>mouth-fuck-hole to be envied!@@"<br>
<br>
"@@.npc_psychiatrist;So just remember, the next time you're saddled up, that it's an opportunity! You think of it like that, keep your mind focused, and your throat relaxed and, well... "taking a ride" will switch from trouble to treat in no time!@@"
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: ask psychiatrist about her experience with sissy hitching post
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_psychiatrist', 'formal')>> if she is speaking from personal experience when she describes riding on the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post.<br>
<br>
She flashes a coy smile before switching the subject. "@@.npc_psychiatrist;Now, now, these sessions are about YOU. Let me just wish you luck on your next... ride and we can move on to something else as this new activity is slotting into your routine as smoothly as those dual cocks slide into your fun-holes.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about the sissy hitching post (duo)
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the "duel" you fought... sucked? at work mounted upon the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post.<br>
<br>
<<if $player.flags.boiless.won_sissy_post>>
You describe with pride how you managed to triumph over your strong, skilled foe, out-sucking your fellow <<if $fetish.sissy>>SISSI <</if>>Secretary to make your manager proud.<br>
<br>
"@@.npc_psychiatrist;Ah, how lovely! Isn't it wonderful when all your time spent practicing pays off? Oh, but I only wish I could have been there in person to witness your victory! Congratulations, again and I hope you get many more such opportunities in the future!@@"
<<else>>
You finish up by sadly describing your failure, how the your fellow <<if $fetish.sissy>>SISSI <</if>>Secretary's skills were just too much for you leading to you letting down your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_psychiatrist;I am sorry to hear about your defeat, guess you just need to redouble your efforts at developing into the perfect cocksucker I know you can be! As for <<=setup.getNpcName('npc_manager', 'first')>>, well... I know she is strict, but she certainly knew going in how much of a challenge you were facing. She may be disappointed in your loss, but you should take a bit of pride in the fact she had the faith in you to allow you to be her champion in the first place.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about taking hormones
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about adding hormones to your daily meals.<br>
<br>
"@@.npc_psychiatrist;Hormones! Such a lovely step. Surely it is a pity that biology does not start as we would prefer, but that is where science comes to the rescue and so it has for you! Just so you know — I reviewed your "prescription," as it were, <<if $player.sec_style.body.hormones == "forced" || $player.sec_style.body.hormones == "obedient">> and while the calibration was somewhat less than medically rigorous I find that I do agree with the assessment and you should absolutely continue to take them<<else>>everything seems to be in order, and you should continue to see positive results as you continue to take them<</if>>.@@"<br>
<br>
<<switch $player.flags.mealplan.hormones>>
<<case "none">>
Looking at her expression stifles any thought you might have had at objecting to this new addition to your routine, so you merely nod, refraining from mentioning that you have since halted your consumption of hormones.<br>
<br>
"@@.npc_psychiatrist;Hmm, well. That is certainly your choice, something to do with side effects, perhaps?@@"
<<case "little">>
Looking at her expression stifles any thought you might have had at objecting to this new addition to your routine, so you merely nod, refraining from mentioning that you have been carefully doing the minimum required to meet expectations.
<<case "normal">>
You smile, assuring her that you've been keeping up with the drugs "as prescribed." <br>
<br>
"@@.npc_psychiatrist;Such an obedient, good girl! Well, just keep an eye out for side effects, in any case, the human body can be unpredictable, after all!@@"
<<case "lots">>
You beam, informing her that, actually, you've been going a bit "above prescription" and loving it.<br>
<br>
"@@.npc_psychiatrist;I bet you do! Well, just keep an eye out for side effects and scale back if anything goes amiss.@@"
<</switch>>
<br><br>
She seems to have an idea and smiles conspiratorially before continuing. "@@.npc_psychiatrist;Speaking of side effects well... the dose you're currently on should help blossom your femininity as well as serve to... slowly enhance your lovely chest.<<if $player.body_ref.penis>> Hormones can do other wonderful things though, as well, like... well, obviously all lady lances are wonderful, but if you wanted yours to be a bit smaller that is certainly within the realm of possibility<<else>>, if that ever gets feeling excessive, you can talk to me about it<</if>>.@@"<br>
<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_psychiatrist_session_hormones_2" "Remain bashfully silent." 60 "<<set $scene.action='silent'>>">>]<<if $fetish.penis_shrink>> <<hint $options "She's liable to misinterpret this as consent">><</if>><br>
[<<moveTo "event_psychiatrist_session_hormones_2" "Say you're happy with the current hormone effects." 60 "<<set $scene.action='nochange'>>">>]<br>
[<<moveTo "event_psychiatrist_session_hormones_2" "Say you'd love it if taking hormones made you smaller." 60 "<<set $scene.action='shrink'>>">>]<br>
[<<moveTo "event_psychiatrist_session_hormones_2" "Throw a fit at the mere mention of such an idea!" 60 "<<set $scene.action='punish'>>">>]<<if $fetish.penis_shrink>> <<hint $options "She might interpret this as asking for it...">><</if>>
<<else>>
<<printNpcThemeReturn 150>>
<</if>>
</div>/*#
#desc: talk to psychiatrist about hormone penis shrinking
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'silent'>>
<<set $player.body_ref.penis_shrinking = true>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "obedient">>
<</if>>
<<case 'punish' 'silent'>>
<<if $fetish.penis_shrink>>
<<set $player.body_ref.penis_shrinking = true>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "forced">>
<</if>>
<</if>>
<</switch>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'silent'>>
You can't seem to find your voice to respond to her proposal and, after waiting for a few moments she
<<if $fetish.penis_shrink>>
just smiles.<br>
<br>
"@@.npc_psychiatrist;You are just so cute! And will certainly look even cuter a little smaller. I think if you continue to take hormones you will be very... happy with the results.@@"
<<else>>
slightly frowns.<br>
<br>
"@@.npc_psychiatrist;You really should talk about such things, we aren't doing silent therapy, after all.@@" She smiles at you in comfort. "@@.npc_psychiatrist;How about we move on to something else?@@" <<hint $options "This option has been disabled due to your fetish settings.">>
<</if>>
<<case 'nochange'>>
You reply that you aren't interested in downsizing your broadsword. She smiles.<br>
<br>
<<if setup.isItemTypeEquipped('cage')>>
"@@.npc_psychiatrist;Hmm, you like having a nice, large treasure locked away, hmm?@@" She laughs and you find yourself joining in — after all, you are
<<if $npc_manager.flags.trustplayerwithkey>>
in chastity almost all the time these days.
<<else>>
effectively permanently locked in chastity.
<</if>>
<<else>>
"@@.npc_psychiatrist;Hmm, happy with what you have? Wonderful, being satisfied with one's body is a glorious thing. But, if things change, well... let me know, and we will see what we can do make things better.@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;No matter — small, medium, large or nonexistent, all that matters is that YOU are happy with what is between your legs. Carry forth with your current hormonal regime in confidence that it will have no unwanted effects.@@"
<<case 'shrink'>>
You nod eagerly at the prospect. Sure you may spend nearly all your time in chastity, but that which you once stressed about being too small you now consider unwantedly large.<br>
<br>
She smiles. "@@.npc_psychiatrist;Just as I thought. Of course it would require surgery to COMPLETELY change things "down there," but for now hormones can help!@@"
<<case 'punish'>>
You throw a tantrum, pointing out that all of your problems trace back to a drug meant to help enlarge your <<getWordMyPenis false>> so why would she even suggest the idea of you shrinking?<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> sits patiently until you start to run out of steam then nods.
<<if $fetish.penis_shrink>>
"@@.npc_psychiatrist;Well, I see this is a very... touchy subject for you. One might even say that the lady doth protest too much, hmm? Let us move on to something else, but just know that you should continue taking your hormone supplements — they will surely give you EXACTLY what you need.@@"
<<else>>
"@@.npc_psychiatrist;Well, I see this is a very... touchy subject for you. I take your meaning and I think we can move on to less... explosive subjects.@@" <<hint $options "This option has been disabled due to your fetish settings.">>
<</if>>
<br><br>
You calm down a little, grateful to change subjects rather than dwell on painful moments from your past.
<<default>>
ERROR: unexpected scene.action: <<=$scene.action>>
<</switch>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: psychiatrist offers you money for hormones
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if $player.sec_style.body.hormones == "">>
<<set $player.sec_style.body.hormones = "money">>
<<if !$player.body_ref.penis>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<</if>>
<<set $player.flags.mealplan.hormones_unlocked = true>>
<<addCredits 100>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'supplement', 'theme_psychiatrist_supplement_2')>>
<<if _themeId != -1>>
<<set $npc_psychiatrist.themes.supplement[_themeId].done = 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> lights up at your reaction as she pulls a bottle of medicine very clearly labeled "estrogen blend" out of her desk and passes it to you.<br>
<br>
"@@.npc_psychiatrist;Here you go, just add it in with your meals and you should enjoy rapid, wonderful results. Oh, and as promised.@@" She produces a small stack of credits, sliding it across the desk alongside the bottle of hormones.<br>
<br>
A bit put off-guard by her enthusiasm, it is only after you have pocketed things and the conversation has started to move on that you realise that she placed no constraints or expectations on what you are supposed to do with the hormones.<br>
<br>
<<if $player.flags.mealplan.hormones == "none">>
<<printThought "Wait... was her so-called experiment just a ruse to give me hormones?">>
<<else>>
<<printThought "Wait... was her so-called experiment just a ruse to give me hormones? I'm already taking them anyway but hey... if you're good at something, why do it for free?">>
<</if>>
<<else>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is definitely disappointed by your decision, but she makes no further offer instead adopting a neutral expression and continuing on with the session.
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: ask psychiatrist about taking hormones
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $scene.unlockhormones = ["", "voluntary", "enthusiast"].includes($player.sec_style.body.hormones)>>
<<if $scene.unlockhormones>>
<<set $player.flags.mealplan.hormones_unlocked = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You mention how you enjoyed the way taking hormones made you feel and ask if she could give you a prescription?<br>
<br>
<<if $player.sec_style.body.hormones == "enthusiast">>
"@@.npc_psychiatrist;You mean the prescription I already gave you? Was the process so easy you forgot? Or maybe you should focus on getting a bit more sleep if you don't remember something like that!@@"
<<else>>
<<if $scene.unlockhormones>>
She smiles. "@@.npc_psychiatrist;Of course! To tell you the truth I was half tempted to just write you the note already, but, well... the mental acceptance is such an important step so I think it is for the best that you are the one that asks for it. Oh, I am just so happy for you! You are going to be just amazed how a bit of chemical help can make you blossom into the wonderful person you were always meant to be! In summary: of course you can have a prescription, pump yourself full of all those lovely anticistamines and know that medically, morally, intellectually, emotionally and in every other way your actions are sanctioned and approved.@@"
<<else>>
She smiles and rolls her eyes. "@@.npc_psychiatrist;You know I read your employee medical file, right? While she technically does not have the qualifications to do such I already know that <<=setup.getNpcName("npc_manager","first")>> has prescribed... or should I say mandated? Such measures to even you out. Now, in this case I whole-heartedly agree with her assessment, as do you, obviously, given your request. So carry forth with my official medical blessing and let those wonderful anticistamines work their Clarke's law magic.@@"
<</if>>
<br><br>
You thank her for the enthusiastic endorsement as she takes a moment to attend to things on her computer.
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about adjusting hormones
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about your continued use of hormones. <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles.<br>
<br>
"@@.npc_psychiatrist;Aren't they just lovely? That said one must always closely monitor these things, are there any changes that you find you dislike or would like to tweak?@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if $player.sec_style.body.penis_shrink == "strict">>
"@@.npc_psychiatrist;Unfortunately I can't do anything about your shrinking, you could temporarily boost your size but what <<=setup.getNpcName("npc_boss","formal")>> did to you means going back down is just a matter of time.@@"<br>
<br>
<<elseif $player.body_ref.penis_shrinking>>
[<<moveTo "event_psychiatrist_session_boiless_hormone_adjust_2" "Say you are happy with the size of your <<getWordMyPenis false>> and would rather it stopped shrinking." 60 "<<set $scene.action='penis_stop'>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_session_boiless_hormone_adjust_2" "Say you would really like it if they made your <<getWordMyPenis false>> smaller." 60 "<<set $scene.action='penis_shrink'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_boiless_hormone_adjust_2" "Ask if they could be adjusted to make your <<getWordMyPenis false>> grow?" 60 "<<set $scene.action='penis_grow'>>">>]<br>
<</if>>
<<if $player.body_ref.breast_grow>>
[<<moveTo "event_psychiatrist_session_boiless_hormone_adjust_2" "Say you are happy with the size of your breasts and would rather they remained their current size." 60 "<<set $scene.action='breast_stop'>>">>]<br>
<<else>>
[<<moveTo "event_psychiatrist_session_boiless_hormone_adjust_2" "Say you would quite like to have larger breasts." 60 "<<set $scene.action='breast_grow'>>">>]<br>
<</if>>
[<<moveTo "event_psychiatrist_session_boiless_hormone_adjust_2" "Ask if they could make your breasts shrink?" 60 "<<set $scene.action='breast_shrink'>>">>]<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about taking hormones
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'penis_stop'>>
<<set $player.body_ref.penis_shrinking = false>>
<<case 'penis_shrink'>>
<<set $player.body_ref.penis_shrinking = true>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "voluntary">>
<</if>>
<<case 'breast_grow'>>
<<set $player.body_ref.breast_grow = true>>
<<case 'breast_stop'>>
<<set $player.body_ref.breast_grow = false>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'penis_grow'>>
"@@.npc_psychiatrist;Grow? Not that I am not a fan of a nice big lady lance on occasion, but I am afraid that is quite out of the realm of this sort of pharmacology.@@"
<<case 'penis_stop'>>
"@@.npc_psychiatrist;So long as you're happy with it, of course! This prescription is all about making you the perfect you so if you like what you have now I will make it so that it stays that way...@@"<br>
<br>
"@@.npc_psychiatrist;That said environmental factors play a role as well — if you keep it too tightly locked that may cause it to slowly atrophy independent of hormonal help. Though the process will proceed more gradually, of course.@@"
<<case 'penis_shrink'>>
She smiles "@@.npc_psychiatrist;Remember that hormones can only do so much and surgery would be required to COMPLETELY change things but... well, there's just something so cute and lovely about a nice small <<getWordMyPenis false>>. Not that I don't also appreciate a big, thick cock or lady lance on occasion, but I personally find being small can be so much nicer for not getting in the way of things day to day.@@"
<<case 'breast_grow'>>
<<if $player.body.breastsize[1] >=10>>
She smiles and shakes her head. "@@.npc_psychiatrist;I dare say, my dear, those sweater puppies are as large as you they can be! Any bigger and well... this would be a whole other sort of game!@@"
<<elseif $player.body.breastsize[1] >= $player.body_ref.breastMax.hormones>>
"@@.npc_psychiatrist;Alas. I will make the adjustments, but I fear you have already reached the limits of what basic biology can produce. They are hormones, not magic, after all.@@"
<<else>>
"@@.npc_psychiatrist;Of course! Mammary growth is one of their primary purposes, after all. You just keep on taking your pills and you'll be a big girl in no time!@@"
<</if>>
<<case 'breast_stop'>>
"@@.npc_psychiatrist;Certainly. After all being too big can be a bit hard on the back or just unwieldy. Enjoy your current rack and hormones at the same time — after all that's what they're for — to help you get that perfect body of your dreams. Note that this is just in regards to hormones — other drugs may have effects beyond my control.@@"
<<case 'breast_shrink'>>
<<if $player.body.breastsize[0] == 0>>
"@@.npc_psychiatrist;Shrink? but you are already flat as a washboard! Hormones cannot concave your ribs you silly!@@"
<<else>>
"@@.npc_psychiatrist;Shrink? No, that is not possible at all, perhaps you might pursue a surgical solution? I recall a quite affordable place near campus back when I was still in school.@@"
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about Boil-Less
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set _nextDate = setup.setNextDate($now, 28, 14, 0)>>
<<addTaskById 'psychiatrist_boiless_review' _nextDate>>
<<addEvent 'boiless_delivery'>>
<<set $player.flags.mealplan.boiless_supply = 28>>
<<set $player.flags.mealplan.unlocked.pushUnique('boiless')>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> about the email your friend <<=setup.getNpcName('npc_technician', 'first')>> forwarded to you. You explain how you need signoff from a doctor to start the "trial" and could she do that for you?<br>
<br>
"@@.npc_psychiatrist;Of course I am always excited to encourage you to try out new things, though I also always search for the deeper meaning behind your actions. Is the thought of subsisting on a... liquid diet one that appeals to you?@@"<br>
<br>
As you ponder the question, she turns to her computer, clearly doing some research while still listening to you.<br>
<br>
<<if setup.getTotalValue("cum") >= 15>>
<<printThought "Mmmm, I wish I could live on just cum...">>
<<elseif setup.getTotalValue("piss") >= 15>>
<<printThought "Mmmm, I love piss, but you can't live on that alone, can you?">>
<<else>>
You explain that you'd never really thought about anything like that.
<</if>>
<br><br>
"@@.npc_psychiatrist;Hmm, I see. Well, I am willing to sign off on this, but I would like to better understand your exact motivations for making such a radical lifestyle change.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_boiless_intro_money" "Tell her it's only about getting a deal and saving money." 60>>]<br>
[<<moveTo "event_psychiatrist_session_boiless_intro_curious" "Tell her it just sounds interesting." 60>>]
</div>/*#
#desc: tell psychiatrist you're interested in Boil-Less for the money
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain that you are only interested in trying Boil-Less Pink to save money and take advantage of a deal.<br>
<br>
"@@.npc_psychiatrist;I see. Well, you have mentioned money difficulties before so I suppose I should congratulate you on seeking out new, frugal options. I see no reason to stand in your way on this matter, so I have gone ahead and communicated my approval. You should get your first shipment by the time you return to your apartment after our session.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_boiless_intro_end" "Thank her for the help." 0>>]<br>
<<if $player.flags.boiless.tasted && !$player.flags.mealplan.hormones_unlocked>>
[<<moveTo "event_psychiatrist_session_boiless_hormones" 'Recall the hormones in the sample <<=setup.getNpcName("npc_technician", "first")>> shared and ask her about getting some for yourself.'>>]
<</if>>
</div>/*#
#desc: tell psychiatrist you're interested in Boil-Less out of curiosity
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> Boil-Less was mostly just interesting to try something new, the financial side a minor bonus.<br>
<br>
"@@.npc_psychiatrist;I see. Well, that's great, I am always pleased to hear about you exploring new things. We'll never get to our best life if we don't experiment! There, I sent them my approval. If I understand this properly, you should get your first shipment by the time you return to your apartment.@@"<br>
<br>
[<<moveTo "event_psychiatrist_session_boiless_intro_end" "Thank her for the help." 0>>]<br>
<<if $player.flags.boiless.tasted && !$player.flags.mealplan.hormones_unlocked>>
[<<moveTo "event_psychiatrist_session_boiless_hormones" 'Recall the hormones in the sample <<=setup.getNpcName("npc_technician", "first")>> shared and ask her about getting some for yourself.' 0>>]
<</if>>
</div>/*#
#desc: thank psychiatrist for granting you approval to enrol in Boil-Less programme
#status: FINISHED 0.7.2.0
#ignore_spell: victi
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName('npc_psychiatrist', 'first')>> for helping you out and she smiles.<br>
<br>
"@@.npc_psychiatrist;Of course, you are one of my favourite victi — clients! Now, what else would you like to discuss?@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: tell psychiatrist how you tried technician's hormone-laced Boil-Less
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.mealplan.hormones_unlocked = true>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'supplement', 'theme_psychiatrist_supplement_2')>>
<<if _themeId != -1>>
<<set $npc_psychiatrist.themes.supplement[_themeId].done = 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain how your friend <<=setup.getNpcName('npc_technician', 'first')>> let you taste one of her batches of Boil-Less Pink into which she had mixed in some feminine hormones.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'first')>> appears concerned as she looks towards you.<br>
<br>
"@@.npc_psychiatrist;Oh! Are you feeling alright? I know I usually encourage you to try new things, but messing around with unprescribed medications can have unexpected results, do you want me to do some tests?@@"<br>
<br>
You shake your head and hurriedly assure her that everything is fine, but that the idea of a little hormonal help sounded interesting.<br>
<br>
Obvious relief turns to interest as she smiles and nods.<br>
<br>
<<if setup.getTotalValue("feminization") >= 10>>
"@@.npc_psychiatrist;Ah, that makes sense, obviously you would be interested in continuing your transformation, you look quite feminine just in those clothes, but some hormones would definitely lend your skin a nice glow and help scrub away those nasty signs of masculinity. Certainly, I can write you a prescription. In fact, I actually have some on hand, one moment.@@"
<<else>>
"@@.npc_psychiatrist;Huh, I hadn't expected you to ask about that sort of thing,@@" her voice drops to a mumble that you can barely hear, "@@.npc_psychiatrist;Not yet, at least.@@"<br>
<br>
<<printThought "Wait, not yet? What?">><br>
<br>
"@@.npc_psychiatrist;Of course I can prescribe you on hand, just give me a moment.@@"
<</if>>
<br><br>
Rising from her chair <<=setup.getNpcName('npc_psychiatrist', 'first')>> winks at you as she
<<if $npc_psychiatrist.hypnosis > 0>>
goes through the hidden door leading to her lab.
<<else>>
opens an almost invisible door secretly nestled in one of the walls.
<</if>>
<br><br>
<<printThought 'Wait, why does she have female hormones "on hand?" What type of doctor is she?'>><br>
<br>
Disappearing out of sight for a few moments she returns after less than a minute holding a plastic container.<br>
<br>
"@@.npc_psychiatrist;Here you go, that should be exactly what you need, and it's all covered by your expansive employee medical insurance so you do not even owe me a single credit! Instructions are on the side, just mix it in with your meals to get a nice even dosage spread throughout the day.@@"<br>
<br>
You thank her for the swift help and promise you'll take it home and put it with your food so you do not forget it.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: failed to show up for the psychiatrist Boil-Less review
#status: FINISHED 0.7.2.0
#*/
<<if $scene.beforetasklocation.last() == 'event_psychiatrist_1stsession_1'>>
<<initRoom>>
<<if $currentTasks.hasOwnProperty('psychiatrist_boiless_review')>>
<<completeTask 'psychiatrist_boiless_review' $now true>>
<<else>>
<<completeTask 'psychiatrist_boiless_review_failthrough' $now true>>
<<set $currentTasks.psychiatrist_boiless_review_failthrough.finished = true>>
<<set $currentTasks.psychiatrist_boiless_review_failthrough.condition = 'Complete'>>
<</if>>
<<moveTo "event_psychiatrist_boiless_review_1_1">>
<</if>>
<<set $player.location to "Call from <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall=true>>
<<set _nextDate = setup.setNextDate($now, 7, 14, 0)>>
<<if $scene.beforetasklocation.last() != 'event_psychiatrist_1stsession_1'>>
<<addTaskById 'psychiatrist_boiless_review_failthrough' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are being called by <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.<br>
<br>
"@@.npc_psychiatrist;Hello, <<=$player.first_name>>. I assume you won't make it to our psychiatric appointment today. Normally this would be no problem but... you need to report in about the end results of the Boil-Less Pink study. It is sub-optimal, but I will re-schedule you for next week.@@"<br>
<br>
<<printThought "Damn, why did I forget that?">><br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: psychiatrist asks for your review of Boil-Less at the end of trial
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty('psychiatrist_boiless_review')>>
<<completeTask 'psychiatrist_boiless_review' $now true>>
<<set $currentTasks.psychiatrist_boiless_review.finished = true>>
<<set $currentTasks.psychiatrist_boiless_review.condition = 'Complete'>>
<<else>>
<<completeTask 'psychiatrist_boiless_review_failthrough' $now true>>
<<set $currentTasks.psychiatrist_boiless_review_failthrough.finished = true>>
<<set $currentTasks.psychiatrist_boiless_review_failthrough.condition = 'Complete'>>
<</if>>
<<if $currentTasks.hasOwnProperty('psychiatrist_apointment_1')>>
<<completeTask 'psychiatrist_apointment_1' $now true>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_camgirl_strict') && $player.sec_style.sex.camgirl>>
<<completeTask 'task_camgirl_strict' $now true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You wait in the lobby until <<=setup.getNpcName('npc_psychiatrist', 'formal')>> walks out of her office and waves you in with a smile. She motions for you to take a seat and then is immediately to business.<br>
<br>
"@@.npc_psychiatrist;Before we get into the normal session we need to attend to the business of evaluating your experience participating in the Boil-Less Pink trial for the last month.<<if $currentTasks.hasOwnProperty('task_camgirl_strict')>> Speaking of lower-priority things, <<if $player.sec_style.sex.camgirl>>congratulations on embarking on a career as a camgirl, I am sure putting yourself out there will do wonders for your psyche.<<else>>I will be granting you a one week reprieve to learn to be a camgirl... get to it!<</if>><</if>>@@"<br>
<br>
She pulls a high tech blood pressure cuff out of her drawer and walks around to stand next to you.<br>
<br>
"@@.npc_psychiatrist;Need to check your vitals too, but this can take care of all of that automatically while we chat.@@"<br>
<br>
<<if setup.getTotalValue("strength") > 10>>
Tightening it over your bicep, she raises an eyebrow at your firm muscle. "@@.npc_psychiatrist;Wow, nice tone! Someone has been spending time at the gym!@@"
<<elseif setup.getTotalValue("strength") < 5>>
Tightening it over your bicep, she has to cinch it up quite a bit for your stick-like frame. "@@.npc_psychiatrist;So slender! You really should consider going to the gym sometime, just for a little tone. Being feminine doesn't mean you have to be weak.@@"
<<else>>
She tightens it around your slender bicep without comment.
<</if>>
<br><br>
<<if $player.flags.mealplan.boiless_supply <= 0>>
"@@.npc_psychiatrist;First of all, congratulations on being 100% on switching every meal to Boil-Less Pink for the past month. You are the type of guinea pig, sorry, test subject, we researchers dream of.@@"<br>
<br>
You smile and wiggle in your chair at the compliment.<br>
<br>
"@@.npc_psychiatrist;So, while we wait on the physical tests, tell me what you thought about the new mealplan and how it made you feel?@@"<br>
<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_love" "Say you love it." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_like" "Say it was good." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_money" "Say you just did it to save money." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_hate" "Say you hated it." 120>>]
<<elseif $player.flags.mealplan.boiless_supply < 7>>
"@@.npc_psychiatrist;Not bad, it seems like you mostly stuck to drinking Boil-Less Pink instead of normal meals, though you did slip up on occasion.@@"<br>
<br>
You nod, suddenly wishing you had put in a little more effort to have a "perfect" record.<br>
<br>
"@@.npc_psychiatrist;So, while we wait on those physical tests, tell me what you thought about the new mealplan and how it made you feel?@@"<br>
<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_love" "Say you love it." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_like" "Say it was good." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_money" "Say you just did it to save money." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_hate" "Say you hate it." 120>>]
<<elseif $player.flags.mealplan.boiless_supply == 28>>
"@@.npc_psychiatrist;Hmm, this interview is almost pointless as you do not seem to have used Boil-Less Pink even once! We still need to go through the checkup but, on a personal level, I am very disappointed that I did you this favour and you never took advantage of the opportunity!@@"<br>
<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_failed" "Explain yourself." 120>>]<br>
<<elseif $player.flags.mealplan.boiless_supply < 14 >>
"@@.npc_psychiatrist;Hmm, seems like you used Boil-Less Pink over half the time, I guess that's enough for decent data, though it shows a disappointing lack of commitment.@@"<br>
<br>
You feel bad for disappointing her.<br>
<br>
"@@.npc_psychiatrist;No matter. So, while we wait on those physical tests, tell me what you thought about the new mealplan and how it made you feel?@@"<br>
<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_love" "Say you love it." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_like" "Say it was good." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_money" "Say you just did it to save money." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_hate" "Say you hate it." 120>>]
<<elseif $player.flags.mealplan.boiless_supply >= 14 >>
"@@.npc_psychiatrist;You did not even take Boil-Less Pink half the time! Well, we still need to go through this interview but, on a personal level, I think it is disappointing that you were so lackadaisical in hewing to your commitment.@@"<br>
<br>
You feel quite ashamed at your near failure.<br>
<br>
"@@.npc_psychiatrist;Well, nothing to do about it now. While we wait on those physical tests, tell me what you thought about the new mealplan and how it made you feel?@@"<br>
<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_love" "Say you love it." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_like" "Say it was good." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_money" "Say you just did it to save money." 120>>]<br>
[<<moveTo "event_psychiatrist_boiless_review_1_2_hate" "Say you hate it." 120>>]
<<else>>
ERROR: This should be logically impossible
<</if>>
</div>/*#
#desc: give glowing review of Boil-Less to psychiatrist
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.body.boiless == "">>
<<set $player.sec_style.body.boiless = 'enthusiast'>>
<</if>>
<<include "startPsychSession">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You give an ebullient, enthusiastic review, talking about how much you LOVE switching to Boil-Less, from the convenience, to the taste, to the texture<<if $fetish.cum>>... to the wonderful additives <<=setup.getNpcName("npc_technician","first")>> provided you with<<else>>, to the overall way it makes you feel<</if>>.<br>
<br>
"@@.npc_psychiatrist;Lovely, lovely! The results really do speak for themselves — from your perfect usage to your obvious health and joy. I am glad this little experiment worked out so well for you, and I am personally grateful to have been able to play a part in improving your life.@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> removes the cuff from your bicep and nods in agreement.
<<if $player.flags.mealplan.boiless_supply == 0>>
"@@.npc_psychiatrist;Well, the physical results definitely support your enthusiasm. Your perfect adherence to the diet looks to have put you in the absolute prime of health, keep this up and I would estimate you could well add literal years to your life.@@"
<<elseif $player.flags.mealplan.boiless_supply < 14 >>
"@@.npc_psychiatrist;Well, the physical results definitely support your enthusiasm. Your vitals are pretty good across the board, imagine how much better you might feel if you rigidly kept to the new programme all the time!@@"
<<else>>
"@@.npc_psychiatrist;Well, the physical results definitely support your enthusiasm. Your vitals have seen a noticeable uptick, though the results are mild, probably due to you being so lax in sticking to the programme.@@"
<</if>>
<br><br>
Bundling up the medical sensor she returns to her seat. "@@.npc_psychiatrist;Well, this should be enough to file my report. Note that any remaining Boil-Less Pink mix will no longer be good. If you want to stick to this mealplan going forward, you will have to pay for it, though that is still a bargain I believe.@@"<br>
<br>
You thank her for the assistance in getting into the trial and move on to the session proper.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Visit the changing room first.' 180 "<<useClothSetPush 'psyc_outfit'>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Continue.' 180 "<<include 'startPsychSession'>>">>]
</div>/*#
#desc: give glowing review of Boil-Less to psychiatrist
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.body.boiless == "">>
<<set $player.sec_style.body.boiless = "obedient">>
<</if>>
<<include "startPsychSession">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk about convenient switching to Boil-Less Pink and how good it had you feeling.
<<if $player.sec_style.sex.boiless_bottle != "">>
<<if setup.getTotalValue("penis") >= 10>>
Especially how fun, and good practice, it is to suck every drop through your special dildo-cap'd bottle.
<<else>>
Though you note that it is a little annoying to have to suck it through the phallic-shaped special cap that your blender bottle sports.
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> removes the cuff from your bicep and nods in agreement.
<<if $player.flags.mealplan.boiless_supply == 0>>
"@@.npc_psychiatrist;Well, the physical results definitely support your enthusiasm. Your perfect adherence to the diet looks to have put you in the absolute prime of health, keep this up and I would estimate you could well add literal years to your life.@@"
<<elseif $player.flags.mealplan.boiless_supply < 14 >>
"@@.npc_psychiatrist;Well, the physical results definitely support your enthusiasm. Your vitals are pretty good across the board, imagine how much better you might feel if you rigidly kept to the new programme all the time!@@"
<<else>>
"@@.npc_psychiatrist;Well, the physical results definitely support your enthusiasm. Your vitals have seen a noticeable uptick, though the results are mild, probably due to you being so lax in sticking to the programme.@@"
<</if>>
<br><br>
Bundling up the medical sensor she returns to her seat. "@@.npc_psychiatrist;Well, this should be enough to file my report. Note that any remaining Boil-Less Pink mix will no longer be good. If you want to stick to this mealplan going forward, you will have to pay for it, though that is still a bargain I believe.@@"<br>
<br>
You thank her for the assistance in getting into the trial and move on to the session proper.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Visit the changing room first.' 180 "<<useClothSetPush 'psyc_outfit'>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Continue.' 180 "<<include 'startPsychSession'>>">>]
</div>/*#
#desc: review Boil-Less saying you just liked saving money
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.body.boiless == "">>
<<set $player.sec_style.body.boiless = "money">>
<</if>>
<<include "startPsychSession">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You note that switching mealplans was fine, and the new one is a little more convenient, but, really, you are mainly just happy at all the money you saved.
<<if $player.sec_style.sex.boiless_bottle != "">>
<<if setup.getTotalValue("penis") >= 10>>
Though, you do admit that sucking Boil-Less Pink through your new phallic "straw" is quite pleasant, and good practice.
<<else>>
Though you do wish you could drink it like a normal smoothie rather than being required to suck it through the phallus-topped "special" cap you now use.
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> removes the cuff from your bicep and nods.
<<if $player.flags.mealplan.boiless_supply == 0>>
"@@.npc_psychiatrist;Well, the physical results show that you had a personal payoff on top of saving money. Your perfect adherence to the diet looks to have put you in the absolute prime of health, keep this up and I would guess you could add literal years to your life.@@"
<<elseif $player.flags.mealplan.boiless_supply < 14>>
"@@.npc_psychiatrist;Well, the physical results show that you had a personal payoff on top of saving money. Your vitals are pretty good across the board, imagine how much better you might feel if you rigidly kept to the new programme all the time?@@"
<<else>>
"@@.npc_psychiatrist;Well, the physical results show that you had a personal payoff on top of saving money. Your vitals definitely have seen an uptick, though the results are mild, probably due to you being so lax in sticking to the programme.@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;Anyway, I hope you got some enjoyment out of things, even if you were mainly in it for the money. I have enough for my report so let's move on to your normal session.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Visit the changing room first.' 180 "<<useClothSetPush 'psyc_outfit'>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Continue.' 180 "<<include 'startPsychSession'>>">>]
</div>/*#
#desc: give negative review of Boil-Less to psychiatrist
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.body.boiless == "">>
<<set $player.sec_style.body.boiless = "forced">>
<</if>>
<<include "startPsychSession">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain that you quite disliked Boil-Less Pink.
<<if $player.sec_style.sex.boiless_bottle != "">>
<<if setup.getTotalValue("penis") >= 10>>
Though, you do admit that sucking it through your new phallic "straw" is pleasant, and good practice to boot.
<<else>>
Even worse now that you are required to suck it through the comically cock-shaped "straw" that you are now require to use.
<</if>>
<</if>><br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> removes the cuff from your bicep and nods.
<<if $player.flags.mealplan.boiless_supply == 0>>
"@@.npc_psychiatrist;Well, whatever your personal feelings I can tell you that, physically, it has made a noticeable, and positive, difference. Your perfect adherence to the diet, in spite of your displeasure, looks to have left you in the absolute prime of health, keep this up and I would guess you could add literal years to your life.@@"
<<elseif $player.flags.mealplan.boiless_supply < 14>>
"@@.npc_psychiatrist;Well, whatever your personal feelings I can tell you that, physically, it has made a noticeable, and positive, difference. Your vitals are pretty good across the board, imagine how much better you might feel if you rigidly kept to the new programme all the time?@@"
<<else>>
"@@.npc_psychiatrist;Well, whatever your personal feelings I can tell you that, physically, it has made a noticeable, and positive, difference. Your vitals definitely have seen an uptick, though the results are mild, probably due to you being so lax in sticking to the programme.@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;I am quite sorry you didn't have a more enjoyable time, though perhaps the positive effects and the money you saved helps make up for it. Now that is out of the way shall we move on with the session?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Visit the changing room first.' 180 "<<useClothSetPush 'psyc_outfit'>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Continue.' 180 "<<include 'startPsychSession'>>">>]
</div>/*#
#desc: give excuse for having failed to use Boil-Less at review time
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.mealplan.boiless_supply = 0>>
<<include "startPsychSession">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You try to come up with a reason for why you completely failed to use the Boil-Less Pink after specifically requesting it, but you can't come up with anything even remotely plausible. The way <<=setup.getNpcName('npc_psychiatrist', 'formal')>> shakes her head in disappointment stings even worse than any possible dressing-down.<br>
<br>
"@@.npc_psychiatrist;Well, I suppose "did not comply" is technically a result. Still a disappointment, also note that all of that tasty powder is now bad and should be thrown out. If you would like to give things a proper try, you will have to pay the normal daily cost for it. Anyway, shall we proceed with the session proper?@@"<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_2_changingroom' 'Visit the changing room first.' 180 "<<useClothSetPush 'psyc_outfit'>>">>]<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Continue.' 180 "<<include 'startPsychSession'>>">>]
</div>/*#
#desc: catch barista drinking Boil-Less from phallic container
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.gift = $player.sec_style.sex.boiless_bottle == "">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<if $scene.gift>>
Arriving at Cafe 52 to pick up another of your manager's coffee order you are surprised to find the barista — <<=setup.getNpcName('npc_barista', 'first')>> slurping away on a very familiar blender bottle.<br>
<br>
Turning to face you confirms it as the words Boil-Less Pink on the side indicate that it is exactly
<<if $player.flags.mealplan.base == "boiless">>
like what you use, well, not EXACTLY. Where your bottle has
<<else>>
as you thought, well, not EXACTLY. Where the bottle you have has
<</if>>
a normal snap-close lid hers sports. Well, there's really no getting around it. There is an artificial cock sprouting up from the lid, and not a short one you learn as she slurpily pulls its substantial length out of her throat and smiles at you.<br>
<br>
"@@.npc_barista;Hiya! What can I get for you today?@@"<br>
<br>
She continues to idly lick her bottle-cock as you still gawk, finally putting things together as she glances from the blender bottle to you and back with a smile.<br>
<br>
"@@.npc_barista;You like? My <<Master>>- I mean, my boss just gave it to me, says it should be easier for me to remember to eat my meals this way, plus it's, like, filled with sensors and stuff so <<he>> can monitor... something? I dunno, it sounded complicated, but that's why I have an owner, to take care of all that hard thinking. That way I can, like, focus, on OTHER hard things.@@" She announces proudly, the fact that she is still holding a dildo-augmented bottle driving home exactly what TYPE of hard things she intends to occupy her thoughts, and other parts, with.<br>
<br>
You explain how you
<<if $player.flags.mealplan.base == "boiless">>
have been trying Boil-Less Pink
<<else>>
had tried Boil-Less Pink
<</if>>
yourself, though you don't have a bottle anything like what she does.<br>
<br>
"@@.npc_barista;What? Like omigawd, you SO have to try it!@@"<br>
<br>
Before you can respond, she has shoved the bottle towards your face. Looking back at her, you doubt you're getting away without at least a little sucky sucky so you humor her and wrap your lips gently around the tip.<br>
<br>
She rolls her eyes in consternation. "@@.npc_barista;Not like that! Like THIS!@@"<br>
<br>
She demonstrates by jaming the cock hilt-deep into her throat and giving a long, moan-infused suck. "@@.npc_barista;See? Come on, I know you know how.@@"<br>
<br>
Glancing around you're glad that there's nobody else in the coffee shop at the moment.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
[<<moveTo "event_enthusiast_boiless_bottle_1" "Cock? YES! Suck on it eagerly." 120>>]<br>
<<else>>
[@@.link_locked;You are no so cock-crazed as to do more than humor her.@@]<br>
<</if>>
[<<moveTo "event_work_coffee_boiless_gift" "Humor her and suck it down." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_work_coffee_boiless_gift" "Decline her offer." 60 "<<set $scene.accept=false>>">>]
<<else>>
Arriving at Cafe 52 to pick up another of your manager's coffee order you are surprised to find the barista — <<=setup.getNpcName('npc_barista', 'first')>> slurping away on a very familiar blender bottle... and from the way she has it shoved into her mouth you estimate it has an equally familiar lid.<br>
<br>
Her eyes light up at the sight of you and she pulls the full length of the dildo "straw" out of her mouth.<br>
<br>
"@@.npc_barista;Mmm, everything is tastier sucked, isn't it?@@"<br>
<br>
You nod, noting that you, too have the same bottle and she smiles.<br>
<br>
"@@.npc_barista;Isn't it just great! I just love shoving it down my throat, 2nd best substitute for the real thing... after sharing a double dildo deepthroat kiss, that is!@@"<br>
<br>
She smiles and takes your order, reluctantly putting the bottle down while she assembles the drink. As soon as she hands the mug over, however, she snatchs up the bottle, placing one hand on the back of her head as she jams it into her face with the other, her eyes rolling back in bliss the moment her throat bulges.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to the office." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: enthusiast react to npc_barista offering Boil-Less from phallic container
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.sex.boiless_bottle = 'enthusiast'>>
<<applyExperience 'penis' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<div id="invframe" class="scrolltext">
You accept the bottle and, rather than merely drinking, begin sucking away, first tonguing the enticingly realistic tip before jamming <<if setup.getTotalValue("penis") >= 12>>the full length of the phallus<<else>>as much of the phallus as you can<</if>> down your throat with sluttish enthusiasm.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> looks on with a grin. "@@.npc_barista;I, like, knew you'd love it! It's the second best substitute for the real thing — after sharing a double dildo kiss with a friend!@@"<br>
<br>
You moan in assent, as you taste a bit of <<=ps(setup.getNpcName("npc_barista","nickname"))>> signature sweet candy flavour on the shaft, reluctant to return your new face-fuck-friend.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> winks, seemingly reading your mind. "@@.npc_barista;Tell you what — why don't you, like, keep that? I can get another one from my owner, but I can just tell you need that extra cock-with-every-meal joy!@@"<br>
<br>
You smile around your lip-spreading new friend, sucking away happily on the now-empty container as <<=setup.getNpcName("npc_barista","nickname")>> goes about filling the coffee order.<br>
<br>
[<<moveTo "event_enthusiast_boiless_bottle_2" 'Deliver <<=ps(setup.getNpcName("npc_manager","formal"))>> order.' 180>>]
</div>/*#
#desc: back to work after enthusiast Boil-Less bottle
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You deliver <<=ps(setup.getNpcName("npc_manager","formal"))>> order still happily sucking away at your new cock-bottle. <<=setup.getNpcName("npc_manager","formal")>> glances up at your work and smiles. "@@.npc_manager;Enjoying your meal? Just do not let such things distract from your work...@@"<br>
<br>
You blush and nod before returning to your desk and, somewhat reluctantly, putting the bottle away to focus on your next task.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: react to npc_barista offering Boil-Less from phallic container
#status: FINISHED 0.8.0.0
#ignore_spell: aaaanyway
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'oral' 12 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'penis' 9 'little' $SEEN_FRIEND>>
<<if $now.getUTCDay() == 5>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 1, 9, 0)>>
<</if>>
<<addWorkEvent 'boiless_lid_delivery' _nextDate>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if setup.getTotalValue("bimbofication") > 10 || setup.getTotalValue("penis") > 10>>
With an eager smile you accept <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> offer.
<<else>>
With a forced smile you continue to humor <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> eager offer.
<</if>>
<<if setup.getTotalValue("oral") > 10>>
You take the artificial cock as deep as she did, rewarded for your sucking efforts with a small burst of Boil-Less Pink.
<<else>>
You don't quite have the trained throat that she does, but you make an effort, wrapping your lips around the shaft and sliding it into your mouth as far as it will go before sucking out a small dollop of Boil-Less Pink.
<</if>>
<br><br>
"@@.npc_barista;Great, isn't it?@@" She notes,
<<if setup.getTotalValue("penis") >= 15>>
an assessment to which you readily agree — any cock is a good one to your mind.<br>
<<elseif setup.getTotalValue("penis") >= 10>>
an opinion that you find yourself sharing, the brief moment sucking something cock-like has you feeling hungry for more.<br>
<<elseif setup.getTotalValue("penis") >= 5>>
once more you humor her by just nodding, you may have grown to appreciate cocks, but not quite that much.<br>
<<else>>
you remain silent, not wanting to get into an "argument" with her about the fact you are not really interested in cocks.<br>
<</if>>
<br>
"@@.npc_barista;Aaaanyway, I'll be sure to talk to my boss and see if you can get one of these too. They're in prot-, proty-, prytotip-... testing right now, but I'm sure your manager can sign off to enrol you or something.@@"<br>
<br>
Remembering what you originally came here for, you quickly raise the issue of your manager's order and <<=setup.getNpcName('npc_barista', 'nickname')>> seems to forget the earlier discussion as she bustles to make the drink.<br>
<br>
Handing you the drink, she waves goodbye as she she shoves the artificial cock — the bottle by now empty, back into her face, sucking noisily, and happily as you walk away.
<<else>>
The large, phallic bottle looming centimetres from your lips, you carefully decline <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> offer. She looks confused, and slightly hurt, but you manage to fast-talk your way out of the situation by playing into her lusts by explaining that you don't like sucking artificial cock because of how it distracts from the far more important duty of deep-throating the real thing.<br>
<br>
"@@.npc_barista;Hmm, I guess that makes sense. I mean, as much as I love having all of my holes filled, a silicone sally just ain't the same as a nice big meat missile or lady lance. Plus, like... the bottle doesn't hold the back of the head and that's one of the best parts!@@"<br>
<br>
To emphasise her point she grabs her hair with one hand and the bottle in the other, roughly throat-fucking herself for several strokes. "@@.npc_barista;See? It just isn't the same!@@" She pouts for a moment before resuming absent-mindedly sucking on the artificial dong. "@@.npc_barista;Well, I'll wish you luck finding a real cock to suck, catch you later!@@"<br>
<br>
You nod and thank her for the well-wishes as she finishes preparing your order and you head back to the office to make the delivery.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to the office." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: cock lid for Boil-Less delivered to your office
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're puttering away working as usual when a delivery person appears and places a small inter-office mail package on your desk.<br>
<br>
You smile up at <<him>> and go to sign as you usually to, but <<he>> shakes <<his>> head.<br>
<br>
"@@.generic_male1;Sorry, Miss <<=$player.last_name>>, but I need your manager to sign for this one.@@" <<he>> looks at <<his>> tablet, "@@.generic_male1;Could you get me <<=setup.getNpcName('npc_manager', 'other')>>?@@"<br>
<br>
You nod and quickly shoot a message to <<=setup.getNpcName('npc_manager', 'formal')>>, wondering what could be so important to require her personal involvement.<br>
<br>
"@@.npc_manager;What? I was not expecting anything. Fine, I will be right out.@@"<br>
<br>
You can tell by her expression as she walks out of her office that she is annoyed at being interrupted, but she swiftly puts on a facade of friendliness before the delivery person can notice, signing for the package and thanking <<him>> for <<his>> time. With a formal nod <<he>> quickly departs, leaving you alone in the office with your manager.<br>
<br>
<<if $player.sec_style.sex.boiless_bottle != "" && $player.sec_style.sex.boiless_bottle != "obedient">>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>><br>
<<=setup.getNpcName('npc_manager', 'formal')>> has a look of suspicion on her face as she reads the label, and then rips it open to reveal a penis-enhanced bottle like the one you already own.<br>
<br>
"@@.npc_manager;Hmm, as I suspected. Well you do not need two of these things. You, after all, only have the one mouth...@@" She pauses as you find yourself imagining "double-fist" gorging yourself on the lewd devices but she merely concludes by shaking her head.<br>
<br>
"@@.npc_manager;I will forward this on to a new home. Now stop daydreaming about fellatio and get back to work.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Return to work." 60 "<<completeWorkEvent>>">>]
<<else>>
"@@.npc_manager;Hmm, from the medical R&D division? I wonder what this could be.@@" She states as she scoops up the rectangular package and casually rips it open without even removing the tape.<br>
<br>
Looking down into the box, she smiles wide before looking back up at you. "@@.npc_manager;Ooooh, you naughty girl, pulling me away from my work to sign for your perverted toys.@@"<br>
<br>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>><br>
You start to rise to get a glimpse of what she could be talking about only for her to dump the contents of the box onto your desk. Instantly you recognise it — the same blender bottle and phallic lid that <<=setup.getNpcName('npc_barista', 'first')>> had been sucking on. You had half expected (hoped?) that the slutty barista had forgotten about her promise to get you one. Apparently, she remembered.<br>
<br>
"@@.npc_manager;Come on, then, try it out!@@" she commands.<br>
<br>
[<<moveTo "event_work_boiless_lid_1_accept" "Suck on it as instructed." 60>>]<br>
[<<moveTo "event_work_boiless_lid_1_reject" "Refuse." 60>>]
<</if>>
</div>/*#
#desc: accept new phallic lid for your Boil-Less container under watchful eye of your manager
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<set $player.sec_style.sex.boiless_bottle = "obedient">>
<<applyExperience 'oral' 12 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'penis' 9 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<div id="invframe" class="scrolltext">
Nodding once obediently you bring the artificial cock to your lips as <<=setup.getNpcName('npc_manager', 'formal')>> watches on.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
Once the dildo is past your lips your natural cock-lust kicks in and you slurp on it happily, your eyes fluttering in pleasure as <<=setup.getNpcName('npc_manager', 'formal')>> nods in satisfaction.
<<elseif setup.getTotalValue("penis") >= 10>>
Wrapping your lips around the artificial cock, there's no hiding the fact that you like it, sucking and bobbing your head softly as you look up at <<=setup.getNpcName('npc_manager', 'formal')>> for approval.
<<elseif setup.getTotalValue("penis") >= 5>>
You spread your lips around the fat fake cock, afraid that if you try to go at it with the same gusto <<=setup.getNpcName('npc_barista', 'first')>> showed you will gag. Licking and slurping as theatrically as you can, you look up at <<=setup.getNpcName('npc_manager', 'formal')>> in hopes your efforts are sufficient to garner her approval.
<<else>>
You don't really have much of an idea what to do with the cock-shaped item, but you doubt asking <<=setup.getNpcName('npc_manager', 'formal')>> for advice will end well for you. Moistening your lips you try to suck on it the way you've seen girls in porn do, though you quickly discover that even just "not gagging" is a lot trickier than it looks.
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> watches your efforts for almost a minute before finally nodding and signaling you to stop.<br>
<br>
"@@.npc_manager;Very good, I am glad to see that you appreciate your new present. Going forward I think you should drink all of your meals through that new bottle. I will have you know it is more than just a fun training tool. In fact, it is a highly advanced medical device that monitors every calorie, vitamin and supplement that passes through it. That means I will be able to keep a close eye on your nutrition and all you have to do is sit and suck. Now, as fun as this has been, we both need to get back to work.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
Smiling you thank her and she pats you on the head before turning and heading back to her inner office.<br>
<<else>>
Not wanting to risk punishment you force a smile and mumble a thanks. Fortunately she seems already occupied with other matters, merely nodding in response and heading back into her inner office.<br>
<</if>>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: try to refuse new phallic lid for Boil-Less container only for manager to order you to use it anyway
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<set $player.sec_style.sex.boiless_bottle = "forced">>
<<applyExperience 'oral' 12 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'penis' 9 'insignificant' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<div id="invframe" class="scrolltext">
You look at the phallic container on your desk and shake your head.<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile dissipates in an instant as her expression goes firm.<br>
<br>
"@@.npc_manager;Are you refusing my instruction, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>? I would reconsider if I were you, otherwise I am going to jam that cock down your throat until you gag.@@"<br>
<br>
<<if setup.getTotalValue("bdsm") > 10 && setup.getTotalValue("penis") > 10>>
As excited as that prospect makes you, you feel that disobeying your Mistress at this juncture would be more "purposefully antagonising" rather than "playful disobedience."
<<else>>
You can tell from the gleam in her eye that now would not be a good time to push her.
<</if>>
Picking up the bottle, you wrap your lips around the head and look up at her as you gently suck.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
Once the dildo is past your lips your natural cock-lust kicks in and you slurp on it happily, your eyes fluttering in pleasure as <<=setup.getNpcName('npc_manager', 'formal')>> nods in satisfaction.
<<elseif setup.getTotalValue("penis") >= 10>>
Wrapping your lips around the artificial cock, there's no hiding the fact that you like it, sucking and bobbing your head softly as you look up at <<=setup.getNpcName('npc_manager', 'formal')>> for approval.
<<elseif setup.getTotalValue("penis") >= 5>>
You spread your lips around the fat fake cock, afraid that if you try to go at it with the same gusto <<=setup.getNpcName('npc_barista', 'first')>> showed you will gag. Licking and slurping as theatrically as you can, you look up at <<=setup.getNpcName('npc_manager', 'formal')>> in hopes your efforts are sufficient.
<<else>>
You don't really have much of an idea what to do with the cock-shaped item, but you doubt asking <<=setup.getNpcName('npc_manager', 'formal')>> for advice will end well for you. Moistening your lips you try to suck on it the way you've seen girls in porn do, though you quickly discover that "not gagging" is a lot trickier than it looks.
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> watches your efforts for almost a minute before finally nodding and signaling you to stop.<br>
<br>
"@@.npc_manager;That will do for now. Going forward I think you should drink all of your meals through that new bottle. I will have you know it is more than just a fun training tool. In fact, it is a highly advanced medical device that monitors every calorie, vitamin and supplement that passes through it. That means I will be able to keep a close eye on your nutrition, all you have to do is sit and suck. Now, we both need to get back to work, so thank me for your new training tool and I will be on my way.@@"<br>
<br>
You nervously thank her and she smiles, patting you on the head before turning and heading back to her inner office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager catches you drinking Boil-Less for lunch
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<set $npc_manager.flags.caught_drinking_boiless = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're sitting at your desk sipping away at your mid-day meal of Boil-Less Pink when <<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office and casually sits on your desk.<br>
<br>
<<if $player.sec_style.body.boiless == "strict">>
"@@.npc_manager;Good, good, still drinking that meal replacement as instructed. That said, while the efficiency is a boon for you to have time to attend to other lunch tasks, I suppose I should check in that there have not been any side effects. Tell me, have you been feeling any different lately, shifts in interest, in what types of things you are attracted to or are willing to do?@@"
<<else>>
"@@.npc_manager;Liquid lunch? I prefer real food, but I remember your predecessor switched to something of a similar sort. Said it helped digestion and that it was just easier, cleaner and more convenient than the commissary. Could I see the package?@@"<br>
<br>
Fortunately you haven't thrown out the packaging yet so you hand her the small plastic satchel your "meal" came in as you continue to sip away.<br>
<br>
"@@.npc_manager;Hmm, a bit of a different formula, but fairly similar, mind if I try it?@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>Obediently you<<else>>Finishing your sip, you<</if>> hand her the bottle and she takes a small sip, her gaze meeting yours as she appears to take her time tasting it.<br>
<br>
<<if $player.flags.mealplan.cum>>
"@@.npc_manager;Better flavour than I remember. Though... do I detect a bit of extra... creaminess? Did you do something naughty in your lunch? Oh, I am just teasing, <<if setup.getTotalValue("bimbofication") > 10>>though I am hardly surprised you so readily enjoy this flavour.<<else>>this tastes too <<if $options.fem>>strong<<else>>manly<</if>> to have cum out of you, who's the source... or do you even know <<his>> name?<</if>>@@"
<<else>>
"@@.npc_manager;Better flavour than I remember. I am glad you are improving your diet. I actually noticed your switch a few days ago and you seem a bit more energetic and have a certain... glow about you, keep it up.@@"
<</if>>
<br><br>
You blush slightly at her comment as she hands the bottle back to you.<br>
<br>
"@@.npc_manager;Though, I suppose I should warn you, now that I think of it. <<=setup.getNpcName('npc_secretary', 'first')>> found that, for all the positive effects there was something about subsisting on it that messed with her hormone levels. She said the first thing she noticed were some psychological effects. Tell me, have you been feeling any different lately, shifts in interest, in what types of things you are attracted to or are willing to do?@@"
<</if>>
<br><br>
You wouldn't really put it like that, and you quite doubt your new diet has anything to do with things compared to the rest of what's going on in your life... but <<=setup.getNpcName('npc_manager', 'formal')>> only lets you agree to her assessment, cutting you off with another question before you can go into details.<br>
<br>
"@@.npc_manager;Hmm, I see, and have you found your sense of taste shifting? Perhaps finding things you would once have considered disgusting to be, in fact, tolerable, or even delicious?@@"<br>
<br>
<<if $fetish.cum || $fetish.piss>>
<<if setup.getTotalValue("cum") >= 10 || setup.getTotalValue("piss") >= 10>>
There's no denying that you've become almost infatuated with the taste of <<if setup.getTotalValue("cum") >= 10 && setup.getTotalValue("piss") >= 10>>anything that spurts or flows out of a <<if $options.fem>>girl<</if>>cock<<elseif setup.getTotalValue("cum") >= 10>><<if $options.fem>>girl <</if>>cum<<elseif setup.getTotalValue("piss") >= 10>>piss<<else>>ERROR, should not happen!<</if>>.<br>
<br>
Just the thought of such things almost has your mouth watering, do you: <br>
<br>
[<<moveTo "event_manager_boiless_1_taste_agree" "Tell the truth and agree with her guess." 60 "<<set $scene.manager_boiless_lied=false>>">>]<br>
[<<moveTo "event_manager_boiless_1_taste_deny" "Lie and deny your new thirsts." 60 "<<set $scene.manager_boiless_lied=true>>">>]
<<elseif setup.getTotalValue("cum") >= 5 || setup.getTotalValue("piss") >= 5>>
While you might chalk it up to having never tried such before around when you took on this new job. You've definitely started to develop a bit of a taste for <<if setup.getTotalValue("cum") >= 5 && setup.getTotalValue("piss") >= 5>>piss and <<if $options.fem>>girl <</if>>cum, especially hot from the source<<elseif setup.getTotalValue("cum") >= 5>><<if $options.fem>>girl <</if>>cum<<elseif setup.getTotalValue("piss") >= 5>>piss<<else>>ERROR, should not happen!<</if>>.<br>
<br>
[<<moveTo "event_manager_boiless_1_taste_agree" "Agree with her theory that your tastes have changed." 60 "<<set $scene.manager_boiless_lied=false>>">>]<br>
[<<moveTo "event_manager_boiless_1_taste_deny" "Chalk it up to a newly discovered taste rather than a change." 60 "<<set $scene.manager_boiless_lied=false>>">>]
<<else>>
Though you've certainly tried some new things recently you don't feel like your sense of taste has shifted.<br>
<br>
[<<moveTo "event_manager_boiless_1_taste_agree" "Lie and say you have noticed such shifts." 60 "<<set $scene.manager_boiless_lied=true>>">>]<br>
[<<moveTo "event_manager_boiless_1_taste_deny" "Tell the truth and deny any changes in your taste preferences." 60 "<<set $scene.manager_boiless_lied=false>>">>]
<</if>>
<<else>>
[<<moveTo "event_manager_boiless_1_taste_bypass" "No... that doesn't seem to match with your experiences." 60>>]
<</if>>
</div>/*#
#desc: agree with manager's guess that your tastes have changed recently
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if $scene.manager_boiless_lied>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You agree with her estimation of your taste preferences changing and she nods sagely but with a note of concern on her face.<br>
<br>
<<if $scene.manager_boiless_lied>>
She frowns, clearly disappointed in your lie, though she makes no direct comment about it. The fact that she may be saving her displeasure for later actually scares you more than a sharp outburst would have.
<<else>>
Telling the truth feels freeing, the fact that you can do so in regards to such a personal manner making you feel a closer bond with your manager.
<</if>>
<br><br>
"@@.npc_manager;Yes, this is very similar to what happened with your predecessor, the shift in hormones can cause your senses to work differently — it is much like how a woman on the pill can be attracted to the scent of different <<if $options.fem>>people<<else>>men<</if>> than she is when off. Or those stories you hear about pregnant women having odd food cravings.@@"<br>
<br>
<<printThought "That seems like an odd example...">><br>
<br>
"@@.npc_manager;Another question, this one a bit more personal — have your masturbation habits changed at all?
<<if $npc_manager.flags.require_chastity>>
I mean, beyond the chastity <<if setup.isCage()>>cage<<else>>belt<</if>>,
<<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.chastitydays < 2>>
though with you taking the key home after work it would not really change anything for you.
<<else>>
though I guess since I always have the key that would be something of a confounder.
<</if>>
<</if>>
Well? Any change at all, frequency, style, intensity, they could all be signifiers...@@"<br>
<br>
<<if $player.flags.masturbation.dildo || $player.flags.masturbation.fuckmachine || $player.flags.masturbation.plug>>
There's no doubt you've brought yourself to orgasm in some novel ways recently, though you don't see how your diet change has anything to do with that.<br>
<br>
[<<moveTo "event_manager_boiless_1_masturbate_deny" "Pretend you haven't been doing dirty things to your body." 60 "<<set $scene.manager_boiless_lied=true>>">>]<br>
[<<moveTo "event_manager_boiless_1_masturbate_agree" "Nervously nod to confirm that her guess is accurate." 60 "<<set $scene.manager_boiless_lied=false>><<set $scene.enthusiast_masturbate=false>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 7>>
[<<moveTo "event_manager_boiless_1_masturbate_agree" "Proudly confirm that you have been learning new, better ways of pleasure." 60 "<<set $scene.manager_boiless_lied=false>><<set $scene.enthusiast_masturbate=true>>">>]
<</if>>
<<else>>
You haven't really changed your routine from what it's always been. Despite everything that has happened a quick jerk is still your preferred method.<br>
<br>
[<<moveTo "event_manager_boiless_1_masturbate_deny" "Say you haven't changed your habits." 60 "<<set $scene.manager_boiless_lied=false>>">>]<br>
[<<moveTo "event_manager_boiless_1_masturbate_agree" "Agree with her and lie that you have mixed things up." 60 "<<set $scene.manager_boiless_lied=true>>">>]
<</if>>
</div>/*#
#desc: disagree with manager's guess that your tastes have changed recently
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<if $scene.manager_boiless_lied>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You deny your sense of taste having shifted.<br>
<br>
<<if $scene.manager_boiless_lied>>
She frowns, clearly disappointed in your lying denial, though she makes no direct comment about it. The fact that she may be saving her displeasure for later actually scares you more than an outburst would have.
<<else>>
Though she seems oddly disappointed in your answer, you feel a certain strengthening of the bond between the two of you in that you can be honest about such a personal matter.
<</if>>
<br><br>
"@@.npc_manager;Very curious, usually such a drastic change in diet, especially to one that is so monotonous, would cause your sense of taste to heighten. You would be able to detect deeper complexities of flavour which would open you to new likes. The fact that this has not happened is concerning indeed.@@"<br>
<br>
<<printThought "Wait, was it a trick question?">><br>
<br>
"@@.npc_manager;Another question, this one a bit more personal — have your masturbation habits changed at all?
<<if $npc_manager.flags.require_chastity>>
I mean, beyond the chastity <<if setup.isCage()>>cage<<else>>belt<</if>>,
<<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.chastitydays < 2>>
though with you taking the key home after work it would not really change anything for you.
<<else>>
though I guess since I always have the key that would be something of a confounder.
<</if>>
<</if>>
Come on now, do not be shy, intensity, duration, area of focus?@@"<br>
<br>
<<if $player.flags.cumchastity || $player.flags.fuckedbydildo>>
There's no doubt you've cum in some... new ways recently, though you don't see how your diet change has anything to do with that.<br>
<br>
[<<moveTo "event_manager_boiless_1_masturbate_deny" "Pretend you haven't been doing dirty things to yourself." 60 "<<set $scene.manager_boiless_lied=true>>">>]<br>
[<<moveTo "event_manager_boiless_1_masturbate_agree" "Nod nervously that her guess is accurate." 60 "<<set $scene.manager_boiless_lied=false>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 7>>
[<<moveTo "event_manager_boiless_1_masturbate_agree" "Proudly confirm that you have been learning new, better ways of pleasure." 60 "<<set $scene.manager_boiless_lied=false>><<set $scene.enthusiast_masturbate=true>>">>]
<</if>>
<<else>>
<<if !$player.body_ref.penis>>
Ignoring that you no longer have a penis you don't feel like things have changed significantly.
<<else>>
You haven't really changed your routine from what it's always been. Despite everything that has happened a quick jerk is still your preferred method.
<</if>>
<br><br>
[<<moveTo "event_manager_boiless_1_masturbate_deny" "Say you haven't changed your habits." 60 "<<set $scene.manager_boiless_lied=false>>">>]<br>
[<<moveTo "event_manager_boiless_1_masturbate_agree" "Agree with her and lie that you have mixed things up." 60 "<<set $scene.manager_boiless_lied=true>>">>]
<</if>>
</div>/*#
#desc: bypass with manager's guess that your tastes have changed recently for no cum or piss fetish
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You express confusion as you note no indications that your tastes have changed. <<hint $options "Passage bypassed due to fetish flags.">><br>
<br>
"@@.npc_manager;Very curious, perhaps you just are not... sensitive to such flavours. Another question, this one a bit more personal — have your masturbation habits changed at all?
<<if $npc_manager.flags.require_chastity>>
I mean, beyond the chastity <<if setup.isCage()>>cage<<else>>belt<</if>>,
<<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.chastitydays < 2>>
though with you taking the key home after work it would not really change anything for you.
<<else>>
though I guess since I always have the key that would be something of a confounder.
<</if>>
<</if>>
Come on now, do not be shy, intensity, duration, area of focus?@@"<br>
<br>
<<if $player.flags.cumchastity || $player.flags.fuckedbydildo>>
There's no doubt you've cum in some... new ways recently, though you don't see how your diet change has anything to do with that.<br>
<br>
[<<moveTo "event_manager_boiless_1_masturbate_deny" "Pretend you haven't been doing dirty things to yourself." 60 "<<set $scene.manager_boiless_lied=true>>">>]<br>
[<<moveTo "event_manager_boiless_1_masturbate_agree" "Nod nervously that her guess is accurate." 60 "<<set $scene.manager_boiless_lied=false>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 7>>
[<<moveTo "event_manager_boiless_1_masturbate_agree" "Proudly confirm that you have been learning new, better ways of pleasure." 60 "<<set $scene.manager_boiless_lied=false>><<set $scene.enthusiast_masturbate=true>>">>]
<</if>>
<<else>>
<<if !$player.body_ref.penis>>
Ignoring that you no longer have a penis you don't feel like things have changed significantly.
<<else>>
You haven't really changed your routine from what it's always been. Despite everything that has happened a quick jerk is still your preferred method.
<</if>>
<br><br>
[<<moveTo "event_manager_boiless_1_masturbate_deny" "Say you haven't changed your habits." 60 "<<set $scene.manager_boiless_lied=false>>">>]<br>
[<<moveTo "event_manager_boiless_1_masturbate_agree" "Agree with her and lie that you have mixed things up." 60 "<<set $scene.manager_boiless_lied=true>>">>]
<</if>>
</div>/*#
#desc: agree with manager's guess that your masturbation habits have changed recently
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if $scene.manager_boiless_lied>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if $scene.enthusiast_masturbate>>
<<applyExperience 'bimbofication' 8 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.enthusiast_masturbate>>
You proudly confirm that your masturbation habits have changed — and for the better, as you are becoming addicted to being a <<if $fetish.sissy>>sissy <</if>>fuck-hole who gets off by being pounded by nice thick cocks.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods in approval. "@@.npc_manager;Very good, and appropriate... but it does confirm my concerns. Such a rapid shift in habits, well... we must take care that this lovely development becomes fixed as your new normal rather than proving merely transitory.@@"
<<else>>
<<if $player.flags.humiliationStyle == "brazen">>
You agree with her guess about your change in masturbation habits. You can tell she is a little surprised, and somewhat pleased at you forthrightness.
<<else>>
You blush as you agree with her assessment about your private activities. You can tell by her expression she quite likes your embarrassed reaction.
<</if>>
<br><br>
<<if $scene.manager_boiless_lied>>
She appears to see straight through your lie, though makes no comment. You have a feeling your agreeing may come back to haunt you at some later date.
<<else>>
You can't tell if she is impressed by your answer or not, though she does seem grateful for your truth. You feel the bond between the two of you strengthening thanks to sharing such an intimate fact.
<</if>>
<br><br>
"@@.npc_manager;Just as I feared, yes, this is a very concerning development indeed. Hormones, as you are surely aware, are very involved in our behaviours as... sexual beings. A dramatic shift like this is a clear indication that something in your body is off.@@"
<</if>>
<br><br>
You try to point out that you don't think your new diet has anything to do with things, but she cuts you off with a glance.<br>
<br>
[<<moveTo "event_manager_boiless_2" "Await her assessment." 60>>]
</div>/*#
#desc: disagree with manager's guess that your masturbation habits have changed recently
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<if $scene.manager_boiless_lied>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.manager_boiless_lied>>
You can tell she sees right through your denial, though she makes no comment save a suspicious raised eyebrow.
<<else>>
You feel like she was hoping for a more interesting answer, despite that communicating honestly about such a private manner makes you feel closer to her.
<</if>>
<br><br>
<<if $player.sec_style.body.name != "">>
"@@.npc_manager;Very curious. Normally a new woman would feel like experimenting and branching out. I would expect you to experiment and vary things up.@@"
<<else>>
"@@.npc_manager;Very curious, the process of grooming a <<if $fetish.sissy>>SISSI <</if>>Secretary typically causes them to experience additional extra-curricular urges... you being in such a rut is definitely a cause for concern.@@"
<</if>>
<br><br>
<<printThought "Wait, was that the wrong answer?">><br>
<br>
"@@.npc_manager;Hmm, yes, this is highly concerning indeed, what to do...@@"<br>
<br>
[<<moveTo "event_manager_boiless_2" "Await her judgement." 60>>]
</div>/*#
#desc: manager decides that your hormones are out of whack, adds supplements to your Boil-Less lunch and orders you to drink
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if ($player.sec_style.body.hormones == "enthusiast" || $player.sec_style.body.hormones == "voluntary") && $player.flags.mealplan.hormones != "none">>
"@@.npc_manager;Yes, it seems just as I feared, this is very similar to what happened with your predecessor. You know we have a very good medical policy for our employees and you should see about getting some supplements to even you out... actually, now that I think of it, I believe your predecessor left some of her pills behind when she moved up. I meant to forward them on but, well, I am sure she would be more than happy for you to benefit from them instead. Give me a minute to go fetch them from my office.@@"<br>
<br>
You explain that you're actually already taking hormones and <<=setup.getNpcName('npc_manager', 'formal')>> smiles even wider. "@@.npc_manager;What a good girl! So on top of things! Hmm... does that mean that sip I took already had hormones? Were you trying to drug me?@@"<br>
<br>
You freeze in fright before noticing that she is already smiling.<br>
<br>
"@@.npc_manager;Oh you are just so cute when you are afraid! It is fine, such a tiny sip could not possibly have any effect. As for you, well, go ahead and drink up!@@"<br>
<br>
[<<moveTo "event_manager_boiless_3_chug" "Bottoms up." 60>>]<br>
[<<moveTo "event_manager_boiless_3_drink" "Obey her, but sip it slowly." 60>>]
<<else>>
"@@.npc_manager;Yes, it seems just as I feared, this is very similar to what happened with your predecessor. You know we have a very good medical policy for our employees and you should see about getting some supplements to even you out... actually, now that I think of it, I believe your predecessor left some of her pills behind when she moved up. I meant to forward them on but, well, I am sure she would be more than happy for you to benefit from them instead. Give me a minute to go fetch them from my office.@@"<br>
<br>
In the middle of taking a reflexive sip of your meal, you don't have a chance to object before she disappears back into her office. She strides back towards your desk about a minute later bearing a medium-sized container. Snatching the bottle out of your hands she dumps in a small scoop of a white powder, gives things a shake and hands it back.<br>
<br>
"@@.npc_manager;Here you go! Drink up! Let's fix that imbalance and get those hormone levels back where they belong.@@"<br>
<br>
You have a feeling you can guess what <<=setup.getNpcName('npc_manager', 'formal')>> would consider a hormonal "imbalance" and thus what drinking the doctored drink is liable to do to you, but she is expectantly looming right above you...<br>
<br>
<<if $player.flags.mealplan.hormones != "none">>
You explain that, actually, you're already on hormone supplements, perhaps that is what is causing the changes?<br>
<br>
She seems initially impressed with your initiative only for her brow to narrow.<br>
<br>
"@@.npc_manager;Wait, did that drink contain hormones? Were you trying to drug me?@@"<br>
<br>
You blanch with fear, but she smiles and laughs it off.<br>
<br>
"@@.npc_manager;Oh you are just so cute when you are afraid! It is fine, such a tiny sip could not possibly have any effect. As for you, well, they say more is better, go ahead and drink up!@@"<br>
<br>
[<<moveTo "event_manager_boiless_3_chug" "Bottoms up." 60>>]<br>
[<<moveTo "event_manager_boiless_3_drink" "Obey her, but sip it slowly." 60>>]<br>
[<<moveTo "event_manager_boiless_3_reject" "Turn her down and say you're full." 60>>]
<<else>>
[<<moveTo "event_manager_boiless_3_chug" "Bottoms up." 60>>]<br>
[<<moveTo "event_manager_boiless_3_drink" "Obey her, but sip it slowly." 60>>]<br>
[<<moveTo "event_manager_boiless_3_reject" "Turn her down and say you're full." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: chug hormone-laced Boil-Less at manager's instruction, she gives + adds hormones to your requirements
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<if ($player.sec_style.body.hormones == "enthusiast" || $player.sec_style.body.hormones == "voluntary") && $player.flags.mealplan.hormones != "none">>
<<else>>
<<if $player.sec_style.body.hormones == "">>
<<set $player.sec_style.body.hormones = "obedient">>
<<if !$player.body_ref.penis>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<setTmpEffect 'hormone_first'>>
<</if>>
<<setTmpEffect 'hormone_heavy'>>
<</if>>
<<changeHorny 20>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<set $player.flags.mealplan.hormones_required = true>>
<<set $player.flags.mealplan.hormones_unlocked = true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 12, 29, false)>>
<<addTaskById 'hormones_checkin'>>
<<addEvent 'hormones_checkin' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $player.sec_style.sex.boiless_bottle != "">>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
Eager to please your <<=setup.getNpcName('npc_manager', 'title')>> you tilt the bottle back and guzzle it quickly, downing it in a matter of a few gulps before licking your lips and smiling back at her.<br>
<br>
"@@.npc_manager;Mmmm, I do love the enthusiasm, even if it may not quite be classically considered ladylike.@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 10 >>
You blush, embarrassed at your uncouth behaviour, though she smiles making clear her comment was just a joke.
<<elseif setup.getTotalValue("feminization") > 5>>
You make a quick apology, but it seems she was just making a joke and she is not actually upset with you.
<<else>>
You shrug in mild defiance, you may have to endure her requirements to keep your job, but inside you are a man and it is all just a performance.
<</if>>
<<if $player.flags.mealplan.hormones != "none">>
It's probably just in your head, given the hormones you're already taking... but you imagine an extra little kick from her bonus dose and you smile.
<<else>>
You feel a bit of tingling in your chest, throat and... in more personal places as the dose kicks in.
<<if $player.flags.manager.tookpinkpill>>
It reminds you a bit of the pink pill, though less intense, and without the psychological effects, you think.
<<else>>
The feeling is odd, and a little intense, though you don't feel bad, per se.
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Anyway, despite your alacrity the afternoon just keeps moving forward! Best the both of us get back to work. You should remember to add the hormones to your meals going forward.@@"<br>
<br>
With that she heads back into her inner office and you turn back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Back to your lunch-break." 60>>]
</div>/*#
#desc: slowly sip hormone-laced Boil-Less at manager's instruction, she gives + adds hormones to your requirements
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<if $player.sec_style.body.hormones == "">>
<<set $player.sec_style.body.hormones = "obedient">>
<<if !$player.body_ref.penis>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<setTmpEffect 'hormone_first'>>
<</if>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<changeHorny 20>>
<<set $player.flags.mealplan.hormones_unlocked = true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 12, 29, false)>>
<<addTaskById 'hormones_checkin'>>
<<addEvent 'hormones_checkin' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $player.sec_style.sex.boiless_bottle != "">>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful eye you take a sip of your doctored drink. To your surprise it actually tastes even better and before you know it you have slurped the whole thing down and are licking your lips in satisfaction.<br>
<br>
"@@.npc_manager;Ooooh, that is a very good <<if $fetish.sissy>>SISSI<<else>>girl<</if>>! You are going to be nice and healthy.@@"<br>
<br>
You feel a bit of tingling in your chest, throat and... in more personal places as the dose kicks in.
<<if $player.flags.manager.tookpinkpill>>
It reminds you a bit of the pink pill, though less intense, and without the psychological effects, you think.
<<else>>
The feeling is odd, and a little intense, though you don't feel bad, per se.
<</if>>
<br><br>
"@@.npc_manager;Well, I will just leave the rest of the container here for you to take home. I think I can already see things taking effect, you look a little brighter. For the sake of your health, you should consider adding them to your daily routine going forward.@@"<br>
<br>
<<printThought "At least she didn't make it a requirement, though she'll probably be happier if I keep taking the hormones.">><br>
<br>
"@@.npc_manager;Oh my, look at the time. Well, I am glad I could help you out, but I, the both of us, actually, need to get back to work! Have a great afternoon!@@"<br>
<br>
With that she heads back into her inner office and you head back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Back to your lunch-break." 60>>]
</div>/*#
#desc: refuse to drink hormone-laced Boil-Less at manager's instruction and she forces you to drink then she gives + adds hormones to your requirements
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<if $player.sec_style.body.hormones == "">>
<<set $player.sec_style.body.hormones = "strict">>
<<if !$player.body_ref.penis>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<setTmpEffect 'hormone_first'>>
<</if>>
<<applyExperience 'submission' 2 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 7 'very' $SEEN_FRIEND>>
<<set $player.flags.mealplan.hormones_required = true>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<changeHorny 30>>
<<setTmpEffect 'hormone_heavy'>>
<<set $player.flags.mealplan.hormones_unlocked = true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 12, 29, false)>>
<<addTaskById 'hormones_checkin'>>
<<addEvent 'hormones_checkin' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $player.sec_style.sex.boiless_bottle != "">>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
You try to talk your way out of drinking the doctored liquid, but a look of anger immediately blossoms on her face. Moving so fast it's like she teleported she is behind you, one strong hand around your chin forcing your mouth open as she brings the bottle to your lips.<br>
<br>
"@@.npc_manager;Come on now, take your medicine!@@" She commands, your cheeks swelling as you try to resist swallowing.<br>
<br>
Your resistance seems to incense her further and she pinches your nose and holds a hand over your mouth. "@@.npc_manager;Drink or drown, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>! And stop resisting! I am only doing this for your own sake!@@"<br>
<br>
You have no choice but to gulp it down, and she continues pouring the rest of the bottle down your throat like you are a goose she is raising for foie gras.<br>
<br>
<<if $player.flags.gloryhole.swallowpiss + $player.flags.gloryhole.blowjob > 3>>
"@@.npc_manager;That's it, swallow it, slut. There we go, you really do respond to those words quite nicely, but I suppose you've been spending your evenings getting in plenty of practice.@@"<br>
<br>
<<printThought "Wait, how could she know what I've done at The Usual Place?">>
<<elseif ($player.flags.gloryhole.swallowpiss + $player.flags.gloryhole.blowjob) > 0 >>
"@@.npc_manager;That's it, swallow it, slut. There we go, you really do respond to those words quite nicely, you'll be even better if you keep up with your practicing.@@"<br>
<br>
<<printThought "Wait, how could she... does she know what I've done at The Usual Place?">>
<<else>>
"@@.npc_manager;That's it, swallow it, slut. Not bad, I am sure you'll do even better once you start practicing.@@"<br>
<br>
<<printThought "Practicing? What is she talking about?">>
<</if>>
<br><br>
You cough as the last of the liquid disappears down your throat and she finally steps away.<br>
<br>
"@@.npc_manager;You are so stubborn sometimes! I will be charitable though and assume that this obstinance is just a result of your hormonal imbalance. Anyway, it is time the both of us got back to work, have a good afternoon! And you had better remember to keep taking your hormones going forward! I want my secretary to be nice and healthy!@@"<br>
<br>
As she walks away and you try to catch your breath, you feel a bit of tingling in your chest, throat and... in more personal places as the dose kicks in.
<<if $player.flags.manager.tookpinkpill>>
It reminds you a bit of the pink pill, though less intense, and without the psychological effects, you think.
<<else>>
The feeling is odd, and a little intense, though you don't feel bad, per se.
<</if>>
<br><br>
Still catching your breath, you take a seat back at your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Back to your lunch-break." 60>>]
</div>/*#
#desc: manager weekly check that you've been taking hormones
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.llocation.startsWith("event_cook_training_")>>
<<if $now.getDay() == 4>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 12, 29, false)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 1, 12, 29, false)>>
<</if>>
<<addEvent 'hormones_checkin' _nextDate>>
<<set $scene.beforetasklocation.pop()>>
<<initRoom>>
<<moveTo $player.llocation>>
<<else>>
<<include "calcAtOffice">>
<<set $scene.beforeInv = false || $player.cutscene.lockinventory>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<set $scene.workEventReturn = "room_office_sissy_secretary_work_afternoon_work">>
<<if $scene.at_office>>
<<include "hormone_inspect_data">>
<<else>>
<<set $currentcall = true>>
<<if $now.getUTCDay() != 5>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 12, 29, false)>>
<<set _nextDate = setup.getNextDayOfWeek(_nextDate, random(1,4), 12, 29, true)>>
<<addEvent 'hormones_checkin' _nextDate>>
<<set $scene.hormoneInspect = true>>
<<if $scene.beforetasklocation && $scene.beforetasklocation.last() == "room_office_sissy_secretary_work_bimbo">>
<<applyExperience 'bimbofication' 10 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 10 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.at_office>>
<<if $scene.beforetasklocation && $scene.beforetasklocation.last() == "room_office_sissy_secretary_work_bimbo">>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<createAdvBGR "./images/locations/conference_room.png">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<<else>>
<<set $player.location = "Phonecall">>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $now.getUTCDay() == 5>>
You are just about ready to go when you get a message from <<=setup.getNpcName('npc_manager', 'formal')>> "@@.npc_manager;I realise I said I would check your hormone levels today but... since you do not eat lunch at the office on Fridays I will wait for next week instead. Do not take this as an excuse to slack off! I want you healthy and happy when I next check next week.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Wrap up your work." 1>>]
<<elseif $scene.at_office>>
<<if $scene.beforetasklocation && $scene.beforetasklocation.last() == "room_office_sissy_secretary_work_bimbo">>
You're busy <<if $player.sec_style.sex.anal || $player.sec_style.sex.vagina>>getting railed<<else>>sucking someone off<</if>> in a conference room when <<=setup.getNpcName('npc_manager', 'formal')>> appears, hormone reader in hand.<br>
<br>
"@@.npc_manager;There you are!@@" She notes as your <<if $player.sec_style.sex.anal || $player.sec_style.sex.vagina>> two "clients" look<<else>> "client" looks<</if>> up and momentarily pause. "@@.npc_manager;No, no, keep on using her, I do not wish to interrupt your important stress relief, but I do need to do a quick check on her...@@"<br>
<br>
<<if $player.sec_style.sex.anal || $player.sec_style.sex.vagina>><<if $options.fem>>The girls' cocks<<else>>Cocks<</if>> resume slamming in and out of you<<else>>The hand on your head grips you more firmly<</if>> as <<=setup.getNpcName('npc_manager', 'formal')>> takes a reading.<br>
<br>
<<switch $player.flags.mealplan.hormones>>
<<case "none">>
"@@.npc_manager;No, no, this will not do. I am sorry, for interrupting your pleasure release, but this medical issue needs to be attended to at once — please finish up quickly.@@"<br>
<br>
You gasp as the pace hastens and it isn't more than a minute longer before <<if $player.sec_style.sex.anal || $player.sec_style.sex.vagina>>you get a double-load injected from either end<<else>>your "client" finishes availing themself of your throat<</if>>. The whole time <<=setup.getNpcName('npc_manager', 'formal')>> acts as if this was the most normal thing in the world, waiting for the other employees to finish and leave before glaring at you and leading you back to her office.<br>
<br>
"@@.npc_manager;Come, you cannot expect to work a full shift without a proper meal...@@"<br>
<br>
<<if $player.sec_style.sex.boiless_bottle != "">>
[<<moveTo "event_manager_hormone_inspect_fail_2_1" "Follow her." 60>>]
<<else>>
[<<moveTo "event_manager_hormone_inspect_fail_1" "Follow her." 60>>]
<</if>>
<<case "little">>
"@@.npc_manager;Hmm, hormones a bit light, but acceptable. You may continue working.@@" She states before leaving the room, your<<if $player.sec_style.sex.anal || $player.sec_style.sex.vagina>> "clients" continuing fucking you apace<<else>> "client" continuing to bulge your throat<</if>>.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" 'Continue "working" your shift.' 60>>]
<<case "normal">>
"@@.npc_manager;Readings are nominal. Very good. You may continue working.@@" She states before leaving the room, your <<if $player.sec_style.sex.anal || $player.sec_style.sex.vagina>> "clients" continuing fucking you apace<<else>> "client" continuing to bulge your throat<</if>>.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" 'Continue "working" your shift.' 60>>]
<<case "lots">>
"@@.npc_manager;My my, going above and beyond, even accounting for any possible reaction to your current situation. Very good, you may resume what you were doing. Or should I say, being done.@@" She states before leaving the room, your <<if $player.sec_style.sex.anal || $player.sec_style.sex.vagina>> "clients" continuing fucking you apace<<else>> "client" continuing to bulge your throat<</if>>.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" 'Continue "working" your shift.' 60>>]
<<default>>
ERROR: unhandled hormone quantity: <<=$player.flags.mealplan.hormones>>
<</switch>>
<<else>>
<<if !$scene.at_desk>>
You've lost track of time of your lunch break when you get a message from <<=setup.getNpcName('npc_manager', 'formal')>>. You hurry back to your desk, taking your seat just in time for her to appear from her inner office.
<<else>>
<<switch $player.flags.mealplan.base>>
<<case "cheap" "premium">>
You're finishing up your midday meal when <<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office to visit you at your desk.
<<case "boiless">>
You're happily sipping away at your lunch of Boil-Less Pink when <<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office to visit you at your desk.
<<default>>
ERROR: unhandled mealplan: <<=$player.flags.mealplan.base>>
<</switch>>
<</if>>
<br><br>
<<switch $player.flags.mealplan.hormones>>
<<case "none">>
Looming over your desk, <<=setup.getNpcName('npc_manager', 'formal')>> looks down at your meal with obvious displeasure.<br>
<br>
"@@.npc_manager;What did I tell you about keeping up with your hormone supplements? They are for your own good, remember.@@"<br>
<br>
<<printThought "Wait, how could she know that? The effects can't be that visible... can they?">><br>
<br>
<<if $player.flags.boiless.inspections_failed >= 2>>
"@@.npc_manager;This repeated disobedience just cannot be tolerated. Come, my office. Now. You need a more proper meal.@@"<br>
<br>
Noting the fire in her eyes, you <<if setup.getTotalValue("submission") >= 10>>obediently<<else>>meekly<</if>> follow.<br>
<br>
<<if $player.sec_style.sex.boiless_bottle != "">>
[<<moveTo "event_manager_hormone_inspect_fail_2_1" "Follow her." 60>>]
<<else>>
[<<moveTo "event_manager_hormone_inspect_fail_1" "Follow her." 60>>]
<</if>>
<<else>>
Snatching the bottle from your hands, she unscrews the top and dumps a large satchel of hormone powder into it.<br>
<br>
"@@.npc_manager;There, that should make up for what you've already missed today, and I will otherwise merely let you off with a warning... THIS time. But remember that this is for your own good. By refusing to take your special vitamins, you are only harming yourself, and I value you too much to allow that to happen.@@"<br>
<br>
The combination of her forceful will with her almost tender closing statement has your stomach in quite a knot. Unsure what to say, you just resume drinking your newly-"enhanced" lunch, feeling the tingle of the strong dose of hormones spread through your body as she heads back to her office and you return to work.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Return to work." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
<</if>>
<<case "little">>
Whipping out a small high-tech scanner, she <<if $player.flags.mealplan.base == "boiless">>places a drop of your liquid lunch in a receptacle<<else>>swipes it over your meal<</if>> and gives a curt nod.<br>
<br>
"@@.npc_manager;Hmm, trace evidence of hormones... are you following the dosage recommendations? I suppose you are technically meeting requirements, but I believe you will see much better results if you take the full recommended quantity.@@"<br>
<br>
Your anxiety fading as it seems that the impromptu inspection has passed, you watch her return to her office and turn back to your own work.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Return to work." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
<<case "normal">>
Whipping out a small high-tech scanner, she <<if $player.flags.mealplan.base == "boiless">>places a drop of your liquid lunch in a receptacle<<else>>swipes it over your meal<</if>> and smiles.<br>
<br>
"@@.npc_manager;Excellent, it appears you are taking your hormones precisely as directed. <<if $npc_manager.anger == 0 && $npc_manager.affection >= 5>>Of course, I would expect nothing less considering how obediently you follow all instructions.<<elseif $npc_manager.anger > 0 && $npc_manager.affection > 0>>I hope this is a sign of you committing to more consistently obeying instructions<<else>>I am almost surprised given your normal disobedience, but it is a happy surprise to be sure.<</if>>@@"<br>
<br>
As swiftly as she appeared, she turns and walks back into her office, the impromptu inspection passing uneventfully.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Return to work." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
<<case "lots">>
Whipping out a small high-tech scanner, she <<if $player.flags.mealplan.base == "boiless">>places a drop of your liquid lunch in a receptacle<<else>>swipes it over your meal<</if>> and grins wide.<br>
<br>
"@@.npc_manager;Oh, isn't someone ambitious! The hormone levels in your lunch are practically off the charts! I would warn you that such high dosage can have... side effects, but I imagine you would consider them to be less side effects than bonus features?@@"<br>
<br>
You blush, but do not deny the implication.
<<if $player.flags.mealplan.base == "boiless" && $fetish.piss && $npc_manager.flags.piss_drinking.available && setup.getTotalValue("piss") > 10>>
She smiles before taking the bottle out of your hand and lowering it between her legs.<br>
<br>
"@@.npc_manager;Since you are so... eager for maximum hormones, let me offer an extra dose...@@"<br>
<br>
Your heart beats faster at the sound of her stream trickling into your bottle. You watch the level rise a good centimetre before she re-attaches the lid and gives it a quick shake to mix things up.<br>
<br>
She grabs you by the hair and shoves you between her legs, "@@.npc_manager;Come on, now, clean up.@@" Your tongue extends, lapping up the final few drops of her lady lemonade, mixed in with the even stronger flavour of her arousal.<br>
<br>
She grinds against your face for but a few moments before pulling you away, but it is enough to leave you breathless as she nods towards your bottle. "@@.npc_manager;Drink up — it is better hot.@@"<br>
<br>
[<<moveTo "event_manager_hormone_inspect_piss" "Bottoms up." 300>>]<br>
[@@.link_locked;You are too thirsty for her lemonade to disobey...@@]
<<else>>
With a smile she pats you approvingly on the head and then disappears back into her inner office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Return to work." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
<</if>>
<<default>>
ERROR: unhandled hormone quantity: <<=$player.flags.mealplan.hormones>>
<</switch>>
<</if>>
<<else>>
You get a call from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<if $now.getUTCDay() == 5>>
"@@.npc_manager;Well, here it is, time for your hormone inspection... and you are not here! Of course I suppose it IS Friday so I will let you off, but you had better be good this weekend and be ready for inspection sometime next week!@@"
<<else>>
"@@.npc_manager;Do not think that you can avoid your hormone inspection just by missing work! This is about your health, after all, I can only hope you are staying on top of things, but I will continue to check!@@"
<</if>>
<br><br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $player.cutscene.lockinventory = $scene.beforeInv>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div><<if $player.flags.mealplan.hormones == "none">>
<<set $player.flags.boiless.inspections_failed += 1>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<set $player.flags.mealplan.total_hormones += 4>>
<<set $player.flags.mealplan.hormones_since_grow += 4>>
<<setTmpEffect 'hormone_heavy'>>
<<if $player.body_ref.penis_shrinking>>
<<set $player.body_ref.total_penis_shrink += 4>>
<<set $player.body_ref.hormones_since_penis_shrink += 4>>
<</if>>
<<else>>
<<set $player.flags.boiless.inspections_passed += 1>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>/*#
#desc: fail weekly manager inspection for you taking hormones
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<<set $player.sec_style.sex.boiless_bottle = "strict">>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<div id="invframe" class="scrolltext">
After marching you into her office <<=setup.getNpcName('npc_manager', 'formal')>> motions for you to close the door behind before glowering at you with anger.<br>
<br>
<<if $player.flags.boiless.inspections_passed > $player.flags.boiless.inspections_failed>>
"@@.npc_manager;I do not know what is going on inside that cute head of yours. You were doing so well taking your special hormone supplements and then screw it all up again!@@"
<<elseif $player.flags.boiless.inspections_passed > 0>>
"@@.npc_manager;I thought for a time there that you had accepted the fact that you do better with hormones, but it seems that it was just a blip against a background of disobedience.@@"
<<else>>
"@@.npc_manager;I am very cross with you. Those hormones are for your own good and you know what the effect of neglecting them is, so why do I keep catching you not taking your medicine?@@"
<</if>>
<br><br>
You gulp, bracing for the disciplinary measure that is surely about to be handed down.<br>
<br>
"@@.npc_manager;If you will not follow your medically-recommended routine willingly, well... I suppose I shall have to force it on you. Know that I take no pleasure in this sort of treatment, but I, unlike you, it seems, care deeply about your well being and I believe this is the most expedient method to get it into your ditzy brain that you need to take your supplements.@@"<br>
<br>
<<if $player.flags.mealplan.base == "boiless">>
She snatches the bottle out of your hands and unceremoniously chucks it in the trash.<br>
<br>
<<printThought "What? I need that!">><br>
<br>
<</if>>
She walks over to her desk and produces a fresh Boil-Less Pink bottle. She dumps a heaping scoop of what can only be hormone powder into it along with just enough water to turn it into a runny sludge. Looking you in the eye she screws on a lid, but a lid unlike any you have ever seen.<br>
<br>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<br>
There is no way to describe the lid as anything other than phallic; hell you think you can see actual veins etched into the sides of the thick "straw" that sprouts up from the top of the container. As you watch in confusion, she walks over to the corner of her desk where what you thought was some random executive doo-dad appears to perfectly cradle the newly-augmented bottle, the cock-shaped end bobbing provocatively over the edge of the desk.<br>
<br>
"@@.npc_manager;Now, since you will not take your supplements as prescribed, you are going to suck them down instead. Get on your knees and get to work, and do not get up until the bottle is dry.@@"<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
The sight of a cock, even a fake one, immediately has you excited and you drop to your knees as ordered before the glorious artificial phallus.
<<elseif setup.getTotalValue("submission") > 10>>
Despite the errors that brought you to this point you cannot help but obey your <<=setup.getNpcName('npc_manager', 'title')>> when in her presence, and you drop to your knees as instructed in front of the looming phallus.
<<else>>
Noting the fire blazing in her eyes you decide it would be best to do as instructed, dropping to your knees in front of the looming phallus.
<</if>>
<<if setup.getTotalValue("oral") >= 10>>
With masterful skill you take the cock into your throat, plunging it all the way in until your mouth strains around the base. To your slight consternation it appears you have to pull back slightly to apply proper suction to coax out a thick wad of runny hormones.
<<elseif setup.getTotalValue("oral") >= 5>>
This isn't your first rodeo and you wrap your lips around the artificial phallus, sucking with all your might until the first thick wad of runny hormones leaks out onto your tongue.
<<else>>
The artificial cock is thick, way bigger than your own ever was, and not exactly small even by porn conventions. Still, you manage to figure out that by wrapping your lips tight around the head and sucking hard you can coax a thick wad of runny hormones out and into your mouth.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") >= 10>>
Immediately you recognise the delicious flavour of cum spreading through your mouth. Looking up at your Mistress you smile with your eyes as you try to suck out more of the tasty treat.
<<elseif setup.getTotalValue("cum") >= 5>>
You recognise the taste of cum almost instantly, looking up with surprise even as you continue to suck.
<<elseif $player.virgin.swallow_cum_self || $player.virgin.swallow_cum_other>>
The liquid is bitter and salty, tasting almost like... cum?
<<else>>
The liquid is bitter and salty, but you cannot seem to quite place the taste...
<</if>>
<br><br>
"@@.npc_manager;Ah, you noticed that special flavour? It is just perfect for naughty girls, and you are a naughty girl, are you not? My cute little <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"<br>
<br>
Given your predicament you aren't exactly equipped to argue so you give a head-bobbing nod with the cock still in your mouth as you set to work sucking out the rest of its contents.<br>
<br>
Smiling at your efforts <<=setup.getNpcName('npc_manager', 'formal')>> walks back around her desk, returning to her work as you continue on with your own.<br>
<br>
It takes a while to suck the last thick drop of cum-flavoured hormones out of the bottle, but finally you pull away, panting as you recover from the ordeal.<br>
<br>
Noting your completion, she walks around the desk and removes the phallic-topped container before handing it to you.<br>
<br>
"@@.npc_manager;Here, it is adapted from a device created by our medical division. The advanced <<if $fetish.sissy>>sissy<<else>>girl<</if>>-sucker cap packs some sensors to monitor everything you consume through it. From now on I expect you to stick to drinking Boil-Less Pink, with hormones. Remember that I will monitoring everything you drink through it, so no more cheating your doses as I will be keeping a close eye on you to make sure you are getting all the <<if $fetish.sissy>>sissy<<else>>girly<</if>> nutrients you need.@@"<br>
<br>
Still gawking at the new container you rise to your feet and leave her office to finish off your workday.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Return to work." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
</div>/*#
#desc: manager hitches you to sissy post to drink your hormone supplement to punish you for not keeping up with requirements
#status: FINISHED 0.7.2.0
#*/
/% inspired by: sissypost1.jpg sissypost2.jpg
%/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<set $scene.firstHitch = !$player.flags.boiless.sissy_hitch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.firstHitch>>
Standing in her office, <<=setup.getNpcName('npc_manager', 'formal')>> motions for you to close the door behind before glowering at you in anger.<br>
<br>
"@@.npc_manager;What am I going to do with you if you are going to continue to skip taking your hormone supplements<<if $player.sec_style.sex.boiless_bottle != "voluntary" && $player.sec_style.sex.boiless_bottle != "money">>, even after I gave you that nice special bottle to drink out of<</if>>?@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
Embarrassed at your disobedient failure, you stare down at the floor in shame.<br>
<<elseif setup.getTotalValue("submission") >= 5>>
Intimidated by her anger, you cower before her.<br>
<<else>>
You try to stand up for yourself, but your resistance wilts under her withering gaze.<br>
<</if>>
<br>
"@@.npc_manager;Fortunately for you I... anticipated such an act of rebellion and had maintenance install a little extra feature.@@"<br>
<br>
Reaching under her desk, she flicks an unseen switch and a post slowly slides up out of the floor a metre to one side of the desk.<br>
<br>
The hot pink post rises roughly a metre high before stopping. Perhaps five centimetres across, the words<<if $fetish.sissy>> "Sissy Hitching Post" <<else>> "Girl Hitching Post" <</if>>run down its height, but that is hardly the strangest thing about it. Dangling from the top of the post is a large pink dildo, and below that... a heavy collar on a short leash. There is a horizontal rod sticking out a few centimetres above the ground directly below the dildo, complete with a second, vertically-mounted lubricated dong that is clearly meant to go "inside" whoever is kneeling to use the device. Rounding things off, a pair of pink cuffs are attached by short chains to the back end of the horizontal "seat." It seems like whoever is "mounted" on the device will forced to kneel while cuffed, collared and filled.<br>
<br>
"@@.npc_manager;Impressive, isn't it?@@" She taunts as she mounts a bottle of familiar <<if $fetish.cum>>cum-<</if>>flavoured hormones into the top of the device. You suddenly notice an additional detail — the mounting points currently sporting the dildo and horizontal rod are mirrored on the other side of the pole. "@@.npc_manager;Ah, I see that you noticed the expansion slot. For now you will be the only one lucky to use it, but perhaps if you are really good we might find you a sister to share a ride with... oh what fun competitions we could have!@@"<br>
<br>
You're too shocked to react as she walks you over to the device and guides you to your knees.<br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_1_intro" "Continue." 180>>]
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> raises the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post up from the floor and mounts the bottle of liquid hormones to the top. A single glare from her is sufficient for you to move into position, <<if setup.getItemTypeName("plug") != "">>remove the plug from your ass <</if>>and slide the lube-slick dildo into your rear hole.<br>
<br>
Standing over you she helpfully cuffs your wrists and centres the upper cock between your lips before she
<<if $scene.collar != "" && setup.getItemObj($scene.collar).hasOwnProperty("tags") && setup.getItemObj($scene.collar).tags.includes("leash_attachment")>>
links your collar to the short leash.
<<else>>
places the heavy collar around your neck.
<</if>>
<<if setup.getItemTypeName("cage") != "" && setup.isCage()>>Finally she clips the tip of your chastity cage to the post. <</if>>Less than a minute has passed and you are now stuffed from both ends and totally helpless.<br>
<br>
"@@.npc_manager;Alright, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, you know the drill, get to sucking! The better you do, the sooner you can get back to work and we would not want you to fall behind, would we? That would mean you would require punishments.@@"<br>
<br>
You moan around the cock filling your mouth in complaint, but the sound only causes <<=setup.getNpcName('npc_manager', 'formal')>> to smile and tighten the leash connected to your collar to force another half-inch of rubber dong past your lips.<br>
"@@.npc_manager;Have fun! I will be right here if you need anything!@@"<br>
<br>
Familiar with this process you have no choice but to commence to sucking lest the system decide to lance your rear with a punishing shock.<br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_2" "Work that shaft, <<if $fetish.sissy>>sissy<<else>>girl<</if>>!" 180>>]
<</if>>
</div>/*#
#desc: manager introduces you to hitching post in preparation for npc_rival
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_35'
35
'event_psychiatrist_session_sissy_hitch_1'
false
>>
<<set $player.flags.boiless.sissy_hitch = true>>
<<applyExperience 'oral' 10 'little' $SEEN_FRIEND>>
<<applyExperience 'anal' 10 'little' $SEEN_FRIEND>>
<<applyExperience 'bondage' 12 'normal' $SEEN_FRIEND>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.getItemTypeName("plug") != "">>
<<=setup.getNpcName("npc_manager","formal")>> somewhat gently removes the <<=setup.getItemTypeName("plug")>> from your ass before guiding you down onto the already lubricated dong, your pre-stretched rear accepting it with ease.
<<else>>
Glistening with lube the dildo slides into your rear passage with <<if setup.getTotalValue("anal") >= 10>>ease<<elseif setup.getTotalValue("anal") > 5>>only minor resistance<<else>>some measure of difficulty difficulty<</if>>.
<</if>>
<br><br>
She gathers your wrists and binds them behind your back before turning her attention higher. <<if $scene.collar != "" && setup.getItemObj($scene.collar).hasOwnProperty("tags") && setup.getItemObj($scene.collar).tags.includes("leash_attachment")>>Removing the collar from the device she sets it aside before clipping the short leash to the front of the collar already around your neck<<else>>Careful not to pinch anything, she swings the heavy collar around your neck, locking it with a definitive clunk<</if>>.
<br><br>
Bound as you are, your face has nowhere to go where you don't have the dildo at least pressed against your cheek. Bending it severely, <<=setup.getNpcName('npc_manager', 'formal')>> stuffs it into your mouth. Thanks to the short leash, there is now no way you can escape from the artificial <<if $options.fem>>cock<<else>>man-missile<</if>> probing past your lips.<br>
<br>
"@@.npc_manager;Alright, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, here is how this works, the device in your mouth will monitor your efforts — suction, pressure, tongue, depth... all the components that can go in to making a perfect blowjob. If you perform good enough? You get a little treat, if your performance is lacking? Well... that leash can always get a little shorter. Down below your other friend will provide bonus encouragement.@@"<br>
<br>
<<if setup.getItemTypeName("cage") != "" && setup.isCage()>>
"@@.npc_manager;Oh! I almost forgot.@@" Reaching down, she clips something from the pole to the tip of your chastity cage. With the rest of your restraints it doesn't actually restrict your movement any additional amount, but the psychological effect is quite humbling, even as the combination of your Mistress' nearby presence and the <<if $options.fem>>big twin dildos<<else>>twin obelisks of masculinity<</if>> inside you has you straining against your containment.<br>
<br>
<</if>>
Kneeling, impaled twice over and helpless, you start to wonder how you got into this situation only to almost jump as a sharp shock stabs deep into your rear.<br>
<br>
"@@.npc_manager;Tsk, tsk, get to work! You better start sucking, but good if you do not want another punishment. That was only a warning pulse at power level four. The device goes all the way to level eleven for truly naughty <<if $fetish.sissy>>sissies<<else>>girls<</if>>.@@"<br>
<br>
Not wanting to experience the hell that you imagine higher levels to be, you start bobbing your head and sucking away, shortly rewarded with your first spurt of cum-flavoured hormones.<br>
<br>
"@@.npc_manager;Good girl! You just keep that up. I am going back to work.@@"<br>
<br>
Having little other choice, you continue fellating the artificial intruder in your mouth.<br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_2" "Work that shaft, <<if $fetish.sissy>>sissy<<else>>girl<</if>>!" 180>>]
</div>/*#
#desc: suck hormone-laced drink while hitched to sissy post
#status: FINISHED 0.7.2.0
#ignore_spell: d+
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm too tied up to change clothes!">>
<<applyExperience 'oral' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bondage' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 17 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 10 'very' $SEEN_FRIEND>>
<<applyExperience 'feminization' 20 'normal' $SEEN_FRIEND>>
<<set $scene.first_time = !$player.flags.sissy_hitch>>
<<if $scene.first_time>>
<<set $player.flags.sissy_hitch = true>>
<<else>>
<<if $npc_manager.stage > 2>>
<<set $player.flags.boiless.witnessed_hitched += 1>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<switch random(1,10)>>
<<case 1 2 3>>
<<set $scene.style = "alone">>
<<case 4 5 6 7 8>>
<<set $scene.style = "witness">>
<<case 9 10>>
<<set $scene.style = "witness_alt">>
<</switch>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You continue to suck and slurp on the cock forced past your lips, your upturned eyes watching the "liquid" remaining in the feeder bottle as you steadily learn the patterns that best "please" your mechanical master.<br>
<br>
<<if setup.getTotalValue("oral") >= 15>>
Your expert face-fuck-hole easily accommodates every centimetre of the thick dong, sucking and slurping with enthusiasm as you draw forth spurt after spurt of <<if setup.getTotalValue("cum") >= 10>>tasty <</if>>hormones flooding your mouth with cummy flavour. Down below, your ass is treated to near constant reward as vibrations buzz pleasantly against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<elseif setup.getTotalValue("oral") >= 10>>
You may not have the best mouth in the world, but you know enough tricks to keep your artificial mouth-filler "entertained" and maintain a fairly steady stream of <<if setup.getTotalValue("cum") >= 10>>tasty <</if>>cum-flavoured hormones spurting into your mouth. Down below, your ass is treated to frequent vibrations that really hit your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> good.
<<elseif setup.getTotalValue("oral") >= 5>>
As best you try your meager skills with a cock are not enough to avoid punishments. Your ass takes the brunt of it in the form of deep, painful shocks, but the machine also takes the opportunity to "help" out by shortening your leash and thus steadily force even more of the dildo down your throat. Despite your difficulties you still manage to draw forth frequent spurts of cum-flavoured hormones, each <<if setup.getTotalValue("cum") >= 10>>yummy<<else>>bitter<</if>> burst joined by a pleasant buzzing in your ass that has your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> saying YES.
<<else>>
You try to make up with frantic effort what you lack in skill, but it isn't enough. Your ass is on fire from the frequent deep and painful shocks while you are a drooling gagging mess as the leash swiftly shortens to its minimum length, forcing the cock down your throat and leaving you only able to take short bobbing strokes as you lick and suck as best you can to draw out each infrequent "reward."
<</if>>
<br><br>
<<if $scene.first_time || $scene.style == "alone">>
The sound of your sucking is about the only one in the office. Restrained and with your mouth impaled, you can only stare directly ahead, barely able to see <<=setup.getNpcName('npc_manager', 'formal')>> past the cock stuffing your mouth. For the most part, she seems primarily focused on her work, only occasionally glancing in your direction.<br>
<br>
Eventually the feeder bottle empties and you finish sucking your artificial cock dry of its <<if setup.getTotalValue("cum") >= 15>>heavenly<<elseif setup.getTotalValue("cum") >= 10>>tasty<<elseif setup.getTotalValue("cum") >= 5>><<else>>foul-tasting<</if>> cum-flavoured payload. Noting your completion out of the corner of her eye, she holds up a finger to tell you to wait while she finishes her current item.<br>
<br>
Restrained as you are, you have little choice. In the process, you discover that the system is not programmed to show mercy — even though you have sucked it dry, you must continue to service the dildo in your mouth lest your ass bear the consequences of slacking off.<br>
<br>
Fortunately it is only another minute or so before <<=setup.getNpcName('npc_manager', 'formal')>> finishes up and she swiftly has you out of your restraints and back on your feet.<br>
<br>
<<if setup.getItemTypeName("plug") != "">>
Sliding your plug back home into your bum, she gives you a congratulatory pat on the rear to send you on your way.<br>
<br>
<</if>>
"@@.npc_manager;Back to work! Maybe your next ride on the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post can be less... mandated. It really is a great tool for training, and you look just great all hitched up!@@"<br>
<br>
Still in a bit of a daze, you just nod and stagger off back towards your desk.<br>
<br>
<<if $now.getUTCDay() == 5>>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
<<else>>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
<</if>>
<<else>>
As you are busy sucking away, you hear the sound of the door to her inner office swinging open. Immediately you remember that <<=setup.getNpcName('npc_manager', 'formal')>> had a meeting scheduled for this afternoon! Restrained as you are you can only barely glimpse the guest entering out of the corner of your eye.<br>
<br>
<<if $player.flags.boiless.witnessed_hitched == 1>>
Walking into the room the <<man npc_rival>> seems undisturbed by your depraved position, merely flashing a grin in your direction before speaking to <<=setup.getNpcName('npc_manager', 'formal')>>. "@@.npc_rival;Finally got the <<if $fetish.sissy>>sissy<<else>>girl<</if>> post hitched up again, eh? Should have given me the heads up and I could have brought my slut over for some practice.@@"<br>
<br>
"@@.npc_manager;Maybe some other time. I had not really planned to have her hooked up, but she was being naughty, and well, you know how it can be.@@"<br>
<br>
"@@.npc_rival;Do I indeed! Always have to show a firm hand with <<if $fetish.sissy>>sissies<<else>>girls<</if>> and act swiftly, otherwise the dumb things will never learn. Anyway, to business of a less interesting nature.@@"<br>
<br>
You try to focus on what they're saying, but the distraction in your ass, and the need to keep up with the dildo stuffing your face means you soon lose track of the technical discussion.<br>
<br>
Sucking away you have a feeling that <<=setup.getNpcName('npc_manager', 'formal')>> has changed the rules on you, the bottle is empty and the flow of hormones has stopped and yet you haven't been released. Either she has forgotten, or she wants to leave you on display for her "guest." Regardless the machine is indifferent and continues to enforce the strictures of the routine even as your jaw and tongue start to tire.<br>
<br>
Sucking on instinct you return to reality as the <<man npc_rival>> stands up. "@@.npc_rival;Look, I'm sorry, but watching this slut go at it so long I just can't leave without taking her for a whirl, do you mind?@@"<br>
<br>
"@@.npc_manager;Not at all, I bet she would be grateful for the dessert as a reward for all the hard work she has put in entertaining us.@@"<br>
<br>
You are too distracted trying to avoid any shocks in your ass to react until your leash is unclipped from the post to release you from your oral impaler, a firm hand on your head pulling you back while keeping you from falling. Your momentary emptiness is quickly resolved, as a thick, hard <<if $npc_rival.fem>><<getWordPenis false>><<else>>hunk of man-flesh<</if>> takes its place as <<he npc_rival>> uses the hand on your head and the leash to pull you down onto <<his npc_rival>> shaft.<br>
<br>
Your throat already good and open thanks to your practice you find your forehead pressed against <<his npc_rival>> <<if $npc_rival.fem>>waist<<else>>belt-buckle<</if>>, <<his npc_rival>> strong scent filling your nostrils <<if setup.getTotalValue("penis") > 10>>has you in heaven.<<else>>has you feeling quite overwhelmed.<</if>>
<br><br>
"@@.npc_rival;Alright, slut, show me what you got.@@" <<He npc_rival>> commands, loosening <<his npc_rival>> grip slightly so you can bob your head, though the angle is a bit awkward since your wrists are still cuffed and you're yet impaled below.<br>
<br>
<<if setup.getTotalValue("oral") >= 15>>
Even with how long you've just spent sucking your skills are more than enough to rise to the occasion. Sucking <<him npc_rival>> hard and deep you give <<him npc_rival>> a moaning hummer until you're about to faint, pulling back to suck a breath over the head of <<his npc_rival>> cock before going to work sucking and licking the tip aggressively.
<<elseif setup.getTotalValue("oral") >= 10>>
Even though your jaw is sore from your long suck session you do your best to make it good for <<him npc_rival>>, after all, <<he npc_rival>> is <<=ps(setup.getNpcName('npc_manager', 'formal'))>> guest and it is definitely part of a secretary's job description to make sure guests are pleased.
<<elseif setup.getTotalValue("oral") >= 5>>
You try to put some skill in it, but your jaw and tongue are just too tired and you settle for just bobbing your head up and down on <<his npc_rival>> shaft like a human onahole.
<<else>>
Even if you weren't exhausted you barely have any "oral" abilities. Fortunately <<he npc_rival>> seems more than willing to take the reins, almost literally, in that <<he npc_rival>> uses a hand in your hair and one on your leash to move you back and forth on <<his npc_rival>> shaft for a slack-jawed face-fuck.
<</if>>
<br><br>
Fortunately it would seem that watching you has made <<him npc_rival>> almost as excited as you were from enduring. You have barely started to adjust to the shape and size of <<his npc_rival>> cock compared to your artificial intruder when <<he npc_rival>> twitches and then bursts into your mouth.<br>
<br>
Pulling hard on your leash <<he npc_rival>> jams <<his npc_rival>> cock all the way down your throat, practically spraying directly into your stomach and leaving only the faint taste of <<his npc_rival>> strong seed on your tongue. Letting out a grunt as <<he npc_rival>> gives a final thrust to finish <<he npc_rival>> pulls back, almost throwing your head away from <<himself npc_rival>> as <<he npc_rival>> steps away.<br>
<br>
<<if setup.getTotalValue("oral") >= 15>>
"@@.npc_rival;Damn, you have a grade-A cocksucker on your hands. I will definitely have my girl schedule another meeting, and soon.@@"
<<elseif setup.getTotalValue("oral") >= 10>>
"@@.npc_rival;Pretty good, I thought your girl would be a bit tired from sucking so long, but she managed to pull out a few tricks. I'd love to pit her against my slut in a classic <<if $fetish.sissy>>sissy <</if>>head-to-head-of-head.@@"
<<elseif setup.getTotalValue("oral") >= 5>>
"@@.npc_rival;I can see why you broke out the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post. She definitely needs the practice, though the results are starting to show. I bet seeing my slut go to town would really motivate her to improve. I will be sure to bring her next time I swing by for a meeting.@@"
<<else>>
"@@.npc_rival;Hmm, dunno if she's just tired, but this <<if $fetish.sissy>>sissy <</if>>face-fuck hole is a D+, at best. I will be sure to bring my slut to our next meeting so she can witness how it is REALLY done.@@"
<</if>>
<br><br>
"@@.npc_manager;I will be certain to have things ready. Oh, there are just few things as beautiful as a <<if $fetish.sissy>>sissy post double-hitched<<else>>double-hitched post<</if>>.@@"<br>
<br>
Exchanging final pleasantries the <<man npc_rival>> finally departs and <<=setup.getNpcName('npc_manager', 'formal')>> helps you out of your restraints and up to your feet<<if setup.getItemTypeName("plug") != "">>, finishing off by sliding your plug back into your well-used bum<</if>>.<br>
<br>
"@@.npc_manager;Sorry that took so long, but good job, your... distracting presence definitely had <<him npc_rival>> absent-mindedly folding on a few key provisions.@@"<br>
<br>
Nodding in confused thanks, and wobbling a little bit as you rise to your feet, you leave her inner office to return to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
<<else>>
<<if $scene.style == "witness_alt">>
You do not recognise the person who walks into the room, though they seem unbothered by your current... predicament.<br>
<br>
Greeting your manager the two settle in to talk business, barely paying attention to the fact that you are sucking and slurping with a dildo buzzing away in your ass the whole time.<br>
<br>
Finally her guest departs and <<=setup.getNpcName('npc_manager', 'formal')>> comes over to release you from your restraints. You are quite grateful — the supply of cum-flavoured hormones has long-since run dry even as the system has continued to enforce the "rules" of your suck-training by punishing any failures.<br>
<br>
"@@.npc_manager;Sorry that took so long. Fortunately your hot, distracting presence seems to have helped me strike a slightly better deal than I might have obtained otherwise. I hope you have learned your lesson not to forget your hormones, right?@@"<br>
<br>
You nod, your mouth too tired to form words.<<if setup.getItemTypeName("plug") != "">> Bending over you slide the plug back into your bum.<</if>><br>
<br>
"@@.npc_manager;Good, good, though I will note that the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post is not just for bad girls. Good girls can request training as well, and if they do... well, that is one way they can learn to become GREAT girls.@@"<br>
<br>
You blush and head back to your office, massaging life back into your jaw.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
<<else>>
Your eyes go wide in surprise as you recognise the <<man npc_rival>> who witnessed one of your first "hitchings." Surprise turns to fear as you recall <<his npc_rival>> words of bringing you a "partner" as you notice the cute, provocatively-dressed Secretary walking at <<his npc_rival>> heels.<br>
<br>
Your eyes frantically flick between the <<man npc_rival>>, the Secretary and your <<=setup.getNpcName('npc_manager', 'title')>> as you wait for what is going to happen next.<br>
<br>
In your distraction you slow your pace of sucking, the post mercilessly punishing you with a shock and sending you back into head-bobbing enthusiastic effort.<br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_2_partner_1" "Keep sucking and await your fate." 300>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: suck hormone-laced drink while hitched to sissy post
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm too tied up to change clothes!">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.no_hormone>>
<<=setup.getNpcName('npc_rival', 'formal')>> looks annoyed at your enthusiasm as <<he npc_rival>> glances towards <<his npc_rival>> own <<if $fetish.sissy>>SISSI <</if>>slave.
<<else>>
Smiling at <<=setup.getNpcName('npc_manager', 'formal')>>, <<=setup.getNpcName('npc_rival', 'formal')>> nods in your direction. "@@.npc_rival;Mind if I hitch up my slut?@@"<br>
<br>
"@@.npc_manager;Not at all! It is built for two, after all.@@"
<</if>>
<br><br>
"@@.npc_rival;Hop to it!@@" The <<man npc_rival>> states, landing a hard slap on <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> bottom as she moves past. <<=setup.getNpcName('npc_sissy_secretary', 'first')>> merely glances back over their shoulder with a smile before continuing to skip over to where you are bound, obviously excited.<br>
<br>
"@@.npc_rival;So,@@" the <<man npc_rival>> states as the post is added onto and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is "hitched" into position. "@@.npc_rival;How about a little wager?@@"<br>
<br>
You're a bit distracted watching your "counterpart." You remember how <<=setup.getNpcName('npc_sissy_secretary', 'first')>> was when you first met, and the radical changes they've undergone since. Of course the same could be said of yourself but, from the leather collar, with an attachment ring peeking out the front down to the chastity device poking out from under her VERY short skirt, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is now the picture of <<if $fetish.sissy>>sissified <</if>>femininity.<br>
<br>
Obediently placing her arms behind her back for cuffing she makes a loving show of wrapping her lips around the dildo, arching her eyebrows and smiling across at you as you <<if $scene.no_hormone>>do some practice sucks<<else>>continue to suck so as to avoid punishment<</if>>.<br>
<br>
Fiddling with your leash <<=setup.getNpcName('npc_manager', 'formal')>> soon has it so that you and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> are tethered together, neither able to pull back far enough to escape your mouth-filling dildos.<br>
<br>
"@@.npc_manager;I can guess the terms, but what were you thinking for the stakes?@@"<br>
<br>
The <<man npc_rival>> grins, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> flashing a smirk and doing a quick deepthroat of the cock to show off their skills. "@@.npc_rival;Nothing comes to mind immediately, but I could always use a favour in my back pocket for the future...@@"<br>
<br>
"@@.npc_manager;Favours it is, whichever assistant proves the best cock-socket by the time we conclude our business?@@"<br>
<br>
"@@.npc_rival;Deal!@@" The <<man npc_rival>> announces, extending <<his npc_rival>> hand to shake.<br>
<br>
Still focused on sucking so as to evade punishment, your gaze flits up towards your <<=setup.getNpcName('npc_manager', 'title')>>. Her look is both intimidating, and bolstering, though you are a bit distracted by the fact that you would swear the <<man npc_rival>> winced as <<=setup.getNpcName('npc_manager', 'formal')>> firmly shook <<his npc_rival>> hand.<br>
<br>
<<printThought "I wonder what I'll get if I win? Or what might happen if I lose...">><br>
<br>
The managers returning to their seats on either side of the large desk you hear a final command to "@@.npc_manager;Begin!@@" before you are too focused to pay attention to anything else.<br>
<br>
Like the start of a race the girl lunges forward again, sucking loudly as they deepthroat their portion of the dildo.<br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_2_partner_2" "Time to show your stuff." 300>>]
</div>/*#
#desc: sissy post competition
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm too tied up to change clothes!">>
<<set $scene.win = (setup.getTotalValue("oral") > 15 || (setup.getTotalValue("strength") > 10 && setup.getTotalValue("oral") > 10))>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_36'
36
'event_psychiatrist_session_sissy_hitch_duo_1'
false
>>
<<applyExperience 'oral' 12 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'strength' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.first_time>>
It soon proves that a two-person <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post is a very different game than solo. As well as sucking and licking to "entertain" your artificial oral companions (and suck down the final dregs of your cummy lunch) the real key to victory is to throw off your opponent by using your linked throats to throw off their rhythm with forced deepthroats — while at the same time remembering to press forward yourself lest the machine grow tired of merely lips and tongue on its tip.<br>
<br>
<<else>>
The battle is met and you focus in on your <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post duel.
<</if>>
After an initial throat-filling lunge your opponent goes on the offensive, yanking you forward as hard as she can.<br>
<br>
<<if setup.getTotalValue("strength") > 10>>
Despite her lithe appearance <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is strong, but you have surprising strength of your own. She starts off by trying to pull back, to force the dildo down your throat, but you stand rigid and then return the favour, her eyes going wide in shock.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
Your dominance asserted you lunge forward yourself, deepthroating the full length of the cock in a smooth, gliding motion, sucking the whole way down while you stare down your opponent.<br>
<br>
You remain hilted on the cock as <<=setup.getNpcName('npc_sissy_secretary', 'first')>> tries to keep up. You wait for her to falter, to lean back for breath and then you pounce, rearing back and slamming forward anew to punish her throat while maintaining complete fellating control over your own side of things.
<<elseif setup.getTotalValue("oral") > 10>>
Your dominance asserted you slide forward, letting the artificial cock glide down your throat while you stare down your opponent. Assuming a gentle head-bobbing stroke you make oral love to your artificial companion, keeping an eye on your opponent the whole time, prepared to go rigid, you easily shut down any effort she makes to throw off your rhythm.
<<elseif setup.getTotalValue("oral") > 5>>
Though you are able to shut down your opponents effort to interrupt you once she gives up and focuses on just sucking cock you start to get worried. It is obvious that she is better than you, deepthroating with ease, her tongue a blur, cheeks hollow as she sucks long and hard.<br>
<br>
You try to use your superior strength to throw her off the result being you trade off punishments as you end up distracted from your own efforts.
<<else>>
You may be stronger than your opponent, but she is way better of a cocksucker. You find yourself swinging back and forth, sucking for your life to try to avoid punishment, any time you try to use your strength to throw off your opponent only serving to kill your own rhythm and result in the both of you jerking from shocking punishment.
<</if>>
<<else>>
Despite her lithe appearance <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is strong, much stronger than yourself.
<<if setup.getTotalValue("oral") > 15>>
It doesn't matter. A consummate cocksucker you are used to <<if $fetish.futanari && $options.fem>>futas<<else>>grown <<men>><</if>> shoving their way down your throat. You take the full length of the dildo with ease and then holding at depth, sucking and slurping without needing to pull back as she tries to keep up, the look of shock on her face gradually turning to nervous fright as you make oral love to the dildo with hardly a thought paid to her efforts.
<<elseif setup.getTotalValue("oral") > 10>>
You are able to "ride out" the first lunge, but as you attempt to establish a head-bobbing, sucking rhythm you find yourself stymied repeatedly by her jerks and tugs. Too weak to fight back you manage to mostly evade punishments, but without being able to disrupt your opponents rhythm you have the feeling she's "scoring better" overall.
<<elseif setup.getTotalValue("oral") > 5>>
You almost gag on the first lunge, struggling to take the dildo to depth, more focused on just trying to survive against your opponents superior strength. You try to focus on your task, but every time you start to get in a groove she wrenchs you forward, shattering your concentration and frequently inflicting punishing shocks on you in the process.
<<else>>
From her first jerk that has you forcibly lunging forward you are a coughing, gagging mess. Drool flows freely as you just try to survive, your body repeatedly racked with punishing shocks as you struggle just to sneak in breaths, any moment of relief only because she is spending a few seconds styling on her cock, lips and tongue working like a perfect mouth fuck-hole.
<</if>>
<</if>>
<br><br>
Finally you hear <<=ps(setup.getNpcName('npc_manager', 'formal'))>> voice call "@@.npc_manager;Time!@@" You are so focused on the competition you didn't even notice her approach as she unclips your leashes, leaning you back to free your mouths from the twin cocks.<br>
<br>
<<if $scene.win>>
The announcement is a formality, <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> wilted expression confirms what you already know; you have claimed victory, even if you are unsure what prize awaits you.<br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_2_partner_3" "Wait patiently." 600>>]
<<elseif (setup.getTotalValue("strength") > 10 && setup.getTotalValue("oral") > 5) || setup.getTotalValue("oral") > 10>>
The battle was hard-fought and the nervous look on your opponents face confirms that she is no more certain of her victory than you are of yours.<br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_2_partner_3" "Time to see who won..." 600>>]
<<else>>
Whatever announcement is to come is a formality. You know you lost as you continue to cough and attempt to catch your breath.<br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_2_partner_3" "Try to catch your breath." 600>>]
<</if>>
</div>/*#
#desc: sissy post victor announcement
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm too tied up to change clothes!">>
<<if $scene.win>>
<<set $player.flags.boiless.won_sissy_post = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
"@@.npc_rival;Well, well, well! I really didn't think your <<if $fetish.sissy>>sissy<<else>>girl<</if>> had it in her. I guess you are as good a trainer as they say.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> merely smiles, gently running her fingers through your hair as you lean against her and smile with contentment.<br>
<br>
Helping <<=setup.getNpcName('npc_sissy_secretary', 'first')>> off the post and back to her feet the <<man npc_rival>> gives a parting nod before walking away. Nervously biting her lip <<=setup.getNpcName('npc_sissy_secretary', 'first')>> glances back at you a final time in awe before scurrying to follow.<br>
<br>
"@@.npc_manager;Very good, my dear. You made me very proud today, and a favour like this well... it will certainly come in handy in the future.@@"<br>
<br>
Giving you a final pat she helps you off the <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post and back to your feet.<br>
<br>
Smiling you give a little wiggle and curtsy. She laughs and nods for you to return to work.
<<else>>
"@@.npc_rival;Well, she put up a fight, but there's just no denying that I own one of the hottest throats in the building.@@"<br>
<br>
"@@.npc_manager;So it would seem.@@" She states evenly, standing beside with a hand possessively on your shoulder as the <<man npc_rival>> releases <<his npc_rival>> Secretary who straightens to her feet with a proud smile.<br>
<br>
"@@.npc_rival;I'll let you know when I'm ready to call in my favour.@@" The <<man npc_rival>> states with a smile, "@@.npc_rival;Cya around... <<=setup.getNpcName('npc_manager', 'first')>>@@"<br>
<br>
You can feel your <<=setup.getNpcName('npc_manager', 'title')>> stiffen slightly at <<his npc_rival>> casual usage of her first name, but she nods and forces a smile until the <<man npc_rival>> and <<his npc_rival>> <<if $fetish.sissy>>SISSI <</if>>Secretary Assistant leave the office.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;I suppose I should apologise for that, that little slut is a bit out of your league. Still, you made an effort, and sometimes owing people can be useful itself — they are more likely to want you to be in a position from which to fulfill the boon.@@"<br>
<br>
Releasing you she helps you back to your feet.<br>
<br>
"@@.npc_manager;Well, in any case, fun's over, back to work for you!@@"<br>
<br>
Feeling guilty of your failure despite her casual mood you give a deep curtsy before heading back to your desk.
<<else>>
"@@.npc_manager;Well, that was something of a pathetic display. You really need to focus on learning to be a proper dick-sheathing mouth fuck-hole, I dislike being shown up in my own office.@@"<br>
<br>
You wince at her words, the needling reprimand almost more painful than the whip. Releasing your bonds she leaves you to struggle back to your feet, barely paying attention as you curtsy in apology and head back to your desk.
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
</div>/*#
#desc: manager hormones bonus piss
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'piss' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<if $player.sec_style.sex.boiless_bottle != "">>
<<applyExperience 'penis' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' 7 'little' $SEEN_FRIEND>>
<</if>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $player.flags.mealplan.total_hormones += 2>>
<<set $player.flags.mealplan.hormones_since_grow += 2>>
<<set $player.flags.boiless.hormone_piss = true>>
<<setTmpEffect 'hormone_heavy'>>
<<set _piss = setup.getTotalValue("piss")>>
<<changeHorny _piss>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> smiles down as you take the bottle of piss and Boil-Less and bring it to your lips
<<if $player.sec_style.sex.boiless_bottle == "">>
and
<<else>>
playfully running your tongue over the phallic tip of the bottle before suckling on it like a teat as you
<</if>>
tilt it back.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> feminine flavour overwhelms the natural sweetness of the Boil-Less and you moan in depraved delight, overwhelmed by how
<<if setup.getTotalValue("piss") > 15>>
delicious she tastes.
<<else>>
much you have come to enjoy her taste.
<</if>>
<br><br>
She waits until you have finished every drop before giving you a gentle pat on the head. "@@.npc_manager;Good girl.@@" She states before leaving you to resume your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<if !$scene.hormoneInspect>><<completeWorkEvent>><<set $scene.hormoneInspect=false>><</if>>">>]
</div>/*#
#desc: manager introduces you to hitching post in preparation for npc_rival
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<addWorkEvent 'rival_hitch_stage4'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> summons you into her office where you see a new addition; a hot-pink post rising from the floor next to her desk. The words<<if $fetish.sissy>> "Sissy Hitching Post" <<else>> "Girl Hitching Post" <</if>>run down its height, but that is hardly the strangest thing about the five centimetre thick pole. The most eye-catching bit is probably the large double-ended pink dildo perched atop the post, and from there one's eyes trace down to a pair of heavy collars linked to the post and each other by a length of chain. A few centimetres above the ground there is a horizontal rod sticking out in either direction; aligned with the top dildos it sports a second, vertically-mounted lubricated dong on each side that is clearly meant to go "inside" whoever is kneeling to use the device. Rounding things off, a pair of pink cuffs are attached by short chains to the back end of the horizontal "seats." The overall instrument seems designed to accommodate two linked occupants — each forced to kneel while cuffed, collared, and filled.<br>
<br>
"@@.npc_manager;Impressive, is it not?@@" She notes, "@@.npc_manager;<<if $currentTasks.hasOwnProperty("hormones_checkin")>>Normally I might have deployed it to help with your hormone intake — should you have failed to keep on top of things... so far, however, that has not been an issue,<<else>>Obviously it is quite efficient for feeding operations,<</if>> but the device has another purpose. Namely, to facilitate a sort of proxy competition between two <<if $fetish.sissy>>sissy <</if>>subordinates.@@"<br>
<br>
She helps you onto one side of the device, situating you securely before screwing a nutrient bottle into a mounting point on the top.<br>
<br>
"@@.npc_manager;Might as well take advantage of the opportunity, after all. And working the post can be mighty thirsty work...@@"<br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_1_intro" "Continue." 60>>]
</div>/*#
#desc: psychiatrist topic: first stolen panties
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_9'
0
'theme_psychiatrist_panties_1'
true
>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'panties_sexdoll' _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> about how you obtained a pair of <<=ps(setup.getNpcName($player.flags.steal_panties.first_id, $player.flags.steal_panties.first_formal))>> panties.<br>
<br>
You aren't sure what sort of reaction you were expecting... and <<=setup.getNpcName("npc_psychiatrist","formal")>> maintains that uncertainty as she keeps her expression enigmatically neutral as she pauses before responding. "@@.npc_psychiatrist;Interesting, and you did not steal these, correct? I cannot condone theft...@@"<br>
<br>
<<if $player.flags.steal_panties.first_earn>>
You clarify that they were a gift... so, technically you... earned them?
<<else>>
You clarify that you recovered them after they had been discarded by their previous owner.
<</if>>
<br><br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> finally smiles. "@@.npc_psychiatrist;Oh, what fun! Panties are such an intimate symbol of femininity, it only makes sense that you would seek such as part of your exploration...@@" She gets a twinkle in her eye as she continues. "@@.npc_psychiatrist;Tell me... is this the only pair... or have there been others?@@"<br>
<br>
<<include "computeStollenPanties">>
<<if _pantiesTotal > 1>>
<<if _pantiesTotal > 2>>
[<<moveTo "theme_psychiatrist_panties_first_2" "Yes... many times." 60 "<<set $scene.lie=false>>">>]<br>
<<else>>
[<<moveTo "theme_psychiatrist_panties_first_2" "Yes..." 60 "<<set $scene.lie=false>>">>]<br>
<</if>>
[<<moveTo "theme_psychiatrist_panties_first_2" "Lie and say no." 60 "<<set $scene.lie=true>>">>]
<<else>>
[<<moveTo "theme_psychiatrist_panties_first_2" "Lie and say you have a huge collection." 60 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "theme_psychiatrist_panties_first_2" "No, just the one." 60 "<<set $scene.lie=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist topic: how many times stolen panties
#status: RELEASED 0.9.4.0
#ignore_spell: [all,mind],[a,femininity],[getting,head]
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie>>
<<applyStress 5>>
<<else>>
<<addNpcTheme 'npc_barista' 'other' 'theme_panties_barista_ask'
0
'theme_panties_barista_ask_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<include "computeStollenPanties">>
<<if $scene.lie>>
You lie and state that
<<if _pantiesTotal > 1>>
you've only obtained the one pair of panties
<<else>>
you've obtained other pairs of panties
<</if>>
and <<=setup.getNpcName("npc_psychiatrist","formal")>> frowns.<br>
<br>
"@@.npc_psychiatrist;You know that I can tell when you are lying — and to suddenly do so after you brought the topic up in the first place!@@" She shakes her head in disappointment leaving you feeling shamed. "@@.npc_psychiatrist;For therapy to be maximally effective you must trust me, otherwise you only deceive and harm yourself.@@"
<<else>>
You reply that you've
<<if _pantiesTotal > 2>>
actually started a small collection of used panties...
<<elseif _pantiesTotal > 1>>
only obtained one other pair of used panties.
<<else>>
only obtained the one pair of used panties.
<</if>>
<br><br>
"@@.npc_psychiatrist;I see, well, it is good that you brought this to me, very good, indeed...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> takes a deep breath and smiles. "@@.npc_psychiatrist;This discovery of yours, well... I think this is a wonderful idea and opportunity for you to make an exploration of different styles of femininity. Some rules: I will not condone thievery, you must either earn the panties from their original owner, or retrieve pairs that have been discarded. And this is no small task I am setting, think of all the different women you interact with — I want you to obtain a prize from them all so we can really reflect on all those wonderful facets of femininity...@@"<br>
<br>
"@@.npc_psychiatrist;And, should you assemble the full set, well...@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> grins. "@@.npc_psychiatrist;You will have not only a better, broader understanding of femininity, but you shall earn a special prize from me... including a pair of my underthings.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> laughs softly in amusement as she motions for you to continue on to the next topic.<br>
<br>
<<hint $options "Check children of [All in Your Mind] —> [Getting Right in the Head] —> [A Wide World of Femininity] achievement to track the progress of your collection.">><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div><<if !$player.flags.steal_panties.first_id>>
<<set $player.flags.steal_panties.first_earn = _earn>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_8'
0
'theme_psychiatrist_panties_first_1'
false
>>
<<set $player.flags.steal_panties.first_id = _pantiesowner_id>>
<<set $player.flags.steal_panties.first_formal = _pantiesowner_formal>>
<</if>><<set _pantiesCount = 0>>
<<set _pantiesHome = 0>>
<<if setup.checkItemInInventory('manager_panties')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('manager_panties')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_psychiatrist')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_psychiatrist')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_npc_development')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_npc_development')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_technician')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_technician')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_barista')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_barista')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_guard')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_guard')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_waitress')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_waitress')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_maid')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_maid')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_discipline')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_discipline')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_pr_sissy')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_pr_sissy')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_sexdoll')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_sexdoll')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_hucow')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_hucow')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_fit_bimbo')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_fit_bimbo')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_sissy_secretary')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_sissy_secretary')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_nun')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_nun')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_futa')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_futa')>>
<<set _pantiesHome += 1>>
<</if>>
<<if setup.checkItemInInventory('panties_prostitute')>>
<<set _pantiesCount += 1>>
<<elseif setup.checkItemOwned('panties_prostitute')>>
<<set _pantiesHome += 1>>
<</if>>
<<set _pantiesTotal = _pantiesCount + _pantiesHome>>
<<set _pantiesPossible = 16>>/*#
#desc: ask npc_barista for panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> if you could have a pair of her panties?<br>
<br>
Instead of being weirded out or offended, she merely looks slightly confused. "@@.npc_barista;My... panties? Did you, like, lose yours or something? I hope it was doing something fun! But, like... you can just go commando, right? Commando is great! Nice and easy access — just flip up your skirt, pull out the plug and boom! Ready for COCK!@@" You see her pupils dilate with excitement at the word cock and you're getting ready to get her back on track when she blinks and re-focuses on you. "@@.npc_barista;Wait... are you, like, some panty-collecting pervert? I've heard of them, like buying girl's used panties online... is that why you're asking for mine?@@"<br>
<br>
[<<moveTo "theme_panties_barista_ask_2" "Of course!" 60 "<<set $scene.perv=true>>">>]<br>
[<<moveTo "theme_panties_barista_ask_2" "No, it's nothing like that!" 60 "<<set $scene.perv=false>>">>]
</div>/*#
#desc: ask npc_barista for panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.perv>>
<<applyExperience 'bimbofication' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<set _themeId = setup.findThemeId('npc_barista', 'other', 'theme_panties_barista_ask')>>
<<set $npc_barista.themes.other[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.perv>>
You consider who you're talking to and reply that, of course you're a pervert!<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> grins and bounces in excitement. "@@.npc_barista;Yay! That's, like... so hawt! I'm getting wet just thinking about it...@@" She pauses, an excited smile splitting her face. "@@.npc_barista;Ooooh! I know! Getting wet gave me, like, the BEST idea! If I'm going to take a place in your perverted collection I wanna do it right — a pair of used panties that are just SOPPING with girl-juices!<<if State.hasPlayed("event_work_first_coffee_work_1")>> I have just the idea, too — talk to me before one of our shifts in Cafe 52 and you can, like, help earn my panties!<</if>>@@"
<<if !State.hasPlayed("event_work_first_coffee_work_1")>>
She scrunches up her expression in thought. "@@.npc_barista;Hmm... if only you could, like... work with me at Cafe 52, I get, like... soooo wet servicing customers! Maybe someday!@@"
<</if>>
<<else>>
You deny that you're that sort of pervert, though you struggle to come up with an alternate reason for why you would want <<=ps(setup.getNpcName("npc_barista","nickname"))>> panties.<br>
<br>
Fortunately for you, <<=setup.getNpcName("npc_barista","nickname")>> is her usual self, and just shrugs obliviously rather than picking apart the gaps in your reasoning. "@@.npc_barista;Aww, that's too bad! Well, like, if you ever change your mind, like, let me know? Just know that I'm not going to give them up easy! I mean, like, I am totally easy, but for this, you'd have to earn them!@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: ask barista for panties at start of shift
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
You ask about earning a pair of <<=ps(setup.getNpcName("npc_barista","nickname"))>> panties
<<if (!$fetish.milking || setup.checkItemWorn("breast_milker")) && (!$player.body_ref.penis || !$fetish.penis_milking || setup.checkItemWorn("penis_milker"))>>
and she grins, her <<if $npc_barista.flags.milking.first_seen && $fetish.milking>>milker-equipped <</if>>breasts jiggling as she bounces in excitement.<br>
<br>
"@@.npc_barista;Oh, yay! Okay, this is going to be, like, SOOOO much fun! First off, I need to get ready. Come on, you can help!@@"<br>
<br>
She puts a "back soon!" sign up on the counter and drags you off towards the changing room.<br>
<br>
[<<moveTo "event_panties_barista_work_2" "Follow after." 180>>]
<<else>>
but she shakes her head.<br>
<br>
"@@.npc_barista;Not today, hun. You see, to get my panties properly sopping wet for you I need to be, like, maximally horny — and how can I feel that way if my shift partner isn't fully embracing their job? No, if you're going to earn this, you're going to need to be fully equipped for maximum production.@@"<br>
<br>
A customer walks in and she waves you off as she turns to serve them with a smile.<br>
<br>
<<printThought "Dang, guess I'll have to try some other time... and make sure I think ahead!">><br>
<br>
<<if State.hasPlayed("event_coffee_job_milked_3") && $fetish.milking>>
[<<moveTo "event_coffee_job_milked_3" "Start your shift." 3600>>]
<<else>>
[<<moveTo "event_work_coffee_work_root" "Start your shift." 7200>>]
<</if>>
<</if>>
</div>/*#
#desc: help barista prepare for panties work
#status: RELEASED 0.9.4.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/storage.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","nickname")>> leads you into the back storage room and pulls out a locked crate, her hands trembling with excitement as she dials in a combination and opens it up to reveal a pair of MASSIVE plugs.<br>
<br>
She purrs with lust as she pulls out the first of the plugs — a thick anal device made up of several large spheres and a flexible, elongated tip, and begins lubing it up. "@@.npc_barista;My <<master>> says wearing these too much will leave me all stretched out and not useful, but today is, like, a special occasion, so I'm really eager to feel SUPER stuffed and filled!@@"<br>
<br>
You nod and look on with a touch of awe as she bends over and hikes up her ultra-short skirt to remove her already not un-sizable anal plug.<br>
<br>
You notice she isn't wearing panties and she winks as she slides the flexible tip of the plug into her rear — the long, floppy end such that she'll be filled a good half meter deep while the thicker spheres at the base will have her spread the width of a fist.<br>
<br>
It takes her a bit of wiggling, and a not inconsiderable amount of moaning, but she manages to get the entire plug into her rear, the final, largest bulb popping into her place as the curved base sucks into position between her cheeks.<br>
<br>
"@@.npc_barista;Wowza!@@" she states, already slightly breathless as she reaches for the other plug. Where the first device had been clearly designed for anal play, this one is similarly massive, but customized for vaginal insertion, with a more blunt, but still thick, hollow main shaft sporting a cluster for g-spot stimulation, along with a curving forward section<<if $fetish.sounding>> that includes a beaded urethral plug<</if>> and a set of nubs clearly meant to surround the clit.<br>
<br>
She's already leaking down her leg and her old vaginal insert slides out with ease as she carefully aligns the new toy.<br>
<br>
"@@.npc_barista;So this is specially designed to have me, like... leaking all over the place,@@" she notes as she slides the main plug<<if $fetish.sounding>> and urethral insert in sequence<<else>>into you<</if>> and then arranges the clit numbs.<br>
<br>
"@@.npc_barista;And now for the star of the show!@@" She concludes as she puts the box away and cracks the plastic on a brand new pair of panties.<br>
<br>
Not exactly the most risque cut, the panties are a little bit thick and <<=setup.getNpcName("npc_barista","nickname")>> explains, "@@.npc_barista;so these are supposed to be, like, super-absorbent, plus they've got reinforced elastic — my muscles are pretty well trained... but I ain't going to object to some help keeping these monsters from shooting out mid-shift!@@"<br>
<br>
She laughs and fixes her skirt, walking slightly bow-legged as she leads you back out to the cafe, wobbling slightly as you hear the familiar buzz of vibrators kicking in. A small line has already formed in your absence and you hurry to get the coffee flowing once more.<br>
<br>
[<<moveTo "event_panties_barista_work_3" "Start your shift." 1800>>]
</div>/*#
#desc: barista panties shift
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 30>>
<<applyExperience 'anal' 12 'very' $INCOGNITO>>
<<applyExperience 'bdsm' 13 'very' $INCOGNITO>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
You take your place behind the counter next to <<=setup.getNpcName("npc_barista","nickname")>>. It isn't long before she's leaning heavily against the counter, gasping frequently as her occupants stimulate her what seems like constantly.<br>
<br>
At first you try to count her orgasms in your head, but that soon proves impossible as she seems to be cumming nigh constantly, shuddering in place whenever she isn't occupied by a customer as you shoulder more of the work. She isn't the only one struggling through a challenging shift, however, as your various attachments seem to be working over-time compared to normal... a fact you are certain that she is aware of... and equally certain that knowledge is only further contributing to her arousal.<br>
<br>
As the shift rolls on you notice a dripping puddle forming between her feet<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>, as well as her jaw-dropping milk production<</if>>, but she soldiers on... with the possibly disturbing help of nearly constantly chewing on her signature candy...<br>
<br>
[<<moveTo "event_panties_barista_work_4" "Keep working." 3600>>]
</div>/*#
#desc: barista panties end
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/storage.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
Though she's a glassy-eyed, near drooling mess for the last half hour of your shift, <<=setup.getNpcName("npc_barista","nickname")>> somehow manages to make it through, serving up a final customer with a dazed grin before flipping the sign on the door to "CLOSED" and staggering back to the storage room.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> leans heavily against a cabinet before stumbling forward and taking a seat atop a crate, her legs spread wide, thighs slick with juices as her muscles occasionally tremble and the straining panties vibrate as they fail to completely muffled the sound of the toys within.<br>
<br>
"@@.npc_barista;Alright—@@" she pants, "@@.npc_barista;one... GASP, final challenge before you can peel off your reward. My thighs are, like... a mess. You need to crawl over here and do something about that with your tongue...@@"<br>
<br>
[<<moveTo "event_panties_barista_work_5" "Earn your reward." 600 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_panties_barista_work_5" "Actually... you need to get back to your desk." 60 "<<set $scene.lick=false>>">>]<br>
</div>/*#
#desc: barista panties lick her clean
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lick>>
<<addItem "panties_barista">>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_barista">>
<<set _pantiesowner_formal = "nickname">>
<<include "stealPanties">>
<</if>>
<<if setup.isItemEquipped('breast_milker')>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<</if>>
<<if setup.isItemEquipped('penis_milker')>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<if $scene.lick>>
<<createAdvBGR "./images/locations/storage.png" $scene.baristaImage>>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
You crawl across the floor to kneel between <<=ps(setup.getNpcName("npc_barista","nickname"))>> trembling thighs. This close up you can hear the loud, constant buzz of her toys, their sound only drowned out by her moans or occasional cry of orgasm,.<br>
<br>
Her thighs are slick and sweet with her juices, and you're forced to be constantly on your toes as she frequently jerks or spasms in either orgasm, or reaction to what you're certain have to be shocks. Despite, or perhaps because, of it all,she squirts at least once more in the time it takes you to lick them clean. Only when you lean back in triumph does she fumble for a remote to turn things off, her body going almost limp as the stimulation finally ceases.<br>
<br>
"@@.npc_barista;Take, take your prize...@@" she pants, lying almost completely limp as you peel the soaked panties down her legs, and then barely get out of the way as first one, then the other of her plugs go shooting out to skitter across the floor.<br>
<br>
"@@.npc_barista;Holy shit...@@" she moans even as she reflexively fumbles her "normal" plugs back into position. "@@.npc_barista;En- enjoy your reward.@@" She adds as she staggers back to her feet.<br>
<br>
You're still a bit shocked as she walks past you, hinging and the waist to lean down and pick up the discarded toys and tossing them into a storage bin.<br>
<br>
By the time you follow her back into the cafe she's already chewing on a fresh candy, her normal blank expression and overly-cheery smile back in place as she flips the sign back to "OPEN" and waves you good-bye.
<<else>>
You somewhat awkwardly decline <<=ps(setup.getNpcName("npc_barista","nickname"))>> request and she groans, only half-paying attention to you by the time she starts waving you off. "@@.npc_barista;Your... GASP... loss... no prize for you. If you're not going to help, get out of here!@@"<br>
<br>
You quickly retreat, the storage room door failing to meaningfully dampen the first of what are sure to be multiple screaming orgasms as you leave the cafe.
<</if>>
<br><br>
[<<moveTo "event_work_coffee_work_end_noevent" 'Return to your desk.' 60>>]
</div>/*#
#desc: ask about having fun with npc_futa at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sex_club_info.main.fun_ask = true>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_futa","first")>> if she and her <<boy>>friend would like to have some fun together this evening?<br>
<br>
<<if setup.getTotalValue("oral") > 10 && setup.getTotalValue("anal") > 10>>
She grins. "@@.npc_futa;First off, it's <<if $options.fem>>slut<<else>>boi-toy<</if>>, or fuck-toy, tonight, isn't that right, dear?@@"<br>
<br>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> blushes submissively, clearly turned on by the way she's referring to <<him>>. "@@.generic_male1;Of course, <<=setup.getNpcName("npc_futa","Mistress")>>. My duty is to be your personal pleasure holes.@@"<br>
<br>
"@@.npc_futa;My favourite holes, and don't you forget it,@@" She replies, giving <<his>> ass a squeeze as she grins. "@@.npc_futa;Say... I've got just the idea. How about a little contest? I've been telling <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> here about how skilled everyone is at work... but it'd be good for <<him>> to see it in person — how about a head to head of which of you can service my <<getWordPenis false>> the best?<<if $player.body_ref.vag>> Mouth and rear, only — wouldn't want you to have an extra hole advantage.<</if>> <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> has been trained to be the perfect sheath for me in every way... but you're company trained. So... you up for pitting your skills against <<his>>?@@"<br>
<br>
[<<moveTo "event_panties_futa_2" "You're in!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_panties_futa_2" "Maybe some other time." 60 "<<set $scene.accept=false>>">>]
<<else>>
She shakes you over. "@@.npc_futa;Sorry, hun... I, uh... may have checked out your personnel file and... I don't think you're quite rated for my equipment, if you know what I'm saying?@@"<br>
<br>
<<printThought "I guess I really could use some additional practice handling larger things...">><br>
<br>
<<include "sexClubFutaTopics">>
<</if>>
</div>/*#
#desc: agree to have fun with npc_futa at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin and state that you're up for it if <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> is.<br>
<br>
Though <<he>> looks a little intimidated by you <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> nods. "@@.generic_male1;I'll do my best to make you proud, <<=setup.getNpcName("npc_futa","Mistress")>>.@@"<br>
<br>
"@@.npc_futa;You always make me proud... well, proud and horny... speaking of, let's get this contest started. I've got several nuts to bust and four hot fuck-holes to bust them in!@@"<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> leads the way off to the sex dungeon side of the club, selecting a pair of rolling all-fours bondage restraints to have the two of you cuffed to.<br>
<br>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> is already dutifully shedding <<his>> clothing.<br>
<br>
[<<moveTo "event_panties_futa_3" "Strip and take your position." 180>>]
<<else>>
You reply that you aren't quite prepared to have a full on contest tonight.<br>
<br>
"@@.npc_futa;Victory by forfeit!@@" <<=setup.getNpcName("npc_futa","first")>> states with a grin as she pulls her <<if $options.fem>>slut<<else>>boi-toy<</if>> in closer. "@@.npc_futa;Come on, let's go celebrate by plowing that ass — I can't wait to feel how that vibrating plug I stuffed in you before we left has you opened up.@@"<br>
<br>
"@@.generic_male1;Yes, GASP, <<=setup.getNpcName("npc_futa","Mistress")>>,@@" <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> moans as <<=setup.getNpcName("npc_futa","first")>> adjusts a remote, the way <<he>> wobbles and leans against her as she leads the way across the floor telling you it's quite a powerful vibe, indeed.<br>
<br>
<<include "sexClubLocations">>
<</if>>
</div>/*#
#desc: npc_futa explains contest
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteMember $scene.sex_club_info "main">>
<<useClothSetPush 'futacontest'>>
<<removeAllClothing>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
You and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> are soon stripped and secured — rears spread and heads raised for both ends to be available.<br>
<br>
"@@.npc_futa;Alright,@@" <<=setup.getNpcName("npc_futa","first")>> states, standing in front of the two of you, theatrically removing her panties to leave her <<getWordPenis false>> sticking out hard and proud as a small audience gathers. "@@.npc_futa;The challenge is who has the best pair of fuck-holes, so I'll be dropping a load each in all four of your orifices. Winner is the one with the best combined time in getting me off. To up the stakes, the audience is free to jump in for seconds, or thirds, or whatever, on any hole I've already used. As challenger <<=$player.first_name>> gets to go first and fourth. So, <<=$player.first_name>> call it — where shall I start things off?@@"<br>
<br>
You're already salivating at the sight of <<=ps(setup.getNpcName("npc_futa","first"))>> beautiful <<getWordPenis false>>... but your rear is also quivering in anticipation... strategy seems key as you have the opportunity to set an early lead... but the tail-end issue of drawing fourth an orgasm after she's already cum thrice...<br>
<br>
[<<moveTo "event_panties_futa_3_oral" "You'll lead with the front." 180 "<<set $scene.first=true>><<set $scene.oralfirst=true>>">>]<br>
[<<moveTo "event_panties_futa_3_anal" "You'll start behind." 180 "<<set $scene.first=true>><<set $scene.oralfirst=false>>">>]
</div>/*#
#desc: oral compete in npc_futa contest
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
You lick your lips and open wide in invitation and <<=setup.getNpcName("npc_futa","first")>> walks up in front of you.<br>
<br>
<<if $scene.first>>
"@@.npc_futa;Oral enthusiasm, you love to see it! You pay attention, <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>@@" she states to her <<boy>>friend. "@@.npc_futa;- you may learn a trick or two.@@"
<<else>>
"@@.npc_futa;Home stretch,@@" she glances over at her <<boy>>friend, as if to give <<him>> an additional instruction... but <<he>>'s already busy taking it from both ends, so she merely shrugs. "@@.npc_futa;Alright, m'lady — let's see if you can claim the crown...@@"
<</if>>
<br><br>
<<if setup.getTotalValue("oral") > 10>>
You align your throat and <<=setup.getNpcName("npc_futa","first")>> slides into you
<<if setup.getTotalValue("oral") > 15>>
with a single smooth thrust.<br>
<br>
"@@.npc_futa;Not a trace of resistance or gag reflex... fucking perfection.@@"
<<else>>
with only the slightest of resistance.<br>
<br>
"@@.npc_futa;Mmm, I can feel that practice, nothing like a deep throat...@@"
<</if>>
<br><br>
Though things are made a bit more challenging thanks to your bound position,
<<if $player.flags.special_skills.blowjob_training>>
you immediately deploy all of your many skills, and prior experience, drawing a gasp from <<=setup.getNpcName("npc_futa","first")>>.<br>
<br>
"@@.npc_futa;Oh fuck, I forgot how good you were... <<if $fetish.sissy>>SISSI<<else>>Professional<</if>> Secretary... accept no substitutes.@@"<br>
<br>
<<if $scene.first>>
You hum happily at the compliment, showing off just a little for <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> before rushing towards a conclusion to secure yourself a strong opening lead.<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> fingers are soon gripping the back of your head to pull you in tight as she cums, dropping her first load deep in your belly.<br>
<br>
"@@.npc_futa;Whew! That was a big one... alright, <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> your turn to suck — and you better bring your A game because <<=$player.first_name>> just put on a maestro performance!@@"<br>
<br>
You look over just long enough to see <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> looking a little nervous... and then a customer is before you and you have a fresh cock to suck...<br>
<br>
[<<moveTo "event_panties_futa_3_watch" "Get to work while you wait for the final round..." 600>>]
<<else>>
As you suck you glance up at the clock
<<if setup.getTotalValue("anal") > 15 && $player.flags.special_skills.anal_training>>
you're way ahead
<<elseif setup.getTotalValue("anal") > 15 || $player.flags.special_skills.anal_training>>
you're
<<else>>
you're about even
<</if>>
on time, but with your skill you could probably end this any way you wanted...<br>
<br>
[<<moveTo "event_panties_futa_4_oral" "Go for the win." 180 "<<set $scene.result='win'>>">>]<br>
[<<moveTo "event_panties_futa_4_oral" "Go for the tie." 180 "<<set $scene.result='tie'>>">>]<br>
[<<moveTo "event_panties_futa_4_oral" "Throw the match." 180 "<<set $scene.result='lose'>>">>]
<</if>>
<<else>>
you immediately put your skills to work.<br>
<br>
<<if $scene.first>>
<<=setup.getNpcName("npc_futa","first")>> fingers grip your hair — going first is a definite advantage as you can feel her struggling to hold back. A bit of tongue, some hard sucking, and she's cumming hard down your throat.<br>
<br>
"@@.npc_futa;Damn you're good! Alright <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> your turn to suck — and I'll warn you that <<=$player.first_name>> set the bar pretty high!@@"<br>
<br>
You look over just long enough to see <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> looking a little nervous... and then a customer is before you and you have a fresh cock to suck...<br>
<br>
[<<moveTo "event_panties_futa_3_watch" "Get to work while you wait for the final round..." 600>>]<br>
<<else>>
Your early lead starts to tick away as <<=ps(setup.getNpcName("npc_futa","first"))>> fatigue works against you. Still, even distracted by whoever it is that's fucking your ass, you can feel her balls tighten as she steadily approaches climax. A final effort could seal this for you...<br>
<br>
<<if setup.getTotalValue("oral") > 15 || setup.getTotalValue("anal") > 15 && $player.flags.special_skills.anal_training>>
[<<moveTo "event_panties_futa_4_oral" "Go for the win." 180 "<<set $scene.result='win'>>">>]<br>
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_panties_futa_4_oral" "Give it your all and go for the win." 180 "<<set $scene.result='win'>><<spendWillpower 1>>">>] <<hint $options "Pushing this hard will cost willpower.">><br>
<<else>>
[@@.link_locked;You lack will to focus in and win.@@]<br>
<</if>>
[@@.link_locked;You lack the special skills to time a tie.@@]<br>
[<<moveTo "event_panties_futa_4_oral" "Surrender the match." 180 "<<set $scene.result='lose'>>">>]
<</if>>
<</if>>
<<else>>
ERROR: unexpected oral level: <<=setup.getTotalValue("oral")>>
<</if>>
</div>/*#
#desc: anal compete in npc_futa contest
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
You wiggle your ass and <<=setup.getNpcName("npc_futa","first")>> grins as she walks behind you.<br>
<br>
<<if $scene.first>>
"@@.npc_futa;How could I possibly pass up this booty?@@" She gives you a slap that sets your cheeks jiggling. "@@.npc_futa;It's a good thing this is a competition of holes because I'm sorry, <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>, as far as cutie patooties go... she's got you beat clean.@@"
<<else>>
"@@.npc_futa;Home stretch,@@" she glances over at her <<boy>>friend who is already taking it from both ends. "@@.npc_futa;Alright, m'lady — let's see if you can claim the crown...@@"<br>
<br>
You moan around the cock currently swelling your throat — time to focus in and win...
<</if>>
<<if setup.getTotalValue("anal") > 10>>
You relax your glutes as <<=setup.getNpcName("npc_futa","first")>>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
removes your plug
<</if>>
<<if setup.getTotalValue("anal") > 15>>
and smoothly slides into your ass.
<<else>>
and slowly slides into your ass.
<</if>>
<br><br>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.npc_futa;I don't know if this hollow plug is a boon or a handicap... but damn do I love this ass!@@"
<<else>>
"@@.npc_futa;Goddess, yes. Tight and inviting, this is my kind of ass!@@"
<</if>>
<br><br>
<<if $player.flags.special_skills.anal_training>>
You remember your training, working your muscles in time with <<=ps(setup.getNpcName("npc_futa","first"))>> steady rhythm
<<if $scene.first>>
as you lay the foundation for what should be your eventual victory.<br>
<br>
Between her excitement going in and your elite skill it isn't long before <<=setup.getNpcName("npc_futa","first")>> is bending over you as she squeezes your ass and moans in orgasm.<br>
<br>
"@@.npc_futa;Whew — early lead... but there's three rounds left to go!@@"<br>
<br>
She takes a moment to catch her breath before stepping away, wiping her <<getWordPenis false>> clean as she walks around to <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s front...<br>
<br>
You can't see behind, but you feel a fresh — if smaller than <<=ps(setup.getNpcName("npc_futa","first"))>> <<getWordPenis false>> slide into you as you watch your competition...<br>
<br>
[<<moveTo "event_panties_futa_3_watch" "Wait for your turn to come round again." 600>>]
<<else>>
as you work past <<=ps(setup.getNpcName("npc_futa","first"))>> fatigue for that fourth and final orgasm.<br>
<br>
The person you're currently sucking off shifts slightly and you are given a view of the clock —
<<if setup.getTotalValue("oral") > 15 && $player.flags.special_skills.oral_training>>
you're way ahead
<<elseif setup.getTotalValue("oral") > 15 || $player.flags.special_skills.oral_training>>
you're
<<else>>
you're about even
<</if>>
on time, but with your skill you could probably end this any way you wanted...<br>
<br>
[<<moveTo "event_panties_futa_4_anal" "Go for the win." 180 "<<set $scene.result='win'>>">>]<br>
[<<moveTo "event_panties_futa_4_anal" "Go for the tie." 180 "<<set $scene.result='tie'>>">>]<br>
[<<moveTo "event_panties_futa_4_anal" "Throw the match." 180 "<<set $scene.result='lose'>>">>]
<</if>>
<<else>>
<<if $scene.first>>
<<=setup.getNpcName("npc_futa","first")>> fingers dig into your rear — going first is a definite advantage as you can feel her struggling to hold back. A bit of clenching, some rolling of your hips... and she's cumming hard and deep in your rear.<br>
<br>
"@@.npc_futa;Whew, what a start! Alright <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> your turn to suck — and I'll warn you that <<=$player.first_name>> set the bar pretty high!@@"<br>
<br>
You look over just long enough to see <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> looking a little nervous... and then you feel fingers working your ass back open and a fresh cock entering you from behind.<br>
<br>
[<<moveTo "event_panties_futa_3_watch" "Bide your time as you wait for the final round..." 600>>]<br>
<<else>>
Your early lead starts to tick away as <<=ps(setup.getNpcName("npc_futa","first"))>> fatigue works against you. Still, even distracted and short on air thanks to the cunt currently pressed over your face, you can feel her balls tighten as she steadily approaches climax. A final effort could seal this for you...<br>
<br>
<<if setup.getTotalValue("anal") > 15 || setup.getTotalValue("oral") > 15 && $player.flags.special_skills.anal_training>>
[<<moveTo "event_panties_futa_4_anal" "Go for the win." 180 "<<set $scene.result='win'>>">>]<br>
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_panties_futa_4_anal" "Give it your all and go for the win." 180 "<<set $scene.result='win'>><<spendWillpower 1>>">>] <<hint $options "Pushing this hard will cost willpower.">><br>
<<else>>
[@@.link_locked;You lack will to focus in and win.@@]<br>
<</if>>
[@@.link_locked;You lack the special skills to time a tie.@@]<br>
[<<moveTo "event_panties_futa_4_anal" "Surrender the match." 180 "<<set $scene.result='lose'>>">>]
<</if>>
<</if>>
<<else>>
ERROR: unexpected oral level: <<=setup.getTotalValue("anal")>>
<</if>>
</div>/*#
#desc: watch competition with npc_futa at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
<<if $scene.oralfirst>>
You watch out of the corner of you eye as you suck and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> takes <<his>> turn at <<=setup.getNpcName("npc_futa","first")>>.
<<else>>
You try not to get distracted by whoever is fucking your ass as you watch <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> take <<his>> turn.
<</if>>
<br><br>
<<=setup.getNpcName("npc_futa","first")>> starts at the front, <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> opening wide for <<his>> girlfriend-<<=ps(setup.getNpcName("npc_futa","Mistress"))>> familiar <<getWordPenis false>>, <<his>> eyes lit up with happiness as she smiles down at <<him>>.<br>
<br>
You would have sworn — and your <<if $scene.oralfirst>>full belly<<else>>ass<</if>> would agree, that you drained <<=setup.getNpcName("npc_futa","first")>> good... yet not only did she look as hard as she slipped her <<getWordPenis false>> between her <<if $options.fem>>slut's<<else>>boi-toy's<</if>> lips as whence it first parted <<if $scene.oralfirst>>yours<<else>>your cheeks<</if>>, it doesn't take <<him>> all that much longer for <<his>> cheeks to swell with what is clearly a massive load.<br>
<br>
Drooling cum <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> doesn't have long to catch <<his>> breath before <<=setup.getNpcName("npc_futa","first")>> moves behind and someone from the audience steps up to use <<his>> throat. You can tell <<his>> focus is less on <<his>> lips, sucking passively as <<he>> shifts <<his>> hips, focused on the contest while also clearly enamoured with <<=ps(setup.getNpcName("npc_futa","first"))>> <<getWordPenis false>> above all others.<br>
<br>
Round three looks to be where <<=setup.getNpcName("npc_futa","first")>> finally starts to show a refractory period, as she plows her moaning slave for several minutes — in which time <<he>> gets off two, more patrons with <<his>> lips (and you another three). Nonetheless, she does eventually cum, thick cream trickling down <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s thigh as <<=setup.getNpcName("npc_futa","first")>> steps away, and you watch her wipe herself off as she walks back towards you, <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> already taking it from both ends before she has finished covering the short distance.<br>
<br>
<<if $scene.oralfirst>>
[<<moveTo "event_panties_futa_3_anal" "Final round..." 180 "<<set $scene.first=false>>">>]
<<else>>
[<<moveTo "event_panties_futa_3_oral" "Final round..." 180 "<<set $scene.first=false>>">>]
<</if>>
</div>/*#
#desc: oral finale with npc_futa at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
<<switch $scene.result>>
<<case "win">>
<<set $scene.win=true>>
You're in this to win this as you
<<if $player.flags.special_skills.oral_training>>
deploy your elite training
<<else>>
pull out every trick you have
<</if>>
to triumphantly suck down a final load — <<=setup.getNpcName("npc_futa","first")>> staggering away with your time clearly ahead of <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s.<br>
<br>
"@@.npc_futa;Holy shit...@@" <<=setup.getNpcName("npc_futa","first")>> gasps, even more out of breath than you are as she <<if $fetish.cum>>spurts a final blast across your face and <</if>>finally softens.<br>
<br>
She waits for you and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> to finish off your trio of other customers before making the announcement.
<<case "tie">>
Your skills are pushed to the limit — especially given that you can only see the clock part of the time as <<=setup.getNpcName("npc_futa","first")>> makes enthusiastic use of your throat as you pace things out and end up edging her the last few seconds, her final orgasm at least as powerful as the prior three as she <<if $fetish.cum>>cums so hard it spurts out your nose<<else>>dumps a load directly into your belly<</if>> — squeezing your face into her hips as she trembles with after-shock and finally staggers away.
<<case "lose">>
<<set $scene.win=false>>
Even with <<=ps(setup.getNpcName("npc_futa","first"))>> obvious fatigue it takes a bit of work for you to hold back, all but doing nothing for the final minute or so as she fucks your throat, her eventual climax coming with you a good thirty seconds back from <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>.<br>
<br>
Her orgasm is a slow, rolling finale of pleasure. Her hips jerk and she squeezes you tight for several aftershocks before taking a slow step backwards, drool trailing from your lips to her dropping <<getWordPenis false>>.
<<default>>
ERROR: unexpected scene.result <<=$scene.result>>
<</switch>>
<br><br>
<<if $scene.result == "tie">>
[<<moveTo "event_panties_futa_bonus_1" "Bonus round?" 300>>]
<<else>>
<<if $scene.win>>
[<<moveTo "event_panties_futa_5_win" "Continue." 180>>]
<<else>>
[<<moveTo "event_panties_futa_5_lose" "Continue." 180>>]
<</if>>
<</if>>
</div>/*#
#desc: anal finale with npc_futa at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
<<switch $scene.result>>
<<case "win">>
<<set $scene.win=true>>
You don't hold back in the slightest, throwing
<<if $player.flags.special_skills.anal_training>>
all of your elite training
<<else>>
every trick you have
<</if>>
into making your rear passage a true channel to heaven.<br>
<br>
Caught up in the moment <<=setup.getNpcName("npc_futa","first")>> speeds up — and you in turn, her final climax easily the strongest of the night as she <<if $fetish.cum>>blasts a massive load across your bare back<<else>>cums hard and deep<</if>> before staggering backwards, her finally flaccid <<if $fetish.futanari>>futa phallus<<else>><<getWordPenis false>><</if>> making a wet "slap" as it falls against her thigh.
<<case "tie">>
While keeping track of the clock is a challenge given that you're blowing a random person, you focus hard, squeezing your rear to either accelerate or slow <<=ps(setup.getNpcName("npc_futa","first"))>> thrusts, carefully timing things out so that her grunt of climax perfectly lines up with <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s time.<br>
<br>
The clock runs down as <<=setup.getNpcName("npc_futa","first")>> recovers and you finish off the <<guy>> in front of you as you wait for what's next...
<<case "lose">>
<<set $scene.win=false>>
Even with <<=ps(setup.getNpcName("npc_futa","first"))>> obvious fatigue she remains hard and enthusiastic, and you have to focus to avoid an accidental victory.<br>
<br>
Almost thrown off your rhythm by the <<man>> using your face pulling you in so tight you see stars, you manage to keep things together for a synchronised climax at both ends that leaves you looking up at a combined time just a few seconds slower than <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>.<br>
<<default>>
ERROR: unexpected scene.result <<=$scene.result>>
<</switch>>
<br><br>
<<if $scene.result == "tie">>
[<<moveTo "event_panties_futa_bonus_1" "Tiebreaker round?" 300>>]
<<else>>
<<if $scene.win>>
[<<moveTo "event_panties_futa_5_win" "Continue." 180>>]
<<else>>
[<<moveTo "event_panties_futa_5_lose" "Continue." 180>>]
<</if>>
<</if>>
</div>/*#
#desc: start tiebreaker npc_futa at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
All eyes look to the scoreboard with surprise as <<=setup.getNpcName("npc_futa","first")>> finally makes the stunned announcement. "@@.npc_futa;A- a tie?@@" She takes a deep breath, glancing down at her <<getWordPenis false>> but, while still impressive in size, it is clearly spent and hanging limp.<br>
<br>
"@@.npc_futa;Alright, looks like the way to break this tie is to bring another hole into the equation — mine.@@"<br>
<br>
She grins and motions for you and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> to be released from your restraints.<br>
<br>
"@@.npc_futa;Same rules as before — whoever gets me off in this shortest time, wins. <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> will go first, home field advantage, and all that — you up for the challenge?@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_panties_futa_bonus_2" "Unlock yourself and whip it out." 180 "<<set $scene.strap=false>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is locked away.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_panties_futa_bonus_2" "Whip it out." 180 "<<set $scene.strap=false>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You lack a natural penis.@@]<br>
<</if>>
[<<moveTo "event_panties_futa_bonus_2" "Ask if you could borrow a strap-on?" 180 "<<set $scene.strap=true>>">>]<br>
[<<moveTo "event_panties_futa_bonus_abort" "You're satisfied with a tie." 180>>]
</div>/*#
#desc: bow out of tiebreakers npc_futa at club
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'futacontest'>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
To the sorrow of the crowd you bow out of the competition. <<=setup.getNpcName("npc_futa","first")>> shrugs and turns to her <<if $options.fem>>slut<<else>>boi-toy<</if>>. "@@.npc_futa;Well... I guess that makes you winner by forfeit. As prize you get to fuck me... now.@@"<br>
<br>
She drags <<him>> off towards a nearby bed, the crowd swiftly following, too dense for you to approach so you just gather your clothes and turn back towards the rest of the club.<br>
<br>
<<include "sexClubLocations">>
</div>/*#
#desc: begin fucking npc_futa for tiebreaker
#status: RELEASED 0.9.4.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
<<if $scene.strap>>
<<=setup.getNpcName("npc_futa","first")>> and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> move to a bed while someone finds you a strap-on and you wait your turn.
<<else>>
<<if $scene.removeCage>>
You unlock your chastity <<if $scene.isCage>>cage<<else>>belt<</if>> to reveal your stiffening <<getWordMyPenis>>.
<</if>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<if $fetish.sph>>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> suppresses a laugh as <<he>> looks at your <<getWordMyPenis>>. <<He>> looks about average... but compared to you, that's practically massive.
<<if $player.body_ref.shrink_style == 'spe'>>
<<=setup.getNpcName("npc_futa","first")>> gives <<him>> an admonishing glance. "@@.npc_futa;Now, now, all penises are precious — if all I cared about was size, well... I would hardly let you out of your cage, now would I?@@"<br>
<br>
<<He>> blushes and nods. "@@.generic_male1;Sorry, <<=setup.getNpcName("npc_futa","Mistress")>>. Sorry <<=$player.first_name>>@@"
<</if>>
<<else>>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> stands ready with <<his>> average member, looks like you'll have to make up for your more diminutive size with technique and enthusiasm...
<</if>>
<<case 2 3>>
You glance between your and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s members and conclude you're both of similar, roughly average size. Which means it'll all be down to technique.
<<case 4 5>>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> gawks for a moment, glancing back and forth between yourself and <<=ps(setup.getNpcName("npc_futa","first"))>> only slightly larger member.<br>
<br>
"@@.npc_futa;Fantasising about feeling them both?@@" <<=setup.getNpcName("npc_futa","first")>> says with a grin. "@@.npc_futa;That would be quite the fun spit-roast... but you need to focus. You've got a job to do, after all, and I expect you to do your very best.@@"<br>
<br>
"@@.generic_male1;Yes, <<=setup.getNpcName("npc_futa","Mistress")>>,@@" <<he>> replies, <<his>> own average member stiffening a little harder.
<<case 6>>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> gawks at your hard, massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock<<elseif $player.body_ref.knot>>dog-cock<<elseif $player.body_ref.horsecock>>horse-cock<<else>>cock<</if>> — even larger than <<=ps(setup.getNpcName("npc_futa","first"))>> own.<br>
<br>
"@@.npc_futa;Jealous... or envious?@@" She whispers and <<he>> nervously apologises.<br>
<br>
"@@.generic_male1;N-no I—@@"<br>
<br>
She interrupts by tussling <<his>> hair. "@@.npc_futa;Oh you're so cute when you're embarrassed! Don't worry, I know you're hopelessly addicted to my <<getWordPenis false>>... though I wouldn't mind feeling you moan around my cock while I watched that monster disappear into your rear...@@"<br>
<br>
<<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> shudders. "@@.generic_male1;I'd like that too, <<=setup.getNpcName("npc_futa","Mistress")>>...@@"<br>
<br>
"@@.npc_futa;I love how much of a cock-slut you've become... but right now you've got a job to do, and I expect you to do your very best at it.@@"<br>
<br>
"@@.generic_male1;Yes, <<=setup.getNpcName("npc_futa","Mistress")>>,@@" <<he>> replies, <<his>> own average member stiffening a little harder.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<br><br>
<<=setup.getNpcName("npc_futa","first")>> lays back on a convenient bed and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> moves into position between her legs. Positions clearly well practiced <<he>> moves her bat and balls out of the way to slide into the waiting hole beneath, starting to jerk her off with one hand before she slaps <<him>> away. "@@.npc_futa;No cheating. You've already played with that, now it's a battle of cocksmanship.@@"<br>
<br>
"@@.generic_male1;Yes, <<=setup.getNpcName("npc_futa","Mistress")>>,@@" <<he>> replies, first pulling <<his>> hands behind <<his>> back before thinking better of it and taking hold of her hips as <<he>> starts really going to town, <<his>> cute butt a blur as <<he>> pumps in and out, and it isn't long before <<=setup.getNpcName("npc_futa","first")>> moans with another orgasm, leaking around <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s cock and then gently pushing <<him>> away.<br>
<br>
"@@.npc_futa;Whew! Starting to feel a second wind, here. <<=$player.first_name>>! You're up!@@"<br>
<br>
You think for a moment as you consider the question of tactics...<br>
<br>
[<<moveTo "event_panties_futa_bonus_3" "Duplicate <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s tactics and go hard." 300 "<<set $scene.hard=true>>">>]<br>
[<<moveTo "event_panties_futa_bonus_3" "Anyone can go hard and fast, focus on dexterous technique." 300 "<<set $scene.hard=false>>">>]
</div>/*#
#desc: fuck npc_futa for tiebreaks
#status: RELEASED 0.9.4.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
<<if $scene.hard>>
<<if $player.body.penissize[0] > 3>>
Large and in charge, you take <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s lead and put it into overdrive.<br>
<br>
Your <<if $player.body.penissize[0] >= 6>>massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon <<elseif $player.body_ref.knot>>dog-<<elseif $player.body_ref.horsecock>>horse-<</if>><<else>>large <</if>>cock pounds in and out as <<=setup.getNpcName("npc_futa","first")>> moans "@@.npc_futa;More, more, more!@@" Your combination of size, speed, and power sending her rocketing to an orgasm and a clear, decisive victory.<br>
<br>
[<<moveTo "event_panties_futa_5_win" "Continue." 180>>]
<<else>>
You attempt to mimic <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s tact but <<if $player.body.penissize[0] < 2>>your smaller size has less impressive results<<else>>though you may equal <<his>> size, <<he>> clearly has more experience<</if>>. Though you do, eventually get <<=setup.getNpcName("npc_futa","first")>> off, it takes you quite a bit longer...<<if $fetish.sph>> and you would swear there were a few moments where she looked almost bored.<</if>><br>
<br>
[<<moveTo "event_panties_futa_5_lose" "Continue." 180>>]
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 15>>
You come in with a plan — sure you may
<<if $player.body.penissize[0] > 3>>
have the size advantage,
<<elseif $player.body.penissize[0] < 2>>
be smaller than your opponent,
<<else>>
be a roughly physical match for your opponent,
<</if>>
but that's no excuse for showing <<his>> own lack of creativity.<br>
<br>
Rather than just pump away you enter <<=setup.getNpcName("npc_futa","first")>> slowly, giving her time to adjust <<if $player.body.penissize[0] > 3>>to your girth <</if>>before you begin to speed up, not just working linearly but angling your hips upward to aim for the g-spot, or downward for a slight cheat as your belly rubs against the sensitive underside of her <<getWordPenis false>>.<br>
<br>
The nimble display bears fruit, as your sense of timing, balance, and reading your partner pays off with her rocketing to another orgasm that has her clamping down on you hard, her strong vagina squeezing you dry like a lemon before she releases her hold and you step back.<br>
<br>
[<<moveTo "event_panties_futa_5_win" "Continue." 180>>]
<<else>>
You try to take a more skilled approach... but
<<if setup.getTotalValue("dexterity") > 10>>
run into the limits of your own balance and dexterity.
<<else>>
come up quite short in the dexterity department.
<</if>>
You eventually make <<=setup.getNpcName("npc_futa","first")>> cum, sure... but by the time you get her off you've used up significantly more time than your opponent, the resulting applause tepid as you already know you've lost.<br>
<br>
[<<moveTo "event_panties_futa_5_lose" "Continue." 180>>]
<</if>>
<</if>>
</div>/*#
#desc: lose contest with npc_futa
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
Like the end of a boxing match you and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> are helped to your feet on either side of <<=setup.getNpcName("npc_futa","first")>> where she raises <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>>'s arm in victory.<br>
<br>
"@@.npc_futa;Better luck next time,@@" <<=setup.getNpcName("npc_futa","first")>> states, giving you a friendly slap on the ass.<br>
<br>
The crowd begins to disperse as <<=setup.getNpcName("npc_futa","first")>> helps support her tired <<boy>>friend. "@@.npc_futa;I think that'll be it for us, tonight. Thanks for the fun, I'll see you around.@@"<br>
<br>
You smile as they walk away, <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> looking sweet as <<he>> leans against <<his>> girlfriend for support.<br>
<br>
[<<moveTo "event_sex_club_interior" "Get dressed and return to the main floor of the club." 180 "<<useClothSetPop 'futacontest'>>">>]
</div>/*#
#desc: win contest with npc_futa
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "panties_futa">>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_futa">>
<<set _pantiesowner_formal = "full">>
<<include "stealPanties">>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Play Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sex_club_play.png" setup.charImage("npc_futa","npc_futa_4") setup.charImage("generic","npc_futa_bf_club")>>
<div id="invframe" class="scrolltext">
Like the end of a boxing match you and <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> are helped to your feet on either side of <<=setup.getNpcName("npc_futa","first")>> where she raises your arm in victory.<br>
<br>
"@@.npc_futa;You put up a valiant effort, my dear,@@" she states as she wraps an arm around <<if $options.fem>><<=$npc_futa.flags.gfname>><<else>><<=$npc_futa.flags.bfname>><</if>> and <<he>> half-collapses into her. "@@.npc_futa;Aww, you gave such a good effort! I promise <<if $fetish.daddy>>Mommy will<<else>>I'll<</if>> take you home soon.@@"<br>
<br>
She turns to you with a smile. "@@.npc_futa;A well-won victory... which means you deserve a prize...@@" She pauses in thought, then grins as she hands you her panties. "@@.npc_futa;Enjoy.@@" She says with a wink, leaving you holding the subtly fragrant garment as she and her <<boy>>friend head towards the exit.<br>
<br>
The crowd begins to disperse and you gather your things.<br>
<br>
[<<moveTo "event_sex_club_interior" "Get dressed and return to the main floor of the club." 180 "<<useClothSetPop 'futacontest'>>">>]
</div>/*#
#desc: notice guard panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
As you're getting ready to change your gaze lingers on <<=ps(setup.getNpcName("npc_guard","formal"))>> sleek, sporty panties...<br>
<br>
[<<moveTo "event_panties_guard_2" "Ask for her used panties." 60>>]<br>
[<<moveTo "event_gym_guard_showers" "Just finish up." 60>>]
</div>/*#
#desc: ask guard for panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
As she's changing you ask <<=setup.getNpcName("npc_guard","formal")>> if you could have her used panties. She pauses, about to pull them up as she looks you in the eye, <<if ["futa", "cyber-futa"].includes($npc_guard.genitals)>>stiffening and dripping<<elseif "penis" == $npc_guard.genitals>>her <<getWordPenis false>> stiffening before your eyes<<elseif "cybernetic" == $npc_guard.genitals>>her cyber-cock whirring slightly as it stiffens<<else>>a trickle of excitement dripping down her muscular thigh<</if>>.<br>
<br>
"@@.npc_guard;What a request! You know these things aren't cheap — ultra high-tech fibers, engineered for the battlefield they're designed to stay snug, secure and clean no matter what you throw at them.@@" She pauses and grins, correction... she LEERS at you. "@@.npc_guard;Tell you what — I'll let you have them — but you need to make sure I'm totally clean. Wouldn't want to stain my normal clothes going commando, and all. And when I say clean, well... I of course mean your tongue, right?@@"<br>
<br>
[<<moveTo "event_panties_guard_3" "Agree to her offer and lick her clean." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_panties_guard_3" "Decline her offer." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: guard offer for panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_guard","npc_guard_naked")>>
<<else>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_guard","npc_guard_gym")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName("npc_guard","formal"))>> offer and she grins, casually stepping one leg up on the bench to give you "full access" as she nods. "@@.npc_guard;Well, get to it! And hurry up! The longer you wait, the more work I'm going to have for you!@@"<br>
<br>
<<printThought "What? In the middle of the locker-room?!">><br>
<br>
[<<moveTo "event_panties_guard_4" "Lick her clean." 600>>]<br>
[<<moveTo "event_panties_guard_3" "Decline her offer." 60 "<<set $scene.accept=false>>">>]
<<else>>
You change your mind and decline <<=ps(setup.getNpcName("npc_guard","formal"))>> offer. She shrugs and pulls her panties the rest of the way up, taking a moment to arrange things before continuing to get dressed.<br>
<br>
"@@.npc_guard;No matter — as I said before, these things will stand up to anything I throw at 'em... well, I'll see you around!@@"<br>
<br>
She finishes dressing and leaves you alone in the locker-room.<br>
<br>
[<<moveTo "event_gym_guard_showers" "Continue." 60>>]
<</if>>
</div>/*#
#desc: guard offer for panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ["penis","futa","cybernetic","cyber-futa"].includes($npc_guard.genitals)>>
<<applyExperience 'oral' $npc_guard.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'submission' 12 'terrible' $SEEN_FRIEND>>
<<addItem "panties_guard">>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_guard">>
<<set _pantiesowner_formal = "formal">>
<<include "stealPanties">>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_guard","npc_guard_naked")>>
<div id="invframe" class="scrolltext">
There may only be a couple other women in the locker-room, but you keenly feel their gaze upon you as you drop to your knees
<<if ["penis","futa","cybernetic","cyber-futa"].includes($npc_guard.genitals)>>
and spread your lips wide.<br>
<br>
"@@.npc_guard;Yeah, that's right, polish the shaft — all the way to the base.@@" She explains encouragingly as you <<if setup.getTotalValue("oral") > 13>>expertly deep-throat<<else>>suck your way up and down<</if>> her large <<if ["cybernetic","cyber-futa"].includes($npc_guard.genitals)>>cyber-cock<<else>><<getWordPenis false>><</if>>.<br>
<br>
"@@.npc_guard;Yeah... gotta clean out these pipes...@@" she grunts, her hips flexing and balls tightening as she dumps a large load down your throat, leaving you no time to recover before your face is pressed against her balls, licking each heaving orb clean of sweat.
<<if ["futa","cyber-futa"].includes($npc_guard.genitals)>>
She gives you time to suckle and slurp at each perfect orb before holding her balls out of the way for you to address the dripping <<getWordVagina>> behind.
<</if>>
<<else>>
and extend your tongue.
<</if>>
<<if ["vag","futa","cyber-futa"].includes($npc_guard.genitals)>>
You have to work fast to catch up with how much <<=setup.getNpcName("npc_guard","formal")>> is dripping, her thick, heavily flavoured feminine juices oozing forth almost as fast as you can lick.<br>
<br>
You're close to throwing in the towel when she squirts across your face, the powerful orgasm almost crushing your tongue as you momentarily struggle to breathe before finishing cleaning up the finally ebbing tide.
<</if>>
<br><br>
"@@.npc_guard;Not done yet, <<if $player.identify_as=='male'>><<if $fetish.sissy>>sissy<<else>>boy<</if>><<else>>girl<</if>>@@" she adds with a grin as she spins around and squats back onto your face, her tight ass spreading to fill your view as she presses over your mouth.<br>
<br>
Fresh and clean from the shower, the scent of her ass is nonetheless intense, a mix of thick, heavy sweat and a heady musk that has you licking around and inside as far as your tongue can spear, several breathless minutes passing before she finally lets up the pressure and steps away, dropping the used panties across your panting face.<br>
<br>
"@@.npc_guard;Payment in full — enjoy!@@" She says with a laugh as she resumes putting on the rest of her clothes.<br>
<br>
You pocket the panties as <<=setup.getNpcName("npc_guard","formal")>> leaves the locker-room, the other occupants suddenly finding other things to distract themselves with as you look around.<br>
<br>
[<<moveTo "event_gym_guard_showers" "Resume getting dressed." 60>>]
</div>/*#
#desc: tell gym_fit_bimbo about panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if $scene.warn>>
You quietly inform <<=setup.getNpcName("npc_fit_bimbo","first")>> that her panties are visible through her leggings.<br>
<br>
She pauses, twisting around to look at her reflection in the mirror in a pose just shy of qualifying as an escher girl.<br>
<br>
"@@.npc_fit_bimbo;Damn! You're right, well that just will not do at all!@@"<br>
<br>
Before you can say anything else she is pulling down her leggings and removing what prove to be tear-away panties.<br>
<br>
She pulls up her leggings and checks out her reflection once again, the form-fitted yoga pants literally sucking into her ass crack to give her a jaw-dropping figure, her bubble butt perfectly round and smooth.<br>
<br>
"@@.npc_fit_bimbo;That's much better. Guess that'll teach me to go running around in panties! I mean, sure, the extra absorption is useful... but not at the cost of fashion!@@"<br>
<br>
[<<moveTo "event_panties_fit_bimbo_2" "Ask if you can have her used panties." 60 "<<set $scene.panties=true>>">>]<br>
[<<moveTo "event_panties_fit_bimbo_2" "Do not say anything." 60 "<<set $scene.panties=false>>">>]
<<else>>
You do not mention anything to <<=setup.getNpcName("npc_fit_bimbo","first")>> about her visible panty lines and the two of you go your separate ways.<br>
<br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
<</if>>
</div>/*#
#desc: tell gym_fit_bimbo about panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.panties>>
<<addItem "panties_fit_bimbo">>
<<set _earn = false>>
<<set _pantiesowner_id = "npc_fit_bimbo">>
<<set _pantiesowner_formal = "formal">>
<<include "stealPanties">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Fitness Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_heels.png" setup.charImage("npc_fit_bimbo")>>
<div id="invframe" class="scrolltext">
<<if $scene.panties>>
You ask <<=setup.getNpcName("npc_fit_bimbo","first")>> if you could have her used panties?<br>
<br>
"@@.npc_fit_bimbo;What? Like, as a reward for making me aware of my wardrobe malfunction?@@" She doesn't give you a chance to respond before smiling and tossing the used panties into your hands. "@@.npc_fit_bimbo;Sure! After all, if I can't wear them under my gym stuff, why would I need them? Enjoy!@@"<br>
<br>
She strides off, leaving you holding her panties and watching the almost hypnotic sway of her hips.
<<else>>
You say nothing as she thanks you again for the help and heads on her way, the sway of her hips almost hypnotic.
<</if>>
<br><br>
[<<moveTo "room_gym_main" "Do something else." 60>>]
</div>/*#
#desc: wake up, option to swipe panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<advanceTmpEffects $tempEffects>>
<<if $tempEffects.hangover>>
<<applyFatigue 30>>
<</if>>
<<if $tempEffects.sissy_pill_mk1_withdrawal>>
<<applyFatigue 75>>
<<changeHorny 25>>
<</if>>
<<if setup.hasTmpEffect('hormone_first_linger')>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_2'
2
'event_psychiatrist_session_request_hormones'
false
>>
<<applyStress -10>>
<</if>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking2" "mask">>
<div id="invframe" class="scrolltext">
You wake up to the machine releasing you automatically. After extracting yourself from the machine you take a deep breath — the first "clean" air you've tasted in hours, and you find yourself somewhat missing the constant scent of <<=setup.getNpcName("npc_hucow","full")>>.<br>
<br>
You glance down at the sealed compartment with her panties... you doubt she'd mind if you took a souvenir...<br>
<br>
[<<moveTo "event_panties_hucow_2" "Take the panties." 60 "<<set $scene.panties=true>>">>]<br>
[<<moveTo "event_panties_hucow_2" "Leave the panties and exit the lab." 60 "<<set $scene.panties=false>>">>]
</div>/*#
#desc: swipe panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 138 Laboratory.">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "companyMilking2" "mask">>
<div id="invframe" class="scrolltext">
<<if $scene.panties>>
<<addItem "panties_hucow">>
<<set _earn = false>>
<<set _pantiesowner_id = "npc_hucow">>
<<set _pantiesowner_formal = "full">>
<<include "stealPanties">>
<</if>>
<<if $scene.panties>>
It takes you a moment to figure out how to open the container, but you soon have your prize. They're a bit crunchy after spending a night flavouring your air, but they are otherwise in good condition and you pocket them before continuing on your way
<<else>>
You decide against swiping the panties and, instead, merely dress and continue on your way
<</if>>
— you should have just enough time to pop home to clean up and change and make it back for work.<br>
<br>
[<<moveTo "room_foyer" "Hurry home." 600>>]
</div>/*#
#desc: follow waitress after spill
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_waitress","first")>> into the back room where she's already half-undressed, the dark coffee appearing to have infiltrated all the way down to her panties which she's in the process of peeling off.<br>
<br>
"@@.npc_waitress;Dammit, I really liked that pair!@@" She states in annoyance, her caged member now dangling free outside its fabric fortress.<br>
<br>
[<<moveTo "event_panties_waitress_2" "Ask if you can have the stained panties." 60 "<<set $scene.ask=true>>">>]<br>
[<<moveTo "event_panties_waitress_2" "Ask if she needs any help?" 60 "<<set $scene.ask=false>>">>]
</div>/*#
#desc: offer help waitress after spill
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ask>>
<<addItem "panties_waitress">>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
<<if $scene.ask>>
You ask <<=setup.getNpcName("npc_waitress","first")>> if you could have her stained panties and she pauses for a moment.<br>
<br>
"@@.npc_waitress;Really? I mean, I was just gonna toss 'em out... did <<=setup.getNpcName("npc_maid","first")>> put you up to this as some sort of prank?@@" She seems to be puzzling out how that might work before finally shrugging. "@@.npc_waitress;eh, whatever. If you want 'em, they're yours. I'm gonna go tell the boss that I need to head home early, the maid outfit is built for this so the stains should wash out, catch ya later!@@"<br>
<br>
She tosses you the stained panties and fixes her skirts before slipping past you out the door.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Go back to waiting tables." 3000>>]
<<else>>
You ask <<=setup.getNpcName("npc_waitress","first")>> if she needs any help and she shakes her head. "@@.npc_waitress;Nah, I was about to go off-shift anyway, think I'll just cut out early and go home to change — fortunately the maid's outfit is stain resistant, so it should clean up, but these panties are a lost cause.@@" She states as she tosses them into the trash and then slips past you out the door.<br>
<br>
[<<moveTo "event_panties_waitress_3" "Dig through the trash for discarded treasure." 180>>]<br>
[<<moveTo "event_maid_cafe_work_default" "Go back to waiting tables." 3000>>]
<</if>>
</div>/*#
#desc: swipe waitress panties
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "panties_waitress">>
<<set _earn = false>>
<<set _pantiesowner_id = "npc_waitress">>
<<set _pantiesowner_formal = "first">>
<<include "stealPanties">>
<<applyExperience 'humiliation' 13 'very' $INCOGNITO>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_waitress")>>
<div id="invframe" class="scrolltext">
Fortunately for your perverted desires the panties have landed nicely on top of the near empty trash-can. You quickly rescue your prize and tuck the stained garment away before heading back out to resume your shift.<br>
<br>
[<<moveTo "event_maid_cafe_work_default" "Go back to waiting tables." 3000>>]
</div>/*#
#desc: nun vip prostitute meet
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vipClients[$scene.clientIndex].visited = true>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
You head upstairs to wait for the customer and a few minutes later who should walk through the door but <<=setup.getNpcName("npc_nun_chastity","formal")>>!<br>
<br>
<<if State.hasPlayed("event_vip_nun_panties_2")>>
"@@.npc_nun_chastity;Oh, Sister <<=$player.last_name>>, we meet again! I am here to do some evangelising... though I suppose you do not really need such, hmm?@@"
<<else>>
"@@.npc_nun_chastity;Oh, Sister <<=$player.last_name>>!@@" She says in surprised recognition. "@@.npc_nun_chastity;I was not aware that you worked at this fine establishment... it would seem my evangelical plans for the evening are something of a waste.@@"
<</if>>
<br><br>
[<<moveTo "event_vip_nun_panties_2" "Ask what she means?" 180>>]
</div>/*#
#desc: nun vip prostitute explain purpose
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_nun_chastity","formal")>> what she means and she smiles, gesturing for you to have a seat next to her.<br>
<br>
"@@.npc_nun_chastity;With how enthusiastically you have embraced the faith I forget, sometimes, just how new you are to the church. The Goddess teaches us that sexual labour is as valued as any other... but that it comes with its own unique challenges, physically and emotionally. Thus I, and my fellow sisters, will frequently purchase time with those in your profession, to show them that they are valued and supported, and that the Church is there for them should they require additional counseling, relief, or unburdening. Obviously this is a message you have already heard and embraced... but I would certainly not take advantage of your time. I have already paid your fee in full and you may enjoy it, and, perhaps, a rest as well.@@"<br>
<br>
[<<moveTo "event_vip_nun_panties_3" "She's already paid... doesn't she want to get her money's worth?" 180 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_vip_nun_panties_3" "Thank her and let her go." 180 "<<set $scene.sex=false>>">>]
</div>/*#
#desc: nun vip prostitute ask about sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.sex>>
<<addCredits $scene.client.base_pay>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "npc_nun_chastity_modest">>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You smile and tell <<=setup.getNpcName("npc_nun_chastity","formal")>> that she deserves to get what she paid for...<br>
<br>
You can tell she's interested, but she maintains decorum. "@@.npc_nun_chastity;Are you certain? You are under no obligation. The church tells us to only seek out sex joyously desired by all participants, without coercion before, or shame after.@@"<br>
<br>
[<<moveTo "event_vip_nun_panties_4" "Enthusiastically insist that yes, you want to fuck." 180>>]<br>
[<<moveTo "event_vip_nun_panties_3" "Thank her and let her go." 180 "<<set $scene.sex=false>>">>]
<<else>>
You thank <<=setup.getNpcName("npc_nun_chastity","formal")>> for her time... and her credits and she smiles and bows.<br>
<br>
"@@.npc_nun_chastity;It has been my pleasure, Sister <<=$player.last_name>>. People like you... you provide a blessed service to the world, and one fully deserving of compensation. That you do so as one of the followers of the Goddess... well, it only further shares her love, making you doubly blessed.@@"<br>
<br>
The nun leaves and you return to the bar to receive your payment of <<=$scene.client.base_pay>>.<br>
<br>
[<<moveTo "room_usual_place_inside" "Look around the bar." 180>>]
<</if>>
</div>/*#
#desc: nun vip prostitute foreplay
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.sex>>
<<addCredits $scene.client.base_pay>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "npc_nun_chastity">>
<div id="invframe" class="scrolltext">
You confirm that you definitely want to fuck <<=setup.getNpcName("npc_nun_chastity","formal")>> and she smiles, parting her robes to reveal her inner latex attire, pulling down her rubbery panties to reveal her dripping femininity.<br>
<br>
"@@.npc_nun_chastity;Oh, Sister <<=$player.last_name>>. Your words, already, excite me — I have been granted an evening out of my chastity device for the purpose of my mission, let us take advantage of the occasion — I wish to feel you within me...@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis")>>
[<<moveTo "event_vip_nun_panties_5" "Unlock yourself and fuck her, as requested." 1800 "<<set $scene.action='penis_cage'>>">>]<br>
<<else>>
[@@.link_locked;Your <<getWordMyPenis false>> is locked away from use.@@]<br>
[<<moveTo "event_vip_nun_panties_5" "Your penis may be locked away... but you have fingers and tongue... get to it." 1800 "<<set $scene.action='finger'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_vip_nun_panties_5" "Fuck her, as requested." 1800 "<<set $scene.action='penis'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_vip_nun_panties_5" "You may not have a penis... but you have fingers and tongue... get to it." 1800 "<<set $scene.action='finger'>>">>]<br>
<</if>>
[<<moveTo "event_vip_nun_panties_5" "You changed your mind." 300 "<<set $scene.action='abort'>>">>]
</div>/*#
#desc: nun vip prostitute sex
#status: RELEASED 0.9.4.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != "abort">>
<<addItem "panties_nun">>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_nun_chastity">>
<<set _pantiesowner_formal = "formal">>
<<include "stealPanties">>
<<if $scene.action == 'penis' || $scene.action == 'penis_cage'>>
<<playerOrgasm>>
<</if>>
<<set $npc_barkeeper.flags.prostitution.clients.vip.nun_panties = true>>
<</if>>
<<addCredits $scene.client.base_pay>>
<</if>>
<<set $player.location to "The Usual Place, Private Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_private.png" "npc_nun_chastity">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'penis' 'penis_cage'>>
<<if $scene.action == "penis_cage">>
You hurriedly unlock your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> as the nun spreads herself before you.
<<else>>
<<=setup.getNpcName("npc_nun_chastity","formal")>> lays before you, thighs spread.
<</if>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
"@@.npc_nun_chastity;The Goddess teaches us to value all things, be they large or small, please, bless me.@@"
<<case 2 3 4 5>>
"@@.npc_nun_chastity;Thank you, Sister <<=$player.last_name>> for this blessing you are about to give me.@@"
<<case 6>>
"@@.npc_nun_chastity;The Goddess has truly blessed you, Sister <<=$player.last_name>>,@@" she whispers reverently as she stares at your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>dong. "@@.npc_nun_chastity;Share your gift with me. I long to commune with it all.@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Wet, flexible, and eager the <<=ps(setup.getNpcName("npc_nun_chastity","formal"))>> vagina is perfection, squeezing you along your entire length as she pulls you closer with her legs. You lean forward and your lips meet her own as your hips rock and grind.<br>
<br>
"@@.npc_nun_chastity;Fuck me, Sister <<=$player.last_name>>, fuck me fiercely. Show me thine divine passion...@@"<br>
<br>
You speed up, hips rocking as you are forced to concentrate lest you cum prematurely, the pleasure of her hole literally heavenly as you strive to last as long as you can, hearing her moan at least twice in orgasm before the pleasure becomes too much for you to handle and you nearly pass out from the intensity of your climax.<br>
<br>
You come to wrapped in the nun's arms, somehow underneath her as she gently rises up, then leans in to lay a gentle kiss of thanks on your spent member.<br>
<br>
"@@.npc_nun_chastity;Glorious. It does me good to be fucked like that from time to time... I feel the money I have paid is hardly sufficient compensation to such a wonderful gift...@@" She pauses, and then neatly folds her panties to place them next to you. "@@.npc_nun_chastity;Here, take them, with my gratitude... I shall enjoy the bare feeling for my walk back to the church.@@"<br>
<br>
With a final bow she fixes her robes and departs.<br>
<br>
You catch your breath and <<if $scene.action == "penis_cage">>lock your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> back on and<</if>>pocket her "gift" before heading downstairs to collect your <<=$scene.client.base_pay>> credits.
<<case 'finger'>>
You smile and the nun leans back and spreads her thighs in invitation.<br>
<br>
"@@.npc_nun_chastity;Thank you, Sister,@@" she moans at your first kiss, her voice passionate, yet controlled as you lap at her clit and finger her gently. "@@.npc_nun_chastity;Goddess' blessings be upon you... but I desire more... harder, Sister.@@"<br>
<br>
You double your efforts, sucking her blood-swelled clit and licking beneath her hood as you curl three fingers inside of her, rubbing her g-spot as you lick rapidly and she lets out her first climactic cry.<br>
<br>
"@@.npc_nun_chastity;Goddess yes! Harder, more!@@"<br>
<br>
Her hips buck in enthusiasm and you steady them with your face and one hand while your other jack-hammers as fast as you can, stirring her to at least half a dozen orgasms before she falls limp, face beatifically content as she silently whispers a prayer.<br>
<br>
"@@.npc_nun_chastity;What I paid you before... I fear it was too little. Your lips and tongue are Goddess-blessed, indeed.@@"<br>
<br>
She catches her breath and smiles as you rise to your feet.<br>
<br>
"@@.npc_nun_chastity;Here,@@" she states, handing you her panties, "@@.npc_nun_chastity;take them with my thanks... after what you just blessed me with I shall enjoy letting things cool for the walk home.@@"<br>
<br>
With a parting bow she fixes her robe and departs.<br>
<br>
You pocket the latex panties and head downstairs to collect your pay of <<=$scene.client.base_pay>>.
<<case 'abort'>>
You change your mind and <<=setup.getNpcName("npc_nun_chastity","formal")>> takes it in stride as she fixes her clothes.<br>
<br>
"@@.npc_nun_chastity;Of course, Sister <<=$player.last_name>>. consent may be revoked at any time, for any reason, and that decision is always to be respected. I wish you a good evening, Sister <<=$player.last_name>>, until our next meeting.@@"<br>
<br>
She leaves and you head down to the bar to pickup your payment of <<=$scene.client.base_pay>>.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "room_usual_place_inside" "Look around the bar." 180>>]
</div>/*#
#desc: pr_sissy at fetish store
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
You smile and lead <<=setup.getNpcName('npc_pr_sissy', 'first')>> over to the latex section to present her with the multitude of options the store sells.<br>
<br>
"@@.npc_pr_sissy;Hmm, these all look so great... but part of why I'm looking for a new pair is that I hear there's a new policy coming down that means I'm going to be upgrading to 24/7 corporate chastity — one of the new <<if !setup.checkItemTypeWorn("cage") || setup.isCage()>><<=setup.getItemName("sissyomatic")>><<else>><<=setup.getItemName("sissyomatic_belt")>><</if>> models — to tell you the truth, I'm pretty hype, the specs on those things, wowza! Anyway, I've had issues before pairing tight latex and chastity where the unyielding chastity device can put strain on the latex and lead to weakness or tears. I don't suppose you have any personal experience or recommendations?@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage") && setup.checkItemTypeTag('panties', ['latex'])>>
[<<moveTo "event_panties_pr_sissy_2" "Show her your current pairing of being locked under latex." 180 "<<set $scene.demo=true>>">>]<br>
<<elseif setup.checkItemTypeTag('panties', ['latex'])>>
[@@.link_locked;You're wearing latex... but don't have any chastity beneath to show off how your panties hold up.@@]<br>
<<elseif setup.checkItemTypeWorn("cage")>>
[@@.link_locked;You're locked and chaste... but are not wearing latex over top to be able to attest to pairing.@@]<br>
<<else>>
[@@.link_locked;You are wearing neither latex panties, nor a chastity device... scandalous!@@]<br>
<</if>>
[<<moveTo "event_panties_pr_sissy_2" "Apologise that you do not have anything to show her." 180 "<<set $scene.demo=false>>">>]
</div>/*#
#desc: pr_sissy show off panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.demo>>
You smile, bow, and reveal your latex and locked crotch.<br>
<br>
"@@.npc_pr_sissy;Oh those look just gorgeous!<<if setup.getChastityLevel() == 5>> Mmm, and you're already locked in... is that a <<=setup.getItemTypeName('cage')>>? Goddess, it's so perfectly fitted and secure... I can't wait to get mine and really be corporate property!<</if>>@@" <<=setup.getNpcName('npc_pr_sissy', 'first')>> states in admiration as she kneels down for a better look. "@@.npc_pr_sissy;Do you mind if I touch?@@"<br>
<br>
You nod and she gently prods at your tight latex underthings. "@@.npc_pr_sissy;Oh, yes, don't you just love the feel of latex? And the way it almost vacuum seals around your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>... perfection!@@"<br>
<br>
Her hands grope and roam for a little longer, having you a bit short of breath before she stands up and flashes a wink. "@@.npc_pr_sissy;Sorry about that... made my decision a minute or two ago but I just could NOT resist spending a little longer kicking the tires...@@"<br>
<br>
You guide her to the display and she grabs a half dozen pairs, "@@.npc_pr_sissy;sweet! I can't wait to try these on — and then report to work for my new chastity device! Mmm, just the thought of it <<if $fetish.sissy>>is almost enough for me to sissygasm<<else>>has my heart pounding<</if>>! Anyway, if you could just wait here for a moment while I change? Thanks!@@"<br>
<br>
She hands you all but one pair of panties and ducks into the changing room leaving you holding the rest.<br>
<br>
[<<moveTo "event_panties_pr_sissy_3" "Wait." 180>>]
<<else>>
You apologise that you don't have anything to demo and <<=setup.getNpcName('npc_pr_sissy', 'first')>> frowns. "@@.npc_pr_sissy;Dang, well... maybe some other time! Catch you later!@@"<br>
<br>
She darts out of the store, leaving you alone, and without a sale.<br>
<br>
<<printThought "Hmm... maybe I should better dress for the occasion when I'm working a shift.">><br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" 'Finish off your shift.' 1800>>]
<</if>>
</div>/*#
#desc: pr_sissy show off panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "panties_pr_sissy">>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_pr_sissy">>
<<set _pantiesowner_formal = "first">>
<<include "stealPanties">>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_pr_sissy', 'first')>> is only in the changing room for a couple minutes before emerging with a wide smile. "@@.npc_pr_sissy;So tight! I always go a size down with latex and... oh, I just love the feeling of a fresh pair, and look at this!@@" She raises her skirt to show off the new undies, tightly compressed <<if setup.isCage()>>around her current chastity cage<<else>>over her current chastity belt<</if>>. "@@.npc_pr_sissy;Well, I'm gonna go buy these and head home to submit the request for my new device — here, you deserve a tip for all your help, and I figure you'd enjoy these as much as I have!@@"<br>
<br>
She gathers up her purchase and presses something rubbery into your hand before dashing off.<br>
<br>
You look down to find a pair of, what else, latex panties... though these are a bit different in that they incorporate a moderate-sized plug into the rear panel...<br>
<br>
[<<moveTo "room_mall_sexstore_bondage_work_floor_generic" 'Pocket your "tip" and get back to work.' 1800>>]
</div>/*#
#desc: talk to prostitute
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You walk up to <<=setup.getNpcName("npc_prostitute","first")>> and she
<<if $npc_barkeeper.flags.prostitution.can_work_vip>>
nods in greeting — your time working "together" having melted her once icy demeanour.<br>
<br>
"@@.npc_prostitute;How's tricks, <<callPlayer "npc_barkeeper">>?@@" She says with a grin.<br>
<br>
<<if setup.checkItemOwned("panties_prostitute")>>
[@@.link_locked;You already earned a pair of her panties.@@]<br>
<<else>>
[<<moveTo "event_panties_prostitute_1" "Ask if you could have a pair of her panties?" 60>>]<br>
<</if>>
<<else>>
glares daggers before turning away. Either she isn't fond of competition... or she just doesn't like you.<br>
<br>
<</if>>
[<<moveTo "room_usual_place_inside" "Walk away." 60>>]
</div>/*#
#desc: talk to prostitute about panties
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.barClient = 0>>
<<set $scene.boothClient = 0>>
<<set $scene.danceClient = 0>>
<</if>>
<<set $player.location to "The Usual Place Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_prostitute","first")>> if you could have a pair of her used panties and she raises an eyebrow.<br>
<br>
"@@.npc_prostitute;Panties, you say? Not that I haven't sold them before but... well, I would hate to charge a friend.@@" She grins. "@@.npc_prostitute;Tell you what — if I'm going to give you panties I want it to be a really good pair, you know, one that are soaked through with a hard nights work... which I guess means you need to help me pull in some clients.@@" She winks. "@@.npc_prostitute;Don't worry, I'll toss you a finders fee...@@"<br>
<br>
[<<moveTo "event_panties_prostitute_3_bar_1" "Look for a client at the bar." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_dance_1" "Look for a client on the dance floor." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_booths_1" "Look for a client in the private booths." 600>>]<br>
[<<moveTo "room_usual_place_inside" "Turn her down and do something else." 60>>]
</div><<if $scene.barClient == 2 && $scene.danceClient == 2 && $scene.boothClient == 2>>
three fingers before she waves you over.<br>
<br>
<<else>>
<<if $scene.barClient == 2 && ($scene.danceClient == 2 || $scene.boothClient == 2) || $scene.danceClient == 2 && $scene.boothClient == 2>>
two fingers.
<<elseif $scene.barClient == 2 || $scene.danceClient == 2 || $scene.boothClient == 2>>
a single finger.
<</if>>
<br><br>
[<<moveTo "event_panties_prostitute_3_bar_1" "Look for a client at the bar." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_dance_1" "Look for a client on the dance floor." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_booths_1" "Look for a client in the private booths." 600>>]<br>
<</if>>
[<<moveTo "event_panties_prostitute_4" 'Check in with <<=setup.getNpcName("npc_prostitute","first")>>.' 60>>]/*#
#desc: look for cliets for prostitute at bar
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if $scene.barClient != 0>>
You spend some time looking for customers at the bar, but things seem to have "dried up." <br>
<br>
[<<moveTo "event_panties_prostitute_3_dance_1" "Look for a client on the dance floor." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_booths_1" "Look for a client in the private booths." 600>>]
<<else>>
You hang around the bar for a few minutes and a <<man>> buys you a drink. You nod in acceptance and <<he>> comes over to chat.<br>
<br>
"@@.generic_male1;Hey sugar — how did a hot thing like you end up in a place like this?@@"<br>
<br>
The <<man>> is your usual business type, fancy watch, nice <<if $options.fem>>dress<<else>>suit<</if>>, you've probably seen or served hundreds of <<his>> type at work by now, unmoved by <<his>> smarmy, too-perfect smile. <<He>> immediately starts talking, clearly the sort in love with the sound of <<his>> own voice, barely pausing to breathe, much less give you space to get a word of your own in.<br>
<br>
[<<moveTo "event_panties_prostitute_3_bar_2" "Throw your drink in <<his>> face." 180 "<<set $scene.throw=true>>">>]<br>
[<<moveTo "event_panties_prostitute_3_bar_2" "Listen to <<him>> talk." 300 "<<set $scene.throw=false>>">>]<br>
[<<moveTo "event_panties_prostitute_3_bar_leave" "Walk away." 600 "<<set $scene.barClient=1>>">>]
<</if>>
</div>/*#
#desc: pickup client at bar for prostitute
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.throw>>
<<set $scene.barClient = 2>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if $scene.throw>>
You toss your drink in the <<man>>'s face and <<he>> finally shuts up, a look of shock on <<his>> face as <<he>> sputters.<br>
<br>
"@@.generic_male1;What are you- why—@@"<br>
<br>
Before <<he>> can get further <<=setup.getNpcName("npc_prostitute","first")>> swoops in, dabbing at the <<man>> with a napkin as she pretends to fight you off.<br>
<br>
You quickly slip away, catching a wink as <<=setup.getNpcName("npc_prostitute","first")>> works her magic. "@@.npc_prostitute;Oh, we just have to get you out of those wet clothes! Come on, there's a private room in back we can use...@@"<br>
<br>
A few minutes pass before <<=setup.getNpcName("npc_prostitute","first")>> emerges from the back room, a grin on her face as she blows her client a kiss goodnight and then holds up
<<include "prostitutePantiesCount">>
<<else>>
The <<man>> continues to drone on, you're almost impressed how <<he>> can keep going without running out of steam or saying anything even slightly interesting.<br>
<br>
[<<moveTo "event_panties_prostitute_3_bar_2" "Throw your drink in <<his>> face." 180 "<<set $scene.throw=true>>">>]<br>
[<<moveTo "event_panties_prostitute_3_bar_2" "Listen to <<him>> talk." 300 "<<set $scene.throw=false>>">>]<br>
[<<moveTo "event_panties_prostitute_3_bar_leave" "Walk away." 600 "<<set $scene.barClient=1>>">>]
<</if>>
</div>/*#
#desc: walk away from the bar
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You're already bored by the <<man>>'s talking, finding yourself on the verge of falling asleep as you make up an excuse and walk away... the <<man>> so engrossed in <<his>> own story <<he>> doesn't even seem to notice.<br>
<br>
[<<moveTo "event_panties_prostitute_3_dance_1" "Look for a client on the dance floor." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_booths_1" "Look for a client in the private booths." 600>>]
</div>/*#
#desc: check out the dance floor
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if $scene.danceClient != 0>>
You spend some time looking for customers on the dance floor, but nothing seems to be moving.<br>
<br>
[<<moveTo "event_panties_prostitute_3_bar_1" "Look for a client on the dance floor." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_booths_1" "Look for a client in the private booths." 600>>]
<<else>>
You head for the dance floor where you soon catch the eye of a sleek, athletic woman who is really dancing up a storm. She grins at you as a new track spins up, as if challenging you to a dance-off...<br>
<br>
[<<moveTo "event_panties_prostitute_3_dance_2" "Go dance with her." 180 "<<set $scene.dance=true>>">>]<br>
[<<moveTo "event_panties_prostitute_3_dance_2" "Walk away." 300 "<<set $scene.dance=false>><<set $scene.danceClient=1>>">>]<br>
<</if>>
</div>/*#
#desc: prostitute panty challenge: dance floor pickup
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.danceClient = 1>>
<</if>>
<<set $player.location to "The Usual Place, Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
<<if $scene.dance>>
You face off with your opponent as the music kicks on, the rest of the dance floor subconsciously recognising the confrontation that is about to go down and backing away to give the two of you space.<br>
<br>
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
You don't just go move for move, but one-up them at every turn, flipping and spinning in total control of your body, the two of you putting on such a show that the audience gives you a standing ovation as you take a bow and retreat to the side.
<<else>>
You go move for move with your opponent, the both of you gyrating and flipping back and forth in time to the music, your skills so evenly matched you can't really call a winner, instead both ending the song with a bow before moving to the side.
<</if>>
<br><br>
"@@.generic_female1;You've got some moves!@@" She says with a grin, "@@.generic_female1;Though... all that dirty dancing has me hot for something else...@@"<br>
<br>
[<<moveTo "event_panties_prostitute_3_dance_3" 'Direct her to <<=setup.getNpcName("npc_prostitute","first")>>...' 600>>]
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
Your dancing is mediocre in the best of times, so compared to your nimble, graceful competition you might as well be just flailing around for the good it does you. You suppose you score a few points out of dog-headed determination in making it to the end of the song, but as the music fades the woman scoffs and walks away.
<<else>>
To call the woman a better dancer would imply that you could actually dance... which you can't. Lucky not to fall on your face you end up retreating from the dance floor in humiliation.
<</if>>
<br><br>
[<<moveTo "event_panties_prostitute_3_bar_1" "Look for a client at the bar." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_booths_1" "Look for a client in the private booths." 600>>]
<</if>>
<<else>>
You decline the challenge and the woman scoffs, a quick taunting twerk aimed in your direction seeming to rub in your cowardice.<br>
<br>
[<<moveTo "event_panties_prostitute_3_bar_1" "Look for a client at the bar." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_booths_1" "Look for a client in the private booths." 600>>]
<</if>>
</div>/*#
#desc: prostitute panty challenge: dance floor success
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.dance>>
<<set $scene.danceClient = 2>>
<</if>>
<</if>>
<<set $player.location to "The Usual Place, Dance Floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
Your competitor catches her breath and starts towards the bar.<br>
<br>
"@@.generic_female1;Working up a sweat, I like it! Don't suppose you'd be up for a little... horizontal dancing?@@"<br>
<br>
You're tempted, but you remember your mission as you direct her that <<=setup.getNpcName("npc_prostitute","first")>> would be able to accommodate her needs...<br>
<br>
The dancer raises an eyebrow as she checks out <<=setup.getNpcName("npc_prostitute","first")>> from across the bar. "@@.generic_female1;Well she certainly looks like a fine drink of water... and if you're vouching for her, well...@@" The dancer winks at you. "@@.generic_female1;I'll see you on the dance-floor!@@"<br>
<br>
The dancer walks away to chat up <<=setup.getNpcName("npc_prostitute","first")>> who soon leads her off the floor.<br>
<br>
A few minutes later and they re-energy, the dancer looking full of energy once more as <<=setup.getNpcName("npc_prostitute","first")>> looks at you from across the bar and holds up <<include "prostitutePantiesCount">>
</div>/*#
#desc: talk to prostitute about panties: look around booths
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Booths">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
<<if $scene.boothClient != 0>>
You spend some time looking for customers in the private booths, but nobody is opening up.<br>
<br>
[<<moveTo "event_panties_prostitute_3_bar_1" "Look for a client on the dance floor." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_dance_1" "Look for a client on the dance floor." 600>>]
<<else>>
You scan the private booths, your gaze settling on a lonely looking <<man>> sitting by <<him>>self.<br>
<br>
[<<moveTo "event_panties_prostitute_3_booths_2" "Sit with the lonely <<man>>." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_bar_1" "Look for a client at the bar." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_dance_1" "Look for a client on the dance floor." 600>>]
<</if>>
</div>/*#
#desc: prostitute panty challenge: booths
#status: RELEASED 0.9.4.0
#ignore_spell: n
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Booths">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You walk up to the lone <<man>> and ask if <<he>>'s waiting for someone?<br>
<br>
"@@.generic_male2;N-no,@@" <<he>> replies... only for you to wink as you take a seat and remark that's good... since you're already here.<br>
<br>
<<He>> continues to stutter as you contemplate your plan of attack...<br>
<br>
[<<moveTo "event_panties_prostitute_3_booths_3" "Go straight for the kill." 180 "<<set $scene.chat=false>>">>]<br>
[<<moveTo "event_panties_prostitute_3_booths_3" "Chat <<him>> up a bit." 300 "<<set $scene.chat=true>>">>]
</div>/*#
#desc: prostitute panty challenge: booths pickup
#status: RELEASED 0.9.4.0
#ignore_spell: s,'d
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Booths">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" >>
<div id="invframe" class="scrolltext">
<<if $scene.chat>>
You smile, putting on your best "innocent" facade as you try to get the <<man>> to relax.<br>
<br>
Though <<he>> is initially tense <<he>> starts to loosen up as <<he>> works <<his>> way through <<his>> drink as <<he>> insists that <<he>> "@@.generic_male2;Usually doesn't go out like this but that things have been really stressful at the office and...@@"<br>
<br>
You smile gently and nod as you let <<him>> continue to unburden <<him>>self — the details are the same old story of too much work and feeling ground down... but that banality doesn't mean it is any less unpleasant when you're the one living it.<br>
<br>
As <<he>> finishes <<his>> drink <<he>> starts to wind down, <<his>> shoulders slumping in exhaustion as you reach across the table to take <<his>> hand.<br>
<br>
[<<moveTo "event_panties_prostitute_3_booths_4" "Tell <<him>> about your friend..." 1800>>]
<<else>>
You put the moves on the <<man>> hard, rubbing <<his>> leg under the table as you lean in and ask what <<he>>'d like to do?<br>
<br>
Blushing and stuttering <<he>> stands up and excuses <<him>>self. "@@.generic_male2;S-sorry, I, uh, have somewhere I need to be...@@"<br>
<br>
<<He>> all but sprints out of the bar, leaving you sitting alone in frustration.<br>
<br>
<<printThought "Dammit... went too hard.">><br>
<br>
<<set $scene.boothClient = 2>>
[<<moveTo "event_panties_prostitute_3_bar_1" "Look for a client at the bar." 600>>]<br>
[<<moveTo "event_panties_prostitute_3_dance_1" "Look for a client on the dance floor." 600>>]<br>
[<<moveTo "event_panties_prostitute_4" 'Check in with <<=setup.getNpcName("npc_prostitute","first")>>.' 60>>]
<</if>>
</div>/*#
#desc: prostitute panty challenge: booth success
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.boothClient = 2>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
Comforting the <<man>> gently you ask the <<him>> if <<he>> actually came to the bar for some "companionship." <<He>> nods, not looking you in the eye as if in shame.<br>
<br>
You re-assure <<him>> that it's all fine, and that your friend will be happy to take care of <<him>> as you lead <<him>> across the bar and pass <<him>> off to <<=setup.getNpcName("npc_prostitute","first")>>.<br>
<br>
"@@.npc_prostitute;There, there, come with me, I promise I'll make all those worries go away...@@" <<=setup.getNpcName("npc_prostitute","first")>> whispers as she pulls the <<man>> in to lean on her shoulder as she leads the way into a side room.<br>
<br>
You scan the bar for your next target, some time passing before the <<man>> emerges with a euphoric expression on <<his>> face, almost floating <<his>> way out of the bar without even noticing you. <<=setup.getNpcName("npc_prostitute","first")>> steps out of the room and raises <<include "prostitutePantiesCount">>
</div>/*#
#desc: prostitute panty challenge end
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.barClient == 2 && $scene.danceClient == 2 && $scene.boothClient == 2>>
<<addItem "panties_prostitute">>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_prostitute">>
<<set _pantiesowner_formal = "first">>
<<include "stealPanties">>
<</if>>
<<set $scene.money = $scene.barClient * 30 + $scene.danceClient * 30 + $scene.boothClient * 30>>
<<addCredits $scene.money>>
<</if>>
<<set $player.location to "The Usual Place, Inside">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_prostitute")>>
<div id="invframe" class="scrolltext">
<<if $scene.barClient == 2 && $scene.danceClient == 2 && $scene.boothClient == 2>>
You approach <<=setup.getNpcName("npc_prostitute","first")>> and she grins and extends a hand, dropping a slightly sticky wadded up pair of cheap panties into your hand. "@@.npc_prostitute;Thine prize! Thanks again for the help, and I included a little finders fee to go along with.@@"<br>
<br>
You unwrap the panties to find a stack of credits, <<=setup.getNpcName("npc_prostitute","first")>> winks before turning away. "@@.npc_prostitute;Well I'm going to go enjoy a nightcap in the gloryhole — see you around, hun!@@"<br>
<br>
She walks away and you turn back to the bar.<br>
<br>
[<<moveTo "room_usual_place_inside" "What to do next..." 60>>]
<<else>>
<<=setup.getNpcName("npc_prostitute","first")>> looks around the bar and shakes her head. "@@.npc_prostitute;Looks like things are starting to dry up and you... well, I don't feel like these panties are QUITE used enough to gift. I'm going to go finish the night off in the gloryhole, let me know if you want to try helping me out another time.<<if $scene.money > 0>> Oh, and here's your cut for lining me up with clients, thanks!<</if>>@@"<br>
<br>
She <<if $scene.money > 0>>hands you <<=$scene.money>> credits and <</if>>heads for the bathroom.<br>
<br>
[<<moveTo "room_usual_place_inside" "Walk away." 60>>]
<</if>>
</div>/*#
#desc: overhear sex in bathroom
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_sexdoll.stage < 4>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'panties_sexdoll' _nextDate>>
<<initRoom>>
<<moveTo "room_office_lunchbreak_toilet_female">>
<</if>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
As you walk into the women's bathroom you hear sounds coming from one of the stalls... very familiar sounds... the sounds of sex...<br>
<br>
[<<moveTo "event_panties_sexdoll_2" "Leave before anyone notices you." 180 "<<set $scene.stay=false>>">>]<br>
[<<moveTo "event_panties_sexdoll_2" "Continue about your business." 180 "<<set $scene.stay=true>>">>]
</div>/*#
#desc: react to sex in bathroom
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.stay>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<<else>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.stay>>
You do your best to ignore the quite loud screams of orgasm as you wash your hands... only for that ecstatic scream to prove the end of things as, a moment later a <<man>> emerges from the stall, zipping up and casually adjusting <<his>> <<if $options.fem>>skirt<<else>>tie<</if>> before nodding in your direction and leaving.<br>
<br>
You glance over your shoulder to see <<=setup.getNpcName("npc_sexdoll","first")>> rising to her feet, with a slightly dazed look on her face.<br>
<br>
You watch as she struggles with her panties for a moment before giving up on the skimpy<<if $fetish.cum>>, cum-soaked<</if>> garment in annoyance and tossing it into the trash. As she sidles up to the sink she finally notices you. "@@.npc_sexdoll;The job, amirite?@@" She states while flashing a smile as she checks her makeup before departing for her next debauchery.<br>
<br>
[<<moveTo "event_panties_sexdoll_3" "Snatch her discarded underthings from the trash." 180 "<<set $scene.panties=true>>">>]<br>
[<<moveTo "event_panties_sexdoll_3" "Continue on your way." 180 "<<set $scene.panties=false>>">>]
<<else>>
You decide to beat a hasty retreat, backing out of the bathroom to leave whoever it is to their ecstatic fucking.<br>
<br>
<<include "lunchOptions">>
<</if>>
</div>/*#
#desc: swipe panties after bathroom sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.panties>>
<<addItem "panties_sexdoll">>
<<set _earn = false>>
<<set _pantiesowner_id = "npc_sexdoll">>
<<set _pantiesowner_formal = "first">>
<<include "stealPanties">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.panties>>
Taking advantage of being alone in the bathroom you swoop in and salvage <<=setup.getNpcName("npc_sexdoll","first")>> used panties from the bin, quickly tucking the VERY skimpy collection of string and... not much else away before you head out of the restroom.
<<else>>
You decided to leave fallen panties where they lie and head out of the restroom.
<</if>>
<br><br>
<<include "lunchOptions">>
</div>/*#
#desc: approached after shoot about another shoot
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'panties_sissy_secretary'>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/porn_lobby.png" setup.charImage("npc_cook","npc_cook_club")>>
<div id="invframe" class="scrolltext">
As you're packing up, <<=setup.getNpcName("npc_cook","first")>> comes up to you with a proposal.<br>
<br>
"@@.npc_cook;Another great shoot <<callPlayer "npc_cook">>. Everything you star in is a hit and I've been hearing from other's in the business. In particular I had an old collaborator pass along a script, it's called Semen Stuffed <<if $fetish.sissy>>Sissy<<else>>Slutty<</if>> Secretaries and, well... you can see why we thought you'd be perfect for it. The script calls for a co-star, however, so I was wondering if yeh might have a work friend who would be interested in joinin' yeh on set? Someone with a similar zest for things, but also a touch of innocence, y'know?@@"<br>
<br>
You reply that you'll see if you can find someone and <<he npc_cook>> grins. "@@.npc_cook;Wonderful! I tells yeh — you're the best thing that's happened to my career, a real go-getter!@@"<br>
<br>
You finish packing up and leave the studio.<br>
<br>
[<<moveTo 'room_citymap' 'Leave.' 300>>]
</div>/*#
#desc: run into npc_sissy_secretary
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_sissy_secretary.stage < 4>>
<<set _nextDate = setup.setNextDate($now, 14, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'panties_sissy_secretary'>>
<<initRoom>>
<<moveTo $scene.beforetasklocation.pop()>>
<</if>>
<</if>>
<<set $player.location to 'Company Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You bump into your old friend <<=setup.getNpcName("npc_sissy_secretary","first")>> in the hallway. She greets you with a smile as she licks what can only be cum from the corner of her mouth.<br>
<br>
<<printThought "Hmm... semen, secretary... I wonder if she'd be up for joining me in that porno <<=setup.getNpcName('npc_cook','first')>> mentioned?">><br>
<br>
[<<moveTo "event_panties_sissy_secretary_invite_2" "Mention the work opportunity to her." 180>>]<br>
[<<moveTo "event_panties_sissy_secretary_invite_2_abort" "Continue on your way." 60>>]
</div>/*#
#desc: talk to npc_sissy_secretary about porn
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Company Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You mention to <<=setup.getNpcName("npc_sissy_secretary","first")>> that you have a possible side-job opportunity, if she'd be interested.<br>
<br>
"@@.npc_sissy_secretary;Side-job? Like what sort of job?@@"<br>
<br>
You explain that it's porn and her eyes immediately light up. "@@.npc_sissy_secretary;Porn? Ooooh, that sounds fun! Is this like an amateur thing or what?@@"<br>
<br>
You explain that no, actually you're working for a professional studio — and that you're looking for a co-star for a new script that came in.<br>
<br>
You tell her the name of the script and her eyes light up in excitement. "@@.npc_sissy_secretary;Semen Stuffed <<if $fetish.sissy>>Sissy<<else>>Slutty<</if>> Secretaries? AND I'd get paid? Hell yes I'm in! text me the deets when things are setup and I'll be there on set. Oh, this is gonna be fun! Anyway, I've got somewhere I need to get to, catch you later!@@"<br>
<br>
She dashes off.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: do not talk to npc_sissy_secretary about porn
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 14, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'panties_sissy_secretary'>>
<</if>>
<<set $player.location to 'Company Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You share a quick wave with your friend as the both of you hurry off to your separate destinations.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: get ready for sissy_secretary shoot
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'female_office'>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You ring <<=setup.getNpcName("npc_sissy_secretary","first")>> up and she meets you in the dressing room, clearly giddy with excitement.<br>
<br>
<<if State.hasPlayed("event_panties_sissy_secretary_2")>>
"@@.npc_sissy_secretary;I guess I did well enough to get a re-invite... but I don't think I'll ever not be nervous about being on camera!@@"
<<else>>
"@@.npc_sissy_secretary;Thanks again for this opportunity. Oh, I just hope I do a good job. I mean... sure, I've fantasised about it, but I've never fucked on camera... I just hope I don't screw anything up while I'm, like... getting screwed!@@"
<</if>>
<br><br>
You smile and assure her that things'll be fine, that she'll be a natural as <<=setup.getNpcName("npc_cook","first")>> shouts through the door. "@@.npc_cook;We're ready to start shootin' when youse too are good. Dressed for the office, there should be an outfit laying aboot if yeh need it@@"<br>
<br>
You flash a smile at your friend, they're already dressed and ready to go.<br>
<br>
<<if setup.checkPlayerDressed() && setup.checkVisibleClothingTag('office') > 50>>
[<<moveTo "event_panties_sissy_secretary_2" "Get on set and get fucked!" 7200 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
[@@.link_locked;You need to change into some office attire for the shoot.@@]
<</if>>
</div>/*#
#desc: gangbang with sissy_secretary shoot
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You head out onto the "office" set, and what happens next is a long, hard day of getting fucked hard <<if $fetish.cum>>and pumped full with so much cum you feel sloshy<<else>>like you wouldn't believe<</if>>.<br>
<br>
Things started with you and <<=setup.getNpcName("npc_sissy_secretary","first")>> playing the parts of two competitive secretaries... but that competition soon escalated from photocopying, to seducing hapless interns... to seeing which of the two of you is the TRUE biggest slut as you use your combined powers over the work master schedule to book a different sort of "all hands" celebration.<br>
<br>
Fucked raw by a stream of "coworkers" the two of you take load after load, railed atop everything from a copy machine to the company president's diorama of Tokyo in a brief parody segment called <<if $fetish.sissy>> "Sissy Godzilla." <<else>> "Slutty Godzilla." <</if>><br>
<br>
At the end of it all the exhausted crew gives you and <<=setup.getNpcName("npc_sissy_secretary","first")>> a standing ovation as you stagger back into the changing room<<if $fetish.cum>>, oozing cum out of all your holes<</if>>.<br>
<br>
[<<moveTo "event_panties_sissy_secretary_3" "Continue." 300>>]
</div>/*#
#desc: gangbang with sissy_secretary shoot
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
"@@.npc_sissy_secretary;Wow! That was like... and then when <<=setup.getNpcName("npc_cook","first")>> came on set and you took <<his npc_cook>> whole cock? And then somehow I did too???? Holy shit, this is like one of the best days of my life — and to think it's all caught on tape where I can watch it whenever I want!@@"<br>
<br>
Exhausted she flops down on a chair, peeling off panties literally caked with cum. "@@.npc_sissy_secretary;I think these are spent!@@" She says with a laugh as she drops them on the table and then fingers her ass. "@@.npc_sissy_secretary;Goddess, I'm still leaking! Sure, I've seen some things at work but this... well, I guess that's why porn employs professionals! Sexy, sexy professionals!@@"<br>
<br>
The two of you hit up the showers and then <<=setup.getNpcName("npc_sissy_secretary","first")>> heads home, her used underwear still sitting on the counter.<br>
<br>
[<<moveTo "event_panties_sissy_secretary_4" "Yoink." 180>>]<br>
[<<moveTo "room_citymap" "Just leave." 180>>]
</div>/*#
#desc: swipe sissy_secretary panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "panties_sissy_secretary">>
<<set _earn = false>>
<<set _pantiesowner_id = "npc_sissy_secretary">>
<<set _pantiesowner_formal = "first">>
<<include "stealPanties">>
<</if>>
<<set $player.location = 'Film It!: Studios by the Hour'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You grab the "company issue" slut panties — somewhat impressed at how <<=setup.getNpcName("npc_sissy_secretary","first")>> managed to ruin even such industrial-grade quality underthings.<br>
<br>
[<<moveTo "room_citymap" "Leave the studio." 180>>]
</div>/*#
#desc: psychiatrist topic: talk about collecting panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You update <<=setup.getNpcName("npc_psychiatrist","formal")>> on your progress collecting panties...<br>
<br>
<<include "computeStollenPanties">>
<<if _pantiesCount == (_pantiesPossible - 1)>>
"@@.npc_psychiatrist;My, my, <<=setup.numberInWords(_pantiesTotal)>> pairs! How wonderful! Yes, I think you are ready for your reward... assuming you brought them all with you?@@"<br>
<br>
You nod and she grins, and then watches intently as you pile them all on her desk, a great mound of varied underthings.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles as she stands over your hoard, breathing deeply through her nose. "@@.npc_psychiatrist;Wonderful. Just smell that intermingled blend of femininity... how about you take your seat and I give you your reward.@@"<br>
<br>
[<<moveTo "theme_psychiatrist_panties_2" "Sit down." 60>>]
<<elseif _pantiesTotal == (_pantiesPossible - 1)>>
"@@.npc_psychiatrist;My, my, <<=setup.numberInWords(_pantiesTotal)>> pairs! How wonderful! Yes, I think you are ready for your reward... assuming you brought them all with you?@@"<br>
<br>
You shake your head.<br>
<br>
"@@.npc_psychiatrist;No, no, that will not do! While I certainly trust you when you say what you have done, I want to see each pair for myself for... therapeutic reasons. Perhaps next week you can remember to have them all with you?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<else>>
<<switch _pantiesTotal>>
<<case 14 15 16>>
"@@.npc_psychiatrist;So many! But I think a few more, yes? <<if _pantiesPossible-2 == _pantiesTotal>>I think one more pair<<else>>yes, just a couple more<</if>> and I shall grant you your reward... Do remember to bring them all with you for... verification.@@"
<<case 13>>
"@@.npc_psychiatrist;A bakers dozen? So industrious... I think a few more pairs and I shall grant you your reward... Do remember to bring them all with you for... verification.@@"
<<case 12>>
"@@.npc_psychiatrist;A full dozen? That is quite impressive... but I think you can do a bit more.@@"
<<case 11 10>>
"@@.npc_psychiatrist;<<=_pantiesTotal>>? Congratulations on reaching double digits... but I think you can obtain a few more pairs...@@"
<<case 9 8>>
"@@.npc_psychiatrist;Hmm, <<=_pantiesTotal>>? Nearly to the double digits... so get back out there and keep hunting!@@"
<<case 7 6 5>>
"@@.npc_psychiatrist;Hmm, <<=_pantiesTotal>>? Not bad, not bad, you are just about at the half-waypoint of your collection...@@"
<<case 5 4 3>>
"@@.npc_psychiatrist;Hmm, <<=_pantiesTotal>>? Your collection is coming along... but you have quite a bit more to do. Why you are going to need at least double digits.@@"
<<case 2>>
"@@.npc_psychiatrist;Just one additional pair? I suppose that is a start... but there are far more than two versions of femininity, so you have very far left to go.@@"
<<case 1>>
"@@.npc_psychiatrist;Just the one pair? I sent you off on a quest, and you have made literally zero progress! Remember, this is a learning exercise for you to experience femininity in its many forms. Please do not speak to me about this until you have made progress.@@"
<<default>>
ERROR: unexpected panties count <<=_pantiesTotal>>
<</switch>>
<br><br>
<<if _pantiesTotal < 14>>
<<hint $options "Check children of TODO achievement to track the progress of your collection">><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
<</if>>
</div>/*#
#desc: psychiatrist topic: panties, blindfolds you
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "blindfold_pink">>
<<wearItem "blindfold_pink" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You take your seat as <<=setup.getNpcName("npc_psychiatrist","formal")>> moves around her desk, grabbing a blindfold from out of her desk and presenting it to you with a gentle smile.<br>
<br>
"@@.npc_psychiatrist;Obviously the sight of all these wonderfully varied sets of underthings is a delight... but I want to take things deeper, dig past the mere surface layer for a more complete understanding...@@"<br>
<br>
Your heart beats faster as she fastens the blindfold over your eyes, your sense of smell and hearing immediately sharpening as you sit waiting for what comes next...<br>
<br>
[<<moveTo "theme_psychiatrist_panties_3" "Continue." 300>>]
</div>/*#
#desc: psychiatrist topic: discuss panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You sit getting increasingly excited as <<=setup.getNpcName("npc_psychiatrist","formal")>> has you discuss each pair of panties in turn. Each time is the same, as she presses the intimate fabric over your face, having you breathe deep the smell of its prior owner as you describe the texture, the style. What the selection says about its wearer, and what message it communicates to those allowed to see them...<br>
<br>
From <<=ps(setup.getNpcName("npc_manager","formal"))>> classic fashion to <<=ps(setup.getNpcName("npc_guard","formal"))>> focus on function, from the holy latex of <<=setup.getNpcName("npc_nun_chastity","formal")>> to the thick sturdiness of <<=setup.getNpcName("npc_guard","formal")>>, the modesty of <<=setup.getNpcName("npc_discipline","formal")>> to the lasciviousness of <<=setup.getNpcName("npc_sexdoll","formal")>>, the bonus rear feature of <<=setup.getNpcName("npc_pr_sissy","formal")>> or the uniquely tailored front of <<=setup.getNpcName("npc_futa","formal")>>, from the casual delight of <<=setup.getNpcName("npc_barista","nickname")>> to the professionalism of <<=setup.getNpcName("npc_prostitute","first")>>, the variety and memory, the act of describing what you had to do to earn each pair... and all the while you find yourself even more anticipating earning <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>>...<br>
<br>
You are on the edge of your seat with anticipation as she reaches the final pair... only to reverse things around, stretching the band over your face with the crotch still pressed over your mouth and nose...<br>
<br>
[<<moveTo "theme_psychiatrist_panties_4" "You feel her adding another layer..." 180>>]
</div>/*#
#desc: psychiatrist topic: gag
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<<addItem "panties_gag">>
<<wearItem "panties_gag" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You moan as the panty gag builds up further and further, <<=setup.getNpcName("npc_psychiatrist","formal")>> reminding you of each aspect of femininity the previous wearer most exemplified as she stretches their used panties over your face, building up layer after layer as you sit blind, mute, unable to smell anything save the dried blend of femininity... and then you hear the sound of fabric sliding down legs, the quiet snap of elastic as <<=setup.getNpcName("npc_psychiatrist","formal")>> finishes peeling off HER panties... the fresh scent somehow cutting past all the rest as she pulls them over your face...<br>
<br>
"@@.npc_psychiatrist;Yes, breathe deep, accept all of it into yourself, knowledge... perhaps even gnosis that you can be any sort of woman you want. All paths are open to you. Explore, embrace... learn... and know joy.@@"<br>
<br>
You nearly faint with excitement, <<=setup.getNpcName("npc_psychiatrist","formal")>> keeping you from teetering off the chair as she holds you in place and then begins to gently peel away the layers...<br>
<br>
[<<moveTo "theme_psychiatrist_panties_5" "Calm down." 180>>]
</div>/*#
#desc: psychiatrist topic: reward
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "panties_gag" true>>
<<deleteItem "panties_gag">>
<<removeItem "blindfold_pink" true>>
<<deleteItem "blindfold_pink">>
<<addItem "panties_psychiatrist">>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_9')>>
<<set $npc_psychiatrist.themes.other[_themeId].repeatable = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_psychiatrist","formal")>> piles the panties in your lap before finally removing the blindfold and smiling down at you. "@@.npc_psychiatrist;Good <<if $npc_psychiatrist.flags.knowgender=="female">>girl<<else>>job<</if>> I would call this exploration of femininity very productive. Enjoy your trophies and use them whenever you wish to experiment or reflect...@@"<br>
<br>
You nod, the smell still strong in your nostrils as you blink to re-adjust to the bright light of her office.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: offered enthusiast underwear option
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You start to go only to make it just as far as the door before <<=setup.getNpcName("npc_manager","formal")>> stops you with a final question.<br>
<br>
"@@.npc_manager;Oh, one other thing, speaking of <<=setup.getNpcName("npc_technician","other")>>... I believe she gave you a parting gift?@@" Your heart all but stops in your chest — how can <<=setup.getNpcName("npc_manager","formal")>> know these things? And... why is she bringing it up?<br>
<br>
You turn back to see <<=setup.getNpcName("npc_manager","formal")>> grinning as your anti-poker face gives away everything.<br>
<br>
"@@.npc_manager;You know, given your new job... well, it might be more appropriate for you to wear something like that, help to remind you that vulgar, masculine urges are no longer proper. That your new duties call for a... softer comportment.@@"<br>
<br>
Your mind's spinning, the accident, then fired, now a Secretary... and... whatever's going on now. You don't even realise that <<=setup.getNpcName("npc_manager","formal")>> has moved closer until she is literally looming in front of you, smiling face centimetres from your own, with the confident joy of a predator who has cornered a very delicious prey...<br>
<br>
"@@.npc_manager;So... how do you feel about that? Of your work uniform being revised to include some nice feminine underthings — let us say the full package — panties, stockings, bra... of course you are flat now but, well... one never knows...@@" Her hand brushes your chest, gently caressing you through your shirt as you momentarily fantasise how it would feel if she was cupping your breasts, instead...<br>
<br>
<<printThought "What's going on? What am I thinking?">><br>
<br>
You pinch yourself, but this is not a dream, and <<=setup.getNpcName("npc_manager","formal")>> continues to stare down at you, awaiting an answer...<br>
<br>
[<<moveTo "event_enthusiast_intro_2" "If it's required for your new job..." 60 "<<set $scene.action='yes'>>">>]<br>
[<<moveTo "event_enthusiast_intro_2" "Yes, and..." 60 "<<set $scene.action='more'>>">>]<br>
[<<moveTo "event_enthusiast_intro_2" "No!, You aren't going to wear panties to work!" 60 "<<set $scene.action='no'>>">>]
</div>/*#
#desc: accept enthusiast underwear option
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != 'no'>>
<<set $player.sec_style.clothing.underwear = "enthusiast">>
<<set _x = setup.clearThoughtList()>>
<<addTaskReq $currentTasks.manager_first_morning_inspection_task 'clothesUnderwear' 'femaleUnderwear'>>
<<setThreshold 'feminization' 'enthusiast' 'panties'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'yes'>>
Somewhat hesitant you nod. After all, it's only underwear, and it would probably be good to start out on your new boss' "good" side...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods, then pauses, as if waiting for you to say something further.<br>
<br>
"@@.npc_manager;Hmm, well, it is agreed, then. I shall see you in the morning, on time, clean, and wearing a lovely set of feminine underthings.@@" She turns in place and is almost immediately taking a seat behind her desk once again. "@@.npc_manager;I believe that is our business concluded for today. Have a good evening.@@"<br>
<br>
You nod nervously and beat a hasty retreat, still not quite sure what you've signed yourself up for...<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Ride the elevator back down." 180>>]
<<case 'more'>>
You're almost in a trance as you nod in acceptance... and then ask if there's any other changes you could make to your attire to "better suit" your new position?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles even wider. "@@.npc_manager;Now that you say that... well... what you have on now, it is fine for your old job. But a Secretary is a representative position... and corporate drone is not really the best first impression to give to visitors. How would you feel about dropping masculine clothing entirely?@@"<br>
<br>
[<<moveTo "event_enthusiast_intro_3" "Maybe less masculine clothing would feel nice..." 60 "<<set $scene.action='yes'>>">>]<br>
[<<moveTo "event_enthusiast_intro_3" "Yes, and..." 60 "<<set $scene.action='more'>>">>]<br>
[<<moveTo "event_enthusiast_intro_3" "No!, Concealed panties is one thing, but you aren't going to change your whole wardrobe!" 60 "<<set $scene.action='no'>>">>]
<<case 'no'>>
This day has been one insanity after another but, even if you're about to start a new job as a Secretary... you aren't looking to change anything else about your life!<br>
<br>
You shake your head. <<=setup.getNpcName("npc_manager","formal")>> laughs softly. "@@.npc_manager;Very well. In that case, I believe today's business is concluded. I will see you in the morning — on-time, clean, and properly dressed for your new job.@@"<br>
<br>
Heart racing now, you quickly confirm that properly dressed means male underwear, right?<br>
<br>
"@@.npc_manager;Yes, boy underwear will be accepted... at least for tomorrow.@@"<br>
<br>
The implication of her phrasing does nothing to calm your nerves, but you think better than to poke things further, instead quickly thanking her for the job and then backing away. You're unsure of what you expect her to do if you were to turn your back... but in any case, you keep your eyes on your new manager until the door closes. You all but sprint to the elevator.<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Down and away from your intimidating new boss..." 180>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: accept enthusiast unisex
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != 'no'>>
<<set $player.sec_style.clothing.unisex = "enthusiast">>
<<set _x = setup.clearThoughtList()>>
<<addTaskReq $currentTasks.manager_first_morning_inspection_task 'clothing' 'unisexClothes'>>
<<applyExperience 'feminization' 5 'normal' $SEEN_STRANGER>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'yes'>>
You've never really liked your work dress code of slacks and a collared shirt, to say nothing of your tie! <<printThought "Ugh!">> You nod and say you would be willing to dress in a more neutral manner.<br>
<br>
"@@.npc_manager;Lovely — I shall send a delivery to your flat so that you have something suitably appropriate to wear tomorrow morning. I must say, you are rapidly proving to be quite the wise hire. But I think that will be enough for one day, and I shall bid you good evening. I yet have work to do, and I am sure you could use a rest after your... eventful day.@@"<br>
<br>
You nod and thank her, again, for the job, making it all the way back to the elevator before it hits you just what you've agreed to — not just a new job, but a total wardrobe change, from underwear on out!<br>
<br>
<<printThought "Well... I'm sure it can't be too bad, and I can always renegotiate if I decide it isn't working.">><br>
<br>
Still a bit trepidatious you manage to convince yourself to be satisfied with the state of things as you step into the elevator.<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Ride the elevator back down." 180>>]
<<case 'more'>>
You nod, a more unisex wardrobe would make more sense for a secretary... and you would hardly object to ditching your tie. Despite this already significant build up of changes you find yourself pressing forward, asking if there is anything else that you could do to better position yourself for success in your new position?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grins, but pauses for a moment, peering deep into your eyes... and seeming to like what she sees.<br>
<br>
"@@.npc_manager;In point of fact, there is. This may seem like a somewhat unorthodox request but... well, with all the excitement of your new position I have found it quite advantageous for my employees to have some additional help in keeping things under control, as it were. There are two routes one may take in this matter — hormonal, in the form of some testosterone inhibitors to blunt the caustic effect of that nasty substance... or physical, in the form of a nice, secure chastity device, to be worn at all times while on duty.@@"<br>
<br>
<<printThought "Wait, chastity? Hormone blockers? What sort of place is this? Am I really going to consider...">><br>
<br>
You half expect a wall to burst open and a tv crew to pop up and reveal this is all a prank... but <<=setup.getNpcName("npc_manager","formal")>> gives no indication that she is joking... and you have a fleeting thought that perhaps such help might counter the effects of your ill-fated penis pill experimentation?<br>
<br>
[<<moveTo "event_enthusiast_intro_4" "You suppose you could wear chastity at work..." 60 "<<set $scene.action='chastity'>>">>]<br>
[<<moveTo "event_enthusiast_intro_4" "You can see the use in chastity — is there anything else non-hormonal she would like of you?" 60 "<<set $scene.action='chastity_more'>>">>]<br>
[<<moveTo "event_enthusiast_intro_4" "You're willing to experiment with some testosterone blockers..." 60 "<<set $scene.action='hormone'>>">>]<br>
[<<moveTo "event_enthusiast_intro_4" "You don't like the idea of chastity, but some more balanced hormones sounds good... is there anything else she would recommend for you?" 60 "<<set $scene.action='hormone_more'>>">>]<br>
[<<moveTo "event_enthusiast_intro_4" "Both. Both is good." 60 "<<set $scene.action='both'>>">>]<br>
[<<moveTo "event_enthusiast_intro_4" "Both. Both is good... but perhaps both and more is even better?" 60 "<<set $scene.action='both_more'>>">>]<br>
[<<moveTo "event_enthusiast_intro_4" "Chastity? Hormone blockers? No, those both sound like a step too far!" 60 "<<set $scene.action='no'>>">>]
<<case 'no'>>
You shake your head — panties were one thing, you can keep that hidden under your other clothes, but shifting your whole wardrobe? Nope, not gonna happen.<br>
<br>
"@@.npc_manager;Very well,@@" <<=setup.getNpcName("npc_manager","formal")>> replies nonplussed. "@@.npc_manager;In that case I believe we are done for the day. I shall let you return home to rest and prepare for your new job in the morning. Remember — on time, feminine underthings, and clean clothes suitable for the office. See you then!@@"<br>
<br>
You nod and beat a swift retreat to the elevator, oddly feeling like your new <<=setup.getNpcName("npc_manager","title")>> is still watching you, even after you have left her office and are making your way up the hall.<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Down and away from your intimidating new boss..." 180>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: accept enthusiast chastity/tblock
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ['chastity', 'chastity_more', 'both', 'both_more'].includes($scene.action)>>
<<set $npc_manager.stagevalues[1].enthusiastchastity = true>>
<<set $npc_manager.flags.require_chastity = true>>
<<setThreshold 'submission' 'submissive_secretary' 'enthusiast'>>
<<applyExperience 'submission' 5 'terrible' $SEEN_FRIEND>>
<</if>>
<<if ['hormone', 'hormone_more', 'both', 'both_more'].includes($scene.action)>>
<<addNpcTheme 'npc_manager' 'transformation' "theme_manager_penis_shrink"
0
'theme_manager_penis_shrink_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' "theme_psychiatrist_penis_shrink"
0
'theme_psychiatrist_penis_shrink_1'
false
>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'chastity'>>
The morning seems so long ago, back when agreeing to be a Secretary — much less one locked in chastity! — would have seemed quite unthinkable... and yet, here you are, nodding in agreement with <<=ps(setup.getNpcName("npc_manager","formal"))>> proposal that being locked in chastity will be part of your work-place attire.<br>
<br>
"@@.npc_manager;A prudent decision, I shall have your device ready in the morning. For now, well, enjoy your evening!@@" She winks, the implicit reminder that you have agreed to sacrifice your freedom making your tremble slightly as you leave the office and walk up the hall to the elevator.<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Ride the elevator back down." 180>>]
<<case 'chastity_more'>>
You almost casually agree to her chastity proposal...<br>
<br>
"@@.npc_manager;A prudent decision, I shall have your device ready in the morning.@@"<br>
<br>
You wait a beat and then seem to surprise her as you ask if there is anything non-pharmaceutical you could do to set yourself up for success in your new job?
<<case 'hormone'>>
Chastity seems a bit crazy, but you decide that the other option could be just what you need to get your post-penis pill body back under control and you agree to her proposal.<br>
<br>
"@@.npc_manager;Lovely. I think you will quite appreciate how such therapy serves to even you out. It is amazing how men do not recognise just what a caustic influence testosterone is until after they are out from under its effects. I shall have the company's pharmacology division brew things up and deliver to you this evening. I am sure it will give you just the most restful night's sleep to have you prepared for work. And, speaking of such... I will look forward to seeing you in the morning — properly dressed and ready to start your new job... or should I say life?@@"<br>
<br>
You nod, thanking her again for the job opportunity before hastily beating a retreat from her office.<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Ride the elevator back down." 180>>]
<<case 'hormone_more'>>
You tell yourself that this is just to deal with the lingering side-effects of that horrible drug you took... but even in your head you aren't sure if that argument fully holds up. In any case, you agree to <<=ps(setup.getNpcName("npc_manager","formal"))>> proposal that you start taking testosterone blockers to help you be a better Secretary.<br>
<br>
"@@.npc_manager;Lovely. I think you will quite appreciate how such therapy serves to even you out. It is amazing how men do not recognise just what a caustic influence testosterone is until after they are out from under its effects. I shall have the company's pharmacology division brew things up and deliver it to you this evening. I am certain it will give you just the most restful night's sleep to have you prepared for work.@@"
<<case 'both'>>
Your heart thumps in your chest as you agree to both of <<=ps(setup.getNpcName("npc_manager","formal"))>> proposals.<br>
<br>
"@@.npc_manager;Lovely. I shall have the company's pharmacology division brew things up and deliver to you this evening, and I will have your lovely chastity device ready for you in the morning. Oh you are just on the fast track to being a perfect Secretary!@@"<br>
<br>
A part of you still isn't sure about that, but you thank her nonetheless and she dismisses you for the evening. Only once you are out of her office and her sight do you begin to calm down, reeling for a moment at just how much you have agreed to change in such a short time...<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Ride the elevator back down." 180>>]
<<case 'both_more'>>
Your heart thumps in your chest... and then you have a feeling of calm as you agree to both of <<=ps(setup.getNpcName("npc_manager","formal"))>> proposals.<br>
<br>
"@@.npc_manager;Lovely. I shall have the company's pharmacology division brew things up and deliver to you this evening, and I will have your lovely chastity device ready for you in the morning. Oh you are just on the fast track to being a perfect Secretary!@@"<br>
<br>
You nod... and have a strange urge to curtsy, as you ask if there is anything else you could do to prepare for your new position?
<<case 'no'>>
You consider her dual proposals... and decline.<br>
<br>
"@@.npc_manager;I see, well, they are a bit of an ask before you have even experienced your first day. I believe that shall be all for the evening — I will look forward to seeing you in the morning, properly dressed, prompt, and clean.@@"<br>
<br>
You nod, thanking her a final time for the job opportunity before quickly retreating from her office and her entrancing and intimidating sight.<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Down and away from your intimidating new boss..." 180>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if ['chastity_more', 'hormone_more', 'both_more'].includes($scene.action)>>
<<=setup.getNpcName("npc_manager","formal")>> seems excited, practically beaming with pride as she traces a finger down your body that sends a shiver down to your soul.<br>
<br>
"@@.npc_manager;So obedient... one might even call you... a good girl... Hmm? Does that sound better? I think we both knew that little agreement to ditch the masculine attire was but a temporary conceit. So... how about the full measure? Are you ready to dress as a proper feminine Secretary, skirt and all?@@"<br>
<br>
[<<moveTo "event_enthusiast_intro_5" "Yes." 60 "<<set $scene.action='yes'>>">>]<br>
[<<moveTo "event_secretary_style_breasts_enthusiast_1" "Actually, if you're going to be dressing female, you're thinking your bra is going to be a bit... empty..." 60 "<<set $scene.action='yes'>>">>]<br>
[<<moveTo "event_enthusiast_intro_5" "A skirt? No... that's too much." 60 "<<set $scene.action='no'>>">>]
<</if>>
</div>/*#
#desc: accept enthusiast female
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != "no">>
<<set $player.sec_style.clothing.female = "enthusiast">>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set _x = setup.clearThoughtList()>>
<<addTaskReq $currentTasks.manager_first_morning_inspection_task 'clothing' 'officeFemaleClothes'>>
<<applyExperience 'feminization' 10 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'yes'>>
With a tremble in your voice you agree to wear only feminine clothing for your new job.<br>
<br>
<<printThought "Did I really agree to that? There's nothing that says a Secretary can't do their job wearing shirt and slacks... was I just looking for an excuse?">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles as if in triumph. "@@.npc_manager;Wonderful. You really have saved SO much time... well, I shall keep you no longer. I am already looking forward to seeing what you come up with in the morning — remember feminine top to bottom, show up prompt and clean and ready to start your new job!@@"<br>
<br>
You curtsy and <<=setup.getNpcName("npc_manager","formal")>> grins even wider as you blush in realisation of what you've done and hurriedly rush out of the office.<br>
<br>
<<printThought "What's going on... am I becoming a girl? Or was I always a girl and am just now realising it?">><br>
<br>
You shake your head. Today has been way too stressful, best to go home, have a shower... and deal with things later.<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Ride the elevator back down." 180>>]
<<case 'more'>>
You nod. A skirt does seem the proper Secretary uniform, after all, and it should nicely offset your new rack... You hesitate a moment and then ask once again if there is anything else?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Hmm... I suppose, since you are so eager to be my office girl... well, your current name is not quite appropriate, hmm? So, tell me, what would you rather be called? Making the change now will simplify the paperwork, and I can take care of the government side of things as well.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm." 30 "<<set $scene.enthusiast_namechange=true>>">>]<br>
<<else>>
[<<link "Enter your new name">><<openDialog "Enter your new name:" "dialog_selectNameEnthusiast">><</link>>]<br>
<</if>>
[<<moveTo "event_enthusiast_intro_6_abort" "No... that's too much." 60>>]
<<case 'no'>>
You shake your head — you've already agreed to a de-masculinised outfit, but to go all the way to wearing a skirt? No, that's too much, even if you really do need the job.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> takes your rejection in stride. "@@.npc_manager;Well... we will see how things go. I believe that is all for today. I shall see you tomorrow morning at <<if $options.militaryTime>>oh eight-hundred<<else>>eight am<</if>> sharp — clean, dressed, and ready to work!@@"<br>
<br>
You thank her, again, for the new job and quickly make your exit from her office, her eyes remaining on you all the way until the door closes behind you.<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Down and away from your intimidating new boss..." 180>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: abort enthusiast intro
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Changing your name? No, that's too much. You decline <<=ps(setup.getNpcName("npc_manager","formal"))>> offer and she nods.<br>
<br>
"@@.npc_manager;Very well, <<=$player.first_name>> <<=$player.last_name>>. Our business today is concluded. I shall see you tomorrow morning — <<if $options.militaryTime>>oh eight-hundred<<else>>eight am<</if>> sharp — clean, dressed, and ready to work.@@"<br>
<br>
You thank her, again, for the new job and make your exit from her office, feeling her eyes upon you seemingly all the way up the hallway, even after the door has closed behind you and there is no way she could see you.<br>
<br>
<<printThought "Unless she can see through walls? No, that doesn't make sense. She's just a manager, not an all-powerful mystical being...">><br>
<br>
[<<moveTo "event_dataservice_intro_11" "Down and away from your intimidating new boss..." 180>>]
</div>/*#
#desc: dialog box for choosing your name on enthusiast path
#status: RELEASED 0.8.6.0
#*/
<center>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>>
</center>
<br>
<<set $scene.enthusiast_namechange=true>>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'event_manager_daily_check_stage_2_3_female_secretary_3'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: enthusiast identify
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.identify_fem>>
<<set _sourceChar = "npc_manager">>
<<set $player.sec_style.body.identify_fem = "enthusiast">>
<<include "identifyFemUnlocks">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your heart is beating like you just finished sprinting... which, in a way, you suppose you have. Not wanting to lose this momentum, you nervously ask if <<=setup.getNpcName("npc_manager","formal")>> could refer to you as a woman in addition to using your new name?<br>
<br>
She smiles, as, despite your nerves, you somehow knew she would. "@@.npc_manager;But of course, my dear! And such a lovely woman you are...@@"<br>
<br>
[<<moveTo "event_enthusiast_intro_6" "Nod, time to leave..." 360 "<<set $scene.continue=false>>">>]<br>
[<<moveTo "event_enthusiast_intro_6" "Is there anything else?" 360 "<<set $scene.continue=true>>">>]
</div>/*#
#desc: enthusiast intro name aftermath
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You curtsy and thank <<=setup.getNpcName("npc_manager","formal")>>
<<if $scene.continue>>
and ask if there is anything else you could do?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grins and all but licks her lips. "@@.npc_manager;Oh... so, so much... but I think this is more than enough before you have even taken your first day. I want to give you at least some time to adjust and explore on your own.@@"<br>
<br>
You nod, though you aren't entirely sure what she means...<br>
<br>
<<printThought "Well... if we're talking embracing being female... maybe I should do something about my hair? And some makeup... maybe nails? I guess maybe I do have quite a bit more to attend to...">>
<<else>>
for her assistance.<br>
<br>
"@@.npc_manager;Of course! How could I resist such enthusiasm! Yes... the two of us are going to have a simply lovely time together — starting tomorrow morning, where I expect to see you <<if $options.militaryTime>>oh eight-hundred<<else>>eight am<</if>> sharp — clean, dressed, and ready to work... Miss <<=$player.first_name>>.@@"<br>
<br>
Hearing your name makes your heart race with excitement... you only just changed it, and yet it feels right, far moreso, you now realise, than your old name ever did.
<</if>>
<br><br>
You thank her with a parting curtsy and turn to leave.<br>
<br>
[<<moveTo "event_contract_enthusiast_1" "Could your contract be updated in light of... everything?" 180 "<<set $scene.enthusiast=true>>">>]<br>
[<<moveTo "event_contract_enthusiast_1" "Ride the elevator down." 180 "<<set $scene.enthusiast=false>>">>]
</div>/*#
#desc: enthusiast contract
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.enthusiast>>
<<set $scene.secretary_contract = "enthusiast">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.enthusiast>>
As you're about to leave you ask <<=setup.getNpcName("npc_manager","formal")>> if your "new" attire, and the rest, could be written into your contract?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Looking for a bit of extra official reinforcement to keep you on your new path? Of course, I will make the changes before I email you your copy. Oh, you and I are going to have a wonderful time.@@"<br>
<br>
Still tingling, you bow and make your exit.
<<else>>
You turn to go when <<=setup.getNpcName("npc_manager","formal")>> calls after you. "@@.npc_manager;And remember: I will be expecting you to meet your new uniform requirements in the morning, that is to say<<if $player.sec_style.clothing.female>>, fully feminine in style<<elseif $player.sec_style.clothing.unisex>>, no more of that... masculine attire like you have on now<<else>>ERROR: unexpected<</if>>.@@"<br>
<br>
You feel a slight thrill run down your spine as you nod nervously and hurry off, mind still reeling at what you've just agreed to.
<</if>>
<br><br>
[<<moveTo "event_dataservice_intro_11" "Ride the elevator down." 180>>]
</div>/*#
#desc: delivery of enthusiast items
#status: RELEASED 0.8.6.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You've calmed down a bit from the recent conflagration that has effectively gutted your wardrobe when you hear the door chime.<br>
<br>
[<<moveTo "event_enthusiast_delivery_2" "Answer the door." 180>>]
</div>/*#
#desc: enthusiast items arrive
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkNaked()>>
<<applyExperience 'humiliation' 5 'terrible' $SEEN_STRANGER>>
<<elseif !setup.checkPlayerDecency()>>
<<applyExperience 'humiliation' 3 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You open the door to find a drone hovering before you. It scans your face to confirm your identity before dropping a package in your hands and zooming off.<br>
<br>
As the drone zips up the hallway you lock eyes with one of your neighbors. You've never really gotten to know anyone else in the building,
<<if setup.checkNaked()>>
but, as they look you over and you turn a deep shade of shameful red you realise that they now know you MUCH better than you know them.<br>
<br>
You yip in fear and beat a hasty retreat back into your flat before they can pick their jaw up off the floor.<br>
<br>
<<printThought "I really need to collect myself, going out in public without clothes... what's wrong with me today?">>
<<elseif !setup.checkPlayerDecency()>>
but, as they look you over and you turn a deep shade of shameful red you realise that they now know you a bit better than you know them.<br>
<br>
You yip in fear and beat a hasty retreat back into your flat before they can pick their jaw up off the floor.<br>
<br>
<<printThought "I really need to collect myself, going out in public without being properly dressed... what's wrong with me today?">>
<<else>>
but they vaguely nod at you in acknowledgement before disappearing into their flat.<br>
<br>
<<printThought "Good thing I put something on first, that could have been embarrassing!">>
<</if>>
<br><br>
[<<moveTo "event_enthusiast_delivery_3" "Check out your package." 180>>]
</div>/*#
#desc: unpack enthusiast clothing
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.female>>
<<addItemSet 'unisex_office'>>
<<wearItemSet 'unisex_office'>>
<<setThreshold "feminization" "voluntary_path_feminization" "unisex_outside">>
<<else>>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<<addItemSet 'secretary_pink'>>
<<wearItemSet 'secretary_pink'>>
<<setThreshold "feminization" "voluntary_path_feminization" "female_outside">>
<<setThreshold 'heels' 'wearing_heels' 'beginner'>>
<</if>>
<<addItemSet 'satin_lingerie_pink'>>
<<wearItemSet 'satin_lingerie_pink'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You open the package to find
<<if $player.sec_style.clothing.female == "">>
a pair of pants, ballet flats, and a silk top. The combination is a definite shift from your old male work attire... but not really that different in function — sure the shoes are a bit less rugged than you're accustomed, but they don't have heels and the rest... well, it's still a top and pants, not like you'd be wearing a skirt or anything like that! Underneath the unisex outfit you find a set of clearly feminine pink underthings — stockings, silk bra, and panties.<br>
<br>
Tomorrow's clothing now sorted you start to put things away when you come across a short, hand-written note.
<<else>>
pink. Specifically a matching pink satin blouse, pink leather skirt, and pink mary jane style heels, and underneath that neat stack of outerwear a set of matching pink underthings — stockings, silk bra, and panties. You shiver slightly as you look down at the VERY feminine ensemble that <<=setup.getNpcName("npc_manager","formal")>> clearly expects you to wear to work in the morning...<br>
<br>
Atop the clothing you find a note.
<</if>>
<br><br>
"@@.npc_manager;These should be your size, and remember, per our agreement I expect you to be dressed in this, or something of at least similar distance from masculinity. And do not forget your underthings! Panties, stockings, bra — I look forward to seeing you looking sharp tomorrow morning.<<if -1 != setup.findThemeId('npc_manager', 'transformation', "theme_manager_penis_shrink")>> And do not forget your testosterone blockers! The enclosed pill is a one-time use, it will bind to your receptors and keep that nasty male hormone from having such dire effects upon you permanently, barring a reversal procedure.<</if>>@@"<br>
<br>
-<<=setup.getNpcName("npc_manager","formal")>><br>
<br>
<<printThought "Wait... is she planning on seeing me in my underthings? No, that doesn't make sense, she must have just written things a bit weird. Though... if she doesn't check, how will she know I met the full uniform requirement?">><br>
<br>
You shake your head. Your new boss is too much of a puzzle for you to try to suss out after such a long day.<br>
<br>
Caught up in the excitement of the moment you try the new outfit on. It fits surprisingly well and looking at your reflection you're startled at how good you look.<br>
<br>
<<if !$player.sec_style.clothing.female>>
<<printThought "Wow, if it wasn't for my face I'd barely look like a guy at all...">>
<<else>>
<<printThought "Wow, I look like a girl... well, at least from the neck down...">>
<</if>>
<br><br>
<<if -1 != setup.findThemeId('npc_manager', 'transformation', "theme_manager_penis_shrink")>>
Down beneath the clothing you find a smaller box in which is a single pill. Surprisingly small, given the potential enormity of the described effects, you stare at if for several long moments.<br>
<br>
[<<moveTo "event_enthusiast_delivery_4" "Swallow it." 300 "<<set $scene.swallow=true>>">>]<br>
[<<moveTo "event_enthusiast_delivery_4" "Don't swallow it." 60 "<<set $scene.swallow=false>>">>]
<<else>>
You have what you need for work — despite the fire, best not to worry beyond that.<br>
<br>
<<if $player.sec_style.clothing.female == "enthusiast">>
[<<moveTo "event_enthusiast_clothing_purge_1" "Continue." 180>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Back to your flat." 180>>]
<</if>>
<</if>>
</div>/*#
#desc: enthusiast tblock
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.swallow>>
<<setThreshold 'feminization' 'enthusiast' 'tblock'>>
<<applyStress -10>>
<<set $player.sec_style.body.tblock = "enthusiast">>
<<setTmpEffect 'tblock_eternal'>>
<<else>>
<<set $player.sec_style.body.tblock = "">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.swallow>>
Your heart beating a little faster, you bring the pill to your lips, placing it on your tongue and then tilting your head back to swallow.<br>
<br>
You feel a sort of calm spread through your body — a welcome relief, given the stress of the day thus far... but a sensation you're certain has to be placebo. A few more minutes wait and you feel nothing more, though you rationalise that the drug should have fairly modest effects, and will certainly take time to work.
<<else>>
You change your mind about the pill, and start to put it back into its container only for the tiny thing to slip out of your fingers and go bouncing across the floor.<br>
<br>
You dive after it... but not fast enough to catch it before it slips through a furnace grate and with a tink, tink, tink, disappears down into the ductwork of the building.<br>
<br>
<<printThought "Well... I guess that's that... I hope this doesn't upset <<=setup.getNpcName('npc_manager','formal')>>... though it's not like she's going to draw blood and check my hormone levels right?">>
<</if>>
<br><br>
<<if $player.sec_style.clothing.female == "enthusiast">>
[<<moveTo "event_enthusiast_clothing_purge_1" "Continue." 180>>]
<<else>>
[<<moveTo "event_admin_firstday_call" "Back to your flat." 180>>]
<</if>>
</div>/*#
#desc: consider enthusiast purge
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
As you look at your new outfit your thoughts drift to the recent fire. You've lost nearly all of your male clothing... but really, do you need any of it? Maybe this is a sign and you should cut the line here, remove the slightest temptation to wear anything from what you are already starting to think of as your "old" life...<br>
<br>
[<<moveTo "event_enthusiast_clothing_purge_2" 'Yes, purge it all!' 300 "<<set $scene.purge=true>>">>]<br>
[<<moveTo "event_enthusiast_clothing_purge_2" "No, you'll keep things around... just in case." 60 "<<set $scene.purge=false>>">>]
</div>/*#
#desc: enthusiast purge
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.purge>>
<<set $player.sec_style.clothing.purge = "enthusiast">>
<<setThreshold 'feminization' 'purge_feminization' 'enthusiast_purge'>>
<<destroyMaleClothing $player $now true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.purge>>
Perhaps caught up in the moment, you gather up the last of your male clothing and dump it straight in the garbage chute. It's not quite as "theatrical" as the fire from earlier... but you do not think setting off the smoke alarm twice in one day would be a particularly smart move.
<<else>>
You decide that destroying all of your remaining male clothing is perhaps a bit too much, too fast.
<</if>>
<br><br>
[<<moveTo "room_bedroom" 'Back to your bedroom.' 60>>]
</div>/*#
#desc: game intro/PC description
#status: FINISHED 0.4.0.0
#ignore_spell: kg,css,ui
#*/
<<if $player.skintone == "dark">>
<<set $player.hair.style = "short_curls">>
<</if>>
<<if $cruelMode>>
<<set $npc_manager.flags.cruel = 2>>
<<set $npc_psychiatrist.flags.cruel = true>>
<</if>>
<<unset $cruelMode>>
<<set $scene = {}>>
<<set $daily = {}>>
<<set $scene.entercompany = false>>
<<notificationFeedStartAccepting>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<</if>>
You are <<=$player.first_name>> <<=$player.last_name>>. You are about <<=$player.height>> cm tall and weigh around <<=$player.weight>> kg. Until last week, your life was pretty normal and still kind of enjoyable. You had a beautiful girlfriend, <<=setup.getNpcName('npc_exgirlfriend', 'full')>> whom you loved, a job you liked and hopes for your future. You had even made a promise with your girlfriend that you would both remain virgins until marriage. Turned out only one of you two took that oath to heart.<br>
<br>
You've always been kind of tense because of your penis size. <<=setup.getNpcName('npc_exgirlfriend', 'first')>> said she didn't really mind, but more recent events would tell a different tale. Despite your instincts warning you against it, you recently decided to try one of those "penis enlargement" pills. That decision set in motion your downfall, starting with the hefty bill. A bill both literal and figurative, since the pills cost a lot and worked not at all. At least, not as intended. Since taking them, you've found yourself getting horny on a regular basis and once you reach a certain level without release, things tend to get... hard... for you. You've seen a doctor, but since the components of the pills are unknown, all they could say was to wait and that the effects will most likely dwindle over time.<br>
<br>
As if all that wasn't enough, you caught your girlfriend in bed with her Yoga Trainer last week. Your whole world was shattered. Her excuse was "Anal does not count." Count or not, she broke up with you and moved out rather quickly, taking most of her belongings with her and leaving you with the whole apartment, rent and all.<br>
<br>
With everything that has happened, your thoughts have been all over the place. Did you waste the last 4 years of your life? Was the entire relationship a sham, or did it only just start to fall apart?<br>
<br>
Your lack of focus has started to influence your work performance as well. Difficulty sleeping has only made things worse on that count.<br>
<br>
You wake up after a long night of tossing and turning in your lonely, way-too-big bed.<br>
<br>
<<printThought "Fuck, I'm worn out. I didn't sleep at all last night.">><br>
<br>
<<script>>
$("#ui-notification").css("display", "");
<</script>>
[<<moveTo "room_bedroom" "Wake up." 0 "<<set UIBar.unstow()>>">>]/*#
#desc: game intro tutorial
#status: FINISHED 0.7.12.0
#*/
<<set $scene.hints=true>>
<div id="invframe" class="scrolltext">
Welcome to a new game of Secretary — you're in the prologue right now and it's time to go to work, keep an eye out for <<hint $options "for further hints">> links. Blue text, in general, are links and clicking them will move you through the game. Would you like some more detailed steps to help you through the intro?<br>
<br>
[<<moveTo "event_initial_hints_2" "Yes, please." 0>>]<br>
[<<moveTo "room_bedroom" "I'm ready to get back to the game." 0>>]<br>
</div>/*#
#desc: game intro tutorial
#status: FINISHED 0.7.12.0
#*/
<div id="invframe" class="scrolltext">
1) You should pick your smartphone. Click on it in your bedroom. <<if setup.checkItemInInventory("smartphone")>>DONE!<</if>><br>
2) You should open your wardrobe and retrieve your work clothes (black trousers, blue shirt, tie, boxers and socks). Click on the wardrobe link in your bedroom, then click on each item to move to your inventory. <<if setup.checkItemInInventory("shirt") && setup.checkItemInInventory("socks") && setup.checkItemInInventory("b_trousers") && setup.checkItemInInventory("tie")>>DONE!<<elseif setup.checkItemInInventory("shirt") || setup.checkItemInInventory("socks") || setup.checkItemInInventory("b_trousers") ||setup.checkItemInInventory("tie")>><<printThought "I think I missed a couple of things...">><</if>> <<hint $options "You can also store things in your wardrobe for later.">><br>
3) Head to the Foyer to find your shoes near the door. <<if setup.checkItemInInventory("shoes_black")>>DONE!<</if>><br>
4) Time to get dressed — click "Inventory" then click "Office Clothes" to equip you full office attire. <<if setup.checkItemWorn("shirt") && setup.checkItemWorn("socks") && setup.checkItemWorn("b_trousers") && setup.checkItemWorn("tie") && setup.checkItemWorn("shoes_black")>>DONE!<<elseif setup.checkItemWorn("shirt") || setup.checkItemWorn("socks") || setup.checkItemWorn("b_trousers") || setup.checkItemWorn("tie") || setup.checkItemWorn("shoes_black")>><<printThought "Doesn't seem like I'm quite fully dressed...">><</if>> <<hint $options "You can also click or drag and drop items to change your outfit further, for now you just need to get ready for work.">><br>
5) You're ready to venture outside — click "Leave the apartment" and head to work!<br>
<br>
[<<moveTo "event_initial_hints_3" "Further information about playing the game." 0>>]<br>
[<<moveTo "room_bedroom" "Back to the game." 0>>]
</div>/*#
#desc: game intro tutorial
#status: FINISHED 0.7.12.0
#*/
<div id="invframe" class="scrolltext">
Secretary is primarily a text adventure game.<br>
<br>
— You navigate by clicking on links. You can change your clothes via the inventory and view your current appearance on the left-hand side bar.<br>
— In the Inventory you can drag and drop clothing, make new item sets or adjust existing ones. The top section is what you are presently wearing, the bottom is what you have on you (there is no size limit on the inventory, but you may consider putting things you no longer need in the wardrobe for long-term storage). You can also filter items either by type with the drop-down between the "worn" and "carried" section, or free-form by typing in the box next to it.<br>
— NOTE FOR MOBILE USERS: if part of the inventory fails to function go to options —> Text Inventory as a work-around.<br>
— "Phone" will allow you to call other characters (if you have a phone).<br>
— "Profiles" lets you view information about characters you know or have met in-game.<br>
— "Stats" will show your character's current stats, these will go up, and new abilities will be unlocked, through gameplay.<br>
— "Tasks" will let you view what tasks you have been assigned, including what you need to do, and when they are due.<br>
— "Achievements" lets you view what you have done in the course of play.<br>
— "Options" allows you to tweak game settings.
— On the upper left you'll see left and right arrows — these allow you to move forward and backwards; useful if you want to undo a choice. <<hint $options "The maximum number of passages you can go back is configured via History in the 'Options' screen; note that too large of a history may impact performance on some devices.">><br>
— On the lower left you'll find a button for "SAVES" — this allows you to save and load progress. You can save locally (in the browser cache) or "Save to Disk" to move between computers or such. Note that "Save to Disk" saves your current location in-game, not the entire set of saves. Also note that the first save in the list is an "autosave" that is automatically overwritten ~every in-game morning.<br>
<br>
<<hint $options "You can reference this screen from the 'Options' menu.">><br>
<<if $player.llocation == "event_initial_hints_2">>
[<<moveTo "room_bedroom" "Back to the game!" 0>>]
<<else>>
[<<moveTo $player.plocation "Back to the game!" 0>>]
<</if>>
</div>/*#
#desc: pickup phone
#status: FINISHED 0.8.4.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'smartphone'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You pickup your phone. Nice and charged you wonder how you'd do much of anything without the handy communication device.<br>
<br>
<<printThought "Yup, definitely wouldn't want to go anywhere without my trusty phone...">><br>
<br>
[<<moveTo "room_bedroom" "Continue getting ready." 30>>]
</div>/*#
#desc: grab shoes first day
#status: FINISHED 0.8.4.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'shoes_black'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You pickup your shoes. Basic... arguably cheap men's shoes they fit the dress code for your job, even if they aren't the most comfortable or durable thing to wear.<br>
<br>
<<printThought "Then again... at least they're flats. I've heard some of the women complain about wearing the heels their dress code mandates.">><br>
<br>
<<if !setup.checkItemTypeOwned('stockings')>>
<<printThought "Speaking of uncomfortable... I really need socks! Guess it's back to the wardrobe, there's gotta be a more efficient morning routine...">><br>
<br>
<</if>>
[<<moveTo "room_foyer" "Continue on." 30>>]
</div>/*#
#desc: phone call first day having not shown up to work on time
#status: FINISHED 0.4.0.0
#ignore_spell: p,s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.entercompany>>
<<initRoom>>
<<moveTo $player.plocation>>
<<else>>
<<set $currentcall = true>>
<<set _tmpTime = new Date(Date.UTC(2033, 5, 28, 9, 7, 0))>>
<<addEvent 'prologue_second_call' _tmpTime>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.entercompany>>
Your phone is ringing. It's <<=setup.getNpcName('npc_admin', 'first')>>, a colleague and long-time friend of yours. You think about mentally reciting an expositional rant about how the two of you met, but you decide that can wait for later and answer the phone.<br>
<br>
"@@.npc_admin;<<=$player.first_name>>, where the hell are you? We had a critical System Failure and lost this week's data. The backup servers have most of it, but most of the test data we got last week from Nintendolls is still missing. The higher ups are in panic and we're getting calls from the mother company, so you better move your ass here A.S.A.P, or the Boss is going to fire you!@@"<br>
<br>
<<He npc_admin>> hangs up the phone before you can reply. It looks like you're in trouble now. Time to get going!<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." 0 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: fired after failing to show up to work after being called first day
#status: FINISHED 0.4.0.0
#ignore_spell: aaaah
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.entercompany>>
<<initRoom>>
<<moveTo $player.plocation>>
<<else>>
<<set $currentcall = true>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.entercompany>>
Your phone is ringing. It's <<=setup.getNpcName('npc_admin', 'first')>> again.<br>
<br>
"@@.npc_admin;Hey <<=$player.first_name>>, I know you had a hard time recently with your break up and stuff, but the bossman just informed me that your contract has been terminated since you forgot to make backups and then decided not to show up at work. He said, and I quote: "Don't bother showing up today... or any day in the future." So that's that. I'll drop your stuff this evening, okay? See you then man.@@"<br>
<br>
You drop your phone in disbelief.<br>
<br>
<<printThought "Fuck! What the hell? Why didn't I go to work today? All I had to do was get dressed, leave the house through my foyer and go to the Company! AAAAH!">><br>
<br>
[<<moveTo "gameover_speed" "Continue." 30>>]
<</if>>
</div>/*#
#desc: show up to work first day, find out about backup failure
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.stressmulti = 0>>
<<applyStress 10>>
<<if $events.hasOwnProperty('prologue_company_call')>>
<<removeEvent 'prologue_company_call'>>
<</if>>
<</if>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "I'm busy right now.">>
<<set $player.location to "Cloud Data Service">>
<<set $scene.entercompany = true>>
<<storeVisual $player $npc_admin>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You enter the office of Cloud Data Service, the same as you have every other workday morning for the past three years. CDS is a small company specialized in Cloud Computing and Data Storage. You got this job via <<=setup.getNpcName('npc_admin', 'full')>>, a long-time friend and your current direct superior. <<He npc_admin>> jokingly calls you "@@.npc_admin;Work slave@@" from time to time, but you humor yourself with the idea that you are more like a 2nd in command.<br>
<br>
You head right for your workstation, but don't even make it to your desk before <<=setup.getNpcName('npc_admin', 'first')>> blocks your way. <<His npc_admin>> normally healthy chocolate coloured skin tone turned a temporary panicked ghostly ash.<br>
<br>
"@@.npc_admin;Fuck, I think we are royally screwed this time.@@"<br>
<br>
Having just arrived at work, you are somewhat perplexed and wonder what is going on, though you know from experience with <<=setup.getNpcName('npc_admin', 'first')>> that you have no idea what the hell <<hes npc_admin>> talking about.<br>
<br>
"@@.npc_admin;Last Friday, when we got the dataset from Nintendolls. Did you kick-off the weekend backup as usual? I know it was a hard day for you, but please, try to remember. We lost the primary hard drive due to an energy surge in the systems, and now the backups from last week are nowhere to be found.@@"<br>
<br>
<<printThought "Fuck. That was the day after <<=setup.getNpcName('npc_exgirlfriend', 'first')>> broke up with me and moved out. I hardly remember any details about that day. Possibly due to the drinking spree afterwards...">><br>
<br>
You explain to <<=setup.getNpcName('npc_admin', 'first')>> that you want to check the files yourself before anyone starts to panic or jump to conclusions.<br>
<br>
[<<moveTo "event_dataservice_intro_1" "Sit down and turn on your Workstation." 6720>>]
</div>/*#
#desc: look into backup failure
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 15>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You log on to your workstation and start checking all Logs of the Backup and the Backup Backup Process. You find none. This does not look good for you. A client like Nintendolls is very important to the higher ups at your parent company, Social Interaction Service Syndicate Inc. These were test files from their newest Massive Multi-player Online Game, fresh from the stress test in the Beta. The files were vital for the next phase of the game's development. And now they're gone. Erased by a confluence of coincidence.<br>
<br>
<<printThought "Wow, I really screwed the pooch this time. This isn't my day. This isn't my week. FUCK!">><br>
<br>
You try your best to reproduce your steps from the previous Friday, but your only conclusion is that, in your distracted state, you simply forgot to start the backup process. You spend the rest of the day trying to figure out how to recover the data, even going so far to seek out the infamous tech wizard of Cloud Data Service, <<=setup.getNpcName('npc_technician', 'full')>>.<br>
<br>
[<<moveTo "event_dataservice_intro_2" "Approach the infamous Tech Wizard." 1380>>]<br>
</div>/*#
#desc: visit technician first day for help
#status: FINISHED 0.4.0.0
#ignore_spell: d&d
#*/
<<include enterroom>>
<<set $npc_technician.profile = true>>
<<storeVisual $player $npc_technician>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You enter the cube or, as she calls it, the lair of the Tech Wizard. <<=setup.getNpcName('npc_technician', 'first')>> seems to be in a good mood today. Spinning in her chair to face you like a villain in a Bond film, she smiles. You get the feeling she already knows why you're here.<br>
<br>
"@@.npc_technician;Bad news travels fast, my friend...@@" She smiles wider, revealing her teeth. "@@.npc_technician;And since your skills have proven insufficient, you come to places of higher experience to seek wisdom forbidden to one such as yourself.@@"<br>
<br>
<<printThought "She plays way too much D&D.">><br>
<br>
You ask her if she can help recover the files from the fried hard drives.<br>
<br>
"@@.npc_technician;Ah, yes, the tomes of ultimate wisdom. Many heroes have traveled far and wide and yet few are prepared to pay... the Price.@@"<br>
<br>
<<printThought "Yeah, of course <<=$npc_technician.first_name>> wants something in return for her help.">><br>
<br>
"@@.npc_technician;Seriously, <<=$player.first_name>>. If you want my assistance, you have to massage my feet till I'm done,@@" she says directly, dropping out of her Wizard facade.<br>
<br>
"@@.npc_technician;Stupid company dress code! These heels are killing me. I'm a frelling tech specialist, not a secretary, Jim. If you do this for me, I'm willing to give you some hours of my valuable work time. That said, you done screwed up bad and I cannot guarantee that we recover any data at all.@@"<br>
<br>
Massaging her feet seems kinda humiliating. You ponder your options.<br>
<br>
[<<moveTo "event_dataservice_intro_3_1" "Give in and massage her feet for a few hours." 2700>>] <<hint $options "Doing humiliating acts might affect your character in the future.">><br>
[<<moveTo "event_dataservice_intro_3_2" "Decline and try to sort out your mess on your own." 60>>]
</div>/*#
#desc: massage technician's feet first day
#status: FINISHED 0.4.0.0
#ignore_spell: hng
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 3 'insignificant' $SEEN_FRIEND>>
<<set $npc_technician.flags.dataservice_encounter.asked_for_help = true>>
<<setThreshold 'foot' 'foot_massages' 'alex_in_intro'>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
Stepping further into her cubicle, you get on your knees under her desk to assume a position comfortable for the both of you. She kicks off her heels and rests her feet on your legs, clearing her throat softly to indicate you should start demonstrating your skills at foot reflexology. Fortunately you learned these skills with your ex-girlfriend, since her feet were always sore at the end of the day. Also lucky is that your physique isn't too big, unlike <<=ps(setup.getNpcName('npc_admin', 'first'))>>, so you fit under the desk fairly easily.<br>
<br>
<<printThought 'God, this is so humiliating. I hope nobody sees me doing this.'>><br>
<br>
Her feet are sweaty and kinda smell from being stuffed in the company-mandated high heels, but you pull yourself together, clench your teeth and start doing what has been ordered of you. You haven't been massaging her feet for long when <<=setup.getNpcName('npc_technician', 'first')>> lets out a soft moan.<br>
<br>
"@@.npc_technician;Whatever you're doing, don't stop. Hng.@@"<br>
<br>
The seconds turn to minutes and the minutes turn to hours. This isn't what you're getting paid for and your hands start to hurt after a while as well. Buried in her work, <<=setup.getNpcName('npc_technician', 'first')>> seems to have almost forgotten about you, unless you start to take a break then a sharp "@@.npc_technician;Ahem,@@" reminds you to resume your monotonous task. Still, you're definitely getting bored which makes your mind kind of drift off...<br>
<br>
[<<moveTo "event_dataservice_intro_4_1" "Seize the moment and try to sneak a peek under her skirt." 10380>>]<br>
[<<moveTo "event_dataservice_intro_4_no" "Do as you're told and continue massaging her feet." 10380>>]<br>
</div>/*#
#desc: try to recover data without help
#status: FINISHED 0.4.0.0
#ignore_spell: determin
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You politely decline <<=ps(setup.getNpcName('npc_technician', 'first'))>> proposal and return to your workstation, trying to figure something out that you could do to restore the data. Tackling this Herculean Task by yourself with no help in sight would make the strongest man tremble, but it is time that you take responsibility for your actions. Even though you swear you started the backup process the lingering after-taste of a possible termination of your contract fills you with determin... err... willpower.<br>
<br>
You struggle mightily, but keep hitting a wall of exhaustion, panic and lack-of-skill. If you are going to make any real progress, you think it is going to take a herculean effort that is going to leave you mentally drained...<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, 17, 55)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)>>
<<if setup.getWillpower() >0>>
[<<moveTo "event_dataservice_intro_3_3_willpower" "Grit your teeth and give it your all." _timeToEndOfDay>>] <<hint $options "Trying to push beyond your limits will tax your willpower.">><br>
<<else>>
[@@.link_locked;You don't feel up to pushing yourself this hard for some dumb test data...@@] <<hint $options "You don't have enough Willpower for this approach.">><br>
<</if>>
[<<moveTo "event_dataservice_intro_3_3_nowillpower" "Keep working as you have been." _timeToEndOfDay>>]<br>
</div>/*#
#desc: use willpower to recover data
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 1>>
<<set $player.flags.datarecovery = 36>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
Gritting your teeth, you assault the problem like a man possessed. Pounding coffee like water you are a frantic, twitching mess by the end of the day, but somehow, by some combination of obsession, luck and determination you have managed to recover over a third of the data.<br>
<br>
Just 5 minutes before the work day should be over, the annoying yellow blinking of a new instant message pops up on your desktop. It is from <<=setup.getNpcName('npc_manager', 'other')>>.<br>
<br>
It reads "@@.npc_manager;<<=$player.first_name>>, this is about your mishap with the Nintendolls game data. I need to see you in my office as soon as possible.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_5_1" "Ignore the message and get ready to go home." 420>>]<br>
[<<moveTo "event_dataservice_intro_6" "Respond that you'll be right up." 120>>]
</div>/*#
#desc: try to recover data on your own without willpower
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.datarecovery = 4>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You do what you can, but seem to be mostly spinning in circles, barely recovering much of anything. Your efforts eat up the rest of the working day. You manage to recover about <<=$player.flags.datarecovery>>% of the data, which is nearly nothing.<br>
<br>
Just 5 minutes before the work day should be over, the annoying yellow blinking of a new instant message pops up on your desktop. It is from <<=setup.getNpcName('npc_manager', 'other')>>.<br>
<br>
It reads "@@.npc_manager;<<=$player.first_name>>, this is about your mishap with the Nintendolls game data. I need to see you in my office as soon as possible.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_5_1" "Ignore the message and get ready to go home." 420>>]<br>
[<<moveTo "event_dataservice_intro_6" "Respond that you'll be right up." 120>>]
</div>/*#
#desc: try to peek up technician's skirt
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'penis' 'through_alex' 'intro_penis'>>
<<set $npc_technician.flags.dataservice_encounter.looked_up_skirt = true>>
<<set $player.flags.datarecovery to 40>>
<<set $scene.technicianHorny = false>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_0'
0
'event_technician_upskirt_apology'
false
>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/technician_reveal.mp4">>
<div id="invframe" class="scrolltext">
You try to crouch even further to get a better angle at <<=ps(setup.getNpcName('npc_technician', 'first'))>> goodies. For some odd reason, the company's dress code for women is see-through pantyhose during spring and summer, so that's not really a problem. The lack of light down under her desk, however...<br>
<br>
<<printThought 'So, why am I doing this again?'>> you think to yourself, only to be startled by the sound of <<=ps(setup.getNpcName('npc_technician', 'first'))>> voice.<br>
<br>
"@@.npc_technician;Getting a little inquisitive down there, ey, <<=$player.first_name>>? Well, I suppose a questing hero like yourself deserves a little reward after such a superb performance.@@" She starts to pull up her skirt, just enough for you to see her panties. They're white and made of cotton with some lace on them. And there's a twitching bulge in the middle which you were very much NOT expecting.<br>
<br>
<<printThought 'Wat?'>><br>
<br>
You try collecting your thoughts while still reflexively massaging her feet. <<=setup.getNpcName('npc_technician', 'first')>> lets out a soft-toned moan again, making her bulge twitch and swell in size.<br>
<br>
"@@.npc_technician;You are way too good at this for your own good, you know that, right?@@"<br>
<br>
You try to answer, but only a confused "@@.pc;aaahh@@" escapes your mouth.<br>
<br>
"@@.npc_technician;This shall be our little secret, okay? Unless you want to tell everyone how you obtained this information. Anyway,@@" she says while pulling her skirt back down, "@@.npc_technician;You can stop now and get up before people start talking. I'm done. But you won't be happy with the results.@@"<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, 17, 55)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)>>
[<<moveTo "event_dataservice_intro_5" "Get up from under the table." _timeToEndOfDay>>]<br>
<br>
<<printThought "But what if... what if I don't stop staring?">><br>
<br>
<<if $options.impatient>>
<<set _timer = "0s">>
<<else>>
<<set _timer = "90s">>
<</if>>
<<timed _timer t8n>>
<<printThought "I really should get back up there like I was told to...">><br>
<br>
[<<moveTo "event_dataservice_intro_4_2" "Keep staring...">>]
<</timed>>
</div>/*#
#desc: try to peek up technician's skirt
#status: FINISHED 0.4.0.0
#ignore_spell: p
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'penis' 'through_alex' 'intro_penis'>>
<<set $npc_technician.flags.dataservice_encounter.looked_up_skirt = true>>
<<set $player.flags.datarecovery to 40>>
<<set $scene.technicianHorny = false>>
<<changeHorny 25>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_0'
0
'event_technician_upskirt_apology'
false
>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/technician_reveal.mp4">>
<div id="invframe" class="scrolltext">
"@@.npc_technician;In case you didn't hear me the first time, you can come up okay? No need to be huffy about it. You're making me uncomfortable with your silence.@@"<br>
<br>
<<printThought "Yup. Really, I should get up, I think it's better for the both of us...">><br>
<br>
<<printThought "But what if I don't? What if I just keep staring...">><br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, 17, 55)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)>>
[<<moveTo "event_dataservice_intro_5" "Get up from under the table and try to never talk about this again." _timeToEndOfDay>>]<br>
<br>
<<if $options.impatient>>
<<set _timer = "0s">>
<<else>>
<<set _timer = "20s">>
<</if>>
<<timed _timer t8n>>
"@@.npc_technician;P...Please cum... come up here...@@" faintly escapes <<=ps(setup.getNpcName('npc_technician', 'first'))>> mouth. The twitching of her <<getWordPenis false>> finally stops... though that cessation of movement is because she has solidified into a raging erection. Pulsating slowly, the part of the panties centred around where you estimate the head is getting transparent through a light trickle of precum.<br>
<br>
<<printThought "Why can't I take my eyes away from that thing? I just needed to recover the data! My lack of sexual contact is just bad luck, not due to my own stupidity...">><br>
<<next>>
<br>
Still unable to move, you focus your gaze on her erect <<getWordPenis false>>, just a few centimetres away from your face. The view only obscured through thin, sheer cotton as glistening precum seeps through the fabric.<br>
<br>
<<printThought "Okay, so maybe I'm starved for any sexual contact, but... she's a...">><br>
<<next>>
<<if !$scene.technicianHorny>>
<<set $scene.technicianHorny = true>>
<</if>>
<br>
"@@.npc_technician;<<=$player.first_name>>, you either come up here RIGHT NOW!@@" <<=setup.getNpcName('npc_technician', 'first')>> announces providently, while pulling down her pantyhose and panties even further, revealing her beautiful <<getWordPenis false>> just for you. Then she gets a firm grip around its shaft, slowly starting to stroke it up and down. "@@.npc_technician;Or you take responsibility for the mess you caused. Goodness, I can't believe how horny this is making me!@@"<br>
<br>
You have no idea what's going on anymore, but the longer you stare at her delicious looking <<getWordPenis false>> you find yourself becoming aroused. Maybe it's a side effect of these stupid penis enlargement pills, but you don't know what to think anymore. All you see is this delicious looking <<getWordPenis false>>, waiting for you.<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, 17, 55)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)>>
[<<moveTo "event_dataservice_intro_4_handjob" "Reach out and take responsibility.">>]<br>
<</timed>>
</div>/*#
#desc: don't peek up technician's skirt
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 5 'very' $SEEN_FRIEND>>
<<set $player.flags.datarecovery to 45>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You intensify your massage efforts which leads to yet another soft, sexy moan from <<=setup.getNpcName('npc_technician', 'first')>>. That small gesture, that little moan... it turns you on. You were always pretty nimble with your hands, but right now you kinda like that you give her pleasure, and you like touching her feet. After you managed to massage all the stiffness away, they feel nice and soft in your hands.<br>
<br>
"@@.npc_technician;How did you get that good at this <<=$player.first_name>>? Your girlfriend must have been pretty stupid for breaking up wi...@@" A few moments too late <<=$npc_technician.first_name>> seems to remember that this topic might be a little bit touchy for you right now.<br>
<br>
<<printThought 'Bad news travel fast indeed. Who else knows? I thought I only told <<=$npc_admin.first_name>>...'>><br>
<br>
"@@.npc_technician;Just forget I said anything. Get up now, this is getting awkward, somehow. I think this is as much as I can help you anyway. I'm done. But you won't be happy with the result.@@"<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, 17, 55)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)>>
[<<moveTo "event_dataservice_intro_5" "Get up from under the desk." _timeToEndOfDay>>]
</div>/*#
#desc: technician tells you how much she recovered for you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You get up from under the desk, looking around to make sure nobody saw you, thankful for the minor privacy of the cubicle. <<=setup.getNpcName('npc_technician', 'first')>> is pointing at one of her monitors.<br>
<br>
"@@.npc_technician;Okay, we managed to recover about <<=$player.flags.datarecovery>>% of the lost data from the hard drives. I wish I could offer more, but the rest is just too corrupt. I hope you don't get into too much trouble for this.@@"<br>
<br>
<<printThought 'Too much trouble, my ass! Best case scenario I get demoted, worst case scenario "OFF WITH HIS HEAD".'>><br>
<br>
"@@.npc_technician;Anyway, I'd really value your discretion about my little secret,@@" <<=setup.getNpcName('npc_technician', 'first')>> tells you, while putting a finger on your lips in a suggestive manner, "@@.npc_technician;That would be better for both our sakes.@@"<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.handjob_finish == 'fail'>>
You blush and nod, yeah, like you're going to go blabbing that you jerked off one of your female co-workers cocks at work...
<<elseif $npc_technician.flags.dataservice_encounter.handjob_finish == 'hand'>>
You blush and nod, yeah, like you're going to go blabbing that you gave a crappy handjob to one of your female co-workers at work...
<<elseif $npc_technician.flags.dataservice_encounter.looked_up_skirt>>
You nod, even if she wasn't able to help you that much it would be very cruel to betray a trust, especially since you have bigger things to worry about at the moment.
<<else>>
<<printThought 'Secret? What did she mean by that?'>>
<</if>>
<br><br>
<<if $npc_technician.flags.dataservice_encounter.looked_up_skirt>>
You linger for a moment longer, unable to get the thought of <<=ps(setup.getNpcName("npc_technician","first"))>> panties out of your head. Despite her bulge they looked so comfortable... the soft fabric somehow calling out to you...<br>
<br>
"@@.npc_technician;Hey! Earth to <<=$player.first_name>>! I've recovered all the data I can... unless... you had something else you wanted to say?@@"<br>
<br>
<<if $scene.likePanties>>
[@@.link_locked;You already mentioned liking her panties.@@]<br>
<<else>>
[<<moveTo "event_enthusiast_panties_1" "Blurt out that you liked her panties..." 180 "<<set $scene.panties=true>>">>]<br>
<</if>>
<<if $scene.likeHeels>>
[@@.link_locked;You already mentioned liking her heels.@@]<br>
<<else>>
[<<moveTo "event_secretary_style_heels_enthusiast_1" "Actually... you're curious about her heels..." 180>>]<br>
<</if>>
[<<moveTo "event_enthusiast_panties_1" "Just hurry back to your desk." 60 "<<set $scene.panties=false>>">>]
<<else>>
<<set _endOfDay = setup.setNextDate($now, 0, 17, 55)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)>>
<<if $scene.heels>>
[@@.link_locked;You already mentioned liking her heels.@@]<br>
<<else>>
[<<moveTo "event_secretary_style_heels_enthusiast_1" "Actually... you're curious about her heels..." 180 "<<set $scene.heels=true>>">>]<br>
<</if>>
[<<moveTo "event_dataservice_intro_5b" "Return to your cube." _timeToEndOfDay>>]
<</if>>
</div>/*#
#desc: option to show enthusiasm for technician panties
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.panties>>
<<set $scene.likePanties = true>>
<<addItem "technician_intro_panties_package">>
<<set $scene.addcard = !setup.checkItemOwned('card_technician')>>
<<if $scene.addcard>>
<<addItem "card_technician">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.panties>>
You don't know what came over you, but seeing <<=ps(setup.getNpcName("npc_technician","first"))>> panties has flipped a switch, shifting what you previously thought was possible, and perhaps crystallising lurking ideas you had been avoiding...<br>
<br>
In the moment, however, what happens is that you blurt out "@@.pc;I really like your panties!@@" and then blush in mortification.<br>
<br>
You close your eyes and brace for <<=setup.getNpcName("npc_technician","first")>> to blow up at you for your outburst... but seconds pass and you finally peek up at her to find her, instead, grinning back.<br>
<br>
"@@.npc_technician;I like my panties, too,@@" she says with a wink, and then a pause. "@@.npc_technician;Wait... do you mean...@@" Her grin widens as she reaches into one of her drawers, pulling something out and handing it to you. "@@.npc_technician;Here! I always keep a couple spare pairs in my desk in case of accidents, or whatever. Since you like them so much, well...@@" She lets her voice trail off, her eyelashes bouncing in conspiratorial communication.<br>
<br>
You're basically on autopilot, somehow taking the new-in-shrink-wrap panties without a word as your brain tries to somehow catch up with current events.<br>
<br>
<<if $scene.addcard>>
"@@.npc_technician;Enjoy! But, as much as I'd like to chat some more... we're both on the clock, and you've got that whole data thing to deal with. Here,@@" she tucks a business card into your hand.
<<else>>
"@@.npc_technician;Don't forget my card!@@" she adds as you continue to stand there dumbfounded.
<</if>>
"@@.npc_technician;Give me a ring sometime if you want to chat... about anything.@@"<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, 17, 55)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)>>
<<if $scene.likeHeels>>
[@@.link_locked;You already mentioned liking her heels.@@]<br>
<<else>>
[<<moveTo "event_secretary_style_heels_enthusiast_1" "Actually... you're curious about her heels..." 180>>]<br>
<</if>>
[<<moveTo "event_dataservice_intro_5b" "Hurry back to your desk." _timeToEndOfDay>>]
<<else>>
You nervously shake your head and dash back to your desk.
<<if $player.sec_style.clothing.heels>>
Your mind is spinning, feeling strange as your body seems to want to walk only on the balls of your feet.
<</if>>
Sure, you've worked with <<=setup.getNpcName("npc_technician","first")>> for a while, and she's always been friendly... but today, well... something is different now, and you're both excited, and a little nervous as to what might happen next. Unfortunately that has to take a back-seat, for the moment, as the issue of your data-loss mistake looms large and immediate.<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, 17, 55)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)>>
[<<moveTo "event_dataservice_intro_5b" "Return to your cube." _timeToEndOfDay>>]
<</if>>
</div>/*#
#desc: manager calls you up to her office
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.clothing.panties>>
Your autopilot manages to nod as you somewhat robotically turn and head back to your desk — barely remembering to pocket your new gift before someone sees you wandering around the office holding panties.
<<if $player.sec_style.clothing.heels>>
Strangely, your body seems to want to walk only on the balls of your feet as you
<</if>>
<<else>>
You
<</if>>
walk back to your cube and try to think of some way to somehow restore more of the data.<br>
<br>
Pushing aside thoughts of your "eventful" morning you wrestle with your computer for the rest of the day, but you're unable to do any better than what the "Tech Wizard" has already provided, all of your attempts either doing nothing or recovering small portions of what she already gave you.<br>
<br>
Just 5 minutes before the work day should be over, the annoying yellow blinking of a new instant message pops up on your desktop. It is from <<=setup.getNpcName('npc_manager', 'other')>>.<br>
<br>
It reads "@@.npc_manager;<<=$player.first_name>>, this is about your mishap with the Nintendolls game data. I need to see you in my office as soon as possible.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_5_1" "Ignore the message and get ready to go home." 420>>]<br>
[<<moveTo "event_dataservice_intro_6" "Respond that you'll be right up." 120>>]
</div>/*#
#desc: pack things and get ready to meet manager first day
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.manager_ignored_firstrequest == true>>
<<applyStress 5>>
<</if>>
<<gainWillpower 1>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You pack your things together and head for the elevator. The office of <<=setup.getNpcName('npc_manager', 'other')>> is on the 52nd floor, as far as you remember. She is not technically a part of Cloud Data Service, which does not have its own Human Resources department, but an employee of Social Interaction Service Syndicate Inc., the umbrella conglomerate that owns Cloud Data Service.<br>
<br>
As the floors tick up you try to calm down. What could someone as important as <<=setup.getNpcName('npc_manager', 'other')>> want with you? You take a deep breath, this is bad... but if you were just being fired surely that would have been delegated... right? You aren't sure about that logic, and it's meager comfort, in any case, but considering everything else that has happened it's still enough to boost your confidence a bit. <<hint $options "You have gained a willpower point. Willpower can be used to push yourself past limits, or fight back against stress. Proving your mental fortitude and relaxing when you are already unstressed can restore willpower.">><br>
<br>
<<if $player.flags.manager_ignored_firstrequest == true>>
<<printThought "Okay, I think it was a stupid idea to ignore the message. I hope <<=setup.getNpcName('npc_manager', 'other')>> is not too pissed off.">><br><br>
<</if>>
[<<moveTo "event_dataservice_intro_7" "Head for the elevator." 120>>]
</div>/*#
#desc: try to go home without meeting manager first day
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<set $player.flags.manager_ignored_firstrequest = true>>
<<setThreshold 'bimbofication' 'stupid_defiance' 'intro_ignore_manager'>>
<<applyExperience 'bimbofication' 3 'insignificant' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_manager.workdiscipline -= 1>>
<<applyStress 5>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You decide to ignore the message and start tidying up your things to go home. Just when you are ready to shut down your workstation you get another message with a huge shift in tone.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, get up here at once. This whole debacle is your fault and it is time to take account. If you don't show up soon, you won't have to show up tomorrow, or ever. I hope I have made myself absolutely crystal clear. Report to my office immediately.@@"<br>
<br>
[<<moveTo "event_dataservice_intro_6" "Apologise and promise that you'll be right up.">>]
</div>/*#
#desc: elevator ride up to manager's floor first day
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 2>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You enter the elevator. You've never been up this high before, the offices beyond floor 40 being restricted to employees of Social Interaction Service Syndicate Inc. You use your ID Card on the designated slot and press 52. The small screen over the button panel shows a short loading animation and then greets you with a green "@@.npc_ai;<<uc "ACCESS GRANTED">>@@" and with the words and a synthetic sounding voice "@@.npc_ai;<<uc "WELCOME TO SOCIAL INTERACTION SERVICE SYNDICATE Inc.,">> <<=uc($player.call)>> <<=uc($player.last_name)>><<uc ". YOU ARE EXPECTED. PLEASE DO NOT DEVIATE FROM YOUR ROUTE AND HEAD DIRECTLY FOR <<=uc(ps(setup.getNpcName('npc_manager', 'other')))>> OFFICE.">>@@"<br>
<br>
<<printThought 'Security seems to be very strict up here.'>><br>
<br>
[<<moveTo "event_dataservice_intro_8" "Exit the elevator." 420>>]
</div>/*#
#desc: head to manager's office, meet for the first time, assessment of data recovery efforts
#status: FINISHED 0.4.0.0
#ignore_spell: b,datarecovery
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.profile = true>>
<<applyStress 1>>
<</if>>
<<storeVisual $player $npc_manager>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Having messed up enough already, you head directly to <<=ps(setup.getNpcName('npc_manager', 'other'))>> office. The last thing you need today is to be tackled by an over-enthusiastic security guard.<br>
<br>
You politely knock on the door to her office, the towering slab of heavy oak telling you that a) she's important while driving home the reminder that b) you aren't.<br>
<br>
<<if $player.flags.manager_ignored_firstrequest == true>>
You hear a loud "@@.npc_manager_dom;ENTER@@" followed by a slightly more collected "@@.npc_manager;I mean, come in... please.@@"<br>
<br>
<<printThought "Even ignoring the outburst that last word seemed forced. Yeah, she's still pretty pissed.">><br>
<<else>>
"@@.npc_manager;Please come in.@@" Though technically welcoming, her words seem more a command than a greeting.<br>
<</if>>
<br>
<<=setup.getNpcName('npc_manager', 'other')>> must be very important, indeed. Her office is huge, even having an antechamber for a receptionist to reside in. At present, said clerical desk is empty; you suppose whoever does that job must have already left for the day since it is past normal business hours.<br>
<br>
<<=setup.getNpcName('npc_manager', 'other')>> is sitting at her desk at the far end of the office. You've only met her once, when you started your job at Cloud Data Service three years ago. She seems to be older than you, but that might be an illusion and could just be because the aura of superiority that surrounds her. She follows the dress code for managers to the letter, even though her blouse is a bit wide open, revealing more of her cleavage than you find comfortable.<br>
<br>
<<printThought "Is she doing this on purpose? I normally wouldn't mind, but right now it is a distraction I really don't need.">><br>
<br>
"@@.npc_manager;Here, have a seat. We have a few things to discuss. I imagine you know why I had you come up here. Your performance lately has been, shall we say, less than stellar? This would normally be handled by your direct superiors of Cloud Data Service and might have ended with a slap on your b... wrist. A slap on your wrist, since your work was adequate enough. But your little mishap with the Nintendolls data... well, of course the lawyers will be going through things for a while, but at present the immediate damages due to breach of contract are estimated at 532,667 credits, to say nothing of the impact to Cloud Data Services overall reputation if Nintendolls deigns to go public... obviously you can see how, even if multiple failures combined to cause this problem, you are facing more than sufficient cause to terminate your contract without severance.@@"<br>
<br>
You lower your gaze so as to not make any eye contact, doing your best "melting into the floor" impression. Seems like your life is continuing on a downward spiral with no floor in sight.<br>
<br>
<<printThought "This can't be happening...">><br>
<br>
<<switch $player.flags.datarecovery>>
<<case 4>>
"@@.npc_manager;Unfortunately with all your efforts today you only managed to recover about <<=$player.flags.datarecovery>>% of the data. Maybe you should have asked for help from other departments more experienced in data recovery. We all have our specialties, thinking you can do everything on your own is just not being a good corporate team player.@@"<br>
<br>
<<printThought "Wait, so I was supposed to massage <<=ps(setup.getNpcName('npc_technician', 'first'))>> feet?">>
<<case 36>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, and that by yourself. While I have to admit, I am surprised by these numbers, imagine, if you will, what you could have achieved if you asked for help as well. Still, it shows you can be useful if you really put your mind to it.@@"<br>
<br>
<<printThought "Wait, what is that supposed to mean?">>
<<case 40>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, deploying every means available, which I find commendable. Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>> feet. For several hours you diligently massaged them without pause, putting the skills you did have to work while knowing you lacked the know-how to restore the data yourself. Only a slight drop in productivity towards the end. Well, I think everyone's hands get tired after a while. Or were you doing something different down there? You. Alone. Under the table of a quite beautiful young woman.@@"<br>
<br>
You try not to blush and get rewarded with a knowing smile, which makes it even more awkward for you.
<<case 45>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, deploying every means available, which I find commendable. Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>> feet. For several hours you diligently massaged them without pause, putting the skills you did have to work while knowing you lacked the know-how to restore the data yourself. Well, these sorts of things should be rewarded, not punished.@@"<br>
<br>
You try to piece together how she got that information, but that distraction only serves to make your expression slip.
<<case 50>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, deploying every means available... even if you needed a bit of help, in more ways than one. Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>>... feet.@@"<br>
<br>
<<printThought 'Wait, did she just imply? No, there is no way she could know that I jerked off <<=setup.getNpcName("npc_technician", "first")>>, and if she did I would be fired for sure!'>>
<<case 51>>
"@@.npc_manager;Still, you managed to recover <<=$player.flags.datarecovery>>% of the data, really "got your hands dirty," as they say. Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>>... feet.@@"<br>
<br>
<<printThought 'Wait, did she just imply? No, there is no way she could know that I jerked off <<=setup.getNpcName("npc_technician", "first")>>, and if she did I would be fired for sure!'>>
<<case 60>>
"@@.npc_manager;I will say I am impressed you managed to recover nearly two-thirds of the data! I do not think anyone was expecting you to make such a monumental... effort, but I commend you! Such dedication to the company, and to <<=ps(setup.getNpcName('npc_technician', 'other'))>>... feet.@@"
<<default>>
ERROR: unknown value for player.flags.datarecovery <<=$player.flags.datarecovery>>
<</switch>>
<br><br>
[<<moveTo "event_dataservice_intro_8_b" "Continue.">>]<br>
</div>/*#
#desc: assessment of data recovery efforts
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $player.flags.datarecovery>>
<<case 4>>
<<set $player.work.payment = 90>>
<<case 36 40 45>>
<<set $player.work.payment = 100>>
<<case 50 51>>
<<set $player.work.payment = 110>>
<<case 60>>
<<set $player.work.payment = 115>>
<</switch>>
<</if>>
<<storeVisual $player $npc_manager>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Do not look at me like a scared fawn, it is my job to know what is going on in this company. Sadly, I am not the one who decides your future in Cloud Data Service. I am merely in charge of HR, you currently report through a different hierarchy and, well... your boss's boss's boss's boss, along with their superiors on the board, have been very clear about their decision. It has been decided that as of today, <<printDate $now "dateonly">>, your contract is to be terminated. And due to the severity of your carelessness, you have lost any claim of appeal under the rules of culpable negligence. As I said before, the immediate monetary loss to the company is about 532,667 Credits. I took myself the liberty to counter this against your "claim" of 4,328 Credits, and we still have a net loss of 528,339 before taxes. To tell you the truth, this does not look very good for you.@@"<br>
<br>
<<if $player.money.total >= 532667>>
[<<moveTo "event_dataservice_intro_cheater_pay" "Pay off the damages." 300 "<<addCredits -532667>>">>]<br>
<<else>>
Your heart sinks. After everything else that has happened lately, it's like the final nail in the coffin of your life. Your worst fear has come true. Losing one's job in this day and age is a cause for existential dread. Best case, you lose your full citizenship in a few months, worst case, you are half a million in the red. Your thoughts start to get dark, fast. Money's already tight since you're paying the rent for your flat all by yourself, and if you lose your job now, you'll be on the streets in no time.<br>
<br>
<</if>>
[<<moveTo "event_dataservice_intro_9_1" "Say you'll do anything for another chance." 300>>]<br>
[<<moveTo "event_dataservice_intro_9_2" "Admit your defeat and go empty your desk." 300>>]<br>
<<if setup.getWillpower() >= 1>>
[<<moveTo "event_dataservice_intro_9_3a" "Resist the urge to respond and think for a moment." 300>>] <<hint $options "This will require spending willpower.">>
<</if>>
</div>/*#
#desc: pay off debs with cheated money
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $gameOver = "cheater_intro">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Faced with over half a million dollars in debt... you immediately offer to pay it off.<br>
<br>
<<=setup.getNpcName("npc_manager","other")>> blinks, momentarily taken aback... but only momentarily.<br>
<br>
"@@.npc_manager;Very well... unfortunately however... well, I am not interested in employing such a brazen cheater. So while your debt is cleared... I am afraid you remain out of a job and, being that the name of the game is Secretary, well... that puts you out of a world. Good day.@@"<br>
<br>
The fourth wall well and truly broken down the world begins to dissolve around you...<br>
<br>
<<printThought "Well... that was a choice...">><br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: assessment of data recovery efforts
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 1>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Thinking for a while without giving her an answer calms your mind, and you're able to use your remaining willpower to focus. If you were going to be fired, anyone from your company could have done this. But this here is <<=setup.getNpcName('npc_manager', 'other')>>, the director of Human Resources of Social Interaction Service Syndicate Inc. Which leads you to an obvious conclusion...<br>
<br>
<<printThought "Why exactly am I here?">><br>
<br>
You don't have enough information to finish that thought, so a strategical pause seems to be your best option. Any accusations or confessions might make your already precarious position even more unsteady.<br>
<br>
[<<moveTo "event_dataservice_intro_9_3" "Lean back and wait for her to continue." 60>>]
</div>/*#
#desc: tell manager you'll do anything to make up for losing data
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'submission' 'submissive_secretary' 'intro'>>
<<applyStress 5>>
<<addSearch $computer "Look up the Secretary Elevation and eXpansion Act of 2021" "room_computer_secretary_act_1">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Anything, you say?@@" <<=setup.getNpcName('npc_manager', 'other')>> seems to be surprised. "@@.npc_manager;Dangerous words. Let us see if you are as forthright as you are apparently desperate.@@"<br>
<br>
<<include "event_dataservice_intro_9_details">>
</div>/*#
#desc: start to leave after manager tells you you're fired first day
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'humiliation' 3 'insignificant' $SEEN_FRIEND>>
<<addSearch $computer "Look up the Secretary Elevation and eXpansion Act of 2021" "room_computer_secretary_act_1">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<printThought "Well, it was fun while it lasted.">><br>
<br>
You excuse yourself and get ready to stand up and leave the office.<br>
<br>
"@@.npc_manager;Really? Giving up that quick?@@" <<=setup.getNpcName('npc_manager', 'other')>> seems to be surprised, "@@.npc_manager;Maybe I misjudged you after all.@@"<br>
<br>
<<include "event_dataservice_intro_9_details">>
</div>/*#
#desc: stay and listen
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.work.payment+=15>>
<<addSearch $computer "Look up the Secretary Elevation and eXpansion Act of 2021" "room_computer_secretary_act_1">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Not giving an answer makes her re-focus her uncanny gaze upon you. Her attention has you feeling slightly uncomfortable, in the same way that being burned alive would have you feeling slightly warm.<br>
<br>
<<printThought "I hope she's got a license for these weapon grade eyes. Wait... maybe they are bionic? No way, they look so real... I should really focus on the matter at hand.">><br>
<br>
"@@.npc_manager;Hmm... this is where people in your position normally start to bargain or resign completely. I am slightly impressed by your reservation. True, things are currently not as grim as they seem.@@"<br>
<br>
<<include event_dataservice_intro_9_details>>
</div>/*#
#desc: offered job as secretary
#status: FINISHED 0.4.0.0
#*/
<<printThought "What exactly does she mean?">><br>
<br>
It seems like your puzzled expression catches <<=ps(setup.getNpcName('npc_manager', 'other'))>> attention.<br>
<br>
"@@.npc_manager;If I was going to fire you, there would be no need for a personal meeting, would there? I would have simply delegated this obligation down to your direct superior, <<=setup.getNpcName('npc_admin', 'other')>>. No, you are here, with me, because I am willing to give you a chance. This is a once in a life time opportunity. So better take your time and think about this offer carefully before answering. You have lost your old job, yes, but I am happy to inform you that there is a new offer ready for you as I am extending an invitation for you to take up a position as my secretary.@@"<br>
<br>
She pulls a contract from under her massive desk and slides it towards you.<br>
<br>
"@@.npc_manager;Judging from your expression, I surmise you were not expecting something like this, hmm? Well, I cannot blame you. It is a somewhat unorthodox offer, but these are unusual circumstances. Given your present situation, I doubt you are likely to see any better opportunities come along this evening, especially since I doubt any other company in your field is liable to hire you after this... ignoble termination. If you choose to take my offer, well, worst case you can start to look for another job while still having financial stability. Or should you prove... adept at your new position and choose to remain on...@@" she pauses for a moment and smiles at you. You imagine the way she shows her teeth and flutters her eyes is meant to be enticing, but it comes off more... predatory.<br>
<br>
"@@.npc_manager;Well, let me just say that the position will provide you numerous opportunities, and that is before taking into account the legally mandated opportunities provided by the Secretary Elevation and eXpansion Act of 2021. Your tasks would be to provide to my personal wellbeing, like getting me a coffee or lunch, but also a lot of telecommunication and handling of my appointments. Showing the correct initiative could lead you to garnering even greater responsibilities, especially as you would not just be any secretary, but MY secretary, working directly for me as Director of Human Resources for Social Interaction Service Syndicate Inc.@@"<br>
<br>
<<printThought "Me, a secretary? I'd never thought of doing something like that, though I suppose technically I have all necessary skills for this job, typing really fast and telecommunication coming hand in hand with an IT education. Still, this is never a job I've ever considered.">><br>
<br>
"@@.npc_manager;This will be your starting salary.@@"<br>
<br>
She turns a piece of paper with the number <<=$player.work.payment>> written on it.<br>
<br>
<<if $player.work.payment==125>>
"@@.npc_manager;I know this is a bit less than you make, well, made, given that you have been fired, after all, but not significantly less, especially since you will qualify for performance bonuses. Plus, after your initial probationary period is over, we can discuss a raise, contingent on your performance, of course. The probationary period is typically four weeks, but it could be longer, or even shorter, depending on how seriously you take your duties. So, what do you say... <<=$player.first_name>>?@@"
<<elseif $player.work.payment>125>>
"@@.npc_manager;I know this is, according to my calculations, only a little bit less than you make currently. Sorry, force of habit, used to make. A bit higher than our usual rates for secretaries, but you seem like a promising candidate. Maybe even more than you used to earn, since you might qualify for performance bonuses. Plus, after your initial probationary period is over, we can discuss a raise, contingent on your performance, of course. The probationary period is typically four weeks, but it could be longer, or even shorter, depending on how seriously you take your duties. So, what do you say... <<=$player.first_name>>?@@"
<<elseif $player.work.payment<125>>
"@@.npc_manager;I know this is less than you make, well, made, given that you have been fired. But if you're diligent enough, you will qualify for performance bonuses, which might compensate for the difference. Plus, after your initial probationary period is over, we can discuss a raise, contingent on your performance, of course. The probationary period is typically four weeks, but it could be longer, or even shorter, depending on how seriously you take your duties. So, what do you say... <<=$player.first_name>>?@@"
<</if>>
<br><br>
You shiver at the way she pronounces your first name. A single word and yet on her lips it drives home your tenuous position while sounding almost... intimate? You don't have time to think about it as <<=setup.getNpcName('npc_manager', 'other')>> turns the contract around and offers you an expensive fountain pen. The contract is already open to the last page. You simply need to sign it.<br>
<br>
[<<moveTo "event_dataservice_intro_10_1" "Sign the contract." 1500 "<<set $scene.secretary_contract='voluntary'>>">>]<br>
[<<moveTo "event_dataservice_intro_10_2" "Say you want to read the contract first." 900>>]<br>
[<<moveTo "event_dataservice_intro_10_3" "Politely decline the offer." 600>>]<br>
[<<moveTo "event_strict_underwear_1" "Secretary? Fuck you!" 180>>] <<hint $options "This could have lasting consequences.">>/*#
#desc: turn down job as secretary
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<printThought "A secretary, really? I think not.">><br>
<br>
You politely decline the offer and take your leave.<br>
<br>
"@@.npc_manager;Disappointing, but maybe that is for the best, anyway.@@"<br>
<br>
<<printThought "Wait, what's that supposed to mean?">><br>
<br>
"@@.npc_manager;It has been... interesting having you around. I wish you the best luck in your future endeavours.@@"<br>
<br>
[<<moveTo "gameover_grue" "Leave the company building after clearing out your desk.">>]
</div>/*#
#desc: ask to read contract before accepting job
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'smart' 'contract_smart' 'try_to_read'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You turn back to page one of the contract and what hits you hard is just how thick the contract is. Front to back it's 98 pages, written really small.<br>
<br>
<<printThought "What are all these paragraphs for?">><br>
<br>
"@@.npc_manager;You seem concerned about the size of the contract. Do not worry, it is just legal CYA stuff, I think nearly half of it is just the legal binding for a non-disclosure agreement. Since you might come into contact with many items of sensitive information working for me here at Social Interaction Service Syndicate Inc., we have to make sure that our secrets are protected. The rest is the usual stuff. Work time, rules for vacation, dress code, et cetera, et cetera.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'other')>> looks at her watch, like she is in a hurry.<br>
<br>
<<printThought "Hmm, I guess it is past business hours...">><br>
<br>
"@@.npc_manager;Look, I really do not wish to pressure you, but I have other obligations today. I will be honest, this little offer, well... if my superiors figure out what I am up to they might decide to block it. Normally I can staff this position as I want to, but you are a special case, in a "unique situation" as it were. That's why this offer is only available today, right now.<<if $player.flags.manager_ignored_firstrequest == true>> If a certain someone would have responded to my request immediately, we might had more time to go this through in greater details, but... here we are.<</if>>@@"<br>
<br>
[<<moveTo "event_dataservice_intro_10_1" "Sign the contract." 1500 '<<set $scene.secretary_contract = "obedient">>'>>]<br>
[<<moveTo "event_dataservice_intro_10_1_greed" 'Haggle over your pay<<if State.hasPlayed("event_dataservice_intro_9_3")>> some more<</if>>.' 1500 '<<set $scene.secretary_contract="money">>'>>]<br>
[<<moveTo "event_dataservice_intro_10_3" "Politely decline the offer.">>]
</div><<if $now.getUTCDay() == 5>>/*literaly not possible since you can only get this event Monday to Thursday, but still here for learning purpose :D*/
<<set _nextDate = setup.setNextDate($now, 3, 8, 0)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 1, 8, 0)>>
<</if>>
<<addTaskById 'manager_first_morning_inspection_task' _nextDate>>
<<if $player.sec_style.clothing.underwear != "">>
<<set $currentTasks.manager_first_morning_inspection_task.trigger.femaleUnderwear = {
"inventory":[
{"list":"slot","listData":"stockings","tags":["female"]},
{"list":"slot","listData":"bra","tags":["female"]},
{"list":"slot","listData":"panties","tags":["female"]}
],
"conditionMet":"You're wearing the right kind of underwear.",
"conditionNotMet":"You're wearing the wrong kind of underwear, you should be wearing at least a bra, stockings and panties; all feminine in style."
}>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 3, 14, 0)>>
<<addTaskById 'psychiatrist_apointment_1' _nextDate>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_ask_drugs'
6
'theme_psychiatrist_ask_drugs_1'
false
>>
<<set $player.locations.psychiatrist = true>>
<<addEmail $computer
'<<=setup.getNpcName("npc_manager", "full")>>'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_manager_contract_01_h'
'mail_manager_contract_01_t'
'{"name":"<<if $fetish.sissy>>sissi_<</if>>secretary_contract.pdf","type":"event","data":{"event":"attachment_read_contract"}}'
>>/*#
#desc: sign contract for secretary job, given appointment with psychiatrist
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.work.payment += 50>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're a bit nervous over what could be in a contract THAT long... but you decide to shoot your shot anyway and say that the pay cut is just too much.<br>
<br>
"@@.npc_manager;My, my, you really are quite the haggler, and from a disadvantaged state! You were just fired, after all.@@" <<=ps(setup.getNpcName('npc_manager', 'other'))>> eyes twinkle, letting the threat of your precarious situation hang for a few moments until she continues with a grin. "@@.npc_manager;Fortunately for you I can see quite the promise... so I am willing to raise your base weekly pay <<if State.hasPlayed("event_dataservice_intro_9_3")>>a further <</if>>fifty credits. That would come to <<=setup.numberInWords($player.work.payment)>> base, to be further adjusted depending on your performance.@@"<br>
<br>
Your heart beats faster... her counter-offer means you'll be making
<<if $player.work.payment < 150>>
just shy of your old salary... but with the potential for a bonus, which could really
<<elseif $player.work.payment == 150>>
the same as your old salary... but with the potential for a bonus, which could really
<<else>>
even more than your old job... and with the potential for a bonus! Maybe this is a good opportunity? It would certainly
<</if>>
help with covering the cost of your rent solo...<br>
<br>
"@@.npc_manager;So,@@" she says, offering you contract and pen, "@@.npc_manager;are you ready to become my Secretary?@@"<br>
<br>
[<<moveTo "event_dataservice_intro_10_1" "Accept her offer and sign the contract." 1500>>]<br>
[<<moveTo "event_dataservice_intro_10_3" "Politely decline the offer.">>]
</div>/*#
#desc: sign contract for secretary job, given appointment with psychiatrist
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "fountain_pen">>
<<addItem "card_manager">>
<<include firstDaySecretaryTasks>>
<<storeVisual $player $npc_manager>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You sign the contract and hand it back to <<=setup.getNpcName('npc_manager', 'other')>>.<br>
<br>
"@@.npc_manager;Very good. I am sure you will reflect back to this very moment in the future with fond memories. I am sending a copy of your contract to your personal email address for you to review and reference. Please take your time and read it through thoroughly, it contains many important details about your field of activity, rights and obligations and, perhaps of most immediate concern to you, your...@@" you wonder about the dramatic pause as her eyes scan up and down your body, "@@.npc_manager;... dress code.@@"<br>
<br>
<<printThought "So, I am going to be a secretary, huh? Me... a secretary... nope, still sounds weird, but it's better than no job at all.">><br>
<br>
"@@.npc_manager;Please, you may keep the pen,@@" she states as she pulls out a plastic coated small box of business cards and hands you one. "@@.npc_manager;That contains all my contact information, please transfer it to your phone in case of emergency or the like. Well, that is about it. Welcome aboard as a <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"<br>
<br>
<<if $fetish.sissy>>
<<printThought "Wait? What did she just call me? A SISSI Secretary?">><br>
<br>
"@@.npc_manager;It was not my intention to confuse you. SISSI is merely short for Social Interaction Service Syndicate Inc. Not really the most fitting acronym for a multi billion credit company, but I was not around when they chose that name, and it is certainly less of a mouthful than the full name. Social Interaction Service Syndicate Inc. Secretary.@@" She zips through the alliterative phrase, her tongue nimbly dancing without the slightest slip. "@@.npc_manager;No, that is just too much of a mouthful, SISSI Secretary is much better. Anyway, as I was saying, the contract you just signed makes you an official SISSI Secretary.@@" She smiles again, but this time it's more like a predator grinning down at its prey. "@@.npc_manager;Do not worry too much, everyone has to endure this joke at first. In time, you'll be thinking of yourself as a SISSI Secretary with nary a care nor hesitation.@@"<br>
<br>
<</if>>
<<printThought "First work slave, now <<if $fetish.sissy>>SISSI <</if>>Secretary? I'm never going to see the end of this, am I?">><br>
<br>
"@@.npc_manager;Before I forget it: you need to go through a psychological evaluation. Do not worry, this is standard procedure for everyone who starts up here at Social Interaction Service Syndicate Inc. I have scheduled you for an appointment for Friday afternoon, <<if $options.militaryTime>>14:00<<else>>two pm<</if>> with <<=setup.getNpcName('npc_psychiatrist', 'other')>>. Your shift only lasts until <<if $options.militaryTime>>13:00<<else>>one pm<</if>> on Fridays so you have plenty of time to make it. Which is good for you, because the evaluation is mandatory. Failure to show up to this appointment would result in you automatically failing your probationary period.@@"<br>
<br>
She pauses for a moment and places the tips of her fingers together.<br>
<br>
"@@.npc_manager;Besides, my sources state that, with all you have had in your life lately, well... you might benefit from a good chat or two with a shrink. Help get all that negativity out of your system. Before you ask, yes, I know about your recent break up and yes, I assume that incident led, more or less, to the Nintendolls data mishap. And yes, I can read your thoughts... that last one was a joke, relax! But please, <<=setup.getNpcName('npc_psychiatrist', 'other')>> is a very qualified counselor, you should use your time with her for your personal betterment. They are one of your company benefits, after all. In addition to part of your evaluation. Note that we do not get any details of what you may discuss. Doctor/patient confidentiality is very important and such a betrayal would compromise any benefit you might be able to get through your time with <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, and we would not want to do that, now would we? No, she simply provides a basic psychological evaluation and gives us a recommendation... or not. And nothing scary, just an indication if the position will be a good fit for you, and if there are any ways we can direct your development to the benefit of both the company, and yourself. So win/win overall.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'other')>> reaches across the desk to shake your hand.<br>
<br>
You shake her hand, her grip surprisingly firm. You stutter out a "@@.pc;Thank you, <<=setup.getNpcName('npc_manager', 'Ms.')>>,@@" only for her to stop you.<br>
<br>
"@@.npc_manager;Ah, ah, that is <<=setup.getNpcName('npc_manager', 'formal')>> to you, for now.@@" Your eyebrow shoots up with an unasked question as your gaze darts towards her bare ring finger. "@@.npc_manager;Yes, I am... single, in the conventional sense. Married to my work, more like. But yes, for now... Mrs.@@"<br>
<br>
You're still confused, but you merely nod as she finally releases her grip on your hand.<br>
<br>
<<if (setup.checkItemOwned("technician_intro_panties_package") || setup.checkItemOwned("technician_intro_panties")) && $player.sec_style.clothing.underwear == "" && !State.hasPlayed("event_strict_underwear_1")>>
[<<moveTo "event_enthusiast_intro_1" "Bid her goodbye." 60>>]
<<else>>
"@@.npc_manager;Well, I will see you tomorrow morning then, <<=$player.first_name>>. Work starts at <<if $options.militaryTime>>8:00<<else>>eight o'clock<</if>> sharp. The same as your previous position at Cloud Data Service, I believe. Do not be tardy. We will begin tomorrow with a short orientation before you start your first day proper. And make sure your clothes are clean.@@" She says while looking at you and wrinkling her nose slightly. "@@.npc_manager;Being a secretary is a representative position. I know you had a long day today, but the way your clothes look and smell now is unacceptable and would definitely not be sufficient to get you through your probation, much less advance further.@@"<br>
<br>
As the handshake ends she holds on for just a half a second longer than normal, her grasp seeming almost... possessive?<br>
<br>
<<printThought "I must be imagining things, it's been a long day.">><br>
<br>
[<<moveTo "event_dataservice_intro_11" "Bid her goodbye." 300>>]
<</if>>
</div>/*#
#desc: clean out your old desk after accepting secretary job
#status: FINISHED 0.4.0.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.submission.contract = $scene.secretary_contract>>
<<set $player.flags.jobsecretary = true>>
<<addEvent 'washing_machine_break'>>
<<set _panties = setup.getItemFromType("panties")>>
<<changeItemStatus _panties 'sweaty' '["set",100]'>>
<<set _socks = setup.getItemFromType("stockings")>>
<<changeItemStatus _socks 'sweaty' '["set",100]'>>
<<set $player.timebased.dirty = 75>>
<<set $randomEvents['transit'].room_foyer.pushUnique({"done" : false,"id" : 'valkyrie_recruit'})>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You walk to the elevator and feel as if <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze remains on you every step of the way... even well after you're out of her line of sight and you've boarded the elevator.<br>
<br>
You return to Cloud Data Service on the 9th floor of the building. The elevator ride down seems slower, more sombre without doom hanging over you. Or maybe it's just a different type of doom than before? You shake your head. You don't know what would surprise you the way your life is going of late.<br>
<br>
The office is nearly empty besides the overnight skeleton crew and a few workaholics putting in overtime. As you approach your cubicle, you notice <<=ps(setup.getNpcName('npc_admin', 'first'))>> <<if $npc_admin.fem>>head peaking over<<else>>towering physique looming above<</if>> the cubicle walls from afar. <<He npc_admin>> looks at you with a sad smile as you approach.<br>
<br>
"@@.npc_admin;Hey man, I just got the word down from on high. Screw those bastards. Screw them all to hell. One fuck up and you're done. I really wish I could have done something but, well... the board is WAY above my pay grade. I guess you're lucky that <<=setup.getNpcName('npc_manager', 'other')>> stepped in and made you an offer? Anyway...@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> hands you a cardboard box.<br>
<br>
"@@.npc_admin;I gathered your stuff. Here you go. At least your financial situation is stable, but man. You? A secretary? Not really what you expected when you woke up this morning.@@"<br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
You consider telling your old friend about the insanity you just endured... but something stays your tongue. Maybe just the impression that there's no way <<he npc_admin>>'d believe you... and you're too scared to show <<him npc_admin>> the "proof" of the pink underthings that even now delicately rub against your skin.
<<elseif $player.sec_style.clothing.underwear == "enthusiast">>
You consider telling your old friend about what just happened... but you're still trying to process it all yourself, and you hold your tongue.
<<else>>
<<printThought "Yeah? No shit, Sherlock.">>
<</if>>
<br><br>
<<if $player.sec_style.body.breasts>>
<<=setup.getNpcName('npc_admin', 'first')>> seems distracted... really distracted, as you realise <<he npc_admin>> didn't notice your breasts before they disappeared behind the box of your stuff you're now carrying.
<<else>>
You thank <<=setup.getNpcName('npc_admin', 'first')>> for <<his npc_admin>> concern and turn to go, more than ready to go home and have this horrible day be over.
<</if>>
<br><br>
"@@.npc_admin;Hey, call me! We should go for a drink from time to time man. Don't be a stranger!@@"<br>
<br>
You're going to miss working with <<if $npc_admin.fem>>your friend<<else>>the big fella<</if>>.<br>
<br>
As you leave the office and spend some seconds in the elevator alone, the day starts to replay. By the time you hit the ground floor, you're in a bit of a cold sweat. Putting all your dirty clothes in the washing machine this evening might be a good idea, especially if you consider what <<=setup.getNpcName('npc_manager', 'formal')>> said about "being a representative position".<br>
<br>
[<<moveTo "company_lobby" "Leave Cloud Data Service." 120 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: first night sleep
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dream = {}>>
<<set $scene.dream.dream = "">>
<</if>>
<<set $player.location to "Dream">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Exhausted by your stressful day you fall asleep quickly, only to be haunted by your new <<=setup.getNpcName("npc_manager","title")>>. Maybe it is just the one-two punch of losing your girlfriend and your job, maybe it's lingering guilt over your data screw-up? Whatever it is, your new boss looms large, grinning down at you, like a cat looking down at its prey, contemplating how it is going to play...<br>
<br>
[<<moveTo "room_first_night_dreams_2" "Sleep." 7200>>]
</div>/*#
#desc: calculate and display dreams
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "...">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.stress = 60>>
<<applyFatigue -30>>
<</if>>
<<set $player.location to "Dream">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As your dreams roll on you start to become strangely accustomed to <<=ps(setup.getNpcName("npc_manager","formal"))>> presence. Her smile starts to feel almost... comforting? Maybe everything is going to be okay? Yeah, maybe all that stuff she said about a new opportunity is true, maybe everything is going to work out...<br>
<br>
<<include "calcSleepTime">>
<<if $now.getUTCHours() < 7>>
<<set _morning = setup.setNextDate($now, 0, 7, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 7, 0)>>
<</if>>
<<set $scene.sleepTime = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_first_night_dreams_3" "Continue to sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>><<startSleep $player $scene>>">>]
</div>/*#
#desc: wake up first day as secretary
#status: FINISHED 0.7.11.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Wow. Maybe I dreamt of changing clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<finishSleep $player $scene>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_01_night.png">>
<div id="invframe" class="scrolltext">
<<if $player.clock.workweek.h != 7 || $player.clock.workweek.m != 0>>
Despite changing your alarm you seem to have forgotten to actually turn it on — fortunately old habits die hard and you woke up at your usual time anyway. You turn the alarm on so you won't make the same mistake tomorrow.
<<else>>
The noise of your alarm clock has woken you up.
<</if>>
<br><br>
[<<moveTo "room_bedroom" "Get up." 60 "<<=Save.autosave.save()>>">>]
</div>/*#
#desc: forced home first night
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<set $player.location to "Inner City">>
<<set $player.inside = false>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_skyline_night.png">>
<div id="invframe" class="scrolltext">
All this walking around, and with starting a new job tomorrow... you take a deep breath.<br>
<br>
<<printThought "Pacing forever isn't going to do any good, I need to head home and get at least SOME rest.">><br>
<br>
[<<moveTo "room_foyer" "Get up." 300>>]
</div>/*#
#desc: give technician handjob after staring up skirt
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.virgin.handjob = 'npc_technician'>>
<<set $npc_technician.flags.dataservice_encounter.handjob = true>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/technician_reveal.mp4">>
<div id="invframe" class="scrolltext">
You watch as your hand reaches out, your fingers curving around her shaft and then, finally, touching the hot, hard member.<br>
<br>
From above you hear a gasp of surprise. "@@.npc_technician;Oh my! You know I was just teasing, you didn't have to do this...@@"<br>
<br>
<<printThought "Wait, I insist on keeping my virginity when I have a girlfriend, but now my first sexual encounter with a woman is going to be this... how did this happen?">><br>
<br>
[<<moveTo "event_dataservice_intro_5" "She's right, what were you even thinking?" 30>>]<br>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "You don't have to, you want to. Keep stroking." 10 "<<set $scene.strokes=0>><<set $scene.correct_strokes=0>>">>]
</div>/*#
#desc: state machine for technician handjob
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _correctSequence = "UUDDLRLRBAS">>
<<if $scene.strokes > 0>>
<<set $scene.correct_stroke = (_correctSequence[$scene.correct_strokes] == $scene.action)>>
<<if $scene.correct_stroke>>
<<set $scene.correct_strokes++>>
<<applyExperience 'penis' $scene.correct_strokes 'insignificant' $SEEN_FRIEND>>
<<else>>
<<set $scene.correct_strokes = 0>>
<</if>>
<</if>>
<<set $scene.strokes++>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/technician_reveal.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.strokes == 1>>
Your hand is around <<=ps(setup.getNpcName('npc_technician', 'first'))>> girlcock. Your heart races, this is the first time you've touched a penis other than your own. You feel excited, terrified and a dozen other emotions as you stare at the hot rod of flesh, a bead of pre at its tip as <<=setup.getNpcName('npc_technician', 'first')>> withdraws her hand.<br>
<br>
"@@.npc_technician;Alright, wow, I had no idea you would be into something like this! Okay, <<=$player.first_name>>, let's see what you got!@@"<br>
<br>
<<include technicianHandjobOptions>>
<<else>>
<<if !$scene.correct_stroke>>
<<if $scene.strokes > 15>>
Seemingly tired of your semi-random, amateurish job her hand reaches back down, stroking with a fresh rhythm as she
[<<moveTo "event_dataservice_handjob_finish_1" "Finish her off by hand." 60 "<<set $scene.finish='fail'>>">>]
<<else>>
<<switch $scene.action>>
<<case 'U'>>
You stroke up her hard, sexy shaft towards the wet tip, but she does not react particularly strongly.
<<case 'D'>>
You stroke down towards the base of her shaft, though her pert balls are tight and eager they look no more ready to release their payload.
<<case 'L'>>
You use your left hand to fondle her, but it doesn't seem to do particularly much.
<<case 'R'>>
You use your right hand to fondle her, but it doesn't seem to do particularly much.
<<case 'A'>>
You grope her cute ass to no effect.
<<case 'B'>>
You finger her bum, but it doesn't seem to prompt a particularly noteworthy reaction.
<</switch>>
<br><br>
<<printThought "Hmm, that didn't seem right, better start from the top.">><br>
<br>
<<include technicianHandjobOptions>>
<</if>>
<<else>>
<<switch $scene.correct_strokes>>
<<case 1>>
You stroke up her shaft prompting a lusty moan of approval. "@@.npc_technician;Mmmm, do that again...@@"
<<case 2>>
You stroke from the base to the tip of her shaft once again and she gasps, pulsing between your fingers.
<<case 3>>
Without removing your hand, you stroke back down. "@@.npc_technician;Yes! Oh that feels so good!@@"
<<case 4>>
You stroke downward once again. "@@.npc_technician;Oh Goddess, and I thought your fingers felt good on my feet!@@"
<<case 5>>
Bringing your other hand into the party, you encompass nearly the full length of her, gently holding her with your right while you run the fingers of your left over her tip. The amount of pre-cum leaking down tells you all you need to know about how much she approves.
<<case 6>>
Squeezing with your right hand, you move it up and down with short strokes. Her breaths come even quicker as she wiggles in her chair.
<<case 7>>
Focusing your efforts on her tip, you run a finger of your left hand around the straining, sensitive head. A tiny jet of pre-cum escapes to splatter on the underside of the desk as you realise that she must be really close.
<<case 8>>
You slide your right hand downward, massaging her full balls and prompting a soft moan "@@.npc_technician;Fuck, I'm so close...@@" she whispers.
<<case 9>>
Reaching past her tender balls, you run your finger around her quivering bum. She shudders, sliding further forward in her chair, this slight touch amplified by her over-sensitive skin.
<<case 10>>
Your hand slides to one side, caressing what proves to be a lovely ass, squeezing with one hand as you continue your slow strokes. She moans. "@@.npc_technician;Oh fuck I'm about to cum...@@"
<<default>>
ERROR: unexpected number of correct strokes: <<=$scene.correct_strokes>>
<</switch>>
<br><br>
<<if $scene.correct_strokes >= 10>>
Her member mere centimetres from your face, you consider the asymmetry of only grabbing one of her delightful buttcheeks as you feel her teetering on the edge of orgasm.<br>
<br>
"@@.npc_technician;I'm about to cum...@@" <<=setup.getNpcName("npc_technician","first")>> pants, starting to pull away and reaching for some tissue to politely finish somewhere other than your mouth.<br>
<br>
[<<moveTo "event_dataservice_handjob_finish_1" "Finish her off by hand." 60 "<<set $scene.finish='hand'>>">>]<br>
[<<moveTo "event_dataservice_handjob_finish_1" "Grab her butt with both hands and pull her in to swallow the hot sausage in front of you." 60 "<<set $scene.finish='mouth'>>">>]<br>
[<<moveTo "event_dataservice_handjob_finish_1" "Beg for her to cum in your mouth." 120 "<<set $scene.finish='beg'>>">>]
<<elseif $scene.correct_strokes > 6>>
<<=setup.getNpcName('npc_technician', 'first')>> has slid forward in her chair, her bare rear now exposed.<br>
<br>
<<include technicianHandjobOptions>>
<<elseif $scene.correct_strokes > 2>>
Your hands are feeling a bit tired and you consider how she would react to you switching off.<br>
<br>
<<include technicianHandjobOptions>>
<<else>>
<<include technicianHandjobOptions>>
<</if>>
<</if>>
<</if>>
</div>[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Stroke your hand up." 10 "<<set $scene.action='U'>>">>]<br>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Stroke your hand down." 10 "<<set $scene.action='D'>>">>]<br>
<<if $scene.strokes > 2>>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Focus on your right hand." 10 "<<set $scene.action='R'>>">>]<br>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Focus on your left hand." 10 "<<set $scene.action='L'>>">>]<br>
<<if $scene.correct_strokes > 6>>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Grope her ass." 10 "<<set $scene.action='A'>>">>]<br>
[<<moveTo "event_dataservice_intro_4_handjob_statemachine" "Finger her bum." 10 "<<set $scene.action='B'>>">>]<br>
<</if>>
<</if>>
<<if $scene.correct_strokes < 6>>
[<<moveTo "event_dataservice_intro_5" "No really, what were you even thinking? Get up now!" 30>>]<br>
<</if>>/*#
#desc: finish technician hand/blowjob
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.dataservice_encounter.handjob_finish = $scene.finish>>
<<switch $scene.finish>>
<<case 'mouth' 'beg'>>
<<if $scene.finish == "beg">>
<<set $player.sec_style.sex.drink_cum = "enthusiast">>
<<else>>
<<set $player.sec_style.sex.drink_cum = "voluntary">>
<</if>>
<<set $player.virgin.blowjob = 'npc_technician'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "enthusiast">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<<setThreshold 'oral' 'through_alex' 'intro_oral'>>
<<setThreshold 'cum' 'through_alex' 'intro_cum'>>
<<applyExperience 'oral' $npc_technician.penis_size 'little' $SEEN_FRIEND>>
<<applyExperience 'cum' 6 'little' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'penis' 8 'normal' $SEEN_FRIEND>>
<<gainWillpower 1>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_blowjob'
5
'event_technician_theme_blowjob'
true
>>
<<case 'hand'>>
<<addItem "card_technician">>
<<set $player.flags.datarecovery = 51>>
<<applyExperience 'penis' 7 'normal' $SEEN_FRIEND>>
<<case 'fail'>>
<<addItem "card_technician">>
<<set $player.flags.datarecovery = 50>>
<<applyExperience 'penis' 6 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'insignificant' $SEEN_FRIEND>>
<</switch>>
<<addNpcTheme 'npc_psychiatrist' 'technician' 'theme_psychiatrist_technician_3'
4
'psychiatrist_technician_handjob'
false
>>
<<addNpcTheme 'npc_technician' 'sex' 'theme_technician_sex_handjob'
0
'event_technician_theme_handjob'
false
>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<showImage "./images/scenes/blowjob_alex_01.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.finish>>
<<case 'beg'>>
You aren't entirely certain what's come over you, but whatever motivated you to set down this road after that first peek, you're seeing it through to the end.<br>
<br>
Tightening your grip around <<=ps(setup.getNpcName("npc_technician","first"))>> <<getWordPenis false>>, you beg her to cum in your mouth... your gentle request making her bite her lip as a final lick pushes her over the cliff, your mouth suddenly flooded with her surprisingly delicate — if a little salty — joy.<br>
<br>
Not wanting to disappoint, you swallow eagerly, surprised at how tasty and natural it feels to have your first taste of cum. You'd never even thought to try your own, and now you find yourself wondering... but those thoughts are quickly put aside as the sound of <<=ps(setup.getNpcName("npc_technician","first"))>> pants are interrupted by a strange voice.<br>
<br>
"@@.generic_male1;Hey, <<=setup.getNpcName('npc_technician', 'first')>>, you alright?@@"<br>
<br>
You freeze, eyes wide with fright as you pray that the <<guy>> whose voice you just heard isn't at the right angle to see under <<=ps(setup.getNpcName('npc_technician', 'first'))>> desk.<br>
<br>
"@@.npc_technician;Y-yeah,@@" <<=setup.getNpcName('npc_technician', 'first')>> responds breathlessly. "@@.npc_technician;Just figured out a bug in this script, sorry if I bothered you.@@"<br>
<br>
"@@.generic_male1;No bother at all, this something to do with that data loss thing? Say where did <<=$player.first_name>> run off to? I thought he was still here in your cube.@@"<br>
<br>
"@@.npc_technician;Related to that, yeah, <<=$player.first_name>> had to, um, duck out.@@"<br>
<br>
"@@.generic_male1;Gotcha, well, he's definitely one of those fellas you love to watch walk away, amirite? Mmm, not many guys with hips and butt that fine!@@"<br>
<br>
"@@.npc_technician;Oh you! Besides, he <<if $options.fem>>already has a girlfriend, I think<<else>>just broke up with his girlfriend, so I think he's straight<</if>>.@@"<br>
<br>
"@@.generic_male1;Maybe, maybe not! I would not mind inviting a cute tush like that into my bed to "explore his options" if you know what I mean!@@"<br>
<br>
Still with a mouth full of <<=ps(setup.getNpcName('npc_technician', 'first'))>> dick you could about die of embarrassment. Though it lasts but a few seconds, your frozen fear makes it feel much longer, and you are quite glad to finally hear the <<man>>'s laughter fade into the distance as <<he>> walks away.<br>
<br>
[<<moveTo "event_dataservice_handjob_finish_2" "Continue.">>]
<<case 'mouth'>>
Grabbing <<=ps(setup.getNpcName('npc_technician', 'first'))>> butt with both hands, you almost pull her off her chair as you lunge forward and swallow her ready-to-spurt girldick.<br>
<br>
Well, swallow might be the wrong word, turns out you aren't exactly a "natural" at this sort of thing and pull back almost the instant she pokes the back of your throat. Despite this error, your earlier efforts have her far too close to the edge to do anything but cum, spurting her mild-tasting seed down your throat as you suppress a cough and wrap your lips tight.<br>
<br>
You hear her cry out as her whole body goes rigid and she pushes back, trying to remain perched on her chair as you reflexively suck up every surprisingly tasty drop.<br>
<br>
<<printThought "What happened, and why does her cum taste so good?">><br>
<br>
You feel her relax for a moment and soften slightly as your tongue, seemingly with a mind of its own, runs circles under her tender head. You don't know how long you might have remained there, fingers dug into the soft flesh of her ass, lips enveloping her deliciously spent girldick, when you hear another voice.<br>
<br>
"@@.generic_male1;Hey, <<=setup.getNpcName('npc_technician', 'first')>>, you alright?@@"<br>
<br>
You freeze, eyes wide with fright as you pray that the <<guy>> whose voice you just heard isn't at the right angle to see under <<=ps(setup.getNpcName('npc_technician', 'first'))>> desk.<br>
<br>
"@@.npc_technician;Y-yeah,@@" <<=setup.getNpcName('npc_technician', 'first')>> responds breathlessly. "@@.npc_technician;Just figured out a bug in this script, sorry if I bothered you.@@"<br>
<br>
"@@.generic_male1;No bother at all, this something to do with that data loss thing? Say where did <<=$player.first_name>> run off to? I thought he was still here in your cube.@@"<br>
<br>
"@@.npc_technician;Related to that, yeah, <<=$player.first_name>> had to, um, leave though.@@"<br>
<br>
"@@.generic_male1;Gotcha, well, he's definitely one of those fellas you love to watch walk away, amirite? Mmm, not many guys with hips and butt that fine!@@"<br>
<br>
"@@.npc_technician;Oh you! Besides, he <<if $options.fem>>already has a girlfriend, I think<<else>>just broke up with his girlfriend so I think he's straight<</if>>.@@"<br>
<br>
"@@.generic_male1;Maybe, maybe not! I would not mind inviting a cute tush like that into my bed to "explore his options" if you know what I mean!@@"<br>
<br>
Still with a mouth full of <<=ps(setup.getNpcName('npc_technician', 'first'))>> dick, you could about die of embarrassment, glad to hear the <<man>>'s laughter fade into the distance as <<he>> finally walks away.<br>
<br>
[<<moveTo "event_dataservice_handjob_finish_2" "Continue.">>]
<<case 'hand'>>
Thanks to her warning you're able to lean to one side as you continue to stroke and she spurts past you, the thin jet of her cum staining the cubicle, a stain that you notice is not alone...<br>
<br>
"@@.npc_technician;Whew! You really do have magic fingers, feet... other things... we are going to have to get together more often... maybe outside of office hours?@@"<br>
<br>
Gently extricating herself from your grasp she fixes her panties and skirt before handing you a contact card.<br>
<br>
"@@.npc_technician;So, yeah... call me!@@"<br>
<br>
You pocket the card as she rolls her chair back to give you room to crawl forward.<br>
<br>
[<<moveTo "event_dataservice_intro_5" "Get up from under the desk.">>]
<<case 'fail'>>
Her delicate fingers pumping out a firm, rapid rhythm until with a culminating gasp she cums. One hand still around her shaft you feel her twitch and pump the thin product of her climax dribbling through your fingers.<br>
<br>
"@@.npc_technician;Sorry about butting in but, well... I kind of need to get back to work! If you ever want to practice again though... damn just the thought of you curled under my desk has me near ready for round two!@@"<br>
<br>
You're glad nobody can see you blushing down in the dark cavern below her seat as you watch her softening member disappear back beneath her white panties and short skirt. You take a moment to wipe off your hands before crawling forward.<br>
<br>
[<<moveTo "event_dataservice_intro_5" "Get up from under the desk." 120>>]<br>
<<default>>
ERROR: unexpected
<</switch>>
</div>/*#
#desc: finish technician blowjob aftermath
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.datarecovery = 60>>
<<addItem "card_technician">>
<<set $now to setup.advanceNextDate($player, $now, 0, 17, 55)>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You hear <<=setup.getNpcName('npc_technician', 'first')>> let out a sigh of relief before finally pushing away from her desk, her cock falling from your stunned lips as you relax your grip on her rear. Fixing her clothes gives you a final glance of her bulging panties as she tucks everything away before leaning over to sheepishly look at you.<br>
<br>
"@@.npc_technician;You can, uh, come out now... and I'm so sorry you had to hear that, <<he>>'s um... kind of an ass.@@"<br>
<br>
Nodding speechlessly, you take her outstretched hand as she helps you up. She gently brushes something off your chin and you blush and look away from the reminder of what you were doing a few minutes prior.<br>
<br>
"@@.npc_technician;So uh, yeah... first thanks, I totally just intended to hassle you a bit by telling you to massage my feet... then you did such a good job and then after...@@" Her voice trails off as she bites her lip, obviously a bit embarrassed at how "carried away" things got.<br>
<br>
"@@.npc_technician;Anyway! You did a fantastic "job" ... and I'd like to think I earned it on my end — I managed to recover sixty-percent of the lost data. Still a substantial loss but... it'd be a good batting average in baseball, I think?@@"<br>
<br>
You get the feeling she isn't exactly an expert on sport analogies, but you manage to find your voice to thank her for that hard work. You've barely said the word when you wince at the pun as she suppresses a giggle.<br>
<br>
"@@.npc_technician;Anyway, I'd really value your discretion about my little secret,@@" <<=setup.getNpcName('npc_technician', 'first')>> says while putting a finger on your lips in a suggestive manner. "@@.npc_technician;Well... maybe not-so-little, but yeah, not the sort of thing I want popping up at work. That would be better for both our sakes.@@"<br>
<br>
You blush and nod. Yeah, like you're going to go blabbing about sucking your female co-worker's cock at work...<br>
<br>
"@@.npc_technician;Oh, and... I hope it isn't too forward of me, but here.@@" She passes you a contact card. "@@.npc_technician;I'd love it if we could get together sometime, maybe outside of work? And I'm not just saying that because of, um... that, like, I'd love to get to know you better in general... though I'm totally willing to return the favour too... if that's the sort of thing you're into.@@"<br>
<br>
You're not sure how you went from discovering she had a cock, to sucking that cock, to her standing before you now flirting and slightly blushing at the offer to return the same, but you just nod before excusing yourself.<br>
<br>
As you start to turn, she suddenly darts forward for a kiss as you go wide-eyed in surprise, stiffening and then melting slightly at the warmth of her lips and probing tongue.<br>
<br>
"@@.npc_technician;Um... sorry for not asking, but I just wanted to... anyway, I hope you take me up on the offer and good luck with work, I hope they don't come down too heavy on you for the mistake.@@"<br>
<br>
You nod, and then linger for a moment longer, unable to get the thought of <<=ps(setup.getNpcName("npc_technician","first"))>> panties out of your head. Despite her bulge they looked so comfortable... the soft fabric somehow calling out to you...<br>
<br>
"@@.npc_technician;Hey! Earth to <<=$player.first_name>>! I've recovered all the data I can... unless... you had something else you wanted to say?@@"<br>
<br>
<<if $scene.likePanties>>
[@@.link_locked;You already mentioned liking her panties.@@]<br>
<<else>>
[<<moveTo "event_enthusiast_panties_1" "Blurt out that you liked her panties..." 180 "<<set $scene.panties=true>>">>]<br>
<</if>>
<<if $scene.likeHeels>>
[@@.link_locked;You already mentioned liking her heels.@@]<br>
<<else>>
[<<moveTo "event_secretary_style_heels_enthusiast_1" "Actually... you're curious about her heels..." 180>>]<br>
<</if>>
[<<moveTo "event_enthusiast_panties_1" "Just hurry back to your desk." 60 "<<set $scene.panties=false>>">>]
</div>/*#
#desc: refuse initial secretary offer
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You throw the contract back in <<=ps(setup.getNpcName("npc_manager","formal"))>> face as you announce that you're a man, and there's no way you'd lower yourself to working as some subordinate Secretary!<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sits perfectly still, looking back at you without a hint of reaction as the fluttering papers float down through the air.<br>
<br>
Your heart is racing as you realise just how big of an outburst you've made, and you blink... only to open your eyes and find <<=setup.getNpcName("npc_manager","formal")>> is no longer in front of you.<br>
<br>
You have no idea how she could have possibly moved so swiftly, but suddenly she is behind you, whispering in your ear. "@@.npc_manager;Foolish, foolish... man...@@" The way she pronounces that word makes it sound sarcastic, but such thoughts are distracted as you feel an iron-like grip squeezing down around your <<getWordMyPenis>>.<br>
<br>
"@@.npc_manager;Had you merely declined my offer I would have let you go but this... impertinence. You need to learn a lesson...@@" She squeezes your <<getWordMyPenis>> just enough to be painful while her other hand creeps up under your arm to wrap around your throat. "@@.npc_manager;Such a lovely thing... but so much to learn. But learn you shall. Obedience, decorum, service... you WILL be moulded into a perfect, obedient Secretary, the only question is how much pain and struggle you experience in the process...@@"<br>
<br>
You gasp as she releases her hold, frozen in place as she slowly walks back to the other side of the desk once more... and slides a fresh contract across to you.<br>
<br>
"@@.npc_manager;Last chance. Sign of your own volition and I forget this little outburst. Otherwise, well...@@" Her voice trails off and she grins, a smile that looks straight out of hell, and you would almost swear her eyes glowed for a moment.<br>
<br>
[<<moveTo "event_strict_underwear_2" "At least pretend to look at the contract." 180 "<<set $scene.sign=true>>">>]<br>
[<<moveTo "event_strict_underwear_2" "You're already fired, what can she do? Refuse!" 180 "<<set $scene.sign=false>>">>] <<hint $options "Warning: This will start the game in cruel manager mode — you will have to prove yourself to her for her to again consider treating you kindly.">>
</div>/*#
#desc: strict underwear refusal reaction
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.secretary_contract = "forced">>
<<set $npc_manager.flags.cruel = 1>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.sign>>
Intimidated, you meekly re-consider the contract. It's very clearly a contract for a Secretary position... but much beyond that you quickly go cross-eyed at the legalistic details, all the while feeling the heat of <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze burning into you.<br>
<br>
"@@.npc_manager;Well? Are you finished wasting my time?@@"<br>
<br>
[<<moveTo "event_dataservice_intro_10_1" "Sign the contract." 1500>>]<br>
[<<moveTo "event_dataservice_intro_10_2" "Say you want to read the contract first." 900>>]<br>
[<<moveTo "event_dataservice_intro_10_3" "Politely decline the offer." 600>>]
<<else>>
You take a moment to recover and, deciding repetition is the best reinforcement, throw this second contract back in her face, as well.<br>
<br>
This time her reaction is more instant, but less explosive, as she chuckles softly and shakes her head. "@@.npc_manager;So, so foolish. What I said before about your mistake costing the company money? Well, I am afraid that, if you do not do EXACTLY what I say that mistake is going to be considered criminal espionage. And believe me when I say this company has enough power at City Hall that you will be found guilty. So, you have a new choice. Since you have so rudely rejected the initial offer of a new job, your choice now is to either begin serving me immediately... or you will be heading directly to jail. So... are you going to cease this rude disobedience? If so, you can start by taking off your clothes.@@"<br>
<br>
<<printThought "Wait, what?">><br>
<br>
In spite, or perhaps because, of her instruction... you do not think she is joking...<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_underwear_3" "Naked is better than prison, remove your clothes." 180 "<<removeEverythingButUnderwear>>">>]<br>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">>
<</if>>
[<<moveTo "event_strict_underwear_bad_end_1" "No way, refuse!" 180>>] <<hint $options "Warning: This will irrevocably enable cruel mode.">>
<</if>>
</div>/*#
#desc: refuse strict underwear
#status: RELEASED 0.8.5.0
#*/
<<set $gameOver = "strict_refuse">>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You dig in your heels. All you did was screw up a back-up and lose some test data, this uptight bitch is blowing things way out of proportion!<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns — a moment of silence before you hear the door behind you as security arrives.<br>
<br>
You try to fight back, but faced with three guys each at least twice your size it isn't long before you're pinned, cuffed, and literally carried out to a squad car. The whole time <<=setup.getNpcName("npc_manager","formal")>> looks on on... perhaps the faintest hint of pity in the last moment before you lose sight of her.<br>
<br>
From there it goes exactly as <<=setup.getNpcName("npc_manager","formal")>> described. Arrested, charged, and railroaded through the court system in record time, the judge sentences you to an experimental work-release program...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
[<<moveTo "event_strict_underwear_bad_end_2" "Let's try that decision again?" 0 "<<unset $gameOver>>">>] <<hint $options "Proceeding this way will permanently enable Cruel Manager Mode.">>
</div>/*#
#desc: after hard-refusing strict underwear
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory=false>>
<<set $player.inside=true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.cruel = 2>>
<<set $scene.secretary_contract = "strict">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Hello, <<=$player.first_name>>.@@" <<=setup.getNpcName("npc_manager","formal")>> states with a smile as your cuffs are removed and she dismisses the correctional officer with a wave. Somehow you aren't surprised that you're back here... your rapid trial seeming almost a hallucination as <<=setup.getNpcName("npc_manager","formal")>> is back behind her desk with you standing amidst the discarded paperwork...<br>
<br>
"@@.npc_manager;I trust you better understand, now, the situation you are in? And so, I say again. Remove. Your. Clothes.@@"<br>
<br>
Your heart sinks. Maybe there will be an opportunity to escape further down the road, but for now you see no alternative but to obey...<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_underwear_3" "Naked is better than prison, remove your clothes." 180 "<<removeEverythingButUnderwear>>">>]<br>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">>
<</if>>
[<<moveTo "event_strict_underwear_bad_end_1" "No way, refuse!" 180>>]
</div>/*#
#desc: after hard-refusing strict underwear
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn('panties')>>
<<wearItem 'boxershorts' true>>
<</if>>
<<addItemSet "sissy_lingerie_pink">>
<</if>>
<<if setup.checkItemWorn('sissy_panties_pink') && setup.checkItemWorn('sissy_garter_pink') && setup.checkItemWorn('sissy_bra_pink') && setup.checkItemWorn('sissy_stockings_pink')>>
<<initRoom>>
<<moveTo "event_strict_underwear_4">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You've gotten down to your boxer shorts when <<=setup.getNpcName("npc_manager","formal")>> stops you. Any hope that this will be the extent of your humiliation is dashed by a single glance at her expression simmering with rage.<br>
<br>
"@@.npc_manager;Well, I can see the first step we will be taking with your training. Underthings such as that are emblematic of everything we need to correct. Loose, unflattering, masculine.@@" She spits each word out with the force of a punch, as if the mere act of feeling them in her mouth is unpleasant. "@@.npc_manager;To reform your thoughts and behaviour we shall start by reforming your attire.@@" She reaches into a drawer and lays a series of pink items on her desk.<br>
<br>
Your heart skips a beat with each item — panties, stockings, garters... and a bra. Each one with the <<if $fetish.sissy>>sissiest<<else>>most girly<</if>> frills imaginable.<br>
<br>
"@@.npc_manager;You will now remove that disgusting piece of clothing for disposal, and put these far more suitable items on.@@"<br>
<br>
[<<moveTo "event_strict_underwear_3b" "But you don't need a bra!" 180>>]<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_underwear_4" "Do as she says..." 180 '<<wearItemSet "sissy_lingerie_pink">>'>>]<br>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">>
<</if>>
</div>/*#
#desc: object to strict bra
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You object that you do not need a bra and <<=setup.getNpcName("npc_manager","formal")>> grins. "@@.npc_manager;So you accept that you do need the rest? That is the first positive indication I have seen from you all day.@@"<br>
<br>
You open your mouth to respond but no sound comes out.<br>
<br>
"@@.npc_manager;But, in point of fact, the best you could possibly say is that you do not need the support of a bra YET. Pro-social habits are best formed early, however, so I insist that you wear the full ensemble.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_underwear_4" "Do as she says..." 180 '<<wearItemSet "sissy_lingerie_pink">>'>>]<br>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">>
<</if>>
</div>/*#
#desc: finish dressing after strict underwear
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory=true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.underwear = "strict">>
<<set $npc_manager.flags.bad_girl.got_sissy_underwear = true>>
<<setThreshold "feminization" "bad_girl_feminization" "strict">>
<<setThreshold "submission" "bad_girl_submission" "strict">>
<<deleteItem "boxershorts">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You place your boxers on the desk and rock awkwardly back and forth in your new outfit. The humiliating pink attire seems somehow worse than if you were naked... even more insidious in that you would be unable to deny that the soft material is definitely more comfortable than what you were wearing before.<br>
<br>
<<printThought "No, it isn't comfortable, it's disgusting and humiliating! But I have no choice...">><br>
<br>
"@@.npc_manager;Very good. We shall put in work on that posture later. For now I want you to get used to wearing these new things, because feminine underwear is officially part of your uniform. You will show up to work with bra, panties and stockings of a suitably feminine style. Garters will remain at your discretion, but if I see you in any sort of masculine underwear... or, heaven forfend, no underwear at all? There will be consequences. Painful consequences.@@"<br>
<br>
She gives a moment for her words to set in before sitting back on her desk. "@@.npc_manager;Now, if you would clean up the mess you made — I want both contracts stacked and in order for you to sign. One for my records, one for yours. Chop-chop.@@"<br>
<br>
You look at the sea of paper strewn across the floor... and glance towards the door...<br>
<br>
<<printThought "No... she's already proven she's too fast... and strong, too... As embarrassing as these underthings are... it's all hidden, nobody needs to know, I can just keep my head down, get through the day... and figure something out.">><br>
<br>
[<<moveTo "event_strict_underwear_5" "Start picking things up..." 1800>>]
</div>/*#
#desc: gather papers after strict underwear
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
It takes a while to pick things up and organize them all, especially when you come up one page short and are forced to crawl around under the desk to find where the last page floated.<br>
<br>
The whole time <<=setup.getNpcName("npc_manager","formal")>> watches you like a stern hawk and, as you rise to put the final page into its proper place she stops you with a word.<br>
<br>
"@@.npc_manager;Remain on your knees. It is more... appropriate.@@"<br>
<br>
She rises to her feet and walks over to stand above you, stiletto-heel knee-high boots making her loom even higher above you.<br>
<br>
"@@.npc_manager;We shall attend to the formality of your signature in a moment but first... Kiss my feet. And thank me not just for the new job offer, but for taking the time to train you for it.@@"<br>
<br>
<<printThought "What? What the hell type of job is this? She's crazy!">><br>
<br>
Crazy or not, you've already seen her speed and ruthlessness... maybe this is the easiest way to get out of this office with your hide...<br>
<br>
[<<moveTo "event_strict_underwear_6" "Kiss her feet." 300 "<<set $scene.kiss=true>>">>]<br>
[<<moveTo "event_strict_underwear_6" "Refuse!" 300 "<<set $scene.kiss=false>>">>]
</div>/*#
#desc: kiss her feet after strict underwear
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory=true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.kiss>>
<<setThreshold 'submission' 'submissive_secretary' 'strict_punishment'>>
<<setThreshold 'foot' 'secretary_foot' 'strict_foot'>>
<<applyExperience 'submission' 5 'terrible' $SEEN_STRANGER>>
<<applyExperience 'foot' 5 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.kiss>>
Seeing little alternative... you kiss her feet.<br>
<br>
"@@.npc_manager;See how easy that was? How natural? Now we can proceed to the signing, with everyone a bit more clear on their respective positions, right?@@"<br>
<br>
You try to ignore the taste of boot leather in your mouth as you consider your reply...
<<else>>
You ignore her instruction and begin to stand only for her to suddenly force you back to the ground. Face pressed against the carpet, her foot presses down into your head, the sharp heel feeling just about ready to draw blood...<br>
<br>
"@@.npc_manager;Stubborn. You will serve at my feet, or be ground beneath them. There are no other alternatives. Now, I am going to let you up, and you are going to sign your contract and tomorrow we are going to start your job properly. You wearing feminine underthings, me as your absolute Lord and Mistress. Do I make myself clear?@@"<br>
<br>
You try to struggle and she presses down a little harder until you fall obediently still.
<</if>>
<br><br>
[<<moveTo "event_strict_underwear_7" 'Yes, <<=setup.getNpcName("npc_manager","formal")>>...' 300>>]
</div>/*#
#desc: get dressed after strict underwear
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "fountain_pen">>
<<addItem "card_manager">>
<<include firstDaySecretaryTasks>>
<</if>>
<<if setup.checkItemWorn("shirt") && setup.checkItemWorn("tie") && setup.checkItemWorn("b_trousers") && setup.checkItemWorn("shoes_black")>>
<<initRoom>>
<<moveTo "event_strict_underwear_8">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> smiles at you.<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_manager","formal")>>@@" you reply as she lets you back to your feet.<br>
<br>
You put the final page back where it belongs and dutifully sign both copies. "@@.npc_manager;There we go, all official. Congratulations on your new job! And keep the pen... a little memento of the signing.@@"<br>
<br>
You wince, hardly feeling excited about this so-called "opportunity." <br>
<br>
"@@.npc_manager;Just a few minor additional items. You start work at <<if $options.militaryTime>>oh eight-hundred<<else>>eight am<</if>> sharp — I expect you to be at your desk on time clean, dressed appropriately, and ready to work. As a final item you have been scheduled for a psychological evaluation. This is performed by a third party psychiatrist, you will take care of it Friday after work. And with that... well, I think we are done. Do take one of my cards before you go.@@" She adds with a nod to the neatly stacked business cards in a holder at the edge of her desk.<br>
<br>
You take the card nervously, still staring at the two stacks of contract papers, one of them somewhat crumpled from your pitching it across the room. "@@.npc_manager;Hmm, I said one of these was yours... but I think it would be easier if I just sent over a digital copy. Check your email when you get home if you wish to review anything. Good-night!@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_underwear_8" "Get dressed and leave before anything else goes wrong." 300 '<<wearItemSet "male_office">><<set $player.cutscene.lockinventory=true>>'>>]<br>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">>
<</if>>
</div>/*#
#desc: back on track after strict underwear
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You quickly put your clothes back on and flee from the office before <<=setup.getNpcName("npc_manager","formal")>> decides to do anything else to you.<br>
<br>
[<<moveTo "event_dataservice_intro_11" "Hurry downstairs and clear out your desk." 300>>]
</div>/*#
#desc: change clothes in company restroom
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Not Now!">>
<<include "calcDressedForWork">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverythingButUnderwear>>
<<wearItem 'sissy_panties_pink' true>>
<<wearItem 'sissy_bra_pink' true>>
<<wearItem 'sissy_stockings_pink' true>>
<<if setup.checkItemInInventory('sissy_garter_pink')>>
<<wearItem 'sissy_garter_pink' true>>
<</if>>
<<setThreshold "feminization" "bad_girl_feminization" "strict_resign">>
<<applyExperience 'submission' 10 'terrible' $ALONE>>
<</if>>
<<set $player.location to "Company Public Restroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You grit your teeth and put on the humiliatingly pink underwear that <<=setup.getNpcName("npc_manager","formal")>> forced on you. Doing it without her stern gaze burning into you is both better to be away from her fearful presence... and so much worse, as the veil of excuse for doing such an emasculating act is pulled further aside.<br>
<br>
In what feels like far too short a time the pink attire is once again in place on your body, its cool satin comfort infuriating compared to the burning shame that looking down to see it sparks for you.<br>
<br>
<<if setup.checkItemWorn('sissy_garter_pink')>>
<<printThought "I even put the garters on... are those even necessary? I guess they do kind of pull the outfit together... no! Stop thinking like that! You're a man, this is humiliating enough!">><br>
<br>
You take a deep breath... but do not remove the garters.<br>
<br>
<</if>>
<<printThought "It's just for work, it's just for work...">><br>
<br>
You keep running the words through your head... but each repetition feels more hollow. You could have found something less humiliating... but you didn't... though buying women's underwear... well... that would have been a step of it's own.<br>
<br>
<<if $scene.workUnderwear && $scene.workOuterwear && setup.checkPlayerDressed()>>
[<<moveTo "room_elevator_in" "Clear your head and head to work." 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
<<if setup.checkPlayerDressed()>>
<<printThought "I should at least get dressed...">>
<<else>>
<<printThought "Technically this is a uniform violation...">>
<</if>>
<br><br>
<<if $options.ezchange>>
[<<moveTo "room_elevator_in" 'Put the rest of your clothes on, clear your head, and head to work.' 120 "<<wearItem 'sissy_panties_pink' true>><<wearItem 'sissy_bra_pink' true>><<wearItem 'sissy_stockings_pink' true>><<if setup.checkItemInInventory('sissy_garter_pink')>><<wearItem 'sissy_garter_pink' true>><</if>><<wearItemSet 'male_office'>><<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
<<hint $options "Get changed in your inventory.">>
<</if>>
<</if>>
</div>/*#
#desc: secretary style introduction
#status: RELEASED 0.9.0.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Back at your desk <<=setup.getNpcName("npc_manager","formal")>> has you open an email that links you to setting up with an application called "Skills Management and Requirement Tracking<<if $fetish.sissy>> SISSI<</if>>." <br>
<br>
"@@.npc_manager;The SMART<<if $fetish.sissy>> SISSI<</if>> tool is a very useful employee development system that the company both created and markets to other firms. It gives you a single destination for tracking pay, hours, as well as your career development. I have set you up with the <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> module, as befits your position, but the company maintains other variants such as the Maintenance and Networking or the General Industrial Research and Lab-tech career path. If you would click over to the <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> Skills page you will see that I have already filled in some of your past achievements, and added a few additional career goals for you to work towards. Note that this resource is considered confidential employee information and your data is accessible only by yourself and your immediate manager, myself, obviously. This privacy means that we can really paint a complete picture of your development, and work together to chart an optimal path for your professional future.@@"<br>
<br>
Your heart beats faster as her hand touches your own to guide your mouse to the indicated link.<br>
<br>
Efficiently organised, the page is about what you would expect for such a corporate tool, organising skills by categories with a brief space for manager feedback under each. What is less than normal... well, for any other company, is what some of those skills are. While there are a few basic, expected categories such as scheduling and typing, the bulk of the line items are fixated on a different part of your so-called job, including listings for your conversion to wearing feminine panties, <<if $player.sec_style.body.pinkpill>>taking "work enhancing" drugs, <</if>>unisex attire... <<if $player.sec_style.sex.blowjob>>giving a blowjob, <</if>>and <<if $player.sec_style.submission.chastity>>being locked in chastity<<else>>going on t-blockers<</if>>. Perhaps even more shocking is the "goals" section, which includes <<if !$player.sec_style.clothing.female>>adopting a feminine uniform and <</if>>a listing of sexual acts that you have performed at the office!<br>
<br>
<<printThought "This is... really thorough... but I guess that tracks with <<=ps(setup.getNpcName('npc_manager','formal'))>> personality, and she said it's only between the two of us...">><br>
<br>
[<<moveTo "event_secretary_style_structure_2" 'Look up at <<=setup.getNpcName("npc_manager","formal")>>.' 180>>]
</div>/*#
#desc: secretary style explination
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You look up at <<=setup.getNpcName("npc_manager","formal")>> and she smiles. "@@.npc_manager;Well, I can see you are already excited at this blueprint for your career, so I shall leave you to make plans. You may access the SMART<<if $fetish.sissy>> SISSI<</if>> application at any time from your desk. As your career develops I may add additional stretch goals for you to target, or document ways in which you developed in less explicitly directed ways, even if the goal had not previously been visibly listed.@@"<br>
<br>
She starts to leave and you blurt out the question of how the system could track such intimate and private events?<br>
<br>
She pauses in the doorway to her inner office and smiles. "@@.npc_manager;Here at Social Interaction Service Syndicate Inc. we believe in a holistic approach to employee development, and monitoring. Of course we use the highest security encryption algorithms to ensure that all of your data is safe. We would not wish some nefarious competitor to gain unfair advantage by way of our internal processes now, would we? It was all in your contract. In order to safeguard our valuable human assets the company reserves the right to monitor and track in whatever manner it deems most efficient. Take some time to review things, and consider what sort of professional goals would make sense for your continued career development.@@"<br>
<br>
You can't help but glance around, wondering just how many cameras are watching you at this very moment. <<=setup.getNpcName("npc_manager","formal")>> takes the brief distraction to slip back into her inner office, the door closing behind her.<br>
<br>
<<set $scene.returnFromEmployee = "event_work_goal_1_1">>
<<if false>><<moveTo "event_work_goal_1_1">><</if>>
[<<link "Let's look at this thing...">><<=Engine.play("room_secretary_style", true)>><</link>>]
</div>/*#
#desc: secretary style listing
#status: RELEASED 0.9.0.0
#ignore_spell: contraindicated
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "SMART <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> Developmental Profile">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
<<if $fetish.sissy>>SISSI <</if>>Secretary Physical Improvements:<br>
<<if $player.sec_style.body.tblock>>
<<printSecStyle "body" "tblock">>
<</if>>
<<printSecStyle "body" "pinkpill">>
<<if $player.sec_style.body.name>>
<<printSecStyle "body" "name">>
<</if>>
<<printSecStyle "body" "hair">>
<<if $fetish.hair_growth>>
<<printSecStyle "body" "hair_body">>
<<printSecStyle "body" "hair_face">>
<</if>>
<<printSecStyle "body" "breasts">>
<<if $npc_manager.stage >= 4 || $player.sec_style.body.boiless>>
<<printSecStyle "body" "boiless">>
<<printSecStyle "sex" "boiless_bottle">>
<</if>>
<<if $npc_manager.stage >= 4 || $player.sec_style.clothing.female || $player.sec_style.body.hormones>>
<<printSecStyle "body" "hormones">>
<</if>>
<<if $player.body_ref.penis && ($npc_manager.stage >= 4 || $npc_manager.flags.party.timesAttended > 0) || $player.sec_style.body.penis_shrink>>
<<printSecStyle "body" "penis_shrink">>
<</if>>
<<if $npc_manager.stage >= 4 || $npc_manager.flags.party.timesAttended > 0 || $player.sec_style.body.penis_remove>>
<<printSecStyle "body" "penis_remove">>
<</if>>
<<if $npc_manager.stage >= 4 || $npc_manager.flags.party.timesAttended > 0 || $player.sec_style.body.vagina>>
<<printSecStyle "body" "vagina">>
<</if>>
<br>
<<if $fetish.sissy>>SISSI <</if>>Secretary Uniform Upgrades:<br>
<<printSecStyle "clothing" "underwear">>
<<printSecStyle "clothing" "unisex">>
<<printSecStyle "clothing" "female">>
<<if $player.sec_style.clothing.purge>>
<<printSecStyle "clothing" "purge">>
<</if>>
<<if $npc_manager.stage > 3 && $player.sec_style.clothing.female || $player.sec_style.clothing.maid>>
<<printSecStyle "clothing" "maid">>
<</if>>
<<if $npc_manager.stage >= 4 || $player.sec_style.clothing.latex>>
<<printSecStyle "clothing" "latex">>
<</if>>
<<if $player.sec_style.clothing.female>>
<<printSecStyle "clothing" "makeup">>
<<printSecStyle "clothing" "nails">>
<</if>>
<<if $player.sec_style.clothing.female>>
<<printSecStyle "clothing" "heels">>
<</if>>
<<if $npc_manager.stage >= 4 || $player.sec_style.clothing.heels && $npc_manager.flags.uniform_upgrade.lunch_heel_training_complete || $player.sec_style.clothing.ballet>>
<<printSecStyle "clothing" "ballet">>
<</if>>
<<if $fetish.tattoos>>
<<printSecStyle "clothing" "tattoo">>
<</if>>
<<if $npc_manager.stage >= 4 || ["her_sissy", "sissy"].includes($npc_manager.flags.pegging.collar) || $player.sec_style.clothing.sissy_choker>>
<<printSecStyle "clothing" "sissy_choker">>
<</if>>
<<if $player.sec_style.clothing.bride>>
<<printSecStyle "clothing" "bride">>
<</if>>
<br>
<<if $fetish.sissy>>SISSI <</if>>Secretary Service Accomplishments:<br>
<<if $player.sec_style.sex.blowjob || $npc_manager.stagevalues[3].goals>>
<<printSecStyle "sex" "blowjob">>
<</if>>
<<printSecStyle "sex" "cunnilingus">>
<<if $player.sec_style.sex.butt_plug || $npc_manager.stagevalues[3].goals>>
<<printSecStyle "sex" "butt_plug">>
<</if>>
<<if $player.sec_style.sex.pegging>>
<<printSecStyle "sex" "pegging">>
<</if>>
<<if $player.body_ref.vagina && ($npc_manager.stage >= 4 || $player.sec_style.sex.pegging || $player.sec_style.sex.vag_strap)>>
<<printSecStyle "sex" "vag_strap">>
<</if>>
<<if $player.body_ref.penis && $npc_manager.stage >= 4 || $player.sec_style.sex.penis_sex>>
<<printSecStyle "sex" "penis_sex">>
<</if>>
<<if $player.sec_style.sex.anal || $npc_manager.stagevalues[3].goals>>
<<printSecStyle "sex" "anal">>
<</if>>
<<if $player.body_ref.vagina && ($player.sec_style.sex.vagina || $npc_manager.stagevalues[3].goals)>>
<<printSecStyle "sex" "vagina">>
<</if>>
<<if $fetish.cum && ($npc_manager.stage >= 4 || $player.sec_style.sex.drink_cum || $player.sec_style.sex.blowjob)>>
<<printSecStyle "sex" "drink_cum">>
<</if>>
<<if $player.sec_style.sex.airtight || $npc_manager.stage >= 4 || $player.sec_style.sex.anal && $player.sec_style.sex.blowjob && (!$player.body_ref.vagina || $player.sec_style.body.vagina)>>
<<printSecStyle "sex" "airtight">>
<</if>>
<<if $player.sec_style.sex.camgirl>>
<<printSecStyle "sex" "camgirl">>
<</if>>
<<if $player.sec_style.sex.sex_woman || $npc_manager.stagevalues[3].goals>>
<<printSecStyle "sex" "sex_woman">>
<</if>>
<<if !$options.fem_all_women && ($player.sec_style.sex.sex_man || $npc_manager.stagevalues[3].goals)>>
<<printSecStyle "sex" "sex_man">>
<</if>>
<<if $fetish.milking && ($npc_manager.stage >= 4 || $player.sec_style.sex.milking)>>
<<printSecStyle "sex" "milking">>
<</if>>
<<if $fetish.penis_milking && ($player.body_ref.penis && $npc_manager.stage >= 4 || $player.sec_style.sex.testicle_milking)>>
<<printSecStyle "sex" "testicle_milking">>
<</if>>
<<if $npc_manager.stage >= 4 || $player.sec_style.submission.bimbo_secretary || setup.findThemeId('npc_manager', 'other_work', 'theme_manager_other_bimbo') != -1>>
<<printSecStyle "submission" "bimbo_secretary">>
<</if>>
<br>
<<if $fetish.sissy>>SISSI <</if>>Secretary Demonstrations of Obedience:<br>
<<printSecStyle "submission" "vr_therapy">>
<<if $player.sec_style.submission.chastity>>
<<printSecStyle "submission" "chastity">>
<</if>>
<<if $npc_manager.stagevalues[3].goals && ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis)>>
<<printSecStyle "submission" "permanent_key">>
<</if>>
<<if $player.sec_style.submission.sissyomatic || ($player.body_ref.vagina && $fetish.chastity_vag || $player.body_ref.penis && $fetish.chastity_penis) && ($npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer)>>
<<printSecStyle "submission" "sissyomatic">>
<</if>>
<<if $npc_manager.stage >= 3 || $player.sec_style.body.identify_fem>>
<<printSecStyle "body" "identify_fem">>
<</if>>
<<if $npc_manager.stage >= 4 || ["slave","her_slave"].includes($npc_manager.flags.pegging.collar) || $player.sec_style.submission.collar>>
<<printSecStyle "submission" "collar">>
<</if>>
<<if $fetish.piss && ($npc_manager.stage >= 4 || $npc_manager.flags.piss_drinking.available || $player.sec_style.submission.human_toilet || State.hasPlayed("event_manager_theme_executive_bathroom"))>>
<<printSecStyle "submission" "human_toilet">>
<</if>>
<<if $fetish.penis_milking && ($player.body_ref.penis && $player.body_ref.balls && ($npc_manager.stage >= 4 || $player.sec_style.submission.testicle_milking) || $player.sec_style.submission.testicle_pain)>>
<<printSecStyle "submission" "testicle_pain">>
<</if>>
<<if $npc_manager.stage >= 4 || $player.sec_style.submission.prostitution>>
<<printSecStyle "submission" "prostitution">>
<</if>>
<br>
<<if $fetish.sissy>>SISSI <</if>>Secretary Technical Skills:<br>
<<if State.hasPlayed("event_typing_lesson_4_2")>>
Universal Multitasker: Employee has completed expert typist training.
<<elseif State.hasPlayed("event_typing_lesson_3_2")>>
Multitasking Service: Employee has completed advance typist training.
<<elseif State.hasPlayed("event_typing_lesson_2_2")>>
Distracted Dictation: Employee has completed intermediate typist training.
<<elseif State.hasPlayed("event_typing_lesson_1_3")>>
Punitive Pecking: Employee has completed basic typing assessment and training.
<<else>>
Employee has been scheduled for basic typing assessment and training.
<</if>>
<br>
<<if $player.sec_style.submission.human_toilet>>
Employee has cross-trained their skillset and served in the Executive Bathroom.<br>
<<elseif $npc_manager.flags.piss_drinking.available>>
Employee has been exposed to the Executive Bathroom.<br>
<</if>>
<<if $player.flags.work_coffee.times_work_milk>>
Employee has demonstrated skill at service, coffee-making, and milk-production.<br>
<<elseif $player.flags.work_coffee.coffee_skill>>
Employee has expanded their skills at service and coffee-making.<br>
<</if>>
<<if $npc_manager.stage >= 4>>
<<if setup.hasThreshold('oral', 'extreme_oral', 'oral_final')>>
Oral skills: Excellent.<br>
<<elseif setup.hasThreshold('oral', 'extreme_oral', 'manager_oral')>>
Oral skills: Under Assessment.<br>
<</if>>
<<if setup.hasThreshold('anal', 'secretary_anal', 'double_fist')>>
Anal skills: Excellent.<br>
<<elseif setup.hasThreshold('anal', 'secretary_anal', 'fist_training')>>
Anal skills: Under Assessment.<br>
<</if>>
<<if setup.hasThreshold('foot', 'secretary_foot', 'foot_final')>>
Foot skills: Excellent.<br>
<<elseif setup.hasThreshold('foot', 'secretary_foot', 'eager_pedicure') || setup.hasThreshold('foot', 'secretary_foot', 'shoeshine_station')>>
Foot skills: Under Assessment.<br>
<</if>>
<<if setup.hasThreshold('bdsm', 'bdsm_other', 'bdsm_final')>>
Pain Tolerance skills: Excellent.<br>
<<elseif setup.hasThreshold('bdsm', 'bdsm_other', 'discipline_volunteer')>>
Pain Tolerance skills: Under Assessment.<br>
<</if>>
<<if setup.hasThreshold('bondage', 'machine_bondage', 'bondage_final')>>
Restraint skills: Excellent.<br>
<<elseif setup.hasThreshold('bondage', 'machine_bondage', 'chair_bondage')>>
Restraint skills: Under Assessment.<br>
<</if>>
<<if setup.hasThreshold('smart', 'smart_other', 'smart_final')>>
Problem Solving skills: Excellent.<br>
<<elseif setup.getTotalValue("smart") > 15>>
Problem Solving skills: Under Assessment.<br>
<</if>>
<<if setup.hasThreshold('submission', 'submissive_secretary', 'final_submission')>>
Submissive skills: Excellent.<br>
<</if>>
<<if State.hasPlayed("event_management_assess_6") || setup.hasThreshold('dominance', 'dominance_other', 'dom_training')>>
Management Investigation, Search, Training, Research and Education for <<if $fetish.sissy>>SISSI <</if>>Secretaries Progress:
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') && setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
Dominance skills: Excellent and versatile.<br>
<<elseif setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh')>>
Dominance skills: Excellent, if harsh.<br>
<<elseif setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
Dominance skills: Excellent and compassionate.<br>
<<elseif setup.hasThreshold('dominance', 'dominance_other', 'dom_training')>>
Dominance skills: Under Assessment.<br>
<<elseif State.hasPlayed("event_management_assess_6")>>
<<if State.hasPlayed("event_management_assess_6_dom")>>
Leadership Aptitude Identified.<br>
<<elseif State.hasPlayed("event_management_assess_6_evil")>>
Employee Aptitude Contraindicated for Leadership Positions.<br>
<<elseif State.hasPlayed("event_management_assess_6_sub")>>
Employee Assessed as a Natural Follower.<br>
<<elseif State.hasPlayed("event_management_assess_6_other")>>
No Leadership Aptitude Identified.<br>
<<else>>
ERROR: unexpected management assess state
<</if>>
<</if>>
<</if>>
<<if State.hasPlayed("event_manager_training_test_first")>>
<<if $now.getUTCHours() < 8>>
[@@.link_locked;It is before your technical start time. Best not to bother <<=setup.getNpcName("npc_manager","formal")>> about proving your skills.@@]<br>
<<elseif $now.getUTCHours() >= $player.work.time_evening || $now.getUTCDay() == 5 && $now.getUTCHours() >= $player.work.time_friday>>
[@@.link_locked;It is after hours. Best not to bother <<=setup.getNpcName("npc_manager","formal")>> about proving your skills.@@]<br>
<<else>>
[<<moveTo "event_manager_training_test_voluntary" 'Ask <<=setup.getNpcName("npc_manager","formal")>> about proving another skill.' 120>>]<br>
<</if>>
<</if>>
<</if>>
<br>
<<if $player.flags.uniform_upgrade.aslutStage || $npc_development.flags.class || $player.flags.stage3party.cumContest || $npc_boss.flags.blowjobContest.attempts || $npc_manager.stage >= 4>>
<<if $fetish.sissy>>SISSI <</if>>Secretary Special Commendations:<br>
<<if $player.flags.uniform_upgrade.aslutStage>>
<<switch $player.flags.uniform_upgrade.aslutStage>>
<<case 1>>
Employee has been introduced to the A-SLUT program.
<<case 2>>
Employee shown basic A-SLUT proficiency.
<<case 3>>
Employee is on a path to A-SLUT proficiency.
<<case 4>>
Employee has shown complete A-SLUT proficiency.
<<default>>
ERROR: unexpected a-slut stage
<</switch>>
<br>
<</if>>
<<if $npc_development.flags.class>>
<<switch $npc_development.flags.class>>
<<case 1>>
Employee has been enrolled in continuing professional education.
<<case 2 3 4>>
Employee has begun attending continuing professional education.
<<case 5>>
<<if setup.hasThreshold('smart', 'smart_other', 'class')>>
Employee has shown exemplary focus in completing a course in professional education.
<<else>>
Employee has completed a course in continuing professional education.
<</if>>
<<default>>
ERROR: unexpected npc_development.flags.class <<=$npc_development.flags.class>>
<</switch>>
<br>
<</if>>
<<if $player.flags.stage3party.cumContest>>
<<switch $player.flags.stage3party.cumContest>>
<<case 1>>
Employee has failed in their attempt to prove their talents as a cumoisseur.
<<case 2>>
Employee has shown rudimentary skills at identifying cum.
<<case 3>>
Employee has shown skill at classifying cum.
<<case 4>>
Employee has demonstrated expansive thirst and capacity for cum.
<<case 5>>
Employee has shown the ability to multi-task cum.
<<case 6>>
Employee has shown a deep expertise as a thirsty cumoisseur.
<<default>>
ERROR: unexpected cum contest <<=$player.flags.stage3party.cumContest>>
<</switch>>
<br>
<</if>>
<<if $npc_boss.flags.blowjobContest.attempts>>
<<if $npc_boss.flags.blowjobContest.won>>
Employee has proven an unending hunger for cock, and the ability to impress upper management.<br>
<<elseif $npc_boss.flags.blowjobContest.lost>>
Employee has failed to impress upper management with their hunger for cock.<br>
<</if>>
<</if>>
<<if $npc_manager.stage >= 4>>
Employee has shown the ability to adapt their efforts during a team-building off-site.<br>
<</if>>
<</if>>
<br>
<<if $npc_retention.stage || $npc_development.stage || $npc_discipline.stage || $npc_harassment.stage || $npc_nintendolls.stage>>
Managerial Mentions:<br>
<<if $npc_retention.stage>>
<<switch $npc_retention.stage>>
<<case 1 2 3>>
Employee has met the Manager of Employee Retention, <<=setup.getNpcName('npc_retention', 'formal')>>.
<<case 4>>
Employee has assisted <<=setup.getNpcName('npc_retention', 'formal')>> in demonstrating secure offerings from the Employee Retention Department
<<case 5>>
Employee has shown cross-departmental peer team-building with the Employee Retention Department.
<<default>>
ERROR: unexpected npc_retention.stage <<set $npc_retention.stage>>
<</switch>>
<br>
<</if>>
<<if $npc_development.stage>>
<<switch $npc_development.stage>>
<<case 1 2 3>>
Employee has met the Manager of Employee Development, <<=setup.getNpcName('npc_development', 'formal')>>.
<<case 4>>
Employee has demonstrated professional development by serving <<=setup.getNpcName('npc_development', 'formal')>>, the Manager of Employee Development.
<<case 5>>
Employee has modeled a new student uniform for <<=setup.getNpcName('npc_development', 'formal')>>, the Manager of Employee Development.
<<default>>
ERROR: unexpected npc_development.stage <<set $npc_development.stage>>
<</switch>>
<br>
<</if>>
<<if $npc_discipline.stage>>
<<switch $npc_discipline.stage>>
<<case 1 2 3>>
Employee has met the Manager of Employee Discipline, <<=setup.getNpcName('npc_discipline', 'formal')>>.
<<case 4>>
Employee has assisted <<=setup.getNpcName('npc_discipline', 'formal')>> in demonstrating methods of Employee Discipline.
<<case 5>>
<<if $npc_discipline.flags.applicant.sub && $npc_discipline.flags.applicant.dom && $npc_discipline.flags.applicant.brat>>
Employee has shown full and intimate knowledge of Employee Discipline while assisting <<=setup.getNpcName('npc_discipline', 'formal')>>.
<<elseif $npc_discipline.flags.applicant.sub && $npc_discipline.flags.applicant.brat>>
Employee has shown complete intimate knowledge of Employee Discipline while assisting <<=setup.getNpcName('npc_discipline', 'formal')>>.
<<elseif $npc_discipline.flags.applicant.dom>>
Employee has shown intimate knowledge of Employee Discipline while assisting <<=setup.getNpcName('npc_discipline', 'formal')>>.
<<else>>
Employee has proven Employee Discipline while assisting <<=setup.getNpcName('npc_discipline', 'formal')>>.
<</if>>
<<default>>
ERROR: unexpected npc_discipline.stage <<set $npc_discipline.stage>>
<</switch>>
<br>
<</if>>
<<if $npc_harassment.stage>>
<<switch $npc_harassment.stage>>
<<case 1 2>>
Employee has met the Manager of Employee Harassment, <<=setup.getNpcName('npc_harassment', 'formal')>>.
<<case 3>>
Employee has met the Manager of Employee Harassment, <<=setup.getNpcName('npc_harassment', 'formal')>> and their assistant, <<=setup.getNpcName('npc_harassment_assist', 'first')>>.
<<case 4>>
Employee has built cross-team synergy with the Employee Harassment department through <<=ps(setup.getNpcName('npc_harassment', 'formal'))>> assistant, <<=setup.getNpcName('npc_harassment_assist', 'first')>>.
<<default>>
ERROR: unexpected npc_harassment.stage <<set $npc_harassment.stage>>
<</switch>>
<br>
<</if>>
<<if $npc_nintendolls.stage>>
<<switch $npc_nintendolls.stage>>
<<case 1>>
Employee has met <<=setup.getNpcName('npc_nintendolls', 'formal')>>, the President of our partner Company Nintendolls.
<<case 2>>
Employee has shown <<=setup.getNpcName('npc_nintendolls', 'formal')>> some of the Employee Improvements available through being a partner company.
<<case 3>>
Employee has been given the opportunity of reconciliation with <<=setup.getNpcName('npc_nintendolls', 'formal')>> after their prior failures in managing Nintendolls data.
<<case 4>>
Employee has attempted reconciliation with <<=setup.getNpcName('npc_nintendolls', 'formal')>> after their prior failures in managing Nintendolls data.
<<case 5>>
Employee has continued the process of reconciliation with <<=setup.getNpcName('npc_nintendolls', 'formal')>> after their prior failures in managing Nintendolls data.
<<case 6>>
Employee has enthusiastically assisted <<=setup.getNpcName('npc_nintendolls', 'formal')>> in implementing Social Interaction Service Syndicate Inc. procedures against their own staff.
<<default>>
ERROR: unexpected npc_nintendolls.stage <<set $npc_nintendolls.stage>>
<</switch>>
<br>
<</if>>
<br>
<</if>>
<<if $npc_futa.stage || $npc_hucow.stage || $npc_sexdoll.stage || $npc_sissy_secretary.stage || $npc_pr_sissy.stage>>
Peer Atta-Girls:<br>
<<if $npc_futa.stage>>
<<switch $npc_futa.stage>>
<<case 1>>
Employee encountered and encourage a shy coworker, <<=setup.getNpcName('npc_futa', 'full')>>.
<<case 2>>
Employee further encouraged a developing coworker, <<=setup.getNpcName('npc_futa', 'full')>>.
<<case 3>>
Employee was credited for their ongoing role in <<=ps(setup.getNpcName('npc_futa', 'full'))>> professional growth.
<<case 4>>
Employee bent over to assist <<=ps(setup.getNpcName('npc_futa', 'full'))>> ongoing development.
<<case 5>>
Employee assisted <<=setup.getNpcName('npc_futa', 'full')>> with a medical issue.
<<default>>
ERROR: unexpected npc_futa.stage <<set $npc_futa.stage>>
<</switch>>
<br>
<</if>>
<<if $npc_hucow.stage>>
<<switch $npc_hucow.stage>>
<<case 1>>
Employee encountered a new lab-worker, <<=setup.getNpcName('npc_hucow', 'full')>>.
<<case 2>>
Employee met a developing lab-worker, <<=setup.getNpcName('npc_hucow', 'full')>>.
<<case 3>>
Employee witnessed <<=ps(setup.getNpcName('npc_hucow', 'full'))>> continuing development.
<<case 4>>
Employee saw the fruits of <<=ps(setup.getNpcName('npc_hucow', 'full'))>> ongoing scientific developments.
<<case 5>>
Employee assisted <<=setup.getNpcName('npc_hucow', 'full')>> with a medical issue.
<<default>>
ERROR: unexpected npc_hucow.stage <<set $npc_hucow.stage>>
<</switch>>
<br>
<</if>>
<<if $npc_sexdoll.stage>>
<<switch $npc_sexdoll.stage>>
<<case 1>>
Employee encouraged a fellow new hire, <<=setup.getNpcName('npc_sexdoll', 'full')>>.
<<case 2>>
Employee supported <<=ps(setup.getNpcName('npc_sexdoll', 'full'))>> professional development.
<<case 3>>
Employee continued to support <<=ps(setup.getNpcName('npc_sexdoll', 'full'))>> ongoing professional development.
<<case 4>>
Employee commiserated with <<=setup.getNpcName('npc_sexdoll', 'full')>> on their rapid professional development.
<<case 5>>
Employee assisted <<=setup.getNpcName('npc_sexdoll', 'full')>> with a medical issue.
<<default>>
ERROR: unexpected npc_sexdoll.stage <<set $npc_sexdoll.stage>>
<</switch>>
<br>
<</if>>
<<if $npc_sissy_secretary.stage>>
<<switch $npc_sissy_secretary.stage>>
<<case 1>>
Employee met a motivated peer, <<=setup.getNpcName('npc_sissy_secretary', 'full')>>.
<<case 2>>
Employee learned of <<=ps(setup.getNpcName('npc_sissy_secretary', 'full'))>> clever approach to professional advancement.
<<case 3>>
Employee met <<=setup.getNpcName('npc_sissy_secretary', 'full')>> on her way to practice her professional habits in her private life.
<<case 4>>
<<if State.hasPlayed("event_coworker_sissy_secretary_3_slut_4")>>
Employee exceeded <<=ps(setup.getNpcName('npc_sissy_secretary', 'full'))>> efforts at encouraging employee morale.
<<elseif State.hasPlayed("event_coworker_sissy_secretary_3_slut_1")>>
Employee assisted <<=setup.getNpcName('npc_sissy_secretary', 'full')>> encouraging employee morale.
<<else>>
Employee saw <<=setup.getNpcName('npc_sissy_secretary', 'full')>> encouraging employee morale.
<</if>>
<<case 5>>
Employee assisted <<=setup.getNpcName('npc_sissy_secretary', 'full')>> with a medical issue.
<<default>>
ERROR: unexpected npc_sissy_secretary.stage <<set $npc_sissy_secretary.stage>>
<</switch>>
<br>
<</if>>
<<if $npc_pr_sissy.stage>>
<<switch $npc_pr_sissy.stage>>
<<case 1>>
Employee met a member of the company's PR team, <<=setup.getNpcName('npc_pr_sissy', 'formal')>>.
<<case 2>>
Employee listened to advice from a rising star of the company's PR team, <<=setup.getNpcName('npc_pr_sissy', 'formal')>>.
<<case 3>>
Employee joined a member of the PR team, <<=setup.getNpcName('npc_pr_sissy', 'formal')>> on a tour of a Product Test Lab.
<<case 4>>
<<if $npc_pr_sissy.flags.breast.piercing>>
Employee joined <<=setup.getNpcName('npc_pr_sissy', 'formal')>> in testing and enhancing her new augmentations.
<<elseif $npc_pr_sissy.flags.breast.debut>>
Employee joined <<=setup.getNpcName('npc_pr_sissy', 'formal')>> in testing her new augmentations.
<<else>>
Employee witnessed <<=ps(setup.getNpcName('npc_pr_sissy', 'formal'))>> new PR-enhancing augmentations.
<</if>>
<<case 5>>
Employee assisted <<=setup.getNpcName('npc_pr_sissy', 'formal')>> in filming a PR video.
<<default>>
ERROR: unexpected npc_pr_sissy.stage <<set $npc_pr_sissy.stage>>
<</switch>>
<br>
<</if>>
<br>
<</if>>
[<<link "Main Menu.">><<=Engine.play("room_employee_tracking", true)>><</link>>]<br>
[<<moveTo $scene.returnFromEmployee "Close application and return to your desk." 0>>]
</div>/*#
#desc: job info
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Employee Portal">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
Welcome <<=setup.getSecretaryTitle()>> <<=$player.last_name>>!<br>
<br>
[<<link "Check work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if false>><<moveTo "room_secretary_style">><</if>>
[<<link "SMART <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> Developmental Profile.">><<=Engine.play("room_secretary_style", true)>><</link>>]<br>
<<if $npc_manager.stage >= 3>>
[<<moveTo "event_hr_manual_1" "HR Training." 0>>]<br>
<<else>>
[@@.link_locked;HR policy assessments are only available to full-time, non-probationary employees.@@]<br>
<</if>>
<<if $npc_work_doctor.flags.nurse_available && !State.hasPlayed('event_betray_work_doctor_7')>>
[<<moveTo "event_work_doctor_schedule_1" 'Lookup <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> schedule.' 60>>]<br>
<</if>>
<<if State.hasPlayed("event_rachel_9001_intro_6") && !State.hasPlayed("event_rachel_9001_pr_sissy_3")>>
[<<moveTo "event_rachel_9001_pr_sissy_1" 'Contact <<=setup.getNpcName("npc_pr_sissy","first")>> about <<=setup.getNpcName("npc_rachel","first")>>.' 180>>]<br>
<</if>>
<br>
[<<moveTo $scene.returnFromEmployee "Close application and return to your desk." 0>>]
</div>/*#
#desc: set first goal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Having reviewed the new SMART <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> Developmental Profile you consider what sort of goals you should set for the remainder of your probation period. Even after working here this long this whole <<if $fetish.sissy>>SISSI <</if>>Secretary position is strange... doubly so given your intense superior.<br>
<br>
[<<moveTo "event_work_goal_1_2" "Being a better typist? Yeah, that seems reasonable for a Secretary..." 60 "<<set $scene.goal='type'>>">>]<br>
[<<moveTo "event_work_goal_1_2" "You work in a representative, social-facing position... maybe you could practice your public speaking?" 60 "<<set $scene.goal='oral'>>">>]<br>
[<<moveTo "event_work_goal_1_2" 'Ask <<=setup.getNpcName("npc_manager","formal")>> what she thinks you should work on.' 60 "<<set $scene.goal='help'>>">>]
</div>/*#
#desc: tell manager first goal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You head into the inner office and
<<switch $scene.goal>>
<<case 'type'>>
inform <<=setup.getNpcName("npc_manager","formal")>> that you have set an initial professional goal.<br>
<br>
"@@.npc_manager;Wonderful!@@" She says with a smile as she turns to her computer. "@@.npc_manager;Let me just bring this up... hmm, typing... certainly a useful skill... but a bit, shall we say... unambitious. You know what high expectations I have of you and this... well, it is a bit conservative. How about we pump this up a little? Honing your typing ability is valuable, of course, but it is but one mode of communication. You work in a representative position, remember, so some oral abilities would be just the ticket to increasing your value and versatility as you continue to work and develop under me.@@"
<<case 'oral'>>
inform <<=setup.getNpcName("npc_manager","formal")>> that you have set an initial professional goal.<br>
<br>
"@@.npc_manager;Wonderful!@@" She says with a smile as she turns to her computer. "@@.npc_manager;Let me just bring this up... hmm, public speaking? That is, perhaps, getting a bit ahead of yourself. While you do work a representative position I do not see any major presentations in your immediate future. My requirements for you are a bit more of the... private nature. But I cannot fault the impetus, or the ambition, let us, instead, tweak things to remain in spirit and set a goal of improving your oral acumen and, while we are at it, well... typing abilities is quite fundamental to a Secretary, brushing up on yours would be an excellent thing to progress on while you are in your probationary period.@@"
<<case 'help'>>
politely ask <<=setup.getNpcName("npc_manager","formal")>> what sort of goal she would advise you to set?<br>
<br>
She smiles, clearly appreciative that you would seek her advice. "@@.npc_manager;Yes... I forget, sometimes, that you so recently changed your career path. Let us keep things simple. Typing skills never goes out of style for a Secretary, and, just as important as the written word may be, well... a <<if $fetish.sissy>>SISSI <</if>>Secretary should be adept at oral matters, as well. Develop your typing skills and progress your oral aptitude... that would be a perfect pairing to have you on your way to successfully passing out of this probation and becoming my proper full-time <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
She smiles, and you feel something between a shiver and a thrill run down your spine. "@@.npc_manager;I shall make the arrangements. Very well done. Two laudable goals, and a demonstration of humility in asking for advice. Yes, you really are on the fast-track to a successful career under me.@@"
<<default>>
ERROR: unexpected scene.goal <<=$scene.goal>>
<</switch>>
<br><br>
You aren't entirely certain what you just signed up for... but <<=setup.getNpcName("npc_manager","formal")>> is already turning back to her work and you take the signal to beat a retreat back to your desk.<br>
<br>
[<<moveTo "room_office_after_work" "Leave her office." 120>>]
</div>/*#
#desc: strict anal: president of nintendolls is going to fuck your ass
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_nintendolls") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage < 3>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Did you think that little dildo practice exercise was purely for your pleasure? No, it was to start opening you up so that you would be ready to assume additional <<if $fetish.sissy>>SISSI <</if>>Secretary duties. Now stop being a brat, bend over, and show <<=setup.getNpcName("npc_nintendolls","formal")>> some apology with that <<if $fetish.sissy>>sissy <</if>>fuck-hole of yours.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Did you think that my pegging your hot ass was just a whim? No, as a <<if $fetish.sissy>>SISSI <</if>>Secretary you, and all of your holes, exist to serve. Now stop being a brat, bend over, and show <<=setup.getNpcName("npc_nintendolls","formal")>> some apology with that <<if $fetish.sissy>>sissy <</if>>fuck-hole of yours.@@"
<</if>>
<br><br>
[<<moveTo "event_secretary_style_anal_strict_2" "Apologise and present your rear." 600 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_secretary_style_anal_strict_2" "No, that's too much!" 600 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: strict anal: president of nintendolls fucks your ass
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_nintendolls.penis_size 'very' $SEEN_FRIEND>>
<<set $scene.first = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_nintendolls">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<if $scene.obey>>
<<set $player.sec_style.sex.anal = "forced">>
<<else>>
<<set $player.sec_style.sex.anal = "strict">>
<</if>>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_nintendolls.fem>>
<<if $scene.obey>>
<<set $player.sec_style.sex.sex_woman = "forced">>
<<else>>
<<set $player.sec_style.sex.sex_woman = "strict">>
<</if>>
<<elseif !$player.sec_style.sex.sex_man && !$npc_nintendolls.fem>>
<<if $scene.obey>>
<<set $player.sec_style.sex.sex_man = "forced">>
<<else>>
<<set $player.sec_style.sex.sex_man = "strict">>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_nintendolls") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Under the withering gaze of your disapproving <<if $npc_manager.stage >= 3>><<=setup.getNpcName("npc_manager","title")>><<else>>boss<</if>>, as well as <<=setup.getNpcName("npc_nintendolls","formal")>> you bend over.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> places a hand on your back as if to remind you to stay in position as
<<if $scene.removePlug>>
<<=setup.getNpcName("npc_nintendolls","formal")>> roughly removes your plug and
<<else>>
<<he npc_nintendolls>>
<</if>>
<<else>>
You try to refuse, but soon <<=setup.getNpcName("npc_manager","formal")>> is bending your over the desk, her strength implacable as she pins you down for <<=setup.getNpcName("npc_nintendolls","formal")>> to take you. <<=setup.getNpcName("npc_nintendolls","formal")>> digging <<his npc_nintendolls>> fingers into your rear as <<he npc_nintendolls>> gets into position is the only foreplay you get before <<he npc_nintendolls>>
<<if $scene.removePlug>>
roughly removes your plug and
<</if>>
<</if>>
shoves <<his npc_nintendolls>> cock into your ass.<br>
<br>
<<if setup.getTotalValue("anal") > 10>>
This may be your first flesh and blood cock... but it is far smaller than what you've practiced with, and you take <<=setup.getNpcName("npc_nintendolls","formal")>> without issue.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Your prior experience is insufficient to have prepared you for <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> thick cock, and you groan in pain as <<he npc_nintendolls>> forces <<his npc_nintendolls>> way deeper.
<<else>>
You feel like you're being split apart by <<his npc_nintendolls>> thick cock, but your screams fall on deaf ears as <<he npc_nintendolls>> pushes deeper.
<</if>>
<</if>>
<<=setup.getNpcName("npc_nintendolls","formal")>> begins to establish a rhythm as <<=setup.getNpcName("npc_manager","formal")>> leans over to taunt you... though whether her words are for your benefit, or <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> you are not quite certain.<br>
<br>
"@@.npc_manager;That is right you <<if $fetish.sissy>>SISSI <</if>>slut. You better get used to having a hot cock in your ass, because, at the end of the day, all you really are is a <<if $player.body_ref.vagina>>set<<else>>pair<</if>> of holes. Your job description is to do whatever I command, but, most of all, you are here to offer yourself and provide pleasure, to beg to be used, and then thank the client afterwards...@@"<br>
<br>
You groan as <<=setup.getNpcName("npc_nintendolls","formal")>> slaps your ass and increases <<his npc_nintendolls>> pace. "@@.npc_nintendolls;You heard the woman! Tell me how you feel about me breaking in this <<if $fetish.sissy>>sissy <</if>>fuck-hole.@@"<br>
<br>
[<<moveTo "event_secretary_style_anal_strict_3" "Thank <<him npc_nintendolls>> for fucking you." 600 "<<set $scene.thank=true>>">>]<br>
[<<moveTo "event_secretary_style_anal_strict_3" "Beg him to stop." 600 "<<set $scene.thank=false>>">>]
</div>/*#
#desc: strict anal: president of nintendolls finishes fucking your ass
#status: RELEASED 0.9.0.0
#ignore_spell: shh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_nintendolls") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.thank>>
Through tears you moan a thanks, your reward <<=setup.getNpcName("npc_nintendolls","formal")>> slamming
<<else>>
You beg for mercy... but your tearful cries only egg <<=setup.getNpcName("npc_nintendolls","formal")>> on further as he slams
<</if>>
to a new depth in your ass as <<he npc_nintendolls>>. <<His npc_nintendolls>> fingers digging into your hips you feel <<him npc_nintendolls>> cum, <<if $fetish.cum>>thick <<getWordCum>> squirting into you<<else>><<his npc_nintendolls>> satisfied grunt serving<</if>> to cap off your "first time." <br>
<br>
"@@.npc_manager;Shh, embrace it,@@" <<=setup.getNpcName("npc_manager","formal")>> whispers while stroking your hair. "@@.npc_manager;What you are feeling right now is your ultimate purpose, to offer your body up for your partner's ultimate pleasure. If you are smart you will learn to enjoy it... though it hardly matters if you do not.@@"<br>
<br>
You whimper as <<=setup.getNpcName("npc_nintendolls","formal")>> pulls out, wiping <<his npc_nintendolls>> cock on your clothes before following <<=setup.getNpcName("npc_manager","formal")>> into the inner office and leaving you to recover and eventually slump back into your chair.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div><<include "checkSchoolReady">>
<<include "addTypingEvent">>
<<setThreshold 'anal' 'other_anal' "first_time">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_1'
0
'event_psychiatrist_session_anal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_anal'
0
'theme_church_confession_anal'
true
>>/*#
#desc: ballet heels strict punishment
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'daily_evaluation_clothes'>>
<<if setup.checkItemTypeTag('shoes', ['gym'])>>
<<set $scene.shoe_type = "sneaker">>
<<elseif setup.checkItemTypeTag('shoes', ['male'])>>
<<set $scene.shoe_type = "male">>
<<elseif !setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>
<<set $scene.shoe_type = "flats">>
<</if>>
<<addItem "ballet_boots_pink">>
<<wearItem "ballet_boots_pink" true>>
<<addItem "armbinder_black">>
<<wearItem "armbinder_black" true>>
<<setThreshold 'heels' 'wearing_heels' 'expert_force'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> waits for you to dress, watching you in annoyance out of the corner of her eye as she sends off a message with her phone. "@@.npc_manager;<<=setup.getNpcName("npc_discipline","formal")>> is expecting you. Now hurry up to her department, after all, with those shoes you should be able to move quickly, hmm?@@"<br>
<br>
Her comment, combined with your un-boosted height has you feeling particularly small and vulnerable and you nod, quickly riding the elevator up to <<=ps(setup.getNpcName("npc_discipline","formal"))>> domain on Floor 169. <<=setup.getNpcName("npc_discipline","formal")>> herself is there to meet you, leading you past several other unfortunate employees in the midst of punishment before arriving at a treadmill where one of her assistants begins strapping you in to a suspension harness, complete with restrictive armbinder.<br>
<br>
"@@.npc_discipline;Improper footwear... you know, when <<=setup.getNpcName("npc_manager","other")>> told me you were coming I was thinking you had merely tried to skirt things by wearing one centimetre mules or something equally dull... but those? <<switch $scene.shoe_type>><<case "sneakers">>Wearing sneakers to a professional job? That is just beyond the pale.<<case "male">>Men's shoes are barely suitable for those of that identity, for one such as yourself? Utterly inappropriate<<case "flats">>Well... I suppose you will still be wearing ballet for this lesson... but of a far superior style<<default>>ERROR: unexpected scene.shoe_type <<=$scene.shoe_type>><</switch>>.@@"<br>
<br>
Perhaps unsurprisingly, the assistant follows up tightening your straps by ducking down and swapping your shoes for steep ballet boots. Where you had been previously dangling barely able to reach the treadmill you are now wobbling on the new shoes as the task ahead immediately becomes clear.<br>
<br>
The treadmill lurches into motion and you almost fall, forced to step one pointed foot in front of the other, your toes screaming in pain with each placement of weight.<br>
<br>
"@@.npc_discipline;Very good,@@" <<=setup.getNpcName("npc_discipline","formal")>> states with a nod. "@@.npc_discipline;Note that the harness is merely for safety — should you attempt to rely on it my assistant will be quick with the switch to set you back on track. Now, enjoy your walk!@@"<br>
<br>
To accentuate the point there is a quick crack as the assistant lays one into your rear and you reflexively quicken your pace... even as the treadmill means that you cannot escape.<br>
<br>
[<<moveTo "event_secretary_style_ballet_heels_strict_2" "Walk." 3600>>]
</div>/*#
#desc: ballet heels strict finished
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.ballet>>
<<set $player.sec_style.clothing.ballet = "strict">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png">>
<div id="invframe" class="scrolltext">
You walk until your calves ache, only for things to become more challenging yet as your gait is shortened by ankle chains, and then eliminated entirely as your ankles are bound together and you are forced to hop.<br>
<br>
The whole time the assistant is there to punish the slightest misstep, which turns into close to a thwack per hop as you all but stumble forward for the final awkward "sprint." <br>
<br>
By the end you hang panting in your bonds when <<=setup.getNpcName("npc_discipline","formal")>> finally returns to let you down. Without even the chance to change out of the ballet boots you are sent back to the office, the ache in your legs having you tempted to crawl your way down the hallway... gratefully flopping into your chair only to yelp in pain as you are reminded of how much punishment your bottom has seen.<br>
<br>
You wince and gingerly attempt to find the least uncomfortable position as you turn to your work.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Get to work..." 300 "<<removeItem 'armbinder_black' true>><<deleteItem 'armbinder_black'>><<set $scene.seriousoffense=false>>">>]
</div>/*#
#desc: ask about ballet heels: enthusiast intro
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.ballet>>
<<set $player.sec_style.clothing.ballet = "enthusiast">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
As excited as you are for your new bed heels, you ask <<=setup.getNpcName("npc_shoestore_manager","first")>> about things to wear outside the bedroom?<br>
<br>
She gets a twinkle in her eye as she smiles. "@@.npc_shoestore_manager;Such enthusiasm! I love it! Tell you what, you wear those bed heels for the next week and come back showing you have mastered them and I will show you the pinnacle of steep footwear.@@"<br>
<br>
You promise to do exactly that, even more excited for your high-heeled future.<br>
<br>
[<<moveTo "room_mall_shoe_store" "Thank her and walk away." 120>>]
</div>/*#
#desc: corporate retreat finale: obedient heels
#status: FINISHED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem $scene.heelsId true>>
<<addItem $scene.leashId>>
<<wearItem $scene.leashId true>>
<<addItem 'ankle_cuffs_steel'>>
<<wearItem 'ankle_cuffs_steel' true>>
<<addItem 'thigh_cuffs_steel'>>
<<wearItem 'thigh_cuffs_steel' true>>
<<if !$player.sec_style.clothing.ballet>>
<<set $player.sec_style.clothing.ballet = "obedient">>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You obediently put on the jaw-dropping footwear, wincing slightly as your toes are crushed under your full weight, but encouraged to stand tall and concentrate on your balance thanks to <<=ps(setup.getNpcName("npc_manager","formal"))>> prideful smile of approval.<br>
<br>
"@@.npc_manager;Very nice, seeing you like that almost tempts me to raise your uniform requirement beyond mere heels... but that might prove detrimental to your performance, if you are not a true expert at heels.@@" She clips a leash to your collar, and then offers you an elbow. You take it, grateful on multiple accounts. "@@.npc_manager;Come. We have a party to attend.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_party_3" "To the party..." 300>>]
</div>/*#
#desc: corporate retreat finale: obedient heels
#status: FINISHED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem $scene.heelsId true>>
<<addItem $scene.leashId>>
<<wearItem $scene.leashId true>>
<<addItem 'ankle_cuffs_steel'>>
<<wearItem 'ankle_cuffs_steel' true>>
<<addItem 'thigh_cuffs_steel'>>
<<wearItem 'thigh_cuffs_steel' true>>
<<if !$player.sec_style.clothing.ballet>>
<<set $player.sec_style.clothing.ballet = "forced">>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You balk at the sky-high boots that match the outfit and <<=setup.getNpcName("npc_manager","formal")>> mood instantly shifts.<br>
<br>
"@@.npc_manager;Have you forgotten the most basic of your duties? Being a <<if $fetish.sissy>>SISSI <</if>>Secretary is a representative position. Why do you think heels are part of your uniform? They elongate your legs, improve your posture and, of course, accentuate that lovely bottom of yours. Tonight is a particularly special occasion, thus, the standards must rise higher, and so, too, your heels. Now extend your toes. We are fast running out of time and I will not have your quibbles over your outfit cause us be late.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> may be on her knees, but there is no mistaking her as in anything other than total control of the situation as she holds your ankle so tight it almost hurts as she guides first one foot, then the other, into the towering footwear.<br>
<br>
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
You are more than practiced in heels, even such steepness as this proving to be well within your skills.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, "@@.npc_manager;and you were worried! You really were meant to walk in heels, now, come along!@@" She clips a leash to your collar and guides you forward as you mince nimbly atop your towering boots and she leads the way to dinner.
<<else>>
You had thought yourself relatively experienced in heels, but these? Your toes cry out from their squashed position as it takes most or your focus to remain balanced on nothing but toes and the thin stiletto heels of the ballet boots.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sniffs in mild disappointment as she helps steady you slightly, clipping a leash to your collar and pulling you forward, each step sending pain shooting up your calves as she leads the way to dinner.
<</if>>
<<else>>
Your toes scream in pain merely from the position, but <<=setup.getNpcName("npc_manager","formal")>> forces you to your feet, lending an arm as you teeter ungracefully.<br>
<br>
<<printThought "I really should have spent more time practicing...">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sniffs in annoyance as she helps steady you slightly, clipping a leash to your collar and pulling you helplessly forward, each step sending pain shooting up your calves as she leads the way to dinner.
<</if>><br>
<br>
[<<moveTo "event_corporate_retreat_party_3" "Follow her." 600>>]
</div>/*#
#desc: sexdoll mentions bimbo secretary work
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
Once again you run into <<=setup.getNpcName("npc_sexdoll","first")>> in the bathroom. She looks to have had quite the "hard" morning. Currently she is occupied busy bent forward towards the mirror as she fixes her makeup, a position that combines with her steep, stripper heels to cause her skirt to ride up. There's no mistaking <<if $fetish.cum>>the trail of cum leaking down her leg and <</if>>the massive anal plug peeking out from under her micro—short skirt.<br>
<br>
[<<moveTo "event_secretary_style_bimbo_secretary_enthusiast_2" "Working hard?" 120>>]
</div>/*#
#desc: sexdoll mentions bimbo secretary work
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
You make a working hard joke to <<=setup.getNpcName("npc_sexdoll","first")>> and she turns to look at you with a bimbo smile as she flutters her eyes.
<<if State.hasPlayed("room_office_sissy_secretary_work_bimbo")>>
"@@.npc_sexdoll;You know it, girlfriend! Keeping company morale up is a constant challenge, but a fun one!@@" She reaches behind to wiggle her plug. "@@.npc_sexdoll;Goddess, I got fucked so hard this morning... and my afternoon is double-booked solid!<<if $fetish.cum>> I actually decided to skip lunch — I wouldn't want to lose my figure by adding any calories on top of all the cum I've been guzzling!<</if>> Well I better get back to it, a <<if $fetish.sissy>>SISSI <</if>>Bimbo's work is never done, but I can't wait to get back to it!@@"<br>
<br>
She blows her reflection a parting kiss and struts out of the restroom, hips swaying enticingly with every step.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Continue." 60>>]
<<else>>
"@@.npc_sexdoll;So hard! Well, not ME, I'm, like, locked up, right? But those big, hard cocks that were pounding me all morning? Gawd! So good! I have served, like, a dozen employees, which is almost a personal record! And I must have done a good job, because a couple of them said to come by this afternoon for round two! I just love helping team morale!@@"<br>
<br>
[<<moveTo "event_secretary_style_bimbo_secretary_enthusiast_3" "That sounds fun! You'd love to come with her sometime." 120 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_secretary_style_bimbo_secretary_enthusiast_3" "Morale, sure..." 120 "<<set $scene.slut=false>>">>]
<</if>>
</div>/*#
#desc: sexdoll mentions bimbo secretary work
#status: RELEASED 0.9.0.0
#ignore_spell: aaaaanyway
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_enthusiast_bimbo'
6
'theme_manager_work_enthusiast_bimbo_1'
false
>>
<</if>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You gush along with <<=setup.getNpcName("npc_sexdoll","first")>> about how wonderful her job sounds.<br>
<br>
"@@.npc_sexdoll;Don't I know it! I can't believe I ever wanted to be anything besides a slutty <<if $fetish.sissy>>SISSI <</if>>corporate fuck—doll...@@" She scrunches up her face for a moment as if confused. "@@.npc_sexdoll;Not that, like, I can remember what it is that I wanted to be... but there's no way it could be as fun, or as important! As the hard cocks I'm sucking... I mean, hard work I'm doing now, well, I guess, like... both? Teehee, I get so ditzy when I don't have a cock in me! Aaaaanyway, you should totally talk to your owner about the company's public use <<if $fetish.sissy>>SISSI <</if>>Secretary program. Working bimbo, as we call it... well, it's just, like, the best!@@"<br>
<br>
You reply that you'll keep that in mind and wish
<<else>>
You
<</if>>
wish <<=setup.getNpcName("npc_sexdoll","first")>> luck in what sounds like a busy afternoon and she goes back to touching up her makeup as you continue on your way.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Continue." 60>>]
</div>/*#
#desc: late to work due to prostitution
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$daily.prostitutionPassout>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary">>
<<else>>
<<completeTask "manager_morning_inspection_task" $now true>>
<</if>>
<<set $daily.prostitutionPassout = false>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stumble into the office late and <<=setup.getNpcName("npc_manager","formal")>> glares at you. "@@.npc_manager;Well? Where have you been? I have told you many times before — punctuality is a pillar of society! What could have been so important for you to be LATE to work?@@"<br>
<br>
You explain that you slept through your alarm, but <<=setup.getNpcName("npc_manager","formal")>> isn't taking that as a sufficient explanation as she grills you further.<br>
<br>
"@@.npc_manager;Overslept? Well clearly you must have stayed up too late, yes? I can see it in your eyes, you clearly did not get enough sleep. So tell me, what were you up to into the wee hours on a work night to leave you tired and tardy for your very important duties as my <<if $fetish.sissy>>SISSI <</if>>Secretary?@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_late_work_prostitution_2" "Proudly explain passed out working a gloryhole..." 120 "<<set $scene.source='glory'>><<set $scene.brazen=true>>">>]<br>
<<else>>
[<<moveTo "event_late_work_prostitution_2" "Admit passed out working a gloryhole..." 120 "<<set $scene.source='glory'>><<set $scene.brazen=false>>">>]<br>
<</if>>
[<<moveTo "event_work_exhausted_first_2" "Say you couldn't get a proper night's sleep." 60 "<<set $scene.excuse=false>>">>]<br>
[<<moveTo "event_work_exhausted_first_2" "Make up an excuse." 60 "<<set $scene.excuse=true>>">>]
</div>/*#
#desc: late to work due to prostitution
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stumble into the office late and <<=setup.getNpcName("npc_manager","formal")>> glares at you. "@@.npc_manager;Well? Where have you been? I have told you many times before — punctuality is a pillar of society! What could have been so important for you to be LATE to work?@@"<br>
<br>
You explain that you slept through your alarm, but <<=setup.getNpcName("npc_manager","formal")>> isn't taking that as a sufficient explanation as she grills you further.<br>
<br>
"@@.npc_manager;Overslept? Well clearly you must have stayed up too late, yes? I can see it in your eyes, you clearly did not get enough sleep. So tell me, what were you up to into the wee hours on a work night to leave you tired and tardy for your very important duties as my <<if $fetish.sissy>>SISSI <</if>>Secretary?@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
[<<moveTo "event_late_work_prostitution_2" "Proudly explain you were up late trying to win a prostitution competition." 120 "<<set $scene.source='comp'>><<set $scene.brazen=true>>">>]<br>
<<else>>
[<<moveTo "event_late_work_prostitution_2" "Confess you were up late for a prostitution competition." 120 "<<set $scene.source='comp'>><<set $scene.brazen=false>>">>]<br>
<</if>>
[<<moveTo "event_work_exhausted_first_2" "Say you couldn't get a proper night's sleep." 60 "<<set $scene.excuse=false>>">>]<br>
[<<moveTo "event_work_exhausted_first_2" "Make up an excuse." 60 "<<set $scene.excuse=true>>">>]
</div>/*#
#desc: late to work due to prostitution explanation
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'daily_evaluation_clothes'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.source>>
<<case "glory">>
<<if $scene.brazen>>
You proudly explain how you were sucking cock in the Usual Place's gloryhole until you passed out... and that's why you ended up being late to work.
<<else>>
You humiliatingly admit the truth — that you sucked so much cock in the Usual Place's gloryhole that you passed out... and that's why you ended up being late to work.
<</if>>
<<case "comp">>
<<if $scene.brazen>>
You proudly explain how you were competing to prove who was the best whore... and that you pushed yourself past the point of exhaustion, leading to you being late to work.
<<else>>
You admit the depraved truth, that you passed out trying to prove who was the biggest whore.
<</if>>
<<default>>
ERROR: unexpected scene.source <<=$scene.source>>
<</switch>>
<br><br>
<<if $scene.brazen>>
If you thought to shock <<=setup.getNpcName("npc_manager","formal")>> with your brazenness, you are shockingly mistaken as she merely nods
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> barely reacts to your debauched admission, merely nodding in understanding
<</if>>
as if you had mentioned being kept late by a neighbor's party or something equally mundane. "@@.npc_manager;I see<<if $scene.source=='comp'>>. From your phrasing... you did not even win? Very disappointing. Well<<else>> well<</if>>, if that is the sort of thing you are interested in doing... how about you do so at work, rather than outside where your extra effort costs you sleep and performance at your real job?@@"<br>
<br>
[<<moveTo "event_secretary_style_bimbo_secretary_money_1" "The company is willing to pay you to be a prostitute?" 120>>]<br>
[<<moveTo "event_secretary_style_bimbo_secretary_obedient_1" 'If that would be to your <<=ps(setup.getNpcName("npc_manager","title"))>> liking...' 120>>]<br>
[<<moveTo "event_secretary_style_bimbo_secretary_strict_1" "Fuck no! And fuck her for pestering you about things outside of work!" 120>>]
[<<moveTo "event_late_work_prostitution_3" "No... you're happy with your current position." 120>>]
</div>/*#
#desc: obediently confess to prostitution
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.submission.bimbo_secretary>>
<<set $player.sec_style.submission.bimbo_secretary = "obedient">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reply that, if <<=setup.getNpcName("npc_manager","formal")>> wanted to pimp you out, you would, of course, do your best to obey her.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, which sets your heart aflutter with submissive adoration.<br>
<br>
"@@.npc_manager;I would not use quite that vulgar of a phrasing... but yes, if you are ready to serve more fully in such a way... there are certain opportunities. I will sign you up for the appropriate training.@@"<br>
<br>
You wonder what "training" could be involved... and what that training will turn out to be for...<br>
<br>
<<printThought "Knowing this company...">><br>
<br>
Your tardiness seemingly forgotten, <<=setup.getNpcName("npc_manager","formal")>> proceeds to your inspection.<br>
<br>
<<set $scene.directInspection=true>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2_2" "Begin inspection." 60>>]
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Begin inspection." 60>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_inspect" "Begin inspection." 60>>]
<<case 5>>
<<if $npc_manager.flags.evil == 1>>
[<<moveTo "event_manager_daily_check_stage_5_evil" "Begin inspection." 60>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_5" "Begin inspection." 60>>]
<</if>>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
</div>/*#
#desc: money confess to prostitution
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if the company would be willing to pay for you to be a prostitute?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grins. "@@.npc_manager;Pay? We already pay you a salary and if you were to read your contract, I believe you would see that your potential work responsibilities are QUITE expansive... but fine, I will play your little game. If you are willing to take on some additional training to expand your potential array of duties... I would be willing to raise your base pay... thirty credits a week?@@"<br>
<br>
<<printThought "Thirty credits? That would make me not just a whore... but a cheap whore...">><br>
<br>
[<<moveTo "event_secretary_style_bimbo_secretary_money_2" "Accept her deal." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_bimbo_secretary_money_2" "You have enough responsibilities as it is." 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: money confess to prostitution agree bimbo secretary
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.submission.bimbo_secretary>>
<<set $player.sec_style.submission.bimbo_secretary = "money">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<set $player.work.payment += 30>>
<</if>>
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName("npc_manager","formal"))>> offer and she smiles. "@@.npc_manager;Lovely. You really are so profit-motivated, though I suppose that does make you an easy employee to deal with... no matter, I will attend to signing you up for the appropriate training and increment your pay, of course.@@"<br>
<br>
Your tardiness seemingly forgotten,
<<else>>
You decline <<=ps(setup.getNpcName("npc_manager","formal"))>> offer and she shrugs. "@@.npc_manager;Very well, but I will remind you to keep your outside of work activities in check, less they negatively impact your primary duties as they have this morning.@@"<br>
<br>
With a nod,
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> proceeds to your inspection.<br>
<br>
<<set $scene.directInspection=true>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2_2" "Begin inspection." 60>>]
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Begin inspection." 60>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_inspect" "Begin inspection." 60>>]
<<case 5>>
<<if $npc_manager.flags.evil == 1>>
[<<moveTo "event_manager_daily_check_stage_5_evil" "Begin inspection." 60>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_5" "Begin inspection." 60>>]
<</if>>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
</div>/*#
#desc: strict onramp to bimbo secretary
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addWorkEvent 'work_bimbo_intro'>>
<<if !$player.sec_style.submission.bimbo_secretary>>
<<set $player.sec_style.submission.bimbo_secretary = "strict">>
<</if>>
<<useClothSetPush 'daily_evaluation_clothes'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You go off on your <<=setup.getNpcName("npc_manager","title")>> explaining that what you do outside of work is YOUR business and she can deal with you being a couple minutes late to work without crawling up your ass about it.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> takes your abuse without so much as flinching, waiting until you've run out of steam before very slowly adjusting her glasses.<br>
<br>
"@@.npc_manager;Well. It would seem that your little... outside of work extra-curriculars have not just made you late, but filled your head with fool notions about your responsibilities. You are employed at this company as my personal <<if $fetish.sissy>>SISSI <</if>>Secretary. That is your number one responsibility in all matters. While you remain free to go home and occupy your time outside of work as you see fit... that is only if your work performance remains at an acceptable level. Any activity that would harm said performance, well... the company demands sacrifices of us all, and if you do not wish to be converted to a full-time on-premises employee whose freedom extends no further than the four walls of your corporate habitation cell...@@" She trails off, leaving you to imagine what a life as a 24/7 literal, rather than merely figurative, slave of the company would be like. "@@.npc_manager;Still, we can make accommodations to an employee's unique skillset. If you are so intent on whoring yourself out for a few credits, well... I believe the correct choice would be to enrol you in some additional training that will open up your work opportunities to tasks perhaps more appropriate to one of your proclivities.@@"<br>
<br>
Your tardiness seemingly forgotten, <<=setup.getNpcName("npc_manager","formal")>> proceeds to your inspection.<br>
<br>
<<set $scene.directInspection=true>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2_2" "Begin inspection." 60>>]
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Begin inspection." 60>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_inspect" "Begin inspection." 60>>]
<<case 5>>
<<if $npc_manager.flags.evil == 1>>
[<<moveTo "event_manager_daily_check_stage_5_evil" "Begin inspection." 60>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_5" "Begin inspection." 60>>]
<</if>>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
</div>/*#
#desc: avoid prostitution intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reply that you're actually fine with your current work situation.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>>
<<if $npc_manager.flags.cruel || $npc_manager.anger > $npc_manager.affection>>
sniffs in annoyance. "@@.npc_manager;And why should your opinion matter? No, we are going to address this situation right now. If you are willing to sell yourself on the street, well... your first duty remains to the company.@@"<br>
<br>
[<<moveTo "event_secretary_style_bimbo_secretary_money_1" "The company is willing to pay you to be a prostitute?" 120>>]<br>
[<<moveTo "event_secretary_style_bimbo_secretary_obedient_1" 'If that would be to your <<=ps(setup.getNpcName("npc_manager","title"))>> liking...' 120>>]<br>
[<<moveTo "event_secretary_style_bimbo_secretary_strict_1" "Fuck no! And fuck her for pestering you about things outside of work!" 120>>]
<<else>>
nods. "@@.npc_manager;Well please endeavour not to let such extracurricular activities interfere with your primary task of working for me. I know the excitement and the quick credits can seem alluring... but in the long run the heights of a corporate career can raise you so much higher.@@"<br>
<br>
<<set $scene.directInspection=true>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2_2" "Begin inspection." 60>>]
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Begin inspection." 60>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_inspect" "Begin inspection." 60>>]
<<case 5>>
<<if $npc_manager.flags.evil == 1>>
[<<moveTo "event_manager_daily_check_stage_5_evil" "Begin inspection." 60>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_5" "Begin inspection." 60>>]
<</if>>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: start to shave your body
#status: RELEASED 0.9.0.0
#ignore_spell: tblockers
#*/
<<include enterroom>>
<<set $player.location to "Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
You take a deep breath and draw <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> razor up your calf. It glides relatively smoothly, leaving bare flesh in its wake, you get an odd tingle<<if $player.sec_style.body.tblock>> your body hair was already seeming to thin out and soften since you went on tblockers, but this is even better<</if>>. You run a finger along the patch of smoothness and smile, it feels good, and you reach for the razor once again.<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_shave_2" "Continue." 1800>>]
</div>/*#
#desc: finish shaving your body
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_bodyhair'
1
'theme_secretary_style_bodyhair_enthusiast_1'
false
>>
<<set $player.body.bodyhair = 0>>
<</if>>
<<set $player.location to "Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
Once you've started you can't seem to stop, working your way up each leg, then through the crotch region and up your belly, finishing off with your armpits and then making a somewhat challenging effort to take care of your butt-crack.<br>
<br>
With each short strand of body hair you sever you feel a tingle of excitement, your skin oddly refreshed, sensitive, smooth... though you shiver just a touch as the air feels suddenly cooler.<br>
<br>
Inspection of your work has you assessing things as a success... but not a complete one. Your knees were a challenge that led to you getting a few nicks, and there's some ultra-fine hair that the razor can't seem to deal with, even on multiple passes.<br>
<br>
<<printThought "Hmm, this is nice... but that was a lot of work... I wonder if there's a more permanent solution?">><br>
<br>
You enjoy running your hands across your smooth skin as you wonder if some help might be in order?<br>
<br>
<<if $phoneList.includes('npc_technician')>>
<<if $currentTasks.hasOwnProperty("technician_cafe_1")>>
<<if $currentTasks.technician_cafe_1.finished>>
<<printThought 'Maybe <<=setup.getNpcName("npc_technician","first")>> would have some advice? I should call her to meet up again... or maybe I could check out the mall, the salon has to offer a service for this, right?'>>
<<else>>
<<printThought 'Maybe <<=setup.getNpcName("npc_technician","first")>> would have some advice? I should ask when I see her for coffee.'>>
<</if>>
<<else>>
<<printThought 'Maybe <<=setup.getNpcName("npc_technician","first")>> would have some advice? I should call her up sometime to meet... or maybe I could check out the mall, the salon has to offer a service for this, right?'>>
<</if>>
<<elseif setup.hasOwnProperty("card_technician")>>
<<printThought 'Maybe <<=setup.getNpcName("npc_technician","first")>> would have some advice? I swear I had her number around here somewhere... or maybe I could check out the mall, the salon has to offer a service for this, right?'>>
<<else>>
<<printThought 'Maybe I should check out the mall, the salon has to offer a service for this, right?'>>
<</if>>
<br><br>
[<<moveTo "room_bathroom" "Back to your bathroom." 30>>]
</div>/*#
#desc: ask technician for body shaving advise
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes = 0>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.body.hair_body>>
You mention how much like no longer having body-hair to <<=setup.getNpcName("npc_technician","first")>> and she smiles. "@@.npc_technician;Smooth is great, isn't it?@@"
<<else>>
You mention shaving your body-hair to <<=setup.getNpcName("npc_technician","first")>> and she smiles. "@@.npc_technician;I thought I noticed something... may I?@@" She asks and you extend a leg on the side of the table for her to admire.<br>
<br>
"@@.npc_technician;Mmmm, yes,@@" she notes, running a hand along the outside of your thigh... "@@.npc_technician;smooth is good, but shaving is such high maintenance, cuts, bleh.@@" She looks up at you. "@@.npc_technician;Let me guess. You're talking to me because you're looking for a permanent solution. A way to be smooth and soft all the time, no shaving or waxing or whatnot required, is that right?@@"<br>
<br>
[<<moveTo "theme_secretary_style_bodyhair_enthusiast_2" "Yes, definitely!" 300>>]<br>
<</if>>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: technician offers bodyhair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You nod and <<=setup.getNpcName("npc_technician","first")>> smiles. "@@.npc_technician;I knew it... and I have just the solution. The salon here in the mall, well... they've got a top-of-the-line electrolysis machine, and the owner even offers discounts for <<if $player.flags.maidcafe.stage >= 3>>maid cafe employees<<elseif $npc_technician.flags.knowgender == "female">>girls like us<<else>>first timers<</if>>. Come on, the thought of helping you get super smooth is more invigorating than any coffee... even Cofferasque.@@"<br>
<br>
[<<moveTo "theme_secretary_style_bodyhair_enthusiast_3" "Head for the salon." 120>>]<br>
<<printNpcThemeReturn 'npc_technician' 600>>
</div>/*#
#desc: technician helps with bodyhair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
Despite her earlier words, <<=setup.getNpcName("npc_technician","first")>> pounds back the rest of her drink before leaving payment and a tip and the two of you head straight for Dye Me Crazy where <<=setup.getNpcName("npc_technician","first")>> heads straight for the front desk to order up "@@.npc_technician;one fully body electrolysis for my friend here, <<if $player.flags.maidcafe.stage >= 3>>maid cafe discount<<elseif $npc_technician.flags.knowgender == "female">>gender affirmation discount<<else>>first timer discount<</if>>.@@"<br>
<br>
<<=setup.getNpcName("npc_barber","first")>> looks past <<=setup.getNpcName("npc_technician","first")>> to notice you with a smile. "@@.npc_barber;Ah, my old friend! For you, we go ahead and make discount 100%, yes? I insist! Now come, come, I take you to the machine, I promise, a few minutes from now and you will be smooth and joyous!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks back at you with a grin as she offers a hand. "@@.npc_technician;Come on, I've done this, myself, it doesn't even hurt, and I know you're going to love how you feel after.@@"<br>
<br>
[<<moveTo "theme_secretary_style_bodyhair_enthusiast_4" "Take her hand." 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "theme_secretary_style_bodyhair_enthusiast_4" "You changed your mind. You don't want to do this." 1800 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: enthusiast bodyhair remove
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if !$player.sec_style.body.hair_body>>
<<set $player.sec_style.body.hair_body = "enthusiast">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_barber","first")>> leads you into a private room in the back, where <<he npc_barber>> takes a moment to walk you through how the machine works before <<he npc_barber>> turns around and waits for you to change, before having you you lay down on a padded bench with a towel over you for modesty.<br>
<br>
The machine hums softly, and <<=setup.getNpcName("npc_technician","first")>> holds your hand for emotional support... but they were quite telling the truth, a cooling cream desensitises you to start, after which the electrolysis wand feels like dull pokes, hardly anything at all, and you actually almost drift off as <<=setup.getNpcName("npc_barber","first")>> whistles cheerily through <<his npc_barber>> work.<br>
<br>
As fast as <<he npc_barber>> is efficient, it isn't long before you are TRULY hairless from the neck down<<if setup.checkItemTypeWorn("cage")>>, <<=setup.getNpcName("npc_barber","first")>> remaining utterly professional, even as <<he npc_barber>> works around your chastity device<</if>>. <<=setup.getNpcName("npc_barber","first")>> bows with a smile and leaves you to get dressed, <<=setup.getNpcName("npc_technician","first")>> running a hand long your freshly smoothed leg with a wide grin, barely resisting the urge to feel you up more before excusing herself.
<<else>>
At the last moment you change your mind about this whole electrolysis thing... it sounds a bit scary, to be honest and, even though your friends assure you it barely hurts, you decide against it.<br>
<br>
"@@.npc_barber;Maybe some other time.@@" <<=setup.getNpcName("npc_barber","first")>> states as <<=setup.getNpcName("npc_technician","first")>> concurs and the two of you head your separate ways.
<</if>>
<br><br>
<<if $now.getUTCDay() == 6>>
"@@.npc_technician;Well I should finish prep for tonight's game<<if $npc_technician.flags.rpg_campaign.session > 0>>, see you then!<<else>>.<</if>>@@"
<<else>>
"@@.npc_technician;Well I have some errands to run before the weekend is over, I'll catch you later!@@"
<</if>>
<br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: ask about bodyhair remove
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barber","first")>> if the salon offers hair removal and <<he npc_barber>> smiles. "@@.npc_barber;Of course! We have a top of the line electrolysis machine and, well... for you, as a loyal customer, I can offer a 50% discount... so the total would be only 145 credits.@@"<br>
<br>
<<if $player.money.total >= 145>>
[<<moveTo "event_secretary_style_bodyhair_voluntary_1" "Pay to remove your hair." 1800 "<<addCredits -145>>">>]
<<else>>
[@@.link_locked;You do not have enough credits.@@]<br>
<</if>>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: voluntary bodyhair remove
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.hair_body>>
<<set $player.sec_style.body.hair_body = "voluntary">>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("theme_secretary_style_bodyhair_enthusiast_3")>>
You ask <<=setup.getNpcName("npc_barber","first")>> about <<his npc_barber>> offer of electrolysis and he smiles, quickly leading
<<else>>
You pay up and <<=setup.getNpcName("npc_barber","first")>> leads
<</if>>
you into a private room in the back, where <<he npc_barber>> takes a moment to walk you through how the machine works before <<he npc_barber>> turns around and waits for you to change, before having you you lay down on a padded bench with a towel over you for modesty.<br>
<br>
The machine hums softly, and you almost fall asleep, the combination of a cooling cream desensitising your skin and the steady dull pokes of the machine weirdly soothing as you fantasise about little bolts of lightning zapping away each of your hairs like bolts from the heavens while <<=setup.getNpcName("npc_barber","first")>> whistles cheerily through <<his npc_barber>> work.<br>
<br>
As fast as <<he npc_barber>> is efficient, it isn't long before you are TRULY hairless from the neck down<<if setup.checkItemTypeWorn("cage")>>, <<=setup.getNpcName("npc_barber","first")>> remaining utterly professional, even as <<he npc_barber>> works around your chastity device<</if>>. <<=setup.getNpcName("npc_barber","first")>> bows with a smile and leaves you to get dressed.<br>
<br>
You take a moment to admire your new smoothness, and the suddenly sensuous feel of your clothing as you get dressed, and then you're on your way, <<=setup.getNpcName("npc_barber","first")>> waving goodbye as you head back into the mall proper.<br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: manager notices facial hair removal
#status: RELEASED 0.9.0.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> looks at your face and smiles.<br>
<br>
"@@.npc_manager;You know, you look so much more lovely without facial hair, your chin so much delightfully delicate, your skin magnificently smooth... tell me, have you considered removing the rest of your hair? Not the ones on your head, of course, those are lovely... but the rest. <<if $player.sec_style.body.tblock>>While I am sure you have enjoyed the way your body hair has likely softened and thinned out thanks to your t-blockers<<if $player.sec_style.body.hormones>>, and hormones<</if>>,<<else>>Imagine if you had that smooth beauty across your entire body... <</if>>trust me when I say removing it ALL is so, so much better.@@"<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_obedient_1" "If she thinks it would be an improvement..." 1800>>]<br>
[<<moveTo "event_secretary_style_bodyhair_money_1" "Would it make you a more productive <<if $fetish.sissy>>SISSI <</if>>Secretary?" 120>>]<br>
[<<moveTo "event_secretary_style_bodyhair_intro_2" "You'd rather not." 1800 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: decline manager bodyhair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_manager","formal")>> that you are satisfied with your current body-hair situation. She frowns and you brace for something further... but after a tense moment she merely shrugs. "@@.npc_manager;Very well. In that case, well... you may return to your desk and get to work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start working." 300>>]
</div>/*#
#desc: obedient accept manager bodyhair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You blush and reply that, if she thinks removing your body hair would make you look better...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> takes a step closer, her finger tracing down your cheek as she smiles. "@@.npc_manager;Look better, feel better... yes, hairless, smooth and cute... that would be just perfect for my <<if $fetish.sissy>>SISSI <</if>>Secretary...@@"<br>
<br>
You hang on her every word as her finger slides down under your chin, and you almost fall forward when she playfully flicks it up to tap you on the nose.<br>
<br>
"@@.npc_manager;Come, my dear, I do not wish to leave you suffering a moment longer with those nasty, irritating hairs...@@"<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_removal_1" "Follow." 300 "<<set $scene.money=false>>">>]
</div>/*#
#desc: barter manager bodyhair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> grins in amusement. "@@.npc_manager;Productive? I presume what you actually mean is would it lead to higher pay? It is not actually written into your contract, as such, save that it falls under the category of managerial discretion... which means that yes, if you are ready to revoke all of those nasty hairs right here, right now? Well, I'll put the offer out... let us say... a seven percent raise?@@"<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_money_2" "I'd do ten." 300>>]<br>
[<<moveTo "event_secretary_style_bodyhair_intro_2" "You'd rather not." 1800 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: accept money manager bodyhair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.work.payment = Math.floor($player.work.payment*1.1)>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.pc;Ten.@@" You blurt out and <<=setup.getNpcName("npc_manager","formal")>> smiles as if in triumph... you may have scored a raise... but you get the feeling that she remains the superior deal-maker.<br>
<br>
"@@.npc_manager;Accepted. Now come, my dear, I do not wish to leave you suffering a moment longer with those nasty, irritating hairs...@@"<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_removal_1" "Follow." 300 "<<set $scene.money=true>>">>]
</div>/*#
#desc: accept money manager bodyhair removal face upgrade
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.money = true>>
<<set $player.work.payment += 50>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You accept <<=ps(setup.getNpcName("npc_manager","formal"))>> counter-offer and she grins.<br>
<br>
"@@.npc_manager;Lovely. Come along, let us get rid of all that nasty hair...@@"<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_removal_1" "Follow." 300 "<<set $scene.money=true>>">>]
</div>/*#
#desc: intro manager bodyhair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'The "Cleaners"'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_laundry.png" setup.charImageManager() setup.charImage("npc_work","npc_work_laundry_reception")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_manager","formal")>> as she leads you to the elevator, and then down to an unfamiliar floor.<br>
<br>
A doll-like woman dressed in tight latex greets you with a smile and asks "@@.generic_female1;and what sort of cleaning will you be requiring today, <<=setup.getNpcName("npc_manager","other")>>.@@"<br>
<br>
"@@.npc_manager;Not a cleaning, a hair removal, if you please,@@" <<=setup.getNpcName("npc_manager","formal")>> corrects.<br>
<br>
"@@.generic_female1;Of course, would that be the full body smoothing or—@@"<br>
<br>
<<if $scene.face>>
"@@.npc_manager;Just the nose and down, if you please.@@"
<<else>>
"@@.npc_manager;Just the neck down, if you please.@@"
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> interrupts as you have a sudden fright at the thought of how it would feel, and look, to be totally hairless and bald<<if !$npc_admin.fem>> as <<=setup.getNpcName("npc_admin","first")>><</if>>. "@@.npc_manager;I quite like her head... it is just the rest.@@"<br>
<br>
"@@.generic_female1;Certainly, if you would order her to follow me?@@" The woman states as she extends a hand.<br>
<br>
Her phrasing is curious, but <<=setup.getNpcName("npc_manager","formal")>> answers your glance with a nod and you follow through a doorway past the reception area.<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_removal_2" "Continue." 600>>]
</div>/*#
#desc: manager bodyhair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if !$player.sec_style.body.hair_body>>
<<if $scene.money>>
<<set $player.sec_style.body.hair_body = "money">>
<<else>>
<<set $player.sec_style.body.hair_body = "obedient">>
<</if>>
<</if>>
<<if !$player.sec_style.body.hair_face>>
<<if $scene.money>>
<<set $player.sec_style.body.hair_face = "money">>
<<else>>
<<set $player.sec_style.body.hair_face = "obedient">>
<</if>>
<</if>>
<<set $player.body.bodyhair = 0>>
<<set $player.body.facialhair = 0>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to 'The "Cleaners"'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_laundry.png" setup.charImageManager() setup.charImage("npc_work","npc_work_laundry_reception")>>
<div id="invframe" class="scrolltext">
You follow the woman as she leads you down a tile-lined hallway that puts you mind of a bath-house, quickly turning into a side room where you find a raised platform covered in some sort of rubber-like material.<br>
<br>
"@@.generic_female1;If you would remove all of your clothing and lay down on the platform here, we will see about getting that pesky hair removed.@@"<br>
<br>
You weren't sure exactly what you were expecting, but this strange, futuristic thing isn't quite it... but you do as instructed, feeling the cool, slick rubber under you as it is followed up with a layer pulled over top — a gasket around your neck to leave your head <<if $scene.face>>momentarily exposed... before a helmet is added on top to complete your enclosure, in the darkness of the helmet you feel somewhat isolated from your body, even as you feel yourself being<<else>>exposed, but the rest of your body completely covered... and moments later<</if>> effectively shrink-wrapped as the air is sucked out from between the sheets, causing them to pull tight and cling to your body in the most form-fitting manner imaginable.<br>
<br>
Functionally restrained, you <<if $scene.face>>have no choice but to wait as you go from being vacuum-sealed to feeling<<else>>occupy yourself by watching the woman as she replaces the hose that had just vacuum-sealed you with another that begins pumping<</if>> a thin liquid in with you, the slight reduction in pressure paired with a strange tingling and a slippery feeling as you find you are able to wiggle in your partially shrink-wrapped prison.<br>
<br>
Answering your unspoken query the attendant explains "@@.generic_female1;the chemical we have perfected here is fantastically effective... but has quite the adverse reaction with oxygen. This process lets it do its thing safely... and it's kind of fun, isn't it? I've actually come in here on my lunch break from time to time, nothing relaxes like a night of vacuum-sealed immobility, hmm?@@"<br>
<br>
As if on cue,
<<if $scene.face>>
you feel something press against your face, a matching tingling as more hair is dissolved away,
<<else>>
the woman turns back to her controls and hits a switch that has the liquid you had been wiggling in to be sucked away,
<</if>>
the rubber feeling even tighter than the first time as the machine sucks hard and you feel the latex cling to your every curve.<br>
<br>
A scant handful of moments of full compression and the machine reverses again, cycling twice more to, presumably, remove every drop of the chemical concoction away before the pressure releases fully and your neck gasket detaches<<if $scene.face>> and the helmet pulls free<</if>>.<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_removal_3" "Stand." 300>>]
</div>/*#
#desc: complete manager bodyhair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<useClothSetPop 'daily_evaluation_clothes'>>
<</if>>
<<set $player.location to 'The "Cleaners"'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_laundry.png" setup.charImageManager() setup.charImage("npc_work","npc_work_laundry_reception")>>
<div id="invframe" class="scrolltext">
You stand and immediately feel a strange chill. You start to rub your body on reflex... to find that you are smoother than you've ever felt. The chill forgotten, your fingers trace your now totally hairless flesh as you glory at the effectiveness of the procedure.<br>
<br>
The woman clears her voice to interrupt your exploration, handing you your clothes as you blush and bashfully dress before following her back out of the room. Rather than waiting where you left her, an attendant eerily identical to the first informs you that <<=setup.getNpcName("npc_manager","other")>> was called away to a meeting, and for you to return to your desk and begin your day.<br>
<br>
Every movement reminds you of your sensitive skin as you adjust to the feel of your clothes on your oh-so-smooth body as you head for the elevator.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Back to your desk and start working." 300>>]
</div>/*#
#desc: corporate retreat day 2 - npc_harassment_assist offers hair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $player.body.bodyhair = 0>>
<<set $player.body.facialhair = 0>>
<<set $player.sec_style.body.hair_body = "obedient">>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_harassment","npc_harassment_assist_swimsuit")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You nod obediently and <<=setup.getNpcName("npc_harassment_assist","first")>> digs through the pack they brought and produces a small device that looks sort of like an oversized shaver.<br>
<br>
"@@.npc_harassment_assist;Great! I thought you might need a bit of a touch-up, depending on the bikini... but this puppy can handle anything. Hand-held, top of the line permanent laser hair removal, industrial grade. I'm actually fully certified and trained to do this professionally so just give me a few minutes and I'll have you smoother than you've ever felt!@@"<br>
<br>
You vaguely remember seeing a place in the mall offering something like this, and you momentarily reflect on how much money <<=setup.getNpcName("npc_harassment_assist","first")>> is saving you. With tender touch and precise control <<=setup.getNpcName("npc_harassment_assist","first")>> starts running the device over your skin. Starting from the legs up it's a mix of warmth and an odd tingling, as if someone was repeatedly snapping a rubber band against your skin.<br>
<br>
"@@.npc_harassment_assist;Yup, legs spread, arms out, and try to keep the skin tight, you're doing great! We're going to have this done in a jiffy!@@" Chattering with encouragement, <<=setup.getNpcName("npc_harassment_assist","first")>> is soon past your knee, commenting about how, despite how soft and thin your hair is, it will feel even better once it's all gone for good.<br>
<br>
You can only watch in awe as the device practically sweeps your hair away, your skin looking immediately softer and smoother as every trace of hair below your neck is removed.<br>
<br>
Finished startlingly fast <<=setup.getNpcName("npc_harassment_assist","first")>> stands looking at you with a grin as you delight in running your hands on your fantastically smooth... and somehow more sensitive, flesh.<br>
<br>
"@@.npc_harassment_assist;Feels great, doesn't it? But we don't have time to dally! We're already running late, and you still need to choose your swimsuit!@@" They hold up the three options — a ridiculously skimpy stringkini, a classic red one-piece and an incredibly slutty slingshot. Adding an additional layer is that each swimsuit includes an integrated rear dildo. In the case of the stringkini this means a <<=setup.getNpcName("npc_barista","nickname")>>-style "barely held in" look, while the one-piece uses it to "draw in" to show off your crack and the slingshot uses it as an anchor point to be completely backless.<br>
<br>
"@@.npc_harassment_assist;Oh, and don't worry about tan-lines — I'll make sure you've got plenty of sunscreen!@@"<br>
<br>
[<<moveTo "event_corporate_retreat_day2_2" 'Choose the skimpy stringkini.' 300 "<<set $scene.swimsuit='stringkini'>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_2" 'Choose the sexy one-piece.' 300 "<<set $scene.swimsuit='one_piece'>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_2" 'Choose the slutty slingshot.' 300 "<<set $scene.swimsuit='slingshot'>>">>]
<<else>>
You tell <<=setup.getNpcName("npc_harassment_assist","first")>> that you don't feel like shaving your body.<br>
<br>
<<=setup.getNpcName("npc_harassment_assist","first")>> looks disappointed, but ends up shrugging. "@@.npc_harassment_assist;Well, it's your body... I just hope <<=setup.getNpcName("npc_manager","formal")>> is as understanding as I am. And it wouldn't be shaving... shaving is such a chore of upkeep. No, it'd be a top of the line hair removal, WAY better!@@"<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_retreat_intro_1" "On second thought.. hair removal does make sense." 1800 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_secretary_style_bodyhair_retreat_intro_2" "Stand your ground and continue on." 300>>]<br>
<</if>>
</div>/*#
#desc: corporate retreat day 2: decline hair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_harassment","npc_harassment_assist_swimsuit")>>
<div id="invframe" class="scrolltext">
You stand firm that you do not wish to remove your body hair. <<=setup.getNpcName("npc_harassment_assist","first")>> shrugs and then moves on.<br>
<br>
"@@.npc_harassment_assist;Your body, your choice... so, on to swimsuits!@@" They hold up the three options — a ridiculously skimpy stringkini, a classic red one-piece and an incredibly slutty slingshot. Adding an additional layer is that each swimsuit includes an integrated rear dildo. In the case of the stringkini this means a <<=setup.getNpcName("npc_barista","nickname")>>-style "barely held in" look, while the one-piece uses it to "draw in" to show off your crack and the slingshot uses it as an anchor point to be completely backless.<br>
<br>
"@@.npc_harassment_assist;Oh, and don't worry about tan-lines — I'll make sure you've got plenty of sunscreen!@@"<br>
<br>
[<<moveTo "event_corporate_retreat_day2_2" 'Choose the skimpy stringkini.' 300 "<<set $scene.swimsuit='stringkini'>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_2" 'Choose the sexy one-piece.' 300 "<<set $scene.swimsuit='one_piece'>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_2" 'Choose the slutty slingshot.' 300 "<<set $scene.swimsuit='slingshot'>>">>]
</div>/*#
#desc: strict hair removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.hair_body>>
<<set $player.sec_style.body.hair_body = "strict">>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_manager","formal"))>> work is as quick as it is brutal, the device feeling like fire scouring your body... as it leaves your flesh soft, sensitive... and 100% devoid of hair in its wake. You thrash and squirm, but all it does is leave you occasionally dangling in the air... and has <<=setup.getNpcName("npc_manager","formal")>> doing another torturous pass over the same area lest your movement caused her to miss a spot.<br>
<br>
Your body sore, and whimpering in pain, you are eventually too tired and broken to even attempt resistance, hanging almost limp in your bonds as <<=setup.getNpcName("npc_manager","formal")>> finishes her work, not stopping until every square centimetre below your neck is perfectly smooth.<br>
<br>
"@@.npc_manager;There, is that not better?@@" <<=setup.getNpcName("npc_manager","formal")>> asks as she finally steps away, finishing off by blasting your sensitive body with hot water to clean you off before releasing your bonds and leading you out of the room.<br>
<br>
"@@.npc_manager;Step lively, my dear. I hope you enjoyed your day... because tonight you are back on the clock, as it were, as my guest for a classy end-of-retreat dinner.@@"<br>
<br>
<<if setup.checkItemInInventory('universal_key')>>
[<<moveTo "event_corporate_retreat_return_key_1" 'Turn over the key you "earned."' 300>>]<br>
[<<moveTo "event_corporate_retreat_party_0" "Shower." 300>>]
<<else>>
[<<moveTo "event_corporate_retreat_party_1" "Shower." 300>>]
<</if>>
</div>/*#
#desc: hair removed by first cleaning
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.giveSecOutfit>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<include "inspectionData_plug">>
<<include "inspectionEffects_plug">>
<<if !$player.sec_style.body.hair_body>>
<<set $player.sec_style.body.hair_body = "forced">>
<</if>>
<<if !$player.sec_style.body.hair_face>>
<<set $player.sec_style.body.hair_face = "forced">>
<</if>>
<<set $player.body.bodyhair = 0>>
<<set $player.body.facialhair = 0>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
As you ride back up to the office you note that your clothes feel different. It takes a moment to figure what's going on and then you realise that it isn't the clothing, it's you. Every speck of hair below your neck has been removed, your freshly smoothed skin newly sensitive to your attire.<br>
<br>
<<printThought "I'm going to guess this is permanent... I guess it's technically cleaner not to have hair... and it does feel kind of good...">><br>
<br>
You sigh in resignation, yet again reshaped to meet <<=ps(setup.getNpcName("npc_manager","formal"))>> expectations. The elevator dings for your floor, and you walk back to the office.<br>
<br>
[<<moveTo $scene.cleaningReturn "Start working." 60 "<<set $scene.preciselyOnTime = false>>">>]
</div>/*#
#desc: enthusiast breast size choice
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You mention to <<=setup.getNpcName("npc_manager","formal")>> that, as much as you like your new bra, well... it feels a bit empty?<br>
<br>
She smiles. "@@.npc_manager;You really are just exploding out of that shell...@@" You shiver slightly as she continues, her voice sultry and inviting. "@@.npc_manager;Tell me, when you think of your breasts... what are you imagining?@@"<br>
<br>
[<<moveTo "event_secretary_style_breasts_enthusiast_2" "You'd be happy with a nice small pair." 300 "<<set $scene.breasts=1>>">>]<br>
[<<moveTo "event_secretary_style_breasts_enthusiast_2" "Nothing too big... but enough for a bit of cleavage." 60 "<<set $scene.breasts=3>>">>]<br>
[<<moveTo "event_secretary_style_breasts_enthusiast_2" "You just want a nice handful..." 60 "<<set $scene.breasts=5>>">>]<br>
[<<moveTo "event_secretary_style_breasts_enthusiast_2" "Bigger is better, and you like better." 60 "<<set $scene.breasts=7>>">>]<br>
[<<moveTo "event_secretary_style_breasts_enthusiast_2" "You want massive stonking tits." 60 "<<set $scene.breasts=9>>">>]
</div>/*#
#desc: enthusiast breasts
#status: RELEASED 0.9.0.0
#ignore_spell: ff,b,d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body.breastsize[1] = $scene.breasts>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "enthusiast">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> smiles and pours out
<<switch $scene.breasts>>
<<case 1>>
a pill
<<case 3>>
a couple pills
<<case 5>>
a few pills
<<case 7>>
several pills
<<case 9>>
a handful of pills
<<default>>
ERROR: unexpected scene.breasts <<=$scene.breasts>>
<</switch>>
from a bottle behind her desk.<br>
<br>
She nods in permission and you knock the drugs back, gasping a moment later as you feel a heat in your chest.<br>
<br>
"@@.npc_manager;Technology really is quite amazing,@@" she states as you pitch forward, bracing yourself against the edge of her desk and moaning as your chest
<<switch $scene.breasts>>
<<case 1>>
swells, your nipples first becoming more sensitive, and then your flesh expanding until you have a nice pair of A-cups.
<<case 3>>
swells, your nipples first becoming more sensitive, and then your flesh expanding until you have a nice pair of B-cups.
<<case 5>>
swells quickly, your nipples first becoming more sensitive, and then your flesh expanding until you have a modest pair of tender D-cups.
<<case 7>>
balloons, your nipples first becoming more sensitive, and then your flesh expanding rapidly until you have a large pair of tender E-cups.
<<case 9>>
balloons rapidly, your nipples first becoming more sensitive, and then your flesh expanding almost uncontrollably until you end up with a massive pair of heavy FF-cups.
<<default>>
ERROR: unexpected scene.breasts <<=$scene.breasts>>
<</switch>>
<br><br>
Once your new breasts have stopped growing you look up for <<=setup.getNpcName("npc_manager","formal")>> to smile. "@@.npc_manager;My, my, those are quite lovely on you. They are permanent — well, unless you have additional work done on them, and the only side effect is that you may feel a bit hungrier this evening as your body tries to replenish itself, and they will likely be more sensitive than before.@@"<br>
<br>
You nod, resisting the urge to play with your amazing new titties as you instead occupy yourself with re-adjusting your clothes.<br>
<br>
<<printThought "Wow! These are just, uh... wow!">><br>
<br>
"@@.npc_manager;So,@@" <<=setup.getNpcName("npc_manager","formal")>> states, managing to draw your attention away from your new chest. "@@.npc_manager;Are you ready to report for work tomorrow as my sweet and lovely assistant?@@"<br>
<br>
[<<moveTo "event_enthusiast_intro_5" "Yes, and..." 60 "<<set $scene.action='more'>>">>]<br>
[<<moveTo "event_enthusiast_intro_6_abort" "This is enough." 60>>]
</div>/*#
#desc: forced breasts intro, wear falsies
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "breastforms">>
<<wearItem "breastforms" true>>
<<addItem "satin_bra">>
<<wearItem "satin_bra" true>>
<<set $scene.forced_gift = ''>>
<<set $clothSetsInt.daily_evaluation_clothes.data.push("breastforms")>>
<<set $clothSetsInt.daily_evaluation_clothes.data.push("satin_bra")>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You put the falsies on. Even adjusting the straps it feels odd, like you're being constantly pulled forward, and the view looking down, well... it's startlingly realistic, but also strange... and a little hot?<br>
<br>
<<printThought "Must be the insulation of having this much stuff hanging from my chest... yeah, that's it.">><br>
<br>
You look up and <<=setup.getNpcName("npc_manager","formal")>> smiles, handing you a new bra and waiting for you to put it on before dismissing you back to your desk.<br>
<br>
[<<moveTo $scene.inspectionReturn "Return to your desk." 300 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: money breasts size choice
#status: RELEASED 0.9.0.0
#ignore_spell: d,c
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem "breastforms">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stare at the fake pair of breasts and, somewhat cheekily ask why she doesn't just pay for you to have breasts, if a bra is really so important?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grins and you start to regret your flippant response. "@@.npc_manager;That would be a method to help ensure your compliance... and you would look so much nicer with a bit more shape to your chest... yes, a nice pair of C or D cups would really help balance those lovely hips... if you are up for it, well, I think I could raise your pay by, say... fifty credits a week, if you were to have a nice pair of sweater puppies? You heard my thoughts, what size would YOU prefer?@@"<br>
<br>
[<<moveTo "event_secretary_style_breasts_money_2" "You'd be happy with a nice small pair." 300 "<<set $scene.breasts=1>>">>]<br>
[<<moveTo "event_secretary_style_breasts_money_2" "Nothing too big... but enough for a bit of cleavage." 300 "<<set $scene.breasts=3>>">>]<br>
[<<moveTo "event_secretary_style_breasts_money_2" "You just want a nice handful..." 300 "<<set $scene.breasts=5>>">>]<br>
[<<moveTo "event_secretary_style_breasts_money_2" "Bigger is better, and you like better." 300 "<<set $scene.breasts=7>>">>]<br>
[<<moveTo "event_secretary_style_breasts_money_2" "You want massive stonking tits." 300 "<<set $scene.breasts=9>>">>]<br>
<<if $options.ezchange>>
[<<moveTo "event_secretary_style_breasts_forced_2" "Scratch that, put the falsies on." 180 "<<addItem 'breastforms'>><<wearItem 'breastforms' true>>">>]
<</if>>
</div>/*#
#desc: forced breasts intro, wear falsies
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $clothSetsInt.daily_evaluation_clothes.data.push("breastforms")>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You put the falsies on. Even adjusting the straps it feels odd, like you're being constantly pulled forward, and the view looking down, well... it's startlingly realistic, but also strange... and a little hot?<br>
<br>
<<printThought "Must be the insulation of having this much stuff hanging from my chest... yeah, that's it.">><br>
<br>
You look up and <<=setup.getNpcName("npc_manager","formal")>> smiles, handing you a new bra and waiting for you to put it on before dismissing you back to your desk.<br>
<br>
[<<moveTo $scene.inspectionReturn "Get dressed and return to your desk." 300 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: money breasts
#status: RELEASED 0.9.0.0
#ignore_spell: ff,d,b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body.breastsize[1] = $scene.breasts>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "money">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You nod in agreement with <<=ps(setup.getNpcName("npc_manager","formal"))>> proposal and tell her that you would like
<<switch $scene.breasts>>
<<case 1>>
some small breasts
<<case 3>>
a modest bosom.
<<case 5>>
a slightly above average pair of breasts, just as she suggested.
<<case 7>>
a large pair of breasts.
<<case 9>>
a massive rack.
<<default>>
ERROR: unexpected scene.breasts <<=$scene.breasts>>
<</switch>>
<<=setup.getNpcName("npc_manager","formal")>> smiles and pours out
<<switch $scene.breasts>>
<<case 1>>
a pill
<<case 3>>
a couple pills
<<case 5>>
a few pills
<<case 7>>
several pills
<<case 9>>
a handful of pills
<<default>>
ERROR: unexpected scene.breasts <<=$scene.breasts>>
<</switch>>
from a bottle behind her desk.<br>
<br>
She nods in permission and you knock the drugs back, gasping a moment later as you feel a heat in your chest.<br>
<br>
"@@.npc_manager;Technology really is quite amazing,@@" she states as you pitch forward, bracing yourself against the edge of her desk and moaning as your chest
<<switch $scene.breasts>>
<<case 1>>
swells, your nipples first becoming more sensitive, and then your flesh expanding until you have a nice pair of A-cups.
<<case 3>>
swells, your nipples first becoming more sensitive, and then your flesh expanding until you have a nice pair of B-cups.
<<case 5>>
swells quickly, your nipples first becoming more sensitive, and then your flesh expanding until you have a modest pair of tender D-cups.
<<case 7>>
balloons, your nipples first becoming more sensitive, and then your flesh expanding rapidly until you have a large pair of tender E-cups.
<<case 9>>
balloons rapidly, your nipples first becoming more sensitive, and then your flesh expanding almost uncontrollably until you end up with a massive pair of heavy FF-cups.
<<default>>
ERROR: unexpected scene.breasts <<=$scene.breasts>>
<</switch>>
<br><br>
"@@.npc_manager;Lovely. Now that you have an inescapable reminder of the importance of a bra, well...@@" She hands you a new bra and waits for you to put it on, the support actually feeling quite comfortable as it shifts some of the weight to your shoulders. "@@.npc_manager;Now, I believe you have work to get to?@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Return to your desk." 300 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: forced breasts award
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.worn = setup.checkItemWorn("breastforms")>>
<<if $scene.worn>>
<<removeItem "breastforms" true>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<<set $player.body.breastsize[1] = 1>>
<</if>>
<<deleteItem "breastforms">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName("npc_manager","formal"))>> inner office for your end of day assessment.<br>
<br>
<<if $scene.worn>>
"@@.npc_manager;So, if you could remove the falsies I loaned you? Not that they do not much improve your figure, but this was merely a lesson, not a permanent solution.@@"<br>
<br>
You take them off and hand them over... only to discover that your chest is no longer flat! They may be small, but you are definitely sporting at least an A-cup, and you look up at <<=setup.getNpcName("npc_manager","formal")>> in shock.<br>
<br>
"@@.npc_manager;Yes, that would be the OTHER reason I wanted them back, the medication is safe, I promise... but it does leave you with a nice permanent reminder to include a bra as part of your uniform, hmm?@@"<br>
<br>
<<if !$scene.afterWorkEventTriggered
&& $player.flags.firstWorkDay
&& $npc_manager.flags.trustplayerwithkey
&& $player.sec_style.submission.chastity != ""
&& setup.checkItemTypeWorn("cage")
&& $npc_manager.flags.hascagekey
&& !(setup.checkItemTypeWorn("cage") && setup.checkItemTypeTag('cage', ['restrictedkey']))
&& (!$npc_manager.flags.playerstayedinchastity || $npc_manager.flags.playerstayedinchastity && $npc_manager.flags.chastitydays < 5) &&
$player.sec_style.submission.permanent_key == "">>
<<if (setup.isItemEquipped("c_cage_advanced") || setup.isItemEquipped("chastity_belt_adv") || setup.isItemEquipped("chastity_belt_adv_ultra")) && !setup.checkItemOwned("advance_chastity_cage_key") && $npc_manager.flags.took_adv_key>>
/% no op%/
<<else>>
"@@.npc_manager;Speaking of long-term reminders... I suppose there is the matter of your key...@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 60 "<<set $scene.manager_in_room=true>>">>]
<</if>>
<<else>>
<<if $scene.review && $scene.review.remuneration>>
[<<moveTo "event_manager_performance_review_1" "Continue." 360>>]
<<else>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> stares at you as you place the falsies on her desk. She squints at your now-flat chest. "@@.npc_manager;Did you take these off without instruction?@@" She shakes her head. "@@.npc_manager;No, no, no. This will NOT do. Had you worn these all day you would have ended up with a nice pair of A-cups... but you clearly took them off and so, well... I believe more drastic measures to reinforce your clothing requirements are in order.@@"<br>
<br>
"@@.pc;Drastic measures?@@" You ask as <<=setup.getNpcName("npc_manager","formal")>> opens one of her drawers and starts counting out pills.<br>
<br>
"@@.npc_manager;Yes, now take this.@@" She states, offering you several unmarked pills.<br>
<br>
[<<moveTo "event_secretary_style_breasts_forced_1_end_2" "Take the pills." 180 "<<set $scene.action='obey'>>">>]<br>
[<<moveTo "event_secretary_style_breasts_forced_1_end_2" "What do they do?" 180 "<<set $scene.action='question'>>">>]<br>
[<<moveTo "event_secretary_style_breasts_forced_1_end_2" "Refuse!" 180 "<<set $scene.action='no'>>">>]
<</if>>
</div>/*#
#desc: forced/strict breasts react
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.breasts>>
<<switch $scene.action>>
<<case 'obey'>>
<<set $player.body.breastsize[1] = 5>>
<<set $player.sec_style.body.breasts = "forced">>
<<case 'no'>>
<<set $player.body.breastsize[1] = 5>>
<<set $player.sec_style.body.breasts = "strict">>
<</switch>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'obey'>>
You take the pills without further objection and <<=setup.getNpcName("npc_manager","formal")>> smiles triumphantly.<br>
<br>
"@@.npc_manager;Your resistance is so foolish, you fight... and yet you fold so quickly... I suppose it is an amusement.@@"<br>
<br>
If she had anything further to say you don't hear it as you gasp at a sudden pressure in your chest.
<<case 'question'>>
You ask <<=setup.getNpcName("npc_manager","formal")>> what the pills will do to you and she frowns. "@@.npc_manager;They will do what I want them to do. You need to learn, your understanding is not required, merely your obedience. Now, take the pills.@@"<br>
<br>
She raises her hand slightly, offering the pills to you even more emphatically.<br>
<br>
[<<moveTo "event_secretary_style_breasts_forced_1_end_2" "Take the pills." 180 "<<set $scene.action='obey'>>">>]<br>
[<<moveTo "event_secretary_style_breasts_forced_1_end_2" "Refuse!" 180 "<<set $scene.action='no'>>">>]
<<case 'no'>>
You refuse to take the pills and <<=setup.getNpcName("npc_manager","formal")>> frowns for a moment. A moment later she has burst into speed, moving faster than you can even react to close the distance and take hold of you. Even stronger than she is fast she holds you tight with one arm as her hand claps over your mouth, the pills flying past your lips as she pinches your nose and covers your mouth until you have no choice but to swallow.<br>
<br>
Her hand comes away, but before you can say anything further the drugs kick in.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != 'question'>>
<br><br>
You pitch forward, your nipples suddenly feeling on fire with sensitivity as your chest balloons, expanding rapidly until you have a large pair of tender E-cups.<br>
<br>
You try to catch your breath as you stand back up, hands drawn to your new, massive breasts.<br>
<br>
"@@.npc_manager;There. That should prove sufficient reminder of just why you need the... support of a bra. I promise there will be no further side effects, but your chest, well... it really does so much for your figure, you should thank me!@@"<br>
<br>
You're too stunned to even think of doing something like that, still feeling off-balanced by the large weights extending from your previously flat chest.<br>
<br>
<<if !$scene.afterWorkEventTriggered
&& $player.flags.firstWorkDay
&& $npc_manager.flags.trustplayerwithkey
&& $player.sec_style.submission.chastity != ""
&& setup.checkItemTypeWorn("cage")
&& $npc_manager.flags.hascagekey
&& !(setup.checkItemTypeWorn("cage") && setup.checkItemTypeTag('cage', ['restrictedkey']))
&& (!$npc_manager.flags.playerstayedinchastity || $npc_manager.flags.playerstayedinchastity && $npc_manager.flags.chastitydays < 5) &&
$player.sec_style.submission.permanent_key == "">>
<<if (setup.isItemEquipped("c_cage_advanced") || setup.isItemEquipped("chastity_belt_adv") || setup.isItemEquipped("chastity_belt_adv_ultra")) && !setup.checkItemOwned("advance_chastity_cage_key") && $npc_manager.flags.took_adv_key>>
/% no op%/
<<else>>
"@@.npc_manager;Speaking of long-term reminders... I suppose there is the matter of your key...@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 60 "<<set $scene.manager_in_room=true>>">>]
<</if>>
<<else>>
<<if $scene.review && $scene.review.remuneration>>
[<<moveTo "event_manager_performance_review_1" "Continue." 360>>]
<<else>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: manager suggests breasts after corset
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> what she means and she explains, "@@.npc_manager;well your hips and waist are looking simply marvelous... but it throws your body into imbalance to not cap it off, hmm?@@" She waves her hand up your body tracing curves both there and... not.<br>
<br>
[<<moveTo 'event_secretary_style_breasts_obedient_1' "If she thinks breasts would make you more representative of your position..." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'event_secretary_style_breasts_money_alt' "If breasts would be such a benefit... would it benefit your salary?" 120>>]<br>
[<<moveTo 'event_secretary_style_breasts_obedient_1' "You are happy enough with your flat chest." 120 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: manager suggests breasts after corset
#status: RELEASED 0.9.0.0
#ignore_spell: c,d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept && $npc_manager.flags.cruel && $fetish.drugs>>
<<set $player.body.breastsize[1] = 8>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You blush slightly and reply that, if <<=setup.getNpcName("npc_manager","formal")>> things it would help, you would gladly grow some breasts...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;So obedient! Just the way I like it... of course the question now is... what size? I think a nice pair of C or D cups would really help balance those lovely hips... but it is your body, so if larger or smaller would be more to your liking, well...@@"<br>
<br>
[<<moveTo "event_secretary_style_breasts_obedient_2" "You'd be happy with a nice small pair." 300 "<<set $scene.breasts=1>>">>]<br>
[<<moveTo "event_secretary_style_breasts_obedient_2" "Nothing too big... but enough for a bit of cleavage." 300 "<<set $scene.breasts=3>>">>]<br>
[<<moveTo "event_secretary_style_breasts_obedient_2" "You just want a nice handful..." 300 "<<set $scene.breasts=5>>">>]<br>
[<<moveTo "event_secretary_style_breasts_obedient_2" "Bigger is better, and you like better." 300 "<<set $scene.breasts=7>>">>]<br>
[<<moveTo "event_secretary_style_breasts_obedient_2" "You want massive stonking tits." 300 "<<set $scene.breasts=9>>">>]<br>
<<elseif $npc_manager.flags.cruel && $fetish.drugs>>
You reply that you would rather keep your current, svelte figure... but <<=setup.getNpcName("npc_manager","formal")>> does not even seem to be paying attention, already digging into her desk for a pill bottle as she sniffs in annoyance.<br>
<br>
"@@.npc_manager;Did you think this was an option? I was merely asking as a test... a test which you have failed... so I think a nice large pair are in order, hmm? A pair of massive distractions from your irksome disobedience.@@"<br>
<br>
As you open your mouth to reply <<=setup.getNpcName("npc_manager","formal")>> steps in front of you, forcing the pills between your lips and then holding her hand over your mouth until you swallow.<br>
<br>
You stagger back, gasping as, true to her word, a pair of large breasts sprout from your chest, nearly pulling you off balance as you stagger backwards.<br>
<br>
"@@.npc_manager;Much better, I believe you have work to return to?@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Return to your desk." 300>>]
<<else>>
You reply that you are quite satisfied with your current body and <<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;I see, well so long as you stick to your uniform, that is the important part. And with that, well... I think you have work to get to, yes?@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Return to your desk." 300>>]
<</if>>
</div>/*#
#desc: counter manager corset breast offer
#status: RELEASED 0.9.0.0
#ignore_spell: c,d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if breasts might improve your "earning potential," if she thinks they would so help you out in your representative position?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;As if they would not be benefit on their own? But, yes, a nice pair of C or D cups would really help balance those lovely hips... if you are up for it, well, I think I could raise your pay by, say... fifty credits a week, if you were to have a nice pair of sweater puppies? You heard my thoughts, what size would YOU prefer?@@"<br>
<br>
[<<moveTo "event_secretary_style_breasts_money_2" "You'd be happy with a nice small pair." 300 "<<set $scene.breasts=1>>">>]<br>
[<<moveTo "event_secretary_style_breasts_money_2" "Nothing too big... but enough for a bit of cleavage." 300 "<<set $scene.breasts=3>>">>]<br>
[<<moveTo "event_secretary_style_breasts_money_2" "You just want a nice handful..." 300 "<<set $scene.breasts=5>>">>]<br>
[<<moveTo "event_secretary_style_breasts_money_2" "Bigger is better, and you like better." 300 "<<set $scene.breasts=7>>">>]<br>
[<<moveTo "event_secretary_style_breasts_money_2" "You want massive stonking tits." 300 "<<set $scene.breasts=9>>">>]
</div>/*#
#desc: obedient breasts
#status: RELEASED 0.9.0.0
#ignore_spell: ff,d,b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body.breastsize[1] = $scene.breasts>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "obedient">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You nod in agreement with <<=ps(setup.getNpcName("npc_manager","formal"))>> proposal and tell her that you would like
<<switch $scene.breasts>>
<<case 1>>
some small breasts
<<case 3>>
a modest bosom.
<<case 5>>
a slightly above average pair of breasts, just as she suggested.
<<case 7>>
a large pair of breasts.
<<case 9>>
a massive rack.
<<default>>
ERROR: unexpected scene.breasts <<=$scene.breasts>>
<</switch>>
<<=setup.getNpcName("npc_manager","formal")>> smiles and pours out
<<switch $scene.breasts>>
<<case 1>>
a pill
<<case 3>>
a couple pills
<<case 5>>
a few pills
<<case 7>>
several pills
<<case 9>>
a handful of pills
<<default>>
ERROR: unexpected scene.breasts <<=$scene.breasts>>
<</switch>>
from a bottle behind her desk.<br>
<br>
She nods in permission and you knock the drugs back, gasping a moment later as you feel a heat in your chest.<br>
<br>
"@@.npc_manager;Technology really is quite amazing,@@" she states as you pitch forward, bracing yourself against the edge of her desk and moaning as your chest
<<switch $scene.breasts>>
<<case 1>>
swells, your nipples first becoming more sensitive, and then your flesh expanding until you have a nice pair of A-cups.
<<case 3>>
swells, your nipples first becoming more sensitive, and then your flesh expanding until you have a nice pair of B-cups.
<<case 5>>
swells quickly, your nipples first becoming more sensitive, and then your flesh expanding until you have a modest pair of tender D-cups.
<<case 7>>
balloons, your nipples first becoming more sensitive, and then your flesh expanding rapidly until you have a large pair of tender E-cups.
<<case 9>>
balloons rapidly, your nipples first becoming more sensitive, and then your flesh expanding almost uncontrollably until you end up with a massive pair of heavy FF-cups.
<<default>>
ERROR: unexpected scene.breasts <<=$scene.breasts>>
<</switch>>
<br><br>
"@@.npc_manager;Lovely. They look even better on your than I imagined... and I am certain you will have all manner of enjoyment with them.@@" She gives your breasts a gentle squeeze that has you stifling a gasp. "@@.npc_manager;For now, however, fun must wait. It is time for the both of us to work.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Head to your desk." 60>>]
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Head to your desk." 60>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Head to your desk." 60>>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Head to your desk." 60>>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
</div>/*#
#desc: spot bridal advertisement
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_shopkeeper.flags.bride_available = true>>
<</if>>
<<set $player.location to "Outside <<printShopName 'mall_lingerie_shop'>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png">>
<div id="invframe" class="scrolltext">
You're walking past <<printShopName 'mall_lingerie_shop'>> when you spot a large advertisement.<br>
<br>
Wedding Season is Coming!<br>
Come in for the latest gowns — perfect fashions for every style!<br>
<br>
<<printThought "Me... a bride?">><br>
<br>
<<if $npc_technician.relationship.relationship_stage >= 1 || $npc_admin.flags.relationship == 'boyfriend' && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4) || $npc_landlord.stage >= 2>>
The sight of the advertisement immediately has your head spinning. Walking down the aisle with
<<if $npc_technician.relationship.relationship_stage >= 1 && $npc_admin.flags.relationship == 'boyfriend' && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4) && $npc_landlord.stage >= 2>>
<<=setup.getNpcName("npc_technician","first")>>, <<=setup.getNpcName("npc_admin","first")>> or <<=setup.getNpcName("npc_landlord","first")>>? You love each of them in such different ways, it's hard to decide... maybe some sort of poly arrangement? Being the blushing bride to all three of them... you'd be the luckiest, happiest <<switch $player.identify_as>><<case 'female' ''>>girl<<case 'male'>>boy<<default>>person<</switch>> in the world!
<<elseif $npc_technician.relationship.relationship_stage >= 1 && !($npc_admin.flags.relationship == 'boyfriend' && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4) || $npc_landlord.stage >= 2)>>
<<=setup.getNpcName("npc_technician","first")>>? The idea makes your heart flutter...
<<elseif $npc_admin.flags.relationship == 'boyfriend' && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4) && !($npc_technician.relationship.relationship_stage >= 1 || $npc_landlord.stage >= 2)>>
<<=setup.getNpcName("npc_admin","first")>>? The idea makes your heart flutter...
<<elseif $npc_landlord.stage >= 2 && !($npc_admin.flags.relationship == 'boyfriend' && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4) || $npc_technician.relationship.relationship_stage >= 1)>>
<<=setup.getNpcName("npc_landlord","first")>>? The idea makes your heart flutter...
<<else>>
<<if $npc_admin.flags.relationship == 'boyfriend' && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4) && $npc_landlord.stage >= 2>>
<<=setup.getNpcName("npc_admin","first")>> or <<=setup.getNpcName("npc_landlord","first")>>?
<<elseif $npc_technician.relationship.relationship_stage >= 1 && $npc_admin.flags.relationship == 'boyfriend' && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>>
<<=setup.getNpcName("npc_technician","first")>> or <<=setup.getNpcName("npc_admin","first")>>?
<<elseif $npc_technician.relationship.relationship_stage >= 1 && $npc_landlord.stage >= 2>>
<<=setup.getNpcName("npc_technician","first")>> or <<=setup.getNpcName("npc_landlord","first")>>?
<<else>>
ERROR: unexpected
<</if>>
Or maybe both... you love the two of them in such different ways, maybe a triad would be perfect — you, the blushing bride between your two loves...
<</if>>
<br><br>
<<printThought "Maybe it would be fun to try one on? For the future... or maybe just for fun?">>
<<else>>
You find yourself reminiscing about your long-ago girlfriend, <<=setup.getNpcName("npc_exgirlfriend","first")>>. Other than the whole virginity thing the two of you never really got to the point of discussing marriage... though, a wedding for you now would look very different than it would have back then...<br>
<br>
Even though you're single the advertisement has you suddenly fantasising about how you'd look in a wedding gown and you're tempted to try one on, just for fun...
<</if>>
<br><br>
[<<moveTo "event_feminization_bride_1" "Check out the new bridal section..." 180>>]<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: check out bridal section
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.enthusiast = false>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Bridal Section">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
You've been looking around the bridal section in awe for only a couple minutes when <<=setup.getNpcName("npc_shopkeeper","first")>> appears with a wide grin.<br>
<br>
"@@.npc_shopkeeper;Hey, sugah! You planning a wedding? Oh, of course you are! A sweet thing like yourself, even if you haven't been scooped up yet, it's only a matter of time and what bride-to-be doesn't love fantasising about her big day?@@"<br>
<br>
You blush and she grins wider.<br>
<br>
"@@.npc_shopkeeper;We decided to do a bit of expanding, increase our offerings a bit beyond lingerie. After all... what sells lingerie better than a wedding? That's what we in the retail business call synergy! Come on back to the changing area. I've got a couple in your size that would be just perfect — I INSIST you try them all on!@@"<br>
<br>
[<<moveTo "event_feminization_bride_2" "Follow her." 180 "<<set $scene.tryon=true>>">>]<br>
[<<moveTo "event_feminization_bride_2" "Maybe some other time?" 60 "<<set $scene.tryon=false>>">>]
</div>/*#
#desc: shown dresses
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.tryon>>
<<set $scene.fem_style = setup.getSecretaryStyle()>>
<<switch $scene.fem_style[0]>>
<<case 'perfect' 'primary'>>
<<set $scene.style = $scene.fem_style[1]>>
<<case ''>>
<<set $scene.style = 'ambiguous'>>
<<case 'unfeminized'>>
ERROR!
<<default>>
<<set $scene.style = $scene.fem_style[0]>>
<</switch>>
<<useClothSetPush 'tmp'>>
<<set $scene.dressId = "">>
<<set $scene.setId = "">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Bridal Section">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.tryon>>
You follow <<=setup.getNpcName("npc_shopkeeper","first")>> to the back of the store where she quickly lays out four radically different bridal gowns...<br>
<br>
"@@.npc_shopkeeper;Here you go — these should all be in your size... and I think one of them has to be just perfect for you!@@"<br>
<br>
There are four dresses laid out before you, the first a minimalist traditional number, a modest a-line with a gorgeous full train that just screams obedient, demure bride. The second dress takes things and dials them up to eleven, a ginormous hoop skirt and layer upon layer built up to be an outfit fit for royalty. The third dress is jaw-dropping in a very different way — a plunging neckline, slinky-tight and with a sheer cut-out running up the side that shows off the wearer even more than the dress. The final dress, however... you're a bit surprised it's sold here rather than across the mall at <<printShopName 'mall_sexstore'>>; a large hoop skirt that opens in front to show off a pair of towering leather thigh-high ballet boots connected by hobbles, a strenuously tight corset shaping the torso while the arms; rather than having conventional sleeves, are folded behind the back in a leather armbinder, with the entire ensemble topped with a steep neck corset posture collar.<br>
<br>
<<printThought "Huh... these styles feel kind of like they reflect the different choices I could have made along my journey...">><br>
<br>
<<if $scene.style == 'ambiguous'>>
They are all uniquely beautiful, and you find yourself torn by indecision...
<<elseif $scene.style == 'split' || $scene.style == 'tie'>>
Although they are all uniquely beautiful, you find your thoughts split between the
<<switch $scene.fem_style[1]>>
<<case 'forced'>>
bondage dress
<<case 'money'>>
overly-intricate dress
<<case 'obedient'>>
modest, traditional dress
<<case 'voluntary'>>
modern, sexy dress
<<default>>
ERROR unexpected scene.fem_style 1 <<=$scene.fem_style[1]>>
<</switch>>
and the
<<switch $scene.fem_style[2]>>
<<case 'forced'>>
bondage dress.
<<case 'money'>>
overly-intricate dress.
<<case 'obedient'>>
modest, traditional dress.
<<case 'voluntary'>>
modern, sexy dress.
<<default>>
ERROR unexpected scene.fem_style 2 <<=$scene.fem_style[2]>>
<</switch>>
<<else>>
Although they are all uniquely beautiful, you feel most drawn to the
<<switch $scene.style>>
<<case 'forced' 'strict'>>
bondage dress.
<<case 'money'>>
overly-intricate dress.
<<case 'obedient'>>
modest, traditional dress.
<<case 'voluntary' 'enthusiast'>>
modern, sexy dress.
<<default>>
ERROR unexpected scene.style <<=$scene.style>>
<</switch>>
<</if>>
<br><br>
<<include "weddingDressChoices">>
<<else>>
You thank <<=setup.getNpcName("npc_shopkeeper","first")>> for the offer, but politely excuse yourself that you just don't have time for a full fitting and try-on of something so complicated.<br>
<br>
<<=setup.getNpcName("npc_shopkeeper","first")>> frowns. "@@.npc_shopkeeper;I suppose one does need to allot appropriate time for such things... but do hurry back when you free up, mmm?@@"<br>
<br>
You promise you will and make a quick escape from the shop.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<</if>>
</div>[<<moveTo "event_feminization_bride_3" "Try on modest, traditional dress." 300 "<<set $scene.dress='obedient'>>">>] <<hint $options "This would match with an obedient style.">><br>
[<<moveTo "event_feminization_bride_3" "Try on the over the top fancy dress." 300 "<<set $scene.dress='money'>>">>] <<hint $options "This would match with a money style.">><br>
[<<moveTo "event_feminization_bride_3" "Try on the modern wedding dress." 300 "<<set $scene.dress='voluntary'>>">>] <<hint $options "This would match with a voluntary style.">><br>
[<<moveTo "event_feminization_bride_3" "Try on the bondage wedding dress." 300 "<<set $scene.dress='forced'>>">>] <<hint $options "This would match with a forced style.">><br>
[<<moveTo "event_feminization_bride_3" "Actually... the whole wedding-industrial complex is kind of dumb." 300 "<<set $scene.dress='strict'>>">>] <<hint $options "This would match with a strict style.">><br>
[<<moveTo "event_feminization_bride_3" "You were thinking something more... pink?" 300 "<<set $scene.dress='enthusiast'>>">>] <<hint $options "This would match with an enthusiast style.">><br>
<<if $scene.dressId>>
<<if $player.money.total >= setup.getItemObj($scene.dressId).price>>
[<<moveTo "event_feminization_bride_4" "Purchase this dress." 300>>]<br>
<<else>>
[@@.link_locked;You cannot afford this dress.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_feminization_bride_leave" "Change into your street-clothes and leave." 300>>]<br>/*#
#desc: try on wedding dress
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<if $scene.setId>>
<<removeItemSet $scene.setId>>
<<deleteItemSet $scene.setId>>
<</if>>
<<switch $scene.dress>>
<<case 'forced'>>
<<set $scene.dressId = 'wedding_dress_forced'>>
<<set $scene.setId = 'forced_bride'>>
<<case 'money'>>
<<set $scene.dressId = 'wedding_dress_money'>>
<<set $scene.setId = 'money_bride'>>
<<case 'obedient'>>
<<set $scene.dressId = 'wedding_dress_obedient'>>
<<set $scene.setId = 'obedient_bride'>>
<<case 'voluntary'>>
<<set $scene.dressId = 'wedding_dress_voluntary'>>
<<set $scene.setId = 'voluntary_bride'>>
<<case 'strict'>>
<<set $scene.dressId = 'wedding_dress_strict'>>
<<set $scene.setId = 'strict_bride'>>
<<case 'enthusiast'>>
<<set $scene.dressId = 'wedding_dress_sissy'>>
<<set $scene.setId = 'sissy_bride'>>
<</switch>>
<<set $scene.price = setup.getItemObj($scene.dressId).price>>
<<addItemSet $scene.setId>>
<<wearItemSet $scene.setId>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Bridal Section">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
<<switch $scene.dress>>
<<case 'forced'>>
You, with some help from <<=setup.getNpcName("npc_shopkeeper","first")>>, manage to get strapped and buckled into the boots and rest of the bondage wedding dress.<br>
<br>
Helplessly bound, with your chin raised proudly high by the posture collar, you look in awe at your reflection. The large gag strapped between your lips might seem a hurdle for a wedding... if it was not for the glittering "I DO" adorning the front.<br>
<br>
"@@.npc_shopkeeper;Now isn't that just the perfect slave bride? Ha! Makes me want to claim you for myself — but instead I will just wish you luck in finding an owner worthy of your submissive beauty!@@"
<<case 'money'>>
You boggle at the number of pieces to the fancy dress, crinolines and corsets and petticoats and more. At the end of it all you have fabric extending out from your narrow waist further than your arms can reach — and that doesn't even get to the train behind you.<br>
<br>
You step carefully and turn in the mirror to marvel at yourself, feeling very much the royal princess.<br>
<br>
"@@.npc_shopkeeper;Gorgeous! Like something out of a fairytale! May you find your prince — or princess — Charming and live happily ever after!@@"
<<case 'obedient'>>
You try on the simplest of the four wedding dresses. Despite its basic styling, it is still gorgeous — proving that the classics are classic for a reason.<br>
<br>
The shopkeeper quietly hums a few bars of "Here Comes the Bride" with a smile. "@@.npc_shopkeeper;Don't you look just perfect! Just a <<priest>> and a partner away from the happiest day of your life!@@"
<<case 'voluntary'>>
You try on the slinky, sexy wedding gown. Admiring your reflection you decide that, while it is certainly provocative... it is also just lovely, shouting beauty, femininity and confidence in equal measure.<br>
<br>
The shopkeeper grins. "@@.npc_shopkeeper;Whew! A dress like that, well... I can see why there's the tradition for the <<if $options.fem>>spouse<<else>>groom<</if>> to not see <<his>> bride until the ceremony! It'd be quite the feat to resist ravishing you at first sight!@@"
<<case 'strict'>>
You scoff at the options before you, explaining that, really, the whole tradition of purchasing over the top wedding dresses is stupid.<br>
<br>
The shopkeeper sniffs in annoyance. "@@.npc_shopkeeper;Well! If you have such a dim view of things... how about this, hmm?@@"<br>
<br>
Rather than a dress she presents you a new option... and far from a "decent" one — more a mix of a sheer, harem outfit with obvious bondage, trails of see-through white fabric flowing between collar and cuffs in an outfit that, at best, hints at the concept of a wedding dress, while all but shouting "slave."
<<case 'enthusiast'>>
You flutter your eyelashes and say that you were thinking of something a bit more... pink.<br>
<br>
The shopkeeper grins. "@@.npc_shopkeeper;Oh you are just <<if $fetish.sissy>>a totally adorable sissy<<else>>adorable<</if>>! And I have JUST the thing, one moment!@@"<br>
<br>
She ducks out for a few seconds and comes back with a large, very pink box from which she reveals the most adorable dress you've ever seen. Swiftly dressed, you find yourself looking at a pinky, frilly vision of <<if $fetish.sissy>>sissified<<else>>feminised<</if>> perfection, complete with mincing ribbons!
<<default>>
ERROR unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
The dress costs <<=$scene.price>> cr.<br>
<br>
<<include "weddingDressChoices">>
</div>/*#
#desc: select wedding dress, sec_style unlock
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.price)`>>
<<switch $scene.dress>>
<<case 'forced' 'strict'>>
<<setThreshold 'feminization' 'bride_feminization' 'bound_bride'>>
<<case 'money'>>
<<setThreshold 'feminization' 'bride_feminization' 'beautiful_bride'>>
<<case 'obedient' 'enthusiast'>>
<<setThreshold 'feminization' 'bride_feminization' 'blushing_bride'>>
<<case 'voluntary'>>
<<setThreshold 'feminization' 'bride_feminization' 'brazen_bride'>>
<</switch>>
<<if !$player.sec_style.clothing.bride>>
<<if $scene.enthusiast>>
<<set $player.sec_style.clothing.bride = "enthusiast">>
<<else>>
<<set $player.sec_style.clothing.bride = $scene.dress>>
<</if>>
<</if>>
<<removeAllClothing>>
<<useClothSetPop 'tmp'>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('bridal')>>
<<removeRandomEvent 'mall_interior' 'bride_intro'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Bridal Section">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_shopkeeper","first")>> boxes up your purchase with a smile.<br>
<br>
<<if $scene.dress == $scene.style>>
"@@.npc_shopkeeper;Such a beautiful selection, and so perfectly you! Of course we will gladly sell you others if you wish. Who says no to more beautiful dresses, right?@@"
<<else>>
"@@.npc_shopkeeper;Such a beautiful selection, if a bit surprising, to be honest. Still, it would not be the first time you surprised me, and you can always come back to buy others, if you wish.@@"
<</if>>
<br><br>
You pack the wedding dress up and get ready to head home. With the chaos still going on in your life marriage seems a ways off, yet... though, if you were to get married this is just the sort of thing you'd like to wear. You swoon slightly at the thought of being the lucky bride...<br>
<br>
<<printThought "As fun of a fantasy as that is... I should really get past this craziness at work before I even contemplate a wedding.">><br>
<br>
[<<moveTo "room_bedroom_wardrobe_1" "Head home and put the dress away in your wardrobe." 300 "<<itemToWardrobe '$scene.dress'>>">>]
</div>/*#
#desc: leave without buying wedding dress
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<if $scene.setId>>
<<removeItemSet $scene.setId>>
<<deleteItemSet $scene.setId>>
<</if>>
<<removeAllClothing>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_apparel_store'>> Bridal Section">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_fashion_store_fitting_room.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName("npc_shopkeeper","first")>> for her time as you change back into your street-clothes and head on your way.<br>
<br>
"@@.npc_shopkeeper;Anytime, dear! And when you make your decision, or want to compare things again, you just head on back, I'll be here!@@"<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: ask about bridal attire enthusiast
#status: FINISHED 0.8.9.0
#*/
<<set $player.inside = false>>
<<storeVisual $player $npc_shopkeeper>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_lingerie_shop' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_shopkeeper","first")>> and ask if she sells wedding gowns?<br>
<br>
She grins wide. "@@.npc_shopkeeper;Ah! Such a beautiful thought. Walking down the aisle, ready to commit ones life to partnership with their love... or loves, I certainly know enough joyful polygamists to say one does not need to limit themselves! In answer to your question, we do, in fact. Come with me!@@"<br>
<br>
[<<moveTo "event_feminization_bride_2" "Follow her." 180 "<<set $scene.tryon=true>><<set $scene.enthusiast=true>>">>]
</div>/*#
#desc: caught changed into male clothing
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 14, 0, false)>>
<<addTaskById 'task_camgirl_strict' _nextDate>>
<<addItem "webcam">>
<<addItem "basic_dildo">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns as you step out of the changing room wearing masculine clothing.<br>
<br>
"@@.npc_psychiatrist;What is this? You were looking so much better when you arrived for your appointment... no... this is backsliding.@@"<br>
<br>
You try to explain but she cuts you off. "@@.npc_psychiatrist;Quiet. We have already established that you are a very... poor judge of your own needs, after all, look at the failure that was your life before you came into my office.@@"<br>
<br>
She walks towards you and you take a step back. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> may not put off the raw power that <<=setup.getNpcName('npc_manager', 'formal')>> does... but she has already demonstrated the power she wields over you and you hold your breath in fear of what's going to happen next.<br>
<br>
"@@.npc_psychiatrist;I believe the root cause of this vile effort is a lack of confidence in putting yourself out there. Tell me, are you familiar with streaming?@@"<br>
<br>
Her question is almost non sequitor and you nod without even thinking.<br>
<br>
"@@.npc_psychiatrist;Of course you do. I want you to think about the confidence that it takes for those girls to put themselves out there, on camera, for hours at a time. Enduring observation and occasional abuse, yet continuing to play on... yes, that is EXACTLY the type of confidence-booster you need.@@"<br>
<br>
She is leaning in, centimetres away from your face when she spins and returns to her desk, pulling a new-in-box webcam out of a drawer. "@@.npc_psychiatrist;Here, this should get you started, comes with a free Camgirl Union Membership. By our next session I expect you to have registered an account and done some streaming so we can discuss what a boon showing off for strangers can be... and remember, the last thing a streamer wants to be is... dull.@@" She winks, and places a dildo down next to the webcam.<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'Time for your session...' 180 "<<include 'startPsychSession'>>">>]
</div>/*#
#desc: failed to start camgirling as instructed
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'psychiatrist_endless_appointment_1'>>
<<if !$scene.camgirlStrict && $scene.beforetasklocation.last() != "room_psychiatrist_lobby">>
<<initRoom>>
<<moveTo "event_psychiatrist_apointment_failed">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You enter the office for your therapy session and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> frowns. "@@.npc_psychiatrist;So, I see you utterly failed in my take-home instruction. You know, the one to put in some practice streaming to help build up your confidence?@@" She shakes her head. "@@.npc_psychiatrist;You are quite the troublesome patient, always fighting against my instructions, which are, always given for your own good... in this case, well... if you will not stream on your own, then more extreme measures must be taken.@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> snaps her fingers and someone grabs you from behind, a strong guard holding you tight and then dragging you along as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> leads the way to a side room.<br>
<br>
[<<moveTo "event_secretary_style_camgirl_strict_2" "Continue..." 180>>]
</div>/*#
#desc: forced to start camgirling
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "ball_gag_red">>
<<wearItem "ball_gag_red" true>>
<<addItem "leather_wrist_cuffs">>
<<wearItem "leather_wrist_cuffs" true>>
<<applyExperience 'bondage' 12 'very' $EXPOSED>>
<<applyExperience 'anal' 12 'very' $EXPOSED>>
<<set $scene.camgirlStrict = false>>
<</if>>
<<set $player.location to "Camgirl Booth?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/camgirl_booth.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
More a filming booth than anything remotely medical there are a number of cameras surrounding a saddle type sex machine with a large dildo rising up from the centre of the seat.<br>
<br>
Without giving you a centimetre of freedom the guard strips you naked and forces you down onto the "chair," the dildo sliding into your rear as straps bind your wrists and hold you in place. <<=setup.getNpcName('npc_psychiatrist', 'formal')>> adds the final touch by pulling a gag between your lips before standing over you to explain.<br>
<br>
"@@.npc_psychiatrist;So, since you refused to do any streaming on your own, we are going to take things to the next level. You will be logging on to a fun site called "Cum Roulette" — you'll be randomly matched up against another contestant in a similar situation to yourself, along with an audience who has been granted control of your devices. The goal is to prove that YOU are the one who deserves orgasm, of course the more you can get off on being exposed and teased by strangers, well, all games have their tactics, hmmm?@@"<br>
<br>
You struggle uselessly in your bonds as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> steps out of frame and taps away at the controls. "@@.npc_psychiatrist;Just waiting for matchmaking now, get ready for your debut!@@"<br>
<br>
[<<moveTo "event_camgirl_cumtest_first_1" "Struggle, maybe you can get free or something." 180 "<<set $scene.struggle=true>>">>]<br>
[<<moveTo "event_camgirl_cumtest_first_1" "The only way out is through, get ready to impress your viewers..." 180 "<<set $scene.struggle=false>>">>]
</div>/*#
#desc: failed to start camgirling as instructed
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Camgirl Booth">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/camgirl_booth.png" "camgirl_opponent">>
<div id="invframe" class="scrolltext">
You hear a passionate moan that you realise is what passes for an alarm chime in this perverted app as a screen in front of you kicks on. You find yourself looking at a buxom woman bound in a position similar to your own, with a chat bar along the side showing over half a dozen watchers are here already. From the sweat glistening off her breasts and her glazed expression you'd guess this isn't her first round, and you wonder how long she's been trying to win an orgasm.<br>
<br>
<<if $scene.struggle>>
Your struggles seem to have already drawn amusement, and the dildo you're sitting on begins to vibrate as your opponent immediately aches her back to thrust out her tits and let out an exaggerated moan in an attempt to re-capture the crowds approval... though given her expression and the way she's moaning through her gag you think you started this round already with a substantial disadvantage.
<<else>>
Your opponent is already writhing and jiggling her tits to garner the crowds attention and you respond in kind,
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
glad that you have massive jugs even larger than her own.
<<case 'large'>>
though it seems your breasts are about the same size as hers and the crowd struggles to decide.
<<case 'medium'>>
though the crowd seems swung towards her larger breasts.
<<case 'small'>>
though your small breasts fail to sway the crowd away from your more endowed opponent.
<<case 'none'>>
though your flat chest is far less enticing than your opponent's bouncing bosom.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
The dildo you're sitting on begins to vibrate... but your opponent is already moaning through her gag and you'll have to do something special to catch up.
<</if>>
<br><br>
[<<moveTo "event_camgirl_cumtest_first_2" "Try to re-gain the crowds approval." 180 "<<set $scene.perform=true>>">>]<br>
[<<moveTo "event_camgirl_cumtest_first_2" "Reject this contest, you aren't some trained slut who will perform for strangers!" 180 "<<set $scene.perform=false>>">>]
</div>/*#
#desc: camgirling strict competition lose
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.sex.camgirl = "strict">>
<<addEvent "camgirl_strict_event">>
<<removeItem "ball_gag_red" true>>
<<deleteItem 'ball_gag_red'>>
<<removeItem "leather_wrist_cuffs" true>>
<<deleteItem "leather_wrist_cuffs">>
<<useClothSetPop "tmp">>
<</if>>
<<set $player.location to "Camgirl Booth">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/camgirl_booth.png" "camgirl_opponent">>
<div id="invframe" class="scrolltext">
<<if $scene.perform>>
Whatever reservations kept you from following <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> instructions to start streaming are discarded as you throw yourself into the moment, wiggling, moaning, writhing... anything you can think of, really as you try to get off... only for your opponent to cry out in climax, your vibrations instantly stopping to leave you panting and desperate as you jerk with a punishingly harsh shock before
<<else>>
You aren't some trained slut who's going to dance for strangers, and you glare at the camera as your opponent eagerly takes advantage to come to a passionate, writhing, screaming-through-her-gag orgasm.<br>
<br>
You watch her pant in recovery as a punishingly harsh shock runs through your body and
<</if>>
people start dropping off the stream.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> steps back into view
<<if $scene.perform>>
with a mocking smile. "@@.npc_psychiatrist;You tried so hard! I think I'll leave you like this... that look of desperation, yes... that should really help put you in the proper head-space for today's session.@@"
<<else>>
with a frown. "@@.npc_psychiatrist;Very disappointing. Just because you were facing an uphill battle was no reason not to put your all into things. This is the exact sort of mental resilience that a bit of streaming would have helped you practice.@@"
<</if>>
<br><br>
The guard re-appears to remove your bonds and lift you off the sex machine before <<=setup.getNpcName('npc_psychiatrist', 'formal')>> leads you, still naked, back to her office where you find yourself seated and restrained once more...<br>
<br>
[<<moveTo 'event_psychiatrist_1stsession_listofthemes' 'On to your session...' 180 '<<include "startPsychSession">>'>>]
</div>/*#
#desc: camgirl intro strict: locked out
#status: RELEASED 0.8.9.0
#ignore_spell: unclosable
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You sit down at your computer only to be faced with an unclosable Camgirl Union Membership window...<br>
<br>
<<printThought "Now <<=setup.getNpcName('npc_psychiatrist', 'formal')>> hacked my computer? Guess I have to at least register if I'm going to use my machine for anything else...">><br>
<br>
[<<moveTo "event_camgirl_first_1" "Apply for membership in the Camgirl Union." 60 "<<set $scene.style='strict'>>">>]
</div>/*#
#desc: given enthusiast chastity
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cage>>
<<set $player.flags.chastity_style='cage'>>
<<set $scene.newcage = 'c_cage_pink'>>
<<else>>
<<set $player.flags.chastity_style='belt'>>
<<set $scene.newcage = 'chastity_belt_flat'>>
<</if>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set $player.sec_style.submission.chastity = "enthusiast">>
<<applyExperienceToLevel "submission" 5 true>>
<<set $npc_manager.flags.require_chastity = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<include "setLastSeenCage">>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11'
6
'event_psychiatrist_session_chastity_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_punishment'
5
'event_psychiatrist_session_manager_2'
false
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.cage>>
"@@.pc;Cage?@@" You reply nervously, wondering if there's a wrong answer... and still not quite believing
<<else>>
"@@.pc;Belt?@@" You reply, thinking that a cage sounds like it would be less comfortable, though even that thought is a bit weird and you still can't quite believe
<</if>>
that this is actually happening.<br>
<br>
"@@.npc_manager;<<if $scene.cage>>Cage<<else>>Belt<</if>> it is!@@" She replies with a delighted smile as she reaches into one of her desk drawers.<br>
<br>
You look nervously at the device —
<<if $scene.cage>>
a seemingly too-small pink contraption that, as cages go, seems fairly... unintimidating?
<<else>>
a sleek steel contraption that reminds you more than anything of a metallic thong.
<</if>>
<br><br>
Though part of you is afraid, you find yourself stepping closer, picking the device up in your hands as <<=setup.getNpcName("npc_manager","formal")>> patiently looks on.<br>
<br>
"@@.npc_manager;Come on, dear <<if $scene.cage>>just slip it on,<<else>>just wrap it around your waist,<</if>> lock it up and you will be nice and ready to begin your work...@@"<br>
<br>
You nod, scared... but also excited, wondering if you should turn away, but too afraid to ask <<=setup.getNpcName("npc_manager","formal")>> to turn around.<br>
<br>
Your excitement proves to be something of a challenge, but <<=setup.getNpcName("npc_manager","formal")>> is right there with an ice pack to help you get back under control. "@@.npc_manager;Normally I might offer some additional help... but this is your first day, after all, and we have really only just met...@@"<br>
<br>
<<printThought "Wait... is she saying she'd normally what... give me a handjob? What on earth—?">><br>
<br>
Your brain may be confused, but you focus on the task at hand, struggling for a few moments as <<=setup.getNpcName("npc_manager","formal")>> watches on in amusement, before softly instructing you on the process.
<<if $scene.cage>>
"@@.npc_manager;The ring goes around your base, good, good, then slide into the chamber and bring it together...@@"<br>
<br>
You do as she instructs, her voice almost sensual, but with a firm through-line that is impossible to disobey as you slip the ring down to your base and get your <<getWordMyPenis false>> into its new pink prison.
<<else>>
"@@.npc_manager;Start with the belt, then bring the strap up between your legs...@@"<br>
<br>
You do as she instructs, her voice almost sensual, but with a firm through-line that is impossible to disobey as you wrap the belt around your waist before pulling the crotch piece into position and sliding your <<getWordMyPenis false>> into its new cylindrical prison.
<</if>>
<br><br>
Your heart skips a beat as <<=setup.getNpcName("npc_manager","formal")>> reaches down, her fingers centimetres from your newly imprisoned <<getWordMyPenis false>> as she turns a key and the soft click of the lock seals your fate.<br>
<br>
"@@.npc_manager;There, all ready to focus on work. And, with that, I shall let you get to it. Do enjoy your day. I know I will, now that I again have a dutiful <<if $fetish.sissy>>SISSI <</if>>Secretary to keep on top of matters.@@"<br>
<br>
She smiles and places the key in a small dish at the edge of your desk. "@@.npc_manager;For now, I shall leave the key here, and let you take it home at the end of the day... provided you are behaved.@@"<br>
<br>
[<<moveTo "event_enthusiast_permanent_key_1" "Say you don't want the key back." 60 "<<set $scene.fromInspection=true>>">>]<br>
[<<moveTo "event_enthusiast_chastity_2" "Continue." 60>>]
</div>/*#
#desc: work after enthusiast chastity
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.require_chastity = true>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You aren't quite sure how your clothes get back on your body, but they do, as you find yourself sitting at your desk, unable to ignore the inescapable, rigid presence of your new <<if $scene.cage>>cage<<else>>belt<</if>>.<br>
<br>
<<printThought "What the hell type of job is this?">> You ask to no-one in particular, as your computer dings with a message and you turn to distract yourself with work.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start working." 60 "<<set $player.work.nowWorking = true>><<set $player.work.style = 'normal'>><<set $player.work.startTime = $now>><<set $scene.pricicelyOnTime = false>>">>]
</div>/*#
#desc: enthusiast chastity key request
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.fromInspection>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fromInspection>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
You reply that, actually... you don't want her to give you the key back at all.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> appears surprised for a moment, but continues on smoothly. "@@.npc_manager;Addicted to chastity so soon? That must be some sort of record! Now, normally I would say that things need to wait until you are a fully qualified <<if $fetish.sissy>>SISSI <</if>>Secretary... but enthusiasm of this sort, well... it is my duty to support it, and so I think we can make a little exception. I would be delighted to be your permanent keyholder, but I want to make sure you know exactly what you are asking for. If we take this step it means that you will never be getting this key back, and will remain securely locked at all times unless I, or a delegate to whom I have granted approval, decides to grant you a temporary release. Emphasis on temporary — once whatever business at hand is attended to, that <<if $fetish.sph>>little <</if>>thing of yours WILL return to being locked up and secured.@@"<br>
<br>
[<<moveTo "event_enthusiast_permanent_key_2" 'Yes, that is exactly what you want.' 60 "<<set $scene.surrender_key=true>>">>]<br>
[<<moveTo "event_enthusiast_permanent_key_2" 'No, that is too much.' 60 "<<set $scene.surrender_key=false>>">>]
</div>/*#
#desc: enthusiast chastity key
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.surrender_key>>
<<set $player.sec_style.submission.permanent_key = "enthusiast">>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_other_keyholder'
0
'theme_manager_discuss_other_keyholder_1'
true
>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<setThreshold 'submission' 'submissive_secretary' 'key_permanent'>>
<<include "addMilkingTopic">>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<if $currentTasks.hasOwnProperty("manager_first_morning_inspection_task")>>
<<deleteTask "manager_first_morning_inspection_task">>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<if $scene.fromInspection>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fromInspection>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.surrender_key>>
Your heart races as you nod, confirming firmly that yes, you wish to remain permanently locked, with <<=setup.getNpcName("npc_manager","formal")>> retaining full possession and control of your key.<br>
<br>
"@@.npc_manager;Very well. I promise to take very good care of this responsibility and you... well, your enthusiasm means that we shall be keeping YOU very good, very good indeed.@@"<br>
<br>
Your heart does cartwheels in your chest as you curtsy in obedience and <<=setup.getNpcName("npc_manager","formal")>> dismisses you from her office.
<<else>>
Though <<=ps(setup.getNpcName("npc_manager","formal"))>> words send a forbidden thrill through your body, the extent of what she describes is a bit too much. <<if !$player.flags.firstWorkDayDone>>After all, you've known her less than 24 hours! <</if>>It would be foolish to give yourself over to her, no matter how seductively dominant she may be.<br>
<br>
You give your response and <<=setup.getNpcName("npc_manager","formal")>>
<<if $scene.fromInspection>>
You give your response and <<=setup.getNpcName("npc_manager","formal")>> merely smiles. "@@.npc_manager;It is a big commitment — and one not to be rushed in to. Thinking it over is the prudent choice, and a good sign that you have the calm judgement required of one I your position. Speaking of position, well... best for you to be getting to work, now. I will summon you if I have need of your services.@@"
<<else>>
nods. "@@.npc_manager;It is a big commitment — and one not to be rushed in to. Thinking it over is the prudent choice, and a good sign that you have the calm judgement required of one I your position.@@"<br>
<br>
Your heart is still thumping as <<=setup.getNpcName("npc_manager","formal")>> returns to her office.
<</if>>
<</if>>
<br><br>
<<if $scene.fromInspection>>
You fix your clothes and return to your desk, taking several minutes to catch your breath and try to adjust to the ever-present firm grasp of your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> as you start poking around your computer.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start working." 60 "<<set $player.work.nowWorking = true>><<set $player.work.style = 'normal'>><<set $player.work.startTime = $now>><<set $scene.pricicelyOnTime = false>>">>]
<<else>>
<<if setup.getUTCDay($now) == 5>>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' 'Continue.' 60>>]
<<else>>
[<<moveTo 'room_office_sissy_secretary_work_evening' 'Continue.' 60>>]
<</if>>
<</if>>
</div>/*#
#desc: ask about chastity trial programme
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_sexstore_clerk.flags.chastity_quest.base_payment = $player.money.base_rent + 100>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Pointing to the sign near the cash register, you ask about the "paid trial programme." <br>
<br>
The clerk smiles and explains. "@@.npc_sexstore_clerk;Ah yes, well, we are not just a retail shop, we also do in-house development as well as collaborations. That means that, from time to time, we are looking for testers for new products. Today we have a new line of chastity devices that we are looking to get feedback on — we are paying <<=$npc_sexstore_clerk.flags.chastity_quest.base_payment>> credits for anyone who is willing to be locked up in it for a week.@@"<br>
<br>
As <<he npc_sexstore_clerk>> talks, <<he npc_sexstore_clerk>> places a pair of devices on the counter.
<<if setup.checkItemOwned("c_cage_advanced") || setup.checkItemOwned("chastity_belt_adv") || setup.checkItemOwned("chastity_belt_adv_ultra")>>
You immediately recognise the design and remark that you have one just like it. <<He npc_sexstore_clerk>> frowns and shakes <<his npc_sexstore_clerk>> head. "@@.npc_sexstore_clerk;Ah, well, in that case, I am afraid that you would not be eligible. They are looking for new test data, not current users, sorry.@@"<br>
<br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]
<<else>>
One looks sort of like a steel jock strap, while the other is a small cage that looks like it would fit over a flaccid cock and balls. You nervously stare at it, mentally picturing how it would feel to have such a smooth crotch<<if $player.body_ref.penis>>, or how your <<getWordMyPenis>> might fit in the curved, clear tube, with a sturdy ring locking everything in place<</if>>.<br>
<br>
"@@.npc_sexstore_clerk;As you can see, the designs are nothing revolutionary, but we have fabricated them out of new, cutting-edge materials to make it more comfortable and hygienic for long-term wear. So, what do you think? You prepared to aid in advancing the state of technology?@@"<br>
<br>
You continue to stare at the device. The prospect of locking yourself up seems pretty extreme, but that amount of money would cover more than a month's rent...<br>
<br>
<<printThought "What has my life come to that I'm seriously considering doing something like this?">><br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_fetstore_chastity_offer_2" "Accept the offer." 60>>]<br>
<<else>>
<<if setup.isCage()>>
[@@.link_locked;Unfortunately you are already caged. If you wish to join the study, you need to return uncaged.@@]<br>
<<else>>
[@@.link_locked;Unfortunately you are already wearing a chastity belt. If you wish to join the study, you need to return unencumbered.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_fetstore_chastity_offer_3" "Decline the offer." 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: chastity trial device style
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
The clerk smiles
<<if $player.body_ref.penis && $fetish.chastity_penis && $player.body_ref.vagina && $fetish.chastity_vag>>
knowingly. "@@.npc_sexstore_clerk;Given your anatomy I can see why you are looking for the cutting edge in chastity, a hole AND a pole... well it makes for quite the excitement, and distraction, but to properly lock both bits, well... fortunately I have JUST the device.@@"<br>
<br>
The clerk places an intimidating belt device, complete with penis sheath<<if $player.body_ref.balls>> and testicle isolation chambers<</if>>.<br>
<br>
[<<moveTo "event_fetstore_chastity_offer_3" 'Yes, this is what you want to "try."' 60 "<<set $scene.accept=true>>">>]<br>
<<else>>
wide. "@@.npc_sexstore_clerk;So which shall it be? Both options are equally featured and secure it just comes down to which style you prefer — do you like a nice smooth profile locking you away, or do you prefer to have your caged thing on display yet out of reach?@@"<br>
<br>
[<<moveTo "event_fetstore_chastity_offer_3" "Opt for the belt style device." 60 "<<set $scene.accept=true>><<set $scene.cage=false>>">>]<br>
<<if $player.body_ref.penis && $player.body_ref.balls>>
[<<moveTo "event_fetstore_chastity_offer_3" "Opt for the cage." 60 "<<set $scene.accept=true>><<set $scene.cage=true>>">>]<br>
<<elseif $player.body_ref.penis>>
[@@.link_locked;I can't wear a cage — with no balls it would just fall off!@@]<br>
<<else>>
[@@.link_locked;I can't wear a chastity cage — I have nothing to cage!@@]<br>
<</if>>
<</if>>
[<<moveTo "event_fetstore_chastity_offer_3" "On second thought maybe you shouldn't do this." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept/not to be locked in chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept && setup.changedGenitals($player,$npc_manager, true) == "">>
<<if !$player.sec_style.submission.chastity>>
<<set $player.sec_style.submission.chastity = "money">>
<<setThreshold 'bondage' 'other_bondage' 'cage_first'>>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<</if>>
<<setThreshold 'submission' 'voluntary_submission' 'cage_trial'>>
<<set $scene.lowerHorny = $player.timebased.horny > 50>>
<<if $scene.lowerHorny>>
<<set $player.timebased.horny = 30>>
<<applyExperience 'humiliation' 13 'very' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 10 'very' $SEEN_STRANGER>>
<</if>>
<<set $npc_sexstore_clerk.flags.chastity_quest.start = true>>
<<if $player.body_ref.penis && $fetish.chastity_penis && $player.body_ref.vagina && $fetish.chastity_vag>>
<<set $player.flags.chastity_style='belt'>>
<<addItem "chastity_belt_adv_ultra">>
<<wearItem "chastity_belt_adv_ultra" true>>
<<manipulateItem "chastity_belt_adv_ultra" "lock" true>>
<<elseif $scene.cage>>
<<set $player.flags.chastity_style='cage'>>
<<addItem "c_cage_advanced">>
<<wearItem "c_cage_advanced" true>>
<<manipulateItem "c_cage_advanced" "lock" true>>
<<else>>
<<set $player.flags.chastity_style='belt'>>
<<addItem "chastity_belt_adv">>
<<wearItem "chastity_belt_adv" true>>
<<manipulateItem "chastity_belt_adv" "lock" true>>
<</if>>
<<applyExperience 'bondage' 8 'very' $SEEN_STRANGER>>
<<applyExperience 'submission' 9 'very' $SEEN_STRANGER>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 30)>>
<<set _nextDate = setup.getNextDayOfWeek(_nextDate, 6, 9, 30, true)>>
<<addTaskById 'task_chastity_trial' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Taking a deep breath, you nod and say that you would like to enrol in the chastity trial. The clerk nods with a trace of a smile, pushing a single sheet of paper across the counter for you to sign.<br>
<br>
<<if setup.changedGenitals($player,$npc_manager, true) == "">>
Given your recent history, you are actually a bit shocked at the simple brevity of the agreement. In simple, straightforward language it states that you are agreeing to be locked for one week in exchange for <<=$npc_sexstore_clerk.flags.chastity_quest.base_payment>> credits, with your only obligations to provide feedback and to not damage the device whilst it is in your care. "@@.npc_sexstore_clerk;Well, it says one week, but the post-trial debriefing takes a bit of time, so we'll run it a bit longer — until next Saturday, I think.@@"<br>
<br>
You sign and the clerk walks around the counter, leading you to the changing room where <<he npc_sexstore_clerk>> hands you the device and talks you through how to "install" it.<br>
<br>
<<if $scene.lowerHorny>>
You blush in humiliation at the fact that your erection is getting "in the way" but <<he npc_sexstore_clerk>> remains the consummate professional, handing you a cold pack that allows you to get things under control and "situated."
<</if>>
Though the clerk is quite professional, there's no getting around that the whole thing is a bit humiliating.
<<if $scene.cage>>
Fortunately you easily slip into the smooth chastity tube and it locks closed with a soft click.
<<else>>
Using some sort of high-tech shaping device <<he npc_sexstore_clerk>> adjusts the waist and crotch pieces to match your exact measurements before wrapping it around you and locking it closed with a soft click.
<</if>>
<br><br>
"@@.npc_sexstore_clerk;No pinching or any discomfort?@@" <<he npc_sexstore_clerk>> asks as you wiggle a bit, adjusting to the slight weight and the strange feeling of being enveloped, oddly you feel yourself <<if $player.body_ref.penis>>swelling<<else>>moistening<</if>> slightly within the new prison as if in excitement? No, probably just your body adjusting to things.<br>
<br>
You finally nod to confirm that everything is fine and <<he npc_sexstore_clerk>> nods, taking the key and walking away as you fix your clothes. "@@.npc_sexstore_clerk;Very good, and congratulations. I look forward to seeing you a week from Saturday. I will give you a call to remind you when the trial is up so you can come in to be unlocked.@@"<br>
<br>
Gingerly taking a step, you are a bit surprised at how comfortable the device is. While you doubt you will ever forget it's there it does not seem to restrict your movement. Well, it doesn't restrict you outside the obvious of it preventing access to your <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>>private bits<</if>>.
<<else>>
You skim the paperwork and are about to sign when your sight catches on something mentioning "recent surgery." You bring up your recent procedure to the clerk and <<he npc_sexstore_clerk>> shakes <<his npc_sexstore_clerk>> head.<br>
<br>
"@@.npc_sexstore_clerk;Unfortunately the security of the device, combined with the chance, however remote, of post-surgery complications... well, I am afraid I cannot enrol you in the trial at this time. Perhaps in a few days, once your body has had a little more time to adjust to its new state.@@"
<</if>>
<<else>>
"@@.npc_sexstore_clerk;Well, if you ever change your mind, do feel free to come back, we want to get plenty of testing in before we do a full product roll-out.@@"<br>
<br>
You nod and state that you will consider it as <<he npc_sexstore_clerk>> puts the demo device away and you step back from the counter.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore" "Return to the store." 30>>]
</div>/*#
#desc: called to inform chastity trial is finished
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if !(setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5)>>
<<if $now.getUTCHours() < 12>>
<<set _nextDate = setup.setNextDate($now, 0, 19, 0)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 1, 19, 0)>>
<</if>>
<<addTaskById 'task_chastity_trial' _nextDate>>
<<set $npc_sexstore_clerk.flags.chastity_quest.overage+=1>>
<<set $npc_sexstore_clerk.flags.chastity_quest.finished = true>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone rings with a number you do not recognise.<br>
<br>
<<if $npc_sexstore_clerk.flags.chastity_quest.overage > 0>>
"@@.npc_sexstore_clerk;Hello, <<=$player.first_name>> <<=$player.last_name>>? Yes, this is <<=setup.getNpcName('npc_sexstore_clerk', 'formal')>> from <<printShopName 'mall_sexstore'>> again. I suppose you have been a bit too busy to come in — or maybe you just enjoy being in chastity too much? I will go ahead and extend your trial period a bit longer — more data is not bad, after all. Either way if you could please drop by to conclude your trial sometime today that would be wonderful. We cannot unlock you or give you your payment until you do.@@"
<<else>>
"@@.npc_sexstore_clerk;Hello, <<=$player.first_name>> <<=$player.last_name>>? Yes, this is <<=setup.getNpcName('npc_sexstore_clerk', 'formal')>> from <<printShopName 'mall_sexstore'>> informing you that your chastity trial period ends today. I will go ahead and extend your trial period a bit longer — more data is not bad, after all. Please drop in any time to be released and paid for your services.@@"
<</if>>
<br><br>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
Mindful of the <<=setup.getItemTypeName("cage")>> locked onto you, you explain that you can no longer participate in the chastity trial.<br>
<br>
"@@.npc_sexstore_clerk;Ah, that would explain things. I saw on the monitoring that your device had been detached... I hoped it was a mere software glitch, but it would seem that... well, no matter, the point is that the vaunted security the device is meant to provide has been disproven. Thank you for your time, you may keep whatever is left of the prototype, but I am afraid I cannot pay you for successfully completing the trial.@@" <<He npc_sexstore_clerk>> hangs up.
<<else>>
You thank <<him npc_sexstore_clerk>> for the reminder.
<</if>>
<br><br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and resume what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: ask to finish chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You approach the counter and ask the clerk to conclude the chastity trial.<br>
<br>
<<if $npc_sexstore_clerk.flags.chastity_quest.finished || setup.daysToDate($now, setup.getTaskDueDate('task_chastity_trial')) <= 0>>
<<if $npc_sexstore_clerk.flags.chastity_quest.overage > 1>>
"@@.npc_sexstore_clerk;Finally made it in? I ought to charge you for the extra time of keyholder service, but I'll let it slide.@@"
<<else>>
"@@.npc_sexstore_clerk;Ah, welcome back, eager to be out of your <<if setup.isCage()>>cage<<else>>belt<</if>>, hmm?@@"
<</if>>
<br><br>
Rooting around for a moment behind the counter, <<he npc_sexstore_clerk>> comes up with a key and a pile of credits.<br>
<br>
"@@.npc_sexstore_clerk;So, any issues during the trial, any discomfort?@@"<br>
<br>
You shake your head. To your slight surprise the <<if setup.isCage()>>cage<<else>>belt<</if>> really was quite comfortable to the point that you sometimes even forget it was even there.<br>
<br>
"@@.npc_sexstore_clerk;Great, great. So I can offer you two options. Either I give you your key and payment as agreed or you can volunteer for a follow-up test to gather some additional data in the process of unlocking you. You will get your payment and the key either way, and be allowed to keep the <<if setup.isCage()>>cage<<else>>belt<</if>> as well, but it would really help us develop better products and procedures in the future if you were willing to stick around for a bit. Though I will warn you the procedure may be considered somewhat... intense.@@"<br>
<br>
<<printThought "More intense than being locked in a chastity device for a week?">><br>
<br>
[<<moveTo "event_fetstore_chastity_finish_bonus_1" "Just take the key." 60 "<<set $npc_sexstore_clerk.flags.chastity_quest.finished = true>><<completeTask 'task_chastity_trial' $now true>><<set $scene.bonus=false>><<addCredits $npc_sexstore_clerk.flags.chastity_quest.base_payment>>">>]<br>
<<set _backup = $currentTasks.task_chastity_trial>>
<<deleteTask "task_chastity_trial">>
<<if setup.hasFreeTime($now, $player, $currentTasks, 3600)>>
[<<moveTo "event_fetstore_chastity_finish_bonus_1" "Opt for the bonus offer." 60 "<<set $npc_sexstore_clerk.flags.chastity_quest.finished = true>><<completeTask 'task_chastity_trial' $now true>><<set $scene.bonus=true>><<addCredits $npc_sexstore_clerk.flags.chastity_quest.base_payment>>">>]
<<else>>
[@@.link_locked;You don't have free time right now.@@] <<hint $options "Rewind and come back some other time when you don't have anything scheduled.">>
<</if>>
<<set $currentTasks.task_chastity_trial = _backup>>
<<else>>
<<set _daysTo = setup.daysToDate($now, setup.getTaskDueDate('task_chastity_trial'))>>
You ask to be released from the chastity device only for the clerk to check the computer and shake <<his npc_sexstore_clerk>> head.<br>
<br>
"@@.npc_sexstore_clerk;I must apologise, but the agreement was for a minimum of a full week of chastity, what with scheduling and such you have another <<if _daysTo == 1>>day<<else>> <<=_daysTo>> days<</if>> left to go. If I let you out now, you will forfeit the entire payment and would have to start over from scratch if you wanted to do another trial, are you sure that's what you want?@@"<br>
<br>
[<<moveTo "event_fetstore_chastity_finish_premature" "Nod and say you want out now." 60 "<<set $scene.release=true>>">>]<br>
[<<moveTo "event_fetstore_chastity_finish_premature" "Agree to continue the trial." 60 "<<set $scene.release=false>>">>]
<</if>>
</div>/*#
#desc: try to end chastity trial prematurely
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.isCage = setup.isCage()>>
<<if $scene.release>>
<<if setup.isItemEquipped("c_cage_advanced")>>
<<removeItem "c_cage_advanced" true>>
<<deleteItem "c_cage_advanced">>
<<else>>
<<removeItem "chastity_belt_adv" true>>
<<deleteItem "chastity_belt_adv">>
<</if>>
<<completeTask 'task_chastity_trial' $now false>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.release>>
The clerk frowns then roots around behind the counter to come up with a key. "@@.npc_sexstore_clerk;I am very sorry to hear about this, the device is not causing you pain, is it?@@"<br>
<br>
You assure <<him npc_sexstore_clerk>> it is nothing like that as <<he npc_sexstore_clerk>> hands you the key and you dart off to the changing room to get unlocked.<br>
<br>
Feeling the chastity <<if setup.isItemEquipped("c_cage_advanced")>>cage fall from your <<getWordMyPenis false>><<else>>belt fall from your hips<</if>> you release a sigh. Strangely; though you feel hypersensitive now that you are free, your body fails to take advantage of its lack of restriction. If anything, you find yourself feeling less aroused than you did when it was on. You shake your head at that weird thought, fixing your clothes before heading back out and returning the device and key to the clerk.<br>
<br>
"@@.npc_sexstore_clerk;I am sorry things didn't work out, but if you ever want to try again, just let me know.@@"<br>
<br>
You nod and step away from the counter.
<<else>>
Reminded of the money on the line you decide to remain in chastity for the remainder of the trial.<br>
<br>
"@@.npc_sexstore_clerk;Very good.@@" <<He npc_sexstore_clerk>> states with a nod. "@@.npc_sexstore_clerk;And do not worry: these sorts of jitters are perfectly normal. This is why having a stern, but fair, keyholder is such a boon.@@"<br>
<br>
You aren't necessarily sure about that, but you nod politely before thanking <<him npc_sexstore_clerk>> for <<his npc_sexstore_clerk>> time and stepping away from the counter.
<</if>>
<br><br>
[<<moveTo "room_mall_sexstore" "Continue." 30>>]
</div>/*#
#desc: finish chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<set _x = setup.addManagerEndlessTask()>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<<if !$scene.bonus>>
<<addItem "advance_chastity_cage_key">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo "event_fetstore_chastity_finish_bonus_2">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>
The clerk nods and signals for another employee to keep an eye on things before leading you towards a back room.<br>
<br>
"@@.npc_sexstore_clerk;It is very good of you to be willing to help us out like this. I promise that someone like yourself will very much enjoy our little study.@@"<br>
<br>
Closing the door behind, you look around the room; devoid of furniture save for a small shelving unit the room is mostly taken up by what looks like a set with a camera on one side and some chains dangling from the ceiling.<br>
<br>
"@@.npc_sexstore_clerk;Don't worry, the recording is purely confidential to be reviewed for data for the study.@@" <<He npc_sexstore_clerk>> states as <<he npc_sexstore_clerk>> walks towards the camera. "@@.npc_sexstore_clerk;If you could please remove your clothes so we can get started?@@"<br>
<br>
[<<moveTo "event_fetstore_chastity_finish_bonus_1" "Change your mind and just end the trial." 60 "<<set $scene.bonus=false>>">>]<br>
<<if $options.ezchange>>
[<<moveTo "event_fetstore_chastity_finish_bonus_2" "Remove your clothes as instructed." 60 "<<removeAllClothing>>">>]<br>
<<else>>
<<hint $options "You need to get naked to continue!">>
<</if>>
<<else>>
The clerk hands you the key and <<=$npc_sexstore_clerk.flags.chastity_quest.base_payment>> credits, once again thanking you for your time.<br>
<br>
"@@.npc_sexstore_clerk;Enjoy your new freedom... or not! And stop by again to check if we are looking for product testers in the future.@@"<br>
<br>
[<<moveTo "event_chastity_trial_finish_phonecall" "Continue." 30 "<<set $player.cutscene.lockinventory=true>>">>]
<</if>>
</div>
/% position inspired by chastity_trial_release.jpg %//*#
#desc: finish chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "You're all tied up!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<if $scene.bonus>>
<<applyExperience 'bondage' 13 'unbelievable' $SEEN_STRANGER>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.isCage = $scene.cage == "c_cage_advanced">>
<<if $scene.isCage>>
<<removeItem "c_cage_advanced" true>>
<<else>>
<<removeItem "chastity_belt_adv" true>>
<</if>>
<<set $npc_sexstore_clerk.flags.chastity_quest.bonus = true>>
<<else>>
<<addItem "advance_chastity_cage_key">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>
Naked, you shiver slightly as the clerk hands you a pair of padded leather wrist cuffs, helping you wrap them around your wrist with an additional strap hanging down past your palm.<br>
<br>
Suddenly nervous, your hands are raised up above your head and attached to either end of a bar hanging from the ceiling. Before you can object, the clerk has dropped down to your feet, additional cuffs attached to your ankles along with a spreader bar that <<he npc_sexstore_clerk>> adjusts until you're teetering on your toes. Thankful for the padding distributing the weight as you hang helplessly <<he npc_sexstore_clerk>> rises back into your sight and presents you with a large ball gag.<br>
<br>
"@@.npc_sexstore_clerk;Do not be concerned, it is almost time to unlock you, just need to have you fully secured. This is all for your safety and the accuracy of the study. Now if you would kindly open your mouth, we don't want you disturbing our other customers lest they become jealous!@@"<br>
<br>
Tugging at your restraints confirms that you aren't getting free without assistance so you open your mouth and <<he npc_sexstore_clerk>> forces the large ball in place before strapping it tight. A thin line of drool escapes to drip down your chest as you try to look around and keep your balance as you wait for what is going to happen next.<br>
<br>
With a hint of a smile on <<his npc_sexstore_clerk>> otherwise business-like expression, <<he npc_sexstore_clerk>> fetches something from the cabinet, returning with a small spray bottle that <<he npc_sexstore_clerk>> uses to mist your still chastity-encased <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>>puss<</if>>. You gasp as you feel a weird tingling spreading over your groin followed by... nothing.<br>
<br>
You flail a bit, momentarily dangling from your wrists as you try to wiggle your hips, <<if $scene.isCage>>though the cage bounces back and forth against your thighs you can no longer feel it surrounding you<<else>>you strain against the belt you can feel only numbness underneath<</if>> and your eyes go wide in shock.<br>
<br>
"@@.npc_sexstore_clerk;Remain calm,@@" <<he npc_sexstore_clerk>> states in quiet comfort. "@@.npc_sexstore_clerk;This is all part of the study — you are going to be hyper-sensitive once you are out of the <<if $scene.isCage>>cage<<else>>belt<</if>> and we do not want that distracting from the focus of the study. The numbing is only temporary, I promise.@@"<br>
<br>
You're still panting quickly, but there isn't much you can do. Barely able to look down, you watch and listen as <<he npc_sexstore_clerk>> unlocks and removes your <<if $scene.isCage>>cage<<else>>belt<</if>>, <<if $player.body_ref.penis>>your <<getWordMyPenis false>> springing forth, hard and swelled despite the fact you cannot feel it at all<<else>>exposing your dripping cunt<</if>>.<br>
<br>
The whole thing is a bit surreal as you watch <<his npc_sexstore_clerk>> <<if $player.body_ref.penis>>hand wrap around and stroke your <<getWordMyPenis false>><<else>>finger move through your slit<</if>> without feeling the touch at all, it is like watching someone else get a hand-job and you return <<his npc_sexstore_clerk>> calm gaze with a look of confused frustration. "@@.npc_sexstore_clerk;Good, from your reaction I can tell the spray has done its job. Some of our customers use it so that they can avoid any feeling of contact when they are out of chastity, in some cases even being used for full-on coupling, staying hard or wet, but numb the whole time.@@"<br>
<br>
You can only imagine how humiliating and <<if $player.identify_as == "male">>emasculating<<else>>submissive<</if>> that would feel, but <<he npc_sexstore_clerk>> continues on. "@@.npc_sexstore_clerk;Don't worry, I will not be doing anything like that today. No, our study is focused on other ways your body reacts to having been locked up and restricted for a week.@@"<br>
<br>
Once again <<he npc_sexstore_clerk>> moves out of sight, this time circling around behind you.<br>
<br>
[<<moveTo "event_fetstore_chastity_finish_bonus_3" "Continue." 600>>]
<<else>>
You decide that being locked up for a week by a stranger was enough and excuse yourself.<br>
<br>
"@@.npc_sexstore_clerk;I see.@@" <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> states, their tone clearly disappointed. "@@.npc_sexstore_clerk;Well, in that case, I believe our business is concluded.@@" <<He npc_sexstore_clerk>> hands you your payment and the key to your <<if $scene.isCage>>cage<<else>>belt<</if>>. "@@.npc_sexstore_clerk;Thank you again for your participation, you may keep the device, of course.@@"<br>
<br>
[<<moveTo "event_chastity_trial_finish_phonecall" "Continue." 30 "<<set $player.cutscene.lockinventory=true>>">>]
<</if>>
</div>/*#
#desc: fucking machine after chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'anal' 11 'terrible' $SEEN_STRANGER>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("plug")>>
Dangling in your partial suspension you feel fingers trace down between your cheeks before taking a firm grip on the <<=setup.getItemTypeName("plug")>> in your rear.<br>
<br>
"@@.npc_sexstore_clerk;Chaste AND plugged, very good, you really are a perfect test subject.@@" <<He npc_sexstore_clerk>> states<<if !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>> as <<he npc_sexstore_clerk>> gently pulls the plug from your ass<</if>>.
<</if>>
<br><br>
A squirt of warm lubricant moistens your hole and then you feel something pressing up into it.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
Whatever it is that is pressing against your rear is very large. You moan through your gag as it pushes up into you, your body spreading before it as a battering ram thicker than a baseball bat plunges into you.
<<else>>
What feels like a large, hard cock pushes into you as you try to relax to let it slide in.
<</if>>
<br><br>
"@@.npc_sexstore_clerk;I thought you looked like an experienced butt-slut, it appears I was correct in that assessment.@@" The clerk notes as <<he npc_sexstore_clerk>> adjusts the angle of the dildo. You try to catch your breath as you feel something rattling against the spreader bar holding your ankles apart.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
Sensing what is coming, you try to relax as something thin, but phallic, slides up into you.
<<else>>
Your nigh-virgin rear clenches down reflexively. You rise onto your toes, but soon run out of space as something thin and blunt slides into you.
<</if>>
<br><br>
"@@.npc_sexstore_clerk;Hmm, I would have expected your bum to be more experienced. Perhaps some other day I can help you with how to get it properly spread and gaped, but for today I think this toy is a better... fit.@@"<br>
<br>
You try to adjust to your intruder as the clerk fiddles between your legs, the dildo shifting angle slightly followed by something rattling against the spreader bar holding your ankles apart.
<</if>>
<br><br>
"@@.npc_sexstore_clerk;There we go.@@" <<He npc_sexstore_clerk>> states, stepping away and walking back into view. "@@.npc_sexstore_clerk;Do you like the lubricant? It is my own special concoction, very long lasting. You are doing great so far, but now it is time for the test proper.@@"<br>
<br>
<<He npc_sexstore_clerk>> flicks a remote and your anal occupant springs to life. You thrash at the intense sensation <<if $player.body_ref.penis>>drumming against your prostate<<else>>inside your rear<</if>>, hanging in midair for a moment as you pull your legs in only to discover that doing such thrusts the dildo even deeper into you.<br>
<br>
Your gasp of surprise turns to a moan of pleasure as your legs go rigid and you momentarily dangle from your restraints. Wobbling back and forth, you soon discover that there is no escape from the intense stimulation. Eventually you go limp, your eyes rolling back as you hang forward in your bonds, twitching occasionally to cause the vibrating dildo to shift inside of you.<br>
<br>
The whole time <<if $player.body_ref.penis>>your <<getWordMyPenis false>> remains<<else>>you remain<</if>> numb as you lose track of anything but your rear, even the ache in your shoulders and wrists from holding your weight fading away before the constant pounding.<br>
<br>
<<if $player.body_ref.penis>>
Staring down, you see rather than feel when your <<getWordMyPenis false>> finally fires off, the cum splattering across the floor amidst your trail of drool followed shortly by the vibrations coming to a stop.
<<else>>
Though not an orgasm in any way you can reckon, you do see yourself drip, your vaginal muscles twitching in... something.
<</if>>
<br><br>
[<<moveTo "event_fetstore_chastity_finish_bonus_4" "Continue." 600>>]
</div>/*#
#desc: finish chastity trial bonus fucking
#status: RELEASED 0.6.0.0
#*/
<<set _sceneBonus = 200>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits _sceneBonus>>
<<if $scene.cage == "c_cage_advanced">>
<<wearItem "c_cage_advanced" true>>
<<manipulateItem "c_cage_advanced" "lock" true>>
<<else>>
<<wearItem "chastity_belt_adv" true>>
<<manipulateItem "chastity_belt_adv" "lock" true>>
<</if>>
<</if>>
/%this handles if you JUST got makeup from Alex earlier in the day w/o leaving the mall%/
<<set _tmpVal = setup.checkOutsideDecency() || "makeup_too_fem" == setup.checkOutsideDecencyReason()>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hypnosis_fitting_room.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
"@@.npc_sexstore_clerk;Very nicely done, this is exactly the reaction we were looking for.@@" the clerk notes as <<he npc_sexstore_clerk>> helps you back to your feet and extracts the dildo from your rear. The chains holding you up lower a few centimetres so that you can finally stand flat-footed only for <<him npc_sexstore_clerk>> to stop the process of releasing you and <<if $scene.cage == "c_cage_advanced">>re-attach the chastity cage<<else>>put the belt back around your waist<</if>>.<br>
<br>
"@@.npc_sexstore_clerk;Merely a safety precaution.@@" <<He npc_sexstore_clerk>> states as <<he npc_sexstore_clerk>> locks it in place. "@@.npc_sexstore_clerk;Until the numbing agent wears off you could easily harm yourself without feeling it. You will be leaving with the key, and your payment, so you can safely remove it once you return home.@@"<br>
<br>
Still recovering from the forced analgasm, you nod weakly as <<he npc_sexstore_clerk>> removes your cuffs and gag and, after making sure you can stand unaided, helps you back into your clothes.<br>
<br>
<<He npc_sexstore_clerk>> hands you your payment and the key and leaves you to get dressed.<br>
<br>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
<<if _tmpVal>>
[<<moveTo "event_chastity_trial_finish_phonecall" "Continue." 30 '<<set $player.cutscene.lockinventory=true>><<addItem "advance_chastity_cage_key">>'>>]
<<else>>
<<if $options.ezchange>>
[<<moveTo "event_chastity_trial_finish_phonecall" "Get dressed and leave." 30 '<<useClothSetPop "tmp">><<set $player.cutscene.lockinventory=true>><<addItem "advance_chastity_cage_key">>'>>]
<<else>>
[@@.link_locked;I really need to dress more appropriately to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
<<else>>
<<if _tmpVal>>
[<<moveTo "room_mall" "Continue." 30 '<<set $player.cutscene.lockinventory=true>><<addItem "advance_chastity_cage_key">>'>>]
<<else>>
<<if $options.ezchange>>
[<<moveTo "room_mall" "Get dressed and leave." 30 '<<useClothSetPop "tmp">><<set $player.cutscene.lockinventory=true>><<addItem "advance_chastity_cage_key">>'>>]
<<else>>
[@@.link_locked;I really need to dress more appropriately to leave.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: manager calls after you finish chastity trial
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.reason = "">>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You have just stepped out of the door when your phone rings, it is from <<=setup.getNpcName('npc_manager', 'formal')>>!<br>
<br>
Your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> suddenly feels more restricting and you take a deep breath before answering.<br>
<br>
"@@.npc_manager;Hello, my dear. I just heard that you have finished up with that little chastity trial you were taking part in.@@"<br>
<br>
<<printThought "What? How could she know so fast?">><br>
<br>
As if reading your thoughts, she continues on "@@.npc_manager;It is, of course, the responsibility of a good manager to keep track of all the goings on in her subordinate's life — and am I not excellent at... managing you, my sweet <<if $fetish.sissy>>SISSI <</if>>Secretary?@@"<br>
<br>
You know better than to do anything, but agree and you can all but see her beaming with that proud, catlike smile on the other end of the line.<br>
<br>
"@@.npc_manager;Wonderful, I just wanted to remind you that, though your so-called "trial" may be over with I expect you to show up to work locked securely in chastity as always. <<if $player.sec_style.submission.permanent_key == "">>Moreover you should bring that key with you for safekeeping during the day. It is not that I do not trust you, but, well... you understand that you will be much more able to focus on your duties if you are not distracted by some ill-conceived possibility of freedom.<<else>>After all, I need to take possession of the key... I would not wish you to think I was neglecting our agreement for you to give up permanent ownership...<</if>>@@"<br>
<br>
<<printThought "It's like everything I do I give up more control...">><br>
<br>
"@@.npc_manager;Well, that is all, see you at work my locked lovely!@@"<br>
<br>
She hangs up and you shudder, even from a distance she has no difficulty exerting what feels like absolute, irresistible control.<br>
<br>
[<<moveTo "room_mall" "Put your phone away." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
</div>/*#
#desc: manager confiscates key after chastity trial
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.wearingAdvanced = setup.checkItemTypeWorn("cage") && setup.getItemObjFromType("cage").chastityLvl == 4>>
<<set $npc_manager.flags.took_adv_key = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<if $npc_manager.stage < 4 && $scene.wearingAdvanced>>
<<deleteItem 'advance_chastity_cage_key'>>
<</if>>
<<set $scene.gift = !($npc_manager.flags.good_girl.got_sissy_underwear || $npc_manager.flags.bad_girl.got_sissy_underwear)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;So,@@" <<=setup.getNpcName("npc_manager","formal")>> says with a cat-like grin. "@@.npc_manager;About that chastity trial you recently finished...@@"<br>
<br>
<<if $scene.wearingAdvanced && $npc_manager.stage < 4>>
"@@.npc_manager;First off, well done continuing to wear that lovely device to work. It looks just perfect on you, and you absolutely made the right decision keeping it in place. Towards that end, well... I thought it would be best if I held onto the key. Obviously you are accustomed to having it in the possession of a keyholder and, well... why break a good habit?@@" She smiles. You gulp.<br>
<br>
<<if $scene.inWardrobe>>
"@@.npc_manager;Now, I was going to ask you to hand over the key but... forgetful girl that you are, you appear to have forgotten such at home? No matter, I did some research and have already attended to re-keying the device to a new frequency. Your old key is now utterly useless and the new key... well, that will be safely in my possession. I may give it back at the end of the day... if I think you deserve such.@@"
<<else>>
You really have no choice, handing over the key fob as she smiles. "@@.npc_manager;Do not worry, I will be taking good care of this for you<<if $player.sec_style.submission.permanent_key == "">>, and you always have the option of requesting it back at the end of the day... if you think you deserve such.<<else>>..permanently. Per our agreement, of course.<</if>>@@"
<</if>>
<<if $scene.gift>>
<br><br>
"@@.npc_manager;Of course I would not wish to take something from you without giving in return so... here.@@" She hands you a pink box. "@@.npc_manager;These are for you.@@"
<</if>>
<<elseif $scene.gift>>
"@@.npc_manager;Obviously I was hoping to have some fun of my own with that fancy new <<if setup.checkItemTypeWorn("cage")>>device<</if>> but... hmm, it seems you have <<if setup.checkItemTypeWorn("cage")>>decided on something a bit more... old-fashioned. Regardless, I thought it would be good to give you a little reward for your efforts to advance the state of science, here, these are for you. Since you have grown accustomed to being in permanent chastity, well... why not continue on with a good thing? Towards that end, I felt it would be appropriate to celebrate your commitment to chastity<<else>>opted for some post-trial freedom... which is your right, of course. Still, I wanted to celebrate your accomplishment with a little gift<</if>>.@@"<br>
<br>
She hands you a pink box.
<<elseif $npc_manager.stage >= 4 && setup.checkItemTypeWorn("cage")>>
"@@.npc_manager;I wonder... was this decision to upgrade partially on account of our move? Certainly things up here can be fraught, a bit of additional security is quite prudent. Particularly for one so cute and delectable as yourself. Shall we continue on with your inspection?@@"<br>
<br>
[<<moveTo 'event_manager_daily_check_stage_4' "Continue." 0 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
"@@.npc_manager;Obviously I was hoping to have some fun of my own with that fancy new device but... but... hmm, it seems you have <<if setup.checkItemTypeWorn("cage")>>decided on something a bit more... old-fashioned<<else>>opted for some post-trial freedom... which is your right, of course<</if>>. On to work then, I suppose.@@"
<</if>>
<br><br>
<<if $scene.gift>>
[<<moveTo "event_work_adv_key_keep" "Accept her gift." 360 "<<set $scene.afterWork = false>><<set $scene.refuse = false>>">>]<br>
<<if $player.sec_style.submission.permanent_key == "" && setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_work_adv_key_keep" "Ask if you could retain control over your key instead..." 360 "<<set $scene.afterWork = false>><<set $scene.refuse = true>>">>]
<</if>>
<<elseif !($npc_manager.stage >= 4 && setup.checkItemTypeWorn("cage"))>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo 'event_manager_daily_check_stage_2_finalize' "Get to work." 0 "<<if $clothSetsInt.hasOwnProperty('daily_evaluation_clothes')>><<useClothSetPop 'daily_evaluation_clothes'>><</if>><<set $player.cutscene.lockinventory = true>>">>]
<<case 3>>
[<<moveTo 'event_manager_daily_check_stage_3_finalize' "Get to work." 0 "<<if $clothSetsInt.hasOwnProperty('daily_evaluation_clothes')>><<useClothSetPop 'daily_evaluation_clothes'>><</if>><<set $player.cutscene.lockinventory = true>>">>]
<<case 4>>
[<<moveTo 'event_manager_daily_check_stage_4_finalize' "Get to work." 0 "<<if $clothSetsInt.hasOwnProperty('daily_evaluation_clothes')>><<useClothSetPop 'daily_evaluation_clothes'>><</if>><<set $player.cutscene.lockinventory = true>>">>]
<<case 5>>
[<<moveTo 'event_manager_daily_check_stage_5_finalize' "Get to work." 0 "<<if $clothSetsInt.hasOwnProperty('daily_evaluation_clothes')>><<useClothSetPop 'daily_evaluation_clothes'>><</if>><<set $player.cutscene.lockinventory = true>>">>]
<</switch>>
<</if>>
</div>/*#
#desc: manager confiscates key after chastity trial
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty("daily_evaluation_clothes")>>
<<useClothSetPush "daily_evaluation_clothes">>
<</if>>
<<if $scene.refuse>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<else>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<<else>>
<<applyExperience 'submission' 6 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.refuse>>
You avoid taking the box as you calmly explain that, after enduring the trial, you would quite like to be in control of your key.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns, obviously disappointed, but she nods without appearing to get actually upset.<br>
<br>
"@@.npc_manager;Very well. Of course you will remain locked while you are working, for obvious reasons, but I will leave the key here on the edge of your desk and you may take it home with you after work.@@"<br>
<br>
She pulls back the pink box with the hint of a devious smile. "@@.npc_manager;Of course asking this favour means you forgo this lovely gift... perhaps in the future you will more fully embrace your duties and earn it properly.@@"<br>
<br>
With a nod she turns and returns to her office. You let out a quiet sigh that this went as well as it did, though you find yourself curious what was in the pink box...<br>
<br>
<<if setup.checkPlayerDressed()>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo 'event_manager_daily_check_stage_2_finalize' "Return to work." 0 "<<set $player.cutscene.lockinventory = true>>">>]
<<case 3>>
[<<moveTo 'event_manager_daily_check_stage_3_finalize' "Return to work." 0 "<<set $player.cutscene.lockinventory = true>>">>]
<<case 4>>
[<<moveTo 'event_manager_daily_check_stage_4_finalize' "Return to work." 0 "<<set $player.cutscene.lockinventory = true>>">>]
<<case 5>>
[<<moveTo 'event_manager_daily_check_stage_5_finalize' "Return to work." 0 "<<set $player.cutscene.lockinventory = true>>">>]
<</switch>>
<<elseif $options.ezchange>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo 'event_manager_daily_check_stage_2_finalize' "Put your clothes on and return to work." 0 "<<useClothSetPop 'daily_evaluation_clothes'>><<set $player.cutscene.lockinventory = true>>">>]
<<case 3>>
[<<moveTo 'event_manager_daily_check_stage_3_finalize' "Put your clothes on and return to work." 0 "<<useClothSetPop 'daily_evaluation_clothes'>><<set $player.cutscene.lockinventory = true>>">>]
<<case 4>>
[<<moveTo 'event_manager_daily_check_stage_4_finalize' "Put your clothes on and return to work." 0 "<<useClothSetPop 'daily_evaluation_clothes'>><<set $player.cutscene.lockinventory = true>>">>]
<<case 5>>
[<<moveTo 'event_manager_daily_check_stage_5_finalize' "Put your clothes on and return to work." 0 "<<useClothSetPop 'daily_evaluation_clothes'>><<set $player.cutscene.lockinventory = true>>">>]
<</switch>>
<<else>>
[@@.link_locked;You need to get dressed before you can return to work.@@]
<</if>>
<<else>>
Your heart beating fast, you take the box<<if setup.checkItemTypeWorn("cage")>>, the fact that accepting it means you've given up the key barely considered. After all, you've been locked under another's control for a while now, what real difference is there in shifting keyholders?<<else>>.<</if>><br>
<br>
[<<moveTo "event_manager_good_girl_sissy_panties" "Open the box." 360 "<<set $scene.afterWork = false>>">>]
<</if>>
</div>/*#
#desc: tell manager about enrolling in chastity trial post stage 1
#status: FINISHED 0.7.6.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_manager.flags.knowAdvanced = true>>
<<include "setLastSeenCage">>
<<set $scene.differentCage = false>>
<</if>>
<<set _things = 0>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_manager","formal"))>> shifts from elation to stoic annoyance as you explain how you accepted money in exchange for "testing" the new chastity device.<br>
<br>
By the time you have finished outlining the situation, you are braced for a punishment, nervously waiting as she thinks things over for several long seconds. "@@.npc_manager;Well, you have really put me in quite the conundrum. On the one hand your initiative in securing yourself even more completely is just the sort of go-getter attitude that marks a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary, but on the other hand the fact that you have made such a decision to cut me out of having direct control of your situation...@@" She shakes her head slowly and you hold your breath in anticipation.<br>
<br>
"@@.npc_manager;I think that, on balance, there is more positive than negative, but know that I will be taking swift action to reestablish control as it properly should exist the instant you have completed your trial.@@"<br>
<br>
You sigh in relief and thank her for the consideration and she merely nods. "@@.npc_manager;Let us call this a learning opportunity, but now, we must resume today's inspection. That said, rules are rules and <<if $npc_manager.flags.playerstayedinchastity>>you did fail to bring the key to your chastity to work with you, so<<else>>my not having control of your key while you are work...<</if>> I will be counting that as a failure against today's inspection.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 60>>]
</div>/*#
#desc: manager summons you for first oral training
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You get a summons from your boss and hurry into her office to find yourself put immediately off-guard. She is just sitting behind her desk, smiling... and yet there is something about the way she is looking at you that has you on edge, your heart thumping in your chest.<br>
<br>
"@@.npc_manager;So... my dear,@@" she states slowly, pleased amusement oozing out of every word. "@@.npc_manager;You have shown that you can handle at least the basics of your responsibilities to the company, but being a <<if $fetish.sissy>>SISSI <</if>>Secretary, particularly MY <<if $fetish.sissy>>SISSI <</if>>Secretary is about more than just filing and schedules. You have seen a hint or two of such already but now, well... now it is time for me to extend your instruction a bit further.@@"<br>
<br>
You think back to what she might consider "hints" — from the spanking you endured at the end of your first shift, to her ongoing overhaul of your wardrobe, <<if setup.checkItemTypeWorn("cage")>>the chastity <<if setup.isCage()>>cage<<else>>belt<</if>> locked onto you<<if $player.sec_style.body.tblock != "">> — to say nothing of the editing of your body chemistry<</if>><<else>>the editing of your body chemistry<</if>>... and, of course, who could forget the intense... well, you aren't certain what, exactly to call it, you went through just a few days ago?<br>
<br>
<<if $npc_manager.stage >= 3>>
<<printThought "I suppose I should have seen this as inevitable, now that I'm out of probation...">>
<<else>>
<<printThought "And I'm not even out of probation yet!">>
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> seems to be giving you time to think, her piercing eyes making you wonder if she can see into your very mind and the thoughts swirling around within your skull.<br>
<br>
"@@.npc_manager;Lovely, now... before we move on to the lesson for today, a tiny little quiz. What one word do you think best summarises what I expect from one in your position? Come on, no more thinking, top of the head!@@"<br>
<br>
[<<moveTo "event_manager_oral_first_2" "Submission." 120 "<<set $scene.goal='submission'>>">>]<br>
[<<moveTo "event_manager_oral_first_2" "Hard work." 120 "<<set $scene.goal='work'>>">>]<br>
[<<moveTo "event_manager_oral_first_2" "Obedience." 120 "<<set $scene.goal='obey'>>">>]<br>
[<<moveTo "event_manager_oral_first_2" "Femininity." 120 "<<set $scene.goal='fem'>>">>]<br>
[<<moveTo "event_manager_oral_first_2" "Humiliation." 120 "<<set $scene.goal='humiliation'>>">>]
</div>/*#
#desc: manager assesses your goal
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.goal>>
<<case 'submission'>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<case 'work'>>
<<applyExperience 'submission' 5 'normal' $SEEN_FRIEND>>
<<case 'obey'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<<case 'fem'>>
<<applyExperience 'feminization' 10 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<case 'humiliation'>>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.goal>>
<<case 'submission'>>
You meekly reply "@@.pc;submission.@@" and <<=setup.getNpcName("npc_manager","formal")>> beams with pride.<br>
<br>
"@@.npc_manager;Precisely! Yes, you again prove how much you were meant for this job. To be my <<if $fetish.sissy>>SISSI <</if>>Secretary is not just to be efficient and obedient, but to do it for the right reasons, out of joyous devotion to me, your <<=setup.getNpcName("npc_manager","title")>>. And now, with you off to such a lovely start, it is time to move onto the lesson proper.@@"
<<case 'work'>>
You reply "@@.pc;hard work@@" and <<=setup.getNpcName("npc_manager","formal")>> frowns.<br>
<br>
"@@.npc_manager;First, that is two words... and even if I were to give you the benefit of the doubt and pretend you had said diligence or such... no. You see merely performing your duties? That is table stakes. No, what I desire is something more, not mere obedient performance, but joyous submission.@@"
<<case 'obey'>>
You confidently reply "@@.pc;obedience@@" and <<=setup.getNpcName("npc_manager","formal")>> smiles.<br>
<br>
"@@.npc_manager;Close... but there is a subtly. Obedience is good, necessary, even, but if that is all there is? Well, that is cold, emotionless, sterile. What I want is submission. Joyous submission... remember that, for it will guide you well.@@"
<<case 'fem'>>
You reply "@@.pc;femininity@@" and <<=setup.getNpcName("npc_manager","formal")>> smiles.<br>
<br>
"@@.npc_manager;While you are becoming a lovely example of such... well, that is only part of your duty, and, to be honest, a transformation as much for your benefit as anything else. No, your chief duty is submission, as my personal <<if $fetish.sissy>>SISSI <</if>>Secretary you exist to serve me, but not mere hard work and performative obedience, no, what I want is submission... beautiful submission.@@"
<<case 'humiliation'>>
Resigned, you reply "@@.pc;humiliation@@" and <<=setup.getNpcName("npc_manager","formal")>> frowns.<br>
<br>
"@@.npc_manager;Humiliation? Do you think that embarrassing you is my goal? No, no, my dear, the humiliation is merely a method to break through to you, to push past your old, rotten ideas and re-orient you towards a more productive future.@@" She shakes her head. "@@.npc_manager;It seems that you have much left to learn, so I recommend you focus hard on today's lesson.@@"
<<default>>
ERROR: unexpected scene.goal <<=$scene.goal>>
<</switch>>
<br><br>
You gulp nervously as <<=setup.getNpcName("npc_manager","formal")>> grins.<br>
<br>
"@@.npc_manager;Now, with your purpose hopefully clarified... well, I believe you remember your recent promotion? Of course you do,
<<switch $npc_manager.flags.stage1Promo>>
<<case "enthusiast">>
it was nearly as beautiful as you are.
<<case "reward">>
you so obediently submitted yourself for it.
<<case "punish">>
the fruits of your failures.
<<case "strict">>
I only hope that memory will point you in a more positive direction going forward.
<<default>>
ERROR: unexpected stage 1 promo <<=$npc_manager.flags.stage1Promo>>
<</switch>>
But you must have realised the imbalance of the whole scenario — how, as much as I might have delighted in watching, it was primarily about YOUR pleasure. Today we are going to see about starting to re-balance those scales. By which I, of course, mean that I shall be instructing you on some important oral skills. So if you would kindly crawl over here under my desk... well, we shall establish a baseline and see what we are working with...@@"<br>
<br>
[<<moveTo "event_manager_oral_first_3" "Accept her logic; crawl over and get to work." 300 "<<set $scene.style='obedient'>>">>]<br>
[<<moveTo "event_manager_oral_first_3" "Who cares about the justification? You'd love to eat her out!" 300 "<<set $scene.style='enthusiast'>>">>]<br>
[<<moveTo "event_manager_oral_first_3_money" "What? You're going to need to be paid more for something like that!" 120 "<<set $scene.style='money'>>">>]<br>
[<<moveTo "event_manager_oral_first_3_refuse_1" "Damn the consequences, you may be a <<if $fetish.sissy>>SISSI <</if>>Secretary, but there are limits!" 120>>]
</div>/*#
#desc: ask for money to eat manager out first time
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You take a stand and insist that you didn't sign up to be some sort of oral sex-slave, and you aren't going to do anything like that for what you're being paid!<br>
<br>
Rather than show anger <<=setup.getNpcName("npc_manager","formal")>> seems amused. "@@.npc_manager;In point of fact... it is what you signed up for... though I understand if that part of your contract was a bit tricky to understand. No matter, if this is purely an issue of money...@@" She pulls a stack of credits out of a drawer and slaps them on her desk. "@@.npc_manager;There you go, <<=Math.floor($player.work.payment/5)>> credits — about a full day's wages if you will shut up with your irritating complaints and put that tongue to a better use. More than fair, I should think.@@"<br>
<br>
[<<moveTo "event_manager_oral_first_3" "Take the money and get to work." 300 "<<set $scene.style='money'>>">>]<br>
[<<moveTo "event_manager_oral_first_3_refuse_1" "Damn the consequences, you may be a <<if $fetish.sissy>>SISSI <</if>>Secretary, but there are limits!" 300>>]
</div>/*#
#desc: you refuse to eat manager out first time
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You put your foot down — sure some... things may have happened, but you're a <<if $fetish.sissy>>SISSI <</if>>Secretary... not a <<if $fetish.sissy>>SISSI <</if>>sex worker!<br>
<br>
You could hear a pin drop as <<=setup.getNpcName("npc_manager","formal")>> rises to her feet and circles her desk. She moves just closer than is comfortable, looking down at you with her trademark confident grin. "@@.npc_manager;Sex worker? You misunderstand me. Your job is as it ever was — to be my <<if $fetish.sissy>>SISSI <</if>>Secretary — utterly loyal, totally obedient, and performant to my every whim. Towards that end I will give you one last chance to obey...@@"<br>
<br>
[<<moveTo "event_manager_oral_first_3" "Accept her logic; crawl over and get to work." 300 "<<set $scene.style='obedient'>>">>]<br>
[<<moveTo "event_manager_oral_first_3_money" "What? You're going to need to be paid more for something like that!" 120 "<<set $scene.style='money'>>">>]<br>
<<if $fetish.get_raped>>
[<<moveTo "event_manager_oral_first_3" "No!" 300 "<<set $scene.style='forced'>>">>]
<<else>>
[<<moveTo "event_manager_oral_first_3_refuse_2" "No!" 300>>]
<</if>>
</div>/*#
#desc: you refuse to eat manager out non-rape
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your heart is thundering in your chest, but you somehow stand your ground and shake your head, bracing for some sort of reprimand... only for <<=setup.getNpcName("npc_manager","formal")>> to snort and spin on her heels.<br>
<br>
"@@.npc_manager;Very well. In that case... I believe you have work to do at your desk. Be off, now.@@"<br>
<br>
You scramble out of the office, not wanting to over-think your good fortune to escape... even as you wonder what future consequences your reticence may lead to.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager has you eat her out for first time style
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case "obedient">>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<applyExperience 'submission' 10 'very' $SEEN_FRIEND>>
<<case "enthusiast">>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'bimbofication' 10 'terrible' $SEEN_FRIEND>>
<<case "money">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<addCredits `Math.floor($player.work.payment/5)`>>
<<case "forced">>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</switch>>
<<if !$player.sec_style.sex.cunnilingus && "forced" != $scene.style>>
<<set $player.sec_style.sex.cunnilingus = $scene.style>>
<</if>>
<<set $scene.first = !$player.virgin.cunnilingus && "forced" != $scene.style>>
<<if $scene.first>>
<<set $player.virgin.cunnilingus = "npc_manager">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case "obedient">>
You slide to your knees and crawl over as commanded. <<=setup.getNpcName("npc_manager","formal")>> smiles as you round the corner of her desk and she spreads her legs in invitation.<br>
<br>
"@@.npc_manager;Good girl. I am pleased to see you accepting this new responsibility with such obedience... now, let us see how you perform...@@"
<<case "enthusiast">>
You all but lick your lips in anticipation as you race around the desk and drop to your knees in front of <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;My, my. Points for enthusiasm... if demerits for decorum. Still, you are work in progress. Speaking of work, time to see if that enthusiasm translates to effectiveness...@@" She spreads her legs in invitation for you to lean in.
<<case "money">>
Enticed by the stack of credits you pocket the money and slowly circle the desk as <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;While pure obedience is preferred, well... I can work with mercenary motivations, now, for your side of the bargain...@@" She spreads her legs and motions you in.
<<case "forced">>
You stand your ground and <<=ps(setup.getNpcName("npc_manager","formal"))>> hand shoots out, grabbing a fistful of your hair and yanking you off balance. "@@.npc_manager;You foolish girl. I was not offering you a choice. Choice is not a part of your job description. Only obedience.@@"<br>
<br>
You stumble as she drags you around her desk, dropping back into her chair as she pulls your face between her legs. "@@.npc_manager;Now, you have a job to do, and a lesson to learn — get to it.@@"<br>
<br>
Her finger still clenched in your hair you find yourself unable to stand as she holds you in place...
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
<<if $scene.first>>
Your heart pounds in your chest... your first time eating a woman out... and it's going to happen like this. <<=setup.getNpcName("npc_manager","formal")>> grins and you wonder if she knows of your inexperience, if that, too, is part of her twisted game...<br>
<br>
There is no more time for such strategising, however, for the time is now.
<</if>>
You don't know if <<=setup.getNpcName("npc_manager","formal")>> just didn't wear panties today, or got rid of them before she called you in... but either way, with her skirt hiked up there is nothing in between you and her glistening sex, the strong scent of her femininity overpowering you...<br>
<br>
[<<moveTo "event_manager_oral_first_4" "Lick with enthusiasm." 300 "<<set $scene.refuse=false>>">>]<br>
[<<moveTo "event_manager_oral_first_4" "Refuse to lick." 300 "<<set $scene.refuse=true>>">>]
</div>/*#
#desc: manager first cunnilingus
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.refuse>>
<<if !$player.sec_style.sex.cunnilingus>>
<<set $player.sec_style.sex.cunnilingus = "strict">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<<else>>
<<if !$player.sec_style.sex.cunnilingus>>
<<set $player.sec_style.sex.cunnilingus = "forced">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.refuse>>
Though you've made it between <<=ps(setup.getNpcName("npc_manager","formal"))>> thighs, you refuse to do any more, squeezing your lips tight as her hand on the back of your head pulls you closed. "@@.npc_manager;Come along, now, use that tongue <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"<br>
<br>
You continue to refuse, even as her thighs squeeze tighter, your lips and nose pressed so firmly against her that you are struggling to breathe as she grinds against your face. "@@.npc_manager;Just because you refuse to do your job does not mean I cannot find a use for you... just know that said use may be less... pleasant than the alternative.@@"<br>
<br>
Both of her hands are now holding you by the hair as she grinds against your face, rubbing against your nose and mouth as you feel somewhere between suffocating and drowning, her juices flowing down your chin and sneaking past your lips as she takes her pleasure without your slightest effort to assist.<br>
<br>
Your refusal turns to panic as you try to pull away, but her grip is like a vice, oxygen becoming more and more scarce as you distantly sense her approaching a climax...
<<else>>
If <<=ps(setup.getNpcName("npc_manager","formal"))>> scent was enticing, her taste is intoxicating as your initial eagerness becomes infused with a near hunger as you lick at her delicious honeypot.<br>
<br>
"@@.npc_manager;Enthusiastic... if less than refined... I can work with this. Now keep going... yes...@@"<br>
<br>
It's hard to hear her voice with her thighs pressed against your ears, so you just keep on with what you're doing, passionately licking, fully focused on this new "job responsibility" as her hand gently rests on your head...
<</if>>
<br><br>
[<<moveTo "event_manager_oral_first_5" "Continue." 300>>]
</div>/*#
#desc: manager sends you back to work after first eating her out
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addWorkEvent "cunnilingus_training" _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.refuse>>
You wake up to find yourself staring up at <<=setup.getNpcName("npc_manager","formal")>> standing over you, a trickle down her leg a reminder of what you were doing before you passed out.<br>
<br>
"@@.npc_manager;Pathetic... but at least now we know where to start from. Again it falls to me to guide you in how to be a useful employee... whatever that takes.@@" She glares at you for a final moment before stepping away dismissively.<br>
<br>
"@@.npc_manager;Return to your desk. Perhaps you can put in a bit of your normal duties, but know that this was just a... taste of what is to come.@@" The edge in her voice sends a shudder of fear down your spine as you beat a frantic retreat from her office.<br>
<br>
<<printThought "Is this really what my job is about? Not just a <<if $fetish.sissy>>SISSI <</if>>Secretary... but a <<if $fetish.sissy>>SISSI <</if>>sex slave, as well?">>
<<else>>
You lose track of time as you passionately lick between your <<=ps(setup.getNpcName("npc_manager","formal"))>> legs, but eventually she pulls back, her chair rolling out of reach and a hand gently preventing you from crawling after.<br>
<br>
"@@.npc_manager;Well done. Though your technique lacks in refinement, that can be learned. The passion you showed... well, that is a much harder skill to teach.@@" She smiles and you lick your lips.<br>
<br>
"@@.npc_manager;You may return to your desk, you have other duties to perform, after all. We shall resume your lessons at a later date... though, perhaps not too much later...@@"<br>
<br>
You blush at the compliment — you don't think you managed to get her off, but you like to think that owed more to her self control than your lack of effort. After rising to your feet you give a parting curtsy and skip back to your desk, savouring your <<=ps(setup.getNpcName("npc_manager","formal"))>> lingering flavour on your tongue.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager oral training repeat
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_manager_oral_futa_1") && !State.hasPlayed("event_manager_oral_graduation_1")>>
<<set $scene.variant = "graduate">>
<<else>>
<<set _options = []>>
<<if State.hasPlayed("event_manager_oral_ring_gag_1")>>
<<set _options = ["repeat"]>>
<<else>>
<<set _options = ["gag"]>>
<</if>>
<<if State.hasPlayed("event_manager_oral_ring_gag_1") && !State.hasPlayed("event_manager_oral_lips_1")>>
<<set _options.push("lips","lips")>>
<</if>>
<<if State.hasPlayed("event_manager_oral_ring_gag_1") && State.hasPlayed("event_manager_oral_lips_1") && !State.hasPlayed("event_manager_oral_hood_1")>>
<<set _options.push("hood","hood")>>
<</if>>
<<if State.hasPlayed("event_manager_oral_hood_1") && !State.hasPlayed("event_manager_oral_queening_1")>>
<<set _options.push("queen","queen")>>
<</if>>
<<if State.hasPlayed("event_manager_oral_hood_1") && !State.hasPlayed("event_manager_oral_analingus_1")>>
<<set _options.push("anal","anal")>>
<</if>>
<<if $fetish.cum && setup.getTotalValue("cum") > 0 && !$npc_admin.flags.monogomous_manager && State.hasPlayed("event_manager_oral_ring_gag_1") && !State.hasPlayed("event_manager_oral_creampie_1")>>
<<set _options.push("cream","cream")>>
<</if>>
<<if State.hasPlayed("event_manager_oral_hood_1") && !State.hasPlayed("event_manager_oral_queening_1") && State.hasPlayed("event_manager_oral_analingus_1") && !State.hasPlayed("event_manager_oral_futa_1")>>
<<set _options.push("futa","futa")>>
<</if>>
<<set $scene.variant = _options.random()>>
<</if>>
<</if>>
<<if $scene.variant == "cream">>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.variant == "cream">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<elseif $scene.variant == "futa">>
<<if $npc_futa.stage >= 4>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_futa","npc_futa_4")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_futa","npc_futa_3")>>
<</if>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.variant>>
<<case "gag">>
<<=setup.getNpcName("npc_manager","formal")>> summons you into her inner office and greets you with an excited grin. "@@.npc_manager;So, today we shall be continuing honing your oral capabilities. Specifically we are going to focus on your tongue.@@" She beckons you over, ring gag in hand.<br>
<br>
"@@.npc_manager;This will limit your options so that you can focus on the topic of today's study. Restriction breeds creativity, after all, and I am quite interested to see how... creative that tongue of yours can get.@@"<br>
<br>
[<<moveTo "event_manager_oral_ring_gag_1" "Kneel between her legs and accept the gag." 600>>]<br>
<<case "lips">>
<<=setup.getNpcName("npc_manager","formal")>> summons you into her inner office and greets you with a knowing smile. "@@.npc_manager;Now that you have mastered tongue only, it is time to expand to the rest of the mouth.@@" Rather than the previous ring gag she presents a device that looks like it will hold your tongue to the base of your mouth and force you to get by with your lips.<br>
<br>
"@@.npc_manager;You are familiar with the drill by now, so come over here and get started.@@"<br>
<br>
[<<moveTo "event_manager_oral_lips_1" "Kneel between her legs and accept the gag." 600>>]<br>
<<case "hood">>
<<=setup.getNpcName("npc_manager","formal")>> summons you into her inner office and greets you with a knowing smile. "@@.npc_manager;You are progressing nicely, today we are going to do an exercise in... focus.@@" She gestures for you to come around the desk and take your now-accustomed position between her legs.<br>
<br>
[<<moveTo "event_manager_oral_hood_1" "Time to train..." 600>>]<br>
<<case "queen">>
<<=setup.getNpcName("npc_manager","formal")>> summons you into her inner office and smiles. "@@.npc_manager;Your oral training is coming along quite well, but now it is time to expand your horizons... to the horizontal.@@"<br>
<br>
She motions you closer and spreads her legs slightly so that you can see her normal chair has been replaced by one with an "extra" feature — a large hole in the middle above a padded pillow that will have you laying beneath her with her lightly sitting on your face...<br>
<br>
[<<moveTo "event_manager_oral_queening_1" "Lay back and get to licking." 600>>]<br>
<<case "anal">>
<<=setup.getNpcName("npc_manager","formal")>> summons you into her inner office and grins. "@@.npc_manager;Your continue to progress your oral capabilities... and now it is time to advance by moving behind. In other words, it is time for you to learn how to properly eat my ass.@@"<br>
<br>
She rises to her feet and walks over to the couch. "@@.npc_manager;Come, my dear. I am all clean and ready for your tongue...@@"<br>
<br>
[<<moveTo "event_manager_oral_analingus_1" "Time to eat ass and chew bubblegum... and you're out of gum!" 600>>]<br>
<<case "cream">>
<<=setup.getNpcName("npc_manager","formal")>> stalks into the office having returned from a meeting and summons you as she passes your desk. "@@.npc_manager;Come — I just finished a... challenging negotiation, and cleaning me out would be good practice.@@"<br>
<br>
You catch the faintest whiff of cum tinging the air in her wake and have a good idea what, and where needs "cleaning." <br>
<br>
[<<moveTo "event_manager_oral_creampie_1" "Follow." 600>>]<br>
<<case "futa">>
<<=setup.getNpcName("npc_futa","first")>> arrives to the office for a meeting with <<=setup.getNpcName("npc_manager","formal")>>. You show your friend to the inner office and introduce her to <<=setup.getNpcName("npc_manager","title")>> before turning to return to your desk.<br>
<br>
"@@.npc_manager;Ah, ah — I actually summoned <<=setup.getNpcName("npc_futa","formal")>> here to assist with your training. You are becoming quite the accomplished pussy-licker... but it is an extra challenge to focus on such when dealing with a partner as... equipped as <<=setup.getNpcName("npc_futa","formal")>>.@@"<br>
<br>
You gulp nervously as you notice <<=ps(setup.getNpcName("npc_futa","first"))>> <<if $npc_futa.stage >= 4 >>leggings are starting to swell around the crotch<<else>>tight skirt is starting to tent<</if>>...<br>
<br>
[<<moveTo "event_manager_oral_futa_1" "Time to show your skill..." 600>>]<br>
<<case "graduate">>
<<=setup.getNpcName("npc_manager","formal")>> summons you into her office with a proud smile. "@@.npc_manager;All that lovely training... combined with what <<=setup.getNpcName("npc_development","formal")>> reported to me about your recent class performance, well... let me just say that I want to see the results. Now.@@"<br>
<br>
[<<moveTo "event_manager_oral_graduation_1" "Crawl over and show what you've learned." 600>>]<br>
<<case "repeat">>
<<=setup.getNpcName("npc_manager","formal")>> summons you into her office with a smile. "@@.npc_manager;It has been a stressful morning. I again require those lovely lips, if you would make your way over here and deploy those oh-so-delightful skills of yours.@@"<br>
<br>
[<<moveTo "event_manager_oral_repeat_1" "Crawl over and provide the relief she requires." 3000>>]<br>
<<default>>
ERROR: unexpected scene.variant <<=$scene.variant>>
<</switch>>
<<if $scene.variant != "graduate">>
[<<moveTo "event_manager_oral_punish_1" "Refuse!" 600>>]
<</if>>
</div>/*#
#desc: manager oral training failure: dildo gag
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "cock_gag_double">>
<<wearItem "cock_gag_double" true>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You cross your arms in refusal and <<=setup.getNpcName("npc_manager","formal")>> all but teleports in front of you. One hand in your hair she forces your head back as she looks down at you. "@@.npc_manager;What gave you the impression that this was optional? Certainly the primary goal is your continued development... but that aside, I have needs and, as your manager, I expect you to meet them.@@"<br>
<br>
You start to open your mouth to object only for a gag to be forced past your lips. A strap is pulled tight, forcing the inner phallus to the edge of your throat as the front panel pulls tight against your face. Grip tightening on your hair, you are forced to your knees as <<=setup.getNpcName("npc_manager","formal")>> drapes a leg over your shoulder and slides the dildo now extending from your face between her glistening lips.<br>
<br>
"@@.npc_manager;Your duty is to, ahhh— serve.@@" She states, humping against your face with obvious pleasure, your nose pressed against her clit, nostrils full of her scent as she uses you. "@@.npc_manager;The faster you diversify your portfolio, well... the more productive you will be, but the work must be done, and I will make sure of it, even if I have to do it myself!@@" Her final words are punctuated by two hard thrusts before she grinds your face between her legs and jerks in orgasm.<br>
<br>
"@@.npc_manager;I needed that...@@" she states a few moments later, her voice somewhat calmer than before as she steps away, the dildo dripping as it protrudes from your face.<br>
<br>
"@@.npc_manager;Perhaps next time you will be more amenable to instruction.@@" <<=setup.getNpcName("npc_manager","formal")>> concludes curtly as she walks back to her desk, leaving you to catch your breath and unbuckle the gag before you beat a hasty retreat to your workstation.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<removeItem 'cock_gag_double' true>><<deleteItem 'cock_gag_double'>><<completeWorkEvent>>">>]
</div>/*#
#desc: manager oral training: ring gag tongue
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "ring_gag">>
<<wearItem "ring_gag" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You kneel down for <<=setup.getNpcName("npc_manager","formal")>> to tighten the ring gag between your lips and then she guides you between her legs to get to work.<br>
<br>
With your lips forced wide drooling is all but inevitable, but you focus on the lesson at hand, reaching out with your tongue to explore, tease and stimulate.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> returns to her work while you continue yours, the occasional pat on the head or fingers running through your hair your reward as you experiment with different techniques, tracing shapes and licking rapidly as you cope with the limitations, and the slight cramping of your jaw as you learn not just how to use your tongue, but an increased appreciation for how much your lips would contribute to letting you give even better cunnilingus.<br>
<br>
Eventually <<=setup.getNpcName("npc_manager","formal")>> lets you free, wiping your chin with a tissue paper and then removing your gag.<br>
<br>
"@@.npc_manager;A reasonable effort, I look forward to seeing how you incorporate these skills into a more complete approach in the future.@@"<br>
<br>
You curtsy in thanks and promise to do exactly that and she dismisses you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<removeItem 'ring_gag' true>><<deleteItem 'ring_gag'>><<completeWorkEvent>>">>]
</div>/*#
#desc: manager oral training: lips
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "tongue_gag">>
<<wearItem "tongue_gag" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The gag <<=setup.getNpcName("npc_manager","formal")>> slides into your mouth is one of the more unique designs you have worn, leaving your jaw free to move, but keeping your tongue pressed to the bottom of your mouth.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles and guides you in and you get to work, listening to her occasional piece of advise as you practice kissing, sucking, and just a bit of nibbling, not just around her clit, but also up and down the inside of her thighs as your sensitive lips do all that they can to silently serve.<br>
<br>
Eventually <<=setup.getNpcName("npc_manager","formal")>> lets you free and removes your gag.<br>
<br>
"@@.npc_manager;A reasonable effort, I look forward to seeing how you incorporate these skills into a more complete approach in the future.@@"<br>
<br>
You curtsy in thanks and promise to do exactly that and she dismisses you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<removeItem 'tongue_gag' true>><<deleteItem 'tongue_gag'>><<completeWorkEvent>>">>]
</div>/*#
#desc: manager oral training: immersion hood focused
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "cunnilingus_hood_blind">>
<<wearItem "cunnilingus_hood_blind" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> slides a latex hood over your head, plunging you into darkness and then guiding you between her legs.<br>
<br>
"@@.npc_manager;Today's lesson is one of focus,@@" she explains, her voice slightly distorted coming through small earbuds as you realise that the hood will remove your sense of sound, as well. "@@.npc_manager;This lovely hood should remove all distractions, leaving you free to focus every iota of your attention on the task at hand...@@"<br>
<br>
A hand guides you forward and you discover a third way in which the hood enhances your focus — the nostril tubes allowing you to breathe comfortably with your face pressed tight, able to kiss and lick constantly without so much of a second to lean back and catch a breath.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> places her legs over your shoulders to hold you in place and you lose yourself in your task, your squelched senses falling away as you focus completely on her divine taste, hyper-sensitive to her every twitch and movement as you give her what you are certain was two orgasms before you feel the weight of her legs lift off your shoulders and she gently pushes you away.<br>
<br>
"@@.npc_manager;Well done,@@" <<=setup.getNpcName("npc_manager","formal")>> states with a smile. "@@.npc_manager;Your training is certainly paying off... though, really... this was more advanced basics, and there is more yet for you to master.@@"<br>
<br>
You reply that you are eager to do so and she smiles, clearly looking forward to your next "lesson" even as she sends you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<removeItem 'cunnilingus_hood_blind' true>><<deleteItem 'cunnilingus_hood_blind'>><<completeWorkEvent>>">>]
</div>/*#
#desc: manager oral training: cream pie
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You kneel between <<=ps(setup.getNpcName("npc_manager","formal"))>> thighs and get to work, your nimble tongue searching out every
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
delectable
<<else>>
scrumptious
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty
<<else>>
bitter
<</if>>
<</if>>
morsel of <<getWordCum>> as she purrs in contentment.<br>
<br>
"@@.npc_manager;Superbly done. So much more convenient to have you around to clean me out, lest I leak into my panties.@@"<br>
<br>
You curtsy and
<<if setup.getTotalValue("cum") > 10>>
lick your lips, replying that you are always more than happy to help with such matters.<br>
<br>
"@@.npc_manager;I bet you are... my little <<if $fetish.sissy>>sissy <</if>>cunnilingus cum-slut.@@"
<<else>>
nod.<br>
<br>
"@@.npc_manager;Hmm, I would have expected a bit more enthusiasm from a <<if $fetish.sissy>>sissy <</if>>cunnilingus cum-slut... but you fulfilled your duties, and that is the important thing.@@"
<</if>>
<br><br>
She dismisses you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager oral training: queening
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You lay back in the custom queening stool and <<=setup.getNpcName('npc_manager', 'formal')>> lowers over you. The angle is a bit different than you've previously practiced, but your tongue is nimble and your lips eager as you get to work... while <<=setup.getNpcName('npc_manager', 'formal')>> does the same above.<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> arousal drips down over your face as you provide some entertainment through whatever corporate drudgery she is attending to today. Even though you do not manage to bring her to orgasm you feel a sense of contribution, accomplishment, and yearning to do more when she rises up.<br>
<br>
"@@.npc_manager;Well done, being able to attack familiar problems from different angles is a key skill, and one that you can apply to other aspects of your work.@@" She notes before sending you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager oral training: analingus
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Just the sight of <<=setup.getNpcName('npc_manager', 'formal')>> presenting her divine derriere has your heart beating faster, and you eagerly kneel at the edge of the couch and lean in.<br>
<br>
Her rear hole is not as lubricated as her front... but it is heavy with her flavour, a more intense, heady challenge that requires your tongue to reach deep to pierce, as you use your hands to slightly spread her lovely cheeks to really get inside the tight hole in the middle of her crack.<br>
<br>
You instinctually reach below to add some fingering to your efforts, but <<=setup.getNpcName('npc_manager', 'formal')>> swats you away. "@@.npc_manager;Focus, my dear. Today is about training.@@"<br>
<br>
You return to slightly massaging her rear as you lick and kiss and nibble her quivering hole. She reaches back to pull your head closer and you respond by extending your tongue even further, reaching deep to trace around and slip inside as you worship her asshole until you hear a chime from her desktop computer.<br>
<br>
"@@.npc_manager;Ah! Time flies when a <<if $fetish.sissy>>sissy<<else>>secretary<</if>> is eating your ass... back to work, my dear.@@"<br>
<br>
You somewhat reluctantly lean back, her heavy flavour still on your tongue as she takes a seat and dials in to some meeting or another and you curtsy and return to your workstation.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager oral training: double genitals
#status: RELEASED 0.8.9.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_futa.stage >= 4>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_futa","npc_futa_4")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_futa","npc_futa_3")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> watches on as you nervously crawl forward, first lifting <<=ps(setup.getNpcName("npc_futa","first"))>> magnificent <<getWordPenis "npc_futa">> out of the way before leaning in to start kissing and licking.<br>
<br>
The scent of the throbbing cock in front of your face is certainly <<if setup.getTotalValue("penis") > 10>>an enticing<<else>>a<</if>> distraction, but one that the taste of your work helps to focus past.<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> lacks for <<=ps(setup.getNpcName("npc_manager","formal"))>> self-control, and your practiced skills soon have her legs shaking as she puts a hand on your head, not for control, but for balance. Spurred forward by your success you hold her legs with both hands, letting her hard <<getWordPenis "npc_futa">> balance on your head<<if $fetish.cum>> and drip its excitement into your hair<</if>>.<br>
<br>
"@@.npc_futa;Your,@@" GASP, "@@.npc_futa;assistant is... quite skilled,@@" <<=setup.getNpcName("npc_futa","first")>> pants as you redouble your efforts, turning your head slightly to get a better angle as her <<getWordPenis "npc_futa">> slides down the side of your face to rest against your ear.<br>
<br>
"@@.npc_manager;A well trained assistant is required for any manager to be a success, remember that, as you advance in your own career.@@" <<=setup.getNpcName("npc_manager","formal")>> replies, though you aren't certain if <<=setup.getNpcName("npc_futa","first")>> heard as you make her cum<<if $fetish.cum>>, her excitement gushes into your mouth and shoots past your head as she multi-orgasms with the full power of her double potency<</if>>.<br>
<br>
Several moments pass as <<=setup.getNpcName("npc_futa","first")>> catches her breath, before she slowly separates and fixes her still bulging <<getWordPenis "npc_futa">> back <<if $npc_futa.stage >= 4>>inside its pouch<<else>>back under her tight skirt<</if>>.<br>
<br>
"@@.npc_futa;Th— thank you for the opportunity,@@" <<=setup.getNpcName("npc_futa","first")>> finally states as <<=setup.getNpcName("npc_manager","formal")>> motions towards you and you crawl over to kneel obediently at her side.<br>
<br>
"@@.npc_manager;And thank you for lending your... talents, for my assistant to practice her skills.@@"<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> bows formally and makes her exit from the office before <<=setup.getNpcName("npc_manager","formal")>> graces you with a proud smile and sends you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager oral post-training repeat
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You spend some more time between <<=ps(setup.getNpcName("npc_manager","formal"))>>, licking and kissing and sucking and fingering, showing all of your perfected skills as you give her a few minutes of relief from her stressful job.<br>
<br>
You can gauge your success by her hand on your head, shifting from gently patting your head, to playing with your hair... to a climax of gripping you passionately tight as you race to the end.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> eventually pulls you away and looks down with a smile.
<<if $npc_manager.flags.cruel == 0>>
"@@.npc_manager;Wonderfully done, yet again. It is service like that that makes this all worth it.@@"<br>
<br>
You lick your lips and bow your head, telling her that it was really your pleasure to taste and serve.<br>
<br>
"@@.npc_manager;Such a delight, my most excellent good girl.@@" She replies, giving you a rewarding head pat before sending you back to your desk.
<<else>>
"@@.npc_manager;Not bad, and really the best use that those disobedient lips of yours can be put to. Now get back to your desk, I need to focus and even when you manage to be behaved, you are a distraction.@@"<br>
<br>
Deciding that silence is the better option you merely curtsy and then quickly beat a retreat to your desk.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: permanently remove facial hair
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home") && !$player.sec_style.body.hair_face>>
<<set $player.body.facialhair = 0>>
<<set $player.sec_style.body.hair_face = "enthusiast">>
<<deleteItem "facial_hair_removal_kit">>
<</if>>
<</if>>
<<set $player.location to "Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
You open the hair removal kit and get to work. You read the instructions through twice over, but it seems remarkably straightforward: clean your face, apply a cream to help open your follicles and numb your skin, then run the enclosed device over your cheeks and chin until all hair is gone.<br>
<br>
With a shrug you get to work, feeling little more than a warm tingle in your cheek as the device hums and your face goes from populated by soft, thin hairs... to being utterly, totally, perfectly hairless and smooth.<br>
<br>
As you reach the end you can't help but smile, running your fingers over your oh-so-smooth face as you look at your reflection, even compared to before you see an improvement, a glow that is further reflected by the joy you feel.<br>
<br>
[<<moveTo "room_bathroom" "Back to your bathroom." 30>>]
<<else>>
You look at the permanent hair removal kit, but conclude that you should probably wait to use it until you're at home, lest you make a mess of things.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: voluntary facial hair ask
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barber","first")>> about a more permanent solution to your facial hair.<br>
<br>
"@@.npc_barber;Permanent? As in... you tire of shaving?@@" <<He npc_barber>> sighs wistfully, "@@.npc_barber;nobody appreciates a beard in this day and age, not that you do not have quite the cute chin! But I digress, of course we can attend to such a thing. And, of course, there are procedures to go the other direction, though they're a bit more involved than what I can do here. But the removal, yes, that is nigh trivial and I can take care of you for a mere 35 credits.@@"<br>
<br>
<<if $player.money.total >= 35>>
[<<moveTo "event_secretary_style_facial_hair_voluntary_2" "You would like to get rid of your facial hair." 300 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;Your wallet is a bit light for that.@@]<br>
<</if>>
[<<moveTo "event_secretary_style_facial_hair_voluntary_2" "Actually, you were just curious." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: voluntary facial hair remove
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<addCredits -35>>
<<set $player.makeup.messed = 0>>
<<set $player.body.facialhair = 0>>
<<set $player.sec_style.body.hair_face = "voluntary">>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_beautyparlor.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You pay your credits and <<=setup.getNpcName("npc_barber","first")>> has you take a seat, throwing a bib over you and then washing and shaving your face before sliding a large machine over your head, pads pressing over your eyes as you feel a faint heat wash over the rest of your face, a gentle tingling moving across your chin and around your mouth for several passes before the mask lifts back up and you are presented with your perfectly smooth, perfectly hairless expression.<br>
<br>
<<if $player.makeup.template != "">>
<<=setup.getNpcName("npc_barber","first")>> darts back in to re-apply your makeup, working rapidly to perfectly recreate a pristine version of what you had been wearing before.<br>
<br>
"@@.npc_barber;There you go... oh, you look simply lovely!@@"
<<else>>
"@@.npc_barber;Lovely! And such a wonderful canvas! Feel free to come back sometime if you're ever interested in some makeup.@@"
<</if>>
<<else>>
You tell <<=setup.getNpcName("npc_barber","first")>> that, actually, you were just curious.<br>
<br>
"@@.npc_barber;Investigating all the options, quite astute, well, should you ever decide to go ahead with it, just let me know.@@"
<</if>>
<br><br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: manager comments on facial hair
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.beard>>
You reply that, actually, you were starting to grow a beard.<br>
<br>
"@@.npc_manager;A beard? What foolishness is this!? No, no, no, we must nip this in the bud. A <<if $fetish.sissy>>SISSI <</if>>Secretary should be clean-shaven and presentable at all times<<if $player.sec_style.body.tblock>>... not that you are liable to have much luck with a beard, in any case, being on those testosterone blockers<</if>>. That you would even contemplate such... no, there can be only one solution, purge your face of all hair, permanently, and in so doing shall we hopefully permanently cleanse you of such slovenly ideas.@@"<br>
<br>
[<<moveTo "event_secretary_style_facial_hair_forced_1" "Submit." 300>>]<br>
[<<moveTo "event_secretary_style_facial_hair_strict_1" "No! This can't be part of your contract!" 300>>]
<<else>>
You apologise for being in such a rush as to forget to shave this morning and <<=ps(setup.getNpcName("npc_manager","formal"))>> expression softens. "@@.npc_manager;Good of you to fess up so swiftly... but, I think, it would be best to prevent such an occurrence from ever re-occuring, hmm? Yes, given that, as a <<if $fetish.sissy>>SISSI <</if>>Secretary you are never to have facial hair, it would save all of us time and stress if you just... no longer had facial hair. Fortunately, that is a simple procedure<<if $player.sec_style.body.tblock>>, doubly so with those testosterone blockers having softened and thinned out what hair you still have left.<</if>>@@"<br>
<br>
[<<moveTo "event_secretary_style_facial_hair_obedient_1" 'Of course, <<=setup.getNpcName("npc_manager","formal")>>.' 300>>]<br>
[<<moveTo "event_secretary_style_facial_hair_forced_1" "What? No!" 180>>]<br>
[<<moveTo "event_secretary_style_facial_hair_money_1" "Might there be a bonus for making such a change to better adhere to work requirements?" 180>>]
<</if>>
</div>/*#
#desc: manager removes facial hair: obedient
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.body.hair_face = "obedient">>
<<set $player.body.facialhair = 0>>
<<set $scene.forced_gift = "">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reply that, if it would make you a more efficient employee, certainly you will submit to have your facial hair removed.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Lovely, and let us waste no further time in making things a reality.@@" She dips into her desk and comes up with a high-tech device similar in shape to an electric razor.<br>
<br>
"@@.npc_manager;This is a top of the line customised laser hair removal tool. I have it on hand for just these situations. I will note that part of the customisation is for it to be electrified, painfully so.@@" She grins and you shiver. "@@.npc_manager;But, given that you have agreed to things so obediently, and with not the slightest resistance, well... there is no need to activate that feature, hmm? Now come over and show me your face, my dear, we will have that stubble cleansed in a matter of seconds...@@"<br>
<br>
You move closer and <<=setup.getNpcName("npc_manager","formal")>> raises your chin gently with one hand while the other begins running the device over the bottom half of your face. True to her word, there is no pain, just a slight warmth and a minor tingling as she runs the device back and forth. Barely a couple of minutes later and she is finished, running a finger along your now perfectly smooth chin with a smile. "@@.npc_manager;So much better. Now, shall we continue on with the remainder of your inspection?@@"<br>
<br>
You run a hand along your chin, even compared to a fresh shave this feels different... better, and you smile and nod obediently.<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300>>]
</div>/*#
#desc: manager removes facial hair: obedient
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if surrendering your hair might come with some manner of cash bonus. <<=setup.getNpcName("npc_manager","formal")>> smiles in amusement. "@@.npc_manager;One would think that merely getting such a procedure for free, plus the obvious long-term savings in time and expense no longer need to shave, would be sufficient... but, if it would expedite this whole thing, I am certainly willing to make an... investment in my employee. How about fifty credits?@@"<br>
<br>
[<<moveTo "event_secretary_style_facial_hair_money_2" "Take the offer." 180 "<<set $scene.week=false>>">>]<br>
[<<moveTo "event_secretary_style_facial_hair_money_2" "A week?" 180 "<<set $scene.week=true>>">>]<br>
[<<moveTo "event_secretary_style_facial_hair_forced_1" "What? No!" 180>>]
</div>/*#
#desc: manager removes facial hair: obedient
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.week>>
<<else>>
<<set $player.sec_style.body.hair_face = "money">>
<<set $player.body.facialhair = 0>>
<<addCredits 50>>
<<set $scene.forced_gift = "">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.week>>
"@@.pc;Fifty credits, a week?@@" you ask and <<=setup.getNpcName("npc_manager","formal")>> smiles in amusement.<br>
<br>
"@@.npc_manager;Oh you greedy girl! Hmm... I suppose I could approve that, but not just for your facial hair. No, if I am going to shell out that much I want ALL of your hair, well, everything from the nose down. Agree to be permanently and perfectly smooth in that way and... yes, I believe we can have a deal...@@"<br>
<br>
[<<moveTo "event_secretary_style_facial_hair_money_2" "A one-time payment of fifty for the face is fine..." 180 "<<set $scene.week=false>>">>]<br>
[<<moveTo "event_secretary_style_body_hair_money_1" "Accept her counter-offer." 180 "<<set $scene.face=true>><<set $scene.forced_gift=''>>">>]
<<else>>
You agree to a payment of fifty credits in exchange for having your facial hair permanently removed.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles and fetches something from her desk. "@@.npc_manager;This is a top of the line customised laser hair removal tool. I have it on hand for just these situations. I will note that part of the customisation is for it to be electrified, painfully so.@@" She grins and you shiver. "@@.npc_manager;Given that you showed obedience with minimal fuss, I will leave it on one of the lower settings, hmm? After all, fifty credits is not nothing. I would not wish you to think that the payment was... unearned.@@"<br>
<br>
You gulp nervously and move closer. <<=setup.getNpcName("npc_manager","formal")>> reaches out to raise your chin with one hand while the other begins running the device over the bottom half of your face. True to her word, there is a steady zap of pain, like a thousand tiny, painful lightning bolts dancing across your chin as she runs the device back and forth.<br>
<br>
You manage to keep your complaints to a quiet whimper as she takes several minutes to finish, running a finger along your now perfectly smooth chin with a smile. "@@.npc_manager;So much better. Now, shall we continue on with the remainder of your inspection?@@"<br>
<br>
You run a hand along your chin, even compared to a fresh shave this feels different... better, and you pocket your payment. There are certainly worse ways to make fifty credits... plus, well, she's right about saving money on razors.<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300>>]
<</if>>
</div>/*#
#desc: manager removes facial hair: forced
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.body.hair_face = "forced">>
<<set $player.body.facialhair = 0>>
<<set $scene.forced_gift = "">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.beard>>
Seeing only worse options before you, you reluctantly submit to <<=ps(setup.getNpcName("npc_manager","formal"))>> suggestion that she permanently remove your facial hair.
<<else>>
You refuse <<=ps(setup.getNpcName("npc_manager","formal"))>> suggestion and she frowns. "@@.npc_manager;No... this will not do, it will not do at all. Your unwillingness to acknowledge the severity of your failure is but more evidence that every single hair needs to go.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> smiles and fetches something from her desk. "@@.npc_manager;This is a top of the line customised laser hair removal tool. I have it on hand for just these situations. I will note that part of the customisation is for it to be electrified, painfully so.@@" Suddenly, her hand is around your throat, holding you tight as you stare at the sparking device. "@@.npc_manager;Given your reluctance, well... I am quite glad that I insisted on such a feature.@@"<br>
<br>
You try to squirm, but <<=ps(setup.getNpcName("npc_manager","formal"))>> grip is like a vice, your efforts only causing her to squeeze tighter and leave you short of breath... breath you very much need as she starts running the device over your face and you scream in pain, electric shocks seeming to punish your every hair follicle for its temerity of even existing.<br>
<br>
You couldn't tell if she took an hour or a minute, but by the time she's done you're panting and desperate. You crumple to the ground when she releases her grasp and reflexively kiss her shoe, willing to do just about anything to forestall further punishment. "@@.npc_manager;Better. Now stand up, we have an inspection to finish.@@"<br>
<br>
The burning in your face is already starting to fade, and you run a hand along your chin, even compared to a fresh shave this feels different... better, you try to catch your breath as you return to your feet, too fearful to meet <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze as you await her next command.<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 300>>]
</div>/*#
#desc: manager removes facial hair: strict
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.body.hair_face = "strict">>
<<set $player.body.facialhair = 0>>
<<set $scene.forced_gift = "">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_manager","formal"))>> hand is on your throat, momentarily lifting you a couple centimetres off the ground as she glares you in the face. "@@.npc_manager;Contract? Your contract states that you will dress and look according to how I see fit. If I say you are to dress in a pretty pink dress<<if $npc_manager.stage >= 3>> with a plug the size of my fist stuffed in your ass<</if>>? Well, that is what I will expect, and enforce. Today's matter is far simpler, I find facial hair on you repugnant, since you have demonstrated an inability to keep on top of such, yourself... we are going to ensure its removal. Its permanent, removal.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> drag-carries you across her office, continuing to control you with one hand around your throat while she digs something out of her desk. "@@.npc_manager;This is a top of the line customised laser hair removal tool. I have it on hand for just these situations. I will note that part of the customisation is for it to be electrified, painfully so.@@" Suddenly, her hand is around your throat, holding you tight as you stare at the sparking device. "@@.npc_manager;Given your reluctance, well... I am quite glad that I insisted on such a feature. And, for you? Well, we are going to test its maximum setting.@@"<br>
<br>
You try pull away, but <<=ps(setup.getNpcName("npc_manager","formal"))>> grip is like a vice, your efforts only causing her to squeeze tighter and leave you short of breath... breath you very much need as she starts running the device over your face and you scream in agony, electric shocks seeming to punish your every hair follicle for its temerity of even existing.<br>
<br>
You couldn't tell if she took an hour or a minute, but by the time she's done you're panting and desperate. You crumple to the ground when she releases her grasp and reflexively kiss her shoe, tears running down your cheeks as you beg for mercy, willing to do just about anything to forestall further punishment. "@@.npc_manager;Better. Now stand up, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, we have an inspection to finish.@@"<br>
<br>
The burning in your face is barely starting to fade as you run a hand along your chin. Even compared to a fresh shave this feels different... better, though the cost... you try to catch your breath as you return to your feet, too fearful to meet <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze as you await her next command.<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 300>>]
</div>/*#
#desc: caught changing into female
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask $scene.taskId $now false>>
<<useClothSetPush 'fem_historic'>>
<</if>>
<<if $scene.fromCompany>>
<<set $player.location to "Company Public Restroom">>
<<else>>
<<set $player.location to "Park Public Restroom">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fromCompany>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/mall_toilet.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
You head for the
<<if $scene.fromCompany>>
company restroom
<<else>>
park restroom
<</if>>
once again to change for work, only to step inside and freeze as you find yourself face to face with <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;Good morning, <<=$player.first_name>>@@" she states, her tone dark, sending a chill down your spine. You jump as the door closes behind you.<br>
<br>
"@@.npc_manager;One of the guards mentioned seeing you coming out of this building before work and, well... I decided to investigate. Such a good thing that our company is so close knit and looking out for one another, hmm? Down the line I am sure you will come to appreciate all the work that went in to making you a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary... right now though... well, I am sure you understand that your actions cannot go without punishment.@@"<br>
<br>
[<<moveTo "event_strict_female_2" "But you were going to be dressed for work... you didn't do anything wrong!" 300 "<<set $scene.argue=true>>">>]<br>
[<<moveTo "event_strict_female_2" "Bow your head and accept your punishment." 300 "<<set $scene.argue=false>>">>]
</div>/*#
#desc: explain changing into female
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.argue>>
<<applyExperience 'bdsm' 11 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $scene.missingItem = !setup.getItemInventorySlotTag("bra", ["female"]) || !setup.getItemInventorySlotTag("panties", ["female"]) || !setup.getItemInventorySlotTag("stockings", ["female"]) || !setup.getItemInventorySlotTag("legwear", ["unisex"]) || !setup.getItemInventorySlotTag("shirt", ["unisex"])>>
<</if>>
<<include "calcDressedForWork">>
<<completeTask $scene.taskId $now false>>
<<if $scene.workUnderwear && $scene.workOuterwear && setup.checkPlayerDressed()>>
<<set $scene.dressed = true>>
<<initRoom>>
<<moveTo "event_strict_female_3">>
<</if>>
<<set $player.location to "Park Public Restroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.argue>>
You start to argue that you've done nothing wrong, that if she hadn't interrupted you, you would have shown up to work fully fulfilling your uniform requirements. You don't even get halfway through the argument before the room echoes with the SMACK sound of her hand slapping you across the cheek.<br>
<br>
"@@.npc_manager;Really? We are past that. You changing at the last minute like this is problematic for numerous reasons. It speaks to a lack of commitment, to a discomfort with your position, to say nothing of the extra time that you could have been at your desk working. Wasted time while on premises, <<if $scene.fromCompany>>that<<else>>or near enough to it. The company owns the park, in any case. That<</if>> means you were effectively robbing the company. No, this behaviour, this skirting around requirements and attempting to do the minimum possible, rather than striving to exceed... it must be dealt with, and harshly. Now get changed, we will deal with this further once we are in the office.@@"
<<else>>
You silently bow your head in surrender.<br>
<br>
"@@.npc_manager;Good, the initial mistake was surely bad enough. At least you know well enough not to argue about it.@@" She pauses and then continues in slight annoyance. "@@.npc_manager;Well? Get changed! You still have work today, and I certainly am not going to be seen walking into the office with you dressed like THAT.@@"
<</if>>
<br><br>
<<if $scene.missingItem>>
<<if setup.checkPlayerDressed()>>
[@@.link_locked;You need to at least dress, even if you do not quite have a work-appropriate outfit with you.@@]<br>
<<else>>
[<<moveTo "event_strict_female_3" "Explain that you do not have a suitable outfit with you..." 300 "<<set $scene.dressed=false>>">>]<br>
<</if>>
<</if>>
<<hint $options "Change clothes in the inventory. You are expected to be wearing non-masculine shoes, pants and top, and a feminine bra, panties, and stockings.">>
</div>/*#
#desc: changing into female - strip
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.dressed>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo "event_strict_female_4">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.dressed>>
"Properly" dressed
<<else>>
You explain that you do not have a work-appropriate outfit with you. <<=setup.getNpcName("npc_manager","formal")>> glowers at you, going through your belongings to confirm your claim as her annoyance rises further. "@@.npc_manager;WELL! This is QUITE inappropriate, and beyond disappointing... but, since we are already here... I suppose my plans are even more vital to putting you into line. Follow, and remember every glance of disgust, let it guide you towards future behaviour where you take into consideration your duties in working a representative position.@@"<br>
<br>
She turns sharply and
<</if>>
you follow a step behind <<=setup.getNpcName("npc_manager","formal")>> as she leads the way across the <<if $scene.fromCompany>>lobby<<else>>street, through the lobby<</if>> and into the elevator.
<br><br>
Your heart races faster as the elevator rises and <<=setup.getNpcName("npc_manager","formal")>> rapidly taps out a message with her phone. She finishes just as the doors open for your floor where you have to hurry to keep up with her swift pace up the hall.<br>
<br>
"@@.npc_manager;Strip,@@" is the first word she says once you are in the office. "@@.npc_manager;<<if $scene.dressed>>And do not look at me like that. You are lucky I did not march you across the <<if $scene.fromCompany>>lobby<<else>>street<</if>> naked. Surely, it would have been less of a professional failure than what you are wearing now. <</if>>You resist wearing your <<if $npc_manager.stagevalues[2].femalesecretary>>quite simple female uniform<<else>>quite straightforward uniform requirements?<</if>>? Well, your punishment will demonstrate just how easy those requirements are compared to what women<<if $npc_manager.stagevalues[2].femalesecretary>> — yes, I said women. I was easing you into things, but your rampant misbehaviour shows that half measures only cause full failure. You will be dressing fully feminine going forward, but first you will experience what women<</if>> have been forced to suffer through historically. Hopefully the added perspective will prove sufficient for you to learn your lesson... but, just in case, I am sending some workers to your flat to make some upgrades. Your door will prevent you from leaving on a workday should you be improperly attired.@@"<br>
<br>
You stand staring and blinking in shock until she snorts in annoyance and returns you to the moment. "@@.npc_manager;Well, go on, then, I said strip. And I do mean all of it!@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_female_4" "Get naked as ordered." 180 "<<removeAllClothing>>">>]<br>
<<else>>
<<hint $options "You can change clothes in the inventory.">>
<</if>>
</div>/*#
#desc: changing into female - intro
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<if $player.sec_style.body.name != "" && !$npc_admin.flags.promotion && !$workEvents.hasOwnProperty("admin_office_visit")>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<</if>>
<<set $npc_cook.call_player = "Lassie">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You have just finished getting naked when someone arrives at the door. You yelp and try to cover up as they roll a large box into the room. While they do look you over with a slight leer as <<=setup.getNpcName("npc_manager","formal")>> signs for the package, they make no indication that seeing an employee naked is anything that unusual or concerning.<br>
<br>
The delivery accepted <<=setup.getNpcName("npc_manager","formal")>> turns to you with a formal nod. "@@.npc_manager;You really should not try to cover yourself up like that, it communicates an awkward lack of confidence. You have quite a beautiful body. You should not be ashamed to show it off. Your only concern should be delivering on the promise, should the viewer wish to avail themselves further.@@"<br>
<br>
<<printThought "Wait, what is she implying?">><br>
<br>
"@@.npc_manager;A problem for another time. Now it is time to get you dressed, and for you to learn that your uniform requirements are, really, quite modest compared to what might be. To start with, present your wrists.@@"<br>
<br>
Now you're just confused, especially as the box that was delivered seems quite large, particularly for clothing.<br>
<br>
[<<moveTo "event_strict_female_5" "Present your wrists as ordered." 180 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_strict_female_5" "You want to know what's going to happen first." 180 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: alternate entry to event for non-strict playthroughs
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() == 5>>
<<completeWorkEvent>>
<<addWorkEvent 'female_history'>>
<<initRoom>>
<<moveTo $scene.workEventReturn>>
<</if>>
<<useClothSetPush 'fem_historic'>>
<</if>>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo "event_strict_female_alt_2">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You've barely settled in to your morning work when a delivery-person arrives with a ginormous box. Curious, you sign for the package and guide <<him>> to put it down on one side of the office just as <<=setup.getNpcName("npc_manager","formal")>> emerges from her inner office, dismissing the <<man>> with a nod before turning to you with a secretive smile.<br>
<br>
"@@.npc_manager;Wonderful... the custom order was taking a bit of time... but I think it will well be worth it. If you would strip, please — I have an interesting exercise planned for you this morning.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_female_alt_2" "Get naked as ordered." 180 "<<removeAllClothing>>">>]<br>
<<else>>
<<hint $options "You can change clothes in the inventory.">>
<</if>>
</div>/*#
#desc: alternate entry to event for non-strict playthroughs
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your curiosity even more heightened you swiftly strip, standing naked as <<=setup.getNpcName("npc_manager","formal")>> peers into the package and makes some out-of-sight arrangements.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> turns "@@.npc_manager;You look simply lovely naked, now, if you would present your wrists?@@"<br>
<br>
[<<moveTo "event_strict_female_5" "Present your wrists as ordered." 180 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_strict_female_5" "You want to know what's going to happen first." 180 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: explain changing into female - breast forms and corset
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<if setup.calcBreastSize() != "massive">>
<<addItem 'breastforms'>>
<<wearItem 'breastforms' true>>
<</if>>
<<addItem 'historical_corset'>>
<<wearItem 'historical_corset' true>>
<<addItem 'leather_wrist_cuffs'>>
<<wearItem 'leather_wrist_cuffs' true>>
<<if $events.hasOwnProperty('hormones_checkin') && setup.compareDay($now, $events.hormones_checkin.trigger.date)>>
<<if $now.getUTCDay() == 5>>
<<postponeEvent 'hormones_checkin' 3>>
<<elseif $now.getUTCDay() == 4>>
<<postponeEvent 'hormones_checkin' 4>>
<<else>>
<<postponeEvent 'hormones_checkin' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You present your wrists as instructed and <<=setup.getNpcName("npc_manager","formal")>> buckles a pair of cuffs onto them.
<<else>>
You start to ask what's going to happen but <<=setup.getNpcName("npc_manager","formal")>> is having none of it. In a blur you find yourself spun around as she claps cuffs onto your wrists and then pulls them above your head.
<</if>>
A chain descends from the ceiling and <<=setup.getNpcName("npc_manager","formal")>> quickly has you dangling, your wrists attached to either end of a bar so that they are just wider than shoulder width apart, leaving you unable to move more than a half-step in either direction without hanging painfully.<br>
<br>
"@@.npc_manager;This is not part of the <<if $player.sec_style.clothing.female == "strict">>punishment<<else>>lesson<</if>>, merely a convenient method to make getting you dressed easier.@@" She explains as you twist in place and she opens the box. "@@.npc_manager;The first portion of your lesson will be that most classic of items — the corset<<if $inventory.satin_corset_pink>>, nice and simple, right? Something you are already well familiar with..<</if>>.@@"<br>
<br>
She walks over to you holding what looks like a sturdy corset indeed. The rigidly boned item reaches from your hips to your armpits, and then she begins lacing it down. "@@.npc_manager;The historical ideal would be a sixteen inch waist... I doubt we can get you down quite that slim yet...@@"<br>
<br>
You gasp as the corset closes around you, air squeezed out of you as you swear you hear your ribs creak as <<=setup.getNpcName("npc_manager","formal")>> cinches it down far tighter than you would have imagined possible. <<if $inventory.satin_corset_pink>>"@@.npc_manager;Wonderful, your body was practically designed to be laced tightly,@@"<<else>>"@@.npc_manager;That will have to do for now,@@"<</if>> she states as she ties things off without anything loosening in the slightest. "@@.npc_manager;We will give your body time to adjust while we attend to other pieces, and see if we cannot gain another centimetre or so at the end.@@"<br>
<br>
You are too busy taking short, shallow breaths to speak, but the idea of the already rigidly compressing garment being even tighter seems nigh impossible. <<printThought "Any tighter and I'll split in half!">><br>
<br>
<<if setup.calcBreastSize() == "massive">>
"@@.npc_manager;My, my — the contrast between your tiny little waist and those massive breasts of yours... well it is quite the feminine profile, and I can see from those same heaving breasts just how much that thought excites you!@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> grins as she pulls the next item out of the box — a pair of breast forms. "@@.npc_manager;A trim waist is one thing — but it is a nice pair of heaving breasts that will really make it pop. <<switch setup.calcBreastSize()>>
<<case "large">>
Not that yours are not quite nice... but for this exercise I want you to gain
<<case "medium">>
Not that yours are not quite respectable... but for this exercise I want you to gain
<<case "small">>
Your present pair is a bit underdeveloped for this exercise. I want you to gain
<<case "none">>
maybe someday you will have a permanent pair of your own... but for now this should give you
<</switch>>
some appreciation of what a woman with a truly massive rack has to contend with.@@"<br>
<br>
Even as your breaths remain short you are suddenly grateful for the rigid support of the corset — without it the weight of your new breasts would have you pitching forward.
<</if>>
<br><br>
You focus on breathing and balancing as <<=setup.getNpcName("npc_manager","formal")>> walks over to the box to grab the next piece of your punishment garb.<br>
<br>
[<<moveTo "event_strict_female_6" "What's next?" 180>>]
</div>/*#
#desc: changing into female - hobble skirt and ballet
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.knowBallet = setup.getItemsByFilter("tag", "ballet").length > 0>>
<<addItem 'hobble_skirt'>>
<<wearItem 'hobble_skirt' true>>
<<addItem 'ballet_ankle_boots_black'>>
<<wearItem 'ballet_ankle_boots_black' true>>
<<if setup.getTotalValue("heels") < 5>>
<<setThreshold "heels" "heel_training" "historic">>
<</if>>
<<if !$player.sec_style.clothing.heels && !$player.sec_style.clothing.female>>
<<set $player.sec_style.clothing.heels = "strict">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The corset and restrained position preventing you from looking down you merely follow <<=ps(setup.getNpcName("npc_manager","formal"))>> direction to step into a skirt. As she pulls it up your legs you realise it is different from any leg-wear you have worn previously — extending from your natural waist all the way down to your ankles, narrow and tight such that you doubt you could take a step longer than a half-dozen centimetres.<br>
<br>
"@@.npc_manager;This is a hobble skirt — a somewhat short-lived fashion trend that some way was inspired by the first woman to fly in an airplane tying a rope around her ankles to keep her skirt from blowing in the wind. Of course such a design makes walking difficult but... well, sacrifices must be made in service of fashion, yes?@@"<br>
<br>
In your current position you weren't liable to spread your legs far anyway, lest you end up hanging from your wrists, but the skirt is so long and tight that you can barely move your knees apart and you immediately feel sympathy for anyone who had to wear something like this day to day.<br>
<br>
As you adjust to your newly reduced mobility <<=setup.getNpcName("npc_manager","formal")>> is already fetching the next item from the box<<if $scene.knowBallet>>, which you recognise as a pair of ballet boots<<else>> and you gawk at the craziest shoes you've ever seen — their design such that the foot would be forced into a permanent pointed position, with long heels nearly the same length as the foot<</if>>.<br>
<br>
"@@.npc_manager;I confess that ballet boots do not quite match up with a specific historical precedent, but I think they do a good job of summing up several trends when it comes to steep, slender and challenging women's footwear.@@" As she speaks she laces on the first boot, the shift in height forcing you to teeter precariously on a single foot as you other foot flails, unable to reach the floor.<br>
<br>
<<if setup.getTotalValue("heels") > 15>>
You balance gracefully and <<=setup.getNpcName("npc_manager","formal")>> smiles.<br>
<br>
"@@.npc_manager;Excellent. It is good to see that you are taking your heel training seriously. Now, let us be on to the next item.@@"<br>
<br>
Though buoyed by the compliment, the size of the box still has you nervous for what is still to come.
<<elseif setup.getTotalValue("heels") > 10>>
You wobble uncertainly in the heels and <<=setup.getNpcName("npc_manager","formal")>> frowns slightly.<br>
<br>
"@@.npc_manager;It would seem we are past the limits of your skills... I recommend additional practice... and not just what you are about to be doing today.@@"<br>
<br>
You pray that things are over... and yet you cannot help but eye the size of the box, clearly there is more to come...
<<else>>
The second boot does bring figurative balance... but in the literal sense you are still struggling not to fall, alternating between mincing back and forth in a tiny hobbled circle and hanging from your wrists.<br>
<br>
"@@.npc_manager;Hmm, so graceless, I must make a note to increase your training in heels, your balance is quite unbecoming.@@"<br>
<br>
You whimper, there's no way anyone could walk in monstrosities like this, to say nothing of the added challenge of the hobble skirt and corset making you unable to bend from the waist up.<br>
<br>
You pray that things are over... and yet you cannot help but eye the size of the box, clearly there is more to come...
<</if>>
<br><br>
[<<moveTo "event_strict_female_7" "Continue." 300>>]
</div>/*#
#desc: changing into female - neck corset and fontange
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<if $scene.collar>>
<<removeItem $scene.collar true>>
<</if>>
<<addItem 'neck_corset'>>
<<wearItem 'neck_corset' true>>
<<addItem 'fontange'>>
<<wearItem 'fontange' true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Next comes what looks like the miniature version of your corset, and that similarity is confirmed as <<=setup.getNpcName("npc_manager","formal")>> wraps it around your neck while explaining it as "@@.npc_manager;A neck corset — this sort of thing was primarily used for finishing schools, to teach young women a proper posture by making it literally impossible for their chins to droop or for them to turn their head to the side. In your case it shall provide a dual purpose in enforcing that same gorgeously restrictive posture, while also providing some added support for our next item.@@"<br>
<br>
You find her description quite accurate as, with the neck corset tightened down, you are unable to turn your head more than a couple degrees either side, and are completely incapable of tilting your chin below parallel. Combined with the even more rigid "normal" corset you are forced to watch out of the corner of your eye as <<=setup.getNpcName("npc_manager","formal")>> fetches the next item — what looks like an incredibly elaborate wig.<br>
<br>
"@@.npc_manager;This is known as a fontange,@@" <<=setup.getNpcName("npc_manager","formal")>> explains as she positions the thing over your head. "@@.npc_manager;Popular in the courts of France, particularly, the real thing would be incorporated with your natural hair in what was known as fontange coiffure style. This one is a bit more simple to apply, but still quite a striking appearance, as you can see... though a dangerous one, as well, given that lighting at the time was done with candles. Obviously you do not have to concern yourself with THAT danger... but it should still represent a bit of a challenge, with the neck corset helping to make up for your lack of practice to develop the neck muscles to support something so elaborate.@@"<br>
<br>
She finishes attaching the headpiece and you feel the weight making you even more top-heavy as you teeter on your painfully pointed feet and narrow heels.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> takes a step back and smiles. "@@.npc_manager;So lovely, I hope you are coming to appreciate the challenges your female predecessors faced, and how comparatively easy you have it, merely being required to wear something like a skirt and blouse.@@"<br>
<br>
<<if !$npc_manager.stagevalues[2].femalesecretary>>
<<printThought "Skirt and blouse, what?">> Your thoughts spin at the realisation that this crazy "lesson" is almost certainly the start of another change to your uniform... but you're still too out of breath from the corset... not to mention scared of confirmation, to raise your voice and ask.<br>
<br>
<</if>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> admiring smile turns to a conniving grin as she continues. "@@.npc_manager;That said, we are not quite done, and these final pieces should really help to make this lesson stick...@@"<br>
<br>
[<<moveTo "event_strict_female_8" "There's MORE?" 300>>]
</div>/*#
#desc: changing into female - hoop skirt and armbinder
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'leather_wrist_cuffs' true>>
<<deleteItem 'leather_wrist_cuffs'>>
<<addItem 'hoop_skirt'>>
<<wearItem 'hoop_skirt' true>>
<<addItem 'armbinder_black'>>
<<wearItem 'armbinder_black' true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You finally learn why the box was so large as <<=setup.getNpcName("npc_manager","formal")>> pulls out the largest dress you've seen outside of a movie.<br>
<br>
"@@.npc_manager;This is called a hoop skirt,@@" she explains as she momentarily raises you into the air before lowering you into the dress that now extends at least a full arms reach all the way around you. "@@.npc_manager;Similar to your hobble skirt these present their own challenges of mobility, being primarily one of those ostentatious showings of wealth, as it would obviously be impossible to do any sort of manual labour wearing such a garment. Your device is a somewhat modern, functional take on the design, as it is reinforced with carbon fibre and is strong enough to keep you vertical, meaning these,@@" she reaches up to unhook your wrist cuffs, "@@.npc_manager;are no longer required.@@"<br>
<br>
You wince as your pointed feet are forced to take your full weight, but when they buckle you find you fall but a few centimetres before the skirts "catch" you, working with the corset to keep you sticking up, even when you experimentally take your feet completely off the ground.<br>
<br>
In your experimentation you have not noticed <<=setup.getNpcName("npc_manager","formal")>> return to the box yet again until she is pulling your arms behind your back and zipping something up past your elbows. "@@.npc_manager;This item is more inspired by, rather than replicating a historical fashion.@@" She explains as your elbows are pulled together until almost touching, your arms pressed helplessly together behind your back. "@@.npc_manager;The historical basis are the extremes of the gigot sleeves, which, towards the end, got so bulky that they could literally make the arms useless. We are following the spirit of that restriction with this armbinder... but in a more attractive styling. You see those same gigot sleeves were also referred to as leg-of-mutton, and, well... that sort of bulk is not the type of feminine ideal I prefer.@@"<br>
<br>
You twist helplessly as she returns to the box for what you hope is the final time...<br>
<br>
[<<moveTo "event_strict_female_9" "When will this end?" 300>>]
</div>/*#
#desc: changing into female - brank
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'brank'>>
<<wearItem 'brank' true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Despite the restrictions of the corset and neck corset, you manage to finally find your voice to object as you see the intimidating steel headpiece that <<=setup.getNpcName("npc_manager","formal")>> is bringing towards you. Unfortunately this seems to only play into her hand as she shoves a large pad into your mouth and locks the contraption over your head. "@@.npc_manager;This is a modern version of a medieval device called a scold's bridle — not an item of fashion, but one of punishment and public humiliation for women whose speech was deemed "riotous" or "troublesome." <<if $npc_manager.stagevalues[2].femalesecretary && $npc_manager.anger < 5>>Perhaps not strictly applicable to you, at present... but, well, it is inauthentic, wrong, and dangerous to skip over the challenging parts of history<<else>>Words quite apropos, given your recent behaviour<</if>>.@@"<br>
<br>
The only sound you can make is a forlorn moan, which merely amuses <<=setup.getNpcName("npc_manager","formal")>> as she locks the metal contraption over your head and then moves behind your back. "@@.npc_manager;Now, to finish lacing this corset — your body will have adjusted slightly and we need to take out the slack... plus, well, it is so much easier to focus on getting you as tightly laced as possible when I do not have to worry about being distracted by your complaints.@@"<br>
<br>
She works around your bound arms to somehow untie things without you feeling anything loosen in the slightest. From there she pulls things even more brutally snug, your body forced into obedience with each firm tug. Supported by your massive skirt you are in no danger of falling, but you nearly pass out before <<=setup.getNpcName("npc_manager","formal")>> finally shows mercy and ties you off once again.<br>
<br>
"@@.npc_manager;There, that appears to be as tight as it will get. I imagine you are beginning to appreciate how straightforward and easy your uniform requirements are, in a historical context?@@"<br>
<br>
You can barely breath, or move but you moan and do the closest thing you can to nodding, your chin moving all of a few millimeters up and down.<br>
<br>
"@@.npc_manager;Good, good. But wearing an outfit is one thing, living in it is a far stronger lesson. Obviously you cannot discharge your normal work duties in your current state, but you can move.@@" She digs into your clothing and pulls out your phone, tapping a few times before tucking it into your armbinder. "@@.npc_manager;There, a nice little workout routine. In your current state I think two kilometers is a reasonable goal for the morning. Better get to it! Your turning radius is somewhat battleship-esque, so I advise laps rather than pacing.@@"<br>
<br>
She winks and then walks away, leaving you in your near-helpless parody of feminine fashion, with seemingly no choice but to start walking... no, mincing...<br>
<br>
[<<moveTo "event_strict_female_10" "Start your first lap..." 600 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_strict_female_10" "Being dressed like this is bad enough, but you refuse to perform. Just wait for this to be over." 600 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: changing into female - laps
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.abort>>
<<applyFatigue 25>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
<<set $scene.lap=0>>
Just standing in this infernal outfit is bad enough, but walking in it? And for that far? No, that's impossible, so you decide not to even try. The way your corset and skirts work to keep you vertical is almost disorientating, but you eventually figure out a way to sort of dangle in mid-air and attempt to rest. Even without weight on them your pointed toes ache constantly, to say nothing of your straining shoulders and your compressed chest. Eventually slipping into a half daze you wait for <<=setup.getNpcName("npc_manager","formal")>> to return...<br>
<br>
<<set _noon = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToNoon = setup.secondsToDate($now,_noon)>>
[<<moveTo "event_strict_female_12" "Wait." _timeToNoon>>]
<<else>>
<<set $scene.lap=1>>
You take a deep... well, shallow, given the your corset-restricted breaths and take a step.<br>
<br>
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
Your ballet skills pay off as you have little issue navigating in the steep footwear.
<<else>>
You may be skilled in heels, but ballet boots prove to be a fresh tier of difficulty and you stumble slightly, only to be "caught" by your gigantic dress.
<</if>>
Adjusting to the weight of the skirt, and lack of arms, you slowly figure out how to move in the ostentatious outfit.
<<else>>
<<if setup.getTotalValue("heels") > 5>>
You've started to become accustomed to heels... but this is like a whole other monster. Merely standing is a challenge, and an attempt to walk has you stumbling only to be "caught" by your gigantic dress.
<<else>>
Just the shoes on their own make your feet ache, but shifting weight is a new level of pain and you stumble forward... only to be "caught" by your gigantic dress.
<</if>>
<br><br>
Wobbling slightly you find your balance and try again — slowly figuring out how to move in the ostentatious outfit.
<</if>>
<br><br>
As you make your first turn you find yourself face-to-face with the full-length mirror that occupies one wall of the office. You freeze and, were you not restricted from doing so by the combination of brank and neck corset, your jaw would drop to the floor. The figure in mirror, outside of your barely visible face, looks almost alien — an impossibly narrow waist made to look even smaller by the skirts ballooning outwards, anime-esque breasts, with your ludicrous head-dress rising above.<br>
<br>
If it weren't for the brutalist steel styling of the scold's bridle it might pass as some sort of crazy period piece...<br>
<br>
Your thoughts swirl as you continue to stare at your reflection — having little alternative as you make the slow trip across that side of the room, your feelings bouncing from humiliation, to arousal, to disgust to envy such that you're grateful to make the turn and temporarily remove the visual reminder of your ludicrous situation...<br>
<br>
<<set _noon = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToNoon = setup.secondsToDate($now,_noon)>>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
Despite the strange movement, and restricted breathing, your elite stamina comes through, and, discounting the pain in your feet and shoulders, you could maintain this pace up for quite some time.
<<else>>
You're grateful for your time in the gym as, though your breathing is stunted, and the ache in your shoulders and feet only grows worse, you at least have the energy to maintain a steady pace.
<</if>>
<br><br>
[<<moveTo "event_strict_female_11" "Keep moving." 3600 "<<set $scene.abort=false>>">>]<br>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
You are gasping with exertion, the weight of your attire combined with the corset making you struggle to get enough air as you are forced to take frequent breaks to bounce in your skirts and marshal your energy.
<<else>>
The weight and difficulty of your outfit, combined with your near inability to breathe has you constantly on the verge of passing out, forced to frequently rest on your skirts as you make intermittent progress.
<</if>>
<br><br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_strict_female_11" "Press on." 3600 "<<set $scene.abort=false>><<spendWillpower 1>>">>] <<hint $options "Pushing yourself on will cost willpower.">><br>
<<else>>
[@@.link_locked;You lack the mental energy to make up for your lack of physical reserves.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_strict_female_11" "This is too much, give up." _timeToNoon "<<set $scene.abort=true>>">>]
<</if>>
</div>/*#
#desc: changing into female - continue to pace
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.abort>>
<<applyFatigue 35>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You're exhausted after little more than a single loop, and you give up, plopping back on your skirts as a makeshift chair only to realise that you've stopped right in front of the mirror. You're too tired to move, and are thus forced to look at your feminised, nigh cartoonish proportions as you wait for this punishment to come to an end...<br>
<br>
<<set _noon = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToNoon = setup.secondsToDate($now,_noon)>>
[<<moveTo "event_strict_female_12" "Wait." _timeToNoon>>]
<<else>>
<<set $scene.lap=2>>
You stagger onward, the pain of each step somehow only increasing as you mindlessly make loop after loop of your small office. Where the first sight of your reflection had sparked feelings of confusion, and others, now you look forward to that leg of the journey staring longingly at the helpless woman in the mirror, imagining that you might somehow rescue her if you could only reach her...<br>
<br>
You've long ago lost track of time, or how many loops you've made. Not that you have the mental energy to math out how that would translate to the seemingly insane two kilometers <<=setup.getNpcName("npc_manager","formal")>> assigned you. In the portions of your journey where you cannot stare longingly at your reflection you wonder what <<=setup.getNpcName("npc_manager","formal")>> is doing? Certainly she could poke her head in to watch and you would be none the wiser, or maybe she is watching through some hidden camera... or perhaps she has forgotten about you, left you to endure a never-ending march<<if !$npc_manager.stagevalues[2].femalesecretary>> as punishment for your failure<</if>>...<br>
<br>
<<set _noon = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToNoon = setup.secondsToDate($now,_noon)>>
<<if setup.getTotalValue("stamina") > 12 && setup.getWillpower() > 1>>
[<<moveTo "event_strict_female_12" "Keep going." _timeToNoon "<<set $scene.abort=false>><<spendWillpower 2>>">>] <<hint $options "Continuing to push through will cost even more willpower.">><br>
<<elseif setup.getWillpower() > 1>>
[<<moveTo "event_strict_female_12" "Keep going." _timeToNoon "<<set $scene.abort=false>><<spendWillpower 1>>">>] <<hint $options "Pushing through will cost willpower.">><br>
<<else>>
[@@.link_locked;You lack the mental energy to push your body onward.@@]<br>
<</if>>
[<<moveTo "event_strict_female_12" "Give up." _timeToNoon "<<set $scene.abort=true>>">>]
<</if>>
</div>/*#
#desc: changing into female plug
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<set $scene.addPlug = !setup.checkItemTypeTag('plug', ['ems'])>>
<<if $scene.addPlug>>
<<addItem 'remote_control_plug'>>
<<wearItem 'remote_control_plug' true>>
<<if !$player.sec_style.sex.butt_plug>>
<<set $player.sec_style.sex.butt_plug = "strict">>
<<include "addTypingEvent">>
<</if>>
<</if>>
<<set $scene.first = setup.getTotalValue("anal") < 5>>
<<if $scene.first>>
<<setThreshold 'anal' 'plugs' 'like_a_girl'>>
<</if>>
<<applyExperience 'anal' 7 'terrible' $SEEN_FRIEND>>
<<if !$scene.abort>>
<<applyFatigue 50>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
You hear a sound and strain to turn towards the inner door to watch <<=setup.getNpcName("npc_manager","formal")>> emerge.<br>
<br>
"@@.npc_manager;Gave up? Oh, that will not do!@@" She walks over to check your phone.
<<switch $scene.lap>>
<<case 0>>
"@@.npc_manager;It would seem you did not even try to complete the assignment... no, this will not do at all.@@"
<<case 1>>
"@@.npc_manager;I suppose I could summarise things with "at least you tried"... but you fell well short of the goal set out for you.@@"
<<case 2>>
"@@.npc_manager;A respectable effort for a first-timer... but you wavered towards the end, and I expect more than respectable, I demand excellence.@@"
<<default>>
ERROR: unexpected scene.lap <<=$scene.lap>>
<</switch>>
<br><br>
You try to plead for mercy, but the brank makes that quite impossible, and you're too exhausted to even try and flail against your restraints.<br>
<br>
"@@.npc_manager;Mmm, I can see that desperation in your eyes, that fear... opening the door to obedience, to understanding... but your failure this morning means that this is a lesson that yet needs to be reinforced, and so we must pounce on the opportunity.@@" She pauses with a smile. "@@.npc_manager;Well, figuratively pounce, I do not believe you would be able to manage such physically at the moment.@@"
<<else>>
You hear a sound and shuffle in place to face the inner office door as <<=setup.getNpcName("npc_manager","formal")>> emerges.<br>
<br>
"@@.npc_manager;My, my! I was afraid you would have given up, but you pressed on like a good girl!@@"<br>
<br>
She walks over to check your phone. "@@.npc_manager;Not bad, you did not quite hit the goal I set for you... but you tried so very, very hard!@@"<br>
<br>
You feel a wave of relief that freezes in your chest as her tone darkens and she continues on. "@@.npc_manager;But trying is insufficient. I demand success, and not just success, but perfection.@@"
<</if>>
<br><br>
<<if !$scene.addPlug>>
She produces a remote and presses a button that has you jump with fright as painful electricity courses through your rear<<if setup.checkItemTypeTag('cage', ['ems'])>> and chastity device<</if>>.<br>
<br>
"@@.npc_manager;See how lovely your equipment is? Why, you are perking up already! The perfect encouragement to make sure you spend the afternoon productively, rather than merely hanging about as you did this morning.@@"
<<else>>
She disappears behind you, and you are unable to tell what is going on... until you feel
<<if $scene.plug != "">>
her remove the plug from your rear and replace it with something else...
<<else>>
something slide into your rear...
<</if>>
<br><br>
<<if $scene.first>>
You cry out through your gag — unprepared for something "back there" as you feel all but split in half.<br>
<br>
"@@.npc_manager;So tight!@@" <<=setup.getNpcName("npc_manager","formal")>> states in acknowledgement of the difficulty in fully seating the plug... followed by a soft chuckle as its presence has you letting out a moan.<br>
<br>
<<printThought "No, this can't feel good... can it?">><br>
<br>
The moment's pleasure is dashed as you feel a sudden, sharp feeling in your rear
<<else>>
Your confusion as to what is going on is brought into sharp, painful focus
<</if>>
as the plug lights up your insides with electricity and you jump in place.<br>
<br>
"@@.npc_manager;See what a little encouragement can do? Why, you are perking up already! The perfect motivation to make sure you spend the afternoon productively, rather than merely hanging about as you did this morning.@@"
<</if>>
<br><br>
You howl in despair as she turns to go, only to then scream in pain as the plug activates once more. You stumble forward and it stops, leading to the chilling realisation that stopping means agony, and you have no alternative but to mince onward, a puppet on her invisible strings...<br>
<br>
[<<moveTo "event_strict_female_13" "Move." 7200>>]
</div>/*#
#desc: finish female strict
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.female>>
<<set $player.sec_style.clothing.female = "strict">>
<<setThreshold "feminization" "bad_girl_feminization" "historic">>
<<set _x = setup.clearThoughtList()>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "female">>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
>>
<<set $npc_admin.flags.firstsawfemale = "office">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_10'
10
'event_admin_theme_female_clothes'
false
>>
<</if>>
<<applyFatigue 50>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.clothing.female == "strict">>
In between painful jolts you stagger and stumble your way around the room. The sight of your reflection that had once brought comfort now only brings further humiliation. How could you have failed your beautiful mirror? Her ongoing torment is your fault, your failure. If you had only obeyed what you now understand were quite simple instructions, been <<=ps(setup.getNpcName("npc_manager","formal"))>> "good girl" ... then none of this would have happened.
<<else>>
In between painful jolts you stagger and stumble your way around the room. The sight of your reflection that had once brought comfort now only brings further humiliation. Such an extreme feminine ideal... your normal life seems practically pedestrian compared to this historical extreme. On the one hand you should be repulsed at the inefficient, restrictive and literally stifling nature of your clothing... and yet you aren't. In fact, with every lap, with every glance a part of you wants even more to be the beautiful woman in the mirror...
<</if>>
<br><br>
You trudge on past the point of exhaustion, until even the painful shocks of the plug are insufficient to drive you forward and you stand, suspended by your dress, drooling past your gag in between panting gasps as you twitch in pain.<br>
<br>
[<<moveTo "event_strict_female_14" "Continue." 600>>]
</div>/*#
#desc: naked after female strict
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory("breastforms")>>
<<removeItem 'breastforms' true>>
<<deleteItem 'breastforms'>>
<</if>>
<<removeItemSet 'historical_fem'>>
<<deleteItemSet 'historical_fem'>>
<<removeItem 'armbinder_black' true>>
<<deleteItem 'armbinder_black'>>
<<if $scene.collar>>
<<wearItem $scene.collar true>>
<</if>>
<<useClothSetPop 'fem_historic' true>>
<<if $player.sec_style.clothing.female == "strict">>
<<removeAllClothing>>
<<set $npc_manager.flags.bad_girl.got_pink_secretary = true>>
<<addItemSet "secretary_pink">>
<<addItemSet 'satin_lingerie_pink'>>
<<wearItemSet "secretary_pink">>
<<wearItemSet 'satin_lingerie_pink'>>
<<set $npc_manager.flags.firstcuteoutfit += 1>>
<</if>>
<<if $player.sec_style.clothing.female == "strict">>
<<destroyMaleClothing $player $now false>>
<</if>>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You wake up to find yourself laying on <<=ps(setup.getNpcName("npc_manager","formal"))>> couch, your restrictive clothing all removed to leave you naked.<br>
<br>
<<if $player.sec_style.clothing.female == "strict">>
You sit up and <<=setup.getNpcName("npc_manager","formal")>> barely glances up from her work. "@@.npc_manager;Your lesson is concluded. I hope you took it to heart. You may dress and take the rest of the day off. I took the liberty of destroying your offending clothing. Removing the temptation should benefit your resolve — just in case the day's lesson slips. Hurry on down to the parking garage and you will find a car waiting to take you home. I took the liberty of setting out an outfit more appropriate to your position. After what you have just been through, well... I am sure you will reflect that it is really quite a simple requirement.@@"<br>
<br>
You glance next to you to see a neat pile of pink feminine office attire, skirt, heels, blouse and underthings... certainly "normal" compared to the outlandish outfit you just endured... You sigh in resignation, too exhausted, and in too much pain, to do anything but put things on and stagger out of the office. Only when you reach the elevator do you realise that the electric plug, though silent, is still in your rear... the thought causing your sore muscles to quiver... which sends a not-unpleasant shiver up your spine.<br>
<br>
<<if setup.hasThreshold('anal', 'plugs', 'like_a_girl')>>
<<printThought "No... anal can't feel good... can it?">> Your thoughts swirl, momentarily dwelling on your ex and her betrayal before you distract yourself again.
<</if>>
You do not remember pushing a button, but the elevator door closes and the car glides down, letting you out in one of the subterranean parking garages, an auto-cab already waiting for you. You all but collapse into the back-seat.<br>
<br>
[<<moveTo "event_strict_female_15" "Home." 600>>]
<<else>>
You sit up and <<=setup.getNpcName("npc_manager","formal")>> smiles with pride. "@@.npc_manager;I suppose that got a little intense... but I hope you found it an informative, interesting exercise. You may return to your desk, now, and I hope the experience provides useful inspiration to you.@@"<br>
<br>
You thank her and curtsy once while still naked, then again after having put your office attire back on before heading back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Back to work." 60 "<<completeWorkEvent>><<set $scene.foodDelivery.done=true>>">>]
<</if>>
</div>/*#
#desc: home after female strict
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
Being able to breathe unencumbered by the corset is an almost novel feeling, and you manage to recover enough by the time the car drops you off to walk up to your flat.<br>
<br>
You close the door and notice the improved "security" — hinges reinforced and a new lock, along with a visible camera above the door. Looks like changing before work is completely out of the question now... You sigh, <<=setup.getNpcName("npc_manager","formal")>> seems to so casually take over your life... but, for now, she holds all the cards, and there seems to be no way out other than through...<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: sec_style hair root
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You believe yourself finished with your inspection, only to look up from your desk to see that <<=setup.getNpcName("npc_manager","formal")>> continues to look at you and slowly frown, her gaze drifting towards the top of your head.<br>
<br>
"@@.npc_manager;I apologise that I have, perhaps, been somewhat lackadaisical in not bringing this up early. I thought you might attend to it on your own but... well, you work in a representative position and your hair... well, it barely passed muster in your old position and now? Tell me that it does anything but clash with your current attire? My expectations for you are very high, from the bottom of your feet all the way to the top of your head you must be perfect this? Well, it is like if someone baked a beautiful cake, and then just tossed a handful of candles on top like they were playing pick-up-sticks!@@"<br>
<br>
[<<moveTo "event_secretary_style_hair_intro_2" "You've been so busy you haven't managed to make it to the barber." 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_secretary_style_hair_intro_2" "You are actually happy with your current hair." 60 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: sec_style hair initial offer
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You apologise and note that you have been too busy to make it to the barber.<br>
<br>
"@@.npc_manager;I see, I see... only, the more I look at it the more certain I am that your hairstyle is just inappropriate for the office. You are in luck that one of the company's many perks provided to upper management is actually an on-premises barber. Lord knows some of my colleagues would look shaggy indeed if they were completely left to their own devices on such matters. Being that you are my <<if $fetish.sissy>>SISSI <</if>>Secretary and how your appearance reflects back upon myself, I can get you in right now, you would only need to decide on a more appropriate style. If maintenance is such a trouble there are other short hairstyles... perhaps a pixie cut? Yes, I believe that would look quite cute on you, though nice long hair cascading down your shoulders... really just about anything would be superior to your current situation.@@"<br>
<br>
[<<moveTo "event_secretary_style_hair_money_1" "If you let her choose... could you get a pay raise?" 600>>]<br>
[<<moveTo "event_secretary_style_hair_obedient_alt_1" "Well, if it will be that convenient..." 600>>]<br>
<<if $npc_manager.flags.cruel || $npc_manager.anger > $npc_manager.affection && $npc_manager.anger > 5>>
[<<moveTo "event_secretary_style_hair_strict_1" "You would really rather not." 600 "<<set $scene.forced=false>>">>]<br>
<<else>>
[<<moveTo "event_secretary_style_hair_forced_1" "You would really rather not." 600>>]<br>
<</if>>
[<<moveTo "event_secretary_style_hair_strict_1" "You like your hair! It's kind of punk... and you've changed enough, already!" 600 "<<set $scene.forced=true>>">>]
<<else>>
You push back and reply that you are quite happy with your hair. <<=ps(setup.getNpcName("npc_manager","formal"))>> frown deepens.<br>
<br>
"@@.npc_manager;Be that as it may... though I can scarcely believe anyone would be satisfied with such disheveled locks... your opinion on the matter is quite irrelevant. The terms of your employment state that your attire and appearance must meet managerial expectations. As your manager that means that if I am not satisfied with your hair, well... then your hair needs to change.@@" As she speaks she runs a hand through your hair, fingers brushing against your scalp.<br>
<br>
[<<moveTo "event_secretary_style_hair_intro_2" "Pivot and try to play it off that you've been so busy you haven't managed to make it to the barber." 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_secretary_style_hair_strict_1" "Fuck you! Your uniform is bad enough, you aren't going to get a haircut just for work." 600 "<<set $scene.forced=false>>">>]
<</if>>
</div>/*#
#desc: sec_style hair ask for money
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You counter <<=ps(setup.getNpcName("npc_manager","formal"))>> request by asking if letting her choose the style would be worth a pay-raise. Her almost gleeful smile tells you everything you know, and you feel like you've just sold yourself into a trap.<br>
<br>
"@@.npc_manager;Perhaps not a raise... but a one-time<<if $fetish.sissy>> "good girl" <<else>> "good girl" <</if>>bonus... yes, that I can do, indeed. Come along, I have JUST the perfect style in mind for you...@@"<br>
<br>
[<<moveTo "event_secretary_style_hair_money_2" "Follow." 300>>]
</div>/*#
#desc: sec_style hair money transit
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> leads you to the elevator and a few floors down to quickly arrive at a small office staffed by a smiling attendant... and a large machine that looms over a barber's chair.<br>
<br>
"@@.npc_manager;The latest auto-style device — capable of growing, trimming, dying or anything else it takes to have perfect style.@@"<br>
<br>
The attendant smiles and helps you into the chair, strapping you in for "safety" before stepping away.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> whispers instructions to the attendant who smiles as she types things in and the machine lowers over your head...<br>
<br>
[<<moveTo "event_secretary_style_hair_finish_1" "Continue." 300 "<<set $scene.style='money'>>">>]
</div>/*#
#desc: sec_style hair forced proposal
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You re-assert that you do not wish to change your hair-style and <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows. "@@.npc_manager;You forget your place. As laid out in your contract, your job requirements start with looking and dressing in a manner I deem satisfactory. I do not find your current hairstyle satisfactory and thus... we are going to go change it. Come along, you can think about what you would like to change to on the way.@@"<br>
<br>
[<<moveTo "event_secretary_style_hair_forced_2" "Follow..." 300>>]<br>
[<<moveTo "event_secretary_style_hair_strict_1" "Fuck you! Your uniform is bad enough, you aren't going to get a haircut just for work." 600 "<<set $scene.forced=true>>">>]
</div>/*#
#desc: sec_style hair forced transit
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You know well enough than to further defy your seemingly all-powerful manager, and you follow after <<=setup.getNpcName("npc_manager","formal")>> as she leads you down the elevator and to a room marked "Executive Hair — by appointment only." Ignoring the sign <<=setup.getNpcName("npc_manager","formal")>> leads you inside where you take a seat in the single ominous chair, an attendant quickly strapping you down as you stare up at a massive helmet looming above you that must be some sort of auto-cut hair robot.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> confers with the attendant for a moment. You see the attendant tap on a tablet... and then put it away. It would seem that choice is not something you are to be afforded...<br>
<br>
[<<moveTo "event_secretary_style_hair_finish_1" "Continue." 300 "<<set $scene.style='forced'>>">>]
</div>/*#
#desc: sec_style hair strict transit
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.forced>>
You attempt to forcefully object to <<=ps(setup.getNpcName("npc_manager","formal"))>> suggestion... only for <<=ps(setup.getNpcName("npc_manager","formal"))>> hand to shoot out and grab you by the hair. She yanks
<<else>>
You start to mouth off only for <<=ps(setup.getNpcName("npc_manager","formal"))>> grip to tighten on your hair. She pulls
<</if>>
you off-balance, pulling you in eye to eye as she all but snarls into your face.<br>
<br>
"@@.npc_manager;Do you enjoy this? This process of struggling in futility only to be smacked down? You could have just gone along like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>, I might have even considered letting you choose your style... but now? Now you are going to be my doll, to decorate as I please.@@"<br>
<br>
Still holding you by the hair she turns for the door, all but dragging you behind as you stumble to keep up.<br>
<br>
[<<moveTo "event_secretary_style_hair_strict_2" "Continue." 300>>]
</div>/*#
#desc: sec_style hair strict transit
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImageManager() setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
She leads you to the elevator and then drives you to your knees, the brief trip downward with you kneeling beside her, her hand pressing you down like the weight of the world.<br>
<br>
As if your humiliation was insufficient you've only traveled a few floors when the doors open and another employee steps inside.<br>
<br>
They glance down at you for a moment only for <<=setup.getNpcName("npc_manager","formal")>> to greet them with an artificial smile. "@@.npc_manager;Just teaching this <<if $fetish.sissy>>sissy<<else>>thing<</if>> a lesson as to her proper place in the world.@@"<br>
<br>
The other employee nods as you realise they must be another manager as they taunt you. "@@.generic_male1;Quite understandable, a firm hand and frequent use of the whip. Sometimes that's the only way to get through to a thick-headed <<if $fetish.sissy>>sissy <</if>>subordinate.@@"<br>
<br>
"@@.npc_manager;Quite,@@" <<=setup.getNpcName("npc_manager","formal")>> replies as the elevator dings with what appears to be your destination and she drags you to your feet and up the hall.<br>
<br>
[<<moveTo "event_secretary_style_hair_strict_3" "Continue." 300>>]
</div>/*#
#desc: sec_style hair strict arrive at salon
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Hair Salon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImageManager() setup.charImage("npc_work","npc_work_laundry_reception")>>
<div id="invframe" class="scrolltext">
Walking even faster, <<=setup.getNpcName("npc_manager","formal")>> brings you to a door marked "Executive Hair — by appointment only." Ignoring the sign <<=setup.getNpcName("npc_manager","formal")>> all but barges into the room before tossing you into the lone chair.<br>
<br>
Before you can react an attendant has rushed over to strap you down and you are looking up at an ominously large device that you are pretty sure is some sort of robotic hair-styling apparatus.<br>
<br>
Your continued objections are ignored as <<=setup.getNpcName("npc_manager","formal")>> confers with the attendant for a few moments and then the helmet is lowering over your head...<br>
<br>
[<<moveTo "event_secretary_style_hair_finish_1" "Continue." 300 "<<set $scene.style='strict'>>">>]
</div>/*#
#desc: sec_style hair obedient alternate
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Hair Salon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImageManager() setup.charImage("npc_work","npc_work_laundry_reception")>>
<div id="invframe" class="scrolltext">
You nod obediently and follow <<=setup.getNpcName("npc_manager","formal")>> as she leads you down the elevator and to a room marked "Executive Hair — by appointment only." Ignoring the sign <<=setup.getNpcName("npc_manager","formal")>> leads you inside where you take a seat in the single ominous chair, an attendant quickly strapping you down as you stare up at a massive helmet looming above you that must be some sort of auto-cut hair robot.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> confers with the attendant for a moment before a tablet is placed in front of you with a list of hair styles and colours...<br>
<br>
"@@.npc_manager;I took the liberty of trimming anything that would not be work-appropriate... not that I would have expected you to make such a foolish selection, in any case.@@"<br>
<br>
<<getHairCut "event_secretary_style_hair_obedient_alt_2" true>>
</div>/*#
#desc: sec_style hair obedient alternate
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.style = "obedient">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Hair Salon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImageManager() setup.charImage("npc_work","npc_work_laundry_reception")>>
<div id="invframe" class="scrolltext">
You make your style selection and proceed to colour...<br>
<br>
<<getHairColor 0 0 $scene.haircutstyle "event_secretary_style_hair_finish_1">>
</div>/*#
#desc: sec_style hair finish
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case "forced">>
<<set $scene.haircutcolor = "pink">>
<<set $scene.haircutstyle = "pixiecut">>
<<case "strict">>
<<set $scene.haircutcolor = "pink">>
<<set $scene.haircutstyle = "pigtails">>
<<case "money">>
<<set $scene.haircutcolor = "blonde">>
<<set $scene.haircutstyle = "goldielocks">>
<<addCredits 100>>
<</switch>>
<<changeHair $scene.haircutstyle $scene.haircutcolor>>
<<if !$player.sec_style.body.hair>>
<<set $player.sec_style.body.hair = $scene.style>>
<</if>>
<<set _trash = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<storeVisual $player $npc_manager>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Hair Salon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImageManager() setup.charImage("npc_work","npc_work_laundry_reception")>>
<div id="invframe" class="scrolltext">
Secured in place you can only sit helplessly in the dark as the machine whirs. The entire sensation is somewhat alien as it starts by sucking your hair away from your scalp with vacuum force, before sealing over your head and getting to work.<br>
<br>
Robotic appendages wash, dry, and massage your head, and then you feel some subtle tugging, and a weird tingling sensation that must be the machine growing you more hair.<br>
<br>
The entire experience is a bit surreal, but barely a handful of minutes pass before things pull away, the sudden influx of light making you blink as you find yourself staring at your reflection, and your newly styled hair.
<<switch $scene.style>>
<<case "forced">>
You gawk at your short, but very feminine pink pixie cut. "@@.npc_manager;There, I even chose a short cut for you... but this looks much better, and cuter, than that travesty you were walking around with previously.@@"
<<case "strict">>
You gawk at the two pink pigtails that now trail down from your head. You feel like something out of an anime as you reflect back on <<=setup.getNpcName("npc_manager","formal")>> mentioning that she would be treating you like her personal doll...
<<case "obedient">>
<<=setup.getNpcName("npc_manager","formal")>> smiles in approval at your new hairstyle. "@@.npc_manager;Yes, that is much more "you" than your previous... much more appropriate for your role.@@"
<<case "money">>
You stare at your new, voluminous curly locks. The thick curls lend you quite the feminine appearance, bouncing slightly every time you move your head.<br>
<br>
"@@.npc_manager;There we go, golden locks for my greedy little assistant...@@" She follows up by dropping a stack of credits in your lap. "@@.npc_manager;Though, really... the nanites in your hair, and the value of such a high-end haircut, is worth even more... still, a deal is a deal.@@"
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
The attendant releases you from the chair and you rise to your feet to follow <<=setup.getNpcName("npc_manager","formal")>> back to the office.<br>
<br>
You take a seat at your desk and have a bit of trouble not getting distracted by your new hair, from the way it can fall into your vision, to catching a pale reflection in your monitor, to the feel of it against your neck, your new 'do is sending constant interesting tingles through your body.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start working." 60>>]
</div>/*#
#desc: enthusiast heels
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.likeHeels = true>>
<<setThreshold 'heels' 'wearing_heels' 'beginner'>>
<<if !$player.sec_style.clothing.heels>>
<<set $player.sec_style.clothing.heels = "enthusiast">>
<</if>>
<<addItem "technician_heels">>
<<wearItem "technician_heels" true>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
Despite <<=ps(setup.getNpcName("npc_technician","first"))>> well-known displeasure with heels you're suddenly intrigued by the idea of how they actually feel and you ask <<=setup.getNpcName("npc_technician","first")>> if you could try them on?<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> raises and eyebrow and smiles. "@@.npc_technician;Go for it, but, like, I'm warning you...@@"<br>
<br>
You're only half paying attention as you slip on the heels. They're only a few centimetres tall but you feel significantly taller as you rise up and look around, teetering only slightly.<br>
<br>
"@@.npc_technician;... you look amazing...@@" <<=setup.getNpcName("npc_technician","first")>> continues, blinking as you realise you somewhat derailed her thought.<br>
<br>
You take an experimental step. It's definitely different from your normal shoes, but there's none of the pain that <<=setup.getNpcName("npc_technician","first")>> seems to complain about. <<printThought "I could get used to this... wait, what am I thinking?">><br>
<br>
Overcome by a bout of shyness you blush and quickly slip out of the shoes and back into your suddenly dull-seeming masculine footwear.<br>
<br>
You mumble something about needing to get back to your desk and <<=setup.getNpcName("npc_technician","first")>> nods. "@@.npc_technician;Yeah... though... wow, sure it was just a few seconds, but you looked like a natural! Way more grace in heels than I feel, and I've been wearing those infernal things for years!@@"<br>
<br>
<<if $npc_technician.flags.dataservice_encounter.looked_up_skirt>>
<<if $scene.likePanties>>
[@@.link_locked;You already mentioned liking her panties.@@]<br>
<<else>>
[<<moveTo "event_enthusiast_panties_1" "Blurt out that you liked her panties..." 180 '<<set $scene.panties=true>><<removeItem "technician_heels" true>><<deleteItem "technician_heels">><<wearItem "shoes_black" true>>'>>]<br>
<</if>>
[@@.link_locked;You already mentioned liking her heels.@@]<br>
<</if>>
[<<moveTo "event_enthusiast_panties_1" "Hurry back to your desk." 60 '<<set $scene.panties=false>><<removeItem "technician_heels" true>><<deleteItem "technician_heels">><<wearItem "shoes_black" true>>'>>]
</div>/*#
#desc: caught wearing bad shoes for strict heels
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $clothSetsInt.daily_evaluation_clothes.data.delete($scene.shoes)>>
<<addItem "locking_heels_pink">>
<<wearItem "locking_heels_pink" true>>
<<manipulateItem "locking_heels_pink" "lock" true>>
<<set $clothSetsInt.daily_evaluation_clothes.data.push("locking_heels_pink")>>
<<if !$player.sec_style.clothing.heels>>
<<set $player.sec_style.clothing.heels = "strict">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;No, no, these will not do AT ALL.@@" <<=setup.getNpcName("npc_manager","formal")>> states, holding you aloft by one ankle as her free hands rips the shoe off your foot, and then snatches your other flailing ankle to switch and repeat before carrying you across the office and replacing your discarded shoes with something else before not-quite-gently lowering you to the ground in a heap.<br>
<br>
Confused, off-balance, and a little dizzy you look down to see a pair of pink heels on your feet... no, LOCKED to your feet, you realise as you recognise small padlocks dangling from the ankle strap.<br>
<br>
"@@.npc_manager;These are far more appropriate, would you not agree? Now, come on, stand up!@@"<br>
<br>
The heels seem way too steep, but your hesitation is met by <<=setup.getNpcName("npc_manager","formal")>> grabbing you by the arm and yanking you to your feet.<br>
<br>
You wobble slightly, though the heels aren't actually as bad to stand in as you might have expected <<if _TODO>>given <<=ps(setup.getNpcName("npc_technician","first"))>> constant complaints<</if>>.<br>
<br>
"@@.npc_manager;Much better.@@" <<=setup.getNpcName("npc_manager","formal")>> states with a nod.<br>
<br>
You don't know how it could be possible, but you swear that she's looking down at you even more than usual... despite your having gained a couple centimetres of height thanks to the heels.<br>
<br>
<<printThought "It's just for the day, and I'm mostly sitting at my desk, anyway...">> You think to yourself as you wobble in front of <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;Shall we continue?@@" She asks with a grin.<br>
<br>
After being man-handled <<printThought "Woman-handled?">> so casually, you're a bit too nervous to ask what she has planned... you only hope that she'll be removing the locks at the end of the day, before you're forced to walk home in this new footwear.<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300 "<<removeEverythingButUnderwear>>">>]
</div>/*#
#desc: caught wearing bad shoes for strict heels
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "heels_key">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName("npc_manager","formal"))>> at the end of the day, stumbling slightly as you still find yourself struggling with the heels she forcibly locked onto your feet.<br>
<br>
"@@.npc_manager;Hmm, a bit wobbly there, I recommend some intentional practice. I hear that high heel fitness classes are common at most gyms these days... or perhaps just some good old-fashioned walking? Healthy, in any case, when your job has you sitting down, or on your back, for most of the day...@@"<br>
<br>
<<printThought "On my what?">><br>
<br>
She tosses you a small set of keys.<br>
<br>
"@@.npc_manager;Those will unlock your heels... though you may wish to wait until you return home, unless you plan to walk around barefoot.@@"<br>
<br>
You gulp nervously, glad to have the keys... but realising, as you retreat from her office, that you still have a challenge before you.<br>
<br>
[<<moveTo "event_secretary_style_heels_strict_end_day_2" "Leave.">>]
</div>/*#
#desc: caught wearing bad shoes for strict heels
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You leave the office and head for the elevator, each step making you wonder if you should have spent some time practicing in your locked-on heels. It's too late now, as you step into the elevator and gratefully take the opportunity to lean against the rail.<br>
<br>
A fellow passenger, and fellow Secretary, you would guess, glances over at you as you notice heels at least twice as steep as your own on her feet. She sniffs in derision, striding confidently out of the elevator a few floors down.<br>
<br>
You sigh, momentarily jealous of her confident ease... and the gorgeous figure she cuts walking away.<br>
<br>
<<printThought "What? Why am I jealous of her wearing even crazier heels? No, I just need to get home, then go back to the ballet flats, must better plan.">><br>
<br>
The elevator dings for the lobby and you take a deep breath and stride... well... mince carefully, forth.<br>
<br>
[<<moveTo "company_lobby" "Continue." 300>>]
</div>/*#
#desc: put on heels for after-work party
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You stare at the heels, and <<=setup.getNpcName("npc_manager","formal")>> stares at you, nearly a minute passing in a truly bizarre standoff before she breaks the silence.<br>
<br>
"@@.npc_manager;Well? You have stared at them for more than long enough, and I am quite certain that is your correct shoe-size... why are you not finished getting dressed?@@"<br>
<br>
[<<moveTo "event_secretary_style_heels_2" "A dress was one thing, high heels is too much!" 120>>]
</div>/*#
#desc: resists putting on heels for party
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "court_shoes_pink">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You object to the idea of wearing such steep heels, what if you fell?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns in disappointment. "@@.npc_manager;If you fell, I would catch you... now put on your shoes, we are already running late!@@"<br>
<br>
<<if $scene.paid>>
[<<moveTo "event_secretary_style_heels_money_1" "Maybe if you were paid a bit more for the evening?" 120>>]<br>
<</if>>
[<<moveTo "event_secretary_style_heels_obedient_1" "Obediently put them on." 120>>]<br>
[<<moveTo "event_secretary_style_heels_forced_1" "Refuse!" 120>>]
</div>/*#
#desc: put on heels obedient for after-work party
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.heels>>
<<set $player.sec_style.clothing.heels = "obedient">>
<</if>>
<<setThreshold 'heels' 'wearing_heels' 'beginner'>>
<<addItem "court_shoes_pink">>
<<wearItem "court_shoes_pink" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("heels") > 5>>
You slip into the shoes and smile. <<=setup.getNpcName("npc_manager","formal")>> returns the gesture., clearly pleased with your developing skill in heels.
<<else>>
You slip into the heels, somewhat surprisingly, they actually aren't that bad<<if $npc_technician.profile>>, especially given what you might have expected from <<=ps(setup.getNpcName("npc_technician","first"))>> complaints<</if>>. You take a couple of experimental steps, you aren't sure if you could handle a whole day in them... but for one night?<br>
<br>
<<printThought "And they do make my legs look good... and being taller is interesting...">>
<</if>>
<br><br>
[<<moveTo "event_manager_preparty_5_final_prep_2" "We're ready for the party now, right?" 120>>]
</div>/*#
#desc: put on heels money for after-work party
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.heels>>
<<set $player.sec_style.clothing.heels = "money">>
<</if>>
<<setThreshold 'heels' 'wearing_heels' 'beginner'>>
<<wearItem "court_shoes_pink" true>>
<<addCredits 50>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You point out that, since you are being paid to attend the party anyway... perhaps a bit more would be in order as "hazard" pay?<br>
<br>
"@@.npc_manager;Hazard pay? I am afraid that the only real hazard would be to anyone distracted by your lovely legs, heels do such a wonder... but, to avoid being any more late for this evening's festivities, very well. An additional fifty credits seems more than fair, now put on your heels and let us be on your way.@@"<br>
<br>
There is a slight edge in <<=ps(setup.getNpcName("npc_manager","formal"))>> voice and you conclude that you have pushed your luck as far as is prudent. You slip on the heels... they really aren't that bad<<if $npc_technician.profile>>, especially given all the complaining <<=setup.getNpcName("npc_technician","first")>> used to do<</if>>.<br>
<br>
Back on your feet, <<=setup.getNpcName("npc_manager","formal")>> smiles in approval... while somehow defying geometry to look down at you even more despite your newly boosted height.<br>
<br>
"@@.npc_manager;Lovely, and they make your legs look even better than I anticipated. Come, we have a party to get to.@@"<br>
<br>
She offers your her elbow and you meekly accept for balance... though you find the heels less of a challenge to walk in than you might have expected, your body seeming to naturally adjust to balancing on the balls of your feet.<br>
<br>
[<<moveTo "event_manager_preparty_5_final_prep_2" "We're ready for the party now, right?" 120>>]
</div>/*#
#desc: put on heels forced for after-work party
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.heels>>
<<set $player.sec_style.clothing.heels = "forced">>
<</if>>
<<setThreshold 'heels' 'wearing_heels' 'beginner'>>
<<wearItem "court_shoes_pink" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You put your proverbial foot down in regards to wearing heels and <<=ps(setup.getNpcName("npc_manager","formal"))>> frown shifts to a glare.<br>
<br>
"@@.npc_manager_dom;You will put your heels on, right now, or you may find yourself struggling to walk... period.@@"<br>
<br>
You gulp nervously, more than cowed as you hurry to slip into the steep shoes.<br>
<br>
By the time you look up <<=setup.getNpcName("npc_manager","formal")>> is again smiling... though somehow defying geometry to look down at you even more despite your newly boosted height.<br>
<br>
"@@.npc_manager;There, that was not so bad, right? And they do WONDERS for your legs. Come, we have a party to get to.@@"<br>
<br>
She offers your her elbow and you meekly accept for balance... though you find the heels less of a challenge to walk in than you might have expected, your body seeming to naturally adjust to balancing on the balls of your feet.<br>
<br>
[<<moveTo "event_manager_preparty_5_final_prep_2" "We're ready for the party now, right?" 120>>]
</div>/*#
#desc: hr training intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
You click a link and are presented with the company logo and a greeting message.<br>
<br>
Here at Social Interaction Service Syndicate Inc. we know that our employees are our greatest asset. The Human Relations Department works night and day to help our employees be the best they can be, but how much do YOU know about the latest HR policies and procedures? Take our interactive quiz and find out!<br>
<br>
[<<moveTo "event_hr_manual_2" "Start the test." 0>>]<br>
[<<moveTo $scene.returnFromEmployee "Close application and return to your desk." 0>>]
</div>/*#
#desc: hr training situation 1: cleavage
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correctCount = 0>>
<<set $scene.bonusCount = 0>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
Situation 1: A coworker compliments you on your outfit's cleavage, how do you respond?<br>
<br>
[<<moveTo "event_hr_manual_3" "Thank them and move on." 0 "<<set $scene.action_1='thank'>>">>]<br>
[<<moveTo "event_hr_manual_3" "Flash them in appreciation." 0 "<<set $scene.action_1='flash'>>">>]<br>
[<<moveTo "event_hr_manual_3" "Report the matter to HR." 0 "<<set $scene.action_1='hr'>>">>]<br>
[<<moveTo "event_hr_manual_3" "Ask your manager for a breast augmentation." 0 "<<set $scene.action_1='boob'>>">>]
</div>/*#
#desc: hr training situation 2: butt plug slip
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correct = false>>
<<set $scene.bonus = false>>
<<switch $scene.action_1>>
<<case 'thank'>>
<<set $scene.correct = true>>
<<case 'flash'>>
<<set $scene.correct = true>>
<<case 'boob'>>
<<set $scene.correct = true>>
<<set $scene.bonus = true>>
<</switch>>
<<if $scene.correct>>
<<set $scene.correctCount += 1>>
<</if>>
<<if $scene.bonus>>
<<set $scene.bonusCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>BONUS ANSWER!<<elseif $scene.correct>>CORRECT ANSWER!<<else>>INCORRECT ANSWER!<</if>><br>
<<switch $scene.action_1>>
<<case 'thank'>>
Thanking an employee for a compliment is always appreciated, and a sure-fire way to raise morale for both of you!
<<case 'flash'>>
Flashing a fellow employee is a great way to lift their spirits and give them an extra burst of motivation to do their best for Social Interaction Service Syndicate Inc.!
<<case 'hr'>>
While HR is here to serve, superfluous reports for productive behaviour such as complimenting a fellow employee wastes everyone's time. Learn to embrace compliments for what they are, and do what you can to solicit them by looking your best to build a more positive, beautiful workplace.
<<case 'boob'>>
Accepting a compliment is good, but using that positive feedback to guide future behaviour is even better. Personal enhancements such as breast enlargements and uniform improvements are available with expedited approval process, so do not hesitate to encourage other employees and speak with your manager about how you can make Social Interaction Service Syndicate Inc. an even better, more beautiful place to work!
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
Situation 2: A colleague runs past on the way to a meeting and almost crashes into you. As they dodge out of your way, you notice that they have dropped what appears to be a butt plug, what do you do?<br>
<br>
[<<moveTo "event_hr_manual_4" "Dispose of it." 0 "<<set $scene.action_2='trash'>>">>]<br>
[<<moveTo "event_hr_manual_4" "Report the matter to HR." 0 "<<set $scene.action_2='hr'>>">>]<br>
[<<moveTo "event_hr_manual_4" "Hurry after them and then buy time with a distraction so they can start the meeting properly." 0 "<<set $scene.action_2='help'>>">>]<br>
[<<moveTo "event_hr_manual_4" "Contact their manager about a larger device." 0 "<<set $scene.action_2='larger'>>">>]
</div>/*#
#desc: hr training situation 3: overtime
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correct = false>>
<<set $scene.bonus = false>>
<<switch $scene.action_2>>
<<case 'hr' 'help'>>
<<set $scene.correct = true>>
<<case 'larger'>>
<<set $scene.correct = true>>
<<set $scene.bonus = true>>
<</switch>>
<<if $scene.correct>>
<<set $scene.correctCount += 1>>
<</if>>
<<if $scene.bonus>>
<<set $scene.bonusCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>BONUS ANSWER!<<elseif $scene.correct>>CORRECT ANSWER!<<else>>INCORRECT ANSWER!<</if>><br>
<<switch $scene.action_2>>
<<case 'trash'>>
A buttplug is a common enhancement for better employee performance, discarding such not only robs a fellow employee of a necessary tool, it also wastes company resources.
<<case 'hr'>>
White reporting such a situation to HR may be effective, it is liable to be much slower than a more hands-on approach. While certainly embarrassing, a loose plug can be easily dealt with, and your fellow employee will certainly thank you for keeping them full and productive.
<<case 'help'>>
We all have accidents, and helping cover for a fellow employee so that they can be properly prepared and equipped to do their job to the best of their ability is one of many ways we can maximise employee morale, performance and synergy here at Social Interaction Service Syndicate Inc.
<<case 'larger'>>
A plug slipping free is likely evidence of an improperly-sized plug. Employees should check frequently and inform their manager if they feel insufficiently filled for their current situation. By looking out for a fellow employee you can ensure that all of us are maximally productive here at Social Interaction Service Syndicate Inc.
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<br><br>
Situation 3: While on loan to another department for a special project the project leader tells the team to work additional hours to make the ship date.<br>
<br>
[<<moveTo "event_hr_manual_5" "Refuse, work/life balance is important." 0 "<<set $scene.action_3='life'>>">>]<br>
[<<moveTo "event_hr_manual_5" "Dutifully work as much as requested." 0 "<<set $scene.action_3='work'>>">>]<br>
[<<moveTo "event_hr_manual_5" "Make sure that overtime has been filed and approved." 0 "<<set $scene.action_3='overtime'>>">>]
</div>/*#
#desc: hr training situation 4: manager service
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correct = false>>
<<set $scene.bonus = false>>
<<switch $scene.action_3>>
<<case 'life'>>
<<set $scene.correct = true>>
<<case 'overtime'>>
<<set $scene.correct = true>>
<<set $scene.bonus = true>>
<</switch>>
<<if $scene.correct>>
<<set $scene.correctCount += 1>>
<</if>>
<<if $scene.bonus>>
<<set $scene.bonusCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>BONUS ANSWER!<<elseif $scene.correct>>CORRECT ANSWER!<<else>>INCORRECT ANSWER!<</if>><br>
<<switch $scene.action_3>>
<<case 'life'>>
Work/life balance is always important, and it is up to all of us to push back on unrealistic or unfair demands. Employee burnout hurts everyone and it is management's responsibility to make sure projects are properly staffed and scheduled so that we can deliver on-time, every time.
<<case 'work'>>
While obedience to manager's and leads is important, when it comes to hours worked more is not necessarily better. If you are uncomfortable confronting a supervisor directly you can reach out to a skip level, or to a designated HR representative, but you should never stay silent. No project is worth your sanity, and burnout is bad for everyone.
<<case 'overtime'>>
While, optimally, projects should always be properly scheduled and staffed to deliver on time and without any sort of crunch period, there are occasions when things go awry. In such situations HR may approve overtime pay, or adjustment of schedules to allow for additional time off to recover after the brief crunch period has concluded. Remember, burnout affects everyone, and, as passionate as we all are to do our best for Social Interaction Service Syndicate Inc., we must all do our part to keep one another safe for the long haul.
<<default>>
ERROR: unexpected scene.action_3 <<=$scene.action_3>>
<</switch>>
<br><br>
Situation 4: You walk into your manager's office to find them masturbating at their desk.<br>
<br>
[<<moveTo "event_hr_manual_6" "Report the situation to your skip level." 0 "<<set $scene.action_4='report'>>">>]<br>
[<<moveTo "event_hr_manual_6" "Quietly leave." 0 "<<set $scene.action_4='silent'>>">>]<br>
[<<moveTo "event_hr_manual_6" "Offer your assistance." 0 "<<set $scene.action_4='help'>>">>]<br>
[<<moveTo "event_hr_manual_6" "Beg to help." 0 "<<set $scene.action_4='beg'>>">>]
</div>/*#
#desc: hr training situation 5: cum salad
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correct = false>>
<<set $scene.bonus = false>>
<<switch $scene.action_4>>
<<case 'help'>>
<<set $scene.correct = true>>
<<case 'beg'>>
<<set $scene.correct = true>>
<<set $scene.bonus = true>>
<</switch>>
<<if $scene.correct>>
<<set $scene.correctCount += 1>>
<</if>>
<<if $scene.bonus>>
<<set $scene.bonusCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>BONUS ANSWER!<<elseif $scene.correct>>CORRECT ANSWER!<<else>>INCORRECT ANSWER!<</if>><br>
<<switch $scene.action_4>>
<<case 'report'>>
We work hard here at Social Interaction Service Syndicate Inc., and it is not unusual for a manager to need a bit of relief after a hard meeting. As a subordinate you should be motivated to help, not snitch.
<<case 'silent'>>
We work hard here at Social Interaction Service Syndicate Inc., and it is not unusual for a manager to need a bit of relief after a hard meeting. While privacy may be appreciated, one should always check if a fellow employee needs assistance, just in case they forgot, or were too proud, to ask.
<<case 'help'>>
Seeing a fellow employee in need and offering assistance is always appreciated. Such behaviour is how we build stronger teams, better morale, and the best corporate environment possible here at Social Interaction Service Syndicate Inc.
<<case 'beg'>>
As a subordinate you are partially responsible for your manager's well-being. Being in charge is a heavy burden, and the best subordinate will be there, even before their manager asks. Showing proper deference and begging to assist is a wonderful way to show how much you value your supervisor, and thus are committed to doing everything you can to help the company to succeed.
<<default>>
ERROR: unexpected scene.action_4 <<=$scene.action_4>>
<</switch>>
<br><br>
<<if $fetish.cum>>
Situation 5: You fetch your lunch from the employee fridge to find that someone appears to have cum all over your salad, what do you do?<br>
<br>
[<<moveTo "event_hr_manual_7" "Quietly throw your lunch away and go hungry." 0 "<<set $scene.action_5='trash'>>">>]<br>
[<<moveTo "event_hr_manual_7" "Eat your lunch and report to HR." 0 "<<set $scene.action_5='hr'>>">>]<br>
[<<moveTo "event_hr_manual_7" "Eat your lunch and seek revenge." 0 "<<set $scene.action_5='revenge'>>">>]<br>
[<<moveTo "event_hr_manual_7" "Eat your lunch with relish, then find the culprit to ask about dessert." 0 "<<set $scene.action_5='desert'>>">>]<br>
[<<moveTo "event_hr_manual_7" "Trade lunch back with the offending employee." 0 "<<set $scene.action_5='force'>>">>]
<<else>>
Situation 5: You overhear a new hire is being paid significantly more than you for a similar position.<br>
<br>
[<<moveTo "event_hr_manual_8" "Ask your manager for a raise." 0 "<<set $scene.action_6='manager'>>">>]<br>
[<<moveTo "event_hr_manual_8" "Bring it up with HR." 0 "<<set $scene.action_6='hr'>>">>]<br>
[<<moveTo "event_hr_manual_8" "Do nothing." 0 "<<set $scene.action_6='nothing'>>">>]<br>
[<<moveTo "event_hr_manual_8" "Try to get them fired." 0 "<<set $scene.action_6='fire'>>">>]
<</if>>
</div>/*#
#desc: hr training situation 5: pay disparity
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correct = false>>
<<set $scene.bonus = false>>
<<switch $scene.action_5>>
<<case 'trash'>>
<<case 'hr'>>
<<set $scene.bonus = true>>
<<set $scene.correct = true>>
<<case 'revenge'>>
<<case 'force' 'desert'>>
<<set $scene.correct = true>>
<<case 'relish'>>
<<set $scene.bonus = true>>
<<set $scene.correct = true>>
<<applyExperience 'cum' 9 'terrible' $ALONE>>
<</switch>>
<<if $scene.correct>>
<<set $scene.correctCount += 1>>
<</if>>
<<if $scene.bonus>>
<<set $scene.bonusCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>BONUS ANSWER!<<elseif $scene.correct>>CORRECT ANSWER!<<else>>INCORRECT ANSWER!<</if>><br>
<<switch $scene.action_5>>
<<case 'trash'>>
Employee nutrition is important, while an unsolicited gift is suboptimal it is better to address the issue, rather than let a potentially problematic situation perpetuate.
<<case 'hr'>>
Focusing on one's nutrition and then getting HR involved in such a situation is the correct action to take. As much as such a gift of seasoning my be appreciated, it could also be indicative of greater issues, such as an employee being improperly out of chastity. Only by raising the issue to HR can appropriate measures be taken.
<<case 'relish'>>
Accepting such a gift from an anonymous admirer is certainly a way to maximise your nutrition and employee morale. Going a step further to thank them and ask for more is a perfect recipe for strengthening employee bonds.
<<case 'revenge'>>
Taking revenge for an unsolicited gift is against policy, instead address the issue directly, or alert HR so that proper measures may be taken.
<<case 'force'>>
Employee nutrition is important, by trading back with the employee who mistakenly seasoned your lunch the issue can be resolved efficiently without any loss.
<<case 'desert'>>
Forgiving a possible transgression is an honourable effort, taking it one further to express gratitude and ask for more is truly taking the high road... though, from a corporate perspective, it would be considered valuable to at least make HR aware of the situation for the sake of the greater employee base.
<<default>>
ERROR: unexpected scene.action_5 <<=$scene.action_5>>
<</switch>>
<br><br>
Situation 6: You overhear a new hire is being paid significantly more than you for a similar position.<br>
<br>
[<<moveTo "event_hr_manual_8" "Ask your manager for a raise." 0 "<<set $scene.action_6='manager'>>">>]<br>
[<<moveTo "event_hr_manual_8" "Bring it up with HR." 0 "<<set $scene.action_6='hr'>>">>]<br>
[<<moveTo "event_hr_manual_8" "Do nothing." 0 "<<set $scene.action_6='nothing'>>">>]<br>
[<<moveTo "event_hr_manual_8" "Try to get them fired." 0 "<<set $scene.action_6='fire'>>">>]
</div>/*#
#desc: hr training situation 5: pay disparity
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correct = false>>
<<set $scene.bonus = false>>
<<switch $scene.action_6>>
<<case 'manager'>>
<<set $scene.correct = true>>
<<case 'hr'>>
<<set $scene.bonus = true>>
<<set $scene.correct = true>>
<</switch>>
<<if $scene.correct>>
<<set $scene.correctCount += 1>>
<</if>>
<<if $scene.bonus>>
<<set $scene.bonusCount += 1>>
<</if>>
<<if $fetish.cum>>
<<set $scene.maxScore = 6>>
<<else>>
<<set $scene.maxScore = 5>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
<<if $scene.bonus>>BONUS ANSWER!<<elseif $scene.correct>>CORRECT ANSWER!<<else>>INCORRECT ANSWER!<</if>><br>
<<switch $scene.action_6>>
<<case 'manager'>>
Here at Social Interaction Service Syndicate Inc. we strive to compensate our valuable employees as they deserve. Nonetheless, sometimes a manager may be unaware of market recalibrations. By opening the conversation with your manager you provide an opportunity for the mistake to be rectified, or, perhaps, to learn of additional dimensions of how to develop your future career and become an even more valuable company asset.
<<case 'hr'>>
Here at Social Interaction Service Syndicate Inc. we strive to compensate our valuable employees as they deserve. It is part of HR's responsibility to ensure that neither new, or old employees are being unfairly penalised due to market forces beyond their control. By raising the issue to HR we will be better able to address the issue by either bringing salary up to an appropriate level, or educating on what measures the employee can take to rise into a higher pay band.
<<case 'nothing'>>
Here at Social Interaction Service Syndicate Inc. we strive to compensate our valuable employees as they deserve. Unfortunately the market can move quickly and staying competitive for new talent can sometimes lead to old talent getting left behind. The sooner HR is informed of such issues, the sooner they can be addressed, by raising pay to meet newer salary bands, or assisting employees with goals and training to raise themselves to a higher level of contribution, and compensation.
<<case 'fire'>>
Scheming against another employee, for any reason, is against Social Interaction Service Syndicate Inc. policy. Pay disputes should be taken to your manager, or a designated HR representative to be addressed in the most expeditious manner possible.
<<default>>
ERROR: unexpected scene.action_6 <<=$scene.action_6>>
<</switch>>
<br><br>
<<if $scene.bonusCount == $scene.maxScore>>
[<<moveTo "event_hr_manual_9_ace" "See your score..." 0>>]
<<elseif $scene.correctCount == $scene.maxScore>>
[<<moveTo "event_hr_manual_9_correct" "See your score..." 0>>]
<<else>>
[<<moveTo "event_hr_manual_9_fail" "See your score..." 0>>]
<</if>>
</div>/*#
#desc: hr training score
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
Score: <<=$scene.correctCount>> of <<=$scene.maxScore>>, Bonus <<=$scene.bonusCount>> of <<=$scene.maxScore>><br>
<br>
<<if $scene.correctCount == 0>>
Verdict: Uninformed Employee.<br>
<br>
You appear completely ignorant of proper employee behaviour. It is highly recommended that you speak to your manager, or a qualified HR representative, about educational opportunities or you are at high risk of making a mistake that could lead to punitive measures, up to, and including, termination of your current employment.
<<else>>
Verdict: Ill-informed Employee.<br>
<br>
Unfortunately it seems that you have only a partial understanding of proper employee behaviour here at Social Interaction Service Syndicate Inc. We encourage you to spend additional time studying, talking with your manager, and attending HR seminars to better learn how best to act at the workplace. The company can only grow if all of us are working together and supporting each other according to policy!
<</if>>
<br><br>
<<printThought "Well that was... different.">><br>
<br>
[<<moveTo $scene.returnFromEmployee "Close application and return to your desk." 0>>]
</div>/*#
#desc: hr training score
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
Score: <<=$scene.correctCount>> of <<=$scene.maxScore>>, Bonus <<=$scene.bonusCount>> of <<=$scene.maxScore>><br>
<br>
<<if $scene.correctCount == $scene.maxScore && $scene.bonusCount > 0>>
Verdict: HR Expert.<br>
<br>
Congratulations! You have an above-average understanding of what is required of employees here at Social Interaction Service Syndicate Inc., with a little more studying you could set yourself apart for truly understanding and embodying the principles that guide employee relations here at Social Interaction Service Syndicate Inc.
<<elseif $scene.correctCount == $scene.maxScore>>
Verdict: Informed Employee.<br>
<br>
Congratulations! You have a solid understanding of what is required of employees here at Social Interaction Service Syndicate Inc. still, there is the "correct" answer, and there is the "best" answer, and you have quite a bit yet to learn to prove that you do not just follow regulations, but understand and embrace their goals.
<<else>>
ERROR: unexpected
<</if>>
<br><br>
<<printThought "Well that was... different.">><br>
<br>
[<<moveTo $scene.returnFromEmployee "Close application and return to your desk." 0>>]
</div>/*#
#desc: hr training score
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_party_manager_assist_first_10") && !(State.hasPlayed("event_manager_training_sales_1_discipline_1") || $workEvents.hasOwnProperty("hr_training_sales"))>>
<<set _nextDate = setup.setNextDate($now, 4, 0, 0)>>
<<addWorkEvent 'hr_training_sales' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. HR Training">>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/sissi_logo_location.jpg"></image>
<div id="invframe" class="scrolltext">
Score: <<=$scene.correctCount>> of <<=$scene.maxScore>>, Bonus <<=$scene.bonusCount>> of <<=$scene.maxScore>><br>
<br>
Verdict: HR Luminary.<br>
<br>
Congratulations! You have gone beyond merely obeying the letter of the law to embrace the underlying goals driving the regulations. Employees like you are what make Social Interaction Service Syndicate Inc. the success that it is, and the best place there is to work! Consider volunteering to assist in HR seminars and other activities to help your fellow teammates becomes just as skilled as you are!<br>
<br>
<<printThought "Well that was... different.">><br>
<br>
[<<moveTo $scene.returnFromEmployee "Close application and return to your desk." 0>>]
</div>/*#
#desc: psychiatrist enthusiast vr request
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.alreadyScheduled = $currentTasks.hasOwnProperty("psychiatrist_endless_hypnosis_1") && !$currentTasks.psychiatrist_endless_hypnosis_1.finished>>
<<if !$scene.alreadyScheduled>>
<<include "addHypnosisTask">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_psychiatrist', 'formal')>> if she has any additional procedures that might help improve your mental state?<br>
<br>
<<if $player.sec_style.submission.vr_therapy>>
"@@.npc_psychiatrist;Of course, it is called the experimental VR therapy<<if $npc_psychiatrist.hypnosis > 0>> you have already partaken in... <<if $scene.alreadyScheduled>>remember to show up to your next session this Sunday!<<else>>you seem to have dropped out, let me just write you in for another session on Sunday...<</if>><<else>><<if $scene.alreadyScheduled>>do endeavour to make it in this Sunday...<<else>>I offered previously, I will go ahead and re-schedule you for Sunday so we can get started.<</if>><</if>>@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<else>>
She appears surprised by your question, pausing in taking notes to look you in the eye as she clarifies. "@@.npc_psychiatrist;Additional procedures? Do you mean drugs? Because I do not believe in writing prescriptions on a patient's first visit.@@" She pauses and then smiles as she continues. "@@.npc_psychiatrist;If you are interested in something else, however... well, I am doing an experiment on the effect of Virtual Reality simulations to aid in therapy. Think of it as a sort of Mindset Training to help you better adjust to these recent life changes. I was going to offer at the end of your session, but if you are so interested we could do the paperwork now...@@"<br>
<br>
As if planned she pulls a stack of papers out of her desk and places a pen on top. "@@.npc_psychiatrist;Just the usual medical NDA and acceptance of risk. Nothing to worry about if you would just put your pretty little signature down? I can get you scheduled for your first procedure later today. Based on your enthusiasm I am sure you will just LOVE the results... and you'll be helping the cause of science, to boot! I'll even throw in free therapy sessions for participating, a real win-win as I will be able to help you even further and have the opportunity to better monitor your progress and results!@@"<br>
<br>
[<<moveTo "event_secretary_style_hypno_enthusiast_2" "That sounds super!" 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_hypno_enthusiast_2" "Turn her down." 120 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: psychiatrist enthusiast vr agree
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily.scheduleHypnoToday=true>>
<<include "addHypnosisTask">>
<<if $scene.accept>>
<<if !$player.sec_style.submission.vr_therapy>>
<<set $player.sec_style.submission.vr_therapy = "enthusiast">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
With
<<if $player.sec_style.submission.contract == "enthusiast">>
the same enthusiasm you signed your contract,
<<elseif ["forced", "strict"].includes($player.sec_style.submission.contract)>>
the opposite reaction you had to your contract,
<<else>>
somewhat mixed emotions,
<</if>>
you sign the NDA.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles, stacking the papers up and sliding them back into a drawer. "@@.npc_psychiatrist;Wonderful, wonderful! Such enthusiasm for mental health! Oh, I just love it — and I will see YOU later this afternoon! Oh, we are going to have that pretty brain of yours working perfectly before you even know it!@@"
<<else>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'formal')>> that experimental VR simulations aren't quite what you had in mind.<br>
<br>
"@@.npc_psychiatrist;Hmm, well... as I said, I was going to give you the opportunity, anyways. After all, you mentioned some money struggles, and your participation would allow me to offer additional therapy sessions free of charge. Tell you what, I'll just email you this contract and pencil you in for this afternoon. You don't have to show up... but if you do, well, I promise you'll enjoy the results.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: hypno unlock cruel intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "addHypnosisTask">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You sigh and nod as you accept <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> "therapy." She smiles, and presses a button to release your restraints. "@@.npc_psychiatrist;See? That wasn't so bad. I promise I am here to help you... and I will perform that duty whether you like it or not. But it will go smoother for you if you obey...@@"
<<else>>
You remain silent and, after a few moments, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> presses the button to release your bonds. "@@.npc_psychiatrist;Hmm, I suppose that will do for a first lesson. I would prefer more enthusiasm but... well, we are only starting out.@@" She grins as you massage your wrists. "@@.npc_psychiatrist;I promise I am here to help you... and I will perform that duty whether you like it or not. But it will go smoother for you if you obey...@@"
<</if>>
<br><br>
[<<moveTo 'room_citymap' 'Leave the office.' 60 '<<set $scene.beforetasklocation.pop()>><<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>'>>]
</div><<set $scene.dogAvailable = false>>
<<set $scene.horseAvailable = false>>
<<if $fetish.bestiality_hard>>
<<set $scene.dogAvailable = State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_intro_1") || State.hasPlayed("event_psychiatrist_session_bestiality_dog")>>
<<set $scene.horseAvailable = State.hasPlayed("event_psychiatrist_hypnosis_4_bestiality_intro_1") || State.hasPlayed("event_psychiatrist_session_bestiality_horse")>>
<</if>>/*#
#desc: hypno unlock cruel intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.hypnoSession = {}>>
<<useClothSetPush 'hypnosis3'>>
<<addItem "vr_helmet_copy">>
<<wearItem "vr_helmet_copy" true>>
<<addItem 'ring_gag'>>
<<wearItem 'ring_gag' true>>
<<set $scene.plug = "">>
<<set $scene.hypno_strict=true>>
<<if !$player.sec_style.submission.vr_therapy>>
<<set $player.sec_style.submission.vr_therapy = "strict">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
"@@.pc;Fuck you, bitch!@@" You reply in staunch defiance of <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> efforts. She may have forced you to sit through her so-called therapy, but you'll be damned if you're going to show her any appreciation for it!<br>
<br>
The frown that appears on her face as she takes her finger away from the button that would free you from your bonds makes you think that "damned" might be a too-apt description.<br>
<br>
She sighs and shakes her head, tapping a different button that suddenly forces a gag past your lip, your reflexive struggles now accompanied by little more than muffled grunts.<br>
<br>
"@@.npc_psychiatrist;You really are shaping up to be quite the troublesome patient.@@" She states as she walks around her desk. She stands over you holding a virtual reality visor. "@@.npc_psychiatrist;I was going to offer you a reward if you agreed to help me test a therapeutic virtual simulation I have been working on... but with your attitude, well... participation has become mandatory.@@"<br>
<br>
She grins as she brings the visor to your face. "@@.npc_psychiatrist;Enjoy the bonus therapy... and remember, I am here to help your development, and I will do so, regardless of ANY resistance.@@"<br>
<br>
<<include "hypno4Choices">>
</div>/*#
#desc: manager summons for identify fem
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.femboy>>
<<completeWorkEvent>>
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> calls you into her office. "@@.npc_manager;So I was finalising updating your name in the company systems... and there is also the matter of your gender, I presume I can set it to female, yes?@@"<br>
<br>
[<<moveTo "event_identify_fem_obedient_1" "Yes, that sounds right." 120>>]<br>
<<if $player.identify_as != "female">>
[<<moveTo "event_identify_fem_2" "What? No! You aren't a girl!" 120>>]
<<else>>
[@@.link_locked;You're a girl... obviously.@@]
<</if>>
</div>/*#
#desc: obediently female identify
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.identify_fem>>
<<set _sourceChar = "npc_manager">>
<<set $player.sec_style.body.identify_fem = "obedient">>
<<include "identifyFemUnlocks">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
You nod in agreement... certainly the company's system should be updated to reflection your identifying as female, accurate records are key to a well-run business.<br>
<br>
"@@.npc_manager;Lovely, I am so proud of your progress, and your embrace of proper corporate process. The updates are confirmed. You may return to your desk.@@"<br>
<br>
Your curtsy and leave the office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: resist female identify
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_manager","formal")>> that changing your identity in the company systems to female would be incorrect.<br>
<br>
She frowns. "@@.npc_manager;That is... disappointing to hear, especially since the change has, technically, already been made. Tell you what, to save the hassle and paperwork and whatnot in changing it again, how about you just accept a payment of, say... <<=$player.work.payment>> to go along with things?@@"<br>
<br>
You blink, that's a full week's pay!<br>
<br>
[<<moveTo "event_identify_fem_money_1" "That's too good a deal to pass up..." 120>>]<br>
<<if $npc_manager.flags.cruel > 0 || $npc_manager.anger > 5 && $npc_manager.anger > $npc_manager.affection>>
[<<moveTo "event_identify_fem_3_cruel" "No, thank you." 120>>]
<<else>>
[<<moveTo "event_identify_fem_3" "No thank you." 120>>]
<</if>>
</div>/*#
#desc: reject female identify
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
You decline <<=ps(setup.getNpcName("npc_manager","formal"))>> offer and she acts like she did not even hear you. "@@.npc_manager;I apologise... I fear that I made the mistake of presenting you with an option in some false hope that you might make a proper choice. Obviously the decision has been made and I will not be making any changes to things. Now get back to your desk, girl.@@"<br>
<br>
She fixes you with her gaze and you fall silent as you nervously, and swiftly, retreat from her office.<br>
<br>
<<printThought "I guess I'm a girl now... at least in the eyes of the company...">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: reject female identify
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_19'
20
'event_psychiatrist_theme_gender_force_1'
false
>>
<<forceNpcTheme 'npc_psychiatrist' 'event_psychiatrist_theme_gender_force_1'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
You decline <<=ps(setup.getNpcName("npc_manager","formal"))>> offer and she frowns. "@@.npc_manager;I see... well, I had hoped you to be more considerate of making work for other people... but, if that is your decision, you may return to work.@@"<br>
<br>
You quickly beat a retreat back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: money female identify
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits $player.work.payment>>
<<if !$player.sec_style.body.identify_fem>>
<<set $player.sec_style.body.identify_fem = "money">>
<<set _sourceChar = "npc_manager">>
<<include "identifyFemUnlocks">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
You agree to <<=ps(setup.getNpcName("npc_manager","formal"))>> offer and she grins, tapping her keyboard a final time with authority. "@@.npc_manager;Wonderful. Well, with that all sorted, you may return to your desk. And enjoy the bonus... buy yourself a nice dress, or something.@@"<br>
<br>
You nod, nervously retreating to your desk, another bit of masculinity sold off...<br>
<br>
<<printThought "At least I got paid well this time... right?">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: asked to identify female strict
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "hypnosisChair" "dildo" "genitals_covered">>
<div id="invframe" class="scrolltext">
As you blink your way back to reality and the details of your so-called "therapy" fades you find yourself looking up at <<=setup.getNpcName("npc_psychiatrist","formal")>>. "@@.npc_psychiatrist;Another wonderfully productive session... tell me, who's my good girl?@@"<br>
<br>
[<<moveTo "event_identify_fem_strict_2" "I am good girl..." 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_identify_fem_strict_2" "I'm not a girl!" 120 "<<set $scene.accept=false>><<set $scene.repeat=0>>">>]
</div>/*#
#desc: asked to identify female strict
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if !$player.sec_style.body.identify_fem>>
<<set $player.sec_style.body.identify_fem = "forced">>
<<set _sourceChar = "npc_manager">>
<<include "identifyFemUnlocks">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "hypnosisChair" "dildo" "genitals_covered">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You feel tingly in your brain... whether from <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> words, or her procedure. Whichever it is, you smile back and reply that you are "@@.pc;her good girl.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles pridefully. "@@.npc_psychiatrist;Perfection. For all your challenges it is so satisfying when a patient finally accepts the truth. Today you are a VERY good girl.@@"<br>
<br>
[<<moveTo 'event_psychiatrist_hypnosis_4_5' 'Continue.' 180 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
Sobering up quickly from your "therapy" you shake your head, objecting that you aren't a girl, you're a boy!<br>
<br>
<<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> expression becomes disapproving in an instant as she reaches for the VR mask. "@@.npc_psychiatrist;Hmm, a bad boy? Well let us see if we cannot do something about THAT.@@"<br>
<br>
Still tightly restrained to the chair you can do nothing to resist as the helmet closes over your face and you are plunged back into a virtual world...<br>
<br>
[<<moveTo "event_identify_fem_strict_3" "Uh, oh..." 300>>]
<</if>>
</div>/*#
#desc: memory edited
#status: RELEASED 0.9.1.0
#ignore_spell: erp,mmo,combatjobs
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.repeat += 1>>
<<if $scene.repeat >= 4>>
<<set _wp = setup.getWillpower()>>
<<spendWillpower _wp>>
<<elseif $scene.repeat > 2>>
<<spendWillpower 2>>
<<else>>
<<spendWillpower 1>>
<</if>>
<</if>>
<<set $player.location to "Drowning In Femme">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You are slammed back into the simulation abruptly, and without mercy. Awash in pink images of extreme... and often slutty femininity bombard you from every direction, while a voice that sounds very much like your own sounds in your head so loud as to drown out any attempt at independent thought.<br>
<br>
<<shinyText "I am a girl!" 0.0>>
<<shinyText "I am a submissive <<if $fetish.sissy>>sissy <</if>>girl!" 0.5>>
<<shinyText "I love being a girl!" 1.5>>
<br>
The mantra repeats, burrowing its way deeper and deeper into your psyche with each repetition, grinding away at any resistance as you find yourself thinking back and reflecting on an old memory...
<<switch $scene.repeat>>
<<case 1>>
You're back in college, playing latest MMO: Globe of Combatjobs on release. After installing the first decision is to make your character, race, class... and gender. You make an elf ranger, a female elf ranger. After all, if you're going to stare at a butt for hours and hours, it should be a hot girl butt, right?<br>
<br>
<<printThoughtGlitch "Is that really what happened?">><br>
<br>
Your mind twists, a memory that had seemed so concrete changing, revising.<br>
<br>
<<printThoughtGlitch "I didn't tell <<him>> off!">><br>
<br>
You remember it properly, how you flirted back, the flirting turning to ERP as you played up being a sexy, slutty elf to <<his>> burly orc warrior, role playing stripping out of your armour and then lying back for <<him>> to make an "honest" woman out of you...<br>
<br>
<<printThought "I always wanted to be a girl?">>
<<case 2>>
You're back in your senior year of High School, your older sister home from college for spring break. Having her back in the house is a bit weird, and it ends up leading to a bit of a mix-up when some of her clothes end up mixed in with yours and you inadvertently bring them, including some quite racy underthings back to your room. Quite embarrassed, you quickly return her stuff to her room, and she thanks you and promises to be more careful, making no further comment about the sexy apparel.<br>
<br>
<<printThoughtGlitch "Is that really what happened?">><br>
<br>
Your mind twists, a memory that had seemed so concrete changing, revising.<br>
<br>
<<printThoughtGlitch "I didn't give them back! I tried them on! They were tight and sexy...">><br>
<br>
Your sister barges back into your room, finding you posing in nothing but her bra and panties... and then she snaps a picture of you on her phone. Before you know it she's blackmailing you, insisting on "finishing the job" as she lends you a cute top and does your makeup, snapping even more pictures as she explains that you'll be covering her chores, not just now, but when she's home for the summer, lest she send them to all your friends.<br>
<br>
You shiver, and yet you can't look away from your reflection, you look so cute...<br>
<br>
<<printThought "I always wanted to be a girl, a <<if $fetish.sissy>>sissy<<else>>sexy<</if>> girl!">>
<<case 3>>
You've just started college, and are trying out for a fraternity. As part of pledge week you and your fellow potential recruits have been given a task: sneak into a neighboring sorority house. Of course you chicken out, afraid to venture into the land of the women... on one hand, your judgement is reinforced when the rest of the pledges are easily caught... on the other hand, your lack of courage means your fraternity life ends before it begins.<br>
<br>
<<printThoughtGlitch "Is that really what happened?">><br>
<br>
Your mind twists, a memory that had seemed so concrete changing, revising.<br>
<br>
<<printThoughtGlitch "I'm not a coward! I came up with a cunning plan!">><br>
<br>
Rather than seek to rely on stealth, you come up with the idea to do a little bit of cross-dressing to sneak through the sorority house, that way, even if you're caught, well... maybe you'll have a shot of talking your way through things?<br>
<br>
Of course it doesn't work, you're barely through the door when one of the girls tags you. Clearly suspicious of your claim that you're new pledges, she calls in the rest of the sorority for you and your fellow nervous frat-bros to "prove" that you're real girls. Walking in heels proves disastrous for most of the other guys, and then someone shouts for you to raise your skirt. Whether from fear, or something else, you lift your skirt to show off the sexy lingerie that you had chosen as part of your costume... as your less meticulous fellow pledges reveal boring old boxers and briefs.<br>
<br>
Things shift as the sorority girls act protective of you being caught up with all those "big, naughty men." You drop to your knees, insisting that you were innocently helping them out... and then you find yourself "helping out" even more, as your final test of femininity is to blow one of them... a test you pass with flying colours!<br>
<br>
The sorority sadly informs you that you're too late to pledge to them, and you end up heading back to the frat where your application is denied as they explain that, despite "taking one for the team" they're looking for MEN not <<if $fetish.sissy>>sissy <</if>>girls like you.<br>
<br>
<<printThought "I always wanted to be a girl, a <<if $fetish.sissy>>sissy<<else>>sexy<</if>>, slutty girl!">>
<<case 4>>
You've just caught your girlfriend fucking her yoga teacher, breaking up with her in a rage before running home to cry, your distraction over the breakup impacting your work performance, leading to you forgetting to kick off a back-up job and from there...<br>
<br>
<<printThoughtGlitch "Is that really what happened?">><br>
<br>
Your mind twists, a memory that had seemed so concrete changing, revising.<br>
<br>
<<printThoughtGlitch "No... I didn't cry... but I couldn't stop thinking about what I saw...">><br>
<br>
You should have been upset... but all you can do is keep thinking about the look on your ex's face as the yoga teacher's thick cock thrusted in and out of her ass. You can't seem to stop yourself from fantasising about being in ex's position, even at work you're distracted, browsing <<if $fetish.sissy>>sissy<<else>>feminisation<</if>> porn on your phone, imagining being fucked by a real man, your tits bouncing with every thrust...<br>
<br>
You shake your head. It's the end of the day, and you pack up and leave... having forgotten to click the confirm dialogue on the data back-up before you left...<br>
<br>
<<printThought "I always was a girl! A <<if $fetish.sissy>>sissy<<else>>sexy<</if>>, slutty girl!">>
<<default>>
ERROR: unexpected scene.repeat <<=$scene.repeat>>
<</switch>>
<br><br>
You wince, something is wrong, but... you can't think what, and you try to refocus from the past, back to the present...<br>
<br>
[<<moveTo "event_identify_fem_strict_4" "Continue..." 120>>]<br>
</div>/*#
#desc: asked to identify female strict
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Drowning In Femme">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
You are suddenly ripped back to reality to again find <<=setup.getNpcName("npc_psychiatrist","formal")>> staring down at you.<br>
<br>
"@@.npc_psychiatrist;I'll ask again... are you a good girl or...@@"<br>
<br>
<<printThought "I am a girl!">><br>
<<printThought "I am a submissive <<if $fetish.sissy>>sissy <</if>>girl!">><br>
<<printThought "I love being a girl!">><br>
<br>
<<switch $scene.repeat>>
<<case 1>>
The simulated thoughts still echo in your brain... but you can differentiate them from your own... you think.<br>
<br>
[<<moveTo "event_identify_fem_strict_5" "I am good girl?" 120>>]<br>
<<case 2>>
The simulated thoughts still echo in your brain, and you can no longer separate them from your own.<br>
<br>
[<<moveTo "event_identify_fem_strict_5" "I am good girl!" 120>>]<br>
<<case 3>>
You can no loner differentiate the words echoing in your brain from your own thoughts...<br>
<br>
[<<moveTo "event_identify_fem_strict_5" "I am a submissive <<if $fetish.sissy>>sissy <</if>>girl!" 120>>]<br>
<<case 4>>
Your brain is filled with the truth, the happy, girly truth.<br>
<br>
[<<moveTo "event_identify_fem_strict_5" "I love being a girl!" 120>>]<br>
<<default>>
ERROR: unexpected scene.repeat <<=$scene.repeat>>
<</switch>>
<<if setup.getWillpower() > 0 && $scene.repeat < 4>>
[<<moveTo "event_identify_fem_strict_2" "I'm a boy!" 120>>] <<hint $options "Resisting these intruding thoughts will cost willpower.">>
<<else>>
[@@.link_locked;The simulation has won, you can no longer resist the thoughts pounded into your brain.@@]
<</if>>
</div>/*#
#desc: asked to identify female strict
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.identify_fem>>
<<set $player.sec_style.body.identify_fem = "strict">>
<<set _sourceChar = "npc_psychiatrist">>
<<include "identifyFemUnlocks">>
<</if>>
<<set $npc_psychiatrist.flags.knowgender = $player.identify_as>>
<</if>>
<<set $player.location to "VR Laboratory?">>
<<initRoom>>
<<include playerMenu>>
<<createStackedImage "hypnosisChair" "dildo" "genitals_covered">>
<div id="invframe" class="scrolltext">
You blink up at <<=setup.getNpcName("npc_psychiatrist","formal")>> and answer her question with
<<switch $scene.repeat>>
<<case 1>>
"@@.pc;I am a girl?@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Yes, you are! So glad to hear you finally accept that fact. You are such a lovely, submissive, good girl.@@"
<<case 2>>
"@@.pc;I am a girl!@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles. "@@.npc_psychiatrist;Ah, so wonderful to hear you so enthusiastically announcing that truth. You are such a lovely, submissive, good girl.@@"
<<case 3>>
"@@.pc;I am a submissive <<if $fetish.sissy>>sissy <</if>>girl!@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> grins. "@@.npc_psychiatrist;So lovely to hear. You are such a lovely, submissive, good girl.@@"
<<case 4>>
"@@.pc;I love being a girl!@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> grins. "@@.npc_psychiatrist;I bet you do, and you are such a lovely, submissive, good girl.@@"
<<default>>
ERROR: unexpected scene.repeat <<=$scene.repeat>>
<</switch>>
<br><br>
Her words make you smile and tingle with happiness as she finally unstraps you from the chair.<br>
<br>
[<<moveTo 'room_citymap' 'Change and leave.' 180 "<<include 'removeHypno5Outfit'>><<include 'addHypnosisTask'>><<set $scene.removeSuit = setup.checkItemWorn('plugsuit_adv')>><<if $scene.removeSuit>><<removeItem 'plugsuit_adv' true>><<deleteItem 'plugsuit_adv'>><</if>><<removeItem 'vr_helmet_copy' true>><<deleteItem 'vr_helmet_copy'>><<removeItem 'ring_gag' true>><<deleteItem 'ring_gag'>><<useClothSetPop 'hypnosis3'>><<set $scene.beforetasklocation.pop()>><<set $player.cutscene.lockinventory=true>>">>]
</div>/*#
#desc: welcome to gender intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> informs you that you have an "employee training" session to complete, remaining cryptic as to the details as she sends you off to another floor where you find a private room and a company-branded VR headset.<br>
<br>
Curious at the blend of high-tech and stripped down, you conclude there's nothing for it but to go through the automated training so you can get back to work.<br>
<br>
[<<moveTo 'event_gender_welcome_2' 'Put on the VR mask and complete your training.' 180 "<<set $scene.obey=true>>">>]<br>
[<<moveTo 'event_gender_welcome_2' "You don't want to do this, leave." 180 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: welcome to gender training begin
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.hypnosis || $scene.obey>>
<<addItem 'vr_helmet_copy'>>
<<wearItem 'vr_helmet_copy' true>>
<<if $scene.obey>>
<<applyExperience 'submission' 12 'normal' $ALONE>>
<</if>>
<</if>>
<</if>>
<<if !$fetish.hypnosis && !$scene.obey>>
<<set $player.location to "Private Conference Room">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Cyberspace">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if !$fetish.hypnosis && !$scene.obey>>
<<createAdvBGR "./images/locations/conference_room.png">>
<<else>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$fetish.hypnosis && !$scene.obey>>
This whole situation seems a bit sus, and you decide to leave, leaving the VR helmet on the table and walking back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 300 "<<completeWorkEvent>>">>]
<<else>>
<<if $scene.obey>>
You obediently
<<else>>
This whole situation seems a bit sus, and you decide to leave... only to find that the door is locked. A mechanic voice fills the room, and you find yourself unable to resist its directions. "@@.computer;Mandatory training must be completed before employee may return to work. Employee will submit to training immediately.@@"<br>
<br>
As if compelled, you
<</if>>
take a seat and put the VR mask over your head, instantly whisked away to a virtual world.<br>
<br>
A feminine voice whispers in your ear as you float through pink clouds. "@@.generic_female1;Congratulations on your recent gender selection. Here at Social Interaction Service Syndicate Inc. we encourage all of our employees to inhabit their best selves. We understand that such a change can be stressful, but science and surveys have proven that eager acceptance is the best route to being a happy, productive <<if $fetish.sissy>>SISSI <</if>>Secretary. However you arrived at this point, the more obedient and enthusiastic you embrace the process, the better off you will be. So, Miss <<=$player.first_name>> <<=$player.last_name>>, are you a good girl?@@"<br>
<br>
[<<moveTo 'event_gender_welcome_3' 'Yes, you are a good girl!' 0 "<<set $scene.obey=true>><<set $scene.first=true>>">>]<br>
[<<moveTo 'event_gender_welcome_3' "No! You aren't a girl!" 0 "<<set $scene.obey=false>>">>]
<</if>>
</div>/*#
#desc: welcome to gender accept gender
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
<<if $scene.first>>
"@@.pc;I'm a good girl!@@" You speak happily, feeling a buzz of excitement at the words.
<<else>>
"@@.pc;I'm a good girl!@@" You speak reluctantly, your resistance shattered... and yet you feel a buzz of excitement at the words.
<</if>>
<br><br>
"@@.generic_female1;Yes you are, Miss <<=$player.first_name>> <<=$player.last_name>>. A very good girl. The company thanks you for your service, and encourages your further development. Feminine is best, obedient is best. Be pretty, be happy, obey...@@"<br>
<br>
As the voice speaks you are treated to a rapid slide-show of images, some of yourself, some simulated, all of them showing what it means to be a "good girl" — to dress for your representative position, to serve, to obey, to improve yourself, and so make the company a better place...<br>
<br>
[<<moveTo 'event_gender_welcome_4' "Yay!" 300>>]
<<else>>
You fight against the "training" as you insist that you are not a girl, no matter what you've been forced to say previously!<br>
<br>
"@@.generic_female1;Disobedience is counterproductive. Corporate efficiency and employee happiness are both amplified by acceptance and obedience. As a <<if $fetish.sissy>>SISSI <</if>>Secretary you have an important role to play in ensuring success of your manager and the employee as a whole. You will be a good girl. Obedience will be rewarded, resistance will be punished. Submit and obey and become a good girl.@@"<br>
<br>
A flurry of images flash before your eyes, sound just beyond your hearing stressing your ears, leaving you off-balance, vulnerable, every moment of resistance a greater struggle.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo 'event_gender_welcome_3' "Keep resisting..." 0 "<<set $scene.obey=false>><<spendWillpower 1>>">>] <<hint $options "This is going to take an act of will.">><br>
<<else>>
[@@.link_locked;You can no longer muster the mental energy to resist.@@]<br>
<</if>>
[<<moveTo 'event_gender_welcome_3' 'Yes, you are a good girl!' 0 "<<set $scene.obey=true>><<set $scene.first=false>>">>]<br>
<</if>>
</div>/*#
#desc: welcome to gender brainwashing
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $ALONE>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $ALONE>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Cyberspace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bimbo_mind.png">>
<div id="invframe" class="scrolltext">
Having surrendered to the training you settle back and enjoy the show, seemingly endless snapshots of what it means to be a girl, no, a GOOD girl, how to dress, how to comport, how to obey, a series of rapid vignettes of <<if $fetish.sissy>>SISSI <</if>>Secretaries serving their superiors, and more, not just working, but living and loving as their best, most feminine selves...<br>
<br>
[<<moveTo 'event_gender_welcome_5' "Continue." 1800>>]
</div>/*#
#desc: welcome to gender complete
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<<applyStress -20>>
<<applyFatigue -50>>
<</if>>
<<set $player.location to "Private Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
The "training" simulation comes to an end with a direction to remove the VR mask and return to your desk. "@@.computer;Remember to speak with your manager or therapist for how best to continue your personal and professional development. Becoming your best self is a team effort, and the company is here to help, because the best employees do the best work, and the best work is why Social Interaction Service Syndicate Inc. is the best company in the world.@@"<br>
<br>
Removing the mask you blink in surprise. The real world seems strange, oddly quiet and dull without the constant images and whispering voices of the training... and yet, you feel abuzz with energy, ready to show the world just what a wonderful "good girl" <<if $fetish.sissy>>SISSI <</if>>Secretary you can be.<br>
<br>
Placing the mask gently back on the table you rise to your feet, take a moment to adjust your clothes to perfection, and stride back to your office, your thoughts occupied with what will come next in your journey. Your wonderful, wonderful journey.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 300 "<<completeWorkEvent>>">>]
</div><<set $player.identify_as = "female">>
<<if $workEvents.hasOwnProperty("identity_work")>>
<<removeWorkEvent "identity_work">>
<</if>>
<<if !$workEvents.hasOwnProperty("gender_welcome") && !State.hasPlayed("event_gender_welcome_1")>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addWorkEvent 'gender_welcome' _nextDate>>
<</if>>
<<switch _sourceChar>>
<<case 'npc_psychiatrist'>>
<<set $npc_psychiatrist.flags.knowgender = $player.identify_as>>
<<case 'npc_technician'>>
<<set $npc_technician.flags.knowgender = $player.identify_as>>
<<case 'npc_manager'>>
<<default>>
ERROR: unexpected char: <<=_sourceChar>>
<</switch>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_20'
20
'event_admin_comingout_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_21'
20
'event_enthusiast_hormones_1'
true
>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_11'
10
'event_technician_comingout_1_alt'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_20'
20
'event_psychiatrist_theme_gender_1'
true
>>/*#
#desc: ask about latex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> why, for a so-called "sex" store, they have so little in the way of latex attire?
<<if $player.sec_style.clothing.latex>>
<<He npc_sexstore_clerk>> smiles. "@@.npc_sexstore_clerk;Soon. Soon. The orders have been placed but the shipments are still coming in, and then getting it on display and everything... but it will be soon.@@"<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<<else>>
<<if $npc_secretary.flags.checkedPicture>> In particular, you describe the outfit worn by your predecessor.<</if>><br>
<br>
<<He npc_sexstore_clerk>> smiles. "@@.npc_sexstore_clerk;A latex fetishist, are we? How delightful! Yes, that rubbery stuff is quite the wonder material, the way it hugs every curve, tightens everything up... and when it is shined properly and catches the light...@@" <<He npc_sexstore_clerk>> grins knowingly. "@@.npc_sexstore_clerk;I suppose you are disappointed with the meagre selection across the mall? I mean certainly their wares are fine... but latex can be so much more than just a way to look slutty. So, as to your observation, it is correct, but one that we are actually about to address. A shipment came in this very morning, in fact, that will expand our selection and take care of that empty corner over there.@@"<br>
<br>
<<He npc_sexstore_clerk>> gestures towards the far side of the shop where several meters of clothing racks, and a couple mannequins stand empty. "@@.npc_sexstore_clerk;Since you are so interested... how would you like to try on a few of the outfits? Make sure everything made it through shipping properly... perhaps a little fashion show of the various styles we are about to put on offer for the official announcement?@@"<br>
<br>
[<<moveTo "event_secretary_style_latex_enthusiast_2" "<<He npc_sexstore_clerk>> had you at latex!" 120 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_latex_enthusiast_2" "You'll come back once the shelves are stocked." 120 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: agree to latex photoshoot
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<set _nextDate = setup.setNextDate($now, 5, 0, 0)>>
<<addEvent "shop_stock_latex" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin in excitement and reply that, if it involves trying on latex, you'd love to help!<br>
<br>
"@@.npc_sexstore_clerk;Superb.@@" <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> replies. <<He npc_sexstore_clerk>> takes a moment to make a phonecall and you watch one of the clerks from the mall's lingerie shop walk over and take over the till.<br>
<br>
"@@.generic_female1;You really need to hire more help.@@" The woman notes.<br>
<br>
"@@.npc_sexstore_clerk;Staffing remains an ongoing process. I am only looking for those with a specific skillset and mmm... passion.@@"<br>
<br>
The replacement clerk slightly rolls her eyes as <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> leads you into the store's back-room, though stacked with boxes, only a few of them even partially unpacked.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> instructs you to get naked as <<he npc_sexstore_clerk>> begins plucking things out of some of the boxes, the rubbery scent of fresh latex filling the air.<br>
<br>
"@@.npc_sexstore_clerk;You spoke of fetish, so let us begin there... well, with fetish elevated to the point of fashion.@@"<br>
<br>
<<He npc_sexstore_clerk>> hands you an outfit.<br>
<br>
[<<moveTo "event_secretary_style_latex_enthusiast_3" "Get changed." 180>>]
<<else>>
You decline <<=ps(setup.getNpcName('npc_sexstore_clerk', 'first'))>> offer and state that you'll just come back to browse after the latex section is stocked and open.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> appears a touch disappointed, but <<he npc_sexstore_clerk>> nods. "@@.npc_sexstore_clerk;Very well, it will be a couple of days for us to get it all out.@@"<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
<</if>>
</div>/*#
#desc: latex photoshoot: fetish
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "latex_photoshoot_fetish">>
<<wearItemSet "latex_photoshoot_fetish">>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Fetishistic, indeed is this first outfit, starting with a catsuit that covers every centimetre of your flesh from the neck down, not even a zipper interfering with the all-encompassing sensation as <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> shows you how to stretch your way through the neck-entry.<br>
<br>
You do not believe you have ever worn anything so skin-hugging tight, and you half wonder if the suit might be a size too small...<br>
<br>
With the ultra-tight catsuit sliding over your skin with every movement you move on to the next item, a hood completing the sensation of near-total encasement as, after arranging your hair and tucking the neck of the hood under the collar of the suit, you find yourself covered in tight, black latex everywhere but your smiling face.<br>
<br>
"@@.npc_sexstore_clerk;Like a blank canvas on which to paint...@@" <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> narrates. "@@.npc_sexstore_clerk;The essence of the human form, your exterior stripped of all distractions, and yet within, your every nerve is alight with that tight, slick feeling of your new second skin, the gloves dulling the sense of touch... and yet also heightening it as everything is filtered through the medium of latex...@@"<br>
<br>
Your heart beats a little faster as you move on to the rest of the outfit, an elegant, long-sleeved blouse with a frilled collar, and a matching calf-length hobble skirt. Latex over latex only heightens things, the contrast of the skin-tight catsuit with the fitted, but also flowing top and skirt lending the whole ensemble an almost alien feeling. You admire your reflection, if you ignore your face, you become almost like a mannequin... and yet the styling is such that you could imagine working like this, fetishistic... and yet without a centimetre of what would be considered "skin" on display. Remove the hood, in fact, and you might even pass for mere high fashion at a glance, the polished latex not so different from satin or other, more pedestrian garments in its look... and yet its feel is oh so much more delightful.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> gives you time to admire your reflection, and then takes a few minutes to snap photographs before presenting you with your next outfit.<br>
<br>
[<<moveTo "event_secretary_style_latex_enthusiast_4" "What's next?" 180>>]
</div>/*#
#desc: latex photoshoot: casual
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "latex_photoshoot_casual">>
<<wearItemSet "latex_photoshoot_casual">>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
Shedding the somewhat formal attire you change into something far more flirty and modern, a sleeveless top, short, pleated skirt, and a pair of skintight leggings.<br>
<br>
"@@.npc_sexstore_clerk;And here you see how latex can work as well as casual attire, the tight fabric suitable to mix and match, able to drape and twirl as a skirt, or hug tight, even providing support in absence of a bra.@@"<br>
<br>
You do an experimental twirl, the skirt splaying out as expected, while the top remains tight and supportive, its tight appearance hinting at what lies underneath, but perfectly decent, even with the exposed-shoulder flirtiness.<br>
<br>
"@@.npc_sexstore_clerk;And now, to bring it on home... I believe you should find this one similar to the office attire you described.@@" <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> states, after finishing another round of photos and handing you a fresh outfit.<br>
<br>
[<<moveTo "event_secretary_style_latex_enthusiast_5" "What's next?" 180>>]
</div>/*#
#desc: latex photoshoot: office
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "latex_photoshoot_office">>
<<wearItemSet "latex_photoshoot_office">>
<<set $scene.first = !$player.sec_style.clothing.latex>>
<<if $scene.first>>
<<set $player.sec_style.clothing.latex = "enthusiast">>
<</if>>
<<if !State.hasPlayed("event_shop_stock_latex") && $npc_sexstore_clerk.profile>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addEvent "shop_stock_latex" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>> Back Room.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
A tight, button-up blouse, knee-length pencil skirt and polished stockings, all in latex, of course, really do have you feeling ready to head to work. Yes, with just the addition of some nice heels you could easily see yourself sitting at your desk, typing away as a latex-clad <<if $fetish.sissy>>SISSI <</if>>Secretary, just like your predecessor.<br>
<br>
"@@.npc_sexstore_clerk;And here we bring it full circle, proving that be it business or casual, the fetish club, the boardwalk or the high street... the future is shiny.@@"<br>
<br>
You can't help but grin,
<<if $scene.first>>
for all that you may have lusted over the look of latex... it turns out that the feel of it is even better,
<<else>>
latex remains as wonderful as ever,
<</if>>
from the way it stretches over your body, how it tightly caresses your skin, and slides against you with every movement on a thin layer of sweat... well, it really is fantastic... and so, so beautiful.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> finishes a final photo and puts away <<his npc_sexstore_clerk>> camera. "@@.npc_sexstore_clerk;Wonderful. This will certainly make for enticing publicity to introduce our new department. As thanks, you may keep all three outfits. Wear them with joy, and with pride and, should anyone ask where you got them, well...@@" <<he npc_sexstore_clerk>> grins and executes a theatrical bow.<br>
<br>
The fact that you're getting three outfits for free has you smiling even wider, and you thank <<=setup.getNpcName('npc_sexstore_clerk', 'first')>> for the opportunity... and promise you'll be excitedly back once the rest of the collection goes on sale!<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: janitor splashed on way to work
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkVisibleClothingTag('latex') > 60 || $currentTasks.hasOwnProperty("manager_morning_inspection_task") && !setup.checkTaskUntimedComplete("manager_morning_inspection_task")>>
<<if !$player.sec_style.clothing.latex>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_in'] 'latex_outfit' _nextDate>>
<</if>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary">>
<<else>>
<<makeDirty>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
You're just about to the office when a janitor cleaning the floor in the hallway accidentally bumps their mop bucket and it goes splashing over you. You try to dodge, but it's like the liquid is <<if $fetish.sissy>>SISSI <</if>>Secretary seeking. All your failed evasion does is send you stumbling through <<=ps(setup.getNpcName("npc_manager","formal"))>> door... just as she walks out, freezing mid-greeting as you stand there half drenched.<br>
<br>
"@@.npc_manager;Well! This will not do at all!@@" <<=setup.getNpcName("npc_manager","formal")>> states as you stand there, still dripping.<br>
<br>
"@@.npc_manager;On the other hand, well... this provides a lovely opportunity for a lesson in... broadening your horizons. Come into my office... and remove those droopy, dripping clothes.@@"<br>
<br>
<<printThought "Not like I wouldn't be stripping for my inspection, anyway...">><br>
<br>
[<<moveTo "event_secretary_style_latex_intro_2" "Follow and obey." 180 "<<removeAllClothing true>>">>]
</div>/*#
#desc: told to change into latex
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.manager_morning_inspection_task>>
<<completeTask 'manager_morning_inspection_task' $now false>>
<</if>>
<<addItemSet 'latex_secretary'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if setup.checkItemSetWorn("latex_secretary")>>
<<set $player.cutscene.lockinventory = true>>
<<moveTo "event_secretary_style_latex_obedient_1">>
<<elseif !setup.checkNaked()>>
<<set $scene.strictChange = true>>
<<set $player.cutscene.lockinventory = true>>
<<moveTo "event_secretary_style_latex_strict_1">>
<</if>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;So,@@" <<=setup.getNpcName("npc_manager","formal")>> continues, once you have removed your wet clothing. "@@.npc_manager;Your little accident is a wonderful opportunity to dive into an alternate clothing option that would not be so negatively impacted by a minor liquid encounter. I speak, of course, of latex.@@" She states, while simultaneously presenting you with an outfit identical to the one worn by your predecessor in the picture above your desk — a tight, shiny Secretary outfit consisting of a top, stockings, and pencil skirt... all in slick, polished latex.<br>
<br>
"@@.npc_manager;Had you been wearing this your little encounter with the splash zone would have been remedied in a few moments with a towel. No matter, it gives you an opportunity to try this out for the day, quite a fetching look, and so much simpler to clean up splashes. Besides, you have to wear something while your previous things dry. It is not like you can work naked! That would not be properly representative and professional, at all!@@"<br>
<br>
<<printThought "At this company? I'm not so sure about that...">><br>
<br>
<<if $scene.ezchange>>
[<<moveTo "event_secretary_style_latex_obedient_1" "Put on the latex secretary uniform." 180 '<<set $player.cutscene.lockinventory=true>><<wearItemSet "latex_secretary">>'>>]<br>
<<else>>
<<set _items = "<<=setup.getItemName('two_tone_latex_blouse_black')>>, <<=setup.getItemName('pencil_skirt_latex_black')>>, <<=setup.getItemName('latex_stockings_flat_black')>>, <<=setup.getItemName('latex_panties_black')>>, <<=setup.getItemName('latex_bra_black')>>, <<=setup.getItemName('latex_garters_black')>>, <<=setup.getItemName('latex_gloves_black')>>, <<=setup.getItemName('secretary_heels')>>.">>
<<hint $options "You were just given <<=_items>> you should probably change into them...">><br>
<</if>>
[<<moveTo "event_secretary_style_latex_money_1" "If a latex uniform is such a boon... how about a bonus?" 180 "<<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "event_secretary_style_latex_forced_1" "Refuse! You are not some rubber doll!" 180 "<<set $player.cutscene.lockinventory=true>>">>]
</div>/*#
#desc: obediently change into latex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.latex>>
<<set $player.sec_style.clothing.latex = "obedient">>
<<if !State.hasPlayed("event_shop_stock_latex") && $npc_sexstore_clerk.profile>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addEvent "shop_stock_latex" _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You change into the offered outfit and <<=setup.getNpcName("npc_manager","formal")>> smiles, taking a moment to pull at a couple bits to get them into place, a thin film of sweat forming between your skin and the very tight latex, allowing everything to slide seductively whenever you move.<br>
<br>
"@@.npc_manager;You look lovely in that, a perfect representation of your dutiful position under me. And, now that you are properly attired for your duties... well, you may return to your desk and get to work.@@"<br>
<br>
You curtsy, and then gather up your wet clothes, spreading them out to dry behind your desk before taking a seat and turning to your work.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 300 "<<set _x = setup.addManagerEndlessTask()>>">>]
</div>/*#
#desc: bargain to change into latex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You point out that, if latex is such a boon, shouldn't you get a pay raise for wearing it? Besides, the spill was on work property, that deserves hazard pay!<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> appears amused by your argument. "@@.npc_manager;Very well. One hundred credits to change into the outfit for the day... and a fifty credit a week increase to your base pay if you are willing to accept a conversion of your uniform requirements to full latex attire.@@"<br>
<br>
You weren't quite expecting her to accept your offer... much less come back with a raise, and you take a moment to think, eying the shiny... and very tight-looking outfit the whole time...<br>
<br>
[<<moveTo "event_secretary_style_latex_money_2" "You'll wear the outfit... but you'd rather stick to your current uniform." 180 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_secretary_style_latex_money_2" "You'll wear the outfit... and accept the uniform adjustment." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_latex_forced_1" "Refuse! You are not some rubber doll!" 180>>]
</div>/*#
#desc: bargain to change into latex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 100>>
<<wearItemSet "latex_secretary">>
<<if !$player.sec_style.clothing.latex>>
<<if !State.hasPlayed("event_shop_stock_latex") && $npc_sexstore_clerk.profile>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addEvent "shop_stock_latex" _nextDate>>
<</if>>
<<if $scene.accept>>
<<set $player.sec_style.clothing.latex = "money">>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.work.payment += 50>>
<<set $npc_manager.stagevalues[3].latex = true>>
<</if>>
<<addNpcTheme 'npc_manager' 'other_work' "theme_manager_latex"
0
'theme_manager_latex_1'
true
>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You change into the offered outfit, the latex even tighter than it looked, stretching over your skin and making you sweat just enough for it to slide against you with every movement to remind you of it's exciting presence.<br>
<br>
You pull at the tight fabric as you adjust things into position, marveling at how the tight latex simultaneously smooths out your form, while also clinging to your curves, making you look almost artificially perfected, like real-life photoshop.<br>
<br>
You take a deep breath and
<<if $scene.accept>>
confirm that you will accept latex as an upgraded uniform requirement.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> eyes twinkle in delight. "@@.npc_manager;Wonderful. That outfit will give you a base, but I look forward to what other ensembles you come up wither. Here are your credits, I will adjust your base pay. You may return to your desk and get to work.@@"
<<else>>
decline the offer of a latex uniform requirement, noting that you would prefer the flexibility of your current uniform options to better "represent" the various duties of your position.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> eyes twinkle in amusement. "@@.npc_manager;Very well, here are your credits, and you may return to your desk and get to work.@@"
<</if>>
<br><br>
You pocket the hundred credits and leave her inner office, laying your old clothes out to dry near your desk before sitting down to work.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 300 "">>]
</div>/*#
#desc: refuse to change into latex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You shake your head. You've worn a lot of things because <<=setup.getNpcName("npc_manager","formal")>> told you to but this... latex is a fetish material, and, you suppose, also used in medical stuff... either way, you aren't going to wear it for work!<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Such limited perspective. Latex is for all manner of things, fetish, high fashion and, today, it is for you. Now, the clothes you came in, however acceptable they might have been when you left your flat, are soaked through and utterly unsuitable for a representative position, such as your own. I have given you a replacement outfit, and, as your manager, and your <<=setup.getNpcName("npc_manager","title")>>, I have total authority as to your work uniform. Today, that uniform is this.@@" She shoves the latex outfit at you once again. "@@.npc_manager;Now get changed, we are wasting time that could be put to work.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_secretary_style_latex_forced_2" "Resistance will only lead to punishment. Get changed." 180>>]<br>
<<else>>
<<hint $options "Remember, you can change clothes in the inventory.">><br>
<</if>>
[<<moveTo "event_secretary_style_latex_strict_1" "No!" 180 "<<set $scene.strictChange=false>>">>]
</div>/*#
#desc: forced to change into latex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItemSet "latex_secretary">>
<<if !$player.sec_style.clothing.latex>>
<<set $player.sec_style.clothing.latex = "forced">>
<<if !State.hasPlayed("event_shop_stock_latex") && $npc_sexstore_clerk.profile>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addEvent "shop_stock_latex" _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your token effort at resistance performed... you give up, obediently changing into the outfit as instructed. The latex is tight and slippery against your skin, polished and shiny, reminding you of its presence with your every movement.<br>
<br>
"@@.npc_manager;Much better... well, enjoy the rest of your day, and <<=$player.first_name>>? Let me be the first to inform you that you look STUNNING in latex.@@"<br>
<br>
You nod perfunctorily and head back to your desk, spreading your other clothes out to dry, even though you know it would be beyond foolish to change back into them before the end of the day.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 300 "<<set _x = setup.addManagerEndlessTask()>>">>]
</div>/*#
#desc: attempt to change into other than latex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.strictChange>>
You try to change into something else and <<=setup.getNpcName("npc_manager","formal")>>
<<else>>
Once again you refuse the latex secretary outfit <<=setup.getNpcName("npc_manager","formal")>> is offering and she
<</if>>
puts her foot down, literally stomping down with such ferocity that you jump at the sound, momentarily worried for the state of both her thin, elegant heel, and the floor beneath.<br>
<br>
"@@.npc_manager_dom;That is QUITE enough. If you will not accept such a simple request, well... we shall introduce you to latex in a far more thorough manner.@@"<br>
<br>
Without so much as allowing you to cover up, <<=setup.getNpcName("npc_manager","formal")>> grabs you by the wrist and all but yanks your arm out of the socket as she leads you out of the office.<br>
<br>
[<<moveTo "event_secretary_style_latex_strict_2" "Stumble along after her." 300>>]
</div>/*#
#desc: taken to lab for latex
#status: RELEASED 0.9.0.0
#ignore_spell: sexretary
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = true>>
<</if>>
<<set $player.location to "Product Test Lab T0, Room 31">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImageManager() _TODOlabTech>>
<div id="invframe" class="scrolltext">
Holding your wrist as tight as any vise, <<=setup.getNpcName("npc_manager","formal")>> brings you to a floor you don't recognise, you catch a glimpse of a sign indicating that it's part of the Research and Development department, but, given you work for a megacorp, that hardly narrows things down.<br>
<br>
While you may be lost, <<=setup.getNpcName("npc_manager","formal")>> knows exactly where she's going, and she leads you into a lab where a somewhat startled lab worker takes a moment to react before greeting her nervously.<br>
<br>
"@@.generic_female1;<<=setup.getNpcName("npc_manager","other")>>! I, uh, wasn't expecting you, what can we—@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> cuts them off as she scans the room, seemingly looking for something in particular. "@@.npc_manager;The wardrobe device prototype, where is it?@@"<br>
<br>
"@@.generic_female1;The Gloss-99? Right this way,@@" the woman states, her confusion seemingly instantly going away as she leads the two of you across the lab to a large, boxy machine with strangely shaped tiles on the front. Whatever it is, <<=setup.getNpcName("npc_manager","formal")>> shoves you inside before closing a door.<br>
<br>
You aren't sure what the chamber you're in is for, but it slightly muffles <<=ps(setup.getNpcName("npc_manager","formal"))>> voice as you hear her say something about "@@.npc_manager;<<if $fetish.sissy>>SISSI <</if>>Sexretary standard, with full underlay.@@"<br>
<br>
You aren't sure what that means, but you're soon distracted a number of mechanical appendages that grab your wrist, ankles, and throat and gather your hair to pull it up and out of the way.<<if !setup.checkNaked()>> Your remaining clothes are meticulously removed to leave you standing naked and spread, alone, restrained, and exposed in this strange chamber.<</if>><br>
<br>
[<<moveTo "event_secretary_style_latex_strict_3" "What the hell? Get these off of me!" 120 "<<set $scene.struggle=true>>">>]<br>
[<<moveTo "event_secretary_style_latex_strict_3" "Keep your cool. Wait it out." 120 "<<set $scene.struggle=false>>">>]
</div>/*#
#desc: wardrobe changes you into latex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'latex_secretary'>>
<<wearItemSet 'latex_secretary'>>
<<addItem 'catsuit_latex_headless_black'>>
<<wearItem 'catsuit_latex_headless_black' true>>
<</if>>
<<set $player.location to "Product Test Lab T0, Room 31">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImageManager() _TODOlabTech>>
<div id="invframe" class="scrolltext">
<<if $scene.struggle>>
You try to struggle, but the padded grasping hands are nearly as strong as <<=setup.getNpcName("npc_manager","formal")>> and they
<<else>>
As sturdy as the mechanical arms are, you can't help but think of what sort of punishment might be in store if you broke one, so you merely let them take you. The arms
<</if>>
spread your legs and hold you in place as large ring, nearly the size of the chamber you're in, begins lowering from above.<br>
<br>
Nozzles lining the interior of the ring begin spraying you with a pungent substance, almost like paint... but it is followed moments later by a white-light laser that flash-cools the liquid into a thin, slick, and glossy material. Initially cool, you can feel it quickly warming to your body temperature as your outfit is literally printed onto your body, a downward pass that covers you neck to toes in the most literally skin-tight catsuit imaginable... and then the ring rises up for another pass as a tight-skirted secretary outfit is sculpted onto your body, additional mechanical arms darting in and out to add rivets and buckles to the molten material.<br>
<br>
Finally, you feel yourself rise several centimetres as high heels are formed around and under your feet. Only after this final detail is complete do the arms release their grasp and the chamber open for <<=setup.getNpcName("npc_manager","formal")>> to greet you with a smile.<br>
<br>
[<<moveTo "event_secretary_style_latex_strict_4" "What just happened?" 120>>]
</div>/*#
#desc: latex strict after dressed
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.latex>>
<<set $player.sec_style.clothing.latex = "strict">>
<<if !State.hasPlayed("event_shop_stock_latex") && $npc_sexstore_clerk.profile>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addEvent "shop_stock_latex" _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Product Test Lab T0, Room 31">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImageManager() _TODOlabTech>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Lovely, and so efficient! If we could ever nail the technology, and bring down the price, these things could replace extensive closets almost completely... well, if people accepted dressing in this latex-like materials. Unfortunately the printing technology is quite limited outside such...@@" <<=setup.getNpcName("npc_manager","formal")>> smiles, even as the lab assistant slightly shrugs, as if in apology for the limitations of their work thus far.<br>
<br>
Every movement reminds you of the tight latex clinging to your body, a thin layer of sweat already forming to make it slide smoothly against your skin.<br>
<br>
<<if $scene.first>>
Maybe it was something in the off-gassing of the outfit, or just the way the machine made you feel so utterly helpless as it dressed you, but you fall in obediently behind <<=setup.getNpcName("npc_manager","formal")>> for the return to the office, taking a seat at your desk without further objection... after all, your "new" outfit is just for today, right?<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 300 "<<set _x = setup.addManagerEndlessTask()>>">>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> leads you back to the office. "@@.npc_manager;So much wasted time! Do endeavour to keep to your uniform requirements in future, it is much more efficient for the both of us.@@" She states as a parting comment before disappearing into her inner office.<br>
<br>
[<<moveTo $scene.inspectionReturn "Get to work." 300>>]
<</if>>
</div>/*#
#desc: offered latex secretary requirements
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your latex squeaks slightly as you wait to see what else <<=setup.getNpcName("npc_manager","formal")>> wants. Judging by her smile, and reviewing your recent actions, you doubt you're in trouble... but, then again... it's not like that would necessarily stop <<=setup.getNpcName("npc_manager","formal")>> from punishing, or "punishing" you... "@@.npc_manager;About your outfit...@@" <<=setup.getNpcName("npc_manager","formal")>>. You pause nervously as she is suddenly right in front of you and you hesitantly ask if there is something wrong?<br>
<br>
"@@.npc_manager;Wrong? Quite the opposite, this is... well, perfect is a strong word, but tight, shiny, slick... sexy...@@" Her finger runs along your rubber-encased flesh, finish off by pulling your cuff for a slight snap. "@@.npc_manager;Perfect it is, indeed, especially for an aspirational A-SLUT.@@"<br>
<br>
You bite your lip, swaying slightly in response to the primal glint in her eye, a mix of hunger, pride, and power. "@@.npc_manager;Of course, it raises a question... is such attire just for special occasions... or do you think it would be appropriate for your uniform to be revised? A full latex <<if $fetish.sissy>>SISSI <</if>>Secretary... well, that would be quite the way to embody your representative position... but, as lovely as the material is, I understand that it might be limiting, and I would not wish to unduly restrict your... explorations.@@" She smiles, "@@.npc_manager;after all, such an experiment brought you here...@@"<br>
<br>
[<<moveTo "event_latex_secretary_2" "You would like to revise your work uniform to be latex only." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_latex_secretary_2" "You would rather retain flexibility and keep your uniform requirements as they are." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept latex secretary requirements
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.stagevalues[3].latex = $scene.accept>>
<<addNpcTheme 'npc_manager' 'other_work' "theme_manager_latex"
0
'theme_manager_latex_1'
true
>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod, being a Latex-clad <<if $fetish.sissy>>SISSI <</if>>Secretary sounds perfect, so setting it as your uniform would make total sense.<br>
<br>
"@@.npc_manager;Wonderful! Well... I look forward to seeing what other tight and shiny outfits you come up with...@@"
<<else>>
You reply that, as much as you enjoy latex... you would not wish to be limited in your office attire. After all, a "representative position" can mean many things, and you would prefer to retain the flexibility to represent something other than rubber.<br>
<br>
"@@.npc_manager;Astutely said! We will keep your uniform specifications more broad as they are now.@@"
<</if>>
<br><br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: latex unlocks
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('latex')>>
<</if>>
<<set $player.location to "<<printShopName 'mall_sexstore' true>>.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_sexstore.png" setup.charImage("npc_sexstore_clerk")>>
<div id="invframe" class="scrolltext">
The first thing you notice when you walk into the shop is the heavy scent of latex, and the newly opened, and expansively stocked, latex clothing section.<br>
<br>
<<=setup.getNpcName('npc_sexstore_clerk', 'first')>> smiles and flashes you a knowing wink before turning back to the customer <<he npc_sexstore_clerk>> was ringing up.<br>
<br>
[<<moveTo "room_mall_sexstore" "Continue." 60>>]
</div>/*#
#desc: attempt to change into other than latex
#status: RELEASED 0.9.0.0
#ignore_spell: sexretary
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !State.hasPlayed("event_secretary_style_latex_strict_3")>>
<</if>>
<<set $player.location to "Product Test Lab T0, Room 31">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImageManager() _TODOlabTech>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> leads the way out of the office, taking you up the hall and riding the elevator to <<if State.hasPlayed("event_secretary_style_latex_strict_3")>>a familiar<<else>>a<</if>> Research and Development floor.<br>
<br>
<<if State.hasPlayed("event_secretary_style_latex_strict_3")>>
<<=setup.getNpcName("npc_manager","formal")>> knows exactly where she's going, and she leads you into a lab where a somewhat startled lab worker takes a moment to react before greeting her nervously.<br>
<br>
"@@.generic_female1;<<=setup.getNpcName("npc_manager","other")>>! I, uh, wasn't expecting you, what can we—@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> cuts them off as she scans the room, seemingly looking for something in particular. "@@.npc_manager;The wardrobe device prototype, where is it?@@"<br>
<br>
"@@.generic_female1;The Gloss-99? Right this way,@@" the woman states, her confusion seemingly instantly going away as she leads the two of you across the lab to a large, boxy machine with strangely shaped tiles on the front. Whatever it is, <<=setup.getNpcName("npc_manager","formal")>> shoves you inside before closing a door.<br>
<br>
You aren't sure what the chamber you're in is for, but it slightly muffles <<=ps(setup.getNpcName("npc_manager","formal"))>> voice as you hear her say something about "@@.npc_manager;<<if $fetish.sissy>>SISSI <</if>>Sexretary standard, with full underlay.@@"<br>
<br>
You aren't sure what that means, but you're soon distracted a number of mechanical appendages that grab your wrist, ankles, and throat and gather
<<else>>
The lab technician recognises you instantly, leading you straight to the wardrobe device. "@@.generic_female1;Again? I see why you keep asking when the final version will be ready, a Gloss-99 in your office would be much more efficient than these visits.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods and gives you an only somewhat gentle push towards the entrance to the machine. You step inside, familiar mechanical appendages grabbing your wrist, ankles, and throat and gathering
<</if>>
your hair to pull it up and out of the way.<<if !setup.checkNaked()>> Your remaining clothes are meticulously removed to leave you standing naked and spread, alone, restrained, and exposed in this strange chamber.<</if>><br>
<br>
[<<moveTo "event_secretary_style_latex_strict_3" "Struggle!" 120 "<<set $scene.struggle=true>>">>]<br>
[<<moveTo "event_secretary_style_latex_strict_3" "Remain calm and let the wardrobe device work its magic." 120 "<<set $scene.struggle=false>>">>]
</div>/*#
#desc: ask technician enthusiast makeup
#status: RELEASED 0.8.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You reflect on the stark difference between yourself and the other assistants at the meeting; all made up so lovely. You ask <<=setup.getNpcName("npc_technician","first")>> if she could help you with makeup and her face blossoms with excitement.<br>
<br>
"@@.npc_technician;Can I? Yes. WILL I? Even more yes!@@"<br>
<br>
She stands up and offers you a hand. "@@.npc_technician;Come on — there's a changing room in back where I can show you the basics.@@"<br>
<br>
[<<moveTo "event_enthusiast_makeup_2" 'Go with her.' 1200 "<<set $scene.makeup=true>>">>]<br>
[<<moveTo "event_enthusiast_makeup_2" 'Change your mind.' 60 "<<set $scene.makeup=false>>">>]
</div>/*#
#desc: ask technician enthusiast makeup
#status: RELEASED 0.8.6.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.makeup>>
<<set $scene.enthusiastMakeup = true>>
<<setThreshold 'feminization' 'enthusiast' 'makeup'>>
<<setThreshold 'makeup' 'makeup_instruction' 'beginner_tutorial'>>
<<set $player.sec_style.clothing.makeup = "enthusiast">>
<<set $player.makeup.template = "normalmakeup">>
<<set $player.makeup.messed = 0>>
<<unlockMakeup "normalmakeup">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<</if>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addPopUpText "misc" 'New Link "Make up Tutorial" added'>>
<</if>>
<<set $player.location = "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.makeup>>
<<=setup.getNpcName("npc_technician","first")>> takes you into the back room and sits you down in front of mirror before busily sorting through makeup supplies while rattling off information.<br>
<br>
It's all a bit much for you to process as she goes on about concealers, and shadows and different brushes and foundation and a dozen other things, but, after the initial burst of exuberance, she slows down and patiently breaks it all down, showing you how to clean and prep your face before adorning you with a simple, but stunning in its transformative power, style that subtly, but nigh magically transforms your face into that of a eye-catching cute woman.<br>
<br>
After giving you a few minutes to gawk in admiration of yourself <<=setup.getNpcName("npc_technician","first")>> has you clean everything off before walking you through how to do the same thing yourself.<br>
<br>
Your efforts turn out significantly worse than <<=setup.getNpcName("npc_technician","first")>>, but she follows up with tips and tricks for repairing and fixing, explaining that this, too, is an important skill since makeup, unless permanently applied in some manner, requires its share of maintenance throughout the day.<br>
<br>
It takes another couple rounds but eventually you're back to looking like the pretty woman from that first heady and addictive sight of yourself in makeup. It actually takes some effort to drag yourself away from just staring in awe at your reflection, but <<=setup.getNpcName("npc_technician","first")>> eventually leads you back to the cafe, giving you a couple of tutorials to check out for refresher information before continuing on to other topics.
<<else>>
You laugh awkwardly and explain that, actually... you were hoping for maybe some more reference information? <<=setup.getNpcName("npc_technician","first")>> seems a touch disappointed, but she just sits down before giving you some suggestions of online tutorials to check out and then continuing on to other topics.
<</if>>
<br><br>
<<if $npc_technician.flags.hotties.stood_up>>
[<<moveTo "event_technician_hotties_1_no" "Continue." 300>>]
<<else>>
[<<moveTo "event_technician_cafe_1_4" "Continue." 600>>]
<</if>>
</div>/*#
#desc: manager congratulates full female, suggests makeup
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> pauses after you have finished dressing, scrutinising you intently for just long enough for you to feel nervous.<br>
<br>
<<printThought "What's going on, isn't the morning inspection over?">><br>
<br>
<<switch $scene.bonus_gift>>
<<case 'makeup_fallthrough'>>
<<=setup.getNpcName('npc_manager', 'formal')>> steps towards you, sending your heart racing faster. "@@.npc_manager;Sorry, I could not help but stare at you, dressed so appropriately for the office and yet...@@"<br>
<br>
You hold your breath.<br>
<br>
<<printThought "Wait, am I going to get in trouble for not wearing that full pink ensemble she gave me?">><br>
<br>
"@@.npc_manager;Well, to put it bluntly, it is your face. Some may call it a tool of the patriarchy, but good girls know that the right makeup gives them all the power. You have learned well how to dress the part of a proper <<if $fetish.sissy>>SISSI <</if>>secretary, now it is time for you to more start to look it.@@"<br>
<br>
You gulp.
<<case 'makeup_pink_secretary'>>
<<=setup.getNpcName('npc_manager', 'formal')>> steps towards you, sending your heart racing faster. "@@.npc_manager;Your adherence to your new dress code is... well, it is just stunning, a sight to bring a smile to any face and yet...@@" She gently brushes your cheek.<br>
<br>
<<if $npc_manager.flags.party.first_attend>>
"@@.npc_manager;Well, the rest of your lovely femininity unfortunately draws attention to your lack of proper makeup. Why, when I think of how lovely you looked all done up for the party...@@" She appears almost wistful for a moment before regarding you once again with a borderline predatory grin.
<<else>>
"@@.npc_manager;Well, the rest of your lovely femininity unfortunately draws attention to your lack of proper makeup. So, I think to myself well... we shall have to do something about that, hmm?@@" She graces you with a predatory grin.
<</if>>
<<case 'makeup_nomakeup'>>
<<=setup.getNpcName('npc_manager', 'formal')>> steps towards you, sending your heart racing faster. "@@.npc_manager;Your face... it is subtle, but I have seen you enough to detect the truth.@@" She gently brushes your cheek. "@@.npc_manager;You are wearing makeup which is just... wonderful but...@@" She smiles in a way likely meant to be comforting but, on her, still makes you nervous.<br>
<br>
"@@.npc_manager;Certainly what you have is better than nothing but, in a way, it only draws attention to the fact that something a bit less subtle could make you so much more...@@" She appears almost wistful for a moment before regarding you once again with a borderline predatory grin.
<<default>>
ERROR unexpected scene.bonus_gift! <<=$scene.bonus_gift>>
<</switch>>
<br><br>
"@@.npc_manager;Yes... I apologise if it seems like your uniform requirements are changing a bit swiftly as of late but, well... when the destination is in sight, why tarry? After all, you want to be the best, prettiest <<if $fetish.sissy>>SISSI <</if>>Secretary that you can, right?@@"<br>
<br>
You blush, even if you had the courage to object to her forcing you further this feminising road you would struggle to find the words to deny her, not with her standing in front of you, looking at you like THAT.<br>
<br>
<<if $player.sec_style.clothing.female == "voluntary" || $player.sec_style.clothing.female == "obedient" || setup.getTotalValue("feminization") > 12>>
<<printThought "Hmm, she's right, I would look a lot better with some proper makeup...">>
<<else>>
<<printThought "What? Women's clothing isn't enough, now I have to paint myself up to look like a girl too?">>
<</if>>
<br><br>
[<<moveTo 'event_makeup_obedient_1' 'Agree with her suggestion, but point out that you could use some instruction.' 120>>]<br>
[<<moveTo 'event_makeup_money_1' 'This sounds like extra work and expense, see if you can get a pay raise for it?' 120>>]<br>
[<<moveTo 'event_makeup_forced_1' 'This is too much, refuse!' 120>>]
</div>/*#
#desc: excuses not to wear makeup
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You really don't want makeup being added onto your already humiliating routine, and you try to come up with an excuse, explaining that you really don't have the supplies, or know what you're doing or anything...<br>
<br>
She pish-poshes you at every turn, first producing an expansive makeup kit before telling you to take the whole morning reviewing tutorials online, stating that "@@.npc_manager;After all, you are already so cute it will not take much work at all to have you looking the picture of feminine beauty.@@"<br>
<br>
Having verbally headed you off at every turn, she finally leaves you alone, the makeup kit looming ominously on your desk as she returns to her office with a parting note that she expects you to be looking "@@.npc_manager;Radiant and beautiful when you deliver my lunch order.@@"<br>
<br>
<<printThought "Crap... what am I going to do now?">><br>
<br>
Merely glancing into the kit, with its dozens upon dozens of palettes in addition to brushes and other things you don't even know the name of, your head spins and you try to decide what to do.<br>
<br>
[<<moveTo 'event_makeup_forced_2' 'Abort this foolish plan, ask for help and beg her forgiveness.' 60 "<<set $scene.makeup_decision = 'good'>>">>]<br>
[<<moveTo 'event_makeup_forced_2' "As unlikely as it seems, maybe this is just a prank; ignore her instructions and just do your work. She can't get upset at you for doing your job, right?" 600 "<<set $scene.makeup_decision = 'neutral'>>">>]<br>
[<<moveTo 'event_makeup_forced_2' "Rebel! Make a mess of your face to show that you don't belong in makeup." 600 "<<set $scene.makeup_decision = 'bad'>>">>]
</div>/*#
#desc: forced makeup unlock
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.makeup_decision=="good">>
<<if $player.sec_style.clothing.makeup == "">>
<<set $player.sec_style.clothing.makeup = "obedient">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<</if>>
<<set $player.makeup.permanent = 'normalmakeup'>>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<<if !$npc_manager.stagevalues[2].makeup>>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set $scene.first_makeup = true>>
<</if>>
<<else>>
<<addEvent 'bad_girl_makeup_inspection'>>
<<if $player.sec_style.clothing.makeup == "">>
<<if $scene.makeup_decision=="neutral">>
<<set $player.sec_style.clothing.makeup = "forced">>
<<else>>
<<set $player.sec_style.clothing.makeup = "strict">>
<</if>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<</if>>
<<if $scene.makeup_decision=="bad">>
<<set $player.makeup.template = 'ruined'>>
<<set $player.makeup.messed = 100>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<if setup.getTotalValue("makeup") == 0>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addPopUpText "misc" 'New Link "Make up Tutorial" added'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.makeup_decision=="good">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.makeup_decision>>
<<case "good">>
Nervously you head into her inner office, apologising profusely for your prior outburst and begging for assistance.<br>
<br>
Her expression is enigmatically unreadable for several tense moments before she finally leans over to retrieve something for her desk. At first you brace for the familiar paddle, but instead she comes up with an odd mask-shaped device.<br>
<br>
"@@.npc_manager;While I still believe you should learn to do makeup yourself for... various reasons, I would rather it be done right than suffer through with a dishevelled <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
Before you can figure out what she's talking about she has brought the mask to your face, holding it tight as there is a strange tingling and a brief flash.<br>
<br>
She pulls it away and you blink, looking into a nearby mirror to find that you are now wearing simple, but totally perfect, female makeup. Astonished you bring a your hand to the face that looks similar, and yet subtly unlike, your own. Running your hand over things changes nothing as she returns your shocked expression with a smile and explains. "@@.npc_manager;Just a bit of convenient tech — you do not need to worry about things running or smudging, it should remain perfectly pristine for at least three to five years before the nanites start to break down. You can always learn to apply traditional makeup over top, or even get it redone entirely at any decent salon, but for now all of your makeup worries are conveniently addressed.@@"<br>
<br>
Still blinking in surprise you manage to mumble something approaching a thanks before she shoos you away while congratulating you on "@@.npc_manager;Coming to your senses just in time!@@"<br>
<br>
Returning to your desk still in something of a daze you sit for a moment to collect yourself before turning to your computer.
<<case "neutral">>
Ignoring the alarms in your head telling you that this is a very bad idea you sit down at your desk. Doing your best to ignore the looming presence of the makeup kit sitting next to you to face your computer.
<<case "bad">>
Anger burning in your chest at your manager's attempt to inflict further feminine routines upon you, you open up the makeup kit and start grabbing colours and brushes at random. Scrawling all over yourself, you don't stop until your face is all but unrecognisable, a look that can only be described as the result of a rainbow clown trying to doll themselves up in the dark in the midst of an epileptic seizure.<br>
<br>
With a snort of satisfaction, you return to your computer.<br>
<br>
<<printThought "That'll show her if she thinks I'm going to paint myself up to look like some meek girl...">>
<<default>>
ERROR: unexpected scene.makeup_decision <<=$scene.makeup_decision>>!
<</switch>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start working." 60>>]
</div>/*#
#desc: greed makeup unlock
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.makeup == "">>
<<set $player.sec_style.clothing.makeup = "money">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('pedicure')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<</if>>
<<set _makeupBonus = 50>>
<<addCredits _makeupBonus>>
<<if setup.getTotalValue("makeup") == 0>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addPopUpText "misc" 'New Link "Make up Tutorial" added'>>
<</if>>
<<if !$npc_manager.stagevalues[2].makeup>>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set $scene.first_makeup = true>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the fact that, as you really have no knowledge of how to apply makeup obeying her instructions in time for your next workday is going to necessitate you going to a professional which is certainly quite an expense...<br>
<br>
To your surprise she does not even attempt to argue with you. "@@.npc_manager;Quite so, and I would certainly not want to be looking at an amateurishly made-up secretary... here you go.@@" She states, casually handing you <<=_makeupBonus>> credits. "@@.npc_manager;That should be sufficient to get you started at a salon — though I would recommend learning to do it yourself, as well. After all, how else will you touch things up and keep yourself looking perfect throughout the day?@@"<br>
<br>
You're still a bit shocked at how easily your gambit succeeded — was this what you wanted? Enough money to pay for a sexy new face... or were you hoping to bluff her out of "upgrading" your requirements? Either way you're in for it now and you should probably hit up the mall on the way home from work.<br>
<br>
Gracing you with a final smile she strokes your chin. "@@.npc_manager;Oh, I just cannot wait for tomorrow to see your new face! You are going to be the prettiest secretary in the company!@@"<br>
<br>
Bashfully turning away from her gaze, you watch her head back to her inner office out of the corner of your eye before pocketing your "bonus" and turning towards your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start working." 60>>]<br>
</div>/*#
#desc: barista teaches you makeup
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.makeup == "">>
<<set $player.sec_style.clothing.makeup = "obedient">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
After a few minutes wait who should appear, but <<=setup.getNpcName('npc_barista', 'nickname')>>, the sexy barista who works at the Cafe 52 coffeeshop.<br>
<br>
"@@.npc_barista;Heya <<=$player.first_name>>!@@" She gleefully states, depositing a large box on your desk and smiling down. Flipping up the top of the container she unfolds a dizzying array of makeup brushes, palettes and creams that makes you half wonder if the container was built with some sort of tardis-like technology.<br>
<br>
"@@.npc_barista;Alright!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> continues with a grin. "@@.npc_barista;Apparently you've made it this far into becoming a cute, sexy girl without knowing how to do makeup! That's, like, such a tragedy! But fortunately your bimbo bestie is here to help!@@"<br>
<br>
<<printThought "Bimbo bestie? She really is all-in on the airhead sex-pot aesthetic...">><br>
<br>
Plopped down in your chair in front of the mirror you try to process the deluge of information as <<=setup.getNpcName('npc_barista', 'nickname')>> goes through what each item in the kit is for.<br>
<br>
[<<moveTo 'event_makeup_obedient_2' 'Listen closely.' 600>>]
</div>/*#
#desc: barista teaches you makeup
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<unlockMakeup 'normalmakeup'>>
<<addItem "makeup_advanced">>
<<if setup.getTotalValue("makeup") == 0>>
<<addSearch $computer 'Online Makeup Tutorials' 'room_online_makeup_tutorial_start'>>
<<addPopUpText "misc" 'New Link "Make up Tutorial" added'>>
<</if>>
<<setThreshold 'makeup' 'makeup_instruction' 'beginner_tutorial'>>
<<set $player.makeup.template = 'normalmakeup'>>
<<set $player.makeup.messed = 15>>
<<set $npc_barista.flags.makeupoffer = true>>
<<if !$npc_manager.stagevalues[2].makeup>>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set $scene.first_makeup = true>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Your eyes start to glaze over at the complexity of what women apparently have to do every day before finally clinging to the lifeline that is <<=setup.getNpcName('npc_barista', 'nickname')>> setting you up with a basic, "starter" routine.<br>
<br>
"@@.npc_barista;You can, like, check out tutorials online if you want something more "invisible" and basic but, like... what would be the point?@@" She sighs wistfully as she watches you try to follow her instructions and paint yourself up. "@@.npc_barista;You know you would look like... so hawt laying it on, some big, smokey eyes, a pair of thick cocksucking lips...@@" She seems to drift off for a moment before focusing back. "@@.npc_barista;No no, pay attention to what you're doing, the mascara should give volume, but not make things look chunky, a delicate hand...@@"<br>
<br>
After your not-exactly-great effort she shows you how to strip everything off then has you try again. By the third time you actually look halfway decent, and definitely much more feminine.<br>
<br>
"@@.npc_barista;Well, I guess that will have to do for now.@@" She states with a nod. "@@.npc_barista;Keep practicing! And, like, come hit me up if you want to learn how to do something a bit more fun and, like, sexy! Oh, and if you get sick of how beat up your makeup can look at the end of a long, hard... night, well, any decent salon should be able to apply your favourite style permanently!@@"<br>
<br>
You thank her for the assistance and she grins, helping you pack up and giving you a "slightly-more-than-friends" hug before skipping out the door, her bouncy skirts over her certainly plugged bum swishing merrily with each step.<br>
<br>
Putting the makeup kit aside you settle back in to work, noticing a message from your manager reminding you to "@@.npc_manager;Stay on top of your makeup, it would be very unprofessional for my <<if $fetish.sissy>>SISSI <</if>>Secretary to be looking run down in the afternoon.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start working." 60>>]
</div>/*#
#desc: forced makeup unlock
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_manager.stagevalues[2].makeup>>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set $scene.first_makeup = true>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<if !$scene.hasOwnProperty("makeup_decision")>>
<<if $player.makeup.template == 'ruined'>>
<<set $scene.makeup_decision = 'bad'>>
<<else>>
<<set $scene.makeup_decision = 'neutral'>>
<</if>>
<</if>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = ''>>
<<if $scene.makeup_decision == "neutral">>
<<set $player.makeup.permanent = 'normalmakeup'>>
<<else>>
<<set $player.makeup.permanent = 'sissy_doll'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
It's time for lunch and your computer pings with a message from <<=setup.getNpcName('npc_manager', 'formal')>> summoning you into her office.<br>
<br>
<<switch $scene.makeup_decision>>
<<case "neutral">>
You walk into her office and her expression of interest immediately narrows to one of annoyance.<br>
<br>
"@@.npc_manager;What is that? Did you even TRY to follow my instructions?@@" Standing up from her desk she stalks towards you and you take a reflexive fearful step back before her wrathful presence. "@@.npc_manager;No, you apparently did not. I gave you the entire morning to work on bettering yourself and you flaunt it...@@" Her nostrils flare as you brace yourself only for her to stalk back to her desk and search for something in a drawer.<br>
<br>
Heart pounding you await the paddling that is sure to come, but instead she approaches you bearing an oval, mask-like object.<br>
<br>
Bringing the mask to your head she holds it tight over your face as you feel it subtly reshape to press against your skin. You feel a strange warmth, your eyelids seeming to close of their own accord until you see the outline of a flash and she removes the mask.<br>
<br>
Turning towards a mirror you are shocked to find yourself facing a feminised version of your own complexion, lipstick, blush and mascara working together to really bring out your "femininity." <br>
<br>
"@@.npc_manager;There, since you refused to take the opportunity for personal betterment it has been inflicted upon you instead. I still encourage you to practice applying makeup yourself, but until then... well, the nanobots should last a good three to five years without maintenance and until then your face will remain looking as perfect as it does now. Now, at to my lunch order... go fetch me <<getFood>>@@"<br>
<br>
Still dazed by the sight of your reflection you stumble out of her office and let the door close behind you.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue." 60>>]
<<case "bad">>
Her expression goes from shock to rage in less than an instant in the moment she lays eyes on you.<br>
<br>
"@@.npc_manager;What the hell happened to you? Did you... do this to yourself?@@"<br>
<br>
She stares at you for several seconds as if not believing her eyes before finally slowly leaning over to retrieve an oval shaped object from her desk.<br>
<br>
She strides menacingly towards you. You would try to run if you were not already rooted in place with fear.<br>
<br>
"@@.npc_manager;Hold still.@@" She states, taking you by the throat with one hand while her other brings the mask to your face. A slight squeeze is all that it takes to suppress any thought of struggle, while driving home the reminder that she's more than strong enough to choke off the flow of oxygen, or possibly snap your neck like a twig.<br>
<br>
The mask seems to mold to your face before heating up slightly, almost burning as you squeeze your eyes shut in pain. A few seconds later there is a flash and then she removes the mask and turns you to face a mirror.<br>
<br>
You gawk in surprise, the face staring back at you may move in kind, but it is not your own — instead you find yourself facing what looks like a porcelain, <<if $fetish.sissy>>sissified<<else>>feminine<</if>> doll, pink lips open wide in shock.<br>
<br>
"@@.npc_manager;If you are going to act like a mindless, stupid doll well... you might as well look like one.@@" You bring your hands to your face, trying to rub away at the decoration, but unable to so much as smudge your lipstick.<br>
<br>
"@@.npc_manager;Do not worry about mussing your new look — it is effectively permanent... at least until the nanobots break down in about five years. Of course you could get it replaced at any competent salon, but that would not change the fact that I expect you to be properly made up like the lovely <<if $fetish.sissy>>sissy<<else>>cute<</if>> girl you are meant to be. Now get back to work, you have wasted enough of my time today.@@"<br>
<br>
<<printThought "Is this what I've come to? A mindless doll for her to dress up as she pleases?">><br>
<br>
Stunned, but not wanting to meet further punishment you flee back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue." 60>>]
<<default>>
ERROR: unexpected scene.makeup_decision <<=$scene.makeup_decision>>!
<</switch>>
</div>/*#
#desc: manager of hr employee development arrives to help with your nails
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_development', 'formal')>> arrives for a meeting carrying a small valise, motioning on her way past that you should follow her into your <<=ps(setup.getNpcName('npc_manager', 'title'))>> inner office.<br>
<br>
Greeting her sub-manager with a smile, <<=setup.getNpcName('npc_manager', 'formal')>> turns to you. "@@.npc_manager;So, after your somewhat... less than impressive showing in front of <<=setup.getNpcName('npc_boss', 'formal')>> last week, I decided it was high time to call in <<=setup.getNpcName('npc_development', 'formal')>> for a consult. This is her area of expertise, after all.@@"<br>
<br>
"@@.npc_development;You are too kind! I consider myself still the student when it comes to how to perfect a <<if $fetish.sissy>>SISSI <</if>>Secretary, but I will certainly lend what assistance I can.@@"<br>
<br>
Stalking around you in a circle, she has you strip naked and then repeats the pattern, looking you over from head to toe before rendering her assessment as you put your clothes back on.<br>
<br>
<<if $player.sec_style.clothing.nails == "" || !$player.piercings.nipples || (!setup.hasTattoo() && $fetish.tattoos)>>
"@@.npc_development;Well, overall she is coming along well, you do fantastic work, as always.@@" <<=setup.getNpcName('npc_development', 'formal')>> states with a nod towards your <<=setup.getNpcName('npc_manager', 'title')>>.
<<if $player.sec_style.clothing.nails == "" && !$player.piercings.nipples>>
"@@.npc_development;That said, it is really the little details that bring everything into focus — of particular note being that her nails are sorely in need of a manicure and her nipples well... they cry out for some nice piercings to draw the eye and enhance sensitivity.<<if (!setup.hasTattoo() && $fetish.tattoos)>> A tattoo would not go amiss either, perhaps a tramp stamp to note her ownership?<</if>>@@"
<<elseif $player.sec_style.clothing.nails == "">>
"@@.npc_development;That said, her otherwise perfection only serves to draw further attention to her nails and how desperately she needs a manicure.<<if (!setup.hasTattoo() && $fetish.tattoos)>> A tattoo would not go amiss either, perhaps a tramp stamp to note her ownership?<</if>>@@"
<<elseif !$player.piercings.nipples>>
"@@.npc_development;On the outside everything is perfect, but peeling away the layers of clothing and, well... I think her nipples are just crying out for a nice set of piercings, don't you think?<<if (!setup.hasTattoo() && $fetish.tattoos)>> A tattoo would not go amiss either, perhaps a tramp stamp to note her ownership?<</if>>@@"
<<elseif !setup.hasTattoo() && $fetish.tattoos>>
"@@.npc_development;One small detail is her lack of ink, a nice tramp stamp to denote her ownership would be good so even without the aid of clothing she remains on the job.@@"
<<else>>
ERROR: expected missing nails, tattoo or piercings
<</if>>
<br><br>
<<if $player.nails.style == "">>
It seems that "addressing your failure" is not something to be put off as you soon find yourself sitting back in a chair as <<=setup.getNpcName('npc_development', 'formal')>> opens her case to begin working on your nails.<br>
<br>
"@@.npc_development;So, what colour were you thinking?@@"<br>
<br>
[<<moveTo "event_development_nailsandink_2_nails_1" "Red." 600 "<<set $scene.color='red'>>">>]<br>
[<<moveTo "event_development_nailsandink_2_nails_1" "Pink." 600 "<<set $scene.color='pink'>>">>]<br>
[<<moveTo "event_development_nailsandink_2_nails_1" "Black." 600 "<<set $scene.color='black'>>">>]<br>
[<<moveTo "event_development_nailsandink_2_nails_1" "Natural." 600 "<<set $scene.color='skin'>>">>]<br>
[<<moveTo "event_strict_nails_1" "Stand up, you aren't going to have painted nails!" 60>>]
<<elseif $fetish.tattoos && !setup.hasTattoo()>>
"@@.npc_development;So for the work she needs, it would be best for her to see a professional. Fortunately we have someone with just that sort of skill-set on the payroll, and she is in a proper condition to see patients, shall I escort <<=$player.first_name>> down to see her?@@"<br>
<br>
The cryptic way they are referring to things has you a bit scared but faced with two dominant women, both of which are your superiors well, you don't have much choice but to follow along as a minute later <<=setup.getNpcName('npc_development', 'formal')>> takes you to the elevator and verifies her ID to send the two of you plunging down, down, down into one of the deep basement floors.<br>
<br>
[<<moveTo "event_development_nailsandink_2_pierce_1" "Continue." 600>>]<br>
<<else>>
<<=setup.getNpcName('npc_development', 'formal')>> rises to her feet. "@@.npc_development;So I do not think we need to take immediate action, in this case, but do keep my words in mind.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> glances at you until you nervously thank <<=setup.getNpcName('npc_development', 'formal')>> for her time.<br>
<br>
"@@.npc_development;But of course! Helping employees become the best they can is my job, after all... I just hope that I can get you into one of my classes someday!@@" Her expression makes you feel both excited, and nervous.<br>
<br>
Gathering her things <<=setup.getNpcName('npc_development', 'formal')>> departs and you are sent back to your desk to resume work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
<<elseif $player.flags.uniform_upgrade.aslutStage < 4>>
"@@.npc_development;While she looks near perfect on first glance... well, I was reviewing her record before I came over and it appears that<<if $currentTasks.task_uniform_upgrade.finished>>, while she completed her initial A-SLUT qualifications, she could be doing a bit more to really show her mastery. Not just in terms of items worn, but also in her comportment whilst wearing them.<<else>> she has some important work to do to really show off mastery of the A-SLUT program<</if>>.@@"<br>
<br>
"@@.npc_manager;A salient point,@@" <<=setup.getNpcName('npc_manager', 'formal')>> replies.
<<if $npc_manager.flags.uniform_upgrade.lunch_heel_training_complete>>
"@@.npc_manager;Just a little more dedication to bring it all together and really wow me during a morning inspection...@@"
<<elseif $npc_manager.flags.uniform_upgrade.lunch_heel_training > 0>>
"@@.npc_manager;Perhaps some more dedication to lunch heel training, until she can really prove her mastery.@@"
<<else>>
"@@.npc_manager;I believe some more lunch heel training might be in order, one can never have enough practice!@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_development', 'formal')>> gathers her things and departs. You are sent back to your desk to resume work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<else>>
"@@.npc_development;Well, I must say... she seems near perfect to my eye... unless it was her makeup? I don't know what she had on for the party, but <<=setup.getNpcName('npc_boss', 'formal')>> is very picky, <<he npc_boss>> insists on movie star good looks. Barring that... I guess the weekend gave her enough time to address her flaws on her own?@@"<br>
<br>
"@@.npc_manager;So it would appear! Well, I apologise for wasting your time but it is good to have second party confirmation.@@"<br>
<br>
Gathering her things <<=setup.getNpcName('npc_development', 'formal')>> departs and you are sent back to your desk to resume work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: try to refuse nails
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.nails.length = 3>>
<<set $player.nails.color = 'pink'>>
<<set $player.nails.style = "simple">>
<<set $player.sec_style.clothing.nails = 'strict'>>
<<addWorkEvent 'manager_foot'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You try to thrash around and escape, only for <<=setup.getNpcName("npc_manager","formal")>> to hold you down with the strength of steel. "@@.npc_manager;This is for your own good,@@" she explains tersely, twisting one of your arms behind your back while the other is held down and spread for <<=setup.getNpcName("npc_development","formal")>> to get to work.<br>
<br>
"@@.npc_manager;Pretty girls have pretty nails. No exceptions.@@"<br>
<br>
Your continued struggles are futile as <<=setup.getNpcName("npc_development","formal")>> gives you a full set of long, pink nails before <<=setup.getNpcName("npc_manager","formal")>> relaxes her grasp. "@@.npc_manager;And do not think to cut them off — you will only ruin a blade. They are designed specifically to be nigh-indestructible to minimise maintenance.@@"<br>
<br>
You stare at your hands as <<=setup.getNpcName("npc_development","formal")>> packs her things up.<br>
<br>
<<if !setup.hasTattoo() && $fetish.tattoos>>
"@@.npc_development;Now that is all I can handle myself, but in anticipation of additional gaps in her appearance I took the liberty of making an appointment for her, shall I take her down to get things seen to?@@"<br>
<br>
"@@.npc_manager;That would be just lovely.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states.<br>
<br>
The cryptic way the two women are speaking has you feeling a bit nervous but you are soon following <<=setup.getNpcName('npc_development', 'formal')>> into the elevator as she verifies her ID to send the two of you plunging down, down, down into one of the deep basement floors.<br>
<br>
[<<moveTo "event_development_nailsandink_2_pierce_1" "Continue." 600>>]<br>
<<else>>
"@@.npc_manager;You may return to your desk, now...@@" <<=setup.getNpcName("npc_manager","formal")>> states dismissively, interrupting your swirling thoughts.<br>
<br>
The two managers turn away from you to discuss other matters as you slink back to your desk, staring frequently at your new nails as your fancy fingers start to type.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: manager of hr employee development arrives to help with your nails
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.nails = 'forced'>>
<<addWorkEvent 'manager_foot'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Whistling softly, <<=setup.getNpcName('npc_development', 'formal')>> trims, shapes and buffs your nails with swift efficiency. Despite your nerves, you find the whole routine surprisingly relaxing, suddenly understanding why your ex-girlfriend insisted on going to the salon for her "pamper" sessions.<br>
<br>
Waiting for things to dry, <<=setup.getNpcName('npc_development', 'formal')>> selects your indicated colour. "@@.npc_development;Now once the coating dries, they are all but bulletproof, which means if you decide to change things up well... you will need to find a properly equipped salon. Speaking of which, would you like to keep your current length or would you like extensions? I think what you have at present is quite cute and functional but if you wanted a bit of length or full-on claws well... we can accommodate.@@"<br>
<br>
[<<moveTo "event_development_nailsandink_2_nails_2" "Short is good." 600 "<<set $scene.length=1>>">>]<br>
[<<moveTo "event_development_nailsandink_2_nails_2" "Maybe a little longer would look sexy?" 600 "<<set $scene.length=2>>">>]<br>
[<<moveTo "event_development_nailsandink_2_nails_2" "Ask for extra long nails." 600 "<<set $scene.length=3>>">>]
</div>/*#
#desc: manager of hr employee development arrives to help with your nails
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.nails.length = $scene.length>>
<<set $player.nails.color = $scene.color>>
<<set $player.nails.style = "simple">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Noting your choices, <<=setup.getNpcName('npc_development', 'formal')>>
<<switch $scene.length>>
<<case 1>>
efficiently paints your nails
<<case 2>>
binds an extension to each of your nails before painting them to your specification,
<<case 3>>
binds a long extension to each of your nails before painting them to your specification,
<<default>>
ERROR: unexpected scene.length: <<=$scene.length>>
<</switch>>
using some high-tech wand to dry them and then letting you admire how much more feminine they have your hands looking.<br>
<br>
<<if $scene.length >= 2>>
"@@.npc_development;These will grow out so you don't need to worry about beds peeking through. Doesn't that look so much better? As I said before, they're all but indestructible, and will shift backwards as your nails naturally to help you out. If it becomes too bothersome and you want to change it up any proper salon should be able to handle such. @@"
<<else>>
"@@.npc_development;There you go, so much more feminine! Just be careful, while they're night indestructible the extra length can take a bit of getting used to. If you ever want to make a change any proper salon should be able to help you out.@@"
<</if>>
<br><br>
<<if !setup.hasTattoo() && $fetish.tattoos>>
"@@.npc_development;Now that is all I can handle myself, but in anticipation I took the liberty of making an appointment for her, shall I take her down to get things seen to?@@"<br>
<br>
"@@.npc_manager;That would be just lovely.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states.<br>
<br>
The cryptic way the two women are speaking has you feeling a bit nervous but you are soon following <<=setup.getNpcName('npc_development', 'formal')>> into the elevator as she verifies her ID to send the two of you plunging down, down, down into one of the deep basement floors.<br>
<br>
[<<moveTo "event_development_nailsandink_2_pierce_1" "Continue." 600>>]<br>
<<else>>
"@@.npc_manager;Perfection, thank you again for taking care of this, I half wonder why I took so long to get this done, her hands look a thousand times lovelier like this.@@"<br>
<br>
"@@.npc_development;Well, the important thing is that it has been dealt with. You take care, sweet thing, and maybe I will get to REALLY go to work with you in one of my classes someday.@@"<br>
<br>
The two managers exchange a few more pleasantries and then <<=setup.getNpcName('npc_development', 'formal')>> is on her way and you back to your desk, staring at your new nails as your fancy fingers start to type.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: technician comments on your lack of nails and offers to help
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Holding your hand <<=ps(setup.getNpcName("npc_technician","first"))>> gaze lingers on your fingers, the contrast between your plain nails and her cute, perfectly painted digits suddenly stark.<br>
<br>
"@@.npc_technician;So... can't help noticing your nails... whaddaya say about a nice manicure? My treat! Well, not just me, the girls here have like... amazing skills and they'd love to help you out!@@"<br>
<br>
[<<moveTo "event_nails_obedient_2" "Say sure." 60>>]<br>
[<<moveTo "event_nails_obedient_abort" "Actually, you need to get going." 60>>]
</div>/*#
#desc: leave rather than accepting technician help
#status: RELEASED 0.7.12.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -5>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You decline her offer to help with your nails.<br>
<br>
"@@.npc_technician;Aww, alright, well, maybe some other time. Either way, your nails would look so much prettier with a bit of colour.@@"<br>
<br>
She winks and the two of you pay for your drinks and leave.<br>
<br>
[<<moveTo "room_mall" "Leave." 180>>]
</div>/*#
#desc: obedient nails color choice
#status: RELEASED 0.7.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.nails = 'obedient'>>
<<addWorkEvent 'manager_foot'>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
Pounding the rest of her drink <<=setup.getNpcName("npc_technician","first")>> looks a bit wild-eyed from the influx of caffeine, the enthusiasm soon rubbing off as she takes you by the hand and leads you to a back room in the cafe.<br>
<br>
Before you know what's happening, you find yourself sitting back in a cute little lounge, <<=setup.getNpcName("npc_maid","first")>> summoned who smiles at you as she cracks open a kit of nail polish and all manner of tools.<br>
<br>
"@@.npc_maid;How's this for a bait and switch? <<=setup.getNpcName("npc_technician","first")>> talks you into getting nailed... and then has to out-source the job!@@" she says with a teasing wink as she takes your slender hand in hers and sets to working at your cuticles. "@@.npc_maid;What were you thinking? Certainly just taking care of things in the slightest will be a wonderful step but I want you to feel PERFECT... so what colour best says you?@@"<br>
<br>
[<<moveTo "event_nails_obedient_3" "Red." 600 "<<set $scene.color='red'>>">>]<br>
[<<moveTo "event_nails_obedient_3" "Pink." 600 "<<set $scene.color='pink'>>">>]<br>
[<<moveTo "event_nails_obedient_3" "Black." 600 "<<set $scene.color='black'>>">>]<br>
[<<moveTo "event_nails_obedient_3" "Natural." 600 "<<set $scene.color='skin'>>">>]
</div>/*#
#desc: obedient nails length choice
#status: RELEASED 0.7.8.0
#ignore_spell: color
#*/
<<include enterroom>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.color>>
<<case 'red'>>
"@@.npc_maid;Oooh, sexy, you caught a real live one here!@@" She states states grinning at <<=setup.getNpcName("npc_technician","first")>> who seems overcome with a mix of bashfulness and pride.
<<case 'pink'>>
"@@.npc_maid;How cute, I might have guessed... though I wonder how someone so sweet ended up with an evil witch?@@"<br>
<br>
"@@.npc_technician;That's wizard, thank you very much!@@" <<=setup.getNpcName("npc_technician","first")>> replies to the playful needling. "@@.npc_technician;My power comes from study and will, not... poultices and hedge magic!@@"<br>
<br>
"@@.npc_maid;Ah, of course, I should have just remembered your wand. I prefer a proper staff, myself.@@"
<<case 'black'>>
"@@.npc_maid;Black? Alas, another sweet, innocent girl seduced by the dark arts and on the road to big tiddy goth girlfriendom!@@"<br>
<br>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
All eyes are on your massive breasts as <<=setup.getNpcName("npc_technician","first")>> smiles "@@.npc_technician;I, uh, think she's already there!@@"
<<case 'large'>>
All eyes are on your large breasts as <<=setup.getNpcName("npc_technician","first")>> smiles "@@.npc_technician;Seem's she's already on the road there, so hot.@@"
<<case 'medium'>>
All eyes are briefly on your breasts <<=setup.getNpcName("npc_technician","first")>> smiles. "@@.npc_technician;I suppose they are not technically "big" but they are still a beautiful, bountiful pair of sweater puppies fit for any maiden of the night.@@"
<<case 'small'>>
You blush at the reminder of your small breasts but <<=setup.getNpcName("npc_technician","first")>> smiles in comfort. "@@.npc_technician;Oh, she's just joking, you're beautiful just the way you are!@@"
<<case 'none'>>
You blush at the reminder of your flat chest but <<=setup.getNpcName("npc_technician","first")>> smiles in comfort. "@@.npc_technician;Oh, she's just joking, you're beautiful just the way you are!@@"
<</switch>>
<<case 'skin'>>
"@@.npc_maid;Au naturale? If you're aiming for classy I'd suggest your first move would be finding a girlfriend who isn't quite so...@@" She gestures vaguely in <<=ps(setup.getNpcName("npc_technician","first"))>> direction "@@.npc_maid;Shlubby.@@"<br>
<br>
"@@.npc_technician;Like you're one to talk. I've seen you out of that uniform and you're the queen of slacking off! Seriously, I didn't think you could even BUY clothes that frumpy without a senior citizen ID.@@"
<<default>>
ERROR: unexpected scene.color: <<=$scene.color>>
<</switch>>
<br><br>
The two women laugh and exchange a few more barbs as <<=setup.getNpcName("npc_maid","first")>> finishes cleaning up your existing nails and sets out the polish.<br>
<br>
"@@.npc_maid;Now, for the next question — length. Obviously I don't have much to work with, but no matter, I can have you setup with a pair that will be nigh indestructible and will automatically "slide" backwards to stay flush with your roots as you grow. Isn't technology wonderful?.@@"<br>
<br>
[<<moveTo "event_nails_obedient_4" "Short is good." 600 "<<set $scene.length=1>>">>]<br>
[<<moveTo "event_nails_obedient_4" "Maybe a little longer would look sexy?" 600 "<<set $scene.length=2>>">>]<br>
[<<moveTo "event_nails_obedient_4" "Ask for extra long nails." 600 "<<set $scene.length=3>>">>]
</div>/*#
#desc: obedient nails finish
#status: RELEASED 0.7.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.nails.length = $scene.length>>
<<set $player.nails.color = $scene.color>>
<<set $player.nails.style = "simple">>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_maid","npc_maid_trayless") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.length>>
<<case 1>>
"@@.npc_maid;Prudent, don't want them catching on things or getting in the way.@@"
<<case 2>>
"@@.npc_maid;Hmm, kitty wants claws! Well, we can fix that up no problem!@@"
<<case 3>>
"@@.npc_maid;Just so you know, you'll have to declare your hands as weapons when you go through security now. Only kidding! But yowza, talk about ambitious for your first nails.@@"
<<default>>
ERROR: unexpected scene.length <<=$scene.length>>
<</switch>>
<br><br>
<<if $scene.length == 1>>
<<=setup.getNpcName("npc_maid","first")>> sets to work painting, wielding the brush with precise care as she gives you a perfect set of
<<else>>
The tips of your fingers tingle as the nails bind themselves in place and then <<=setup.getNpcName("npc_maid","first")>> sets to work painting and before long you are sporting a full, glorious set of <<if $scene.length == 2>>medium<<else>>extra long<</if>>
<</if>>
<<switch $scene.color>>
<<case 'red'>>
alluring, ruby red
<<case 'pink'>>
cute pink
<<case 'black'>>
shiny, sexy black
<<case 'skin'>>
natural and classy
<</switch>>
nails.<br>
<br>
You stare in awe at your newly enhanced digits as <<=setup.getNpcName("npc_maid","first")>> packs up her things.<br>
<br>
"@@.npc_maid;See you around!@@" She concludes with a smile. "@@.npc_maid;Now get the hell out of the employee lounge!<<if $player.flags.maidcafe.times_worked>> I know you work here too, but you aren't on shift, and she DEFINITELY isn't waiting tables.<</if>>@@"<br>
<br>
Brushing off the jab, <<=setup.getNpcName("npc_technician","first")>> takes you by the hand and heads back to your table. Placing your hand on the table with hers on top — though not obscuring your new nails she smiles. "@@.npc_technician;Ah, much better! Now, then, what were we talking about?@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: money nails color choice
#status: RELEASED 0.7.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_butler","formal")>> smiles. "@@.npc_butler;Wonderful. Let me fetch one of the girls, she's a real wizard with nail polish, but don't tell her I used that word, she seems to have some sort of issue with the implication of her being an arcane caster...@@"<br>
<br>
You sit for a few minutes wondering why that might be only for <<=setup.getNpcName("npc_maid","first")>> to burst into the room with a smile as you recall her teasing "rivalry" with your <<if $npc_technician.relationship.relationship_stage > 0>>girlfriend<<else>>mutual friend<</if>> the "tech-wizard." <br>
<br>
"@@.npc_maid;Time to get nailed!@@" She announces with a wide grin as she plops a large case down next to you and start unpacking. "@@.npc_maid;So, what'll it be? What colour speaks to YOU?@@"<br>
<br>
[<<moveTo "event_nails_money_2" "Red." 600 "<<set $scene.color='red'>>">>]<br>
[<<moveTo "event_nails_money_2" "Pink." 600 "<<set $scene.color='pink'>>">>]<br>
[<<moveTo "event_nails_money_2" "Black." 600 "<<set $scene.color='black'>>">>]<br>
[<<moveTo "event_nails_money_2" "Natural." 600 "<<set $scene.color='skin'>>">>]
</div>/*#
#desc: money nails length choice
#status: RELEASED 0.7.8.0
#ignore_spell: color
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.nails = 'money'>>
<<addWorkEvent 'manager_foot'>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<switch $scene.color>>
<<case 'red'>>
"@@.npc_maid;Sexy.@@"
<<case 'pink'>>
"@@.npc_maid;Cute... if somewhat expected.@@"
<<case 'black'>>
"@@.npc_maid;Hmm, do I spot a sexy goth peeking out?@@"
<<case 'skin'>>
"@@.npc_maid;How demure, a bit of a surprise, to be honest.@@"
<<default>>
ERROR: unexpected scene.color: <<=$scene.color>>
<</switch>>
She states in summary of your choice as she flicks through shades to find the perfect one for you.<br>
<br>
"@@.npc_maid;Alright, we've got colour — now for length? Obviously anything other than short will require extensions but... WE HAVE THE TECHNOLOGY! No seriously, these things are badass, basically bulletproof and they automatically "migrate" to keep your bed from showing.@@"<br>
<br>
[<<moveTo "event_nails_money_3" "Stay short." 600 "<<set $scene.length=1>>">>]<br>
[<<moveTo "event_nails_money_3" "Maybe a little longer would look sexy?" 600 "<<set $scene.length=2>>">>]<br>
[<<moveTo "event_nails_money_3" "Ask for extra long nails." 600 "<<set $scene.length=3>>">>]
</div>/*#
#desc: money nails finish
#status: RELEASED 0.7.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.nails.length = $scene.length>>
<<set $player.nails.color = $scene.color>>
<<set $player.nails.style = "simple">>
<<addCredits 20>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_butler")>>
<div id="invframe" class="scrolltext">
<<switch $scene.length>>
<<case 1>>
"@@.npc_maid;Prudent, don't want them catching on things or getting in the way.@@"
<<case 2>>
"@@.npc_maid;Hmm, kitty wants claws! Well we can fix that up no problem!@@"
<<case 3>>
"@@.npc_maid;Just so you know, you'll have to declare your hands as weapons when you go through security now. Only kidding! But yowza, talk about ambitious for your first nails.@@"
<<default>>
ERROR: unexpected scene.length <<=$scene.length>>
<</switch>>
<br><br>
<<if $scene.length == 1>>
<<=setup.getNpcName("npc_maid","first")>> sets to work painting and before long, wielding the brush with precise care as she gives you a perfect set of
<<else>>
The tips of your fingers tingle as the nails bind themselves in place and then <<=setup.getNpcName("npc_maid","first")>> sets to work painting and before long you are sporting a full, glorious set of <<if $scene.length == 2>>medium<<else>>extra long<</if>>
<</if>>
<<switch $scene.color>>
<<case 'red'>>
alluring, ruby red
<<case 'pink'>>
cute pink
<<case 'black'>>
shiny, sexy black
<<case 'skin'>>
natural and classy
<</switch>>
nails.<br>
<br>
You stare in awe at your newly enhanced digits as <<=setup.getNpcName("npc_maid","first")>> packs up her things.<br>
<br>
"@@.npc_maid;See you around!@@" She concludes with a smile as she packs up her things. Just as she opens the door to leave <<=setup.getNpcName("npc_butler","formal")>> strides back in, a brief, but formal, exchange of <<if !$npc_butler.fem>>bows and <</if>>curtsies proceeding before <<=setup.getNpcName("npc_butler","formal")>> approaches and offers you a credit chip.<br>
<br>
"@@.npc_butler;As promised.@@" They note, taking a moment to admire your new nails as you claim your reward. "@@.npc_butler;Lovely, lovely work, and at that I wish you a pleasant trip home and I look forward to your next shift.@@"<br>
<br>
<<=setup.getNpcName("npc_butler","formal")>> holds the door as you give a parting curtsy of your own and head on your way.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 30>>]
</div>/*#
#desc: beauty parlour nails voluntary choice
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("feminization") <= 10>>
<<spendWillpower 1>>
<</if>>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nail_machine.png">>
<div id="invframe" class="scrolltext">
Full of nervous, almost giddy energy you take your seat and make selections for your first manicure.<br>
<br>
<<include "nails_options">>
<br>
[<<moveTo "room_mall_beautyparlor_nails_voluntary_2" "Confirm your selection and stick your hands into the machine." 300>>]<br>
[<<moveTo "room_mall" "On second thought... no, get up and leave." 30>>]
</div>/*#
#desc: beauty parlour nails voluntary application
#status: FINISHED 0.7.8.0
#ignore_spell: color
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.nails = 'voluntary'>>
<<addWorkEvent 'manager_foot'>>
<<if setup.getTotalValue("feminization") > 10>>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<<else>>
<<spendWillpower 1>>
<</if>>
<<set $player.nails.length = $scene.length>>
<<set $player.nails.color = $scene.color>>
<<set $player.nails.style = "simple">>
<</if>>
<<set $player.location to "Dye Me Crazy: Beauty Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nail_machine.png" setup.charImage("npc_barber")>>
<div id="invframe" class="scrolltext">
Having made your selection, you nervously slide your hands into the pair of dark holes on the front of the machine. You gasp as a soft pressure closes around them, holding your wrist securely as something unseen takes place.<br>
<br>
Focusing on controlling your breathing, you rest your elbows on the armrests sticking out from the machine and wait. Your hands all but locked in position with your fingers wide and outstretched, you can feel strange machines poking your cuticles and polishing your nails. As strange as it feels, it is also somewhat relaxing and you start to understand why your ex-girlfriend insisted on pampering herself with a manicure every week or so.<br>
<br>
The machine whirring away, you feel something brushing your nails and then air and a slight warmth on your fingers. In but a few minutes it is over, the pressure releasing as you pull back your hands and look upon your gorgeous new fingernails, precisely as ordered.<br>
<br>
<<switch $scene.color>>
<<case 'red'>>
<<printThought "Wow these are sexy!">>
<<case 'pink'>>
<<printThought "Wow these are cute!">>
<<case 'black'>>
<<printThought "Oooh, these make me look dark and dangerous!">>
<<case 'skin'>>
<<printThought "Subtle, but they really do look so much better than before.">>
<<default>>
ERROR: unexpected scene.color: <<=$scene.color>>
<</switch>>
<br><br>
You flutter your fingers,
<<switch $scene.length>>
<<case 1>>
admiring the cute, perfectly even length of your new nails.
<<case 2>>
admiring the way your new nails make your fingers look longer and more slender, without being so unwieldy as to get in the way of anything.
<<case 3>>
you admire your long, sexy new nails. You imagine they might be a bit inconvenient in some cases but they're hot enough that it's probably worth the trade off.
<<default>>
ERROR: unexpected scene.length: <<=$scene.length>>
<</switch>>
<br><br>
Having stepped away to deal with another customer, <<=setup.getNpcName("npc_barber","first")>> spots you from across the salon and smiles back at you.<br>
<br>
[<<moveTo "room_mall" "Stand up and leave." 30>>]
</div>/*#
#desc: ask npc_maid for enthusiast nails
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
As you wait for <<=setup.getNpcName("npc_technician","first")>> you make eye contact with her... friend? <<=setup.getNpcName("npc_maid","first")>> standing at the counter, waiting for her next customer.<br>
<br>
The maid nods to you in acknowledgement, but your attention is diverted to what must be a fresh coat of polish, her fingernails dazzling you with their beauty...<br>
<br>
[<<moveTo "event_enthusiast_nails_2" 'Ask <<=setup.getNpcName("npc_maid","first")>> about her nails...' 180>>]<br>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
[<<moveTo "room_mall_cafe" 'Resume waiting for <<=setup.getNpcName("npc_technician","first")>>.' _tmpSeconds>>]
</div>/*#
#desc: ask npc_maid for enthusiast nails
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_maid","first")>> and, somewhat nervous, given her bored, dismissive gaze, ask her about her nails.<br>
<br>
She immediately brightens up at the question. "@@.npc_maid;Oh, these? Just having some fun... it's a small thing but I've always found painting my nails to be almost meditative... plus it's a fun little way to express yourself.@@" Her attention shifts to your own bare nails and her expression softens further. "@@.npc_maid;Say... things are pretty quiet, and <<=setup.getNpcName("npc_technician","first")>> is probably still trying to drag herself out of bed... do you want me to show you how to do your nails? I promise that it's simpler than it looks.@@"<br>
<br>
She enticingly flashes her nails in front of you...<br>
<br>
[<<moveTo "event_enthusiast_nails_3" 'That sounds great!' 180 "<<set $scene.nails=true>>">>]<br>
[<<moveTo "event_enthusiast_nails_3" 'Maybe some other time...' 60 "<<set $scene.nails=false>>">>]
</div>/*#
#desc: enthusiast nails
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.nails>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<else>>
<<set $player.location to "Cafe: Newtype IV">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.nails>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<<else>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.nails>>
You blush with excitement as you nod and follow <<=setup.getNpcName("npc_maid","first")>> into the back room of the cafe.<br>
<br>
There's a large battlestation full of every sort of makeup and nail polish you can imagine and <<=setup.getNpcName("npc_maid","first")>> sits you down for a crash course on the basics of prep and maintenance before starting in to show you how to apply a base-coat.<br>
<br>
"@@.npc_maid;Okay, so the next step is to choose your colour: and feel free to get a bit adventurous, it's easy to change and you should have fun with things!@@"<br>
<br>
[<<moveTo "event_enthusiast_nails_4" "Red." 600 "<<set $scene.color='red'>>">>]<br>
[<<moveTo "event_enthusiast_nails_4" "Pink." 600 "<<set $scene.color='pink'>>">>]<br>
[<<moveTo "event_enthusiast_nails_4" "Black." 600 "<<set $scene.color='black'>>">>]<br>
[<<moveTo "event_enthusiast_nails_4" "Natural." 600 "<<set $scene.color='skin'>>">>]
<<else>>
You thank <<=setup.getNpcName("npc_maid","first")>> for the offer, but reply that you don't think you have time right now. "@@.npc_maid;Aww, okay,@@" there's an awkward moment of silence before she pretends to notice a customer on the other side of the cafe. "@@.npc_maid;Well, uh... guess I should be getting back to work, have a good date with <<=setup.getNpcName("npc_technician","first")>>!@@"<br>
<br>
She dashes away before you can respond or clarify that it isn't actually a date... though the idea of going on a date with <<=setup.getNpcName("npc_technician","first")>> certainly sparks some feelings...<br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)>>
[<<moveTo "room_mall_cafe" 'Resume waiting for <<=setup.getNpcName("npc_technician","first")>>.' _tmpSeconds>>]
<</if>>
</div>/*#
#desc: enthusiast nails length choice
#status: WRITTEN 0.8.6.0
#ignore_spell: color
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<switch $scene.color>>
<<case 'red'>>
"@@.npc_maid;Oooh, sexy, red is a real classic for a reason.@@" She states with a grin.
<<case 'pink'>>
"@@.npc_maid;How cute, I might have guessed... despite your somewhat questionable taste in friends, you seemed pretty sweet.@@" She winks in reminder of what seems to be an ongoing playful feud with <<=setup.getNpcName("npc_technician","first")>>.
<<case 'black'>>
"@@.npc_maid;Black? You looking to live that goth life? Good times, good times.@@"
<<case 'skin'>>
"@@.npc_maid;Au naturale? I said you could be adventurous! But hey, whatever makes you happy, that's the important thing.@@"
<<default>>
ERROR: unexpected scene.color: <<=$scene.color>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_maid","first")>> selects a bottle of polish as she continues.<br>
<br>
"@@.npc_maid;Now, for the next question — length. Obviously I don't have much to work with, but no matter, I can have you setup with a pair that will be nigh indestructible and will automatically "slide" backwards to stay flush with your roots as you grow. Isn't technology wonderful?.@@"<br>
<br>
[<<moveTo "event_enthusiast_nails_5" "Short is good." 600 "<<set $scene.length=1>>">>]<br>
[<<moveTo "event_enthusiast_nails_5" "Maybe a little longer would look sexy?" 600 "<<set $scene.length=2>>">>]<br>
[<<moveTo "event_enthusiast_nails_5" "Ask for extra long nails." 600 "<<set $scene.length=3>>">>]
</div>/*#
#desc: enthusiast nails finish
#status: WRITTEN 0.8.6.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.nails.length = $scene.length>>
<<set $player.nails.color = $scene.color>>
<<set $player.nails.style = "simple">>
<<set $player.sec_style.clothing.nails = 'enthusiast'>>
<<addWorkEvent 'manager_foot'>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_backroom.png" setup.charImage("npc_maid","npc_maid_trayless")>>
<div id="invframe" class="scrolltext">
<<switch $scene.length>>
<<case 1>>
"@@.npc_maid;Prudent, don't want them catching on things or getting in the way.@@"
<<case 2>>
"@@.npc_maid;Hmm, kitty wants claws! Well, we can fix that up no problem!@@"
<<case 3>>
"@@.npc_maid;Just so you know, you'll have to declare your hands as weapons when you go through security now. Only kidding! But yowza, talk about ambitious for your first nails.@@"
<<default>>
ERROR: unexpected scene.length <<=$scene.length>>
<</switch>>
<br><br>
<<if $scene.length == 1>>
<<=setup.getNpcName("npc_maid","first")>> sets to work painting, wielding the brush with precise care as she gives you a perfect set of
<<else>>
The tips of your fingers tingle as the nails bind themselves in place and then <<=setup.getNpcName("npc_maid","first")>> sets to work painting and before long you are sporting a full, glorious set of <<if $scene.length == 2>>medium<<else>>extra long<</if>>
<</if>>
<<switch $scene.color>>
<<case 'red'>>
alluring, ruby red
<<case 'pink'>>
cute pink
<<case 'black'>>
shiny, sexy black
<<case 'skin'>>
natural and classy
<</switch>>
nails.<br>
<br>
You stare in awe at your newly enhanced digits as <<=setup.getNpcName("npc_maid","first")>> cleans up and starts putting things away.<br>
<br>
"@@.npc_maid;Enjoy! I should probably get back to work, but I'm sure I'll see you around!@@" She concludes with a smile.<br>
<br>
You marvel at your nails and nod as you make your way back to the cafe... only to almost bump into <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
[<<moveTo "event_enthusiast_nails_6" "Fancy meeting you here?" 60>>]
</div>/*#
#desc: meet technician after enthusiast nails
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextdate = setup.checkTaskLocationTime('room_mall_cafe')>>
<<set $scene.tmpSeconds = setup.secondsToDate($now,_nextdate)>>
<<completeTask 'technician_cafe_1' $now true>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png">>
<div id="invframe" class="scrolltext">
<<if $scene.tmpSeconds <= 300>>
<<=setup.getNpcName("npc_technician","first")>> taps her foot as if to imply she'd been waiting a while. "@@.npc_technician;There you are! I do hope <<=setup.getNpcName("npc_maid","first")>> wasn't doing anything too horrible to you!@@"
<<else>>
<<=setup.getNpcName("npc_technician","first")>> taps her foot as if to imply she'd been waiting a while. "@@.npc_technician;The one time I show up early... and what do I find but you getting into trouble with <<=setup.getNpcName("npc_maid","first")>>! She better not have been doing anything too horrible to you!@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_maid","first")>> grins. "@@.npc_maid;Just doing my honourable best to steer <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>him<<case 'fluid' 'agender'>>them<</switch>> towards a better quality of friend... alas, <<switch $player.identify_as>><<case 'female' ''>>she<<case 'male'>>he<<case 'fluid' 'agender'>>them<</switch>> seems to have already fallen under your dastardly spell! Oh, and I showed <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>him<<case 'fluid' 'agender'>>them<</switch>> how to paint <<switch $player.identify_as>><<case 'female' ''>>her<<case 'male'>>his<<case 'fluid' 'agender'>>their<</switch>> nails!@@"<br>
<br>
The playful verbal fencing is momentarily forgotten as <<=setup.getNpcName("npc_technician","first")>> lays eyes on your nails and begins gushing with excitement. "@@.npc_technician;Oh! Those are gorgeous! For all her negative qualities — which none of us have time for me to even partially enumerate, <<=setup.getNpcName("npc_maid","first")>> is a true artist with a brush, and on such cute hands as yours...@@" She makes a "chef's kiss" motion with her fingers.<br>
<br>
<<=setup.getNpcName("npc_maid","first")>> theatrically bows, and then excuses herself as another customer arrives at the cafe.<br>
<br>
"@@.npc_technician;Come on, <<=$player.first_name>> — let's go grab a table. The excitement of seeing your lovely digits has helped rouse me for the day, but I yet need my delicious draught of caffeinated beverage!@@"<br>
<br>
<<if $npc_technician.stage==1>>
[<<moveTo "event_technician_cafe_1_2" "Head for your table and order something." 300>>]
<<else>>
[<<moveTo "event_technician_cafe_1_2a" "Head for your table and order something." 300>>]
<</if>>
</div>/*#
#desc: head to basement for forced tattoo + piercing
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
"@@.npc_development;Now, the thing to keep in mind.@@" <<=setup.getNpcName('npc_development', 'formal')>> explains as you plunge into the subterranean depths of the building. "@@.npc_development;Is to stay calm. The... individual you are about to meet is somewhat intense, but she merely has a job to do, and your pain will be much reduced if you just go along with things.@@"<br>
<br>
Even more confused, your nervous state heightens as <<=setup.getNpcName('npc_development', 'formal')>> is required to verify her identity at two separate checkpoints before coming to a heavy, secure door, a guard opening it slowly before motioning for you to step into the darkness beyond.<br>
<br>
[<<moveTo "event_development_nailsandink_2_pierce_2" "Step inside." 60>>]<br>
[<<moveTo "event_development_nailsandink_2_pierce_2_hestitate" "Hesitate." 60>>]<br>
</div>/*#
#desc: hesitate in basement tatoo parlor
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Basement">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png">>
<div id="invframe" class="scrolltext">
Scared as to what, exactly, is going on, you are pushed forward, stumbling into the room as the door behind slams shut with a heavy thunk.<br>
<br>
[<<moveTo "event_development_nailsandink_2_pierce_2" "Look around." 600>>]<br>
</div>/*#
#desc: forced tattoo intro
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Basement Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png">>
<div id="invframe" class="scrolltext">
As the door closes, the room is suddenly bathed in light and you blink and try to look around, finding it empty save for a full length massage table.<br>
<br>
"@@.computer;Please strip and assume position atop the table to prepare for procedure.@@" A mechanical voice
<<if $npc_ai.stage > 2>>
— though not your ally <<=setup.getNpcName('npc_ai', 'first')>>
<<elseif $npc_ai.stage == 1>>
— though not the mysterious <<=setup.getNpcName('npc_ai', 'first')>>
<</if>>
commands.<br>
<br>
[<<moveTo "event_development_nailsandink_2_pierce_3" "Do as ordered." 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_development_nailsandink_2_pierce_3" "Try to leave." 60 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: forced tattoo
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $player.sec_style.clothing.tattoo = 'forced'>>
<<include "checkTattooCollar">>
<<applyExperience 'submission' 12 'normal' $ALONE>>
<<else>>
<<set $player.sec_style.clothing.tattoo = 'strict'>>
<<include "checkTattooCollar">>
<</if>>
<<applyExperience 'bondage' 15 'normal' $ALONE>>
<<applyExperience 'bdsm' 14 'very' $ALONE>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "Basement Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You're in enough trouble already — and you see no exit to the room save the heavy, securely locked door you came in through, so you resign yourself to obedience, lying face first onto the table with your face gently cradled in the padded headrest.<br>
<br>
The arrangement is actually quite comfortable and you start to relax only for there to be a snapping sound as restraints suddenly snap down over your body.
<<else>>
You turn and try to bang on the door, calling to be let out only to catch a whiff of something strange just before you feel light-headed. You try to call out louder but only a few moments later things go dark and you wake up to find yourself lying face-down, your limbs bound in place and your head cradled in a padded massage headrest.
<</if>>
<br><br>
Bound at the head, wrist, elbow, thigh, ankle and mid-back, you are all but completely helpless as you hear a whirring machine sound coming from above.<br>
<br>
Unable to turn your head to see, you start to call out only for a gag to be forced into your mouth, the initially small item swelling to spread your lips wide and utterly silence you.<br>
<br>
You can't see what's going on but you can hear the mechanical sound coming closer and then you feel something wet scrubbing your lower back.<br>
<br>
<<printThought "Wait... am I getting a tramp stamp???">><br>
<br>
Your question is answered a moment later when your back is dried off and then touched by a pinpoint heat. The needle tracing its way across the small of your back, the pain spreads as you bite down on the gag, your screams silenced and your struggles quelled by restraints as you have no choice but to endure.<br>
<br>
[<<moveTo "event_development_nailsandink_2_pierce_4" "Continue." 600>>]
</div>/*#
#desc: forced tattoo end
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.tattoos.tramp = "company_owned">>
<<useClothSetPop 'tmp'>>
<<set $scene.piercing = !$player.piercings.nipples>>
<<if $scene.piercing >>
<<set $player.piercings.nipples = true>>
<<set $shopStatus['tattoo_parlor'].unlocked_inventory.pushUnique('nipple')>>
<<addItem 'nipple_rings_large'>>
<<wearItem 'nipple_rings_large' true>>
<</if>>
<<storeVisual $player $npc_manager>>
<</if>>
<<set $player.location to "Basement Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png">>
<div id="invframe" class="scrolltext">
Distracted by the pain, you aren't sure exactly how long you lay there enduring your tattoo before the needle pulls away and a soothing coolness spreads across your back.<br>
<br>
<<if $scene.piercing>>
You are just starting to catch your breath when the portion of the bench under your <<if $player.body.breastsize[0] > 0>>breasts<<else>>upper chest<</if>> drops away. Before you can react, twin lances of pain shoot through your nipples, the stabbing jolt lasting for a moment before the needles withdraw and a pair of rings are slid into place in your freshly pierced nipples.
<</if>>
Braced for things to resume, you slowly catch your breath and then are surprised by the restraints snapping loose.<br>
<br>
Sitting up and wiping the drool that coats your lips thanks to the large gag, you note a robotic arm retracting into the ceiling as you remain alone in the room.<br>
<br>
<<printThought "Robotic tattooist... efficient, if a little creepy.">><br>
<br>
Though your skin still feels sensitive where things were happening, you no longer feel any pain and you are suddenly curious what, exactly has been done to you. Looking around the room, you find a full length mirror that seems to be here to answer just that sort of question and you take a moment to puzzle out reading the reflected, and thus reversed elegant script declaring you "Property of Social Interaction Services Syndicate Incorporated" — the full name of the company written out to cover your entire lower back.<br>
<br>
<<printThought "Well... that's a thing.">> You note with a sigh. Reaching behind, to tenderly touch the fresh tattoo, you note that while a little sensitive, it seems fully healed, obviously your procedure incorporated some high tech med stuff so you won't have to be concerned with damaging it in the near term. You look around for your clothes.<br>
<br>
<<if setup.getItemFromType("corset")>>
You are a bit trepidatious about the interaction between corset and fresh tattoo but you manage to tighten things down without any real issue.
<<else>>
Getting dressed, you are hyper-aware of the fabric brushing against the fresh tattoo but it is merely a mild reminder of what has happened without any real pain.
<</if>>
No sooner have you put your clothes back on, does the door unlock and open for <<=setup.getNpcName('npc_development', 'formal')>> to motion you forward and then take you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: obedient tattoo intro
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Basement Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png">>
<div id="invframe" class="scrolltext">
The door closes and locks behind you with a heavy thunk and the lights come on to reveal an otherwise empty room with a padded massage table in the centre. <<=setup.getNpcName("npc_manager","formal")>> stands beside the table and smiles at you.<br>
<br>
"@@.npc_manager;Take off your clothes and hop on up so that we may begin.@@"<br>
<br>
[<<moveTo "event_development_tattoo_obedient_2" "Do as she commands." 120>>]
</div>/*#
#desc: obedient tattoo
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.tattoo = 'obedient'>>
<<include "checkTattooCollar">>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'submission' 12 'normal' $ALONE>>
<<applyExperience 'bondage' 15 'normal' $ALONE>>
<</if>>
<<set $player.location to "Basement Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png">>
<div id="invframe" class="scrolltext">
You remove your clothes and <<=setup.getNpcName("npc_manager","formal")>> helps strap you down. You look up with concern as she pulls the first strap over your chest but she comforts you with a smile.<br>
<br>
"@@.npc_manager;Just a safety precaution — we would not want you to move and mess things up, right?@@"<br>
<br>
What she says makes sense, even if multiple straps for each limb as well as your head and chest seems a bit excessive. Thoroughly double checking that everything is cinched down tight, she smiles a final time and squeezes your hand before stepping back as robotic arms lower from the ceiling.<br>
<br>
"@@.npc_manager;The latest in auto-tattoo technology: fast and efficient and with near instantaneous heal times!@@" She explains as a pair of arms gently wash your lower belly and then a needle-tipped arm swings into position.<br>
<br>
[<<moveTo "event_development_tattoo_obedient_3" "Continue." 600>>]
</div>/*#
#desc: obedient tattoo finish
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.tattoos.belly = "manager_own">>
<<applyExperience 'bdsm' 12 'normal' $ALONE>>
<<set $scene.piercing = !$player.piercings.nipples>>
<<if $scene.piercing>>
<<set $player.piercings.nipples = true>>
<<set $shopStatus['tattoo_parlor'].unlocked_inventory.pushUnique('nipple')>>
<<addItem 'nipple_rings'>>
<<wearItem 'nipple_rings' true>>
<</if>>
<<storeVisual $player $npc_manager>>
<</if>>
<<set $player.location to "Basement Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png">>
<div id="invframe" class="scrolltext">
You wince in pain as the needle first touches your skin but glancing over at <<=setup.getNpcName("npc_manager","formal")>> looking on in encouragement bolsters your courage and you grit you teeth and almost start to enjoy the burning sensation as the robotic arm does its rapid work.<br>
<br>
Bound as you are, you can't see what is taking form but it seems to be going quite fast.
<<if $scene.piercing>>
Focusing on controlling your breathing, you fail to notice another arm reach down towards your upper chest until there is a shooting pain going through your left nipple. Looking down, you watch the arm slide a ring through your newly pierced nipple and move to the other side of your chest. You glance towards <<=setup.getNpcName("npc_manager","formal")>> but she just smiles.<br>
<br>
"@@.npc_manager;Since we were here anyway...@@" She explains with a shrug as your response is cut off by the second piercing. Catching your breath, you realise that the tattooing must have completed as the straps suddenly release.
<<else>>
A few minutes more and the arm pulls away as the straps release.
<</if>>
<br><br>
[<<moveTo "event_development_tattoo_obedient_4" "Sit up." 600>>]
</div>/*#
#desc: obedient tattoo finish
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Basement Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png">>
<div id="invframe" class="scrolltext">
Finally able to look down, you look at the symbol just above your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>> — a BDSM Triskele Emblem crowned with a rack of antlers. <<=setup.getNpcName("npc_manager","formal")>> walks over with clothes in hand.<br>
<br>
"@@.npc_manager;You like?@@" She asks and you nod, a submissive thrill running through your body.<br>
<br>
"@@.npc_manager;Wonderful, well get dressed and I will send you home, you have had quite the eventful day!@@"<br>
<br>
You nod and put on your clothes.
<<if setup.getItemFromType("corset")>>
Helping you with your corset, she explains that the advanced medical system the company employs means that everything is healed up and you do not need to worry about any significant after-care for your new ink.
<</if>>
<br><br>
Once you are dressed, she takes you by the hand and leads you out of the room, back up the elevator and into a waiting car before sending you home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: tattoo parlour start of money back tattoo
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<include "calcTopId">>
<<set $scene.bra = setup.getItemFromType("bra")>>
<<removeItem $scene.topId true>>
<<if $scene.bra != "">>
<<removeItem $scene.bra true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor_back.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You state that you'd like to take her up on the offer of some free work for her to test out supplies. She grins and in a whirlwind of a few moments you find yourself in the back room, topless, face-down on a tattoo chair with your back fully exposed.<br>
<br>
Her fingers trace along your shoulder blades sending sparks across your skin. "@@.npc_tattoo;Mmmm, what a beautiful canvas...@@" Before you can react, she has pulled a strap across your lower back, an additional trio on your upper arms and the back of your neck to have your bound in place.<br>
<br>
"@@.npc_tattoo;Shhh, shhh, shhh.@@" She coos when you reflexively strain against the bonds. "@@.npc_tattoo;Just a little trick of the trade — don't want you moving around while I ink my masterpiece, hmm?@@"<br>
<br>
<<printThought "I suppose that makes some sense... still could have warned me first.">><br>
<br>
[<<moveTo "event_tattoo_money_2" "Say it's fine." 3600>>]<br>
[<<moveTo "event_tattoo_money_abort" "Say you've changed your mind." 60>>]
<<else>>
You tell her you'll keep the offer in mind but you don't really have the time at present.<br>
<br>
She shrugs. "@@.npc_tattoo;Suit yourself. Just know that I was really looking forward to breaking you in... don't think I'd be interested if it wasn't your first piece.@@"<br>
<br>
You thank her again for the offer and depart.<br>
<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 120>>]
<</if>>
</div>/*#
#desc: tattoo parlour abort money tattoo
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem $scene.topId true>>
<<if $scene.bra != "">>
<<wearItem $scene.bra true>>
<</if>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor_back.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
You reply that, actually, you aren't comfortable with this after all. Even faster than she strapped you down, the restraints are removed and she is helping you to your feet. "@@.npc_tattoo;Sorry about that... I can get a bit excited when the muse takes me, but the last thing I would ever want to do is work on an unwilling subject. Offer still stands if you change your mind, I'll see you around, right?@@"<br>
<br>
[<<moveTo "room_student_quarter" "Thank her and return to the Student Quarter." 120>>]
</div>/*#
#desc: tattoo parlour money tattoo application
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "bdsm" "bdsm_other" "inked">>
<<applyExperience 'bdsm' 10 'normal' $SEEN_STRANGER>>
<<setThreshold "bondage" "other_bondage" "tattoo">>
<<applyExperience 'bondage' 8 'normal' $SEEN_STRANGER>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
Held in place, you try to relax as the tattoo artist turns on some symphonic metal and sets to work. The first touch of the needle stings and as she works, a dull fire spreads across your back. Not enough to make you cry out, the pain is definitely real, and yet strangely comforting in a way as you are able to recognise the subtle artistic skill of her touch as she hums along to the music and works away.<br>
<br>
Taking the occasional break to use some sort of medical device to refresh your skin, she works her way across the majority of your back, the fire burning away tension and stress until you actually relax, strangely enjoying yourself and almost disappointed when she releases your straps and turns off the music.<br>
<br>
"@@.npc_tattoo;All done! Turned out even better than I imagined, come on, take a look!@@"<br>
<br>
She walks over to a mirror that should give you a good view of your backside.<br>
<br>
[<<moveTo "event_tattoo_money_3" "Stand up and walk over." 120>>]<br>
</div>/*#
#desc: tattoo parlour money tattoo finish
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fem_style = setup.getSecretaryStyle()>>
<<switch $scene.fem_style[0]>>
<<case 'perfect'>>
<<set $scene.fem_style = $scene.fem_style[1]>>
<<set $scene.fem_style_type = 'perfect'>>
<<case 'tie'>>
<<set $scene.fem_style = $scene.fem_style[random(1,2)]>>
<<set $scene.fem_style_type = 'tie'>>
<<case 'unfeminized'>>
ERROR!
<<default>>
<<set $scene.fem_style = $scene.fem_style[1]>>
<<set $scene.fem_style_type = 'mix'>>
<</switch>>
<<switch $scene.fem_style>>
<<case 'forced' 'strict'>>
<<set $player.tattoos.back = "demon_wing">>
<<case 'money'>>
<<set $player.tattoos.back = "dragon_wing">>
<<case 'obedient' 'enthusiast'>>
<<set $player.tattoos.back = "angel_wing">>
<<case 'voluntary'>>
<<set $player.tattoos.back = "fairy_wing">>
<<default>>
ERROR unexpected scene.style <<=$scene.fem_style>>
<</switch>>
<<if $player.sec_style.clothing.tattoo == "">>
<<set $player.sec_style.clothing.tattoo = "money">>
<<include "checkTattooCollar">>
<</if>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
Approaching the mirror you turn your back to see a pair of stylized
<<switch $scene.fem_style>>
<<case 'forced' 'strict'>>
demonic
<<case 'money'>>
draconic
<<case 'obedient' 'enthusiast'>>
angelic
<<case 'voluntary'>>
fairy
<<default>>
ERROR unexpected scene.fem_style <<=$scene.fem_style>>
<</switch>>
wings covering your back.<br>
<br>
Somewhat in awe of the detail and the way they move when you flex your shoulders, you stare as the tattooist smiles with pride at her work.<br>
<br>
<<switch $scene.fem_style_type>>
<<case 'perfect'>>
"@@.npc_tattoo;As soon as I looked at you I knew this was the perfect reflection of who you were, they turned out even better than I imagined and are just so, so you.@@"
<<case 'tie'>>
"@@.npc_tattoo;I'll confess I was on the fence, your energy seemed split but I went with my gut, who knows maybe this will end up being a bit prophetic.@@"
<<case 'mix'>>
"@@.npc_tattoo;I'll confess you were a bit of a puzzle, but I just let things flow and I think it suits at least a part of you, who knows, you may yet grow into them more in the future.@@"
<<default>>
ERROR: unexpected scene.fem_style_type <<=$scene.fem_style_type>>
<</switch>>
<br><br>
You thank her as you notice her reaching for a camera. "@@.npc_tattoo;As I said at the start, work is free but... if you wouldn't mind me taking a few shots? To be honest you turned out so well I may submit them to some trade journals, these new inks really do pop wonderfully — and the recovery time is guaranteed to be almost nonexistent!@@"<br>
<br>
[<<moveTo "event_tattoo_money_4" "Let her take some pictures for extra cash." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_tattoo_money_4" "Decline her offer." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: tattoo parlour money tattoo pictures
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.bonus = 80>>
<<addCredits $scene.bonus>>
<</if>>
<<wearItem $scene.topId true>>
<<if $scene.bra != "">>
<<wearItem $scene.bra true>>
<</if>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Still staring at your reflection, you agree that she can take some pictures of the new tattoo. "@@.npc_tattoo;Great! Now if you could tear your pretty eyes away for a moment while I shoot — no need to expose your anonymity for this.@@"<br>
<br>
You look forward as she gives you some direction for how to hold your arms as she takes a handful of shots before finally handing you back your top along with <<=$scene.bonus>> credits.<br>
<br>
"@@.npc_tattoo;Wonderful! And remember — if you ever decide to get some more work done, well... I'd love to do it. Though next time you would have to pay.@@"<br>
<br>
You thank her again for her amazing artistry before reluctantly hiding things under your top.
<<else>>
You decline her offer and she puts the camera aside before handing you your top.<br>
<br>
"@@.npc_tattoo;No worries, luv. It was still a pleasure to work on you, enjoy the ink!@@"<br>
<br>
You thank her again for the beautiful artistry before finally tearing your gaze away from your reflection and putting on your top.
<</if>>
<br><br>
[<<moveTo "room_student_quarter" "Thank her and return to the Student Quarter." 120>>]
</div>/*#
#desc: tattoo parlour voluntary tattoo
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "bdsm" "bdsm_other" "inked">>
<<applyExperience 'bdsm' 8 'normal' $SEEN_STRANGER>>
<<if !$player.sec_style.clothing.tattoo>>
<<set $player.sec_style.clothing.tattoo = "voluntary">>
<<include "checkTattooCollar">>
<</if>>
<<set $player.tattoos[$scene.tattooSlot] = $scene.tattooId>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor_back.png" setup.charImage("npc_tattoo")>>
<div id="invframe" class="scrolltext">
She turns on a stereo playing metal as she gestures for you to have a seat and expose the area to be worked on. Taking a deep breath, you do as indicated, looking away as she brings the needle towards your flesh and sharp heat begins to flow into you. As she works the pain spreads, but not so much that you cannot handle it.<br>
<br>
Taking deep breaths, you are actually surprised when she stops and slaps something cool over it that dissolves into your skin. She stands up to turn off the music and plunge things into silence as you realise that she has finished.<br>
<br>
"@@.npc_tattoo;See? Told you it wasn't so bad, enjoy!@@"<br>
<br>
You examine your new tattoo, admiring the artistry and the way it shifts when you move. After a couple minutes she coughs to draw your attention and you hurriedly fix your clothes. "@@.npc_tattoo;As I said — enjoy, and be secure that you don't need to worry about healing — your skin is literally better than new right now, yay modern medicine.@@"<br>
<br>
[<<moveTo "room_student_quarter" "Return to the Student Quarter." 60>>]
</div>/*#
#desc: pay first month's rent (return to apartment if triggered by phonecall), offers you "job" cleaning his flat
#status: RELEASED 0.6.0.0
#ignore_spell: lavadora,hermosa
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.money.total > 0>>
<<set $scene.insurance_charge = $player.money.total + $player.money.base_rent>>
<<else>>
<<set $scene.insurance_charge = 2*$player.money.base_rent>>
<</if>>
<<if setup.checkVisibleClothingTag('female')>10 && $npc_landlord.call_player != "Chica">>
<<set $npc_landlord.call_player = "Chica">>
<<set $scene.firstTimeChica = true>>
<</if>>
<<include "rentEvent">>
<<if $events.hasOwnProperty("insurance_alt")>>
<<removeEvent 'insurance_alt'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> appears for the monthly rent, but you can tell from the moment you look at <<him npc_landlord>> that there is something else wrong.<br>
<br>
"@@.npc_landlord;Unfortunately there is... additional problem, if we could go inside?@@"<br>
<br>
Suddenly scared you nod, motioning for <<him npc_landlord>> to follow you into the foyer.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> smiles awkwardly, as if to delay or ease what is obviously going to be bad news. "@@.npc_landlord;So, you know how your lavadora, er, washing machine, she explode?@@"<br>
<br>
You nod, you're not liable to ever forget that event, or the part it played in the feminine spiral that has since ensued.<br>
<br>
"@@.npc_landlord;Well, the insurance appraiser come back and, well, they determined it was no accident, but user error. That you had miss-loaded it and thus... they no pay out.@@"<br>
<br>
You freeze, keeping up with rent on your own is bad enough, the idea of another sudden expense... with a quiver in your voice, you ask how much things cost?<br>
<br>
"@@.npc_landlord;The replacement and disposal and everything else normally covered by the insurance comes to... <<=$scene.insurance_charge>> credits@@" You go wide-eyed, how could it be so much? But <<he npc_landlord>> hurriedly continues on.<br>
<br>
"@@.npc_landlord;No, no, do not cry, <<callPlayer "npc_landlord">>! I have a plan!@@"<br>
<br>
Trying to smile hopefully at <<his npc_landlord>> obvious earnest interest you listen as <<he npc_landlord>> explains.<br>
<br>
"@@.npc_landlord;You see, even though <<=setup.getNpcName('npc_exgirlfriend', 'formal')>> was the one who handled the payments, your original rent agreement only has your signature on it. I can tweak the paperwork and write off the insurance expense against the "original rentee" then draft a new rental agreement.@@"<br>
<br>
You squint in confusion, not understanding how this would help your situation.<br>
<br>
"@@.npc_landlord;You see, it's simple. We leave the expense associated with the original rental agreement — which loses your security deposit, of course, but then you re-rent your apartment under a different name. I was thinking that well...@@" <<he npc_landlord>> gestures towards your body. "@@.npc_landlord;With your changes, and muy hermosa changes they are, well... a new name make sense anyway, no? The alternative well... if you no have money today you can put it on credit, but if you no pay off by next month the owners, they kick you out for sure, and it seem steep price to pay when you already struggling.@@"<br>
<br>
<<He npc_landlord>> helpfully pulls over a chair and you sit in silent thought for a moment. It really does seem like the better deal.<br>
<br>
[<<moveTo "event_insurance_2" "Whatever it takes to save money, agree to <<his npc_landlord>> proposal." 30 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_insurance_2" "Decline <<his npc_landlord>> offer, you'll figure out the money... somehow." 30 "<<set $scene.agree=false>>">>]
</div>/*#
#desc: accept/decline offer to change name to avoid insurance payment
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.agree>>
<<set $player.money.base_rent -= 100>>
<<set $npc_landlord.call_player = "Chica">>
<<else>>
<<set $scene.total = $scene.insurance_charge + $player.money.base_rent>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
Letting out a sigh, you nod in agreement. "@@.npc_landlord;I am sorry to do this, but it make best of bad situation, no?@@"<br>
<br>
You nod as <<he npc_landlord>> produces paperwork for you to both change your name as well as agree to a new rental agreement. On the upside you note with surprise that the monthly rent is actually a full hundred credits lower at only <<=$player.money.base_rent>> base. You look up at <<him npc_landlord>> in question after noticing the smaller number.<br>
<br>
"@@.npc_landlord;I apply special rate, after all, with only one person living here there is less wear and tear, no?@@"<br>
<br>
You nod, barely holding back tears at this act of kindness as you think about what you want your new name to be.<br>
<br>
<<printThought "The things I do for money...">><br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_insurance_3" "Confirm." 30>>]
<<else>>
[<<link "Enter your new name">><<openDialog "Enter your new name:" "dialog_selectNameInsurance">><</link>>]
<</if>>
<<else>>
After thinking about it, you decline <<his npc_landlord>> offer. <<He npc_landlord>> looks surprised.<br>
<br>
"@@.npc_landlord;You certain, <<callPlayer "npc_landlord">>? If you no take deal now, you will be on the hook for <<=$scene.total>>.@@"<br>
<br>
[<<moveTo "event_insurance_2" "<<Hes npc_landlord>> right, what's a name, anyway? Take the deal and save the money." 30 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_insurance_decline" "Stand firm and dive into debt." 30>>]
<</if>>
</div>/*#
#desc: decline offer to change name to avoid insurance payment and eat lots of debt
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_landlord.flags.insuranceDecline = true>>
<<addCredits `-($scene.total)`>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You authorise the transfer of the full <<=$scene.total>>, wiping out your savings and plunging yourself deep into debt in the process.<br>
<br>
<<=setup.getNpcName("npc_landlord","first")>> seems both surprised and disappointed at you not taking up <<his npc_landlord>> offer, but <<he npc_landlord>> thanks you for the payment and departs.<br>
<br>
Closing the door behind <<him npc_landlord>> you sigh.<br>
<br>
<<printThought "Was that really such a good idea? Is holding onto my name in the face of all the rest really worth it? Maybe I should just become a new person and move on...">><br>
<br>
Unfortunately — though you could probably change your name manually online or something, your stubbornness has left you in quite a bit of debt; you'll have to work quite hard indeed if you want to catch up by next month.<br>
<br>
[<<moveTo "room_foyer" "Return to your apartment." 30>>]
</div>/*#
#desc: dialog box for choosing your name on insurance (money) path
#status: RELEASED 0.6.0.0
#*/
<center>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>>
</center>
<br>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'event_insurance_3'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: landlord confirms name selection
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sissyname = setup.sanitizeString($scene.sissyname)>>
<<set $scene.acceptname = "">>
<<if $scene.sissyname.toLowerCase() == $player.first_name.toLowerCase()>>
<<set $scene.acceptname = "samename">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == $player.last_name.toLowerCase()>>
<<set $scene.acceptname = "lastname">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == $npc_landlord.first_name.toLowerCase() || $scene.sissyname.toLowerCase() == $npc_landlord.last_name.toLowerCase()>>
<<set $scene.acceptname = "landlord">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == $npc_manager.first_name.toLowerCase() || $scene.sissyname.toLowerCase() == $npc_manager.last_name.toLowerCase()>>
<<set $scene.acceptname = "manager">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == 'sissy' || $scene.sissyname.toLowerCase() == 'sissyname'>>
<<set $scene.acceptname = "sissy">>
<<applyExperience 'bimbofication' 7 'normal' $SEEN_FRIEND>>
<<elseif $scene.sissyname == "">>
<<set $scene.acceptname = "none">>
<<applyExperience 'bimbofication' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<if $scene.acceptname == "">>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<removeEvent 'insurance_alt'>>
<<set $player.sec_style.body.name = "money">>
<<if $npc_manager.stage >= 2>>
<<addWorkEvent 'cunnilingus_intro'>>
<</if>>
<<if !$player.sec_style.body.identify_fem>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 9, 0, false)>>
<<addWorkEvent "identity_work" _nextDate>>
<</if>>
<<set $npc_landlord.flags.reactnamechange = true>>
<<applyExperience 'feminization' 13 'very' $SEEN_FRIEND>>
<<set $scene.first_namechange = true>>
<<set $npc_landlord.call_player = "Chica">>
<<set $player.call = "Miss">>
<<if $player.original_first_name == "">>
<<set $player.original_first_name = $player.first_name>>
<</if>>
<<set $player.first_name = $scene.sissyname>>
<<if !$player.original_last_name>>
<<set $player.original_last_name = $player.last_name>>
<</if>>
<<set $player.last_name = $scene.lastname>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
>>
<<set $locationbeforeuseage = "room_foyer">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
<<switch $scene.acceptname>>
<<case "samename" "lastname">>
You finish filling things out and <<=setup.getNpcName("npc_landlord","first")>> double checks the paperwork. <<He npc_landlord>> shakes <<his npc_landlord>> head.<br>
<br>
"@@.npc_landlord;No, <<callPlayer "npc_landlord">>, this scheme only work if you change your name to something new.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_insurance_3" "Confirm." 30>>]
<<else>>
[<<link "Enter your new name">><<openDialog "Enter your new name:" "dialog_selectNameInsurance">><</link>>]
<</if>>
<<case "manager">>
You're about to hand <<=setup.getNpcName("npc_landlord","first")>> the paperwork when you realise how confusing, and punishment-inducing, it would be to have the same name as <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_insurance_3" "Confirm." 30>>]
<<else>>
[<<link "Enter your new name">><<openDialog "Enter your new name:" "dialog_selectNameInsurance">><</link>>]
<</if>>
<<case "landlord">>
You finish filling things out and <<he npc_landlord>> double checks the paperwork. <<=setup.getNpcName("npc_landlord","first")>> shakes <<his npc_landlord>> head.<br>
<br>
"@@.npc_landlord;No, <<callPlayer "npc_landlord">>, you need to take this seriously, that's my name! You need one of your own.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_insurance_3" "Confirm." 30>>]
<<else>>
[<<link "Enter your new name">><<openDialog "Enter your new name:" "dialog_selectNameInsurance">><</link>>]
<</if>>
<<case "sissy">>
You look at what you entered before deciding that it's maybe a bit too on the nose...<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_insurance_3" "Confirm." 30>>]
<<else>>
[<<link "Enter your new name">><<openDialog "Enter your new name:" "dialog_selectNameInsurance">><</link>>]
<</if>>
<<case "none">>
You enter nothing and <<=setup.getNpcName("npc_landlord","first")>> softly interjects.<br>
<br>
"@@.npc_landlord;Now <<callPlayer "npc_landlord">>, you must enter something, else the systems, well... they get confused.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_insurance_3" "Confirm." 30>>]
<<else>>
[<<link "Enter your new name">><<openDialog "Enter your new name:" "dialog_selectNameInsurance">><</link>>]
<</if>>
<<default>>
You hand <<=setup.getNpcName("npc_landlord","first")>> the paperwork and <<he npc_landlord>> gives it a quick once over.<br>
<br>
"@@.npc_landlord;Bueno. I get this all filed and taken care of, sorry for all of this but... we make it all better, no? And <<=$player.first_name>> is a lovely name for a lovely <<callPlayer "npc_landlord">>.@@"<br>
<br>
You blush and bid <<him npc_landlord>> farewell, closing the door behind to stand alone in your flat. Still in a bit of a daze, you stand for several minutes before you are interrupted by your phone ringing.<br>
<br>
[<<moveTo "event_name_change_phonecall" "Answer the phone." 600>>]
<</switch>>
</div>/*#
#desc: landlord shows up for alternate unlock for money name
#status: RELEASED 0.7.11.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
You're in your foyer when you hear a knock at the door, it's <<=setup.getNpcName("npc_landlord","first")>>, looking concerned.<br>
<br>
"@@.npc_landlord;Hola, <<callPlayer "npc_landlord">> I have what you call... bad news, but maybe a solution, as well, if I could come inside?@@"<br>
<br>
<<printThought "As if life hasn't thrown enough at me? Though, <<he npc_landlord>> said there might be a solution...">><br>
<br>
[<<moveTo "event_insurance_1_alt_b" "Continue." 600>>]
</div>/*#
#desc: alternate unlock for money name
#status: RELEASED 0.7.11.0
#ignore_spell: lavadora,hermosa
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.money.total > 0>>
<<set $scene.insurance_charge = $player.money.total + $player.money.base_rent>>
<<else>>
<<set $scene.insurance_charge = 2*$player.money.base_rent>>
<</if>>
<<if setup.checkVisibleClothingTag('female')>10 && $npc_landlord.call_player != "Chica">>
<<set $npc_landlord.call_player = "Chica">>
<<set $scene.firstTimeChica = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_hallway_01.png" setup.charImage("npc_landlord")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord","first")>> smiles awkwardly, as if to delay or ease what is obviously going to be bad news. "@@.npc_landlord;So, you know how your lavadora, er, washing machine, she explode?@@"<br>
<br>
You nod, you're not liable to ever forget that event, or the part it played in the feminine spiral that has since ensued.<br>
<br>
"@@.npc_landlord;Well, the insurance appraiser come back and, well, they determined it was no accident, but user error. That you had miss-loaded it and thus... they no pay out.@@"<br>
<br>
You freeze, keeping up with rent on your own is bad enough, the idea of another sudden expense, nervously you ask how much it cost.<br>
<br>
"@@.npc_landlord;The replacement and disposal and everything else normally covered by the insurance comes to... <<=$scene.insurance_charge>>@@" You go wide-eyed, how could it be so much? But <<he npc_landlord>> hurriedly continues on.<br>
<br>
"@@.npc_landlord;No, no, do not cry, <<callPlayer "npc_landlord">>! I have a plan!@@"<br>
<br>
Trying to smile hopefully at <<his npc_landlord>> obvious earnest interest you listen as <<he npc_landlord>> explains.<br>
<br>
"@@.npc_landlord;You see, even though <<=setup.getNpcName('npc_exgirlfriend', 'formal')>> was the one who handled the payments, your original rent agreement only has your signature on it. I can tweak the paperwork and write off the insurance expense against the "original rentee" then draft a new rental agreement.@@"<br>
<br>
You squint in confusion, not understanding how this would help your situation.<br>
<br>
"@@.npc_landlord;You see, it's simple. We leave the expense associated with the original rental agreement — which loses your security deposit, of course, but then you re-rent your apartment under a different name. I was thinking that well...@@" <<he npc_landlord>> gestures towards your body "@@.npc_landlord;With your changes, and muy hermosa changes they are, well... a new name make sense anyway, no? The alternative well... if you no have money today you can put it on credit, but if you no pay off by next month the owners, they kick you out for sure, and it seem steep price to pay when you already struggling.@@"<br>
<br>
<<He npc_landlord>> helpfully pulls over a chair and you sit in silent thought for a moment. It really does seem like the better deal.<br>
<br>
[<<moveTo "event_insurance_2" "Whatever it takes to save money, agree to <<his npc_landlord>> proposal." 30 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_insurance_2" "Decline <<his npc_landlord>> offer, you'll figure out the money... somehow." 30 "<<set $scene.agree=false>>">>]
</div>/*#
#desc: look up changing name online
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You open up the government website for name changes. It's actually quite convenient; you can apparently do all the filing and everything in just a few minutes from home. It is almost as simple as just entering your new name, waiting a moment for approval, then paying a small transaction fee.<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>>
<<textbox "$scene.lastname" "">>
<br><br>
[<<moveTo "room_computer_online_name_change_2" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]<br>
<</if>>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: at home namechange checker
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.body.name == 'strict'>>
<<applyStress 5>>
<<else>>
<<set $scene.sissyname = setup.sanitizeString($scene.sissyname)>>
<<set $scene.acceptname = "">>
<<if $scene.sissyname.toLowerCase() == $player.first_name.toLowerCase() && $scene.lastname.toLowerCase() == $player.last_name.toLowerCase()>>
<<set $scene.acceptname = "samename">>
<<applyExperience 'bimbofication' 4 'slightly' $ALONE>>
<<elseif $scene.sissyname.toLowerCase() == $player.original_first_name.toLowerCase()>>
<<set $scene.acceptname = "retry">>
<<applyExperience 'bimbofication' 4 'slightly' $ALONE>>
<<elseif $scene.sissyname.toLowerCase() == $player.last_name.toLowerCase()>>
<<set $scene.acceptname = "lastname">>
<<applyExperience 'bimbofication' 4 'slightly' $ALONE>>
<<elseif $scene.sissyname.toLowerCase() == $npc_manager.first_name.toLowerCase() || $scene.sissyname.toLowerCase() == $npc_manager.last_name.toLowerCase()>>
<<set $scene.acceptname = "manager">>
<<applyExperience 'bimbofication' 4 'slightly' $ALONE>>
<<elseif setup.getTotalValue("bimbofication") < 15 && setup.getTotalValue("feminization") < 15 && $scene.sissyname.toLowerCase() == 'sissy'>>
<<set $scene.acceptname = "sissy">>
<<applyExperience 'bimbofication' 6 'normal' $ALONE>>
<<elseif $scene.sissyname == "">>
<<set $scene.acceptname = "none">>
<<applyExperience 'bimbofication' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<if $scene.acceptname == "">>
<<set $player.call = "Miss">>
<<if $player.sec_style.body.name == "">>
<<if $player.original_first_name == "">>
<<set $player.original_first_name = $player.first_name>>
<</if>>
<<set $player.sec_style.body.name = "voluntary">>
<<if $npc_manager.stage >= 2>>
<<addWorkEvent 'cunnilingus_intro'>>
<</if>>
<<if !$player.sec_style.body.identify_fem>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 9, 0, false)>>
<<addWorkEvent "identity_work" _nextDate>>
<</if>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<removeEvent 'insurance_alt'>>
<<applyExperience 'feminization' 15 'very' $ALONE>>
<<set $scene.first_namechange = true>>
<<forceNpcTheme 'npc_admin' 'event_admin_theme_female_name'>>
<<else>>
<<set $scene.first_namechange = false>>
<</if>>
<<set $player.first_name = $scene.sissyname>>
<<if !$player.original_last_name>>
<<set $player.original_last_name = $player.last_name>>
<</if>>
<<set $player.last_name = $scene.lastname>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.body.name == 'strict'>>
You click confirm for your new name... only to be presented with a stark error declaring "@@.computer;UNAUTHORISED.@@"<br>
<br>
Your heart sinks and you go searching for details, discovering that a legal "hold" has been placed on your name, and you are not allowed to change it until such is lifted... though you can find no information on HOW one might go about lifting such a hold.<br>
<br>
<<printThought "<<=setup.getNpcName('npc_manager','formal')>> wasn't screwing around... seems I'm stuck like this...">><br>
<br>
[<<moveTo "room_livingroom" "Stand up from the computer." 0>>]
<<else>>
<<switch $scene.acceptname>>
<<case "retry">>
The computer pops up an error, apparently the government systems operate on a no-take-backsies rule and do not allow reverting your name.<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>>
<<textbox "$scene.lastname" "">>
<br><br>
[<<moveTo "room_computer_online_name_change_2" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]<br>
<</if>>
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "samename">>
The computer pops up an error, apparently the government systems don't allow changing your name to the name you already have.<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>>
<<textbox "$scene.lastname" "">>
<br><br>
[<<moveTo "room_computer_online_name_change_2" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]<br>
<</if>>
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "lastname">>
The computer issues an error message, apparently having the same name for both first and last name isn't allowed.<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>>
<<textbox "$scene.lastname" "">>
<br><br>
[<<moveTo "room_computer_online_name_change_2" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]<br>
<</if>>
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "manager">>
You're about to click confirm, but then realise how confusing, and punishment-inducing, it would be to have the same name as <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>>
<<textbox "$scene.lastname" "">>
<br><br>
[<<moveTo "room_computer_online_name_change_2" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]<br>
<</if>>
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "sissy">>
You look at what you entered before deciding that it's maybe a bit too on the nose...<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>>
<<textbox "$scene.lastname" "">>
<br><br>
[<<moveTo "room_computer_online_name_change_2" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]<br>
<</if>>
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "none">>
You attempt to enter nothing and the system pops back with an error, seems like someone remembered to code input checks.<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>>
<<textbox "$scene.lastname" "">>
<br><br>
[<<moveTo "room_computer_online_name_change_2" "Confirm your new name." 30>>]<br>
<<else>>
[<<link "Enter your new name">><<openDialog "Your new name:" "dialog_selectNameVoluntary">><</link>>]<br>
<</if>>
[<<moveTo "room_livingroom" "Change your mind and stand up from the computer." 0>>]
<<case "">>
The computer shows a loading screen and a number pops up. A bill shows up showing a very expensive quantum of credits. After tax and all other costs you would be set back <<glitchText "10200">> Credits. Almost ready to cancel the whole process, the screen starts to flicker cyan and pink.<br>
<br>
You reload the page, but the bill is nowhere to be seen. Neither is a payment or accept dialog, which sites like these normally should have. You are simply greeted by a success message, popping up a window congratulating you on your new name — <<=$player.first_name>> <<=$player.last_name>>. Strangely it goes straight to confirming that your name has been updated in all systems government and corporate. A bit surprised at the lack of red tape you find that, for some reason your account has been auto-credited for the transaction, with the words "@@.npc_ai;<<uc "Fees waived.">>@@" your only hint.<br>
<br>
<<printThought "Some sort of glitch, I guess? Weird.">><br>
<br>
[<<moveTo "room_computer_online_name_change_3" "Continue." 0>>]
<</switch>>
<</if>>
</div>/*#
#desc: finish changing your name online
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first_namechange>>
Your heart races as you pull out your digital ID and watch it update to your new name — <<=$player.first_name>> <<=$player.last_name>> glowing in government issue font...<br>
<br>
You nearly jump when your phone goes off, it's your <<=setup.getNpcName('npc_manager', 'title')>>, <<=setup.getNpcName('npc_manager', 'formal')>>...<br>
<br>
[<<moveTo "event_name_change_phonecall" "Answer the phone." 0>>]<br>
<<else>>
You look at your digital ID with your new name <<=$player.first_name>> <<=$player.last_name>>; perhaps this one will suit you better than your previous efforts.<br>
<br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]<br>
<</if>>
</div>
/%
Maybe have this allow changing first and last name together?
%//*#
#desc: dialog box for choosing your name online
#status: RELEASED 0.6.0.0
#*/
<center>
<<textbox "$scene.sissyname" "" autofocus>>
<<textbox "$scene.lastname" "">>
</center>
<br>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'room_computer_online_name_change_2'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: read about Secretary Expansion Act
#status: RELEASED 0.7.12.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("smart") > 15>>
<<set $player.flags.secretaryAct = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
Recalling something that <<=setup.getNpcName("npc_manager","formal")>> mentioned you look up the Secretary Elevation and eXpansion Act of 2021.<br>
<br>
The preamble is fairly straightforward, laying out that the purpose of the legislation is to provide clarity as to what can be legally called a "Secretary" job, as well as mandating standards of advancement and treatment for those working same. Like all legislation, it is long, dense, complicated and dry.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
You have no trouble understanding the document, and its rationale. In response to a trend of "executive assistant" positions being given inconsistent and excessive responsibilities a law had been passed to mandate that any such "responsibility creep" was to be constrained by employment contract, and paired with appropriate remuneration. It also lays out requirements for probationary periods and a requirement to offer employee training in any subject that is to be made a work requirement.<br>
<br>
An interesting note is that, despite the original purpose for the legislation, there appears to be almost no restriction on what can be considered a "work requirement" only that "any action expected to be performed by the employee as part of their duties; not to be limited to demonstrations and applications of knowledge, judgement calls, performances, or any action involving the use of their body, shall be agreed upon in the original contract or training in such made available before any breach of contract can be asserted." <br>
<br>
<<printThought 'So as long as it was part of the original contract I can be required to do just about anything... no wonder the contract was so long! And even beyond that things can be added on so long as I am provided "training"... as written "executive assistant" reads like it could be just about anything, and the hiring/firing requirements were written to be a double edged sword!'>><br>
<br>
You read further and realise that the section of the law meant to "protect" the Secretary from job instability has been twisted; sure, there are mandated probationary periods and such, but it would seem that the corporations managed to get a loophole written into the law that allows assessment of "penalties" for performance that proves detrimental to the business, and can refuse to allow an employee to resign from a position if they are still considered "in debt" to the company.<br>
<br>
<<printThought 'An unscrupulous employer could almost use this like a slave contract... even while "technically" paying them as an employee...'>>
<<else>>
Parts of the document are beyond your ken, but you are able to glean that, in response to a trend of "executive assistant" positions being given inconsistent and excessive responsibilities a law had been passed to mandate that any such "responsibility creep" was to be constrained by employment contract, and paired with appropriate remuneration. It also lays out requirements for probationary periods and a requirement to offer employee training in any subject that is to be made a work requirement.<br>
<br>
An interesting note is that, despite the original purpose for the legislation, there appears to be almost no restriction on what can be considered a "work requirement" only that "any action expected to be performed by the employee as part of their duties; not to be limited to demonstrations and applications of knowledge, judgement calls, performances, or any action involving the use of their body, shall be agreed upon in the original contract or training in such made available before any breach of contract can be asserted." <br>
<br>
The final third of the document seems focused on changes to "protect" Secretary workers from job instability. Measures including probationary periods as well as complex resignation requirements that allow a company to extend a contract if it proves that the employee has caused damage to the business... and that such conditions can persist until the damages caused have been recouped.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
A lot of the document is too complicated for you, but you are able to glean that, in response to a trend of "executive assistant" positions being given inconsistent and excessive responsibilities a law had been passed to mandate that any such "responsibility creep" was to be constrained by employment contract, and paired with appropriate remuneration. It also lays out requirements for probationary periods and a requirement to offer employee training in any subject that is to be made a work requirement.
<<else>>
Your eyes glaze over at how boring it is.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_computer" "Close your Browser." 0>>]<br>
[<<moveTo "room_livingroom" "Return to the living room." 0>>]
</div>/*#
#desc: ask npc_barista about penis milking
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_barista","nickname")>> if there are milking devices for... other sorts of milk.<br>
<br>
Instantly taking your meaning she grins wide. "@@.npc_barista;Of course! <<if $fetish.sissy>>sissy <</if>>cream is in VERY high demand! I know you need to, like, deliver things back to your manager, but you just have to try!@@"<br>
<br>
With her usual boundless enthusiasm she ducks below the counter and comes up with a clear, hollow cylinder connected to several tubes and wires. "@@.npc_barista;Come on, you have to try! I'm told it feels, like... sooo good! Like, almost as good as being in me!@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_secretary_style_penis_milking_enthusiast_2" "You're kind of in chastity..." 180 "<<set $scene.action='chastity'>>">>]<br>
<<else>>
[<<moveTo "event_secretary_style_penis_milking_enthusiast_2" "Sure!" 300 "<<set $scene.action='accept'>>">>]<br>
<</if>>
[<<moveTo "event_secretary_style_penis_milking_enthusiast_2" 'Actually, if you could just have <<=ps(setup.getNpcName("npc_manager","formal"))>> drink order?' 300 "<<set $scene.action='abort'>>">>]
</div>/*#
#desc: npc_barista talks about penis milking
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'chastity'>>
You point out that you're locked in chastity and <<=setup.getNpcName("npc_barista","nickname")>> frowns.<br>
<br>
"@@.npc_barista;Hmm, let me see it?@@" She asks and you <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>raise your skirt<<else>>pull down your pants<</if>> to display your locked and secured device.<br>
<br>
<<if setup.getChastityLevel() == 5>>
"@@.npc_barista;Oh, wow, a <<=setup.getItemTypeName("sissyomatic")>>? I heard about those... crazy secure! But, like, fortunately for you, being tied in with the company system means you're compatible with milking protocols.@@"<br>
<br>
She taps a buttons on her terminal and your chastity device retracts. "@@.npc_barista;See? Now put this on!@@" She states enthusiastically as she hands you the cylinder.<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_enthusiast_2" "Do as she says." 300 "<<set $scene.action='accept'>>">>]<br>
[<<moveTo "event_secretary_style_penis_milking_enthusiast_2" 'Actually, if you could just have <<=ps(setup.getNpcName("npc_manager","formal"))>> drink order?' 300 "<<set $scene.action='chastity_abort'>>">>]
<<elseif setup.getChastityLevel() >= 3>>
"@@.npc_barista;Hmm... Hi-tech... but that's actually a good thing, since the codes for that sort of thing are stored in your employee file.@@" She taps at her terminal for a moment and your chastity device clicks open. "@@.npc_barista;See? Now put this on!@@" She states enthusiastically as she hands you the cylinder.<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_enthusiast_2" "Do as she says." 300 "<<set $scene.action='accept'>>">>]<br>
[<<moveTo "event_secretary_style_penis_milking_enthusiast_2" 'Actually, if you could just have <<=ps(setup.getNpcName("npc_manager","formal"))>> drink order?' 300 "<<set $scene.action='chastity_abort'>>">>]
<<else>>
"@@.npc_barista;Dang... I don't think I can lockpick that... it's too bad you're not in some sort of electronic device, those are actually easier to deal with, since the "key" can be programmed in to your employee file.@@"<br>
<br>
You thank her for the offer and wait as she prepares <<=ps(setup.getNpcName("npc_manager","formal"))>> coffee.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" 'Deliver <<=setup.getNpcName("npc_manager", "formal")>> her coffee.' 180>>]
<</if>>
<<case 'chastity_abort'>>
You explain that you don't have time for milking right now, you just need to deliver <<=ps(setup.getNpcName("npc_manager","formal"))>> coffee. <<=setup.getNpcName("npc_barista","nickname")>> pouts slightly, but is soon bustling away behind the counter to produce the requested drink.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" 'Deliver <<=setup.getNpcName("npc_manager", "formal")>> her coffee.' 180>>]
<<case 'abort'>>
You tell <<=setup.getNpcName("npc_barista","nickname")>> that you really need to deliver <<=ps(setup.getNpcName("npc_manager","formal"))>> coffee and <<=setup.getNpcName("npc_barista","nickname")>> pouts. "@@.npc_barista;All these slave-driving managers! I mean, like, being enslaved is great, of course... but it leaves so little time for fun! Well, other than all the sex that's part of my job...@@" She trails off as she prepares the coffee on autopilot, clearly lost in bimbo fantasy as you collect the drink and head back to the office.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" 'Deliver <<=setup.getNpcName("npc_manager", "formal")>> her coffee.' 180>>]
<<case 'accept'>>
You gasp as tube slides over your <<getWordMyPenis>>... and then moan as <<=setup.getNpcName("npc_barista","nickname")>> turns on the suction.<br>
<br>
Just the lubricated and textured inner lining of the tube felt good, but as the suction kicks in and it starts pumping and slurping you are forced to brace against the counter, your legs going rubbery as you pant. Your first orgasm takes but a few seconds... but, if anything, you only get harder as the machine continues to slurp away. Your vision starts to narrow as you groan, the intensity of each consecutive orgasm almost painful, such that you're actually grateful when <<=setup.getNpcName("npc_barista","nickname")>> turns things off.<br>
<br>
"@@.npc_barista;Fun, isn't it!@@" She says with a grin, to which you can only weakly nod. "@@.npc_barista;You, like... probably need to get back to work.<<if $fetish.cum && $player.body_ref.cumProduction > 0>> I was able to add a little something extra to <<=setup.getNpcName("npc_manager","other")>> drink... and sneak a little sip myself. You taste yummy! <</if>>You should, like, check out that fun store in the mall, I bet they have something like this you could use at home!@@"<br>
<br>
You thank <<=setup.getNpcName("npc_barista","nickname")>> for the suggestion and fix your<<if $scene.removeCage>> chastity <<if $scene.isCage>>cage<<else>>belt<</if>> back in place and adjust your <</if>> clothes as <<=setup.getNpcName("npc_barista","nickname")>> hands over the drink.<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_enthusiast_3" 'Head back to the office.' 180>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: finish first penis milking
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = "enthusiast">>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
Despite the intensity, your first experience with milking didn't actually take that long, and you hurry back to the office fast enough that <<=setup.getNpcName("npc_manager","formal")>> does not comment on the delay.<br>
<br>
She sips her drink and purrs in pleasure<<if $fetish.cum && $player.body_ref.cumProduction > 0>>, but makes no further comment regarding your little "addition" to the normally dark brew<</if>>.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager notices leaking cum
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.seenMilking = true>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> pauses in her inspection, and then frowns as she stares at your wet panties. "@@.npc_manager;Are you... leaking?@@" Her frown deeps. "@@.npc_manager;No, no... that will not do for a <<if $fetish.sissy>>SISSI <</if>> Secretary, it will not do at all! <<if setup.checkItemTypeWorn("cage")>>Your chastity is to keep you<<else>>You are responsible for being<</if>> under control on the job, just because you are restricted from a traditional release does not mean that... leaking is acceptable.@@"<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_strict_2" "Maybe she'd like to suck you clean?" 180 "<<set $scene.action='suck'>>">>]<br>
[<<moveTo "event_secretary_style_penis_milking_strict_2" "Beg her forgiveness." 60 "<<set $scene.action='beg'>>">>]<br>
[<<moveTo "event_secretary_style_penis_milking_strict_2" "Is there anything you could do?" 60 "<<set $scene.action='help'>>">>]<br>
[<<moveTo "event_secretary_style_penis_milking_strict_2" "It's her fault you're like this!" 60 "<<set $scene.action='blame'>>">>]
</div>/*#
#desc: manager confronts over leaking cum
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'suck'>>
<<incrementEmotion 'anger' 'npc_manager' 10>>
<<case 'beg'>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<case 'help'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<case 'blame'>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'suck'>>
You luridly suggest that, if your leaking on the job is such a problem... perhaps <<=setup.getNpcName("npc_manager","formal")>> would like to suck you clean?<br>
<br>
Her piercing gaze fixates on you for a long moment before she responds, her tone cold and mysterious. "@@.npc_manager;Suck you off? Hmm... yes, now that you mention it, that would solve things. If you would lay back on the couch?@@"<br>
<br>
You blink in surprise, taken off-guard by the casual way she seems to be accepting your request. Your thoughts flash back to the first time she had you on the couch... but that is soon discarded in favour of the fantasy of seeing your haughty boss, her lips wrapped around your cock, words of reprimand silenced as she sucks you off...<br>
<br>
You realise you were distracted by your fantasy as she clears her voice <<=setup.getNpcName("npc_manager","formal")>>, already standing in front of the couch. "@@.npc_manager;Well? Are you going to keep me waiting, or are we going to attend to this matter?@@"<br>
<br>
<<printThought "This sounds too good to be true...">><br>
<br>
[<<moveTo "event_secretary_style_penis_milking_strict_2" "Beg her forgiveness." 60 "<<set $scene.action='beg'>>">>]<br>
[<<moveTo "event_secretary_style_penis_milking_strict_2" "Ask her for a different sort of help." 60 "<<set $scene.action='help'>>">>]<br>
[<<moveTo "event_secretary_style_penis_milking_strict_3" "Get on the couch as commanded." 600>>]
<<case 'beg'>>
You beg <<=ps(setup.getNpcName("npc_manager","formal"))>> mercy and her frown shifts to a more neutral expression as she slowly nods. "@@.npc_manager;Hmm, a proper acknowledgement of your failure. Do endeavor to do better in the future.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60>>]
<<case 'help'>>
You ask <<=setup.getNpcName("npc_manager","formal")>> if she has any suggestions for how to keep from leaking?<br>
<br>
"@@.npc_manager;Obviously finding some way to relieve or calm yourself before work would be the simplest, but you might also consider underthings that will better contain any emissions without displaying such a... distracting stain.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60>>]
<<case 'blame'>>
You get a bit huffy as you complain that you wouldn't be in this position if it was not for her.<br>
<br>
Rather than raising her voice, <<=setup.getNpcName("npc_manager","formal")>> smiles in amusement. "@@.npc_manager;True... but, also, you would not be employed if it were not for me. So I would recommend you check that attitude and follow my rules, unless you want to be back on the street?@@"<br>
<br>
You fall silent as she waits for you to come up with a better response...<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_strict_2" "Maybe she'd like to suck you clean?" 180 "<<set $scene.action='suck'>>">>]<br>
[<<moveTo "event_secretary_style_penis_milking_strict_2" "Beg her forgiveness." 60 "<<set $scene.action='beg'>>">>]<br>
[<<moveTo "event_secretary_style_penis_milking_strict_2" "Is there anything you could do?" 60 "<<set $scene.action='help'>>">>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: manager sets you up for first milking
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
With your heart beating in anticipation you lean back on <<=ps(setup.getNpcName("npc_manager","formal"))>> couch, your legs spread in invitation <<if $scene.removeCage>>as you strain within your prison and soak your panties even further<<else>>as you stretch your wet panties in anticipation<</if>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks at you with the hint of a grin, and then she leans down, her hands taking your wrists and pinning them above your head where a pair of cuffs suddenly snap into place. "@@.npc_manager;I do not want you thrashing around in excitement,@@" she explains as she follows up but cuffing your ankles to the corners of the couch.<br>
<br>
<<printThought "I guess I shouldn't be surprised... I mean, she is pretty kinky...">> You think to yourself in justification as you watch her kneel down slowly in front of you.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> carefully peels back your panties.
<<if $scene.removeCage>>
The same grin remains on <<=ps(setup.getNpcName("npc_manager","formal"))>> face as she unlocks your <<if $scene.isCage>>cage<<else>>belt<</if>>, your <<getWordMyPenis>> stiffening with excitement.<br>
<br>
<</if>>
"@@.npc_manager;You wanted suction, yes?@@" She asks, not yet touching you, even as she kneels so tantalisingly close, the sight of her just past your trembling, dripping <<getWordMyPenis>>, those beautiful ruby lips, the scent of her perfume... you nod eagerly as she leans forward...<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_strict_4" "Yes..." 60>>]
</div>/*#
#desc: manager starts first milking
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<addItem "penis_milker">>
<<wearItem "penis_milker" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> leans closer, her lips parting... and then, she is bringing a clear tube over your <<getWordMyPenis>>. You suddenly aren't sure what's going on, the tube is soft and slick on the inside, and feels quite good, actually, and you have the slightest moment to puzzle at what it is, and what the tubes and wires extending from it are for before <<=setup.getNpcName("npc_manager","formal")>> flashes a cruel smile.<br>
<br>
"@@.npc_manager;Enjoy,@@" she taunts as she presses a button on a remote and the device enveloping you bursts into action.<br>
<br>
Suction unlike any you've felt kicks in as the shaft and its tight, textured inner lining pulls even tighter and begins to stroke. You're so pent up this is enough for you to let out a little spurt... and then things start going wrong.<br>
<br>
Rather than stop at "wonderfully pleasurable," the intensity continues to ramp up, the suction pumping in and out every second as the device jerks up and down, your erection having no chance to dissipate as you become more sensitive with every passing moment.<br>
<br>
Excitement has turned to fear, now, as you look up at <<=setup.getNpcName("npc_manager","formal")>>, but she merely smiles in amusement, as if teasingly asking "@@.npc_manager;this is what you wanted?@@" as she turns the dial and intensifies things even further.<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_strict_5" "No!" 300>>]
</div>/*#
#desc: manager notices leaking cum
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = "strict">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You cry out and thrash, but your bonds are tight and the milking machine as indefatigable as it is merciless. You cum, and cum, and cum again, every drop slurped away by one of the machine's tubes as it continues to suck and pump and vibrate, a demonic mechanism that feels like it is trying to suck away at your very soul.<br>
<br>
"@@.npc_manager;Is that too much?@@" <<=setup.getNpcName("npc_manager","formal")>> asks in a mocking tone as you beg for things to stop... only to laugh at your struggles and somehow turn things up even higher.<br>
<br>
You strain with every muscle, willing to do anything to escape the infernal slurping device, panting and gasping as an orgasm unlike any other washes over you... and then pulls you down as you black out.<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_strict_6" "Continue." 1800>>]
</div>/*#
#desc: back to desk after manager notices leaking cum
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You wake up with your clothes replaced, and your wrists and ankles freed<<if $scene.removeCage>>, and your chastity, once again, locked in place<</if>>. You sit up from <<=ps(setup.getNpcName("npc_manager","formal"))>> as she acknowledges you without even looking up from her work. "@@.npc_manager;Let that be a lesson as to maintaining better... control. Should you wish to take care of yourself in such a manner at home you should be able to find a similar device at any reputable seller of bedroom equipment.@@"<br>
<br>
You wobble as you rise to your feet, too drained and overwhelmed to say anything as you <<=setup.getNpcName("npc_manager","formal")>> smiles in amusement. "@@.npc_manager;Mmmm, looking a bit more calm now, yes? Come, let us resume your inspection...@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60>>]
</div>/*#
#desc: confirm enthusiast first penis milking night
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You consider your plans to hook yourself in to the penis milker for the night...<br>
<br>
<<printThought "Would it be prudent to do a, no pun intended, dry run before enduring so long?">><br>
<br>
<<if $player.flat.sleep.tuckin>>
<<if $npc_manager.flags.evil == 1 || $npc_manager.flags.require_chastity && !$scene.wornChastity>>
[<<moveTo "room_dreams" 'Yes! Call <<=setup.getNpcName("npc_manager","formal")>> for your first all-night milking...' 60 "<<set $player.flat.sleep.penisMilk=false>>">>]
<<else>>
[<<moveTo "event_penis_milk_enthusiast_confirm_2" 'Yes! Call <<=setup.getNpcName("npc_manager","formal")>> for your first all-night milking...' 60>>]
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.canSexOrRemoveChastity("penis", "")>>
[<<moveTo "event_penis_milk_enthusiast_confirm_2" "Unlock yourself for all night milking." 300>>]
<<else>>
[@@.link_locked;You would need a way to unlock your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> to milk your penis.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_penis_milk_enthusiast_confirm_2" "Yes, milking! All night milking!" 300>>]
<</if>>
<</if>>
[<<moveTo "event_bed_root" "Change your mind and sleep without penis milking." 60 "<<set $player.flat.sleep.penisMilk=false>>">>]<br>
</div>/*#
#desc: first penis milking night enthusiast
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstPenisMilking = true>>
<<if $player.sec_style.sex.testicle_milking == "">>
<<set $player.sec_style.sex.testicle_milking = "enthusiast">>
<</if>>
<<if !$scene.tuckin>>
<<set $scene.tuckin = $player.flat.sleep.tuckin>>
<</if>>
<<set $scene.sleepRemoveCage = setup.checkItemTypeWorn("cage")>>
<<startSleep $player $scene>>
<<set $scene.startedSleep = true>>
<<include "equipSleepMilkers">>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<if !$inventory[$scene.shoesId].status.lock>>
<<manipulateItem $scene.shoesId 'lock' true>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.flat.sleep.tuckin>>
<<if $player.body_ref.penis>>
<<if $player.flat.sleep.breastMilk && $player.flat.sleep.penisMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk" "milk_cream">>
<<elseif $player.flat.sleep.breastMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk">>
<<elseif $player.flat.sleep.penisMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream">>
<<else>>
<<createStackedImage "bedroomMilking">>
<</if>>
<<else>>
<<if $player.flat.sleep.breastMilk>>
<<createStackedImage "bedroomMilking" "vagina" "milk">>
<<else>>
<<createStackedImage "bedroomMilking" "vagina">>
<</if>>
<</if>>
<<else>>
<<if $player.body_ref.penis>>
<<if $player.flat.sleep.breastMilk && $player.flat.sleep.penisMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk" "milk_cream" "nomanager">>
<<elseif $player.flat.sleep.breastMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk" "nomanager">>
<<elseif $player.flat.sleep.penisMilk>>
<<createStackedImage "bedroomMilking" "genitals_uncovered" "milk_cream" "nomanager">>
<<else>>
<<createStackedImage "bedroomMilking" "nomanager">>
<</if>>
<<else>>
<<if $player.flat.sleep.breastMilk>>
<<createStackedImage "bedroomMilking" "vagina" "milk" "nomanager">>
<<else>>
<<createStackedImage "bedroomMilking" "vagina" "nomanager">>
<</if>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.flat.sleep.tuckin>>
You call up <<=setup.getNpcName('npc_manager', 'formal')>> for a tuck-in per usual... and then raise your plan to sleep penis milked.<br>
<br>
She grins, her eyes sparkling with delight as she watches. "@@.npc_manager;Such ambition! Yes, that sounds like QUITE the delight<<if $scene.sleepRemoveCage>>, go on and remove your chastity <<if $scene.cage>>cage<<else>>belt<</if>><</if>> so we can start putting your nocturnal hours to productive use!@@"<br>
<br>
You do as commanded, already hard, as you unpack the milking device<<if $scene.removeCage>>, remove your chastity device<</if>> and slide the milker into position under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful gaze. Lying back you slip into your bonds, locking yourself in for the night... and the milker kicks on.<br>
<br>
Things start slow, but it is a matter of minutes before you are straining against your restraints, <<=setup.getNpcName('npc_manager', 'formal')>> watching on with delight as the milker rapidly forces a first orgasm out of you. The sensation is like nothing you have ever felt before and you moan in desperation, but <<=setup.getNpcName('npc_manager', 'formal')>> merely smiles back in delight.<br>
<br>
"@@.npc_manager;I would wish you a good night... but that machine you so recklessly asked for is already assuring it. Do try to get SOME rest in between all those forced orgasms... you have other duties, after all!@@"<br>
<br>
You moan as she ends the feed... and your body strains to rise off the bed at the force of another pumped climax. You are stuck for the night, a victim of your own horny enthusiasm...
<<else>>
You're already hard, and your hands are shaking nervously, as you unpack the milking device<<if $scene.removeCage>>, remove your chastity device<</if>> and slide the milker into position. Lying back you slip into your bonds, locking yourself in for the night... and the milker kicks on.<br>
<br>
Things start slow, but it is a matter of minutes before you are straining against your restraints, the milker forcing orgasms out of you like nothing you have ever felt before. You moan in desperation, but there is nobody around to hear or help. You are stuck for the night, a victim of your own horny enthusiasm...
<</if>>
<br><br>
<<include "calcSleepTime">>
[<<moveTo "room_wake_up" "Sleep..." $scene.sleepTime "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask boss about penis removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_manager","npc_manager_formal") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Though you remain more than a little nervous in <<=ps(setup.getNpcName("npc_boss","formal"))>> presence you manage to muster up the courage to ask if the company might have a "solution" to the apparent problem of your penis.<br>
<br>
<<He npc_boss>> pauses, and then grins. "@@.npc_boss;Indeed we do... why, just a couple minutes with one of our state of the art surgery robots and you could say goodbye to that silly dangling thing in favour of a far more appropriate, and useful cunt... why, you could have it done right now and be back in time to finish out the party...@@"<br>
<br>
[<<moveTo "event_secretary_style_penis_remove_obedient_2" 'Accept <<his npc_boss>> offer.' 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_remove_obedient_2" "That's a bit fast..." 180 "<<set $scene.accept=false>>">>]<br>
</div>/*#
#desc: accept penis removal offer
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Corporate Surgery">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_manager","npc_manager_formal") setup.charImage("npc_boss")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You obediently reply that you would love to be better able to "serve" the company. <<=setup.getNpcName("npc_boss","formal")>> grins and nods towards <<=setup.getNpcName("npc_manager","formal")>>. "@@.npc_boss;You know the way to the medical department. Hurry on, I promise we shall not run out of champagne before you return... but you still do not wish to leave the other guests waiting, hmm? It has been so long since you graced us with your presence, after all.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods curtly and leads you to the elevator.<br>
<br>
Down in the subterranean medical department, you soon find yourself stripped and strapped down to an exam table... a somewhat ominous robotic surgeon hanging over you. You feel a prick and then you senses dull, vision fading as the anesthetic takes hold, with <<=setup.getNpcName('npc_manager', 'formal')>> looking on.<br>
<br>
[<<moveTo "event_secretary_style_penis_remove_obedient_3" "Continue." 1800>>]
<<else>>
You get cold feet and shake your head, <<=ps(setup.getNpcName("npc_boss","formal"))>> gaze piercing you for a few more tense moments before <<he npc_boss>> resumes addressing <<=setup.getNpcName("npc_manager","formal")>>. "@@.npc_boss;Very well. In that case, I wish you a pleasant time at the party. Good day.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods in acknowledgement and then leads you quickly for the elevator.<br>
<br>
[<<moveTo "event_party_first_5" 'Follow <<=setup.getNpcName("npc_manager", "formal")>> to the elevator.' 120>>]
<</if>>
</div>/*#
#desc: money penis removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $player.body_ref.vagina = true>>
<<set $player.body_ref.penis = false>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<set $player.body_ref.balls = false>>
<<if $npc_manager.flags.require_chastity && !$fetish.chastity_vag>>
<<set $npc_manager.flags.require_chastity = false>>
<</if>>
<<set $scene.newChastity = $npc_manager.flags.require_chastity && $fetish.chastity_vag && $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
<<if $scene.newChastity>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _basecage = setup.getItemFromType("cage")>>
<<elseif $npc_manager.flags.lastCage != "">>
<<set _basecage = $npc_manager.flags.lastCage>>
<<else>>
<<set _basecage = "none">>
<</if>>
<<switch _basecage>>
<<case "c_cage_pink" "c_cage_steel">>
<<set $scene.newcage = "chastity_belt_flat">>
<<case "chastity_cage_tiny" "chastity_cage_flat" "chastity_cage_invert">>
<<set $scene.newcage = "chastity_belt_tiny">>
<<case "electric_chastity">>
<<set $scene.newcage = "chastity_belt_electric">>
<<case "c_cage_advanced">>
<<set $scene.newcage = "chastity_belt_adv">>
<<case "sissyomatic" "sissyomatic_med" "sissyomatic_jumbo" "sissyomatic_flat" "sissyomatic_flat_med" "sissyomatic_flat_jumbo" "sissyomatic_belt" "sissyomatic_belt_med" "sissyomatic_belt_jumbo" "sissyomatic_fem" "sissyomatic_fem_med" "sissyomatic_fem_jumbo" "sissyomatic_ultra" "sissyomatic_ultra_med" "sissyomatic_ultra_jumbo" "sissyomatic_ultra_flat" "sissyomatic_ultra_flat_med" "sissyomatic_ultra_flat_jumbo">>
<<set $scene.newcage = "sissyomatic_fem">>
<<case "none">>
<<set $scene.newcage = "chastity_belt_tiny">>
<</switch>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage 'lock' true>>
<<if !$npc_manager.flags.playerstayedinchastity>>
<<set _keyId = setup.getItemObj($scene.newcage).lockable[1]>>
<<addItem _keyId>>
<</if>>
<<elseif setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<set _cage = setup.getItemFromType("cage")>>
<<removeItem _cage true>>
<</if>>
<<include "setLastSeenCage">>
<<set _x = setup.addManagerEndlessTask()>>
<<if !$player.sec_style.body.penis_remove>>
<<set $player.sec_style.body.penis_remove = "obedient">>
<</if>>
<<if !$player.sec_style.body.vagina>>
<<set $player.sec_style.body.vagina = "obedient">>
<</if>>
<<if $player.sec_style.body.hormones>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.chastity_style = "belt">>
<<set $player.body_ref.balls = false>>
<<set $player.body_ref.horsecock = false>>
<<set $player.body_ref.knot = false>>
<<storeGenitals $player $npc_manager>>
<</if>>
<<set $player.location to "Corporate Surgery">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You wake up to find things initially as you left off, <<=setup.getNpcName('npc_manager', 'formal')>> looks on as the straps holding you to the exam table release and you sit up.<br>
<br>
A glance down south quickly confirms that things are different... very different...
<<if $npc_manager.flags.require_chastity && $fetish.chastity_vag && $player.body_ref.vagina>>
from your new chastity belt to the way it hugs tight against your body and your far sleeker new bits.<br>
<br>
"@@.npc_manager;Company policy, you understand.@@" <<=setup.getNpcName('npc_manager', 'formal')>> reminds you. "@@.npc_manager;You are to remain safely locked while on premises, and how lovely you look in your shiny new belt. Now, come, you do have a job to do, after all.@@"
<<else>>
You reach down to touch your now smooth crotch... and your excitement-inducing slit. "@@.npc_manager;It may be a bit tender for the rest of the day, but our technology is quite advanced and I could bend you over to fuck you right now without it causing any damage...@@" Her eyes twinkle as you shiver and drip, "@@.npc_manager;of course, we really should be getting back to the office.@@"
<</if>>
<br><br>
You nod, the fog of the anesthetic quickly parting as <<=setup.getNpcName('npc_manager', 'formal')>> smiles and passes you your dress. "@@.npc_manager;I will say, it does drape a bit cleaner without that little bulge distracting things. Now come along, we do have that party to attend...@@"<br>
<br>
You quickly slip back into your heels and take her hand as she leads you back to the elevator.<br>
<br>
[<<moveTo "event_party_first_5" "To the party!" 300 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: ask about tblock penis shrinking
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod and <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Wonderful. Trust me when I say that trading in that distracting little thing for something sleek, wet and tight... well, I can see you are motivated by my offer of credits, but I think you will find that the vagina itself is its own reward. In any case, come along, there is no time like the present and the downstairs facilities medical facilities are more than equipped to fix you up...@@"<br>
<br>
In minutes you find yourself not just in the elevator, but already strapped down to the operating table. <<=setup.getNpcName("npc_manager","formal")>> smiles as mechanical arms unfurl, a slight prick the last thing you feel before the anesthetic takes hold and you slip into unconsciousness.<br>
<br>
[<<moveTo "event_secretary_style_penis_remove_money_2" "Continue." 1800>>]
<<else>>
You decline <<=ps(setup.getNpcName("npc_manager","formal"))>> offer and she nods.<br>
<br>
"@@.npc_manager;Very well, then, shall we continue on with the rest of your inspection?@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<</if>>
</div>/*#
#desc: money penis removal
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body_ref.vagina = true>>
<<set $player.body_ref.penis = false>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<set $player.body_ref.balls = false>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $player.flags.mealplan.hormones_since_penis_shrink = 0>>
<<if $npc_manager.flags.require_chastity && !$fetish.chastity_vag>>
<<set $npc_manager.flags.require_chastity = false>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $player.flags.chastity_style = "belt">>
<<set $scene.newChastity = $npc_manager.flags.require_chastity && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
<<if $scene.newChastity>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _basecage = setup.getItemFromType("cage")>>
<<elseif $npc_manager.flags.lastCage != "">>
<<set _basecage = $npc_manager.flags.lastCage>>
<<else>>
<<set _basecage = "none">>
<</if>>
<<switch _basecage>>
<<case "c_cage_pink" "c_cage_steel">>
<<set $scene.newcage = "chastity_belt_flat">>
<<case "chastity_cage_tiny" "chastity_cage_flat" "chastity_cage_invert">>
<<set $scene.newcage = "chastity_belt_tiny">>
<<case "electric_chastity">>
<<set $scene.newcage = "chastity_belt_electric">>
<<case "c_cage_advanced">>
<<set $scene.newcage = "chastity_belt_adv">>
<<case "sissyomatic" "sissyomatic_med" "sissyomatic_jumbo" "sissyomatic_flat" "sissyomatic_flat_med" "sissyomatic_flat_jumbo" "sissyomatic_belt" "sissyomatic_belt_med" "sissyomatic_belt_jumbo" "sissyomatic_fem" "sissyomatic_fem_med" "sissyomatic_fem_jumbo" "sissyomatic_ultra" "sissyomatic_ultra_med" "sissyomatic_ultra_jumbo" "sissyomatic_ultra_flat" "sissyomatic_ultra_flat_med" "sissyomatic_ultra_flat_jumbo">>
<<set $scene.newcage = "sissyomatic_fem">>
<<case "none">>
<<set $scene.newcage = "chastity_belt_tiny">>
<</switch>>
<<set $player.flags.chastity_style = "belt">>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage 'lock' true>>
<<if !$npc_manager.flags.playerstayedinchastity>>
<<set _keyId = setup.getItemObj($scene.newcage).lockable[1]>>
<<addItem _keyId>>
<</if>>
<<elseif setup.checkItemTypeWorn("cage") && setup.isCage() && $scene.accept>>
<<set _cage = setup.getItemFromType("cage")>>
<<removeItem _cage true>>
<</if>>
<<include "setLastSeenCage">>
<<if !$player.sec_style.body.penis_remove>>
<<set $player.sec_style.body.penis_remove = "money">>
<</if>>
<<if !$player.sec_style.body.vagina>>
<<set $player.sec_style.body.vagina = "money">>
<</if>>
<<if $player.sec_style.body.hormones>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<storeGenitals $player $npc_manager>>
<<addCredits 1000>>
<<if $scene.panties>>
<<wearItem $scene.panties true>>
<</if>>
<<useClothSetPop 'daily_evaluation_clothes'>>
<</if>>
<<set $player.location to "Corporate Surgery">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You wake up to find things initially as you left off, <<=setup.getNpcName('npc_manager', 'formal')>> looking on as the straps holding you to the exam table release and you sit up.<br>
<br>
A glance down south quickly confirms that things are different... very different...
<<if $npc_manager.flags.require_chastity && $fetish.chastity_vag && $player.body_ref.vagina>>
from your new chastity belt to the way it hugs tight against your body and your far sleeker new bits.<br>
<br>
"@@.npc_manager;Company policy, you understand.@@" <<=setup.getNpcName('npc_manager', 'formal')>> reminds you. "@@.npc_manager;You are to remain safely locked while on premises, and how lovely you look in your shiny new belt. Now, come, you do have a job to do, after all.@@"
<<else>>
You reach down to touch your now smooth crotch... and your excitement-inducing slit. "@@.npc_manager;It may be a bit tender for the rest of the day, but our technology is quite advanced and I could bend you over to fuck you right now without it causing any damage...@@" Her eyes twinkle as you shiver and drip, "@@.npc_manager;of course, we really should be getting back to the office.@@"
<</if>>
<br><br>
You nod, the fog of the anesthetic quickly parting as <<=setup.getNpcName('npc_manager', 'formal')>> leads you back up the elevator and back to her desk where she pulls out a stack of credits. "@@.npc_manager;Per our agreement. Enjoy the money and, well...@@" She smiles once more and then waves you off to return to work.<br>
<br>
You have a spring in your step as you head for the exit, mind already spinning at the newly unlocked <<if $npc_manager.flags.require_chastity && $fetish.chastity_vag && $player.body_ref.vagina>><<printThought "Well... unlocked, but still locked,">> <</if>>opportunities ahead of you.<br>
<br>
<<switch $npc_manager.stage>>
<<case 1>>
[<<moveTo "event_manager_daily_check_stage_1_finalize" "Head to your desk." 60>>]
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Head to your desk." 60>>]
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Head to your desk." 60>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Head to your desk." 60>>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Head to your desk." 60>>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
</div>/*#
#desc: strict penis remove intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You stagger into the elevator only for <<=setup.getNpcName("npc_retention","formal")>> to follow you in. Silently waiting for you to step inside <<he npc_retention>> reaches past to press the button, not for the lobby, but for one of the company's subterranean levels.<br>
<br>
[<<moveTo "event_secretary_style_penis_remove_strict_2" "Ask what's going on?" 300 "<<set $scene.ask=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_remove_strict_2" "Ride in silence." 180 "<<set $scene.ask=false>>">>]
</div>/*#
#desc: react to strict penis remove
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<if $scene.ask>>
You nervously ask the guard where you're going. <<He npc_retention>> looks down at you with stern dismissiveness calm as <<he>> replies. "@@.npc_retention;Now that <<he npc_boss>> has properly punished that abhorrent thing between your legs, <<=setup.getNpcName("npc_boss","formal")>> has declared that you be surgically enhanced to better fulfill your duties. A penis, especially one the size of yours, is quite improper in <<his npc_boss>> mind. So we are heading down to surgical to resolve that issue.@@"<br>
<br>
[<<moveTo "event_secretary_style_penis_remove_strict_3" "What, no! Try to escape!" 300 "<<set $scene.fight=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_remove_strict_3" "Ride in silence." 180 "<<set $scene.ask=false>>">>]
<<else>>
Though you are nervous, you decide things will only be worse if you try to interfere with whatever <<=ps(setup.getNpcName("npc_retention","formal"))>> orders are, and you wait quietly as the floor number ticks down.<br>
<br>
[<<moveTo "event_secretary_style_penis_remove_strict_3" "Try to escape!" 180 "<<set $scene.fight=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_remove_strict_3" "Ding." 180 "<<set $scene.fight=false>>">>]
<</if>>
</div>/*#
#desc: strict penis remove
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<removeItem $scene.cage true>>
<</if>>
<</if>>
<<set $player.location to "Corporate Surgery">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<if $scene.fight>>
You watch the floors tick by and time your reach for the emergency stop button, aiming to stop at the lobby and make your escape before <<=setup.getNpcName("npc_retention","formal")>> can stop you.<br>
<br>
No sooner have you reached out your hand, however, when <<his npc_retention>> shoots out faster than you can even see, wrenching your arm behind your back as he slams you into the wall, pressing you tight as <<he npc_retention>> growls in your ear. "@@.npc_retention;Stupid <<if $fetish.sissy>>sissy<<else>>slut<</if>>, but that's what happens when someone like you gets a bit too pumped up on big dick energy. You exist to serve cock, not to have one, and today we'll be resolving that by replacing that improper pole with a nice fuckable hole like you deserve.@@"<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> is too strong and skilled for you to wriggle free of <<his npc_retention>> grasp. The elevator dings and <<he npc_retention>> frog-marches you up the hall and into a sterile lab, the surgical robot looming over the bondage-enabled bed having been designed without a single thought made towards it being anything other than intimidating.
<<else>>
You arrive at one of the deeper floors of the company and <<=setup.getNpcName("npc_retention","formal")>> leads you up a medically-sterile hall and into a surgical room. A single table sits in the centre of the room, with a large surgery robot looming above, the machine having been designed without a single thought made towards it being anything other than intimidating.
<</if>>
<br><br>
With practiced efficiency <<=setup.getNpcName("npc_retention","formal")>> straps you onto the table, saying not a word until you are fully immobilised.<<if $scene.removeCage>> Only once you are spread and restrained does <<=setup.getNpcName("npc_retention","formal")>> remove your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>, tossing it casually aside to reveal your still-red, limp <<getWordMyPenis>><</if>>.<br>
<br>
"@@.npc_retention;Get ready to say good-bye... as a minor mercy I will offer you the choice: stay awake to watch the last vestige of your so-called manhood removed... or go to sleep and wake up the proper three-hole fuckdoll you were always meant to be?@@"<br>
<br>
[<<moveTo "event_secretary_style_penis_remove_strict_4" "Sleep." 1800 "<<set $scene.sleep=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_remove_strict_4" "Stay awake." 180 "<<set $scene.sleep=false>>">>]
</div>/*#
#desc: strict penis remove
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.penis_remove>>
<<set $player.sec_style.body.penis_remove = "strict">>
<</if>>
<<if !$player.sec_style.body.vagina>>
<<set $player.sec_style.body.vagina = "strict">>
<</if>>
<<if $player.sec_style.body.hormones>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<set $scene.priorEnlarged = $player.body.penissize[1] > 3>>
<<set $player.flags.chastity_style = "belt">>
<<set $player.body_ref.vagina = true>>
<<set $player.body_ref.penis = false>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<set $player.body_ref.balls = false>>
<<if $npc_manager.flags.require_chastity && !$fetish.chastity_vag>>
<<set $npc_manager.flags.require_chastity = false>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<if $scene.sleep>>
<<applyFatigue -50>>
<<else>>
<<setThreshold 'bdsm' 'bdsm_other' 'crushed_balls'>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $scene.newChastity = $npc_manager.flags.require_chastity && $fetish.chastity_vag && $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
<<if $scene.newChastity>>
<<if $scene.cage>>
<<set _basecage = $scene.cage>>
<<elseif $npc_manager.flags.lastCage != "">>
<<set _basecage = $npc_manager.flags.lastCage>>
<<else>>
<<set _basecage = "none">>
<</if>>
<<switch _basecage>>
<<case "c_cage_pink" "c_cage_steel">>
<<set $scene.newcage = "chastity_belt_flat">>
<<case "chastity_cage_tiny" "chastity_cage_flat" "chastity_cage_invert">>
<<set $scene.newcage = "chastity_belt_tiny">>
<<case "electric_chastity">>
<<set $scene.newcage = "chastity_belt_electric">>
<<case "c_cage_advanced">>
<<set $scene.newcage = "chastity_belt_adv">>
<<case "sissyomatic" "sissyomatic_med" "sissyomatic_jumbo" "sissyomatic_flat" "sissyomatic_flat_med" "sissyomatic_flat_jumbo" "sissyomatic_belt" "sissyomatic_belt_med" "sissyomatic_belt_jumbo" "sissyomatic_fem" "sissyomatic_fem_med" "sissyomatic_fem_jumbo" "sissyomatic_ultra" "sissyomatic_ultra_med" "sissyomatic_ultra_jumbo" "sissyomatic_ultra_flat" "sissyomatic_ultra_flat_med" "sissyomatic_ultra_flat_jumbo">>
<<set $scene.newcage = "sissyomatic_fem">>
<<case "none">>
<<set $scene.newcage = "chastity_belt_tiny">>
<<default>>
<<set $scene.newcage = $npc_manager.flags.lastCage>>
<</switch>>
<<set $player.flags.chastity_style = "belt">>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage 'lock' true>>
<<if !$npc_manager.flags.playerstayedinchastity>>
<<set _keyId = setup.getItemObj($scene.newcage).lockable[1]>>
<<addItem _keyId>>
<</if>>
<<elseif setup.checkItemTypeWorn("cage") && setup.isCage() && $scene.action == "vag">>
<<set _cage = setup.getItemFromType("cage")>>
<<removeItem _cage true>>
<</if>>
<<if $scene.panties>>
<<wearItem $scene.panties true>>
<</if>>
<</if>>
<<set $player.location to "Corporate Surgery">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<if $scene.sleep>>
Your poor <<getWordMyPenis>> has seen enough punishment for one day, and you opt not to be awake to endure any more.<br>
<br>
Your senses fade as the drugs rob you of your consciousness. By the time you awaken
<<if $scene.removeCage && $fetish.chastity_vag && $player.body_ref.vagina>>
you are back in chastity — a sleek new belt locking you up, <<if $scene.isSissyomatic>>and full by what looks like a new edition of your prototype device<</if>>
<<else>>
your <<getWordMyPenis>> is no more, replaced by a glistening, slightly puffy <<getWordVagina>>.<<if $scene.removeCage>>If there is a scant silver lining to the whole thing it is that <<=setup.getNpcName("npc_retention","formal")>> does not replace a chastity device around your hips. "@@.npc_retention;Chastity is for keeping manhood restrained and controlled. As you no longer have such, well... all the easier for you to be available for use on the job.@@"<</if>>
<</if>>
<br><br>
[<<moveTo "event_secretary_style_penis_remove_strict_5" "Continue." 180>>]
<<else>>
You may be helpless, but some perverse masochism has you wanting to stay awake for this new humiliation.<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> merely shrugs at your decision and steps away as the machines get to work.<br>
<br>
Multiple arms unfold, a large cylinder placed over your <<getWordMyPenis>><<if $player.body_ref.balls>> as another container similarly envelops your balls<</if>>.<br>
<br>
Hard suction causes your sensitive <<getWordMyPenis>> to swell, and you cry out in pain, the tired member stiffening and growing even larger than normal in the vacuum of the cylinder<<if $player.body_ref.balls>>, while below, out of sight, the opposite sensation is happening to your balls, pressure slowly increasing as you feel them being crushed<</if>>.<br>
<br>
You cry out in pain as it feels as
<<if $player.body_ref.balls>>
it feels as if one, then the other of your balls burst, and then
<</if>>
there is a sharp sting, your <<getWordMyPenis>> detaching
<<if $player.body_ref.vagina>>
bloodlessly, to leave only your <<getWordVagina>> behind.
<<else>>
bloodlessly and pulled away as a fresh set of robotic arms lean in to go to work...<br>
<br>
If you thought the agony of the surgery was over, you were quite wrong, as a brand new vagina is hewn from your flesh, your "flower" blossoming between your legs amidst blood and agony, the machine working with cruel efficiency to leave you minutes later gasping on the slab with your new genitals.
<</if>>
<br><br>
<<if $scene.removeCage>>
<<if $fetish.chastity_vag && $player.body_ref.vagina>>
You don't even have time to fully process what has happened when <<=setup.getNpcName("npc_retention","formal")>> walks over to lock a sleek new belt onto<<if $scene.isSissyomatic>>, and into,<</if>>you.
<<else>>
If there is a scant silver lining to the whole thing it is that <<=setup.getNpcName("npc_retention","formal")>> does not replace a chastity device around your hips. "@@.npc_retention;Chastity is for keeping manhood restrained and controlled. As you no longer have such, well... all the easier to put you to use at work.@@"
<</if>>
<br><br>
<</if>>
[<<moveTo "event_secretary_style_penis_remove_strict_5" "Continue." 180>>]
<</if>>
</div>/*#
#desc: strict penis remove aftermath
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Surgery">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/basement_tattoo.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
"@@.npc_retention;Enjoy,@@" <<=setup.getNpcName("npc_retention","formal")>> states as <<he npc_retention>> removes your straps and helps you to your feet. <<if $scene.sleep>>Perhaps it is lingering effects of the anesthesia<<else>>You may not have been put under<</if>>, but you find your thoughts dull, unable to resist as <<he npc_retention>> leads you back to the elevator. "@@.npc_retention;Just in case you are considering some additional surgery, perhaps from <<if $scene.priorEnlarged>>whatever chop-shop gave you that monster you were harboring earlier<<else>>some back-alley chop-shop<</if>>, know that part of the procedure you just went through includes a hybrid carbon-fibre lattice. It will help you remain tight, and stretchable for optimal use, but it's also functionally impossible to remove, and thus change back.@@"<br>
<br>
<<His npc_retention>> words land like yet another blow as you walk out of the elevator and into the lobby, still in a daze.<br>
<br>
[<<moveTo "company_lobby" "Walk across the lobby." 60>>]
</div>/*#
#desc: ask about tblock penis shrinking
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis>>
You ask <<=setup.getNpcName("npc_manager","formal")>> if the testosterone blockers are going to cause any shrinking "down there." <br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles in amusement. "@@.npc_manager;Tell me... is that something you would desire?@@"<br>
<br>
[<<moveTo "event_secretary_style_penis_shrink_obedient_1" "If it would please her..." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_shrink_money_1" "Would it help you do your job better?" 60>>]<br>
[<<moveTo "event_secretary_style_penis_shrink_obedient_1" "You don't think so." 60 "<<set $scene.accept=false>>">>]
<<else>>
You are about to ask <<=setup.getNpcName("npc_manager","formal")>> about possible shrinking side effects of testosterone blockers when you realise that it would be a pointless question, what with you not having a penis any more.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: ask about tblock penis shrinking
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "obedient">>
<</if>>
<<set $player.body_ref.penis_shrinking = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You ask if being a bit smaller would please <<=setup.getNpcName("npc_manager","formal")>> and she smiles, moving closer to tenderly stroke your cheek. "@@.npc_manager;How could I say no to such a cute face... and a lovely request?@@"<br>
<br>
She taps on her phone for a moment and then smiles wider. "@@.npc_manager;There we go. The lovely thing about a high-tech medicine delivery device like the one you took is that it makes it quite simple to make little tweaks to dosage and such on the fly. Now you will not see rapid changes, but, over time, you should see less and less of that... bothersome thing.@@" She steps away and you almost fall forward trying helplessly to stay in contact with her divine touch.<br>
<br>
"@@.npc_manager;Now that that is delightfully dealt with... was there anything else you wanted to speak about?@@"
<<else>>
You reply that you do not think you want to be any smaller. <<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Very well... was there anything else you wished to speak about, today?@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask about tblock penis shrinking
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if shrinking would help you perform your job better?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles even wider. "@@.npc_manager;By which, I believe you mean, would it help you get paid more? Now being that you get a performance-based bonus I could merely fall back on that, but, in this case I will cut to the chase. If you would be willing to accept getting a bit more... manageable "down there," over time, well... I think I could bump your weekly pay, say... by an additional thirty credits base? Subject to the usual performance-multipliers, of course.@@"<br>
<br>
<<printThought "Thirty credits a week? Didn't concerns about my size sort of get me into this whole mess to begin with?">><br>
<br>
[<<moveTo "event_secretary_style_penis_shrink_money_2" "Take her deal." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_shrink_money_2" "Decline her offer." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: ask about tblock penis shrinking
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "money">>
<</if>>
<<set $player.body_ref.penis_shrinking = true>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $player.work.payment += 30>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod in acceptance and <<=setup.getNpcName("npc_manager","formal")>> grins. "@@.npc_manager;You really are so easily motivated by money... some might call that risky, but, in this case well... I would say more useful... and mutually beneficial!@@"<br>
<br>
She pulls out her phone and taps a few keys. "@@.npc_manager;There we go. The lovely thing about a high-tech medicine delivery device like the one you took is that it makes it quite simple to make little tweaks to dosage and such on the fly. Now you will not see rapid changes, but, over time, you should see less and less of that... bothersome thing.@@"
<<else>>
You decline <<=ps(setup.getNpcName("npc_manager","formal"))>> offer and she shrugs. "@@.npc_manager;Very well, just so long as you follow instructions and remain <<if $npc_manager.flags.require_chastity>>in chastity<<else>>behaved<</if>> while at the office, well... then it matters less if you are as you are or a bit... less, between the thighs.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask about tblock penis shrinking
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis>>
<<if $player.sec_style.body.penis_shrink>>
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> about the effects of testosterone blockers on your... size.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles in amusement.
<<if $player.body_ref.penis>>
"@@.npc_psychiatrist;Yes, they can... but you already knew that, yes?@@" She chuckles, "@@.npc_psychiatrist;patience, my dear. If you wish immediate results, there is always surgery. Your current path will reach the same end, but you must embrace the process and wait a little.@@"
<<else>>
"@@.npc_psychiatrist;Your size? You mean... the size of that thing you no longer have? Speaking theoretically, yes they could. But obviously no longer a concern for you.@@"<br>
<br>
You blush, she's correct, obviously.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<else>>
You ask <<=setup.getNpcName("npc_psychiatrist","formal")>> if the testosterone blockers you are on are going to cause any shrinking "down there?" <br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> smiles in amusement. "@@.npc_psychiatrist;Tell me... is that something you would desire?@@"<br>
<br>
[<<moveTo "event_secretary_style_penis_shrink_obedient_1_alt" "If she thinks it would be good for you..." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_shrink_money_1_alt" "Is there some way it might benefit you?" 60>>]<br>
[<<moveTo "event_secretary_style_penis_shrink_obedient_1_alt" "No... you don't think so." 60 "<<set $scene.accept=false>>">>]<br>
<</if>>
<<else>>
You ask if the testosterone blockers you're taking could cause shrinking?<br>
<br>
"@@.npc_psychiatrist;They certainly can, in some situations... but shrinking something you no longer have is hardly a concern, yes?@@"<br>
<br>
You blush, she's correct, obviously.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: ask psychiatrist about tblock penis shrinking
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $player.body_ref.penis_shrinking = true>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "obedient">>
<</if>>
<<else>>
<<if $npc_psychiatrist.flags.cruel && $fetish.penis_shrink>>
<<set $player.body_ref.penis_shrinking = true>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "forced">>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You ask if <<=setup.getNpcName("npc_psychiatrist","formal")>> thinks being a bit smaller would be good for you and she smiles. "@@.npc_psychiatrist;It is your decision, of course... but, speaking from personal experience, to be small is so very delightful... and, given your past... yes, embracing being a bit more dainty would be a wonderful development for you...@@"<br>
<br>
She taps on her phone for a moment and then smiles wider. "@@.npc_psychiatrist;There we go. The lovely thing about a high-tech medicine delivery device like the one you took is that it makes it quite simple to make little tweaks to dosage and such on the fly. Now you will not see rapid changes, but, over time, you should see less and less of that... bothersome thing.@@" She steps away and you almost fall forward trying helplessly to stay in contact with her divine touch.<br>
<br>
"@@.npc_psychiatrist;Now that that is delightfully dealt with... was there anything else you wanted to speak about? Remember, nothing is too small to deserve attention.@@"
<<else>>
You shake your head. You don't want to get smaller.<br>
<br>
<<if $npc_psychiatrist.flags.cruel && $fetish.penis_shrink>>
She grins... and it is not a friendly grin. "@@.npc_psychiatrist;So sad... do you think you had a choice? No, that cute, <<if $fetish.sph>>useless <</if>>thing of yours is just going to get smaller, and smaller, and smaller...@@"
<<else>>
She nods. "@@.npc_psychiatrist;Quite alright, and that is why we discuss such things, so that I can make sure your treatment is calibrated to provide the results you desire.@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: ask psychiatrist about tblock penis shrinking
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You ask if shrinking would have any benefits?<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> puts down her pen and looks at you for a moment. "@@.npc_psychiatrist;Hmm... I presume you are speaking of benefits beyond your psychological health? Well, in that case... I believe I have a bit of good news for you. You probably missed it in the page upon page of legalese that was your contract... but there is actually a small monetary pay benefit tied to accepting shrinking. Thirty credits a week, in fact — before bonus calculations, of course.@@"<br>
<br>
<<printThought "Thirty credits a week? Didn't concerns about my size sort of get me into this whole mess to begin with?">><br>
<br>
[<<moveTo "event_secretary_style_penis_shrink_money_2_alt" "Take her deal." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_shrink_money_2_alt" "Decline her offer." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: accept money from psychiatrist for tblock penis shrinking
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $player.body_ref.penis_shrinking = true>>
<<if !$player.sec_style.body.penis_shrink>>
<<set $player.sec_style.body.penis_shrink = "money">>
<</if>>
<<set $player.work.payment += 30>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod in acceptance and <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles and makes a note. "@@.npc_psychiatrist;Lovely, I am sure <<=setup.getNpcName("npc_manager","first")>> will be quite happy to hand over those extra credits each week.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> pulls out her phone and taps a few keys. "@@.npc_psychiatrist;There we go. The lovely thing about a high-tech medicine delivery device like the one you took is that it makes it quite simple to make little tweaks to dosage and such on the fly. Now you will not see rapid changes, but, over time, you should see less and less of that... bothersome thing. Tell me, what else is on your mind? Remember, nothing is too small to deserve attention.@@"
<<else>>
You decline <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> offer and she shrugs. "@@.npc_psychiatrist;Very well, it was just an offer. Was there anything else you wished to speak to me about, today? Remember, nothing is too small to deserve attention.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: pink pill eternal money
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.pinkpill_eternal>>
<<set $player.sec_style.body.pinkpill_eternal = 'money'>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
>>
<</if>>
<<set $player.work.payment += 40>>
<<changeHorny 50>>
<<if $player.flags.pink_pill.super_od>>
<<setTmpEffect 'sissypill_2_eternal'>>
<<applyExperience 'bimbofication' 18 'very' $SEEN_FRIEND>>
<<else>>
<<setTmpEffect 'sissypill_eternal'>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if taking the "permanent" pill to boost your effectiveness would mean you would get a pay raise?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, and you know her answer even before she speaks. "@@.npc_manager;If a few credits a week would remove this baby-sitting tedium... certainly.@@"<br>
<br>
She hands you the pill and waits for you to nervously swallow it. Almost immediately you feel the familiar pink fog drift in, and you smile as she informs you that she is "@@.npc_manager;increasing your base pay by forty credits.@@"<br>
<br>
You nod, that seems more than fair... actually, you feel so happy right now you're tempted to refuse the raise... but your greed barely manages to hold on against the sea of happy pink obedience.<br>
<br>
[<<moveTo $scene.inspectionReturn "Get dressed and get to work." 300 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: pink pill eternal obedient
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.pinkpill_eternal>>
<<set $player.sec_style.body.pinkpill_eternal = 'obedient'>>
<</if>>
<<changeHorny 50>>
<<if $player.flags.pink_pill.super_od>>
<<setTmpEffect 'sissypill_2_eternal'>>
<<applyExperience 'bimbofication' 18 'very' $SEEN_FRIEND>>
<<else>>
<<setTmpEffect 'sissypill_eternal'>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reply that, if it would make things easier for her, you would be willing to take the "permanent" pill.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, circling to the front of her desk and then beckoning you forward to kneel at her feet.<br>
<br>
Pill delicately held between her fingers she caresses your face with her free hand. "@@.npc_manager;Ah, my good... if occasionally forgetful, girl... was this why you held out? For this moment? Well open wide.@@"<br>
<br>
You do as she says and she ever so delicately places the pill on your tongue, then smiles as she gently raises your chin. "@@.npc_manager;There you go, now hold it under your tongue for maximum effect, feel those lovely nanites spread through your body...@@"<br>
<br>
You do as she says, the pill tingling as it dissolves and the pleasant pinkness of the drugs reinforce the heart-fluttering delight that comes from being at your <<=ps(setup.getNpcName("npc_manager","title"))>> feet.<br>
<br>
You wait until the pill finishes dissolving and then open your mouth to show off to her beaming approval. She traces your lips with one finger "@@.npc_manager;lovely, now, shall we continue with your inspection?@@" You nod as you instinctively suckle on her finger.<br>
<br>
[<<moveTo $scene.inspectionReturn "Get dressed and get to work." 300 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: pink pill eternal forced intro
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You object to <<=ps(setup.getNpcName("npc_manager","formal"))>> suggestion. Being requited to take drugs for work is bad enough... now she wants to have the effects be permanent??<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;Want? Mmm... that implies that this is a mere desire on my part, rather than your new reality.@@" She moves closer and presents you with the new pill. "@@.npc_manager;Now take your medicine, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, so we can stop with these wastes of time as I check up on you and address your ditzy failure.@@"<br>
<br>
[<<moveTo "event_pink_pill_eternal_forced_2" "Just take the pill..." 120>>]<br>
[<<moveTo "event_pink_pill_eternal_strict_1" "No, you aren't going to take it!" 120>>]
</div>/*#
#desc: pink pill eternal forced
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.pinkpill_eternal>>
<<set $player.sec_style.body.pinkpill_eternal = 'forced'>>
<</if>>
<<changeHorny 50>>
<<if $player.flags.pink_pill.super_od>>
<<setTmpEffect 'sissypill_2_eternal'>>
<<applyExperience 'bimbofication' 18 'very' $SEEN_FRIEND>>
<<else>>
<<setTmpEffect 'sissypill_eternal'>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You look at <<=setup.getNpcName("npc_manager","formal")>> for a moment and sigh. Whatever you do, you're certain that you're not leaving this office without taking the pill, better to get it over with rather than <<=setup.getNpcName("npc_manager","formal")>> come up with something worse.<br>
<br>
You take the pill and swallow it and <<=setup.getNpcName("npc_manager","formal")>> smiles in triumph. "@@.npc_manager;Much better. I am sure you will appreciate the increase efficiency in not having to remember your pill... or deal with me checking in every morning when you forget.@@"<br>
<br>
As the pill dissolves you feel a wave of arousal, and submission, flow over you, and you dutifully nod in agreement.<br>
<br>
[<<moveTo $scene.inspectionReturn "Get dressed and get to work." 300 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: pink pill eternal strict, taken to work_doctor lab
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 50>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You shake your head once more and <<=ps(setup.getNpcName("npc_manager","formal"))>> frown deepens. One hand is suddenly on the back of your head as she presses the pill against your lips. You try to keep your mouth closed, but the slippery pink pill is just too small and all it takes is for her to pinch your nose for a moment for her to slips it past your lips.<br>
<br>
Thrashing your head you manage to slip free just long enough to spit the pill across the floor... which is when <<=ps(setup.getNpcName("npc_manager","formal"))>> expression REALLY turns dark.<br>
<br>
<<printThought "Uh-oh...">><br>
<br>
The hold on your head turns to a grip on your hair as <<=setup.getNpcName("npc_manager","formal")>> drags you towards the door. You almost fall as you're jerked around, barely keeping to your feet as you scramble after her as she marches to the elevator and pounds <<if $npc_work_doctor.profile>>the button for <<=setup.getNpcName("npc_manager","formal")>> lab<<else>>the button for floor 121<</if>>.<br>
<br>
[<<moveTo "event_pink_pill_eternal_strict_2" "Why did I fight back?" 120>>]
</div>/*#
#desc: pink pill eternal strict, arrive at lab
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $ALONE>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'terrible' $ALONE>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<applyStress 50>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Utterly unbothered by your struggles <<=setup.getNpcName("npc_manager","formal")>> drags you out of the elevator and into a <<if $npc_work_doctor.profile>>familiar <</if>>lab.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> looks up in surprise... and a touch of fear, as <<=setup.getNpcName("npc_manager","formal")>> storms into the lab and slams you over a bench.<br>
<br>
"@@.npc_manager_dom;This disobedient tramp has failed to take her drugs for the last time. You said you were working on a permanent formulation? I want you to pump her full in every orifice she has so that I can stop wasting time on addressing her repeated disobedience in this matter.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> starts to stutter a response, but one glance at <<=ps(setup.getNpcName("npc_manager","formal"))>> blazing expression has <<him npc_work_doctor>> scrambling to obey, instead.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> holds you in place until <<=setup.getNpcName("npc_work_doctor","formal")>> has finished strapping you down with a half-dozen somehow weaker-feeling medical-grade straps. <<=setup.getNpcName("npc_work_doctor","formal")>> wheels a cart over from the other side of the lab, hooking up components to buckle a phallic gag/feeding tube/head harness over your face, and then stuff <<if $player.body_ref.vagina>>a pair of medical-grade dildos stuffed into you fore and aft<<else>>a large plug into your rear<</if>>.<br>
<br>
[<<moveTo "event_pink_pill_eternal_strict_3" "Fuck, fuck, fuck..." 120>>]
</div>/*#
#desc: pink pill eternal strict, administered
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.pinkpill_eternal>>
<<set $player.sec_style.body.pinkpill_eternal = 'strict'>>
<</if>>
<<changeHorny 50>>
<<applyStress -100>>
<<include "removePinkPill">>
<<setTmpEffect 'sissypill_3_eternal'>>
<<applyExperience 'bimbofication' 20 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> initial nervousness is replaced with mad "scientific" glee as he turns on the pump, a pink liquid forcing its way into your body from every direction.<br>
<br>
Almost immediately you feel fuzzy, cotton-candy obedience combined with mind-blowing arousal quieting your resistance in favour of sucking and humping on your thick occupants.<br>
<br>
As the drugs continue to take hold you struggle to focus, but you note <<=setup.getNpcName("npc_work_doctor","formal")>> starting to ease back on the controls only for <<=setup.getNpcName("npc_manager","formal")>> to sneer and crank things to full power. Excess drugs shoot out your nose and leak out your <<if $player.body_ref.vagina>>holes<<else>>rear<</if>> as your belly bloats and you nearly drown on the drug overload. Only when you're nigh ready to burst does <<=setup.getNpcName("npc_manager","formal")>> relent and allow <<=setup.getNpcName("npc_work_doctor","formal")>> to finish up.<br>
<br>
Your body goes pliably limp as the overload of drugs soak through you. By the time <<=setup.getNpcName("npc_work_doctor","formal")>> finishes removing your gag and the rest you're stuck with a dumb, bliss-ed out expression, leaking slightly down your thighs and chin with the urge to giggle happily every few seconds.<br>
<br>
<<printThought "Teehee, drugs are the best! I don't, like, know why I forgot to take mine... but this is SOOO much better!">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sniffs in disapproval as she wipes your face clean, then motions for you to follow as she turns from the lab without so much as commenting on <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> like, wonderful, work.<br>
<br>
Rather than being dragged you walk obediently at <<=ps(setup.getNpcName("npc_manager","formal"))>> heels back to her office as she looks to send you to work as if nothing had happened.<br>
<br>
[<<moveTo $scene.inspectionReturn "Get dressed and get to work." 300 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: psychiatrist topic: butt plug
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.talkThemes += 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You confront <<=setup.getNpcName("npc_psychiatrist","formal")>> about the plug you found stuffed in your rear after one of her sessions.<br>
<br>
"@@.npc_psychiatrist;Oh, that? Yes, it really just popped into you like it belonged... I just didn't have the heart to send you home empty after how happy your cute bum looked all stuffed and stretched. Seldom in my career have I seen a hole so delightfully fillable.@@"<br>
<br>
You blink, you may not be able to remember exactly what happened during your experimental VR therapy session but this... this can't be right, can it?<br>
<br>
As if sensing your confusion <<=setup.getNpcName("npc_psychiatrist","formal")>> smiles.
<<if $player.sec_style.sex.butt_plug == "">>
"@@.npc_psychiatrist;A bit fuzzy on all that? Yes, that is an unfortunate side effect of the way my therapy targets the subconscious. The results obviously speak for themselves, but I can see how it would be disorienting. This sort of thing WAS covered by your consent paperwork, but if it would make you feel better I could raise your per-session rate, let us say by... ten credits? To cover any distress you felt having your horizons... stretched this way. That is on top of being allowed to retain the plug for your own use, of course.@@"<br>
<br>
[<<moveTo "event_secretary_style_butt_plug_money_1" "Plugged for only ten credits? Well... there's harder ways to earn money... right?" 120>>]<br>
[<<moveTo "event_secretary_style_butt_plug_forced_1" "What? No!" 120>>]
<<else>>
"@@.npc_psychiatrist;A bit fuzzy on all that? Yes, that is an unfortunate side effect of the way my therapy targets the subconscious. The results seem to be speaking for themselves, but I can see how it would be disorienting. I don't see it being a real issue for you, however... I mean, I was in there, after all, that was hardly your first experience stuffing that cute, squeezable bum of yours!@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<printThought "She's right... hell, I'm plugged now! Still... I really don't know how to respond to this, best to move on to some other topic.">>
<<else>>
<<printThought "She's right... but... well, I really don't know how to respond to this, best to move on to some other topic.">>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
<</if>>
</div>/*#
#desc: psychiatrist topic: accept money plug
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.sex.butt_plug = "money">>
<<include "addTypingEvent">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You agree to <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> proposal and she smiles.<br>
<br>
"@@.npc_psychiatrist;Oh you are such a wonderful patient/test subject! We are going to make so many discoveries together... and I'll be sure to stuff that cute bum of yours whenever I can to make sure you get your money's worth!@@"<br>
<br>
You aren't quite sure how that works out, given that she's paying you... but you decide to just move on to another topic.<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: psychiatrist topic: forced plug
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_psychiatrist.flags.cruel || $npc_psychiatrist.anger > $npc_psychiatrist.affection>>
<<if !$player.sec_style.sex.butt_plug>>
<<set $player.sec_style.sex.butt_plug = "forced">>
<<include "addTypingEvent">>
<</if>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You sputter in anger as you assert that there's no way you'd enjoy something like a butt plug, and that <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> must have done something to your head!<br>
<br>
<<if $npc_psychiatrist.flags.cruel || $npc_psychiatrist.anger > $npc_psychiatrist.affection>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> frowns at your response<<if !$npc_psychiatrist.flags.cruel>>, and taps a button that caused your chair to suddenly wrap you in restraints<</if>>.<br>
<br>
"@@.npc_psychiatrist;This outburst... well, it is quite improper, and an indication that our time together has been less... productive than I had hoped.@@" She taps <<if $npc_psychiatrist.flags.cruel>>a<<else>>another<</if>> button and you gasp as something forces its way into your rear... something large. "@@.npc_psychiatrist;There we go. That lovely device should fill you with more... positive feelings.@@"<br>
<br>
You pant as your sphincter clamps down on the narrower base of the plug... and then it swells even larger inside of you, as if to lock in position.<br>
<br>
"@@.npc_psychiatrist;Shall we continue the session?@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> asks with a nonchalant smile.
<<else>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> frowns, looking disappointed and almost hurt as she replies. "@@.npc_psychiatrist;Of course I am doing something to your head, this is therapy, after all! But what I aim to do is to help you think and work better. The plug, well... I am sorry if it caused you distress, but it is no different than any other medical implement, really, there as part of the procedure. If it was not required I would not use it, so I hope you can trust me to know what I am doing. After all, I am the one with the medical degree, right?@@"<br>
<br>
You blink in confusion, but can't think of a response and decide to continue on to something else.
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 60>>
</div>/*#
#desc: try to remove plug after pegging event
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "remote_control_plug" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You scurry out of <<=ps(setup.getNpcName("npc_manager","formal"))>>, feeling the plug shift inside of you with every step. You try not to think about how arousing it feels in your sensitive, well-pegged ass as you reach under your clothes to slide it free with what should be a sigh of relief... but comes out as more of an aroused moan.<br>
<br>
<<printThought "How can something so perverted feel so... good?">><br>
<br>
You try to clear your head only to look up and see <<=setup.getNpcName("npc_manager","formal")>> standing in the doorway... glaring at you.<br>
<br>
"@@.npc_manager;What do you think you are doing? I just expended a not-inconsiderable effort breaking in your <<if $fetish.sissy>>sissy<<else>>rear<</if>> fuck-hole... now put that plug back where it belongs. It is part of your uniform, now... and you are still at the office, and thus, still at work, and under my command.@@"<br>
<br>
<<if $npc_manager.flags.require_chastity>>
<<printThought "Chastity was bad enough, then getting pegged? But this? No way!">>
<<else>>
<<printThought "Getting pegged was one thing, but this? No way!">>
<</if>>
<br><br>
[<<moveTo "event_secretary_style_butt_plug_strict_2" "Put the plug back where it belongs..." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_secretary_style_butt_plug_strict_2" "Refuse!" 120 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: forced to replace plug after pegging event
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.butt_plug>>
<<if $scene.obey>>
<<set $player.sec_style.sex.butt_plug = "obedient">>
<<else>>
<<set $player.sec_style.sex.butt_plug = "strict">>
<</if>>
<<include "addTypingEvent">>
<</if>>
<<if $scene.obey>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' $npc_manager.penis_size 'little' $SEEN_FRIEND>>
<<addItem "locking_plug">>
<<wearItem "locking_plug" true>>
<<applyExperience 'bdsm' 12 'normal' $SEEN_FRIEND>>
<<changeHorny 20>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Too scared to even meet <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze you slide the plug back into your rear, trying not to think about how easily it slides home... or the fact that you were unable to suppress a gasp of pleasure as it pops into position<<if $player.body_ref.penis>> pressuring your prostate<</if>>.<br>
<br>
"@@.npc_manager;Good girl,@@" <<=setup.getNpcName("npc_manager","formal")>> states with a smile.<br>
<br>
You tremble as you <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>fix your skirt<<else>>pull up your pants<</if>> and stand back up.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns and stalks towards you. You freeze in place, wondering if you ought to run, but the opportunity, if it existed at all, disappears a moment later when <<=setup.getNpcName("npc_manager","formal")>> bends you over and <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flips up your skirt<<else>>pulls down your pants<</if>>. The dildo that had so recently been pegging you slams home once again, still wet and slick, it encounters no resistance in re-gaping your rear.<br>
<br>
You moan, but the penetration lasts but a moment before she pulls back... and shoves something else into your rear. You gasp as it smoothly pulls into position between your cheeks... and then pant when it swells larger, locking in place.<br>
<br>
"@@.npc_manager;If we are to continue your development, and improve your performance, a plug is all but necessary, no pun intended.@@" <<=setup.getNpcName("npc_manager","formal")>> clicks a switch and your new occupant rumbles inside of you, waves of pulsing pleasure cut off a moment later by a harsh, painful shock that causes you to yelp in surprise. "@@.npc_manager;See? Reward and punishment at the press of a button. Had you been a good girl I would have let you choose a plug of your own, so long as it met functional requirements, but with your refusal? Well... this should keep you occupied, alert... and available for use.@@"<br>
<br>
With that last comment you realise that the plug is not just filling you, but gaping you as <<=setup.getNpcName("npc_manager","formal")>> shoves two fingers through the hollow core, the plug stretching you further to accommodate, while remaining securely stuffed in place even after <<=setup.getNpcName("npc_manager","formal")>> withdraws her hand and pulls you back to your feet.<br>
<br>
<</if>>
<br><br>
"@@.npc_manager;Well, now that THAT is sorted out I believe you can head home. I am sure you are looking forward to a... full evening... and a full shift tomorrow.@@" <<=setup.getNpcName("npc_manager","formal")>> smiles at her pun as you rock back and forth, trying to adjust to the new intruder... while simultaneously trying to ignore the way its every motion has you turned on and distracted.<br>
<br>
[<<moveTo "event_manager_pegging_16_leave" "Leave." 60>>]
</div><<if $fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina>>
<<if !$player.sec_style.submission.permanent_key>>
<<set $player.sec_style.submission.permanent_key = $player.sec_style.submission.sissyomatic>>
<<include "addMilkingTopic">>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_other_keyholder'
0
'theme_manager_discuss_other_keyholder_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11.5'
6
'event_psychiatrist_session_perm_key_1'
false
>>
<<switch $player.sec_style.submission.permanent_key>>
<<case "voluntary" "obedient" "money" "enthusiast">>
<<setThreshold 'submission' 'submissive_secretary' 'key_permanent'>>
<<case "forced" "strict">>
<<setThreshold 'submission' 'bad_girl_submission' 'key_permanent'>>
<</switch>>
<</if>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<if $player.sec_style.submission.sissyomatic != "voluntary">>
<<set $npc_manager.flags.require_chastity = true>>
<</if>>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<<if !$scene.fromStage5transition>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('chastity')>>
<<playerOrgasm>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_25'
1
'event_psychiatrist_session_sissyomatic'
false
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_sissyomatic_change'
3
'event_manager_theme_sissyomatic_change_1'
true
>>
<<set _cage = setup.getItemFromType("cage")>>
<<if _cage == "">>
<<set $scene.isCage = $player.flags.chastity_style == "cage">>
<<else>>
<<set $scene.isCage = setup.isCage()>>
<<removeItem _cage true>>
<</if>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.plugged = $scene.plug != "">>
<<if $scene.plugged>>
<<removeItem $scene.plug true>>
<</if>>
<<include "calcSissyomaticStyle">>
<<addItem $scene.sissyomaticStyle>>
<<wearItem $scene.sissyomaticStyle true>>
<<manipulateItem $scene.sissyomaticStyle 'lock' true>>
<<set _themeId = setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_sissyomatic_obedient')>>
<<if _themeId != -1>>
<<set $npc_manager.themes.chastity_general[_themeId].repeatable = false>>
<</if>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>/*#
#desc: examine sissyomatic
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcSissyomaticStyle">>
<<if setup.inPassageTag($locationbeforeuseage,"home") && ($player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag)>>
<<addItem $scene.sissyomaticStyle true>>
<<deleteItem 'sissyomatic_box'>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
You examine the custom <<=setup.getItemName($scene.sissyomaticStyle)>> that you printed. Pink and sleek, it's almost a work of art, yet also a bit scary for what it is. Utterly seamless, it is designed to perfectly contour to your body, to
<<if $player.body_ref.vagina && $player.body_ref.penis>>
cover, and fill you up front as well as encase your <<getWordMyPenis false>> <<if $fetish.sounding>>within and without thanks to a combination of enclosed sheath<<if $player.body_ref.balls>>, hollow urethra plug and testicle containment<<else>>and hollow urethra plug<</if>><<else>>perfectly<<if $player.body_ref.balls>> along with testicle containment<</if>><</if>>,
<<elseif $player.body_ref.vagina>>
cover, and fill you up front,
<<else>>
encase your <<getWordMyPenis false>> <<if $fetish.sounding>>within and without thanks to a combination of enclosed sheath<<if $player.body_ref.balls>>, hollow urethra plug and testicle containment<<else>>and hollow urethra plug<</if>><<else>>perfectly<<if $player.body_ref.balls>> along with testicle containment<</if>><</if>>,
<</if>>
all wired up for electric "discipline" before dipping down between your legs the attached hollow plug that can vibrate, shock, swell and shrink on command to keep you constantly filled yet also ready for an "augmented" rear fuck without ever being removed.<br>
<br>
<<if !($player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag)>>
<<printThought "No... this seems way too inescapable to be a good idea to play around with.">><br>
<br>
<<hint $options "If you want the possibility of forced/permanent chastity you should enable such in options per your genital configuration">><br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<<elseif setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $player.flags.chastity_style=='cage'>>
Running your fingers over the seemingly small, yet assuredly perfectly sized "cage" portion you shiver... do you really want to voluntarily put it on?
<<else>>
Running your fingers over the sleek lines and the small but assuredly assuredly perfectly sized "sheath" portion you shiver... do you really want to voluntarily put it on?
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
Of course, you would first have to remove your current device, the key to which feels suddenly heavy in your pocket.
<<else>>
Of course that question is moot so long as you remain <<if setup.isCage()>>caged<<else>>belted<</if>>.
<</if>>
<br><br>
[@@.link_locked;You only have one <<getWordMyPenis false>>, you can't wear two chastity devices!@@]<br>
[<<moveTo $locationbeforeuseage "Box it back up and do something else." 0 "<<set $player.llocation=$locationbeforeusage>><<addItem 'sissyomatic_box'>><<deleteItem $scene.sissyomaticStyle>>">>]
<<else>>
<<if $player.sec_style.submission.chastity == "voluntary">>
Certainly your first experience with chastity was of your own volition, but there you were in control, you had the key, but now, well, this seems an even more momentous decision, not the least of which because you are uncertain
<<else>>
<<if $player.sec_style.submission.chastity == "voluntary">>
Certainly your first experience with chastity was of your own volition, but there you were in control, you had the key, but now, well, this seems an even more momentous decision, not the least of which because you are uncertain
<<else>>
You are, by now, no stranger to chastity yet this, this seems like another level, not least of which you have no key for the high-tech device and you cannot quite guess
<</if>>
<</if>>
as to how <<=setup.getNpcName("npc_manager","formal")>> will react to discovering your "upgrade." <br>
<br>
[<<moveTo "event_sissyomatic_voluntary" "Put on the <<=setup.getItemName($scene.sissyomaticStyle)>>." 300>>]<br>
[<<moveTo $locationbeforeuseage "Box it back up and do something else." 0 "<<set $player.llocation=$locationbeforeusage>><<addItem 'sissyomatic_box'>><<deleteItem $scene.sissyomaticStyle>>">>]
<</if>>
<<else>>
<<printThought "I should wait until I'm at home if I want to put this on.">><br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: put on sissyomatic
#status: FINISHED 0.7.2.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstSissyomaticUnlock = !$player.sec_style.submission.sissyomatic>>
<<if $scene.firstSissyomaticUnlock>>
<<set $player.sec_style.submission.sissyomatic = "voluntary">>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<include "sissyomaticUnlocks">>
<</if>>
<div id="invframe" class="scrolltext">
You review the short instruction manual, it indicates that you should proceed in the order of
<<if $player.flags.chastity_style=='cage'>>
cage, anal plug, <<if $fetish.sounding>>urethra plug, <</if>>battery.
<<else>>
belt, sheath, anal plug, <<if $fetish.sounding>>urethra plug, <</if>>battery.
<</if>>
You begin the fairly straightforward process. Heart racing, you nervously bring the <<=setup.getItemName($scene.sissyomaticStyle)>> towards your <<if $player.body_ref.penis>><<getWordMyPenis false>>. Despite your excitement, your <<getWordMyPenis false>> remains soft and you half wonder if the device is somehow causing such. Given all the other bleeding edge tech packed into the thing, you wouldn't be surprised.<<else>>In a weird contradiction to what you're about to do, you're very aroused... which is possibly a good thing given the not insubstantial plug that is about to occupy your dripping snatch.<</if>><br>
<br>
Perfectly smooth and shaped for your body, you slide in easily, a <<if $player.body_ref.penis>>bent ring cinching around your base to lie against your pelvis, your shaft<<if $player.body_ref.balls>> and balls each sealed in their<<else>>sealed away in its<</if>> own private compartment<<else>>dome sealing over your clit as the front plug slides into you<</if>>. You hear a soft "click" as the first lock closes and you realise that you have passed the point of no return.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
Reaching behind, you take the currently narrow plug and slide it into your rear.
<<else>>
Reaching behind, you extract your current plug and slide the new high-tech replacement into your rear.
<</if>>
Though it enters easily, as soon as it is seated firmly in your hole it swells — not enough to be painful, it is still quite filling. You gasp, taking a few moments to catch your breath even as you feel yourself <<if $player.body_ref.penis>>swell just enough to fill your cage to capacity<<else>>tighten around your front occupant, as well<</if>>.<br>
<br>
<<if $fetish.sounding>>
A sense of serene focus comes over you as you reach for the final item, lining up the narrow urethra plug with the sole opening in the <<if setup.isCage()>>cage<<else>>belt<</if>> you carefully guide it into position and then slide it home. The feeling of its entrance is oddly comforting, filling you in an intimate way as it plunges deeper and deeper and then, with a half twist, it locks into place fully inserted.<br>
<br>
<</if>>
<<printThought "Did I really just do this?">><br>
<br>
Waves of emotion wash over you as you real the completeness of your predicament. You have no key to your device, truly at the whim of your <<=setup.getNpcName("npc_manager","title")>> when, or if, you will be freed and until then you will remain constrained, plugged, <<if $player.body_ref.vagina>>double <</if>>filled and at her mercy to torment with shocks or inescapable stimulation...<br>
<br>
The temporary spell that had kept you calm during the "installation" now well and truly broken, you shake your head, figuring it would be best to do something to distract yourself.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 0 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: talk to manager about sissy-o-matic
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getChastityLevel() == 5>>
<<set _themeId = setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_sissyomatic_obedient')>>
<<set $npc_manager.themes.chastity_general[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the <<=setup.getItemName('sissyomatic')>> that you helped install on one of your fellow <<if $fetish.sissy>>SISSI <</if>>Secretaries.<br>
<br>
<<if !($player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag)>>
She shakes her head. "@@.npc_manager;Ah, yes, they are a prototype program being rolled out in parts of the company. But not one suitable for you, I do not think.@@"<br>
<br>
<<hint $options "Enable the applicable chastity fetish flags for your genitals if you want to experience work chastity.">><br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif $player.sec_style.submission.chastity == "">>
She raises an eyebrow. "@@.npc_manager;You really want to jump in at the deep end... no, as delightful as it might be to have you locked in the absolute peak of security... I think you should get some experience with more pedestrian chastity, first.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<elseif setup.getChastityLevel() == 5>>
She smiles. "@@.npc_manager;You mean like what you are wearing right now? Ah, if only we could get the production costs down. Truly it would be a perfect work environment if we gave those devices out as a reward for every good girl... and as punishment for each of the bad ones.@@"<br>
<br>
You gulp at the image painted by her brief fantasy and move on.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
Raising an eyebrow in surprise, she seems to be searching your face for indicators of your thoughts.<br>
<br>
"@@.npc_manager;My, my. Now that is quite the device to be asking about. A bit scary isn't it? Yet... enticing, I'm sure to one such as you. So secure, so helpless, perfectly filled... if you want, I could have them start printing you one and have you locked within the hours... if you wanted...@@"<br>
<br>
Your heart pounds in your chest, her words dragging on your mind like anchors, is that what you want? To completely surrender your most personal bits to HER control...<br>
<br>
[<<moveTo "event_manager_theme_sissyomatic_2" "Say you are happy with your current arrangement." 60 "<<set $scene.upgrade = false>>">>]<br>
<<if setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bondage") >= 10 && setup.getTotalValue("bdsm") >= 10>>
[<<moveTo "event_manager_theme_sissyomatic_2" "Say you want to upgrade." 60 "<<set $scene.upgrade = true>>">>]
<<else>>
[@@.link_locked;This is too much, you would have to be some sort of submissive bondage slave to ask to be locked in something like that!@@]
<</if>>
<</if>>
</div>/*#
#desc: upgrade talk to manager about sissy-o-matic
#status: FINISHED 0.7.11.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> about the <<=setup.getItemName("sissyomatic")>>
<<if $npc_sissy_secretary.stage >= 4>>
you assisted <<=setup.getNpcName("npc_work_doctor","formal")>> in equipping on a fellow <<if $fetish.sissy>>SISSI <</if>>Secretary.
<<elseif $npc_work_doctor.flags.sissyomatic_offer>>
<<=setup.getNpcName("npc_work_doctor","formal")>> told you about.
<<else>>
ERROR: unexpected!
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> pauses, and then smiles. "@@.npc_manager;A <<=setup.getItemName("sissyomatic")>>? Oh, that is quite the ambitious ask. They are technically still in prototype stages, very hush, hush, secret project due to the level of technology packed into them... all the results thus far have been simply divine, the best chastity solution on the planet. Of course, owing to the proprietary tech if you were to wear one that would be it: no more key, no more unlocking outside of corporate supervision, just eternal secure bliss.@@" She smiles, clearly loving the picture her words are painting "@@.npc_manager;So... are you ready to submit to that?@@"<br>
<br>
[<<moveTo "event_manager_theme_sissyomatic_2" "Actually... you are happy with your current arrangement." 60 "<<set $scene.upgrade = false>>">>]<br>
<<if setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bondage") >= 10 && setup.getTotalValue("bdsm") >= 10>>
[<<moveTo "event_manager_theme_sissyomatic_2" "Yes, you want the ultimate in security." 60 "<<set $scene.upgrade = true>>">>]
<<else>>
[@@.link_locked;This is too much, you would have to be some sort of submissive bondage slave to ask to be locked in something like that!@@]
<</if>>
</div>/*#
#desc: ask or not to be equipped with sissy-o-matic
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if $scene.upgrade>>
<<decrementEmotion 'anger' 'npc_manager' 2>>
<<set $npc_manager.flags.knowSissyomatic = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.upgrade>>
<<include "calcSissyomaticStyle">>
<<=setup.getNpcName("npc_manager","formal")>> smiles wide enough to stop traffic and then leans over to unlock one of the lower drawers of her desk.<br>
<br>
"@@.npc_manager;So I may have fibbed a bit a moment ago. We do not need to wait for them to print you up your very own <<=setup.getItemName($scene.sissyomaticStyle)>>.@@" With a thunk she places the <<if $player.flags.chastity_style=='cage'>>familiar <</if>>device on her desk, the reality of it sitting before you, custom sized exactly for your body having your heart skip a beat. You find yourself unable to look away from the device, in awe, fear or anticipation you could not say.<br>
<br>
Smiling, she pets the device like it was an animal "@@.npc_manager;I had it made as a last resort if you turned out to be particularly... recalcitrant, but this... you asking me for it of your own volition... oh this is so, so much better.@@"<br>
<br>
Somehow tearing your gaze away from the device that you know will soon be locked onto you, you look up to meet her gaze, enthralled and utterly at her whim.<br>
<br>
"@@.npc_manager;Now, my dear, if you would please strip we can get you upgraded. But please... do it slow.@@"<br>
<br>
Fingers trembling, you reach for your clothes and begin to do as she asks.<br>
<br>
[<<moveTo "event_manager_theme_sissyomatic_3" "Strip." 60>>]
<<else>>
You nervously reply that you think you're happy with your current chastity arrangement and she smiles.<br>
<br>
"@@.npc_manager;Of course you are, my dear, but if you ever change your mind well... all you have to do is ask.@@" She winks at you and you shudder, quickly excusing yourself before her dominant aura has you begging for something that you might later regret.<br>
<br>
[<<moveTo "room_office_after_work" "Leave." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: manager upgrades you to sissy-o-matic
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<<set $scene.firstSissyomaticUnlock = $player.sec_style.submission.sissyomatic == "">>
<<if $scene.firstSissyomaticUnlock>>
<<set $player.sec_style.submission.sissyomatic = "obedient">>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<include "sissyomaticUnlocks">>
<<include "setLastSeenCage">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
One by one your garments fall from your body as <<=setup.getNpcName("npc_manager","formal")>> stares at you unblinking, her gaze silently communicating approval calling a single word: "mine." <br>
<br>
You shiver slightly, goose-bumps rising as you stand naked before her as she approaches, key in hand.<br>
<br>
<<if $player.body_ref.penis>>She closes her hand around your caged <<getWordMyPenis false>><<else>>She places her hand over your front chastity shield<</if>> and smiles, leaning in close to whisper in your ear. "@@.npc_manager;You feel that? How excited it is for its new luxury accommodations? Oh you are going to be the fanciest <<if $fetish.sissy>>sissy<<else>>girl<</if>> at the ball, locked and filled to perfection...@@"<br>
<br>
All you can do is let out a whisper-soft "@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>,@@" somewhere between a gasp, a moan, and a prayer.<<if $scene.plugged>> Still holding you firm her other hand reaches around behind, tracing down your spine before taking hold of the plug in your rear and gently pulling it free.<</if>><br>
<br>
Moving more quickly now, she unlocks your chastity device, letting it fall to the floor<<if $player.body_ref.penis>> as you spring free, your <<getWordMyPenis false>> either making a last stand or expressing its excitement at what is about to come...<<else>>, the cool office air on your wet <<getWordVagina>> making you shiver in anticipation.<</if>><br>
<br>
<<if $player.body_ref.penis>>
As she brings the new device towards you, however, you find yourself suddenly softening and she quietly explains "@@.npc_manager;Short-range ultrasound, prevents blood from accumulating and ensures that the <<if setup.isCage()>>cage can always be installed<<else>>front shield can always close without pinching<</if>>@@" as she <<if setup.isCage()>>locks the ring around your base to lay perfectly against your pelvis before ensconsing<<if $player.body_ref.balls>> each ball and then<</if>> your shaft into <<if $player.body_ref.balls>>their<<else>>its<</if>> individual, perfectly <<if setup.isCage()>>sized<<else>>tucked<</if>> new homes<<else>>brings the curved panel up between your legs<</if>>.<br>
<br>
<</if>>
You close your eyes in concentration and try to hold still as you almost swear you felt her lay a gentle kiss on your newly sealed <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>>self<</if>>, but your attention is soon diverted behind<<if setup.isCage()>>, the connector between cage and plug<<else>> as she pulls the rest of the belt into position, the flat shield descending between your legs and<</if>> pressing against your perineum as she slides the surprisingly small plug into you.<br>
<br>
Entering with ease you are momentarily disappointed... and then the plug swells "locking" inside of you with what seems like particular pleasure against your <<if $player.body_ref.penis>>excited prostate<<else>>sensitive insides<</if>>...<br>
<br>
Another, softer, click signals the battery pack clicking into position as you recall its excessive year-long
<<if $fetish.sounding>>
lifespan, and then you remember the final part of the device, looking down to find her kneeling in front of you, her smile making it clear that she is totally in charge despite the traditionally submissive position, holding the urethra plug in one hand and slowly twirling it in her fingers, the small thing suddenly scary as it glistens with lubricant and you realise where it is about to go.<br>
<br>
"@@.npc_manager;And now for the final piece,@@" you hold your breath and look her in the eye as <<if setup.isCage()>> she carefully slides the rod in through the hole at the tip of your cage,<<else>>the high tech front panel momentarily retreats and she slides the rod into your urethra;<</if>> it seems to align perfectly to slide into you, a heart-racing, intimate penetration finished with <<if setup.isCage()>>a twist and a click as it locks in place<<else>>the front shield closing back up to seamlessly conceal for the perfect smooth profile<</if>>.<br>
<br>
Rising to her feet, she looks down at you in your bare feet leaving you feeling very short without your heels.
<<else>>
lifespan. <<=setup.getNpcName("npc_manager","formal")>> winks as she rises to her feet, finally looking down at you, in your bare feet leaving you feeling very short without your heels.
<</if>>
<br><br>
"@@.npc_manager;Perfection, well, I hope you enjoy your new accessory... I know I do.@@" she states, giving you a <<if setup.isCage()>>fondle, the fact that even your balls are now enclosed and unable to feel her touch making you tremble anew<<else>>the solid material insulating you from all sensation, which only makes her unfelt touch even more stimulating<</if>>. "@@.npc_manager;And now it is time for you to get dressed and go, though you can leave with a clear mind, knowing that you are as safe and secure as you can possibly be.@@"<br>
<br>
Heart still racing, you put your clothes back on under her watchful eye, though even fully dressed she stares straight through you as if you were naked, the layers of feminine garments in some ways even more erotic than your bare skin...<br>
<br>
With a final curtsy, you depart, the <<if setup.isCage()>>snug cage<<else>>sleek belt<</if>> and your dual intruders reminding you of their presence with each mincing step.<br>
<br>
[<<moveTo "room_office_after_work" "Leave." 60 "<<set $player.cutscene.lockinventory = false>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: ask manager about doctor locking you in sissy-o-matic
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the <<=setup.getItemName('sissyomatic')>> and <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> idea to lock you into one so that you can earn money working as <<his npc_work_doctor>> nurse assistant.<br>
<br>
<<if setup.getChastityLevel() == 5>>
She smiles in amusement. "@@.npc_manager;But you are already wearing such a device! Silly girl, it is a bit late to ask for permission for something that already happened.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<include "calcSissyomaticStyle">>
<<=ps(setup.getNpcName("npc_manager","formal"))>> eyebrow shoots up in surprise as she takes a moment to consider your request. "@@.npc_manager;A <<=setup.getItemName($scene.sissyomaticStyle)>>? My, my, you must be quite desperate for money, am I not paying you enough? Or is the job of a <<if $fetish.sissy>>SISSI <</if>>Secretary no longer interesting compared to a career in medicine?@@"<br>
<br>
You blush, but can't think of how to respond. Fortunately, she follows up her teasing words with a smile and you sigh in relief.<br>
<br>
"@@.npc_manager;Oh you look too cute when you are nervous! While I question your choice in... <<men npc_work_doctor>> of course I will grant my blessing. My sweet <<if $fetish.sissy>>Sissy<<else>>Girl<</if>>, locked in the most secure chastity device in the world... what could possibly be better?@@"<br>
<br>
Mind racing, you can suddenly think of any number of things that would be "better"... though you judiciously refrain from mentioning any of them.<br>
<br>
"@@.npc_manager;So, what will it be? Do I tell <<=setup.getNpcName("npc_work_doctor","other")>> <<hes npc_work_doctor>> free to lock you away? Bear in mind that while I will, of course, retain control of your device, the conditions under which you will be allowed out will be very narrow.@@"<br>
<br>
<<printThought "Do I really want to do this? Is a little extra cash worth this much?">><br>
<br>
[<<moveTo "event_manager_theme_sissyomatic_permission_2" "Change your mind and withdraw your request." 60 "<<set $scene.upgrade = false>>">>]<br>
<<if setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bondage") >= 10 && setup.getTotalValue("bdsm") >= 10>>
[<<moveTo "event_manager_theme_sissyomatic_permission_2" "Confirm your request." 60 "<<set $scene.upgrade = true>>">>]
<<else>>
[@@.link_locked;What were you thinking? You would have to be some sort of submissive bondage slave to agree to be locked in something like that!@@]
<</if>>
<</if>>
</div>/*#
#desc: decide about being locked in sissyomatic by npc_work_doctor
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $npc_work_doctor.flags.sissyomaticpermission = true>>
<<if $scene.upgrade>>
<<decrementEmotion 'anger' 'npc_manager' 2>>
<<set $scene.firstSissyomaticUnlock = $player.sec_style.submission.sissyomatic == "">>
<<if $scene.firstSissyomaticUnlock>>
<<set $player.sec_style.submission.sissyomatic = "money">>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<include "sissyomaticUnlocks">>
<<set $npc_manager.flags.knowSissyomatic = true>>
<<include "setLastSeenCage">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.upgrade>>
<<include "calcSissyomaticStyle">>
<<=setup.getNpcName("npc_manager","formal")>> nods somewhat enigmatically as she hands you the key to your current device. "@@.npc_manager;Well, you must be... excited to get your new upgrade so I will not hold you any longer. I will communicate my blessing to <<=setup.getNpcName("npc_work_doctor","other")>> and I bet <<he npc_work_doctor>> has your personalised <<=setup.getItemName($scene.sissyomaticStyle)>> all printed and ready by the time you get to <<his npc_work_doctor>> office... well, if <<he npc_work_doctor>> hadn't already optimistically manufactured it!@@"<br>
<br>
With a curtsy you thank her and leave, the reality of what you're about to do finally setting in on the elevator ride, but you find yourself unable to stop as the doors open and you place one dainty foot in front of the other as you walk to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office.<br>
<br>
[<<moveTo "event_manager_theme_sissyomatic_permission_3" "Continue." 600>>]
<<else>>
In a brief rush of judgement you realise how foolish of an idea this might be, quickly telling <<=setup.getNpcName("npc_manager","formal")>> that you'd rather stick with your current chastity arrangement.<br>
<br>
"@@.npc_manager;Hmm, cold feet? Understandable, it's a pretty severe upgrade... let me know if you muster your courage.@@"<br>
<br>
You thank her for her time and quickly leave the room.<br>
<br>
[<<moveTo "room_office_after_work" "Leave." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: decide about being locked in sissyomatic by npc_work_doctor
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'little' $SEEN_STRANGER>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName("npc_work_doctor","other"))>> private lab and <<he npc_work_doctor>> looks up from <<his npc_work_doctor>> work. From the shape of <<his npc_work_doctor>> grin it is clear that <<he npc_work_doctor>> knows exactly why you're here.<br>
<br>
"@@.npc_work_doctor;Good, you came directly here. I just heard from <<=setup.getNpcName("npc_manager","other")>> and, well... for a moment I thought her foolish to send you without an escort. So many girls would get cold feet in a situation like this, but you...@@" <<He npc_work_doctor>> leers "@@.npc_work_doctor;Well, I should have known better that you aren't just any girl, you're a perfect, submissive <<if $fetish.sissy>>SISSI <</if>>slut. So come, let's get you out of those clothes, and that cage, and into your new, wonderful device.@@"<br>
<br>
[<<moveTo "event_sissyomatic_money" "Follow <<him npc_work_doctor>> into the changing area." 60>>]
</div>/*#
#desc: get locked into sissyomatic by npc_work_doctor
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.submission.sissyomatic = "money">>
<<include "sissyomaticUnlocks">>
<<decrementEmotion 'anger' 'npc_work_doctor' 2>>
<<incrementEmotion 'affection' 'npc_work_doctor' 2>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'nurse_work_outfit_unleashed'>>
<<wearItemSet 'nurse_work_outfit_unleashed'>>
<<applyExperience 'oral' 12 'terrible' $SEEN_STRANGER>>
<<if $now.getUTCDay() == 2>>
<<set $scene.hasEternal = setup.hasTmpEffect("sissypill_eternal") || setup.hasTmpEffect("sissypill_2_eternal") || setup.hasTmpEffect("sissypill_3_eternal") || setup.hasTmpEffect("sissypill_pure_eternal")>>
<<if !$scene.hasEternal>>
<<addItem "personal_medication" 7>>
<<set _nextDate = setup.setNextDate($now, 7, 18, 0)>>
<<addTaskById 'event_doctor_reup' _nextDate>>
<</if>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
Leering at you even harder than usual <<=setup.getNpcName("npc_work_doctor","formal")>> waits impatiently as you strip out of your clothes<<if $scene.plugged>> and remove the plug from your rear<</if>>.<br>
<br>
Only after you have unlocked, removed and tossed your chastity device onto the pile of your clothes does <<he npc_work_doctor>> reveal <<if $player.flags.chastity_style=='cage'>>the <<=setup.getItemName($scene.sissyomaticStyle)>>,<<else>>a device unlike any you have ever seen<</if>> letting you stare in awe at it for a few moments before approaching you. <<if $scene.sissyomaticStyle != "sissyomatic">>"@@.npc_work_doctor;What, were you just expecting a base model <<=setup.getItemName('sissyomatic')>>? Well this is the <<switch $scene.sissyomaticStyle>><<case 'sissyomatic_belt'>>advanced, slim-line edition<<case 'sissyomatic_belt'>>low profile petite version<<case "sissyomatic_fem">>the <<=setup.getItemName($scene.sissyomaticStyle)>>, a sleek non-penile model<<case "sissyomatic_ultra">>the <<=setup.getItemName($scene.sissyomaticStyle)>> — meant for those otherwise particularly challenging to keep in line<<case "sissyomatic_ultra_flat">>the <<=setup.getItemName($scene.sissyomaticStyle)>> — meant for those otherwise particularly challenging to keep in line, and who could use a little help getting brought down to size<<default>>ERROR: unexpected new cage: <<=$scene.sissyomaticStyle>><</switch>>. All the same wonderful functionality, but custom fitted to your anatomy<<if $scene.sissyomaticStyle != 'sissyomatic_ultra' && $scene.sissyomaticStyle != 'sissyomatic_ultra_flat'>>, and with an even sleeker, more feminine profile<</if>>.@@"<</if>><br>
<br>
"@@.npc_work_doctor;Last chance to say goodbye before you get locked up in possession of the company.@@" <<He npc_work_doctor>> states, though <<he npc_work_doctor>> gives you no time to do such as <<he npc_work_doctor>> brings the device towards your crotch. <<if $player.body_ref.penis>>Despite your excitement you watch your <<getWordMyPenis false>> droop as <<he npc_work_doctor>> explains. "@@.npc_work_doctor;An installation feature, ultrasound frequencies serve to encourage blood flow and prevent erection so that the <<=setup.getItemName($scene.sissyomaticStyle)>> can be installed at any time.@@"<</if>><br>
<br>
<<if $player.body_ref.penis>>
Smooth and sleek and perfectly shaped to your body <<he npc_work_doctor>> locks a bent ring against your pelvis and then efficiently ensconces your shaft<<if $player.body_ref.balls>> and balls in their new, private homes<<else>>into its new, private home<</if>>.
<<if $player.body_ref.vagina>>
Next up a plug slides into your vagina, held in tight by the body-contoured crotch strap.
<</if>>
<<else>>
Smooth and sleek and perfectly shaped to your body <<he npc_work_doctor>> locks it around your waist, nestling things against your clit and sliding a plug into your front hole.
<</if>>
Seemingly in a hurry, <<=setup.getNpcName("npc_work_doctor","formal")>> pulls the middle panel up between your legs and slides the small plug into your rear, where it immediately becomes very not-small, the metamaterial swelling and locking in place with constant pressure against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
A sleek battery is clicked into place against your perineum as <<he npc_work_doctor>> explains that it will "@@.npc_work_doctor;Hold a charge for a year or more, even with heavy use.@@"<br>
<br>
What <<he npc_work_doctor>> means by "use" is immediately clear as <<he npc_work_doctor>> does a quick test, a brief burst of electricity coursing through the entire device to shock your most intimate places, followed by a brief buzzing as the plug vibrates for a few moments.<br>
<br>
<<if $fetish.sounding>>
Still catching your breath from the punishing shock you gasp as you feel something else enter you — <<if $player.flags.chastity_style=='cage'>>a slender rod disappearing into the tip of your cage, sliding<<else>>a portion of the sleek front shield pulling away to allow <<him npc_work_doctor>> to slide a slender rod<</if>> deep into your urethra before locking in place<<if $player.flags.chastity_style=='cage'>>, the completely smooth profile of the shield over your crotch re-asserting itself<</if>>.<br>
<br>
<</if>>
"@@.npc_work_doctor;There we go.@@" <<He npc_work_doctor>> states as <<he npc_work_doctor>> peels off <<his npc_work_doctor>> gloves. "@@.npc_work_doctor;NOW you're ready for work, no more volunteering and onerous stops at security for you!@@"<br>
<br>
<<if $now.getUTCDay() == 2 && !$scene.hasEternal>>
You're still trying to catch your breath and adjust as <<he npc_work_doctor>> hands you your weekly bottle of drugs. "@@.npc_work_doctor;Mustn't forget these, after all.@@"<br>
<br>
<</if>>
The device has already warmed to your body temperature, but there's no way you can forget its filling, constraining presence. Still, there is work to do, and you with an even stronger motivator to make you obey as <<he npc_work_doctor>> starts handing you the parts of your nurse's uniform.<br>
<br>
[<<moveTo "event_work_doctor_help_root" "Silently fall in behind <<him npc_work_doctor>>." 60>>]
</div>/*#
#desc: manager notices your broken chastity cage
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You start to strip and <<=setup.getNpcName("npc_manager","formal")>> pauses, looking at you strangely.<br>
<br>
"@@.npc_manager;What is...@@" before you can react, she has pulled your clothes aside, exposing your <<if setup.isCage()>>un-caged <<getWordMyPenis false>> and the ring and partial cage still locked around your base<<else>>un-shielded <<getWordMyPenis false>> and the belt still locked around your waist<</if>>.<br>
<br>
Examining the remains of your chastity device more closely, she finally looks up at you. "@@.npc_manager;What... happened?@@"<br>
<br>
[<<moveTo "event_manager_broken_chastity_2" "Say you don't know." 60 "<<set $scene.action='dumb'>>">>]<br>
[<<moveTo "event_manager_broken_chastity_2" "Tell her what happened, but not where you got the drugs." 60 "<<set $scene.action='partial'>>">>]<br>
[<<moveTo "event_manager_broken_chastity_2" "Tell her everything." 60 "<<set $scene.action='full'>>">>]
</div>/*#
#desc: explain your broken chastity cage
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'dumb'>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<<case 'partial'>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<case 'full'>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</switch>>
<<set $scene.isCage = setup.isCage()>>
<<set _cage = setup.getItemFromType("cage")>>
<<removeItem _cage true>>
<<deleteItem _cage>>
<<set $npc_manager.flags.penis_shrinking.first_secure_comment = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'dumb'>>
You play dumb saying that your <<if $scene.isCage>>cage<<else>>belt<</if>> "@@.pc;Just broke.@@" She stares at you for a long moment before finally
<<case 'partial'>>
Refraining from mentioning the source you explain that you took a drug and it caused your <<getWordMyPenis false>> to grow so fast it burst free of the <<if $scene.isCage>>cage<<else>>chastity belt<</if>>.<br>
<br>
She seems to be waiting for you to explain further, but finally snorts,
<<case 'full'>>
Filled with shame, you explain everything; how you brewed up a special batch of <<=setup.getItemName("drug_dick")>> and how it made your <<getWordMyPenis false>> swell to mammoth proportions; shattering your chastity device in the process.<br>
<br>
As you finish the explanation, she surprises you with sudden concern, explaining that you are lucky that you were not hurt before
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
pulling out a key and, somehow, managing to use it to unlock and remove the remainder of the <<if $scene.isCage>>cage<<else>>chastity belt<</if>>.<br>
<br>
Holding the ruined device in one hand, she closes her fist, crushing it with casual ease as she takes a deep breath and looks you in the eye.<br>
<br>
Wide-eyed in shock at what she just did, you tremble slightly as her voice cuts through the silence. "@@.npc_manager;Well, I had thought I would not need to take this measure with you, given your steady development but... it would seem that drastic measures are in order to put you back on the proper path.@@"<br>
<br>
Dropping the crushed <<if $scene.isCage>>cage<<else>>belt<</if>> into the trash with a thunk, she turns to you with a frown. "@@.npc_manager;Fix your clothing. I am going to make you an appointment with <<=setup.getNpcName("npc_work_doctor","formal")>> to have you fitted with a solution to your problem.@@"<br>
<br>
You're still frozen in fear as she starts to sit down only for her to glare back at you. "@@.npc_manager;Well? You know the way. Go. NOW — and in case you are considering flight... you will find a pair of escorts just outside the door — you can deal with them, or you can deal with me.@@"<br>
<br>
You gulp, glancing at the crushed cage as you realise you, once again, have no choice. Turning, you leave the office, finding a pair of large security guards in the hallway, hands large enough to close around your bicep as they take you by the arm and march towards the elevator, stern and strict though you offer up absolutely no resistance.<br>
<br>
[<<moveTo "event_manager_broken_chastity_3" "Continue." 300>>]<br>
</div>/*#
#desc: sissyomatic introduced, forced route
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverythingButUnderwear>>
<<set _plug = setup.getItemFromType("plug")>>
<<set $scene.plugged = _plug != "">>
<<if $scene.plugged>>
<<removeItem _plug true>>
<</if>>
<<set _plug = setup.getItemFromType("hollow_plug")>>
<<if _plug != "">>
<<set $scene.plugged = true>>
<<removeItem _plug true>>
<</if>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<set _cage = setup.getItemFromType("cage")>>
<<removeItem _cage true>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
Brought to an exam room, you are stripped naked and then installed in an exam chair, straps holding you tightly in place, your legs spread, <<if $scene.removeCage>>your current chastity device removed<<else>>your technically "free" <<getWordMyPenis false>> exposed and defenceless<</if>>. The guards' final act is to strap a gag tightly into your mouth before opening the door, <<=setup.getNpcName("npc_work_doctor","formal")>> walking in carrying a small valise as the two guards walk out.<br>
<br>
"@@.npc_work_doctor;Well, well, well,@@" <<he npc_work_doctor>> states, shaking <<his npc_work_doctor>> head as <<he npc_work_doctor>> pulls on a pair of gloves and takes a seat between your legs. <<if $scene.removeCage>>"@@.npc_work_doctor;Here for the ultimate in security? What fortune for you to be enrolled in the <<=setup.getItemName('sissyomatic')>> prototype test program. Oh, I just cannot wait for the manufacturing issues to be ironed out and we can install these on ALL subordinate employees.@@"<<else>>"@@.npc_work_doctor;Someone really should have told you to be careful with medication... no matter we will soon have this all sorted out.@@"<</if>><br>
<br>
<<if $npc_sissy_secretary.stage >= 5 || setup.findThemeId('npc_manager','','') != -1>>
You can already guess what is coming, but you still look on in fear as <<he npc_work_doctor>> opens up the case and pulls out a <<if $player.flags.chastity_style=='cage'>>brand new<<else>>what looks like a belt version of a<</if>> <<=setup.getItemName('sissyomatic')>>.<br>
<br>
<<He npc_work_doctor>> lets you stare at it as <<he npc_work_doctor>> smiles before placing it down and readying things. "@@.npc_work_doctor;It is too bad that it had to happen like this but... well, you did bring it on yourself and really, this is so much more appropriate and secure, don't you think?<<if $player.flags.chastity_style=='belt'>> Oh, and I fabricated you a slim-line edition since I believe you would more appreciate the security of that style<</if>>.@@"
<<else>>
<<include "calcSissyomaticStyle">>
All you can do is watch as <<he npc_work_doctor>> opens the case and pulls out a chastity device unlike any you have ever seen. Pink, and with a strange, chrome-like sheen it is beyond secure — with separate compartments for your <<getWordMyPenis false>> and each testicle, but it is the rest — the fact that <<if $player.flags.chastity_style=='cage'>>it is connected to a not immodest buttplug<<else>>there is a not immodest buttplug sprouting from the inside<</if>> that really puts it in a league of its own.<br>
<br>
"@@.npc_work_doctor;The <<=setup.getItemName($scene.sissyomaticStyle)>>,@@" <<he npc_work_doctor>> explains as <<he npc_work_doctor>> lets you stare at it. "@@.npc_work_doctor;The ultimate in security, personally sized to your exact specifications it is utterly inescapable, keeping you <<if $player.flags.chastity_style=='cage'>>caged<<else>>smoothly concealed<</if>> and filled at all time with the full suite of electrics and vibrators as well as a plug like no other.@@"<br>
<br>
As a demonstration, <<he npc_work_doctor>> shows how the plug can grow and shrink, swelling so large that the hollow core would be sufficient for the wearer to be fucked without loosening a single piece of the diabolic device.
<</if>>
<br><br>
Patting you on the thigh, <<he npc_work_doctor>> smiles as you wiggle uselessly in your bonds. <<if $scene.plugged>>Reaching between your legs <<he npc_work_doctor>> gently extracts your plug, wiping it off before depositing it with your things.<</if>><br>
<br>
"@@.npc_work_doctor;Well, enough chatting, let's get you geared up!@@"<br>
<br>
<<He npc_work_doctor>> grins and reaches for a bottle of lubricant, your eyes going wide as you read the bright warning label — capsaicin-laced lubricant, "WARNING, do not bring in contact with eyes, induces extreme pain." <br>
<br>
[<<moveTo "event_manager_broken_chastity_4" "Continue." 300>>]
</div>/*#
#desc: sissyomatic installed, forced route
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 19 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bondage' 10 'very' $SEEN_STRANGER>>
<<include "calcSissyomaticStyle">>
<<addItem $scene.sissyomaticStyle>>
<<wearItem $scene.sissyomaticStyle true>>
<<manipulateItem $scene.sissyomaticStyle 'lock' true>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<<switch $npc_manager.stage>>
<<case 3>>
<<if $now.getUTCDay() == 5 && $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<addEvent 'aslut_congratulations'>>
<</if>>
<</switch>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $scene.firstSissyomaticUnlock = $player.sec_style.submission.sissyomatic == "">>
<<if $scene.firstSissyomaticUnlock>>
<<set $player.sec_style.submission.sissyomatic = "forced">>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<include "sissyomaticUnlocks">>
<<set $npc_manager.flags.knowSissyomatic = true>>
<<include "setLastSeenCage">>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
You want to look away, but you can't stop staring as time seems to slow, <<=setup.getNpcName("npc_work_doctor","formal")>> seeming to draw out the anticipation as <<he npc_work_doctor>> coats <<his npc_work_doctor>> hands, the plug and the inside of the <<if $player.flags.chastity_style=='cage'>>cage<<else>>chastity shield<</if>> in the capsaicin-laced lubricant and then, finally... <<he npc_work_doctor>> starts lubing you up.<br>
<br>
Tears flow down your cheeks as your loins light up in pain, your balls and shaft on fire as you bite down on the gag, touches that would be soft, almost tender in another situation instead burning with each grasp. Your vision is blurred by tears as you watch <<him npc_work_doctor>> finish oiling you up. Your erection long-deflated the <<if $player.flags.chastity_style=='cage'>>cage<<else>>belt<</if>> slides into place easily, the snug compression of the separate compartments for shaft and testicles only amplifying the pain as fresh lube is pressed against your flesh.<br>
<br>
Panting for air, you want to beg for a reprieve, but the gag holds firm, one finger, then two sliding into your rear hole, like twin rods of fire that has you clench down in desperation, an act that only seems to amuse your tormentor.<br>
<br>
"@@.npc_work_doctor;That's right, squeeze that slut-hole, squeeze it as tight as you want, it won't matter. You brought this on yourself, rampant horniness to be met with a prison of your own making. Filled and "chaste" and always utterly helpless.@@"<br>
<br>
As <<he npc_work_doctor>> talks, <<he npc_work_doctor>> slides the plug into your rear. Slender and slick it enters easily, pushing the pain deeper along with the lube soaking it — and then it swells, the metamaterial growing to lock in place, filling you, the hollow hole gaping you, imprisoning you in a new way and yet also leaving you helpless to resist any who would use your rear hole.<br>
<br>
<<if $fetish.sounding>>
Nerves frayed, you no longer strain against your bonds, too exhausted to do anything but wilt as you watch <<him npc_work_doctor>> ready the final piece — a slender urethra plug that glistens with lube. "@@.npc_work_doctor;Open wide.@@" <<He npc_work_doctor>> says with a grin as <<he npc_work_doctor>> <<if $player.flags.chastity_style=='cage'>>slots the plug into the thin hole in the tip of your cage<<else>>somehow parts the front shield just long enough to insert the thin tube into your urethra<</if>>, lining it up and pressing it into you, a fresh violation that you cannot in any way resist, <<if $player.flags.chastity_style=='cage'>>the click as it locks in place<<else>>the shield closing up seamless and sleek<</if>> the final nail in your coffin of helplessness.<br>
<br>
As bad as the pain has been to this point, this final penetration somehow ratchets things even higher, a lance of evil that has you whimpering in helplessness, so desperate for reprieve that the short burst of vibration that comes as <<he npc_work_doctor>> plugs in the devices battery has you actually feeling grateful to <<him npc_work_doctor>>, even as the pain of the lube roars back a moment later when the <<if $player.body_ref.penis>>prostate-<</if>>thrumming pleasure ceases.
<<else>>
As bad as the pain has been to this point, the fire of the lube seems to burn ever hotter, agony that leaves you so desperate for reprieve that the short burst of vibration that comes as <<he npc_work_doctor>> plugs in the devices battery has you actually feeling grateful, even as every twitch spreads the lube into your every crevice, the pain overwhelming all a moment later when the <<if $player.body_ref.penis>>prostate-<</if>>thrumming pleasure ceases.
<</if>>
<br><br>
Shuddering in your bonds, you are uncertain how long you lie there, eyes drifting shut as you cry only to open them and find your restraints removed, <<=setup.getNpcName("npc_work_doctor","formal")>> having left you alone in the exam room.<br>
<br>
Joints aching, you sit up and make it to your feet, not even bothering to inspect your new prison, so broken and certain of your utter helplessness you are. Spitting out the gag, you gather your things and replace your clothes, mindlessly heading back to your <<=ps(setup.getNpcName("npc_manager","title"))>> office where she greets you with an artificial smile, waving off your morning inspection and telling you to get to work.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Dress and get to work." 300 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: manager notices changed genitals
#status: FINISHED 0.7.12.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You take a deep breath and state that you are ready to give yourself over to the company.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods, her expression inscrutable.<br>
<br>
"@@.npc_manager;Very well... in that case, loathe as I am to deal with <<him npc_work_doctor>>, I believe we must enlist <<=setup.getNpcName("npc_work_doctor","formal")>> for a device sufficient to... secure you in your present state. Get dressed, we are going on a field trip.@@"<br>
<br>
Your heart beats a bit faster as you pull on your clothes and hurry after her.<br>
<br>
[<<moveTo "event_sissyomatic_ultra_1" "Continue." 360 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: sissyomatic ultra intro
#status: FINISHED 0.7.12.0
#ignore_spell: cctv
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> barges into <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab and <<he npc_work_doctor>> scrambles to turn off <<his npc_work_doctor>> screen and close <<his npc_work_doctor>> labcoat. You catch a brief glimpse of what looks like CCTV footage of one of the underground hospital rooms on <<his npc_work_doctor>> screen and note a small tent under <<his npc_work_doctor>> coat as <<he npc_work_doctor>> tries to sit casually and conceal it.<br>
<br>
<<printThought "Wait... was <<he npc_work_doctor>> jerking it to footage of patients?">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> snorts, clearly unimpressed as <<=setup.getNpcName("npc_work_doctor","formal")>> stutters out a greeting.<br>
<br>
"@@.npc_work_doctor;<<=setup.getNpcName("npc_manager","other")>>! So nice of you to, uh, visit unannounced! Was there, uh, something I could do for you.@@"<br>
<br>
"@@.npc_manager;Yes,@@" <<=setup.getNpcName("npc_manager","formal")>> replies as she pushes you forward. "@@.npc_manager;Show the doctor,@@" she commands and you reflexively
<<if (setup.checkItemTypeWorn("legwear") && setup.checkItemTypeTag('legwear', ['skirt'])) || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>
lift your skirt
<<else>>
pull down your pants
<</if>>
to expose your "dual equipment." <br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<=setup.getNpcName("npc_work_doctor","formal")>> seems amused by your small <<getWordMyPenis false>> above your wet slit.
<<case 2 3>>
<<=setup.getNpcName("npc_work_doctor","formal")>> seems amused by your <<getWordMyPenis false>> above your wet slit.
<<case 4 5>>
<<=setup.getNpcName("npc_work_doctor","formal")>> looks intimidated of your large <<getWordMyPenis false>> as you pull it to one side to reveal your wet slit.
<<case 6>>
<<=setup.getNpcName("npc_work_doctor","formal")>> terrified of your massive <<getWordMyPenis false>> as you lift it out of the way to reveal your wet slit.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
"@@.npc_manager;As you can see we are dealing with a bit of a special situation to ensure that she is properly secured, and thus able to focus on her duties. I believe you have some manner of device that should be able to remedy this situation?@@"<br>
<br>
"@@.npc_work_doctor;Yes, um, of course — while technically still a prototype our <<if $player.body_ref.shrink_cage>><<=setup.getItemName("sissyomatic_ultra_flat")>><<else>><<=setup.getItemName("sissyomatic_ultra")>><</if>> model is designed specifically for this sort of situation. If I could take some measurements I can get one printed up right away, and then you can return to your office secure that your assistant is... secure.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Very good — <<=$player.first_name>>, would you kindly remove your clothing so that <<=setup.getNpcName("npc_work_doctor","formal")>> can take your measurements?@@"<br>
<br>
<<if $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $player.sec_style.submission.sissyomatic != "">>
<<printThought "<<if $player.body_ref.shrink_cage>><<=setup.getItemName('sissyomatic_ultra_flat')>><<else>><<=setup.getItemName('sissyomatic_ultra')>><</if>>? That sounds even scarier than a <<=setup.getItemName('sissyomatic')>>...">>
<<else>>
<<printThought "What the hell is a <<if $player.body_ref.shrink_cage>><<=setup.getItemName('sissyomatic_ultra_flat')>><<else>><<=setup.getItemName('sissyomatic_ultra')>><</if>>? It sounds scary...">>
<</if>>
<br><br>
[<<moveTo "event_sissyomatic_ultra_2" "Obediently follow instructions." 300 "<<set $scene.obey=true>><<set $scene.firstObey=true>>">>]<br>
[<<moveTo "event_sissyomatic_ultra_2" 'No! You do not want a <<if $player.body_ref.shrink_cage>><<=setup.getItemName("sissyomatic_ultra_flat")>><<else>><<=setup.getItemName("sissyomatic_ultra")>><</if>>!' 300 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: sissyomatic ultra measured
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.sissyomatric_ultra = true>>
<<if $scene.obey>>
<<changeHorny 20>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<if $scene.firstObey>>
<<applyExperience 'submission' 18 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 8 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $npc_manager.flags.knowSissyomatic = true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
<<if $scene.firstObey>>
You obediently strip naked<<if $scene.plug != "">>and remove your plug, before piling it all<<else>> and pile your clothes<</if>>
<<else>>
You nervously remove your clothes<<if $scene.plug != "">>, and your plug<</if>> and pile them
<</if>>
on a nearby lab table.<br>
<br>
By the time you finish, <<=setup.getNpcName("npc_work_doctor","formal")>> has managed to get <<his npc_work_doctor>> clothing under control and <<he npc_work_doctor>> stands up, still nervously glancing at <<=setup.getNpcName("npc_manager","formal")>> every few seconds as <<he npc_work_doctor>> produces a hand-held scanning device and kneels down in front of you.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<=setup.getNpcName("npc_work_doctor","formal")>> efficiently makes <<his npc_work_doctor>> measurements<<if $fetish.sph>>, seemingly amused by your <<getWordMyPenis false>><</if>>.
<<case 2 3>>
<<=setup.getNpcName("npc_work_doctor","formal")>> efficiently makes <<his npc_work_doctor>> measurements.
<<case 4 5>>
<<=setup.getNpcName("npc_work_doctor","formal")>> seems almost jealous as <<he npc_work_doctor>> approaches your large <<getWordMyPenis false>>, making <<his npc_work_doctor>> measurements quickly as if eager to get away from it.
<<case 6>>
Still clearly put off by your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon dick<<elseif $player.body_ref.knot>>wolf cock<<elseif $player.body_ref.horsecock>>horsecock<<else>>cock<</if>> <<=setup.getNpcName("npc_work_doctor","formal")>> almost falls on <<his npc_work_doctor>> face when you twitch and <<he npc_work_doctor>> dodges to the side.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> chuckles, clearly amused by <<his npc_work_doctor>> fear as <<he npc_work_doctor>> hurriedly finishes up.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_work_doctor","formal")>> stands up and moves to a large machine on the other side of the lab. "@@.npc_work_doctor;Alright, it will just be a moment to print things up and that pesky "freedom" will be a thing of the past...@@"<br>
<br>
You gulp in nervous anticipation of your new device as you reflexively take a step closer to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
[<<moveTo "event_sissyomatic_ultra_3" "Wait." 600>>]
<<else>>
You don't know exactly what a <<if $player.body_ref.shrink_cage>><<=setup.getItemName('sissyomatic_ultra_flat')>><<else>><<=setup.getItemName('sissyomatic_ultra')>><</if>> is, but you're pretty sure you don't want it anywhere near you! You start to object only for <<=setup.getNpcName("npc_manager","formal")>> to bristle in annoyance, spinning you around and holding you by the throat as she glares down at you.<br>
<br>
"@@.npc_manager_dom;Listen you <<if $fetish.sissy>>sissy<<else>>little<</if>> slut — I am being VERY lenient in accepting the changes you have made to your body. But rules are rules and you WILL be locked and secured before we leave this room. Now strip.@@"<br>
<br>
She half throws you away and you almost stumble to the ground, in awe of her casual strength.<br>
<br>
You glance over at <<=setup.getNpcName("npc_work_doctor","formal")>>, but <<he npc_work_doctor>> looks even more terrified than you are, you will be getting no help from that front.<br>
<br>
[<<moveTo "event_sissyomatic_ultra_2" "Remove your clothes." 300 "<<set $scene.obey=true>>">>]
<</if>>
</div>/*#
#desc: sissyomatic ultra installed
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstSissyomaticUnlock = $player.sec_style.submission.sissyomatic == "">>
<<if $scene.firstSissyomaticUnlock>>
<<if $scene.obey && $scene.firstObey>>
<<set $player.sec_style.submission.sissyomatic = "obedient">>
<<else>>
<<set $player.sec_style.submission.sissyomatic = "forced">>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<include "sissyomaticUnlocks">>
<<include "setLastSeenCage">>
<<set $scene.differentCage = false>>
<<set $player.flags.chastity_style = 'belt'>>
<<set $player.timebased.horny = 20>>
<<applyExperience 'bondage' 10 'very' $SEEN_FRIEND>>
<<if $scene.firstObey>>
<<applyExperience 'bdsm' 15 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 19 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<include inspectionData_chastity>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You nervously wait as the machine finishes its "print" but, finally, the progress bar reaches 100% and <<=setup.getNpcName("npc_work_doctor","formal")>> lifts your new device into view.<br>
<br>
You gulp nervously — looking similar to a rigid thong with dual internal plugs and a sleek compartment for your <<getWordMyPenis false>><<if $player.flags.balls>> — and an additional pair of private homes for your testicles<</if>>, it is by far the most secure "chastity" device you have ever seen<<if $fetish.sounding>> — and that is before you catch a glimpse inside and notice the hollow urethral tube!<<else>>.<</if>><br>
<br>
"@@.npc_work_doctor;I will let you do the honours,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with a smile as <<he npc_work_doctor>> passes the device off to your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
"@@.npc_manager;My my, look at how excited you are to get locked up!@@" She states, summarising your hard <<getWordMyPenis false>> and the juices running down your thigh...<br>
<br>
You blush as <<=setup.getNpcName("npc_manager","formal")>> brings the device towards you, and watch as you go immediately flaccid. "@@.npc_work_doctor;Short-range ultra-sonic emitters to ensure it can be equipped regardless of the initial arousal of the patient.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> helpfully explains.<br>
<br>
"@@.npc_manager;Quite a key feature given how... excited this prospect seems to have you, hmm?@@" She asks as she locks the curved waist strap into position and slides the first plug into your rear before raising its twin towards your front.<br>
<br>
"@@.npc_work_doctor;Both plugs can vibrate, electrocute, or re-size, as needed. The rear plug is hollow so that the wearer remains available for use while ensuring an always-tight experience.@@"<br>
<br>
You gasp as the second plug slides into your body as you find yourself suddenly thinking about that first day when you looked up <<=ps(setup.getNpcName("npc_barista","nickname"))>> skirt... to think you would be in a similar situation one day... only locked full rather than things being held in position by a straining thong...<br>
<br>
<<if $fetish.sounding>>
Distracted by your thoughts you do not notice the remainder of the device closing over you until the urethral rod slides into position, this final penetration even more intimate as you find yourself locked, filled and "chaste" in every imaginable way...<br>
<br>
<</if>>
"@@.npc_manager;Well, that is lovely... no pinching?@@" <<=setup.getNpcName("npc_manager","formal")>> asks and you shake your head, actually surprised how comfortable the device is... if one ignores the distraction of being encased and <<if $fetish.sounding>>triple<<else>>double<</if>>-full.<br>
<br>
"@@.npc_work_doctor;The battery pack,@@" <<he npc_work_doctor>> states, handing over a slender piece that looks to fit between your legs, "@@.npc_work_doctor;Guaranteed for a year of heavy use between charges.@@" <<He npc_work_doctor>> notes.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> slots the battery-pack into position and you
<<if $scene.firstObey>>
gasp in pain.<br>
<br>
"@@.npc_work_doctor;Looks like everything is in order,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> explains. "@@.npc_work_doctor;Just a little test shock — it is capable of MUCH worse punishments than that.@@"
<<else>>
cry out as agonising shocks light up all of your most intimate areas.<br>
<br>
"@@.npc_manager;What did you expect?@@" <<=setup.getNpcName("npc_manager","formal")>> states as you try to catch your breath once the pain stops. "@@.npc_manager;Disobedience leads to punishment — and I can imagine you being very obedient now that you have had a taste of what your new device can administer.@@"
<</if>>
<br><br>
You have a sudden urge to be a VERY good <<switch $player.identify_as>><<case "female" "">>girl<<case "male">>boy<<case "fluid" "agender">><<if $fetish.sissy>>SISSI <</if>>Secretary<</switch>>.<br>
<br>
"@@.npc_manager;You can stare at it on your own time! Now hurry up and get dressed so we can get back to your inspection and start the day properly.@@"<br>
<br>
[<<moveTo $scene.cleaningReturn "Get dressed and follow her back to the office." 600 "<<useClothSetPop 'tmp'>>">>]
</div><<if $player.body_ref.penis && $player.body_ref.vagina>>
<<if $player.body_ref.shrink_cage && $player.body_ref.balls>>
<<set $scene.sissyomaticStyle = 'sissyomatic_ultra_flat'>>
<<else>>
<<set $scene.sissyomaticStyle = 'sissyomatic_ultra'>>
<</if>>
<<elseif $player.flags.chastity_style=='cage' && $player.body_ref.penis && $player.body_ref.balls>>
<<if $player.body_ref.shrink_cage>>
<<set $scene.sissyomaticStyle = 'sissyomatic_flat'>>
<<else>>
<<set $scene.sissyomaticStyle = 'sissyomatic'>>
<</if>>
<<elseif $player.body_ref.vagina>>
<<set $scene.sissyomaticStyle = 'sissyomatic_fem'>>
<<else>>
<<set $scene.sissyomaticStyle = 'sissyomatic_belt'>>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>/*#
#desc: intro to canteen spill event
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>
<<set $player.flags.canteen_spill += 1>>
<<set $npc_manager.flags.spill_event = true>>
<<else>>
<<initRoom>>
<<moveTo "room_office_lunchbreak_canteen">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You are walking into the work canteen to fetch your manager's lunch as you usually do. Turning the corner into the canteen you catch a glimpse at another, obviously distracted employee who's just a fraction of a second apart from collision.<br>
<br>
[<<moveTo "event_canteen_spill" "Try to dodge!" 60>>]
</div>/*#
#desc: food spilt on you when fetching lunch from canteen
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.food = setup.getRandomStainingFood()>>
<<if setup.getTotalValue("dexterity") < 5>>
<<if setup.checkItemTypeWorn("legwear")>>
<<set _legwear = setup.getItemFromType('legwear')>>
<<changeItemStatus _legwear 'dirty' '["set",100]'>>
<</if>>
<</if>>
<<if setup.getItemFromType('shirt')!="">>
<<set _shirt = setup.getItemFromType('shirt')>>
<<if _shirt == "shirt">>
<<removeItem "shirt" true>>
<<deleteItem "shirt">>
<<addItem "shirt_stained" true>>
<<wearItem "shirt_stained" true>>
<<changeItemStatus 'shirt_stained' 'dirty' '["set",100]'>>
<<else>>
<<changeItemStatus _shirt 'dirty' '["set",100]'>>
<</if>>
<</if>>
<<if setup.getItemFromType('shoes')!="">>
<<set _shoes = setup.getItemFromType('shoes')>>
<<changeItemStatus _shoes 'dirty' '["set",100]'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dexterity") >= 5>>
Nimbly you try to dodge, managing to avoid most of it, but not quite evading a few splashes splattering your shoulder. Looking down at the tray on the ground you think it was a meal of <<=$scene.food.name>>.
<<else>>
You try to move away, but you just aren't fast enough and their tray of soup flies into the air, covering your clothes with what an errant drop hitting your lips tells you is <<=$scene.food.name>>.<br>
<</if>>
<br>
<<if $player.flags.canteen_spill == 1>>
<<printThought "Oh <<getWordGod>>, why me?">><br>
<br>
Standing there shocked, you stare as the other employee frantically apologises for their mistake. You try to think about what you should do — on the one hand you manager did send you for lunch and it would be a shame to return empty-handed, but on the other, you are a tomato-stained dripping mess.
<<elseif $player.flags.canteen_spill == 2>>
<<printThought "I mean, come on! Again? Really?">><br>
<br>
Looking down, you realise that it is actually the same <<man>> from before who has, once again, wrecked your outfit. You do not have time to think about such things, however as you once again need to make the decision to shoulder through and wait in line for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch or retreat immediately.
<<else>>
<<printThought "What is this? Secret food Ninjas?">><br>
<br>
At this point you aren't even surprised to see that your "assailant" is the same <<man>> from the previous times.<br>
<br>
<<printThought "Is <<he>> doing this on purpose, or is this just the universe conspiring against me?">><br>
<br>
Ignoring <<his>> sputtering apology you need to make the same decision as always — stick it out and get <<=setup.getNpcName('npc_manager', 'formal')>> her meal or return empty-handed.
<</if>>
<br><br>
<<if setup.checkItemTypeWorn('bra')>>
Glancing down you realise that not only are you stained, but the wet top clinging to your body makes the outline of your bra quite apparent...<br>
<br>
<</if>>
[<<moveTo "event_canteen_spill_stoic" "You were sent on a mission, and neither rain nor sleet nor <<=$scene.food.nickname>> will stop you from returning with her lunch!" 600>>]<br>
[<<moveTo "event_canteen_spill_retreat" "This is beyond the call of duty, go back and tell your manager what happened." 60>>]<br>
</div>/*#
#desc: ignore the fact you have food spilt on you and wait in line for manager's lunch
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTrueFood>>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<<gainWillpower 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You get some strange looks and comments as you stand determinedly in line to pick up <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch, fellow employees taking pity on your stained attire to rush you to the front in record time. Still, you remain firm in your decision, the feelings of humiliation somehow only strengthening your resolve.<br>
<br>
Quickly ordering her requested meal, you hurry back to the office hoping you might have time after delivering it to clean yourself up a little before your lunch break is over.<br>
<br>
[<<moveTo "event_manager_good_girl_unisex" "Deliver the lunch!" 120>>]
</div>/*#
#desc: manager gives you unisex outfit to replace your lunch-stained clothing
#status: FINISHED 0.4.0.0
#*/
<<if setup.checkItemSetWorn("unisex_office") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body") || setup.checkItemTypeWorn("legwear") && !setup.checkItemTypeCarried("panties")) && (setup.checkItemTypeWorn("stockings") || !setup.checkItemTypeCarried("stockings"))>>
<<initRoom>>
<<moveTo "event_manager_good_girl_unisex_dressed">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<addItem "shirt_female_office_teal">>
<<addItem "trousers_female_office_grey">>
<<if !setup.checkItemInInventory('flats_black')>>
<<addItem "flats_black">>
<<else>>
<<if setup.getItemFromType('shoes')!="">>
<<set _shoes = setup.getItemFromType('shoes')>>
<<changeItemStatus _shoes 'dirty' '["set",0]'>>
<</if>>
<</if>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<deleteItem $player.work.foodID>>
<<set $player.work.foodID = ''>>
<<set $scene.foodDelivery.done = true>>
<<removeEverythingButUnderwear>>
<<setThreshold 'feminization' 'good_girl' 'spilling_incident'>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Walking calmly into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office it is not until you have placed her meal gently on her desk that she looks up at you.<br>
<br>
"@@.npc_manager;Thank you for the prompt delivery, I really was getting quite peckish—@@"<br>
<br>
Her voice falls off as she catches sight of your stained outfit.<br>
<br>
<<if $player.flags.canteen_spill == 1>>
"@@.npc_manager;Oh my, what happened to you? Did someone spill? Oh you poor thing!@@"<br>
<br>
On her feet in an instant she marches purposefully towards a wardrobe-like cabinet in the corner of her office.<br>
<br>
"@@.npc_manager;Come now, get out of those filthy clothes! Oh, it just is not right for a secretary, much less one of mine, to be in such disarray!@@"<br>
<br>
You do as she commands, stripping off your outer clothing, thankful to note that your undergarments appear to have escaped unscathed. Looking down, you realise that your shoes, however caught a few drops, though your hosiery appear safe.<br>
<br>
"@@.npc_manager;I do not quite have something to match what you were wearing, but this should do, and I daresay you will look even better in it than you do in your usual fare.@@"<br>
<br>
She hands you two folded pieces of clothing and a pair of shoes — grey pants, a cyan shirt and small black enamel flats. Upon closer inspection something seems off, all three items seem subtly... feminine? Well, maybe "subtly" Is an understatement...<br>
<br>
"@@.npc_manager;Come, come, do not just stand there. I know you can dress yourself, so get changed into your new outfit.@@"
<<else>>
"@@.npc_manager;Again? You are quite the stain magnet! Here, have another change of clothes. You are quite fortunate I had another set just lying around...@@"<br>
<br>
She watches intently as you strip off your outer things and accept another pair of small black enamel flats, grey pants and cyan shirt.<br>
<br>
"@@.npc_manager;Hurry and get changed, you need to be dressed appropriately for the remainder of the afternoon..@@"
<</if>>
<br><br>
<<if $options.ezchange>>
[<<moveTo "event_manager_good_girl_unisex_dressed" "Get dressed as instructed." 60 "<<wearItemSet 'unisex_office'>><<if !setup.checkItemTypeWorn('panties')>><<wearItemSlotTag 'panties' 'female'>><</if>><<if !setup.checkItemTypeWorn('stockings')>><<wearItemSlotTag 'stockings' 'female'>><</if>>">>]
<</if>>
</div>/*#
#desc: change into unisex clothing under manager's direction
#status: FINISHED 0.4.0.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while she's talking to me!">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.flags.canteen_spill > 2>>
You swear you hear her whisper "finally" as you start to change, but when you glance up she is silent, merely staring intently and nodding for you to continue.<br>
<br>
<</if>>
"@@.npc_manager;Oh, oh my...@@"<br>
<br>
<<printThought "Is she... ogling me?">><br>
<br>
"@@.npc_manager;Come, come, you just HAVE to see yourself, I mean just... stupendous, splendid, sumptuous... and that is just the words that come to mind when I look at you starting with S!@@"<br>
<br>
She guides you to the side of her office where there happens to be a full-length mirror. There is no denying that the outfit fits your body well... too well, in some ways, the snug crotch of the pants seeming to have no room for your "little soldier." Somehow the clothes look even MORE feminine on your body than they did in your hands and you just stand and gawk at the transformation.<br>
<br>
"@@.npc_manager;Breathtaking, is it not? Why I should have had you in these the first day!@@" She pauses.<br>
<br>
"@@.npc_manager;Sorry, I got a bit excited there. Obviously you have had something of a stressful lunch period so I will not heap anything further upon you. That said...@@"<br>
<br>
She falls silent, but there is no misinterpreting her preference, even if she did not technically make it a mandate. The look in her eyes sends your heart racing in fearful excitement.<br>
<br>
"@@.npc_manager;Ah! Look at us, blathering on over a little, albeit wondrous, makeover. It is time to get back to work. I would extend my further apologies for the accident you suffered but, well... I think it all ended up working out MUCH for the better. Have a productively wonderful afternoon!@@"<br>
<br>
<<set _lunchEnd = setup.setNextDate($now, 0, $player.work.time_midday.hour, $player.work.time_midday.minutes)>>
<<set _tmpSeconds = setup.secondsToDate($now,_lunchEnd)>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Go back to your desk." _tmpSeconds>>]
</div>/*#
#desc: retreat from lunchroom after being spilt on
#status: FINISHED 0.4.0.0
#ignore_spell: famish
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
<<set $player.work.sendhome = true>>
<<set $player.work.sendhomedate = $now>>
<<include "endPartialShift">>
/* Note: despite the player's fuckup, shouldn't count to anger/etc. manager to give them another shot at doing things "correctely" after */
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You rush back into your antechamber, where to your surprise <<=ps(setup.getNpcName('npc_manager', 'formal'))>> seems to be checking some records behind your workplace.
<br>
<br>
"@@.npc_manager;Oh, <<=$player.first_name>>, that must be a new speed record. I did not expect you to be back so soon, and good thing because I am feeling rather famish—@@"<br>
<br>
She stops mid-word as she looks up to see you standing in the door, soaked in soup, without her lunch.<br>
<br>
<<if $player.flags.canteen_spill > 2>>
"@@.npc_manager;Really? You ruined your outfit once more and, yet again, failed to return carrying my lunch? You really ought to show more commitment to your responsibilities, but fine, you are dismissed, go home and clean yourself up for tomorrow.@@"<br>
<br>
<<printThought "Is this happening for a reason? Maybe I should soldier on next time...">><br>
<<else>>
She studies you for several moments, as your heart races nervously, and continues, "@@.npc_manager;Sooooo... would you like to tell me what happened? Impromptu Gallagher show in the hallways?@@"<br>
<br>
You are a bit stunned at the archaic reference, but swiftly explain how it wasn't your fault, but that you got spilled on in the lunchroom.<br>
<br>
"@@.npc_manager;I see, well, I am sorry it happened... though I cannot help but note that you being a little bit extra red is not exactly something that would prevent bringing me my lunch.@@"<br>
<br>
Her disappointment stings, though you have this odd feeling she is not going to hold it against you past this meeting. You apologise for your failure and offer to go back for her lunch.<br>
<br>
"@@.npc_manager;No, no, it will have gotten cold by now, in any case. I shall persevere and you... I think you had best return home to clean up. Take the remainder of the day off, I do not want a secretary looking like they were in a food fight.@@"<br>
<br>
You apologise again and thank her for the courtesy.<br>
<br>
<<printThought "Well, just great! Now I feel bad for being attacked by cuisine! I should have at least brought her the food...">><br>
<</if>>
<br>
[<<moveTo "company_lobby" "Leave for the day." 180>>]
</div>/*#
#desc: caught changing into unisex
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include "calcDressedForWork">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.stagevalues[$npc_manager.stage].sneakyCaught += 1>>
<<set $scene.caught = ($now.getUTCHours() < 7 || $now.getUTCMinutes() <= 58) &&
($npc_manager.stagevalues[1].unisexsecretary ||
$npc_manager.stage >= 3 || random(1,3) < $npc_manager.stagevalues[$npc_manager.stage].sneakyCaught)>>
/% taskId was calculated in calcDressedForWork %/
<<set $scene.timeToWork = setup.secondsToDate($now,setup.getTaskDueDate($scene.taskId))>>
<<if !$scene.beforetasklocation>>
<<set $scene.beforetasklocation = []>>
<<else>>
<<set $scene.beforetasklocation.pop()>>
<</if>>
<<set $scene.beforetasklocation.push("event_strict_unisex_1")>>
<</if>>
<<set $player.location to "Company Public Restroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You're in the process of changing when you get a text from <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>? Where are you? I was just about to ask you to run an errand, and records show you entered the lobby several minutes ago. <<if $scene.timeToWork > 1800>>I know it is yet early for your official shift to begin, but given that you are already on the premises, why<<else>>Why<</if>> are you not at your desk?@@"<br>
<br>
<<printThought "Shit, is she on to me?">><br>
<br>
<<if $scene.workUnderwear && $scene.workOuterwear && setup.checkPlayerDressed()>>
You are dressed for work.<br>
<br>
<<if $scene.caught>>
[<<moveTo "event_strict_unisex_2" "Hurry up to her office." 60 "<<set $player.cutscene.lockinventory=true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_1" "Hurry up as you are..." 60 "<<set $scene.fromUnisex=true>><<set $scene.beforetasklocation.pop()>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $player.cutscene.lockinventory=true>>">>]
<</if>>
<<else>>
You are not properly dressed for work.<br>
<br>
<<if setup.checkPlayerDressed()>>
[<<moveTo "event_manager_daily_check_stage_1" "Hurry up to work." 60 "<<set $scene.fromUnisex=true>><<set $scene.beforetasklocation.pop()>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $player.cutscene.lockinventory=true>>">>] <<hint $options "You can still change, if you hurry...">>
<<else>>
<<printThought "I should at least get dressed before I leave the bathroom...">>
<</if>>
<</if>>
</div>/*#
#desc: inspection after changing into unisex in bathroom
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcDressedForWork">>
<<completeTask $scene.taskId $now false>>
<<useClothSetPush "daily_evaluation_clothes">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You rush through the doors to the office to find <<=setup.getNpcName("npc_manager","formal")>> waiting for you with a frown on her face.<br>
<br>
"@@.npc_manager_dom;Just WHAT do you think you are doing?@@"<br>
<br>
You stutter randomly, unsure what she means until she holds up a print-out showing a still image of you
<<if $scene.startWorkOuterwear>>
in the company restroom wearing quite unfeminine underthings...
<<else>>
walking through the front door of the building... wearing masculine attire.
<<if !$scene.startWorkUnderwear>>
She flips to another page, this one showing you in the company restroom wearing quite unfeminine underthings...
<</if>>
<</if>>
<br><br>
"@@.npc_manager_dom;THIS! I was waiting for you to come up after your strange dalliance, so I checked the security logs and.@@" She all but fumes. "@@.npc_manager;Do you not understand your uniform requirements? Clearly you do, given that you are dressed in them now... and yet you arrived to work improperly attired! What if someone had seen you? I must remind you that you work in a representative position, what do you think they would say if they saw you, MY personal <<if $fetish.sissy>>SISSI <</if>>Secretary wandering around so disgustingly out of uniform? How it would reflect on you, on the company, on ME?@@"<br>
<br>
[<<moveTo "event_strict_unisex_3" "Point out that it's just clothing..." 300 "<<set $scene.beg=false>>">>]<br>
[<<moveTo "event_strict_unisex_3" "Just jump straight to begging her forgiveness." 300 "<<set $scene.beg=true>>">>]
</div>/*#
#desc: change into male clothing for unisex punishment
#status: FINISHED 0.8.5.0
#ignore_spell: t
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.beforetasklocation.pop()>>
<<set $scene.beforetasklocation.push("room_office_sissy_secretary_work_morning_start")>> /% a bit janky... %/
<<if $scene.beg>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<set _maleData = []>>
<<for _i, _item range $clothSetsInt.male_prework.data>>
<<if setup.getItemObj(_item).tags.includes("male")>>
<<set _maleData.pushUnique(_item)>>
<</if>>
<</for>>
<<set _maleBase = ["shirt", "boxershorts", "socks", "tie", "shirt", "b_trousers", "shoes_black"]>>
<<for _i, _item range _maleBase>>
<<if !_maleData.includes(_maleBase)>>
<<if setup.checkItemInInventory(_item)>>
<<set _maleData.pushUnique(_item)>>
<<else>>
<<set _genItem = setup.getItemInventorySlotTag(setup.getItemObj(_item).specific, "male")>>
<<if _genItem>>
<<set _maleData.pushUnique(_genItem)>>
<</if>>
<</if>>
<</if>>
<</for>>
<<set $clothSetsInt.male_prework.data = _maleData>>
<</if>>
<<set _allWorn = true>>
<<for _i, _item range $clothSetsInt.male_prework.data>>
<<if !(setup.getItemObj(_item).tags.includes("male") && setup.checkItemWorn(_item))>>
<<set _allWorn = false>>
<<break>>
<</if>>
<</for>>
<<set _nonMaleWorn = false>>
<<for _slot, _item range $wornClothing>>
<<if !setup.getItemObj(_item).tags.includes("male") && setup.checkItemWorn(_item)>>
<<set _nonMaleWorn = true>>
<<break>>
<</if>>
<</for>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.beg>>
You decide to abandon all decorum and immediately drop to your knees to beg her forgiveness.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> glowers at you for what feels like forever before finally speaking. "@@.npc_manager;Get up. As satisfied as I may be that you have recognised your failure, I fear it is not from true understanding, but mere misguided hope to avoid punishment for such. While the fear of punishment motivating proper behaviour is certainly good, the fact that it did not do so in this case, that you would fail so incredibly spectacularly and then beg forgiveness in an effort to dodge consequences...@@" She sighs.
<<else>>
You nervously point out that it's just clothing and-<br>
<br>
You do not even finish the sentence before <<=setup.getNpcName("npc_manager","formal")>> cuts you off.<br>
<br>
"@@.npc_manager_dom;JUST clothing? Oh, and how do you think it would would be if I showed up to an investor meeting wearing clown shoes and a toga? Hmm? Or if you appeared at a friend's wedding wearing nothing but a thong and a ripped t-shirt?@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> is already steamrolling on before you can even form a reply.<br>
<br>
"@@.npc_manager_dom;Just clothing! The sheer laughably ludicrous idiocy! Your uniform is selected specifically to present a certain picture to those fellow employees you interact with, as well as reinforce your own sense of duty. That you fail to realise such...@@" She takes a deep breath and seems to calm down, if only slightly.
<</if>>
"@@.npc_manager;Really, it is my fault. I took on the responsibility of teaching you to be a proper <<if $fetish.sissy>>SISSI <</if>>Secretary, and it is my responsibility to guide you along that path. That you would make such a pedestrian error... clearly, I have been too lenient. I have already updated security records and you will not be allowed into the building improperly attired, but that is a medium-term solution. In the long term I hope that you come to understand the incredible folly of your actions, but, in the short term... well, there is no getting around the obvious fact that punishment is in order.@@"<br>
<br>
You nervously look up at her as she seems to consider what form this punishment will take.<br>
<br>
"@@.npc_manager;Yes, I have just the thing. Remove everything, including your underwear, and put just your male clothing back on. All of it, whatever scraps of masculine thread you are carrying — put them all on. I want to see how you look in this utterly improper dress.@@"<br>
<br>
You hesitate and look up at her in concerned confusion.<br>
<br>
"@@.npc_manager;Have you been rendered deaf? Understanding is not required, only obedience. Get changed!@@"<br>
<br>
<<if _allWorn>>
[<<moveTo "event_strict_unisex_4" "Continue..." 180 "<<set $scene.obey=true>>">>]
<<else>>
<<if $options.ezchange>>
[<<moveTo "event_strict_unisex_4" "Change into purely masculine attire." 180 "<<useClothSetPop 'male_prework'>><<useClothSetPush 'male_prework'>><<set $scene.obey=true>>">>]<br>
<<else>>
<<if _nonMaleWorn>>
<<printThought "She said to ONLY wear my masculine attire...">><br>
<br>
<</if>>
<<hint $options "You can change clothes in the inventory.">><br>
<</if>>
[<<moveTo "event_strict_unisex_4" "This is a trick, refuse!" 180 "<<set $scene.obey=false>>">>]
<</if>>
</div>/*#
#desc: prepare for unisex strict punishment
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if !$scene.obey>>
<<set _maleData = []>>
<<for _i, _item range $clothSetsInt.male_prework.data>>
<<if setup.getItemObj(_item).tags.includes("male")>>
<<set _maleData.pushUnique(_item)>>
<</if>>
<</for>>
<<set _maleBase = ["shirt", "boxershorts", "socks", "tie", "shirt", "b_trousers", "shoes_black"]>>
<<for _i, _item range _maleBase>>
<<if !_maleData.includes(_maleBase)>>
<<if setup.checkItemInInventory(_item)>>
<<set _maleData.pushUnique(_item)>>
<<else>>
<<set _genItem = setup.getItemInventorySlotTag(setup.getItemObj(_item).specific, "male")>>
<<if _genItem>>
<<set _maleData.pushUnique(_genItem)>>
<</if>>
<</if>>
<</if>>
<</for>>
<<set $clothSetsInt.male_prework.data = _maleData>>
<</if>>
<<set _allWorn = true>>
<<for _i, _item range $clothSetsInt.male_prework.data>>
<<if !(setup.getItemObj(_item).tags.includes("male") && setup.checkItemWorn(_item))>>
<<set _allWorn = false>>
<<break>>
<</if>>
<</for>>
<<set _nonMaleWorn = false>>
<<for _slot, _item range $wornClothing>>
<<if _item == "wrist_cuffs_steel">>
<<continue>>
<</if>>
<<if !setup.getItemObj(_item).tags.includes("male") && setup.checkItemWorn(_item)>>
<<set _nonMaleWorn = true>>
<<break>>
<</if>>
<</for>>
<<if _allWorn && !_nonMaleWorn>>
<<set $scene.obey=true>>
<</if>>
<<if $scene.obey>>
<<addItem "wrist_cuffs_steel">>
<<wearItem "wrist_cuffs_steel" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You nervously change back into your male clothes. <<=setup.getNpcName("npc_manager","formal")>> does not make any effort to conceal the look of disgust on her face, but nor does she tell you to stop.<br>
<br>
"@@.npc_manager;You know, I was almost feeling a touch of leniency... but seeing you like this... well it is clear that leniency is the last thing you need. Remember, this is for your education. The pleasure I take in administering your punishment is primarily from knowing that it will help you in becoming more suited for your duties.@@"<br>
<br>
As she talks she walks over to her desk, tapping a button and pulling something from a drawer. You hear a motor whir above you as a chain lowers to just within arms reach above your head. You're still trying to puzzle out what it's for when <<=setup.getNpcName("npc_manager","formal")>> slaps a pair of cuffs on your wrists and attaches them above your head. You realise that you're all but helpless, but it's too late, your struggles are in vain — doubly so when she walks back to the desk to adjust things so that you are forced to either hang in the air or stand on your tiptoes.<br>
<br>
"@@.npc_manager;Perfect, you know your feet look simply lovely stretched out like that. You would be a natural in heels... but I get ahead of myself.@@"<br>
<br>
You're still struggling with your balance as you watch her retrieve a long, intimidating leather whip from a cabinet and walk over to stand in front of you.<br>
<br>
She raises your chin with the coiled whip and smiles. "@@.npc_manager;You should be able to guess what I am about to do... but, given your prior failure, I would rather leave no gaps for you to fail to understand the lesson at hand. This masculine attire that you wear... it is an abomination. A blight upon your otherwise lovely form, and a sin the wearing of which that should leave you feeling off-balance and in pain. We have already attended to the former and now... now we will handle the latter.@@"<br>
<br>
She steps away and unfurls the whip with a flourish. "@@.npc_manager;I am going to whip those disgusting clothes off of you, and through that pain you will not just learn to associate the slightest scrap of masculine attire with agony, but undergo a literal metamorphosis as your ugly shell is peeled away to reveal the lovely creature beneath.@@"<br>
<br>
She moves into a stance...<br>
<br>
[<<moveTo "event_strict_unisex_5" "Brace yourself." 600>>]
<<else>>
You sense a trick and shake your head, refusing to change out of uniform.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows as she takes a step closer to you.<br>
<br>
"@@.npc_manager;What, do you think this is impressing me? I am not the sort to play games as to what is the correct thing to do. The first rule in this office is that I am to be obeyed instantly, in all things. I have given you a very clear instruction...@@" She looks you dead in the eye as your internal organs flip and spin. "@@.npc_manager_dom;Now CHANGE.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_strict_unisex_4" "Change into purely masculine attire as instructed." 180 "<<useClothSetPop 'male_prework'>><<useClothSetPush 'male_prework'>><<set $scene.obey=true>>">>]<br>
<<else>>
<<hint $options "You can change clothes in the inventory.">>
<</if>>
<</if>>
</div>/*#
#desc: punished for changing into unisex
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 9 'terrible' $SEEN_FRIEND>>
<<removeEverythingButUnderwear>>
<<wearItem "wrist_cuffs_steel" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
From the first lash of the whip you are trying to escape, but that merely adds the dull ache of your weight pulling against your shoulders and wrists to the sharp pain of the red lines soon criss-crossing your body.<br>
<br>
As you twist and howl you have two realisations — first to wonder what the other inhabitants of the floor think is going on.<br>
<br>
<<printThought 'Hell, knowing <<=setup.getNpcName("npc_manager","formal")>>, she probably had the room soundproofed for just such an occasion... unless this really is just standard operating procedure at this crazy company...'>><br>
<br>
The second thought is a secret admiration for <<=ps(setup.getNpcName("npc_manager","formal"))>> skill. Despite the speed of her near-constant blows, and the stinging impact of each strike, you feel each hit dampened by the padding of fabric, even as your clothes steadily rip and tear and begin to fall away.<br>
<br>
<<if setup.checkNaked()>>
As you spin and hang and cry out and become steadily more exposed you start to yearn for the nudity, until the last of your masculine clothing falls to the ground, your lack of underthings leaving you completely exposed...<br>
<br>
As the last scrap of clothing falls to the floor you are left without an answer, was it just that you wanted the punishment to be over... or was <<=ps(setup.getNpcName("npc_manager","formal"))>> lesson successful? Have you started to associate pain with the mere idea of dressing in a masculine manner?
<<else>>
As you spin and hang and cry out and become steadily more exposed you start to yearn for the nudity, until the last of your masculine outer wear falls to the ground, leaving you in naught but your underthings...
<</if>>
<br><br>
<<printThought "Please, get rid of these clothes... just so the pain will stop... that's all I want... right?">><br>
<br>
[<<moveTo "event_strict_unisex_6" "Continue." 120>>]
</div>/*#
#desc: punished for changing into unisex - underwear
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.wasNaked = setup.checkNaked()>>
<<set $player.sec_style.clothing.unisex = "strict">>
<<set $npc_manager.stagevalues[2].no_change = true>>
<<set _x = setup.clearThoughtList()>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1'>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<include "addSexStoreOpeningEvent">>
<<set _x = setup.clearThoughtList()>>
<<setThreshold "bdsm" "manager_upbringing" "unisex_whipped">>
<<applyExperience 'bdsm' 9 'terrible' $SEEN_FRIEND>>
<<destroyMaleClothing $player $now false>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.wasNaked>>
<<=setup.getNpcName("npc_manager","formal")>> chuckles softly as you dangle naked. "@@.npc_manager;Well, at least you did something correct, in that there is no sign of any nasty masculine underthings.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> shows off even greater control as she meticulously carves away at your underthings, pausing between blows, seeming to savour the final few moments before she finishes scouring the last of the masculine clothing from your body.<br>
<br>
As the last scrap of clothing falls to the floor you are left without an answer, was it just that you wanted the punishment to be over... or was <<=ps(setup.getNpcName("npc_manager","formal"))>> lesson successful? Have you started to associate pain with the mere idea of dressing in a masculine manner?
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> unclips your wrists and you collapse to the ground. Nearly your entire body — from the base of your neck to your ankles stings with pain.<br>
<br>
A polished shoe steps just in front of your face. "@@.npc_manager;You should know what to do while you are down there.@@" She states.<br>
<br>
<<if setup.getWillpower()>>
[<<moveTo "event_strict_unisex_7" "Kiss her foot." 300 "<<set $scene.kiss=true>><<spendWillpower 1>>">>] <<hint $options "Pushing past the pain will cost willpower.">><br>
<<else>>
[@@.link_locked;You are in too much pain and mental anguish to force yourself to move.@@]<br>
<</if>>
[<<moveTo "event_strict_unisex_7" "Just lie there in agony." 300 "<<set $scene.kiss=false>>">>]
</div>/*#
#desc: post-punishment for strict unisex
#status: FINISHED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "wrist_cuffs_steel" true>>
<<deleteItem "wrist_cuffs_steel">>
<<if $scene.kiss>>
<<setThreshold 'submission' 'submissive_secretary' 'strict_punishment'>>
<<setThreshold 'foot' 'secretary_foot' 'strict_foot'>>
<<applyExperience 'submission' 8 'terrible' $SEEN_FRIEND>>
<<applyExperience 'foot' 5 'little' $SEEN_FRIEND>>
<</if>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<addItemSet 'unisex_office'>>
<<if ["forced", "strict"].includes($player.sec_style.clothing.underwear)>>
<<addItem 'sissy_panties_pink'>>
<<addItem 'sissy_bra_pink'>>
<<addItem 'sissy_stockings_pink'>>
<<else>>
<<addItemSet 'satin_lingerie_pink'>>
<</if>>
<</if>>
<<include "calcDressedForWork">>
<<completeTask $scene.taskId $now false>>
<<if $scene.workUnderwear && $scene.workOuterwear && setup.checkPlayerDressed()>>
<<initRoom>>
<<switch $npc_manager.stage>>
<<case 1>>
<<moveTo "event_manager_daily_check_stage_1_finalize">>
<<case 2>>
<<moveTo "event_manager_daily_check_stage_2_finalize">>
<<case 3>>
<<moveTo "event_manager_daily_check_stage_3_finalize">>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.kiss>>
Though you are already in agony the thought of what <<=setup.getNpcName("npc_manager","formal")>> might do should you disobey spurs you to push yourself up to your elbows and lean in to kiss the tip of her shoe.<br>
<br>
"@@.npc_manager;Good boy. Perhaps you are learning, after all?@@"<br>
<br>
She walks away and you slump back to the ground, unable to find a position that does not cause the carpet to rub painfully against the multitudinous marks left by the whip.
<<else>>
You are in too much pain to move, merely groaning softly in response to her request.<br>
<br>
"@@.npc_manager;Hmm... was I too hard on you? We really must toughen you up, there are far more severe punishments in store for you, if you continue your current path of disobedience.@@"<br>
<br>
She waits a moment longer for you to muster the energy to obey before turning and walking away.
<</if>>
<br><br>
"@@.npc_manager;You may dress and return to your desk. Remember this lesson, and also that you will no longer be permitted entrance into the building wearing the slightest hint of masculine attire.@@"<br>
<br>
You finally raise your head enough to look up to find her smiling back as she finishes putting the whip away. "@@.npc_manager;Remember, this is all for your own good. The faster you can internalise your duties, the better you will be able to perform. It would be my advice to embrace my instructions with greater diligence and enthusiasm but, should you fail... well, I will be there to help guide you on your way.@@"<br>
<br>
You lay there for another minute or so before recovering enough to crawl past the shredded remains of your male attire and to a neatly folded unisex outfit, shoes, and feminine underwear.<br>
<br>
<<if $options.ezchange>>
<<switch $npc_manager.stage>>
<<case 1>>
[<<moveTo "event_manager_daily_check_stage_1_finalize" "Put your uniform back on and get to work." 180 "<<set $player.cutscene.lockinventory=true>><<wearItemSet 'unisex_office'>><<if ['forced', 'strict'].includes($player.sec_style.clothing.underwear)>><<wearItem 'sissy_panties_pink' true>><<wearItem 'sissy_bra_pink' true>><<wearItem 'sissy_stockings_pink' true>><<else>><<wearItemSet 'satin_lingerie_pink'>><</if>>">>]<br>
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Put your uniform back on and get to work." 180 "<<set $player.cutscene.lockinventory=true>><<wearItemSet 'unisex_office'>><<if ['forced', 'strict'].includes($player.sec_style.clothing.underwear)>><<wearItem 'sissy_panties_pink' true>><<wearItem 'sissy_bra_pink' true>><<wearItem 'sissy_stockings_pink' true>><<else>><<wearItemSet 'satin_lingerie_pink'>><</if>>">>]<br>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Put your uniform back on and get to work." 180 "<<set $player.cutscene.lockinventory=true>><<wearItemSet 'unisex_office'>><<if ['forced', 'strict'].includes($player.sec_style.clothing.underwear)>><<wearItem 'sissy_panties_pink' true>><<wearItem 'sissy_bra_pink' true>><<wearItem 'sissy_stockings_pink' true>><<else>><<wearItemSet 'satin_lingerie_pink'>><</if>>">>]<br>
<</switch>>
<<else>>
<<hint $options "You can change clothes in the inventory.">>
<</if>>
</div><<set $scene.voluntaryScene = "">>
<<set $scene.wrongMakeup = false>>
<<switch setup.checkOutsideDecencyReason()>>
<<case "female">>
<<set $scene.outfitTag = "female">>
<<case "unisex">>
<<set $scene.outfitTag = "unisex">>
<<default>>
<<if $player.sec_style.clothing.female && setup.checkVisibleClothingTag('latex') > 0 && !$player.sec_style.clothing.latex>>
<<set $scene.outfitTag = "latex">>
<<elseif setup.checkVisibleClothingTag('female') > 10>>
<<set $scene.outfitTag = "female">>
<<else>>
<<set $scene.outfitTag = setup.analyzeWornTags(['female','male','unisex'])>>
<</if>>
<</switch>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<<if setup.checkPlayerDecency() && setup.checkPlayerDressed()>>
<<switch $scene.outfitTag>>
<<case 'unisex'>>
<<if setup.getFutureMakeup($player,'makeup_unisex_visible')>>
<<if $player.sec_style.clothing.unisex == "">>
<<if false>><<moveTo "voluntaryUnisex">><</if>>
<<set $scene.voluntaryScene = 'voluntaryUnisex'>>
<</if>>
<<elseif $npc_manager.stage == 1 && $player.sec_style.clothing.unisex == "enthusiast" && !setup.hasThreshold("feminization", "enthusiast", "unisex")>>
<<if false>><<moveTo "enthusiastUnisex">><</if>>
<<set $scene.voluntaryScene = 'enthusiastUnisex'>>
<<else>>
<<set $scene.wrongMakeup=true>>
<</if>>
<<case 'female'>>
<<if $npc_manager.stage >= 2>>
<<if setup.checkVisibleClothingTag('maid') > 60 && !$player.sec_style.clothing.maid>>
<<if false>><<moveTo "voluntaryMaid">><</if>>
<<set $scene.voluntaryScene = 'voluntaryMaid'>>
<<else>>
<<if setup.getFutureMakeup($player,'makeup_modest_female_visible')>>
<<if !$player.sec_style.clothing.female && $player.sec_style.clothing.unisex>>
<<if false>><<moveTo "voluntaryFemale">><</if>>
<<set $scene.voluntaryScene = 'voluntaryFemale'>>
<<elseif $scene.makeup != "" && $scene.makeup != "nomakeupmakeup" && setup.getTotalValue("feminization") >= 13 && setup.getValueCap('feminization') < 15>>
<<if false>><<moveTo "fullMakeupFemale">><</if>>
<<set $scene.voluntaryScene = 'fullMakeupFemale'>>
<</if>>
<<elseif $scene.makeup != "" && $scene.makeup != "nomakeupmakeup" && setup.getTotalValue("feminization") >= 13 && setup.getValueCap('feminization') < 15>>
<<if false>><<moveTo "fullMakeupFemale">><</if>>
<<set $scene.voluntaryScene = 'fullMakeupFemale'>>
<<else>>
<<set $scene.wrongMakeup=true>>
<</if>>
<</if>>
<<elseif $npc_manager.stage == 1 && $player.sec_style.clothing.female == "enthusiast" && !setup.hasThreshold("feminization", "enthusiast", "female")>>
<<if false>><<moveTo "enthusiastFemale">><</if>>
<<set $scene.voluntaryScene = 'enthusiastFemale'>>
<</if>>
<<case 'latex'>>
<<if false>><<moveTo "voluntaryLatex">><</if>>
<<set $scene.voluntaryScene = 'voluntaryLatex'>>
<</switch>>
<<if $player.sec_style.clothing.sissy_choker == "" && setup.isItemEquipped('choker_sissy')>>
<<if false>><<moveTo "voluntarySissyChoker_1">><</if>>
<<set $scene.voluntaryScene = "voluntarySissyChoker_1">>
<</if>>
<<if !($scene.voluntaryScene == "" && $scene.outfitTag == "female" && $player.sec_style.clothing.female == "")>>
<<if $scene.makeup != "" && $scene.voluntaryScene == "" && $player.sec_style.clothing.makeup == "" &&
$player.sec_style.clothing.unisex != "" && $scene.makeup != "nomakeupmakeup">>
<<if false>><<moveTo "voluntaryMakeup">><</if>>
<<set $scene.voluntaryScene = 'voluntaryMakeup'>>
<<if setup.getFutureMakeup($player,'makeup_modest_female_visible')>>
<<set $scene.wrongMakeup=true>>
<</if>>
<</if>>
<</if>>
<<if $scene.voluntaryScene != "">>
<<set $scene.orgLocation = $player.plocation>>
<<if ( (getUTCHours($now)>=6) && (getUTCHours($now) <= 20) )>>
<<set $scene.sunlight = true>>
<<else>>
<<set $scene.sunlight = false>>
<</if>>
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
<<if $scene.sunlight>>
<<set $scene.tmpImage = "./images/locations/city_skyline.png">>
<<else>>
<<set $scene.tmpImage = "./images/locations/city_skyline_night.png">>
<</if>>
<<case 'room_mall_apparel_store_changing_booths'>>
<<set $scene.tmpImage = "./images/locations/mall_fashion_store.png">>
<<case 'room_mall_lingerie_shop_changing_booth'>>
<<set $scene.tmpImage = "./images/locations/mall_lingerie_shop.png">>
<</switch>>
<</if>>
<</if>><<switch $scene.voluntaryScene>>
<<case "voluntaryUnisex">>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
Glancing at your reflection, you do a momentary double take. The outfit may technically be unisex but on your body it brings out a decidedly feminine profile. Even though nobody is liable to really pay attention going out like this of your own volition seems like quite a step...<br>
<br>
<<printThought "I can't go out in public like this... can I?">>
<<else>>
You look at your reflection. The outfit may technically be unisex but on your body it brings out a decidedly feminine profile. A weird sensation comes over you looking at the androgynous person staring back. A short while ago you would have never considered wearing something like this, but now, after what you've done well, it seems almost natural.
<</if>>
<br><br>
<<case "enthusiastUnisex">>
You look at your reflection. The outfit may technically be unisex but on your body it brings out a decidedly feminine profile. A weird sensation comes over you looking at the androgynous person staring back. Is this what you wanted when you agreed to dress like this for your new job? It must have been... yet your heart is still racing, excitement... fear... you aren't quite sure which as you look towards the door... and the outside.<br>
<br>
<<case "voluntaryFemale">>
Glancing at your reflection you do a momentary double take. Looking back at you is a
<<switch setup.analyzeWornTags(['casual','office','formal','slutty','cute'])>>
<<case 'casual'>>
casually dressed
<<case 'office'>>
professionally attired
<<case 'formal'>>
formally attired
<<case 'slutty'>>
scandalously dressed
<<case 'cute'>>
cute
<</switch>>
woman.
<<if !setup.getPresetRequirement($player,'modest_female_visible','outside')>>
You stare at your reflection for a moment, in this outfit you really do look like a girl. Dressing up like this in the privacy of your apartment is one thing, but going out like this, as a woman seems like quite another step entirely.<br>
<br>
<<printThought "I don't dare go out in public like this... do I?">>
<<else>>
You stare at your reflection for a moment, in this outfit you really do look like a girl. Dressing up like this in the private is one thing, but going out like this seems like quite another step, and yet one that seems almost natural, as if your foot was already raised and reaching forward and all you have to do is put your weight down on it...
<</if>>
<br><br>
<<case "enthusiastFemale">>
Glancing at your reflection you do a momentary double take. Looking back at you is a
<<switch setup.analyzeWornTags(['casual','office','formal','slutty','cute'])>>
<<case 'casual'>>
casually dressed
<<case 'office'>>
professionally attired
<<case 'formal'>>
formally attired
<<case 'slutty'>>
scandalously dressed
<<case 'cute'>>
cute
<</switch>>
woman.<br>
<br>
The reality of what you agreed to with your new boss crashes into you. <<printThought "This is what I asked for... and... I do look cute... am I ready for this?">><br>
<br>
<<case "voluntaryMaid">>
You look at your reflection — you are dressed as an ultra-feminine,
<<switch setup.analyzeWornTags(['fetish','slutty','bold'])>>
<<case 'fetish'>>
fetishistic latex maid.
<<case 'slutty'>>
slutty maid.
<<case 'bold'>>
french maid.
<</switch>>
<<if setup.getTotalValue("feminization") < 10>>
<br><br>
<<printThought "No, this is too much, going outside like this... no, no way am I brave enough for that!">>
<<else>>
You are almost transfixed by your stunning attire, just putting it on took effort and seems to have stifled any visible shreds of masculine affect, but wearing it in public would be a full on leap into femininity... do you dare?
<</if>>
<br><br>
<<case 'voluntaryMakeup'>>
You look at your reflection — and the lovely feminine face looking back at you. Though it is painted on, a part of you wants this to be your natural state... are you ready to go out in public with your "true" face?<br>
<br>
<<case 'fullMakeupFemale'>>
You look at your reflection — from the top of your head to the bottom of your soles, clothes to makeup you look, and feel, feminine. Your heart beats slightly faster, not in fear, but in excitement. This is you, this is what you have become... and now it's time to show the world.<br>
<br>
<<case 'voluntarySissyChoker_1'>>
You look at your reflection — or, more specifically, your throat.
<<if $fetish.sissy>>
SISSI the collar practically shouts — from its pink and lace frills to the literal word spelled out in rhinestones.
<<else>>
From its pink trim to its lace frills your choker screams an extreme form of soft femininity...
<</if>>
To wear something like this in public would take, well, courage doesn't quite feel like the correct word, but it would take something...<br>
<br>
<<case "voluntaryLatex">>
You consider your reflection, and the way the light shines and reflects off of your latex outfit... are you really ready to wear something so tight, shiny and sexy in public?<br>
<br>
<<printThought "This looks hot... but do I dare wear it outside?">><br>
<br>
<<default>>
<<if $scene.outfitTag == 'female' && $npc_manager.stage < 2 && $player.sec_style.clothing.female != "enthusiast">>
<<printThought "Things have been pretty crazy of late, especially at work. I think I'll stick to more neutral attire for going out.">><br>
<br>
<</if>>
<</switch>><<if $scene.hasOwnProperty("voluntaryScene") && $scene.voluntaryScene != "">>
<<if $scene.voluntaryScene == "fullMakeupFemale">>
[<<moveTo $scene.voluntaryScene "Stride forth." 60>>]
<<elseif $scene.voluntaryScene == "enthusiastFemale" || $scene.voluntaryScene == "enthusiastUnisex">>
[<<moveTo $scene.voluntaryScene "This is what you agreed to... and what you want?" 180>>]<br>
<<else>>
[<<moveTo $scene.voluntaryScene "Ponder what to do..." 60>>]
<</if>>
<<elseif $scene.wrongMakeup && $player.sec_style.clothing.makeup == "">>
[@@.link_locked;No... even if I dared to go outside dressed like this... not with this makeup!@@]
<<elseif !setup.checkOutsideDecency()>>
<<include "calcOutsideDecencyReason">>
[@@.link_locked;<<=_outsideDecencyReason>>@@]
<</if>>/*#
#desc: player want to leave in unisex clothes
#status: FINISHED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<if !setup.checkPlayerDressed()>>
<<printThought "Hmm, ignoring style I am not remotely dressed to go out in public!">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif setup.analyzeWornTags(['female','unisex','male']) == "female">>
<<printThought "Unisex is one thing, but wearing something fully female, there's no way I can do that. Yet...">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif setup.analyzeWornTags(['female','unisex','male']) != "unisex" && setup.checkOutsideDecency()>>
<<printThought "Hmm, now that I've changed going out in public doesn't seem like such a big deal...">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif $scene.makeup == "normalmakeup" || $scene.makeup == "nomakeupmakeup">>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
You're lost in your thoughts, once again. You're standing here, in your new outfit, wearing makeup, just centimetres away from where some stranger could see you. True, the last days have been strange, to say the least, but still, you continued. Are you starting to finally give in to all the mental onslaught, or could it be that this has always been a part of yourself that you were trying to hide beneath a layer of sarcasm and irony? You don't know. You don't know what to think anymore.<br>
<br>
<<if setup.getWillpower() >0>>
<<if setup.getTotalValue("feminization") >= 3>>
[<<moveTo "voluntaryUnisex_2" "Screw this! I am pushing through!" 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<<else>>
[<<moveTo $scene.orgLocation "This is too much, wearing feminine things under my clothes is still too, wearing something like this on the outside... no, I'm not ready." 60>>]
<</if>>
<<else>>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]
<</if>>
<<else>>
You're somewhat mesmerised by your reflection. On the one hand what you're wearing feels remarkably comfortable and strangely... natural? And the makeup seems to only enhance your beauty, on the other you feel like wearing something like this outside, in public — well, it would be a significant step. Though what else lies down that path you are not quite certain...<br>
<br>
[<<moveTo "voluntaryUnisex_2" "Let's do this..." 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<</if>>
<<elseif $scene.makeup != "">>
You look at your reflection. Perhaps you could go out in this outfit, it's a touch feminine, but overall passes for androgynous, but this makeup... nope, no way you're letting anyone else see you done up like this!<br>
<br>
[<<moveTo $scene.orgLocation "Nope, nope nope." 60>>]
<<else>>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
You're lost in your thoughts, once again. You're standing here, in your new outfit, just centimetres away from where some stranger could see you. True, the last days have been strange, to say the least, but still, you continued. Are you starting to finally give in to all the mental onslaught, or could it be that this has always been a part of yourself that you were trying to hide beneath a layer of sarcasm and irony? You don't know. You don't know what to think anymore.<br>
<br>
<<if setup.getWillpower() >0>>
<<if setup.getTotalValue("feminization") >= 3>>
[<<moveTo "voluntaryUnisex_2" "Screw this! I am pushing through!" 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<<else>>
[<<moveTo $scene.orgLocation "This is too much, wearing feminine things under my clothes is still too, wearing something like this on the outside... no, I'm not ready." 60>>]
<</if>>
<<else>>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]
<</if>>
<<else>>
You're somewhat mesmerised by your reflection. On the one hand what you're wearing feels remarkably comfortable and strangely... natural? ON the other you feel like wearing something like this outside, in public — well, it would be a significant step. Though what else lies down that path you are not quite certain...<br>
<br>
[<<moveTo "voluntaryUnisex_2" "Let's do this..." 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: player want to leave in unisex clothes
#status: FINISHED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.makeup != "">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'modestly_made_up'>>
<<set $player.sec_style.clothing.makeup = "voluntary">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<<else>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'unisex_outside'>>
<</if>>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
<<spendWillpower 1>>
<</if>>
<<set $player.willpower.bonus += 1>>
<<set $player.sec_style.clothing.unisex = "voluntary">>
<<set _x = setup.clearThoughtList()>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<include "addSexStoreOpeningEvent">>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR $scene.tmpImage>>
<div id="invframe" class="scrolltext">
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
Trying to focus at the task at hand drains your willpower fast, even though the current task should be simple enough. Take a step... outside. Just outside. You're afraid. Of ridicule. Of harassment. Of being cast out and alone. Just a little step. You're having troubles controlling your hand, due the trembling getting stronger as you approach the
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
door.
<<default>>
drape.
<</switch>>
<<else>>
Even though it seemed so simple in your head, the reality of things as you reach for the
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
door
<<default>>
drape
<</switch>>
is something quite different. You don't know why, but your heart starts racing, despite how previously walking outside like this seemed like it would be the simplest of things...
<</if>>
<br><br>
<<printThought "Focus. You're being irrational. Nothing bad is going to happen!">><br>
<br>
Holding your breath, like you're going for a long dive, you pull through. Heart pounding in your chest, you step out into the
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
<<if $scene.sunlight>>
sunlight, well, not quite, you're way too surrounded by skyscrapers for light to be anything but a flat, smog-tinged grey, but you're technically outdoors...
<<else>>
starlight, well, if you could see stars past the one two three of light pollution, smog and hundred-floor buildings reaching up towards the heavens.
<</if>>
Either way, you're in public wearing an outfit somewhat less than masculine<<if $scene.makeup !="">> and wearing makeup to boot<</if>>. Nobody else on the street seems to be paying you much mind, but still... as your pulse slows and you take your first steps you feel a strange calmness coming over you, that your stress was unfounded and that, in fact, everything is fine...
<<case 'room_mall_apparel_store_changing_booths'>>
spotlight of a well lit store. Either way, you're in public wearing an outfit somewhat less than masculine<<if $scene.makeup !="">> and wearing makeup to boot<</if>>. Nobody else in the store seems to be paying you much mind, but still... as your pulse slows and you take your first steps you feel a strange calmness coming over you, that your stress was unfounded and that, in fact, everything is fine...
<<case 'room_mall_lingerie_shop_changing_booth'>>
spotlight of a well lit store. Either way, you're in public wearing an outfit somewhat less than masculine<<if $scene.makeup !="">> and wearing makeup to boot<</if>>. Nobody else on the store seems to be paying you much mind, and those who do seem to be delighted by your decision. Fritz, who goes now by the fancy name Francine even sends an approving nod your way. You take your first steps you feel a strange calmness coming over you, that your stress was unfounded and that, in fact, everything is fine...
<</switch>>
Even though you feel temporarily drained you think your potential got stronger today.<br>
<br>
[<<moveTo $scene.voluntaryFollowupScene "Continue." 90>>]
</div>/*#
#desc: player want to leave in female clothes
#status: FINISHED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
Glancing at your reflection you do a momentary double take. Looking back at you is a
<<switch setup.analyzeWornTags(['casual','office','formal','slutty','cute'])>>
<<case 'casual'>>
casually dressed
<<case 'office'>>
professionally attired
<<case 'formal'>>
formally attired
<<case 'slutty'>>
scandalously dressed
<<case 'cute'>>
cute
<</switch>>
woman. You stare at your reflection for a moment, in this outfit you really do look like a girl. Dressing up like this in the privacy of
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
your apartment
<<case 'room_mall_apparel_store_changing_booths'>>
the changing booth
<<case 'room_mall_lingerie_shop_changing_booth'>>
the changing booth
<</switch>>
is one thing, but going out like this, as a woman seems like quite another step entirely.<br>
<br>
<<if !setup.checkPlayerDressed()>>
<<printThought "Hmm, ignoring style I am not remotely dressed to go outside!">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif setup.analyzeWornTags(['female','unisex','male']) != "female" && !["","female"].includes(setup.checkOutsideDecencyReason())>>
<<printThought "Hmm, now that I've changed going outside doesn't seem like such a big deal...">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif !setup.getPresetRequirement($player,'unisex_visible','outside')>>
<<printThought "I don't dare go out in public like this... do I?">><br>
<br>
You're lost in your thoughts, once again. You're standing here, in this outfit, with naught but a thin door between you and the eyes of the public. True, the last days have been somewhat tiring and more bonkers than anything you could have imagined would happen in your life, like ever, but still, you continued. Are you starting to finally give in to all the mental onslaught, or could it be, that this has always been a part of yourself? A part of you hidden beneath a layer of sarcasm and irony. You really don't know. You don't even know what to think anymore.<br>
<br>
<<if setup.getWillpower() >1>>
<<if setup.getTotalValue("feminization") < 7>>
[<<moveTo $scene.orgLocation "No, this is too much femininity too fast, I can barely handle what I've done before!" 60>>]
<<else>>
[<<moveTo "voluntaryFemale_2" "Screw this! I am pushing through!" 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<</if>>
<<elseif setup.getWillpower() > 0>>
[@@.link_locked;This is a big step, but if I only had a little more mental willpower I think I could...@@]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]<br>
<<else>>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]
<</if>>
<<else>>
<<printThought "I've come this far... this has to be the next logical step, right?">><br>
<br>
[<<moveTo "voluntaryFemale_2" "Step forth!" 60>>]<br>
[<<moveTo $scene.orgLocation "No, this... this is too much for now." 60>>]
<</if>>
</div>/*#
#desc: player first time public in female clothes
#status: FINISHED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstmakeup = $scene.makeup != "" && $scene.makeup != "nomakeupmakeup" && $player.sec_style.clothing.makeup == "">>
<<if $scene.firstmakeup>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'full_female_outside'>>
<<set $player.sec_style.clothing.makeup = "voluntary">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<set $player.willpower.bonus += 1>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<<else>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'female_outside'>>
<</if>>
<<if !setup.getPresetRequirement($player,'unisex_visible','outside')>>
<<spendWillpower 2>>
<</if>>
<<set $player.sec_style.clothing.female = "voluntary">>
<<set _x = setup.clearThoughtList()>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "female">>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<<set $player.willpower.bonus += 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createAdvBGR $scene.tmpImage>>
<<else>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
Taking your first step outside dressed <<if $scene.makeup != "">>and made up <</if>>as a woman has your heart trying to pound its way out of your chest. Your eyes dart up and down
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
the street, searching for a reaction from fellow pedestrians going about their business. Despite any fears you might have had nothing happens, the world around you proceeds the same as any other day. The longer things go with nothing happening the more foolish you feel just standing there and finally you walk down the steps towards the sidewalk.
<<case 'room_mall_apparel_store_changing_booths'>>
the store, searching for a reaction from fellow customers going about their business. Despite any fears you might have had nothing happens, the world around you proceeds the same as any other day. The longer things go with nothing happening the more foolish you feel just standing there and continue with your business here.
<<case 'room_mall_lingerie_shop_changing_booth'>>
the shop. And somehow you managed to overlook <<=setup.getNpcName('npc_shopkeeper', 'first')>>, eyeing you from top to button. Again you try to stand perfectly still in hopes she won't see you. Not that this ever worked in your favour, but repeated failure means you must be due success soon, right?<br>
<br>
You hear an approving "@@.npc_shopkeeper;Mhmmm!@@" from her before she continues with her sonorous voice, "@@.npc_shopkeeper;Was about fucking time darling. Your hips were made to be accentuated by clothes like that.@@"<br>
<br>
A pat on your shoulder almost knocks you off your feet, but you manage to stay your ground... somehow.<br>
<br>
"@@.npc_shopkeeper;Very nice. Very nice indeed!@@"<br>
<br>
The other customers mostly ignore what's going on over here, only Fritz, who goes now by the fancy name Francine, bestows you with a silent thumbs up.
<</switch>>
<br><br>
<<if $scene.firstmakeup>>
The fact that you are wearing makeup as well only serves to accentuate your look, and with it the intensity of your feelings. On the other hand it also granting a bit of cover so as to conceal the colour of your blushing cheeks.
<</if>>
With each step things begin to feel easier, more natural and you begin to question your prior apprehension.<br>
<br>
You continue on your way, eventually turning a corner, tangled up in your own thoughts you almost crash into someone, a <<man>> coming up just short of crashing into you before stepping aside. <<He>> tilts <<his>> head slightly with a perfunctory "ma'am" before <<he>> continues on <<his>> way.<br>
<br>
It's another few steps before you catch up with <<his>> word, a fresh jolt of excitement going through your body as you realise <<he>> just identified you as a woman... with all the things that have happened since you started your new job you aren't totally certain how to take that other than it definitely doesn't feel like a bad thing...<br>
<br>
[<<moveTo $scene.voluntaryFollowupScene "Continue." 90>>]
</div>/*#
#desc: player want to leave with visible makeup
#status: FINISHED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.clothing.female != "">>
Even after everything else you've done, going out in public wearing feminine makeup seems like another step ~ more than merely changing your clothing this seems closer to changing who you are. To adopt the image of femininity beyond mere trappings of fabric.
<<elseif $player.sec_style.clothing.unisex != "">>
You take a deep breath. Sure, your clothing has taken a turn away from masculine, but to change your face like this, to soften and feminise your features so overtly, well, that seems like another level...
<<else>>
ERROR: should not happen, unisex or female should be set by now
<</if>>
<br><br>
<<printThought "Am I ready to go out like this?">><br>
<br>
Staring at your reflection for a long time, you hardly recognise the face anymore. Almost like real life Photoshop ~ a few highlights here, some shadows there. Gone are the last traces of masculinity in your face. Wearing this in the safety of
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
your apartment
<<case 'room_mall_apparel_store_changing_booths' 'room_mall_lingerie_shop_changing_booth'>>
the changing booth
<</switch>>
is one thing, finally making a step outside is a matter of a whole other magnitude. Because deep inside you know, this pretty much seals the deal. There's no going back from this.
<br><br>
<<if setup.getWillpower() >0>>
<<if !setup.getFutureMakeup($player, 'makeup_modest_female_visible')>>
[<<moveTo $scene.orgLocation "There's makeup and then there's makeup... a more conservative style might work but this is too much." 60>>]
<<elseif setup.getTotalValue("feminization") >= 5>>
[<<moveTo "voluntaryMakeup_2" "I am ready. I've postponed this long enough. Let's go!" 60>>]<br>
[<<moveTo $scene.orgLocation "No... not yet. I am not yet ready." 60>>]
<<else>>
[<<moveTo $scene.orgLocation "Nope. I'm still not even used to gender-ambiguous clothing, changing my appearance this radically with makeup is too much." 60>>]
<</if>>
<<else>>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]
<</if>>
</div>/*#
#desc: player want to leave in makeup
#status: FINISHED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.outfitTag == "female">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'full_female_outside'>>
<<else>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'makeup_outside'>>
<</if>>
<<spendWillpower 1>>
<<set $player.sec_style.clothing.makeup = "voluntary">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<<set $player.willpower.bonus += 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createAdvBGR $scene.tmpImage>>
<<else>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
It's a bit surprising how calm you feel as you step outside wearing feminine makeup.
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'male'>>
You get one curious look, though that seems more owing to the fact that you've mixed feminine makeup with a very not-so outfit. Even that is relatively minor though and, despite your apprehension, your fellow pedestrians soon fade into the background.
<<case 'unisex'>>
With unisex attire your makeup blends in fine, tilting your overall appearance towards the feminine, but nothing really distracting. This assessment is supported by the first few people you pass on the street seeming to pay you little mind.
<<case 'female'>>
Of course the fact that your outfit is otherwise totally feminine means that it really just blends in. The most recognition you get from people on the street is a slight smile which, well, you are pretty cute...
<<default>>
ERROR: unexpected tag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
[<<moveTo $scene.voluntaryFollowupScene "Continue." 90>>]
</div>/*#
#desc: player want to leave in maid outfit
#status: FINISHED 0.7.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<include "calcTopId">>
<<initRoom>>
<<include playerMenu>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
Glancing at your reflection you do a momentary double take. You look at your reflection — you are dressed as an ultra-feminine,
<<switch setup.analyzeWornTags(['fetish','slutty','bold'])>>
<<case 'fetish'>>
fetishistic latex maid.
<<case 'slutty'>>
slutty maid.
<<case 'bold'>>
french maid.
<</switch>>
This is more than just dressing feminine, this is a uniform, a costume, a cliche of girly extreme. Dressing up like this in the privacy of
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
your apartment
<<case 'room_mall_apparel_store_changing_booths'>>
the changing booth
<<case 'room_mall_lingerie_shop_changing_booth'>>
the changing booth
<</switch>>
is one thing, but going out like this is, well, it would be another step entirely. And not a small step, at that.<br>
<br>
<<if setup.getTotalValue("feminization") < 10>>
<<printThought "No... this is too much.">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif setup.getTotalValue("bimbofication") < 8 && setup.checkVisibleClothingTag('slutty') > 25>>
<<printThought "Dressing as a maid?... maybe... dressing as this slutty of a maid? No... that's too much.">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<else>>
<<if !setup.checkPlayerDressed()>>
<<printThought "Hmm, ignoring style I am not even decent to go outside!">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif setup.checkVisibleClothingTag('maid') <= 60>>
<<printThought "Hmm, now that I've changed going outside doesn't seem like such a big deal...">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif !setup.getPresetRequirement($player,setup.getItemObj($scene.topId).req.preset[0],'outside')>>
<<printThought "I don't dare go out in public like this... do I?">><br>
<br>
You're lost in your thoughts... once again. You're standing here, a
<<switch setup.analyzeWornTags(['fetish','slutty','bold'])>>
<<case 'fetish'>>
kinky
<<case 'slutty'>>
sexy
<<case 'bold'>>
cute
<</switch>> maid, with naught but a thin door between you and the eyes of the public. True, you have become well accustomed to dressing feminine day to day but this... has all of this been a steady progression? Each trade of masculine for feminine, but another step on your journey and if so... what step could come after this one?<br>
<br>
<<if setup.getWillpower() >2>>
<<if setup.getTotalValue("feminization") < 12>>
[<<moveTo $scene.orgLocation "Nope, this is too much too fast. Wearing feminine clothing is one thing, but this? Without a special reason, nope, this is more than I can handle on my own." 60>>]
<<else>>
[<<moveTo "voluntaryMaid_2" "Yes, this is me, this is what I want to be." 60>>]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<</if>>
<<elseif setup.getWillpower() >0>>
[@@.link_locked;This is a big step, if I only had a little more willpower I think I could...@@]<br>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]<br>
<<else>>
[<<moveTo $scene.orgLocation "I... I don't have the willpower to do this..." 60>>]
<</if>>
<<else>>
<<printThought "I've come this far... this has to be the next logical step, right?">><br>
<br>
[<<moveTo "voluntaryMaid_2" "Step forth!" 60>>]<br>
[<<moveTo $scene.orgLocation "No, this... this is too much for now." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: player first time public in maid outfit
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstmakeup = $player.sec_style.clothing.makeup == "">>
<<if $scene.firstmakeup>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'full_female_outside'>>
<<set $player.sec_style.clothing.makeup = "voluntary">>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<<set $player.willpower.bonus += 1>>
<</if>>
<<setThreshold 'feminization' 'maid_feminization' 'voluntary_maid'>>
<<set _topId = setup.getItemFromType('dress')>>
<<if _topId == "">>
<<set _topId = setup.getItemFromType('strapless_dress')>>
<</if>>
<<if !setup.getPresetRequirement($player, setup.getItemObj(_topId).req.preset, 'outside')>>
<<spendWillpower 2>>
<</if>>
<<if !$player.sec_style.clothing.maid>>
<<set $player.sec_style.clothing.maid = "voluntary">>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_in'] 'latex_outfit' _nextDate>>
<<set _data = []>>
<<set _data.push(_topId)>>
<<set $clothSets.push({
"name":"Maid Outfit",
"data": _data,
"important":true,
"type" : "maid"
})>>
<</if>>
<<set $player.willpower.bonus += 1>>
<<switch setup.analyzeWornTags(['fetish','slutty','bold','sissy'])>>
<<case 'fetish'>>
<<set $scene.descriptor = 'kinky'>>
<<case 'slutty'>>
<<set $scene.descriptor = 'sexy'>>
<<case 'bold'>>
<<set $scene.descriptor = 'bold'>>
<<case 'sissy'>>
<<if $fetish.sissy>>
<<set $scene.descriptor = 'sissy'>>
<<else>>
<<set $scene.descriptor = 'frilly'>>
<</if>>
<<default>>
<<set $scene.descriptor = 'ERROR, unexpected!'>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createAdvBGR $scene.tmpImage>>
<<else>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
Taking your first step outside dressed <<if $scene.makeup != "">>and made up <</if>>as an ultra-feminine maid has your heart trying to pound its way out of your chest. Your eyes dart up and down
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
the street. You may have grown accustomed to being out and about as a woman, but in this outfit... merely dressing feminine garnered you less attention than you might have anticipated, the occasional approving glance, not much more, but this — you draw stares and turn heads, a <<=$scene.descriptor>>, cute maid mincing around town.
<<case 'room_mall_apparel_store_changing_booths'>>
the store. You may have grown accustomed to being out and about as a woman, but in this outfit... merely dressing feminine garnered you less attention than you might have anticipated, the occasional approving glance, not much more, but this — you draw stares and turn heads, employees looking at you in surprise given that the store sells no such outfit as the one you just changed into, and from the customers, well, they are all staring at the <<=$scene.descriptor>>, cute maid who is now walking across the store.
<<case 'room_mall_lingerie_shop_changing_booth'>>
the shop. You've barely taken a few steps when <<=setup.getNpcName('npc_shopkeeper', 'first')>> appears, eyeing you from top to button with a wide smile on her face.<br>
<br>
<<switch setup.analyzeWornTags(['fetish','slutty','bold'])>>
<<case 'fetish'>>
"@@.npc_shopkeeper;My, my! Look at my sexy girl! That outfit is... stunning, I shall have to look into selling them myself... and getting a few for some of my other girls, yes indeed...@@"
<<case 'slutty'>>
"@@.npc_shopkeeper;Oh my! That looks even better on you than I might have imagined. Zoe really does do such fine work and thank you for being a customer of <<printShopName 'mall_sexstore'>>!@@"
<<case 'bold'>>
"@@.npc_shopkeeper;Oh my, was there a spill somewhere?@@" She laughs in her boisterous way. "@@.npc_shopkeeper;Sorry, couldn't resist the joke. In all seriousness however... you look amazing and I can tell from that cute smile on your face that you must feel even better!@@"
<</switch>>
<br><br>
You blush at the compliment, heart racing as she steps aside.<br>
<br>
"@@.npc_shopkeeper;Well, do not let me further delay you on your cute errands, though... please tell me I can look forward to seeing you working at Cafe Newtype? I know they're hiring and you would be PERFECT.@@"<br>
<br>
You reply you will consider it and then continue on your way.
<</switch>>
<br><br>
It's a bit strange as, despite how crazy going out seemed at first with each step it feels more natural. Sure, you continue to turn heads but that's fine, right? After all, in this outfit you'd hardly be able to resist checking yourself out...<br>
<br>
[<<moveTo $scene.voluntaryFollowupScene "Continue." 90>>]
</div>/*#
#desc: player first time public in maid outfit
#status: FINISHED 0.7.2.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.willpower.bonus += 1>>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'full_female_outside'>>
<<if !$player.sec_style.clothing.female>>
<<set $player.sec_style.clothing.female = "voluntary">>
<<set _x = setup.clearThoughtList()>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "female">>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<<set $player.willpower.bonus += 1>>
<</if>>
<<if !$player.sec_style.clothing.makeup == "">>
<<set $player.sec_style.clothing.makeup = "voluntary">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createAdvBGR $scene.tmpImage>>
<<else>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
You step out, looking and feeling every millimetre a woman.
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
Riding the elevator down is a bit of a paradox as you feel your spirits rise the closer you get to street level.
<<case 'room_mall_apparel_store_changing_booths' 'room_mall_lingerie_shop_changing_booth'>>
You can't help but smile slightly at the fact that you have just emerged from a "changing" room.
<</switch>>
In public at last you can't help but smile. Sure, nobody is really acknowledging you — to them you're just another woman; but in a way that's the best acknowledgement there is.<br>
<br>
[<<moveTo $scene.voluntaryFollowupScene "Continue." 90>>]
</div>/*#
#desc: player want to leave in sissy choker
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if !$options.epilepsy>>
<<createAnimatedBGR "./video/stormcloud.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
You stare at the choker around your neck, frilly and pink it <<if $fetish.sissy>>literally spells out the word "SISSI"... as if the overall design wasn't enough<<else>>it all but shouts an extreme form of femininity<</if>>.<br>
<br>
<<if setup.getPresetRequirement($player,'sissy_female_visible','outside')>>
<<if setup.getTotalValue("bimbofication") > 15 && $fetish.sissy>>
<<printThought "Yes! I am a sissy bimbo slut and I need to show it to the world!">>
<<else>>
<<printThought "Yes... this is who I am, and I'm happy to advertise that!">>
<</if>>
<br><br>
<<if !setup.checkPlayerDressed()>>
<<printThought "Hmm, ignoring style I am not even decent to go outside!">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<elseif setup.getTotalValue("bimbofication") > 15>>
[<<moveTo "voluntarySissyChoker_2" "This choker is, like, perfect!" 60>>]<br>
<<elseif setup.getTotalValue("feminization") >= 20>>
<<if $player.values.currentLevel >= 20>>
[<<moveTo "voluntarySissyChoker_2" "I am the height of fem, wearing this could be fun!" 60>>]<br>
<<elseif setup.getWillpower() >1>>
[<<moveTo "voluntarySissyChoker_2" "I've tarted myself up a lot but this... I don't know..." 60 "<<spendWillpower 2>>">>] <<hint $options "Wearing this out would take an act of will.">><br>
<<else>>
[@@.link_locked;I don't have what it takes to go out like this.@@]<br>
<</if>>
<<elseif setup.getWillpower() >3>>
[<<moveTo "voluntarySissyChoker_2" "Do I really have the will to do this?" 60 "<<spendWillpower 4>>">>] <<hint $options "Wearing this out would take a major act of will.">><br>
<<else>>
[@@.link_locked;No way am I going out wearing this!@@]<br>
<</if>>
[<<moveTo $scene.orgLocation "No... I cannot... I simply can not." 60>>]
<<elseif setup.getTotalValue("feminization") < 10>>
<<printThought "No! I'm not <<if $fetish.sissy>>some sissy<<else>>the sort of person<</if>> who'd wear something like this in public!">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<<else>>
<<printThought "No... this is too much...">><br>
<br>
[<<moveTo $scene.orgLocation "Back." 60>>]
<</if>>
</div>/*#
#desc: player first time public sissy choker
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.sissy_choker = "voluntary">>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('fancy_choker')>>
<<set $player.willpower.bonus += 1>>
<<applyExperience 'feminization' 20 'terrible' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createAdvBGR $scene.tmpImage>>
<<else>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
Chin raised high to show off your pretty pink adornment you step out into
<<switch $scene.orgLocation>>
<<case 'room_foyer' 'room_mall_apparel_store_changing_booths'>>
the street. You shiver slightly. You've become well accustomed to dressing feminine but this? This is something else entirely, a piece of clothing more appropriate to a kinky photoshoot or porn than real life.<br>
<br>
Your heart skips a beat when you pass someone going the other direction and they stare at your neck... and you smile and nod in acknowledgement. The encounter lasts but a moment, but it fills you with pride and your next step is even prouder. Yes, this is you — <<if $fetish.sissy>>a pretty pink sissy<<else>>a pink cutie<</if>> — and you want everyone to know.
<<case 'room_mall_lingerie_shop_changing_booth'>>
the shop. You've barely taken a few steps when <<=setup.getNpcName('npc_shopkeeper', 'first')>> appears, her gaze going straight towards your neck as a wide smile appears on her face.<br>
<br>
"@@.npc_shopkeeper;Look. At. You! So many of our wears are more intended for the bedroom but you... you're wearing that in public, announcing who you are to anyone that cares to look... and it's so beautiful!@@"
<br><br>
You blush at the compliment, heart racing as she beams with pride.<br>
<br>
"@@.npc_shopkeeper;You have come so far from the timid thing sneaking around the shop, trying not to be noticed... and now, you're so fem, so proud... oh, you look just perfect!<<if $fetish.sissy>> Go forth, sissy — the world is yours!<</if>>@@"<br>
<br>
You thank her for the kind words and continue on your way with an extra skip in your step
<</switch>>
<br><br>
[<<moveTo $scene.voluntaryFollowupScene "Continue." 90>>]
</div>/*#
#desc: player want to leave in unisex clothes enthusiast
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "feminization" "enthusiast" "unisex">>
<<set $player.willpower.bonus += 1>>
<<set _x = setup.clearThoughtList()>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<include "addSexStoreOpeningEvent">>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<applyStress -10>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createAdvBGR $scene.tmpImage>>
<<else>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
You step out of
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
your apartment
<<case 'room_mall_apparel_store_changing_booths'>>
the changing booth
<<case 'room_mall_lingerie_shop_changing_booth'>>
the changing booth
<</switch>>
as your heart races. The agreement with <<=setup.getNpcName("npc_manager","formal")>> seems so long ago... distracted by the stress of your lost job and the rest... and yet here you are, now... that contract, your "uniform requirement" helping to drive your forward as you take what feels like a step into a new life.<br>
<br>
You put one foot in front of the other and step out into the
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
<<if $scene.sunlight>>
sunlight, well, not quite, you're way too surrounded by skyscrapers for light to be anything but a flat, smog-tinged grey, but you're technically outdoors...
<<else>>
starlight, well, if you could see stars past the one two three of light pollution, smog and hundred-floor buildings reaching up towards the heavens.
<</if>>
Either way, you're in public wearing an outfit somewhat less than masculine. Nobody else on the street seems to be paying you much mind, but still... as your pulse slows and you take your first steps you feel a strange calmness coming over you, that your stress was unfounded and that, in fact, everything is fine...
<<case 'room_mall_apparel_store_changing_booths'>>
spotlight of a well lit store. Either way, you're in public wearing an outfit somewhat less than masculine. Nobody else in the store seems to be paying you much mind, but still... as your pulse slows and you take your first steps you feel a strange calmness coming over you, that your stress was unfounded and that, in fact, everything is fine...
<<case 'room_mall_lingerie_shop_changing_booth'>>
spotlight of a well lit store. Either way, you're in public wearing an outfit somewhat less than masculine. Nobody else on the store seems to be paying you much mind, and those who do seem to be delighted by your decision. Fritz, who goes now by the fancy name Francine even sends an approving nod your way. You take your first steps you feel a strange calmness coming over you, that your stress was unfounded and that, in fact, everything is fine...
<</switch>>
You stand up a little straighter, feeling more comfortable in your own skin than you have in a long time...<br>
<br>
[<<moveTo $scene.voluntaryFollowupScene "Continue." 90>>]
</div>/*#
#desc: player want to leave in female clothes enthusiast
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "feminization" "enthusiast" "female">>
<<gainWillpower 1>>
<<applyStress -10>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<<set _x = setup.clearThoughtList()>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "female">>
<</if>>
<<set $player.willpower.bonus += 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createAdvBGR $scene.tmpImage>>
<<else>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
You step out of
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
your apartment
<<case 'room_mall_apparel_store_changing_booths'>>
the changing booth
<<case 'room_mall_lingerie_shop_changing_booth'>>
the changing booth
<</switch>>
as your heart races. The contract with <<=setup.getNpcName("npc_manager","formal")>> <<if $player.flags.firstWorkDay>>seems so long ago<<else>>was less than a day ago<</if>>... distracted by the stress of your lost job and the rest... and yet here you are, now... that contract, your "uniform requirement" helping to drive your forward as you take what feels like a step into a new life.<br>
<br>
Your eyes dart up and down
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
the street, searching for a reaction from fellow pedestrians going about their business. Despite any fears you might have had nothing happens, the world around you proceeds the same as any other day. The longer things go with nothing happening the more foolish you feel just standing there and finally you walk down the steps towards the sidewalk.
<<case 'room_mall_apparel_store_changing_booths'>>
the store, searching for a reaction from fellow customers going about their business. Despite any fears you might have had nothing happens, the world around you proceeds the same as any other day. The longer things go with nothing happening the more foolish you feel just standing there and continue with your business here.
<<case 'room_mall_lingerie_shop_changing_booth'>>
the shop. And somehow you managed to overlook <<=setup.getNpcName('npc_shopkeeper', 'first')>>, eyeing you from top to button. Again you try to stand perfectly still in hopes she won't see you. Not that this ever worked in your favour, but repeated failure means you must be due success soon, right?<br>
<br>
You hear an approving "@@.npc_shopkeeper;Mhmmm!@@" from her before she continues with her sonorous voice, "@@.npc_shopkeeper;Was about fucking time darling. Your hips were made to be accentuated by clothes like that.@@"<br>
<br>
A pat on your shoulder almost knocks you off your feet, but you manage to stay your ground... somehow.<br>
<br>
"@@.npc_shopkeeper;Very nice. Very nice indeed!@@"<br>
<br>
The other customers mostly ignore what's going on over here, only a single customer even seems to notice, flashing you a silent thumbs up.
<</switch>>
<br><br>
[<<moveTo $scene.voluntaryFollowupScene "Continue." 90>>]
</div>/*#
#desc: player want to leave in latex clothing
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.clothing.latex>>
<<set $player.sec_style.clothing.latex = "voluntary">>
<<if !State.hasPlayed("event_shop_stock_latex") && $npc_sexstore_clerk.profile>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addEvent "shop_stock_latex" _nextDate>>
<</if>>
<</if>>
<<gainWillpower 1>>
<<applyStress -10>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "female">>
<</if>>
<<set $player.willpower.bonus += 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.orgLocation!='room_mall_lingerie_shop_changing_booth'>>
<<createAdvBGR $scene.tmpImage>>
<<else>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<</if>>
<div id="invframe" class="scrolltext">
You take a deep breath, and with a slight squeak from your tight clothing, step out
<<switch $scene.orgLocation>>
<<case 'room_foyer'>>
into public.
<<case 'room_mall_apparel_store_changing_booths' 'room_mall_lingerie_shop_changing_booth'>>
of the changing room.
<</switch>>
You feel a little warm, that tiny bit of sweat helping the latex glide more easily against your skin... and exciting you even further as you walk along, feeling the odd eye dart in your direction. Latex may not be unknown in what passes for modern fashion... but it still catches stares, especially when someone is wearing it as well as you are.<br>
<br>
[<<moveTo $scene.voluntaryFollowupScene "Continue." 90>>]
</div>/*#
#desc: ask npc_maid for suggestions for A-SLUT uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_maid")>>
<div id="invframe" class="scrolltext">
<<addCredits -10>>
Thinking that the cute <<if $fetish.sissy>>sissy <</if>>maids are exactly the sort of thing your manager would approve of you wait until after <<=setup.getNpcName('npc_maid', 'first')>> delivers your basic coffee you ask her if she has any clothing suggestions for you.<br>
<br>
"@@.npc_maid;Well... you can never go wrong with a maid's uniform!@@"<br>
<br>
<<if setup.checkVisibleClothingTag('maid') > 0>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
"@@.npc_maid;But I can see you already know all about that.@@" she adds with a wink as she nods to your full maid ensemble.
<<else>>
"@@.npc_maid;But I can see you already know a bit about that.@@" she adds with a wink as she nods towards your partial maid attire.
<</if>>
<br><br>
<</if>>
"@@.npc_maid;I dunno, maybe try Tease me, Please me? The girls here rely on them all the time when we're looking for something to tie an... outfit together.@@"<br>
<br>
[<<moveTo "room_mall" "You thank her for the advice, tip her for your drink and leave." 1>>]
</div>/*#
#desc: ask technician for A-SLUT uniform upgrade suggestions over the phone
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Mindful of the restrictions in your contract, and not wanting to get either of you in trouble you ask <<=setup.getNpcName('npc_technician', 'first')>> if she has any ideas of ways you might improve the outfit you wear to work.<br>
<br>
<<if $npc_technician.flags.sawyouinfemaleclothes>>
"@@.npc_technician;Hmm, I dunno, I guess the rules are different way up there on the fifty-second floor, but what you've been doing so far has been great. I mean, I don't mean anything bad by it, but when you worked down with us drones? You were kind of lame looking, a skirt and stockings is way more your speed, so lean into it, maybe some shape-wear or jewellery to really make what you already have pop? Whatever it is I'll bet you find it at <<printShopName 'mall_lingerie_shop'>>. That place is just the best for people like us.@@"<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "You thank her for the suggestions and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
"@@.npc_technician;Based on what you wear? I dunno, a skirt, maybe a cute pair of pumps? No offense, but what you wear doesn't really do much to flatter your figure.@@"<br>
<br>
<<printThought 'Oh yeah, <<=setup.getNpcName("npc_technician", "first")>> has not seen me since the "dress code" changed, probably not a great idea to try and explain all that over the phone.'>><br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "You thank her for the advice and hang up." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</if>>
</div>/*#
#desc: ask admin for A-SLUT uniform upgrade suggestions over the phone
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
/* note; uniform upgrade comes after force crossdressing, which already involves npc_admin, so no need to check if he's seen you dressed as a girl. */
<<if setup.getTotalValue("feminization") >= 12 && !$npc_admin.fem>>
You start to ask <<=setup.getNpcName('npc_admin', 'first')>> about uniform suggestions only for <<him npc_admin>> to cut you off.<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits' 'boyfriend'>>
"@@.npc_admin;Shit, you know I think you're fine as hell. Whatever you wanna wear, that's your call, and you'll look hot it in it!@@"<br>
<br>
You realise <<he npc_admin>> probably isn't the best person to ask about feminine fashion and move on.<br>
<br>
[<<moveTo "room_call_npc_admin" "Continue call." 1>>]
<<default>>
"@@.npc_admin;Shit, <<callPlayer "npc_admin">>, you know I don't know much about that sort of thing. I mean you and me... we got such different styles, especially nowadays! I'll wish ya luck, but yeah, I got nothin' for ya for clothing suggestions.@@"<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Apologising you quickly end the call." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<</switch>>
<<else>>
You start to ask <<=setup.getNpcName('npc_admin', 'first')>> for uniform upgrade suggestions but, even knowing that <<hes npc_admin>> already aware of your new feminine mien you just can't bring yourself to bring it up and you quickly change the subject.<br>
<br>
[<<moveTo "room_call_npc_admin" "Continue call." 1>>]
<</if>>
</div>/*#
#desc: ask psychiatrist for uniform upgrade suggestions
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'first')>> smiles and shakes her head.<br>
<br>
"@@.npc_psychiatrist;As much as I appreciate the trust shown by your asking for my help in such a matter, I do not really have anything to tell you. What we wear is such a personal choice. I mean, I understand the importance of a corporate dress code for purposes of decorum and conformity but, well... there are reasons I chose to go into private practice.@@"<br>
<br>
"@@.npc_psychiatrist;If I were you, I would consider what you know of <<=ps(setup.getNpcName('npc_manager', 'first'))>>... preferences. Consider those your constraints and remember that constraints breed creativity. From there, well... I am sure if you look around, maybe expand your horizons, you will find something that she will accept and you will love.@@"<br>
<br>
<<printThought "Well, that wasn't much help... or was it?">><br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: Put on bed heels for bed
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<set $scene.unpack = setup.checkItemOwned('bed_heels_box')>>
<<if $scene.unpack>>
<<deleteItem "bed_heels_box">>
<<addItem "bed_heels_pink">>
<</if>>
<<if setup.checkItemOwned('bed_heels_pink')>>
<<if !setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<if $scene.shoes != "">>
<<removeItem $scene.shoes true>>
<</if>>
<<if setup.inWardrobe('bed_heels_pink')>>
<<wardrobeToItem 'bed_heels_pink'>>
<</if>>
<<wearItem "bed_heels_pink" true>>
<</if>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<if !$inventory[$scene.shoesId].status.lock>>
<<manipulateItem $scene.shoesId 'lock' true>>
<</if>>
<</if>>
<<set $scene.selfie = false>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemOwned('bed_heels_pink')>>
You get ready to take a picture only to realise that you forgot to obtain bed heels. She'd probably consider texting her an image without such taunting, and that doesn't sound like a smart idea.<br>
<br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
<<else>>
<<if $scene.unpack>>
You hurriedly unpack the bed heels from their box in your rush to get ready.<br>
<br>
<</if>>
<<if $scene.shoes != "bed_heels_pink">>
Taking a deep breath, you grab the bed heels and crawl into bed. Once again you have to point your toes almost all the way in line with your calves, your initial attempts to merely close the straps failing as you have to tighten them all the way down to force your arch smoothly against the shoes before the hidden catches engage.<br>
<br>
<<printThought "Do I really want to do this?">><br>
<br>
Any thought of reversing course is dashed as you find yourself unable to loosen the straps; even without the more obviously locking ankle strap yet in place you are already stuck until morning. Taking another deep breath you close the tall cuff snug around your slender ankle, the click of the lock loud in your quiet bedroom as it seals you for the night with <<if setup.getTotalValue("foot")>10>>an erotic thrill<<else>>a gut-punch<</if>> of finality.<br>
<br>
<<elseif !$npc_manager.flags.uniform_upgrade.bed_heel_punish>>
Somehow sensing your intent to head to bed, the bed heels lock closed with a click.<br>
<br>
<<printThought "Guess I'm stuck like this till morning...">><br>
<br>
<</if>>
Not even wanting to attempt to walk, you angle your feet to the side and contort yourself to get a decent picture of your
<<if setup.getTotalValue("heels") >= setup.getItemObj('bed_heels_pink').heels.difficulty>>
adorably pointed
<<elseif setup.getTotalValue("heels") >= 10>>
surprisingly pain-free
<<elseif setup.getTotalValue("heels") >= 5>>
slightly aching
<<else>>
already throbbing
<</if>>
feet and their locked-on nocturnal prisons.<br>
<br>
[<<moveTo "event_bed_heel_picture" "Send the picture to your manager." 60>>]
<</if>>
</div>/*#
#desc: take a picture in your bed heels
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.uniform_upgrade.times_sexted += 1>>
<<set $npc_manager.flags.sent_bed_selfie = true>>
<<set $npc_manager.flags.uniform_upgrade.bed_heel_punish = false>>
<<completeTask 'bed_heels_photo' $now true>>
<<set _setId = setup.getClothingSetIndex('Sleep Clothes')>>
<<set $clothSets[_setId].data.push("bed_heels_pink")>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You triple check that you're sending to the right person before texting the photo to your manager. With your face out of frame you technically aren't identifiable, but sending a picture like that to any of your other friends would be well, hard to explain. You don't have long to dwell on such <<if setup.getTotalValue("feminization") >= 10>>kinky<<elseif setup.getTotalValue("feminization") < 5>>mortifying<<else>>embarrassing<</if>> thoughts as you swiftly get a reply text from your manager.<br>
<br>
<<if $npc_manager.flags.uniform_upgrade.times_sexted == 1>>
"@@.npc_manager;Wow! Well done, are those a new model? They look even more intense than the ones I expected you to purchase, but I bet they will be even more effective. You lucky girl! Great job following instructions, but I understand how frightening putting those on must have been, and I am concerned you might wimp out in the future so I think you had better send me another pic tomorrow night.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
"@@.pc;Yes <<=setup.getNpcName('npc_manager', 'formal')>>@@" you reflexively text back, a burst of pleasure running through your body at her responding message of approval.
<<elseif setup.getTotalValue("submission") >= 5>>
You re-read the message twice, your body awhirl with embarrassment, arousal and... other feelings. Finally you send a short "@@.pc;Okay@@" reply text only for your phone to almost instantly buzz again.<br>
<br>
"@@.npc_manager;I believe you mean "Yes, <<=ps(setup.getNpcName('npc_manager', 'formal'))>>.", but I will let it slide on account of you probably being tired. Sweet dreams, <<if $fetish.sissy>>sissy<<else>>girl<</if>>!@@"<br>
<br>
You blush even harder, quickly putting your phone in sleep mode and putting it away for the night.
<<else>>
You're glad nobody is around to see you blush a deep crimson. Quickly locking your phone you toss it onto the nightstand.
<</if>>
<<elseif setup.getTotalValue("heels") >= 15 && (!$currentTasks.hasOwnProperty('bed_heels_photoshoot') || $currentTasks['bed_heels_photoshoot'].finished)>>
Rather than the expected instruction to send another picture <<=setup.getNpcName('npc_manager', 'formal')>> sends back a more personalised text.<br>
<br>
"@@.npc_manager;Well done sleeping in your new bed heels! I know it was difficult at first, but I have been seeing your rapid progress at work and I am sure you have been feeling it as well. You no longer need to send me a text each evening of your sleep attire... unless you want to. I trust you to use your bed heels on your own as appropriate to continue your training.@@"
<<else>>
"@@.npc_manager;Very good, and sweet dreams!@@"
<</if>>
<br><br>
<<if $now.getUTCDay() == 5>>
"@@.npc_manager;I suppose I should give you the weekend off, being the weekend and all... very well, I will not order you to send me selfies the next two nights, thought I advise you to still continue training! It is, after all, for your own good.@@"<br>
<br>
<</if>>
<<if $scene.bondage || $scene.milkSelect>>
[<<moveTo "event_bed_root" "Finish preparing for bed." 0 "<<set $player.cutscene.lockinventory = false>><<set $scene.change = true>>">>]
<<elseif setup.checkSleepWear() == "not_sleepwear">>
[<<moveTo "room_dreams" "Change into sleep attire and go to sleep." 0 "<<include 'sleepClothesKeepCollar'>><<set $player.cutscene.lockinventory = true>>">>]
<<else>>
[<<moveTo "room_dreams" "Go to sleep." 0 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: take a selfie before bed to send to someone
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight = []>>
<<set $scene.selfie = false>>
<</if>>
<<set $scene.underwearInspection = false>>
<<include calculateUnderwearStyle>>
<<if setup.isItemEquipped("dress_mm")>>
<<set $scene.underwearStyle = "megamilk">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You take a moment to snap a couple shots to show off your full sleep attire.<br>
<br>
Selecting the best angle from the pictures you took you check that everything looks good before you send it off.<br>
<br>
<<if setup.checkVisibleClothingTag("sissy") > 50>>
That is definitely you; looking cute and feminine in your nightgown.
<<elseif setup.isItemEquipped("pyjama")>>
That is definitely you, though you've been wearing so much woman's clothing seeing yourself in male pyjamas is almost odd.
<<if setup.getTotalValue("feminization") >= 10>>
Also, kind of ugly, <<=setup.getNpcName('npc_exgirlfriend', 'first')>> must have been humoring you when she said you looked fine in this back when you were still dating.
<<else>>
<<printThought 'Why am I thinking "dressing like a man" is odd?'>>
<</if>>
<<elseif setup.checkNaked()>>
That is definitely you, nice and exposed in little save your skin. You try to remember when you started sleeping naked, sometime after <<=setup.getNpcName('npc_exgirlfriend', 'first')>> left you? Your whole life has been too chaotic of late to be certain.
<<else>>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
You are wearing a "sleep shirt" that lewdly advertises "MEGA MILK" <<if $player.body.breastsize[0] > 0>>over your breasts<<else>>across your chest<</if>>
<<case "female">>
You are dressed in a mismatched hodge-podge of undergarments. Individually each piece might be fine, but as a whole they clash to make for something far less than the sum of its parts.
<<case "bold">>
Your underwear is styled very bold and forward making you feel a bit of an edge of power.
<<case "sissy">>
You are wearing some frilly pink underthings; cute, submissive and <<if $fetish.sissy>>sissy<<else>>girly<</if>> to the extreme.
<<if $scene.bra != "" && $scene.panties != "" && $scene.stockings != "">>
From your pink stockings to your bell'd garters and your soft, cute bra you are a vision of sweet, "innocent" femininity.
<</if>>
<<case "cute" "sissycute" "cutesissy">>
You are wearing nicely matched underwear, but nothing that would particularly turn heads.
<<case "male">>
You are wearing male undergarments... for some reason.
<<case "fetish">>
You are dressed in very fetishistic underwear, kinky!
<<case "latex">>
You are dressed in all latex underthings, shiny!
<<case "modest">>
You are dressed in modest, sensible undergarments.
<<case "none">>
You are wearing no underwear at all!
<<case "catsuit">>
You are wearing a sleek catsuit.
<<default>>
ERROR unknown underwear style: <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
Sitting seductively on the bed attention for your photo is drawn to your feet thanks to the ludicrously-tall bed heels conspicuously locked to your feet.
<</if>>
<br><br>
<<if !setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.checkItemVisible(setup.getItemFromType("cage"))>>
You haven't even tried to conceal your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>, your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>cunny<</if>> looking cute, safe and secure.
<<else>>
Not wanting to "leave anything out" you take an additional shot pointed down past your pulled-aside undergarments to show off the device securely locked <<if $player.body_ref.penis>>around your <<getWordMyPenis false>><<else>>over your crotch<</if>>.
<</if>>
<</if>>
<<else>>
<<if setup.checkItemVisible(setup.getItemFromType("plug"))>>
Bending over you use the phone to take a quick additional shot of your ass to show off the <<=setup.getPlugSize(setup.getItemFromType("plug"))>> plug stuffed into your pert hole.
<<else>>
<<if setup.checkItemTypeWorn("panties") && !setup.checkItemTypeWorn("bodysuit")>><<if setup.isItemEquipped("sissy_panties_pink")>>Unzipping the rear panel of<<else>>Pulling down<</if>> your panties, <<else>>Twisting around,<</if>> you snap a quick shot of your pert butt and the <<=setup.getPlugSize(setup.getItemFromType("plug"))>> plug stuffed inside.
<</if>>
<</if>>
<<if !setup.isBodySlotVisible('penis') && $scene.underwearStyle != "none">>
Pulling your panties temporarily out of the way you snap an extra picture of your cute <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>cunny<</if>>.
<</if>>
<br><br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
<<if $scene.calledTonight.length > 0>>
[<<moveTo "event_bed_root" "Go to bed without sending any more sexts." 0>>]
<<else>>
[<<moveTo "room_dreams" "Go to bed without sending any sexts." 0>>]
<</if>>
<br>
[<<moveTo "room_bedroom" "Rework your outfit and try again." 0>>]
</div>/*#
#desc: send a bed selfie to manager after task period
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.evil != 1 && !(!setup.checkItemTypeWorn("cage") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key'))>>
<<set $scene.completeTask = $currentTasks.bed_heels_photo.condition == "Failed" && setup.getTotalValue("heels") < 15>>
<<if $scene.completeTask>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<initRoom>>
<<moveTo "event_bed_heel_picture">>
<<else>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<completeTask 'bed_heels_photo' $now false>>
<</if>>
<</if>>
<<set _x = $scene.calledTonight.pushUnique('npc_manager')>>
<<set $npc_manager.flags.uniform_upgrade.times_sexted +=1>>
<<set $scene.approval = 0>>
<<if setup.checkVisibleClothingTag("sissy") > 50>>
<<set $scene.approval += 1>>
<<elseif setup.isItemEquipped("pyjama")>>
<<if $scene.underwearStyle == "male">>
<<set $scene.approval -= 5>>
<<else>>
<<set $scene.approval -= 8>>
<</if>>
<<elseif setup.checkNaked()>>
<<set $scene.approval += 1>>
<</if>>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
<<set $scene.approval -= 2>>
<<case "bold">>
<<if setup.isItemEquipped("manager_panties")>>
<<set $scene.approval -= 2>>
<<elseif setup.getTotalValue("dominance") < 10>>
<<set $scene.approval -= 1>>
<</if>>
<<case "sissy">>
<<set $scene.approval += 2>>
<<if setup.isItemEquipped("choker_sissy") || setup.isItemEquipped("secure_sissy_choker")>>
<<set $scene.approval += 1>>
<</if>>
<<case "cute" "sissycute">>
<<set $scene.approval += 2>>
<<case "male">>
<<set $scene.approval -= 3>>
<<case "fetish">>
<<set $scene.approval += 1>>
<<case "latex" "catsuit">>
<<set $scene.approval += 1>>
<</switch>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $scene.approval += 1>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.approval += 1>>
<<else>>
<<set $scene.approval -= 1>>
<</if>>
<<if setup.getItemFromType("plug")>>
<<set $scene.approval += 1>>
<</if>>
<<if $scene.approval <= -5 && setup.getTotalValue("feminization") >= 10 && setup.getTotalValue("submission") >= 10>>
<<removeItem "pyjama" true>>
<<deleteItem "pyjama">>
<</if>>
<<if $npc_manager.flags.uniform_upgrade.times_sexted == 1>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_20'
4
'psychiatrist_sext_bed_heels'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.evil == 1>>
You shoot of a sext... but get no response.<br>
<br>
<<printThought 'I guess <<=setup.getNpcName("npc_manager","formal")>> has other evil things to do at night...'>><br>
<br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>> <br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
<<elseif !setup.checkItemTypeWorn("cage") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
You are about to shoot off a sext to when you catch yourself, remembering that you are not only out of chastity... you are not even supposed to have the key.<br>
<br>
<<printThought "That was a close one... yeah, flashing that in front of <<=setup.getNpcName('npc_manager', 'formal')>> sounds like the worst idea.">><br>
<br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>> <br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
<<else>>
Shooting off the sext you wait nervously for several moments, almost jumping when your phone buzzes with a text of your <<=ps(setup.getNpcName('npc_manager', 'title'))>> response.<br>
<br>
<<if $scene.completeTask>>
<<if !setup.checkItemTypeTag('shoes', ['bedheels'])>>
"@@.npc_manager;How brainless are you? I said to put on your bed heels and send me a picture. Get that camera out and follow ALL of my instructions, no picture means no credit!@@"<br>
<br>
[<<moveTo "event_bedroom_bed_heels" "Take a picture in your bed heels and send it to her." 1 "<<set $currentcall = false>>">>]
<<elseif setup.checkItemOwned("bed_heels_pink")>>
"@@.npc_manager;I told you to buy bed heels, wear them to bed and send me a picture! Did you think I just wanted to go shopping?@@"<br>
<br>
[<<moveTo "event_bedroom_bed_heels" "Put on the bed heels and take the picture she requested." 1 "<<set $currentcall = false>>">>]
<<else>>
"@@.npc_manager;I told you to buy a pair of bed heels and send me a picture before you went to sleep! I am very disappointed in your complete failure to follow instructions.@@"<br>
<br>
<<printThought "How did she guess I screwed up so bad?">><br>
<br>
Your blood runs cold; you totally forgot to inquire at the shoe store as <<=setup.getNpcName('npc_manager', 'formal')>> instructed.<br>
<br>
[<<moveTo "event_bed_heels_photo_excuse" "Beg her forgiveness." 1>>]<br>
[<<moveTo $scene.beforetasklocation.last() "Pretend you didn't get her message and leave things for tomorrow." $scene.continueTaskTime "<<set $currentcall = false>>">>]
<</if>>
<<else>>
<<if setup.checkVisibleClothingTag("sissy") > 50>>
<<if $scene.underwearStyle == "sissy">>
"@@.npc_manager;How cute! I am glad you have such a nice nighty to wear to bed. And with your <<if $fetish.sissy>>sissy<<else>>girly<</if>> underthings all worn underneath! Simply perfection!@@"
<<else>>
"@@.npc_manager;How cute! I am glad you have such a nice nighty to wear to bed.@@"
<</if>>
<<elseif setup.isItemEquipped("pyjama")>>
"@@.npc_manager;Hmm, I know the dress code only technically applies when you are at work, but those pyjamas are really quite ugly, I do not like seeing you in them at all.@@"
<<elseif setup.checkNaked()>>
"@@.npc_manager;Sleeping naked? You naughty girl!@@"
<<else>>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
"@@.npc_manager;That top is... A bit juvenile, to be honest. I realise you are at home and "off the clock," but professionalism is a habit one should focus on at all times.@@"
<<case "female">>
"@@.npc_manager;What have I told you about selecting your undergarments to form a cohesive style? Just because they look individually does not mean they can go together.@@"
<<case "bold">>
<<if setup.isItemEquipped("manager_panties")>>
"@@.npc_manager;Are those... my undergarments? No, no, no, that is quite inappropriate for you to own, much less to wear...@@"
<<elseif setup.getTotalValue("dominance") < 10>>
"@@.npc_manager;Hmm, trying to mimic my style? No, I do not like that at all, those garments do not suit you in any way.@@"
<<else>>
"@@.npc_manager;Hmm, your practice at dominant confidence is bearing fruit. Those underthings do not look as out of place on you as they once might have..@@"
<</if>>
<<case "sissy">>
"@@.npc_manager;Now THAT is a good <<if $fetish.sissy>>sissy <</if>>outfit. Perfect for work and home! I see hardly a reason for you to ever wear anything else,
<<if setup.isItemEquipped("choker_sissy") || setup.isItemEquipped("secure_sissy_choker")>>
and your choker! I just love how it labels you for the world and perfectly ties everything together.
<<elseif setup.checkItemTypeWorn("choker")>>
though things would look even better with the right choker... something pink and frilled and as nauseatingly cute as yourself...
<<else>>
though your neck looks a little exposed and bare... I hear vampires love to nibble on cute <<if $fetish.sissy>>sissies<<else>>girls<</if>> in their sleep, you should watch out.
<</if>>
@@"
<<case "cute" "sissycute" "cutesissy">>
"@@.npc_manager;You look cute in those, but you look cute in anything. I really think you can find something that suits you better and really makes your cute body pop.@@"
<<case "male">>
"@@.npc_manager;Is that... male underwear? I am very disappointed in you. I realise that your dress code requirements technically only apply when you are "on the job" but... I thought that you would have learned the infinite superiority of feminine undergarments for one such as you by now...@@"
<<case "fetish">>
"@@.npc_manager;Is that... my, my, quite a kinky choice to sleep in, I bet that gives you some fun dreams!@@"
<<case "latex">>
"@@.npc_manager;Mmm, sleeping in all latex? Be sure to turn up the AC, I would not want you getting too hot...@@"
<<case "catsuit">>
"@@.npc_manager;Mmm, sleeping in a catsuit? Be sure to turn up the AC, I would not want you getting too hot...@@"
<<case "modest">>
"@@.npc_manager;Hmm, that is quite a... modest selection.@@" You can tell from her tone that such is not to her preference
<<case "none">>
"@@.npc_manager;Showing off without any underwear? Obviously that would be totally inappropriate for work but, I suppose it is acceptable for sleep, though not exactly preferred when there are so many more... cute options...@@"
<<default>>
ERROR, missing description for <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<br><br>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
"@@.npc_manager;You are still wearing your bed heels! I am so impressed how well you have taken to them, and they just look perfect locked around those slender little ankles.@@"<br>
<br>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.checkItemVisible(setup.getItemFromType("cage"))>>
<<if setup.getChastityLevel() == 5>>
"@@.npc_manager;Such a perfect <<if setup.isCage()>>cage<<else>>chastity belt<</if>> for a perfect girl, I can see little reason for it to ever be removed... which is fortunate since the paperwork for such is quite a lot of work!@@"
<<elseif setup.isItemEquipped("penis_milker")>>
"@@.npc_manager;Mmm, all prepared for some nocturnal milking — this, and <<if $fetish.sissy>>sissygasms<<else>>analgasms<</if>> are really the only ways you should ever obtain "release." Oh I just adore such automated control.@@"
<<else>>
<<if setup.isItemEquipped("broken_cage") || setup.isItemEquipped("broken_belt")>>
You prudently angled things so that she would not be able to see the broken remnants of your chastity device.<br>
<br>
<</if>>
<<if $npc_manager.flags.hascagekey>>
"@@.npc_manager;You are looking a little cramped in that chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. That is as it should be. I dare say I see little reason why I should ever give you this key back.@@"
<<elseif !setup.checkItemOwned(setup.getItemObj(setup.getItemFromType("cage")).lockable[1])>>
"@@.npc_manager;You are looking a little cramped in that chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. Of course it would be even better if I was the one in possession of your key... well, one step at a time, I suppose.@@"
<<else>>
"@@.npc_manager;You are looking a little cramped in that chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. It is a credit to your training and <<if $fetish.sissy>>sissy <</if>>resolve that you have not given in to the temptation to unlock yourself.@@"
<</if>>
<</if>>
<<else>>
<<if !setup.checkItemOwned(setup.getItemObj(setup.getItemFromType("cage")).lockable[1])>>
"@@.npc_manager;Even under that cute covering I can see the outline of your lovely <<if setup.isCage()>>cage<<else>>chastity belt<</if>>, wonderful. Of course that is to be as expected, given that you are not in possession of the key to that device... Much safer that way, I know we both agree.@@"
<<else>>
"@@.npc_manager;Even under that cute covering I can see the outline of your lovely <<if setup.isCage()>>cage<<else>>chastity belt<</if>>, wonderful. So good of you to resist the urge to use that key you have... Though, thinking about it, it would be even safer if you left it with me. To have the key with you... It pretty much negates the protection your <<if setup.isCage()>>cage<<else>>belt<</if>> is providing.@@"
<</if>>
<</if>>
<br><br>
<<else>>
<<if setup.isBodySlotVisible('penis')>>
<<if $player.body_ref.penis>>
"@@.npc_manager;How lewd, I do not want a dick pic.@@"
<<else>>
"@@.npc_manager;How lovely your lady garden looks, if a touch immodest to be flashing it around like this.@@"
<</if>>
<br><br>
<<elseif $currentTasks.hasOwnProperty('manager_morning_inspection_task') && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity')>>
<<if $player.body_ref.penis>>
"@@.npc_manager;No chastity? I am disappointed, your <<if $fetish.sissy>>sissy <</if>>clitty is much safer locked away, even out of the office.@@"
<<else>>
"@@.npc_manager;No chastity? I am disappointed, you are far safer locked, even when away from the office.@@"
<</if>>
<br><br>
<</if>>
<</if>>
<<if setup.getItemFromType("plug")>>
<<if setup.isItemEquipped("sissy_panties_pink")>>
"@@.npc_manager;Oh, how slutty! I love the way your panties unzip to show off your stuffed rear. You are making me sad I am not there to stick something of my own up there.@@"
<<else>>
"@@.npc_manager;It is so nice that you are sleeping plugged. Taking advantage of every moment of the day to enact self improvement is a real credit to your secretarial focus.@@"
<</if>>
<br><br>
<</if>>
<<switch $scene.approval>>
<<case 7>> /* full sissy undies, nightie, bed heels, chastity, plug, sissy collar */
"@@.npc_manager;You are truly a vision of perfection. My only regret is that I am not there to tuck you in myself! It is so good that you are internalising your lessons, even on your "off" time.@@"
/* TODOfuture chance for her to show up in the middle of the night, either treated as a dream and/or directly progressing relationship? */
<<case 6>>
"@@.npc_manager;You look just stunning, but I feel like there is something missing, nothing much, just some final small detail to really tie everything together in a nice pink bow...@@"
<<case 5 4>>
"@@.npc_manager;You are looking very cute. I bet you have nice <<if $fetish.sissy>>sissy<<else>>sweet<</if>> dreams dressed like that.@@"
<<case 3 2>>
"@@.npc_manager;Good job experimenting with your sleep arrangements, you only improve at something through constant effort and I always enjoy chronicling your continued advancement.@@"
<<case 1 0>>
"@@.npc_manager;Overall I am unimpressed. I believe you can do far, far better in selecting your sleep attire.@@"
<<case -1>> /* bold undergarments or chastity missing*/
<<if $scene.underwearStyle == 'bold'>>
"@@.npc_manager;I hope you are not harboring any secret rebellious thoughts dressing so bold and unfettered. As the saying goes — if you disrespect me in your dreams, you better wake up and send me an apology@@"<br>
<br>
/* TODOfuture; the unidirectional progression of submission means this probably needs to be reworked when the dom path is added. */
<<if setup.getTotalValue("submission") < 5>>
<<printThought "I don't care if she doesn't like them. These panties make me feel confident!">>
<<elseif setup.getTotalValue("submission") < 10>>
<<printThought "Why did I even wear those panties? <<=setup.getNpcName('npc_manager', 'formal')>> is right, they really do not suit me.">>
<<else>>
<<printThought "I hope she is not too upset, but it is not wrong for me to stand up for myself, is it?">>
<</if>>
<<else>>
"@@.npc_manager;I realise I gave you the key to your chastity device, but I hoped you would only use it for cleaning. Sleeping unsecured like that is a recipe for disaster and could your entire <<if $fetish.sissy>>sissy<<else>>girl<</if>> training at risk.@@"<br>
<br>
<<if setup.getTotalValue("submission") < 5>>
<<printThought "I don't care if I have to wear it to work, on my own time I want access to my <<getWordMyPenis false>>">>
<<elseif setup.getTotalValue("submission") < 10>>
<<printThought "<<=setup.getNpcName('npc_manager', 'formal')>> is right, I should just give her the keys to my <<if setup.isCage()>>cage<<else>>belt<</if>> so I'm not tempted in the future.">>
<<else>>
<<printThought "I wish she would accept that I deserve freedom on my own time!">>
<</if>>
<</if>>
<<case -2>> /* bold undergarments and chastity*/
"@@.npc_manager;I do not know who you think you are fooling, <<if setup.checkItemTypeWorn("cage")>>flaunting your clitty out of chastity with<<else>>wearing<</if>> such... aggressive undergarments. Keep this up and I may be forced to bring you to heel. I know this is your personal time, but even in private such behaviour is quite unbecoming a proper <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
<<if setup.getTotalValue("submission") < 5>>
<<if $player.body_ref.penis>>
<<printThought "I don't care if she doesn't like them. These panties make me feel confident! and I hate having my <<getWordMyPenis false>> locked away...">>
<<else>>
<<printThought "I don't care if she doesn't like them. These panties make me feel confident! and I hate being locked up...">>
<</if>>
<<elseif setup.getTotalValue("submission") < 10>>
<<printThought "Why did I even buy those panties? <<=setup.getNpcName('npc_manager', 'formal')>> is right, they really are not me, and I can't be trusted with my key, I should give it to her permanently.">>
<<else>>
<<printThought "I hope she is not too upset, but it is not wrong for me to want to be more assertive and in control of myself, is it?">>
<</if>>
<<case -5 -6 -7 -8 -9>> /* -5 male pyjamas, -6 male pyjamas w/bold or no chastity, -7 male pyjamas w/bold and no chastity */
"@@.npc_manager;I have to say, I am enormously disappointed in your choice of sleeping attire. It is like you are learning nothing from your training, the moment you are out of arms reach you flaunt every rule there is! This is not the kind of thing I want to watch you evolve into at all, it is like once you think you are out of my sight you become a completely different person. Being a <<if $fetish.sissy>>SISSI <</if>>Secretary is not an act, it is who you are, and you need to stop fighting it, unless you want to fail out of another job?@@"<br>
<br>
<<if setup.getTotalValue("feminization") < 5>>
Though you fall asleep with fears of her punishment, you are also bolstered by the fact that you are managing to cling to your masculinity and resist her control.
<<elseif setup.getTotalValue("feminization") >= 10 && setup.getTotalValue("submission") >= 10>>
You are deeply shamed by her feedback, but it is true, these pyjamas are just wrong for you. Flailing around you rip them off and pitch them in the trash, never wanting to be afflicted by their like again.
<<else>>
You are a bit nervous as you try to fall asleep, worried how your choice of sleepwear has incurred her wrath.
<</if>>
<<default>>
ERROR: scene.approval out of range: <<=scene.approval>>
<</switch>>
<br><br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>> <br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
<</if>>
<</if>>
</div>/*#
#desc: send a bed selfie to psychiatrist
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _x = $scene.calledTonight.pushUnique('npc_psychiatrist')>>
<<if $npc_psychiatrist.flags.evil != 1>>
<<set $scene.approval = 0>>
<<set $npc_psychiatrist.flags.sexting.times_sexted +=1>>
<<if $scene.random>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<set $npc_psychiatrist.flags.sexting.times_sexted_accidentally += 1>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
>>
<</if>>
<</if>>
<<if setup.checkVisibleClothingTag("sissy") > 50>>
<<set $scene.approval += 1>>
<<elseif setup.isItemEquipped("pyjama")>>
<<set $scene.approval -= 1>>
<</if>>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
<<set $scene.approval += 2>>
<<case "bold">>
<<set $scene.approval += 2>>
<<case "sissy" "cute" "sissycute">>
<<set $scene.approval += 2>>
<<if setup.isItemEquipped("choker_sissy") || setup.isItemEquipped("secure_sissy_choker")>>
<<set $scene.approval += 1>>
<</if>>
<<case "modest">>
<<set $scene.approval += 1>>
<<case "fetish" "latex" "catsuit">>
<<set $scene.approval += 2>>
<</switch>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $scene.approval += 1>>
<</if>>
<<if setup.checkItemTypeWorn("plug")>>
<<set $scene.approval += 1>>
<</if>>
<<if $scene.approval >= 3>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 2>>
<<elseif $scene.approval > 0>>
<<incrementEmotion 'affection' 'npc_psychiatrist' 1>>
<<else>>
<<decrementEmotion 'affection' 'npc_psychiatrist' 1>>
<</if>>
<<if $npc_psychiatrist.flags.sexting.times_sexted == 1>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_15'
4
'psychiatrist_sext_personal'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.flags.evil == 1>>
You try to sext <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, but get a "number out of service" error. It looks like <<=setup.getNpcName('npc_work_doctor', 'formal')>> is keeping quite the tight leash on <<his npc_work_doctor>> new assistant...
<<else>>
<<if $scene.random>>
<<if $npc_psychiatrist.flags.sexting.times_sexted_accidentally == 1>>
"@@.npc_psychiatrist;Hmm, is that what you are wearing to bed? I typically tell my patients to wait for their next session, but if you are sending this you must really need some advice, let me take a closer look.@@"<br>
<br>
<<printThought "Oh no, I accidentally sent a naughty sext to <<=setup.getNpcName('npc_psychiatrist', 'formal')>>!">><br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
You should be embarrassed, but more than that, you are aroused. You feel yourself relaxing like you do during your sessions. After all, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> always has your best interests in mind; even going so far as to help you learn what those interests are.
<<elseif setup.getTotalValue("humiliation") >= 5>>
You are both embarrassed and aroused in equal measure, nervously wondering what <<=setup.getNpcName('npc_psychiatrist', 'formal')>> might be thinking. Your mind immediately conjures the familiar sight of her looking at you with her large, inquisitive eyes, scratching away at her notepad.
<<else>>
You are more embarrassed than you've ever been in session, despite all the personal things you have shared with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> this feels somehow even more intimate.
<</if>>
<br><br>
The only solace you might take in your error is that this is still covered by doctor/patient confidentiality.
<<else>>
Reading the incoming name on the text you realise you have once again fat-fingered your sext.<br>
<br>
<<printThought "Am I really this clumsy, or is this my subconscious acting out? I suppose <<=setup.getNpcName('npc_psychiatrist', 'formal')>> would be the person to know about that sort of things...">>
<</if>>
<br><br>
<</if>>
<<if setup.checkVisibleClothingTag("sissy") > 50>>
"@@.npc_psychiatrist;I quite like your nightie. What do you enjoy best? How light and cute it is, or the way that soft lace feels against your skin?@@"
<<elseif setup.isItemEquipped("pyjama")>>
"@@.npc_psychiatrist;Aren't those pyjamas meant for men? A weird choice, don't you find that fake satin scratchy and uncomfortable?@@"
<<elseif setup.checkNaked()>>
"@@.npc_psychiatrist;Sleeping naked, are we? Doesn't it feel so free and unrestrictive when you do that?@@"
<<else>>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
"@@.npc_psychiatrist;Oh my, what a top! I just love how it reinforces your wonderful bosom. Like you are proudly shouting who you are!@@"
<<case 'large'>>
"@@.npc_psychiatrist;What a top but... and excuse me saying this, but you are a bit short of "mega"... maybe this is you telling yourself you want a bit more?@@"
<<case 'medium'>>
"@@.npc_psychiatrist;An interesting choice of top... perhaps a subconscious indication that you would like to be even larger in the chest?@@"
<<case 'small' 'none'>>
"@@.npc_psychiatrist;A curious choice in tops... perhaps you mean it ironically? Be careful with that, I always say authenticity is the way to go.@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<case "female">>
"@@.npc_psychiatrist;Are you feeling confused? Your undergarments are so muddled, you should really focus more on clarifying your desires.@@"
<<case "bold">>
"@@.npc_psychiatrist;Hmm, that is a very bold choice of underwear. Do you feel the need to be more in charge of your life?@@"
<<case "sissy" "cute" "sissycute">>
<<if setup.isItemEquipped("choker_sissy") || setup.isItemEquipped("secure_sissy_choker")>>
"@@.npc_psychiatrist;That choice is very interesting, how it literally, and accurately, labels you. I think it is healthy to do something like this, to be so confident in what you are you shout it to the world.@@"
<<else>>
"@@.npc_psychiatrist;Ah, a very cute set of underwear. I bet you look even more adorable in person, and those bells! Do they chime out "<<if $fetish.sissy>>sissy<<else>>cute<</if>>, <<if $fetish.sissy>>sissy<<else>>cute<</if>>, <<if $fetish.sissy>>sissy<<else>>cute<</if>>" every time you move?@@"
<</if>>
<<case "modest">>
"@@.npc_psychiatrist;Functional, if somewhat plain. I know it is just underwear, but I think every choice we make either says something about ourselves, or helps take us along the path towards what we want to be.@@"
<<case "fetish">>
"@@.npc_psychiatrist;Ooooh! Kinky! You know that the sexual meaning of fetish actually comes from the field of psychiatry? Of course, there is really nothing wrong with that sort of thing, these days, but remember you can talk to me about ANYTHING during sessions...@@"
<<case "latex">>
"@@.npc_psychiatrist;Ooooh! Latex! How sleek, the way it smooths out imperfections, turning you into a prefect rubber doll... lovely.@@"
<<case "catsuit">>
"@@.npc_psychiatrist;A catsuit to bed? How sleek, the way it smooths out imperfections, quite lovely.@@"
<<case "male">>
"@@.npc_psychiatrist;Masculine underwear... you know I would never have guessed, you really do present quite the puzzle sometimes...@@"
<<case "none">>
"@@.npc_psychiatrist;Sleeping without any underwear? Interesting, do you think being "free" in this fashion will grant you more pleasant dreams?@@"
<<default>>
ERROR: unhandled set style: <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<br><br>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
"@@.npc_psychiatrist;Those are very impressive shoes, and the way you have locked them on shows a real commitment. Heels are such an interesting thing — the steeper and loftier you go the more challenging they become. Much like life, I suppose. I guess wearing those means you are getting ahead fast!@@"<br>
<br>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_psychiatrist;Is <<=setup.getNpcName('npc_manager', 'formal')>> still keeping you locked up? Well, I guess if that is what you want, <<if $player.body_ref.penis>>your <<getWordMyPenis false>> does look quite cute all restrained<<else>>it does look quite enticing, all sleek<</if>> and secure.@@"<br>
<br>
<</if>>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.isItemEquipped("analplug_medium_ems")>>
"@@.npc_psychiatrist;Is that the plug from our sessions? It is! Do not worry, I'm not going to accuse you of stealing or anything! But, you know it seems a shame that you aren't "plugged in" for the night as well as being plugged. If my grant only afforded me more equipment to send home with, you we could lean so much together...@@"
<<else>>
"@@.npc_psychiatrist;That is quite a nice looking plug in your bum. I bet it keeps all the cute dreams from leaking out while you sleep!@@"
<</if>>
<br><br>
<</if>>
<<switch $scene.approval>>
<<case 7>> /*ems plug, heels, matching sissy underwear w/collar*/
"@@.npc_psychiatrist;The only other thing I can say is wow. It is like you have transcended to another level. They say the clothes maketh the man, but they make the <<if $fetish.sissy>>sissy<<else>>girl<</if>> as well and your entire outfit is working together towards that end. Such clarity of effort is the whole goal of therapy, it is so heartening to see our efforts manifesting so well for you.@@"
<<case 6 5>>/*plug, heels, matching bold or sissy underwear */
"@@.npc_psychiatrist;Overall I am really impressed with your selections. I think you are well on your way to becoming the girl of your dreams.@@"
<<case 4 3>>
"@@.npc_psychiatrist;Thank you for sending me these images. Opening yourself up like this can only be good for your mental health, and what you reveal... well, it reinforced my feelings that our therapy has really been helping you out.@@"
<<case 2 1 0>>
"@@.npc_psychiatrist;You look cute, but I feel like you are missing something. Bedtime should be a period of tranquility and comfort, what do you think you could wear that would put you more at ease?@@"
<<case -1>> /* Male sleepwear */
"@@.npc_psychiatrist;I am sorry to note that you appear very stressed. I hope you are just tired from a long, hard... day, but if it is something else be sure to bring it up during our next session.@@"
<<default>>
ERROR: unhandled approval: <<=$scene.approval>>
<</switch>>
<</if>>
<br><br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to technician
#status: RELEASED 0.6.0.0
#ignore_spell: h,<3
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_technician')>>
<<if $npc_technician.flags.evil != 1>>
<<set $npc_technician.flags.sexting.times_sexted += 1>>
<<if $npc_technician.flags.sexting.times_sexted == 1>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_3'
5
'event_technician_theme_sexting'
true
>>
<</if>>
<<if $scene.random>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_FRIEND>>
<<set $npc_technician.flags.sexting.times_sexted_accidentally += 1>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
>>
<</if>>
<</if>>
<<if $npc_technician.relationship.relationship_stage >=1>>
<<set $scene.domAppearance = 0>>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
<<set $scene.domAppearance -= 1>>
<<case "bold">>
<<set $scene.domAppearance += 1>>
<<case "sissy" "cutesissy" "cute">>
<<set $scene.domAppearance -= 1>>
<</switch>>
<<if setup.checkItemTypeWorn("choker")>>
<<if setup.isItemEquipped("choker_sissy") || setup.isItemEquipped("secure_sissy_choker")>>
<<set $scene.domAppearance -= 2>>
<<else>>
<<include "calcCollarType">>
<<switch $scene.wornCollarType>>
<<case "ring">>
<<set $scene.domAppearance -= 2>>
<<case "collar">>
<<set $scene.domAppearance -= 1>>
<</switch>>
<</if>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.domAppearance -= 2>>
<</if>>
<<else>>
<<set $scene.approval = 0>>
<<if setup.checkVisibleClothingTag("sissy") > 50>>
<<set $scene.approval += 1>>
<<elseif setup.checkNaked()>>
<<set $scene.approval += 1>>
<</if>>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
<<set $scene.approval += 2>>
<<case "female">>
<<set $scene.approval += 1>>
<<case "bold">>
<<set $scene.approval += 5>>
<<case "sissy" "cute" "sissycute">>
<<if setup.isItemEquipped("choker_sissy") || setup.isItemEquipped("secure_sissy_choker")>>
<<set $scene.approval += 5>>
<<else>>
<<set $scene.approval += 2>>
<</if>>
<<case "modest">>
<<set $scene.approval += 2>>
<<case "fetish" "latex" "catsuit">>
<<set $scene.approval += 5>>
<</switch>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.approval += 1>>
<</if>>
<<if setup.checkItemTypeWorn("plug")>>
<<set $scene.approval += 1>>
<</if>>
<<if !setup.isBodySlotVisible('penis')>>
<<set $scene.approval += 1>>
<</if>>
<</if>>
<<if setup.checkItemTypeTag('shoes', ['bedheels']) && $npc_technician.relationship.kink_indulge.heels >= 3>>
<<addNpcTheme 'npc_technician' 'other' 'theme_technician_other_bed_heels'
7
'event_technician_heels_bed_heels_1'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_technician.flags.evil == 1>>
You send a sext to <<=setup.getNpcName('npc_technician', 'first')>>... but her response is short and cruel.<br>
<br>
"@@.npc_technician;Sexting me? What a simp. Total cringe.@@"
<<elseif State.hasPlayed("event_destroy_technician_6")>>
You attempt to sext <<=setup.getNpcName('npc_technician', 'first')>> but get a "@@.computer;this number is not in service@@" error and you reflect on your betrayal of the cute Tech Wizard to <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
[<<moveTo $scene.beforePhoneCallLocation "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
"@@.npc_technician;Hey, you trying to send a pictures? Damn phone. My building has like, the worst reception. Lemme bounce the wifi.@@"<br>
<br>
<<if $scene.random>>
<<if $npc_technician.flags.sexting.times_sexted_accidentally == 1>>
<<printThought "Oh no, I accidentally sent those pictures to <<=setup.getNpcName('npc_technician', 'first')>>!">>
<br><br>
<<if setup.getTotalValue("humiliation") >= 10>>
You should be embarrassed, and yet instead all you are is aroused as the thought of your perverted friend looking at you all naughty in your sleepwear.
<<elseif setup.getTotalValue("humiliation") >= 5>>
You are both embarrassed and aroused in equal measure. Technically you have a bit of an arrangement, knowing her secret and all, but still. As chill as she has been, you still nervously await her reply.
<<else>>
Even if <<=setup.getNpcName('npc_technician', 'first')>> has always been kind of flirty you are mortified, frozen in shock and unable to look away from your phone, and yet terrified to read her response.
<</if>>
<<else>>
<<printThought "Oh crap, I sent those pictures to <<=setup.getNpcName('npc_technician', 'first')>> by accident again!">><br>
<br>
<<if $npc_technician.relationship.relationship_stage >=1>>
<<printThought "I guess I owe her something since our last date, maybe this is just my subconscious reaching out?">>
<<else>>
<<printThought "Am I really this clumsy, or is this me subconsciously trying to flirt? Maybe I should just ask her on a date...">>
<</if>>
<br><br>
Fortunately <<=setup.getNpcName('npc_technician', 'first')>> has always been really cool, but you still nervously bite your lip as you await her reply.
<</if>>
<br><br>
<</if>>
<<if $npc_technician.relationship.relationship_stage >=1>>
"@@.npc_technician;Aww, a good night picture? I guess I should return the favour, one sec.@@"<br>
<br>
A moment later you get a selfie of <<=setup.getNpcName('npc_technician', 'first')>>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
she's dressed in a cute, but skimpy pair of red panties, the outline of her <<if $npc_technician.relationship.her_caged>>caged<<else>>straining<</if>> member clearly silhouetted in the stretchy material. <<if $npc_technician.relationship.her_collared>>Rounding things off is your collar proudly displayed around her neck as she smiles submissively up at the camera.<<else>>She grins up at the camera, the only thing possibly missing that her neck is sadly bereft of a collar...<</if>>
<<case "dom">>
she's dressed in bold red panties, standing confident with the camera angled so that she appears to be looking down, the shape of her <<if $npc_technician.relationship.her_caged>>caged<<else>>hard<</if>> member very noticeably straining underneath her clothes.
<<case "neutral" ''>>
she's dressed in a long shirt with a video game character on the front, flashing a cute smile and a two-finger peace sign.
<<default>>
ERROR unknown relationship role: <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
<<if State.hasPlayed("event_technician_heels_bed_heels_3")>>
With a grin, she pans the camera further down for another pic highlighting her locked-on bed heels.<br>
<br>
<</if>>
"@@.npc_technician;Alright, now that you've seen me, lemme feast these eyes on what you're wearin'...@@"<br>
<br>
There's a brief pause of "the other person" is typing and then her responses start coming in like rapid fire bullets.
<<if setup.checkVisibleClothingTag("sissy") > 50>>
"@@.npc_technician;That nighty? Cute and hawt.@@"
<<elseif setup.isItemEquipped("pyjama")>>
"@@.npc_technician;Pyjamas? You can totally do better than that!@@"
<<if $npc_technician.relationship.her_role == "sub">>
<br><br>
"@@.npc_technician;I mean, wouldn't something more feminine be more comfortable, Mistress?@@"
<</if>>
<<elseif setup.checkNaked()>>
"@@.npc_technician;Naked! So sexy, I wish I could cuddle up against all that sexy smooth <<if $fetish.sissy>>sissy<<else>>girl<</if>>-flesh!@@"
<</if>>
<br><br>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
"@@.npc_technician;Holy crap that shirt... though damn but is it truth in advertising for you!@@"
<<case 'large'>>
"@@.npc_technician;Holy crap that shirt... though you definitely pull it off!@@"
<<case 'medium'>>
"@@.npc_technician;Holy crap that shirt... maybe a little over-promising? But it does successfully draw the eye to dem titties!@@"
<<case 'small'>>
"@@.npc_technician;Holy crap that shirt... even if it's a bit ironic.@@"
<<case 'none'>>
"@@.npc_technician;Hah! That shirt, the irony.@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<case "female">>
"@@.npc_technician;Panties... yum.@@"
<<case "bold">>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Mmm, you look so sexy and dominant, makes me wish I was cuddled at the foot of your bed!@@"
<<case "dom">>
"@@.npc_technician;Hmm, are you forgetting your role? I'm the one in charge, and don't you forget it lest I turn that cute bum red, but good!@@"<br>
<br>
"@@.npc_technician;Seriously, though, you look totes hot in those.@@"
<<case "neutral" ''>>
"@@.npc_technician;Mmm, sexy, I could see myself saying "yes Mistress" to those for sure...@@"
<</switch>>
<<case "sissy" "cute" "sissycute">>
"@@.npc_technician;Amghad! You are just SO CUTE in those undergarments! Like, seriously I'm so wet right now just looking at you...@@"<br>
<br>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;If I wasn't locked in this infuriating cage, I would totally jerk one out right now... though I guess that's why you have me in this thing ><@@"
<<else>>
There is a brief pause before her next message.<br>
<br>
"@@.npc_technician;Sorry, had to go squeeze one out, looking at you like that was just turning me on way too much.@@"
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
<br><br>
"@@.npc_technician;Guess I'll be getting a punishment for that later... totes worth it!@@"
<<case "dom">>
<br><br>
"@@.npc_technician;It's just a pity you aren't here to clean up... all this yummy girl-cum that you don't get to lick up...@@"
<</switch>>
<</if>>
<<case "modest">>
<<if setup.checkItemWorn("panties_technician")>>
"@@.npc_technician;Wearing my old underwear to bed! Why you sexy little perv! Damn, but I wish I was back in those underwear right now... if you know what I mean.@@"
<<else>>
"@@.npc_technician;Sensible underwear... I kind of expected something less ho-hum...@@"
<</if>>
<<case "fetish">>
"@@.npc_technician;Oh wow those are... mmmfff, girl after my own kinky heart, I love it!@@"
<<case "latex">>
"@@.npc_technician;Oh fuck, latex... you really know how to turn a girl on, don't you? I LOVE latex.@@"
<<case "catsuit">>
"@@.npc_technician;A catsuit? Me-ow! You look HAWT with a capital H!@@"
<<case "male">>
"@@.npc_technician;Male, yuck! Is that, like a joke? Not a good one, if it is...@@"
<<case "none">>
"@@.npc_technician;Sleeping commando? Fun! Nice easy access for anyone sleeping next to you...@@"
<<default>>
ERROR, missing description for: <<=$scene.underwearStyle>>
<</switch>>
<br><br>
<<if setup.checkItemTypeWorn("choker")>>
<<if setup.isItemEquipped("choker_sissy") || setup.isItemEquipped("secure_sissy_choker")>>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;That choker though... I mean don't get me wrong it's cute as all heck, but, well... it somewhat dents your dominant vibe...@@"
<<case "dom" "neutral">>
"@@.npc_technician;And that choker... you just can't resist going all out to shout your <<if $fetish.sissy>>sissydom<<else>>girlyness<</if>> to the world! I fucking love that about you! You better wear it next time we get together so I can try to pop that shit!@@"
<</switch>>
<<elseif setup.isItemEquipped("rpg_succubus_collar")>>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Mmm, my sexy succubus queen... you look so good in that, even if it isn't quite appropriate for a domme...@@"
<<case "dom">>
"@@.npc_technician;Mmm, my sweet, sexy succubus slave, I just love that collar on you!@@"
<</switch>>
<<elseif setup.isItemEquipped("slave_spiked_collar")>>
"@@.npc_technician;Hey, that's a cool collar... though, spikes seem like a bad idea for sleeping...@@"
<<elseif setup.isItemEquipped("obedience_collar")>>
"@@.npc_technician;Holy crap! That collar is intense! It's like you're some sort of prisoner... or a slave of some high-tech empire... so hot!<<if $npc_technician.relationship.her_role == "slave">> Though... shouldn't I be wearing that, considering?<</if>>@@"
<<elseif setup.checkItemTypeTag('choker', ['posture_collar'])>>
"@@.npc_technician;Wow, sleeping in a posture collar? That's intense!@@"
<<else>>
<<switch $scene.wornCollarType>>
<<case "ring">>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Hey, I'm the one who is supposed to be collared! though... you look really good in it...@@"
<<case "dom">>
"@@.npc_technician;Mmm, collared for bed, what a good slave!@@"
<<case "neutral" ''>>
"@@.npc_technician;Collared for bed? I want in on that!@@"
<</switch>>
<<case "collar">>
"@@.npc_technician;Sexy collar!<<if setup.isItemEquipped("spiked_collar")>> Though I hope you don't poke yourself in your sleep.<</if>>@@"
<<case "choker">>
"@@.npc_technician;Hmm, that's a pretty fancy choker but... isn't it going to be a bit uncomfortable to wear to bed?@@"
<<case 'tie'>>
"@@.npc_technician;Wearing a tie to bed? Well, colour me totally confused.@@"
<</switch>>
<</if>>
<br><br>
<</if>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<if State.hasPlayed("event_technician_heels_bed_heels_3")>>
<<else>>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Woah, those heels are insane! You aren't going to order me to wear anything like that, are you, Mistress? I know I'm not as good with heels as you are, but they look so scary ><@@"
<<case "dom">>
"@@.npc_technician;Woah, those heels! No wonder you're so good in heels! Keep it up, I love having you as my high heel slave... just don't expect me to do the same, heh.@@"
<<case "neutral" ''>>
"@@.npc_technician;Wow, those shoes are totally crazy! No wonder you're so good at walking in heels.@@"
<</switch>>
<<if !State.hasPlayed("event_technician_heels_bed_heels_3") && $npc_technician.relationship.kink_indulge.heels >= 3>>
<br><br>
<<printThought "Hmm... thinking about it, she could benefit from bed heels... something to chat about over coffee, maybe?">>
<</if>>
<</if>>
<br><br>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Looks like we're both stuck <<if setup.isCage()>>caged<<else>>in chastity<</if>>, what's that meme, "and they were both subs?" not that I'm calling you a sub, mind, you're still my wonderful Mistress, even if you are locked up by someone else <3@@"
<<else>>
"@@.npc_technician;Aww, you're <<if setup.isCage()>>caged<<else>>belted<</if>> and I'm free, ain't that a reversal! Not that I'm making fun of you, I promise I'm a good slave, not a brat!@@"<br>
<br>
"@@.npc_technician;Well... not always a brat...@@"
<</if>>
<<case "dom">>
<<if $npc_technician.relationship.keyholder>>
"@@.npc_technician;<<if setup.isCage()>>Caged<<else>>Wearing your chastity belt<</if>>, and me with key in hand... just as it should be!@@"
<<else>>
"@@.npc_technician;I love that you're <<if setup.isCage()>>caged<<else>>wearing a chastity belt<</if>>, though I am annoyed that I'm not the one responsible for keeping you locked...@@"
<</if>>
<<case "neutral" ''>>
"@@.npc_technician;You know, you look really good in a <<if setup.isCage()>>cage<<else>>chastity belt<</if>>, anyone ever tell you that?@@"
<</switch>>
<br><br>
<</if>>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemVisible(setup.getItemFromType("plug"))>>
"@@.npc_technician;Ooooh, sleeping plugged? So hot! I'm totally going to do the same!@@"
<<else>>
"@@.npc_technician;Is that the outline of a plug? So hot, I'm totally gonna sleep plugged too, we'll be like booty twins!@@"
<</if>>
<br><br>
A few moments pass before her next message.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Oh yes! I wish this was you inside me right now... fuck your slave good...@@"
<<case "dom">>
"@@.npc_technician;Aww yeah, that feels good, can't let you <<if $fetish.sissy>>sissy<<else>>cute<</if>> slaves have all the butt-fun!@@"
<<case "neutral" ''>>
"@@.npc_technician;Mmm, that feels great, I should really do this more often, thanks for the idea!@@"
<</switch>>
<br><br>
<</if>>
<<if setup.isBodySlotVisible('penis')>>
<<if $player.body_ref.penis>>
"@@.npc_technician;By the way, nice broadsword! We should totally fence sometime — victor gets to use the loser as their sheath!@@"
<<else>>
"@@.npc_technician;By the way, that is just the most lovely cunny... and I bet it tastes and feels even better!@@"
<</if>>
<br><br>
<</if>>
<<switch $scene.domAppearance>>
<<case 1>>
"@@.npc_technician;You know, I don't quite understand how you can look so cute and dominant and the same time, but boy is it sexy!<<if $npc_technician.relationship.her_role == "dom">> Though... you'd look even better dressing to match your role.<</if>>@@"
<<case 0>>
"@@.npc_technician;Neither dom nor sub... you are quite the conundrum! A very cute conundrum though!@@"
<<case -1 -2>>
"@@.npc_technician;Don't you look innocently submissive though... I think, as they say, you can totally go deeper...@@"
<<if $npc_technician.relationship.her_role == "sub">>
<br><br>
"@@.npc_technician;Ooops, forgot my place again >< sorry, Mistress, but you are just too cute for your own good sometimes...@@"
<</if>>
<<case -3 -4>>
"@@.npc_technician;So I tallied the scores and... you are one of the cutest<<if $fetish.sissy>>, sissiest<</if>> things I've ever seen!@@"
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
<br><br>
"@@.npc_technician;Kinda makes me feel a bit inadequate, but then I remember how much I love being your slave and well... go go <<if $fetish.sissy>>sissy<<else>>cutie<</if>> in charge!@@"
<<case "dom">>
<br><br>
"@@.npc_technician;That said, I think there's a bit more work to make you perfect... and I'm here to help!@@"
<</switch>>
<<case -5>>
"@@.npc_technician;It's official, you are the cutest<<if $fetish.sissy>>, sissiest<</if>> thing there is!@@"<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "sub">>
"@@.npc_technician;Kinda makes me feel a bit inadequate, but then I remember how much I love being your slave and well... go go <<if $fetish.sissy>>sissy<<else>>cutie<</if>> in charge!@@"
<<case "dom">>
"@@.npc_technician;I'm so grateful that you're mine, you make me so happy!@@"
<<case "neutral" ''>>
"@@.npc_technician;Oh how I would love to make you mine...@@"
<</switch>>
<</switch>>
<<else>>
<<if $npc_technician.flags.sexting.times_sexted == 1>>
"@@.npc_technician;Woah, did you fat finger things in sending these to me?@@"<br>
<br>
"@@.npc_technician;Is this what you're wearing now? I promise I won't blackmail you or anything like that if you let me keep these pics...@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> seems to take you lack of swift reply for consent and a few moments later you get a flurry of texts commenting on your look.
<<else>>
"@@.npc_technician;More pics? For me? You are such a tease! Whatever, imma totally gonna check. You. OUT!@@"
<</if>>
<br><br>
<<if setup.checkVisibleClothingTag("sissy") > 50>>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Oooh, that is totally a woman's nightie! You kinky boy, I love it!@@"
<<else>>
"@@.npc_technician;To be honest, this is kind of what I always imagined you wearing to bed, so cute! And no it's totally not weird for me to think about that sort of thing. You're the perv sending me naughty pics!@@"
<</if>>
<<elseif setup.isItemEquipped("pyjama")>>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Those pyjamas are kind of dull, though I guess that's normal for male clothing. Even if heels can be uncomfortable I definitely prefer my options as a girl overall.@@"
<<else>>
"@@.npc_technician;Dang, boring old pj's? I totally expected you to sleep in something more fun!@@"
<</if>>
<<elseif setup.checkNaked()>>
"@@.npc_technician;Wow, I figured you had a cute body, but it's even better than I thought! All smooth and shapely <<if setup.getTotalValue("strength") < 5>>without any<<elseif setup.getTotalValue("strength") < 10>>with hardly any<<else>>with just enough<</if>> muscle.@@"
<<else>>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
"@@.npc_technician;Holy crap that shirt... though damn but is it truth in advertising for you!@@"
<<case 'large'>>
"@@.npc_technician;Holy crap that shirt... though you definitely pull it off!@@"
<<case 'medium'>>
"@@.npc_technician;Holy crap that shirt... maybe a little over-promising? But it does successfully draw the eye to dem titties!@@"
<<case 'small'>>
"@@.npc_technician;Holy crap that shirt... even if it's a bit ironic.@@"
<<case 'none'>>
"@@.npc_technician;Hah! That shirt, the irony.@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<case "female">>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Wow, woman's underwear? You're a bit mismatched, but still, I had no idea! I can totally help you coordinate better.@@"
<<else>>
"@@.npc_technician;Huh, I totally thought you'd be more coordinated, I guess you're still starting out, let me know if you need help.@@"
<</if>>
<<case "bold">>
"@@.npc_technician;Wow, I had no idea you could look so... domme! It's honestly making me kind of hot!@@"
<<case "sissy" "cute" "sissycute">> /* not including collar */
<<if setup.isItemEquipped("choker_sissy") || setup.isItemEquipped("secure_sissy_choker")>>
"@@.npc_technician;Wow! That collar! I had no idea you were such a <<if $fetish.sissy>>sissy<<else>>cute<</if>> slut! It's weird — on the one hand, I can't believe it and yet I feel like I always kind of knew...@@"
<<else>>
"@@.npc_technician;Wow, that <<if $fetish.sissy>>sissy<<else>>cute<</if>> ensemble, you were totally born to wear that, you look amazingly adorable!@@"
<</if>>
<<case "modest">>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Wow, woman's underwear? And you've matched it and everything, how long have you been doing this? You totally have to come out with me in public like that sometime!@@"
<<else>>
"@@.npc_technician;Yup, it's official. You should never wear anything but woman's underwear, you are just too hawt for anything else!@@"
<</if>>
<<case "fetish">>
"@@.npc_technician;Oooh! I love that kinky underwear, so much sexier than most 'nilla stuff...@@"
<<case "latex">>
"@@.npc_technician;Oooh! Latex... I love latex so much, sleeping in it alone though... well, I hope you don't end up as hot as you so totally are.@@"
<<case "catsuit">>
"@@.npc_technician;A catsuit? Me-ow! You look HAWT with a capital H!@@"
<<case "male">>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Male underwear, ho-hum. I gotta tell you — female options are SOOOO much better!@@"
<<else>>
"@@.npc_technician;Male underwear? Ew, and I KNOW you can do better...@@"
<</if>>
<<case "none">>
"@@.npc_technician;Not sleeping in underwear? Hmm, interesting choice... or did you just want to take the opportunity to flash me?@@"
<<default>>
ERROR, missing description for: <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<br><br>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<if !$npc_technician.flags.sawyouinfemaleclothes && !$npc_technician.flags.reactnamechange>>
"@@.npc_technician;Woah, you're wearing woman's shoes to bed? I never would have guessed, though, seriously... What the fuck are those heels!? I die in anything over, like, 5cm! Those things look like they should be a war-crime!@@"
<<else>>
"@@.npc_technician;What the fuck are those heels!? I die in anything over, like, 5cm! Those things look like they should be a war-crime!@@"
<</if>>
<br><br>
"@@.npc_technician;Fuck... now I kind of want to see them in action, can you even walk in them? Like, there's no way that's possible, right?@@"<br>
<br>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<if $npc_technician.relationship.her_caged>>
"@@.npc_technician;Mmm, at least I don't have to feel like the only one suffering, I'm still not a hundred percent how you talked me into being locked in chastity, but it's a bit easier to handle with the reminder that you are too.@@"
<<elseif $npc_technician.relationship.done_her || $npc_technician.relationship.done_you || $npc_technician.relationship.done_vag>>
"@@.npc_technician;Mmm, I just love chastity pics. Especially of you.@@"
<<else>>
"@@.npc_technician;Omigod, a chastity <<if setup.isCage()>>cage<<else>>belt<</if>>? I tried one of those once, before I got the hang of tucking, I thought it was kind of annoying but on you... I dunno, on you it just looks right somehow.@@"
<</if>>
<br><br>
<</if>>
<<if setup.checkItemTypeWorn("plug")>>
<<if $npc_technician.relationship.done_you>>
"@@.npc_technician;Sleeping plugged? So hot — no wonder you handled me without issue. Constant, sexy training.@@"
<<else>>
"@@.npc_technician;I can't believe you're sending me pictures of your cute ass, and is that a plug? Oh man, I'm getting hard just thinking about it! Is it a big plug, or do you still have a tight little hole that needs breaking in?@@"
<</if>>
<br><br>
<</if>>
<<if $player.body_ref.penis && !setup.isBodySlotVisible('penis')>>
"@@.npc_technician;Heh, you look so cute with just that sweet, feminine bulge!@@"<br>
<br>
<</if>>
<<switch $scene.approval>>
<<case 9 8 7 6>> /* 4+ only possible with bold or full sissy */
<<if $scene.underwearStyle == "bold">>
"@@.npc_technician;Wow, I'm still staring at this pic, you look totally ready to do a scene, like your gf just came home to find you playing like that and you just take charge and force her to serve you and <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>lick your cage<<else>>polish your belt<</if>><<else>>ravage her<</if>> and you make her your slave...@@"
<<elseif $scene.underwearStyle == "sissy">>
"@@.npc_technician;Like wow, you look like you belong in some <<if $fetish.sissy>>sissy<<else>>cute<</if>> porno! Like you're the end product after hours of forced feminisation and then you get rewarded with a fat <<if $options.fem>>girl<</if>>cock in your mouth and like the biggest facial ever...@@"
<<else>>
"@@.npc_technician;Mmm, you know, all in all you are just looking sooo cute...@@"
<</if>>
<br><br>
"@@.npc_technician;Fuck, you totally owe me for making me ruin my panties!@@"
<<case 5 4 3>>
"@@.npc_technician;So yeah, I am totally saving this picture for the old spank bank. Dang, but I wish I knew all this about you back when we worked together and you weren't stuck way up on the upper levels all day. You're like a princess in a tower up there!@@"
<<case 2 1>>
"@@.npc_technician;I dunno why I was expecting something more, but, like... you used to just dress so dull I always felt like you had some sort of kinky secret life, guess not?@@"
<<case 0>> /* not possible due to male pyjamas hiding penis */
<<default>>
ERROR approval out of range: <<=$scene.approval>>
<</switch>>
<</if>>
<</if>>
<br><br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to exgirlfriend
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_exgirlfriend')>>
<<set $npc_exgirlfriend.flags.sexting.times_sexted += 1>>
<<if $scene.random>>
<<applyExperience 'humiliation' 13 'normal' $SEEN_FRIEND>>
<<set $npc_exgirlfriend.flags.sexting.times_sexted_accidentally += 1>>
<<set $player.flags.accidental_sext = true>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
/* TODOfuture — if she warms back up to you this obviously needs additional options */
<<if $scene.random>>
<<if $npc_exgirlfriend.flags.sexting.times_sexted == 1>>
<<printThought "Oh crap, I just sent those pictures to my ex!">><br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
You should be embarrassed, and yet more than that you are aroused at the thought of your old flame looking at you in all your "evolved" glory.
<<elseif setup.getTotalValue("humiliation") > 5>>
You are both embarrassed and aroused in equal measure. Technically she's seen you naked, but that was when you were dating, and never anything like this...
<<else>>
You are filled with dread, what if she freaks out? Or sends her new <<boy npc_yogateacher>>friend to kick your ass?
<</if>>
<br><br>
At this point all you can do is wait for her reaction.
<<else>>
<<printThought "Oh crap, I just sent another sext to my ex! Why do I keep doing this?">>
<</if>>
<br><br>
<</if>>
<<if $npc_exgirlfriend.flags.evil == 1>>
"@@.npc_exgirlfriend;Pathetic, why on earth would you think I'd want to look at YOU before I went to bed? Ugh, I'm going to have to do something to cleanse my thoughts or I'm going to be dreaming of losers and the nightmare that was our sexless relationship!@@"
<<elseif State.hasPlayed("event_yoga_private_3_5") || $npc_exgirlfriend.flags.sexclub.pegged>>
"@@.npc_exgirlfriend;Hmm... cute... though I'm not sure if you should really be sexting me like this?@@"
<<else>>
"@@.npc_exgirlfriend;What the hell? I know you're still getting over our breakup, but it's over.@@"<br>
<br>
<<if $scene.panties == "cotton_panties" || $scene.bra == "cotton_bra">>
"@@.npc_exgirlfriend;Wait, are those my old underthings?! You said you donated them! I don't care if we broke up, you shouldn't lie to me! Especially about something like that, I mean why didn't you say you were into crossdressing back when we were together?@@"
<<elseif setup.analyzeWornTags(['female','male','unisex']) == 'female'>>
"@@.npc_exgirlfriend;I mean you look cute, maybe if you'd told me about your fetishes and we'd experimented when we were together we might have worked something out, but it's too late now for anything like that.@@"
<<elseif setup.isBodySlotVisible('penis')>>
"@@.npc_exgirlfriend;Seriously, a dick pic? I guess grats on getting over the shame about your size, but I'm not really interested in seeing it anymore.@@"
<<elseif setup.checkItemTypeWorn("plug")>>
"@@.npc_exgirlfriend;Is that a plug in your ass? Is this because I told you I was doing anal when I cheated on you? I wish you'd been this adventurous when we were together, but it's too late for that now.@@"
<<elseif setup.checkItemTypeWorn("cage")>>
"@@.npc_exgirlfriend;What the heck? Is that... your penis inside that thing? It looks so weird! is it painful?@@"<br>
<br>
A couple moments pass.<br>
<br>
"@@.npc_exgirlfriend;Shit, ignore my last message, I'm a little drunk. Don't send me stuff like this, we're over.@@"
<<elseif setup.checkNaked()>>
"@@.npc_exgirlfriend;What the heck? I really hope this was a mistext, good luck with your new beau, leave me alone.@@"
<<else>>
"@@.npc_exgirlfriend;Why are you sending me pictures like that? Are you drunk or something?@@"
<</if>>
<br><br>
A moment later you get a follow-up text<br>
<br>
<<if $gym.classes.yoga.level_fem > 0>>
"@@.npc_yogateacher;Hey, mon this is <<=setup.getNpcName('npc_yogateacher', 'first')>> is that really you? You shoulda told me in class, mon, you beautiful!@@"
<<else>>
"@@.npc_yogateacher;Hey, mon this is <<=setup.getNpcName('npc_yogateacher', 'first')>> is that really you? You lookin' beautiful, like a proper girl!@@"
<</if>>
<br><br>
<<printThought "Wait... is <<he npc_yogateacher>> coming onto me?">><br>
<br>
"@@.npc_exgirlfriend;Sorry about that, it's me again, <<=setup.getNpcName('npc_yogateacher', 'first')>> is a bit... yeah, but seriously, don't send me stuff like this again, I'm deleting it, it's over between us, move on with your life.@@"
<</if>>
<br><br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to landlord
#status: RELEASED 0.5.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_landlord')>>
<<set $npc_landlord.flags.selfie = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You send an image to <<=setup.getNpcName('npc_landlord', 'first')>> but it bounces, apparently <<his npc_landlord>> phone is so old it doesn't accept attachments? <br>
<<printThought "Wow, I didn't think you could even buy a phone with that few features...">><br>
<br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>> <br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to barkeeper
#status: RELEASED 0.5.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_barkeeper')>>
<<set $npc_barkeeper.flags.sexting.times_sexted += 1>>
<<if $scene.random>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<set $npc_barkeeper.flags.sexting.times_sexted_accidentally += 1>>
<<set $player.flags.accidental_sext = true>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You send a selfie to <<=setup.getNpcName("npc_barkeeper","first")>>.<br>
<br>
"@@.npc_barkeeper;Hmm, not bad... I'll hold onto this <<if $npc_barkeeper.flags.prostitution.can_work_vip>>might be appealing to some of our VIP clientele<<else>>might appeal to some of our VIP clients... when you prove yourself capable of serving such.<</if>>.@@"<br>
<br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to barista
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_barista')>>
<<set $npc_barista.flags.sexting.times_sexted += 1>>
<<if $scene.random>>
<<applyExperience 'humiliation' 8 'almost' $SEEN_FRIEND>>
<<set $npc_barista.flags.sexting.times_sexted_accidentally += 1>>
<<set $player.flags.accidental_sext = true>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
Your phone suddenly explodes with a flurry of from your "friend" from the office coffeeshop.<br>
<br>
<<if $scene.random>>
<<if $npc_barista.flags.sexting.times_sexted_accidentally == 1>>
<<printThought "Oh shit, I accidentally sexted that slutty girl at work!">><br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
Eclipsing your surprise is your arousal — you wonder if <<=setup.getNpcName('npc_barista', 'first')>> might forward your sext to someone else? Given how ditzy and perverted she is, maybe she already has? The thought only turns you on more as start reading her responses.
<<elseif setup.getTotalValue("humiliation") >= 5>>
From interacting with her <<=setup.getNpcName('npc_barista', 'first')>> is likely the last person to get offended by a sext, hell, she's ditzy enough she might not even remember who you are... you're still a bit nervous though, as you move to the first message in her reply chain.
<<else>>
Even though she has arguably done more embarrassing things in your presence you are still mortified at what you have done, even as you find yourself unable to resist reading her replies.
<</if>>
<<else>>
<<printThought "Shit, I sent it to <<=setup.getNpcName('npc_barista', 'first')>> by accident, again!">><br>
<br>
<<printThought "How does this keep happening, am I becoming as ditzy as <<=setup.getNpcName('npc_barista', 'first')>>? <<if setup.getTotalValue('bimbofication') >= 10>>That would be nice, she always seems so happy and blank!<</if>>">>
<</if>>
<br><br>
<</if>>
<<if setup.checkVisibleClothingTag("sissy") > 50>>
<<if $fetish.daddy>>
"@@.npc_barista;Aww, that's such a cute nightie! I had one like that, but then <<Daddy>> ripped it off. It was okay though, <<he>> came on my tits a few minutes later to make up for it!@@"
<<else>>
"@@.npc_barista;Aww, that's such a cute nightie! I used to have one like that, but it got ripped off "in the throes of passion..." that sort of thing is fun sometimes!@@"
<</if>>
<<elseif setup.isItemEquipped("pyjama")>>
"@@.npc_barista;Like, what are you wearing that for? That sort of clothing is for MEN, why would you dress like some stupid boy when being a cutie <<if $fetish.sissy>>sissy <</if>>is, like, so much better?@@"
<<elseif setup.checkNaked()>>
"@@.npc_barista;Oooo, naked, I love sleeping naked, that way there's nothing in the way if someone wants to take advantage of me in the middle of the night!@@"
<<else>>
<<switch $scene.underwearStyle>>
<<case "megamilk">>
"@@.npc_barista;Ohmygawd! I Love that shirt! I totally need to get one for myself and, like cut it down to be a bit more revealing...@@"
<<case "female">>
"@@.npc_barista;Like, bleh, you need to better match your underwear. Guys say they don't care, but they totally get harder when you put the extra effort in!@@"
<<case "bold">>
"@@.npc_barista;Ooooh, you look so dommy! I've never submitted to a <<if $fetish.sissy>>sissy<<else>>total cutie<</if>> before, I bet that'd be fun! Would you spank me?@@"
<<case "sissy" "cute" "sissycute">>
"@@.npc_barista;Yas <<if $fetish.sissy>>sissy<<else>>girl<</if>>! I love your underwear!@@"
<br><br>
<<if setup.isItemEquipped("choker_sissy") || setup.isItemEquipped("secure_sissy_choker")>>
"@@.npc_barista;Like, ohmygawd that choker! I have one kind of like that, only it's made of leather and it says BIMBO, we should go out together! I bet we'd get, like so much cock!@@"
<</if>>
<<case "modest">>
"@@.npc_barista;Cute undies, if I was <<if $options.fem>>there<<else>>a man<</if>> I'd totally, like, rip them off and ravish you! Would you do the same for me?@@"
<<case "fetish" "latex" "catsuit">>
"@@.npc_barista;Oooh, that's some kinky underwear, yum!@@"
<<case "male">>
"@@.npc_barista;Male underwear? Are those like, your boyfriend's, or something? I've tried that, but like, ew! Girly underwear is sooo much more comfortable, or even better, going without. I love being easy access!@@"
<<case "none">>
"@@.npc_barista;Sleeping without underwear? I've been there! Usually because it got lost earlier in the evening...@@"
<<default>>
ERROR, missing description for: <<=$scene.underwearStyle>>
<</switch>>
<</if>>
<br><br>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
"@@.npc_barista;Bed heels! Those look even steeper than the ones I wear, you totally have to tell me where you bought them!@@"<br>
<br>
<</if>>
<<if setup.checkItemTypeWorn("cage") && $player.body.penissize < 4>>
"@@.npc_barista;Ugh, normally chastity devices are just, like, the WORST, but with your little <<getWordMyPenis false>> I think it kind of works. Getting fucked is the better side of things anyway, so maybe for you it's good to keep you from getting distracted from the important things, stuffing a cock in each of your slut holes!@@"<br>
<br>
<</if>><<if setup.checkItemTypeWorn("plug")>>
"@@.npc_barista;That plug looks so great, I used to have one just like it! It's too bad you can't wear two at a time like I can, I can't imagine how much it would suck to only have two holes for <<if $options.fem>>people<<else>>men<</if>> to use instead of three... that's like, barely half as much cock!@@"
<<elseif setup.isBodySlotVisible('penis')>>
"@@.npc_barista;Aww, your penis is, like, gone, does that mean you're a girl now?@@"
<</if>>
<br><br>
"@@.npc_barista;Sorry girlfriend, the guys just got here and I'm hungry for some cock, see you at work, cum-kisses!@@"<br>
<br>
The flurry of texts finally stops. You wait in case she sends anything more, but it seems your slutty friend has moved on to her next distraction.<br>
<br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to admin
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_admin')>>
<<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>>
<<set $npc_admin.flags.sexting.times_sexted += 1>>
<<if $scene.random>>
<<applyExperience 'bimbofication' 12 'very' $SEEN_FRIEND>>
<<set $npc_admin.flags.sexting.times_sexted_accidentally += 1>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
>>
<</if>>
<</if>>
<<if $npc_admin.stage == 1>>
<<if $npc_admin.flags.flirted>>
<<incrementEmotion 'affection' 'npc_admin' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_admin' 1>>
<<applyExperience 'humiliation' 8 'slightly' $SEEN_FRIEND>>
<</if>>
<<else>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' $npc_admin.penis_size 'little' $SEEN_FRIEND>>
<<case 'boyfriend'>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<applyExperience 'penis' $npc_admin.penis_size 'little' $SEEN_FRIEND>>
<<case 'friend'>>
<<incrementEmotion 'anger' 'npc_admin' 1>>
<<applyExperience 'humiliation' 8 'slightly' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<else>>
<<set $npc_admin.flags.sexting.evil_selfie = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
You send a selfie to <<=setup.getNpcName('npc_admin', 'first')>>, but all you get back in return is a "this number is no longer in service" message.
<<else>>
<<if $scene.random>>
<<if $npc_admin.flags.sexting.times_sexted_accidentally == 1>>
Before you even read the message you notice the wrong icon — you sent your sext to <<=setup.getNpcName('npc_admin', 'first')>> by mistake!!<br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
You should be embarrassed, and you are... and yet also highly aroused at the thought of your<<if $npc_admin.fem>> best friend <<else>> "bro" <</if>>seeing you in all your debauched glory.
<<elseif setup.getTotalValue("humiliation") >= 5>>
<<printThought "What have I done?">><br>
<br>
Despite how well <<=setup.getNpcName('npc_admin', 'first')>> has been taking your changes, you feel like you may have just crossed a line. Nervously you read <<his npc_admin>> reply.
<<else>>
You can't believe you've sent one of your oldest friends such a message, hopefully <<if $npc_admin.fem>>she'll<<else>>he'll<</if>> think it was a mistake?
<</if>>
<br><br>
<<else>>
Reading the incoming name on the text you realise you have once again fat-fingered your sext.<br>
<br>
<<printThought "Why do I keep doing this? Do I want to drive <<him npc_admin>> away?<<if setup.getTotalValue('feminized') >= 10>> or do I think showing <<him npc_admin>> who I really am will take our relationship in a new direction?<</if>>">>
<</if>>
<br><br>
<</if>>
<<if $npc_admin.stage == 1>>
<<if $npc_admin.flags.flirted>>
There's a long wait before you get a text back.<br>
<br>
"@@.npc_admin;Hey, so... was that meant for me? I'm just gonna go ahead and pretend you didn't just send me a cute selfie, aight?@@"<br>
<br>
<<printThought "Did <<he npc_admin>> just... call me cute?">>
<<else>>
"@@.npc_admin;Yo, why you sending me stuff like this? I hope you just messed up and this was meant for a new honey, in which case... tell me about her! But if this is something else, like... a call for help? I know you've been "figuring things out" since the breakup, but if anyone is forcing you to do these things... I'm deleting this, but remember you can always come to me for assistance.@@"
<</if>>
<<else>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
"@@.npc_admin;Hey, if it isn't my favourite cute girl, what sluttiness are you gettin' up to before bed?... damn girl, you're lookin' FINE, here I guess I oughta return the favour, eh?@@"<br>
<br>
<<if $npc_admin.fem>>
A few moments pass and you are treated to a picture of her in the mirror. Phone covering the slight smile on her face, she looks gorgeous from her full breasts peeking out above her bra down to her toned abs and finally the big, beautiful cock she slipped out of her pajama pants. It looks smaller in her hand than it would between your daintier fingers, but it is still perfect. There's an arrow drawn pointing towards the tip with the text "wish you were here" next to it.
<<else>>
A few moments pass and you are treated to a big, beautiful picture of his cock. It looks smaller in his hand than it would between your daintier fingers, but it is still gorgeously perfect. There's an arrow drawn pointing towards the tip with the text "wish you were here" next to it.
<</if>>
<br><br>
"@@.npc_admin;Aight, well, I'll catch you later, have a good night, slut!@@"
<<case 'boyfriend'>>
"@@.npc_admin;Aww, a pre-bed selfie? How sweet, lemme return the favour.@@"<br>
<br>
<<if $npc_admin.fem>>
A few moments pass and you are treated to a picture of her in the mirror. Phone covering the slight smile on her face, she looks gorgeous from her full breasts peeking out above her bra down to her toned abs and finally the big, beautiful cock she slipped out of her pajama pants. It looks smaller in her hand than it would between your daintier fingers, but it is still perfect.
<<else>>
A few moments pass and you are treated to a big, beautiful picture of his cock. It looks smaller in his hand than it would between your daintier fingers, but it is still gorgeously perfect.
<</if>>
<br><br>
"@@.npc_admin;Aight, well, good night, <<=$player.first_name>>. Love you!@@"
<<case 'friend'>>
"@@.npc_admin;Hey, so... we talked about this, right? I just don't see you that way and I'd appreciate it if you don't send me any sexy selfies, right?@@"
<<default>>
ERROR: unexpected scene.date.verdict <<=$scene.date.verdict>>
<</switch>>
<</if>>
<</if>>
<br><br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: fail to text manager a bed selfie
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<if $npc_manager.flags.sent_bed_selfie>>
<<initRoom>>
<<set _beforetasklocation = $scene.beforetasklocation.pop()>>
<<moveTo _beforetasklocation>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if !setup.checkItemOwned("bed_heels_pink")>>
<<set $npc_manager.flags.uniform_upgrade.bed_heel_punish = true>>
<</if>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
/* note: that npc_manager accidentally mentions things she could only know if she could track you and see you in your apartment. Foreshadowing! dun dun duuuun!*/
<<if $scene.beforetasklocation.last() == "room_dreams" || $scene.beforetasklocation.last() == "room_sleepless" || $scene.beforetasklocation.last() == "room_wake_up">>
You are awoken by a text from <<=setup.getNpcName('npc_manager', 'formal')>>.
<<else>>
You get a text from from <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>
<br><br>
"@@.npc_manager;What is going on, <<=$player.first_name>>? I told you to send me a picture of you wearing bed heels before you went to sleep. Where is it?@@"<br>
<br>
<<if $scene.beforetasklocation.last() == "room_dreams" || $scene.beforetasklocation.last() == "room_sleepless" || $scene.beforetasklocation.last() == "room_wake_up">>
Before you can react a second text comes in.<br>
<br>
<<if !setup.checkItemTypeTag('shoes', ['bedheels'])>>
"@@.npc_manager;How brainless are you? I said to put on your bed heels and send me a picture. Get that camera out and follow ALL of my instructions, no picture means no credit!@@"<br>
<br>
[<<moveTo "event_bedroom_bed_heels" "Take a picture in your bed heels and send it to her." 1 "<<set $currentcall = false>>">>]
<<elseif setup.checkItemOwned("bed_heels_pink")>>
"@@.npc_manager;I told you to buy bed heels, wear them to bed and send me a picture! Did you think I just wanted to go shopping?@@"<br>
<br>
[<<moveTo "event_bedroom_bed_heels" "Put on the bed heels and take the picture she requested." 1 "<<set $currentcall = false>>">>]
<<else>>
"@@.npc_manager;I told you to buy a pair of bed heels and send me a picture before you went to sleep! I am very disappointed in your complete failure to follow instructions.@@"<br>
<br>
<<printThought "How did she guess I screwed up so bad?">><br>
<br>
Your blood runs cold; you totally forgot to inquire at the shoe store as <<=setup.getNpcName('npc_manager', 'formal')>> instructed.<br>
<br>
[<<moveTo "event_bed_heels_photo_excuse" "Beg her forgiveness." 1>>]<br>
[<<moveTo $scene.beforetasklocation.last() "Pretend you didn't get her message and leave things for tomorrow." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
<<else>>
"@@.npc_manager;What are you doing <<if setup.inPassageTag($scene.beforetasklocation.last(),'home')>>up<<else>>out<</if>> this late? You should be in bed, with me looking at a picture of your cute feet all stretched out in your new heels by now!@@"<br>
<br>
<<if $scene.beforetasklocation.last().startsWith("room_sex_club") || $scene.beforetasklocation.last().startsWith("event_sex_club")>>
You can barely hear her over the sound of the club, and before you can respond your call drops entirely.<br>
<<elseif setup.checkItemTypeTag('shoes', ['bedheels'])>>
You consider just taking the photo now, since you're already wearing the requisite footwear. You decide that your <<=setup.getNpcName('npc_manager', 'title')>> would probably still be upset with you for not being home.<br>
<br>
<<if setup.inPassageTag($scene.beforetasklocation.last(),'home')>>
[<<moveTo "event_bedroom_bed_heels" "Tell her you were just about to turn in." 60>>]
<<else>>
[<<moveTo "event_bedroom_bed_heels" "Tell her you're on the way and hurry back to your bedroom to fulfill the assignment." 1200>>]
<</if>>
<<elseif setup.checkItemOwned("bed_heels_pink") || setup.checkItemOwned("bed_heels_box")>>
[<<moveTo "event_bedroom_bed_heels" "Text her back that you're on your way to fulfill the assignment to send her a bed selfie." 60>>]
<<else>>
You curse yourself for forgetting to inquire at the shoe store, long closed at this hour.<br>
<br>
[<<moveTo "event_bed_heels_photo_excuse" "Run home and mash out a message begging her forgiveness." 60>>]
<</if>>
<br>
[<<moveTo $scene.beforetasklocation.last() "Pretend you didn't get her message and leave things for tomorrow." 1 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: try to make an excuse for failing to sent a bed selfie to manager after not buying bed heels
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You try to beg for forgiveness, but there really isn't any excuse for your neglectful behaviour. Driving home your failure <<=setup.getNpcName('npc_manager', 'formal')>> doesn't even text you back, though your phone informs you that she did read your message.<br>
<br>
<<printThought "Oh shit, I really should have gone to the shoe store...">><br>
<br>
[<<moveTo "room_dreams" "Fearful of what tomorrow will bring you don't even remember to change, falling into bed still clothed." 60 "<<set $currentcall = false>>">>]
</div>/*#
#desc: send a bed selfie to npc_guard
#status: RELEASED 0.8.2.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_guard')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You attempt to send an selfie to <<=setup.getNpcName('npc_guard', 'formal')>>, but you get back an error; it would seem her phone is locked down so as not to accept photo attachments. Talk about a commitment to security...<br>
<br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to npc_retention
#status: RELEASED 0.8.9.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_retention')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You attempt to send an selfie to <<=setup.getNpcName('npc_retention', 'formal')>> but <<he npc_retention>> ignores it without comment.<br>
<br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie to cook
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_cook')>>
<<set $npc_cook.flags.sexting.times_sexted += 1>>
<<if $scene.random>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<set $npc_cook.flags.sexting.times_sexted_accidentally += 1>>
<<set $player.flags.accidental_sext = true>>
<<if !$player.flags.accidental_sext>>
<<set $player.flags.accidental_sext = true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_16'
4
'psychiatrist_sext_other_random'
true
>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You send a selfie to <<=setup.getNpcName("npc_cook","first")>>.<br>
<br>
"@@.npc_cook;Ah, working late are yeh? This could definitely work for publicity material, your fans are always hungry for content!@@"<br>
<br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: send a bed selfie rpg_warlock
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.calledTonight.pushUnique('npc_rpg_warlock')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You try to send a selfie to <<=setup.getNpcName("npc_rpg_warlock","first")>> but it looks like she employs some pretty strict security practices and the message is bounced.<br>
<br>
<<printBedPhotoTexting $phoneList $scene.calledTonight>><br>
[<<moveTo "event_bed_root" "Put your phone away for the night and go to sleep." 0>>]
</div>/*#
#desc: first bed heels photoshoot - get changed and stand up
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'bed_heels_box'>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<addItem 'ballet_boots_black'>>
<<wearItem "ballet_boots_black" true>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_10'
5
'psychiatrist_high_heel_video_shoot_1'
false
>>
<<set $npc_shoestore_manager.flags.bed_heels_free = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
You shake on the deal and the shop owner waves another employee over to work the counter. The contrast between the pair of them is somewhat jarring; the shop owner a buxom shortstack who remains a head shorter than you even in her monstrous heels, while her counterpart towers over you even in booted flats, an Amazonian giantess who looks like she could probably give <<=setup.getNpcName('npc_admin', 'first')>> a run for it at the gym.<br>
<br>
"@@.npc_shoestore_manager;Great, come with me to the back and we can do the "before" photoshoot.@@"<br>
<br>
Following her to the back, still gawking at her ease in the stilt-like platforms, you find a small photo studio. From the look of things the store must do its own shoots with what you judge to be a pretty professional setup tucked away. Walking over to one of many towering stacks of shoe boxes she grabs a dark black one seemingly at random and hands it to you.<br>
<br>
"@@.npc_shoestore_manager;Here, get changed into these while I get the lights adjusted and everything ready. Don't walk yet! I want your first cute steps to be on camera!@@"<br>
<br>
She zips off before you can respond, busying herself with various tech.<br>
<br>
Spotting a chair at the edge of what you estimate to be the filming area you walk over and sit down before taking the lid off the shoebox.<br>
<br>
Once again, your jaw drops in shock at the <<if setup.getTotalValue("feminization") >= 12>>genius<<else>>fiendishness<</if>> of women's shoe designers. The boots before you dwarf even the bed heels! They will literally force you to walk on nothing but the tip of your pointed toes and the narrow dagger-like heel.<br>
<br>
"@@.npc_shoestore_manager;Come on, hurry up and slip into those ballet boots so we can get started!@@"<br>
<br>
Now knowing the term for this manner of extreme footwear, things make a little more sense as you recognise that the position they will force you into is, in fact, the ballet "en pointe." <br>
<br>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("foot") > 10>>Excitedly<<else>>Reluctantly<</if>>, you pull off your current footwear and start lacing the ballet boots up your calves. Made of sturdy and elegant black leather, they are actually more comfortable than you might have imagined — at least while you're sitting down without putting any weight on. Carefully you tighten them as much as you can all the way up your calf before knotting the laces just below your knee. It takes a bit of time, but you figure that you will probably be grateful for the support.<br>
<br>
Glancing up from her camera as you finish the second boot the clerk nods.<br>
<br>
"@@.npc_shoestore_manager;Great, you're ready. Now when I give the signal stand up and walk across the room. Don't try to look at the camera or anything, just... casual.@@"<br>
<br>
Walking seems like a stretch in this extreme footwear, but you nod, waiting for her signal before attempting to rise to your feet.<br>
<br>
"Standing" is perhaps generous, as it takes you several seconds just to wobble into a position resembling vertical. Your legs shake as you follow her direction to somehow balance without leaning against anything.<br>
<br>
<<printThought "My toes! This hurts so much!">><br>
<br>
"@@.npc_shoestore_manager;Brave girl, you can do it! Alright, now walk across the room, then come back and sit down and we'll call it good.@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_2" "Continue." 300>>]
</div>/*#
#desc: first bed heels photoshoot - hobble around for the camera in ballet boots
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 15, 0, false)>>
<<case 4 5 6>>
<<set _nextDate = setup.setNextDate(setup.getNextDayOfWeek($now, 0, 15, 0), 7, 15, 0)>>
<</switch>>
<<addTaskById 'bed_heels_photoshoot' _nextDate>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
The previously small room suddenly feels like a massive stadium, but you made an agreement to do this and don't see much alternative but to push through.<br>
<br>
Just raising one foot off the ground almost has you fall the other direction, but you manage to stab your pointed foot back down a few centimetres in front of where you started and then stagger another couple centimetres as you stabilize.<br>
<br>
<<printThought "Owe, owe, now my calves ache!">><br>
<br>
"@@.npc_shoestore_manager;That's good, keep it up!@@"<br>
<br>
You resist the urge to glare daggers at her for inflicting these infernal heels on you, instead focusing on the ground in front of you as you try to take a step and then another.<br>
<br>
What you're doing could hardly be mistaken for graceful, hell, it barely passes for walking. Your knees are deeply bent and your arms wide for balance, but somehow you make steady progress. Focused intently on balancing and staring at the six centimetres of floor in front you almost bang into the wall.<br>
<br>
"@@.npc_shoestore_manager;Watch it there, you're doing good, halfway! I know it's tough, but that's the point, believe me that as hard as it is now you will be AMAZED at the difference a week sleeping in those bed shoes will make. Now just turn around, come back and sit down.@@"<br>
<br>
You are only half paying attention as you reach out your hand to steady yourself. The wall is suddenly the best friend you've ever had. You are on fire from the hips down, but you brace yourself against the wall as you make a slow rotation to get back facing the way you came.<br>
<br>
Taking a deep breath, you push off the wall for a boost. This proves a mistake as you take two too-quick steps, wobble, and then, finally, fall, barely throwing your arms out to soften the impact.<br>
<br>
Almost as if to mock your own difficulties <<=setup.getNpcName('npc_shoestore_manager', 'first')>> sprints to your side, looking down with concern. "@@.npc_shoestore_manager;You okay?@@" You nod as you push yourself up onto hands and knees. "@@.npc_shoestore_manager;Great, that's fine, I know it hurts, but it'll only make your transformation more impressive at the end, now get back up and keep going.@@"<br>
<br>
On hands and knees, you look across at the chair like an oasis in the far distance that you hope isn't a mirage. Gritting your teeth, you almost will yourself back to your feet. Moving in fits and jerks, you half fall/half stumble the rest of the way forward before practically diving past the final steps to land in the chair.<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
<<printThought "Owww, my legs, sure they may be gorgeous, but why would anyone want to wear those things?">>
<<else>>
<<printThought "Owww, my legs, why would anyone choose to wear those things?">>
<</if>>
<br><br>
Draped over the chair you try to catch your breath as the clerk wraps things up with the camera and then walks over.<br>
<br>
"@@.npc_shoestore_manager;Come on, baby, it's not THAT bad.@@"<br>
<br>
You'd like to call her out on that, but with the ease she seems to manage her skyscraper heels you doubt she'd do anything but laugh at you.<br>
<br>
"@@.npc_shoestore_manager;Now get changed back so I can return to minding the store.@@"<br>
<br>
You nod weakly and start to unlace the ballet boots, only for the clerk to snort and take over, her nimble fingers practically flying through the laces before sliding your own footwear back on with no less skill or efficiency.<br>
<br>
The clerk hands you the pink package containing the bed heels.<br>
<br>
"@@.npc_shoestore_manager;Alright, I will see you <<if $now.getUTCDay() <= 3>>Sunday<<else>>a week from <<if $now.getUTCDay() == 6>>Sunday<<else>>today<</if>><</if>>. Remember, EVERY NIGHT. Don't screw it up.@@"<br>
<br>
You promise to do as instructed. <<if setup.getTotalValue("submission") >= 10>>After all, that's what <<=setup.getNpcName('npc_manager', 'formal')>> seems to want from you, anyway.<</if>><br>
<br>
The Amazonian assistant is summoned and the strong woman lifts you out of the chair with one hand and places you back on your feet. You give the store owner your contact information and promise to come back for the "after" photoshoot. With a thanks she sends you on your way.<br>
<br>
Yet to fully recover from your ordeal, your calves and toes ache even back in your "normal" footwear.<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_3" "Ask if you could keep the ballet boots?" 180 "<<wearItem $scene.shoes>>">>]<br>
[<<moveTo "room_mall" "Hobble back into the mall." 600 "<<wearItem $scene.shoes true>><<deleteItem 'ballet_boots_black'>>">>]
</div>/*#
#desc: ask to keep ballet boots after first shoot
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
Before you leave the store, you ask <<=setup.getNpcName('npc_shoestore_manager', 'first')>> if you could possibly keep the ballet boots you just practiced in. She raises an eyebrow in surprise.<br>
<br>
"@@.npc_shoestore_manager;Ambitious, are we? While wearing those bed heels as instructed will certainly train you to wear such... you are not quite there, yet. If you really want them, I could, of course, sell them to you... but such exquisite footwear is not cheap. <<=setup.getItemObj("ballet_boots_black").price>> credits@@"<br>
<br>
<<if $player.money.total >= setup.getItemObj("ballet_boots_black").price>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_4" "What is money compared to the en pointe feet of a Goddess?" 180 "<<set $scene.buy=true>>">>]<br>
<<else>>
[@@.link_locked;You lack the cash on hand for such a purchase.@@]<br>
<</if>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_4" "Maybe you don't need ballet boots at this time." 180 "<<set $scene.buy=false>>">>]<br>
</div>/*#
#desc: pay to keep ballet boots after first shoot
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.buy>>
<<addCredits `-(setup.getItemObj("ballet_boots_black").price)`>>
<<if !$player.sec_style.clothing.ballet>>
<<set $player.sec_style.clothing.ballet = "voluntary">>
<</if>>
<<else>>
<<deleteItem "ballet_boots_black">>
<<wearItem $scene.shoes true>>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
<<if $scene.buy>>
You hand over the credits to confirm your determination to own the toweringly steep, and steeply challenging, ballet boots.<br>
<br>
<<=setup.getNpcName('npc_shoestore_manager', 'first')>> smiles in amusement, seeming to recognise a kindred spirit as you leave the store with your new purchase, and a high-heel future ahead of you.
<<else>>
<<=setup.getItemObj("ballet_boots_black").price>> is a bit much, and you decide that you can forgo ballet boots. After all, you can hardly walk in them, so they would mostly just sit in your closet, anyway.<br>
<br>
<<=setup.getNpcName('npc_shoestore_manager', 'first')>> is understanding... if maybe a little disappointed. "@@.npc_shoestore_manager;Focus on those bed heels, for now. Once you have trained on those, well... a whole world of sky-high supremacy will open before you.@@"<br>
<br>
You thank her and, bed heels in hand, go on your way.
<</if>>
<br><br>
[<<moveTo "room_mall" "Return to mall." 600>>]
</div>/*#
#desc: call if fail to show up to bed heel 2nd photoshoot
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<if !setup.checkOutsideDecency()>>
<<deleteTask 'bed_heels_photoshoot'>>
<<set _nextDate = setup.changeDate($now, 'hours', 1)>>
<<addTaskById 'bed_heels_photoshoot' _nextDate>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;Hey, this is <<=setup.getNpcName('npc_shoestore_manager', 'first')>>, the proprietor of <<printShopName 'mall_shoe_store'>>. You were going to come in for the "after" photoshoot today, you have been practicing as instructed, right?@@"<br>
<br>
You affirm that you have been, not that you had much choice with <<=setup.getNpcName('npc_manager', 'formal')>> insisting on the nightly texts.<br>
<br>
"@@.npc_shoestore_manager;Well if you could hurry over, that'd be great, this afternoon lull would be the perfect time to do the shoot.@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2" "Say you're on your way." 600 "<<set $currentcall = false>>">>]<br>
<<else>>
<<printThought "Crap, I need to go in, but I can't go out like this!">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if setup.inPassageTag($scene.beforePhoneCallLocation, "home")>>
[<<moveTo "room_bedroom" "Say you'll be there soon." 600 "<<set $currentcall = false>><<set $roomchange=false>>">>]<br>
<<else>>
[<<moveTo $scene.beforetasklocation.last() "Say you'll be there soon." 60 "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]<br>
<</if>>
<</if>>
[<<moveTo $scene.beforetasklocation.last() "Apologise, and promise to come by next week and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<deleteTask 'bed_heels_photoshoot'>><<set _nextDate = setup.setNextDate($now, 7, 15, 0)>><<addTaskById 'bed_heels_photoshoot' _nextDate>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: second bed heels photoshoot intro
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'bed_heels_photoshoot' $now true>>
<<set $scene.first=true>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<removeItem $scene.shoes>>
<<addItem 'ballet_boots_black'>>
<<wearItem "ballet_boots_black" true>>
<<if !$player.sec_style.clothing.ballet>>
<<set $player.sec_style.clothing.ballet = "money">>
<</if>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
Once again you are in the back room of <<printShopName 'mall_shoe_store'>> for a video shoot. This time it looks like everything was already setup beforehand, the impossibly-steep ballet boots prominently laid out next to your chair.<br>
<br>
"@@.npc_shoestore_manager;Lemme just double check everything while you slip on those heels. I can't wait to see how you've developed!@@"<br>
<br>
With a smaller camera in hand, she stands over you patiently.<br>
<br>
"@@.npc_shoestore_manager;Go ahead and ignore me, I just want to get some filler shots of you putting them on.@@"<br>
<br>
Even though you can feel the change the bed heels have wrought on your feet and ankles, the ballet boots are still the scariest footwear you've seen to date. Taking a deep breath, you start lacing them up.<br>
<br>
The sturdy leather of the boots closing around your calves, you can already feel the difference from the last time. Your toes feel significantly less pinched and the en pointe angle feels somehow more natural. The whole time the clerk is circling around you with the camera. Wearing similarly tall, if not taller, platforms as always she moves easily, looking to have a bit of flair with the camera as she pans around to show all angles and occasionally zooming erotically close.<br>
<br>
After a final pass of the fully laced boots, the clerk stows the portable camera and moves to the tripod-mounted camera she used the last time.<br>
<br>
"@@.npc_shoestore_manager;Alright, same as before. Stand up, walk across the room, then walk back and sit down. Let's see what a week of training has done for you!@@"<br>
<br>
<<printThought "Here goes nothing.">><br>
<br>
Pushing yourself to your feet, you can already feel the difference, able to get vertical on the first try whereas before you struggled just to stand at all.<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2_2" "Continue." 300>>]
</div>/*#
#desc: second bed heels photoshoot intro (alternate where you paid full price)
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_secretary_style_ballet_heels_enthusiast_1") && !$player.sec_style.clothing.ballet>>
<<set $player.sec_style.clothing.ballet = "enthusiast">>
<</if>>
<<set $scene.first=false>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<removeItem $scene.shoes>>
<<addItem 'ballet_boots_black'>>
<<wearItem "ballet_boots_black" true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
You are led into the back room of <<printShopName 'mall_shoe_store'>> where you find a small video studio. Digging through a stack of shoeboxes she presents you with a pair of impossibly-steep ballet boots.<br>
<br>
"@@.npc_shoestore_manager;Lemme just double check everything while you slip on those heels. I can't wait to see how you walk in them!@@"<br>
<br>
With a smaller camera in hand, she stands over you patiently.<br>
<br>
"@@.npc_shoestore_manager;Go ahead and ignore me, I just want to get some filler shots of you putting them on.@@"<br>
<br>
Even though you can feel the change the bed heels have wrought on your feet and ankles, the ballet boots are still intimidatingly steep. Taking a deep breath, you start lacing them up.<br>
<br>
The sturdy leather of the boots close around your calves and force your feet into a full en pointe angle that, somehow, feels strangely natural. The whole time the clerk is circling around you with the camera. Wearing similarly tall, if not taller, platforms as always she moves easily, looking to have a bit of flair with the camera as she pans around to show all angles and occasionally zooming erotically close.<br>
<br>
After a final pass of the fully laced boots, the clerk stows the portable camera and moves to the tripod-mounted camera she used the last time.<br>
<br>
"@@.npc_shoestore_manager;Alright, stand up, walk across the room, then walk back and sit down. Let's see your skills!@@"<br>
<br>
<<printThought "Here goes nothing.">><br>
<br>
Pushing yourself to your feet, you take a moment to find your balance.<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_2_2" "Continue." 300>>]
</div>/*#
#desc: second bed heels photoshoot - stride more skillfully in ballet boots
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_11'
5
'psychiatrist_high_heel_video_shoot_2'
false
>>
<<set $scene.firstVideo = setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_other_10') == -1>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("heels") >= 15>>
Perched on the heels you stand tall, proud, and perfectly balanced, rising with grace and poise from your seat.<br>
<br>
The clerk flashes a thumbs up, clearly impressed and you start walking, your arms hanging natural as your hips sway seductively with each smooth, short step.<br>
<br>
<<if $scene.first>>
<<printThought "Wow, how was this so hard before? Now it's like I'm walking in the clouds...">>
<<else>>
<<printThought "Wow, my feet are basically en pointe, but this isn't bad at all!">>
<</if>>
<br><br>
Before you know it you have reached the far wall. Winking at the camera you give a twirling flourish before striding back. Midway across the floor you show off with a little leap, your legs shooting out forward and back in close to a full grand ecart jump splits that rewards you with the clerk audibly gasping in surprise.<br>
<br>
Back on the ground you skip a bit faster for the final few steps before spinning in place and delicately sitting down on the chair; one leg crossed over the other with your hands demurely on your knees as you flutter your eyes in the direction of the camera.<br>
<br>
<<if $scene.first>>
"@@.npc_shoestore_manager;Woah, I mean, I knew you were going to improve, but this... you are like some kind of savant! If I hadn't filmed it, I don't even know if I'd believe it had only been a week!@@"
<<else>>
"@@.npc_shoestore_manager;You. Are. Amazing! This is why every woman needs a pair of bed heels, you and me, sister, we're going to change the world!@@"
<</if>>
<br><br>
<<if setup.getTotalValue("feminization") >= 12>>
The compliment fills you with <<if setup.getTotalValue("submission") >= 10>>submissive <</if>>pleasure and you smile at the clerk and give a little seated bow.
<<else>>
You're not sure how to feel about your newfound mastery of such a feminine skill, so you just smile politely back at the clerk.
<</if>>
<br><br>
"@@.npc_shoestore_manager;So watching that frankly amazing display I had an idea for another shoot that would REALLY impress some of my customers, if you'd be up for it?@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_3" "Of course!" 300>>]<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_decline" "Maybe some other time." 300>>]
<<elseif setup.getTotalValue("heels") >= 8>>
Now, so long as you concentrate, you can stand almost straight up, your knees only slightly bent as your arms are poised slightly away from your side for added balance.<br>
<br>
The clerk nods and you start walking. It isn't exactly comfortable, and you have to focus hard to keep your weight even between your toes and the slender heels, but it is a world of improvement over your first time, but you do manage it more or less.<br>
<br>
Progressing across the room, your gait is a bit stiff and not always even, but quite serviceable considering the extreme circumstances and it isn't long before you reach the far wall. Reflexively you put your hand out for stability, bracing yourself partially as you mince in a little circle to turn back towards the chair.<br>
<br>
"@@.npc_shoestore_manager;Doing great, halfway there!@@"<br>
<br>
Even though your calves and toes are starting to hurt, you are emboldened by your success, doing your best to walk a little straighter and let your hands sway naturally at your sides on the return trip rather than extend them stiffly out for balance.<br>
<br>
Reaching the chair, you are definitely looking forward to being off your toes, but you have the poise to turn and lower yourself gently<<if $scene.first>> rather than flop down like you did last time<</if>>. You look towards the camera as the clerk gives you a thumbs up and cuts the tape.<br>
<br>
"@@.npc_shoestore_manager;Not bad, you aren't perfect, but you have to agree that for a week the transformation is nearly miraculous. Anyway, I know I promised you could do the shoot anonymously, but I'd like to remind you of the other opportunity. If you are willing to record a short testimonial video and let me use your name, I can give you a <<if $scene.firstVideo>>few credits to compensate for your time<<else>> little cash bonus on top of the free shoes that were part of our original agreement<</if>>.@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_1" "Say sure." 300>>]<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_testimonial_no" "Decline." 300>>]
<<else>>
ERROR, should not happen! <<=setup.getTotalValue("heels")>> lower than expected!
<</if>>
</div>/*#
#desc: decline the option of doing a 3rd ballet heel photoshoot
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;That is too bad. Well, feel free to come back if you change your mind and have more time later for a third shoot, I can't promise it'll be easy, but I just HAVE to see you show off those skills some more!@@"<br>
<br>
"@@.npc_shoestore_manager;Anyway, I know I promised you could do the shoot anonymously, but I would like to throw out another opportunity. If you are willing to record a short testimonial video and let me use your name, I can give you a little cash bonus on top of the free shoes that were part of our original agreement.@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_1" "Say sure." 60>>]<br>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_testimonial_no" "Decline." 60>>]
</div>/*#
#desc: 3rd ballet photoshoot, walk around in armbinder
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_13'
5
'psychiatrist_high_heel_video_shoot_3'
false
>>
<<addItem 'armbinder_black'>>
<<wearItem "armbinder_black" true>>
<<set $scene.wearBoots = !setup.checkItemWorn("ballet_boots_black")>>
<<if $scene.wearBoots>>
<<addItem 'ballet_boots_black'>>
<<wearItem "ballet_boots_black" true>>
<</if>>
<<setThreshold 'heels' 'wearing_heels' 'expert'>>
<<set $npc_shoestore_manager.flags.shot_ballet_heels_final = true>>
<<include "bestialityFinalChecker">>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
<<if $scene.wearBoots>>
<<=setup.getNpcName('npc_shoestore_manager', 'first')>> waits for you to change into a pair of steep black ballet boots, and then produces
<<else>>
Leaving you seated, <<=setup.getNpcName('npc_shoestore_manager', 'first')>> disappears into yet another storage room before returning holding
<</if>>
what looks like a long leather bag.<br>
<br>
"@@.npc_shoestore_manager;This is an armbinder. It will keep your limbs tightly bound behind your back, which makes balancing even more challenging, but that doesn't look like it would be a problem for you.@@"<br>
<br>
<<printThought "Well, that type of balancing may not be a problem, balancing my increasingly crazy life, on the other hand...">><br>
<br>
Motioning for you to rise to your feet, she moves behind you and guides your arm into the triangular sheath of the armbinder. Even with her own platforms, your ballet-raised height is too much and after a moment of struggle she calls in her Amazonian assistant to help.<br>
<br>
You feel like a toy next to the large woman, but she is nothing but gentle as she pulls the soft garment-leather sheath up your arms. Strapping it around your shoulders, she finishes off by firmly zipping things closed.<br>
<br>
<<if setup.getTotalValue("bondage") >= 10>>
The feel of the leather pulling your arms together is exactly the sort of restriction you crave. When your elbows touch, you can't help but let out a soft moan of arousal.
<<elseif setup.getTotalValue("bondage") >= 5>>
Tighter and tighter, it isn't until your elbows are forced together so that your arms form a single sleek unit that she finishes up, leaving you feeling quite helpless, and more than a little aroused.
<<else>>
The way the armbinder forces your limbs together is more than a little claustrophobic, but the assistant's strength is irresistible and before long your elbows are touching and you are standing quite helpless.
<</if>>
<br><br>
"@@.npc_shoestore_manager;Alright, let me start filming and then you can do what you do — walk around and show off how confident and skilled wearing bed heels has made you.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
You give a little curtsy
<<else>>
You nod your head
<</if>> and start walking. The lack of use of your arms definitely requires more focus, but you still balance easily and stride gracefully.<br>
<br>
You find a side effect of the armbinder is to force your chest out
<<switch setup.calcBreastSize()>>
<<case "massive">>
further emphasising your ginormous breasts, their heavy sway adding an additional challenge to each step.
<<case "large">>
your large breasts thus on stunning display, jiggling provocatively with each step.
<<case "medium">>
resulting in your modest breasts appearing fuller and more attractive, bouncing softly with each step.
<<case "small">>
helping make your small breasts appear almost respectable
<<case "none">>
, but it is something of a wasted effort given your washboard flat chest.
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
Following the clerk's instructions, you vary things up, from a standard walk to a hip-swaying seductive saunter and even a high-stepping variant that for some reason makes you feel like a pony. With expert skill, you glide through them all, finally coming to a stop to face the camera and give <<if setup.getTotalValue("feminization") >= 10>>a hands-free curtsy<<else>>a bow<</if>>.<br>
<br>
"@@.npc_shoestore_manager;Astounding! Just wonderful, wonderful. This is exactly what I wanted. Thank you again for your amazing help!@@"<br>
<br>
Calling in her assistant once more, the clerk fiddles with footage while your armbinder is removed, the tight leather steadily loosening until your arms are able to pull free.
<<if setup.getTotalValue("bondage") >= 10>>
You are saddened to have the control of your arms returned to you. Being helpless is so much better.
<<else>>
Working the kinks out of your shoulders caused by the severe position.
<</if>>
<br><br>
"@@.npc_shoestore_manager;Well, I think that does it — though feel free to come by again if you want to record a personal testimonial video. Given how thoroughly you've mastered those heels I think it's only right that you keep them as my gift to you — so long as you wear them out of the shop! Talk about advertisement!@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("bimbofication") >= 10>>
While you'd rather they were in your preferred pink as opposed to sleek black, there's no way you can turn down such an offer, the clerk helpfully bagging up your old shoes before sending you on your way.<br>
<br>
[<<moveTo "room_foyer" "Head home." 600 "<<removeItem 'armbinder_black' true>><<deleteItem 'armbinder_black'>>">>]
<<else>>
[<<moveTo "room_foyer" "You thank the clerk as she hands you a bag with your old shoes and then head home." 600 "<<removeItem 'armbinder_black' true>><<deleteItem 'armbinder_black'>>">>]
<</if>>
</div>/*#
#desc: bonus ballet photoshoot, bdsm style
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_shoestore_manager.flags.shot_ballet_heels_bdsm = true>>
<<include "bestialityFinalChecker">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_14'
5
'psychiatrist_high_heel_video_shoot_bdsm'
false
>>
<<addItem 'armbinder_black'>>
<<wearItem "armbinder_black" true>>
<<set $npc_shoestore_assistant.profile = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
Walking up to the clerk you smile, toying with the ring at the front of your collar as you ask if, perhaps the two of you could shoot another advertisement?<br>
<br>
Looking up at you, she grins. "@@.npc_shoestore_manager;Oh you minx... yes I have just the perfect idea, come with me.@@"<br>
<br>
Leading you into the back room, she leaves you for a moment to retrieve the leather armbinder.<br>
<br>
"@@.npc_shoestore_manager;Alright, let's get you ready to show off your full skills.@@"<br>
<br>
You turn around and present your arms behind your back as she summons her Amazonian assistant to help. As always, you feel dwarfed by the large woman, but she is nothing but gentle as she pulls the soft garment-leather sheath up your arms. Strapping it around your shoulders, she finishes off by firmly zipping things closed.<br>
<br>
<<if setup.getTotalValue("bondage") >= 10>>
The feel of the leather pulling your arms together is exactly the sort of restriction you crave. When your elbows touch, you can't help but let out a soft moan of arousal.
<<elseif setup.getTotalValue("bondage") >= 5>>
Tighter and tighter, it isn't until your elbows are forced together so that your arms form a single sleek unit that she finishes up, leaving you feeling quite helpless, and more than a little aroused.
<<else>>
The way the armbinder forces your limbs together is more than a little claustrophobic, but the assistant's strength is irresistible and before long your elbows are touching and you are standing quite helpless.
<</if>>
<br><br>
Dismissing her assistant, though staring at the amazon's muscled ass until she has left the room, the shop owner finally turns her attentions back towards you. Casual as you like she produces a leash and clips it to the front of your collar. Pointing a remote towards the camera assembly, she starts the film rolling before stepping forward and giving a slight tug.<br>
<br>
"@@.npc_shoestore_manager;Come along now, slave.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought "Of course, Mistress.">>
<<else>>
<<printThought "What? I guess I don't have a choice, as usual...">>
<</if>>
<br><br>
Bound as you are, you have no choice but to obey.<br>
<br>
Staying a few steps behind, you follow the clerk while the leash sways loosely between you,
<<switch setup.calcBreastSize()>>
<<case "massive">>
bouncing between your massive bitch-tits, their size only further enhanced by the way the armbinder forces your chest out, the heavy sway adding an additional challenge to each step.
<<case "large">>
the dangling lead further drawing attention to your large breasts, thrust out and jiggling provocatively with each step thanks to the armbinder.
<<case "medium">>
swinging in front of your modest breasts, their appearance fuller and more attractive thanks to the way the armbinder forces your chest out and up.
<<case "small">>
swinging in front of your breasts, their miniscule size enhanced by the way you are forced by the armbinder to thrust them forward.
<<case "none">>
swinging in front of your washboard chest, even the added help of the armbinder to force your chest up and forward doing nothing for this dearth of feminine shape.
<<default>>
ERROR, unhandled breast size: <<=setup.calcBreastSize()>>
<</switch>>
Even with the added challenge presented by the armbinder, you have no trouble matching her casual pace, the two of you walking a leisurely loop before stopping in the centre of the filming area.<br>
<br>
Turning towards you, she nods.<br>
<br>
"@@.npc_shoestore_manager;Kneel.@@"<br>
<br>
<<if setup.getTotalValue("strength") >= 10>>
The combination of your bound arms and the inability to bend at the ankle makes her command a challenge, but your time working out comes to the rescue. Leaning forward for balance, you do a 1-legged squat until you are able to lower the other knee to the ground. Now shifting to the side, you do a slight hop and twirl your other leg under you before sitting back on your heels with your head obediently bowed.
<<else>>
With your arms bound and your ankles unable to bend it becomes a bit tricky to lower yourself. In the end you half squat then sort of fall forward, your knees banging painfully due to your heel-enhanced height.
<</if>>
<br><br>
Stepping closer brings the shopkeepers crotch centimetres from your face, her platform shoes like steep pillars on either side of your knees. You are near enough to smell her feminine heat, the scent serving to stimulate your own lusts. There is no doubt that this little scene has you both very aroused.<br>
<br>
Running her fingers through your hair, she faces the camera. "@@.npc_shoestore_manager;See what a proper bed heel routine can do for your slave? Do not settle for anything but the best — lock your sub tonight and they will be en pointe in no time.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
You quiver with submissive lust as the clerk pulls away.
<<else>>
Her hand pulling away quickly the clerk suddenly steps back.
<</if>>
The room is silent for several moments save for the loud, aroused sound of the clerk's breathing.<br>
<br>
"@@.npc_shoestore_manager;Holy shit that was intense. I just want to ravish you right now, and there would be nothing you could even do about it...@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
"@@.pc;Why would I want to, Mistress?@@" You reply, looking up and fluttering your eyes.<br>
<br>
"@@.npc_shoestore_manager;Fuck! You are a succubus! No, no, this is a business arrangement, but believe me that <<=setup.getNpcName('npc_shoestore_assistant', 'first')>> is going to get it tonight...@@"<br>
<br>
<<if !$npc_shoestore_manager.flags.know_her_bdsm_relationship>>
<<set $npc_shoestore_manager.flags.know_her_bdsm_relationship = true>>
<<printThought "Wow, her assistant is her slave? They must look like quite the pair in-scene.">>
<<else>>
You can't help but smile at the memory of seeing the two radically different sized women "in scene."
<</if>>
<br><br>
Breathing heavy, she circles around behind you, watching you the whole time with wary lust.
<<else>>
You realise that she is right, but you don't know what to do about it, merely remaining kneeling in hopes that she holds on to her self control as you try not to panic at your helplessness.<br>
<br>
She watches you for almost a minute before seeming to make a decision and finally stepping away and slowly walking around behind you.
<</if>>
<br><br>
The clerk behind you, you feel her start to loosen the armbinder.<br>
<br>
<<if setup.getTotalValue("strength") >= 10>>
With a display of flexibility and power, you reverse the process you used to get onto your knees, rising to your feet with your back still towards her.<br>
<br>
"@@.npc_shoestore_manager;Goddamn. you. are. magic. Stay still while I get this armbinder the rest of the way off.@@"
<</if>>
<br><br>
"@@.npc_shoestore_manager;Alright, thanks for the footage but... I need to get away from you before I lose control of myself.@@"<br>
<br>
Calling in her assistant once more, the clerk fiddles with footage while your armbinder is removed, the tight leather steadily loosening until your arms are able to pull free.
<<if setup.getTotalValue("bondage") >= 10>>
You are saddened to have the control of your arms returned to you. Being helpless is so much better.
<<else>>
Working the kinks out of your shoulders caused by the severe position.
<</if>>
<br><br>
"@@.npc_shoestore_manager;Well, I think that does it — though feel free to come by again if you want to record a personal testimonial video. Also well... let me tell that you could totally have a future in erotic videos if you could find the right agent.@@"<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 600 "<<removeItem 'armbinder_black' true>><<deleteItem 'armbinder_black'>>">>]
</div>/*#
#desc: don't give bed heels testimonial
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem $scene.shoes true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;Well, I am disappointed in your decision, but I understand. Being known for this sort of thing can get around, though some would consider that a perk. Still, if you change you mind in the future and have some spare time, we will be here.@@"<br>
<br>
You nod. The clerk helps you out of the ballet heels and back into your "normal" shoes before thanking you and sending you on your way.<br>
<br>
[<<moveTo "room_mall_interior" "Return to the mall." 60>>]
</div>/*#
#desc: decide what type of testimonial to give about your experience using bed heels
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_shoestore_manager', 'first')>> that you are ready to record a testimonial. Waving for her assistant to mind the shop, the woman smiles and leads you into the back room. You find a chair setup directly facing the camera and she motions for you to sit down.<br>
<br>
"@@.npc_shoestore_manager;Alright, when I give the signal say your piece. I'll note that we try to cater to quite a few types of clients so if you wanted to do different recordings dressed or acting so as to target a different market segment I am more than willing to pay you for the additional time.@@"<br>
<br>
"@@.npc_shoestore_manager;If you need to change, just go behind that screen.@@"<br>
<br>
<<if $npc_shoestore_manager.flags.testimonials.casual>>
[@@.link_locked;You have already given a casual, vanilla testimonial.@@]<br>
<<else>>
[<<moveTo 'event_mall_shoe_store_bed_heels_testimonial_2' "Give a casual testimonial." 60 "<<set $scene.testimonial_type='casual'>>">>]<br>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials['overly feminized']>>
[@@.link_locked;You have already given an especially effeminate testimonial.@@]<br>
<<else>>
<<if setup.getTotalValue("feminization") >= 12 && setup.computeWorstGender() == "female" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup" && $player.makeup.messed < 25>>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_2" "Focus your testimonial on how girly your new skills make you feel." 60 "<<set $scene.testimonial_type='overly feminized'>>">>]<br>
<<else>>
[@@.link_locked;You need to look, and feel, fully feminine in style and makeup to give this style of testimonial.@@] <<hint $options "You need to be feminine from clothes to makeup to mentality for this sort of testimonial.">><br>
<</if>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials.submissive>>
[@@.link_locked;You have already given an especially submissive testimonial.@@]<br>
<<else>>
<<if setup.getTotalValue("submission") > 10 && $scene.collar != "" && setup.getItemObj($scene.collar).hasOwnProperty("tags") && setup.getItemObj($scene.collar).tags.includes("leash_attachment")>>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_2" "Talk about how bed heels make you a better slave." 60 "<<set $scene.testimonial_type='submissive'>>">>]<br>
<<else>>
[@@.link_locked;You need to look, and feel, the part of a submissive collared slave to give this style of testimonial.@@] <<hint $options "You need high submission and an attachment-point equipped collar for this sort of testimonial.">><br>
<</if>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials['brainless bimbo']>>
[@@.link_locked;You have already, like, given a bimbo testimonial.@@]<br>
<<else>>
<<if setup.getTotalValue("bimbofication") > 10 && setup.checkVisibleClothingTag('slutty') >= 50 && setup.analyzeWornTags(['modest','slutty','cute','fetish']) == "slutty" && setup.getCurrentMakeup() == "ultimatebimbo">>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_2" "Talk about how, like, totally amazing bed heels are." 60 "<<set $scene.testimonial_type='brainless bimbo'>>">>]<br>
<<else>>
[@@.link_locked;You need to look, and feel, like a bimbo slut to give this style of testimonial.@@] <<hint $options "You need high sex obsession, slutty clothing and bimbo-riffic makeup to give this testimonial.">><br>
<</if>>
<</if>>
<<if $npc_shoestore_manager.flags.testimonials.humiliating>>
[@@.link_locked;You have already given an embarrassingly slutty testimonial.@@]<br>
<<else>>
<<if setup.getTotalValue("humiliation") >= 15 && setup.checkVisibleClothingTag('slutty') >= 50 && setup.analyzeWornTags(['modest','slutty','cute']) == "slutty" && setup.getCurrentMakeup() != "" && setup.getCurrentMakeup() != "nomakeupmakeup" && $player.makeup.messed >= 75 && setup.calcBreastSize() == 'massive'>>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_2" "Debase and humiliate yourself for the camera." 60 "<<set $scene.testimonial_type='humiliating'>>">>]<br>
<<else>>
[@@.link_locked;You need to look, and have the experience of being, a totally ruined, big-titted slut to give this type of testimonial.@@] <<hint $options "You need very high humiliation, slutty clothing, massive breasts and ruined makeup to give this testimonial.">><br>
<</if>>
<</if>>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_mall" "Recall that you need to be somewhere else and tell her you'll come back later." 60 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
<<if $player.makeup.messed > 50>>
[<<moveTo "event_mall_shoe_store_bed_heels_testimonial_1" "Clean up your makeup." 60 "<<set $player.makeup.messed=25>>">>]<br>
<<else>>
[@@.link_locked;You need to change into something more "normal" before you head back into the mall.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
</div>/*#
#desc: give a themed testimonial about your experience using bed heels
#status: RELEASED 0.6.0.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `$npc_manager.flags.uniform_upgrade.stipend_amt*.25`>> /% so that the sum of doing all 5 comes to ~ the same as the stipend_amt value to kind of "help" the character along (if they did shoes first, which is the "cheapest" choice) %/
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<set $scene.started_in_bedheels = $scene.shoes == "bed_heels_pink">>
<<if !$scene.started_in_bedheels>>
<<addItem "bed_heels_pink">>
<<wearItem "bed_heels_pink" true>>
<</if>>
<<if !setup.checkThemeExist('npc_psychiatrist', 'other', 'theme_psychiatrist_other_12')>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_12'
5
'psychiatrist_high_heel_video_shoot_testimonial'
true
>>
<</if>>
<<set $scene.key_reward = !setup.checkItemOwned('bed_heels_key') && $npc_shoestore_manager.flags.testimonials['casual'] && $npc_shoestore_manager.flags.testimonials['overly feminized'] && $npc_shoestore_manager.flags.testimonials['submissive'] && $npc_shoestore_manager.flags.testimonials['humiliating'] && $npc_shoestore_manager.flags.testimonials['bimbo']>>
<<if $scene.key_reward>>
<<addItem "bed_heels_key">>
<</if>>
<<applyExperience 'foot' 11 'very' $EXPOSED>>
<<switch $scene.testimonial_type>>
<<case "casual">>
<<addItem "platform_wedge_heels_hotpink">>
<<case "overly feminized">>
<<applyExperience 'feminization' 20 'very' $EXPOSED>>
<<addItem "heels_leopard">>
<<case "submissive">>
<<applyExperience 'submission' 20 'very' $EXPOSED>>
<<addItem "bed_heels_purple">>
<<case "humiliating">>
<<applyExperience 'humiliation' 20 'very' $EXPOSED>>
<<addItem "stripper_heels_clear">>
<<case "brainless bimbo">>
<<applyExperience 'bimbofication' 20 'very' $EXPOSED>>
<<addItem "stripper_heels_pink">>
<</switch>>
<<set $npc_shoestore_manager.flags.testimonials[$scene.testimonial_type] = true>>
<<include "bestialityFinalChecker">>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoe_store_photo.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
<<if $scene.started_in_bedheels>>
"@@.npc_shoestore_manager;Wow, wearing bed heels out and about? You are just amazing! Be sure to get them into the shot during your testimonial.@@"
<<else>>
Getting you ready the clerk has you change into a pair of bed heels matching the ones you already own.<br>
<br>
"@@.npc_shoestore_manager;Try to get them into the shot as part of your testimonial. Don't worry, I'll unlock them after the shoot.@@"
<</if>>
<br><br>
<<switch $scene.testimonial_type>>
<<case "casual">>
Sitting down casually and facing the camera, you give a small nod.<br>
<br>
"@@.pc;Hi! My name is <<=$player.first_name>> and I want to talk to you about how my skills have been totally transformed thanks to wearing the proper bed heels.@@"<br>
<br>
The camera pans down to show off the towering shoes locked to your feet.<br>
<br>
"@@.pc;I know they seem intimidating. I was scared myself, at first. I mean the height, that locking strap! But at the end of the day, well... I think the results speak for themselves.@@" Rising to your feet, you wait for the clerk to zoom back out before taking a couple demure demonstrative steps. "@@.pc;If you wear heels, you really owe it to yourself to buy a pair today, and wear them tonight. Trust me, you are going to LOVE the results.@@"<br>
<br>
"@@.npc_shoestore_manager;Generic, but not bad, it will be a nice coda to your videos and maybe help entice the more... vanilla clientele.@@"
<<case "overly feminized">>
Putting on your girliest smile, you wave at the camera. "@@.pc;Hi! my name is <<=$player.first_name>> and I don't know about you, but there's nothing I love more than feeling beautiful and feminine.@@"<br>
<br>
You flutter your eyelids before continuing.<br>
<br>
"@@.pc;Of course everyone knows a girl should always be wearing heels, but which ones? Being feminine is all about looking elegant, beautiful and light as a feather, so higher is certainly better, but learning to walk properly takes so much time! What's a busy girl to do?@@"<br>
<br>
You smile wide. "@@.pc;The answer, of course, is bed heels!@@"<br>
<br>
You lift your legs into frame and do a little flutter kick to show off the shoes locked on your feet.<br>
<br>
"@@.pc;Coming in your choice of colours — though what's more perfectly girly than pink? — These are everything a busy girl <<if $fetish.sissy>>or sissy <</if>>could ever want. They lock for all-night security and do the bestest job in the world training you to walk better and longer in the highest shoes you can find! You've all seen MY transformation, now make yours a reality!@@"<br>
<br>
"@@.npc_shoestore_manager;That was great, if I didn't already own a dozen pair... well, you would have just sold me for sure!@@"
<<case "submissive">>
Moving the chair out of the way, you instead choose to kneel before the camera with your eyes submissively down-turned.<br>
<br>
Giving the clerk the signal to start, you kneel quietly for several moments before slowly looking up into the camera.<br>
<br>
"@@.pc;Hello, this slave's name is <<=$player.first_name>> and she has a message to help all the wonderful slaves and owners out there. Being a slave is hard. Sure it's the best thing ever and this slave loves her Mistress more than anything, but between constantly servicing her needs while trying to look the best for my owner well... keeping on top of it all is a struggle, especially since this slave is totally a bottom!@@"<br>
<br>
You smile as you shift your position slightly, sitting to one side to give a clear view of the pink heels locked to your feet.<br>
<br>
"@@.pc;When it comes to walking in heels — which my Mistress says is one of this slave's many responsibilities, well, there is nothing better than when my owner locks these on my feet and lets me curl up for the night at the foot of her bed. It may seem crazy, but you've all seen the results — plus look at these things! They're cute, steep and they lock! Can you think of anything more perfect for a slave?@@"<br>
<br>
"@@.pc;Trust me, whether you're an owner looking out for their sub, or a slave looking to push her skills to the next level, THESE are what you need!@@"<br>
<br>
"@@.npc_shoestore_manager;Wow, you're just too cute. If you weren't already owned, I'd claim you for myself!@@"<br>
<br>
<<if $player.flags.collar.owner == "company">>
<<printThought "Maybe I shouldn't have sold myself to the company?">>
<<elseif $player.flags.collar.owner != "">>
<<printThought "It's not fair! Sure <<=setup.getNpcName($player.flags.collar.owner, 'formal')>> is the best ever, but it sucks that you can't be a slave to everyone, serving all the time.">>
<<else>>
<<printThought "Owned? But I'm not... well, I guess I kind of am owned by <<=setup.getNpcName('npc_manager', 'formal')>>...">>
<</if>>
<<case "humiliating">>
You straddle the chair with your legs wide, your <<=setup.calcBreastSize()>> tits thrust out to put your whole slutty body on display.<br>
<br>
"@@.pc;Hello, this worthless whore's name is slut <<=$player.first_name>> and just like you, she loves heels. The higher, thinner and skankier the better!@@"<br>
<br>
As you talk, you shift your body, showing off your curves and rolling your hips to idly fuck the chair.<br>
<br>
"@@.pc;That used to present a problem. I spend so much time on my back there is never the opportunity to practice balancing on the heels I really wanted! Talk about a conundrum! It was worse than having too few <<if $options.fem>>people<<else>>guys<</if>> show up to your gang-bang and having to wait on refractory periods! Fear not, slut sister, because I have found the solution for you, me, and all the other skanky hoes.@@"<br>
<br>
Stretching one leg up, you do a vertical splits, lewdly displaying yourself and rubbing your crotch with one hand as you point to the shoe locked to your raised leg.<br>
<br>
"@@.pc;Lock these on every night and well... you've seen the results! No more do you have to resort to basic pumps when you're at the club, you can wear the steepest, fuck-me heels and strut it like a slut all night long! I've been fucked so hard I can barely walk... like, every night if I'm lucky, and twice on Sundays! But thanks to my training with these sexy things I'm always ready to slip on a pair of my best steep fuck-me boots and go prowling for someone new to pound my worthless holes. Believe me, if you don't get a pair of these well... your <<if $options.fem>>SO<<else>>man<</if>> is probably going to end up fucking someone who does, maybe even me!@@"<br>
<br>
The clerk looks at you with a mix of disgust and arousal. "@@.npc_shoestore_manager;Wow, not many girls could pull that off, or appreciate it, but those that would... great job with the testimonial! Just recording it makes me feel like I should take a shower!@@"
<<case "brainless bimbo">>
Sitting on the edge of the chair you fold your legs slightly and turn side on towards the camera.<br>
<br>
"@@.pc;HEEEEYYY girlfriend! My name is... uh, <<=$player.first_name>>! I may not know much, like, at all, but what I do know is that you need to wear a pair of these heels to bed tonight!@@"<br>
<br>
Reaching back, you grab hold of the heel of your right shoe and bring it into frame to show off, sluttily arching your back in the process. "@@.pc;Sure it seems weird to lock your heels on rather than kick them off as soon as some<<if $options.fem>>one<<else>> stud<</if>> wants to take you for a tumble, but first of all, careful! You can lose a lot of nice shoes that way! And second these are for when you're sleeping...<<if $fetish.get_raped>> not that being passed out is a reason for a <<if $options.fem && $fetish.futanari>>futa<<else>><<guy>><</if>> not to fuck me, teehee. Don't you love waking up full of cum and not being sure where it's, like, from? I know I do! <</if>>@@" <br>
<br>
"@@.pc;See, the way they, like, work, is you wear them to bed and they train your feet and strengthen your calves for walking in heels. It's kind of like how spending the night in a glory hole teaches you how to swallow cum, only you don't even need to do anything! Just lock these on, pair the release to your alarm clock, which is automatic, not hard like plugging in a computer — what is it with power cords? I want to have things stuck in me, not the other way around! Anyway, basically, you put this on, head to bed and boom! It won't be long before you're strutting it like I am! Then maybe we can meet up! I'm always looking for other sky-high bimbo's to club with — those cocks aren't gonna double team themselves!@@"<br>
<br>
Puckering your slutty lips, you blow a kiss to the camera to finish things off.<br>
<br>
"@@.npc_shoestore_manager;Wow, you definitely sold me that these are the heels a bimbo needs. Great job.@@"
<<default>>
ERROR: UNKNOWN TESTIMONIAL TYPE <<=$scene.testimonial_type>>
<</switch>>
<br><br>
"@@.npc_shoestore_manager;In addition to pay, I have a new pair of shoes for you — I think they'd suit your style to a T! If you think you can make a testimonial targeted towards a different audience come back and I'll pay you more... and maybe have another set of heels for you.@@" She winks, clearly assuming that the shoes are an even bigger enticement than the money.<br>
<br>
You open the box to find a pair of
<<switch $scene.testimonial_type>>
<<case "casual">>
steep platform wedges in stunning hot pink... you wouldn't exactly call them "casual", but you suppose they are technically in the "normal," if steep, range of heels.
<<case "overly feminized">>
sexy leopard-print stilettos, perfect for making an impression at the bar.
<<case "submissive">>
bed heels similar to your own, only in a stunning royal purple. The locks are definitely fit for a slave, and the colour is a fun shift from the <<if $fetish.sissy>>sissifying<<else>>overly feminising<</if>> pink.
<<case "humiliating">>
clear "stripper" heels, thick platforms giving you quite the vantage point... while drawing a certain sort of attention.
<<case "brainless bimbo">>
pink "stripper" heels, thick platforms giving you quite the vantage point... while drawing a certain sort of attention.
<<default>>
ERROR: unexpected scene.testimonial_type <<=$scene.testimonial_type>>
<</switch>>
<<if $scene.key_reward>>
<br><br>
You pocket your money, but it seems that <<=setup.getNpcName('npc_shoestore_manager', 'formal')>> has something else for you. "@@.npc_shoestore_manager;So I think you've done just about every style of testimonial I could ask for, so I think you've earned this.@@" <<=setup.getNpcName('npc_shoestore_manager', 'formal')>> hands you a small round object with a round push-button on one side. "@@.npc_shoestore_manager;That's the "key" for your bed heels, in case you want to lock, or un-lock, them on a cadence other than your nightly sleep. Not that I imagine a heel-slut like yourself stopping that but, well... I am sure you can come up with some other fun uses for locking heels, hmm?@@"<br>
<br>
You thank her for the gift and pocket the electronic "key."
<</if>>
<br><br>
<<if $scene.shoes != "bed_heels_pink" && $scene.shoes != "">>
[<<moveTo "room_mall" "Change out of the bed heels and leave." 600 "<<set $player.cutscene.lockinventory = true>><<wearItem $scene.shoes true>>">>]
<<else>>
[<<moveTo "room_mall_interior" "Thank her and leave." 600 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
</div>/*#
#desc: ask about bed heels at shoe store
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.pushUnique('bedheels')>>
<<set $npc_shoestore_manager.profile = true>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
You approach the woman behind the counter to ask if they have any "bed heels" in stock.<br>
<br>
"@@.npc_shoestore_manager;What type are you looking for <<if setup.getCurrentMakeup() != "" || setup.analyzeWornTags(['female','male','unisex']) != "male">>madam<<else>>sir<</if>>?@@"<br>
<br>
[<<moveTo "event_mall_shoe_store_bed_heels_proper" 'Remember the words of <<=ps(setup.getNpcName("npc_manager", "formal"))>> instructions and ask for something "nice and secure."' 60>>]<br>
[<<moveTo "event_mall_shoe_store_bed_heels_wimpy" "Ask for whatever is best for beginners." 60>>]
</div>/*#
#desc: ask about bed heels at shoe store
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;Well, I wouldn't call bed heels a beginner product in any way.@@"<br>
<br>
<<if setup.isItemEquipped("thigh_highs_pink") && setup.getTotalValue("heels") < setup.getItemObj("thigh_highs_pink").heels.difficulty>>
She glances down at your towering heels critically. Even leaning against the counter for balance you are a bit wobbly and unstable.<br>
<br>
"@@.npc_shoestore_manager;Well, I guess you need all the help you can get at this point.@@"
<<elseif !setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>
She looks with obvious disdain at your flat footwear.<br>
<br>
<<if setup.getItemFromType("shoes").tags.includes("male")>>
"@@.npc_shoestore_manager;One should really take advantage of your day to day to practice in heels before you push into nocturnal wear. Or are you looking for some confidence before wearing heels in public?@@"
<<else>>
"@@.npc_shoestore_manager;One should really take advantage of your day to day to practice in heels before you push into nocturnal wear.@@"
<</if>>
<<elseif setup.getTotalValue("heels") < setup.getItemObjFromType("shoes").heels.difficulty>>
She glances down at the shoes you still haven't quite mastered.<br>
<br>
"@@.npc_shoestore_manager;Bed heels may be a little over kill if those are all you want to wear, but if you are looking to rise up to something higher in the future well, they say the best best investments are the ones you make in yourself. Let me check what I have in the back.@@"
<<else>>
"@@.npc_shoestore_manager;I guess you're looking to practice first before upgrading your daily wears? That's smart, and these heels will definitely make the sky the limit in a short while. Let me check what I have in the back.@@"
<</if>>
<br><br>
As she moves away from the counter, you catch a shocking glance at her feet. The clerk being buxom, but quite short of frame, you had figured she was just standing on a box behind the counter, but no, she walks confidently atop what have to be over twenty-centimetre high platforms not even counting the other ten in the heel! Even with all that she is still short, but you're beyond astounded at her choice of footwear.<br>
<br>
She disappears for a few minutes before returning wearing a slight frown and carrying a baby pink shoebox.<br>
<br>
"@@.npc_shoestore_manager;I am sorry, but it looks like bed heels have been really selling fast of late, we are nearly out of stock.@@"<br>
<br>
<<printThought "How can that be? I've never even heard of such a thing until recently and I STILL don't actually know what they are...">><br>
<br>
"@@.npc_shoestore_manager;Anyway, this is the last style we have left, and everything else is back-ordered at the warehouse so I have no clue when we'll have anything else available.@@"<br>
<br>
<<=setup.getItemObj('bed_heels_pink').offer_desc>>
<br>
"@@.npc_shoestore_manager;As I was saying, these are pretty extreme, but they are guaranteed to give results. The locks provide extra security from you kicking loose in your sleep and will automatically synchronise with your alarm clock so as to prevent the wearer from robbing themselves of progress in a sleepy, frustrated stupor. Anyway, since this wasn't what I would normally recommend to a beginner like yourself I'll give you a 10% discount — that's only <<=.9 * setup.getItemObj("bed_heels_pink").price>> instead of their normal <<=setup.getItemObj("bed_heels_pink").price>>. The offer is only good right now, if you come back later, they will be full price, if we even still have them in stock.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought "<<=setup.getNpcName('npc_manager', 'formal')>> did say you should get a pair to train with, the last thing you want is to disobey her...">>
<<else>>
<<printThought "<<=setup.getNpcName('npc_manager', 'formal')>> did say you should get a pair to train with, it's probably not a good idea to disobey...">>
<</if>>
<br><br>
<<if $player.money.total >= .9 * setup.getItemObj("bed_heels_pink").price>>
[<<moveTo "event_mall_shoe_store_bed_heels_purchase_confirm" "Buy bed heels at the reduced price." 60 "<<set $scene.bedheelsprice=.9*setup.getItemObj('bed_heels_pink').price>>">>]<br>
<</if>>
[<<moveTo "event_mall_shoe_store_bed_heels_bargain" "Beg her for a further discount." 60>>]
</div>/*#
#desc: shoe store owner introduces you to bed heels
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
"@@.npc_shoestore_manager;I know exactly what you're looking for, let me just run to the back.@@"<br>
<br>
She disappears for a few minutes before returning, carrying a baby pink box.<br>
<br>
"@@.npc_shoestore_manager;It is good to meet such a discerning customer, and it is your lucky day. Would you believe we are out of every other style? Bed heels have really been popular this season, though it seems most buyers are not as astute as yourself to go straight for our most effective model.@@"<br>
<br>
<<printThought "How can bed heels be so popular? I had never even heard of the things until recently...">><br>
<br>
"@@.npc_shoestore_manager;Anyway, this really is easily the best product on the market and I doubt you would settle for anything less, but just so you know everything else is SUPER back-ordered at the warehouse and I have no clue when we'll be getting any other styles back in stock.@@"<br>
<br>
<<=setup.getItemObj('bed_heels_pink').offer_desc>>
<br><br>
"@@.npc_shoestore_manager;A little daunting, aren't they? Still, beauty is pain and these will DEFINITELY have you strutting around in any other heel you like in no time.@@"<br>
<br>
<<if setup.isItemEquipped("thigh_highs_pink") && setup.getTotalValue("heels") < setup.getItemObj("thigh_highs_pink").heels.difficulty>>
She glances down at your towering heels critically. Even leaning against the counter for balance you're a bit wobbly and unstable.<br>
<br>
"@@.npc_shoestore_manager;No offense, but it looks like you could use the help, amirite?@@"
<<elseif !setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>
She looks down at your feet critically.<br>
<br>
"@@.npc_shoestore_manager;Flats? You're going to be in for some long, productive nights to break that habit.@@"
<<if setup.analyzeWornTags(['female','male','unisex']) == "male">>
<br><br>
"@@.npc_shoestore_manager;Before long you won't be able to find male shoes at all, cowboy boots barely top out at 6cm and with the help of these you'll think that's practically ground-level.@@"
<</if>>
<<elseif setup.getTotalValue("heels") < setup.getItemObjFromType("shoes").heels.difficulty>>
She glances down at the shoes you still have yet to master.<br>
<br>
"@@.npc_shoestore_manager;These might be a little over kill if those are all you want to wear, but if you are looking to rise up to something higher in the future well, the best investments are in yourself.@@"
<<else>>
"@@.npc_shoestore_manager;I guess you are looking to practice a bit first before upgrading your daily wears? That is smart, and these heels will definitely make the sky the limit.@@"
<</if>>
<br><br>
"@@.npc_shoestore_manager;Anyway, these cost <<=setup.getItemObj("bed_heels_pink").price>>. I know it sounds like a lot, but trust me when I say these are the top of the line model and your only regret will be that you didn't buy them earlier. Not to pressure you, but you should bear in mind our stock situation. If you do not buy today, I cannot guarantee we will still have these tomorrow.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought "<<=setup.getNpcName('npc_manager', 'formal')>> did specify that you needed to send her a picture of you in bed heels tonight, the last thing you want is to disobey her...">>
<<else>>
<<printThought "<<=setup.getNpcName('npc_manager', 'formal')>> did specify that you needed to send her a picture of you in bed heels tonight, it's probably not a good idea to disobey...">>
<</if>>
<br><br>
You currently have <<=$player.money.total>> credits.<br>
<br>
<<if $player.money.total >= setup.getItemObj("bed_heels_pink").price>>
[<<moveTo "event_mall_shoe_store_bed_heels_purchase_confirm" "Buy the bed heels." 60 "<<set $scene.bedheelsprice=setup.getItemObj('bed_heels_pink').price>>">>]<br>
<</if>>
[<<moveTo "event_mall_shoe_store_bed_heels_bargain" "Beg her for a discount." 60>>]
</div>/*#
#desc: shoe store owner offers you the option of featuring in an advertisement in exchange for bed heels
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
It takes no minor measure of pleading, but finally you convince the clerk of your desperation. Taking pity on you, she offers an alternate arrangement by which you could take possession of the bed heels.<br>
<br>
"@@.npc_shoestore_manager;Look, I will let you in on a secret. Most girls who try bed heel training? They kick them off within the first hour of sleep each night. A week later? No results, banished to the back of the closet and forgotten. That is why this model is so revolutionary — they literally force your body into developing, and there's no escape until morning! It's perfect!@@"<br>
<br>
"@@.npc_shoestore_manager;Anyway, full disclosure, the reason we still have this model in stock is that we kind of over-ordered, and there are more still shipping... eventually. I absolutely have faith in this product I just think we need some better marketing and I could convince more people to skip the basic stuff and go right for what really works. After that, well, there's no better advertising than proof of success and the resulting word of mouth.@@"<br>
<br>
"@@.npc_shoestore_manager;Here is my proposal. You have a nice pair of legs on you and you obviously need training. We shoot a video of you walking in a pair of our other challenging shoes. Then you go home and you sleep in these bed heels every night for a week. I guarantee when you come back afterwards you won't believe how much more proficient you've become. Cut the footage together, post it online and boom, THAT will sell product. So yeah, you get your bed heels, I get evidence that will help me sell more, and all those nascent heel aficionados get the training they need. Everyone wins.@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
<<printThought "Oooh, that sounds like fun, I'd definitely like to be better in heels!">><br>
<br>
<</if>>
<<if setup.getTotalValue("bimbofication") >= 10>>
<<printThought "Free heels? Could there be anything better!?" 40>><br>
<br>
<</if>>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("bimbofication") >= 10>>
The clerk smiles at your obvious enthusiasm for the idea.<br>
<br>
<</if>>
"@@.npc_shoestore_manager;If you are concerned about your identity, it's fine, we can do the shoot anonymously. Though if you're willing to give a public testimonial on camera at the end well... I would definitely give you a bit extra, on top of the shoes. Don't worry about it though, you don't have to decide until you come back for the "after" photoshoot.@@"<br>
<br>
"@@.npc_shoestore_manager;Well, what'll it be? This offer is limited time only, if you can't do it I'll have to find someone else.@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("bimbofication") >= 10>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_1" "How could you possibly say no?" 60>>]
<<elseif setup.getTotalValue("submission") >= 12 && $player.money.total < setup.getItemObj("bed_heels_pink").price>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_1" "Her offer is a little scary, but you can't disappoint your mistress and leave the store empty-handed." 60>>]
<<else>>
[<<moveTo "event_mall_shoe_store_bed_heels_shoot_1_1" "Accept her offer." 60>>]<br>
<<if $player.money.total >= setup.getItemObj("bed_heels_pink").price>>
[<<moveTo "event_mall_shoe_store_bed_heels_purchase_confirm" "Decline her offer and pay full price." 1 "<<set $scene.bedheelsprice=setup.getItemObj('bed_heels_pink').price>>">>]<br>
<</if>>
[<<moveTo "room_mall_shoe_store" "Decide not to buy the bed heels." 60>>]
<</if>>
</div>/*#
#desc: purchase bed heels
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `-($scene.bedheelsprice)`>>
<<addItem 'bed_heels_box'>>
<</if>>
<<set $player.location to "<<printShopName 'mall_shoe_store' true>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_shoestore.png" setup.charImage("npc_shoestore_manager")>>
<div id="invframe" class="scrolltext">
You give the clerk <<=$scene.bedheelsprice>> and she boxes up the bed heels and hands them to you with a wide smile.<br>
<br>
"@@.npc_shoestore_manager;You've made a great purchase, believe me, enjoy!@@"<br>
<br>
[<<moveTo "event_secretary_style_ballet_heels_enthusiast_1" "Ask if she might have something for beyond the bedroom?" 60>>]<br>
[<<moveTo "room_mall_shoe_store" "Walk away." 1>>]
</div>/*#
#desc: ask about a "uniform upgrade" at the lingerie shop
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_shopkeeper', 'first')>> if she knows about, or perhaps sells? Something called "bed heels." <br>
<br>
Her eyes light up and she smiles. "@@.npc_shopkeeper;Oh my, looking to train up are we? How wonderful! To answer your question, no, we do not stock that sort of thing, but my good friend <<=setup.getNpcName('npc_shoestore_manager', 'first')>> across the way at <<printShopName 'mall_shoe_store' true>>.@@"<br>
<br>
You thank her for the suggestion.<br>
<br>
<<printThought "Guess it makes sense to find heels at the shoe store...">><br>
<br>
[<<moveTo "room_mall_lingerie_shop_fetish" "Back to the store." 60>>]
</div>/*#
#desc: ask manager for uniform stipend
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.stage == 3 && !$currentTasks.hasOwnProperty('task_uniform_upgrade')>>
<<addCredits $npc_manager.flags.uniform_upgrade.stipend_amt>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade')>>
You mention the A-SLUT uniform upgrade programme and she smiles.<br>
<br>
<<if $currentTasks['task_uniform_upgrade'].finished>>
"@@.npc_manager;Unfortunately I have nothing more for you in regards to helping your progress as A-SLUT. You have been doing a lovely job thus far however so just keep it up and I will be sure to inform you when further opportunities arise.@@"
<<else>>
"@@.npc_manager;Yes, and you are already enrolled, do not think you will be getting any more out of me until after you finish proving that you deserve your place in the programme.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<<elseif $player.flags.uniform_upgrade.aslut_enrollment_refused>>
<<moveTo "event_uniform_stipend_1_reenroll">>
<<elseif $npc_manager.stage < 3>>
"@@.npc_manager;Stipend? My, my, someone has been reading their contract! Unfortunately it would seem you did not read it well enough — that programme is for full <<if $fetish.sissy>>SISSI <</if>>Secretaries and you, alas, are still in your probationary trial period. I would love to make an exception but...@@" She looks at you with a familiar hunger that sends a chill down your spine. "@@.npc_manager;No, best to wait, going too fast could lead to unfortunate results. Patience is a virtue.@@"<br>
<br>
<<printThought "She's been taking things slow? What?">><br>
<br>
Though intimidated, a part of you wonders what exactly could be hiding behind this whole stipend thing, looks like you need to finish your trial period first to find out.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<<else>>
"@@.npc_manager;Stipend... oh, aren't you the clever one. Spent some time reading, did you? I hope you didn't strain your pretty little head. I presume you must mean the A-SLUT? The Allotment for <<if $fetish.sissy>>Sissy<<else>>Secretary<</if>> Learning and Uniform Transformation.@@"<br>
<br>
<<if setup.getTotalValue("smart") > 7>>
<<printThought "Of course that's what they'd call it.">>
<<else>>
<<printThought "That can't be a thing, can it?">>
<</if>>
<br><br>
<<if $npc_manager.stage < 3>>
"@@.npc_manager;There is just one teensy little issue — the A-SLUT programme is only available to full-time, non-probationary employees. Being that you are still in the midst of proving yourself well...@@" She smiles in a manner that is not quite comforting. "@@.npc_manager;Another thing to look forward to, hmm?@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<<else>>
She walks around to her desk drawer and pulls out a stack of credits.<br>
<br>
"@@.npc_manager;Now given that I already gifted you a new, compliant uniform,<<if setup.isItemEquipped('satin_blouse_pink') && setup.isItemEquipped("skirt_leather_pink") && setup.isItemEquipped("mary_janes_pink")>> you look very cute in it, by the way,<<else>> though it seems like you have decided to wear something else today,<</if>> this does not quite seem necessary. As you are exhibiting presently you have proven that you are capable, and equipped, to dress fully in keeping with your representative position... but contractually, you are correct. I would never want you to think I was going against the rules, or treating you in any way unfairly.@@"<br>
<br>
You take the <<=$npc_manager.flags.uniform_upgrade.stipend_amt>> credits gratefully, counting them in quick triumph as she walks back around to her desk.<br>
<br>
"@@.npc_manager;Of course a smart girl like yourself read that ENTIRE section of the contract, or would you like me to explain the mandate automatically incurred by your accepting that payment?@@"<br>
<br>
<<if $player.flags.uniform_upgrade.fully_understand_contract>>
<<if setup.getTotalValue("feminization") >= 12 || setup.getTotalValue("submission") >= 10>>
<<printThought "I knew this was coming, I should just go along.">>
<<else>>
<<printThought 'I knew this was coming, it is probably safer just to go along with her "game" ... or do I tip my hand and try to impress her with how much I understood?'>>
<</if>>
<<else>>
<<printThought "Uh-oh, what have I gotten into now?">>
<</if>>
<br><br>
[<<moveTo "event_uniform_stipend_1_refund" "Return the money." 60>>]<br>
[<<moveTo "event_uniform_stipend_1_explain_2" "Ask her to explain." 60>>]<br>
<<if setup.getTotalValue("smart") >= 12>>
[<<moveTo "event_uniform_stipend_1_smart" "Tell her you already know." 60>>]
<<else>>
[<<moveTo "event_uniform_stipend_1_dumb" "Lie and tell her you already know." 60>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: try to return A-SLUT stipend to manager
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Wide-eyed you hurriedly try to give her back the credits.<br>
<br>
She looks disappointed, then amused, as she shakes her head in refusal.<br>
<br>
"@@.npc_manager;Even if I wanted to take that money back, the rules for the A-SLUT programme are very specific and binding. Payments can only be returned in the case of a broken contract, in which case the employee is required to repay both the principle and another double again in punitive fees.@@"<br>
<br>
<<if $player.money.total >= 3*$npc_manager.flags.uniform_upgrade.stipend_amt>>
<<printThought "What? That would wipe away so much of my savings!">><br>
<br>
[<<moveTo "event_uniform_stipend_1_refund_success" "Pay the fine." 60>>]<br>
[<<moveTo "event_uniform_stipend_1_explain_2" "Keep the money." 60>>]
<<else>>
[<<moveTo "event_uniform_stipend_1_explain_2" 'You cannot afford such a fine, you have no choice but to "accept your fate."' 60>>]
<</if>>
</div>/*#
#desc: manager explains A-SLUT stipend
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include uniformUpgradeTask>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Now then, when we defined the secretary-level job responsibilities, and had legal draw up the contract, we were aware that it can take some time to pick out or accessorise a new outfit. Thus, you have until Monday to make your purchase. Oh, I just cannot wait to see what you come up with!@@"<br>
<br>
<<printThought "What have I gotten myself into...">><br>
<br>
[<<moveTo "event_uniform_stipend_1_suggestions" "Ask her for suggestions." 60>>]<br>
[<<moveTo "event_uniform_stipend_1_punishment" "Thank her and leave." 60>>]
</div>/*#
#desc: try to pay back the A-SLUT stipend and fine
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> looks quite astonished when you produce the requested credits.<br>
<br>
"@@.npc_manager;Well, well, it appears that somebody has been diligent at squirreling away their paychecks. That is quite a lot of money for one in your position. Would it not be better to just accept the stipend and get a fun new addition to your outfit?@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_explain_2" "Change your mind, it is a lot of money..." 60>>]<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_uniform_stipend_refuse" "Stay firm and give her the money." 60>>]
<<else>>
[@@.link_locked;You try to find the willpower to turn down her offer, but come up empty.@@]<br>
<</if>>
</div>/*#
#desc: pay back A-SLUT stipend and fine
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.uniform_upgrade.aslut_enrollment_refused = true>>
<<addCredits `-(3*$npc_manager.flags.uniform_upgrade.stipend_amt)`>>
<<set $player.flags.uniform_upgrade.fully_understand_contract = true>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_16'
8
'psychiatrist_uniform_upgrade_refuse'
false
>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade')>>
<<deleteMember $currentTasks 'task_uniform_upgrade'>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> looks more disappointed than you've ever seen as she quietly accepts your pile of credits.<br>
<br>
"@@.npc_manager;I am sorry to see you declining such a wonderful opportunity. Still, in case you change your mind, I will leave the invitation to join A-SLUT open indefinitely.@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_punishment" "Thank her and leave." 60>>]
</div>/*#
#desc: Intelligently explain the A-SLUT stipend to your manager
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.uniform_upgrade.smart_stipend_explain = true>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<switch $now.getUTCDay()>>
<<case 1>>
<<set _dueDate to setup.setNextDate($now, 7, 8, 0)>>
<<case 2>>
<<set _dueDate to setup.setNextDate($now, 6, 8, 0)>>
<<case 3>>
<<set _dueDate to setup.setNextDate($now, 5, 8, 0)>>
<<case 4>>
<<set _dueDate to setup.setNextDate($now, 4, 8, 0)>>
<<case 5>>
<<set _dueDate to setup.setNextDate($now, 3, 8, 0)>>
<<default>>
ERROR: unexpected day! <<=$now.getUTCDay()>>
<</switch>>
<<set $scene.dueDate = _dueDate.getDate()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> is momentarily taken aback by your confident nod.<br>
<br>
"@@.npc_manager;Oh? Just so we are both on the same page, how about you explain what you think accepting that money entails?@@"<br>
<br>
"@@.pc;It means that I have to use it to pay for uniform upgrades, and that I have until the beginning of the following week — so Monday the <<printNumber $scene.dueDate>>, to present myself, my purchases, and all associated receipts for managerial — that would be you, of course — approval.@@"<br>
<br>
"@@.pc;In addition, by accepting enrollment into the Allotment for <<if $fetish.sissy>>Sissy<<else>>Secretary<</if>> Learning and Uniform Transformation I have entered a binding agreement to an automatic contract extension. Failure to comply with new directives will, of course, result in punishments, as well as potential, and additional, punitive claw-backs of any funds allocated to the employee for purposes of education or uniform improvements, subject to a multiplicative factor if the employee, that would be me, has their contract terminated before their responsibilities have been discharged.@@"<br>
<br>
Now she is definitely surprised.<br>
<br>
<<printThought "Was it really such a good idea to tip my hand like this?">><br>
<br>
"@@.npc_manager;Well, it looks like you DID do your homework. Once again you surpass my expectations. Enrolling you in A-SLUT is definitely the right move for a go-getter like yourself. Since you know what you need to do let me once again congratulate you and say that I will be very much looking forward to seeing what you come up with next week!@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_punishment" "Thank her and leave." 60>>]
</div>/*#
#desc: try and fail to intelligently explain the A-SLUT stipend to your manager
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 8 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.pc;Well, um, see, by accepting the stipend I enrolled in the... allotment for <<if $fetish.sissy>>Sissy<<else>>Secretary<</if>> Learning and Uniform Transformation which is a programme meant to accelerate my career advancement and—@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> cuts you off before you can babble further.<br>
<br>
"@@.npc_manager;Clearly you did not read, or rather, understand, the rest of the contract, which I suppose would have been too much to ask, really. To be honest, based on your employment history, I am surprised you managed to even puzzle out as much as you did... anyway, how about I just explain things so you do not have to worry your pretty little head?@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_explain_2" "Embarrassed you silently nod and listen." 60>>]
</div>/*#
#desc: Ask manager if you can re-enroll in A-SLUT programme
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.alreadyEnrolled = false>>
<<set $scene.alreadyFinished = false>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade')>>
<<set $scene.alreadyEnrolled = true>>
<<if $currentTasks['task_uniform_upgrade'].finished>>
<<set $scene.alreadyFinished = false>>
<</if>>
<<applyExperience 'bimbofication' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<include uniformUpgradeTask>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_16.5'
9
'psychiatrist_uniform_upgrade_reenroll'
false
>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.alreadyEnrolled>>
You bring up the idea of enrolling in the A-SLUT programme. She stares at you and blinks twice before responding.
<<if $scene.alreadyFinished>>
"@@.npc_manager;Silly girl, not only have you already enrolled, you successfully upgraded your uniform! What a silly request, you cannot enrol twice!@@"
<<else>>
"@@.npc_manager;Did you forget? You already enrolled... and you still have work to do at finding an appropriate uniform upgrade.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_manager' 300>>
<<else>>
"@@.npc_manager;Oh, I am so happy that you have finally come around! Trust me, being in A-SLUT is like strapping a rocket to the back of your career. You could be surpassing your predecessor in no time!@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought "If that is <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desire, it must be the best thing for me.">>
<<elseif setup.getTotalValue("bimbofication") >= 10>>
<<printThought "How cool! I wonder if it could help me become more like <<=setup.getNpcName('npc_barista', 'first')>>?">>
<<elseif setup.getTotalValue("feminization") >= 12>>
<<printThought "That sounds great, I've always been jealous of how feminine she looks in the photo above my desk.">>
<<elseif setup.getTotalValue("humiliation") >= 10>>
<<printThought "This sounds like it could be really humiliating... why does that make me so excited?">>
<<else>>
<<printThought "Oh no, what have I agreed to?">>
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> almost sprints around her desk before returning to shove a wad of credits into your hands.<br>
<br>
"@@.npc_manager;This is so exciting! I just cannot tell you how much I am looking forward to next Monday and seeing what you come up with!@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_suggestions" "Ask her for suggestions." 60>>]<br>
[<<moveTo "room_office_after_work" "Thank her and leave." 60>>]
<</if>>
</div>/*#
#desc: Ask manager for suggestions on how to spend your uniform stipend
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Sorry, my dear, but you are in the advanced class now. A-SLUT means that you are taking charge of your career so the training wheels are off. I would be robbing you of important development opportunities if I dictated your choice.@@" She bites her lip, practically scorching you with her smouldering gaze before concluding. "@@.npc_manager;Besides, remember that the ideal secretary should be able to anticipate, and fulfill, her superior's desires without even needing to be commanded. By now you must have developed a sense of the kind of thing I would approve of.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought "Oh Mistress... take me now!">>
<<else>>
<<printThought "What SHE would approve of? What have I gotten myself into?">>
<</if>>
<br><br>
<<if $player.flags.uniform_upgrade.aslut_enrollment_refused>>
[<<moveTo "room_office_after_work" "Thank her and leave." 60>>]
<<else>>
[<<moveTo "event_uniform_stipend_1_punishment" "Thank her and leave." 60>>]
<</if>>
</div>/*#
#desc: Manager punishes you for trying to find a loophole in your contract
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 3 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You turn to depart. You reach for the door just as <<=setup.getNpcName('npc_manager', 'formal')>> orders you to stop.<br>
<br>
"@@.npc_manager;Ah, ah, ah, are you forgetting something? As much as I appreciate your initiative in becoming part of A-SLUT, the fact remains that you tried to find a loophole in your contract and essentially double-dip after I had so graciously gifted you a brand new uniform! Though it pains me to say it, there can be no question that you are due for a punishment.@@"<br>
<br>
You know by now that objecting will only make it worse for you so you release your grip on the doorknob and step back. Moving to her desk you dutifully turn around to present your backside as she fetches the paddle.<br>
<br>
SMACK! as always, the first blow takes you by surprise and you gasp in pain.<br>
<br>
"@@.npc_manager;Did that hurt, <<if $fetish.sissy>>sissy<<else>>girl<</if>>?@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager;Well, get used to it, you are—@@"<br>
<br>
The loud SMACK! and your resulting yelp of pain drowns out her next word.<br>
<br>
"@@.npc_manager;A-SLUT now,@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager;And that means expectations rise...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager;...but the rewards become all the sweeter.@@"<br>
<br>
Braced for another slap, you are instead surprised to feel her hand gently caressing your sore bottom. Her tender touch causes you to let out a cute gasp that turns into a moan when she traces over your <<if setup.getTotalValue("anal") >= 5 >>well-trained<<else>>pert<</if>> hole, <<if setup.checkItemTypeWorn("plug")>>wiggling your plug<</if>> before reaching between your legs
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>to cradle your <<getWordMyPenis>><<else>>squeeze your <<if $fetish.sissy>>sissy <</if>>package<</if>>.
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
to gently pat your chastity shield.
<<else>>
to rub between your legs.
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Mmmm, that is a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>. You are going to be the best! Show how much you want it. Tell me how much you appreciate being enrolled in the A-SLUT programme.@@"<br>
<br>
[<<moveTo "event_uniform_stipend_1_punishment_accept" 'Obey and thank her for this new step in your "career."' 600>>]<br>
[<<moveTo "event_uniform_stipend_1_punishment_reject" "Remain trembling and silent." 600>>]
</div><<switch $now.getUTCDay()>>
<<case 1>>
<<set _nextDate = setup.setNextDate($now, 7, 8, 0)>>
<<case 2>>
<<set _nextDate = setup.setNextDate($now, 6, 8, 0)>>
<<case 3>>
<<set _nextDate = setup.setNextDate($now, 5, 8, 0)>>
<<case 4>>
<<set _nextDate = setup.setNextDate($now, 4, 8, 0)>>
<<case 5>>
<<set _nextDate = setup.setNextDate($now, 3, 8, 0)>>
<<default>>
ERROR: unexpected day! <<=$now.getUTCDay()>>
<</switch>>
<<set $player.flags.uniform_upgrade.aslutStage = 1>>
<<registerProgressionEvent>>
<<addTaskById 'task_uniform_upgrade' _nextDate>>
<<addNpcTheme 'npc_primrose' 'work' 'theme_primrose_aslut'
0
'theme_primrose_aslut'
true
>>/*#
#desc: Thank manager for entrolling you in A-SLUT
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include uniformUpgradeTask>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_15'
8
'psychiatrist_uniform_upgrade_task'
false
>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> moves close, her body pressed against your back, one hand cradling your throat as she whispers and gently nips at your ear.<br>
<br>
"@@.pc;Thank you, <<=setup.getNpcName('npc_manager', 'formal')>>, thank you for making me A-SLUT.@@" You cry out, your words sending a shudder through both of your bodies.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> steps away, leaving you hanging as she puts the paddle back in its drawer.<br>
<br>
"@@.npc_manager;I think that will do, for today. Remember — next Monday you need to be wearing something new for me.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
</div>/*#
#desc: Too dumbstruck to thank manager for entrolling you in A-SLUT
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include uniformUpgradeTask>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_15'
8
'psychiatrist_uniform_upgrade_task'
false
>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are too overwhelmed to respond, the feeling of your manager's body pressed against your own, her hand possessively cradling your throat.<br>
<br>
"@@.npc_manager;Cat got your tongue? That is okay, I will never say no to a silent submissive <<if $fetish.sissy>>sissy<<else>>girl<</if>>. We both know the truth, even when you are too shy to vocalise it.@@"<br>
<br>
She gives your tender rear a final squeeze before walking away and putting the paddle back in its drawer.<br>
<br>
"@@.npc_manager;You are dismissed. Remember — next Monday you need to have something new for me.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
</div>/*#
#desc: forced enrollment in a-slut
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include uniformUpgradeTask>>
<<addCredits $npc_manager.flags.uniform_upgrade.stipend_amt>>
<<set $player.flags.uniform_upgrade.forced = true>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_15'
8
'psychiatrist_uniform_upgrade_task'
false
>>
<<set $scene.keepKey = $npc_manager.flags.require_chastity && $player.sec_style.submission.permanent_key == "" && !$npc_manager.flags.playerstayedinchastity && !($currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished)>>
<<if $scene.keepKey>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Though her eyes twinkle with excitement <<=setup.getNpcName("npc_manager","formal")>> looks at you sternly.
<<if $player.flags.uniform_upgrade.aslut_enrollment_refused>>
"@@.npc_manager;So, <<=ps(setup.getNpcName("npc_boss","formal"))>> comments at the party the other night only reinforced the reality that your development has stagnated. I know you declined this offer previously, but I afraid that, if we are going to get you into proper <<if $fetish.sissy>>SISSI <</if>>secretary shape well... it is time for you to be enrolled in the Allotment for <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> Learning and Uniform Transformation. I have already arranged for a payment of <<=$npc_manager.flags.uniform_upgrade.stipend_amt>> credits to be made to your account and now... now it is up to you to take a step forward and find a suitable upgrade to your attire. Oh, I cannot wait to see what you come up with!@@"
<<else>>
"@@.npc_manager;So, I imagine you are wondering about <<=ps(setup.getNpcName("npc_boss","formal"))>> comments from the party. Normally the Allotment for <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> Learning and Uniform Transformation is an advanced program offered to the most ambitious of assistants, all laid out in your contract, I would add — I was hoping you might approach me about it, in fact.@@" She sighs. "@@.npc_manager;Alas, apparently that was too much to be expected and, well... one has to agree that your progress has stagnated but this should be the perfect opportunity to keep you moving forward!@@"<br>
<br>
"@@.npc_manager;Now, I imagine you have all sorts of questions but really, the start of the program is quite simple. You will, well, have technically, been granted a special stipend of <<=$npc_manager.flags.uniform_upgrade.stipend_amt>> credits to be used to in some way "improve" your day to day attire. This acts in two ways — one, providing the opportunity for improvement without having to worry about the initial expense, as well as allowing you to show off your judgement in obtaining something suitable. As you continue to prove yourself, there are more advanced levels of the A-SLUT program, and I hope to guide you through them in the future, but for now, well... I imagine figuring out a way to improve on your already incredibly loveliness should keep you busy.@@"
<</if>>
<br><br>
<<if $scene.keepKey>>
"@@.npc_manager;Oh, and to keep you... focused on your task, I think I shall hold on to your key <<if $now.getUTCDay() == 5>>for the weekend<<else>>for the night<</if>>. After all, so-called freedom is really just another distraction, hmm?@@"<br>
<br>
<</if>>
You gulp at this new responsibility.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: mux to based on which uniform upgrade you purchased
#status: RELEASED 0.6.0.0
#*/
<<initRoom>>
<<include playerMenu>>
<<set $scene.uniform_upgrade = setup.calcUniformUpgrade()>>
<<if $scene.beforetasklocation>>
<<set $scene.beforetasklocation.pop()>>
<<else>>
<<set $scene.beforetasklocation = []>>
<</if>>
<<set $scene.beforetasklocation.push("room_office_sissy_secretary_work_morning_start")>> /% this is so the morning inspection proceeds properly%/
<<if !$currentTasks.hasOwnProperty("manager_morning_inspection_task")>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<completeTask "manager_morning_inspection_task" $now true>>
<<if $events.hasOwnProperty('aslut_congratulations')>>
<<removeEvent 'aslut_congratulations'>>
<</if>>
<<set $taskEvents = []>>
<<set $scene.aslutoverride = true>>
<<switch $scene.uniform_upgrade>>
<<case "thigh_highs_pink">>
<<set $npc_manager.flags.uniform_upgrade.item_comments[$scene.uniform_upgrade] = true>>
<<moveTo "event_manager_daily_check_thigh_highs_pink">>
<<case "satin_corset_pink">>
<<set $npc_manager.flags.uniform_upgrade.item_comments[$scene.uniform_upgrade] = true>>
<<moveTo "event_manager_daily_check_satin_corset_pink">>
<<case "hoop_earrings_gold">>
<<set $npc_manager.flags.uniform_upgrade.item_comments[$scene.uniform_upgrade] = true>>
<<moveTo "event_manager_daily_check_hoop_earrings_gold">>
<<case "">>
<<moveTo "event_manager_daily_check_upgrade_fail">>
<<default>>
ERROR unexpected scene uniform_upgrade
<</switch>>/*#
#desc: First time showing up to work with bespoke earrings
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<<set $scene.firstTask = $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<if $scene.firstTask>>
<<set $player.flags.uniform_upgrade.aslutStage = 2>>
<<completeTask 'task_uniform_upgrade' $now true>>
<<set _nextDate = setup.setNextDate($now, 14, 0, 0)>>
<<addWorkEvent "aslut_perfect_reminder" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.firstTask>>
<<if setup.daysToDate($now, setup.getTaskDueDate('task_uniform_upgrade')) != 0>>
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office to greet you with a smile. "@@.npc_manager;My, my, it looks like someone is showing off their inner A-SLUT ahead of schedule!@@" She notes as soon as she looks at your new earrings.
<<else>>
<<if $now.getUTCHours() < 8>>Despite the early hour, <</if>><<=setup.getNpcName('npc_manager', 'formal')>> must have been lying in wait for your arrival as no sooner have you entered the office but <<=setup.getNpcName('npc_manager', 'formal')>> has you stand in the middle of her office as soon as you get in before she slowly walks around you like a cat stalking its prey. Almost immediately her gaze focuses in on the bright gold earrings hanging on either side of your neck. Ending her loop standing in front of you she holds your chin with one hand and turns your head back and forth, the earrings swaying slightly, brushing your neck and tugging on your earlobes to remind you of their presence.
<</if>>
<<else>>
Striding out of her office to begin your inspection, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> attention immediately zeros in on your new earrings.
<</if>>
<br><br>
"@@.npc_manager;Very nice@@" she states with a nod. "@@.npc_manager;Feminine, flashy, a little classy in that "I paid a lot to look this cheap" way. I approve.@@"<br>
<br>
<<printThought "Oh thank <<getWordGod>>. <<if setup.getTotalValue('submission') >= 10>>I'm so happy <<=setup.getNpcName('npc_manager', 'formal')>> approves.<</if>>">><br>
<br>
<<if $scene.makeup == "">>
"@@.npc_manager;One problem, however.@@" She adds, your heart sinking in fear. "@@.npc_manager;Seeing you with those oh-so-feminine earrings reminds me how plain your face is. I mean you have natural cuteness, sure, but you should be showing off so much more...@@"
<<else>>
<<if $player.makeup.messed >= 75>>
Rubbing her finger across your cheek smudges your already-ruined makeup even further.<br>
<br>
"@@.npc_manager;No, this will not do at all. I suppose some might appreciate the trashy whore look you have going, but this is a professional environment and I expect far better from you.@@"
<<elseif $player.makeup.messed > 50>>
Examining your damaged makeup she frowns.<br>
<br>
"@@.npc_manager;Hmm, it looks like you made an effort, but you need to take more pride in your work. You are not painting a house, you cannot just throw makeup up and leave it for a decade, you have to vigilantly pay attention and touch things up throughout the day.@@"
<<elseif $scene.makeup == "nomakeupmakeup">> /* note: from this point forward makeup is definitionally in good condition */
Examining your visage with a critical eye she rubs just below your ear to confirm that you are, in fact, wearing makeup.<br>
<br>
"@@.npc_manager;Credit where credit is due. You have pulled off a very subtle job. You really nailed applying just enough makeup to perfectly round out your cute face without really changing anything. That said... well, that is not really the point of a <<if $fetish.sissy>>sissy's<<else>>girl's<</if>> makeup, is it?@@"
<<elseif $scene.makeup == "normalmakeup">>
Examining your girly face she finally nods in approval.<br>
<br>
"@@.npc_manager;Hmm, this really is almost expertly done. The glint of your earrings really works with the makeup to set off your feminine features.@@"
<<elseif $scene.makeup == "camgirl">>
Examining your heavily made-up face she finally nods in approval.<br>
<br>
"@@.npc_manager;Not really my style, a bit heavy, truth be told, but it is within acceptable parameters for your position.@@"
<<elseif $scene.makeup == "egirl">>
Examining your heavily made-up face she finally nods in approval.<br>
<br>
"@@.npc_manager;Not really my style, a bit heavy, truth be told, but I suppose it is within acceptable parameters for your position.@@"
<<elseif $scene.makeup == "qtpie">>
Examining your heavily made-up face she finally nods in approval.<br>
<br>
"@@.npc_manager;Perhaps less formal than I would prefer... but there is no denying that it makes you look utterly adorable, so I shall allow it.@@"
<<elseif $scene.makeup == "expertmakeup">>
Examining your girly face she finally nods in approval.<br>
<br>
"@@.npc_manager;Not really my style, but somehow it fits you, yes, whoever taught you that seems to have a real eye for how to best highlight your character.@@"
<<elseif $scene.makeup == "ultimatebimbo">>
Examining your whorish countenance her expression remains analytical.<br>
<br>
"@@.npc_manager;What did you use to apply this... a trowel? Still, I suppose it suits you... someone who knew you before might not even recognise you, though it honestly seems odd for those pink lips not to be wrapped around a juicy cock, would you not agree?@@"<br>
<br>
<<if setup.getTotalValue("penis") >= 10>>
<<printThought "Of course! A fat cock sounds wonderful!">>
<<else>>
<<printThought "Oh <<getWordGod>>, is that what I look like? A brainless cum-dumpster?">>
<</if>>
<br><br>
"@@.npc_manager;I will allow it, but I would prefer it if you adopted something a bit more... professional. You do work in a representative position, after all but for today... it may be more than I would have recommended, but it should not severely interfere with the discharge of your duties.@@"
<<elseif $scene.makeup == "sissy_doll">>
Examining your doll-like countenance, her lips twitch with the hint of a smile.<br>
<br>
"@@.npc_manager;Ah, my sweet <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, always looking so cute, you really are becoming my lovely doll...@@"
<<elseif $scene.makeup == "moviestar">>
Examining your head-turning, expert makeup she nods in approval.<br>
<br>
"@@.npc_manager;Some might say that this sort of thing was too much for the office, but I... well, I just love to see a <<if $fetish.sissy>>SISSI <</if>>Secretary who strives to be the very best in all things. Keep up the good work!@@"<br>
<<else>>
Looking at your face from several angles she finally shakes her head in disapproval.<br>
<br>
"@@.npc_manager;No, this will not do at all. You have such a cute face, all you need is the proper makeup to really bring your natural femininity to the fore. <<if $npc_manager.affection > ($npc_manager.anger + 5)>>You surpass my expectations so often I sometimes forget you are just a beginner<</if>> Your homework assignment — figure out how to apply a more suitably feminine style of makeup like a good girl!@@"
<</if>>
<</if>>
<br><br>
<<if $player.makeup.permanent == "">>
"@@.npc_manager;Of course proper makeup is already part of your routine, but I want you to dedicate yourself even more, maybe make your favourite style permanent so you are never without? In all things I want you to consider your body unto a work of art, to be a beautiful delight to the eyes at all times. Always remember that you are my <<if $fetish.sissy>>SISSI <</if>>Secretary and that is a representative position, after all.@@"
<<else>>
"@@.npc_manager;Permanent makeup, such lovely jewellery... you really are on the road to be a perfectly accessorised <<if $fetish.sissy>>SISSI <</if>>Secretary, which is exactly what such a representative position demands!@@"
<</if>>
<br><br>
<<if $scene.firstTask>>
<<if setup.checkItemOwned("lingerie_store_receipt")>>
"@@.npc_manager;Now then, let us see if you have kept up with your OTHER requirements.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_receipt" "Remember to give her the receipt for the earrings." 60 "<<set $scene.item='hoop_earrings_gold'>>">>]<br>
[<<moveTo "event_manager_daily_check_stage_3" "Proceed to your normal morning inspection." 60>>]
<<else>>
[<<moveTo "event_manager_daily_forgot_receipt" "You are about to strip to your undergarments for your daily inspection, but she pauses, as if remembering something." 60 "<<set $scene.item='hoop_earrings_gold'>>">>]
<</if>>
<<else>>
With a nod and a smile she continues on to your normal inspection.<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 60>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4" "Continue." 60 "<<set $scene.directInspection=true>>">>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: First time showing up to work with bespoke corset
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcTopId">>
<<removeItem $scene.topId true>>
<<set $scene.laced = $player.timebased.tightlacing>>
<<if $scene.laced < 75>>
<<set $player.timebased.tightlacing = 100>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 1>>
<</if>>
<<set $scene.firstTask = $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<if $scene.firstTask>>
<<set $player.flags.uniform_upgrade.aslutStage = 2>>
<<completeTask 'task_uniform_upgrade' $now true>>
<<set _nextDate = setup.setNextDate($now, 14, 0, 0)>>
<<addWorkEvent "aslut_perfect_reminder" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.firstTask>>
<<if setup.daysToDate($now, setup.getTaskDueDate('task_uniform_upgrade')) != 0>>
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office to greet you with a smile. "@@.npc_manager;Hmm, there is something different about your outfit...@@"<br>
<br>
Stepping closer her hands wrap around your waist, caressing the stiff steel bones of your corset through your clothing.
<<else>>
<<if $now.getUTCHours() < 8>>You arrived early, which makes you<<else>>You<</if>> wonder just how long <<=setup.getNpcName('npc_manager', 'formal')>> was waiting as, no sooner have you entered her office's antechamber she appears to ambush you. She has you stand in the middle of her office as she paces a slow circle around you. As if unable to put her finger on what has changed, she makes two passes before smiling and moving closer. Her hands reach out and she grabs your waist, her fingers digging through your clothing to tighten against the stiff steel bones of your corset.
<</if>>
<<else>>
Striding out of her office to begin your inspection, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> attention she pauses for a moment before moving closer, her hands wrapping around your corseted waist.
<</if>>
<br><br>
"@@.npc_manager;Aha! I thought you were looking a bit more curvy.@@"<br>
<br>
You stand helpless as her fingers unbutton your <<=setup.getItemName($scene.topId)>>, peeling it off to reveal the corset and your
<<if !setup.isItemTypeEquipped('bra')>>
<<getWordBreasts>>
<<else>>
<<=setup.getItemTypeName('bra')>>
<</if>>
underneath.<br>
<br>
"@@.npc_manager;Oh, very chic, and fantastic craftsmanship. This is exactly the kind of thing to take a burgeoning <<if $fetish.sissy>>sissy<<else>>girl<</if>> from womanly to wow.@@"<br>
<br>
<<if setup.getTotalValue("feminization") < 10>>
<span id ="thoughtFade">
<<fadeout 5s 5s>>
<<printThought 'But what if I do not want to be womanly?'>>
<</fadeout>>
</span>
<<timed 10s>>
<<replace "#thoughtFade">>
<<fadein 5s>>
<<printThought "I want to be womanly." 40>>
<</fadein>>
<</replace>>
<</timed>>
<br><br>
<</if>>
<<if $scene.laced > 75>>
Tossing your <<=setup.getItemName($scene.topId)>> to the side, she circles behind and runs her fingers down your spine and then over the neatly, and fully, laced corset back.<br>
<br>
"@@.npc_manager;Very good, <<=$player.first_name>>. Most first-timers stop lacing partway, leaving something ugly and only barely helpful. You, on the other hand, have once again proven what a good, overachieving <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are! I am so glad to have been assigned you as my secretary.@@"<br>
<br>
<<printThought "Assigned? I thought she chose me?">> /* foreshadowing! */
<<else>>
<<if $scene.laced > 25>>
Removing your <<=setup.getItemName($scene.topId)>> she circles around behind. Even without seeing her you can sense her shaking her head in dismay.<br>
<br>
"@@.npc_manager;I suppose it is all I could have expected from a novice, and at least you tried to lace it more than the minimum. Lesson time: a corset works best, and looks best, when it is laced ALL the way down, and my <<if $fetish.sissy>>SISSI <</if>>Secretary should always strive for the best. Turn around.@@"<br>
<br>
You feel her untying the corset, the garment relaxing to give your body a momentary reprieve as she resets things.<br>
<br>
"@@.npc_manager;Now then. Show me how to do it PROPERLY.@@"
<<else>>
She peels off your <<=setup.getItemName($scene.topId)>> and circles around behind.<br>
<br>
"@@.npc_manager;Oh no, this will not do at all!@@"<br>
<br>
You can feel her fingernail running from your neck down your spine, gently scratching your skin in between the wide-open laces in the rear of the corset.<br>
<br>
"@@.npc_manager;A proper corset should be laced until the back is touching all the way down — that is how it does the most good!@@"<br>
<br>
You feel her untying things, the barely laced corset soon only held up by resting on your hips.<br>
<br>
"@@.npc_manager;No, no, this will not do at all, here, try again.@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> presses the laces into your hands and waits as you attempt to pull them tighter.<br>
<br>
<<if setup.getTotalValue("strength") >= 10>>
It takes a bit of trial and error but, aided by her instruction, you get the hang of how to pull symmetrically without releasing slack. The work you've put in at the gym pays off as the corset steadily tightens around you.
<<elseif setup.getTotalValue("strength") >= 5>>
Even with her advice you're only able to get about halfway before your strength fails you and the laces just won't budge.<br>
<br>
Obviously frustrated she takes the laces from you and gives a mighty yank. Air is forced out of your lungs in a great whoosh, the strength she so casually brings to bear a little scary. Feeling almost cut in half you think it's over only for the garment to tighten even further as she pulls out slack you didn't even think was there.
<<else>>
You strain as hard as you can, but even with her giving technique suggestions you just don't have the strength to tighten the corset more than a couple centimetres or so.<br>
<br>
Taking the laces in hand <<=setup.getNpcName('npc_manager', 'formal')>> sets to work. Air is forced out of your lungs in a great whoosh, the strength she so casually brings to bear a little scary. Feeling almost cut in half you think it's over only for the garment to tighten further as she pulls out slack you didn't even think was there.
<</if>>
<br><br>
By the end you are forced to take short, shallow breaths as <<=setup.getNpcName('npc_manager', 'formal')>> is good to her word, the back closing up and the corset tied off tight.<br>
<br>
Reaching around behind to run your fingers over the laces you are amazed at how the multi-inch gap has disappeared.<br>
<br>
<<printThought "My waist must look so tiny now...">>
<</if>>
<br><br>
Her hands back around your now oh-so-tiny waist <<=setup.getNpcName('npc_manager', 'formal')>> stands behind your back as you turn as one to face a mirror.<br>
<br>
"@@.npc_manager;Now THOSE are some proper <<if $fetish.sissy>>sissy<<else>>feminine<</if>> curves.@@"<br>
<br>
<<printThought "I look like something out of a Victorian novel...">><br>
<br>
"@@.npc_manager;I expect you to lace it like this whenever you wear a corset, which I hope you do often. If you find yourself struggling, I will assist you in lacing it down in the morning... for a price.@@"<br>
<br>
<<if $scene.firstTask>>
<<if setup.checkItemOwned("lingerie_store_receipt")>>
"@@.npc_manager;Now then, let us see how you are doing on your OTHER requirements.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_receipt" "Remember to give her the receipt for the corset." 60 "<<set $scene.item='satin_corset_pink'>>">>]<br>
[<<moveTo "event_manager_daily_check_stage_3" "Proceed to your normal morning inspection." 60 "<<wearItem $scene.topId true>>">>]
<<else>>
[<<moveTo "event_manager_daily_forgot_receipt" "You expect her to move on to your daily undergarments inspection, but she pauses, as if remembering something..." 60 "<<set $scene.item='satin_corset_pink'>>">>]
<</if>>
<<else>>
"@@.npc_manager;Now, if you would put your top back on, we may proceed with your morning inspection from the beginning.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 60 "<<wearItem $scene.topId true>>">>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4" "Continue." 60 "<<wearItem $scene.topId true>>">>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: First time showing up to work with bespoke thigh highs
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<set _nextDate = setup.setNextDate($now, 0, 23, 50)>>
<<addTaskById 'bed_heels_photo' _nextDate>>
<<set $scene.firstTask = $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<set $scene.firstAslutHeels = true>>
<<if $scene.firstTask>>
<<set $player.flags.uniform_upgrade.aslutStage = 2>>
<<completeTask 'task_uniform_upgrade' $now true>>
<<set _nextDate = setup.setNextDate($now, 14, 0, 0)>>
<<addWorkEvent "aslut_perfect_reminder" _nextDate>>
<</if>>
<<if !State.hasPlayed("event_lunch_heels_training_1_alt")>>
<<addEvent 'heels_training_aslut'>>
<</if>>
<<if $workEvents.hasOwnProperty("admin_morning_confrontation")>>
<<set $workEvents.admin_morning_confrontation.trigger.lastDate = setup.setNextDate($now, 1, 9, 0)>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.firstTask>>
<<if setup.daysToDate($now, setup.getTaskDueDate('task_uniform_upgrade')) != 0>>
Stepping out of her office, <<=setup.getNpcName('npc_manager', 'formal')>> pauses, her gaze moving towards your shiny boots as she makes her approach. "@@.npc_manager;Oh yes, look at my eager A-SLUT, and ahead of schedule!@@"
<<else>>
<<if $now.getUTCHours() < 8>>Despite arriving early, no<<else>>No<</if>> sooner have you stepped foot into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office when she appears and has you stand in the middle of her outer lair as she paces a slow circle around you.
<</if>>
<<else>>
Stepping out of her office, <<=setup.getNpcName('npc_manager', 'formal')>> pauses, her gaze moving towards your shiny boots as she makes her approach.
<</if>>
Like a hungry beast, her gaze glides down your body to trace from your pointed toes around and up your steep heels and past your knees
<<if $player.body_ref.penis>>
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>
to just under your tight skirt. Lifting your skirt to inspect she nods at
<<else>>
and partway up your thighs. Slightly bulging your pants above is
<</if>>
your <<if setup.getItemTypeName("cage") != "">>imprisoned crotch<<else>><<getWordMyPenis>><</if>>.
<<else>>
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>
and over the smooth lines of your tight skirt.
<<else>>
and over the smooth lines of your smart pants.
<</if>>
<</if>>
Ending her loop, she comes to a stop standing in front of you. You are a little surprised to find that in these heels you're actually the same height as her.
<<if setup.getTotalValue("submission") >= 10>>
On submissive reflex you tilt your head obediently downward.
<<else>>
Despite your even height, however, she still manages to appear to look down on you.
<</if>>
<br><br>
"@@.npc_manager;Very sexy" she states with a nod. "Tight, pink, steep and slutty. What more could an aspiring bimbo desire? This is exactly the sort of thing an A-SLUT stipend was meant to be spent on.@@"<br>
<br>
<<printThought "Oh thank <<getWordGod>>.<<if setup.getTotalValue('submission') >= 10>> I'm so glad <<=setup.getNpcName('npc_manager', 'formal')>> approves of these!<</if>>">>
<br><br>
Stepping back, her initial pleasure turns into a slight frown as you wobble unsteadily. "@@.npc_manager;Hmm, walk to the door and back.@@"<br>
<br>
<<if setup.getTotalValue("heels") >= setup.getItemObj("platform_wedge_heels_pink").heels.difficulty>>
You turn sharply to obey, walking comfortably and smoothly atop the steep heels thanks to your many hours of practice. Despite your skill, however, there is no denying that your current footwear are quite a challenge and you make a tiny mistake towards the end, one foot landing just a bit off and causing your ankle to wobble as you catch yourself.<br>
<br>
"@@.npc_manager;Hmm, so close and yet... no, I believe to truly put you over the top to high heel perfection some final, severe measures must be taken.@@"
<<elseif setup.getTotalValue("heels") < 5>>
You try to obey, wobbling and swaying and almost falling the whole time, forced to steady yourself on the doorknob as you almost take a tumble in the process of making your turn. Looking back towards <<=setup.getNpcName('npc_manager', 'formal')>>, you turn beet red with embarrassment. Your feet were aching just leaving your apartment and by now your calves are on fire, every impossible step shooting pain from your toes all the way up your legs.<br>
<br>
"@@.npc_manager;No, that will not do at all. I love the heels, but the effect is ruined if you can barely stand in them! A <<if $fetish.sissy>>SISSI<<else>>girl<</if>> is meant to be dainty and graceful, not... clumsy and awkward! No, no no, being a <<if $fetish.sissy>>SISSI <</if>>Secretary means more than being on your back or knees, I cannot have my secretary looking like this!@@"
<<else>>
Turning as instructed, you carefully walk to the door and back. Your time spent practicing in heels certainly helps, but the thick, plush carpet makes for a bit of a challenge in your current steep footwear, resulting in not the most even of gaits.<br>
<br>
"@@.npc_manager;Hmm, you do not embarrass yourself in those boots but... well, there is yet work to be done.@@"
<</if>>
<br><br>
<<printThought "Oh shit, is she not going to count this as an upgrade?">><br>
<br>
"@@.npc_manager;Do not get me wrong, I admire the effort, and I will count it as you technically fulfilling the requirement to purchase a uniform upgrade, but until you learn to walk properly in them I do not want them in my sight!@@"<br>
<br>
<<if setup.getTotalValue('feminization') >= 10 && setup.getTotalValue('submission') > 10 && setup.getTotalValue('bimbofication') > 10>>
<<printThought "But they're so sexy! why can't I just stay on my knees?">><br>
<br>
<</if>>
"@@.npc_manager;Tell you what, so your purchase does not go to waste, I have a suggestion. Go to the shoe store in the mall and ask for a pair of bed heels. They keep them in the back, but they will know what you are talking about. Tell them you need a nice, secure pair. Once you have them remember to sleep in them every night.@@"<br>
<br>
"@@.npc_manager;Actually, you know what? I will help you out. Send me a picture tonight before you tuck in. It may be a little outside the manager employee relationship, but I am willing to take the time to further aid your development, besides, I definitely want to see your cute feet in bed heels for the first time! Wear them every night and before long your calves will stretch and your toes will adjust and you will be able to strut around in those hot boots anywhere!@@"<br>
<br>
<<if $scene.firstTask>>
<<if setup.checkItemOwned("lingerie_store_receipt")>>
"@@.npc_manager;Now then, let us see how you are doing on your OTHER requirements.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_receipt" "Remember to give her the receipt for the boots." 60 "<<set $scene.item='thigh_highs_pink'>>">>]<br>
[<<moveTo "event_manager_daily_check_stage_3" "Proceed to your normal morning inspection." 60>>]
<<else>>
[<<moveTo "event_manager_daily_forgot_receipt" "You expect her to move on to your daily undergarments inspection but she pauses, as if remembering something..." 60 "<<set $scene.item='thigh_highs_pink'>>">>]
<</if>>
<<else>>
With a nod and a smile, she continues on to your normal inspection.<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 60>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4" "Continue." 60>>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: not at office for bespoke
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcAtOffice">>
<<if $scene.at_office || $scene.elevator || ["company_lobby"].includes($player.llocation)>>
<<initRoom>>
<<moveTo "event_manager_check_uniform_upgrade">>
<<else>>
<<include uniformUpgradeTask>>
<<applyExperience 'submission' 3 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<<initRoom>>
<<moveTo $currentTasks.manager_morning_inspection_task.failure.trigger_event>>
<</if>>
<</if>>/*#
#desc: not wearing bespoke item when uniform upgrade task is due
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcAtOffice">>
<<if $scene.uniform_upgrade != "" && ($scene.at_office || $scene.elevator || ["company_lobby"].includes($player.llocation))>>
<<initRoom>>
<<moveTo "event_manager_check_uniform_upgrade">>
<<else>>
<<include "uniformUpgradeTask">>
<<applyExperience 'submission' 3 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> almost greets you at the door, though after a single cursory glance her gaze narrows in obvious annoyance.<br>
<br>
"@@.npc_manager;Did you forget what you were supposed to do for today?@@"<br>
<br>
<<printThought 'Oh crap, I was supposed to wear a new "upgrade" for my uniform to work this morning!'>><br>
<br>
"@@.npc_manager;Did you think just because you are cute I would not punish you? You know better than that! I expected even more from you now that you are striving to be A-SLUT!@@"<br>
<br>
With her standing in front of you with fire in her eyes you are still surprised by a blur and her hand impacts your cheek. The sound of flesh on flesh echoes through the office, your face stinging from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> harsh slap.<br>
<br>
"@@.npc_manager;What do you think of that, you stupid girl? You come in, trying to outsmart me and when I respond with kindness, cash and encouragement what is your response? You act the disobedient bitch! Do you know what happens to uncompliant whores? They get slapped.@@"<br>
<br>
<<if setup.getTotalValue("bdsm") >= 10>>
Even as the pain blooms across your rapidly-reddening cheek it is echoed with pleasure, your arousal rising in response to your Mistress' discipline.
<<if setup.getTotalValue("submission") >= 10>>
Your heart aflutter with <<if $fetish.sissy>>sissy<<else>>girly<</if>> obedience you curtsy.<br>
<br>
"@@.pc;I'm so sorry, <<=setup.getNpcName('npc_manager', 'formal')>>. I promise to do better if you give me another chance.@@" You beg.<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> expression softens in response to your obsequious groveling. She reaches out to caress your pained cheek and your nuzzle into her hand in response.<br>
<br>
"@@.npc_manager;Oh, you are just too. Cute! I might regret it, but I will give you another week to figure out your uniform, but no more slacking now!@@"<br>
<br>
You give another curtsy, grateful to get out without further punishment; even if you enjoyed the feel of the slap disappointing your <<=setup.getNpcName('npc_manager', 'title')>> is a pain for which there is no balm.
<<else>>
Cowering you look back with fear at <<=setup.getNpcName('npc_manager', 'formal')>>. Her face is stern for several tense moments before slowly, but only slightly, softening.<br>
<br>
"@@.npc_manager;Now it is against my better judgment, but I am feeling merciful today. I will give you another week to sort things out — make sure you show up next Monday with your new uniform upgrade!@@"<br>
<br>
Still cowering, you nod quickly, not wanting to incur her further wrath.
<</if>>
<<elseif setup.getTotalValue("submission") >= 10>>
Wincing in pain you straighten and then curtsy before your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.pc;I'm sorry. Please give me another chance and I promise to do as instructed.@@" You meekly beg.<br>
<br>
Her face is stern for several tense moments, her arm still cocked for another blow. Finally, to your great relief, she lowers her hand.<br>
<br>
"@@.npc_manager;I suppose you are contrite, and I am feeling a touch merciful today. I will give you another week to sort things out, Make sure you show up next Monday with your new uniform upgrade!@@"
<<else>>
Surprised by the blow and in very much pain it's all you can do not to fall over as you stare back at your manager fearfully.<br>
<br>
Her expression of anger seems to catch, as if realising she may have pushed you too far. Slowly her raised hand comes down without striking you again.<br>
<br>
"@@.npc_manager;A failure like this does not even deserve my time to punish you. I will give you another week to rectify the situation. You are on thin ice right now, so you should be sure to really impress me with your purchase!@@"<br>
<br>
Still cowering you nod quickly before she changes her mind or strikes you again.
<</if>>
<br><br>
<<printThought "That was a close one, I should make sure not to fail <<=setup.getNpcName('npc_manager', 'formal')>> again.">><br>
<br>
"@@.npc_manager;Now then, time to see if you at least managed your normal tasks. Let us continue with the normal inspection.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 60>>]
</div>/*#
#desc: manager checks uniform receipt
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.overage = Math.floor((setup.getItemObj($scene.item).stipend_multiplier-1)*$npc_manager.flags.uniform_upgrade.stipend_amt)>> /% all items are definitionally as or more expensive than the stipend, and at this point it's only possible to have bought one of them %/
<<deleteItem 'lingerie_store_receipt'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You pause, producing the receipt from your purchase and handing it to <<=setup.getNpcName('npc_manager', 'formal')>>. Taking the slip of paper in hand she glances at it before looking up with a smile.<br>
<br>
"@@.npc_manager;What a good A-SLUT you are! You remembered to bring me the receipt for your purchase.@@"<br>
<br>
<<if $scene.overage == 0>>
"@@.npc_manager;Hmm, it looks like you managed to find something that cost precisely what you were allotted, how fortuitous! Thank you for obeying my instructions to the letter, but now it is time for your daily inspection!@@"<br>
<br>
<<if $scene.item=='satin_corset_pink'>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120 "<<wearItem $scene.topId true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120>>]
<</if>>
<<else>>
"@@.npc_manager;Hmm, according to this your new item cost more than your stipend! I guess you dipped into your savings?@@" her tone is neutral, and you wonder if you made a mistake. She never said anything about staying within budget, but with her, well... you can never be sure when some new rule might pop into existence.<br>
<br>
<<printThought "Did I do something wrong? I feel like my whole life is a trap!">>
<br><br>
"@@.npc_manager;Good <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Despite the added bonuses, the real key to the A-SLUT programme is that you only get out of it what you put into yourself. Into developing yourself, that is. Taking initiative like this, well, that definitely deserves a reward!@@"<br>
<br>
Returning to her desk she pulls out some credits, holding out <<=Math.floor($scene.overage*2)>> towards you.<br>
<br>
"@@.npc_manager;Here, a little bit extra in compensation for your excellent work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_receipt_accept" "Thank her for the money." 60 "<<set $scene.bonus=2*$scene.overage>>">>]<br>
[<<moveTo "event_manager_daily_check_receipt_reject" "Remember what happened last time and check if there are any strings attached." 60 "<<set $scene.bonus=2*$scene.overage>>">>]
<</if>>
</div>/*#
#desc: accept receipt reimbursement for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits $scene.bonus>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for the bonus.
<<switch setup.getMaxStat(["feminization", "bimbofication", "submission"])>>
<<case "feminization">>
You flash her your cutest smile and state that you will use it to further expand your wardrobe.
<<case "bimbo">>
You blow her a kiss and declaring you'll put it towards something else to make her proud.
<<case "submission">>
You drop into a submissive curtsy and thank her for the gift and promise to spend it well.
<<default>>
ERROR: should never happen
<</switch>>
<br><br>
"@@.npc_manager;Now that we are all squared up, I think it is time for your inspection.@@"<br>
<br>
<<if $scene.item=='satin_corset_pink'>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120 "<<wearItem $scene.topId true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120>>]
<</if>>
</div>/*#
#desc: attempt to turn down reimbursement for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits $scene.bonus>>
<<applyExperience 'smart' 13 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Mindful of how all of this started with you falling into a trap accepting "free" money, you hesitate, unsure if it's wise to take the handful of cash.<br>
<br>
Her lips turn downward into a frown. "@@.npc_manager;Really, you do not trust me? Fine@@"<br>
<br>
Stepping closer, <<=setup.getNpcName('npc_manager', 'formal')>>
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>
reaches under your skirt and
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>grabs your chastity cage<<else>>places her hand against the rigid shield of your chastity belt<</if>><<if setup.checkItemTypeWorn("panties")>> through your panties<</if>>.
<<elseif $player.body_ref.penis>>
squeezes your <<getWordMyPenis>>.
<<else>>
places her hand over your crotch.
<</if>>
<br><br>
"@@.npc_manager;I solemnly swear on your cute <<if $player.body_ref.penis>><<if $fetish.sissy>>sissy <</if>>clitty<<else>>font of femininity<</if>> that this money is a gift from me to <<=$player.first_name>> and comes with no strings attached. It is merely a token of gratitude for my <<if $fetish.sissy>>SISSI <</if>>Secretary's adorable obedience.@@"<br>
<br>
<<if $player.body_ref.penis>>
Your <<getWordMyPenis>> strains<<if setup.checkItemTypeWorn("cage")>> against its prison in excitement, but the stout restraint holds as always<<else>>, but <<=setup.getNpcName("npc_manager","formal")>> squeezes a little tighter and a sense of calm control runs through your body<</if>>.
<<else>>
A few drips escape your belt to run down your leg in testament to your excitement.
<</if>>
Obediently you accept the offered money and tuck it away.<br>
<br>
Releasing the grasp on your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>> <<=setup.getNpcName('npc_manager', 'formal')>> steps back.<br>
<br>
"@@.npc_manager;Now then, I believe it is time for your inspection?@@"<br>
<br>
<<if $scene.item=='satin_corset_pink'>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120 "<<wearItem $scene.topId true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3" "Continue." 120>>]
<</if>>
</div>/*#
#desc: forgot to bring receipt for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Well? Where is the receipt for your purchase?@@"<br>
<br>
<<if setup.checkItemInInventory('lingerie_store_receipt')>>
[<<moveTo "event_manager_daily_check_receipt" "Reminded of your duty you quickly reach into your pocket." 60>>]
<<else>>
<<if setup.checkItemOwned('lingerie_store_receipt')>>
Your heart sinks as you have foolishly left the receipt at home.<br>
<br>
"@@.npc_manager;So forgetful! I know they gave you one and you misplaced it so quickly! What if I had not approved of your purchase and told you to return it? You would have been out your A-SLUT stipend with no way to recover, but to sell your cute ass on the street!@@"
<<else>>
In slight confusion you confess that you did not get a receipt.<br>
<br>
"@@.npc_manager;Tsk, tsk. How are we to manage expense reporting without receipts? What if I had not approved of your purchase and told you to return it? You would have been out your A-SLUT stipend with no way to recover, but to sell your cute ass on the street!@@"
<</if>>
<br><br>
<<if setup.getTotalValue("whoring") >= 5>>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought "Mmmm, I'd love to have <<=setup.getNpcName('npc_manager', 'formal')>> as my pimp...">>
<<else>>
<<printThought "How is that different from what I normally do?">>
<</if>>
<<else>>
<<printThought "Wait, what?">>
<</if>>
<br><br>
"@@.npc_manager;I really should punish you for your error but... well, I am still too enamoured by your purchase. You get a reprieve, this time, but do not construe that to mean I am going soft on you! Now, we need to get to your inspection or we will never get any work done! Do not think my momentary lenience will extend to anything else.@@"<br>
<br>
<<if $scene.item=='satin_corset_pink'>>
[<<moveTo "event_manager_daily_check_stage_3" "Thank her profusely for the kindness." 120 "<<wearItem $scene.topId true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3" "Thank her profusely for the kindness." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: finish a-slut phase 1
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.uniform_upgrade.aslutStage = 4>>
<<registerProgressionEvent>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.pushUnique('thigh_highs')>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if $currentTasks.hasOwnProperty('aslut_1_final')>>
<<completeTask 'aslut_1_final' $now true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if !$scene.skipInspection>>
Watching you dress <<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile of approval slowly grows until you find yourself blushing at the force of her beaming pride.<br>
<br>
<</if>>
"@@.npc_manager;Wow, you finally did it. A well framed, feminine face, a narrow waist and perfect balanced on those heels. Nobody would suspect that you were anything other than my cute, submissive female secretary. I know how hard you have worked to get to this point, and I am sure we both know it was worth every punishment and struggle. Congratulations once again on exceeding my expectations, you are not just in A-SLUT you are A-SLUT... or at least the ideal it represents. Do not mistake this for your journey being over, in some ways it only gets harder from here. I can say with confidence that, with my continued guidance, you will rise to every challenge.@@"<br>
<br>
You tremble slightly at the compliment, unable to think of anything to do save curtsy and softly reply with "@@.pc;Thank you, <<=setup.getNpcName('npc_manager', 'title')>>.@@"<br>
<br>
Looking back up, you can tell that you made the correct choice; she looks more proud than you have ever seen before, her expression somehow both swoon inducing and a little scary.<br>
<br>
She sighs in contentment. "@@.npc_manager;So lovely. And when I think of what is to come...@@" She shakes her head. "@@.npc_manager;No matter, that is the future, for now... well, you had better get to work, and I as well, lest I either rip those clothes off to savour the sweetness inside or just stand here admiring our wonderful work.@@"<br>
<br>
Still blushing, you watch as she leaves before returning to your desk.<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start working." 360>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Start working." 360>>]
<<default>>
ERROR: unexpected stage <<=$npc_manager.stage>>
<</switch>>
</div>/*#
#desc: ask about a "uniform upgrade" at the lingerie shop
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
Mindful of the secrecy of your contract, you circuitously explain that you're looking to take your outfit "@@.pc;To the next level@@" to impress a "@@.pc;Special someone.@@"<br>
<br>
"@@.npc_shopkeeper;Ah! Young love! perhaps the only thing more beautiful is the things I sell. I have exactly what you need to impress your special friend — not something off the rack they may have seen before, but something as unique and wonderful as your devotion to them from our bespoke section. Come with me.@@"<br>
<br>
<<if setup.getTotalValue("feminization") > 7>>
<<printThought "Ooooh, this sounds fun!">><br>
<br>
<</if>>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Follow her." 60>>]
</div>/*#
#desc: ask about a uniform upgrade as "something for a friend" at the lingerie shop
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
You get the feeling <<=setup.getNpcName('npc_shopkeeper', 'first')>> doesn't believe your story about buying something for your girlfriend
<<if setup.analyzeWornTags(['female','male','unisex']) == 'female'>>
especially considering you're dressed like a
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<if $fetish.sissy>>sissy <</if>>maid
<<elseif setup.checkVisibleClothingTag('slutty') > 50>>
slut
<<elseif setup.checkVisibleClothingTag('sissy') > 50 && $fetish.sissy>>
sissy
<<else>>
girl
<</if>>
<</if>> at the moment. Still she indulges your little lie as you circuitously explain your "situation." <br>
<br>
After you have finished laying out what sort of thing you're thinking of she smiles.<br>
<br>
"@@.npc_shopkeeper;I think what you need is something from our bespoke selection, come with me.@@"<br>
<br>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Follow her." 60>>]
</div>/*#
#desc: shopping for "bespoke" items for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$npc_shopkeeper.profile>>
<<set $npc_shopkeeper.profile = true>>
<<set $scene.bespokeCount = 0>>
<<set $scene.bespokeAvailable = true>>
<<for _i range $npc_shopkeeper.bespokeItems>>
<<set _box = _i + "_box">>
<<if !setup.checkItemOwned(_i) && !setup.checkItemOwned(_box)>>
<<set $scene.bespokeCount += 1>>
<<elseif !$npc_manager.flags.uniform_upgrade.item_comments[_i]>>
<<set $scene.bespokeAvailable = false>>
<<break>>
<</if>>
<</for>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
<<if $scene.bespokeAvailable>>
<<if $scene.bespokeCount == 0>>
The shopkeeper shakes her head. "@@.npc_shopkeeper;You already own all the bespoke items I had on hand. Check back in the future. I am always looking for new, hot things to offer our most valued customers.@@"<br>
<br>
<<else>>
<<if $scene.first>>
You approach the shopkeeper and she looks you over with a grin. "@@.npc_shopkeeper;Ready to stop sulking around, hmm? The name is <<=setup.getNpcName('npc_shopkeeper', 'first')>> and I own this FINE establishment. I've seen you around before, though you always seem to be in and out, never stopping to try things on... anyway, what can I do for you today?@@"<br>
<br>
<</if>>
You outline the situation and the shopkeeper nods. "@@.npc_shopkeeper;Come with me,@@" she says with a wink as she leads you to a back room. <<=setup.getNpcName('npc_shopkeeper', 'first')>> eyes you severely for a few moments before fetching <<=$scene.bespokeCount>> boxes of quite different sizes.<br>
<br>
"@@.npc_shopkeeper;Here you go, I think any, or maybe all! of these three items would be just perfect for your needs.@@"<br>
<br>
<<for _itemId range $npc_shopkeeper.bespokeItems>>
<<set _item = setup.getItemObj(_itemId)>>
<<set _packageId = _itemId + "_box">>
<<if !setup.checkItemOwned(_itemId) && !setup.checkItemOwned(_packageId)>>
<<set _setItem = '<<set $scene.itemId="' + _itemId + '">>'>>
[<<moveTo "room_mall_lingerie_shop_bespoke_desc" "Examine the contents of the <<=setup.getItemName(_packageId)>>." 120 _setItem>>]<br>
<<if $player.money.total >= (_item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt)>>
<<set _tmpSetStr = "<<set $scene.item=_item>><<set $scene.itemId='" + _itemId +"'>><<set $scene.item_package='" + _packageId + "'>>">>
[<<moveTo "room_mall_lingerie_shop_bespoke_purchase" "Purchase <<=_item.name>> for <<=_item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt>> credits." 120 _tmpSetStr>>]
<<else>>
[@@.link_locked;You cannot afford <<=_item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt>> credits for <<=_item.name>>.@@]
<</if>>
<<else>>
[@@.link_locked;You already purchased <<=_item.name>>.@@]
<</if>>
<br>
<</for>>
<</if>>
<<if (setup.checkItemOwned("hoop_earrings_gold_box") || setup.checkItemOwned("thigh_highs_pink_box") || setup.checkItemOwned("satin_corset_pink_box"))>>
You should head home with your purchases rather than lug the boxes around.<br>
<br>
[<<moveTo "event_mall_lingerie_shop_bespoke_purchase_leave" "Take your purchase home." 60>>]
<<else>>
[<<moveTo "room_mall_lingerie_shop" "Return to the main store." 60>>]<br>
[<<moveTo "room_mall_interior" "Leave the store." 60>>]
<</if>>
<<else>>
<<printThought 'I should really wait to see what <<=setup.getNpcName("npc_manager", "formal")>> thinks of what I have already purchased before I splurge on anything else...'>><br>
<br>
[<<moveTo "room_mall_lingerie_shop" "Return to the main store." 60>>]<br>
[<<moveTo "room_mall_interior" "Leave the store." 60>>]
<</if>>
</div>/*#
#desc: examine a bespoke item for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.item = setup.getItemObj($scene.itemId)>>
<<set $scene.item.price = $scene.item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt>>
<<set $scene.item.inspected = true>>
<<set $scene.item_package = $scene.itemId + "_box">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
You carefully open the <<=setup.getItemName($scene.item_package)>> to find a <<if $scene.itemId == "hoop_earrings_gold">>pair of <</if>><<=$scene.item.name>>. Looking up, you find <<=setup.getNpcName('npc_shopkeeper', 'first')>> smiling back at you with obvious pride.<br>
<br>
"@@.npc_shopkeeper;<<=$scene.item.shopkeep_desc>> will cost you a mere <<=setup.numberInWords($scene.item.price)>> credits. A true bargain for something of this beauty and craftsmanship.@@"<br>
<br>
<<printThought "<<=$scene.item.browse_comment>>">><br>
<br>
<<if $player.money.total >= $scene.item.price>>
[<<moveTo "room_mall_lingerie_shop_bespoke_purchase" "Buy it." 120>>]<br>
<<else>>
[@@.link_locked;Sadly, you can't afford <<=$scene.item.name>>.@@]<br>
<</if>>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Look at something else." 60>>]
</div>/*#
#desc: purchase a bespoke item for uniform upgrade
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.item = setup.getItemObj($scene.itemId)>>
<<set $scene.item.price = $scene.item.stipend_multiplier * $npc_manager.flags.uniform_upgrade.stipend_amt>>
<<addCredits `-($scene.item.price)`>>
<<addItem $scene.item_package>>
<<if !$currentTasks['task_uniform_upgrade'].finished>>
<<addItem "lingerie_store_receipt">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_lingerie_shop.png" setup.charImage("npc_shopkeeper")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_shopkeeper', 'first')>> beams at your selection. "@@.npc_shopkeeper;Excellent choice, these are going to send all the right messages if you know what I'm saying.@@"<br>
<br>
You merely nod as she boxes things up for you,
<<if setup.getTotalValue("feminization") >= 10>>
already excited at the prospect of taking your new purchase home to try.
<<else>>
still a bit scared at the prospect of wearing what you just bought.
<</if>>
<br><br>
<<if !$currentTasks['task_uniform_upgrade'].finished>>
As you finish, you remember to ask <<=setup.getNpcName('npc_shopkeeper', 'first')>> for a receipt. She prints it off with a smile.<br>
<br>
A sense of relief flows through you as you feel certain this will satisfy <<=setup.getNpcName("npc_manager", "formal")>> as an "upgrade." <<if $scene.item.stipend_multiplier > 1>>If only you had not needed to chip in your own money on top of the stipend to pay for it.<</if>><br>
<br>
<<else>>
[<<moveTo "room_mall_lingerie_shop_bespoke" "Look at something else." 60>>]<br>
<</if>>
[<<moveTo "event_mall_lingerie_shop_bespoke_purchase_leave" "Take your purchase home." 60>>]
</div>/*#
#desc: arrive home with bespoke purchase
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png">>
<div id="invframe" class="scrolltext">
You hurry home, hoping nobody you recognise sees you carrying the large bag with "I'm a Happy Girl Because I Shop at <<printShopName 'mall_lingerie_shop'>>!" printed on the side.<br>
<br>
[<<moveTo "room_livingroom" "Once home you sit down on the couch and consider your next move." 60>>]
</div>/*#
#desc: Tighten your corset during lunch
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("strength") <= 5>>
<<set $player.timebased.tightlacing = $player.timebased.tightlacing * .75>>
<<else>>
<<set $player.timebased.tightlacing = 100>>
<</if>>
<<applyExperience 'strength' 10 'almost' $ALONE>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
Running your fingers along the back of your corset your suspicions are confirmed; over the course of the morning the laces have loosened just enough that the once-smooth closed line formed by the two sides meeting snugly has turned jagged with a couple of pinkie-width gaps. Taking what passes for a deep breath in the still-constrictive garment you attempt to address this problem.<br>
<br>
<<if setup.getTotalValue("strength") <= 5>>
Even the slight distance you need to tighten is too far for your weak arms. In fact, your attempts only make it worse as your body rebels, forcing the corset open wider before you can stop things. Though you are loathe to interrupt her there is really no choice but to ask for help from <<=setup.getNpcName('npc_manager', 'formal')>> if you want to have your corset "properly" laced for the afternoon.<br>
<br>
[<<moveTo "event_work_lunch_corset_help" 'Ask <<=setup.getNpcName("npc_manager", "formal")>> to re-lace you.' 120>>]<br>
[<<moveTo room_office_sissy_secretary_work_lunchbreak "Don't bother your boss." 60>>]
<<elseif setup.getTotalValue("strength") < 10>>
Though you aren't able to lace your corset this far on your own you actually manage to re-close it, a burst of energy combined with the lingering effects of being tightly compressed all morning just enough for you to manage getting that perfectly closed nonexistent reargap without assistance.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Running your fingers over the tight laces with satisfaction you check how much longer you have in your lunch break." 300>>]
<<else>>
It is no trouble for you to pull the corset to close the small gap. You imagine hearing the back panels of the corset slamming shut, the renewed pressure crushing your body in a now-familiar, almost comforting, manner.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Running your fingers over the tight laces with satisfaction you check how much longer you have in your lunch break." 240>>]
<</if>>
</div>/*#
#desc: visit manager for help tightening your corset during lunch
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.foodDelivery.right>>
<<include checkFoodDelivery>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Knocking on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> door you peek in to find her busy, as always.<br>
<br>
<<switch $scene.foodDelivery.outcome>>
<<case 'eat' 'right'>>
Finishing up her lunch she looks up from her meal to meet your gaze.<br>
<br>
"@@.npc_manager;Yes, <<=$player.first_name>>?@@"<br>
<br>
[<<moveTo "event_work_lunch_corset_help_2" "Ask her for help with your corset." 60>>]<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Apologise for the interruption and retreat." 60>>]
<<case 'disciplinarymeasure' 'drop'>>
She glances up, clearly annoyed at your having mangled her lunch order.<br>
<br>
"@@.npc_manager;What do you want? Did you screw something else up?@@"<br>
<br>
[<<moveTo "event_work_lunch_corset_help_2" "Ask her for help with your corset." 60>>]<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Apologise and retreat." 60>>]
<<case "">>
She glances up as you enter, her gaze narrowing when she notices that you are not carrying a food container. "@@.npc_manager_dom;Where is my lunch?!@@"<br>
<br>
"@@.pc;Coming soon!@@" you yelp as you retreat from her office before you absorb any more of her wrath.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue." 1>>]
<<default>>
ERROR: unexpected food deliver.outcome: <<=$scene.foodDelivery.outcome>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue." 1>>]
<</switch>>
</div>/*#
#desc: Ask manager for help tightening your corset at lunch
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.tightlacing = 100>>
<<applyExperience 'submission' 8 'almost' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.foodDelivery.outcome == 'eat'>>
"@@.npc_manager;Of course I will help you lace back up.@@"
<<else>>
"@@.npc_manager;I suppose I can help get you laced back up.@@"
<</if>>
<br><br>
Walking across her office you turn your back and she swiftly exposes and snugs up your corset, giving your prominent hips a gentle pat before lightly swatting your rear.<br>
<br>
"@@.npc_manager;There you go, back to a nice feminine hourglass, but now I think it is time we both returned to our work.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Thank her and leave to finish your lunch break." 120>>]
</div>/*#
#desc: manager punishes your lack of heels by making you spend the morning standing on a book
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shoesId = setup.getItemFromType('shoes')>>
<<removeItem $scene.shoesId true>>
<<set _nextDate = setup.setNextDate($now, 0, 11, 59)>>
<<addEvent 'heels_training_followup' _nextDate>>
<<if $events.hasOwnProperty('holiday_dog_manager')>>
<<removeEvent 'holiday_dog_manager'>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You hand her your shoes as instructed and nervously wait as <<=setup.getNpcName('npc_manager', 'formal')>> moves your chair out of the way and places a thick book on the floor a short distance back from your desk.<br>
<br>
"@@.npc_manager;Come, stand here.@@"<br>
<br>
She points at the book. It seems odd, but question her is probably the last thing you should do. Walking over, you do as she instructs, standing on the book and looking back at her in confusion only for her gaze to narrow in annoyance.<br>
<br>
"@@.npc_manager;No, not like that. Heels on the book, toes on the ground.@@"<br>
<br>
You suddenly understand what's going on — the fat book is a makeshift, and unpadded, facsimile of standing in almost seven centimetre heels. Doing as she says, your feet almost immediately complain,
<<if setup.getTotalValue("submission") >= 10>>
<<if setup.getTotalValue("bdsm") >= 7>>
the ache a constant reminder of your <<=ps(setup.getNpcName('npc_manager', 'title'))>> divine will.
<<else>>
, but you don't even consider moving ad risking punishment.
<</if>>
<<else>>
though you know better by now than to move.
<</if>>
<br><br>
"@@.npc_manager;Good. Now look up there? You see that dot in the corner? That is a camera so I can keep an eye on... disobedient secretaries. If I check and see you not standing as you are now, well... I doubt you want me to come up with something worse, do you?@@"<br>
<br>
You look at the distance between yourself and your computer desk then back at her. "@@.pc;But... how will I work?@@"<br>
<br>
Already walking away, she glances over her shoulder as she opens the door to her inner office.<br>
<br>
"@@.npc_manager;Bend over? You are familiar with that, I believe. Besides, you are the secretary, it is not on me to figure out how you do your job, only confirm that it is completed to my satisfaction.@@"<br>
<br>
Somewhat awkwardly, you lean forward, forced to half-fall the final distance before you're able to support some of your weight with your elbows and awkwardly reach the keyboard.<br>
<br>
"@@.npc_manager;See? That was not so hard... and you do look quite fetching bent over a desk.@@"<br>
<br>
The door to her office closes behind as you blush.<br>
<br>
<<printThought "It is going to be a long morning.">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start your day." 1>>]
</div>/*#
#desc: refuse to do heel training after not texting her pre-sleep selfie
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.seriousoffense = true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You get dressed and slip your heels on defiantly.<br>
<br>
"@@.npc_manager;And just what do you think you are doing, I said to leave your shoes off. I need to punish you for your failure to send me a status picture.@@"<br>
<br>
<<if setup.getTotalValue("submission") < 10>>
<<if setup.getWillpower() > 5>>
<<printThought "It's not right for her to make requirements on my time after hours!">>
<<else>>
<<printThought "Oh no...">>
<</if>>
<<else>>
<<printThought "Why did I say something so disobedient? I know better than that...">>
<</if>>
<br><br>
"@@.npc_manager;If you are going to cop an attitude like this, I do not think you can properly discharge your duties as my secretary. Go home and spend some time thinking about your future at this company.@@"<br>
<br>
You are at the door when she makes a final note.<br>
<br>
"@@.npc_manager;Oh, and <<=$player.first_name>>? If you want to start regaining my favour, you should head straight for the mall so that you can send me my picture tonight.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought "Yes <<=setup.getNpcName('npc_manager', 'formal')>>, I'm sorry <<=setup.getNpcName('npc_manager', 'formal')>>...">>
<<else>>
<<printThought "I really ought to stop antagonising her like this...">>
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Leave the office." 120>>]
</div>/*#
#desc: deliver manager's lunch wearing platform wedge heels
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include checkFoodDelivery>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<addItem "platform_wedge_heels_pink">>
<<wearItem "platform_wedge_heels_pink" true>>
<<if setup.getTotalValue("heels") >= setup.getItemObj("platform_wedge_heels_pink").heels.difficulty>>
<<set $scene.heelsSkill = 'high'>>
<<set $npc_manager.flags.uniform_upgrade.lunch_heel_training_complete = true>>
<<setThreshold 'dexterity' 'other' 'heel_training'>>
<<elseif setup.getTotalValue("heels") < 5>>
<<set $scene.heelsSkill = 'low'>>
<<else>>
<<set $scene.heelsSkill = 'mid'>>
<<if !setup.hasThreshold("heels", 'wearing_heels', 'intermediate')>>
<<setThreshold 'heels' 'wearing_heels' 'intermediate'>>
<</if>>
<</if>>
<</if>>
<<if $scene.heelsSkill == "low">>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.heelsSkill == "low">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.heelsSkill>>
<<case "high">>
Quickly sliding your feet into the wedge heels, you take an experimental step and immediately feel quite confident. Full of enthusiasm you grab the book <<=setup.getNpcName('npc_manager', 'formal')>> had you train with, balancing it carefully on your head before carefully picking up her lunch and walking towards the door to the inner office.<br>
<br>
Knocking once formally, you open the door and start walking towards her desk. You are halfway across the room before she looks up, an expression of surprise quickly fading to a wide grin of... pride? or perhaps possessive lust...<br>
<br>
She devours you with her gaze the remainder of your journey as you approach her desk and gently place her lunch down while giving a small curtsy — the book remaining balanced on your head the entire time.<br>
<br>
"@@.npc_manager;Well, look at this skilled <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Thank you for the delightful delivery, <<if $scene.foodDelivery.right>>and it is exactly what I ordered! Good girl,<<else>>why, I am so pleased that I will forget that this is not the dish I requested. Sometimes it is all about the plating and for this presentation...<</if>> I think you deserve a reward. Hmmm, I know! You may wear those heels for the remainder of the day — and home, I would call them a gift, but you have earned them for certain.@@" Her eyes twinkle, "@@.npc_manager;and who knows... maybe someday you will master something even steeper.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10 && setup.getTotalValue("feminization") >= 10 && setup.getTotalValue("bdsm") >= 10>>
<<printThought "Oooo, more shoes! <<=setup.getNpcName('npc_manager', 'formal')>> is so good to me! But steeper... now that is a challenge...">>
<<else>>
<<printThought "Wait, how is THAT considered a reward???... and she expects me to go even higher?">>
<</if>>
<br><br>
Carefully maintaining the balance of the tome atop your skull, you give another dainty curtsy that has <<=setup.getNpcName('npc_manager', 'formal')>> smile even wider before carefully mincing in a tight circle and walking back out of the room.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300>>]
<<case "mid">>
Wincing just a little you pull on the wedge heels and take an experimental step. You wobble a tad, but feel confident enough, picking up <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch and carefully walking towards her office.<br>
<br>
Opening the door and sliding inside you've made it several wobbly steps towards her desk before she looks up, a look of surprise turning to one of mild amusement as you stagger your way across the room to place the lunch on her desk.<br>
<br>
"@@.npc_manager;A valiant effort, but it seems you still need more training before you can add those to your repertoire.@@"<br>
<br>
She peers inside the container <<if $scene.foodDelivery.right>>"@@.npc_manager;On the upside, at least you got my order correct.@@"<<else>>"@@.npc_manager;Hmm, and you failed to get the correct order... disappointing, but I suppose your mind was on other things...@@"<</if>>
<br><br>
Frustrated that you didn't do better you nod in thanks, bracing on her desk as you turn before staggering back out of the room.<br>
<br>
Back in the antechamber you gratefully collapse into your chair, changing back into your previous shoes and tucking the impossible wedges back under the desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "You glance at the clock to see if you have time to accomplish anything else before your afternoon shift starts." 120 "<<wearItem $scene.shoesId true>><<deleteItem 'platform_wedge_heels_pink'>>">>]
<<case "low">>
You swiftly realise this was not a great idea, your feet crying out in pain from the moment you stuff them into the severe wedge heels.<br>
<br>
<<printThought "Should I have done some stretches first? I feel less stable than the first time! Perhaps this is not a good plan...">><br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood_clumsy" "Caution is for quitters, press on with your plan." 120 "<<spendWillpower 1>>">>] <<hint $options "This will require exerting an act of will.">><br>
<<else>>
[@@.link_locked;You do not have the mental reserves to force your body to strain so hard@@]<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood" 'Discretion is the better part of valor, change back and just deliver <<=ps(setup.getNpcName("npc_manager", "formal"))>> lunch normally.' 60 '<<wearItem $scene.shoesId true>><<deleteItem "platform_wedge_heels_pink">>'>>]
<<default>>
ERROR: invalid high heel skill!
<</switch>>
</div>/*#
#desc: clumsily deliver manager lunch in heels
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Too stubborn to give up on your plan you lean hard against your desk and stagger around to pick up <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lunch. Taking a deep breath, you leap/stagger/flail across the handful of paces between your desk and the door to her office, clinging to the hefty brass doorknob for dear life.<br>
<br>
Shuffling to one side you open the door and half step, half fall inside. Somehow she hasn't noticed you yet and you try to walk across the empty gulf between you and her imposing desk.<br>
<br>
Trying to walk in these cursed heels without anything to hold on to proves to be the biggest mistake in an already very flawed plan. You've barely made it a few steps when your right ankle twists and you tumble to the ground. The clatter causes <<=setup.getNpcName('npc_manager', 'formal')>> to finally notice your presence, looking up from her work then slightly rising in her chair to watch you from above as you just give up and crawl the rest of the way to her desk.<br>
<br>
Reaching up you place the lunch box on her desk, hoping the contents haven't been too scrambled.<br>
<br>
"@@.npc_manager;No, do not try to get up. As much as I enjoy watching you crawl towards me, I think we both know this was not one of your cleverest ideas. I appreciate the effort but... be a good girl and crawl back to your desk and leave those shoes for when you have improved or I am there to supervise.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought "I'm sorry for embarrassing you <<=setup.getNpcName('npc_manager', 'formal')>>...">>
<<else>>
<<printThought "Well, that didn't go as planned">>
<</if>>
<br><br>
Nodding, you turn around and go, feeling her gaze burning into your bubble butt until you slip through the door and out of the office.<br>
<br>
By the time you have reached your desk and changed back into your normal shoes, your lunch break is over. Your feet still cramped and in need of massage you ignore the pain and get back to work. A message pops up <<if $scene.foodDelivery.right>>"@@.npc_manager;I forgot to thank you for getting my order correct — good girl, but maybe practice a bit more with heels before you try something like that again?@@"<<else>>"@@.npc_manager;For the record, what you delivered was NOT what I ordered. I will let it slide this once, but you really need to pay attention to your core duties, even while you continue to work on expanding your skills.@@"<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Continue." 600 "<<wearItem $scene.shoesId true>><<deleteItem 'platform_wedge_heels_pink'>>">>]
</div>/*#
#desc: lunchtime heel training
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.punishment = false>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You've just put your head down for a quick nap when <<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office.<br>
<br>
"@@.npc_manager;What is this, taking a nap? Such a waste of time! Come now, let us use your lunch break more productively and get in some practice at walking in heels! Here, put these on.@@"<br>
<br>
Looking up, you find that she has produced a pair of steep pink wedge heels.<br>
<br>
[<<moveTo "event_lunch_heels_training_2" "Put on the shoes." 60>>]
</div>/*#
#desc: lunchtime heel training intro from aslut
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.punishment = false>>
<<set $scene.foodDelivery.done = true>> /% hack so she doesn't yell at you about food %/
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Lunch is just about to start when <<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office.<br>
<br>
You ask what her food order is but she shakes her head. "@@.npc_manager;Not today, my dear. I thought we would take a few minutes in celebration of your new footwear with some training. Here, put these on.@@"<br>
<br>
She places a pair of steep pink wedge heels on your desk and grins down at you.<br>
<br>
[<<moveTo "event_lunch_heels_training_2" "Put on the shoes." 180>>]
</div>/*#
#desc: lunchtime heel training punishment intro
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.uniform_upgrade.bed_heel_punish = false>>
<<set $scene.punishment = true>>
<<set $scene.foodDelivery.done = true>> /% hack so she doesn't yell at you about food %/
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
By the time lunch rolls around, your feet are on fire and your calves are practically spasming with strain. Watching the clock tick down as you eagerly look forward to relaxing a bit and recovering during your break, you are instead surprised by <<=setup.getNpcName('npc_manager', 'formal')>> walking out of her office at noon sharp.<br>
<br>
"@@.npc_manager;Alright, I think you have learned the first part of your lesson. You may step off the book now.@@"<br>
<br>
Somehow flattening your feet sends fresh jolts of pain through your ankles as your arches howl in agony. You still savour the relief as you stand up, your back, too stiff from being literally bent over your computer for so long. Wincing and trying to stretch, it is several seconds before you realise that <<=setup.getNpcName('npc_manager', 'formal')>> is still staring at you, and she is holding a pair of heels...<br>
<br>
"@@.npc_manager;So nice of you to notice. Put these on. While you may have learned your lesson for disobeying me, it is now time to focus on the original goal and get you learned at walking in heels. Put these on.@@"<br>
<br>
[<<moveTo "event_lunch_heels_training_2" "Put on the shoes." 60>>]
</div>/*#
#desc: lunchtime heel training
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.hasOwnProperty('shoesId')>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<</if>>
<<set $scene.removeHeels = !setup.checkItemOwned("platform_wedge_heels_pink")>>
<<addItem "platform_wedge_heels_pink">>
<<wearItem "platform_wedge_heels_pink" true>>
<<set $npc_manager.flags.uniform_upgrade.lunch_heel_training += 1>>
<<if setup.hasThreshold('heels', 'heel_training', 'basic_training')>>
<<applyExperience 'heels' 11 'terrible' $SEEN_FRIEND>>
<<else>>
<<setThreshold 'heels' 'heel_training' 'basic_training'>>
<</if>>
<<applyExperience 'dexterity' 7 'normal' $SEEN_FRIEND>>
<<set $scene.first_time = $npc_manager.flags.uniform_upgrade.lunch_heel_training == 1>>
<<applyFatigue 10>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("heels") >= setup.getItemObj("platform_wedge_heels_pink").heels.difficulty>>
You slip into the shiny pink wedge ankle boots with ease, by now well used to heels of their stature.
<<else>>
<<if $npc_manager.flags.uniform_upgrade.lunch_heel_training == 1>>
The pair of shiny pink wedge ankle boots have heels that utterly dwarf your Mary Jane's and you wonder how you are expected to walk, much less "master" such steep footwear. Zipping them up and strapping them on, you find that the larger base makes them a bit easier to balance on than thinner heels, though their steepness still has your calves, ankles and arches whimpering in pain.
<<else>>
Once again you zip up the pink wedge ankle boots. <<if setup.getTotalValue("heels") >= setup.getItemObj('platform_wedge_heels_pink').heels.difficulty>>They feel surprisingly comfortable this time.<<elseif setup.getTotalValue("heels") > 5>>Though steep they don't feel quite as intimidating as previously.<</if>>
<</if>>
You look down in slight surprise as you now stand slightly taller than your boss, you find her holding out <<if $scene.punish>>the book that served up your morning's torment<<else>>a thick hardcover book<</if>>.
<</if>>
<br><br>
"@@.npc_manager;It is time for some good old-fashioned training techniques. Balance this on your head and start walking. You are done when you make a full loop of this room without it falling or the end of your break, whichever happens first.@@"<br>
<br>
<<if setup.getTotalValue("heels") >= setup.getItemObj('platform_wedge_heels_pink').heels.difficulty>>
Your training in heels has really paid off as you find it almost natural to stand in what you would have once considered ludicrously steep footwear. Taking the book with a nod you place it gently on your head and begin to walk, gracefully completing a full circuit with ease and finishing off with a gentle curtsy.<br>
<br>
Obviously impressed, <<=setup.getNpcName('npc_manager', 'formal')>> graces you with a smile before removing the book and rewarding you with a head-pat.<br>
<br>
"@@.npc_manager;Very good! Your training is coming along quite nicely.@@" You blush and thank her for taking the time to help.
<<else>>
<<if setup.getTotalValue("submission") >= 10 && setup.getTotalValue("bdsm") >= 10>>
Even though it makes you wince to bend your legs you give a slight curtsy, grateful for her thoughtfully gracing you with even this harsh attention.
<<else>>
If you weren't effectively hobbled by your towering footwear you would be tempted to run. Instead, you let her balance the book on your head and take a step.
<</if>>
<br><br>
<<if setup.getTotalValue("heels") > 5>>
Though the wedge heels are far too high for you, and your feet ache from your morning position, you are not a complete incompetent. You manage to keep the book balanced for a couple steps before it slips. Gritting your teeth in determination you reset and try again.<br>
<br>
Despite brief periods of success, you still spend most of your lunch period under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> critical gaze, but somehow, with ten minutes to go, you manage to put it all together. Reaching the end of the circuit around the small room, you want to collapse in relief, but are cognisant to remain standing and still, the book still balanced on your head.<br>
<br>
"@@.npc_manager;Very good, you still have a lot of practice to do before anyone would mistake you for graceful, but that will suffice for today.@@"
<<else>>
You haven't even put your foot down from your first step when the book slips off your head. You replace it and focus harder, but little changes over the course of your lunch break. Your calves and feet are already exhausted from the morning's punishment. The heels are nigh impossible on their own and you are unsure if you could even manage the book balancing in flats — years working in front of a computer don't exactly translate to great posture.<br>
<br>
Still, you have no choice but to continue to try under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful gaze, listening intently to her occasional tips though it does not seem to help much. Eventually your lunch period ticks away with the completion of a full loop unaccomplished.
<</if>>
<br><br>
Your lunch training finally finished, <<=setup.getNpcName('npc_manager', 'formal')>> rolls your office chair across the room towards you.
<</if>>
<br><br>
<<if $now.getUTCDay() == 5>>
"@@.npc_manager;Well, I suppose that is all for today, go ahead and clean your things up and enjoy your weekend, perhaps Monday you can start things off on the right foot, hmm?@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Change shoes and get ready to leave." 3600 '<<wearItem $scene.shoesId true>><<if $scene.removeHeels>><<deleteItem "platform_wedge_heels_pink">><</if>>'>>]
<<else>>
"@@.npc_manager;I think that will do for today. You may put your normal shoes back on, but leave those wedges under your desk. They belonged to your predecessor, perhaps looking down at them will remind you of her success and motivate you to improve yourself.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start working." 1800 '<<wearItem $scene.shoesId true>><<if $scene.removeHeels>><<deleteItem "platform_wedge_heels_pink">><</if>>'>>]
<</if>>
</div>/*#
#desc: check corset lacing
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "">>
<<if !$scene.hasOwnProperty('beforeLacing')>>
<<set $scene.beforeLacing = $locationbeforeuseage>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
You reach behind your back to check the lacing on your corset.<br>
<br>
<<if $player.timebased.tightlacing == 100>>
You cannot fit so much as a fingernail between the rear panels of your corset, you are perfectly and completely laced down, the corset <<if setup.getTotalValue("bdsm") > 5>>delightfully <</if>>crushing you into a more feminine shape.<br>
<br>
Your hands shift to marvel at your oh-so-narrow waist, fit to take the breath away from you and any who look upon you.<br>
<br>
<<if $player.flags.uniform_upgrade.autoLacing>>
<<printThought "Those auto-laces really live up to the hype...">><br>
<br>
<</if>>
[<<moveTo "event_corset_lacing_loosen" "Loosen your laces." 30>>]<br>
[@@.link_locked;There is no further tightening to be done.@@]
<<elseif $player.timebased.tightlacing == 0>>
Your corset hangs loose around your body, the lacings having not been tightened in the slightest.<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought "Hmm, I should really do something about this.">>
<<else>>
<<printThought "Why am I even wearing this thing?">>
<</if>>
<br><br>
[@@.link_locked;Any looser and the corset would just fall off your body.@@]<br>
[<<moveTo "event_corset_lacing_1" "Tighten your laces." 30>>]
<<else>>
<<if $player.timebased.tightlacing >= 75>>
You can barely fit a finger in between the rear panels of the corset. It will take a fair bit of strength to cinch tighter and close this lingering gap.
<<elseif $player.timebased.tightlacing >= 50>>
There is a couple-finger gap in the back of the corset. It will take a bit of effort to pull it tighter so that it may more fully sculpt your body.
<<elseif $player.timebased.tightlacing >= 25>>
The corset is snug, but will do little to shape your body unless you tighten it further.
<<else>>
The corset is technically laced, but only barely with a substantial gap between the rear panels.
<</if>>
<br><br>
[<<moveTo "event_corset_lacing_loosen" "Loosen your laces." 30>>]<br>
[<<moveTo "event_corset_lacing_1" "Tighten your laces." 30>>]
<</if>>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $scene.beforeLacing>>">>]<br>
[<<moveTo $scene.beforeLacing "Leave the laces as they are." 1 "<<deleteMember $scene 'beforeLacing'>><<set $roomchange = false>>">>]
</div>/*#
#desc: unlace corset
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.flags.uniform_upgrade.autoLacing>>
<<set $player.timebased.tightlacing = 0>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $player.flags.uniform_upgrade.autoLacing>>
You attempt to loosen the auto-laces, but they remain firm; the only way to obtain even the slightest slack would result in the corset falling from your body. The result is that you're stuck, either laced all the way down or totally un-corseted.<br>
<br>
<<if setup.getTotalValue("feminization") > 15>>
<<printThought "Well, that's an easy choice, bring on that hip shelf, yay!">>
<<elseif setup.getTotalValue("submission") > 15>>
<<printThought "Well, I know what my <<=setup.getNpcName('npc_manager', 'title')>> would prefer...">>
<<else>>
<<printThought "The high price of convenience...">>
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation=$scene.beforeLacing>>">>]<br>
[<<moveTo $scene.beforeLacing "Do something else." 120 "<<deleteMember $scene 'beforeLacing'>><<set $roomchange = false>>">>]
<<else>>
Unknotting the laces you relax and let the corset loosen. You sigh in relief and retying it without pulling it snug in the slightest.<br>
<br>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought "Why did I do that? This isn't how to wear a corset!">><br>
<br>
<</if>>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation=$scene.beforeLacing>>">>]<br>
[<<moveTo $scene.beforeLacing "Do something else." 120 "<<deleteMember $scene 'beforeLacing'>><<set $roomchange = false>>">>]
<</if>>
</div>/*#
#desc: attempt to lace your corset
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("strength") <= 5>>
<<set $player.timebased.tightlacing = 25>>
<<elseif setup.getTotalValue("strength") >= 10>>
<<set $player.timebased.tightlacing = 75>>
<<else>>
<<set $player.timebased.tightlacing = 50>>
<</if>>
<<applyExperience 'strength' 10 'slightly' $ALONE>>
<</if>>
<<createAdvBGR "./images/scenes/scene_lace_corset_1.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("strength") <= 5>>
You tug at the lacings of your corset, but you just do not have the strength to pull it closed around your body. Straining and puffing you manage to shrink the gap by perhaps a centimetre before needing to give up. You are too weak, there is just no way you are getting it tighter without someone's help.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation=$scene.beforeLacing>>">>]<br>
[<<moveTo $scene.beforeLacing "Looks like that's all you can do on your own." 120 "<<set $roomchange = false>>">>]<br>
<<elseif setup.getTotalValue("strength") >= 10>>
Your toned arms pull strong and steady, drawing the corset closed and forcibly reshaping your body in the process. Spring steel and strength wins out over flesh and bone, the garment drawing in and then forcing itself further as it sculpts you into a feminine hourglass shape. Pausing for a moment to let your body adjust you note that you still have a few centimetres gap to close if you want to take it all the way.<br>
<br>
This seems like a nice compromise between a slight hourglass shape and your ability to breathe.<br>
<br>
[<<moveTo "event_corset_lacing_2" "No half measures; lace it the rest of the way." 300>>]<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation=$scene.beforeLacing>>">>]<br>
[<<moveTo $scene.beforeLacing "Tie it off." 120 "<<deleteMember $scene 'beforeLacing'>><<set $roomchange = false>>">>]
<<else>>
Putting all your strength into it you slowly compress the corset around your body. Your breaths coming short and quick your tummy is crushed and your ribs flex inward as the steel bones of the corset ruthlessly reshape your body. Starting to feel dizzy you pause for a moment. Checking behind you find there is still a couple centimetres of gap.<br>
<br>
Your body has a bit of hourglass shape and you can still breathe, sort of.<br>
<br>
[<<moveTo "event_corset_lacing_2" "Attempt to lace it the rest of the way." 300>>]<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation=$scene.beforeLacing>>">>]<br>
[<<moveTo $scene.beforeLacing "That's good enough." 120 "<<deleteMember $scene 'beforeLacing'>><<set $roomchange = false>>">>]
<</if>>
</div>/*#
#desc: attempt to finish lacing your corset
#status: RELEASED 0.6.0.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("strength") >= 10>>
<<set $player.timebased.tightlacing = 100>>
<</if>>
<<applyExperience 'strength' 10 'slightly' $ALONE>>
<</if>>
<<createAdvBGR "./images/scenes/scene_lace_corset_1.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("strength") < 10>>
Try as you might, you just are not strong enough to lace the corset any tighter. You need help if you want to finish closing it.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation=$scene.beforeLacing>>">>]<br>
[<<moveTo $scene.beforeLacing "Resign yourself that this is the best you can do on your own." 60 "<<deleteMember $scene 'beforeLacing'>><<set $roomchange = false>>">>]
<<else>>
Between already having squished down what little cushion your body has, plus the added challenge of your shortened breaths, it gets harder and harder to lace the corset further. Fortunately for the sake of pleasing the Goddess of fashion (if not, perhaps, your organs) you are strong enough to keep pulling. Centimetre by centimetre the corset closes around you, forcing your body and flesh into new arrangements until finally you are able to run your fingers along the perfectly closed back, unable to detect the slightest gap.<br>
<br>
The combination of excitement at your new, amazingly feminine curves and the restrictive hug of the corset shortens your breaths<<if $player.body.breastsize[0] > 0>> and makes your <<getWordBreasts>> heave even larger<</if>>. Tying everything tight you run your fingers down your sides in amazement — between your perfect posture and unearthly curves you are now showing off a full hourglass figure to die for.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation=$scene.beforeLacing>>">>]<br>
[<<moveTo $scene.beforeLacing "Stop admiring your curves and do something else." 60 "<<deleteMember $scene 'beforeLacing'>><<set $roomchange = false>>">>]
<</if>>
</div>/*#
#desc: open bed heels and try on for first time
#status: RELEASED 0.6.0.0
#*/
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<</if>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem "bed_heels_box">>
<<addItem 'bed_heels_pink'>>
<<if getUTCHours($now) gte 18 or getUTCHours($now) lt 6>>
<<set _setId = setup.getClothingSetIndex('Sleep Clothes')>>
<<useClothSet _setId>>
<<wearItem "bed_heels_pink" true>>
<<if !$inventory['bed_heels_pink'].status.lock>>
<<manipulateItem 'bed_heels_pink' 'lock' true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createAdvBGR setup.getBedroomImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $locationbeforeuseage != "room_bedroom">>
You decide the bedroom would be the best place to unpack your new purchase and head there before continuing the unboxing.
<</if>>
Dropping the shoebox for your recently purchased bed heels on the bed, you remove the lid and stare down at the insane pink locking footwear.<br>
<br>
<<printThought "Maybe if I keep staring they'll get shorter?">><br>
<br>
Several minutes pass, but there is no use delaying the inevitable. Hopping up on the bed, you shed your current footwear and reach for one of the shoes. Pointing your toes you slide it on.<br>
<br>
<<if getUTCHours($now) gte 18 or getUTCHours($now) lt 6>>
You strain to arch your foot steep enough to accommodate the ridiculous heel, eventually managing to clip the small front strap over your foot only to cry out in pain. As soon as the latch catches, it tightens further, forcing your foot to snugly follow the extreme arch of the shoe. Even worse, you find that tugging on the strap doesn't release it, and it's far too tight for you to slide off your foot without taking some skin with it.<br>
<br>
Digging under the layers of pink tissue paper packaging, you find a manual.<br>
<br>
<<printThought "Who needs a manual for shoes? Though I guess these are far from normal footwear...">><br>
<br>
Flipping through, you read that the shoes are configured from the factory to lock automatically when worn in the evening, and then not release until the following morning when their synchronised alarm triggers.<br>
<br>
Checking the other shoe, you find a small indicator light tucked under the heel that indicates that the magic of the smart home has already synchronised the footwear with your alarm clock. Reading further, you discover that the shoes are also diabolically configured so that once you start locking one you have to finish both; if you delay too long or fail to comply they will administer punishing shocks.<br>
<br>
Shuddering in fear, you hurriedly finish with the first shoe, closing the other small strap around your foot before hesitantly locking closed the intimidatingly tall main ankle strap. Sporting a visible latch, the ankle strap locks closed with a loud click that echoes through the room. Knowing what to do now, the second shoe goes on easier and soon you're locked in twin impossibly-high heels.<br>
<br>
Given that merely sitting on the bed has your toes and calves crying out in pain, you don't even want to consider walking in the shoes. Crawling around the bedroom you finish preparing yourself for sleep.<br>
<br>
[<<moveTo "room_dreams" "Change into your bed clothes and attempt to sleep." 0 "<<set $player.cutscene.lockinventory = false>><<include 'sleepClothesKeepCollar'>><<set $player.cutscene.lockinventory = true>><<wearItem 'bed_heels_pink' true>>">>]<br>
<<set _link = "Recall your task and take a photo for " + setup.getNpcName('npc_manager', 'formal') + ".">>
[<<moveTo "event_bed_heel_picture" _link 0>>]
<<else>>
Letting go of the shoe for a moment it almost instantly slides right back off your foot.<br>
<br>
Trying again and holding it in place you try to close the straps only for them to fail to latch. Confused you dig through the box to find the instructions.<br>
<br>
<<printThought "Who needs a manual for shoes? Though I guess these are far from normal footwear...">><br>
<br>
A bit of reading has you learning that the factory settings are such that the shoes, which lock automatically, will only latch before bed. Glancing at the clock confirms that is hours away; probably for the best given that once locked onto your foot they will not release until an alarm triggers the following morning. You check and note a pink status light tucked inside the heel indicating that they've already synchronised with your alarm clock — the miracle of the smart home in action.<br>
<br>
[<<moveTo "room_bedroom" "Put the heels away for later." 300 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<else>>
You consider opening up the box, but you decide you had better wait until you got home.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>><<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: open and try on pink corset for the first time
#status: RELEASED 0.6.0.0
#*/
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<<deleteItem "satin_corset_pink_box">>
<<addItem 'satin_corset_pink'>>
<<wearItem "satin_corset_pink" true>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('corset')>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_19'
9
'psychiatrist_uniform_upgrade_satin_corset_pink'
false
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createAdvBGR setup.getBedroomImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $locationbeforeuseage != "room_bedroom">>
You decide the bedroom would be the best place to unpack your new purchase and head there before continuing the unboxing.
<</if>>
Sitting on the edge of your bed you pitch the embarrassingly-labeled bag and look at the box containing your new corset.<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
<<printThought "MY corset... this is so exciting!">>
<<elseif setup.getTotalValue("feminization") >= 10>>
<<printThought "MY corset... that feels so weird to say, didn't these go out of fashion like, over a century ago?">>
<<else>>
<<printThought "MY corset... that feels so wrong to say, this isn't just woman's clothing it's like... a historical extreme of woman's clothing!">>
<</if>>
<br><br>
Deciding that it's better to at least try it on now rather than to be time-crunched in the morning, you strip down to your undergarments and open the box.<br>
<br>
Laying on a bed of pink tissue paper, you can't deny that the pink satin of the corset looks attractive. Picking it up, you are surprised how weighty it is, reminded that the seller told you it was boned with spring steel. Its stout construction is confirmed as you feel how stiff and rigid the garment is. There is no more delaying the inevitable and you open the corset to start shimmying it up your body.<br>
<br>
Even fully unlaced, it takes a bit of work to pull it past your rear and you spend a minute or so guessing how high on your torso you're supposed to put it, finally settling with it covering you from your hips all the way up to <<if $player.body.breastsize[0] > 0>>just below your <<=setup.calcBreastSize()>> breasts<<else>>to a few centimetres below your nipples, the top edge curving slightly as if to accommodate nonexistent breasts<</if>>.
<br><br>
Feeling around behind, it seems the corset is several centimetres from closing. You try tugging on the laces, but things start feeling tight before the gap has narrowed much at all. Pausing to look in the mirror you actually kind of like the criss-cross look of the laces running over your spine. Even "loose" the stiff garment acts to give you nigh perfect posture and greatly limit your ability to bend or lean over.<br>
<br>
Deciding that this is good enough for a trial run, you loosen the laces and shimmy out of the corset before stowing it in your wardrobe. Changing back into your clothes, you sneak out of the apartment to throw the packaging in the trash, glad to not run into anyone else as you make your way out then back to your residence.<br>
<br>
[<<moveTo "room_foyer" "Continue." 300 "<<removeItem 'satin_corset_pink' true>><<useClothSetPop 'tmp'>>">>]
<<else>>
You consider opening up the box, but you decide you had better wait until you were at home.<br>
<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: open and try pink thigh highs for the first time
#status: RELEASED 0.6.0.0
#*/
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<<deleteItem "thigh_highs_pink_box">>
<<addItem 'thigh_highs_pink'>>
<<wearItem "thigh_highs_pink" true>>
<<if !setup.hasThreshold("heels", 'wearing_heels', 'intermediate')>>
<<setThreshold 'heels' 'wearing_heels' 'intermediate'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_17'
9
'psychiatrist_uniform_upgrade_thigh_highs_pink'
false
>>
<<set $sceneVisibility = $INCOGNITO>>
<<applyExperience 'heels' 10 'very' $EXPOSED>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createAdvBGR setup.getBedroomImage()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $locationbeforeuseage != "room_bedroom">>
You decide the bedroom would be the best place to unpack your new purchase and head there before continuing the unboxing.
<</if>>
Standing at the side of your bed you pitch the embarrassingly-labeled bag and look at the box containing your new knee-high boots. Taking a deep breath, you remove the lid. Pulling the boots out of the box you lay them out on the bed. Even compared to the king sized bed the boots look large; twin pink columns of hot sex.<br>
<br>
<<if setup.getTotalValue("bimbofication") >= 10>>
<<printThought "These are like... beyond fuck-me boots. I can't wait to try them on!">>
<<elseif setup.getTotalValue("bimbofication") >= 5>>
<<printThought "These are like... beyond fuck-me boots. I can't believe I'm going to have to wear these...">>
<<else>>
<<printThought "These are like... beyond fuck-me boots. Do I really have the courage to wear these to work?">>
<</if>>
<br><br>
Deciding that it is better to try them on now rather than to be time-crunched before leaving for work you strip down to your undergarments and sit on the edge of the bed to put them on.<br>
<br>
Pulling the boots up your legs is a strange sensation. Much stiffer than your stockings, they feel more constraining, and yet also... protective? Finally getting the first boot all the way up your thigh, your toes slide into place and your heel seats squarely atop the thin heel. Giving the top edge a final tug, you feel a slight tingle up and down your leg as the nanites attend to resizing it to your precise dimensions. Seamless and shiny, your leg looks like it was dipped in pink candy shell, your toes mashed into a sexy point and your foot arched provocatively high.<br>
<br>
Moving to the other leg, it goes on much the same and soon you are sitting in a final moment of nervousness.<br>
<br>
<<printThought "I have to try walking in these or I'll be dead going to work...">><br>
<br>
<<if setup.getTotalValue("heels") >= 5>>
With a hand on the edge of your bed for balance, you push yourself to a standing position. You wobble a bit, and your calves and toes are far from happy thanks to heels nearly double the height of your Mary Jane's, but so long as you focus all of your attention on balance and keep your arms out you are able to walk.
<<elseif setup.getTotalValue("heels") > 2>>
Even leaning against the edge of the bed it's a bit tricky to stand up in the heels. Unable to quite straighten your knees you walk with horrible posture, leaned over with your arms wide for balance as you take one hobbling step after the other.
<<else>>
Just trying to stand in the heels proves a feat as you feel like you're constantly about to fall forward, teetering every which way on the impossibly tall and slender heels. Moving from furniture to wall for balance you try to walk. The prospect of trying to make it just up the hall to the elevator — much less all the way to work seems nigh impossible without resorting to crawling.
<</if>>
<br><br>
Feeling like you really ought to practice, you make a few loops through the apartment until your calves and feet are in too much pain to continue. You pause a final time to wobble in front of a full-length mirror. Even with your obvious flaws, there is no denying how good they make your legs look. Lengthening and slimming your lower half the top edge of the boots stop just shy of <<if setup.getItemTypeName("cage") != "">><<if setup.isCage()>>your <<getWordMyPenis>><<else>>the bottom of your chastity belt<</if>><<elseif $player.body_ref.penis>>your <<getWordMyPenis>><<else>>your crotch<</if>>.
<br><br>
Removing the boots, you hope the practice was enough. The normally short trip to work seeming quite intimidating, maybe you should take a taxi? Your wallet won't be happy, but your feet certainly will.<br>
<br>
You put your clothes back on and you sneak out of the apartment to discard the packaging. Fortunately you don't run into anyone else in the hallway in the course of making the quick trip to the garbage chute and back to your foyer.<br>
<br>
[<<moveTo "room_foyer" "Continue." 300 "<<removeItem 'thigh_highs_pink' true>><<useClothSetPop 'tmp'>>">>]
<<else>>
You consider opening up the box, but you decide you had better wait until you were at home.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: try on gold hoop earrings for the first time
#status: RELEASED 0.6.0.0
#*/
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<set $player.location to "Bedroom">>
<<set $player.inside = true>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<deleteItem "hoop_earrings_gold_box">>
<<addItem 'hoop_earrings_gold'>>
<<wearItem "hoop_earrings_gold" true>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_18'
9
'psychiatrist_uniform_upgrade_hoop_earrings_gold'
false
>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<createAdvBGR "./images/locations/flat_bathroom_01.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
<<if $locationbeforeuseage != "room_bedroom">>
You decide the bathroom would be the best place to unpack your new purchase and head there before continuing the unboxing.
<</if>>
Taking the hoop earring box out of the somewhat comically large bag, you pitch the embarrassingly-labeled sack and head to the bathroom mirror. Opening the box, you admire how the earrings gleam in the light, you've never owned anything before that was real gold.<br>
<br>
<<printThought "My first expensive piece of jewellery... I think they are even more expensive than most of what <<=setup.getNpcName('npc_exgirlfriend', 'first')>> owned, definitely more than anything I bought her on my meager salary.">><br>
<br>
You feel <<if setup.getTotalValue("bimbofication") >= 10 || setup.getTotalValue("feminization") >= 12>>like a high class call-girl<<elseif setup.getTotalValue("bimbofication") < 5 || setup.getTotalValue("feminization") < 5>>a bit weird<<else>>like a classy lady<</if>> bringing them up to your ears.<br>
<br>
Thanks to advanced nanotech, the advanced earrings make their own perfectly even holes almost painlessly; a quick poke and they're dangling from your ears without you needing to hold them in place.<br>
<br>
Swinging and gleaming in the bright light of the bathroom, you can't help but remember something you heard at an art museum you once went to with <<=setup.getNpcName('npc_exgirlfriend', 'first')>>, about how the right frame can transform a merely decent painting into a masterpiece.<br>
<br>
<<if setup.getTotalValue("feminization") >= 10>>
<<printThought "I love how these look!">>
<<else>>
<<printThought "This feels so strange. I shouldn't be wearing earrings, it's only because of that cursed contract... right?">>
<</if>>
<br><br>
Turning your head back and forth causes the earrings to sway and brush your neck. Each touch of the cool metal reminds you of their presence, even after your ears adjust and their weight is no longer noticeable. Taking a deep breath, you decide that's enough for now, taking them off and putting them away in your wardrobe.<br>
<br>
[<<moveTo "room_bedroom" "Continue." 300 "<<removeItem 'hoop_earrings_gold' true>>">>]
<<else>>
Not wanting to lose the small, expensive earrings you decide to wait until you are home to take them out of their box.<br>
<br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Back." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
<</if>>
</div>/*#
#desc: npc_rival shows up to prompt a-slut perfect
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.punt = $npc_sissy_secretary.stage < 4>>
<<if $scene.punt>>
<<completeWorkEvent>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<addWorkEvent 'aslut_perfect_reminder' _nextDate>>
<<initRoom>>
<<moveTo "event_work_generic">>
<<else>>
<<include "calculateAslut">>
<<set $scene.rawAslut = $scene.aslut1 || setup.checkItemTypeWorn("corset") && $player.timebased.tightlacing >= 90 && setup.getItemObjFromType('shoes').heels.difficulty >= 10 && setup.checkItemTypeWorn("earring")>>
<<if $player.flags.uniform_upgrade.aslutStage < 3>>
<<addTaskById "aslut_1_final">>
<<set $player.flags.uniform_upgrade.aslutStage = 3>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You're
<<switch $player.work.style>>
<<case 'sloppy'>>
daydreaming
<<case 'normal'>>
working normally
<<case 'hard'>>
working hard
<<case 'bimbo'>>
doing some post-bimbo shift catchup
<<default>>
ERROR: unexpected player.work.style <<=$player.work.style>>
<</switch>>
at your desk when <<=setup.getNpcName("npc_rival","formal")>> and <<his npc_rival>> assistant arrive for a meeting with <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> passes through directly to <<=ps(setup.getNpcName("npc_manager","formal"))>> office, but your attention is already drawn to <<his npc_rival>> assistant, and your friend, <<=setup.getNpcName("npc_sissy_secretary","first")>>.<br>
<br>
Striding confidently atop sky-high heels, her breasts heaving above what can only be a corset-pinched waist... from the earrings dangling by her neck to her perfect nails <<=setup.getNpcName("npc_sissy_secretary","first")>> is the epitome of <<if $fetish.sissy>>SISSI<<else>>feminine<</if>> Secretary perfection.<br>
<br>
<<if $player.flags.uniform_upgrade.aslutStage >= 4>>
You straighten with pride, a single shared glance confirming that her excellence is thanks to the same A-SLUT program you have so recently mastered<<if !$scene.rawAslut>>... even if you didn't remember to embody all such aspects in today's uniform the way <<=setup.getNpcName("npc_sissy_secretary","first")>> has<</if>>.<br>
<br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> takes a seat on the edge of your desk and grins, the two of you swapping a bit of office gossip and tips for how to better perform the duties of a <<if $fetish.sissy>>SISSI <</if>>Secretary before <<=setup.getNpcName("npc_rival","formal")>> emerges from <<his npc_rival>> meeting and <<=setup.getNpcName("npc_sissy_secretary","first")>> hurries after <<him npc_rival>>.<br>
<br>
As <<=setup.getNpcName("npc_rival","formal")>> passes your desk you catch a look of annoyance... which is mirrored by a smile of pride on the face of <<=setup.getNpcName("npc_manager","formal")>> before she disappears back into her inner office.
<<else>>
You find yourself reflecting on your work in the A-SLUT program... perhaps you should put some more work into mastering
<<if $player.flags.uniform_upgrade.aslutStage == 2>>
more than the minimum of such.
<<else>>
all aspects of such things.
<</if>>
<br><br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> takes a dainty seat on the edge of your desk and beams down at you with corporate pride.<br>
<br>
"@@.npc_sissy_secretary;Look at the two of us! How far we've come from that first day we ran into each other, eh? But the project isn't complete, hmm?@@" They gesture over your body as you reflect on the differences between the two of you.<br>
<br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> grins, not a hint of insult as they shuffle a little closer and start giving you suggestions on ways to further "improve" to be the perfect <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
By the time <<=setup.getNpcName("npc_rival","formal")>> re-emerges you have a pretty good idea of exactly what you need to prove your mastery of A-SLUT fundamentals.
<</if>>
<br><br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> blows you a kiss good-bye and you turn back to your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: talk to psychiatrist about wearing bed heels
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain how you have started wearing the so-called extreme "bed heels" while you sleep, and how <<=setup.getNpcName('npc_manager', 'formal')>> has you send her pictures to confirm that you are doing so. You even pull out your phone to show her the last picture you sent.<br>
<br>
"@@.npc_psychiatrist;That is very interesting. The dichotomy of learning to walk better whilst laying down. I am, of course, familiar with bed heels, the ones you showed me, however look quite interesting indeed.@@"<br>
<br>
"@@.npc_psychiatrist;Knowing that you will be locked all night in their severe embrace... well, knowing that and placing the shoes on your feet it, in a way, makes the locks superfluous — it is your desire for self-improvement, a noble goal, that puts the shoes on and keeps them there.@@"<br>
<br>
<<printThought "<<if setup.getTotalValue('bondage') >= 10>>Yeah, but locking them on makes it so much better...<<else>>But they're still LOCKED ON.<</if>>">>
<br><br>
"@@.npc_psychiatrist;Continuing on to the actions of your manager... this is a new intrusion into your personal life, and yet you accepted it. They say one should strive to find a way to get paid to do what you love — is that what is happening here? Are you intentionally blending your work and home life in the hopes that you can grow in both in harmony?@@"
<br><br>
<<if setup.getTotalValue("submission") >= 10>>
<<printThought "I do love obeying <<=setup.getNpcName('npc_manager', 'formal')>>. Obviously being hers to control all the time would be better than just when I'm at work...">>
<<else>>
<<printThought "No, I work to live, not the other way around, but why have I submitted to all of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> orders and not searched for a new job?">>
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about the pre-bed sext you sent her
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $npc_psychiatrist.flags.sent_sext_discuss = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You mention the sext you sent <<=setup.getNpcName('npc_psychiatrist', 'first')>> and she smiles, the memory clearly a positive one.<br>
<br>
"@@.npc_psychiatrist;I believe I already gave you my thoughts on that matter, though the fact that you bring it up again... clearly, you are seeking additional validation from me for your actions, perhaps from others as well? While you should always be careful with sending pictures, such things are normal in this day and age, the real validation comes from inside, and you already have that, do you not?@@"<br>
<br>
<<if setup.getTotalValue("humiliation") >= 10>>
<<printThought "Of course I love dressing up and taking photos, but sharing it with others makes it so much hotter!">>
<<else>>
<<printThought "I guess I shouldn't be so concerned what other people think, I'm in my apartment so I can wear what I want.">>
<</if>>
<br><br>
"@@.npc_psychiatrist;I thought as much — I saw the photos. I noticed they were very well done for an amateur, not sloppy at all. Such care tells me that you are proud of what is in those pictures — yourself, and what you are wearing. That is good, you should be proud, because you are beautiful and when you wear the things you want it only serves to makes you more lovely still.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about sending a pre-bed sext to a random contact
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> how you accidentally sent a sext to someone other than who you intended.<br>
<br>
"@@.npc_psychiatrist;I see, such things happen, and they can certainly be embarrassing, but I think you need to look at the larger picture. First, you cannot control everything, sometimes the best move is to surrender to fate, but by doing so you actually accept and embrace it, and thus you have not surrendered at all, merely arrived at your chosen destination by a different path.@@"<br>
<br>
You're still trying to follow the byzantine path of what she just said as she continues on.<br>
<br>
"@@.npc_psychiatrist;Second is that, once again, you talk to me about what is effectively concern over the opinions of others. Know that, if you wish to get approval from others, there are myriad ways, but in doing so you give them power over you. Of course, if that is what you want, then it comes full circle once again and whatever is done to you can become what you wanted all along.@@"<br>
<br>
You blink a few times, still struggling to untangle the web of "logic" she just laid out.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist the first high heel video shoot
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about your clumsy efforts to walk in ballet boots that were filming the marketing segment for the shoe store in the mall.<br>
<br>
"@@.npc_psychiatrist;It takes real courage to show that sort of vulnerability, especially on camera. I am proud of you, this really shows your internal strength. More important is that you can use the video yourself. Once you have completed the "after" portion you will have documented proof of your accomplishment and your advancement. These sorts of milestones are the stepping stones by which one can make even greater leaps forward, as their confidence is buoyed by such a concrete record of prior success.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist the second high heel video shoot
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> about how well you walked in your second ballet boot video shoot.<br>
<br>
"@@.npc_psychiatrist;Quite impressive, both your courage in returning for a second video and your rapid development in your ability to walk in such challenging footwear. The first video you made blind, there were no expectations for you to be anything other than clumsy. But this one? Improvement was expected, and you delivered! See what you can accomplish when you focus your efforts on a goal? In such a short time you fulfilled a desire — walking in steep heels — that you once had not even been aware of. What other desires might you be yet ignorant of, that you declare to reach out and claim?@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about filming a bed heels testimonial
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You <<if $scene.testimonialCount > 0>>continue to <</if>>talk to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about recording a personal testimonial on the effectiveness of wearing bed heels.<br>
<br>
"@@.npc_psychiatrist;Oh, how fascinating! What <<if $scene.testimonialCount > 0>>other <</if>>approach did you take for your endorsement?@@"<br>
<br>
<<set $scene.testimonialCount = 0>>
<<for _style, _active range $npc_shoestore_manager.flags.testimonials>>
<<if _active>>
<<if $npc_psychiatrist.flags.bed_heels_testimonial[_style]>>
[@@.link_locked;Already talked about giving a testimonial in a <<=_style>> style.@@]
<<else>>
<<set $scene.testimonialCount += 1>>
<<set _topic = "<<set $scene.testimonial_for_discussion = '" + _style + "'>>">>
[<<moveTo "psychiatrist_high_heel_video_shoot_testimonial_details" 'Talk about giving a testimonial in a <<=_style>> style.' 60 _topic>>]
<</if>>
<br>
<</if>>
<</for>>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about filming a bed heels testimonial
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.bed_heels_testimonial[$scene.testimonial_for_discussion] = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You go into further detail on your <<=$scene.testimonial_for_discussion>> style bed heel testimonial.<br>
<br>
"@@.npc_psychiatrist;Very interesting, while the purpose of your act may have been financial, I want you to consider the cathartic side of it as well — you declared something to the world, testifying about what you already knew, perhaps doing so better crystallised your own desires on the subject?@@"<br>
<br>
<<if $scene.testimonial_for_discussion != "casual">>
<<printThought "Yes, even though I was sort of acting, it felt good to act like that in front of the camera. Maybe I should behave in a <<=$scene.testimonial_for_discussion>> manner more often?">>
<<else>>
Maybe I should dress up and do one of the more "personal" testimonials <<=setup.getNpcName('npc_shoestore_manager', 'first')>> mentioned, just to see how it feels?
<</if>>
<br><br>
<<if $scene.testimonialCount > 1>>
[<<moveTo "psychiatrist_high_heel_video_shoot_testimonial" "You want to talk about another testimonial style." 1>>]<br>
<</if>>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about filming the final high heels video shoot
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You talk with pride about your mastery of ballet heels and the short video you recorded of such in the back room the shoe store in the mall; and how you walked out of the store wearing those very same heels.<br>
<br>
"@@.npc_psychiatrist;I am so proud of you. It is always satisfying to master a new skill, particularly one that you have worked so hard at, and desired for as long as you have in this case. As you are now capable of standing taller and seeing further in the literal sense, you should also bear in mind the ways you can see farther metaphorically from your new perch? What once-distant goals are now within reach? Which will you quest for first?@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
<<printThought "What other aspects of femininity have I missed out on pushing to the extreme? I should master them all!">>
<<else>>
<<printThought "I wish I could so easily develop an actually useful skill instead...">>
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about filming the final bdsm variant of high heels video shoot
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $npc_psychiatrist.flags.bed_heels_ad_bdsm = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'first')>> shifts in her chair as you walk through filming the fetishistic "high heels" videoshoot. The memory of it is exciting to you, as well, and there is a moment of silent adjustment on both of your part before she gives her reply.<br>
<br>
"@@.npc_psychiatrist;Well, that sounds like quite the experience. I see no harm in it, <<=setup.getNpcName('npc_shoestore_manager', 'first')>> sounds to have behaved quite respectably given the circumstances. You seem to be quite attracted, and attracting, to shall we say, strong females? Being able to turn such an interest into a little extra money well... nothing wrong with that, is there? Yes, this all sounds quite above board, I would only suggest that if you continue to be interested in such things you should look to explore them in a more personal manner...@@"<br>
<br>
Her voice trails off and you hesitate in confusion, but the moment passes, her professional mien returning as she nods for you to continue on to the next topic.<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about being assigned the uniform upgrade task
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $player.flags.uniform_upgrade.fully_understood_contract>>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> how, after researching the issue thoroughly, you have decided to enrol in the so-called A-SLUT programme, your manager having tasked you with procuring an "upgrade" to your work attire as a first step.<br>
<br>
"@@.npc_psychiatrist;Oh, I am just so proud of you! Taking charge like that, not just accepting the opportunity before you, but actively seeking it out! Yes, this is exactly the sort of breakthroughs we therapists dream of seeing, and while all credit belongs with you, of course, I do hope that I have been of some mild help in assisting you towards your current success.@@"<br>
<br>
<<printThought "Assisting... yeah, that's one way of putting it...">>
<<elseif $player.flags.uniform_upgrade.forced>>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the A-SLUT programme that you have found yourself forcibly enrolled in. She listens intently, making notes throughout and waiting until the end of your long-winded explanation to make her assessment.<br>
<br>
"@@.npc_psychiatrist;Interesting, interesting. Well, first off, congratulations, only the cream of the crop of Secretaries are ever considered for the program and the results, well... they can be quite extraordinary indeed! Part of the purpose of the program is to give an opportunity for a girl to better develop their own unique style so I will leave off by merely advising you to use the lessons you have already learned about experimentation and wish you luck in this wonderful endeavour!@@"
<<else>>
You explain to <<=setup.getNpcName('npc_psychiatrist', 'first')>> about the A-SLUT programme that <<if State.hasPlayed("event_uniform_stipend_1_punishment_accept")>><<=setup.getNpcName('npc_manager', 'first')>> enrolled you<<else>>you have found yourself forcibly enrolled<</if>> in. She listens intently, making notes throughout and waiting until the end of your long-winded explanation to make her assessment.<br>
<br>
"@@.npc_psychiatrist;It seems that all of this traces back to two things — your lack of faith that <<=setup.getNpcName('npc_manager', 'first')>> was following the rules, and then your own incomplete understanding of such leading you to make a too-hasty decision. Your problem is you pretend that these hardships are being inflicted on you, but haven't all of the choices you made been your own? YOU didn't trust your girlfriend's word and took unknown drugs. YOU didn't do your job to backup the data. YOU signed a contract without understanding it. YOU didn't trust the other signatory to implement its rules. YOU relied on a partial understanding to make a challenge and YOU then accepted the resulting judgment@@"<br>
<br>
<<printThought "Did I really bring everything on myself, do I...deserve all of this?">><br>
<br>
"@@.npc_psychiatrist;What you need to do is take ownership of your actions. YOU chose to make yourself better for the woman you loved. YOU forced yourself to break away from a dead-end job. YOU chose to work for <<=setup.getNpcName('npc_manager', 'first')>> and finally YOU embraced a new opportunity for advancement.@@"<br>
<br>
<<printThought "Wait, what, did I chose it or is it my fault?">><br>
<br>
"@@.npc_psychiatrist;It is the same narrative, just from a different perspective. What matters in life is YOUR perspective, your life is your own, your choices, your decisions. Don't run from it, embrace it. Perhaps, in entering this new, advanced programme... you already have?@@"<br>
<br>
<<printThought "If that's true, why am I so unsure what my next move should be?">>
<</if>>
<br><br>
[<<moveTo "psychiatrist_uniform_upgrade_task_help" "Ask if she has suggestions of what you should purchase." 1>>]
</div>/*#
#desc: talk to psychiatrist about being assigned the uniform upgrade task
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $npc_psychiatrist.flags.aslut_enrollment_refused>>
You tell <<=setup.getNpcName('npc_psychiatrist', 'first')>> how you went back on your initial rejection of A-SLUT and have now officially enrolled in the so-called "employee development" programme.<br>
<br>
"@@.npc_psychiatrist;Oh, I am so glad to hear you made a decision! When you talked about your earlier refusal you sounded so unsure and regretful. So, tell me, how does it feel, to have entered into things with your eyes wide open, as it were?@@"<br>
<br>
You point out that you're still out quite a bit of money on the whole thing, but she poo poos it away.<br>
<br>
"@@.npc_psychiatrist;Yes, that is a pity, and something to keep in mind before making rash decisions in the future, but we cannot do anything to change the past, only learn from it and seek a better future, and it sounds like you have! So, have you decided what you're going to buy yet?@@"
<<else>>
You relate to <<=setup.getNpcName('npc_psychiatrist', 'first')>> the full saga of your experience with the "uniform upgrade" programme at work; from your initial refusal and resultant fines up through your choosing to enrol in A-SLUT with full knowledge of what it entails.<br>
<br>
She nods sagely, though you note the twitches of an excited smile at the edges of her mouth.<br>
<br>
"@@.npc_psychiatrist;That is quite the journey you have been on, I hope you learned something to make up for the expense? In any case I will only note that you are not my first patient who has enrolled in that programme and, while I cannot speak further without betraying confidence, I will note that they all benefited greatly from it. I know corporations can seem quite selfish and dismissive, and it's true to a point, but in this case when they speak of employee development it truly is a mutually beneficial programme.@@"
<</if>>
<br><br>
[<<moveTo "psychiatrist_uniform_upgrade_task_help" "Ask if she has suggestions of what you should purchase." 1>>]
</div>/*#
#desc: tell psychiatrist about your refusal to enrol in A-SLUT
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<<set $npc_psychiatrist.flags.aslut_enrollment_refused = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You explain to the psychiatrist how, after finding out the full details of the A-SLUT programme, you paid off the stipend and the steep penalty so that you could reverse your "mistake." <br>
<br>
"@@.npc_psychiatrist;Mistake... an interesting word. After all, you MISSed the full details of the contract, and thus charging head-long in caused your money to be TAKEn from you. A curious word indeed, or could it be, perhaps, that you MISSed out on an opportunity and you would like to TAKE the offer to join the Allotment for <<if $fetish.sissy>>Sissy<<else>>Secretary<</if>> Learning and Uniform Transformation programme? I cannot say much without betraying patient trust but... I have dealt with other clients who have entered that programme and all have benefited from it, in numerous ways. I think your problem is fear — so much has happened and you were trying to take control, but you just don't have power to do that. What you DO have power over, however, is yourself — use that power and grasp the opportunities presented to you, just because you have been hurt before you must not let yourself close in and wall yourself off from pursuing your desires.@@"<br>
<br>
<<printThought "Did I make a mistake? Am I still making one? What should I do?">><br>
<br>
"@@.npc_psychiatrist;I think you need to step back and consider your priorities. At first you wanted knowledge, but you didn't learn enough and fell into a "trap." You wanted money, but when you found out the "cost" you spent many times what you hoped to earn to back out. All of it speaks to an unwillingness to accept reality, to embrace what is and choose actively to become your best self. Yes, until you decide what you actually want, and pursue it, well... I hate to be the bearer of bad news, but this path is a downward spiral. Rushing in without a plan, making "mistakes," losing money or other things you valuable... I want these sessions to help reverse things, to raise you up, but I can only throw you a rope — you are the one who has to grab hold and pull yourself out of the river.@@"<br>
<br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about pink thigh high uniform upgrade items
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if setup.isItemEquipped("thigh_highs_pink")>>
"@@.npc_psychiatrist;So, tell me about this new accessory — which looks very hot on you, by the way.@@"<br>
<br>
You start to explain how your manager sent you to upgrade your uniform, but your counselor cuts you off.<br>
<br>
"@@.npc_psychiatrist;Tell the truth. I allowed you to change before our talk — you may have needed help to become aware of this item, but that you are wearing it now was totally your decision. So I ask, did you buy it for yourself, or for her? Because, well, you are the one wearing it, now, in front of me. @@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
You can't help but agree that, though <<=setup.getNpcName('npc_manager', 'formal')>> may have initially given you the task, you would have definitely bought the pink thigh high boots if you had been aware of them earlier.
<<elseif setup.getTotalValue("submission") >= 10>>
You explain, with some amount of confusion that of course it is because of <<=setup.getNpcName('npc_manager', 'formal')>>, everything you do is to serve her.
<<else>>
<<printThought "Is that true? Would I really have bought a pair of pink thigh high boots voluntarily? I mean, I guess I didn't object, and I am wearing it now, but I had no choice... did I?">>
<</if>>
<br><br>
"@@.npc_psychiatrist;I see, well, I think the takeaway is that you wore this to our session for a reason. What I think is that this is all just part of your evolution — another part of the real you showing itself and you should embrace that and continue to explore where this path leads, because it is YOUR path, and what YOU want.@@"<br>
<br>
"@@.npc_psychiatrist;Those heels are truly stunning, the way they cover nearly your entire leg, and those heels! Obviously choosing these was a physical manifestation of you rising to a higher level, to a better self. The way they go all the way up your legs, covering you in shiny pink perfection... it is a symbol of your progress, how with every step you take you want to go deeper into a new life. Your new self covers you, protects you, raising you up... yes, as beautiful as they make you, as beautiful as you are, what they really are is another, no pun intended, step towards what you wish to become.@@"
<<else>>
"@@.npc_psychiatrist;So, tell me about this item you say you were "forced" to buy?@@"<br>
<br>
You describe the pink thigh highs to the psychiatrist, detailing how it felt to purchase and wear it for the first time. She quietly takes notes the whole time before finally looking up.<br>
<br>
"@@.npc_psychiatrist;Hmm, the thing that most stands out to me is that, as much as you paid, and with how much about it you have committed to memory, well... don't you think it is odd you decided not to wear it for me? You obviously like it very much so what is it... shame? Hmm, no, that's not it... oh, I see, it is unworthiness! You feel like you aren't good enough for such an expensive, beautiful item!@@"<br>
<br>
<<printThought "Is that it, was my reticence really just a lie to myself?">><br>
<br>
"@@.npc_psychiatrist;Let me tell you, as someone who has, I believe, come to know you quite well, and considers you as more than just a client. You ARE worthy, worthy of this, worthy of more, but most of all, worthy of happiness. Trust your feelings, let them guide you and embrace your destiny.@@"<br>
<br>
"@@.npc_psychiatrist;From what you've said, the heels are truly stunning, the way they would cover nearly your entire leg, and those heels! Obviously choosing these was a physical manifestation of you rising to a higher level, to a better self. The way they go all the way up your legs, covering you in shiny pink perfection... it is a symbol of your progress, how with every step you take you want to go deeper into a new life. Your new self covers you, protects you, raising you up... yes, as beautiful as they make you, as beautiful as you are, what they really are is another, no pun intended, step towards what you wish to become... well, at least I would surmise, alas, with you not wearing them today we cannot be sure but...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about satin_corset_pink uniform upgrade items
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if setup.isItemEquipped("satin_corset_pink")>>
"@@.npc_psychiatrist;So, tell me about this new accessory — which looks very hot on you, by the way.@@"<br>
<br>
You start to explain how your manager sent you to upgrade your uniform, but your counselor cuts you off.<br>
<br>
"@@.npc_psychiatrist;Tell the truth. I allowed you to change before our talk — you may have needed help to become aware of this item, but that you are wearing it now was totally your decision. So I ask, did you buy it for yourself, or for her? Because, well, you are the one wearing it, now, in front of me. @@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
You can't help but agree that, though <<=setup.getNpcName('npc_manager', 'formal')>> may have initially given you the task, you would have definitely bought the pink satin corset if you had been aware of it earlier.
<<elseif setup.getTotalValue("submission") >= 10>>
You explain, with some amount of confusion that of course it is because of <<=setup.getNpcName('npc_manager', 'formal')>>, everything you do is to serve her.
<<else>>
<<printThought "Is that true? Would I really have bought the pink satin corset voluntarily? I mean, I guess I didn't object, and I am wearing it now, but I had no choice... did I?">>
<</if>>
<br><br>
"@@.npc_psychiatrist;I see, well, I think the takeaway is that you wore this to our session for a reason. What I think is that this is all just part of your evolution — another part of the real you showing itself and you should embrace that and continue to explore where this path leads, because it is YOUR path, and what YOU want.@@"<br>
<br>
"@@.npc_psychiatrist;Wow, a corset! Talk about a garment rich with history! Obviously this is just the latest demonstration of your progress — the femininity, the restriction, the way it lets you channel your physical strength into forcibly reshaping your body into a more ideal feminine form... all of that and more, but I think the biggest reason you chose it is that tight enveloping sensation, like it's constantly hugging you... because that's what's under all of this, isn't it? You, wanting someone to love you for what you are, to firmly comfort and support you all day long.@@"
<<else>>
"@@.npc_psychiatrist;So, tell me about this item you say you were "forced" to buy?@@"<br>
<br>
You describe the pink satin corset to the psychiatrist, detailing how it felt to purchase and wear it for the first time. She quietly takes notes the whole time before finally looking up.<br>
<br>
"@@.npc_psychiatrist;Hmm, the thing that most stands out to me is that, as much as you paid, and with how much about it you have committed to memory, well... don't you think it is odd you decided not to wear it for me? You obviously like it very much so what is it... shame? Hmm, no, that's not it... oh, I see, it is unworthiness! You feel like you aren't good enough for such an expensive, beautiful item!@@"<br>
<br>
<<printThought "Is that it, was my reticence really just a lie to myself?">><br>
<br>
"@@.npc_psychiatrist;Let me tell you, as someone who has, I believe, come to know you quite well, and considers you as more than just a client. You ARE worthy, worthy of this, worthy of more, but most of all, worthy of happiness. Trust your feelings, let them guide you and embrace your destiny.@@"<br>
<br>
"@@.npc_psychiatrist;Hmm, a corset! Talk about a garment rich with history! Obviously this is just the latest demonstration of your progress — the femininity, the restriction, the way it lets you channel your physical strength into forcibly reshaping your body into a more ideal feminine form... all of that and more, but I think the biggest reason you chose it is that tight enveloping sensation, like it's constantly hugging you... because that's what's under all of this, isn't it? You, wanting someone to love you for what you are, to firmly comfort and support you all day long... well, not quite, I suppose since you neglected to wear it for this session...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: talk to psychiatrist about hoop_earrings_gold uniform upgrade item
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if setup.isItemEquipped("hoop_earrings_gold")>>
"@@.npc_psychiatrist;So, tell me about this new accessory — which looks very hot on you, by the way.@@"<br>
<br>
You start to explain how your manager sent you to upgrade your uniform, but your counselor cuts you off.<br>
<br>
"@@.npc_psychiatrist;Tell the truth. I allowed you to change before our talk — you may have needed help to become aware of this item, but that you are wearing it now was totally your decision. So I ask, did you buy it for yourself, or for her? Because, well, you are the one wearing it, now, in front of me. @@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 12>>
You can't help but agree that, though <<=setup.getNpcName('npc_manager', 'formal')>> may have initially given you the task, you would have definitely bought the gold hoop earrings if you had been aware of them earlier.
<<elseif setup.getTotalValue("submission") >= 10>>
You explain, with some amount of confusion that of course it is because of <<=setup.getNpcName('npc_manager', 'formal')>>, everything you do is to serve her.
<<else>>
<<printThought "Is that true? Would I really have bought the gold hoop earrings voluntarily? I mean, I guess I didn't object, and I am wearing it now, but I had no choice... did I?">>
<</if>>
<br><br>
"@@.npc_psychiatrist;I see, well, I think the takeaway is that you wore this to our session for a reason. What I think is that this is all just part of your evolution — another part of the real you showing itself and you should embrace that and continue to explore where this path leads, because it is YOUR path, and what YOU want.@@"<br>
<br>
"@@.npc_psychiatrist;So, those earrings well... they just look perfect on you. Garish enough to draw attention — and we both know you love that — but just to draw the viewer in, framing the main attraction — your adorable face. Yes, wearing those definitely makes a statement. I wonder... does it feel like they're whispering a message every time they brush your neck? I bet they are, and I bet you love what they're saying.@@"
<<else>>
"@@.npc_psychiatrist;So, tell me about this item you say you were "forced" to buy?@@"<br>
<br>
You describe the gold hoop earrings to the psychiatrist, detailing how it felt to purchase and wear it for the first time. She quietly takes notes the whole time before finally looking up.<br>
<br>
"@@.npc_psychiatrist;Hmm, the thing that most stands out to me is that, as much as you paid, and with how much about it you have committed to memory, well... don't you think it is odd you decided not to wear it for me? You obviously like it very much so what is it... shame? Hmm, no, that's not it... oh, I see, it is unworthiness! You feel like you aren't good enough for such an expensive, beautiful item!@@"<br>
<br>
<<printThought "Is that it, was my reticence really just a lie to myself?">><br>
<br>
"@@.npc_psychiatrist;Let me tell you, as someone who has, I believe, come to know you quite well, and considers you as more than just a client. You ARE worthy, worthy of this, worthy of more, but most of all, worthy of happiness. Trust your feelings, let them guide you and embrace your destiny.@@"<br>
<br>
"@@.npc_psychiatrist;So, from your description those earrings sound like they would look just perfect on you. Garish enough to draw attention — and we both know you love that — but just to draw the viewer in, framing the main attraction — your adorable face. Yes, wearing those would definitely make a statement. Being that it is a statement that I believe you very much want to make I cannot help, but wonder why you did not wear them for our session...@@"
<</if>>
<br><br>
<<printNpcThemeReturn 150>>
</div>/*#
#desc: ???
#status: FINISHED 0.4.0.0
#*/
<<set _x = setup.testPassageDone()>><<include game_credits>>
<br>
<br>
<div align="middle">
[<<link "return">>
<<goto room_start_game>>
<</link>>]
</div><<include game_credits>>
<br>
<br>
<div align="middle">
[<<link "return">>
<<goto $player.plocation>>
<</link>>]
</div><div align="middle">
Special Thanks for providing images/videos:<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/derek6699">Derek6699</a>]<br>
<br>
[<a target="_blank" href="https://www.manyvids.com/Profile/1001490406/Emma-S/Store/Videos/">Emma S.</a>]<br>
<br>
[<a target="_blank" href="https://www.reddit.com/user/Emperorhypnos/">Emperor Hypnosis</a>]<br>
<br>
[Gallant]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/translena29">Lena Zimmermann</a>]<br>
<br>
[<a target="_blank" href="https://twitter.com/lolatrap">Lolatrap</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/alexvicious">Maitresse Alex</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/sluttymaidnicole">Nicole</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/npinkz">Nikki Pinkz</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/fotr">Raven Shaddows</a>]<br>
<br>
[<a target="_blank" href="https://xhamster.com/users/seulcoeur">Seul Coeur</a>]<br>
<br>
[<a target="_blank" href="https://faphouse.com/transgender/studios/beingboth">BeingBoth</a>]<br>
<br>
Special Thanks to for code contributions:<br>
[Ctenken] — all-fem mode code and changes<br>
<br>
</div>
<br><br>
If you think you belong on this list or want your video/image taken down, please contact me on the games discord server./*#
#desc: room to test stuff
#status: FINISHED 0.6.0.0
#ignore_spell: testroom
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
This is the Testroom 01!<br>
<br>
[<<moveTo "room_testroom_02" "Testroom 02." 1>>]
</div>/*#
#desc: room to test stuff
#status: FINISHED 0.6.0.0
#ignore_spell: testroom
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem "sissy_panties_pink" true>>
<<wearItem "formal_dress_pink" true>>
<<wearItem 'data_plug' true>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" "npc_nun_constance" "npc_nun_patience" "flip" "gimbo_secretary">>
<div id="invframe" class="scrolltext">
This is the Testroom 02!<br>
<br>
[<<moveTo "room_testroom_03" "Testroom 03." 1>>]
</div>/*#
#desc: room to test stuff
#status: FINISHED 0.6.0.0
#ignore_spell: testroom
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
/*<<wearItem "lace_bra_black" true>>
<<wearItem 'analplug_medium_ems' true>>*/
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" "elite_guard">>
<div id="invframe" class="scrolltext">
This is the Testroom 03!<br>
<br>
[<<moveTo "room_testroom_01" "Testroom 01." 1>>]
</div>/*#
#desc: room to test stuff
#status: FINISHED 0.6.0.0
#ignore_spell: testroom
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place, Toilets">>
<<initRoom>>
<<include playerMenu>>
<!--<<createAdvBGR "./images/locations/cds_office.png" "satyr_01">>-->
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga") "flip" setup.charImage("npc_ai","npc_ai_spider_body") "center" setup.charImage("npc_psychiatrist","npc_psychiatrist_naga")>>
<div id="invframe" class="scrolltext">
This is the Testroom 04!<br>
<br>
[<<moveTo "room_testroom_01" "Testroom 01." 1>>]
<<createAdvBGR "./images/locations/cds_office.png" "miss_dumi" "elite_guard" "elite_guard_2" "flip">>
</div>/*#
#desc: room to test outfits
#status: FINISHED 0.8.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $player.body.penissize[1] == 0>>
<<set $player.body_ref.penis = false>>
<<set $player.body_ref.balls = false>>
<<set $player.body_ref.vagina = true>>
<<else>>
<<set $player.body_ref.penis = true>>
<</if>>
<<if !$player.body_ref.vagina && $player.body.penissize[1] == 0>>
<<set $player.body_ref.penis = true>>
<<set $player.body.penissize[1] = 3>>
<</if>>
<<if $scene.hasOwnProperty('breast_size')>>
<<set $player.body.breastsize[1] = $scene.breast_size>>
<</if>>
<<if $scene.makeup != "">>
<<if $scene.makeup == 'none'>>
<<set $player.makeup.template = "">>
<<else>>
<<set $player.makeup.template = $scene.makeup>>
<</if>>
<</if>>
<<set $player.flat.wakeup.makeup = $player.makeup.template>>
<<changeHair $player.hair.style $player.hair.color>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.permanent = "">>
<<addAllClothing>>
<</if>>
<<set $player.location to "Magic Wardrobe">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
Breasts:<br>
<<printBreastAlterationMenu $player.body.breastsize[1] "room_sandbox_outfit">><br>
Hair:<br>
<<include "advancedHairMenu">>
<br>
Makeup:<br>
<<getMakeupCheckbox>>
Status:
<label>Pristine: <<radiobutton "$player.makeup.messed" 0 autocheck>></label>
<label>Damage: <<radiobutton "$player.makeup.messed" 26 autocheck>></label>
<label>Messy: <<radiobutton "$player.makeup.messed" 51 autocheck>></label>
<label>Ruined: <<radiobutton "$player.makeup.messed" 76 autocheck>></label><br>
<br>
Eyes:<br>
<<set $scene.eyereturn="room_sandbox_outfit">>
<<include "chooseEyecolor">><br>
<br>
Genitals:<br>
Penis:
<label>None: <<radiobutton "$player.body.penissize[1]" 0 autocheck>></label>
<label>Tiny: <<radiobutton "$player.body.penissize[1]" 1 autocheck>></label>
<label>Small: <<radiobutton "$player.body.penissize[1]" 2 autocheck>></label>
<label>Average: <<radiobutton "$player.body.penissize[1]" 3 autocheck>></label>
<label>Large: <<radiobutton "$player.body.penissize[1]" 4 autocheck>></label>
<label>Huge: <<radiobutton "$player.body.penissize[1]" 5 autocheck>></label>
<label>Massive: <<radiobutton "$player.body.penissize[1]" 6 autocheck>></label><br>
<label>Horse: <<checkbox "$player.body_ref.horsecock" false true autocheck>></label><br>
<label>Knot: <<checkbox "$player.body_ref.knot" false true autocheck>></label><br>
Erection:
<label>No: <<radiobutton "$player.timebased.horny" 0 autocheck>></label>
<label>Yes: <<radiobutton "$player.timebased.horny" 100 autocheck>></label><br>
<br>
<label>Vagina: <<checkbox "$player.body_ref.vagina" false true autocheck>></label><br>
<br>
[[Update|room_sandbox_outfit][$roomchange=true]]
</div>/*#
#desc: visit manager to talk after work
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.lastOfficeVisit = $now>>
<<set $player.cutscene.noitems=true>>
<<set $scene.talkfirstreward = $npc_manager.stage == 1 && $npc_manager.flags.stage1Promo == "" && (($npc_manager.trigger.stage1_happy>=4) || ($npc_manager.stagevalues[1].submission>=4))>>
<<set $scene.talkedPills = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.evil == 1>>
You ask if you could talk about something else before you leave?<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> sneers at you in dismissal. "@@.npc_manager;I think not. You have completed your hours, as per your contract. As per my contract well... that means that you are no longer my problem, not until <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> morning.@@"<br>
<br>
<<printThought "I really need to do something about her evilness if I'm to make any progress...">><br>
<br>
[<<moveTo "room_office_after_work" "Leave." 60>>]
<<else>>
<<if $scene.direct>>
You ask if you could talk about something else before you leave?<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods.
<<else>>
<<if setup.getTotalValue('submission')<5>>
You reach for the door, but at the last second remember that it might be a grave mistake not to knock first.
<<else>>
You knock on the door like you're supposed to do.
<</if>>
You can hear the faint buzzing of the Biometric Scanners, and hear an audible "@@.npc_manager;Come in.@@" You enter.<br>
<br>
<<if ($npc_manager.affection+$npc_manager.affection)>($npc_manager.anger+5)>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks at you delighted as you enter her office. She seems to be in a very good mood.
<<elseif ($npc_manager.affection+$npc_manager.affection)>($npc_manager.anger)>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks pleased as you enter her office. She seems to be in a good mood.
<<elseif ($npc_manager.affection+$npc_manager.affection+5)<($npc_manager.anger)>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks up at you with a rather indifferent expression on her face.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> scowls at you. It seems she is still angry about your recent mistakes.
<</if>>
<</if>>
<br><br>
<<if $npc_manager.stage >=3 || $npc_manager.stagevalues[2].makeup>>
As she looks at you, her gaze zeros in on your face.<br>
<br>
<<if $player.makeup.messed <= 25>>
"@@.npc_manager;I am glad to see that you have been keeping your makeup touched up. This is precisely how a good secretary should behave, always mentally checking if there is anything to do to always look her best.@@"
<<elseif $player.makeup.messed >= 75>>
"@@.npc_manager;What did you do, cry all afternoon, or were you sucking cocks with that trollop at the coffee shop instead of working? Your face is a disaster area, next time stay on top of things, when it gets this bad all you can do is clean it off and reapply.@@"
<<elseif setup.getCurrentMakeup() == "">>
"@@.npc_manager;What is this? You know I expect you to wear makeup. Your "natural" face may be cute, but it can be so much more!@@"
<<else>>
"@@.npc_manager;What have I told you about maintaining your looks? You must remain ever-vigilant and touch up your makeup throughout the day or you end up with this... disaster.@@"
<</if>>
<br><br>
<</if>>
<<if setup.checkItemTypeWorn("corset")>>
Her eye-line slides further down your body to alight on your hips. Rising from her seat, she walks around the desk to stand in front of you.
<<if $player.timebased.tightlacing == 0>>
<<if setup.changedRoom()>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 2>>
<</if>>
Bringing her hands around your almost natural waist <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head in dismay.<br>
<br>
"@@.npc_manager;What is this? Did you completely undo all the hard work of tightening you down? This is very bad, very disappointing indeed. I will be remembering this failure for later.@@"
<<elseif $player.timebased.tightlacing > 90>>
Running her fingers along the tight, clean line at the back of your fully laced corset <<=setup.getNpcName('npc_manager', 'formal')>> nods with approval.<br>
<br>
"@@.npc_manager;Very good. This is how a corset should be worn. Fully laced at all times.@@"
<<elseif $player.timebased.tightlacing > 50>>
<<if setup.changedRoom()>>
<<set $player.timebased.tightlacing = 100>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 1>>
<</if>>
<<=setup.getNpcName('npc_manager', 'formal')>> runs her fingers along the back of your corset, shaking her head when she manages to slip a fingertip into the small, but existent, gap.<br>
<br>
"@@.npc_manager;Did I not tell you that you should pay attention and re-tighten your corset if it loosened? This is a garment of elegance and style, and proper wear bears some responsibility beyond just throwing it on.@@"<br>
<br>
Spinning you around she gives a few swift yanks and re-ties your laces at their "proper" level." <br>
<br>
"@@.npc_manager;Much better. That is the breathless beautiful <<if $fetish.sissy>>sissy<<else>>girly<</if>> form I expect. That said, you should pay more attention to your attire lest I be forced to take additional measures to remedy your lackadaisicalness.@@"
<<else>>
<<if setup.changedRoom()>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 1>>
<</if>>
"@@.npc_manager;Tsk tsk, did you purposefully loosen your corset? That was very naughty. What is the point of wearing it if you are not going to do it properly? Keep wearing your things improperly and measure will need to be taken.@@"
<</if>>
<br><br>
<<if ($npc_manager.affection+$npc_manager.affection)>($npc_manager.anger+5)>>
"@@.npc_manager;Now then, <<=$player.first_name>>, is there something I can help you with?@@"
<<elseif ($npc_manager.affection+$npc_manager.affection)>($npc_manager.anger)>>
"@@.npc_manager;Now then, <<=$player.first_name>>, is there something I can help you with?@@"
<<elseif ($npc_manager.affection+$npc_manager.affection+5)<($npc_manager.anger)>>
"@@.npc_manager;So, is there something I can help you with <<=$player.first_name>>?@@"
<<else>>
"@@.npc_manager;That out of the way, what do you want <<=$player.first_name>>?@@"
<</if>>
<<else>>
<<if ($npc_manager.affection+$npc_manager.affection)>($npc_manager.anger+5)>>
"@@.npc_manager;Yes, <<=$player.first_name>>, is there something I can help you with?@@"
<<elseif ($npc_manager.affection+$npc_manager.affection)>($npc_manager.anger)>>
"@@.npc_manager;Yes, <<=$player.first_name>>, is there something I can help you with?@@"
<<elseif ($npc_manager.affection+$npc_manager.affection+5)<($npc_manager.anger)>>
"@@.npc_manager;Is there something I can help you with, <<=$player.first_name>>?@@"
<<else>>
"@@.npc_manager;What do you want <<=$player.first_name>>?@@"
<</if>>
<</if>>
<br><br>
<<if $scene.talkfirstreward>>
You nod, but remain silent.<br>
<br>
"@@.npc_manager;Hmmm... the silent treatment. Well, go on, is there something you want to show me?@@"
<<else>>
You nod and say there's something you'd like to talk about.<br>
<br>
<<if $npc_manager.stage >=3>>
"@@.npc_manager;Well, out with it! I do not have all day, my schedule is as packed as your cute <<if $fetish.sissy>>sissy <</if>>hole should be.@@"
<<else>>
"@@.npc_manager;Well, out with it! I do not have all day, my schedule is a busy one, even this late in the day.@@"
<</if>>
<</if>>
<br><br>
<<include "afterWorkManagerThemes">>
<</if>>
</div>/*#
#desc: after work discussion topics with manager
#status: FINISHED 0.7.4.0
#*/
<<set $scene.returnPassageTheme = "event_manager_themes">>
<<set $scene.currentNpcTheme = "">>
<<set $scene.returnPassageList = "event_manager_themes_details">>
<<if setup.checkItemTypeWorn("cage") && !$scene.hasOwnProperty('keydecision')>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if $npc_manager.flags.hascagekey && !setup.checkItemInInventory(_keyId)>>
[<<moveTo "room_office_manager_key" "About the key..." 30>>]<br>
<</if>>
<<if setup.checkItemInInventory(_keyId)>>
<<if($now.getUTCDay()==5)>>
[<<moveTo "room_office_manager_chastity" "Give her the key and stay in chastity for the weekend." 30>>]<br>
<<else>>
[<<moveTo "room_office_manager_chastity" "Give her the key and stay in chastity for the night." 30>>]<br>
<</if>>
<</if>>
<</if>>
<<if $scene.talkfirstreward>>
<<if setup.getTotalValue('submission')>=5>>
<<if $player.sec_style.clothing.unisex == "" && setup.analyzeWornTags(['female','male','unisex']) != 'male'>>
[@@.link_locked;Your current attire has you too distracted to focus on submission, maybe once you're more adjusted to wearing such?@@]<br>
<<elseif $player.sec_style.submission.chastity != "strict">>
[<<moveTo "event_manager_stage1_end_reward_1" "Close the door behind you, remove your clothes, get on your knees, and kiss her heels." 180 "<<removeEverythingButUnderwear>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You don't feel submissive enough to go through with the whole kissing her feet stuff.@@]<br>
<</if>>
<</if>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeCategory
'npc_manager'
'event_manager_themes'
'event_manager_themes_details'
>>
<</if>>
[<<moveTo 'event_manager_talk_nothing' 'You have nothing to say, but waste her time anyway.' 180>>]<br>
[<<moveTo "room_office_after_work" "Leave." 60>>]/*#
#desc: ask manager for your chastity key back
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.submission.permanent_key != "">>
<<set $scene.angryReact = $npc_manager.anger > $npc_manager.affection || $player.sec_style.submission.permanent_key == "strict">>
<<if $scene.angryReact>>
<<set $scene.keydecision = "angryPermanent">>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<else>>
<<set $scene.keydecision = "permanent">>
<</if>>
<<elseif $npc_manager.stage > 1>>
<<if $npc_manager.flags.hascagekey>>
<<if !$npc_manager.flags.trustplayerwithkey>>
<<set $scene.keydecision = "no_trust_key">>
<<elseif setup.getItemObjFromType('cage').tags.includes("restrictedkey")>>
<<set $scene.keydecision = "restricted_key">>
<<else>>
<<if $npc_manager.affection>$npc_manager.anger>>
<<set $scene.keydecision = "give_key">>
<<elseif ($npc_manager.affection+5)<($npc_manager.anger)>>
<<set $scene.keydecision = "no_give_key">>
<<else>>
<<set $scene.thinking = true>>
<<set _diff = $npc_manager.anger-$npc_manager.affection>>
<<if Math.random()*5>_diff>>
<<set $scene.keydecision = "give_key">>
<<else>>
<<set $scene.keydecision = "no_give_key">>
<</if>>
<</if>>
<</if>>
<<if $scene.keydecision == "give_key">>
<<set $npc_manager.flags.hascagekey = false>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $npc_manager.flags.chastitydays = 0>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<addItem $scene.keyId>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<else>>
<<set $scene.keydecision = "manager_not_have">>
<</if>>
<<else>>
<<set $scene.keydecision = "stage1">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if you could have the key to your chastity device?<br>
<br>
<<switch $scene.keydecision>>
<<case "stage1">>
"@@.npc_manager;Give you the key? So impatient! This is exactly why I locked you up, what would be the point to give you back the key so soon?@@"
<<case "restricted_key">>
<<set _chastity = setup.getItemFromType("cage")>>
She shakes her head. "@@.npc_manager;Sorry, my dear, but we are far, far past that sort of thing. <<=setup.getItemName(_chastity)>> is perfect for you so giving you the key would be at best a distracting temptation and at worst a dangerous abrogation of my responsibility!@@"
<<case "give_key">>
<<if $scene.thinking>>
"@@.npc_manager;Hmm... let me ponder on this for a moment... yes, I think I can give this to you. But be wary. Such freedom is a great responsibility, I advise you not to... misuse it.@@"
<<else>>
"@@.npc_manager;Yes, of course <<=$player.first_name>>. I am true to my word, even though I would have hoped that you... well, I am sure you have a good reason. Here you go.@@"
<</if>>
<br><br>
You see the key resting against her bosom. She removes the chain from her neck and hands you the key.
<<case "no_give_key">>
<<if setup.getChastityLevel() == 5>>
"@@.npc_manager;Oh you silly thing! Did you forget that <<=setup.getItemTypeName('cage')>> is not just a mandatory part of your uniform, but also a mandatory aspect of your continued employment! Give you the key, what foolishness.@@"
<<elseif $scene.thinking>>
"@@.npc_manager;Hmm... let me ponder on this for a moment... no. I simply cannot disregard your misdeeds of late. You have to understand, this is not a chastisement. This is an aid, a way for you to experience some time without being at the mercy of your primal instincts.@@"
<<else>>
"@@.npc_manager;What, give you the key? Oh, I think not, you need to impress me FAR more than you have of late to prove you are deserving of such freedom.@@"
<</if>>
<br><br>
<<if setup.getChastityLevel() != 5>>
You see the key against her bosom. It might as well be in another dimension. So close yet so far, far away.
<</if>>
<<case "no_trust_key">>
She frowns. "@@.npc_manager;After what you did to "earn" that <<if setup.isCage()>>cage<<else>>belt<</if>>? No. You would need a sustained run of superb behaviour for me to consider trusting you again with such responsibility. I will think about it, perhaps <<if $now.getUTCDay()==5>>next Friday<<else>>at the end of the week<</if>>.@@"
<<case "manager_not_have">>
<<if $scene.severeCleaning>>
"@@.npc_manager;Your key? Oh my, it seems that I completely forgot about all that due to needing to shuffle you off for cleaning this morning! Let us call it all a wash and start over from the next time you show up to work — let us hope you do things properly then, hmm?@@"
<<else>>
She shakes her head, looking slightly annoyed. "@@.npc_manager;Your key? You know I do not have it. More the pity, really as I can scarcely think of someone more qualified to... keep you under control.@@"<br>
<br>
You gulp and apologise for such a foolish request.
<</if>>
<<case "angryPermanent">>
Her gaze narrows. "@@.npc_manager;What? You <<if ["strict", "forced"].includes($player.sec_style.submission.permanent_key)>>lost<<else>>gave up<</if>> control of your key... forever. And when I say forever, I MEAN forever. Do not ask me such foolish thing. I take being entrusted as your keyholder very seriously, and I would never betray that trust, do not bother me with this again.@@"<br>
<br>
<<printThought "Shit, she really is serious about this being permanent...">>
<<case "permanent">>
<<if ["enthusiast", "obedient"].includes($player.sec_style.submission.permanent_key)>>
She half frowns. "@@.npc_manager;Return your key? No, no, you asked for me to hold on to it permanently. And I am a woman of her word. Your surrender of control was as delicious as it was delightful, and I would never betray that trust by abandoning my responsibilities to keep you helplessly locked.@@"
<<elseif ["voluntary","money"].includes($player.sec_style.submission.permanent_key)>>
She smiles in amusement. "@@.npc_manager;Oh my sweet, silly pet... you gave that up... forever. And with me, well, forever is forever. No, you have entrusted me to be your keyholder and I would never betray that trust by surrendering control.@@"
<<else>>
She smiles as she shakes her head. "@@.npc_manager;After what you did? No, no, you have proven yourself QUITE unable to handle such responsibility. Your key will remain safely, securely, and permanently where it belongs — out of your reach, and in my possession.@@"
<</if>>
<br><br>
<<printThought "She really was serious about this being permanent...">>
<<default>>
ERROR: unhandled key decision: <<=$scene.keydecision>>
<</switch>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<include "afterWorkManagerThemes">>
<</if>>
</div>/*#
#desc: apply effects based on manager happiness and your chastity status
#status: FINISHED 0.4.0.0
#*/
<<set $scene.chastity_happy = 'no'>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if ($npc_manager.affection+$npc_manager.affection)>$npc_manager.anger>>
<<set $scene.chastity_happy = 'yes'>>
<<if $now.getUTCDay()==5>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'submission' 6 'terrible' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' .25>>
<<applyExperience 'submission' 6 'very' $SEEN_FRIEND>>
<</if>>
<<elseif ($npc_manager.affection+$npc_manager.affection+5)<($npc_manager.anger)>>
<<if $now.getUTCDay()==5>>
<<decrementEmotion 'anger' 'npc_manager' 4>>
<<applyExperience 'submission' 6 'terrible' $SEEN_FRIEND>>
<<else>>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<applyExperience 'submission' 6 'very' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set $scene.chastity_happy = 'indifferent'>>
<<if $now.getUTCDay()==5>>
<<decrementEmotion 'anger' 'npc_manager' 2>>
<<applyExperience 'submission' 6 'terrible' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' .5>>
<<else>>
<<decrementEmotion 'anger' 'npc_manager' .5>>
<<applyExperience 'submission' 6 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' .125>>
<</if>>
<</if>>/*#
#desc: ask manager to hold on to your chastity key for you
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.chastity_orgaffection = $npc_manager.affection>>
<<set $scene.badsissy1 = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_surrendered')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_surrendered'>>
<</if>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem $scene.keyId>>
<<set $scene.cage_locked = $inventory[setup.getItemFromType("cage")].status.lock>>
<<if !$scene.cage_locked>>
<<set _cageId = setup.getItemFromType("cage")>>
<<manipulateItem _cageId "lock" true>>
<</if>>
<<set $npc_manager.flags.chastitydays += 1>>
<<include "room_office_manager_chastity_calc_affinity">>
<<if ( ($scene.chastity_happy == 'yes') || ($scene.chastity_happy == 'no') )&& !$npc_manager.flags.unlocked_badsissy1>>
<<set $scene.badsissy1 = true>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_1'
0
'event_manager_theme_badsissy1'
true
>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.chastity_orgaffection == 0>>
You're kind of nervous to ask <<=setup.getNpcName('npc_manager', 'formal')>>. Despite this fact she seems to sense that you're in some kind of predicament.<br>
<br>
<<if $npc_manager.flags.trustplayerwithkey>>
"@@.npc_manager;Is this about your chastity? You should not worry too much about it, as long as you follow my rules there will not be any problems.@@"<br>
<br>
You hesitate for a moment, then take the key out of your pocket and hand it to her. For a moment there's a puzzled expression on her face until you reveal to her that you'd like her to keep the key
<<else>>
"@@.npc_manager;Is this about the key to your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>? All you have to do is to ask for it, if you truly want it. That is, if you deserve it.@@"<br>
<br>
You hesitate for a moment, but then reveal that you'd like her to keep the key
<</if>>
<<else>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if it's okay to leave the key with her
<</if>>
<<if $now.getUTCDay()==5>>
over the weekend,
<<else>>
until tomorrow evening,
<</if>>
to hone your skills of resisting your primal urges.<br>
<br>
<<switch $scene.chastity_happy>>
<<case 'yes'>>
<<if $scene.chastity_orgaffection == 0>>
"@@.npc_manager;Oh my, <<=$player.first_name>>. Yes. Yes, of course. I knew that you would see the advantages of our training. Oh, we are making progress much faster then anticipated. Well, then,@@"
<<else>>
"@@.npc_manager;Yes, of course. I am happy that you are still trying to improve yourself. Very good. Very good indeed! Well, then,@@"
<</if>>
she adjusts her decolletage, making the key slide deeper between her bosom,
<<if $now.getUTCDay()==5>>
"@@.npc_manager;Do not worry your pretty head. I will keep this, and thus, you safe until next Monday.@@"
<<else>>
"@@.npc_manager;Do not worry your pretty head. I will keep this, and thus, you safe until tomorrow.@@"
<</if>>
<<if !$npc_manager.flags.good_girl.got_sissy_underwear>>
<br><br>
"@@.npc_manager;To show how pleased and proud of you I am, I want to give you a present.@@" Your eyes light up, but she teasingly continues on. "@@.npc_manager;So eager! I love it, <<if $npc_manager.stage == 1>>but, to be perfectly honest, I was not quite prepared for such enthusiasm, so you shall have to wait for next week to get your present... a little extra incentive to have you out of bed and at your desk all bright and early, hmm?<<else>>but no... I think this would be best if I gave it to you in the morning, an extra reward for you taking such a bold step forward into chastity and control<</if>>. Have a lovely evening looking forward while you look forward to a little something extra <<if $npc_manager.stage == 1>>in the near future<<else>>during your next inspection<</if>>.@@"
<<elseif $scene.badsissy1>>
<br><br>
"@@.npc_manager;You will be an excellent <<if $fetish.sissy>>SISSI <</if>>Secretary one day. Just... sometimes I wish you would mess up just a little bit, so I could spank that cute butt of yours more often.@@"
<br><br>
<<printThought "Hmmm... maybe I should be a bad <<if $fetish.sissy>>sissy<<else>>girl<</if>>... to be a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Does that make sense? I think that makes sense. Somehow...">>
<</if>>
<<case 'indifferent'>>
<<if $scene.chastity_orgaffection == 0>>
"@@.npc_manager;Yes, of course. I see you are finally starting to take your training seriously. Maybe you are not a lost cause at all. I will take this as a token of your dedication towards advancing things further. Well, then,@@"
<<else>>
"@@.npc_manager;Of course. I see that your behaviour finally starts to be more in line with the way it is supposed to be. I am happy that you are still trying to improve and I will take this as a token of your eagerness to better yourself! Well, then,@@"
<</if>>
she adjusts her decolletage, making the key slide deeper between her bosom,
<<if $now.getUTCDay()==5>>
"@@.npc_manager;I will simply keep this for you until next Monday.@@"
<<else>>
"@@.npc_manager;I will simply keep this for you until tomorrow.@@"
<</if>>
<<if !$npc_manager.flags.good_girl.got_sissy_underwear>>
<br><br>
She pauses her expression flickering as if taking pity on you. "@@.npc_manager;That said, I suppose it would be best to reward this offering so as to, hopefully, engender future improvements in your deportment. Yes... I have just the thing, look forward to a little bonus during your next inspection.@@"
<</if>>
<<case 'no'>>
"@@.npc_manager;Not that you would deserve to keep it in the first place. A disobedient little <<if $fetish.sissy>>sissy<<else>>girl<</if>> such as yourself should be locked away until you learn the true and complete meaning of the word obsequiousness.@@" She adjusts her decolletage, making the key slide deeper between her bosom,
<<if $now.getUTCDay()==5>>
"@@.npc_manager;I will hold onto this until next Monday.@@"
<<else>>
"@@.npc_manager;I will hold onto this until tomorrow.@@"
<</if>>
<br><br>
<<if $scene.badsissy1>>
"@@.npc_manager;A <<if $fetish.sissy>>bad sissy<<else>>naughty brat<</if>> such as yourself should be punished more frequently.@@"<br>
<br>
<<printThought "Hmmm... maybe I should be a bad <<if $fetish.sissy>>sissy<<else>>girl<</if>>!">>
<</if>>
<<if !$npc_manager.flags.good_girl.got_sissy_underwear>>
<br><br>
She pauses her expression flickering as if taking pity on you. "@@.npc_manager;That said, I suppose it would be best to reward this offering so as to, hopefully, engender future improvements in your deportment. Yes... I have just the thing, look forward to a little bonus during your next inspection.@@"
<</if>>
<</switch>>
<br><br>
"@@.npc_manager;Oh, one last thing, let me check that things are properly locked. A bit silly having the key to something that is not secured, hmm?@@"<br>
<br>
<<if $scene.cage_locked>>
Pulling your clothes aside, you reveal the locked and secured <<if setup.isCage()>>cage<<else>>chastity belt<</if>>.<br>
<br>
<<if $now.getUTCDay()!=5>>
"@@.npc_manager;Lovely, simply lovely. This is exactly how I like you to be and will serve you well until tomorrow morning.@@"
<<else>>
"@@.npc_manager;Lovely, simply lovely. This is exactly how I like you to be and will serve you well all weekend long!@@"
<</if>>
<<else>>
Pulling your clothes aside, you reveal your <<if setup.isCage()>>cage<<else>>belt<</if>> and she frowns before reaching down the click the lock closed.<br>
<br>
"@@.npc_manager;Tsk, tsk, so forgetful! What is the point in <<if setup.isCage()>>cageing yourself<<else>>wearing a chastity belt<</if>> and giving me the key if you are not locked up! It is a good thing I checked, do you not agree? Oh, I cannot imagine how upset you would have been to get home and, in a moment of weakness, "accidentally" let yourself out! You should thank me for being so diligent!@@"<br>
<br>
Blushing in embarrassment, you nervously thank her for ensuring that you were "properly" locked away.
<</if>>
<br><br>
[<<moveTo "room_office_after_work" "Bid your farewell and leave the office." 30>>]
</div>/*#
#desc: talk to manager after work about "nothing"
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.first_time = false>>
<<if $player.flags.idling == false>>
<<set $player.flags.idling = true>>
<<set $scene.first_time = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.first_time>>
"@@.npc_manager;<<=$player.first_name>>,@@" she states, her voice less hard and commanding than you're used to. "@@.npc_manager;I know that I can be... intimidating, from time to time.@@"<br>
<br>
She rises from her desk and approaches you. With how strong her presence always is, you're a bit surprised to realise that she is actually smaller than you, shorter, too, if it wasn't for her heels.<br>
<br>
"@@.npc_manager;And after all you have been through in the last few days I suppose I cannot really blame you for this... confusion. And even though I did all these, well, a lesser person might say... immoral? Things to you, the mandatory disciplinary measures, your homework... after all that, you are still here.
<<if $npc_manager.trigger.stage1_happy>$npc_manager.stagevalues[1].penisincident>>
And, more than that, I have the feeling you are starting to see things my way as well, given how behaved you have been lately.
<<else>>
And even though you are a bit feisty and disobedient, you have persevered.
<</if>>
@@"<br>
<br>
"@@.npc_manager;Of course, this just makes my training you all the more important. I know it can be a bit overwhelming, but believe me when I say that this is necessary to make sure I can trust you with some very important tasks in the near future. Just think of this as building a foundation, a key requirement to a sturdy future, and it lays the groundwork — pun intended, for me possibly recommending you for some of the more desired re-education courses our company offers. All you have to do is simply follow my orders. Sometimes as my subordinate, sometimes as my slave and sometimes as the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are going to be. The latter two go hand in hand, of course.@@"<br>
<br>
<<if (setup.getTotalValue('submission')>5)>>
You gulp audibly. But you are not sure if it's a gulp of anxiety or excitement. Becoming her slave? Not the worst fate you could imagine.
<<if setup.getTotalValue('feminization')>=5>>
And becoming a <<if $fetish.sissy>>sissy<<else>>girl<</if>>? You have been dressing up a lot lately, so this can hardly be called a "phase" anymore, maybe it all is working towards such an end goal.
<<else>>
You're not sure about that whole <<if $fetish.sissy>>sissy<<else>>girl<</if>> thing though.
<</if>>
<<else>>
You gulp audibly. What have you gotten yourself into? Being her subordinate you get, but slave<<if $fetish.sissy>> or sissy<</if>>?
<<if $player.flags.contract.read > 0>>
<<if $player.flags.contract.understoodcomplete>>
But you've read your contract and... that's pretty much what you've signed up for. At least, so long as that is <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desire. Either you comply or you have to quit within the probation period, which leaves you about <<=$player.work.qualifyingperiod>> days. After that you have to give at least 3 months notice, and if you do not work as intended within that time, they can "repurpose" you, whatever that means.
<<else>>
That's not what you signed up for, was it? You curse the fact that you are still struggling to understand the contract you so blindly signed.
<</if>>
<<else>>
<<if $player.flags.contract.understoodcomplete>>
But you've read your contract and... that's pretty much what you've signed up for. At least, so long as that is <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desire. And now that you are out of the probationary period... well, per the document you signed any change in "employment status" requires at least 3 months notice, and if you do not continue to meet expectations in the meantime, they can "repurpose" you, whatever that means.
<<else>>
Well, yes, that seems pretty apparent by this point, you idly wonder if that was always the case, perhaps you should go back and read the contract you so ignorantly signed?
<</if>>
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Now, since we finally talked about "nothing," you are free to leave. But one more thing, <<=$player.first_name>>, if you idle around in my office one more time without any good reason, I will make your butt wish you had a topic to talk about! And if you think that kind of disciplinary measure is too mundane, well... I can always get more... creative, that clear? Good. Then be a darling and close the door behind you when you leave.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 30>>]
<<else>>
<<if (setup.getTotalValue('bdsm')>3)||(setup.getTotalValue('submission')>=5)>>
You have been warned about idling before, but this time you're doing it on purpose. You enter <<=ps(setup.getNpcName('npc_manager', 'formal'))>> and knock over a glass filled with pencils. Popping up you let out an innocent "@@.pc;Oops.@@"<br>
<br>
<<printThought "Did I do that?">><br>
<br>
A devilish grin blossoms on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face, followed by a sinister chuckle.<br>
<br>
"@@.npc_manager;Ah, to hell with it, I really could use something to let off some steam. <<=$player.first_name>>, get that well cushioned butt of yours over here at once, and take off everything besides your underwear!@@" she commands while sliding open her drawer of paddles.<br>
<br>
[<<moveTo 'event_manager_talk_nothing_2' 'Take off your clothes.' 600>>]
<<else>>
You have been warned before that <<=setup.getNpcName('npc_manager', 'formal')>> hates idling. You quickly ponder your options.
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
You quickly think up a technically useful, but harmless question you could ask related to workflow and procedures.
<<else>>
But your porous mind is unable to hold a thought long enough to come up with anything useful.
<</if>>
<br><br>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
[<<moveTo 'event_manager_talk_nothing_1_talk' 'Ask your questions.' 300>>]<br>
[<<moveTo 'event_manager_talk_nothing_1_nothing' 'Do nothing and see what happens.' 180>>]
<<else>>
[<<moveTo 'event_manager_talk_nothing_1_nothing' "Stand around looking like you've forgotten why you got in here in the first place." 180>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: PC asks a question about work
#status: FINISHED 0.4.0.0
#ignore_spell: wh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_manager.flags.talkednothing>>
<<set $npc_manager.flags.talkednothing = true>>
<<set $scene.first_time = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.first_time>>
Standing there all dressed up with nowhere to go you bite your lip and start to think.<br>
<br>
<<printThought "Oh god. What am I doing? She already warned me, and I am still here, idling in her office...">><br>
<br>
"@@.npc_manager;Yes, <<=$player.first_name>>. What is it?@@"<br>
<br>
You blankly stare into the room, everything starting to fade into the background, but you're unwilling, or maybe just unable to refocus your gaze.<br>
<br>
"@@.npc_manager;Hello? <<=$player.first_name>>... what do you want?@@"<br>
<br>
Still no response from you. You just stand there and realise the futility of your situation, paralysed, stuck in the moment unable to move forward or back. Unhappy with your unresponsiveness, <<=setup.getNpcName('npc_manager', 'formal')>> rises from her chair, walking, or rather angrily stalking towards you. Standing directly before you she waves her hand in front of your eyes to see if you're even reacting to anything.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, what is going on? Answer. Now.@@"<br>
<br>
Well, forward it is. You faintly whisper "idling." She takes a small step backwards, her expression puzzled.<br>
<br>
"@@.npc_manager;Wh... I beg your pardon?@@"<br>
<br>
You repeat the word, this time with at a normal volume, though your voice sounds oddly high. That one seemed to get through to her. A devilish grin appears on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face, followed by a sinister laugh.<br>
<br>
"@@.npc_manager;Ah, to hell with it, I really could use something to let off some steam. <<=$player.first_name>>, get that well cushioned butt of yours over here at once, and take off everything besides your underwear!@@" she commands while going back to her desk to pull out a paddle.
<<else>>
Standing there all dressed up with nowhere to go you bite your lip and start to think to yourself.<br>
<br>
<<printThought "Well, this seems familiar. Here we go again">><br>
<br>
"@@.npc_manager;Yes, <<=$player.first_name>>. What is it?@@"<br>
<br>
Again, you space out, thinking there has to be an easier way to gain her attention. Is that really what you're doing here? Trying to get her attention?<br>
<br>
"@@.npc_manager;Hello? <<=$player.first_name>>... oh. I see where this is going.?@@" she narrates towards you while getting up, displaying a brilliant while devilish smile. Getting up from her enormous office table , circling around you like an predator, ready to strike at any given moment, she gets closer to you, and you think you can almost feel her hot breath on your neck, as she whispers into your ear, "@@.npc_manager;You know <<=$player.first_name>>, if you really need more... discipline in your life, all you have to do is ask. You surely gain a fair bit of humility and experience from it, something we both can benefit from. As long as it does not interfere with my duties toward the company, I am here to provide you with as much discipline as you can sustain. And more after that. And there is a lot more discipline where that came from. Of course if you do not yet feel ready I might humor your childish charade... for a short while, but make no mistake about this: my forbearance is fairly limited.@@"<br>
<br>
She heaves a sigh and continues.<br>
<br>
"@@.npc_manager;But you... came at the right spot at the right time. I really could use something to let off some steam. <<=$player.first_name>>, get that well cushioned butt of yours over here at once, and take off everything besides your underwear!@@" she commands while going back to her desk to pull out a paddle.<br>
<br>
<</if>>
<br><br>
[<<moveTo 'event_manager_talk_nothing_2' 'Take off your clothes.' 660>>]
</div>/*#
#desc: PC asks a random question about work
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'smart' 5 'normal' $ALONE>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You manage to come up with a few questions relevant to your job. Luckily for you, <<=setup.getNpcName('npc_manager', 'formal')>> doesn't figure out that you came in here with no idea what to do at all, and fills in some of your missing knowledge about the company procedures. You feel like this might help you with your work in the future, though you can't help but see a hint of disappointment in her face, like she expected you to do something less mundane. After a short while, you finish your talk.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: punished for talking to manager about "nothing" after work
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<useClothSetPush 'talk_nothing'>>
<<removeEverythingButUnderwear>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.inside = false>>
<<set $scene.talkNothing = {}>>
<<set $scene.talkNothing.cum = false>>
<<set $scene.talkNothing.caged = false>>
<<set $scene.talkNothing.panties = "">>
<<if setup.getItemTypeName("cage")!="">>
<<set $scene.talkNothing.caged = true>>
<</if>>
<<if $player.timebased.horny > 20>>
<<set $scene.talkNothing.cum = true>>
<<if setup.getItemTypeName("cage")=="">>
<<playerOrgasm>>
<<else>>
<<set $player.timebased.horny = Math.round($player.timebased.horny/2)>>
<</if>>
<<set $scene.talkNothing.panties = setup.checkTopBodySlot('penis','bottom')>>
<<if $scene.talkNothing.panties != "">>
<<changeItemStatus $scene.talkNothing.panties 'cumsoaked' '["set",100]'>>
<</if>>
<<else>>
<<changeHorny 20>>
<</if>>
<<decrementEmotion 'anger' 'npc_manager' 2>>
<<applyExperience 'bdsm' 4 'normal' $SEEN_FRIEND>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'accepting')>>
<<setThreshold 'submission' 'submissive_secretary' 'accepting'>>
<</if>>
<<applyExperience 'submission' 3 'normal' $SEEN_FRIEND>>
<<decrementEmotion 'anger' 'npc_manager' 5>>
<<set $player.inside = true>>
<<if $player.makeup.template!="">>
<<changeMakeupMessed 100>>
<</if>>
<</if>>
<<if setup.checkVisibleClothingTag('female') > 50>>
<<set _tmpSissy = true>>
<<else>>
<<set _tmpSissy = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Again you stand in your <<=ps(setup.getNpcName('npc_manager', 'title'))>> office wearing only your <<if _tmpSissy>>lingerie<<else>>underwear<</if>>. You do your best not to blush like a ripe tomato as <<=setup.getNpcName('npc_manager', 'formal')>> walks towards you. In her hand she is wielding the familiar pink leather paddle that she appears to prefer for disciplining her<<if $fetish.sissy>> "SISSI Secretary." <<else>> Secretary.<</if>><br>
<br>
"@@.npc_manager;<<=$player.first_name>>, my dear <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@" <<=setup.getNpcName('npc_manager', 'formal')>> whispers in your ear, leaning close.
<<if setup.getTotalValue('feminization')>5 && (setup.getTotalValue('submission')>5||setup.getTotalValue('bdsm')>0)>>
The word <<if $fetish.sissy>>SISSI<<else>>girl<</if>> makes you shiver in anticipation of what's coming next.
<</if>>
<br><br>
There are mere centimetres separating you, her heat and scent almost overpowering. Though you want nothing more, you find yourself unable to move the short distance to actually touch her. Waiting for a few more moments as you tremble she finally steps away from you, continuing to talk at a more normal volume.<br>
<br>
"@@.npc_manager;Do you have anything to say, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>? I have warned you repeatedly that I will not tolerate such insolent behaviour, but alas, here we are, again. You are a bad <<if $fetish.sissy>>sissy<<else>>girl<</if>> and bad <<if $fetish.sissy>>sissies<<else>>girls<</if>> deserve, nay, NEED, to be punished. Oh, I am going to destroy that cute little booty of yours. By the time I am through you will be unable to sit for the next two days.@@" As she talks, she takes a few practice swings with the paddle, the implement making a soft whooshing sound as it pushes air out of the way. The whole time she never deviates from staring you down.<br>
<br>
<<if setup.getTotalValue('submission')>5 && setup.getTotalValue('bdsm')>0>>
<<printThought "Oh god. I am getting so horny!">><br>
<br>
You don't even try to resist, giving in almost immediately to her dominance over you. Diverting from her gaze, you instead look down in submissive deference, and staring instead at her polished black heels. Meekly, you beg her for forgiveness, while confessing that you have been a bad <<if $fetish.sissy>>sissy<<else>>girl<</if>> and deserve to be punished. The devilish grin on her face is not a sign of mercy or grace. That's okay, you don't deserve any, you deserve only her firm hand, and her firm hand, she will give you.<br>
<br>
"@@.npc_manager;Very good. You see the errors of your way. Very well, my position as your <<=setup.getNpcName('npc_manager', 'title')>> demands I swiftly correct your every blunder and flaw. Things are so much better now that you properly know your place, as a good little <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Isn't it, <<=$player.first_name>>? Are you a good little <<if $fetish.sissy>>sissy<<else>>girl<</if>>? Hmm?@@"<br>
<br>
You nod without making eye contact. She puts a finger under your chin, gently lifting it upwards.<br>
<br>
"@@.npc_manager;No, no, no <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Look me in the eyes and tell me what you are!@@"<br>
<br>
You look into her eyes and say that you are a <<if $fetish.sissy>>sissy<<else>>girl<</if>>, your voice quivering.<br>
<br>
"@@.npc_manager;Yes. This is what I have waited for. Very well, <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Bend over the desk, and make haste. My paddle is craving <<if $fetish.sissy>>sissy<<else>>your<</if>> buttocks!@@"
<<else>>
You have no idea how to react and remain silent.<br>
<br>
"@@.npc_manager;Cat got your tongue? Feeling a bit taciturn, perhaps? No matter, I will take as long as it takes training you until you finally understand that it is in your best, and only, interest to serve as my cute, obedient little <<if $fetish.sissy>>sissy<<else>>girl<</if>>! You know what to do!@@"
<</if>>
<br><br>
You walk in front of the desk and bend over, the vulnerable position exposing your butt for your <<=setup.getNpcName('npc_manager', 'title')>>. For a moment the room plunges into near total silence. You can only hear the pounding of your heart and your shallow breaths and then a loud swinging sound followed by an even louder SMACK of leather on your booty. You gasp, still trying to endure the pain, but failing miserably as it seems much stronger than the last time.<br>
<br>
"@@.npc_manager;You know, with a backside like this, you never had a chance. Your bottom was made for spanking.@@"<br>
<br>
<<if (!setup.checkItemTypeWornTag("stockings","pantyhose") && setup.checkItemTypeWornTag("panties","thong")) || $scene.talkNothing.panties == "">>
Your pained gasp only seems to encourage <<=setup.getNpcName('npc_manager', 'formal')>> as the next strike hits before you can even catch your breath. You gasp for air, but another blow impacts your exposed booty, and there is nothing between you and the paddle to soften the blow.
<<else>>
Your pained gasp only seems to encourage <<=setup.getNpcName('npc_manager', 'formal')>> as the next strike hits before you can even catch your breath. You gasp for air, but another blow impacts your exposed booty and your underwear does nearly nothing to soften the blow.<br>
<br>
Seeing your predicament, <<=setup.getNpcName('npc_manager', 'formal')>> leans down to your level, next to your ear, whispering, "@@.npc_manager;Oh, I am so sorry, did that hurt? Here, let me help you,@@" and shows you her helpful side by
<<if setup.checkItemTypeWornTag("stockings","pantyhose")>>
pulling down your <<=setup.getItemTypeName("stockings")>>
<<if !setup.checkItemTypeWornTag("panties","thong")>>
and your <<=setup.getItemTypeName("panties")>>
<</if>>
just far enough to free your backside.
<<elseif setup.checkItemTypeWorn("panties") && !setup.checkItemTypeWornTag("panties","thong")>>
pulling down your <<=setup.getItemTypeName("panties")>> just far enough to free your backside.
<</if>>
<br><br>
You feel goose-bumps blossoming on your exposed rear as you tremble in anticipation, even the scant protection of your underthings no more.<br>
<br>
<</if>>
Your yelping alternates with the smacking sound of the paddle, uniting to form a duet of agony and pleasure.<br>
<br>
Your face turns bright pink and heavy tears run down your face
<<if $player.makeup.template!="">>
spoiling your makeup,
<</if>>
while you try to withstand the rising pain. Meanwhile
<<if $player.body_ref.penis>>
your <<getWordMyPenis>>
<<if setup.checkItemTypeWorn("cage")>>
twitches within the <<=setup.getItemTypeName("cage")>>.
<<else>>
is getting harder.
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
you drip beneath your belt.
<<else>>
you thighs feel damp with excitement.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue('submission')>5 || setup.getTotalValue('bdsm')>3>>
<<printThought "Spank me like the naughty <<if $fetish.sissy>>sissy<<else>>girl<</if>> I am!">>
<<else>>
<<printThought "Oh no, if this continues, will I become a submissive <<if $fetish.sissy>>sissy<<else>>girl<</if>> for real?">>
<</if>>
<br><br>
<<if $scene.talkNothing.cum>>
You feel like being struck by lightning after a few dozen strokes on your booty. You've long given up on counting them, since you cannot concentrate on anything besides the pain and the pleasure bounding through your body with each thundering heartbeat.
<<if $player.body_ref.penis>>
<<if $scene.talkNothing.caged>>
Even though your <<getWordMyPenis false>> is safely locked within its jail each new blow has you straining against your prison, pushing
<<else>>
Your <<getWordMyPenis>> twitches with enjoyment with each new blow, pushing
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
You may be safe and secure under your chastity belt, but that doesn't stop you from dripping
<<else>>
you're soon dripping with excitement
<</if>>
as each blow pushes
<</if>>
you closer and closer to the edge. Finally, as the paddle lands against your buttocks once again your mind shatters in a moment of pure pleasure and antagonising agony
<<if $player.body_ref.penis>>
<<if $scene.talkNothing.caged>>
as a big load of <<getWordCum>> pours out of your <<if setup.isCage()>>caged<<else>>belted<</if>> <<getWordMyPenis false>>
<<else>>
as you spray a big load of <<getWordCum>>
<</if>>
<<else>>
as you gush
<</if>>
<<if $scene.talkNothing.panties!="">>
into your <<=setup.getItemName($scene.talkNothing.panties)>>.
<<else>>
onto the floor.
<</if>>
You turn your head to glance over your shoulder. From the look on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face, she knows exactly what you just did. This fact only serves to humiliate you even further.
<<else>>
Your booty feels like you've been stung by a swarm of angry hornets. Before long your ass is like a French flag — blue, white, red and ready to surrender. You've long given up on counting blows, unable to concentrate on anything besides the pain you feel. Despite it all, you stop just shy of
<<if $scene.talkNothing.panties!="">>
cumming into your <<=setup.getItemName($scene.talkNothing.panties)>>,
<<else>>
orgasm,
<</if>>
though you are horny as hell.<br>
<br>
"@@.npc_manager;Well, someone certainly looks eager.
<<if $scene.talkNothing.caged>>
Good thing, that we locked you away, nice and safe and secure. Isn't that right, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?
<<else>>
You had better put that... thing away, before I take a few shots at your front side to bring it in line, <<=$player.first_name>>.
<</if>>
@@"
<</if>>
<br><br>
<<if $currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task')>>
<<if setup.checkItemOwned('manager_paddle_broken') || setup.checkItemOwned('manager_paddle_repaired')>>
She pauses and gives your sore bottom a gentle massage. "@@.npc_manager;I have to say, this new steel-core paddle is such a delight to wield, I should thank you for breaking the old one and giving me an excuse to upgrade!@@"<br>
<br>
<<else>>
She pauses and takes a deep breath. "@@.npc_manager;My, my. I really got into it that time! If I keep needing to administer punishments like that, I might well end up breaking this paddle!@@"<br>
<br>
<<printThought "Wait, if it breaks maybe she'd let me take it? Then I'd just have to figure out a way to get it repaired...">><br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_talk_nothing_2_bonus_1" "Harder, Mistress..." 120>>]<br>
<<else>>
[@@.link_locked;You lack the mental will to request any more punishment.@@]<br>
<</if>>
<<else>>
[@@.link_locked;My bum-bum is already on fire, no way can I endure having her break a paddle over my rear!@@]<br>
<</if>>
<</if>>
[<<moveTo "room_office_after_work" "Put on your clothes and leave the office." 270 "<<useClothSetPop 'talk_nothing'>> <<set $player.cutscene.lockinventory = false>>">>]
<<else>>
She takes a deep breath. "@@.npc_manager;My, my, really got into it that time! if I keep needing to administer punishments like that, I might well end up breaking this paddle!@@"<br>
<br>
It takes you a while, but you manage to recover from the spanking. You try to catch your breath while <<=setup.getNpcName('npc_manager', 'formal')>> cleans the paddle and puts it back into the drawer.<br>
<br>
"@@.npc_manager;Would you please put your clothes back on and leave my office, <<=$player.first_name>>? Whatever order you like. As much as I love to look at the art I left on your behind, it is more than a little distracting and I still have work to finish today. Thank you, and good night.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Put on your clothes and leave the office." 270 "<<useClothSetPop 'talk_nothing'>> <<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: be bad to get bonus paddling
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'talk_nothing'>>
<<removeEverythingButUnderwear>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your bottom may already be smarting, but, thinking about needing her paddle to complete <<=ps(setup.getNpcName('npc_janitor', 'first'))>> requested "look" you wiggle your butt and tease <<=setup.getNpcName("npc_manager","formal")>> that, while a spanking is a lovely first course, you're a bad, bad <<if $fetish.sissy>>sissy<<else>>girl<</if>> who really deserves a paddling...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> was already in a pleasant mood, but now she grins as she reaches into a desk drawer for the familiar "For <<if $fetish.sissy>>SISSI <</if>>Secretary Use" paddle. "@@.npc_manager;You make a good point. This is, after all, the perfect tool for correcting work-place errors... remove your clothes... down to the underwear, I think. I want you to REALLY feel this.@@"<br>
<br>
Your heart beating faster, you do as commanded and wiggle your butt in further invitation. <<=setup.getNpcName("npc_manager","formal")>> responds by landing a hard blow against your sore and sensitive bottom that makes you gasp, and makes <<=setup.getNpcName("npc_manager","formal")>> smile.<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_talk_nothing_2_bonus_1" "Harder, Mistress..." 120>>]<br>
<<else>>
[@@.link_locked;You lack the mental will to request any more punishment.@@]<br>
<</if>>
<<else>>
[@@.link_locked;My bum-bum is already on fire, no way can I endure having her break a paddle over my rear!@@]<br>
<</if>>
[<<moveTo "room_office_after_work" "Put on your clothes and leave the office." 270 "<<useClothSetPop 'talk_nothing'>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask manager for more spankings in hopes of breaking paddle
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Harder? My, my look who has blossomed into a real pain slut.@@" She strokes your bare bottom, the mere brush of her fingers setting off sparks that has you hiss in pain.<br>
<br>
"@@.npc_manager;Aww, does it hurt, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>? I think that will do for today, I would not want to break anything, after all.@@"<br>
<br>
<<printThought "If she's going to break the paddle, I'm going to have to convince her to go all out, but can I survive that?">><br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_manager_talk_nothing_2_bonus_2" "Please, Ma'am, I want some more..." 120>>]
<<else>>
[@@.link_locked;You lack the mental will to credibly request any more punishment.@@]
<</if>>
</div>/*#
#desc: convince manager to spank you harder to break paddle
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.count = 1>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Well! Since you asked so nicely...@@" Glancing over your shoulder you watch her stretch her shoulders, looking almost like a baseball player warming up for the plate...<br>
<br>
<<printThought "Oh no, what did I do?">><br>
<br>
"@@.npc_manager;Brace yourself, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@" Is your last warning before the paddle comes down.<br>
<br>
Like a pink blur it practically sings through the air, impacting your rear with such force that the massive desk you're leaning against actually rocks forward slightly. You cry out in pain as she pauses. "@@.npc_manager;Well, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>? I thought this was what you wanted, just say the word and I will stop otherwise... start counting.@@"<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_talk_nothing_2_bonus_3" "One." 120>>] <<hint $options "You're in so much pain already asking for more is going to take an act of will.">>
<<else>>
[@@.link_locked;You lack the mental will to endure any more punishment.@@]
<</if>>
</div>/*#
#desc: endure spanking long enough for paddle to break
#status: RELEASED 0.6.0.0
#ignore_spell: l
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.broken = random(5) < $npc_manager.flags.paddleCount>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'bdsm' 15 'little' $SEEN_FRIEND>>
<<if !$scene.broken>>
<<set $npc_manager.flags.paddleCount += 1>>
<<spendWillpower 1>>
<<else>>
<<addItem 'manager_paddle_broken'>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.broken>>
There is a loud CRACK as the blow lands differently.<br>
<br>
"@@.npc_manager;Oh my.@@"<br>
<br>
You look back to see her standing with the paddle cracked in half, the leather "padding" all that is holding it together as the wooden core now forms an L.<br>
<br>
"@@.npc_manager;Well! Call you Miss Iron Ass! I shall have to invest in something... sturdier for the future. As for you well... here.@@" She places the paddle as you catch your breath and recover from the hard punishment. "@@.npc_manager;Call it a souvenir... and a little memento remember to be a bit more behaved in the future, hmm?@@"<br>
<br>
Scooping up your prize you wince as you fix your clothes and hurry on your way as she smiles after you.<br>
<br>
[<<moveTo "company_lobby" "Dress and leave." 300 "<<useClothSetPop 'talk_nothing'>>">>]
<<elseif setup.getWillpower() > 0>>
Another hard blow impacts your rear and you cry out, barely managing to reply with the count.<br>
<br>
"@@.npc_manager;Aww, has my sweet pain-slut had enough? Or do you think you can handle another one?@@"<br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_manager_talk_nothing_2_bonus_3" "Thank you, Mistress, may I have another?" 120>>] <<hint $options "You're in so much pain already asking for more is going to take an act of will.">><br>
<<else>>
[@@.link_locked;You lack the mental will to request any further punishment.@@]<br>
<</if>>
[<<moveTo "event_manager_talk_nothing_2_bonus_fail" "This is too much, throw in the towel." 120>>]
<<else>>
Another titanic blow lands across your rear and you throw in the towel. You feel beaten down and broken, uncertain if you'll be able to ever sit down again and utterly mentally drained.<br>
<br>
"@@.npc_manager;Mmmm, I think that will do.@@" She states. "@@.npc_manager;What a brave girl to endure all of that I hope you enjoyed... well, maybe that is not QUITE the right word it, I know I had quite the delightful time. It really is nice to really cut loose every once in a while...@@"<br>
<br>
Panting and sobbing as she pulls you to your feet and bundles you up in her grasp you sink into her strong arms as she strokes your hair. "@@.npc_manager;There, there,@@" she comforts as you sob into her shoulder "@@.npc_manager;I know it is hard, but you were a good <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, and I bet you learned a really important lesson, hmm?@@"<br>
<br>
You nod, even though you aren't quite sure what that lesson might be. Too exhausted to be concerned at the fact that all of this was, technically, a "failure" being that the paddle remains stubbornly in one piece you slowly regain some energy as she helps fix your clothes and guides you to the door.<br>
<br>
"@@.npc_manager;Have a good evening, my dear.@@" She states in parting as you stagger out of the office, wincing slightly with each step.<br>
<br>
[<<moveTo "room_elevator_home" "Get dressed and head for the elevator." 180 "<<useClothSetPop 'talk_nothing'>>">>]
<</if>>
</div>/*#
#desc: fail to endure spanking long enough for paddle to break
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The pain is too much and you cry out for mercy.<br>
<br>
"@@.npc_manager;Aww, you poor thing.@@" She states, suddenly tender as she gently rubs you back. "@@.npc_manager;Still, that was quite the punishment you just endured, my arm is almost tired!@@" She laughs and you find yourself joining in only to wince in pain.<br>
<br>
"@@.npc_manager;There, there, how about you fix your things and head home? You probably need a nice restful lie-down after that, but know that I am quite proud of you and well... knowing that I have such a devoted, strong <<if $fetish.sissy>>SISSI <</if>>Secretary under my thrall has me quite optimistic for the future.@@"<br>
<br>
Mumbling a thanks you slowly fix your clothes. As you rise to your feet, you glance at the paddle just as she puts it away. Maybe it is your imagination, but it looks a little weakened yet it is still holding together.<br>
<br>
<<printThought "All that, and yet I failed...">><br>
<br>
Sitting behind her desk she looks like an Empress on a throne as she watches you leave.<br>
<br>
[<<moveTo "room_elevator_home" "Dress and head for the elevator." 180 "<<useClothSetPop 'talk_nothing'>>">>]
</div>/*#
#desc: after work spanking from manager
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 20)>>
<<decrementEmotion 'anger' 'npc_manager' 7>>
<<applyExperience 'submission' 3 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 4 'normal' $SEEN_FRIEND>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'accepting')>>
<<setThreshold 'submission' 'submissive_secretary' 'accepting'>>
<</if>>
<<set $scene.cum = setup.calcErection()>>
<<if $scene.cum>>
<<playerOrgasm>>
<<set _panties=setup.getItemFromType('panties')>>
<<if _panties!="">>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<<else>>
<<changeHorny 25>>
<</if>>
<</if>>
<<if setup.checkVisibleClothingTag('female') > 50>>
<<set _tmpSissy = true>>
<<else>>
<<set _tmpSissy = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stand in the room wearing
<<if setup.checkNaked()>>
<<if setup.checkItemTypeWorn("cage") && setup.checkItemTypeTag('choker', ['collar'])>>
naught but your collar and <<if setup.isCage()>>cage<<else>>chastity belt<</if>>,
<<elseif setup.checkItemTypeTag('choker', ['collar'])>>
naught but your collar,
<<elseif setup.checkItemTypeWorn("cage")>>
naught but your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>,
<<else>>
nothing at all,
<</if>>
<<else>>
only your <<if _tmpSissy>>lingerie<<else>>underwear<</if>>,
<</if>>
and try your best not to blush like a ripe tomato as you watch <<=setup.getNpcName('npc_manager', 'formal')>> bend down and open one of the lower drawers of her office desk to retrieve another paddle from her expansive collection of spanking tools.
<<if $scene.first>>
This one is slightly larger then the one she used the first time, when this whole ordeal started. It is also... cuter?; wrapped in pink leather with the words "for <<if $fetish.sissy>>SISSI <</if>>Secretary use only" embossed into either side in flowing cursive.<br>
<br>
"@@.npc_manager;<<=$player.first_name>> my dear
<<if _tmpSissy>>
...
<</if>>
boy.@@" <<=setup.getNpcName('npc_manager', 'formal')>> whispers in your ear while getting really close to you<<if _tmpSissy>>, putting a way too long pause before the word boy<</if>>. There are mere centimetres separating your bodies. Though you can feel her warmth you do not dare to move. Lingering for a few moments she eventually moves a few steps away and continues to talk at a normal volume.<br>
<br>
"@@.npc_manager;This is how this is going to happen. You will beg for mercy like a good little pet, or I am going to destroy that cute little booty of yours so much you will be unable to sit for the next two days.@@" As if to emphasise the point, she takes a few practice swings through empty air, maintaining eye contact with you all the time. Despite this paddle's less intimidating appearance you doubt it will hurt any less.<br>
<br>
<<if setup.getTotalValue('submission')<5>>
<<printThought "Oh god. She's totally getting off on this!">>
<br>
<</if>>
<br>
<<if setup.getTotalValue('submission')<5>>
You manage to keep in command of yourself, withstanding the onslaught of emotions raging within your mind. Her dominance, sex appeal, the smell of her perfume strike you all at once, but you still resist. Steeling yourself, you conclude that submitting to her suggestion would likely only make things worse for you.<br>
<br>
"@@.npc_manager;Ooh. Very good <<=$player.first_name>>. You are trying to resist me. Very good indeed. I like them with a little pepper. Makes it a lot more fun to train them properly. Well, you know the drill. Bend over that desk like the good, little <<if $fetish.sissy>>sissy<<else>>girl<</if>> you are!@@"
<<else>>
You feel your mental defences crack, then shatter under her psychic onslaught. You give in to her dominance over you, breaking eye contact with her and looking down at her steep, sexy heels in defeat. You start to beg for mercy, but as soon as you do you realise the mistake in your logic. The devilish grin on her face is not a sign of mercy or grace. It's the polar opposite.<br>
<br>
"@@.npc_manager;Yes. This is what I have been waiting for. We are going to have so much fun together. It goes so much smoother once you accept your role. And it is a lot more fun if you're trained properly to know your place, as good little <<if $fetish.sissy>>sissy<<else>>girl<</if>>, isn't it <<=$player.first_name>>? Are you a good little <<if $fetish.sissy>>sissy<<else>>girl<</if>>? Yes you are! Now, bend over, while your behaviour has earned you some measure of mercy... you still need to be disciplined.@@"
<</if>>
<br><br>
You walk in front of the desk and bend over. The desk is slightly higher than your legs, so you have to get on your toes to lie with your belly on top of it, the position exposing your butt even more. For a moment there is almost total silence in the room. You can only hear the pounding of your heart and your shallow breaths until the near silence is interrupted a loud swinging sound followed by an even louder SMACK of leather on your booty. Still trying to endure the pain, you fail miserably as it seems much stronger than the last time.<br>
<br>
"@@.npc_manager;Well, <<=$player.first_name>>, how do you say in computer games? Last time was the tutorial. This is the real deal.@@".<br>
<br>
Your pained gasp only seems to encourage <<=setup.getNpcName('npc_manager', 'formal')>> as the next strike already hits before you can even catch your breath. You gasp for air, but the next strike already hits your exposed booty and your <<if !setup.checkItemTypeWorn("panties")>>lack of underthings gives you no protection<<else>>underwear does nothing to soften the blow<</if>>. Your yelping alternates with the smacking sound of the paddle resulting in a duet of agony and pleasure.<br>
<br>
Though your face turns bright pink and heavy tears run down your face in response to the pain blooming on your backside... <<if $player.body_ref.penis>>your <<getWordMyPenis false>> is getting harder<<else>>you are getting wetter<</if>>.<br>
<br>
<<printThought "Oh no, if this continues, I could turn into a submissive <<if $fetish.sissy>>sissy<<else>>girl<</if>> for real!">><br>
<br>
<<if $scene.cum>>
You feel like being struck by lightning after a few dozen strokes on your booty. You've long given up on counting blows, since you cannot concentrate on anything besides the paradoxical mix of pain and the pleasure you feel. Feeling your <<if $player.body_ref.penis>><<getWordMyPenis false>> becoming more active and harder then ever<<else>>cunt drip<</if>> before you think your mind shatters in a moment of pure pleasure and antagonising agony as you <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>spray a big load of <<getWordCum true>> into your <<if setup.checkItemTypeWornTag("panties","female")>>panties<<else>>boxer shorts<</if>><</if>>.<br>
<br>
You turn your head to glance over your shoulder. From the look on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face, she knows exactly what you just did. This fact only serves to humiliate you even further.<br>
<br>
<<printThought "Oh god, why? Why am I getting so turned on by this?">>
<<else>>
Your booty feels like you've been stung by a swarm of angry hornets, turning blue and red. You've long given up on counting blows, since you cannot concentrate on anything besides the pain you feel. But at least you do not cum<<if setup.checkItemTypeWornTag("panties","female")>> in your panties<<elseif setup.checkItemTypeWorn("cage")>> in your prison<<elseif !setup.checkItemTypeWorn("panties")>><<else>> in your boxer shorts<</if>>, even though you are horny as hell.<br>
<br>
"@@.npc_manager;Well, someone certainly looks eager. Put that away, before I decide to spank your front as well, <<=$player.first_name>>.@@"
<</if>>
<<else>>
You bite your lip in anticipation at the sight of the "for <<if $fetish.sissy>>SISSI <</if>>Secretary use only" paddle and <<=setup.getNpcName("npc_manager","formal")>> grins.<br>
<br>
"@@.npc_manager;<<=$player.first_name>> my dear
<<if _tmpSissy>>
...
<</if>>
<<if $player.sec_style.clothing.female>>girl<<else>>boy<</if>>.@@" <<=setup.getNpcName('npc_manager', 'formal')>> whispers in your ear while leaning close.<br>
<br>
"@@.npc_manager;Yet again you seem to throw yourself at my mercy... I am beginning to think you might like it?@@" You blush harder as she runs the paddle over your rear as you break out into goosebumps of anticipation.<br>
<br>
You gasp... or more accurately, moan, as a hand on the back of your neck pushes your face against the desk as she bends you over, the paddle landing with a loud CRACK against your defenseless bottom.<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
You cry out — but not in pain.<br>
<br>
<<if setup.getTotalValue("bdsm") > 15>>
<<printThought "Harder, <<=setup.getNpcName('npc_manager', 'title')>>! Beat this pain slut!">>
<<else>>
<<printThought "Hurts so good!">>
<</if>>
<<else>>
You cry out
<<if setup.getTotalValue("bdsm") > 5>>
- though not entirely in pain.<br>
<br>
<<printThought "Am I getting off on this? What's wrong with me...">>
<<else>>
in pain.
<</if>>
<</if>>
<br><br>
The sound of your cries mix with the echoes of leather on skin, your breaths coming faster as the paddle lands harder. Though your face turns bright pink and heavy tears run down your face in response to the pain blooming on your backside... <<if $player.body_ref.penis>>your <<getWordMyPenis false>> is getting harder<<else>>you are getting wetter<</if>>.<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
<<printThought "<<getWordGod>>! I'm becoming a submissive pain slut for real...!">>
<<else>>
<<printThought "Oh no, if this continues, I could turn into a submissive <<if $fetish.sissy>>sissy<<else>>girl<</if>> for real!">>
<</if>>
<br><br>
<<if $scene.cum>>
Your climax feels inevitable, your heart pounding with each blow until you <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>spray a big load of <<getWordCum true>> into your <<if setup.checkItemTypeWornTag("panties","female")>>panties<<else>>boxer shorts<</if>><<else>>tense and shudder in depraved paingasm<</if>>.<br>
<br>
You turn your head to glance over your shoulder. From the look on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face, she knows exactly what you just did. This fact only serves to humiliate you even further.<br>
<br>
<<printThought "Oh god, why? Why am I getting so turned on by this?">>
<<else>>
Your booty feels like you've been stung by a swarm of angry hornets, turning blue and red. You've long given up on counting blows, since you cannot concentrate on anything besides the pain you feel. But at least you do not cum<<if setup.checkItemTypeWornTag("panties","female")>> in your panties<<elseif setup.checkItemTypeWorn("cage")>> in your prison<<elseif !setup.checkItemTypeWorn("panties")>><<else>> in your boxer shorts<</if>>, even though you are horny as hell.<br>
<br>
"@@.npc_manager;Well, someone certainly looks eager. Put that away, before I decide to spank your front as well, <<=$player.first_name>>.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.returnto "Continue." 180>>]
</div>/*#
#desc: manager theme details
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<set _nextdate = setup.checkTaskLocationTime('event_work_doctor_office')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
<<if _nextdate != null && _tmpSeconds < 600>>
As if sensing the time, <<=setup.getNpcName("npc_manager","formal")>> motions you away.<br>
<br>
"@@.npc_manager;Sorry, dear, but I believe you have an appointment scheduled and I would not wish to be the source of you getting in trouble... well, unless I knew I would be the one administering the punishment to your lovely cute bum.@@"<br>
<br>
She smiles as you thank her for the reminder and quickly hurry away.<br>
<br>
[<<moveTo "room_office_after_work" "Leave." 60>>]
<<elseif $now.getUTCHours() > 17 || ($now.getUTCDay() == 5 && $now.getUTCHours() > 13) || ($now.getUTCDay() > 13)>>
As if sensing the time, <<=setup.getNpcName("npc_manager","formal")>> motions you away.<br>
<br>
"@@.npc_manager;Sorry, dear, but I must get back to work, my duties extend far beyond merely chatting with my cute subordinate.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave." 60>>]
<<else>>
<<if ($npc_manager.affection+$npc_manager.affection)>($npc_manager.anger+5)>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, clearly happy to be talking with you.
<<elseif ($npc_manager.affection+$npc_manager.affection)>($npc_manager.anger)>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles as she waits to see if you have anything else to day.
<<elseif ($npc_manager.affection+$npc_manager.affection+5)<($npc_manager.anger)>>
<<=setup.getNpcName('npc_manager', 'formal')>> waits for you to say anything else.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> glowers as if daring you to speak further.
<</if>>
<br><br>
<<include "afterWorkManagerThemes">>
<</if>>
</div>/*#
#desc: manager theme details
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.lastOfficeVisit = $now>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Well, what did you wish to ask of me, <<=$player.first_name>>?@@"<br>
<br>
<<printNpcThemeDetails
'npc_manager'
$scene.returnPassageTheme
$scene.currentNpcTheme
>>
</div>/*#
#desc: goto canteen as forced female first time
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.call_player = "Lassie">>
<<set $npc_cook.flags.reactnamechange = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You slowly approach the canteen, staring at the floor as people walk past you. You are very conscious about the way you look right now, and you're not really sure if you should abandon your lunch run; flee back to your little antechamber and take the scorn of <<=setup.getNpcName('npc_manager', 'formal')>> instead. But after a while you realise that, besides a few glances now and there, you garner almost no reaction at all. It seems like your outfit is business as usual. How peculiar. But then again, <i>this</i> is the company where <<=setup.getNpcName('npc_barista', 'first')>> works. But if outfits like <<=ps(setup.getNpcName('npc_barista', 'first'))>> or yours are such a usual sight at the company, where are they? You really haven't seen anyone else in such... extremes. Though you never ventured past either your last company nor your current employer's floor, and this building is gigantic.<br>
<br>
<<printThought "Hmm... now I'm getting curious...">><br>
<br>
[<<moveTo "room_office_lunchbreak_canteen" "Continue." 60>>]
</div>/*#
#desc: goto canteen as female first time good girl
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_cook.call_player = "Lassie">>
<<set $npc_cook.flags.reactnamechange = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You walk into the canteen. The crowded canteen. The VERY crowded canteen.<br>
<br>
Fixating on the really quite fascinating patterning of the tile floor, you somehow manage to take your place in line without bumping into anyone.<br>
<br>
As minutes drag on and the line slowly creeps forward, your failure to hear people whispering about you has you finally muster the courage to look around.<br>
<br>
You aren't sure whether to be relieved or disappointed, but nobody is even looking in your direction, it's as if they don't even care, like your attire is just utterly... totally... normal.<br>
<br>
<<printThought "What is with this company? Or... maybe I'm just overblowing this whole thing?">><br>
<br>
Reaching the front of the line, you finally get a confirmation that you aren't TOTALLY crazy in that <<=ps(setup.getNpcName('npc_cook', 'first'))>> gaze seems to linger on you a moment longer as <<he npc_cook>> asks your order. Though even that you aren't certain about, second guessing your own instincts quite a bit as you try to remember what <<=setup.getNpcName('npc_manager', 'formal')>> sent you here for.<br>
<br>
<<include "buyFoodOptions">>
</div>/*#
#desc: morning punishment for failing to pickup prescription
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.fromInspection = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're working away when a courier appears with a small package. Signing for it you bring it to <<=setup.getNpcName("npc_manager","formal")>> where she rips apart the packaging and looks at the content.<br>
<br>
"@@.npc_manager;Ah, yes, I was expecting this. <<=setup.getNpcName("npc_work_doctor","formal")>> messaged me that you apparently failed to pickup your prescription?@@" She places a small pill bottle on the table and then reaches into the package for something. "@@.npc_manager;Of course, missing like this means you are falling behind on medication and it would seem the only solution for that is a more substantial booster.@@"<br>
<br>
She pulls out a very large pill and holds it up for you to see, it seems far too large to swallow and you look up at her as she smiles at your realisation.<br>
<br>
"@@.npc_manager;That's right. This is going in the other end — more efficient uptake that way plus, well... sticking things up your cute bum is just fun!@@" You blush and she smiles wider. "@@.npc_manager;Come on then, bend over and let's get your medicine in you.@@"<br>
<br>
[<<moveTo "event_prescription_punish_2" "Do as she says." 600 "<<set $scene.drug = true>>">>]<br>
[<<moveTo "event_prescription_punish_2" "Beg not to take the drug." 300 "<<set $scene.drug =false>>">>]
</div>/*#
#desc: medication suppository
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.pink_pill.missed_inspect += 1>>
<<if $scene.drug || $npc_manager.affection < $npc_manager.anger>>
<<setTmpEffect 'super_mk2'>>
<<applyStress -10>>
<<applyExperience 'anal' 3 'slightly' $ALONE>>
<</if>>
<<set $scene.addPills = setup.getItemCount('personal_medication') < 5>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.drug>>
Obediently you bend over and present your rear to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
Giving your bottom a gentle caress she teases your hole before
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
sliding it through the hole in your plug, pushing it up deep so that it will stay in place and not fall out of your constantly-gaping hole.
<<else>>
gently pulling out your plug, stuffing the pill up your rear, and then quickly sealing everything inside.
<</if>>
<<else>>
easily slipping the pill inside, using a slender finger to push it nice and deep until it is lightly <<if $player.body_ref.penis>>pressing against your prostate<<else>>probing inside your rear<</if>>.
<</if>>
You feel a fizzing in your rear as the pill dissolves, a sense of calm washing over you even as your thoughts overall slow.<br>
<br>
Almost on autopilot, you<<if $scene.addPills>> accept the bottle of pills and<</if>> head back to your desk, thanking <<=setup.getNpcName("npc_manager","formal")>> for her help.
<<else>>
You beg <<=setup.getNpcName("npc_manager","formal")>> not to have to take the drug, complaining that you don't like how it makes your head feel.<br>
<br>
<<if $npc_manager.affection < $npc_manager.anger>>
She frowns and shakes her head. "@@.npc_manager;I am sorry, my dear, but looking at your past disobedience well... even with the side effects I am forced to accept that you need a bit of chemical help to straighten you out.@@"<br>
<br>
With a firm hand on the back of your head she bends you over the desk, quickly stuffing the large pill up your rear<<if setup.checkItemTypeWorn("plug")>> and then sealing it in place with your plug.<</if>><br>
<br>
You shudder slightly as the drugs kick in, staggering back to your feet. You mindlessly close your hand around the pill bottle as she places it in your grasp and then obediently head back to your desk, feeling only tenuously in control of your own body.
<<else>>
She thinks for a moment before putting the suppository back in the envelope and tossing the whole thing in the trash.<br>
<br>
"@@.npc_manager;Very well, while I love sticking things inside you, truth be told, I am not the biggest fan of some of the drug's side effects. They seem to make you work slower and be a bit more error-prone.@@"<br>
<br>
<<if $scene.addPills>>
She slides the pill bottle across the desk. "@@.npc_manager;Still, if you change your mind, or have any relapse effects from your previous overdose. And remember that you have another appointment next week to refill your prescription, do try to make it this time.@@"
<<else>>
She nods for you to leave. "@@.npc_manager;I believe you have sufficient pills at present, so I will give you no more.@@"
<</if>>
<</if>>
<</if>>
<br><br>
<<if $scene.addPills>>
<<if $scene.fromInspection>>
<<if $npc_manager.stage == 3 && $player.work.advance > 0>>
<<include "stage3AdvanceSpanking">>
<<else>>
[<<moveTo $scene.inspectionReturn "Get dressed, pocket the pills, and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>> <<addItem 'personal_medication' 7>><<completeWorkEvent>><<set $scene.fromInspection=false>>">>]
<</if>>
<<else>>
[<<moveTo $scene.workEventReturn "Pocket the pill bottle and return to work." 60 "<<addItem 'personal_medication' 7>><<completeWorkEvent>>">>]
<</if>>
<<else>>
<<if $scene.fromInspection>>
<<if $npc_manager.stage == 3 && $player.work.advance > 0>>
<<include "stage3AdvanceSpanking">>
<<else>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>> <<completeWorkEvent>><<set $scene.fromInspection=false>>">>]
<</if>>
<<else>>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
<</if>>
<</if>>
</div>/*#
#desc: punished for wearing manager's panties
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getItemFromType("panties") != "manager_panties">>
<<completeWorkEvent>>
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Summoned into <<=ps(setup.getNpcName("npc_manager","formal"))>> office, you find her pacing impatiently.<br>
<br>
"@@.npc_manager;You! Do you know what you have done?@@"<br>
<br>
Confused you try to reflexively apologise but she cuts you off. "@@.npc_manager;No, I am not in the mood to hear your excuses, strip. Now.@@"<br>
<br>
<<printThought "I thought we already did an inspection today?">><br>
<br>
[<<moveTo "event_manager_panties_punishment_2" "Remove your clothes." 120>>]
</div>/*#
#desc: manager chides you for wearing her panties
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<<deleteItem 'manager_panties'>>
<<set $clothSetsInt.tmp.data.delete('manager_panties')>>
<<set $clothSetsInt.tmp.data.push('satin_panties')>>
<<applyExperience 'humiliation' 11 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are down to your underthings when she holds up her hand for you to stop, her gaze all but burning through your, or rather, her, panties. "@@.npc_manager;There they are! You naughty girl, wearing your <<=ps(setup.getNpcName("npc_manager","title"))>> panties... do you have any idea what the thought of you like this has done to me?@@"<br>
<br>
Reaching under her skirt with one hand, she casually rips off an identical pair of red lace panties, well identical save for the fact that the pad is utterly sopping wet. "@@.npc_manager;Look at this!@@" she chides, taking a step forward waving the undergarment in your face.<br>
<br>
You open your mouth to apologise only for her to instead jam them past your lips, her heavy, seductive taste causing you to let out a muffled moan.<br>
<br>
She snorts in derision. "@@.npc_manager;Just as I thought, you are this turned on from sucking on my used panties? No... I let things slide this morning but your behaviour definitely needs... correction.@@"<br>
<br>
Taking another step forward, she is, almost touching you now,
<<if setup.getItemObj($scene.shoes).heels.difficulty > 10>>
looking you in the eye thanks to your steep heels, and yet it still feels as if she is staring down at you.
<<else>>
staring down at you despite your heels.
<</if>>
Your nostrils flare as you try to catch your breath, a trickle of drool escaping your lips as you cannot seem to stop yourself salivating at your wonderful taste.<br>
<br>
"@@.npc_manager;This is exactly what I meant. While your actions were busy ruining one pair of my panties, the source of the problem was here.@@" Like a cobra, her hand <<if setup.checkItemTypeWorn("cage")>>takes hold of your imprisoned crotch<<else>>shoots between your legs<</if>>, an evil grin on her face as she remains there for a moment before ripping the panties away.<br>
<br>
"@@.npc_manager;There, as I said earlier this style is just wrong for you, it might give you... ideas.@@" She takes a seat on the couch and pats her lap in invitation. "@@.npc_manager;Come, bend over so I can administer your correction and stem the tide of any further damage.@@"<br>
<br>
[<<moveTo "event_manager_panties_punishment_3" "Walk over." 120>>]
</div>/*#
#desc: spanked for wearing her panties
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'terrible' $SEEN_FRIEND>>
<<if !setup.checkItemOwned('satin_panties')>>
<<addItem 'satin_panties'>>
<<elseif setup.inWardrobe('satin_panties')>>
<<wardrobeToItem 'satin_panties'>>
<</if>>
<<set $npc_manager.flags.panties.punish = true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Entranced by her dominant presence, you walk over, half wondering if the panties you continue to eagerly suck on are somehow drugged. Lying across her lap, you find yourself staring at her desk, suddenly thinking of the "for <<if $fetish.sissy>>SISSI <</if>>Secretary use only" paddle she typically uses.<br>
<br>
Grabbing hold of your hair with one hand, she leans in close to whisper in your ear. "@@.npc_manager;That is a tool for another time. This is not about correcting a wayward <<if $fetish.sissy>>SISSI <</if>>Secretary, no this is about teaching a submissive slave her proper place.@@" The is a sharp SMACK as she smacks your butt with her bare hand, the stinging blow making you
<<if setup.getTotalValue("submission") > 10>>
moan.
<<else>>
gasp.
<</if>>
<br><br>
"@@.npc_manager;You like that? Of course you do, this is the treatment a bratty girl longs for and I know that well. You wanted to wear a nice pair of sexy red panties? Well how about I turn this cute bum that same colour while you choke on my juices and remember where you belong, and who, exactly, is in charge of you.@@"<br>
<br>
Between her words, the arousing pain in your rear, the taste in your mouth and her hands still tightly gripping your hair, all you can do is let your eyes roll back and submit; each hard slap of her hand against your bare ass making you moan and drool. Giving your plump rear nice full coverage, she finishes off by tapping your plug, the teasing motion drumming <<if $player.body_ref.penis>>against your prostate<<else>>inside your rear<</if>> and almost setting you off as you shudder.<br>
<br>
"@@.npc_manager;Mmm, I so love playing you like a puppet, maybe next time I will go all the way and see what sort of control I get when I shove my entire fist up this hungry hole. What do you think of that? Are you sufficiently reminded of where you belong?@@"<br>
<br>
"@@.pc;Yeff, <<=setup.getNpcName("npc_manager","title")>>@@" you moan through the gag, drool leaking down your chin as you feel a similar puddle forming under you at the other end, your arousal yet another tool for her to exert control.<br>
<br>
"@@.npc_manager;Lovely, my sweet, <<if $fetish.sissy>>sissy <</if>>slave, it seems you have learned yet another lesson and so I will release you to return to work.@@"<br>
<br>
Pulling you to your feet, she gives your tender ass another hard slap and then reaches her hand in front of your mouth. "@@.npc_manager;Spit it out, would not want you to get too excited now that it is time for you to return to work. Go ahead and get dressed and see that the next pair of underwear you wear is more... appropriate for a girl like you.@@"<br>
<br>
Breathlessly you go weak in the knees as she wipes off your chin. Biting your lip in an attempt to get back under control, you wobble slightly as you walk over to your pile of clothes. She tosses you a replacement pair of panties and you quickly get dressed under her watchful eye before shuffling back out of the room with her grinning the whole time.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<useClothSetPop 'tmp'>> <<completeWorkEvent>>">>]
</div>/*#
#desc: receive + change into sissy panties from manager for being a good girl at work
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $npc_manager.flags.good_girl.got_sissy_underwear = true>>
<<set $scene.alreadygotsissyitems = false>>
<<set $scene.own_sissy_items = false>>
<<set $scene.wearing_full_sissy = false>>
<<set $scene.wearing_partial_sissy = false>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemOwned("sissy_panties_pink") || setup.checkItemOwned("sissy_garter_pink") || setup.checkItemOwned("sissy_bra_pink") || setup.checkItemOwned("sissy_stockings_pink")>>
<<if setup.checkItemOwned("sissy_panties_pink") && setup.checkItemOwned("sissy_garter_pink") && setup.checkItemOwned("sissy_bra_pink") && setup.checkItemOwned("sissy_stockings_pink")>>
<<if setup.isItemEquipped("sissy_panties_pink") && setup.isItemEquipped("sissy_bra_pink") && setup.isItemEquipped("sissy_garter_pink") && setup.isItemEquipped("sissy_stockings_pink")>>
<<set $scene.wearing_full_sissy = true>>
<</if>>
<<set $scene.own_sissy_items = true>>
<<else>>
<<if setup.isItemEquipped("sissy_panties_pink") || setup.isItemEquipped("sissy_bra_pink") || setup.isItemEquipped("sissy_garter_pink") || setup.isItemEquipped("sissy_stockings_pink")>>
<<set $scene.wearing_partial_sissy = true>>
<</if>>
<<set $scene.own_some = true>>
<<if !setup.checkItemOwned("sissy_panties_pink")>>
<<addItem "sissy_panties_pink">>
<<wearItem "sissy_panties_pink" true>>
<</if>>
<<if !setup.checkItemOwned("sissy_bra_pink")>>
<<addItem "sissy_bra_pink">>
<<wearItem "sissy_bra_pink" true>>
<</if>>
<<if !setup.checkItemOwned("sissy_garter_pink")>>
<<addItem "sissy_garter_pink">>
<<wearItem "sissy_garter_pink" true>>
<</if>>
<<if !setup.checkItemOwned("sissy_stockings_pink")>>
<<addItem "sissy_stockings_pink">>
<<wearItem "sissy_stockings_pink" true>>
<</if>>
<</if>>
<<else>>
<<setThreshold "feminization" "good_girl" "sissy_underwear">>
<<addItemSet "sissy_lingerie_pink">>
<<removeAllClothing>>
<<wearItemSet "sissy_lingerie_pink">>
<</if>>
<<set $scene.no_need_to_change = ($player.sec_style.clothing.underwear == "forced")>>
<<else>>
<<if setup.checkPlayerDressed() && setup.isItemEquipped("sissy_panties_pink") && setup.isItemEquipped("sissy_bra_pink") && setup.isItemEquipped("sissy_garter_pink") && setup.isItemEquipped("sissy_stockings_pink")>>
<<initRoom>>
<<set $player.cutscene.lockinventory = true>>
<<if $scene.afterWork>>
<<moveTo 'room_office_sissy_secretary_work_fridayafternoon'>>
<<else>>
<<switch $npc_manager.stage>>
<<case 2>>
<<moveTo 'event_manager_daily_check_stage_2_finalize'>>
<<case 3>>
<<moveTo 'event_manager_daily_check_stage_3_finalize'>>
<<case 4>>
<<moveTo 'event_manager_daily_check_stage_4_finalize'>>
<<case 5>>
<<moveTo 'event_manager_daily_check_stage_5_finalize'>>
<</switch>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.own_sissy_items>>
<<if $player.sec_style.clothing.underwear == "forced" || $player.sec_style.clothing.underwear == "strict">>
You open the box to find... absolutely nothing. You look up confused at <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;Well, this is where you would have gotten your ultra feminine <<if $fetish.sissy>>sissy<<else>>girly<</if>> lingerie, if you had not forced my hand on the very first day. In hindsight, a smart move, I have to admit. I give you the benefit of the doubt and believe for the time being, that your act of transgression was a cry for help, even though you could not even have known that I had this prepared for you. Then again, maybe you simply thought: "Going commando... what is the worst that could happen?" am I right? Not that I am complaining, that did speed things up quite a little bit, didn't it?@@"<br>
<br>
<<if $scene.wearing_full_sissy>>
"@@.npc_manager;Anyway, as much as I would love you to work dressed like this in your full, well... for now, <<if $fetish.sissy>>sissy<<else>>girly<</if>> glory... I am afraid that is not possible... yet. I am afraid if anyone enters the office there would be hardly any work done... though you could well be working something hard.@@" She smiles, visions of <<if $fetish.sissy>>sissy<<else>>girly<</if>> sexual debasement dancing behind her eyes. "@@.npc_manager;No, I still need you to fulfill your duties as my <<if $fetish.sissy>>SISSI <</if>>secretary.@@"
<<elseif $scene.wearing_partial_sissy>>
"@@.npc_manager;I would love to just stare at you looking like this... even more if you were wearing the FULL set, of course.@@" She smiles, visions of <<if $fetish.sissy>>sissy<<else>>girly<</if>> sexual debasement dancing behind her eyes. "@@.npc_manager;No, I still need you to fulfill your duties as my <<if $fetish.sissy>>SISSI <</if>>secretary.@@"
<<else>>
"@@.npc_manager;That said well... it is a real pity that you are not wearing that lovely gift right now... maybe tomorrow?@@" She winks as you picture the look of predatory hunger that she has whenever she sees you in such ultra-fem attire.
<</if>>
<<else>>
<<if $scene.own_some>>
You open the box to find... pink. Examining the contents you are faced with a familiar, but incomplete set of <<if $fetish.sissy>>sissified<<else>>feminine<</if>> undergarments... the precise items that are missing from the partial set you already own.<br>
<br>
You look up at her in surprise, your eyes lighting up as she smiles.<br>
<br>
"@@.npc_manager;Go ahead, put them on!@@" She orders and you hurry to obey.<br>
<br>
<<if setup.checkItemOwned("sissy_panties_pink") && setup.checkItemOwned("sissy_garter_pink") && setup.checkItemOwned("sissy_bra_pink") && setup.checkItemOwned("sissy_stockings_pink")>>
Soon fully <<if $fetish.sissy>>sissified<<else>>feminine<</if>>, at least in attire, you tremble slightly under her devouring gaze. "@@.npc_manager;Mmmm, perfection. Now that I have helped you "finish the set" I see little reason for you to wear anything else... thought that remains your decision. Who knows, maybe you will somehow find a way to surprise me with something even more adorable!@@"
<<else>>
You slip into her gift, the soft satin feeling so very lovely against your flesh. "@@.npc_manager;Just lovely. Though perhaps you will grace me by wearing the full set together next time?@@"<br>
<br>
<<if $npc_manager.flags.good_girl.seen_partial_sissy_set>>
You blush and nod, heart still racing at the thought that you now own a proper full <<if $fetish.sissy>>sissy<<else>>girly<</if>> set!
<<else>>
You blush and nod, even as your mind spins.<br>
<br>
<<printThought "I never wore any of those things to work... how did she know?">><br>
<br>
She seems to sense your confusion responding with a knowing grin. "@@.npc_manager;Call it a special <<if $fetish.sissy>>sissy<<else>>girl<</if>> sense... after all, what sort of manager would I be if I did not keep close track of my employee?@@"<br>
<br>
You gulp, suddenly afraid about what else she knows, judging from her expression... a lot more than you might have preferred.
<</if>>
<</if>>
<<else>>
You open the box to find... absolute nothing. You look up confused at <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles gently.
<<if $scene.wearing_full_sissy>>
"@@.npc_manager;Normally this would be the stage of your development where I gave you a lovely full pink <<if $fetish.sissy>>sissy<<else>>feminised<</if>> set of undergarments but... well, you are already wearing them, and looking so very lovely doing so.@@"
<<else>>
<<if $scene.wearing_partial_sissy>>
"@@.npc_manager;Normally this would be the stage of your development where I gave you a lovely full pink <<if $fetish.sissy>>sissy<<else>>feminised<</if>> set of undergarments. Panties, stockings, bra, garters, you know, the works. But... well, you already own them all. As adorable as you look, you would look even better if you wore the full set.@@"
<<else>>
"@@.npc_manager;Normally this would be the stage of your development where I gave you a lovely full pink <<if $fetish.sissy>>sissy<<else>>feminised<</if>> set of undergarments but... well, you already own them all. It is a pity that you are not wearing any of them now but... maybe some other day?@@"
<</if>>
<br><br>
<<if $npc_manager.flags.good_girl.seen_full_sissy_set>>
You nod, blushing in memory of the way she looks at you when you're fully "done up."
<<else>>
<<if $npc_manager.flags.good_girl.seen_partial_sissy_set>>
<<printThought "Wait... how did she know I owned all of those pieces, I've only worn some of them to work...">>
<<else>>
<<printThought "Wait... how did she know I owned something like that, I've never worn any of those items to work!">>
<</if>>
<br><br>
You look at her in surprise, but she just smiles wider. "@@.npc_manager;Call it a special <<if $fetish.sissy>>sissy<<else>>girl<</if>> sense... after all, what sort of manager would I be if I did not keep close track of my employee?@@"<br>
<br>
You gulp, suddenly afraid about what else she knows. Judging from her expression, it's a lot more than you might have preferred.
<</if>>
<</if>>
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Anyway, as much as I would like to admire your cuteness we both have other things to be about doing.@@" She motions for you to get dressed and depart.<br>
<br>
<<if setup.checkPlayerDressed() && setup.checkOutsideDecency() && setup.checkItemTypeWorn("bra")>>
<<if $scene.afterWork>>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' "Return to work." 60>>]
<<else>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo 'event_manager_daily_check_stage_2_finalize' "Return to work." 0 "<<set $player.cutscene.lockinventory = true>>">>]
<<case 3>>
[<<moveTo 'event_manager_daily_check_stage_3_finalize' "Return to work." 0 "<<set $player.cutscene.lockinventory = true>>">>]
<</switch>>
<</if>>
<<else>>
[@@.link_locked;I can't just wear underthings! I need to be properly dressed first.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
<<if $scene.afterWork>>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' "Finish dressing and return to work." 60 '<<useClothSetPop "daily_evaluation_clothes">><<if $scene.wearing_full_sissy || $scene.wearing_partial_sissy>><<wearItemSet "sissy_lingerie_pink">><</if>>'>>]
<<else>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo 'event_manager_daily_check_stage_2_finalize' "Finish dressing and return to work." 0 '<<set $player.cutscene.lockinventory = true>><<useClothSetPop "daily_evaluation_clothes">><<if $scene.wearing_full_sissy || $scene.wearing_partial_sissy>><<wearItemSet "sissy_lingerie_pink">><</if>>'>>]
<<case 3>>
[<<moveTo 'event_manager_daily_check_stage_3_finalize' "Finish dressing and return to work." 0 '<<set $player.cutscene.lockinventory = true>><<useClothSetPop "daily_evaluation_clothes">><<if $scene.wearing_full_sissy || $scene.wearing_partial_sissy>><<wearItemSet "sissy_lingerie_pink">><</if>>'>>]
<</switch>>
<</if>>
<</if>>
<</if>>
<<else>>
You open the box to find a poofy bed of pink and frills. You didn't know what you were expecting, but somehow, it is perfect. You look up at <<=setup.getNpcName('npc_manager', 'formal')>> with a smile that is almost gleefully returned before gently pawing through to confirm that you have in your hands a full set of ultra-<<if $fetish.sissy>>sissy<<else>>feminised<</if>> fetish lingerie — a complete matching ensemble of panties, garters, bra and stockings.<br>
<br>
Stepping towards you, she leans in close, her scent filling your nostrils, her breath hot on your neck as she whispers centimetres from your ear. "@@.npc_manager;Put them on...@@"<br>
<br>
You shudder in submissive lust and begin stripping off your current cute undergarments. You have stripped for her before, every morning, in fact, to some degree, but this time feels different. Piece by sensual piece each cute pink item falls to the floor until you are naked and she hands you the first of your "new" items.<br>
<br>
Finest pink satin slides over your bare skin, sending sparks of excitement through you as your body goes from bare to being framed and covered in soft pink and oh so many frills. Standing behind your back she helps fit your bra before turning you to face the mirror in her office. Her arms wrap around your body, one groping your chest and the other inside your panties to cup your <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>caged<<else>>chastity-shielded<</if>><<else>>decidedly un-chaste<</if>> <<if $player.body_ref.penis>><<if $fetish.sissy>>sissy <</if>>clit<<else>>bits<</if>>.<br>
<br>
Her chin on your shoulder she gives your ear a playful nibble before meeting your gaze in reflection and whispering to you. "@@.npc_manager;Look at that <<if $fetish.sissy>>sissy<<else>>girl<</if>>. So beautiful. So obedient. So perfect. THIS is what you were meant to be and I am so lucky to have you for my own — my pink diamond in the rough. And this is just the beginning — I will polish your every facet until you. Are. Perfect.@@"<br>
<br>
You tremble at her touch and want to bashfully look away, but you can't — in this moment your actions are not your own, they are hers as she holds your gaze.<br>
<br>
The spell lasts for but a matter of seconds before she smiles and steps away, silently handing you your outer attire for you to finish dressing.<br>
<br>
"@@.npc_manager;As much as I would love you to work dressed like this, I am afraid that is not possible... yet. I am afraid if anyone enters the office there would be hardly any work done... though you could well be working something hard.@@" She smiles, visions of <<if $fetish.sissy>>sissy<<else>>girly<</if>> sexual debasement dancing behind her eyes. "@@.npc_manager;No, I still need you to fulfill your duties as my <<if $fetish.sissy>>SISSI <</if>>secretary.@@"<br>
<br>
<<if $options.ezchange>>
<<if $scene.afterWork>>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Get changed and dressed." 300 "<<useClothSetPop 'daily_evaluation_clothes'>><<wearItemSet 'sissy_lingerie_pink'>><<set $player.cutscene.lockinventory = true>>">>]
<<else>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Get changed and dressed." 300 "<<useClothSetPop 'daily_evaluation_clothes'>><<wearItemSet 'sissy_lingerie_pink'>><<set $player.cutscene.lockinventory = true>>">>]
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Get changed and dressed." 300 "<<useClothSetPop 'daily_evaluation_clothes'>><<wearItemSet 'sissy_lingerie_pink'>><<set $player.cutscene.lockinventory = true>>">>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Get changed and dressed." 300 "<<useClothSetPop 'daily_evaluation_clothes'>><<wearItemSet 'sissy_lingerie_pink'>><<set $player.cutscene.lockinventory = true>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Get changed and dressed." 300 "<<useClothSetPop 'daily_evaluation_clothes'>><<wearItemSet 'sissy_lingerie_pink'>><<set $player.cutscene.lockinventory = true>>">>]
<</switch>>
<</if>>
<<else>>
<<hint $options "I need to finish getting changed and dressed.">>
<</if>>
<</if>>
</div>/*#
#desc: good girl - manager rewards you with pink outfit
#status: FINISHED 0.5.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemWorn("mary_janes_pink") && setup.checkItemWorn("satin_blouse_pink") && setup.checkItemWorn("skirt_leather_pink") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings")>>
<<initRoom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<moveTo "event_manager_good_girl_pink_outfit_2">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<<addItemSet "secretary_pink">>,
<<addEvent 'first_time_pink_home'>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You open the bag and glance down to see... even more pink.<br>
<br>
<<printThought "Yum">><br>
<br>
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful eye you pull out a pink satin blouse, a short patent leather skirt and a pair of oh-so-cute lace-trimmed Mary Jane heels.<br>
<br>
You look up with a wide smile that almost matches <<=ps(setup.getNpcName('npc_manager', 'formal'))>> own obvious excitement. "@@.npc_manager;What are you waiting for? Try them on!@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_voluntary_pink_outfit_2" "Put on your new outfit." 60 "<<wearItemSet 'secretary_pink'>><<if !setup.checkItemTypeTag('panties', ['female'])>><<wearItemSlotTag 'panties' 'female'>><</if>><<if !setup.checkItemTypeTag('stockings', ['female'])>><<wearItemSlotTag 'stockings' 'female'>><</if>>">>]
<</if>>
</div>/*#
#desc: good girl - manager rewards you with pink outfit
#status: FINISHED 0.5.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.female == "money">>
<<setThreshold "feminization" "money" "cute_secretary">>
<<elseif !setup.hasThreshold("feminization", "voluntary_path_feminization", "full_female_outside")>>
<<setThreshold "feminization" "good_girl" "cute_secretary">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.bonus_gift>>
<<case 'female_voluntary'>>
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful, proudly smiling gaze, you slowly change into the new outfit, the soft blouse swiftly buttoned over your chest, the tight skirt pulled up to hug you close. You shiver slightly, feeling as if the femininity of the garments is sinking into your skin and suffusing your body.
<<case 'good_girl_pink_uniform'>>
<<if $player.sec_style.clothing.female == "money">>
You can pretend you're just doing this for the money, but there's no hiding the excitement bubbling inside of you as you quickly button the soft blouse around your chest and pulling up the short, tight skirt. Putting them on causes you to shiver slightly, as if the femininity of the garments is penetrating deep into your body. A part of you wonders if it was worth the handful of credits you earned sacrificing your masculinity, but at this point it is a small part of you.
<<else>>
You do not have to be told twice, quickly buttoning the soft blouse around your chest and pulling up the short, tight skirt. Putting them on causes you to shiver slightly, as if the femininity of the garments is penetrating deep into your body.
<</if>>
<<default>>
ERROR: unknown bonus_gift lead-in: <<=$scene.bonus_gift>>
<</switch>>
Slipping into the heels, you rise several centimetres in height, taking a couple <<if setup.getTotalValue("heels") < setup.getItemObj("mary_janes_pink").heels.difficulty>>awkward<<elseif setup.getTotalValue("heels") < setup.getItemObj("mary_janes_pink").heels.difficulty + 2>>careful<<else>>perfectly graceful<</if>> steps so that you can view yourself in the nearby full-length mirror.
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> magically appears next to you, her even steeper heels meaning you are now just about the same height. As gorgeous as her sleek, severe reflection is, however, you just can't take your eyes off your own.<br>
<br>
There is no other word for it — you look adorable, appearing utterly feminine in every way<<if $player.body.breastsize[0]==0>> save, perhaps, for your flat chest leaving the blouse hanging a bit loose<</if>>.
<<if $scene.makeup == "">>
Well, you could do with a dash of makeup but otherwise
<<elseif $player.hair.style == 'unkempt'>>
Combined with your perfect makeup the outfit lends your short, unkempt hair a bit of a rowdy flair,
<<elseif $player.hair.style == 'combed'>>
The package of clothing and makeup manages to make even your boyish haircut look somehow feminine,
<<else>>
From your perfect hair and makeup down across
<</if>>
your shiny satin and leather-wrapped ladylike figure, elongated <<if setup.checkItemTypeTag('stockings', ['pink'])>>pink-<</if>>stockinged legs and cute heels combining to form a wondrous vision of pink femininity.<br>
<br>
With your short skirt, you'll have to be careful bending over lest you flash whoever might be looking, but you look way too good to be bothered.<br>
<br>
Turning to admire yourself, particularly your prominent hips, from every angle you finally come around to face <<=setup.getNpcName('npc_manager', 'formal')>> with a smile.<br>
<br>
"@@.npc_manager;I am so glad you like it, and I absolutely love it as well. THIS is how a <<if $fetish.sissy>>SISSI <</if>>Secretary should look, why I can scarcely see any sign of that boring so-called man that first bashfully entered my office. Wear it with pride, you earned it. Oh, and it probably goes without saying that I expect you to wear office-appropriate, fully feminine clothes, top to bottom, at all times going forward. They do not have to be that outfit specifically but... I would certainly not object to such a choice.@@"<br>
<br>
She graces you with a final smile as you give a little curtsy of thanks.<br>
<br>
"@@.npc_manager;Speaking of earning, we both better get to work! I will see you later, have a great day!@@"<br>
<br>
<<printThought "Oh <<getWordGod>>. Everyone who enters the office today is going to see me dressed like a pretty girl! I'm going to make <<=setup.getNpcName('npc_manager', 'formal')>> so proud!!">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Leave her office and start work.">>]
</div>/*#
#desc: manager rewards you with pink outfit for dressing female voluntarily
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemWorn("mary_janes_pink") && setup.checkItemWorn("satin_blouse_pink") && setup.checkItemWorn("skirt_leather_pink") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings")>>
<<initRoom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<moveTo "event_manager_voluntary_pink_outfit_2">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<<addItemSet "secretary_pink">>
<<addEvent 'first_time_pink_home'>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $npc_manager.flags.good_girl.got_pink_secretary = true>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set $npc_cook.call_player = "Lassie">>
<<if $player.sec_style.body.name != "" && !$npc_admin.flags.promotion && !$workEvents.hasOwnProperty("admin_office_visit")>>
<<set _nextDate = setup.setNextDate($now, 0, 9, 0)>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<</if>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You open the bag and glance down to see... even more pink.<br>
<br>
<<printThought "Yum">><br>
<br>
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful eye you pull out a pink satin blouse, a short patent leather skirt and a pair of oh-so-cute lace-trimmed Mary Jane heels.<br>
<br>
Despite having taken the initiative to start wearing women's clothing, the pink ensemble you are now looking at feels a whole other level. And yet you cannot help but be entranced and drawn in by the delicate, beautiful garments.<br>
<br>
You look up with a slowly spreading smile that barely keeps pace with <<=ps(setup.getNpcName('npc_manager', 'formal'))>> own obvious excitement. "@@.npc_manager;What are you waiting for? Try them on!@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_voluntary_pink_outfit_2" "Put on your new outfit." 60 "<<wearItemSet 'secretary_pink'>><<if !setup.checkItemTypeTag('panties', ['female'])>><<wearItemSlotTag 'panties' 'female'>><</if>><<if !setup.checkItemTypeTag('stockings', ['female'])>><<wearItemSlotTag 'stockings' 'female'>><</if>>">>]
<</if>>
</div>/*#
#desc: voluntary path - manager rewards you with pink outfit
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold "feminization" "good_girl" "cute_secretary">>
<<set $scene.bonus_gift = "">>
<<set $scene.bra = setup.getItemFromType("bra")>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<set $scene.stockings = setup.getItemFromType("stockings")>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful, proudly smiling gaze, you slowly change into the new outfit, the soft blouse swiftly buttoned over your chest, the tight skirt pulled up to hug you close. You shiver slightly, feeling as if the femininity of the garments is sinking into your skin and suffusing your body.<br>
<br>
Slipping into the heels, you rise several centimetres in height, taking a couple <<if setup.getTotalValue("heels") < setup.getItemObj("mary_janes_pink").heels.difficulty>>awkward<<elseif setup.getTotalValue("heels") < setup.getItemObj("mary_janes_pink").heels.difficulty + 2>>careful<<else>>perfectly graceful<</if>> steps so that you can view yourself in the nearby full-length mirror.
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> magically appears next to you, her even steeper heels meaning you are now just about the same height. As gorgeous as her sleek, severe reflection is, however, you just can't take your eyes off your own.<br>
<br>
There is no other word for it — you look adorable, appearing utterly feminine in every way<<if $player.body.breastsize[0]==0>> save, perhaps, for your flat chest leaving the blouse hanging a bit loose<</if>>.
<<if $scene.makeup == "">>
Well, you could do with a dash of makeup but otherwise
<<elseif $player.hair.style == 'unkempt'>>
Combined with your perfect makeup the outfit lends your short, unkempt hair a bit of a rowdy flair,
<<elseif $player.hair.style == 'combed'>>
The package of clothing and makeup manages to make even your boyish haircut look somehow feminine,
<<else>>
From your perfect hair and makeup down across
<</if>>
your shiny satin and leather-wrapped ladylike figure, elongated <<if setup.checkItemTypeTag('stockings', ['pink'])>>pink-<</if>>stockinged legs and cute heels combining to form a wondrous vision of pink femininity.<br>
<br>
With your short skirt, you'll have to be careful bending over lest you flash whoever might be looking, but you look way too good to be bothered.<br>
<br>
Turning to admire yourself, particularly your prominent hips, from every angle you finally come around to face <<=setup.getNpcName('npc_manager', 'formal')>> with a smile.<br>
<br>
"@@.npc_manager;I am so glad you like it, and I absolutely love it as well. THIS is how a <<if $fetish.sissy>>SISSI <</if>>Secretary should look, why I can scarcely see any sign of that boring so-called man that first bashfully entered my office. Wear it with pride, you earned it. Oh, and it probably goes without saying that I expect you to wear office-appropriate, fully feminine clothes, top to bottom, at all times going forward. They do not have to be that outfit specifically but... I would certainly not object to such a choice.@@"<br>
<br>
She graces you with a final smile as you give a little curtsy of thanks.<br>
<br>
"@@.npc_manager;So! Now that you are so perfectly prepared, how about we reset the day and see how you do?@@"<br>
<br>
<<printThought "Oh <<getWordGod>>. Everyone who enters the office today is going to see me dressed like a pretty girl! I'm going to make <<=setup.getNpcName('npc_manager', 'formal')>> so proud!!">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_1" "Begin inspection anew." 60 "<<useClothSetPush 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: calculates what "set" of underwear you're wearing
#status: RELEASED 0.6.0.0
#*/
<<set $scene.bra = setup.getItemFromType("bra")>>
<<if $scene.bra == "" && setup.checkItemTypeTag('corset', ['overbust'])>>
<<set $scene.bra = setup.getItemFromType("corset")>>
<</if>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<set $scene.stockings = setup.getItemFromType("stockings")>>
<<set $scene.garters = setup.getItemFromType("garter")>>
<<set $scene.body = setup.getItemFromType("bodysuit")>>
<<set $scene.underwearStyle = "">>
<<set $scene.underwearmissing = ($scene.bra == "" || $scene.panties == "" || $scene.stockings == "")>>
<<set _tmpArray = []>>
<<if $scene.underwearmissing>>
<<if $scene.body != "">>
<<set $scene.underwearStyle = "catsuit">>
<<set $scene.underwearmissing = false>>
<<elseif setup.checkItemTypeTag('panties', ['male']) || setup.checkItemTypeTag('stockings', ['male'])>>
<<set $scene.underwearStyle = "male">>
<<if $scene.underwearInspection>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<<else>>
<<if $scene.bra == "" && $scene.panties == "" && $scene.stockings == "">>
<<set $scene.underwearStyle = "none">>
<<if $scene.underwearInspection>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<<elseif $scene.underwearInspection>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<</if>>
<<if $scene.underwearStyle == "">>
<<if $scene.bra != "" && setup.getItemObj($scene.bra).secondarySlot != "bra">><<set _tmpArray.push($scene.bra)>><</if>>
<<if $scene.panties != "">>
<<set _tmpArray.push($scene.panties)>>
<<if setup.checkItemTypeTag('panties', ['male'])>>
<<set $scene.underwearStyle = "male">>
<<set $scene.underwearmissing = false>>
<</if>>
<</if>>
<<if $scene.stockings != "">>
<<set _tmpArray.push($scene.stockings)>>
<<if setup.checkItemTypeTag('stockings', ['male'])>>
<<set $scene.underwearStyle = "male">>
<</if>>
<</if>>
<<if $scene.garters != "">><<set _tmpArray.push($scene.garters)>><</if>>
<<if $scene.body != "">><<set _tmpArray.push($scene.body)>><</if>>
<<if $scene.underwearStyle == "">>
<<if checkItemsTags(_tmpArray,['male'])>>
<<set $scene.underwearStyle = "male">>
<<elseif checkItemsTags(_tmpArray,['sissy'])>>
<<set $scene.underwearStyle = "sissy">>
<<elseif checkItemsTags(_tmpArray,['cute'])>>
<<set $scene.underwearStyle = "cute">>
<<elseif checkItemsTags(_tmpArray,['sissy','cute'],'||')>>
<<set $scene.underwearStyle = "cutesissy">>
<<elseif checkItemsTags(_tmpArray,['latex'])>>
<<set $scene.underwearStyle = "latex">>
<<elseif checkItemsTags(_tmpArray,['fetish'])>>
<<set $scene.underwearStyle = "fetish">>
<<elseif checkItemsTags(_tmpArray,['bold'])>>
<<set $scene.underwearStyle = "bold">>
<<elseif checkItemsTags(_tmpArray,['modest'])>>
<<set $scene.underwearStyle = "modest">>
<<elseif checkItemsTags(_tmpArray,['female'])>>
<<set $scene.underwearStyle = "female">>
<<elseif checkItemsTags(_tmpArray,['female','unisex'],'||')>>
<<set $scene.underwearStyle = "female">>
<<elseif $scene.body != "">>
<<set $scene.underwearStyle = "catsuit">>
<<else>>
ERROR: unable to calculate underwear style : <<=_tmpArray>>!
<</if>>
<</if>>
<</if>>/*#
#desc: compute variables related to underwear inspection
#status: RELEASED 0.6.0.0
#*/
<<if !$scene.hasOwnProperty('topId')>>
<<include "calcTopId">>
<</if>>
<<set $scene.underwearInspection = true>>
<<include calculateUnderwearStyle>>
<<switch $scene.underwearStyle>>
<<case "cute">>
<<set $npc_manager.flags.firstcuteoutfit += 1>>
<<set $scene.score += 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $scene.extrascore += 1>>
<<case 2>>
<<set $scene.happy = true>>
<<case 3>>
<</switch>>
<<case "bold">>
<<if setup.getTotalValue("dominance") == 0>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<case 2>>
<<case 3>>
<</switch>>
<<case "modest">>
<<set $scene.score += 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<case 2>>
<<case 3>>
<</switch>>
<<case "sissy">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $npc_manager.flags.firstsissyoutfit += 1>>
<<set $scene.score += 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<set $scene.extrascore += 1>>
<<case 2>>
<<set $scene.happy = true>>
<<case 3>>
<</switch>>
<<case "fetish">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<case 2>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.score += 1>>
<<case 3>>
<</switch>>
<<case "latex" "catsuit">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<case 2>>
<<set $scene.score += 1>>
<<case 3>>
<</switch>>
<<case "cutesissy">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $npc_manager.flags.firstsissyoutfit += 1>>
<<set $npc_manager.flags.firstcuteoutfit += 1>>
<<set $scene.score += 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<set $scene.extrascore += 1>>
<<case 2>>
<<case 3>>
<</switch>>
<<case "female">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<incrementEmotion 'affection' 'npc_manager' 0.5>>
<<set $scene.score += 1>>
<<case 2>>
<<case 3>>
<</switch>>
<<default>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<case 2>>
<<set $scene.seriousoffense = true>>
<<case 3>>
<<set $scene.seriousoffense = true>>
<</switch>>
<</switch>>
<<if setup.checkItemTypeWorn("corset")>>
<<set $scene.autoLacing = false>>
<<if $player.timebased.tightlacing < 50>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $player.flags.uniform_upgrade.laceFailCounter += 2>>
<<if $player.flags.uniform_upgrade.laceFailCounter > 10>>
<<set $scene.autoLacing = true>>
<<set $player.flags.uniform_upgrade.autoLacing = true>>
<</if>>
<<elseif $player.timebased.tightlacing > 90>>
<<incrementEmotion 'affection' 'npc_manager' 0.2>>
<</if>>
<</if>>
<<set $scene.managerPanties = $scene.panties == "manager_panties">>
<<if $scene.managerPanties && !$npc_manager.flags.panties.keep>>
<<addWorkEvent 'manager_panties_punishment'>>
<</if>><<if $scene.underwearmissing>>
<<set $npc_manager.flags.firstcuteoutfit++>>
<<if $scene.bra == "" && setup.getItemObj($scene.topId).specific != "strapless_dress" && !setup.getItemObj($scene.topId).tags.includes("breastfree")>>
<<addItem 'satin_bra'>>
<<setThreshold 'feminization' 'bad_girl_feminization' 'forced_bra'>>
<<set $clothSetsInt.daily_evaluation_clothes.data.push('satin_bra')>>
<</if>>
<<if $scene.panties == "" || setup.getItemObj($scene.panties).tags.includes("male")>>
<<addItem 'satin_panties'>>
<<set $clothSetsInt.daily_evaluation_clothes.data.push('satin_panties')>>
<</if>>
<<if $scene.stockings == "" || setup.getItemObj($scene.stockings).tags.includes("male")>>
<<addItem 'pantyhose_pink'>>
<<set $clothSetsInt.daily_evaluation_clothes.data.push('pantyhose_pink')>>
<</if>>
<</if>>/*#
#desc: text related to underwear inspection
#status: RELEASED 0.6.0.0
#*/
<<if !$scene.underwearmissing>>
<<if $scene.managerPanties>>
Her eyebrow raises as she lays eyes on your, or rather, her, panties.<br>
<br>
<<if $npc_manager.flags.panties.keep>>
"@@.npc_manager;Wearing my panties, are we? Hmm... I do not think they are really your style, but, you did earn them, so I suppose I can allow it.@@"
<<else>>
"@@.npc_manager;Are you... wearing my underthings?@@" she slowly shakes her head as you nervously apologise and start to remove them to "@@.npc_manager;No, no, keep them. They are stretched out now and would not fit properly... though I would recommend you make this a one-time thing. Of course there was a time when I would remark that if you liked them so much you had to wear them but now? We are so far past that sort of thing and, besides, the style is... well, it is not really you.@@"
<</if>>
<br><br>
<</if>>
<<switch $scene.underwearStyle>>
<<case "cutesissy" "sissy">>
<<if ($npc_manager.flags.firstsissyoutfit + $npc_manager.flags.firstcuteoutfit) == 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if setup.calcErection()>>
"@@.npc_manager;Well, some... someone is ea...@@"<br>
<br>
Well, this is certainly a situation you were not prepared for. For the fraction of a second, it seems like <<=setup.getNpcName('npc_manager', 'formal')>> is about to squee. Unsure if you might be better off hearing death scream of an banshee, you back away a step, unsure if such unmitigated glee might be more terrifying then her dominant voice. It only takes a nanosecond before she regains her composure.<br>
<br>
"@@.npc_manager;Oh, <<=$player.first_name>>! I was not sure if it was too soon to give you those. I thought you would wear something... different today. But you are still wearing that gorgeous outfit. Very good. That is the kind of dedication I want from you. I am just beyond delighted that you are taking this task so seriously. Still, while I can understand your... eagerness to present me with proof of your dedication,@@" as she speaks her gaze slowly wanders down your body, settling to focus on your raging erection.<br>
<br>
You blush like a ripe strawberry as she continues. "@@.npc_manager;It appears we still have to work on your... discipline. If you do not want me to find a more permanent solution for your problem down there, you better make sure it does not attract so much attention the next time we see each other this way. Anyway, your strong reaction shows that these clothes were made to be worn by you. <<if $scene.underwearStyle == "cutesissy">>And what a fabulous combination of your best attributes. It screams both cute and <<if $fetish.sissy>>sissy<<else>>girly<</if>>! Divine!<<else>>Such a gloriously sissy combination, exquisite<</if>>, and I have to say, they look absolutely stunning on you. I am sure by now you know as well as I that you were born to be the <<if $scene.underwearStyle == "cutesissy">>cutest<<else>>perfect<</if>> <<if $fetish.sissy>>SISSI <</if>>Secretary. Oh this is going to be so much fun. Oh what a lovely day!@@"
<<else>>
"@@.npc_manager;Oh my, <<=$player.first_name>>!@@"<br>
<br>
Well, this is certainly a situation you were not prepared for. For the fraction of a second it seems like <<=setup.getNpcName('npc_manager', 'formal')>> is ready to squee. Unsure if you'd rather heard the death scream of an banshee, you back away a little bit. You're unsure if the out of character enthusiasm, being so unexpected, is somehow more terrifying dominant voice. "Fortunately" it only takes a nanosecond before she regains her composure.<br>
<br>
<<if $player.sec_style.clothing.underwear == "forced">>
"@@.npc_manager;I was not sure if it was too soon to gift you something so effeminate. I thought you would be wearing something... different today. But you are still wearing these. Very good. That is the kind of dedication I want from you. I am beyond delighted, that you're taking this task seriously. these clothes were made to be worn by you. <<if $scene.underwearStyle == "cutesissy">>This combination of both cute and traditional <<if $fetish.sissy>>sissy<<else>>girly<</if>> lingerie is breathtaking. <<else>><</if>>And I have to say, they look absolutely stunning on you. I am sure by now you know as well as I do, that you were born to be the <<if $scene.underwearStyle == "cutesissy">>cutest<<else>>perfect<</if>> <<if $fetish.sissy>>SISSI <</if>>Secretary. Oh this is going to be so much fun. Oh what a lovely day!@@"
<<else>>
"@@.npc_manager;When I gave you your assignment to wear feminine underthings well... I figured someone in your position would play for the simplest option, but this<<if $scene.underwearStyle == "cutesissy">>combination of both cute and traditional <<if $fetish.sissy>>sissy<<else>>girly<</if>> lingerie<</if>> is breathtaking. I daresay you are moving ahead of schedule in transforming into what you were meant to be — the <<if $scene.underwearStyle == "cutesissy">>cutest<<else>>perfect<</if>> <<if $fetish.sissy>>SISSI <</if>>Secretary. Oh this is going to be so much fun. Oh what a lovely day!@@"
<</if>>
<br><br>
Wow, that was a low hit, if you ever got one. Your masculinity crumbles before your eyes.<br>
<br>
"@@.npc_manager;Please feel free to wear <<if $scene.underwearStyle == "cutesissy">>a combination like this<<else>><<if $fetish.sissy>>sissy<<else>>girly<</if>> underwear<</if>> every day!@@"
<</if>>
<<case 2 3>>
<<if $npc_manager.flags.good_girl.got_sissy_underwear>>
Looking upon your cute underthings she smiles.<br>
<br>
"@@.npc_manager;You're wearing my gift! Oh, how lovely, just... mmm, perfection!@@"
<<elseif $player.sec_style.clothing.underwear == "voluntary">>
Her eyes widen in shock.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>,@@" she harshly states, taking an aggressive step forward to shrink the distance between your bodies to mere centimetres. "@@.npc_manager;Why are you wearing this? Well? I am expecting an answer.@@"<br>
<br>
You are unsure how to respond,
<<if setup.getTotalValue('feminization')>=9>>
but after a while you admit you like wearing it, while blushing traffic-stop red. Your bold assertion is rewarded with a sincere smile.<br>
<br>
"@@.npc_manager;Oh... I knew I was right about you. I had this feeling when you first entered through these doors, that you were devoted of the cuter and frillier things in life. Because you look simply amazing in this. Besides accentuating your feminine frame like living <<if $fetish.sissy>>sissy<<else>>feminised<</if>> art it manages to make you even cuter than you naturally are. You could cause so many confused looks right now. I am very proud of you. You are not only taking this task seriously — you are excelling at it. Very good. Very good indeed.@@"
<<elseif setup.getTotalValue('submission')>=7>>
so you stand there in silence for a few seconds before admitting that you wore it for her, thinking she might like it. All the while you are testing how many shades of red your blushing cheeks are able to produce. Your admission is rewarded with a sinful smile.<br>
<br>
"@@.npc_manager;Oh... is that the case? Very well, because you look simply amazing in this. Besides accentuating your feminine frame like living <<if $fetish.sissy>>sissy<<else>>feminised<</if>> art it manages to make you even cuter than you naturally are. You could cause so many confused looks right now. I am very proud of you. You are not only taking this task seriously — you are excelling at it. Very good. Very good indeed.@@"
<<else>>
so you stand in silence for several seconds, unable to form a coherent answer.<br>
<br>
"@@.npc_manager;At a loss of words <<=$player.first_name>>? Well let me help you out. It is because you look simply amazing in this. Besides accentuating your feminine frame like living <<if $fetish.sissy>>sissy<<else>>feminised<</if>> art it manages to make you even cuter than you naturally are. You could cause so many confused looks right now. I am very proud of you. You are not only taking this task seriously — you are excelling at it. Very good. Very good indeed.@@"
<</if>>
<<else>>
Looking upon your cute underthings her expression goes from shock to delight.<br>
<br>
"@@.npc_manager;After so long you finally embrace the sort of underthings that you were meant to wear... oh what joy, you can, and should, wear this sort of thing all the time. This is EXACTLY what I had in mind when I first gave you the task of wearing feminine underthings. It may have been a longer road than I might have preferred, but you have arrived and I. am. celebrating!@@"
<</if>>
<</switch>>
<<else>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if setup.calcErection()>>
"@@.npc_manager;Well, someone seems to be very eager to show me their cute <<if $fetish.sissy>>sissy<<else>>girly<</if>> lingerie,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states while taking a good look at your raging erection, the attention making you blush like a ripe strawberry, "@@.npc_manager;As much as I like the outfit, if you do not want me to find a more permanent solution for your problem down there, you should ensure it does not attract attention the next time we see each other this way. On a positive note your strong reaction indicates that these clothes were made to be worn by you.@@"<br>
<br>
Again, you can see a hint of a smile flicker across her lips, something you don't see very often, at least not this kind of smile. Unlike her "other" smile you don't feel the urge to run for the hills.<br>
<br>
"@@.npc_manager;Do you feel how you are turning more into <<if $scene.underwearStyle == "cutesissy">>a cute<<else>>an obedient<</if>> <<if $fetish.sissy>>SISSI <</if>>Secretary with every minute you spend in this underwear? Oh, you are coming along just fine, your future is very bright. I am certain of it.@@"
<<else>>
<<if $scene.underwearStyle == "cutesissy">>
"@@.npc_manager;I am delighted you are taking your task seriously. These clothes fit you perfectly, don't you think? The cute resonates perfectly with the frilly <<if $fetish.sissy>>sissy <</if>>style, which perfectly frames your petite physique.@@"
<<else>>
"@@.npc_manager;I am delighted you are taking your task seriously. These clothes fit you perfectly, don't you think? The frills perfectly frames your petite physique. Exquisite.@@"
<</if>>
<br><br>
<<if ["voluntary","enthusiast"].includes($player.sec_style.clothing.underwear)>>
You feel a tingle of joy, her compliment making you feel even prettier and feminine than before.
<<elseif $player.sec_style.clothing.underwear == "obedient">>
You blush submissively at her feminising comment.
<<else>>
Again, that was a low hit. Your masculinity crumbles further before your eyes.
<</if>>
<br><br>
"@@.npc_manager;Please feel free to wear things like this every day from now onwards.@@"
<</if>>
<<case 2 3>>
Her eyes glow with excitement as she hungrily stares at your overly girlie <<if $fetish.sissy>>sissy <</if>>lingerie.<br>
<br>
"@@.npc_manager;You know I say this every time you wear something like this, but that is because it is the truth, and that truth is you look simply amazing in this. Besides accentuating your feminine frame like living <<if $fetish.sissy>>sissy<<else>>feminised<</if>> art it manages to make you even cuter than you naturally are. You could cause so many confused looks right now. I am very proud of you. You are not only taking this task seriously — you are excelling at it. Very good. Very good indeed.@@"
<</switch>>
<</if>>
<<case "cute">>
Her eyes begin to glow with excitement as she notices your cute lingerie. A soft gasp of relief escapes her mouth.<br>
<br>
<<if $npc_manager.flags.firstcuteoutfit == 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if setup.calcErection()>>
"@@.npc_manager;Well, some... someone is ea...@@"<br>
<br>
Well, this is certainly a situation you were not prepared for. For the fraction of a second, it seems like <<=setup.getNpcName('npc_manager', 'formal')>> starts to blush. You're unsure if that possibility is more terrifying then her attack stare. It only takes a nanosecond before she regains her composure.<br>
<br>
"@@.npc_manager;Oh my, <<=$player.first_name>>. You seem to have found yourself a new set of lingerie. And such a cute design. I love it. And I am delighted you are taking your task seriously. Still, while your eagerness to show me your new lingerie is admirable...@@" her gaze slowly wanders down your body, focusing on your raging erection, the attention having you blushing like a ripe strawberry. "@@.npc_manager;We still have to work on your... discipline. If you do not want me to find a more permanent solution for your problem down there, you had better make sure that it does not attract attention the next time we see each other this way. Anyway, your strong reaction shows that these clothes were made to be worn by you. Do you feel how your personality tries to match its modest, feminine grace? I am sure you do.@@"
<<else>>
"@@.npc_manager;Oh!@@"<br>
<br>
Well, this is certainly a situation you were not prepared for. For a brief moment <<=setup.getNpcName('npc_manager', 'formal')>> seems to be at loss for words. Maybe you overdid it this time? The task technically did specify modest undergarments.<br>
<br>
It only takes her a second to snap out of her confusion, but you are already braced in anticipation of punishment. Instead of punishment, however a smile slowly spreads across her lips, like one you've not seen on her face before. Could it be, that she likes your choice?<br>
<br>
"@@.npc_manager;Oh my, <<=$player.first_name>>. You got yourself a new set of lingerie. And such a cute design. I love it. And I am delighted you are taking your tasks so seriously. These clothes fit you perfectly, don't you think? The style perfectly frames your petite physique.@@"<br>
<br>
Wow, that was a low hit. Your masculinity crumbles before your eyes.<br>
<br>
"@@.npc_manager;Please feel free to wear cute things like this every day.@@"
<</if>>
<<case 2 3>>
"@@.npc_manager;Oh my, <<=$player.first_name>>. You got yourself a new set of lingerie. And such a splendid, cute design! I love it.@@"
<</switch>>
<<else>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if setup.calcErection()>>
"@@.npc_manager;Well, someone seems to be very eager to show off their cute lingerie,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states while taking a good long look at your raging erection. The keen attention has you blushing like a ripe strawberry. "@@.npc_manager;As much as I like the outfit, if you do not want me to find a more permanent solution for your problem down there, you had better make sure that it does not attract attention the next time we see each other this way. Anyway, your strong reaction shows that these clothes were made to be worn by you.@@"<br>
<br>
Again, you can see a hint of a smile flicker across her lips, something you don't see very often, at least not this kind of smile. Unlike her "other" smile you don't feel the urge to run for the hills.<br>
<br>
"@@.npc_manager;Do you feel how your personality tries to match that outfit's cute, feminine grace? I am sure you do. Oh, you are coming along just wonderful. Your future is looking very bright. I am certain of it.@@"
<<else>>
"@@.npc_manager;I am delighted you are taking your task seriously. These clothes fit you perfectly, don't you think? The style perfectly frames your petite physique.@@"<br>
<br>
Again, that was a low hit. Your masculinity crumbles further before your eyes.<br>
<br>
"@@.npc_manager;Please feel free to wear cute things like this every day from now on.@@"
<</if>>
<<case 2 3>>
"@@.npc_manager;This cute set of lingerie really accentuates your delicate frame. A very good choice. And such a splendid design! Feel free to wear this more often, it really suits you. And I am delighted to see you taking your task seriously. You managed to coordinate this outfit just perfectly.@@"
<</switch>>
<</if>>
<<case "bold">>
<<switch $npc_manager.stage>>
<<case 0 1>>
Trying to interpret <<=setup.getNpcName('npc_manager', 'formal')>> look of surprise at seeing your undergarments you at first think you observe a pleased countenance. Unfortunately the uncertain expression soon crystallises into one of bewilderment.<br>
<br>
<<if $player.sec_style.clothing.underwear == "money">>
"@@.npc_manager;Hmm, you know, I know I allowed it when you wore this your first day but... no, I do not think this is appropriate for one such as yourself. Something this bold and provocative well... it needs to be earned. You would look much better in something softer, more submissive, maybe pink with frills? See about addressing things, please.@@"
<<else>>
"@@.npc_manager;No. This is not good. Not good at all,@@" she whispers. reaching out, she pulls on the side of your <<=setup.getItemTypeName('panties')>> and lets them slap back on your skin, "@@.npc_manager;You have not yet earned your place to wear such provocative lingerie, nor do I think you will ever reach a level where this would be appropriate. It is not that they do not, technically, compliment your figure it is just... the aesthetic is totally wrong. Clothing such as this should be reserved for those of more dominant proclivities, which is simply not your forte at all. You should really try something more in keeping with your character. Perhaps something pink, with frills.@@"
<</if>>
<<case 2 3>>
<<if setup.getTotalValue("dominance") > 0>>
She looks on your underthings with a slight smile.<br>
<br>
"@@.npc_manager;Mmm, continuing to explore your more dominant side? Interesting — do not think I hadn't noticed your slight changes in confidence. Just remember that such things are acceptable only so long as you hew to the iron-clad fact that I am your <<=setup.getNpcName("npc_manager","title")>>, and you my slave.@@"
<<else>>
At first you think she is pleased with your attire, but after examining your underwear up close her expression turns to one of bewilderment.<br>
<br>
"@@.npc_manager;No. This is not good. Not good at all.@@" She whispers into your ear, while pulling on the side of your <<=setup.getItemTypeName('panties')>> and letting them snap back against your skin. "@@.npc_manager;You have not yet earned the privilege to wear such provoking lingerie, nor do I think such would really be appropriate for you as things are. It is an inability, objectively one might say they actually look quite nice on your body. No, it is more the wrong mindset at all. Such garb should be reserved for more dominant individuals, which is simply not your forte at all. You should really try something more fitting to your character. Maybe something pink with frills.@@"
<</if>>
<</switch>>
<<case "fetish">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<=setup.getNpcName('npc_manager', 'formal')>> raises an eyebrow in surprise.<br>
<br>
"@@.npc_manager;What a... kinky selection you have made. It really says something about what is going on in that pretty little head of yours... All I will say, for now, is that I hope you are not thinking that your training is about perversion. Certainly one should be open to new ideas, but you work in a representative position, and I expect you to present yourself in a manner suitable for such.@@"
<<case 2 3>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks over your underthings with a neutral expression.<br>
<br>
"@@.npc_manager;Well, I suppose you taking to harboring new interests underneath your clothing is only to be expected, given how this all started... still, I advise you to keep your role in mind — you work in a representative position, I will not have you traipsing around at work like some kinky slattern. I am sure you would look lovely... but think of how distracted everyone else would be! Hardly optimal for overall employee performance.@@"
<</switch>>
<<case "latex">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement, as she runs a hand over your slick underthings. The feel of her fingers against your rubber-coated skin sends a thrill up your spine.<br>
<br>
"@@.npc_manager;Latex? How... intriguing. Just so long as you do not get too hot under all that rubber. You certainly look... steamy.@@"
<<case 2 3>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement, as she runs a hand over your slick underthings. The feel of her fingers against your rubber-coated skin sends a thrill up your spine.<br>
<br>
"@@.npc_manager;I do so love the sight, and feel of latex. I can see you are embracing it as well... lovely.@@"
<</switch>>
<<case "catsuit">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement, as she runs a hand over your body-covering catsuit. The feel of her fingers against your barely insulated skin sends a thrill up your spine.<br>
<br>
"@@.npc_manager;A full catsuit? Well it does look quite lovely, like a second skin... though I do quite like your first one.@@"
<<case 2 3>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement, as she runs a hand over your body-covering catsuit. The feel of her fingers against your barely insulated skin sends a thrill up your spine.<br>
<br>
"@@.npc_manager;A full catsuit? Yes, I think I approve of this, it suits you.@@"
<</switch>>
<<case "modest">>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if setup.calcErection()>>
"@@.npc_manager;Well, someone seems to be very eager to show me their new undergarment.@@" <<=setup.getNpcName('npc_manager', 'formal')>> says while taking a good look at your raging erection, the attention making you blush like a ripe strawberry, "@@.npc_manager;If you do not want me to find a more permanent solution for your problem down there you ought make sure it does not attract attention the next time we see each other this way. Anyway, your strong reaction would indicate that these underthings were made to be worn by you. Do you feel how your personality is complemented and enhanced by such modest, feminine grace? I am sure you do.@@"
<<else>>
"@@.npc_manager;Very good <<=$player.first_name>>. These underthings were made to be worn by you. Do you feel how your personality is complemented and enhanced by such modest, feminine grace? I am sure you do.@@"
<<if setup.getTotalValue('submission')<5 || setup.getTotalValue('humiliation')<5>>
<br><br>You blush like a ripe tomato, still trying to come to terms with showing your boss what underwear you are wearing every morning<<if setup.getTotalValue('feminization')<5>>, to say nothing of the fact that she expects them to be WOMEN's underwear<</if>>.
<</if>>
<</if>>
<<case 2 3>>
You manage to catch a glance at a soft smile on her lips before her usual determined expression re-asserts itself.<br>
<br>
"@@.npc_manager;Good. This modest set of female underwear really brings a certain feminine grace to you. It is sufficient for my requirements, but I think you could up your game by trying something cuter in the future. Regardless, you managed to coordinate the outfit just perfectly.@@"
<</switch>>
<<case "female">>
You manage to catch a glimpse of a soft smile on her lips before it morphs into a more puzzled expression.<br>
<br>
"@@.npc_manager;Hmm... while the intent is there, the execution lacks a certain finesse. Maybe I overestimated your feminine instincts. When choosing underwear, you should try and match them for style. Modest with modest, cute with cute. While, yes, you are technically wearing female underwear as agreed upon, well, that is about the only positive thing I can say. To be blunt, well, I can see the software developer in you resurfacing, valuing form over function, throwing together off the shelf solutions without a unified vision. In the future try to choose a theme. If you want my recommendation, I think something cute, maybe pink would look terrific on your petite physique.@@"
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if setup.getTotalValue('submission')<5 || setup.getTotalValue('humiliation')<5>>
<br><br>
You blush like a ripe tomato, still trying to come to terms with having to show your new boss the underwear you're wearing every morning.
<</if>>
<<case 2 3>>
<</switch>>
<<case "male">>
<<switch $npc_manager.stage>>
<<case 0 1>>
"@@.npc_manager;<<=$player.first_name>>, you disappoint me<<if $npc_manager.anger>5>> yet again<</if>>. This is not what I have requested of you.
<<if !setup.checkItemTypeWorn("bra")>>
You are not wearing a bra!
<</if>>
<<if setup.checkItemTypeWornTag("panties","male")>>
These are men's boxer shorts!
<<elseif setup.checkItemTypeWornTag("panties","female")>>
At least you are wearing panties.
<</if>>
<<if setup.checkItemTypeWornTag("stockings","male")>>
And what are these supposed to be? These are simply your normal socks!
<<elseif setup.checkItemTypeWornTag("stockings","female","modest")>>
The hosiery seems to be right though.
<</if>>
@@"
<<if setup.getTotalValue('submission')<5 || setup.getTotalValue('humiliation')<5>>
<br><br>
You don't know what's worse. Standing in front of your new boss, stripped to your underwear, getting a rebuke for wearing the wrong thing, or that you actually feel bad for not wearing female undergarments.
<</if>>
<<case 2 3>>
The disappointment you cause is written all over her face, she looks genuinely sad for a moment before her expression hardens.<br>
<br>
"@@.npc_manager;You do realise, that your undergarments are an important part of your training to become a perfect secretary, do you not? If you are unable to follow such simple instructions, I am afraid I may be unable to employ you for much longer.@@"
<</switch>>
<</switch>>
<<elseif !$npc_manager.flags.require_chastity && !(setup.calcErection())>>
<<switch $scene.underwearStyle>>
<<case "sissy">>
"@@.npc_manager;While I can almost empathize with your eagerness to show me your lingerie in all its frilly glory.@@" She says while her gaze slowly wanders down your body,
<<case "cute" "cutesissy">>
"@@.npc_manager;Still, while your eagerness to show me your lingerie is worth admiring.@@" She says while her gaze slowly wanders down your body,
<<case "bold">>
<<if setup.getTotalValue("dominance") > 0>>
"@@.npc_manager;Bold indeed! Just remember to keep your explorations in dominance well clear of our respective positions,@@" she says while her gaze slowly wanders down your body,
<<else>>
"@@.npc_manager;Though I am not jubilant about your selections I do admire your eagerness to show me your lingerie,@@" she says while her gaze slowly wanders down your body,
<</if>>
<<case "modest">>
"@@.npc_manager;Still, while your eagerness to show me your underwear is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "fetish">>
"@@.npc_manager;Still, while your eagerness to show me your kinky underwear is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "latex">>
"@@.npc_manager;Still, while your eagerness to show me your sleek underwear is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "catsuit">>
"@@.npc_manager;Hmm, a catsuit means you technically are not showing me anything... and yet...@@" her gaze slowly wanders down your body,
<<case "female">>
"@@.npc_manager;Still, while your eagerness to show me your random selection of underwear is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "male">>
"@@.npc_manager;And of course, since you are unwilling to wear female underwear,@@" she says while her gaze slowly wanders down your body,
<</switch>>
she frowns,
<<if $scene.body != "">>
"@@.npc_manager;Technically you are in violation of requirements, as you lack a bra... but I suppose the catsuit is covering well enough... I shall allow it.@@"
<<elseif setup.getItemObj($scene.topId).specific == "strapless_dress">>
"@@.npc_manager;Technically you are in violation of requirements, as you lack a bra... that said, I understand, it would be quite garish to have bra straps with your current dress. I suppose I shall allow it... though I think a more work-appropriate dress and bra would be preferable.@@"
<<elseif setup.getItemObj($scene.topId).tags.includes("breastfree")>>
"@@.npc_manager;Technically you are in violation of requirements, as you lack a bra... that said, I understand such would be a bit of a clash for that top... I suppose I shall allow it... though I think a more work-appropriate dress and bra would be preferable.@@"
<<else>>
"@@.npc_manager;Well, it is incomplete. What did I tell you about your undergarments? Proper feminine underwear is panties, hosiery and a bra, garters are a lovely bonus. You... appear to be missing something?@@" She rummages in a desk drawer for a moment then throws something at you. "@@.npc_manager;That should cover things properly. Do take more care in dressing yourself.@@"
<</if>>
<br><br>
<<else>>
<<if $scene.underwearmissing>>
<<if setup.getItemObj($scene.topId).specific == "strapless_dress">>
She frowns, "@@.npc_manager;Technically you are in violation of requirements, as you lack a bra... that said, I understand, it would be quite garish to have bra straps with your current dress. Thus, I will allow it. Anyway, on to the question of style...@@"
<<elseif setup.getItemObj($scene.topId).tags.includes("breastfree")>>
"@@.npc_manager;Technically you are in violation of requirements, as you lack a bra... that said, I understand such would be a bit of a clash for that top... I suppose I shall allow it... though I think a more work-appropriate dress and bra would be preferable.@@"
<<else>>
She frowns, "@@.npc_manager;Well, first off you appear to be missing a piece — proper feminine underwear is panties, hosiery and a bra, garters are a lovely bonus. You... appear to be missing something? Do take more care next time you are dressing yourself. Anyway, on to the question of style...@@"
<</if>>
<br><br>
<</if>>
<<if !$scene.hasOwnProperty("cage") || $scene.cage == "" || (setup.calcErection())>>
<<switch $scene.underwearStyle>>
<<case "sissy">>
"@@.npc_manager;While I can almost empathize with your eagerness to show me your lingerie in all its frilly glory.@@" She says while her gaze slowly wanders down your body,
<<case "cute" "cutesissy">>
"@@.npc_manager;Still, while your eagerness to show me your lingerie is worth admiring.@@" She says while her gaze slowly wanders down your body,
<<case "bold">>
<<if setup.getTotalValue("dominance") > 0>>
"@@.npc_manager;Bold indeed. Just remember to keep your explorations in dominance well clear of our respective positions,@@" she says while her gaze slowly wanders down your body,
<<else>>
"@@.npc_manager;Though I am not jubilant about your selections I do admire your eagerness to show me your lingerie,@@" she says while her gaze slowly wanders down your body,
<</if>>
<<case "modest">>
"@@.npc_manager;Still, while your eagerness to show me your underwear is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "latex">>
"@@.npc_manager;Still, while your eagerness to show me your kinky underthings is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "fetish">>
"@@.npc_manager;Still, while your eagerness to show me your sleek underthings is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "catsuit">>
"@@.npc_manager;Still, while your eagerness to show me your catsuit is appreciated,@@" she says while her gaze slowly wanders down your body,
<<case "female">>
"@@.npc_manager;Still, while your eagerness to show me your random selection of underwear is worth admiring,@@" she says while her gaze slowly wanders down your body,
<<case "male">>
"@@.npc_manager;And of course, since you are unwilling to wear female underwear,@@" she says while her gaze slowly wanders down your body,
<</switch>>
<<if $npc_manager.flags.require_chastity>>
<<if setup.calcErection()>>
<<if $scene.cage == "">>
taking a good look at the outline of your <<if $player.body_ref.penis>>twitching <<getWordMyPenis>><<else>>camel toe<</if>> through your underwear, while shaking her head. "@@.npc_manager;I am not able to overlook the lack of a chastity device on your <<if $fetish.sissy>>sissy <</if>>clitty. Such a disappointment, and your current state shows precisely why you need to be wearing such a device. I expected better from you, <<=$player.first_name>>.@@"
<<else>>
taking a good look at the outline of your <<if $player.body_ref.penis>>twitching <<getWordMyPenis>><<else>>camel toe<</if>> through your underwear, while shaking her head. "@@.npc_manager;I am not able to overlook<<if $player.body_ref.penis>> that sad excuse of a <<getWordMyPenis false>>, trying to escape its prison<<else>>that sort of thing<</if>>. Such a lack of willpower, to be aroused at the slightest thought of attention. I expected better from you, <<=$player.first_name>>. I know being <<if setup.isCage()>>caged<<else>>belted<</if>> can make a <<if $fetish.sissy>>sissy<<else>>girl<</if>> feel excited, but you should show that by your actions not like this, all engorged and straining rather than sweet, small and restrained.@@"
<</if>>
<<else>>
<<if $scene.cage == "">>
stopping between your legs. "@@.npc_manager;A very attractive profile, very well done not showing up to work harboring... distractions.@@"
<<else>>
gently caressing your <<if setup.isCage()>>cage<<else>>belt<</if>>. "@@.npc_manager;Very nice, <<=$player.first_name>> <<if setup.isCage()>>caged<<else>>belted<</if>> and collected, just as you should be.@@"
<</if>>
<</if>>
<<elseif setup.calcErection()>>
<<if $scene.cage == "">>
taking a good look at the outline of your <<if $player.body_ref.penis>>twitching <<getWordMyPenis>> <<else>>camel toe<</if>> through your underwear, while shaking her head. "@@.npc_manager;Hmm, being so... engorged like that is really not proper for work, you really ought to attend to such things on your own time. If you keep this up, I will be forced to take... measures to ensure obedience.@@"
<<else>>
there is no hiding the way <<if $player.body_ref.penis>>your <<getWordMyPenis false>> is straining in futility <<if setup.isCage()>>against its cage<<else>>within your chastity belt<</if>><<else>>you are dripping past your chastity belt<</if>>. "@@.npc_manager;It seems that your little prison is doing its job. I imagine it is a great help in keeping you focused on your duties, and it looks very nice, I love watching you strain uselessly against your binds.@@"
<</if>>
<<else>>
ERROR: this should not happen!
<</if>>
<<else>>
<<switch $scene.underwearStyle>>
<<case "sissy" "cute" "sissycute">>
"@@.npc_manager;Your eagerness to show me your lingerie is admirable,@@" she says as her gaze slowly wanders down your body. Placing a hand over your crotch, she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;And you are <<if setup.isCage()>>caged<<else>>belted<</if>> up like you are supposed to be, perfection.@@"
<<case "bold">>
<<if setup.getTotalValue("dominance") > 0>>
"@@.npc_manager;Bold indeed. Just remember to keep your explorations in dominance well clear of our respective positions,@@"
<<else>>
"@@.npc_manager;Your willingness to show me your underwear is admirable, even though I am not jubilant about your selections,@@"
<</if>>
she says as her gaze slowly wanders down your body. Placing a hand over your crotch, she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;At least you are <<if setup.isCage()>>caged<<else>>belted<</if>> up like you are supposed to be, something someone reaching for dominance never would do to themself.@@"
<<case "modest">>
"@@.npc_manager;Your willingness to show me your kinky underwear is admirable@@" she says as her gaze slowly wanders down your body. Placing a hand over your crotch, she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;Good, you are <<if setup.isCage()>>caged<<else>>belted<</if>> up just like you should be.@@"
<<case "latex">>
"@@.npc_manager;Your willingness to show me your shiny underwear is admirable@@" she says as her gaze slowly wanders down your body. Placing a hand over your crotch, she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;Good, you are <<if setup.isCage()>>caged<<else>>belted<</if>> up just like you should be.@@"
<<case "catsuit">>
"@@.npc_manager;I suppose a catsuit is sufficient... in lieu of the full ensemble of panties, stockings and a bra...@@"
<<case "female">>
"@@.npc_manager;Your willingness to show me your random selection of underwear is admirable,@@" she says as her gaze slowly wanders down your body. Placing a hand over your crotch, she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;And you are <<if setup.isCage()>>caged<<else>>belted<</if>> up like you are supposed to be.@@"
<<case "male">>
"@@.npc_manager;Your unwillingness to wear female underwear is unacceptable,@@" she states while her gaze slowly wanders down your body. Placing a hand over your crotch, she slowly squeezes until she is grasping your <<=setup.getItemTypeName("cage")>> through your <<=setup.getItemTypeName("panties")>>. "@@.npc_manager;But at least you are properly <<if setup.isCage()>>caged<<else>>belted<</if>> up. Quite confusing, I admit. If you accept this predicament, why not accept the much more mild clothing requirements as well?@@"
<<default>>
"@@.npc_manager;Hmm, a decent effort, and it is feminine, but it would look even better if you wore a complete matching set. By that I mean bra, panties, stockings and perhaps garters.@@"
<</switch>>
<</if>>
<br><br>
<</if>>
<<if setup.checkItemTypeWorn("corset")>>
Her attention turns to your corseted waist.<br>
<br>
<<if $player.timebased.tightlacing < 50>>
<<if $scene.autoLacing>>
"@@.npc_manager;You neglected to properly lace yourself again? I am beginning to think you just enjoy feeling me press you to size... and certainly that is not unexpected for one such as you, but the cost...@@" Moving back around in front of you, she shakes her head. "@@.npc_manager;No, entertaining your little fetish is not worth leaving you misshapen, to say nothing of my time!@@"<br>
<br>
Moving behind, you gasp as you feel the corset rapidly loosen, as it sags and you barely catch it you realise that she has just sliced the laces right up the back!<br>
<br>
"@@.npc_manager;Now, to do things properly,@@" she states, revealing a small hank of slightly odd looking ribbon. "@@.npc_manager;These are an advanced nano-material laced with carbon fibre. Nigh un-cuttable they also have the benefit of auto-lacing themselves, all you have to do is tie the knot and they will automatically pull all the way in and keeping you that way throughout the day, no strength required!@@"<br>
<br>
As she explains, she discards the remains of your old laces and begins rapidly threading the ribbon into place. True to her word, once she ties things off you feel the familiar compression, not stopping until you are restricted to short, shallow breaths, a quick check with your fingers confirming that the corset is perfectly even up and down your spine.<br>
<br>
"@@.npc_manager;Much better, that should keep you in shape, and save the both of us quite a bit of time now, hmm?@@"
<<else>>
"@@.npc_manager;Why do you even bother wearing a corset if you are not going to wear it right? Are you still so weak as to need me to do EVERYTHING for you?@@"<br>
<br>
Shaking her head, she roughly spins you around and starts pulling on your laces. You are shocked at the vicious speed at which your body is compressed, panting for air in moments. With stern efficiency she takes a bare few brutally efficient minutes to crush you down. Before long the rear edges touch flush and she ties you off with a perfect hourglass figure.<br>
<br>
"@@.npc_manager;Now THAT is how you lace a corset. As much as I enjoy feeling your body reshaped by my hand, you really need to learn to do this yourself. You are friends with such a strong <<man npc_admin>> in <<=setup.getNpcName('npc_admin', 'first')>>? I bet <<he npc_admin>> could cinch down a corset, but good... or maybe have some suggestions for how to put some tone on those noodle limbs of yours. Whatever you choose, I advise you to get to work, my patience for you improperly wearing such a wonderful garment is far from infinite.@@"<br>
<br>
<<printThought "<<if setup.getTotalValue('feminization') >= 15 && $npc_admin.stage > 1>>Mmm, what if <<he npc_admin>> just did it <<him npc_admin>>self, <<=setup.getNpcName('npc_admin', 'first')>> squeezing me tight...<<else>><<=setup.getNpcName('npc_admin', 'first')>> always was trying to get me to go to the gym with <<him npc_admin>>...<</if>>">>
<</if>>
<<elseif $player.timebased.tightlacing > 90>>
Wrapping her hands around your oh-so-slim waist, <<=setup.getNpcName('npc_manager', 'formal')>> smiles, actually letting out a little purr of pleasure as she reaches behind and for a superfluous check of running a finger along the completely closed rear laces.<br>
<br>
"@@.npc_manager;Excellent, This is the only way one should wear a corset. See what it does for your body? Absolutely sublime.@@"
<<else>>
"@@.npc_manager;I suppose I should credit you for at least trying to lace your corset, but sometimes half measures are worse than nothing at all. This gap in the back is vulgar, a cavernous blight on a potentially otherwise beautiful form.@@"<br>
<br>
Moving behind your back, she un-knots things without letting a single millimetre of slack escape from her fingers. With strong, steady pulls she soon has the rear of your corset closing the rest of the way, steel bones and soft satin crushing you into shape. Tying things off she runs a finger down your spine and over the now closed laces, sending a tingle through your whole body.<br>
<br>
"@@.npc_manager;Much better. You really need to learn to do that on your own rather than be so dependent on my assistance. <<if ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>>You are friends with such a strong <<man npc_admin>> in <<=setup.getNpcName('npc_admin', 'first')>>? I bet <<he npc_admin>> could lace down a corset, but good, or perhaps have some suggestions for how you might get a little stronger<<else>>Surely you can convince a nice strong <<man>> to give you a hand... or maybe spend some time working out yourself? A bit of tone can be quite feminine, you know.<</if>>.@@"<br>
<br>
<<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>>
<<printThought "<<if setup.getTotalValue('feminization') >= 15 && $npc_admin.stage > 1>>Mmm, what if <<he npc_admin>> just did it <<him npc_admin>>self, <<=setup.getNpcName('npc_admin', 'first')>> squeezing me tight...<<else>><<=setup.getNpcName('npc_admin', 'first')>> was trying to get me to go to the gym with <<him npc_admin>>...<</if>>">>
<<else>>
<<printThought "Hmm, maybe I should spend more time at the gym...">>
<</if>>
<</if>>
<br><br>
<</if>>
<<if setup.checkItemTypeTag('headdress', ['cat'])>>
Her gaze lingers on the cat ears poking up from your hair.<br>
<br>
"@@.npc_manager;Cute... and I suppose in this day and age they pass for professional. Just do not be getting any rebellious thoughts from that. You are my <<if $fetish.sissy>>SISSI <</if>>Secretary — and that means you must be an obedient, good kitty, or I shall become quite cross.@@"<br>
<br>
<</if>><<set $scene.topId = setup.getItemFromType("jacket")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("shirt")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("dress")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("strapless_dress")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("bodysuit")>>
<<if $scene.topId == "">>
<<set $scene.topId = setup.getItemFromType("corset")>>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>><<set $scene.gender = setup.computeWorstGender()>>
<<set $scene.formal = setup.computeFormality()>>
<<set $scene.clothes = $scene.gender + "_" + $scene.formal>>
<<if $scene.formal == 'casual'>>
<<set $npc_manager.stagevalues[$npc_manager.stage].appeared_casual+=1>>
<<else>>
<<set $scene.nearOffice = setup.computeNearOffice()>>
<</if>>/*#
#desc: compute variables related to clothing inspection
#status: RELEASED 0.6.0.0
#*/
<<include "inspectionData_calcClothStyle">>
<<set $scene.maidScore = setup.checkVisibleClothingTag('maid') > 60>>
<<set $scene.anyUnisex = setup.checkVisibleClothingTag('unisex') > 0>>
<<include "calcTopId">>
<<set $scene.shoeId = setup.getItemFromType("shoes")>>
<<switch $scene.gender>>
<<case 'male'>>
<<switch $scene.formal>>
<<case 'office'>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if $npc_manager.stagevalues[1].unisexsecretary>>
<<set $npc_manager.stagevalues[1].frisky+=1>>
<<set $scene.score -= 1>>
<</if>>
<<case 2>>
<<set $npc_manager.stagevalues[2].frisky+=1>>
<<if !$npc_manager.flags.bad_girl.got_pink_secretary && $player.sec_style.clothing.unisex != "">>
<<set $scene.forcedSecretaryGift = true>>
<<else>>
<<set $scene.seriousoffense = true>>
<</if>>
<<case 3>>
<<set $scene.forceChange = true>>
<</switch>>
<<case 'casual'>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<if $npc_manager.stagevalues[1].unisexsecretary>>
<<set $npc_manager.stagevalues[1].frisky+=1>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<set $scene.score -= 1>>
<<else>>
<<set $npc_manager.stagevalues[1].frisky+=1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.score -= 1>>
<</if>>
<<case 2>>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $scene.score -= 1>>
<<if !$npc_manager.flags.bad_girl.got_pink_secretary && $player.sec_style.clothing.unisex != "">>
<<set $scene.forcedSecretaryGift = true>>
<<else>>
<<set $scene.seriousoffense = true>>
<</if>>
<<case 3>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<set $scene.score -= 1>>
<<set $scene.forceChange = true>>
<</switch>>
<</switch>>
<<case 'unisex'>>
<<switch $scene.formal>>
<<case 'casual'>>
<<set $scene.score -= 1>>
<<switch $npc_manager.stage>>
<<case 0 1>>
<<set $npc_manager.stagevalues[1].frisky+=1>>
<<case 2>>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<if !($npc_manager.flags.good_girl.got_pink_secretary || $npc_manager.flags.bad_girl.got_pink_secretary) && $player.sec_style.clothing.unisex != "">>
<<set $scene.forcedSecretaryGift = true>>
<</if>>
<<set $scene.seriousoffense = true>>
<</if>>
<<case 3>>
<<set $scene.forceChange = true>>
<</switch>>
<<case 'office'>>
<<switch $npc_manager.stage>>
<<case 2>>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<if !($npc_manager.flags.good_girl.got_pink_secretary || $npc_manager.flags.bad_girl.got_pink_secretary) && $player.sec_style.clothing.unisex != "">>
<<set $scene.forcedSecretaryGift = true>>
<</if>>
<<set $scene.seriousoffense = true>>
<<else>>
<<set $scene.score += 1>>
<</if>>
<<case 3>>
<<set $scene.forceChange = true>>
<</switch>>
<</switch>>
<<case 'female'>>
<<switch $scene.formal>>
<<case 'casual' 'schoolgirl'>>
<<set $scene.score -= 1>>
<<switch $npc_manager.stage>>
<<case 2>>
<<if !$npc_manager.stagevalues[2].femalesecretary>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set $npc_cook.call_player = "Lassie">>
<<if $player.sec_style.body.name != "">>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate = setup.setNextDate($now, 1, 9, 0)>>
<<case 5>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<case 6>>
<<set _nextDate = setup.setNextDate($now, 2, 9, 0)>>
<</switch>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<elseif !($npc_manager.flags.good_girl.got_pink_secretary || $npc_manager.flags.bad_girl.got_pink_secretary) && $player.sec_style.clothing.unisex>>
<<set $scene.forcedSecretaryGift = true>>
<</if>>
<<case 3>>
<<set $scene.forceChange = true>>
<</switch>>
<<case 'office'>>
<<switch $npc_manager.stage>>
<<case 2>>
<<set $scene.score += 1>>
<</switch>>
<<case 'formal'>>
<</switch>>
<</switch>>
<<if $npc_manager.stage > 2>>
<<set $scene.expected_clothing = 'full_female'>>
<<elseif $npc_manager.stagevalues[2].femalesecretary>>
<<set $scene.expected_clothing = 'female'>>
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
<<set $scene.expected_clothing = 'unisex'>>
<<else>>
<<set $scene.expected_clothing = 'male'>>
<</if>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<set $scene.latexFailed = $currentTasks["manager_morning_inspection_task_repeat"].trigger.hasOwnProperty("latex") && !setup.checkTaskReason("manager_morning_inspection_task_repeat", "latex")>>
<<else>>
<<set $scene.latexFailed = $currentTasks["manager_morning_inspection_task"].trigger.hasOwnProperty("latex") && !setup.checkTaskReason("manager_morning_inspection_task", "latex")>>
<</if>>
<<if $scene.latexFailed>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<if $scene.forceChange>>
<<set $scene.top = setup.getItemFromType("shirt")>>
<<if $scene.top == "">>
<<set $scene.top = setup.getItemFromType("dress")>>
<<if $scene.top == "">>
<<set $scene.top = setup.getItemFromType("strapless_dress")>>
<</if>>
<</if>>
<<set $scene.bottom = setup.getItemFromType("legwear")>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<</if>>/*#
#desc: description of inspection clothes
#status: RELEASED 0.6.0.0
#ignore_spell: w
#*/
<<switch $scene.clothes>>
<<case 'male_office'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
She nods dismissively "@@.npc_manager;That outfit is... adequate to meet your current requirements.@@"<br>
<br>
<<printThought "Huh, she said it was okay, but she sure sounds disappointed...">>
<<case 'unisex'>>
At first you think she is smiling, but her smile turns into a frown in less than a second. Oh right. You're supposed to wear your new Office Uniform or something similar.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, while this would be... adequate for your previous position, it is unacceptable for your current one. I thought I had made myself clear that I do not want your clothes to contain the slightest trace of toxic masculinity to cloud your mind. Do not misunderstand me, masculinity is not a bad thing per se, but in your case it needs to be... subdued. It is holding you back, blocking you from advancing in a more positive direction. And seeing how you disobeyed a direct order yet once again, I am once again validated in taking additional measures to steer you in the proper direction.@@"<br>
<br>
You keep your mouth shut, since nothing you can say would improve the situation.<br>
<br>
"@@.npc_manager;The silent treatment, yes? At least you know how to behave yourself... sometimes.@@"<br>
<br>
<<printThought "Oh, oh. I am afraid that this might lead to a cataclysm...">>
<<case 'female'>>
Not a trace of a smile can be seen on her lips as she gazes over your in disgust.<br>
<br>
<<printThought "Oh, oh. I think I messed up...">><br>
<br>
"@@.npc_manager_dom;W... what are you wearing?@@" asks <<=setup.getNpcName('npc_manager', 'formal')>> before letting out a heavy sigh. "@@.npc_manager;We have been over this again and again, and still you manage to mess up. Sometimes I have the feeling that you are doing this deliberately. You are a <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate<</if>> Secretary! Act like one, or mark my words, I will enrol you in re-education, at your own expense! What were you thinking? No, you know what. Let us continue this inside. But know this, <<=$player.first_name>>, this is not acceptable. Come into my office so we can discuss this further. I hope for your sake that these... clothes are at least clean!@@"<br>
<br>
She shakes her head in disbelief. Looks like you've messed up big time.
<<case 'full_female'>>
"@@.npc_manager;This... this is beyond the pale. What were you even thinking wearing THIS to work?@@" As she speaks, she snatches a grip on your clothing and then, with a casual, but swift pull tears them apart with a loud RIIIIP.<br>
<br>
"@@.npc_manager;Oh my, I appear to have... damaged your outfit. Well, that just goes to show — inappropriate AND flimsy, you can see why it is totally unsuitable for my <<if $fetish.sissy>>SISSI <</if>>Secretary. Now get out of those disgusting clothes so we can proceed with the rest of your inspection.@@"
<</switch>>
<<case 'male_casual'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
<<if $npc_manager.stage == 1>>
You spot the briefest twitch of her eye as she looks over your casual ensemble, but she makes no comment.<br>
<br>
<<printThought "Shit, this is against the dress code, isn't it? I hope this isn't the calm before the storm...">>
<<else>>
<<if $npc_manager.stagevalues[2].appeared_casual==1>>
"@@.npc_manager_dom;W... what are you wearing?@@" <<=setup.getNpcName('npc_manager', 'formal')>> asks with a heavy sigh. "@@.npc_manager;Are you out of your mind? Wait. Do not answer that question. I neither want nor care to know. You are a <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate<</if>> Secretary for heavens sake. That is a very important and representative position within the company, yet you... you appear here, dressed like it is casual Friday at a hole in the wall burger joint! What were you thinking? Clearly you were not thinking at all, at least not in any respectable manner.@@"
<br>
She shakes her head. "@@.npc_manager_dom;You know what? Let's continue this inside. But know this, <<=$player.first_name>>, this is not acceptable. Come into my office so we can discuss this further. I hope for your sake that these... clothes are at least clean!@@"<br>
<br>
She shakes her head in disbelief. Looks like you're in pretty hot water this time.
<<else>>
"@@.npc_manager;Really?@@" <<=setup.getNpcName('npc_manager', 'formal')>> asks with a heavy sigh. "@@.npc_manager;This again, <<=$player.first_name>>? Really? That is the best you could come up with? Well, if you are this desperate for a disciplinary measure I can certainly oblige.@@"
<</if>>
<</if>>
<<case 'unisex'>>
At first you think she is smiling, but her smile turns into a frown in less than a second. Oh right. You're supposed to wear your new Office Uniform or something similar.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, what exactly do you think you are doing wearing... THAT? Not only that you are unable to follow simple instructions as your new office outfit rules, no you manage to break two rules at one. I am not sure if I should be offended or impressed, but I think it is the former!@@"<br>
<br>
You try to come up with a clever excuse as why you wore these clothes, but only incoherent stutters escape your mouth.<br>
<br>
"@@.npc_manager;That is what I thought. We shall discuss this in greater detail during your inspection. I really hope for your sake, that the rest of your clothes are in top notch condition!@@"<br>
<br>
<<printThought "Ah, fuck. I screwed this one up, didn't I?">>
<<case 'female'>>
You note a slightly confused look in her eyes as she scans over your attire.<br>
<br>
<<printThought "That can't be good...">><br>
<br>
"@@.npc_manager;Now, <<=$player.first_name>>, I thought I had made myself clear that you are to appear in female clothes fitting for a secretary. Female. While these do have a feminine touch, they are not nearly feminine enough. Now, do not make me enrol you in re-education, that is not nearly as fun as it sounds and this early in your career the expenses would come out of your own paycheck. Now be a good <<if $fetish.sissy>>sissy<<else>>girl<</if>> and head into my office so we can complete your inspection for today. Perhaps you can improve my mood. I never get tired of seeing you in lingerie.@@"
<<case 'full_female'>>
"@@.npc_manager;This... this is beyond the pale. What were you even thinking wearing THIS to work?@@" As she speaks, she snatches a grip on your clothing and then, with a casual, but swift pull them apart with a loud RIIIIP.<br>
<br>
"@@.npc_manager;Oh my, I appear to have... damaged your outfit. Well, that just goes to show — inappropriate AND flimsy, you can see why it is totally unsuitable for my <<if $fetish.sissy>>SISSI <</if>>Secretary. Now get out of those disgusting clothes so we can proceed with the rest of your inspection.@@"
<</switch>>
<<case 'unisex_office'>>
<<switch $scene.expected_clothing>>
<<case 'unisex'>>
Seeing you <<if $scene.preciselyOnTime>>standing in the doorway<<else>>sitting at your desk<</if>> makes her smile. Maybe even a little bit more than when you used to wear male clothes.
<<if setup.getTotalValue('submission')>3>>
You remember her words...<br>
<br>
<<printThought "Punctuality is one of the pillars of society.">><br>
<br>
Looking at what you're wearing right now, denying that she has great influence over you, would be a lie.<br>
<br>
<<printThought "Oh well, she said I will benefit from these changes.">>
<<else>>
You try to recall her principle...<br>
<br>
<<printThought "Punctuality is a pillar? Something like that.">>
<</if>>
<<case 'female'>>
"@@.npc_manager;Androgynous clothing? I know there was a time that I gushed about how much I adored seeing you in that sort of thing but, well... having seen how much better you look in properly feminine attire there is no going back. It is like an addiction, I suppose.@@"
<<case 'full_female'>>
"@@.npc_manager;I am very disappointed in you. Certainly there was a time when this would have been acceptable, but now... no, this is not proper attire for you at all and something will have to be done.@@"
<</switch>>
<<case 'unisex_casual'>>
<<switch $scene.expected_clothing>>
<<case 'unisex'>>
She slowly shakes her head. "@@.npc_manager;I suppose you made an effort in terms of style but... well... I expect a certain level of professionalism from my employees, particularly one as representative as yourself. Owing to your inexperience with this new routine I will allow you to wear it for today, but do please avoid making a habit of such slovenliness.@@"
<<case 'female'>>
"@@.npc_manager;What is this? Street clothes? And ones that are barely feminine, at that. No, no, no, this is all wrong... please remove them so we can move on with your inspection, but note that this I have to consider this just over the line into what I would consider a serious offense.@@"
<<case 'full_female'>>
She shakes her head. "@@.npc_manager;What do you think this is, casual Friday?
<<if $now.getUTCDay()==5>>
Certainly it is Friday, but there is nothing "casual" about being a properly performing <<if $fetish.sissy>>SISSI <</if>>Secretary.
<<else>>
For one, it is not even Friday, and for two well... there is nothing "casual" about properly performing one's duties as a <<if $fetish.sissy>>SISSI <</if>>Secretary.
<</if>>
No, no, this is absolutely inappropriate for work and we shall have to do something about it.@@"
<</switch>>
<<case 'female_office'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
ERROR: unexpected female office attire too early in the game
<<case 'unisex'>>
/% handled by... something %/
<<case 'female'>>
Seeing you sitting at your desk seems to bring a smile to her face. You remember her words...<br>
<br>
<<printThought "Self control is one of the pillars of society.">>
<<if setup.getItemTypeName("cage")!="">>
<br><br>
Of course you live by her words, since you locked <<if $player.body_ref.penis>>your <<getWordMyPenis false>> away<<else>>yourself away<</if>> like the good, obedient <<if $fetish.sissy>>SISSI<<else>>girl<</if>> you are. You think, she's a good influence on you. After all, she only wants to help you grow, as a person. HER person.
<<elseif $npc_manager.flags.require_chastity>>
<br><br>
Unfortunately you forgot to lock <<if $player.body_ref.penis>>your <<getWordMyPenis false>> away<<else>>yourself up<</if>> as promised. Well, this might have some rather painful consequences. But maybe that's what you were counting on?
<</if>>
<<if $scene.maidScore > 75>>
<br><br>
"@@.npc_manager;Hmm, a maid's outfit? As lovely as that looks, I employ you to serve me as my secretary, not my maid and should thus dress for the office, not the chateau. I cannot bring myself to punish you for looking so adorably cute but... do try to dress more appropriately for work in the future.@@"
<<elseif $scene.maidScore > 0>>
<br><br>
"@@.npc_manager;Hmm, though I approve of the overall look some of those accessories... you are currently employed in service as my <<if $fetish.sissy>>SISSI <</if>>secretary, not my maid and should thus dress for the office, not the chateau. I cannot bring myself to punish you for looking so adorably cute but... do try to dress more appropriately for work in the future.@@"
<<elseif $scene.nearOffice>>
<br><br>
"@@.npc_manager;One note — while the overall look is, I suppose, office-acceptable, there are some details that keep you a bit shy of perfection. Please do something about that going forward.@@"
<</if>>
<<case 'full_female'>>
<<if $scene.maidScore > 75>>
"@@.npc_manager;Hmm, a maid's outfit? As lovely as that looks, I employ you to serve me as my secretary, not my maid and should thus dress for the office, not the chateau. I cannot bring myself to punish you for looking so adorably cute but... do try to dress more appropriately for work in the future.@@"
<<elseif $scene.maidScore > 0>>
"@@.npc_manager;Hmm, though I approve of the overall look some of those accessories... you are currently employed in service as my <<if $fetish.sissy>>SISSI <</if>>secretary, not my maid and should thus dress for the office, not the chateau. I cannot bring myself to punish you for looking so adorably cute but... do try to dress more appropriately for work in the future.@@"
<<elseif $scene.nearOffice>>
"@@.npc_manager;So close... certainly the overall look comes together to office-acceptable, some of the details though...@@" She shakes her head. "@@.npc_manager;I expect you to always strive for perfection. In this case in particular that translates to you having work yet to do.@@"
<<else>>
She smiles at your choice of clothing. "@@.npc_manager;Perfection. This is precisely what I want and expect from my <<if $fetish.sissy>>SISSI <</if>>Secretary. The word uniform is a bit too... rigid and restrictive to properly describe the soft, feminine creativity I desire from you, but whatever you call it you have worked within my instructions and come up with something professional and quite pleasant to the eye. Well done.@@"
<</if>>
<</switch>>
<<case 'female_casual'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
ERROR: unexpected female casual attire too early in the game
<<case 'unisex'>>
Her expression appears mixed as she looks over your casual attire.<br>
<br>
"@@.npc_manager;The overall style well... I like it, it really brings out your natural femininity but... well, it is a bit too laid back and casual for one in your position. That said...@@" She seems to think for a few moments. "@@.npc_manager;Yes, new update — going forward I want you to be dressed in PROPER female office attire. The unisex stuff was fine for what it was, but you are a <<if $fetish.sissy>>SISSI <</if>>Secretary and should be attired in a fully feminine manner.@@"
<<case 'female' 'full_female'>>
She shakes her head in dismay at your casual outfit.<br>
<br>
"@@.npc_manager;What do you think you are wearing? This is a professional office and you should comport yourself accordingly — in manner AND dress, at all times!@@"
<</switch>>
<<case 'female_formal'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
ERROR: unexpected female formal attire too early in the game
<<case 'unisex'>>
ERROR: unexpected female formal attire too early in the game
<<case 'female' 'full_female'>>
Her expression appears mixed, on the one hand you can tell that she likes what she sees, but on the other hand she looks disappointed.<br>
<br>
"@@.npc_manager;That outfit is... well, it is gorgeous on you, to be perfectly honest. That said, it is a bit much for an office job, your duties do not entail hosting royal balls, after all.@@"<br>
<br>
She chuckles as if at some unspoken joke. "@@.npc_manager;I will allow it, for today, but please, wear something more suitable for the office in the future.@@"
<</switch>>
<<case 'female_schoolgirl'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
ERROR: unexpected female formal attire too early in the game
<<case 'unisex'>>
ERROR: unexpected female formal attire too early in the game
<<case 'female' 'full_female'>>
She shakes her head.<br>
<br>
"@@.npc_manager;Well... while there is no doubt that is a female outfit it is equally true that it is inappropriate for the office. Far too juvenile and... ribald. No, I do not think that this is at all appropriate for one who works in a representative position.@@"
<</switch>>
<<case 'female_maid'>>
<<switch $scene.expected_clothing>>
<<case 'male'>>
ERROR: unexpected female formal attire too early in the game
<<case 'unisex'>>
ERROR: unexpected female formal attire too early in the game
<<case 'female' 'full_female'>>
She shakes her head.<br>
<br>
"@@.npc_manager;Well... while there is no doubt that is a female outfit it is equally true that it is inappropriate for the office. You work in a representative position, and that means you should not confuse by mis-representing yourself as a member of the janitorial staff... or, I suppose, certain other service personal. No, while a maid is a noble profession, their uniform is not your own.@@"
<</switch>>
<<case 'cosplay'>>
She shakes her head.<br>
<br>
"@@.npc_manager;No... I do not think that is quite the sort of attire to be wearing for work, perhaps if you were a Secretary on a space station... but not here.@@"
<<default>>
ERROR: unknown scene clothes: <<=$scene.clothes>>
<</switch>>
<br><br>/*#
#desc: compute variables related to shoes inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<if setup.getItemObj($scene.shoes).hasOwnProperty("heels")>>
<<set $scene.shoeHeelDifficulty = setup.getItemObj($scene.shoes).heels.difficulty>>
<<else>>
<<set $scene.shoeHeelDifficulty = 0>>
<<set $scene.seriousoffense = true>>
<</if>>/*#
#desc: text related to shoes inspection
#status: RELEASED 0.6.0.0
#*/
Her gaze turns towards your footwear.<br>
<br>
<<switch $scene.shoes>>
<<case 'thigh_highs_pink'>>
<<if setup.getTotalValue("heels") >= $scene.shoeHeelDifficulty>>
<<set _heelApprove = true>>
"@@.npc_manager;It is so good that you are able to walk well enough to do those hot boots justice. Keep it up, steep heels like that do wonders for your figure.@@"
<<elseif ($scene.shoeHeelDifficulty - setup.getTotalValue("heels") ) <= 2>>
"@@.npc_manager;I admire the effort, but it does not look like you are quite nimble enough for those heels. It is such a shame to sully their sexiness with a stumble, please do not wear them again until you can walk properly and confidently in them.@@"
<<else>>
"@@.npc_manager;I really think those boots are a mistake for you. Not for looks — they are very attractive, but you look about ready to twist and ankle at any moment and I would hate for you to take sick time for an injury. Please practice more in heels before wearing them to work.@@"
<</if>>
<<case 'bed_heels_pink' 'bed_heels_purple'>>
<<if setup.getTotalValue("heels") >= $scene.shoeHeelDifficulty>>
"@@.npc_manager;You know, I never imagined when I assigned you to sleep in those that I would see you wearing them to work. I have to say, they look even better in person than they did in pictures, and you look completely confident walking in them to boot! I love that you are embracing wearing such attire in public, it reflects well on you, me as your owner, and the company as a whole.<<if $scene.reassignBedHeels>> Let us make sure this progress really sticks. In other words, I will be expecting another photograph this evening.<</if>>@@"
<<else>>
"@@.npc_manager;Hmm, it seems you need to put in some additional practice before you can safely walk in those heels. Wearing them to bed is one thing, but going about your day, well... such practice should be done on your own time, not while you are on the clock, in a representative position@@"
<</if>>
<<case 'ballet_boots_black' 'ballet_boots_pink'>>
<<if setup.getTotalValue("heels") >= $scene.shoeHeelDifficulty>>
"@@.npc_manager;You really have come quite a long way. Remember when you wore nothing but flats? Now look at you, wearing even steeper heels than your boss! You know some women would not take kindly to that sort of one-upswomanship, but so long as you remain behaved I am just proud of how far you have come.@@"
<<elseif ($scene.shoeHeelDifficulty - setup.getTotalValue("heels") ) <= 2>>
"@@.npc_manager;Wow, you are so close to walking in those ballet boots, just that little bit of shaking in your knees betraying that you have not quite mastered them... I cannot be too upset, I suppose, they are QUITE the challenge. I have faith that you will impress me once again and master them soon the way you are going.@@"
<<else>>
"@@.npc_manager;Hmm, it seems you are not quite at the level where ballet boots are appropriate to wear. Practice, practice, I am sure you can get there eventually, but such practice should be done on your own time, not while you are on the clock, in a representative position.@@"
<</if>>
<<default>>
<<if $scene.shoeHeelDifficulty != 0>>
<<if setup.getTotalValue("heels") < $scene.shoeHeelDifficulty>>
"@@.npc_manager;Good, you are wearing heels... I just wish you could properly walk in them!@@"
<<else>>
"@@.npc_manager;Good, you are wearing heels and walking properly in them, to boot... no pun intended.@@"
<</if>>
<</if>>
<</switch>>
<br><br>/*#
#desc: compute variables related to clothing cleanliness inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.cleanclothes = false>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task") && setup.checkTaskReason("manager_morning_inspection_task","clothesClean")>>
<<set $scene.score += 1>>
<<set $scene.cleanclothes = true>>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && setup.checkTaskReason("manager_morning_inspection_task_repeat","clothesClean")>>
<<set $scene.score += 1>>
<<set $scene.cleanclothes = true>>
<<else>>
<<if setup.checkWornStatus('piss','>',24).length>0>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<applyExperience 'piss' 3 'very' $SEEN_FRIEND>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<<set $scene.unclean = true>>
<</if>>
<<set $npc_manager.flags.appeared_piss+=1>>
<</if>>
<<if setup.checkWornStatus('cumsoaked','>',24).length>0>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 5 'very' $SEEN_FRIEND>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<<set $scene.unclean = true>>
<</if>>
<<set $npc_manager.flags.appeared_cumsoaked+=1>>
<</if>>
<<if (setup.checkWornStatus('dirty','>',74).length>0)||(setup.checkWornStatus('sweaty','>',74).length>0)>>
<<applyExperience 'humiliation' 6 'little' $SEEN_FRIEND>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<<set $scene.unclean = true>>
<</if>>
<<set $npc_manager.flags.appeared_dirty+=1>>
<</if>>
<<if setup.isItemEquipped('shirt_stained')>>
<<applyExperience 'humiliation' 6 'little' $SEEN_FRIEND>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<<set $scene.unclean = true>>
<</if>>
<<set $npc_manager.flags.appeared_dirty+=1>>
<</if>>
<<if $npc_manager.stage > 1 && $scene.gender == "unisex" && !$npc_manager.stagevalues[1].unisexsecretary>>
<<set $scene.stage2Unisex = true>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<</if>>
<</if>>She takes a moment to examine the cleanliness of your clothes.<br>
<br>
<<if $scene.cleanclothes>>
<<if $npc_manager.stage == 1>>
<<if $npc_manager.flags.spill_event>>
<<if setup.isItemEquipped('shirt')>>
Her gaze skims over your neatly folded masculine attire. As she looks at your shirt, she seems a bit surprised and... disappointed?<br>
<br>
"@@.npc_manager;You got that nasty stain out, colour me impressed. Very good... though I thought you might have taken this opportunity to try wearing something less... masculine.@@"<br>
<br>
<<printThought "Hmm, she keeps dropping hints like I should be wearing more unisex clothing to work...">>
<<elseif $scene.gender == "male">>
Her gaze skims over your neatly folded attire. "@@.npc_manager;Hmm, I suppose that outfit is overall... acceptable, though I daresay you would look better in something bit less masculine.@@"<br>
<br>
<<printThought "Hmm, she keeps dropping hints like I should be wearing more unisex clothing to work...">>
<<else>>
She smiles at your choice of attire. "@@.npc_manager;Lovely, nary a trace of masculinity, you look so much better like this.@@"
<</if>>
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
<<if $scene.gender== "male">>
"@@.npc_manager;Well, at least your clothes are clean and tidy as they are supposed to be. Still, it would be a lot better for you if you wore the things that actually met the dress code.@@"
<<if $npc_manager.flags.spill_event>>
<br><br>
She pauses
<</if>>
<<else>>
"@@.npc_manager;Freshly washed, as far as I can tell. Very good.@@"
<</if>>
<<else>>
"@@.npc_manager;Freshly washed, as far as I can tell. Very good.@@"
<</if>>
<<elseif $npc_manager.stage > 2 && $scene.gender == "male">>
"@@.npc_manager;As if it wasn't bad enough that you decided to dress in such a despicable manner, you could not even keep things clean! Disgusting.@@"
<<elseif $npc_manager.stagevalues[2].femalesecretary>>
<<switch $scene.gender>>
<<case "male">>
"@@.npc_manager;This... this is unacceptable. While I admire strength of will in certain situations stubbornness is far less attractive. You need to get it through your silly head: you are a <<if $fetish.sissy>>SISSI <</if>>Secretary and that means dressing like this... like a man... well, it just will. not. do.@@"
<<case "unisex">>
"@@.npc_manager;So close, and yet so far... I can see the hints of femininity in your outfit, but it is far from enough. I expect my <<if $fetish.sissy>>SISSI <</if>>Secretary to look cute and inviting and that means you should be dressed head to toe in proper fully feminine clothing.@@"
<<default>>
"@@.npc_manager;Well done, your clothing looks clean and tidy and delightfully feminine. Just as instructed. Very good.@@"
<</switch>>
<<elseif $npc_manager.stage > 1 || $npc_manager.stagevalues[1].unisexsecretary || $scene.stage2Unisex>>
<<switch $scene.gender>>
<<case "male">>
"@@.npc_manager;Well, at lease everything looks clean and tidy. Unfortunately the style... what you are wearing is definitely too masculine for your dress code.@@"
<<default>>
<<if $scene.stage2Unisex>>
She looks at your attire with the barest hint of a smile.<br>
<br>
"@@.npc_manager;Good, you are finally adjusting, getting away from that disgusting masculine attire. Chastity really is such a wonderful tool for bringing clarity, hmm? This sort of attire feels better, does it not? More natural? I am sure you will find it quite improves your work, and state of mind. Note that I will be expecting you to dress thus going forward. Never again will I permit the slightest thread of masculine attire upon your body within this office.@@"<br>
<br>
That all sounds a bit implausible to you, well, except her implied threat, but you are smart enough to hold your tongue on that count.
<<else>>
"@@.npc_manager;Well done, your clothing looks clean and tidy as instructed. Very good.@@"
<</if>>
<</switch>>
<<else>>
"@@.npc_manager;Well done, your clothing looks clean and tidy as instructed. Very good.@@"
<</if>>
<<else>>
"@@.npc_manager;You call this clean, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"
<<set _tmpListDirty = setup.checkWornStatus('dirty','>',74)+setup.checkWornStatus('sweaty','>',74)>>
<<if _tmpListDirty.length>0>>
<br><br>
"@@.npc_manager;I
<<if $scene.formal == 'casual' || ($scene.gender == 'unisex' && $npc_manager.stage > 2) || ( $scene.gender == 'male' && $npc_manager.stage > 1)>>
might have thought you just ran out of clean clothes of an appropriate style, but these are not just the wrong type of clothes, but dirty to boot!
<<else>>
know your dress code requirements may limit your possible outfits, but you need to adjust your laundry schedule to make sure you always have something clean to wear.
<</if>>
This look, and stench, is ill suited for a secretary of mine! You are working for a multi billion credit cooperation, not some pigpen. If you would prefer the reverse, that can, and will, be arranged if you continue this sort of behaviour, my little piglet!@@"
<br><br>
<</if>>
<<set _tmpListCum = setup.checkWornStatus('cumsoaked','>',24)>>
<<if _tmpListCum.length>0>>
<br><br>
<<if _tmpListDirty.length>0>>
"@@.npc_manager;Speaking of a pigpen, is that cum?@@"
<<else>>
"@@.npc_manager;Is that cum?@@"
<</if>>
<br><br>
<<if setup.checkItemListfromSpecific(_tmpListCum,'panties',true) && (setup.checkItemListfromSpecific(_tmpListCum,'bra',true)||setup.checkItemListfromSpecific(_tmpListCum,'stockings',true)||setup.checkItemListfromSpecific(_tmpListCum,'garter',true))>>
"@@.npc_manager;I can see where the cum from your panties comes from but... ooh. You naughty little <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Already whoring yourself to the highest, or maybe lowest? bidder? Maybe we should have you on a street corner instead of a nice cushy office? Is that what you would like you dirty <<if $fetish.sissy>>sissy <</if>>whore?@@"<br>
<br>
"@@.npc_manager;I really do not care what, or who, you do in your spare time, but here you are to be clean and tidy. Or mark my words, I will housebreak you myself.@@"
<</if>>
<</if>>
<<set _tmpList = setup.checkWornStatus('piss','>',24)>>
<<if _tmpList.length>0>>
<br><br>
<<if _tmpListCum.length>0>>
"@@.npc_manager;Speaking of street corners, you smell like the wall where drunks piss!@@"
<<elseif _tmpListDirty.length>0>>
"@@.npc_manager;Speaking of pigpen, you smell like one as well!@@"
<<else>>
"@@.npc_manager;What is this retched stench, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"
<</if>>
She takes a deeper whiff and her expression twists in disgust. "@@.npc_manager;Did you piss yourself or did someone piss on you? I do not even want to know. Keep this up and you will have a new "office" or should I say, stall, working as a new urinal for the higher ups. Heaven knows they are always looking for new toilet-slaves.@@"<br>
<br>
<<printThought "Wait, what? She has to be teasing me...">>
<</if>>
<</if>>
<br><br>/*#
#desc: compute variables related to clean body inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.cleanBody = true>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task") && !setup.checkTaskReason("manager_morning_inspection_task","playerClean")>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<</if>>
<<set $scene.cleanBody = false>>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && !setup.checkTaskReason("manager_morning_inspection_task_repeat","playerClean")>>
<<if $npc_manager.stage < 3>>
<<set $scene.seriousoffense = true>>
<</if>>
<<set $scene.cleanBody = false>>
<</if>>/*#
#desc: text related to clean body inspection
#status: RELEASED 0.6.0.0
#*/
<<if $scene.cleanBody>>
She gives you a quick sniff and nods. "@@.npc_manager;Good, you are clean. Not that I expected less but, well... always best to be thorough when doing an inspection, remove your clothing.@@"
<<else>>
She gives a sniff, her nose wrinkling. "@@.npc_manager;Did you... forget to wash? No, this will not do at all. I expect you to be clean when you come to work. Still, let us continue, remove your clothing.@@"
<</if>>
<br><br>/*#
#desc: compute variables related to makeup inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.makeup = setup.getCurrentMakeup()>>
<<if $npc_manager.stage >= 4 || $npc_manager.stagevalues[2].makeup>>
<<switch $scene.makeup>>
<<case "">>
<<set $scene.badMakeup = true>>
<<case "nomakeupmakeup">>
<<set $scene.badMakeup = true>>
<<case "ultimatebimbo">>
<<set $scene.badMakeup = false>>
<<case "normalmakeup" "expertmakeup" "moviestar" "camgirl" "egirl" 'sissy_doll' 'qtpie'>>
<<set $scene.badMakeup = false>>
<</switch>>
<<if $player.makeup.messed > 25>>
<<set $scene.badMakeup = true>>
<</if>>
<<if $scene.badMakeup && $scene.fixMakeupIfWrong>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.permanent = 'sissy_doll'>>
<<setThreshold 'feminization' 'dress_code' 'sissy_doll_fem'>>
<<set $player.makeup.template = ''>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>/*#
#desc: text related to makeup inspection
#status: RELEASED 0.6.0.0
#*/
"@@.npc_manager;And now for the final detail, the cherry on top of what should be a delicious <<if $fetish.sissy>>SISSI<<else>>girl<</if>> sundae — your makeup.@@" <<=setup.getNpcName('npc_manager', 'formal')>> cups your chin and examines your face.<br>
<br>
<<switch $scene.makeup>>
<<case "">>
"@@.npc_manager;Has anyone told you yet today how cute your face is? Well, they certainly would if you would only remember your makeup! I told you to wear it every day to put your best face forward. I am quite disappointed in your failure to obey.@@"
<<case "nomakeupmakeup">>
"@@.npc_manager;Hmm, subtle. I would say it was a good start, but you are not a fresh-faced new secretary any more. I told you proper makeup is part of my expectation for you and as well applied this is, it is insufficient.@@"
<<case "normalmakeup">>
"@@.npc_manager;Lovely, but not overstated, this is the exact style of makeup I expect for you.@@"
<<case "expertmakeup">>
"@@.npc_manager;Hmm, a bit of a bold choice in makeup style, but within acceptable parameters.@@"
<<case "camgirl" "egirl" "qtpie">>
"@@.npc_manager;Went a bit heavy with the brush, did we? still, acceptable.@@"
<<case "moviestar">>
"@@.npc_manager;Very impressive choice for makeup, very nice.@@"
<<case "ultimatebimbo">>
<<if $player.flags.bimbo_work.unlock>>
"@@.npc_manager;You do not believe in half measures, do you? If you wanted to look like a bimbo slut, you definitely nailed things. Not my preferred style, but appropriate, I suppose, for some of your more recent work responsibilities.@@"
<<else>>
"@@.npc_manager;Unfortunately it is not technically what I would call professional, but, well... I AM the one in charge of HR, and besides, I doubt anyone could look into your pretty <<=$player.eyecolor>> eyes and complain. I will allow it, but know that I would prefer something less lascivious and more work-appropriate.@@"
<</if>>
<<case "sissy_doll">>
"@@.npc_manager;Mmm, my lovely <<if $fetish.sissy>>SISSI<<else>>girl<</if>> doll... you look so sweet like this.@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
She peers closer, meticulously inspecting technique rather than mere style.
<<if $player.makeup.messed >= 75>>
"@@.npc_manager;Pitiful, I can barely even tell what you were going for with this makeup. It is trashed and it makes you look like trash, which should almost be a crime given how cute of a face you have under there... somewhere. You should not even be in public like this, much less here representing me and the company.@@"
<<elseif $player.makeup.messed >= 25>>
<<switch $scene.makeup>>
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll" "camgirl" "egirl" "qtpie">>
"@@.npc_manager;No, no, this will not do at all. Makeup is not just something you slap on and forget, it is a responsibility. One should never let it get into a state like this. Checking and touching yourself up needs to be a part of your routine at all times.@@"
<<case "" "nomakeupmakeup" "ultimatebimbo">>
"@@.npc_manager;And to make it worse, your makeup is a mess! No, this will not do at all.@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<<else>>
<<switch $scene.makeup>>
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll" "camgirl" "egirl" "qtpie">>
"@@.npc_manager;And your makeup is perfectly maintained, well done!@@"
<<case "">>
"@@.npc_manager;No, this will not do at all. To perform your duty you must look the part — you work in a representative position, after all.@@" She pulls a mask out of her desk, and before you can react she is pressing it over your face, holding it firm as things get momentarily warm and you feel something brushing against your skin. "@@.npc_manager;There, that is much better, would you not agree?@@" She asks as you glance at a mirror, blinking at your new, doll-like countenance.
<<case "nomakeupmakeup">>
"@@.npc_manager;I would offer points for the fact that your makeup is well maintained but, well... maintaining the wrong thing is practically the same as maintaining the right thing wrong!@@"
<<case "ultimatebimbo">>
<<if $player.flags.bimbo_work.unlock>>
"@@.npc_manager;I know you may be working, and looking like a bimbo slut — but you are still in a representative position, which means you should look at all times like a perfect bimbo slut — not a sloppy one.@@"
<<else>>
"@@.npc_manager;I would offer points for the fact that your makeup is well maintained but, well... maintaining the wrong thing is practically the same as maintaining the right thing wrong!@@"
<</if>>
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<</if>>
<br><br>
<<if $scene.badMakeup && $npc_manager.stage < 4>>
<<=setup.getNpcName("npc_manager","formal")>> produces a face-mask. "@@.npc_manager;If you cannot attend to yourself, well... you work in a representative position, so I fear I must attend to it for you.@@"<br>
<br>
Before you can object she has placed the mask over your face. A few seconds of tingly warmth is all it takes and she pulls it away to leave you with perfectly cute <<if $fetish.sissy>>sissy <</if>>doll makeup.<br>
<br>
<</if>>
<<if setup.isItemEquipped("hoop_earrings_gold")>>
"@@.npc_manager;Oh, and let me say that I love how those earrings highlight your face, they really draw attention to that slender neck.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 15 && !setup.checkItemTypeWorn("choker")>>
<<printThought "My neck would look even better with her collar around it...">><br>
<br>
<</if>>
<</if>>/*#
#desc: compute variables related to chastity inspection
#status: RELEASED 0.6.0.0
#*/
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if !setup.checkItemTypeWorn("cage")>>
<<set $npc_manager.flags.chastitydays = 0>>
<</if>>
<<if $npc_manager.flags.require_chastity>>
<<if !$scene.hasOwnProperty('forgot_cage_key')>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.forgot_cage = $scene.cage == "">>
<<set $scene.forgot_cage_lock = false>>
<<set $scene.broken_cage = ($scene.cage == "broken_cage" || $scene.cage == "broken_belt")>>
<<set $scene.firstAdvCage = false>>
<<set $scene.firstSissyomatic = false>>
<<set $scene.hasAdvKey = false>>
<<set $scene.differentCage = false>>
<<if $scene.cage>>
<<include "calcBaseCage">>
<<set $scene.differentCage = $npc_manager.flags.lastCage && $npc_manager.flags.lastCage != _cage>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.improperKey = $npc_manager.flags.hascagekey && setup.checkItemInInventory(_keyId)>>
<<else>>
<<set $scene.differentCage = $npc_manager.flags.lastCage>>
<</if>>
<<if $scene.cage == "">>
<<set $scene.forgot_cage_key = true>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<elseif $player.sec_style.submission.chastity != "money" && !$npc_manager.flags.knowAdvanced && ($scene.cage == "c_cage_advanced" || $scene.cage == "chastity_belt_adv")>>
<<set $scene.firstAdvCage = true>>
<<set $scene.forgot_cage_key = true>>
<<elseif $player.sec_style.submission.sissyomatic == "voluntary" && !$npc_manager.flags.knowSissyomatic && (setup.getChastityLevel() == 5)>>
<<set $npc_manager.flags.knowSissyomatic = true>>
<<set $scene.firstSissyomatic = true>>
<<set $scene.prevKey = !$npc_manager.flags.playerstayedinchastity>>
<<if $scene.prevKey>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<</if>>
<<elseif $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.forgot_cage_key = $npc_manager.flags.trustplayerwithkey && !$npc_manager.flags.playerstayedinchastity && !setup.checkItemInInventory($scene.keyId) && !$scene.gaveKey>>
<<set $scene.hasAdvKey = setup.checkItemOwned("advance_chastity_cage_key")>>
<</if>>
<<set $scene.manager_hascagekey = $npc_manager.flags.hascagekey>>
<<set $scene.stayed_in_chastity = false>>
<<if $scene.forgot_cage_key && !$scene.incrementedkeycount>>
<<set $scene.incrementkeycount = true>>
<<set $npc_manager.trigger.forgotten_key += 1>>
<<applyExperience 'bimbofication' 13 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if !$scene.forgot_cage && ($currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key') || $scene.manager_hascagekey)>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<if $npc_manager.flags.hascagekey || setup.checkItemInInventory(setup.getItemObj($scene.cage).lockable[1])>>
<<set $scene.score += 1>>
<<set $scene.keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if !$npc_manager.flags.hascagekey && !($currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished)>>
<<deleteItem $scene.keyId>>
<</if>>
<</if>>
<<if $npc_manager.flags.hascagekey && ($player.timebased.locked_cage_voluntarily >= (8*3600))>>
<<set $npc_manager.flags.good_girl.stayed_in_chastity_voluntarily+=1>>
<<set $scene.stayed_in_chastity = true>>
<</if>>
<</if>>
<<if !$inventory[$scene.cage].status.lock>>
<<if $scene.cage != "sissyomatic" && $scene.cage != "sissyomatic_belt">>
<<set $scene.forgot_cage_lock = true>>
<</if>>
<<manipulateItem $scene.cage 'lock' true>>
<</if>>
<<if !($currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks.task_chastity_trial.finished)>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<</if>>
<</if>>
<<elseif !$npc_manager.flags.require_chastity && setup.checkItemTypeWorn("cage")>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>><<set _cageName = setup.getItemFromType("cage")>>
<<if _cageName>>
<<if setup.getChastityLevel() == 5>>
<<if _cageName.endsWith("_jumbo")>>
<<set _cage = _cageName.slice(0,-6)>>
<<elseif _cageName.endsWith("_med")>>
<<set _cage = _cageName.slice(0,-4)>>
<<else>>
<<set _cage = _cageName>>
<</if>>
<<else>>
<<set _cage = _cageName>>
<</if>>
<<else>>
<<set _cage = "">>
<</if>>/*#
#desc: text related to chastity inspection
#status: RELEASED 0.6.0.0
#*/
<<if $npc_manager.flags.require_chastity>>
Parting your undergarments, her attention turns towards what lies beneath.<br>
<br>
<<if $scene.cage != "" && $scene.forgot_cage_lock>>
"@@.npc_manager;What is this? You can be such a ditz, <<=$player.first_name>>. You forgot to actually lock up!@@" she laments while locking your <<if setup.isCage()>>cage<<else>>belt<</if>> by pushing the shackle into the padlock. A foreboding click signals that <<if $player.body_ref.penis>>your <<getWordMyPenis false>> is<<else>>you are<</if>> now locked
<<if $scene.forgot_cage_key>>
<<if $npc_manager.flags.partyKeptKey>>
away for the day, since you decided to leave the key at home.
<<else>>
away for the day, since she did not give the key back after the party.
<</if>>
<<elseif $npc_manager.flags.trustplayerwithkey>>
away.
<<else>>
away for the day, since you do not have possession of the key.
<</if>>
<<elseif $scene.firstSissyomatic>>
She looks upon your chastity device with surprise "@@.npc_manager;How did you—?@@" She starts to grin and you become suddenly nervous about what you've done.<br>
<br>
"@@.npc_manager;Did you somehow steal a <<=setup.getItemTypeName('cage')>> from <<=setup.getNpcName("npc_work_doctor","other")>> and lock yourself in of your own volition? Oh how deliciously submissive, I love it! And do not worry, I will not inform <<=setup.getNpcName("npc_work_doctor","other")>> of your larceny.@@"<br>
<br>
You breathe easier as she smiles wider. "@@.npc_manager;Of course you should know that there is no going back — the "key" to that device is a digital secret that is considered company property, you gaining access to it, for any reason, is actually considered an explicit breach of contract!@@" You gulp<<if $scene.prevKey>>. "@@.npc_manager;As an additional benefit to you, of course, that means you no longer need bother yourself with remembering to bring the key with you each morning, you can remain locked and controlled without every worrying about a lapse in self-control.@@"<<else>> as she continues to the rest of your inspection.<</if>>
<<else>>
"@@.npc_manager;Good, securely locked in chastity,@@" she declares while checking that the lock is tightly closed.
<</if>>
<<if !$scene.firstSissyomatic>>
<br><br>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
<<if $player.sec_style.body.chastity == "money">>
Her hand rests a little bit longer than usual over your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>, and even rubs up and down a little bit.<br>
<br>
"@@.npc_manager;Still nice and locked up for pay. You know it really is impressive that you would find yourself submitting for a paycheck two different ways. You really are a hungry <<if $fetish.sissy>>SISSI <</if>>Secretary slave crying out to be owned.@@"<br>
<br>
<<printThought "What? No way? I am not some... some <<if $fetish.sissy>>sissy<<else>>submissive<</if>> Secretary. Am I?">><br>
<br>
"@@.npc_manager;A pity I am not in possession of the key... yet. But I am sure that will be sorted out once you finish with this little trial, hmm?@@"<br>
<br>
You gulp as she grins wider.
<<elseif !$npc_manager.flags.knowAdvanced>>
She asks for the key to your <<if setup.isCage()>>cage<<else>>belt<</if>> and you awkwardly explain that you do not have it, quickly showing off your "new" device as you explain the terms of the trial that you signed up for.<br>
<br>
She purses her lips in thought. "@@.npc_manager;Hmm, you present me with an interesting situation. In strict terms you have failed to do as required and bring the key to your <<if setup.isCage()>>cage<<else>>belt<</if>> to work with you, but on the other hand your initiative well... while I would prefer to remain in control of your chastity myself this adventurous seeking to better yourself is quite a promising sign...@@" You bite your lip nervously as you await her judgement.<br>
<br>
"@@.npc_manager;At the end of the day rules are rules so, while I will apologise for this being a rather strict interpretation, I am afraid that I am going to have to hold your lack of key against you. Though I will take into account the chastity trial going forward. Until you finish the trial I will count you being on such sufficient to count towards your bringing the key to work, and I will also be counting the days now until the end of your trial when the key, and thus you, can be rightfully placed back under my protective possession.@@"<br>
<br>
<<printThought "I thought I was just going to make a quick buck... now I'm in trouble?">>
<<else>>
"@@.npc_manager;Still locked up for that trial? I suppose that shall do... but I am slightly bending the rule that you are to turn over your key while you are at work. Oh, I am so looking forward to the end of that trial, when I may take a more... personal hand in your security.@@"<br>
<br>
You shiver slightly at her words as she continues on.
<</if>>
<<elseif $npc_manager.flags.trustplayerwithkey>>
<<if $scene.forgot_cage_key>>
<<if $npc_manager.flags.partyKeptKey>>
"@@.npc_manager;Well, go ahead, <<=$player.first_name>>, hand me the key,@@" she demands while extending her hand towards you.<br>
<br>
Somewhat nervously you explain that what with the party and all she forgot to give it back to you...<br>
<br>
"@@.npc_manager;Forgot... yes, but, be honest, didn't it feel so much better to leave it with me? Now, of course, a deal is a deal so I will return it at the end of the day today... unless you decide that last night was something you wish to repeat. Trust me when I say that purposefully giving me the key will feel even better.@@"
<<elseif $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
<<if $player.sec_style.submission.chastity == "money">>
Her hand rests a little bit longer than usual over your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>, and even rubs up and down a little bit.<br>
<br>
"@@.npc_manager;Still nice and locked up for pay. You know it really is impressive that you would find yourself submitting for a paycheck two different ways. You really are a hungry <<if $fetish.sissy>>SISSI <</if>>Secretary slave crying out to be owned.@@"<br>
<br>
<<printThought "What? No way? I am not some... some <<if $fetish.sissy>>sissy<<else>>submissive<</if>> Secretary. Am I?">><br>
<br>
"@@.npc_manager;A pity I am not in possession of the key... yet. But I am sure that will be sorted out once you finish with this little trial, hmm?@@"<br>
<br>
You gulp as she grins wider.
<<elseif !$npc_manager.flags.knowAdvanced>>
She asks for the key to your <<if setup.isCage()>>cage<<else>>belt<</if>> and you awkwardly explain that you do not have it, quickly showing off your "new" device as you explain the terms of the trial that you signed up for.<br>
<br>
She purses her lips in thought. "@@.npc_manager;Hmm, you present me with an interesting situation. In strict terms you have failed to do as required and bring the key to your <<if setup.isCage()>>cage<<else>>belt<</if>> to work with you, but on the other hand your initiative well... while I would prefer to remain in control of your chastity myself this adventurous seeking to better yourself is quite a promising sign...@@" You bite your lip nervously as you await her judgement.<br>
<br>
"@@.npc_manager;At the end of the day rules are rules so, while I will apologise for this being a rather strict interpretation, I am afraid that I am going to have to hold your lack of key against you. Though I will take into account the chastity trial going forward. Until you finish the trial I will count you being on such sufficient to count towards your bringing the key to work, and I will also be counting the days now until the end of your trial when the key, and thus you, can be rightfully placed back under my protective possession.@@"<br>
<br>
<<printThought "I thought I was just going to make a quick buck... now I'm in trouble?">>
<<else>>
"@@.npc_manager;Still locked up for that trial? I suppose that is good... but rules ARE rules, and you not having the key, well... a bit of punishment should keep you focused on reaching the end of your little trial, mmm? Oh, I am looking forward to its end, when I may take a more... personal hand in your security.@@"<br>
<br>
You shiver slightly at her words as she continues on.
<</if>>
<<else>>
You lower your eyes and admit that you forgot the key at your flat.<br>
<br>
"@@.npc_manager;Oh how very convenient... for you.@@"<br>
<br>
You are surprised by this reaction.<br>
<br>
"@@.npc_manager;Do not worry, I had foreseen some resistance by your side and was prepared for worse disobedience. This... this is nothing,@@" she says while <<if setup.isCage()>>freeing your cage from your<<else>>exposing your belt from beneath your<</if>> <<=setup.getItemTypeName("panties")>>. Then she unlocks the lock with a key of her own before changing the lock on the device for another.<br>
<br>
"@@.npc_manager;See, now you have a shiny new lock and the key you so conveniently forgot at home is now useless, while I remain in possession of the true key. The important question is, am I willing to give you the key at the end of the day? Only one way to find out. Until then you are all locked up and tucked away, so you can concentrate on more important issues. Self control is a fundamental pillar of society, never forget that, <<=$player.first_name>>.@@"
<</if>>
<<elseif $npc_manager.flags.playerstayedinchastity>>
<<if (setup.daysToDate($npc_manager.stagevalues[2].promodate, $now) <= 0 || $now.getUTCDay() == 1 && setup.daysToDate($npc_manager.stagevalues[2].promodate, $now) <= 2) && !$player.sec_style.submission.permanent_key>>
Her hand rests a little bit longer than usual above your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>, and even rubs up and down for a few moments.<br>
<br>
"@@.npc_manager;Ah, yes, I neglected to return your key yesterday... but it seemed to work out, hmm?@@" She winks, and you feel a shiver run down your spine.
<<else>>
Her hand rests a little bit longer than usual above your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>, and even rubs up and down for a few moments.<br>
<br>
<<if !setup.checkItemTypeTag('cage', ['restrictedkey']) && $player.sec_style.submission.permanent_key == "">>
<<if setup.hasUpgrade($bed, 'keysafe')>>
"@@.npc_manager;Nicely secure, and you key safely locked under your bed at home... lovely.@@"
<<else>>
"@@.npc_manager;Oh, <<=$player.first_name>>, such splendid behaviour, to lock <<if $player.body_ref.penis>>that useless little thing<<else>>yourself safely<</if>> of your own free will. I am so proud of you. You are turning out even better than I imagined you might. We will just keep the key here on your desk to remind you of your devotion. And you may, of course, have it back at the end of the day. That is... if you want it back at all. I would understand if you decide to leave it in my possession. That way you can concentrate on more important issues, such as the pleasure of others and how to become a more obedient <<if $fetish.sissy>>SISSI<<else>>girl<</if>> slave.@@"
<</if>>
<<else>>
"@@.npc_manager;Locked and totally under my control... this was always how it was going to end, and it is so much better not to be waiting for it to happen.@@"
<</if>>
<<if $player.sec_style.submission.permanent_key == "">>
<br><br>
<<if setup.getTotalValue('feminization') >=12 && setup.getTotalValue('submission') >= 12>>
<<printThought "<<=setup.getNpcName('npc_manager', 'formal')>> is right, I hope I stay locked up forever...">><br>
<br>
"@@.npc_manager;Lovely, I can see that you have fully accepted your fate, that your pleasure comes from service and that being locked and <<if setup.isCage()>>caged<<else>>belted<</if>> can only help you in that goal.@@"<br>
<br>
You nod obediently. She is right, as always, perfectly guiding you to become the <<if $fetish.sissy>>SISSI <</if>>Secretary you were always meant to be.
<<elseif setup.getTotalValue('feminization') >=7 && setup.getTotalValue('submission') >= 7>>
<<printThought "I think that is something I would like very much... what am I thinking?">><br>
<br>
"@@.npc_manager;There, that look on your face, the way you bashfully turn your gaze at the floor, those are your tells. I do not think I need any more evidence for my case, do I, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"<br>
<br>
You consider protesting for a moment, but then again, what would be the point? You are, after all a <<if $fetish.sissy>>SISSI <</if>>Secretary. Correction, you are HER <<if $fetish.sissy>>SISSI <</if>>Secretary, are you not?
<<elseif $npc_manager.flags.hascagekey>>
<<printThought "What? No way? I am not some... some <<if $fetish.sissy>>sissy<<else>>submissive<</if>> Secretary. Am I?">><br>
<br>
"@@.npc_manager;What, that was not your intention in giving me the key? Well, maybe not yet.@@"<br>
<br>
That last statement was underlined with a rather devious looking smile on her face. You think she really means it, whether you like it or not. "@@.npc_manager;The question is, of course, do you really reject this idea? I think not, after all, you are still here, right?@@"
<<else>>
<<printThought "What? No way? I am not some... some <<if $fetish.sissy>>sissy<<else>>submissive<</if>> Secretary. Am I?">><br>
<br>
"@@.npc_manager;A pity I am not in possession of the key... yet. But I am sure that will be sorted out soon. Once you finish with this little trial, hmm?@@"<br>
<br>
You gulp as she grins wider.
<</if>>
<</if>>
<</if>>
<<else>>
"@@.npc_manager;Well, go ahead, <<=$player.first_name>>, hand me the key,@@" she commands while extending her hand towards you.<br>
<br>
You hand over the key for your <<=setup.getItemTypeName('cage')>> as demanded.<br>
<br>
"@@.npc_manager;Good. All locked up and tucked away, so you can concentrate on more important issues. Self control is a fundamental pillar of society, never forget that, <<=$player.first_name>>.@@" Smiling at you, she gently places the key in the dish at the edge of your desk.<br>
<br>
"@@.npc_manager;I have entrusted the key with you for the time being, so I will let you keep it. But if you even think about unlocking <<if $player.body_ref.penis>>your <<getWordMyPenis>><<else>>yourself<</if>> anywhere on the premises of the company, you will have your key rights revoked in no time, and that is before we get into any possible, nay, certain, punitive consequences!@@"
<</if>>
<<else>>
Her hand rests a little bit longer than usual over your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>, and even rubs up and down a little bit.<br>
<br>
<<if setup.getChastityLevel() == 5>>
"@@.npc_manager;Safe and locked, just as you should be. Such a wonderful corporate policy, is it not? The best way to keep you focused on the important things... and with no temptation for release with the key safely under executive control.@@"
<<elseif $player.sec_style.submission.permanent_key != "">>
<<if $currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks.task_chastity_trial.finished>>
"@@.npc_manager;Oh, <<=$player.first_name>>, locked up safe, secure... and permanent. Yes, soon that little trial shall be over and your key will, again, be mine to protect...@@"
<<else>>
"@@.npc_manager;Oh, <<=$player.first_name>>, locked up safe, secure... and permanent. Your ongoing submission is such a delight, and I promise I am keeping your key VERY safe.@@"
<</if>>
<<elseif $npc_manager.flags.hascagekey>>
"@@.npc_manager;Oh, <<=$player.first_name>>, such splendid behaviour, to lock that useless little thing away. Not that you had a choice... I suppose, but still, I am so very proud of you. Perhaps if you are good I may even let you have the key back...<<if $npc_manager.flags.playerstayedinchastity>> if you even want it back at all. I could understand if you decide to leave it with me to better concentrate on more important issues, like becoming a more obedient <<if $fetish.sissy>>SISSI<<else>>feminine<</if>> slave<<else>> yes, giving up your key would be quite the thing to do for a <<if $fetish.sissy>>SISSI <</if>>Secretary like yourself.<</if>>@@"
<<else>>
"@@.npc_manager;Oh, <<=$player.first_name>>, such splendid behaviour, to keep that useless little thing locked away. Not that you have much of a choice if you want to fulfill the requirements of your little trial... oh but after it is over...@@" She smiles in a way that has you nervously wondering yet again what you have gotten yourself into. "@@.npc_manager;Well, the important thing, for now, is that you are properly <<if setup.isCage()>>caged<<else>>belted<</if>> and locked, well done.@@"
<</if>>
<br><br>
<<if setup.getTotalValue('feminization') >=12 && setup.getTotalValue('submission') >= 12>>
<<printThought "<<=setup.getNpcName('npc_manager', 'formal')>> is right, I hope I stay locked up forever...">><br>
<br>
"@@.npc_manager;Lovely, I can see that you have fully accepted your fate, that your pleasure comes from service and that being locked and <<if setup.isCage()>>caged<<else>>belted<</if>> can only help you in that goal.@@"<br>
<br>
You nod obediently. She is right, as always, perfectly guiding you to become the <<if $fetish.sissy>>SISSI <</if>>Secretary you were always meant to be.
<<elseif (setup.getTotalValue('feminization')>=9) && (setup.getTotalValue('submission')>=7)>>
"@@.npc_manager;There, that look on your face, the way you bashfully turn your gaze towards the floor, those are your tells. I do not think I need any more evidence for my case, do I, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"<br>
<br>
You consider protesting for a moment, but then again, what would be the point? You are, after all a <<if $fetish.sissy>>SISSI <</if>>Secretary. Correction, you are HER <<if $fetish.sissy>>SISSI <</if>>Secretary, are you not?
<<elseif $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
<<printThought "What? No way? I am not some... some <<if $fetish.sissy>>sissy<<else>>submissive<</if>> Secretary. Am I?">><br>
<br>
"@@.npc_manager;A pity I am not in possession of the key... yet. But I am sure that will be sorted out once you finish with this little trial, hmm?@@"<br>
<br>
You gulp as she grins wider.
<<else>>
<<printThought "What? No way? I am not some... some <<if $fetish.sissy>>sissy<<else>>submissive<</if>> Secretary. Am I?">><br>
<br>
She grins, the fire in her eyes leaving you weak in the knees, how can she so casually seem to have this power over you?
<</if>>
<</if>>
<</if>>
<br><br>
<<elseif setup.checkItemTypeWorn("cage")>>
She eyes your chastity device and
<<if !$npc_manager.flags.require_chastity>>
smiles without making comment.
<<elseif $player.sec_style.submission.chastity == "money" && setup.getChastityLevel() == 4 && !$currentTasks.task_chastity_trial.finished>>
smiles. "@@.npc_manager;Still locked up for that study... how wonderfully diligent! I do hope you are... enjoying your little side hustle. I know I am starting to...@@"<br>
<br>
You gulp nervously, the look in her eye filling you with concern for the future...
<<else>>
"@@.npc_manager;Locked up, even when it is not required? How lovely.<<if $player.sec_style.submission.permanent_key>>.. and expected, obviously, given that you oh so delightfully surrendered ownership of your key<<else>> I, of course, approve... and remain available if you ever need assistance with managing that pesky little key...<</if>>@@"
<</if>>
<br><br>
<</if>>
/% note: only included in stage 3+ where plug is required %/<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.plug_ems = false>>
<<set $scene.plug_vibe = false>>
<<if $scene.plug != "">>
<<set $scene.plug_ems = setup.checkItemTypeTag('plug', ['ems'])>>
<<set $scene.plug_vibe = setup.checkItemTypeTag('plug', ['vibrating'])>>
<</if>><<if $scene.plug_ems>>
<<applyExperience 'bdsm' 10 'little' $SEEN_FRIEND>>
<</if>>
<<if $scene.plug_vibe>>
<<changeHorny 10>>
<</if>>
<<if $scene.plug != "" && $scene.plug_ems && $scene.plug_vibe>>
<<applyExperience 'submission' 3 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_FRIEND>>
<<else>>
<<if $scene.plug != "">>
<<if $scene.plug_ems>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<elseif $scene.plug_vibe>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<else>>
<<if $scene.cage != "" && setup.getItemObj($scene.cage).tags.includes("ems")>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<applyExperience 'bdsm' 15 'very' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<else>>
<<if setup.checkItemOwned('remote_control_plug')>>
<<if setup.inWardrobe('remote_control_plug')>>
<<wardrobeToItem 'remote_control_plug'>>
<</if>>
<<elseif !setup.checkItemInInventory('remote_control_plug')>>
<<addItem "remote_control_plug">>
<</if>>
<<wearItem "remote_control_plug" true>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<</if>>Reaching around behind, her hand goes right up between your cheeks to
<<if $scene.plug != "" && $scene.plug_ems && $scene.plug_vibe>>
find the plug nestled within. With a slight smile, she produces a remote, clicking first to cause the anal occupant to thrum pleasantly <<if $player.body_ref.penis>>against your prostate<<else>>inside your rear<</if>> followed by a short, but still painful, shock of electricity as she confirms its function.<br>
<br>
"@@.npc_manager;Lovely, equipped as required, all the better for me to efficiently keep you in line.@@"<br>
<br>
You shiver, even that brief moment of stimulation cranking up your arousal while driving home how much control you have surrendered to her.
<<else>>
<<if $scene.plug != "">>
find the plug nestled within. With a slight smile, she produces a remote,
<<if $scene.plug_ems>>
clicking once to no effect, her expression turning neutral before you jump as a strong jolt of electricity pulses out from the plug.<br>
<br>
"@@.npc_manager;Feeling a bit masochistic, are we? Remember your instructions are to come filled with something capable of vibrational rewards AND punishing shocks. While I appreciate that you recognised the need for an easy way to punish you training works best mixing stick and carrot, please find something more appropriate to come filled with in the future.@@"
<<elseif $scene.plug_vibe>>
clicking once to send a burst of pleasurable vibrations through your <<if $player.body_ref.penis>>prostate<<else>>rear<</if>> before frowning when the follow-up click elicits no response.<br>
<br>
"@@.npc_manager;What is this, just a vibrator? You know I expect your plug to be full-featured for pleasure AND punishment, this lack of electronic functionality is a serious error, do address it and come to work properly plugged in the future lest I be forced to apply less... removable methods to keep you in line.@@"
<<else>>
<<if $scene.cage != "" && setup.getItemObj($scene.cage).tags.includes("ems")>>
clicking once to no effect she frowns. A second click, however, has you crying out in pain as electricity courses through your <<if $player.body_ref.penis && !$player.body_ref.vagina>><<getWordMyPenis>><<else>>private parts<</if>>. "@@.npc_manager;Hmm, that is at least something to keep you in line, but I am still very disappointed that you are not properly filled — what if I wanted to give you a quick reward, hmm? No, no, this is not optimal for training at all.@@"
<<else>>
clicking once to no effect, her expression turning neutral before descending into a frown when the second click does just as little. "@@.npc_manager;What? You know you are expected to come filled with a vibration and electric equipped plug, you naughty girl! You had better fill yourself more properly in the future lest I be forced to apply less... removable methods to keep you in line.@@"
<</if>>
<</if>>
<br><br>
You gulp and nod as she steps back.
<<else>>
find... nothing. A frown developing she roots around for several moments before pulling away. "@@.npc_manager;Empty? No, no, that will not do at all!@@" Landing a sharp slap on your rear, she spins on her heels, disappearing into her inner office for a moment before returning. You gulp in recognition as she unboxes a familiar plug.<br>
<br>
"@@.npc_manager;Bend over!@@" She says with glee, spinning you around and forcing you over the desk when you fail to hop to it quickly enough for her liking before jamming the plug in place and pulling you back to your feet. "@@.npc_manager;There, properly filled like a good <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"
<</if>>
<</if>>
<br><br>/*#
#desc: failed to wear cage, replaced, if too many times locked and key privileges revoked
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include inspectionData_chastity>>
<<set $npc_manager.trigger.forgotten_cage += 1>>
<<playerOrgasm>>
<<set $npc_manager.flags.hascagekey = true>>
<<if $npc_manager.trigger.forgotten_cage >= 2 && $player.body.penissize[0] > 3>>
<<set $npc_manager.trigger.forgotten_cage = 3>>
<</if>>
<<if !$player.body_ref.balls>>
<<set $player.flags.chastity_style = "belt">>
<</if>>
<<switch $npc_manager.trigger.forgotten_cage>>
<<case 1>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "c_cage_pink">>
<<else>>
<<set $scene.newcage = "chastity_belt_flat">>
<</if>>
<<case 2>>
<<if $player.body.penissize[0] > 3>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<else>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "chastity_cage_tiny">>
<<else>>
<<set $scene.newcage = "chastity_belt_tiny">>
<</if>>
<</if>>
<<case 3>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<default>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<</switch>>
<<if $scene.newcage == "c_cage_pink" && $player.body.penissize[0] <= 1>>
<<set $scene.newcage = "chastity_cage_tiny">>
<</if>>
<<if $npc_manager.trigger.forgotten_cage < 3 && (setup.checkItemOwned("electric_chastity") || setup.checkItemOwned("chastity_belt_electric"))>>
<<set $scene.skippedCage = true>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<elseif $npc_manager.trigger.forgotten_cage < 2 && (setup.checkItemOwned("chastity_cage_tiny") || setup.checkItemOwned("chastity_belt_tiny"))>>
<<set $scene.skippedCage = true>>
<<if $player.body.penissize[0] > 3>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<else>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "chastity_cage_tiny">>
<<else>>
<<set $scene.newcage = "chastity_belt_tiny">>
<</if>>
<</if>>
<</if>>
<<addItem $scene.newcage>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<<set $scene.gaveKey=true>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem _keyId>>
<<include "setLastSeenCage">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Noticing your lack of a chastity device <<=ps(setup.getNpcName("npc_manager","formal"))>> expression hardens, but she speaks not a word as she walks around her desk and pulls out a small box and what looks like a freezer pack.<br>
<br>
<<printThought "I guess she has a secret minifridge back there?">><br>
<br>
<<if $scene.skippedCage>>
"@@.npc_manager;You naughty ditz, forgetting such an important, nay, vital part of your uniform... and after I had already granted you an upgrade.@@" She states casually as she unpacks a familiar device. "@@.npc_manager;Fortunately I always have a spare handy for... forgetful <<if $fetish.sissy>>sissies<<else>>girls<</if>>.@@"
<<if $player.body_ref.penis>>
<br><br>
Without even raising her voice she has you frozen in fear, standing petrified as she kneels down, your chilled state becoming literal as she presses the cold pack against you to cause you to wither and shrink before efficiently <<if $player.flags.chastity_style=='cage'>>caging you up<<else>>wrapping the belt around your waist and between your legs<</if>> and locking you away.
<</if>>
<<if $npc_manager.flags.trustplayerwithkey>>
<br><br>
"@@.npc_manager;Do take more care, if you cannot remember to come to work properly attired I will have no choice, but to revoke your right to take the key home with you. It is far safer that you be in permanent chastity than to be at such risk on the job.@@"
<</if>>
<<else>>
<<switch $npc_manager.trigger.forgotten_cage>>
<<case 1>>
"@@.npc_manager;You naughty ditz, forgetting such an important, nay, vital part of your uniform.@@" She states casually as she unpacks <<if $player.flags.chastity_style=='cage'>>a familiar pink plastic cage<<else>>a gleaming chastity belt<</if>>. "@@.npc_manager;Fortunately I always have a spare handy for... forgetful <<if $fetish.sissy>>sissies<<else>>girls<</if>>.@@"
<<if $player.body.penissize[0] <= 1 && $player.flags.chastity_style=='cage'>>
She pauses for a moment, looking you over before shaking her head. She puts the pink plastic cage away and pulls out a much smaller metal device. "@@.npc_manager;Yes... I think this should be a more appropriate size for your current condition...@@"
<</if>>
<<if $player.body_ref.penis>>
<br><br>
Without even raising her voice she has you frozen in fear, standing petrified as she kneels down, your chilled state becoming literal as she presses the cold pack against you to cause you to wither and shrink before efficiently <<if $player.flags.chastity_style=='cage'>>caging you up<<else>>wrapping the belt around your waist and between your legs<</if>> and locking you away.
<</if>>
<<if $npc_manager.flags.trustplayerwithkey>>
<br><br>
"@@.npc_manager;Do take more care. If you cannot remember to come to work properly attired I will have no choice, but to revoke your right to take the key home with you. It is far safer that you be in permanent chastity than to be at such risk on the job.@@"
<</if>>
<<case 2>>
<<if $npc_manager.flags.pegging.chastity == 'dickless'>>
"@@.npc_manager;Again? I would have thought you had learned to embrace your proper secured state.@@" You watch as she unpacks a familiar <<if $player.flags.chastity_style=='cage'>>small, steel cage<<else>>chastity belt<</if>>.<br>
<br>
You bite your lip in fear, the fact that she hasn't even raised her voice somehow even more scary than if you were the target of an outburst.
<<if $player.body_ref.penis>>
Casually she uses the cold pack to shrink you down before gently <<if $player.flags.chastity_style=='cage'>>stuffing you into the small cage<<else>>wrapping the belt around your waist and between your legs<</if>>. Recovering from the near-freezing chill of the ice pack the hard metal has plenty of time to adjust to your temperature leaving you feeling very tightly constrained.
<<else>>
With a stern look on her face she locks the belt around your waist and between your legs.
<</if>>
<br><br>
"@@.npc_manager;There, back in your safe home. Do keep better track of it this time, it is for your own good, as well as your job, after all.@@" <<if $npc_manager.flags.trustplayerwithkey>>Noting your shocked, pouting expression she smiles. "@@.npc_manager;Do not worry, you will get the key back at the end of the day... this time.@@"<</if>>
<<else>>
"@@.npc_manager;Again? I would have thought you had learned to embrace your proper secure state.@@" You watch as she unpacks <<if $player.flags.chastity_style=='cage'>>what looks like a small, steel cage<<else>>sleek chastity belt<</if>> that you wonder how you could even fit into it...<br>
<br>
Standing petrified in fear, especially at the ominous fact that she has not even raised her voice,
<<if $player.body_ref.penis>>
you watch as she uses the cold pack to shrink you down before gently stuffing you into the new <<if $player.flags.chastity_style=='cage'>>cage<<else>>belt<</if>>. Recovering from the near-freezing chill of the ice pack the hard metal has plenty of time to adjust to your temperature leaving you feeling very tightly constrained.
<<else>>
she efficiently locks a chastity belt around your waist and between your legs.
<</if>>
<br><br>
"@@.npc_manager;There, a <<if $player.flags.chastity_style=='cage'>>smaller cage<<else>>more fitted belt<</if>> is better for you anyway. Do keep better track of it this time, it is for your own good, as well as your job, after all.@@" <<if $npc_manager.flags.trustplayerwithkey>>Noting your shocked, pouting expression she smiles. "@@.npc_manager;Do not worry, you will get the key back at the end of the day... this time.@@"<</if>>
<</if>>
<<case 3>>
<<=setup.getNpcName("npc_manager","formal")>> rips through what looks like a quite sturdy packaging and you catch a glimpse of an intimidating steel chastity device as she approaches you. "@@.npc_manager;Forgetting such a vital training device once again... well, I think it is time to deal with this problem... permanently.@@"<br>
<br>
A brief moment of contact with the ice pack has you shrunken and soft as she stares you down.<br>
<br>
<<if $player.flags.chastity_style=='cage'>>
"@@.npc_manager;This lovely device is almost perfect for keeping the most... recalcitrant <<if $fetish.sissy>>sissies<<else>>girls<</if>> under control.@@" She states,
<<if $fetish.sounding>>
nimbly threading you down the snug tube before locking it in place. "@@.npc_manager;And now for the final cherry on top...@@" She adds before producing a narrow, gently curved rod. Greasing it with a thin lubricant she aligns it with the tip of the device and you are treated to the strange sensation of it sliding into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate as the sounding rod bottoms out inside of you and locks in place leaving you effectively imprisoned inside and out.
<<else>>
nimbly threading you down the snug tube before locking everything with a click.
<</if>>
<<else>>
"@@.npc_manager;This wonderful contraption is almost perfect for keeping the most... recalcitrant <<if $fetish.sissy>>sissies<<else>>girls<</if>> under control.@@" She states.<br>
<br>
You nervously bite your lip as she wraps the sleek belt around your waist. Pausing as she brings the shield up between your legs,
<<if $fetish.sounding>>
she pulls out a narrow, gently curved rod. Greasing it with a thin lubricant she holds you gingerly with one hand and gently slides it into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate and you gasp as <<if $player.body_ref.penis>>the sounding<<else>>a urethra<</if>> rod bottoms out inside of you. Before you can react further, the front shield of the belt is locked in place, the sound somehow attached within leaving you impaled and completely contained.
<<else>>
she efficiently locks a chastity belt around your waist and between your legs.
<</if>>
<</if>>
<br><br>
She waves a small fob over the device and you hear a sharp click before she dangles the fob in front of your face. "@@.npc_manager;Over a trillion, trillion combinations, and you will NOT be getting the key back at the end of the day.@@"<br>
<br>
Still trying to adjust to the sensations of this new device, you stare back at her, but she only smiles. "@@.npc_manager;Oh, and, just so you know... it is also electrified if you ever think of hmm... misbehaving again.@@"<br>
<br>
Wide-eyed with fear you tremble as she steps back.
<<default>>
She frowns at you as she casually rips open what looks like quite a sturdy packaging you catch a glimpse of an intimidating steel chastity device as she approaches you. "@@.npc_manager;Again you forget, and again I must admonish you... if you are not careful I may send you to R&D to try out one of their more experimental devices.@@"<br>
<br>
A brief moment of contact with the ice pack has you shrunken and soft as she stares you down.<br>
<br>
"@@.npc_manager;Until then this off the shelf model shall have to do.@@" She states,
<<if $player.flags.chastity_style=='cage'>>
nimbly threading you down the snug tube before locking it in place.
<<if $fetish.sounding>>
"@@.npc_manager;And now for the final cherry on top...@@" She adds before producing a narrow, gently curved rod. Greasing it with a thin lubricant she aligns it with the tip of the device and you are treated to the strange sensation of it sliding into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate as <<if $player.body_ref.penis>>the sounding<<else>>a urethra<</if>> rod bottoms out inside of you and locks in place leaving you effectively imprisoned inside and out.
<</if>>
<<else>>
before efficiently wrapping the sleek belt around your
<<if $fetish.sounding>>
waist, pausing as she brings the shield up between your legs as she pulls out a narrow, gently curved rod. Greasing it with a thin lubricant she holds you gingerly with one hand and gently slides it into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate and you gasp as <<if $player.body_ref.penis>>the sounding<<else>>a urethra<</if>> rod bottoms out inside of you. Before you can react further, the front shield of the belt is locked in place, the sound somehow attached within leaving you impaled and completely contained.
<<else>>
waist. Before you can react further, the front shield of the belt is locked in place.
<</if>>
<</if>>
<br><br>
Waving a small fob over the device you hear a sharp click of the lock before she wiggles the fob in front of your face. "@@.npc_manager;Over a trillion, trillion combinations, and you will NOT be getting the key back at the end of the day.@@"<br>
<br>
Still trying to adjust to the sensations of this new device, you stare back at her, but she only smiles. "@@.npc_manager;Oh, and, just so you know... it is also electrified if you ever think of hmm... misbehaving again.@@"<br>
<br>
Wide-eyed with fear you tremble as she steps back.
<</switch>>
<</if>>
<br><br>
"@@.npc_manager;There, now that that is all sorted... shall we continue?@@"<br>
<br>
Feeling the fresh imprisoning weight <<if setup.isCage()>>dangling between your legs<<else>>hugging your hips<</if>> you can only nod meekly. The fact that she has not disciplined you is almost disconcerting, though perhaps the <<if setup.isCage()>>cage<<else>>belt<</if>> is punishment enough...<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300>>]
</div>/*#
#desc: failed to wear cage, replaced for small penis, if too many times locked and key privileges revoked
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include inspectionData_chastity>>
<<set $npc_manager.trigger.forgotten_cage += 1>>
<<playerOrgasm>>
<<set $npc_manager.flags.hascagekey = true>>
<<switch $npc_manager.trigger.forgotten_cage>>
<<case 1 2>>
<<set $scene.newcage = "chastity_belt_flat">>
<<case 3>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $scene.newcage = "chastity_belt_electric">>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<default>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $scene.newcage = "chastity_belt_electric">>
<</switch>>
<<if !setup.checkItemOwned($scene.newcage)>>
<<addItem $scene.newcage>>
<<elseif !setup.checkItemInInventory($scene.newcage)>>
<<wardrobeToItem $scene.newcage>>
<</if>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<<set $scene.gaveKey=true>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem _keyId>>
<<include "setLastSeenCage">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Noticing your lack of a chastity device her expression hardens, but she speaks not a word as she walks around her desk and pulls a belt out of a drawer followed by what looks like a freezer pack.<br>
<br>
<<printThought "I guess she has a secret minifridge back there?">><br>
<br>
<<switch $npc_manager.trigger.forgotten_cage>>
<<case 1 2>>
"@@.npc_manager;You naughty ditz, forgetting such an important, nay, vital part of your uniform.@@" She states casually as she produces a familiar steel belt. "@@.npc_manager;Fortunately I always have a spare handy for... forgetful <<if $fetish.sissy>>sissies<<else>>girls<</if>>.@@"
<<if $player.body_ref.penis>>
<br><br>
Without even raising her voice she has you frozen in fear, standing petrified as she kneels down, your chilled state becoming literal as she presses the cold pack against you to cause you to wither and shrink before efficiently belting you up and locking you away.
<</if>>
<<if $npc_manager.flags.trustplayerwithkey>>
<br><br>
"@@.npc_manager;Do take more care, if you cannot remember to come to work properly attired I will have no choice but to revoke your right to take the key home with you. It is far safer that you be in permanent chastity than to be at such risk on the job.@@"
<</if>>
<<default>>
Glowering at you the whole time she produces a steel chastity belt, drawing things out as you watch her hook up the "optional" electrics. "@@.npc_manager;Forgetting such a vital training device once again... well, I think it is time to deal with this problem... permanently.@@"<br>
<br>
<<if $player.body_ref.penis>>
A brief moment of contact with the ice pack has you shrunken and soft as she stares you down.<br>
<br>
<</if>>
"@@.npc_manager;This lovely device is perfect for keeping the most... recalcitrant <<if $fetish.sissy>>sissies<<else>>girls<</if>> under control.@@" She states, nimbly threading you down the snug tube before locking the belt around your waist and between your legs.<br>
<br>
Wide-eyed with fear you tremble as she steps back.
<</switch>>
<br><br>
"@@.npc_manager;There, now that that is all sorted... shall we continue?@@"<br>
<br>
Feeling the freshly imprisoned and with a new smooth, feminine profile you can only nod meekly. The fact that she has not disciplined you is almost disconcerting, though perhaps the <<if setup.isCage()>>cage<<else>>belt<</if>> is punishment enough...<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300>>]
</div><<set $scene.collar = setup.getItemFromType('choker')>>
<<set $scene.lockedCollar = setup.checkItemTypeWorn("choker") && setup.getItemObj($scene.collar).hasOwnProperty("lockable") && ($inventory[$scene.collar].status.lock || setup.getItemObj($scene.collar).hasOwnProperty("lockonly"))>>
<<if $scene.lockedCollar && $player.flags.collar.owner == "">>
<<if !setup.getItemObj($scene.collar).hasOwnProperty("lockonly")>>
<<manipulateItem $scene.collar 'lock' true>>
<</if>>
<<removeItem $scene.collar true>>
<<deleteItem $scene.collar>>
<<set $clothSetsInt.daily_evaluation_clothes.data.delete($scene.collar)>>
<</if>><<if $scene.lockedCollar>>
Her gaze finally settles on the collar locked around your neck.<br>
<br>
<<if $player.flags.collar.owner == "npc_manager">>
"@@.npc_manager;I do so adore this reminder of your status as my adoring slave.@@" Reaching out, she traces a finger over the front of your collar. "@@.npc_manager;Perfection.@@"
<<elseif $player.flags.collar.owner != "">>
"@@.npc_manager;Hmm, owned are we? Well, let me not be one to interfere with another's property, just remember that here at the office I am your Lady and Mistress, I will not brook you being distracted by serving two masters.@@"
<<elseif $scene.collar == "bondage_collar_promo">>
"@@.npc_manager;Oh my, it appears I neglected to remove the collar at the end of your little promotion ceremony... I must apologise for giving the wrong impression. As I said at the time this was only a temporary thing and you have not earned the privilege of wearing it permanently... yet.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
Your heart sinks slightly as she unlocks and removes the collar.
<<else>>
She unlocks and removes the collar leaving your neck feeling empty and odd as your feelings at being a collared slave, HER collared slave swirl.
<</if>>
<br><br>
Noting your confused expression she smiles. "@@.npc_manager;Someday, my dear... there are rules for these things and it will be so much sweeter when you have truly earned it.@@"
<<else>>
"@@.npc_manager;Hmm, is that collar locked? Tsk tsk, what a foolish mistake. A collar such as this should only be locked in place if you have been claimed and owned, let me just take care of that then.@@"<br>
<br>
With casual ease she fiddles with the lock, unlocking and removing the collar before putting it in her desk.<br>
<br>
"@@.npc_manager;There we go. You will have to work a bit harder if you want to earn something like that properly.@@" She adds with a wink.
<</if>>
<br><br>
<<elseif $scene.collar && setup.getItemObj($scene.collar).tags.includes('collar')>>
Her gaze finally settles on the collar around your throat. "@@.npc_manager;My, my, my, someone is quite looking the part of the obedient slave today...@@" Reaching out, she traces a finger over the front of your collar. "@@.npc_manager;Of course putting it on yourself is not the same as being COLLARED. Oh, but that is a tempting thought indeed... perhaps someday...@@"<br>
<br>
You tremble slightly at the thought of your servitude to her being sealed even further...<br>
<br>
<</if>>/*#
#desc: manager notices that your penis has shrunk
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first_shrink = !$npc_manager.flags.penis_shrinking.first_shrink_comment>>
<<set $npc_manager.flags.penis_shrinking.first_shrink_comment = true>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<if !$scene.panties>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<removeItem $scene.panties true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.first_shrink>>
<<=setup.getNpcName("npc_manager","formal")>> pauses, her gaze fixating on your <<getWordMyPenis>>. "@@.npc_manager;Have you gotten... smaller?@@"<br>
<br>
Her tone is neutral, more curious than anything as you consider how to reply.<br>
<br>
<<printThought "How I react to this is going to determine how she approaches such things going forward...">><br>
<br>
<<if $player.sec_style.body.penis_shrink == "strict">>
[<<moveTo "event_morning_inspection_shrink_2" 'Tell her about what <<=setup.getNpcName("npc_boss","formal")>> did to you...' 60 "<<set $scene.style='boss'>>">>]<br>
<</if>>
<<if $player.sec_style.body.hormones != "">>
[<<moveTo "event_morning_inspection_shrink_2" "Proudly confirm that you've been taking hormones to reduce your size." 60 "<<set $scene.style='spe'>>">>]<br>
<<if !$fetish.sph>>
[@@.link_locked;Due to your current game settings this option is disabled.@@]<br>
<<else>>
[<<moveTo "event_morning_inspection_shrink_2" "Go on a defensive tirade." 60 "<<set $scene.style='anger'>>">>]<br>
[<<moveTo "event_morning_inspection_shrink_2" "Blush and try to deny that you are smaller." 60 "<<set $scene.style='sph'>>">>]<br>
<</if>>
[<<moveTo "event_morning_inspection_shrink_2" "Nod that you've been taking hormones that seem to be reducing your size." 60 "<<set $scene.style='neutral'>>">>]
<<else>>
[<<moveTo "event_morning_inspection_shrink_2" "Proudly confirm that you took a pill to reduce your size." 60 "<<set $scene.style='spe'>>">>]<br>
<<if !$fetish.sph>>
[@@.link_locked;Due to your current game settings this option is disabled.@@]<br>
<<else>>
[<<moveTo "event_morning_inspection_shrink_2" "Go on a defensive tirade." 60 "<<set $scene.style='anger'>>">>]<br>
[<<moveTo "event_morning_inspection_shrink_2" "Blush and try to deny that you are smaller." 60 "<<set $scene.style='sph'>>">>]<br>
<</if>>
[<<moveTo "event_morning_inspection_shrink_2" "Nod that you took a pill that reduced your size." 60 "<<set $scene.style='neutral'>>">>]
<</if>>
<<else>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
<<=setup.getNpcName("npc_manager","formal")>> pauses, her gaze focusing on your <<getWordMyPenis>>. "@@.npc_manager;My, my, smaller yet again. That must be so embarrassing for you, your cute little thing getting tinier and tinier. Why it won't be long before I need a microscope to do this portion of the inspection!@@"<br>
<br>
She laughs mockingly and you blush in humiliation.
<<else>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze glides past your <<getWordMyPenis>> without comment. <<hint $options "Content disabled due to fetish flags.">>
<</if>>
<<case 'spe'>>
<<=setup.getNpcName("npc_manager","formal")>> smiles as she looks at your <<getWordMyPenis>>. "@@.npc_manager;Oh how lovely! You have gotten even smaller! Oh you must be so happy at how cute and sweet and beautiful you are becoming. Keep up the good work, <<if $fetish.sissy>>sissy<<else>>girl<</if>>!@@" She reaches out and pats you on the head.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_manager;Just be careful that you don't become so small you slip out of your chastity device. It would be an accomplishment for sure, but a naughty one... even if it would be very cute.@@"<br>
<br>
<</if>>
You bashfully thank her for the encouragement.<br>
<br>
"@@.npc_manager;Now then, let us continue on with the rest of your inspection.@@"
<<case 'none'>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze glides past your <<getWordMyPenis>> without comment.
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<br><br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<</if>>
</div>/*#
#desc: respond to first time manager notices penis shrank
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case 'spe' 'spe_boss'>>
<<set $player.body_ref.shrink_style = 'spe'>>
<<case 'sph' 'sph_boss'>>
<<set $player.body_ref.shrink_style = 'sph'>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<case 'anger'>>
<<set $player.body_ref.shrink_style = 'sph'>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 8 'little' $SEEN_FRIEND>>
<<case 'neutral'>>
<<set $player.body_ref.shrink_style = 'none'>>
<</switch>>
<<if $player.body_ref.shrink_style == 'sph'>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $player.body_ref.shrink_cage = true>>
<<set $scene.immediateShrink = $player.body.penissize[1] > 3>>
<<if $scene.immediateShrink>>
<<set $player.body.penissize[1] = 3 - $player.body.penissize[2]>>
<<set $player.body.penissize[0] = 3>>
<</if>>
<<if !setup.checkItemTypeTag('cage', ['shrink']) && $player.body_ref.penis && $fetish.chastity_penis>>
<<set $scene.new_cage = true>>
<<if setup.getItemObj($npc_manager.flags.lastCage).chastityLvl == 5>>
<<if setup.isCage() && $player.body_ref.penis && !$player.body_ref.vagina && $player.body_ref.balls>>
<<set $scene.newCage = 'sissyomatic_flat'>>
<<else>>
<<set $scene.newCage = 'sissyomatic_ultra_flat'>>
<</if>>
<<else>>
<<if setup.isCage() && $player.body_ref.penis && !$player.body_ref.vagina && $player.body_ref.balls>>
<<set $scene.newCage = 'chastity_cage_tiny'>>
<<else>>
<<set $scene.newCage = 'chastity_belt_tiny'>>
<</if>>
<</if>>
<<addItem $scene.newCage>>
<<wearItem $scene.newCage true>>
<<manipulateItem $scene.newCage "lock" true>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.keyInInventory = setup.checkItemInInventory($scene.keyId)>>
<<deleteItem _keyId>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<include "setLastSeenCage">>
<<set $scene.differentCage = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'spe'>>
You smile and inform her that <<if $player.sec_style.body.hormones != "">>the hormones you're taking have once again helped<<else>>you took a pill to help<</if>> move your body towards a more "perfect" size.<br>
<br>
She smiles. "@@.npc_manager;I see, I see, well, that is just so wonderful for you. Your journey to becoming a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary is just such a delight to witness and I am so glad to be a part of it.@@"
<<case 'spe_boss'>>
You smile and inform <<=setup.getNpcName("npc_manager","formal")>> that you actually feel much better smaller.<br>
<br>
She smiles. "@@.npc_manager;I see, I see, well, that is just so wonderful for you. Your journey to becoming a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary is just such a delight to witness and I am so glad to be a part of it.@@"
<<case 'sph'>>
You blush and hesitantly try to deny your shrunken stature, but <<=setup.getNpcName("npc_manager","formal")>> just smiles and shakes her head. "@@.npc_manager;Now, now, I know it must be quite a shock, one of the final vestiges of masculinity disappearing before your eyes but, well... we both know this was inevitable. Cocks are for men and they should be big and hard and thick whereas yours was always just a cute, adorable little thing. It becoming even smaller is just a reflection of who you were always meant to be and I can only hope it shrinks even more so that it becomes even less of a distraction from what is really important.@@"
<<case 'sph_boss'>>
You blush and hesitantly try change the subject, but <<=setup.getNpcName("npc_manager","formal")>> just smiles and shakes her head. "@@.npc_manager;Now, now, I know it must be quite a shock, one of the final vestiges of masculinity disappearing before your eyes but, well... we both know this was inevitable. Cocks are for men and they should be big and hard and thick whereas yours was always just a cute, adorable little thing. It becoming even smaller is just a reflection of who you were always meant to be and I can only hope it shrinks even more so that it becomes even less of a distraction from what is really important.@@"
<<case 'anger'>>
You start in on a rant about how <<=setup.getNpcName("npc_manager","formal")>> could even think to make such an accusation, but she cuts you off with a quick slap to the cheek. Not hard enough to hurt, really, but enough to temporarily silence you as she reaches down and takes hold of you to ensure she has your full attention.<br>
<br>
"@@.npc_manager;I will have none of that sass, <<if $fetish.sissy>>sissy<<else>>girl<</if>>. You are smaller now than when I first met you — that is a fact. Moreover this was really to be expected — after all a big penis would be totally inappropriate for someone like you. No, a nice small thing is much more suitable and I am sure it will continue to shrink down to better reflect who, and what, you really are.@@"
<<case 'anger_boss'>>
You start to go off on a rant about all the things the company has done to you, but <<=setup.getNpcName("npc_manager","formal")>> cuts you off with a quick slap to the cheek. Not hard enough to hurt, really, but enough to temporarily silence you as she reaches down and takes hold of you to ensure she has your full attention.<br>
<br>
"@@.npc_manager;I will have none of that sass, <<if $fetish.sissy>>sissy<<else>>girl<</if>>. You are smaller now than when I first met you, and that is how it ought to be. A nice small thing is much more suitable and I am sure it will continue to shrink down to better reflect who, and what, you really are.@@"
<<case 'boss'>>
You explain how summoned you to <<his npc_boss>> office, on through what happened after...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> listens with silent stoicism, her only movement her gaze occasionally flicking to a high corner of the room. "@@.npc_manager;I see, well... if such senior management made a decision then certainly it must be in the best interest of the company... still, though action may have been taken it falls upon us to handle the details... tell me, how do you feel about this new state?@@"<br>
<br>
[<<moveTo "event_morning_inspection_shrink_2" "You are proud to be small!" 60 "<<set $scene.style='spe'>>">>]<br>
<<if !$fetish.sph>>
[@@.link_locked;Due to your current game settings this option is disabled.@@]<br>
<<else>>
[<<moveTo "event_morning_inspection_shrink_2" "Go on a defensive tirade." 60 "<<set $scene.style='anger_boss'>>">>]<br>
[<<moveTo "event_morning_inspection_shrink_2" "You feel humiliated..." 60 "<<set $scene.style='sph_boss'>>">>]<br>
<</if>>
[<<moveTo "event_morning_inspection_shrink_2" "It is what it is..." 60 "<<set $scene.style='neutral'>>">>]
<<case 'neutral'>>
You shrug and she nods, silently continuing on with no further comment.
<<default>>
ERROR: unexpected scene.style <<=$scene.style>>
<</switch>>
<br><br>
<<if $scene.style == 'neutral' || !setup.checkItemTypeWorn("cage")>>
[<<moveTo $scene.inspectionReturn "Resume inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<<elseif $scene.style == 'spe' || $scene.style == 'spe_boss'>>
Taking you in hand, she smiles
<<if setup.checkItemTypeTag('cage', ['small'])>>
"@@.npc_manager;You know this <<if setup.isCage()>>cage<<else>>belt<</if>> could help... speed along this journey of yours... if that is what you wanted?@@"
<<else>>
"@@.npc_manager;You know this <<if setup.isCage()>>cage<<else>>belt<</if>> you are wearing is... not quite appropriate, I could replace it with another that would help speed your journey along... if that was what you wanted?@@"
<</if>>
<br><br>
[<<moveTo "event_morning_inspection_shrink_3" "Nod that you would like to get smaller faster." 60 "<<set $scene.shrink_cage=true>>">>]<br>
[<<moveTo "event_morning_inspection_shrink_3" "Say you're happy with how things are progressing." 60 "<<set $scene.shrink_cage=false>>">>]
<<elseif setup.checkItemTypeWorn("cage") && $player.body_ref.shrink_style == "sph">>
Taking you in hand, she sneers
<<if !$scene.new_cage && setup.checkItemTypeTag('cage', ['shrink'])>>
"@@.npc_manager;By the way this <<if setup.isCage()>>cage<<else>>belt<</if>>? Yes, it's nice and <<if setup.isCage()>>small<<else>>tight-fitting<</if>>, which means your little thing is going to forget what it was ever like to grow... well "grow," after all, you were always pretty pathetic down there, but this will just seal the deal and help you get smaller even faster! Now this only REALLY works if you stay locked up 24/7... <<if $npc_manager.flags.playerstayedinchastity>>Fortunately you entrusted me with control overnight, so that is nicely sorted.<<else>>So I guess that means you will not be getting this key back, hmm? For your own good, you know.<</if>> Now with that out of the way, shall we resume your inspection?@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<<else>>
"@@.npc_manager;Of course you know what would be even better? A <<if setup.isCage()>>smaller cage<<else>>sleeker belt<</if>>! That's right, we need to make sure that even with you all tiny and pathetic that you're tightly constrained — that will make you shrink even faster! Fortunately for you I have JUST the thing.@@"<br>
<br>
You whimper as she keeps hold and drags you into her office, removing your <<if setup.isCage()>>cage<<else>>belt<</if>> just long enough to stuff you into an even smaller <<if setup.getChastityLevel() == 5>>high-tech<<else>>steel<</if>> contraption and lock it closed with authority.<br>
<br>
<<if $scene.immediateShrink>>
You gulp, and wince at your snug new prison, it feels like just the cold, claustrophobic embrace of this new device already has you feeling smaller.<br>
<br>
<</if>>
"@@.npc_manager;There, much better, why other than the shiny glint of your lovely prison it almost disappears its so small! Now this only works if you stay locked up 24/7... <<if $npc_manager.flags.playerstayedinchastity>>Fortunately you entrusted me with control overnight, so that is nicely sorted.<<else>>So I guess that means you won't be getting this key back, hmm? For your own good, you know.<</if>> Now with that out of the way, shall we resume your inspection?@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<</if>>
<<else>>
[<<moveTo $scene.inspectionReturn "Resume inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<</if>>
</div>/*#
#desc: small caged spe style
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body_ref.shrink_cage = $scene.shrink_cage>>
<<set $scene.new_cage = !setup.checkItemTypeTag('cage', ['shrink']) && setup.getChastityLevel() != 5>>
<<if $scene.new_cage>>
<<set $scene.immediateShrink = $player.body.penissize[1] > 3>>
<<if $scene.immediateShrink>>
<<set $player.body.penissize[1] = 3 - $player.body.penissize[2]>>
<<set $player.body.penissize[0] = 3>>
<</if>>
<<if setup.isCage() && $player.body_ref.penis && !$player.body_ref.vagina && $player.body_ref.balls>>
<<addItem 'chastity_cage_tiny'>>
<<wearItem 'chastity_cage_tiny' true>>
<<manipulateItem 'chastity_cage_tiny' "lock" true>>
<<set $player.flags.chastity_style = "cage">>
<<else>>
<<addItem 'chastity_belt_tiny'>>
<<wearItem 'chastity_belt_tiny' true>>
<<manipulateItem 'chastity_belt_tiny' "lock" true>>
<<set $player.flags.chastity_style = "belt">>
<</if>>
<<include "setLastSeenCage">>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.keyInInventory = setup.checkItemInInventory($scene.keyId)>>
<<deleteItem _keyId>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.shrink_cage>>
<<if $scene.new_cage>>
You nod then hold your breath as she leads you into her office, removing your current <<if setup.isCage()>>cage<<else>>belt<</if>> just long enough to replace it with a far <<if setup.isCage()>>smaller<<else>>more sleek<</if>> steel device that presses everything up against your body and makes you look <<if setup.isCage()>>small<<else>>feminine and smooth<</if>> indeed.<br>
<br>
Locking things closed she smiles "@@.npc_manager;There, perfect, and good luck becoming the size of your dreams.@@" She gestures towards the door back to your portion of the office. "@@.npc_manager;Now, shall we get back to this morning's inspection?@@"
<<if $scene.immediateShrink>>
<br><br>
You gulp, and wince at your snug new prison, it feels like just the cold, claustrophobic embrace of this new device already has you feeling smaller.
<</if>>
<<else>>
She smiles and gives you a gentle squeeze. "@@.npc_manager;Lovely, well, I wish you luck, I am sure it won't be long before this small little home feels practically roomy! Now, shall we get back to this morning's inspection?@@"
<</if>>
<<else>>
She smiles. "@@.npc_manager;That's fine, whatever makes you happy, my beautiful little <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Now, shall we get back to this morning's inspection?@@"
<</if>>
<br><br>
<<if $player.sec_style.body.vagina>>
Your heart is still beating a bit faster at the intensity of being reminded of how small you have become, and you brace yourself as <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze lingers just a bit longer...<br>
<br>
"@@.npc_manager;Mmm, very good. I believe we may resume things, now.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<<else>>
Your heart is still beating a bit faster at the intensity of being reminded of how small you have become, but it seems that <<=setup.getNpcName("npc_manager","formal")>> is not yet finished.<br>
<br>
"@@.npc_manager;So... it occurs to me. As cute as you are so small<<if $fetish.chastity_penis>> and locked<</if>>... well, perhaps you would be happier with no penis at all. And there would certainly be benefits to such, as cute as a caged clitty may be, it is more an aesthetic feature versus the clear utility of having an additional hole with which to serve. Yes, if this was of interest of you it could certainly be attended to. The company would pay for the procedure, of course, and I would even offer a small bonus on top...@@"<br>
<br>
<<printThought "Shrinking is one thing... am I really ready to sell off the last of my manhood?">><br>
<br>
[<<moveTo "event_secretary_style_penis_remove_money_1" "Accept her offer." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_secretary_style_penis_remove_money_1" "Decline her offer." 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: first inspection after cage fell off
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<<set $npc_manager.flags.penis_shrinking.first_secure_comment = true>>
<<if $player.body_ref.shrink_style && $fetish.sph>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<</if>>
<<if $npc_manager.flags.penis_shrinking.small_picture && !$npc_manager.flags.penis_shrinking.secure_picture && setup.isItemEquipped("chastity_belt_electric")>>
<<applyExperience 'bdsm' 12 'very' $SEEN_FRIEND>>
<</if>>
<<set $scene.shinkComment=true>>
<<set $scene.differentCage = false>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<if $scene.panties>>
<<removeItem $scene.panties true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.penis_shrinking.small_picture>>
<<if $npc_manager.flags.penis_shrinking.secure_picture>>
<<=setup.getNpcName("npc_manager","formal")>> smiles as she looks at your imprisoned self. "@@.npc_manager;Lovely, it looks even better in person than in the picture. Such swift, obedient behaviour after your little... incident means that I don't even need to punish you at all! That said, I should make you aware that your lovely new belt is, of course, equipped with electrics so that I can swiftly address things if you DO step out of line.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<<elseif !setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;What a disappointment. You had the presence of mind to call me after your little accident, but then totally failed to utilize the solution I presented for you. Fortunately for you I have its twin handy. Come along <<if $fetish.sissy>>sissy<<else>>girl<</if>> and let us get you properly equipped for work.@@"<br>
<br>
You follow her into her inner office where she unlocks a drawer and pulls out what looks like the exact device she drone-mailed you earlier.<br>
<br>
[<<moveTo "event_morning_inspection_shrink_cage_2" "Time to get secured..." 60>>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> smiles as she looks at your imprisoned self.
<<if setup.isItemEquipped("chastity_belt_electric")>>
"@@.npc_manager;Well, it is good to see that, even if you forgot to send me the requested picture, you have secured yourself as required. It looks lovely on you though...@@" She smiles with an evil grin as she presses a remote and painful electricity courses through your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>private parts<</if>> "@@.npc_manager;That is for your disobedience, you should have expected it would come with some extra... features.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> peers at your chastity device. "@@.npc_manager;Hmm, not what I expected, and you failure to send a picture as requested is quite disappointing, but it will do. Actually, I am a bit impressed at your initiative in finding a solution on your own. A bit redundant with calling me, but still, enough to save you from punishment, for now.@@"
<</if>>
<br><br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
<<include "calcBaseCage">>
<<if $npc_manager.flags.lastCage != _cage>>
Her eyebrow raises as she looks at your chastity device.
<<switch $player.body_ref.shrink_style>>
<<case ''>>
You feel small in more ways than one...<br>
<br>
[<<moveTo "event_morning_inspection_shrink_1" "Continue." 60>>]
<<case 'sph'>>
<<if $fetish.sph>>
"@@.npc_manager;Well, well, found something to completely hide your shame, hmm? Well, so long as you follow the usual instructions that is quite alright<<if !$npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey && $scene.cage != $npc_manager.flags.lastCage>>... though I cannot help but wonder how you managed to get out of your old device and into this one<</if>>.@@"
<<else>>
"@@.npc_manager;Hmm, what a lovely device you have secured yourself in. Well, so long as you follow the usual instructions that is quite alright<<if $npc_manager.flags.hascagekey && $scene.cage != $npc_manager.flags.lastCage>>... though I cannot help but wonder how you managed to get out of your old device and into this one<</if>>.@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Oh what a beautiful device to keep your lovely little thing secured.<<if !$npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey && $scene.cage != $npc_manager.flags.lastCage>>I might ask how you managed to swap given that I had the key in my possession, but really I am just too excited by your upgrade to care at the present.<</if>>@@"
<<case 'none'>>
<<if $npc_manager.flags.hascagekey && _cage == $npc_manager.flags.lastCage>>
"@@.npc_manager;Very good, your device is already designed to accommodate your new dimensions, perfect.@@"
<<else>>
"@@.npc_manager;Hmm, what a lovely device you are secured yourself in. Well, so long as you follow the usual instructions that is quite alright... though I cannot help but wonder how you managed to get out of your old device and into this one.@@"
<</if>>
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<else>>
She nods as she looks at your chastity device.
<<switch $player.body_ref.shrink_style>>
<<case ''>>
You feel small in more ways than one...<br>
<br>
[<<moveTo "event_morning_inspection_shrink_1" "Continue." 60>>]
<<case 'sph'>>
<<if $fetish.sph>>
"@@.npc_manager;I knew that device was what you needed — nice and small, just like you.@@"
<<else>>
"@@.npc_manager;I knew that device was what you needed, very good.@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Oh you look simply marvelous in that device... you have "grown" into it wonderfully.@@"
<<case 'none'>>
"@@.npc_manager;I knew that device was what you needed, very good.@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<</if>>
<<if $player.body_ref.shrink_style != ''>>
<br><br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<</if>>
<<elseif $fetish.chastity_penis>>
She looks at your exposed <<getWordMyPenis>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_manager;Look at you! Even smaller and more pathetic than before! I wonder if it might someday disappear all together... though perhaps it being there miniscule and useless is more humiliatingly appropriate<<if $fetish.sissy>> for a sissy like yourself<</if>>?@@"
<<else>>
"@@.npc_manager;Well! You are looking quite cute and small, very good!@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Oh you are looking just adorable this morning! Yes, indeed, the smaller you get, the cuter you seem to become, how wonderous!@@"
<<case 'none' ''>>
"@@.npc_manager;Well! You are looking quite cute and small, very good!@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<br><br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
<<else>>
She looks at your exposed <<getWordMyPenis>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_manager;What is this? Have you become so miniscule and pathetic that you just fall out of a chastity device? Oh that must be so embarrassing, to have your shame on display instead of locked up like it belongs... fortunately I have JUST the solution.@@"
<<else>>
"@@.npc_manager;What happened? Does your chastity device no longer stay on? No, no, that will not do at all. Fortunately, however, I have just the solution.@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Oh you are looking just adorable this morning! That said well... there is clearly the issue that you are not locked up in chastity, but I have just the solution to that problem.@@"
<<case 'none' ''>>
"@@.npc_manager;It would seem you no longer properly fit in your chastity device. Fortunately for you I have JUST the solution.@@"
<<default>>
ERROR: unexpected player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<br><br>
She leads you into her office, unlocking a drawer and pulling out something that looks like a steel thong.<br>
<br>
[<<moveTo "event_morning_inspection_shrink_cage_2" "Time to get secured..." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: locked in electric after cage fell off
#status: FINISHED 0.7.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 13 'very' $SEEN_FRIEND>>
<<if !setup.checkItemOwned('chastity_belt_electric')>>
<<addItem 'chastity_belt_electric'>>
<<elseif setup.inWardrobe>>
<<wardrobeToItem 'chastity_belt_electric'>>
<</if>>
<<wearItem 'chastity_belt_electric' true>>
<<manipulateItem 'chastity_belt_electric' 'lock' true>>
<<set $scene.forgot_cage = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.penis_shrinking.small_picture>>
Once again you find yourself facing off with the steel and silicone chastity belt. Unfortunately for your freedom this time there is no escape and <<=setup.getNpcName("npc_manager","formal")>> soon has it locked onto your body.
<<else>>
You stand nervously as she whistles pleasantly and pulls the belt up your legs. In a matter of moments, your <<getWordMyPenis false>> is ensconced in a new, private prison followed by click, click of locks as the belt is locked around your waist and then between your legs.
<</if>>
Though it feels remarkably comfortable and seems to not restrict your range of movement there is no ignoring the fact that your bits are now totally off limits, with the smooth front ensuring that they are also nicely tucked and all, but invisible.<br>
<br>
"@@.npc_manager;And now a bit of punishment for your misbehaviour.@@" She states, holding up a remote and pressing a button. You cry out as electricity courses beneath the belt, your unmentionables feeling on fire for a few seconds before she stops. "@@.npc_manager;You should have known it would have a bit of extra functionality to keep you in line, now then, shall we continue on with the inspection?@@"<br>
<br>
You nod weakly and follow her back out to your desk.<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue inspection." 60 "<<if $scene.panties>><<wearItem $scene.panties true>><</if>>">>]
</div><<if $scene.seenMilking>>
<<set $scene.milkEvent = false>>
<<set $scene.leakEvent = false>>
<<else>>
<<set $scene.milkEvent = $player.body_ref.milkProduction > 0 && ($player.timebased.milking.milk_supply >= (7 * $player.body.breastsize[0])) && $player.body.breastsize[0] > 3 && !$scene.severeCleaning>>
<<set $scene.leakEvent = $player.body_ref.penis && $player.body_ref.cumProduction > 0 && $player.timebased.milking.milk_supply >= 100 && !$scene.severeCleaning && !State.hasPlayed("event_secretary_style_penis_milking_strict_1")>>
<</if>>/*#
#desc: manager notices you leaking milk
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.seenMilking = true>>
<<set $scene.first_milk = !$npc_manager.flags.seen_leaking_milk>>
<<if $scene.first_milk>>
<<set $npc_manager.flags.seen_leaking_milk = true>>
<<set $player.timebased.milking.milk_supply -= 10>>
<<set $scene.bra = setup.getItemFromType("bra")>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As you remove your top, <<=setup.getNpcName("npc_manager","formal")>> squints at your breasts, reaching out to touch your nipple, her fingers coming away damp.<br>
<br>
<<if $scene.first_milk>>
"@@.npc_manager;What is this?@@" she comments, tasting her finger before smiling "@@.npc_manager;My, my, you appear to be leaking... and it is quite tasty! Just like you...@@"<br>
<br>
<<if $scene.bra != "">>
You blush as she pulls down your bra and puts her hot cup of coffee in front of your milk-beaded tit.
<<else>>
You blush as she places her hot cup of coffee just below your milk-beaded tit.
<</if>>
Teasing your nipple for a moment, she gives your breast a squeeze, sending a stream of milk to swirl into her drink as you gasp. She just smiles as she switches to the other breast and repeats the process. "@@.npc_manager;Would not want you out of balance, hmm?@@" Sticking a finger into the drink she gives things a swirl then licks her finger clean "@@.npc_manager;Just what was missing, though in the future I advise you to attend to things on your own — I would not want you leaking all over your nice clothes while you are on the job. That would be quite unsightly.@@"<br>
<br>
You catch your breath as she sips her coffee and nods for the inspection to continue onward.<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue." 60>>]
<<else>>
"@@.npc_manager;What did I tell you about this? You are employed as a <<if $fetish.sissy>>SISSI <</if>>secretary, not as a cow and I cannot have you leaking all over the place while you are working.@@" She sighs. "@@.npc_manager;Come along, let us deal with this problem so you can have a properly productive shift.@@" Walking around her desk, she unlocks a drawer and pulls out a pair of domed cups attached by tubes to a satchel...<br>
<br>
"@@.npc_manager;Now then, present those breasts so we can extract some of that delicious cargo.@@"<br>
<br>
[<<moveTo "event_morning_inspection_milk_2" "Expose your breasts." 60 "<<set $scene.action='obey'>>">>]<br>
[<<moveTo "event_morning_inspection_milk_2" "Just stand there." 60 "<<set $scene.action='reluctant'>>">>]<br>
[<<moveTo "event_morning_inspection_milk_2" "Refuse." 60 "<<set $scene.action='refuse'>>">>]<br>
<</if>>
</div>/*#
#desc: manager milks you before work
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<if setup.checkItemTypeWorn("jacket")>>
<<set _jacket = setup.getItemFromType("jacket")>>
<<removeItem _jacket true>>
<</if>>
<<set _topIdBackup = $scene.topId>>
<<include "calcTopId">>
<<if $scene.topId != "">>
<<removeItem $scene.topId true>>
<</if>>
<<set $scene.topId = _topIdBackup>>
<<if setup.checkItemTypeWorn("bra")>>
<<set _braId = setup.getItemFromType("bra")>>
<<removeItem _braId true>>
<</if>>
<<addItem "breast_milker">>
<<wearItem "breast_milker" true>>
<<if $player.sec_style.sex.milking == "">>
<<set $player.sec_style.sex.milking = "forced">>
<</if>>
<<set $player.timebased.milking.milk_supply = 0>>
<<applyExperience 'bdsm' 12 'normal' $SEEN_FRIEND>>
<<set $scene.milkEvent = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'obey'>>
You expose your breasts and she places a tube over each nipple, a flick of a switch on the satchel causing them to suck against your flesh
<<case 'reluctant'>>
You stand motionless and she sighs, reaching out to expose your breasts before pressing a tube over each nipple. A flick of a switch on the side of the satchel causes things to suck against your flesh and hold in place,
<<case 'refuse'>>
You start to object only for her gaze to narrow. "@@.npc_manager;If you did not want this, you should have attended to things before coming to work. Now show me your tits or this is going to escalate from inconvenience to punishment.@@" Chagrined, you fall silent and she exposes your breasts and presses a tube over each nipple. A flick of a switch on the side of the satchel causes things to suck against your flesh and hold in place,
<<default>>
ERROR unexpected scene.action <<=$scene.action>>
<</switch>>
followed by a gentle pumping that has you trembling at how sensitive you feel.<br>
<br>
"@@.npc_manager;There are a number of speeds and settings for this sort of thing, but you have already put us behind schedule so... let's just go full speed.@@"<br>
<br>
You gasp as the pumping accelerates, panting as it feels like a pair of mouths are sucking away on your nips, spurts of creamy white liquid racing through the tubes with each pump. Stone-faced she turns the power up even higher.<br>
<br>
"@@.npc_manager;Do not be looking at me like that. I warned you that you needed to do something to address this issue, you should have done so, then you could have drained your excess liquids at your own pace rather than forcing me to take care of things. Speaking of, how about we add one of the other fun features of this device?@@"<br>
<br>
You jump in pain as lances of electricity shoot through your super-sensitive nipples. You reflexively reach to pull things off, but she lashes out, knocking your hand away and giving you another shock for good measure. Several more minutes pass before she finally turns things off and the milkers fall from your breasts.<br>
<br>
"@@.npc_manager;Not bad, and now I have a nice little treat for when next I get thirsty!@@" She laughs as she bundles up the tubes and the rest. "@@.npc_manager;Now, then, back to your inspection.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 60 '<<removeItem "breast_milker" true>><<deleteItem "breast_milker">><<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: manager re-purges male clothing
#status: FINISHED 0.7.11.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<destroyMaleClothing $player $now false>>
<<set $npc_manager.criticalanger+=1>>
<<applyStress 10>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> glares at your male attire with such ferocity you are surprised they do not burst into flames on their own. That expectation is met a moment later when she rips them away from you and drops them into her steel trash can before offering it, and a match, up to you.<br>
<br>
"@@.npc_manager_dom;Burn them.@@" She growls; you can scarcely recall seeing her so angry.<br>
<br>
You should be too afraid to move, and yet your arm rises like a puppet, taking hold of the lighter, sparking it, and then dropping it into the can where they instantly ablaze.<br>
<br>
"@@.npc_manager;Look at the flame.@@" She commands. "@@.npc_manager;Watch it burn, and so sear away the remains of masculinity. Such things are not for you, they never were, no matter what silly notions you harboured prior to my arriving to... correct you.@@"<br>
<br>
She slams the canister of ash back on the floor with a bang before storming over to her wardrobe. In a flurry she assembles an outfit, tossing it at you with enough force to make you gasp despite its soft material. "@@.npc_manager_dom;Dress. Now.@@"<br>
<br>
[<<moveTo "event_manager_check_male_after_purge_2" "Un-wad the clothing and get changed." 600>>]
</div>/*#
#desc: change after manager re-purges male clothing
#status: FINISHED 0.7.11.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "secretary_pink">>
<<wearItemSet "secretary_pink">>
<<addItemSet "sissy_lingerie_pink">>
<<wearItemSet "sissy_lingerie_pink">>
<<set $player.work.oneTimePay = 500>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You unravel the pink wad of clothing and change into the over-the-top feminine garb under <<=ps(setup.getNpcName("npc_manager","formal"))>> steady glare.<br>
<br>
"@@.npc_manager;Now THAT is a suitably dressed <<if $fetish.sissy>>SISSI <</if>>Secretary. Note that the expense is coming out of your next paycheck. Now get to work.@@"<br>
<br>
You gulp and turn for the door only for her cutting words to stop you just before your escape.<br>
<br>
<<if $npc_manager.criticalanger >= 5>>
"@@.npc_manager;Oh, and Miss <<=$player.last_name>>? Consider that a severe violation of your requirements... of which this makes five, so I am afraid that your contract with me is terminated... unfortunately that does nothing for your sizable debt to the company. I had been shielding you from those consequences but the economic impact of your errors, plus your training, well... it remains sizable. You may end up working it off working in the secretary pool... eventually.@@" Her snort of derision indicates how likely she considers that eventuality.<br>
<br>
[<<moveTo "game_over_repurge_fail" 'Continue.' 60>>]
<<else>>
"@@.npc_manager;Oh, and Miss <<=$player.last_name>>? Consider that a severe violation of your requirements... if you reach five of those, well... your employment with me will be at an end.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start working." 360>>]
<</if>>
</div>/*#
#desc: manager notices changed genitals
#status: FINISHED 0.7.12.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<<useClothSetPush 'underwear'>>
<<removeAllClothing>>
<<storeGenitals $player $npc_manager>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.removeSissyomatic = false>>
<<if $npc_manager.flags.require_chastity>>
<<if $scene.cage != "" && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
<<set $scene.chastityLevel = setup.getChastityLevel()>>
<<set $scene.isSissyomatic = $scene.chastityLevel == 5>>
<<set $scene.removeSissyomatic = $scene.isSissyomatic>>
<<set $scene.newChastityComment = !$npc_manager.flags.seenNewSissyomatic && $scene.isSissyomatic>>
<<if $scene.newChastityComment>>
<<set $npc_manager.flags.seenNewSissyomatic = true>>
<</if>>
<<set $scene.oldChastityReq = $npc_manager.flags.require_chastity>>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $player.body_ref.penis && $fetish.chastity_penis>>
<<set $npc_manager.flags.require_chastity = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.takeKeyGenital = setup.checkItemInInventory(_keyId)>>
<<deleteItem _keyId>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<<elseif ($fetish.chastity_vag && $player.body_ref.vagina || $player.body_ref.penis && $fetish.chastity_penis) && (!setup.checkItemTypeWorn("cage") || setup.getChastityLevel() < 3)>>
<<set $scene.oldChastityReq = $npc_manager.flags.require_chastity>>
<<set $npc_manager.flags.require_chastity = true>>
<<if !$player.body_ref.balls || $player.body_ref.vagina && $fetish.chastity_vag>>
<<set $player.flags.chastity_style = "belt">>
<</if>>
<<if $player.flags.chastity_style == "cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set _keyId = setup.getItemObj($scene.newcage).lockable[1]>>
<<set $scene.takeKeyGenital = setup.checkItemInInventory(_keyId)>>
<<deleteItem _keyId>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<<set $scene.gaveKey=true>>
<<set $npc_manager.flags.hascagekey = true>>
<<elseif (!$fetish.chastity_vag || !$player.body_ref.vagina) && (!$fetish.chastity_penis || !$player.body_ref.penis)>>
<<set $npc_manager.flags.require_chastity=false>>
<<set $npc_manager.flags.hascagekey = false>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<<deleteMember $currentTasks.manager_morning_inspection_task.trigger 'chastity'>>
<<set $currentTasks.manager_morning_inspection_task.condition="">>
<<set $scene.passed = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<if $scene.passed>>
<<set $currentTasks.manager_morning_inspection_task.condition="Complete">>
<<else>>
<<set $currentTasks.manager_morning_inspection_task.condition="Failed">>
<</if>>
<<set $currentTasks.manager_morning_inspection_task.finished=true>>
<</if>>
<<if !$scene.sissyomaticNew && $scene.cage == "">>
<<set $scene.noprevcage = $npc_manager.flags.lastCage == "">>
<</if>>
<<elseif ($fetish.chastity_vag && $player.body_ref.vagina) || ($fetish.chastity_penis && $player.body_ref.penis)>>
<<if !setup.checkItemTypeWorn("cage") || setup.checkItemTypeWorn("cage") && ($fetish.chastity_vag && $player.body_ref.vagina && setup.isCage() || !$player.body_ref.balls && setup.isCage())>>
<<if !$player.body_ref.balls || $player.body_ref.vagina>>
<<set $player.flags.chastity_style = "belt">>
<</if>>
<<if $player.flags.chastity_style == "cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<</if>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.oldChastityReq = $npc_manager.flags.require_chastity>>
<<set $npc_manager.flags.require_chastity = true>>
<<set $scene.takeKeyGenital = setup.checkItemInInventory(_keyId)>>
<<set $scene.takeKeyWardrobeGenital = setup.inWardrobe(_keyId)>>
<<deleteItem _keyId>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<<set $scene.gaveKey=true>>
<<set $npc_manager.flags.hascagekey = !$scene.firstAdvCage>>
<</if>>
<<include "setLastSeenCage">>
<<if $scene.removeSissyomatic>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.turnoverkey = true>>
<<set $scene.differentCage = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Let me see what you have done down there.@@" She states, watching like a hawk until you have removed every thread of
<<if $npc_manager.flags.require_chastity>>
<<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
<<if $scene.newChastityComment>>
clothing to expose your new <<=setup.getItemName($scene.cage)>>.<br>
<br>
"@@.npc_manager;What, how...@@" She asks as she looks upon your new device.<br>
<br>
You quickly explain that this was all done above board and, after quickly checking the computer system she nods. "@@.npc_manager;Well, well, I did not think third parties were allowed to deal with these devices yet, but it would seem that yes, this is all according to regulation. Still, I want to see what you have hiding beneath that device so...@@" In a few moments your
<<else>>
clothing to expose your <<=setup.getItemName($scene.cage)>>. At <<=ps(setup.getNpcName("npc_manager","formal"))>> signal the front of the
<</if>>
device parts, your ass remaining full as the rest of your bits are exposed.
<<elseif $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks.task_chastity_trial.finished>>
clothing. She frowns as she peers close. "@@.npc_manager;Obviously that chastity trial of yours prevents me from having a full look at things... but you ARE locked, and I suppose that is the important thing.@@"
<<else>>
clothing. She soon has you down to just your <<=setup.getItemName($scene.cage)>>, clearly intent on what is going on beneath.
<</if>>
<<elseif !$fetish.chastity_vag && $player.body_ref.vagina && (!$fetish.chastity_penis || !$player.body_ref.penis)>>
to fully expose yourself.
<<else>>
to expose your utter lack of chastity.
<br><br>
<<if !$npc_manager.flags.require_chastity>>
Her eyebrow shoots up, but she makes no comment at you exposure.
<<else>>
<<if $scene.oldChastityReq>>
"@@.npc_manager;This is... well, for you to be so unrestrained on the job is one of the most severe of infractions, but we shall attend to that later, after I have finished my inspection of what you have done...@@"
<<else>>
"@@.npc_manager;Hmm, I do believe that, in light of your changes, well... those things DO need to be locked up if you are going to remain properly focused on the job.@@"
<<if $scene.newcage>>
<br><br>
She fetches a chastity device from her desk and efficiently has you locked up a few moments later, the sculpted steel initially cool as it adjusts to your body temperature.
<</if>>
<</if>>
<</if>>
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
to reveal your <<=setup.getItemTypeName("cage")>>.<br>
<br>
"@@.npc_manager;I see... well, chastity is not a requirement of your employment, but it does compliment you quite nicely. Control and security are such important values, yes?@@"
<<else>>
to expose your nakedness.
<</if>>
<</if>>
<br><br>
<<switch $scene.genital_change>>
<<case "all">>
She looks at your "dual" setup in silence<<if $scene.cage != "">>, temporarily unlocking you and<</if>> lifting your <<getWordMyPenis false>> out of the way to run a finger experimentally through your slit as you bite your lip to suppress a moan.<br>
<br>
"@@.npc_manager;Well, well, look who is sensitive — and horny,@@" she adds, as no longer need to hold your <<getWordMyPenis false>> out of the way as it stands up, tall and proud.
<<if $npc_manager.flags.require_chastity>>
<br><br>
<<if $scene.cage != "">>
<<if $scene.oldChastityReq>>
<<if $scene.isSissyomatic>>
She reaches for the remote for your <<=setup.getItemName($scene.cage)>> to seal, fill and imprison you completely. "@@.npc_manager;Yes, there really is no other device sufficient to contain what you are now packing... I suppose we should be glad the doctors were equipped to keep you under control.@@"
<<elseif $scene.chastityLevel == 4>>
She takes a moment to inspect your chastity device before nodding. "@@.npc_manager;Yes, I believe that should be sufficient to keep you under control... if barely.@@"
<<elseif $fetish.chastity_vag && $fetish.chastity_penis>>
<<set $scene.sissyomaticNew = true>>
She frowns. "@@.npc_manager;While I admire your effort to keep to the spirit of your instructions... that device is woefully incapable of providing sufficient security for the state you are now in. No, there is only one item sufficient to ensure that you will remain properly under control...@@"
<<elseif $fetish.chastity_vag && !$fetish.chastity_penis>>
She nods. "@@.npc_manager;Unfortunately for you, there is no way to keep that <<getWordVagina>> of yours secured in accordance with regulations, without simultaneously locking away your sweet <<getWordMyPenis>>. @@"
<<elseif !$fetish.chastity_vag && $fetish.chastity_penis>>
She nods. "@@.npc_manager;So long as you keep your <<getWordMyPenis>> properly secured everything is in order. Though I would remind you to exercise personal responsibility and control at the office, even for those bits that are not locked.@@"
<</if>>
<<else>>
<<if $scene.isSissyomatic>>
She reaches for the remote for your <<=setup.getItemName($scene.cage)>> to seal, fill and imprison you completely. "@@.npc_manager;Yes, there really is no other device sufficient to contain what you are now packing... I suppose we should be glad the doctors were equipped to keep you under control.@@"
<<elseif $scene.chastityLevel == 4>>
She takes a moment to inspect your chastity device before nodding. "@@.npc_manager;Yes, I believe that should be sufficient to keep you under control... if barely. A reminder that your new... addition means that I will be expecting you be locked up while you are at work. For obvious reasons.@@"
<<elseif $fetish.chastity_vag && $fetish.chastity_penis>>
<<set $scene.sissyomaticNew = true>>
She frowns. "@@.npc_manager;While I admire your effort to keep to the spirit of your instructions... that device is woefully incapable of providing sufficient security for the state you are now in. No, there is only one item sufficient to ensure that you will remain properly under control...@@"
<<elseif $fetish.chastity_vag && !$fetish.chastity_penis>>
She nods. "@@.npc_manager;Unfortunately for you, there is no way to keep that <<getWordVagina>> of yours secured in accordance with regulations, without simultaneously locking away your sweet <<getWordMyPenis>>. @@"
<<elseif !$fetish.chastity_vag && $fetish.chastity_penis>>
She nods. "@@.npc_manager;So long as you keep your <<getWordMyPenis>> properly secured everything is in order. Though I would remind you to exercise personal responsibility and control at the office, even for those bits that are not locked.@@"
<</if>>
<</if>>
<<elseif $fetish.chastity_vag && $player.body_ref.vagina && $fetish.chastity_penis && $player.body_ref.penis>>
<<set $scene.sissyomaticNew = true>>
"@@.npc_manager;On the one hand I can understand the problem you faced, there really is no commercially available device sufficient to dealing with what you are sporting, but that does not mean you can be left un-locked.@@"<br>
<br>
Opening her desk she pulls out a chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>> and swiftly locks it onto your body. "@@.npc_manager;There, just as it should be. And it is electrified, of course, so stay on your toes!@@"
<<elseif $fetish.chastity_penis>>
<<set $scene.sissyomaticNew = true>>
"@@.npc_manager;Now, I am afraid that, with the return of your <<if $fetish.sph>>little <</if>>friend, well... work chastity is now back as a permanent requirement.@@"<br>
<br>
Opening her desk she pulls out a chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>> and swiftly locks it onto your body. "@@.npc_manager;There, just as it should be. And it is electrified, of course, so stay on your toes!@@"
<<elseif $scene.noprevcage>>
"@@.npc_manager;Everything appears to be in order, as it were. But it is best to be sure, obviously.@@"
<<else>>
"@@.npc_manager;Quite impressive, I must say. Do see that you are not getting into trouble with it, especially not whilst you are on the clock. You work a representative position, my dear. Always remember that.@@"
<</if>>
<</if>>
<<case "vagina">>
<<if $player.sec_style.body.penis_remove == "strict">>
"@@.npc_manager;So you ran afoul of <<=setup.getNpcName('npc_boss', 'formal')>>... quite the dangerous path, on your part... though I cannot fault <<his npc_boss>> taste, you really do look much better without that <<if $fetish.sph>>tiny <</if>>distraction.@@"
<<else>>
"@@.npc_manager;My, my,@@" she says with a smile as she looks at your glistening puss. "@@.npc_manager;That really is a beautiful pussy... for a beautiful girl.@@"
<</if>>
<br><br>
You blush as she stands up.
<<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
She reaches for the remote for your <<=setup.getItemName($scene.cage)>> to seal, fill and imprison you completely. "@@.npc_manager;Yes, there really is no other device sufficient to contain what you are now packing... I suppose we should be glad the doctors were equipped to keep you under control.@@"
<<else>>
<<if $fetish.chastity_vag && $player.body_ref.vagina>>
"@@.npc_manager;Well done in properly securing yourself — just because you no longer have a naughty thing hanging down there does not mean you can go without protective measures while on the job!@@"
<<if $scene.takeKeyWardrobeGenital || $scene.firstAdvCage || $scene.takeKeyGenital>>
<br><br>
She extends a hand for the key and
<<if $scene.takeKeyGenital>>
you hand it over. "@@.npc_manager;Very good. Nice to get back into old habits, hmm?@@"
<<elseif $scene.firstAdvCage>>
you explain the situation with your chastity trial. "@@.npc_manager;I see, well... I suppose it is good that you have taken measures to properly secure yourself... we shall have to wait for the end of your trial to discuss things further.@@"
<<else>>
frowns when you fail to turn it over. "@@.npc_manager;No, that will not do.@@" She states in annoyance before producing a device that she uses to re-key your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>. "@@.npc_manager;There, that should have you under proper control — no partial measures, my dear!@@"
<</if>>
<</if>>
<<elseif !$fetish.chastity_vag && $player.body_ref.vagina && $fetish.chastity_penis>>
"@@.npc_manager;You know... since that distracting, profile-disrupting thing is no more... I suppose you could forgo chastity. Of course you might wish to retain it for your own reasons of protection, but with nothing at risk of "popping up" down there your work requirements do not mandate being locked up.@@"
<</if>>
<</if>>
<<elseif $fetish.chastity_vag && $player.body_ref.vagina>>
"@@.npc_manager;That said... well, being locked up remains a mandate of your employment here, that you require a different sort of device now is no excuse for running about... unrestrained. Let us just take care of that now, shall we?@@"<br>
<br>
Opening her desk she pulls out a chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>>, swiftly locking it onto your body. "@@.npc_manager;Electrified, of course, so stay on your toes!@@" She explains.
<<elseif $npc_manager.flags.lastCage == "">>
"@@.npc_manager;Everything appears to be in order, as it were. But it is best to be sure, obviously.@@"
<<else>>
"@@.npc_manager;With you no longer at risk of having something untoward... "pop up," well, I believe it would be well, safe is not quite the word, but not a danger to your performance for you to forgo chastity and I will no longer mandate it as part of your required work attire.@@"
<</if>>
<<case "penis">>
"@@.npc_manager;Well, well, look who is back!@@"<br>
<br>
<<if $npc_manager.flags.require_chastity>>
<br><br>
<<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
She reaches for the remote for your <<=setup.getItemName($scene.cage)>> device. "@@.npc_manager;There we go, nicely secured, such a wonderful device, is it not?@@"
<<elseif $fetish.chastity_vag && $player.body_ref.vagina>>
She nods in approval at your <<=setup.getItemName($scene.cage)>>. "@@.npc_manager;Well, you are locked back up — that is the important thing.@@"
<<elseif $fetish.chastity_penis>>
She nods in approval at your <<=setup.getItemName($scene.cage)>>. "@@.npc_manager;Good, you are locked. I was willing to permit flexibility so long as there was no risk of anything untowards popping up, but now, well... a locked <<if $fetish.sissy>>SISSI <</if>>Secretary is a good <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<else>>
She nods in approval at your <<=setup.getItemName($scene.cage)>>. "@@.npc_manager;Locked up. Very nice... even if it is not strictly required.@@"
<</if>>
<<if !$scene.isSissyomatic && ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis)>>
<br><br>
She extends a hand for the key and
<<if $scene.takeKeyGenital>>
you hand it over. "@@.npc_manager;Very good. Nice to get back into old habits, hmm?@@"
<<elseif $scene.firstAdvCage>>
you explain the situation with your chastity trial. "@@.npc_manager;I see, well... I suppose it is good that you have taken measures to properly secure yourself... we shall have to wait for the end of your trial to discuss things further.@@"
<<else>>
frowns when you fail to turn it over. "@@.npc_manager;No, that will not do.@@" She states in annoyance before producing a device that she uses to re-key your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>. "@@.npc_manager;There, that should have you under proper control — no partial measures, my dear!@@"
<</if>>
<</if>>
<</if>>
<<elseif $fetish.chastity_vag && $player.body_ref.vagina>>
"@@.npc_manager;That said... well, being locked up remains a requirement, that you require a different sort of device now is no excuse for running about... unrestrained. Let us just take care of that now, shall we?@@"<br>
<br>
Opening her desk she pulls out a chastity belt, swiftly locking it onto your body. "@@.npc_manager;Electrified, of course, so stay on your toes!@@" She explains.
<<elseif $fetish.chastity_penis>>
"@@.npc_manager;That said... well, you know how I feel about those sorts of things bouncing around my office. A vagina was acceptable, but that? It needs to be secured.@@"<br>
<br>
Opening her desk she pulls out a chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>> and swiftly locks it onto your body. "@@.npc_manager;There, just as it should be. And it is electrified, of course, so stay on your toes!@@"
<<else>>
"@@.npc_manager;Everything appears to be in order, as it were. But it is best to be sure, obviously.@@"
<</if>>
<<case "balls">>
"@@.npc_manager;Ah, the twins have returned — quite alright, they can be quite useful for... punishment.@@"
<<if $npc_manager.flags.require_chastity>>
<br><br>
<<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
"@@.npc_manager;Fortunately that lovely <<=setup.getItemName($scene.cage)>> is more than up to the task of wrangling whatever you have down below, very good.@@"
<<else>>
"@@.npc_manager;It would seem you have kept to your chastity requirements, so, I suppose, everything is in order.@@"
<</if>>
<<else>>
She steps closer and wraps her hand around your new balls — not squeezing hard, but enough to remind you she could. "@@.npc_manager;Speaking of which, well... these really should not be on the loose like this, but we can attend to that in the course of your normal inspection, hmm?@@"
<</if>>
<</if>>
<<case "noballs">>
<<if $scene.cage != "">>
"@@.npc_manager;My, my, decided you wanted some more smoothness? Well it does look very cute, I must admit.@@"<br>
<br>
<<if $scene.isSissyomatic>>
She smiles and reaches for the <<=setup.getItemName($scene.cage)>> remote. "@@.npc_manager;Fortunately that lovely device is perfectly capable of containing just about anything. You just have to love modern technology!@@"
<<else>>
"@@.npc_manager;It would seem you found a chastity solution that works with your new situation... so I would have to call everything in order.@@"
<</if>>
<<elseif $scene.noprevcage>>
"@@.npc_manager;Everything appears to be in order, as it were. But it is best to be sure, obviously.@@"
<<elseif $npc_manager.flags.require_chastity>>
"@@.npc_manager;My, my, decided you wanted some more smoothness? Well it does look very cute, I must admit... of course, there is your lack of chastity. That is quite the problem, but, fortunately for you, I have the solution right here...@@"
<<else>>
"@@.npc_manager;How smooth, very attractive, very attractive, indeed.@@"
<</if>>
<<case "dragon" "horse" "knot">>
"@@.npc_manager;Well!@@" She notes as she examines your large, fantastical penis. "@@.npc_manager;That is certainly... a thing, but so long as you keep it properly secured whilst on the job, it is your body.@@"<br>
<br>
<<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
She reaches for the <<=setup.getItemName($scene.cage)>> remote. "@@.npc_manager;Yes, quite the perfect device, able to handle even the mightiest beasts...@@"
<<else>>
"@@.npc_manager;I am surprised that you managed to keep using that same device but... well, so long as you are secured for work, everything is in order, regardless of what, precisely, is being secured.@@"
<<if $scene.takeKeyWardrobeGenital || $scene.firstAdvCage || $scene.takeKeyGenital>>
<br><br>
She extends a hand for the key and
<<if $scene.takeKeyGenital>>
you hand it over. "@@.npc_manager;Very good. Nice to get back into old habits, hmm?@@"
<<elseif $scene.firstAdvCage>>
you explain the situation with your chastity trial. "@@.npc_manager;I see, well... I suppose it is good that you have taken measures to properly secure yourself... we shall have to wait for the end of your trial to discuss things further.@@"
<<else>>
frowns when you fail to turn it over. "@@.npc_manager;No, that will not do.@@" She states in annoyance before producing a device that she uses to re-key your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>. "@@.npc_manager;There, that should have you under proper control — no partial measures, my dear!@@"
<</if>>
<</if>>
<</if>>
<<elseif $scene.noprevcage>>
She shakes her head as your bestial cock twitches. "@@.npc_manager;Let us just hope that your new feature is not a... distraction to your work, hmm?@@"
<<elseif $npc_manager.flags.require_chastity>>
She shakes her head as your bestial cock twitches. "@@.npc_manager;Of course, that is only if you keep things under control. While what type of cock you have locked up is not my concern that it IS securely locked... is. But we can attend to that in your normal inspection, as we would any other chastity failure.@@"
<<else>>
She stares at your inhuman member, clearly liking what she sees. "@@.npc_manager;Very impressive... very impressive, indeed.@@"
<</if>>
<<case "shrank">>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_manager;Oh look at you! I thought you were small before, but this is just precious!@@"
<<else>>
"@@.npc_manager;Hmm, decided to adjust your size? Well it looks quite nice.@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;Ah, look at your thing, so cute and petite, it really does look perfect on you.@@"
<<case 'none'>>
"@@.npc_manager;Hmm, decided to adjust your size? Well it looks quite nice.@@"
<<default>>
ERROR: unhandled <<=$player.body_ref.shrink_style>>
<</switch>>
<br><br>
<<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
She nods and reaches for the <<=setup.getItemName($scene.cage)>> remote. "@@.npc_manager;Yes, everything is in order, very good.@@"
<<else>>
"@@.npc_manager;So long as it is locked up I believe everything is in order... so we can move on with things.@@"
<<if $scene.takeKeyWardrobeGenital || $scene.firstAdvCage || $scene.takeKeyGenital>>
<br><br>
She extends a hand for the key and
<<if $scene.takeKeyGenital>>
you hand it over. "@@.npc_manager;Very good. Nice to get back into old habits, hmm?@@"
<<elseif $scene.firstAdvCage>>
you explain the situation with your chastity trial. "@@.npc_manager;I see, well... I suppose it is good that you have taken measures to properly secure yourself... we shall have to wait for the end of your trial to discuss things further.@@"
<<else>>
frowns when you fail to turn it over. "@@.npc_manager;No, that will not do.@@" She states in annoyance before producing a device that she uses to re-key your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>. "@@.npc_manager;There, that should have you under proper control — no partial measures, my dear!@@"
<</if>>
<</if>>
<</if>>
<<elseif $scene.noprevcage>>
"@@.npc_manager;Everything appears to be in order, as it were. But it is best to be sure, obviously.@@"
<<elseif $npc_manager.flags.require_chastity>>
She frowns. "@@.npc_manager;Of course, no matter WHAT the size... it needs to be locked and secured, but we can attend to that through your normal inspection, I believe.@@"
<<else>>
She nods slowly. "@@.npc_manager;Well just keep things... well, not in hand, obviously but under control while you are at work, hmm?@@"
<</if>>
<<case "grew">>
<<if !$npc_manager.flags.require_chastity>>
"@@.npc_manager;My, my... if my eyes do not deceive me you have grown since I last saw you.@@"
<<elseif $scene.cage != "">>
"@@.npc_manager;My, my, look who is a growing girl! Quite alright, so long as you remain properly locked up and... you are, so it would seem everything is in order.@@"
<<else>>
"@@.npc_manager;Hmm... it would seem that my cute growing girl has grown right out of her prison! Very disappointing, but we can attend to that in the normal inspection, I believe.@@"
<</if>>
<<case "nopenis">>
<<if $player.sec_style.body.penis_remove == "strict">>
"@@.npc_manager;So you ran afoul of <<=setup.getNpcName('npc_boss', 'formal')>>... quite the dangerous path, on your part... though I cannot fault <<his npc_boss>> taste, you really do look much better without that <<if $fetish.sph>>tiny <</if>>distraction.@@"
<<else>>
"@@.npc_manager;Decided that two was too much?@@" She says with a wink as she stares at your glistening puss. "@@.npc_manager;Well you certainly made the correct decision as to which to keep, so beautiful and sleek.@@"
<</if>>
<br><br>
You blush as she stands up.
<<if $scene.cage != "">>
<<if $scene.isSissyomatic>>
She reaches for the remote for your <<=setup.getItemName($scene.cage)>> to seal, fill and imprison you completely. "@@.npc_manager;Is your device not a delight? Perfectly designed to have you filled, restrained and under control.@@"
<<else>>
<<if $fetish.chastity_vag && $player.body_ref.vagina>>
"@@.npc_manager;Well done in properly securing yourself — just because you no longer have a naughty thing hanging down there does not mean you can go without protective measures while on the job!@@"
<<elseif !$fetish.chastity_vag && $player.body_ref.vagina && $fetish.chastity_penis>>
"@@.npc_manager;You know... since that distracting, profile-disrupting thing is no more... I suppose you could forgo chastity. Of course you might wish to retain it for your own reasons of protection, but with nothing at risk of "popping up" down there your work requirements do not mandate being locked up.@@"
<</if>>
<<if $scene.takeKeyWardrobeGenital || $scene.firstAdvCage || $scene.takeKeyGenital>>
<br><br>
She extends a hand for the key
<<if $scene.takeKeyGenital>>
you hand it over. "@@.npc_manager;Very good. Nice to get back into old habits, hmm?@@"
<<elseif $scene.firstAdvCage>>
you explain the situation with your chastity trial. "@@.npc_manager;I see, well... I suppose it is good that you have taken measures to properly secure yourself... we shall have to wait for the end of your trial to discuss things further.@@"
<<else>>
frowns when you fail to turn it over. "@@.npc_manager;No, that will not do.@@" She states in annoyance before producing a device that she uses to re-key your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>. "@@.npc_manager;There, that should have you under proper control — no partial measures, my dear!@@"
<</if>>
<</if>>
<</if>>
<<elseif $fetish.chastity_vag && $player.body_ref.vagina>>
"@@.npc_manager;That said... well, being locked up remains a mandate of your employment here, that you require a different sort of device now is no excuse for running about... unrestrained. Let us just take care of that now, shall we?@@"<br>
<br>
Opening her desk she pulls out a chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>>, swiftly locking it onto your body. "@@.npc_manager;Electrified, of course, so stay on your toes!@@" She explains.
<<elseif $scene.noprevcage>>
"@@.npc_manager;Everything appears to be in order, as it were. But it is best to be sure, obviously.@@"
<<else>>
"@@.npc_manager;With you no longer at risk of having something untoward... "pop up," well, I believe it would be well, safe is not quite the word, but not a danger to your performance for you to forgo chastity and I will no longer mandate it as part of your required work attire.@@"
<</if>>
<<case "novag">>
"@@.npc_manager;Down to just a penis? Now that is a surprise.@@" She states, <<if $scene.cage != "">>temporarily removing your chastity device and <</if>>using a pen to carefully hold your <<getWordMyPenis>><<if $player.body_ref.balls>> and balls<</if>> to one side while she expects your now smooth taint.<br>
<br>
<<if $scene.cage != "">>
She waits for you to re-seal your <<=setup.getItemName($scene.cage)>> and then
<<if $scene.isSissyomatic>>
she reaches for the remote. "@@.npc_manager;There we go, nicely secured, such a wonderful device, is it not?@@"
<<elseif $fetish.chastity_vag && $player.body_ref.vagina>>
she nods in approval at your newly imprisoned crotch. "@@.npc_manager;Well, you are locked back up — that is the important thing.@@"
<<elseif $fetish.chastity_penis>>
she nods in approval. "@@.npc_manager;Good, you are locked. I was willing to permit flexibility so long as there was no risk of anything untowards popping up, but now, well... a locked <<if $fetish.sissy>>SISSI <</if>>Secretary is a good <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<else>>
she nods in approval. "@@.npc_manager;Locked up. Very nice... even if it is not strictly required.@@"
<</if>>
<<if !$scene.isSissyomatic && ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis)>>
<br><br>
She extends a hand for the key and
<<if $scene.takeKeyGenital>>
you hand it over. "@@.npc_manager;Very good. Nice to get back into old habits, hmm?@@"
<<elseif $scene.firstAdvCage>>
you explain the situation with your chastity trial. "@@.npc_manager;I see, well... I suppose it is good that you have taken measures to properly secure yourself... we shall have to wait for the end of your trial to discuss things further.@@"
<<else>>
frowns when you fail to turn it over. "@@.npc_manager;No, that will not do.@@" She states in annoyance before producing a device that she uses to re-key your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>. "@@.npc_manager;There, that should have you under proper control — no partial measures, my dear!@@"
<</if>>
<</if>>
<<elseif $fetish.chastity_vag && $player.body_ref.vagina>>
"@@.npc_manager;That said... well, being locked up remains a requirement, that you require a different sort of device now is no excuse for running about... unrestrained. Let us just take care of that now, shall we?@@"<br>
<br>
Opening her desk she pulls out a chastity belt, swiftly locking it onto your body. "@@.npc_manager;Electrified, of course, so stay on your toes!@@" She explains.
<<elseif $fetish.chastity_penis>>
"@@.npc_manager;That said... well, you know how I feel about those sorts of things bouncing around my office. A vagina was acceptable, but that? It needs to be secured.@@"<br>
<br>
Opening her desk she pulls out a chastity <<if $player.flags.chastity_style == "cage">>cage<<else>>belt<</if>> and swiftly locks it onto your body. "@@.npc_manager;There, just as it should be. And it is electrified, of course, so stay on your toes!@@"
<<elseif $scene.noprevcage>>
"@@.npc_manager;Everything appears to be in order, as it were. But it is best to be sure, obviously.@@"
<<else>>
ERROR: unexpected
<</if>>
<<default>>
ERROR: unexpected scene.genital_change <<=$scene.genital_change>>
<</switch>>
<br><br>
<<if $scene.sissyomaticNew>>
<<if $npc_manager.anger == 0 && $npc_manager.affection >= 10 && ($player.sec_style.submission.permanent_key != "" || $npc_manager.flags.trustplayerwithkey && $player.sec_style.submission.permanent_key == "")>>
<<=setup.getNpcName("npc_manager","formal")>> seems to be thinking for quite some time, and you find yourself nervously holding your breath as you wait for her to continue.<br>
<br>
"@@.npc_manager;So... your new situation, well... it presents a bit of a challenge when it comes to security. There is a new prototype device that the company is making that would provide the ultimate protection... at the cost of you becoming locked under control of the company itself, which means no more asking me for the key, no matter how good you behave. The other option, since you have proven yourself to be SUCH a good girl would be to forgo that technically experimental device and, instead, go for a top of the line off the shelf model. So, my dear... tell me which shall it be?@@"<br>
<br>
[<<moveTo "event_sissyomatic_adv_ultra_1" "Continue." 360>>]<br>
[<<moveTo "event_sissyomatic_ultra_1_alt" "You'll accept being locked under corporate control." 60>>]
<<elseif $fetish.chastity_vag && $player.body_ref.vagina>>
"@@.npc_manager;Come,@@" she states. "@@.npc_manager;Loathe as I am to deal with <<him npc_work_doctor>>, I believe we must enlist <<=setup.getNpcName("npc_work_doctor","formal")>> for a device sufficient to... secure you in your present state. Get dressed, we are going on a field trip.@@"<br>
<br>
Your heart beats a bit faster as you pull on your clothes and hurry after her.<br>
<br>
[<<moveTo "event_sissyomatic_ultra_1" "Continue." 360 "<<useClothSetPop 'tmp'>>">>]
<<else>>
"@@.npc_manager;So... your new situation, well... it presents a bit of a challenge when it comes to security, and security is definitely something to be concerned about. In your current state I can present you with two options. First would be a new prototype device that the company is making that would provide the ultimate protection... at the cost of you becoming locked under control of the company itself, which means no more asking me for the key, no matter how good you behave. The other option, would be to forgo that technically experimental device and, instead, go for a top of the line off the shelf model. So, my dear... tell me which shall it be?@@"<br>
<br>
[<<moveTo "event_sissyomatic_adv_ultra_1" "Continue." 360>>]<br>
[<<moveTo "event_sissyomatic_ultra_1_alt" "You'll accept being locked under corporate control." 60>>]
<</if>>
<<elseif $scene.isSissyomatic>>
"@@.npc_manager;Well, I suppose things are in hand, let us get you properly locked back up...@@"<br>
<br>
[<<moveTo "event_inspection_genitals_2" "Continue." 360>>]
<<else>>
<<if $npc_manager.stage == 5>>
"@@.npc_manager;Well, with that all sorted I believe you are free to get to your desk and start working. Get your things sorted, you may return to your desk.@@"
<<else>>
"@@.npc_manager;Well, with that out of the way... I believe we can continue on with your inspection, put your underthings back on.@@"
<</if>>
<br><br>
<<switch $npc_manager.stage>>
<<case 2>>
<<if $scene.cage != "" && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
[<<moveTo "event_manager_daily_check_stage_2_2" "Continue." 360 "<<useClothSetPop 'underwear'>><<if $scene.cage>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><<include 'setLastSeenCage'>><</if>><<set $scene.firstAdvCage=false>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_2_2" "Continue." 360 "<<useClothSetPop 'underwear'>><<if $scene.cage>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><<include 'setLastSeenCage'>><</if>><<set $scene.firstAdvCage=false>>">>]
<</if>>
<<case 3>>
<<if $scene.cage != "" && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Continue." 360 "<<useClothSetPop 'underwear'>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><<include 'setLastSeenCage'>><<set $scene.firstAdvCage=false>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Continue." 360 "<<useClothSetPop 'underwear'>><<set $scene.firstAdvCage=false>>">>]
<</if>>
<<case 4>>
<<if $scene.cage != "" && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
[<<moveTo "event_manager_daily_check_stage_4_inspect" "Continue." 360 "<<useClothSetPop 'tmp'>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><<include 'setLastSeenCage'>><<set $scene.firstAdvCage=false>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_4_inspect" "Continue." 360 "<<useClothSetPop 'tmp'>><<if $scene.removeSissyomatic>><<include 'replaceCage_extendSissyomatic'>><<elseif $scene.cage>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><<include 'setLastSeenCage'>><</if>><<set $scene.firstAdvCage=false>>">>]
<</if>>
<<case 5>>
<<if $scene.cage != "" && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Continue." 360 "<<useClothSetPop 'tmp'>><<if $scene.removeSissyomatic>><<include 'replaceCage_extendSissyomatic'>><<elseif $scene.cage>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><<include 'setLastSeenCage'>><</if>><<set $scene.firstAdvCage=false>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Continue." 360 "<<useClothSetPop 'tmp'>><<if $scene.removeSissyomatic>><<include 'replaceCage_extendSissyomatic'>><<elseif $scene.cage>><<wearItem $scene.cage true>><<manipulateItem $scene.cage 'lock' true>><<include 'setLastSeenCage'>><</if>><<set $scene.firstAdvCage=false>>">>]
<</if>>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: manager upgrades or re-locks sissyomatic
#status: FINISHED 0.7.12.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "replaceCage_extendSissyomatic">>
<<include "setLastSeenCage">>
<<set $scene.differentCage = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
At the press of a button the <<=setup.getItemName($scene.cage)>> closes back over you, returning you once again to the device's filled and locked control.<br>
<br>
"@@.npc_manager;Lovely, and so efficient! Now, shall we be on with the inspection?@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Continue." 360 "<<useClothSetPop 'underwear'>>">>]
<<case 4>>
[<<moveTo 'event_manager_daily_check_stage_4_inspect' "Continue." 360 "<<useClothSetPop 'tmp'>>">>]
<<case 5>>
[<<moveTo 'event_manager_daily_check_stage_5_evil' "Continue." 360 "<<useClothSetPop 'tmp'>>">>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
</div>/*#
#desc: check drugs as required
#status: RELEASED 0.7.11.0
#*/
<<if $currentTasks.hasOwnProperty('event_doctor_first_appointment') && !$currentTasks.event_doctor_first_appointment.finished>>
She sighs. "@@.npc_manager;No real point checking your drug levels today, given your history of abuse. Remember to make your meeting with <<=setup.getNpcName("npc_work_doctor","formal")>> <<if $now.getUTCDay()==2>>this evening<<else>>on Tuesday<</if>> so <<he npc_work_doctor>> can sort things out and you can move on from your mistake.@@"<br>
<br>
She motions for you to dress and return to your desk.<br>
<br>
[<<moveTo $scene.inspectionReturn "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<elseif $workEvents.hasOwnProperty("failed_prescription_event")>>
"@@.npc_manager;Hmm... it would seem that you have failed to take your prescription... running low on supplies, perhaps?@@" She chuckles in amusement... a laugh that only serves to make you feel more nervous. "@@.npc_manager;Well, for now, you may proceed to work, and I will send in a request for something to get you... back on track.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<elseif $currentTasks.manager_morning_inspection_task && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') || $currentTasks.manager_morning_inspection_task_repeat && $currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('pinkPill')>>
<<if $currentTasks.manager_morning_inspection_task && setup.checkTaskReason('manager_morning_inspection_task', 'pinkPill') || $currentTasks.manager_morning_inspection_task_repeat && setup.checkTaskReason('manager_morning_inspection_task_repeat', 'pinkPill')>>
<<=setup.getNpcName("npc_manager","formal")>> whips out a small scanner.<br>
<br>
<<if setup.hasTmpEffect("sissypill_mk1") || setup.hasTmpEffect("sissypill") || setup.hasTmpEffect("sissypill_eternal")>>
"@@.npc_manager;Drug levels seem nominal. Well done on maintaining this non-attire portion of your responsibilities.@@"
<<elseif setup.hasTmpEffect("sissypill_mk1_od")>>
"@@.npc_manager;Your drug levels appear elevated. Do take more care in only taking one pill per day, and avoid alcohol, I have told you before that such can have quite severe interactions.@@"
<<elseif setup.hasTmpEffect("sissypill_mk2") || setup.hasTmpEffect("sissypill_2_eternal")>>
"@@.npc_manager;Keeping to your treatment plan... very good.@@"
<<elseif setup.hasTmpEffect("sissypill_mk2_od")>>
"@@.npc_manager;Are you... abusing your treatment drug? No, no, you really must take more care of yourself. Failing to follow medication guidelines on such potent pharmaceuticals could have severe, lasting effects that would greatly harm your efficiency as my <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<elseif setup.hasTmpEffect("sissypill_mk3") || setup.hasTmpEffect("sissypill_3_eternal") || setup.hasTmpEffect("sissypill_pure") || setup.hasTmpEffect("sissypill_pure_eternal")>>
"@@.npc_manager;Hmm, it would seem that the scanner has not been updated for your particular dosage... but it has the right markers, so this will be sufficient for requirements.@@"
<<else>>
ERROR: unexpected drug!
<</if>>
<br><br>
[<<moveTo $scene.inspectionReturn "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> pulls out a scanner.<br>
<br>
<<if $player.flags.pink_pill.missed_inspect >= 3 && !$player.sec_style.body.pinkpill_eternal>>
<<=setup.getNpcName("npc_manager","formal")>> sighs as you, yet again, admit to not taking your drugs.<br>
<br>
"@@.npc_manager;This forgetfulness of a job requirement — one made for your own health, might I add...@@" Rather than offering you pills, as she normally does, she circles back to her desk and pulls out a small case. "@@.npc_manager;Given your past misses I had anticipated this failure, and I had <<=setup.getNpcName("npc_work_doctor","formal")>> blend up something special. <<=setup.getItemName("sissy_pill_eternal")>>, he calls it. All the effects of your normal dosage, but in a single time-release nanomachine-packed pill that will manufacture in situ and keep you supplied for several years. So, are you ready to remove this tedious inefficiency of my checking up on you every morning?@@"<br>
<br>
[<<moveTo "event_pink_pill_eternal_money_1" "If it would boost your efficiency... can she boost your pay?" 120>>]<br>
[<<moveTo "event_pink_pill_eternal_forced_1" "Your drug requirement is bad enough... have the effect last years??" 120>>]<br>
[<<moveTo "event_pink_pill_eternal_obedient_1" "If it would make things more efficient for her..." 120>>]
<<elseif $player.flags.pink_pill.super_od>>
She frowns. "@@.npc_manager;It would seem that you have failed to adhere to your treatment plan. I know this sort of thing can be a challenge but, according to <<=setup.getNpcName("npc_work_doctor","formal")>>, it is the only way to deal with the lingering affects of your pharmaceutical abuse.@@"<br>
<br>
<<printThought "According to <<=setup.getNpcName('npc_work_doctor','formal')>>? That's a curious phrasing...">><br>
<br>
She walks over to her desk and produces a... somewhat large pill<<if setup.getItemCount('personal_medication') < 5>> and a couple of the small ones you neglected to take<</if>>.<br>
<br>
"@@.npc_manager;It would seem that <<=setup.getNpcName("npc_work_doctor","formal")>> already anticipated your reticence, as <<he npc_work_doctor>> had me stocked with this... bend over, please — for efficiency of uptake it goes up your cute bum... one good thing about it, I suppose.<<if setup.getItemCount('personal_medication') < 5>>This bottle should get you through to your next appointment<</if>>@@"<br>
<br>
[<<moveTo "event_prescription_punish_2" "Do as she says." 600 "<<set $scene.drug = true>><<set $scene.fromInspection=true>>">>]<br>
[<<moveTo "event_prescription_punish_2" "Beg not to take the drug." 300 "<<set $scene.drug=false>><<set $scene.fromInspection=true>>">>]
<<else>>
"@@.npc_manager;Hmm... have you been taking so many drugs that you forgot to take them consistently? Very disappointing, you know that this is now part of your requirements. Wake up, take your pill, that would be the most efficient process.@@"<br>
<br>
<<if $player.sec_style.body.pinkpill != "money">>
She sighs and you again get the feeling that she is less than enamoured with this requirement having been added on by <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<</if>>
Walking around to her desk she comes back with a bottle of pills "@@.npc_manager;Rules are rules, my dear.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_drugs_1" "Take one pill and swallow it." 360 "<<set $scene.drug_action='one'>>">>]<br>
[<<moveTo "event_manager_daily_check_drugs_1" "Take and swallow a handful of pills." 360 "<<set $scene.drug_action='many'>>">>]<br>
[<<moveTo "event_manager_daily_check_drugs_1" "Refuse to take any pills." 360 "<<set $scene.drug_action='refuse'>>">>]<br>
[<<moveTo "event_manager_daily_check_drugs_2_nowork_alt" "Insist you took your pill, but it didn't do anything!" 180>>]<br>
<</if>>
<</if>>
<<else>>
[<<moveTo $scene.inspectionReturn "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>/*#
#desc: given drugs when you forgot
#status: FINISHED 0.7.11.0
#ignore_spell: bimboriffic
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.pink_pill.missed_inspect += 1>>
<<switch $scene.drug_action>>
<<case 'one'>>
<<applyExperience 'submission' 7 'little' $SEEN_FRIEND>>
<<if $player.flags.pink_pill.super_od || ($currentTasks.hasOwnProperty('event_doctor_first_appointment') && $currentTasks.event_doctor_first_appointment.finished)>>
<<setTmpEffect 'sissypill_mk2'>>
<<changeHorny 20>>
<<applyStress -30>>
<<applyFatigue -30>>
<<set $scene.breastGrowth = $player.body.breastsize[0] < 6>>
<<if $scene.breastGrowth>>
<<set $player.body.breastsize[1] = 6>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<<set $scene.counterMk1 = setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $scene.counterMk1>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<set $player.flags.used_sissy_pill_2_count += 1>>
<<else>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<if $player.flags.pink_pill.times_od1 < 1>>
<<changeHorny 50>>
<<setTmpEffect 'sissypill_mk1'>>
<<set $scene.cureWithdrawl = setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $scene.cureWithdrawl>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<<applyFatigue -50>>
<</if>>
<</if>>
<</if>>
<<if !$player.sec_style.body.pinkpill>>
<<set $player.sec_style.body.pinkpill = "obedient">>
<</if>>
<<case 'many'>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<if !$player.sec_style.body.pinkpill>>
<<set $player.sec_style.body.pinkpill = "voluntary">>
<</if>>
<<if $player.flags.pink_pill.super_od || ($currentTasks.hasOwnProperty('event_doctor_first_appointment') && $currentTasks.event_doctor_first_appointment.finished)>>
<<changeHorny 20>>
<<applyStress -30>>
<<applyFatigue -30>>
<<set $scene.breastGrowth = $player.body.breastsize[0] < 6>>
<<if $scene.breastGrowth>>
<<set $player.body.breastsize[1] = 6>>
<</if>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<<set $scene.hairChange = $player.hair.style != 'long_open' || $player.hair.color != 'blonde'>>
<<if !$player.sec_style.body.hair>>
<<set $player.sec_style.body.hair = "enthusiast">>
<</if>>
<<changeHair 'long_open' 'blonde'>>
<<reduceExperience 'smart' 1>>
<<if !setup.hasTmpEffect('sissypill_mk2_od')>>
<<setTmpEffect 'sissypill_mk2_od'>>
<</if>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'skip' $ALONE>>
<<set $player.flags.pink_pill.times_od2 += 1>>
<<if !setup.hasThreshold('bimbofication', 'drug_bimbofication', 'od_mk2')>>
<<setThreshold 'bimbofication' 'drug_bimbofication' 'od_mk2'>>
<</if>>
<<set $scene.cureWithdrawl = setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $scene.cureWithdrawl>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<<applyFatigue -50>>
<</if>>
<<elseif $player.flags.pink_pill.times_od1 < 5>>
<<set _odStyle = "voluntary">>
<<include "pinkPillmk1odUnlocks">>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<if $now.getUTCDay() == 2>>
<<set $scene.day = "tonight">>
<<else>>
<<set $scene.day = "on Tuesday">>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 2, 18, 0)>>
<<addTaskById 'event_doctor_first_appointment' _nextDate>>
<</if>>
<<case 'refuse'>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.drug_action>>
<<case 'one'>>
You obediently take one of the offered pills.<br>
<br>
<<if $player.flags.pink_pill.super_od || ($currentTasks.hasOwnProperty('event_doctor_first_appointment') && $currentTasks.event_doctor_first_appointment.finished)>>
You swallow the pill and gasp as the potent personalised pharmaceuticals course through your veins. <<if $scene.breastGrowth>>You feel your breasts grow <<if $scene.cureWithdrawl>>as the painful feelings of withdrawal fade in favour of happy pinkness<<else>>and smile, feeling relaxed and happy<</if>><<else>><<if $scene.cureWithdrawl>>You feel the painful feelings of withdrawal fade in favour of happy pinkness<<else>>You smile, feeling relaxed and happy<</if>><</if>>.
<<else>>
<<if $player.flags.pink_pill.times_od1 < 1>>
<<if $scene.cureWithdrawl>>
You swallow the pill and sigh with relief, the hangover-like fog fading to be replace by a pink cloud of horny happiness.
<<else>>
You swallow the pill, feeling the familiar pink cloud of horny happiness pass over you.
<</if>>
<<if $scene.breasts && $scene.hairChange>>
The momentary relief turns to a gasp as you feel your body change, <<if $scene.breasts>>sprouting breasts<<else>>your breasts swelling even larger<</if>> as blonde hair cascades down from your head.
<<elseif $scene.breasts>>
The momentary relief turns to a gasp as you feel your body change, <<if $scene.breasts>>breasts sprouting from your chest<<else>>your breasts swelling even larger<</if>> to compliment your long, bimbo-blonde hair.
<<elseif $scene.hairChange>>
The momentary relief turns to a gasp as you feel your body change, blonde hair cascading down from your head to match your already large breasts.
<</if>>
<<else>>
Unfortunately, your prior abuse means that you feel nothing, though at least you fulfilled your work requirement.
<</if>>
<</if>>
<br><br>
<<if $scene.breasts && $scene.hairChange>>
<<=setup.getNpcName("npc_manager","formal")>> sniffs in amusement at your changes. "@@.npc_manager;Well! That is certainly one way to go about things. It is a bit much for my taste... but I cannot deny that the look is good on you. Remember to see me after work if you get low — keeping up with your meds is both of our responsibilities.@@"
<<else>>
"@@.npc_manager;There, that was not so hard, was it? Remember to see me after work if you get low — keeping up with your meds is both of our responsibilities.@@"
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> dismisses you back to your desk to begin your day.
<br><br>
<<if $player.flags.pink_pill.times_od1 >= 1 && !($player.flags.pink_pill.super_od || ($currentTasks.hasOwnProperty('event_doctor_first_appointment') && $currentTasks.event_doctor_first_appointment.finished))>>
[<<moveTo "event_manager_daily_check_drugs_2_nowork" "Complain that you don't feel anything..." 180>>]<br>
<<if $npc_manager.stage == 3 && $player.work.advance > 0>>
[<<moveTo 'event_maintenance_spanking_1_postdrug' "Get dressed and start working." 60>>]
<<else>>
[<<moveTo $scene.inspectionReturn "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<<else>>
<<if $npc_manager.stage == 3 && $player.work.advance > 0>>
"@@.npc_manager;So, now that that failure has been addressed... it is time for your morning spanking!@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<include "stage3AdvanceSpanking">>
<<else>>
[<<moveTo $scene.inspectionReturn "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<</if>>
<<case 'many'>>
You grab a handful of pills and chomp them down before <<=setup.getNpcName("npc_manager","formal")>> can stop you.
<<if ($player.flags.pink_pill.times_od1 > 5 || !State.hasPlayed("event_pink_pill_strict_4")) && !$currentTasks.hasOwnProperty('event_doctor_first_appointment')>>
Her eyes open wide and you freeze for a moment before you forcibly expel everything... a regurgitation that <<=setup.getNpcName("npc_manager","formal")>> somehow nimbly dodges.<br>
<br>
"@@.npc_manager;Oh. Oh my.@@" She shakes her head. "@@.npc_manager;What have you been doing my dear? For user safety all drugs manufactured by Social Interaction Service Syndicate Inc. are designed to trigger the body's gag reflex if they are taken in dangerous excess — from what I just saw it would appear you have crossed that threshold... which means that I must now refer you back to <<=setup.getNpcName("npc_work_doctor","formal")>> for a more personalised prescription to, in <<his npc_work_doctor>> words, "help with your recovery,"@@" she sighs and shakes her head, clearly not believing <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> description, but constrained by corporate policy from doing any different.<<if $currentTasks.hasOwnProperty('event_doctor_first_appointment')>>
<br><br>
"@@.npc_manager;I scheduled you to meet <<=setup.getNpcName("npc_work_doctor","formal")>> <<=$scene.day>>, after work. <<He npc_work_doctor>> will take things from here...@@" She forces a smile. "@@.npc_manager;I believe that covers the inspection, you may return to your desk.@@"
<</if>>
<<else>>
You shudder as the drugs hit your system, washing away everything in favour of a pink cloud of pleasure<<if $scene.breastGrowth || $scene.hairChange>> as your body morphs into a more "bimboriffic" ideal form<</if>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;You foolish, foolish thing. This sort of behaviour is very much improper, both for its disobedience, and for the risk that it will negatively impact your efficiency in the execution of your duties as my <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
She sighs. "@@.npc_manager;Unfortunately, there is nothing for it now — save for you to return to your duties, and do try to focus?@@"<br>
<br>
You smile, the urge to be obedient almost as strong as your arousal.<br>
<br>
<<printThought 'Yes, <<=setup.getNpcName("npc_manager","title")>>.'>><br>
<br>
You curtsy.
<</if>>
<br><br>
<<if $npc_manager.stage == 3 &&$player.work.advance > 0>>
"@@.npc_manager;So, now that that failure has been addressed... it is time for your morning spanking!@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<include "stage3AdvanceSpanking">>
<<else>>
[<<moveTo $scene.inspectionReturn "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<<case 'refuse'>>
You state that you don't like how the pills make you feel, could you please not take any?<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
She looks saddened as she shakes her head. "@@.npc_manager;I am sorry, but this mandate is not something that either of us can ignore, now come on — be a good girl and take your medicine.@@"
<<else>>
She frowns "@@.npc_manager;I am afraid that you will just need to get used to it, as they remain a mandatory part of your employment. Now be a good girl and take your medicine...@@"
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_drugs_1" "Take one pill and swallow it." 360 "<<set $scene.drug_action='one'>>">>]<br>
[<<moveTo "event_manager_daily_check_drugs_1" "Take and swallow a handful of pills." 360 "<<set $scene.drug_action='many'>>">>]<br>
[<<moveTo "event_manager_daily_check_drugs_2" "Continue to refuse to take any pills.">>]
<<default>>
ERROR: unexpected scene.drug_action <<=$scene.drug_action>>
<</switch>>
</div>/*#
#desc: given drugs when you forgot
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<set $npc_manager.criticalanger+=1>>
<<set $player.work.sendhome = true>>
<<set $player.work.sendhomedate = $now>>
<<include "endPartialShift">>
<<set _x = setup.addManagerEndlessTask()>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_37'
0
'theme_psychiatrist_drug_fired_1'
false
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You cross your arms and dig in your heels in refusal to take your "medicine." <br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks at you for a long moment and then screws the lid back onto the bottle with a frown.<br>
<br>
"@@.npc_manager;Well. If that is how it is going to be... unfortunately I am not permitted to assign you work unless you are properly medicated. As you refuse to take such medicine, well... I have no choice but to send you home.@@"<br>
<br>
She walks back around to her desk, dropping the bottle of pills into a drawer.<br>
<br>
<<if $npc_manager.criticalanger >= 5>>
"@@.npc_manager;Normally this would be the end of things between you and me, your number of severe errors quite sufficient to justify the termination of your contract...@@"<br>
<br>
She smiles in a way that is not quite as comforting as you think she intends it to be. "@@.npc_manager;I would not wish to scuttle our relationship over a matter such as this... so I will give you another chance. Go home, straighten yourself out, but know that any other error will mark the end of things.@@"
<<else>>
"@@.npc_manager;I will note that this is your <<printNumber $npc_manager.criticalanger>> offense. Reaching five will, I am afraid, be grounds for immediate termination... of your contract.@@"
<</if>>
<br><br>
<<printThought "Dammit, I guess that's it for today...">><br>
<br>
[<<moveTo "company_lobby" "Get dressed and leave." 600 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: showed up with no cage after key rights revoked
#status: RELEASED 0.7.12.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include inspectionData_chastity>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<set $npc_manager.trigger.forgotten_cage += 1>>
<<set $player.timebased.horny = 0>>
<<set $npc_manager.flags.hascagekey = true>>
<<if $npc_manager.trigger.forgotten_cage >= 2 && $player.body.penissize[0] > 3>>
<<set $npc_manager.trigger.forgotten_cage = 3>>
<</if>>
<<if !$player.body_ref.balls || $player.body_ref.vagina>>
<<set $player.flags.chastity_style = "belt">>
<</if>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<if !setup.checkItemOwned($scene.newcage)>>
<<addItem $scene.newcage>>
<<elseif !setup.checkItemInInventory($scene.newcage)>>
<<wardrobeToItem $scene.newcage>>
<</if>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<<set $scene.gaveKey=true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;I do not know how you managed to get out of your chastity device without a key, but such is a grave error that must be addressed IMMEDIATELY.@@" She shakes her head as she retrieves a small box and what looks like a freezer pack from behind her desk. "@@.npc_manager;I cannot fathom the amount of progress that you may have lost through this unconscionable error. But we will begin addressing it now.@@"<br>
<br>
If fear was insufficient, the ice pack does the rest in shrinking you down and you glance nervously as she unwraps an intimidating steel chastity device.<br>
<br>
<<if $player.flags.chastity_style=='cage'>>
"@@.npc_manager;This lovely device is almost perfect for keeping the most... recalcitrant <<if $fetish.sissy>>sissies<<else>>girls<</if>> under control.@@" She states, nimbly threading you down the snug tube before locking it in place.
<<if $fetish.sounding>>
"@@.npc_manager;And now for the final cherry on top...@@" She adds before producing a narrow, gently curved rod. Greasing it with a thin lubricant she aligns it with the tip of the device and you are treated to the strange sensation of it sliding into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate as the sounding rod bottoms out inside of you and locks in place leaving you effectively imprisoned inside and out.
<</if>>
<<else>>
"@@.npc_manager;This wonderful contraption is almost perfect for keeping the most... recalcitrant <<if $fetish.sissy>>sissies<<else>>girls<</if>> under control.@@" She states.<br>
<br>
You nervously bite your lip as she wraps the sleek belt around your waist,
<<if $fetish.sounding>>
pausing before she brings the shield up between your legs as she pulls out a narrow, gently curved rod. Greasing it with a thin lubricant she holds you gingerly with one hand and gently slides it into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate and you gasp as the sounding rod bottoms out inside of you. Before you can react further, the front shield of the belt is locked in place, the sound somehow attached within leaving you impaled and completely contained.
<<else>>
adjusting the shield carefully to make sure nothing pinches as she has you locked completely away.
<</if>>
<</if>>
<br><br>
She waves a small fob over the device and you hear a sharp click before she dangles the fob in front of your face. "@@.npc_manager;Over a trillion, trillion combinations. That should fix you properly...@@"<br>
<br>
Still trying to adjust to the sensations of this new device, you stare back at her, but she only smiles. "@@.npc_manager;Oh, and, just so you know... it is also electrified if you ever think of hmm... misbehaving again.@@"<br>
<br>
Wide-eyed with fear you tremble as she steps away.<br>
<br>
"@@.npc_manager;There, now that that is all sorted... shall we continue?@@"<br>
<br>
Feeling the fresh imprisoning weight <<if setup.isCage()>>dangling between your legs<<else>>hugging your hips<</if>> you can only nod meekly. The fact that she has not disciplined you is almost disconcerting, though perhaps the <<if setup.isCage()>>cage<<else>>belt<</if>> is punishment enough...<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300>>]
</div>/*#
#desc: tell her drugs don't work
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() == 2>>
<<set $scene.day = "tonight">>
<<else>>
<<set $scene.day = "on Tuesday">>
<</if>>
<<if !$currentTasks.hasOwnProperty('event_doctor_reup')>>
<<set _nextDate = setup.getNextDayOfWeek($now, 2, 18, 0)>>
<<addTaskById 'event_doctor_first_appointment' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You take the pill, but then explain that you don't feel anything.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> pauses and then sighs. "@@.npc_manager;<<=setup.getNpcName("npc_work_doctor","formal")>> warned me about this... though I have the feeling it was <<his npc_work_doctor>> plan all along. Like all drugs abusing these little pills can cause the body to build up tolerance...@@" She shakes her head. "@@.npc_manager;Unfortunately the instructions for this eventuality are quite clear. I have scheduled you for an appointment with <<=setup.getNpcName("npc_work_doctor","formal")>> so that <<he npc_work_doctor>> may prescribe you a more... personalised dosage to address the after-effects of your abuse.@@"<br>
<br>
<<if $npc_manager.stage == 3 &&$player.work.advance > 0>>
"@@.npc_manager;So, now that that failure has been addressed... it is time for your morning spanking!@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<include "stage3AdvanceSpanking">>
<<else>>
She takes a deep breath and forces a smile. "@@.npc_manager;That will be all for today's inspection — you may dress and return to your desk.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
</div>/*#
#desc: tell her drugs didn't work
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() == 2>>
<<set $scene.day = "tonight">>
<<else>>
<<set $scene.day = "on Tuesday">>
<</if>>
<<set $scene.addTask = !$currentTasks.hasOwnProperty('event_doctor_reup')>>
<<if $scene.addTask>>
<<set _nextDate = setup.getNextDayOfWeek($now, 2, 18, 0)>>
<<addTaskById 'event_doctor_first_appointment' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You insist that you took the pill, but that it didn't do anything!<br>
<br>
She stares at you for a moment, not looking at the scanner, but deep into your eyes before sniffing and
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
nodding. "@@.npc_manager;Yes, I see the lingering effects... quite unfortunate for you... though at least you did not attempt to overdose merely to refresh things... <<if $scene.addTask>>I shall schedule you a visit<<else>>you shall have to wait for your appointment<</if>> with <<=setup.getNpcName("npc_work_doctor","formal")>> to resolve this issue. Meet him after work <<=$scene.day>> at his lab on floor 121.@@"
<<else>>
shaking her head. "@@.npc_manager;Well I see no sign of such, nevertheless, you will need to meet with <<=setup.getNpcName("npc_work_doctor","formal")>> to resolve things. <<if $scene.addTask>>I shall schedule you a visit<<else>>you shall have to wait for your appointment<</if>> with <<=setup.getNpcName("npc_work_doctor","formal")>>. Meet him after work <<=$scene.day>> at his lab on floor 121.@@"
<</if>>
<br><br>
<<if $npc_manager.stage == 3 &&$player.work.advance > 0>>
"@@.npc_manager;So, now that that failure has been addressed... it is time for your morning spanking!@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<include "stage3AdvanceSpanking">>
<<else>>
She takes a deep breath and forces a smile. "@@.npc_manager;That will be all for today's inspection — you may dress and return to your desk.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
</div>/*#
#desc: manager notices changed genitals
#status: FINISHED 0.7.12.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.horny = 20>>
<<addItem 'chastity_belt_adv_ultra'>>
<<wearItem 'chastity_belt_adv_ultra' true>>
<<manipulateItem 'chastity_belt_adv_ultra' "lock" true>>
<<set $npc_manager.flags.took_adv_key = true>>
<<set $scene.forgot_cage_key = false>>
<<set $npc_manager.flags.knowAdvanced = true>>
<<include "setLastSeenCage">>
<<set $scene.differentCage = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reply that you would rather be locked by her, not the company, and retain some small semblance of control.<br>
<br>
She nods while circling around her desk. She unlocks a drawer and pulls out a medium sized box, unpacking an ice-pack and a magnificently high-tech chastity belt
<<if $scene.cage == "chastity_belt_adv" || $scene.cage == "chastity_belt_adv_ultra">>
reminiscent of the one you were wearing.
<<elseif $scene.cage == "c_cage_advanced">>
reminiscent of the cage you had been wearing.
<<elseif setup.checkItemOwned('chastity_belt_adv')>>
reminiscent of the high tech <<=setup.getItemName('chastity_belt_adv')>> device.
<<elseif setup.checkItemOwned('chastity_belt_adv_ultra')>>
reminiscent of the high tech <<=setup.getItemName('chastity_belt_adv_ultra')>> device.
<<elseif setup.checkItemOwned('c_cage_advanced')>>
reminiscent of the high tech <<=setup.getItemName('c_cage_advanced')>> device, but in belt form.
<<else>>
unlike any other you have ever seen for sale.
<</if>>
<br><br>
She wipes things off and cools you down before presenting you with the belt, aiding you in sliding your <<getWordMyPenis false>> into its new confines before securing the slightly sculpted front shield in place and locking it all snugly around your waist.<br>
<br>
"@@.npc_manager;There we go.@@" She states with a smile as she raps her knuckles against the front of your new device. You do not feel a thing, well, not physically, but emotionally... you tremble slightly and she smiles wider, caressing your cheek and looking down at you in a loving manner. "@@.npc_manager;There, there. Rules are rules, and you should be proud to be valued such as to be so perfectly secured. My <<if $fetish.sissy>>SISSI<<else>>sweet<</if>> treasure...@@"<br>
<br>
You blush.<br>
<br>
<<if $npc_manager.stage >= 4>>
"@@.npc_manager;Now that that is out of the way — pun intended, well... let us start this inspection over from the top, hmm?@@"<br>
<br>
[<<moveTo $scene.cleaningReturn "Put your clothes back on and restart your inspection." 600 "<<useClothSetPop 'tmp'>>">>]
<<else>>
"@@.npc_manager;Now that that is out of the way — pun intended, well... we had better get through the rest of your inspection!@@"<br>
<br>
[<<moveTo $scene.cleaningReturn "Put your underthings back on and proceed to inspection." 600 "<<useClothSetPop 'tmp'>><<removeEverythingButUnderwear>>">>]
<</if>>
</div><<set _addTask = !$currentTasks.hasOwnProperty('aslut_1_final')>>
<<if _addTask>>
<<addTaskById "aslut_1_final">>
<</if>>
<<set $scene.aslut1 = $player.flags.uniform_upgrade.aslutStage < 4 && setup.checkTaskUntimedComplete('aslut_1_final')>>
<<if _addTask>>
<<deleteTask "aslut_1_final">>
<</if>><<set $scene.wearingGasMask = setup.checkItemTypeTag('hood', ['gasmask'])>>
<<if $scene.wearingGasMask>>
<<set $scene.gasMask = setup.getItemFromType("hood")>>
<<removeItem $scene.gasMask true>>
<</if>><<if $scene.wearingGasMask>>
"@@.npc_manager;The air quality that bad this morning?@@" She shakes her head as she looks at your gas mask. "@@.npc_manager;Well, no matter — but you need to take it off. You work in a representative position, and part of that is that I want to see, and show off, your lovely, smiling face!@@"<br>
<br>
<</if>><<set $scene.clothingModifiers = setup.calcProstitutionModifiers()>>
<<set $scene.normalPassed = setup.checkOutsideDecency() && $player.flags.bimbo_work.unlock &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity') || $currentTasks.manager_morning_inspection_task.trigger.chastity.condition) &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key') || $currentTasks.manager_morning_inspection_task.trigger.chastity_key.condition) &&
$currentTasks.manager_morning_inspection_task.trigger.clothesClean.condition &&
$currentTasks.manager_morning_inspection_task.trigger.clothesUnderwear.condition &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('heels') || $currentTasks.manager_morning_inspection_task.trigger.heels.condition) &&
["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", 'sissy_doll', 'qtpie'].includes(setup.getCurrentMakeup()) && $player.makeup.messed < 25 &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') || $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition) &&
$currentTasks.manager_morning_inspection_task.trigger.playerClean.condition &&
$currentTasks.manager_morning_inspection_task.trigger.plug.condition &&
["office","kinky_office"].includes($scene.clothingModifiers.attireType)>>
<<if $scene.normalPassed>>
<<set $currentTasks.manager_morning_inspection_task.condition="Complete">>
<<else>>
<<set $currentTasks.manager_morning_inspection_task.condition="Failed">>
<</if>>
<<set $currentTasks.manager_morning_inspection_task.finished=true>><<set $scene.clothingModifiers = setup.calcProstitutionModifiers()>>
<<set $scene.bimboPassed = $player.flags.bimbo_work.unlock &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity') || $currentTasks.manager_morning_inspection_task.trigger.chastity.condition) &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key') || $currentTasks.manager_morning_inspection_task.trigger.chastity_key.condition) &&
$currentTasks.manager_morning_inspection_task.trigger.clothesClean.condition &&
$currentTasks.manager_morning_inspection_task.trigger.clothesUnderwear.condition &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('heels') || $currentTasks.manager_morning_inspection_task.trigger.heels.condition) &&
$currentTasks.manager_morning_inspection_task.trigger.makeup.condition &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') || $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition) &&
$currentTasks.manager_morning_inspection_task.trigger.playerClean.condition &&
$currentTasks.manager_morning_inspection_task.trigger.plug.condition &&
["slutty", "kinky"].includes($scene.clothingModifiers.attireType)>>
<<if $scene.bimboPassed>>
<<set $currentTasks.manager_morning_inspection_task.condition="Complete">>
<<else>>
<<set $currentTasks.manager_morning_inspection_task.condition="Failed">>
<</if>>
<<set $currentTasks.manager_morning_inspection_task.finished=true>><<set $scene.clothingModifiers = setup.calcProstitutionModifiers()>>
<<set $scene.formalPassed =
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity') || $currentTasks.manager_morning_inspection_task.trigger.chastity.condition) &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key') || $currentTasks.manager_morning_inspection_task.trigger.chastity_key.condition) &&
$currentTasks.manager_morning_inspection_task.trigger.clothesClean.condition &&
$currentTasks.manager_morning_inspection_task.trigger.clothesUnderwear.condition &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('heels') || $currentTasks.manager_morning_inspection_task.trigger.heels.condition) &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('makeup') || $currentTasks.manager_morning_inspection_task.trigger.makeup.condition) &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') || $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition) &&
$currentTasks.manager_morning_inspection_task.trigger.playerClean.condition &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('plug') || $currentTasks.manager_morning_inspection_task.trigger.plug.condition) &&
$scene.clothes == "female_formal">>
<<if $scene.formalPassed>>
<<set $currentTasks.manager_morning_inspection_task.condition="Complete">>
<<else>>
<<set $currentTasks.manager_morning_inspection_task.condition="Failed">>
<</if>>
<<set $currentTasks.manager_morning_inspection_task.finished=true>><<set $scene.nearOfficePassed = $scene.nearOffice &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity') || $currentTasks.manager_morning_inspection_task.trigger.chastity.condition) &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key') || $currentTasks.manager_morning_inspection_task.trigger.chastity_key.condition) &&
$currentTasks.manager_morning_inspection_task.trigger.clothesClean.condition &&
$currentTasks.manager_morning_inspection_task.trigger.clothesUnderwear.condition &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('heels') || $currentTasks.manager_morning_inspection_task.trigger.heels.condition) &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('makeup') ||
$currentTasks.manager_morning_inspection_task.trigger.makeup.condition) &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') || $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition) &&
$currentTasks.manager_morning_inspection_task.trigger.playerClean.condition &&
(!$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('plug') || $currentTasks.manager_morning_inspection_task.trigger.plug.condition) &&
($scene.clothes == "female_office" || !$npc_manager.stagevalues[2].femalesecretary && $scene.clothes == "unisex_female")>>
<<if $scene.formalPassed>>
<<set $currentTasks.manager_morning_inspection_task.condition="Complete">>
<<else>>
<<set $currentTasks.manager_morning_inspection_task.condition="Failed">>
<</if>>
<<set $currentTasks.manager_morning_inspection_task.finished=true>>/*#
#desc: caught lockpicked out of cage
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> brow furrows as she stares at your crotch, and then traces up your body to look you in the eye. "@@.npc_manager;I am quite certain that you went home properly locked... <<if $scene.prevTrust>>and you having left the key so delightfully in my possession<<else>>and with the key in my possession<</if>>. Yet here you stand, utterly unprotected... explain. Now.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2" "Lie and say it just slipped off..." 180 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2" "Tell her you unlocked yourself..." 180 "<<set $scene.lie=false>>">>]
</div>/*#
#desc: confess lockpicked out of cage
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie>>
<<incrementEmotion 'anger' 'npc_manager' 4>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<if $scene.home>>
<<set $player.location to "Wardrobe">>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.home>>
<<createAdvBGR "./images/locations/flat_wardrobe.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
You nervously lie and state that your chastity <<if $player.flags.chastity_style>>belt<<else>>cage<</if>> just... fell off somehow.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows further as she stares you down. "@@.npc_manager;Fell off... that somewhat strains credulity... but, if that is the case, well... there is only one solution: a more secure device, less likely to suffer from such a dangerous failure.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_3" "Continue." 180>>]
<<else>>
You explain that you lock-picked your way out of chastity and <<=ps(setup.getNpcName("npc_manager","formal"))>> frown deepens.<br>
<br>
"@@.npc_manager;Lock-picking... do you not understand that chastity is for you own good? It would seem that you could do with a lesson as to just why such a device is a necessity for one of your position.@@"<br>
<br>
As she speaks <<=setup.getNpcName("npc_manager","formal")>> moves closer, too close, as your reflexive steps backward have you almost stumbling before bumping into an unyielding wall. In a flash she has your hands pinned above your head, fingers wrapped around your wrists with a grip like steel.<br>
<br>
You feel like an insect pinned in place as she looks you in the eye, her other hand reaching down between your legs to
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
finger your wetness, using your excited oozing as lubricant as she follows up by stroking
<<else>>
wrap around
<</if>>
your hard <<getWordMyPenis>>.
<<else>>
finger your wetness.
<</if>>
You gasp, she grins, and continues playing with you as you squirm. "@@.npc_manager;Look at yourself — barely a touch and already you are in no condition to work. Distracted and moaning... helplessly whimpering... useless for anything other than writhing and looking cute...@@"<br>
<br>
You moan, twisting your hips and biting your lip in need as she continues to tease. You're so, so close, but with every touch she keeps you on the edge, toying with you in complete control.<br>
<br>
"@@.npc_manager;Feel how much you want release... but naughty <<if $fetish.sissy>>sissies<<else>>girls<</if>> like you do not deserve that. No, you need to learn your lesson, that you cannot be trusted with such responsibility — that you are better off locked and safe, clear to focus on your duties, to prioritise service over personal indulgence... right?@@"<br>
<br>
You struggle to form thoughts, much less words, your feet barely even touching the floor as you wriggle in <<=ps(setup.getNpcName("npc_manager","formal"))>> grasp, her one hand holding you up by the wrists firm and unyielding, in total contrast to the ever so delicate teasing of her fingers between your legs.<br>
<br>
"@@.npc_manager;Is this getting to be too much? Hmm? Well you know what to do, what you need. All you have to do is beg for your chastity back and I will give you the relief you desire...@@"<br>
<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2a" "Beg." 180 "<<set $scene.action='beg'>>">>]<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2a" "No..." 180 "<<set $scene.action='no'>>">>]<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2a" "Remain silent." 180 "<<set $scene.action='silent'>>">>]<br>
<</if>>
</div>/*#
#desc: beg for relief for lockpick punishment
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'beg'>>
<<applyExperience 'submission' 12 'terrible' $SEEN_FRIEND>>
<<case 'no'>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<applyExperience 'bdsm' 12 'terrible' $SEEN_FRIEND>>
<<case 'silent'>>
<<applyStress 10>>
<</switch>>
<</if>>
<<if $scene.home>>
<<set $player.location to "Wardrobe">>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.home>>
<<createAdvBGR "./images/locations/flat_wardrobe.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'beg'>>
Your voice is strained and breathless as you beg "@@.pc;please, <<=setup.getNpcName("npc_manager","title")>>, lock me back in my <<if $player.flags.chastity_style>>cage<<else>>chastity belt<</if>>...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, her fingers making a final stroke
<<if $player.body_ref.penis>>
the length of your
<<else>>
between your folds
<</if>>
before she pulls away, the orgasm delayed several agonising seconds before your thighs clench and you cum in a way as agonising as it is unsatisfying, the stymied "pleasure" causing you to cry out in anguish as she holds you up, your body trembling with each wave of unfulfilled need before your heightened state slowly dissipates.
<<case 'no'>>
Your voice is strained and breathless as you somehow gather the will to whisper "@@.pc;No...@@"<br>
<br>
Your punishment is as swift as it is cruel — tender touch that had been agonisingly pleasurable suddenly changing to pain as <<=setup.getNpcName("npc_manager","formal")>> digs her fingernails across your most sensitive flesh with the same pin-point skill with which she had moments before delicately caressed.<br>
<br>
You cry out, whimpering in pain as she cuts away all of the built-up pleasure you had been feeling, torturous heights of pleasure replaced with the deepest depths of agony — made all the worse by the swift transition between the opposed polar states.
<<case 'silent'>>
You hold your tongue, panting with need as you twist within <<=ps(setup.getNpcName("npc_manager","formal"))>> grasp.<br>
<br>
She teases you for a few moments longer, as if to give you a final opportunity to repent before she sighs, fingernails digging into your flesh to deflate your edge-of-orgasm ecstasy into whimpering pain in mere moments.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> releases her hold on your wrists and you almost crumple to the floor, only remaining standing with the aid of the solid wall at your back as she <<if $scene.home>>takes a step back<<else>>walks towards her desk<</if>>. "@@.npc_manager;I hope that little demonstration gave you better insight into why, exactly, you need to be locked up. Your work responsibilities must come first — a bit of mechanical control is the least I can offer to aid you in such adherence.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_3" "Catch your breath." 180>>]
</div>/*#
#desc: upgraded after lockpicked out of cage
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.home>>
<<include inspectionData_chastity>>
<<set $scene.prevTrust = $npc_manager.flags.trustplayerwithkey>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<<set $scene.gaveKey=true>>
<</if>>
<<include "chastityUpgrader">>
<<set $scene.managerHadKey = $npc_manager.flags.hascagekey>>
<<set $npc_manager.flags.hascagekey = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<if $scene.lie>>
<<incrementEmotion 'anger' 'npc_manager' 4>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set $npc_manager.flags.lockpick_caught = true>>
<<include "setLastSeenCage">>
<<set $scene.differentCage = false>>
<</if>>
<<if $scene.home>>
<<set $player.location to "Wardrobe">>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.home>>
<<createAdvBGR "./images/locations/flat_wardrobe.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.home>>
Reaching into her purse <<=setup.getNpcName("npc_manager","formal")>> pulls out an ominous package. "@@.npc_manager;It is lucky for you that I always come prepared — doubly so since I will not just be replacing, but upgrading, so such a woeful security failure is less likely to happen in the future.@@"
<<else>>
Reaching beneath her desk, <<=setup.getNpcName("npc_manager","formal")>> pulls out an ominous package. She stalks towards you as you find yourself frozen in place, unable to do anything but stand helplessly as she peels open the package to reveal your new device.
<</if>>
<br><br>
<<include "chastityUpgradeDescription">>
<br><br>
<<if $scene.home>>
"@@.npc_manager;Now, shall we return to the dining room for dinner, it should be ready by now.@@"<br>
<br>
You wince and nod nervously, the weight of your new device reminding you of its presence with every step.<br>
<br>
[<<moveTo "event_manager_visit_tour_5" "Follow." 300>>]
<<else>>
"@@.npc_manager;Let us hope that proves <<if $scene.lie>>less prone to... failure<<else>>more secure against any improper meddling.<</if>> And now, with your properly equipped for your duties, let us wrap up this inspection before wasting even more time that could be devoted to work.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300>>]
<</if>>
</div><<if setup.checkItemTypeWorn("cage")>>
<<set $npc_manager.flags.lastCage = setup.getItemFromType("cage")>>
<<if setup.getChastityLevel() == 5>>
<<if $npc_manager.flags.lastCage.endsWith("_jumbo")>>
<<set $npc_manager.flags.lastCage = $npc_manager.flags.lastCage.slice(0,-6)>>
<<elseif $npc_manager.flags.lastCage.endsWith("_med")>>
<<set $npc_manager.flags.lastCage = $npc_manager.flags.lastCage.slice(0,-4)>>
<</if>>
<</if>>
<<else>>
<<set $npc_manager.flags.lastCage = "">>
<</if>>/*#
#desc: manager notices wrong chastity
#status: FINISHED 0.8.4.0
#ignore_spell: scaroused
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.playerstayedinchastity>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<else>>
<<set $scene.lastChastityLvl = setup.getItemObj($npc_manager.flags.lastCage).chastityLvl>>
<<if $scene.lastChastityLvl > setup.getChastityLevel()>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<elseif $scene.lastChastityLvl < setup.getChastityLevel()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $scene.differentCage = false>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.trusted = $npc_manager.flags.trustplayerwithkey>>
<<set $scene.hasKey = setup.checkItemInInventory(_keyId) || !$scene.forgot_cage_key && !(setup.getChastityLevel() == 4 && $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished)>>
<<if setup.getChastityLevel() == 4 && $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = false>>
<<elseif !$npc_manager.flags.took_adv_key && $currentTasks.hasOwnProperty("task_chastity_trial") && $currentTasks['task_chastity_trial'].finished>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<</if>>
<<if setup.checkItemOwned(_keyId)>>
<<deleteItem _keyId>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> squints at your chastity device.
<<if $scene.trusted && $npc_manager.flags.playerstayedinchastity || !$scene.trusted>>
"@@.npc_manager;I do not believe that is the device I last saw you locked in... this is particularly surprising given that I still have the key to said device. Tell me... what, exactly happened to bring this situation about?@@"<br>
<br>
[<<moveTo "event_wrong_chastity_2" "Lie and say it just slipped off, but that you replaced things, so it's fine, right?" 180 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_wrong_chastity_2" "Tell her you unlocked yourself to change things up." 180 "<<set $scene.lie=false>>">>]
<<else>>
"@@.npc_manager;I do not believe that is the device I last saw you locked in... I suppose that is technically meeting requirements, given that you were entrusted with possession of the key.@@"<br>
<br>
<<if $scene.lastChastityLvl > setup.getChastityLevel()>>
"@@.npc_manager;Of course the fact that this is less secure than what you previously wore... well, that is of some concern... but, as I said, you have technically met requirements, so I suppose I must allow it.@@"
<<elseif $scene.lastChastityLvl < setup.getChastityLevel()>>
"@@.npc_manager;The fact that you have upgraded from your prior model... yes, I quite approve of that initiative.@@"
<<else>>
"@@.npc_manager;You even managed to maintain similar security to your previous device, so I really cannot raise any complaints.@@"
<</if>>
<br><br>
<<if $scene.hasKey>>
"@@.npc_manager;Rules remain, of course, rules, however, so I shall be taking that key.@@" You nod and hand over the key as instructed.
<<elseif $scene.trusted>>
"@@.npc_manager;Rules remain, of course, rules, however, so I shall be taking that key.@@"<br>
<br>
<<if setup.getChastityLevel() == 4 && $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
You explain that your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> is locked on as part of a product trial, and that you will not be getting the key back until the conclusion of such.<br>
<br>
She appears conflicted before slowly smiling. "@@.npc_manager;Permanently locked? Well... for the duration of that trial... beautiful. I would have hoped for you to have done such by surrendering control to myself but... well, perhaps once the trial is concluded? That restrictive loss of control can prove quite... addictive to <<if $fetish.sissy>>sissies<<else>>someone<</if>> like yourself.@@"<br>
<br>
You shiver slightly. <<printThought "Locked permanently under her control? Why does that have me so scaroused?">>
<<else>>
You confess that you had not brought it with you and she frowns.<br>
<br>
"@@.npc_manager;I see... well, in that case, bring it with you tomorrow. Remember that these rules exist for YOUR safety and productivity.@@"
<</if>>
<<else>>
"@@.npc_manager;Rules remain, of course, rules, however, and given that you have proven yourself not to be trusted with keys...@@" <<if setup.getChastityLevel() <= 2>>She retrieves a tool from her desk and jams it into the lock of your chastity device. You hear a strange grinding for a few moments before she pulls the device away, your chastity seemingly intact.<<else>>She pulls out some sort of remote and takes a moment waving it over your device.<</if>><br>
<br>
"@@.npc_manager;There, re-keyed for security.@@"
<</if>>
<br><br>
<<if setup.getChastityLevel() == 4 && $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished && $player.flags.tblock == "" && !State.hasPlayed("event_tblock_money_work_1")>>
You finish explaining the situation with your chastity trial and <<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;I see, well that is certainly an interesting program, and I wish you luck only... well I worry that such long-term security, without any potential relief... I fear it could represent a distraction from your duties. I would be willing to offer you a salary increase of, say, fifty credits a week, if you would submit to going on testosterone inhibitors. They should take the hard edge off your mood, reduce the influence of that distracting hormone...@@"<br>
<br>
<<printThought "Testosterone inhibitors! What?! Then again... 50 credits is quite a bit, would make it a lot easier to make rent on my own...">><br>
<br>
[<<moveTo "event_tblock_money_work_1" "You do like money..." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_tblock_money_work_1" "Decline her offer." 180 "<<set $scene.accept=false>>">>]
<<else>>
You wait for her to say anything else, but she merely continues on with your inspection.<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300 '<<include "setLastSeenCage">>'>>]
<</if>>
<</if>>
</div>/*#
#desc: respond to wrong chastity when locked
#status: RELEASED 0.8.4.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.lastChastityLvl = setup.getItemObj($npc_manager.flags.lastCage).chastityLvl>>
<<if $scene.lie>>
<<if $scene.lastChastityLvl > setup.getChastityLevel()>>
<<incrementEmotion 'anger' 'npc_manager' 4>>
<<elseif $scene.lastChastityLvl < setup.getChastityLevel()>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<else>>
<<if $scene.lastChastityLvl > setup.getChastityLevel()>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<elseif $scene.lastChastityLvl < setup.getChastityLevel()>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $scene.differentCage = false>>
<<set $scene.improperKey = false>>
<</if>>
<<if $scene.home>>
<<set $player.location to "Wardrobe">>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.home>>
<<createAdvBGR "./images/locations/flat_wardrobe.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
You nervously lie and state that your chastity <<if $player.flags.chastity_style>>belt<<else>>cage<</if>> just... fell off somehow.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows further as she stares you down.
<<if $scene.lastChastityLvl > setup.getChastityLevel()>>
<<if $scene.lastChastityLvl == 4>>
"@@.npc_manager;Fell off... that somewhat strains credulity given how secure your previous device was... no, there is really only one solution for this situation, come, you need to make a visit to Research and Development.@@" She snaps her fingers and you almost jump as a pair of guards walk into the room, taking you one on each arm and shuffling you out of her office...<br>
<br>
[<<moveTo "event_manager_broken_chastity_3" "Continue." 180>>]
<<else>>
"@@.npc_manager;Fell off... that somewhat strains credulity... and thinking you could make up for things with a far less secure device? No, no, this WILL not do.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_3" "Continue." 180>>]
<</if>>
<<else>>
<<if $scene.lastChastityLvl < setup.getChastityLevel()>>
<<if setup.getChastityLevel() == 4>>
You swiftly add that you sought to "address" the issue by enrolling in a trial of an even more secure chastity device.<br>
<br>
There is the faintest flicker of a smile as she gives a closer examination of your device. "@@.npc_manager;Yes... I thought I recognised that device as being new to market... now, in strict terms you have violated our agreement, quite severely, I might add... but I am willing to recognise that you only did such for the greater purpose of an even more secure existence. Until you finish the trial I will count you being on such sufficient to count towards your bringing the key to work, and I will also be counting the days now until the end of your trial when the key, and thus you, can be rightfully placed back under my protective possession.@@"<br>
<br>
<<printThought "I guess I avoided punishment... but at the cost of putting myself even more under her control...">>
<<else>>
"@@.npc_manager;Fell off... that somewhat strains credulity... though you appear to have replaced it with something significantly more secure... let us hope that it remains locked where it belongs. It does so hurt me to think that I might be failing as your keyholder.@@"
<</if>>
<<else>>
"@@.npc_manager;Fell off... that somewhat strains credulity... though I suppose I should give you some credit in that you seem to have found a replacement of equivalent security.@@"
<</if>>
<br><br>
It seems that you have threaded the needle in regards to punishment as she motions for you to continue on presenting yourself for inspection.<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue." 180 '<<include "setLastSeenCage">>'>>]
<</if>>
<<else>>
You explain that you lock-picked your way out of chastity and <<=ps(setup.getNpcName("npc_manager","formal"))>> frown deepens.<br>
<br>
<<if $scene.lastChastityLvl < setup.getChastityLevel()>>
"@@.npc_manager;Lock-picking... curious... because you seem to be in a more secure device now than when I left you... could it be that your act of rebellion was to serve a greater cause?@@"<br>
<br>
<<if setup.getChastityLevel() == 4>>
You nod quickly and explain that you only let yourself out to enrol in a "trial" of a new, even more advanced chastity device.<br>
<br>
There is the faintest flicker of a smile as she gives a closer examination of your device. "@@.npc_manager;Yes... I thought I recognised that device as being new to market... now, in strict terms you have violated our agreement, quite severely, I might add... but I am willing to recognise that you only did such for the greater purpose of an even more secure existence. Until you finish the trial I will count you being on such sufficient to count towards your bringing the key to work, and I will also be counting the days now until the end of your trial when the key, and thus you, can be rightfully placed back under my protective possession.@@"<br>
<br>
<<printThought "I thought I was just going to make a quick buck... now I'm in trouble?">>
<<else>>
You nod quickly and hold your breath as you wait for her verdict.<br>
<br>
"@@.npc_manager;Very well — since you are not technically in violation of requirements, and so long as you follow the rest of your rules, well... I see no reason not to reward you by allowing you to remain in this superior device. Well done, while I might quibble with your independent methods, I will also congratulate you on self-improvement. Now, let us resume the inspection.@@"
<</if>>
<br><br>
[<<moveTo $scene.inspectionReturn "Continue." 180 '<<include "setLastSeenCage">>'>>]
<<else>>
<<if $scene.lastChastityLvl > setup.getChastityLevel()>>
"@@.npc_manager;Lock-picking... do you not understand that chastity is for you own good? I see that you are wearing a replacement... but it is a significantly less secure model — and if you locked-picked once, well... the risk seems high that it might happen again. As your keyholder it is obvious that I am responsible to take action.@@"
<<set _continueChoice = true>>
<<elseif $scene.lastChastityLvl == 4>>
"@@.npc_manager;Fell off... that somewhat strains credulity given how secure your previous device was... no, there is really only one solution for this situation, come, you need to make a visit to Research and Development.@@" She snaps her fingers and you almost jump as a pair of guards walk into the room, taking you one on each arm and shuffling you out of her office...<br>
<br>
[<<moveTo "event_manager_broken_chastity_3" "Continue." 180>>]
<<elseif $scene.lastChastityLvl == 5 && setup.getChastityLevel() == 5>>
"@@.npc_manager;Lock-picking... well, I shall have to report that vulnerability to the engineering department. Quite improper for a device in its market segment. Still, you somehow secured yourself in a similar device... and I suppose that technically meets requirements. Let us continue on.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 180 '<<set $npc_manager.flags.lockpick_caught = true>><<include "setLastSeenCage">><<set $scene.differentCage = false>><<set $scene.directInspection=true>>'>>]
<<else>>
"@@.npc_manager;Lock-picking... do you not understand that chastity is for you own good? I see that you are wearing a replacement... but it seems no more secure than the previous device, and if you locked-picked once, well... the risk seems high that it might happen again. As your keyholder it is obvious that I am responsible to take action.@@"
<<set _continueChoice = true>>
<</if>>
<<if _continueChoice>>
<br><br>
[<<moveTo "event_manager_daily_check_unlocked_cage_3" "Continue." 180>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: manager notices collar
#status: RELEASED 0.8.8.0
#*/
<<=setup.getNpcName("npc_manager","formal")>> inspects your collar studiously, running her finger along
<<switch $player.flags.collar.collarId>>
<<case "corporate_collar">>
the steep, secure corporate branding.<br>
<br>
"@@.npc_manager;I see you have decided to submit fully to your job,@@" she states with a hint of sadness. "@@.npc_manager;Pity, I had once thought to someday claim you as my own... but I suppose now we are both married to our work, in one fashion or another.@@"
<<case "eternity_collar">>
the thin, nigh-seamless polished metal collar.<br>
<br>
"@@.npc_manager;A lovely piece... but I believe this is more than mere jewellery. Tell me, who has laid claim to my sweet <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"<br>
<br>
Though nervous, you proudly state that your <<boy npc_admin>>friend, <<=setup.getNpcName("npc_admin","first")>> offered you a collar, and you gladly accepted.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName("npc_admin","first")>>? As in <<=setup.getNpcName("npc_admin","formal")>>? My, my... I suppose the two of you did have history. And <<he npc_admin>> is quite the specimen...@@" you can sense disappointment in <<=ps(setup.getNpcName("npc_manager","formal"))>> voice as she pauses momentarily. "@@.npc_manager;Well I shall wish good luck to the both of you... perhaps send <<=setup.getNpcName("npc_admin","formal")>> a congratulatory fruit-basket... or maybe some steaks? Yes... as for you, well... so long as you remember your role while you are on the clock... well, your outside permission is between you and your <<Master npc_admin>>.@@"
<<case "collar_landlord">>
the hand-made collar.<br>
<br>
"@@.npc_manager;Gorgeous craftsmanship... tell me, who has laid claim to my sweet <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"<br>
<br>
Though nervous, you proudly state that your <<boy npc_admin>>friend, <<=setup.getNpcName("npc_landlord","first")>> offered you a collar, and you gladly accepted.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName("npc_landlord","first")>>? Hmm, we spend so much time together, I suppose I forget that you have a life outside the office.@@" You can sense disappointment in <<=ps(setup.getNpcName("npc_manager","formal"))>> voice as she pauses momentarily. "@@.npc_manager;Well I shall wish good luck to the both of you, so long as you remember your role while you are on the clock... well, your outside permission is between you and your <<Master npc_landlord>>.@@"
<<case "goth_collar">>
the elegant leather, silver and steel collar.<br>
<br>
"@@.npc_manager;Exquisite... a piece of art nearly as lovely as the one wearing it. Tell me, who has laid claim to my sweet <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"<br>
<br>
Though nervous, you proudly state that your <<=setup.getNpcName("npc_technician","title")>>, <<=setup.getNpcName("npc_technician","full")>> offered you a collar, and you gladly accepted.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName("npc_technician","other")>>?
<<if $npc_technician.relationship.keyholder>>
Yes, I suppose it was inevitable from the moment she claimed your key... such determination in that one!
<<elseif State.hasPlayed("event_technician_dom_lesson_1_1")>>
I suppose I should be proud that my lessons found such fertile ground.
<<elseif $npc_technician.flags.fixed_manager_computer >= 1>>
You mean that clever girl who fixed my computer? Hmm, I could sense something in her. Very interesting.
<<else>>
Hmm, the name sounds familiar, one of your old coworkers, I believe? I suppose history can count for quite a bit.
<</if>>
Well, I wish the two of you luck! I believe we both knew that you would eventually be collared by someone. Anything else would have been a waste of your blossoming submission...@@" she trails off and you sense a hint of disappointment that it is not her collar that you wear. "@@.npc_manager;So long as you remember your place. While you are on the clock, you are mine, beyond that, well... an employee's life outside work is their own. So long as it does not interfere with your duties, I wish you and <<=setup.getNpcName("npc_technician","formal")>> the most lovely of times.@@"
<<default>>
ERROR: unexpected player.flags.collar.collar Id <<=$player.flags.collar.collarId>>
<</switch>>
<br><br>
She steps away and you finally take a breath.<br>
<br>
"@@.npc_manager;Shall we continue on with your inspection?@@"/*#
#desc: failed to wear chastity be not required for genitals
#status: RELEASED 0.8.8.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.require_chastity = false>>
<<set $npc_manager.flags.lastCage = "">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> inspects your lack of chastity for several long, tense moments. "@@.npc_manager;Hmm... I believe I locked something here? Then again, it was locked over something a bit different than what you have now...@@" She nods. "@@.npc_manager;Well, as you are, now, I believe it is safe for you to go without chastity, so I shall no longer enforce such.@@"<br>
<br>
You let out your held breath.<br>
<br>
"@@.npc_manager;Let us resume.@@" She notes as she straights up to her full height.<br>
<br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300>>]
</div><<set $scene.at_office = true>>
<<switch $npc_manager.stage>>
<<case 1>>
<<moveTo "event_manager_daily_check_stage_1">>
<<case 2>>
<<moveTo "event_manager_daily_check_stage_2">>
<<case 3>>
<<moveTo "event_manager_daily_check_stage_3">>
<<case 4>>
<<moveTo "event_manager_daily_check_stage_4">>
<<case 5>>
<<if $npc_manager.flags.evil >= 2>>
<<moveTo "event_manager_daily_check_stage_5">>
<<else>>
<<moveTo "event_manager_daily_check_stage_5_evil">>
<</if>>
<<default>>
ERROR: unexpected stage npc_manager.stage <<=$npc_manager.stage>>
<</switch>><<switch $npc_manager.stage>>
<<case 1>>
<<moveTo "event_manager_daily_check_stage_1_finalize">>
<<case 2>>
<<moveTo "event_manager_daily_check_stage_2_finalize">>
<<case 3>>
<<moveTo "event_manager_daily_check_stage_3_finalize">>
<<case 4>>
<<moveTo "event_manager_daily_check_stage_4_finalize">>
<<case 5>>
<<moveTo "event_manager_daily_check_stage_5_finalize">>
<<default>>
ERROR: unexpected stage npc_manager.stage <<=$npc_manager.stage>>
<</switch>><<set $scene.workEventReturn='room_office_sissy_secretary_work_morning_start'>>
<<include "setLastSeenCage">>
<<set $player.work.sendhome = false>>
<<if $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
<<deleteItem _keyId>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<if !State.hasPlayed("event_work_stage4_chair_1")>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _cage = setup.getItemFromType("cage")>>
<<if !$inventory[_cage].status.lock>>
<<manipulateItem _cage "lock" true>>
<</if>>
<</if>>
<</if>>
<<if $npc_manager.stage >= 5>>
<<set $player.work.chair.bondage = true>>
<<set $player.work.chair.forcePlug = true>>
<<set $player.work.chair.forceGag = true>>
<</if>>
<<if setup.checkItemWorn("data_plug") && $currentTasks.hasOwnProperty("task_ai_human_mission_4") && !$currentTasks.task_ai_human_mission_4.finished && $now.getUTCDay() == 1 && ($npc_manager.stage < 5 || $npc_technician.flags.evil >= 2 && State.hasPlayed("event_ai_stage5_infiltrate_14"))>>
<<addEvent 'ai_robot_mission_home'>>
<</if>>
<<if $currentTasks.hasOwnProperty("hormones_checkin") && !$events.hasOwnProperty("hormones_checkin")>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 12, 29, false)>>
<<set _nextDate = setup.getNextDayOfWeek(_nextDate, random(1,4), 12, 29, true)>>
<<addEvent 'hormones_checkin' _nextDate>>
<</if>>/*#
#desc: manager notices you have key improperly
#status: RELEASED 0.9.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.improperKey = false>>
<<if $player.sec_style.submission.permanent_key>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> extends her hand.<br>
<br>
"@@.npc_manager;I believe you have something of mine, yes? While I will credit you for being locked in chastity... you had ALSO <<if ['strict','forced'].includes($player.sec_style.submission.permanent_key)>>are required<<else>>agreed<</if>> to leave the key to such with me<<if $player.sec_style.submission.permanent_key>>... permanently<</if>>.@@"<br>
<br>
<<printThought "How can she know what I'm wearing?">><br>
<br>
[<<moveTo "event_eroneous_key_2" "Lie and say you don't have the key." 180 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_eroneous_key_2" "Hand over the key and beg forgiveness." 180 "<<set $scene.lie=false>>">>]
</div>/*#
#desc: reply to manager noticing you having key improperly
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem _keyId>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
<<=setup.getNpcName("npc_manager","formal")>>
<<if setup.checkTmpClothSetWorn("daily_evaluation_clothes")>>
walks over to your clothes and, with startling speed, plucks the key from one of your pockets.
<<else>>
shows eerie precision as she reaches into one of your pockets and pulls out the key.
<</if>>
Her withering glare speaks more than words ever could as brandishes the key in front of you.
<<else>>
You
<<if setup.checkTmpClothSetWorn("daily_evaluation_clothes")>>
hurriedly dig through your clothes
<<else>>
reach into your pocket
<</if>>
and offer up the key sheepishly. <<=setup.getNpcName("npc_manager","formal")>> plucks it from your fingers with a smile. "@@.npc_manager;Yes, much better that I keep hold of this.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> steps away and looks back at you with her normal appraising partial smile. "@@.npc_manager;Now that things are back in possession of their proper owners... let us continue with the inspection.@@"<br>
<br>
[<<moveTo $scene.inspectionReturn "Continue." 180>>]
</div>/*#
#desc: stand in company lobby
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.work.sendhome>>
<<if !setup.compareDay($player.work.sendhomedate,$now)>>
<<set $player.work.sendhome = false>>
<</if>>
<</if>>
<<if $scene.from_hub>>
<<set $scene.from_hub = false>>
<<set $scene.from_outside = true>>
<<else>>
<<set $scene.from_outside = false>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<table>
<tr><td width="50%">
<<if setup.checkVisibleClothingTag('nun') > 70>>
You arrive at the office only for a guard to stop you right inside the door. "@@.generic_male1;Sorry, Sister, but company policy states that religious practice is not allowed on corporate property. I am going to have to ask you to leave.@@"<br>
<br>
<<printThought "On the one hand... this place probably needs it... on the other, well, I could imagine anything holy bursting into flames or vice versa spending time at this temple to greed.">>
<<elseif !setup.isWorkDay($now)>>
You enter the stupendous lobby of the headquarter of Social Interaction Service Syndicate Inc. At least that's what you try to do. But it is the weekend, and most access to the building is restricted.
<<set _nextdate = setup.checkTaskLocationTime('company_lobby')>>
<<if $currentTasks.hasOwnProperty("ai_robot_body_weekend_meeting") && !$currentTasks.ai_robot_body_weekend_meeting.finished && $now.getUTCDay() == 6 && (!setup.getNextTaskLocation("company_lobby") || setup.secondsToDate(setup.getTaskDueDate("ai_robot_body_weekend_meeting"), setup.getNextTaskLocation("company_lobby").date) > 0)>>
<br><br>
[<<moveTo "event_ai_mission_robot_body_performance_0" 'Floor 13: Utilities.' 120>>]<br>
[@@.link_locked;It is the weekend, the elevator will not take you to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.@@]
<<elseif !setup.compareDay($now,_nextdate)>>
Go home, or something.
<<else>>
You are supposed to meet someone in the lobby here.<br>
<br>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
[<<moveTo "company_lobby" "Wait for your meeting." _tmpSeconds>>]
<</if>>
<<elseif $currentTasks.hasOwnProperty('event_interview') && !$currentTasks.event_interview.finished && $now.getUTCDay() == 1>>
You arrive at work, but the elevator fails to open. A quick inquiry at the desk informs you that your key-card has been temporarily disabled, but that you may wait until it is time for your interview and they will buzz you in.<br>
<br>
<<printThought "Such treatment after working here for so long... bureaucracy can be so silly...">><br>
<br>
<<set _nextdate = setup.checkTaskLocationTime('company_lobby')>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
[<<moveTo "company_lobby" "Wait for your interview." _tmpSeconds "<<set $scene.waiting=true>>">>]
<<else>>
<<if ( (getUTCHours($now) >= 6) and (getUTCHours($now) < 18) ) || $currentTasks.hasOwnProperty("party_dress") && !$currentTasks["party_dress"].finished>>
You enter the stupendous lobby of Social Interaction Service Syndicate Inc.<br>
<br>
<<if $player.flags.jobsecretary>>
You are employed in the role of <<=setup.getSecretaryTitle()>>.
<<else>>
You've never been above the tenth floor to visit the massive headquarters of the parent company that owns your current employer Cloud Data Services.
<</if>>
<br><br>
<<if $scene.from_outside && setup.getItemObjFromType('shoes').hasOwnProperty('heels') && setup.getItemObjFromType('shoes').heels.difficulty > setup.getTotalValue("heels")>>
<<if $scene.rideshare>>
Your pocketbook be damned, you are very glad you decided to ride in to work; just walking across the large corporate lobby in these heels is a painful challenge, you never would have made it on foot.
<<else>>
You stagger into work already exhausted. The normally short walk was like a death-march in these heels. For the last few blocks, you were barely even staying vertical, staggering between walls and bike racks and anything else you could lean against for some measure of support. You try to ignore the looks you get crossing the lobby on your way to almost falling into the elevator.
<</if>>
<br><br>
<</if>>
<<include thoughts_work>>
<<if $player.flags.jobsecretary == false>>
[<<moveTo "event_dataservice_intro_0" "Floor 9: Cloud Data Service." 90>>]
<<else>>
<<set _nextdate = setup.checkTaskLocationTime('company_lobby')>>
<<if $player.work.sendhome && !$currentTasks.hasOwnProperty('manager_morning_inspection_task_repeat') && $now.getUTCDay() != 6 && $now.getUTCDay() != 0>>
[@@.link_locked;You've been sent home for the day!@@]<br>
<<elseif _nextdate != null && setup.compareDay($now,_nextdate)>>
<<if $currentTasks.hasOwnProperty('event_interview') && setup.daysToDate($now, setup.getTaskDueDate('event_interview')) < 1>>
<<moveTo $currentTasks.event_interview.rewards.trigger_event>>
<<else>>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
You are set to meet someone in the lobby later today.<br>
<br>
[<<moveTo "company_lobby" "Wait." _tmpSeconds>>]<br>
<</if>>
<<else>>
<<if !$player.flags.firstWorkDay>>
[<<moveTo "event_first_workday_morning_0" 'Floor <<=$player.work.floorNumber>>: <<=ps(setup.getNpcName("npc_manager","formal"))>> Office.' 120 "<<set $player.flags.firstWorkDay = true>>">>]<br>
<<else>>
<<if $currentTasks.hasOwnProperty("party_dress") && !$currentTasks["party_dress"].finished>>
<<if setup.checkTaskUntimedComplete('party_dress')>>
<<printThought "I am dressed and ready for the party.">>
<<else>>
<<printThought "I do not think I am properly attired for a formal party.">>
<</if>>
<br><br>
[<<moveTo "event_manager_preparty_volunteer_dress" 'Floor 52: <<=ps(setup.getNpcName("npc_manager", "formal"))>> Office.' 120 "<<set $player.flags.firstWorkDay = true>>">>]
<<elseif $now.getUTCDay() == 5 && $now.getUTCHours() > 12>>
[@@.link_locked;It is Friday and your work is done. Even the elevator seems to want you to enjoy your weekend as it refuses to take you up to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.@@]
<<elseif $now.getUTCHours() >= 16>>
[@@.link_locked;Your work is done. Even the elevator seems to want you to head home as it refuses to take you up to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.@@]
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
You were sent home to "fix" things after failing an inspection. Better be sure you have addressed everything before heading back up...<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2" 'Floor 52: <<=ps(setup.getNpcName("npc_manager", "formal"))>> Office.' 120 "<<if !$scene.beforetasklocation>><<set $scene.beforetasklocation=[]>><</if>><<set $scene.beforetasklocation.pop()>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>>">>]
<<elseif $currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.getTaskDueDate('manager_morning_inspection_task').getUTCDate() != $now.getUTCDate()>>
<<if $scene.stressDismiss>>
[@@.link_locked;<<=setup.getNpcName('npc_manager', 'formal')>> has sent you home early to de-stress.@@]
<<else>>
[@@.link_locked;<<=setup.getNpcName('npc_manager', 'formal')>> has dismissed you for the day for poor behaviour. You do not seem to be able to take the elevator to her floor.@@]
<</if>>
<<elseif $player.work.vacationDay>>
[@@.link_locked;You are on vacation for the rest of the day, you have no business at the office.@@]
<<else>>
<<if $npc_manager.stage >= 4>>
[<<moveTo "room_elevator_in" 'Floor <<=$player.work.upperFloorNumber>>: <<=ps(setup.getNpcName("npc_manager", "formal"))>> Office.' 120>>]
<<else>>
[<<moveTo "room_elevator_in" 'Floor <<=$player.work.floorNumber>>: <<=ps(setup.getNpcName("npc_manager", "formal"))>> Office.' 120>>]
<</if>>
<</if>>
<br>
<</if>>
<</if>>
[<<moveTo "room_dataservice" "Floor 9: Cloud Data Service." 120>>]<br>
<<if ($player.flags.firstWorkDay || $player.sec_style.clothing.underwear == "strict")>>
<<if $npc_manager.stagevalues[2].no_change>>
[@@.link_locked;You barely glance at the restroom door when a guard shoots you a warning glare from across the lobby.@@]<br>
<<else>>
[<<moveTo "company_restroom" "Public Restroom." 60>>]<br>
<</if>>
<</if>>
<<if $npc_manager.stagevalues[2].no_change>>
[<<moveTo "park_restroom" "Hurry across the street to the park restroom to change." 60>>]<br>
<</if>>
<</if>>
<<elseif getUTCHours($now) < 6>>
The lobby is locked, it is much too early for work.<br>
<br>
<<printThought "Why didn't I sleep in a bit longer?">>
<<else>>
All offices are officially closed for the day. Go home, or something.
<</if>>
<</if>>
<br><br>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4 && State.hasPlayed("theme_ai_admin_first_1")>>
[<<moveTo "room_alley_shortcut" "Alley shortcut." 180>>]<br>
<</if>>
[<<moveTo "room_citymap" "Exit the building." 120>>]
</td><td width="50%"><image src="./images/locations/company_lobby.png"></image></td></tr>
</table><<if !$scene.workdayInit>>
<<setFood>>
<<set $player.work.tmphoursDone = 0>>
<<set $player.work.tmpworkPensum = 0>>
<<if $scene.hasOwnProperty('homeShortcut')>>
<<deleteMember $scene 'homeShortcut'>>
<</if>>
<<set $scene.workdayInit=true>>
<</if>>
<<set $scene.ate_lunch = false>>
<<if $player.flags.firstWorkDayDone>>
<<set $scene.forceLunchBathroom = setup.calcLunchBathroomEvent($now)>>
<</if>>
<<set $scene.foodDelivery = {}>>
<<set $scene.foodDelivery.done = false>>
<<set $scene.foodDelivery.right = false>>
<<set $scene.foodDelivery.noFood = false>>/*#
#desc: goto your secretary office
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "workdayInit">>
<<if $daily.prostitutionPassout>>
<<initRoom>>
<<moveTo $currentTasks.manager_morning_inspection_task.rewards.trigger_event>>
<<elseif $scene.directInspection>>
<<initRoom>>
<<set $scene.beforetasklocation.pop()>>
<<set $scene.beforetasklocation.push("room_office_sissy_secretary")>>
<<switch $npc_manager.stage>>
<<case 2>>
<<moveTo "event_manager_daily_check_stage_2">>
<<case 3>>
<<moveTo "event_manager_daily_check_stage_3">>
<<case 4>>
<<moveTo "event_manager_daily_check_stage_4">>
<<case 5>>
<<if $npc_manager.flags.evil == 1>>
<<moveTo "event_manager_daily_check_stage_5_evil">>
<<else>>
<<moveTo "event_manager_daily_check_stage_5">>
<</if>>
<<default>>
ERROR: unhandled stage: <<=$npc_manager.stage>>
<</switch>>
<</if>>
<</if>>
<<if getUTCHours($now)< $player.work.time_morning.hour>>
<<set _tmpSeconds = setup.secondstoWork($player,$now)>>
<<else>>
<<set _tmpSeconds = 0>>
<</if>>
<<set _worktime = false>>
<<if (setup.isWorkDay($now)==true)>>
<<set _workday = true>>
<<if (( (setup.getUTCDay($now)==5) and (getUTCHours($now)>=$player.work.time_friday.hour))or( (setup.getUTCDay($now)>=1) and (setup.getUTCDay($now)<5) and (getUTCHours($now)>=$player.work.time_evening.hour) ))>>
<<set _worktime = false>>
<<else>>
<<set _worktime = true>>
<</if>>
<<else>>
<<set _workday = false>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You enter the antechamber of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, which is your workspace as a
<<if setup.getTotalValue('feminization')<10>>
secretary
<<else>>
<<=setup.getSecretaryTitle()>>
<</if>>
for Social Interaction Service Syndicate Inc.
<<if _workday == false>>
Hanging out here on the weekend hardly makes any sense to you.
<<elseif _worktime == false>>
Your hours are over for the day. Time to go home.
<</if>>
<br><br>
<<include thoughts_work>>
[<<link "Check work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if State.hasPlayed("event_secretary_style_structure_1") || $npc_manager.stage > 2>>
[<<moveTo "room_employee_tracking" "Employee Portal." 0 "<<set $scene.returnFromEmployee='room_office_sissy_secretary'>>">>]<br>
<</if>>
<br>
<<if _worktime == true>>
<<if (getUTCHours($now)<$player.work.time_morning.hour) || getUTCHours($now) < $player.work.time_midday.hour && $currentTasks.hasOwnProperty("manager_morning_inspection_task") && setup.secondsToDate($now, setup.getTaskDueDate('manager_morning_inspection_task')) > 0>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task")>>
<<set _tmpSeconds = setup.secondsToDate($now, setup.getTaskDueDate('manager_morning_inspection_task'))>>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_morning_early" "Start working." _tmpSeconds "<<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEarly = true>>">>]<br>
<<elseif ((getUTCHours($now)==$player.work.time_midday.hour) && (getUTCMinutes($now)<$player.work.time_midday.minutes))>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Start working." 0 "<<set $player.work.nowWorking = true>>">>]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start working." 0 "<<set $player.work.nowWorking = true>>">>]<br>
<</if>>
<<else>>
<<if $player.makeup.messed >= 25>>
[<<moveTo "room_office_sissy_secretary" "Take a moment to touch up your makeup." 300 "<<set $player.makeup.messed=0>>">>]<br><br>
<</if>>
<<if setup.dayDiff($now,$npc_manager.flags.lastOfficeVisit)==0>>
[@@.link_locked;You already visited the office of <<=setup.getNpcName('npc_manager', 'formal')>> today!@@]<br>
<<else>>
[<<moveTo "room_office_manager" 'Office of <<=setup.getNpcName("npc_manager", "formal")>>.' 60>>]<br>
<</if>>
<</if>>
[<<moveTo "company_lobby" "Back to the lobby." 180>>]<br>
[<<moveTo "room_foyer" "Head straight home." 300>>]
</div>/*#
#desc: in your office after met w/manager
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.noitems=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "endPartialShift">>
<<set $player.cutscene.noitems = false>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You stand in your office having finished another day of work.<br>
<br>
[<<link "Check work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if State.hasPlayed("event_secretary_style_structure_1") || $npc_manager.stage > 2>>
[<<moveTo "room_employee_tracking" "Employee Portal." 0 "<<set $scene.returnFromEmployee='room_office_after_work'>>">>]<br>
<</if>>
<br>
<<if !$npc_ai.flags.missions.connection && (["data_plug"].includes(_plug) || setup.checkItemOwned("data_plug"))>>
[@@.link_locked;You need to finish <<=ps(setup.getNpcName("npc_ai", "first"))>> mission, visiting anyone sounds like a good way to get caught.@@]<br>
[<<moveTo "room_elevator_home" "Back to the lobby." 160 "<<set $daily.homeShortcut=false>>">>]<br>
<<elseif $npc_boss.flags.blowjobContest.won && State.hasPlayed("event_boss_first_cock_training_6") && !$npc_boss.flags.blowjobContest.sucked && (!$player.body_ref.vagina || $player.work.chair.front == 5) && $player.work.chair.plug == 5 && $player.work.chair.gag == 6 && $player.flags.special_skills.blowjob_training>>
You are preparing to leave when you get a summons, not from <<=setup.getNpcName("npc_manager","formal")>>, but from <<=setup.getNpcName("npc_boss","formal")>>!<br>
<br>
"@@.npc_boss;Hello, I believe I owe you for your performance the other night. You have practiced your devotion, proven your hunger to have me inside you in every way and, now... now you had better hurry up to my office. My balls are heavy with your reward.@@"<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Your mouth is already watering at the thought of <<=ps(setup.getNpcName("npc_boss","formal"))>> cum and you hurry towards the door.
<<else>>
You lick your lips in anticipation of <<=setup.getNpcName("npc_boss","formal")>> and hurry for the door.
<</if>>
<<elseif setup.getTotalValue("penis") > 13>>
You lick your lips in anticipation of <<=setup.getNpcName("npc_boss","formal")>> and hurry for the door.
<<else>>
Maybe it's because you put so much effort into earning it, but <<=setup.getNpcName("npc_boss","formal")>> sounds so alluring and you find yourself hurrying for the door.
<</if>>
<br><br>
[<<moveTo "event_blowjob_challenge_reward_1" "Ride the elevator up." 900>>]
<<else>>
<<if setup.dayDiff($now,$npc_manager.flags.lastOfficeVisit)==0>>
[@@.link_locked;You already visited <<=setup.getNpcName('npc_manager', 'formal')>> today!@@]<br>
<<else>>
[<<moveTo "room_office_manager" 'Office of <<=setup.getNpcName("npc_manager", "formal")>>.' 10>>]<br>
<</if>>
<br>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: list information about your work status as a secretry
#status: FINISHED 0.4.0.0
#ignore_spell: h
#*/
<div class="dialog_div">
<<if $now.getUTCDay()==5>>
<<set _dailyHours = 5>>
<<else>>
<<set _dailyHours = 8.5>>
<</if>>
Welcome <<=setup.getSecretaryTitle()>><br>
<hr>
Vacation days left: @@.textRightSide;<<=$player.work.vacation>> days (NYI)@@<br>
Weekly payment: @@.textRightSide;<<=$player.work.payment>> Cr@@<br>
<br>
Hours worked today: @@.textRightSide;<<=(Math.floor($player.work.tmphoursDone*2)/2)>>/<<=_dailyHours>>h@@<br>
Hours worked this week: @@.textRightSide;<<=Math.floor($player.work.hoursDone*2)/2>>/<<=$player.work.hoursperWeek>> h@@<br>
Work completed today: @@.textRightSide;<<=Math.floor(100*$player.work.tmpworkPensum/$player.work.bonusReq/_dailyHours)>>%@@<br>
Work completed this week: @@.textRightSide;<<=Math.floor(100*$player.work.workPensum/$player.work.bonusReq/$player.work.hoursperWeek)>>%@@<br>
<hr>
<<if $npc_manager.stage < 3>>
Probation remaining: @@.textRightSide;<<=$player.work.qualifyingperiod>>@@<br>
<hr>
<</if>>
@@.textRightSide;
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<</button>>@@
</div>/*#
#desc: list information about your work efficiency
#status: FINISHED 0.8.3.0
#ignore_spell: %hours,h
#*/
<div class="dialog_div">
<<if $now.getUTCDay()==5>>
<<set _dailyHours = 5>>
<<else>>
<<set _dailyHours = 8.5>>
<</if>>
<hr>
<<=$player.work.details>><br>
<br>
Expected Performance: <<=(100*$player.work.bonusReq).toFixed(0)>>%<br>
<br>
Hours worked today: @@.textRightSide;<<=(Math.round($player.work.tmphoursDone*2)/2)>>/<<=_dailyHours>> h@@<br>
Hours worked this week: @@.textRightSide;<<=Math.round($player.work.hoursDone*2)/2>>/<<=$player.work.hoursperWeek>> h@@<br>
Work completed today: @@.textRightSide;<<=Math.round($player.work.tmpworkPensum/$player.work.bonusReq/_dailyHours*100)>>%@@<br>
Work completed this week: @@.textRightSide;<<=Math.round($player.work.workPensum/$player.work.bonusReq/$player.work.hoursperWeek*100)>>%@@<br>
<hr>
@@.textRightSide;
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<</button>>@@
</div>/*#
#desc: dummy passthrough passage to hijack for random events on your way "down" the elevator leaving work
#status: RELEASED 0.6.0.0
#*/
<<if $daily.homeShortcut>>
<<set $scene.passthrough = "room_foyer">>
<<else>>
<<set $scene.passthrough = "company_lobby">>
<</if>>
<<if $taskEvents.length == 0>>
<<initRoom>>
<<include "handleHomeShortcutDirect">>
<<else>>
<<checkTaskEvents>>
<</if>>/*#
#desc: dummy passthrough passage to hijack for random events on your way "up" the elevator arriving at work
#status: RELEASED 0.6.0.0
#*/
<<if $npc_manager.stage >= 4 && (!setup.checkItemTypeWorn("cage") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity') || setup.getChastityLevel() != 5 && $player.sec_style.submission.sissyomatic)>>
<<set $scene.noevent = true>>
<<initRoom>>
<<moveTo "event_inspection_stage4_nochastity_1">>
<<elseif $npc_manager.stage == 4 && $now.getUTCDay() == 1 && ($events.hasOwnProperty("event_class_1") || $events.hasOwnProperty("event_class_2") || $events.hasOwnProperty("event_class_3") || $events.hasOwnProperty("event_class_4"))>>
/% don't want an event morning of class %/
<<initRoom>>
<<set $scene.noevent = true>>
<<moveTo "room_office_sissy_secretary">>
<<elseif $npc_manager.stage == 3 && $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished && setup.daysToDate($now, setup.getTaskDueDate('task_uniform_upgrade')) == 0>>
<<set $scene.noevent = true>>
<<initRoom>>
<<deleteTask 'manager_morning_inspection_task'>>
<<moveTo "event_manager_check_uniform_upgrade">>
<<else>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary">>
<</if>><<if $player.flags.firstWorkDayDone && (!$currentTasks.hasOwnProperty('event_interview') || $currentTasks.event_interview.finished) && (!$currentTasks.hasOwnProperty('manager_first_morning_inspection_task') || $currentTasks.manager_first_morning_inspection_task.finished)>>
<<if !$scene.beforetasklocation || $scene.beforetasklocation.last() != "event_strict_unisex_1">> /%somewhat janky...%/
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && (!$currentTasks.manager_morning_inspection_task.finished || $currentTasks.manager_morning_inspection_task.finishedTime.getTime() == $now.getTime())>>
<<set $scene.taskId = 'manager_morning_inspection_task'>>
<<elseif $currentTasks.hasOwnProperty('manager_morning_inspection_task_repeat') && (!$currentTasks.manager_morning_inspection_task_repeat.finished || $currentTasks.manager_morning_inspection_task_repeat.finishedTime.getTime() == $now.getTime())>>
<<set $scene.taskId = 'manager_morning_inspection_task_repeat'>>
<</if>>
<<else>>
<<set $scene.taskId = 'manager_morning_inspection_task'>>
<</if>>
<<if !$scene.taskId>>
<<initRoom>>
<<set $scene.code = "missing_inspect">>
<<set $scene.dest = passage()>>
<<moveTo "debug_island">>
<</if>>
<<set $currentTasks[$scene.taskId].condition="">>
<<set $currentTasks[$scene.taskId].finished=false>>
<<set $scene.passed = setup.checkTaskUntimedComplete($scene.taskId)>>
<<set _taskTrig = $currentTasks[$scene.taskId].trigger>>
<<if !$clothSetsInt.hasOwnProperty('male_prework')>>
<<useClothSetPush 'male_prework'>>
<<set $scene.startWorkOuterwear = _taskTrig.clothesUnderwear.condition>>
<<set $scene.startWorkOuterwear = _taskTrig.clothing.condition>>
<</if>>
<<set $scene.workUnderwear = 1 == _taskTrig.clothesUnderwear.condition>>
<<set $scene.workOuterwear = 1 == _taskTrig.clothing.condition>>
<<if _taskTrig.heels>>
<<set $scene.workHeels = 1 == _taskTrig.heels.condition>>
<</if>>
<<elseif $player.flags.firstWorkDayDone && $currentTasks.hasOwnProperty('manager_first_morning_inspection_task') && !$currentTasks.manager_first_morning_inspection_task.finished>>
<<set $scene.passed = setup.checkTaskUntimedComplete('manager_first_morning_inspection_task')>>
<<if $currentTasks.manager_first_morning_inspection_task.trigger.clothesUnderwear>>
<<set $scene.workUnderwear = 1 == $currentTasks.manager_first_morning_inspection_task.clothesUnderwear.condition>>
<<else>>
<<set $scene.workUnderwear = true>>
<</if>>
<<if $currentTasks.manager_first_morning_inspection_task.trigger.hasOwnProperty('officeMaleClothes')>>
<<set $scene.workOuterwear = 1 == $currentTasks["manager_first_morning_inspection_task"].trigger.officeMaleClothes.condition>>
<<else>>
<<set $scene.workOuterwear = 1 == $currentTasks["manager_first_morning_inspection_task"].trigger.clothing.condition>>
<</if>>
<<elseif $currentTasks.hasOwnProperty('event_interview') && !$currentTasks.event_interview.finished>>
<<set _x = setup.addManagerEndlessTask(true)>>
<<set $scene.passed = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<set _taskTrig = $currentTasks['manager_morning_inspection_task'].trigger>>
<<set $scene.workUnderwear = 1 == _taskTrig.clothesUnderwear.condition>>
<<set $scene.workOuterwear = 1 == _taskTrig.clothing.condition>>
<<if _taskTrig.heels>>
<<set $scene.workHeels = 1 == _taskTrig.heels.condition>>
<</if>>
<<deleteMember $currentTasks 'manager_morning_inspection_task'>>
<<elseif $currentTasks.hasOwnProperty('manager_first_morning_inspection_task')>>
<<set $scene.passed = setup.checkTaskUntimedComplete('manager_first_morning_inspection_task')>>
<<if $currentTasks.manager_first_morning_inspection_task.trigger.clothesUnderwear>>
<<set $scene.workUnderwear = 1 == $currentTasks.manager_first_morning_inspection_task.trigger.clothesUnderwear.condition>>
<<else>>
<<set $scene.workUnderwear = true>>
<</if>>
<<if $currentTasks.manager_first_morning_inspection_task.trigger.hasOwnProperty('officeMaleClothes')>>
<<set $scene.workOuterwear = 1 == $currentTasks["manager_first_morning_inspection_task"].trigger.officeMaleClothes.condition>>
<<else>>
<<set $scene.workOuterwear = 1 == $currentTasks["manager_first_morning_inspection_task"].trigger.clothing.condition>>
<</if>>
<</if>>/*#
#desc: outside the office
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcDressedForWork">>
<</if>>
<<set $player.location to "Outside Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_exterior.png">>
<div id="invframe" class="scrolltext">
You stand outside the massive Corporate Headquarters of Social Interaction Service Syndicate Inc. where you work.<<if !setup.checkPlayerDressed()>> You aren't dressed... work or no.<<elseif !$scene.workUnderwear || !$scene.workOuterwear>> You are not properly dressed to meet your so-called "uniform" requirements...<</if>><br>
<br>
<<if setup.isWorkDay($now)>>
<<if $npc_manager.stagevalues[2].no_change>>
<<if $currentTasks.hasOwnProperty('party_dress') && !$currentTasks.party_dress.finished>>
<<if setup.checkTaskUntimedComplete('party_dress')>>
<<printThought "I am dressed and ready for the party.">>
<<else>>
<<printThought "I do not think I am properly attired for a formal party.">>
<</if>>
<br><br>
[<<moveTo "event_manager_preparty_volunteer_dress" 'Floor 52: <<=ps(setup.getNpcName("npc_manager", "formal"))>> Office.' 120 "<<set $player.flags.firstWorkDay = true>>">>]
<<elseif !$scene.workUnderwear || !$scene.workOuterwear || !setup.checkPlayerDressed()>>
[@@.link_locked;You are not properly attired to gain entrance to the company building.@@]<br>
<<else>>
You are properly attired for work...<br>
<br>
[<<moveTo "company_lobby" "Head into the building." 60>>]<br>
<</if>>
[<<moveTo "park_restroom" "Head for the restroom near work to change." 60>>]<br>
<<else>>
[<<moveTo "company_lobby" "Head into the building." 60>>]<br>
<</if>>
<<else>>
<<set _nextdate = setup.checkTaskLocationTime('company_lobby')>>
<<if !setup.compareDay($now,_nextdate)>>
[@@.link_locked;It's the weekend, you don't have any reason to be at work...@@]<br>
<<else>>
You are supposed to meet someone in the lobby today.<br>
<br>
<<set _tmpSeconds = setup.secondsToDate($now,_nextdate)+1>>
[<<moveTo "company_lobby" "Wait for your meeting." _tmpSeconds>>]<br>
<</if>>
<</if>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4 && State.hasPlayed("theme_ai_admin_first_1")>>
[<<moveTo "room_alley_shortcut" "Alley shortcut." 180>>]<br>
<</if>>
[<<moveTo "room_citymap" "Leave." 60>>]
</div>/*#
#desc: change clothes in company restroom
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Not Now!">>
<<include "calcDressedForWork">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCHours() < 12 && !$player.work.sendhome && (!$scene.workUnderwear || !$scene.workOuterwear)>>
<<set $npc_manager.stagevalues[$npc_manager.stage].sneakyChange += 1>>
<<set _caught = !$events.hasOwnProperty('rent_first') && ($npc_manager.stage >= 3 || random(1,5) < ($npc_manager.stagevalues[$npc_manager.stage].sneakyChange * $npc_manager.stage) || $player.sec_style.submission.chastity == "strict") && $now.getUTCHours() < 12 && $currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.getTaskDueDate('manager_morning_inspection_task').getUTCDate() == $now.getUTCDate()>>
<<if _caught>>
<<if !$player.sec_style.clothing.unisex && $npc_manager.stage == 1 && !$player.sec_style.submission.chastity>>
<<initRoom>>
<<if $npc_manager.stagevalues[2].femalesecretary && $now.getUTCDay() != 5>>
<<set $scene.fromCompany=true>>
<<moveTo "event_strict_female_1">>
<<elseif !$player.sec_style.clothing.unisex>>
<<moveTo "event_strict_unisex_1">>
<</if>>
<<elseif !$player.sec_style.clothing.unisex && $player.sec_style.submission.chastity == "strict">>
<<initRoom>>
<<moveTo "event_strict_unisex_1">>
<<elseif $player.sec_style.clothing.female == "" && $npc_manager.stage >= 2 && $now.getUTCDay() != 5>>
<<initRoom>>
<<set $scene.fromCompany=true>>
<<if !$player.sec_style.clothing.unisex>>
<<moveTo "event_strict_unisex_1">>
<<else>>
<<moveTo "event_strict_female_1">>
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Company Public Restroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You find a private stall in the semi-public restroom in the lobby.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Company Public Restroom">><<set $scene.return_makeuproom="company_restroom">><<set $scene.makeuproom_image="./images/locations/company_toilet.png">><<set $scene.return_makeuproomtext="Back.">>'>>]<br>
<br>
<<elseif $player.makeup.template != "">>
[<<moveTo 'company_restroom' 'Wash off your makeup.' 180 '<<set $player.makeup.template = "">><<set $player.makeup.messed = 0>>'>>]<br>
<br>
<</if>>
<<if setup.checkOutsideDecency()>>
<<if $now.getUTCHours() < 12 && $currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.getTaskDueDate('manager_morning_inspection_task').getUTCDate() != $now.getUTCDate()>>
<<if $scene.stressDismiss>>
[@@.link_locked;<<=setup.getNpcName('npc_manager', 'formal')>> has sent you home early to de-stress.@@]<br>
<<else>>
[@@.link_locked;<<=setup.getNpcName('npc_manager', 'formal')>> has dismissed you for the day for poor behaviour. You do not seem to be able to take the elevator to her floor.@@]<br>
<</if>>
<<elseif $now.getUTCHours() < 12 && !$player.work.sendhome>>
<<if !$scene.workUnderwear || !$scene.workOuterwear>>
<<printThought "Hmm, I don't think this is going to meet my so-called uniform requirement...">><br>
<br>
<<hint $options "You can change in the inventory">><br>
<<if !$scene.workUnderwear && $player.sec_style.clothing.underwear == "strict" && setup.getTotalValue("feminization") < 7>>
<<if setup.checkItemInInventory('sissy_panties_pink') && setup.checkItemInInventory('sissy_bra_pink') && setup.checkItemInInventory('sissy_stockings_pink')>>
You consider the <<if $fetish.sissy>>sissy<<else>>ultra-fem<</if>> pink underwear set <<=setup.getNpcName('npc_manager', 'formal')>> forced on you. A part of you is afraid of putting it on by yourself. Even if it's to go to work, it feels like doing something like that will be crossing a bridge you can never un-cross, and yet...<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_strict_underwear_selfforce_1" "Force yourself to put the whole ensemble on..." 300 "<<spendWillpower 1>>">>] <<hint $options "Pushing past your limits, however reluctantly, will cost willpower.">><br>
<<else>>
[@@.link_locked;You lack will to force yourself to do something like that...@@]<br>
<</if>>
[<<moveTo "event_first_workday_morning_0" 'Just go in as you are.' 120 "<<set $player.cutscene.lockinventory=true>><<set $player.flags.firstWorkDay = true>>">>]<br>
<<else>>
<<printThought "If only I brought that pink frilly set <<=setup.getNpcName('npc_manager', 'formal')>> gave me... wait, what am I thinking? I don't want to wear anything like that!!!... right?">><br>
<br>
<</if>>
<<elseif $player.flags.firstWorkDay>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head up for round two..." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]
<<else>>
[<<moveTo "room_elevator_in" "Head up to work anyway." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_first_workday_morning_0" 'Head for work anyway.' 120 "<<set $player.cutscene.lockinventory=true>><<set $player.flags.firstWorkDay = true>>">>]<br>
<</if>>
<<else>>
<<printThought "This looks dressed for work...">><br>
<br>
<<if $player.flags.firstWorkDay>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head up for round two..." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]
<<else>>
[<<moveTo "room_elevator_in" "Head for work." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_first_workday_morning_0" 'Head for work.' 120 "<<set $player.cutscene.lockinventory=true>><<set $player.flags.firstWorkDay = true>>">>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "company_lobby" "Return to the lobby." 30>>]<br>
<<elseif (!$player.work.sendhome || $player.work.sendhome && $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && !$currentTasks.manager_morning_inspection_task_repeat.finished) && $scene.workUnderwear && $scene.workOuterwear>>
<<if $now.getUTCHours() < 12 && $currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.getTaskDueDate('manager_morning_inspection_task').getUTCDate() != $now.getUTCDate()>>
<<if $scene.stressDismiss>>
[@@.link_locked;<<=setup.getNpcName('npc_manager', 'formal')>> has sent you home early to de-stress.@@]<br>
<<else>>
[@@.link_locked;<<=setup.getNpcName('npc_manager', 'formal')>> has dismissed you for the day for poor behaviour. You do not seem to be able to take the elevator to her floor.@@]<br>
<</if>>
<<elseif !setup.checkOutsideDecency()>>
<<printThought "I don't care if this might technically pass work requirements, I'm not going out in public like this!">><br>
<br>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<<elseif $now.getUTCHours() < 12>>
<<printThought "These clothes would seem to meet work requirements... guess I can head up.">><br>
<br>
<<if $player.flags.firstWorkDay>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head up for round two..." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]
<<else>>
[<<moveTo "room_elevator_in" "Head for the elevator." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]
<</if>>
<<else>>
[<<moveTo "event_first_workday_morning_0" 'Head for work.' 120 "<<set $player.cutscene.lockinventory=true>><<set $player.flags.firstWorkDay = true>>">>]<br>
<</if>>
<<elseif setup.checkOutsideDecencyReason() == "unisex" && $npc_manager.stagevalues[1].unisexsecretary>>
<<printThought "I don't know about wearing something like this in general... but for work, it doesn't look like I have any choice...">><br>
<br>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head up for round two..." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]
<<else>>
[<<moveTo "room_elevator_in" "Head for the elevator." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]
<</if>>
<<elseif $npc_manager.stage == 1 && $player.sec_style.clothing.female != "enthusiast" && setup.checkOutsideDecencyReason() == "female" && $npc_manager.stagevalues[1].unisexsecretary>>
<<printThought "My work uniform is unisex attire... this is a bit more than I'm ready to wear out...">><br>
<br>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<<else>>
<<printThought "This may be sufficient for work... but I don't want to be seen in public like this!">><br>
<br>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif setup.checkOutsideDecencyReason() == "commando" && !setup.checkItemTypeCarried("panties")>>
<<printThought "I need to get home and put on some underwear...">><br>
<br>
[<<moveTo "company_lobby" "Return to the lobby." 30>>]
<<else>>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: change clothes in park restroom
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Not Now!">>
<<include "calcDressedForWork">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCHours() < 12 && !$player.work.sendhome && (!$scene.workUnderwear || !$scene.workOuterwear) &&
$player.sec_style.clothing.female == "" && $npc_manager.stage > 1>>
<<set $npc_manager.stagevalues[$npc_manager.stage].sneakyChange += 1>>
<<set _caught = ($npc_manager.stage >= 3 || random(1,10) < $npc_manager.stagevalues[$npc_manager.stage].sneakyChange * $npc_manager.stage) && $now.getUTCDay() != 5 && $now.getUTCHours() < 12 && $currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.getTaskDueDate('manager_morning_inspection_task').getUTCDate() == $now.getUTCDate()>>
<<if _caught>>
<<initRoom>>
<<moveTo "event_strict_female_1">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Public Restroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_toilet_2.png">>
<div id="invframe" class="scrolltext">
You are in a slightly dingy public restroom across from your work building.<br>
<br>
<<if setup.getTotalValue('makeup')>0 && $player.sec_style.clothing.makeup != "">>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Public Restroom">><<set $scene.return_makeuproom="park_restroom">><<set $scene.makeuproom_image="./images/locations/mall_toilet_2.png">><<set $scene.return_makeuproomtext="Back.">>'>>]<br>
<br>
<<elseif $player.makeup.template != "">>
[<<moveTo 'park_restroom' 'Wash off your makeup.' 180 '<<set $player.makeup.template = "">><<set $player.makeup.messed = 0>>'>>]<br>
<br>
<</if>>
<<if setup.checkOutsideDecency()>>
<<if $now.getUTCHours() < 12 && (!$player.work.sendhome || $player.work.sendhome && $scene.taskId == "manager_morning_inspection_task_repeat")>>
<<if !$scene.workUnderwear || !$scene.workOuterwear>>
<<printThought "Hmm, I don't think this is going to meet my so-called uniform requirement...">><br>
<br>
<<hint $options "You can change in the inventory">><br>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.getTaskDueDate('manager_morning_inspection_task').getUTCDate() != $now.getUTCDate()>>
[<<moveTo "company_lobby" "Head in to work anyway." 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head in to work anyway." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]<br>
<<else>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head up for round two..." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]
<<else>>
[<<moveTo "room_elevator_in" "Head in to work anyway." 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<</if>>
<<else>>
<<printThought "This looks dressed for work...">><br>
<br>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.getTaskDueDate('manager_morning_inspection_task').getUTCDate() != $now.getUTCDate()>>
[<<moveTo "company_lobby" "Head in to work." 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head in to work." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]<br>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head up for round two..." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]<br>
<<else>>
[<<moveTo "room_elevator_in" "Head in to work." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]<br>
<</if>>
<</if>>
<</if>>
[<<moveTo "company_lobby_exterior" "Leave the restroom." 30>>]
<<elseif !$player.work.sendhome && $scene.workUnderwear && $scene.workOuterwear>>
<<if $now.getUTCHours() < 12>>
<<printThought "These clothes would seem work requirements... guess I can head up.">><br>
<br>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.getTaskDueDate('manager_morning_inspection_task').getUTCDate() != $now.getUTCDate()>>
[<<moveTo "company_lobby" "Head in to work anyway." 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head in to work anyway." 300 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
[<<moveTo "event_manager_daily_check_stage_2" "Head up for round two..." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]
<<else>>
[<<moveTo "room_elevator_in" "Head in to work anyway." 300 "<<set $player.cutscene.lockinventory=true>><<set $scene.at_office=true>>">>]<br>
<</if>>
<<elseif $npc_manager.stage == 1 && $player.sec_style.clothing.female != "enthusiast" && setup.checkOutsideDecencyReason() == "female" && $npc_manager.stagevalues[1].unisexsecretary>>
<<printThought "My work uniform is unisex attire... this is a bit more than I'm ready to wear out...">><br>
<br>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<<else>>
<<printThought "This may be sufficient for work... but I don't want to be seen in public like this!">><br>
<br>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
[@@.link_locked;You are not going to go in public like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: choose to dose food
#status: RELEASED 0.8.7.0
#*/
<<set $player.location to "">>
<<include playerMenuLocked>>
<<if setup.changedRoom()>>
<</if>>
<img src="./images/inventory/item/food/food_bagel_ui.png" style="float: left;">
<div id="invframe" class="scrolltext">
You consider the different things you have available that you might use to dose your <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch...<br>
<br>
<<if setup.checkItemInInventory('pink_pill')>>
[<<moveTo "event_dose_food_pink_pill_1" 'Slip the pink pill she gave you into her food.' 300 "<<set $scene.drug=0>><<set $scene.first=!State.hasPlayed('event_dose_food_pink_pill_1')>>">>]<br>
<<elseif setup.checkItemInInventory('sissy_drug_1') >>
[<<moveTo "event_dose_food_pink_pill_1" 'Slip the untraceable pink pill into her food.' 300 "<<set $scene.drug=.5>><<set $scene.first=!State.hasPlayed('event_dose_food_pink_pill_1')>>">>]<br>
<<elseif setup.checkItemInInventory('sissy_pill_mk1') || setup.checkItemInInventory('pillbottle')>>
[<<moveTo "event_dose_food_pink_pill_1" 'Add a dose of <<=setup.getItemName("sissy_pill_mk1")>>.' 300 "<<set $scene.drug=1>><<set $scene.first=!State.hasPlayed('event_dose_food_pink_pill_1')>>">>]<br>
<</if>>
<<if setup.checkItemInInventory('personal_medication')>>
[<<moveTo "event_dose_food_pink_pill_1" 'Add a dose of <<=setup.getItemName("personal_medication")>>.' 300 "<<set $scene.drug=2>>">>]<br>
<</if>>
<<if $currentTasks.hasOwnProperty("task_destroy_manager")>>
<<if setup.checkItemInInventory("special_poison")>>
[<<moveTo "event_boss_destroy_manager_dose_1" 'Add the poison <<=setup.getNpcName("npc_boss","formal")>> gave you.' 300 "<<set $scene.drug=2>>">>]<br>
<<else>>
[@@.link_locked;You can't contaminate <<=ps(setup.getNpcName("npc_manager","formal"))>> food since you left <<=ps(setup.getNpcName("npc_boss","formal"))>> poison at home.@@]<br>
<</if>>
<</if>>
<<if $fetish.cum>>
<<if !$player.body_ref.penis>>
[@@.link_locked;Your lack of penis makes jerking off in <<=ps(setup.getNpcName("npc_manager","formal"))>> food quite impossible.@@]<br>
<<else>>
<<if $player.timebased.horny >= 25>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.checkItemTypeWorn("cage")>>
<<if $npc_manager.flags.trustplayerwithkey>>
[<<moveTo "event_dose_food_cum_1" "Unlock yourself and cum in her food." 300>>]<br>
<<elseif (setup.getTotalValue("anal") + setup.getTotalValue("bimbofication")) > 10 && $player.flags.masturbation.plug && setup.checkItemTypeWorn("plug")>>
[<<moveTo "event_dose_food_cum_1" "Wiggle your plug until you cum in her food." 300>>]<br>
<<else>>
[@@.link_locked;You are locked in chastity and unable to cum in her food.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_dose_food_cum_1" "Cum in her food." 300>>]<br>
<</if>>
<<else>>
[@@.link_locked;You no longer produce cum... so how could you cum in <<=ps(setup.getNpcName("npc_manager","formal"))>> food?@@]<br>
<</if>>
<<else>>
[@@.link_locked;You are insufficiently aroused to cum in her food.@@]<br>
<</if>>
<</if>>
<</if>>
<<if $fetish.piss>>
[<<moveTo "event_dose_food_piss_1" "Piss in her food." 300>>]<br>
<</if>>
<br>
<<if setup.checkItemInInventory('drug_breast_plus') || setup.checkItemInInventory('drug_ditzy_plus') || setup.checkItemInInventory('drug_slave_plus') || setup.checkItemInInventory('drug_dick_plus') || setup.checkItemInInventory('drug_smart_plus') || setup.checkItemInInventory('drug_master_plus')>>
<<printThought "Hmm, the plus versions of <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> drugs are way too fragrant to hide in food.">><br>
<br>
<</if>>
<<if setup.checkItemInInventory('drug_breast')>>
[<<moveTo "event_dose_food_drug_breasts_1" 'Add a dose of <<=setup.getItemName("drug_breast")>>.' 300>>]<br>
<</if>>
<<if setup.checkItemInInventory('drug_ditzy')>>
[<<moveTo "event_dose_food_drug_ditzy_1" 'Add a dose of <<=setup.getItemName("drug_ditzy")>>.' 300>>]<br>
<</if>>
<<if setup.checkItemInInventory('drug_slave')>>
[<<moveTo "event_dose_food_drug_slave_1" 'Add a dose of <<=setup.getItemName("drug_slave")>>.' 300>>]<br>
<</if>>
<<if setup.checkItemInInventory('drug_dick')>>
[<<moveTo "event_dose_food_drug_dick_1" 'Add a dose of <<=setup.getItemName("drug_dick")>>.' 300>>]<br>
<</if>>
<<if setup.checkItemInInventory('drug_smart')>>
[<<moveTo "event_dose_food_drug_smart_1" 'Add a dose of <<=setup.getItemName("drug_smart")>>.' 300>>]<br>
<</if>>
<<if setup.checkItemInInventory('drug_master')>>
[<<moveTo "event_dose_food_drug_master_1" 'Add a dose of <<=setup.getItemName("drug_master")>>.' 300>>]<br>
<</if>>
<<if false>>
[<<moveTo "event_dose_food_normal_drug" 'Add TODOfuture to her meal.' 300>>]<br>
<</if>>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood" "Just deliver the food unaltered." 300>>]
</div>/*#
#desc: dose food with pink pill
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include checkFoodDelivery>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<<switch $scene.drug>>
<<case 0>>
<<deleteItem 'pink_pill'>>
<<case 0.5>>
<<deleteItem 'sissy_drug_1'>>
<<case 1>>
<<if setup.checkItemInInventory('sissy_pill_mk1')>>
<<deleteItem 'sissy_pill_mk1'>>
<</if>>
<<case 2>>
<<deleteItem 'personal_medication'>>
<</switch>>
<<if $npc_manager.stage > 2>>
<<include "calcPlugFunctions">>
<<set $scene.chastity_ems = setup.checkItemTypeTag('cage', ['ems'])>>
<<if $scene.plug_ems && $scene.chastity_ems>>
<<set $scene.severity = 15>>
<<elseif $scene.plug_ems>>
<<set $scene.severity = 13>>
<<elseif $scene.chastity_ems>>
<<set $scene.severity = 11>>
<<else>>
<<set $scene.severity = 10>>
<</if>>
<<applyExperience 'bdsm' $scene.severity 'little' $SEEN_FRIEND>>
<<set $scene.stress = $scene.severity-setup.getTotalValue("bdsm")>>
<<if $scene.stress > 0>>
<<applyStress $scene.severity>>
<</if>>
<<changeHorny $scene.severity>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You crack open
<<switch $scene.drug>>
<<case 0 .5>>
the pill <<=setup.getNpcName("npc_manager","formal")>> gave you
<<case 1>>
one of the <<=setup.getItemName("sissy_pill_mk1")>> pills
<<case 2>>
one of the <<=setup.getItemName("personal_medication")>> pills
<<default>>
ERROR: unexpected scene.drug: <<=$scene.drug>>
<</switch>>
and sprinkle the contents over your <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch. Heading back to the office you place the box on her desk and attempt to calmly head for the door as she pops it open.<br>
<br>
<<if ($scene.drug == 0 || $scene.drug == .5 || $scene.first) && ($npc_manager.flags.cruel || $npc_manager.anger > $npc_manager.affection)>>
You are almost to the door when <<=setup.getNpcName("npc_manager","formal")>> seems to materialise behind you. She presses you against the door with surprising strength, holding you in place as she leans in, her anger-soaked words hissing in your ear. "@@.npc_manager;Did you just attempt to drug me, you <<if $fetish.sissy>>sissy<<else>>little<</if>> shit?@@"<br>
<br>
You try to gasp out a response but her hand on the back of your head grinds your face into the solid hardwood of the door. "@@.npc_manager;Silence, the question was rhetorical, there is nothing you can say to excuse this blatant malfeasance.<<if $scene.drug == 0 || $scene.drug == .5>> That pill<<else>>The medicine you just tried to slip me<</if>> was for your own good, but I was willing to show patience, to allow you to take it on your own terms... but this? No, as I explained your first day, misbehaviour leads to punishment, to... consequences... and you are about to experience consequences, indeed.@@"<br>
<br>
You try to catch your breath as she pulls you away from the door just long enough to fling it open, and then all but drag you behind her by the wrist.<br>
<br>
[<<moveTo "event_pink_pill_strict_1" "Stumble along after her." 300>>]
<<elseif $scene.foodDelivery.right>>
You hear her start to eat and then, just as you start to close the door her voice rings out after you.<br>
<br>
<<switch $npc_manager.stage>>
<<case 1 2>>
<<if $scene.first>>
"@@.npc_manager;<<=$player.first_name>>, it appears you just attempted to drug me... in the future perhaps show more care not to spill your medication onto my food. I am immune to this sort of thing, of course, but it is such a waste when those pills are for your betterment.@@"
<<else>>
"@@.npc_manager;Again, <<=$player.first_name>>? Very disappointing. I would have thought you had learned your lesson. At this point in your career you need to be focused on your own development, not wasting time interfering with management.@@"
<</if>>
<br><br>
You gulp and hurry on your way, counting your blessings that she seems more amused than angry and that your little scheme has not left you in more trouble.
<<case 3 4 5>>
"@@.npc_manager;Well, well... I do believe I taste the unmistakable flavour of <<if $fetish.sissy>>Sissy pills<<else>>Antiboyotics<</if>>?@@"<br>
<br>
You freeze, wondering how she could have so swiftly tasted your "addition." Turning around you find her continuing to eat, seemingly unconcerned by your addition. "@@.npc_manager;You know, in a way it actually is not a bad condiment, sort of a fruity fusion undercurrent... that said, well... this sort of action does require immediate disciplinary measures.@@"<br>
<br>
<<if $scene.plug_ems || $scene.chastity_ems>>
Raising a remote in one hand she presses a button and electric agony explodes through your
<<if $scene.plug_ems && $scene.chastity_ems>>
<<getWordMyPenis>> as well as your plugged rear.
<<elseif $scene.plug_ems>>
plugged rear.
<<else>>
<<getWordMyPenis>>.
<</if>>
You stagger slightly at the pain as she returns to her meal and you hurry back to your desk.
<<else>>
Staring directly at you she places her fork down and frowns. "@@.npc_manager;Normally this would be the sort of occasion wherein I took advantage of the efficient punishment options offered by a nice remote controlled plug or chastity device, but, alas, you are ill-equipped today so we will have to fall back on more... traditional methods.@@"<br>
<br>
Reaching into the drawer of her desk she produces the dreaded "for <<if $fetish.sissy>>SISSI <</if>>Secretary use only" paddle, rising to her feet and soon having you roughly bent over the desk.<br>
<br>
WHACK WHACK WHACK. The paddle blows land fast and hard as she goes after your poor bottom like she was tenderising meat.
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
Her viciousness extends until even your prodigious masochistic tendencies are strained.
<<else>>
You try to embrace the punishment as the burgeoning pain-slut that you are, but even your arousal cannot mask that your rear is in agony.
<</if>>
Finishing up with a bare-handed slap that somehow stings even more, she steps away. "@@.npc_manager;Hmmf, at least you took your punishment like a good girl, descending into tears is so... unbecoming. Still, I hope that serves as a lesson for the future. I want the food that I ordered with no "additions." If it was meant to be in it, the chef would have put it there, I will not have you doing unqualified culinary, or medical, experimentation.@@"
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
You try to "tough it out," but the pink padded paddle is far crueller than its sweet appearance implies and your rear is soon sore and red as you whimper in pain.
<<else>>
The first blow prompts a yelp, but the subsequent ones soon draw out full-on cries of pain as the paddle turns your bottom a deep red.
<</if>>
Pushing you to your limit she finishes off with a bare-handed stinging slap before yanking you to your feet.<br>
<br>
"@@.npc_manager;There, let that be a lesson to you. When I send you for lunch I want only the food that I ordered with no "additions" — if it was meant to be in it, the chef would have put it there.@@"
<</if>>
<br><br>
Nodding you hobble away and return to your desk, wincing slightly as you take your seat.
<</if>>
<<default>>
ERROR: unexpected manager.stage <<=$npc_manager.stage>>
<</switch>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
<<else>>
Packaging things back up you make the delivery as she initially smiles only to pop open the container and her expression to sour.<br>
<br>
"@@.npc_manager;This... does not at all look like what I ordered.@@"<br>
<br>
[<<moveTo "event_manager_food_punishment" "Slowly reach for the door handle. Her vision is based on movement, so if you move slow enough..." 60 "<<set $player.work.foodID = ''>>">>]
<</if>>
</div>/*#
#desc: dose food with cum
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<include checkFoodDelivery>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("cage")>>
<<if $npc_manager.flags.trustplayerwithkey>>
You make a quick detour to your desk to snag the key to your chastity cage and squeeze out a quick one, cumming all over <<=setup.getNpcName("npc_manager","formal")>> lunch before you package things back up and make your delivery.
<<else>>
You may be <<if $player.sec_style.submission.permanent_key>>permanently <</if>>locked in chastity, but that is hardly an obstacle for your lusty depravity as you finger your plug until you dribble through your cage. You quickly package up the "freshly seasoned" meal and hurry to make your delivery.
<</if>>
<<else>>
You pull out your <<getWordMyPenis>> and squeeze out a quick one, cumming all over <<=setup.getNpcName("npc_manager","formal")>> lunch before you package things back up and make your delivery.
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> opens her lunch <<if $scene.foodDelivery.right>>smiles<<else>>frowns<</if>> and then pauses.<br>
<br>
She dabs at it with her pinkie and then tastes it before looking back at you. "@@.npc_manager;Did you cum in my lunch? No, no, no, this is QUITE improper, such a failure of control...@@" She pushes the meal to one side as she rises to her feet... though you notice she does not throw it away.<br>
<br>
<<if $npc_manager.stage == 1>>
"@@.npc_manager;This reckless disregard for workplace propriety... there is really only one way to re-assert proper control. You may commence by removing your clothing and lying back on that couch. Either that... or continue out that door and consider your employment terminated.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_strict_2" "Take off your clothes and do as she commands." 120 "<<useClothSetPush 'stage1end'>><<set $scene.object=false>>">>]<br>
[<<moveTo "event_manager_stage1_end_strict_2" "This is too much, tender your resignation." 120 "<<useClothSetPush 'stage1end'>><<set $scene.object=true>>">>]
<<else>>
"@@.npc_manager;Behaviour like this... well, it is inexcusable<<if $npc_manager.flags.require_chastity && $npc_manager.flags.trustplayerwithkey>>, and proof that my generousness in allowing you control of your key was, alas, quite misguided. Why, if you are this uninhibited while locked and on the job... how must you be acting on your own time?<<else>>.<</if>> When you are at the office you are under my control... and that means I expect CONTROL. Letting yourself loose like this... no, quite improper<<if $npc_manager.flags.require_chastity && $npc_manager.flags.trustplayerwithkey>>, and to forestall such in future, I shall be revoking your key privileges<</if>>. Now, return to your desk and get to work — I only hope that too much damage has not already been done...@@"<br>
<br>
As you walk back to your desk, you have a strange thought. <<printThought "Wait, she seemed only upset that I came without permission, the fact that it was in her lunch barely appeared to bother her...">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>><<set $npc_manager.flags.trustplayerwithkey=false>>">>]
<</if>>
</div>/*#
#desc: dose food with piss
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include checkFoodDelivery>>
<<if $player.sec_style.submission.human_toilet != "">>
<<applyExperience 'humiliation' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'piss' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> pauses before revealing her meal, sniffing once and adopting a look of concern before finally opening the package and looking down.<br>
<br>
<<if $player.sec_style.submission.human_toilet == "">>
"@@.npc_manager;Something smells a bit off today... and everything is so soggy... no, this is not at all what I ordered...@@"<br>
<br>
Locking you in her gaze she pulls a pink dog dish out of her desk, rotating it to show it has been monogrammed with <<=$player.first_name>>.<br>
<br>
<<if State.hasPlayed("event_manager_food_punishment_obey") || State.hasPlayed("event_manager_food_punishment_disobey")>>
Sneering at your look of recognition
<<else>>
<<printThought "What! How long has she been planning this?">><br>
<br>
Smiling at your look of shock
<</if>>
she dumps the contents of her lunch into the dish and then places it on the floor in front of you.<br>
<br>
"@@.npc_manager;What you brought me may well have once been a fine meal, but it has been befouled and thus it. Is. Trash.@@" Sitting back down she stomps her foot into the middle of the dish, mashing it with the toe of her shoe until it is an unrecognisable mush. She raises her foot towards your face, scraps of food stuck to the sole. "@@.npc_manager_dom;Now, clean me off.@@"<br>
<br>
[<<moveTo "event_manager_food_punishment_obey" "Lick her feet clean as ordered." 60 "<<set $scene.piss=true>><<set $scene.first=!State.hasPlayed('event_manager_food_punishment_obey') && !State.hasPlayed('event_manager_food_punishment_disobey')>>">>]<br>
[<<moveTo "event_manager_food_punishment_disobey" "Shake your head and refuse the demeaning command." 60 "<<set $scene.piss=true>><<set $scene.first=!State.hasPlayed('event_manager_food_punishment_obey') && !State.hasPlayed('event_manager_food_punishment_disobey')>>">>]
<<else>>
"@@.npc_manager;Is this... have you urinated upon my meal?@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> stops your response with a glance... though, really... what possible reply could you offer up?<br>
<br>
She stares at you for a long moment and then unlocks a drawer of her desk and pulls out a dog dish. Dumping the contents of her meal into the dish she uses a fork to give it a quick stir and then slides it across the desk to you. "@@.npc_manager;I realise that you have embraced a role as a human urinal piss-drinking slut, but it is impolite to push your interests on others without consent. Still, I do try to be encouraging, so here, enjoy. No — with your fingers, utensils are for civilized individuals, behaviour like this... well, it is beyond uncouth. I want you to shove every piss-drenched morsel down your human toilet of a throat.@@"<br>
<br>
Under her withering gaze you slowly eat your, or, rather, her lunch, the
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
wonderful
<<else>>
acidic
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
bitter
<<else>>
disgusting
<</if>>
<</if>>
taste of your <<getWordPiss>> overwhelming whatever flavours the original preparer had been going for.<br>
<br>
Only after you have licked the dish clean does <<=setup.getNpcName("npc_manager","formal")>> dismiss you back to your desk.<br>
<br>
"@@.npc_manager;Remember — piss is for horny slaves like yourself. When I send you to fetch my lunch I expect it delivered precisely as I ordered it, with no additives.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
<</if>>
</div>/*#
#desc: attempt to drug manager food
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include checkFoodDelivery>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You watch with interest as <<=setup.getNpcName("npc_manager","formal")>> digs in to the drug-laced meal...<br>
<br>
She takes a bite and then pauses. "@@.npc_manager;Is this... are you trying to drug me?@@"<br>
<br>
You freeze in fright but she just starts to laugh. "@@.npc_manager;Oh you silly thing. I am far too wise to <<=setup.getNpcName("npc_work_doctor","formal")>> and <<his npc_work_doctor>> chemistry set. There is no way that dolt could brew up anything strong enough to affect myself. Still... YOU should not waste such materials, now hurry on back to your desk... I will admit that the flavour is a not unappealing combination.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
</div>/*#
#desc: dose food with breast drug
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'drug_breast'>>
<<include checkFoodDelivery>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You watch with interest as <<=setup.getNpcName("npc_manager","formal")>> digs in to the drug-laced meal...<br>
<br>
She takes a few bites and then looks up at you... her breasts do not seem any larger, but her nipples are suddenly VERY visible through her top.<br>
<br>
"@@.npc_manager;Well? You have made your delivery, return to your desk. I do not have the time today to chat over lunch.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
</div>/*#
#desc: dose food with ditzy drug
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'drug_ditzy'>>
<<include checkFoodDelivery>>
<<addWorkEvent 'ditzy_drugged_coffee' _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You watch with interest as <<=setup.getNpcName("npc_manager","formal")>> digs in to the drug-laced meal...<br>
<br>
She takes a few bites and then looks up at you... her piercing gaze looks suddenly slightly dulled...<br>
<br>
"@@.npc_manager;Like... what are you waiting around here for? You delivered my meal, now you need to get back to@@" She pauses for a moment, clearly struggling to remember a word. "@@.npc_manager;Back to work!@@"<br>
<br>
<<printThought "Hmm... they seem to be taking effect... probably best to wait for things to become more pronounced.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
</div>/*#
#desc: dose food with slave drug
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'drug_slave'>>
<<include checkFoodDelivery>>
<<if $npc_manager.stage < 5>>
<<addWorkEvent 'slave_drugged_coffee' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage < 5>>
You watch with interest as <<=setup.getNpcName("npc_manager","formal")>> digs in to the drug-laced meal...<br>
<br>
She takes a few bites and then looks up at you...<br>
<br>
"@@.npc_manager;Did I thank you for the delivery yet? It is strange... I feel like I do not show proper appreciation for you. Quite silly, in a way... I mean, without you where would I be? Yes... I really should listen to you more...@@"<br>
<br>
<<printThought "Holy shit, it's working...">><br>
<br>
[<<moveTo "event_dose_food_drug_slave_2" "Try to give her a command." 300 "<<set $scene.order=true>>">>]<br>
[<<moveTo "event_dose_food_drug_slave_2" "Quietly return to your desk." 300 "<<set $scene.order=false>>">>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> takes a sniff of her meal and frowns. "@@.npc_manager;Something appears off... it smells somewhat like... tea...@@" she pushes the meal off the desk and into the trash. "@@.npc_manager;I am afraid I have lost my appetite.@@"<br>
<br>
<<printThought "I guess she's just too on guard, now... though at least she isn't blaming me for things...">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
<</if>>
</div>/*#
#desc: command manager after dosing food with slave drug
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'drug_slave'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.order>>
You try to give <<=setup.getNpcName("npc_manager","formal")>> a simple order and, for a moment, it seems like she might obey, but then she shakes her head.<br>
<br>
"@@.npc_manager;No, that... no, as appreciative of you as I am, I AM the Manager, it does not make logical sense for you to be giving commands. You should return to your desk now, if you do not mind.@@"<br>
<br>
<<printThought "Damn... pushed my luck a bit far there... though if she didn't have logical thinking to fall back on it might have worked...">>
<<else>>
You nod and return to your desk.<br>
<br>
<<printThought "Best to give the drugs time to work...">>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
</div>/*#
#desc: dose food with dick drug
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'drug_dick'>>
<<include checkFoodDelivery>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You watch with interest as <<=setup.getNpcName("npc_manager","formal")>> digs in to the drug-laced meal...<br>
<br>
She takes a few bites and then looks up at you, shifting somewhat uncomfortably in her chair.<br>
<br>
"@@.npc_manager;Sorry... feeling some strange phantom cramps... as if my body was trying to work a muscle it did not have...@@" She shakes her head, "@@.npc_manager;No matter, in any case, I believe it is time for YOU to return to work?@@"<br>
<br>
You nod and hurry off before you can get in REAL trouble for your little experiment.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
</div>/*#
#desc: dose food with drug smart
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'drug_smart'>>
<<include checkFoodDelivery>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You watch with interest as <<=setup.getNpcName("npc_manager","formal")>> digs in to the drug-laced meal...<br>
<br>
She takes a few bites and then looks up at you.<br>
<br>
"@@.npc_manager;What are you doing still here? You have performed your duty and delivered my lunch, now you ought to return to your desk... yes, I would like some privacy, I am struck by a sudden inspiration for a problem that has been vexing me for some time and I do not wish to have any distractions until I can write it down...@@"<br>
<br>
<<printThought "Well... at least I helped her, I suppose...">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
</div>/*#
#desc: dose food with drug master
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'drug_master'>>
<<include checkFoodDelivery>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You watch with interest as <<=setup.getNpcName("npc_manager","formal")>> digs in to the drug-laced meal...<br>
<br>
She takes a few bites and then glances dismissively up at you.<br>
<br>
"@@.npc_manager;What are you doing standing there? It is lunchtime — which means your face should be between my legs so we can both properly enjoy the meal.@@"<br>
<br>
[<<moveTo "event_dose_food_drug_master_2" "Do as she commands." 600 "<<set $scene.order=true>>">>]<br>
[<<moveTo "event_dose_food_drug_master_2" "Reply that you need to get back to work..." 180 "<<set $scene.order=false>>">>]
</div>/*#
#desc: dose food with drug master aftermath
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.order>>
You dutifully crawl under <<=ps(setup.getNpcName("npc_manager","formal"))>> desk and start eating. Her thighs tighten against your ears as her hand grips your hair — you feel well and truly helpless, struggling to sneak breaths in between licking and nibbling at her <<getWordVagina>>.<br>
<br>
She grinds against your face, squirting you a mouth-full of sustenance before finally allowing you to lean back.<br>
<br>
"@@.npc_manager;Mmm, sometimes I wonder why I let you work anywhere else besides between my legs...@@" She sighs, "@@.npc_manager;Alas, there remain other matters, and lunch is at an end. You may return to your desk, now.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
<<else>>
You're a bit scared at how quickly the drugs took effect and nervously reply that you actually need to get back to work.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows. "@@.npc_manager;Work? Your number one duty is serving ME. Now stop making excuses and crawl under my desk like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"<br>
<br>
[<<moveTo "event_dose_food_drug_master_2" "Do as she commands." 600 "<<set $scene.order=true>>">>]<br>
[<<moveTo "event_dose_food_drug_master_3" "Continue to refuse." 300>>]
<</if>>
</div>/*#
#desc: dose food with drug master sent back to work
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You dig in your proverbial heels and refuse <<=ps(setup.getNpcName("npc_manager","formal"))>> command... only<<if setup.checkItemTypeTag('cage', ['ems']) || setup.checkItemTypeTag('plug', ['ems'])>> to be driven to your knees by a painful electric shock coursing through your <<if setup.checkItemTypeTag('cage', ['ems'])>>chastity <<if setup.isCage()>>cage<<else>>belt<</if>> and <</if>>rear occupant<<else>>for her to all but teleport in front of you to land an echoing slap across your face<</if>>.<br>
<br>
"@@.npc_manager;Disobedience is pain. <<if setup.checkItemTypeTag('cage', ['ems']) || setup.checkItemTypeTag('plug', ['ems'])>>You have worked for me long enough to learn that...<<else>>Normally I would prefer to have proven that fact remotely... but you failed to come to work suitably equipped today, leaving me to less expedient, more... hands-on methods.<</if>>@@" She sighs. "@@.npc_manager;Unfortunately for you I no longer believe you deserve the privilege of tasting me... so you may just hurry back to your desk before I decide to really <<if setup.checkItemTypeTag('cage', ['ems']) || setup.checkItemTypeTag('plug', ['ems'])>>cook<<else>>tan<</if>> your disobedient ass.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Hurry back to your desk." 300 "<<set $player.work.foodID = ''>>">>]
</div>/*#
#desc: afternoon event after ditzy drug manager
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> summons you into her office. If anything, her expression is even more distracted than it was at lunch... though she does look happy, and not in her usual self-satisfied way but... just... happy.<br>
<br>
"@@.npc_manager;Hi, <<=$player.first_name>>... I'm, like... trying to work, but it's getting so hard to, like... focus? Could you get me some coffee, a nice jolt would help keep me from being distracted and stuff.@@"<br>
<br>
<<if setup.checkItemInInventory('drug_slave_plus')>>
<<printThought "Wow... those drugs are doing a number on her... I wonder if I combined with some <<=setup.getItemName('drug_slave_plus')>> to make her more submissive...">>
<<else>>
<<printThought "Wow... those drugs are doing a number on her... if only I could stack things with some <<=setup.getItemName('drug_slave')>> to make her more submissive...">>
<</if>>
<br><br>
[<<moveTo "event_ditzy_druged_manager_coffee_2" "Get her coffee." 600 "<<set $scene.drug=false>>">>]
<<if setup.checkItemInInventory('drug_slave_plus')>>
[<<moveTo "event_ditzy_druged_manager_coffee_2" 'Get her coffee... with some added <<=setup.getItemName("drug_slave_plus")>>.' 600 "<<set $scene.drug=true>>">>]
<<elseif setup.checkItemInInventory('drug_slave')>>
[<<moveTo "event_ditzy_druged_manager_coffee_2" 'Get her coffee... with some added <<=setup.getItemName("drug_slave")>>.' 600 "<<set $scene.drug=true>>">>]
<</if>>
</div>/*#
#desc: afternoon event after ditzy drug manager
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory('drug_slave_plus')>>
<<deleteItem 'drug_slave_plus'>>
<<else>>
<<deleteItem 'drug_slave'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.drug>>
You fetch the requested coffee and, after topping it up with a heavy dose of <<=setup.getItemName('drug_slave')>>, deliver it to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<if $npc_manager.stage < 5>>
With a dopey smile she accepts the drink, draining it in a single gulp and then looking up at you... submissively?<br>
<br>
"@@.npc_manager;Mmmm, that hit the spot... I feel so good, is there anything I can do for you?@@"<br>
<br>
[<<moveTo "event_end_drug_manager_1" "Continue." 300>>]
<<else>>
She starts to take a drink and then sniffs before slowly putting it down. "@@.npc_manager;Odd, this looks like it's, like... coffee, and yet it smells like tea...@@" She drops the drink in the trash and shakes her head, seemingly attempting to clear her thoughts. "@@.npc_manager;Never mind, perhaps I have already had enough... stimulants today, return to your duties.@@"<br>
<br>
<<printThought "I guess she's too on guard for that sort of thing, now... though at least she didn't blame me for it all...">><br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
<</if>>
<<else>>
You fetch the requested coffee. <<=setup.getNpcName("npc_manager","formal")>> takes a grateful gulp, her gaze sharpening.<br>
<br>
"@@.npc_manager;Hmm... I really needed that — it felt like I was operating under a fog ever since lunch.@@" She shrugs, it looks like the drugs have kept her from putting together your role in things... you hurry back to your desk rather than have her think about such things further.<br>
<br>
<<printThought "That was a start, but it's going to take more than one drug to break her down...">><br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: afternoon event after slave drug manager
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> summons you into her office. If anything, her expression is even more distracted than it was at lunch... though she does look happy, and not in her usual self-satisfied way but... just... happy.<br>
<br>
"@@.npc_manager;Hi, Mist-... er, I mean, <<=$player.first_name>>... could I please have some coffee? I'm having trouble focusing on my duties. I need to be sharp to stay on top of this department...@@"<br>
<br>
<<if setup.checkItemInInventory('drug_ditzy_plus')>>
<<printThought "Wow... those drugs are doing a number on her... if I combined with some <<=setup.getItemName('drug_ditzy_plus')>> to dull her thoughts she'd be putty in my hands...">>
<<else>>
<<printThought "Wow... those drugs are doing a number on her... if only I could stack things with some <<=setup.getItemName('drug_ditzy_plus')>> to dull her thoughts she'd be putty in my hands...">>
<</if>>
<br><br>
[<<moveTo "event_slave_druged_manager_coffee_2" "Get her coffee." 600 "<<set $scene.drug=false>>">>]
<<if setup.checkItemInInventory('drug_ditzy_plus')>>
[<<moveTo "event_slave_druged_manager_coffee_2" 'Get her coffee... with some added <<=setup.getItemName("drug_ditzy_plus")>>.' 600 "<<set $scene.drug=true>>">>]
<</if>>
</div>/*#
#desc: afternoon event after slave drug manager
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drug>>
<<deleteItem 'drug_ditzy_plus'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.drug>>
You fetch the requested coffee and, after topping it up with a heavy dose of <<=setup.getItemName("drug_ditzy_plus")>>, deliver it to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
She takes a sip and then pauses, looking up at you with concern. "@@.npc_manager;Is this my normal drink? something tastes off...@@"<br>
<br>
You smile confidently and tell her to keep drinking.<br>
<br>
<<printThought "That's right, drink your dumb bitch juice...">><br>
<br>
She nods obediently, her gaze growing duller with each gulp.<br>
<br>
"@@.npc_manager;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> you are always so good to me.@@" She states submissively as she finishes the cup. "@@.npc_manager;It's weird... I had this dream I was ordering you around, but that can't be right? My thoughts feel so fuzzy...@@"<br>
<br>
[<<moveTo "event_end_drug_manager_1" "Continue." 300>>]
<<else>>
You fetch the requested coffee. <<=setup.getNpcName("npc_manager","formal")>> takes a grateful gulp, her gaze sharpening.<br>
<br>
"@@.npc_manager;Hmm... I really needed that — it felt like I was operating under a fog ever since lunch.@@" She shrugs, it looks like some lingering effect of the drugs have dulled her suspicions and she isn't recognising your role in things. You hurry back to your desk rather than have her think about such things further.<br>
<br>
<<printThought "That was interesting, but it's going to take more than one drug to break her down...">><br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: gameover, drugged manager
#status: RELEASED 0.8.7.0
#*/
<<if setup.getTotalValue("dominance") >= 20 && setup.getTotalValue("smart") >= 20>>
<<set $gameOver = 'drug_manager_win'>>
<<else>>
<<set $gameOver = 'drug_manager'>>
<</if>>
<<set $player.location to ''>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/gameover.png">>
<div id="invframe" class="scrolltext">
You've done it... thanks to some chemistry you have turned the once intimidating <<=setup.getNpcName("npc_manager","formal")>> into a mentally dull, submissive slave.<br>
<br>
<<if setup.getTotalValue("dominance") >= 20 && setup.getTotalValue("smart") >= 20>>
There are a few hiccups as you lose your previous "shield" against the political machinations of executive politics at Social Interaction Service Syndicate Inc, but you have learned your lessons well, as cunning and dominant as your one-time <<=setup.getNpcName("npc_manager","title")>> ever was.<br>
<br>
All it takes is some tweaks to her schedule, some whispering in her ear... and you become the power behind the throne, her always there right-hand assistant, ready to "handle the details" of things — particularly after pulling some strings to get away from <<=setup.getNpcName("npc_boss","formal")>> and <<his npc_boss>> power plays as the two of you take a new position at another company.<br>
<br>
It's amazing what a bit of makeup can do and soon you — freshly hired as Chief HR Officer <<=setup.getNpcName("npc_manager","last")>>, with your personal red-headed secretary, are making a fresh mark on the world.
<<else>>
Unfortunately this proves to be... far from a good idea as, without <<=ps(setup.getNpcName("npc_manager","formal"))>> shielding interference the both of you soon fall victim to the political machinations that is being an executive at Social Interaction Service Syndicate Inc.<br>
<br>
It isn't long before she stumbles and is demoted, and before long the both of you are serving under <<=setup.getNpcName("npc_rival","formal")>> — the <<man npc_rival>> endlessly amused at how <<his npc_rival>> one-time rival has fallen... not that you care, <<he npc_rival>> gives you so many wonderful drugs, you're always happy... at least, as far as you can remember...
<</if>>
<br><br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: npc_manager takes you to lab for strict drugs
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 12 'terrible' $SEEN_FRIEND>>
<<applyStress 10>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_manager","formal"))>> holds your wrist like a vice as she storms out of the office. You have not even a hope of slowing her down as it feels like you are being dragged behind a train, stumbling to keep up until you almost crash into her as she comes to a stop in the elevator.<br>
<br>
With a sneer she pulls you to your feet, lifting you off the ground for a moment with one arm to stare you in the eye as she mashes the elevator button with her other hand and you would swear you heard the sound of something crack.<br>
<br>
"@@.npc_manager;Control yourself.@@" She sneers. "@@.npc_manager;Just because you are on your way to be punished is no reason to sacrifice decorum. You are a <<if $fetish.sissy>>SISSI <</if>>Secretary — MY <<if $fetish.sissy>>SISSI <</if>>Secretary — and that is a representative position, now act accordingly!@@"<br>
<br>
The power of her command is such that you nearly forget to breath, so entranced are you by her steely gaze. The DING of the elevator breaks your trance as <<=setup.getNpcName("npc_manager","formal")>> is immediately storming past you and up the hall.<br>
<br>
[<<moveTo "event_pink_pill_strict_2" "Chase after her." 300>>]
</div>/*#
#desc: strict drugs: enter lab
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 7 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<switch $npc_hucow.stage>>
<<case 0 1>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_0")>>
<<case 2>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_1")>>
<<case 3>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_2")>>
<<case 4>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_3")>>
<<default>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_4")>>
<</switch>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> still holds you tightly by the wrist, but you managed to keep up as you pass through a hallway more hospital than office. Without so much as knocking she throws open a door to reveal <<if $npc_work_doctor.profile>><<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab, the eponymous<<else>>a lab, a lone lab-coat wearing<</if>> scientist standing in front of some sort of machine and facing away from you<<if !$npc_work_doctor.profile>> the only person you initially see<</if>>.<br>
<br>
You initially think the scientist is caught up in <<his npc_work_doctor>> work, as <<he npc_work_doctor>> mumbles a vague "@@.npc_work_doctor;make an appointment.@@" Before <<=setup.getNpcName("npc_manager","formal")>> interrupts with a scream "@@.npc_manager_dom;DOCTOR!@@" and you realise that it was not <<his npc_work_doctor>> work that consumed the <<man npc_work_doctor>>'s attention... but the lab assistant,
<<if $npc_hucow.stage > 0>>
none other than your friend, <<=setup.getNpcName("npc_hucow","full")>>,
<</if>>
kneeling before <<him npc_work_doctor>>, enthusiastically sucking the <<man npc_work_doctor>>'s cock.<br>
<br>
The man looks at <<=setup.getNpcName("npc_manager","formal")>> with both recognition and fear, stumbling over his words as <<=setup.getNpcName("npc_manager","formal")>> closes the distance to stand in front of him. "@@.npc_work_doctor;Oh, <<=setup.getNpcName("npc_manager","formal")>>, I, uh, was not expecting you, yet... is there something I can do to, I mean, for you today?@@"<br>
<br>
You find your attention diverted from the bickering of the two managers as you look down at <<if $npc_hucow.stage > 0>>the lab assistant<<else>><<=setup.getNpcName("npc_hucow","full")>><</if>>, still kneeling obediently... and with the machine behind her revealed to include some sort of robotic arm tipped with yet another phallus though, unlike the veiny member still sticking out from <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> pants trailing saliva, this one is dripping with an eerie pink substance.<br>
<br>
You are immediately struck that <<=setup.getNpcName("npc_manager","formal")>> both knows the scientist... and does not particularly like the scientist, as, rather than let <<him npc_work_doctor>> talk <<=setup.getNpcName("npc_manager","formal")>> interrupts by grabbing the phallus and shoving it between your lips.<br>
<br>
"@@.npc_manager;Go ahead and pump her full of whatever concoction you were working on,@@" <<=setup.getNpcName("npc_manager","formal")>> commands. "@@.npc_manager;That should teach her to try and drug her superiors.@@"<br>
<br>
You struggle, but <<=ps(setup.getNpcName("npc_manager","formal"))>> hold is as unbreakable as ever, and all you get for your efforts is the <<if setup.getTotalValue("oral") > 5>>large<<else>>jaw-breaking<</if>> phallus forced even further into your mouth.<br>
<br>
"@@.npc_work_doctor;Uh, this was actually a personalised blend I was testing and—@@" the scientist starts, only to be rudely cut off once again.<br>
<br>
"@@.npc_manager;Did I ask your opinion? Now either start pumping, or you can join this disobedient whelp on your knees and we will REALLY see just how effective your elixirs are.@@"<br>
<br>
Well and truly cowed the scientist hurries off to the side of the machine and turns a dial.<br>
<br>
[<<moveTo "event_pink_pill_strict_3" "No!" 300>>]
</div>/*#
#desc: strict drugs: forced to take drug
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<switch $npc_hucow.stage>>
<<case 0 1>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_0")>>
<<case 2>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_1")>>
<<case 3>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_2")>>
<<case 4>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_3")>>
<<default>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_4")>>
<</switch>>
<div id="invframe" class="scrolltext">
Every neuron you have screams out to resist as you watch a pink liquid stream through the clear tubing towards the cock lodged between your lips. <<if $npc_hucow.stage > 0>><<=setup.getNpcName("npc_hucow","full")>><<else>>the lab assistant<</if>> stares at you without any recognition, still kneeling barely an arms reach away, her lips still spread wide as if waiting for something to be shoved back between them with all the attentiveness of a hung program.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> might as well have welded you in place for as much good as your flailing struggles do you, an unconcerned sneer on her face as you look up for a final fearful moment before the drugs arrive...<br>
<br>
[<<moveTo "event_pink_pill_strict_4" "No..." 600>>]
</div>/*#
#desc: strict drugs: drug takes effect
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "sissy_pill_mk1" 5>>
<<if setup.checkItemOwned("pink_pill")>>
<<addItem "sissy_pill_mk1" 1>>
<<removeItem "pink_pill">>
<</if>>
<<set _odStyle = "strict">>
<<include "pinkPillmk1odUnlocks">>
<<set _trash = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<storeVisual $player $npc_manager>>
<<if !$player.sec_style.body.pinkpill>>
<<set $player.sec_style.body.pinkpill = "strict">>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
>>
<</if>>
<<set $npc_work_doctor.profile = true>>
<<if setup.getWillpower() > 1>>
<<set $player.willpower.current = 1>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<switch $npc_hucow.stage>>
<<case 0 1>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_0")>>
<<case 2>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_1")>>
<<case 3>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_2")>>
<<case 4>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_3")>>
<<default>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_manager") setup.charImage("npc_work_doctor") setup.charImage("npc_hucow","npc_hucow_4")>>
<</switch>>
<div id="invframe" class="scrolltext">
Since the moment <<=setup.getNpcName("npc_manager","formal")>> found the drugs in her food you have been at her mercy, and your attempts to resist swallowing fare no better than your prior efforts at resistance. You taste something sweet, and a little fruity... and then it is drink or drown as you are forced... and shortly later enthusiastically gulping down the pink liquid the machine is pumping into you.<br>
<br>
With each gulp your resistance fades, you start to wonder what was even going on... after all this pink stuff tastes so good... and makes you feel even better!<br>
<br>
You feel the grip on the back of your head relax, but you hardly care, at this point you are sucking eagerly, slurping enthusiastically on the wonderful cock between your lips, in near ecstasy as you drink more and more.<br>
<br>
<<if $scene.breasts && $scene.hairChange>>
From a distance you feel your body change, <<if $scene.breasts>>sprouting breasts<<else>>your breasts swelling even larger<</if>> as blonde hair cascades down from your head.
<<elseif $scene.breasts>>
From a distance you feel your body change, <<if $scene.breasts>>breasts sprouting from your chest<<else>>your breasts swelling even larger<</if>> to compliment your long, bimbo-blonde hair.
<<elseif $scene.hairChange>>
From a distance you feel your body change, blonde hair cascading down from your head to match your already large breasts.
<</if>>
Resistance, thoughts... time, you lose track of them all as you suck for all you have until the machine goes dry and you let out a forlorn whine.<br>
<br>
Without the constant injection of... whatever it was that you were drinking, you're able to collect yourself enough to be aware of your surroundings, rather than your entire focus being consumed by, well... consuming every last drop the wonderful, wonderful artificial cock would give you.<br>
<br>
"@@.npc_work_doctor;... again, dosing her this heavy, this early, may have side effects, and she will need to go on a sustained regime, lest she go into withdrawal.@@" <<if $npc_work_doctor.profile>><<else>>the doctor<</if>> is back to being sucked off by <<his npc_work_doctor>> lab assistant as <<he npc_work_doctor>> explains the situation to your manager.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks down at you, "@@.npc_manager;you hear that? No more trying to sneak pills into my lunch, you need those for your own health!@@"<br>
<br>
You nod and smile. And why wouldn't you? Even without being able to drink more of the yummy pink stuff you feel happy... happy and obedient... and VERY horny as you absent-mindedly slurp on the artificial phallus still between your lips.<br>
<br>
<<printThought "<<getWordGod>>... I wish I had a real cock to suck on... or maybe to fuck me? Or both? Mmm... both sounds good...">><br>
<br>
You feel like you're moving underwater as <<=setup.getNpcName("npc_manager","formal")>> drags you back to your feet and someone presses pills into your hand.<br>
<br>
"@@.npc_work_doctor;One a day should do it — but remember not to mix with alcohol. After what you have just gone through, well... another overdose could have quite the intense effects.@@"<br>
<br>
[<<moveTo "event_pink_pill_strict_5" '<<=setup.getNpcName("npc_manager","formal")>> leads you out of the lab...' 300>>]
</div>/*#
#desc: strict drugs: back to work
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You follow along obediently as <<=setup.getNpcName("npc_manager","formal")>> leads you back up the hall to the elevator. The sight of your reflection standing next to her brings a smile to your face. You're so glad to have such a strong manager looking out for you. You can't quite recall what brought you down here in the first place, but you feel so warm and fuzzy and happy, well... it must have been good, and you smile even wider knowing that, if you take your pills and stay obedient, you'll surely get more rewards like this in the future!<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> does not say anything more as you ride back down to your office, merely leaving you at your desk as you smile and get to work...<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" 'Get to work.' 180>>]
</div>/*#
#desc: manager eats sushi off of you
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
/% TODOfuture; make this a "working lunch" with more people %/
<<if $scene.strip>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $scene.do_not_bother_manager = true>>
<<if $scene.strip>>
<<changeHorny 30>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 5 'almost' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 4 'almost' $SEEN_FRIEND>>
<</if>>
<<set $player.work.foodID = ''>>
<<set $scene.foodDelivery.done=true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.strip>>
She smiles as you quickly shed your clothing, hungrily admiring you before motioning for you to lay down across her desk. With a grin she brandishes her chopsticks and begins arranging her meal across your naked body.<br>
<br>
"@@.npc_manager;I do so enjoy Nyotaimori@@" she states. "@@.npc_manager;And you really do make just such a lovely platter...@@" she adds, finishing off by mixing up a bowl of wasabi soy sauce to place atop your belly. "@@.npc_manager;Perfection.@@" she concludes, sitting down and beginning to eat.<br>
<br>
She takes a leisurely time with her meal, savouring every bite while also spending time teasing you with chopsticks; pinching your nipples, <<if !setup.checkItemTypeWorn("cage")>>and teasing between your legs<<else>><<if setup.isCage()>>poking at your cage<<else>>druming on the front of your chastity belt<</if>><</if>>; by the time she has finished her meal you are feeling very hot and bothered.<br>
<br>
"@@.npc_manager;Hmm, perhaps I should send you back for another roll, I am still feeling a bit peckish...@@" You freeze, suddenly worrying that she might order you to return to the cafeteria naked as you are.<br>
<br>
She dispels the tension with a chuckle. "@@.npc_manager;Ooooh, a full body blush, how utterly adorable! Fortunately for your sense of modesty, well, however much of that you have left, I would so much rather keep your loveliness to myself... of course that does not mean I cannot enjoy a little nibble...@@"<br>
<br>
Leaning forward she goes straight for your teased and diamond-hard nipples, her tongue making circles before finishing off with a quick little bite. You gasp only to moan louder when her hand snakes south, bypassing your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>> to plunge deep between your legs.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
"@@.npc_manager;Very nice@@" she whispers, her fingers toying with the <<=setup.getItemTypeName("plug")>> inside of you. "@@.npc_manager;All plugged and filled like a good <<if $fetish.sissy>>SISSI <</if>>Secretary. Well, good <<if $fetish.sissy>>SISSIs<<else>>girls<</if>> get rewarded...@@"<br>
<br>
You moan in pleasure as she resumes nibbling on your nipples, her fingers toying with your plug, your naked body trembling as she builds you up to a soft, but fulfilling analgasm that leaves you panting.
<<else>>
"@@.npc_manager;Mmm, you like that?@@" She asks, plunging two fingers into your rear and curling them up to massage your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
Your moan of pleasure is in clear agreement with her inquiry and she resumes licking and nibbling at your sensitive nipples, her fingers below pumping in and out until you jolt and leak <<if !setup.checkItemTypeWorn("cage")>>down your leg<<else>>out <<if setup.isCage()>>of your cage<<else>>from under your belt<</if>><</if>> with a powerful analgasm.
<</if>>
<br><br>
"@@.npc_manager;Good girl. That should give you a nice clear head to focus on your afternoon duties.@@"<br>
<br>
<<if $fetish.cum && $player.body_ref.cumProduction > 0 && $player.body_ref.penis>>
She presents her palm, now covered in cum that trickled out of your prison, for you to lick clean, smiling at your efforts before motioning for you to depart.
<<else>>
She smiles and motions for you to depart.
<</if>>
You gather your clothes and thank her.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Get dressed and leave her office." 600 "<<useClothSetPop 'tmp'>><<incrementEmotion 'affection' 'npc_manager' 1>><<set $player.timebased.horny = 0>>">>]
<<else>>
Her gaze momentarily narrows when you fail to begin removing clothes.<br>
<br>
"@@.npc_manager;Disappointing, I thought by now you had learned to be properly obedient, but it seems that more training remains... oh well, your loss.@@"<br>
<br>
<<printThought "Damn, why did I hesitate?">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1 "<<incrementEmotion 'anger' 'npc_manager' 1>>">>]
<</if>>
</div>/*#
#desc: ask for help from manager after delivering lunch
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.affection < $npc_manager.anger || $npc_manager.flags.evil == 1>>
Having made your request you await her response only for her gaze to narrow.<br>
<br>
"@@.npc_manager;Really? After all you have done you expect me to get you off? I think not, go back to work and stew. With luck that will put you in a better mindset to be a good <<if $fetish.sissy>>SISSI <</if>>Secretary in the future.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1>>]
<<elseif !$scene.foodDelivery.done>>
Having made your request you await her response only for her gaze to narrow.<br>
<br>
"@@.npc_manager;How about you attend to your duties, notably, bringing me my lunch, and THEN you can ask for a bit of help with your... things.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1>>]
<<else>>
<<if $scene.foodDelivery.foodItem == 'food_sushi'>>
She looks up at you with a crafty smile as she opens up her lunch.<br>
<br>
"@@.npc_manager;Help you out? Oh... I have just the perfect idea, strip, now.@@"<br>
<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Get naked as instructed." 60 "<<set $scene.strip=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Change your mind." 60 "<<set $scene.strip=false>>">>]
<<else>>
Sliding her meal in front of her she considers you for a moment. "@@.npc_manager;Hmm, I suppose I have some time, but I want to eat first, how about you crawl under my desk and earn your reward while I enjoy... lunch.@@"<br>
<br>
[<<moveTo "event_work_lunch_assistance_2" "Crawl under her desk." 60 "<<set $scene.crawl=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_2" "Change your mind and go back to your desk." 60 "<<set $scene.crawl=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: manager asks you to go under her desk to earn your lunch reward
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.crawl>>
<<applyExperience 'submission' 7 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.crawl>>
Dropping to your hands and knees, you crawl around the side and under her desk as she invitingly spreads her legs for you.<br>
<br>
Looking up you consider how you should "earn" your reward.<br>
<br>
[<<moveTo "event_work_lunch_assistance_3" "A foot massage should do the trick." 60 "<<set $scene.feet=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_3" "Actually, you're feeling a bit peckish yourself..." 60 "<<set $scene.feet=false>>">>]
<<else>>
Changing your mind, you excuse yourself from the room, bracing for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> response, but she merely shrugs as she munches her meal.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave her office." 1>>]
<</if>>
</div>/*#
#desc: massage managers feet or eat her out before lunch reward
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.feet>>
<<if setup.getTotalValue("foot") > 0>>
<<if setup.getTotalValue("foot") > 10>>
<<applyExperience 'foot' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'foot' 3 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<setThreshold 'foot' 'foot_massages' 'manager_help'>>
<</if>>
<<else>>
<<applyExperience 'oral' 10 'normal' $SEEN_FRIEND>>
<<if !$player.virgin.cunnilingus>>
<<set $player.virgin.cunnilingus = "npc_manager">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<<if setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_7') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_7'
7
'event_psychiatrist_theme_good_girl_oral_manager_1'
true
>>
<</if>>
<<if $player.flags.special_skills.cunnilingus_training>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.feet>>
Sitting back, you reach for her foot, gently removing her shoe before commencing with one of your famous foot rubs. You hear her purr in contentment as you set to the task of massaging out all of the tension from her feet and calves.<br>
<br>
<<if setup.getTotalValue("foot") >= 20>>
You worship your <<=ps(setup.getNpcName('npc_manager', 'title'))>> feet with utter devotion, kissing and licking from toes to heel, luxuriating in her scent and feel as you show your total dedication to this most wonderful of duties.
<<elseif setup.getTotalValue("foot") > 10>>
Moving beyond a simple massage you lovingly worship her feet, using your tongue and lips to kiss and lick alongside your caressing fingers, delighting in her scent as you thoroughly clean and massage each appendage in turn.
<<else>>
Your hands work their magic, searching out the slightest knot or tension as you work your way over and around each foot and up her calves.
<</if>>
<<else>>
Crawling forward, you lean your head in between her thighs, pulling her lovely red panties to one side as you extend your tongue.<br>
<br>
"@@.npc_manager;Mmmm,@@" she sighs as you begin licking and nibbling her deliciously delightful secret garden. With one hand she gently pats your head in approval as your tongue searches for pockets of pleasure.<br>
<br>
<<if $player.flags.special_skills.cunnilingus_training>>
As you dig deep into your training it becomes something of a contest: your honed skills against <<=ps(setup.getNpcName('npc_manager', 'formal'))>> consummate self-control.<br>
<br>
She holds out longer than you think should be possible, your lips and tongue straining until you feel her settle back, finally accepting the climax you desperately yearn to provide.<br>
<br>
Her thighs tighten around your head, her hand gripping you by the hair and pulling you in as her body shudders and she lets out a satisfied moan. Your vision starts to swirl as you struggle to breathe anything other than her rich scent before she finally relaxes, sighing in post-orgasmic satisfaction. "@@.npc_manager;Well, well, <<=setup.getNpcName("npc_development","formal")>> really does not disappoint in her instruction, that was... invigorating.@@"<br>
<br>
You pant, gasping out a thanks for being permitted to serve your <<=setup.getNpcName('npc_manager', 'title')>> in this way as she slides back from the desk and motions for you to emerge from the leg cubby.
<<else>>
Despite your best efforts, you find yourself unable to push her to orgasm, your <<=setup.getNpcName('npc_manager', 'title')>> displaying her typical absolute control, clearly appreciating your efforts, but in no way being overcome by the pleasure you are providing. Though you would gladly sup on her delicious buffet for the rest of the afternoon, it is all too soon that she finishes her meal.<br>
<br>
"@@.npc_manager;Very nice,@@" she purrs in approval, sliding back from the desk and motioning for you to emerge from the leg cubby.
<</if>>
<</if>>
<br><br>
Back on your feet, she soon has you bent over the desk, your bottom exposed as you hear the "snap" of a glove.<br>
<br>
[<<moveTo "event_work_lunch_assistance_4" "Relax." 300>>]
</div>/*#
#desc: manager fingers/fists you as lunch reward
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("anal") > 10>>
<<applyExperience 'anal' 16 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 4 'very' $SEEN_FRIEND>>
<</if>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
Taking a firm hold of its base, she gently extracts your <<=setup.getItemTypeName("plug")>> and you wiggle your butt in anticipation of what is to come next.
<</if>>
<br><br>
A pair of rubber hands trace softly across your bare bottom, <<if $player.body_ref.penis>><<if $player.body_ref.cumProduction > 0>>putting a condom on your<<else>>completely bypassing your<</if>> <<getWordMyPenis>> dangling below<<else>>completely bypassing your crotch<</if>> as they gently squeeze and slowly circle inward until a finger begins to probe at your trembling rear hole.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
Your expert hole easily takes two fingers, then a third and you moan in delight as, after she finishes with a quick lubrication you feel her entire fist slide into you. Your eyes roll back in your head as you stretch around her knuckles and then she thrusts forward, your sphincter locking around her wrist only for her to slowly probe deeper.<br>
<br>
You are in filled <<if $fetish.sissy>>sissy<<else>>girl<</if>> heaven, your <<if $player.body_ref.penis>><<getWordMyPenis>> twitching<<else>>cunt dripping<</if>> in delight, your focus so firmly on the gaping delights happening in your ass you barely even notice something <<if $player.body_ref.penis>>brushing over your dangling member<<else>>rubbing against your clit<</if>>.<br>
<br>
"@@.npc_manager;Such a well-trained <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, you are nearly bottomless!@@"
<<else>>
Two fingers become three and then four as she lubricates your hole and works you wider. "@@.npc_manager;So gapey! You love this don't you?@@"<br>
<br>
Panting and drooling, on her desk is the closest you can get to a response as her gloved fingers massage your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> and stretch you wide.<br>
<br>
"@@.npc_manager;Mmm, I bet I could fit my whole hand in here... would you like that? To feel my entire fist inside your <<if $player.body_ref.vagina>><<if $fetish.sissy>>SISSI <</if>>ass<<else>><<if $fetish.sissy>>SISSI<<else>>girl<</if>> hole<</if>>?@@"<br>
<br>
You moan desperately as you feel something brush over your <<if $player.body_ref.penis>>dangling <<getWordMyPenis>><<else>>crotch<</if>>.<br>
<br>
"@@.npc_manager;Very well, since you asked so nicely, open wide!@@"<br>
<br>
With a forceful, slippery thrust her knuckles stretch you wide enough to nearly burst, and then she is through, your sphincter clamping down on her wrist as you pant and try to adjust to the mind-blowing fullness.
<</if>>
<br><br>
Groaning in pleasure, you feel her fist shifting inside of you, clenching and unclenching, your hole stretched wide to accommodate her arm as she intimately works you like a puppet.<br>
<br>
Your heart pounds as the pleasure builds higher and higher until you can rise no further and your entire body shudders, clamping down on her intruding limb as you leak joy<<if $player.body_ref.penis>> out of your <<getWordMyPenis>><</if>>.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
One finger, then another, slide into your hole, enough to test your growing skill while remaining pleasurable, VERY pleasurable as her fingertips curl deeper to begin massaging your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.
<<else>>
As slender as it is, her finger is still enough to focus your attention as it slides into your still novice bum. A gasp turns to a moan as her finger curls <<if $player.body_ref.penis>>towards your prostate<<else>>inside your rear<</if>>, gently massaging it and sending waves of pleasure through your body as you surrender to this forbidden thrill.
<</if>>
<br><br>
"@@.npc_manager;Good girl. I like to call this the <<if $fetish.sissy>>SISSI<<else>>girl<</if>> button, because playing with it turns even the most reticent girls on to happy obedience. You seem particularly sensitive in here.@@" She states, adding another finger to the mix, the added stretch only enhancing your pleasure as she continues to stroke your happy <<if $player.body_ref.penis>>prostate<<else>>bottom<</if>>. "@@.npc_manager;Oh, you really were in need of <<if $player.body_ref.penis>>a milking<<else>>some relief<</if>>, I do not think it will be much longer!@@"<br>
<br>
You can only moan your agreement with her assessment — gasping in analgasm as she pushes you over the edge barely noticing a fleeting contact against your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>> before you ooze your excitement.
<</if>>
<br><br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
Lying face down as you catch your breath and recover you feel her withdrawal followed by a brief tug on your <<getWordMyPenis>> before she slides into your field of view holding a full condom.<br>
<br>
"@@.npc_manager;Here you go,@@" She states, bringing the condom to your lips. "@@.npc_manager;Enjoy your dessert!@@"<br>
<br>
The scent of your emission is strong, the condom almost to your lips...<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
[<<moveTo "event_work_lunch_assistance_5" "Slurp up those delicious dick drippings!" 60 "<<set $scene.drink_cum=true>>">>]<br>
[@@.link_locked;Pass up an opportunity to eat cum? Never!@@]
<<elseif setup.getTotalValue("submission") > 10>>
[<<moveTo "event_work_lunch_assistance_5" "Obediently slurp it up." 60 "<<set $scene.drink_cum=true>>">>]<br>
[@@.link_locked;As disgusting as the prospect is, you are too obedient to refuse her offer.@@]
<<elseif setup.getTotalValue("cum") < 5>>
[<<moveTo "event_work_lunch_assistance_5" "Choke it down." 60 "<<set $scene.drink_cum=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_5" "Refuse the disgusting offer." 60 "<<set $scene.drink_cum=false>>">>]
<<else>>
[<<moveTo "event_work_lunch_assistance_5" "Swallow it." 60 "<<set $scene.drink_cum=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_5" "Try to decline." 60 "<<set $scene.drink_cum=false>>">>]
<</if>>
<<else>>
Lying face down as you catch your breath and recover you feel her withdraw. You slump only for her to lightly slap your ass and cause you to jump.<br>
<br>
"@@.npc_manager;Come along, then, my dear. No time for lying down on the job, you need to be back to work!@@"<br>
<br>
You shudder slightly, but manage to make it back to your feet, bowing awkwardly before you head for the door.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave her office." 60>>]
<</if>>
</div>/*#
#desc: manager feeds you your cum after lunch reward
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 8 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<<if $scene.drink_cum>>
<<set $player.timebased.horny = 10>>
<<applyExperience 'submission' 6 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 5 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.drink_cum>>
Your lips part eagerly and obediently, slurping the thick salty contents out of the condom as your tongue reaches towards the tip in search of every last drop of your still-warm production.<br>
<br>
"@@.npc_manager;Good girl,@@" she states before tossing the drained condom in the trash and leaning away along with her rubber gloves.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
She gently slides the re-lubricated plug back into your hole before fixing your clothes and helping you back to your feet.
<<else>>
Giving your rear a final congratulatory squeeze she fixes your clothes and helps you back to your feet.
<</if>>
<br><br>
"@@.npc_manager;Well, I hope that tides you over and keeps your mind clear for the afternoon, enjoy the rest of your lunch, I need to get back to work.@@"<br>
<br>
Curtsying in thanks, you head for the door.
<<else>>
You shake your head and try to stand up only for her to firmly hold you down, one hand taking control of you by the hair while the other brings the opening of the condom to your lips.<br>
<br>
"@@.npc_manager;So resistant! Come on now, a proper <<if $fetish.sissy>>SISSI<<else>>girl<</if>> should be delighted at the prospect of cleaning up after herself!@@"<br>
<br>
Unable to resist you wrinkle your nose as the condom is pressed between your lips and its gooey contents are squeezed into your mouth. She waits until you have finished swallowing the bitter, salty sludge before tossing the condom and gloves away and allowing you to stand back up.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
Dismissively she hands you your plug, monitoring as you slide it back where it "belongs" before fixing your clothes and heading for the door.
<<else>>
Returning to her desk she barely even pays attention as you fix your clothes and scurry towards the door.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave her office." 60>>]
</div>[<<moveTo "room_office_lunchbreak_toilet_male" "Men's Bathroom." 60 "<<useClothSetPush 'lunch'>>">>]
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom." 60 "<<useClothSetPush 'lunch'>>">>]
<</if>>/*#
#desc: office men's bathroom
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location = "Work Men's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
The men's room closest to your office on Floor <<if $npc_manager.stage >=4>><<=$player.work.upperFloorNumber>><<else>><<=$player.work.floorNumber>><</if>>. They are very, very clean. You think you could change your clothes in a stall if you want to, they look spacious enough.<br>
<br>
<<include "lunchMaleMakeup">>
<<if $player.timebased.horny >= 25>>
[<<moveTo "event_work_bathroom_masturbate_1" "Setup in a private stall and masturbate." 300 "<<if $player.timebased.horny > 50>><<changeHorny -20>><<else>><<changeHorny 20>><</if>>">>]<br>
<<else>>
[@@.link_locked;You are not horny enough to masturbate right now.@@]<br>
<</if>>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $events.hasOwnProperty("first_time_pink_home") && setup.checkItemSetWorn("secretary_pink")>>
Looking at your reflection, in this pink, feminine outfit you almost don't recognise yourself... <<printThought "or maybe I see myself TOO well...">> you shiver slightly, <<printThought 'best to get back to my desk before <<=setup.getNpcName("npc_manager","formal")>> comes looking for me...'>><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_lunchbreak_toilet_male" "Change back into your morning attire." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_lunchbreak_toilet_male" "Change back into your morning attire." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<br>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_male" "Change back into your morning attire." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<br>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_lunchbreak_toilet_male" "Change back into your morning attire." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_lunchbreak_toilet_male" "Change back into your morning attire." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div><<if setup.getTotalValue("makeup") > 0>>
<<if $player.sec_style.clothing.makeup == "">>
[@@.link_locked;You do not think you are ready to put on makeup in the work bathroom.@@]
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Work Bathroom">><<set $scene.return_makeuproom="room_office_lunchbreak_toilet_male">><<set $scene.makeuproom_image="./images/locations/company_toilet.png">><<set $scene.return_makeuproomtext="Finished.">>'>>]
<</if>>
<br><br>
<</if>>/*#
#desc: office women's bathroom
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
The ladies' restroom closest to your office on Floor <<if $npc_manager.stage >=4>><<=$player.work.upperFloorNumber>><<else>><<=$player.work.floorNumber>><</if>>. They are very, very clean. You think you could change your clothes in a stall if you want to, they look spacious enough.<br>
<br>
<<include "lunchFemaleMakeup">>
<<if $player.timebased.horny >= 25>>
[<<moveTo "event_work_bathroom_masturbate_1" "Setup in a private stall and masturbate." 300 "<<if $player.timebased.horny > 50>><<changeHorny -20>><<else>><<changeHorny 20>><</if>>">>]
<<else>>
[@@.link_locked;You are not horny enough to masturbate right now.@@]
<</if>>
<br><br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $events.hasOwnProperty("first_time_pink_home") && setup.checkItemSetWorn("secretary_pink")>>
Looking at your reflection, in this pink, feminine outfit you almost don't recognise yourself... <<printThought "or maybe I see myself TOO well...">> you shiver slightly, <<printThought 'best to get back to my desk before <<=setup.getNpcName("npc_manager","formal")>> comes looking for me...'>><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_lunchbreak_toilet_female" "Change back." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_lunchbreak_toilet_female" "Change back." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<br>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Change back into your morning attire." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<br>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_lunchbreak_toilet_female" "Change back into your morning attire." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_lunchbreak_toilet_female" "Change back." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div><<if setup.getTotalValue("makeup") > 0>>
<<if $player.sec_style.clothing.makeup == "">>
[@@.link_locked;You do not think you are ready to put on makeup in the work bathroom.@@]
<<else>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Work Bathroom">><<set $scene.return_makeuproom="room_office_lunchbreak_toilet_female">><<set $scene.makeuproom_image="./images/locations/company_toilet.png">><<set $scene.return_makeuproomtext="Finished.">>'>>]
<</if>>
<br><br>
<</if>>/*#
#desc: office lunchroom
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.number = random(1,10)>>
<</if>>
<<if !$scene.hasOwnProperty('number')>>
<<set $scene.number = random(1,10)>>
<</if>>
<<set _tmpTime = Math.round(random($scene.number,$scene.number*4)*60)>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTagCarried("lunch")>>
You are in the canteen on the 50th floor. There are still many people around, but you already got some food.<br>
<br>
<<if $npc_manager.stage == 5 && $npc_manager.flags.evil == 1>>
You notice that there is a dessert on offer in the form of a small strawberry tart.<br>
<br>
<<if ["voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
<<printThought "Hmm, <<=setup.getNpcName('npc_manager', 'formal')>> might enjoy that, and it might remind her of the times I anticipated her plans for me...">>
<<else>>
<<printThought "Hmm, <<=setup.getNpcName('npc_manager', 'formal')>> might enjoy that, but it would be a bit out of character compared to most of my previous behaviour...">>
<</if>>
<br><br>
[<<moveTo "event_manager_stage5_lunch_1" "Grab the tart and deliver lunch." 60 "<<addItem 'strawberry_tart'>>">>]<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 60>>]<br>
<<include workLunchbathroom>>
<<else>>
You enter Social Interaction Service Syndicate Inc.'s canteen on Floor 50. It's not the only canteen in this building, but the closest to your office.
<<if $scene.foodDelivery.done>>
You already fetched some food today, so you see no reason to stay in line once more.<br>
<br>
<<else>>
<<switch $scene.number>>
<<case 1 2>>
There are only a few people here in line for food. This should only take a couple of minutes.
<<case 3 4 5>>
There are some people in front of you. This looks like it will take at least 5 minutes, maybe more.
<<case 6 7 8>>
There are a lot of people in front of you. This could take 10 minutes, but you assume it will be even longer.
<<case 9 10>>
The canteen is filled to the bursting point with people. This might take longer than your lunch break if you're unlucky.
<</switch>>
<br><br>
<<include "buyFoodOptions">>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 60>>]<br>
<<include workLunchbathroom>>
<</if>>
</div><<if $scene.fromDayskip>>
<<=setup.getNpcName('npc_manager', 'formal')>> gave you an order for <<getFood>>.<br>
<br>
<</if>>
<<if setup.checkItemTagCarried("lunch") && !($scene.location == "Company Canteen" && $scene.checkedRandom)>>
<<printThought "Wait... I already purchased lunch for <<=setup.getNpcName('npc_manager','formal')>>, what am I even doing here?">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Back to the office." 180>>]
<<elseif $scene.foodDelivery.done && !($scene.location == "Company Canteen" && $scene.checkedRandom)>>
<<printThought "Wait... I already delivered <<=ps(setup.getNpcName('npc_manager','formal'))>> lunch, why did I come back here?">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Back to the office." 180>>]
<<else>>
<<if _tmpTime>>
[<<moveTo "room_office_lunchbreak_canteen_buyfood" "Wait in line for the food." _tmpTime>>]
<<else>>
[<<moveTo "room_office_lunchbreak_canteen_buyfood" "Place your order." 180>>]
<</if>>
<</if>>/*#
#desc: choose food to purchase at office lunchroom
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.metCook = false>>
<<if !$npc_cook.profile>>
<<set $scene.metCook = true>>
<<set $npc_cook.profile = true>>
<</if>>
<<if $npc_cook.call_player == "Laddie" && $player.sec_style.clothing.female != "">>
<<set $npc_cook.call_player = "Lassie">>
<</if>>
<<set $scene.lunchDumb = setup.getTotalValue("bimbofication") > 5 && random(1,6) > setup.getTotalValue("smart")>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
<<if $scene.foodDelivery.cookDelivery>>
<<=setup.getNpcName('npc_cook', 'formal')>> smiles at you apologetically. "@@.npc_cook;Sorry ah could nae make the delivery today — yer manager was wanting <<getFood>>, right?@@"
<<elseif $scene.metCook>>
You manage to approach the Nutritional Sustenance Distribution Operative. <<His npc_cook>> augmented reality tag says <<=setup.getNpcName('npc_cook', 'formal')>>. That's a rather unusual name and it sounds strangely familiar. You're certain you've heard it before, but you just can't think where. It seems like <<=setup.getNpcName('npc_cook', 'first')>> caught you staring at <<him npc_cook>>.<br>
<br>
"@@.npc_cook;Is there something I can help ya with, <<callPlayer "npc_cook">>? There something on ma face? Come on, <<callPlayer "npc_cook">>, I ain't got no time for all this, so what shall it be, yah? Sustenance, is that what yah want? Sustenance, <<callPlayer "npc_cook">>? Food. Dinna. Tha grub. Tha nosh. Substance consumed to provide nutritional support for an organism, usually of tha plant or tha animal and contains tha essential nutrients, such as carbohydrates, fats, proteins, vitamins, an' minerals.@@"<br>
<br>
You nod timidly.<br>
<br>
"@@.npc_cook;Then select a something from the menu, <<callPlayer "npc_cook">>, will yah? And make haste, tha nice lads and lassies behind you might wanna grub as well, yah?@@"
<<else>>
You reach the front of the line and approach the Nutritional Sustenance Distribution Operative also known as <<=setup.getNpcName('npc_cook', 'first')>>.<br>
<br>
"@@.npc_cook;What shall it be today, <<callPlayer "npc_cook">>?@@"
<</if>>
<br><br>
<<if $scene.lunchDumb>>
You, like... try to remember what <<=setup.getNpcName("npc_manager","formal")>> ordered but, like... thinking is so hard! And you've forgotten by the time you get to the front of the line.<br>
<br>
[<<moveTo "room_office_lunchbreak_canteen" "Like... I guess I just grab something at random?" 60 "<<addRandomFood>>">>]<br>
<<elseif setup.getTotalValue("smart")*2 < setup.getTotalValue("bimbofication") && $player.timebased.horny >= (1-setup.getTotalValue("bimbofication")/30)>>
You, try to remember <<=ps(setup.getNpcName("npc_manager","formal"))>> ordered but your slut-brain is too powerful and you can't recall what she wanted.<br>
<br>
[<<moveTo "room_office_lunchbreak_canteen" "Grab something at random." 60 "<<addRandomFood>>">>]<br>
<<else>>
<<if $scene.shortcutSuccess>>
Despite the distraction you are able to recall that <<=setup.getNpcName("npc_manager","formal")>> wanted <<getFood>>.<br>
<br>
<</if>>
<<set $scene.postLunchScene = "room_office_lunchbreak_canteen">>
<<printFoodList $scene.postLunchScene>>
<</if>>
<<if -1 != setup.findThemeId('npc_psychiatrist', 'npc_cook', 'theme_psychiatrist_cook_3')>>
<<if $scene.npc_cookvisit>>
[@@.link_locked;You have already visited <<=setup.getNpcName("npc_cook","first")>> today.@@]<br>
<<else>>
[<<moveTo "event_cook_training_root" 'Ask <<=setup.getNpcName("npc_cook","first")>> if <<he npc_cook>> has some time...' 180>>]<br>
<</if>>
<</if>>
</div>/*#
#desc: start to work having not delivered manager's lunch
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if setup.checkItemTagCarried("lunch")>>
<<if setup.checkItemInInventory($player.work.foodID)>>
<<set $scene.foodDelivery.right = true>>
<<deleteItem $player.work.foodID>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<set $scene.foodDelivery.right = false>>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemTypeCarried("lunch")>>
<<deleteItem $scene.foodDelivery.foodItem>>
<<set $npc_manager.wrongfood+=1>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<set $scene.foodDelivery.outcome = "">>
<<set $scene.foodDelivery.noFood = false>>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<applyStress 1>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<set $scene.foodDelivery.noFood = true>>
<<applyExperience 'bimbofication' 4 'little' $SEEN_FRIEND>>
<<applyStress 2>>
<<set $npc_manager.nofood+=1>>
<<set $scene.nofood = $npc_manager.nofood>>
<<if $npc_manager.nofood == 2>>
<<applyExperience 'bdsm' 4 'normal' $SEEN_FRIEND>>
<</if>>
<<if $scene.nofood >= 3 && $npc_manager.stage > 1 && !$player.flags.mealplan.unlocked.includes("boiless")>>
<<set $scene.nofood = 3>>
<</if>>
<</if>>
<<set $scene.foodDelivery.done = true>>
<<if $npc_manager.stage == 1 && $player.work.advance > 0>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are about to resume your work as you notice an angry looking <<=setup.getNpcName('npc_manager', 'formal')>> standing in the doorway to her office.
<<if $now.getUTCHours() >= 12 && $now.getUTCMinutes() > 30>>
First she looks at her watch, then back at you while tapping her foot in a rhythm that's pretty much your heartbeat now. Looks like you've returned too late.<br>
<br>
<<set _timeAgo = (12-$now.getUTCHours())*60+($now.getUTCMinutes()-30)>>
<<if $scene.foodDelivery.noFood>>
"@@.npc_manager;<<=$player.first_name>>, where have you been? Your lunch time was over <<=_timeAgo>> <<if _timeAgo > 1>>minutes<<else>>minute<</if>> ago! And all that time and you forgot my lunch?@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>>, where have you been? Your lunch time was over <<=_timeAgo>> <<if _timeAgo > 1>>minutes<<else>>minute<</if>> ago! What is that in your hand anyway? It better be my lunch! I presume you got stuck in the canteen?@@"
<</if>>
<<else>>
<br><br>
"@@.npc_manager;<<=$player.first_name>>, have you forgotten about my food?@@"
<</if>>
<br><br>
<<if $scene.foodDelivery.noFood>>
You lower your head in shame and admit that you've neglected your duty to get her food from the canteen.<br>
<br>
<<if $npc_manager.stage == 1 && $player.work.advance > 0>>
"@@.npc_manager;Not just that — our agreement was that you would not just deliver my food — but feed it to me as well... you have quite betrayed my trust in extending you an advance. I am HIGHLY disappointed in you.@@"
<<else>>
"@@.npc_manager;Tsk. You can be such a ditz, <<=$player.first_name>>.@@"
<</if>>
<br><br>
<<if $player.flags.firstWorkDayDone>>
<<switch random(1,12)>>
<<case 1 2 3>>
"@@.npc_manager;You are acting like a brain-dead Bimbo. Maybe I should change your dress code to attire as one. Hmm... something for the todo list.@@"
<<case 4 5 6 7>>
"@@.npc_manager;Did not know you were aiming for the Bimbo Secretary Stereotype. If you keep it up, I will just have to start treating you as such.@@"
<<case 8 9 10 11 12>>
"@@.npc_manager;If you keep behaving like this, you may have to suffer the consequences.@@"
<</switch>>
<<else>>
"@@.npc_manager_dom;If you keep behaving like this, you will have to suffer the consequences.@@"
<</if>>
<br><br>
<<switch $scene.nofood>>
<<case 1>>
After a quick scolding, she seems to calm down a little bit.<br>
<br>
"@@.npc_manager;What am I ever going to do with you? This is part of your job. If you are unable to complete simple tasks like these, how can I ever trust you with more important things? Keep this behaviour up and I will have to let you go... or worse. And if this is your confused way to demand attention... there are other ways, I hunger for more than just... food, you know.@@"<br>
<br>
She disappears into her office leaving you trembling in her wake.
<<case 2>>
Her gaze narrows even further.<br>
<br>
"@@.npc_manager;Stand up, and bend over the desk. Perhaps a swift spanking will help you remember your duties in the future.@@"<br>
<br>
You start to move, but not quickly enough it would seem, and she grabs you with one hand and casually tosses you over the desk.<br>
<br>
<<printThought "Just how strong is she!?">><br>
<br>
Yanking your clothes down to reveal your bare bottom she lands a quick, hard *SMACK* with her hand causing you to yelp in surprised pain.<br>
<br>
"@@.npc_manager;Remember@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;To@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;Pick@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;Up@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;My@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager;Lunch.@@"<br>
<br>
*SMACK*<br>
<br>
She rhythmically states, punctuating each word with a slap as she alternates cheeks until you are quite red.<br>
<br>
"@@.npc_manager;Hmmff.@@" She states in conclusion. "@@.npc_manager;Do take a lesson from this, if you continue to fail I will have to apply a more... severe punishment.@@"<br>
<br>
Turning on her heels, she returns to her office leaving you to fix your clothes and gingerly sit back down in your chair.
<<case 3>>
<<if !$player.flags.mealplan.unlocked.includes("boiless") && $npc_manager.stage > 1>>
<<set _noleave=true>>
You're eating your lunch when <<=setup.getNpcName("npc_manager","formal")>> walks out of the office with a deep frown on her face. "@@.npc_manager;And just what do you think you are doing? Delivering my meal is one of your responsibilities — yet here I see you not just failing to do so, but eating yourself?@@"<br>
<br>
She walks across the room and casually knocks your food into the bin. "@@.npc_manager;New plan. If getting my lunch is proving such a challenge, we shall free up your time. I have been hearing some wonderful things about a meal replacement plan called Boil-Less — all the nutrition a growing <<if $fetish.sissy>>sissy<<else>>girl<</if>> needs, in efficient, drinkable form. That should free up your time to attend to my needs. Now go, the canteen is waiting — I will have your new meal delivered by the time you return home.@@"<br>
<br>
You look at your meal in the trash, then up at your scowling <<=setup.getNpcName("npc_manager","title")>> and scurry away to the canteen.<br>
<br>
[<<moveTo "event_strict_boiless_1" "Fetch her meal." 300>>]
<<else>>
She seems almost resigned after the initial scolding.<br>
<br>
<<if $npc_manager.stage > 1>>
"@@.npc_manager;So many failures. Sometimes I really fail to understand your thinking, but at this stage of your career it just is not worth my time to forgo feeding myself for making yet another attempt to sort you out.@@"
<<else>>
"@@.npc_manager;So many failures. Sometimes I really fail to understand your thinking, but right now I am more interested in food than attempting to discipline you.@@"
<</if>>
<br><br>
She storms past you without a further word, presumably off to canteen herself.
<</if>>
<<default>>
She seems almost resigned after the initial scolding.<br>
<br>
"@@.npc_manager;So many failures. Sometimes I really fail to understand your thinking, but right now I am more interested in food than attempting to discipline you.@@"<br>
<br>
She passes you without a further word, presumably off to canteen herself.
<</switch>>
<<else>>
You hand her the food you picked up from the canteen and she opens the box to glance inside. Looking back up at you, she adjusts her glasses.
<<if $npc_manager.stage == 1 && $player.work.advance > 0>>
"@@.npc_manager;Well, that is something, but now you do not have enough time to do the rest. Our agreement in exchange for your advance, was that you would get my food AND serve it to me.@@"<br>
<br>
She sighs and glances inside the package.
<<if $scene.foodDelivery.right>>
"@@.npc_manager;At least you got the order correct, but the rest...@@" She shakes her head as she walks back into her office.
<<else>>
"@@.npc_manager;And you failed to even fetch my order properly... an utter disappointment@@" She drops the food into the trash bin and storms back into her office. You jump at the viciousness with which she slams the door behind her.
<</if>>
<<elseif !$scene.foodDelivery.right>>
A single glance tells you that you've messed up somehow.<br>
<br>
"@@.npc_manager;Tell me <<=$player.first_name>>, does this look like <<getFood>>? Not really, does it? You are such an absent-minded ditz!@@"<br>
<br>
She drops the box into the trash bin and leaves for her office. You decide to not remind her that bin is for non organic waste only, deciding to empty it yourself later once she's gone.
<<else>>
Her mood seems to brighten a little bit.<br>
<br>
<<if ($now.getUTCHours()>=12&&($now.getUTCMinutes()>30))>>
"@@.npc_manager;Very good. I was getting hungry. The waiting time at the canteen is something you cannot overcome on your own. I have to find out if the high priority passes still exist.@@"
<<else>>
"@@.npc_manager;Very good. I was getting hungry. Please deliver this to my office as soon as possible in the future.@@"
<</if>>
She turns around and returns to her office, taking the food with her.
<</if>>
<</if>>
<<if !_noleave>>
<br><br>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' "Start to work." 60 "<<set $scene.foodDelivery.punished = true>>">>]
<</if>>
</div>/*#
#desc: start afternoon work having delivered food to manager
#status: FINISHED 0.4.0.0
#*/
<<set $scene.workEventReturn = "room_office_sissy_secretary_work_afternoon_work">>
<<set _plug = setup.getItemFromType("plug")>>
<<if _plug && _plug.startsWith("sissyomatic") && _plug.endsWith('_plug')>>
<<set $scene.dest = "room_office_sissy_secretary_work_afternoon_start">>
<<set $scene.code = "bad_plug">>
<<moveTo "debug_island">>
<<elseif $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn('cage')>>
<<initRoom>>
<<set $scene.code = 'no_chastity'>>
<<set $scene.dest = "room_office_sissy_secretary_work_afternoon_start">>
<<moveTo "debug_island">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _event=false>>
<<if !$scene.foodDelivery.done && !$scene.foodDelivery.punished>>
<<set _event=true>>
<<initRoom>>
<<moveTo 'room_office_sissy_secretary_work_afternoon_start_nofood'>>
<<else>>
<<set _food = setup.getFirstItemTypeCarried("lunch")>>
<<if _food>>
<<deleteItem _food>>
<</if>>
<<if ($npc_manager.stage > 2 || ($npc_manager.stage == 2 && $npc_manager.stagevalues[2].makeup)) && !$scene.first_makeup && !$scene.skipMakeupInspect>>
<<include "calcLunchMakeup">>
<</if>>
<<if $scene.inspection_failed>>
<<if $events.hasOwnProperty('hormones_checkin') && $events.hormones_checkin.trigger.date.getUTCDate() == $now.getUTCDate() && $now.getUTCMinutes() < 45>>
<<if $now.getUTCDay() == 5>>
<<postponeEvent 'hormones_checkin' 3>>
<<elseif $now.getUTCDay() == 4>>
<<postponeEvent 'hormones_checkin' 4>>
<<else>>
<<postponeEvent 'hormones_checkin' 1>>
<</if>>
<</if>>
<<set _event=true>>
<<initRoom>>
<<set _lunchEnd = setup.setNextDate($now, 0, $player.work.time_midday.hour, $player.work.time_midday.minutes)>>
<<set _tmpSeconds = setup.secondsToDate($now,_lunchEnd)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<<moveTo 'event_makeup_lunch_inspection'>>
<</if>>
<</if>>
<<set _lockCage = false>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _cage = setup.getItemFromType("cage")>>
<<set _lockCage = !$inventory[_cage].status.lock>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You sit at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. What will you do this afternoon?<br>
<br>
<<include thoughts_work>>
<<include "afterLunchWorkOptions">>
</div><<if $player.flags.bimbo_work.unlock>>
<<include "inspectionData_workSlutty">>
<<set $currentTasks.manager_morning_inspection_task.condition = "">>
<<set $currentTasks.manager_morning_inspection_task.finished = false>>
<</if>>
[<<link "Check work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if State.hasPlayed("event_secretary_style_structure_1") || $npc_manager.stage > 2>>
[<<moveTo "room_employee_tracking" "Employee Portal." 0 "<<set $scene.returnFromEmployee='room_office_sissy_secretary_work_afternoon_start'>>">>]<br>
<</if>>
<<set $scene.workChairReturn = passage()>>
<<if false>><<moveTo "event_work_chair_malfunction_1">><</if>>
<<printWorkChairOptions>>
<<if $scene.bimboPassed && $player.flags.bimbo_work.unlock>>
[@@.link_locked;Sluttily dressed as you are, you have no choice but to work the remainder of the day "bimbo style".@@]<br>
<<else>>
<<if Math.round($player.timebased.fatigue) <= 50 && !setup.calcErection(true)>>
<<if $tempEffects.hasOwnProperty('sissypill_mk1_od') && $tempEffects.sissypill_mk1_od ||
$tempEffects.hasOwnProperty('sissypill_mk2_od') && $tempEffects.sissypill_mk2_od>>
[@@.link_locked;The heavy load of drugs coursing through your system makes it impossible to focus enough to work hard.@@]<br>
<<elseif $tempEffects.hasOwnProperty('sissy_pill_mk1_withdrawal') && $tempEffects.sissy_pill_mk1_withdrawal>>
[@@.link_locked;The withdrawal effects from the wonderful pink pills has you too distracted and desperate to work hard.@@]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Work hard." 1 "<<set $player.timebased.fatiguemulti = 1.25>><<set $player.timebased.stressmulti = 0.75>><<set $player.work.style = 'hard'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>><<set $scene.bimboShift=false>>">>]<br>
<</if>>
<<else>>
<<if Math.round($player.timebased.fatigue) > ($player.timebased.fatiguemax/4)>>
[@@.link_locked;You're too exhausted to work hard.@@]<br>
<<elseif Math.round($player.timebased.fatigue) <= ($player.timebased.fatiguemax/4) && setup.calcErection(true)>>
[@@.link_locked;You're too horny to concentrate enough for this kind of work.@@]<br>
<<else>>
[@@.link_locked;Your head is too clouded with strange thoughts to concentrate.@@]<br>
<</if>>
<</if>>
<<if Math.round($player.timebased.fatigue) < ($player.timebased.fatiguemax/2) && !setup.calcErection(true)>>
<<if $tempEffects.hasOwnProperty('sissy_pill_mk1_withdrawal') && $tempEffects.sissy_pill_mk1_withdrawal>>
[@@.link_locked;The withdrawal effects from the wonderful pink pills has you too distracted and desperate to focus on your work.@@]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Work normal." 1 "<<set $player.timebased.fatiguemulti = 1>><<set $player.timebased.stressmulti = 0.5>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>><<set $scene.bimboShift=false>>">>]<br>
<</if>>
<<else>>
<<if Math.round($player.timebased.fatigue) >= ($player.timebased.fatiguemax/2)>>
[@@.link_locked;You're too exhausted to work normal@@]<br>
<<elseif Math.round($player.timebased.fatigue) < ($player.timebased.fatiguemax/2) && setup.calcErection(true)>>
[@@.link_locked;You're too horny to work normal.@@]<br>
<<else>>
[@@.link_locked;You don't think you can work normal today.@@]<br>
<</if>>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Work sloppy." 1 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'sloppy'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>><<set $scene.bimboShift=false>>">>]<br>
<</if>>
<<if $player.flags.bimbo_work.unlock>>
<<if $now.getUTCHours() >= $player.work.time_evening.hour-1 && !$scene.bimboPassed>>
[@@.link_locked;There is insufficient time to work bimbo this afternoon.@@]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Work bimbo." 1 "<<set $player.timebased.fatiguemulti = 0.5>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'bimbo'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>><<set $scene.bimboShift=true>>">>]<br>
<</if>>
<</if>>
<br>
<<if $player.flags.work_coffee.coffee_skill > 0 || $player.sec_style.submission.human_toilet != "">>
<<if $now.getUTCHours() < 15>>
<<if $scene.askAltWork>>
[@@.link_locked;You already tried asking about working an alternate afternoon shift.@@]
<<elseif $scene.managerOut>>
[@@.link_locked;<<=setup.getNpcName("npc_manager","formal")>> is not around to ask about an alternate afternoon shift.@@]
<<else>>
[<<moveTo "event_alternate_shift_ask" 'Ask <<=setup.getNpcName("npc_manager","formal")>> if you could work an alternate shift for the afternoon.' 60>>]
<</if>>
<<else>>
[@@.link_locked;There is not enough time left in the afternoon to work an alternate shift.@@]
<</if>>
<br><br>
<</if>>
<<include workMasturbationOptions>>
<<if State.hasPlayed("event_primrose_redemption_1_correct_footage") && !State.hasPlayed("event_primrose_redemption_2_lab_infiltrate_4")>>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_1" 'You are ready to infiltrate <<=ps(setup.getNpcName("npc_primrose", "formal"))>> lab.' 300 "<<set $scene.workEventReturn = 'room_office_sissy_secretary_work_afternoon_start'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_destroy_ai_5")>>
[@@.link_locked;You run "missions" for <<=setup.getNpcName("npc_boss", "formal")>> now, your time assisting <<=setup.getNpcName("npc_ai", "first")>> is no more.@@]<br>
<<elseif $npc_ai.stage >=2 && $now.getUTCDay() == 5 && !$npc_ai.flags.missions.connection && $npc_manager.stage >= 3>>
<<if $scene.ranMission>>
<<if "data_plug" == setup.getItemFromType("plug") && !$npc_ai.flags.missions.connection>>
[@@.link_locked;The massive, heavy plug <<=setup.getNpcName("npc_ai", "first")>> filling your ass is all the mission you can handle for today.@@]<br>
<<else>>
[@@.link_locked;You already ran a mission for <<=setup.getNpcName("npc_ai", "first")>> today, she does not appear to have anything else for you.@@]<br>
<</if>>
<<elseif $npc_manager.stage == 5 && !State.hasPlayed("event_ai_stage5_infiltrate_14")>>
[@@.link_locked;Until <<=setup.getNpcName("npc_ai", "first")>> has access to the corporate systems again, you cannot run missions for her.@@]<br>
<<else>>
[<<moveTo "event_ai_mission_voluntary" 'Hmm, there is a blinking icon, it looks like <<=setup.getNpcName("npc_ai", "first")>> has a mission for you.' 60 "<<set $scene.workEventReturn = 'room_office_sissy_secretary_work_afternoon_start'>>">>]<br>
<</if>>
<<elseif $npc_ai.flags.missions.generic_missions > 2 || $npc_ai.flags.missions.connection>>
<<if $scene.ranMission>>
<<if "data_plug" == setup.getItemFromType("plug") && !$npc_ai.flags.missions.connection>>
[@@.link_locked;The massive, heavy plug <<=setup.getNpcName("npc_ai", "first")>> filling your ass is all the mission you can handle for today.@@]<br>
<<else>>
[@@.link_locked;You already ran a mission for <<=setup.getNpcName("npc_ai", "first")>> today, she does not appear to have anything else for you.@@]<br>
<</if>>
<<elseif $npc_manager.stage == 5 && !State.hasPlayed("event_ai_stage5_infiltrate_14")>>
[@@.link_locked;Until <<=setup.getNpcName("npc_ai", "first")>> has access to the corporate systems again, you cannot run missions for her.@@]<br>
<<else>>
[<<moveTo "event_ai_mission_voluntary" 'Check if <<=setup.getNpcName("npc_ai", "first")>> has a mission for you.' 60 "<<set $scene.workEventReturn = 'room_office_sissy_secretary_work_afternoon_start'>>">>]<br>
<</if>>
<</if>>
<<if $npc_barista.flags.video.unlocked && $npc_barista.flags.video.viewed>>
[<<moveTo "event_barista_bathroom_message_3" 'Re-watch the video <<=setup.getNpcName("npc_barista", "nickname")>> cryptically gave you.' 60 "<<set $scene.workEventReturn='room_office_sissy_secretary_work_afternoon_start'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_footage_intro")>>
[<<moveTo "event_primrose_footage_root" 'Check out <<=setup.getNpcName("npc_primrose", "formal")>> footage.' 60 "<<set $scene.workEventReturn='room_office_sissy_secretary_work_afternoon_start'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_janitor_elevator_2_3")>>
<<if $scene.janitorService || $scene.janitorServiceFail>>
[@@.link_locked;You already <<if $scene.janitorServiceFail>>attempted to have<<else>>had<</if>> <<=setup.getNpcName("npc_janitor","first")>> serve you in person today.@@]<br>
<<elseif setup.hasFreeTime($now, $player, $currentTasks, 4100)>>
<<if State.hasPlayed("event_janitor_training_service_1")>>
[<<moveTo "event_janitor_training_service_1" 'Summon <<=setup.getNpcName("npc_janitor","first")>> to service you while you work.' 300 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'hard'>><<set $player.work.nowWorking = true>><<set $scene.workEventReturn='room_office_sissy_secretary_work_afternoon_work'>><<set $scene.first=false>>">>]<br>
<<else>>
[<<moveTo "event_janitor_training_service_1" 'Summon <<=setup.getNpcName("npc_janitor","first")>> for a lesson while you work.' 300 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'hard'>><<set $player.work.nowWorking = true>><<set $scene.workEventReturn='room_office_sissy_secretary_work_afternoon_work'>><<set $scene.first=true>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_janitor_training_service_notime" 'Summon <<=setup.getNpcName("npc_janitor","first")>> for a lesson while you work.' 60 "<<set $scene.janitorReturn=passage()>>">>]
<</if>>
<</if>>
<<if $npc_janitor.flags.subTrainingUnlock && !State.hasPlayed("event_janitor_training_submission_1_intro_1")>>
[<<moveTo "event_janitor_training_submission_1_intro_1" 'Message <<=setup.getNpcName("npc_harassment_assist","first")>> if they could help with <<=setup.getNpcName("npc_janitor","first")>>.' 60 "<<set $scene.workEventReturn='room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>/*#
#desc: manager talks about your stresses
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.affection <= $npc_manager.anger && $npc_manager.stage >= 2>>
<<if !$player.flags.pink_pill.super_od>>
<<addItem "sissy_pill_mk1" 3>>
<<if setup.checkItemOwned("pink_pill")>>
<<addItem "sissy_pill_mk1" 1>>
<<removeItem "pink_pill">>
<</if>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You confess that the stress of life has been getting to you a bit much of late.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger || $npc_manager.stage < 2>>
<<if $npc_manager.anger <= 3>>
With genuine concern she brushes your cheek. "@@.npc_manager;I am so sorry about that my dear. I know this job can be stressful even under the best circumstances but... is there anything in particular that I might be able to do something about?@@"
<<else>>
"@@.npc_manager;I see... is there anything in particular I could do to help? I know this job can be a bit high-paced and stressful.@@"
<</if>>
<br><br>
<<if $npc_manager.flags.require_chastity && setup.checkItemTypeWorn("cage")>>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_2" 'Say that being in chastity is very stressful.' 60 "<<set $scene.stress='chastity'>>">>]<br>
<</if>>
<<if $npc_manager.stage >= 3>>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_2" 'Explain that being plugged all the time is very distracting.' 60 "<<set $scene.stress='anal'>>">>]<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_2" 'Say that your "uniform" requirements are bothering you.' 60 "<<set $scene.stress='clothing'>>">>]<br>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_2" 'Say the job is starting to get to you.' 60 "<<set $scene.stress='job'>>">>]<br>
<<if $player.money.total < 0>>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_2" 'Say your debts are weighing on your mind.' 60 "<<set $scene.stress='money'>>">>]<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_2" 'Say it is nothing in particular.' 60 "<<set $scene.stress='nothing'>>">>]
<<else>>
<<if $npc_manager.affection <= 3>>
She frowns. "@@.npc_manager;Well you had best get it together — I would recommend starting with fixing your work behaviour — your life will go far easier if you focus on discharging your duties properly.@@"
<<else>>
She shakes her head. "@@.npc_manager;Unfortunately this does not surprise me — your behaviour of late has been... uneven, at best, perhaps if you better focused on fulfilling your duties you would not be so apprehensive?@@"
<</if>>
<br><br>
<<if $player.flags.pink_pill.super_od>>
She snorts. "@@.npc_manager;Have you been keeping up with your prescription? <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> concoction should be addressing this sort of thing. Perhaps you might speak with <<him npc_work_doctor>> about adjusting your dosage?@@"
<<else>>
Her expression turns to an evil grin. "@@.npc_manager;That said, I would not wish you to consider me completely uncaring... here, not that I want you becoming dependent on them but... have some pills, they should help distract you from your worries... just be careful if you decide to tie one on after work, the interaction can be quite potent.@@"
<</if>>
<br><br>
You nervously thank her for the "help" and she returns to her inner office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue." 60>>]
<</if>>
</div>/*#
#desc: manager talks about your stresses
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.lunch_stress.comfort = true>>
<<switch $scene.stress>>
<<case "chastity">>
<<applyStress -10>>
<<case "job">>
<<applyStress -5>>
<<case "money">>
<<applyStress -5>>
<<case "clothing">>
<<incrementEmotion 'anger' 'npc_manager' $npc_manager.stage>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<set _lunchEnd = setup.setNextDate($now, 0, 12, 30)>>
<<set _timeToLunchEnd = Math.max(60, setup.secondsToDate($now,_lunchEnd))>>
<<switch $scene.stress>>
<<case "chastity">>
You point out the challenge of being <<if !$npc_manager.flags.trustplayerwithkey || $player.sec_style.submission.permanent_key != "">>permanently <</if>>locked in chastity.<br>
<br>
<<if $player.sec_style.submission.permanent_key == "forced">>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Perhaps you should have thought of that before you so recklessly misbehaved? Never you mind, all is proper, now. You are locked and under my control, as things should be. Regardless of how you reached that point you should not be stressed but, instead, take solace that it did.@@"
<<elseif $player.sec_style.submission.permanent_key != "">>
<<=setup.getNpcName("npc_manager","formal")>> smiles gently. "@@.npc_manager;Do not worry, my dear. I know you do not mean that. You were on the right path when you mustered the courage to permanently surrender your key. What you are feeling now is just... misplaced confusion. You should put it from your mind and, instead, take solace in the fact that you made the absolutely correct choice. Being my locked and controlled slave is what is best for you.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> sniffs and shakes her head. "@@.npc_manager;Oh, you silly thing! Chastity is key to you staying focused and behaved in your duties, why, if you considered how stressed you are now, think how much worse it would be if you were NOT locked up!<<if $npc_manager.flags.playerstayedinchastity>> In fact... you really ought to consider just leaving the key with me permanently, it would be much healthier for you to totally remove that temptation.<</if>>@@"
<</if>>
<br><br>
As much as you should have expected her response, this was very much not the response you were hoping to get. Driving the knife even deeper <<=setup.getNpcName("npc_manager","formal")>> smiles like she really was doing you a kindness, giving you a gentle pat on the head before returning to her office. Of course the really disturbing part is that her words somewhat DID result in you feeling more relaxed...<br>
<br>
<<printThought "Guess it's back to work for me... lest she think of something even more diabolical to inflict on me...">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start working." _timeToLunchEnd>>]
<<case "anal">>
You point out that being constantly required to wear, and be tormented by, an anal plug is quite a stressful distraction.<br>
<br>
"@@.npc_manager;Ah, but it is such a vital tool for your training!@@" She looks at you for a moment and purses her lips "@@.npc_manager;Hmm, still, I can see the issue, the distraction of being filled, but not fucked... come, I have just the thing that should help clear your head.@@"<br>
<br>
<<set _timeAnal = Math.max(600, _timeToLunchEnd)>>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_3_anal_1" "Follow her." _timeAnal "<<set $scene.accept=true>>">>]<br>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_3_anal_1" "Reply that, actually, you should be getting back to work." 60 "<<set $scene.accept=false>>">>]
<<case "clothing">>
<<if $npc_manager.stagevalues[2].femalesecretary || $npc_manager.stage >= 3>>
You reply that you do not like your new feminine uniform requirements. <<=setup.getNpcName("npc_manager","formal")>> looks almost confused, her response measured and slow. "@@.npc_manager;Do not like... oh, what a foolish thing to say! You belong in that outfit, or one like it, and I will hear no more absurdity. Hmmff, my <<if $fetish.sissy>>SISSI <</if>>Secretary not dressing her feminine best! What a notion! I think you would be best served getting back to work to distract you from such ludicrous thoughts.@@"
<<elseif $npc_manager.stagevalues[1].unisexsecretary || $npc_manager.stage >= 2>>
You reply that you are uncomfortable in your new, unisex "uniform." <<=setup.getNpcName("npc_manager","formal")>> snorts and shakes her head. "@@.npc_manager;Such a foolish concern. Are these new clothes not more comfortable? Of finer material and craft than your old cheap things? Far more flattering upon your lovely body? Yes, yes and VERY yes. Therefore the only objection I can see is, well... all in good time, my sweet <<if $fetish.sissy>>SISSI <</if>>Secretary... all in good time.@@"<br>
<br>
<<printThought "That sounds ominous... are more uniform adjustments on the horizon?">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> spends several long moments undressing, or maybe dressing? You with her eyes before standing up quickly. "@@.npc_manager;Well, I believe that is all there is to say on that matter. You may resume working, and hopefully you calm down over the course of the afternoon.@@"
<<else>>
You point out that you really don't like your new uniform requirements. <<=setup.getNpcName("npc_manager","formal")>> frowns hard enough you instantly regret bringing it up. "@@.npc_manager;Such impertinence. Tell me, are they uncomfortable?@@"<br>
<br>
You reluctantly shake your head.<br>
<br>
"@@.npc_manager;Of course they are not! You know well how comparatively poorly made and rough male undergarments are. So, are they unattractive?@@"<br>
<br>
You start to open your mouth to object but then meekly shake your head again.<br>
<br>
"@@.npc_manager;Precisely — they, and you, make for a wonderfully adorable package. So what could the problem be? The answer, obviously, is that there is not one. You have nothing to complain about and I will hear no more of your belly-aching. With that out of the way I believe it is time for you to get back to your desk and resume working. Go on, now. Let your lovely underthings bring you the joy you should feel from wearing them.@@"
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start working." _timeToLunchEnd>>]
<<case "money">>
You tell <<=setup.getNpcName("npc_manager","formal")>> about your debts.<br>
<br>
<<if $player.work.advance > 0>>
<<if $npc_manager.stage < 3>>
"@@.npc_manager;I see... well, I have already given you an advance, all I can really suggest is that you focus on your work — better performance means a larger bonus... and perhaps even a promotion if you manage to impress me enough.@@"
<<elseif $player.work.secretaryRank == 0>>
"@@.npc_manager;I see... well, I have already given you an advance, all I can really suggest is that you focus on your work — better performance means a larger bonus... and perhaps even a promotion if you manage to impress me enough.@@"
<<elseif $player.work.secretaryRank < 3>>
"@@.npc_manager;I see... well, I have already given you an advance, all I can really suggest is that you focus on your work — better performance means a larger bonus... and more possibilities of promotion.@@"
<<else>>
"@@.npc_manager;I see... well, I have already given you an advance, all I can really suggest is that you focus on your work — better performance means a larger bonus. Really, though... it sounds like you need to focus on your budget more. You are a <<=setup.getSecretaryTitle()>>, which comes with a quite respectable salary.@@"
<</if>>
<<elseif $npc_manager.stagevalues[$npc_manager.stage].advance > 0>>
"@@.npc_manager;Hmm, well, you know what I will require for an advance. If you are up for it you can ask after work... beyond that, well, work hard, get your bonus, <<if $npc_manager.stage < 3>>and focus on getting past your probationary period<<elseif $player.work.secretaryRank < 3>>maybe another promotion?<<else>>though I quite question how a well-paid, <<=setup.getSecretaryTitle()>> could have such money issues<</if>>.@@"
<<else>>
"@@.npc_manager;I see, well you can always ask for an advance after work. Beyond that, well, work hard, get your bonus, <<if $npc_manager.stage < 3>>and focus on getting past your probationary period<<elseif $player.work.secretaryRank < 3>>maybe another promotion?<<else>>though I quite question how a well-paid, <<=setup.getSecretaryTitle()>> could have such money issues<</if>>.@@"
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Back to work." _timeToLunchEnd>>]
<<case "job">>
You explain that the stress of the job is really getting to you.<br>
<br>
<<switch $npc_manager.stage>>
<<case 1>>
She nods. "@@.npc_manager;Yes, I imagine you are still trying to adjust to your new responsibilities. If it helps, you are doing well thus far, just... try to forget the past and focus on the future and you will soon get the hang of things. That said, well... I can spare you for one afternoon, how about you head home and relax, come back tomorrow recharged and ready to be the best <<if $fetish.sissy>>SISSI <</if>>Secretary there is!@@"
<<case 2>>
She nods. "@@.npc_manager;I understand, that initial shock is over and the responsibilities are ramping up... if it helps, you are doing well thus far, just... try to forget the past and focus on the future and you will soon get the hang of things. That said, well... I can spare you for one afternoon, how about you head home and relax, come back tomorrow recharged and ready to be the best <<if $fetish.sissy>>SISSI <</if>>Secretary there is!@@"
<<case 3>>
She nods. "@@.npc_manager;The stress of being a full-time <<if $fetish.sissy>>SISSI <</if>>Secretary beginning to set in? Well, if it helps, you have taken to your role quite well, I am proud of you. That said... I believe I can spare you for one afternoon, how about you head home and relax, come back tomorrow recharged and ready to resume being the best <<if $fetish.sissy>>SISSI <</if>>Secretary there is!@@"
<<case 4>>
She nods in understanding. "@@.npc_manager;I understand... things up here are quite... intense, but I know you can handle it, and I daresay I would be struggling to keep on top of things without your assistance! That say, I believe I can spare you for one afternoon — head home and relax, come back recharged tomorrow.@@"
<<case 5>>
Her expression is quite sombre. "@@.npc_manager;I understand, but the only option now is to see things through to the end. That said... I believe I can spare you for an afternoon. How about you head home and relax, come back recharged tomorrow?@@"
<<default>>
ERROR: unexpected manager stage <<=$npc_manager.stage>>
<</switch>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_3_stay_1" 'Ask if you could spend the afternoon with her, instead?' 300>>]<br>
[<<moveTo "company_lobby" 'Thank her and leave.' 300 "<<resetStressMulti>><<set $scene.stressDismiss =true>>">>]
<<case "nothing">>
You reply that it is nothing in particular. <<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Well, in that case I can only wish you luck in this funk being short lived, and hope that you have a good afternoon despite this problem.@@"<br>
<br>
She returns to her office and you to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Back to work." _timeToLunchEnd>>]
<<default>>
ERROR: unexpected scene.stress <<=$scene.stress>>
<</switch>>
</div>/*#
#desc: stay with manager after being given afternoon off
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.work.nowWorking = true>>
<<set $player.work.style = 'hard'>>
<<set $scene.hormoneevent = $events.hasOwnProperty('hormones_checkin') && setup.compareDay($now, $events.hormones_checkin.trigger.date)>>
<<if $scene.hormoneevent>>
<<if $now.getUTCDay() == 5>>
<<postponeEvent 'hormones_checkin' 3>>
<<elseif $now.getUTCDay() == 4>>
<<postponeEvent 'hormones_checkin' 4>>
<<else>>
<<postponeEvent 'hormones_checkin' 1>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage < 2>>
<<=setup.getNpcName("npc_manager","formal")>> smiles and shakes her head. "@@.npc_manager;A tempting offer, my lovely, but no, I think it would be best you just headed home and focused on relaxing. See you tomorrow!@@"<br>
<br>
[<<moveTo "company_lobby" 'Thank her and leave.' 300 "<<include 'endPartialShift'>><<set $scene.stressDismiss=true>>">>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Oh you minx! Are you a <<if $fetish.sissy>>SISSI <</if>>Secretary or are you a teacher's pet? Either way, I know just the perfect place for you to spend the afternoon...@@"<br>
<br>
She leads you back to her office where you soon find yourself on your knees and between her legs. She slides her chair forward and gently pats you on the head, her hiked-up skirt exposing her glistening quim...<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, $player.work.time_evening.hour, $player.work.time_evening.minutes)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)-180>>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_3_stay_2" "Lick the afternoon away..." _timeToEndOfDay>>]
<</if>>
</div>/*#
#desc: lick manager for the afternoon
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'submission' 17 'unbelievable' $SEEN_FRIEND>>
<<set _stress = -10 - 2*setup.getTotalValue("submission")>>
<<applyStress _stress>>
<<set $npc_manager.flags.lunch_stress.lick = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You spend the afternoon with your head between <<=ps(setup.getNpcName("npc_manager","formal"))>> legs and your lips pressed against hers. While you can tell she continues to work she frequently shows her appreciation of your efforts, her fingers brushing through your hair, a soft purr or a contented hum, her foot teasing against your chastity device. Once you are even rewarded with her thighs clamping down as you take her by surprise with a potent orgasm.<br>
<br>
By the time her chair rolls back and she reaches under the desk to help you up you are tired, but also happy. Something about giving her so much pleasure makes your heart skip, especially when she uses a cloth to gently wipe your face clean in a manner almost motherly.<br>
<br>
"@@.npc_manager;My how time flies... how about you return to your desk and give me a minute to freshen up so we can end the day properly.@@"<br>
<br>
You nod, surprised at how much more relaxed you feel compared to your near panic-attack anxiety of lunch.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_evening" "Leave her office." 300>>]
</div>/*#
#desc: manager pegs you to "reduce stress"
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_manager.flags.lunch_stress.peg = true>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'anal' 13 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 11 'normal' $SEEN_FRIEND>>
<<set _stress = -setup.getTotalValue("submission")>>
<<applyStress _stress>>
<<playerOrgasm>>
<<set _panties = setup.getItemFromType('panties')>>
<<if _panties != "">>
<<changeItemStatus _panties 'cumsoaked' '["set",50]'>>
<</if>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<</if>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You follow <<=setup.getNpcName("npc_manager","formal")>> into her office where she pulls out her familiar strap-on and turns to you with a grin. "@@.npc_manager;If that constant full feeling is having you yearning for something else... well... I can accommodate that for you.@@"<br>
<br>
A moment later and you are bent over her desk, her breath hissing in your ear as she smoothly enters you. "@@.npc_manager;Doesn't that feel good?@@" She whisper as she starts to stroke<<if $player.body_ref.penis>> against your prostate<</if>>.<br>
<br>
There is no denying it, your breaths coming in sputtered gasps as you moan, her soft chuckle only turning you on further as she continues to peg you slow and deep.<br>
<br>
She pins you down, her breasts pressed against your back as she licks you neck and you shudder. "@@.npc_manager;Good girl...@@" She whispers and you moan louder, your orgasm a few moments later feeling almost secondary to her words of congratulation.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> remains pressed in and against you until the final post-orgasmic aftershocks fade. She steps back and you practically melt to the floor. You hear the click of her heels as she steps away, the echoing clunk of the strap-on being deposited back in a drawer and then the almost imperceptible creak of her chair as she takes a seat.<br>
<br>
"@@.npc_manager;That will be all, <<=$player.first_name>>, you may return to work now.@@"<br>
<br>
Still trying to catch your breath you fix your clothes and rise to your feet, bowing reflexively before you hurry out of the office.
<<else>>
You quickly reply that, actually, you should probably be getting back to work. <<=setup.getNpcName("npc_manager","formal")>> looks back at you with a disappointed frown. "@@.npc_manager;Very well, I will see you this evening, then.@@"
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Back to your desk." 180>>]
</div>/*#
#desc: office bathroom event forced
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.work.lunchBathroomEvent = $now>>
<<set $scene.forceLunchBathroom = false>>
<<if setup.progEventIsType("work_bathroom_male")>>
<<set $scene.maleEvent = true>>
<<set $scene.forceLunchBathroom = false>>
<<set $scene.bathroomForcedRandomEvent = true>>
<<set $scene.bathroomRandomEventScene = setup.getCurProgSceneRand("work_bathroom_male")>>
<<if $scene.maleBathroom>>
<<set _goto = true>>
<<initRoom>>
<<moveTo $scene.bathroomRandomEventScene>>
<</if>>
<<elseif setup.progEventIsType("work_bathroom_female")>>
<<set $scene.femaleEvent = true>>
<<set $scene.forceLunchBathroom = false>>
<<set $scene.bathroomRandomEventScene = setup.getCurProgSceneRand("work_bathroom_female")>>
<<set $scene.bathroomForcedRandomEvent = true>>
<<if !$scene.maleBathroom>>
<<set _goto = true>>
<<initRoom>>
<<moveTo $scene.bathroomRandomEventScene>>
<</if>>
<<elseif $scene.maleBathroom>>
<<set $scene.forceLunchBathroom = false>>
<<set $scene.bathroomRandomEvent = setup.getRandomEvent("work_bathroom_male", false)>>
<<if $scene.bathroomRandomEvent != null>>
<<set _randomEventData = setup.getRandomEventData("work_bathroom_male", $scene.bathroomRandomEvent.eventId)>>
<</if>>
<<if null == $scene.bathroomRandomEvent || _randomEventData && _randomEventData.repeatable>>
<<if $player.sec_style.clothing.female != "">>
<<set $scene.bathroomRandomEvent = setup.getRandomEvent("work_bathroom_female", false)>>
<<if $scene.bathroomRandomEvent != null>>
<<set _randomEventData = setup.getRandomEventData("work_bathroom_female", $scene.bathroomRandomEvent.eventId)>>
<<set $scene.femaleEvent = true>>
<</if>>
<</if>>
<<if null == $scene.bathroomRandomEvent || _randomEventData && _randomEventData.repeatable>>
<<set $scene.maleEvent = true>>
<<set _goto = true>>
<<set _randomEventData = setup.getRandomEventData("work_bathroom_male", "work_bathroom_male_general")>>
<<initRoom>>
<<moveTo _randomEventData.szene>>
<</if>>
<<else>>
<<set $scene.maleEvent = true>>
<</if>>
<<else>>
<<set $scene.bathroomRandomEvent = setup.getRandomEvent("work_bathroom_female", false)>>
<<if $scene.bathroomRandomEvent>>
<<set _randomEventData = setup.getRandomEventData("work_bathroom_female", $scene.bathroomRandomEvent.eventId)>>
<</if>>
<<if null == $scene.bathroomRandomEvent || _randomEventData && _randomEventData.repeatable>>
<<set $scene.bathroomRandomEvent = setup.getRandomEvent("work_bathroom_male", false)>>
<<if $scene.bathroomRandomEvent != null>>
<<set _randomEventData = setup.getRandomEventData("work_bathroom_male", $scene.bathroomRandomEvent.eventId)>>
<</if>>
<<if null != $scene.bathroomRandomEvent && !_randomEventData.repeatable>>
<<set $scene.maleEvent = true>>
<</if>>
<<else>>
<<set $scene.femaleEvent = true>>
<</if>>
<</if>>
<<if _goto>>
/% we already jumped, no op%/
<<elseif $scene.femaleEvent && !$scene.bathroomForcedRandomEvent>>
<<set $scene.bathroomRandomEventScene = $scene.bathroomRandomEvent.szene>>
<<completeRandomEvent $scene.bathroomRandomEvent.eventId "work_bathroom_female">>
<<if !$scene.maleBathroom>>
<<initRoom>>
<<moveTo $scene.bathroomRandomEventScene>>
<</if>>
<<elseif !$scene.bathroomRandomEvent && !$scene.bathroomForcedRandomEvent || $scene.bathroomForcedRandomEvent && ($scene.maleBathroom && $scene.maleEvent || !$scene.maleBathroom && $scene.femaleEvent)>>
<<initRoom>>
<<if $scene.maleBathroom>>
<<moveTo "room_office_lunchbreak_toilet_male">>
<<else>>
<<moveTo "room_office_lunchbreak_toilet_female">>
<</if>>
<<elseif !$scene.bathroomForcedRandomEvent>>
<<set $scene.bathroomRandomEventScene = $scene.bathroomRandomEvent.szene>>
<<completeRandomEvent $scene.bathroomRandomEvent.eventId "work_bathroom_male">>
<<if $scene.maleBathroom && $scene.maleEvent>>
<<initRoom>>
<<moveTo $scene.bathroomRandomEventScene>>
<</if>>
<</if>>
<</if>>
<<set $player.location to 'Company Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
You approach the <<if $scene.maleBathroom>>men's<<else>>woman's<</if>> room only to find that it is closed for maintenance with a sign on the opposite bathroom declaring it temporarily unisex.<br>
<br>
[<<moveTo $scene.bathroomRandomEventScene "Continue." 60>>]
</div>/*#
#desc: Boil-Less strict return with food
#status: FINISHED 0.8.5.0
#*/
<<set $player.location = setup.wordSecretaryOffice()>>
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.body.boiless = "strict">>
<<addEvent 'boiless_delivery'>>
<<addSearch $computer "Research Boil-Less" "room_computer_boiless_1">>
<<set $player.flags.mealplan.unlocked.pushUnique('boiless')>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You arrive in the canteen as the kitchen staff is starting to clean things up, by some miracle of fate one of the few items left is the <<=setup.getItemName($player.work.foodID)>> that <<=setup.getNpcName("npc_manager","formal")>> ordered. You're split between counting your lucky stars for this minor fortune... and annoyance to have "wasted" luck on something so minor.<br>
<br>
Your feeling of emotional confusion continues on as you return to the office and <<=setup.getNpcName("npc_manager","formal")>> opens her door just long enough to snatch her order without any further comment or punishment.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' "Start to work." 60 "<<set $scene.foodDelivery.punished = true>>">>]
</div>/*#
#desc: punished for delivering the wrong lunch multiple times
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $npc_manager.wrongfood == 1>>
<<applyStress 5>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.wrongfood == 1 || $npc_manager.stage < 2>>
You are almost at the door when she continues, her voice frigid, like ice daggers holding you in place.<br>
<br>
"@@.npc_manager;It may seem a simple thing, but a PROPER secretary should pay attention to every detail in discharging her duties. Failing to remember a simple lunch order is thus a sign of a deeper failing and one that you will need to remedy. As with all of your duties failure will result in my punishing you until you either break, or learn. Do I make myself clear, <<if $player.sec_style.body.name != "">>Miss<<else>>Mr.<</if>> <<=$player.first_name>> <<=$player.last_name>>?@@"<br>
<br>
You stammer out an agreement.<br>
<br>
"@@.npc_manager;Good. Dismissed.@@"<br>
<br>
You flee the room, heart pounding without so much as laying a finger upon you she has put the fear of God... or is that Goddess? into you.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
<<else>>
You are almost to the door out of the inner office when you are brought up short by the blood-freezing sound of <<=setup.getNpcName('npc_manager', 'formal')>> clearing her throat.<br>
<br>
"@@.npc_manager;You forgot my order again? No, no, this will not do. Fetching my lunch, my CORRECT lunch is one of your duties as my secretary and if you cannot properly discharge such duty... well, punishment is in order.@@"<br>
<br>
You turn around as she rises from her seat. "@@.npc_manager;Come, kneel.@@" She commands, pointing next to her desk.<br>
<br>
Walking nervously over you drop to your knees as she turns to retrieve something from a desk drawer. Initially blocked by her body she turns to present what looks like a pink dog dish, rotating it to show that it has been monogrammed with <<=$player.first_name>>.<br>
<br>
<<if State.hasPlayed("event_manager_food_punishment_obey") || State.hasPlayed("event_manager_food_punishment_disobey")>>
Sneering at your look of recognition
<<else>>
<<printThought "What! How long has she been planning this?">><br>
<br>
Smiling at your look of shock
<</if>>
she dumps the contents of her lunch into the dish and then places it on the floor in front of you.<br>
<br>
"@@.npc_manager;What you brought me may well have been a fine meal, but it was not what I requested and thus... it. Is. Trash.@@" Sitting back down she stomps her foot into the middle of the dish, mashing it with the toe of her shoe until it is an unrecognisable mush. She raises her foot towards your face, scraps of food stuck to the sole. "@@.npc_manager_dom;Now, clean me off.@@"<br>
<br>
[<<moveTo "event_manager_food_punishment_obey" "Lick her feet clean as ordered." 60 "<<set $scene.piss=false>><<set $scene.first=!State.hasPlayed('event_manager_food_punishment_obey') && !State.hasPlayed('event_manager_food_punishment_disobey')>>">>]<br>
[<<moveTo "event_manager_food_punishment_disobey" "Shake your head and refuse the demeaning command." 60 "<<set $scene.piss=false>><<set $scene.first=!State.hasPlayed('event_manager_food_punishment_obey') && !State.hasPlayed('event_manager_food_punishment_disobey')>>">>]
<</if>>
</div>/*#
#desc: wrong food punishment, lick her shoes and eat
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<setThreshold 'foot' 'foodplay_manager_food' 'accept_punishment'>>
<<if $scene.piss>>
<<applyExperience 'humiliation' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'foot' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'piss' 8 'normal' $SEEN_FRIEND>>
<<if !setup.hasThreshold('piss', 'foodplay_manager_piss', 'accept_punishment')>>
<<setThreshold 'piss' 'foodplay_manager_piss' 'accept_punishment'>>
<</if>>
<<else>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<applyExperience 'foot' 8 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Trembling slightly under her dominantly focused gaze you extend your tongue and lean forward, licking the bits of <<if $scene.piss>>piss-soaked<<else>>food<</if>> off of the bottom of her shoe as she gives commentary.<br>
<br>
"@@.npc_manager;That's right, get it all... now the heel, no, all the way. Yes, suck on it.@@"<br>
<br>
Though you blush at her lewd words you follow along with each command so that when she finally pulls her clean foot away you almost feel... disappointed?<br>
<br>
"@@.npc_manager;Very good, now eat up, we would not want this meal to go to waste...@@"<br>
<br>
Properly chagrined of your earlier defiance you reach down only for her to stop you. "@@.npc_manager;Ah, ah, no hands. Having failed in your duties as my <<if $fetish.sissy>>SISSI <</if>>Secretary I daresay you are at best a cute pet, and pets do not have hands, do they?@@"<br>
<br>
You shake your head as she smiles. You place your hands behind your back and lean down towards the food bowl. Under her careful supervision you eat all of the mashed meal, even going so far as to lick the bowl clean before she finally nods in satisfaction.<br>
<br>
"@@.npc_manager;Good, well, I am glad SOMEONE got to enjoy that meal. Let it be a lesson for next time so that you remember my order properly, hmm? Now get back to work.@@"<br>
<br>
Rising to your feet, you quickly curtsy and apologise before rushing out of the room and back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 300 "<<set $player.work.foodID = ''>>">>]
</div>/*#
#desc: wrong food punishment, forced to eat
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $fetish.piss>>
<<if !setup.hasThreshold('piss', 'foodplay_manager_piss', 'decline_punishment')>>
<<setThreshold 'piss' 'foodplay_manager_piss' 'decline_punishment'>>
<</if>>
<<applyExperience 'piss' 8 'very' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<setThreshold 'foot' 'foodplay_manager_food' 'accept_punishment'>>
<<applyExperience 'foot' 8 'very' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<changeMakeupMessed 25>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Incensed at <<if $scene.first>>the suggestion that you would<<else>>being told to, once again<</if>> eat tromped-on food from a dog bowl you tighten your lips and shake your head. With lightning speed <<=setup.getNpcName('npc_manager', 'formal')>> is on her feet, one hand gripping your hair glaring down with anger for a brief moment she forces you face-first down into the bowl.<br>
<br>
"@@.npc_manager;I went to all that trouble to prepare your lunch, now you need to eat it!@@"<br>
<br>
<<if $fetish.piss>>
Flailing slightly you try to struggle against her grasp only for her to pull you back up.
<<if $scene.piss>>
"@@.npc_manager;Hmm, is something the matter? Is the flavour beginning to fade? Oh, let me take care of that for you.@@"
<<else>>
"@@.npc_manager;Hmm, is something the matter? Is it too dry for your liking? Oh, let me take care of that for you.@@"
<</if>>
<br><br>
One hand still holding your hair like a vice she reaches down to raise her skirt and lower her panties. Looking down at you with a cruel smile she aims a stream of <<getWordPiss>> into the bowl, unleashing just enough to give it all a nice soak before fixing her panties and shoving you right back down.<br>
<br>
"@@.npc_manager;Come on, <<if $fetish.sissy>>SISSI <</if>>bitch, eat it all up! Specially prepared yummy yummy!@@"<br>
<br>
Face down in the bowl you have little choice but to start eating, the bitter, acrid taste of her urine overpowering almost all flavour of the underlying smashed lunch. Coughing and gagging you manage to force yourself to eat it all, but she doesn't let you up until you have literally licked every drop from the bowl to leave it polished and clean.
<<else>>
Her hand on the back of your head might as well be a steel beam for how much you are able to struggle against it. Faced with no real choice you begin eating, choking down the ruined meal a bite at a time.<br>
<br>
"@@.npc_manager;All of it, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, I want that bowl tongue-polished and clean of every morsel.@@"<br>
<br>
Pushed down even further she moves your face around like you were a sponge, your extended tongue swirling around the bowl to fulfill her command.
<</if>>
<br><br>
Finally releasing her hold on your head she leans back in her chair and raises her foot once again.<br>
<br>
"@@.npc_manager;Ah, ah, do not forget dessert.@@"<br>
<br>
Chagrined you wince but obey, licking her shoe clean.<br>
<br>
"@@.npc_manager;Back to work now, <<if $fetish.sissy>>SISSI<<else>>girl<</if>> — next time you screw up my order I may not be so lenient.@@"<br>
<br>
A bit scared as to what that might entail you hurry back to your workstation.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 1 "<<set $player.work.foodID = ''>>">>]
</div><<if !$scene.foodDelivery.hasOwnProperty("outcome") || $scene.foodDelivery.outcome == "">>
<<if setup.checkItemInInventory($player.work.foodID)>>
<<set $scene.foodDelivery.right = true>>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.foodDelivery.outcome = "right">>
<<elseif setup.checkItemTagCarried("lunch")>>
<<set $scene.foodDelivery.right = false>>
<<setThreshold "bimbofication" "ditzy_secretary" "food">>
<<applyExperience 'bimbofication' 4 'almost' $SEEN_FRIEND>>
<<set $npc_manager.wrongfood+=1>>
<<if $player.flags.firstWorkDayDone && (_rnd > Math.max(0,(9-($npc_manager.wrongfood+$npc_manager.anger))))>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.foodDelivery.outcome = "drop">>
<<if $npc_manager.anger>=5>>
<<decrementEmotion 'anger' 'npc_manager' 5>>
<<set $scene.foodDelivery.outcome = "disciplinaryMeasure">>
<</if>>
<<else>>
<<set $scene.foodDelivery.outcome = "eat">>
<</if>>
<<else>>
<<set $scene.foodDelivery.outcome = "">>
<</if>>
<<set $scene.foodDelivery.done = true>>
<</if>>
<<if $scene.foodDelivery.outcome != "">>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemTypeCarried("lunch")>>
<<deleteItem $scene.foodDelivery.foodItem>>
<</if>>/*#
#desc: deliver lunch to manager
#status: FINISHED 0.4.0.0
#*/
<<set _rnd = random(0,10)>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "checkFoodDelivery">>
<<if $player.work.advance > 0 && $npc_manager.stage == 1>>
<<initRoom>>
<<moveTo "event_lunch_service_1">>
<<elseif $scene.foodDelivery.right && $now.getUTCMinutes() < 10 && setup.hasFreeTime($now, $player, $currentTasks, 40) && (!State.hasPlayed("event_working_lunch_intro_1") || !State.hasPlayed("event_working_lunch_intro_3") && random(1,10) == 1) && $npc_manager.stage >= 3>>
<<initRoom>>
<<moveTo "event_working_lunch_intro_1">>
<<elseif $scene.foodDelivery.right && $now.getUTCMinutes() < 10 && setup.hasFreeTime($now, $player, $currentTasks, 40) && State.hasPlayed("event_working_lunch_intro_3") && random(1,15) < ($npc_manager.affection - $npc_manager.anger)>>
<<initRoom>>
<<moveTo "event_working_lunch_root">>
<<else>>
<<set $scene.erection = setup.calcErection()>>
<<if $scene.erection>>
<<set $npc_manager.stagevalues[$npc_manager.stage].erectionatwork += 1>>
<<applyExperience 'humiliation' 10 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You politely knock on the door as instructed. You wait a few seconds before you hear a response from the inside.<br>
<br>
"@@.npc_manager;You may enter, <<=$player.first_name>>.@@"<br>
<br>
You open the door and deliver the food you got from the canteen to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<if $scene.foodDelivery.right>>
Her mood seems to brighten when she sees what you've brought freshly prepared from the kitchen.<br>
<br>
"@@.npc_manager;Very good. I was about to starve.@@"<br>
<br>
<<if $scene.erection>>
<<if !setup.checkItemTypeWorn("cage")>>
As you approach her desk, her gaze drifts down your body, to alight on the unmistakable bulge your erection is making in your pants.<br>
<br>
"@@.npc_manager;Oh my... that is... well, that is far from appropriate for the workplace.@@" She states, still staring as you place her lunch on her desk.<br>
<br>
"@@.npc_manager;You should figure out a... solution for that sort of thing in the future, otherwise I will have to take measures to ensure you remain under control and able to perform your duties.@@"<br>
<br>
Hunching over to conceal your shame you hurry back to your desk.<br>
<br>
<<printThought "Oh <<getWordGod>>, that was so embarrassing, but what can I do about it?">>
<<else>>
As you approach her desk, her gaze drifts down your body to alight between your legs. Though you are
<<if setup.isCage()>>
caged your arousal has it pushed out, tenting your clothes as obviously as any proper hard-on you've ever had.<br>
<br>
"@@.npc_manager;My, my... now I know you are <<if setup.isCage()>>caged<<else>>securely belted<</if>> and yet here you appear like... that. I advise you to find some way to prevent this from happening in the future... lest it be become necessary to deploy even more extreme measures...@@"
<<else>>
securely belted, the rigid steel keeping your <<getWordMyPenis false>> tight to your body, and yet.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Hmm, the belt is doing its job — and good that it is there, but from the look of things it is working quite HARD, hmm? No pun intended. I advise you to keep a tight control on such matters, lest it become necessary to take more extreme measures.@@"
<</if>>
<br><br>
Nervously, you nod and ready your retreat, fearful of what she would even consider "extreme."
<</if>>
<br><br>
<</if>>
<<else>>
Her mood worsens when she sees what you have for her. It appears you have messed up her order.<br>
<br>
<<if $scene.foodDelivery.outcome == "eat">>
"@@.npc_manager;Oh well. At least I have something to eat.@@"<br>
<br>
<<if !$player.flags.firstWorkDayDone>>
"@@.npc_manager;But you should really pay more attention to what I say <<=$player.first_name>>. Starting tomorrow I will not be nearly as forgiving as I am today, since today is your first day of work up here. Oh well, we are going through the disciplinary measures this evening anyway, I might just bring this up again then.@@"
<<else>>
<<if $npc_manager.wrongfood<3>>
"@@.npc_manager;But you should really pay more attention to what I say in the future, <<=$player.first_name>>. Failure to follow instructions can have... consequences.@@"
<<elseif $npc_manager.wrongfood<5>>
"@@.npc_manager;You sure are a ditz with your head in the clouds <<=$player.first_name>>. Sometimes I am not sure what exactly is going on in that head of yours.@@"
<<else>>
"@@.npc_manager;Can you at least try to focus on your tasks you Bimbo?@@"
<</if>>
<</if>>
<br><br>
<<elseif $scene.foodDelivery.outcome == "drop">>
"@@.npc_manager_dom;<<if $player.sec_style.body.name != "">>Miss<<else>>Mr.<</if>> <<=$player.last_name>>. What is the meaning of this!? Is this supposed to be a joke?@@"<br>
<br>
She tilts the plate with the food and lets it slide right into the trash bin.<br>
<br>
"@@.npc_manager;This level of discipline is not acceptable <<=$player.first_name>>. Leave, before I lose my temper.@@"<br>
<br>
<<elseif $scene.foodDelivery.outcome == "disciplinaryMeasure">>
"@@.npc_manager_dom;<<if $player.sec_style.body.name != "">>Miss<<else>>Mr.<</if>> <<=$player.last_name>>. What is the meaning of this!? Is this supposed to be a joke?@@"<br>
<br>
She looks at the food with disgust, but not due to it being badly done. No, as usual, the culinarian's trade is on spot. No, this stare of repulsion is targeting your incompetence alone, and only that. A devilish grin on her face indicates, that she might have something for you in store. You try your best to slowly back away, out of the office.<br>
<br>
<</if>>
<</if>>
<<if $scene.foodDelivery.right && $scene.foodDelivery.outcome != "disciplinaryMeasure">>
<<if $npc_manager.stage >=2 && $player.work.foodID == 'food_sushi'>>
She looks up at you with a crafty smile as she opens up her lunch.<br>
<br>
"@@.npc_manager;Actually, would you be a dear and stick around to help me out with lunch? But first, I will need you to strip...@@"<br>
<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Get naked as instructed." 60 "<<set $scene.strip=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Excuse yourself." 60 "<<set $scene.strip=false>>">>]
<<else>>
<<if $scene.first_makeup && $player.makeup.messed > 20>>
As you walk out, <<=setup.getNpcName('npc_manager', 'formal')>> calls after you. "@@.npc_manager;And remember, this is the last day that you can expect to get through without my paying attention to the state of your makeup, morning, noon and night.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1 "<<set $player.work.foodID = ''>>">>]
<<elseif $player.timebased.stress >= 75>>
She looks at you with concern.
<<if $player.work.qualifyingperiod < 28>>
"@@.npc_manager;Earlier I thought it was just catching you before the coffee kicked in but... you are looking quite stressed, is there something the matter?@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunch_stress_1" "Nod." 60 "<<set $player.work.foodID = ''>>">>]<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Shake your head and leave the office." 1 "<<set $player.work.foodID = ''>>">>]
<<else>>
"@@.npc_manager;You are looking quite stressed. I know this is the first day of a new job but... try to enjoy it. It will go easier for you if you relax and accept your new reality.@@"<br>
<br>
<<printThought "That doesn't sound ominous at all...">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1 "<<set $player.work.foodID = ''>>">>]
<</if>>
<<elseif $npc_manager.stage > 2 || ($npc_manager.stage == 2 && $npc_manager.stagevalues[2].makeup)>>
<<if $player.makeup.messed >=75>>
You turn to go, but <<=setup.getNpcName('npc_manager', 'formal')>> looks at you and shakes her head. "@@.npc_manager;What can I say but... you look like a mess! As my personal <<if $fetish.sissy>>SISSI <</if>>Secretary, you should take pride in your appearance not show up looking like a used whore... you should head straight for the bathroom to re-do your whole makeup before anyone else sees the disaster zone that is your face!@@"
<<elseif $player.makeup.messed >= 50>>
As you turn to go, her gaze moves towards your face and her brow furrows. "@@.npc_manager;What were you doing this morning? Your makeup is looking quite bad, you should attend to it at once!@@"
<<elseif $player.makeup.messed >= 25>>
Her keen eyes scan over your face and she shakes her head. "@@.npc_manager;Tut tut, some might not notice the signs, but I expect my <<if $fetish.sissy>>SISSI <</if>>Secretary to be perfectly made up at all times, you should do some touch up before things start getting bad.@@"
<<elseif $scene.first_makeup && $player.sec_style.clothing.makeup == "money">>
She frowns ever-so-slightly. "@@.npc_manager;Now, normally, this would be where I checked that your makeup was in proper perfect condition for the afternoon... but you still need to get to the salon, hmm? So that will be starting <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>>...@@"
<<elseif setup.getCurrentMakeup() == "">>
Her brow furrows. "@@.npc_manager;Did you... remove your makeup?@@" She shakes her head. "@@.npc_manager;I hope that is merely a step towards refreshing your look. As I have explained to you before, I expect you to be properly made up and feminine at all times.@@"
<<else>>
She nods in approval. "@@.npc_manager;Keeping on top of your makeup, well done.@@"
<</if>>
<br><br>
You nod hurriedly as she turns to her meal and you excuse yourself from her office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1 "<<set $player.work.foodID = ''>>">>]
<<else>>
Focused on her meal, she dismisses you with a wave.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1 "<<set $player.work.foodID = ''>>">>]
<</if>>
<</if>>
<<elseif !$player.flags.firstWorkDayDone>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave the office." 1 "<<set $player.work.foodID = ''>>">>]
<<else>>
You turn to leave the office.<br>
<br>
[<<moveTo "event_manager_food_punishment" "Slowly reach for the door handle. She can only see things that move fast... you hope." 60 "<<set $player.work.foodID = ''>>">>]
<</if>>
</div>/*#
#desc: bypass lunch
#status: FINISHED 0.7.8.0
#*/
<<if !$scene.checkedRandom>>
<<set $scene.firstLunch = false>>
<<if $events.hasOwnProperty("first_lunch_female_good") || $events.hasOwnProperty("first_lunch_female")>>
<<set $scene.firstLunch = true>>
<<initRoom>>
<<moveTo "room_office_lunchbreak_canteen">>
<<else>>
<<set $scene.checkedRandom=true>>
<<set $scene.location = "canteen">>
<<set $scene.passthrough = "room_office_sissy_secretary_work_lunchbreak_shortcircuit">>
<<include "locationBasedRandomEvent">>
<</if>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom() && !$scene.firstLunch && ($scene.checkedRandom || !$scene.hasOwnProperty('event'))>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if !setup.checkItemTagCarried("lunch")>>
<<set $scene.shortcutSuccess = random(1,10) <= setup.getTotalValue("smart")>>
<</if>>
<<if $scene.shortcutSuccess && !$scene.event>>
<<set $scene.foodDelivery.right = true>>
<<set $scene.foodDelivery.outcome = 'eat'>>
<<set $scene.foodDelivery.done = true>>
<<if setup.checkItemTagCarried("lunch")>>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemTypeCarried("lunch")>>
<<deleteItem $scene.foodDelivery.foodItem>>
<</if>>
<</if>>
<<if $player.timebased.stress < 75 && !$scene.shortcutSuccess && !setup.checkItemTagCarried("lunch")>>
<<addRandomFood>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $player.timebased.stress >= 75>>
You fetch lunch for your <<=setup.getNpcName("npc_manager","title")>> and bring it back to her office, your stress seeming to focus your memory on getting her order precisely correct.<br>
<br>
<<if $npc_manager.stage == 5 && $npc_manager.flags.evil == 1>>
[<<moveTo "event_manager_stage5_lunch_1" 'Deliver lunch to <<=setup.getNpcName("npc_manager", "formal")>>.' 180>>]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood" "Continue." 60 "<<addItem $player.work.foodID>>">>]
<</if>>
<<elseif $scene.shortcutSuccess>>
<<if $npc_manager.stage >= 2 && $player.work.foodID == 'food_sushi'>>
You present <<=setup.getNpcName("npc_manager","formal")>> with her lunch and she looks up at you with a crafty smile.<br>
<br>
"@@.npc_manager;Lovely. Now, be a dear and stick around to help me out with lunch. But first, I will need you to strip...@@"<br>
<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Get naked as instructed." 60 "<<set $scene.strip=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Excuse yourself." 60 "<<set $scene.strip=false>>">>]
<<elseif setup.checkItemInInventory($player.work.foodID) && $now.getUTCMinutes() < 10 && setup.hasFreeTime($now, $player, $currentTasks, 40) && !State.hasPlayed("event_working_lunch_intro_1") && $npc_manager.stage >= 3>>
[<<moveTo "event_working_lunch_intro_1" "Deliver lunch." 60>>]
<<elseif setup.checkItemInInventory($player.work.foodID) && $now.getUTCMinutes() < 10 && setup.hasFreeTime($now, $player, $currentTasks, 40) && State.hasPlayed("event_working_lunch_intro_1") && random(1,15) < ($npc_manager.affection - $npc_manager.anger)>>
[<<moveTo "event_working_lunch_root" "Deliver lunch." 60>>]
<<else>>
You fetch lunch for your <<=setup.getNpcName("npc_manager","title")>> and return to your desk without anything in particular happening.<br>
<br>
<<if ($npc_manager.stage > 2 || ($npc_manager.stage == 2 && $npc_manager.stagevalues[2].makeup && !$scene.first_makeup)) && ($player.makeup.template != "" && $player.makeup.messed > 25)>>
<<printThought "My makeup could use some touch-up...">><br>
<br>
<</if>>
<<if $scene.foodDelivery.done && $scene.forceLunchBathroom>>
You're about to sit at your desk when you notice that you somehow got a smudge on your left hand, best to head to the bathroom and wash up before you make a mess of anything else.<br>
<br>
[<<moveTo "event_lunch_bathroom_forced" "Men's Bathroom." 60 "<<set $scene.maleBathroom=true>>">>]
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_lunch_bathroom_forced" "Women's Bathroom." 60 "<<set $scene.maleBathroom=false>>">>]
<</if>>
<<else>>
<<include "lunchOptions">>
<</if>>
<</if>>
<<else>>
By the time you got to the front of the line you had totally forgotten what <<=setup.getNpcName("npc_manager","formal")>> requested.
<<if setup.getTotalValue("bimbofication") > 10>>
After all, it's way more fun to think about having sex with fellow employees; especially the cook working the counter, there's something about <<him npc_cook>> that <<if $npc_cook.fem>>gets you all hot and bothered<<else>>has your thoughts drifting towards getting bent over the buffet and railed hard<</if>>...
<<else>>
<<printThought "I never thought being a secretary would be so hard! What a time to go a bit addle-brained...">>
<</if>>
<br><br>
You place your order at random and cross your fingers as you bring it back to your <<=setup.getNpcName("npc_manager","title")>>...<br>
<br>
<<printThought "I hope she's, like... happy with this...">><br>
<br>
<<if $npc_manager.stage == 5 && $npc_manager.flags.evil == 1>>
[<<moveTo "event_manager_stage5_lunch_1" 'Deliver lunch to <<=setup.getNpcName("npc_manager", "formal")>>.' 180>>]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood" "Continue." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: order lunch from cook
#status: FINISHED 0.8.7.0
#ignore_spell: havin',<<getfood>>
#*/
<<if !$scene.checkedRandom>>
<<set $scene.firstLunch = false>>
<<if $events.hasOwnProperty("first_lunch_female_good") || $events.hasOwnProperty("first_lunch_female")>>
<<set $scene.firstLunch = true>>
<<else>>
<<set $scene.checkedRandom=true>>
<<set $scene.location = "canteen">>
<<set $scene.passthrough = "event_lunchbreak_cook_delivery_1">>
<<set _doNotGotoEvent = true>>
<<include "locationBasedRandomEvent">>
<</if>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom() && !$scene.firstLunch && ($scene.checkedRandom || !$scene.hasOwnProperty('event') || $scene.progEventId)>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if !$scene.event>>
<<set $scene.foodDelivery.right = true>>
<<set $scene.foodDelivery.outcome = 'eat'>>
<<set $scene.foodDelivery.done = true>>
<<if setup.checkItemTagCarried("lunch")>>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemTypeCarried("lunch")>>
<<deleteItem $scene.foodDelivery.foodItem>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You message <<=setup.getNpcName("npc_cook","first")>> with <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch order.<br>
<br>
<<if $events.hasOwnProperty("first_lunch_female_good") || $events.hasOwnProperty("first_lunch_female") || $scene.event || $scene.progEventId>>
"@@.npc_cook;Ach <<callPlayer "npc_cook">>! I know I promised to help ye oot, but we're short staffed this afternoon, ye'll haf to come in yourself!@@"<br>
<br>
<<printThought "Alright, she wanted <<getFood>>...">><br>
<br>
<<if $scene.progEventId>>
[<<moveTo $scene.progEventId "Head for the canteen." 300 "<<$scene.progEventId = ''>>">>]
<<elseif $scene.event>>
[<<moveTo $scene.event.szene "Head for the canteen." 300 "<<completeRandomEvent $scene.event.eventId $scene.location>>">>]
<<else>>
[<<moveTo "room_office_lunchbreak_canteen" "Head for the canteen." 300>>]
<</if>>
<<else>>
"@@.npc_cook;Aye <<callPlayer "npc_cook">>! I'll be havin' that made up and sent over in a jiffy!@@"<br>
<br>
Just as promised, a bare couple of minutes pass before a courier drops the lunch order on your desk. You grab the package and head into the office to make the final delivery to <<=setup.getNpcName("npc_manager","formal")>>,
<<if $npc_manager.stage >=2 && $player.work.foodID == 'food_sushi'>>
presenting <<=setup.getNpcName("npc_manager","formal")>> with her lunch. She looks up at you with a crafty smile.<br>
<br>
"@@.npc_manager;Lovely. Now, be a dear and stick around to help me out with lunch. But first, I will need you to strip...@@"<br>
<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Get naked as instructed." 60 "<<set $scene.strip=true>>">>]<br>
[<<moveTo "event_work_lunch_assistance_sushi" "Excuse yourself." 60 "<<set $scene.strip=false>>">>]
<<else>>
delivering her order and returning to your desk without anything in particular happening.<br>
<br>
<<if ($npc_manager.stage > 2 || ($npc_manager.stage == 2 && $npc_manager.stagevalues[2].makeup && !$scene.first_makeup)) && ($player.makeup.template != "" && $player.makeup.messed > 25)>>
<<printThought "My makeup could use some touch-up...">><br>
<br>
<</if>>
<<if $scene.foodDelivery.done && $scene.forceLunchBathroom>>
You're about to sit at your desk when you notice that you somehow got a smudge on your left hand, best to head to the bathroom and wash up before you make a mess of anything else.<br>
<br>
[<<moveTo "event_lunch_bathroom_forced" "Men's Bathroom." 60 "<<set $scene.maleBathroom=true>>">>]
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_lunch_bathroom_forced" "Women's Bathroom." 60 "<<set $scene.maleBathroom=false>>">>]
<</if>>
<<else>>
<<include "lunchOptions">>
<</if>>
<</if>>
<</if>>
</div><<set $scene.inspection_failed = false>>
<<if !$scene.handledMakeupFailure>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<<set $scene.messed = $player.makeup.messed>>
<<set $scene.template = $player.makeup.template>>
<<set $scene.permanent = $player.makeup.permanent>>
<<if $player.makeup.template != "">>
<<if $player.makeup.messed >=75>>
<<set $scene.inspection_failed = true>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<elseif $player.makeup.messed >= 50>>
<<set $scene.inspection_failed = true>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<elseif $player.makeup.messed >= 25>>
<<set $scene.inspection_failed = true>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<if $scene.inspection_failed>>
<<switch $scene.makeup>>
<<case "">>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<set $scene.inspection_failed = true>>
<<case "nomakeupmakeup">>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.inspection_failed = true>>
<<case "moviestar">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<case "ultimatebimbo">>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<case "sissy_doll">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<case "camgirl" "egirl" "qtpie">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<case "normalmakeup">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<case "expertmakeup">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</switch>>
<<else>>
<<switch $scene.makeup>>
<<case "">>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<set $scene.inspection_failed = true>>
<<case "nomakeupmakeup">>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.inspection_failed = true>>
<</switch>>
<</if>>
<</if>>/*#
#desc: post-lunch makeup inspection
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcLunchMakeup">>
<<if $scene.inspection_failed>>
<<set $npc_manager.flags.lunch_makeup_fail +=1>>
<<set $scene.teachDoll = $npc_manager.flags.lunch_makeup_fail >= 4 && $npc_manager.stage >= 4 && $npc_sexdoll.stage >= 4 && !$player.makeup.unlocked.hasOwnProperty('sissy_doll') && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && ($player.virgin.vaginal || !$player.body_ref.vagina)>>
<<if $npc_manager.flags.lunch_makeup_fail == 2>>
<<applyExperience 'bdsm' 8 'very' $SEEN_FRIEND>>
<<changeMakeupMessed 25>>
<<elseif $npc_manager.flags.lunch_makeup_fail == 3 || $npc_manager.flags.lunch_makeup_fail >= 4 && !$scene.teachDoll && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
<<set $player.makeup.permanent = 'sissy_doll'>>
<<setThreshold 'feminization' 'dress_code' 'sissy_doll_fem'>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = ''>>
<</if>>
<<if $npc_manager.flags.lunch_makeup_fail < 3>>
<<set $scene.handledMakeupFailure = true>>
<</if>>
<<else>>
<<set $npc_manager.flags.lunch_makeup_pass +=1>>
<</if>>
<<set $scene.first = !$npc_manager.flags.first_makeup_inspection>>
<<if $scene.first>>
<<set $scene.first_makeup=true>>
<<set $npc_manager.flags.first_makeup_inspection = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You've sat back down at your desk and thinking about what to work on next when <<=setup.getNpcName('npc_manager', 'formal')>> strides out of her inner sanctum.<br>
<br>
"@@.npc_manager;Hello, my dear, I just wanted to check in and see how your lovely new makeup is holding up...@@"<br>
<br>
<<if $scene.permanent != "" && $scene.template == "">>
She smiles at you. "@@.npc_manager;Of course, silly me, you selected a permanent option so I hardly need have worried. Still, if you ever decide to change things up, know that I will, as always, be keeping a close eye on you to make sure you are living up to all of my lofty expectations.@@"<br>
<br>
<<switch $scene.makeup>>
<<case "nomakeupmakeup">>
"@@.npc_manager;That said... this template is quite insufficient, makeup should push you beyond your natural looks, not merely blend in.@@"
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll" "camgirl" "egirl" "qtpie">>
"@@.npc_manager;A superb choice of templates, by the way, utterly feminine, just the way I like it.@@"
<<case "ultimatebimbo">>
"@@.npc_manager;That said this template is... well, there is no getting around it. You look like a whore. Despite the broad scope of your duties, you remain a <<if $fetish.sissy>>SISSI <</if>>Secretary, a representative position for which this style is a bit over the line. Do please consider changing to something more work-appropriate.@@"
<<default>>
ERROR unknown makeup permanent template: <<=$scene.permanent>>
<</switch>>
<<else>>
<<if $scene.messed >=75>>
"@@.npc_manager;I could comment on the style of your makeup but really... what would be the point when it is so utterly ruined? I have not the slightest idea how you could make such a mess since this morning, but know that I do not wish to ever see you like this again, do I make myself clear?@@"<br>
<br>
You nod quickly and nervously, suppressing fearful tears that would only further streak your cheeks.
<<else>>
<<if $scene.messed >= 25>>
<<switch $scene.template>>
<<case "nomakeupmakeup">>
<<if $scene.bonus_gift == 'makeup_nomakeup'>>
"@@.npc_manager;I suppose it was too much to expect that you would have figured out "proper" makeup since this morning... oh well, see that you have things sorted out by the next time you show up to work.@@"
<<else>>
"@@.npc_manager;To go to that trouble to make it look like you are not wearing makeup... and then to ruin it, but leaving it to smudge? I honestly do not know what you could have been thinking, but it is a failure on multiple levels.@@"
<</if>>
<<case "normalmakeup">>
"@@.npc_manager;I suppose that is supposed to be properly feminine makeup, but it is so mussed I honestly cannot tell. You really should have stayed on top of maintenance.@@"
<<case "expertmakeup" "moviestar" "sissy_doll" "camgirl" "egirl" "qtpie">>
"@@.npc_manager;Such effort on a daring, feminine look, utterly wasted due to not keeping up with maintenance, a pity.@@"
<<case "ultimatebimbo">>
"@@.npc_manager;The full bimbo, and ruined to boot... this is not the look of a <<if $fetish.sissy>>SISSI <</if>>Secretary but of a back-alley whore. Do better unless you wish to end your employment as the former and pursue a career as the latter.@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.template>>
<</switch>>
<<else>>
<<switch $scene.template>>
<<case "">>
She peers at you intently, as if searching for the slightest hint of makeup, of which you are wearing none.<br>
<br>
<<if $scene.bonus_gift == 'makeup_pink_secretary' || $scene.bonus_gift == 'makeup_fallthrough'>>
"@@.npc_manager;Now, normally this would be where I checked in to make sure you makeup was in tip-top shape, but, being as this is your first day with this new requirement, I will let it slide.@@" She sighs "@@.npc_manager;That said, you did have plenty of time at lunch to have put something on... so you really ought to appreciate this lenience.@@"
<<else>>
"@@.npc_manager;Really? No makeup so soon? I recommend adjusting your attitude and showing up to work in the morning with a more proper look and a rededication to your duties.@@"
<</if>>
<<case "nomakeupmakeup">>
<<if $scene.bonus_gift == 'makeup_nomakeup'>>
"@@.npc_manager;I suppose it was too much to expect that you would have figured out "proper" makeup since this morning... oh well, see that you have things sorted out by the next time you show up to work.@@"
<<else>>
She stares at your subtle makeup for almost a minute before her mouth turns downward into a disapproving frown.<br>
<br>
"@@.npc_manager;On the one hand I could congratulate you on doing an effectively subtle job of technically wearing makeup without actually "wearing makeup." But that was not your assignment. Certainly you look a touch cuter than your natural adorableness, but you are a <<if $fetish.sissy>>SISSI <</if>>Secretary, and that means the full extent of your feminine beauty should be on display. No, this is quite unsatisfactory and I expect you to do much better at your next inspection.@@"
<</if>>
<<case "normalmakeup" "expertmakeup" "moviestar" "camgirl" "egirl" "qtpie">>
"@@.npc_manager;Perfect! Your makeup is pristine and feminine, just as I instructed.@@"
<<case "ultimatebimbo">>
"@@.npc_manager;I know I told you to wear feminine makeup, but this... no, this is just too much, makeup should be applied with care and a brush, not a trowel. You work in a representative position, someone visiting the office should find themselves looking upon a cute, beautiful, welcoming <<if $fetish.sissy>>SISSI <</if>>Secretary... not wonder if they have accidentally stumbled into a whorehouse.@@"
<<case "sissy_doll">>
"@@.npc_manager;You know, at first, I thought this look would be a bit much but... I will be honest, it is somewhat growing on me, and good job keeping it in proper shape.@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.template>>
<</switch>>
<</if>>
<</if>>
<</if>>
<br><br>
<<if $scene.inspection_failed>>
<<if $scene.bonus_gift == 'makeup_pink_secretary' || $scene.bonus_gift == 'makeup_fallthrough'>>
"@@.npc_manager;This being your first day I will let you off with a warning but, in the future, well... you know by now that disciplinary measures are the proper way to address performance failures.@@"
<<else>>
"@@.npc_manager;This being your first failure I will let you off with a warning but, in the future, well... you know by now that disciplinary measures are the proper way to address performance failures.@@"
<</if>>
<<else>>
"@@.npc_manager;Keep up the good work. I know keeping on top of makeup can be a challenge for a busy secretary but, well... performance failures WILL be met with appropriate disciplinary action.@@"
<</if>>
<<else>>
<<if $scene.inspection_failed>>
Surprising you with her appearance, <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner sanctum looking more than a little cross, her gaze fixated on your face or, more accurately your <<if $scene.makeup == "">>lack of <</if>>makeup.<br>
<br>
<<if $scene.template != "" && $scene.messed >= 75>>
"@@.npc_manager;I could comment on the style of your makeup, but really... what would be the point when it is so utterly ruined? I have not the slightest idea how you could make such a mess since this morning, but know that I do not wish to ever see you like this again, do I make myself clear?@@"<br>
<br>
You nod quickly and nervously, suppressing fearful tears that would only further streak your cheeks.
<<else>>
<<switch $scene.makeup>>
<<case "">>
She peers at you intently, as if searching for the slightest hint of makeup, of which you are wearing none.<br>
<br>
"@@.npc_manager;Really? No makeup? You are supposed to use your lunchtime to FIX your makeup, not remove it entirely!@@"
<<case "nomakeupmakeup">>
She frowns slightly. "@@.npc_manager;Did you think this "no makeup" makeup would act as some sort of loophole? I am sorry, my dear, but things do not work that way. Your makeup is to fully bring out your feminine features and this, well... it is hardly sufficient.@@"
<<case "normalmakeup">>
She smiles. "@@.npc_manager;You continue to wear the right sort of makeup, good job... if only you could have kept on top of maintenance!@@"
<<case "expertmakeup">>
"@@.npc_manager;Hmm, interesting makeup choice. A bit distracting for my taste, but it suits you well enough so I have no major objection.@@"
<<case "camgirl" "egirl" "qtpie">>
"@@.npc_manager;Hmm, interesting makeup choice. A bit heavy, but acceptable.@@"
<<case "moviestar">>
"@@.npc_manager;Perhaps this choice of makeup is a bit much? Certainly it is quite impressive but, well... if it is too complicated for you to keep looking good you would be better served with something simpler.@@"
<<case "ultimatebimbo">>
She shakes her head. "@@.npc_manager;I am sorry, but this sort of makeup well... it is distraction, and not the sort of impression that is optimal for a <<if $fetish.sissy>>SISSI <</if>>Secretary to display. You work in a representative position, someone visiting the office should find themselves looking upon a cute, beautiful, welcoming <<if $fetish.sissy>>SISSI <</if>>Secretary... not wonder if they have accidentally stumbled into a whorehouse.@@"
<<case "sissy_doll">>
"@@.npc_manager;You know, I do so delight in looking upon you as my sweet, <<if $fetish.sissy>>SISSI<<else>>girl<</if>> doll... if only you could maintain things properly.@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<br><br>
<<if $scene.template != "" && $scene.messed >= 50>>
"@@.npc_manager;Your style choice be what it may... you really need to take better care of yourself. Your face is all but a wreck right now. That should have been your second priority for lunch. After delivering my food, of course.@@"
<<elseif $scene.template != "" && $scene.messed >= 25>>
She shakes her head. "@@.npc_manager;Some might consider this level of decay alright for late afternoon, but I hold to a higher standard. You should have fixed your makeup during lunch, as slight as the damage may be this does not meet the high bar I expect my <<if $fetish.sissy>>SISSI <</if>>Secretary to meet.@@"
<<else>>
"@@.npc_manager;On the upside at least, things are in good shape but, well... is proper application of the wrong thing really something to be applauded?@@"
<</if>>
<</if>>
<br><br>
<<if $npc_manager.flags.lunch_makeup_fail == 1>>
"@@.npc_manager;This being your first failure, and being that I have quite the busy afternoon ahead of me, I will take it easy on you and merely let you off with a warning.@@"<br>
<br>
Her gaze narrows as she is suddenly looming over you and the room seems to momentarily darken. "@@.npc_manager_dom;Do NOT test my charity and fail me again.@@"
<<elseif $npc_manager.flags.lunch_makeup_fail == 2>>
"@@.npc_manager;Another failure...@@" she shakes her head. "@@.npc_manager;In a way perhaps this is my own fault... if I had treated you more firmly at the moment of your first mistake this could have been prevented... as it is, well, I suppose we shall have to make up for lost time.@@"<br>
<br>
In a blur, she grabs you by the hair and spins you around, landing a quick flurry of blows to your bottom that has you yelping in pain<<if $scene.template == "">>; of course your permanently applied makeup shows not a hint of damage, even as tears run down your cheeks.<<else>> as your <<if $scene.template != "" && $scene.messed > 25>>already damaged <</if>>makeup becomes tear-streaked.<</if>><br>
<br>
<<if $scene.makeup == "ultimatebimbo">>
<<=setup.getNpcName('npc_manager', 'formal')>> sighs. "@@.npc_manager;Normally I would punish such sloppy behaviour with trashy makeup to match, but you have beat me to it in painting yourself up like a whore. Since I can hardly make you look any more a tramp than you already do I will just advise you to figure out a style more appropriate to your duties as a proper <<if $fetish.sissy>>SISSI <</if>>Secretary — I will allow you to remain as you are, but I would quite appreciate it if you adopted something a bit more work-appropriate. Your job is a representative position, someone visiting the office should find themselves looking upon a cute, beautiful, welcoming <<if $fetish.sissy>>SISSI <</if>>Secretary... not wonder if they have accidentally stumbled into a whorehouse.@@"
<<else>>
"@@.npc_manager;Pathetic, now look at yourself!@@" She states after she has finished turning your bottom red right through your clothing. "@@.npc_manager;There is no way you can finish off your shift looking like... that. Since you insist on acting the part of the forgetful bimbo there is only one thing for it. You stay here while I call in an expert.@@" <<=setup.getNpcName('npc_manager', 'formal')>> disappears back into her office as you gingerly sit down to wait, your bottom quite sore from her swift punishment.<br>
<br>
Catching your breath, you do not have long to wait before <<=setup.getNpcName('npc_barista', 'nickname')>> comes bouncing into the room with a wide grin and a makeup kit in one hand.<br>
<br>
"@@.npc_barista;Hiya! Hoo-boy, you do need some work, I hope you at least had some fun getting to that state!@@"<br>
<br>
You shake your head, but <<=setup.getNpcName('npc_barista', 'nickname')>> is barely paying attention to you as she sets out her things and starts mixing up makeup remover.
<</if>>
<<elseif $npc_manager.flags.lunch_makeup_fail == 3>>
She frowns and shakes her head. "@@.npc_manager;Again you fail to maintain proper makeup into the afternoon...@@"<br>
<br>
<<if $player.sec_style.clothing.makeup == "forced">>
You recognise the familiar permanent makeup-applying mask in her hand as she approaches, you consider fleeing, but she is upon you before you can even more.<br>
<br>
"@@.npc_manager;You know this could have been permanent the first time now... well, maybe the second time's the charm, hmm?@@" She brings the mask to your face, pressing it tight as the mouth insert swells to silence you as the nanobots set to work on your skin.
<<else>>
As she approaches, you see what looks like a featureless mask in her hand. Before you can object, she is placing the mask over your face, a pad fitting between your lips and instantly swelling to act as a gag as the entire contraption presses tight against your flesh.
<</if>>
You feel a warm tingling across your face, just enough to be painful yet you cannot so much as flinch away from the enveloping mask as it remains securely sealed to your face, blinding you and silencing your screams.<br>
<br>
The mask pulled away after perhaps a minute or two, a mirror is held in front of your face allowing you to gaze upon your "new" features — your face now looking like that of a cute porcelain doll.<br>
<br>
"@@.npc_manager;There, that should solve your issues, permanently...@@"<br>
<br>
With a parting smirk, she stalks back to her inner office leaving you with your new doll-like appearance to return to work.
<<elseif $scene.teachDoll>>
<<=setup.getNpcName('npc_manager', 'formal')>> sighs heavily. "@@.npc_manager;What is it with you and makeup? As I tell you time and time again, you work in a representative position. How can you properly do that if your face is a mess? It really is a lovely face, but without proper makeup it becomes a garish distraction, a first impression of horror that will ripple outwards to affect every subsequent interaction.@@" She shakes her head. "@@.npc_manager;No, this string of failures... well, I think it is time to take a different approach, to show you just what "alternatives" there are if you are unable to meet the perfectly reasonable and respectable standards of your current responsibilities.@@"<br>
<br>
You gulp nervously as <<=setup.getNpcName('npc_manager', 'formal')>> continues. "@@.npc_manager;Towards that end I think you would benefit from an... alternate shift this afternoon, a bit of a learning experience as to what could be in store for you if you continue to fail to meet expectations and are thus cast into a role where the opportunity for failure is... lessened.@@"<br>
<br>
There is a knock on the door and <<=setup.getNpcName('npc_manager', 'formal')>> finally smiles. "@@.npc_manager;And that must be them now — I do so appreciate punctuality. Well, go on, now, get the door.@@"<br>
<br>
[<<moveTo "event_doll_makeup_unlock_1" "Welcome your guest." 180>>]
<<else>>
<<if $scene.permanent != "" && !($scene.template != "" && $scene.template == $scene.permanent) && $scene.permanent != "sissy_doll">>
"@@.npc_manager;Failure, again? I do not understand why you keep spending money to undo the permanent solution to your problem while simultaneously failing to keep on top of your responsibilities.@@"
<<else>>
"@@.npc_manager;I give you a solution that would make this whole "makeup task" all but trivial and yet you go out of your way to do the wrong thing... I confess sometimes I quite fail to understand the minds of <<if $fetish.sissy>>sissies<<else>>girls like you<</if>>. Would it not be so much easier to just be obedient?@@"
<</if>>
<br><br>
She fetches the now-familiar makeup applying mask and approaches you.<br>
<br>
"@@.npc_manager;No matter. I do so enjoy looking upon my sweet doll... if only her behaviour could better match her sweet demeanour.@@"<br>
<br>
There is no resisting her grasp as <<=setup.getNpcName('npc_manager', 'formal')>> presses the mask over your face, the familiar burning sensation applying the permanent doll-face makeup to you once more.
<</if>>
<<else>>
<<set $player.work.nowWorking = true>>
<<set $player.work.startTime = $now>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary_work_afternoon_start">>
<</if>>
<</if>>
<br><br>
<<if ($npc_manager.flags.lunch_makeup_fail == 2) && $scene.inspection_failed && $scene.makeup != "ultimatebimbo">>
[<<moveTo 'event_makeup_lunch_fail_bimbo' 'Sit still.' 600 "<<set $scene.inspection_failed = false>>">>]
<<elseif !$scene.teachDoll>>
She returns to her office leaving you to start your afternoon.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start working." 0 "<<set $player.work.nowWorking = true>><<set $scene.inspection_failed = false>>">>]
<</if>>
</div>/*#
#desc: post-lunch makeup punishment, get bimbo makeup from npc_barista
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = 'ultimatebimbo'>>
<<setThreshold "feminization" "voluntary_path_feminization" "bimbo_makeup">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Humming happily to herself <<=setup.getNpcName('npc_barista', 'nickname')>> swiftly removes your ruined makeup and starts applying a fresh coat fast and heavy. It feels weird, like you're developing several extra layers of skin as she cakes things on and then sets to painting.<br>
<br>
You're a bit worried as to what you're about to face as she puts on the final touches. Even your eyelashes feel heavy thanks to her adding on some extensions. She grins wide before holding up a mirror.<br>
<br>
"@@.npc_barista;Ta-da! Like, wow, you look so hawt this way!@@"<br>
<br>
You gawk at the bimbo slut looking back at you from the other side of the mirror. Your every feature has been exaggerated for peak sexuality resulting in a look both impressive and quite artificial.<br>
<br>
<<if def $player.makeup.unlocked["ultimatebimbo"] && $player.makeup.unlocked["ultimatebimbo"].unlocked>>
"@@.npc_barista;Well, I gotta, like, get back to the cafe, I'll see ya later, sexy!@@"
<<else>>
"@@.npc_barista;Well, I gotta, like, get back to the cafe, but if you ever wanna learn to do this on your own just let me know!@@"
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start working." 0 "<<set $player.work.nowWorking = true>>">>]
</div>/*#
#desc: manager leaves her office for a meeting
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task') && !setup.checkItemOwned('manager_paddle') && $now.getUTCDay() == 4>>
<<completeWorkEvent>>
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're working away per usual when <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner sanctum.<br>
<br>
"@@.npc_manager;My presence is required for a... meeting. I should be back in half an hour or so. Stay behaved!@@"<br>
<br>
She continues past and out of the office without waiting for your acknowledgement.<br>
<br>
<<printThought "Huh, I wonder what that was about?">><br>
<br>
[<<moveTo "event_manager_out_of_office_return" "Continue working." 1800>>]<br>
[<<moveTo "event_manager_out_of_office_1" "Sneak into her office." 60>>]
</div>/*#
#desc: try to sneak into manager's office while she is away
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_manager.flags.office_unlocked && $npc_manager.stage > 1 && !($npc_manager.stage == 5 && !State.hasPlayed("event_ai_stage5_infiltrate_14")) && $npc_ai.profile>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage == 5 && State.hasPlayed("theme_ai_evil_ex_1")>>
You check the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office. Somewhat surprisingly, it is unlocked...<br>
<br>
[<<moveTo "event_manager_out_of_office_return" "This was a bad idea, lock the door and go back to work." 1740>>]<br>
[<<moveTo "event_manager_out_of_office_root" "Time to explore..." 60 "<<set $scene.timeremaining=1680>>">>]
<<elseif $npc_manager.flags.office_unlocked && $npc_manager.stage > 1 && !($npc_manager.stage == 5 && !State.hasPlayed("event_ai_stage5_infiltrate_14")) && $npc_ai.profile>>
You check the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office to find it locked. You are about to turn back to your desk when <<=setup.getNpcName('npc_ai', 'first')>> appears. She graces you with a silent nod and you hear a soft click. The door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner sanctum swings ever so slightly open.<br>
<br>
[<<moveTo "event_manager_out_of_office_return" "This was a bad idea, lock the door and go back to work." 1740>>]<br>
[<<moveTo "event_manager_out_of_office_root" "Time to explore..." 60 "<<set $scene.timeremaining=1680>>">>]
<<else>>
You check the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, but it is quite securely locked.<br>
<br>
<<printThought "Dang... well, I probably just would have gotten into trouble anyway.">><br>
<br>
[<<moveTo "event_manager_out_of_office_return" "Continue working." 1800>>]
<</if>>
</div>/*#
#desc: alone in manager's office
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.theft.entered_office = true>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<set _mod = 1+(setup.getTotalValue("bimbofication")-setup.getTotalValue("smart"))/20>>
<<set $scene.timeguess = _mod*$scene.timeremaining/60>>
<<elseif setup.getTotalValue("smart") >= 10>>
<<set $scene.timeguess = $scene.timeremaining/60>>
<<else>>
<<set _randomMod = random(20)-10>>
<<set $scene.timeguess = _randomMod *.05 * $scene.timeremaining/60>>
<</if>>
<</if>>
<<if $scene.timeremaining < 0>>
<<initRoom>>
<<set $scene.caughtSnooping = true>>
<<moveTo "event_manager_out_of_office_check">>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
You look around <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. Large and impressive it seems strangely empty without her powerful presence.<br>
<br>
<<set _timeGuess=Math.max(5,Math.floor($scene.timeguess))>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<printThought "I hope I, like don't get caught? I probably have like <<=_timeGuess>> minutes until she returns?">>
<<elseif setup.getTotalValue("smart") >= 10>>
<<printThought "I should be careful not to get caught. I think I have about <<=_timeGuess>> minutes until she returns, but I probably shouldn't cut it too close...">>
<<else>>
<<set _timeGuess=Math.max(5,Math.floor($scene.timeguess))>>
<<printThought "I should be mindful of the time, I figure she'll be back in about <<=_timeGuess>> minutes?">>
<</if>>
<br><br>
[<<moveTo "event_manager_out_of_office_wardrobe" "Search her wardrobe." 600 "<<set $scene.timeremaining-=600>>">>]<br>
[<<moveTo "event_manager_out_of_office_desk" "Search her desk." 300 "<<set $scene.timeremaining-=300>>">>]<br>
[<<moveTo "event_manager_out_of_office_check" "Back to your desk." 60 "<<set $scene.timeremaining-=60>><<set $scene.caughtSnooping=false>>">>]
</div>/*#
#desc: alone in manager's office, search her wardrobe
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_wardrobe.png">>
<div id="invframe" class="scrolltext">
You open up <<=ps(setup.getNpcName('npc_manager', 'formal'))>> wardrobe to find close to a dozen matching outfits in the style of her normal work attire, as well as a few dressier and fetishistic options. Each dress has below it a matching pair of shoes, there are also a number of drawers.<br>
<br>
<<if $currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task')>>
<<if setup.checkItemInInventory('manager_skirt')>>
[@@.link_locked;You already swiped one of her outfits.@@]<br>
<<elseif setup.checkItemOwned('manager_skirt_copy')>>
[@@.link_locked;I already bought an outfit like hers, it would be an unnecessary risk to steal one.@@]<br>
<<else>>
<<if !setup.checkItemOwned('manager_skirt')>>
<<printThought 'Hmm, taking one of her outfits would certainly be the most "authentic" options, but do I dare?'>><br>
<br>
<<if !setup.checkItemOwned('manager_skirt')>>
[<<moveTo "event_manager_out_of_office_wardrobe_dress" "Pilfer one of her outfits, she won't notice... right?" 120 "<<set $scene.timeremaining-=120>>">>]<br>
<<else>>
[@@.link_locked;I already have a dress like hers, stealing another one would be just asking for trouble.@@]<br>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemOwned('manager_heels')>>
[@@.link_locked;I already have a pair of her shoes, a second would be pointless.@@]<br>
<<else>>
[<<moveTo "event_manager_out_of_office_wardrobe_heels" "Swipe one of her spare pairs of heels. She has so many she probably won't notice." 120 "<<set $scene.timeremaining-=120>>">>]
<</if>>
<<else>>
[@@.link_locked;Hmm, she'd probably notice anything missing, best to leave things here.@@]
<</if>>
<br><br>
[<<moveTo "event_manager_out_of_office_wardrobe_drawers" "Search the drawers." 300 "<<set $scene.timeremaining-=300>>">>]<br>
[<<moveTo "event_manager_out_of_office_root" "Close the wardrobe and return to office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, search drawers
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_wardrobe.png">>
<div id="invframe" class="scrolltext">
You search through the drawers of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> wardrobe. Some are locked and those that are not contain nothing of particular interest.<br>
<br>
[<<moveTo "event_manager_out_of_office_root" "Look at something else in the office." 60 "<<set $scene.timeremaining-=60>>">>]<br>
[<<moveTo "event_manager_out_of_office_wardrobe" "Back." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, steal one of her dresses
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'manager_skirt'>>
<<addItem 'manager_shirt'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_wardrobe.png">>
<div id="invframe" class="scrolltext">
You swipe a dress at random marveling for a moment at how luxurious and light the fabric feels.<br>
<br>
<<printThought "I should get back to my desk before I get caught...">><br>
<br>
[<<moveTo "event_manager_out_of_office_root" "Continue exploring her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, steal a pair of her heels
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'manager_heels'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_wardrobe.png">>
<div id="invframe" class="scrolltext">
You swipe a pair of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> heels, shuffling the remaining shoes so that the missing gap is not obvious.<br>
<br>
<<printThought "I should get back to my desk before I get caught...">><br>
<br>
[<<moveTo "event_manager_out_of_office_root" "Continue exploring her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, search her desk
#status: RELEASED 0.6.0.0
#ignore_spell: mk1
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_desk.png">>
<div id="invframe" class="scrolltext">
You look through <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desk.
<<if $npc_manager.stage < 2>>
Unfortunately every drawer you check seems to be locked and you wonder what secrets she might be keeping in the large wooden desk.
<<else>>
In the drawers you find a lack of any sort of office supplies, but plenty of paddles, nipple clamps, dildos, butt plugs and other assorted accoutrement.<br>
<br>
<<if $currentTasks.hasOwnProperty('ai_robot_body_mimic_manager_task') && !setup.checkItemOwned('manager_paddle')>>
<<printThought 'One of her "For <<if $fetish.sissy>>SISSI <</if>>Secretary use only" paddles would surely help make my mimicry of her more authentic...'>><br>
<br>
<<if setup.checkItemOwned("manager_paddle_repaired") || setup.checkItemOwned("manager_paddle_broken")>>
[@@.link_locked;I already have one of her paddles, taking another would only raise suspicions.@@]
<<elseif setup.checkItemOwned('manager_paddle')>>
<<if setup.checkItemInInventory('manager_paddle')>>
<<printThought "I should return her paddle before she notices it's missing...">>
<<else>>
<<printThought "I should return her paddle before she notices it's missing, but I forgot it at home!">>
<</if>>
<br><br>
[<<moveTo "event_manager_out_of_office_desk_paddle_return" "Return the paddle." 120 "<<set $scene.timeremaining-=120>>">>]
<<else>>
[<<moveTo "event_manager_out_of_office_desk_paddle" "Pilfer a paddle." 120 "<<set $scene.timeremaining-=120>>">>]
<</if>>
<br><br>
<</if>>
<<if !setup.checkItemOwned('pillbottle')>>
You find a large bottle filled with <<if $fetish.sissy>>Sissy<<else>>Antiboyotic<</if>> Mk1 pills.<br>
<br>
[<<moveTo "event_manager_out_of_office_desk" "Swipe the bottle." 60 "<<set $scene.timeremaining-=60>><<addItem 'pillbottle'>>">>]<br>
<br>
<</if>>
<<if $player.flags.data_crystal.manager && !setup.checkItemOwned('party_data_crystal') && $npc_boss.flags.data_crystal < 2>>
Going through drawers you find the data crystal from the party you gave to her.<br>
<br>
[<<moveTo "event_manager_out_of_office_desk" "Swipe the data crystal." 60 "<<set $scene.timeremaining-=60>><<addItem 'party_data_crystal'>>">>]<br>
<br>
<</if>>
<</if>>
[<<moveTo "event_manager_out_of_office_desk_computer" "Try to access her computer." 120 "<<set $scene.timeremaining-=120>>">>]<br>
[<<moveTo "event_manager_out_of_office_desk_picture" "Look at the other stuff on her desk." 300 "<<set $scene.timeremaining-=300>>">>]<br>
[<<moveTo "event_manager_out_of_office_root" "Explore some other part of her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, look at picture on desk
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_desk.png">>
<div id="invframe" class="scrolltext">
Overall <<=ps(setup.getNpcName('npc_manager', 'formal'))>> is as meticulously and rigidly ordered as you might expect, the clean, un-broken expanse of a "paperless" existence without any clutter. The only real stand-out item other than her computer is a video picture-frame. Looking closer, you recognise <<=setup.getNpcName('npc_manager', 'formal')>> and
<<if $npc_secretary.flags.checkedPicture>>
your predecessor, <<=setup.getNpcName('npc_secretary', 'nickname')>>. There is no indication to show when the image was taken, but the two of them are dressed casually with rolling surf in the background. It almost seems like some sort of holiday together and you wonder at what sort of relationship the two of them had. Given your own interactions with <<=setup.getNpcName('npc_manager', 'formal')>> there is no doubt she takes a somewhat... loose interpretation of manager/subordinate relations, but there is a note of tenderness in her expression that
<<if $npc_manager.flags.party.ditch>>
reminds you of the evening you spent drinking with her after failing to attend the after work party and
<</if>>
you find yourself wishing you could see her like that more often.
<<else>>
another woman. There is no indication to show when the image was taken, but the two of them are dressed casually with rolling surf in the background. Perhaps some sort of holiday? While there is nothing overt the two women appear more than just friendly with one another and you find yourself wondering who this mysterious woman from your <<=ps(setup.getNpcName('npc_manager', 'title'))>> past could possibly be.
<</if>>
<br><br>
Carefully putting the picture back, you ponder how little you really know about your employer, especially compared to the way you seem almost an open book to her.<br>
<br>
[<<moveTo "event_manager_out_of_office_root" "Explore some other part of her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, search her wardrobe
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'manager_paddle'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_desk.png">>
<div id="invframe" class="scrolltext">
You grab the "For <<if $fetish.sissy>>SISSI <</if>>Secretary use only" pink paddle. Holding it in your hand you can't help but remember the times it was used on you... and the certainty that you will be getting even worse if she ever finds out that you stole it...<br>
<br>
<<printThought "I should get back to my desk before I get caught...">><br>
<br>
[<<moveTo "event_manager_out_of_office_root" "Continue exploring her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, return paddle
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_desk.png">>
<div id="invframe" class="scrolltext">
You carefully put the "For <<if $fetish.sissy>>SISSI <</if>>Secretary use only" pink paddle back in the drawer where it belongs.<br>
<br>
<<printThought "I should get back to my desk before I get caught...">><br>
<br>
[<<moveTo "event_manager_out_of_office_root" "Continue exploring her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, try to use her computer
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_computer.png">>
<div id="invframe" class="scrolltext">
You try to log on to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> computer, but she appears to practice proper security practices and locked it before stepping away.<br>
<br>
[<<moveTo "event_manager_out_of_office_password_guess" "Try and guess a password." 60 "<<set $scene.timeremaining-=120>>">>]<br>
<<if setup.checkItemInInventory("manager_slice")>>
[<<moveTo "event_evil_ex_redeem_1_hack_1" 'Plug in the thumb drive <<=setup.getNpcName("npc_ai","first")>> gave you.' 60>>]<br>
<</if>>
[<<moveTo "event_manager_out_of_office_root" "Explore some other part of her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: alone in manager's office, try to guess password
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_computer.png">>
<div id="invframe" class="scrolltext">
You type in a guess <<=ps(setup.getNpcName('npc_manager', 'formal'))>> password, but are sent right back to the login screen.<br>
<br>
[<<moveTo "event_manager_out_of_office_password_guess" "Try and guess a password." 60 "<<set $scene.timeremaining-=120>>">>]<br>
[<<moveTo "event_manager_out_of_office_root" "Explore some other part of her office." 60 "<<set $scene.timeremaining-=60>>">>]
</div>/*#
#desc: check if you get caught in manager's office
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.caughtwithpaddle = setup.checkItemInInventory('manager_paddle')>>
<<set $scene.caughtwithdress = setup.checkItemInInventory('manager_skirt')>>
<<if $scene.caughtwithpaddle>>
<<deleteItem 'manager_paddle'>>
<</if>>
<<if $scene.timeremaining <= 0 || $scene.caughtSnooping || $scene.caughtwithpaddle || $scene.caughtwithdress>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<if $scene.caughtwithdress>>
<<set $npc_manager.flags.caughtwithdress = true>>
<<deleteItem 'manager_skirt'>>
<<deleteItem 'manager_shirt'>>
<<if setup.checkItemInInventory("manager_heels")>>
<<deleteItem 'manager_heels'>>
<</if>>
<</if>>
<<if setup.checkItemInInventory("manager_heels")>>
<<removeWorkEvent 'manager_out_of_office_ai'>>
<</if>>
<<set $scene.caughtwithpills = $scene.caughtSnooping && setup.checkItemInInventory('pillbottle')>>
<<if $scene.caughtwithpills>>
<<deleteItem 'pillbottle'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.timeremaining <= 0>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.timeremaining <= 0 || $scene.caughtwithdress || $scene.caughtwithpaddle>>
<<if $scene.caughtSnooping>>
You are looking around the office when you hear the door, turning around and freezing like a deer in the headlights as <<=setup.getNpcName('npc_manager', 'formal')>> walks in, her own brief expression of surprise narrowing swiftly as you fleetingly hope that she's the sort of predator that can only see movement.
<<else>>
You are on your way out of your office and back to your desk when <<=setup.getNpcName('npc_manager', 'formal')>> comes through the door. Her look of surprise narrows quickly as you freeze in fear.
<</if>>
<br><br>
"@@.npc_manager;Were you sneaking around in my office while I was out?@@" She asks as she approaches you, like a tiger stalking its helpless prey.<br>
<br>
<<if $scene.caughtwithdress || $scene.caughtwithpaddle || $scene.caughtwithpills>>
<<if $scene.caughtwithdress>>
"@@.npc_manager;And what is this?@@" She asks, plucking the dress and heels from your grasp. "@@.npc_manager;Were you... stealing one of my outfits?@@"<br>
<br>
<<printThought "Hmm... I feel like she only seemed to care about the dress... I wonder if I didn't get greedy and only took the heels she wouldn't notice?">>
<</if>>
<<if $scene.caughtwithpaddle>>
"@@.npc_manager;And this?@@" She states as she plucks the paddle from your grasp "@@.npc_manager;Did you think if I did not have a paddle I would not punish you?@@"<br>
<br>
<</if>>
<<if $scene.caughtwithpills>>
"@@.npc_manager;Stealing drugs, are we?@@" She asks, snatching back the bottle of pills. "@@.npc_manager;I do not think that much drugs would be a good idea for you, hmm? Far too tempting.@@"<br>
<br>
<</if>>
She shakes her head as you quake in your boots. "@@.npc_manager;You naughty, foolish girl, of course you know that such actions must be met with immediate discipline.@@"
<<else>>
"@@.npc_manager;And just what were you doing in there hmm?@@"<br>
<br>
You are too terrified to speak as she comes to stand in front of you, her piercing gaze nailing you in place.<br>
<br>
"@@.npc_manager;Cat got your tongue? Well, no matter, I am sure your lips will be loosened after a bit of punishment and if not... well, hopefully you will at least learn a lesson.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_out_of_office_theft_punish_1" "It's punishment time..." 60 "<<set $scene.timeremaining-=60>>">>]
<<else>>
You hurry out of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, locking the door behind you before returning to your desk and resuming working, hoping that she will not notice any evidence of your snooping around.<br>
<br>
[<<moveTo "event_manager_out_of_office_return" "Resume working." $scene.timeremaining "<<set $npc_manager.flags.theft.escaped = true>>">>]
<</if>>
</div>/*#
#desc: manager returns to her office from a meeting
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory('pillbottle')>>
<<set $player.flags.pink_pill.stolen = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> returns from her "meeting" looking somewhat flush. Gracing you with a simple nod, she continues past into her inner office and closes the door.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 0 "<<completeWorkEvent>>">>]<br>
</div>/*#
#desc: punished for stealing from manager's office
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "bondage_mitts">>
<<wearItem "bondage_mitts" true>>
<<manipulateItem 'bondage_mitts' 'lock' true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Stepping towards you <<=setup.getNpcName('npc_manager', 'formal')>> grins menacingly. "@@.npc_manager;You know, in some cultures the punishment for theft would be to chop off the offender's hand...@@" She gives you a moment to consider such a fearful possibility before smiling. "@@.npc_manager;Of course that would be quite barbaric, but still... I believe such can inspire an appropriate punishment for your pilfering fingers.@@"<br>
<br>
Opening up one of the locked drawers of her desk she pulls out a pair of pink leather mitts. Thickly padded they would completely envelop one's hands, locking around the wrist and greatly restricting what actions the wearer could perform.<br>
<br>
<<switch $npc_manager.stage>>
<<case 2>>
<<printThought 'Wait, why does she have something like that "on hand?"'>>
<<case 3>>
<<printThought 'Of course she has bondage mitts "on hand."'>>
<<case 4 5>>
<<printThought 'This Company...'>>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<br><br>
Grabbing hold of your wrist in a vice-like grip, she buckles a mitt onto each of your hands, the padded interior comfortable, but forcing your hands into helpless fists.<br>
<br>
"@@.npc_manager;There, that ought to keep you out of mischief for the rest of the day, now go on, back to work.@@"<br>
<br>
[<<moveTo "event_manager_out_of_office_theft_punish_2" "Object that you can't work like this!" 60 "<<set $scene.object=true>>">>]<br>
[<<moveTo "event_manager_out_of_office_theft_punish_2" "Dutifully return to your desk." 180 "<<set $scene.object=false>>">>]
</div>/*#
#desc: sent back to work after being caught stealing from manager's office
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.theft.caught_stealing = true>>
<<if $scene.object>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<applyExperience 'bdsm' 3 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 5 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.object>>
Recovering from your moment of stunned shock as she snapped the mitts onto your hands you flail around and ask how you can possibly do any work like this!<br>
<br>
"@@.npc_manager;Perhaps you should have considered that before you decided to forgo your duties in favour of thievery. Now, unless you would like to add difficulty sitting down to your challenges I recommend you march back to your desk and do the best you can.@@"<br>
<br>
[<<moveTo "event_manager_out_of_office_theft_punish_2_bad" "Dig in your heels, this is too much!" 60>>]<br>
[<<moveTo "event_manager_out_of_office_theft_punish_2" "Give up and return to your desk." 180 "<<set $scene.object=false>>">>]
<<else>>
Meekly you head for the door, only to discover your balled up, padded hands are unable to get purchase on the doorknob! Trying to squeeze and twist you blush in embarrassment as <<=setup.getNpcName('npc_manager', 'formal')>> laughs at your predicament.<br>
<br>
"@@.npc_manager;Aww, you poor girl! Cannot even work a doorknob, but that is alright, Mistress is here to help.@@"<br>
<br>
Approaching from behind she casually swings the door open with one hand while her other gives your butt a squeeze. "@@.npc_manager;There you go! Now back to your desk and do your best!@@"<br>
<br>
A quick slap on your ass is more surprising than painful as she spurs you on your way.<br>
<br>
The door to her inner office closes behind you as you take your seat and shuffle forward and try to figure out how you are going to get any work done this afternoon.<br>
<br>
[<<moveTo "event_manager_out_of_office_theft_punish_3" "Attempt to work." 0 "<<set $player.timebased.fatiguemulti = 1.5>><<set $player.timebased.stressmulti = 3>><<set $player.work.style = 'bondage_mitts_work'>>">>]<br>
[<<moveTo "event_manager_out_of_office_theft_punish_3" "What's the point? Just sit until the end of your shift." 0 "<<set $player.timebased.fatiguemulti = .75>><<set $player.timebased.stressmulti = 1.5>><<set $player.work.style = 'bondage_mitts'>>">>]
<</if>>
</div>/*#
#desc: punished for complaining about working in bondage mitts
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_FRIEND>>
<<if setup.getTotalValue("bdsm") > 10>>
<<changeHorny 10>>
<<elseif setup.getTotalValue("bdsm") > 5>>
<<changeHorny 5>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
With your bound hands you are helpless to resist as <<=setup.getNpcName('npc_manager', 'formal')>> spins you around and has you bent over her knee as she lands a hard blow to your bottom, the force barely dissipated by your clothing.<br>
<br>
"@@.npc_manager;You. Naughty. Girl.@@" She states, each word punctuated by another had slap to your bum. "@@.npc_manager;Your job is to obey and do what I tell you, now stop being a brat and get. To. Work.@@"<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
Your body can't help but react to her spanking, certainly it hurts, but it also turns you on something fierce. You are unable to suppress a moan and you hear her let out a sharp laugh in amused response.
<<elseif setup.getTotalValue("bdsm") > 5>>
You gasp at the blossoming pain in your bum, even as you feel other feelings stirring in response to her harsh handling.
<<else>>
You whimper in pain, very much regretful of your disobedience.
<</if>>
<br><br>
Grabbing hold of you by the hair, she practically drags you to the door, shoving you out of the office and then slamming it behind you with a bang. Barely keeping on your feet you take a deep breath and head for your desk.<br>
<br>
Wincing as you sit down, you stare at your computer and try to figure out how you can possibly get any work done this afternoon.<br>
<br>
[<<moveTo "event_manager_out_of_office_theft_punish_3" "Attempt to work." 0 "<<set $player.timebased.fatiguemulti = 1.5>><<set $player.timebased.stressmulti = 3>><<set $player.work.style = 'bondage_mitts_work'>>">>]<br>
[<<moveTo "event_manager_out_of_office_theft_punish_3" "What's the point? Just sit until the end of your shift." 0 "<<set $player.timebased.fatiguemulti = .75>><<set $player.timebased.stressmulti = 1.5>><<set $player.work.style = 'bondage_mitts'>>">>]
</div>/*#
#desc: afternoon work in bondage mitts
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_evening.hour, $player.work.time_evening.minutes)>>
<<set $player.timebased.fatiguemulti = 1>>
<<resetStressMulti>>
<<include "endPartialShift">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<switch $player.work.style>>
<<case 'bondage_mitts_work'>>
Despite your severe handicap, you do your best to discharge your duties, figuring out how to nudge your mouse with one otherwise useless hand and using a pencil clutched in your teeth to click and type.<br>
<br>
The effort is as frustrating as it is exhausting, time slowly ticking by as you accomplish a mere fraction of what you could accomplish even working sloppily.
<<case 'bondage_mitts'>>
Giving up in frustration, you don't even try to work just sitting at your desk and waiting for the day to be over.
<<default>>
ERROR: unexpected player.work.style <<=$player.work.style>>
<</switch>>
<br><br>
The end of your shift arrives and the door to your <<=ps(setup.getNpcName('npc_manager', 'title'))>> inner office swings ominously open, her voice calling out for you to "@@.npc_manager_dom;Come in, dear.@@"<br>
<br>
[<<moveTo "event_manager_out_of_office_theft_punish_4" "Continue." 60>>]
</div>/*#
#desc: end of day after bondage mitt punishment
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $player.work.style>>
<<case 'bondage_mitts_work'>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<case 'bondage_mitts'>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</switch>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You meekly walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office and the heavy door closes ominously shut behind you. The echoing thud driving home the fact that you are trapped in here. With her.<br>
<br>
<<switch $player.work.style>>
<<case 'bondage_mitts_work'>>
"@@.npc_manager;Well, I hope you had a... productive afternoon. I noticed you did your best despite your handicap which tells me that perhaps you have learned your lesson.@@"
<<case 'bondage_mitts'>>
"@@.npc_manager;Well, I have to say I am very disappointed, did you even try to work at all? I had no expectation of you meeting your normal quota but, well... failing to try is among the worst sorts of failures.@@"
<<default>>
ERROR: unexpected player.work.style <<=$player.work.style>>
<</switch>>
<br><br>
Rising to her feet, she walks around her desk. "@@.npc_manager;Now, as with all punishments the purpose is reformation, so let me see how you have learned the lesson of your prior failure...@@"<br>
<br>
[<<moveTo "event_manager_out_of_office_theft_punish_5" "Submissively beg forgiveness." 60 "<<set $scene.action='talk_sub'>>">>]<br>
[<<moveTo "event_manager_out_of_office_theft_punish_5" "Try and convince her you've learned your lesson." 60 "<<set $scene.action='talk_smart'>>">>]<br>
[<<moveTo "event_manager_out_of_office_theft_punish_5" "Offer a foot massage... if she'll free your hands." 600 "<<set $scene.action='foot'>>">>]<br>
<<if $player.virgin.cunnilingus>>
[<<moveTo "event_manager_out_of_office_theft_punish_5" "Offer to eat her out." 600 "<<set $scene.action='pussy'>>">>]<br>
<</if>>
[<<moveTo "event_manager_out_of_office_theft_punish_5" "Offer to eat her ass." 600 "<<set $scene.action='ass'>>">>]<br>
[<<moveTo "event_manager_out_of_office_theft_punish_5" "Throw a fit." 600 "<<set $scene.action='bad'>>">>]<br>
</div>/*#
#desc: show penitence after bondage mitt punishment
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'talk_sub'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'very' $SEEN_FRIEND>>
<<case 'talk_smart'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'very' $SEEN_FRIEND>>
<<case 'foot'>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'foot' 12 'very' $SEEN_FRIEND>>
<<case 'pussy'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<case 'ass'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if !$player.virgin.analingus>>
<<set $player.virgin.analingus = "npc_manager">>
<</if>>
<<case 'bad'>>
<<decrementEmotion 'affection' 'npc_manager' 3>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</switch>>
<<if $npc_manager.flags.hascagekey && $npc_manager.flags.trustplayerwithkey>>
<<if $scene.action == 'bad' || !$npc_manager.flags.playerstayedinchastity>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $npc_manager.flags.chastitydays = 0>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<addItem $scene.keyId>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<</if>>
<<removeItem "bondage_mitts" true>>
<<deleteItem "bondage_mitts">>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'talk_sub'>>
<<if setup.getTotalValue("submission") > 10>>
You drop to your knees and bow before her, apologising profusely for your failure and begging her forgiveness. You promise to use this opportunity to re-dedicate yourself to her service and become a properly obedient submissive that one day will be worthy of becoming her slave.
<<else>>
Carefully lowering to your knees, you apologise for your error, promising that you have learned your lesson thanks to her punishment and that you will be putting such privacy-violating misbehaviour behind you.
<</if>>
<br><br>
She looks down at you and slowly nods. "@@.npc_manager;Very well, I forgive you, just do not let something like this happen again, larceny does not become you.@@"<br>
<br>
You sigh in relief as she removes your mitts and you wiggle your fingers almost marveling at the sudden freedom.
<<case 'talk_smart'>>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
You efficiently elucidate the lessons her punishment has impressed upon you, how you deeply regret your earlier transgression and will endeavour to perform up to her expectations in the future.
<<else>>
You efficiently apologise for your earlier violation, thanking her for the creative, and appropriate, corrective measures she applied.
<</if>>
<br><br>
She looks impressed at you monologue nodding slightly before approaching and removing the mitts.<br>
<br>
"@@.npc_manager;Well, well, seems like you did quite a bit of thinking today. I like it, the thought that I might have enough confidence in you to hand off some of my workload well... that would make you a fine <<if $fetish.sissy>>SISSI <</if>>secretary to be certain.@@"
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You apologise for your violation of her privacy and attempted theft, begging her for forgiveness and promising to do better in the future.<br>
<br>
She seems accepting, but unimpressed by your apology.
<<else>>
Stumbling and stuttering you apologise for your transgression.<br>
<br>
"@@.npc_manager;Disappointing, while I appreciate the sentiment your elucidation of such was well... quite unimpressive and ill-qualifying for one of your position.@@"
<</if>>
Approaching you she removes your mitts. "@@.npc_manager;Now, do keep this lesson in mind in the future. I am training you to be an efficient <<if $fetish.sissy>>SISSI <</if>>secretary, a productive member of society, not some criminal thief.@@"
<</if>>
<br><br>
Working the kinks of your stiff fingers you thank her and turn to leave.
<<case 'foot'>>
You explain that you would love to "@@.pc;Make things up@@" to her with one of your famous foot massages except... you hold up your bound hands in demonstration of the impossibility of such an action.<br>
<br>
She smiles, looking both pleased and amused as she walks towards you and begins removing your mitts. "@@.npc_manager;Such a clever girl and really... how could I resist a nice massage after a long day?@@"<br>
<br>
Sitting on the edge of her desk she raises a foot to your face and you take it in hand, working the stiffness out of your fingers as you slide to your knees and begin kissing her heels.<br>
<br>
Life returning to your hands you slip off her heels and set to work proper. Desperate to make up for your prior failures you do not just massage her feet you worship them, your tongue tracing between her toes, rubbing her tight arches and working every knot out of her calves as you whisper your devotion.<br>
<br>
She smiles down in approval as you beg forgiveness for your prior misconduct, thanking her for the privilege of serving her, asking her to continue to train you to be her perfect <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
A touch breathless by the end of your speech you look up as she gently pulls back her foot and smiles down. "@@.npc_manager;I guess it is true that sometimes a little misbehaviour can be the key to new levels of obedience. I absolutely love this new behaviour — more than worth the loss of productivity due to your correction.@@"<br>
<br>
You thank her and gently slip her heels back onto her feet with a final kiss to each toe and she stands over you.
<<case 'pussy'>>
You curtsy gently and ask if you could "@@.pc;Make things up@@" to her with your mouth in another way?<br>
<br>
Leaning against the edge of her desk she smiles slightly. "@@.npc_manager;My, my, such a thirsty girl, but yet, I think I can find a nice use for that sweet tongue of yours...@@"<br>
<br>
She hikes up her skirt to reveal her lack of underthings and your face is soon pressed between her thighs. One hand on your head is more a reminder than a control and she purrs softly as you take a lick, the first taste drawing you in deeper as you relish in her lovely feminine flavour.<br>
<br>
Thighs squeezing ever so gently around your head she rocks her hips as you lick and kiss and suck, her moans your reward for a job well done even as she grabs hold of your head and pulls you off before she reaches climax.<br>
<br>
"@@.npc_manager;Mmmm, yes.@@" She states with a content smile as you lick your lips and catch your breath "@@.npc_manager;I believe that will do for now... almost enough to want to catch you again sometime, but no, no, I think it would be best if you put your criminal ways behind you and focused on behaving properly.@@"
<<case 'ass'>>
Blinking back at her, you state that perhaps, after her long day, a nice relaxing sit on your face would make her feel better, and like the glorious royalty she is.<br>
<br>
She smiles at your oblique pun. "@@.npc_manager;Mmm, that does sound quite nice, so come now, down on your back.@@"<br>
<br>
You understand the reason she has a thick rug in front of the couch that sits at one side of her office as she has you lay down on the surprisingly comfy surface only to look up as she pulls her skirt aside and slowly squats over you.<br>
<br>
She is as beautiful from this angle as any other and you get a brief moment of your vision being filled by her wonderful rear before she is pressed against your face, your lips parting and tongue extending to do as you promised.<br>
<br>
Her rear hole is tight and clean and strong with a feminine muskyness that has you feeling heady with submissive desire. Working your way around you coax her open, finally spearing your way into her with your tongue as she hums happily.<br>
<br>
"@@.npc_manager;My, my, you worked up quite an appetite this afternoon I may have to requisition that new chair sooner than I had planned...@@"<br>
<br>
You don't have time to think about what she meant by that as she presses down harder, timing your breathing becoming a slight challenge as she grinds against your face, the pressure allowing you to reach just a little deeper as you kiss and lick, eyes closed as you focus completely on your act of service...<br>
<br>
It is almost a surprise when <<=setup.getNpcName("npc_manager","formal")>> rises up, your head rising a few centimetres off the ground in a reflexive attempt to follow before you open your eyes and watch her step away.<br>
<br>
"@@.npc_manager;Yes, I think that will do for your penitence, but do try not to re-offend.@@"<br>
<br>
You start to get up to your elbows, but she gently pushes you down, removing your mitts first before helping you up to your feet with a powerful pull.
<<case 'bad'>>
You start to throw a fit about how unfair this punishment has been, but she cuts you off with a glare of death.<br>
<br>
Stalking towards you while staring daggers through your skull she removes the mitts and then points towards the door.<br>
<br>
"@@.npc_manager_dom;Get out,@@" she fumes. "@@.npc_manager;You have been nothing but a disappointment today and I am sick and tired of it. Go home, think about your actions and if you even want to continue your career. More behaviour like this and you will be on thin ice indeed.@@"<br>
<br>
<<if $npc_manager.flags.hascagekey && $npc_manager.flags.trustplayerwithkey>>
Pulling out the key to your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> she tosses it at you with a sneer as you barely catch it. "@@.npc_manager;Take it, you do not even deserve my compassionate guidance, do whatever you want if it gets your head screwed on straight before you show up to work again.@@"<br>
<br>
<</if>>
Stunned you find yourself hurrying out of the office, nearly sprinting for the elevator to escape her wrathful cloud of scorn.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.action != 'bad' && $npc_manager.flags.hascagekey && $npc_manager.flags.trustplayerwithkey>>
Producing the key to your <<if setup.isCage()>>cage<<else>>belt<</if>> with a flourish she waits until it has your full attention before continuing.
<<if $npc_manager.flags.playerstayedinchastity>>
"@@.npc_manager;With your earlier misbehaviour I had almost considered just giving this back to you, I was so dismayed I thought you did not deserve such generous care, but this... well, you have proven how great a prize I have in my possession and so I will continue to reward you by holding on to your gift. Have a lovely evening, my dear, and let us put today's earlier messiness far, far behind us.@@"
<<else>>
"@@.npc_manager;Here you go. Though I am pleased by your return to obedience I do not think you quite deserve the privilege of my acting as your keyholder.@@" She drops the key in your hand where it feels surprisingly weighty, as if made heavy by her disappointment. "@@.npc_manager;Do with it what you will, just remember what you have learned and show up to your next day of work ready to act like the lovely girl that just served me, not the thieving tramp who ransacked my office earlier today.@@"
<</if>>
<br><br>
<</if>>
<<completeWorkEvent>>
<<include "afterWorkVisiting">>
</div>/*#
#desc: manager catches you with paddle heading home
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem "manager_paddle">>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You gather your things and head out. Halfway to the elevator you hear footsteps behind and turn to around to find <<=setup.getNpcName('npc_manager', 'formal')>> bearing down on you.<br>
<br>
"@@.npc_manager;Sorry to interrupt you on your way home but... it would seem that you have accidentally taken something with you. A certain paddle, I believe?@@"<br>
<br>
Wide-eyed in fear, you nervously hand over the paddle, bracing for punishment only for her to merely casually take it from you.<br>
<br>
"@@.npc_manager;Ah, just as I suspected... well, more than suspected, RFID chip in the paddle you know — must not misplace company property!@@"<br>
<br>
"@@.npc_manager;Well? What are you waiting for! Run along home, my dear, I will see you <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>>.@@"<br>
<br>
Scarcely believing your "luck" at getting out without punishment you hurriedly nod and rush up the hallway to the elevator before she can change her mind.<br>
<br>
<<printThought "I'm glad she didn't punish me but... how am I going to smuggle that thing out if it's tracked?">><br>
<br>
<<include "afterWorkVisiting">>
</div><<set $scene.returnFromMasturbation = passage()>>
<<if setup.calcErection(true)>>
<<printThought "I don't think I can focus on my work, I'm just too horny...">><br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.getChastityLevel() == 5>>
Locked in the ultra-secure <<=setup.getItemTypeName('cage')>> means there will be no more letting yourself out to squeeze out a quick one at work.
<<elseif $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey>>
<<if $player.sec_style.submission.permanent_key == "">>
You glance over at the key to your chastity device sitting on the corner of your desk...<br>
<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_work_masturbate_desk_1" "Unlock yourself and squeeze one out at your desk." 0>>]<br>
[<<moveTo "event_work_masturbate_bathroom_1" "Unlock yourself and head for the bathroom for some private relief." 0>>]
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_work_masturbate_desk_vag_1" "Unlock yourself and finger yourself at your desk." 0>>]<br>
[<<moveTo "event_work_masturbate_bathroom_vag_1" "Unlock yourself and head for the bathroom to jill yourself." 0>>]
<</if>>
<<else>>
You glance over at the corner of your desk where your chastity key once lay...<br>
<br>
[@@.link_locked;No such release for you now, <<=setup.getNpcName("npc_manager","formal")>> has assumed permanent control of such matters.@@]
<</if>>
<<elseif $scene.severeCleaning && $npc_manager.flags.require_chastity>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
Thanks to this morning's "severe cleaning" you never had your <<if setup.isCage()>>cage<<else>>belt<</if>> inspected, the key to your "freedom" still in your pocket...<br>
<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_work_masturbate_desk_1" "Unlock yourself and squeeze one out at your desk." 0>>]<br>
[<<moveTo "event_work_masturbate_bathroom_1" "Unlock yourself and head for the bathroom for some private relief." 0>>]<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_work_masturbate_desk_vag_1" "Unlock yourself and finger yourself at your desk." 0>>]<br>
[<<moveTo "event_work_masturbate_bathroom_vag_1" "Unlock yourself and head for the bathroom to jill yourself." 0>>]
<</if>>
<<else>>
Thanks to this morning's "severe cleaning" you never had your <<if setup.isCage()>>cage<<else>>belt<</if>> inspected — arguably a good thing given that you failed to bring the key with you as ordered. Of course that equally means you have no way out of your predicament.
<</if>>
<<else>>
Thanks to this morning's "severe cleaning" you never had your <<if setup.isCage()>>cage<<else>>belt<</if>> inspected, though given that you have no way of unlocking yourself that hardly matters.
<</if>>
<<else>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<if setup.checkItemInInventory(_keyId)>>
<<if $player.body_ref.penis>>
[<<moveTo "event_work_masturbate_desk_1" "Unlock yourself and squeeze one out at your desk." 0>>]<br>
[<<moveTo "event_work_masturbate_bathroom_1" "Unlock yourself and head for the bathroom for some private relief." 0>>]
<</if>>
<<if $player.body_ref.vagina>>
<<if $player.body_ref.penis>><br><</if>>
[<<moveTo "event_work_masturbate_desk_vag_1" "Unlock yourself and finger yourself at your desk." 0>>]<br>
[<<moveTo "event_work_masturbate_bathroom_vag_1" "Unlock yourself and head for the bathroom to jill yourself." 0>>]
<</if>>
<<else>>
Unfortunately for the purposes of resolving your arousal, your
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<getWordMyPenis false>> <<if !setup.isCage()>>and <<getWordVagina>> are<<else>>is<</if>>
<<else>>
<<if $player.body_ref.penis>>
<<getWordMyPenis false>>
<<else>>
<<getWordVagina>>
<</if>>
is
<</if>>
quite securely locked away and the key out of your reach.
<</if>>
<</if>>
<br><br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.getTotalValue("anal") >= 10>>
<<if $player.body_ref.penis>>
[<<moveTo "event_work_masturbate_anal" "Fortunately you're plugged, which is really more your speed these days than playing with your <<getWordMyPenis>>." 0>>]<br>
<<else>>
[<<moveTo "event_work_masturbate_anal" "Fortunately you're plugged, which is really more your speed these days. You may have a <<getWordVagina>> but maybe anal only is better?" 0>>]<br>
<</if>>
<<elseif setup.getTotalValue("anal") > 7>>
[<<moveTo "event_work_masturbate_anal" "Perhaps the plug in your bum would be enough to get you off, even locked up? You're desperate enough to try." 0>>]<br>
<<else>>
[@@.link_locked;You may be plugged, but you don't think you can get yourself off just with that.@@]<br>
<</if>>
<<elseif setup.getTotalValue("anal") >= 10>>
[@@.link_locked;If you had only remembered to plug your cute tush like the butt-slut you are blossoming into, you'd have another option for getting yourself off.@@]<br>
<</if>>
<<if $scene.asked_help_manager>>
[@@.link_locked;I already asked for her help today...@@]
<<elseif ["room_office_sissy_secretary_work_afternoon_start","room_office_sissy_secretary_work_morning_start"].includes(passage())>>
[<<moveTo "event_work_masturbate_office_1" 'Ask <<=setup.getNpcName("npc_manager", "formal")>> for help.' 180 "<<set $scene.removeCage=false>>">>]<br>
<<if $player.sec_style.submission.permanent_key == "">>
<<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey && setup.getChastityLevel() != 5>>
[<<moveTo "event_work_masturbate_office_1" 'Remove your <<if setup.isCage()>>cage<<else>>belt<</if>> and go ask <<=setup.getNpcName("npc_manager", "formal")>> for help.' 180 "<<set $scene.removeCage=true>><<set $scene.cage=setup.getItemFromType('cage')>><<removeItem $scene.cage true>>">>]
<<else>>
[@@.link_locked;I'm locked up and with no key, guess I'm entirely dependent on her...@@]
<</if>>
<<else>>
[@@.link_locked;I permanently gave up my chastity key, guess I'm entirely dependent on her...@@]
<</if>>
<</if>>
<<else>>
You're feeling pent up enough for it to distract from your work. <<if $player.sec_style.body.tblock == "" && $player.sec_style.body.hormones == "">><<printThought "Damn that penis enlarging scam!">> <</if>>You glance around the office, you're alone and you could probably "resolve" your tension fairly quickly...<br>
<br>
<<if $player.body_ref.penis>>
[<<moveTo "event_work_masturbate_desk_1" "Squeeze a quick one out at your desk." 180>>]<br>
<</if>>
<<if $player.body_ref.vagina>>
[<<moveTo "event_work_masturbate_desk_vag_1" "Finger yourself at your desk." 180>>]<br>
<</if>>
[<<moveTo "event_work_masturbate_bathroom_1" "Head to the bathroom for some more secure privacy to get some relief." 0>>]<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.getTotalValue("anal") >= 10>>
<<if $player.body_ref.penis>>
[<<moveTo "event_work_masturbate_anal" "Fortunately you're plugged, which is really more your speed these days than playing with your <<getWordMyPenis>>." 180>>]<br>
<<else>>
[<<moveTo "event_work_masturbate_anal" "Fortunately you're plugged, which is really more your speed these days. You may have a <<getWordVagina>> but maybe anal only is better?" 180>>]<br>
<</if>>
<<else>>
[@@.link_locked;You may be plugged, but you don't think you can get yourself off just with that.@@]<br>
<</if>>
<<else>>
<<if setup.getTotalValue("anal") >= 10>>
[@@.link_locked;If you had only remembered to plug your cute tush like the butt-slut you have blossomed into, you'd have another option for getting yourself off.@@]<br>
<</if>>
<</if>>
<</if>>
<<else>>
[@@.link_locked;You do not feel any urge to masturbate.@@]<br>
<</if>>
<br>/*#
#desc: jerk off at your desk at work
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if State.hasPlayed("event_manager_mandatory_disciplinary_measure_6") && ($npc_manager.flags.cruel || $player.flags.masturbation.work.desk && random(1,3) == 1)>>
<<set $scene.caught_by = 'manager'>>
<<set $player.flags.masturbation.work.desk_caught = true>>
<<elseif $npc_manager.stage == 1>>
<<set $scene.caught_by = 'none'>>
<<else>>
<<switch random(1,5)>>
<<case 1>>
<<set $scene.caught_by = 'manager'>>
<<set $player.flags.masturbation.work.desk_caught = true>>
<<case 2>>
<<set $scene.caught_by = 'ai'>>
<<case 3 4 5>>
<<set $scene.caught_by = 'none'>>
<<set $player.flags.masturbation.work.desk = true>>
<</switch>>
<</if>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $player.flags.masturbation.work.desk = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>
hike up your skirt
<<else>>
pull down your pants
<</if>>
<<if $scene.cage != "">>
and remove your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. Free of its prison, your <<getWordMyPenis false>> swells with excitement. You go to work stroking and playing with your sensitive member, leaning back in your chair and stifling a moan of pleasure.<br>
<br>
Touching yourself feels so good, the forbidden nature of your act only making it more pleasurable as your fingers glide up and down and you revel in the momentary freedom from the cruel chastity device.
<<else>>
and start jerking off. The act of doing it at work, where someone could walk in at any time, has your heart racing, the forbidden nature of your effort only making it more pleasurable as you lean back in your chair and bite your lip.
<</if>>
<br><br>
It had been your intent to be over and done quickly to clear your head for work, but now, with your <<getWordMyPenis false>> in hand you don't want the pleasure to end, but even slowing your pace you can feel your climax rapidly approaching.<br>
<br>
[<<moveTo "event_work_masturbate_desk_2" "The time has cum..." 300>>]
</div>/*#
#desc: caught/cleanup jerking off at your desk at work
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<switch $scene.caught_by>>
<<case 'manager'>>
<<playerOrgasm>>
<<if $npc_manager.flags.require_chastity>>
<<if $scene.cage != "">>
<<set $npc_manager.flags.unlocked_lunch_play = true>>
<</if>>
<<playerOrgasm>>
<<set $player.timebased.horny = 50>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<if $npc_manager.stage >= 3>>
<<set $player.sec_style.submission.permanent_key = "forced">>
<<include "addMilkingTopic">>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_other_keyholder'
0
'theme_manager_discuss_other_keyholder_1'
true
>>
<<wearItem $scene.cage true>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11.5'
6
'event_psychiatrist_session_perm_key_1'
false
>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<else>>
<<applyExperience 'bdsm' 4 'very' $SEEN_FRIEND>>
<</if>>
<<if $npc_manager.stage < 3 && $scene.cage != "">>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<else>>
<<set $npc_manager.flags.unlocked_lunch_play = true>>
<</if>>
<<case 'ai'>>
<<set _top = setup.checkTopBodySlot('tits','top')>>
<<if _top>>
<<changeItemStatus _top 'cumsoaked' '["set",50]'>>
<</if>>
<<playerOrgasm>>
<<set $player.timebased.horny = 40>>
<<case 'none'>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.caught_by>>
<<case 'manager'>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<case 'ai'>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<<case 'none'>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.caught_by>>
<<case 'manager'>>
"@@.npc_manager;Ah-hum@@" You are on the cusp of orgasm when the sound of your <<=setup.getNpcName('npc_manager', 'title')>> clearing her throat freezes you in place. Your eyes snap open and you look up to find her looming above you, staring down over her glasses.<br>
<br>
"@@.npc_manager;And just what, exactly do you think you are doing here?@@"<br>
<br>
<<if $player.body_ref.penis>>
As if your utter humiliation wasn't already bad enough, your <<getWordMyPenis false>> decides that it has had enough, spurting its shameful excitement with such vigour a strand arcs high enough to land across her glasses and, even more horrifying, her cheek.<br>
<br>
Your shock turns to desperate fear as you stare up wide-eyed as she removes her glasses and wipes them off, using a single finger to brush herself off, her expression like stone, rigid and strangely unreadable.
<<else>>
You tremble in fear, unable to even form words as <<=setup.getNpcName('npc_manager', 'formal')>> glowers down at you.
<</if>>
<br><br>
<<if $npc_manager.flags.require_chastity>>
<<if $npc_manager.stage >= 3>>
She shakes her head slowly and extends her hand. "@@.npc_manager_dom;Key. Now.@@"<br>
<br>
Your heart thunders in your chest as you find yourself unable to do anything but obey, reaching fearfully up to hand her the key.<br>
<br>
Her fingers close around it and then she leans down. Her eyes hold you in her inescapable gaze while she efficiently puts you back in chastity and then locks things closed.<br>
<br>
"@@.npc_manager;THIS, is how you should be... and how you WILL be. Because this key.@@" She holds it up, in front of your face. "@@.npc_manager_dom;You are never. Ever. Getting it back.@@"<br>
<br>
She holds your gaze for a final moment before leaning back and turning on her heels, storming back into her office, the door closing behind her like a gavel sealing your final sentence. You look down at your <<getWordMyPenis false>> and shiver, knowing deep down that she was not threatening you, but making a promise as to your chaste and permanently locked future...<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 180 "<<set $player.cutscene.lockinventory = true>>">>]
<<elseif $scene.cage != "">>
"@@.npc_manager;Well! I thought I was showing you a kindness, giving you a modicum of control over your situation but, apparently, that favour has only resulted in you taking advantage of my generosity like an utterly depraved <<if $fetish.sissy>>SISSI<<else>>girl<</if>> slut.@@"<br>
<br>
You want to respond, to beg for forgiveness, for mercy for anything, but you find yourself petrified, and, even worse, your <<getWordMyPenis false>> remains stiff and excited between your fingers despite your climax. Reaching past you towards the desk she picks up your <<if setup.isCage()>>cage<<else>>belt<</if>> and hands it to you.<br>
<br>
"@@.npc_manager;Put it on. Now.@@" She orders, her words causing you to spring into action, cramming your <<getWordMyPenis false>> back into its prison for her to lock it closed with a click. "@@.npc_manager;Good, and since you have proven so woefully unable to control yourself I will hold on to this for safe keeping.@@"<br>
<br>
She makes a show of threading the key onto her necklace and tucking it down her top standing still for a moment of calm before bursting into motion.<br>
<br>
She moves as fast as lightning, her hand shooting out like a cobra to grab you by the hair and pull you up off your chair. Her pull is scary strong and you find yourself helplessly pitched forward, bent over your desk with your face pressed against the smooth hardwood.<br>
<br>
"@@.npc_manager;So.@@" She states, her voice suddenly casual even as she holds you in place as firmly as if you were nailed to the desk. "@@.npc_manager;I daresay that you have reached new heights of disobedience with today's actions — while I certainly understand the... excitement that surely has resulted from your ongoing transformation into a proper <<if $fetish.sissy>>SISSI <</if>>Secretary there are also expectations for you to exhibit decorum and control.@@"<br>
<br>
A hard slap impacts your rear, sending a jolt of pain through your body in spite of what meager padding your clothing provides. One blow begets another, her lecture fading into the background as you whimper and beg for lenience, your cries falling on deaf ears as she continues your punitive paddling until you have wilted in exhaustion, unable even to muster another plea for mercy.<br>
<br>
Releasing her grasp causes you to slide to the ground, glancing up at her annoyed expression and somehow managing to drag yourself back up onto your chair, wincing in pain as you put weight onto your tanned bottom.<br>
<br>
"@@.npc_manager;I do hope that serves as a lesson in what is and is not appropriate behaviour at work. In the future, if you find the excitement of your position proves too much to focus you should let me know, perhaps after you have delivered my lunch, and I may see what I can do to... help your situation.@@"<br>
<br>
Suppressing tears you nod silently as she smiles and turns smartly to disappear back into her inner office.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = true>><<wearItem $scene.cage true>>">>]
<<else>>
You sit petrified. Even with the strange things that have happened in the course of your short time working under <<=setup.getNpcName('npc_manager', 'formal')>>, this has to be a fireable offense, right?<br>
<br>
Taking an overly long time to clean her glasses she seems to be intentionally letting you stew before finally continuing. "@@.npc_manager;This is... quite disappointing, behaving like this, when you are supposed to be working... unfortunately, I need to get to a meeting so your punishment will have to wait until the morning, but know that there WILL be a reckoning.@@"<br>
<br>
You gulp as she hurries past. It takes a few minutes for your pounding heart-rate to come down after which there's really nothing to do, but return to your duties.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<<elseif $player.body_ref.penis && $npc_manager.stage == 1 && !$npc_manager.flags.stage1Promo>>
<<if $fetish.cum>>
<<=setup.getNpcName("npc_manager","formal")>> looks from you to the mess on your desk with a frown.<br>
<br>
"@@.npc_manager;Well? Your failure is bad enough, but are you going to just sit there, or are you going to clean up your mess?@@"<br>
<br>
You reach for a tissue but she shakes her head. "@@.npc_manager;Not like that. With your tongue. Slurp, slurp<<if $fetish.sissy>>, sissy<</if>>.@@"<br>
<br>
[<<moveTo "event_secretary_style_drink_cum_strict_1" "Do as she commands..." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_secretary_style_drink_cum_strict_1" "You aren't going to lick up your cum!" 120 "<<set $scene.obey=false>>">>]
<<else>>
"@@.npc_manager;Come... this failure... well, it is a clear indication that I have been too lax in your development. It is time to... accelerate things.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_strict_1" "Follow..." 180 "<<set $player.cutscene.lockinventory=false>><<set $scene.strict=true>><<set _food = setup.getItemInventorySlotTag('food', 'lunch')>><<if _food>><<deleteItem _food>><</if>>">>]
<</if>>
<<else>>
"@@.npc_manager;Well! I thought I was showing you a kindness, giving you a modicum of control over your situation but, apparently, that favour has only resulted in you taking advantage of my generosity like an utterly depraved <<if $fetish.sissy>>SISSI<<else>>girl<</if>> slut.@@"<br>
<br>
You want to respond, to beg for forgiveness, for mercy for anything, but you find yourself petrified.<br>
<br>
<<if !$player.sec_style.sex.drink_cum>>
<<=setup.getNpcName("npc_manager","formal")>> looks from you to the mess on your desk with a frown.<br>
<br>
"@@.npc_manager;Well? Your failure is bad enough, but are you going to just sit there, or are you going to clean up your mess?@@"<br>
<br>
You reach for a tissue but she shakes her head. "@@.npc_manager;Not like that. With your tongue. Slurp, slurp<<if $fetish.sissy>>, sissy<</if>>.@@"<br>
<br>
[<<moveTo "event_secretary_style_drink_cum_strict_1" "Do as she commands..." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_secretary_style_drink_cum_strict_1" "You aren't going to lick up your cum!" 120 "<<set $scene.obey=false>>">>]
<<else>>
To your shocked surprise <<=setup.getNpcName('npc_manager', 'formal')>> merely hands you a towel. "@@.npc_manager;Wipe yourself up, and — in the future? See me about such issues, I cannot have you playing with yourself at your desk when just anyone might walk in. You work in a representative position, after all.@@"<br>
<br>
She spins on her heels and walks back into her office, leaving you shocked in her wake.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Clean up and get back to work." 180 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
<</if>>
<<case 'ai'>>
Just as you climax your hear a sound from your computer, looking towards the screen with shock as you find a video of yourself playing, the camera in your computer activated to provide a mirror view of your debauchery.<br>
<br>
Despite the shock and humiliation you are too close, and you end up spurting all over yourself as the video freezes on the exact frame of your climax. Your heart pounds as you look at the evidence of your perversion, frozen in place until a shimmering overlay appears and <<=setup.getNpcName('npc_ai', 'first')>> scrolls across the screen.<br>
<br>
"@@.npc_ai;<<uc "Hello unit">> <<uc $player.first_name>><<uc ", I do not believe this sort of behaviour is part of your job description. No matter, I will continue to keep your secrets, but you owe me another favour.">>@@"<br>
<br>
The image blinks away to display your normal desktop as you blink in shock. Catching your breath, you clean up as best you can, <<if setup.checkItemTypeWorn("cage")>>swiftly re-caging yourself and depositing the key back at the corner of your desk <</if>>before you get in any further trouble.<br>
<br>
As you start to work, you have a final, frustrating realisation — despite your climax you are already feeling horny again!<br>
<br>
<<printThought "How can being caught and embarrassed turn me on? What's wrong with me?">><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<<case 'none'>>
With a gasp you cum, managing to have the foresight to aim so that you spurt your joy into your hand rather than making a mess of your workspace.<br>
<br>
[<<moveTo "event_work_masturbate_desk_3" "Lick your hand clean." 300 "<<set $scene.cum=true>>">>]<br>
<<if setup.getTotalValue("cum") < 10>>
[<<moveTo "event_work_masturbate_desk_3" "Find a towel to clean up." 300 "<<set $scene.cum=false>>">>]
<<else>>
[@@.link_locked;You could not possibly let such deliciousness go to waste.@@]
<</if>>
<<default>>
ERROR unexpected caught_by: <<=$scene.caught_by>><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</switch>>
</div>/*#
#desc: forced to drink cum after caught jerking off at your desk at work
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $player.sec_style.sex.drink_cum = "obedient">>
<<else>>
<<set $player.sec_style.sex.drink_cum = "strict">>
<</if>>
<<setThreshold 'cum' 'secretary_cum' 'cumeater_masturbation'>>
<<applyExperience 'cum' 7 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Obediently you lick your desk, disturbed that, while it is bitter and salty... a part of you secretly enjoys it.
<<else>>
You start to object that this can't possibly be part of your job... only for <<=ps(setup.getNpcName("npc_manager","formal"))>> hand to shoot out like a cobra, grabbing you by the hair and rubbing your face in your mess.<br>
<br>
"@@.npc_manager;I said lick it up<<if $fetish.sissy>>, sissy<</if>>!@@"<br>
<br>
You struggle, but you might as well try to lift the company building itself as fight back against <<=ps(setup.getNpcName("npc_manager","formal"))>> implacable grasp. Your tongue extends as she uses you like a floor buffer, rubbing back and forth until you've cleaned things up to her satisfaction, the salty, bitter taste filling your mouth when she finally allows you to lean back simultaneously accentuating your humiliation... while leaving strange thoughts in your mind.<br>
<br>
<<printThought "Actually, the taste isn't that bad... maybe disposing of the evidence would be more efficient? Wait, no! What am I thinking? I'm not some sort of cum-hungry slut... am I?">>
<</if>>
<br><br>
<<if $npc_manager.stage == 1 && !$npc_manager.flags.stage1Promo>>
"@@.npc_manager;Much better. Now, as to the cause of your mess in the first place... this failure... well, it is a clear indication that I have been too lax in your development. It is time to... accelerate things.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_strict_1" "Follow..." 180 "<<set $player.cutscene.lockinventory=false>><<set $scene.strict=true>>">>]
<<else>>
"@@.npc_manager;Much better. And a nice little energy boost for you to pour back into your work.@@"<br>
<br>
She walks away, leaving you more than a touch confused.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Clean up and get back to work." 180 "<<set $player.cutscene.lockinventory = true>>">>]
<</if>>
</div>/*#
#desc: clean yourself up after masturbating at your desk
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<if $scene.cum>>
<<setThreshold 'cum' 'toilet' 'dispose_evidence'>>
<<applyExperience 'cum' 11 'very' $ALONE>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
Eagerly you lick your hand clean of tasty, tasty cum.
<<else>>
After a mere moment's thought you bring your hand to your lips, licking it clean of yummy cummies.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Not having anything immediately at hand to clean off your hand you lick it clean, trying not to think about the enthusiasm with which your tongue searches out every bitter, salty drop.
<<else>>
Looking at the mess on your hand you glance around for some way to clean it up before just licking your fingers clean, trying your best to ignore the taste.
<</if>>
<</if>>
<<else>>
You find a napkin in your desk and wipe off your hands, wadding up the cum-soaked paper and tossing it into the trash basket to hide the evidence of your naughty misbehaviour.
<</if>>
<br><br>
<<printThought "Whew, I should be able to focus on work now but... maybe it's not such a safe idea to do this sort of thing at my desk?">><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: jerk off in office bathroom
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $scene.caught = ((setup.checkItemTypeWorn("cage")) && (random(1,4) == 1))>>
<<playerOrgasm>>
<<set $player.flags.masturbation.work.desk_bathroom = true>>
<</if>>
<<set $player.location = "Work Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("cage")>>
You scoop up the key to your chastity and head for the bathroom, grabbing a private stall before unlocking yourself and sighing with relief as your <<getWordMyPenis false>> springs forth in excitement.
<<else>>
You hurry to the bathroom, grabbing a private stall and exposing yourself<<if $player.body_ref.penis>>, your <<getWordMyPenis false>> springing forth in excitement<<else>>shivering slightly as the cool air hits your wet <<getWordVagina>><</if>>.
<</if>>
<br><br>
Taking the matter in hand, you suppress your moans as you <<if $player.body_ref.penis>>wank, taking less than two minutes before spurting across the stall door in front of you<<else>>finger yourself, taking less than two minutes before your body clenches down around your fingers and you bite your lip to keep from moaning out your orgasm<</if>>.<br>
<br>
Letting out a sigh of contentment, you are overcome by a wave of shame and disgust at having snuck away from your duties to <<if $player.body_ref.penis>>jerk off<<else>>play with yourself<</if>>.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
Your limp <<getWordMyPenis false>> easily fits back into its prison and you lock it closed
<<else>>
You lock your belt back where it belongs
<</if>>
before gathering your things and hurrying back to your desk,
<<else>>
You catch your breath before fixing your clothes and hurrying back to your desk,
<</if>>
now ready to properly focus on your duties.<br>
<br>
<<if $scene.caught>>
[<<moveTo "event_work_masturbate_bathroom_2" "Back to work." 600>>]
<<else>>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: caught by manager coming back to office after jerking off in bathroom
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You return to your office only to find <<=setup.getNpcName('npc_manager', 'formal')>> standing next to your desk, her stern expression, and the key-less dish on the edge of your desk, making it immediately clear that you are in trouble.<br>
<br>
"@@.npc_manager;So, imagine my surprise when I come out to see my lovely secretary and I find that not only are you not at your desk you have absconded with the key to your chastity device!@@"<br>
<br>
"@@.npc_manager;So tell me, my lovely... what took you away from your duties?@@"<br>
<br>
[<<moveTo "event_work_masturbate_bathroom_3" "Lie and say you were just having a piss." 60 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_work_masturbate_bathroom_3" "Admit you were playing with yourself." 60 "<<set $scene.lie=false>>">>]
</div>/*#
#desc: caught by manager coming back to office after jerking off in bathroom
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lie>>
<<set $player.flags.masturbation.work.bathroom_caught = true>>
<<else>>
<<set $player.flags.masturbation.work.bathroom_confess = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
"@@.npc_manager;A piss why would- Oh! I get it, you <<if $player.body_ref.penis>>wanted to go to the bathroom standing up so you<<else>>were worried about sanitation so you thought you<</if>> needed out of your <<if setup.isCage()>>cage<<else>>belt<</if>>!@@" She shakes her head in amusement. "@@.npc_manager;Oh you silly <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, you do not need to remove your <<if setup.isCage()>>cage<<else>>belt<</if>> to attend to nature, <<if $player.body_ref.penis>>you just need to sit down, like a good girl.<<else>>you just take a bit of extra effort cleaning after. Properly performed it is all quite sanitary, I assure you, and well worth the additional time to remain secured, hmm?<</if>>@@"<br>
<br>
"@@.npc_manager;Tell you what, since this was all the result of a... misunderstanding, I will let you off with a warning if you promise me that, in the future, you will always remember to <<if $player.body_ref.penis>>sit to pee. Think of it as your special time to relax and remember what you are working towards<<else>>remain in chastity while at work<</if>>.@@"<br>
<br>
<<if $player.body_ref.penis>>
<<if setup.getTotalValue("feminization") > 10>>
<<printThought "Of course I shouldn't be standing up to pee like a boy, I'm a girl!">><br>
<br>
Without hesitation you beg her forgiveness, promising that, of course, you will always sit down to pee in the future.
<<else>>
<<if setup.getTotalValue("feminization") > 5>>
<<printThought "What I'm working towards... how feminine does she expect me to be?">>
<<else>>
<<printThought "Wait, what does she think I'm working towards? Probably better just to agree with her though.">>
<</if>>
<br><br>
After a few moments hesitation you conclude that this is probably the lightest you're liable to get off and you quickly parrot back the promise not to stand to pee anymore.
<</if>>
<<else>>
Still blushing, you nod nervously, hoping for this embarrassment to be over with soon.
<</if>>
<br><br>
Seemingly satisfied with your response she waits for you to put the key to your <<if setup.isCage()>>cage<<else>>belt<</if>> back on the edge of the desk before smiling at you and returning to her office. You let out a sigh of relief and are about to sit down when you have a sudden thought.<br>
<br>
<<printThought "Wait, she said she came out because she had business, but now she just leaves me alone? Was she just spying on me hoping I'd trip up?">><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
Looking down in shame you admit that you swiped the key to play with yourself in the bathroom.<br>
<br>
"@@.npc_manager;I see...@@" she states, walking towards you. "@@.npc_manager;Well, that is definitely not something you should be doing, but your honesty is quite refreshing...@@" She looks you over, her piercing gaze in search of a better understanding. "@@.npc_manager;Your failure has earned you some discipline, but your honesty means that I will give you a choice. You can admit your lack of self-discipline and give me the key to hold on to until such time as you have demonstrated greater control or we can treat this as a one-off mistake and I administer a formal punishment.@@"<br>
<br>
[<<moveTo "event_work_masturbate_bathroom_4" "Permanently give up control of your chastity." 60 "<<set $scene.punish=false>>">>]<br>
[<<moveTo "event_work_masturbate_bathroom_4" "Ask for an immediate punishment." 60 "<<set $scene.punish=true>>">>]
<</if>>
</div>/*#
#desc: punished or give up key after confessing to unlocking + playing with self in bathroom
#status: RELEASED 0.6.0.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<if $scene.punish>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<<set $npc_manager.flags.unlocked_lunch_play = true>>
<<else>>
<<applyExperience 'submission' 16 'very' $SEEN_FRIEND>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.punish>>
Taking a deep breath, you walk over to the edge of your desk, placing the key in its dish and bending over with your rear exposed. Looking over your shoulder you do your best Bambi eyes and softly state "@@.pc;Please, <<=setup.getNpcName('npc_manager', 'formal')>>, would you punish your <<if $fetish.sissy>>SISSI <</if>>Secretary?@@"<br>
<br>
She looks back with a smile no. Not a smile, a grin, a hungry, intimidating borderline demonic grin.<br>
<br>
"@@.npc_manager;Of course, my dear.@@" She states, her fingers brushing over your rear. "@@.npc_manager;One moment while I fetch your cute paddle.@@"<br>
<br>
You nod, listening to the sharp click of her heels as you remain bent of your desk, the air of the room cool on your exposed bottom as you await her return.<br>
<br>
Glancing towards the door, you watch her stride back in, "for <<if $fetish.sissy>>SISSI <</if>>Secretary use only" pink paddle in hand. You gulp in fearful anticipation.<br>
<br>
"@@.npc_manager;Now, my dear... how many spanks do you think your little transgression deserves?@@"<br>
<br>
Your heart in your throat you hesitantly reply "@@.pc;T-ten?@@"<br>
<br>
"@@.npc_manager;On each cheek? Hmm, that sounds reasonable, get ready, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>!@@"<br>
<br>
You have no more time to prepare before the first blow lands, SMACK! You yelp in pain only for it to be matched with another strike to the other side of your rear.<br>
<br>
Your breaths coming in quick, short gasps you squeeze your fists and focus on counting as you wait for the punishment to end. SMACK! SMACK! Each blow lands hard and sharp as she systematically turns your entire bottom cherry red, alternating cheek to cheek.<br>
<br>
You're up to eight on each side when she pauses and you wonder if, perhaps she is taking mercy on your poor, fire-hot bum.<br>
<br>
"@@.npc_manager;You learning your lesson?@@" She asks, the gentle touch of her hand on your rear still painful in your over-sensitised state.<br>
<br>
"@@.pc;Y-yes, <<=setup.getNpcName('npc_manager', 'formal')>>@@" you reply, wincing as she squeezes your butt.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.balls>>
"@@.npc_manager;Wonderful, now to finish your punishment, with something more precisely targeted towards the cause of this whole problem.@@"<br>
<br>
You're confused what she could mean only for her to reach between your legs to pull your testicles back, exposing them between your thighs while you remain otherwise securely <<if setup.isCage()>>caged<<else>>belted<</if>>.<br>
<br>
SMACK! Though softer than her previous blows this one hurts far more, the paddle perfectly impacting your defenceless testicles. Breath hissing through clenched teeth, you jerk as a second blow lands, somehow even more painful despite you being prepared.<br>
<br>
<</if>>
"@@.npc_manager;I know it hurts, but this is what happens to bad <<if $fetish.sissy>>SISSIs<<else>>girls<</if>>. If I do not punish your failures, how are you to learn and develop into the perfect <<if $fetish.sissy>>SISSI <</if>>Secretary you were meant to be, hmm?@@" SMACK! The paddle lands again and you let out a gasp. One more, by your count unless...<br>
<br>
You feel her fondling your balls, re-arranging them into perfect position before winding back for the final blow. SMACK! It slams into you with a glancing, upward swing crushing your balls and then your sore rear for a full refresher of pain.<br>
<br>
Gasping for air you, try to recover now that the punishment is over, only for a fleeting thought to go through your mind.<br>
<br>
<<printThought 'I bet she would be really impressed if I asked for "one more to grow on..."'>><br>
<br>
[<<moveTo "event_work_masturbate_bathroom_5" "Request one more." 60 "<<set $scene.extra=true>>">>]<br>
[<<moveTo "event_work_masturbate_bathroom_5" "Remain silent." 60 "<<set $scene.extra=false>>">>]
<<else>>
Trembling slightly you hand her the key to your chastity device, simultaneously excited and scared by her gentle smile as she takes it in hand and you realise you have no idea when you will be "free" again.<br>
<br>
"@@.npc_manager;Thank you. I know it can be difficult to admit one's own failings and take the measures required to address them, but, well... know that you doing this makes me proud of you, and even more certain that I made the right choice in choosing to hire you to be my <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
You blush as she places the key on her necklace and it disappears down her shirt.<br>
<br>
"@@.npc_manager;Well, now that there are no more distractions I suppose we had both better be back to work. I will see you later, my dear.@@" She states with a smile before turning and heading back into her office.<br>
<br>
Letting out a held breath you return to your chair, even more alert to the presence of the device locked around your <<getWordMyPenis false>>, especially when you glance towards the edge of your desk and the now-empty dish.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: finish punishment after admitting bathroom masturbation
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.extra>>
<<applyExperience 'bdsm' 6 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.extra>>
Your words are disjoint and breathless as you ask her for one more spank to help make "sure" you have learned your lesson. Face-down on the desk you cannot see her expression and you can sense the beaming pride as she responds.<br>
<br>
"@@.npc_manager;Oh, my, it seems your little misbehaviour really has led you to a place of better understanding your duties as a <<if $fetish.sissy>>SISSI <</if>>Secretary. It would be my pleasure to help solidify your lesson, here, let me make it extra special.@@"<br>
<br>
<<if $player.body_ref.balls>>
You feel her hand once again on your balls, stretching you back with one hand before her other lands a firm slap on your taut, achingly sensitive testicles. "@@.npc_manager;There we go.@@" She states, giving your balls a friendly squeeze.
<<else>>
She spins you around, forcing you to spread your legs and expose yourself completely before she lands a hard, stinging slap across your cunt.
<</if>>
"@@.npc_manager;Keep this in mind the next time you consider misbehaving, <<if $player.body_ref.penis>>spanking it like a pervert may be fun, but it is<<else>>fingers may be fun, but they are<</if>> a pale imitation of the REAL pleasures a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> should be focusing on and I will make sure to continue reinforcing these lessons until they penetrate your cute skull... and other places, besides@@"<br>
<br>
Standing up straight, you wince as you pull up your clothes, the merest brush of fabric against your red bottom<<if $player.body_ref.balls>> and pained testicles<</if>> a fresh agony, but you merely nod in agreement with her words.<br>
<br>
"@@.npc_manager;Excellent, well, since you have learned your lesson, this can stay here for now.@@" She states, giving the key to your <<if setup.isCage()>>cage<<else>>belt<</if>> a gentle pat as it sits safely back in its dish. "@@.npc_manager;Now it is back to work and I will see you later!@@"<br>
<br>
Wincing with each step you slowly ease yourself into your chair, even the thickly padded seat painful against your tush.
<<else>>
You remain silent as you slowly rise to your feet, hissing in pain as you fix your clothes. Arms crossed with the menacing paddle on full display she nods, gently tapping the key resting safely in its dish before silently returning to her inner office.<br>
<br>
Taking a deep breath, you wait for the door to close before carefully walking over to your chair and, wincing in pain, taking your seat to resume your duties.
<</if>>
<br><br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: choose how to anally masturbate at work
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You shift in your chair, feeling the <<=setup.getItemTypeName("plug")>> rubbing delightfully <<if $player.body_ref.penis>>against your prostate<<else>>inside your bum<</if>>. You could probably get off just sitting here, though that seems risky. Alternately you could opt to use the bathroom for a bit of privacy.<br>
<br>
[<<moveTo "event_work_masturbate_anal_desk" "Roll your hips and try to get off at your desk." 300>>]<br>
[<<moveTo "event_work_masturbate_anal_bathroom" "Head for the bathroom for some privacy." 300>>]
</div>/*#
#desc: get off using buttplug at your desk at work
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<if setup.getEffectivePlugSize() <= 5>>
<<changeHorny 20>>
<<else>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction>>
<<applyExperience 'cum' 5 'normal' $ALONE>>
<<set _panties=setup.getItemFromType('panties')>>
<<if _panties!="">>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<</if>>
<<set _plugSize = setup.getEffectivePlugSize()>>
<<applyExperience 'anal' _plugSize 'normal' $SEEN_FRIEND>>
<<set $scene.caught = $player.sec_style.submission.chastity != "" && random(1,3) == 1>>
<<if $scene.caught>>
<<set $npc_manager.flags.unlocked_lunch_play = true>>
<<if setup.checkItemTypeTag('plug', ['ems'])>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.flags.masturbation.work.desk_plug_caught = true>>
<<else>>
<<set $player.flags.masturbation.work.desk_plug = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Settling into your chair, you start rocking your hips to shift the <<=setup.getItemTypeName("plug")>> around inside of you.<br>
<br>
<<if setup.getEffectivePlugSize() > 5>>
<<if setup.getEffectivePlugSize() > 10>>
You smile in pleasure as your body shifts around the massive plug inside of you. As much of a constant distraction its substantial girth and size may be at times like this, it is perfect, filling you up and pressing hard <<if $player.body_ref.penis>>against your prostate<<else>>and deep<</if>>.
<<else>>
The plug in your ass is just big enough to give you that <<if $player.body_ref.penis>>prostate pressure<<else>>gaping feeling<</if>> you crave and you purr in contentment as you clench down, sucking it deeper as you rock back and forth so that it shifts around in your bowels.
<</if>>
<br><br>
Eyes shut in concentration, you focus on your forthcoming analgasm, heart pounding and breath quickening as you get closer and closer only to freeze, shuddering and letting out a panting gasp as you climax, your hips bucking as you <<if $player.body_ref.penis>>fill<<else>>soak<</if>> your panties without ever touching <<if $player.body_ref.penis>>your <<getWordMyPenis>><<else>>anything else<</if>>.<br>
<br>
<<if $scene.caught>>
Opening your eyes, you almost fall out of your chair in shock as you find yourself looking up at <<=setup.getNpcName('npc_manager', 'formal')>>. "@@.npc_manager;Enjoying yourself?@@" she asks with a single raised eyebrow. "@@.npc_manager;Not that I should be surprised that a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> like you would be getting off like this, but, well... what if someone had walked in while you were in the midst of your debauchery? You are my representative, after all and what would one of my colleagues think if they arrived for a meeting to find my secretary wantonly pleasuring herself like a slut?@@"<br>
<br>
You look away in shame, the pleasure you had felt moments ago suddenly evaporated.<br>
<br>
<<if $npc_manager.stage >= 3>>
<<if setup.checkItemTypeTag('plug', ['ems'])>>
A remote appearing in her hand, you cry out in pain as intense shocks suddenly course deep in your ass, your anal occupant lighting up for almost a second of agony.<br>
<br>
"@@.npc_manager;There, let that be a lesson to you that your holes exist to be used to service others, not engage in wanton hedonistic butt-sluttery of your own.@@"<br>
<br>
Still in pain, you nod obediently, even as you recognise the slight stirrings of returning arousal at the brief, but severe, punishment.<br>
<br>
"@@.npc_manager;Anyway, I was just coming out to let you know that I will be in a meeting and should not be disturbed.@@"
<<else>>
A remote appearing in her hand, she clicks it only for you to fail to react. Her gaze narrowing, she clicks again before stopping and glaring down at you. "@@.npc_manager;Did you... neglect to wear a properly-featured plug? You naughty girl! Something vibrating and electric is for your own good, as well as swift behaviour adjustment. I need to get to my meeting so I do not have time for a more thorough punishment, but you had better get that cute butt in order lest I take more... severe measures.@@"
<</if>>
<<else>>
She snorts, "@@.npc_manager;No response? Typical, well, unfortunately I do not have time to punish you at the moment, but you should be more careful lest I shove something nice and big and electrified up your rear and watch how you shift about then, hmm?@@"<br>
<br>
Your heart pounds at the thought as <<if $player.body_ref.penis>>your <<getWordMyPenis>> twitches<<else>>feel wet again<</if>>.<br>
<br>
"@@.npc_manager;Anyway, I was just coming out to let you know that I will be in a meeting and should not be disturbed.@@"
<</if>>
<br><br>
She turns to go only to pause in the doorway. "@@.npc_manager;Oh, and, in the future, if you are having difficulty dealing with your... urges... perhaps I might be of some assistance? Let me know around lunch when I usually have a few minutes free.@@"
<<else>>
Catching your breath, you look around the thankfully still-empty office and, shifting slightly in your chair and enjoying the afterglow of the plug settling inside of you, focus back on your computer.
<</if>>
<br><br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
Though you try hard no amount of grinding on your chair you seem to hit a threshold beyond which you just cannot ascend. You sigh in frustration as you finally give up on your quest; hornier than ever it seems apparent that the toy currently occupying you just isn't enough to push you to a climax.<br>
<br>
<<printThought "Damn, I wish I had something bigger inside of me...">><br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: play with your butt in work bathroom
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<set _lvl = setup.getEffectivePlugSize()>>
<<applyExperience 'anal' _lvl 'normal' $INCOGNITO>>
<<set $player.flags.masturbation.work.desk_bathroom_plug = true>>
<</if>>
<<set $player.location = "Work Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Making your way to a private stall, you drop your clothes to your ankles and sit back, reaching between your legs to play with your plugged bum.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
Reaching past <<if setup.isCage()>>your caged <<getWordMyPenis false>><<else>>the smooth front shield of your belt<</if>>, you ignore your <<if $player.body_ref.penis>>straining, imprisoned member<<else>>dripping, but imprisoned <<getWordVagina>><</if>> to focus on the forbidden <<if $fetish.sissy>>sissy<<else>>penetrative<</if>> pleasures of your rear hole.
<<else>>
<<if $player.body_ref.penis>>
Your <<getWordMyPenis>> is already stiff, growing even harder as you brush against it,
<<else>>
You are already wet,
<</if>>
but you remain focused on the forbidden pleasures of your rear passage.
<</if>>
<br><br>
You moan and bite your lip, shifting the plug back and forth, in and out, teasing a finger around your stretched hole even as you use the toy to press against your sensitive <<if $player.body_ref.penis>>prostate<<else>>bum<</if>>.<br>
<br>
You are interrupted once by the sound of another person entering the bathroom, their casual whistle echoing off the tile as you tense and hold your breath, hoping they don't notice your presence.<br>
<br>
When they finally leave, you resume your efforts with gusto, pumping the plug inside of you until you dribble your joy all over the floor.<br>
<br>
Hurriedly straightening your clothes, you wash your hands and leave the bathroom, doing your best to act as casual as possible even as you are reflexively clenching and almost milking the plug still lodged inside of you.<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask manager to help you get off
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<changeHorny 10>>
<<set $scene.help = random(1,10) < 2*$npc_manager.stage && setup.hasFreeTime($now, $player, $currentTasks, 1800)>>
<<set $scene.asked_help_manager = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You walk into the inner office and ask <<=setup.getNpcName('npc_manager', 'formal')>> if she could "help" you with something.<br>
<br>
<<if $npc_manager.anger > $npc_manager.affection && $npc_manager.anger > 5>>
She glares at you in annoyance.<br>
<br>
"@@.npc_manager;No, I will not "help" you with something — help is something earned by good <<if $player.sec_style.body.name == "">>secretaries<<else>>girls<</if>>, and you have been QUITE naughty of late.@@"<br>
<br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<if $scene.removeCage>><<wearItem $scene.cage true>><</if>>">>]
<<else>>
<<if $scene.help && !setup.calcErection(true)>>
"@@.npc_manager;Help? No, you seem to have things under control at present, now get back to your desk, your time may not be quite so valuable as my own... but that does not excuse wasting it, and thus the company's money.@@"<br>
<br>
[<<moveTo "event_work_masturbate_office_2_abort" "Leave her office." 60 "<<if $scene.removeCage>><<wearItem $scene.cage true>><</if>>">>]
<<elseif $scene.help && setup.calcErection(true)>>
<<if $player.body_ref.penis>>
"@@.npc_manager;Help you with something, what do you—@@" her gaze drifts south to the bulge between your legs.
<<else>>
"@@.npc_manager;Help you with something? And what did you have in mind?@@" She asks with a knowing glance between your legs.
<</if>>
<<if $npc_manager.affection < $npc_manager.anger>>
Her expression remains neutral and her voice even as she continues. "@@.npc_manager;Well, you should have thought of that before you were so rampantly misbehaved. Still, I suppose I should do something so you can remain focused on your work.@@"<br>
<br>
Your heart races and your excitement rises even further in anticipation.<br>
<br>
[<<moveTo "event_work_masturbate_office_2" "Wait." 60 "<<set $scene.style='punish'>>">>]
<<else>>
"@@.npc_manager;Oh, I see the situation. Hmm, yes. I might be able to do something about that. What did you have in mind?@@"<br>
<br>
There is a twinkle in her eye as she grins at you and you have the feeling this is some sort of test.<br>
<br>
<<if $player.body_ref.penis>>
<<set _passage = "Expose your <<getWordMyPenis>>.">>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _passage = "Expose the secure front shield of your chastity belt.">>
<<else>>
<<set _passage = "Expose your <<getWordVagina>>.">>
<</if>>
<</if>>
[<<moveTo "event_work_masturbate_office_2" _passage 60 "<<set $scene.style = 'penis'>>">>]<br>
[<<moveTo "event_work_masturbate_office_2" "Bend over and expose your pert bum." 60 "<<set $scene.style = 'anal'>>">>]<br><br>
[<<moveTo "event_work_masturbate_office_2_abort" "Change your mind and exit her office." 60 "<<if $scene.removeCage>><<wearItem $scene.cage true>><</if>>">>]
<</if>>
<<else>>
"@@.npc_manager;I am very sorry, but I am about to jump on a call, you will have to use your ingenuity and figure things out on your own.@@"<br>
<br>
[<<moveTo "event_work_masturbate_office_2_abort" "Leave her office." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: back out of asking manager for masturbation help
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<wearItem $scene.cage true>>
<<manipulateItem $scene.cage 'lock' true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You return to your desk.
<<if $scene.removeCage>>
You sit thinking for a moment before locking your chastity device back in place.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<printThought 'Unlocking myself was a mistake, why would I disobey her instructions like that? If <<=setup.getNpcName("npc_manager","title")>> wants me in chastity, I should remain in chastity!'>>
<<else>>
<<printThought 'Safer to just follow instructions... hate to think what she would do if she caught me "out of uniform" in the middle of the day.'>>
<</if>>
<<else>>
You take a deep breath, shifting slightly to find a more comfortable position to sit<<if setup.checkItemTypeWorn('cage')>> in your stifling chastity<</if>>.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getTotalValue("submission") > 15>>
<<printThought "I really shouldn't bother her like that. If I deserve pleasure she will tell me, even thinking of asking for it unprompted is wrong.">>
<<else>>
<<printThought "Why did I bother her like that? Better to focus on obedience than risk punishment unless it's for something much more important.">>
<</if>>
<<else>>
<<printThought "That was close... probably shouldn't pester her like that without a better reason.">>
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 60>>]
</div>/*#
#desc: bend over or expose penis in hopes of manager helping you get off
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.removeCage && $npc_manager.flags.require_chastity>>
<<set $player.flags.masturbation.work.cage = true>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<if $player.flags.chastity_style == "cage">>
<<addItem "electric_chastity">>
<<wearItem "electric_chastity" true>>
<<manipulateItem "electric_chastity" "lock" true>>
<<else>>
<<addItem "chastity_belt_electric">>
<<wearItem "chastity_belt_electric" true>>
<<manipulateItem "chastity_belt_electric" "lock" true>>
<</if>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<elseif $scene.style == "punish">>
<<set $player.flags.masturbation.work.punish = true>>
<<if $npc_manager.stage >=3>>
<<include "calcPlugFunctions">>
<<set $scene.chastity_ems = $scene.cage != "" &&setup.getItemObj($scene.cage).tags.includes("ems")>>
<<if $scene.plug_ems || $scene.chastity_ems>>
<<set $scene.style = "angry_ems">>
<<if $scene.plug_ems>>
<<changeHorny -20>>
<<applyExperience 'bdsm' 11 'normal' $SEEN_FRIEND>>
<</if>>
<<if $scene.chastity_ems>>
<<changeHorny -20>>
<<applyExperience 'bdsm' 11 'very' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set $scene.style = "angry_noems">>
<<set $player.timebased.horny = 0>>
<<applyExperience 'bdsm' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'very' $SEEN_FRIEND>>
<<if setup.inWardrobe('remote_control_plug')>>
<<wardrobeToItem 'remote_control_plug'>>
<</if>>
<<if $scene.plug != "">>
<<wearItem 'remote_control_plug' true>>
<<else>>
<<wearItem 'remote_control_plug' true>>
<</if>>
<</if>>
<<else>>
<<set $scene.style = "angry_ice">>
<<set $player.timebased.horny = 0>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set $scene.angry = ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.affection)+($npc_manager.affection)>>
<<if $scene.angry>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<elseif $scene.style == 'anal'>>
<<set $player.flags.masturbation.work.help_anal = true>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.vibrate = setup.checkItemTypeTag('plug', ['vibrating'])>>
<<playerOrgasm>>
<<set _panties=setup.getItemFromType('panties')>>
<<if _panties!="">>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<<applyExperience 'anal' 11 'very' $SEEN_FRIEND>>
<<else>>
<<set $player.flags.masturbation.work.help = true>>
<<changeHorny 20>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage && $npc_manager.flags.require_chastity>>
You realise your mistake the instant you finish revealing your <<if $player.body_ref.penis>>un-chaste <<getWordMyPenis false>><<else>>bare crotch<</if>> as <<=ps(setup.getNpcName('npc_manager', 'formal'))>> eyes flare.<br>
<br>
"@@.npc_manager_dom;What. Is. THAT?@@"<br>
<br>
Moving faster than you can react, she practically flies across her desk to stand in front of you, her hand clenching down <<if $player.body_ref.penis>>on your terrified <<getWordMyPenis false>><<else>>over your <<getWordVagina>><</if>>.<br>
<br>
"@@.npc_manager;You know the rules. When you are at work, you are to be securely locked up. Since you have so utterly failed I believe it is warranted to take drastic measures.@@"<br>
<br>
Still holding you firm, she drags you around to the side of her desk where she reaches into a drawer to pull out an intimidating steel chastity device. "@@.npc_manager;Forgetting such a vital training device once again... well, I think it is time to deal with this problem... permanently.@@"<br>
<br>
<<if $player.body_ref.penis>>
With a bit of help from her nails, her squeeze soon has you shrunken sufficient for her to cram your <<getWordMyPenis false>> inside its cold steel embrace.
<<else>>
Cold steel is soon wrapping around your waist, and between your legs, placing you back under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> literal, as well as figurative, control.
<</if>>
<br><br>
"@@.npc_manager;This lovely device is perfect for keeping the most... recalcitrant <<if $fetish.sissy>>sissies<<else>>girls<</if>> under control.@@" She states, nimbly threading you down the snug tube before locking it in place.
<<if $fetish.sounding && $player.body_ref.penis>>
"@@.npc_manager;And now for the final cherry on top...@@" She adds before producing a narrow, gently curved rod. Greasing it with a thin lubricant she aligns it with the tip of the device and you are treated to the strange sensation of it sliding into you.<br>
<br>
Smooth and slick it is not painful, but it is definitely odd and VERY intimate as the sounding rod bottoms out inside of you and locks in place leaving you effectively imprisoned inside and out.<br>
<</if>>
<br>
Waving a small fob over the device you hear a sharp click of the lock before she wiggles the fob in front of your face. "@@.npc_manager;Over a trillion, trillion combinations, and this time you will NOT be getting the key back at the end of the day.@@"<br>
<br>
Still trying to adjust to the sensations of this new device, you stare back at her, but she only smiles. "@@.npc_manager;Oh, and, just so you know... it is also electrified if you ever think of hmm... misbehaving again.@@"<br>
<br>
Wide-eyed with fear you tremble as she steps back.<br>
<br>
"@@.npc_manager;Now, if you would please be returning to your desk? I believe this has addressed the issue that you... presented me with.@@"<br>
<br>
Properly chagrined you nod and turn away in defeat.
<<else>>
<<switch $scene.style>>
<<case 'angry_ems'>>
You should have been on guard when she failed to rise from her seat, but you are too horny to notice until the remote is in her hand. You cry out in pain and flail about as painful electricity courses through your
<<if $scene.plug_ems && $scene.chastity_ems>>
ass and <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<getWordVagina>><</if>>, penetrating deep into you from both directions.
<<elseif $scene.plug_ems>>
rear, your <<if $player.body_ref.penis>>prostate<<else>>bum<</if>> lighting up red with pain until you cry out.
<<elseif $scene.chastity_ems>>
<<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<getWordVagina>><</if>>, your <<if $scene.cage>>cage<<else>>belt<</if>>, and its penetrating plug, punishing you inside and out.
<<else>>
ERROR: no ems should not be possible
<</if>>
<br><br>
"@@.npc_manager;There, is that not just so much more efficient?@@" She asks cheerily as you pant and try to recover. "@@.npc_manager;Now run along back to work, unless you need another shock to help you focus?@@"<br>
<br>
"invigorated" you quickly shake and scurry back to your desk as her laughter echoes behind you.
<<case 'angry_noems'>>
You are waiting in eager anticipation when she pulls out a remote, clicking it only for a look of puzzlement, followed by annoyance to come over her face.<br>
<br>
"@@.npc_manager;Did you... you KNOW that a remote controlled plug is part of your uniform, show me your ass, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>!@@"<br>
<br>
Before you can react, she has somehow made it around the desk and bent you over, one hand clutching your hair as she exposes your ass
<<if $scene.plug>>
and the <<=setup.getItemTypeName("plug")>> presently occupying it.<br>
<br>
"@@.npc_manager;What is this?@@" She asks before ripping it out of you as you gasp. "@@.npc_manager;THIS is not regulation, this is not regulation at all.@@"
<<else>>
your quite empty ass.<br>
<br>
"@@.npc_manager;What is this? You know you are suppose to be properly plugged, for training and so that I can better reward or punish you at any time... I know you had something in this cute hole this morning so what were you thinking removing it?@@"<br>
<br>
You try to respond, but she cuts you off with a hard spank. "@@.npc_manager;That was a rhetorical question, of course you were not thinking at all, you foolish girl.@@"
<</if>>
<br><br>
Releasing her grip on you results in you falling to the ground, but you have barely collected yourself to push back to your feet before she has gone to her desk and back, a fresh remote controlled plug in one hand, and bottle of lube in the other. A quick squirt of the latter is all you get before the former is jammed deep in your hole.<br>
<br>
While you are still adjusting to this fresh intruder she brandishes the remote again, shock after shock coursing through you as you writhe on the floor, the punishment not stopping until you are crying and begging her for mercy.<br>
<br>
"@@.npc_manager;Hmmf@@" she states, standing over you as you desperately kiss and worship her feet, willing to do anything to prevent further punishment. "@@.npc_manager;I suppose that is a sufficient lesson for now. Go crawl back to your desk, and this time keep that cute ass properly filled!@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName('npc_manager', 'title')>>,@@" you gasp, unable to muster the energy to stand as you obey her instruction to the letter; crawling on all fours out of the room before pulling yourself back up into your chair and trying to re-focus on your work.
<<case 'angry_ice'>>
With a scheming grin she reaches behind her desk to grab something before walking around and approaching you, one hand mysteriously behind her back.<br>
<br>
"@@.npc_manager;Is my poor secretary feeling too hot and bothered?@@" She coos, gently pulling your clothes aside with one hand. "@@.npc_manager;Well, let me just... cool those fires.@@" She adds before swiftly pressing an ice-pack against your <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>><<getWordVagina>><</if>>.<br>
<br>
You let out a stifled cry as you wilt instantly, your arousal drained swiftly as she grins down at you. "@@.npc_manager;Shhh, shhh, shhh, Mistress makes it aaaallll better.@@" She whispers as you whimper slightly, grateful when she removes the freezing pack a few moments later. "@@.npc_manager;There we go, nice and relaxed and ready to return to work, run along now, dear!@@"<br>
<br>
Fixing your clothes, and hoping they will do something to warm you up you nod and hurry out of the room.
<<case 'penis'>>
<<if $scene.angry>>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns and you instantly realise you've made a mistake.<br>
<br>
"@@.npc_manager;Have you learned nothing? That thing of yours is locked up for a reason, you really need to learn to look elsewhere if you want to get pleasure in a proper manner. In any case I cannot help you, please return to your desk.@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> stares for several seconds before nodding sagely.<br>
<br>
"@@.npc_manager;I see, yes, I believe I can "help" you, please come over here and place your hands behind your back.@@"<br>
<br>
You do as instructed as she reaches into her desk drawer to come up with what you think is called a wand vibrator?<br>
<br>
"@@.npc_manager;Remain still.@@" She orders as she activates the vibrator and touches it <<if setup.checkItemTypeWorn("cage")>>to <<if setup.isCage()>>your cage<<else>>the front of your belt<</if>><<else>>between your legs<</if>>.<br>
<br>
You gasp almost instantly, the powerful vibrations
<<if setup.checkItemTypeWorn("cage")>>
refracted and intensified as they run through <<if setup.isCage()>>the cage<<else>>your belt<</if>> to stimulate you from all sides.
<<else>>
not just stimulating you with buzzing pleasure, but rattling your bones with the intensity.
<</if>>
You stagger and she pulls the vibe away with a playful frown.<br>
<br>
"@@.npc_manager;I said remain still, now behave or you will not get your reward.@@"<br>
<br>
Biting your lip, you nod and do your best as she goes back and forth, touching <<if setup.checkItemTypeWorn("cage")>>the vibrator to <<if setup.isCage()>>your cage<<else>>the front of your belt<</if>><<else>>you with the vibrator<</if>> for a few seconds at a time, using it like a conductor's wand as she repeatedly brings you to the brink of orgasm before pausing just long enough to keep you frustrated.<br>
<br>
You're at the point where the vibrations last for less than a second at a time. Finally you gasp out a desperate "@@.pc;Please...@@" when she pulls the vibrator away yet again to leave you on the cusp of climax.<br>
<br>
"@@.npc_manager;Perfection. Well, back to work for you, I do hope that I have been of assistance.@@"<br>
<br>
Your lip trembles as you realise that, after all this edging, she was planning to leave you unsatisfied the whole time. A glance at her gleefully grinning expression squashes all possibility of argument and you reluctantly fix your clothes and walk away, worse off than when you came in.
<</if>>
<<case 'anal'>>
<<if $scene.angry>>
You wiggle your butt, but it is to no avail as she merely frowns.<br>
<br>
"@@.npc_manager;The effort is appreciated, and you do look quite cute, but I am afraid I am just too busy to take time away for such a misbehaving <<if $fetish.sissy>>SISSI<<else>>girl<</if>> as yourself.@@"<br>
<br>
You pout, but she remains firm as she dismisses you from her office.<br>
<br>
<<printThought "Maybe I should work harder to get on her good side.">>
<<else>>
<<if $scene.plug != "">>
Wiggling your butt in your <<=ps(setup.getNpcName('npc_manager', 'title'))>> direction, you look back to see
<<if $scene.vibrate>>
her already with remote in hand, barely having time to react before your <<if $player.body_ref.penis>>prostate<<else>>bum<</if>> is joyously thrumming with powerful vibrations.
<<else>>
her already approaching with a pleased expression on her face.
<</if>>
<br><br>
"@@.npc_manager;Such a good girl. Knowing the proper orifice for pleasure to flow into her body, well, one of them, at least.@@"<br>
<br>
Walking around her desk to stand behind you, she grinds against your rear, dry humping you over the desk. Her pressure causes the plug in your rear to shift<<if $scene.vibrate>> as it continues to vibrate<<else>>and almost thrust inside of you<</if>>. You moan and gasp as you enjoy the simulated pounding, and it isn't long before you <<if setup.isCage()>> burst inside your cage, leaking<<else>>tremble within your belt, leaking<</if>> into your underwear as her hips press against your rear.<br>
<br>
"@@.npc_manager;So easy!@@" She jokes as she steps away<<if $scene.vibrate>> and clicks to cease the vibrations<</if>>. "@@.npc_manager;Well, I am glad to have helped you out, but I must return to work, have a good day!@@"<br>
<br>
Staggering up to your feet, you wipe the drool from your chin and mumble a thanks before heading back to your desk.
<<else>>
You wiggle your butt in invitation as <<=setup.getNpcName('npc_manager', 'formal')>> makes a show of snapping a latex glove over one hand before walking towards you.<br>
<br>
Bending you over and exposing your hole she coos as she begins rubbing lube around your puckered rear.<br>
<br>
"@@.npc_manager;Such a lovely <<if $fetish.sissy>>SISSI <</if>>hole, so inviting!@@"<br>
<br>
You moan as the first of her fingers slides easily into you.
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
You moan as one finger becomes two, then three then her entire fist is pistoning into you.
<<else>>
You moan as one finger becomes two, then three as she slowly eases you open until, finally, her entire fist slides into your well-trained hole.
<</if>>
<br><br>
Churning you hard and deep she gives it to you just like your slut ass loves and it isn't long before you're making a right mess of your panties as you explode with joy<<if setup.isCage()>> through your cage<<else>>, leaking out past your chastity shield<</if>>.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
As you become accustomed to the first finger, she works you wider, sliding a second, then finally a third inside of you to twist and thrust, teasing your hole wider and tickling your <<if $player.body_ref.penis>>prostate<<else>>bum<</if>> until you explode in delight.
<<else>>
Sensing your novice experience she uses only a single finger inside of you, but even this is more than enough as it curls<<if $player.body_ref.penis>> toward your prostate<<else>>inside your rear<</if>>, rubbing and stroking in new and exciting ways as she brings you to a rapid, and unique, climax.
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Eager, eager@@" she states in amusement, teasing your hole for just a little longer before sliding out and helping you back to your feet. You're still catching your breath as she helps you fix your clothes and sends you back to work with a smile and a parting butt-squeeze.<br>
<</if>>
<</if>>
<<default>>
ERROR unexpected manager masturbation style: <<=$scene.style>>
<</switch>>
<</if>>
<br><br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<if $scene.removeCage && !$npc_manager.flags.require_chastity>><<wearItem $scene.cage true>><</if>>">>]
</div>/*#
#desc: finger yourself at your desk at work
#status: RELEASED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<if $npc_manager.stage == 1>>
<<set $scene.caught_by = 'none'>>
<<set $player.flags.masturbation.work.desk_vag = true>>
<<else>>
<<switch random(1,5)>>
<<case 1 2>>
<<set $scene.caught_by = 'manager'>>
<<set $player.flags.masturbation.work.desk_caught = true>>
<<case 3 4 5>>
<<set $scene.caught_by = 'none'>>
<<set $player.flags.masturbation.work.desk_vag = true>>
<</switch>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You
<<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>
hike up your skirt
<<else>>
pull down your pants
<</if>>
<<if $scene.cage != "">>
and remove your chastity belt. Free of its prison, you waste no time thrusting two fingers into your cunt while your thumb rubs your clit. You bite your lip to suppress a moan, leaning back in your chair and closing your eyes in pleasure.<br>
<br>
Touching yourself feels so good, the forbidden nature of your act only making it more pleasurable as your fingers work in and out and you revel in the momentary freedom from the cruel chastity device.
<<else>>
and start fingering yourself. Two knuckles deep, you more your fingers fast and hard, more turned on with every moment.
<</if>>
<br><br>
It had been your intent to be over and done quickly to clear your head for work, but now, with a full three fingers twisting inside of you, you don't want the pleasure to end, but even slowing your pace you can feel your climax rapidly approaching.<br>
<br>
[<<moveTo "event_work_masturbate_desk_vag_2" "The time has cum..." 300>>]
</div>/*#
#desc: caught/cleanup fingering self at your desk at work
#status: RELEASED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<switch $scene.caught_by>>
<<case 'manager'>>
<<set $npc_manager.flags.unlocked_lunch_play = true>>
<<set $player.timebased.horny = 50>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<if $npc_manager.stage >= 3 && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
<<set $player.sec_style.submission.permanent_key = "forced">>
<<include "addMilkingTopic">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11.5'
6
'event_psychiatrist_session_perm_key_1'
false
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_other_keyholder'
0
'theme_manager_discuss_other_keyholder_1'
true
>>
<<wearItem $scene.cage true>>
<<set $npc_manager.flags.require_chastity = true>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<else>>
<<applyExperience 'bdsm' 4 'very' $SEEN_FRIEND>>
<</if>>
<<case 'none'>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.caught_by>>
<<case 'manager'>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<case 'none'>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.caught_by>>
<<case 'manager'>>
"@@.npc_manager;Ah-hem@@" You are on the cusp of orgasm when the sound of your <<=setup.getNpcName('npc_manager', 'title')>> clearing her throat freezes you in place. Your eyes snap open and you look up to find her looming above you, staring down over her glasses.<br>
<br>
"@@.npc_manager;And just what, exactly do you think you are doing here?@@"<br>
<br>
As if your utter embarrassment wasn't already bad enough, your body reacts to the situation by clenching around your fingers with a the most powerful orgasm yet — the humiliating climax making you shudder in your seat.<br>
<br>
<<if $npc_manager.stage >= 3 && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
Your shock turns to desperate fear as you stare up wide-eyed as she frowns.
<<if $player.body_ref.penis>>
"@@.npc_manager;The wanton excess of dual genitalia... I should have taken measures to get you restrained when you first appeared, but my trust in your control has now come back to betray the both of us.@@"
<<else>>
"@@.npc_manager;I had thought your removal of that troublesome penis would have led you to be more controlled and reserved...@@"
<</if>>
<br>
<br>
She shakes her head slowly and extends her hand. "@@.npc_manager_dom;Key. Now.@@"<br>
<br>
Your heart thunders in your chest as you find yourself unable to do anything but obey, reaching fearfully up to hand her the key.<br>
<br>
Her fingers close around it and then she leans down. Her eyes hold you in her inescapable gaze while she efficiently puts you back in chastity and then locks things closed.<br>
<br>
"@@.npc_manager;THIS, is how you should be... and how you WILL be. Because this key.@@" She holds it up, in front of your face. "@@.npc_manager_dom;You are never. Ever. Getting it back.@@"<br>
<br>
She holds your gaze for a final moment before leaning back and turning on her heels, storming back into her office, the door closing behind her like a gavel sealing your final sentence. You look down at your crotch and shiver, knowing deep down that she was not threatening you, but making a promise as to your chaste and permanently locked future...
<<else>>
"@@.npc_manager;You are QUITE testing my patience here... clean yourself up and get back to work.@@"<br>
<br>
She holds your gaze for a final moment before leaning back and turning on her heels, storming back into her office, door closing behind her slamming like a judges gavel. You shudder in fear, quickly fixing your clothes and returning to your duties.
<</if>>
<<case 'none'>>
With a gasp you enjoy a final, teeth-rattling climax, almost falling off your chair at the intensity before leaning back and panting in recovery.
<<default>>
ERROR unexpected scene.caught_by: <<=$scene.caught_by>>
<</switch>>
<br><br>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: finger yourself in office bathroom
#status: RELEASED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $scene.caught = ((setup.checkItemTypeWorn("cage")) && (random(1,4) == 1))>>
<<playerOrgasm>>
<<set $player.flags.masturbation.work.desk_bathroom_vag = true>><</if>>
<<set $player.location = "Work Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You scoop up the key to your chastity and head for the bathroom, grabbing a private stall and unlocking yourself and sighing with relief as you plunge two fingers into your already wet cunt.<br>
<br>
Taking the matter in hand, you suppress your moans as you finger yourself, taking less than two minutes before gushing your joy into the toilet below.<br>
<br>
Letting out a sigh of contentment, you are overcome by a wave of shame and disgust at having snuck away from your duties to masturbate.<br>
<br>
Your chastity belt is quickly locked back in place before you gather your things and hurry back to your desk, now ready to properly focus on your duties.<br>
<br>
<<if $scene.caught>>
[<<moveTo "event_work_masturbate_bathroom_2" "Back to work." 600>>]
<<else>>
[<<moveTo $scene.returnFromMasturbation "Back to work." 600 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: npc_admin drops in for a meeting w/manager
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 1, 0, 0)>>
<<addWorkEvent 'admin_office_sex_visit_repeat' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You're working away when you notice that <<=ps(setup.getNpcName('npc_manager', 'formal'))>> next meeting is with your friend <<=setup.getNpcName('npc_admin', 'first')>>. Arriving a couple minutes early <<he npc_admin>> drops by your desk to visit.<br>
<br>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>, how's the job? Got my first status meeting with the boss lady, been working hard to establish myself in the new position.@@" <<He npc_admin>> glances up at the clock. "@@.npc_admin;Figured I'd come a few minutes early to say hi to my best <<callPlayer "npc_admin">> plus, well, you know what she says...@@"<br>
<br>
<<He npc_admin>> smiles and the two of you repeat in unison "@@.npc_admin;Punctuality is a pillar of society.@@" <<He npc_admin>> laughs.<br>
<br>
"@@.npc_admin;Whelp, that's my cue, if I'm not out in an hour send a rescue party.@@"<br>
<br>
You catch a glimpse of <<=setup.getNpcName('npc_manager', 'formal')>> welcoming <<=setup.getNpcName('npc_admin', 'first')>> into her office before the door closes on their meeting.<br>
<br>
[<<moveTo "event_work_manager_and_admin_2" "Keep working." 1200>>]
</div>/*#
#desc: npc_admin drops in for a meeting w/manager
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.repeat = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
Your <<boy npc_admin>>friend <<=setup.getNpcName("npc_admin","first")>> drops by for a meeting with your <<=setup.getNpcName("npc_manager","title")>> and pauses at your desk.<br>
<br>
<<if $npc_admin.flags.monogomous_manager>>
"@@.npc_admin;Heya <<callPlayer "npc_admin">>, here for another meeting with the boss-lady... though I guess you know that, since you're in charge of her schedule and all that. Anyway, lots to plan, I'll catch you later!@@"<br>
<br>
<<He npc_admin>> heads into the inner office.<br>
<br>
[<<moveTo "event_work_manager_and_admin_2" "Resume working." 1200>>]
<<else>>
"@@.npc_admin;Heya <<callPlayer "npc_admin">>, so, hmm... I know we talked about this before but... you're still cool with me fucking your boss, right? I promise I'm here on business but... that woman is a machine and she never wants to let me leave without going for a ride first...@@"<br>
<br>
[<<moveTo "event_work_manager_and_admin_1_alt_b" "Of course <<he npc_admin>> can have sex with her." 60 "<<set $scene.action='yes'>>">>]<br>
[<<moveTo "event_work_manager_and_admin_1_alt_b" "Of course <<he npc_admin>> can have sex with her, but maybe you could join in too?" 60 "<<set $scene.action='join'>>">>]<br>
[<<moveTo "event_work_manager_and_admin_1_alt_b" "You'd rather <<he npc_admin>> didn't." 60 "<<set $scene.action='no'>>">>]
<</if>>
<<case 'friendswbenefits'>>
<<=setup.getNpcName("npc_admin","first")>> drops by for a meeting with your <<=setup.getNpcName("npc_manager","title")>> and pauses at your desk.<br>
<br>
<<if $npc_admin.flags.monogomous_manager>>
"@@.npc_admin;Heya <<callPlayer "npc_admin">>, here for another meeting with the boss-lady... though I guess you know that, since you're in charge of her schedule and all that. Anyway, lots to plan, I'll catch you later!@@"<br>
<br>
<<He npc_admin>> heads into the inner office.<br>
<br>
[<<moveTo "event_work_manager_and_admin_2" "Resume working." 1200>>]
<<else>>
"@@.npc_admin;Heya <<callPlayer "npc_admin">>, how goes? I got another "meeting" with <<=setup.getNpcName("npc_manager","title")>> so, y'know, I'm gonna head on in?@@"<br>
<br>
[<<moveTo "event_work_manager_and_admin_1_alt_b" "Tell <<him npc_admin>> to have fun." 60 "<<set $scene.action='yes'>>">>]<br>
[<<moveTo "event_work_manager_and_admin_1_alt_b" 'Ask if you might join <<his npc_admin>> "meeting"?' 60 "<<set $scene.action='join'>>">>]<br>
[<<moveTo "event_work_manager_and_admin_1_alt_b" "You'd rather <<he npc_admin>> didn't have sex with her." 60 "<<set $scene.action='no'>>">>]
<</if>>
<<default>>
You're working away when <<=setup.getNpcName('npc_admin', 'first')>> shows up for another meeting with your manager.<br>
<br>
"@@.npc_admin;Hey, <<callPlayer "npc_admin">>, you holdin' down the fort?@@" <<He npc_admin>> asks with an awkward grin. <<if !$npc_admin.flags.monogomous_manager>><<He npc_admin>> seems a bit distracted and you reflect back on what <<he npc_admin>> was doing with, or more accurately, to, your <<=setup.getNpcName('npc_manager', 'title')>> the last time <<he npc_admin>> visited. <</if>>"@@.npc_admin;Imma just head on in.@@" <<He npc_admin>> states walking past your desk and disappearing into the inner office.<br>
<br>
[<<moveTo "event_work_manager_and_admin_2" "Keep working." 1200>>]
<</switch>>
</div>/*#
#desc: overhear manager fucking admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_admin.flags.monogomous_manager>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_5'
0
'event_psychiatrist_session_admin_manager_sex_1'
false
>>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_1'
0
'event_admin_theme_manager_sex_1'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_admin.flags.monogomous_manager>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.monogomous_manager>>
Whatever their meeting is it proceeds quietly and then <<=setup.getNpcName('npc_admin', 'first')>> emerges and departs flashing you a smile on the way past.<br>
<br>
<<if $npc_manager.stage >= 3 && $npc_manager.affection - $npc_manager.anger > 3>>
Looking back, you find <<=setup.getNpcName('npc_manager', 'formal')>> standing in her doorway. Her gaze follows <<=setup.getNpcName('npc_admin', 'first')>> until the door closes<<if !$npc_admin.fem>> behind him<</if>>, and then her focus turns to you.<br>
<br>
"@@.npc_manager;So. It would seem your friend has concerns about coming between us. Very well, we can play that game. But such a decision comes with a responsibility — and right now that means you are responsible for getting me off. My office. Now.@@"<br>
<br>
She turns sharply into the inner office, clearly expecting you to follow.<br>
<br>
[<<moveTo "event_work_manager_post_admin_1" "Hurry after her." 1800 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_work_manager_post_admin_1" "You have work to do..." 300 "<<set $scene.sex=false>>">>]
<<else>>
Looking back, you find <<=setup.getNpcName('npc_manager', 'formal')>> standing in her doorway looking a bit frustrated, or maybe pent up? You don't have time to ask what's going on before she turns and retreats back into her office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 120 "<<completeWorkEvent>>">>]
<</if>>
<<else>>
Your work is disrupted by a loud cry emanating from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office.<br>
<br>
<<if $player.work.chair.bondage>>
Still bound to your chair you manage to roll across the room to listen at her door,
<<else>>
Jumping from your seat, you rush to her door
<</if>>
only to hear another shout, this one more clearly.<br>
<br>
"@@.npc_manager;Yes, harder!@@"<br>
<br>
<<if $scene.repeat>>
You sigh, it appears that <<=setup.getNpcName('npc_manager', 'formal')>> fucking your friend is going to be a bit of a standard thing. Barging in on them seems... very ill advised, but that doesn't mean you have to sit here doing nothing...
<<else>>
You freeze, is she, are THEY having sex?<br>
<br>
You remember <<=setup.getNpcName('npc_admin', 'first')>> joking about you setting <<him npc_admin>> up with your boss, but that was just a joke, right? Then again, given your own relationship with your <<=setup.getNpcName('npc_manager', 'title')>> maybe you shouldn't be surprised...
<</if>>
<br><br>
[<<moveTo "event_work_manager_and_admin_3" "Try and sneak a peek." 600 "<<set $scene.watch=true>>">>]<br>
[<<moveTo "event_work_manager_and_admin_3" "Just go back to your desk." 1800 "<<set $scene.watch=false>>">>]
<</if>>
</div>/*#
#desc: watch/don't watch manager fucking admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.watch>>
<<set $npc_admin.flags.sawHimfuckingManager = true>>
<<applyExperience 'penis' 8 'very' $INCOGNITO>>
<<changeHorny 20>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.watch>>
Lucking out that the door wasn't fully latched, you are able to peek in to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office to find your suspicions confirmed. <<=setup.getNpcName('npc_admin', 'first')>> is lying across her desk while <<he npc_admin>> gets ridden. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> back towards you means you can't see her face, but her posture makes it clear that she is the one in charge, even as her moans attest to how much she is enjoying herself.<br>
<br>
You stare entranced, watching as she rises and falls on <<=ps(setup.getNpcName('npc_admin', 'first'))>> <<getWordPenis "npc_admin">>. <<His npc_admin>> hands around <<=ps(setup.getNpcName('npc_manager', 'formal'))>> waist drive home the size disparity between the two of them, but there is no question that <<=setup.getNpcName('npc_manager', 'formal')>> is in command of the situation, controlling the pace as she rolls her hips and pumps up and down.<br>
<br>
You feel like you're watching a private porno the way they go at it, your gorgeous <<=setup.getNpcName('npc_manager', 'title')>> and your muscle-bound friend; the longer you stare the more turned on you feel. <<if setup.checkItemTypeWorn("cage")>>Perhaps it is merely the fact that you are presently locked in chastity<<else>>You aren't entirely certain why<</if>>, but you find yourself fantasising about taking <<=ps(setup.getNpcName('npc_manager', 'formal'))>> place, feeling <<=ps(setup.getNpcName('npc_admin', 'first'))>> glorious cock plunging into you as <<his npc_admin>> strong arms support you...<br>
<br>
You are broken out of your fantasy by a loud dual climax, <<=setup.getNpcName('npc_manager', 'formal')>> pitching forward as <<=ps(setup.getNpcName('npc_admin', 'first'))>> cock slides free, large, glistening and glorious even half-wilted.<br>
<br>
Afraid of being caught, you quickly back away and return to your desk, unable to escape your earlier fantasies...<br>
<br>
<<if $npc_admin.stage > 2>>
<<switch $npc_admin.flags.relationship>>
<<case 'friendswbenefits'>>
A few minutes later <<=setup.getNpcName('npc_admin', 'first')>> flashes you as smile as <<he npc_admin>> emerges.<br>
<br>
<<printThought "Guess I'm not <<his npc_admin>> only friend with benefits... I guess that makes us eskimo brothers now?">>
<<case 'boyfriend'>>
A few minutes later <<=setup.getNpcName('npc_admin', 'first')>> emerges, stopping by your desk to give you a kiss before jetting off back to <<his npc_admin>> office.<br>
<br>
<<printThought "So my <<boy npc_admin>>friend fucks my <<=setup.getNpcName('npc_manager', 'title')>>, then heads back to work... well, this always was kind of a strange job.">>
<<case 'friend'>>
You make a concerted effort to look "busy" when <<=setup.getNpcName('npc_admin', 'first')>> emerges a few minutes later, fixing <<his npc_admin>> shirt as <<he npc_admin>> passes by your desk and departs. You can't help but sigh, sure it's good that you're still friends with <<if $npc_admin.fem>>her<<else>>the big guy<</if>>, but the reminder of what <<hes npc_admin>> doing with your <<=setup.getNpcName('npc_manager', 'title')>> makes you wonder if some different choices might have given you more.
<</switch>>
<<else>>
<<printThought "<<=setup.getNpcName('npc_admin', 'first')>> has always been my friend and <<hes npc_admin>> definitely <<if $npc_admin.fem>>a lesbian<<else>>straight<</if>>, but, well... things are different and I've caught <<him npc_admin>> looking a couple times since I started my transformation...">><br>
<br>
Making a concerted effort to look "busy," you don't even look up as <<=setup.getNpcName('npc_admin', 'first')>> emerges a few minutes later, fixing <<his npc_admin>> shirt as <<he npc_admin>> passes by your desk and departs. You sneak a quick look as <<he npc_admin>> passes, feeling a fresh rush of excitement... do you dare? Maybe if you tried buttering <<him npc_admin>> up during a shared activity first... perhaps spending some time with <<him npc_admin>> at the gym might give you an opportunity?
<</if>>
<<else>>
Trying to ignore the sounds coming from the inner office, you return to your desk. After some time things quiet down and <<=setup.getNpcName('npc_admin', 'first')>> emerges. Fixing <<his npc_admin>> shirt on the way past your desk, <<he npc_admin>> just nods in your direction, seemingly avoiding making eye contact.
<</if>>
<br><br>
You let out a sigh of relief only to get a message from your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;Please join me in my office, I have need of your services.@@"<br>
<br>
<<if $scene.repeat>>
You already know what she's going to ask and yet ignoring her order is all but unthinkable.<br>
<br>
<</if>>
[<<moveTo "event_work_manager_and_admin_4" "Answer the summons." 60>>]
</div>/*#
#desc: lick manager clean after she fucked admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office to find her sitting on the edge of her desk, her skirt parted to exposed her glistening pussy flecked with cum.<br>
<br>
"@@.npc_manager;Good, there you are. If you would please attend to this — your friend is quite a lovely <<man npc_admin>>, but <<he npc_admin>> left behind something of a mess and I thought that, rather than spend the rest of the afternoon leaking into my underthings, you might attend to things and enjoy a <<if $fetish.sissy>>SISSI<<else>>little<</if>> treat.@@"<br>
<br>
You are stunned, staring in shock for a moment until her eyes narrow.<br>
<br>
"@@.npc_manager;What are you waiting for? Get over here and get to licking.@@"<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
[<<moveTo "event_work_manager_and_admin_5" "Crawl over and enjoy your tasty treat." 360 "<<set $scene.lick=true>>">>]<br>
[@@.link_locked;You can't resist a tasty treat.@@]
<<elseif setup.getTotalValue("submission") > 15>>
[<<moveTo "event_work_manager_and_admin_5" "Dutifully crawl over and be of service." 360 "<<set $scene.lick=true>>">>]<br>
[@@.link_locked;You can't deny your <<=ps(setup.getNpcName('npc_manager', 'title'))>> request.@@]
<<else>>
[<<moveTo "event_work_manager_and_admin_5" "Crawl over and start licking." 360 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_work_manager_and_admin_5" "She can't be serious, object!" 60 "<<set $scene.lick=false>>">>]
<</if>>
</div>/*#
#desc: lick manager clean after she fucked admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lick>>
<<set $npc_admin.flags.manager_cleanup = true>>
<<applyExperience 'oral' 5 'little' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'very' $SEEN_FRIEND>>
<<if !$player.virgin.cunnilingus>>
<<set $player.virgin.cunnilingus = 'npc_manager'>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<<if setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_7') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_7'
7
'event_psychiatrist_theme_good_girl_oral_manager_1'
true
>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
The sight, and smell, of <<=ps(setup.getNpcName('npc_admin', 'first'))>> fresh hot <<getWordCum>> can't help but have you excited as you drop to your knees and crawl over between <<=ps(setup.getNpcName('npc_manager', 'formal'))>> legs.
<<else>>
It would be hard for you to resist the offer of fresh <<getWordCum>> and you soon find yourself between <<=ps(setup.getNpcName('npc_manager', 'formal'))>> legs.
<</if>>
<br><br>
She lets out a soft moan as your tongue slides between her folds though you are unsure which of you is enjoying things more, either way you barely even pause for air as you search out every delectable morsel.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
You may be starting to develop a taste for cum, but this is... something else. You try to console yourself with the fact that, technically, you're performing a sort of cunnilingus, right?
<<else>>
Even though the thought of licking up a "cream-pie" disgusts you and yet you find yourself kneeling between <<=ps(setup.getNpcName('npc_manager', 'formal'))>> legs and setting to work.
<</if>>
The salty-sweet mix of <<if !$npc_admin.fem>>feminine and masculine that is <</if>><<=ps(setup.getNpcName('npc_admin', 'first'))>> salty seed combined with <<=ps(setup.getNpcName('npc_manager', 'formal'))>> more delicate flavour, your initial hesitancy replaced by a strange hunger as your tongue burrows deep to scoop out every drop of <<getWordCum>> you can find.
<</if>>
<br><br>
You can hear her start to breathe a bit heavier when she finally gives you a rewarding head-pat and then gently pushes you away. "@@.npc_manager;Very nicely done. Do enjoy the rest of your afternoon, you have once again risen to the occasion and provided the sort of service a <<if $fetish.sissy>>SISSI <</if>>Secretary can be proud of.@@"<br>
<br>
You blush at the fact that you have arrived at the point where licking your
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
<<boy npc_admin>>friend's
<<case 'friendswbenefits'>>
friend's
<<default>>
friend's
<</switch>>
cum out of your manager's cunt is considered an "attagirl" work moment. You rise to your feet and depart.
<<else>>
Though a part of you says it is futile you feel you ought to draw a line. Certainly you have done... things since accepting this job, but this, licking your
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
<<boy npc_admin>>friend's
<<case 'friendswbenefits'>>
friend's
<<default>>
friend's
<</switch>>
cum out of your manager's cunt? No, that is too much and you shake your head.<br>
<br>
"@@.npc_manager;No?@@" She seems more surprised than angry, "@@.npc_manager;I thought for sure a <<if $fetish.sissy>>SISSI <</if>>slut like you would jump at the chance... have you been keeping up with your therapy?@@"<br>
<br>
<<printThought "Wait, what does she mean by that?">><br>
<br>
She shakes her head and lets her dress slide back down to conceal her crotch. "@@.npc_manager;Well, if you are uninterested in a treat, I do not have the time to force it upon you, your loss, but know that I am quite disappointed in you. A proper <<if $fetish.sissy>>SISSI <</if>>Secretary should jump at this sort of opportunity, both on face, and because her existence is defined by eager service for her <<=setup.getNpcName('npc_manager', 'title')>>.@@"<br>
<br>
With a wave, she dismisses you.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 120 "<<completeWorkEvent>>">>]
</div>/*#
#desc: npc_admin drops in for a meeting w/manager after you tried to seduce him
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You're diligently working away when <<=setup.getNpcName('npc_admin', 'first')>> appears. You do a double take, glancing from <<him npc_admin>> to your screen and back to confirm that no, <<=setup.getNpcName('npc_manager', 'formal')>> doesn't have anything on the books today.<br>
<br>
<<He npc_admin>> flashes a lop-sided grin to try to diffuse tension. "@@.npc_admin;Uh, hi so... <<=setup.getNpcName('npc_manager', 'other')>> said she had a bit of an urgent need for me, guess she didn't tell you?@@"<br>
<br>
You shake your head. All of the emotions from the morning flood back and render you again speechless.<br>
<br>
"@@.npc_admin;So, how's the day going? I, uh, missed you at the gym, so much better to lift with a partner, y'know?@@"<br>
<br>
You nod, still seemingly unable to find your voice you appreciate the implications of <<his npc_admin>> comment — that things are still "good" between the two of you, but are still grateful when <<=setup.getNpcName('npc_manager', 'formal')>> appears in the doorway to interrupt.<br>
<br>
"@@.npc_manager;Now, now, stop distracting my lovely secretary. She has work to do... and so do you, now get in here.@@"<br>
<br>
"@@.npc_admin;Yes ma'am!@@" <<he npc_admin>> replies hurriedly, tossing a wave back at you before disappearing into her office and the heavy door closing with a thud.<br>
<br>
You release your held breath and slump in your chair. Is this how it's going to be? You freezing up like a bashful schoolgirl whenever you're in <<=ps(setup.getNpcName('npc_admin', 'first'))>> intoxicating <<if !$npc_admin.fem>>manly <</if>>presence?<br>
<br>
You sigh and try to focus on your work only to get a summons from <<=setup.getNpcName('npc_manager', 'formal')>> about fifteen minutes later.<br>
<br>
[<<moveTo "event_work_manager_admin_cock_2" "Go see what she needs." 900>>]
</div>/*#
#desc: manager plays matchmaker with you and admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.monogomous_manager>>
You walk into the inner office to find <<=setup.getNpcName('npc_admin', 'first')>> standing looking a bit nervous as <<=setup.getNpcName('npc_manager', 'formal')>> looks between the two of you.<br>
<br>
"@@.npc_manager;Come in, come in. You see I was just having a discussion with <<=setup.getNpcName('npc_admin', 'formal')>> here about the obvious awkwardness that is developing between the two of you — <<he npc_admin>> even told me about the goings-on at your apartment this morning and well, I thought I would do my part.@@"<br>
<br>
Rising to her feet, she adjusts her glasses, seeming to savour the tense moment. "@@.npc_manager;<<=setup.getNpcName('npc_admin', 'formal')>>, if you would kindly remove your trousers so that Miss <<=$player.last_name>> can show her feelings properly.@@"<br>
<br>
Wide-eyed and almost frozen <<=setup.getNpcName('npc_admin', 'first')>> tries to form words, the look <<he npc_admin>> shoots at you either the work of a master actor or clear evidence that this "plan" was not at all what the two of them had been discussing.<br>
<br>
"@@.npc_manager;Oh, stop acting so prudish, I mean SOMEONE ought to be enjoying that lovely <<if $npc_admin.fem>>girlcock<<else>>man meat<</if>> of yours and you can't deny that my lovely secretary is quite deserving. And you said yourself minutes ago that you reciprocate those feelings so... get to it, fuck.@@"
<<else>>
Focused on your <<=ps(setup.getNpcName('npc_manager', 'title'))>> order you aren't even thinking as you walk into the room only to brought to a dead stop as you walk in to find <<=setup.getNpcName('npc_admin', 'first')>> with <<his npc_admin>> pants around <<his npc_admin>> ankles and <<=setup.getNpcName('npc_manager', 'formal')>> kneeling in front of <<him npc_admin>>, <<his npc_admin>> large, hard cock in hand.<br>
<br>
Seeing you <<his npc_admin>> eyes go wide in fright and <<he npc_admin>> leaps, fumbling for <<his npc_admin>> pants only to run into some measure of difficulty as the combination of their fitted tailoring and <<his npc_admin>> very engorged member causes issues.<br>
<br>
"@@.npc_manager;Oh calm down, I summoned <<=$player.first_name>> to take care of multiple problems.@@"<br>
<br>
By no means placated <<=setup.getNpcName('npc_admin', 'first')>> looks back and forth between the two extremes of femininity before imploring you with a measure of desperation "@@.npc_admin;Look, I'm so sorry, I mean, I know what it looks like but—@@"<br>
<br>
"@@.npc_manager;Oh shush,@@" <<=ps(setup.getNpcName('npc_manager', 'formal'))>> states, her authoritative voice casually cutting <<him npc_admin>> off before turning towards you. "@@.npc_manager;It was exactly what it looks like — I was trying to suck <<his npc_admin>> cock, only fair considering <<he npc_admin>> just did a wonderful job eating me out.@@"<br>
<br>
You don't think you've ever seen <<=setup.getNpcName('npc_admin', 'first')>> this embarrassed or at a loss for words as <<he npc_admin>> seems to have finally wrangled <<his npc_admin>> pants back around <<his npc_admin>> waist, though the still-hard outline of <<his npc_admin>> <<getWordPenis "npc_admin">> remains VERY visible.<br>
<br>
"@@.npc_manager;Anyway, here I am looking to reciprocate and it seems that I am at a bit of a loss to properly handle someone of <<his npc_admin>>... magnificence in that manner. That thought leads naturally, of course, to the lovely cocksucking <<if $fetish.sissy>>SISSI <</if>>Secretary under my employ plus well... let's be honest, the sexual tension between the two of you is obvious to anyone with a brain. I was hoping you'd sort it out on your own at the gym — all that blood pumping, <<his npc_admin>> muscles bulging, proving irresistible...@@" She trails off as the both of you are left blushing.<br>
<br>
"@@.npc_manager;Alas, it seems that you two are just too slow for my timetable and so I decided to take this opportunity to play a little matchmaker. So come on, <<=$player.first_name>>, show <<him npc_admin>> how you feel. You can even use your mouth in other ways if you can't manage to find the words.@@"
<</if>>
<br><br>
You aren't sure what has you more shocked, the blunt "help" she just provided... or that fact that <<=setup.getNpcName('npc_admin', 'first')>> seems to be tenting<<if !$npc_admin.flags.monogomous_manager>> even more noticeably<</if>> inside <<his npc_admin>> tight pants...<br>
<br>
[<<moveTo "event_work_manager_admin_cock_3" 'No, I want <<him npc_admin>> but... not like this, not with <<=ps(setup.getNpcName("npc_manager", "formal"))>> watching.' 60 "<<set $scene.style='no'>>">>]<br>
[<<moveTo "event_work_manager_admin_cock_3" 'Ask <<=setup.getNpcName("npc_manager", "formal")>> if you could, perhaps, have some privacy?' 60 "<<set $scene.style='private'>>">>]<br>
<<if setup.getTotalValue("penis") > 10 || setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_work_manager_admin_cock_3" "Drop to your knees and make all three people in the room happy." 60 "<<set $scene.style='slut'>>">>]<br>
<<else>>
[@@.link_locked;You aren't so much of a bimbo, or so obsessed with cock, as to just dive in like this...@@]
<</if>>
</div>/*#
#desc: you react to manager playing matchmaker with you and admin
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.style == 'slut'>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_admin'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "voluntary">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<applyExperience 'penis' 15 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<incrementEmotion 'affection' 'npc_admin' 2>>
<<set $npc_admin.flags.sucked_for_manager = 'slut'>>
<</if>>
<<addEvent 'admin_first_dinner_date'>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_20'
0
'event_psychiatrist_session_admin_solution'
false
>>
<<set $scene.moveHypno = $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_hypnosis_1')) == 0>>
<<if $scene.moveHypno>>
<<set $currentTasks.psychiatrist_endless_hypnosis_1.trigger.atPsychiatrist.time.date = setup.setNextDate($now, 4, 19, 0)>>
<</if>>
<<set $scene.moveTwig = $currentTasks.hasOwnProperty('event_doctor_first_appointment') && !$currentTasks.event_doctor_first_appointment.finished && setup.daysToDate($now,setup.getTaskDueDate('event_doctor_first_appointment')) == 0>>
<<if $scene.moveTwig>>
<<postponeTask 'event_doctor_first_appointment' 7>>
<</if>>
<<set $scene.moveTwig = $currentTasks.hasOwnProperty('event_doctor_reup') && setup.daysToDate($now,setup.getTaskDueDate('event_doctor_reup')) == 0>>
<<if $scene.moveTwig>>
<<postponeTask 'event_doctor_reup' 7>>
<</if>>
<<if $workEvents.hasOwnProperty('admin_office_sex_visit_repeat')>>
<<set $workEvents.admin_office_sex_visit_repeat.trigger.lastDate = $now>>
<</if>>
<<if $workEvents.hasOwnProperty('admin_office_sex_visit')>>
<<removeWorkEvent 'admin_office_sex_visit'>>
<<set _nextDate = setup.setNextDate($now, 1, 9, 0)>>
<<addWorkEvent 'admin_office_sex_visit' _nextDate>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'no'>>
Somehow you find your voice glancing from <<=setup.getNpcName('npc_admin', 'first')>> to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
You stutter, almost unable to form coherent sentences as you try to explain to <<=setup.getNpcName('npc_admin', 'first')>> how sorry you are. Yes, you have feelings for <<him npc_admin>>, yes you wanted something romantic, you wanted something physical, but not like this... not like this.
<br>
Your voice trails off as you hold back tears at the thought of your dreams being now shattered. Surprisingly your display seems to finally rouse <<=setup.getNpcName('npc_admin', 'first')>> from <<his npc_admin>> own shocked stillness as <<he npc_admin>> is suddenly at your side, cradling you in <<his npc_admin>> large, strong arms.<br>
<br>
"@@.npc_admin;Shhh, it's okay I should have said something this morning but... I was scared.@@"<br>
<br>
Holding you protectively <<he npc_admin>> turns back to confront <<=setup.getNpcName('npc_manager', 'formal')>> "@@.npc_admin;Look, I know you run things a bit... different here on the upper floors, and I guess you meant well but... we'll handle things on our own, thank you very much.@@" Turning back to you <<his npc_admin>> voice softens. "@@.npc_admin;Tell you what, how about we go out to dinner tonight, my treat and we can... figure things out.@@"<br>
<br>
Your heart swelling and somehow freezing your vocal cords once again you just nod.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> just shrugs. "@@.npc_manager;I expect the two of you to expedite the amelioration of your non job-related extracurricular interpersonal issues in as hasty a manner as possible. I simply do not have the necessary time for my subordinates being constantly distracted by unresolved sexual tension. Fornicate or don't just stop procrastinating about it.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> shepherds you out of the room as <<=setup.getNpcName('npc_manager', 'formal')>> looks on with a hint of a smile. Back in your inner office with you manager out of view <<he npc_admin>> finally removes <<his npc_admin>> arm and steps away, your shoulders immediately missing <<his npc_admin>> strong grasp.<br>
<br>
"@@.npc_admin;I'll, uh... see you tonight.@@" <<He npc_admin>> mumbles, <<his npc_admin>> brief bravado seemingly vanishing fast as <<he npc_admin>> hesitates, then <<if $npc_admin.fem>>pulls you in<<else>>picks you up<</if>> for a brief, but passionate kiss. "@@.npc_admin;More on that later.@@" <<He npc_admin>> states sheepishly before dashing off and leaving you by yourself.<br>
<br>
<<if $scene.moveHypno>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, "@@.npc_manager;Oh, and do not worry about your appointment with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> — her scientific curiosity can wait, I will have her reschedule your appointment.@@"<br>
<br>
You blink as <<=setup.getNpcName('npc_manager', 'formal')>> disappears back into her office — just how close of tabs is she keeping on your schedule? Isn't that supposed to be your job as her <<if $fetish.sissy>>SISSI <</if>>Secretary?<br>
<br>
<</if>>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<case 'private'>>
Surprising the both of you, you glare at <<=setup.getNpcName('npc_manager', 'formal')>> for a moment and ask if she could give the two of you some time in private.<br>
<br>
Raising an eyebrow she slowly nods.<br>
<br>
"@@.npc_manager;Certainly, but... I do expect you to sort this thing out between you. Seriously, just fuck already. You both want it and I am fed up with my subordinates being constantly distracted by their foolishly unresolved sexual tension.@@"<br>
<br>
<<if $scene.moveHypno>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, "@@.npc_manager;Oh, and do not worry about your appointment with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> — her scientific curiosity can wait, I will have her reschedule your appointment.@@"<br>
<br>
You blink in surprise — just how close of tabs is she keeping on your schedule? Isn't that supposed to be your job as her <<if $fetish.sissy>>SISSI <</if>>Secretary?<br>
<br>
<</if>>
She leaves and the silence lingers, you try to open your mouth, but fail to find the words and it is, instead, <<=setup.getNpcName('npc_admin', 'first')>> who breaks the silence. "@@.npc_admin;Look, I think we have um... a lot to talk about and I dunno about you, but the mood right now is well... a bit spoiled. Tell you what... how about I take you out for dinner tonight and we can have a nice long discussion to figure things out...@@" <<He npc_admin>> pauses. "@@.npc_admin;Shit... I don't suppose she's going to get upset if we come out too soon? She seemed... kind of dead set on us doing it, gotta say she's an impressive manager but, well... a bit of a freak!@@"<br>
<br>
<<printThought "You have no idea...">><br>
<br>
<<if setup.getTotalValue("penis") >= 10>>
<<He npc_admin>> turns to go as you find your gaze drawn to the still-hard outline of <<his npc_admin>> cock...<br>
<br>
[<<moveTo "event_work_manager_admin_cock_4" "Suggest that maybe it'd be better if you sucked <<his npc_admin>> cock now..." 60 "<<set $scene.suck = true>>">>]<br>
<<else>>
[@@.link_locked;You don't have the wherewithal to suck <<his npc_admin>> cock right now.@@]<br>
<</if>>
[<<moveTo "event_work_manager_admin_cock_4" "Follow <<him npc_admin>> out of the office." 60 "<<set $scene.suck = false>>">>]
<<case 'slut'>>
<<=setup.getNpcName('npc_admin', 'first')>> starts to talk only for you to cut <<him npc_admin>> off, surprising <<him npc_admin>> and <<=setup.getNpcName('npc_manager', 'formal')>> both with the sultry steel in your voice.<br>
<br>
"@@.pc;No, I mean, yes, we need to talk about our relationship — maybe tonight, when you take me to dinner, but right now? Right now I want. To suck. Your. Cock.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_admin', 'first'))>> jaw drops as <<his npc_admin>> other "head" shows its approval of the idea by bursting free of <<his npc_admin>> half-zipped pants. You notice <<=setup.getNpcName('npc_manager', 'formal')>> out of the corner of your eye looking on in pride, but right now you have eyes only for <<=setup.getNpcName('npc_admin', 'first')>> as you walk up to <<him npc_admin>> and then drop to your knees to take <<him npc_admin>> in hand.<br>
<br>
"@@.npc_admin;You don't have to—@@" <<He npc_admin>> whispers, a tremble in <<his npc_admin>> voice as your fingers dance up and down <<his npc_admin>> shaft.<br>
<br>
"@@.pc;Have to?@@" You reply, running your tongue from <<his npc_admin>> base all the way up to <<his npc_admin>> dripping tip. <<He npc_admin>> tastes even better than you imagined, strong and <<if $npc_admin.fem>>feminine<<else>>masculine<</if>> in its purest form. "@@.pc;No, but I WANT to. Now shut up, grab my hair and let me drain every wonderful salty drop from these gorgeous balls.@@"<br>
<br>
Spreading your lips you take <<him npc_admin>> into your mouth, your tight suction around <<his npc_admin>> cock eliciting a moan on the first stroke.<br>
<br>
<<include suckAdminCock>>
<br><br>
Gently licking <<his npc_admin>> <<getWordPenis "npc_admin">> clean as you stare lovingly up at <<him npc_admin>> from your kneeling position, <<he npc_admin>> seems at a loss for words until <<=setup.getNpcName('npc_manager', 'formal')>> intercedes.<br>
<br>
"@@.npc_manager;Very good, I think that is sorted out just fine. You may return to your desk now, <<=$player.first_name>> I want a few more words with your friend then you can look forward to your dinner this evening.@@"<br>
<br>
Reluctantly releasing your hold on <<his npc_admin>> glorious member you tuck <<him npc_admin>> back into <<his npc_admin>> pants and buckle things closed, smiling at <<him npc_admin>> the whole time before dropping into a parting curtsy and skipping out of the room and back to your desk.<br>
<br>
A couple minutes pass and <<=setup.getNpcName('npc_admin', 'first')>> emerges, still looking a bit dazed, especially when you flash <<him npc_admin>> a wink on <<his npc_admin>> way past your desk. As <<he npc_admin>> leaves the office, <<=setup.getNpcName('npc_manager', 'formal')>> lingers in her doorway, smiling one last time before speaking two words — "@@.npc_manager;Good girl@@" that have you straighten with pride.<br>
<br>
<<if $scene.moveHypno>>
"@@.npc_manager;Oh, and do not worry about your appointment with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> — her scientific curiosity can wait, I will have her reschedule your appointment.@@"<br>
<br>
You blink in surprise — just how close of tabs is she keeping on your schedule? Isn't that supposed to be your job as her <<if $fetish.sissy>>SISSI <</if>>Secretary?<br>
<br>
<</if>>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<default>>
ERROR unexpected scene.style: <<=$scene.style>>
<</switch>>
</div>/*#
#desc: suck admin's cock in manager's office
#status: FINISHED 0.7.0.0
#*/
<<if setup.getTotalValue("oral") > 15>>
<<He npc_admin>> may be large, but you are a cocksucking queen, gulping <<him npc_admin>> to the base as <<he npc_admin>> moans in shock. You hum in pleasure as you feel <<him npc_admin>> deep in your throat, working <<his npc_admin>> full length as your hands gently massage <<his npc_admin>> balls staying at depth as long as you can before pulling back with a lip-smacking pop before you take in a deep breath.<br>
<br>
You can tell by <<his npc_admin>> expression that <<he npc_admin>> is shocked at your skill, a hand briefly on your head falling to one side as <<he npc_admin>> just gawks. Rolling your eyes you don't bother correcting <<his npc_admin>> failure, taking care of forcing yourself back down <<his npc_admin>> <<getWordPenis "npc_admin">> on your own as you greedily suck, eager for <<his npc_admin>> heavy balls to reward you with their creamy cargo.
<<else>>
<<He npc_admin>> is big, a little too big for even your rapidly developing skills and though you do your best, you end up about a hands-width shy of a proper deepthroat. From <<his npc_admin>> reaction <<he npc_admin>> doesn't mind your failure in the least<<if $scene.style != 'private'>>, the fact that <<=setup.getNpcName('npc_manager', 'formal')>> is looking on seemingly forgotten as you bob and suck<</if>>.<br>
<br>
Despite being forced to compensate for your lacking oral capacity with your hand you give <<him npc_admin>> a blowjob that dreams are made of, your lips worshipping every centimetre of <<his npc_admin>> magnificent chocolate shaft as you bring <<him npc_admin>> towards an eagerly anticipated orgasm.
<</if>>
<br><br>
<<He npc_admin>> cums, hard, but you are careful to time it so that <<he npc_admin>> pumps <<his npc_admin>> load into your mouth rather than splatter your makeup or spray across your <<=ps(setup.getNpcName('npc_manager', 'title'))>> office.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Like liquid ambrosia <<his npc_admin>> cum is the best you can remember ever tasting, rich and creamy and in such volume your cheeks swell and you are forced to gulp some of down lest it spill out past you lips.
<<else>>
<<His npc_admin>> cum is thick and strong and delicious as you are forced to swallow quickly lest its copious volume spills out past your lips.
<</if>>
With a smile you make a show of swallowing with a loud gulp, smiling and then opening your mouth to show off. You lick your lips and prepare to rise to your feet.<br>
<br>
<<if $scene.style != 'private'>>
"@@.npc_manager;Well, that was lovely, but I believe you had both best return to work.@@" You nod towards <<=setup.getNpcName('npc_manager', 'formal')>> who somehow manages to look even more proud than she already was.<br>
<br>
<</if>>
Turning back towards <<=setup.getNpcName('npc_admin', 'first')>> you smile and say you'll see <<him npc_admin>> for dinner and that you hope <<hes npc_admin>> looking forward to it as much as you are! Looking almost drunk from <<his npc_admin>> orgasm <<he npc_admin>> just nods.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<His npc_admin>> cum is strong and thick and salty and there is so much of it you struggle to choke it down without making a mess.
<<else>>
<<His npc_admin>> cum is potent and thick, viscous and salty and disturbingly somehow alluring. You don't get much time to focus, however, as you instead struggle merely to keep up with its production, gulping as fast as you can lest the bitter brew spill out past your lips and make a mess.
<</if>>
<br><br>
You feel like you've just sucked from a firehose, barely managing to swallow things down as <<his npc_admin>> balls finally drain. Panting for air, your mouth still heavy with after-taste, you stare in amazement that <<his npc_admin>> perfect balls produced so much.
<</if>>/*#
#desc: non-slut end of admin/you manager matchmaking scene
#status: FINISHED 0.7.0.0
#ignore_spell: sh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'oral' $npc_admin.penis_size 'very' $SEEN_FRIEND>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_admin'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "voluntary">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<applyExperience 'penis' 15 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_admin' 3>>
<<set $npc_admin.flags.sucked_for_manager = 'voluntary'>>
<</if>>
<</if>>
<<if $scene.suck>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.suck>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
<<He npc_admin>> seems a bit stunned by your offer, though you can't help but notice the outline of <<his npc_admin>> <<getWordPenis "npc_admin">> twitch through <<his npc_admin>> pants.<br>
<br>
"@@.npc_admin;You really don't have to- I mean, you know I didn't ask her to do this, I mean I would never—@@"<br>
<br>
Walking closer as <<he npc_admin>> stutters you take the expeditious route and just pull <<his npc_admin>> cock out to start sucking. Regardless of <<his npc_admin>> initial objections you have lips that few <<men npc_admin>> could resist and <<his npc_admin>> words soon turn to moans.<br>
<br>
<<include suckAdminCock>><br>
<br>
"@@.npc_admin;Holy sh- you, I—@@" once again <<he npc_admin>> seems at a loss for words, clearly in awe of your skills. You just wink, making a show of licking your lips as you rise to your feet.<br>
<br>
You tell <<him npc_admin>> you'll see <<him npc_admin>> after work, flashing a wink before heading back to your desk.<br>
<br>
Leaning against your desk, <<=setup.getNpcName('npc_manager', 'formal')>> looks up from her phone and smiles. "@@.npc_manager;Done already? you could have savoured things a bit longer but oh well, back to work.@@"<br>
<br>
She walks past as you take your chair, a few minutes later <<=setup.getNpcName('npc_admin', 'first')>> files back out, glancing at you for a moment in awe before hurrying past your desk and out of the office.
<<else>>
Things feel a bit awkward as you walk a couple steps behind <<=setup.getNpcName('npc_admin', 'first')>> as <<he npc_admin>> leads the way out of the office. Sitting on the edge of your desk <<=setup.getNpcName('npc_manager', 'formal')>> looks up from her phone with a raised eyebrow. "@@.npc_manager;Finished so soon? Now I know <<=setup.getNpcName('npc_admin', 'first')>> is far more than a minute-<<man npc_admin>> so clearly you forwent the opportunity I provided for the two of you.@@" She sighs. "@@.npc_manager;More is the pity, but time and tide wait for <<if $npc_admin.fem>>no woman<<else>>neither man nor woman<</if>>. Back to work, the both of you, though let me wish you luck on your date tonight being a bit more... productive.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> returning to her office you have already sat back down at your desk when you realise that the dinner arrangement was made after she left the room...<br>
<br>
<<printThought "I guess <<=setup.getNpcName('npc_ai', 'first')>> isn't the only one with access to the cameras in her office...">>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager fucks you in lieu of admin
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sex>>
<<set $npc_admin.flags.fuckManagerForHim = true>>
<<addItem "cock_gag_double">>
<<wearItem "cock_gag_double" true>>
<<applyExperience 'oral' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'very' $SEEN_FRIEND>>
<<else>>
<<applyStress 10>>
<<set _horny = setup.getTotalValue("submission")>>
<<changeHorny _horny>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.sex>>
You follow <<=setup.getNpcName('npc_manager', 'formal')>> into her office where she fetches something from her desk with an offhand, but irresistible command to "@@.npc_manager;Kneel.@@"<br>
<br>
You drop to your knees and stare up obediently as she walks towards you. Wordlessly she buckles a gag around your face, a modest pecker filling your mouth while a much larger dildo protrudes before you.<br>
<br>
"@@.npc_manager;There, silent, submissive, and strapped-in for service... Yes, you shall do nicely,@@" she states, tracing a hand along your cheek before hiking up her skirt and pulling her panties to one side.<br>
<br>
Your nostrils flare with excitement as she pulls you in. She smiles down at you as your face buries between her legs, the dildo sliding smoothly between her wet folds as she slowly humps harder.<br>
<br>
"@@.npc_manager;Mmm, that hits the spot...@@" Her fingers entwine with your hair as she grinds against your face, your nostrils full of her scent, as you moan submissively around the gag. "@@.npc_manager;Ah, such a lovely sound. You enjoying yourself? Enjoying serving your <<=setup.getNpcName('npc_manager', 'title')>>, attending to her needs?@@"<br>
<br>
A little light-headed from your restricted air supply you nod as best you can, the motion making her smile wider for two reasons. "@@.npc_manager;Maybe you are all I need... My perfect, submissive, sweet<<if $fetish.sissy>>, sissy<</if>> girl...@@"<br>
<br>
With each word she thrusts her hips into your face, finishing with the slightest of gasps that blossoms into a satisfied grin. "@@.npc_manager;My my, I was pent up! So much work... and so little time to play...@@"<br>
<br>
Held tight in her irresistible grasp you're starting to pass out when she pulls you off just in time, her fingers sliding down to work the buckle on your gag. Catching it as it falls from your lips she flips it around and gently slides the other end — still glistening with her juices between your panting, parted lips.<br>
<br>
"@@.npc_manager;Alas, we both have work to do else I would have you between my legs for the rest of the day... so hurry and lick up your reward and then it is back to your desk!@@"<br>
<br>
Slightly delirious you slurp eagerly, licking the large dildo clean of her every heavenly drop, all while she smiles down at you in approval.<br>
<br>
Unfortunately your clean-up lasts only so long and, eventually, you are left with but the taste of saliva and silicone as she slides the gag from your lips and steps away. She nods at you in dismissal as she walks back around to her desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Curtsy and return to work." 120 "<<removeItem 'cock_gag_double' true>><<deleteItem 'cock_gag_double'>><<completeWorkEvent>>">>]
<<else>>
You shout after <<=setup.getNpcName('npc_manager', 'formal')>> that you have work to do and she spins in place, her expression withering as she stalks over to loom above your desk.<br>
<br>
"@@.npc_manager;Work? And exactly what part of your duties is more important than pleasing me, your manager, your <<=setup.getNpcName('npc_manager', 'title')>>, in whatsoever fashion I desire?@@"<br>
<br>
Your heart pounds as you try to muster the courage to shape a response.<br>
<br>
[<<moveTo "event_work_manager_post_admin_1" 'Nothing, <<=setup.getNpcName("npc_manager", "title")>>.' 1800 "<<set $scene.sex=true>>">>]<br>
[<<moveTo "event_work_manager_post_admin_abort" "The files you were working on are marked ultra-urgent... You would not want to bring shame upon her office..." 600>>]
<</if>>
</div>/*#
#desc: manager fucks you in lieu of admin
#status: FINISHED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 5>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stutter a response as to the purported importance of the files you were working on, then hold your breath as you wait for <<=setup.getNpcName('npc_manager', 'formal')>> reply.<br>
<br>
"@@.npc_manager;I... see. You know, you can be quite the puzzle — telling your friend that you want me to yourself... then balking at the opportunity...@@" She shakes her head. "@@.npc_manager;Very well, your lack of enthusiasm has quite killed the mood, so return to your work, and I to mine.@@"<br>
<br>
As quickly as she approached your desk she storms off, sweeping back into her inner office and leaving you alone to finally take a breath.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: tell npc_admin if he can have sex w/manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "yes">>
You give <<=setup.getNpcName("npc_admin","first")>> a wink and wish <<him npc_admin>> "luck" with <<his npc_admin>> meeting with <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
"@@.npc_admin;Luck... yeah, or something that shares the same last three letters!@@" You both laugh and <<he npc_admin>> heads into the inner office.<br>
<br>
[<<moveTo "event_work_manager_and_admin_2" "Resume working." 1200>>]
<<case "no">>
You ask <<=setup.getNpcName("npc_admin","first")>> if <<he npc_admin>> could refrain from getting with your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
"@@.npc_admin;She ain't gonna like that, but anything for you, <<callPlayer "npc_admin">>!@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> gives you a fist-bump and heads in to the office for <<his npc_admin>> meeting.<br>
<br>
[<<moveTo "event_work_manager_and_admin_2_alt" "Resume working." 1200>>]
<<case "join">>
You grin slightly and ask if you might join in with <<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_manager","formal")>>?<br>
<br>
"@@.npc_admin;Well, you know I'm always down... which means it's up to her.@@"<br>
<br>
You hurry to your feet and follow <<=setup.getNpcName("npc_admin","first")>> into the inner office to make your request.<br>
<br>
[<<moveTo "event_work_manager_admin_threesome_1" 'See what <<=setup.getNpcName("npc_manager","formal")>> has to say...' 300>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: manager confronts after npc_admin didn't sex her
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Some time passes and then <<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_manager","formal")>> appear.<br>
<br>
After sending <<him npc_admin>> on <<his npc_admin>> way <<=ps(setup.getNpcName("npc_manager","formal"))>> smile disappears the moment the door closes behind <<him npc_admin>>. She approaches your desk and looms over you. "@@.npc_manager;So, it would seem that you are keeping that delicious hunk of a <<man npc_admin>> to yourself... I suppose it is somewhat my fault for pushing the two of you together, but that does not get around the fact that you have robbed me of one of the few outlets for all the stress my position requires me to labour under.@@"<br>
<br>
You gulp.<br>
<br>
[<<moveTo "event_work_manager_strapon_1" "Ask if you could do anything to make it up to her?" 60 "<<set $scene.strapon=true>>">>]<br>
[<<moveTo "event_work_manager_strapon_1" "Remain silent." 60 "<<set $scene.strapon=false>>">>]
</div>/*#
#desc: choice to offer sex w/manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.strapon>>
<<else>>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.strapon>>
You ask if there is any way you could help to make up for your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>><</if>>friend's absence and <<=setup.getNpcName('npc_manager', 'formal')>> pauses.<br>
<br>
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
She laughs. "@@.npc_manager;With your pathetic little thing? No, no no, the only way your member could ever please a woman is by being securely locked in chastity...@@"
<<else>>
"@@.npc_manager;No... I do not think you would make a functional substitute, for what I am craving. Better to keep you locked in chastity.@@"
<</if>>
<<case 'spe'>>
"@@.npc_manager;A kind offer but... no... you are best kept nice, secure, and safe in chastity.@@"
<<case 'none'>>
"@@.npc_manager;No... I do not think you would make a functional substitute, for what I am craving. Better to keep you locked in chastity.@@"
<<default>>
ERROR: unhandled player.body_ref.shrink_style <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 4 5>>
"@@.npc_manager;Hmm, you are nearly <<his npc_admin>> size, but I think it would be safer, and superior for your development, for you to remain locked in your chastity device. Being unsecured, at work, in particular... well, that would just encourage all sorts of improper thoughts and maladaptive habits.@@"
<<case 6>>
"@@.npc_manager;A tempting offer, your unit has certainly developed in an... interesting direction, but, no, I do not think it would be proper for you to be unlocked while on the job. That would just encourage all sorts of improper thoughts and maladaptive habits.@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Your heart falls... and then she grins. "@@.npc_manager;But I have a strap-on that could fit over your prison, if you are up for showing how those padded hips of yours work...@@"
<<else>>
"@@.npc_manager;Hmm, obviously you are not physically equipped as <<he npc_admin>> is but I have a strap-on that would fit over your chastity belt and then we could see how your hips work...@@"
<</if>>
<br><br>
[<<moveTo "event_work_manager_strapon_2" "Agree to wear a strap-on for her." 1800 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_work_manager_strapon_2" "Actually... you need to get back to work." 60 "<<set $scene.accept=false>>">>]
<<else>>
You remain silent as <<=setup.getNpcName("npc_manager","formal")>> glowers down at you for a few moments longer before turning sharply and returning to her office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: choice to offer sex w/manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "strapon_large">>
<<wearItem 'strapon_large' true>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<set $scene.addPlug = !setup.checkItemTypeWorn("plug")>>
<<if $scene.addPlug>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<</if>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You reply that you will serve her however she requires and <<=setup.getNpcName('npc_manager', 'formal')>> smiles.<br>
<br>
"@@.npc_manager;So wonderful of you to rise to the occasion... even when you cannot rise at all!@@" She chuckles and then leads you into the inner office where you are soon equipped with a sturdy harness and sporting a sizable silicone cock.<br>
<br>
The ever-hard member has you feeling a bit forward heavy as you note that — while it is of similar dimensions to the one <<=setup.getNpcName('npc_manager', 'formal')>> used on you to "celebrate" (or is that induct?) your passing out of your probationary period, it is subtly different, including sporting a raised nub near the base the you surmise would be perfect for clitoral stimulation.<br>
<br>
"@@.npc_manager;I am always one for improving on nature,@@" <<=setup.getNpcName('npc_manager', 'formal')>> explains with a grin. From the way she's looking at you as she leads you over to the couch you can't be completely certain if she is referring to the dildo... or you.<br>
<br>
"@@.npc_manager;Here, if you would recline I think that would be the perfect position for you to serve me,@@" she explains as she soon has you lying back, your large silicone cock rising high and proud as she bends your legs back to squat over you.<br>
<br>
She is already very wet and, with a deep, rumbling purr of satisfaction, she squats down onto your strap-on. "@@.npc_manager;Yess... that is just what I needed. A nice, big cock...@@" She starts to roll her hips as she grins down at you. "@@.npc_manager;You know how it is — now do not just lie there. You volunteered to help, so I expect you to put in work! Here, I will even give you some encouragement.@@"<br>
<br>
<<if $scene.addPlug>>
She flicks a switch on a remote and your plug begins vibrating.
<<else>>
She reaches below and suddenly you feel a plug sliding into your rear... and a moment later it starts vibrating.
<</if>>
You moan with submissive lusts — even while you're fucking her you are reminded of your "proper" role as a <<if $player.body_ref.vagina>>trio<<else>>pair<</if>> of holes.<br>
<br>
[<<moveTo "event_work_manager_strapon_3" "Serve." 600>>]
<<else>>
Your nervously respond to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> offer by stating that you need to get back to work. She chuckles in amusement.<br>
<br>
"@@.npc_manager;Scared of under-performing? Or maybe you just don't like the idea of sex that does not involve you getting your <<if $fetish.sissy>>sissy<<else>>cute<</if>> brains pounded out? Ah, well, back to work it is.@@"<br>
<br>
She graces you with a parting smile and then disappears back into her inner office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: strap-on sex w/manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 30>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> tests your flexibility as she squats over you, riding your artificial cock as you attempt to do your part. Her warm smile looking down at you, a hand possessively on your shoulder pinning you down has you submissively focused on her pleasure, moving your hips in small circles as she thrusts up and down, toying with your vibrator as she fucks you.<br>
<br>
Just as with everything else, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> remains in complete control of her climax, dropping her full weight and grinding against you until she cums with a satisfied groan.<br>
<br>
She smiles down and eventually lets out a sigh of contentment. "@@.npc_manager;Good girl.@@" She states before slowly rising off, brushing a strand of hair back into position and almost instantly returning to her normal business demeanour. "@@.npc_manager;Well, that should help me approach the remainder of the afternoon in a better mood. You may remove the harness and return to your desk. It may not have been what I had originally planned, but that was quite enjoyable.@@"<br>
<br>
You unfold yourself and get back to your feet, unbuckling and handing over the harness before putting your clothes back on and leaving her inner office to return to work... <<=setup.getNpcName('npc_manager', 'formal')>> watching you with predatory eyes the entire time.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<removeItem 'strapon_large' true>><<deleteItem 'strapon_large'>><<useClothSetPop 'tmp'>><<completeWorkEvent>>">>]
</div>/*#
#desc: ask manager about threesome with admin
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You walk into the inner office to find <<=setup.getNpcName('npc_manager', 'formal')>> waiting. She grins, seeming to figure things out at a glance.<br>
<br>
"@@.npc_manager;My, my, looking to join in on the fun... or should I say, expand her "assistant" role?@@" You blush and she grins wider. "@@.npc_manager;And tell me... what part were you picturing yourself playing in this little menage a trois?@@"<br>
<br>
[<<moveTo "event_work_manager_admin_threesome_2_fluff_1" 'You wish to submissively help <<=setup.getNpcName("npc_admin", "first")>> fuck her.' 300>>]<br>
[<<moveTo "event_work_manager_admin_threesome_2_fuck_1" 'You wish to fuck her alongside <<=setup.getNpcName("npc_admin", "first")>>.' 300>>]<br>
[<<moveTo "event_work_manager_admin_threesome_2_center_1" 'You would love it if they both fucked you.' 300>>]
</div>/*#
#desc: act as fluffer for admin and manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at your offer. "@@.npc_manager;Well are you not just the most submissive, cutest thing! Well go on, then — put those <<if $fetish.sissy>>sissy<<else>>pretty<</if>> lips to use and get that big, thick <<if $npc_admin.fem>><<getWordPenis "npc_admin">><<else>>man muscle<</if>> all hard and wet and ready for my lady cavern.@@"<br>
<br>
[<<moveTo "event_work_manager_admin_threesome_2_fluff_2" 'Yes, <<=setup.getNpcName("npc_manager","title")>>.' 1800>>]<br>
[<<moveTo "event_work_manager_admin_threesome_abort" 'Actually... you should have remained at your desk, you have work to do.' 1800>>]
</div>/*#
#desc: act as fluffer for admin and manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'penis' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_admin.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You drop to your knees obediently to unzip <<=ps(setup.getNpcName('npc_admin', 'first'))>> pants, taking <<his npc_admin>> magnificent member in both hands, in awe, as always, at its perfect, massive size before you bring it to your drooling lips.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Determined to serve the best you can, you
<<if setup.getTotalValue("oral") > 15>>
swallow <<him npc_admin>> whole,
<<else>>
carefully slide <<him npc_admin>> down your throat,
<</if>>
licking the underside of <<his npc_admin>> shaft as much as you can as you have
<<else>>
<<He npc_admin>>'s too big for you to handle,
<<if setup.getTotalValue("oral") > 5>>
but you do your best and then finish off by
<<else>>
so you settle for
<</if>>
kissing and licking up and down <<his npc_admin>> shaft, having
<</if>>
no trouble at all summoning up saliva to have <<him npc_admin>> covered in your eager drool.<br>
<br>
<<if $fetish.daddy>>
"@@.npc_manager;It really is a beautiful sight — to see a <<if $fetish.sissy>>sissy<<else>>girl<</if>> serving at her <<Daddy npc_admin>>'s feet. Your development really has come along wonderfully.@@"
<<else>>
"@@.npc_manager;That is a good <<if $fetish.sissy>>sissy<<else>>girl<</if>> get that cock nice and hard and wet for your <<=setup.getNpcName('npc_manager', 'title')>>.@@"
<</if>>
<br><br>
You moan submissively and do as commanded, knee-walking along as <<=setup.getNpcName('npc_admin', 'first')>> is beckoned forward, <<=setup.getNpcName('npc_manager', 'formal')>> spreading her legs in invitation as the both of them leave it to you to slide things into place, the feeling of submission as you — on your knees<<if setup.checkItemTypeWorn("cage")>>, locked in chastity —<</if>> guide your <<if $npc_admin.flags.relationship == "boyfriend">><<boy npc_admin>>friend's<<else>>best friend's<</if>> <<getWordPenis "npc_admin">>, its taste still fresh in your mouth, into your <<=ps(setup.getNpcName('npc_manager', 'title'))>> <<getWordVagina>> truly driving home, no pun intended, what a <<if $fetish.sissy>>sissified<<else>>abject<</if>> slave you have become.<br>
<br>
With one <<if !$npc_admin.fem>>large <</if>>hand on your head <<=setup.getNpcName('npc_admin', 'first')>> makes sure you do not miss a moment of your "front row seat" view of <<his npc_admin>> <<getWordPenis "npc_admin">> sliding in and out of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordVagina>><<if $player.body_ref.penis && $fetish.sph>>, the moans she makes are of a type that your pathetic <<getWordMyPenis>> could never provide. <<if setup.checkItemTypeWorn("cage")>><<printThought "In chastity is where I belong...">><<else>><<printThought "I could never please a woman like this, I'm of much more use like this.">><</if>><</if>><br>
<br>
Despite the fact that you are there to enjoy the show, you can tell that their focus is on one another's pleasure, and it is not long before pent up arousal is unleashed, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> climax announced with a husky moan as, moments later, <<=setup.getNpcName('npc_admin', 'first')>> cums.<<if $fetish.cum>> Barely has <<he npc_admin>> stepped back when <<=setup.getNpcName('npc_manager', 'formal')>> pulls your face between her legs and you reflexively get to work licking her clean.<</if>><br>
<br>
"@@.npc_manager;Your girlfriend really is a submissive, cock-hungry <<if $fetish.sissy>>sissy <</if>>slut.@@"<br>
<br>
<<switch $npc_admin.flags.relationship>>
<<case 'boyfriend'>>
"@@.npc_admin;Yeah... that she is.@@" <<=setup.getNpcName("npc_admin","first")>> replies with a wry smile and a loving glance down as you lick your lips.
<<case 'friendswbenefits'>>
<<=setup.getNpcName("npc_admin","first")>> glances down as you lick your lips submissively.<br>
<br>
"@@.npc_admin;Technically she isn't my girlfriend — just a <<if $fetish.sissy>>sissy <</if>>fuck-buddy who makes a good temporary home for my cock.@@"<br>
<br>
You shudder with lust, beyond turned on at the combination of demeaning treatment both physical and verbal.
<<default>>
ERROR: unexpected npc_admin.flags.relationship <<=$npc_admin.flags.relationship>>
<</switch>>
<br><br>
"@@.npc_manager;Quite so, well, in any case, she has work to get back to... as do the both of us.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> nods, and <<he npc_admin>> holds the door and drops you off at your desk before leaving the office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: admin and you prepare to do manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.strapon = !($player.body_ref.penis && $player.body.penissize[0] > 3)>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You ask if you and <<=setup.getNpcName('npc_admin', 'first')>> could maybe do her together?<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> expression is unreadable for a long moment as she seems to be considering your offer.<br>
<br>
<<if $npc_manager.flags.require_chastity>>
<<if $player.body_ref.penis && $player.body.penissize[0] > 3>>
"@@.npc_manager;Hmm... yes... I suppose keeping you in chastity has left me... unable to fully utilize certain company resources...@@"
<<else>>
<<if $player.body_ref.penis && $fetish.sph>>
"@@.npc_manager;Hmm... you have the hips for it, but I think we both know that you would be... unsatisfying. But do not worry, I have the perfect harness to go over top...@@"
<<else>>
"@@.npc_manager;Hmm... yes... though with a slight tweak — you will be remaining in chastity, but do not worry, I have the perfect harness to go over top...@@"
<</if>>
<</if>>
<<else>>
"@@.npc_manager;Hmm... yes... that does seem like a productive use of company resources...@@"
<</if>>
<br><br>
<<if !$player.virgin.top_fem>>
[<<moveTo "event_work_manager_admin_threesome_3_virgin_1" 'Yes, <<=setup.getNpcName("npc_manager","title")>>.' 1800>>]<br>
<<else>>
[<<moveTo "event_work_manager_admin_threesome_2_fuck_2" 'Yes, <<=setup.getNpcName("npc_manager","title")>>.' 1800>>]<br>
<</if>>
[<<moveTo "event_work_manager_admin_threesome_abort" 'Actually... you should have remained at your desk, you have work to do.' 1800>>]
</div>/*#
#desc: admin and you do manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if $scene.strapon>>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<<else>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<addItem 'cockring'>>
<<wearItem 'cockring' true>>
<</if>>
<<changeHorny 50>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You slide out of your clothes, feeling exposed and submissive as <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_manager', 'formal')>> remain clothed,
<<if $scene.strapon>>
the strap-on
<<if setup.checkItemTypeWorn("cage")>>
buckled over your chastity device somehow
<</if>>
<<elseif $scene.removeCage>>
even <<=setup.getNpcName('npc_manager', 'formal')>> releasing your <<getWordMyPenis false>> from chastity
<<else>>
even your erection
<</if>>
failing to make you feel any more "in charge." <<if !$scene.strapon>>A point driven home even further when she attaches a tight cock-ring around your free member.<</if>><br>
<br>
"@@.npc_manager;So, my dear,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states as she runs a hand possessively over your <<if $scene.strapon>>artificial <<getWordPenis true>><<else>>hard <<getWordMyPenis false>><</if>> "@@.npc_manager;Yes, I definitely want to take advantage of this company resource... <<=setup.getNpcName('npc_admin', 'formal')>> — if you would cover my back?@@"<br>
<br>
"@@.npc_admin;Yes ma'am,@@" <<=setup.getNpcName('npc_admin', 'first')>> replies as <<=setup.getNpcName('npc_manager', 'formal')>> lets her skirt fall to the ground and then backs into <<him npc_admin>>. <<=ps(setup.getNpcName('npc_admin', 'formal'))>> cock slides smoothly into her rear as she grins, and then she leans her weight into <<him npc_admin>> and spreads her legs in invitation.<br>
<br>
"@@.npc_manager;Come, my pet. Serve your <<=setup.getNpcName('npc_manager', 'title')>>.@@"<br>
<br>
You step forward, your <<if $scene.strapon>>silicone<<else>>sensitive<</if>> tip having but a moment to press between her folds before her legs are wrapping around you and drawing you all the way in.<br>
<br>
"@@.npc_manager;Yesss,@@" she growls, looking you in the eye as she starts to rock back and forth. "@@.npc_manager;Come on, <<if $fetish.sissy>>sissy<<else>>girl<</if>> — put your hips into it!@@"<br>
<br>
With your <<if $scene.strapon>>large, ever-hard member<<elseif $player.body.penissize[0] >= 6>>massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock<<elseif $player.body_ref.knot>>knot<<elseif $player.body_ref.horsecock>>horse-cock<<else>>rod<</if>><<else>>large, hard member<</if>> in one end and <<=setup.getNpcName('npc_admin', 'first')>> in her rear the going is tight, but you are helpless to do anything but obey.<br>
<br>
<<if $scene.strapon>>
Your artificial member may lack nerve endings, but you are far from a loss for sensation, dripping within your prison as you submissively do everything you can to serve your <<=setup.getNpcName('npc_manager', 'title')>> as, even suspended between dual dicks, she remains in total command and control.
<<else>>
The cock-ring has you as hard as it has you unable to cum and you almost want to cry — the feel of her squeezing down on you unimaginably powerful, a level of pleasure that becomes torturous as it draws on and on; bolstered by her ability to, even suspended between dual dicks, remain in total command and control.
<</if>>
<br><br>
"@@.npc_manager;Serve me... fuck me... yes...@@" She whispers, directing you and <<=setup.getNpcName('npc_admin', 'first')>> until she stiffens, clamping down hard in restrained, but still obvious, orgasm, a following grunt from <<=setup.getNpcName('npc_admin', 'first')>> a moment later to indicate that <<he npc_admin>> has climaxed as well.<br>
<br>
You whine in desperation,
<<if $scene.strapon>>
<<if setup.checkItemTypeWorn("cage")>>
your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> keeping your own climax "safely" locked away.
<<else>>
as you feel the harness tight over you.
<</if>>
<<else>>
the cock-ring holding back the floodgates as you find yourself straining, and yet unable to cum.
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> eases to the ground with a smile, brushing your cheek as you pant in desire.<br>
<br>
"@@.npc_manager;You are pretty good at that<<if $fetish.sissy>>... for a sissy<</if>>. <<if $scene.strapon>>But now it is time for you to get back<<else>>But best we get you locked back up so you can return<</if>> to your traditional duties.@@"<br>
<br>
[<<moveTo "event_work_manager_admin_threesome_2_fuck_3" 'Continue.' 300>>]
</div>/*#
#desc: locked up after you and admin do manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.strapon>>
<<removeItem 'strapon_large' true>>
<<deleteItem 'strapon_large'>>
<<else>>
<<removeItem 'cockring' true>>
<<deleteItem 'cockring'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<useClothSetPop 'tmp'>>
<<changeHorny -20>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $scene.strapon>>
With a click of a buckle your strap-on is removed and you are again merely <<if setup.checkItemTypeWorn("cage")>>locked up and <</if>>naked.
<<else>>
With the delicate touch of a safe-cracker, and the inexplicable skills of a magician, <<=setup.getNpcName('npc_manager', 'formal')>> has you out of the cockring<<if setup.checkItemTypeWorn("cage")>> and back into chastity<</if>> without pushing you over the edge into climax. Back in your prison you somewhat relax as she smiles and caresses you possessively.
<</if>>
<br><br>
"@@.npc_manager;Back as it should be, and now it is time for all three of us to return to our duties. Fortunately, I foresee a VERY productive afternoon after that, I feel so wonderfully refreshed and focused!@@"<br>
<br>
She may be refreshed, but you're in a bit of a lust-blasted haze... yet submission wins out as you get dressed for <<=setup.getNpcName('npc_admin', 'first')>> to take you back to your desk. <<He npc_admin>> gives you a parting <<if $npc_admin.flags.relationship == 'boyfriend'>>hug and a kiss<<else>>nod<</if>> before leaving the office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: admin guides you through doing manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if $scene.strapon>>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<<else>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<addItem 'cockring'>>
<<wearItem 'cockring' true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
Your heart races as you strip naked and <<=setup.getNpcName('npc_manager', 'formal')>>
<<if $scene.strapon>>
buckles a strap-on over your hips.
<<elseif $scene.removeCage>>
unlocks your <<if $player.body.penissize[0] >= 6>>massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock<<elseif $player.body_ref.knot>>knot<<elseif $player.body_ref.horsecock>>horse-cock<<else>>rod<</if>><<else>>large, hard member<</if>>.<br>
<br>
She pauses, catching a drip that beads at its tip before adding a tight cock-ring around the base of your shaft. "@@.npc_manager;Would not want you going off early...@@" She explains with the hint of cruelty in her smile.
<<else>>
unleashes your <<if $player.body.penissize[0] >= 6>>massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon cock<<elseif $player.body_ref.knot>>knot<<elseif $player.body_ref.horsecock>>horse-cock<<else>>rod<</if>><<else>>large, hard member<</if>>.<br>
<br>
She pauses, catching a drip that beads at its tip before adding a tight cock-ring around the base of your shaft. "@@.npc_manager;Would not want you going off early...@@" She explains with the hint of cruelty in her smile.
<</if>>
<br><br>
She strides back to her desk and then turns, sliding her skirt up her legs to expose herself in invitation... only to stop as she looks at your petrified expression.<br>
<br>
"@@.npc_manager;Wait... that look... is this your first time?@@"<br>
<br>
You blush in embarrassment, unable to find your voice and yet veritably shouting the truth via your flushed cheeks.<br>
<br>
"@@.npc_manager;Oh what a delight. I always suspected, but did not realise that I had locked you away at just the perfect time.@@" The look of her satisfied smile is almost enough to make you cum from pure submissive overload, but that would be too easy and you instead find yourself nodding as you bite your lip.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_admin', 'formal')>>?@@" She states, suddenly overly formal. "@@.npc_manager;If you could lend a hand — it would seem your <<if $npc_admin.flags.relationship == 'boyfriend'>>girl<</if>>friend could use a bit of... guidance insofar as what to do with a lady in such a situation...@@"<br>
<br>
"@@.npc_admin;Come on, <<callPlayer "npc_admin">>! Let's put the last of that crazy virginity pledge of yours behind you, you just follow my lead and you'll be a broadsword champ in no time!@@"<br>
<br>
<<=ps(setup.getNpcName('npc_admin', 'first'))>> gung-ho, supportive enthusiasm manages to jar you into motion, and you take <<his npc_admin>> hand as <<he npc_admin>> leads you forward while <<=setup.getNpcName('npc_manager', 'formal')>> takes a commanding seat on the edge of her desk; legs spread in invitation.<br>
<br>
"@@.npc_admin;Now the thing to keep in mind when you're this size is you gotta move smooth and controlled — you're wielding a mighty implement between your legs, and you want to use that power for good and not hurt anyone.@@"<br>
<br>
You nod, even as you find yourself unable to break away from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> entrancing gaze.<br>
<br>
Far from passive <<=setup.getNpcName('npc_manager', 'formal')>> demonstrates the power of subtle control — the slightest twitch of her lip, the movement of her eye, all of it draws you in and makes you feel like an offering... an offering to a Goddess.<br>
<br>
<<=ps(setup.getNpcName('npc_admin', 'first'))>> voice seems distant, even as you follow <<his npc_admin>> instructions to the letter. "@@.npc_admin;Okay, now she's consented, and with how wet she is you don't need too much foreplay, but it's still good manners to ease into things — use your fingers to open her up, tease her clit and then rub between her folds so you're nice and lubricated. Remember, too, that some women won't cum from just penetration. You gotta pay attention and be ready for that sort of thing and make sure you're doing all you can to ensure your partner has as good, if not better, of a time as you. Sex isn't a solo event, it's co-op, there ain't no prize for being first to the finish line.@@"<br>
<br>
You nod vaguely and then gasp as <<=setup.getNpcName('npc_manager', 'formal')>> angles her hips and guides you in...<br>
<br>
[<<moveTo "event_work_manager_admin_threesome_3_virgin_2" 'Oh Goddess!' 600>>]
</div>/*#
#desc: admin guides you through making manager cum
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_manager_admin">>
<</if>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "npc_manager">>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<<applyFatigue 100>>
<<changeHorny 50>>
<<if !$player.virgin.penis>>
<<set $player.virgin.penis = "npc_manager">>
<</if>>
<<if !$player.sec_style.sex.penis_sex>>
<<set $player.sec_style.sex.penis_sex = "obedient">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $scene.strapon>>
Your artificial cock has you feeling nothing as you slide forward... well, nothing save for the pulse-pounding need to serve your <<=setup.getNpcName('npc_manager', 'title')>>.
<<else>>
You gasp, <<=setup.getNpcName('npc_manager', 'formal')>> is tight and wet... and you would surely cum in a moment if it were not for the steel ring around your base, preventing your climax even as it keeps you hard and mind-blowingly sensitive.
<</if>>
<br><br>
"@@.npc_admin;That's it. Now you can steady yourself on her hips, then start thrusting, try to pay attention to her reactions, vary your speed and angle based on what she responds to the most positively... as a hint, she likes long, hard strokes, but other partners could be different so you always wanna pay attention.@@"<br>
<br>
Transfixed by <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze you nod and try to follow instructions, your breaths shorts, desperate gasps with each thrust, the feeling of
<<if $scene.strapon>>
her squeezing down on your thick, silicone member transfering up your hips as you all but throw yourself into the task at hand.
<<else>>
<<if $player.body.penissize[0] >= 6>>
<<if $player.body_ref.knot && $player.body_ref.horsecock>>
your ridged dragon dick... and then your thick knot popping into her igniting waves of pleasure with every thrust,
<<elseif $player.body_ref.knot>>
your thick knot popping into her igniting waves of pleasure with every thrust,
<<elseif $player.body_ref.horsecock>>
the ridge of your horse-cock igniting waves of pleasure with every thrust,
<<else>>
her squeezing the full length of your massive <<getWordMyPenis>> spurring
<</if>>
<<else>>
her tightening around your <<getWordMyPenis>> with each stroke,
<</if>>
sensations beyond anything you had ever imagined.<br>
<br>
<<printThought "Is this what I was missing out on with that virginity pledge? What an idiot I was...">>
<</if>>
<br><br>
Maintaining measured control to the last, the only indication of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> climax is a slight twitch of her eye, but even that seems like an accomplishment as you pant and sweat.<br>
<br>
"@@.npc_manager;Not bad, for a first timer.@@" She finally states before gently pushing you away. "@@.npc_manager;You should thank your coach.@@" She adds.<br>
<br>
Finally tearing your gaze away from <<=setup.getNpcName('npc_manager', 'formal')>> you look over at <<=setup.getNpcName('npc_admin', 'first')>> as <<he npc_admin>> shrugs magnanimously. "@@.npc_admin;Hey, helping <<if $npc_admin.flags.relationship == 'boyfriend'>>my girlfriend<<else>>a friend<</if>> AND helping two lovely ladies get off? What could be a better reward than that?@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> chuckles, back on her feet showing no sign of what the two of you have just done together — quite the contrast compared to how exhausted and sweaty you feel.<br>
<br>
"@@.npc_manager;Well it is a good thing, because I am afraid we do not have time for anything else — duty calls, my lovelies.@@"<br>
<br>
You curtsy and <<=setup.getNpcName('npc_admin', 'first')>> bows before you turn towards your pile of clothes.<br>
<br>
[<<moveTo "event_work_manager_admin_threesome_3_virgin_3" 'Continue.' 600>>]
</div>/*#
#desc: change after admin guided you through doing manager
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.strapon>>
<<removeItem 'strapon_large' true>>
<<deleteItem 'strapon_large'>>
<<else>>
<<removeItem 'cockring' true>>
<<deleteItem 'cockring'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<useClothSetPop 'tmp'>>
<<changeHorny -20>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<if $scene.strapon>>
With a click of a buckle your strap-on is removed and you are again merely locked up and naked.
<<else>>
With the delicate touch of a safe-cracker, and the inexplicable skills of a magician, <<=setup.getNpcName('npc_manager', 'formal')>> has you out of the cockring and back into chastity without pushing you over the edge into climax. Back in your prison you somewhat relax as she smiles and caresses you possessively.
<</if>>
<br><br>
"@@.npc_manager;There, all ready to return to your normal duties.@@" She states with a smile, waving you and <<=setup.getNpcName('npc_admin', 'first')>> out of the room.<br>
<br>
Back at your desk you share a quick <<if $npc_admin.flags.relationship == 'boyfriend'>>hug and a kiss with your <<boy npc_admin>>friend<<else>>nod of understanding with your friend<</if>> before <<he npc_admin>> heads off for <<his npc_admin>> office and you settle into your chair.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: admin and manager fuck you
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement. "@@.npc_manager;You greedy thing! Trying to hijack my planned meeting and be the centre of attention...@@"<br>
<br>
You start to nervously apologise but <<=setup.getNpcName('npc_manager', 'formal')>> just grins wider. "@@.npc_manager;There are few things more adorable than a <<if $fetish.sissy>>sissy<<else>>submissive<</if>> who thinks they have overstepped their bounds, but, fortunately for you well... there is a special way a <<if $fetish.sissy>>sissy's<<else>>girl's<</if>> tongue moves during cunnilingus when she is being fucked... a quite unique, and oh so wonderful feeling.<<if setup.checkItemTypeWorn("cage")>> Of course you will need to remain in chastity — We cannot have you losing control at the office, after all, now<<else>>Now<</if>> get over and lay on my desk. You have holes that need to be put to use.@@"<br>
<br>
[<<moveTo "event_work_manager_admin_threesome_2_center_2" 'Get in position...' 1800>>]<br>
[<<moveTo "event_work_manager_admin_threesome_abort" 'Actually... you should have remained at your desk, you have work to do.' 1800>>]
</div>/*#
#desc: admin and manager fuck you
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
Sprawled out on your back, your legs are soon wrapped around <<=ps(setup.getNpcName("npc_admin","first"))>> rock-hard abdomen while something else equally rock-hard thrusts in and out of your ass.<br>
<br>
Whatever moans you make are muffled by the fact that your face is buried under <<=ps(setup.getNpcName("npc_manager","formal"))>> skirt and she grinds against you, forcing your tongue deep between her folds as you lick and get fucked, the helpless combination of giving and receiving pleasure making you almost as dizzy as your reduced breath.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> cums with an explosive spurt, drenching your face in her pleasured approval just as <<if $npc_admin.flags.relationship == 'boyfriend'>>your <<boy npc_admin>>friend<<else>><<=setup.getNpcName("npc_admin","first")>><</if>><<if $fetish.cum>> fills your ass with <<getWordCum>><<else>>finishes in your ass<</if>>.<br>
<br>
"@@.npc_manager;You had better not be making a mess of my desk!@@" <<=setup.getNpcName("npc_manager","formal")>> warns as you try to squeeze tight at both ends.<br>
<br>
As <<=setup.getNpcName("npc_manager","formal")>> cleans herself up <<=setup.getNpcName("npc_admin","first")>> helps you back to your feet, leaning in for a kiss before <<he npc_admin>> helps wipe off your face and then gallantly escorts you back to your desk.<br>
<br>
"@@.npc_admin;See ya around <<callPlayer "npc_admin">>,@@" <<he npc_admin>> states with a smile before leaving the office for you to settle back in to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: cancel admin and manager fuck you
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You nervously explain that, actually... you just remembered some work you needed to do.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> sighs and shakes her head. "@@.npc_manager;And just when you had me on board... well be off with you — I have something "to do" as well... and if you are not going to take part, well... back to your desk you go.@@"<br>
<br>
You blush, unable to meet <<=ps(setup.getNpcName('npc_admin', 'first'))>> gaze as you pass... which instead means you find yourself glancing at <<his npc_admin>> bulging pants on your way out the door.<br>
<br>
Barely have you taken your seat than you start hearing sounds from the inner office — your actions must have done something because they are even louder than normal... and about twenty minutes later your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>><</if>>friend emerges, a bit unsteady on <<his npc_admin>> feet as <<he npc_admin>> passes you with a nod. Leaning against her doorway <<=setup.getNpcName('npc_manager', 'formal')>> has a satisfied smile on her face, glancing at you and grining with hunger before returning to her inner office and leaving you to continue your work alone and aroused.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ask manager for pay advance
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $now.getUTCDay()>>
<<case 1>>
<<set _mult = (5+8.5)/39>>
<<case 2>>
<<set _mult = (5+2*8.5)/39>>
<<case 3>>
<<set _mult = (5+3*8.5)/39>>
<<case 5>>
<<set _mult = 5/39>>
<</switch>>
<<set $scene.allHours = $player.work.hoursDone >= $player.work.hoursperWeek*_mult>>
<<set $scene.allWork = $player.work.workPensum >= $player.work.hoursperWeek*$player.work.bonusReq*_mult>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if it would be possible for you to get an advance on your next paycheck.<br>
<br>
<<if $player.work.advance == 0 && $now.getUTCDay() != 4 && $scene.allHours && $scene.allWork && $npc_manager.affection > $npc_manager.anger>>
<<if $npc_manager.affection == 10 && $npc_manager.anger == 0>>
She smiles. "@@.npc_manager;Yes, your performance of late has been nigh on perfect... so certainly I can help my favourite <<if $fetish.sissy>>SISSI <</if>>Secretary out getting to your next paycheck...@@"
<<elseif $npc_manager.anger == 0>>
She smiles. "@@.npc_manager;Yes, your performance of late has been almost without flaw... so certainly I can help my favourite <<if $fetish.sissy>>SISSI <</if>>Secretary out getting to your next paycheck...@@"
<<else>>
She smiles. "@@.npc_manager;Yes, your performance of late has been quite acceptable... so, yes, I can help my favourite <<if $fetish.sissy>>SISSI <</if>>Secretary out getting to your next paycheck...@@"
<</if>>
She smiles wider. "@@.npc_manager;Of course, such a request comes with additional responsibilities, but I promise that these additional requirements will only serve to make you a better assistant, in the long run. So, do we have a deal?@@"<br>
<br>
<<printThought "Hmm, she seems reticent about spilling the details beforehand, do I need the money bad enough to jump in unaware?">><br>
<br>
[<<moveTo "event_manager_theme_advance_2" "Agree to her offer... whatever it actually is." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_manager_theme_advance_2" "On second thought, you'll make it to payday on your own." 60 "<<set $scene.accept=false>>">>]
<<else>>
<<if $player.work.advance > 0>>
"@@.npc_manager;Another advance? I am sorry, my dear, you really must learn better money management, I cannot authorise two advances against the same paycheck!@@"
<<elseif $now.getUTCDay() == 4>>
"@@.npc_manager;Advance? But I just paid you! No, I think you had better try to make this week's pay last a bit further before you ask an advance on the next.@@"
<<elseif !$scene.allHours>>
She looks at you and frowns. "@@.npc_manager;An advance? You have not even worked your full hours this pay period! No, I do not think I can approve your request.@@"
<<elseif !$scene.allWork>>
She looks at you and frowns. "@@.npc_manager;An advance? While you have worked your required hours this pay period, your efficiency at such has been sorely lacking... no I do not think I can approve your request.@@"
<<else>>
She frowns. "@@.npc_manager;No. Your overall behaviour of late has been... less than preferable. Work is about more than merely showing up and getting things done. You are in a representative position, and must act accordingly. Thus, I am afraid, that I am unable to approve your request.@@"
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: manager explains terms of pay advance
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $player.work.advance = Math.floor(.5*$player.work.payment)>>
<<addCredits $player.work.advance>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You agree to her offer, and ask what it is that <<=setup.getNpcName('npc_manager', 'formal')>> wants you to do in exchange for your advance?<br>
<br>
She counts out <<=$player.work.advance>>. "@@.npc_manager;There, that is half of your expected base pay this week — before performance modifiers, of course. As to what I want you to do, well... now that you have accepted your side of the agreement, I shall explain how you will earn this little accommodation.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles
<<switch $npc_manager.stage>>
<<case 1>>
"@@.npc_manager;So, for the remainder of the pay period, I will be asking a bit more from you during lunch. Instead of the simple delivery that you are accustomed, I will expect you to hand-serve me the meal. I know it may sound a bit... humiliating and subservient, but practicing in this manner will help build skills that will be useful throughout your career. In a way, you could think of it as being effectively my slave... just for the short duration of your lunch break.@@"
<<case 2>>
<<if $npc_manager.stagevalues[2].advance == 0>>
and reaches into her desk to come up with... a butt plug.<br>
<br>
"@@.npc_manager;So, for the remainder of the pay period this will be a part of your uniform requirement. This is to serve a number of purposes — from increasing alertness to<<if setup.checkItemTypeWorn("cage")>> working with your chastity device to<<else>>helping to<</if>> re-orient your pleasure centres in a more... receptive direction to... well, it may look small, but trust me that this cute things packs in some quite powerful electrics and vibrations, for punishing OR rewarding a cute <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<else>>
wide.<br>
<br>
"@@.npc_manager;Well, I suppose this is not going to be much of a surprise... but then, maybe you do not need the credits and are just looking for an excuse to have your cute bum filled at work? Such a greedy... hole makes me contemplate giving you something larger, but no, we shall not rush things, I do not want to stretch you past your breaking point prematurely.@@" She chuckles and you shift nervously, "@@.npc_manager;Well, you know the drill — in exchange for this advance you will show up to work with a full-featured plug for the remainder of the pay period.@@"
<</if>>
<<case 3>>
wide. "@@.npc_manager;So, for the remainder of the pay period I will be introducing your bottom to a concept know as "maintenance" spankings. Essentially, rather than as a punitive measure, I will be administering spankings on a daily basis — after your inspection, I think will work best. This will help you be more alert and effective at performing your duties for the remainder of the day.@@"
<<case 4 5>>
and raises an eyebrow. "@@.npc_manager;I would have thought you would have learned to control your finances better after so long on the job, but, perhaps you have come to enjoy these little extra requirements? Yes, that yearning to be an even better slave is quite the admirable one. Well I have just the thing for you. <<if setup.hasUpgrade($bed, 'bed_bondage_gear_2')>>Yes, I mean that you will be sleeping in secure bondage once again... though perhaps this is no trouble at all, I imagine you have already come to prefer such an arrangement, hmm?<<elseif setup.hasUpgrade($bed, 'bed_bondage_gear')>>I know you have become quite accustomed to sleeping in bondage — and a wonderful habit it is. Your current arrangement, however well... it is a bit gauche — arms and legs spread wide, you know, very... uncouth.<</if>> So, for the remainder of the pay period — and beyond, if you wish it, you will be sleeping securely bound — an auto-strap system that will keep your legs and arms tightly secured and ensure a relaxing, sedate sleep.<<if !setup.hasUpgrade($bed, 'bed_bondage_gear_2')>> You may expect delivery of the equipment by the time you arrive home. Sleep tight!<</if>>@@"
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<br><br>
[<<moveTo "event_manager_theme_advance_3" "Agree to her terms." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_manager_theme_advance_3" "No! You aren't going to do that!" 60 "<<set $scene.accept=false>>">>]
<<else>>
You state that, on second thought, you will muddle through on your own.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> shrugs, trying to appear nonchalant, even though you suspect she was looking forward to whatever she had planned for you. "@@.npc_manager;Very well. If money does become an issue, do feel free to ask.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: agree to pay advance terms
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept>>
<<incrementEmotion 'anger' 'npc_manager' $npc_manager.stage>>
<</if>>
<<set _submission = 5 + 2*setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'normal' $SEEN_FRIEND>>
<<if $npc_manager.stagevalues[$npc_manager.stage].advance < 1>>
<<set $npc_manager.stagevalues[$npc_manager.stage].advance = 1>>
<</if>>
<<switch $npc_manager.stage>>
<<case 2>>
<<addItem 'small_remote_plug'>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<if $scene.plug != "">>
<<removeItem $scene.plug true>>
<</if>>
<<wearItem 'small_remote_plug' true>>
<<set $npc_manager.stagevalues[2].advance = 2>>
<<case 4 5>>
<<if !setup.hasUpgrade($bed, 'bed_bondage_gear_2')>>
<<addEvent 'bed_bondage_delivery'>>
<<addTaskById 'manager_bondage_task'>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod in agreement and <<=setup.getNpcName('npc_manager', 'formal')>> smiles.
<<else>>
You balk at this requirement but <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows. "@@.npc_manager;You have already taken the money, I am afraid that I cannot accept it back — legal issues meant to prevent clawing back pay and thus robbing employees, you understand. Thus, well... you need to hold up your end of the agreement.@@"<br>
<br>
You start to object but recognise the gleam in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> eye and slump in acceptance.
<</if>>
<br><br>
<<switch $npc_manager.stage>>
<<case 1>>
"@@.npc_manager;Excellent — I will look forward to seeing you at lunch.@@"
<<case 2>>
"@@.npc_manager;Lovely. Now, if you would please insert this...@@" She slides the plug, and a small packet of lube towards you.<br>
<br>
<<if $scene.plug == "">>
<<if !$player.flags.masturbation.plug && !setup.checkItemOwned('analplug_medium_ems')>>
You take a deep breath, sure there was your "promotion" event, but wearing a buttplug? That's... well, that's something else.
<<else>>
You take a deep breath, wearing a plug for work? What sort of crazy job is this?
<</if>>
Then again, if you were going to leave the company you would have done so when she ordered you to strip, or alter your wardrobe, or use a dildo on yourself, or lock you in chastity... you sigh.<br>
<br>
With the help of lube the plug slides into you<<if setup.checkItemTypeTag('plug', ['hollow'])>>, further stretching the hollow plug already occupying your ass<<else>> easily, perhaps too easily, a part of you reflects<</if>>.
<<elseif setup.getItemObj($scene.plug).tags.includes("vibrating") && setup.getItemObj($scene.plug).tags.includes("vibrating")>>
You turn around to display your plug and <<=setup.getNpcName('npc_manager', 'formal')>> coos in approval. "@@.npc_manager;Well, well, it would appear you are getting this advance almost for free! But it is certainly worth it to have you delightfully filled... and at my command.@@"<br>
<br>
You gasp as she "tests" the plug with a quick buzz and jolt, your reaction only making her smile wider.
<<else>>
You slide your current plug out of your rear. <<=setup.getNpcName('npc_manager', 'formal')>> smiles at the sight of it. "@@.npc_manager;My, my, ahead of the game! Of course this new one is far more featured...@@"<br>
<br>
With the help of lube the plug slides into you easily<<if setup.checkItemTypeTag('plug', ['hollow'])>>, further stretching the hollow plug already occupying your ass<<else>>... perhaps too easily, a part of you reflects<</if>>.
<</if>>
<br><br>
"@@.npc_manager;Now, obviously I can only mandate your attire while you are on the clock, but I would recommend you remain plugged even whilst off-shift. First, because it is such lovely training, and second, well... it is programmed to give you a nice shock whenever you enter a store, a little reminder to help your economic discipline.@@"
<<case 3>>
"@@.npc_manager;Wonderful. Well, I shall be looking forward to <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> Morning.@@"
<<case 4 5>>
"@@.npc_manager;Lovely. I wish you luck in what will surely be some of the most restful sleep of your life.@@"
<</switch>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: bed bondage 2 arrives
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($locationbeforeuseage,"home")>>
You hear the doorbell ring,
<<else>>
You have just stepped into your flat and closed the door behind you when the bell rings,
<</if>>
it looks like there's a delivery drone hovering outside your door.<br>
<br>
[<<moveTo "event_bed_bondage_delivery_2" "Open the door for the delivery." 60>>]
</div>/*#
#desc: bed bondage 2 delivered
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "What? Really?!">>
<<addItem 'bed_bondage_2_box'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You open the door, and a delivery drone scans your face and then dispenses a box before zipping away. The package prominently features the company logo for Social Interaction Service Syndicate Inc.<br>
<br>
<<printThought 'Guess this is that bondage gear <<=setup.getNpcName("npc_manager","formal")>> wants me to sleep in...'>><br>
<br>
[<<moveTo "room_foyer" "Close the door and take things inside." 360 "<<set $player.inside = true>><<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: try to install bed bondage 2 restraints
#status: FINISHED 0.8.6.0
#*/
<<set $player.location to "Install Bondage Gear">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.llocation=="room_bedroom">>
<<deleteItem 'bed_bondage_2_box'>>
<<addUpgradeItem $bed 'bed_bondage_gear_2'>>
<</if>>
<</if>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
<<if $player.llocation=="room_bedroom">>
You unpack the bondage restraints, looking them over they look quite comfortable, and even more secure. You read the instructions, which, while leaving the mechanism a mystery, describe that all you need to do is spread things out, lay down, and let the patented Auto-Bind system do the work..<br>
<br>
<<if setup.getTotalValue("bondage") > 15>>
<<printThought "Mmmm, I can't wait to try sleeping all bound up...">>
<<elseif setup.getTotalValue("bondage") > 10>>
<<printThought "Hmm, restraining myself like that seems kind of exciting...">>
<<else>>
<<printThought "Why am I doing this? Do I really want to bind myself overnight?">>
<</if>>
<<else>>
You don't think this is an appropriate place to install bondage restraints.
<</if>>
<br><br>
[<<moveTo "goInv" "Back to Inventory." 0 "<<set $player.plocation = $locationbeforeuseage>>">>]<br>
[<<moveTo $locationbeforeuseage "Do something else." 30 "<<set $player.llocation=$locationbeforeusage>>">>]
</div>/*#
#desc: maintenance spankings
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<<set $player.work.tmpworkPensum += 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<applyExperience 'bdsm' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $npc_manager.stagevalues[3].advance = 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You obediently bend over <<=ps(setup.getNpcName("npc_manager","formal"))>> knee as she smiles. "@@.npc_manager;Lovely! This is exactly why a maintenance spanking is such a wonderful way to start the day — already it has you in the proper mindset of a <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"<br>
<br>
Before you can respond her hand lands on your exposed rear with a loud *SMACK*
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
you moan in pleasure, the heat spreading out from the impact feeling sooo good.
<<else>>
you gasp in pleasure, the heat spreading out from the impact turning you on.
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
you gasp in pain, but also feel a spark of pleasure... are you starting to like this sort of thing?
<<else>>
you moan in pain.
<</if>>
<</if>>
<br><br>
Ignoring your reaction <<=setup.getNpcName("npc_manager","formal")>> peppers your bottom with another half-dozen blows before her hand gently rubs to soothe and smooth things out. "@@.npc_manager;Very good. Now run along, get dressed, and get to work.@@"<br>
<br>
You rise, curtsy, and hurry to obey, the pain in your bottom having you more awake and ready to tackle your duties, maybe there is something to this?
<<else>>
You do not move into position and <<=ps(setup.getNpcName("npc_manager","formal"))>> expression slowly narrows, and then, in an eye blink, she is standing next to you. You gasp in surprise only for her to bend you over in place and land a series of painful smacks to your bottom that echo through the office.<br>
<br>
As quickly as it started she steps away, leaving you to find your balance as your bottom smarts.<br>
<br>
"@@.npc_manager;From maintenance spanking to required discipline, all in a moment... I shall have to continue to keep a close eye on you as you continue your development as a proper, full-time <<if $fetish.sissy>>SISSI <</if>>Secretary. Now, get dressed and get to work.@@"<br>
<br>
You hobble off.
<</if>>
<br><br>
<<if setup.getItemFromType("shirt") || setup.getItemFromType("dress") || setup.getItemFromType("strapless_dress") || setup.getItemFromType("outfit")>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Return to your desk." 180>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Dress and return to your desk." 180 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
</div>/*#
#desc: serve manager for the entire lunch
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.foodDelivery.right>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 5 'normal' $SEEN_FRIEND>>
<<applyExperience 'foot' 9 'normal' $SEEN_FRIEND>>
<<applyStress 5>>
<<set $scene.foodDelivery.punished = true>>
<</if>>
<<set $npc_manager.stagevalues[1].advance = 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.foodDelivery.right>>
You deliver <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch and she smiles, motioning for you to stand next to her desk and attend to carefully chopping and feeding it to her as she continues to work. The resulting process is certainly less efficient than if she just ate it herself, but it does remarkably well at accentuating your feeling of submission.<br>
<br>
The whole time she hardly even acknowledges you, which only serves to reinforce the sense that you are merely a thing, her submissive subordinate, bound to obey her every whim almost like the computers you programmed in your previous job.<br>
<br>
As if she had timed it purposefully your lunch period comes to an end and she dismisses you back to your desk with a light wave.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> looks at your lunch offering and her gaze narrows. "@@.npc_manager;Here you are to be repaying my kindness in giving you an advance on your paycheck through serving me through your lunch period... and you fail to even deliver things properly!@@"<br>
<br>
You try to come up with an excuse as you hold the meal out between the two of you but she casually knocks it aside to somehow loom over you.<br>
<br>
"@@.npc_manager;Do not try to ply me with unwanted things. You have failed. And since you were unable to provide the sustenance that I requested, well... I shall feed in another way.@@" You tremble before her wide, toothy grin, half expecting her to lunge in and consume you like some creature out of a horror flick, or maybe feed on you like a vampire. Instead her touch is ever so gentle, brushing your cheek for a moment as she traces the side of your cheek, only to suddenly snatch a handful of hair and drag you off-balance.<br>
<br>
Her face centimetres from your own she whispers to you in a harsh growl. "@@.npc_manager;Do not test me, <<=$player.first_name>> — your career is entirely in my hands and I WILL mold you into an efficient, and effective <<if $fetish.sissy>>SISSI <</if>>Secretary. As a practice in service you may start by picking up the lunch that you so carelessly spilt upon the floor.@@"<br>
<br>
She releases her grip and follow up with a slap on your ass that makes you jump. You drop to the ground, nervously trying to gather up the scattered food as she glares down at you, occasionally pointing towards something you missed, either by hand, or by using one high-heeled foot to literally force your face down into it, each time holding you there just long enough for your heart to race before allowing you to resume your efforts.<br>
<br>
By the time you're done picking things up to her excessively exacting standards your break is over. You start to stand but she stops you with a glare, forcing you to crawl out of her office and back to your desk in humiliation.<br>
<br>
<</if>>
<br><br>
<<set _lunchEnd = setup.setNextDate($now, 0, $player.work.time_midday.hour, $player.work.time_midday.minutes)>>
<<set _timeToLunchEnd = setup.secondsToDate($now,_lunchEnd)>>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' "Start to work." _timeToLunchEnd "<<set $player.work.nowWorking = true>>">>]
</div>/*#
#desc: assessed as bimbo
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$workEvents.hasOwnProperty('work_bimbo_intro')>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 7, 0, false)>>
<<addWorkEvent 'work_bimbo_intro' _nextDate>>
<</if>>
<<set $player.flags.bimbo_work.assess = true>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_other_bimbo')>>
<<if _themeId != -1>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<</if>>
<<if !$player.sec_style.submission.bimbo_secretary>>
<<set $player.sec_style.submission.bimbo_secretary = "forced">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;So,@@" <<=setup.getNpcName("npc_manager","formal")>> states, segueing off from your negative performance review. "@@.npc_manager;It would seem that for you to execute your duties with acumen and intelligence is... too large of an ask. Fortunately for you, the company has policies in place for such an occasion. You are far from the first <<if $fetish.sissy>>SISSI <</if>>assistant to have taken a step past <<if $fetish.sissy>>sissification<<else>>feminisation<</if>> into becoming a mindless bimbo... now, obviously those two things are totally independent — <<if $fetish.sissy>>one can be a smart sissy<<else>>being feminine has nothing to with intelligence loss — quite the contrary, becoming more fem is quite the smart move<</if>>... and, of course, being a Secretary<<if $fetish.sissy>>SISSI or otherwise<</if>> is a skilled position, but my philosophy is to leverage the skills an employee has rather than expect them to do something for which they are ill-suited. Which means that if you are going to be a horny, air-headed bimbo, well... it is up to me, as your manager, to adjust your responsibilities to suit.@@"<br>
<br>
You bite your lip, nervous, a little scared, but also excited by her words.<br>
<br>
"@@.npc_manager;To prepare you for your revised duties I have enrolled you in one of the company's many training programs. You will start sometime next week. I am certain you will find it quite edifying.@@"<br>
<br>
<<if $scene.review.special == "stage3_party_repeat_invite">>
She starts to dismiss you, and then pauses. "@@.npc_manager;Oh, and, since you are behaving quite ditzy, I shall remind you that <<=setup.getNpcName("npc_boss","formal")>> has another of <<his npc_boss>> parties.@@"<br>
<br>
[<<moveTo "event_party_repeat_invite" "Say you would like to accompany her to the party." 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_party_repeat_invite" "You don't see a reason to attend the party tonight." 60 "<<set $scene.accept = false>>">>]
<<else>>
She dismisses you.<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<</if>>
</div>/*#
#desc: get link to bimbo training video
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You've barely started your morning work when you get an email informing you of a new "training" requirement.<br>
<br>
<<printThought 'Oh, like... that must be that thing <<=setup.getNpcName("npc_manager","formal")>> told me about!'>><br>
<br>
You open the link and immediately smile at the course title "Beyond A-SLUT: Becoming the Perfect Bimbo Secretary." <br>
<br>
[<<moveTo "event_work_bimbo_intro_2" "This looks fun!" 600>>]
</div>/*#
#desc: bimbo training video - intro
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You start the video and <<=setup.getNpcName("npc_development","formal")>> appears in her classroom, greeting the camera with a smile.<br>
<br>
"@@.npc_development;Welcome — here at Social Interaction Service Syndicate Inc. we are all about getting the most out of our resources — and our most important resources of all are you — our valued employees! We pride ourselves on making the best use of all our employees even, no, especially, the horny bimbo sluts like yourself.@@"<br>
<br>
The use of pornographic terminology in the midst of corporate speak would be jarring, if you hadn't already been working at the company so long.<br>
<br>
<<printThought "Of course they'd have a process to monetize bimbofication... in some ways that seems like it was the plan from the start...">><br>
<br>
"@@.npc_development;At this point in your career you have already shown the ambition and determination to better yourself and impress as sexy bimbo sluts, but now you're wondering how to put your lusty urges to work — to be more than merely a sexy piece of furniture, but to be the best bimbo you can be!@@" <<=setup.getNpcName("npc_development","formal")>> smiles and you find yourself drawn in and excited by her words. "@@.npc_development;To start with we're going to focus on putting your best face forward to fully represent and display what you bring to the company. To go into more detail of what it means to be a made-up bimbo slut I want to introduce you to one of your fellow employees — a fast-rising go-getter who exemplifies all our corporate values while showing just how far a horny brain and willingness to put yourself out there can get you!@@"<br>
<br>
[<<moveTo "event_work_bimbo_intro_3" "Continue." 600>>]
</div>/*#
#desc: bimbo training video - makeup
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _makeup = setup.getTotalValue("makeup")>>
<<applyExperience 'makeup' _makeup 'skip' $ALONE>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" "bimbo_secretary">>
<div id="invframe" class="scrolltext">
The scene changes to show a close-up of a heavily made-up woman in the midst of an enthusiastic blowjob. The cock she's sucking spurts its load a few moments later and she slurps it clean before turning to the camera with a smile. "@@.generic_female1;Hiya, my name is Kharisma and, like... welcome!@@" She states in greeting, rising to her feet as the camera pulls back slightly, lingering on her jaw-dropping sex-doll figure highlighted her short skirt and a near bursting, slightly too un-buttoned blouse. The camera zooms in on her face as she flutters her eyelashes.<br>
<br>
"@@.generic_female1;So! Whether you're just starting to embrace your inner bimbo, or you're already rocketing up the corporate ranks like I did, the first thing to always remember is to focus on arousal. Not just yours — though that'll happen as well, but on everyone else. Your first duty is to, like, inspire desire. Your existence is all about making cocks hard and vaginas wet, if you meet someone and they don't want to do you, well... you need to step up your game! And that's where I come in, to give you some info on what you should do to be always looking your sexy best!@@"<br>
<br>
The camera zooms in to show her thick red lips, stunning eyelashes, perfect eyeliner and enough concealer and toner to render her face into the perfect, blemish-free countenance of a doll. "@@.generic_female1;As a bimbo, my first duty is to look perfect — and I mean always, which means I'm NEVER without makeup — especially at work.@@"<br>
<br>
The video cuts to show her in front of a mirror touching up her face as she continues her explanation. "@@.generic_female1;As a bimbo, makeup can never be too heavy, or too perfect. You want to keep on top of things no matter what is happening, because, as I, like, said earlier... looking good is your number one responsibility.@@"<br>
<br>
The camera pans to emphasize her point as it reveals that, at the same time as she is re-applying makeup, a <<man>> is busy pounding her from behind. The camera lingers for a moment before the scene transitions again and she is back on her knees, switching off between sucking two cocks.<br>
<br>
"@@.generic_female1;In addition to style — which should ALWAYS match the rest of your clothes and accessories, the biggest thing to consider is permanent or not?@@" She pauses to deep-throat the larger of the two schlongs, leaving a red ring of lipstick around its base before leaning back. "@@.generic_female1;Manually applied makeup has the advantage of leaving your mark, but it requires maintenance. Not to say that being fucked into a blurry-eyed mess isn't great, but it really isn't appropriate for work. We bimbos work in representative positions, after all!@@" She turns back to sucking cock as the image cuts once more.<br>
<br>
The bimbo is lying on her back, bouncing slightly as she is obviously being fucked off-screen as she looks up at the camera. "@@.generic_female1;Personally, I say one should get their favourite style made permanent. It saves time and gives you a good backup. Then you can, like augment as necessary if a given outfit calls for something else but, whatever you do, make sure your makeup is heavy and perfect! If you look like anything less than a perfect plastic sex-doll you're doing it wrong!@@"<br>
<br>
[<<moveTo "event_work_bimbo_intro_4" 'The image fades and you are returned to the classroom and <<=setup.getNpcName("npc_development","formal")>>.' 600>>]
</div>/*#
#desc: bimbo training video - eyes
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
"@@.npc_development;Well, wasn't that just lovely!@@" <<=setup.getNpcName("npc_development","formal")>> states with a smile, "@@.npc_development;I'm sure you're already thinking about how you can up your makeup game, but as you consider your "look" I want to remind you of another detail of being a proper bimbo — and that's WHERE you look.@@"<br>
<br>
She walks out from behind her desk and the camera pans to show the classroom where at least half a dozen bimbos are kneeling next to their chairs, sucking cock; each with her eyes turned upwards to stare lustily at her customer.<br>
<br>
"@@.npc_development;Eyes are the window to the soul — and you have the soul of a slut that needs to be shown off. Always look up to your betters. If you are serving, your gaze should communicate gratitude. At all other times your glance should be an invitation, a standing offer that says "I exist to be used, how can I be of service?" Note that, from the other side, you should expect and revel in stares — stolen glances are great, but lingering, lusty, distracted gazes are the sign that you are doing things right.@@"<br>
<br>
The camera zooms back in on <<=ps(setup.getNpcName("npc_development","formal"))>> welcoming face. "@@.npc_development;Now, I want to pass you off to another of your wonderful fellow employees for some more discussion on how to properly dress to draw glance and stares and incite lust and desire!@@"<br>
<br>
[<<moveTo "event_work_bimbo_intro_5" 'Continue.' 600>>]
</div>/*#
#desc: bimbo training video - clothing
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" "gimbo_secretary">>
<div id="invframe" class="scrolltext">
You find yourself looking at another plastic-perfect bimbo; only where your previous "role model" bore the classic blonde look paired with a too-tight take on office attire this woman has taken things the far other direction: jet-black hair and tight black latex clothing with breasts even larger than her predecessor.<br>
<br>
"@@.generic_female2;Heya my name is Raven and I want to welcome you to becoming a better Bimbo. You've already heard about makeup and poise, but what's the point of all that without a sexy-hot outfit to match?@@" She gives a twirl to show off; the camera zooming out to show her short skirt, breathtakingly tight corset, fishnet stockings and towering knee-high patent platform heels.<br>
<br>
"@@.generic_female2;So!@@" She continues, giving a slight bounce that has her massive breasts testing the strength of her top. "@@.generic_female2;Many people assume that a bimbo is limited to pink and slutty and, like... obviously those are great, but there's a whole other colour pallet that you can investigate! Me, well, I'm a goth bimbo, or gimbo, for short. That means I go for more blacks and reds, leather and latex. There are other styles too — maybe you're a fan of radiant yellows, or enjoy the irony of virginal white! Whatever your personal style you should never hesitate to express yourself... so long as you follow the basic bimbo guidelines.@@"<br>
<br>
The camera pulls back and then pans down as she poses in demonstration.<br>
<br>
"@@.generic_female2;First off — heels — the steeper the better! Never be caught without them and use bed heels for bonus training while you rest!@@"<br>
<br>
The camera slides up her towering shoes and patent-wrapped calves to reach her fishnet over latex stocking combo. "@@.generic_female2;Stockings are a must for most outfits. I prefer latex and fishnets, but even just "normal" nylons can be great.@@"<br>
<br>
The camera continues up to her very short skirt, which she flips up to reveal
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity')>>
a sleek chastity device. "@@.generic_female2;Panties are dealers choice, but they need to be sexy and match your outfit, chastity, of course, is just part of the work uniform — though my bimbo work responsibilities means I spend plenty of time out of it! Supervised, of course!@@"
<<else>>
nothing underneath. "@@.generic_female2;Panties are dealers choice, but they need to be sexy and match your outfit, personally, I don't usually bother.@@"
<</if>>
<br><br>
The camera next focuses on her hourglass waist as "@@.generic_female2;Corset training is a must, though you may go without to show off your belly. Just be sure to make up those hours later! Perfection requires constant dedication!@@"<br>
<br>
Moving past her bra the camera pulls back as she brings her gloved hands under her massive breasts.<br>
<br>
"@@.generic_female2;Your bra needs to be up to the task of further highlighting your bosom, and medical science is standing by to make sure that bosom is as big as you can handle! I'm a fan of latex gloves, shined of course, but you could opt for a flashy bracelet or such if you prefer. The fundamental rule is that you exist to show off a hyper version of femininity that should spark arousal, or maybe jealousy, in anyone who looks at you.@@"<br>
<br>
She smiles and waves. "@@.generic_female2;Well good luck in your future career just remember — being a bimbo is about constant striving for perfection and always thinking "what can I do more?" See ya around!@@"<br>
<br>
[<<moveTo "event_work_bimbo_intro_6" 'Back to <<=setup.getNpcName("npc_development","formal")>> once again.' 600>>]
</div>/*#
#desc: bimbo training video - work
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.bimbo_work.unlock = true>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You're back with <<=setup.getNpcName("npc_development","formal")>>, only this time she's out of the classroom and walking through an office bay. "@@.npc_development;So, now that you've got your makeup and your clothes on point... you're probably wondering how this contributes to your work? Well it's simple, really — your beauty, and actions, exist to raise morale and make the company as a whole run more efficiently. Obviously, you'll still have various minor clerical responsibilities to keep you occupied when your holes aren't in use, but just as you are expected to always look your best, so too, are you expected to always be ready to act.@@"<br>
<br>
She pauses as she comes to Kharisma getting fucked over a copy machine. A few moments later and the <<man>> grunts in satisfaction, leaving Kharisma to gasp a thanks as she catches her breath, and then fixes her clothes and resumes her copying.<br>
<br>
"@@.npc_development;See? Kharisma performed a valuable service, with only a minor delay to her other duties, which was more than made up for by the performance boost she provided to the senior salesperson she was serving. <<He>>'s satisfied and ready to get another client!@@"<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> continues on, passing through the bay and then into an office where Raven is on her knees eating out a woman dressed in a formal suit. "@@.npc_development;Here we see another application of the bimbo mindset towards work.@@" <<=setup.getNpcName("npc_development","formal")>> gestures towards the kneeling woman. "@@.npc_development;Providing entertainment for legal council while they wait for an important meeting.@@"<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> turns to the camera with a smile, "@@.npc_development;I'm sure you can think of many other examples of how you can put yourself to use helping the company. A convenient trick is to think to yourself, "what would a porn actress do?" Studying such material at home can be a great source for ideas, as well. Just remember — your job is to be beautiful, feminine, and, most of all — to serve the company, and your superiors, in every way! Good luck, your career as a corporate bimbo is just beginning!@@"<br>
<br>
The video "training" comes to an end and you blink... you certainly have things to think about... and some new work possibilities to perhaps improve your performance...<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ask about bimbo secretarys
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> about some of the other <<if $fetish.sissy>>SISSI <</if>>Secretarys that you've met who seem significantly more... bimbofied.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> pauses, seeming to take a moment to phrase her thoughts. "@@.npc_manager;Yes, well... there are different opportunities for different skill-sets. The company strives to use and perfect all of its employees to the maximal degree.@@"<br>
<br>
[<<moveTo "theme_manager_work_bimbo_2" 'Ask if you could try working a "bimbo" shift sometime?' 180>>]<br>
<<if setup.getTotalValue("bimbofication") > 15>>
[<<moveTo "theme_manager_work_bimbo_enthusiast_2" 'Beg to work a "bimbo" shift sometime.' 180>>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to beg for bimbo employment.@@]<br>
<</if>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask to work as bimbo secretary
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.bimbo_work.ask = true>>
<<if !$workEvents.hasOwnProperty('work_bimbo_intro')>>
<<addWorkEvent 'work_bimbo_intro'>>
<</if>>
<<if !$player.sec_style.submission.bimbo_secretary>>
<<set $player.sec_style.submission.bimbo_secretary = "voluntary">>
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_other_bimbo')>>
<<if _themeId != -1>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_enthusiast_bimbo')>>
<<if _themeId != -1>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<<set $npc_manager.themes.other_work[_themeId].done = 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if you could vary up your normal responsibilities with a "bimbo" shift?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles in amusement. "@@.npc_manager;Why you horny little <<if $fetish.sissy>>sissy<<else>>thing<</if>>... yes, I suppose I could spare you, given your overall efficiency at your normal duties. There is a video training course required. I will enrol you in it.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ask about bimbo secretarys enthusiast
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You mention your meeting with <<=setup.getNpcName("npc_sexdoll","first")>> and how exciting her duties "working bimbo" sound.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Yes, well... there are different opportunities for different skill-sets. The company strives to use and perfect all of its employees to the maximal degree.@@"<br>
<br>
[<<moveTo "theme_manager_work_bimbo_2" 'Ask if you could try working a "bimbo" shift sometime?' 180>>]<br>
<<if setup.getTotalValue("bimbofication") > 15>>
[<<moveTo "theme_manager_work_bimbo_enthusiast_2" 'Beg to work a "bimbo" shift sometime.' 180>>]<br>
<<else>>
[@@.link_locked;You are not so much of a slut as to beg for bimbo employment.@@]<br>
<</if>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: beg to work as bimbo secretary
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.bimbo_work.ask = true>>
<<if !$workEvents.hasOwnProperty('work_bimbo_intro')>>
<<addWorkEvent 'work_bimbo_intro'>>
<</if>>
<<if !$player.sec_style.submission.bimbo_secretary>>
<<set $player.sec_style.submission.bimbo_secretary = "enthusiast">>
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_other_bimbo')>>
<<if _themeId != -1>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_enthusiast_bimbo')>>
<<if _themeId != -1>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<<set $npc_manager.themes.other_work[_themeId].done = 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You beg <<=setup.getNpcName("npc_manager","formal")>> for permission to work a "bimbo" shift, all but throwing yourself at her feet in a humiliating display of utter whorishness.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows. "@@.npc_manager;Get up. A display such as that... well, it is quite unbecoming of a Secretary of your stature. Still, I take your meaning. If you are so enthralled by the idea of working bimbo, well... there is a video training course required. I will enrol you in it.@@"<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: bimbo secretary work
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.work.nowWorking = true>>
<<set $scene.isMorning = $now.getUTCDay() != 5 && $now.getUTCHours() < $player.work.time_morning.hour ||
$now.getUTCDay() == 5 && $now.getUTCHours() < $player.work.time_friday.hour>>
<<if $scene.isMorning && $scene.morningWorkEvent>>
<<set $workEvent = $scene.morningWorkEvent>>
<<elseif $scene.afternoonWorkEvent>>
<<set $workEvent = $scene.afternoonWorkEvent>>
<<else>>
<<set $workEvent = setup.checkWorkEvents($player, $now, $scene.workEventCount)>>
<</if>>
<<set _forcedEvent = $workEvent.triggered && $workEvents[$workEvent.eventId].trigger.priority == 1000>>
<<if _forcedEvent>>
<<set _hours = 1+Math.floor($workEvents[$workEvent.eventId].what.length/60)>>
<<if _hours >= 3>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary_work_bimbo_abort">>
<<else>>
<<if $scene.isMorning>>
<<if $now.getUTCDay() != 5>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_morning.hour-_hours, 0)>>
<<set $workEvent.rndH = $player.work.time_morning.hour-_hours>>
<<set $workEvent.rndM = random(0,45)>>
<<else>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_friday.hour-_hours, 0)>>
<<set $workEvent.rndH = $player.work.time_friday.hour-_hours>>
<<set $workEvent.rndM = random(0,45)>>
<</if>>
<<else>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_evening.hour-_hours, 0)>>
<<set $workEvent.rndH = $player.work.time_evening.hour-_hours>>
<<set $workEvent.rndM = random(0,45)>>
<</if>>
<<checkTaskEvents>>
<</if>>
<<else>>
<<unset $workEvent>>
<<if $scene.isMorning>>
<<if $now.getUTCDay() != 5>>
<<if $now.getUTCHours() >= $player.work.time_morning.hour-2>>
<<set _hour = $now.getUTCHours()>>
<<else>>
<<set _hour = $player.work.time_morning.hour-random(1,2)>>
<</if>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_morning.hour-random(1,2), $player.work.time_morning.minutes)>>
<<else>>
<<if $now.getUTCHours() >= $player.work.time_friday.hour-2>>
<<set _hour = $now.getUTCHours()>>
<<else>>
<<set _hour = $player.work.time_friday.hour-random(1,2)>>
<</if>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_friday.hour-random(1,2), $player.work.time_friday.minutes)>>
<</if>>
<<else>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_evening.hour-random(1,2), $player.work.time_evening.minutes)>>
<</if>>
<<checkTaskEvents>>
<</if>>
<<set $player.flags.bimbo_work.times_worked += 1>>
<<include "startAdminSexdoll">>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'normal' $EXPOSED>>
<<set _anal = setup.getTotalValue("bimbofication")>>
<<applyExperience 'anal' _anal 'normal' $EXPOSED>>
<<set _oral = setup.getTotalValue("bimbofication")>>
<<applyExperience 'oral' _oral 'normal' $EXPOSED>>
<<if $fetish.cum>>
<<applyExperience 'cum' 12 'normal' $EXPOSED>>
<</if>>
<<if $npc_manager.stage >= 4 && !_forcedEvent>>
<<if $npc_sexdoll.stage >= 4 && $npc_manager.stage == 5 && (!State.hasPlayed("event_coworker_sexdoll_stage5_1") || !State.hasPlayed("event_coworker_sexdoll_stage5_2") && random(1,5) == 1)>>
<<initRoom>>
<<set $scene.bimboWorkEvent = true>>
<<moveTo 'event_coworker_sexdoll_stage5_1'>>
<<elseif $npc_sexdoll.stage >= 4 && !$player.makeup.unlocked.hasOwnProperty('sissy_doll') && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && ($player.virgin.vaginal || !$player.body_ref.vagina) && !$workEvents.hasOwnProperty('teach_sissy_doll') && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addWorkEvent 'teach_sissy_doll' _nextDate>>
<<elseif $npc_sexdoll.stage >= 4 && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && ($player.virgin.vaginal || !$player.body_ref.vagina) && $now.getUTCHours() < 10 && $now.getUTCDay() == 3 && setup.hasFreeTime($now, $player, $currentTasks, 1800) && (!State.hasPlayed("event_work_bimbo_all_hands_6") || random(1,5) == 1)>>
<<initRoom>>
<<set $scene.bimboWorkEvent = true>>
<<moveTo 'event_work_bimbo_all_hands_1'>>
<<elseif $npc_sexdoll.stage >= 4 && $now.getUTCDay() != 5 && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)) && $now.getUTCHours() < 10 && setup.hasFreeTime($now, $player, $currentTasks, 14400) && (!State.hasPlayed("event_work_bimbo_nap_9") || random(1,20) == 1)>>
<<initRoom>>
<<set $scene.bimboWorkEvent = true>>
<<moveTo 'event_work_bimbo_nap_1'>>
<<elseif !$scene.bimboWorkEvent>>
<<switch random(1,10)>>
<<case 1>>
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage() || setup.getChastityLevel() >= 3)>>
<<set $scene.bimboWorkEvent = true>>
<<initRoom>>
<<moveTo 'event_work_bimbo_vagina_1'>>
<</if>>
<<case 2>>
<<if $player.body_ref.penis && (!setup.checkItemTypeWorn("cage") || setup.getChastityLevel() >= 3)>>
<<set $scene.bimboWorkEvent = true>>
<<initRoom>>
<<moveTo 'event_work_bimbo_penis_1'>>
<</if>>
<</switch>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
<<if $npc_manager.stage < 4>>
You, like, "work"... in other words, spend a few minutes at your desk before heading off to one of the nearby bays to help "improve morale."
<<else>>
You augment your "normal" work with some <<if $fetish.sissy>>SISSI <</if>>Bimbo Secretary excess, slipping out of your chair on occasion to put your body to use in serving your fellow upper-floor coworkers with all of your holes.
<</if>>
<br><br>
<<if $player.timebased.horny > 66>>
Your lusty arousal has you almost pouncing on fellow employees as you draw them in for a "team-building" gang-bang. By the time you head back to your desk you have a smile on your face and <<if $options.fem>>girl<</if>>cum filling your every hole.
<<elseif $player.timebased.horny > 33>>
Your lusty arousal has you almost pouncing on fellow employees as you draw them in for a "team-building" gang-bang. By the time you head back to your desk you have a smile on your face and <<if $options.fem>>girl<</if>>cum filling your every hole.
<<else>>
Your lack of arousal makes you less efficient as a <<if $fetish.sissy>>SISSI <</if>>Bimbo Secretary... though you still "put in work" and return to your desk well-fucked and full of <<if $options.fem>>girl<</if>>cum.
<</if>>
<<if setup.checkVisibleClothingTag('slutty') > 60 && ["ultimatebimbo", "egirl", "sissy_doll", "camgirl", "qtpie"].includes(setup.getCurrentMakeup())>>
Your slutty outfit and bimbo-riffic makeup serve to brighten the day of your fellow employees — even before you offer to fuck them!
<<elseif setup.checkVisibleClothingTag('slutty') > 60>>
Your slutty outfit helps show off your body and brighten the day of your fellow employees, though you wonder if you shouldn't pick a makeup style that's a closer stylistic match.
<<elseif ["ultimatebimbo", "egirl", "sissy_doll", "qtpie"].includes(setup.getCurrentMakeup())>>
Your heavy, slutty makeup serves to announce your presence well... though you feel like you'd draw more attention if you opted for clothing that was a bit more "appropriately" slutty.
<<else>>
Your slutty behaviour does the job... though you wonder if you could have made better choices in terms of makeup and clothing to properly "advertise" your role as a slutty bimbo secretary.
<</if>>
<br><br>
In-between your slutty excursions you try to spend SOME time checking back at your desk lest something comes up.<br>
<br>
<<if State.hasPlayed("event_porn_large_cock_cook_invite_1") && !State.hasPlayed("event_porn_large_cock_sexdoll_invite_1")>>
[<<moveTo "event_porn_large_cock_sexdoll_invite_1" 'See if <<=setup.getNpcName("npc_sexdoll","first")>> would be interested in shooting porn.' 60>>]<br>
<</if>>
<<=$player.work.workMessage>>
[<<link "Performance Breakdown">><<openDialog "Secretary Tracking Database" "room_office_sissy_secretary_work_performance">> <</link>>]<br>
<br>
<<if $scene.isMorning>>
<<if $now.getUTCDay() == 5>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Catch up with things at your desk." 0 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Continue." 0 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>>">>]
<</if>>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Catch up with things at your desk." 0 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>>">>]
<</if>>
</div>/*#
#desc: bimbo secretary work canceled for event
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
You are about to "work bimbo" only to get a message from <<=setup.getNpcName("npc_manager","formal")>> that her requirements for the day will not allow for that opportunity, and you should just work at your desk until she is ready for you.<br>
<br>
<<if $scene.isMorning>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Continue." 0 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Continue." 0 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $scene.workEventCount=0>>">>]
<</if>>
</div>/*#
#desc: ask about bondage work
#status: RELEASED 0.9.1.0
#ignore_spell: forniphilic
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if you could relive your forniphilic experience and work a shift bound as a chair?<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Such a lovely idea! In point of fact I had something of a stressful morning. A more... ergonomic seat for the afternoon would be just the ticket to help me relax and remain productive.@@"<br>
<br>
[<<moveTo "event_bondage_work_repeatable_2" 'Get to "work."' 300>>]
</div>/*#
#desc: bound for bondage shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<<set $scene.addPlug = !setup.checkItemTypeWorn("plug")>>
<<if $scene.addPlug>>
<<addItem 'vibrating_plug_large'>>
<<wearItem 'vibrating_plug_large' true>>
<</if>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Just as your "normal" chair is equipped with bondage accoutrements, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> imperious seat cushion parts to reveal integrated cuffs and make space for you to be swiftly folded and restrained in place.<br>
<br>
Much like a cat assuming its favourite perch, <<=setup.getNpcName('npc_manager', 'formal')>> practically purrs as she sits back, her weight pressing down slightly heavier than her slender frame would suggest as she reaches down to <<if setup.checkItemTypeWorn("cage")>>tease your cage<<else>>tease you<</if>> with one hand as she pulls closer to her desk and gets to work.<br>
<br>
[<<moveTo "event_bondage_work_repeatable_3" "Keep working..." 6900>>]
</div>/*#
#desc: bondage shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.bondage = 2>>
<<setThreshold 'bondage' 'machine_bondage' 'chair_bondage'>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<changeHorny 50>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Bound beneath your <<=setup.getNpcName('npc_manager', 'title')>> you "assist" her through the afternoon as she alternates tapping away at her computer or calling in to various meetings. Though you cannot see exactly what she is up to, and your hearing is muffled by your bonds, you can feel her authority as she confidently steers <<if $npc_manager.stage == 5 && !State.hasPlayed("event_rival_destruction_5")>>the<<else>>her<</if>> department from atop her special throne.<br>
<br>
In between meetings and work <<=setup.getNpcName('npc_manager', 'formal')>> pays special attention to her seat, adjusting your bonds, playing with your plug and just generally ensuring that you are "entertained" throughout the shift as you shudder with excitement and wonder if your writhing is enough to make you qualify as a massage chair.<br>
<br>
Though you can hardly keep track of time, eventually <<=setup.getNpcName('npc_manager', 'formal')>> rises and you feel her loosen the straps. With the strength that still manages to surprise you, she easily lifts you from the chair and gently places you back on your feet, smiling with pride as she caresses your face and thanks you for the work... finishing off with an ever so gentle kiss on the front of your gag before she unclasps its strap.<br>
<br>
<<if $npc_manager.stage == 5 && !State.hasPlayed("event_rival_bondage_1")>>
<<printThought "As fun as that was... if I'm going to undermine I think I may need to make another run at the crate to garner favours...">><br>
<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" '<<=setup.getNpcName("npc_manager","formal")>> removes your gag and sends you back to your desk with a smile.' 300 "<<removeItem 'hollow_gag' true>><<deleteItem 'hollow_gag'>>">>]
</div>Bound and used as a table leg for a lunch meeting.
Used as a chair by Antlers.
Tied up and bound, with a ring gag to be used as a toy cleaner.
Bound and displayed as a decoration for a high up executive meeting./*#
#desc: ask about bdsm work
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager", "formal")>> if you might spend the afternoon assisting <<=setup.getNpcName("npc_discipline", "formal")>> in her Employee Discipline Department.<br>
<br>
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
<<=setup.getNpcName("npc_manager", "formal")>> smiles. "@@.npc_manager;Yes... I believe you have proven your skills in such matters. And <<=setup.getNpcName("npc_discipline", "formal")>> would certainly appreciate the extra pair of hands. With all these new hires and such her department has been running around the clock trying to keep up with all the employees sentenced to her care...@@"<br>
<br>
[<<moveTo "event_bdsm_work_repeatable_2" 'Head for the Employee Discipline Department.' 300>>]
<<else>>
<<=setup.getNpcName("npc_manager", "formal")>> raises an eyebrow. "@@.npc_manager;Are you asking for punishment... or to assist her with her work? In the former case, well... I prefer to be hands on with such things, as to the latter, well
<<if setup.getTotalValue("dominance") > 10>>
your skills of dominance may be developing, but I would need to see a real proof of expertise before I would be willing to loan you out.
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
what skill of dominance you have is hardly sufficient for such responsibility.
<<else>>
that would require skills of dominance that you very much do not possess.
<</if>>
<</if>>
After all, you work in a representative position, and I would not want you to poorly represent me, both to <<=setup.getNpcName("npc_discipline", "formal")>>, and to those entrusted to her care...@@"<br>
<br>
<<include "afternoonAltShiftChoice">>
<</if>>
</div>/*#
#desc: bdsm shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png">>
<div id="invframe" class="scrolltext">
You arrive at the Employee Discipline Department and, after a momentary confusion as to whether you are there for punishment, <<=setup.getNpcName("npc_discipline", "formal")>> grants you authorisation to assist, and you soon find yourself with a whip in hand, "attending" to one of the many... MANY employees who have been prescribed some punishment or another by their supervisor.<br>
<br>
The sounds of moans and crops echo through the dungeon as you take your place administering scheduled punishment, "attending to" subject after subject as you mete out the requisite discipline, barely having time to rest between victims as the Discipline Department hums at what has to be well over maximum capacity...<br>
<br>
[<<moveTo "event_bdsm_work_repeatable_3" 'Swing that whip.' 7200>>]
</div>/*#
#desc: bdsm shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 18 'terrible' $EXPOSED>>
<<applyExperience 'stamina' 15 'normal' $EXPOSED>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
You almost lose track of time trying to keep up with what seems like an endless stream of employees in need of punishment, unable to help but reflect that this level of punishment seems to speak to a failing not just on the part of the green employees... but their managers and the training they apparently failed to provide their charges.<br>
<br>
<<=setup.getNpcName("npc_discipline", "formal")>> appears to thank you for your assistance as she informs you that your shift is over.<br>
<br>
<<if $npc_manager.stage == 5 && !State.hasPlayed("event_rival_destruction_5")>>
<<if State.hasPlayed("event_rival_bdsm_1") || State.hasPlayed("event_rival_bdsm_1_alt")>>
[@@.link_locked;You have already enlisted <<=ps(setup.getNpcName("npc_discipline", "formal"))>> assistance to take down <<=setup.getNpcName("npc_rival", "formal")>>.@@]<br>
<<else>>
[<<moveTo "event_rival_bdsm_1_alt" 'Ask for a moment alone with <<=setup.getNpcName("npc_discipline", "formal")>>.' 120>>]<br>
<</if>>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Finish the afternoon back at your desk." 60>>]
</div>Training subject (used to train new doms).
Caneing.
Pepper lube.
Judge pain tolerance.
Proper painful positions (ex. Kneeling at Mistress' house).
Whipping post for stress relief and frustration of executives and officers.Unlocked after you've progressed through with Primrose's "training" simulation.
As this is a "non-standard" thing, Primrose has to get permission from Antlers, he makes an "HR dolls: the best representatives for a representative position" during which Antlers toys with/dommes the HELL out of him (obvious-to-you for her amusement/she is going to say yes... and because she can tell how much Prim loves/needs it/is compassionate-dom-starved)
<<moveTo "event_work_doll_1">>With Antlers' help he is allotted another room: an office where you assist him in training doll-secretaries: the two of you in full kig, first dressing the "trainee" before they practice SISSI secretary duties with you playing the part of their boss and Primrose switching between monitoring/tweaking programming and playing "other" roles to drillpossible events a SISSI secretary might run into (double booked a meeting with manager, need to deflect an angry employee from manager, computer system goes down, have to take dictation by hand)While Prim is evil assisting takes on a "darker" tone: Twig requirements that you wear nurse uniform rather than kig, rather than live role-play you're helping testing/servicing the handful of "dolls" he is reprogramming in his lab. Contrast previous where mistakes would be used as learning opportunities and the slightest failure of a doll will see it punished and shoved back in for more/harsher reprogramming. Could include an appearance by <<=setup.getNpcName("npc_evil_nurse","formal")>> where Prim tries to "impress" with how inventively cruel a new treatment is.
"good" prim he welcomes the employee and talks through what's happening + designs a special kig hood for each one individually (and can be reflected with a doll being nervous/scared coming back for a repeat visit excitedly)
evil prim dolls are dolls, so if he accidentally swaps a helmet, who cares? they're all the same, and rather than going from person -> doll -> person, it's vacbed drone -> doll -> drone "you are only a doll when you are being USEFUL, if you are not actively serving you are faceless, nameless and being "serviced" while you hope for your next opportunity to be of use"
if you've gone down the destruction path there could be hints of his over-drug/brainwashed falling apart with him obviously confusing dolls/punishing one for another's actions and so on/*#
#desc: doll makeup unlock npc_sexdoll arrives
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
You open the door to find <<=setup.getNpcName('npc_sexdoll', 'first')>> looking back at you with a smile and her usual slightly distracted expression.<br>
<br>
"@@.npc_sexdoll;Hi, <<=$player.first_name>>!@@" She states in greeting as <<=setup.getNpcName('npc_manager', 'formal')>> waves her in.<br>
<br>
"@@.npc_manager;Good, good, the two of you have met. <<=setup.getNpcName('npc_sexdoll', 'other')>> here started very close to the same time as yourself, but was put on a somewhat... different track. Today, however, after your makeup calamity, I thought it would be good for you to spend some time seeing what might have been. <<=setup.getNpcName('npc_sexdoll', 'other')>>, take my <<if $fetish.sissy>>SISSI <</if>>Secretary. Get her properly attired, and bring her along for your afternoon shift.@@"<br>
<br>
"@@.npc_sexdoll;Of course, <<=setup.getNpcName('npc_manager', 'title')>>!@@" <<=setup.getNpcName('npc_sexdoll', 'first')>> replies with a smile before grabbing you by the hand. "@@.npc_sexdoll;Come on! We need to get you, like, ready!@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> drags you off as you wonder what you're in for, though <<=ps(setup.getNpcName('npc_manager', 'formal'))>> casual referral to <<=setup.getNpcName('npc_sexdoll', 'first')>> by their apparent title gives you some ideas...<br>
<br>
[<<moveTo "event_doll_makeup_unlock_2" "Continue." 180 "<<set $scene.punish=true>>">>]
</div>/*#
#desc: doll makeup unlock working bimbo; npc_sexdoll arrives
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
You are in the midst of your slutty bimbo shift when <<=setup.getNpcName('npc_manager', 'formal')>> summons you back to the office where you find <<=setup.getNpcName('npc_sexdoll', 'first')>> also waiting for you.<br>
<br>
"@@.npc_sexdoll;Hi, <<=$player.first_name>>!@@" She states in greeting with her typical enthusiasm.<br>
<br>
"@@.npc_manager;Good, good, the two of you have met. <<=setup.getNpcName('npc_sexdoll', 'other')>> here started very close to the same time as yourself, but was put on a somewhat... different track. With your expanding your work responsibilities of late, I thought it would be good for you to spend some time seeing a bit more. <<=setup.getNpcName('npc_sexdoll', 'other')>>, take my <<if $fetish.sissy>>SISSI <</if>>Secretary. Get her properly attired, and bring her along for your afternoon shift.@@"<br>
<br>
"@@.npc_sexdoll;Of course, <<=setup.getNpcName('npc_manager', 'title')>>!@@" <<=setup.getNpcName('npc_sexdoll', 'first')>> replies with a smile before grabbing you by the hand. "@@.npc_sexdoll;Come on! We need to get you, like, ready!@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> drags you off as you wonder what you're in for, though <<=ps(setup.getNpcName('npc_manager', 'formal'))>> casual referral to <<=setup.getNpcName('npc_sexdoll', 'first')>> by their apparent title combines with everything else you've experienced at this company gives you some ideas...<br>
<br>
[<<moveTo "event_doll_makeup_unlock_2" "Continue." 180 "<<set $scene.punish=false>>">>]
</div>/*#
#desc: doll makeup unlock change makeup + clothes
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = 'sissy_doll'>>
<<unlockMakeup "sissy_doll">>
<</if>>
<<set $player.location to "Changing Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sexdoll', 'first')>> steps nimbly in her towering heels and you hurry to catch up — the two of you traveling up several floors before heading into a changing room where they immediately start instructing you on how to re-do your makeup; not letting up until you have painted yourself up to look like a perfect <<if $fetish.sissy>>sissy<<else>>porcelain<</if>> doll.<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> giggles once you're done as you notice that they've taken the opportunity to strip off what little clothing they had, their massive, pierced breasts proudly on display. "@@.npc_sexdoll;Look at that sexy doll! You're going to be, like, so popular! Being a sexdoll is the best! I have, like, the greatest job! Come on, strip! Your clothes will only get dirty, and we need to be ready to work!@@" <<=setup.getNpcName('npc_sexdoll', 'first')>> swallows a pill and her expression gets even more lust-addled as she literally starts drooling while staring at you.<br>
<br>
<<printThought "Talk about scared straight... is being a human sexdoll really <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> full-time job?">><br>
<br>
[<<moveTo "event_doll_makeup_unlock_3" 'You have learned your lesson, make an excuse and go back to <<=ps(setup.getNpcName("npc_manager", "formal"))>> <<if $scene.punish>>to apologise<<else>>and ask to return to your normal duties<</if>>.' 180 "<<set $scene.abort=true>>">>]<br>
[<<moveTo "event_doll_makeup_unlock_3" 'Strip, take your pill and get ready to start your shift...' 180 "<<set $scene.abort=false>>">>]
</div>/*#
#desc: doll makeup unlock change makeup + clothes
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.abort || $fetish.get_raped && $fetish.drugs>>
<<set $scene.chastityWorn = setup.checkItemTypeWorn("cage")>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<setTmpEffect 'sexdoll_drug'>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.abort && (!$fetish.get_raped || !$fetish.drugs)>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<set $player.location to "Doll Room">>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.abort && (!$fetish.get_raped || !$fetish.drugs)>>
You make up an excuse about an email you needed to send, taking advantage of <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> airhead distraction to leave the room and hurry back to your floor.<br>
<br>
You go straight for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office and <<if $scene.punish>>apologise profusely,<<else>>explain that you changed your mind, while<</if>> promising that you'll work harder to focus on your responsibilities as a <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
"@@.npc_manager;Good... though I wonder if you might have learned a thing or two, had you stuck around with <<=setup.getNpcName('npc_sexdoll', 'other')>> for the whole shift... some other time, perhaps.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Get back to working." 0 "<<set $player.work.nowWorking = true>><<completeWorkEvent>>">>]
<<else>>
<<if $scene.abort>>
You start to object, barely getting out the start of an excuse that you have an email you need to send when, moving startlingly quick, <<=setup.getNpcName('npc_sexdoll', 'first')>> is in your face, shoving a pill between your lips and forcing you to swallow as she looks at you with half hypnotised crazy eyes.<br>
<br>
"@@.npc_sexdoll;Shhh, you don't want to let them hear that sort of thought,@@" she whispers as the drugs take hold and your resistance fades "@@.npc_sexdoll;You want to be a Fuckdoll like me. It really is the ultimate dream of any <<if $fetish.sissy>>sissy<<else>>girl<</if>>, don't you agree?@@"<br>
<br>
Your mind is clouded and pink, any thought other than sex feeling almost painful as you nod obediently. "@@.npc_sexdoll;Good girl,@@" she says with a smile, "@@.npc_sexdoll;I promise we're going to have lot's of fun together!@@" You nod again, obediently following behind as she leads
<<else>>
<<=setup.getNpcName('npc_sexdoll', 'first')>> touches her chastity belt as she watches you strip then passes you a pill. Only after you've swallowed it and felt a potent pink cloud stifle your thoughts does she lead
<</if>>
you out of the changing room.<br>
<br>
As you pass through the door you hear a click, shocked to see
<<if $scene.chastityWorn>>
both hers and your chastity devices
<<if $scene.isSissyomatic>>
retract.
<<else>>
fall away; hers merely retracting while yours unlocks. She removes it and places it in a bin next to the door.
<</if>>
<<else>>
her chastity device retract.
<</if>>
<br><br>
"@@.npc_sexdoll;So, like, in here we exist to serve whomever wants to use us, however they want. Chastity would just, like... get in the way.@@"<br>
<br>
You are, by now, fully in thrall to the drugs and you nod, thoughts fixated on the idea of being used.<br>
<br>
Chastity sorted you follow <<=setup.getNpcName('npc_sexdoll', 'first')>> into the next room, which proves to be a sort of lounge, one other "sexdoll" already hard at work on her back getting fucked by some random executive.<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> guides you to a pair of side by side couches and shows you how to lay back and wait. With a vacant smile on your face you lay down and pose, a human sexdoll, waiting to be used...<br>
<br>
[<<moveTo "event_doll_makeup_unlock_4" 'Continue.' 1800>>]
<</if>>
</div>/*#
#desc: doll makeup unlock change makeup + clothes
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 20 'unbelievable' $EXPOSED>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'terrible' $EXPOSED>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'terrible' $EXPOSED>>
<<changeHorny 100>>
<<applyStress -50>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Doll Room">>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
Minutes turn to hours as you alternate lying in lusty wait with ecstatic moments of service. Your thoughts constantly clouded you truly feel like a near-mindless sexdoll; existing to be used and then ignored, your only purpose those times when your body is host to a <<if $options.fem>>girl<</if>>cock, or your lips eagerly pressed over a cunt.<br>
<br>
If you could actually compose a thought you might find it odd that you and the other fuckdolls do not play with one another in between clients. Certainly you are constantly horny, regardless if you've cum minutes before; eternally wet, willing and eager, but somehow the thought of doing anything active, of initiating rather than lying back and waiting for a "client" to use you never enters your pink-infused brain.<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, $player.work.time_evening.hour, $player.work.time_evening.minutes)>>
<<set _endShift = setup.secondsToDate($now, _endOfDay) - 1800>>
[<<moveTo "event_doll_makeup_unlock_5" 'Continue.' _endShift>>]
</div>/*#
#desc: doll makeup unlock finish doll shift
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "replaceCage_extendSissyomatic">>
<<useClothSetPop 'tmp' true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Changing room">>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
Having long lost track of how many times you were fucked and fondled, and by whom, you only start to have coherent thoughts again when the drug ever so slightly fades. You still feel fuzzy but you find yourself able to motivate yourself to stand without being first commanded to do so, following as <<=setup.getNpcName('npc_sexdoll', 'first')>> leads you out of the room,
<<if $scene.chastityWorn>>
the both of you pausing as your chastity is
<<else>>
you wait for her chastity device to be
<</if>>
re-installed before continuing on to the changing room and getting dressed.<br>
<br>
"@@.npc_sexdoll;The first come-down is, like, the worst,@@" <<=setup.getNpcName('npc_sexdoll', 'first')>> explains as you feel the edges of a headache coming on "@@.npc_sexdoll;I wish I could just be a REAL doll 24/7, but they want us to be fresh so we're only allowed to be true dolls for a few hours at a time. Anyway, I, like... hope you learned something? And maybe someday you can come back? There are different events they throw sometimes, being a fuckdoll is never a dull moment!@@"<br>
<br>
Still a bit of a grinning idiot you nod, thanking them for the "help" before you head back to your floor.<br>
<br>
[<<moveTo "event_doll_makeup_unlock_6" 'Back to the office.' 600>>]
</div>/*#
#desc: doll makeup unlock back to work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You report back to <<=setup.getNpcName('npc_manager', 'formal')>> as she greets you with a knowing grin.<br>
<br>
"@@.npc_manager;So, I hope you now better understand the importance of your duties, and the alternate employment options that you might be facing if you are unable to perform to the level required of a <<=setup.getFullTitle()>> at your level.@@"<br>
<br>
The drug still has you excessively obedient and you nod, even as that same drug has you weighing your options. What if you were but a living fuckdoll? That would be pretty good, too...<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> dismisses you back to your desk and your thoughts continue to clear. You still have an urge to work another shift, but you also reflect on what <<=setup.getNpcName('npc_sexdoll', 'first')>> was like way back on your first day and you shiver slightly at the power the company wields over its employees... or would "its slaves" be more accurate?<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Return to your desk." 0 "<<set $player.work.nowWorking = true>><<completeWorkEvent>>">>]
</div>/*#
#desc: manager leaves the office to pee
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $fetish.piss>>
<<if $npc_manager.flags.piss_drinking.success > 0 || State.hasPlayed("event_manager_forced_toilet_0_strict")>>
<<=setup.getNpcName('npc_manager', 'formal')>> texts you informing you that she is feeling a tad "full" and could you please come in to assist her?<br>
<br>
[<<moveTo 'event_manager_piss_drinking_repeat_1' 'Hurry to obey.' 60>>]<br>
[<<moveTo 'event_manager_piss_drinking_repeat_decline' 'Ignore her request.' 60>>]
<<elseif $npc_manager.flags.piss_drinking.available>>
As <<=setup.getNpcName('npc_manager', 'formal')>> storms past your desk, you recognise the familiar frustration of her having another "small bladder" day. You consider again if you want to make another attempt to "help her out." <br>
<br>
<<if setup.getTotalValue("piss") > 15>>
The thought of her divine amber nectar has you nearly salivating, the "solution" to her problem clear as day.<br>
<br>
[<<moveTo 'event_manager_piss_drinking_1' 'Beg to drink her piss.' 60>>]<br>
<<if setup.getWillpower() >0>>
[<<moveTo 'event_manager_piss_drinking_1_decline' 'Resist the urge to ask if you can swallow her piss.' 60>>]
<<else>>
[@@.link_locked;You don't have the mental energy to deny your depraved thirst.@@]
<</if>>
<<elseif setup.getTotalValue("piss") >= 10>>
You're sure that you can succeed at drinking her piss satisfactorily, if you only have the courage to offer...<br>
<br>
[<<moveTo 'event_manager_piss_drinking_1' 'Offer to drink her piss.' 60>>]<br>
[<<moveTo 'event_manager_piss_drinking_1_decline' "Let her walk past without comment." 60>>]
<<else>>
<<if setup.getWillpower() >0>>
[<<moveTo 'event_manager_piss_drinking_1' 'Offer to drink her piss.' 60>>] <<hint $options "This would take an exertion of willpower">><br>
<<else>>
[@@.link_locked;It would take another act of will to offer to drink her piss, and you just don't have the mental fortitude at present, especially in light of your previous failure.@@]
<</if>>
[<<moveTo 'event_manager_piss_drinking_1_decline' "Let her walk past without comment." 60>>]
<</if>>
<<else>>
For the third time this afternoon <<=setup.getNpcName('npc_manager', 'formal')>> exits her office and heads towards the door. You know from her schedule, she doesn't have any meetings and you note the look of frustration on her face.<br>
<br>
[<<moveTo 'event_manager_piss_drinking_0' 'Ask her if anything is wrong.' 60>>]
<</if>>
<<else>>
Your manager walks out in a hurry then returns a few minutes later.<br>
<br>
<<printThought "Huh, that was odd, probably nothing to do with me I guess.">><br>
<br>
~ Content disabled due to fetish flags ~ <<hint $options "Enable watersports content to experience this scene.">> <br>
<br>
[<<moveTo $scene.workEventReturn "Permanently disable this event and return to work." 60 "<<completeWorkEvent>><<removeWorkEvent 'manager_piss'>>">>]<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: offer to drink manager's piss
#status: FINISHED 0.7.8
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> sighs. "@@.npc_manager;I don't know what it is today but everything is just running through me. I barely get started working and I have to get up to micturate!@@"<br>
<br>
<<if setup.getTotalValue("smart") < 15>>
You blink in confusion for several seconds.<br>
<br>
"@@.npc_manager;Sorry, in the more vulgar phrasing: I need to pee.@@"
<<else>>
<<printThought "How clinical to use that word instead of just saying she has to pee.">>
<</if>>
<br><br>
<<if setup.getTotalValue("piss") > 15>>
The thought of her divine amber nectar has you nearly salivating, the "solution" to her problem obvious.<br>
<br>
[<<moveTo 'event_manager_piss_drinking_1' 'Beg to drink her piss.' 60>>]<br>
<<if setup.getWillpower() > 0>>
[<<moveTo 'event_manager_piss_drinking_1_decline' 'Resist the urge to ask if you can swallow her piss.' 60>>] <<hint $options "This would take an exertion of willpower">>
<<else>>
[@@.link_locked;You don't have the mental energy to deny your depraved thirst.@@]
<</if>>
<<elseif setup.getTotalValue("piss") >= 10>>
You immediately see the "solution" to her problem, but do you have the courage to present it to her?<br>
<br>
[<<moveTo 'event_manager_piss_drinking_1' 'Offer to drink her piss.' 60>>]<br>
[<<moveTo 'event_manager_piss_drinking_1_decline' "Express condolences that you can't help with her problem." 60>>]
<<elseif setup.getTotalValue("piss") > 5>>
<<if setup.getWillpower() >0>>
[<<moveTo 'event_manager_piss_drinking_1' 'Offer to drink her piss.' 60>>] <<hint $options "This would take an exertion of willpower">><br>
<<else>>
[@@.link_locked;It would take an act of will to propose the idea of you drinking her piss, and you just don't have the mental fortitude at present.@@]<br>
<</if>>
[<<moveTo 'event_manager_piss_drinking_1_decline' "Express condolences that you can't help with her problem." 60>>]
<<else>>
<<if setup.hasThreshold('piss', 'general_piss', 'work_piss_manager')>>
[@@.link_locked;You don't care what's happened before, you aren't going to do something so disgusting as to offer to drink her piss!@@]<br>
<<else>>
[@@.link_locked;You don't know where the idea that you might drink her piss came from but it is far too disgusting to even consider mentioning.@@]<br>
<</if>>
[<<moveTo 'event_manager_piss_drinking_1_decline' "Express condolences that you can't help with her problem." 60>>]
<</if>>
</div>/*#
#desc: decide against offering to drink manager's piss
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.strict = $fetish.piss && setup.getTotalValue("piss") > 0 && $player.sec_style.submission.human_toilet == "" && ($npc_manager.flags.cruel || $npc_manager.anger > $npc_manager.affection)>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.strict>>
<<=setup.getNpcName('npc_manager', 'formal')>> stops next to your desk, looking down for a moment before her hand shoots out to grab you roughly by the hair.<br>
<br>
She pulls you in firmly as you are helpless to resist against her strength, and a moment later your struggling lips are pressed against her lower lips... and she is unleashing a
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
delicious
<<else>>
disturbingly tasty
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
bitter
<<else>>
disgusting
<</if>>
<</if>>
spray across your tongue...<br>
<br>
"@@.npc_manager;Stupid <<if $fetish.sissy>>sissy<<else>>girl<</if>> — you exist to serve, to make my life easier — if that means being my live-in toilet, well... you should be grateful for the opportunity!@@"<br>
<br>
<<if setup.getTotalValue("piss") > 10>>
Sadly
<<else>>
Fortunately
<</if>>
her need was urgent, but not large, and a few moments later your face is pulled free and you sputter as you look up at her in shock.<br>
<br>
"@@.npc_manager;Problem? Hmm... perhaps some additional practice is in order, so you can better understand these new responsibilities.@@"<br>
<br>
Still holding you by the hair she drags you out of the office as you stumble along behind.<br>
<br>
[<<moveTo 'event_manager_forced_toilet_0_strict' "Continue." 300>>]
<<else>>
Accepting your sympathy, <<=setup.getNpcName('npc_manager', 'formal')>> pauses for a moment as if waiting for you to say something else before continuing out of the office to presumably head to the bathroom.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: manager accepts offer to drink her piss
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_manager.flags.piss_drinking.available>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_25'
25
'event_psychiatrist_session_manager_piss_drinking_1'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.piss_drinking.available>>
"@@.npc_manager;So you are interested in trying again? Well, I must say I admire the enthusiasm, I just hope you manage to do a better job this time.@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> pauses with her hand on the doorknob as she takes a moment to process your words.<br>
<br>
"@@.npc_manager;Oh... well that IS a surprise, you would really do that for me?@@"<br>
<br>
The cat's out of the bag and you can only nod.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<printThought "Of course... I would do anything for you <<=setup.getNpcName('npc_manager', 'formal')>>...">>
<<else>>
<<printThought "Oh my, what have I gotten myself into?">>
<</if>>
<br><br>
"@@.npc_manager;My, my... well that would certainly save me time and distraction... if you can do it without making a mess. Let's see if your tummy is up to matching what your mouth proposes.@@"
<</if>>
<br><br>
She motions for you to follow and you trail behind as she leads you to the elevator then up to floor 83 that you have never visited before. She leads you down the hall and through a door marked "Executive Bathroom." <br>
<br>
[<<moveTo 'event_manager_piss_drinking_2' "Follow." 60>>]
</div>/*#
#desc: look around the "Executive Bathroom"
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_manager.flags.piss_drinking.available>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_alt_work_0'
4
'event_manager_theme_executive_bathroom'
false
>>
<</if>>
<<set $scene.forcedPissDrink = false>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.piss_drinking.available>>
Making your way back up to the 83rd floor "Executive Bathroom" you find it empty... save for the latex encased bound human toilets that serve as a silent reminder of the fate that awaits you if you fail... or is that if you succeed?<br>
<br>
Obviously in a hurry <<=setup.getNpcName('npc_manager', 'formal')>> leads you straight to the nearest stall and grabs the funnel gag.<br>
<br>
On your knees and gagged your hands remain free of cuffs as you look up. She hikes up her skirt and unleashes a stream with a sigh of relief.<br>
<br>
Peering between your <<=ps(setup.getNpcName('npc_manager', 'title'))>> legs you watch someone walk in and start using the human toilet across from you. Curiously it appears they swiped their badge first and you faintly hear a mechanical voice announce "payment accepted." You can't help but wonder what your fellow toilet might be earning.
<<else>>
At first you think you have entered a bathroom, recognising the same tiles and sinks as on your own floor. Then you make a realisation — while there are stalls, there are neither toilets nor urinals. Instead each stall has a padded area where a person might kneel, with auto-locking cuffs and a funnel gag hanging from chains on the wall behind.<br>
<br>
You gawk for a moment as a <<man>> you do not recognise walks out of one of the stalls, followed a moment later by a similarly unknown woman wearing a latex skirt and blouse that reminds you of the picture of <<=setup.getNpcName('npc_secretary', 'first')>> that hangs over your desk.<br>
<br>
Licking her lips and not making eye contact, the woman follows demurely behind her boss and you realise that what you had first thought was a choker is actually a pink leather collar, complete with a shiny attachment ring under her chin.<br>
<br>
"@@.generic_male1;Finally breaking her in, eh?@@" The <<man>> asks your manager as <<he>> washes <<his>> hands. You note <<his>> "assistant" uses a dispenser built into the wall to get a breath freshener and swallow it with a note of... regret?<br>
<br>
<<if setup.getTotalValue("piss") >= 10>>
<<printThought "Hmm, I guess it makes sense that you wouldn't want a secretary whose breath tasted like piss, but I can see why she'd be disappointed losing that yummy after-taste.">>
<<else>>
<<printThought "Could she actually... enjoy the taste of <<getWordPiss>>?">>
<</if>>
<br><br>
"@@.npc_manager;We'll see, she made the offer but, well... I didn't want to risk a spill in my office so I brought her up here.@@"<br>
<br>
The <<man>> finishes up and nods. "@@.generic_male1;Sound reasoning, well hopefully it works out and she proves herself a thirsty piss-drinker.@@"<br>
<br>
You catch a final glance at the woman as she follows out the door but her expression is controlled and all but unreadable. Looking back, you hurry to catch up to <<=setup.getNpcName('npc_manager', 'formal')>> who is standing at one of the far stalls tapping her foot impatiently.<br>
<br>
As you make your way across the room, you are surprised to discover you are not alone. The stalls on one side of the room are more "secure" — and a couple of the stalls are occupied — human urinals bound kneeling with their heads tilted up, their arms bound behind their backs. Each is clad in similar latex attire, tight catsuits that leave only their mouth exposed, their eyes protected by built-in goggles, the same secure mountings that hold their heads in place also providing a "lip" to ensure that any splashes flow down between their gag-spread lips.<br>
<br>
Looking at one of the unoccupied stalls, you realise that there is a small seat, complete with a thick phallus that would further keep them "rooted" in place.<br>
<br>
"@@.npc_manager;Quickly, now! You need to show that you can serve me properly before I will even consider sending you up here... unless you prove so inadequate that I decide you should work a shift or two for training.@@"<br>
<br>
<<if setup.getTotalValue("piss") >= 10>>
The offer sounds quite tempting, but you recall your duties and hurry to obey your <<=ps(setup.getNpcName('npc_manager', 'title'))>> instructions.
<<else>>
You hurry to obey, the thought of taking the place of one of the faceless human toilets sending a shudder of fear through your body.
<</if>>
<br><br>
Taking the funnel gag from the wall, she buckles it around your face and motions for you to kneel.<br>
<br>
"@@.npc_manager;Since this is your first time, we will forgo the wrist cuffs, if it becomes too much for you just raise your hand.@@"<br>
<br>
Kneeling down, you look up as she hikes up her skirt and exposes herself with one hand. "@@.npc_manager;Open wide!@@" she jokes before letting out a slow breath and unleashing her stream.
<</if>>
<br><br>
[<<moveTo "event_manager_piss_drinking_3" "Drink up!" 60>>]<br>
<<if setup.getWillpower() >0 && setup.getTotalValue("piss") < 10>>
[<<moveTo "event_manager_piss_drinking_3" "Force yourself to endure it!" 60 "<<spendWillpower 1>><<set $scene.forcedPissDrink = true>>">>]<br>
<<elseif setup.getTotalValue("piss") < 10>>
[@@.link_locked;You do not have the will to force yourself to endure this.@@]<br>
<</if>>
</div>/*#
#desc: you drink manager's piss for the first time
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.piss_drinking.available = true>>
<<setThreshold 'piss' 'manager_piss' 'her_toilet'>>
<<applyExperience 'piss' 13 'very' $SEEN_FRIEND>>
<<set $scene.success = setup.getTotalValue("piss") >= 10>>
<<if $scene.success || $scene.forcedPissDrink>>
<<set $npc_manager.flags.piss_drinking.success += 1>>
<<else>>
<<set $npc_manager.flags.piss_drinking.failures += 1>>
<</if>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> aim is impeccable, the almost clear stream arcing into your gag where it flows across your lips. Like her, it tastes clean, strong, and just a little sweet. In any case the gag funneling it into your mouth gives you a choice of swallow or drown.<br>
<br>
<<if setup.getTotalValue("piss") > 15>>
There's no disguising the blissful expression on your face as you guzzle it down. You're disappointed when her flow stops, holding the final mouthful to swish back and forth with your tongue until her eyes narrow in silent instruction and you reluctantly swallow.
<<elseif $scene.forcedPissDrink>>
It took an act of will to even propose this perverted idea but you've forced yourself follow it to the end, no matter the consequences. For a moment you shudder.<br>
<br>
<<printThought "What am I thinking? My <<=setup.getNpcName('npc_manager','title')>>... her importance and influence on my life is now... undeniable...?">><br>
<br>
You manage gurgle and gulp up every drop of the bitter liquid. She smiles down at you before dabbing herself dry with a bit of paper towel.
<<elseif setup.getTotalValue("piss") >= 10>>
Even with all the piss you've tasted, there's something special about the ambrosic nectar flowing down your throat.
<<elseif setup.getTotalValue("piss") > 5>>
If it took an act of will to propose this perverted idea it is even more of a struggle to carry it through. You sputter and cough, your body rebelling against the disgusting act you are attempting to perform, your only salvation the fact that her bladder appears to have been far from full.
<<else>>
ERROR: this should not be possible!
<</if>>
<br><br>
<<if $scene.success>>
"@@.npc_manager;Well, are you just the cutest <<if $fetish.sissy>>sissy <</if>>urinal there is! Congratulations, from now on I will be coming to you when ever I have the need to drain a pint! Oh, at times like these you really are just a wonderful delight of an employee.@@"<br>
<br>
Rising to your feet as she washes her hands, you remember to grab a breath freshener. The strong minty flavour burns away the final lingering tastes of urine.<br>
<br>
<<if $player.sec_style.submission.human_toilet == "">>
[<<moveTo "event_enthusiast_human_toilet_1" "Please, you want more..." 60>>]<br>
<</if>>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
<<elseif $npc_manager.flags.piss_drinking.failures >= 3>>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head. "@@.npc_manager;Pitiful. I think at this point the failure is partially my own. I had hoped you would rise to the occasion but it appears that you need some added assistance.@@" She removes the gag and hangs it back on the wall before marching you to the far end of the bathroom to what turns out to be a small locker room area.<br>
<br>
[<<moveTo "event_manager_forced_toilet_1" "Continue..." 60>>]
<<else>>
"@@.npc_manager;While I appreciate the sentiment you could not have done much poorer of a job. There is no way I can trust you to do this and not make a mess of my office and if I have to bring you all the way up here... well, that does not save me much time now, does it?@@"<br>
<br>
Rising to your feet as she washes her hands, you remember to grab a breath freshener. The strong minty flavour burns away the final lingering tastes of urine as you ride the elevator back down to the <<if $npc_manager.stage >=4>><<printNumber $player.work.upperFloorNumber>><<else>><<printNumber $player.work.floorNumber>><</if>> floor.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: repeatable drinking managers piss
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.piss_drinking.success += 1>>
<<applyExperience 'piss' 15 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Walking into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, you find her already waiting for you, a towel laid out on the floor next to her desk.<br>
<br>
Kneeling down as indicated, you open your mouth and blink up in invitation as she hikes up her skirt and brings her lower lips to your face.<br>
<br>
Pressing your lips around her snatch, you can't help but give a few licks, forced to suppress a moan at how turned on you are to taste her like this. That is not what you are here for, however, and a moment later she unleashes her stream directly into your mouth.<br>
<br>
/% note: definitionally you can't get here without piss of 10+ %/
<<if setup.getTotalValue("piss") > 15>>
As practiced as you are as a human toilet, not all vintages are the same and few things compare to the pleasure you get drinking your <<=ps(setup.getNpcName('npc_manager', 'title'))>> divine nectar straight from the source.<br>
<br>
Swallowing quickly, your only regret is that you cannot savour things longer, forced to guzzle quickly lest a solitary, precious drop leak past your lips.
<<else>>
Pressing your face close so as not to spill a drop, you use all of your skills to swallow quickly, letting her tasty <<getWordPiss>> flow down your throat.
<</if>>
<br><br>
Her stream trickles off and you give a final swallow before carefully licking her clean lest a single drop remains. Glancing up as you nuzzle her crotch, you swear she's just on the cusp of ordering you to continue "working" down there but her normal control re-asserts itself and she steps back.<br>
<br>
Fixing her skirt, she is once more the picture of control and poise.<br>
<br>
<<if $npc_manager.flags.piss_drinking.success > 3 && $player.sec_style.submission.human_toilet == "">>
"@@.npc_manager;My, my, who knew you were such a skilled urophile? Yet another skill that would languished in the unknown if I had not brought you on board as a <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"<br>
<br>
[<<moveTo "event_manager_piss_drinking_greed_1" "Ask if it would be possible to be paid for this skill?" 60>>]<br>
[<<moveTo "event_manager_piss_drinking_obedient_1" "Ask if it there is any other way you could put your abilities to work on her behalf?" 60>>]<br>
[<<moveTo $scene.workEventReturn "Thank her and return to work." 60 "<<completeWorkEvent>>">>]
<<else>>
"@@.npc_manager;Very good, that was just what I needed. You may return to your other duties, I will let you know if I have need of you again.@@"<br>
<br>
Rising to your feet, you curtsy daintily, heading back to your desk while smacking your lips, enjoying her lingering after-taste.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: refuse to drink manager's piss
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.piss_drinking.failures += 1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.strict = $fetish.piss && setup.getTotalValue("piss") > 0 && $player.sec_style.submission.human_toilet == "" && ($npc_manager.flags.cruel || $npc_manager.anger > 5 + $npc_manager.flags.piss_drinking.failures)>>
<<if !$scene.strict && setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_26') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_26'
26
'event_psychiatrist_session_manager_piss_drinking_refuse'
false
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.strict>>
<<=setup.getNpcName('npc_manager', 'formal')>> storms out of her office, marching directly to her desk where she roughly takes you by the hair.<br>
<br>
She pulls you in firmly as you are helpless to resist against her strength, and a moment later your struggling lips are pressed between her legs... and she is unleashing a
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
delicious
<<else>>
disturbingly tasty
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
bitter
<<else>>
disgusting
<</if>>
<</if>>
across your tongue...<br>
<br>
"@@.npc_manager;Stupid <<if $fetish.sissy>>sissy<<else>>girl<</if>> — you exist to serve, to make my life easier — if that means being my live-in toilet, well... you should be grateful for the opportunity!@@"<br>
<br>
<<if setup.getTotalValue("piss") > 10>>
Sadly
<<else>>
Fortunately
<</if>>
her need was urgent, but not large, and a few moments later your face is pulled free and you sputter as you look up at her in shock.<br>
<br>
"@@.npc_manager;Problem? Hmm... perhaps some additional practice is in order, so you can better understand these new responsibilities.@@"<br>
<br>
Still holding you by the hair she drags you out of the office as you stumble along behind.<br>
<br>
[<<moveTo 'event_manager_forced_toilet_0_strict' "Continue." 300>>]
<<else>>
Several minutes pass before <<=setup.getNpcName('npc_manager', 'formal')>> comes storming out of her office.
<<if $npc_manager.flags.piss_drinking.failures >= 3 || $player.sec_style.submission.human_toilet == "strict">>
"@@.npc_manager;Alright, that will be all. I do not think I am asking so much of you<<if ["strict", "forced"].includes($player.sec_style.submission.human_toilet)>>. With all your disobedience, being my piss-slave is what you deserve<<else>>, and you were the one who proposed this idea in the first place<</if>>! If you are going to be this disobedient however... well I guess you need to see how much worse it can get. Come.@@"<br>
<br>
She turns and starts towards the exit of the office, clearly expecting you to follow.<br>
<br>
[<<moveTo 'event_manager_forced_toilet_beg' "Try to talk your way out of things." 60>>]<br>
[<<moveTo 'event_manager_forced_toilet_1_alt' "Obediently follow." 60>>]
<<else>>
She doesn't even speak a word, merely spearing you with a withering glare that has you trying to fade into your chair in shame as she leaves the office to head to the bathroom.<br>
<br>
<<if $npc_manager.flags.piss_drinking.failures > 1>>
<<printThought "I should be careful, too many more times and she'll probably decide to punish me.">>
<<else>>
<<printThought "Maybe I shouldn't disobey her like this...">>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
<</if>>
<</if>>
</div>/*#
#desc: beg not to work in the Executive Bathroom for refusing to drink her pee
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You frantically apologise and beg if there's anything else you can do and she stops, remaining still until you fall silent before slowly turning back to face you.<br>
<br>
"@@.npc_manager;You really are quite disobedient today. I do not like it. No, I do not like it at all. If you are going to refuse this training however well... we will have to make use of you in some other way. Come.@@"<br>
<br>
She turns back towards her inner office. This time you follow without further objection.<br>
<br>
[<<moveTo "event_manager_forced_toilet_punishment_1" "Follow." 60>>]
</div>/*#
#desc: punished for refusing to drink her pee and not working Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_FRIEND>>
<<set _analSkill = setup.getTotalValue("anal")+1>>
<<applyExperience 'anal' _analSkill 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 9 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Motioning for you to stand next to her desk, she opens a drawer and withdraws a pile of restraints as well as the oh-so-familiar pink paddle.<br>
<br>
With wordless efficiency, she cuffs your wrists behind your back, following up by strapping your elbows together and pulling until you fear your shoulders are about to pop.<br>
<br>
You open your mouth to beg for mercy but she is ready, cramming a gag past your lips and then strapping it tight around your face. A tube and inflation bulb extends from the front of the gag and she meets your fearful gaze and begins squeezing, inflating the gag until your cheeks swell like a chipmunk and your jaw is stretched to the limit.<br>
<br>
"@@.npc_manager;See? There are worse things that can happen to your mouth than just having to drink a little urine, hmm?@@"<br>
<br>
Your jaw already crying out in pain, you quickly nod but her gaze only hardens. "@@.npc_manager;Oh, we're still not done — being a pain in my ass means a pain in yours. Bend over.@@"<br>
<br>
You catch a glimpse of another inflatable item and, just as you anticipated it
<<if setup.checkItemTypeWorn("plug")>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
slides through the hollow core of your plug, "plugging" you properly even as you feel your orifice gaping further.
<<else>>
swiftly replaces the <<=setup.getItemTypeName("plug")>> previously occupying your rear.
<</if>>
<<else>>
is soon stuffed into your bum.
<</if>>
<br><br>
Initially of modest size, she starts squeezing and soon your ass feels ready to explode. You would swear it was the size of a bowling ball by the time it stops growing but all she does is bend you over and grab the paddle.<br>
<br>
*SMACK*<br>
<br>
Your howl of pain is almost completely stifled by your massive gag, the impact somehow echoing through your inflated plug.<br>
<br>
*SMACK*<br>
*SMACK*<br>
*SMACK*<br>
*SMACK*<br>
<br>
She does not say a word, her unspoken disappointment somehow even worse than the normal cruel summary of your failures.<br>
<br>
<<if $player.body_ref.balls && setup.checkItemTypeWorn("cage") && setup.isCage()>>
Your ass red, spread and pained she gives your tender flesh a nice claw for good measure before reaching below to take hold of your tender testicles.<br>
<br>
Safely locked in your cage that only leaves your testicles more exposed. She wraps something cold and metal just above your balls, a heavy weight pulling painfully down until you are in a half-squat, the chain dangling from your testicles resting on the ground to give you some minor relief.<br>
<br>
<</if>>
Unfortunately for your tender body, she is still not done, exposing your nipples and tightly closing a savage clamp onto each one. Looping a thin line over a hook on the ceiling she attaches
<<if $player.body_ref.balls && setup.checkItemTypeWorn("cage") && setup.isCage()>>
a weight, adjusting things so that you have a choice: either you squat low to relieve your stretched testicles and let your poor nipples bear the strain, or you stand up, relieving your nipples slightly but causing your testicles to be pulled hard.
<<else>>
a spring attached to a weight to each nipple, sending them to bounce painfully.
<</if>>
<br>
<br>
"@@.npc_manager;There, now I am going to take the nice, leisurely nature break that you were supposed to deal with and we'll see if maybe you've learned your lesson by the time I return.@@"<br>
<br>
Quivering and whimpering, every motion sends fresh sparks of pain through your body, your thighs already aching to match your overt-stretched jaw and ass as your nipples cry out in stereo.<br>
<br>
[<<moveTo "event_manager_forced_toilet_punishment_2" "Endure." 600>>]
</div>/*#
#desc: predicament bondage punishment for not drinking her pee/spending time in Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemTypeWorn("cage") && setup.isCage() && $player.body_ref.balls>>
Panting through your nose, you try to shift from foot to foot. Your thighs are already starting to cramp from the deep squat but you are horrified at the thought of the standing and feeling the full weight of the stretcher on your poor testicles.
<<else>>
Panting through your nose, you try to remain still but it seems all but impossible to keep the springing weight from tugging painfully on your nipples.
<</if>>
<br><br>
You start to sway, feeling your legs about to give out and you momentarily consider just falling down.<br>
<br>
<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<printThought "Maybe if I rubbed against the ground I might be able to dislodge things?">>
<<else>>
<<printThought "The nipple clamps aren't THAT tight, they might just pop off?... or they might rip my nipples off with them...">>
<</if>>
<br><br>
Too afraid to risk it, you try to bite down on the massive gag spreading your jaws and rise to your feet.<br>
<br>
The movement of your glutes further focuses the spread, stretched and gaping sensation caused by the voluminous plug spreading your ass but you manage to push through it<<if setup.checkItemTypeWorn("cage") && setup.isCage() && $player.body_ref.balls>>, wincing in pain as your testicles bear the full weight of the stretcher and chains<</if>>.<br>
<br>
<<if setup.checkItemTypeWorn("cage") && setup.isCage() && $player.body_ref.balls>>
The minor relief of no longer feeling like your nipples are about to be pulled off is hardly worth the trade but you try to endure for as long as you can before you are eventually forced to slowly lower to lesson the pull on your tender balls.<br>
<br>
Rising the second time is even worse, your legs trembling and almost giving out at the strain. The inevitability and totality of your pain plunging you into despair.
<<else>>
Each shift sends the nipple clamps bouncing anew, your body never growing accustomed to the pain.
<</if>>
<br><br>
<<printThought "When is she coming back?">><br>
<br>
You have no way of knowing, no clock in sight and the constant pain making minutes feel like hours. Swaying slightly only makes it worse, the weights attached to your <<if setup.checkItemTypeWorn("cage") && setup.isCage() && $player.body_ref.balls>>balls and <</if>>nips penduluming back and forth, diversifying their torment.<br>
<br>
Starting to make another descent, your left leg gives out, your eyes go almost as wide as your inflated holes only to be caught in a strong, feminine grasp.<br>
<br>
"@@.npc_manager;Shhh, I've got you.@@" she whispers, holding you vertical while relieving the weight from your nipples. Guiding you forward she bends you over the desk, your side-turned face looking directly at the ominous pink paddle.<br>
<br>
You pant as she relieves the pressure in your rear, the air escaping from your plug in a long, whistling howl.<br>
<br>
"@@.npc_manager;Well, have we learned our lesson, my naughty little <<if $fetish.sissy>>sissy<<else>>girl<</if>>?@@"<br>
<br>
You nod and whimper through the gag, your swelled cheek scraping the desktop as you stare constantly at the paddle.<br>
<br>
Holding the plug in place with one hand, she shifts it slightly, the solid core of the shrunken, deflated plug stirring up your insides as they slowly recover from their prior gape.<br>
<br>
"@@.npc_manager;Hmm, you know, I WANT to believe you but, well... in times like these <<if $fetish.sissy>>sissies<<else>>girls<</if>> are known to agree to anything just to get out of the predicament their behaviour cursed them with. Of course that just sets them up for future failure but... well... I guess long-term planning is hard when you've got <<if setup.checkItemTypeWorn("cage") && setup.isCage() && $player.body_ref.balls>>five kilos dangling from your poor <<if $fetish.sissy>>sissy<<else>>cute<</if>>jewels<<else>>half a kilo each dangling from your nipples<</if>>.@@"<br>
<br>
You whimper through the gag, desperately wishing for a way to prove your sincerity.<br>
<br>
As if anticipating your words, she leans over to land a gentle peck on your cheek, that momentary kindness balanced out by the fact that she picks up the pink paddle once again.<br>
<br>
"@@.npc_manager;Alright, <<if $fetish.sissy>>sissy<<else>>girl<</if>>. I am going to give you an opportunity to REALLY prove things to me.@@" She presses a bulb into one of your hands before stepping around behind you.<br>
<br>
"@@.npc_manager;That is connected to the presently sadly small device in your bum. Each time you squeeze it, well... you are a clever girl I am sure you can guess. Anyway, here is how it is going to work. I am going to spank you — one spank for each squeeze I gave you in the first place. Since I doubt YOU were counting you will just have to go off size — if you manage to keep pace and willingly return yourself to that delightfully full state... well, then I might believe that your reform is honest and that you are ready to obey me going forward. Fail and I will release you from your binds, but we will both know full well your... lacking qualities.@@"<br>
<br>
You whimper through the gag but it does not seem you have a choice as she steps back and lands the first loud *SMACK* of the paddle on your exposed rear.<br>
<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Squeeze." 60 "<<set $scene.squeeze = 1>><<set $scene.spanks=1>>">>]<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Don't squeeze." 60 "<<set $scene.squeeze = 0>><<set $scene.spanks=1>>">>]
</div>/*#
#desc: squeeze-along punishment for refusing to drink manager's pee or work in toilets
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 12 'insignificant' $SEEN_FRIEND>>
<<if $scene.squeeze>>
<<set _analXp = 5+2*$scene.squeeze>>
<<set _submissionXp = 10+$scene.squeeze>>
<<applyExperience 'anal' _analXp 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'submission' _submissionXp 'insignificant' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.spanks > 5>>
You brace yourself for another blow, but it does not land...<br>
<br>
[<<moveTo "event_manager_forced_toilet_punishment_4" "Continue." 1>>]
<<else>>
<<switch $scene.squeeze>>
<<case 0>>
Recalling how you felt about ready to burst you are too petrified to squeeze the bulb, but that does not seem to deter <<=setup.getNpcName('npc_manager', 'formal')>>. She rains down a series of blows in succession, carpet paddling your entire ass.<br>
<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Frantically squeeze to catch up." 30 "<<set $scene.squeeze += 1>><<set $scene.spanks+=1>>">>]<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Don't squeeze." 30 "<<set $scene.spanks+=1>>">>]
<<case 1>>
The plug slightly swells in your rear, your sore, stretched ass barely able to discern the difference from its initial state.<br>
<br>
The paddle impacts your ass again as you realise that you have many, many more blows to endure if you are going to reach the gargantuan scale you remember.<br>
<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Squeeze." 30 "<<set $scene.squeeze += 1>><<set $scene.spanks+=1>>">>]<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Don't squeeze." 30 "<<set $scene.spanks+=1>>">>]
<<case 2>>
The plug has grown to a modest size — thicker than most mortal cocks, technically but it is not a thing of flesh, but a rubbery parasite, spreading to fill every millimetre of you until you must gape to accommodate it, your body reshaped to match its will, a will currently controlled by the seemingly innocuous bulb clutched in your hand...<br>
<br>
The paddle lands again, the loud *SMACK* echoing through the office.<br>
<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Squeeze." 30 "<<set $scene.squeeze += 1>><<set $scene.spanks+=1>>">>]<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Don't squeeze." 30 "<<set $scene.spanks+=1>>">>]
<<case 3>>
The plug is large now, the stretching from within starting to approach the pain of the blows from without. Blows that continue to rain inexorably down.<br>
<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Squeeze." 30 "<<set $scene.squeeze += 1>><<set $scene.spanks+=1>>">>]<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Don't squeeze." 30 "<<set $scene.spanks+=1>>">>]
<<case 4>>
You are getting close. Each squeeze now causes the swelled plug to grow only slightly, the pressure within your rear surely immense, strange feelings bouncing inside you as each blow of the paddle echoes in the gaping cavity within your rear.<br>
<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Squeeze." 30 "<<set $scene.squeeze += 1>><<set $scene.spanks+=1>>">>]<br>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Don't squeeze." 30 "<<set $scene.spanks+=1>>">>]
<<case 5>>
You are certain the plug is as big as it has ever been, your entire body trembling as you fear that a single additional squeeze will cause you to pop like a balloon.<br>
<br>
There is a pause... could it be over? Your entire body tenses, keen for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> next move.<br>
<br>
Another blow lands, the hardest yet, enough force to shove you forward against the desk<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>, your dangling testicle-weights banging against the stout wood<<else>>your tender nipples scraping painfully against the desk<</if>>.<br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Squeeze." 30 "<<set $scene.squeeze += 1>><<set $scene.spanks+=1>><<spendWillpower 1>>">>] <<hint $options "It will take an act of will to force your hand to close around the inflation bulb once again.">><br>
<<else>>
[@@.link_locked;You don't the willpower left to bring yourself to squeeze the plug again.@@]
<</if>>
[<<moveTo "event_manager_forced_toilet_punishment_3" "Don't squeeze." 30 "<<set $scene.spanks+=1>>">>]
<<default>>
ERROR, scene.squeeze should not be <<=$scene.squeeze>>
<</switch>>
<</if>>
</div>/*#
#desc: finish punishment for refusing to drink manager's pee or work in toilets
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.squeeze>>
<<case 0 1 2>>
<<if $npc_manager.flags.piss_drinking.punish < 1>>
<<set $npc_manager.flags.piss_drinking.punish = 1>>
<</if>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_27'
5
'event_psychiatrist_session_manager_piss_drinking_punishment_bad'
false
>>
<<case 3 4 5>>
<<if $npc_manager.flags.piss_drinking.punish < 2>>
<<set $npc_manager.flags.piss_drinking.punish = 2>>
<</if>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_28'
6
'event_psychiatrist_session_manager_piss_drinking_punishment_good'
false
>>
<<case 6>>
<<if $npc_manager.flags.piss_drinking.punish < 3>>
<<set $npc_manager.flags.piss_drinking.punish = 3>>
<</if>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<<set $player.willpower.bonus += 1>>
<<addPopUpText "will" "Your maximum willpower increases.">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_29'
7
'event_psychiatrist_session_manager_piss_drinking_punishment_perfect'
false
>>
<<default>>
ERROR, scene.squeeze should not be <<=$scene.squeeze>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tremble, tears streaming down your face, tracing your gag-stretched lips, your eyes squeezed shut as you fearfully anticipate another blow of the paddle.<br>
<br>
It never arrives. Instead you feel a relief<<if setup.checkItemTypeWorn("cage") && setup.isCage() && $player.body_ref.balls>>, the weights no longer pulling on your tender testicles as she removes the stretcher and... did she kiss your balls?<<else>> a hand gently caressing your tender bottom and... was that a light kiss?<</if>> Your mind is too overloaded, your body to wracked with pain to be certain...<br>
<br>
Rolling you onto your back, she unclamps your nipples, blood rushing back to cause them to light up with fresh agony but she rolls them gently between her fingers, massaging life back into the sore nubs.<br>
<br>
Finally, she reaches between your legs.
<<switch $scene.squeeze>>
<<case 0>>
The still-deflated plug slides out of your rear and she frowns in annoyance.<br>
<br>
"@@.npc_manager;Pathetic. A total failure to even attempt to obey instructions. I am half tempted to shove this back in, pump it full and then send you back to work like that for the rest of the day, but you hardly even deserve that much of my time. Besides, if you keep up like this you'll be selling that <<if $fetish.sissy>>sissy<<else>>slutty<</if>> ass on the street and it would be cruel to leave you with nothing to offer but a worthless, gaping crater.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>Unceremoniously she shoves the <<=setup.getItemTypeName('plug')>> back into your ass instead. <</if>>
Pulling your clothes back over your rear and yanking you up to your feet she uncuffs your wrists and deflates your gag.<br>
<br>
"@@.npc_manager;Get out of my sight, if I have to look upon your pathetic, disobedient face for another moment I might just fire you on the spot.@@"<br>
<br>
Hurriedly returning to your desk, you wince as you sit down — though your hole may have gotten a reprieve the rest of your ass will be tender for days thanks to the hard, prolonged spanking.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your work." 60 "<<completeWorkEvent>>">>]
<<case 1 2>>
The plug lets out a short gasp before returning to its shrunken, deflated state. Sliding it out of your hole she frowns in disappointment.<br>
<br>
"@@.npc_manager;I suppose you deserve credit for trying a little but really... this is hardly an effort. It is quite clear that you are sorely lacking in devotion and I will have to consider that quite seriously when it comes to your employment going forward.@@"<br>
<br>
Her words land harder than any blow of the paddle but you remain silent as she <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>replaces the <<=setup.getItemTypeName('plug')>> in your ass and <</if>>removes your cuffs before pulling you up to your feet.<br>
<br>
Straightening your clothes dismissively, she finally lets the air out of your gag with a whistling howl. Unstrapping the gag and removing it from your sore mouth, she stares into your eyes until you look away, her narrowed gaze silencing you almost as effectively as the gag itself.<br>
<br>
"@@.npc_manager;Go back to your desk, and know that I am VERY disappointed in you. You should spend some time thinking because you will need to work hard and sacrifice much if you wish to return to my good graces.@@"<br>
<br>
You nod silently and she dismisses you with a wave to return to your desk.<br>
<br>
You sit tenderly on your red bottom and try to distract yourself with work.<br>
<br>
[<<moveTo $scene.workEventReturn "Work." 60 "<<completeWorkEvent>>">>]
<<case 3 4>>
The plug whistles merrily for several seconds before slipping out of your hole.<br>
<br>
"@@.npc_manager;Hmm, just better than totally pathetic, I suppose. Enough for me to believe that you are still trying but, well... you still have quite a bit of work ahead of you to earn the title of Obedient <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
Quickly, but not cruelly, she <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>slides the <<=setup.getItemTypeName('plug')>> back into your ass, <</if>>removes your cuffs and guides you to your feet before deflating and removing your gag.<br>
<br>
You work your sore, stretched jaw until she brings a hand up to gently cradle your cheek.<br>
<br>
"@@.npc_manager;Know that I do not dispense these cruelties purposelessly. I know that you have the potential to be so much more than you are, but only with proper guidance and behaviour such as today... you have to understand that it must be swiftly, and brutally, stomped out or you will never become the glorious <<if $fetish.sissy>>SISSI <</if>>Secretary I desire.@@"<br>
<br>
You blush slightly at her words before dropping into a curtsy as she dismisses you to return to your desk.<br>
<br>
You sit tenderly on your red bottom and try to distract yourself with work.<br>
<br>
[<<moveTo $scene.workEventReturn "Work." 60 "<<completeWorkEvent>>">>]
<<case 5>>
Whistling softly, the plug slowly shrinks until you barely feel it slide out, your ass an empty void without its presence.<br>
<br>
"@@.npc_manager;So close...@@" She whispers, reaching a hand up to tenderly stroke your face. She continues to talk as she goes about removing your cuffs <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>and gently slides the <<=setup.getItemTypeName('plug')>> back into your ass<</if>>. "@@.npc_manager;Though you fell just short of perfection, you managed to impress me today. While I am still disappointed in your earlier disobedience, I believe that you have learned from it, and will be all the better in the future.@@"<br>
<br>
Deflating and removing your gag she graces you with a smile.<br>
<br>
"@@.npc_manager;Now, get back to work. And do not prove me wrong.@@"<br>
<br>
Not speaking a word you curtsy in thanks and scurry back to your desk.<br>
<br>
You sit tenderly on your red bottom and try to distract yourself with work.<br>
<br>
[<<moveTo $scene.workEventReturn "Work." 60 "<<completeWorkEvent>>">>]
<<case 6>>
Looking down at you with a soft smile, she reaches for your face with one hand while the other releases the air from your plug, the massive balloon shrinking with a steady, gentle hiss as she softly strokes your cheek.<br>
<br>
"@@.npc_manager;Good girl,@@" she whispers, "@@.npc_manager;I think you quite made up for your earlier... failure. That last squeeze? That was one more than I gave you but you pushed right through, my sweet, obedient <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"<br>
<br>
You blush at the compliment, letting out a gag-muffled gasp as she finally withdraws the shrunken plug out of your tired rear. <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>Still smiling she slips the <<=setup.getItemTypeName('plug')>> back into your ass. <</if>>"@@.npc_manager;There we go, let us get you back to your feet, okay?@@"<br>
<br>
As if you weighed but a feather, she lifts you up, removing your cuffs and then reaching behind your head to unbuckle your gag. Deflating it as well she slides it past your lips then leans in for the gentlest of kisses.<br>
<br>
"@@.pc;Thank you, <<=ps(setup.getNpcName('npc_manager', 'formal'))>>@@" you whisper.<br>
<br>
"@@.npc_manager;Oh?@@" she replies with a curiously cocked eyebrow. "@@.npc_manager;And what are you thanking me for?@@"<br>
<br>
Softly you explain your appreciation for her having shown you the way; that your behaviour had been disobedient and bad, but that she corrected me, just like she always does. Lip quivering you explain that you have come so far thanks to her help and that you want her to know how grateful you are. Your voice trails off as you are suddenly embarrassed by the intensity of your feelings, quickly looking away so as not to stare into her beautiful green eyes.<br>
<br>
She almost seems at a loss for words. Almost. Instead she speaks through action, using a finger under your chin to turn you back to face her. "@@.npc_manager;Thank you. I know I can be a bit harsh, at times, but it makes me very proud to know that you understand that it is all for your own good... I think you have done more than enough for today. How about you head back to your desk and take it easy?@@"<br>
<br>
You nod as she fixes your clothing, dropping into a deep curtsy before hurrying back to your desk.<br>
<br>
You are still so caught up with emotions that you plop down heavy, barely suppressing a yelp of pain as you are reminded of how sore and red your rear still is. Gingerly shifting in your seat to get as comfortable as you can you sit a little taller and prouder as you turn to your computer.<br>
<br>
[<<moveTo $scene.workEventReturn "Work." 60 "<<completeWorkEvent>>">>]
<<default>>
ERROR, scene.squeeze should not be <<=$scene.squeeze>>
<</switch>>
</div>/*#
#desc: enthusiast beg to be human toilet
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your mouth is still awash with the bitter taste of <<getWordPiss>> as you look up at <<=setup.getNpcName("npc_manager","formal")>> and say you want "@@.pc;more...@@"<br>
<br>
"@@.npc_manager;More?@@" <<=setup.getNpcName("npc_manager","formal")>> asks with a note of surprise. "@@.npc_manager;Is my gift insufficient? Are you such a gluttonous piss-slut you require more?@@"<br>
<br>
You shudder in submissive humiliation. You've just willingly drank her piss... are you really so depraved as to desire more?<br>
<br>
[<<moveTo "event_enthusiast_human_toilet_2" "You want more..." 600 "<<set $scene.pee=true>>">>]<br>
[<<moveTo "event_enthusiast_human_toilet_2" "Think better of this and return to your desk." 60 "<<set $scene.pee=false>>">>]
</div>/*#
#desc: enthusiast beg to be human toilet
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pee>>
<<set $player.sec_style.submission.human_toilet = 'enthusiast'>>
<</if>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.pee>>
There is a slight tremble in your voice as you reply that yes, you are still thirsty to be more than just <<=ps(setup.getNpcName("npc_manager","formal"))>> personal urinal.<br>
<br>
You remain on your knees as <<=setup.getNpcName("npc_manager","formal")>> looks down at you for a long moment, fear growing in your stomach as you wonder if you have, perhaps, offended her...<br>
<br>
"@@.npc_manager;Very well,@@" she finally replies, a wave of relief falling over you... only to be supplanted by the depraved re-enforcement of what you've just asked for... "@@.npc_manager;The company can certainly find a use for another enthusiastic piss-slut. Come, I will show you to your new station.@@"<br>
<br>
<<printThought "Wait, did I just volunteer to change jobs?">><br>
<br>
As if reading your mind <<=setup.getNpcName("npc_manager","formal")>> pauses at the doorway to look back at you as you scramble to your feet. "@@.npc_manager;Do not think this will supplant your normal duties — instead consider it an additional task you may attend to on behalf of the company, when your responsibilities to me have been fully dealt with.@@"<br>
<br>
You nod and hurry after her as she leads you to the elevator...
<<else>>
A few extra seconds is enough for your head to clear and the depravity of what you've done, and nearly proposed to bubble up past lusty distraction.<br>
<br>
You nervously apologise for any possible offense and hurry out of <<=ps(setup.getNpcName("npc_manager","formal"))>> inner office as she watches on with quiet amusement.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager takes you to Executive Bathroom for a forced shift
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "catsuit_toilet">>
<<wearItem "catsuit_toilet" true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.work_exec_bathroom.times_worked > 0>>
Once again <<=setup.getNpcName('npc_manager', 'formal')>> leads you to the 83rd floor Executive Bathroom, going straight to the locker room in the back and ordering you to get changed into the latex catsuit.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> leads you to the 83rd floor Executive Bathroom, going straight to the locker room in the back and ordering you to get changed into the latex catsuit.
<</if>>
<br><br>
Spirit broken, you meekly obey, changing into the slick, tight, dehumanising outfit as she stows your "normal" clothes in a locker.<br>
<br>
Though it has integrated sleeves and gloves, the catsuit is designed such that your arms are stuck behind your back in a box-tie configuration, leaving you completely helpless as your manager finishes zipping you closed.<br>
<br>
In addition to the hole for your mouth, you find that the hood of the catsuit packs small nubs that allow you to breathe through your nose, as well as a slit that runs between your legs, exposing your front and rear. <<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>Reaching behind, your back she extracts the <<=setup.getItemName($scene.plug)>> from your rear with little ceremony, wiping it clean and putting it with your other things in the locker.<</if>><br>
<br>
In an obvious hurry, she leads you back out into the bathroom proper and indicates you should sit on the low, dildo-accessorise seat in an empty stall.<br>
<br>
[<<moveTo "event_manager_forced_toilet_2" "Take your seat." 60 "<<set $scene.manager_piss=true>>">>]
</div>/*#
#desc: after refusing manager she forces you to work strict
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.strictPiss = true>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
The elevator ride passes swiftly to bring you to the 83rd floor. Still dragging you behind <<=setup.getNpcName('npc_manager', 'formal')>> takes you through a door marked "Executive Bathroom" — passing through a sterile bathroom... with kneeling, latex-clad figures lining one wall as human urinals.<br>
<br>
Not so much as pausing for you to get a closer look <<=setup.getNpcName('npc_manager', 'formal')>> only releases her hold to push you into a changing area in the back of the room.<br>
<br>
[<<moveTo 'event_manager_forced_toilet_1' "Continue." 300>>]
</div>/*#
#desc: manager has you dress for a forced shift as a toilet in the Executive Bathroom after you fail to effectively drink her piss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "catsuit_toilet">>
<<wearItem "catsuit_toilet" true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Efficiently <<=setup.getNpcName("npc_manager","formal")>> has you strip naked, passing you a latex catsuit.<br>
<br>
Pre-lubricated, it slips easily over your skin, holding you tight and covering every millimetre of your body save your mouth — spread wide by an integrated ring-gag, and a slit running through your crotch to expose you fore and aft.<br>
<br>
Your arms — though gloved, are held in a box-tie configuration at the small of your back, leaving you helpless<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>> as she extracts the <<=setup.getItemName($scene.plug)>> from your rear with little ceremony, wiping it clean and putting it with your other things in the locker<</if>>.<br>
<br>
Closing up your locker, she marches you back into the bathroom, leading you to one of the empty stalls and motioning for you to sit down on the low dildo-accessorise seat.<br>
<br>
[<<moveTo "event_manager_forced_toilet_2" "Take your seat." 60 "<<set $scene.manager_piss=false>>">>]
</div>/*#
#desc: manager has you work a shift as a toilet in the Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_30'
4
'event_psychiatrist_session_forced_toilet_1'
false
>>
<<if $player.sec_style.submission.human_toilet == "">>
<<if $scene.strictPiss>>
<<set $player.sec_style.submission.human_toilet = 'strict'>>
<<else>>
<<set $player.sec_style.submission.human_toilet = 'forced'>>
<</if>>
<</if>>
<<set $npc_manager.flags.piss_drinking.available = true>>
<<setThreshold 'piss' 'manager_piss' 'forced_toilet'>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
The lubricated dildo sprouting up from the platform slides into your rear
<<if setup.getTotalValue("anal") >= 15>>
it being of merely average size, you enjoy the penetration, even if you would prefer something a bit larger.
<<elseif setup.getTotalValue("anal") >= 10>>
your practiced hole easily relaxes to take the full length of the dildo up your ass.
<<elseif setup.getTotalValue("anal") >= 5>>
the dildo is a bit larger than you're comfortable with but you manage to relax sufficient to fully seat it.
<<else>>
just the tip has you breathing quickly as you are spread wide but <<=setup.getNpcName('npc_manager', 'formal')>> shows no sympathy, pushing on your shoulders to force you down until its massiveness is fully filling your rear.
<</if>>
<br><br>
Straps around your hips, waist and legs keep you from rising off the low stool, your <<getWordMyPenis>> completely encased within the skintight front panel of the harness.<br>
<br>
Swinging a final item into position, your throat is restrained to tilting your head to look slightly up, your vision constrained by a funnelesque halo of plastic that routes anything that drips into your face down towards your gag-spread mouth. Integrated earmuffs cover your ears, the next sounds you hear the slightly mechanic voice of your manager relayed through internal speakers.<br>
<br>
<<if $scene.manager_piss>>
"@@.npc_manager;Open wide!@@" She jokes, as if you had any choice as she straddles your face and unleashes her flow.<br>
<br>
Though you can breathe through your nose, it still feels a bit like drowning as you have no choice but to gulp down her <<getWordPiss>>.<br>
<br>
You try to catch your breath as she steps away only for a second person to come into view.
<<else>>
She double checks your bonds and then turns, calling out to someone out of your line of sight.
<</if>>
<br><br>
"@@.npc_manager;Here, use this one, my treat — she needs the practice.@@" She instructs, guiding the <<man>> over in front of you as <<he>> unzips <<his>> pants.<br>
<br>
[<<moveTo "event_manager_forced_toilet_3" "Continue." 60>>]
</div>/*#
#desc: manager forces you to be a toilet in the Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_exec_bathroom.times_worked += 1>>
<<applyExperience 'piss' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' 12 'little' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You have no choice but to stare up at the <<man>> as <<his>> thick cock sprays out a golden payload over your face.<br>
<br>
Though <<his>> stream wanders, <<he>> seems to delight in spraying your face and, though your eyes are protected by goggles built into your latex mask, you can't help but wince and blink even as the yellow liquid flows down and into your open mouth.<br>
<br>
<<His>> piss is strong and bitter, burning slightly as it flows over your tongue and down your throat.
<<if setup.getTotalValue("piss") > 15>>
You savour it like a fine scotch, your tongue whirling about to taste every drop.
<<elseif setup.getTotalValue("piss") >= 10>>
You enjoy the strong flavour, swallowing it easily and eagerly.
<<else>>
You try to cough, to close your mouth, but the gag makes it impossible, your bondage making it so you cannot even turn away and so... you drink, trying to ignore the flavour as you gulp it down.
<</if>>
<br><br>
"@@.generic_male1;May I?@@" The <<man>> asks your manager cryptically after <<he>> finishes shaking the final few drops onto your face.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods and <<he>> reaches past you to tap an unseen button on the wall behind you.<br>
<br>
Instantly the dildo rooted in your rear comes alive, thrusting in and out of your ass.<br>
<br>
<<if setup.getTotalValue("anal") >= 15>>
You moan in delight.
<<if setup.getTotalValue("piss") > 15>>
Clearly whoever invented this contraption was a genius, getting fucked while you drink <<getWordPiss>>, two of your favourite things, combined!
<<elseif setup.getTotalValue("piss") >= 10>>
You love getting ass-fucked even more than you like drinking piss but combined is even better.
<<else>>
Getting fucked like this almost makes up for the disgusting thing you had to drink to earn it.
<</if>>
<<elseif setup.getTotalValue("anal") >= 10>>
You purr in satisfaction,
<<if setup.getTotalValue("piss") > 15>>
as yummy as <<his>> <<getWordPiss>> was getting fucked in reward is like a nice cherry on top.
<<elseif setup.getTotalValue("piss") >= 10>>
the taste of <<his>> <<getWordPiss>> lingering on your tongue you can't decide which you like better, drinking piss, or getting ass-fucked — fortunately today you got both!
<<else>>
trying to ignore the acrid taste of <<getWordPiss>> lingering in your mouth in favour of the pleasure pulsing through your <<if $player.body_ref.penis>>prostate<<else>>bottom<</if>>.
<</if>>
<<elseif setup.getTotalValue("anal") >= 5>>
The dildo is a still a bit large for you, but you are rapidly becoming acclimated to it with each smooth thrust.
<<if setup.getTotalValue("piss") > 15>>
You wonder if that is part of the plan, use paired association to leverage your love of <<getWordPiss>> into an enjoyment of getting ass-fucked.
<<elseif setup.getTotalValue("piss") >= 10>>
You try to relax, focusing on the lingering flavour of <<getWordPiss>> on your tongue as your ass is ravaged.
<<else>>
<<printThought "Is this what my life has come to? Drinking piss and being fucked by a machine?">>
<</if>>
<<else>>
You cry out in despair, each thrust feeling like it could split you in twain.
<<if setup.getTotalValue("piss") > 15>>
You try to take solace in the lingering flavour of delicious <<getWordPiss>> as your ass begs for mercy.
<<elseif setup.getTotalValue("piss") >= 10>>
As much as you enjoyed your drink you wonder if it is worth it if this brutality is to be your "reward."
<<else>>
Could there be a more evil device than this? Forcing you to endure humiliation and depravity at both ends!
<</if>>
<</if>>
<br><br>
A wide grin on <<his>> face the <<man>> mimes patting you on the head. "@@.generic_male1;Oh, I do so love rewarding them at the end! Until next time, cutie!@@"<br>
<br>
<<He>> walks off to wash <<his>> hands as your manager leans down to press a device into one of your hands.<br>
<br>
The dildo sliding in your ass comes to a stop as your manager speaks.<br>
<br>
"@@.npc_manager;Alright, here is the drill — I am going to leave you to enjoy yourself for the rest of the day, maybe then you will learn your lesson... or learn to love this sort of thing, either way. A couple things to be aware of — unless someone is currently using you your headphones will play white noise — for the privacy of others, you see.@@"<br>
<br>
As she speaks, there's a sudden trickle across your face, a strangely complexly flavoured stream of <<getWordPiss>> flowing down over your cheeks and into your mouth.<br>
<br>
"@@.npc_manager;Ah, I was hoping that would happen — whenever you or any of the other "working" toilets piss, or cum, it is pumped out and parceled out between you, recycling! In addition, if you ever find yourself feeling thirsty, just squeeze that controller I placed in your hand. It will give you a nice drink of fresh piss sourced from elsewhere in the building. That's right, you could be drinking another employees urine and they would never even know...@@"<br>
<br>
"@@.npc_manager;As to your "back door" your client can reward you with a bit of stimulation, they can also punish you — in the form of a nice urine enema. Other than that... you should not have to worry about a thing, the system will monitor your vitals and pump some extra nutrients into your butt if your blood sugar gets a bit low. With practice it is easily possible to work a fourteen hour shift in here... though for your sake I hope you are not quite THAT slow of a learner.@@"<br>
<br>
Flashing a smile, she reaches over to press a button behind you. Your eyes go wide as you feel a rush of liquid — <<getWordPiss>>, you now know flood into your ass.<br>
<br>
"@@.npc_manager;Only fair — this is supposed to be a punishment, as well as a learning experience. Ta-ta, I will be back to let you out at the end of the day.@@"<br>
<br>
She walks away, all sound fading out only to be replaced by white noise... specifically, the gentle sound of flowing water...<br>
<br>
<<printThought "Of course it'd be this... I wonder how long until I piss myself?">><br>
<br>
Just as you start to cramp from the <<getWordPiss>> enema the flow stops, a minute passing in discomfort before things reverse and it rushes out of your rear, leaving behind just the thick dildo.<br>
<br>
Immobile, impaled and with the taste of <<getWordPiss>> still heavy on your tongue you can do nothing but wait.<br>
<br>
[<<moveTo "event_manager_forced_toilet_4" '"Enjoy" your new job...' 60>>]
</div>/*#
#desc: work your forced shift as a toilet in the Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_exec_bathroom.times_worked += 1>>
<<applyExperience 'piss' 10 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 8 'little' $SEEN_STRANGER>>
<<applyExperience 'bondage' 15 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'normal' $SEEN_STRANGER>>
<<applyFatigue 50>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
As humiliating and depraved as your position is, before long the main thing that occupies you is boredom.<br>
<br>
<<if setup.getTotalValue("piss") >= 10>>
You perk up with excitement whenever a potential "client" comes into view but gagged and bound, you don't even have a way to attract their attention.
<<else>>
After a while you're almost looking forward to your next "client," just to break the monotony.
<</if>>
Eventually your brain starts to turn off. Clients come past, you drink their piss, or, occasionally, cum, interspersed with the occasional "bonus" that is the cocktail of your fellow human toilets. You frequently taste a bit of salty cum accenting the bitter recycled mixture, <<if setup.getTotalValue("piss") >= 10>>it seems you are not the only one turned on by this depraved situation.<<else>>your mind boggles that someone could get off on such disgusting treatment.<</if>> After an hour or so of the torturous flowing "white noise" you are unable to hold back and you contribute your own "offering" to the communal pool, rewarded a moment later with your portion recycled back.<br>
<br>
Most of your "clients" treat you merely as an object, some seeming to delight in piling on additional verbal torment and the rare few that speak with kindness. However they treat you, it seems that part of the system is that they must either reward or punish your service and you soon find yourself tensing in anticipation of whether they will give you a short mechanical ass-fuck or another cramp-inducing piss enema.<br>
<br>
Jumping in fright at a particularly brutal client who leans in to cram <<his>> cock past your gag to piss directly down your throat, you accidentally squeeze your hand and trigger the "hydration." Piss flowing down over <<his>> cock <<he>> is angered further, finishing mixing <<his>> piss with those of the rest of the building before giving you an enema... and then sticking around to force you to endure a second before squeezing your hand so that you are flooded with anonymous <<getWordPiss>> from both ends!<br>
<br>
Exhausted by your ordeal, you would collapse to the floor if it were not for your tight bondage and you don't even notice <<=setup.getNpcName('npc_manager', 'formal')>> return until she starts releasing you from your restraints.<br>
<br>
"@@.npc_manager;Hard day?@@" She asks.<br>
<br>
You can only whimper a response past your gag as she helps pull you to your feet, the dildo sliding out of your ass to leave you feeling empty.<br>
<br>
Staggering slightly, you are lead to the locker-room where she helps free your arms and then points to a small shower.<br>
<br>
You nod, cleaning off the sweat that has built up under your latex as you strip off the catsuit and then put on your work clothes.<br>
<br>
"@@.npc_manager;Learn your lesson?@@" She asks and you nod, fearful of her ire.<br>
<br>
"@@.npc_manager;Good girl. If it makes you feel better, I did miss you this afternoon, come on, let us go back down and finish off the day.@@"<br>
<br>
Still a bit shaky, you follow along behind, wondering what the other human toilets are thinking of you as you walk past.<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, $player.work.time_evening.hour, $player.work.time_evening.minutes)>>
<<set _tmpSeconds = setup.secondsToDate($now,_endOfDay)>>
[<<moveTo $scene.workEventReturn "Return to work." _tmpSeconds '<<removeItem "catsuit_toilet" true>><<deleteItem "catsuit_toilet" true>><<useClothSetPop "tmp">><<if $scene.plug != "">><<wearItem $scene.plug true>><</if>><<completeWorkEvent>>'>>]
</div>/*#
#desc: talk to npc_manager about the possibility of working in the Executive Bathroom
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You bring up the topic of the "Executive Bathroom," noting that it appears that the "normal" workers there earn some sort of pay... in addition to liquid gold, of course, and ask <<=setup.getNpcName('npc_manager', 'formal')>> if you might work there, yourself.<br>
<br>
She cocks an eyebrow in surprise. "@@.npc_manager;You really are looking for just any means to make a few credits. To answer your question though, yes, it is within my power to grant you permission to work there... and I will do so, under two conditions.@@"<br>
<br>
You wait patiently for her explanation.<br>
<br>
"@@.npc_manager;First, you must have completed all other tasks for the week, I will inform you after lunch if you have managed to work hard enough to sufficiently "get ahead" of everything. You may also take this opportunity to assist at other jobs here at Social Interaction Service Syndicate Inc. The second requirement is that you understand that I will not be there to babysit you. While the job is, of course, safe, once I lock you in you will be working as a human toilet for the remainder of the day, without you working as my assistant I will be far too busy to come let you out if you get bored or full or something.@@"<br>
<br>
You nod and say you will consider the opportunity.<br>
<br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: choice to voluntarily work in Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
<<if $scene.voluntary>>
Possessed by some crazy urge you detour to floor 83 rather than heading for Cafe 52. Your heart pounds for the entire elevator ride — are you really doing this, are you really going to willingly restrain yourself for an entire shift spent drinking the <<getWordPiss>> of your fellow employees?
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles as you agree to her offer. With a gesture she sends you on your way and you are soon riding the elevator to floor 83 and it's oh-so-special Executive Bathroom...
<</if>>
<br><br>
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
<<printThought "Mmm, my mouth is already watering, I can't wait to start drinking <<getWordPiss>>!">>
<<else>>
<<printThought "It's hard to believe I used to not enjoy <<getWordPiss>>, oh well, I know now!">>
<</if>>
<br><br>
[<<moveTo "event_work_piss_work_voluntary_2" "Get changed and start working." 600>>]<br>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
<<printThought "This is pretty extreme, do I really want to push myself to try?">><br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_work_piss_work_voluntary_2" "Steel your constitution and go on with your plan." 600>>] <<hint $options "Trying to push beyond your limits will tax your willpower.">><br>
<<else>>
[@@.link_locked;You don't have the mental energy to force yourself to do something so depraved.@@]<br>
<</if>>
<<else>>
<<printThought "No, this is crazy and disgusting.">><br>
<br>
[@@.link_locked;You couldn't possibly do something so depraved.@@]<br>
<</if>>
<</if>>
<<if $scene.voluntary>>
<<if setup.getTotalValue("piss") > 15>>
[@@.link_locked;The thought of some nice, fresh <<getWordPiss>> in your head there's no way you could settle for just working at Cafe 52.@@]
<<elseif setup.checkItemOwned("maid_uniform_latex_black")>>
<<if $player.sec_style.sex.milking != "" || $npc_barista.flags.milking.first_seen>>
<<if $player.flags.work_coffee.times_work_milk == 0>>
[<<moveTo 'event_coffee_milking_equip_1' "Take the elevator back down to work as a sexy latex maid at Coffee Shop 52 instead." 60>>]<br>
<<else>>
[<<moveTo 'event_coffee_job_milked_1' "Take the elevator back down to work as a sexy latex milk-maid at Coffee Shop 52 instead." 60>>]<br>
<</if>>
<<else>>
[<<moveTo 'event_work_coffee_work' "Take the elevator back down to work as a sexy latex maid at Coffee Shop 52 instead." 60>>]<br>
<</if>>
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 15>>
[@@.link_locked;The thought of some nice, fresh <<getWordPiss>> in your head there's no way you could settle for anything less than living the dream of being a human urinal.@@]
<<else>>
[<<moveTo $scene.workEventReturn "Change your mind and just go back to your desk." 300 "<<completeWorkEvent>>">>]
<</if>>
<</if>>
</div>/*#
#desc: first voluntary work in Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "catsuit_toilet">>
<<wearItem "catsuit_toilet" true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<if setup.getTotalValue("piss") <= 10>>
<<spendWillpower 1>>
<</if>>
<<setThreshold 'piss' 'manager_piss' 'human_toilet'>>
<<if $player.sec_style.submission.human_toilet == "">>
<<set $player.sec_style.submission.human_toilet = 'voluntary'>>
<</if>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("piss") <= 10>>
Your heart thunders in your chest as you change into the regulation catsuit for a shift in the Executive Bathroom.<br>
<br>
<<printThought "Am I really doing this? Do I really want to tie myself up and be forced to drink piss from anyone who wants to use me?">><br>
<br>
Despite your self-doubt, you continue to change and then, as you sit back and the dildo slides into your hole and the cuffs lock around your wrists it's done.
<<else>>
Your heart races as you quickly change into the regulation catsuit for a shift in the Executive Bathroom.<br>
<br>
<<if $scene.voluntary>>
<<printThought "I hope I don't get into trouble for this, but I'm sooo thirsty for <<getWordPiss>>.">>
<<else>>
<<printThought "I'm so happy <<=setup.getNpcName('npc_manager','formal')>> approved me to work up here, I can't believe how thirsty I am for <<getWordPiss>> right now.">>
<</if>>
<br><br>
A few minutes later and you are all rubbered up and sitting back on a dildo, feeling it lock deep in your ass as the rest of the restraints latch closed leaving you open-mouthed and looking up to await your first customer.
<</if>>
<br><br>
<<printThought "Wait... how do I get out of this thing when my shift is over?">><br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, $player.work.time_evening.hour, 0)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)/2>>
[<<moveTo 'event_work_piss_work_voluntary_3' "Continue." _timeToEndOfDay>>]
</div>/*#
#desc: first shift in Executive Bathroom non-forced
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_exec_bathroom.times_worked += 1>>
<<applyExperience 'piss' 10 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 8 'little' $SEEN_STRANGER>>
<<applyExperience 'bondage' 15 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'little' $SEEN_STRANGER>>
<<applyFatigue 50>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
As minutes tick by, the humiliating, depraved nature of your position starts to sink in. Bound as you are, you can do little but wait. You can barely see the fellow human toilets to your either side out of the corner of your eye and you wonder why they are here — are they volunteers like yourself? Enthusiasts? Is this punishment? Given the anonymising catsuits and the gags forcing your mouths wide open for use, you have no way of knowing.<br>
<br>
Though the smell of urine hangs in the air of the bathroom, your mouth actually starts to dry out as you wait for your first customer, several people walking past or stopping short before one finally stops in front of you.<br>
<br>
Whistling to <<himself>> as <<he>> swipes <<his>> ID, the <<man>> unzips <<himself>> and fishes out <<his>> soft cock, not even paying attention to you as <<he>> leans <<his>> head back and unleashes <<his>> stream with a sigh of relief.<br>
<br>
You flinch reflexively but your mask protects you from even feeling wet as the amber shower splatters across your mask and is directed through the gag spreading your lips.
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
As much as you enjoy watching <<his>> golden stream splash over your face you are even more excited to feel it trickle through your gag and taste the lovely lemonade flowing over your tongue and down your throat.
<<else>>
<<His>> stream splatters across your mask and then flows into your mouth as you enjoy the mix of degradation and deliciousness enforced by your bound position.
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
<<He>> tastes strong and bitter and you instantly regret your decision but there is nothing you can do, your struggles all but stopped by your bonds and the <<man>> ignoring your cough as <<he>> finishes up and shakes the final few drops right into your face.
<<else>>
ERROR: should not be possible
<</if>>
<</if>>
<br><br>
The <<man>> rewards you with a vibration in your rear but turns away without otherwise having paid you any mind. This treatment further objectifies and humiliates you as you return to waiting. The recycling system doing its job, you are "treated" to a salty drip of mixed cum and piss a few minutes later. One of your fellow toilets must really get off on this treatment.<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, $player.work.time_evening.hour, 0)>>
<<set _timeToEndOfDay = setup.secondsToDate($now,_endOfDay)-300>>
[<<moveTo 'event_work_piss_work_voluntary_4' "Continue." _timeToEndOfDay>>]
</div>/*#
#desc: first shift in Executive Bathroom non-forced
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'piss' 10 'normal' $SEEN_FRIEND>>
<<if $player.sec_style.submission.human_toilet == "voluntary">>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<if $player.sec_style.submission.human_toilet == "money">>
<<addCredits 20>>
<<applyExperience 'humiliation' 18 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<if $player.sec_style.submission.human_toilet == "voluntary">>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/company_toilet.png" >>
<</if>>
<div id="invframe" class="scrolltext">
The initial rush of forbidden excitement fades to boredom as you wait between customers as after a while even getting pissed on starts to become repetitive with you trapped in a tightly-restrained prison of your own making.<br>
<br>
<<if $player.sec_style.submission.human_toilet == "voluntary">>
"@@.npc_manager;There you are!@@" The familiar voice focuses your attention as you glance around to watch <<=setup.getNpcName("npc_manager","formal")>> states as she walks over to stand above you. "@@.npc_manager;Here I thought you were practicing your barista skills but you were drinking something far different!@@"<br>
<br>
Your latex mask hides your blush but <<=setup.getNpcName("npc_manager","formal")>> smiles knowingly anyway. "@@.npc_manager;Well, I hope you sated your thirst because I need you back in the office. Let me just relieve myself and we can get you changed back into normal attire — in the future you may simply inform me if you would like to spend some time in the Executive Bathroom, I have no problem with you indulging such urges. I just want to know where you are. Imagine if we had reached the end of the day and you were still stuck in here!@@"<br>
<br>
You do not have long to think on that before she hikes her skirt and straddles your face to unleash a blast of her golden production.
<<if setup.getTotalValue("piss") > 10>>
Hers is easily the most delicious that you have tasted all day, light and feminine.
<<if setup.getTotalValue("piss") > 15>>
Your tongue moves like a dervish as it seeks to taste every last drop.
<<else>>
You would gladly drink this even unrestrained but the way the gag forces you to guzzle it down somehow makes it even better.
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
Her piss is milder than most that you have tasted today almost... good? You wonder what it says about you that you could even entertain such a thought; of course your gag and mask means you have no choice but to drink it all down in any case.
<<else>>
ERROR: unexpected piss value
<</if>>
<</if>>
<br><br>
She punches in a code to release your bonds, waiting for you to rise to your feet and then gesturing to the changing room where she supervises you swapping back to your work attire and then hands you a stick of gum.<br>
<br>
The minty flavour drowning out the lingering taste of <<getWordPiss>>, you follow her back to your desk in silence and take your seat.
<<else>>
You have completely lost track of time when <<=setup.getNpcName("npc_manager","formal")>> sounds in your ear. "@@.npc_manager;I think that will be sufficient for now — would not want you to drown on your first day!@@" She chuckles and then the line goes silent as your restraints unlock.<br>
<br>
Working the stiffness out of your joints you rise to your feet and change back into your normal office attire before heading back down. Walking past the other still-working human toilets you feel a twinge, whether jealousy, shame, or something else you are uncertain but it hastens your pace as you grab a stick of gum from a dispenser near the exit and head for the elevator.<br>
<br>
<<if $player.sec_style.submission.human_toilet == "money">>
Arriving at your desk you have a message waiting indicating that twenty credits has been deposited in your account. "@@.npc_manager;A bonus for your first time — do not expect to earn so much normally.@@"<br>
<br>
<<printThought "Drinking piss for over an hour for only twenty credits? What have I become?">><br>
<br>
You have no answer as you sit down and resume your normal duties, the taste of your work replaced by the minty flavour of the gum.
<<else>>
Returning to your desk you take a seat and resume working, the taste of your work replaced by the minty flavour of the gum.
<</if>>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Return to work." 180 "<<removeItem 'catsuit_toilet' true>><<deleteItem 'catsuit_toilet'>><<useClothSetPop 'tmp'>><<if $scene.plug != ''>><<wearItem $scene.plug true>><</if>><<completeWorkEvent>>">>]
</div>/*#
#desc: greed Executive Bathroom unlock
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_manager","formal"))>> eyebrow shoots up and she smiles slightly as you ask if there might be some way for you to profit off your "skill." <br>
<br>
"@@.npc_manager;Hmm, you know, there might. The fee charged for the use of the Executive Bathroom is more a general service fee for upkeep and such but, as your own— your manager, I am permitted to redirect a portion of that payment to you directly. Note that this will be a full shift, not popping in for a sip. If you would like to work a shift under those conditions let me know. It will not be a large payment but if you are determined to squeeze every credit out of your workday, well...@@"<br>
<br>
[<<moveTo "event_work_piss_work_voluntary_1" "Accept her offer and go up and work a shift." 60 "<<set $player.sec_style.submission.human_toilet = 'money'>><<completeWorkEvent>><<set $scene.shortWorkDay=true>><<include 'endPartialShift'>>">>]<br>
[<<moveTo $scene.workEventReturn "Change your mind and return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: obedient Executive Bathroom unlock
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'submission' 12 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName("npc_manager","formal")>> for the compliment and ask if there might be some way for you to put your thirst for <<getWordPiss>> to work for her?<br>
<br>
"@@.npc_manager;Oh what lovely enthusiasm! Certainly I can see the value in your undergoing some additional cross-training in this matter, if you think you are up to the challenge.@@"<br>
<br>
[<<moveTo "event_work_piss_work_voluntary_1" "Accept her offer and go up and work a shift." 60 "<<set $player.sec_style.submission.human_toilet = 'obedient'>><<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: work in Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "catsuit_toilet">>
<<wearItem "catsuit_toilet" true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<setThreshold 'piss' 'manager_piss' 'human_toilet'>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png">>
<div id="invframe" class="scrolltext">
You inform <<=setup.getNpcName("npc_manager","formal")>> that you will be working a shift in the Executive Bathroom and she smiles. "@@.npc_manager;Morning shift have you feeling a bit thirsty? Well, head on up and I will let all my friends know there is a real enthusiastic pro on the clock ready to provide relief.@@"<br>
<br>
After you have quickly changed into the regulation latex attire you find an empty stall and settle back onto the dildo-equipped seat, feeling the restraints snap into place to begin your shift.<br>
<br>
[<<moveTo "event_work_piss_work_root" "Take your seat." 3600>>]
</div>/*#
#desc: work in Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_exec_bathroom.times_worked += 1>>
<<if $player.flags.work_exec_bathroom.times_worked > 5 && setup.getTotalValue("piss") >= 15 && !State.hasPlayed("event_work_piss_random_full_bladder_1")>>
<<set $scene.bathroomEventId = "full_bladder">>
<<else>>
<<set _bathroomEvents = ["cleaners", "slave", "full_bladder", "none", "none", "none", "none"]>>
<<if $fetish.bestiality_hard>>
<<set _bathroomEvents.push["dog"]>>
<</if>>
<<set $scene.bathroomEventId = _bathroomEvents.random()>>
<</if>>
<<applyExperience 'bondage' 16 'terrible' $EXPOSED>>
<<applyExperience 'piss' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.bathroomEventId != "none">>
<<createAdvBGR "./images/locations/executive_bathroom.png">>
<<else>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/executive_bathroom.png">>
<<else>>
<<createAnimatedBGR "./video/piss_pov_01.mp4">>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.bathroomEventId == 'none'>>
You work another shift in the Executive Bathroom. Other than guzzling down several pints of <<getWordPiss>>, nothing of note happens and, eventually, your restraints unlock as you receive a summons to return to your normal duties.<br>
<br>
[<<moveTo "event_work_piss_work_return" "Change and head back." 3600>>]
<<else>>
You settle in to "work" another shift in the Executive Bathroom. You <<if setup.getTotalValue("piss") < 10>>endure<<else>>enjoy<</if>> the usual bound piss-drinking uneventfully until
<<switch $scene.bathroomEventId>>
<<case 'cleaners'>>
a pair of latex-clad individuals enter the bathroom.<br>
<br>
[<<moveTo "event_work_piss_random_cleaners" "Continue." 600>>]
<<case 'slave'>>
a large <<man>> enters, holding the door for a short, plump woman.<br>
<br>
[<<moveTo "event_work_piss_random_slave" "Continue." 600>>]
<<case 'full_bladder'>>
a <<man>> delicately walks to the middle of the room and turns as if to address you and the other "urinals." <br>
<br>
[<<moveTo "event_work_piss_random_full_bladder_1" "Continue." 600>>]
<<case 'dog'>>
a woman walks in with a large mastiff following on a leash.<br>
<br>
[<<moveTo "event_work_piss_random_dog" "Continue." 600>>]
<<default>>
ERROR: unexpected bathroom event id <<=$scene.bathroomEventId>>
<</switch>>
<</if>>
</div>/*#
#desc: return to work after a shift in Executive Bathroom
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "catsuit_toilet" true>>
<<deleteItem "catsuit_toilet">>
<<useClothSetPop 'tmp'>>
<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<wearItem $scene.plug true>>
<</if>>
<<if $player.sec_style.submission.human_toilet == "money" && !($npc_manager.flags.evil == 2 && !State.hasPlayed("event_rival_piss_2"))>>
<<set $scene.credits = 10*random(1,10)>>
<<addCredits $scene.credits>>
<</if>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png">>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.evil == 2 && !State.hasPlayed("event_rival_piss_2")>>
You've just finished changing when an attendant walks into the room. She looks a touch run down, but she greets you with a surprised look followed by a smile.<br>
<br>
"@@.generic_female1;Oh, wow, you weren't on the schedule but... well, you really saved my bacon. I actually overslept and, well... I was checking the storage tanks on the way up and if you hadn't been working and taking up some of the capacity... we might have had a back-flow situation.@@" She sighs "@@.generic_female1;Some executive genius decided that, with all the new "hire" they'd drop capacity and go for a more live-stream steady-state to shave a few credits... but while they're saving a few credits who's stuck guzzling gold? Yeah, folks like you and me! I hope they work the kinks out of the system soon, no pun intended, because the tanks storage tanks we're using just don't have the capacity we need and if we ever get a dip in how many workers we can skim off from the discipline department, well...@@" she shakes her head as she finishes shedding her clothes and starts slipping into a latex uniform to start a shift. "@@.generic_female1;All that acid requires very precise conditions to retain its proper texture and flavour and an overflow or a malfunction is going to make for one helluva mess!@@"<br>
<br>
<<printThought "Storage tanks?">><br>
<br>
[<<moveTo "event_rival_piss_1_alt" "Ask more about the use for these storage tanks." 120 "<<set $scene.fromExecutive=true>>">>]<br>
<<else>>
Rising to your feet, you work the stiffness out of your limbs and change back into your normal attire before relieving yourself in one of your fellow human toilets and heading back to your desk.<br>
<br>
<<if $player.sec_style.submission.human_toilet == "money">>
Returning to your desk you find a message noting that for your "efforts" you have received a payment of <<=$scene.credits>> credits.<br>
<br>
<<printThought "Guess that's why they call it a golden shower... though it isn't exactly much gold.">><br>
<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Resume working." 60>>]
<</if>>
</div>/*#
#desc: Executive Bathroom random event - cleaners
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_exec_bathroom.cleaners = true>>
<<applyExperience 'piss' 12 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 16 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png">>
<div id="invframe" class="scrolltext">
You watch as the two latex-clad individuals enter the bathroom. Clad head to toe in skin-tight hazmat suits complete with heavy masks<<if $npc_manager.flags.severeCleanings > 0>> they remind you somewhat of the "workers" in the basement cleaning area<</if>>. As they put something over the door you realise they must be a cleaning crew. Plugging in to a port on the wall they each unsheath sprayers connected to their bulky backpacks and begin hosing everything down.<br>
<br>
Whistling as they work the cleaning crew sprays down the floor and walls around each human urinal, the dirty water flowing down into drains in the floor. You watch as one of the workers moves on while the other places a sort of mask over the human toilet's face and then begins spraying the poor slave down.<br>
<br>
Bound as you are you can only wait until it is your turn, the "mask" proving to contain a throat-probing phallus. The painful sting of the sprayer is "offset" by the rest of your system going through a cleaning cycle of its own.<br>
<br>
Blind and helpless you howl into your double gag as liquid flows back "up" into your bladder, stretching you to the point of cramping before flowing out, leaving you empty for but a moment before the gag-mask is removed allowing your recycled output to flow back down your throat, the plug in your ass vibrating in "reward" to leave you gasping and moaning in chorus with your fellow "workers." <br>
<br>
Your holes sensitive, your belly full and your body tender from the aggressive cleaning you are relieved when the two workers finish up, removing the sign from the door and ushering a rush of "customers" as the diluted taste of yourself is washed away by pure freshness, hot from the tap.<br>
<br>
After the initial backlog of customers clears the rest of your shift passes uneventfully, though you find yourself with a fresh fear of the possibility of experiencing another such humiliating, dehumanising "cleaning" whence next you work a shift.<br>
<br>
[<<moveTo "event_work_piss_work_return" "Change and head back." 3600>>]
</div>/*#
#desc: Executive Bathroom random event - slave
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_exec_bathroom.slave = true>>
<<applyExperience 'piss' 12 'terrible' $EXPOSED>>
<<applyExperience 'penis' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png">>
<div id="invframe" class="scrolltext">
From your vantage point on your knees the <<man>> looks massive, perhaps even larger than <<if ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>>your friend <</if>><<=setup.getNpcName("npc_admin","first")>>, and with an even more exaggerated "wall of muscle" build.<br>
<br>
<<He>> and the woman following <<him>> walk right past you and the rest of the human urinals to one of the empty stalls where <<he>> holds the door and then sets out a stool before kneeling down and opening <<his>> mouth.<br>
<br>
You watch as the plump woman steps up onto the stool and then raises her skirt, pressing her lower lips against <<if $options.fem>>hers<<else>>his<</if>> and stroking <<his>> short hair as she smiles and relieves herself. The <<if $options.fem>>other woman<<else>>man<</if>> is like a statue through the whole process, waiting until she finishes with a sigh before licking her clean.<br>
<br>
A pleased grin on her face she dismounts the stool and walks over to stand next to you. "@@.generic_female1;This one looks like she could use a drink,@@" she states. The <<if $options.fem>>large woman<<else>>man<</if>> stands and walks over to you, <<his>> massive bulge slowly filling your vision. <<He>> stands formally in front of you, feet spread, hands behind <<his>> back as you are afforded a few moments to admire the way <<his>> leather pants strain to contain the beast within before the delicate hand of the woman reaches into view to gently pull down <<his>> zipper.<br>
<br>
Anticipation is heightened as she slowly unzips both sides of the front panel of <<his>> pants before unbuttoning the top and allowing it to fall free and reveal a massive cock imprisoned within a heavy steel chastity device. Your heart quickens at the sight of <<his>> huge member, dancing at the thought of what it could do to your holes if it was free of its prison.<br>
<br>
<<if setup.getTotalValue("oral") > 13 && setup.getTotalValue("anal") > 13>>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "I wish I had two of those to take me from both ends...">>
<<else>>
<<printThought "Probably safer that <<hes>> locked up, but I think I could handle <<him>>...">>
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "That would ruin me... and I would love every second.">>
<<else>>
<<printThought "I'm glad <<hes>> locked up, that thing would ruin me!">>
<</if>>
<</if>>
<br><br>
<<if $fetish.sounding>>
The woman's hand, looking even smaller next to <<his>> girth, gently unscrews something from the top of <<his>> cage, slowly withdrawing a curved plug almost a dozen centimetres long.
<</if>>
Once the woman's hand is out of the line of fire the <<if $options.fem>>large woman<<else>>man<</if>> unleashes <<his>> flow, a firehose of <<getWordPiss>> that splatters across your face to then flow down your throat.<br>
<br>
The <<man>> tastes like <<he>> looks — strong <<if $options.fem>>and masculine <</if>>and heady,
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
in other words, absolutely delicious.
<<else>>
in other words, just how you like it.
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
and you find yourself almost appreciating it, even if it is a bit disgustingly bitter.
<<else>>
but you have no choice but to swallow the bitter brew.
<</if>>
<</if>>
<br><br>
The <<man>> is silent until the deluge is over, the splashing sound enough to set you off as the woman presses your "reward" button, the plug in your ass vibrating strongly to further encourage your bowels to relax.<br>
<br>
The flood stops and woman gently shakes <<him>> a few times to clear the drips before <<if $fetish.sounding>>sliding the urethra plug back into <<him>> and screwing it in place<<else>>zipping <<him>> back up<</if>>.<br>
<br>
"@@.generic_female1;You were full!@@" She notes, "@@.generic_female1;That's lovely. I would hate to think this girl would be left thirsty!@@"<br>
<br>
She laughs to herself as the two of them walk away. The <<if $options.fem>>amazon woman<<else>>man<</if>> stands at attention as she washes her hands and then holds the door for her to leave the bathroom.<br>
<br>
You catch your breath, impressed at the control the woman had over someone so much larger than she is.<br>
<br>
<<printThought "Then again, <<=setup.getNpcName('npc_manager','formal')>> proves that size isn't everything when it comes to strength around here...">><br>
<br>
The rest of your shift passing without incident.<br>
<br>
[<<moveTo "event_work_piss_work_return" "Change and head back." 3600>>]
</div>/*#
#desc: Executive Bathroom random event - full bladder intro
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png">>
<div id="invframe" class="scrolltext">
A strange tension fills the room as the <<man>> strikes a pose facing you and your fellow latex-bound human urinals.<br>
<br>
"@@.generic_male1;So, my lovelies...@@" <<he>> opens with a smile while slowly reaching for <<his>> zipper. "@@.generic_male1;I've been drinking coffee aaaallll morning and now one of you lucky piss-sluts is going to be treated to every wonderful drop. So, which will it be? I know you're all beautifully bound and plugged up but you can still show me how much you want it. Come on, thirstiest human toilet gets a bellyful of liquid gold!@@"<br>
<br>
<<if setup.getTotalValue("piss") == 20>>
<<printThought "I exist for piss, all I have to do is show <<him>>...">><br>
<br>
[<<moveTo "event_work_piss_random_full_bladder_2" "Let yourself go and show <<him>> you NEED it." 60 "<<set $scene.eager=2>>">>]<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_work_piss_random_full_bladder_2" "Keep calm as you show <<him>> you want it." 60 "<<set $scene.eager=1>><<spendWillpower 1>>">>] <<hint $options "Resisting your depraved urges will cost willpower">><br>
<<else>>
[@@.link_locked;I don't have the mental energy to keep from showing my full enthusiasm for <<getWordPiss>>.@@]<br>
<</if>>
[@@.link_locked;You are a piss-addict, you can't possible resist such an offer.@@]<br>
<<elseif setup.getTotalValue("piss") >= 15>>
<<printThought "Is this what I've come to? Begging for a <<mans>> <<getWordPiss>>? Why does that not disgust me anymore?">><br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_work_piss_random_full_bladder_2" "Push yourself and show <<him>> you NEED it." 60 "<<set $scene.eager=2>><<spendWillpower 1>>">>] <<hint $options "Forcing yourself past your limits will cost willpower">><br>
<<else>>
[@@.link_locked;I don't have the mental energy to debase myself for <<his>> piss.@@]<br>
<</if>>
[<<moveTo "event_work_piss_random_full_bladder_2" "Show <<him>> you want it." 60 "<<set $scene.eager=1>>">>]<br>
[<<moveTo "event_work_piss_random_full_bladder_2" "Remain still." 60 "<<set $scene.eager=0>>">>]<br>
<<elseif setup.getTotalValue("piss") >= 10>>
<<printThought "What, beg for piss, that's disgusting! Unless...">><br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_work_piss_random_full_bladder_2" "Push yourself and show <<him>> you want it." 60 "<<set $scene.eager=1>><<spendWillpower 1>>">>] <<hint $options "Forcing yourself past your limits will cost willpower">><br>
<<else>>
[@@.link_locked;I don't have the mental energy for this even if I wanted it.@@]<br>
<</if>>
[<<moveTo "event_work_piss_random_full_bladder_2" "Remain still." 60 "<<set $scene.eager=0>>">>]
<<elseif setup.getTotalValue("piss") >= 5>>
<<printThought '"Working" here is bad enough, no way am I going to debase myself by begging for it!'>><br>
<br>
[<<moveTo "event_work_piss_random_full_bladder_2" "Remain still." 60 "<<set $scene.eager=0>>">>]
<<else>>
<<printThought "What? That's disgusting!">><br>
<br>
[<<moveTo "event_work_piss_random_full_bladder_2" "Remain still." 60 "<<set $scene.eager=0>>">>]
<</if>>
</div>/*#
#desc: Executive Bathroom random event - full bladder decision
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_exec_bathroom.volunteer = true>>
<<switch $scene.eager>>
<<case 2>>
<<setThreshold 'piss' 'manager_piss' 'eager_urinal'>>
<<set $player.flags.work_exec_bathroom.volunteer_win = true>>
<<applyExperience 'piss' 20 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 18 'terrible' $SEEN_STRANGER>>
<<case 1>>
<<applyExperience 'humiliation' 15 'very' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.eager>>
<<case 2>>
You may be bound but that just makes everything better. You howl with want through your gag, bucking your hips as you ride the dildo in your ass, wishing you could catch <<his>> eye to show how much you need <<him>> to quench the deep, depraved thirst that lies inside of you. Mashing the button you try to "prime the pump" — the feeling of the stranger's urine flowing over your face and down your throat only making you thirstier for the <<mans>> disgusting offer.
<<case 1>>
A soft, surprisingly needy moan escapes your gag as you writhe in your bonds, feeling the latex move against your sweaty body as you show your interest in the <<mans>> disgusting offer.
<<case 0>>
You attempt to remain stock still, hoping that if you do a good enough job acting like a statue the <<man>> will ignore you and inflict <<himself>> on one of the other human urinals.
<<default>>
ERROR: unexpected scene.eager <<=$scene.eager>>
<</switch>>
<br><br>
Around you roughly half the other "urinals" make an effort to attract the <<mans>> attention, shaking against their bonds in pleas for <<his>> <<getWordPiss>>.<br>
<br>
<<printThought "What has this company done to us? To make human beings act this way?">><br>
<br>
<<if $scene.eager == 2>>
Even compared to the other piss-sluts that surround you it's obvious that you stand out. It isn't long before the <<man>> notices, grinning wide as <<he>> approaches you and reaches for <<his>> zipper.<br>
<br>
"@@.generic_male1;Wow, you just couldn't wait@@" <<he>> says looking down at the <<getWordPiss>> cascading over your face. "@@.generic_male1;Well you don't have to sup on that recycled junk anymore, enjoy the ultimate beverage!@@"<br>
<br>
You have a literal front-row view as <<he>> unzips <<his>> pants to reveal <<his>> <<getWordPenis>>.
<<if $fetish.sounding>>
Not in chastity there is nonetheless something over <<his>> member and <<he>> twists a small valve at the end to unleash a torrent that was being held back by what you now realise was a catheter.<br>
<br>
With the blockage removed <<his>>
<<else>>
<<His>>
<</if>>
flow is intense, blasting straight down your gag and into your throat, strong in flavour and surprisingly acidic given its volume. After the initial shot <<he>> walks the stream over you, lingering to blast directly into your lens-protected eyes but taking time to shower you completely; most of it pooling to be funnelled down your throat with just enough to drip down your body to leave you feeling completely debased.<br>
<br>
"@@.generic_male1;Perfect@@" <<he>> states when <<his>> flow finally slows to a trickle. "@@.generic_male1;I love a slut who knows her place, you look so much better gilded... I only wish you were out of that impeding latex and my bladder was infinite. I would drown all of you whores in a river of liquid gold and you would love it all!@@"<br>
<br>
<<if setup.getTotalValue("piss") >= 17>>
<<printThought "That sounds wonderful...">>
<<else>>
<<printThought "So this is who I am, dripping with <<getWordPiss>> and loving it.">>
<</if>>
<br><br>
With a smile the <<man>> reaches out and hits both the punish and reward buttons. Writhing in your bonds you moan, this harsh, overwhelming treatment somehow exactly what you need and for a moment you love <<him>> for temporarily satiating your depraved urges.
<<else>>
The <<man>> grins as <<he>> looks at the spread of human urinals further debasing themselves in front of <<him>> before making <<his>> selection.<br>
<br>
Approaching the unit two over to your left <<he>> unzips <<his>> pants to reveal<<if $fetish.sounding>>... well, it isn't quite a chastity device but <<his>> <<getWordPenis>> is wrapped in something that includes a catheter. <<He>> twists a spigot at the end and<<else>> <<his>> <<getWordPenis>> and <<he>><</if>> unleashes a flow, <<his>> expression almost orgasmic as <<he>> humps <<his>> hips and pisses all over the urinal in front of <<him>>.<br>
<br>
"@@.generic_male1;Yeah, take it! You love it you piss-hungry slut! I bet you wish you could bathe in this you whore! And all you other jealous slaves? Remember this, and make a better effort next time if you want to earn my prize!@@"<br>
<br>
<<printThought "Wow, that <<if $options.fem>>girl<<else>>dude<</if>> is kind of fucked up...">><br>
<br>
The <<man>> wasn't kidding about "saving up" as <<he>> pisses for well over a minute before the flow finally trickles off. Catching <<his>> breath <<he>> leans forward and finishes things off with spitting in the urinals face, chuckling as <<he>> presses both the reward AND the punish buttons to leave the poor, nearly-drowned slave thrashing in their bonds as <<he>> walks off to the sink.<br>
<br>
<<if setup.getTotalValue("piss") >= 17>>
<<printThought "That could have been me... why did I hold myself back?">>
<<elseif setup.getTotalValue("piss") >= 15>>
<<printThought 'Why does that make me feel so jealous? Next time am I going to go all the way to "earn" <<his>> favour?'>>
<<elseif setup.getTotalValue("piss") >= 10>>
<<printThought "That looked intense... and I feel so turned on... am I... am I jealous that <<he>> didn't pick me?">>
<<elseif setup.getTotalValue("piss") >= 5>>
<<printThought "I could never do something like that... right?">>
<<else>>
<<printThought "I'm so glad that wasn't me.">>
<</if>>
<</if>>
<br><br>
The <<man>> leaves and the remainder of your shift passes uneventfully.<br>
<br>
[<<moveTo "event_work_piss_work_return" "Change and head back." 3600>>]
</div>/*#
#desc: Executive Bathroom random event - dog
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'piss' 15 'terrible' $EXPOSED>>
<<applyExperience 'bestiality' 8 'terrible' $EXPOSED>>
<<set $player.flags.work_exec_bathroom.dog = true>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_bathroom.png">>
<div id="invframe" class="scrolltext">
The dog's claws click in harmony with the woman's heels as she walks across the bathroom, coming to a stop at the human toilet next to you.<br>
<br>
"@@.generic_female1;You need to go too, boy?@@" She asks, chuckling as she loosens the leash and gives a commanding click.<br>
<br>
Bound on your knees you can only watch, frozen, as the dog walks in front of you and rears up, its short-haired chest filling your vision as the canine cock approaches your gag-spread mouth.<br>
<br>
You hear the woman unleash her stream, barely seeing her lean back with a sigh out of the corner of your eye as her pet takes the cue to relieve himself.<br>
<br>
Paws against the wall above your head, the canine's hot member rests on your lips as if well-trained in this exact situation and it unleashes a blast of <<getWordPiss>>.<br>
<br>
Steamy hot and earthy, it is like nothing you have tasted from a human; a strong, primal flavour that
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
makes your stomach growl
<<else>>
seems to push you towards new levels of depraved thirsts
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
that makes you choke,
<<else>>
that makes you gag,
<</if>>
even as you are unable to escape its taste
<</if>>
<<if setup.getTotalValue("bestiality") >= 5>>
as you fantasise how wonderful it would be
<<else>>
as you find yourself thinking about how it would feel
<</if>>
if the dildo in your ass was replaced with the thick knot of the dog's fiery member.<br>
<br>
As if pacing itself the dog avoids overflowing your mouth but you are left gulping even after it steps off and walks back to it's owner's heel.<br>
<br>
"@@.generic_female1;Good boy!@@" She states, giving him a scratch behind the ear that has him panting happily. "@@.generic_female1;And you enjoy that treat! That's champion gold!@@" She tells you, laughing as she walks over to the sink to freshen up.<br>
<br>
It is several minutes before another "customer" washes away the primal flavours of the dog, the rest of your shift passing without incident.<br>
<br>
[<<moveTo "event_work_piss_work_return" "Change and head back." 3600>>]
</div>/*#
#desc: show up to work exhausted
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.at_office = true>>
<<if $currentTasks.manager_morning_inspection_task.rewards.trigger_event.startsWith("event_late_work_prostitution")>>
<<set $scene.directInspection = true>>
<<switch $npc_manager.stage>>
<<case 3>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_1">>
<<case 4>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_4">>
<<case 5>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_5">>
<</switch>>
<<useClothSetPush 'daily_evaluation_clothes'>>
<<completeTask "manager_morning_inspection_task" $now true>>
<<initRoom>>
<<moveTo $currentTasks.manager_morning_inspection_task.rewards.trigger_event>>
<<elseif $npc_manager.flags.evil != 1>>
<<set $player.flags.workExhausted += 1>>
<<set _nextDate = setup.setNextDate($now, 0, 11, 0)>>
<<if !setup.hasUpgrade($bed, 'bed_bondage_gear')>>
<<addWorkEvent 'workExhaustedEvent'>>
<<else>>
<<addWorkEvent 'workExhaustedEnemaEvent'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You stagger into the office half dead, landing heavily into your chair<<if setup.checkItemTypeWorn("plug")>>, a movement that causes your <<=setup.getItemTypeName("plug")>> to thrust deeper into you and make you gasp<</if>>.<br>
<br>
You try to focus your attention, feeling proud of yourself for pushing through your physical exhaustion in your determination to fulfill the duties of your job.<br>
<br>
<<if $currentTasks.manager_morning_inspection_task.finished>>
[<<moveTo $currentTasks.manager_morning_inspection_task.rewards.trigger_event "Flop down at your desk." 0 "<<set $scene.beforetasklocation.pop()>><<set $scene.beforetasklocation.push('event_work_exhausted_1')>>">>]
<<else>>
<<set _tmpSeconds = setup.secondsToDate($now, setup.getTaskDueDate('manager_morning_inspection_task'))>>
[<<moveTo "room_office_sissy_secretary_work_morning_early" "Flop down at your desk." _tmpSeconds>>]
<</if>>
</div>/*#
#desc: manager catches you passing out at your desk due to coming to work exhausted
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You do what you can to concentrate on your work and stay alert but one moment you're trying to focus on an email and the next you're jolted awake by a cutting voice.<br>
<br>
"@@.npc_manager;Sleeping on the job? No, no, that will not do at all.@@"<br>
<br>
Jerking vertical, your body is flooded with adrenaline as you try to explain that you were just resting your eyes, but she sees straight through your excuse, silencing you with a finger to your lips.<br>
<br>
"@@.npc_manager;Shhh, shhh, no sense wasting your limited energy reserves on lies.@@" The finger on your lips turns to a gentle caress of your cheek as she stares down until you bashfully look away.<br>
<br>
"@@.npc_manager;Mmm, you really are adorable. Tell you what, I am in the mood for some coffee so how about you go fetch my usual order, and while you are there ask for one of the special "turbo" blends for yourself.@@"<br>
<br>
You nod obediently and she smiles<<if $npc_manager.affection > 5>>, leaning down to place a kiss on your forehead before stepping<<else>> and steps<</if>> away for you to rise to your feet.<br>
<br>
Temporarily energised by her startling presence you don't doubt you will be crashing soon and you hurry to Cafe 52.<br>
<br>
[<<moveTo "event_work_exhausted_3" "Hurry to Cafe 52." 300>>]
</div>/*#
#desc: pickup coffee order after passing out at work
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
Approaching the always chipper <<=setup.getNpcName("npc_barista","nickname")>> behind the counter, you order <<=ps(setup.getNpcName("npc_manager","formal"))>> usual and then ask for the special "turbo" blend.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> lights up with a smile at your request "@@.npc_barista;Ooo, good call. I was going to say you were looking a bit tired, but this will take care of that good!@@"<br>
<br>
Producing <<=ps(setup.getNpcName("npc_manager","formal"))>> drink first, you are surprised when, instead of another paper cup of premium coffee, she instead fills a fist-sized rubber bottle with what looks like room temperature coffee before screwing a lid onto it with a long integrated straw.<br>
<br>
"@@.npc_barista;Here ya go! Have fun!@@" she states with a wink as you stare in slight confusion at your order. You don't have time to ask, however as, mindful that <<=setup.getNpcName("npc_manager","formal")>> is certainly expecting her order, and that you are already feeling drowsy you take one drink in each hand and head back to the office.<br>
<br>
[<<moveTo "event_work_exhausted_4" "Continue." 300>>]
</div>/*#
#desc: coffee enema prep after passing out at work
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You walk back into the office to find <<=setup.getNpcName("npc_manager","formal")>> lying in wait. Handing off her drink, she instead grabs both of them, sporting a smile that would have you concerned if you weren't so, so tired.<br>
<br>
Draining her coffee in a single long swig, she casually crushes the cup and tosses it into the trash without looking, her eyes light up as she wiggles "your" drink in her hand. "@@.npc_manager;Lovely. Now how about you hop up on your desk and bend over and let's see if we can get you back in shape to do your job.@@"<br>
<br>
Whether through confusion or lethargy you hesitate for a moment as you stare at the bottle only for her to sigh. "@@.npc_manager;What, did you think this was for you to drink? No, that would be far too slow and inefficient, this special blend is designed to be absorbed through the OTHER end. Now come on, hop up and show me that cute tush and I will have you full of energy in no time.@@"<br>
<br>
[<<moveTo "event_work_exhausted_5" "Do as instructed." 60 "<<set $scene.obey = true>>">>]<br>
[<<moveTo "event_work_exhausted_5" "Say no." 60 "<<set $scene.obey = false>>">>]
</div>/*#
#desc: coffee enema after passing out at work
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $player.flags.exhaustedEnema = true>>
<<set $player.timebased.fatigue = 0>>
<<if !setup.getItemFromType("plug")>>
<<if !setup.checkItemOwned('analplug_beginner')>>
<<addItem 'analplug_beginner'>>
<<elseif setup.inWardrobe('analplug_beginner')>>
<<wardrobeToItem 'analplug_beginner'>>
<</if>>
<<wearItem 'analplug_beginner' true>>
<</if>>
<<else>>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Following <<=ps(setup.getNpcName("npc_manager","formal"))>> guidance, you get up on your desk, kneeling down with your rear raised as she
<<if setup.getItemFromType("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
exposes your plug-gaped hole.
<<else>>
exposes and removes your plug. Before you can close back up you feel a finger massaging cool lube into you.
<</if>>
<<else>>
exposes your hole. You gasp as you feel a finger gently massaging cool lube to open you up.
<</if>>
<br><br>
"@@.npc_manager;There we go, that is a good girl.@@" She coos before sliding a thin nozzle into your rear, pressing it all the way in until the bottle is nestled between your cheeks before giving it a squeeze.<br>
<br>
The liquid is just a little cool, resulting in what could best be described as a "bracing" effect as it gushes into you. Several moments later and you feel the effects kick in, energy rushing through your body as she finishes squeezing every last drop into your body.<br>
<br>
"@@.npc_manager;There we go, that should have you ready to resume working.@@" She states
<<if setup.getItemFromType("plug")>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
as she stuffs the plug back into your rear.
<</if>>
<<else>>
before sliding a small plug into your rear.
<</if>>
<br><br>
"@@.npc_manager;Very nice.@@" she adds, giving your bum a gentle caress and helping you back to your feet. Prior tiredness seeming to have completely disappeared, you are bright-eyed and a little jittery as you take your seat and return to work. "@@.npc_manager;Much better... though do endeavour to come to work properly rested in the future. If you make a habit of this sort of thing, well... I may be forced to take more advanced measures.@@"<br>
<br>
You nod and she returns to her inner office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Back to work." 0 "<<completeWorkEvent>>">>]
<<else>>
Finally realising what the strange "turbo" bottle is for you, shake your head. She frowns.<br>
<br>
"@@.npc_manager;Well, in that case you had better head home, I cannot have my secretary just passing out at her desk and in your current condition you are quite useless.@@"<br>
<br>
[<<moveTo "event_work_exhausted_5" "Get in position as previously instructed." 60 "<<set $scene.obey = true>>">>]<br>
[<<moveTo "company_lobby" "Leave." 600 "<<incrementEmotion 'anger' 'npc_manager' 1>><<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: manager catches you passing out at your desk due to coming to work exhausted
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You do what you can to concentrate on your work and stay alert but one moment you're trying to focus on an email and the next you're jolted awake by a cutting voice.<br>
<br>
"@@.npc_manager;What is this? I will not tolerate sleeping on the job! What happened, did you stay up too late?@@"<br>
<br>
Sitting up sharply you try to kick your mind into gear and come up with a response.<br>
<br>
[<<moveTo "event_work_exhausted_first_2" "Say you couldn't get a proper night's sleep." 60 "<<set $scene.excuse=false>>">>]<br>
[<<moveTo "event_work_exhausted_first_2" "Make up an excuse." 60 "<<set $scene.excuse=true>>">>]
</div>/*#
#desc: manager catches you passing out at your desk due to coming to work exhausted
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.excuse>>
<<decrementEmotion 'anger' 'npc_manager' 2>>
<<else>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('bed_bondage')>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.excuse>>
You explain that you were just resting your eyes, but that everything is fine and you've been working hard all morning.<br>
<br>
"@@.npc_manager;Resting your eyes?@@" She sighs, shaking her head at your lame excuse. "@@.npc_manager;Well stop that, it is unbecoming, a <<if $fetish.sissy>>SISSI <</if>>Secretary should be bright-eyed and alert at all times. And make sure you are getting to bed at a reasonable hour! If you are having difficulty sleeping or anything, that is something you need to address because I will not have such impacting your work responsibilities.@@"
<<else>>
You explain that you have really been struggling to sleep.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> listens to your explanation with a frown.
<<if $player.locations.sexstore>>
"@@.npc_manager;Hmm, probably tossing and turning, not able to settle down and get the quality sleep you need? Yes, well, that sort of problem has quite an obvious solution? You should check out that new store in the mall, I am certain they could sell you some upgrades that would keep you quite secure from such unhealthy nocturnal thrashing.@@"
<br>
<<if setup.getTotalValue("bondage") > 10>>
<<printThought "Did she just recommend I sleep in bondage? That sounds like a great idea!">>
<<else>>
<<printThought "Did she just recommend I sleep in bondage? What sort of crazy idea is that!">>
<</if>>
<<else>>
"@@.npc_manager;Well, perhaps you need to get to bed earlier, or figure out a more comfortable sleeping arrangement? Maybe a new set of sleep attire would be more relaxing and comfortable.@@"
<</if>>
<</if>>
<br><br>
Her intrusion having you on at least a temporary adrenaline high you thank her for the visit and she returns to her office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Resume working." 0 "<<completeWorkEvent>><<set setup.addManagerEndlessTask()>>">>]
</div>/*#
#desc: ask about foot work
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if you might spend the afternoon working at the company's shoeshine station helping to make sure employees put their best foot forward.<br>
<br>
"@@.npc_manager;Hmm, becoming quite the foot aficionado, are we? Very well, enjoy your afternoon, I expect you back here in two hours to finish off your shift.@@"<br>
<br>
[<<moveTo "event_foot_work_repeatable_2" 'Head to the shoeshine station.' 600>>]<br>
</div>/*#
#desc: foot shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'high_heel_gag'>>
<<wearItem 'high_heel_gag' true>>
<<applyExperience 'bondage' 15 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png">>
<div id="invframe" class="scrolltext">
You travel to the company's shoeshine stand where the lead attendant greets you with a smile, welcoming you and swiftly having you gagged and bound for a shift.<br>
<br>
"@@.generic_female2;Glad to have you back! You really have that expert touch when it comes to massage... in fact, I've got a couple of clients who literally setup alerts for the next time you were in, so get those wrists limber and get ready for a packed shift!@@"<br>
<br>
<<if $npc_manager.flags.evil == 2 && !State.hasPlayed("event_rival_foot_result_1")>>
[<<moveTo "event_rival_foot_1" "Continue." 5900 "<<set $scene.fromAfternoon=true>>">>]
<<else>>
[<<moveTo "event_foot_work_repeatable_3" "Continue." 6100>>]
<</if>>
</div>/*#
#desc: foot shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'foot' 'secretary_foot' 'shoeshine_station'>>
<<applyExperience 'anal' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'foot' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png">>
<div id="invframe" class="scrolltext">
Just as expected, you spend the afternoon massaging, cleaning, polishing, licking, and worshipping foot after foot, losing track of time and really anything other than the next delightful package of toes, arches, ankles, soles and heels until the attendant returns... taking advantage of a quick rub herself before helping you back to your feet and sending you back to your desk with a thanks and a wink.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Finish the afternoon shift back at your desk." 300 "<<removeItem 'high_heel_gag' true>><<deleteItem 'high_heel_gag'>>">>]
</div>Tongue Polish shine.
Bound, mouth used as a foot cleaner.
Intricate worship and pedicure with vivid details.
Lick shoes clean./*#
#desc: bring your dog to work day first sighting
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.uniform_upgrade = setup.calcUniformUpgrade()>>
<<if $scene.uniform_upgrade == ""
&& setup.checkTaskUntimedComplete('manager_morning_inspection_task')
&& !setup.checkEventLocationTime('room_office_sissy_secretary_work_morning_start')
&& !setup.checkEventLocationTime('event_manager_daily_check_stage_3_finalize')
&& !setup.checkEventLocationTime('event_manager_daily_check_stage_4_finalize')
&& !setup.checkEventLocationTime('event_manager_daily_check_stage_5_finalize')
&& $npc_manager.stage != 1
&& $npc_manager.flags.evil != 1>>
<<addEvent 'holiday_dog_manager'>>
<<if $fetish.bestiality_hard && ($npc_barista.stage == 10 || $npc_barista.stage <= 4)>>
<<addWorkEvent 'holiday_dog_cafe'>>
<</if>>
<<set $player.flags.holidays.dog.learn = true>>
<<else>>
<<setRandomEventTime "elevator_in" "holiday_dog" $now>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" _TODOdog>>
<div id="invframe" class="scrolltext">
You step onto the elevator, surprised to find that you are joined not just by another employee, but also what looks to be their pet dog.<br>
<br>
Noticing your curious expression they smile. "@@.generic_male1;It's bring your dog to work day! One of my favourite days every quarter — really wish it could be every day but, alas. Still, it's a great morale boost when it comes up!@@"<br>
<br>
You nod, and continue your ride up to your floor.<br>
<br>
[<<moveTo "room_office_sissy_secretary" 'Head for <<=ps(setup.getNpcName("npc_manager", "formal"))>> office.' 30>>]
</div>/*#
#desc: mention bring your dog to work day to manager
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You've finished your inspection when you remember that encounter on the elevator.<br>
<br>
[<<moveTo "event_dog_work_day_manager_2" 'Ask <<=setup.getNpcName("npc_manager", "formal")>> about "Bring Your Dog to Work Day."' 180>>]<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" 'Just continue back to your desk.' 60>>]
</div>/*#
#desc: mention bring your dog to work day to manager
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager", "formal")>> about "Bring Your Dog to Work Day." <br>
<br>
<<switch $npc_manager.stage>>
<<case 1>>
"@@.npc_manager;Oh, is that today? I suppose I should keep track of those things but, not owning a dog, well... the day matters less to me.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" 'Nothing to do but start working.' 60>>]
<<case 2>>
"@@.npc_manager;Oh, is that today? I suppose I should keep track of those things but, not owning a dog, well... the day matters less to me.@@" She pauses and looks you over. "@@.npc_manager;Hmm... not yet... some other time, I suppose.@@"<br>
<br>
<<printThought "What did she mean by that?">><br>
<br>
She has already disappeared into her office before you can ask anything else.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" 'Nothing to do but start working.' 60>>]
<<case 3>>
"@@.npc_manager;Oh, is it... hmm...@@" She seems to be eyeing you up. "@@.npc_manager;You know, there are some fun events for those who bring a suitable pet that I have not gotten to participate in for quite some time...@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo "event_dog_work_day_manager_3" 'Offer to be <<=ps(setup.getNpcName("npc_manager","formal"))>> "bitch" for the day...' 180 "<<set $scene.bitch=true>>">>]<br>
<</if>>
[<<moveTo "event_dog_work_day_manager_3" 'Offer to be <<=ps(setup.getNpcName("npc_manager","formal"))>> "pet" for the day...' 180 "<<set $scene.bitch=false>>">>]<br>
<<if $npc_technician.relationship.private_games.dog>>
[<<moveTo "event_dog_work_technician_1" 'Ask if you could be <<=ps(setup.getNpcName("npc_technician", "first"))>> "pet" for the day...' 180>>]<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_morning_start" 'Thank <<=setup.getNpcName("npc_manager","formal")>> and get to work.' 60>>]
<<case 4 5>>
"@@.npc_manager;So it is, so it is...@@" She smiles at you. "@@.npc_manager;Well... what do you think? You are already my slave... how do you feel about being my pet, my cute little <<if $fetish.sissy>>sissy <</if>>bitch, for the day?@@"<br>
<br>
[<<moveTo "event_dog_work_day_manager_3" 'Agree to be her "cute little bitch" for the day...' 180 "<<set $scene.offer=true>>">>]<br>
<<if $npc_technician.relationship.private_games.dog>>
[<<moveTo "event_dog_work_technician_1" 'Ask if you could be <<=ps(setup.getNpcName("npc_technician", "first"))>> "pet" for the day...' 180>>]<br>
<</if>>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;You are far too submissive to decline such a duty.@@]
<<else>>
[<<moveTo "event_dog_work_day_manager_3" 'Reply that you have work you really ought to get to.' 60 "<<set $scene.offer=false>>">>]
<</if>>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
</div>/*#
#desc: agree to participate in bring your dog to work day
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_manager.stage>>
<<case 3>>
<<if $scene.bitch>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<case 4 5>>
<<if $scene.offer>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</switch>>
<<if $events.hasOwnProperty('hormones_checkin') && setup.compareDay($now, $events.hormones_checkin.trigger.date)>>
<<if $now.getUTCDay() == 5>>
<<postponeEvent 'hormones_checkin' 3>>
<<elseif $now.getUTCDay() == 4>>
<<postponeEvent 'hormones_checkin' 4>>
<<else>>
<<postponeEvent 'hormones_checkin' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice() >>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.stage>>
<<case 3>>
You offer to be <<=ps(setup.getNpcName("npc_manager", "formal"))>>
<<if $scene.bitch>>
bitch
<<else>>
pet
<</if>>
for the day. She smiles. "@@.npc_manager;My, my — look at you, such submissive enthusiasm!<<if $scene.bitch>> Though... I would say to be careful with such terminology, it is a tad vulgar — remember, you work in a representative position and should comport yourself accordingly.<</if>> As to your offer... why, I accept, of course. Simply a lovely idea. Remove your clothes — we need to get you properly outfitted for the occasion. Come, I have JUST the thing.@@"<br>
<br>
You follow her into her office where she pulls out a pile of pink leather...<br>
<br>
[<<moveTo "event_dog_work_day_manager_4" 'Strip.' 300>>]
<<case 4 5>>
<<if $scene.offer>>
You curtsy and reply that you would be happy to be her <<if $fetish.sissy>>sissy <</if>>bitch for the day.<br>
<br>
"@@.npc_manager;Wonderful — if you would get naked, I have just the outfit for you...@@"<br>
<br>
[<<moveTo "event_dog_work_day_manager_4" 'Strip.' 300>>]
<<elseif $npc_manager.affection > $npc_manager.anger>>
You curtsy in apology and explain that you have quite a bit of work you need to do for her.<br>
<br>
<<=setup.getNpcName("npc_manager", "formal")>> frowns, but nods. "@@.npc_manager;I see, well your primary responsibilities do come first, so I suppose that takes priority over a bit of fun. Very well, I will let you get to work.@@"<br>
<br>
She leaves for her inner office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" 'Sit down and start working.' 60>>]
<<else>>
You reply that you actually have quite a bit of work you were planning on getting through today.<br>
<br>
<<=setup.getNpcName("npc_manager", "formal")>> gaze narrows, you get the feeling that, after your recent behaviour, your refusal is a bit of a last straw. "@@.npc_manager;What makes you think this was an option? You ARE my <<if $fetish.sissy>>sissy <</if>>bitch — enforcing that fact literally as well as figuratively seems very much in order. Now get out of those clothes and let us equip you more appropriately for that role. Come.@@"<br>
<br>
You follow her into her inner office.<br>
<br>
[<<moveTo "event_dog_work_day_manager_4" 'Strip.' 300>>]
<</if>>
<</switch>>
</div>/*#
#desc: get changed into bitchsuit
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.holidays.dog.volunteer = true>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'puppy_pink_copy'>>
<<wearItemSet 'puppy_pink_copy'>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<addItem 'dog_plug_pink'>>
<<wearItem 'dog_plug_pink' true>>
<<applyExperience 'bondage' 16 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<<changeHorny 10>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_manager', 'formal')>> into her office and remove your clothes, including your underwear, before she helps you into the pink-leather bondage contraption that has your knees and elbows bound together to force you onto all fours like a dog. A matching puppy mask is added on top that has you bound AND gagged.<br>
<br>
"@@.npc_manager;And now for the final detail to make a perfect pink <<if $fetish.sissy>>sissy <</if>>puppy.@@" She states, showing you a perky pink tail attached to a large butt-plug, before stuffing it into your rear. "@@.npc_manager;There we go,@@" she adds, giving your plug a wiggle and making you moan through your gag.<br>
<br>
"@@.npc_manager;Tsk, tsk — that is not the sound for a puppy, one moment,@@" she adjusts something with her phone and then smiles down at you, "@@.npc_manager;Now, go on, girl, speak!@@"<br>
<br>
You try to mumble through your gag, only for your sound to be replaced by a recorded "@@.pc;Arf! Arf!@@"<br>
<br>
"@@.npc_manager;Now that is a proper cute pup!@@" She states with a smile. "@@.npc_manager;Come and sit over here next to my feet — one of us still has work to do, unfortunately, but you can keep me company while I keep the world running.@@"<br>
<br>
You crawl across the floor towards her, your tail swinging with every step, which causes your plug to shift erotically. By the time you curl up next to her chair you are more than a little hot and bothered, but utterly helpless to do anything about it.<br>
<br>
"@@.npc_manager;That is a good girl,@@" she states, reaching down to pet you gently. "@@.npc_manager;Thank you for letting me take part in Bring Your Dog to Work Day, but know that just because you will be spending most of the morning lounging around does not mean our fun is yet over...@@"<br>
<br>
You moan in response, which gets turned into a yip of enthusiasm.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> chuckles as she settles down to work.<br>
<br>
<<if $npc_retention.stage >= 3 && $player.virgin.anal && !(State.hasPlayed("event_guard_retention_mission_5") || State.hasPlayed("event_landlord_retention_mission_7"))>>
[<<moveTo "event_dog_work_day_manager_5" 'Continue.' 6000>>]
<<else>>
<<set _lunch = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_dog_work_day_lunch_1" 'Continue.' _timeToLunch>>]
<</if>>
</div>/*#
#desc: npc_retention visits on dog to work day
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 16 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' 10 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_retention") setup.charImageGeneric("npc_retention_assistant","npc_retention_assistant_pup")>>
<div id="invframe" class="scrolltext">
You spend the morning lying at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> feet. Occasionally she reaches down to pat your head, or wiggle your tail, but mostly it's just a leisurely wait as you wonder what "else" she might have planned for you later in the day...<br>
<br>
Despite your tightly bound situation you even start to drift to sleep, only to hear a knock on the door and perk up with curious interest.<br>
<br>
"@@.npc_manager;Welcome!@@" <<=setup.getNpcName('npc_manager', 'formal')>> states in greeting as whoever it is walks into the office — your position behind <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desk means you can't see what's going on without stepping out into view. Though it <<if $npc_retention.fem>>sounds more like boots rather than high heels<<else>>doesn't sound like heels, which makes you think it's probably a man<</if>>.<br>
<br>
"@@.npc_retention;Sorry about being late — your lovely assistant was not there to welcome me in...@@" <<=setup.getNpcName('npc_retention', 'formal')>> replies, confirming your guess.<br>
<br>
"@@.npc_manager;Yes, well, she is fulfilling a different role this morning, come on, <<=$player.first_name>> stop hiding under there and welcome our guests!@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> gently nudges you with her foot and you crawl out to see <<=setup.getNpcName('npc_retention', 'formal')>> standing in the doorway — with <<his npc_retention>> assistant in an outfit very similar to your own obediently at <<his npc_retention>> side.<br>
<br>
"@@.npc_retention;Oh, she is just positively adorable! How about we let the pups loose to blow off some steam while we attend to business?@@"<br>
<br>
<<He npc_retention>> reaches down to unclip the leash from <<his npc_retention>> "pet" — and your counterpart comes bounding towards you.<br>
<br>
[<<moveTo "event_dog_work_day_manager_6" "It's play-time!" 1800 "<<set $scene.play=true>>">>]<br>
[<<moveTo "event_dog_work_day_manager_6" "Offer yourself like a bitch in heat." 1800 "<<set $scene.play=false>>">>]
</div>/*#
#desc: play/sex with npc_retention_assistant_pup
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.play>>
<<set $player.flags.holidays.dog.play = true>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'normal' $SEEN_FRIEND>>
<<set _dexterity = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexterity 'normal' $SEEN_FRIEND>>
<<changeHorny 20>>
<<else>>
<<set $player.flags.holidays.dog.sex = true>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_retention") setup.charImageGeneric("npc_retention_assistant","npc_retention_assistant_pup")>>
<div id="invframe" class="scrolltext">
<<if $scene.play>>
You scramble forward to meet your puppy pal and the two of you spend some time bounding around the office and "wrestling" to the extent that your restricted situation allows.<br>
<br>
After lying around all morning it's actually fun to get "up" and run around. Your outfit presenting some definite challenges even as it serves to put you deeper into the head-space of being a cute and playful pup.<br>
<br>
As you finish another lap of the office you notice that your "friend" is sporting quite the erection between <<his npc_retention_assistant>> legs and, well... to use the proper terminology, you are definitely "in heat." <br>
<br>
[<<moveTo "event_dog_work_day_manager_7" "Hmm... it looks like the meeting is wrapping up?" 300>>]<br>
[<<moveTo "event_dog_work_day_manager_6" "Offer yourself like a bitch in heat." 600 "<<set $scene.play=false>>">>]
<<else>>
Already on all fours you lower your head and raise your "tail" in invitation.<br>
<br>
The pup enthusiastically accepts your offer, skillfully popping your plug free before replacing it with <<his npc_retention_assistant>> <<if $fetish.bestiality_soft>>knotted <</if>><<getWordPenis "npc_retention_assistant">>.<br>
<br>
Your gag-muffled moan gets turned into a low howl as
<<if $fetish.bestiality_soft>>
<<=ps(setup.getNpcName('npc_retention_assistant', 'first'))>> thick knot shows its worth to lock the two of you together
<<else>>
<<=setup.getNpcName('npc_retention_assistant', 'first')>> demonstrates surprising skill in holding onto you without use of <<his npc_retention_assistant>> hands
<</if>>
as <<he npc_retention_assistant>> frantically humps you across the floor.<br>
<br>
You feel <<him npc_retention_assistant>> nut with a howl and join in with your own climax, finally sliding free and flopping onto your belly as <<his npc_retention_assistant>> copious cum leaks out of your rear.<br>
<br>
You glance over to see your two "owners" looking on with varying levels of amusement. <<=setup.getNpcName('npc_retention', 'formal')>> lets out a sharp whistle that has <<=setup.getNpcName('npc_retention_assistant', 'first')>> hurriedly replacing your plug before scrambling back to <<his npc_retention_assistant>> <<if $npc_retention.fem>>mistress'<<else>>master's<</if>> side.<br>
<br>
[<<moveTo "event_dog_work_day_manager_7" 'Continue.' 180>>]
<</if>>
</div>/*#
#desc: play/sex with npc_retention_assistant_pup
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_retention") setup.charImageGeneric("npc_retention_assistant","npc_retention_assistant_pup")>>
<div id="invframe" class="scrolltext">
You catch your breath and look up — it would seem "humans" have concluded their business.<br>
<br>
"@@.npc_retention;Come on, <<boy npc_retention_assistant>>, time to go!@@" <<=setup.getNpcName('npc_retention', 'formal')>> calls out; <<=setup.getNpcName('npc_retention_assistant', 'first')>> scrambling over and rubbing against <<his npc_retention_assistant>> <<if $npc_retention.fem>>mistress'<<else>>master's<</if>> leg until the leash is clipped to <<his npc_retention_assistant>> collar. <<=setup.getNpcName('npc_retention_assistant', 'first')>> falls in obediently at <<his npc_retention_assistant>> <<if $npc_retention.fem>>mistress'<<else>>master's<</if>> heels as they leave the office.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you as she circles back to her chair. "@@.npc_manager;You have fun with your friend? Well come on back over and have a rest — you are going to need that energy for what I have planned for lunch...@@"<br>
<br>
You crawl over and curl up next to her feet.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_dog_work_day_lunch_1" 'Wait for lunch.' _timeToLunch "<<applyFatigue -30>>">>]
</div>/*#
#desc: start lunch
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'leash_pink'>>
<<wearItem 'leash_pink' true>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
At noon sharp <<=setup.getNpcName('npc_manager', 'formal')>> nudges you awake and leans down to clip a leash to your collar.<br>
<br>
"@@.npc_manager;Come, my sweet pet — there is a special lunch event to celebrate today's holiday and, well... I thought it would be just lovely for company morale if the two of us took part.@@"<br>
<br>
Your heart beats a bit faster at the thought that you'll be going out. Well, probably not in PUBLIC, but still, to be seen by others in your bound, <<if $fetish.sissy>>utterly sissified <</if>>pink bitchsuit...<br>
<br>
[<<moveTo "event_dog_work_day_lunch_2" 'Follow <<=setup.getNpcName("npc_manager", "formal")>> to the elevator.' 600>>]
</div>/*#
#desc: lunch dogshow meet and greet
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_2")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> walks a bit slower on account of your restricted movement, but you're soon riding the elevator up to the upper-floor ballroom the company uses to host internal parties.<br>
<br>
You gasp — there are at least a couple dozen employees milling about — each one with a pet dog leashed at their side,
<<if $fetish.bestiality_hard>>
a mix of REAL dogs and other human pups like yourself,
<<else>>
or, rather, a human pup
<</if>>
in costumes ranging from pet ears and a collar to full bitchsuits such as your own.<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> is the first to notice <<=ps(setup.getNpcName('npc_manager', 'formal'))>> arrival — waving the two of you over to join in with the full on pack. She is holding
<<if $fetish.bestiality_hard>>
a dozen leashes; a mix of tightly bound, and blindfolded, human pups, as well as their real canine equivalents as you realise that they have been paired off in matching "breeds."
<<else>>
half a dozen leashes; each human pup dressed to bring to mind a different breed of dog, each one bound, plugged and bitchsuited like yourself.
<</if>>
<br><br>
"@@.npc_discipline;So wonderful to see you here, <<=setup.getNpcName('npc_manager', 'other')>>! You used to be such a staple before...@@" She suddenly gets quiet and there is an awkward silence as you get the feeling she didn't intend to inadvertently bring up your predecessor.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> breaks the silence with a slightly forced smile. "@@.npc_manager;Yes, well, I thought <<=$player.first_name>> could use the experience. I see you have quite the pack with you today, yourself.@@"<br>
<br>
"@@.npc_discipline;Quite,@@" <<=setup.getNpcName('npc_discipline', 'formal')>> replies, obviously eager to keep the conversation moving. "@@.npc_discipline;Of course these six have been in obedience school for over a week now, but how could I pass up the opportunity to show them off?<<if $fetish.bestiality_hard>> — The paired program is such a delight in encouraging obedience... though I fear a few of my subjects will be in for quite the adjustment period when they are forced to go back to a normal alarm clock rather than waking to the pounding of a nice thick knot...<</if>>@@"<br>
<br>
The two women chuckle and chat for a few more minutes before the room goes quiet as someone starts talking over the PA system.<br>
<br>
[<<moveTo "event_dog_work_day_lunch_3" 'Listen.' 900>>]
</div>/*#
#desc: lunch dogshow pre obstacle course
#status: FINISHED 0.8.0.0
#ignore_spell: willkommen
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.generic_female1;Willkommen to another Take Your Dog to Work Day Celebration! Now it is time to show whose pet performs the best with our famous obstacle course! All are welcome, we'll be running the hu-pup's first so join up by division and let's see who has the most nimble pet!@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> smiles, looking down and catching your eye. "@@.npc_discipline;Oh, look, <<=$player.first_name>> wants to enter! Come on, <<=setup.getNpcName('npc_manager', 'first')>> — I know you have that competitive spirit...@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> thinks for a moment and smiles. "@@.npc_manager;Yes... it would be a nice diversion,@@" your thoughts on the matter are converted to a series of barks as you are led off to a row of other pups, taking your place with the other bitch-suit equipped competitors as one of the "less-encumbered" divisions starts making its run. From the size of the field, and being kept for last, you have a feeling that the winner of the bitchsuit division is considered the most "prestigious." <br>
<br>
<<if $npc_manager.affection == 10 && $npc_manager.anger == 0>>
As you wait your turn <<=setup.getNpcName('npc_manager', 'formal')>> stoops down next to you and pets you gently. "@@.npc_manager;Calm, calm — just do your best, I will be proud of you either way, but if you manage to show these others how a perfect pup runs the course well... your <<=setup.getNpcName('npc_manager', 'title')>> will be quite happy.@@"
<<elseif $npc_manager.affection > $npc_manager.anger>>
As you wait your turn <<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you. "@@.npc_manager;Good luck, my pet. Do not pay attention to your competitors, just focus on making the best run you can and, should you win, well... your <<=setup.getNpcName('npc_manager', 'title')>> will be quite happy.@@"
<<else>>
As you wait your turn <<=setup.getNpcName('npc_manager', 'formal')>> looks down at you with a slight sneer in her voice. "@@.npc_manager;You better do your best — you have been slacking off far too much at work — here you have a straightforward opportunity impress. I quite hope you take advantage of it.@@"
<</if>>
<br><br>
Your turn comes up and you look along the course. Given the restrictions of a bitchsuit the definition of "obstacle" is fairly wide, the course more of a zig-zag run, a series of short jumps, and then a sprint up a moderate incline.<br>
<br>
<<set _time = 300 - 2*(setup.getTotalValue("stamina") + 2*setup.getTotalValue("dexterity"))>>
[<<moveTo "event_dog_work_day_lunch_4" 'Your turn to run...' _time>>]
</div>/*#
#desc: lunch dogshow run obstacle course
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'leash_pink' true>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'normal' $SEEN_FRIEND>>
<<set _dexterity = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dexterity 'normal' $SEEN_FRIEND>>
<<applyFatigue 50>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") > 15 && setup.getTotalValue("dexterity") > 15>>
You crawl up to the line and wait for the signal before bounding across the course. Head down, your short limbs pump fast as you race through the zig-zag. Coming to the jumps you don't even slow down, nimbly springing across the short gaps and then digging deep to put on a final burst of speed up the final incline.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
The sound of the crowd falls away, all save one, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> voice cutting through the noise, a final encouragement that sends you almost leaping across the finish-line.<br>
<br>
Reaching the top of the obstacle course you pose for a moment before hands are lifting you up. You look around to realise that it is <<=setup.getNpcName('npc_manager', 'formal')>> helping you down and then clipping your leash back to your collar. Heart swelling with pride,
<<else>>
You race across the finish line and then look around — finding yourself somewhat stuck at the top of the obstacle course, waiting for an organizer to help you back down to the ground and lead you back to <<=setup.getNpcName('npc_manager', 'formal')>>. Forced to hurry to keep up with her,
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 15>>
You get off to a nimble start, but
<<if setup.getTotalValue("stamina") > 10>>
just past the jumping section, your cardio catches up with you; the challenge of breathing through a gag, while moving under all your bondage slowing your ascent of the final segment of the course.
<<elseif setup.getTotalValue("stamina") > 5>>
are forced to take a short breather before the jumping portion — surprised at how exhausting it is to try to operate with this much bondage whilst breathing through a gag.
<<else>>
are panting almost immediately — the combination of bondage and your gag destroying your meagre stamina reserves.
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 10>>
You are able to handle moving in your severe bondage on the flat, and even the concluding incline, but the jumps in the middle almost send you tumbling and you are forced to take things a bit slower lest you "miss-step."
<<elseif setup.getTotalValue("dexterity") > 5>>
Moving in such heavy bondage proves quite the challenge — enough so that from the jumping portion on through the end of the course you are forced to pick your way with care lest you slip and tumble.
<<else>>
Moving in your heavy bondage is a significant challenge, to the point that you are forced to take things slow and methodical, content merely to complete the course without face-planting horribly.
<</if>>
<<if setup.getTotalValue("stamina") > 15>>
Despite your other challenges, your cardio holds up; even the combination of breathing through a gag not enough to leave you particularly winded.
<<elseif setup.getTotalValue("stamina") > 10>>
In addition to your other challenges you find yourself struggling, the combination of breathing through a gag, on top of the other bondage, having you huffing and puffing by the end.
<<elseif setup.getTotalValue("stamina") > 5>>
On top of the rest, you hadn't anticipated just how hard it would be to breathe through a gag under all this bondage.
<<else>>
On top of the rest, the combination of gag and bondage has you gasping for air before you've even partially completed the course..
<</if>>
<</if>>
<br><br>
<<if $npc_manager.affection > $npc_manager.anger>>
At the top of the obstacle course you pose for a moment before hands are lifting you up. You look around to realise that it is <<=setup.getNpcName('npc_manager', 'formal')>> helping you down and then clipping your leash back to your collar. Happy to be back with your owner,
<<else>>
At the top of the obstacle course you pause, trying to catch your breath as you look around and realise that you are somewhat stuck until an organizer helps you down to the ground and leads you back to <<=setup.getNpcName('npc_manager', 'formal')>>. Forced to hurry to keep up with her,
<</if>>
<</if>>
you trot along at her heels as you return to the crowd to watch the remaining competitors.<br>
<br>
[<<moveTo "event_dog_work_day_lunch_5" 'Wait for the victors to be announced.' 600>>]
</div>/*#
#desc: lunch dogshow victor announced
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.affection > $npc_manager.anger && setup.getTotalValue("stamina") >= 20 && setup.getTotalValue("dexterity") >= 20>>
<<set $scene.placement = 1>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<else>>
<<if setup.getTotalValue("stamina") > 15>>
<<set _sum = 3>>
<<elseif setup.getTotalValue("stamina") > 10>>
<<set _sum = 2>>
<<elseif setup.getTotalValue("stamina") > 5>>
<<set _sum = 1>>
<<else>>
<<set _sum = 0>>
<</if>>
<<if setup.getTotalValue("dexterity") > 15>>
<<set _sum += 3>>
<<elseif setup.getTotalValue("dexterity") > 10>>
<<set _sum += 2>>
<<elseif setup.getTotalValue("dexterity") > 5>>
<<set _sum += 1>>
<<else>>
<<set _sum = 0>>
<</if>>
<<set $scene.placement = 8 - _sum>>
<<if $scene.placement < 4>>
<<set _affection = 4-$scene.placement-1>>
<<incrementEmotion 'affection' 'npc_manager' _affection>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<wearItem 'leash_pink' true>>
<<set $player.flags.holidays.dog.race = true>>
<</if>>
<<set $player.location to "Corporate Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You watch the remainder of the field run through, also glancing over at the other "divisions" running their own courses and wait for the winners to be announced.<br>
<br>
<<switch $scene.placement>>
<<case 8>>
Your performance was abysmal, and, looking at the numbers, you realise that you actually came in dead last...<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;Poor dear — today just was not your day. Perhaps you might consider spending a bit more time at the gym, hmm?@@"
<<else>>
"@@.npc_manager;Such a clumsy pup. I recommend you spend some more of your free time at the gym. You work in a representative position and today's performance was... quite disappointing.@@"
<</if>>
<<case 7>>
Your performance was poor — you didn't quite come in last, but you were not much higher.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;Poor dear — today just was not your day. Perhaps you might consider spending a bit more time at the gym, hmm?@@"
<<else>>
"@@.npc_manager;Such a clumsy pup. I recommend you spend some more of your free time at the gym. You work in a representative position and today's performance was... quite disappointing.@@"
<</if>>
<<case 6 5>>
Your finish time puts you solidly in the middle of the pack.<br>
<br>
"@@.npc_manager;A respectable showing, but it would seem you require some more time at the gym could see you claiming victory in the future?@@"
<<case 4>>
Your finish time is just shy of making the podium.<br>
<br>
"@@.npc_manager;It would seem you have something of a talent — perhaps some more time at the gym could see you claiming victory in the future?@@"
<<case 3>>
Your heart beats faster as you realise your run put you in second place! Unfortunately another racer manages to push you back to third, but, still, a podium finish! You enjoy the cheers of the crowd before being returned to your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> looks down at you and smiles. "@@.npc_manager;Well done — a bit more time at the gym and you could well win the whole thing.@@"
<<case 2>>
Your heart beats faster as you realise that you're near the top of the standings! In the end you are narrowly beaten out by another human pup, but you still perch proud in second place, enjoying the cheers of the crowd before being returned to your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> looks down at you with a neutral expression. "@@.npc_manager;So close... perhaps next time.@@"
<<case 1>>
You stride proudly as you are helped to the top of the podium — the day's victor for your division!<br>
<br>
You bask in the applause, but none of it really matters next to the prideful smile of your <<=setup.getNpcName('npc_manager', 'title')>> as she stands behind you, holding your leash.
<<default>>
ERROR: unexpected scene.placement <<=$scene.placement>>
<</switch>>
<br><br>
The end of the competition seems to mark the end of the event as everyone bustles about to get back to work before their lunch break is over.<br>
<br>
[<<moveTo "event_dog_work_day_lunch_6" 'Continue.' 900>>]
</div>/*#
#desc: lunch back to work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.foodDelivery = {"done": true}>>
<<set $player.work.tmpworkPensum += 4*$player.work.bonusReq>>
<<set $player.work.nowWorking = true>>
<<if $scene.placement == 1>>
<<set $player.flags.holidays.dog.win = true>>
<<applyExperience 'submission' 13 'terrible' $SEEN_FRIEND>>
<<applyStress -20>>
<<elseif $scene.placement > 5>>
<<applyExperience 'humiliation' 13 'terrible' $SEEN_FRIEND>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.placement == 1>>
With a proud spring in your step you follow <<=setup.getNpcName('npc_manager', 'formal')>> back to her office where she removes your gag and delicately feeds you a light lunch as a reward.<br>
<br>
Each bite taken from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> fingers, as she smiles at you from her imperious office throne, makes you blush, even moreso as she drops sweet encouragements — talking about how "@@.npc_manager;Proud,@@" you made her, and how you're her "@@.npc_manager;Perfect, sweet <<if $fetish.sissy>>sissy <</if>>girl.@@"<br>
<br>
By the end of the meal you're feeling near bursting with joy, though that is unfortunately dashed a few moments later when she informs you that your morning play is at an end.<br>
<br>
"@@.npc_manager;Alas, half a day is about all that I can spare my wonderful <<if $fetish.sissy>>SISSI<</if>> Secretary — thank you again for a lovely morning, and your perfect performance.@@"<br>
<br>
Flexing your stiff muscles you do the best curtsy you can manage. <<=setup.getNpcName('npc_manager', 'formal')>> gets a call and nods for you to change in front of her before you return to work.
<<elseif $scene.placement > 5>>
Given your poor performance you're a bit nervous about returning to the office, struggling to keep up with <<=setup.getNpcName('npc_manager', 'formal')>> as she storms down the hallway.<br>
<br>
Arriving at the office <<=setup.getNpcName('npc_manager', 'formal')>> removes your gag, and then slams a dog-dish in front of you, pouring a handful of hard dog food into it before glaring down at you.<br>
<br>
"@@.npc_manager;Well? Puppies that fail to perform get kibble, not treats. Now eat up and clean that bowl.@@"<br>
<br>
You try one of the hard nuggets, wrinkling your nose at the bland flavour, but you keep at it, humiliated at being forced to eat like a literal dog with <<=setup.getNpcName('npc_manager', 'formal')>> glaring down the whole time.<br>
<br>
Once lunch is over it seems that play-time is as well, as she removes your outfit and has you change back into "normal" attire before sending you back to work.
<<else>>
You return to the office where <<=setup.getNpcName('npc_manager', 'formal')>> starts helping you out of your leather restraints.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;Sorry, my pet, but your morning fun is over and I need you back to work. Still, it is one of the better Bring Your Dog to Work Days in recent memory, so thank you for that.@@"
<<else>>
"@@.npc_manager;I am afraid that I need you back to work — however disappointing that work has been of late.@@"
<</if>>
<br><br>
She waits for you to gather your clothes and dismisses you with a wave.
<</if>>
<br><br>
You are about to close the door behind when she calls after you a final note. "@@.npc_manager;Oh, and I think we can credit your "work" this morning as quite meeting expectations... even if it was a bit different from your usual office duties.@@"<br>
<br>
You nod and continue to your desk, unsure quite how you feel that "being a near-helpless human puppy" qualifies as your "job." <br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" 'Change and return to your desk.' 60 "<<removeItemSet 'puppy_pink_copy'>><<deleteItemSet 'puppy_pink_copy'>><<removeItem 'dog_plug_pink' true>><<deleteItem 'dog_plug_pink'>><<removeItem 'leash_pink' true>><<deleteItem 'leash_pink'>><<useClothSetPop 'tmp'>><<if $scene.plug>><<wearItem $scene.plug true>><</if>>">>]
</div>/*#
#desc: coffee dog to work event
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
The phone on your desk is ringing. It's <<=setup.getNpcName('npc_manager', 'formal')>>. You answer straightaway.<br>
<br>
"@@.npc_manager;Be a darling and fetch me some coffee. Fresh from the shop, if you please.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 1>>
You hurry to the familiar Coffee Shop 52 where <<=setup.getNpcName('npc_barista', 'nickname')>> greets you with her ever-chipper smile, though she's leaning a bit heavily against the counter.<br>
<br>
"@@.npc_barista;Hiya, <<=$player.first_name>>! I'll get your order in a jif, just taking a bit of a break. As much as I love Take Your Dog to Work Day, well... it has this bitch a bit tuckered out!@@"<br>
<br>
<<printThought "Maybe she volunteers to help walk them during lunch or something?">><br>
<br>
You watch <<=setup.getNpcName('npc_barista', 'nickname')>> pop one of her candies and immediately perk up. Your order, or rather, your <<=ps(setup.getNpcName('npc_manager', 'title'))>> order is ready a few minutes later and you deliver it without further incident.
<<case 2>>
You arrive at Coffee Shop 52 just as it seems that <<=setup.getNpcName('npc_barista', 'nickname')>> is coming back from break.<br>
<br>
With a smile she hands the leash to a handsome retriever to a customer before heading back behind the counter.<br>
<br>
"@@.npc_barista;Hiya, <<=$player.first_name>>! Let me mix you up the usual!@@"<br>
<br>
You nod as the customer and their dog leave with a parting wave.<br>
<br>
<<printThought "Hmm, I guess <<=setup.getNpcName('npc_barista', 'nickname')>> was just doing some dog-walking on her break?">>
<<case 3>>
You hurry to the familiar Coffee Shop 52 and arrive to find the counter un-staffed with a sign saying "servicing a customer, back soon!" <br>
<br>
You're momentarily concerned at the thought of getting in trouble with <<=setup.getNpcName('npc_manager', 'formal')>> for delivering her drink late. You glance around, wondering how long you'll have to wait as you note the couple of other customers in the shop seem unconcerned. A minute later and <<=setup.getNpcName('npc_barista', 'nickname')>> emerges from the storage room, leading a happy-looking great dane on a leash.<br>
<br>
She hands off the leash to a customer with a smile and then hurries back around the counter. Her skirts bounce with each step, but it looks like she's walking a bit bow-legged for some reason.<br>
<br>
<<printThought "Huh, I wonder what that was all about?">><br>
<br>
Back "on the job" <<=setup.getNpcName('npc_barista', 'nickname')>> quickly takes your order and you deliver <<=ps(setup.getNpcName('npc_manager', 'formal'))>> drink without further incident.
<<case 4 5>>
You hurry to the familiar Coffee Shop 52 and arrive to find the counter un-staffed, as you start to read the "servicing a customer, back soon!" note you hear a sound from the supply closet and the unlatched door swings open — revealing <<=setup.getNpcName('npc_barista', 'nickname')>> up against a wall getting railed by a large great dane.<br>
<br>
"@@.npc_barista;I'll be, oh yes, right, MOAN, with you!@@" She calls out as the beast humps her enthusiastically, drool sliding off her slick latex maid's outfit.<br>
<br>
The other customers are unperturbed by the sight as the beast finishes up and <<=setup.getNpcName('npc_barista', 'nickname')>> staggers out, shoving her plug back into place before any more cum can leak out to join the dried evidence on her thighs that this is far from her first fuck of the day.<br>
<br>
"@@.npc_barista;The usual?@@" She says with a smile as she sets to work. "@@.npc_barista;I just love working on Bring Your Dog to Work Day — even if always ends up being a full shift packed with challenges!@@"<br>
<br>
She slams your order on the counter and you thank her for the quick service before making your delivery to <<=setup.getNpcName('npc_manager', 'formal')>> without further incident.
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ask about being npc_technician dog
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if it would be possible for <<=setup.getNpcName('npc_technician', 'first')>> to bring HER dog to work today?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> thinks for a moment and
<<if $npc_technician.flags.evil == 1>>
shakes her head.<br>
<br>
"@@.npc_manager;No... in her current state I do not believe I could trust her with MY cute little bitch.@@"<br>
<br>
[<<moveTo "event_dog_work_day_manager_3" 'Agree to be her "cute little bitch" for the day...' 180 "<<set $scene.offer=true>>">>]<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" 'Thank <<=setup.getNpcName("npc_manager","formal")>> and get to work.' 60>>]
<<elseif $npc_technician.relationship.her_role == 'dom' && State.hasPlayed("event_technician_dom_lesson_2_8") && $player.flags.collar.owner>>
smiles.<br>
<br>
"@@.npc_manager;Oh... that sounds fun... yes, I believe I could spare you for the morning to be in the care of such a... qualified individual.@@" <<=setup.getNpcName("npc_manager","formal")>> eyes twinkle as she leads you to the wardrobe. "@@.npc_manager;Let us get you changed while I summon the lovely <<=setup.getNpcName("npc_technician","other")>>...@@"<br>
<br>
[<<moveTo "event_dog_work_technician_2" "Get changed." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_dog_work_technician_2" "You changed your mind, you'd rather just get to work." 300 "<<set $scene.accept=false>>">>]
<<else>>
shakes her head.
<<if State.hasPlayed("event_technician_dom_lesson_1_10")>>
"@@.npc_manager;Interesting... but no, I do not believe she has demonstrated the skills for that... yet.@@"
<<elseif State.hasPlayed("event_technician_dom_lesson_1_1")>>
"@@.npc_manager;Interesting... but no, I do not believe she has demonstrated the skills for that... yet.@@"
<<elseif $npc_technician.flags.fixed_manager_computer>>
"@@.npc_manager;That nice woman who fixed my computer? No... I hardly know her and a bit of computer skill is hardly sufficient qualification for me to trust someone with your care AND give up your services for the morning both.@@"
<<else>>
"@@.npc_manager;No... I hardly even know who that is, I am not going to trust a stranger and give up your services for the morning both.@@"
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" 'Take a seat at your desk and get to work.' 60>>]
<</if>>
</div>/*#
#desc: get changed into bitchsuit
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'puppy_pink_copy'>>
<<wearItemSet 'puppy_pink_copy'>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<addItem 'dog_plug_pink'>>
<<wearItem 'dog_plug_pink' true>>
<<applyExperience 'bondage' 16 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<<changeHorny 10>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_manager","formal")>> helps you change into the restrictive bitchsuit while she summons <<=setup.getNpcName("npc_technician","first")>>. You wait behind the desk.<br>
<br>
"@@.npc_technician;You had need of me, <<=setup.getNpcName("npc_manager","other")>>?@@" You hear <<=setup.getNpcName("npc_technician","first")>> politely enquire.<br>
<br>
"@@.npc_manager;After a fashion,@@" <<=setup.getNpcName("npc_manager","formal")>> responds. "@@.npc_manager;I note you are not indulging in today's Take Your Dog To Work festivities?@@"<br>
<br>
"@@.npc_technician;No, Ma'am. I am afraid my apartment does not allow pets so... I am quite ill-equipped to participate.@@"<br>
<br>
"@@.npc_manager;I see, well I called you up here to do some work on the upper floors this morning. The usual technician is a bit tied up, literally, so I thought you could fill in. To help you navigate and such, well... I have a sweet pup that is just dying to lend a paw...@@"<br>
<br>
[<<moveTo "event_dog_work_technician_3" "That's your cue..." 120>>]
<<else>>
You change your mind about being <<=ps(setup.getNpcName("npc_technician","first"))>> pet for the morning.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sniffs. "@@.npc_manager;Remembered how much work you have to do? Very well, you should get to it then.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" 'Take a seat at your desk.' 60>>]
<</if>>
</div>/*#
#desc: leashed and start working
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "leash_pink">>
<<wearItem "leash_pink" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You crawl out from behind the desk and <<=setup.getNpcName("npc_technician","first")>> gasps in delight. "@@.npc_technician;Oh <<switch $npc_technician.flags.knowgender>><<case 'female'>>she's<<case 'male'>>he's<<default>>it's<</switch>> so adorable!@@" She eagerly pats her legs for you to come over and you crawl across the room for some encouraging pets and ear scratches. "@@.npc_technician;Oh you're such a good <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>dog<</switch>> yes you are, yes you are!@@"<br>
<br>
You catch a glimpse of <<=setup.getNpcName("npc_manager","formal")>> smiling in amusement and then walking over to hand <<=setup.getNpcName("npc_technician","first")>> a leash that is swiftly clipped to your collar. "@@.npc_manager;Very good, so I will leave you to make the rounds, be sure to come back in time for lunch.@@"<br>
<br>
Beaming with excitement <<=setup.getNpcName("npc_technician","first")>> bows and then gently tugs on your leash "@@.npc_technician;of course, come on, let's go help some users...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> uses her arm computer to start browsing for tickets as you eagerly lead the way out into the hall...<br>
<br>
[<<moveTo "event_dog_work_technician_4" "Time to work!" 3600>>]
</div>/*#
#desc: start working
#status: RELEASED 0.9.1.0
#ignore_spell: d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Upper Floor Private Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_technician") setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;Alright, I haven't spent much time on these upper floors, so how about you lead the way to office 33-D?@@"<br>
<br>
You trot proudly forward as <<=setup.getNpcName("npc_technician","first")>> holds your leash, quickly coming to an office where a frustrated <<man>> is glaring at <<his>> computer.<br>
<br>
"@@.generic_male2;Finally! The damn thing is locked up and I can't get any work done!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> slaps on an artificial smile as she takes a seat behind <<his>> desk "@@.npc_technician;let me just have a look...@@"<br>
<br>
Even from your angle on the floor there's no missing the deluge of porn popups that immediately inundate the screen.<br>
<br>
"@@.npc_technician;You really shouldn't be browsing porn at work,@@" <<=setup.getNpcName("npc_technician","first")>> starts to say before glancing at you and seeming to remember just what sort of company she's working for "@@.npc_technician;... not when the company provides access to a variety of pleasure resources to keep morale high.@@"<br>
<br>
"@@.generic_male2;Yeah? Does your bitch of an assistant count as an available resource? Her lips would feel a lot better wrapped around my cock while you get my computer working again...@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> glances at you, silently checking to see how you want to play this.<br>
<br>
[<<moveTo "event_dog_work_technician_5" "Be a good bitch and suck <<him>> off." 300 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_dog_work_technician_5" "You don't want to do that." 300 "<<set $scene.suck=false>>">>]
</div>/*#
#desc: entertain user
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'oral' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 10 'normal' $SEEN_STRANGER>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "Upper Floor Private Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician") setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
You crawl over to the <<man>> and rise up onto your knees. They grin and unzip their slacks to reveal a juicy cock that is soon stuffed past your gag.<br>
<br>
"@@.generic_male2;Now that's what I call service!@@" They extol as you obediently suck and <<=setup.getNpcName("npc_technician","first")>> taps away efficiently.<br>
<br>
"@@.npc_technician;Of course <<sir>>. Employee satisfaction is the key to a well-run company... and my pet loves her treats.@@"
<<else>>
"@@.npc_technician;I am sorry, <<sir>>, but my pet is still in training and has not earned such a tasty treat. If you would like to seek satisfaction elsewhere I can have your machine back in working order before you return.@@"<br>
<br>
The <<man>> grunts and stalks off as you let out a slight sigh of relief. "@@.npc_technician;Don't worry, my dear,@@" <<=setup.getNpcName("npc_technician","first")>> states as she motions you over and pets your head while she continues to work. "@@.npc_technician;You're mine and mine alone.@@"
<</if>>
<br><br>
Whatever the <<man>> did with <<his>> computer, it's enough to take even the great Tech Wizard a while to resolve... but with a final triumphant click she presents a clean and clear desktop... complete with a folder marked "Safe Porn Links." <br>
<br>
<<if $scene.suck>>
You've already long ago finished the <<man>> off, but they seem content to leave you sucking on their softened member until
<<else>>
With almost perfect timing the <<man>> re-appears, looking a bit more calm, probably thanks to whatever employee they found to get them off.
<</if>>
<<=setup.getNpcName("npc_technician","first")>> motions them over. "@@.npc_technician;So I cleared out all that gunk, and I added some links of safe and ethical porn sites for you to use going forward. Remember, security is everyone's responsibility. Clicking on shady links doesn't just risk your own efforts, but expose the entire corporate network to potential infiltration!@@"<br>
<br>
The <<man>> is only half listening, more in a rush to get the two of you out of the office now that you are of no further use.<br>
<br>
[<<moveTo "event_dog_work_technician_6" "Continue." 300>>]
</div>/*#
#desc: fetch
#status: RELEASED 0.9.1.0
#ignore_spell: frellin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
Back in the hallway <<=setup.getNpcName("npc_technician","first")>> takes a moment to collect herself as she shakes her head. "@@.npc_technician;Frellin' users. Ten credits says someone else is back here within a week de-gunking <<his>> machine again...@@" She shrugs, "@@.npc_technician;oh well, if people were competent I might not have a job... in any case, it's time for a break, come on!@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> pokes around for a couple minutes before finding an empty conference room and leading you inside. She unclips your leash and tosses a dildo across the room. "@@.npc_technician;Go on, <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>dog<</switch>>, fetch!@@"<br>
<br>
[<<moveTo "event_dog_work_technician_7" "Fetch!" 600 "<<set $scene.fetch=true>>">>]<br>
[<<moveTo "event_dog_work_technician_7" "Lay down, instead!" 600 "<<set $scene.fetch=false>>">>]
</div>/*#
#desc: cds coworker
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_technician") setup.charImageGeneric("cds_dude")>>
<div id="invframe" class="scrolltext">
<<if $scene.fetch>>
You bound down to the far end of the conference room as fast as your bonds allow, struggling a bit to manage the dildo with your gag before sucking it halfway down your throat and bouncing back with it flopping about.<br>
<br>
"@@.npc_technician;Good <<switch $npc_technician.flags.knowgender>><<case 'female'>>girl<<case 'male'>>boy<<default>>dog<</switch>>!@@" States as she takes the dildo and pats your head,
<<else>>
You aren't in the mood for fetch and you just sit down as best as your bondage allows. <<=setup.getNpcName("npc_technician","first")>> puts her hands on her hips to theatrically, but playfully, pout at you
<</if>>
just as there's a sound at the door and someone walks in.<br>
<br>
You and <<=setup.getNpcName("npc_technician","first")>> look towards the door to see not just a random coworker, but a <<if $options.fem>>woman<<else>>guy<</if>> you remember from back at CDS. <<He>> stops in surprised recognition. "@@.generic_male1;<<=setup.getNpcName("npc_technician","first")>>? Wow, I thought you were still stuck on the lower floors.@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins, "@@.npc_technician;usually, yeah, I'm stuck down there most days, but there was a staffing shortage so I got sent up here for the day. Oh! Speaking of working up here, you remember <<=$player.first_name>>? They're helping me out!@@" Attention turns to you as your old coworker looks down and then grins.<br>
<br>
"@@.generic_male1;Well, well, I guess someone screwed up! I gotta say, the pay and perks up here are nice but the punishments! Well... I'm a lot more careful than I used to be, I'll tell you that!@@" <<He>> chuckles for a moment before continuing, "@@.generic_male1;speaking of... I actually have this room booked and I need to get ready for a presentation so, as nice as it's been to catch up...@@"<br>
<br>
"@@.npc_technician;Sure, sure.@@" <<=setup.getNpcName("npc_technician","first")>> replies. "@@.npc_technician;We need to get back to it, as well. Good luck with your presentation!@@"<br>
<br>
[<<moveTo "event_dog_work_technician_8" '<<=setup.getNpcName("npc_technician","first")>> takes up your leash and leads you off...' 300>>]
</div>/*#
#desc: finish working
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Upper Floor Bay">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> leads you out of the conference room, the two of you spending the rest of the morning wanding through upper floor bays moving between offices resolving the usual array of minor computer issues without further incident.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_dog_work_technician_9" "Time for lunch?" _timeToLunch>>]
</div>/*#
#desc: return to manager
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
It's lunch-time and <<=setup.getNpcName("npc_technician","first")>> leads you back to <<=ps(setup.getNpcName("npc_manager","formal"))>> office where <<=setup.getNpcName("npc_manager","formal")>> greets the two of you with a welcoming smile.<br>
<br>
"@@.npc_manager;Ah, you're back! And how was the morning, was my sweet little pup behaved and helpful?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> looks down at you with a
<<if $scene.suck && $scene.fetch>>
smile. "@@.npc_technician;Oh, definitely! A real go-getter to help out, and playful too! The perfect mix of work and play!@@"
<<elseif $scene.suck>>
half smile. "@@.npc_technician;Well she was definitely eager to help out...but maybe a bit TOO focused on work rather than embracing the occasion for play.@@"
<<elseif $scene.fetch>>
half smile. "@@.npc_technician;Not so much on the work side, but she was a real morale booster to play with.@@"
<<else>>
slight frown "@@.npc_technician;unfortunately she was a bit show over go. Cute, and a lovely companion... but not much more than that, really.@@"
<</if>>
<br><br>
You look up at <<=setup.getNpcName("npc_manager","formal")>> as you suddenly realise that, like so many things, the morning was a test...<br>
<br>
[<<moveTo "event_dog_work_technician_10" 'Wait for <<=ps(setup.getNpcName("npc_manager","formal"))>> assessment.' 300>>]
</div>/*#
#desc: treat or spanking
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck && $scene.fetch>>
<<=setup.getNpcName("npc_manager","formal")>> smiles, "@@.npc_manager;lovely! It sounds like <<=$player.first_name>> was QUITE the perfect pup.@@" She extends a remote towards <<=setup.getNpcName("npc_technician","first")>>. "@@.npc_manager;If you would like to administer a reward for her efforts?@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Disappointing, I thought I had taught <<=$player.first_name>> better than that...@@" She walks around to her desk to pull out a familiar paddle. "@@.npc_manager;If you would do the honours?@@" She asks, extending the paddle towards <<=setup.getNpcName("npc_technician","first")>>.
<</if>>
<br><br>
<<if $scene.suck && $scene.fetch>>
[<<moveTo "event_dog_work_technician_11" "Accept your reward." 300 "<<set $scene.accept=true>>">>]<br>
<<else>>
[<<moveTo "event_dog_work_technician_11" "Accept your punishment." 300 "<<set $scene.accept=true>>">>]<br>
<</if>>
[<<moveTo "event_dog_work_technician_11" "You don't want this..." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: lunch with manager
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if $scene.suck && $scene.fetch>>
<<playerOrgasm>>
<<applyStress -10>>
<<else>>
<<applyExperience 'bdsm' 9 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $scene.suck && $scene.fetch>>
<<=setup.getNpcName("npc_technician","first")>> grins as she taps a button on the remote and pleasurable vibrations rumble through your body. Intensified by your tight restraints... and the erotic morning, you almost lose balance as your body shudders with a small, but satisfying orgasm. Perhaps even more satisfying is to look up and see your <<=setup.getNpcName("npc_manager","title")>> and your <<=setup.getNpcName("npc_technician","title")>> both smiling down at you with pride.
<<else>>
You dutifully turn and present your rear and <<=setup.getNpcName("npc_technician","first")>> administers a quick trio of whacks with the paddle. She doesn't wield the implement nearly as harshly as <<=setup.getNpcName("npc_manager","formal")>>... but it's enough to make your heart beat a little faster as you reflect on your imperfect behaviour.
<</if>>
<<else>>
You shake your head and <<=setup.getNpcName("npc_technician","first")>> demures.<br>
<br>
<<if $scene.suck && $scene.fetch>>
"@@.npc_technician;As much as <<=$player.first_name>> deserves a reward... I think piling on after the morning's excitement would be a bit much. They still have an afternoon shift to work, after all.@@"
<<else>>
"@@.npc_technician;The responsibilty for failure really falls to me. It would be improper to punish in such a way for what, in any case, was a quite minor infraction.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> raises an eyebrow, but makes no further comment as she puts things back in her desk.
<</if>>
<br><br>
"@@.npc_manager;Before you go, I took the liberty of arranging for lunch.@@" <<=setup.getNpcName("npc_manager","formal")>> states as she places two plates... and a matching food and water bowl on the desk.
<<if $fetish.cum && $npc_technician.relationship.kink_indulge.cum >= 3>>
As you watch, <<=setup.getNpcName("npc_manager","formal")>> pulls off her wet panties... and wrings them out over your bowl. "@@.npc_manager;If you would like to take a moment to season things yourself...@@" She adds with a playful smile.<br>
<br>
Clearly excited, <<=setup.getNpcName("npc_technician","first")>>
<<if $npc_technician.flags.her_caged>>
dangles her caged <<getWordPenis false>> over the bowl and fingers herself until she gasps and drips cum over your meal.
<<else>>
whips out her <<getWordPenis false>> and quickly beats off over your meal.
<</if>>
Girl juices, and girl cum glisten as <<=setup.getNpcName("npc_technician","first")>> places the bowl in front of you<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 3>>... and then follows up by pissing in your water dish<</if>>.
<</if>>
<br><br>
[<<moveTo "event_dog_work_technician_12" "Dig in while the dommes chat." 300>>]
[<<moveTo "event_dog_work_technician_12_abort" "You'd like a normal lunch..." 300>>]
</div>/*#
#desc: lunch with manager
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.foodDelivery = {"done": true}>>
<<set $player.work.tmpworkPensum += 4*$player.work.bonusReq>>
<<set $player.work.nowWorking = true>>
<<removeItemSet 'puppy_pink_copy'>>
<<deleteItemSet 'puppy_pink_copy'>>
<<removeItem 'dog_plug_pink' true>>
<<deleteItem 'dog_plug_pink'>>
<<removeItem 'leash_pink' true>>
<<deleteItem 'leash_pink'>>
<<useClothSetPop 'tmp'>>
<<if $scene.plug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You've been a dog for long enough, and you tap out, <<=setup.getNpcName("npc_technician","first")>> helping you out of the bitchsuit and back into your office clothes.<br>
<br>
After a slightly awkward lunch it's time for the three of you to get back to work, and you embrace with <<=setup.getNpcName("npc_technician","first")>> as she thanks you for the morning fun and heads downstairs while you return to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" 'Get to work.' 60>>]
</div>/*#
#desc: lunch with manager
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<if $fetish.cum && $npc_technician.relationship.kink_indulge.cum >= 3>>
<<applyExperience 'cum' 12 'very' $SEEN_FRIEND>>
<<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 3>>
<<applyExperience 'piss' 12 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $scene.foodDelivery = {"done": true}>>
<<set $player.work.tmpworkPensum += 4*$player.work.bonusReq>>
<<set $player.work.nowWorking = true>>
<<removeItemSet 'puppy_pink_copy'>>
<<deleteItemSet 'puppy_pink_copy'>>
<<removeItem 'dog_plug_pink' true>>
<<deleteItem 'dog_plug_pink'>>
<<removeItem 'leash_pink' true>>
<<deleteItem 'leash_pink'>>
<<useClothSetPop 'tmp'>>
<<if $scene.plug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<if $fetish.cum && $npc_technician.relationship.kink_indulge.cum >= 3>>
You dig in to your "special" food and drink, the saltiness of <<=ps(setup.getNpcName("npc_technician","first"))>> cum accentuating the flavour of <<=setup.getNpcName("npc_manager","formal")>><<if $fetish.piss && $npc_technician.relationship.kink_indulge.piss >= 3>>, all washed down by the bitterness of the piss as you gobble down all that you have been given<</if>>.
<<else>>
You scarf down your meal, making a slight mess as you fully embrace you pup role.
<</if>>
<br><br>
As you eat your two superiors enjoy a more leisurely meal, chatting casually about this and that before the lunch break comes to an end and <<=setup.getNpcName("npc_technician","first")>> kneels down to help you out of the bitchsuit and back into your clothes, the two of you sharing a long embrace before it's time for her to head back downstairs, and you to get caught up at your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" 'Get to work.' 60>>]
</div>/*#
#desc: show up to kennel
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !State.hasPlayed("event_kennel_breeding_1_offer_1") && $npc_evil_nurse.profile && (!State.hasPlayed("event_ai_rescue_mission_6") || State.hasPlayed("event_nursula_return_4") || State.hasPlayed("event_post_destroy_evil_nurse_return_2"))>>
<<initRoom>>
<<moveTo "event_kennel_breeding_1_offer_1">>
<<elseif State.hasPlayed("event_bestiality_group_11") && !State.hasPlayed("event_bestiality_kraken_1")>>
<<initRoom>>
<<moveTo "event_bestiality_kraken_1">>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Feeling that primal urge, are we?@@" <<=setup.getNpcName("npc_manager","formal")>> asks with a raised eyebrow before nodding in permission and dismissing you to head to the kennels.<br>
<br>
You show up for the afternoon shift in the company kennels and the attendant greeting you with a smile.<br>
<br>
[<<moveTo "event_kennel_repeatable_2" "Get changed and work a basic shift." 7200>>]<br>
<<if State.hasPlayed("event_kennel_breeding_1_offer_1") && !State.hasPlayed("event_kennel_breeding_1_offer_4")>>
[<<moveTo "event_kennel_breeding_1_offer_1_alt" "Ask about the study you turned down previously." 600>>]
<<elseif State.hasPlayed("event_kennel_breeding_1_offer_1") && !(State.hasPlayed("event_kennel_breeding_1_offer_5_join") || State.hasPlayed("event_kennel_breeding_1_offer_alt_join"))>>
[<<moveTo "event_kennel_breeding_1_offer_alt_join" "Ask to join the breeding study." 600>>]
<<else>>
<<if State.hasPlayed("event_bestiality_breeding_2_dog_1_3")>>
[<<moveTo "event_bestiality_breeding_2_dog_1_1" "Help gather more data in the basic canine study." 600 "<<set $scene.first=false>>">>]<br>
<</if>>
<<if State.hasPlayed("event_bestiality_breeding_2_dog_1_3")>>
[<<moveTo "event_bestiality_breeding_2_dog_2_1" "Get changed to help gather more data in the advanced canine study." 600 "<<set $scene.first=false>>">>]<br>
<</if>>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_first_3")>>
[<<moveTo "event_bestiality_breeding_3_horse_first_1_alt" "Help gather calibrate things in the preliminary equine study." 600 "<<set $scene.first=false>>">>]<br>
<</if>>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_1_4")>>
[<<moveTo "event_bestiality_breeding_3_horse_1_1" "Help gather more data in the basic equine study." 600 "<<set $scene.first=false>>">>]<br>
<</if>>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_2_1")>>
[<<moveTo "event_bestiality_breeding_3_horse_2_1" "Get changed to help gather more data in the advanced equine study." 600 "<<set $scene.first=false>>">>]<br>
<</if>>
<<if State.hasPlayed("event_kennel_breeding_1_offer_5")>>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_1_4") && !State.hasPlayed("event_bestiality_breeding_3_horse_2_1")>>
[<<moveTo "event_bestiality_breeding_3_horse_2_1" "Participate in the next stage of the breeding study." 600 "<<set $scene.first=true>>">>]<br>
<<elseif State.hasPlayed("event_bestiality_breeding_3_horse_first_3")>>
[<<moveTo "event_bestiality_breeding_3_horse_1_1" "Participate in the next stage of the breeding study." 600>>]<br>
<<elseif State.hasPlayed("event_bestiality_breeding_2_dog_2_5_perfect")>>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_first_1")>>
[<<moveTo "event_bestiality_breeding_3_horse_first_1_alt" "Participate in the next stage of the breeding study." 600>>]<br>
<<else>>
[<<moveTo "event_bestiality_breeding_3_horse_first_1" "Participate in the next stage of the breeding study." 600>>]<br>
<</if>>
<<elseif State.hasPlayed("event_bestiality_breeding_2_dog_1_3") && !State.hasPlayed("event_bestiality_breeding_2_dog_2_1")>>
[<<moveTo "event_bestiality_breeding_2_dog_2_1" "Participate in the next stage of the breeding study." 600 "<<set $scene.first=true>>">>]<br>
<<else>>
[<<moveTo "event_bestiality_breeding_2_dog_1_1" "Participate in the next stage of the breeding study." 600 "<<set $scene.first=true>>">>]<br>
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: work basic shift at kennel
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem 'bitchsuit_black_copy'>>
<<wearItem 'bitchsuit_black_copy' true>>
<<addItem 'ring_gag'>>
<<wearItem 'ring_gag' true>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<applyExperience 'bestiality' 5 'terrible' $ALONE>>
<<applyExperience 'anal' 13 'terrible' $ALONE>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
You are secured in a bitchsuit to serve the many canine companions that the kennel provides daytime accommodations for.<br>
<br>
You do your best to make your doggy friends have a very good afternoon... and they eagerly knot your hard, deep, and repeatedly.
<<if $fetish.cum>>
With thick canine cum leaking down your thigh your
<<else>>
after what feels like far too short a time your
<</if>>
shift is over and you get dressed to return to the office.<br>
<br>
<<if $npc_manager.flags.evil == 2 && !State.hasPlayed("event_rival_bestiality_1")>>
[<<moveTo "event_rival_bestiality_1" 'Sound the kennel keeper out about <<=setup.getNpcName("npc_rival", "formal")>>.' 300 "<<set $scene.from_crate=false>><<removeItem 'bitchsuit_black_copy' true>><<deleteItem 'bitchsuit_black_copy'>><<removeItem 'ring_gag' true>><<deleteItem 'ring_gag'>><<useClothSetPop 'tmp'>>">>]<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Finish the afternoon shift back at your desk." 60 "<<removeItem 'bitchsuit_black_copy' true>><<deleteItem 'bitchsuit_black_copy'>><<removeItem 'ring_gag' true>><<deleteItem 'ring_gag'>><<useClothSetPop 'tmp'>>">>]
</div><<addRandomEvent $randomEvents['elevator_home'] 'breeding_failure_1'>>
<<initRoom>>
<<set _last = $scene.beforetasklocation.last()>>
<<set $scene.beforetasklocation.pop()>>
<<set $now = setup.advanceDate($player, $now, 'seconds', $scene.continueTaskTime)>>
<<moveTo _last>>/*#
#desc: npc_evil_nurse confronts for missing study
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<addRandomEvent $randomEvents['elevator_home'] 'breeding_failure_1'>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_evil_nurse") "elite_guard">>
<div id="invframe" class="scrolltext">
You step into the elevator only to be joined a few floors later by a guard... followed by a smirking <<=setup.getNpcName("npc_evil_nurse","formal")>>.<br>
<br>
"@@.npc_evil_nurse;Well, well, well, look who we have here... are you forgetting something?@@"<br>
<br>
The door to the elevator closes and the car feels suddenly quite small, the guard having moved behind you as <<=setup.getNpcName("npc_evil_nurse","formal")>> stands just a little too close in front of you.<br>
<br>
[<<moveTo "event_breeding_study_fail_2" "You were actually on your way down for another session!" 120 "<<set $scene.excuse=true>>">>]<br>
[<<moveTo "event_breeding_study_fail_2" "You've been really busy with work..." 120 "<<set $scene.excuse=false>>">>]
</div>/*#
#desc: excuse for missing study
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<addItem "wrist_cuffs_steel">>
<<wearItem "wrist_cuffs_steel" true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_evil_nurse") "elite_guard">>
<div id="invframe" class="scrolltext">
<<if $scene.excuse>>
You try to explain that you were on your way to the kennel but <<=setup.getNpcName("npc_evil_nurse","formal")>> cuts you off with a snort.<br>
<br>
"@@.npc_evil_nurse;As if I would believe that lie? The work day is over, you do your shifts in the afternoon... but, on the other hand, I suppose it is not quite a lie...@@"<br>
<br>
<<if $scene.addCollar>>
As she talks the guard surprises you by cuffing your wrists behind your back and wrapping a collar around your neck... followed by <<=setup.getNpcName("npc_evil_nurse","formal")>> clipping a leash to the front.
<<else>>
<<=setup.getNpcName("npc_evil_nurse","formal")>> clips a leash to the front of your collar as the guard behind pulls your wrists into a pair of cuffs.
<</if>>
<br><br>
"@@.npc_evil_nurse;You are on your way to do a shift... a remedial shift. The march of science waits for no woman... and neither do I.@@"
<<else>>
You stutter out an excuse about being too busy at work but <<=setup.getNpcName("npc_evil_nurse","formal")>> rolls her eyes and cuts you off.<br>
<br>
"@@.npc_evil_nurse;Busy? Getting busy is what you should have been doing, no, no, we have already missed out on VALUABLE research opportunities, now we are going to have to work extra HARD, and CRAM in an extra shift to get things back on the RAILS...@@" Her choice of word emphasis taunts you with what's in store,
<<if $scene.addCollar>>
as the guard surprises you by cuffing your wrists behind your back and wrapping a collar around your neck... followed by <<=setup.getNpcName("npc_evil_nurse","formal")>> clipping a leash to the front.
<<else>>
<<=setup.getNpcName("npc_evil_nurse","formal")>> clips a leash to the front of your collar as the guard behind pulls your wrists into a pair of cuffs.
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> swipes her badge to send the elevator down to one of the deepest subterranean floors of the company, you catch a quick flash of the words "Experimental Genetics" as the door open and she jerks you forward.<br>
<br>
[<<moveTo "event_breeding_study_fail_3" "Follow." 300>>]
</div>/*#
#desc: stripped and restrained
#status: RELEASED 0.9.1.0
#ignore_spell: sh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<removeItem 'wrist_cuffs_steel' true>>
<<deleteItem 'wrist_cuffs_steel'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if $scene.addCollar>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem "padded_hogtie">>
<<wearItem "padded_hogtie" true>>
<<applyExperience 'bondage' 12 'terrible' $SEEN_STRANGER>>
<<set $scene.removeChastity = $player.body_ref.vagina && $player.virgin.vagina && setup.checkItemTypeWorn('cage') && !setup.isCage()>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Subterranean Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
With the stern assistance of the guard you are striped naked and suspended in bondage, ankles bound to your thighs in a frog-tie, lips spread wide by a ring gag as you hang in the air.<br>
<br>
Standing over you, <<=setup.getNpcName("npc_evil_nurse","formal")>> dismissed the guard smirks as she grabs one of the chains suspending you from the ceiling, swinging you slightly as she taunts you. "@@.npc_evil_nurse;So your prior failures is now affording you a very SPECIAL opportunity. A bit of an experimental project left over from a bioengineering company that we bought out. There's been some issues with controlling aggression to produce a more sellable product... until then, well... I'm sure they'll enjoy the opportunity to get some relief...@@"<br>
<br>
With that cryptic description she taps a button to send the face-mask sliding back over her face and then she steps back... as several hulking figures step out from the shadows...<br>
<br>
[<<moveTo "event_breeding_study_fail_4" "Oh sh—" 180>>]
</div>/*#
#desc: animal intro
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Subterranean Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" "TODO">>
<div id="invframe" class="scrolltext">
You gasp in surprise as half a dozen of what can only be described as werewolves step into view. Each at least two meters tall, and with a variety of builds from sinewy slenderness to surging musculature they present quite the imposing sight, a feat of genetic engineering you did not even thing was possible... and that's before your gaze slides down to the massive dripping cocks they each sport, shafts like soda cans with grape-fruit sized knots at the base.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> dances out of the way as the werewolves part for what is obviously their leader to step forth. nearly a head taller than his fellows his biceps are larger than your waist, his cock swinging like a bat, massive and perfect as it sways back and forth, coming closer to your helplessly spread hole with each step.<br>
<br>
Restrained as you are you can do nothing but stare in awe at how the light glints from his white teeth, his thick fur somehow complimenting, rather than obscuring the massive muscles beneath. Huge clawed hands wrap around your waist, fingertips meeting to drive home just how small you are in comparison... and then something else drives "home," his massive cock pressing into <<if $player.body_ref.vagina>>your cunt<<else>>your ass<</if>><<if !$player.body_ref.penis>>.<<else>>, his cock
<<switch $player.body.penissize[0]>>
<<case 0 1>>
at least twice as wide as you are long,
<<case 2 3>>
wider than you are long,
<<case 4 5>>
several times larger than even your above-average member,
<<case 6>>
even larger than your own <<if $player.body_ref.knot && $player.body_ref.horsecock>>mythical <<elseif $player.body_ref.horsecock>>equine<<elseif $player.body_ref.knot>>knotted<</if>> member,
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
a true demonstration of the power of nature over humanity.<</if>><br>
<br>
His tip is thick and hot, and your body parts before it like, there can be no resisting something so powerful, so perfect, and you feel your body stretching and rearranging to accommodate as the pack leader takes his due.<br>
<br>
Each thrust is world-changing as your body sways and you mold around him to be a straining sleeve to his bestial might... and then you hear <<=setup.getNpcName("npc_evil_nurse","formal")>>, taunting you from her observation post. "@@.npc_evil_nurse;The lead engineer behind them succumbed to... over-work fatigue before solving the excessive aggression issue... but they really are magnificent creations, and I'm sure you'll be fine... you really should have followed your contract and come to work on time, slut.@@"<br>
<br>
You gasp as, by some miracle beyond anatomy, the knot forces its way into you, the massive cock feeling like it's fucking all the way up between your lungs, hot breath blasting you in the face as the beast drools and begins to thrust, and then throws his head back in a howl as he squeezes your waist down around his member as he jerks off through your flesh... and the rest of the pack moves in, a slender, rangy beast appearing near your face, his glistening rod sliding past your gag...<br>
<br>
[<<moveTo "event_breeding_study_fail_5" "Gulp." 2000>>]
</div>/*#
#desc: gangbang commences
#status: RELEASED 0.9.1.0
#ignore_spell: packmate
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 300>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Subterranean Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" "TODO">>
<div id="invframe" class="scrolltext">
<<if $fetish.cum>>
The pack leader cums so hard and so deep you would swear your belly swells, excess leaking down onto the floor as he steps away, proving his leadership
<<else>>
The pack leader having marked you for the pack, he shows off his leadership
<</if>>
by stepping back to share you out amongst the others. Clawed hands grope as teeth nip and rough tongues tease... and twin werewolves take you from below, <<if $player.body_ref.vagina>>knotting your ass and cunt simultaneously<<else>>double knotting your ass<</if>> as you choke and drool over their packmate ravaging your throat.<br>
<br>
Your nostrils flare<<if $fetish.cum>> and spurt cum <</if>>as you gasp for air, your body shuddering and swinging in suspension as your heart pounds with each thrust.<br>
<br>
"@@.npc_evil_nurse;Oh, they really like you!@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> continues to tease "@@.npc_evil_nurse;I knew you were a slutty little <<if $fetish.sissy>>sissy <</if>>bitch... but this is a whole other level! I can literally see your throat and belly stretching with every thrust! You really are little more than a living cock-sleeve, the perfect test subject...@@"<br>
<br>
You moan, gasping for a brief moment as the cock pops free of your lips<<if $fetish.cum>>, leaking cum and drool<</if>>, but you get barely a moments relief before your cheeks are swelled around a fresh knot, your eyes rolling back as you struggle to remain conscious, cocks thrusting in and out from either direction... as you feel rough tongue teasing <<if $fetish.milking>>and suckling <</if>> on your tits...<br>
<br>
<<if setup.getTotalValue("stamina") >= 20>>
<<if setup.getWillpower() >= 2>>
[<<moveTo "event_breeding_study_fail_6" "Cling to consciousness." 2000 "<<spendWillpower 2>>">>] <<hint $options "Focusing this hard will cost willpower">><br>
<<else>>
[@@.link_locked;This is pushing the limits of even your stamina, and you lack the determination to cling to consciousness.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You lack the endurance to survive.@@]<br>
<</if>>
[<<moveTo "event_breeding_study_fail_fail" "Surrender." 3600>>]
</div>/*#
#desc: pass out in failure
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 1000>>
<<if $scene.addCollar>>
<<removeItem "loose_collar" true>>
<<deleteItem "loose_collar">>
<</if>>
<<removeItem "padded_hogtie" true>>
<<deleteItem "padded_hogtie">>
<<removeAllClothing>>
<<if $scene.removeChastity>>
<<include 'replaceCage_extendSissyomatic'>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
One against a pack is too much, and consciousness slips away as the werewolves howl and growl and ravage.<br>
<br>
You awaken to find yourself back at home, naked and clean and sprawled over your bed, your entire body sore as you roll over, spotting a folded note on the nightstand.<br>
<br>
@@.npc_evil_nurse;Once again you fail to meet expectations. I have scheduled you for another visit to the Kennels, do endeavour to make it in this time... though I dare say the pack has developed a taste, and you are quite the amusement to watch serving their needs.@@<br>
<br>
You shudder<<if $fetish.cum>>, leaking cum down your thigh as you push back to your feet<</if>>, wondering just what you have gotten yourself into, and where it might end, with this "breeding study." <br>
<br>
[<<moveTo "room_bedroom" "Stand up." 120>>]
</div>/*#
#desc: gangbang intensifies
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 300>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Subterranean Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png">>
<div id="invframe" class="scrolltext">
Your body is stuffed, throat straining, <<if $player.body_ref.vagina>>cunt<<else>>ass<</if>> stretching<<if $player.body_ref.penis>> and hard cock flopping<</if>> with each savage thrust as you are intimidated, aroused<<if $fetish.cum>>, and pumped full of bestial cum<<else>>and fucked with savage fury<</if>>. Through it all, past the straining, sweating intensity of three massive cocks and their even thicker knots stretching your horizons, your mind drifts, your senses flitting around at random, focusing on piercing eyes or bared teeth, on the way a furry leg brushes against your thigh... or a claw runs gently down your side. Stretched from within and pressed from without you are the pack's plaything, to be fucked and licked, used hard and long, human frailty shown the power of the wild...<br>
<br>
Your vision is filled with furry beasts circling around, pressed against, and into, your body, their growls and howls of approval weaving together as they compete for who gets to <<if $fetish.cum>>use you as their cum-dump<<else>>sate their hungers<</if>>, the intensity of their efforts occasionally intensified by <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> mocking words. "@@.npc_evil_nurse;Reaching your limit? There's no shame, every one of these beasts was bred for this, it's surprising that a human could survive this long... not that I'm going to call them off! No, they can fuck you into a coma, it's all you deserve for shirking your contract...@@"<br>
<br>
<<printThought "She sounds almost surprised... but maybe it would be easier if I stopped struggling?">><br>
<br>
<<if setup.getWillpower() >= 2>>
[<<moveTo "event_breeding_study_fail_7" "Refuse to succumb." 2000>>]<br>
<<else>>
[@@.link_locked;The only thing holding you together is will... and you've about run out.@@]<br>
<</if>>
[<<moveTo "event_breeding_study_fail_fail" "Give up and let sleep take you." 3600>>]
</div>/*#
#desc: npc_evil_nurse steps in
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Subterranean Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" "TODO" setup.charImage("npc_evil_nurse","npc_evil_nurse_mask")>>
<div id="invframe" class="scrolltext">
Your jaw may be forced open by both gag and cock after hard werewolf cock, but you grit your proverbial teeth and refuse the call of unconsciousness, your body swinging back and forth between the cocks fucking you below and the one you're sucking. <<if $fetish.cum>>As you drip werewolf cum from every orifice you lose<<else>>You've lost <</if>>count of your own orgasms, bouncing from sensation to sensation as you drip and drool, squirt and spurt, little more than an animal yourself as you succumb to primal urges, to be bred, to serve, to be the pack's bitch...<br>
<br>
You haven't heard <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> voice for several minutes, her mocking words having taken on a hint of incredulous annoyance the last you recall... and then she steps into view, the pack parting before her comparatively diminutive form, the slender nurse standing half a meter shorter than the smallest werewolf, and yet seeming to hold all of the power... well, hold the power, and hold the massive artificial <<if $player.body_ref.vagina>>double <</if>><<if $fetish.bestiality_soft>>horse-<</if>>cock that is now protruding from her crotch.<br>
<br>
"@@.npc_evil_nurse;Still with us, bitch?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> taunts, her voice lent the hint of inhumanity filtered through her mask, "@@.npc_evil_nurse;not many can survive the pack... but I certainly will not be sending you home... unfulfilled.@@"<br>
<br>
Planting her feet <<=setup.getNpcName("npc_evil_nurse","formal")>> slams balls-deep into <<if $player.body_ref.vagina>>both of your gaping, well-used holes<<else>>gaping ass<</if>><<if $fetish.cum>>, forcing a flood of cum to spurt out of you as she uses that same cum as lube to pound <<else>> as she pounds you<</if>> like a jackhammer.<br>
<br>
You don't know how it's possible, but she fucks you even more savagely than the beasts, slamming into you with more force than even the massive pack leader... perhaps because unlike the seemingly savage pack, <<=setup.getNpcName("npc_evil_nurse","formal")>> doesn't seem to care about you, her faceless mask staring down as she seems to take out her frustration on your body, throwing her entire weight behind every thrust as she fucks and fucks and...<br>
<br>
[<<moveTo "event_breeding_study_fail_8" "It's finally too much." 3600>>]
</div>/*#
#desc: pass out and finish
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<if $scene.addCollar>>
<<removeItem "loose_collar" true>>
<<deleteItem "loose_collar">>
<</if>>
<<removeItem "padded_hogtie" true>>
<<deleteItem "padded_hogtie">>
<<if $scene.removeChastity>>
<<include 'replaceCage_extendSissyomatic'>>
<</if>>
<<useClothSetPop 'tmp'>>
<<include "scheduleBreedingStudy">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Subterranean Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_evil_nurse","npc_evil_nurse_mask") setup.charImage("npc_work","npc_work_cleaners")>>
<div id="invframe" class="scrolltext">
You wake up in a drooling pool<<if $fetish.cum>> of werewolf cum<</if>>, cold water blasting you clean thanks to a latex-clad worker. Though she remains masked, you can feel <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> sneer as she stares down at you.<br>
<br>
"@@.npc_evil_nurse;Congratulations on being the first to satisfy the pack, some of my colleagues were begining to think such was impossible for a single slut to manage... but as poor as you may be at hewing to commitments, it seems the depths of your depravity are almost infinite...@@" she pauses for a moment to finish with a triumphant "@@.npc_evil_nurse;... ALMOST@@" in reminder that, though you sated the beasts, <<=setup.getNpcName("npc_evil_nurse","formal")>> fucked and finished you off.<br>
<br>
"@@.npc_evil_nurse;I will expect to see you back at the kennels soon. As entertaining as this diversion may have been the original study remains, and our investigations must be brought to completion.@@"<br>
<br>
Gag removed, you can barely close your jaw, every bone, muscle, organ, and orifice sore from your ordeal as you are hosed clean, blown dry and helped back into your outfit to be sent home...<br>
<br>
Barely able to stand you ride the elevator up, exhausted, overwhelmed<<if $fetish.cum>>... and still leaking cum<<if setup.checkItemTypeWorn("plug")>> despite the efforts of the plug that has been shoved back into your well-used ass<</if>><</if>>.<br>
<br>
[<<moveTo "room_citymap" "Stagger through the lobby." 300>>]
</div>/*#
#desc: offered alt shift at kennel
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.get_raped>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem "medical_leash">>
<<wearItem "medical_leash" true>>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You arrive at the kennels to lend a hand, and your holes, for an afternoon shift only to run into <<=setup.getNpcName('npc_evil_nurse', 'formal')>> waiting at the check-in desk.<br>
<br>
A shiver runs down your spine at the sight of the sadistic nurse, but she does not appear to recognise you, which you suppose makes sense, given that your prior encounters have been with you thoroughly hooded.<br>
<br>
<<if $fetish.get_raped>>
"@@.npc_evil_nurse;You're late.@@" She states with annoyance<<if $scene.addCollar>> wrapping a collar around your neck and leading you off by a leash<<else>>clipping a leash to your collar and leading you off<</if>>. "@@.npc_evil_nurse;I really should punish your tardiness,@@" she states as she leads you into the kennel's back rooms, "@@.npc_evil_nurse;but that same tardiness means we have not the time!@@"<br>
<br>
[<<moveTo "event_kennel_breeding_1_offer_2" "Just go with the flow." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_kennel_breeding_1_offer_2" "Explain there's been some sort of mistake." 600 "<<set $scene.accept=false>>">>]
<<else>>
<<=setup.getNpcName('npc_evil_nurse', 'formal')>> appears annoyed, but attempts to conjure a smile as she addresses you. "@@.npc_evil_nurse;Looking to do some work? I do not suppose you would be willing to accept an alternate shift and help with a scientific investigation. It seems the candidate I was originally to meet here today is unavailable... but you look like you could fill in...@@"<br>
<br>
[<<moveTo "event_kennel_breeding_1_offer_2" "You're always happy to help." 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_kennel_breeding_1_offer_2" "You'd rather not." 600 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: re-offer alt shift at kennel
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem "medical_leash">>
<<wearItem "medical_leash" true>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You ask about the investigation that had been previously proposed and the attendant quickly summons <<=setup.getNpcName('npc_evil_nurse', 'formal')>> "@@.npc_evil_nurse;finally ready to do your part? Lovely.@@" She states as she <<if $scene.addCollar>> wraps a collar around your neck and leads you off by a leash<<else>>clips a leash to your collar and leads you off<</if>>.<br>
<br>
You follow <<=setup.getNpcName('npc_evil_nurse', 'formal')>> into a private room where she has you strip and then efficiently binds you in a set of stocks, on your knees, bent forward, a gag<<if $fetish.drugs>> connected to a feeding tube<</if>> keeping you silent.<br>
<br>
[<<moveTo "event_kennel_breeding_1_offer_3" "What sort of test is this?" 7200>>]
</div>/*#
#desc: offered alt shift at kennel
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$fetish.get_raped && $scene.accept>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.addCollar = !setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem "medical_leash">>
<<wearItem "medical_leash" true>>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<if $fetish.get_raped>>
<<if $scene.accept>>
Noting the evil gleam in <<=ps(setup.getNpcName('npc_evil_nurse', 'formal'))>> eyes you decide that obedience will lead to less trouble that likely futile resistance. Even with you following dutifully after <<=setup.getNpcName('npc_evil_nurse', 'formal')>> jerks the leash hard
<<else>>
You try to object that <<=setup.getNpcName('npc_evil_nurse', 'formal')>> must have made a mistake but she jerks your leash, almost pulling you off-balance before she glares you in the face. "@@.npc_evil_nurse;I do not make mistakes, now shut up, bitch, or I will find something far less pleasant to use you for.@@"<br>
<br>
She spins in place, impeccably balanced in her steep heels
<</if>>
as she drags you forward into one of the kennel's back rooms.
<<else>>
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName('npc_evil_nurse', 'formal'))>> and she grins, <<if $scene.addCollar>> wrapping a collar around your neck and leading you off by a leash<<else>>clipping a leash to your collar and leading you off<</if>>.
<<else>>
You decline <<=ps(setup.getNpcName('npc_evil_nurse', 'formal'))>> offer and she frowns. There is a tense moment as you worry she is about to press the issue in some manner, but instead she merely dismisses you in a huff. "@@.npc_evil_nurse;In that case, get out of here, I do not want you getting in the way while I am working.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Head back to your desk and work normally." 300>>]
<</if>>
<</if>>
<br><br>
<<if $fetish.get_raped || $scene.accept>>
You follow <<=setup.getNpcName('npc_evil_nurse', 'formal')>> into a private room where she has you strip and then efficiently binds you in a set of stocks, on your knees, bent forward, a gag<<if $fetish.drugs>> connected to a feeding tube<</if>> keeping you silent.<br>
<br>
[<<moveTo "event_kennel_breeding_1_offer_3" "What sort of test is this?" 7200>>]
<</if>>
</div>/*#
#desc: alt shift at kennel: restrained gangbang
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "medical_leash" true>>
<<deleteItem "medical_leash">>
<<set $scene.removeChastity = $player.body_ref.vagina && $player.virgin.vagina && setup.checkItemTypeWorn('cage') && !setup.isCage()>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<applyFatigue 200>>
<<applyExperience 'bondage' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdogs>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_evil_nurse', 'formal')>> grins as she triple-checks the straps<<if $fetish.drugs>> and starts the drugs flowing, you immediately start to feel calm, relaxed... and incredibly aroused<</if>>.<br>
<br>
"@@.npc_evil_nurse;So the overall study is on ways to enhance the effectiveness of cross-species breeding. We'll be getting to more involved situations in the future but, for today, we're just going to establish a baseline. A nice HARD baseline.@@" She adds as you hear the sound of a door opening and a large dog trots out and up to you.<br>
<br>
You gasp as he licks between your legs and <<=setup.getNpcName('npc_evil_nurse', 'formal')>> chuckles. "@@.npc_evil_nurse;Such a slut. Well, I'll leave you to work.@@"<br>
<br>
As if on cue the dog mounts you from behind, knot swelling inside your <<if $player.body_ref.vagina && $player.virgin.vagina>>cunt<<else>>ass<</if>> as the dog begins humping enthusiastically and <<=setup.getNpcName('npc_evil_nurse', 'formal')>> strides away.<br>
<br>
Bound, gagged,<<if $fetish.drugs>> drugged,<</if>> and hydrated by your gag, you endure as dog after dog takes you from behind, <<if $player.body_ref.vagina && $player.virgin.vagina>>switching off between ass and cunt at random until both of your holes are stretched<<if $fetish.cum>>, used, and dripping with cum<<else>>and used<</if>><<else>>pounding your ass relentlessly<<if $fetish.cum>> until you are overflowing with cum<</if>><</if>>.<br>
<br>
On what has to be the third time around through the pack you're nearing the point of exhaustion when <<=setup.getNpcName('npc_evil_nurse', 'formal')>> strides back into the room.<br>
<br>
[<<moveTo "event_kennel_breeding_1_offer_4" "Look up as you continue to get fucked." 600>>]
</div>/*#
#desc: sign contract for alt shift
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -100>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") _TODOdog>>
<div id="invframe" class="scrolltext">
You still have a dog knotted deep in your<<if $fetish.cum>> cum-filled<</if>> <<if $player.body_ref.vagina && $player.virgin.vagina>>cunt<<else>>ass<</if>> pumping away as <<=setup.getNpcName('npc_evil_nurse', 'formal')>> adjusts your feeding tube and you feel a surge of energy.<br>
<br>
"@@.npc_evil_nurse;There we go, you're doing so well! Normally for your first time I would have been back to free you an hour ago... but I thought you could take a bit more... and it seems I was right! You really are a breedable bitch, <<if $scene.accept>>and that is why I am proud to offer you further participation in the study... if you would just sign this contract?<<else>>which brings us to a bit of a problem...<</if>>@@"<br>
<br>
<<if $scene.accept>>
She smiles down as you continue to be fucked, contract in hand.
<<else>>
Your response is a reflexive moan as the dog in your ass nuts... and then starts humping harder, your entire bound body shaking with his vigorous enthusiasm as <<=setup.getNpcName('npc_evil_nurse', 'formal')>> grins cruelly down. "@@.npc_evil_nurse;So it turns out that you actually are here by mistake, <<if $scene.accept>>you really should have said something.<<else>>who knew!<</if>> Fortunately we can sort this all out by you signing the contract, it's just a date, rather than a time so nobody would be able to prove that we started before you signed the contract to take full part in the study... of course if you aren't willing to sign then this whole thing is off the books and I might as well just disappear you down to the asylum. So, what'll it be... sign away a little freedom and I let you go... or be a permanent stubborn breeding slave?@@"
<</if>>
<br><br>
It's hard to focus on the paperwork in front of you as your body rocks with every hard thrust from behind, but you make out details submitting to monthly "sessions," an all-encompassing NDA... and something about incentives to recruit others into the study.<br>
<br>
[<<moveTo "event_kennel_breeding_1_offer_5" "Sign." 300 "<<set $scene.sign=true>>">>]<br>
[<<moveTo "event_kennel_breeding_1_offer_5" "Refuse to sign." 300 "<<set $scene.sign=false>>">>]
</div>/*#
#desc: sign contract for alt shift
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<if $scene.sign || $fetish.get_raped>>
<<include "scheduleBreedingStudy">>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") _TODOdog>>
<div id="invframe" class="scrolltext">
<<if $scene.sign>>
<<if $fetish.get_raped>>
As if you had a choice, you
<<else>>
You
<</if>>
extend your hand as far as your bonds allow as <<=setup.getNpcName('npc_evil_nurse', 'formal')>> brings the tablet in range for you to sign. "@@.npc_evil_nurse;Wonderful! So I will just write you in for four weeks from today... though you are certainly welcome to... get ahead of things earlier, if you have the time... that said, I do believe we have gotten all the data we are going to get today...@@"
<<elseif $fetish.get_raped>>
You try to shake your head but <<=setup.getNpcName('npc_evil_nurse', 'formal')>> just laughs, moving to tablet in front of your bound hand and wiggling it around to force you to scrawl out something resembling a signature. "@@.npc_evil_nurse;Good enough for corporate work!@@" She laughs at you groan of despair. "@@.npc_evil_nurse;Like you had a choice! You are far too promising of a subject to let out of my grasp... that said, I do not think we are going to get any more data today.@@"
<<else>>
You shake your head and <<=setup.getNpcName('npc_evil_nurse', 'formal')>> sighs. "@@.npc_evil_nurse;Quite frustrating... and such a loss for science! Speaking of, I do not believe we are going to get any more data today.@@"
<</if>>
<br><br>
She chuckles in amusement and whistles, the dog finally retracting from your <<if $player.body_ref.vagina && $player.virgin.vagina>>cunt<<else>>ass<</if>>. Your canine friend trots away as <<=setup.getNpcName('npc_evil_nurse', 'formal')>> whistles to herself, first hosing you off before freeing you from your predicament and leading you back out to a changing room.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Put on your clothes and return to your desk." 300 "<<if $scene.addCollar>><<removeItem 'loose_collar' true>><<deleteItem 'loose_collar'>><</if>><<if $scene.removeChastity>><<include 'replaceCage_extendSissyomatic'>><</if>><<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: re-sign contract for alt shift
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "scheduleBreedingStudy">>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
You ask about continued participation in the breeding study you previously turned down and the attendant smiles. "@@.generic_female1;Of course! <<=setup.getNpcName('npc_evil_nurse', 'formal')>> is always welcoming more participants... if you would just sign here we'll get you back on the schedule!@@"<br>
<br>
You sign as requested and the attendant smiles... though there's something in her eye... relief? You have a sneaking suspicion that she's afraid of <<=setup.getNpcName('npc_evil_nurse', 'formal')>>... which is certainly an understandable fear.<br>
<br>
"@@.generic_female1;Now that that's out of the way... are you ready to jump back in?@@"<br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_1_1" "Help gather more data in the basic canine study." 600 "<<set $scene.first=false>>">>]<br>
[<<moveTo "event_kennel_repeatable_2" "Get changed and work a basic shift." 7200>>]<br>
</div><<if !State.hasPlayed("event_bestiality_group_11")>>
<<set _nextDate = setup.setNextDate($now, 28, 22, 0)>>
<<addTaskById "breeding_study" _nextDate>>
<</if>>/*#
#desc: dog breeding study 2 equipped
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'bondage' 12 'terrible' $SEEN_STRANGER>>
<<set $scene.removeChastity = $player.body_ref.vagina && $player.virgin.vagina && setup.checkItemTypeWorn('cage') && !setup.isCage()>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You ask about continuing your participation in <<=setup.getNpcName("npc_evil_nurse","formal")>> appears a few minutes later sporting an evil grin as she leads you into the same back room and begins strapping you to the familiar apparatus.<br>
<br>
"@@.npc_evil_nurse;So wonderful of you to return to us,@@" she notes are you are stripped and secured... though not gagged. "@@.npc_evil_nurse;The biology of cross-species breeding is quite simple, but it is the psychology of it, of how to maximise the interest of beast... well, that is the trick. At this point precision is less important than potency, so prepare to be knotted hard in <<if $player.body_ref.vagina && $player.virgin.vagina>>all three<<else>>both<</if>> holes. The goal of this stage is to be able to on-command induce unrestrained breeding instincts.@@" She winks as she runs a hand over your tight bondage. "@@.npc_evil_nurse;Unrestrained for them, for you, well... this apparatus is for your own safety, and to limit the number of variables. If everything is working they should be drawn to fucking you on first scent, can't have you messing the data with body language... or risking injury thrashing around while double-knotted!@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> laughs as she walks away, leaving you as a bound offering as additional doors open and a pair of large dogs step into the chamber...<br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_1_2" "Engage breeding protocols..." 3600>>]
</div>/*#
#desc: dog breeding study 2 bred
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -100>>
<<applyExperience 'bestiality' 5 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'cum' 5 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<div id="invframe" class="scrolltext">
Upon entering the chamber the dogs sprint towards you, a short jockeying for position delaying the festivities only slightly before the alpha takes you from behind while the barely smaller other hound settles for forcing his knot past your lips as he fucks your throat.<br>
<br>
<<if $fetish.drugs>>
You groan, straining with each bestial thrust as you feel the monitoring cuff on your arm tighten and inject you with drugs, your own arousal spiking as the first dog finishes.
<<else>>
He may have lost the battle for prime position, but the dog on your throat is the first to finish.
<</if>>
<<if $fetish.cum>>
Your cheeks swell as a thick, salty load of canine cum is pumped into your mouth
<<else>>
You
<</if>>
gasp and drool for the short moments between when the first beast steps away... and another eagerly rushes in, your eyes rolling back as the hard, hot cock jams past your lips, your entire body tensing to push the one in your <<if $player.body_ref.vagina && $player.virgin.vagina>>cunt<<else>>ass<</if>> over the edge<<if $fetish.cum>> and leave you leaking from both ends<</if>>.<br>
<br>
Bound tight,<<if $fetish.drugs>> and drugged to remain wet, aroused and alert,<</if>> you are the focal point as dog after dog uses you in <<if $player.body_ref.vagina && $player.virgin.vagina>>all three<<else>>both<</if>> holes, some animals seeming to have particular preference, with others competing for your prime <<if $player.body_ref.vagina && $player.virgin.vagina>>puss<<else>>ass<</if>>.<br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_1_3" 'Keep "working."' 3600>>]
</div>/*#
#desc: dog breeding study 2 bred
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -100>>
<<include "scheduleBreedingStudy">>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<if $fetish.drugs>>
Even with the help of drugs you
<<else>>
You
<</if>>
almost pass out from the combination of sucking and fucking dozens of thick canine cocks by the time <<=setup.getNpcName("npc_evil_nurse","formal")>> returns to bring an end to the day's experiment.<br>
<br>
"@@.npc_evil_nurse;Not bad, bitch.@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> remarks as she releases your restraints and you slump exhausted to the floor<<if $fetish.cum>> in a pool of drool and dog semen<</if>>. "@@.npc_evil_nurse;They never said science wasn't a bit dirty, but you smell positively rank! You better shower up before you get back to work! I'll mark down today's contribution, but I expect you back again within a month... if you can even resist that long without getting dog-<<if $fetish.get_raped>>raped<<else>>fucked<</if>>!@@"<br>
<br>
She laughs at your embarrassment as you slide around a bit before managing to get back to your feet, stumbling into a changing room and washing up before collecting your clothes.<br>
<br>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_2_5_perfect") && !State.hasPlayed("event_bestiality_recruit_1")>>
[<<moveTo "event_bestiality_recruit_1" "Put on your clothes and return to your desk." 60 "<<if $scene.removeChastity>><<include 'replaceCage_extendSissyomatic'>><</if>><<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Put on your clothes and return to your desk." 300 "<<if $scene.removeChastity>><<include 'replaceCage_extendSissyomatic'>><</if>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: dog breeding study 2 equipped
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem 'bitchsuit_black_copy'>>
<<wearItem 'bitchsuit_black_copy' true>>
<<addItem 'ring_gag'>>
<<wearItem 'ring_gag' true>>
<<set $scene.dogs = {
"husky" : "idle",
"rottweiler" : "idle",
"wolf_pair" : "idle",
"german_shepherd" : "idle",
"great_dane" : "idle"
}>>
<<set $scene.endTime = setup.advanceDate($player, $now, 'minutes', 120)>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You request another run at the breeding study and, again, <<=setup.getNpcName("npc_evil_nurse","formal")>> appears to whisk you into the back room... though this time she has you strip before handing you a familiar bitchsuit.<br>
<br>
"@@.npc_evil_nurse;Our prior investigations have calibrated what sort of limits the human body can handle when it comes to cross-species breeding, but now it is time to get a bit more refined. As effective as they are, aphrodisiacs are something of a crutch, and we want to get a better understanding of, behaviorally, how to optimise a successful breeding. Your outfit will put you on the appropriate level and we will be watching and recording to see how you manage to attract attention without nothing but you own wits to rely on...@@"<br>
<br>
A shiver goes down your spine as <<=setup.getNpcName("npc_evil_nurse","formal")>> finishes zipping you helplessly into the bitchsuit, and then leads you crawling out of the changing room and into a pen where at least a half-dozen dogs are milling around...<br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_2" 'Look around.' 300>>]
</div>/*#
#desc: dog breeding study 2 look around
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.secondsToDate($now,$scene.endTime) <= 0>>
<<initRoom>>
<<moveTo "event_bestiality_breeding_2_dog_2_5">>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdogs>>
<div id="invframe" class="scrolltext">
You look around the large pen, there are about half a dozen dogs laying about...<br>
<br>
<<switch $scene.dogs.husky>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_2_dog_2_3" 'Approach the Husky lounging on a sled.' 60 "<<set $scene.dogs.dog='husky'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress the Husky and he is now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred with the Husky and he is naping contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.dogs.husky <<=$scene.dogs.husky>>
<</switch>>
<<switch $scene.dogs.rottweiler>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_2_dog_2_3" 'Approach the Rottweiler.' 60 "<<set $scene.dogs.dog='rottweiler'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress the Rottweiler and he is now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred with the Rottweiler and he is naping contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.dogs.rottweiler <<=$scene.dogs.rottweiler>>
<</switch>>
<<switch $scene.dogs.wolf_pair>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_2_dog_2_3" 'Approach the pair of identical large Timber Wolves.' 60 "<<set $scene.dogs.dog='wolf_pair'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress the Timber Wolves and they are now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred by the Timber Wolves and they are naping contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.dogs.wolf_pair <<=$scene.dogs.wolf_pair>>
<</switch>>
<<switch $scene.dogs.german_shepherd>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_2_dog_2_3" 'Approach the German Shepherd.' 60 "<<set $scene.dogs.dog='german_shepherd'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress German Shepherd and he is now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred with the German Shepherd and he is naping contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.dogs.german_shepherd <<=$scene.dogs.german_shepherd>>
<</switch>>
<<switch $scene.dogs.great_dane>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_2_dog_2_3" 'Approach the gigantic Great Dane.' 60 "<<set $scene.dogs.dog='great_dane'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress the Great Dane and he is now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred with the Great Dane and he is naping contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.dogs.great_dane <<=$scene.dogs.great_dane>>
<</switch>>
<<set _timeToEnd = setup.secondsToDate($now,$scene.endTime)>>
[<<moveTo "event_bestiality_breeding_2_dog_2_5" 'Sit and wait for the test to end.' _timeToEnd>>]
</div>/*#
#desc: dog breeding study 2 approach dog
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.dogs.dog>>
<<case "husky">>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<<case "rottweiler">>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<<case "wolf_pair">>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<<case "german_shepherd">>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<<case "great_dane">>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.dogs.dog>>
<<case "husky">>
You approach the Husky lounging atop a sled. He looks at you, and then at the simple harness connected to the front of the sled... and then to the other side of the room...<br>
<br>
<<printThought "Is he expecting me to... drag him around?">><br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_4_husky" 'Harness up and drag him to the other side of the room.' 300>>]<br>
<<case "rottweiler">>
You approach the Rottweiler and it rises to its feet, staring at you with obvious aggression.<br>
<br>
<<printThought "Is he looking for a fight?">><br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_4_rottweiler" 'Challenge it to a fight.' 300 "<<set $scene.dogs.action=true>>">>]<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_4_rottweiler" 'Demonstrate your submission.' 300 "<<set $scene.dogs.action=false>>">>]<br>
<<case "wolf_pair">>
You approach the two large wolves, from their stance and position in the room the obvious alphas of this eclectic "pack." Coming closer you realise that what you at first thought were twins are actually a male and female pair... though they both sport massive knotted cocks. After looking at you they look across the room as if surveying the rest of their pack.<br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_4_wolf_pair" 'Offer yourself.' 300>>]<br>
<<case "german_shepherd">>
You approach the German Shepherd and its ears perk up as it shifts slightly to its side, presenting its hard, glistening cock and the throbbing knot at its base.<br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_4_german_shepherd" 'Start licking.' 300 "<<set $scene.dogs.action=true>>">>]<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_4_german_shepherd" 'Turn around and wiggle your rear.' 300 "<<set $scene.dogs.action=false>>">>]<br>
<<case "great_dane">>
You approach the Great Dane, a massive specimen of even that normally large breed. His large cock dangles ominously, as if challenging your capacity...<br>
<br>
<<printThought "Look at the size of that thing!">><br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_4_great_dane" 'Offer your ass.' 300 "<<set $scene.dogs.action=true>>">>]<br>
<<if $player.body_ref.vagina && $player.virgin.vagina>>
[<<moveTo "event_bestiality_breeding_2_dog_2_4_great_dane" 'Present your cunt.' 300 "<<set $scene.dogs.action=false>>">>]<br>
<</if>>
<<default>>
ERROR: unexpected scene.dogs.dog <<=$scene.dogs.dog>>
<</switch>>
[<<moveTo "event_bestiality_breeding_2_dog_2_2" 'Retreat and consider your options.' 60>>]<br>
<<set _timeToEnd = setup.secondsToDate($now,$scene.endTime)>>
[<<moveTo "event_bestiality_breeding_2_dog_2_5" 'Sit and wait.' _timeToEnd>>]
</div>/*#
#desc: dog breeding study 2 entertain husky
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = setup.getTotalValue("strength") > 15 && setup.getTotalValue("stamina") > 15>>
<<applyExperience 'strength' 15 'normal' $ALONE>>
<<applyExperience 'stamina' 15 'normal' $ALONE>>
<<applyExperience 'humiliation' 13 'terrible' $ALONE>>
<<if $scene.success>>
<<applyExperience 'anal' 10 'normal' $ALONE>>
<<applyExperience 'bestiality' 5 'normal' $ALONE>>
<<set $scene.dogs.husky = "satisfied">>
<<else>>
<<set $scene.dogs.husky = "failed">>
<</if>>
<<applyFatigue 100>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<div id="invframe" class="scrolltext">
It takes a bit of effort to crawl into the harness, given the restrictions of your bitchsuit, but you eventually manage, burning with humiliation at what you must look like to the scientists monitoring things as you debase yourself before the bored-looking dog.<br>
<br>
You lean into the harness and
<<if $scene.success>>
crawl slowly forward. Low to the ground on elbows and knees your leverage is shot... but you're strong enough to overcome this disadvantage as you crawl forward, draging the sled across the room and managing to pickup some speed.<br>
<br>
Your bound position keeps you from looking anywhere but down or forward, and you focus on your destination, your heart pumping with each short, crawling step as you press onward, eventually reaching your goal and all but collapsing forward... only to see a shadow loom over you, the only warning before the Husky rewards you by pounding into your from behind, the harness still holding you tight as the furry dog pants into your ear and breeds you hard and fast, driving you into the earth with each hard thrust before trotting happily back to his sled to flop down for a satisfied sleep...
<<else>>
try to crawl forward, but the weight is too much, your leather-bound knees and elbows unable to make sufficient purchase on the floor as your straining soon has you panting with exhaustion, having move barely a metre or so.<br>
<br>
The Husky sniffs in annoyance and then lays back down on the sled, clearly unimpressed with your performance.
<</if>>
<br><br>
[<<moveTo "event_bestiality_breeding_2_dog_2_2" 'Disentangle yourself from the straps and look around.' 300>>]
</div>/*#
#desc: dog breeding study 2 entertain rottweiler
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = $scene.dogs.action && (setup.getTotalValue("strength") + setup.getTotalValue("martial_arts")) > 30>>
<<if $scene.success>>
<<set $scene.dogs.rottweiler = "satisfied">>
<<set _ma = setup.getTotalValue("martial_arts")>>
<<set _strength = setup.getTotalValue("strength")>>
<<applyExperience 'martial_arts' _ma 'normal' $ALONE>>
<<applyExperience 'strength' _strength 'normal' $ALONE>>
<<applyExperience 'anal' 11 'normal' $ALONE>>
<<applyExperience 'bestiality' 5 'normal' $ALONE>>
<<else>>
<<set $scene.dogs.rottweiler = "failed">>
<<applyExperience 'submission' 15 'very' $ALONE>>
<<if $fetish.piss && !$scene.dogs.action>>
<<applyExperience 'piss' 15 'normal' $ALONE>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
You meet the Rottweiler's aggression with a charge of your own, and soon the two of you are wrestling around. Your bound arms and legs, and gag-spread lips, certainly present problems, but you are strong, and you manage to translate your martial skills to this disadvantaged situations<<if setup.getTotalValue("strength") + setup.getTotalValue("martial_arts") >= 40>>, actually managing to triumph over your opponent, turning him onto his back where he presents his belly... and his massive, hard cock<<else>>, fighting him to a draw<</if>>.<br>
<br>
With a playful woof wrestling turns to "wrestling" his hard cock plunges into your ass. His barks sound ever more gleeful with each thrust and it isn't long before he <<if $fetish.cum>>pumps you full of cum<<else>>climaxes<</if>>, his knot swelling even wider as he finishes off inside of you, pinning you in place for several more pulse-pounding moments before he withdraws with a gaping POP and walks away.
<<elseif $scene.dogs.action>>
You meet the Rottweiler's aggression with a charge of your own, and soon the two of you are rolling around. With your bound arms and legs, and gag-spread lips, you are quite the disadvantage, and it isn't long before his superior strength and skill wins out as he pins you to the ground, <<if $fetish.piss>>pissing all over you as if to mark your shame<<else>>holding you there for a few moments<</if>> before he trots away, seemingly no longer interested into you.
<<else>>
You don't want to fight and instead attempt to submissively present yourself to the Rottweiler. If anything, he seems offended by your oh-so-humble display, growling menacingly until you crawl away.
<</if>>
<br><br>
[<<moveTo "event_bestiality_breeding_2_dog_2_2" 'Crawl away and look around.' 300>>]
</div>/*#
#desc: dog breeding study 2 entertain wolf_pair
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = $scene.dogs.husky == "satisfied" && $scene.dogs.rottweiler == "satisfied" && $scene.dogs.german_shepherd == "satisfied" && $scene.dogs.great_dane == "satisfied">>
<<if $scene.success>>
<<set $scene.dogs.wolf_pair = "satisfied">>
<<applyExperience 'oral' 15 'terrible' $ALONE>>
<<applyExperience 'anal' 15 'terrible' $ALONE>>
<<applyExperience 'bdsm' 15 'terrible' $ALONE>>
<<applyExperience 'submission' 15 'terrible' $ALONE>>
<<applyExperience 'bestiality' 5 'terrible' $ALONE>>
<<if $fetish.piss>>
<<applyExperience 'piss' 10 'terrible' $ALONE>>
<</if>>
<<else>>
<<set $scene.dogs.wolf_pair = "failed">>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
You offer yourself to the two Alphas, their gaze first piercing through you, and then slowly scanning across the rest of the pack. Seeing their charges well and satisfied the large wolves rise to their feet, nodding once in approval before circling you slowly in opposite directions.<br>
<br>
Your heart beats faster as you feel both small and helpless before the two magnificent animals as they spiral closer and closer... and then leap as one.<br>
<br>
Before you can even gasp there are two thick dog cocks inside of you, knots swelling your cheeks and spreading your <<if $player.body_ref.vagina && $player.virgin.vagina>>cunt<<else>>ass<</if>>. Your previous efforts prove to be but foreplay as the wolves <<if $fetish.get_raped>>rape<<else>>take pleasure from<</if>> your body, your holes straining with every hard thrust as large paws pin you to the ground and they rear back to howl, a haunting duet to accompany your breeding... and summon the rest of the pack.<br>
<br>
Even through the leather of the bitchsuit you feel tongues licking you in support, the other four animals lending their appreciation as the Alphas switch off, each taking their turn to breed you in each of your <<if $player.body_ref.vagina && $player.virgin.vagina>>three<<else>>two<</if>> holes<<if $fetish.cum>>, their thick cum running down your throat and pooling inside of you<</if>>.<br>
<br>
You lose track of time as the two wolves show nigh supernatural stamina, fucking you over and over, and even clawing at you, nipping and scratching just enough to keep you alert with the pain, though careful not to cause any permanent harm. Lost in sub-space you forget how it feels to not be knotted, perfectly suspended and at the mercy of the two magnificent beasts. In a final act of dominance they
<<if $fetish.piss>>
each raise a leg and unleash a hot stream of piss over your body, marking you one final time as you lay at their feet,
<<else>>
stand over you, staring down at your used, exhausted body in approval, making you feel like
<</if>>
a truly bred bitch.<br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_5_perfect" 'Continue.' 1800>>]
<<else>>
You attempt to offer yourselves to the two Alphas, their gaze piercing through you for a heart-stopping moment... before they settle down, resuming their overseeing of the pack... it would seem that you have failed to gain their approval as, like all good leaders, they refuse to indulge themselves when their followers are yet unfulfilled.<br>
<br>
[<<moveTo "event_bestiality_breeding_2_dog_2_3" 'Crawl away and look around.' 300>>]
<</if>>
</div>/*#
#desc: dog breeding study 2 entertain german_shepherd
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = $scene.dogs.action && setup.getTotalValue("stamina") > 13 && setup.getTotalValue("oral") > 13>>
<<if $scene.dogs.action>>
<<applyExperience 'oral' 13 'normal' $ALONE>>
<<applyExperience 'stamina' 13 'normal' $ALONE>>
<</if>>
<<if $scene.success>>
<<set $scene.dogs.german_shepherd = "satisfied">>
<<applyExperience 'anal' 13 'normal' $ALONE>>
<<applyExperience 'bestiality' 5 'normal' $ALONE>>
<<else>>
<<set $scene.dogs.german_shepherd = "failed">>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
You eagerly dive in to suck off the German Shepherd, more than up the task of deep-throating his large cock as you slurp, suck and lick all the way down to the hot knot.<br>
<br>
Even for one of your skill getting him off is a marathon, more than a sprint... but that first <<if $fetish.cum>>mouth-full of cum<<else>>climax<</if>> is more of a warmup, as he somehow stiffens even more, giving you a yip of encouragement as you continue to suck a second orgasm from his bestial loins before he rises.<br>
<br>
The German Shepherd looks down at you for a moment as you drool and try to catch your breath... and then he noses you over onto your back, plunging his saliva-slick cock into your as he fucks you hard, licking your face and knotting you deep as he cums twice more<<if $player.body_ref.vagina && $player.virgin.vagina>>, once in each hole,<</if>> before trotting away and curling up for a nap.
<<elseif $scene.dogs.action>>
You
<<if setup.getTotalValue("oral") > 13>>
dive in to suck off the German Shepherd, your well-trained throat managing to take his not-insubstantial girth... but you hadn't reckoned with his stamina.<br>
<br>
<<if setup.getTotalValue("stamina") > 10>>
Sucking with all your might you mange to get the dog off once... but that only seems to make him harder and you tap out,
<<else>>
You suck with everything you've got, but you don't even manage to get him off once before you are forced to tap out,
<</if>>
drooling<<if $fetish.cum && setup.getTotalValue("stamina") > 10>>cum <</if>> and panting with exertion as he rolls over in annoyance,
<<else>>
attempt to dive in to suck off the German Shepherd, but he's just too big for your lips to manage and, after dismissively staring as you do your best to lick through your gag, he turns over,
<</if>>
his hot and delicious cock out of your failed reach.
<<else>>
You wiggle your ass in invitation as the large German Shepherd looms over you. He stares down for a long moment... and then turns away.<br>
<br>
<<printThought "I guess he isn't an ass man... er... dog? Or maybe he wanted more foreplay...">>
<</if>>
<br><br>
[<<moveTo "event_bestiality_breeding_2_dog_2_2" 'Crawl away and look around.' 300>>]
</div>/*#
#desc: dog breeding study 2 entertain husky
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = setup.getTotalValue("anal") > 15 || !$scene.dogs.action>>
<<if $scene.success>>
<<set $scene.dogs.great_dane = "satisfied">>
<<if $scene.dogs.action>>
<<applyExperience 'anal' 15 'terrible' $ALONE>>
<</if>>
<<applyExperience 'bestiality' 5 'terrible' $ALONE>>
<<else>>
<<set $scene.dogs.great_dane = "failed">>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" _TODOdog>>
<div id="invframe" class="scrolltext">
The massive (in every sense of the word) Great Dane looms over you and you present your <<if $scene.dogs.action>>ass<<else>>cunt<</if>> in offering. He licks experimentally between your legs, his wide tongue probing into your
<<if $scene.success>>
<<if $scene.dogs.action>>ass<<else>>cunt<</if>>, opening you up and soaking you with his saliva in preparation for the mounting. You moan at his first thrust, a dozen centimeters of wrist-thick dog-cock plunging into your <<if $scene.dogs.action>>ass<<else>>cunt<</if>> as he looms over you.<br>
<br>
Already feeling your insides being re-arranged, you push back into him, drunk with lust and wanting it all. You shudder as you feel his knot momentarily pressing against your
<<if $scene.dogs.action>>
sphincter,
<<else>>
lower lips,
<</if>>
but his strength is irresistible, your training paying off as your body spreads before him and he takes you all the way to the root.<br>
<br>
The Great Dane growls, the rumble running through your entire body as he all but lifts you off the ground, suspended, impaled and entranced by the massive cock knotted in your <<if $scene.dogs.action>>ass<<else>>cunt<</if>>. You shudder, your entire body trembling like a living cock-sleeve as he gives you a few moments to adjust... and then resumes thrusting, pounding you into the floor, your bound arms and legs splaying out as he breeds you hard, cumming at least twice deep inside of you before his large urges are satisfied and he deflates enough to withdraw.<br>
<br>
You can practically feel your organs slowly migrating back from the brief forced retreat, eventually managing to pull your arms and legs back under you and stumble away.
<<else>>
ass
<<if setup.getTotalValue("anal") > 10>>
and then he attempts to mount you... getting all the way to the knot, and even pounding against your straining sphincter before giving up.
<<else>>
before he trots away, not even bothering to mount you... a kindness, perhaps, given the hard, swinging cock the size of your arm, and its even thicker knot would have surely split you in half.
<</if>>
You slump to the ground, still gaping... and gutted at having failed to properly serve his magnificence.
<</if>>
<br><br>
[<<moveTo "event_bestiality_breeding_2_dog_2_2" 'Crawl away and look around.' 300>>]
</div>/*#
#desc: dog breeding study 2 finish
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'bitchsuit_black_copy' true>>
<<deleteItem 'bitchsuit_black_copy'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<if $scene.addCollar>>
<<removeItem 'loose_collar' true>><<deleteItem 'loose_collar'>>
<</if>>
<<if $scene.removeChastity>>
<<include 'replaceCage_extendSissyomatic'>>
<</if>>
<<include "scheduleBreedingStudy">>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> appears and leads you back out of the testing area, the dogs watching her intently... and yet appearing somewhat intimidated by her presence.<br>
<br>
Your sweaty bitchsuit is removed and <<=setup.getNpcName("npc_evil_nurse","formal")>> smiles as she gives her assessment.<br>
<br>
<<if $scene.dogs.wolf_pair == "satisfied">>
"@@.npc_evil_nurse;Superbly done. You managed to deduce the optimal approach for each animal, and that is very useful data that we can apply to training routines. Very good, and I think you have proven yourself ready for some even more advanced studies...@@"
<<elseif $scene.dogs.husky == "satisfied" || $scene.dogs.rottweiler == "satisfied" || $scene.dogs.german_shepherd == "satisfied" || $scene.dogs.great_dane == "satisfied">>
"@@.npc_evil_nurse;You made an effort... but you fell short of success. Perhaps next time you will be able to apply your learnings and expedite your way through things with greater efficiency.@@"
<<elseif $scene.dogs.husky == "idle" && $scene.dogs.rottweiler == "idle" && $scene.dogs.wolf_pair == "idle" && $scene.dogs.german_shepherd == "idle" && $scene.dogs.great_dane == "idle">>
"@@.npc_evil_nurse;I struggle to explain why you even bothered coming in today, if you had no interest in actually participating in the study. In fact, I do not think I can credibly count this as this month's participation, so think on that and hurry back soon.@@"
<<elseif $scene.dogs.husky == "failed" && $scene.dogs.rottweiler == "failed" && $scene.dogs.wolf_pair == "failed" && $scene.dogs.german_shepherd == "failed" && $scene.dogs.great_dane == "failed">>
"@@.npc_evil_nurse;Let it never be said you did not try... you failed quite thoroughly, but you DID try. Let us hope this was the sort of failure that breeds learning for the next time, hmm? As you quite botched breeding in any OTHER way.@@"
<<else>>
"@@.npc_evil_nurse;An overall unimpressive effort... but still, data is data. Perhaps next time you can learn and do better.@@"
<</if>>
<br><br>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_2_5_perfect") && !State.hasPlayed("event_bestiality_recruit_1")>>
[<<moveTo "event_bestiality_recruit_1" "Put on your clothes and return to your desk." 60 "<<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Put on your clothes and return to your desk." 300 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: dog breeding study 2 finish perfect
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'bitchsuit_black_copy' true>>
<<deleteItem 'bitchsuit_black_copy'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<if $scene.addCollar>>
<<removeItem 'loose_collar' true>><<deleteItem 'loose_collar'>>
<</if>>
<<if $scene.removeChastity>>
<<include 'replaceCage_extendSissyomatic'>>
<</if>>
<<include "scheduleBreedingStudy">>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> appears and leads you back out of the testing area, the dogs watching her intently... and yet appearing somewhat intimidated by her presence.<br>
<br>
Your sweaty bitchsuit is removed and <<=setup.getNpcName("npc_evil_nurse","formal")>> smiles as she gives her assessment.<br>
<br>
"@@.npc_evil_nurse;Superbly done. You managed to deduce the optimal approach for each animal, and that is very useful data that we can apply to training routines. Very good, and I think you have proven yourself ready for some even more advanced studies...@@"<br>
<br>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_2_5_perfect") && !State.hasPlayed("event_bestiality_recruit_1")>>
[<<moveTo "event_bestiality_recruit_1" "Put on your clothes and return to your desk." 60 "<<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Put on your clothes and return to your desk." 300 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: horse breeding study 1 strapped in
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'bondage' 12 'terrible' $SEEN_STRANGER>>
<<set $scene.removeChastity = $player.body_ref.vagina && $player.virgin.vagina && setup.checkItemTypeWorn('cage') && !setup.isCage()>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Pony Playground — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You ask about continuing your participation in <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> breeding study and she appears a few minutes later sporting an evil grin as she leads you into the same back room and begins strapping you to the familiar apparatus.<br>
<br>
"@@.npc_evil_nurse;So wonderful of you to return to us,@@" she notes are you are stripped<<if $scene.removeChastity || $scene.removePlug>><<if $scene.removeChastity && $scene.removePlug>>, chastity and plug<<elseif $scene.removePlug>> chastity<<else>> plug<</if>> removed<</if>> and secured... though not gagged. "@@.npc_evil_nurse;Your prior canine contributions were superb, but there is more to cross-species breeding than being a bitch. Before we take things to the next level, however, well... we need to confirm that you're up to the task.@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> grins as she double checks the tightness of your restraints before pulling out her tablet...<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_first_2" "Engage testing protocols..." 1800>>]
</div>/*#
#desc: horse breeding study 1 strapped in for retry
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'bondage' 12 'terrible' $SEEN_STRANGER>>
<<set $scene.removeChastity = $player.body_ref.vagina && $player.virgin.vagina && setup.checkItemTypeWorn('cage') && !setup.isCage()>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "Bitches Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You ask about continuing your participation in <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> breeding study and she appears a few minutes later sporting an evil grin.<br>
<br>
"@@.npc_evil_nurse;So good of you to come back... I so delight in a patient who doesn't give up... I hope you've been training hard, because I will not be showing any mercy in testing your skills.@@"<br>
<br>
A few minutes more and you're strapped in tightly, goosebumps spreading over your naked flesh as you brace yourself for the coming horse dildo pounding...<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_first_2" "Engage testing protocols..." 1800>>]
</div>/*#
#desc: horse breeding study 1 fucked
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<<applyFatigue 100>>
<</if>>
<<set $player.location = "Bitches Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
With you fully secured <<=setup.getNpcName("npc_evil_nurse","formal")>> wastes no time commencing the testing, her fingers gliding over her tablet as she she controls a massive horse dildo to force its way into your ass.<br>
<br>
"@@.npc_evil_nurse;That's it, slut, relax. You can't move on to the real thing until we've confirmed your capacity mechanically, but that won't be a problem, right?@@"<br>
<br>
You gasp as the dildo that had been easing its way into you suddenly thrusts hard, a jackhammer advance <<if setup.getTotalValue("anal") > 18>> that stretches you to the limit<<elseif setup.getTotalValue("anal") > 15>>that your body struggles with<<else>>that is more than you can take<</if>>. You gasp as the dildo retreats... only for its kin to take advantage of your parted lips to thrust past your tongue and <<if setup.getTotalValue("oral") > 18>>plunge down<<elseif setup.getTotalValue("oral") > 15>>pound partway throat<<else>>mercilessly pound at<</if>> your throat.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> continues to watch keen-eyed, retracting the oral dildo to leave you sputtering and drooling down your chest<<if $player.body_ref.vagina && $player.virgin.vagina>> as a third dildo takes you from the front, pounding your pussy even harder than its twins had taken your other holes<<else>>as she checks her readings<</if>>.<br>
<br>
You're feeling tenderised inside and out as your bonds pinch tight, <<=setup.getNpcName("npc_evil_nurse","formal")>> continuing the "test" by hammering you in alternating holes for several more minutes, constantly tweaking rhythm and depth to leave you shuddering, panting and leaking lube from your gaping holes.<br>
<br>
<<if setup.getTotalValue("oral") > 15 && setup.getTotalValue("anal") > 15>>
"@@.npc_evil_nurse;Very good, <<if $player.body_ref.vagina && $player.virgin.vagina>>all three<<else>>both<</if>> of your holes appear up to the task... but I like to be extra certain so how about we go beyond what a real horse could provide...@@"<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_first_3" "What?" 600>>]
<<else>>
"@@.npc_evil_nurse;Disappointing...
<<if setup.getTotalValue("oral") > 15>>
your cocksucking abilities are equine-level, but your ass is a bit too tight.
<<elseif setup.getTotalValue("oral") > 15>>
your ass is a proper gaping fuck-hole, but it would seem your throat needs to spend more time being pounded.
<<else>>
neither your ass nor your throat seem up to the challenge that a horse represents.
<</if>>
I am afraid that we will be unable to safely proceed with further study until you... resolve this lack of training.@@"<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_first_3_fail" "It's over?" 300>>]
<</if>>
</div>/*#
#desc: horse breeding study 1 failure
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeChastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Bitches Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You've been fucked so hard you can't quite keep up with what <<=setup.getNpcName("npc_evil_nurse","formal")>> is saying, you're just thankful to no longer have a horse dildo slamming into you, your relief magnified further when <<if $scene.removeChastity>>your chastity device is re-locked<<if $scene.removePlug>>and your plug replaced before<<else>>and<</if>> the remainder of <</if>>your bonds release and you slump to the ground.<br>
<br>
For her part <<=setup.getNpcName("npc_evil_nurse","formal")>> seems annoyed, more than anything else, kicking your clothes over and tapping her foot in annoyance as she waits for you to dress.<br>
<br>
"@@.npc_evil_nurse;Do try to train a bit more before you waste my time again. For being a <<if $fetish.sissy>>SISSI <</if>>slut I would have expected your... capacity to be higher.@@"<br>
<br>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_2_5_perfect") && !State.hasPlayed("event_bestiality_recruit_1")>>
[<<moveTo "event_bestiality_recruit_1" "Put on your clothes and return to your desk." 60 "<<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Put on your clothes and return to your desk." 300 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: horse breeding study 1 success
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<applyExperience 'anal' 20 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 20 'terrible' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<<applyFatigue 500>>
<<playerOrgasm>>
<<if $scene.removeChastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = "Bitches Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You've been fucked so hard you can't quite keep up with what <<=setup.getNpcName("npc_evil_nurse","formal")>> saying... and then you're getting pounded <<if $player.body_ref.vagina && $player.virgin.vagina>>in all three holes<<else>>from both ends<</if>> simultaneously.<br>
<br>
Tears of exertion run down your cheeks as you drool and pant and get pounded, your every struggle seeming to make <<=setup.getNpcName("npc_evil_nurse","formal")>> grin wider as she controls the dildos fucking your relentlessly hard. In a brief moment of lucidity you figure out what she meant about "beyond what a real horse could provide" as you realise that the sheer mass of an actual animal would make it impossible to be taken so deep from <<if $player.body_ref.vagina && $player.virgin.vagina>>so many<<else>>from both<</if>> directions simultaneously... an issue of geometry that is not a concern for the compact pistons that continue to jackhammer the massive dildos into your straining body.<br>
<br>
Though you have no proof, you're quite certain <<=setup.getNpcName("npc_evil_nurse","formal")>> pushes things past the point of any possibly useful "testing data," finishing off by leaving <<if $player.body_ref.vagina && $player.virgin.vagina>>all three<<else>>both<</if>> dildos at full depth until you nearly pass out, only when your entire body is sore, sweaty and spent leaving you empty... and slumping to the ground as your restraints release.<br>
<br>
"@@.npc_evil_nurse;An acceptable performance.@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states as she looms over you<<if $scene.removeChastity>>, leaning down just long enough to re-lock your chastity<<if $scene.removePlug>> and replace your plug<</if>><<elseif $scene.removePlug>>, leaning down just long enough to stuff your plug back into your ass<</if>>. "@@.npc_evil_nurse;Next time we can proceed to the actual study and see how your gaping accommodate the real thing.@@"<br>
<br>
With a cruel grin she kicks your pile of clothing over to you...<br>
<br>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_2_5_perfect") && !State.hasPlayed("event_bestiality_recruit_1")>>
[<<moveTo "event_bestiality_recruit_1" "Put on your clothes and return to your desk." 60 "<<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Put on your clothes and return to your desk." 300 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: horse breeding study 1 strapped in
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "penis_gag_pink">>
<<wearItem "penis_gag_pink" true>>
<<applyExperience 'bondage' 12 'terrible' $SEEN_STRANGER>>
<<set $scene.removeChastity = $player.body_ref.vagina && $player.virgin.vagina && setup.checkItemTypeWorn('cage') && !setup.isCage()>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Bitches Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> seems to nigh instantly appear to answer your enquiry, and it isn't more than a few minutes before you're stripped naked, legs spread, bent forward, and bound in position<<if $scene.removeChastity && $scene.removePlug>>, chastity and plug removed<<elseif $scene.removeChastity>>, chastity belt removed<<elseif $scene.removePlug>>, plug removed<</if>>.<br>
<br>
"@@.npc_evil_nurse;I know I checked out <<if $player.body_ref.vagina && $player.virgin.vagina>>all<<else>>both<</if>> of your holes,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> explains as she presents a penis gag and straps it between your lips, "@@.npc_evil_nurse;But today we will be entirely focused on your potential as a breeding mare. The apparatus is to keep you, and the animals, safe, while they make use of you... I mean, while we gather data.@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> chuckles to herself as she steps away. You hear the sound of a large door swinging open, able to barely turn your head far enough to see as mighty stallion trot into the room and make his way towards you...<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_1_2" "Breeding time..." 600>>]
</div>/*#
#desc: horse breeding study 2 fucked
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'normal' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 10 'normal' $SEEN_STRANGER>>
<<applyFatigue 100>>
<</if>>
<<set $player.location = "Bitches Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
With a greeting whinny, the horse steps a hoof up onto either side of you, balancing comfortably over your bound form as his cock swings into position, slapping onto your back like a massive hot, wet salami before swaying about and probing until it finds your ass to force its way in.<br>
<br>
You gasp, your position has your body perfectly aligned for the stallion's cock... but he is still VERY large, his frill tip clearing the way as his hot, thick shaft plunges deep into you, powerful muscles driving with inhuman force as you moan into your gag and he fucks you hard and deep.<br>
<br>
"@@.npc_evil_nurse;That's right, moan you breedable slut, it only excites him more!@@"<br>
<br>
Confirming <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> words the horse increases his pace, his balls slapping you with every stroke as the frame you're bound to ever so slightly creaks under the strain. Hot, hay-scented breath blasts past you as the horse rides you, and it isn't long before <<if $fetish.cum>>you feel an explosion nearly in your gut, thick equine seed leaking out down your leg as he pumps you full and then finally pulls away<<else>>he climaxes, his rod stiffening at the last so much you are lifted up, your restraints all that holds you in place as his pleasure is complete<</if>>.<br>
<br>
You pant through your gag, looking forward to find <<=setup.getNpcName("npc_evil_nurse","formal")>> screwing a tube to the front of your gag, a trickle of <<if $fetish.drugs>>familiar-feeling drugs causing your eyes to roll back as your gaping hole quivers in echoes of pleasure<<else>>sweet liquid, a welcome burst of hydration and energy<</if>> as you attempt to catch your breath.<br>
<br>
You hear your partner trot away... mixed with the sound of additional hooves as a second stallion lines up behind you...<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_1_3" "Continue..." 900>>]
</div>/*#
#desc: horse breeding study 2 fucked more
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bestiality' 10 'unbelievable' $SEEN_STRANGER>>
<<applyFatigue 300>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "Bitches Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.vagina && $player.virgin.vagina>>
Your second partner takes breeding a bit more literally as you feel his thick, hot cock make a direct shot for your cunt, moments later pressing against your cervix as he fucks the full length of you, breeding you like no human ever could as he sends bone-rattling waves of pleasure through your body with each powerful thrust before finishing off <<if $fetish.cum>>with an equally powerful burst of prime cum<<else>>strong, hard and deep<</if>>.<br>
<br>
<<else>>
Your second partner follows the first, taking advantage of your already gaping hole but seemingly unconcerned with sloppy seconds as he pounds you hard and deep<<if $fetish.cum>> before finishing off with another mammoth load of horse semen flooding your bowels<</if>>.
<</if>>
After your fourth or fifth breeding you lose count, horse cock after horse cock blurring as you suck hard on your gag, simultaneously wishing that you could be taking it from both ends like in your "training" while realising that being sandwiched between so many hundreds of pounds of animalistic muscle would be, perhaps, too much for even your training...<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_1_4" "How big can the herd be?" 1800>>]
</div>/*#
#desc: horse breeding study 2 finished
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeChastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<removeItem "penis_gag_pink" true>>
<<deleteItem "penis_gag_pink">>
<<include "scheduleBreedingStudy">>
<</if>>
<<set $player.location = "Bitches Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Fucked into unconsciousness, you awaken to <<=setup.getNpcName("npc_evil_nurse","formal")>> whistling as she
<<if $scene.removeChastity>>
<<if $scene.removePlug>>replaces your plug and <</if>>locks your chastity belt<<if $fetish.cum>>, neither doing overmuch to halt the cum still leaking out of both of your distended holes<</if>>. <<=setup.getNpcName("npc_evil_nurse","formal")>> gives you a slap on the ass as she
<<elseif $scene.removePlug>>
replaces your plug, the device barely seating in your distended<<if $fetish.cum>>, and still leaking,<</if>> <<if $player.body_ref.vagina && $player.virgin.vagina>>holes<<else>>hole<</if>>. <<=setup.getNpcName("npc_evil_nurse","formal")>> gives you a slap on the ass as she
<</if>>
unclasps your restraints and you slump to the ground.<br>
<br>
"@@.npc_evil_nurse;Now that's a proper bred bitch!... sorry, I guess mare, this time.@@" She laughs as you fumble for your clothes. "@@.npc_evil_nurse;Come back again when you're ready for more. The herd definitely took a liking to you... which means you're perfectly set for the next time...@@"<br>
<br>
You shiver slightly at her words... be it in excitement, or apprehension, as you reclaim your feet<<if $fetish.cum>>, being careful not to slip in the pool of cum beneath you<</if>>.<br>
<br>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_2_5_perfect") && !State.hasPlayed("event_bestiality_recruit_1")>>
[<<moveTo "event_bestiality_recruit_1" "Put on your clothes and return to your desk." 60 "<<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Put on your clothes and return to your desk." 300 "<<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: horse breeding study 3 equipped
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet "pony_girl">>
<<wearItemSet "pony_girl">>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<removeItem $scene.plug true>>
<</if>>
<<set $scene.horses = {
"holsteiner" : "idle",
"arabian" : "idle",
"thoroughbred" : "idle",
"shire" : "idle",
"unicorn" : "idle"
}>>
<<set $scene.endTime = setup.advanceDate($player, $now, 'minutes', 120)>>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You ask to provide additional service in the horse breeding study and <<=setup.getNpcName("npc_evil_nurse","formal")>> is again summoned, ordering you to strip per usual before helping strap you into a pony bondage outfit. "@@.npc_evil_nurse;Today's experiments will involve more open-ended breeding. As part of their training, and for the safety of the teams servicing them in other manners, the horses have been conditioned to interact based on attire, your outfit marking you as a ready breeding mare. Of course it is not quite so simple as that, and you will need to appeal to each beast's individual preference if you are to breed the herd...@@"<br>
<br>
With your bit gag inserted deep<<if $scene.removePlug>>, and your plug removed,<</if>> <<=setup.getNpcName("npc_evil_nurse","formal")>> leads you to a stables area, setting you loose amongst just shy of half a dozen different horses...<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_2_2" 'Look around.' 300>>]
</div>/*#
#desc: horse breeding study 2 look around
#status: RELEASED 0.9.2.0
#ignore_spell: holsteiner
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.secondsToDate($now,$scene.endTime) <= 0>>
<<initRoom>>
<<moveTo "event_bestiality_breeding_3_horse_2_5">>
<</if>>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" _TODOhorses>>
<div id="invframe" class="scrolltext">
Clad in a ponygirl outfit, complete with gag and hooves... but with your rear exposed for "breeding" you look around at the small "herd" of various horse breeds standing around the room...<br>
<br>
<<switch $scene.horses.holsteiner>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_3_horse_2_3" 'Approach the graceful Holsteiner.' 60 "<<set $scene.horses.horse='holsteiner'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress the Holsteiner and he is now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred with the Holsteiner and he is chewing hay contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.horses.holsteiner <<=$scene.horses.holsteiner>>
<</switch>>
<<switch $scene.horses.arabian>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_3_horse_2_3" 'Approach the regal Arabian.' 60 "<<set $scene.horses.horse='arabian'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress the Arabian and he is now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred with the Arabian and he is chewing hay contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.horses.arabian <<=$scene.horses.arabian>>
<</switch>>
<<switch $scene.horses.thoroughbred>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_3_horse_2_3" 'Approach the magnificent Thoroughbred.' 60 "<<set $scene.horses.horse='thoroughbred'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress the Thoroughbred and he is now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred by the Thoroughbred and he is chewing hay contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.horses.thoroughbred <<=$scene.horses.thoroughbred>>
<</switch>>
<<switch $scene.horses.shire>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_3_horse_2_3" 'Approach the massive Shire horse.' 60 "<<set $scene.horses.horse='shire'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress Shire horse and he is now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred with the Shire horse and he is naping contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.horses.shire <<=$scene.horses.shire>>
<</switch>>
<<switch $scene.horses.unicorn>>
<<case "idle">>
[<<moveTo "event_bestiality_breeding_3_horse_2_3" 'Approach the Unicorn.' 60 "<<set $scene.horses.horse='unicorn'>>">>]<br>
<<case "failed">>
[@@.link_locked;You failed to impress the Unicorn and he is now ignoring you.@@]<br>
<<case "satisfied">>
[@@.link_locked;You have already successfully bred with the Unicorn and he is naping contentedly.@@]<br>
<<default>>
ERROR: unexpected scene.horses.unicorn <<=$scene.horses.unicorn>>
<</switch>>
</div>/*#
#desc: horse breeding study 2 approach horse
#status: RELEASED 0.9.2.0
#ignore_spell: holsteiner
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.horses.horse>>
<<case "holsteiner">>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<<case "arabian">>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<<case "thoroughbred">>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<<case "shire">>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<<case "unicorn">>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.horses.horse>>
<<case "holsteiner">>
You approach the graceful Holsteiner. Noticing your approach it steps in a lively, and graceful circle.<br>
<br>
<<printThought "Is it challenging me... to a dance-off?">><br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_2_4_holsteiner" 'Time to dance.' 300>>]<br>
<<case "arabian">>
The Arabian turns to you with intelligent eyes... and a rock hard erection. Looks like he's ready to go with no further foreplay required...<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_2_4_arabian" 'Get fucking.' 300>>]<br>
<<case "thoroughbred">>
You approach the Thoroughbred. Somewhat twitchy, the animal looks ready to take off at the slightest provocation, and it shakes its mane at you before hoofing the ground and looking across the room.<br>
<br>
<<printThought "Looks like he's challenging me to a race.">><br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_2_4_thoroughbred" 'Race the thoroughbred.' 300>>]<br>
<<case "shire">>
You approach easily the largest horse in the room, the massive shire horse taller at the shoulder than you are even with the aid of your pony boots. As massive between his legs as is the rest of him, his thick cock would surely present a mighty challenge to even the most trained butt-sluts...<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_2_4_shire" 'Present yourself for his use.' 300>>]<br>
<<case "unicorn">>
You approach what can only be called a unicorn. The magnificently-horned horse-creature stares down at you
<<if $scene.horses.shire == "satisfied" && $scene.horses.thoroughbred == "satisfied" && $scene.horses.arabian == "satisfied" && $scene.horses.holsteiner == "satisfied">>
and then slowly nodding.<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_2_4_unicorn" 'Offer yourself.' 300>>]<br>
<<else>>
for a moment before turning away in dismissal.<br>
<br>
<<printThought "Hmm... the mythological unicorn would only approach virgins... given this company I bet this one is more an inversion of that... so maybe I need to prove what a slut I am and fuck everything else first?">><br>
<br>
<</if>>
<<default>>
ERROR: unexpected scene.horses.horse <<=$scene.horses.horse>>
<</switch>>
[<<moveTo "event_bestiality_breeding_3_horse_2_2" 'Retreat and reconsider your options.' 60>>]<br>
<<set _timeToEnd = setup.secondsToDate($now,$scene.endTime)>>
[<<moveTo "event_bestiality_breeding_3_horse_2_5" 'Walk away and wait for the test to be over.' _timeToEnd>>]
</div>/*#
#desc: horse breeding study 2 dressage challenge
#status: RELEASED 0.9.2.0
#ignore_spell: holsteiner
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = setup.getTotalValue("heels") > 15 && setup.getTotalValue("dexterity") > 15>>
<<applyExperience 'dexterity' 18 'normal' $ALONE>>
<<applyExperience 'heels' 18 'normal' $ALONE>>
<<if $scene.success>>
<<applyExperience 'anal' 15 'normal' $ALONE>>
<<applyExperience 'bestiality' 10 'normal' $ALONE>>
<<set $scene.horses.holsteiner = "satisfied">>
<<else>>
<<set $scene.horses.holsteiner = "failed">>
<</if>>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
Being on two hooves rather than four means that you cannot precisely match the horse's intricate dance... but it also means that you can spin more swiftly, balancing atop your hoof boots and springing gracefully to match the beast's movements, impressing it with your skill.<br>
<br>
The dance goes from competitive to seductive... and then the horse is upon you, your body bent over in invitation as its cock shows as much precision and skill as its body did, plunging into you as you gasp past your gag and wiggle back, your dance becoming more intimate still as it fucks you to satisfaction. Once finished it helps you back to your feet with its head and then trots away happily as you catch your breath<<if $fetish.cum>> and feel its cum leak down your leg<</if>>.
<<else>>
You try to match the horse's dance
<<if setup.getTotalValue("heels") <= 15 && setup.getTotalValue("dexterity") <= 15>>
but your agility pales in comparison to the graceful animal... to say nothing of your stumbling in your boots.
<<elseif setup.getTotalValue("heels") <= 15>>
but, while you may be the beasts equal in grace, you have not its balance in hooves.
<<else>>
but your agility pales in comparison to the graceful animal.
<</if>>
<br><br>
After elegantly stunting on you the horse gracefully trots away, clearly having lost interest in you.
<</if>>
<br><br>
[<<moveTo "event_bestiality_breeding_3_horse_2_2" 'Check out another horse.' 180>>]
</div>/*#
#desc: horse breeding study 2 stamina challenge
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = setup.getTotalValue("stamina") > 15>>
<<applyExperience 'stamina' 15 'normal' $ALONE>>
<<applyExperience 'anal' 16 'normal' $ALONE>>
<<applyExperience 'bestiality' 10 'normal' $ALONE>>
<<applyFatigue 50>>
<<if $scene.success>>
<<set $scene.horses.arabian = "satisfied">>
<<else>>
<<set $scene.horses.arabian = "failed">>
<</if>>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<div id="invframe" class="scrolltext">
Its large eyes meeting your own, the horse immediately knows what you want... and gives it to you gladly, its hard equine cock filling your ass... pounding you over and over. Though it is not the largest you have felt, it is far from small, and each powerful thrust rattles your body with pleasure... as it keeps going... and going showing the great stamina its breed is known for as
<<if $scene.success>>
you do the same. You pant through your gag and dig deep, drawing on your reserves to keep up with the marathon of fucking the horse is dishing out, focusing on your glutes to remain a tight, pleasurable fuck for your partner as you maintain your balance, and the plowing rolls on and on.<br>
<br>
By the time the beast reaches a climactic crescendo you're dripping with sweat, its pace more reminiscent of a machine than a mortal... but when you feel that final swelling of its hot cock-head the pleasure is all the sweeter, knowing that you have effectively served your partner through its long need...<br>
<br>
You stagger as the beast pulls free, teetering as it leans in to support, and then licks your face in appreciation. A final glance communicates its thanks before it saunters away, seeming to glow with satisfaction as it strides regally.
<<else>>
pounding you over and over. Though it is not the largest you have felt, it is far from slam, and each powerful thrust rattles your body with pleasure... as it keeps going... and going, showing the great stamina its breed is known for as it fucks you into the earth, leaving you in a crumpled exhausted pile<<if $fetish.cum>> as it spurts a weak drizzle of cum over your body<</if>> before trotting away, clearly far from satiated.
<</if>>
<br><br>
[<<moveTo "event_bestiality_breeding_3_horse_2_2" 'Check out another horse.' 180>>]
</div>/*#
#desc: horse breeding study 2 race challenge
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = setup.getTotalValue("strength") > 15 && setup.getTotalValue("stamina") > 15 && setup.getTotalValue("dexterity") > 15 && setup.getTotalValue("heels") > 19>>
<<applyExperience 'strength' 10 'normal' $ALONE>>
<<applyExperience 'stamina' 17 'normal' $ALONE>>
<<applyExperience 'dexterity' 17 'normal' $ALONE>>
<<applyExperience 'heels' 19 'normal' $ALONE>>
<<applyFatigue 50>>
<<if $scene.success>>
<<applyExperience 'anal' 16 'normal' $ALONE>>
<<applyExperience 'bestiality' 10 'normal' $ALONE>>
<<set $scene.horses.thoroughbred = "satisfied">>
<<else>>
<<set $scene.horses.thoroughbred = "failed">>
<</if>>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<div id="invframe" class="scrolltext">
The horse has challenged you to a race, trotting for a moment for you to match pace before turning on the jets. The two of you fly around the edge of the room, as the constant turning limits its ability to reach its full speed.
<<if $scene.success>>
You put everything you have into the race, driving hard off the ground with each step as you lunge forward, barely keeping balance atop your hoof boots as they pound the floor, managing to keep pace with your larger opponent, the two of you remaining neck and neck through two full laps of the room before he slows to a trot, swinging his head in congratulation... and then coming towards you to "celebrate" the run...<br>
<br>
You moan as the horse-cock plunges into your ass, the exertion of the race having tightened up your glutes and left you excited and ready, pleasure coursing through you as the horse fucks as hard and fast as it raced... <<if $fetish.cum>>cumming just as swift, a short blast of cum that hits you deep and pushes you forward<<else>>climaxing in little time at all<</if>>.
<<else>>
You try to keep pace, but you just do not have the blend of power, and agility to keep up in such a competition, and before the second lap is finished the horse has pulled ahead, leaving you in the proverbial dust as you finally come to a stop. Breathing heavy you watch and appreciate the grace of your competition as it finishes the lap and trots away... looks like the victor is uninterested in claiming a "prize."
<</if>>
<br><br>
[<<moveTo "event_bestiality_breeding_3_horse_2_2" 'Check out another horse.' 180>>]
</div>/*#
#desc: horse breeding study 2 size challenge
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.success = setup.getTotalValue("anal") >= 20>>
<<if $scene.success>>
<<applyExperience 'anal' 20 'unbelievable' $ALONE>>
<<applyExperience 'bestiality' 10 'unbelievable' $ALONE>>
<<set $scene.horses.shire = "satisfied">>
<<else>>
<<set $scene.horses.shire = "failed">>
<<applyExperience 'bestiality' 10 'normal' $ALONE>>
<</if>>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<div id="invframe" class="scrolltext">
There is no preamble or proving yourself for the Shire horse, merely the act itself as the horse positions himself over a conveniently placed box for you to get on all fours high enough off the ground for his massive cock to be in line with your hole...<br>
<br>
<<if $scene.success>>
You moan. Even for a butt-slut of your magnitude the Shire horse is something else, a cock larger than your arm driving into your eager hole with power to plow something far firmer than your supple flesh.<br>
<br>
You shudder and moan as he drives deeper, pressed from above by his powerful chest... and from within by his thick, hot cock. Your spine locks straight as your insides become a tight container of your organs packed around his magnificent organ... and he fucks you.<br>
<br>
Heavy equine balls slap your ass with each thrust as you are railed hard, deep, and long. His final climax <<if $fetish.cum>>comes with such force you nearly become a cum rocket<<else>>arrives with force and verve<</if>>, and you find yourself panting on the floor, taking several minutes to recover as the horse licks your face in thanks... and then wanders off to the hay trough to recoup the calories expended in plowing your fields.
<<else>>
Though the horse may be strong enough to plow packed earth, its cock presses... and then slides past your too-tight hole, sawing between your cheeks rather than fucking your depths. You hope that the horse draws some mild pleasure from this contact, with each pendulum slap of its heavy balls... but even as he <<if $fetish.cum>>sprays his stallion's seed over your back<<else>>climaxes<</if>> you know that you have failed to truly prove your worth.
<</if>>
<br><br>
[<<moveTo "event_bestiality_breeding_3_horse_2_2" 'Check out another horse.' 180>>]
</div>/*#
#desc: horse breeding study 2 slut challenge
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.horses.unicorn = "satisfied">>
<<applyExperience 'anal' 18 'unbelievable' $ALONE>>
<<applyExperience 'bestiality' 10 'unbelievable' $ALONE>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" _TODOhorse>>
<div id="invframe" class="scrolltext">
With the unicorn's blessing you get in position, looking back over your shoulder at the gorgeous creature as it moves behind you. You have just finished confirming yourself as a true horse-slut... but perhaps that is what has earned you what happens next, the unicorn starting by licking your slightly gaping, well-used hole.<br>
<br>
You moan through your gag, its tongue is textured, but not rough, almost rejuvenating in its tender stimulation, your hole tightening up slightly... only to be opened again by the slow insertion of something very hard indeed.<br>
<br>
You shudder, the swirls of the horn sending ripples of pleasure through your entire body as the Unicorn tenderly penetrates you, your heart racing as it slides in, and out, and in... and then pulls back fully to replace horn with lance, its cock spearing your hyper-sensitive hole, blessing you with pleasure as it takes its own.<br>
<br>
<<if $fetish.cum>>
The unicorn may not end up cumming rainbows... but your mind is more than blown by the near spiritual intensity of the pleasure as you wonder if there might be some manner of aphrodisiac lacing its seed. You look around to see
<<else>>
The unicorn climaxes and you look around,
<</if>>
the rest of the "herd" standing in a circle, looking down at you in approval as you complete your ascension to fully bred mare, the pleasure of the moment having you tremble... and then faint...<br>
<br>
[<<moveTo "event_bestiality_breeding_3_horse_2_5_perfect" 'Continue.' 1800>>]
</div>/*#
#desc: horse breeding study 2 finish
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.addCollar>>
<<removeItem 'loose_collar' true>>
<<deleteItem 'loose_collar'>>
<</if>>
<<removeItemSet "pony_girl">>
<<deleteItemSet "pony_girl">>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<useClothSetPop 'tmp'>>
<<include "scheduleBreedingStudy">>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> appears to lead you back out of the stables area, the horses each looking at her with a hint of fear.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> removes your restraints and gestures for you to dress.<br>
<br>
<<if $scene.horses.shire == "satisfied" || $scene.horses.thoroughbred == "satisfied" || $scene.horses.arabian == "satisfied" || $scene.horses.holsteiner == "satisfied">>
"@@.npc_evil_nurse;You made an effort... but you fell short of success. Perhaps next time you will be able to apply your learnings and expedite your way through things with greater efficiency.@@"
<<elseif $scene.horses.shire == "idle" && $scene.horses.thoroughbred == "idle" && $scene.horses.arabian == "idle" && $scene.horses.holsteiner == "idle" && $scene.horses.unicorn == "idle">>
"@@.npc_evil_nurse;I struggle to explain why you even bothered coming in today, if you had no interest in actually participating in the study. In fact, I do not think I can credibly count this as this month's participation, so think on that and hurry back soon.@@"
<<elseif $scene.horses.shire == "failed" && $scene.horses.thoroughbred == "failed" && $scene.horses.arabian == "failed" && $scene.horses.holsteiner == "failed" && $scene.horses.unicorn == "failed">>
"@@.npc_evil_nurse;Let it never be said you did not try... you failed quite thoroughly, but you DID try. Let us hope this was the sort of failure that breeds learning for the next time, hmm? As you quite botched breeding in any OTHER way.@@"
<<else>>
"@@.npc_evil_nurse;An overall unimpressive effort... but still, data is data. Perhaps next time you can learn and do better.@@"
<</if>>
<br><br>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_2_5_perfect") && !State.hasPlayed("event_bestiality_recruit_1")>>
[<<moveTo "event_bestiality_recruit_1" "Put on your clothes and return to your desk." 60 "<<removeItemSet 'pony_girl'>><<deleteItemSet 'pony_girl'>><<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Put on your clothes and return to your desk." 300 "<<removeItemSet 'pony_girl'>><<deleteItemSet 'pony_girl'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: horse breeding study 2 finish perfect
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<include "scheduleBreedingStudy">>
<</if>>
<<set $player.location = "Pony Paradise — Office Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You awaken to find yourself naked with <<=setup.getNpcName("npc_evil_nurse","formal")>> standing over you with the hint of a smile on her face as she finishes hosing you off. She tosses you a towel as she gestures towards your pile of clothing.<br>
<br>
"@@.npc_evil_nurse;Another successful test, you really are proving quite the versatile breeding specimen... but this study is about more than just a single data-point...@@"
<br>
You look at her quizzically but she merely smiles. "@@.npc_evil_nurse;Next time... anticipation, mmm?@@"<br>
<br>
She leaves you to dress and puzzle over what she has planned next.<br>
<br>
<<if State.hasPlayed("event_bestiality_breeding_3_horse_2_5_perfect") && !State.hasPlayed("event_bestiality_recruit_1")>>
[<<moveTo "event_bestiality_recruit_1" "Put on your clothes and return to your desk." 60 "<<removeItemSet 'pony_girl'>><<deleteItemSet 'pony_girl'>><<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Put on your clothes and return to your desk." 300 "<<removeItemSet 'pony_girl'>><<deleteItemSet 'pony_girl'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: invite barista to bestiality trial
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addWorkEvent "bestiality_friend_barista">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You ask if <<=setup.getNpcName("npc_barista","nickname")>> if she'd be up for helping you with some science?<br>
<br>
"@@.npc_barista;Is it slutty science? Then yes! Well... also if it's sexy science... though, like, all science is sexy!@@" She stares off, licking her lips as you explain things with <<=setup.getNpcName("npc_evil_nurse","formal")>> and the breeding program.<br>
<br>
You notice <<=setup.getNpcName("npc_barista","nickname")>> suppress a wince at the mention of <<=setup.getNpcName("npc_evil_nurse","formal")>>, but the words "breeding program" have her raring to go. "@@.npc_barista;Call me flour, because, like... I LOVE to be bred, and animals are so fun! Mmm, that feeling of being double knotted, or the taste of a horse stretching my throat...@@" <<=setup.getNpcName("npc_barista","nickname")>> shudders, unabashedly aroused.<br>
<br>
<<printThought "Guess I shouldn't be surprised, really...">><br>
<br>
You thank <<=setup.getNpcName("npc_barista","nickname")>> for agreeing to help and she nods. "@@.npc_barista;Like, of course! I love helping a friend... though, it's more you helping me get fucked!@@"<br>
<br>
<<printNpcThemeReturn 'npc_barista' 180>>
</div>/*#
#desc: summon for event with npc_barista
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.punt = $npc_barista.stage >= 5 && $npc_barista.stage < 10>>
<<if $scene.punt>>
<<completeWorkEvent>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addWorkEvent 'bestiality_friend_barista' _nextDate>>
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You have a summons from <<=setup.getNpcName("npc_evil_nurse","formal")>> to the work kennels.<br>
<br>
[<<moveTo "event_bestiality_barista_2" "Head up." 300>>]
</div>/*#
#desc: summon for event with npc_barista
#status: RELEASED 0.9.3.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'puppy_black_copy'>>
<<wearItemSet 'puppy_black_copy'>>
<<addItem 'dog_leash'>>
<<wearItem 'dog_leash' true>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You arrive in the kennels to find <<=setup.getNpcName("npc_barista","nickname")>> waiting sporting a big grin... but at a strategic distance from <<=setup.getNpcName("npc_evil_nurse","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> seems unconcerned by anything but her experiment as she motions to a bitchsuit laid out on a table and orders you to "@@.npc_evil_nurse;Change, so we can begin.@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> watches dispassionately as <<=setup.getNpcName("npc_barista","nickname")>> assists in rendering you a helpless pup, finishing off by taking hold of your leash.<br>
<br>
"@@.npc_evil_nurse;Excellent. <<=$player.first_name>> does look so proper as a bound bitch...@@" she grins as you find your knees and elbows balance next to <<=setup.getNpcName("npc_barista","nickname")>>. "@@.npc_evil_nurse;For today we are going to be doing some A/B "public use" testing for how some of our animals react to varied opportunity. Follow.@@" She orders sharply as you crawl behind <<=setup.getNpcName("npc_barista","nickname")>> and are led out of the kennel and to an elevator that deposits you a few floors away in an indoor park, well-manicured grass spanning the open space complete with trees and a walking path.<br>
<br>
You step out of the elevator for the door behind you to close, leaving you and <<=setup.getNpcName("npc_barista","nickname")>> seemingly alone in this quasi-natural space.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> giggles as she takes a step forward onto the path. "@@.npc_barista;Come on, there has to be, like, something to fuck around here somewhere!@@"<br>
<br>"
[<<moveTo "event_bestiality_barista_3" "Follow..." 180>>]
</div>/*#
#desc: barista kennel, fuck first dog
#status: RELEASED 0.9.3.0
#ignore_spell: feltch
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 11 'normal' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 5 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Company Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dog_park.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You crawl ahead of <<=setup.getNpcName('npc_barista', 'nickname')>> as she skips along the path, and it isn't long before you round a corner and come across the first other occupant of the private park... a large, and familiar, rottweiler.<br>
<br>
"@@.npc_barista;Oh! Aren't you a handsome fellow!@@" As she talks, the dog walks over and starts sniffing your behind. "@@.npc_barista;So friendly! Well go on, pet, return his affection!@@"<br>
<br>
The dog barely waits for you to do as commanded, and he is soon mounting you from behind as <<=setup.getNpcName('npc_barista', 'nickname')>> continues to dance around and watch. "@@.npc_barista;Such a good puppy! Yes you are, yes you are!@@" She coos as the dog knots you and humps away.<br>
<br>
<<=ps(setup.getNpcName('npc_barista', 'nickname'))>> voice falls off and you look up to see the spectre of jealousy mix with the arousal on her face. "@@.npc_barista;Wait, like... aren't I supposed to be doing the test here? Move over, I need some of that COCK!@@"<br>
<br>
With surprising speed and skill <<=setup.getNpcName('npc_barista', 'nickname')>> manages to extract the knot from your rear and then shove it into her own... though she is not wholly inconsiderate as she grabs you by the thighs and pulls you in to <<if $fetish.cum>>feltch pre-cum out of your ass<<else>>give you a rim job<</if>> as the dog finishes having his way with her.<br>
<br>
[<<moveTo "event_bestiality_barista_4" "Continue." 300>>]
</div>/*#
#desc: barista breeding study hunt down horse
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Company Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dog_park.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
With you having "fluffed" it doesn't take long before the dog finishes off in <<=setup.getNpcName('npc_barista', 'nickname')>> and she immediately pops to her feet, a look of lusty hunger in her eyes. "@@.npc_barista;Come on, pet, I've, like... only gotten started, sniff <<if $fetish.daddy>>mama<<else>>me<</if>> out MORE COCK!@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> snaps your leash insistently and you find yourself bounding forward... not that you can exactly smell much other than the leather of your mask, but it doesn't matter too much as you have to do little more than lead the way further down the path to come across your old Arabian friend.<br>
<br>
"@@.npc_barista;Yesss!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> shrieks as she rushes past you to throw herself under the animal. You watch the thick equine cock disappear inside of <<=setup.getNpcName('npc_barista', 'nickname')>> as she loudly moans... only to remind you that she still has your leash as she drags you in, somehow contorting herself so that she is getting railed while you're pulled up close to "help" by licking the horse's hot, sweaty balls...<br>
<br>
[<<moveTo "event_bestiality_barista_5" "Continue..." 1800>>]
</div>/*#
#desc: barista breeding study gangbang
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Company Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dog_park.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Your brief career as a bloodhound proves short-lived as <<=setup.getNpcName('npc_barista', 'nickname')>> passionately enthusiastic moans prove more than sufficient to draw further attention, and you soon have a proverbial dog and pony show grouped around waiting their turn.<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> shows off flexibility and stamina to take two, and occasionally three animals at a time as you fall into the role of "fluffer," fucking and sucking to entertain the eager horde until <<=setup.getNpcName('npc_barista', 'nickname')>> frees up to take over as she blitzes through pack and herd, eagerly taking every knot and equine cock with glee.<br>
<br>
<<printThought "She's an animal! No... more than that...">><br>
<br>
[<<moveTo "event_bestiality_barista_6" "Continue." 1800>>]
</div>/*#
#desc: barista breeding study debrief
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Company Park">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dog_park.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
In the eternal contest between woman and wild <<=setup.getNpcName('npc_barista', 'nickname')>> notches a victory for humanity as, though mussed<<if $fetish.cum>>, cum-covered<</if>>, dirty, and drooling she's still raring for more as horse and dog both begin dropping out and scattering back where they came.<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> seems about ready to chase after the final stallion for more when <<=setup.getNpcName('npc_evil_nurse', 'formal')>> re-appears, her intimidating presence finally sufficient to snap <<=setup.getNpcName('npc_barista', 'nickname')>> out of her lust-madness.<br>
<br>
"@@.npc_evil_nurse;Well!@@" <<=setup.getNpcName('npc_evil_nurse', 'formal')>> states as she leads the way back to the elevator. "@@.npc_evil_nurse;That was certainly a successful trial...@@"<br>
<br>
"@@.npc_barista;Trial?@@" <<=setup.getNpcName('npc_barista', 'nickname')>> replies, somehow perking up with a practically unfathomable second wind. "@@.npc_barista;Does that mean I passed? Can start for real? Getting <<if $fetish.cum>>pumped full of so much cum<<else>>fucked like that<</if>> has me feeling full of energy and ready to have sex!@@"<br>
<br>
<<=setup.getNpcName('npc_evil_nurse', 'formal')>> is momentarily taken aback by <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> limitless lusts but she shakes her head, putting an extra edge of authority in her voice as she taps the elevator button to take the three of you back to the kennels.<br>
<br>
"@@.npc_evil_nurse;No. That will be all for today. My team has plenty of data to review and I'm sure someone needs a coffee... somewhere.@@"<br>
<br>
[<<moveTo "event_bestiality_barista_7" "Continue." 300>>]
</div>/*#
#desc: barista breeding study finish
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "scheduleBreedingStudy">>
<<include "scheduleBreedingCapstone">>
<<removeItemSet 'puppy_black_copy'>>
<<deleteItemSet 'puppy_black_copy'>>
<<removeItem 'dog_leash' true>>
<<deleteItem 'dog_leash'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Somehow more powerful than her bimbo lust, the reminder of <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> calms her down as you return to the kennel and she helps you change out of the bitchsuit back into your work attire.<br>
<br>
"@@.npc_barista;That was, like, fun!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> states gleefully as she stuffs her plugs back into her lower holes. "@@.npc_barista;You weren't like, scary like you usually are!@@" She adds in a comment directed at <<=setup.getNpcName('npc_evil_nurse', 'formal')>>.<br>
<br>
<<=setup.getNpcName('npc_evil_nurse', 'formal')>> takes things in stride as she nods. "@@.npc_evil_nurse;Yes, well, you performed to requirements today... and now you really do need to return to work, hmm?@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> grins so wide it's almost mocking, but <<=setup.getNpcName('npc_evil_nurse', 'formal')>> takes no further action as you finish straightening your clothes and head back to your desk, with <<=setup.getNpcName('npc_barista', 'nickname')>> thanking you profusely for bringing her in to the "trial" before continuing down the elevator to Cafe 52.<br>
<br>
[<<moveTo $scene.workEventReturn "Get back to your desk." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: npc_evil_nurse tells you to recruit more subjects
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'company' 'theme_psychiatrist_bestiality_recruit'
0
'theme_bestiality_psych_recruit_1'
true
>>
<<addNpcTheme 'npc_technician' 'work' 'theme_bestiality_technician_recruit'
0
'theme_bestiality_technician_recruit_1'
true>>
<<addNpcTheme 'npc_barista' 'work' 'theme_bestiality_barista_recruit'
0
'theme_bestiality_barista_1_invite_1'
false
>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You are about to leave after your session when <<=setup.getNpcName("npc_evil_nurse","formal")>> stops you with a taunting grin.<br>
<br>
"@@.npc_evil_nurse;As helpful as you've been with my investigations well... a single data point is mere case study. I need more volunteers to... test my techniques. An eager slut like you must have some friends, yes? Well, it's time for you to do some recruiting and bring them in, without fresh victims, well, I'm not sure what else you're good for.@@"<br>
<br>
<<printThought "Victim? She isn't even trying to hide things... still, despite her demeanor I have kind of enjoyed myself... maybe it would be fun to bring a friend?... and I doubt she's liable to accept anything else...">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Leave the kennel and return to your desk." 300>>]
</div>/*#
#desc: try to recruit npc_psychiatrist to bestiality study
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You bring up <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> instructions for you to recruit additional volunteers for her breeding study and ask <<=setup.getNpcName("npc_psychiatrist","formal")>> if she would participate?<br>
<br>
The mention of <<=setup.getNpcName("npc_evil_nurse","formal")>> has <<=setup.getNpcName("npc_psychiatrist","formal")>> visibly on edge, but she glances towards a corner of the room before calmly giving her reply.<br>
<br>
"@@.npc_psychiatrist;No... I do not think that would be appropriate for me to do. Obviously I would not wish to interfere with your own efforts and <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> studies, but I must personally decline.@@"<br>
<br>
[<<moveTo "theme_bestiality_psych_recruit_2" "Ask if she would do it as a favour to you?" 120 "<<set $scene.reason='favor'>>">>]<br>
[<<moveTo "theme_bestiality_psych_recruit_2" "Beg her to help." 120 "<<set $scene.reason='beg'>>">>]<br>
<<if setup.getTotalValue("dominance")>>
[<<moveTo "theme_bestiality_psych_recruit_2" "Order her to help." 120 "<<set $scene.reason='order'>>">>]<br>
<</if>>
[<<moveTo "theme_bestiality_psych_recruit_2" "Isn't she obligated to help?" 120 "<<set $scene.reason='con'>>">>]<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: convince npc_psychiatrist to do bestiality study
#status: RELEASED 0.9.2.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("smart") > 10 && $scene.reason == 'con'>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'company', 'theme_psychiatrist_bestiality_recruit')>>
<<set $npc_psychiatrist.themes.company[_themeId].repeatable = false>>
<<addWorkEvent "bestiality_friend_psych">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.reason>>
<<case 'favor'>>
You ask if <<=setup.getNpcName("npc_psychiatrist","formal")>> would be willing to "assist" with <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> breeding study as a favour to you but, again, she demures.<br>
<br>
"@@.npc_psychiatrist;My answer is firm. I do not have time for... such things. Speaking of time, ours is ticking away, I am sure you have something more important to speak to me about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<case 'beg'>>
You beg <<=setup.getNpcName("npc_psychiatrist","formal")>> to "assist" with <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> breeding study but, again, she shakes her head.<br>
<br>
"@@.npc_psychiatrist;My answer is firm. I do not have time for... such things. Speaking of time, ours is ticking away, I am sure you have something more important to speak to me about?@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<case 'order'>>
You command <<=setup.getNpcName("npc_psychiatrist","formal")>> to "assist" with <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> breeding study.
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
She hesitates for an instant, seemingly momentarily enthralled by your dominant aura, but then collects herself and shakes her head.<br>
<br>
"@@.npc_psychiatrist;N-no... I, can't I, I do not have time for... such things. Speaking of time, ours is ticking away, I am sure you have something more important to speak to me about?@@"
<<else>>
She shakes her head.<br>
<br>
"@@.npc_psychiatrist;Are you trying to dominate me? Not bad, I must say... but, I also must say that I do not have time for... such things. Speaking of time, ours is ticking away, I am sure you have something more important to speak to me about?@@"
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
Her response is to shake her head.<br>
<br>
"@@.npc_psychiatrist;I am sorry but... no, I do not have time for... such things. Speaking of time, ours is ticking away, I am sure you have something more important to speak to me about?@@"
<<else>>
Her response is all but stifling a laugh.<br>
<br>
"@@.npc_psychiatrist;I am sorry but... you are just too sweetly submissive for that tone, hmm? In any case, I do not have time for... such things. Speaking of time, ours is ticking away, I am sure you have something more important to speak to me about?@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<case 'con'>>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("smart") > 10>>
You weave a cunning, and sexy, logical trap, pointing out how <<=setup.getNpcName("npc_psychiatrist","formal")>> has always instructed you to embrace "new" experiences and, well... it would be hypocritical if she did not show by example and follow her own advise.<br>
<br>
She is momentarily taken aback, trying to argue back, but you deftly parry her riposte as you inject your words with lusty enthusiasm, flattering her with how much you've gained from her lessons, and doesn't she deserve a bit of fun? To say nothing of contributing to science and the company...<br>
<br>
She hesitates, gaze flicking away from you once again before nervously replying. "@@.npc_psychiatrist;I suppose I don't have a choice... do I... very well. I will assist with <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>>... project, assuming I can work it into my schedule. You are not my only patient, after all.@@"
<<else>>
You try to convince <<=setup.getNpcName("npc_psychiatrist","formal")>> that "assisting" you would be a continuation of the lessons she has been teaching you in regards to experimentation and trying new things sexually.
<<if setup.getTotalValue("bimbofication") > 15>>
Unfortunately, as enthusiastic as you are with your pitch, you can't seem to navigate your way past her replies to ensnare her in a logical trap.<br>
<br>
"@@.npc_psychiatrist;Again, it is in no way a contradiction for me to not be willing to indulge in such things. After all, we have a doctor-patient relationship and that puts certain mmm, ethical constraints on what it would be proper for me to do. Come, let us speak of other things.@@"
<<elseif setup.getTotalValue("smart") > 10>>
Alas, as air-tight as your logical argument may be, it lacks for passion and <<=setup.getNpcName("npc_psychiatrist","formal")>> ends up shaking her head.<br>
<br>
"@@.npc_psychiatrist;Mmm, yes, I do see your point... but I still do not believe such would be proper, in fact, I think my being in such a... situation would only be a distraction from your ongoing development.@@"
<<else>>
Unfortunately you lack for both passion and logical structure in your argument and <<=setup.getNpcName("npc_psychiatrist","formal")>> is not only unconvinced... but seemingly a little embarrassed on your behalf as she ushers things along.<br>
<br>
"@@.npc_psychiatrist;No, I think this topic is a dead end, come, there must be something else more important on your mind?@@"
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.reason <<=$scene.reason>>
<</switch>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: start event with npc_psychiatrist
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You have a summons from <<=setup.getNpcName("npc_evil_nurse","formal")>> to the work kennels.<br>
<br>
[<<moveTo "event_bestiality_psych_2" "Head up." 300>>]
</div>/*#
#desc: start event with npc_psychiatrist
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You arrive in the kennels to find <<=setup.getNpcName("npc_psychiatrist","formal")>> waiting, <<=setup.getNpcName('npc_evil_nurse', 'formal')>> timing things perfectly to walk out just as you arrive with a satisfied, taunting greeting.<br>
<br>
"@@.npc_evil_nurse;<<=setup.getNpcName("npc_psychiatrist","formal")>>! It's been just too long! Welcome, welcome, and thank you <<=$player.first_name>> for convincing <<=setup.getNpcName("npc_psychiatrist","formal")>> to agree to participate in my study.@@"<br>
<br>
"@@.npc_psychiatrist;<<=setup.getNpcName('npc_evil_nurse', 'first')>>,@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> replies tersely, her reticence only causing <<=setup.getNpcName('npc_evil_nurse', 'formal')>> to grin wider.<br>
<br>
"@@.npc_evil_nurse;<<=setup.getNpcName('npc_evil_nurse', 'first')>>? I was not aware we were on a first name basis... but, in that case... come along... <<=setup.getNpcName("npc_psychiatrist","first")>>, I can tell you are EAGER to get things started...@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> bristles, but forces a smile. "@@.npc_psychiatrist;Of course, after all, it is my responsibility to set a good example for my patient.@@"<br>
<br>
<<=setup.getNpcName('npc_evil_nurse', 'formal')>> grins even wider as she leads the way deeper into the kennels.<br>
<br>
[<<moveTo "event_bestiality_psych_3" "Follow." 300>>]
</div>/*#
#desc: npc_psychiatrist restrained
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_psychiatrist","npc_psychiatrist_naked")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_evil_nurse', 'formal')>> leads you back to a familiar restraint harness, watching with a satisfied smile as <<=setup.getNpcName("npc_psychiatrist","formal")>> strips and bends over into position.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> remains mostly stoic as <<=setup.getNpcName('npc_evil_nurse', 'formal')>> almost gleefully cinches every restraint into place, soon having your therapist helplessly spread, exposed and ready for breeding. As <<=setup.getNpcName('npc_evil_nurse', 'formal')>> finishes off with a large jaw-spreading ring gag <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> eyelids flicker... despite her front, she's enjoying this...<br>
<br>
"@@.npc_evil_nurse;Come...@@" <<=setup.getNpcName('npc_evil_nurse', 'formal')>> states, her fingers running along <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> spine making the target of her command somewhat ambiguous until she turns to look you in the eye. "@@.npc_evil_nurse;We will observe the procedure from the other room your seductive presence might... dilute the findings.@@"<br>
<br>
With a final glance backwards you follow <<=setup.getNpcName('npc_evil_nurse', 'formal')>> around the corner into an observation room as she presses a button to lock <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> chamber and start recording.<br>
<br>
[<<moveTo "event_bestiality_psych_4" "Watch..." 1800>>]
</div>/*#
#desc: npc_psychiatrist bred
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_psychiatrist","npc_psychiatrist_naked")>>
<div id="invframe" class="scrolltext">
You stand next to <<=setup.getNpcName('npc_evil_nurse', 'formal')>> as she flips a lever, a gate raising in <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> cell for a large dog to trot out. Gagged and drooling, <<=setup.getNpcName("npc_psychiatrist","formal")>> watches as best her restraints permit as the animal moves behind and mounts her, her entire body shuddering as it knots her with a single thrust.<br>
<br>
"@@.npc_evil_nurse;Excellent,@@" <<=setup.getNpcName('npc_evil_nurse', 'formal')>> purrs, pulling another lever to set a second dog loose on <<=setup.getNpcName("npc_psychiatrist","formal")>>, the two beasts barking in greeting in a quick hierarchical contest before the newcomer takes <<=setup.getNpcName("npc_psychiatrist","formal")>> from the front, his engorged cock barely fitting through the gag as the two dogs start humping away.<br>
<br>
Down below you spot <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> <<getWordPenis false>> dripping with excitement as she seems to relax into her bonds, accepting the inescapable inevitability of the canine double team.<br>
<br>
<<=setup.getNpcName('npc_evil_nurse', 'formal')>> looks on with cruel glee as she monitors the situation, the first dog finishing with a howl and called out of the room to be replaced with a fresh animal. As the "study" continues you realise that <<=setup.getNpcName("npc_psychiatrist","formal")>> is more than merely restrained, <<=ps(setup.getNpcName('npc_evil_nurse', 'formal'))>> fingers dancing across the control panel to adjust <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> position... and occasionally dish out jolting shocks.<br>
<br>
Under <<=ps(setup.getNpcName('npc_evil_nurse', 'formal'))>> meticulous administration <<=setup.getNpcName("npc_psychiatrist","formal")>> has satisfied at least half a dozen dogs, <<if $fetish.cum>>cum, sweat, and drool<<else>>sweat and drool<</if>> running down her body as what appears to be the final dog trots out of the room and <<=setup.getNpcName('npc_evil_nurse', 'formal')>> reaches for a different lever. Spent, wet and gaping <<=setup.getNpcName("npc_psychiatrist","formal")>> turns as a new, larger gate rises open and a horse sticks its long head out...<br>
<br>
[<<moveTo "event_bestiality_psych_5" "Maybe she's had enough..." 1800 "<<set $scene.interrupt=true>>">>]<br>
[<<moveTo "event_bestiality_psych_5" "Just keep watching..." 1800 "<<set $scene.interrupt=false>>">>]
</div>/*#
#desc: npc_psychiatrist breeding continues
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.interrupt>>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.interrupt>>
You reach out to stop <<=setup.getNpcName('npc_evil_nurse', 'formal')>>, her expression of delight turning to an annoyed sneer as she pauses to look at you?<br>
<br>
"@@.npc_evil_nurse;You are here to observe, not to interfere!@@"<br>
<br>
She taps a remote and robotic arms swing down from the ceiling. In moments <<=setup.getNpcName("npc_psychiatrist","formal")>> is no longer the only one restrained as you find yourself all but trussed and suspended, with a massive dildo gag shoved down your throat to silence your complaints.<br>
<br>
"@@.npc_evil_nurse;I thought I was extending a courtesy for you to watch <<=ps(setup.getNpcName("npc_psychiatrist","first"))>> procedure... or maybe you're just jealous?@@"
<<else>>
<<=setup.getNpcName('npc_evil_nurse', 'formal')>> glances at you out of the corner of her eye as you silently watch as the horse enters the room.
<</if>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> looks at the horse with an expression between fear and anticipation as her restraints raise her into a higher position, and hooves step up onto platforms on either side of her.<br>
<br>
The horse's large, hard cock slaps <<=setup.getNpcName("npc_psychiatrist","formal")>> several times before homing in, plowing even wider the hole the dogs had gaped as she moans through her gag.<br>
<br>
Spurred on by training, his partner, or some sort of primal effort to prove his superiority to man's best friend, the horse demonstrates not just size, but stamina and power as he fucks <<=setup.getNpcName("npc_psychiatrist","formal")>>, every thrust a powerful, bone-rattling stroke, rolling on and on until he eventually climaxes, the power of this final explosion too much for <<=setup.getNpcName("npc_psychiatrist","formal")>> to handle and she passes out<<if $fetish.cum>> as he pumps her full before trotting away<<else>> before he trots away<</if>>.<br>
<br>
[<<moveTo "event_bestiality_psych_6" "It's over?" 1800>>]
</div>/*#
#desc: npc_psychiatrist breeding complete
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
Only with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> passed out from bestial pounding does <<=setup.getNpcName('npc_evil_nurse', 'formal')>> draw things to a close, <<if $scene.interrupt>>casually releasing your bonds and <</if>>unlocking the test chamber.<br>
<br>
"@@.npc_evil_nurse;Go down and clean up <<=setup.getNpcName("npc_psychiatrist","first")>>. She has provided the data I require... now it is up to you to find me another victim.@@"<br>
<br>
[<<moveTo "event_bestiality_psych_7" 'Unstrap <<=setup.getNpcName("npc_psychiatrist","formal")>>.' 300>>]
</div>/*#
#desc: npc_psychiatrist breeding complete
#status: RELEASED 0.9.2.0
#ignore_spell: st
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "scheduleBreedingStudy">>
<<include "scheduleBreedingCapstone">>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You hurry down and unstrap <<=setup.getNpcName('npc_psychiatrist', 'formal')>> just as she starts to come to.<br>
<br>
"@@.npc_psychiatrist;<<=$player.first_name>>?@@" She's obviously still a bit out of it, but she looks around before whispering something to you, clearly attempting to hide her words from <<=setup.getNpcName('npc_evil_nurse', 'formal')>>. "@@.npc_psychiatrist;That was... that was something. I don't think I've been fucked like that since that time I did work-study at St Lawrence's Universal Training Academy...@@" she winks at you, "@@.npc_evil_nurse;Some of the girls there would give even you a run for your money!@@"<br>
<br>
As you finish removing her restraints and hand her a towel to wipe down she raises her voice. "@@.npc_psychiatrist;I hope you took a lesson from my example... because I will not be performing such acts again. Such a favour was already near the edge of what would be appropriate to do on behalf of a patient...@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> is walking somewhat unsteadily and you help her out of the kennel only for <<=setup.getNpcName('npc_evil_nurse', 'formal')>> to appear just before you leave sporting a wide grin.<br>
<br>
"@@.npc_evil_nurse;Good, you are ambulatory, some patients are... well, no matter. I just wanted to let you know that I analysed the preliminary results and you scored the highest "pleasure reading" on record!@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> starts to bluster an argument, but <<=setup.getNpcName('npc_evil_nurse', 'formal')>> has already made her laughing retreat, leaving you to help <<=setup.getNpcName('npc_psychiatrist', 'formal')>> the rest of the way to the elevator as she insists that she is fine to head home, and that you should return to work before you get in trouble.<br>
<br>
[<<moveTo $scene.workEventReturn "Get back to your desk." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: invite to kennel study
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_datethemes += 1>>
<<applyStress -2>>
<<if $npc_technician.relationship.kink_indulge.dog >= 2 && $npc_technician.relationship.kink_indulge.horse>>
<<set _themeId = setup.findThemeId('npc_technician', 'work', 'theme_bestiality_technician_recruit')>>
<<set $npc_technician.themes.work[_themeId].repeatable = false>>
<<addWorkEvent "bestiality_friend_tech">>
<</if>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up the "breeding" study you've been doing at work, and ask if <<=setup.getNpcName("npc_technician","first")>> would be interested in participating?<br>
<br>
Though you do not go into details, her eyes are already lighting up.
<<if $npc_technician.relationship.kink_indulge.dog >= 2 && $npc_technician.relationship.kink_indulge.horse>>
"@@.npc_technician;Science... SEXY science? Heck yeah, sign me up and fuck my butt!@@"<br>
<br>
You laught along with <<=ps(setup.getNpcName("npc_technician","first"))>> enthusiasm and tell her to keep an eye out at work for a call about participating.<br>
<br>
"@@.npc_technician;Oh wow, I could do it AND have it be off the clock? Heh, I realise the company is evil, even beyond the basic capitalism-stuff but things like that, well... maybe it's good to be evil...@@" she winks at you playfully.
<<else>>
<<if $npc_technician.relationship.kink_indulge.dog >= 1 || $npc_technician.relationship.kink_indulge.horse>>
"@@.npc_technician;Science... SEXY science? Intriguing... but, I think, well... maybe you and I do a bit more experimentation on our own first?@@"
<<elseif $npc_technician.relationship.kinks.bestiality>>
"@@.npc_technician;Science... SEXY science? I am definitely interested only... well, maybe the two of us do some "experimenting" on our own first?@@"
<<else>>
"@@.npc_technician;Science... SEXY science? I am definitely interested only... well, you hadn't mentioned being into that sort of thing... maybe we could try talking about that first before we go jumping off into stuff with other people...@@"
<</if>>
<</if>>
<br><br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: summone for event with npc_technician
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You have a summons from <<=setup.getNpcName("npc_evil_nurse","formal")>> to the work kennels.<br>
<br>
[<<moveTo "event_bestiality_tech_2" "Head up." 300>>]
</div>/*#
#desc: npc_technician shows up
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You arrive at the kennel just as <<=setup.getNpcName("npc_technician","first")>> in the company of a guard. She greets you with a smile, "@@.npc_technician;apparently lowly little old me isn't allowed up here unescorted, intrigue!@@"<br>
<br>
The guard is nonplussed by <<=ps(setup.getNpcName("npc_technician","first"))>> playfulness, as <<=setup.getNpcName("npc_evil_nurse","formal")>> accepts "responsibility" for the under-credentialed <<=setup.getNpcName("npc_technician","first")>> and dismisses the security officer.<br>
<br>
"@@.npc_evil_nurse;Welcome, Miss <<=$player.last_name>>, <<=setup.getNpcName("npc_technician","other")>>, for today's program the two of you will need to be properly equipped, if you would kindly change, we can get started...@@"<br>
<br>
She gestures and you turn to see a pair of leather pony outfits, complete with steep hoof-boots.<br>
<br>
[<<moveTo "event_bestiality_tech_3" "Get changed." 180>>]
</div>/*#
#desc: get changed
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'pony_girl'>>
<<wearItemSet 'pony_girl'>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_technician","npc_technician_ponygirl")>>
<div id="invframe" class="scrolltext">
Under <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> watchful observation you and <<=setup.getNpcName("npc_technician","first")>> strip and
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
<<=setup.getNpcName("npc_technician","formal")>> helps strap you into into your pony-girl outfit before you obediently returns the favour.
<<case "sub">>
you help your slave into her pony-girl outfit before she obediently returns the favour.
<<case "neutral" "">>
help one another get strapped in to your matching pony-girl outfits.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> does a quick check of your outfits, pulling straps an extra punishing notch tighter before nodding her approval.<br>
<br>
<<switch $npc_technician.relationship.her_role>>
<<case "dom" "sub">>
"@@.npc_evil_nurse;I can see the two of you have something going on, as an owner one must take a firm, harsh hand with their property... and show no less diligence themselves. Tight, steep and dedicated to their duties, it is the only way.@@"
<<case "neutral" "">>
"@@.npc_evil_nurse;Sloppy, a loose strap is not just a safety danger, but a moral failing. Tight, steep and dedicated to one's duties, it is the only way.@@"
<</switch>>
<br><br>
Suitably reprimanded, and unable to respond past your respective bit gags, you and <<=setup.getNpcName("npc_technician","first")>> nod in acknowledgement before falling in behind the stern nurse as she leads you to another room.<br>
<br>
"@@.npc_evil_nurse;Not to spoil things prematurely... but I am quite interested to see how two people in such a... trusting relationship will take to the procedure, none of my prior subjects have shown the willingness to recruit someone so close to them...@@" The way <<=setup.getNpcName("npc_evil_nurse","formal")>> says the word "trust" speaks to some serious emotional issues connected to the word, but, again, you cannot respond as you are lead down a short hallway...<br>
<br>
[<<moveTo "event_bestiality_tech_4" "Continue." 300>>]
</div>/*#
#desc: meet horses and get fucked
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_technician","npc_technician_ponygirl")>>
<div id="invframe" class="scrolltext">
Somewhat surprisingly, given how far up a skyscraper you are, the door opens onto a small field of grass, several horses grazing casually nearby, looking up with, at best, mild interest as <<=setup.getNpcName("npc_evil_nurse","formal")>> leads the two of you into the room and then steps back with little more than a parting "@@.npc_evil_nurse;Have fun!@@"<br>
<br>
Eyes glittering with her trademark enthusiasm, <<=setup.getNpcName("npc_technician","first")>> is soon dashing across the field with you in tow, showing <<if $npc_technician.relationship.kink_indulge.heels >= 3>>off the results of her practice<<else>>surprising agility<</if>> in the heel-less ponyboots as the two of you start to frolic with the horses.<br>
<br>
As fun as it is to "horse-play" and dash about with your pony-girl friend... the two of you soon attract the attention of a pair of stallions, your bounding turning to bending as you position yourself with asses high in the air, the beasts mounting you there on the grass, large, thick horse-cocks thrusting downwards to plow you in the middle of the field.<br>
<br>
Face in the dirt, drooling past her gag, moans with lust at every stroke... if anything, even more aroused as she looks over to watch you being treated the same, your world circumscribed by the four strong legs planted around each of you as the stallions take the two of you for a ride...<br>
<br>
[<<moveTo "event_bestiality_tech_5" "Continue." 900>>]
</div>/*#
#desc: more horse-fucking
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyExperience 'bestiality' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_technician","npc_technician_ponygirl")>>
<div id="invframe" class="scrolltext">
The two stallions finish at almost the same time and <<=setup.getNpcName("npc_technician","first")>> bounces back to her
<<if $fetish.cum>>
feet, leaking cum as she races
<<else>>
feet to race
<</if>>
across the field in the direction of a fresh "mount." <br>
<br>
As usual, you are caught up in <<=ps(setup.getNpcName("npc_technician","first"))>> exuberant excitement, the two of you soon attracting fresh interest, your already stretched asses even more easily accepting the thick cocks of the stallions. <<=ps(setup.getNpcName("npc_technician","first"))>> expression as she has her insides re-arranged is one of pure blissed out pleasure... and you doubt you look much different. Between the glow of the artificial sun, the grass under your knees... and the heat of your equine partner pounding you from behind... you find yourself forgetting that this is all part of some corporate experiment as you embrace the fun of getting fucked in a field with your friend.<br>
<br>
Horse-cock after horse-cock follows as the two of you gleefully fuck the entire herd, the first, hole-stretching experience followed by sloppy seconds... and thirds before <<=setup.getNpcName("npc_evil_nurse","formal")>> reappears.<br>
<br>
[<<moveTo "event_bestiality_tech_6" "Glance up." 300>>]
</div>/*#
#desc: debrief
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse") setup.charImage("npc_technician","npc_technician_ponygirl")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> scatters the satisfied horses before <<=setup.getNpcName("npc_technician","first")>> can try for another round. "@@.npc_evil_nurse;That is sufficient data for today, <<=setup.getNpcName("npc_technician","other")>> needs to return to her work,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> notes sharply as she waits for you and <<=setup.getNpcName("npc_technician","first")>> to help one another back to your feet and stagger out of the "field" room.<br>
<br>
Back in the kennel proper it is time for debrief.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> is a bit tired, but still excited, as she gives a glowing report of things, "@@.npc_technician;I had no idea there was a place like this in the middle of the city, just a few dozen floors above my desk! And the stallions were so gentle... but also so firm...@@" she bites her lip as she chuckles and rocks from one foot to another in excited reflection. "@@.npc_technician;Is that the sort of information you need? I mean, I guess I don't quite entirely understand what this study is about... not that I'm complaining! Getting railed by a big, beautiful beast like that... at least for this trans-girl, I could get used to this sort of getting fucked by the medical establishment! Honestly surprised that the company is willing to fund something like this but... hey, I'm not going to complain!@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> seems momentarily surprised by <<=ps(setup.getNpcName("npc_technician","first"))>> enthusiasm, but maintains her stoic expression as she takes a note and nods. "@@.npc_evil_nurse;Yes, well, I will include that data, as to funding well, that is nothing for you to be concerned about. What you should focus on now is your duties, because you have a job to return to. Miss <<=$player.last_name>> can escort you to the elevator.@@"<br>
<br>
[<<moveTo "event_bestiality_tech_7" "Get changed and leave." 300>>]
</div>/*#
#desc: get changed
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'pony_girl'>>
<<deleteItemSet 'pony_girl'>>
<<useClothSetPop 'tmp'>>
<<include "scheduleBreedingStudy">>
<<include "scheduleBreedingCapstone">>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> leaves the room for you and <<=setup.getNpcName("npc_technician","first")>> to unstrap and rinse off before chaning back into your work attire.<br>
<br>
<<if $npc_technician.relationship.kink_indulge.heels >= 3>>
Balanced on her toes, <<=setup.getNpcName("npc_technician","first")>> winks playfully as she puts her steep heels back on.
<<else>>
Reflexively balanced on her toes after removing the hoof boots, <<=setup.getNpcName("npc_technician","first")>> blushes when you notice. "@@.npc_technician;Okay, so I guess SOMETIMES heels are acceptable... but it's different wearing them every day than for y'know... pony-play fun.@@"
<</if>>
<br><br>
You smile back and lead <<=setup.getNpcName("npc_technician","first")>> to the elevator, leaving her off with a parting kiss as you disembark for your floor.<br>
<br>
[<<moveTo $scene.workEventReturn "Get back to your desk." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: evil_nurse finds you and technician while playing with dogs
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Park.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_technician","npc_technician_casual") "elite_guard" setup.charImage("npc_evil_nurse","npc_evil_nurse_mask") "elite_guard">>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_technician","first")>> are enjoying yourselves "in nature" when a shadow falls over you.<br>
<br>
"@@.npc_evil_nurse;Well, well, well... look what these two bitches have gotten up to...@@" you look up to see <<=setup.getNpcName("npc_evil_nurse","formal")>> standing over you, looking even more alien and intimidating in her full suit and mask... and flanked by a pair of masked company guards.<br>
<br>
"@@.npc_evil_nurse;We were making the rounds looking for strays to add to the kennel and, well... what should I find but two of my LOVELY test subjects doing an un-registered study.@@" She knees down, taunting you with a grin as the unconcerned dog continues to fuck your ass. "@@.npc_evil_nurse;You do realise that an experiment without observation is all but useless... how about you bitches come with me and we make this night a bit more mmm... PRODUCTIVE?@@"<br>
<br>
Around you corporate thugs are rounding up most of the other stray dogs. A few manage to escape past the treeline, but soon the only animal left in the clearing is your current paramour. You glance over at <<=setup.getNpcName("npc_technician","first")>>, she might be able to run away, but you're stuck in the bitchsuit and would only slow her down... even ignoring the thick knot currently locked in your ass. <<=setup.getNpcName("npc_technician","first")>> looks back at you, tense and waiting to take her cue from you...<br>
<br>
[<<moveTo "event_bestiality_tech_bitchsuit_2" 'Go with <<=setup.getNpcName("npc_evil_nurse","formal")>>.' 300 "<<set $scene.join=true>>">>]<br>
[<<moveTo "event_bestiality_tech_bitchsuit_2" "Shake your head, you don't want to go." 300 "<<set $scene.join=false>>">>]
</div>/*#
#desc: evil_nurse recruits you and technician from park
#status: RELEASED 0.9.4.0
#ignore_spell: k
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Park.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.join || $fetish.get_raped>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_technician","npc_technician_bitchsuit")>>
<<else>>
<<createAdvBGR "./images/locations/city_park.png" setup.charImage("npc_technician","npc_technician_casual")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.join>>
You and <<=setup.getNpcName("npc_technician","first")>> end up caught up as well, with <<=setup.getNpcName("npc_evil_nurse","formal")>> recognising you and taunting <<=setup.getNpcName("npc_technician","first")>> for being "under-dressed."
<br>
<<=setup.getNpcName("npc_technician","first")>> is dressed in a bitchsuit of her own before both of you are loaded into a van. The other dogs are looking interested and you have a choice of enticing <<=setup.getNpcName("npc_technician","first")>> to "claim" you for herself befor the two of you get fucked by the rowdy K-9's.<br>
<br>
[<<moveTo "event_bestiality_tech_bitchsuit_3" 'Offer yourself to <<=setup.getNpcName("npc_technician","first")>>.' 900 "<<set $scene.tech_sex=true>>">>]<br>
[<<moveTo "event_bestiality_tech_bitchsuit_3" 'Settle in for the ride...' 900 "<<set $scene.tech_sex=false>>">>]
<<else>>
You shake your head vigorously... which somehow serves to excite the dog humping away at your ass and you moan through your gag as the thick knotted cock<<if $fetish.cum>> dumps a massive load in your ass<<else>>swells even larger<</if>> as the beast howls in climax.<br>
<br>
<<if $fetish.get_raped>>
<<=setup.getNpcName("npc_evil_nurse","formal")>> snorts. "@@.npc_evil_nurse;Have you forgotten your contract? I can use you whenever I want, for whatever I want... and right now I want to take and your perverted girlfriend back to my lab to breed you like bitches for a few hours.@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> snaps her fingers and several guards rush in, swiftly subduing both you and <<=setup.getNpcName("npc_technician","first")>>, before hauling you out of the park where <<=setup.getNpcName("npc_technician","first")>> is forced into an outfit not dissimilar to your own before the two of you are shoved into the back of a van along with the other mutts.<br>
<br>
As you find your feet you look around <<if $npc_technician.relationship.her_caged>><<=ps(setup.getNpcName("npc_technician","first"))>> cage dangles down through the bitchsuit<<else>><<=ps(setup.getNpcName("npc_technician","first"))>> cock sticks out hard from a hole in the bitchsuit<</if>><<if $fetish.cum>>, dripping with excitement<</if>>.<br>
<br>
The other dogs are starting to look your way, looking leaderless and unorganised. You figure you have only a few moments to make a move...<br>
<br>
[<<moveTo "event_bestiality_tech_bitchsuit_3" 'Offer yourself to <<=setup.getNpcName("npc_technician","first")>>.' 900 "<<set $scene.tech_sex=true>>">>]<br>
[<<moveTo "event_bestiality_tech_bitchsuit_3" 'Settle in for the ride...' 900 "<<set $scene.tech_sex=false>>">>]
<<else>>
<<=setup.getNpcName("npc_evil_nurse","formal")>> seems about to do something when one of the guards pops up to report that "@@.generic_male1;We've finished our sweep, ma'am.@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> snorts as she rises back to her feet. "@@.npc_evil_nurse;Very well, that should be enough for one night... see you back at the kennels.@@" She adds with a wink before turning away, storming off across the park with the guards and their captured hounds in tow.<br>
<br>
"@@.npc_technician;That was a close one...@@" <<=setup.getNpcName("npc_technician","first")>> states as your canine friend finally slides free of your ass to scamper off. "@@.npc_technician;Let's get you home before anything else strange happens...@@"<br>
<br>
You nod, crawling behind as <<=setup.getNpcName("npc_technician","first")>> sets a brisk pace back to her flat.<br>
<br>
[<<moveTo 'event_technician_private_game_root' "Hurry back to safety and get changed." 600 "<<removeItemSet 'puppy_black_copy'>><<deleteItemSet 'puppy_black_copy'>><<removeItem 'dog_leash' true>><<deleteItem 'dog_leash'>><<removeItem $scene.dogPlug true>><<deleteItem $scene.dogPlug>><<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: transported with npc_technician
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.tech_sex>>
<<applyExperience 'bimbofication' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_technician.penis_size 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bestiality' 5 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' 15 'terrible' $SEEN_FRIEND>>
<<applyFatigue 100>>
<</if>>
<</if>>
<<set $player.location = "Transport Vehicle">>
<<include playerMenuDrone>>
<<initRoom>>
<<createAdvBGR "./images/locations/transport.png" setup.charImage("npc_technician","npc_technician_bitchsuit")>>
<div id="invframe" class="scrolltext">
<<if $scene.tech_sex>>
You think fast and offer yourself to <<=setup.getNpcName("npc_technician","first")>>. She takes a moment to glance around before figuring out the play, mounting you to "take control" of the leaderless pack, <<if $npc_technician.relationship.her_caged>>and her cage is soon grinding against your ass<<else>>her hard cock slamming into your stretched hole<</if>><<if $fetish.cum>>, lubricated with canine cum<</if>>.<br>
<br>
As <<=setup.getNpcName("npc_technician","first")>> humps the van lurches into motion, the movement serving to further distract the other dogs as you ride off to the company or who knows where.
<<else>>
You remain motionless and the pack descends. Soon both you and <<=setup.getNpcName("npc_technician","first")>> are being pinned and knotted, the largest, strongest of the disorganised beasts claiming your ass while the others circle, waiting their turn or rubbing against your face in anticipation.<br>
<br>
The scene of dog<<if $fetish.cum>>, and dog-cum<</if>> is strong as the van lurches into motion, carrying you and <<=setup.getNpcName("npc_technician","first")>> away on your way to the company... or who knows where.
<</if>>
<br><br>
[<<moveTo "event_bestiality_tech_bitchsuit_4" 'Continue.' 1800>>]
</div>/*#
#desc: drugged for procedure
#status: RELEASED 0.9.4.0
#ignore_spell: k
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.drugs>>
<<setTmpEffect 'drug_pacification'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parkinggarage.png" setup.charImage("npc_technician","npc_technician_bitchsuit") setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Given that you it was already late, and you had already been fucked hard before you even got into the van, you're panting by the time vehicle comes to a halt and the rear doors open.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> retracts her mask to smirk down and snort in amusement as she looks in at you<<if $scene.tech_sex>>, coupled with you girlfriend<<else>>, getting knotted hard by one of the hounds<</if>>.<br>
<br>
"@@.npc_evil_nurse;Just had to get a jump on things?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> she notes as guards drag you and <<=setup.getNpcName("npc_technician","first")>> apart and start corralling the other animals. "@@.npc_evil_nurse;Well come along, we'll have MUCH more of that in a bit.@@" She states as you, <<=setup.getNpcName("npc_technician","first")>>, and your K-9 friends are guided into individual crates and loaded into the freight elevator.<br>
<br>
<<if $fetish.drugs>>
As you ride down you get a faint whiff of something, spotting a pink gas seeping into your crate. There is no escape, and no way to hold your breath long enough for safety, leaving you no choice but to breath deep of the drug. Your heart races faster as you feel a second wind of energy... and of arousal.<br>
<br>
<</if>>
Around you, you hear banging and howling coming from the other crates... it would seem that a real frenzy of excitement is soon to begin...<br>
<br>
[<<moveTo "event_bestiality_tech_bitchsuit_5" 'Continue.' 6000>>]
</div>/*#
#desc: fucked in R&D
#status: RELEASED 0.9.4.0
#ignore_spell: s,b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bestiality' 5 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' 15 'terrible' $SEEN_FRIEND>>
<<applyFatigue 500>>
<</if>>
<<set $player.location to "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_technician","npc_technician_bitchsuit") setup.charImage("npc_evil_nurse","npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You arrive at some unknown R&D floor, your crates rolled up a hallway and into a lab where you and <<=setup.getNpcName("npc_technician","first")>> soon find yourself in side-by-side pens... getting bred into the floor by dog after dog.<br>
<br>
In between fat knots stretching your hole<<if $player.body_ref.vagina>>s<</if>><<if $fetish.cum>>, and thick cum pumped deep into you<</if>>, you piece together what's going on. There is a clear separation between animals, the scruffier looking "street" dogs that you recognise from the van-ride, and more well-trimmed and fed animals from the lab as you piece together that you and <<=setup.getNpcName("npc_technician","first")>> have been "recruited" for some sort of perverse A/B test... judging by the vigour with which you are fucked, you have to imagine the study is something like whether feral or domesticated beasts are more efficient at breeding.<br>
<br>
Dog after dog fucks you hard<<if $fetish.drugs>> and soon even the drugs are not enough to keep you on<<else>>and soon you are struggling to keep on<</if>> your feet. Though you catch the odd glimpse through her bitch-mask of <<=ps(setup.getNpcName("npc_technician","first"))>> eyes rolled back in pleasure, or a howl of ecstasy escaping past her gag, you can tell that she's getting tired just the same as you, her head dropping as she drools on the floor... your canine companions caring little about the activity of the targets of their lust as they continue to fuck and fuck and fuck...<br>
<br>
[<<moveTo "event_bestiality_tech_bitchsuit_6" 'Pass out.' 3000>>]
</div>/*#
#desc: wake up at home
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You don't know how long you were bred... either before or after you passed out, but you find yourself awakening naked in your bed, your body stiff and your mind groggy. You reach out, grateful to be free of the bitchsuit as you notice a note on your nightstand.<br>
<br>
"@@.npc_evil_nurse;Thanks for the impromptu participation in my study,@@" reads the note that can only be from <<=setup.getNpcName("npc_evil_nurse","formal")>>. "@@.npc_evil_nurse;You and your friend are fast proving yourself to be my favourite bitches... until next time!@@"<br>
<br>
You fall back into bed, sore and tired... and immediately thinking of your friend as you fumble for your phone.<br>
<br>
[<<moveTo "event_bestiality_tech_bitchsuit_7" 'Check in on <<=setup.getNpcName("npc_technician","first")>>.' 180>>]
</div>/*#
#desc: check in on technician
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_technician' 1>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your throat is too sore to consider talking, so, with cramped fingers, you text <<=setup.getNpcName("npc_technician","first")>> to see how she is.<br>
<br>
"@@.npc_technician;Hi... yeah, I guess you got dumped at home, too? That was... well one helluva night. A bit more than I might have signed up for... but, in the end one heck of an experience. I wondered a bit if it was a dream or reality... but your text I guess confirms the latter. Once again you take me to the most interesting places... though I gotta say, that <<=setup.getNpcName("npc_evil_nurse","formal")>> is more than a little scary. Anyway, I think I'm going to conk out, I'm exhausted and my ass is a bit sore from getting knotted so many times... I wonder what the record for that is... heck, seeing you go, maybe YOU have it!@@"<br>
<br>
You chuckle, glad to see your friend is still in her usual high spirits as you stow your phone and fall back on the bed. <<printThought "Sleep does sounds nice...">><br>
<br>
[<<moveTo "room_bedroom" 'Take a deep breath.' 180>>]
</div><<if State.hasPlayed("event_bestiality_barista_7") && State.hasPlayed("event_bestiality_tech_7") && State.hasPlayed("event_bestiality_psych_7")>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 5, 0, false)>>
<<addEvent 'cattle_drive' _nextDate>>
<</if>>/*#
#desc: called for cattle drive event
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 18000) || !setup.inPassageTag($scene.beforetasklocation.last(),"home") || $npc_psychiatrist.flags.evil == 1 || $npc_technician.flags.evil == 1>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 5, 0, false)>>
<<addEvent 'cattle_drive' _nextDate>>
<<initRoom>>
<<set _dest = $scene.beforetasklocation.pop()>>
<<moveTo _dest>>
<<elseif setup.changedRoom()>>
<<include "removeGenitalMilkers">>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set _shoeId = setup.getItemFromType("shoes")>>
<<removeItem _shoeId true>>
<</if>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You're roused to wakefulness, not by your alarm... but by a cryptic text.<br>
<br>
"@@.npc_evil_nurse;Come downstairs. We have work to do. Do not delay or additional measures will be taken to ensure your compliance, per your contract. —<<=setup.getNpcName("npc_evil_nurse","formal")>>@@"<br>
<br>
You gulp reflexively<<if $scene.vagMilk || $scene.penisMilk>> as you disentangle from your sleep equipment<</if>>. You don't recall anything precisely about <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> study extending beyond work hours, but you're hardly surprised, and you've been around the evil nurse long enough to know that ignoring her message will only lead to a siege that your flimsy apartment door will definitely not hold off.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_bestiality_group_2" "Head downstairs." 300>>]
<<else>>
[@@.link_locked;You aren't dressed enough to leave your flat.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: ride to cattle drive event
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<</if>>
<<set $player.location = "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png">>
<div id="invframe" class="scrolltext">
Rather than finding <<=setup.getNpcName("npc_evil_nurse","formal")>> herself, the limousine is empty, driven by an automated driver, the doors locking shut ominously as soon as you step in as the vehicle zooms off to who knows where.<br>
<br>
<<printThought "This is fine... I mean, it's not like the company couldn't kidnap me at any time anyway... this is yeah... this is totally fine.">><br>
<br>
Alone in the vehicle, and with your phone having lost all signal, you have nothing to do but sit back and wait...<br>
<br>
[<<moveTo "event_bestiality_group_3" "Ride." 2400>>]
</div>/*#
#desc: cattle drive intro
#status: RELEASED 0.9.4.0
#ignore_spell: exurbs
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_barista","npc_barista_cocktail") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
The city centre falls away to suburbs, and then a brief speed through exurbs before you take a turn onto a company owned private drive to arrive at a farm. From the sweeping grass fields and the handful of grazing cattle you are starting to guess where the day is going... but are nonetheless surprised to pull up to find, still not <<=setup.getNpcName("npc_evil_nurse","formal")>>... but your friends <<=setup.getNpcName("npc_technician","first")>>, <<=setup.getNpcName("npc_barista","nickname")>>, and <<=setup.getNpcName("npc_psychiatrist","formal")>> waiting for you.<br>
<br>
There's a vague air of confusion as you step out of the vehicle, <<=setup.getNpcName("npc_psychiatrist","formal")>> seeming to have the closest to an explanation. "@@.npc_psychiatrist;As I was telling the others, this farm was part of some agricultural firm the company bought out in some acquisition or another... I've never visited, personally, but I think we can all imagine what <<=setup.getNpcName("npc_evil_nurse","first")>> could be getting up to here...@@"<br>
<br>
"@@.npc_evil_nurse;What I could be... what? And please, titles, we are doing important medical research here, yes? So formality is definitely in order!@@"<br>
<br>
[<<moveTo "event_bestiality_group_4" 'Turn to see <<=setup.getNpcName("npc_evil_nurse","formal")>>.' 300>>]
</div>/*#
#desc: cattle drive nurse deals with barista
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_barista","npc_barista_cocktail") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Having somehow snuck up on all four of you, <<=setup.getNpcName("npc_evil_nurse","formal")>> stands looking more than a little incongruous, her "normal" nurse attire topped off with a cowboy hat, a smashing together of rural and high tech that VERY doesn't work... and yet is somehow perversely appropriate, given the surroundings.<br>
<br>
"@@.npc_evil_nurse;Come along girls, we have SCIENCE to do,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states, her eyes blazing with evil excitement. "@@.npc_evil_nurse;Your individual performance in prior studies was each quite impressive, today I want to take things another step forward and out into the wild to test a mass breeding initiative...@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> leads the way towards a nearby barn, with a somewhat off the cuff addendum. "@@.npc_evil_nurse;Oh, and do not be concerned. I have official approval from the company to use you subjects for experimentation at any time, even off company grounds... though this ranch is, of course corporate property. Still, nothing will stand in the way of important SCIENCE!@@"<br>
<br>
Her words do little to assuage concerns, but you find yourself following along nonetheless... after all, the cars have left which, combined with the security fences on the way in, means you're effectively stranded out here until you've entertained whatever madcap plans <<=setup.getNpcName("npc_evil_nurse","formal")>> has in store.<br>
<br>
You've already reached the barn when <<=setup.getNpcName("npc_evil_nurse","formal")>> spins to look at <<=setup.getNpcName("npc_barista","nickname")>>. "@@.npc_evil_nurse;You! The rest of you I shall attend to shortly but <<=setup.getNpcName("npc_barista","formal")>>... you can come with me now...@@"<br>
<br>
There is an instantaneous glance, and a subtle nod, shot back and forth from <<=setup.getNpcName("npc_barista","nickname")>> to <<=setup.getNpcName("npc_psychiatrist","formal")>> before <<=setup.getNpcName("npc_barista","nickname")>> follows along with her trademark bimbo grin.<br>
<br>
[<<moveTo "event_bestiality_group_5" 'Wait for <<=setup.getNpcName("npc_evil_nurse","formal")>> to get back.' 1800>>]
</div>/*#
#desc: cattle drive nurse deals with barista
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo "event_bestiality_group_6">>
<</if>>
<<set $player.location to "Barn">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You wait several minutes before <<=setup.getNpcName("npc_evil_nurse","formal")>> re-appears, <<=setup.getNpcName("npc_barista","nickname")>> nowhere to be seen as the evil nurse instead leads the rest of you into the barn.<br>
<br>
"@@.npc_evil_nurse;You'll be back with your friend soon enough but first, come! Meet your partners for todays experiment!@@"<br>
<br>
Barn-doors thrown open wide reveal a trio of some of the largest bulls you've ever seen... not that you've seen particularly many, spending most of your life in the city, but still, they feel quite magnificent, muscular, virile examples of bovine magnificence. Perhaps enhancing the beast's stature is that they ear each slightly raise on a set of ramps, legs spread and planted giving easy access to their under-bellies... and the <<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>hard cocks swinging below. You gulp nervously as you note that one of the beasts has not one, but two bovine bludgeons... and you have a feeling which animal is about to be "yours." <<else>>trio of hard cocks swinging below. Each animal is already harnessed and it's immediately obvious just where this so-called "experiment" is going.<</if>><br>
<br>
"@@.npc_evil_nurse;Aren't they just GORGEOUS?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> croons. "@@.npc_evil_nurse;But chop-chop! Now is not to stand and admire, but to press forward, we have a BIG day ahead and I do not wish to disrespect my test subject's time by wasting any further time! Your clothes... remove them at once!@@"<br>
<br>
You glance around, <<=setup.getNpcName("npc_psychiatrist","formal")>> and <<=setup.getNpcName("npc_technician","first")>> are already starting to slip out of their clothing...<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_bestiality_group_6" "Remove your clothes." 180>>]
<<else>>
<<hint $options "You need to remove your clothes.">>
<</if>>
</div>/*#
#desc: cattle drive hitched
#status: RELEASED 0.9.4.0
#ignore_spell: mooo
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<applyExperience 'bondage' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bestiality' 11 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' 10 'terrible' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Barn">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naked") setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Clothes removed, <<=setup.getNpcName("npc_evil_nurse","formal")>> is assisted by some quite ingenious automated systems to "install" each of you one at a time on your respective bull, your rear<<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>, and in your case, both<</if>> holes spread by the massive, medically lubricated minotaur-esque meat missiles.<br>
<br>
<<if State.hasPlayed("event_horse_buggy_special_first_1")>>
Rather than the downward facing position you've used for transit in the city, you
<<else>>
You
<</if>>
are placed with your back to the ground, legs and arms spread wide and cuffed in place as you hug the animal above, additional waist-straps providing some minor additional support on top of the thick <<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>pair of flesh-rods<<else>>flesh-rod<</if>> impaling you from below. Gags "for safety" finish things off as <<=setup.getNpcName("npc_evil_nurse","formal")>> attends to you one by one with startling efficiency.<br>
<br>
"@@.npc_evil_nurse;Hu-cows need breeding too!@@" She jokes as she tightens up straps... and forces you balls-deep on bovine beef-sticks. "@@.npc_evil_nurse;And feel free to make as much noise as you like, not only are we out where no one can hear you, well...@@" With an evil grin she slaps <<=setup.getNpcName("npc_psychiatrist","formal")>> on the ass, your therapist's pained yelp altered into a low MOOO by the gag as you feel the bovine <<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>cocks<<else>>cock<</if>> inside of you throb with arousal.<br>
"@@.npc_evil_nurse;Mmmm... such lovely moo-moans! And your handsome steeds have all been trained to be aroused by those very sounds, a perpetual lust-ion machine of breeding efficiency!@@"<br>
<br>
Her words are confirmed as your gag-altered moan is joined by echoes from your friends... and the <<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>cocks<<else>>cock<</if>> inside you shifting yet again. Even just standing still the sensation is intense as you feel and hear every breath and pump of the heart of the great-beast above you... followed a fraction of a second later by the hot pulse of the <<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>cocks<<else>>cock<</if>> inside you as their veins throb.<br>
<br>
The last of your trio tightened in place you give out a chorus of fresh bull-arousing gasps as the platform the beasts were on shifts, dropping you forward as something propels the animals down to the ground and in the direction of the barn-door.<br>
<br>
[<<moveTo "event_bestiality_group_7" "Continue..." 1800>>]
</div>/*#
#desc: cattle drive ride
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naked") setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_barista","npc_barista_naked") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Showing the general bovine (lack) of intelligence, the bulls are at best meandering in the direction of the outside when you hear the clip-clop of hooves, craning your neck to see <<=setup.getNpcName("npc_evil_nurse","formal")>> stride into view astride a massive stallion... with <<=setup.getNpcName("npc_barista","nickname")>> installed beneath in a position not dissimilar to your own, appearing akin to a ship's maiden with her head pulled back looking out from between the stallion's front legs.<br>
<br>
With a theatrical flourish <<=setup.getNpcName("npc_evil_nurse","formal")>> wheels in front of you, showing off that <<=setup.getNpcName("npc_barista","nickname")>> is impaled not once, but twice, a double equine cock filling her fore and aft, her body bouncing and leaking excitement with every trotting step.<br>
<br>
With several cracks of a long whip <<=setup.getNpcName("npc_evil_nurse","formal")>> brings order to the meandering bulls, leading them out of the barn and then racing through the pasture, each heavy stampeding step causing the <<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>cocks<<else>>cock<</if>> to sway and thrust inside of you as you reflexively cling tighter to the beast.<br>
<br>
[<<moveTo "event_bestiality_group_8" "Continue..." 4000>>]
</div>/*#
#desc: cattle drive wander
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Farm">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/farm.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naked") setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_barista","npc_barista_naked") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
After several minutes of running, punctuated by several gag-muffled orgasmic cries from your compatriots, <<=setup.getNpcName("npc_evil_nurse","formal")>> brings the micro-herd to a stop and the bulls resume their natural instincts, spreading out to graze, the leisurely wandering keeping you on edge as their pulsing heart-rate declines, but the <<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>cocks<<else>>cock<</if>> inside of you remaining thick and hard.<br>
<br>
Bound as you are, it's something of an effort to arch your head far enough back to see anything other than the bull that is constantly fucking you, with the effort of doing so serving to force the dildo built into your gag deeper into your throat. Resigned to your fate you hang helplessly, your bull occasionally roused to thicker firmness by a moo-moan from yourself or one of your compatriots as the mere idle grazing is enough to have you full and stimulated.<br>
<br>
[<<moveTo "event_bestiality_group_9" "Continue." 1>>]
</div>/*#
#desc: cattle drive
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Barn">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/barn.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naked") setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_barista","npc_barista_naked") setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Overwhelmed and stretched, your consciousness flutters slightly as you lose track of time, only for your attention to be yanked back to the present every once in a while as <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> whip cracks and she drives the herd to "fresh" pasture.<br>
<br>
Safe from the sun beneath your bull, you can still notice when the light changes after a particularly long and jostling "drive" as you strain to look around and find yourself back in the barn, your "mount" dutifully climbing back onto the loading ramp and standing in place as you go limp with exhaustion as you are finally detached<<if $fetish.cum>>, bull-cum leaking out of <<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>both holes<<else>>your ass<</if>><</if>>.<br>
<br>
Rather than being left "free" <<=setup.getNpcName("npc_evil_nurse","formal")>> pulls each of you into stringently tight hog-ties<<if $fetish.cum>>, <<if $player.body_ref.vagina && $player.sec_style.sex.vagina>>plugs<<else>>a plug<</if>> stemming the initial flood<</if>> as she crates you up and you are re-gagged and loaded into the back of a truck.<br>
<br>
"@@.npc_evil_nurse;Now that's what I call prime-bred bitch!@@" She shouts with a laugh as the last of your group is loaded, stacked two on two, you feel the occasional drop of drool and... other liquid as your friend above leaks down onto you.<br>
<br>
Thankfully, a tarp is thrown over your crates, shielding you from the outside world even as it plunges you into fresh darkness, with little save the occasional gasp and moan of your friends to keep your company as the vehicle rolls away... every pothole and bump felt through the plug mounting you through the rear as you drive along.<br>
<br>
[<<moveTo "event_bestiality_group_10" "Ride..." 3600>>]
</div>/*#
#desc: cattle drive ride home
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Truck">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/transport.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_naked") setup.charImage("npc_technician","npc_technician_naked") setup.charImage("npc_barista","npc_barista_naked")>>
<div id="invframe" class="scrolltext">
Your gag proves to be a feeder one, and you find yourself eagerly drinking and swallowing <<if $fetish.cum>>the cum-flavored slurry<<else>>the bland slurry<</if>> after the exertions of the day, shivering slightly as the sweat dries on your bare skin and you wonder where you are headed.<br>
<br>
Your answer comes in the form of a suddenly burst of light as the tarp is ripped away... followed by a piercing blast of cold water as you are hosed clean. Helplessly bound, you cannot escape the piercing cleansing of the hose as <<=setup.getNpcName("npc_evil_nurse","formal")>> first blasts your group before unloading you one at a time, spraying you down even further as she releases your bonds and shoves you over to a pile containing your clothes.<br>
<br>
"@@.npc_evil_nurse;Well!@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states in triumph as she stands over the four of you as you work to sort out who was wearing what, too exhausted by the day's ordeal to even consider some sort of revolt. "@@.npc_evil_nurse;Thank you again for your participation, you really do make such WONDERFUL subjects and I'll be pouring over this data for some time.@@" She smiles wistfully "@@.npc_evil_nurse;Mmmm, if only Project Kraken was further along... ah well, if I do not find another study for you to help with... I bid you adieu!@@"<br>
<br>
<<if $fetish.get_raped>>
"@@.npc_psychiatrist;Another? No, I believe this is quite enough, rousing us from bed and whisking us away for—@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> is cut off by <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> retort. "@@.npc_evil_nurse;Mmm, objection noted, and disregarded. I am afraid that you did all sign contract so, really, I can do whatever I want, so long as it advances my breeding study...@@"<br>
<br>
"@@.npc_psychiatrist;Contracts signed under duress!@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> fires back.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> merely grins. "@@.npc_evil_nurse;Everything happens under duress under capitalism... hardly seems worth your time to quibble about this one... especially when you had such a LOVELY time.@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> seems about to respond, but instead merely blushes and glares.<br>
<br>
<</if>>
<<=setup.getNpcName("npc_evil_nurse","formal")>> waves as she walks towards an elevator and you recognise the markings to indicate that you're in one of the company's underground loading bays, a mere couple of floors ride away from the familiar lobby, and from there, the city itself.<br>
<br>
[<<moveTo "event_bestiality_group_11" "Finish dressing." 900>>]
</div>/*#
#desc: cattle drive finish and change
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<completeTask 'breeding_study' $now true>>
<</if>>
<<set $player.location to "Truck">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/transport.png" setup.charImage("npc_psychiatrist") setup.charImage("npc_technician","npc_technician_casual") setup.charImage("npc_barista","npc_barista_cocktail")>>
<div id="invframe" class="scrolltext">
It isn't until you're all finished dressing and boarding the elevator that one of you manages to find their voice, <<=setup.getNpcName("npc_barista","nickname")>> leading it off with slight soreness... but indefatigable enthusiasm. "@@.npc_barista;That was a fun day, thanks <<=$player.first_name>>!@@"<br>
<br>
"@@.npc_technician;Yeah...@@" <<=setup.getNpcName("npc_technician","first")>> follows up "@@.npc_technician;I know I say you always bring me to the most interesting places... well, that once quite possibly the most interesting one yet... and I think my hips are going to be sore for a week...@@"<br>
<br>
"@@.npc_psychiatrist;Yes... quite a... bracing experience,@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> adds on. "@@.npc_psychiatrist;<<=setup.getNpcName("npc_evil_nurse","first")>> certainly knows how to push the limits of... science. I think, in the end I am more of a city girl... though I would be a liar if I did not admit to getting some measure of enjoyment from the day...@@"<br>
<br>
Still feeling a bit awkward, and very tired, you all nod along in agreement as you debark the elevator and cross the lobby to head your separate ways.<br>
<br>
[<<moveTo "room_citymap" "Leave the company building." 300>>]
</div>/*#
#desc: intro to kraken
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You show up for another shift at the Kennel only for <<=setup.getNpcName("npc_evil_nurse","formal")>> to greet you with a smile... and an odd excitement every-so-slightly different from what you've seen from her previously.<br>
<br>
"@@.npc_evil_nurse;<<=$player.first_name>>! My favourite test subject! Such a delight that you would come in today!@@"<br>
<br>
Your confusion deepens as you ask what's special about today?<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> smiles, not her usual cruel grin, but something else... that still comes a bit short of "comforting." "@@.npc_evil_nurse;Ah, well, another project of mine is coming along what one might call... swimmingly. I know your efforts in the breeding study are technically at an end... oh, but I just HAVE to show you things!@@"<br>
<br>
Before you can even try to object <<=setup.getNpcName("npc_evil_nurse","formal")>> has a leash attached to your collar and is lead/dragging you off towards the elevator. "@@.npc_evil_nurse;Step lively, my dear, if you tripped and fell, well... that would require me to deploy a whole OTHER sort of my nurse skills...@@"<br>
<br>
You hurry to keep up as she leads you to the elevator, then swipes her badge for a floor even further down than her asylum.<br>
<br>
[<<moveTo "event_bestiality_kraken_2" "Ride down..." 300>>]
</div>/*#
#desc: travel down to kraken floor
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Down in the depths of the company the elevator door opens on what is apparently part of the "Bio-Research Division" <<printThought "Just how many pies does this company have its fingers in?">> You think to yourself as <<=setup.getNpcName("npc_evil_nurse","formal")>> leads you along, the click, click of her ballet heels echoing in the hallway as she breezes past a checkpoint, and several "authorised personnel only" signs before badging in one last time at a large vault door with even more warning signs not to block or enter alone and leading you on.<br>
<br>
Her excitement seems to grow with each quickening step, remaining somehow more "pure," almost playful as she chatters on... though avoids anything that would precisely clue you in on what's about to happen.<br>
<br>
"@@.npc_evil_nurse;So the bio-dev folks have been working on this project for awhile... it's been hard to get funding due to something about lack of market applications, but, well... things get misplaced this far down from the penthouse floors and the recent developments, well... you just HAVE to see. I think you're one of the few who can properly appreciate the amazing work that's gone into this...@@"<br>
<br>
The heavy vault-like doors finish opening and <<=setup.getNpcName("npc_evil_nurse","formal")>> catches you reading the various warning signs, glancing back at you with a grin. "@@.npc_evil_nurse;Oh, don't be distracted by all that. It's just legal getting their panties in a twist, you'll be fine... besides, it's not like you haven't already signed away any rights to sue. Just because that little breeding study is over doesn't mean its indemnity clause isn't still in effect.@@"<br>
<br>
<<printThought "Weirdly... her saying that is almost comforting... just for being a bit more of what I'm used to...">><br>
<br>
Even if you had objections, you're still on <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> leash, in what, if not quite her domain, is definitely not yours.<br>
<br>
[<<moveTo "event_bestiality_kraken_3" "Follow her in..." 300>>]
</div>/*#
#desc: arrive in kraken room
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Subterranean Aquarium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/kraken_tank.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
The vault door locks shut behind you with a heavy CLANG of finality and your eyes take a moment to adjust to the dim light after the sterile, overly-bright hallway as you find yourself in a surprisingly large room, at the centre of which is a massive tank of cloudy water.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> leads you further forward as you notice yet another series of warning lines of varying severity of colour marking distance from the tank cryptically describing different degrees of "safe distance." <br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> breezes past unconcerned as she pulls a final "warning" sign out of the way and you climb a staircase up the side of the tank. As you climb you spot a blur of motion in the water, not enough to have any real idea what's inside... but enough to be fairly certain that, whatever it is, it's large.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> leads you up to a small catwalk along the edge of the tank, a safety rail all there is between you and falling in to the murky blue waters.<br>
<br>
[<<moveTo "event_bestiality_kraken_4" "Ask what's down there?" 300>>]
</div>/*#
#desc: kraken appears
#status: RELEASED 0.9.4.0
#ignore_spell: morgana,tentacular
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Subterranean Aquarium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/kraken_tank.png" setup.charImage("npc_evil_nurse") "./images/characters/kraken.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> is still grinning excitedly as, while still squinting down at the rippling waters below, you finally ask what's in the tank?<br>
<br>
"@@.npc_evil_nurse;Shhh, you'll startle her,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> admonishes before turning to the tank and shouting. "@@.npc_evil_nurse;Morgana! I'm back! And I brought a friend for you to meet! Don't be shy, I know you can hear me!@@"<br>
<br>
The water churns slightly, and you catch a fleeting glance of... something as <<=setup.getNpcName("npc_evil_nurse","formal")>> continues to coo, even reaching down to splash at the water and continuing to chatter with uncharacteristic friendliness, sounding like she's talking to a nervous pet rather than her usual cold cruelty.<br>
<br>
The tension in the leash slackening, you find yourself leaning slightly over the rail, trying to spot what's going on below... until the surface of the water finally breaks and a tentacle rises up towards <<=setup.getNpcName("npc_evil_nurse","formal")>>.<br>
<br>
<<printThought "Tentacles? I should have guessed... but what could be so large?">><br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> seems absolutely delighted as the tentacle reaches out towards her, her gloved hand running gently over its slick surface, as it reaches further out of the water. <<=setup.getNpcName("npc_evil_nurse","formal")>> latex outfit seems to provide little purchase for suction cups, but the tentacle wraps around her arm as she smiles.<br>
<br>
You look down, wondering just how long the tentacles is... or how many more there might be, hiding beneath the short, choppy waves when a larger lump, and a single eye peeks out over the water.<br>
<br>
"@@.npc_evil_nurse;Say hi, Morgana!@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> suggests as she continues to playfully toy with the tentacle in one hand and wave with the other.<br>
<br>
You nervously do a little wave, only to catch sight of movement out of the corner of your eye...<br>
<br>
<<if !$fetish.get_raped>>
You turn to see at least half a dozen more tentacles reaching up from the water, one tentatively reaches out to you, seeming to invite you in...<br>
<br>
"@@.npc_evil_nurse;Go on, then,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states in encouragement as the tentacles reach closer, and you glance over to see <<=setup.getNpcName("npc_evil_nurse","formal")>> playing with three tentacles, wrapping around her waist and lifting her slightly off the ground as she fondles two others and even gives one a friendly kiss. "@@.npc_evil_nurse;See? She won't bite, she just likes to play...@@" she states with a smile... as you notice she is no longer holding on to your leash.<br>
<br>
[<<moveTo "event_bestiality_kraken_5" "Accept the tentacular embrace." 300>>]<br>
[<<moveTo "event_bestiality_kraken_abort_1" "Back away from the railing." 300>>]
<<else>>
[<<moveTo "event_bestiality_kraken_5" "Uh-oh..." 300>>]
<</if>>
</div>/*#
#desc: flee kraken
#status: RELEASED 0.9.4.0
#ignore_spell: morgana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Subterranean Aquarium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/kraken_tank.png">>
<div id="invframe" class="scrolltext">
You back away from the railing while <<=setup.getNpcName("npc_evil_nurse","formal")>> is partially distracted.<br>
<br>
"@@.npc_evil_nurse;What, where are you going?@@" She asks, sounding genuinely confused... even as Morgana seems disinterested in letting her friend go.<br>
<br>
You ignore <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> shout as you run down the stairway. Once a tentacle almost reaches you, but you manage to dodge as you leap and roll down the final flight and go sprinting past the "warning" lines.<br>
<br>
"@@.npc_evil_nurse;Not now, girl,@@" you hear <<=setup.getNpcName("npc_evil_nurse","formal")>>... and then there's a muffled moan as the nurse's words fall off.<br>
<br>
You reach the vault door only to come up short, everything is locked and you do not appear to have clearance to open. Pulling out your phone shows that however far down you are, you don't have a signal.<br>
<br>
<<printThought "Well... I am technically on shift, so... eventually will come looking for me...">><br>
<br>
Sitting next to the vault door, as far from the tank, and thus as close to safety as you can be, you settle in to wait.<br>
<br>
[<<moveTo "event_bestiality_kraken_abort_2" "Uh-oh..." 3000>>]
</div>/*#
#desc: leave after kraken
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Subterranean Aquarium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/kraken_tank.png">>
<div id="invframe" class="scrolltext">
You sit around for awhile and wait. Occasionally you see a tentacle... and a few times even <<=setup.getNpcName("npc_evil_nurse","formal")>> break the surface above the tank. Her shouts are muffled, and hard to really decipher, though the tone is more frustration than actual distress.<br>
<br>
Eventually, dripping, a little bedraggled, and walking somewhat unsteadily in her nurse-issue ballet heels, <<=setup.getNpcName("npc_evil_nurse","formal")>> staggers down the ladder and stalks towards you.<br>
<br>
You aren't sure what to expect from the <<=setup.getNpcName("npc_evil_nurse","formal")>>... but her expression has yet to return to its normal cruel glare... in fact she looks almost satisfied, her heart not really in it as as she stands over you and sneers. "@@.npc_evil_nurse;Well? You missed out on the fun... quite disappointing, really... and now it is time to return you to your mmm... mundane existence.@@"<br>
<br>
With no further comment, and you not wanting to risk drawing her ire, <<=setup.getNpcName("npc_evil_nurse","formal")>> snatches up your leash and unlocks the vault door, taking a final moment to blow a kiss back towards Morgana's tank, her gesture returned by a handful of waving tentacles before the vault door opens and leads you back to the elevator, stopping on your floor on the way back up to the kennels to unclip your leash and all but kick you out the door.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Hurry back to your desk." 180>>]
</div>/*#
#desc: kraken sex
#status: RELEASED 0.9.4.0
#ignore_spell: morgana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to "Subterranean Aquarium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/kraken_tank.png" setup.charImage("npc_evil_nurse") "./images/characters/kraken.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.get_raped>>
You turn just in time to see what has to be nearly half a dozen more tentacles lunge towards you, snatching you in their grasp and pulling you over the railing.<br>
<br>
You have a final panicked sight of <<=setup.getNpcName("npc_evil_nurse","formal")>> before you're yanked under the water as, now playfully toying with multiple tentacles herself, she shouts down,
<<else>>
You take a step towards the mass of tentacles. For a brief moment they actually flinch away from you, as you recall <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> description of them being shy. You reach out slowly, a tentacle weaving between your fingers and then down your wrist. You glance over at <<=setup.getNpcName("npc_evil_nurse","formal")>>, looking quite delighted floating in the grasp of Morgana. <<=setup.getNpcName("npc_evil_nurse","formal")>> smiles back at you... "@@.npc_evil_nurse;I told you she was friendly!@@" She states... as you feel a sudden yank, more tentacles pulling you by the waist over the railing and down into the tank.<br>
<br>
<</if>>
"@@.npc_evil_nurse;She likes you! Have fun!@@"<br>
<br>
Your response is muffled as a tentacle thrusts its way past your parted lips and you are yanked under the water.<br>
<br>
[<<moveTo "event_bestiality_kraken_6" "Mmmmffff!" 300>>]
</div>/*#
#desc: more kraken sex
#status: RELEASED 0.9.4.0
#ignore_spell: morgana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to "Subterranean Aquarium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/kraken_tank.png" setup.charImage("npc_evil_nurse") "./images/characters/kraken.png">>
<div id="invframe" class="scrolltext">
Tentacles curl around your limbs, pulling at your clothing as you are dunked underwater. You get a momentary glimpse of the large creature at the root of the tentacles, a single eye looking at you as you reflexively flail underwater... and then the eye blinks... no... winks... and you are brought back to the surface.<br>
<br>
Still grasped by at least a dozen tentacles you take a breath...<<if $fetish.drugs>> and then taste something spurted into your mouth, your eyes roll back, feeling suddenly calm, the salty taste of the sea tinged with something else<</if>> as the initial yank becomes more tender, the tentacles groping, exploring, probing <<if $player.body_ref.vagina>><<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>for each of your holes, stymied by your belt<<else>>all three of your holes<</if>><<else>>both of your holes<</if>>... and plucking at your clothes.<br>
<br>
With startling skill, the tentacles strip you naked, and then plunge you back beneath the surf. The second dunk is more controlled... and Morgana brings you up more aggressively, no longer merely probing, but penetrating you in every hole she can reach, groping your breasts, her suckers making interesting sensations against you bare skin.<br>
<br>
Despite her somewhat reckless strength Morgana seems to instinctually know your limits, ravaging you in every way possible with her multitude of limbs, but never keeping you under too long, even as she wraps around your neck and continues to thrust down your throat as if jerking herself off through your body...<br>
<br>
"@@.npc_evil_nurse;That's right, enjoy it!@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> shouts from somewhere above you, a brief glimpse showing her having a similar... if significantly more tender time with Morgana.<br>
<br>
[<<moveTo "event_bestiality_kraken_7" "Mmmmm..." 1800>>]
</div>/*#
#desc: even more kraken sex
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<</if>>
<<set $player.location to "Subterranean Aquarium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/kraken_tank.png" setup.charImage("npc_evil_nurse") "./images/characters/kraken.png">>
<div id="invframe" class="scrolltext">
Maybe <<if $fetish.drugs>>it's whatever mucus seeps from Morgana's tentacles... maybe <</if>>it's just how good she is at fucking, but you find yourself embracing the moment, suction-cups sending sparks across your body as you suck and fuck, the frequent dips back into the tank serving to both extend your stamina, but also refresh your attention each time as you cum, and cum... and cum... bobbing atop the surface in a raft of tentacles, consciousness flickering as <<=setup.getNpcName("npc_evil_nurse","formal")>> floats above you like some sort of divine angel...<br>
<br>
[<<moveTo "event_bestiality_kraken_8" "Continue." 1800>>]
</div>/*#
#desc: post-kraken sex
#status: RELEASED 0.9.4.0
#ignore_spell: morgana
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Subterranean Aquarium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/kraken_tank.png" setup.charImage("npc_evil_nurse") "./images/characters/kraken.png">>
<div id="invframe" class="scrolltext">
You wake up back on land, naked, sopping and gaping as you sit against the side of the tank and <<=setup.getNpcName("npc_evil_nurse","formal")>> stands over you. You glance over your shoulder to see Morgana stroking the far side of the glass, you put your hand against it, feeling a final moment of connection before she retreats back into the murky depths.<br>
<br>
"@@.npc_evil_nurse;Told ya she was friendly,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states with a smirk as she tosses you a towel and your clothes. Thanks to her latex outfit she seems hardly bothered by her time with Morgana... though there is a swagger in a her step, a satisfaction that you normally only see when she's in the midst of a sadistic frenzy.<br>
<br>
<<printThought "Who knew it took something literally inhuman to humanise her... well, for however long it lasts, she's obviously been down here before and is still... her.">><br>
<br>
You can see <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> satisfaction, and patience, begin to fade, and you quickly towel off and dress. <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> normal dominant confidence back as she clips the leash to your collar and leads you away from the tank. As you wait for the vault door to cycle Morgana reaches a tentacle up past the top of the tank one final time, and you wave good-bye.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> heads straight for the elevator without another word, her momentarily friendly mein seeming to slip ever further with each floor up you travel, until she removes your leash and all but shoves you out of the elevator on your familiar floor 148.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Back to your desk." 180>>]
</div>/*#
#desc: offered Coffee Shop 52 cart shift
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addPlug = !setup.checkItemTypeTag('plug', ['ems']) || !setup.checkItemTypeTag('plug', ['vibrating'])>>
<<if $scene.addPlug>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<</if>>
<<addItem "latex_mouthless_maid_hood_gag_black">>
<<wearItem "latex_mouthless_maid_hood_gag_black" true>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
You agree to work the meeting and <<=setup.getNpcName("npc_barista","nickname")>> leads you over to a cart to get situated.<br>
<br>
A hood with integrated gag starts you off, and then you functionally become the cart — stripped and with your arms and legs bound on all four with your back supporting the top and its carafes of coffee<<if !$fetish.milking>>, your <<if $player.body.breastsize[0] > 0>>dangling breasts<<else>>nipples<</if>> adorned with nipple clamps supporting baskets of sugar packets<</if>>.<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> re-tightens your restraints to ensure that you are little more than a human table before explaining your duties.<br>
<br>
"@@.npc_barista;So, like, you should feel a set of controls under your right hand. The auto-nav can handle getting you TO the conference room, but once there it will be up to you to navigate around and respond to service requests.@@" She<<if $scene.addPlug>>slides a large plug into your rear<<else>>gives your plug a firm wiggle<</if>>, "@@.npc_barista;I think you can guess how service requests will be coming in, have fun!@@"<br>
<br>
A tablecloth is draped over you to provide concealment for your trip through the "lower" floors and then a gentle swat on the rear sends you on your way. The cart rolls into motion, turning and weaving its way out of Coffee Shop 52 and out into the hallway. In your bound position you can do little save stare at the floor and hope the auto-nav doesn't run into anything.<br>
<br>
[<<moveTo "event_cafe52_cart_2" "Continue." 300>>]
</div>/*#
#desc: Coffee Shop 52 cart event start meeting
#status: FINISHED 0.8.7.0
#ignore_spell: forniphilic
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 16 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
After an elevator trip to a floor where your forniphilic "arrangement" will not so much as bat an eye, you arrive at your destination; an otherwise nondescript corporate conference room where the tablecloth is removed and you slide into a waiting position in the back of the room, craning your neck to watch as a couple of stragglers hurry to their seats before the presentation commences.<br>
<br>
Feeling the strain of forcing yourself to look forward you let your head droop, wondering how, exactly, you're expected to provide service in the situation, but left with no alternative save to wait to find out.<br>
<br>
[<<moveTo "event_cafe52_cart_3" "Looks like the meeting is starting..." 300>>]
</div>/*#
#desc: Coffee Shop 52 cart event service
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
The lights dim as some suited corporate type begins what looks to be a long background introduction to their presentation. You don't have time to focus on that, however, as the plug in your rear starts buzzing as you learn how navigation is to work — a strap connected to your mask, pulling your hair vertical to give you nice forward-viewing perspective, complete with a subtle ceiling light to highlight your target destination.<br>
<br>
You experimentally tap the controls, the cart turning and sliding forward, the whole thing feeling suddenly kind of like a perverse video game...<br>
<br>
<<if setup.getTotalValue("gaming") > 10>>
<<printThought "And people say video games don't have any real-world applications!">>
<<elseif setup.getTotalValue("gaming") > 5>>
<<printThought "Maybe I should have spent more time gaming! Not exactly a thought I'd ever expect to have at work...">>
<<else>>
<<printThought "Damn, and me being very rusty at gaming...">>
<</if>>
<br><br>
[<<moveTo "event_cafe52_cart_4" "Zip over and start making deliveries." 240 "<<set $scene.deliver=true>><<set $scene.firstDeliver=true>>">>]<br>
[<<moveTo "event_cafe52_cart_4" "Sit still." 180 "<<set $scene.deliver=false>><<set $scene.firstDeliver=false>>">>]
</div>/*#
#desc: Coffee Shop 52 cart event delivery
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("gaming") > 10>>
<<set $scene.efficiency = 3>>
<<elseif setup.getTotalValue("gaming") > 5>>
<<set $scene.efficiency = 2>>
<<else>>
<<set $scene.efficiency = 1>>
<</if>>
<<if $scene.deliver>>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'terrible' $EXPOSED>>
<<applyExperience 'bondage' 16 'terrible' $EXPOSED>>
<<if $scene.firstDeliver>>
<<applyExperience 'submission' 16 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'submission' 10 'normal' $EXPOSED>>
<</if>>
<<else>>
<<applyExperience 'bdsm' 12 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.deliver>>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.times_played > 0>>With controls eerily similar to some of what you've used playing with your "dreammaker" machine<<else>>The controls may be a bit different than you're used to, but<</if>> you
<<if setup.getTotalValue("gaming") > 10>>
speed
<<elseif setup.getTotalValue("gaming") > 5>>
do your best to carefully navigate
<<else>>
do your best to navigate, only bumping into a couple of chairs on the way
<</if>>
across the room to roll up behind your summoner. The strap that was holding your head up relaxes to leave you staring at the floor as <<he>> pours a drink.<br>
<br>
Bound as you are, you can be of no real use in "serving" the client, but you listen as a cup of coffee is poured.
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0 && $fetish.penis_milking>>
You feel the heat of steam rising up into your privates as the mug is placed under you and <<if setup.checkItemTypeWorn("cage")>>a bit of "cream" is hand-squeezed<<else>>your plug buzzes until a few drops of "cream" leak out of your chastity to drip<</if>> into the mug.
<<elseif $player.body_ref.milkProduction > 0 && $fetish.milking>>
You feel the heat of steam rising up into your privates as the mug is placed under you and <<if setup.checkItemTypeWorn("cage")>>a bit of "cream" is hand-squeezed<<else>>your plug buzzes until a few drops of "cream" leak out of your chastity to drip<</if>> into the mug.
<<else>>
Your nipple tingles with pain as the customer plucks a packet of sugar and sends the nipple-clap-attached basket swaying.
<</if>>
<br><br>
Their drink attended to, the customer turns back to the meeting, just as your rear buzzes and your head is pulled up for another customer's summons...<br>
<br>
[<<moveTo "event_cafe52_cart_5" "Keep working." 3600>>]
<<else>>
You remain still as the buzzing in your rear becomes stronger and more incessant, culminating in a harsh shock that takes your breath away as you gasp through your gag.<br>
<br>
You haven't even caught your breath from the painful summons when the thirsty customer walks over, slapping your ass hard... and then treating you to even more agony as you realise that it was not a slap, but them applying tens pads to your rear.<br>
<br>
"@@.generic_male1;New barista, eh? Well I'd suggest you hop to it and learn on the job or we're liable to fry this juicy ass.@@"<br>
<br>
The customer finishes pouring their coffee and returns to their chair as you catch your breath... only to be both buzzed and shocked by your next summons...<br>
<br>
[<<moveTo "event_cafe52_cart_4" "Get to work." 240 "<<set $scene.deliver=true>>">>]
<</if>>
</div>/*#
#desc: Coffee Shop 52 cart event meeting
#status: FINISHED 0.8.7.0
#ignore_spell: b2b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
You continue to zip around the room making your deliveries as the meeting rolls on. While the majority of your "customers" seem only interested in their coffee
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0 && $fetish.penis_milking && $player.body_ref.milkProduction > 0 && $fetish.milking>>
and only pay attention to you for "cream,"
<<elseif $player.body_ref.penis && $player.body_ref.cumProduction > 0 && $fetish.penis_milking>>
and only pay attention to you for milk or "cream,"
<<elseif $player.body_ref.milkProduction > 0 && $fetish.milking>>
and only pay attention to you for milk,
<<else>>
arriving quickly,
<</if>>
a few seem to enjoy taking things further, groping or fingering you in thanks... or shocking or slapping you in punishment if they deem you were "too slow" in arriving with their drink.<br>
<br>
Though your attention is primarily focused on your duties you are able to listen in on the presentation. After the initial background discussing the company's progress and their plans to continue to "@@.generic_male1;aggressively expand our global market share of the B2B and internal service and service space by leveraging and enhancing our human-assets and domain expertise for synergistic market dominance.@@"<br>
<br>
You find yourself summoned on stage at one point as a "demonstration" of the "@@.generic_male1;versatility of our training programs.@@" As <<he>> talks the <<man>> fondles your face, running a finger over your lips and past your gag as if to accentuate just how helpless you are as not so much a person, but an appliance.<br>
<br>
After the brief time on stage you're sent back out to serve more drinks discussions open up for how to "increase hiring rate." <br>
<br>
<<printThought "In other words... enslave more employees...">><br>
<br>
You hear proposals including locked-in contracts for merger-hires, higher performance requirements for general employees to "raise the bar" and siphon off low performers as additional retraining subjects, as well as increased internship slots and recruitment drives with an emphasis on re-training employees to "meet future demand" versus merely hiring for existing predilections.<br>
<br>
While the presentation is scant on exact numbers you have no doubt that the plans you're overhearing will translate to being VERY wide in scope as the company continues its ravenous growth.<br>
<br>
[<<moveTo "event_cafe52_cart_6" "Keep working..." 1800>>]
</div>/*#
#desc: Coffee Shop 52 cart event finish
#status: FINISHED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.latexMaid>>
<<useClothSetPop 'tmp'>>
<</if>>
<<removeItem "latex_mouthless_maid_hood_gag_black" true>>
<<deleteItem "latex_mouthless_maid_hood_gag_black">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
The meeting finally draws to a close and your navigation stops working. With something approaching relief you let your head hang down as the tablecloth is draped back over your cart and the auto-nav returns you to Coffee Shop 52.<br>
<br>
As bubbly as ever <<=setup.getNpcName("npc_barista","nickname")>> removes you from the cart with a smile.<br>
<br>
<<switch $scene.efficiency>>
<<case 3>>
"@@.npc_barista;So<<if !$scene.firstDeliver>>, after a bit of initial confusion<</if>>, it seems like you were all over this job. Rave reviews all around! I swear, if <<=setup.getNpcName("npc_manager","other")>> wasn't so possessive I'd have you as a permanent partner here in the coffee shop! Or maybe, like... running one of the other floors!@@"
<<case 2>>
"@@.npc_barista;So<<if !$scene.firstDeliver>>, after a bit of initial confusion<</if>>, it seems like you did an okay job. A little slower than some clients prefer... but I imagine your bottom could have told you that!@@"
<<case 1>>
"@@.npc_barista;So<<if !$scene.firstDeliver>>, after a bit of initial confusion<</if>>, you, well... there's no sugar-coating it, you were slow! Quite unbecoming of a service professional. We have to be fast, nimble and always ready to please and serve so the higher-ups can do the, like, important work!@@"
<<default>>
ERROR: unexpected scene.efficiency <<=$scene.efficiency>>
<</switch>>
<br><br>
She finishes helping you to your feet and grins. "@@.npc_barista;Anyway, I guess you, like... need to be getting back to your desk! Heh, I remember one of the times I got to work the cart — it was a multi-day planning meeting and things ran so late they forgot to let me out! Fortunately they also forgot to turn off my buzzing plugs, otherwise I would have had a really boring night! Well, that and the cleaning crew. I guess they could have, like, let me out? But they were afraid of getting in trouble, so they just <<if $fetish.get_raped>>raped<<else>>fucked<</if>> me for an hour or so and left, and that's kind of even better!@@"<br>
<br>
You nod at her endless sluttiness as you <<if !$scene.latexMaid>>get changed and <</if>>head back to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Resume working at your desk." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: you "run dry" while being milked working at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
You try to talk the angry customer down, but there seems no consoling her, especially in light of the fact that she does have a valid complaint; the clear, cream-less tubes leading up from your breasts<<if setup.checkItemWorn("penis_milker")>> and beneath your skirt<</if>> displaying to all how little you are producing. Noticing the commotion <<=setup.getNpcName('npc_barista', 'nickname')>> walks over, her own breasts squirting consistently into their bouncing tubes.<br>
<br>
"@@.npc_barista;Is something the matter? Perhaps I could offer a substitution?@@" <<=setup.getNpcName('npc_barista', 'nickname')>> offers, but the customer quickly shakes her head.<br>
<br>
"@@.generic_female1;No! I ordered an espresso with a double shot of <<if $fetish.sissy>>sissy<<else>>special<</if>> cream! Why do you have this <<if $fetish.sissy>>sissy<<else>>girl<</if>> on staff if she can't even produce?@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> frowns in dismay as you try to shrink into the floor in embarrassment. "@@.npc_barista;I am very sorry for your issue, normally my friend here is much more productive. It could just be a clog in the system, let me fetch the service kit.@@"<br>
<br>
Zipping over to a cabinet behind the bar, <<=setup.getNpcName('npc_barista', 'nickname')>> returns holding a toolbox of sorts, opening it up and pulling out an instruction manual. Flipping through it for a moment she nods and begins reading aloud.<br>
<br>
"@@.npc_barista;Ah, here we go — how to service a machine to restore proper flow.@@"<br>
<br>
[<<moveTo "event_coffee_job_milked_dry_2" 'Time to get "serviced".' 60>>]
</div>/*#
#desc: barista attempts to help get you flowing again when you run dry while being milked working at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_7'
4
'event_psychiatrist_session_barista_pegged_1'
false
>>
<<applyExperience 'bdsm' 9 'very' $EXPOSED>>
<<applyExperience 'bondage' 8 'very' $EXPOSED>>
<<applyExperience 'humiliation' 16 'terrible' $EXPOSED>>
<<set $scene.workMilker = setup.isItemEquipped('penis_milker')>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barista', 'nickname')>> reads aloud from the "service manual" as she begins pulling items out of the service kit to "fix" your deficit of flow, the commotion soon drawing all eyes to the two of you.<br>
<br>
"@@.npc_barista;First, designate problem appliance as out of service with provided signage.@@"<br>
<br>
She pulls out a small sign with the words "Appliance out of Service." The sign forms the panel front of a pecker gag and she quickly stuffs the squat artificial cock into your mouth, buckling it tight to silence you as she proceeds to the next step.<br>
<br>
"@@.npc_barista;Safely secure appliance before continuing with repairs.@@"<br>
<br>
Swiftly she has you bent over the counter, cuffing your wrists and waist in place before crouching down to spread and cuff your ankles a little over shoulder width apart.<br>
<br>
"@@.npc_barista;Remove appliance case to make visual inspection.@@"<br>
<br>
As if you weren't exposed enough already, she lifts your skirt up and tucks it out of the way to fully expose your ass<<if $scene.workMilker>> and the still-working penis milker<</if>>.<br>
<br>
"@@.npc_barista;Using kinetic service implement, attempt to jump-start production.@@"<br>
<br>
Out of the corner of your eye, you see her pull out a mean looking paddle. With but a single warm-up swing for practice she commences spanking you, five sharp hits landing in succession on each of your butt-cheeks as you howl and pant through your gag.<br>
<br>
Pausing, she checks your outflow tubes, but they are running just as dry as before.<br>
<br>
"@@.npc_barista;If problem persists, equip service harness and proceed to advanced troubleshooting.@@"<br>
<br>
Restrained as you are, it is a bit difficult to see what <<=setup.getNpcName('npc_barista', 'nickname')>> is doing behind your flipped-up skirt, but a glance forward confirms that the coffee shop is now filled with a record crowd, all watching your "service" with interest.<br>
<br>
[<<moveTo "event_coffee_job_milked_dry_3" "Advanced service." 60>>]
</div>/*#
#desc: barista preps you for pegging to get your milk flowing while working at coffee shop
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 14 'little' $EXPOSED>>
<<changeHorny 20>>
<<applyStress 10>>
<<applyFatigue 40>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
You hear the sound of straps being buckled as <<=setup.getNpcName("npc_barista","nickname")>> equips the so-called "service harness." Finally the sound of leather sliding on leather stops and she continues reading aloud.<br>
<br>
"@@.npc_barista;Remove regulator plug from unit, if present.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
She checks your hollow plug with a smile. "@@.npc_barista;Already open for business, how convenient!@@"
<<else>>
She grabs a firm hold of the base of your <<=setup.getItemTypeName('plug')>> and slides it out of your rear with a pop.
<</if>>
<<else>>
Sliding two fingers into your spread ass she sighs in exasperated disappointment. "@@.npc_barista;Hmm, empty, I wonder if that's why you aren't producing today? I know I feel like all the good stuff is just going to leak away if I'm not plugged. It's really a sin for a <<if $fetish.sissy>>sissy<<else>>girl<</if>> like you to not be properly stuffed.@@"
<</if>>
<br><br>
"@@.npc_barista;With service harness securely equipped, lubricate service rod and insert into problem unit until fully seated.@@"<br>
<br>
You feel her take firm hold of your hips and then a wet, fat pressure against your rear as <<=setup.getNpcName('npc_barista', 'nickname')>> starts forcing a largish dildo into your ass.<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
Though large by human standards your ass is trained for far more, the thick "service rod" sliding easily and deeply into you until her hips slap against your ass and a moan of pleasure escapes your gag.
<<elseif setup.getTotalValue("anal") >= 10>>
Large, just like you love, the thick "service rod" slides steadily deeper until her hips are pressed against your ass and you let out a soft moan of pleasure through your gag.
<<elseif setup.getTotalValue("anal") > 5>>
Far larger than you are comfortable with she has to lean almost her full weight into you before the "service rod" finally sinks home and her hips press against your bare ass.
<<else>>
You feel like you are going to be split in half by the massive "service rod." Tearing up a little you gasp and pant through your gag as she works her way ever deeper. You would swear she is about to touch your lungs when she finally grinds to a halt, her hips pressed tight against your bare ass.
<</if>>
<br><br>
"@@.npc_barista;Once service rod is fully seated increase milking speed to "maintenance" setting to help clear blockages.@@" She pauses, hilt-deep in your ass. "@@.npc_barista;Hmm, it doesn't say if I should do one unit at a time or just put everything into maintenance mode at once... I guess better safe than sorry.@@"<br>
<br>
You feel her weight shift as she leans back and suddenly <<if $player.body_ref.penis>>all three of your milking devices<<else>>both breast pumps<</if>> are working on overdrive, sucking hard, fast and frantic.<br>
<br>
"@@.npc_barista;While maintenance is in progress, continuously shift service rod to locate and address blockage. Note that service rod will lock inside service unit for safety until maintenance cycle has completed.@@"<br>
<br>
As she speaks, you feel the "service rod" swell, "knotting" in your ass to lock the two of you together, her every motion causing the whole thing to shift inside of you in intense, unique ways.<br>
<br>
[<<moveTo "event_coffee_job_milked_dry_4" 'Get "serviced".' 300>>]
</div>/*#
#desc: barista pegs you to get your milk flowing while working at coffee shop
#status: FINISHED 0.7.6.0
#*/
<<set $scene.image = "">>
<<if setup.isItemEquipped('penis_milker')>>
<<set $scene.image = "1">>
<<else>>
<<set $scene.image = "0">>
<</if>>
<<if $player.body.breastsize[0]>=2>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<if ($player.hair.style == "unkempt") || ($player.hair.style == "combed")>>
<<set $scene.image += "0">>
<<else>>
<<set $scene.image += "1">>
<</if>>
<<if !$player.body_ref.penis || (!setup.isItemEquipped('penis_milker') && !setup.isCage())>>
<<set $scene.image += "_nopenis">>
<</if>>
<<set $scene.image = "./images/scenes/milking_repair/milking_repair_"+$scene.image+".png">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 14 'little' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<showImage $scene.image>><br>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") > 15>>
You moan with lust, the swelling "service rod" filling you just like you love, <<if $player.body_ref.penis>>pressuring your prostate<<else>>pounding you deep<</if>> as <<=setup.getNpcName('npc_barista', 'nickname')>> shifts and rolls and touches every bit of your insides.
<<elseif setup.getTotalValue("anal") >= 10>>
The swelled "service rod" has you feeling VERY full and you moan as your whole body shudders in sensation overload as <<=setup.getNpcName('npc_barista', 'nickname')>> starts to rock, pressuring all of your insides.
<<elseif setup.getTotalValue("anal") > 5>>
The "service rod" was big to start, now it's eye-poppingly huge. Your breaths come in quick pants through the gag as <<=setup.getNpcName('npc_barista', 'nickname')>> starts to rock inside of you.
<<else>>
Just feeling the "service rod" forced into you had you feeling split in half, but now, with it ballooned to epic proportions you feel ready to explode. Things only get more intense as <<=setup.getNpcName('npc_barista', 'nickname')>> starts to slowly rock inside of you.
<</if>>
<br><br>
The combination of being pegged works with the intense, unrelenting suction on your breasts<<if $player.body_ref.penis>> and <<getWordMyPenis false>><</if>> has your heart racing. Wide-eyed, you stare forward to realise that there are now over a dozen people watching you and <<=setup.getNpcName('npc_barista', 'nickname')>> going at it, a couple even have their phones out taking video!<br>
<br>
<<if $player.body_ref.milkProduction > 0>>
Crying out through the gag, a dam bursts, your body, somehow, unleashing a triple-spurt of liquid, milk flowing out from your <<if setup.calcBreastSize() == "none">>flat chest<<else>><<=setup.calcBreastSize()>> breasts<</if>><<if $player.body_ref.penis>><<if $player.body_ref.cumProduction == 0>>, though your <<getWordMyPenis false>> shoots nothing but air<<else>> as your over-hard <<getWordMyPenis false>> unleashes a voluminous load<</if>><</if>>.
<<else>>
Crying out through the gag, a dam bursts, your <<if setup.calcBreastSize() == "none">>flat chest<<else>><<=setup.calcBreastSize()>> breasts<</if>> may yet be incapable of producing anything<<if $player.body_ref.penis>><<if $player.body_ref.cumProduction == 0>>, but that does not stop the machine from mercilessly sucking on them and your equally unproductive <<getWordMyPenis false>><<else>>, but your <<getWordMyPenis false>> does its best to make up for it in unleashing a voluminous load<</if>><<else>>, but that doesn't stop the machine from mercilessly sucking away<</if>>.
<</if>>
<br><br>
Head pulled back, spine arched, you hold the strenuous position for several tense seconds as your "audience" applauds. Finally, as more "normal" flow resumes through your milking devices you collapse back onto the counter, barely cognisant of the "service rod" deflating and sliding out of your used rear.<br>
<br>
"@@.npc_barista;Once appliance has returned to normal functions replace service plug (if using), remove service sign and put appliance back into standard operations.@@"<br>
<br>
<<if setup.checkItemTypeWorn('plug')>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
She retracts, your hollow plug relaxing slightly, but still leave you gaping and full.
<<else>>
She giggles as she easily shoves the <<=setup.getItemTypeName('plug')>> back into your well-used rear.
<</if>>
Moments later, the gag tumbles past your lips amidst a waterfall of drool once she has unbuckled its strap.
<<else>>
Your rear still gaping from its recent abuse she gives it a friendly pinch before removing your gag to leave you feeling totally empty.
<</if>>
<br><br>
Released from your other restraints, <<=setup.getNpcName("npc_barista","nickname")>> helps you back to your feet. Still in a daze you turn towards your waiting customer, finishing her order with what you have produced as the machines continue to frenetically attempt to make up for lost production.<br>
<br>
Taking a sip of her brew, she smiles in contentment. "@@.generic_female1;While I dislike being made to wait, the taste is more than worth it, and the show wasn't bad, either.@@" Flashing a wink, she walks away as you attempt to ignore the pumping, milking stimulation and turn to address your next customer.<br>
<br>
[<<moveTo "event_coffee_job_milked_dry_5" 'Resume working.' 60>>]
</div>/*#
#desc: Finish your shift after pegging "service"
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstMilk = !$player.body_ref.milkEvent && $player.body.breastsize[1] > 0 && $player.body_ref.milkProduction == 0 && $player.flags.mealplan.hormones != "none">>
<<if $scene.firstMilk>>
<<set $player.body_ref.milkEvent = true>>
<<set $player.body_ref.milkProduction = 1>>
<</if>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_evening.hour, $player.work.time_evening.minutes)>>
<<if setup.isItemEquipped('penis_milker')>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if setup.isItemEquipped('breast_milker')>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
In a bit of a daze you somehow manage to finish the rest of your shift without incident, though you find yourself leaning quite heavily against the counter lest your legs give out from under you. It is only when she is freeing you from your various devices and that <<=setup.getNpcName('npc_barista', 'nickname')>> notices an earlier error.<br>
<br>
"@@.npc_barista;Oh no! I forgot to switch the milker's back from maintenance mode! Oh you poor dear, you must feel, like, all used up!@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity')>>
You wince as she locks you back in into your chastity device and tries to massage your sore breasts, you merely
<<else>>
You try to massage your sore breasts and nod,
<</if>>
nod, fixing your clothes and downplaying her mistake.<br>
<br>
Promising that you will take better care of yourself so as not to "run dry" during your next shift, you bid her a good evening and head for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo "event_coffee_job_milked_dry_6" 'End of day assessment.' 600>>]
</div>/*#
#desc: manager assessment after pegging "service"
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<set $player.flags.work_coffee.times_work_milk += 1>>
<<set $player.flags.work_coffee.times_worked += 1>>
<<set $player.timebased.milking.cream_supply = 0>>
<<set $player.timebased.milking.milk_supply = 0>>
<<if $scene.style == "money">>
<<addCredits 50>>
<</if>>
<</if>>
<<set $player.location = "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Staggering a bit as you walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, you don't even notice her predatory grin until she speaks.<br>
<br>
"@@.npc_manager;Well, well, well, I hear SOMEBODY had an eventful day...@@"<br>
<br>
You nod slowly as she turns her monitor to face you and show a picture of you and <<=setup.getNpcName('npc_barista', 'nickname')>> in the midst of the climax of your "servicing" — your eyes wide above the "out of service" gag, your breasts<<if $player.body_ref.milkProduction > 0>> full and spurting<<else>> painfully swelled in their clear compartments<</if>> as <<=setup.getNpcName('npc_barista', 'nickname')>> almost hangs in mid-air in the midst of a powerful thrust.<br>
<br>
Smiling at your shocked expression, she closes the window and continues on. "@@.npc_manager;While it seems to have all... worked out, I would recommend you pay a bit more attention so as not to "break down" on the job again. I know you enjoy putting in a bit of extra work while you slumber, but you need to prioritize your day job over any side-hustles.@@"<br>
<br>
<<if $scene.style == "money">>
Continuing to be amused she hands you a small pile of credits. "@@.npc_manager;Let it not be said your efforts to do the right thing go unrewarded. Despite your mediocre production you seem to have earned a few extra tips.@@"<br>
<br>
<</if>>
<<if $player.sec_style.submission.permanent_key == "" && $npc_manager.flags.require_chastity>>
<<if (setup.isItemEquipped("c_cage_advanced") || setup.isItemEquipped("chastity_belt_adv") || setup.isItemEquipped("chastity_belt_adv_ultra"))>>
<<if !setup.checkItemOwned("advance_chastity_cage_key") && $npc_manager.flags.took_adv_key>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 60 "<<set $scene.manager_in_room=true>>">>]
<<else>>
You nod in agreement as she instructs you to straighten your desk then return for your daily performance review.<br>
<br>
[<<moveTo 'event_manager_performance_review' 'Head back to the office.' 60 "<<set $scene.afterWorkEventTriggered = true>>">>]
<</if>>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 60 "<<set $scene.manager_in_room=true>>">>]
<</if>>
<<else>>
You nod in agreement as she instructs you to straighten your desk then return for your daily performance review.<br>
<br>
[<<moveTo "event_manager_performance_review" 'Head back to the office.' 60 "<<set $player.work.nowWorking=false>>">>]
<</if>>
</div>/*#
#desc: manager sends you off for coffee training
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shortWorkDay=true>>
<<set $player.work.nowWorking = true>>
<<set $scene.workstyle = $player.work.style>>
<<set $player.work.style='alt'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are summoned to <<=ps(setup.getNpcName("npc_manager","formal"))>> where you find her leaned back in her chair, looking much like a ruler on her throne as she greets you with a smile. "@@.npc_manager;So, coffee.@@"<br>
<br>
A bit puzzled why she summoned you into her office with such ceremony for such a standard request, you turn to run the errand only for her to stop you. "@@.npc_manager;Ah, ah! I admire the enthusiasm, but I was not done. As I mentioned after your last little spill, I have decided it would be more efficient if you prepared my drinks in house rather than having to trek all the way off to Coffee Shop 52 when I am in need of caffeinated edge. Therefore I have made arrangements for you to spend some time working with <<=setup.getNpcName("npc_barista","other")>>.@@"<br>
<br>
You look back with confusion. "@@.npc_manager;Right, sorry. You probably know her better as <<=setup.getNpcName("npc_barista","nickname")>>.@@" You have the distinct feeling that <<=setup.getNpcName("npc_manager","formal")>> knows a bit more about the bimbo barista, but the conversation is already gliding forward. "@@.npc_manager;Today should be plenty of time for you to get introduced to the basics, after that we will see how you do. Note that part of the arrangement was that <<=setup.getNpcName("npc_barista","other")>> begged for you to work with her on a more regular basis thus if you have finished your assigned work by the start of Thursday afternoon you will be allowed to work a shift at the cafe... who knows you may learn a thing or two in the process about... service.@@"<br>
<br>
You wonder at this new "job," but <<=setup.getNpcName("npc_manager","formal")>> just waves you on your way to Coffee Shop 52.<br>
<br>
<<if setup.isItemEquipped('maid_uniform_latex_black')>>
<<=setup.getNpcName("npc_barista","nickname")>> greets you in the doorway with a wide smile as she looks over your attire. "@@.npc_barista;Like, awesome! You're already dressed to work, let's get, like, started then!@@"<br>
<br>
[<<moveTo "event_work_first_coffee_work_3" "Follow." 300 "<<useClothSetPush 'tmp'>>">>]
<<else>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
<<=setup.getNpcName("npc_barista","nickname")>> greets you in the doorway with a wide smile. "@@.npc_barista;Oooh, you're already maid up! Unfortunately though that get-up would be, like, perfect for that place in the mall Coffee Shop 52 has a very strict uniform requirement that means only latex maids allowed! Come on, let's get you changed!@@"
<<elseif setup.checkVisibleClothingTag('maid') > 0>>
<<=setup.getNpcName("npc_barista","nickname")>> greets you in the doorway with a wide smile, practically draging you in towards a small storage room in her enthusiasm. "@@.npc_barista;Cute look but the uniform requirements here are VERY strict — full latex maid's only! Come on, we need to get you into your uniform!@@"
<<else>>
<<=setup.getNpcName("npc_barista","nickname")>> greets you in the doorway with a wide smile, practically draging you in towards a small storage room in her enthusiasm. "@@.npc_barista;Come on, we need to get you into your uniform!@@"
<</if>>
<br><br>
[<<moveTo "event_work_first_coffee_work_2" "Follow." 300>>]
<</if>>
</div>/*#
#desc: change to work in Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<if setup.inWardrobe('maid_uniform_latex_black')>>
<<wardrobeToItem 'maid_uniform_latex_black'>>
<</if>>
<<if setup.inWardrobe('maid_headdress_latex_black')>>
<<wardrobeToItem 'maid_headdress_latex_black'>>
<</if>>
<<set $scene.latexMaid = setup.checkItemTypeTag('dress', ['maid', 'latex'])>>
<</if>>
<<if setup.isItemEquipped('maid_uniform_latex_black')>>
<<initRoom>>
<<set $player.cutscene.lockinventory = true>>
<<set $scene.forced = false>>
<<moveTo "event_work_first_coffee_work_3">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
She hands you a black latex maid outfit and headpiece to match her own with a grin. "@@.npc_barista;Here ya go, get into that and once you're all slick and shiny we can get to work!@@"<br>
<br>
In the small storage/changing room once again you happen to notice a small padded section built into one portion of the floor.<br>
<br>
Noticing your attention, <<=setup.getNpcName("npc_barista","nickname")>> smiles and shrugs "@@.npc_barista;Yeah, I asked if I could get a pair of knee-pads, but my boss said they'd mess with the lines of my outfit, so that was the compromise! Come on now, get changed!@@" She adds as she waves the outfit in front of you.<br>
<br>
The outfit looks identical to the one she offered you before, and you are certain you have exactly as much choice in wearing it as that time too.<br>
<br>
<<printThought "Guess I have no choice but to change into this rubber fetish uniform...">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_work_first_coffee_work_3" "Put on the latex maid's outfit." 60 "<<wearItemSet 'maid_latex_black'>>">>]
<</if>>
</div>/*#
#desc: work intro at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
The two of you squeaking slightly in your matching latex outfits, <<=setup.getNpcName("npc_barista","nickname")>> leads the way behind the counter. "@@.npc_barista;So, like, to be honest the job is pretty easy — you just take the customer's order, punch it into the machine, then give it to them once it's done! Oh, and smile, like, ALL the time! Not that I have any problems on that count!@@" You notice her flex her hips slightly and you can easily imagine what "things" have her in such a happy mood.<br>
<br>
"@@.npc_barista;So yeah, that's pretty much it, let me go flip the sign to say that we're open and we'll get started, you can watch a bit then take over!@@"<br>
<br>
You nod and she bounces over to the door and back and it isn't long before the first customer walks up to the bar.<br>
<br>
"@@.npc_barista;Good afternoon!@@" <<=setup.getNpcName("npc_barista","nickname")>> says with a beaming smile. "@@.npc_barista;What can we do for you today?@@"<br>
<br>
[<<moveTo "event_work_first_coffee_work_4" "Start working." 3600>>]
</div>/*#
#desc: work first shift at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You keep expecting something to happen as your shift rolls on but it turns out working at Coffee Shop 52 really is that simple. Sure you learn a little bit about different drinks from taking the orders, but the machine does all the work and whether it is you or <<=setup.getNpcName("npc_barista","nickname")>> dealing with the customer hardly matters. You half wonder why there needs to be an employee running things at all, but a quick glance at <<=ps(setup.getNpcName("npc_barista","nickname"))>> heaving bosom almost exploding out of her rubber top every time she bounces in excitement gives you a pretty good understanding.<br>
<br>
<<printThought "This is such a strange company...">><br>
<br>
[<<moveTo "event_work_first_coffee_work_5" "Start working." 3600>>]
</div>/*#
#desc: end of first shift at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_coffee.times_worked += 1>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
During a lull in business after about an hour, <<=setup.getNpcName("npc_barista","nickname")>> turns to you with a smile. "@@.npc_barista;Well, I think that will do for today. Like, I'd love for you to come back some other time, but <<=setup.getNpcName("npc_manager","formal")>> says I can only have you for a little while and I like REALLY don't want to get on her bad side...@@"<br>
<br>
<<if $scene.latexMaid>>
<<=setup.getNpcName("npc_barista","nickname")>> gives you a hug, your outfits sliding against each other before she waves goodbye and then turns to the next customer as you leave.
<<else>>
You nod in understanding. "@@.npc_barista;Well, anyway, you can go ahead and change and I'll see you later!@@"<br>
<br>
Giving you a parting hug, she waves as you head back to the small storeroom to change back into your normal work clothes.
<</if>>
<br><br>
[<<moveTo "event_work_first_coffee_work_6" "Return to your desk." 300 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: return after first coffee training
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_coffee.coffee_skill = 1>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You return to the office to find <<=setup.getNpcName("npc_manager","formal")>> supervising a pair of maintenance workers installing what looks like a smaller version of the giant coffee maker you were just using in Coffee Shop 52. "@@.npc_manager;Wonderful, you have returned. Going forward, I hope you will be able to make my drink here and, as I said before, if you finish your work early in the week you now have the option of spending a shift working with your friend in Cafe 52 in the afternoon.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> signs the work order confirming the machine has been installed and then returns to her office, the workers leaving as well as you return to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Resume working." 60 "<<completeWorkEvent>><<set $player.work.style=$scene.workstyle>>">>]
</div><<if setup.checkItemOwned('maid_uniform_latex_pink')>>
<label>Traditional Maid: <<radiobutton "$player.flags.work_coffee.maid_outfit" 0 autocheck>></label>
<label>Pink Maid: <<radiobutton "$player.flags.work_coffee.maid_outfit" 1 autocheck>></label><br>
<</if>><<set $scene.latexMaid = setup.checkItemTypeTag('dress', ['maid', 'latex'])>>
<<set $scene.change = !$scene.latexMaid>>
<<useClothSetPush 'tmp'>>
<<set _jacket = setup.getItemFromType('jacket')>>
<<if _jacket != "">>
<<removeItem _jacket true>>
<</if>>
<<switch $player.flags.work_coffee.maid_outfit>>
<<case 0>>
<<set _dress = 'maid_uniform_latex_black'>>
<<set _head = 'maid_headdress_latex_black'>>
<<case 1>>
<<set _dress = 'maid_uniform_latex_pink'>>
<<set _head = 'maid_headdress_latex_pink'>>
<<set $scene.worePink = true>>
<<applyExperience 'feminization' 15 'normal' $SEEN_FRIEND>>
<</switch>>
<<if setup.inWardrobe(_dress)>>
<<wardrobeToItem _dress>>
<</if>>
<<if setup.inWardrobe(_head)>>
<<wardrobeToItem _head>>
<</if>>
<<wearItem _dress true>>
<<wearItem _head true>>/*#
#desc: new work requirement of milking devices at cafe
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_6'
4
'event_psychiatrist_session_barista_work_milked_1'
false
>>
<<set $scene.first_seen = !$npc_barista.flags.milking.first_seen>>
<<set $npc_barista.flags.milking.first_seen = true>>
<<include "latexMaidDress">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
You show up for your shift at Coffee Shop 52 to find your friend <<=setup.getNpcName('npc_barista', 'nickname')>> is already equipped with the milking bra, the tubes snaking up towards the rafters bouncing as she moves back and forth behind the bar.
<<else>>
You show up to work a shift at Coffee Shop 52 only to find that your friend <<=setup.getNpcName('npc_barista', 'nickname')>> is sporting something of a new look. While she wears the same too-tight rubber "maid's" outfit as usual her always-on-display breasts are ensconced in a "bra" unlike any you have ever seen.<br>
<br>
A clear plastic hemisphere envelops each breast with separate smaller devices enclosing her nipples. A pair of tubes are connected to each orb that run up towards the ceiling, a slight pulse of her swelled breasts met with a white, milky stream of liquid flowing up the smaller of the two tubes as you realise that it is some manner of milking contraption.<br>
<</if>>
<br><br>
<<if !$npc_barista.flags.milking.questioned>>
You can't help stare at her encased breasts and she immediately notes your attention.<br>
<br>
"@@.npc_barista;They're pretty hot, huh? And they feel even better! All part of a new initiative to better serve our customers!@@"<br>
<br>
<</if>>
<<if $scene.change>>
You shake your head and quickly head to the back to get changed into a matching fetishistic "uniform." <br>
<br>
<</if>>
Momentarily ducking behind the counter, <<=setup.getNpcName('npc_barista', 'nickname')>> pops back up holding another pair of breast cups identical to her own.<br>
<br>
<<if $player.body_ref.milkProduction > 0>>
You fail to object and she grins. "@@.npc_barista;Mmm, I bet you taste yummy, now, to figure out your size...@@"
<<else>>
You object that you don't produce milk, but she just rolls her eyes and shakes her head. "@@.npc_barista;Like... A) you really should, I mean, the technology is out there, a bit of surgery, some pills to jump-start production and woo! Like, it feels great and the taste! Yummy!@@" Her thoughts seem to drift for a moment as she licks her lips before refocusing on you.
<<if $player.body_ref.penis && $player.body_ref.balls>>
"@@.npc_barista;Anyway, it doesn't matter, this is, like, part of the uniform — we all need to appear like we're doing our part, though you'll be doing yours, too!@@" She quickly adds, placing a container of clear cylinders on the counter. "@@.npc_barista;We just, like, have to figure out your size!@@"
<<else>>
"@@.npc_barista;Anyway, it doesn't matter, this is, like, part of the uniform — we all need to appear like we're doing our part!@@"
<</if>>
<</if>>
<br><br>
[<<moveTo "event_coffee_milking_equip_2" "Let her strap you in." 60>>]<br>
[<<moveTo "event_coffee_milking_equip_2_no" "Change your mind and decide against working at Coffee Shop 52 today." 60>>]
</div>/*#
#desc: decide not to work at Coffee Shop 52 due to new milking policy and return to annoyed manager
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> looks up with surprise as you walk back into the office, her large door open to let her see into the antechamber where you normally sit.<br>
<br>
"@@.npc_manager;Back so soon? What happened?@@"<br>
<br>
You try to blow it off saying you changed your mind about working at the coffee shop today, but she sees straight through you with a knowing smile.<br>
<br>
"@@.npc_manager;Discovered the new work requirements and fled, hmm?@@" She shakes her head. "@@.npc_manager;Tsk, tsk, tsk. Working these alternate shifts is a privilege! I made arrangements to get along without you today and you just throw the opportunity back in my face!@@"<br>
<br>
You hurriedly explain that you are more than willing to do your normal work, but she is having none of it.<br>
<br>
"@@.npc_manager;No, it is far too late for that. I have time to give you a quick punishment and then I am sending you right home for you to spend the day thinking about your error. So, then, breasts. Out. now.@@"<br>
<br>
You start to open your mouth to protest, but her gaze narrows. "@@.npc_manager;Do you need a gag? Because if I need to get one I won't be taking it off, you will be wearing it straight home so you can spend the remainder of the day in SILENT meditation on your failures.@@"<br>
<br>
You close your mouth and gulp.<br>
<br>
[<<moveTo "event_coffee_milking_equip_2_punishment" "Expose your breasts as instructed." 60>>]
</div>/*#
#desc: manager punishes you for not adopting the new milking requirements for cafe 52, sends you home
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcTopId">>
<<removeItem $scene.topId true>>
<<set $scene.bra = setup.getItemFromType("bra")>>
<<if $scene.bra != "">>
<<removeItem $scene.bra 'free' true>>
<</if>>
<<set $scene.piercings = setup.getItemFromType("nipple_piercing")>>
<<addItem 'cloverclamps'>>
<<wearItem 'cloverclamps' true>>
<<set $player.work.sendhome = true>>
<<set $player.work.sendhomedate = $now>>
<<applyExperience 'bdsm' 13 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'terrible' $SEEN_FRIEND>>
<<if $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<addItem _keyId>>
<</if>>
<</if>>
<<set $player.location = "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.piercings>>
Giving each of your pierced nipples a flick she attaches a chain from one to the other and dangles a weight between.
<<else>>
Giving each of your nipples a quick pinch and flick to render them hard and pointy, she applies a clamp to each, tightening things down until you wince in pain and then letting them fall, a weight dangling between them.
<</if>>
<br><br>
You wince and try to remain still to lessen the painful tug of the weight as she walks back to her desk, returning holding an odd device that looks to be a slender glass tube extending from a handle.<br>
<br>
Walking in front of you, she smiles, a soft hum emanating from the device as she pokes the glass tip towards your right nipple. When there is about a centimetre separation, a bolt of purple electricity suddenly jumps from the wand to your nipple, a painful shock that has you jumping in pain, the sharp movement only furthering your agony as it sets the nipple weights to sway wildly.<br>
<br>
"@@.npc_manager;Now, would it not have been better to just wear the milking device? Hmmm?@@" She asks, zapping you several more times in each breast. "@@.npc_manager;I mean, really, did you really think those tits were just for looks? You are my <<if $fetish.sissy>>SISSI <</if>>Secretary. Being cute and sexy may be ONE of your jobs, but I expect far more than just that.@@"<br>
<br>
Biting your lip to keep from crying out in pain, you nod.<br>
<br>
"@@.npc_manager;Good, good, so... do you think you have learned your lesson?@@"<br>
<br>
You nod once more as she stares into your eyes, her piercing gaze searching for the slightest hint of resistance.<br>
<br>
"@@.npc_manager;Hmm, you look sincere, but there is really only one way to be certain that your obedience is not merely a facade.@@"<br>
<br>
Grabbing you by the wrist, she presses the handle of the device into your hand, closing your fingers around it.<br>
<br>
"@@.npc_manager;Now then, finish your punishment to demonstrate your contrition — one zap, right on each nipple.@@"<br>
<br>
You stare at the device in your hand in horror, then back at her as she looks back in expectation.<br>
<br>
"@@.npc_manager;Hurry along. We have not got all day — unless you would rather I test it out on an even MORE tender section of your anatomy?@@"<br>
<br>
Wide-eyed in fear, you shake your head and bring the tip of the wand towards your left nipple. Bracing yourself for the pain, you are even more surprised when the surprisingly cool glass tip touches your flesh without ever discharging a shock.<br>
<br>
Confused, you look back up at her as she smiles in amusement.<br>
<br>
"@@.npc_manager;You have to squeeze the trigger, silly.@@" She notes as you realise the soft hum that had previously preceded each shock cannot be heard.<br>
<br>
Your finger soon finds the trigger built into the handle and you squeeze down, a bolt of purple electricity jumping from the device to your nipple, the impact like a shot as you reflexively pull the wand away and release your hold on the trigger.<br>
<br>
"@@.npc_manager;Oh, did I forget to mention I turned up the power? Oh well, one more to go!@@"<br>
<br>
Nipple still throbbing from the powerful shock, you grit your teeth and squeeze down on the trigger as you bring the wand towards your right nipple. Trembling in fear, you scarcely notice the painful tugs of the nipple weight as the wand gets closer and closer. Finally you squeeze your eyes and turn away, bringing your hand the final few centimetres until the wand discharges again, your nipple afire with electrified agony as you gasp in pain.<br>
<br>
Your free hand clutches your pained breast and she plucks the wand out of your weak grasp.<br>
<br>
"@@.npc_manager;Alright, I have work to do and you had better get home and spend some time contemplating your... failures today.@@"<br>
<br>
She roughly detaches things from your nipples and you wince as you gather your clothes — even the gentle brush of cloth is agony on your blood-engorged, punished nubs.<br>
<br>
You curtsy in apology and she nods in dismissal, you turn towards the office door before she can conjure another punishment.<br>
<br>
<<if $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
Clothes still in hand you pause at your desk to retrieve your chastity key.<br>
<br>
<</if>>
[<<moveTo "company_lobby" "Dress and leave the office." 300 "<<set $player.work.sendhome = true>><<set $player.nowWorking=false>><<wearItem $scene.topId true>><<removeItem 'cloverclamps' true>><<deleteItem 'cloverclamps'>><<if $scene.bra != ''>><<wearItem $scene.bra true>><</if>><<if $scene.piercings != ''>><<wearItem $scene.piercings true>><</if>>">>]
</div>/*#
#desc: barista tries to hook up penis milker, but runs into your chastity device and summons your manager
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "breast_milker">>
<<wearItem "breast_milker" true>>
<<if !$player.sec_style.sex.milking>>
<<set $player.sec_style.sex.milking = "obedient">>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
Whistling cheerily, <<=setup.getNpcName('npc_barista', 'nickname')>> pulls down your top and applies the breast cups. Attaching the milkers to your nipples, the larger cups seal against your body, your <<=setup.calcBreastSize()>> breasts swelling slightly in their pressure-reduced chambers. A simple harness helps hold everything in place, your top stretching into position over your bizarre artificial rack.<br>
<br>
Ducking down under your skirt, <<=setup.getNpcName('npc_barista', 'nickname')>> slides off your panties
<<if !$player.body_ref.penis>>
to reveal your <<getWordVagina>>. "@@.npc_barista;Heh, nothing to milk down here. Continuing on, I guess.@@"<br>
<br>
[<<moveTo "event_coffee_milking_first_day_1" "Continue." 60>>]
<<else>>
<<if $fetish.penis_milking && $player.body_ref.penis>>
only to halt as she discovers your <<getWordMyPenis>>.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
"@@.npc_barista;Ooooh, yummy! This needs milking, too!@@"
<<else>>
<<if setup.isCage()>>
"@@.npc_barista;Like, it looks so cute all imprisoned, but I can't get the milker into place!@@"
<<else>>
"@@.npc_barista;Oooh, sleek and sexy, but with this locked on, I can't get the milker into place!@@"
<</if>>
<</if>>
<<elseif setup.getChastityLevel() == 5>>
only to pause and look upon your <<=setup.getItemTypeName("cage")>> with fearful awe. "@@.npc_barista;Oh, wow, you're like totally locked full! I guess that will do for your shift... I'll just tie the system in to your belt — a stimulated milk-maid is a productive milk-maid!@@"
<<elseif !setup.checkItemTypeWorn("cage")>>
and lick her lips as she comes to your <<getWordMyPenis>>. She stares for a lusty moment before managing to pull herself away and continue on.
<<else>>
only to pause when she comes to your <<=setup.getItemTypeName("cage")>>, sounding almost a little... fearful? "@@.npc_barista;Hmm, well I guess being locked in chastity is sufficient for working, since you can't produce cream.@@"
<</if>>
<br><br>
<<if $fetish.penis_milking && $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage") && $npc_manager.flags.hascagekey>>
You're about to suggest that maybe you could just go without, but <<=setup.getNpcName('npc_barista', 'nickname')>> is already picking up a phone.
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>> stares between your legs for a moment, all but licking her lips before she picks up a phone.
<</if>>
<br><br>
You listen in as <<=setup.getNpcName('npc_barista', 'nickname')>> quickly explains the situation to a soft, unrecognisable voice on the other end. As for <<=setup.getNpcName('npc_barista', 'nickname')>>, she seems to be speaking a little TOO loud; her enthusiastic words having you blushing and looking away from the two customers sipping coffee in the far corner of the shop, and then listens for a response.<br>
<br>
"@@.npc_barista;Yeah, uh-huh, okay, I'll call her. Thank you, <<Master>>.@@" She replies casually before hanging up and looking in your direction. "@@.npc_barista;<<He>> said, like, I need to check with your owner, so you just keep tight, teehee! and we'll have it all sorted out in a jiffy.@@"
<br><br>
<<if setup.checkItemTypeWorn("cage")>>
<<if $npc_manager.flags.hascagekey>>
<<else>>
You try to explain that, actually, you are in control of your own key but <<=setup.getNpcName('npc_barista', 'nickname')>> shakes her head.<br>
<br>
"@@.npc_barista;It's, like, not just about the chastity. Even though it's productive milking all on-the-clock orgasms need to go through your owner, obviously.@@"<br>
<br>
<</if>>
<<else>>
You're confused why <<=setup.getNpcName('npc_manager', 'formal')>> needs to get involved, but <<=setup.getNpcName('npc_barista', 'nickname')>> quickly clarifies.<br>
<br>
"@@.npc_barista;So, like, even though it's productive milking, all on-the-clock orgasms need to get approval from your owner, obviously.@@"<br>
<br>
<</if>>
<<if $player.flags.collar.owner != "">>
You nod, obviously your owner would need to be consulted in this matter<<if $player.flags.collar.owner != "npc_manager">>... well, or <<=setup.getNpcName('npc_manager', 'formal')>>, acting on behalf of same<</if>>.
<<elseif setup.getTotalValue("submission") < 10>>
You start to object to her phrasing but,
<<if $npc_manager.flags.hascagekey>>
well, given that you are locked up at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> whim is "owner" really so inaccurate?
<<else>>
well, given how <<=setup.getNpcName('npc_manager', 'formal')>> treats you... is "owner" really so inaccurate?
<</if>>
<<else>>
You nod, obviously something like that would require approval from your <<=setup.getNpcName('npc_manager', 'title')>>.
<</if>>
<br><br>
Distracted by your thoughts as you wait quietly, you are soon surprised by <<=setup.getNpcName('npc_manager', 'formal')>> herself striding through the door of the coffee shop<<if setup.checkItemTypeWorn("cage")>>, key in hand<</if>>.<br>
<br>
[<<moveTo "event_coffee_milking_equip_3" "Continue." 60>>]
<<else>>
"@@.npc_barista;See, that wasn't so bad, right?@@" She states, punctuating her statement by squirting a shot of milk out of each teat to be quickly sucked away by her device. "@@.npc_barista;Mmmm, being milked feel so good! The next best thing to sex! Well, and sucking cock...@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
You nod and grin in agreement,
<<else>>
You smile and bite your lip,
<</if>>
<<=setup.getNpcName('npc_barista', 'nickname')>> is such a bimbo inspiration!
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
You cautiously nod, <<=setup.getNpcName('npc_barista', 'nickname')>> is such a bimbo.
<<else>>
You shake your head, <<=setup.getNpcName('npc_barista', 'nickname')>> is such a bimbo.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_coffee_milking_first_day_1" "Continue." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: barista explains milker testicle attachment
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<addItem "penis_milker">>
<<wearItem "penis_milker" true>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
"@@.npc_manager;Well, well, looks like you get to spend some time "out on parole."@@" <<=setup.getNpcName('npc_manager', 'formal')>> states, smiling wide as she reaches under your skirt to unlock your chastity device, removing it from your body and giving your <<getWordMyPenis>> a friendly squeeze.<br>
<br>
<</if>>
"@@.npc_manager;So, what is my girl going to be wearing today?@@" <<=setup.getNpcName('npc_manager', 'formal')>> asks.<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> holds up the
<<if $player.body.penissize[0] >= 6>>
gigantic
<<elseif $player.body.penissize[0] >= 4>>
large
<<elseif $player.body.penissize[0] < 1>>
tiny
<<elseif $player.body.penissize[0] < 2>>
small
<<else>>
modestly-sized
<</if>> cylinder, working it into a harness and attaching two tubes to the tip. "@@.npc_barista;This looks like the right size, oh, I'm just so jealous you get to use this bonus milker!@@"<br>
<br>
<<if $npc_manager.anger > $npc_manager.affection && $player.body_ref.balls>>
"@@.npc_manager;Hmm, you raise an important point, I do not want <<=$player.first_name>> to enjoy herself too much...@@"<br>
<br>
"@@.npc_barista;Oh! Has someone been a naughty girl?@@" She winks at you as if you're sharing a secret. "@@.npc_barista;I have, like, just the thing!@@"<br>
<br>
Returning to the container with the other, unused penis tubes, she pulls out another device that looks like an oversized pair of smooth rubbery testicles with short wires protruding from each sack.<br>
<br>
"@@.npc_barista;This is supposed to encourage additional production by keeping your twin factories from, like, retreating back inside and going to sleep while also administering shocks to jump-start even greater production.@@"<br>
<br>
You eye the device with fear, imagining how it would stretch and separate your poor testicles and the idea of shocks... you shudder at the thought.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>>, on the other hand is grinning practically from ear to ear.<br>
<br>
"@@.npc_manager;Oh that sounds just perfect, and make sure the power is turned up, I want my secretary to be as productive as possible!@@"<br>
<br>
[<<moveTo "event_coffee_milking_equip_4" "Looks like you don't get a choice as to whether you'll be wearing the testicle attachment. Maybe you shouldn't misbehave so often?" 60 "<<set $scene.style='forced'>>">>]
<<else>>
You aren't sure if you quite share <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> enthusiasm, but <<=setup.getNpcName('npc_manager', 'formal')>> graces you with an encouraging smile as you wait patiently.<br>
<br>
Kneeling down in front of you, <<=setup.getNpcName('npc_barista', 'nickname')>> has you hold your skirt out of the way as she slides the tube over your <<getWordMyPenis>>.<br>
<br>
Cinching the harness around your waist to hold things in place, she further secures it with a pair of straps running between your legs and up over your buttcheeks, their tension serving to spread and expose your rear hole<<if setup.getItemFromType('plug')>> and draw attention to the <<=setup.getItemTypeName('plug')>> currently occupying it.<</if>><br>
<br>
<<if $player.body_ref.balls>>
Rising to her feet, <<=setup.getNpcName('npc_barista', 'nickname')>> walks over to the dispenser into which the tubes connected to your milker terminate and is about to turn things on when <<=setup.getNpcName('npc_manager', 'formal')>> speaks up.<br>
<br>
"@@.npc_manager;What is this?@@" <<=setup.getNpcName('npc_manager', 'formal')>> asks, pointing towards another device in the same box that holds the other-sized penis tubes.<br>
<br>
You look to see what looks like a pair of oversized smooth rubbery testicles with short wires protruding from each sack.<br>
<br>
"@@.npc_barista;Oh, that's, like, supposed to encourage additional production by keeping your twin factories from retreating back inside while also administering shocks to jump-start even greater production.@@"<br>
<br>
"@@.npc_manager;Interesting...@@" <<=setup.getNpcName('npc_manager', 'formal')>> states in a way that has your heart temporarily aflutter.<br>
<br>
Waiting a beat in case of further questions, <<=setup.getNpcName('npc_barista', 'nickname')>> turns back towards the machine.<br>
<br>
<<if $player.sec_style.submission.testicle_pain == "enthusiast">>
<<printThought "Hmm... I've already tried this sort of thing at home... but using it here would probably impress <<=setup.getNpcName('npc_manager', 'formal')>>.">><br>
<br>
<</if>>
[<<moveTo "event_coffee_milking_equip_4" 'Tell <<=setup.getNpcName("npc_barista", "nickname")>> you would like to wear the testicle attachment.' 60 "<<set $scene.style ='voluntary'>>">>]<br>
[<<moveTo "event_coffee_milking_equip_4" 'Ask <<=setup.getNpcName("npc_manager", "formal")>> if she thinks you should wear the testicle attachment.' 60 "<<set $scene.style ='obedient'>>">>]<br>
[<<moveTo "event_coffee_milking_equip_4" "Ask if you could be paid more in exchange for wearing the testicle attachment." 60 "<<set $scene.style='money'>>">>]<br>
[<<moveTo "event_coffee_milking_equip_4" "Stay silent and decline the testicle attachment." 60 "<<set $scene.style =''>>">>]
<<else>>
Rising to her feet, <<=setup.getNpcName('npc_barista', 'nickname')>> double checks the attachments under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful gaze before hitting the "power on" switch.<br>
<br>
You stagger as the milking pulsing suction commences, a pulsing, sucking blowjob sensation that is pleasurable, distracting and ominously inescapable all at the same time.<br>
<br>
"@@.npc_manager;Well, have a good day!@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a wink. "@@.npc_manager;I'll see you at the end of your shift — try not to get into too much trouble!@@"<br>
<br>
"@@.npc_barista;D'aww, we'll do our best!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> turns back to you as your <<=setup.getNpcName('npc_manager', 'title')>> departs. "@@.npc_barista;Cum on, now, let's get to work!@@"<br>
<br>
[<<moveTo "event_coffee_milking_first_day_1" "Start working." 60>>]
<</if>>
<</if>>
</div>/*#
#desc: barista hooks up your penis milker
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.style>>
<<case 'voluntary'>>
<<if !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = "voluntary">>
<</if>>
<<if !$player.sec_style.submission.testicle_pain>>
<<set $player.sec_style.submission.testicle_pain = "voluntary">>
<</if>>
<<applyExperience 'submission' 14 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 12 'little' $SEEN_FRIEND>>
<<if !setup.hasThreshold('bdsm', 'manager_upbringing', 'testiclezap')>>
<<setThreshold 'bdsm' 'manager_upbringing' 'testiclezap'>>
<</if>>
<<case 'obedient'>>
<<if !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = "obedient">>
<</if>>
<<if !$player.sec_style.submission.testicle_pain>>
<<set $player.sec_style.submission.testicle_pain = "obedient">>
<</if>>
<<applyExperience 'submission' 14 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 12 'little' $SEEN_FRIEND>>
<<if !setup.hasThreshold('bdsm', 'manager_upbringing', 'testiclezap')>>
<<setThreshold 'bdsm' 'manager_upbringing' 'testiclezap'>>
<</if>>
<<case 'money'>>
<<if !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = "money">>
<</if>>
<<if !$player.sec_style.submission.testicle_pain>>
<<set $player.sec_style.submission.testicle_pain = "money">>
<</if>>
<<if !setup.hasThreshold('bdsm', 'manager_upbringing', 'testiclezap')>>
<<setThreshold 'bdsm' 'manager_upbringing' 'testiclezap'>>
<</if>>
<<case 'forced'>>
<<if !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = "forced">>
<</if>>
<<if !$player.sec_style.submission.testicle_pain>>
<<set $player.sec_style.submission.testicle_pain = "forced">>
<</if>>
<<if !setup.hasThreshold('bdsm', 'manager_upbringing', 'testiclezap')>>
<<setThreshold 'bdsm' 'manager_upbringing' 'testiclezap'>>
<</if>>
<<applyExperience 'bdsm' 12 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case "voluntary">>
<<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_barista', 'nickname')>> both look surprised at your request to wear the electric "production stimulator." <br>
<br>
"@@.npc_barista;Like, are you sure? I mean, I don't have any personal experience, but I hear it's kind of painful...@@"<br>
<br>
Your mind already made up you nod. Looking over you blush as <<=setup.getNpcName('npc_manager', 'formal')>> beams with pride.<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> quickly stretches the testicle device over the milking tube, sliding the entire contraption down your shaft and tucking your testicles into position where they are pulled down and separated into private rubber prisons.<br>
<br>
A small battery pack is plugged into the wires and strapped to your thigh, activating a moment later with a dual shock that has you gasping in pain.<br>
<br>
"@@.npc_manager;You alright?@@" She asks with genuine concern.<br>
<br>
You put on a brave smile and nod<<if $player.flags.mealplan.hormones != "">>, after all, you reason, your balls deserve the punishment for flooding you with icky testosterone for so many years<<else>> while putting on a brave face<</if>>.<br>
<br>
"@@.npc_barista;Wow, you're, like, such a dedicated worker! but it's not all fun and games. We've got customers to serve!@@"<br>
<br>
Standing up, she flicks the switch for the milking machine.
<<case "forced">>
With a nod <<=setup.getNpcName('npc_barista', 'nickname')>> stretches the testicle device over the clear shaft that is about to encase your <<getWordMyPenis>>, the combination of the thick cylinder and the dangling oversized balls comically grotesque.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> watches intently as <<=setup.getNpcName('npc_barista', 'nickname')>> kneels down and guides your <<if setup.calcErection()>>already hard<<elseif $player.timebased.horny < 25>>soft<<else>>half-hard<</if>> member into the tube before stretching the testicle device around your dangling balls.<br>
<br>
Cinching the attached harness around your waist spreads out the weight of the contraption, a pair of straps running down between your legs and over your butt cheeks to spread them provocatively.<br>
<br>
<<if setup.checkItemTypeWorn('plug')>>
Discovering the <<=setup.getItemTypeName('plug')>> in your rear <<=setup.getNpcName('npc_barista', 'nickname')>>, gives it a little wiggle. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows, but <<=setup.getNpcName('npc_barista', 'nickname')>> just flashes an innocent smile as she rises to her feet...<br>
<br>
<</if>>
A small battery pack is strapped to your thigh and connected to your testicle cosies, a quick "system test" having you gasp in pain as your stretched and sensitive jewels light up in agony.<br>
<br>
"@@.npc_manager;Oh, that looks like it was quite painful, and you say it will increase production, as well? Very good, I may have to invest in something like that for your day to day use...@@"<br>
<br>
You whimper as <<=setup.getNpcName('npc_barista', 'nickname')>> walks over to remove the "out of service" sign on the machine from whence your penile milking tubes lead and hits the "on" button.
<<case "money">>
You propose higher pay in exchange for wearing the evil looking testicle torture device.<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> thinks for a moment before replying. "@@.npc_barista;Hmm, like, I guess that makes sense, since you'd be producing more, but, like, I'd have to ask my master to approve the extra expenditure.@@"<br>
<br>
"@@.npc_manager;Do not worry about it. I will take care of <<=$player.first_name>> out of my budget, it will be more than worth it to know that those naughty testicles are enduring the harsh treatment they deserve.@@"<br>
<br>
<<printThought "Wait... is this such a good idea? I hope I don't end up regretting my greed...">><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> watches intently as <<=setup.getNpcName('npc_barista', 'nickname')>> kneels down and guides your <<if setup.calcErection()>>already hard<<elseif $player.timebased.horny < 25>>soft<<else>>half-hard<</if>> member into the tube before stretching the testicle device around your dangling balls.<br>
<br>
Cinching the attached harness around your waist spreads out the weight of the contraption, a pair of straps running down between your legs and over your butt cheeks to spread them provocatively.<br>
<br>
<<if setup.checkItemTypeWorn('plug')>>
Discovering the <<=setup.getItemTypeName('plug')>> in your rear <<=setup.getNpcName('npc_barista', 'nickname')>>, gives it a little wiggle. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows, but <<=setup.getNpcName('npc_barista', 'nickname')>> just flashes an innocent smile as she rises to her feet...<br>
<br>
<</if>>
A small battery pack is strapped to your thigh and connected to your testicle cosies, a quick "system test" having you gasp in pain as your stretched and sensitive jewels light up in agony.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smirks at your self-inflicted discomfort. "@@.npc_manager;Well, well. You look all set for a nice... productive day.@@"<br>
<br>
You whimper in pain as <<=setup.getNpcName('npc_barista', 'nickname')>> walks over to remove the "out of service" sign on the machine from whence your penile milking tubes lead and hits the "on" button.
<<case "obedient">>
Thinking for a moment, you turn towards <<=setup.getNpcName('npc_manager', 'formal')>> and softly ask if she thinks it would be better for you to use the production enhancing add-on.<br>
<br>
She beams with pride so brightly you fear you might go blind, smiling wide and nodding. "@@.npc_manager;Oh you are just the best! While I would extend my sympathy for the pain you would be forced to endure, I absolutely think that having your cute balls all stretched and squeezed and shocked is an excellent idea.@@"<br>
<br>
Blushing at the compliment, you lift your skirt and nod for <<=setup.getNpcName('npc_barista', 'nickname')>> to get you fully equipped.<br>
<br>
Stretching things over your cylindrical milker and sack the ball cozy tightens into position, separating your balls and pulling them down. Strapping a battery pack to your thigh she plugs in the wires and gives you a test shock.<br>
<br>
You gasp in pain as electricity courses through your balls and <<=setup.getNpcName('npc_manager', 'formal')>> looks on with concern. "@@.npc_manager;Are you alright?@@"<br>
<br>
Putting on a brave smile, you nod, noting that your naughty testicles deserve the punishment for all those years pumping you full of icky testosterone.<br>
<br>
For a moment you're afraid <<=setup.getNpcName('npc_manager', 'formal')>> might cut your workday off before it even begins, the hungering lust in her eyes almost making you swoon. The moment is interrupted by <<=setup.getNpcName('npc_barista', 'nickname')>> turning on the milking device as she puts the "out of order" sign to one side.
<<case "">>
You remain silent as <<=setup.getNpcName('npc_barista', 'nickname')>> packages things up and then walks over to remove the "out of service" sign on the machine from whence your penile milking tubes lead and hits the "on" button.
<<default>>
ERROR: unknown milking style: <<=$scene.style>>
<</switch>>
<br><br>
You stagger as the milking pulsing suction commences, a pulsing, sucking blowjob sensation that is pleasurable, distracting and ominously inescapable all at the same time.<br>
<br>
"@@.npc_manager;Well, have a good day!@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a wink. "@@.npc_manager;I'll see you at the end of your shift — try not to get into too much trouble!@@"<br>
<br>
"@@.npc_barista;D'aww, we'll do our best!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> turns back to you as your <<=setup.getNpcName('npc_manager', 'title')>> departs. "@@.npc_barista;Cum on, now, let's get to work!@@"<br>
<br>
<<if $player.body_ref.penis && $fetish.penis_milking>>
[<<moveTo "event_coffee_milking_avoid_1" "Ask if you could, perhaps, forgo the penis milker?" 60 "<<if !$player.sec_style.sex.testicle_milking>><<set $player.sec_style.sex.testicle_milking = 'obedient'>><</if>>">>]<br>
<</if>>
[<<moveTo "event_coffee_milking_first_day_1" "Start working." 60 "<<if $player.body_ref.penis && $fetish.penis_milking && !$player.sec_style.sex.testicle_milking>><<set $player.sec_style.sex.testicle_milking = 'obedient'>><</if>>">>]
</div>/*#
#desc: try to avoid penis milking
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = "forced">>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
Now that it's just the two of you, you ask <<=setup.getNpcName('npc_barista', 'nickname')>> if you could forgo the penis milker? Pointing out that it is somewhat in the way...<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> blinks at you in seeming total lack of comprehension. "@@.npc_barista;Forgo milking? Do you know how jealous I am of you that you can produce milk AND cream? I mean, sure, I love being stuffed full up front, and I much prefer BEING fucked, to fucking... but the opportunity to be even more productive? And to feel something constantly suck-suck-sucking between my legs all shift? I'll chalk it up to nerves that you would even ask something so silly!@@"<br>
<br>
Before you can think of a counter-argument <<=setup.getNpcName('npc_barista', 'nickname')>> turns to address a customer, grinning enthusiastically as always.<br>
<br>
<<printThought "Guess I'm stuck like this...">><br>
<br>
[<<moveTo "event_coffee_milking_first_day_1" "Start working." 60>>]
</div>/*#
#desc: finished equiping milking devices, time to start work
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.style != "">>
<<applyExperience 'bdsm' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<changeHorny 20>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
Your breasts<<if $player.body_ref.penis>> and <<getWordMyPenis>> both<</if>> stimulated by a constant pulsing suction, you steady yourself against the counter as you turn to the line of customers that has built up while you were getting equipped.<br>
<br>
<<if $scene.style != "" && $player.body_ref.balls>>
Intermittently electricity courses through your stretched testicles, the painful shocks taking the wind out of you each time as you balls quiver. Despite the pain you remain ever-hard and it does seem like each shock is shortly followed by a few drops of thin cum sucked up into the machine.<br>
<br>
<</if>>
Focusing on your work, you try to ignore the way that customers stare at your partially exposed breasts<<if $player.body_ref.penis>>, or when their eyes trace down the tube that leads under your tented skirt<</if>>. The humiliation of your exposed state only serves to turn you on further<<if $player.body_ref.milkProduction > 0>>, while also making you feel a bit inadequate that your breasts are unable to produce the seemingly popular "special cream" that <<=setup.getNpcName('npc_barista', 'nickname')>> does.<</if>><br>
<br>
[<<moveTo "event_coffee_milking_first_day_2" "Work." 60>>]
</div>/*#
#desc: finish first day working at coffee shop w/milking devices
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.penisMilker = setup.isItemEquipped('penis_milker')>>
<<if $scene.penisMilker>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<set $player.timebased.milking.cream_supply = 0>>
<</if>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<useClothSetPop 'tmp'>>
<<if $scene.style == "money">>
<<addCredits 50>>
<</if>>
<<set $player.flags.work_coffee.times_worked += 1>>
<<set $player.flags.work_coffee.times_work_milk += 1>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_evening.hour, $player.work.time_evening.minutes-10)>>
<<set $player.timebased.milking.milk_supply = 0>>
<<include "calcPerformanceReview">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
<<if $scene.penisMilker>>
Despite the number of times you have cum, the diabolic milker enveloping your <<getWordMyPenis>> continues to suck, drawing every drop your <<if $scene.style != "">>punished <</if>>balls can produce.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
Cut with some volume enhancers, your "tasty <<if $fetish.sissy>>sissy<<else>>girl<</if>> juice" proves quite popular with certain clientele,
<<if $player.body_ref.cumProduction > 1>>
your customers over-joyed at your copious rate of production.
<<else>>
though each customer seems a bit disappointed at how severely <<=setup.getNpcName('npc_barista', 'nickname')>> is forced to ration it.
<</if>>
<</if>>
<</if>>
Closing up at the end of the day, your legs are weak and your breasts sore from
<<if $player.body_ref.milkProduction > 0>>
being drained dry.
<<else>>
from the constant suction that has yet to produce a single drop.
<</if>>
<br><br>
Finally turning off the machines, <<=setup.getNpcName('npc_barista', 'nickname')>> pours <<if $player.body_ref.milkProduction > 0>>your combined remaining<<else>>her remaining<</if>> "cream" <<if $player.body_ref.penis>>plus your<<if $fetish.sissy>> "sissy juice" <<else>> "girl juice" <</if>><</if>>into a glass that she offers to share with you.<br>
<br>
Blushing with arousal, you wait for her to take the first sip before draining the rest of the sweet, tangy cream, swapping things back and forth a final time with a passionate kiss.<br>
<br>
<<if !$scene.penisMilker>>
You sigh in relief as your breasts are freed from the stimulating, but occasionally torturous device.
<<elseif $scene.style != "">>
You sigh as your tired, sensitive <<getWordMyPenis false>> slides out of the tube that has sucked and stimulated it all day. Placing a gentle kiss on your tired member she gently slides your <<=setup.getItemTypeName('cage')>> back on and locks you up.<br>
<br>
"@@.npc_barista;There we go, all safe and secure!@@"
<<else>>
Smiling, she kneels down and sets to work removing your breast cups, sheath and harness. Free of their rubber prison your beyond-spent testicles try to retreat turtle-like back into your body. Placing a gentle kiss on each sensitive ball she hums in pleasure.<br>
<br>
"@@.npc_barista;Mmmm, your ball-sweat is tasty, it'd go great on a bit of fruit, nice and sweet and salty and yummy-yum-yum!@@"<br>
<br>
You blush as she finishes up by locking your <<=setup.getItemTypeName('cage')>> back on.
<</if>>
<br><br>
"@@.npc_barista;Whew! What a day!@@"<br>
<br>
You nod, surprised that, rather than removing her own breast cups, <<=setup.getNpcName('npc_barista', 'nickname')>> merely swaps out for shorter tubes, connecting herself to a backpack tank that she pulls on.<br>
<br>
You look at her in puzzlement, but she just smiles as she re-activates suction. "@@.npc_barista;Hehe, just taking my work home with me!@@"<br>
<br>
<<if $scene.style == "money">>
"@@.npc_barista;Oh, almost forgot!@@" She adds, opening up the till and grabbing a handful of credits. "@@.npc_barista;Bonus pay, per previous agreement, see you next time!@@"
<</if>>
She skips away down the hallway as you
<<if $scene.change>>
change back into your "normal" work clothes and
<</if>>
head back to check in with your manager to finish off the day.<br>
<br>
<<if $player.sec_style.submission.permanent_key == "" && $npc_manager.flags.require_chastity>>
<<if (setup.isItemEquipped("c_cage_advanced") || setup.isItemEquipped("chastity_belt_adv") || setup.isItemEquipped("chastity_belt_adv_ultra"))>>
<<if !setup.checkItemOwned("advance_chastity_cage_key") && $npc_manager.flags.took_adv_key>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 60 >>]
<<else>>
[<<moveTo 'event_manager_performance_review' 'Head back to the office.' 60 "<<set $scene.afterWorkEventTriggered = true>>">>]
<</if>>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 60>>]
<</if>>
<<else>>
[<<moveTo "event_manager_performance_review" 'Head back to the office.' 60 "<<set $player.work.nowWorking=false>>">>]
<</if>>
</div>/*#
#desc: see npc_barista with breast milkers
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.milking.first_seen = true>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_5'
4
'event_psychiatrist_session_barista_milked_1'
false
>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
You make another visit to Coffee Shop 52 where <<=setup.getNpcName('npc_barista', 'nickname')>> greets you with a smile as you gawk at her chest, or, more precisely, the device attached to it. Her normally perky and cleavage-riffic breasts are enveloped by a pair of clear hemispheres, her latex maid's top straining even harder than usual to accommodate the additional volume, a tube snaking up from each breast through which a milky liquid occasionally flows up towards the ceiling.<br>
<br>
<<if $player.flags.work_coffee.lewd_accepted.milk>>
<<printThought "I guess the milking device she was talking about came in...">>
<<else>>
<<printThought "Is she being... milked?">>
<</if>>
<br><br>
Seemingly unbothered by the strange accessory, she turns to you with her trademark smile.<br>
<br>
"@@.npc_barista;Hiya! What can do you for today?@@"<br>
<br>
[<<moveTo "event_coffee_milking_explanation_1" "Ask about the odd contraption." 180>>]<br>
[<<moveTo "event_work_coffee_random_finish" 'Ignore this new development and just get coffee and bring it back to <<=setup.getNpcName("npc_manager", "formal")>>.' 180>>]
</div>/*#
#desc: npc_barista explains her milking system
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.milking.questioned = true>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_barista', 'nickname')>> smiles as you ask what's up with the strange device attached to her breasts.<br>
<br>
<<if $player.flags.work_coffee.lewd_accepted.milk>>
"@@.npc_barista;This is the milking device I was talking to you about, silly! And let me tell you — as good as your hands feel this is just so much more convenient, especially since I'm up to over a gallon a day of production! Here, lemme start your order — the usual, right?@@"
<<else>>
"@@.npc_barista;One sec, lemme just start your order, the usual, right?@@"
<</if>>
<br><br>
You nod and she sets to work while chatting casually.<br>
<br>
"@@.npc_barista;Well, you see, it was decided that we ought to expand our offerings here to "better serve" our clientele. Part of that is our new, fresh and fancy cream! Here, have a taste!@@"<br>
<br>
She fills a small cup with a shot from a tap marked "special cream." Your eyes trace up from the dispenser to confirm what you already suspected — the tubes leading out from her breasts go along the ceiling and then back down to drip into the half-full clear reservoir of milky liquid that tops the machine.<br>
<br>
"@@.npc_barista;Don't I taste just nummy?@@" She asks with a smile.<br>
<br>
[<<moveTo "event_coffee_milking_explanation_2" "Drink it." 60 "<<set $scene.drink = true>>">>]<br>
[<<moveTo "event_coffee_milking_explanation_2" "Decline." 60 "<<set $scene.drink = false>>">>]
</div>/*#
#desc: drink sample of npc_barista milk
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.milking.questioned = true>>
<<if $scene.drink>>
<<applyStress -10>>
<<applyFatigue -50>>
<<changeHorny 20>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista","npc_barista_milk")>>
<div id="invframe" class="scrolltext">
<<if $scene.drink>>
Not wanting to offend, you drink the shot of <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> milk.<br>
<br>
It's actually quite tasty, thicker and creamier than normal milk and with a pleasant sweetness.<br>
<br>
She smiles enthusiastically, her eyebrows bouncing in anticipation of your review and you nod and agree with her assessment as to her milk's flavour.<br>
<br>
She practically glows with pride at your words.
<<else>>
Declining <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> offer you make up an excuse about trying to watch your lactose intake. She appears disappointed, but pounds the shot back with a smile before continuing on.<br>
<br>
<</if>>
"@@.npc_barista;You know what's even better? Being milked. It, like, feels sooooo good! It's like I'm being groped all the time! You, like, HAVE to try it sometime, I bet you'd taste super sweet!@@"<br>
<br>
<<if $player.body_ref.milkProduction == 0>>
You try to explain that you don't think you're really capable of producing milk, but she rolls her eyes in frustration at your apparent foolishness.<br>
<br>
"@@.npc_barista;Tsk, tsk, like there's some medical stuff that can totally take care of that! I mean, I had to take some pills to help jump-start production, but if you needed a bit more help I'm sure it could be arranged!<<if $player.body_ref.penis && $fetish.penis_milking>> And until then, well... you produce another type of cream that's, like, extra-special-tasty and we have milkers for that too!<</if>>@@"
<<else>>
You thank her for the offer and reply that you'll consider it as she oogles your breasts.<br>
<br>
"@@.npc_barista;Sweet!... and I bet you'd be all sweet and yummy, too!<<if $player.body_ref.penis && $fetish.penis_milking>> And also, well... you produce another type of cream that's, like, extra-special-tasty and we have milkers for that too!<</if>>@@"
<</if>>
<br><br>
<<if $player.body_ref.penis && $fetish.penis_milking>>
Driving that point home, she points to another machine marked "out of service," opening a service cabinet on one side to show off an array of long cylinders of varying sizes that range to accommodate any size of <<getWordPenis>>. "@@.npc_barista;Put one of these puppies on, turn on the machine and sucky-sucky, <<if $fetish.sissy>>sissy<<else>>super special<</if>> cream is back on the menu!@@"<br>
<br>
Tittering in amusement, she flashes a wink as she adds a shot of her "special cream" to your manager's coffee before handing it off to you.<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_enthusiast_1" "Ask if there are milking devices for... down there?" 180>>]<br>
<</if>>
[<<moveTo "event_work_coffee_random_finish" 'Thank <<=setup.getNpcName("npc_barista", "nickname")>> for the information and deliver <<=setup.getNpcName("npc_manager", "formal")>> her coffee.' 180>>]
</div>/*#
#desc: change to work in Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.broughtPink = false>>
<<include "latexMaidDress">>
<<set $scene.removeCage = false>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
You show up to Coffee Shop 52 where <<=setup.getNpcName("npc_barista","nickname")>> greets you with a smile and hug.
<<if $scene.latexMaid>>
Your matching rubbery outfits rub against each other, much to the delight of the customers waiting for their drinks. "@@.npc_barista;Yum! Back and ready to work another shift, what fun!@@"
<<elseif $scene.broughtPink>>
You head into the storage room to change, pulling out the pink latex outfit you brought with you and slipping it on. Stepping back out you immediately catch <<=ps(setup.getNpcName("npc_barista","nickname"))>>. "@@.npc_barista;Oooh, pink looks so good on you! A perfect, cute <<if $fetish.sissy>>sissy<<else>>girl<</if>>! Our customers are going to just love you!@@"
<<else>>
<<if setup.checkVisibleClothingTag('maid') > 60>>
"@@.npc_barista;Cute outfit, but remember that the uniform here is latex maid! Go on and get changed and we can get started.@@"
<<else>>
"@@.npc_barista;I'm so happy you decided to work with me again! It's so much better when you have someone to share a load with! Go on now and get changed into your latex maid uniform!@@"
<</if>>
<br><br>
Ducking into the storage closet that stands in for a changing room, you quickly emerge clad in shiny, sexy latex.
<</if>>
<br><br>
<<if $player.flags.work_coffee.times_work_milk && $fetish.milking>>
She starts to reach for your milking devices but you explain that you are here to work a "normal" shift. She looks confused for a moment then winks knowingly "@@.npc_barista;<<=setup.getNpcName("npc_manager","formal")>> wanting to save your yummy milkies for her own personal use, huh? Well... there may be some disappointed customers, but she's the boss! Well, your boss, at least!@@"<br>
<br>
<</if>>
<<if $npc_barista.stage == 4 && !$scene.baristaOption>>
During a brief lull in customers you consider your current challenge of getting <<=setup.getNpcName("npc_barista","nickname")>> locked in chastity.<br>
<br>
<<if $npc_barista.flags.ai_help>>
<<if $player.body_ref.penis>>
<<printThought "<<=setup.getNpcName('npc_ai', 'first')>> promised to run interference, I think this is my shot...">>
<<else>>
<<printThought "<<=setup.getNpcName('npc_ai', 'first')>> promised to run interference, I wonder if a spontaneous orgy would be enough to get <<=setup.getNpcName('npc_barista', 'first')>> in trouble?.">>
<</if>>
<br><br>
<<else>>
<<if $player.body_ref.penis>>
<<printThought "Hmm, this penis milker isn't locked on... and her fucking another sub without permission should be good for punishment, right?">><br>
<br>
<</if>>
<</if>>
<<if setup.checkItemInInventory('aphrodisiac_blend')>>
[<<moveTo 'event_milking_misbehave_1_alt' 'Start dosing customers with aphrodisiacs...' 600 "<<set $scene.drug=true>>">>]<br>
<<elseif setup.checkItemOwned('aphrodisiac_blend')>>
<<printThought "Dammit, I mixed up that special aphrodisiac blend... but I forgot it at home!">><br>
<br>
<<else>>
<<printThought "Hmm... I wonder if <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> lab would have some sort of giga-aphrodisiac?">><br>
<br>
<</if>>
<<if $player.body_ref.penis && !setup.checkItemTypeWorn('cage')>>
<<if setup.checkItemInInventory('drug_dick') || setup.checkItemInInventory('drug_dick_plus') >>
[<<moveTo 'event_milking_misbehave_1' 'Pop a dose of <<=setup.getItemName("drug_dick")>>.' 600 "<<set $scene.drug=true>>">>]<br>
<<else>>
[<<moveTo 'event_milking_misbehave_1' 'Be naughty.' 600 "<<set $scene.drug=false>>">>]<br>
<</if>>
<<elseif $player.body_ref.penis && setup.checkItemTypeWorn('cage')>>
[@@.link_locked;Your chastity device limits your options.@@]<br>
<</if>>
[<<moveTo "event_coffee_job_milked_3" "Just work your shift." 1800 "<<set $scene.baristaOption=true>>">>]
<<elseif $player.flags.move_fetish.bondage >= 2 && !State.hasPlayed("event_cafe52_cart_6")>>
"@@.npc_barista;Oh, so, like... I don't know if you'd be interested, but there's some important meeting upstairs that needs barista service, would you be up for it?@@"<br>
<br>
<<printThought "Given what happens on the upper floors... this is liable to be quite an intense shift...">><br>
<br>
[<<moveTo "event_cafe52_cart_1" "Sure!" 600>>]<br>
[<<moveTo "event_work_coffee_work_root" "Just get to work." 7200>>]
<<else>>
<<if State.hasPlayed("theme_panties_barista_ask_1")>>
<<if setup.checkItemOwned("panties_barista")>>
[@@.link_locked;You already earned a pair of <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> panties.@@]<br>
<<else>>
[<<moveTo "event_panties_barista_work_1" "Ask about earning a pair of her panties?" 180 "<<set $scene.fromMilking=true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_work_coffee_work_root" "Get to work." 7200>>]
<</if>>
</div>/*#
#desc: work in Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.event = ['none', 'none', 'milking', 'whipped', 'blowjob', 'handjob'].random()>>
<<if $scene.event == 'milking' && !$fetish.milking>>
<<set $scene.event = 'none'>>
<<elseif $scene.event == 'handjob' && $npc_harassment.stage < 4>>
<<set $scene.event = 'none'>>
<</if>>
<<if $scene.event == 'none'>>
<<applyStress -3>>
<<if $player.flags.work_coffee.coffee_skill < 7>>
<<set $player.flags.work_coffee.coffee_skill+=1>>
<</if>>
<</if>>
<<set $player.flags.work_coffee.times_worked += 1>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<switch $scene.event>>
<<case 'none'>>
You work another shift alongside <<=setup.getNpcName("npc_barista","nickname")>>. Though it is nigh impossible to have a bad time with <<=setup.getNpcName("npc_barista","nickname")>> given her infectiously bubbly enthusiasm it is overall an uneventful shift, little happening in the two hours before she sends you back to your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
<<if $player.flags.work_coffee.coffee_skill >= 10>>
While relatively relaxing, you have no more to learn about coffee.
<<elseif $player.flags.work_coffee.coffee_skill > 7>>
While relatively relaxing, you have no more to learn about coffee from such indirect experience.
<<else>>
While discharging your duties you manage to learn a bit about coffee by listening to orders and watching the machine.
<</if>>
<br><br>
[<<moveTo "event_work_coffee_work_end_noevent" "Return to your office." 180 "<<if setup.isItemEquipped('breast_milker')>><<removeItem 'breast_milker' true>><<deleteItem 'breast_milker'>><</if>><<if setup.isItemEquipped('penis_milker')>><<removeItem 'penis_milker' true>><<deleteItem 'penis_milker'>><<include 'replaceCage_extendSissyomatic'>><</if>><<useClothSetPop 'tmp'>>">>]
<<case 'milking'>>
Your shift working alongside <<=setup.getNpcName("npc_barista","nickname")>> is zipping along pleasantly, but uneventfully, though you notice your co-worker shifting a bit uncomfortably. Finally, as there is a lull with no customers in the shop she turns to you with a hint of desperation in her voice. "@@.npc_barista;So, like... my breasts are feeling REALLY full right now, who knew producing milk could be this much work! So, like... would you be up for helping me relieve a bit of pressure?@@"<br>
<br>
[<<moveTo "event_work_first_coffee_work_milk_1" "Say sure." 120 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_work_first_coffee_work_milk_1" 'Note that someone should probably cover the counter, but tell her to take whatever time she needs.' 3600 "<<set $scene.accept = false>>">>]
<<case 'whipped'>>
You're working away through a steady stream of customers when one approaches the counter with a slight leer and asks for the "whipped special." Turning to the machine, you see no button for such, but fortunately <<=setup.getNpcName("npc_barista","nickname")>> has overheard and pops over.<br>
<br>
"@@.npc_barista;Sorry, that's a bit of a more... literal offering. It's totally fun though, nothing invigorates you during a shift than a nice flogging, you know? Everything you need to service the order is in the back room.@@"<br>
<br>
<<printThought "So it's... literally a whipping? Why am I not surprised...">><br>
<br>
<<if setup.getTotalValue("bdsm") > 5>>
[<<moveTo "event_work_first_coffee_work_whip_1" "Go with the customer into the back room." 120 "<<set $scene.accept = true>>">>]<br>
<<else>>
[@@.link_locked;Getting flogged for literally no reason does not sound like your cup of tea.@@]
<</if>>
[<<moveTo "event_work_first_coffee_work_whip_1" 'Ask <<=setup.getNpcName("npc_barista","nickname")>> if she would like to take this order.' 3600 "<<set $scene.accept = false>>">>]
<<case 'handjob'>>
You are working away alongside <<=setup.getNpcName("npc_barista","nickname")>> when <<=setup.getNpcName('npc_harassment', 'formal')>> and her adorable assistant <<=setup.getNpcName('npc_harassment_assist', 'first')>> walk up to the counter and place an order.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> blushes and makes eyes at you the whole time you are "working" but, as you slide the finished drink across the counter <<=setup.getNpcName('npc_harassment', 'formal')>> nods. "@@.npc_harassment;There is one final ingredient that is required to make it perfect — if you could assist <<=setup.getNpcName('npc_harassment_assist', 'first')>> in producing it? Someone was very naughty this morning and so is disallowed from touching themselves.@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> bites their lip and bashfully looks away at this comment.<br>
<br>
<<printThought "This is going to involve giving a handjob... isn't it?">><br>
<br>
[<<moveTo "event_work_first_coffee_work_hj_1" '"Assist" <<=setup.getNpcName("npc_harassment_assist", "first")>> in the back room.' 120 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_work_first_coffee_work_hj_1" 'Ask <<=setup.getNpcName("npc_barista","nickname")>> to handle it.' 3600 "<<set $scene.accept = false>>">>]
<<case 'blowjob'>>
Your shift working alongside <<=setup.getNpcName("npc_barista","nickname")>> goes by quite quickly. The responsibilities are really quite minimal with the machine doing the real work, as the two of you smile and act as glorified data entry for the machine.<br>
<br>
Though you doubt anyone could match <<=ps(setup.getNpcName("npc_barista","nickname"))>> bubbly enthusiasm at serving each customer, you can't help but try, smiling at batting your eyes as you take each order and then hand over the machine-produced drink. Serving up an espresso shot to a particularly haggard looking employee <<he>> knocks it back and perks up before pausing, pawing at <<his>> pockets.<br>
<br>
"@@.generic_male1;Shoot, I forgot my wallet back at my desk and a drink that invigorating served up by such a lovely girl really deserves a tip.@@"<br>
<br>
You try to explain that it's quite alright — the store, after all, being a perk provided by the company, but <<he>> is quite insistent.<br>
<br>
"@@.generic_male1;Please, I know how hard you girls work and it would be my pleasure to give you a nice reward for your efforts.@@"<br>
<br>
"@@.npc_barista;Go on!@@" <<=setup.getNpcName("npc_barista","nickname")>> says with a smile. "@@.npc_barista;You deserve it and this is one of the best parts of the job!@@"<br>
<br>
You can hear the enthusiasm in her voice and a glance at the bulge in the <<mans>> trousers as <<he>> gestures towards the private storage room gives you a sudden idea of exactly what sort of "treat" <<hes>> planning on giving you...<br>
<br>
[<<moveTo "event_work_first_coffee_work_bj_1" "Go with <<him>>." 120 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_work_first_coffee_work_bj_1" "Politely decline <<his>> offer." 3600 "<<set $scene.accept = false>>">>]
<<default>>
ERROR: unexpected scene.event <<=$scene.event>>
<</switch>>
</div>/*#
#desc: blowjob offer at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_4'
0
'event_ai_sex_lesson_oral_1'
true
>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/storage.png">>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You follow the <<man>> into the storage room as <<=setup.getNpcName("npc_barista","nickname")>> looks on with an excited, if a little bit jealous, smile.<br>
<br>
Holding the door and then gently closing it behind, <<he>> turns towards you with a flourish as <<he>> unzips <<his>> pants and <<his>> hard <<getWordPenis>> springs forth.<br>
<br>
<<if !$player.virgin.blowjob>>
<<printThought "Wait, is <<he>> expecting me to suck that... no, I'm not doing something like that!">>
<<elseif setup.getTotalValue("cum") >= 10>>
<<printThought "Oh yum fresh <<getWordCum>>, now THAT'S a yummy treat!">>
<<else>>
<<printThought "Why am I not surprised that this is <<his>> idea of a treat...">>
<</if>>
<br><br>
<<if !$player.virgin.blowjob>>
[@@.link_locked;No, you haven't stooped to sucking cock yet you aren't going to do it the first time like this.@@]<br>
<<else>>
[<<moveTo "event_work_first_coffee_work_bj_2" "Get on your knees." 300 "<<set $scene.accept = true>>">>]<br>
<</if>>
[<<moveTo "event_work_first_coffee_work_bj_2" "Politely decline <<his>> offer." 120 "<<set $scene.accept = false>>">>]
<<else>>
You once again tell the <<man>> that there's really no need for <<him>> to do anything. <<=setup.getNpcName("npc_barista","nickname")>> glances at you in puzzlement as she quickly slides in front of you. "@@.npc_barista;I'll take her tip, <<if $options.fem>>miss<<else>>mister<</if>>! <<=setup.getNpcName("npc_barista","nickname")>> loves treats! We'll be right back@@" she adds to you with wink.<br>
<br>
Taking the customer by the hand <<=setup.getNpcName("npc_barista","nickname")>> leads <<him>> into the back room as you quickly find yourself turning to take the order of the next employee who walks into the shop.<br>
<br>
Several minutes later the two of them re-emerge, <<=setup.getNpcName("npc_barista","nickname")>> practically skipping back to the counter as she licks her lips, the <<man>> with an equally wide smile on <<his>> face as <<he>> fixes <<his>> pants and departs with a wave.<br>
<br>
"@@.npc_barista;You gotta take those offers when they cum, teehee! Along.@@" <<=setup.getNpcName("npc_barista","nickname")>> states as she laughs at her pun.<br>
<br>
You reply that you thought she'd appreciate it more and she smiles. "@@.npc_barista;Well... I do, but I also want to look out for my friends! You'll never come back to work with me again if I hog up all the rewards!@@"<br>
<br>
You re-assure her that you'll still come back to help work some other time, the both of your returning to working as the remainder of the shift passes without further incident.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Finish your shift and head back to the office." 600>>]
<</if>>
</div>/*#
#desc: blowjob at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/storage.png">>
<<set $player.flags.work_coffee.lewd_accepted.bj = true>>
<<applyExperience 'oral' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'penis' 8 'little' $SEEN_STRANGER>>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Thankful for the padded section of floor installed for just this purpose, you drop to your knees and take the customer's <<getWordPenis>> between your fingers.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Hands behind your back you show off by looking directly up at <<him>> as you take <<him>> between your lips and lean forward, hilting <<him>> at one go.
<<else>>
Holding <<him>> gently, you spread your lips and lean forward, gently hilting <<him>> in one smooth, sensual stroke.
<</if>>
Bobbing your head back and forth your tongue works its magic as well as the <<mans>> eyes close and <<he>> suppresses a moan. Increasing your pace you suck and slurp until <<he>> tenses and then pull back to run your tongue around <<his>> hood and through <<his>> slit until with a grunt <<he>> cums.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
Holding <<him>> gently, you bring your lips to <<his>> <<getWordPenis>>, warming up by sucking and licking the tip before mustering the courage to stroke further, barely managing to deep-throat <<him>> without coughing.
<<else>>
One hand wrapped around <<his>> shaft to shorten the length you have to deal with you suck as best you can, jerking and licking and slurping as you try not to keep from going too deep and irritating the back of your inexperienced throat.
<</if>>
<br><br>
The <<man>> lets you do all the work, merely groaning in pleasure as <<he>> looks down and it isn't long until you get your "reward," <<his>> balls tightening moments before <<he>> spurts directly into your mouth.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Eager for the delicious
<<else>>
Grateful for the tasty
<</if>>
treat, you suck and lick up every drop, letting it roll around in your mouth and showing it off on your tongue before swallowing and licking your lips in pleasure.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Surprised at how good <<his>> salty offering tastes, you find yourself compelled to lick up ever drop, somewhat bashfully looking away when you finally separate and notice <<him>> looking down at you in approval.
<<else>>
Not wanting to reject <<his>> "offer," you choke down the bitter load with little more than a small, cute cough.
<</if>>
<</if>>
A smile on <<his>> face, <<he>> pats you on the head and then zips up as you return to your feet. <<He>> holds the door for you once again and you return to the counter to take your place next to the smiling <<=setup.getNpcName("npc_barista","nickname")>>.<br>
<br>
"@@.npc_barista;Doesn't this job have, like, the best perks?@@" She states giddily before squinting at you and reaching out to brush your cheek, coming away with a few drops of <<getWordCum>> on her finger that she eagerly licks off. "@@.npc_barista;Hehe, you missed a spot, yummy!@@"<br>
<br>
Working side by side, the remainder of your shift passes uneventfully and she finally, and reluctantly bids you adieu... after making you promise you'll be back to "help" her again some other day.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Back to the office." 1800>>]
<<else>>
You really should have seen this coming, but now, face to face with <<his>> hard, none-too-small <<getWordPenis>> you balk, quickly poking out the door and calling to <<=setup.getNpcName("npc_barista","nickname")>> for assistance.<br>
<br>
Hurrying over, <<=setup.getNpcName("npc_barista","nickname")>> slips into the room and immediately drops to her knees. "@@.npc_barista;Don't worry, <<sir>>, I am fully trained for this sort of situation!@@" The <<mans>> confusion disappears as <<=setup.getNpcName("npc_barista","nickname")>> sets to work, <<his>> eyes rolling back in pleasure as you hurry back to the counter just in time to take another order.<br>
<br>
Emerging a few minutes later, <<=setup.getNpcName("npc_barista","nickname")>> heads straight for you with a smile on her face and her cheeks puffed, leaning in for a kiss that is obviously meant to "share" in the treat...<br>
<br>
[<<moveTo "event_work_first_coffee_work_bj_3" "Share a kiss." 300 "<<set $scene.kiss = true>>">>]<br>
[<<moveTo "event_work_first_coffee_work_bj_3" "Decline the offer." 120 "<<set $scene.kiss = false>>">>]
<</if>>
</div>/*#
#desc: post blowjob failure in Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.kiss>>
<<applyExperience 'cum' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<if $scene.kiss>>
<<=setup.getNpcName("npc_barista","nickname")>> leans in for a kiss and your lips meet, her tongue probing forward covered in cum as the two of you share the
<<if setup.getTotalValue("oral") > 10>>
delicious
<<else>>
<<if setup.getTotalValue("oral") > 5>>
salty
<<else>>
bitter
<</if>>
<</if>>
"treat." "@@.npc_barista;Mmm, even better shared! Though next time you should really take the opportunity to suck it fresh from the source!@@"
<<else>>
You gently decline the offer as, once again, <<=setup.getNpcName("npc_barista","nickname")>> looks at you in confusion before shrugging and swallowing. "@@.npc_barista;You really missed out, <<he>> was tasty! Oh well, back to work!@@"
<</if>>
<br><br>
The remainder of your shift passes by without further incident. Somewhat reluctantly <<=setup.getNpcName("npc_barista","nickname")>> waves as you get ready to leave.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Back to the office." 1800>>]
</div>/*#
#desc: return after an uneventful work coffeeshop shift
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.stage >= 4 && setup.calcBreastSize() == "massive" && $player.body_ref.milkProduction > 0 && State.hasPlayed("event_forced_hucow_9") && $npc_manager.flags.evil != 1 && !State.hasPlayed("event_manager_milk_requirement_1")>>
<<initRoom>>
<<moveTo "event_manager_milk_requirement_1">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if !$scene.latexMaid>>
Changing back into your secretary clothes, you head back to the office.
<<else>>
You head back to the office.
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> is busy in her inner sanctum and so you merely return to your desk and set to work.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Resume working." 60>>]
</div>/*#
#desc: return to office after an eventful work coffeeshop shift
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.accept && $player.flags.work_coffee.times_worked > 5 && (!State.hasPlayed("event_barista_bimbofication_1") || random(1,5) == 1)>>
<<initRoom>>
<<moveTo "event_barista_bimbofication_1">>
<<else>>
<<set $scene.workMilk = setup.isItemEquipped('breast_milker')>>
<<if setup.isItemEquipped('breast_milker')>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<</if>>
<<if setup.isItemEquipped('penis_milker')>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<set $scene.pinkLatexGift = !setup.checkItemOwned('maid_uniform_latex_pink') && $player.makeup.unlocked.hasOwnProperty('ultimatebimbo') && $player.makeup.unlocked.ultimatebimbo && $player.flags.special_skills.sexy_pickup && $scene.latexMaid && $scene.accept>>
<<useClothSetPop 'tmp'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.pinkLatexGift>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.pinkLatexGift>>
The shop has momentarily cleared out as you finish up your shift and you are about to return to the office when <<=setup.getNpcName("npc_barista", "nickname")>> stops you with a coy smile.<br>
<br>
"@@.npc_barista;So like, you've done such a good job helping me," as well as proving yourself a perfect maid in other ways well...@@" she flutters her eyelashes, utterly failing to keep the excitement from her voice "@@.npc_barista;I asked my owner and <<he>> let me get something super special for you!@@"<br>
<br>
Bursting into motion, she grabs you by the hand and drags you into the back-room, pulling a curtain aside with a flourish for the big reveal.<br>
<br>
[<<moveTo "event_work_coffee_pink_latex_gift" "What is it?" 60>>]
<<else>>
<<if $scene.workMilk>>
Your personal shift over, <<=setup.getNpcName("npc_barista", "nickname")>> helps you out of the milking apparatus<<if setup.checkItemTypeWorn("cage")>> and locks you back in chastity<</if>> before returning to the counter to resume her duties.
<</if>>
<<if !$scene.latexMaid>>
Changing back into your secretary clothes, you head back to the office.
<<else>>
You head back to the office.
<</if>>
<br><br>
Walking through the door, you find <<=setup.getNpcName("npc_manager","formal")>> waiting beside your desk
<<if $scene.accept>>
with a wide smile on her face. "@@.npc_manager;So I heard you had quite the eventful shift! Well, it is just lovely to hear. This is exactly the sort of cross-training that these little diversions are meant to provide. Wonderfully done, and now you can reflect on how to apply these new skills to your true calling as my <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"<br>
<br>
Blushing at the compliment, and the fact that she clearly knows what you did during your shift, you bashfully look away as she returns to her inner sanctum.
<<else>>
with a frown on her face. "@@.npc_manager;I know you have been doing an exemplary job at completing your normal duties, but these alternate arrangements are not just rewards — but opportunities. If you are not going to take advantage to learn as much as you can... well, let me just say that I am a touch disappointed at what I heard about your performance today.@@"<br>
<br>
Spinning on her heels, she gives you no opportunity to respond or defend yourself before disappearing back into her inner sanctum.
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Resume working." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: handjob offer at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'bimbofication' 12 'almost' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_harassment","npc_harassment_assist")>>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You somehow find yourself holding hands with <<=setup.getNpcName('npc_harassment_assist', 'first')>> as you head for the private back room, stopped for just a moment as <<=setup.getNpcName('npc_harassment', 'formal')>> hands you a key. "@@.npc_harassment;Remember, <<=setup.getNpcName('npc_harassment_assist', 'first')>> is strictly forbidden from touching anything down there, but I simply MUST have my special flavouring!@@"<br>
<br>
You nod as you accept the key, leading the way into the back room and closing the door as <<=setup.getNpcName('npc_harassment_assist', 'first')>> bites their lip in that oh-so-adorable way and lifts their skirt to display the smooth, gleaming chrome of the chastity belt locked around their waist and between their legs. Taking a deep breath, you use the key to unlock the front panel of the device, the steel quietly swinging down out of the way.<br>
<br>
Given <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> lovely, androgynous appearance, you were not sure what to expect betwixt their legs, but "one of each" probably wasn't it — a lovely penis, and cute, hairless balls dangling in front of a slightly wet, delightfully lovely cunny.<br>
<br>
Smiling at you, <<=setup.getNpcName('npc_harassment_assist', 'first')>> makes a show of tightly gripping their skirt to keep their hands out of the way as they nod towards the drink and then down. "@@.npc_harassment_assist;Mistress likes her coffee still warm, thank you again for assisting me with this.@@"<br>
<br>
You nod absently, still a bit awestruck by their beauty.<br>
<br>
[<<moveTo "event_work_first_coffee_work_hj_2" "Take the matter in hand." 300 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_work_first_coffee_work_hj_2" 'Go fetch <<=setup.getNpcName("npc_barista","nickname")>>.' 120 "<<set $scene.accept = false>>">>]
<<else>>
You're drawing a blank as to how to politely extricate yourself from this situation, but fortunately <<=setup.getNpcName("npc_barista","nickname")>> comes to your rescue.<br>
<br>
"@@.npc_barista;Of course I can give <<=setup.getNpcName('npc_harassment_assist', 'first')>> a hand, come on!@@" Switching sides of the counter remarkably fast she drapes an arm over <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> shoulders. "@@.npc_barista;Did anyone tell you that you are just the cutest thing? Come on, I promise we're going to have a great time!@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> glances back at you with a look of rejection that stings, the quick look even more painful than the obviously displeased expression on <<=ps(setup.getNpcName('npc_harassment', 'formal'))>> face as she shakes her head.<br>
<br>
Fortunately for the tension the rapidly building tension another customer appears to distract you and by the time you have finished serving up their drink <<=setup.getNpcName('npc_harassment_assist', 'first')>> and <<=setup.getNpcName("npc_barista","nickname")>> re-emerge, the former looking a bit flush as they offer up the drink to <<=setup.getNpcName('npc_harassment', 'formal')>> who takes a long sip. "@@.npc_harassment;Perfection. If denial makes you taste this good, I may have to keep you locked up more!@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> blushes and curtsies at the compliment before following <<=setup.getNpcName("npc_harassment","formal")>> out of the shop. Returning to your side of the counter <<=setup.getNpcName("npc_barista","nickname")>> looks after the pair with a smile. "@@.npc_barista;Such a cute couple. We should all be so fortunate with our superiors.@@"<br>
<br>
There is a slight sombre tone to her comment, but it lasts but a moment before her normal enthusiasm re-asserts itself to greet a customer and the two of you are back to work. The rest of your shift passes uneventfully and <<=setup.getNpcName("npc_barista","nickname")>> gives you a hug before sending you off with a promise that you will be back again some other day.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Finish your shift and head back to the office." 600>>]
<</if>>
</div>/*#
#desc: handjob at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'penis' 12 'almost' $SEEN_FRIEND>>
<<set $player.flags.work_coffee.lewd_accepted.hj = true>>
<<if !$player.virgin.handjob>>
<<set $player.virgin.handjob = 'npc_harassment_assist'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_harassment","npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Reaching out, your hand easily wraps around <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> member as they let out an adorable gasp — apparently being locked up has left them VERY sensitive.<br>
<br>
Stroking softly with one hand, you hand them the drink so that you can use the other to finger their now dripping cunny, the combination having them shuddering — especially when your exploring fingers find a pair of kegel balls already inside that you soon have churning about.<br>
<br>
"@@.npc_harassment_assist;Oh Goddess, you're so good!@@" <<=setup.getNpcName('npc_harassment_assist', 'first')>> moans, trembling as they try to hold the drink steady as they swiftly spurt, the both of you working together to aim into the cup.<br>
<br>
The first blast is followed by several dribbles as you carefully milk all of it out to drop into the cup as <<=setup.getNpcName('npc_harassment_assist', 'first')>> gives it a swirl to mix, the pale "cream" making spirals in the dark brew.<br>
<br>
Though you have completed things as required, you can't help but be drawn in by the scent of their release, especially given how wet they remain between their legs...<br>
<br>
[<<moveTo "event_work_first_coffee_work_hj_3" 'Lick <<=setup.getNpcName("npc_harassment_assist", "first")>> clean.' 300 "<<set $scene.lick = true>>">>]<br>
[<<moveTo "event_work_first_coffee_work_hj_3" 'Just lock <<=setup.getNpcName("npc_harassment_assist", "first")>> back up.' 120 "<<set $scene.lick = false>>">>]
<<else>>
Though it fills you with shame you quickly summon <<=setup.getNpcName("npc_barista","nickname")>>, the bubbly bimbo quickly dropping to her knees and setting to stroke, coffee cup held ready in hand as she tells you to cover the counter.<br>
<br>
Though <<=setup.getNpcName('npc_harassment_assist', 'first')>> says not a word you can't help but feel guilty they way they look at you as you quickly depart. Seeing you emerge alone <<=setup.getNpcName('npc_harassment', 'formal')>> too frowns and you avoid making eye contact as you stand silently behind the counter as you wait for things to conclude.<br>
<br>
Fortunately for your sense of awkwardness it isn't long before <<=setup.getNpcName('npc_harassment_assist', 'first')>> and <<=setup.getNpcName("npc_barista","nickname")>> emerge, the former silently handing over the "drink" before the following <<=setup.getNpcName('npc_harassment', 'formal')>> out of the shop.<br>
<br>
"@@.npc_barista;You know you really should commit to your duties more. Not that I don't love the opportunity to play with such a sweet creature but... well, it's impolite AND unprofessional!@@"<br>
<br>
Her comment stings and only deepens your shame, but fortunately a new customer appears and you get back into the swing of things, the remainder of your shift passing uneventfully. Paying attention to some unknown clock <<=setup.getNpcName("npc_barista","nickname")>> eventually declares it time for you to return to the office, giving you a hug before sending you off with a promise that you will be back again some other day.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Finish your shift and head back to the office." 600>>]
<</if>>
</div>/*#
#desc: handjob cleanup at Coffee Shop 52
#status: FINISHED 0.7.6.0
#ignore_spell: th,n
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lick>>
<<applyExperience 'penis' 12 'almost' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'almost' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png" setup.charImage("npc_harassment","npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
Gently placing the coffee cup to one side, you lean in with a smile and go to work. Starting with <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> now-softening penis, you lick it clean, paying particular attention to pull back the foreskin in search of any remaining hint of <<if setup.getTotalValue("cum") > 10>>delicious<<elseif setup.getTotalValue("oral") > 5>>tasty<<else>>surprisingly tasty<</if>> cum.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> breathing fast, you next follow up by raising things out of the way as you begin lapping up all the wonderful sweet juices that have leaked down their thighs, finishing up with your nose buried under their testicles as you take a deep whiff of their lovely scent paired with the taste of your tongue speared deep into them resulting in what sounds like another small orgasm as their legs tremble.<br>
<br>
"@@.npc_harassment_assist;Th-thank you,@@" they whisper as you catch your breath, tempted by a second course. "@@.npc_harassment_assist;I n-n-need to deliver <<=setup.getNpcName('npc_harassment', 'formal')>> now, before it gets cold.@@"<br>
<br>
You reluctantly nod, pulling the front panel back up and making sure everything is tucked away before you lock them up safe, stroking the front of their chastity belt comfortingly before they fix their skirt and you rise to your feet.<br>
<br>
Looking up from her seat, <<=ps(setup.getNpcName('npc_harassment', 'formal'))>> eyebrow shoots up as the two of you emerge. "@@.npc_harassment;It's about time, I was beginning to think you got distracted or something!@@"<br>
<br>
You quickly assure her that everything is fine, and that <<=setup.getNpcName('npc_harassment_assist', 'first')>> was perfectly behaved. She smiles, pulling her assistant in possessively for a kiss on the forehead. "@@.npc_harassment;Of course, <<=setup.getNpcName('npc_harassment_assist', 'first')>> is always perfectly behaved around others... it's just when we are alone that they sometimes... act out.@@"<br>
<br>
"@@.npc_harassment_assist;N-no@@" <<=setup.getNpcName('npc_harassment_assist', 'first')>> whimpers as <<=setup.getNpcName('npc_harassment', 'formal')>> tussles their hair.<br>
<br>
"@@.npc_harassment;Oh, it's okay, I know you don't mean anything by it... and it is so much fun to punish you from time to time...@@"<br>
<br>
<<=setup.getNpcName('npc_harassment', 'formal')>> continues to tease her assistant as the two of them depart and you and <<=setup.getNpcName("npc_barista","nickname")>> return to work.
<<else>>
Carefully pulling the front panel of the chastity belt back into position you lock things shut and lead the way out of the storage room, <<=setup.getNpcName('npc_harassment_assist', 'first')>> taking the lead to quickly deliver the still-hot drink to <<=setup.getNpcName('npc_harassment', 'formal')>>.<br>
<br>
"@@.npc_harassment;Lovely@@" <<=setup.getNpcName('npc_harassment', 'formal')>> states, taking a long sip. "@@.npc_harassment;Thank you again for the assistance, now come along, <<=setup.getNpcName('npc_harassment_assist', 'first')>>@@" she adds, <<=setup.getNpcName('npc_harassment_assist', 'first')>> having been temporarily distracted staring at you.
<</if>>
<br><br>
The remainder of your shift passes by without further incident. Somewhat reluctantly <<=setup.getNpcName("npc_barista","nickname")>> waves as you get ready to leave.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Back to the office." 1800>>]
</div>/*#
#desc: whip offer at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _hornyxp = setup.getTotalValue("bdsm")>>
<<changeHorny _hornyxp>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/storage.png">>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
It wouldn't be the first time you have been subject to corporal punishment since you started working for <<=setup.getNpcName("npc_manager","formal")>>
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
and the thought of a whip cracking across your back already has you feeling excited.
<<else>>
and you can't help but feel a bit excited at the prospect of a little afternoon whipping.
<</if>>
<<else>>
though... the fact that you're a bit excited at the thought makes you wonder how much of a "punishment" this is... and what that says about you.
<</if>>
Leading the way into the back room, it appears that the customer is quite familiar with how this works, immediately opening a small cabinet and pulling out a short-tailed leather flogger.<br>
<br>
Giving it a few practice swishes, they instruct you to remove your top and place your hands on the far wall.<br>
<br>
[<<moveTo "event_work_first_coffee_work_whip_2" "Do as instructed." 300 "<<set $scene.accept = true>>">>]<br>
<<if setup.getTotalValue("bdsm") > 15>>
[<<moveTo "event_work_first_coffee_work_whip_2" "On second thought, maybe you don't want to be whipped for no reason." 3600 "<<set $scene.accept = false>>">>]
<<else>>
[@@.link_locked;Pass up a nice flogging? Why would you ever do that?@@]<br>
<</if>>
<<else>>
Not in the mood for a whipping you turn to <<=setup.getNpcName("npc_barista","nickname")>> who shakes her head and sighs, obviously quite confused at why you would pass up this offer. With a wide smile on her face she leads the customer into the back storeroom, a full fifteen minutes passing before the pair re-emerge. <<=setup.getNpcName("npc_barista","nickname")>> looks, if anything, even more energised, though you catch a glimpse of a veritable spiderweb of red marks peeking up from the low-cut back of her outfit. The customer seems satisfied, even as their arm looks to be hanging dead from their side.<br>
<br>
The remainder of your shift passes by without further incident. Somewhat reluctantly <<=setup.getNpcName("npc_barista","nickname")>> waves as you get ready to leave.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Finish your shift and head back to the office." 600>>]
<</if>>
</div>/*#
#desc: whipping at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $player.flags.work_coffee.lewd_accepted.whip = true>>
<<applyExperience 'bdsm' 8 'very' $SEEN_STRANGER>>
<<include "calcTopId">>
<<removeItem $scene.topId true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Removing your top, you give a final glance at the flogger and then get in position, arms spread, hands against the wall in a position reminiscent of being under arrest.<br>
<br>
The first blow of the flogger lands with a crack that echoes in the small room, and you bite your lip, your heart starting to race as the second blow almost makes you let out a gasp.<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
The wielder of the flogger seems to have a great deal of skill,
<<if setup.getTotalValue("bdsm") > 15>>
delighting
<<else>>
entertaining
<</if>>
you by ensuring each strike lands in a different spot, a flurry of blows that has you back feeling warm and your arousal fiery.
<<else>>
You would get used to the pain after the first few strikes, but the customer manages to find fresh flesh to punish with each blow, not stopping until it feels like your entire back is on fire and you are panting.
<</if>>
<br><br>
With a final hard CRACK that makes you jump, it seems the whipping is over, both your and the customer breathing a bit heavy from exertion.
<<if $player.flags.work_coffee.times_work_milk > 0>>
Stepping close behind, they reach around to grope and fiddle with the detached, but still-in-place milkers. "@@.generic_female1;Whipped cream, my favourite@@" they whisper, impatiently waiting for you to get dressed and return to your station and "fill up" their drink.
<<else>>
You hear them put the flogger back and depart as you catch your breath and put your clothes back on, returning to the counter a few minutes later to resume work.
<</if>>
<br><br>
Red trails reach up past the back of your outfit and <<=setup.getNpcName("npc_barista","nickname")>> smiles at you, running her fingers across your back making you tingle just shy of pain and you smile back, bonding over the shared experience.
<<else>>
Having second thoughts after seeing the flogger you mumble and excuse to the customer and slip out to fetch <<=setup.getNpcName("npc_barista","nickname")>>. More confused than perturbed she sends you back to work the counter and disappears into the storage room, already shrugging off her top to expose her back before the door has even closed. A full fifteen minutes passing before the pair re-emerge. <<=setup.getNpcName("npc_barista","nickname")>> looks, if anything, even more energised, though you catch a glimpse of a veritable spiderweb of red marks peeking up from the low-cut back of her outfit. The customer seems satisfied, even as their arm looks to be hanging dead from their side.
<</if>>
<br><br>
The remainder of your shift passes by without further incident. Somewhat reluctantly <<=setup.getNpcName("npc_barista","nickname")>> waves as you get ready to leave.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Back to the office." 1800 "<<if $scene.accept>><<wearItem $scene.topId true>><</if>>">>]
</div>/*#
#desc: milk offer at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/storage.png">>
<<else>>
<<createAdvBGR "./images/locations/company_cafe.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<=setup.getNpcName("npc_barista","nickname")>> smiles as you accept her offer, handing you a pair of containers and quickly putting up a "back in a few!" sign at the front of the shop before taking you by the hand and practically dragging you into the back room. With a quick pull on the front of her top, her breasts explode forth, the left one already leaking milk slightly as she moans and starts groping herself.<br>
<br>
"@@.npc_barista;Please, I'm so full, and it's so much easier not to spill with a second pair of hands...@@" She bites her lip as she looks at you, desperation in her eyes.<br>
<br>
[<<moveTo "event_work_first_coffee_work_milk_2" "Get to work." 600 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_work_first_coffee_work_milk_2" 'On second thought, maybe you should get back to the counter...' 3600 "<<set $scene.accept = false>>">>]
<<else>>
<<=setup.getNpcName("npc_barista","nickname")>> frowns, but does not contest your logic as she grabs a bottle from behind the counter and hurries into the back room. Quite some time passes before she emerges, now-full bottle in hand that she stuffs into a storage freezer. "@@.npc_barista;Whew! That's hard work! I can't wait for the auto-milker to come in!@@"<br>
<br>
You nod, soon distracted by another customer, the remainder of your shift passing uneventfully.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Finish your shift and head back to the office." 600>>]
<</if>>
</div>/*#
#desc: milking at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $player.flags.work_coffee.lewd_accepted.milk = true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
It takes a few minutes to figure out the best position for you to start working her swelled mammaries, but you soon settle in seated on the floor with her between your legs, holding the bottles ready as you work a nipple in each hand. You are surprised at how easily she spurts, even after the first few spurts that practically explode from her over-full breasts, she maintains a steady pace as you squeeze and tease. It takes some practice to optimise your movements, but you learn that she responds best to a bit of aggression...<br>
<br>
The whole time, she seems almost delirious with pleasure, moaning and gasping and begging for more. You can't help but notice that she rocks her hips against the ground to work whatever plugs she surely has inside.<br>
<br>
Your hands start to cramp as the bottle steadily fills and finally <<=setup.getNpcName("npc_barista","nickname")>> sighs and calls a stop. "@@.npc_barista;Whew! that'll have to do for now. Thanks again for the help@@" she adds as she bounces to her feet. "@@.npc_barista;It's, like, so much better with a friend! I'd, like, offer to share, but until I get up to full production my owner insists on tracking every drop!@@" She sighs. "@@.npc_barista;This'll be, like, so much easier once the auto-milkers come in.@@"<br>
<br>
After capping both bottles, she helps you to your feet, stowing her production in a fridge behind the counter before re-opening the shop and only just remembering to fix her top so that her boobs are no longer hanging out.
<<else>>
Suddenly overcome by nerves you hand her the bottles and retreat, mumbling something about really needing to make sure the shop stays open lest she get in trouble for dereliction of duty. Her forlorn moan follows after you, but you it soon turns to a groan of pleasure as she starts playing with her nipples.<br>
<br>
Opening the shop back up you return to the counter, over twenty minutes passing before <<=setup.getNpcName("npc_barista","nickname")>> staggers out, two full bottles in hand.<br>
<br>
"@@.npc_barista;Fuck, it just wouldn't stop coming! I really hope the auto-milkers come in soon...@@"<br>
<br>
You nod, thankful that she is soon distracted by the next customer.
<</if>>
The remainder of your shift passes by without further incident. Somewhat reluctantly <<=setup.getNpcName("npc_barista","nickname")>> waves as you get ready to leave.<br>
<br>
[<<moveTo "event_work_coffee_work_end" "Back to the office." 1800>>]
</div>/*#
#desc: milking at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'maid_latex_pink'>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_barista","nickname")>> beams with pride as she finishes her big reveal. "@@.npc_barista;Ta-da! I thought, like, you might want another colour option, plus this way people won't end up confusing us when we're working together!@@"<br>
<br>
You glance at <<=setup.getNpcName("npc_barista","nickname")>> with her "almost exploding out" boobs and her perpetually enthusiastic bimbo smile, wondering how she could be "mistaken" for anyone but herself but you put that aside and thank her for the "thoughtful" present.<br>
<br>
"@@.npc_barista;Oh boy, well, girl! I just knew you'd love it!@@" There's a chime as someone summons service to the counter "@@.npc_barista;Oops! Back to work for me! I'll see you around, and maybe next time you'll be wearing that sexy thing! I can't even think which you look better in, the classic sexy black or this new fuck-me pink, and both so shiny! Oh I'm so wet just thinking about it! Latex is the best!@@"<br>
<br>
She bounces away leaving you to gather up your "prize" and head back to the office. <<=setup.getNpcName("npc_manager","formal")>> seems busy with a call of some sort, not there to greet you as you return to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Resume working." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: get equipped for a shift of being milked at Coffee Shop 52
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.style = "">>
<<include "latexMaidDress">>
<<addItem "breast_milker">>
<<wearItem "breast_milker" true>>
<<set $scene.chastityWorn = setup.checkItemTypeWorn("cage")>>
<<set $scene.removeCage = false>>
<<if $fetish.penis_milking && $player.body_ref.penis && (!$currentTasks.hasOwnProperty('task_chastity_trial') || $currentTasks.task_chastity_trial.finished) && !($player.body_ref.balls && $player.sec_style.submission.testicle_pain && $npc_manager.anger > $npc_manager.affection)>>
<<set $scene.removeCage = true>>
<<include "removeCage_retractSissyomatic">>
<<addItem "penis_milker">>
<<wearItem "penis_milker" true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<if $scene.latexMaid>>
<<=setup.getNpcName('npc_barista', 'nickname')>> greets you with a smile, your breast cups<<if $player.body_ref.penis>> and penis milker<</if>> already laid out and ready.
<<else>>
<<=setup.getNpcName('npc_barista', 'nickname')>> greets you with a cheery smile and starts setting out your breast<<if $player.body_ref.penis>> and penis<</if>> milkers as she waits for you to get changed into a fetishistic "uniform" to match her own.
<</if>>
<br><br>
<<if $fetish.penis_milking && $player.body_ref.penis>>
<<if $currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks.task_chastity_trial.finished>>
You explain the chastity trial situation to <<=setup.getNpcName('npc_barista', 'nickname')>> and she moves on, leaving you locked.<br>
<br>
<<if State.hasPlayed("theme_panties_barista_ask_1")>>
<<if setup.checkItemOwned("panties_barista")>>
[@@.link_locked;You already earned a pair of <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> panties.@@]<br>
<<else>>
[<<moveTo "event_panties_barista_work_1" "Ask about earning a pair of her panties?" 180 "<<set $scene.fromMilking=true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_coffee_job_milked_3" "Start your shift." 3600>>]
<<else>>
Humming a cheery tune, she soon has the breast cups attached and sucking away before motioning for you to hold up your skirt so she can attend to the rest.<br>
<br>
<<if $scene.chastityWorn>>
As if on cue your <<=setup.getNpcName('npc_manager', 'title')>> walks through the door, chastity key in hand. Handing it off to <<=setup.getNpcName('npc_barista', 'nickname')>>, <<=setup.getNpcName('npc_manager', 'formal')>> supervises as the enthusiastic bimbo gently removes your chastity device and reaches for the penis milking cylinder.<br>
<br>
<<if $player.body_ref.balls && $player.sec_style.submission.testicle_pain && $npc_manager.anger > $npc_manager.affection>>
[<<moveTo "event_coffee_job_milked_2" "Looks like you don't get a choice this time as to whether you'll be wearing the testicle attachment..." 60 "<<set $scene.style ='forced'>>">>]
<<else>>
You gasp as the cylinder sucks into position and <<=setup.getNpcName('npc_manager', 'formal')>> leaves with a nod.<br>
<br>
<<if State.hasPlayed("theme_panties_barista_ask_1")>>
<<if setup.checkItemOwned("panties_barista")>>
[@@.link_locked;You already earned a pair of <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> panties.@@]<br>
<<else>>
[<<moveTo "event_panties_barista_work_1" 'Ask about earning a pair of <<=ps(setup.getNpcName("npc_barista", "nickname"))>> panties?' 180 "<<set $scene.fromMilking=true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_coffee_job_milked_3" "Start your shift." 3600>>]
<</if>>
<<else>>
You gasp as the cylinder sucks into position, trying not to think about how quickly you've become accustomed to such bizarre working conditions.<br>
<br>
<<if State.hasPlayed("theme_panties_barista_ask_1")>>
<<if setup.checkItemOwned("panties_barista")>>
[@@.link_locked;You already earned a pair of <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> panties.@@]<br>
<<else>>
[<<moveTo "event_panties_barista_work_1" "Ask about earning a pair of her panties?" 180 "<<set $scene.fromMilking=true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_coffee_job_milked_3" "Start your shift." 3600>>]
<</if>>
<</if>>
<<elseif $player.body_ref.penis && $player.body_ref.balls>>
<<if $currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks.task_chastity_trial.finished>>
You explain the chastity trial situation to <<=setup.getNpcName('npc_barista', 'nickname')>> and she moves on, leaving you locked.<br>
<br>
<<if State.hasPlayed("theme_panties_barista_ask_1")>>
<<if setup.checkItemOwned("panties_barista")>>
[@@.link_locked;You already earned a pair of <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> panties.@@]<br>
<<else>>
[<<moveTo "event_panties_barista_work_1" "Ask about earning a pair of her panties?" 180 "<<set $scene.fromMilking=true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_coffee_job_milked_3" "Start your shift." 3600>>]
<<elseif $npc_manager.anger > $npc_manager.affection>>
"@@.npc_manager;Ah, ah!@@" <<=setup.getNpcName('npc_manager', 'formal')>> states, putting things on pause. "@@.npc_manager;<<=$player.first_name>> has been quite the naughty assistant of late, I think she could use the production enhancer, see if some sustained electro-therapy will quell this rebellious streak.@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'nickname')>> looks up at you with a disappointed frown, quickly stretching the ball-stretch-and-shocker onto the base of the milking tube.<br>
<br>
[<<moveTo "event_coffee_job_milked_2" "Looks like you don't get a choice this time as to whether you'll be wearing the testicle attachment..." 60 "<<set $scene.style ='forced'>>">>]
<<else>>
As she turns back towards you, your gaze passes over the production-enhancing testicular torture device...<br>
<br>
[<<moveTo "event_coffee_job_milked_2" 'Tell <<=setup.getNpcName("npc_barista", "nickname")>> you would like to wear the testicle attachment today.' 60 "<<set $scene.style ='voluntary'>>">>]<br>
[<<moveTo "event_coffee_job_milked_2" 'Ask <<=setup.getNpcName("npc_manager", "formal")>> if she thinks you should wear the testicle attachment today.' 60 "<<set $scene.style ='obedient'>>">>]<br>
[<<moveTo "event_coffee_job_milked_2" "Ask to be paid more in exchange for wearing the testicle attachment." 60 "<<set $scene.style ='money'>>">>]<br>
[<<moveTo "event_coffee_job_milked_3" "Decline the testicle attachment and start working." 60 "<<set $scene.style =''>>">>]
<</if>>
<<else>>
Humming a cheery tune, she soon has the breast cups attached and sucking away. "@@.npc_manager;There ya go! Doesn't it feel good to be back on the job?@@" She giggles and squirts some milk into her own device to be quickly slurped away.<br>
<br>
<<if State.hasPlayed("theme_panties_barista_ask_1")>>
<<if setup.checkItemOwned("panties_barista")>>
[@@.link_locked;You already earned a pair of <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> panties.@@]<br>
<<else>>
[<<moveTo "event_panties_barista_work_1" "Ask about earning a pair of her panties?" 180 "<<set $scene.fromMilking=true>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_coffee_job_milked_3" "Start your shift." 3600>>]
<</if>>
</div>/*#
#desc: equipped with testicular torture device for shift at coffee shop
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = $player.sec_style.submission.testicle_pain == "">>
<<if $scene.first>>
<<switch $scene.style>>
<<case 'voluntary'>>
<<set $player.sec_style.submission.testicle_pain = "voluntary">>
<<case 'obedient'>>
<<set $player.sec_style.submission.testicle_pain = "obedient">>
<<case 'money'>>
<<set $player.sec_style.submission.testicle_pain = "money">>
<<case 'forced'>>
<<set $player.sec_style.submission.testicle_pain = "forced">>
<</switch>>
<</if>>
<<if $scene.style != 'forced' && !setup.hasThreshold('bdsm', 'manager_upbringing', 'testiclezap')>>
<<setThreshold 'bdsm' 'manager_upbringing' 'testiclezap'>>
<</if>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<addItem "penis_milker">>
<<wearItem "penis_milker" true>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
<<switch $scene.style>>
<<case "voluntary">>
<<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_barista', 'nickname')>> both look surprised at your request to wear the electric "production stimulator." <br>
<br>
"@@.npc_barista;Like, are you sure? I mean, I don't have any personal experience but I hear it's kind of painful...@@"<br>
<br>
Your mind already made up you nod. Looking over you blush as <<=setup.getNpcName('npc_manager', 'formal')>> beams with pride.<br>
<br>
Kneeling back down <<=setup.getNpcName('npc_barista', 'nickname')>> unhooks the suction tubes connected to your milker just long enough to stretch the strap of the testicle device over your tube, stretching it around your testicles and then letting it squeeze tight, pulling your balls down and separating them into private rubber prisons.<br>
<br>
A small battery pack is plugged into the wires and strapped to your thigh, activating a moment later with a dual shock that has you gasping in pain.<br>
<br>
"@@.npc_manager;You alright?@@" She asks with genuine concern.<br>
<br>
You put on a brave smile and nod<<if $player.flags.mealplan.hormones != "">>, after all, you reason, your balls deserve the punishment for flooding you with icky testosterone for so many years<<else>> while putting on a brave face<</if>>.<br>
<br>
"@@.npc_barista;Wow, you're, like, such a dedicated worker! But it's not all fun and games. We've got customers to serve!@@"<br>
<br>
Standing up, she flicks the switch for the milking machine.
<<case "forced">>
With a nod <<=setup.getNpcName('npc_barista', 'nickname')>> stretches the testicle device over the clear shaft that is about to encase your <<getWordMyPenis>>, the combination of the oversized cylinder and the dangling oversized balls comically grotesque.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> watches intently as <<=setup.getNpcName('npc_barista', 'nickname')>> kneels down and guides your <<if $player.horny > 50>>already hard<<else>>half-hard<</if>> member into the tube before stretching the testicle device around your dangling balls.<br>
<br>
Cinching the attached harness around your waist spreads out the weight of the contraption, a pair of straps running down between your legs and over your butt cheeks to spread them provocatively.<br>
<br>
<<if setup.checkItemTypeWorn('plug')>>
Discovering the <<=setup.getItemTypeName('plug')>> in your rear <<=setup.getNpcName('npc_barista', 'nickname')>>, gives it a little wiggle. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows, but <<=setup.getNpcName('npc_barista', 'nickname')>> just flashes an innocent smile as she rises to her feet...<br>
<br>
<</if>>
A small battery pack is strapped to your thigh and connected to your testicle cosies, a quick "system test" having you gasp in pain as your stretched and sensitive jewels light up in agony.<br>
<br>
You whimper as <<=setup.getNpcName('npc_barista', 'nickname')>> walks over to remove the "out of service" sign on the machine from whence your penile milking tubes lead and hits the "on" button.
<<case "money">>
You propose higher pay in exchange for wearing the evil looking testicle torture device.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;That seems reasonable, given that you will be producing more, hook her up!@@"<br>
<br>
<<printThought "Wait... is this such a good idea? I hope I don't end up regretting my greed...">><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> watches intently as <<=setup.getNpcName('npc_barista', 'nickname')>> kneels down and guides your <<if $player.horny > 50>>already hard<<else>>half-hard<</if>> member into the tube before stretching the testicle device around your dangling balls.<br>
<br>
Cinching the attached harness around your waist spreads out the weight of the contraption, a pair of straps running down between your legs and over your butt cheeks to spread them provocatively.<br>
<br>
<<if setup.checkItemTypeWorn('plug')>>
Discovering the <<=setup.getItemTypeName('plug')>> in your rear <<=setup.getNpcName('npc_barista', 'nickname')>>, gives it a little wiggle. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows, but <<=setup.getNpcName('npc_barista', 'nickname')>> just flashes an innocent smile as she rises to her feet...<br>
<br>
<</if>>
A small battery pack is strapped to your thigh and connected to your testicle cosies, a quick "system test" having you gasp in pain as your stretched and sensitive jewels light up in agony.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smirks at your self-inflicted discomfort. "@@.npc_manager;Well, well. You look all set for a nice... productive day.@@"<br>
<br>
You whimper in pain as <<=setup.getNpcName('npc_barista', 'nickname')>> walks over to remove the "out of service" sign on the machine from whence your penile milking tubes lead and hits the "on" button.
<<case "obedient">>
Thinking for a moment, you turn towards <<=setup.getNpcName('npc_manager', 'formal')>> and softly ask if she thinks it would be better for you to use the production enhancing add-on.<br>
<br>
She beams with pride so brightly you fear you might go blind, smiling wide and nodding. "@@.npc_manager;Oh you are just the best! While I would extend my sympathy for the pain you would be forced to endure, I absolutely think that having your cute balls all stretched and squeezed and shocked is an excellent idea.@@"<br>
<br>
Blushing at the compliment, you lift your skirt and nod for <<=setup.getNpcName('npc_barista', 'nickname')>> to get you fully equipped.<br>
<br>
Stretching things over your cylindrical milker and sack the ball cozy tightens into position, separating your balls and pulling them down. Strapping a battery pack to your thigh she plugs in the wires and gives you a test shock.<br>
<br>
You gasp in pain as electricity courses through your balls and <<=setup.getNpcName('npc_manager', 'formal')>> looks on with concern. "@@.npc_manager;Are you alright?@@"<br>
<br>
Putting on a brave smile, you nod, noting that your naughty testicles deserve the punishment for all those years pumping you full of icky testosterone.<br>
<br>
For a moment you're afraid <<=setup.getNpcName('npc_manager', 'formal')>> might cut your workday off before it even begins, the hungering lust in her eyes almost making you swoon. The moment is interrupted by <<=setup.getNpcName('npc_barista', 'nickname')>> turning on the milking device as she puts the "out of order" sign to one side.
<<case "">>
You remain silent as <<=setup.getNpcName('npc_barista', 'nickname')>> packages things up and then walks over to remove the "out of service" sign on the machine from whence your penile milking tubes lead and hits the "on" button.
<<default>>
ERROR: unknown milking style: <<=$scene.style>>
<</switch>>
<<else>>
<<switch $scene.style>>
<<case "voluntary">>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles as you volunteer to wear the electric "production stimulator."
<<case "forced">>
With a stern look <<=setup.getNpcName('npc_manager', 'formal')>> notes her recent frustration and indicates for <<=setup.getNpcName('npc_barista', 'nickname')>> to equip you with the painful electric "production stimulators." You try to object, but <<=setup.getNpcName('npc_manager', 'formal')>> cuts you off with a glare and you fall silent lest she prescribe an even worse punishment.
<<case "money">>
<<=setup.getNpcName('npc_manager', 'formal')>> adopts a wry smile at your request, but nods in approval. You look down nervously as <<=setup.getNpcName('npc_barista', 'nickname')>> fetches and begins equipping the painful electric "production stimulator" you wonder if your greed has gotten the better of you.
<<case "obedient">>
<<=setup.getNpcName('npc_manager', 'formal')>> beams with pride at your request for the electric "production stimulator" attachment. "@@.npc_manager;My, my, aren't you feeling industrious! Such courage and dedication, I love it!@@"
<<default>>
ERROR: unknown milking style: <<=$scene.style>>
<</switch>>
<br><br>
Under your <<=ps(setup.getNpcName('npc_manager', 'title'))>> watchful gaze you are quickly equipped, you balls soon pulled from your body inside their private rubbery prison. <<=setup.getNpcName('npc_barista', 'nickname')>> flashes you an encouraging grin and activates everything.
<</if>>
<br><br>
You stagger as the milking pulsing suction commences. Even having experienced it before it is still quite an intense, distracting sensation and you know it will only get moreso as the hours roll on.<br>
<br>
"@@.npc_manager;Well, have a good day!@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a wink. "@@.npc_manager;I'll see you at the end of your shift — try not to get into too much trouble!@@"<br>
<br>
"@@.npc_barista;D'aww, we'll do our best!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> turns back to you as your <<=setup.getNpcName('npc_manager', 'title')>> departs. "@@.npc_barista;Cum on, now, let's get to work!@@"<br>
<br>
<<set _themeId = setup.findThemeId('npc_barista', 'other', 'theme_panties_barista_ask')>>
<<if -1 != _themeId && !$npc_admin.themes.other[_themeId].repeatable>>
<<if setup.checkItemOwned("panties_barista")>>
[@@.link_locked;You already earned a pair of <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> panties.@@]<br>
<<else>>
[<<moveTo "event_panties_barista_work_1" "Ask about earning a pair of her panties?" 180 "<<set $scene.fromMilking=true>>">>]<br>
<</if>>
<</if>>
<<if $npc_barista.stage == 4>>
[<<moveTo "event_coffee_job_milked_3" "Start your shift." 1800 "<<set $scene.baristaOption=false>>">>]
<<else>>
[<<moveTo "event_coffee_job_milked_3" "Start your shift." 3600>>]
<</if>>
</div>/*#
#desc: work shift at coffee shop w/milker
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.event = ['none', 'none', 'whipped', 'blowjob', 'handjob'].random()>>
<<if $scene.event == 'none' && $player.flags.work_coffee.coffee_skill < 7>>
<<set $player.flags.work_coffee.coffee_skill+=1>>
<</if>>
<<if $scene.style != "">>
<<applyExperience 'bdsm' 18 'little' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
<<if $npc_barista.stage == 4 && !$scene.baristaOption>>
During a brief lull in customers you consider your current challenge of getting <<=setup.getNpcName("npc_barista","nickname")>> locked in chastity.<br>
<br>
<<if $npc_barista.flags.ai_help>>
<<if $player.body_ref.penis>>
<<printThought "<<=setup.getNpcName('npc_ai', 'first')>> promised to run interference, I think this is my shot...">>
<<else>>
<<printThought "<<=setup.getNpcName('npc_ai', 'first')>> promised to run interference, I wonder if a spontaneous orgy would be enough to get <<=setup.getNpcName('npc_barista', 'first')>> in trouble?.">>
<</if>>
<br><br>
<<else>>
<<if $player.body_ref.penis>>
<<printThought "Hmm, this penis milker isn't locked on... and her fucking another sub without permission should be good for punishment, right?">><br>
<br>
<</if>>
<</if>>
<<if setup.checkItemInInventory('aphrodisiac_blend')>>
[<<moveTo 'event_milking_misbehave_1_alt' 'Start dosing customers with aphrodisiacs...' 600 "<<set $scene.drug=true>>">>]<br>
<<elseif setup.checkItemOwned('aphrodisiac_blend')>>
<<printThought "Dammit, I mixed up that special aphrodisiac blend... but I forgot it at home!">><br>
<br>
<<else>>
<<printThought "Hmm... I wonder if <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> lab would have some sort of giga-aphrodisiac?">><br>
<br>
<</if>>
<<if $player.body_ref.penis && (!setup.checkItemTypeWorn('cage') || setup.isItemEquipped('penis_milker'))>>
<<if setup.checkItemInInventory('drug_dick') || setup.checkItemInInventory('drug_dick_plus') >>
[<<moveTo 'event_milking_misbehave_1' 'Pop a dose of <<=setup.getItemName("drug_dick")>>.' 600 "<<set $scene.drug=true>>">>]<br>
<<else>>
[<<moveTo 'event_milking_misbehave_1' 'Be naughty.' 600 "<<set $scene.drug=false>>">>]<br>
<</if>>
<<elseif $player.body_ref.penis && setup.checkItemTypeWorn('cage')>>
[@@.link_locked;Your chastity device limits your options.@@]<br>
<</if>>
[<<moveTo "event_coffee_job_milked_3" "Just work your shift." 1800 "<<set $scene.baristaOption=true>>">>]
<<elseif $player.flags.porn.genre.milking && $player.flags.porn.genre.bondage && $player.body.breastsize[0] >= 10 && $player.body_ref.milkProduction >= 2 && !State.hasPlayed("event_porn_hucow_invite_1")>>
You're working the cafe when who should enter but <<=setup.getNpcName("npc_cook","first")>>.<br>
<br>
<<His npc_cook>> <<if $npc_cook.fem>>skirt<<else>>kilt<</if>> twitches slightly at the sight of you and <<he npc_cook>> approaches the counter.<br>
<br>
[<<moveTo 'event_porn_hucow_invite_1' 'Order up!' 180>>]
<<elseif (($player.body_ref.cumProduction > 0 && $fetish.penis_milking && $player.timebased.milking.cream_supply < 25) || ($player.timebased.milking.milk_supply < 10 && $player.body_ref.milkProduction > 0)) && (-1 == setup.findThemeId('npc_psychiatrist', 'npc_barista', 'theme_psychiatrist_barista_7') || random(10) == 1)>>
You try to focus on your work, but it is soon clear that something is wrong.<br>
<br>
Though they suck and stimulate same as always, the milking devices draw but the faintest trickle of production out of your body.<br>
<br>
Customers noticing the short supply it all comes to a head when one orders a "@@.generic_female1;Double, double shot of <<if $player.body_ref.cumProduction > 0>><<if $fetish.sissy>>sissy<<else>>special<</if>> cream<<else>><<if $fetish.sissy>>sissy <</if>>breast milk<</if>>@@" and the machine comes up totally dry.<br>
<br>
A large frown on her face, the woman snorts in disgust. "@@.generic_female1;Well, this is just inexcusable, I demand to speak to your manager about this pathetic deficit of supply! I can see right now that you are hardly producing anything!@@"<br>
<br>
[<<moveTo "event_coffee_job_milked_dry_1" "Try to placate the customer." 60>>]
<<else>>
<<if $player.body_ref.milkProduction > 0>>
<<if !$fetish.penis_milking>>
By mid-shift your nipples feel sensitive and your breasts drained, but the machine carries on, seemingly determined to force even more production for it to harvest.
<<elseif $scene.style == "">>
Milked above and below, you commence another shift, barely able to keep up with demand for your "special <<if $fetish.sissy>>sissy <</if>>sauce."
<<else>>
Milked <<if $player.body_ref.penis>> above and below<<else>>hard<</if>>, you endure the <<if $player.body_ref.balls>>constant torture of electric shocks running through your testicles; though, at least, they seem to do their job as you are able to keep up with demand for your "special <<if $fetish.sissy>>sissy <</if>>sauce." <<else>>constant suction and shocks as the breast cups pump away vigorously.<</if>>
<</if>>
<<else>>
<<if !$fetish.penis_milking>>
Your dry breasts are milked hard, midway through the shift you wonder if producing milk would make things less onerous, as each mechanical suck becomes almost painful for your sensitised, dry nips.
<<elseif $scene.style == "">>
Your dry breasts nonetheless tortured constantly by the milking devices, you just try to survive your shift, drawing the occasional comment as to your lack of production, especially since you are barely able to keep up with demand for your "special <<if $fetish.sissy>>sissy <</if>>sauce."
<<else>>
Your dry breasts nonetheless tortured constantly by the milking devices, you survive another shift<<if $player.body_ref.penis && $player.body_ref.cumProduction>0>>, somewhat making up for it by offering your "special <<if $fetish.sissy>>sissy <</if>>sauce," the painful shocks punishing your testicles doing the trick to keep you quite productive "down there." <<else>>.<</if>>
<</if>>
<</if>>
<br><br>
<<switch $scene.event>>
<<case 'none'>>
<<if $player.flags.work_coffee.coffee_skill >= 10>>
While relatively relaxing, you have no more to learn about coffee.
<<elseif $player.flags.work_coffee.coffee_skill > 7>>
While relatively relaxing, you have no more to learn about coffee from such indirect experience.
<<else>>
While discharging your duties you manage to learn a bit about coffee by listening to orders and watching the machine.
<</if>>
<br><br>
[<<moveTo "event_coffee_job_milked_4" "Return to your office." 300>>]
<<case 'whipped'>>
You're working away through a steady stream of customers when one approaches the counter with a slight leer and asks for the "special whipped cream." <<=setup.getNpcName("npc_barista","nickname")>> beams at the customer.<br>
<br>
"@@.npc_barista;Of course, we are always happy to feel the lash of our customers! You wanna take this one <<=$player.first_name>>?@@"<br>
<br>
<<if setup.getTotalValue("bdsm") > 5>>
[<<moveTo "event_work_first_coffee_work_whip_1" "Go with the customer into the back room for a flogging." 120 "<<set $scene.accept = true>>">>]<br>
<<else>>
[@@.link_locked;Getting flogged for literally no reason does not sound like your cup of tea.@@]<br>
<</if>>
[<<moveTo "event_work_first_coffee_work_whip_1" 'Ask <<=setup.getNpcName("npc_barista","nickname")>> if she would like to take this order.' 3600 "<<set $scene.accept = false>>">>]
<<case 'handjob'>>
You are working away alongside <<=setup.getNpcName("npc_barista","nickname")>> when <<=setup.getNpcName('npc_harassment', 'formal')>> and her adorable assistant <<=setup.getNpcName('npc_harassment_assist', 'first')>> walk up to the counter and place an order.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> blushes and makes eyes at you the whole time you are "working" as <<=setup.getNpcName('npc_harassment', 'formal')>> orders her coffee "black" only to smile as her assistant picks it up.<br>
<br>
"@@.npc_harassment;Not that you lovely maids are not certainly delicious but... I would greatly appreciate some assistance in drawing forth my preferred cumdiment. You see <<=setup.getNpcName('npc_harassment_assist', 'first')>> was quite naughty this morning and thus has been disallowed from touching themselves. Do you think you could provide some assistance so that my drink may be... seasoned properly?@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> bites their lip and bashfully looks away at this comment.<br>
<br>
<<printThought "This is going to involve giving a handjob... isn't it?">><br>
<br>
[<<moveTo "event_work_first_coffee_work_hj_1" '"Assist" <<=setup.getNpcName("npc_harassment_assist", "first")>> in the back room.' 120 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_work_first_coffee_work_hj_1" 'Ask <<=setup.getNpcName("npc_barista","nickname")>> to handle it.' 3600 "<<set $scene.accept = false>>">>]
<<case 'blowjob'>>
Your shift working alongside <<=setup.getNpcName("npc_barista","nickname")>> goes along as well as can be expected, machines making coffee and pumping away at the two of you until you serve up a particularly jovial customer who knocks back a double shot of espresso — with extra cream — with a smile before pausing, pawing at <<his>> pockets.<br>
<br>
"@@.generic_male1;Shoot, I forgot my wallet back and my desk and a drink that invigorating served up by such a lovely girl really deserves a tip.@@"<br>
<br>
You try to explain that it's quite alright — the store, after all, being a perk provided by the company, but <<he>> is quite insistent.<br>
<br>
"@@.generic_male1;Please, I know how HARD you girls work@@" <<he>> notes, gesturing towards the machines sucking away at the two of you "@@.generic_male1;And it would be my pleasure to give you a nice reward for your efforts.@@"<br>
<br>
"@@.npc_barista;Go on!@@" <<=setup.getNpcName("npc_barista","nickname")>> says with a smile. "@@.npc_barista;You deserve it and this is one of the best parts of the job!@@"<br>
<br>
You can hear the enthusiasm in her voice and a glance at the bulge in the <<mans>> trousers as <<he>> gestures towards the private storage room gives you a sudden idea of exactly what sort of "treat" <<hes>> planning on giving you...<br>
<br>
[<<moveTo "event_work_first_coffee_work_bj_1" "Go with <<him>>." 120 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_work_first_coffee_work_bj_1" "Politely decline <<his>> offer." 3600 "<<set $scene.accept = false>>">>]
<<default>>
ERROR: unexpected scene.event <<=$scene.event>>
<</switch>>
<</if>>
</div>/*#
#desc: Finish a normal milking shift
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_coffee.times_work_milk += 1>>
<<set $player.flags.work_coffee.times_worked += 1>>
<<set $player.timebased.milking.milk_supply = 0>>
<<if $scene.style == "money">>
<<addCredits 20>>
<</if>>
<<if setup.isItemEquipped('breast_milker')>>
<<removeItem "breast_milker" true>>
<<deleteItem "breast_milker">>
<</if>>
<<if setup.isItemEquipped('penis_milker')>>
<<removeItem "penis_milker" true>>
<<deleteItem "penis_milker">>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
The end of your shift approaches as you feel about ready to pass out in exhaustion. As always, you are amazed by <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> continued chipper demeanour, her milk production never wavering throughout the day, or even now, as she de-activates the machines sucking away at your parched body<<if $scene.workMilker>> before locking you back into your chastity device<</if>>.<br>
<br>
<<if $scene.style == "money">>
With a smile <<=setup.getNpcName('npc_barista', 'nickname')>> hands you some credits. "@@.npc_barista;That's for your extra effort, and the resulting production! Thanks for doing your part!@@"
<<else>>
"@@.npc_barista;Seeya around!@@" She says with a smile, pulling on and plugging herself into her backpack milker.
<</if>>
<br><br>
[<<moveTo "event_work_coffee_work_end_noevent" 'Return to your desk.' 60>>]
</div>/*#
#desc: try to return to old job, but change your mind
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<if $now.getUTCHours() <= 17 && $now.getUTCDay() != 5 && ($npc_manager.stage <= 4 && $npc_manager.stage >= 2 && setup.analyzeWornTags(['female','male','unisex']) != 'male')>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImageGeneric("cds_dude")>>
<<else>>
<<createAdvBGR "./images/locations/cds_office.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.stage>>
<<case 1>>
As the elevator door opens onto Cloud Data Service you realise you have nothing to do here. Sure you worked here for 3 years but that was before... you shake your head as you imagine some of your old coworkers are probably quite cross at you for the mistakes that lead to your effort, to say nothing of your CURRENT employer likely taking a dim view to your hanging around in the wrong office.<br>
<br>
<<case 2 3>>
You step off the elevator onto your old floor.
<<if $now.getUTCHours() >= 17>>
Unfortunately there isn't really anyone around. Everyone is either busy in meetings or has already head home due to working one of the earlier shifts to coordinate with overseas customers.<br>
<br>
<<elseif $now.getUTCDay() == 5>>
It looks like everyone is either in meetings or took off for an early weekend, you see nothing to do.<br>
<br>
<<elseif $npc_manager.stage >= 4 && $now.getUTCHours() >= 7 && $now.getUTCMinutes() >= 40>>
The elevator doors open on your old workplace, and you're reminded of how far you've come from mere single-digit floors.<br>
<br>
<<printThought "It's getting a bit close to the start of my shift... best I just head up to see <<=setup.getNpcName('npc_manager','formal')>> lest I end up in hot water... again. If I want to visit old friends I should try to get in earlier.">><br>
<br>
<<else>>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'male'>>
You look around and feel suddenly VERY nervous — what if someone recognises you? You didn't exactly leave your old job under the best of circumstances... nervously you duck back into the elevator, your reflection showing the "old" you... the masculine dressed you...<br>
<br>
<<printThought "<<=setup.getNpcName('npc_manager','formal')>> isn't going to be happy about this outfit...">>
<<case 'unisex'>>
You step off the elevator and another employee stops and looks at you with slight curiosity.<br>
<br>
<<if $npc_admin.flags.rare_meeting.code_red>>
"@@.generic_male1;<<if $player.sec_style.body.name == "">><<=$player.first_name>><<else>><<=$player.original_first_name>><</if>>? Is that you?@@" Your heart is suddenly pounding in your chest, sure you didn't know <<him>> well but... have you really changed so much that <<he>> doesn't recognise you? You worked in the same office for almost three years!<br>
<br>
"@@.pc;No, um, uh... wrong floor, sorry!@@" You blurt out before hopping back into the elevator.
<<else>>
"@@.generic_male1;Heh, for a second there I thought you were a guy that used to work here... anyway, you're looking a bit confused, Miss, can I help direct you somewhere?@@" Your heart is suddenly pounding in your chest, sure you didn't know <<him>> well but... have you really changed so much that <<he>> doesn't recognise you? You worked in the same office for almost three years!<br>
<br>
<<if $scene.visitAdmin>>
[@@.link_locked;You already visited <<=setup.getNpcName("npc_admin","first")>> today.@@]<br>
<<else>>
[<<moveTo "event_dataservice_admin_1" 'Say you are here to see <<=setup.getNpcName("npc_admin","formal")>>.' 180 "<<set $scene.visitAdmin = true>>">>]<br>
<</if>>
<<if $scene.visitTechnician>>
[@@.link_locked;You already visited <<=setup.getNpcName("npc_technician","first")>> today.@@]<br>
<<else>>
[<<moveTo "event_dataservice_technician_1" 'Say you are here to see <<=setup.getNpcName("npc_technician","other")>>.' 180 "<<set $scene.visitTechnician = true>>">>]<br>
<</if>>
<</if>>
<<case 'female'>>
You step of the elevator and almost bump into a <<guy>> buried in <<his>> phone. <<He>> looks up and you realise you recognise <<him>>. You're blanking on <<his>> name but you definitely worked together for a few years and saw <<him>> in the lunchroom from time to time. <<He>> looks you over without a trace of recognition.<br>
<br>
"@@.generic_male1;Hey, Miss, you look a little lost, can I help?@@"<br>
<br>
<<printThought "Wow, <<he>> doesn't recognise me at all...">><br>
<br>
<<if $scene.visitAdmin>>
[@@.link_locked;You already visited <<=setup.getNpcName("npc_admin","first")>> today.@@]<br>
<<else>>
[<<moveTo "event_dataservice_admin_1" 'Say you are here to see <<=setup.getNpcName("npc_admin","formal")>>.' 180 "<<set $scene.visitAdmin = true>>">>]<br>
<</if>>
<<if $scene.visitTechnician>>
[@@.link_locked;You already visited <<=setup.getNpcName("npc_technician","first")>> today.@@]<br>
<<else>>
[<<moveTo "event_dataservice_technician_1" 'Say you are here to see <<=setup.getNpcName("npc_technician","other")>>.' 180 "<<set $scene.visitTechnician = true>>">>]<br>
<</if>>
<<default>>
ERROR: unexpected clothing tags! <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<</if>>
<<case 4>>
<<if $now.getUTCHours() >= 17>>
Unfortunately there isn't really anyone around. Everyone is either busy in meetings or has already head home due to working one of the earlier shifts to coordinate with overseas customers.<br>
<br>
<<elseif $now.getUTCDay() == 5>>
It looks like everyone is either in meetings or took off for an early weekend, you see nothing to do.<br>
<br>
<<else>>
You step off the elevator on to your old floor. The place looks almost alien and unfamiliar; it would seem the "merger" brought with it a remodel. Still, from the look of things, it's still in business. It's just that it looks almost as different from when you worked here as you do.<br>
<br>
<<printThought "Guess it's true what they say about not being able to go home again...">><br>
<br>
A <<man>> you don't recognise notices you standing outside the elevator.<br>
<br>
"@@.generic_male1;Hello, Miss- can I help you with something?@@"<br>
<br>
<<if $scene.visitTechnician>>
[@@.link_locked;You already visited <<=setup.getNpcName("npc_technician","first")>> today.@@]<br>
<<else>>
[<<moveTo "event_dataservice_technician_1" 'Say you are here to see <<=setup.getNpcName("npc_technician","other")>>.' 180 "<<set $scene.visitTechnician = true>>">>]<br>
<</if>>
<</if>>
<<case 5>>
The elevator stops on the ninth floor, where you worked so long ago, back when Cloud Data Service was its own company and everything was so very, very different... now all that's left is empty cubicles, staff all having been moved upstairs and remodeling yet to occur.<br>
<br>
<<printThought "There is nothing for me in this place.">><br>
<br>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
[<<moveTo "company_lobby" "Return to the Lobby." 120>>]
</div><<if !$scene.visitAdmin && !$npc_admin.flags.promotion>>
[<<moveTo "event_dataservice_admin_1" 'Visit <<=setup.getNpcName("npc_admin","first")>>.' 600 "<<set $scene.visitAdmin=true>>">>]<br>
<</if>>
<<if !$scene.visitTechnician>>
[<<moveTo "event_dataservice_technician_1" 'Visit <<=setup.getNpcName("npc_technician","first")>>.' 600 "<<set $scene.visitTechnician=true>>">>]<br>
<</if>>
<<if $scene.visitAdmin && $scene.visitTechnician>>
[@@.link_locked;You have no one else to visit today.@@]<br>
<</if>>
[<<moveTo "company_lobby" "Return to the Lobby." 120>>]/*#
#desc: try to meet admin on old floor
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.event = true>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImageGeneric("cds_dude")>>
<div id="invframe" class="scrolltext">
You ask about meeting <<=setup.getNpcName("npc_admin","other")>> and the <<man>> you're talking to smiles.<br>
<br>
<<if $npc_admin.flags.promotion>>
"@@.generic_male1;You mean <<=setup.getNpcName("npc_admin","first")>>? Sorry, Miss, <<he npc_admin>> got promoted upstairs. <<He npc_admin>> doesn't work on this floor anymore.@@"<br>
<br>
You apologise for wasting the <<mans>> time and <<he>> walks away as you head back to the elevator.<br>
<br>
<<include "dataServiceVisit">>
<<else>>
"@@.generic_male1;You mean <<=setup.getNpcName("npc_admin","first")>>? Yeah, <<hes npc_admin>> got an office that way — all the way down the hall, on the left.@@"<br>
<br>
You thank the <<man>> for the directions and hurry on your way, keenly aware that <<his>> gaze lingers on your butt...<br>
<br>
[<<moveTo "event_dataservice_admin_2" 'Drop in on <<=setup.getNpcName("npc_admin","first")>>.' 120>>]
<</if>>
</div>/*#
#desc: try to meet admin on old floor
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$events.hasOwnProperty('event_admin_morning_workout_call') && !$events.hasOwnProperty('event_admin_morning_visit')>>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
<<if $npc_admin.flags.sawyouinfemaleclothes>>
<<set $npc_admin.flags.cds_visit = true>>
<<applyStress -3>>
<</if>>
<<case "unisex">>
<<if $npc_admin.flags.sawyouinunisexclothes>>
<<set $npc_admin.flags.cds_visit = true>>
<<applyStress -3>>
<</if>>
<<case "male">>
<<set $npc_admin.flags.cds_visit = true>>
<</switch>>
<</if>>
<</if>>
<<set $player.location to "<<=setup.getNpcName('npc_admin','first')>> Office">>
<<initRoom>>
<<include playerMenu>>
<<if $events.hasOwnProperty('event_admin_morning_workout_call') || $events.hasOwnProperty('event_admin_morning_visit') || !$npc_admin.flags.sawyouinfemaleclothes && setup.analyzeWornTags(['female','male','unisex']) == "female" || $npc_admin.flags.sawyouinunisexclothes && !$npc_admin.flags.sawyouinunisexclothes>>
<<createAdvBGR "./images/locations/cds_office.png">>
<<else>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $events.hasOwnProperty('event_admin_morning_workout_call') || $events.hasOwnProperty('event_admin_morning_visit')>>
You drop by <<=ps(setup.getNpcName("npc_admin","first"))>> office, but <<he npc_admin>> isn't there.<br>
<br>
<<printThought "Shit, I forgot we were going to meet at the gym to work out this morning!">>
<<else>>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case "female">>
<<if $npc_admin.flags.sawyouinfemaleclothes>>
You drop by <<=ps(setup.getNpcName("npc_admin","first"))>> office and <<he npc_admin>> greets you with a smile<<if $npc_admin.flags.relationship == "boyfriend">> and a kiss<</if>>.<br>
<br>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>! Look who's down slumming it in the trenches again! Feeling a bit light-headed from the atmosphere, need to breathe the air of the working <<man npc_admin>>?<<if ($npc_admin.flags.knowgender == "female" && !$npc_admin.fem) || ($npc_admin.flags.knowgender == "male" && $npc_admin.fem)>> Well, <<if $npc_admin.fem>>man<<else>>woman<</if>>, in your case.<<elseif ($npc_admin.flags.knowgender != "male" && !$npc_admin.fem) || ($npc_admin.flags.knowgender != "female" && $npc_admin.fem)>> Sorry, working person — didn't mean to exclude you.<</if>>@@" <<He npc_admin>> grins.<br>
<br>
The two of you chat for a few minutes before another employee walks up in need of something.<br>
<br>
Once again you recognise a former coworker as they nod as if they've never met you before.<br>
<br>
"@@.npc_admin;Sorry, <<callPlayer "npc_admin">>, I got a one on one scheduled. We'll catch up at the Usual Place sometime, alright?@@" You<<if $npc_admin.flags.relationship == "boyfriend">> give <<him npc_admin>> a hug and<</if>> head off.
<<else>>
You drop by <<=ps(setup.getNpcName("npc_admin","first"))>> office but <<he npc_admin>> isn't in. You check <<his npc_admin>> schedule posted on the door, looks like <<hes npc_admin>> in meetings for a while.
<</if>>
<<case "unisex">>
<<if $npc_admin.flags.sawyouinunisexclothes>>
You drop by <<=ps(setup.getNpcName("npc_admin","first"))>> office and <<he npc_admin>> greets you with a smile.<br>
<br>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>! How you doing? That manager of yours still cracking the whip?@@" <<He npc_admin>> grins and you bite your lip.<br>
<br>
<<printThought "Technically it's a paddle, not a whip...">><br>
<br>
The two of you chat for a few minutes before <<his npc_admin>> phone rings. "@@.npc_admin;Sorry, <<callPlayer "npc_admin">>, duty calls!@@" You<<if $npc_admin.flags.relationship == "boyfriend">> give <<him npc_admin>> a hug and<</if>> head off.
<<else>>
You drop by <<=ps(setup.getNpcName("npc_admin","first"))>> office but <<he npc_admin>> isn't in. You check <<his npc_admin>> schedule posted on the door, looks like <<hes npc_admin>> in meetings for a while.
<</if>>
<<case "male">>
You drop by <<=ps(setup.getNpcName("npc_admin","first"))>> office just as <<hes npc_admin>> walking out. "@@.npc_admin;<<callPlayer "npc_admin">>! Nice to see you, but I've got a meeting I need to getting to. Hit me up some other time, we'll catch up over some <<if $npc_admin.fem>>drinks<<else>>brewski's<</if>> at the usual place!@@"
<<default>>
ERROR: unexpected tag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<</if>>
<br><br>
<<include "dataServiceVisit">>
</div>/*#
#desc: try to meet technician on old floor
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.event = true>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You ask the <<guy>> about <<=setup.getNpcName("npc_technician","other")>> and <<he>> seems momentarily stumped before recognition blossoms over <<his>> face.<br>
<br>
"@@.generic_male1;Oh! You mean <<=setup.getNpcName("npc_technician","first")>> or, as she insists on being called "The Great and Powerful Tech Wizard!"@@" The <<man>> laughs, "@@.generic_male1;Sure, she's on the other side of cube-ville — just head down that aisle to the end, then hang a left, she's up next to the wall.@@"<br>
<br>
You thank <<him>> for the directions — not that you actually needed them, and hurry off to find <<if $npc_technician.relationship.relationship_stage >= 1>>your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>cute slave<</switch>><<else>><<=setup.getNpcName("npc_technician","first")>><</if>>.<br>
<br>
[<<moveTo "event_dataservice_technician_2" 'Drop in on <<=setup.getNpcName("npc_technician","first")>>.' 120>>]
</div>/*#
#desc: talk to technician old floor
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_technician.flags.cds_visit = true>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_destroy_technician_6")>>
<<createAdvBGR "./images/locations/cds_office.png">>
<<else>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_destroy_technician_6")>>
<<=ps(setup.getNpcName("npc_technician","first"))>> cube sits lonely and abandoned, thanks to you betraying her to <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<include "dataServiceVisit">>
<<elseif $npc_technician.relationship.coffee_dates == 0>>
You arrive at <<=ps(setup.getNpcName("npc_technician","first"))>> cube but she isn't around.<br>
<br>
<<include "dataServiceVisit">>
<<elseif $npc_technician.relationship.relationship_stage > 0>>
<<if $npc_technician.relationship.her_role == 'sub'>>
<<=setup.getNpcName("npc_technician","first")>> notices you approaching her cube and she greets you with a lip-biting smile<<if $npc_technician.relationship.her_collared>> as one hand reaches up to toy with her collar<</if>>.<br>
<br>
"@@.npc_technician;Good morning, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>,@@" she says with a slight bow once you're standing in front of her desk.<br>
<br>
You nod in acknowledgement and she smiles wider and asks "@@.npc_technician;What can this slave do for her wonderful <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> this morning?@@"<br>
<br>
[<<moveTo "event_technician_morning_dom_1" 'Domme your slave before work.' 120>>]<br>
[<<moveTo "event_dataservice_technician_3" 'You just wanted to say hi.' 600 "<<set $scene.action='visit'>>">>]<br>
[<<moveTo "event_dataservice_technician_3" 'You wondered if she could use a foot massage?' 600 "<<set $scene.action='massage'>>">>]<br>
<<if $npc_technician.relationship.kink_indulge.piss > 2>>
[<<moveTo "event_dataservice_technician_3" "You wondered if she needed to offload some of that coffee she's constantly drinking?" 600 "<<set $scene.action='piss'>>">>]
<</if>>
<<else>>
You go looking for your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral' ''>>girlfriend<<case "sub">>cute slave<</switch>> and find her at her desk looking bored, until she sees you and immediately perks up.<br>
<br>
"@@.npc_technician;Hey! What are you doing down here in the single digit floors? Other than totally brightening my day with your sparkling, sexy presence?@@"<br>
<br>
[<<moveTo "event_dataservice_technician_3" 'You just wanted to say "hi."' 600 "<<set $scene.action='visit'>>">>]<br>
[<<moveTo "event_dataservice_technician_3" 'You wondered if she could use a foot massage?' 600 "<<set $scene.action='massage'>>">>]<br>
<<if $npc_technician.relationship.kink_indulge.piss > 2>>
[<<moveTo "event_dataservice_technician_3" "You wondered if she needed to offload some of that coffee she's constantly drinking?" 600 "<<set $scene.action='piss'>>">>]
<</if>>
<</if>>
<<else>>
You find <<=setup.getNpcName("npc_technician","first")>> at her desk looking bored.<br>
<br>
"@@.npc_technician;Hey <<=$player.first_name>>! Damn but you look hot and professional... sorry, don't report me to HR for that... well, unless you count as such, what with your boss. You can report me to you ANY time.@@" She winks playfully at you.<br>
<br>
[<<moveTo "event_dataservice_technician_3" 'Say you just came by to say hi.' 600 "<<set $scene.action='visit'>>">>]<br>
[<<moveTo "event_dataservice_technician_3" 'You were wondering if she was in need of a foot massage?' 600 "<<set $scene.action='massage'>>">>]
<</if>>
</div>/*#
#desc: interact technician on old floor
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.visitTechnician = true>>
<<if $scene.action == 'visit'>>
<<applyStress -3>>
<</if>>
<</if>>
<<set $player.location to "Cloud Data Service">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'visit'>>
You spend some time chatting with your <<switch $npc_technician.relationship.her_role>><<case 'dom'>><<=setup.getNpcName("npc_technician","title")>><<case 'neutral'>>girlfriend<<case "sub">>cute slave<<case ''>>friend <<=setup.getNpcName("npc_technician","first")>><</switch>>, feeling cheered up by the interaction when her computer chimes.<br>
<br>
"@@.npc_technician;Dammit,@@" she states, looking at the screen "@@.npc_technician;Some BDU screwed up the database again, I gotta jump on this fast — you well know how harshly this company deals with anyone responsible for losing data!@@" She winks as you blush and head away.<br>
<br>
<<include "dataServiceVisit">>
<<case 'massage'>>
"@@.npc_technician;Foot massage? Yes and please — just walking to work is enough to make these heels kill me.@@" She glances at your feet
<<if setup.getItemObjFromType('shoes').hasOwnProperty('heels')>>
<<if setup.getItemObjFromType('shoes').heels.difficulty > 10>>
<<if setup.getItemObjFromType('shoes').heels.difficulty > 15>>
"@@.npc_technician;I guess I should feel bad comparing these to yours but... no offense, those things are as frelling insane as they are smoking hot.@@"
<<else>>
"@@.npc_technician;I guess I shouldn't really talk, I still don't understand how you can walk in those crazy things! Though I'm thankful you do because they make you look hella hawt.@@"
<</if>>
<<else>>
<<if setup.getItemObjFromType('shoes').heels.difficulty > 5>>
"@@.npc_technician;Dang, yours are even steeper than mine, crazy... though, they DO make your legs look fantastic...@@"
<<else>>
"@@.npc_technician;I guess you know what I mean, eh?@@"
<</if>>
<</if>>
<<else>>
"@@.npc_technician;You're lucky you don't have to wear anything like this — I'm telling you, this company pays well, but the dress code? A little crazy!@@"
<</if>>
She makes space for you to crawl under her desk and immediately slips out of her shoes.<br>
<br>
[<<moveTo "event_dataservice_technician_3_foot_1" "Crawl under." 600 "<<set $scene.foot=true>>">>]<br>
[<<moveTo "event_dataservice_technician_3_foot_1" "Actually, you probably need to get to work." 180 "<<set $scene.foot=false>>">>]
<<case 'piss'>>
You slyly smile and ask if her morning coffee is needing to "escape." <br>
<br>
It would seem that said morning coffee hasn't quite hit as it takes her a moment before she gasps in recognition of what you're asking, blushes, and then grins. Her voice drops. "@@.npc_technician;Wait, you're offering to drink my... lemonade right here in the office?@@"<br>
<br>
You nod.<br>
<br>
"@@.npc_technician;Fuck, so... I'm not 100% I can actually piss with this raging of a hard-on but, for you? I am definitely game to try. Goddess damn how did I miss that you were such a perfectly kinky perverted slut back when we were working together? Well come on, let's make up for lost time.@@"<br>
<br>
[<<moveTo "event_dataservice_technician_3_piss" "Have a drink under the table." 600 "<<set $scene.piss=true>>">>]<br>
[<<moveTo "event_dataservice_technician_3_piss" "Actually... no." 600 "<<set $scene.piss=false>>">>]
<<default>>
ERROR: unknown scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: ask about oral work
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if you might spend another shift helping employee morale "around the water cooler." <br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles in amusement. "@@.npc_manager;Thirsty, are we? Very well, I shall allow it, and inform the appropriate people to make space for you. Just remember to check back in at your desk to wrap up anything that came in while you were busy with your... oral exertions.@@"<br>
<br>
[<<moveTo "event_oral_work_repeatable_2" 'Head for the water cooler.' 600>>]
</div>/*#
#desc: repeatable oral shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_FRIEND>>
<<addItem 'ring_gag'>>
<<wearItem 'ring_gag' true>>
<<addItem 'box_tie'>>
<<wearItem 'box_tie' true>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
By the time you make it back to the water cooler an attendant is waiting and ready to help you get "hooked up," guiding you to your knees, securing your arms and adding a welcoming ring gag... a queue of customer's already appearing thanks to the helpful light indicating that there is a <<if $fetish.sissy>>SISSI<<else>>Cock-sucker<</if>> on duty.<br>
<br>
<<if $npc_manager.stage >= 5 && !State.hasPlayed("event_rival_penis_1")>>
[<<moveTo "event_rival_penis_1" 'Get to "work."' 3000 "<<set $scene.fromAfternoon = true>>">>]
<<elseif $npc_manager.stage >= 5 && !State.hasPlayed("event_rival_penis_2")>>
[<<moveTo "event_rival_penis_2" 'Get to "work."' 3000 "<<set $scene.fromAfternoon = true>>">>]
<<else>>
[<<moveTo "event_oral_work_repeatable_3" 'Get to "work."' 7200>>]
<</if>>
</div>/*#
#desc: oral shift
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 11 'normal' $SEEN_STRANGER>>
<<removeItem 'box_tie' true>>
<<deleteItem 'box_tie'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You spend another shift on your knees improving employee morale, servicing whoever stands before you as employees relax around the water cooler, getting a drink... and a suck.<br>
<br>
After an hour or so, with your jaw and tongue starting to feel the wear of so many consecutive blowjobs, the chief attendant appears to finish your shift; turning off your service light, waiting for the waiting "customers" to finish up, then helping you out of your restraints and back to your feet before dismissing you to return to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Finish the afternoon shift back at your desk." 300>>]
</div>-Water cooler (similar to box event)
-Cum gatherer to be used in lab experiments
-Under the table cock hole for a meeting room
-Lab disposal unit. (even though they're done with it, why let it go to waste?)
-Reward room for secretaries. They spend time getting machine fucked and their cum has to go somewhere. funnels and tubes all lead to one funnel for MC. Saves on cleaning.
-Box cleaning detail for between uses
-clean cafe storage tanks/*#
#desc: celebration for executive secretary promotion
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> greets her guests with a smile. "@@.npc_manager;Ah, <<=setup.getNpcName("npc_harassment","formal")>>! I was just finishing congratulating Miss <<=$player.first_name>> on her wonderful performance.@@"<br>
<br>
<<=setup.getNpcName("npc_harassment","formal")>> smiles, shrugging out of her coat and waiting as <<=setup.getNpcName("npc_harassment_assist","first")>> sets about buckling a large strap-on to her hips. At the same time <<=setup.getNpcName("npc_manager","formal")>> retrieves the familiar strap-on from her desk and you immediately understand what she meant by "two of something else." <br>
<br>
As the managers get into position <<=setup.getNpcName("npc_harassment_assist","first")>> takes you gently by the hand and helps you strip before laying you across a piece of furniture, stroking you gently as they get you "ready" for your celebration. They never say a word, but their expression is a mixture of joy, encouragement... and maybe the slightest hint of jealousy. <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>Their last act is to slide the plug from your rear and rub in a healthy dollop of lube<<else>>Their last act to lube up your hollow plug<</if>>.<br>
<br>
"@@.npc_harassment;Come on, <<=setup.getNpcName("npc_harassment_assist","first")>>. We do not have all day,@@" <<=setup.getNpcName("npc_harassment","formal")>> says impatiently.<br>
<br>
<<=setup.getNpcName("npc_harassment_assist","first")>> sneaks a quick kiss and steps away as the two managers approach you.<br>
<br>
[<<moveTo "event_payraise_final_2" "Spread wide for your prize..." 600>>]
</div>/*#
#desc: DP'd for executive secretary promotion
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_manager.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_manager.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment")>>
<div id="invframe" class="scrolltext">
The two women step towards you, their respective strap-ons subtly different, but looking roughly the same size. <<=setup.getNpcName('npc_manager', 'formal')>> offers her guest your rear before moving in front of you, stroking your face and smiling down as she lines up her artificial dong with your lips.<br>
<br>
"@@.npc_manager;Open wide, my lovely, clever, perfect Executive <<if $fetish.sissy>>SISSI <</if>>Secretary...@@"<br>
<br>
You do as she commands, worshipfully deep-throating it as its sibling smoothly slides into you from behind.<br>
<br>
"@@.npc_harassment;Such a good Executive <<if $fetish.sissy>>SISSI <</if>>Secretary... so tightly focused on her duties... yet so welcoming...@@" Comes the congratulations as you moan submissively, your body shifting back and forth as the two women "reward" you for your promotion.<br>
<br>
Your eyes roll back as your "pleasure gauge" fills up... only for you to notice something out of the corner of your eye and look over to see <<=setup.getNpcName('npc_harassment_assist', 'first')>> looking on bashfully and biting their lip in obvious arousal.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> notices your shifted attention and looks to the side with a grin.<br>
<br>
[<<moveTo "event_payraise_final_3" "Continue." 300>>]
</div>/*#
#desc: 3-way for executive secretary promotion
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_manager.penis_size 'normal' $SEEN_FRIEND>>
<<playerOrgasm>>
<<if $currentTasks.hasOwnProperty("task_stage_3_party") && $currentTasks.task_stage_3_party.finished>>
<<if !$scene.landlordDate || $scene.review.special == "retreat_announce">>
<<set _nextDate = setup.getNextDayOfWeek($now, 4, 18, 30, true)>>
<<addTaskById 'task_stage_3_party' _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment") setup.charImage("npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;It looks like your assistant wants to add their congratulations as well...@@" <<=setup.getNpcName('npc_manager', 'formal')>> notes. You feel fingers close on your hair and she pulls you off her <<getWordPenis false>>, lifting your face up while <<=setup.getNpcName('npc_harassment', 'formal')>> continues to plow you from behind. "@@.npc_manager;Come on over here, <<=setup.getNpcName('npc_harassment_assist', 'first')>>, hop up on my shenis and show your coworker the rewards that come with being such a good, efficient worker.@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> eagerly rushes over, smoothly sliding a large plug out of their rear moments before sitting back on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> big, artificial <<getWordPenis false>>. You can see the bliss of going balls-deep flash over <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> face, but then they're eagerly pulling you in for a kiss, their soft lips meeting your own, tongues dancing as your bodies press together and you take it in unison from your superiors.<br>
<br>
Your first orgasm — moaned between <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> lips — comes soon after, but things continue on until both you and <<=setup.getNpcName('npc_harassment_assist', 'first')>> have enjoyed two climaxes each, your legs wobbly as the managers pull out and step away.<br>
<br>
You help one another re-plug and fix your clothes, with just a little more additional kissing before taking your respective places aside your prideful managers.<br>
<br>
"@@.npc_harassment;Well, thank you again for inviting me to this little celebration.@@" She tips her head and <<=setup.getNpcName('npc_harassment_assist', 'first')>> bows before the two depart.<br>
<br>
"@@.npc_manager;Well, that was just lovely,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states in content conclusion when it is just the two of you. "@@.npc_manager;A nice capstone to the day —
<<if $scene.landlordDate && $scene.review.special != "retreat_announce">>
I think we can forgo this evening's party... you have already enjoyed festivities, hmm? See you in the morning,
<<else>>
I will see you <<if $currentTasks.hasOwnProperty('task_stage_3_party') && setup.hoursToDate($now, setup.getTaskDueDate('task_stage_3_party')) < 6>>for tonight's party<<else>>in the morning<</if>>,
<</if>>
Miss <<=$player.last_name>> — <<=setup.getSecretaryTitle()>>.@@"<br>
<br>
You curtsy and smile proudly as you leave her office.<br>
<br>
[<<moveTo "room_office_after_work" "Leave." 60>>]
</div>/*#
#desc: manager discovers giant plug + omatic
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.panties = setup.getItemFromType("panties")>>
<<if $scene.panties != "">>
<<removeItem $scene.panties true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.panties>>
<<=setup.getNpcName("npc_manager","formal")>> pauses as she glances at the silhouette of your plug straining against your panties.<br>
<br>
<<if setup.getChastityLevel() == 5 && setup.getItemObjFromType("cage").plugBonus >= 5>>
"@@.npc_manager;My, my, I know how large that <<=setup.getItemTypeName('cage')>> is swelled inside of you, but apparently that just was not enough for your hungry hole. Slip out of those panties, I want to see that spread bum with my own eyes.@@"
<<else>>
"@@.npc_manager;Oh, my. That plug is already massive... and yet that appears to have been insufficient for your hungry hole. Slip out of those panties, I want to see that spread bum with my own eyes.@@"
<</if>>
<br><br>
You remove your panties and she
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> pauses as she looks at the large base of the plug
<<if setup.getChastityLevel() == 5 && setup.getItemObjFromType("cage").plugBonus >= 5>>
stuffed inside the hollow, but max-size <<=setup.getItemTypeName('cage')>> rear plug. "@@.npc_manager;My, my, I know how large that <<=setup.getItemTypeName('cage')>> is swelled inside of you, but that just was not enough...@@"
<<else>>
"@@.npc_manager;Oh, my. That plug is already massive... and yet that appears to have been insufficient for your hungry hole. Magnificent...@@"
<</if>>
She
<</if>>
places a hand over your plug. The massive anal occupant shifts in you like a tectonic plate. Enjoying your reaction to the titanic combo twisting in your rear she gets a firmer grip and pushes and then tugs on your ass-filling plug as you moan.<br>
<br>
"@@.npc_manager;My, my! I remember when you were all tight and virginal back here! Barely able to take one of my fingers and now...@@" She continues to wiggle the plug as you pant harder. "@@.npc_manager;Now you have become my gaping, hungry-holed <<if $fetish.sissy>>SISSI <</if>>butt-slut...@@" She hums as you shudder. "@@.npc_manager;Hmm, but exactly how much can this delightful orifice handle? I think a test is in order.@@"<br>
<br>
She releases her hold on your plug, allowing it to suck in and settle into its "natural" position. "@@.npc_manager;Get naked and up on my desk, on all fours — I want to do a proper investigation of this <<if $fetish.sissy>>sissy <</if>>ass.@@" She gives you a light swat on the rear as you jump to obey.<br>
<br>
[<<moveTo "event_manager_anal_training" "Get naked and ready to gape." 1800 "<<set $scene.fromInspection=true>><<if $scene.panties != ''>><<wearItem $scene.panties true>><</if>>">>]
</div>/*#
#desc: ask manager to demonstrate anal capacity
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if you could demonstrate your anal capacity for her and she
<<if setup.checkItemTypeWorn("plug", true)>>
smiles.<br>
<br>
"@@.npc_manager;I was just thinking my wrist was acting up — what better massage therapy than to spend some time with it deep in a tight <<if $fetish.sissy>>sissy <</if>>hole?@@"<br>
<br>
She grins. "@@.npc_manager;Strip, then get up on my desk on all fours.@@"<br>
<br>
[<<moveTo "event_manager_anal_training" "Get naked and ready to gape." 180 "<<set $scene.fromInspection=false>>">>]
<<else>>
frowns.<br>
<br>
"@@.npc_manager;With you not even remembering to plug yourself for work today? No, I think not. Such lack of dedication or preparedness means you are the opposite of ready to really prove any sort of expertise. How about something else?@@"<br>
<br>
<<include "managerTrainingTests">>
<</if>>
</div>/*#
#desc: manager fist inspects your ass
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'analTrain'>>
<<removeAllClothing>>
<<if setup.getChastityLevel() == 5>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<removeItem $scene.cage true>>
<<if $scene.plug != "" && $scene.plug != $scene.cage>>
<<removeItem $scene.plug true>>
<</if>>
<<else>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<if $scene.plug>>
<<removeItem $scene.plug true>>
<</if>>
<<set $scene.hollow_plug = setup.getItemFromType("hollow_plug")>>
<<if $scene.hollow_plug>>
<<removeItem $scene.hollow_plug true>>
<</if>>
<</if>>
<<setThreshold 'anal' 'secretary_anal' 'fist_training'>>
<<applyExperience 'anal' 18 'skip' $SEEN_FRIEND>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You get into position as <<=setup.getNpcName("npc_manager","formal")>> rolls a pair of tight, shiny rubber gloves onto her hands. These are no hospital supply items, but full on fetish opera gloves — shiny and slick, and extending all the way to her armpit. You can't help but stare as she lubes herself up well past the elbow.<br>
<br>
She smiles. "@@.npc_manager;Best to be prepared for a... deep inspection.@@" She explains before taking firm hold of your massive plug and pulling it free with a pop. <<if setup.getChastityLevel() == 5>>That is not all as she follows up by producing a remote, your <<=setup.getItemTypeName('cage')>> retracting and then falling onto the desk.<</if>><br>
<br>
"@@.npc_manager;Oh my, that is just a beautiful hole! Freshly gaped... and yet I see it pulling closed. It would seem that electric plug has been just the thing to make sure your muscles remain strong and supple. Yes, you look more than ready to take the biggest cock all the way deep, and then close up to keep a single drop of cum from leaking out.@@"<br>
<br>
You start breathing faster as she begins fingering your hole,
<<if $fetish.fisting>>
no fewer than three of her fingers inside of you as she pokes and prods and spreads you wider. Though she seems more focused on the inspection than your pleasure there is no denying that the feel of her slick rubber fingers is both intense and erotic.<br>
<br>
"@@.npc_manager;Yes, a lovely <<if $fetish.sissy>>sissy <</if>>entrance, so wonderfully inviting, but entrances are one thing, I want to know what is going on inside. Which means it is time to go deeper...@@"<br>
<br>
You feel her pointed fingers line up and then push forward as her fist easily disappears inside of you and you clamp down around her wrist.<br>
<br>
You moan as she makes a full fist inside of you, her knuckles rubbing against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as she twists slightly, and then slowly works deeper.<br>
<br>
"@@.npc_manager;Mmm, yes, your ass has become a wonder. Now relax, I need to see how deep it goes...@@"<br>
<br>
Slowly, overwhelmingly, you feel her punch further into you, carefully aligning your internal organs to clear her path, her hand working in and out and slowly turning, drilling deeper and deeper, your organs moving aside as you feel yourself spreading even more and more...<br>
<br>
<<if setup.getTotalValue("anal") >= 19>>
You gasp as her elbow slides into you.<br>
<br>
You pant and gasp and almost lose your balance, cumming down your leg as you all but dangle off of her arm...<br>
<br>
"@@.npc_manager;Oh my, you are so inviting! Let's see if we can expand this wonderful party...@@"<br>
<br>
[<<moveTo "event_manager_anal_final_1" "There's more?" 600>>]
<<else>>
Your heart is pounding and your breaths coming short and fast as the exploration comes to a stop with you unable to quite accept her elbow.<br>
<br>
She says a soft "@@.npc_manager;Hrm,@@" as she acknowledges finding your limit, her arm retracting slightly and twisting as her fist glides in and out and pushes you over the edge to leak an orgasm down your thigh.<br>
<br>
Your legs almost give out but she helps hold you up, her fist remaining deep inside of you as your body shudders at the intense sensation, gently working your insides until you start to come down.<br>
<br>
"@@.npc_manager;Good, but not quite perfect capacity,@@" she states as she finally slides her fist out of you and you slump to the desk. "@@.npc_manager;Continue training. You are close, but not quite there.@@"<br>
<br>
You groan, partially in frustration and partially in, well, your brain is a bit too over-loaded to put that to words. After peeling off her gloves she wipes you off, then has you dress before sending to work.<br>
<br>
<<if $scene.fromInspection>>
[<<moveTo $scene.inspectionReturn "Start the day." 300 "<<if !setup.checkItemTypeWorn('cage') && $scene.cage>><<wearItem $scene.cage true>><</if>><<wearItem $scene.plug true>><<if $scene.hollow_plug>><<wearItem $scene.hollow_plug true>><</if>><<useClothSetPop 'analTrain'>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<<else>>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>><<if !setup.checkItemTypeWorn('cage') && $scene.cage>><<wearItem $scene.cage true>><</if>><<wearItem $scene.plug true>><<if $scene.hollow_plug>><<wearItem $scene.hollow_plug true>><</if>><<useClothSetPop 'analTrain'>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<</if>>
<</if>>
<<else>>
working you open before sliding a slippering, yet small plug into you.<br>
<br>
"@@.npc_manager;There we go.@@" She says with obviously pleasure as you glance back to see her holding a squeeze bulb, its hose leading to your plug. "@@.npc_manager;Now to see exactly how big you can take...@@"<br>
<br>
Three quick squeezes in succession have the previously miniscule plug swelling and stretching deeper, <<=ps(setup.getNpcName("npc_manager","formal"))>> grin telling you everything as she strokes one of your quivering cheeks. "@@.npc_manager;Oh we are just getting started...@@"<br>
<br>
You moan as she continues to squeeze, the bulb swelling larger and larger within you with each pump as you shudder and gasp.<br>
<br>
<<if setup.getTotalValue("anal") >= 19>>
"@@.npc_manager;My my,@@" she states, pausing for a moment to wiggle the swelled plug, the rocking motion sending quivering waves out through your trembling frame. "@@.npc_manager;It must be getting quite pressed full in there... but I think you can take a bit more, hmm?@@"<br>
<br>
[<<moveTo "event_manager_anal_final_1" 'Y-yes, <<=ps(setup.getNpcName("npc_manager","title"))>>.' 600>>]
<<else>>
Your heart is pounding and your breaths coming short and fast as the exploration comes to a stop with you unable to quite accept the plug getting any bigger.<br>
<br>
She says a soft "@@.npc_manager;Hrm,@@" as she acknowledges finding your limit, pausing as your entire body pulses around the swelled balloon filling your rear.<br>
<br>
"@@.npc_manager;Good, but not quite perfect capacity,@@" she states as she finally deflates things, the sudden evacuation of pressure sending you slumping to the desk. "@@.npc_manager;Continue training. You are close, but not quite there.@@"<br>
<br>
You groan, partially in frustration and partially in, well, your brain is a bit too over-loaded to put that to words.<br>
<br>
<<if $scene.fromInspection>>
[<<moveTo $scene.inspectionReturn "Start the day." 300 "<<if !setup.checkItemTypeWorn('cage') && $scene.cage>><<wearItem $scene.cage true>><</if>><<wearItem $scene.plug true>><<if $scene.hollow_plug>><<wearItem $scene.hollow_plug true>><</if>><<useClothSetPop 'analTrain'>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<<else>>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>><<if !setup.checkItemTypeWorn('cage') && $scene.cage>><<wearItem $scene.cage true>><</if>><<wearItem $scene.plug true>><<if $scene.hollow_plug>><<wearItem $scene.hollow_plug true>><</if>><<useClothSetPop 'analTrain'>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: manager double fists you
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 100>>
<<setThreshold 'anal' 'secretary_anal' 'double_fist'>>
<<applyExperience 'anal' 20 'skip' $SEEN_FRIEND>>
<<include "bestialityFinalChecker">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your heart is pounding in your
<<if $fetish.fisting>>
chest — and <<=ps(setup.getNpcName("npc_manager","formal"))>> arm is so far inside of you it can almost touch your blood-pumping organ, literally.<br>
<br>
You moan as she pulls back slightly, her elbow popping clear of your hole before you squeeze down on her forearm, startled at how small her wrist and fist are compared to what you were just feeling...<br>
<br>
You do not have to wait to gape once again as you feel the fingers of her other hand wrapping around her wrist and poking into you.<br>
<br>
<<printThought "Oh <<getWordGod>> — can I really take both of her fists?">><br>
<br>
The answer to your silent question is yes, her other hand sliding almost easily into your rear, her double fists shifting inside of you, hands changing position to form what feels like a large pill shape, which begins slowly twisting and moving within your bum like the exploring head of a serpent.<br>
<br>
You moan, the spread, filled, fantastic sensations in your ass almost too much. Surreally you can feel her hands moving inside of you, the fingers of one wrapping around her forearm, knuckles pressed firmly against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as her extended hand begins to fuck you, going almost elbow deep once again as you are fist-fucked like never before...<br>
<br>
You analgasm again as her slick-gloved hands work your insides... and then again, your legs giving out completely as you drop face-down on her desk, drooling slightly as you try to comprehend the vista of pleasure she has just unleashed upon you.<br>
<br>
As a final crescendo she pulls back with both hands together, the double fist spreading you to the max before her knuckles clear your hole and you are, astonishingly, and almost alienly... empty.
<<else>>
chest, each squeeze of the bulb feeling like the plug, or you might well burst.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> works you up slowly, timing each squeeze with your breaths so it almost feels like the growing plug must be pushing the air out of your lungs with each squeeze.<br>
<br>
"@@.npc_manager;So big... so perfect...@@" She tenderly caresses your bottom, leaving the squeeze bulb to dangle, each swaying tug threatening to send the entire bowling-ball sized balloon shooting out of your straining rear.<br>
<br>
One final squeeze has you gasping and panting as <<=setup.getNpcName("npc_manager","formal")>> has you hold it just a few moments longer... and then releases the valve, air whistling out of the plug as you collapse onto the desk.
<</if>>
<br><br>
"@@.npc_manager;Congratulations, my dear. You have a perfect <<if $fetish.sissy>>sissy <</if>>hole.@@"<br>
<br>
You feel a flutter of pride, which turns to a groan of fullness as she replaces your <<if !setup.checkItemTypeWorn('cage') && $scene.cage>><<=setup.getItemName($scene.cage)>> at full size<<if $scene.plug>>, with the <<=setup.getItemName($scene.plug)>> stuffed inside<</if>><<else>><<=setup.getItemName($scene.plug)>><</if>>.<br>
<br>
She takes a moment to clean you up while you recover and then gestures towards your pile of clothes.<br>
<br>
"@@.npc_manager;Well done. You may now dress and return to your duties.@@"<br>
<br>
<<if $scene.fromInspection>>
[<<moveTo $scene.inspectionReturn "Start the day." 300 "<<if !setup.checkItemTypeWorn('cage') && $scene.cage>><<wearItem $scene.cage true>><</if>><<wearItem $scene.plug true>><<if $scene.hollow_plug>><<wearItem $scene.hollow_plug true>><</if>><<useClothSetPop 'analTrain'>><<set $player.timebased.horny = 0>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<<else>>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>><<if !setup.checkItemTypeWorn('cage') && $scene.cage>><<wearItem $scene.cage true>><</if>><<wearItem $scene.plug true>><<if $scene.hollow_plug>><<wearItem $scene.hollow_plug true>><</if>><<useClothSetPop 'analTrain'>><<set $player.timebased.horny = 0>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<</if>>
</div>/*#
#desc: manager final bdsm test intro
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = false>>
<<set $scene.removePlug = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You express your desire to prove your ability to serve your <<=setup.getNpcName('npc_manager', 'title')>> under even the harshest of conditions.<br>
<br>
"@@.npc_manager;The harshest, you say?@@" She asks thoughtfully. "@@.npc_manager;Such an advancement from that first day, where a mere spanking had you nearly in tears...@@" She smiles. "@@.npc_manager;While it does make punishment more tricky a slave who is a fully committed pain-slut, able to endure the most extreme treatment... well, that is a useful skill indeed. I will note that, to test you in this way, well... I shall not be holding back. I will push your lovely body to the very limit... and only by you proving you can take it all will I acknowledge your capabilities.@@"<br>
<br>
She looks at you with an evil grin. "@@.npc_manager;If you are still ready to be tested... strip. Otherwise, well... back to work for you.@@"<br>
<br>
[<<moveTo "event_manager_bdsm_final_2" "Strip." 600>>]<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager final bdsm test strip and bound
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You slide out of your clothes. While you strip you watch <<=setup.getNpcName('npc_manager', 'formal')>> likewise prepare by laying out a series of increasingly scary implements and your heart beats faster.<br>
<br>
As soon as you're naked your wrists are cuffed and raised above your head, high enough that you are have to stand on your toes not to just hang... which means you have no way of protecting yourself as <<=setup.getNpcName('npc_manager', 'formal')>> approaches... a flogger in each hand.<br>
<br>
"@@.npc_manager;So,@@" she states, swishing the floggers through the air, without yet touching you, "@@.npc_manager;This is a challenge of endurance, of testing your thresholds... if you need to stop, I will stop. For you to pass, however, you shall need to embrace the pain, prove that you can handle it, delight in it, even... only then will you prove yourself a consummate pain-slut.@@"<br>
<br>
You take a deep breath and she swings the first flogger towards your exposed rear...<br>
<br>
<<if setup.getTotalValue("bdsm") < 5>>
[<<moveTo "event_manager_bdsm_final_abort" "This is crazy, you can't do this!" 300>>]
<<elseif setup.getTotalValue("bdsm") < 10>>
[<<moveTo "event_manager_bdsm_final_abort" "What? No, you aren't a pain-slut!" 300>>]
<<elseif setup.getTotalValue("bdsm") < 15>>
[<<moveTo "event_manager_bdsm_final_abort" "Even for you... that sounds like too much..." 300>>]
<<else>>
[<<moveTo "event_manager_bdsm_final_3" "It begins..." 600>>]
<</if>>
</div>/*#
#desc: manager final bdsm test - abort
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemWorn("nipple_electric")>>
<<removeItem 'nipple_electric' true>>
<<deleteItem 'nipple_electric'>>
<</if>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<useClothSetPop 'tmp'>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You beg for mercy.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns; clearly disappointed, but she follows the rules she laid out. She releases your cuffs and helps you down into her arms before handing you your clothes and dismissing you back to your desk without either admonishment or encouragement.<br>
<br>
<<printThought "I was the one being punished... and yet I feel bad for wasting her time...">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager final bdsm test - whipping
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_FRIEND>>
<<applyStress 5>>
<<applyFatigue 30>>
<<set _horny = setup.getTotalValue("bdsm")>>
<<changeHorny _horny>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
From the initial floggers, to whip, to paddle, to cane, <<=setup.getNpcName('npc_manager', 'formal')>> punishes you thoroughly; showing particular attention to your bottom and thighs, of course, but also targeting your
<<switch setup.calcBreastSize()>>
<<case "massive">>
huge breasts,
<<case "large">>
large breasts,
<<case "medium">>
breasts,
<<case "small">>
small breasts,
<<case "none">>
flat chest,
<</switch>>
and even mixing in a bit of bastinado so that no position is without pain...<br>
<br>
You're gasping, but still keeping it together when she pushes the intimacy to another level by going hands-on. You pant as she spanks and claws your already red and sensitive flesh, finishing off with a hard face slap that has you spinning in place for a moment.<br>
<br>
She steps away and waits for you to come to a stop. You wince and try to stand up to take the pressure off your shoulders... though you're at the point where your entire body is pulsing in aftershocks of pain and no position could be comfortable. You look up to see that <<=setup.getNpcName('npc_manager', 'formal')>> is far from done as you notice a row of electric devices have appeared on her desk.<br>
<br>
"@@.npc_manager;So,@@" she repeats, sparking a stun baton to test it and make a crackling arc of electricity... "@@.npc_manager;Are you ready for more?@@"<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_bdsm_final_4" 'Yes, <<=setup.getNpcName("npc_manager", "formal")>>.' 600>>] <<hint $options "This will require an expenditure of willpower">><br>
<<else>>
[@@.link_locked;You do not have enough willpower to willingly subject yourself to additional pain.@@]<br>
<</if>>
[<<moveTo "event_manager_bdsm_final_abort" "Mercy..." 300>>]
</div>/*#
#desc: manager final bdsm test - electrics
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 1>>
<<applyExperience 'bdsm' 19 'skip' $SEEN_FRIEND>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<addItem 'nipple_electric'>>
<<wearItem 'nipple_electric' true>>
<<applyStress 5>>
<<applyFatigue 50>>
<<set _horny = setup.getTotalValue("bdsm")>>
<<changeHorny _horny>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, placing the intimidating baton back down before approaching you and removing your <<if $scene.removeCage>><<=setup.getItemName($scene.cage)>><<if $scene.removePlug>> and <<=setup.getItemName($scene.plug)>><</if>><<else>><<=setup.getItemName($scene.plug)>><</if>>. You bite your lip as a pair of harsh clamps are added to your nipples and then <<=setup.getNpcName('npc_manager', 'formal')>> holsters a violet wand on her hip with a probe pressed against her bare flesh.<br>
<br>
She steps towards you, coming just shy of touching you with a finger when a purple bolt of electricity jump from her finger to your skin for a painful zap.<br>
<br>
"@@.npc_manager;Delightful, is it not?@@" She notes with a spreading grin as she continues to spark you here, there, and everywhere, causing you to jump and yelp. The electricity, even the relatively mild shocks of the wand, is a whole other sort of pain than the impact play she just finished inflicting upon you that seems to strike right to the nerves.<br>
<br>
"@@.npc_manager;I feel a bit like a super-hero like this,@@" she monologues as she continues to zap, zap, zap, "@@.npc_manager;Shooting electricity from my fingers... or, I suppose, perhaps the fact that I am using my powers to torture you makes me the villainess?@@" She laughs as she delivers a particularly painfully targeted jolt right to your most sensitive bits. "@@.npc_manager;Mmm, no matter — whichever lets me make you dance and yelp so adorably... that is the one I want to be.@@"<br>
<br>
You bite your lip, the combination of her voice and your over-sensitive flesh blurring the line between pain and pleasure as your heart races.<br>
<br>
"@@.npc_manager;Ah, there it is — someone is ready for more.@@" Before you can quite process what she means your nipples explode in pain as the clamps prove their electric qualifications.<br>
<br>
"@@.npc_manager;Oh, that looked painful! Delightfully painful,@@" she adds, reaching for a cattle prod.<br>
<br>
The cattle prod proves to be even more painful than the wand and she wields it mercilessly, shocking you everywhere from your feet to your armpits, almost teasing you with the way she spirals around your body before going directly for your
<<if $player.body_ref.penis && $player.body_ref.vagina>>
genitals, your <<getWordMyPenis>> jumping in agony as she gives it a full blast... following up with another shock for your cunt<<if $player.body_ref.balls>> and a final, even more agonising one for your balls<</if>>.
<<elseif $player.body_ref.penis>>
<<getWordMyPenis>>. You gasp and bounce, disturbingly hard<<if $player.body_ref.balls>> even as she follows up with an even more agonising shock to your balls<</if>>.
<<else>>
clit, shocking that most sensitive nub harshly.
<</if>>
With this new "pain cherry" popped things step up further as she alternates between zapping your genitals and shocking a random other part of your body, the random torment having you dance and jump and occasionally hang in mid-air as she continues to torture you.<br>
<br>
You're in a dizzying storm of pain and you miss when she steps away only to cry out as something is thrust into your ass. You get a moment of recognition to realise it's a stun baton before your insides explode in pain.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.vagina && $fetish.sounding>>
A moment's respite is all you get before things are repeated with a double violation up front — a narrow sound and a second stun baton thrust down your penis and into your cunt, respectively, before all three combine with your nipple clamps to all but cook you.
<<elseif $player.body_ref.penis>>
A moment's respite is all you get before she continues to shock your ass and your <<getWordMyPenis>>.<<if $player.body_ref.balls>> There are also occasional zaps on your balls which<<else>>Which<</if>> when combined with your nipple clamps all but cook you.
<<else>>
A moment's respite is all you get before she continues to shock your ass and your clit. Which when combined with your nipple clamps all but cook you.
<</if>>
<br><br>
You feel like there should be tendrils of smoke coming off your body as she gives you another seconds-that-feels-like-hours, long blast and then swiftly removes everything but your cuffs.<br>
<br>
You're so fried you barely even notice the nipple clamps being yanked away; the only thing keeping you vertical is the cuffs suspending you in the air and your eyes are unfocused as she lifts you by the hair to look you in the face.<br>
<br>
"@@.npc_manager;You done? Or does my <<if $fetish.sissy>>sissy <</if>>pain-slut need more?@@"<br>
<br>
<<if setup.getTotalValue("bdsm") < 19>>
<<printThought "More!?">><br>
<br>
You can't even imagine what could be past what you have just endured... and you're too afraid to find out.<br>
<br>
[@@.link_locked;You lack the pain tolerance to take any more.@@]<br>
<<elseif setup.getWillpower() > 2>>
[<<moveTo "event_manager_bdsm_final_5" 'If it pleases you, <<=setup.getNpcName("npc_manager", "formal")>>.' 600>>] <<hint $options "This will require a significant expenditure of willpower">><br>
<<else>>
[@@.link_locked;You lack the willpower to ask for more.@@]<br>
<</if>>
[<<moveTo "event_manager_bdsm_final_abort" "Mercy..." 300>>]
</div>/*#
#desc: manager final bdsm test - neurological
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 3>>
<<applyExperience 'submission' 20 'terrible' $SEEN_FRIEND>>
<<setThreshold 'bdsm' 'bdsm_other' 'bdsm_final'>>
<<applyExperience 'bdsm' 20 'terrible' $SEEN_FRIEND>>
<<applyStress 5>>
<<applyFatigue 300>>
<<playerOrgasm>>
<<set _horny = setup.getTotalValue("bdsm")>>
<<changeHorny _horny>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You gasp your submissive reply and <<=setup.getNpcName("npc_manager","formal")>> momentarily frowns.<br>
<br>
"@@.npc_manager;In point of fact... it does not. The amount of pain I am about to administer... well, it is almost crude in its bluntness. My preference is to keep things more psychological that even a light blow might sting all the harsher, but, you are here to prove your capacity for agony and so...@@"<br>
<br>
She places a small tiara-like object onto your head and begins slipping on a pair of gloves. "@@.npc_manager;This is the Sade 120 — designed for covert ops use, it is banned by several international treaties. Nicknamed the crown of thorns it interfaces with the wearer's nervous system, and these,@@" she holds up her gloved hands "@@.npc_manager;To stimulate, well... you will soon see. I will note that this unit has been tuned down slightly from the military-spec version as I do not want to in any way risk giving you a heart attack, but it will likely be beyond anything you have felt before... and, I hope for your sake, ever again.@@"<br>
<br>
Just the description has your heart pounding — between the whips and floggers and electrics your skin is both numb and also sensitive, but stimulating your brain directly...<br>
<br>
Her hand brushes past your side, a wave of fire passing behind it. It hurts so much it takes your breath away... and then the same is repeated up your thigh. You feel like a witch being burned at the stake, writhing in agony as her barest touch causes the machine to unleash hell.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
She gives you the most painful handjob of your life — two other fingers like rods of fire thrusting into your ass and cunt
<<elseif $player.body_ref.penis>>
She gives you the most painful handjob of your life — with her other hand fingering your ass like twin rods of fire.
<<else>>
She slides two fingers into each of your holes — two rods of pure agony followed by her thumb pressing against you clit.
<</if>>
Your perversion is confirmed as this supreme punishment wraps back around and you cum — your ecstatic climax a crescendo of pain and pleasure that finally overwhelms your body as your consciousness flickers.<br>
<br>
<<printThought 'Oh <<getWordGod>>...'>><br>
<br>
Time skips for a second and you find yourself on the ground, your wrists no longer holding you in suspension the pain has stopped... and you look up to see her looming above you...<br>
<br>
[<<moveTo "event_manager_bdsm_final_6" 'Kiss her feet.' 600 "<<set $scene.kiss=true>>">>]<br>
<<if setup.getTotalValue("submission") < 15>>
[<<moveTo "event_manager_bdsm_final_6" 'Collapse.' 600 "<<set $scene.kiss=false>>">>]
<<else>>
[@@.link_locked;Even for such as this, it is a slave's duty to thank their <<=setup.getNpcName("npc_manager","title")>>.@@]
<</if>>
</div>/*#
#desc: manager final bdsm test - kiss her feet
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.kiss>>
<<incrementEmotion 'affection' 'npc_manager' 5>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.kiss>>
You struggle to move your body, to advance the scant handful of centimetres and raise your lips just high enough to kiss the toe of <<=ps(setup.getNpcName("npc_manager","title"))>> shoe...<br>
<br>
"@@.npc_manager;My, my, to prove your skills, AND go for extra credit. You really are layers of perfection.@@"<br>
<br>
You collapse in exhausted submissive joy.
<<else>>
You're overwhelmed, rising for a moment and then slumping to the floor, mentally drained, physically beaten and exhausted.
<</if>>
<br><br>
[<<moveTo "event_manager_bdsm_final_7" 'Continue.' 1800>>]
</div>/*#
#desc: manager final bdsm test - wake up
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -50>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You wake up to find yourself on <<=ps(setup.getNpcName("npc_manager","formal"))>> couch. She smiles down at you, the brush of her hand as she moves sweat-soaked hair out of your face tender and gentle.<br>
<br>
You ask how you did and she smiles. "@@.npc_manager;Amazing — not only did you willingly endure what few could... you actually came. If that is not confirmation that you are a perfect <<if $fetish.sissy>>sissy <</if>>pain-slut, well... I do not know what is. Rest, recover, you may return to your desk when you are again feeling yourself.@@"<br>
<br>
[<<moveTo "event_manager_bdsm_final_8" 'Continue.' 600>>]
</div>/*#
#desc: manager final bdsm test - finish
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'nipple_electric' true>>
<<deleteItem 'nipple_electric'>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're still exhausted from your ordeal, but you recover a bit of energy remarkably quickly.
<<if $npc_manager.affection > $npc_manager.anger>>
<<=setup.getNpcName("npc_manager","formal")>> remains at your side, handing you a glass of water or just brushing you tenderly until you muster the energy to rise, dress, and — with a parting curtsy that brings a joyful smile to her face, return to your desk.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> returns to her work as you lay on the couch and recover. Eventually you catch your breath and, your body still a bit numb, dress and return to your desk.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager final bondage test intro
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_manager', 'formal')>> that you wish to demonstrate your ability to "work" under the most restrictive of conditions.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Yes... I saw how quick you were to volunteer to spend the rest of the morning in chair bliss... made me quite jealous, mind. Of course your other duties are far too vital for me to indulge myself frequently in that regard, but if you really wish to prove yourself...@@"<br>
<br>
She grins and commands you to strip.<br>
<br>
[<<moveTo "event_manager_bondage_final_2" "Remove your clothing." 300>>]
</div>/*#
#desc: manager final bondage test initial position
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem 'ring_gag'>>
<<wearItem 'ring_gag' true>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You shed your clothes as <<=setup.getNpcName('npc_manager', 'formal')>> lays out restraints.<br>
<br>
Once naked you are swiftly, and tightly, bound to a framework and suspended in an arrangement that sees your face forming the "seat" of a chair, your bent and bound knees the reclined back, and your arms forming the padded arm-rests.<br>
<br>
"@@.npc_manager;Wonderful,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a grin before finishing things off with a ring gag and hiking her skirt to take her seat, almost immediately dripping into your open mouth as she settles back and dials into a video conference...<br>
<br>
<<set _noon = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToNoon = setup.secondsToDate($now,_noon)-1800>>
[<<moveTo "event_manager_bondage_final_3" "Enjoy bondage bliss..." _timeToNoon>>]
</div>/*#
#desc: manager final bondage test morning as chair
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 20 'skip' $SEEN_FRIEND>>
<<changeHorny 50>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your morning passes in restricted intensity. You feel every shift of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> weight... to say nothing of the constant face-sitting or the way she engages her chair's "massage" function to torment you with shocks or vibrations through your plug to make you tremble and slightly sway — though it is only ever enough to keep you teetering on the edge, gasping between her thighs but without ever climaxing.<br>
<br>
<<set _noon = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToNoon = setup.secondsToDate($now,_noon)-300>>
[<<moveTo "event_manager_bondage_final_4" "Enjoy bondage bliss..." _timeToNoon>>]
</div>/*#
#desc: manager final bondage test
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 20 'skip' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You fall into sub-space as your <<=ps(setup.getNpcName('npc_manager', 'title'))>> living throne, perpetually on the edge of orgasm as you breathe and taste nothing but her in heavenly joy.<br>
<br>
You groan softly as she steps off, your bound bliss disrupted by the loss of her comforting weight as she stands up and looks down at you.<br>
<br>
She smiles softly and brushes your cheek.<br>
<br>
<<if setup.getTotalValue("bondage") >= 19>>
"@@.npc_manager;Look at you, obediently bound all morning... and that look in your eye says you still want more.@@"<br>
<br>
You moan through your gag and nod, <<printThought "bondage is bliss...">><br>
<br>
"@@.npc_manager;Wonderful — come let us get you repositioned, I am having a friend over for lunch and I know just the perfect way for you to help...@@"<br>
<br>
Your joints are stiff but <<=setup.getNpcName('npc_manager', 'formal')>> is strong and she soon has you re-bound in a new arrangement, just in time for her guests to arrive...<br>
<br>
[<<moveTo "event_manager_bondage_final_5" "Continue." 180>>]
<<else>>
"@@.npc_manager;Enjoy your morning?@@" She reaches out to run a hand between your thighs and come away quite wet. "@@.npc_manager;Indeed you have... though you appear to be nearing your limit...@@"<br>
<br>
You whimper softly through your gag — as much as you would like to please her further, she's right, you need more practice to keep up with this level of bondage, but that doesn't mean you don't feel bad for disappointing her.<br>
<br>
She lowers you down and removes your restraints before watching you dress and sending you off to lunch.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Stagger back to your desk." 180 "<<removeItem 'ring_gag' true>><<deleteItem 'ring_gag'>><<useClothSetPop 'tmp'>><<completeWorkEvent>>">>]
<</if>>
</div>
/% adapted from bondage_final.png %//*#
#desc: manager final bondage test double sub table
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'bondage' 'machine_bondage' 'bondage_final'>>
<<applyExperience 'anal' 13 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<<applyExperience 'bondage' 20 'skip' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_harassment")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_harassment","formal")>> arrives with her cute assistant <<=setup.getNpcName("npc_harassment_assist","first")>> — the latter soon secured in mirror of your position — completely secured in a bent-over position with arms tight behind your back — ass to ass with your fellow slave/assistant, you share a double dildo as your backs form the support for a clear table — your heads pulled up so that your mouth is positioned between your respective owners' crotch to "enjoy" a lunch of your own...<br>
<br>
You moan and lick, sinking even deeper into bound bliss. You aren't just a piece of furniture — you're a part of a piece of furniture, bound secure with your fellow submissive to serve as an objectified item of functional art. Despite the stringent, strained position you find yourself relaxing into it — it's so much better to be bound, to be utterly helpless and restrained...<br>
<br>
The rest of the lunch passes in near ecstatic delight...<br>
<br>
[<<moveTo "event_manager_bondage_final_6" "Continue." 600>>]
</div>/*#
#desc: manager final bondage test finish
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are brought out of a sort of bound sub-space with a gasp as your half of the double dildo slides out of your rear, catching a fleeting glimpse of your compatriot being released of their bondage and <<=ps(setup.getNpcName('npc_manager', 'formal'))>> guests departing.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> squats down next to you, her hand gliding over your bound form. "@@.npc_manager;So beautiful, you really have reached bondage perfection...@@"<br>
<br>
You shudder in delight, so happy to have been shown the wonderful endless pleasure of total secure bondage.<br>
<br>
"@@.npc_manager;As useful as you have been, however... it is time to return to normal duties.@@" You sigh as she starts to un-lock you, strong hands guiding you back to your feet and handing you your clothes before finally sliding the gag out of your lips.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
She raises your chin to close your mouth, and then leans in for a gentle kiss. "@@.npc_manager;Beautiful — after such a tightly packed morning I imagine you could do with a bit of movement...well go ahead and take a few minutes to enjoy your lunch<<if $player.makeup.messed >= 25>> and fix your makeup<</if>>.@@"
<<else>>
"@@.npc_manager;That will be all, for now. Your performance in these matters meets my highest expectations. Well done. After such a tightly packed morning I imagine you could do with a bit of movement... well go ahead and take a few minutes to enjoy your lunch<<if $player.makeup.messed >= 25>> and fix your makeup<</if>>.@@"
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Leave her office." 60 "<<completeWorkEvent>><<set $scene.foodDelivery = {}>><<set $scene.foodDelivery.done=true>>">>]
</div>/*#
#desc: dom final - ask manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stand a little taller and inform <<=setup.getNpcName("npc_manager","formal")>> that you are ready to show her your mastery of dominance.<br>
<br>
<<if setup.getTotalValue("dominance") > 15>>
"@@.npc_manager;Mastery? Mmm, perhaps a bit ambitious there, but yes, I can see you have been practicing... <<=setup.getNpcName("npc_discipline","formal")>> always has an unruly employee or two they are dealing with... let us see how you handle such an... adversarial situation.@@"<br>
<br>
She rises from her seat. "@@.npc_manager;Come, let us visit <<=setup.getNpcName("npc_discipline","formal")>> and see if she has a likely candidate for you to help with today.@@"<br>
<br>
[<<moveTo "event_manager_dominance_final_2" "Follow." 300>>]
<<else>>
<<if setup.getTotalValue("dominance") > 10>>
She stares at you for a long moment until you reflexively flinch. "@@.npc_manager;Yes, just as I thought — you have come quite a ways, but I think you need yet more practice, particularly with a slave of your own, before it would be worth our time to test your so-called mastery.@@"
<<else>>
She seems to almost be suppressing laughter and your confidence shatters. "@@.npc_manager;Sorry but... I think you need a little, no, a LOT more practice before I would feel confident testing you on such things. As it is, well... you would, at best, embarrass yourself.@@"
<</if>>
<br><br>
She interlaces her fingers and looks at you from across the desk. "@@.npc_manager;Is there some other skill you wanted to demonstrate for me?@@"<br>
<br>
<<include "managerTrainingTests">>
<</if>>
</div>/*#
#desc: dom final - introduced to "client"
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !State.hasPlayed("event_manager_dominance_final_3")>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_3_nowhip") _TODObound>>
<div id="invframe" class="scrolltext">
A brief elevator ride takes you to <<=setup.getNpcName("npc_discipline","formal")>> floor where, after a brief explanation from <<=setup.getNpcName("npc_manager","formal")>> you are lead to a "private" dungeon room and your subject is brought in.<br>
<br>
Gagged and wearing a straitjacket, the subject's dungeon worker escort seems a bit leery around them even as they guide the subject into the room.<br>
<br>
<<if $scene.first>>
"@@.npc_discipline;Here we go — this one has been QUITE rebellious recently. I was about to start them off with some bondage therapy until next morning to cool them off, but if your assistant is looking for a challenge to prove their skill...@@"
<<else>>
"@@.npc_discipline;Unfortunately it would seem that your prior efforts were not quite up to it, and your friend here is back for another round, and opportunity for your Miss <<=$player.last_name>> to prove their skill...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_discipline","formal")>> nods towards <<=setup.getNpcName("npc_manager","formal")>> and then yourself. "@@.npc_discipline;This will definitely serve as a good demonstration opportunity.@@"<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> points towards the upper corners of the room. "@@.npc_discipline;We record everything for security and training purposes, but I am sure you want to focus on things without interference. I will be back in an hour or so — unless you run into particular difficulty before then. Good luck!@@"<br>
<br>
You are handed a ring of keys for your "subject's" restraints and then everyone else files out of the room — locking the door and leaving you alone with the employee — the intimidating qualities of their angry, confident stare somewhat lessened by the massive gag that has been tightly buckled into their mouth.<br>
<br>
You consider your approach...<br>
<br>
<<if (setup.checkItemInInventory("drug_master") || setup.checkItemInInventory("drug_master_plus")) && !$tempEffects.hasOwnProperty('drug_master')>>
<<printThought "Maybe I should pre-game with a dose of <<=setup.getItemName('drug_master')>>?">><br>
<br>
[<<moveTo "event_manager_dominance_final_3_drug" 'Pop a quick dose of <<=setup.getItemName("drug_master")>>.' 120>>]<br>
<</if>>
[<<moveTo "event_manager_dominance_final_3" "Establishing control starts with building trust — remove their restraints." 300 "<<set $scene.restraints=false>>">>]<br>
[<<moveTo "event_manager_dominance_final_3" "Secure them to one of the bondage aparati so that you can proceed in safety." 300 "<<set $scene.restraints=true>>">>]
</div>/*#
#desc: dom final: take drug
#status: RELEASED 0.8.7.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory("drug_master")>>
<<deleteItem 'drug_master'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<<elseif setup.checkItemInInventory("drug_master_plus")>>
<<deleteItem 'drug_master_plus'>>
<<applyExperience 'dominance' 15 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.flags.drugs.master += 1>>
<<setTmpEffect 'drug_master'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" _TODObound>>
<div id="invframe" class="scrolltext">
You pop a quick shot of <<=setup.getItemName('drug_master')>> and feel a rush of dominant energy run through you. You stand a little taller as you step forward, your bound subject flinching slightly under your confident gaze as you consider how to kick things off...<br>
<br>
[<<moveTo "event_manager_dominance_final_3" "Establishing control starts with building trust — remove their restraints." 300 "<<set $scene.restraints=false>>">>]<br>
[<<moveTo "event_manager_dominance_final_3" "Secure them to one of the bondage aparati so that you can proceed in safety." 300 "<<set $scene.restraints=true>>">>]
</div>/*#
#desc: dom final - restrain or re-bind client
#status: RELEASED 0.8.6.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.restraints>>
<<applyExperience 'dominance' 18 'very' $SEEN_STRANGER>>
<<else>>
<<set $scene.winFight = setup.getTotalValue("martial_arts") > 15 && setup.getTotalValue("strength") > 10>>
<<if $scene.winFight>>
<<applyExperience 'dominance' 20 'very' $SEEN_STRANGER>>
<<applyExperience 'martial_arts' 15 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'martial_arts' 15 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.restraints>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" _TODOrestrained>>
<<else>>
<<if $scene.winFight>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" _TODOgagged>>
<<else>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3_nowhip") _TODOgagged>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.restraints>>
Mindful of the look of anger above their gag you lead your charge over to a convenient X-frame where you systematically re-bind them — strapping and locking their torso and legs to the frame before releasing one arm at a time from their straitjacket so that at no point do they have any meaningful freedom to effect an escape.<br>
<br>
Only after letting them strain against their bonds, and doing a follow-up tightening pass to prevent even that modicum of movement, do you reach for their gag.<br>
<br>
Their jaw strains as you remove the large gag, trailing drool as they glare at you and attempt to comfortably close their mouth.
<<else>>
You smile at your temporary ward and start unlocking their restraints, remarking that they would probably appreciate being able to stretch a bit before you get into things.<br>
<br>
Given their demeanour it is little surprise when your charge attacks you the moment they are free of the straitjacket.
<<if $scene.winFight>>
Though they outsize you by a dozen or so kilos you almost casually turn their attack into a throw that sees them on the ground pinned beneath your knee. Keeping the same smile and friendly tone you softly chastise them for "tripping" but assure them that you are here to take care of them and ask if they are ready for you to remove their gag?<br>
<br>
Their expression of anger momentarily replaced by one of fear you can see them doing the calculus about how easily you thwarted their escape attempt... having weighed further disobedience against their clearly aching jaw they nod.<br>
<br>
You smile and reach down to unbuckle the gag, thanking them for being willing to talk with you.<br>
<br>
You get the feeling that your kindness has them off-guard as they look to be about to thank you for removing the gag before stubbornly clamming up.
<<else>>
<<if setup.getTotalValue("strength") <= 10>>
<<if setup.getTotalValue("martial_arts") > 10>>
You have the martial skill to recognise their attack, but you started out too close and they manage to overpower you with raw strength.
<<if setup.getTotalValue("martial_arts") > 15>>
Given a little more time you could have easily turned the tables against their novice skill, but
<<else>>
Your skills are enough to keep you out of danger, but before you can even consider going on the offense
<</if>>
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
You barely even see the attack coming before their superior strength has you pinned. Before you can wonder what they plan to do next
<<else>>
You are all but helpless as they grab on to you, but, fortunately
<</if>>
<</if>>
<<else>>
You may be stronger than your opponent, but they have the advantage of surprise,
<<if setup.getTotalValue("martial_arts") > 10>>
and you don't get the time to deploy your martial arts training before
<<elseif setup.getTotalValue("martial_arts") > 5>>
and they are too fast for your modest martial arts skills to compensate for. Fortunately
<<else>>
your meager skills are all but worthless as they grab onto you, but, fortunately
<</if>>
<</if>>
a group of dungeon guards rush the room and pull them off.<br>
<br>
As your charge is wrestled to the ground and hog-tied <<=setup.getNpcName("npc_discipline","formal")>> re-appears, shaking her head in disappointment as she helps you to your feet. "@@.npc_discipline;You really must show better judgement — without the skills to handle an unruly slave you should rely on the bondage to keep you — and them, safe.@@"<br>
<br>
You nod, thanking her for the rescue before she sends you back to your office.<br>
<br>
[<<moveTo "event_manager_dominance_final_fail" "Back to the office." 300>>]<br>
<</if>>
<</if>>
<<if $scene.restraints || $scene.winFight>>
<br><br>
Deciding that some more information would be in order, you ask your subject what caused them to be sent for remedial discipline?<br>
<br>
<<if $scene.restraints>>
Unsurprisingly, their tone is hostile. "@@.generic_female1;Because my manager is a cruel bitch! Chastity at work is one thing, but the slightest error and they refuse to give me the key to take home! I finally got fed up and stole it from their office while they were at a meeting. I'd been on edge for so long I just couldn't resist unlocking for a quickie at my desk... I deserved that orgasm, and I've been so, so horny since <<=setup.getNpcName("npc_work_doctor","formal")>> adjusted my medication. Being sent here just for being caught — it's not fair! I had already finished my work for the day, I needed that relief! Plus, like... if they hadn't come back from their meeting early they never would have even known! It was a victimless crime!@@"
<<else>>
Your kindness seems to have put them at ease, their voice soft as they explain their situation. "@@.generic_female1;My manager caught me fingering myself at my desk<<if !$scene.first>> again<</if>>, but it's not my fault! Ever since <<=setup.getNpcName("npc_work_doctor","formal")>> adjusted my medication I've been so horny, and I hadn't been out of chastity for over a week! My manager using the slightest failure as an excuse to refuse my request to take the key home with me... I guess I just lost control of myself, but it's not fair! I had finished my work for the day, and their office was open... how could I resist borrowing the key while my manager was at a meeting? Plus — if they hadn't come back early and caught me they never would have even known... it was a victimless crime! And to be sent here for such a minor offense... my manager is so cruel!@@"
<</if>>
<br><br>
[<<moveTo "event_manager_dominance_final_4" "Comfort them about their failure." 300 "<<set $scene.punish=false>>">>]<br>
[<<moveTo "event_manager_dominance_final_4" "Berate them for their failure." 300 "<<set $scene.punish=true>>">>]<br>
<</if>>
</div>/*#
#desc: dom final - failure
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You return to your office where you find <<=setup.getNpcName("npc_manager","formal")>> waiting. She shakes her head in disappointment. "@@.npc_manager;It would seem you yet require additional practice. I realise that this is probably quite a challenge compared to some of the more... trained and obedient submissives you have dealt with previously, but you must be able to handle a worst-case scenario if I am to give my approval of your skills in these matters.@@"<br>
<br>
She returns to her office, leaving you to get back to your desk and your "normal" work.<br>
<br>
<<printThought "Really... is anything at this company truly normal?">><br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: dom final - verbally address their failure
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.punish>>
<<applyExperience 'dominance' 17 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'dominance' 19 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.restraints>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" _TODOrestrained>>
<<else>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" _TODOunrestrained>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.punish>>
You frown at their description and proceed to harshly summarise all the things they did wrong — from insulting their <<if $scene.restraints>>manager, and their <</if>>manager's judgement, to their various work failures that kept them locked, to the final, monumental error in not just stealing from their manager, but abusing themselves in the middle of a workday!<br>
<br>
"@@.generic_female1;But, I—@@" they start to object only for you to silence them with a slap, reiterating that their so-called "victimless crime" was actually a severe violation, not just against their manager, but against themselves — devastating their own progression by violating their chastity requirements. They're still reeling from the slap as you confirm that they absolutely deserved to be sent for remedial discipline — and that you will make sure they get plenty of it to keep them from ever even considering any future acts of rebellion.
<<else>>
You comfort them about their situation, even as you remind them that the harsh treatment is for their own good. After all, they knew what they were getting into when they accepted the job, to subvert such a basic tenet of company policy as chastity is clearly quite the violation.<br>
<br>
They start to try to argue but you gently shush them as you continue to explain that chastity is meant to be hard — but that it serves to make them a better, more obedient employee. After all, you point out — did their insubordinate orgasm give them relief? They blush and respond that no... they were on orgasm number three when they were finally caught.<br>
<br>
You nod in understanding, explaining that this is because, despite their rebellious act, they have actually accepted that self-pleasure is a false <<getWordGod>>. If they had focused on service, on trusting their manager's judgement, well... they wouldn't have ended up here. But, you add, they can embrace the situation, to turn this punishment into an opportunity for further growth.<br>
<br>
Your words seem to be getting through to them, at least a little, enough so that they have stopped attempting to deny or justify their blunder.
<</if>>
<br><br>
Your judgement delivered, you note that they remain out of chastity, and you consider how you can reinforce your words with some physical stimulation...<br>
<br>
[<<moveTo "event_manager_dominance_final_5" "Give them some relief." 300 "<<set $scene.edge=false>>">>]<br>
[<<moveTo "event_manager_dominance_final_5" "Edge them until they beg for punishment." 300 "<<set $scene.edge=true>>">>]
</div>/*#
#desc: dom final - pleasure
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.edge>>
<<applyExperience 'dominance' 15 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'dominance' 20 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.restraints>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" _TODObound>>
<<else>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" _TODOunrestrained>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.edge>>
You reach for a wand and explain that, since they were so desperate for stimulation... you are going to provide such. They're too distracted by the prospect to note the tone in your voice, but they soon realise your true plan as you vibe them hard, only to pull away whenever they get too close to a climax.<br>
<br>
<<if $scene.restraints>>
Desperately they thrash in their restraints, but they barely move, unable to either escape or embrace the wand as you remain in complete control, edging them mercilessly until they start
<<else>>
You keep them pinned through their desperate flailing as you repeatedly edge them. Your ability to control them without so much as a cuff while preventing them from either escaping or embracing the powerful wand leads them
<</if>>
to sob in desperation, begging you for mercy.<br>
<br>
You do not let up, forcing them to first recant their prior testimony, to admit to their crimes in full and beg — not for forgiveness, but for you to punish them properly "like they deserve." <br>
<br>
Only after they have thrice pleaded for corrective punishment do you turn off the wand and step away, their chest heaving as their body goes almost limp.
<<else>>
You reach for a wand and set it to low, gently pressing it against their most private regions as you interrogate them on the experience — how receiving pleasure from another is so much better than stealing it for oneself. How much better such a prize is when earned, rather than being stolen.<br>
<br>
They moan through a soft orgasm and begin to nod in agreement. As you guide them towards another you inter-mix bursts of stronger vibrations, each intense tease building them up higher until they are panting, your whispers of encouragement coming to a head when you click the switch to off with them right on the edge, asking them if they deserve the orgasm that lies so close...<br>
<br>
They hesitate, their lust-addled brain taking a few extra moments to process things before they whisper a sorrowful "@@.generic_female1;No, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I do not deserve such pleasure until I have made up for my prior errors. I need to be punished.@@"<br>
<br>
They hesitate, but you wait patiently. "@@.generic_female1;Please, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... would you punish me like I deserve?@@"<br>
<br>
You smile, and reply "@@.pc;Of course.@@"
<</if>>
<br><br>
You put the wand away and consider what sort of punishment to administer...<br>
<br>
[<<moveTo "event_manager_dominance_final_6" "Punish them moderately." 600 "<<set $scene.pain=false>>">>]<br>
[<<moveTo "event_manager_dominance_final_6" "Punish them mercilessly." 600 "<<set $scene.pain=true>>">>]
</div>/*#
#desc: dom final - punish
#status: RELEASED 0.8.6.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pain>>
<<applyExperience 'dominance' 15 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'dominance' 17 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.restraints>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" _TODObound>>
<<else>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" _TODOunrestrained>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.pain>>
You grab an electric baton, sparking it twice to test things before approaching your charge.<br>
<br>
Already sensitive from <<if $scene.edge>>edging<<else>>orgasms<</if>> they howl in pain... and even a little
<<if $scene.restraints>>
pleasure, thrashing against their restraints
<<else>>
pleasure, writhing on the floor
<</if>>
as you send painful shocks through their body, working your way inward before jamming the smooth tip of the baton inside them and firing off a powerful jolt that has them go completely rigid and then utterly deflate.<br>
<br>
"@@.generic_female1;Th-thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>,@@" they whisper. You smile at the authenticity, the harsh punishment seeming to have had the desired effect and you turn off the baton to leave the room silent save for the exhausted pants of your ward.
<<else>>
You forgo the cruel electronic baton to go hands on, using fingernails and quick slaps to her inner thighs and rear, deploying a combination of perfect timing and aim to have her yelp and gasp, each individual blow or claw mild on its own, but combining together to leave her breathing hard and moaning her apology.<br>
<br>
"@@.generic_female1;Th-thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>,@@" they whisper, their obedience earning them an acknowledgement before you ask if they are ready for more?<br>
<br>
"@@.generic_female1;Please... I... I deserve it.@@"<br>
<br>
You smile at the authenticity, the gentle punishment seeming to have had the desired effect and you resume, continuing on with the seemingly gentle additive torment until your ward is panting for relief.
<</if>>
<br><br>
You step back to let them recover. Several minutes pass before they speak again, their voice soft, submissive, all of the anger that they had when you first met them dissipated.<br>
<br>
[<<moveTo "event_manager_dominance_final_7" 'Bind them and return them to <<=setup.getNpcName("npc_discipline","formal")>>.' 300>>]
</div>/*#
#desc: dom final - bind and return
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pain>>
<<applyExperience 'dominance' 15 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'dominance' 17 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Employee Discipline Anex">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_private_dungeon.png" setup.charImage("npc_discipline","npc_discipline_3_nowhip") _TODObound>>
<div id="invframe" class="scrolltext">
<<if ($scene.restraints && $scene.punish && $scene.edge && $scene.pain || !$scene.restraints && !$scene.punish && !$scene.edge && !$scene.pain) && setup.getTotalValue("dominance") >= 19>>
"@@.generic_female1;<<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>? I think I'm ready to return to my manager now... only... I don't want to go back to them without my required chastity. Is there anything more secure that I could be locked in?@@"<br>
<br>
<<if $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $player.sec_style.submission.sissyomatic != "">>
You smile and reply that you know EXACTLY what they need, using the intercom to contact <<=setup.getNpcName("npc_discipline","formal")>> and request a 9001-series chastity device.
<<else>>
You smile and reply that you will see what you can do, using the intercom to contact <<=setup.getNpcName("npc_discipline","formal")>> who says she'll arrange for a 9001-series chastity device.
<</if>>
<br><br>
A couple minutes pass and a dungeon guard appears bearing the new device. Your charge gawks at the intimidating belt that will have them secured AND filled, but a smile of encouragement from you has their confidence steeled and they nod in obedient acceptance.<br>
<br>
Swiftly locked they gasp, and then moan as the device's electronics and vibration functions are tested and then it's time for their straitjacket and gag to be replaced as you deliver them back to <<=setup.getNpcName("npc_discipline","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> immediately recognises the change in demeanour and nods at you, clearly impressed.<br>
<br>
"@@.npc_discipline;Well, it would appear that working for the best has rubbed off on you! Yes, I do not think I will be seeing this one again... unless they request some extra discipline as a reward!@@" She grins as your temporary charge blushes "@@.npc_discipline;And, from the look of things... I would not be surprised at that!@@"<br>
<br>
The slave collared and lead away to be returned to their manager you curtsy to <<=setup.getNpcName("npc_discipline","formal")>> in parting and then leave.
<<else>>
<<if $scene.restraints && $scene.punish && $scene.edge && $scene.pain || !$scene.restraints && !$scene.punish && !$scene.edge && !$scene.pain>>
You watch their reaction, and you can tell that they are near a submissive breakthrough, but then the spark fades. You're certain your methods were sound, it would seem you need a bit more practice and refining of your overall technique...
<<elseif setup.getTotalValue("dominance") >= 19>>
You watch their reaction, and you can tell that they are near a submissive breakthrough, but then the spark fades. You are certain your skills were on point, perhaps if you had taken a different approach?
<<else>>
You watch their reaction, while they are looking in a much more submissive place than your first meeting you are unsure if the training will hold.<br>
<br>
<<printThought "Hmm, I think I need to refine my techniques, and maybe make some different choices if I'm going to REALLY get through to them...">>
<</if>>
<br><br>
"@@.generic_female1;<<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>? I think I'm ready to return to my manager now... could I have my chastity belt back? I see, now, how wrong I was to usurp control.@@"<br>
<br>
You smile and say you'll take care of it, using the intercom to call for a dungeon guard to deliver a chastity device.<br>
<br>
Once things are locked on you proceed to <<if $scene.restraints>>take them down and<</if>> put them back in the straitjacket and replace their gag before the two of you walk back out to meet <<=setup.getNpcName("npc_discipline","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> takes delivery of the cowed slave with a nod. "@@.npc_discipline;Good, let us hope the lesson takes this time — thank you for the assistance, Miss <<=$player.last_name>>.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_dominance_final_8" 'Return to your office.' 300>>]
</div>/*#
#desc: dom final - assessment
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "checkHeadgirlMC">>
<<if setup.getTotalValue("dominance") >= 19>>
<<if $scene.restraints && $scene.punish && $scene.edge && $scene.pain>>
<<setThreshold 'dominance' 'dominance_other' 'dom_final_harsh'>>
<<elseif !$scene.restraints && !$scene.punish && !$scene.edge && !$scene.pain>>
<<setThreshold 'dominance' 'dominance_other' 'dom_final_gentle'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You report back to <<=setup.getNpcName("npc_manager","formal")>> and she greets you with a nod.<br>
<br>
<<if setup.getTotalValue("dominance") >= 19>>
<<if $scene.restraints && $scene.punish && $scene.edge && $scene.pain>>
"@@.npc_manager;Today's performance was spectacular — while you were quite harsh in your treatment of your temporary ward the results speak for themselves — going from masturbating at work without permission to politely requesting a more secure chastity device? that was excellently done and I would certainly trust you to be my left hand for this sort of thing.@@"
<<elseif !$scene.restraints && !$scene.punish && !$scene.edge && !$scene.pain>>
"@@.npc_manager;Today's performance was spectacular — the way you broke down their barriers with kindness, it is the rare dominant indeed that can so effectively have a slave eating out of their hand. And the proof is in the pudding, going from masturbating at work without permission to politely requesting a more secure chastity device? That was excellently done and I would certainly trust you to be my left hand for this sort of thing.@@"
<<else>>
"@@.npc_manager;I was watching along as you worked, and I just finished hearing <<=ps(setup.getNpcName("npc_discipline","formal"))>> assessment... while we were both impressed by your technique, your decisions were a bit less inspiring. One needs to establish consistency when dealing with a submissive, a common theme over the course of a scene, and beyond... your actions today were, to put it simply, a bit muddled. While you are practicing I recommend you devote additional thought on what sort of dominant you want to be.@@"
<</if>>
<<else>>
<<if $scene.restraints && $scene.punish && $scene.edge && $scene.pain>>
"@@.npc_manager;I was watching along as you worked, and I just finished hearing <<=ps(setup.getNpcName("npc_discipline","formal"))>> assessment... while we both see some promise we are also in agreement that you need further refinement. Your choices in the moment were quite cohesive, if, in this case, somewhat on the cruel side, but you just need that little extra skill to properly execute on your plan. Dominance is all about the details — the slightest shift in tone, a wrong glance... such things can easily plant seeds of doubt or rebellion in a submissive. A bit more practice, however and you could be an intimidating force.@@"
<<elseif !$scene.restraints && !$scene.punish && !$scene.edge && !$scene.pain>>
"@@.npc_manager;I was watching along as you worked, and I just finished hearing <<=ps(setup.getNpcName("npc_discipline","formal"))>> assessment... while we both see some promise we are also in agreement that you need further refinement. Your choices in the moment were quite cohesive, your use of more subtle, psychological domination almost inspired, but, unfortunately, your skills are not quite at the level to fully execute on your plans. Dominance is all about the details — the slightest shift in tone, a wrong glance... such things can easily plant seeds of doubt or rebellion in a submissive. A bit more practice, however and you could be a seductive force.@@"
<<else>>
"@@.npc_manager;I was watching along as you worked, and I just finished hearing <<=ps(setup.getNpcName("npc_discipline","formal"))>> assessment... while we both see some promise we are also in agreement that you need further refinement. Both in your technique, and your choices. One needs to establish consistency when dealing with a submissive, a common theme over the course of a scene, and beyond... your actions today were, well... a bit muddled. While you are practicing I recommend you devote additional thought on what sort of dominant you want to be.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager returns from a meeting needing a pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Returning from a meeting <<=setup.getNpcName('npc_manager', 'formal')>> storms through the office.<br>
<br>
"@@.npc_manager_dom;Follow@@" she snaps as she passes by, and you divert from trying to keep the papers on your desk from getting caught up in her wake to hurry after her.<br>
<br>
Only after she has taken a seat in the small couch in her inner office and put her feet up does she start to calm down and explain. "@@.npc_manager;Sorry if I frightened you, my dear, but I just got out of a meeting that was... well, infuriating is putting it too lightly, made even worse by it running long and making me miss an appointment for a pedicure...@@"<br>
<br>
Her voice trails off as she meets your gaze, "@@.npc_manager;Well come on, then, stop the statue routine and attend to my feet — I chipped the polish last night and SOMEONE needs to deal with these things. It will be good practice for you. Supplies are in my desk, bottom left drawer, hurry up now.@@"<br>
<br>
Even just the indirect splash of <<=setup.getNpcName('npc_manager', 'formal')>> in full fury has you jumping to obey and you quickly find the neatly organised box of supplies. You kneel at her feet and lay things out as she gives instructions.<br>
<br>
[<<moveTo 'event_manager_foot_random_2' 'Continue.' 600>>]
</div>/*#
#desc: manager teaches you to do her pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 10 'normal' $SEEN_FRIEND>>
<<setThreshold 'foot' 'secretary_foot' 'pedicure'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
After removing <<=ps(setup.getNpcName('npc_manager', 'formal'))>> shoes and peeling off her nylons you get to work. You start off with one of your famous foot massages to help her calm down, then follow her precise instructions to use cleaner to carefully remove her old, damaged polish, before oh-so-carefully refreshing the coat.<br>
<br>
You leave things to dry and repeat on the other foot, going back and forth as you clean, base, colour, colour, topcoat as she softly sighs.<br>
<br>
"@@.npc_manager;Ah, much better. Sometimes it is the small details that bring the world into focus. Thank you for helping me with this matter.@@"<br>
<br>
[<<moveTo 'event_manager_foot_random_3' 'Show your gratitude by kissing her feet.' 180 "<<set $scene.sub=true>>">>]<br>
[<<moveTo 'event_manager_foot_random_3' 'Finish putting her shoes back on.' 180 "<<set $scene.sub=false>>">>]<br>
</div>/*#
#desc: option to kiss manager feet after pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.sub>>
<<applyExperience 'foot' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<</if>>
<<addNpcTheme 'npc_manager' 'voluntary_punishment' 'theme_manager_pedicure'
3
'event_manager_pedicure_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_pedicure'
3
'event_psychiatrist_pedicure_1'
true
>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('pedicure')>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.sub>>
Leaning in close you gently kiss <<=ps(setup.getNpcName('npc_manager', 'formal'))>> toes before replacing her stockings and shoes.<br>
<br>
As you roll the stockings up her legs you look up to find her smiling down at you, clearly appreciating your subservience.<br>
<br>
"@@.npc_manager;Good girl,@@" she states, reaching out to gently pat you on the head, "@@.npc_manager;I do so love having you at my feet. Literally, as well as figuratively... alas, it is time for the both of us to return to work. I hope you found today's task edifying. You certainly showed quite the natural affinity.@@"
<<else>>
You gently roll up her stockings and slide on her shoes as <<=setup.getNpcName("npc_manager","formal")>> watches on.<br>
<br>
"@@.npc_manager;Well done, I hope you learned something today, this sort of thing is quite the useful skill to have, a good compliment to your talents of foot massage.@@" She rises to her feet and gestures for you to return to work.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
</div>/*#
#desc: volunteer to give manager a pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.test = false>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if setup.checkItemInInventory('pedicure_kit')>>
You ask <<=setup.getNpcName("npc_manager","formal")>> if you could give her a pedicure? Her eyes light up as a smile blossoms across her face.<br>
<br>
"@@.npc_manager;Why, that sounds just lovely...@@"<br>
<br>
She moves to the couch and puts her feet up while you unpack supplies.<br>
<br>
<<if setup.getTotalValue("foot") >= 15>>
[@@.link_locked;Refrain from lavishly worshipping her feet? Never!@@]<br>
<<else>>
[<<moveTo 'event_manager_pedicure_2' 'Just give her the spa experience.' 1800 "<<set $scene.worship=false>>">>]<br>
<</if>>
<<if setup.getTotalValue("foot") < 10>>
[@@.link_locked;No need to go overboard and start worshipping her feet or anything...@@]<br>
<<else>>
[<<moveTo 'event_manager_pedicure_2' 'Worship her feet.' 1800 "<<set $scene.worship=true>>">>]
<</if>>
<<else>>
<<if setup.checkItemOwned('pedicure_kit')>>
You are about to offer <<=setup.getNpcName("npc_manager","formal")>> a pedicure when you remember that you left the kit at home.<br>
<br>
<<printThought "Hmm, best not to bother her if I can't deliver, need to remember to bring it with me next time!">>
<<else>>
You consider offering <<=setup.getNpcName("npc_manager","formal")>> a pedicure, but you don't really have the supplies.<br>
<br>
<<printThought "Probably more impressive if I have everything ready, maybe I should check out the mall?">>
<</if>>
<br><br>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: give manager a pedicure
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.worship>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'foot' 17 'skip' $SEEN_FRIEND>>
<<set $player.flags.worshipPedicure.manager = true>>
<<else>>
<<set $player.flags.basicPedicure.manager = true>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if !setup.hasThreshold('foot', 'secretary_foot', 'eager_pedicure')>>
<<applyExperience 'foot' 13 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'foot' 13 'skip' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if !setup.hasThreshold('foot', 'secretary_foot', 'eager_pedicure')>>
<<setThreshold 'foot' 'secretary_foot' 'eager_pedicure'>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.worship>>
You slide to your knees at <<=ps(setup.getNpcName("npc_manager","formal"))>> feet, where you belong.<br>
<br>
Taking her perfect foot in hand you shower it with kisses, cleaning her shoe with your tongue and sucking the thin, stiletto heel before gently slipping it off and moving up her legs to peel off her stockings.<br>
<br>
Her bare feet exposed you caress them with a moan, pressing your face against her soles as she smiles and pushes back to lightly step on you.<br>
<br>
<<printThought "Yes...">><br>
<br>
As much as you would like nothing more than to just suck her toes and get trampled under foot you have a job to do. Trimming, clipping and filing you soon have her feet submerged in a therapeutic salt-bath, spending the time while she's soaking polishing up her shoes.<br>
<br>
A full exfoliation is followed with your best foot massage, a scrub, and then re-application of her polish stroke by gentle brush-stroke.<br>
<br>
Once it is all dry you remove the pads from between her toes and give each shiny polished nail a kiss. She wiggles her toes and leans over with a smile.
<<if $player.flags.worshipPedicure.technician && $player.flags.worshipPedicure.psychiatrist>>
"@@.npc_manager;Good girl, such a lovely foot-slave...@@"
<<elseif $player.flags.worshipPedicure.technician || $player.flags.worshipPedicure.psychiatrist>>
"@@.npc_manager;Good girl, you have really developed into a skilled foot-slave, I can tell you have been practicing.@@"
<<else>>
"@@.npc_manager;Good girl, but I think you could do with more varied practice. As much as I appreciate your work I think getting out and working on some other feet would really help to round out your skills...@@"
<</if>>
<br><br>
You blush as you buckle her shoes back onto her lovely feet, collecting your things and rising with a curtsy.
<<else>>
Swiftly removing her heels and peeling off her pantyhose you get to work, stripping her existing nail polish before carefully clipping, trimming and filing each surprisingly hard nail into shape.<br>
<br>
You quickly dash to the bathroom to fill your basin with hot water and then stir in plenty of salt, a few drops of oil, and some smooth pebbles. While she soaks you move up and massage her calves as she leans back and purrs in contentment.<br>
<br>
After she has enjoyed a nice soak you carefully dry her feet with a soft towel, apply a dab of cuticle cream, and then start in with the exfoliator. "@@.npc_manager;Mmm, a bit harder...@@" She softly commands as you scrub away.<br>
<br>
Giving both feet a second pass to make sure you have removed every last of dried out skin cells you clean and moisturise, giving her one of your long, thorough foot massages before finally moving on to the polish. Base coat, colour, top coat you give things plenty of time to dry to maximise durability, finishing things off with a kiss on each pretty toe.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> wiggles her toes and smiles. "@@.npc_manager;Ah, such a nice way to end the work-day, you really are the sweetest slave, my gorgeous good girl.@@"<br>
<br>
You blush as you help her back into her shoes and pack things up.
<</if>>
<br><br>
<<if $scene.test>>
<<if setup.hasThreshold('foot', 'secretary_foot', 'shoeshine_station')>>
As you pack up she smiles. "@@.npc_manager;A decent effort, but I think some more rigorous practice is in order. Maybe some hard work here at the office? I am sure there is somewhere you could get in some good hard work...@@"<br>
<br>
You find yourself thinking back to your "eventful" office move...
<<else>>
As you pack up she smiles. "@@.npc_manager;A decent effort, but you yet need to hone the breadth of your skills a bit more before I can give my final seal of approval... maybe you could get in some practice with a friend?@@"<br>
<br>
<<printThought "Hmm... who else do I know who might appreciate a personal pedicure?">>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to work." 180 "<<completeWorkEvent>>">>]
<<else>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: foot fetish mastery
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 20 'skip' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You drop to your knees as <<=setup.getNpcName("npc_manager","formal")>> walks over to stand above you. Looking imperiously down she watches as you press your cheek to the floor, kissing her toes and then worshipfully working your way up her foot, whispering your gratitude for being allowed such a wondrous privilege.<br>
<br>
"@@.npc_manager;An auspicious start, but just a start...@@" She walks over to the couch and you crawl after. Cross-legged she dangles one foot in front of your face.<br>
<br>
You lean forward and embrace her foot, cleaning her shoe with your kisses and sucking on her tall, thin heel, the rapturous expression on your face saying far more than words ever could how much you love serving her in this way. Of course one of the beauties of feet is that they usually come in pairs and you have no sooner finished tongue-polishing one foot than she switches legs to present you with a second, just-as-divine foot to lavish.<br>
<br>
Upping the ante she rubs one foot between your legs, teasing your chastity as you finally unbuckle her shoe to reveal the sheer-stockinged foot within. Like a master musician your fingers dance over her arches and up her calf, unraveling the smallest knot, massaging away any trace of tightness, all while your lips take turns sucking on her beautiful toes.<br>
<br>
Her foot pressed against your face you moan your thanks, showering her with praise as you tell her how much you love and deserve to be beneath her feet. "@@.npc_manager;Such a good foot slave, but what about me, hmm? You've spent all this time rubbing against me, but I thought you were going to clean my feet, not just slobber all over them...@@"<br>
<br>
"@@.pc;Yes, <<=setup.getNpcName("npc_manager","title")>>,@@" you softly reply as you break away for a moment to prepare water and the rest.<br>
<br>
[<<moveTo 'event_manager_foot_final_2' 'Return to where you belong.' 600>>]
</div>/*#
#desc: foot fetish mastery
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'foot' 'secretary_foot' 'foot_final'>>
<<applyExperience 'foot' 20 'skip' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Basin in hand you return to where you are meant to be, at <<=ps(setup.getNpcName("npc_manager","formal"))>> feet, to exfoliate, wash, and then gently dry her feet.<br>
<br>
Kissing each divine digit you switch to lotion, moisturising her already perfect skin in another loving massage that has her smiling in approval.<br>
<br>
Last, but certainly not least, is her nails. Though her current polish looks nigh perfect you clear it off and go to work, reshaping each beaded gem of keratin like you were polishing a diamond before painting them anew, look rapturously up while each coat dries before finishing things off with ten tender kisses.<br>
<br>
Rolling fresh nylons up her legs is almost meditative as you come down from your foot smorgasbord. Her beautiful feet slide perfectly into her heels and she rises anew, looking down as you softly kiss her toes one final time, careful not to mar the polished perfection.<br>
<br>
"@@.npc_manager;Now THAT is a foot slave. Wonderfully done, you have shown your expertise in yet another aspect of your duties, and for that, I congratulate you.@@"<br>
<br>
Your heart flutters as you rise to your feet, her smile making you almost giddy with joy as you curtsy in thanks, and then return to your desk to resume your "normal" work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
</div>/*#
#desc: manager assigns you task to demonstrate HR skills
#status: FINISHED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.evil == 1>>
<<completeWorkEvent>>
<<initRoom>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addWorkEvent 'hr_training_sales' _nextDate>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> summons you to her office and looks you over with a discerning eye.<br>
<br>
"@@.npc_manager;I have been reflecting on some of your recent efforts, your ability to rise to the occasion of acting in my stead. Obviously this is not what I was expecting when I originally hired you but, upon reflection... having a <<if $fetish.sissy>>SISSI <</if>>Secretary who could act as my right hand, rather than merely my assistent... well, that would be useful, indeed. Particularly should I move up, knowing that you could take care of the HR department, well...@@" she lets her voice trail off, a subtle reminder that <<=setup.getNpcName('npc_boss', 'formal')>> would need to be out of the way before any such plans could be executed.<br>
<br>
"@@.npc_manager;Thus far your actions have been superb, to say nothing of your world-class skills, but being in charge of HR is about more than mere scheduling or even dominance and submission, it also means making judgement calls in how to not just mindlessly apply policy, but resolve problematic situations in a way that is optimised for all parties. Towards that end, I have a task for you, a way to both expose you to a wider range of responsibilities, as well as assess your abilities.@@"<br>
<br>
[<<moveTo "event_manager_training_sales_1_discipline_2" "Listen to the assignment." 120>>]
</div>/*#
#desc: briefed on sales associate
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;So, there is a certain salesperson who, despite a quite impressive record of efficiency, has proven to be a bit of a problem. Specifically, they have been abusing their expense account to pay for overly lavish travel and hotels, as well as other frivolities, while lying and miscategorising said expenses as being directly related to customers. They have been admonished before, even forced to pay back their overage... but the behaviour persists and it has come time to take additional measures. Given their tenure in the sales department, and the money involved, this problem has been escalated to me, directly... and I want you to solve it.@@"<br>
<br>
She looks you in the eye, a twinkle of pride augmenting her serious expression. "@@.npc_manager;You will meet with <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> on my behalf, and resolve the situation. Towards that end you may act with my FULL authority... but know that you will be assessed on your decision, and that decision will stand. Part of leadership means acting definitively, and this is one of those situations where there are no second chances.@@" She slides a packet across the table, "@@.npc_manager;They are usually on the road, but while in town they are in that office. Head down and return once you have resolved the situation.@@"<br>
<br>
<<hint $options "Proving yourself in this manner requires perfectionism. You will only get one opportunity to progress down this path.">>
[<<moveTo "event_manager_training_sales_1_discipline_3" "Head off to the sales department..." 300>>]
</div>/*#
#desc: meet sales associate
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You review the packet as you head down to the executive sales department and locate <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> temporary office. From the numbers they are certainly a skilled sales<<man>>, one of the top in the company, in fact, and their bloated expense account is all that's keeping them from being a true exemplary employee. You ponder your options as you weave through the halls.<br>
<br>
Just before you arrive at <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> office you almost run into another Secretary heading in the other direction. Their hair is slightly unkempt and they're walking a bit strange, the expression on their face suggesting that they are still coming down from one hell of a an orgasm.<br>
<br>
You smile at your colleague and continue forward, entering the office to find <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> with <<his>> feet up on <<his>> desk.<br>
<br>
"@@.generic_male1;Another one? There must have been a scheduling mistake, I am quite satisfied and do not need another assistant at this time...@@" <<he>> looks you over with a smile, "@@.generic_male1;Not that you are not QUITE a lovely corporate slut, sights like yourself do make me miss the home office, but the road is where the customers are!@@"<br>
<br>
[<<moveTo "event_manager_training_sales_1_discipline_4" "Reprimand <<him>> for the disrespect." 180 "<<set $scene.polite=false>>">>]<br>
[<<moveTo "event_manager_training_sales_1_discipline_4" "Politely explain why you're here." 180 "<<set $scene.polite=true>>">>]<br>
</div>/*#
#desc: introduce yourself to sales associate
#status: RELEASED 0.9.4.0
#ignore_spell: hq
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.attempts = 0>>
<<set $scene.actions = {}>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
<<if $scene.polite>>
You politely correct <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> that, while you appreciate the compliment, and are a loyal servant of the company, you are here representing your owner, <<=setup.getNpcName("npc_manager","formal")>> to address <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> abuse of the company expense account.
<<else>>
You sharply reprimand <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> that you are here on behalf of <<=setup.getNpcName("npc_manager","formal")>> to address <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> abuse of the company expense account.
<</if>>
<br><br>
In an instant <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> shifts from relaxed lounging to focusing on you intently. "@@.generic_male1;My mistake,@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> replies with a disarming grin.<br>
<br>
<<printThought "Two words in and I already get how <<he>> is such an effective sales<<man>>...">><br>
<br>
"@@.generic_male1;I wish I had been given some warning to prepare a presentation... but a sales<<man>> is always ready to make a pitch.@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> winks. "@@.generic_male1;If <<=setup.getNpcName("npc_manager","other")>> trusts you to send you then your time is valuable, and I will not waste it any more than I would waste hers. Yes, I have gone over my expense allotments... and yes, I have fudged the spending categories to hide that... but I am also on top of the sales rankings for my region four quarters running. I work hard, and I play hard and being on the road... away from the... amenities of HQ,@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> smirks, eyes roaming over you in a way somehow both hungry, yet complimentary, "@@.generic_male1;Well... I substitute with other fine things. I thought fudging expense codes would make it easier to just kick under the rug and move on rather than let bureaucracy get in the way of sales...@@"<br>
<br>
With a smug smile <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> leans back, awaiting your judgement.<br>
<br>
<<printThought "What to do? Losing their sales would hurt the company... but flaunting rules will only cause long-term problems...">><br>
<br>
<<include "managerTrainingHrChoices">>
</div><<if $scene.action != "fire">>
<<if $scene.actions.fire>>
[@@.link_locked;You already tried firing <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>.@@]
<<else>>
[<<moveTo "event_manager_training_sales_1_discipline_5" "Fire them." 180 "<<set $scene.action='fire'>>">>]<br>
<</if>>
<</if>>
<<if $scene.action != "pay">>
<<if $scene.actions.pay>>
[@@.link_locked;You already considered fining <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>.@@]<br>
<<else>>
[<<moveTo "event_manager_training_sales_1_discipline_5" "Dock their pay." 180 "<<set $scene.action='pay'>>">>]<br>
<</if>>
<</if>>
<<if $scene.action != "chastity" && setup.checkItemTypeWorn("cage")>>
<<if $scene.actions.chastity>>
[@@.link_locked;You already tried locking <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> in chastity.@@]<br>
<<else>>
[<<moveTo "event_manager_training_sales_1_discipline_5" "Lock them in chastity." 180 "<<set $scene.action='chastity'>>">>]<br>
<</if>>
<</if>>
<<if $scene.action != "travel">>
[<<moveTo "event_manager_training_sales_1_discipline_5" "Revise their travel to slave class." 180 "<<set $scene.action='travel'>>">>]<br>
<</if>>
<<if $scene.action != "slave">>
[<<moveTo "event_manager_training_sales_1_discipline_5" 'Perhaps if they had an "assistant" on the road?' 180 "<<set $scene.action='slave'>>">>]<br>
<</if>>/*#
#desc: confront sales associate
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.attempts += 1>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'fire'>>
You draw up to your full height and inform <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> that, in light of their repeated violations of policy, and clear unwillingness to repent or reform... you are going to have to let them go.<br>
<br>
"@@.generic_male1;Fired, huh?@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> responds with a shrug. "@@.generic_male1;Seems a bit penny smart, pound foolish... but oh well, there are plenty of opportunities in sales... after all, every company is a sales company, if you think about it.@@"<br>
<br>
You're slightly surprised by <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> calm response and <<he>> seems to notice, smiling as <<he>> rises to <<his>> feet.<br>
<br>
"@@.generic_male1;First rule of sales is never make enemies. Sure, you're firing me today... but a few years from now you could be making a purchasing decision, and I would rather you remember me as professional and courteous... not for throwing a tantrum like a petulant child.@@"<br>
<br>
<<printThought "Maybe I made a mistake?">><br>
<br>
<<include "managerTrainingHrChoices">>
<<case 'pay'>>
You reply that, going forward, the company will be taking any excess expenses out of their pay... plus a ten percent overage fee.<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> shakes <<his>> head and shrugs. "@@.generic_male1;Always about the money, isn't it? And after all the millions of credits I've brought into the company. Ah well, I'll deal... though if I'm having to pay extra like that, well... maybe not being able to relax as well means I won't hustle as hard...@@"<br>
<br>
<<printThought "Hmm... is this really what's best for the company?">><br>
<br>
<<include "managerTrainingHrChoices">>
<<case 'chastity'>>
You suggest that, to keep <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> more focused on their priorities you will be assigning them company-mandated chastity.<br>
<br>
"@@.generic_male1;Don't bother.@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> replies dismissively. "@@.generic_male1;If that is the requirements well... I quit. Nothing against chastity for those who are into that... but I am here to do a job and get paid, not to enslave myself to the company. Besides, this,@@" <<he>> gestures between <<his>> legs, "@@.generic_male1;has sealed more than a couple of tough negotiations, and a good sales<<man>> wants all <<his>> tools at hand.@@"<br>
<br>
<<printThought "Well that was a blunt response... am I sure I want to cost the company <<his>> skills?">><br>
<br>
<<include "managerTrainingHrChoices">>
<<case 'slave'>>
You ask if <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> would be better able to focus, and avoid expensive distractions, on the road... if they had a personal assistant to accompany and care for them?<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> is even more taken aback than when you first announced yourself. Despite that, <<he>> recovers quickly and you feel like you're suddenly in a negotiation. "@@.generic_male1;And when you say a personal assistant you mean a...@@"<br>
<br>
"@@.pc;Fully skilled and qualified <<if $fetish.sissy>>SISSI <</if>>Secretary, of course,@@" before adding on that, while their travel budget would be adjusted to account for their live-in assistant, they would also be responsible for mentoring said assistant in sales.<br>
<br>
"@@.generic_male1;Training up my replacement?@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> states with a jovial grin. "@@.generic_male1;No, no, I get it. Additional privileges comes with additional responsibility... and honestly? The thought of coming back to the hotel and celebrating a big sale that we BOTH contributed to? Shit, I may need to revise that "not needing any assistance" because your idea has VERY aroused my interests.@@"<br>
<br>
You smile and suggest that <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> take that energy and head down to the Employee Development Department to speak with <<=setup.getNpcName("npc_development","formal")>> look through applicants.<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> smiles even wider. "@@.generic_male1;You ever consider sales yourself? <<if $scene.attempts == 1>>You're a natural<<else>>You have good instincts... a real determination to not stop until you've made the best deal<</if>>. If you'll excuse me, I have next year's new salesperson of the year to pick out...@@"<br>
<br>
With a grin on <<his>> face and skip in <<his>> step <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> walks past you out of the office.<br>
<br>
<<case 'travel'>>
You reply that, if <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> is having such difficulty focusing, perhaps you can help with that... and lower their travel expenses.<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> raises a curious eyebrow as you continue on to explain that, going forward, <<he>> will be making all travel arrangements in "slave class." <br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> is momentarily taken aback, blinking for a few moments before starting to say something, pausing, and then looking at you with a slight smile.<br>
<br>
"@@.generic_male1;You know what? Okay, I'll give it a shot. I mean, I fucking hate flying, even in first class, so who knows? And I can always quit, plenty of job opportunities for a sales<<man>> of my caliber.@@"<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> rises to <<his>> feet and offers a hand to shake. <<His>> handshake is firm, but not aggressively so, combined with a subtle nod to make for a measure of respect. "@@.generic_male1;I wonder if you had a past in sales? Because after that display, well... <<if $scene.attempts == 1>>you're a natural<<else>>you have good instincts... a real determination to not stop until you've made the best deal<</if>>.@@"<br>
<br>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
[<<moveTo "event_manager_training_sales_1_discipline_6" 'You have made your decision. Report back to <<=setup.getNpcName("npc_manager","formal")>>.' 1>>]
</div>/*#
#desc: manager assesses treatment of sales associate
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if 'chastity' == $scene.action>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<elseif ['fire','pay','chastity'].includes($scene.action)>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 10, 0, 0)>>
<<if $scene.action == 'slave'>>
<<addWorkEvent 'hr_training_slave' _nextDate>>
<<else>>
<<addWorkEvent 'hr_training_travel' _nextDate>>
<</if>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You travel back to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> and report on your handling of the issue.<br>
<br>
<<switch $scene.action>>
<<case 'fire'>>
"@@.npc_manager;You released them from their contract? Quite the drastic measure... I though you, of all people, would appreciate the importance of compassion and second chances.@@"
<<case 'pay'>>
"@@.npc_manager;Docked pay? I mentioned that had been tried before... we shall see, I suppose.@@"
<<case 'chastity'>>
"@@.npc_manager;You say you proposed chastity... and they quit?@@" <<=setup.getNpcName('npc_manager', 'formal')>> chuckles. "@@.npc_manager;Would that it really was a universal panacea... alas, some do not have the temperament to properly... appreciated being locked.@@"
<<case 'slave'>>
"@@.npc_manager;A personal assistant/mentee? Now THAT was a clever resolution to the issue... a real forward-looking, holistic approach that did not dwell on the narrow concept of punitive measures, instead seeking to resolve the underlying issue in a manner consistent with company values.@@"
<<case 'travel'>>
"@@.npc_manager;You got them to agree to slave-class travel arrangements?@@" <<=setup.getNpcName('npc_manager', 'formal')>> appears clearly impressed. "@@.npc_manager;That will complicate logistics, slightly... not all planes are equipped to handle such things, but that is a surmountable problem... the real question will be how this results. Either way, I am impressed at the ingenuity, and the negotiation prowess, both are vital to balance the needs of company and employee to optimise those so-valuable human resources.@@"<br>
<br>
Unlike just about every time you've heard that phrase, you actually feel like <<=setup.getNpcName('npc_manager', 'formal')>> is sincere, that she does value the company's employees as something more than numbers on a spreadsheet.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if ['fire','pay','chastity'].includes($scene.action)>>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head, clearly disappointed in you. "@@.npc_manager;Well, this is why I gave you the opportunity. Unfortunately for your advancement it would seem that you do not have suitable judgement for continued elevation, fortunately your skills as a <<if $fetish.sissy>>SISSI <</if>>Secretary are top notch, and I will be glad to keep you employed in that capacity.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> dismisses you back to your desk.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> practically beams with pride. "@@.npc_manager;Yes, your development on matters of HR are coming along much the way you rocketed through the ranks of <<if $fetish.sissy>>SISSI <</if>>Secretary. I am very pleased, and will be keeping you informed on the results of your decision... as well as keeping you in mind for future... opportunities.@@"<br>
<br>
You feel a burst of happiness at so pleasing your <<=setup.getNpcName('npc_manager', 'title')>> and she sends you back to your desk with a smile.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to your normal duties." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager informs of result of travel HR decision
#status: RELEASED 0.9.4.0
#ignore_spell: quintile
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 10, 0, 0)>>
<<addWorkEvent 'hr_training_sales_upgrade' _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> summons you to her office.<br>
<br>
"@@.npc_manager;I wanted to give you an update on the <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> situation.@@" She pauses a moment, your heart beating slightly faster as you reflect back on your convincing the sales associate to accept a switch to slave-class travel arrangements... with the flipside being that they would quit the company if it turned out not to their liking.<br>
<br>
"@@.npc_manager;It would seem that your judgement is validated, not only has <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> not quit in protest... their expenses have dropped into the second lowest quintile of all sales associates... and their sales metrics are up twelve point six percent beyond their already department-leading score.@@"<br>
<br>
You glow with pride at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> praise... but she isn't done!<br>
<br>
"@@.npc_manager;But that is just the numbers. The most important part of HR is the human touch and on that count, well... let me give it to you in <<his>> own words. "I would like to commend Miss <<=$player.last_name>>. Her convincing me to accept slave-class travel arrangements was one that I struggled with... but which I now consider one of the best decisions of my professional career. Being caged and placed in sensory-deprivation has not only resolved my prior anxiety at flying, it has given me much-needed time to self-reflect and marshal myself for customer encounters. My numbers are up and I am happier than I have been in years, my prior frivolities shown to be not just a waste of company resources, but my own valuable time. I wish to, again, praise Miss <<=$player.last_name>> for her astute judgement and willingness to take a gamble on a recalcitrant employee, and I look forward to a long career here at Social Interaction Service Syndicate Inc.!"@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> lets the words hang for a moment as she smiles at you. "@@.npc_manager;Needless to say we will be continuing your development in these regards. Even if it means I eventually lose your services as my oh-so-wonderful <<if $fetish.sissy>>SISSI <</if>>Secretary, the upside is enormous... in a way, you remind me of my own early career.@@"<br>
<br>
You are somewhere between a blush and a swoon at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> words and you thank her, and promise to continue to do your best in whatever new duties she deems you suitable for.<br>
<br>
"@@.npc_manager;I know you shall.@@" She replies with a smile before releasing you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to your desk." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager informs of result of slave HR decision
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 10, 0, 0)>>
<<addWorkEvent 'hr_training_sales_upgrade' _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> summons you to her office.<br>
<br>
"@@.npc_manager;I wanted to give you an update on the <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> situation.@@" She pauses a moment, your heart beating slightly faster as you reflect back on your convincing the sales associate to accept a switch to slave-class travel arrangements... with the flipside being that they would quit the company if it turned out not to their liking.<br>
<br>
"@@.npc_manager;It would seem that your judgement is validated, not only has <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> stopped cheating on <<his>> expense reports, <<his>> sales metrics are up over twenty-percent... with such glowing feedback from both clients and <<his>> mentee that I have green-lit <<his>> request for a second assistant and negotiated with the sales department for a new pilot program for associate-training.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> gives you a moment to bask in her praise... but she isn't done!<br>
<br>
"@@.npc_manager;Those figures are, however... a bit impersonal. The most important part of HR is the human touch and on that count, well... let me give it to you in the words of <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> sales-assistant, standard check-in procedure after a manager has first been assigned a personal assistant. "<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> is a superb owner and manager, and I delight in serving them and the company. While I have always delighted in my position as a proud <<if $fetish.sissy>>SISSI <</if>>Secretary, <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> is a cut above. A warm caress when I deserve it, a firm hand when I need it, and a wealth of sales experience that <<he>> not only shares freely, but instructs with genuine enthusiasm. I believe any employee would be delighted to be owned by <<him>> and would very much like to retain this assignment."@@"<br>
<br>
You are somewhere between a blush and a swoon at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> words and you thank her, and promise to continue to do your best in whatever new duties she deems you suitable for.<br>
<br>
"@@.npc_manager;I know you shall.@@" She replies with a smile before releasing you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to your desk." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager mentions salesperson
#status: FINISHED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> summons you into her office and looks at you with a smile. "@@.npc_manager;Do you remember the problematic sales<<man>> that I delegated to you?@@"<br>
<br>
"@@.pc;<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>?@@" You reply and <<=setup.getNpcName("npc_manager","formal")>> nods.<br>
<br>
"@@.npc_manager;Precisely the one, and well done on remember the name, attention to detail like that is important, especially in person. Knowing and using someone's proper name, and title, is an indication of respect, and much of our jobs here in Human Resources are about managing respect. Respect between peers, respect between manager and subordinate, and respect shown between employees and the company. Yes respect, and the form in which it is offered, demonstrated, demanded, or denied is vital to a smooth-running organisation.@@"<br>
<br>
<<switch $player.sec_style.body.name>>
<<case 'strict' 'forced'>>
You shiver, her mention of name recalling how she forced a new name upon you... and how that served to re-enforce her all-powerful power dynamic.
<<case 'voluntary'>>
You shiver, her mention of name recalling how immediately she accepted using your newly chosen name... and how every time you heard it, from her or others, served to validate your new self.
<<case 'obedient'>>
You shiver, her mention of name recalling how offered and encouraged you to adopt a more authentic name... and how every time you heard it, from her or others, served to re-confirm and validate your new self.
<<case 'enthusiast'>>
You shiver, her mention of name recalling how immediately she accepted using your newly chosen name... and the burst of validation you got the first time she referred to you with it... and how good it felt each and every time.
<<case 'money'>>
You shiver, her mention of names recalling how functionally "selling" your own felt... and then the way she immediately switched to using your newly selected name and the resulting feelings each time you heard it repeated.
<</switch>>
You <<if $player.sec_style.body.name>>also <</if>>think to her own title, the symbolism and power of that moment so long ago when she had you switch to using her proper title flashing in your mind... and how every repetition of "@@.pc;<<=setup.getNpcName("npc_manager","formal")>>@@" is another tiny<<if setup.getTotalValue("submission") > 15>>, glorious,<</if>> moment of re-confirming your submission to her.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, seeming to look right through you to read your thoughts... and silently approving of them.<br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_2" 'So what was this about <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>?' 120>>]
</div>/*#
#desc: manager updates you on salesperson
#status: FINISHED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> how <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> is doing and she smiles wider. "@@.npc_manager;Well that is just what I wanted you to ascertain. Officially <<his>> numbers are up, and there have been no more against-policy expense reports... but numbers are for finance and marketing. Here in Human Resources we support those numbers by making certain that the human touch is applied, understood and respected...@@" <<=ps(setup.getNpcName("npc_manager","formal"))>> eyes glitter as she pauses and adds "@@.npc_manager;... or disrespected, as the case may be. Human beings may topographically be simplified to a set of holes, but, to stretch the metaphor, those holes can be filled in a myriad of different ways.@@"<br>
<br>
You flex <<if setup.checkItemTypeWorn("plug")>>down on the plug in your ass<<else>>down on your unoccupied rear<</if>> as you reflect back on just how many different ways you alone have experienced in this crazy job.<br>
<br>
"@@.npc_manager;Sorry, I am getting a bit philosophical... but I believe that is appropriate as this continues to be a learning and development opportunity for you. <<=setup.getNpcName("npc_manager","formal")>> how <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> is back in-office after a sales trip and I want you to check in on how <<he>> is doing. As before, you may act with my authority, should it prove necessary.@@"<br>
<br>
You feel the simmering warmth of pride at <<=ps(setup.getNpcName("npc_manager","formal"))>> trust in your judgement and you promise not to let her down.<br>
<br>
"@@.npc_manager;Of course not. With you I have, perhaps paradoxically, come to expect exceeded expectations. I look forward to hearing back after you have spoken with <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>.@@"<br>
<br>
<<if State.hasPlayed("event_manager_training_sales_1_discipline_post_travel_1")>>
[<<moveTo "event_manager_training_sales_2_upgrade_3_travel_first_1" 'Go meet with <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>.' 300>>]
<<elseif State.hasPlayed("event_manager_training_sales_1_discipline_post_slave_1")>>
[<<moveTo "event_manager_training_sales_2_upgrade_3_slave_first_1" 'Go meet with <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>.' 300>>]
<<else>>
ERROR: unexpected state
<</if>>
</div>/*#
#desc: sales associate: talk about travel
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You head off to the "temporary" offices and walk in on a very energetic-looking <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>.<br>
<br>
"@@.generic_male1;Miss <<=$player.last_name>>! So wonderful to see you again. I trust my good name is restored? No further issues with the expense department.@@"<br>
<br>
You confirm that everything is looking good on the company financial front and <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> smiles. "@@.generic_male1;Great, great, and sorry, again, for my prior failure. I am what you might call a changed <<man>> and I promise that it will not be happening again.@@"<br>
<br>
<<printThought "Changed seems right... there's a different sort of energy than before. The same sales<<man>>'s intensity but... happier?">><br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_travel_first_3" "Ask if there's anything you could do?" 300>>]<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_travel_first_2" 'Tell them that you will adjust them back to normal travel arrangements.' 300>>]
</div>/*#
#desc: sales associate: offer to remove restriction
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You tell <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> that, in light of their reformed behaviour, you will be dropping the slave-class restrictions on their travel and they may book business-class when it is time for them to return to the field.<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> pauses somewhat awkwardly, <<his>> prior boisterous confidence momentarily on hold. "@@.generic_male1;So, about that... I know that adjustment was meant to be punitive but... would it be possible for me to retain the restriction? I submitted a report on this earlier, but I suppose in-person confirmation might carry more weight. I absolutely love my restrained travel-time. Not just avoiding the whole rigmarole of waiting in line to board, or other passengers being loud, or the distraction of people walking past the aisle and the flight attendants checking in on me... its the entire feeling of being secured for the flight, totally immobile and sensory deprived. Not only has it completely cured my flight anxiety, being alone with my thoughts has given me time to reflect on myself, as well as strategise potential customer interactions... and, well, I believe my recent results speak for themselves on that point!@@"<br>
<br>
You nod, <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> already impressive sales figures have managed to increase in the period since <<his>> "status" was adjusted.<br>
<br>
"@@.generic_male1;So, yes... while I appreciate the offer, and the confirmation that the company is regaining trust in me... I would like to request that my future travel arrangements continue with me in slave class, rather than business.@@"<br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_travel_first_3" "Ask if there's anything you could do?" 300>>]
</div>/*#
#desc: sales associate: they ask for assistant
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You ask if there is anything else you could do for <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>?<br>
<br>
"@@.generic_male1;Actually...@@" <<he>> replies "@@.generic_male1;So, I've been working sales for awhile, and the one thing I hate about being on the road is how lonely it is, in simple terms, and in being unable to share successes, and learning, with anyone else... I was wondering if I could be assigned a <<if $fetish.sissy>>SISSI <</if>>Secretary assistant?@@" <<He>> grins "@@.generic_male1;Okay, yes... part of it is wanting to enjoy some of the headquarters... amenities on the road, but I really would like some companionship, and someone to mentor and teach my sales techniques. I mean, you can't deny their effectiveness, isn't it worth the company's time to spare one <<if $fetish.sissy>>SISSI <</if>>Secretary and maybe have another star sales-maker in the future? Plus whatever boost it gives to me in the short term?@@"<br>
<br>
<<printThought "<<He>> does make a good sales pitch... though, I should expect that, given <<his>> position. This could be an interesting experiment in showing that <<if $fetish.sissy>>SISSI <</if>>Secretaries can be more than just mindless slaves... kind of like what I'm trying to do in HR, in a way... and a possible path forward for the company at large once <<=setup.getNpcName('npc_boss','formal')>> is no longer in charge.">><br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_travel_first_4" "Grant <<his>> request." 180 "<<set $scene.grant=true>>">>]<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_travel_first_4_abort" "Deny <<his>> request." 180 "<<set $scene.grant=false>>">>] <<hint $options "This will bring an end to this plot-line.">>
</div>/*#
#desc: sales associate: permit assistant
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You grant <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> request and <<he>> smiles.<br>
<br>
"@@.generic_male1;Wonderful! I promise you, and the company, won't regret this...@@" <<he>> pauses "@@.generic_male1;So... how does this work? Do I need to fill out an application, do you just... assign me a <<if $fetish.sissy>>SISSI <</if>>Secretary? Here at the office I've only gotten ones that are assigned to the shared pool, so I don't know how a permanent subordinate works...@@"<br>
<br>
You smile and tell <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> to head down to the Employee Development Department to speak with <<=setup.getNpcName("npc_development","formal")>> and look through applicants.<br>
<br>
"@@.generic_male1;Outstanding... well, I think I'll get to that, then... I can't wait to hit the road again... and be crated up side by side with my new assistant/sales-trainee!@@"<br>
<br>
You wish <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> luck as <<he>> hurries out of the office and you head back to your own.<br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_4" 'Report back to <<=setup.getNpcName("npc_manager","formal")>>.' 300>>]
</div>/*#
#desc: sales associate: deny request for assistant
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 10, 0, 0)>>
<<addWorkEvent 'hr_training_sales_fail' _nextDate>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You thank <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> for the suggestion, but that you are denying the request, that it is not in line with current company policy and strategy.<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> shrugs. "@@.generic_male1;Disappointing... but I guess that's how it goes. In that case I think I want to take a bit more advantage of my time here in-office so, if that will be all??@@"<br>
<br>
You nod and head back to your desk, <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> on the phone to summon up not one, but two <<if $fetish.sissy>>SISSI <</if>>Secretaries before you've even left <<his>> office.<br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_4" 'Report back to <<=setup.getNpcName("npc_manager","formal")>>.' 300>>]
</div>/*#
#desc: sales associate: talk about assistant
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male") setup.charImageGeneric("generic_secretary")>>
<div id="invframe" class="scrolltext">
You arrive at <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> temporary office to find <<him>>... and a bound, gagged, and VERY attentive <<if $fetish.sissy>>SISSI <</if>>Secretary reviewing some sort of sales presentation slide deck.<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> greets you with a smile and a firm handshake before removing <<his>> assistant's gag and adjusting controls on what you presume is some sort of vibrator or sex toy, the assistant calming down slightly and smiling at you in greeting.<br>
<br>
"@@.generic_male1;Miss <<=$player.last_name>>! So wonderful to see you again. This is my assistant, <<=setup.getNpcName("generic_female1","custom", "Gara")>>.@@"<br>
<br>
"@@.generic_female1;Hello, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> <<=$player.last_name>>!@@" <<=setup.getNpcName("generic_female1","custom", "Gara")>> states in greeting, automatically referencing you by a more deferential title. "@@.generic_female1;<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Mistress Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Master Ross")>><</if>> said you're the one who put <<him>> back on the proper path and helped save <<his>> job? Well I want to thank you, personally, because if you hadn't done that, well... I never would have been assigned to <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Mistress Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Master Ross")>><</if>> and, well... we make such a good team!@@"<br>
<br>
"@@.generic_male1;That we do.@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> states with pride as <<he>> moves over to stand next to <<=ps(setup.getNpcName("generic_female1","custom", "Gara"))>> chair and gently stroke her head.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Gara")>> smiles up at her owner... and then her gaze flicks to <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> crotch. As you continue your discussion <<=setup.getNpcName("generic_female1","custom", "Gara")>>
<<if $options.fem>>
lifts her Mistres' skirt and ducks under to eat <<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>> out.
<<else>>
unzips her master's pants and begins sucking <<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>> off.
<</if>>
<br><br>
<<printThought "Well they certainly seem to be getting on in the manner of the company...">><br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_slave_first_3" "Ask if there's anything you could do?" 300>>]<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_slave_first_2" 'You were just checking in that everything was going well.' 300>>]
</div>/*#
#desc: sales associate: just checking in
#status: RELEASED 0.9.4.0
#ignore_spell: meff,tooff
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male") setup.charImageGeneric("generic_secretary")>>
<div id="invframe" class="scrolltext">
You ask <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> and <<=setup.getNpcName("generic_female1","custom", "Gara")>> how things have been going since you last spoke?<br>
<br>
"@@.generic_male1;In a word? Wonderfully, as I you can surely tell. You really went out on a limb do address things with me, and I'll always be grateful.@@"<br>
<br>
"@@.generic_female1;Meff tooff!@@" Comes a muffled voice from
<<if $options.fem>>
beneath <<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>> skirt.
<<else>>
around <<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>> cock.
<</if>>
<br><br>
"@@.generic_male1;Quite so! As I was saying, <<=setup.getNpcName("generic_female1","custom", "Gara")>> are a wonderful team, we keep each other company on the road, and she's shown a real mind for sales, not just the hustle but really digging down to customer needs. We present together, but when we break for lunch or the like she'll slip away with the assistants while I work the higher-ups... she came back with some key info that we were able to use to tweak the presentation overnight and not just land the sale, but show how a higher package would solve even more of their needs!@@"<br>
<br>
You congratulate them on the synergistic progress and continue on.<br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_slave_first_3" "Ask if there's anything you could do for the two of them?" 300>>]
</div>/*#
#desc: sales associate: anything you can do
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male") setup.charImageGeneric("generic_secretary")>>
<div id="invframe" class="scrolltext">
You ask if there's anything further you could do for <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> and <<=setup.getNpcName("generic_female1","custom", "Gara")>> and <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> pauses, seeming to think for a moment before launching into a reply.<br>
<br>
"@@.generic_male1;So, this is probably going to be a bit of an odd request... but if you could hear me out in confidence?@@"<br>
<br>
You nod, and <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> continues... apparently whatever confidence <<he>> is asking for isn't to do with <<=setup.getNpcName("generic_female1","custom", "Gara")>>.<br>
<br>
"@@.generic_male1;So, anyway, I was talking about how quickly <<=setup.getNpcName("generic_female1","custom", "Gara")>> is developing her sales skills... well, part of it is we made a bet before we came back to the office. It was a smaller client, and we were already above quota, so we did a little wager where <<=setup.getNpcName("generic_female1","custom", "Gara")>> took lead position and, if she managed to clinch things, we'd swap travel arrangements for the plane ride home...@@"<br>
<br>
You smile in amusement and remark the obvious "@@.pc;She won?@@"<br>
<br>
"@@.generic_female1;Damn right!@@" Comes a proud reply, even as <<=setup.getNpcName("generic_female1","custom", "Gara")>> continues happily
<<if $options.fem>>
licking.
<<else>>
sucking.
<</if>>
<br><br>
"@@.generic_male1;Exactly, she nailed things, really wowed the client and closed the deal with barely any haggling. So, yeah, I'm a <<man>> of my word, so we made the swap and, well... after we both finished disembarking and got back to the office we had a discussion and I'd like to request a change to our travel arrangements?@@"<br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_slave_first_4" 'Sure, you can approve <<=setup.getNpcName("generic_female1","custom", "Gara")>> getting upgraded to business class.' 300 "<<set $scene.slave=true>>">>]<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_slave_first_4" 'It is somewhat unorthodox, but you can shift <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> down to slave class.' 300 "<<set $scene.slave=true>>">>]
</div>/*#
#desc: sales associate: pre-empt travel upgrade
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male") setup.charImageGeneric("generic_secretary")>>
<div id="invframe" class="scrolltext">
<<if $scene.slave>>
"@@.generic_male1;Actully, I was—@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> starts only to realise that <<he>> had incorrectly assumed your response. "@@.generic_male1;Wow... I guess that's why you're so high up in HR. Yeah, once we disembarked and were on the ride back to the office we got to talking and... <<=setup.getNpcName("generic_female1","custom", "Gara")>> found business class awkward and annoying... and slave class actually had me flying without any anxiety for the first time ever... plus the sensory deprivation really gave me time to relax and think on things.@@"
<<else>>
"@@.generic_male1;Actully, I was going to ask for both of us to get booked slave-class. You see, after we both disembarked and we started talking on the ride to the office and... <<=setup.getNpcName("generic_female1","custom", "Gara")>> found business class awkward and annoying... and slave class actually had me flying without any anxiety for the first time ever... plus the sensory deprivation really gave me time to relax and think on things.@@"
<</if>>
<br><br>
<<=setup.getNpcName("generic_female1","custom", "Gara")>> pulls back
<<if $options.fem>>
out from under the skirt and licks her lips of <<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>> feminine juices
<<else>>
and holds <<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>> hard cock daintily in one hand
<</if>>
as she smiles at you. "@@.generic_female1;Slave class best class!@@"<br>
<br>
"@@.generic_male1;Couldn't have put it better, myself!@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> replies as
<<=setup.getNpcName("generic_female1","custom", "Gara")>>
<<if $options.fem>>
ducks back under <<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>> skirt to resume licking.
<<else>>
returns to sucking <<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>> cock and staring up at her owner with delight in her eyes.
<</if>>
"@@.generic_male1;So yeah, I guess it's maybe an odd thing for a "manager" to request... I hope it doesn't interfere with policy or anything... given how I've tripped up there before, and I don't want to rock the boat for anyone else but... well, you asked if there was anything you could do...@@"<br>
<br>
<<printThought "Well this is interesting... really drives home that <<he>> wants an assistant and colleague, not just a mindless <<if $fetish.sissy>>SISSI <</if>> slave... they remind me a little of what I'm trying to do in HR, in a way... and a possible path forward for the company at large once <<=setup.getNpcName('npc_boss','formal')>> is no longer in charge.">><br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_slave_first_5" "Grant the request." 180 "<<set $scene.grant=true>>">>]<br>
[<<moveTo "event_manager_training_sales_2_upgrade_3_slave_first_5_abort" "Deny the request." 180 "<<set $scene.grant=false>>">>] <<hint $options "This will bring an end to this plot-line.">>
</div>/*#
#desc: sales associate: approve travel change
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male") setup.charImageGeneric("generic_secretary")>>
<div id="invframe" class="scrolltext">
You reply that, while it is a bit of an unusual request, you will make sure it's taken care of... before reminding <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> not to talk too loudly about <<his>> special dispensation.<br>
<br>
"@@.generic_male1;Of course. I know that something like this could cause confusion, which is why I hesitated to bring it up...@@" <<he>> pauses, looking at you with genuine gratitude. "@@.generic_male1;Fortunately, well... you've shown your empathy before, and even if some might see the reward vs. punishment structure a little off, well... I promise that me and <<=setup.getNpcName("generic_female1","custom", "Gara")>> are going to blow through this quarter's sales metrics. We're both so grateful, both for bringing us together, and now... well, you'll see what a great team we make... this is a bit crazy, but I honestly can't wait for tomorrow's flight out, gagged, blindfolded, tightly restrained... those sales prospects don't know what they're in for!@@"<br>
<br>
You smile in amusement, feeling quite pleased with what looks to be turning into an ongoing project for you... and an eagerly embraced opportunity for <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> and <<=setup.getNpcName("generic_female1","custom", "Gara")>>.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Gara")>> beams, and then glances over at you. "@@.generic_female1;Is that everything? Only... I really want to finish the slide deck we were working on. <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> promised to fuck my ass after and my plug has me sooo horny for <<his>> <<if $options.fem>>strap<<else>>cock<</if>>@@".<br>
<br>
You smile and reply that you've covered everything you came for and wish the two of them luck on their next sales trip. <<=setup.getNpcName("generic_female1","custom", "Gara")>> grins, stuffing the gag back into her mouth and turning towards the screen as <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> adjusts <<=ps(setup.getNpcName("generic_female1","custom", "Gara"))>> and gets back to work.<br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_4" 'Report back to <<=setup.getNpcName("npc_manager","formal")>>.' 300>>]
</div>/*#
#desc: sales associate: deny travel change
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 10, 0, 0)>>
<<addWorkEvent 'hr_training_sales_fail' _nextDate>>
<</if>>
<<set $player.location to "Company Sales Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageGeneric("generic_manager_male") setup.charImageGeneric("generic_secretary")>>
<div id="invframe" class="scrolltext">
You shake your head and deny the request, explaining that such an unpending of superior/subordinate dynamics would lead to confusion and difficulties elsewhere in the department.<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> shoulders slump as <<he>> looks down at <<=setup.getNpcName("generic_female1","custom", "Gara")>>.<br>
<br>
"@@.generic_male1;Guess it's slave class for you and I'm stuck with business...@@" <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> states with a sigh.<br>
<br>
"@@.generic_female1;I'm sorry, <<=setup.getNpcName("generic_male1","custom", "<<Master>>")>>,@@" <<=setup.getNpcName("generic_female1","custom", "Gara")>> replies empathetically. "@@.generic_female1;I'll make it up to you as soon as we're back to the hotel... or in the car-ride there, if you're up for it!@@"<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> smiles and strokes <<=setup.getNpcName("generic_female1","custom", "Gara")>> face as she nuzzles back. "@@.generic_male1;You're such a good girl. I don't know how I managed to deserve you... but I'll keep trying to earn that blessing!@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Gara")>> beams, and then glances over at you. "@@.generic_female1;Is that everything? Only... I really want to finish the slide deck we were working on. <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> promised to fuck my ass after and my plug has me sooo horny for <<his>> <<if $options.fem>>strap<<else>>cock<</if>>.@@"<br>
<br>
You smile and reply that you've covered everything you came for and wish the two of them luck on their next sales trip. <<=setup.getNpcName("generic_female1","custom", "Gara")>> grins, stuffing the gag back into her mouth and turning towards the screen as <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> adjusts <<=ps(setup.getNpcName("generic_female1","custom", "Gara"))>> and gets back to work.<br>
<br>
[<<moveTo "event_manager_training_sales_2_upgrade_4" 'Report back to <<=setup.getNpcName("npc_manager","formal")>>.' 300>>]
</div>/*#
#desc: sales associate: report to manager
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You return to the office and brief <<=setup.getNpcName("npc_manager","formal")>> on what happened.<br>
<br>
"@@.npc_manager;An interesting <<if $options.fem>>lady<<else>>fellow<</if>>, this <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>.@@" She states in what you would definitely call an understatement.<br>
<br>
<<if $scene.grant>>
"@@.npc_manager;The blend of ambition and submission reminds me of a certain rising star of HR,@@" <<=setup.getNpcName("npc_manager","formal")>> states with a proud smile. "@@.npc_manager;I imagine both of us will be tracking <<his>> career carefully. I have already made you the official HR manager in charge of <<his>> sub-unit. We shall see where things go... but with you helping support, well... I see nothing but a wonderful future.@@"<br>
<br>
You beam with pride and thank <<=setup.getNpcName("npc_manager","formal")>> before she
<<else>>
"@@.npc_manager;I will say that your denying <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Ross"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Ross"))>><</if>> may have been one of those cases where strict adherence to policy could have benefited from some subjective bending... being an HR manager is all about balance and tradeoffs. If it was just following the rules by rote, well... they would hardly need an entire department, hmm?@@"<br>
<br>
You nod in understanding and <<=setup.getNpcName("npc_manager","formal")>>
<</if>>
sends you back to your desk to resume your normal duties.<br>
<br>
[<<moveTo $scene.workEventReturn "Take a seat at your desk and get back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: sales associate: learn of failure
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You get an email, it's from
<<if State.hasPlayed("event_manager_training_sales_2_upgrade_3_slave_first_5_abort")>>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>> and <<=setup.getNpcName("generic_female1","custom", "Gara")>>... apparently <<he>> sold off <<his>> vested stock grants and threw in a pile of <<his>> own money to buy out <<=ps(setup.getNpcName("generic_female1","custom", "Gara"))>> contract so the two of them could quit the company and strike out on their own as an independent sales organisation.
<<elseif State.hasPlayed("event_manager_training_sales_2_upgrade_3_travel_first_4_abort")>>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Ross")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Ross")>><</if>>. It seems that <<he>> is leaving the company to pursue other opportunities... though <<he>> includes an addendum addressed to you personally that thanks you for "turning <<him>> on" to slave-class travel accommodations, and that leaving the company is actually about <<his>> searching for additional career development, leadership, and mentoring opportunities.
<<else>>
ERROR: unexpected state.
<</if>>
<br><br>
<<printThought "Dang... maybe I should have granted <<his>> request? Maybe I'm not really cut out for HR management...">> You think as you turn back to your more mundane work.<br>
<br>
[<<moveTo $scene.workEventReturn "Close the email and get back to work." 60 "<<completeWorkEvent>>">>]
</div>provide HR conflict resolution/renegotiation now that they've expanded to a polyculeaddress issues within the sales department of them being seen as getting "special treatment"/help roll out new policies to balance the different sales strategies and streamline intra-departmental transfers<<if $npc_manager.stage >= 3 && $npc_discipline.stage >= 2 && $npc_harassment_assist.profile>>
<<addWorkEvent 'management_assess'>>
<</if>>/*#
#desc: leadership assessment intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip")>>
<div id="invframe" class="scrolltext">
You are summoned by <<=setup.getNpcName("npc_discipline","formal")>> and you meet her in a conference room where she greets you with a formal nod "@@.npc_discipline;good morning, Miss <<=$player.last_name>>. I wish to congratulate you on making it through probation, I know that <<=setup.getNpcName("npc_manager","other")>> has high expectations for her assistants, even higher than the high bar set company-wide, so to make it through as you did is something to be proud of. Of course, on the other hand, this really just marks the beginning of your career, and that is why I summoned you here, today.@@"<br>
<br>
The reminder that, even after all you've done and changed you have more to "look forward" to has you shifting nervously as you wait for <<=setup.getNpcName("npc_discipline","formal")>> to continue.<br>
<br>
"@@.npc_discipline;I am in charge of a special program called Management Investigation, Search, Training, Research and Education for <<if $fetish.sissy>>SISSI <</if>>Secretaries wherein we seek to better assist in directing your future career development, the first step, now that you have graduated to being a full-time <<if $fetish.sissy>>SISSI <</if>>Secretary is for you to be assessed for leadership potential. Not because we are going to transition you to management, but because it is valuable to know which assistants are most capable of taking charge in a situation where you might need to, say, help coordinate between departments, or organize your fellow assistants in regards to a major meeting or such.@@"<br>
<br>
She taps a button and the door to the conference room opens.<br>
<br>
[<<moveTo "event_management_assess_2" "Who is it?" 120>>]
</div>/*#
#desc: leadership assessment assistant enters
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip") setup.charImage("npc_harassment","npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
You look to the door as <<=setup.getNpcName("npc_harassment_assist","first")>> curtsies to <<=setup.getNpcName("npc_discipline","formal")>> and then waves at you with a smile.<br>
<br>
"@@.npc_discipline;I see the two of you have met. Very good. Your simulated task today will be to come up with a plan for an all-day department meeting. You will have one hour, after which I will return for a short presentation of your plan. <<=setup.getNpcName("npc_harassment_assist","first")>> has already been briefed on pertinent details of the scenario, so I shall leave you to it.@@"<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> leaves and <<=setup.getNpcName("npc_harassment_assist","first")>> looks at you with a cute... and slightly submissive smile as they wait for you to start things off.<br>
<br>
[<<moveTo "event_management_assess_3" "Take charge and get to work." 1800 "<<set $scene.action_1='dom'>>">>]<br>
[<<moveTo "event_management_assess_3" "Just sit down and try to muddle through the task at hand." 1800 "<<set $scene.action_1='neut'>>">>]<br>
[<<moveTo "event_management_assess_3" 'Wait for <<=setup.getNpcName("npc_harassment_assist","first")>> to tell you what to do.' 1800 "<<set $scene.action_1='sub'>>">>]<br>
</div>/*#
#desc: initial work
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_1 == "dom">>
<<setThreshold 'dominance' 'dominance_other' 'leadership'>>
<</if>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_harassment","npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case 'dom'>>
You recall the parameters of the scenario and take charge, ordering <<=setup.getNpcName("npc_harassment_assist","first")>> to brief you on the situation at hand and then sitting down to parse out responsibilities between the two of you.
<<case 'neut'>>
<<=setup.getNpcName("npc_harassment_assist","first")>> is looking adorably submissive, but you address them as equals, asking about the parameters of the scenario and trying to negotiate which of you would be best qualified to handle while part of the planning
<<case 'sub'>>
There's over a minute of silence as both you and <<=setup.getNpcName("npc_harassment_assist","first")>> seem to be waiting for the other to take charge. Finally, the two of you somehow manage to hesitantly agree that the task needs doing and awkwardly split up the responsibilities.
<<default>>
ERROR: unexpected scene.action_1
<</switch>>
<br><br>
The initial planning goes smoothly as the two of you figure out how many people will need to be involved and basic things like scheduling rooms. With things divided so you can work in parallel you're motoring along nicely when you are looking over <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> and realise that they forgot to schedule lunch, and that fitting it in will require re-organising the entire afternoon's plans!<br>
<br>
[<<moveTo "event_management_assess_4" "Ignore the mistake and move on." 1800 "<<set $scene.action_2='ignore'>>">>]<br>
[<<moveTo "event_management_assess_4" "Work through the error with them." 1800 "<<set $scene.action_2='help'>>">>]<br>
[<<moveTo "event_management_assess_4" "Reprimand them." 1800 "<<set $scene.action_2='reprimand'>>">>]
</div>/*#
#desc: respond to mistake
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_harassment","npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_2>>
<<case 'ignore'>>
You opt to ignore <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> mistake, deciding that people can just eat during a meeting rather than go to the trouble of re-organising the entire schedule.
<<case 'help'>>
You point out the lunch issue and jump in with <<=setup.getNpcName("npc_harassment_assist","first")>> to re-organise the schedule.
<<case 'reprimand'>>
<<switch $scene.action_1>>
<<case 'dom'>>
You immediately point out <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> error and they are incredibly apologetic, doubling their efforts as they submissively rework things to address the issue.
<<case 'neut'>>
You go off a bit at the mistake, and <<=setup.getNpcName("npc_harassment_assist","first")>> seems about ready to apologetically submit... but you calm down and leave them to fix their error while you continue on.
<<case 'sub'>>
You slightly freak out at <<=ps(setup.getNpcName("npc_harassment_assist","first"))>>, which sets off a very inefficient cascade of apologies bouncing back and forth before the two of you manage to sit down and actually resolve things.
<<default>>
ERROR: unexpected scene.action_1
<</switch>>
<<default>>
ERROR: unexpected scene.action_2
<</switch>>
<br><br>
Back on track,
<<switch $scene.action_1>>
<<case 'dom'>>
you supervise as the two of you work hard to finish the planning.
<<case 'neut'>>
you cooperate at finishing up the planning.
<<case 'sub'>>
you go along with finishing the planning.
<<default>>
ERROR: unexpected scene.action_1
<</switch>>
Forces combined, the two of you motor through the rest of the assignment until the hour is up and <<=setup.getNpcName("npc_discipline","formal")>> returns.<br>
<br>
[<<moveTo "event_management_assess_5" "Time to present." 300>>]<br>
</div>/*#
#desc: present + initial assess
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip") setup.charImage("npc_harassment","npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_discipline","formal")>> takes a seat and motions for you to start your presentation.
<<switch $scene.action_1>>
<<case 'dom'>>
Still in charge, you confidently walk through the plan for the all-day event,
<<case 'neut'>>
You and <<=setup.getNpcName("npc_harassment_assist","first")>> switch off presenting your plan,
<<case 'sub'>>
You stand off to the side as <<=setup.getNpcName("npc_harassment_assist","first")>> presents the plan,
<<default>>
ERROR: unexpected scene.action_1
<</switch>>
showing the schedule, what facilities will be required and the rest.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> listens intently, asking several clarifying questions, culminating in pointing out that, though you made space in the schedule for lunch... you failed to indicate what arrangements would be made as far as providing the food for same.<br>
<br>
<<printThought "Crap...">><br>
<br>
[<<moveTo "event_management_assess_6" "Deny that there is a problem." 600 "<<set $scene.action_3='deny'>>">>]<br>
[<<moveTo "event_management_assess_6" "Take responsibility for the error." 600 "<<set $scene.action_3='responsibility'>>">>]<br>
[<<moveTo "event_management_assess_6" 'Throw <<=setup.getNpcName("npc_harassment_assist","first")>> under the bus.' 600 "<<set $scene.action_3='betray'>>">>]
</div>/*#
#desc: handle blame
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip") setup.charImage("npc_harassment","npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_3>>
<<case 'deny'>>
<<switch $scene.action_1>>
<<case 'dom'>>
You attempt to exude confidence as you deny that there's an issue, explaining it away that, obviously, the company's catering department would be assumed to handle things.
<<case 'neut'>>
You and <<=setup.getNpcName("npc_harassment_assist","first")>> exchange a nervous glance before almost talking over one another in a contradicting mess of them apologising and you trying to deny that there is actually a problem.
<<case 'sub'>>
You nervously try to deny the issue, trying to cover for <<=setup.getNpcName("npc_harassment_assist","first")>> as you speak for the first time in the presentation.
<<default>>
ERROR: unexpected scene.action_1
<</switch>>
<<case 'responsibility'>>
<<switch $scene.action_1>>
<<case 'dom'>>
You take immediate responsibility for the blunder, explaining that you had been so focused on getting the schedule perfect that you had forgotten that arrangements needed to be made for refreshments, but that you will make a note to contact the company's catering department and make arrangements.
<<case 'neut'>>
You and <<=setup.getNpcName("npc_harassment_assist","first")>> exchange a nervous glance before almost talking over one another as you both battle to take responsibility for the blunder.
<<case 'sub'>>
You step forward and take responsibility for the error as you speak for the first time during the presentation.
<<default>>
ERROR: unexpected scene.action_1
<</switch>>
<<case 'betray'>>
<<switch $scene.action_1>>
<<case 'dom'>>
You throw <<=setup.getNpcName("npc_harassment_assist","first")>> under the bus, blaming their scheduling error for distracting from the catering requirements, and noting that if you had not lost time to addressing their mistake you would have surely been able to handle the catering planning.
<<case 'neut'>>
You and <<=setup.getNpcName("npc_harassment_assist","first")>> exchange a nervous glance before they apologise... and you double down by noting that, were it not for their scheduling mistake distracting you and costing time, the catering issue would have surely been resolved.
<<case 'sub'>>
You speak up for the first time in the presentation... to throw <<=setup.getNpcName("npc_harassment_assist","first")>> under the bus as you blame their poor directions for the error.
<<default>>
ERROR: unexpected scene.action_1
<</switch>>
<<default>>
ERROR: unexpected scene.action_2
<</switch>>
<br><br>
The presentation at an end <<=setup.getNpcName("npc_discipline","formal")>> dismisses <<=setup.getNpcName("npc_harassment_assist","first")>> from the room and looks at you with an enigmatic smile.<br>
<br>
"@@.npc_discipline;So. As to your leadership assessment...@@"<br>
<br>
<<if $scene.action_1 == "dom" && $scene.action_2 == "help" && $scene.action_3 == "responsibility">>
[<<moveTo "event_management_assess_6_dom" 'Listen.' 300>>]
<<elseif $scene.action_1 == "dom" && $scene.action_2 == "reprimand" && $scene.action_3 == "betray">>
[<<moveTo "event_management_assess_6_evil" 'Listen.' 300>>]
<<elseif $scene.action_1 == "sub" && $scene.action_3 == "responsibility">>
[<<moveTo "event_management_assess_6_sub" 'Listen.' 300>>]
<<else>>
[<<moveTo "event_management_assess_6_other" 'Listen.' 300>>]
<</if>>
</div>/*#
#desc: final assess: dominance
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_discipline","formal")>> appears impressed. "@@.npc_discipline;Your performance today was quite impressive. Perhaps it is from working closely under <<=setup.getNpcName("npc_manager","other")>> and learning from her example, or maybe you just have a natural affinity for such, but the way you took charge, and then comported yourself with authority and respect? Perhaps most of all is, like any good leader, you understood that leadership is a responsibility, and thus you took ownership of mistakes. While you will not be seeing any official changes as you continue to work under <<=setup.getNpcName("npc_manager","other")>>, I will be making a note in your SMART profile, and informing <<=setup.getNpcName("npc_manager","other")>> that you may be suited for such tasks in the future.@@"<br>
<br>
She thanks you for your participation and dismisses you.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and your normal duties." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: final assess: evil
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_discipline","formal")>> frowns as she delivers her assessment.<br>
<br>
"@@.npc_discipline;I must say, I am quite disappointed with your actions today. You may have the ambition to be in command, but the way you applied yourself well...@@" she shakes her head, "@@.npc_discipline;leadership is a responsibility, and a duty. A good leader is firm, but not cruel, and not only do they not pass the buck when things go wrong, they hew to the idiom of praising in public, reprimanding in private. I am afraid that I cannot recommend you for further leadership responsibilities... not that this should pose a significant hurdle to your career advancement as, obviously, <<=setup.getNpcName("npc_manager","other")>> provides more than enough leadership.@@"<br>
<br>
She curtly thanks you for your participation and dismisses you.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and your normal duties." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: final assess: sub
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_discipline","formal")>> smiles in amusement as she delivers her assessment.<br>
<br>
"@@.npc_discipline;So it should come as no surprise that you are very much ill-suited for a leadership position. While you demonstrated ethical behaviour, your temperament is very much towards the side of submission and obedience. Which is to be expected, really, given your position, and your manager. These tendencies will certainly serve you well in your ongoing career journey.@@"<br>
<br>
She thanks you for your participation and dismisses you.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and your normal duties." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: final assess: other
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_discipline","formal")>> shakes her head as she delivers her assessment.<br>
<br>
"@@.npc_discipline;To be honest, your actions today somewhat lacked in consistency. In the end, however, I have to put you down as not showing a proper natural affinity for leadership. Which is fine, the company certainly has no shortage of a need for obedient followers, and I recommend you focus your efforts in that direction as you continue in your career development.@@"<br>
<br>
She thanks you for your participation and dismisses you.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and your normal duties." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager tests your oral capacity
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.oral_tests++>>
<<applyExperience 'oral' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.oral_test == 1>>
You follow <<=setup.getNpcName("npc_manager","formal")>> into her office where she directs you to kneel in front of her desk.<br>
<br>
Unlocking a drawer she thinks for a moment and then pulls out a long, smooth dildo.<br>
<br>
She tilts your head back with one hand and then holds your mouth open as she guides the tip of the dildo over your tongue. "@@.npc_manager;Open wide.@@" She casually commands. You stare up at her wide-eyed as centimetre after centimetre of the dildo slides down your throat.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;So, an assessment of your oral capabilities — if you would kneel down in preparation.@@" You get into position as she reaches into a drawer to retrieve the long, smooth "training" dildo.<br>
<br>
She tilts your head back with one hand and then holds your mouth open as she guides the tip of the dildo over your tongue. "@@.npc_manager;Open wide.@@" She casually commands. You stare up at her wide-eyed as centimetre after centimetre of the dildo slides past your lips.
<</if>>
<br><br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") >= 19>>
The dildo may be long but it pales compared to the monsters you have come to love. You take it all the way down with ease. Even when she firms up her grip and jams it into your throat like she was working a plunger you do not so much as flinch.
<<elseif setup.getTotalValue("oral") > 15>>
The dildo may be long but it is hardly a challenge compared to the monsters you've trained with. She seems impressed with your control, but then her grin turns cruel and she tightens her grip, jamming the dildo down your throat like she was working a plunger.
<<else>>
In optimal conditions you might have been able to handle the dildo... maybe. But conditions are far from optimal as <<=setup.getNpcName("npc_manager","formal")>> forces it down your throat and then tightens her grip before jamming it in and out like she was working a plunger.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
As soon as the dildo touches your throat you feel your gag reflex welling up. <<=setup.getNpcName("npc_manager","formal")>> shows no mercy, tightening her grip and pounding deeper like she was working a plunger.
<<else>>
She's barely gotten the dildo past your lips before you start to gag, but she shows no mercy, pounding away at the back of your throat like she was working a plunger.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("oral") >= 19 && setup.getTotalValue("anal") > 10>>
She is definitely impressed, pulling the dildo out with a smooth motion and then standing over you. "@@.npc_manager;Well, that is impressive — but now it is time for the final exam...@@"<br>
<br>
You lick your lips and take a deep breath as she walks back around her desk and unlocks another drawer.<br>
<br>
[<<moveTo "event_manager_oral_graduation_1" "Continue." 60>>]
<<else>>
She continues to pound your throat, holding you in place with an arm that feels like it was cast from steel as her hand jackhammers the dildo in and out. You drool, you struggle, you gasp, but her efforts are implacable, thrust after thrust that has you choking and gagging and tearing up until she rips the dildo free and allows your head to pitch forward to gasp and drool and wretch.<br>
<br>
Drool flows freely but you manage to catch your breath only for her to yank you back up, one hand cradling your throat as she thrusts the dildo back down.<br>
<br>
With fire in her eyes she shoves it as far down as it will go, holding it in place as she speaks. "@@.npc_manager;Touch your throat.@@" She commands. Gurgling and trembling you reach one hand up to brush your fingers against your distended trachea.<br>
<br>
"@@.npc_manager;You feel that? That's a throat bulge. You should yearn for that. It means you are useful, that one of your holes is a functional cock-socket and is being used appropriately. Do you understand?@@"<br>
<br>
Cut off from air you're struggling to gasp but her grasp tightens, preventing you from anything approaching escape.<br>
<br>
<<if setup.getTotalValue("oral") >= 10>>
[<<moveTo "event_manager_oral_training_2" "Say you understand." 60 "<<set $scene.obey=true>>">>]<br>
<<else>>
[@@.link_locked;This is too much for your untrained throat.@@]<br>
<</if>>
[<<moveTo "event_manager_oral_training_2" "Beg for mercy." 60 "<<set $scene.obey=false>>">>]
<</if>>
</div>/*#
#desc: manager finishes training your oral capacity
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 18 'skip' $SEEN_FRIEND>>
<<setThreshold "oral" "extreme_oral" "manager_oral">>
<<if $scene.obey>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You scream "@@.pc;I understand!@@" or, rather, you moan a mangled version of such around the dildo clogging your throat as you struggle not to pass out.<br>
<br>
Holding everything in place for another heartbeat <<=setup.getNpcName("npc_manager","formal")>> pulls the dildo free and you pitch forward, coughing and drooling and gasping for air. "@@.npc_manager;I could not quite make that out.@@" She states, as you feel her high-heel foot pressing against your back.<br>
<br>
"@@.pc;I understand!@@" you pant louder.<br>
<br>
"@@.npc_manager;Understand what,@@" she asks, pressing down with her foot.<br>
<br>
Pinned, exhausted and desperate you blubber on; about how you are a mouth fuck-hole, a slave to be used, your throat a penis-sheath, your lips designed to be wrapped around a cock, your tongue good only for licking cunt and slurping up cum.<br>
<br>
"@@.npc_manager;It is a start,@@" she states with a snort as she steps off. "@@.npc_manager;Now take that lesson to heart and train harder — oral skills are paramount to be a proper <<if $fetish.sissy>>SISSI <</if>>Secretary, and you still have much to learn.@@"<br>
<br>
Bowing and apologising for your failure you promise to do better as you rise to your feet and she dismisses you.
<<else>>
You struggle and think you might pass out when she finally rips the dildo out of your throat and pushes you to the ground.<br>
<br>
"@@.npc_manager;Pathetic. Who would ever find your throat satisfying? A gnat? You need to be able to take the most well-hung individuals with ease and come up begging for more. Get back to work, that way you are at least doing SOMETHING useful today, and step up your oral practice, a <<if $fetish.sissy>>SISSI <</if>>Secretary cannot neglect her oral presentation skills.@@"
<</if>>
Still gasping, and with a sore jaw and an aching throat, you wipe your lips and head back to your desk, <<=setup.getNpcName("npc_manager","formal")>> staring after you, dildo in hand. "@@.npc_manager;I will be testing you again in the future — see that you are more up to the task by then.@@"<br>
<br>
<<if $scene.fromInspection>>
[<<moveTo $scene.inspectionReturn "Start the day." 300 "<<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<<else>>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<</if>>
</div>/*#
#desc: manager readies to "graduate" your oral capacity
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You try to calm down but it's hard to distract yourself from the anticipation of what <<=setup.getNpcName("npc_manager","formal")>> is preparing for you and by the time she rises to her feet your heart is racing with excitement.<br>
<br>
Your jaw drops — there was a time where you were intimidated by her "normal" (but definitely large) strap-on, but this... you gulp in anticipation as she makes a show of walking around the desk and standing in front of you, close to half a metre of artificial cock extending from her hips, its flexibility in no way making up for its intimidating length and girth.<br>
<br>
"@@.npc_manager;I will tell you the truth.@@" She states as she reaches out a hand to tilt your head up so that you are looking at her rather than staring in awe at the massive dong. "@@.npc_manager;I was given this as something of a joke, a tool to threaten and intimidate <<if $fetish.sissy>>sissys<<else>>secretaries<</if>> that got too big for their britches...@@" She smiles and rubs your face against the dildo. "@@.npc_manager;But it would seem that you may be the princess of legend, she who can hilt the sword completely...@@"<br>
<br>
Tracing your lips with one finger she gently pries your mouth open as her other hand lifts the tip of her long, floppy cock to your lips...<br>
<br>
[<<moveTo "event_manager_oral_graduation_2" "Gulp." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_manager_oral_graduation_2" "It's too big!" 300 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: manager probes the depths of your oral capacity
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 16 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<else>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<<setThreshold 'oral' 'extreme_oral' 'oral_final'>>
<<include "bestialityFinalChecker">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You look up at her with wide-eyed devotion and lean in as she continues to feed you the long dildo.<br>
<br>
"@@.npc_manager;So obedient, so lovely... you are rapidly becoming my pride and joy.@@"<br>
<br>
Her words make you tingle but, at the moment you have bigger things to be concerned with,
<<else>>
Suddenly afraid you try to pull away but <<=setup.getNpcName("npc_manager","formal")>> hand is immediately on the back of your head, forcing you forward as she guides the long cock past your lips. "@@.npc_manager;Shhh, shhhh, shhh, this is your reward, relax, enjoy it.@@"<br>
<br>
Struggling against her strength is futile and, besides, you have bigger things to be concerned with at the moment,
<</if>>
like how to breathe...<br>
<br>
She passes the halfway point and you make a discovery — there is an inset groove running along the length of the dildo and, though your airflow is much restricted, it is sufficient to take quick, panting breaths. This subtle design feature speaks to the intent that this dildo was designed for long swallows in both senses of the word. You groan, shuddering submissively as you feel your throat stretch and bulge.<br>
<br>
Her heavy-duty harness begins to loom large and you shudder in anticipation, are you really going to take it all the way?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> lets go of her cock and takes hold of your head with both hands. Gracing you with a final grin she pulls you in, your mouth opening just a little wider to take the thicker base as she forces her way down and grinds your nose against her belly.<br>
<br>
"@@.npc_manager;You feel that?@@" She almost moans, rocking inside of you without withdrawing more than a fraction of a centimetre. "@@.npc_manager;That is the graduation exam of a perfect mouth fuck-hole. The cutest of crevasses, the sheath for any sword, the scabbard of sweet <<if $fetish.sissy>>sissy<<else>>slutty<</if>> supremacy.@@"<br>
<br>
Panting and simultaneously incredibly turned on you softly moan, feeling filled and spread from your lips down to your belly.<br>
<br>
Your blissful mouth-slut meditation is interrupted by a knock on the door.<br>
<br>
[<<moveTo "event_manager_oral_graduation_3" "What?" 300>>]
</div>/*#
#desc: manager bottoms out and gets stuck in your throat
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 20 'very' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 15 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
With a dildo this far down your gullet you can't really move but your heart beats faster as you hear the door open and someone step into the room.<br>
<br>
"@@.npc_discipline;We had a meeting scheduled—@@" <<=setup.getNpcName("npc_discipline","formal")>> begins before falling silent at the sight of you.<br>
<br>
Reflexively turning to greet her guest, <<=setup.getNpcName("npc_manager","formal")>> drags you across the floor as you wide-eyed realise that you are stuck on her massive artificial cock!<br>
<br>
"@@.npc_manager;Oh, I must have forgot... and my Secretary was unable to remind me due to a slight case of "having her mouth full."@@"<br>
<br>
"@@.npc_discipline;I can see that.@@" <<=setup.getNpcName("npc_discipline","formal")>> states, clearly impressed. "@@.npc_discipline;Is that what I think it is? I was beginning to give up hope that anyone would ever win that bet.@@"<br>
<br>
"@@.npc_manager;Indeed it is.@@" She replies, wiggling her hips and then slightly pushing on your forehead to no avail. "@@.npc_manager;Hmm, it would appear that I have become stuck!@@"<br>
<br>
You groan, embarrassed at your predicament, the fact that there is a witness, and how casually the two of them are taking this insane development!<br>
<br>
"@@.npc_manager;Hmm, this seems to be caused from her having tensed up. I believe with a strong climax the resulting muscular spasms should free things up, if you would kindly assist me in this matter so that we can continue on to business?@@"<br>
<br>
"@@.npc_discipline;Of course.@@" <<=setup.getNpcName("npc_discipline","formal")>> states as she sweeps her coat to one side to reveal a large strap-on of her own that had been subtly strapped to her thigh. She pops it free and then frowns slightly, making sure you have a good look as she twists her hand around the base and the dildo swells and grows over a quarter larger in size!<br>
<br>
It is still smaller than the monstrosity lodged in your throat but you can't help but do mental math as you wonder if you could possibly take both without them meeting in the middle...<br>
<br>
[<<moveTo "event_manager_oral_graduation_4" "Continue." 300>>]
</div>/*#
#desc: manager and npc_discipline double team you
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 20 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'anal' 18 'unbelievable' $SEEN_FRIEND>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.hollowPlug = setup.checkItemTypeTag('plug', ['hollow'])>>
<<if !$scene.hollowPlug && $scene.plug != "">>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> takes hold of the back of your outfit and casually lifts you into the air as <<=setup.getNpcName("npc_discipline","formal")>> walks behind you.<br>
<br>
You hear a buzzing sound as you realise that <<=ps(setup.getNpcName("npc_discipline","formal"))>> cock is packing a vibrator, as well, but you have no more chance to think before
<<if $scene.hollowPlug>>
she lines up with your plug-gaped ass,
<<else>>
she pops the plug out of your ass,
<</if>>
and thrusts into you.<br>
<br>
Hanging between two oversized strap-on cocks you groan and shudder. The vibrations are intense, shaking you open as <<=setup.getNpcName("npc_discipline","formal")>> plunges deep, fast.
<<if setup.getTotalValue("anal") > 15>>
If your ass was jealous of the gape your mouth was enjoying, no more, as it immediately faces a challenge nearly as great as the one in your throat, but one you rise to just as well.
<<else>>
You would like to object to the too-large dildo being forced into your hole but you are gagged and then some.
<</if>>
Your limbs flail, not even touching the ground thanks to the two womens' steep heels and firm grip. You groan when <<=setup.getNpcName("npc_discipline","formal")>> reaches full depth and <<=setup.getNpcName("npc_manager","formal")>> momentarily releases her grasp to leave you literally suspended on nothing but cock.<br>
<br>
"@@.npc_manager;Oh, my! I believe I can feel that vibrator of yours!@@" <<=setup.getNpcName("npc_manager","formal")>> says with surprise as the two women begin sawing you back and forth, your body little more than a sleeve barely managing to accommodate the dual impalement.<br>
<br>
"@@.npc_discipline;You should! The motor was adapted from an industrial jackhammer!@@" The two women laugh and increase their pace, as you can do nothing but endure, the overwhelming stimulation making your entire body shake as you rocket towards orgasm.<br>
<br>
Somehow feeling every centimetre of silicone phallus filling your body, you last longer than you would have thought possible, but that is not long at all...<br>
<br>
[<<moveTo "event_manager_oral_graduation_5" "Continue." 300>>]
</div>/*#
#desc: manager and npc_discipline double team you
#status: FINISHED 0.7.11.0
#ignore_spell: glenfiddich
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 20 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'anal' 18 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
You cum hard, leaking through your chastity and down onto the floor as your entire body flails.<br>
<br>
Gagging and retching as things become too much for you to control your mouth pops free, the full, incredible length of the dildo zipping past your lips like an eel lunging for prey as <<=setup.getNpcName("npc_manager","formal")>> catches you in the air as, a moment later, <<=setup.getNpcName("npc_discipline","formal")>> steps back.<br>
<br>
Your hips drop to the ground, your rubber legs in no condition to support anything and you find yourself clinging to <<=ps(setup.getNpcName("npc_manager","formal"))>> thigh for support.<br>
<br>
"@@.npc_manager;Very good.@@" She coos, patting you on the head as you gasp and cough, looking back and forth between the two dildos, scarcely able to believe that they were moments ago both hilt-deep inside of you.<br>
<br>
"@@.npc_manager;I'll be expecting that bottle by the end of the day — Glenfiddich Fifty was, I believe, the wager.@@"<br>
<br>
"@@.npc_discipline;That it was,@@" <<=setup.getNpcName("npc_discipline","formal")>> states
<<if $fetish.cum>>
"@@.npc_discipline;But first I believe someone else is due for a drink — your pet appears to have made quite the mess of my boot.@@"<br>
<br>
"@@.npc_manager;So she did, well, get to it.@@" <<=setup.getNpcName("npc_manager","formal")>> states, giving you a nudge with her thigh.<br>
<br>
[<<moveTo "event_manager_oral_graduation_6" "Clean up." 180>>]
<<else>>
"@@.npc_discipline;But first... well, your slave appears to have drooled all over my boots.@@"<br>
<br>
"@@.npc_manager;So she did, indeed. Well go on then, lick up the mess you made, <<=$player.first_name>>.@@" <<=setup.getNpcName("npc_manager","formal")>> states, giving you a nudge with her thigh.<br>
<br>
[<<moveTo "event_manager_oral_graduation_6" "Start licking." 180>>]
<</if>>
</div>/*#
#desc: clean up after manager and npc_discipline double team you
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 16 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 16 'unbelievable' $SEEN_FRIEND>>
<<if $fetish.cum>>
<<applyExperience 'cum' 12 'very' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'foot' 12 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
Stumbling to the ground you drag yourself the short distance to where <<=setup.getNpcName("npc_discipline","formal")>> is standing. Your jaw is too sore for you to even close your mouth and so, trailing drool, you merely extend your tongue to
<<if $fetish.cum>>
lap up the
<<if setup.getTotalValue("cum") > 10>>
delicious
<<else>>
<<if setup.getTotalValue("cum") > 5>>
humiliating
<<else>>
disgusting
<</if>>
<</if>>
trace you spilt upon
<<else>>
lick clean
<</if>>
the shiny boot leather.
<br><br>
With a critical eye <<=setup.getNpcName("npc_discipline","formal")>> turns her foot back and forth until you have cleaned and polished her entire boot, then repeating on the other side "for balance." <br>
<br>
Panting and exhausted you wipe your mouth with the back of your hand and look slack-jawed up at the two women, massive dildos still dangling from their hips as they grin down at you in concert.<br>
<br>
"@@.npc_discipline;Well, with that out of the way, shall we proceed to business?@@"<br>
<br>
"@@.npc_manager;Capital idea. <<=$player.first_name>>, you may return to your desk and commence work.@@"<br>
<br>
You groan, how can you be expected to work after what just happened to you? Nonetheless you<<if !$scene.hollowPlug && $scene.plug != "">> fumble the plug back into your ass and<</if>> stagger out of the room.<br>
<br>
<<if $scene.fromInspection>>
[<<moveTo $scene.inspectionReturn "Start the day." 300 "<<if !$scene.hollowPlug && $scene.plug != ''>><<wearItem $scene.plug true>><</if>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<<else>>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>><<if !$scene.hollowPlug && $scene.plug != ''>><<wearItem $scene.plug true>><</if>><<if $workEvents.hasOwnProperty('training_checkup')>><<set $workEvents.training_checkup.trigger.lastDate = setup.setNextDate($now, 7, 8, 0)>><</if>>">>]
<</if>>
</div>/*#
#desc: manager ask about your smarts
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.smartFeat = {}>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_manager","formal")>> how you have been training your mind in hopes of being more useful to her.<br>
<br>
"@@.npc_manager;I have, of course, noticed the progression in your quality of work... quite impressive, I must say, but if you wish to be more, to be counted as a confidant and an advisor rather than a mere assistant... well, that requires more than maximising the efficiency of your normal duties. Tell me, how have you applied your intellect? Book-smarts is one thing, it is in the application that the magic happens.@@"<br>
<br>
<<include "managerSmartFeat">>
</div><<if State.hasPlayed("event_maid_cafe_chess_play_maid_final_win_1")>>
[<<moveTo "event_manager_smart_test_2" "Tell her about your success at the chessboard." 60 "<<set $scene.action='chess'>>">>]<br>
<</if>>
<<if $player.flags.hotties_game.rank >= 8>>
<<if $scene.smartFeat.gaming>>
[@@.link_locked;You already told her about winning the HOTTIES championship.@@]<br>
<<else>>
[<<moveTo "event_manager_smart_test_2" "Tell her about winning the HOTTIES championship." 180 "<<set $scene.action='gaming'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_manager_smart_test_2" "You can think of no particular feat of intellectual might to point to." 60 "<<set $scene.action='none'>>">>]/*#
#desc: tell manager about feat of intellect
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.smartFeat[$scene.action] = true>>
<<if $scene.action == 'chess'>>
<<if setup.getTotalValue("smart") >= 19>>
<<setThreshold 'smart' 'smart_other' 'smart_final'>>
<<elseif setup.getTotalValue("smart") >= 18>>
<<applyExperience 'smart' 18 'skip' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'smart' 15 'skip' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'chess'>>
You tell her about your decisive victory playing chess at the maid cafe how, despite adapting to a modified version of the game, and a very obnoxious opponent, you triumphed... and earned the cafe an enthusiastic new employee to boot.<br>
<br>
"@@.npc_manager;Ah, chess... is there a more cliche hallmark of mental acumen? Still, from what you said you pulled off quite the feat, but that is in the artificial world of pushing pieces around a checkerboard... the real world is far, far more complicated.@@" She grins, walks over to her desk and pulls out a thick folder. "@@.npc_manager;Here, tell me what you think of this.@@"<br>
<br>
You start flipping through the file.
<<if setup.getTotalValue("smart") >= 19>>
You recognise some of the documents as things that passed through your desk, but the rest look to be very high-level company reports... as well as some oppo-research from exterior sources.<br>
<br>
The more you read the more engrossed you become as you realise that it's all connected, literally trillions of credits circulating through buy-outs, mergers, personnel transfers, government contracts, campaign contributions... even what can only be described as bribes, all of it tracing its way back to <<=setup.getNpcName("npc_boss","formal")>>... and the sequencing of events pointing to an accelerating pace.<br>
<br>
You look up in surprise as everything seems to click together and you understand the full scope of what you had previously only been nibbling at the edges of.<br>
<br>
"@@.pc;<<He npc_boss>>'s trying to take over the city... no... the world...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;That was fast... good job.@@" She smiles. "@@.npc_manager;Are you ready to help me stop <<him npc_boss>>?@@"<br>
<br>
You nod, after what you've seen... what else could you do?<br>
<br>
She smiles before stuffing the folder back in a drawer and winking at the eye-in-the-sky that is <<=setup.getNpcName('npc_ai', 'first')>>. "@@.npc_manager;Great... let's hope three heads are better than one.@@"<br>
<br>
You head back to your desk.
<<else>>
<<if setup.getTotalValue("smart") >= 18>>
You recognise some of the documents as things that passed through your desk, but the rest look to be very high-level company reports... as well as some oppo-research from exterior sources.<br>
<br>
While you have a feeling that there's some way it all fits together there's just too many layers and obfuscations and you end up looking back at <<=setup.getNpcName("npc_manager","formal")>> and shaking your head.
<<else>>
You recognise some of the documents as things that passed through your desk, but that's about it, the rest is page after page of legal and corporate complexity the likes you've never seen. It's just too much for you to handle and you feel as lost as you were your first day in college as you look mournfully up at your <<=setup.getNpcName("npc_manager","title")>>.
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> sighs and stuffs the folder back into her drawer. "@@.npc_manager;Maybe with a bit more development... I'm sorry, but if you can't handle this, well... if I'm going to bring you in to help at this level of my work, I can't afford mistakes.@@"
<<if setup.getTotalValue("smart") >= 18 && !setup.hasTmpEffect('drug_smart')>>
<br><br>
<<printThought "Damn... maybe some chemical assistance to push me over the top? Perhaps if I worked for <<=setup.getNpcName('npc_work_doctor','formal')>> <<if $npc_work_doctor.flags.nurse_available>> some more<</if>>?">>
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
<<case 'gaming'>>
You start to tell her about your triumph in the HOTTIES tournament
<<if $npc_manager.flags.cruel == 0 && $npc_manager.anger == 0 && $npc_manager.affection > 5>>
but, though she shows interest and pride in your accomplishment, you can tell it was not quite what she was looking for.<br>
<br>
"@@.npc_manager;I congratulate you on your feat, while I do not have the time to play such games, personally, I recognise the skill required to rise to such a level but... well, despite the tactical aspects, so much of that sort of thing comes down to twitch reflexes more than smarts, so I do not think it quite fits what I had in mind. Do you have anything else more intellectual that you have accomplished?@@"
<<elseif $npc_manager.flags.cruel == 0 && $npc_manager.affection > $npc_manager.anger>>
but, though she makes some effort to feign interest, you can tell that this wasn't what she is looking for.<br>
<br>
"@@.npc_manager;I am sorry, while I am certain your accomplishment is quite impressive... I do not know much of such matters, and, I think, such a victory owes as much to twitch reflexes as it does to tactical acumen. Do you have anything else more intellectual that you have accomplished?@@"
<<else>>
but she soon cuts you off in annoyance.<br>
<br>
"@@.npc_manager;Bragging about some game? Excuse my interest but isn't that just as much about twitch reflexes as it is about tactical acumen? In any case, it is not at all what I was talking about. Do you have anything else more intellectual that you have accomplished?@@"
<</if>>
<br><br>
<<include "managerSmartFeat">>
<<case 'none'>>
You confess that you can think of no particular feat of mental acumen that you can call your own.<br>
<br>
"@@.npc_manager;I see, well... when you have, let me know. I will want to test you myself, of course, but I see no sense wasting either of our valuable time if you have not proven yourself in the real world first.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: manager introduces skill tests
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addWorkEvent 'training_checkup' _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> summons you into her office.<br>
<br>
"@@.npc_manager;Now that the move and everything is sorted... I thought it would be a good opportunity to really dial in on your skills. You have come so far but, well... <<if $player.flags.retreat.mission < 2>>you work for a Director of the Year, after all, and thus<<else>>here on the upper floors the<</if>> expectations are even higher. Take a moment to think about what you would like to demonstrate for me today, I will continue to check in on you from time to time to see how you are developing... or you could take the initiative if you think you are prepared to prove yourself.@@"<br>
<br>
<<include "managerTrainingTests">>
<br>
<<hint $options "You can use the SMART menu from your desk to check on skills or ask to test.">>
</div>/*#
#desc: manager tests one of your skills
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() == 5 && !$scene.morningWorkEvent>>
<<completeWorkEvent>>
<<initRoom>>
<<set $workEvent = setup.checkWorkEvents($player, $now, $scene.workEventCount)>>
<<if $workEvent.szene>>
<<moveTo $workEvent.szene>>
<<else>>
<<moveTo "event_work_generic">>
<</if>>
<<else>>
<<set $scene.preGameSmart = $npc_manager.stage >= 4 && setup.getTotalValue("smart") > 15 && !setup.hasThreshold('smart', 'smart_other', 'smart_final') && !setup.hasTmpEffect('drug_smart') && setup.checkItemInInventory("drug_smart")>>
<</if>>
<</if>>
<<if $scene.preGameSmart>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.preGameSmart>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.preGameSmart>>
<<=setup.getNpcName("npc_manager","formal")>> summons you for another skills assessment.<br>
<br>
<<printThought "Hmm, maybe some pre-gaming of <<=setup.getItemName('drug_smart')>> would have me sharp to impress <<=setup.getNpcName('npc_manager','formal')>>?">><br>
<br>
[<<moveTo "event_manager_training_test_root_2" 'Pop a <<=setup.getItemName("drug_smart")>> and head in.' 60 "<<set $scene.drug=true>>">>]<br>
[<<moveTo "event_manager_training_test_root_2" "Head in." 60 "<<set $scene.drug=false>>">>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> summons you into her office.<br>
<br>
She smiles at you from across her desk and you can practically see the gears whirring in her head. "@@.npc_manager;I just had a meeting wrap up early and I had a thought to use this free time to check in on my lovely <<if $fetish.sissy>>SISSI <</if>>Secretary's training?@@" She grins wider as you recall the last "training" session... "@@.npc_manager;So... which skill would you like to demonstrate your progress with today?@@"<br>
<br>
<<include "managerTrainingTests">>
<</if>>
</div>/*#
#desc: ask to test skill voluntary
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $workEvent && $workEvent.szene == "event_manager_training_test_root">>
<<completeWorkEvent>>
<<else>>
<<unset $workEvent>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.preGameSmart>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office and ask if you might demonstrate another of your skills for her?<br>
<br>
<<if $now.getUTCDay() == 5>>
"@@.npc_manager;I am sorry but things always pile up at the end of the week... and it being a short day, as well... perhaps if you could come back Monday, first thing?@@"<br>
<br>
[<<moveTo $scene.returnFromEmployee "Back to your desk." 60>>]
<<elseif $now.getUTCHours() >= 17>>
"@@.npc_manager;As intriguing as that sounds... it is the end of the day, and it would not be proper for me to keep you late for such things. Speak with me first thing in the morning, it would be better to test you when you were fresh, in any case.@@"<br>
<br>
[<<moveTo $scene.returnFromEmployee "Back to your desk." 60>>]
<<elseif $now.getUTCHours() >= 12>>
"@@.npc_manager;As intriguing as that sounds... I do not have time this afternoon. Perhaps if you could speak with me first thing in the morning, before I have become beset with myriad other requests for my attention.@@"<br>
<br>
[<<moveTo $scene.returnFromEmployee "Back to your desk." 60>>]
<<elseif $now.getUTCHours() >= 10>>
"@@.npc_manager;As intriguing as that sounds... I do not have time this morning to give sufficient attention. Perhaps if you could speak with me first thing in the morning.@@"<br>
<br>
[<<moveTo $scene.returnFromEmployee "Back to your desk." 60>>]
<<elseif $now.getUTCHours() < 8>>
She is on a phonecall and waves you off, back at your desk you get a message informing you to wait for after your inspection.<br>
<br>
[<<moveTo $scene.returnFromEmployee "Back to your desk." 60>>]
<<else>>
She looks up from her desk and smiles with interest. "@@.npc_manager;Such initiative! And which skill would you like to demonstrate your progress with today?@@"<br>
<br>
<<include "managerTrainingTests">>
<</if>>
</div>/*#
#desc: take drug before manager tests skills
#status: FINISHED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drug>>
<<deleteItem 'drug_smart'>>
<<setTmpEffect 'drug_smart'>>
<<set $player.flags.drugs.smart += 1>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'normal' $ALONE>>
<<applyStress -10>>
<<gainWillpower 1>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.drug>>
You take a quick hit of <<=setup.getItemName("drug_smart")>> and feel your mind sharpen before you
<<else>>
You
<</if>>
head into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office.<br>
<br>
She grins at you from across her desk and you can practically see the gears whirring in her head. "@@.npc_manager;I just had a meeting wrap up early and I thought, hey, why not use this free time to check in on my lovely <<if $fetish.sissy>>SISSI <</if>>Secretary's training?@@" She grins wider as you recall the last "training" session... "@@.npc_manager;So... which skill would you like to demonstrate your progress with today?@@"<br>
<br>
<<include "managerTrainingTests">>
</div><<if setup.hasThreshold('oral', 'extreme_oral', 'oral_final')>>
[@@.link_locked;You have already demonstrated your complete mastery of the oral presentation.@@]<br>
<<elseif setup.hasThreshold('oral', 'extreme_oral', 'manager_oral') || setup.getTotalValue("oral") >= 19>>
[<<moveTo "event_manager_oral_training_1" "Say you would like to demonstrate your skills at oral presentations." 60>>]<br>
<</if>>
<<if setup.hasThreshold('anal', 'secretary_anal', 'double_fist')>>
[@@.link_locked;You have already demonstrated your capacity to cope with things getting behind.@@]<br>
<<elseif setup.hasThreshold('anal', 'secretary_anal', 'fist_training') || setup.getTotalValue("anal") >= 19>>
[<<moveTo "event_anal_intro_repeat" "Say you would like to show off your... capacity for when things get behind." 60>>]<br>
<</if>>
<<if setup.hasThreshold('bdsm', 'bdsm_other', 'bdsm_final')>>
[@@.link_locked;You have already demonstrated your ability to work under the harshest of conditions.@@]<br>
<<elseif setup.hasThreshold('bdsm', 'bdsm_other', 'discipline_volunteer') || setup.getTotalValue("bdsm") >= 19>>
[<<moveTo "event_manager_bdsm_final_1" "Say you would like to prove your ability to work under the harshest conditions." 60>>]<br>
<</if>>
<<if setup.hasThreshold('bondage', 'machine_bondage', 'bondage_final')>>
[@@.link_locked;You have already demonstrated how adept you are at getting tied up in your work.@@]<br>
<<elseif setup.hasThreshold('bondage', 'machine_bondage', 'chair_bondage') || setup.getTotalValue("bondage") >= 19 >>
[<<moveTo "event_manager_bondage_final_1" "Say you would like to show how restrained you can work." 60>>]<br>
<</if>>
<<if setup.hasThreshold('foot', 'secretary_foot', 'foot_final')>>
[@@.link_locked;You have already demonstrated how adept you are at working at her feet.@@]<br>
<<elseif setup.hasThreshold('foot', 'secretary_foot', 'eager_pedicure') || setup.hasThreshold('foot', 'secretary_foot', 'shoeshine_station')>>
<<if setup.getTotalValue("foot") >= 19>>
[<<moveTo "event_manager_foot_final_1" "Say you would like to show your total devotion to worshiping and caring for her feet." 60>>]<br>
<<else>>
[<<moveTo "event_manager_pedicure_2" "Say you wish to demonstrate your skills at foot care." 1800 "<<set $scene.worship = true>><<set $scene.test=true>>">>]<br>
<</if>>
<<elseif -1 != setup.findThemeId('npc_manager', 'voluntary_punishment', 'theme_manager_pedicure')>>
[<<moveTo "event_manager_pedicure_2" "Say you wish to demonstrate your skills at foot care." 1800 "<<set $scene.worship = true>><<set $scene.test=true>>">>]<br>
<</if>>
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
[@@.link_locked;You have already demonstrated how adept you are at taking charge.@@]<br>
<<elseif setup.hasThreshold('dominance', 'dominance_other', 'dom_training') || setup.getTotalValue("dominance") >= 20>>
[<<moveTo "event_manager_dominance_final_1" "Say you would like to show how well you can take charge of matters." 60>>]<br>
<</if>>
<<if setup.hasThreshold('smart', 'smart_other', 'smart_final')>>
[@@.link_locked;You have already demonstrated how smart you are.@@]<br>
<<elseif setup.getTotalValue("smart") > 15>>
[<<moveTo "event_manager_smart_test_1" "Say you would like to show how far your mental faculties have progressed." 60>>]<br>
<</if>>
<br>
<<if setup.hasThreshold('oral', 'extreme_oral', 'oral_final') && setup.hasThreshold('anal', 'secretary_anal', 'double_fist') && setup.hasThreshold('bdsm', 'bdsm_other', 'bdsm_final') && setup.hasThreshold('bondage', 'machine_bondage', 'bondage_final') && setup.hasThreshold('foot', 'secretary_foot', 'foot_final') && setup.hasThreshold('smart', 'smart_other', 'smart_final') && (setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle') || setup.getTotalValue("dominance") < 20)>>
[<<moveTo "event_manager_training_test_fin" "Reply that you can think of nothing more to demonstrate." 60>>]
<<else>>
[<<moveTo "event_manager_training_test_none" "Reply that you can think of nothing to demonstrate." 60>>]
<</if>>/*#
#desc: no skill to test
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.testOptions = []>>
<<if setup.hasThreshold('oral', 'extreme_oral', 'manager_oral') && !setup.hasThreshold('oral', 'extreme_oral', 'oral_final')>>
<<set $scene.testOptions.push('oral')>>
<</if>>
<<if (setup.hasThreshold('foot', 'secretary_foot', 'eager_pedicure') || setup.hasThreshold('foot', 'secretary_foot', 'shoeshine_station')) && !setup.hasThreshold('foot', 'secretary_foot', 'foot_final') && $npc_manager.stage >= 4>>
<<set $scene.testOptions.push('foot')>>
<</if>>
<<if setup.hasThreshold('anal', 'secretary_anal', 'fist_training') && !setup.hasThreshold('anal', 'secretary_anal', 'double_fist') && $npc_manager.stage >= 4>>
<<set $scene.testOptions.push('anal')>>
<</if>>
<<if setup.hasThreshold('bdsm', 'bdsm_other', 'discipline_volunteer') && !setup.hasThreshold('bdsm', 'bdsm_other', 'bdsm_final')>>
<<set $scene.testOptions.push('bdsm')>>
<</if>>
<<if setup.hasThreshold('bondage', 'machine_bondage', 'chair_bondage') && !setup.hasThreshold('bondage', 'machine_bondage', 'bondage_final')>>
<<set $scene.testOptions.push('bondage')>>
<</if>>
<<if setup.hasThreshold('dominance', 'dominance_other', 'dom_training') && setup.getTotalValue("dominance") > 15 && !(setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle'))>>
<<set $scene.testOptions.push('dominance')>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.testOptions.length == 0>>
You reply that you have nothing new to show her. <<=setup.getNpcName("npc_manager","formal")>> thinks for a moment and then nods. "@@.npc_manager;Right you are. In that case I suppose you may return to work, sorry for tearing you away from your duties to doubt the skills you have already so thoroughly proven yourself to have.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns.
<<switch $scene.testOptions.random()>>
<<case 'oral'>>
"@@.npc_manager;No, it would be a shame to waste this opportunity. How about you show how your oral presentation skills are coming along? Always an important thing for a <<if $fetish.sissy>>SISSI <</if>>Secretary to be adept at.@@"<br>
<br>
[<<moveTo "event_manager_oral_training_1" "Agree to demonstrate your skills at oral presentations." 60>>]
<<case 'anal'>>
"@@.npc_manager;Hmm... it would be a shame to leave this time empty... how about we test that cute bottom of yours — check if you have been successfully broadening your horizons. Up on my desk, on all fours and naked. Quickly, now!@@"<br>
<br>
[<<moveTo "event_manager_anal_training" "Get naked and ready to gape." 180 "<<useClothSetPush 'tmp'>><<removeAllClothing>>">>]
<<case 'foot'>>
"@@.npc_manager;No, it would be a shame to waste this opportunity. How about you show how your foot worshipping skills are coming along? A <<if $fetish.sissy>>SISSI <</if>>Secretary needs to have the skills of a boot-licking slave.@@"<br>
<br>
<<if setup.getTotalValue("foot") >= 19>>
[<<moveTo "event_manager_foot_final_1" "Show how you worship and care for her feet." 60>>]<br>
<<else>>
[<<moveTo "event_manager_pedicure_2" "Agree to demonstrate your skills at foot care." 1800 "<<set $scene.worship = true>><<set $scene.test=true>>">>]
<</if>>
<<case 'bdsm'>>
"@@.npc_manager;No, it would be a shame to waste this opportunity. I think a perfect test, given your near wasting of my time, would be to look into your pain threshold... or@@"<br>
<br>
[<<moveTo "event_manager_bdsm_final_1" "Prove your ability to work under the harshest conditions." 60>>]
<<case 'bondage'>>
"@@.npc_manager;No, it would be a shame to waste this opportunity. I think some harsh bondage would help focus you on the importance of not wasting moments of freedom and choice. Yes, we shall examine your ability to endure and enjoy severe bondage...@@"<br>
<br>
[<<moveTo "event_manager_bondage_final_1" "Prove your ability to show how restrained you can work." 60>>]
<<case 'dominance'>>
"@@.npc_manager;Hmm... rather than waste time... how about we test how your skills at dominance are coming along?@@"<br>
<br>
[<<moveTo "event_manager_dominance_final_1" "Prove your ability to take charge of matters." 60>>]
<</switch>>
<</if>>
</div>/*#
#desc: tested on all skills
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeWorkEvent 'training_checkup'>>
<<applyStress -10>>
<<applyFatigue -25>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You confidently state that you have demonstrated your expertise in every aspect you can think of...<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> pauses for a moment, and then smiles. "@@.npc_manager;Why yes... it would appear that you have. Well done... now you can keep on applying those lovely, lovely skills to your job as my personal, perfect, <<=setup.getSecretaryTitle()>>.@@"<br>
<br>
You tingle with excitement at her words, and her approval as you head back to your desk to continue to do her proud.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div><<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<if !(State.hasPlayed("event_typing_lesson_4_1") || $workEvents.hasOwnProperty("typing_4")) && State.hasPlayed("event_typing_lesson_3_2") && $npc_manager.stage >= 4 && $player.flags.work_chair.focus && $player.sec_style.sex.airtight>>
<<addWorkEvent 'typing_4' _nextDate>>
<<elseif !State.hasPlayed("event_typing_lesson_3_2") && State.hasPlayed("event_typing_lesson_2_2") && $npc_manager.stage >= 3 && $player.sec_style.sex.anal>>
<<addWorkEvent 'typing_3' _nextDate>>
<<elseif !State.hasPlayed("event_typing_lesson_2_2") && State.hasPlayed("event_typing_lesson_1_3") && $npc_manager.stage >= 2 && $player.sec_style.sex.butt_plug>>
<<addWorkEvent 'typing_2' _nextDate>>
<<elseif !State.hasPlayed("event_typing_lesson_1_3")>>
<<addWorkEvent 'typing_1' _nextDate>>
<</if>>/*#
#desc: first typing intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You are working as usual when you get an assignment to report to <<=setup.getNpcName("npc_development","formal")>> for "job training." <br>
<br>
You arrive at a classroom where she has you take a seat on a strangely heavy-duty, metal chair in front of a keyboard before explaining the assignment. "@@.npc_development;As a <<if $fetish.sissy>>SISSI <</if>>Secretary, your skills as a typist are quite important. Speed, obviously, but even more significant is accuracy, a single typo can cause millions of credits of damage to the company, this potential effect obviously magnified even further, given that you are working at the executive level.@@"<br>
<br>
She smiles, putting you at least a little at ease, you consider yourself a fairly decent typist, definitely one of the more easy to adjust to parts of your "new" job.<br>
<br>
"@@.npc_development;We shall start with a simple assessment to see where you currently stand, then conclude with a challenge course meant to help improve your skills.@@"<br>
<br>
She gestures to the keyboard, and you nimble up your fingers in anticipation.<br>
<br>
[<<moveTo "event_typing_lesson_1_2" "Start typing." 600>>]
</div>/*#
#desc: first typing assess
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dexterity' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You type away at a simple "type the words on screen" game,
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
speeding through and putting up what seems to be a high score, nailing both speed and accuracy.
<<else>>
motoring through efficiently with high speed, and only the occasional mistake.
<</if>>
<<=setup.getNpcName("npc_development","formal")>> nods in approval. "@@.npc_development;Very impressive... but there is always room for improvement... and this was obviously a fairly simple, low-stress and artificial scenario. No employee is perfect, but the Department of Employee Development is here to help.@@"
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
maintaining a moderate pace, with not too many errors.
<<else>>
hunting and pecking inefficiently, your efforts overall slow, and riddled with errors.
<</if>>
<<=setup.getNpcName("npc_development","formal")>> shakes her head. "@@.npc_development;Very disappointing... but such failures is exactly why I am here. No employee is perfect, but the Department of Employee Development is here to help.@@"
<</if>>
<br><br>
You look on in surprise as she buckles a belt across your waist to hold you in the chair, following up with another around your chest that forces you to sit a little more upright. "@@.npc_development;Now that we have a baseline, it is time for some training... and, while we are at it, we can work on that posture. Slouching is far from ideal, both for your own ergonomic health, and for the aesthetics of one who is working in a representative position.@@"<br>
<br>
[<<moveTo "event_typing_lesson_1_3" "Training?" 600>>]
</div>/*#
#desc: first typing pain train
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dexterity' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 9 'normal' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 11 'very' $SEEN_FRIEND>>
<<include "addTypingEvent">>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_development","formal")>> loads up a new program, you get a brief sight of the loading screen for "Mistress Beats-Them Teaches Typing" before the activity starts, an initial hesitation met with a harsh shock from your chair.<br>
<br>
"@@.npc_development;Chop, chop! This exercise is designed to teach accuracy, as well as speed. Every error will see immediate punishment! Good luck!@@"<br>
<br>
<<if setup.getTotalValue("dexterity") > 10>>
The initial shock has you a bit nervous as you continue,
<<if setup.getTotalValue("dexterity") > 15>>
but your nimble fingers do their job, keeping you from experiencing more than a couple of painful shocks as you work through the exercise.
<<else>>
but, though you slow down slightly, you are able to complete the exercise without being shocked too many times.
<</if>>
<<else>>
While the fear of punishment has you typing more accurately,
<<if setup.getTotalValue("dexterity") > 5>>
that comes at the cost of speed, and you find yourself punished repeatedly, trapped between the proverbial rock and hard place.
<<else>>
that is a relative notion, and the exercise punishes you repeatedly for your many, many errors.
<</if>>
<</if>>
<br><br>
You're panting in exertion when the exercise comes to an end and <<=setup.getNpcName("npc_development","formal")>> removes the straps. "@@.npc_development;That will do for today. Hopefully you will be able to carry these lessons back to your usual duties. Speed, perfection, obedience, that is the three principles that will help build a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk, and get back to work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: 2nd typing: while vibed intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addPlug = !setup.checkItemTypeTag('plug', ['vibrating'])>>
<<if $scene.addPlug>>
<<set $scene.replacePlug = setup.checkItemTypeWorn("plug", true)>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<</if>>
<<set $scene.firstWorkPlug = $npc_manager.stage < 3 && $npc_manager.stagevalues[2].advance == 0>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_development","formal")>> summons you for another typing lesson and you nervously eye the metal chair, recalling its prior "punitive" modes.<br>
<br>
<<if $scene.addPlug>>
"@@.npc_development;Welcome, welcome. I can see your concern after last lesson, but I assure you that today's exercise will be significantly more fun. Before we commence, you need to get you properly equipped for the lesson, if you would kindly bend over?@@"<br>
<br>
Reflexively obedient, it isn't until <<=setup.getNpcName("npc_development","formal")>> has
<<if $scene.replacePlug>>
replaced your butt-plug
<<else>>
slid a butt-plug into your rear
<</if>>
that you realise that a mere shocking chair is the least of your potential worries.
<<if $scene.firstWorkPlug>>
<br><br>
<<printThought "Am I really going along with this at work? And why does this... THING in my ass feel so... good?">>
<</if>>
<<else>>
"@@.npc_development;Welcome, welcome. I can see your concern after last lesson, but I assure you that today's exercise will be significantly more fun. You are already equipped, so we can get straight to it, if you would kindly take a seat?@@"
<</if>>
<br><br>
Only after <<=setup.getNpcName("npc_development","formal")>> has finished strapping you to the chair and "Mistress Beats-Them Teaches Typing" is booting up does she explain the day's task.<br>
<br>
[<<moveTo "event_typing_lesson_2_2" "Listen." 1800>>]
</div>/*#
#desc: 2nd typing: while vibed
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 50>>
<<applyExperience 'dexterity' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 9 'normal' $SEEN_FRIEND>>
<<include "addTypingEvent">>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
"@@.npc_development;In our last lesson we really just focused on the basics of prioritising accuracy without sacrificing speed. Of course, that sort of transcription scenario is very artificial, after all, who needs to transcribe when you could just copy and paste? Thus, today we will be focusing on the far more applicable skill of taking dictation. And, because one must always be prepared to work through distractions, well...@@" <<=setup.getNpcName("npc_development","formal")>> taps the start lesson button... and the plug in your rear immediately starts vibrating.<br>
<br>
You gasp, and then try to listen close and
<<if setup.getTotalValue("dexterity") > 10>>
focus on typing,
<<if setup.getTotalValue("dexterity") > 15>>
managing to draw additional motivation from the buzzing in your rear as you meticulously
<<else>>
managing to focus past the buzzing distraction to mostly successfully
<</if>>
transcribe the recording played back by the computer.<br>
<br>
"@@.npc_development;Well done! I know the joke is that <<if $fetish.sissy>>SISSI <</if>>Secretaries focus on dick-taking... but dictation is nearly as important, and with your skills you should be more than prepared to attend your manager, even in stressful situations.@@"
<<else>>
attempt to type, the constant stimulation
<<if setup.getTotalValue("dexterity") > 5>>
causing you to make quite a few more errors than you might otherwise, your pace as erratic as your excitement,
<<else>>
making your already poor typing a disaster,
<</if>>
the vibrations never stopping, but also varying constantly so that you can never get used to the stimulation.<br>
<br>
"@@.npc_development;Hmm... it would seem that you have, perhaps, been spending more time training dick-taking than dictation. Remember, being a <<if $fetish.sissy>>SISSI <</if>>Secretary is about all types of service. You should be more than prepared to attend your manager, even in stressful situations.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_development","formal")>> unbuckles your restraints, but leaves the plug in your rear as she concludes the lesson and dismisses you back to your normal duties.<<if $scene.firstPlug>> Every step reminds you of the thing in your ass... and yet you return to your desk without removing it... but that's just because you don't want to be seen fiddling with your rear in public, right?<</if>><br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk, and get back to work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: 3rd typing: while being fucked intro
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.anal || !$player.sec_style.sex.sex_woman>>
<<completeWorkEvent>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addWorkEvent 'typing_3' _nextDate>>
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Once more you are summoned to <<=ps(setup.getNpcName("npc_development","formal"))>> classroom for a lesson in typing. Rather than the table and chair you've become used to from your prior visits, she has placed a keyboard in the middle of her desk, directing you to bend over to reach it before moving in behind you.<br>
<br>
"@@.npc_development;So, as we discussed previously, taking dictation while distracted is an important skill. Today we are going to focus on using that skill while multitasking service. To whit, I am going to fuck your sexy<<if $fetish.sissy>> sissy<</if>> ass while you practice typing.@@"<br>
<br>
[<<moveTo "event_typing_lesson_3_2" "Get in position and ready to type." 300>>]<br>
[<<moveTo "event_typing_lesson_3_2_abort" "You don't feel properly prepared for this..." 60>>]
</div>/*#
#desc: 3rd typing: while being fucked abort
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.get_raped>>
<<addItem "panel_gag">>
<<wearItem "panel_gag" true>>
<<applyExperience 'bondage' 13 'normal' $SEEN_STRANGER>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 14, 0, 0)>>
<<addWorkEvent 'typing_3' _nextDate>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development") "elite_guard" "elite_guard">>
<div id="invframe" class="scrolltext">
You attempt to excuse yourself by telling <<=setup.getNpcName("npc_development","formal")>> that you need more typing practice before you can handle this sort of assignment.<br>
<br>
<<if $fetish.get_raped>>
<<=setup.getNpcName("npc_development","formal")>> frowns. "@@.npc_development;And what made you think you had a choice in the matter<<if $fetish.sissy>> SISSI<</if>>?@@"<br>
<br>
A snap of her fingers causes a pair of guards to appear, overpowering you and pushing you over the desk where you are strapped in position, a gag stifling any further objections, with your ass sticking out and hands cuffed to the keyboard... helpless as <<=setup.getNpcName("npc_development","formal")>> dismisses the guards and moves behind you.<br>
<br>
"@@.npc_development;If one was already an expert they would not need training, yes? So your objection only reinforces the necessity of this lesson... now, pay attention, and prepare to take my dictation... and my dick.@@"<br>
<br>
[<<moveTo "event_typing_lesson_3_2" "It seems you have no choice but to type..." 300>>]
<<else>>
"@@.npc_development;I see... well, it is good to have accurate self-assessment... but I caution you to be too conservative, sometimes one needs to push their limits if they wish to progress. We will circle back at a later date, after you have had additional time to... practice.@@"<br>
<br>
She dismisses you back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and resume your normal duties." 300 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: 3rd typing: while being fucked
#status: RELEASED 0.9.0.0
#ignore_spell: unitasking
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true)>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<applyExperience 'anal' $npc_development.penis_size 'normal' $SEEN_FRIEND>>
<<include "addTypingEvent">>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
A strap added over top of your hips means you won't be moving from this position until <<=setup.getNpcName("npc_development","formal")>> is done, and she <<if setup.analyzeWornTags(['skirt','pants']) == 'skirt'>>flips up your skirt<<else>>pulls down your pants<</if>><<if $scene.removePlug>>, removes your plug,<</if>> and places a stack of papers on your back as she starts fucking you and reading aloud.<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> gives you the business while you focus on recording the corporate report she is reading aloud.
<<if setup.getTotalValue("dexterity") > 10>>
In some ways it is even easier than the last time, <<=ps(setup.getNpcName("npc_development","formal"))>> words more crisp and clear than the prior recording, and her pace of fucking you, while certainly intense, less disruptive than the randomised pattern of the vibrating plug.<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> finishes the report, and herself, with a final deep thrust, leaving you to catch your breath as she steps away.<br>
<br>
"@@.npc_development;Well done! And a good thing, too, this ass of yours is a delightful fuck, as irresistible to plunge into as it is divine to plow, being able to keep up your other duties while bending over for your manager would be just the thing to avoid falling... behind. No pun intended.@@"
<<else>>
Despite your training, you still find things a struggle, the occasional particularly hard thrust causing your hands to ship, and you to mis-type as you struggle to keep up, your final "report" missing words and riddled with misspellings... though you're too busy panting in recovery to really think about it.<br>
<br>
"@@.npc_development;Hmm... it would seem that unitasking is more your speed. A challenge, given how irresistibly tight and fuckable your ass is.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_development","formal")>> unbuckles the strap holding you to her desk and gives you a minute to clean yourself up and fix your clothes before <<if $scene.removePlug>>shoving your plug back where it belongs and <</if>>sending you back to work.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and resume your normal duties." 300 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<if setup.checkItemWorn('panel_gag')>><<removeItem 'panel_gag' true>><<deleteItem 'panel_gag'>><</if>><<completeWorkEvent>>">>]
</div>/*#
#desc: 4th typing: airtight chair-fuck intro
#status: RELEASED 0.9.0.0
#ignore_spell: vm
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_development","formal")>> arrives in your office and you rise to escort her in to meet with <<=setup.getNpcName("npc_manager","formal")>> only for her to shake her head and motion for you to resume your seat.<br>
<br>
"@@.npc_development;Actually, I am here for you. I see you have been taking full advantage of that lovely efficiency-optimising chair of yours, now it is time to combine it with your typing lessons and really show you what peak performance can look like.@@"<br>
<br>
Nervous, but also excited, you take your seat and part your lips, the chair doing its job to bind and fill you completely as <<=setup.getNpcName("npc_development","formal")>> opens a VM with the familiar "Mistress Beats-Them Teaches Typing" before motioning for you to get started.<br>
<br>
[<<moveTo "event_typing_lesson_4_2" "Listen." 3000>>]
</div>/*#
#desc: 4th typing: airtight chair-fuck
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Under <<=ps(setup.getNpcName("npc_development","formal"))>> direction your chair ramps up far higher than its normal pace, ravaging and pounding you in <<if $player.body_ref.vagina>>all three<<else>>both<</if>> holes as you struggle... and then enter a zen state, typing perfectly as your body is used. You exist to serve, after all, and if that means sucking, being fucked and typing all at the same time? Well, that is exactly what you will do.<br>
<br>
Though you have transcended time, you can somehow sense that this "lesson" runs far longer than the previous ones, nearly an hour of nonstop typing and machine-fucking before <<=setup.getNpcName("npc_development","formal")>> reverts things to how you had them before she arrived. Winking at you in congratulations. "@@.npc_development;Superbly done. You really have earned that title of <<=setup.getSecretaryTitle()>>.@@"<br>
<br>
She blows you a kiss and departs... as you settle back in for your normal work you catch a momentary glance of <<=setup.getNpcName("npc_development","formal")>> smiling at you from her doorway, and you sit just a little bit taller in pride.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work<<if $fetish.sissy>>, SISSI<</if>>." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: wait/contacted for after work secretary performance review
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.dollChange = setup.checkItemWorn('doll_mask') && !$events.hasOwnProperty("overnight_stay_debrief")>>
<<if $scene.dollChange>>
<<removeItemSet 'doll_outfit'>>
<<deleteItemSet 'doll_outfit'>>
<</if>>
<<include "calcPerformanceReview">>
<<set $scene.review.special = setup.calcReviewSpecialEvent()>>
<<if $scene.review.special == "manager_apology">>
<<initRoom>>
<<moveTo "event_manager_post_evil_apology_1">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.dollChange>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
You clock out and get ready to leave, getting everything in order before waiting for <<=setup.getNpcName('npc_manager', 'formal')>> to summon you for your daily performance review. Fortunately, she follows her own advice regarding punctuality, and you soon see an icon flashing on your screen that pops up with a message from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, come see me now for your daily performance review.@@"<br>
<br>
<<if $scene.dollChange>>
You enter the office and she takes a moment to help you out of the doll outfit with a stern nod. "@@.npc_manager;Now, I hope today has helped set you an example and that you will better focus on dressing properly for your duties. I do so prefer looking at your lovely, smiling face, but you work in a representative position, and I will take what measures are necessary to attend to that fact.@@" She holds up the doll-like mask in emphasis.<br>
<br>
<</if>>
<<switch $scene.review.special>>
<<case "" "ultimate_maid" "pink_slut_maid" "stage3_party_repeat_invite" "forced_aslut" "stage3_party_first_invite" "retreat_announce" "stage4_party_first_invite" "stage3_goals" "sec_style_intro" "latex_offer">>
[<<moveTo "event_manager_performance_review_1" "Enter the office." 60>>]
<<case "stage1_end_good_girl">>
[<<moveTo "event_manager_stage1_end_reward_1_alt" "Enter the office." 60>>]
<<case "stage2_end_bad_girl">>
[<<moveTo "event_manager_pegging_0_bad_girl_0" "Enter the office." 60>>]
<<case "stage2_end_good_girl">>
[<<moveTo "event_manager_pegging_0" "Enter the office." 60>>]
<<case "retreat_invite">>
[<<moveTo "event_manager_retreat_invite_0" "Enter the office." 60>>]
<<case "retreat_leave">>
[<<moveTo "event_corporate_retreat_transit_1" "Enter the office." 60>>]
<<case "obedient_collar">>
[<<moveTo "event_manager_collar_obedient_1" "Enter the office." 60>>]
<<case "stage4_necklace_party">>
[<<moveTo "event_party_necklace_1" "Enter the office." 60>>]
<<case "vag_pegging">>
[<<moveTo "event_manager_vag_peg_1" "Enter the office." 60>>]
<<case "strict_breasts">>
[<<moveTo "event_secretary_style_breasts_forced_1_end_1" "Enter the office." 60>>]
<<case "strict_heels">>
[<<moveTo "event_secretary_style_heels_strict_end_day_1" "Enter the office." 60>>]
<<case "psych_rescue_intro">>
[<<moveTo "event_manager_psychiatrist_rescue_intro_1" "Enter the office." 60>>]
<<case "rival_destruction_intro">>
[<<moveTo "event_rival_destruction_intro_1" "Enter the office." 60>>]
<<case "rival_destruction">>
[<<moveTo "event_rival_destruction_1" "Enter the office." 60>>]
<<case "overnight_train">>
[<<moveTo "event_manager_overnight_train_1" "Enter the office." 60>>]
<<case "manager_evil">>
[<<moveTo "event_manager_stage5_afternoon_1" "Enter the office." 60>>]
<<default>>
ERROR unexpected scene.review.special <<=$scene.review.special>>
<</switch>>
</div>/*#
#desc: after work performance assessment calculation
#status: FINISHED 0.4.0.0
#*/
<<set $scene.review = {}>>
<<set $scene.review.remuneration = false>>
<<set $scene.review.firstremuneration = false>>
<<set $scene.review.special = "">>
<<if $now.getUTCDay()==4>>
<<set $scene.review.remuneration = true>>
<<if !$player.flags.firstremuneration>>
<<set $player.flags.firstremuneration = true>>
<<set $scene.review.firstremuneration = true>>
<</if>>
<</if>><<if $now.getUTCDay() == 5>>
<<set $scene.workEffectiveness = ($player.work.tmpworkPensum/(5*$player.work.bonusReq))>>
<<else>>
<<set $scene.workEffectiveness = ($player.work.tmpworkPensum/(8.5*$player.work.bonusReq))>>
<</if>>/*#
#desc: after work secretary performance assessment
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<include "setLastSeenCage">>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<<if $player.work.tmphoursDone == 0>>
<<set $scene.workEffectiveness = 0>>
<<else>>
<<if $scene.shortWorkDay>>
<<set $scene.workEffectiveness = $scene.workEffectiveness * 2>>
<</if>>
<</if>>
<<if $scene.workEffectiveness>=1.125>>
<<set $npc_manager.workdiscipline+=0.5>>
<<elseif $scene.workEffectiveness>=1.0>>
<<set $npc_manager.workdiscipline+=0.25>>
<<elseif $scene.workEffectiveness>=0.875>>
<<set $npc_manager.workdiscipline+=0>>
<<else>>
<<set $npc_manager.workdiscipline-=0.5>>
<</if>>
<</if>>
<<if ($npc_manager.anger-$npc_manager.affection)>5>>
<<set $scene.tmpDM = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkNaked() && ($player.flags.commando || setup.getFirstItemFromType('underwear') == "")>>
<<initRoom>>
<<set $scene.returnto = "event_manager_performance_review_3">>
<<set $scene.first = !State.hasPlayed("npc_manager_perversion_1")>>
<<moveTo 'npc_manager_perversion_1'>>
<</if>>
<<else>>
<<set $scene.tmpDM = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Have a seat. Please.@@"<br>
<br>
You sit down in the comfortable chair in front of her work desk.
<<if setup.getTotalValue('submission')<5>>
Again there is that strange feeling nagging at the back of your head. How does she always look down on you? Is there a trick to it or simply your mind's illusion?
<<else>>
The strange feeling of hesitation you once felt in the back of your mind when in her presence is steadily becoming but a distant memory. Of course it makes sense that she always looks down at you. She is superior to you. It no longer matters, the strange physics of it. You have accepted your role as her subordinate, having done so many things for her you wouldn't have done otherwise, or for anyone else.
<</if>>
<br><br>
<<if $scene.shortWorkDay>>
<<if $now.getUTCDay() == 4>>
"@@.npc_manager;Once again you have taken the opportunity to work an alternate shift, cross-training is quite alright, so long as you stay on top of your base responsibilities.@@"
<<else>>
"@@.npc_manager;Obviously today was an abbreviated shift, and I shall not hold that against you in the moment, but I will expect you to make up the time before the end of your work-week.@@" You wince slightly.
<</if>>
<br><br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getTotalValue("submission") > 15>>
<<printThought '<<=setup.getNpcName("npc_manager","title")>> is such a slave-driver... and I am so blessed to be that slave!'>>
<<else>>
<<printThought '<<=setup.getNpcName("npc_manager","title")>> can be such a slave-driver...'>>
<</if>>
<<else>>
<<if setup.getTotalValue("submission") > 5>>
<<printThought "Talk about a slave-driver... literally, I suppose.">>
<<else>>
<<printThought "Talk about a slave-driver...">>
<</if>>
<</if>>
<br><br>
<</if>>
<<if $scene.workEffectiveness>=5>>
"@@.npc_manager;Magnificent. You have been doing in a day what a normal Secretary<<if $fetish.sissy>> — SISSI or otherwise<</if>> would be expected to take a week to complete. Astounding, and irrefutable proof that you have really found a job perfectly suited to you.@@"
<<elseif $scene.workEffectiveness>=4>>
"@@.npc_manager;Superb. You have literally done the work of four Secretaries<<if $fetish.sissy>> — SISSI or otherwise<</if>>. Efficiency that <<if $player.body_ref.vagina>>exceeds<<else>>doubles<</if>> your holes... quite the accomplishment, and proof positive that you have really found a job perfectly suited to you@@"
<<elseif $scene.workEffectiveness>=3>>
"@@.npc_manager;Very good. You have literally done the work of THREE Secretaries<<if $fetish.sissy>> — SISSI or otherwise<</if>>. Quite the accomplishment and proof positive that you have really found a job perfectly suited to you.@@"
<<elseif $scene.workEffectiveness>=2>>
"@@.npc_manager;Very good. You have literally done the work of TWO Secretaries<<if $fetish.sissy>> — SISSI or otherwise<</if>>. Quite the accomplishment and proof positive that you have really found a job perfectly suited to you.@@"
<<elseif $scene.workEffectiveness>=1.5>>
"@@.npc_manager;Well! You have done the work of a Secretary and a half! Magnificent.@@"
<<elseif $scene.workEffectiveness>=1.25>>
"@@.npc_manager;Well, colour me impressed. You did fantastic today, well beyond expectations. Marvelous.@@"
<<elseif $scene.workEffectiveness>=1.125>>
"@@.npc_manager;Well, colour me impressed. You did really well today. You accomplished more than I anticipated. Seems like I made the right decision in hiring you.@@"
<<elseif $scene.workEffectiveness>=1.0>>
"@@.npc_manager;Well, your working performance was good<<if $npc_manager.stage < 3>> for a newcomer from a different<<else>>, given your<</if>> background. Please maintain at least this level of performance in the future.@@"
<<elseif $scene.workEffectiveness>=0.875>>
"@@.npc_manager;Your performance today was quite lacklustre. Do not forget that I want you to strive for nothing less than perfection.@@"
<<else>>
<<if $npc_manager.stage >= 3>>
<<if $player.work.secretaryRank > 1>>
"@@.npc_manager;You are a <<=setup.getSecretaryTitle()>>, which means you are held to <<if $player.work.secretaryRank >= 3>>the highest<<else>>very high<</if>> standards. This is no mere dalliance, this is your career and I expect you to give it the focus and priority it deserves... and that you have proven yourself quite capable of! Dedication and focus, that is what you need, not dalliance and laziness.@@"
<<else>>
"@@.npc_manager;I know you made it through your probationary period, but did you think that would relax expectations? Things are more serious now, if you are fired it is no longer "goodbye, nice working with you..." no, per your contract the company is not just allowed, but required to attempt to find you a more suitable position into which you can be repurposed... that would be quite a pity, to make me so regret the decision to hire you...@@"
<</if>>
<<else>>
"@@.npc_manager;You will have to raise your efforts a lot more if you want to keep this job past your probationary period. Do not make me regret my decision to hire you.@@"
<</if>>
<</if>>
<br><br>
<<if $npc_manager.anger>=$npc_manager.affection>>
"@@.npc_manager;Still, you managed to mess up
<<if ($npc_manager.anger-$npc_manager.affection) > 5>>
with far too high a frequency for my taste. I am afraid that another disciplinary measure may be required to remind you of your duties.
<<elseif $npc_manager.anger>3>>
several times. Unless you want another disciplinary measure, you had better try harder from now on.
<<else>>
a little bit. Nothing too major. Just make sure it never happens again and you will be just fine.
<</if>>
Well, here is to a better, more obedient tomorrow!@@"
<br><br>
<</if>>
<<if setup.checkNaked() && !($player.flags.commando || setup.getFirstItemFromType('underwear') == "")>>
"@@.npc_manager;I said I want to see you in underwear — I know you have some on you. Put them on, this is not the time for you to be strutting your bare flesh in front of me like some sort of depraved exhibitionist.@@"
<<elseif $scene.tmpDM == true && !$scene.review.remuneration && !$scene.review.special>>
"@@.npc_manager;We might as well start right now. Please take off everything besides your underwear.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "npc_manager_perversion_1" "Remove your clothes, as commanded." 60 "<<set $player.cutscene.lockinventory = true>><<removeEverythingButUnderwear>><<set $scene.returnto='event_manager_performance_review_3'>><<set $scene.first = !State.hasPlayed('npc_manager_perversion_1')>>">>]
<</if>>
<<else>>
<<if $scene.review && $scene.review.remuneration>>
<<if $scene.review.firstremuneration>>
"@@.npc_manager;Okay, this may be a little bit strange for you, <<=$player.first_name>>, since you were used to getting your salary at the end of the month at your last job. But since I know you were terminated without severance, I have arranged to make an exception during your trial period. You will get your wages every Thursday evening after your performance review. I know you may be accustomed to monthly pay, but I think weekly is a better feedback loop. It should help give you some solvency, as well as more immediately reflect your willingness to perform as marvelously as possible.@@"
<<else>>
"@@.npc_manager;So it is Thursday once again. Let us progress straight to the part where we discuss your remuneration, shall we, <<=$player.first_name>>?@@"
<</if>>
<br><br>
[<<moveTo "event_manager_salary" "Continue." 60>>]
<<else>>
<<set $player.cutscene.lockinventory = false>>
<<switch $scene.review.special>>
<<case "ultimate_maid">>
Thanking her with a curtsy you turn to leave only for her to call out.<br>
<br>
"@@.npc_manager;Ah, ah, I did not dismiss you yet.@@" You turn back to her smiling wide. "@@.npc_manager;No, in light of your... extracurricular activities I commissioned a special gift for you and it is finally ready...@@"<br>
<br>
Your heart leaps at the thought — whether in excitement or fear you could not say. In any case you wait breathlessly as she signals you to turn around.<br>
<br>
"@@.npc_manager;And no peeking, missy! I want your first sight of this to be utterly perfect.@@"<br>
<br>
[<<moveTo "event_manager_maid_present_1" "Wait obediently." 60 '<<set $scene.obey = true>>'>>]<br>
[<<moveTo "event_manager_maid_present_1_alt" "Sneak a peek." 60 '<<set $scene.obey = false>>'>>]
<<case "pink_slut_maid">>
You can tell by her slight smile that she has something extra for you and you wait patiently as she retrieves a box from her wardrobe.<br>
<br>
"@@.npc_manager;Here. With all the "extra work" you have been putting in as a maid well... I thought you ought to have a uniform to match your predilections.@@"<br>
<br>
[<<moveTo "event_manager_maid_slutty_present_1" "See what she got for you." 60 '<<set $scene.obey = true>>'>>]<br>
<<case "forced_aslut">>
She smiles a little wider, seemingly excited to be past the usual routine and on to something else...<br>
<br>
[<<moveTo "event_uniform_upgrade_forced_1" "Continue." 60>>]
<<case "stage3_party_first_invite">>
She smiles a little wider, seemingly excited about something...<br>
<br>
[<<moveTo "event_party_invite_1" "Continue." 60>>]
<<case "sec_style_intro">>
You leave <<=ps(setup.getNpcName("npc_manager","formal"))>> office, only for her to follow you out.<br>
<br>
[<<moveTo "event_secretary_style_structure_1" "She motions for you to take a seat at your desk." 300>>]
<<case "latex_offer">>
You make to leave <<=ps(setup.getNpcName("npc_manager","formal"))>> office, but she raises a finger for you to stay.<br>
<br>
[<<moveTo "event_latex_secretary_1" "Enter the office." 60>>]
<<default>>
"@@.npc_manager;This will be all for today. You may leave, <<=$player.first_name>>.@@"<br>
<br>
[<<moveTo "room_office_manager" 'You would like to talk about something.' 60 "<<set $scene.direct=true>>">>]<br>
[<<moveTo "room_office_after_work" "Leave the office.">>]
<</switch>>
<</if>>
<</if>>
</div>/*#
#desc: recover from after work spanking
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 5)>>
<</if>>
<<if setup.checkPlayerDressed()>>
<<initRoom>>
<<moveTo "event_manager_performance_review_4">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
It takes you a while, but you manage to somewhat recover from the pain of your "discipline" while <<=ps(setup.getNpcName('npc_manager', 'formal'))>> cleans the paddle and places it back into the drawer.<br>
<br>
"@@.npc_manager;Would you please put your clothes back on, <<=$player.first_name>>? As much as I love to look at the art I left on your behind, it is somewhat distracting. Thank you.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_performance_review_4" "Put your clothes back on." 180 "<<useClothSetPop 'tmp' true>>">>]
<</if>>
</div>/*#
#desc: post after-work punishment manager dismisses or routes to getting your paycheck (depending on day)
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Very good. Naturally I want you to continue to honour our agreement in the near future as well <<=$player.first_name>>.@@"<br>
<br>
<<if $scene.review && $scene.review.remuneration>>
"@@.npc_manager;Now that that is sorted out I suppose we should move on to your compensation...@@"<br>
<br>
[<<moveTo "event_manager_salary" "Continue." 60>>]
<<else>>
"@@.npc_manager;Well, that would be all for today, have a nice evening.@@"<br>
<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<</if>>
</div>/*#
#desc: accept/decline option to attend party
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _nextDate = setup.setNextDate($now, 0, 18, 30)>>
<<addTaskById 'task_stage_3_party' _nextDate>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<set $scene.keyTask = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key') && !setup.checkItemInInventory(_keyId)>>
<<if $scene.keyTask>>
<<deleteMember $currentTasks.manager_morning_inspection_task.trigger 'chastity_key'>>
<<set $npc_manager.flags.partyKeptKey = true>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You reply that you would very much like to attend another of <<=ps(setup.getNpcName("npc_boss","formal"))>> Thursday parties.<br>
<br>
"@@.npc_manager;Very well, I shall pick you up later in the evening.@@"
<<else>>
You reply that you would prefer not to attend this week's party.<br>
<br>
<<if $player.flags.stage3party.cumContest == 6 && $npc_party_waitress.stage == 5 && $player.flags.poker.won && $player.flags.poker.faint && $player.flags.poker.cum && $player.flags.stage3party.worked_waitress && $npc_pokerman.flags.consolation && $npc_pokerman.flags.enslaved_you && $npc_pokercheater.flags.enslaved_you>>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Understandable, you seem to have done quite a lot at those parties already. Though things are always changing and something new may pop up in the future.@@" <<hint $options "You have completed all currently implemented party events.">>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Very well, no sense attending if you have no specific intentions.@@" <<hint $options "You have unlocked all implemented party events, but have not completed them.">>
<</if>>
<</if>>
<br><br>
<<if $scene.keyTask>>
You've already left her office when you realise <<=setup.getNpcName("npc_manager","formal")>> did not give you your key back. You consider going back to ask but think better of it. Looks like you're going to be locked until the morning.<br>
<br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office.">>]
</div>/*#
#desc: manager offers collar
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemWorn('obedience_collar')>>
<<set $scene.wornCollarType = 'sleep'>>
<<elseif setup.checkItemWorn('choker_sissy')>>
<<set $scene.wornCollarType = 'choker_sissy'>>
<<else>>
<<include "calcCollarType">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office to find her standing in wait, a welcoming... and proud, expression on her face.<br>
<br>
"@@.npc_manager;Another day in the books for the most wonderful of <<if $fetish.sissy>>SISSI <</if>>Secretaries,@@" she states in welcome.<br>
<br>
Your curtsy obediently and respond that it <<if setup.getAverageSecStyle() == "obedient">>is "@@.pc;All thanks to her guidance.@@"<<else>>your pleasure, as always<</if>>.<br>
<br>
She smiles even wider, but not the predatory smile you have come to know... and secretly love, no... this is somehow warmer, friendly, yet still with that edge that makes you instinctively obedient.<br>
<br>
"@@.npc_manager;I know, <<if setup.getAverageSecStyle() == "obedient">>but you have followed that guidance so well,<<else>>but you have<</if>> truly surpassed my wildest expectations in becoming my perfect assistant... my perfect slave.@@" You shiver as she steps closer and you stand tall and proud, despite the urge to drop to your knees and worship her feet. She strokes your cheek and you reflexively nuzzle her hand submissively "@@.npc_manager;So lovely...@@" She sighs in contentment. "@@.npc_manager;Today, as a reward for all of your hard work, I wanted to make you an offer, grant you the opportunity to give yourself over concretely to something you have already submitted to in nearly every way. For a long time now you have been my slave, my dutiful, obedient assistant... well, today I present you the opportunity to take that to the next level. To confirm your devotion, and allow me to mark it, by collaring you. Properly.@@"<br>
<br>
Her finger traces down your cheek,
<<switch $scene.wornCollarType>>
<<case 'none'>>
her hand gently stroking your bare throat. "@@.npc_manager;You would love that, would you not? To feel the permanent mark of my ownership lock around this beautiful neck?@@"
<<case 'sleep'>>
her hand caressing the heavy collar around your throat. "@@.npc_manager;I know I gave you this, but it is a crude thing, a tool more than a marker. Would you not prefer to feel the permanent mark of my ownership lock around this beautiful neck?@@"
<<case 'choker_sissy'>>
her fingers running through the <<if $fetish.sissy>>sissy <</if>>pink frills around your neck. "@@.npc_manager;What you have now is beautiful, for certain, but would you not prefer something more... secure? To feel the permanent mark of my ownership lock around this beautiful neck?@@"
<<case 'ring'>>
her finger gently tugging at the ring at the front of your collar. "@@.npc_manager;You are so close, already... would you not prefer to wear something personal, and secure? To feel the permanent mark of my ownership lock around this beautiful neck?@@"
<<case 'collar'>>
her fingers gently brushing your collar. "@@.npc_manager;You wear a collar so well.. but would you not prefer something that truly marked you my slave? Leash-ready, a permanent signifier of my ownership locked around this beautiful neck?@@"
<<case 'necklace'>>
her fingers trace your necklace. "@@.npc_manager;The jewellery is lovely, but so transitory, ephemeral... would you not prefer something that truly marked you my slave? To feel a permanent signifier of my ownership locked around this beautiful neck?@@"
<<case 'choker'>>
her fingers tracing the edge of your choker. "@@.npc_manager;Mmm, a choker is nice, but you would look so much better with a collar. A permanent signifier of my ownership locked around this beautiful neck...@@"
<<case 'tie'>>
her fingers toy with your tie, giving it a slight tug that has you reflecting its similarity to a leash. "@@.npc_manager;Hmm, so formal, and with a bit of utility. But I think a proper collar would be better, a permanent signifier of my ownership locked around this beautiful neck...@@"
<<default>>
ERROR: unexpected scene.worn collar type <<=$scene.wornCollarType>>
<</switch>>
<br><br>
Her hand pulls away and you nearly fall forward, practically entranced. "@@.npc_manager;So, my dear. Will you accept my offer? I know I have pushed you before, but I want this to be something you agree to willingly, though this offer is one-time only. I will not hold it against you either personally, or professionally, should you decline. So...@@" She pauses for effect, "@@.npc_manager;Will you be my slave?@@"<br>
<br>
[<<moveTo "event_manager_collar_obedient_2" 'Yes, <<=setup.getNpcName("npc_manager", "formal")>>.' 600 "<<set $scene.accept=true>><<set $scene.fromReview=true>>">>]<br>
[<<moveTo "event_manager_collar_obedient_2" "Decline her offer." 60 "<<set $scene.accept=false>><<set $scene.fromReview=true>>">>]
</div>/*#
#desc: accept manager collar
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $scene.choker = setup.getItemFromType("choker")>>
<<if $scene.choker != "">>
<<removeItem $scene.choker true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Your voice states a soft, but resolute, "@@.pc;Yes, <<=setup.getNpcName('npc_manager', 'formal')>>@@" as you slowly, inexorably fall to your knees.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> brushes her fingers through your hair<<if $scene.choker>>, before gently removing the <<=setup.getItemName($scene.choker)>> from your neck<</if>>. "@@.npc_manager;So, my dear... now that you have given yourself to me... you get a final choice... how would you like my ownership over you to be marked?@@"<br>
<br>
You look up, she is holding a collar in each hand — one looks to be a sturdier, locking version of the <<=setup.getItemName('choker_sissy')>>, the other a stunning black and gold metal collar.<br>
<br>
"@@.npc_manager;So, which shall it be, my lovely slave?@@"<br>
<br>
[<<moveTo "event_manager_collar_obedient_3" "Choose the frilly pink collar." 600 "<<set $scene.newCollar='secure_sissy_choker'>>">>]<br>
[<<moveTo "event_manager_collar_obedient_3" "Choose the heavy metallic collar." 60 "<<set $scene.newCollar='metal_collar_black'>>">>]
<<else>>
Your heart thunders in your chest as you, politely, tell <<=setup.getNpcName('npc_manager', 'formal')>> that you are happy in your current position...<br>
<br>
You know she must be disappointed in your decision, but she hides it quickly. "@@.npc_manager;Very well... shall we proceed to your performance review, then?@@"<br>
<br>
<<if $scene.fromReview>>
[<<moveTo "event_manager_performance_review_1" "Continue." 360>>]
<<else>>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: accept manager collar
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem $scene.newCollar>>
<<wearItem $scene.newCollar true>>
<<if $scene.newCollar == "secure_sissy_choker" && $player.sec_style.clothing.sissy_choker == "">>
<<set $player.sec_style.clothing.sissy_choker = "obedient">>
<<set $npc_manager.flags.seenSissyChoker = true>>
<</if>>
<<setThreshold 'submission' 'collar_submission' 'obedient'>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<if !$player.sec_style.submission.collar>>
<<set $player.sec_style.submission.collar = "obedient">>
<</if>>
<<set $player.flags.collar.owner = 'npc_manager'>>
<<set $player.flags.collar.collarId = $scene.newCollar>>
<<include "checkTattooCollar">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_50'
10
'event_psychiatrist_session_collar_manager_1'
false
>>
<<addNpcTheme 'npc_manager' 'aslut' 'theme_manager_collar'
0
'event_manager_theme_collar_1'
true
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.newCollar == 'secure_sissy_choker'>>
You look towards the pink collar and <<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Once again, you prove yourself to be the cutest <<if $fetish.sissy>>sissy<<else>>thing<</if>>.@@"<br>
<br>
You hold your hair out of the way as your heart thunders and she brings the choker to your throat. The frills tickle, but in a good way, and you look longingly up at her as she makes sure everything is arranged before the soft click of the lock seals it all in place.
<<else>>
You look towards the black and gold metal collar and <<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Lovely. Such a bold and beautiful way to declare yourself my slave.@@"<br>
<br>
The metal is cool against your skin, heavy and steep, but not quite uncomfortable. Instead the weight only serves to remind you of your <<=setup.getNpcName('npc_manager', 'title')>>; just as your obedience to her weighs heavy on your thoughts, so too does this wonderful mark of ownership weigh on your body.
<</if>>
<br><br>
"@@.npc_manager;There. Beautiful — note that it is hypoallergenic and washable so you can truly wear it 24/7... oh, and a little bonus feature, that you are far too behaved to need, but I think you will enjoy.@@" She traces the front of the collar with her finger. "@@.npc_manager;It is electrified, and packs a tracking device. So I will always know where you are... and be capable of administering a nice punishing shock, not that you would ever be in need of such correction, hmm?@@"<br>
<br>
"@@.pc;Of course not, <<=setup.getNpcName('npc_manager', 'formal')>>.@@" You reply softly.<br>
<br>
"@@.npc_manager;Delightful. Now, shall we go on to the day's assessment?@@"<br>
<br>
You nod and rise to your feet, one hand reflexively tracing the collar around your neck.<br>
<br>
<<printThought "I really am hers...">><br>
<br>
<<if $scene.fromReview>>
[<<moveTo "event_manager_performance_review_1" "Continue." 360>>]
<<else>>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: work bimbo: department all-hands bound
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "ring_gag">>
<<wearItem "ring_gag" true>>
<<addItem "armbinder_pink">>
<<wearItem "armbinder_pink" true>>
<<applyExperience 'bondage' 13 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
You show up for another bimbo shift and <<=setup.getNpcName("npc_sexdoll","first")>> greets you looking a bit frazzled, power-walking as fast as her steep heels will take her up the elevator and then down a hallway. You ask what's going on and she explains that "@@.npc_sexdoll;there is a department all-hands today. Which means it's all sluts on deck to keep up morale. Between planning meetings, presentations and break-out sessions everyone is going to be very busy, which means that they need to make maximum use of their short breaks.@@"<br>
<br>
You arrive at your destination and <<=setup.getNpcName("npc_sexdoll","first")>> leads you inside. Several of your coworkers are already strapped in position, legs spread, bent over, and with mouth's spread wide with ring-gags; each "bimbo" naked, restrained and ready to serve from either end, though you note nobody is doing anything at present other than dripping and drooling.<br>
<br>
<<=setup.getNpcName("npc_sexdoll","first")>> starts by helping you strip and you get in position as she explains. "@@.npc_sexdoll;Since meetings can run long it's important that we're all ready to provide the maximum in stress relief on a moment's notice. Some girls complain that it makes for a hard shift, but I love it. There's really nothing like being mounted in place and hard. What more could a bimbo <<if $fetish.sissy>>sissy <</if>>fuck-doll desire? And, really, it's the least we can do to help the important people at the company do their best. They're all so smart, and work so hard, the really earn all the relief we can provide.@@"<br>
<br>
The ring gag prevents you from responding to this observation as <<=setup.getNpcName("npc_sexdoll","first")>> finishes binding you in position before showing off her expertise by restraining herself just as thoroughly without any outside assistance.<br>
<br>
Bent over and spread you really have nothing to do but wait for whatever meeting it is to let out and for you to put your bimbo skills to work...<br>
<br>
[<<moveTo "event_work_bimbo_all_hands_2" "Wait..." 3700>>]
</div>/*#
#desc: work bimbo: first fuck
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 15 'terrible' $EXPOSED>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
There are no visible clocks in the "stress relief" room, so you don't have any way to keep precise track of time, and no entertainment save to look around at your fellow bound bimbos, helpless to do anything but moan and drool through their gags or try to shuffle in their bonds to keep from cramping.<br>
<br>
You estimate it's been at least an hour when the door finally opens. In an instant things go from zero to max as suited employees stream in. You and all your fellow bimbos are almost instantly hard at work fore and aft,
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5>>
your company-issued <<=setup.getItemTypeName("cage")>> presenting both of your holes for use
<<elseif setup.checkItemTypeWorn("cage")>>
your <<=setup.getItemTypeName("cage")>> locking away your
<</if>>
<<else>>
as you are fucked without foreplay or acknowledgement.
<</if>>
Some employees continue prior conversations as they take out their frustration inside of you, while others seem singularly fixated on getting in as many thrusts before their next meeting.<br>
<br>
In less than fifteen minutes you serve over half a dozen employees, your fellow bimbos each looking to have done similar as, when the room clears out as swiftly as it filled, you're left still bound... but now panting, sweaty<<if $fetish.cum>>, and dripping cum out of every orifice<</if>>.<br>
<br>
[<<moveTo "event_work_bimbo_all_hands_3" "Continue." 1800>>]
</div>/*#
#desc: work bimbo: cleaned
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect "sissypill_mk2_micro">>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_4") setup.charImage("npc_work","npc_work_cleaners") setup.charImage("npc_work","npc_work_cleaners")>>
<div id="invframe" class="scrolltext">
You're given perhaps five minutes to recover from your ordeal when a cleaning crew rolls through, masked and efficient as they hose you and your fellow bimbos out inside and out, treating you as much like machines to be serviced as you were used by the more senior employees.<br>
<br>
Once you're clean a <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.getChastityLevel() == 5)>>trio<<else>>pair<</if>> of dildo-tipped hoses are stuffed into you from either end, the phallic inserts pumping you with lube<<if $fetish.drugs>> and familiar pink drugs,<</if>> like a machine getting its oil topped up.<br>
<br>
You shiver slightly after your washing, sucking along until your next duty cycle, waiting for things to heat back up as you provide another round of "stress relief" and the morning rolls on...<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 12, 5)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_bimbo_all_hands_4" "Continue." _timeToLunch>>]
</div>/*#
#desc: work bimbo: lunch fuck
#status: RELEASED 0.8.8.0
#ignore_spell: corporatism
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "armbinder_pink" true>>
<<deleteItem "armbinder_pink">>
<<applyExperience 'bimbofication' 15 'terrible' $EXPOSED>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
Your next challenge proves to be lunch as your body acts as a table for a group of four employees, their discussion continuing on as they eat and you fuck, suck... and stroke, as your hands are temporarily unbound so that two of them are not left wanting.<br>
<br>
The sound of sex and overlapping conversations means you aren't able to make out much of what's discussed beyond the general "grow, profit, merger, repeat" hyper-corporatism, and the lunch itself doesn't last long before you're left alone once again<<if $fetish.cum>>, your belly growling for more than mere cum<</if>>.<br>
<br>
[<<moveTo "event_work_bimbo_all_hands_5" "This runs through to the afternoon?" 1800 '<<addItem "armbinder_pink">><<wearItem "armbinder_pink" true>>'>>]
</div>/*#
#desc: work bimbo: afternoon fuck
#status: RELEASED 0.8.8.0
#ignore_spell: truckin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<cancelTmpEffect "sissypill_mk2_micro">>
<<setTmpEffect "drug_ditzy">>
<<setTmpEffect "drug_slave">>
<<setTmpEffect "drug_breast">>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<<applyExperience 'oral' 18 'terrible' $EXPOSED>>
<<applyExperience 'anal' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
Shortly after lunch you are hosed clean and stuffed full yet again, only this time you're pumped full of more than lube and libation<<if $fetish.drugs>>, a heavy dose of drugs washing away any exhaustion and leaving you desperately horny and eager to serve<<elseif $fetish.cum>>, a thick cum-flavoured <<if setup.getTotalValue("cum") > 10>>just hitting the spot<<else>>that you have no choice but to choke down<</if>><<else>>an uninteresting meal at least enough for you to keep your energy up<</if>>.<br>
<br>
The impersonal treatment has your brain all but shut off as you stare lustily at your fellow bimbos, sucking and squeezing on your "service" tubes as you wait to be of use to the company's employees once more...<br>
<br>
<<set _afternoon = setup.setNextDate($now, 0, 15, 30)>>
<<set _timeToAfternoon = setup.secondsToDate($now,_afternoon)>>
[<<moveTo "event_work_bimbo_all_hands_6" "Keep on truckin'..." _timeToAfternoon>>]
</div>/*#
#desc: work bimbo: finish
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<removeItem "ring_gag" true>>
<<deleteItem "ring_gag">>
<<removeItem "armbinder_pink" true>>
<<deleteItem "armbinder_pink">>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
One more early afternoon round, where you feel used even harder than before as your body is abused to blow off the stress that only comes from sitting through an all-day meetings.<br>
<br>
This time the janitorial staff doesn't just hose you down, but they remove your straps, <<=setup.getNpcName("npc_sexdoll","first")>> slipping out of her bonds in moments before helping you back to your feet and the two of you dressing one another.<br>
<br>
Once you have your phone you glance at <<=setup.getNpcName("npc_sexdoll","first")>> in curiosity, asking why you've been "cut loose" before the work day is over.<br>
<br>
"@@.npc_sexdoll;It's time for the evening crew to take over,@@" she replies wistfully, "@@.npc_sexdoll;those lucky sluts chosen for those duties get assigned a manager to keep company through dinner, and then overnight. It really is a great honour to keep such important senior employees from spending their night alone in a hotel room. Speaking of which, I need to go get changed, your managed kept you off the list for evening assignments, but I was able to talk my way into working a double...@@"<br>
<br>
<<=setup.getNpcName("npc_sexdoll","first")>> stuffs a massive plug back into her rear
<<if $fetish.cum>>
and then reaches down to catch a glob of cum that was leaking down her thigh before sucking her finger clean with a look of
<<else>>
and smiles in
<</if>>
bimbo bliss. "@@.npc_sexdoll;I so love my job.@@"<br>
<br>
Reminded of <<=setup.getNpcName("npc_manager","formal")>>, and the fact you were unable to perform your normal lunch duties, you wish <<=setup.getNpcName("npc_sexdoll","first")>> a good evening and then hurry for the elevator.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Back to your desk." 300>>]
</div>/*#
#desc: work bimbo: work for npc_rival intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
You arrive for another "Bimbo" shift only for <<=setup.getNpcName("npc_sexdoll","first")>> to inform you that "@@.npc_sexdoll;so, like, your assignment just got updated. It looks like you're going to be working for <<=setup.getNpcName("npc_rival","formal")>> for the morning? Sorry you don't get to be gangbanged, though maybe he has plans beyond just, like... borning office stuff.@@"<br>
<br>
You wonder why you'd be assigned to <<=setup.getNpcName("npc_rival","formal")>>, given that <<he npc_rival>> has <<=setup.getNpcName("npc_sissy_secretary","first")>>, but you thank <<=setup.getNpcName("npc_sexdoll","first")>> and wish her a good day before heading for the elevator.<br>
<br>
[<<moveTo "event_work_bimbo_nap_2" '<<=ps(setup.getNpcName("npc_rival","formal"))>> office.' 240>>]
</div>/*#
#desc: work bimbo: work for npc_rival start explanation
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName("npc_rival","formal"))>> office where <<he npc_rival>> greets you with a leer. "@@.npc_rival;Good, you're here. My <<if $fetish.sissy>>sissy<<else>>slut<</if>> is spending the week with <<=setup.getNpcName("npc_discipline","formal")>> for some much-needed retraining. The selfish bitch actually tried to refuse staying late to help me through a hard meeting, claiming she had some sort of date!@@" <<He npc_rival>> "@@.npc_rival;Obviously such lack of commitment is totally unbecoming a <<if $fetish.sissy>>SISSI Secretary<<else>>Secretary here at Social Interaction Service Syndicate Inc.<</if>>, but I told <<=setup.getNpcName("npc_discipline","formal")>> to show no mercy, so hopefully <<=setup.getNpcName("npc_sissy_secretary","first")>> learns her lesson... otherwise I may have to ship her off for some time with <<=setup.getNpcName("npc_work_doctor","formal")>>!@@"<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> grins, clearly taking delight at the power <<he npc_rival>> wields over <<his npc_rival>> assistant. "@@.npc_rival;Of course the vaulted personal <<if $fetish.sissy>>SISSI <</if>>Secretary of <<=setup.getNpcName("npc_manager","other")>> wouldn't have any of those problems, right? You're fully committed to your role and the success of the company...@@"<br>
<br>
[<<moveTo "event_work_bimbo_nap_3" "Of course not, <<Sir npc_rival>>." 180 "<<set $scene.rebel=false>>">>]<br>
[<<moveTo "event_work_bimbo_nap_3" "Maybe <<he npc_rival>> is riding <<his npc_rival>> assistant too hard, <<Sir npc_rival>>?" 180 "<<set $scene.rebel=true>>">>]
</div>/*#
#desc: work bimbo: work for npc_rival blow npc_rival
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<if $scene.rebel>>
You point out to <<=setup.getNpcName("npc_rival","formal")>> that work/life balance is important, and that you're sure <<=setup.getNpcName("npc_sissy_secretary","first")>> is committed to success, but that things like staying late are best communicated and agreed to in advance, not demanded last-minute.<br>
<br>
<<=ps(setup.getNpcName("npc_rival","formal"))>> brow furrows and <<he npc_rival>> glares at you. "@@.npc_rival;Ugh, why do I even bother trying to talk to you dumb bimbos. None of you have the vision necessary...@@" <<He npc_rival>> shakes <<his npc_rival>> head. "@@.npc_rival;Never mind, trying to teach you is a waste of my important time. The only time something smart goes through that head of yours is when you're sucking a cock. Speaking of which, how about you put those lips to some use instead of blabbing nonsense? With <<=setup.getNpcName("npc_sissy_secretary","first")>> indisposed I'm already late for my morning suck.@@"
<<else>>
You curtsy and reply that you will, of course, do all that you can to prove your devotion to the company, and you are sure that <<=setup.getNpcName("npc_sissy_secretary","first")>> will come around with the help of <<=setup.getNpcName("npc_discipline","formal")>>.<br>
<br>
"@@.npc_rival;Let us hope so,@@" <<=setup.getNpcName("npc_rival","formal")>> replies with a snort. "@@.npc_rival;In any case, with <<=setup.getNpcName("npc_sissy_secretary","first")>> indisposed I'm already late for my morning blowjob, so how about you stop sucking up and suck me off?@@"
<</if>>
<br><br>
Mindful of your duties as a "Bimbo <<if $fetish.sissy>>SISSI <</if>>Secretary" you drop to your knees as commanded, slurping away on <<=ps(setup.getNpcName("npc_rival","formal"))>> average-sized cock. It doesn't take long for <<him npc_rival>> to cum... in spite of the disruptive distraction of <<his npc_rival>> hand on your head constantly messing with your rhythm.<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> leans back with a sigh as you <<if $fetish.cum>>show off <<his npc_rival>> load on your tongue and wait for <<his npc_rival>> nod before swallowing and zipping<<else>>zip<</if>> <<him npc_rival>> up.<br>
<br>
"@@.npc_rival;Not bad,@@" <<he npc_rival>> states dismissively. "@@.npc_rival;Now for the primary reason I needed you today, come, I am needed at a planning meeting.@@"<br>
<br>
[<<moveTo "event_work_bimbo_nap_4" "Dutifully follow <<him npc_rival>> to the meeting." 600>>]
</div>/*#
#desc: work bimbo: work for npc_rival arrive for meeting
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You arrive at the meeting where <<=setup.getNpcName("npc_rival","formal")>> seems to make a point to take a seat close to the front, appearing to check the camera angle to be certain whoever is calling in will be able to see <<him npc_rival>>.<br>
<br>
<<He npc_rival>> motions for you to kneel next to <<his npc_rival>>. You note that a few of your "peers" have been afforded seats at the table so that they are better positioned to take notes... but it would seem <<=setup.getNpcName("npc_rival","formal")>> prioritises appearance over efficiency.<br>
<br>
The meeting commences and you take mental note of those both present, and on the phone, based on titles you judge that it is primarily a mix of sales and marketing, with only a couple product or engineering looking folks. You're pretty sure a couple people recognise you and seem surprised to see <<=ps(setup.getNpcName("npc_manager","formal"))>> with <<=setup.getNpcName("npc_rival","formal")>>, but nobody says anything before the meeting begins.<br>
<br>
[<<moveTo "event_work_bimbo_nap_5" "Start taking notes." 3600>>]
</div>/*#
#desc: work bimbo: work for npc_rival meeting
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
The meeting is your standard preliminary planning-for-next-quarter affair... constantly interrupted by <<=setup.getNpcName("npc_rival","formal")>> loudly interjecting <<his npc_rival>> opinions on every topic, making simple items that should be closed out in a minute or two drag out as <<he npc_rival>> brashly attempts to prove <<his npc_rival>> competency by talking over the actual experts on the subject only to pivot to, "@@.npc_rival;Well, I think we should table this and run it by <<=setup.getNpcName("npc_boss","formal")>>,@@" when pressed for details.<br>
<br>
By the end of the hour-long meeting barely anything has actually been decided, and you can tell that just about everyone would have rather been somewhere else rather than waste time on <<=setup.getNpcName("npc_rival","formal")>> bloviating.<br>
<br>
Seemingly unaware of what a detriment <<he npc_rival>> has been to the whole proceedings <<=setup.getNpcName("npc_rival","formal")>> tries to take over the meeting at the end as <<he npc_rival>> thanks the remote participants for calling in and gives a short, cliche-ridden speech about how "@@.npc_rival;The company is at war, and we all need to make sure to do our part, anyone who can't cut it, well... they should find somewhere else to work, or be ready to accept a transfer to less... demanding work.@@"<br>
<br>
<<He npc_rival>> punctuates that last point by grabbing your hair as <<he npc_rival>> glares at the cluster of engineers across the table, in particular leering at a smartly, but not seductively dressed feminine engineer who, from your estimate, looks to be the most senior engineer present.<br>
<br>
<<His npc_rival>> statement made, <<=setup.getNpcName("npc_rival","formal")>> self-importantly adds that <<he npc_rival>> is needed at another meeting and rises to leave. You note nobody else following you and you half wonder if they've been waiting this whole time to hole the ACTUAL meeting until after <<=setup.getNpcName("npc_rival","formal")>> is gone.<br>
<br>
[<<moveTo "event_work_bimbo_nap_6" "Back to the office." 300>>]
</div>/*#
#desc: work bimbo: work for npc_rival punish post-meeting
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 12 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You can tell <<=setup.getNpcName("npc_rival","formal")>> is in a foul mood as <<he npc_rival>> storms back to <<his npc_rival>> office, swearing as <<he npc_rival>> jams <<his npc_rival>> finger too-hard into the elevator button.<br>
<br>
Once you're back in the relative privacy of <<his npc_rival>> office <<=setup.getNpcName("npc_rival","formal")>> orders you to bend over <<his npc_rival>> desk as <<he npc_rival>> unfurls <<his npc_rival>> belt.<br>
<br>
<<printThought "Looks like my rear is about to bear the brunt on <<his npc_rival>> frustrations...">><br>
<br>
"@@.npc_rival;Worthless! All of them!@@" <<=setup.getNpcName("npc_rival","formal")>> scowls, "@@.npc_rival;nobody at this company has any vision... other than me and <<=setup.getNpcName("npc_boss","formal")>>!@@" <<He npc_rival>> cracks the belt across your rear twice before seemingly re-thinking <<his npc_rival>> statement. "@@.npc_rival;I mean, obviously <<=setup.getNpcName("npc_manager","other")>> and a few others are competent at their jobs... but they aren't prioritising the future. With the strides we're making, and the speed we're hiring... we could be one of the largest megacorps on the planet, but that only happens if everyone is aligned, this constant second-guessing and disrespect...@@"<br>
<br>
The belt cracking throughout <<his npc_rival>> rant, your rear is already smarting when <<=setup.getNpcName("npc_rival","formal")>> pivots <<his npc_rival>> full attention to you. "@@.npc_rival;Not that I need the reminder... but if you could review what happened during the meeting, I find combining that with a nice workout really helps me piece together a vision for the future.@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
You meticulously review the meeting in detail... which proves to only annoy <<=setup.getNpcName("npc_rival","formal")>> further as <<he npc_rival>> punishes you even harder, particularly when <<he npc_rival>> seems to have radically mis-remembered key points, even once blowing up at you with "@@.npc_rival;I thought you were a Bimbo <<if $fetish.sissy>>SISSI <</if>>Secretary, where did all this smart-talk come from?@@"
<<else>>
You try to remember what happened during the meeting while <<he npc_rival>> punishes you even harder, annoyed at your hesitancy and the fact that your notes are less than great, calling you "@@.npc_rival;More a Bimbo than a Secretary!@@"
<</if>>
<br><br>
As you gasp in pain from yet another hard hit of the belt you reflect on the fact that <<=setup.getNpcName("npc_rival","formal")>> never gave you actual instructions for the meeting, even as <<he npc_rival>> seems to be nitpicking you for "@@.npc_rival;Not doing what I told you!@@"<br>
<br>
[<<moveTo "event_work_bimbo_nap_7" "Continue..." 300>>]
</div>/*#
#desc: work bimbo: work for npc_rival fucked post-meeting
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_rival.penis_size 'little' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
Whether because <<hes npc_rival>> tired of spanking you, or just bored, <<=setup.getNpcName("npc_rival","formal")>> abruptly shifts, tossing <<his npc_rival>> belt to one side and then slamming <<his npc_rival>> cock into you, leaning <<his npc_rival>> weight into you as <<he npc_rival>> fucks you over <<his npc_rival>>, sweat falling onto the back of your head as <<he npc_rival>> grunts and cums in less than a handful of thrusts.<br>
<br>
"@@.npc_rival;Look what you did! Couldn't even pay attention properly in the meeting and now you get me so worked up I can't even enjoy fucking you!@@" <<He npc_rival>> pulls away and then drags you towards the other side of the office where <<he npc_rival>> looks to have installed a large bondage wheel. "@@.npc_rival;A <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post just isn't sufficient for punishing a wayward slut, in my opinion.@@" <<He npc_rival>> states as <<he npc_rival>> straps you onto the bondage apparatus. "@@.npc_rival;This is MUCH better for keeping a subordinate in line.@@"<br>
<br>
Maybe it's your still-stinging rear, or the glaring competence gap between <<=setup.getNpcName("npc_rival","formal")>> and <<=setup.getNpcName("npc_manager","formal")>>... but you accidentally blurt out "@@.pc;then why is <<=setup.getNpcName("npc_sissy_secretary","first")>> with <<=setup.getNpcName("npc_discipline","formal")>>?@@"<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> is almost trembling with rage, finishing up quickly by shoving fucking machines into your every hole and then glaring at you as <<he npc_rival>> punches in a routine. "@@.npc_rival;Oh you're going to get it now you mouthy bitch. <<=setup.getNpcName("npc_manager","formal")>> talks a good game, but I should have known her <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> would be just as worthless as she is. Director of Human Relations! What a waste! If we could only accelerate replacing employees with properly trained, obedient drones<<if $fetish.sissy>> and SISSI's<</if>> we'd have no need for such wasted overhead! For you, well... this should take care of you while I get back to my very important work.@@"<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> looks you in the eye with an evil grin as you adjust to the large phallus currently impaling your throat, and then <<he npc_rival>> mashes the "start" button and your routine begins in earnest...<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 13, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_bimbo_nap_8" "Continue..." _timeToLunch>>]
</div>/*#
#desc: work bimbo: work for npc_rival morning punish
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 1000>>
<<applyExperience 'anal' 18 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'oral' 18 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 18 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bondage' 18 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
Far worse than the "hand-applied" punishment of <<his npc_rival>> belt, the punishment apparatus pounds your throat, <<if $player.body_ref.vagina>>double-fucks your lower holes<<else>>fucks your ass<</if>> and constantly electrocutes you as it delivers its punishment with the brutal efficiency of a machine.<br>
<br>
Slowly rotated in place so you spend part of your time upside-down... and all of your time in strained, thrashing, over-stimulated pain, you are in for a long, agonising morning... though you note that for whatever "important work" <<he npc_rival>> claimed to have, <<=setup.getNpcName("npc_rival","formal")>> spends most of <<his npc_rival>> time staring at you, clearly aroused by the sight of your torment.<br>
<br>
By the time <<=setup.getNpcName("npc_rival","formal")>> lets you free you've passed out at least twice, shocked back to consciousness a moment later, but left feeling drained an exhausted as you fall to the floor the moment the restraints are no longer holding you up.<br>
<br>
"@@.npc_rival;Stop laying down on the job!@@" <<=setup.getNpcName("npc_rival","formal")>> snarls as <<he npc_rival>> nudges you with <<his npc_rival>> foot. "@@.npc_rival;As useless as you are, <<=setup.getNpcName("npc_manager","formal")>> is demanding you return to your office, so get to your feet and get out of my sight!@@"<br>
<br>
Every movement agony as your muscles struggle to recover from hours of punishing shocks you manage to get to your feet and stagger back to the elevator, your sympathy for your friend renewed as you reflect that time spent with <<=ps(setup.getNpcName("npc_discipline","formal"))>>, whose discipline at least seems to have a purpose and a plan behind it, may well be a vacation compared to working for <<=setup.getNpcName("npc_rival","formal")>>.<br>
<br>
[<<moveTo "event_work_bimbo_nap_9" "Return to your desk." 300>>]
</div>/*#
#desc: work bimbo: work for npc_rival, manager comforts
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stagger into the office to find <<=setup.getNpcName("npc_manager","formal")>> waiting for you.
<<if $npc_manager.flags.cruel > 0 || $npc_manager.anger > 5 && $npc_manager.anger > $npc_manager.affection>>
She sniffs in annoyance at your exhausted expression and nonexistent posture. "@@.npc_manager;You are late. I permit you to work shifts as a "bimbo" only insofar as you also complete your normal duties... such as fetching my lunch!@@" She sighs. "@@.npc_manager;Since it appears <<=setup.getNpcName("npc_rival","formal")>> appears to have already punished while excessively detaining you I shall not delay your work any further.@@"<br>
<br>
She spins in place and disappears into the inner office. You glance at the time and note that <<=setup.getNpcName("npc_rival","formal")>> kept you straight through lunch. You groan as you ease into your chair, knocking back some coffee and managing to scrap up a second wind as you turn to your computer.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Time to work..." 0 "<<set $scene.foodDelivery.done=true>><<set $scene.skipMakeupInspect=true>>">>]
<<else>>
A look of concern on her face, <<=setup.getNpcName("npc_manager","formal")>> is at your side in an instant, catching you as your legs wobble and you stumble trying to move from the doorway to your desk.<br>
<br>
"@@.npc_manager;Oh you poor thing...@@" she coos as she holds you in her arms. "@@.npc_manager;<<=setup.getNpcName("npc_rival","formal")>> is an irresponsible monster for leaving you like this... come, you need a lie-down.@@"<br>
<br>
You try to object that you just need to get to your desk and you'll be fine, after all, you're already late to start your afternoon shift, but <<=setup.getNpcName("npc_manager","formal")>> is having none of it as she carries you into the inner office and lays you out on the couch.<br>
<br>
Despite your objections your exhaustion IS catching up to you, and you are left merely trying to catch your breath as <<=setup.getNpcName("npc_manager","formal")>> removes your heels<<if setup.checkItemTypeWorn("corset")>> and loosens your corset<</if>>.<br>
<br>
[<<moveTo "event_work_bimbo_nap_10" "Relax..." 180>>]
<</if>>
</div>/*#
#desc: work bimbo: work for npc_rival, manager sits next to you
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("corset")>>
<<set $scene.autolace = $player.flags.uniform_upgrade.autoLacing>>
<<set $player.flags.uniform_upgrade.autoLacing = false>>
<<set $player.timebased.tightlacing = 0>>
<</if>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<removeItem $scene.shoes true>>
<<set $scene.lap = $npc_manager.anger == 0 && $npc_manager.affection == 10 && $player.flags.collar.owner == "npc_manager">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> smiles down at you, squeezing your feet almost like a massage. "@@.npc_manager;That better?@@" She asks gently and you nod, sinking deeper into the rich leather of the couch.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> leaves you for a moment to walk back to her desk but, rather than taking a seat, she moves her throne-like chair over next to you.
<<if $scene.lap>>
<<=setup.getNpcName("npc_manager","formal")>> turns you slightly so that your head is resting on her lap
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> sits down next to you
<</if>>
and begins gently stroking your hair and whispering a comforting sort of lullaby.<br>
<br>
[<<moveTo "event_work_bimbo_nap_11" '<<=setup.getNpcName("npc_manager","title")>> says relax...' 600>>]
</div>/*#
#desc: work bimbo: work for npc_rival, manager nap-time
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Shhh, my sweet. I know it has been a long day, but you are safe, now. Safe to rest. Safe to relax. Safe to sleep.@@"<br>
<br>
"@@.npc_manager;I know how hard you work, how much you have been through for myself, and also for you... but right now I need you to listen to my voice. Listen... and relax...@@"<br>
<br>
She continues to stroke your hair and look down at you with a gentle smile, whispering to you as your eyelids flutter, feeling heavier and heavier with each word.<br>
<br>
"@@.npc_manager;Feel my words wrap around you. You are <<if $player.flags.collar.owner == "npc_manager">>mine<<else>>my assistant<</if>>, and I will protect you. Here, with me you are completely safe, so relax, sleep, recover...@@"<br>
<br>
Through a combination of exhaustion and obedience you can no longer keep your eyes closed and you let yourself slip into darkness, as all that remains is <<=ps(setup.getNpcName("npc_manager","formal"))>> voice, soft and gentle as you so seldom hear, a moment of vulnerability compared to what she presents to the company, a special, private gift to you and you alone, her obedient <<if $player.flags.collar.owner == "npc_manager">>slave<<else>><<if $fetish.sissy>>SISSI <</if>>Secretary<</if>>.<br>
<br>
"@@.npc_manager;There you go, I can feel the tension leave your body, wrap yourself in my words, in my embrace, feel my caress. Feel your worries getting smaller and smaller, your exhaustion, your concern... let it all fade away and allow my words to blissfully blanket your mind. Sleep, sleep soundly and completely and without worry, <<if $scene.lap>>here on my lap<<else>>next to me<</if>>...@@"<br>
<br>
[<<moveTo "event_work_bimbo_nap_12" "Sleep..." 3600>>]
</div>/*#
#desc: work bimbo: work for npc_rival, back to work
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<set $player.timebased.fatigue = 0>>
<<set $player.timebased.stress = 0>>
<<set _wp = -Math.floor(setup.getTotalValue("submission") * $player.willpower.total/20)>>
<<spendWillpower _wp>>
<<if setup.checkItemTypeWorn("corset")>>
<<set $player.flags.uniform_upgrade.autoLacing = $scene.autolace>>
<<set $player.timebased.tightlacing = 100>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You sleep, deeper and more restful than you can remember, your eyes finally fluttering open as you feel rested, rejuvenated... and oh so submissive.<br>
<br>
You look up,
<<if $scene.lap>>
your head is still in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> lap
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> is still sitting next to you
<</if>>
as she reads some sort of report with one hand and strokes your hair with the other.<br>
<br>
Somehow sensing your return to consciousness she ask "@@.npc_manager;did you have a good nap?@@" as she turns to look down, her smiling, proud face like the sun beaming down over your world.<br>
<br>
You nod, not daring to mar the moment with words and she smiles wider. "@@.npc_manager;Good, good.@@"<br>
<br>
As much as you would like to stay here forever you have an urge to pay back her kindness and you start to sit up only for her to shift to assist.<br>
<br>
You try to object, but she insists on putting on your shoes<<if setup.checkItemTypeWorn("corset")>>, though she does go along when you insist she return your corset to its proper body-perfecting tightness<</if>>.<br>
<br>
Back on your feet you curtsy in thanks... though you wish you could do more. <<=setup.getNpcName('npc_manager', 'formal')>> declines the offer, insisting that "@@.npc_manager;owe me nothing, taking care of my <<if $>>slave<<else>>employee<</if>> is my job, after all.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> offers to give you the rest of the afternoon off, but you assure her that you are feeling great and that doing work "for her" is exactly what you need.<br>
<br>
"@@.npc_manager;Very well... but at least take it easy. You are far too valuable for me to see you broken again.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Time to work..." 0 "<<set $scene.foodDelivery.done=true>><<set $scene.skipMakeupInspect=true>>">>]
</div>/*#
#desc: work bimbo: penis sex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You're doing the usual "working bimbo" when a woman walks in, looking more than a touch harried as she looks you over and then zeroes in on your crotch.<br>
<br>
"@@.generic_female1;You. Slut — I've been dealing with a problem customer all morning and I need to blow off steam with a good, hard fuck.
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
There are few things as satisfying as a pathetic micro-dick <<if $fetish.sissy>>sissy<<else>>slut<</if>> humping in frantic futility.
<<else>>
I like them small... and on that count, you look perfect.
<</if>>
<<case 'spe'>>
I just love the sensuous feel of a beautiful petite <<if $fetish.sissy>>sissy<<else>>feminine<</if>> penis.
<<default>>
I like them small... and on that count, you look perfect.
<</switch>>
<<case 2 3>>
You look simply perfect, not too big, but not too small, either... that goldilocks zone of a "just right" <<if $fetish.sissy>>sissy <</if>><<getWordMyPenis>>!
<<case 4 5>>
You look to have quite the handsome <<getWordMyPenis>>... yes, that will really hit the spot after a "not-the-fun-type-of-hard" morning.
<<case 6>>
You look simply glorious<<if $player.body_ref.knot && $player.body_ref.horsecock>>, not too many bimbos are hung like that... and is that a knot, I spy? Oh, I simply MUST feel that swelling inside of me!<<elseif $player.body_ref.horsecock>>, not too many bimbos are hung like that, I need to feel it inside of me.<<elseif $player.body_ref.knot>>, and is that a knot, I spy? Oh, I simply MUST feel that swelling inside of me!<<else>>, there are so few big-dick bimbos on retainer, I need to feel you inside of me, NOW<</if>>.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<if $scene.removeCage>>And do not worry about your chastity, I am authorised to grant temporary release for business purposes... and right now "giving me the business" is the only purpose you have.<<else>>Well, come on, this pussy is not going to fuck itself!<</if>>@@"<br>
<br>
<<if $player.sec_style.sex.penis_sex>>
<<printThought "This is certainly a new one... I'm used to working bimbo, but being commanded to fuck? Now that's a surprise!">>
<<else>>
<<printThought "Of all the ways I might have imagined losing my virginity... being commanded to do a coworker I've never met... was not one of them.">>
<</if>>
<br><br>
[<<moveTo "event_work_bimbo_penis_2_obedient_1" "As the lady desires..." 300>>]<br>
[<<moveTo "event_work_bimbo_penis_2_forced_1" "You may be working bimbo... but this is over the line!" 300>>]
</div>/*#
#desc: work bimbo: penis sex obedient
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.sec_style.sex.penis_sex>>
<<if $scene.first>>
<<set $player.sec_style.sex.penis_sex = "obedient">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<</if>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
<<if $scene.removeCage>>
With the press of a button your chastity device retracts, your <<getWordMyPenis>> springing forth with stiff enthusiasm.<br>
<br>
"@@.generic_female1;Look at that corporate asset! Such beauty! No wonder we keep it secured when not in use!@@"<br>
<br>
<</if>>
The woman takes one more lingering glance at your <<getWordMyPenis>> before she lays back on a padded fucking bench that you're used to being railed atop, yourself, hiking up her skirt and guiding you into her with one hand.<br>
<br>
"@@.generic_female1;Don't rush it, I want to feel every millimeter. So many people rush that first insertion, but I like to savour every moment...@@"<br>
<br>
<<if $scene.first>>
You're trembling as you obey and the woman pauses to look up. "@@.generic_female1;Wait... that expression, the way you're practically trembling... am I your first?@@"<br>
<br>
You bite your lip, not trusting your voice as you hesitantly nod.<br>
<br>
"@@.generic_female1;Wow, my day just got even better, I don't just get to fuck, I get to deflower one of our corporate bimbos... well strap in, my pretty,@@" she states, clenching down tight around you, "@@.generic_female1;we're going for a RIDE! Fuck me, you beautiful <<if $fetish.sissy>>sissy <</if>>slut. Fuck me hard.@@"
<<else>>
You're focusing on obeying as the woman guides you into her clearly enjoying every moment. "@@.generic_female1;Yes... this is what I needed, now it's your turn. I've been working all morning, now it's your turn. Fuck me, you beautiful <<if $fetish.sissy>>sissy <</if>>slut. Fuck me hard.@@"
<</if>>
<br><br>
[<<moveTo "event_work_bimbo_penis_2_obedient_2" "The lady asked for it hard..." 300 "<<set $scene.fromForced=false>>">>]
</div>/*#
#desc: work bimbo: penis sex obedient finish
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
<<if $scene.fromForced>>
A tap of a button releases your restraints, and you and the woman nigh swap places... though, you note, she remains unbound as she lays back, spreads her legs, and beckons you in.<br>
<br>
<</if>>
The woman guides you with her thighs, and you brace against the headboard behind her,
<<switch $player.body.penissize[0]>>
<<case 0 1>>
opting for short, rapid strokes lest you slip free, grinding against her clit as <<if ['sph', ''].includes($player.body_ref.shrink_style) && $fetish.sph>>teases you constantly. "@@.generic_female1;Is that all you've got, you micro-dick <<if $fetish.sissy>>sissy<<else>>slut<</if>>. Stop fantasising about those big, thick cocks you love to serve and fuck me!@@"<<else>>she moans.<</if>>
<<case 2 3 4 5>>
giving it to her hard and deep as she moans in pleasure.
<<case 6>>
surprised at how easily she takes your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>, dragon-cock<<elseif $player.body_ref.horsecock>>horse-cock<<elseif $player.body_ref.knot>>, dog-cock<<else>>cock<</if>>, not just accepting your hole-stretching, belly-swelling girth, but begging for "@@.generic_female1;more, harder.@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Maybe it's the woman's tone<<if $scene.removeCage>>, or something to do with the chastity device still forming a tight cockring at the base of your shaft<</if>>, but, even as you give it your all, you don't manage to cum until the woman is satisfied, her eyes rolling back in a monstrous orgasm<<if $fetish.cum && $player.body_ref.cumProduction>> and you cream-blast <<if $player.body_ref.cumProduction >= 2>>a massive<<else>>your<</if>> load deep inside of her<<else>>as you enjoy a rush of pleasure yourself<</if>>.<br>
<br>
Her legs go limp as you step away and she grins up. "@@.generic_female1;Whew! Now THAT is how you get over a difficult shift!@@"<br>
<br>
You start to cleanup as the woman bounces to her feet with somehow renewed energy<<if $scene.removeCage>>, tapping a button to replace your cage as she blows<<else>>, blowing<</if>> you a kiss and heads on her way.<br>
<br>
You take a deep breath and wonder what surprises you'll be in for next...<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Resume working bimbo." 300 "<<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
</div>/*#
#desc: work bimbo: penis sex forced
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<if $fetish.get_raped>>
<<applyExperience 'bondage' 12 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
Even as your hard <<getWordMyPenis>> continues to point directly at the woman, you tell her that you are not interested in fucking her.<br>
<br>
<<if $fetish.get_raped>>
The woman frowns, <<if $scene.removeCage>>using the same remote as before<<else>>clicking a remote<</if>> that causes a pair of robotic arms to burst from the wall behind you, pulling you back and pinning you in place as further straps soon have you immobile... with your legs bent back over your head, and your hard <<getWordMyPenis>> sticking up at the perfect level.<br>
<br>
"@@.generic_female1;Foolish thing, I said I wanted to fuck... and I am going to fuck. Now, are you going to do your part like a good <<if $fetish.sissy>>sissy <</if>>bimbo... or am I going to have to do all the work myself?@@"<br>
<br>
As she taunts, she runs her finger along your hard <<getWordMyPenis>>, smiling in amusement as even this stimulation causes you to ooze pre.<br>
<br>
[<<moveTo "event_work_bimbo_penis_2_forced_2" "It's no use. This is Social Interaction Service Syndicate Inc. Further resistance will only make things worse." 300>>]<br>
[<<moveTo "event_work_bimbo_penis_2_strict_1" "Fight back!" 300>>]<br>
<<else>>
"@@.generic_female1;Well!@@" She replies in a huff, "@@.generic_female1;I guess I will have to find someone else... or possibly a strap.@@"<br>
<br>
She storms off<<if $scene.removeCage>> and your chastity device closes back over you<</if>>.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Resume working bimbo." 300 "<<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
<</if>>
</div>/*#
#desc: work bimbo: penis sex forced continue
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.sec_style.sex.penis_sex>>
<<if $scene.first>>
<<set $player.sec_style.sex.penis_sex = "forced">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "forced">>
<</if>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You try to buck your hips as much as your restraints will allow, and the woman smiles.<br>
<br>
<<if $scene.first>>
"@@.generic_female1;That's a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>@@"<br>
<br>
You sheepishly nod and the woman's expression lights up. "@@.generic_female1;Tell you what... since it's your first time, how about you do me properly? Not this Amazon position... as fun as it is, but me on my back, you giving it to me hard like I wanted in the first place?@@"
<<else>>
"@@.generic_female1;Much better... so are you going to be a good <<if $fetish.sissy>>sissy<<else>>girl<</if>> and fuck my like I asked... or am I going to have to do all the work? Hmm? Come on, now, are you ready to behave?@@"
<</if>>
<br><br>
[<<moveTo "event_work_bimbo_penis_2_obedient_2" "Yes, ma'am." 300 "<<set $scene.fromForced=true>>">>]<br>
[<<moveTo "event_work_bimbo_penis_2_forced_3" "Remain silent." 300>>]
</div>/*#
#desc: work bimbo: penis sex forced finish
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You remain silent and the woman slides down onto you, soon establishing a fast, hard, bone-rattling rhythm as she takes you for a ride.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Your small <<getWordMyPenis>> is all but invisible between her folds and she grins <<if ['sph', ''].includes($player.body_ref.shrink_style) && $fetish.sph>>and taunts you. "@@.generic_female1;Is that all you've got, you micro-dick <<if $fetish.sissy>>sissy<<else>>slut<</if>>. Stop fantasising about those big, thick cocks you love to serve and fuck me!@@"<<else>>"@@.generic_female1;Mmm, your size, this angle... it is just... perfection.@@"<</if>>
<<case 2 3 4 5>>
With each thrust your <<getWordMyPenis>> slids into her and she grins. "@@.generic_female1;Mmm, your size, this angle... it is just... perfection.@@"
<<case 6>>
To your surprise it takes only two warm-up thrusts before she is hilting you with ease, your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-cock<<elseif $player.body_ref.horsecock>>horse-cock<<elseif $player.body_ref.knot>>dog-cock<<else>>cock<</if>> sliding up and into her, stretching her hole and swelling her belly... and turning her on even more. "@@.generic_female1;Oh, fuck, you're even bigger than you looked... this is EXACTLY what I needed!@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Fully in the drivers seat, the woman uses you like her personal dildo, somehow keeping you from climax as she squeezes, squirts, and finally enjoys a screaming, explosive orgasm.<br>
<br>
Your climax is almost an after-thought, even as the intensity is enough that, combined with your bound and folded-up position, you nearly pass out.<br>
<br>
As you catch your breath the woman takes a step back, grinning in satisfaction as she taps a button and your restraints slacken. "@@.generic_female1;Not bad, <<if $fetish.sissy>>sissy<<else>>girl<</if>>... though I hope you put in some effort next time. Hard to get can be fun and all... but today I just wanted a good, hard fuck. Doing it myself, well... it took a bit of the shine off of it.@@"<br>
<br>
<<if $scene.removeCage>>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Feel your <<=setup.getItemName($scene.cage)>> slide back into position and resume working bimbo." 300 '<<include "replaceCage_extendSissyomatic">>'>>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Resume working bimbo." 300>>]
<</if>>
</div>/*#
#desc: work bimbo: penis sex strict
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.sec_style.sex.penis_sex>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You try to flail against the restraints... but you barely even manage to move, the woman sniffing in annoyance as she raises her skirt and guides you into her for some bound, Amazon position reverse mating-press.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
Your <<getWordMyPenis>> almost immediately disappears between her folds and she grins <<if ['sph', ''].includes($player.body_ref.shrink_style) && $fetish.sph>>and taunts you. "@@.generic_female1;Is that all you've got, you micro-dick <<if $fetish.sissy>>sissy<<else>>slut<</if>>. Stop fantasising about those big, thick cocks you love to serve and fuck me!@@"<<else>>"@@.generic_female1;Mmm, your size, this angle... it is just... perfection.@@"<</if>>
<<case 2 3 4 5>>
Your <<getWordMyPenis>> slids into her and she grins. "@@.generic_female1;Mmm, your size, this angle... it is just... perfection.@@"
<<case 6>>
To your surprise she hilts you with ease, your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon-cock<<elseif $player.body_ref.horsecock>>horse-cock<<elseif $player.body_ref.knot>>dog-cock<<else>>cock<</if>> sliding up and into her, stretching her hole and swelling her belly... and turning her on even more. "@@.generic_female1;Oh, fuck, you're even bigger than you looked... this is EXACTLY what I needed!@@"
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Heedless of your opinions on the matter, the woman begins to bounce up and down, grinding and humping and pounding you into the mattress as your bonds hold you firm and your hard <<getWordMyPenis>> betrays you with its stiff enthusiasm.<br>
<br>
<<if $scene.first>>
She pauses to look down at you with a half smile, seeming to come to a realisation. "@@.generic_male1;Wait... your resistance... are you a virgin? Well, were,@@" she adds with a laugh. "@@.generic_female1;God, you fucking were! A virgin bimbo<<if $player.body.penissize[0] == 6>>with a giant fucking cock!<</if>>, I've seen everything! Now come on, embrace the moment, wiggle those hips, you <<if $fetish.sissy>>sissy <</if>>slut!@@"
<<else>>
"@@.generic_female1;Aww, don't clam up! I can feel you inside me, you love this, you whore. Embrace the moment, wiggle those hips, you <<if $fetish.sissy>>sissy <</if>>slut!@@"
<</if>>
<br><br>
Even if you wanted to do something, your bonds mean that you can hardly move... but the woman makes up for it, pounding you even harder, the sound of her flesh smacking into you with each thrust echoing through the room.<br>
<br>
[<<moveTo "event_work_bimbo_penis_2_strict_2" "This is too much!" 300>>]
</div>/*#
#desc: work bimbo: penis sex strict finish
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.first>>
<<set $player.sec_style.sex.penis_sex = "strict">>
<<set $player.virgin.penis = "work_bimbo_strict">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "strict">>
<</if>>
<<if !$player.virgin.top_fem>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "work_bimbo_strict">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_virgin'
0
'theme_church_confession_virgin'
true
>>
<</if>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "work_bimbo_strict">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_3'
0
'event_psychiatrist_session_virginity_female_1'
true
>>
<</if>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You aren't sure when, exactly, but you pass out, the combination of the folded over position, tight restraints, and the bone-rattling pounding combining to push you over the cliff into unconsciousness.<br>
<br>
By the time you wake up, the woman is gone, and with her your restraints<<if $scene.removeCage>>, including your <<=setup.getItemTypeName("cage")>>, of course<</if>>. Your sore muscles<<if $fetish.cum>>, and the cum leaking down your thigh<</if>> are evidence that your <<if $fetish.first>>deflowering<<else>>hard fucking<</if>> was far from imagined, and you decide to cut out early, sneaking back to your desk rather than finishing off the shift "working bimbo." <br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Back to the <<if $fetish.sissy>>SISSI <</if>>Secretary grind..." 300>>]
</div>/*#
#desc: work bimbo: vaginal sex
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You're doing the usual "working bimbo" when a <<man>> walks in, looking a mix of excited, nervous... and a little run down. <<He>> orders you to spread your legs.<br>
<br>
"@@.generic_male1;Step lively, slut, I just wrapped up a project and my boss said I could fuck one of you sluts as a reward. God, I can't wait until I'm promoted high enough that I can avail myself of this "company perk" at will... but for now I have to just take advantage of whatever opportunities I can get, so show me that cunny!@@"<br>
<br>
<<if $player.sec_style.sex.vagina>>
<<printThought "<<He>> must have really worked hard for the company to reward <<him>> like this!">>
<<else>>
<<printThought "What? Am I really expected to give up my virginity to just some... random <<if $options.fem>>woman<<else>>dude<</if>>? And not even a manager!">>
<</if>>
<br><br>
[<<moveTo "event_work_bimbo_vagina_2_obedient_1" "Spread, as ordered." 300>>]<br>
[<<moveTo "event_work_bimbo_vagina_2_forced_1" "You may be working bimbo... but this is over the line!" 300>>]
</div>/*#
#desc: work bimbo: vaginal sex obedient
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.sec_style.sex.vagina>>
<<if $scene.first>>
<<set $player.sec_style.sex.vagina = "obedient">>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$options.fem>>
<<set $player.sec_style.sex.sex_man = "obedient">>
<</if>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
Mindful of your role, and your duties, you spread your legs in invitation and thank the <<man>> for both <<his>> hard work for the company... and the "hard" work <<he>> is about to grace you with.<br>
<br>
"@@.generic_male1;Goddamn right!@@" <<He>> exclaims, wasting no more time in getting between your legs.<br>
<br>
You gasp, you don't judge <<him>> to be much above average... but <<he>> makes up for it in enthusiasm, slamming straight into your tight cunt and starting to jackhammer fast.<br>
<br>
"@@.generic_male1;Goddess, you're tight,@@" <<he>> grunts.
<<if $scene.first>>
"@@.generic_male1;Wait... are you a virgin? Is this your first time?@@"<br>
<br>
You don't know how <<he>> sensed that fact, but you are too submissive to do anything but nod in confirmation.<br>
<br>
"@@.generic_male1;A virgin bimbo... now I've seen everything!@@" <<He>> remarks with a laugh, "@@.generic_male1;well, since it's your first time... let me show you how it's done... and apologise if I spoil you for future partners...@@"<br>
<<else>>
You thank <<him>> for the compliment, noting that it's all part of the service, and your duty to optimise employee morale.<br>
<br>
"@@.generic_male1;Morale? Optimise this!@@" <<He>> replies with a quick double thrust "@@.generic_male1;goddess you corporate bimbos are such total fucking whores...@@"
<</if>>
<br><br>
Leaning forward the <<man>> adds <<his>> weight to <<his>> efforts, pounding you into the mattress while <<he>> pins your arms in place, <<his>> expression becoming unfocused as <<he>> re-focuses on <<his>> own pleasure on the rocket-ship to orgasm.<br>
<br>
[<<moveTo "event_work_bimbo_vagina_2_obedient_2" "Harder, <<sir>>, you earned this reward!" 300>>]
</div>/*#
#desc: work bimbo: vaginal sex obedient finish
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You egg your "client" on and <<he>> cums, hard, <<if $fetish.cum>>filling you with <<getWordCum>> and stirring it around with a few additional thrusts<<else>><<his>> eyes rolling back<</if>> as <<he>> sways slightly, looking almost light-headed from the intensity of <<his>> climax.<br>
<br>
"@@.generic_male1;Damn,@@" <<he>> finally states with a sigh "@@.generic_male1;was really hoping to make it last a bit longer this time... but now I'm even more motivated to get that promotion, and that corner office and my own personal <<if $fetish.sissy>>sissy, <</if>>slutty Secretary.@@"<br>
<br>
The <<man>> steps back and you rise to your feet<<if $fetish.cum>>, squeezing your thighs together, yet feeling a bit of <<his>> offering leak down your leg as you<<else>> and<</if>> curtsy in appreciation. You note that you, or one of your coworkers, would surely love to work "under" <<him>>, and encourage <<him>> to keep on doing <<his>> best for the company to get what <<he>> deserves.<br>
<br>
"@@.generic_male1;Damn right!@@" <<He>> replies with enthusiasm. "@@.generic_male1;I'm gonna get that office, and I'm gonna have a slut like you sucking me off all morning... and then fuck her twice over lunch. Once in the ass, and once in that sweet, sweet cunt for dessert!@@"<br>
<br>
Still clearly fantasising about <<his>> possible future the <<man>> wanders off. You wonder what <<his>> role actually is... even as you reflect how well, at least in this case, the "company bimbo" initiative is working to spur employee motivation.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Resume working bimbo." 300>>]
</div>/*#
#desc: work bimbo: vaginal sex forced start
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.get_raped>>
You try to turn down the <<man>>'s request but <<he>> seems to take your refusal as flirtatious. "@@.generic_male1;Playing hard to get? Alright, I can go with that, after all, I worked hard to get this reward, and if you want me to claim it, well... I'm up for that...@@"<br>
<br>
The man pushes you backwards, pinning you to the bed with both hands as <<he>> gets ready to take what <<he>> came for...<br>
<br>
[<<moveTo "event_work_bimbo_vagina_2_forced_2" "It's no use. This is Social Interaction Service Syndicate Inc. Further resistance will only make things worse." 300>>]<br>
[<<moveTo "event_work_bimbo_vagina_2_strict_1" "Fight back!" 300>>]<br>
<<else>>
You demure as gently as you can. The <<man>> is annoyed by your refusal... though not at you. "@@.generic_male1;I work hard for this reward... and I get the one bimbo who won't put out? Terrible! I should talk to your manager... or maybe fuck THEM, see if that can't get things running a bit more smoothly...@@"<br>
<br>
Still ranting, the <<man>> storms off<<if !$player.sec_style.sex.vagina>>, your delicate flower intact<<else>>, your dripping snatch unfucked<</if>>.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Resume working bimbo." 300>>]
<</if>>
</div>/*#
#desc: work bimbo: vaginal sex forced
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.sec_style.sex.vagina>>
<<if $scene.first>>
<<set $player.sec_style.sex.vagina = "forced">>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$options.fem>>
<<set $player.sec_style.sex.sex_man = "forced">>
<</if>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
With a sigh you merely lay back, spread, and take it. At first the <<man>> seems happy to merely take advantage, railing you hard and deep only to suddenly slap you across the face.<br>
<br>
More surprised than hurt you gasp and look up at <<his>> now grinning face. "@@.generic_male1;Ah, yeah. I felt you tighten up there. Trying to play it all aloof and detached... but you're a <<if $fetish.sissy>>SISSI<<else>>Corporate<</if>> Bimbo! You exist to get railed like this!@@"<br>
<br>
<<if $scene.first>>
In between thrusts you try to explain that you haven't served like this before. It takes a moment, but the <<man>> almost stops in surprise. "@@.generic_male1;Wait... this your first time... like, you're a virgin?@@"<br>
<br>
You nod in embarrassment... and <<he>> starts plowing your harder.<br>
<br>
"@@.generic_male1;No wonder you're so fucking tight! God, a virgin bimbo... now I've seen everything!@@" <<He>> remarks with a laugh, "@@.generic_male1;well, since it's your first time... let me show you how it's done... and apologise if I spoil you for future partners...@@"<br>
<<else>>
You merely blush as she laughs. "@@.generic_male1;Come on, slut! Your job is to improve employee morale, so moan for me! Show me how much of a <<if $fetish.sissy>>SISSI<<else>>Corporate<</if>> Bimbo whore you really are!@@"
<</if>>
<br><br>
[<<moveTo "event_work_bimbo_vagina_2_obedient_2" "Yes, <<sir>>, harder, <<sir>>. You earned this reward!" 300>>]<br>
[<<moveTo "event_work_bimbo_vagina_2_forced_3" "Remain silent." 300>>]
</div>/*#
#desc: work bimbo: vaginal sex forced finish
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You remain silent and the <<man>> finishes off. Despite <<his>> earlier comments <<he>> is clearly focused on <<his>> own pleasure, and clearly so pent up that a simple blow-up doll likely would have been sufficient for <<his>> needs.<br>
<br>
With a grunt, <<he>> cums, <<if $fetish.cum>>filling you with <<getWordCum>> and stirring it around with a few additional thrusts<<else>><<his>> eyes rolling back<</if>> as <<he>> sways slightly, looking almost light-headed from the intensity of <<his>> climax.<br>
<br>
"@@.generic_male1;Damn,@@" <<he>> finally states with a sigh "@@.generic_male1;that was just what I needed... and now I'm even more motivated to get that promotion, and that corner office. And, most of all: my own personal <<if $fetish.sissy>>sissy, <</if>>slutty Secretary. And believe me? My slut isn't going to be a blushing violet like your low-energy ass. She's going to be an insatiable <<if $fetish.cum>>cum-dump<<else>>whore<</if>>, ready to suck me off all morning, then get railed twice for lunch. Once in the ass, and once in her sweet cunny for dessert!@@"<br>
<br>
Still chuckling and fantasising about <<his>> possible future, the <<man>> wanders off. You wonder what <<his>> role actually is... even as you reflect how well, at least in this case, the "company bimbo" initiative is working to spur employee motivation.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Resume working bimbo." 300>>]
</div>/*#
#desc: work bimbo: vaginal sex strict
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.sec_style.sex.vagina>>
<<applyExperience 'bondage' 12 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You try to fight back, but the very furniture you're sitting on betrays you, somehow sensing your attempted struggle and responding by automatically binding you in place, cuffs tightening around your wrists and ankles, your thighs pulled wide in invitation. Your every struggle is like an insect flailing in a spiderweb, becoming more entangled and restricted with every attempt to resist... as the <<man>> grins in amusement... and slides into your waiting cunt, the same system that bound your in place also "helpfully" squirting you with lube to ease your "customer's" journey.<br>
<br>
"@@.generic_male1;Stupid slut. You trying to get in trouble?@@" The <<man>> asks in between thrusts. "@@.generic_male1;Not that it's any skin off my back... as you can feel, I'm going to have my pleasure and fuck your brains out either way... but you'd think a <<if $fetish.sissy>>SISSI<<else>>Corporate<</if>> Bimbo would know better than to resist a client.@@"<br>
<br>
<<if $scene.first>>
The <<man>> pauses, seeming to come to a realisation. "@@.generic_male1;Wait... your resistance... how fucking tight you are? Are you a virgin? Well, were,@@" <<he>> adds with a laugh. "@@.generic_male1;God, you fucking were! A virgin bimbo, I've seen everything! Unless... did you stumble in here by accident?@@"
<<else>>
You clam up and the man grins... and thrusts harder. "@@.generic_male1;A quiet one, huh? No matter, the only lips I care about are the ones stretched around my cock, so you just lay there while I lay you like a whore like you deserves!@@"
<</if>>
<br><br>
You thought the <<man>> was fucking you hard before, but <<he>> somehow finds a whole other gear, your restraints straining with each thrust as <<he>> jackhammer's in an out, your cries of pain only spurring <<him>> onward to fuck, and fuck and fuck...<br>
<br>
Each breath is a struggle against your too-tight restraints, and you feel your vision flicker, even as you continue to stare up at the <<man>>'s frenzied expression as <<he>> fucks you.<br>
<br>
[<<moveTo "event_work_bimbo_vagina_2_strict_2" "This is too much!" 300>>]
</div>/*#
#desc: work bimbo: vaginal sex strict after
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.first>>
<<set $player.sec_style.sex.vagina = "strict">>
<<set $player.virgin.vaginal = "work_strict">>
<</if>>
<<if !$player.sec_style.sex.sex_man && !$options.fem>>
<<set $player.sec_style.sex.sex_man = "strict">>
<</if>>
<</if>>
<<set $player.location to "Stress Relief Chamber">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/changingroom.png">>
<div id="invframe" class="scrolltext">
You aren't sure when, exactly, but you pass out, waking up some time later to find the <<man>> gone, and with <<him>> your restraints. Your sore muscles<<if $fetish.cum>>, and the cum leaking down your thigh<</if>> are evidence that your <<if $fetish.first>>deflowering<<else>>hard fucking<</if>> was far from imagined, and you decide to cut out early, sneaking back to your desk rather than finishing off the shift "working bimbo." <br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Back to the <<if $fetish.sissy>>SISSI <</if>>Secretary grind..." 300>>]
</div>/*#
#desc: shy girl, but end up chatting waiting for drinks, mentions being single/lonely
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'work_coffee_shop' 'coworker_futa'>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'coworker_futa' _nextDate>>
<<set $npc_futa.stage = 1>>
<<registerProgressionEvent>>
<<if $player.sec_style.body.name != "" && !$npc_futa.flags.reactnamechange>>
<<set $npc_futa.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_futa","npc_futa_1")>>
<div id="invframe" class="scrolltext">
The coffee shop is busier than usual today and you find yourself waiting next to a shy, mousy-looking girl dressed in a modest sweater, knitted skirt and flats.<br>
<br>
On a whim, you strike up a conversation, introducing yourself and asking how she's doing.<br>
<br>
She seems a bit surprised by your attention, stammering a bit before introducing herself as "@@.npc_futa;<<=setup.getNpcName('npc_futa', 'full')>>.@@"<br>
<br>
Drink orders still going slow, you keep chatting and she starts to open up. It's like the floodgates have been unleashed as she explains that "@@.npc_futa;You know, normally I don't really talk to people much. Socially, I mean, like... I haven't ever even had a <<boy>>friend!@@"<br>
<br>
Unsure quite how to respond, you mumble something about how "@@.pc;Sometimes you need to just make a move@@" rescued from further awkwardness as her name is called out.<br>
<br>
She blushes slightly, saying "@@.npc_futa;Sorry if I over-shared a bit there but... well, it was nice to meet you. Maybe you're right, anyway I guess I'll see you around, what with us working on the same floor and all!@@"<br>
<br>
Dashing off with her drink, it isn't long after that <<=setup.getNpcName('npc_barista', 'nickname')>> calls out your name.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" "Get your drink and head back to the office." 360>>]
</div>/*#
#desc: more aggressive attire, mentions having the courage to ask out a new boyfriend
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['canteen'] 'coworker_futa' _nextDate>>
<<removeRandomEvent 'elevator_home' 'coworker_futa'>>
<<set $npc_futa.stage = 2>>
<<registerProgressionEvent>>
<<if $player.sec_style.body.name != "" && !$npc_futa.flags.reactnamechange>>
<<set $npc_futa.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_futa","npc_futa_2")>>
<div id="invframe" class="scrolltext">
Walking into the elevator, you find <<=setup.getNpcName('npc_futa', 'full')>>. She's looking just a touch less innocent than the last you saw her, though no less sweet, trading her frumpy sweater for something a bit more fitted and sexy paired with leggings rather than a concealing skirt. She's even wearing heels! Modest at just a couple centimetres, but it really seems to make a difference, though all that fades compared to her confident smile as she greets you.<br>
<br>
<<if $scene.namereact>>
"@@.npc_futa;Hey! <<=$player.original_first_name>>.@@" She says in greeting only for you to quickly correct her that you go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_futa;Oh! I'm so sorry. Not for your name, I mean it really suits you and it's great if that's what you wanted to be called, I just didn't know or I never would have well...@@"<br>
<br>
You explain that it's fine and she seems to relax a bit.
<<else>>
"@@.npc_futa;Hey! <<=$player.first_name>>.@@" She says in greeting, throwing her arms out to give you a hug like you were old friends.
<</if>>
<br><br>
"@@.npc_futa;So, it's a bit crazy but, well, I took your advice and tried asking out this cute <<guy>> in my apartment building? And <<he>> said yes! It was, like, so great, we clicked and everything and <<he>> asked me for a second date and it's tonight!@@"<br>
<br>
You congratulate her on her newfound boldness, wishing her luck as the elevator doors open onto the lobby.<br>
<br>
Biting her lip, she seems to muster her courage before quickly blurting out "@@.npc_futa;I really hope I get lucky tonight! Ohmygod I can't believe I said that to you!@@"<br>
<br>
Blushing hard, she runs off across the lobby, her kitten heels clicking on the marble floor.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: dressing even sluttier/edgier, you notice a slight bulge between her legs, mentions dumping her boyfriend
#status: RELEASED 0.6.0.0
#ignore_spell: ordah
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'coworker_futa' _nextDate>>
<<set $npc_futa.stage = 3>>
<<removeRandomEvent 'canteen' 'coworker_futa'>>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_psychiatrist' 'company' 'theme_psychiatrist_company_changing'
0
'theme_psychiatrist_company_changing_1'
false
>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_futa","npc_futa_3")>>
<div id="invframe" class="scrolltext">
Standing in line, you find yourself next to <<=setup.getNpcName('npc_futa', 'full')>>. Gone are her sweaters and colourful knits, replaced by an all black ensemble layering a leather coat over a ruffled blouse, pencil skirt and gloves with 4" heels rounding out the look.<br>
<br>
Even more than her new look, it feels like the tables have turned as now it's you feeling a bit intimidated and nervous around her. Her friendly smile remains the same as it ever was, even if there's a slight hint of scheming in the corner of her eye.<br>
<br>
You ask her how things are, if she's still dating the "cute <<guy>>" from her apartment.<br>
<br>
She snorts "@@.npc_futa;That loser? Nah, I dumped <<his>> ass, <<he>> just couldn't handle what I'm packing, but it's fine. Now that I've learned to harness my confidence well... it seems like there's nothing I can't do! My boss even recognised it and gave me a promotion, that's why I'm dressing a bit more formal and all.@@"<br>
<br>
You express condolences that things didn't work out, but wish her luck in her new position just before she heads up to make her order.<br>
<br>
She heads for a chair and you get ready to approach the counter. Noticing her sitting down out of the corner of your eye, you swear you notice a slight bulge disrupting the otherwise smooth lines of her skirt, a bulge that you are certain was not there the last time you saw her.<br>
<br>
<<printThought "Must be seeing things...">><br>
<br>
<<=setup.getNpcName('npc_cook', 'first')>> breaks you from your distraction. "@@.npc_cook;Hey, you gunna ordah or what?@@"<br>
<br>
<<include "buyFoodOptions">>
</div>/*#
#desc: offers to fuck you
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = $npc_futa.stage < 4>>
<</if>>
<<set $player.location = "Work Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_futa","npc_futa_4")>>
<div id="invframe" class="scrolltext">
<<if $npc_futa.stage > 3>>
<<if State.hasPlayed("event_coworker_futa_3_fuck") && (!$player.body_ref.vagina || State.hasPlayed("event_coworker_futa_3_vag"))>>
You run into <<=setup.getNpcName('npc_futa', 'full')>> again in the bathroom, forced to look away as she graces you with a hungry grin as you both recall the "fun" of your previous encounter.<br>
<br>
Unfortunately for your eager holes by the time you look back, she has disappeared. A little miffed, you figure she must have had a meeting to get to or something as you finish up your own business.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom." 60>>]
<<else>>
You again run into <<=setup.getNpcName('npc_futa', 'full')>> in the bathroom and she winks at you in invitation...<br>
<br>
[<<moveTo "event_coworker_futa_3_fuck" "Your butt would love to welcome her." 300>>]<br>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo "event_coworker_futa_3_vag" "Offer up your <<getWordVagina>>." 300>>]<br>
<<elseif setup.getChastityLevel() < 5 && $npc_manager.flags.trustplayerwithkey && $player.sec_style.submission.permanent_key == "">>
[<<moveTo "event_coworker_futa_3_vag" "Run back to your desk to grab your key and offer up your <<getWordVagina>>." 120>>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked away.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_coworker_futa_3_abort" "Say you unfortunately don't have time today." 60>>]
<</if>>
<<else>>
Walking into the bathroom, you find yourself staring at <<=setup.getNpcName('npc_futa', 'full')>>. It seems the whole "leather" look is more than just a phase as she has upgraded even further; knee-high heels, a leather coat zipped just far enough to leave a bit of cleavage showing and leather pants that seem to draw attention to the obvious bulge between her legs.<br>
<br>
Looking at you with a grin, she follows your sight-line and smiles even wider.<br>
<br>
"@@.npc_futa;So, I never properly thanked you for the encouragement that got me "out of my shell" — how about we head back to my office for a few and I show you how good a bit of... CONFIDENCE can feel like.@@"<br>
<br>
In case there was any doubt what she was talking about she makes a two-handed motion towards her swelling package.<br>
<br>
[<<moveTo "event_coworker_futa_3_fuck" "Accept her offer." 300>>]<br>
<<if $player.body_ref.vagina>>
<<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>
[<<moveTo "event_coworker_futa_3_vag" "Offer up your <<getWordVagina>>." 120>>]<br>
<<elseif setup.getChastityLevel() < 5 && $npc_manager.flags.trustplayerwithkey && $player.sec_style.submission.permanent_key == "">>
[<<moveTo "event_coworker_futa_3_vag" "Run back to your desk to grab your key and offer up your <<getWordVagina>>." 120>>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked away.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_coworker_futa_3_abort" "Say you unfortunately don't have time at the moment." 60>>]
<</if>>
</div>/*#
#desc: fucks you, mentions that her boyfriend came crawling back/that <<he>> could take lessons from you on how to take it in the ass
#status: RELEASED 0.6.0.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.first>>
<<if $npc_futa.stage < 4>>
<<set $npc_futa.stage = 4>>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_6'
0
'event_ai_sex_lesson_vaginal_1'
true
>>
<<include "checkSchoolReady">>
<</if>>
<<set $scene.first = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_futa">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "voluntary">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<</if>>
<<playerOrgasm>>
<<applyExperience 'anal' $npc_futa.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 10 'normal' $SEEN_FRIEND>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'coworker_futa' _nextDate>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_futa', 'full'))>> office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_futa","npc_futa_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
Almost hypnotised by <<=ps(setup.getNpcName('npc_futa', 'full'))>> dominant energy, you quickly agree to her offer and obediently follow her up the hall to her office.<br>
<br>
As offices go it... barely qualifies, not much more than a desk and a few filing cabinets, less than half the size of just the antechamber you work out of to say nothing of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner lair. Still, it has a locking door and that's all that really matters as she soon has you on your knees, giving you a moment to admire the big, juicy <<getWordPenis false>> sprouting from between her legs before she has you bent over the desk.
<<else>>
You accept <<=ps(setup.getNpcName('npc_futa', 'full'))>> invitation and eagerly follow her back to her office — again marveling at her confident strides and dominant bearing in contrast the to the shy, mousey waif you first met.<br>
<br>
She casually closes her office door for a bit of privacy and she bends you over her desk. You bite your lip in anticipation at the sound of a zipper and her thick <<getWordPenis false>> slapping across to top of your rear.
<</if>>
<br><br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
You gasp as she pulls the <<=setup.getItemTypeName("plug")>> out of your ass, then moan when she replaces it with her thick cock.
<<else>>
You relax and moan as her thick cock slides into your rear hole.
<</if>>
<br><br>
Once she starts thrusting, it is all but over as she holds you down, her hips slapping against your ass as she pounds you good and hard.<br>
<br>
<<if $scene.first>>
"@@.npc_futa;Damn, but your ass is fucking tight and magical. I should send my <<boy>>friend to you for lessons on how to take it deep!@@"<br>
<br>
You moan as she continues to plow your <<if $player.body_ref.penis>>prostate<<else>>bottom<</if>>, your incoherent sound somehow communicating the question if this is the same <<guy>> she dumped.<br>
<br>
"@@.npc_futa;Yeah, <<he>> came literally crawling back to me after realising there was no way <<he>>'d find another girl my equal. It's been great, <<he>> moved in with me and now does all the chores like a good slave. As soon as <<he>> manages to take all of me in both holes, I'm going to collar <<him>> and maybe look into expanding my harem to include <<if $options.fem>>another girl<<else>>a girl<</if>>, as well. It's been great for <<his>> training, but I think I might break <<him>> if I only have <<if $options.fem>>one set of<<else>>two<</if>> holes to fuck given I need to cum at least two or three times a night or I get cramps.@@"<br>
<br>
Only half processing her story, you feel your orgasm approaching, crying out in ecstasy as she slams home, injecting her <<if $fetish.futanari>>futa <</if>>cum deep in your ass with a grunt as your eyes roll back in your head<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>> and you spurt all over the front of her desk<</if>>.
<<else>>
You moan, her <<getWordPenis false>> wielded with expert skill that leaves you a touch envious of her <<boy>>friend getting it like this every day, her insatiability balanced with an obvious enthusiasm to making sure her partner gets off as well.<br>
<br>
Get off you do, as it is not long before you feel your orgasm approaching, crying out in ecstasy as she slams home, injecting her <<if $fetish.futanari>>futa <</if>>cum deep in your ass with a grunt as your eyes roll back in your head<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>> and you spurt all over the front of her desk<</if>>.
<</if>>
<br><br>
Pulling out and leaving you to lay there and recover.
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0 && $fetish.cum>>
She reaches down to scrape up your seed, licking it up herself rather than feeding you as she smiles. "@@.npc_futa;Mmm, I just love the taste of a <<if $fetish.sissy>>SISSI<<else>>good girl<</if>>. Unfortunately, I need to use my desk for work so you'll have to leave, see you around!@@"
<<else>>
"@@.npc_futa;As much as I love the view of a satisfied <<if $fetish.sissy>>SISSI<<else>>girl<</if>> draped across my desk, I really should be getting back to work, so you'll have to leave. See you around!@@"
<</if>>
<br><br>
Staggering back to your feet, you nod in thanks, <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>stuffing the <<=setup.getItemTypeName("plug")>> back where it belongs and <</if>>fixing your clothes before you stumble out of her office, somehow managing to compose yourself by the time you get back to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 600>>]
</div>/*#
#desc: decline sex with npc_futa
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_futa.stage < 4>>
<<set $npc_futa.stage = 4>>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_6'
0
'event_ai_sex_lesson_vaginal_1'
true
>>
<<include "checkSchoolReady">>
<</if>>
<<if !State.hasPlayed("event_coworker_futa_3_fuck") || ($player.body_ref.vagina && !State.hasPlayed("event_coworker_futa_3_vag"))>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'coworker_futa' _nextDate>>
<</if>>
<</if>>
<<set $player.location = "Work Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_futa","npc_futa_4")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_futa', 'full'))>> obviously a bit miffed, but shrugs it off, sliding past with a parting "@@.npc_futa;You don't know what you're missing... maybe next time.@@"
<br>
A shiver goes through your body as you practically feel her dominant energy and you let out a held breath once she's finally gone leaving you alone in the bathroom.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Back in the women's bathroom." 60>>]
</div>/*#
#desc: fucks you vaginally
#status: RELEASED 0.8.3.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.first>>
<<if $npc_futa.stage < 4>>
<<set $npc_futa.stage = 4>>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_6'
0
'event_ai_sex_lesson_vaginal_1'
true
>>
<<include "checkSchoolReady">>
<</if>>
<</if>>
<<set $scene.virgin = !$player.virgin.vaginal>>
<<if !$player.virgin.vaginal>>
<<set $player.virgin.vaginal = 'npc_futa'>>
<<if !$player.virgin.first>>
<<set $player.virgin.first = "npc_futa">>
<</if>>
<<if !$player.sec_style.sex.vagina>>
<<set $player.sec_style.sex.vagina = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_6'
0
'event_psychiatrist_session_vaginal_virginity_1'
true
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_vag'
0
'theme_church_confession_vag'
true
>>
<</if>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<playerOrgasm>>
<<applyExperience 'penis' 10 'normal' $SEEN_FRIEND>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'coworker_futa' _nextDate>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_futa', 'full'))>> office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_futa","npc_futa_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
Entranced by <<=ps(setup.getNpcName('npc_futa', 'full'))>> dominant energy, you quickly agree to her offer <<if $scene.removeCage>>begging her to wait for just a moment before you sprint back to your desk, returning key in hand to find her grinning in knowing anticipation. She plucks the key from your grasp and you<<else>>and<</if>> obediently follow her up the hall to her office.<br>
<br>
As offices go it... barely qualifies, not much more than a desk and a few filing cabinets, less than half the size of just the antechamber you work out of to say nothing of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner lair. Still, it has a locking door and that's all that really matters as she soon has you on top of her desk,
<<else>>
Again letting yourself fall under the spell of <<=ps(setup.getNpcName('npc_futa', 'full'))>> dominant energy, you quickly agree to her offer <<if $scene.removeCage>>begging her to wait for just a moment before you sprint back to your desk, returning key in hand to find her grinning in knowing anticipation. She plucks the key from your grasp and you<<else>>and<</if>> obediently follow her up the hall to her office.<br>
<br>
In the office you waste no time in hopping up on her desk,
<</if>>
your legs spread and wet with excitement.<br>
<br>
She smiles down at you as her large <<getWordPenis false>> slides between your folds, not yet entering you as she lubes herself up with your juices
<<if $player.body_ref.penis>>
and rubs her penis against your own. "@@.npc_futa;I see you are like me,@@" she says with a smile, lifting her balls to reveal the wet slit tucked behind her glorious girl-cock. "@@.npc_futa;Isn't it just wonderful? Such endless pleasures... the normies have no idea what they're missing...<<if $scene.first>> A truth my <<boy>>friend is coming around to every time I fuck <<his>> tight, cute butt...<</if>>@@"<br>
<br>
You moan and nod as she enters you.
<<else>>
before slowly entering you. <<if $scene.first>>"@@.npc_futa;So tight and wet... I can't imagine going without having something to fuck, starting from the first time I claimed my <<boy>>friend's tight hole...@@"<</if>>
<</if>>
<br><br>
<<if $scene.virgin>>
You thought your first time was supposed to hurt... but, despite her size, she is a shaft of pure pleasure.
<</if>>
She holds your hips with both hands and pulls you into her and you are already cumming.<br>
<br>
"@@.npc_futa;My my, you needed this, didn't you?@@"<br>
<br>
You moan in assent as she continues to fuck, each thrust better than the last as you occasionally thrash in ecstasy, knocking business materials off her desk as she gives you a different sort of "the business." <br>
<br>
The sounds of mutual pleasure echoing in the small office it isn't long before she cums as well, an explosive, passionate climax that leaves you filled... yet drained.<br>
<br>
<<if $scene.first>>
She steps back and you finally start to regain your wits. Remembering something she said previously you start to collect yourself and ask how things have gone since she broke up with her <<boy>>friend?<br>
<br>
"@@.npc_futa;Oh, <<him>>? Yeah, <<he>> came literally crawling back to me after realising there was no way <<he>>'d find another girl my equal. It's been great, <<he>> moved in with me and now does all the chores like a good slave. As soon as <<he>> manages to take all of me in both holes, I'm going to collar <<him>> and maybe look into expanding my harem to include <<if $options.fem>>another<<else>>a<</if>> girl as well. It's been great for <<his>> training, but I think I might break <<him>> if I only have <<if $options.fem>>one set of<<else>>two holes<</if>> to fuck, given I need to cum at least two or three times a night or I get cramps.@@"<br>
<br>
You chuckle as she helps you back up, scarcely recognising the quiet, mousy girl from that first meeting.
<<else>>
She gives you a minute or two to recover before offering you a hand, herself already zipped up and looking ready to return to work.
<</if>>
<br><br>
<<printThought "The company certainly has an effect on its employees...">> You think as she helps you back to your feet.<br>
<br>
<<if $scene.removecage>>
<<=setup.getNpcName('npc_futa', 'first')>> winks as she helps lock your chastity belt back in place. You shiver, almost glad to be back secured, still tingly beneath from the wonderful fucking she just gave you.
<</if>>
You glance at the time and thank <<=setup.getNpcName('npc_futa', 'first')>> again and then hurry off, thankfully arriving back at your desk before <<=setup.getNpcName('npc_manager', 'formal')>> seems to have noticed you<<if $scene.removecage>>, or your key<</if>> were missing.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 600 "<<if $scene.removeCage>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
</div>/*#
#desc: frustrated in stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_futa","npc_futa_4")>>
<div id="invframe" class="scrolltext">
You step into the elevator to almost bump into <<=setup.getNpcName('npc_futa', 'first')>>, she's looking a bit run down, but she brightens up almost immediately on seeing you. "@@.npc_futa;Oh, you're still here... tell you the truth, all that's been happening of late, promotions, mergers, hires... it's hard to keep track!@@"<br>
<br>
You nod, and ask how she's been and she sighs. "@@.npc_futa;To tell you the truth, it's been frustrating. All this growth there should be opportunities for advancement, right? But I've been stuck doing routine onboarding of employees from the Nintendolls merger. I guess it's important as part of bridging the corporate transition... and I'm getting barely any recognition from above. Before I was on management track and now it feels like my career is at a bit of a dead end...@@"<br>
<br>
She glances around and leans in close to whisper a final note. "@@.npc_futa;To tell you the truth... I feel like <<=setup.getNpcName('npc_rival', 'formal')>> is intimidated by me... things were a lot better when <<=setup.getNpcName('npc_manager', 'other')>> was in charge of things, but I guess I'm too low to really have any input on that level of corporate politicking...@@"<br>
<br>
The elevator for the lobby dings and <<=setup.getNpcName('npc_futa', 'first')>> puts on an artificial smile. "@@.npc_futa;See you around. I've got some work to take care of down in the basement levels, I hate being away from home so many evenings... but the new regime is running all of us hard... well figuratively speaking, another change is that I'm now subject to work-mandated chastity while I'm on duty.@@" She sighs and waves good-bye.<br>
<br>
You wish her good-night and continue on your way.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: meet for first time standing in line for lunch
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'coworker_hucow' _nextDate>>
<<set $npc_hucow.stage = 1>>
<<removeRandomEvent 'canteen' 'coworker_hucow'>>
<<registerProgressionEvent>>
<<if $player.sec_style.body.name != "" && !$npc_hucow.flags.reactnamechange>>
<<set $npc_hucow.flags.reactnamechange = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_hucow","npc_hucow_0")>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.spill_event>>
You're standing in line for lunch when the girl in front of you, a slender young woman of mixed asian descent dressed in a lab coat, greets you.<br>
<br>
"@@.npc_hucow;Hey, weren't you part of a nasty spill a few days ago?@@"<br>
<br>
You blush a bit at the memory and nod yes.<br>
<br>
"@@.npc_hucow;I thought so, that looked like quite a mess! Anyway, my name is <<=setup.getNpcName('npc_hucow', 'full')>>, what's yours?@@"
<<else>>
Your mind is wandering as you stand in line for lunch only to be interrupted by someone bumping into you.<br>
<br>
Turning in surprise, you find yourself face to face with a slender young woman of mixed asian descent dressed in a lab coat holding a phone.<br>
<br>
"@@.npc_hucow;Oh! I'm so sorry, looked down at my phone for a moment and nearly crashed right into you! Good thing it was before I got my lunch though, right?@@" She laughs as you assure her that there was no harm done. "@@.npc_hucow;Anyway, my name is <<=setup.getNpcName('npc_hucow', 'full')>>, what's yours?@@"
<</if>>
<br><br>
You exchange introductions and start chatting while you wait and you ask her what she does at the company.<br>
<br>
"@@.npc_hucow;I work in the bio-tech department helping around the lab and stuff. To tell the truth I don't really understand most of what goes on here...yet. The tech here is years ahead of everything I've seen during my time at the University. But I'm sure it's really important stuff that's gonna change the world!@@"<br>
<br>
You nod in agreement, but don't have a chance to talk about anything else as you have made it to the front of the line, bidding her good-day and stepping up to counter.<br>
<br>
<<include "buyFoodOptions">>
</div>/*#
#desc: busy trying to "fix/adjust" noticeably larger breasts
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['work_coffee_shop'] 'coworker_hucow' _nextDate>>
<<set $npc_hucow.stage = 2>>
<<removeRandomEvent 'work_bathroom_female' 'coworker_hucow'>>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_psychiatrist' 'company' 'theme_psychiatrist_company_changing'
0
'theme_psychiatrist_company_changing_1'
false
>>
<</if>>
<<set $player.location = "Work Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_hucow","npc_hucow_1")>>
<div id="invframe" class="scrolltext">
As you walk into the bathroom, you notice <<=setup.getNpcName('npc_hucow', 'full')>>. She has a look of frustration on her face as she seems to be attempting to re-adjust her breasts — breasts that are a good several cup sizes larger than the more modest (and proportional) set she was sporting when last you met.<br>
<br>
You ask her if anything is wrong and she sighs.<br>
<br>
"@@.npc_hucow;No, not really it's just, well... I dunno what it is, but my breasts have just been so swollen and sensitive lately! I've had to buy two new bras already and I think I'm going to have to upgrade a third time on the way home tonight!@@"<br>
<br>
Surprised at her reaction, you check that she didn't do this intentionally?<br>
<br>
"@@.npc_hucow;No, that's the crazy thing! I mean, sure they're kind of sexy, but they just started growing on their own! I asked at work, I mean, we handle all sorts of things in the lab and maybe I got exposed to something? But my boss said everything was fine and not to worry about it so I'm hoping they'll shrink back down... or at least stop growing soon!@@"<br>
<br>
You wish her luck as she finally gives up and heads out of the bathroom, her breasts swaying with each step while looking ready to burst out of her tight top.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom." 60>>]
</div>/*#
#desc: shorter skirt/higher heels, breasts even larger, walks out from the back room massaging her tits
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'coworker_hucow' _nextDate>>
<<set $npc_hucow.stage = 3>>
<<removeRandomEvent 'work_coffee_shop' 'coworker_hucow'>>
<<registerProgressionEvent>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_hucow","npc_hucow_2")>>
<div id="invframe" class="scrolltext">
<<if $npc_barista.flags.milking.questioned>>
You're standing waiting for your order when you spot <<=setup.getNpcName('npc_hucow', 'full')>> behind the counter unhooking herself from a milking device. From the look of things, she has just finished quite a large deposit and she smiles in contentment, groping herself before wrangling her massive breasts back inside her lab coat. You can't help but stare in surprise, scarcely believing the transformation wrought upon
<<else>>
You're standing waiting for your order when you spot <<=setup.getNpcName('npc_hucow', 'full')>> walking out from the back room. Massaging her breasts, she looks quite different from
<</if>>
the friendly, cute girl you first ran into waiting in line for lunch.<br>
<br>
<<=ps(setup.getNpcName('npc_hucow', 'full'))>> breasts have grown to roughly the size of her head, looking particularly lewd given her slender frame. That sense of "lewd" is only accentuated by her new outfit — her old lab outfit seeming to have shrunk so as to now strain to contain her massive breasts while becoming both partially transparent... and barely extending down far enough to be "decent." Steep platform heels only add to the look of imbalance to have her hips swaying with every step. The way her breasts swing back and forth looks quite precarious, but she has a pleased, if somewhat dopey, grin on her face as she heads past you.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" "Get your order and head back to the office." 360>>]
</div>/*#
#desc: dressed salaciously, heavy makeup, breasts ginormous, a bit airheaded, on her way to upper floors for some "overtime"
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_hucow.stage < 4>>
<<set $npc_hucow.stage = 4>>
<<removeRandomEvent 'elevator_home' 'coworker_hucow'>>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_3'
0
'event_ai_sex_lesson_foreplay_1'
true
>>
<<include "checkSchoolReady">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_hucow","npc_hucow_3")>>
<div id="invframe" class="scrolltext">
Stepping into the elevator, you find yourself sharing the small compartment with <<=setup.getNpcName('npc_hucow', 'full')>>. Her breasts are even larger than before, twin soccer balls pressed together by a straining bra, and spreading wider than her narrow chest.<br>
<br>
"@@.npc_hucow;Hiya!@@" She says in greeting, smiling at you with newly thick lips and an overly made-up face. You nod in greeting, her lab coat looking even shorter than you last saw it, hanging open to expose what looks like a skintight jumpsuit beneath, a fully cinched corset dedicated primarily to the task of keeping her back straight while supporting her ginormous breasts.<br>
<br>
You ride down only for her face to screw up in confusion as she looks at the panel.<br>
<br>
"@@.npc_hucow;Oh, silly me! I must have forgotten to hit the button, I need to go up to floor 138, working a special bonus night shift again!@@"<br>
<br>
Given her breasts, you can guess at what that "extra" shift probably entails, but you merely wish her a good evening as you step out of the elevator.<br>
<br>
Glancing back as the elevator doors close, you're pretty sure you catch a glimpse of her squeezing one of her tits with one hand while her other hand snakes past her open lab coat down between her legs.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: her running lab
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Lab only to be surprised by <<=setup.getNpcName("npc_hucow","full")>>. Though she remains as buxom as the last time you saw her, and in the same cow-print catsuit, there does seem to be something slightly different about her, her eyes sparkling with excitement, and intelligence, as she greets you with a smile.<br>
<br>
"@@.npc_hucow;Hiya <<=$player.first_name>>! If you're looking for <<=setup.getNpcName("npc_work_doctor","formal")>> <<he npc_work_doctor>>'s off dealing with patients. I'm a bit busy but I can try and help, if you needed something?@@"<br>
<br>
Given your last few encounters you're more than a little surprised and you ask <<=setup.getNpcName("npc_hucow","full")>> how she's doing.<br>
<br>
"@@.npc_hucow;Good, thank you. I've been thinking a bit clearer since <<=setup.getNpcName("npc_work_doctor","formal")>> adjusted my medication... I think <<he npc_work_doctor>> needed the extra help, even with <<his npc_work_doctor>> new assistant. I guess maybe that's been a distraction? Either way, I've been filling in on managing the hucow program, my experience and everything gives me a real unique perspective and I've been making some minor improvements to the overnight routine.<<if setup.hasFreeTime($now, $player, $currentTasks, 28800)>> I could let you try it some night, if you wanted to come back.<<else>>Would you like to try?<</if>>@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 28800)>>
[<<moveTo "event_coworker_hucow_stage5_2" "Sure!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_coworker_hucow_stage5_2" "Maybe some other time." 200 "<<set $scene.accept=false>>">>]
<<else>>
[<<moveTo "event_coworker_hucow_stage5_2" "You'll remember that for later." 200 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: hucow shift offer
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName("npc_hucow","full"))>> overnight milking offer and she grins. "@@.npc_hucow;Oh, you're just so cute and helpful! I promise you're going to just love it, I know I do!@@"<br>
<br>
[<<moveTo "event_work_doctor_hucow_night_stage5_1" "Follow her." 600 "<<set $scene.first=true>>">>]<br>
<<else>>
You thank <<=setup.getNpcName("npc_hucow","full")>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 28600)>>
and tell her you'll be back some other eveing.<br>
<br>
"@@.npc_hucow;Great to hear... and I'll be here, 'cause if I wasn't, well... I think the whole milking research would fall apart and we certainly don't want THAT to happen!@@"
<<else>>
for the offer, but say you'll have to come back some other evening.<br>
<br>
"@@.npc_hucow;Sure, sure, I know all about being busy... especially of late! I think the whole milking research would fall apart if I hadn't stepped up, and we certainly don't want THAT to happen!@@"
<</if>>
<br><br>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: talk with npc_hucow
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> seems somewhere between amused and dismissive as <<he npc_work_doctor>> passes you off to <<=setup.getNpcName("npc_hucow","full")>> and gets back to <<his npc_work_doctor>> work.<br>
<br>
<<=setup.getNpcName("npc_hucow","full")>> greets you with a grin and a hug, her massive mammaries squishing up against you. "@@.npc_hucow;Nice to see you! Things in the lab have been so productive of late... <<if setup.hasFreeTime($now, $player, $currentTasks, 28800)>>I don't suppose you'd like to take part?<<else>>I'm actually in the middle of something, though, so I can't hook you up right now.<</if>>@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 28800)>>
[<<moveTo "event_coworker_hucow_stage5_2" "Sure!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_coworker_hucow_stage5_2" "Maybe some other time." 200 "<<set $scene.accept=false>>">>]<br>
<</if>>
<br>
<<if State.hasPlayed("event_porn_hucow_invite_1")>>
<<if State.hasPlayed("event_porn_hucow_recruit_1")>>
[@@.link_locked;You already sold <<=setup.getNpcName("npc_hucow","full")>> on shooting a porno together.@@]<br>
<<else>>
[<<moveTo "event_porn_hucow_recruit_1" "Ask her about shooting porn together." 120>>]<br>
<</if>>
<</if>>
[<<moveTo "event_hucow_doctor_talk_1" 'Ask her about <<=setup.getNpcName("npc_work_doctor","formal")>>.' 600 "<<set $scene.first=true>>">>]<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: ask hucow about npc_work_doctor
#status: RELEASED 0.9.3.0
#ignore_spell: hvac
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_hucow","npc_hucow_4")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_hucow","full")>> about what <<=setup.getNpcName("npc_work_doctor","formal")>> is up to?<br>
<br>
"@@.npc_hucow;Not that <<he npc_work_doctor>> really keeps me in the loop... but a lot. I've had to take on some additional responsibilities since <<=setup.getNpcName("npc_work_doctor","formal")>> seems to be working day and night. Not just on <<his npc_work_doctor>> normal projects, but, well... I think <<he npc_work_doctor>>'s trying to keep it a bit of a secret, but <<he npc_work_doctor>> has been stockpiling a LOT of drugs... and not pills, gas which... weird? The way <<he npc_work_doctor>>'s stressing over things it's like <<he npc_work_doctor>>'s preparing for a war or something, I even saw him ordering a maintenance worker to run a connection into the building's HVAC system...@@"<br>
<br>
<<printThought "Interesting... and something I should be prepared for if I'm going to take <<=setup.getNpcName('npc_work_doctor','formal')>> down...">><br>
<br>
You thank <<=setup.getNpcName("npc_hucow","full")>> for the information and she nods, a full-body motion that has her massive mammaries jiggling as she turns back to her work.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: first meeting with pr_sissy
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_pr_sissy.stage = 1>>
<<registerProgressionEvent>>
<<set $randomEvents['work_bathroom_female'].pushUnique({ done: false, id: "pr_sissy"})>>
<<include "checkBrainscanEvent">>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage setup.charImage("npc_pr_sissy","npc_pr_sissy_0")>>
<div id="invframe" class="scrolltext">
You've just picked up your drink order when <<=ps(setup.getNpcName("npc_barista","nickname"))>> face lights up as she looks past you. "@@.npc_barista;<<=setup.getNpcName("npc_pr_sissy","first")>>, ohmygod!@@"<br>
<br>
You turn to see who she is greeting to find yourself face to face with a woman who can best be described with two words: happy, and shiny. Dressed in a shiny pencil skirt and a matching ruffled satin blouse that strains to contain breasts too large for her frame she smiles back; a freckled, slightly tomboyish face surrounded by bountiful naturally curly hair.<br>
<br>
Leaning over the counter to share a hug with <<=setup.getNpcName("npc_barista","nickname")>>, the new girl looks you over for a moment before turning back to the bubbly barista with a hand on her hip. "@@.npc_pr_sissy;Well? Aren't you going to introduce me to this sexy thing?@@"<br>
<br>
"@@.npc_barista;Like, of course! So, this is <<=$player.first_name>>, she works as a secretary for <<=setup.getNpcName("npc_manager","other")>>, you know, <<=ps(setup.getNpcName("npc_secretary","nickname"))>> replacement I told you about? I'm so sorry I didn't introduce you earlier, you two have, like SO MUCH in common!@@"<br>
<br>
"@@.npc_pr_sissy;Oh! It's so great to meet you! <<=setup.getNpcName("npc_barista","nickname")>> has told me so much about you. Anyway, my name is <<=setup.getNpcName("npc_pr_sissy","full")>>, but you can call me <<=setup.getNpcName("npc_pr_sissy","first")>>. I work over in the Public Relations department, spreading the wonderful word about this glorious company of ours!@@"<br>
<br>
You shake her hand, she may operate on a slightly different wavelength than <<=ps(setup.getNpcName("npc_barista","nickname"))>> bimbo enthusiasm, but with no less intensity, especially the way she seems to get all starry-eyed at the mention of your company. Either she's REALLY drunk the corporate Kool-aid or she's very committed to her job in PR, or maybe those are the same thing?<br>
<br>
"@@.npc_pr_sissy;Well, I gotta jet — got a presentation I'm working on and needed a shot of caffeine!@@" She picks up a drink having seemingly ordered ahead, taking a sip of the mocha concoction with a smile before licking the foam off her lips. "@@.npc_pr_sissy;Yum, frothy! Well, it was great meeting you and putting such a cute face to the name! I'll catch you later. Good luck, sister. <<=setup.getNpcName("npc_barista","nickname")>> told me how far you've come already and it's just great to know there's other self-motivated girls like me working here!@@"<br>
<br>
Skipping away in her steep, shiny patent heels you find yourself in a bit of a daze in her wake.<br>
<br>
Remembering that you should be getting back to your <<=setup.getNpcName("npc_manager","title")>> with her order, you thank <<=setup.getNpcName("npc_barista","nickname")>> for the introduction and head on your way. Partway up the hall you do a double-take on some of her phrasing...<br>
<br>
<<printThought 'Wait, how much did <<=setup.getNpcName("npc_barista","nickname")>> tell her? Is she...?'>><br>
<br>
Arriving back at the office, you shrug — such questions will have to be answered some other time.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" "Get your order and head back to the office." 360>>]
</div>/*#
#desc: 2nd meeting with pr_sissy - anal only exchange
#status: FINISHED 0.7.12.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_1")>>
<div id="invframe" class="scrolltext">
You walk into the bathroom to see <<=setup.getNpcName("npc_pr_sissy","first")>> touching up her makeup in the mirror.<br>
<br>
She does a little wave in acknowledgement and you nod back, and then do a double take when you notice that, sitting next to her makeup kit in front of the mirror, is a very large butt-plug.<br>
<br>
Noticing your focus she smiles through the mirror without missing a beat in applying mascara. "@@.npc_pr_sissy;Don't tell anyone I'm at work empty. I just recently upgraded to the new size and it was distracting my focus. Obviously I am a firm believer that a good <<if $fetish.sissy>>sissy<<else>>girl<</if>> should be anal-only, but having something the size of a <<if $fetish.fisting>>fist<<else>>grapefruit<</if>> in your ass isn't quite conducive to focusing on delicate work, y'know?@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("anal") > 15>>
[@@.link_locked;Mmm, <<if $fetish.fisting>>fisting<<else>>anal<</if>>. There's no way you can implicate yourself as anything other than a total butt-slut.@@]<br>
<<else>>
[<<moveTo "event_pr_sissy_second_2" "Anal only?" 180 "<<set $scene.slut=false>>">>]<br>
<</if>>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("anal") > 10>>
[<<moveTo "event_pr_sissy_second_2" "But that's why constant practice is so important!" 180 "<<set $scene.slut=true>>">>]<br>
<<elseif setup.getTotalValue("bimbofication") > 10>>
[@@.link_locked;You may be turning into a slut, but you aren't that anal-fixated.@@]
<<elseif setup.getTotalValue("anal") > 10>>
[@@.link_locked;Your ass may be well-trained, but you aren't a slut about it!@@]
<<else>>
[@@.link_locked;Unlike <<=setup.getNpcName("npc_pr_sissy","first")>>, you are not a gaping butt-slut.@@]
<</if>>
</div>/*#
#desc: 2nd meeting with pr_sissy - your thoughts on anal
#status: FINISHED 0.7.12.0
#ignore_spell: aaaanyway
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_pr_sissy.stage = 2>>
<<registerProgressionEvent>>
<<if $scene.slut>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_1")>>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You grin and agree that being a butt-slut is, like... the best! And that means <<=setup.getNpcName("npc_pr_sissy","first")>> needs to fill her hole and stop shirking her training!<br>
<br>
She smiles along with you and then stops, putting her mascara brush down as she thinks. "@@.npc_pr_sissy;You know, you're right. Being anal only is all about having correct priorities. How could I neglect that and take the easy way out?@@" She snorts, clearly disappointed in herself. "@@.npc_pr_sissy;I really should know better! Good thing I have friends to help keep me on track, huh?@@"<br>
<br>
She scoops up the plug and steps away from the mirror.
<<else>>
"@@.pc;Anal only?@@" You ask hesitantly.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> gasps, putting her mascara brush down as she turns to you in shock. "@@.npc_pr_sissy;You haven't heard of anal only lifestyle? Ohmygod! I figured, you <<if setup.checkItemTypeWorn("cage")>>being locked up properly and all...<<else>>would be all over something like that!<</if>>@@" She shakes her head. "@@.npc_pr_sissy;Whatever, that doesn't matter now. Oh, I feel so lucky being the one to introduce you to the good news! See, well... it'll seem dumb once you think about it, but "anal only" means orienting all of your sexual activity around that most wonderful, universal of holes — the one in your butt!@@"<br>
<br>
She grins wider, obviously turned on at the thought. "@@.npc_pr_sissy;No, obviously you can still perform oral if you want, like, no blowjobs, no cunnilingus? Those things come standard and you'll be hard pressed to find a partner if you aren't willing to slurp and lick, no matter how wonderful your bum is!@@" She grins and wiggles her butt in emphasis. "@@.npc_pr_sissy;So, yeah, anyone can do it, whatever you have up front, you just stop wasting time with those bits and focus on your rear hole and, trust me, after a while you'll be confused why you didn't make the switch sooner. Being anal only is just so, so good, first the pleasure on its own, but also the feeling of your partner inside of you? Be it penis, finger<<if $fetish.fisting>>, fist<</if>> or strap-on? Unf! The best, and I think you know exactly what I mean.@@" She winks at you and you blush slightly.<br>
<br>
"@@.npc_pr_sissy;Aaaanyway. now that you know I hope you do the right thing and embrace it. Anal only, the best choice a <<if $fetish.sissy>>sissy<<else>>girl<</if>> can make!@@" She half frowns. "@@.npc_pr_sissy;Hmm... you know, saying that...@@" She picks up the plug. "@@.npc_pr_sissy;Well, I'm feeling empty, and realising that removing this was very much the wrong thing to do! I need to be filled!@@"
<</if>>
<br><br>
She turns towards the stall and then pauses, biting her lip as her eyes twinkle and she looks at you. "@@.npc_pr_sissy;Saaay... how about you give me a hand filling my lovely rear hole. Being anal only is so much better with a partner and, like, I can show you a neat trick for prostate stimulation before I stuff back up!@@"<br>
<br>
[<<moveTo "event_pr_sissy_second_3" "Accept her offer and help her re-plug." 180 "<<set $scene.anal=true>>">>]<br>
[<<moveTo "event_pr_sissy_second_3" "Decline, you have other things you need to get done before lunch is over." 180 "<<set $scene.anal=false>>">>]
</div>/*#
#desc: 2nd meeting with pr_sissy - help her re-plug
#status: FINISHED 0.7.12.0
#ignore_spell: aaaanyway
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.stage >= 4>>
<<addWorkEvent 'pr_sissy_product_demo'>>
<</if>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_1")>>
<div id="invframe" class="scrolltext">
<<if $scene.anal>>
You grin and nod and the pair of you are soon bouncing into the bathroom stall where she sits down, unzipping her short, tight skirt and sliding it up her legs to display her small, caged <<if $fetish.sissy>>sissy clitty<<else>>member<</if>>, paying it no mind as she pulls down her panties and stands with legs spread.<br>
<br>
"@@.npc_pr_sissy;So, obviously, the traditional un-equipped way to get at that juicy prostate is to go through the front, curled middle finger, yadda yadda. And sure, that's great, though I wish doctors would linger a bit longer, don't just poke it and leave me hanging! I want a thorough probing!@@" She grins, "@@.npc_pr_sissy;Aaaanyway, another option I like is to come from the back;@@" as she talks, she demonstrates, reaching around behind with one hand and turning to give you a good view of her presently empty butt.<br>
<br>
"@@.npc_pr_sissy;So what you do is lead with the thumb, just slide it in, hook the prostate, and then close the fingers to get some bonus pressure on the perineum... mmm, yeah, that feels good.@@" Thumb in her ass she moves her butt in a slow circle as her hand clenches slightly.
<<if $fetish.fisting>>
"@@.npc_pr_sissy;So... bonus lesson time! Once you've got things all nice and loosened up you can switch to a totally different technique that will have you ready to take something nice and big at a moment's notice.@@"<br>
<br>
As she talks she pulls her hand slightly back, just the tip of her thumb remaining in her rear as she curls her fingers into a point. "@@.npc_pr_sissy;This sort of self-fisting takes a bit of flexibility, but it's a great practice technique and—@@" she gasps as her ass spreads around her knuckles before suddenly being wrist-deep. "@@.npc_pr_sissy;Oh yeah, that's what I needed — how foolish I was to un-plug, even for just a few minutes!@@"<br>
<br>
A few moments of working her fist around and she slides her hand out,
<<else>>
"@@.npc_pr_sissy;So... bonus lesson time — once you've got things all nice and warmed up you can switch angles.@@"<br>
<br>
As she talks she pulls her hand slightly back, removing her thumb and switching to her ring and middle finger. "@@.npc_pr_sissy;As well as curling, the secret here is testing your gape, you want to kind of spread your fingers out, feel the muscles of your hole, then curl and grip like you're holding a bowling ball.@@" Her hand moves the whole time she talks, culminating in a soft moan. "@@.npc_pr_sissy;Oh yeah, that's what I needed — how foolish I was to un-plug, even for just a few minutes!@@"<br>
<br>
She spends a little longer showing how adjusting angle can help work the full circle of one's hole before finally sliding her hand free,
<</if>>
her hole gaping invitingly as she hands you the plug. "@@.npc_pr_sissy;Here you go, if you could just fill me back up? You can see how just that quick fisting really helps open you up.@@"<br>
<br>
You nod, taking a moment to admire her quivering hole before taking the lubricated plug and sliding it home. Egg-shaped and slightly bigger than her fist it takes a bit of twisting for it to slide home, but when it does it sucks into place with a pop, leaving the large base nestled tightly between her buns.<br>
<br>
"@@.npc_pr_sissy;Mmm, second to a nice cock that's what my hole needs!@@" She pulls up her panties and zips up her skirt. "@@.npc_pr_sissy;Well I better finish touching up this makeup, and I imagine you've got things of your own to take care of before lunch-break is over. Catch you around, sugar!@@"<br>
<br>
She blows you a kiss and a wink before bouncing out of the stall and back to the mirror, the bent-forward position serving to stretch her shiny skirt even tighter and show off the faintest outline of the large plug nestled between her cheeks.
<<else>>
You thank <<=setup.getNpcName("npc_pr_sissy","first")>> for the offer, but explain you have a lot to do and such a short lunch break to do it in!<br>
<br>
"@@.npc_pr_sissy;Don't I know it! But that's just what it takes to stay ahead, and make sure that Social Interaction Service Syndicate Inc. keeps moving forward to be the biggest, best company in the world!@@" She drifts into full PR mode for a moment before smiling at you. "@@.npc_pr_sissy;Speaking of getting ahead, I need to take care of my behind! I'm going to shove this big, beautiful plug back where it belongs, catch you later!@@"<br>
<br>
She disappears into the stall and you hear a moan as she works the mammoth butt-plug into her rear. The moans continue as it sounds like she's doing a VERY thorough job to make sure it's seated securely...
<</if>>
<br><br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Attend to your business." 30>>]
</div>/*#
#desc: pr_sissy drops in to take you to a product demo
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_pr_sissy.stage = 3>>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_2'
0
'event_ai_sex_lesson_seduction_1'
true
>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_pr_sissy","npc_pr_sissy_2")>>
<div id="invframe" class="scrolltext">
You're working when <<=setup.getNpcName("npc_pr_sissy","first")>> drops in looking fabulous — her hair looking freshly styled, breasts looking particularly perky and a very obvious collar around her neck.<br>
<br>
"@@.npc_pr_sissy;Good <<if $now.getUTCHours() >= 12>>afternoon<<else>>morning<</if>>, <<=$player.first_name>>, are you ready to go?@@"<br>
<br>
You're confused for a moment until you check the schedule — you're so accustomed to managing <<=ps(setup.getNpcName("npc_manager","formal"))>> schedule you didn't even notice that this appointment was with you, not her!<br>
<br>
"@@.npc_pr_sissy;Come on! I figured, what with you moving up in the company and all, you should have a better understanding of some of what it is we do. I mean, sure, the answer approximates to "everything" — but I think it'd be good for you to see something outside the tech stack, so I made an appointment with the clothing division.@@" She grins. "@@.npc_pr_sissy;After all, what <<if $fetish.sissy>>sissy<<else>>girl<</if>> wouldn't love checking out some fun new outfits?@@"<br>
<br>
You quickly confirm with <<=setup.getNpcName("npc_manager","formal")>> that your absence will not be a problem and then join <<=setup.getNpcName("npc_pr_sissy","first")>> as she enthusiastically leads the way.<br>
<br>
"@@.npc_pr_sissy;So, as I was saying earlier — our clothing division is doing some really exciting work, not just in working with some of the biggest designers, but really pushing from the technological perspective to enable some really exciting options — which is what you'll be testing out today.@@"<br>
<br>
[<<moveTo "event_pr_sissy_product_demo_2" "Ride the elevator down to the lab." 300>>]
</div>/*#
#desc: pr_sissy product test - welcome to lab
#status: RELEASED 0.7.13.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") _TODOlabTech>>
<div id="invframe" class="scrolltext">
You arrive at a large, open "lab" spread out across what looks to be the bulk of an entire floor, a shared collaboration area with a mix of lab-coat wearing material scientists and more "high society" dressed designers, as well as a variety of models.<br>
<br>
One of the scientists notices your arrival and hurries over, greeting the two of you with a smile. "@@.generic_female1;Ah, <<=setup.getNpcName("npc_pr_sissy","formal")>>! Very excited for your tour today, and thank you for bringing your friend — it is always good to get a "first impression" thought on things, and we have something very exciting to show the two of you today, please, follow me.@@"<br>
<br>
The scientist leads the way weaving across the lab as they explain some of their work. "@@.generic_female1;So we've been working hard on applying some of our more advanced metamaterials to fashion purposes, the holy grail remains an outfit that can change to suit the situation — and we're getting close... in the lab.@@"<br>
<br>
You come to a display where the same outfit is shown on a trio of mannequins. A sleek bodycon dress suitable for the club it looks to be made of latex, or a similar shiny, tight material. One dress is pink, one black and then a third that mixes the two colours for a very unique and striking look.<br>
<br>
"@@.generic_female1;Here, seeing — and feeling, is far better than me yammering on, just pick one of these and we'll do a run-through of the capabilities of this new material. We've been calling it laminate, but I'm sure our friends in marketing will come up with something sexier for the public.@@"<br>
<br>
[<<moveTo "event_pr_sissy_product_demo_3" "Choose the black dress." 300 "<<set $scene.color='black'>>">>]<br>
[<<moveTo "event_pr_sissy_product_demo_3" "Choose the black and pink dress." 300 "<<set $scene.color='black and pink'>>">>]<br>
[<<moveTo "event_pr_sissy_product_demo_3" "Choose the pink dress." 300 "<<set $scene.color='pink'>>">>]
</div>/*#
#desc: pr_sissy product test - club mode
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<switch $scene.color>>
<<case 'black'>>
<<set $scene.dressId = 'latex_dress_black_lam'>>
<<set $scene.pantiesId = 'latex_panties_black_lam'>>
<<set $scene.gartersId = 'latex_garters_black_lam'>>
<<set $scene.stockingsId = 'latex_stockings_black_lam'>>
<<set $scene.braId = 'latex_bra_black_lam'>>
<<set $scene.jacketId = 'latex_straightjacket_black_lam'>>
<<case 'black and pink'>>
<<set $scene.dressId = 'latex_dress_blackpink_lam'>>
<<set $scene.pantiesId = 'latex_panties_blackpink_lam'>>
<<set $scene.gartersId = 'latex_garters_blackpink_lam'>>
<<set $scene.stockingsId = 'latex_stockings_blackpink_lam'>>
<<set $scene.braId = 'latex_bra_blackpink_lam'>>
<<set $scene.jacketId = 'latex_straightjacket_blackpink_lam'>>
<<case 'pink'>>
<<set $scene.dressId = 'latex_dress_pink_lam'>>
<<set $scene.pantiesId = 'latex_panties_pink_lam'>>
<<set $scene.gartersId = 'latex_garters_pink_lam'>>
<<set $scene.stockingsId = 'latex_stockings_pink_lam'>>
<<set $scene.braId = 'latex_bra_pink_lam'>>
<<set $scene.jacketId = 'latex_straightjacket_pink_lam'>>
<</switch>>
<<addItem $scene.dressId>>
<<wearItem $scene.dressId true>>
<<wearItem $scene.shoes true>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") _TODOlabTech>>
<div id="invframe" class="scrolltext">
You choose the <<=$scene.color>> dress. The scientist nods. "@@.generic_female1;Go ahead and strip — this material is meant to be worn solo, without undergarments. You'll see why later in the demonstration.@@"<br>
<br>
You nod and strip but, rather than handing you a dress to slip into, the scientist motions you to step up onto a platform.<br>
<br>
"@@.generic_female1;Stand still, please,@@" they state as they step away. "@@.generic_female1;This is another product we've been working on to take advantage of the versatility of this material, an automatic wardrobe device, of a sort.@@"<br>
<br>
Out of the way of the platform they step behind a control panel and a large ring descends over you. The first pass is accompanied by a grid of lasers as it seems to be measuring you precisely, then, as it rises upwards, it brings with it a <<=$scene.color>> sheet of latex-like material. Slightly liquid, the material clings to your skin as it pulls up over you, covering and enveloping you completely as it rises to your neck, and then reverses course again, the raw material painted onto your body reshaped into a PERFECTLY fitted copy of the dress you chose.<br>
<br>
"@@.npc_pr_sissy;Isn't technology great? I can't wait until I can get one of these machines installed at home — near instant dressing in perfectly fitted shiny clothing? Could there be anything better?@@"<br>
<br>
The scientist chuckles. "@@.generic_female1;Unfortunately, even if we were at that stage, the system is only able to handle this particular material. Not everyone would be happy having a wardrobe of nothing but essentially latex.@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> shrugs dismissively. "@@.npc_pr_sissy;They don't know what they're missing.@@"<br>
<br>
The scientist smiles, giving you a few more moments to admire your outfit before helping you down off the platform.<br>
<br>
"@@.generic_female1;So this first outfit is what we call the "club mode" — what we'd like you to do now is try it out in a realistic situation — if you could put your shoes back on we'll proceed to our test area.@@"<br>
<br>
Shoes back on you follow on to a isolated room that has been done up like your standard club dance floor.<br>
<br>
"@@.generic_female1;Again, we're doing a test of how the outfit performs under stress, so if you could do some dancing, work up a bit of a sweat, that would be perfect. Do you have a music preference?@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> grins, "@@.npc_pr_sissy;I can be your partner, if you need one.@@"<br>
<br>
[<<moveTo "event_pr_sissy_product_demo_4" "Ask for something fast and frenetic and just jam out alone." 600 "<<set $scene.dance='fast'>>">>]<br>
<<if setup.getTotalValue("dominance") > 5>>
[<<moveTo "event_pr_sissy_product_demo_4" 'Ask if you could lead <<=setup.getNpcName("npc_pr_sissy","first")>> in a waltz.' 600 "<<set $scene.dance='ballroom_lead'>>">>]<br>
<<else>>
[@@.link_locked;You've spent too much time practicing submission, you do not have the dominant skills to take the lead.@@]<br>
<</if>>
[<<moveTo "event_pr_sissy_product_demo_4" 'Ask <<=setup.getNpcName("npc_pr_sissy","first")>> to lead you in a waltz.' 600 "<<set $scene.dance='ballroom_follow'>>">>]<br>
[<<moveTo "event_pr_sissy_product_demo_4" 'How can you dance without grinding? Ask <<=setup.getNpcName("npc_pr_sissy","first")>> to join you on the dance floor.' 600 "<<set $scene.dance='slut'>>">>]
</div>/*#
#desc: pr_sissy product test - club mode test
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.dance>>
<<case 'fast'>>
<<applyFatigue 50>>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'normal' $EXPOSED>>
<<case 'ballroom_lead'>>
<<applyFatigue 15>>
<<applyExperience 'dexterity' 7 'normal' $EXPOSED>>
<<applyExperience 'dominance' 5 'little' $EXPOSED>>
<<case 'ballroom_follow'>>
<<applyFatigue 20>>
<<applyExperience 'dexterity' 10 'normal' $EXPOSED>>
<<applyExperience 'submission' 7 'little' $EXPOSED>>
<<case 'slut'>>
<<applyFatigue 30>>
<<applyExperience 'dexterity' 9 'normal' $EXPOSED>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'terrible' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") _TODOlabTech>>
<div id="invframe" class="scrolltext">
<<switch $scene.dance>>
<<case 'fast'>>
You request something fast and take to the floor, thrashing about until you've worked up quite a sweat, though not as much as you would have expected for being partially shrink-wrapped in latex.
<<case 'ballroom_lead'>>
You take <<=setup.getNpcName("npc_pr_sissy","first")>> by the hand and head to the centre of the dance floor. The pair of you pull in to a close dancer's frame and move to the music, gracefully spinning across the floor as you provide a firm lead.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> swoons slightly as the music ends and you finish with a dip. "@@.npc_pr_sissy;Well! Didn't realise you had that in you, you can feel free to swing me around anytime.@@" She states with a wink.
<<case 'ballroom_follow'>>
You turn to <<=setup.getNpcName("npc_pr_sissy","first")>> and ask if she could lead you through a dance? She grins, taking you onto the floor and leading you through a graceful waltz, with VERY close body contact.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> finishes the dance off with a dip, smiling down at you. "@@.npc_pr_sissy;Mmm, you are such an easy lead, so adorably submissive on the dance floor as well as off of it.@@"
<<case 'slut'>>
You entice <<=setup.getNpcName("npc_pr_sissy","first")>> onto the dance floor. She grins and the two of you are soon moving to the music, groping and grinding.<br>
<br>
As slutty as you act <<=setup.getNpcName("npc_pr_sissy","first")>> just grins and pushes you further, the two of you all but having sex to the music — though stopping short is more due to <<if setup.checkItemTypeWorn("cage")>>your chastity devices pressed torturously against each other<<else>>her chastity device securely separating the two of you rather<</if>> than any reservation on your parts.
<<default>>
ERROR: unexpected scene.dance <<=$scene.dance>>
<</switch>>
<br><br>
The song ends and you step off the dance floor.<br>
<br>
"@@.generic_female1;As you can feel, the outfit does breathe slightly, helping to allow sweating and prevent overheating that can be an issue with normal latex. Also note how it didn't ride up at all, quite the useful feature when you're dealing with something so tight and short!@@"<br>
<br>
You nod, the dress is quite impressive, and feels great as you continue on to the next area.<br>
<br>
[<<moveTo "event_pr_sissy_product_demo_5" 'Continue.' 300>>]
</div>/*#
#desc: pr_sissy product test - bedroom mode
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem $scene.dressId true>>
<<deleteItem $scene.dressId>>
<<addItem $scene.pantiesId>>
<<wearItem $scene.pantiesId true>>
<<addItem $scene.braId>>
<<wearItem $scene.braId true>>
<<addItem $scene.stockingsId>>
<<wearItem $scene.stockingsId true>>
<<addItem $scene.gartersId>>
<<wearItem $scene.gartersId true>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") _TODOlabTech>>
<div id="invframe" class="scrolltext">
The "next" area turns out to be a bedroom. "@@.generic_female1;And now, at the press of a button, you are ready to move from the dance floor... to the bedroom.@@"<br>
<br>
With a sly grin the employee presses a button. You gasp as your outfit shifts — no more are you wearing your slinky dress, but a full set of latex lingerie! Bra, panties, garters, even stockings sliding down over your legs and feet is a QUITE unique sensation.<br>
<br>
You gasp in surprise, and then take a moment to admire your sexy underthings.<br>
<br>
"@@.generic_female1;As you can imagine, the potential for such outfits are quite extensive, now, if you would continue on with me, I want to show one final feature...@@"<br>
<br>
[<<moveTo "event_pr_sissy_product_demo_6" "Wait, shouldn't you test this version as well?" 600>>]<br>
[<<moveTo "event_pr_sissy_product_demo_7" "Continue on." 60>>]
</div>/*#
#desc: pr_sissy product test - bedroom mode test
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 15 'very' $EXPOSED>>
<<applyExperience 'anal' 12 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") _TODOlabTech>>
<div id="invframe" class="scrolltext">
You point out that it would be a shame to pass up the opportunity to properly "test" this outfit mode as you gesture towards the bed.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> and the scientist grin. "@@.generic_female1;Well! You said your friend was enthusiastic, of course we can run some tests...@@"<br>
<br>
A moment later and the three of you are on the bed — your face buried in <<=ps(setup.getNpcName("npc_pr_sissy","first"))>> ass, making her moan as you eat her out while the scientist plows your ass with a thick strap-on — right through your panties!<br>
<br>
"@@.generic_female1;As you can feel, unf,@@" the scientist explains while thrusting into you. "@@.generic_female1;The material can reform to be effectively a self-lubricating condom. It really is an outfit to have you prepared wherever the evening takes you...@@"<br>
<br>
"@@.npc_pr_sissy;Or afternoon!@@" <<=setup.getNpcName("npc_pr_sissy","first")>> moans as she leaks through her chastity belt, her ass quivering and tightening around your tongue as she shudders with a strong analgasm. Your eyes roll back as the cock in your ass vibrates, finishing you off just as <<=setup.getNpcName("npc_pr_sissy","first")>> steps away to fix her clothes.<br>
<br>
The cock retreats from your ass, and then you feel the condom do the same until all you are left with is the tight panties literally hugging into your crack.<br>
<br>
You take a moment to catch your breath as you return to your feet and the scientist removes her strap-on harness. She checks the rear of your panties with a smile.<br>
<br>
"@@.generic_female1;Perfect, we've been working hard on the condom functionality and it's doing great — no visual evidence that I just fucked you through your panties, now, if you are ready to move onto the final demonstration?@@"<br>
<br>
You nod, curious as to what else this amazing outfit is capable of.<br>
<br>
[<<moveTo "event_pr_sissy_product_demo_7" "Continue on." 600>>]
</div>/*#
#desc: pr_sissy product test - bondage mode
#status: RELEASED 0.8.0.0
#ignore_spell: d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem $scene.pantiesId true>>
<<deleteItem $scene.pantiesId>>
<<removeItem $scene.braId true>>
<<deleteItem $scene.braId>>
<<removeItem $scene.stockingsId true>>
<<deleteItem $scene.stockingsId>>
<<removeItem $scene.gartersId true>>
<<deleteItem $scene.gartersId>>
<<addItem $scene.jacketId>>
<<wearItem $scene.jacketId true>>
<<applyExperience 'bondage' 15 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") _TODOlabTech>>
<div id="invframe" class="scrolltext">
The third room is less interesting than the first two and you walk into the middle of the bare, almost industrial chamber wondering what this next test will be about.<br>
<br>
Distracted by your curiosity you don't realise that your garment has started creeping down your arms until, suddenly, your limbs are pulled in to your body. You gasp in surprise as, a moment later, you find yourself in a tight straitjacket, covered in latex. Gone is your sexy underwear in favour of fetishistic covering from your neck down through your crotch, your arms tightly hugged around your
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
body, just below your massive breasts.
<<case 'large'>>
body, just below your large breasts.
<<case 'medium'>>
body, just below your breasts.
<<case 'small'>>
body, just below your small breasts.
<<case 'none'>>
body.
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<br><br>
"@@.generic_female1;And here we have a final demonstration of the material's versatility — it cannot apply rigid pressure, but, like a tendon, it can be quite strong at pulling taut, and it can incorporate additional materials.@@"<br>
<br>
As the scientist describes the company's creation, she approaches with some strips of steel — placing them vertically against your waist. Things shortly get even tighter and more restrictive as a steel-boned corset closes around your waist. A pair of D rings are soon incorporated into the shoulders of your straitjacket and you find yourself suspended from the ceiling. Your weight is distributed remarkably evenly but you feel quite helpless, like a hanging ornament, which you suppose is the point.<br>
<br>
"@@.npc_pr_sissy;Marvelous! You have really out-done yourself this time, I cannot wait to see this technology in stores!@@" <<=setup.getNpcName("npc_pr_sissy","first")>> says with obvious lust.<br>
<br>
"@@.generic_female1;Alas, were it that simple. Unfortunately we are some way off from things working outside of a lab environment — still wrangling power requirements, and the "refurbishment" between uses is chemically still complicated and costly, but functionality is there, it is just a matter of bringing costs down.@@"<br>
<br>
"@@.npc_pr_sissy;Well as soon as you start taking pre-orders, sign me up!@@" She says with a smile.<br>
<br>
[<<moveTo "event_pr_sissy_product_demo_8" "You want one too!" 60 "<<set $scene.silent=false>>">>]<br>
[<<moveTo "event_pr_sissy_product_demo_8" "Just hang silently." 60 "<<set $scene.silent=true>>">>]
</div>/*#
#desc: pr_sissy product test - bondage mode test
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 12 'very' $EXPOSED>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") _TODOlabTech>>
<div id="invframe" class="scrolltext">
<<if $scene.silent>>
You bite your lip as you continue to swing in your bondage, though you secretly are quite intrigued at the potent possibilities of this material...
<<else>>
"@@.pc;Me too!@@" You blurt out. <<=setup.getNpcName("npc_pr_sissy","first")>> and the scientist laugh in amusement.
<</if>>
<br><br>
"@@.generic_female1;As I said, there is still much to do, but I hope you enjoyed your little tour and demonstration — enough for you to write that PR briefing?@@" She asks <<=setup.getNpcName("npc_pr_sissy","first")>>.<br>
<br>
"@@.npc_pr_sissy;DEFINITELY, and I have some just wonderful images@@" she adds with a glimmering wink as you realise that one of her eyes is a VERY realistic cybernetic implant. "@@.npc_pr_sissy;And don't worry, we won't use anything that shows your face without permission.@@"<br>
<br>
[<<moveTo "event_pr_sissy_product_demo_9" "You're fine with showing your face, especially if it will help the pitch!" 60 "<<set $scene.face=true>>">>]<br>
[<<moveTo "event_pr_sissy_product_demo_9" "Thank her for preserving your anonymity." 60 "<<set $scene.face=false>>">>]
</div>/*#
#desc: pr_sissy product test - gift + back to work
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem $scene.jacketId true>>
<<deleteItem $scene.jacketId>>
<<switch $scene.color>>
<<case 'black'>>
<<set $scene.dressId = 'latex_dress_black'>>
<<set $scene.pantiesId = 'latex_panties_black'>>
<<set $scene.gartersId = 'latex_garters_black'>>
<<set $scene.stockingsId = 'latex_stockings_black'>>
<<set $scene.braId = 'latex_bra_black'>>
<<case 'black and pink'>>
<<set $scene.dressId = 'latex_dress_blackpink'>>
<<set $scene.pantiesId = 'latex_panties_blackpink'>>
<<set $scene.gartersId = 'latex_garters_blackpink'>>
<<set $scene.stockingsId = 'latex_stockings_blackpink'>>
<<set $scene.braId = 'latex_bra_blackpink'>>
<<case 'pink'>>
<<set $scene.dressId = 'latex_dress_pink'>>
<<set $scene.pantiesId = 'latex_panties_pink'>>
<<set $scene.gartersId = 'latex_garters_pink'>>
<<set $scene.stockingsId = 'latex_stockings_pink'>>
<<set $scene.braId = 'latex_bra_pink'>>
<</switch>>
<<addItem $scene.dressId>>
<<addItem $scene.pantiesId>>
<<addItem $scene.gartersId>>
<<addItem $scene.stockingsId>>
<<addItem $scene.braId>>
<<if $scene.face>>
<<applyExperience 'bimbofication' 10 'very' $EXPOSED>>
<</if>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latexBlackPink')>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('latexBlackPink')>>
<<useClothSetPop 'tmp'>>
<<addRandomEvent $randomEvents['canteen'] 'coworker_pr_sissy'>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addWorkEvent "pr_sissy_robotics" _nextDate>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") _TODOlabTech>>
<div id="invframe" class="scrolltext">
<<if $scene.face>>
You smile and say that <<=setup.getNpcName("npc_pr_sissy","first")>> should definitely use pictures that show your face if she thinks it will improve her report.<br>
<br>
She grins. "@@.npc_pr_sissy;Oh they DEFINITELY will — the expression you had at a few points — well if that doesn't sell product, I don't know what will!@@"
<<else>>
You reply that you would rather retain your anonymity. <<=setup.getNpcName("npc_pr_sissy","first")>> smiles. "@@.npc_pr_sissy;That's fine — trust me, just how you look in that stuff... trust me, customers are going to be PLENTY interested.@@"
<</if>>
<br><br>
"@@.generic_female1;That's great to hear — if we could get a boost to funding that would really help our time to market.@@" The scientist replies as she helps you back down to the ground and leads you back to the platform where it all began — another pass of the large ring and the "laminate" pulls away, the steel bones and attachment points falling to the floor.<br>
<br>
You start putting on your clothes. Already you miss the tight feel of the "laminate." The scientist hands you a parcel.<br>
<br>
"@@.generic_female1;So, to thank you for your participation today, I wanted you to have these — those are just normal latex, prototypes left over from the original outfit designs — the uniform based on one of our off the rack models that we already sell publicly.@@"<br>
<br>
You thank her for the gift and then it's time for <<=setup.getNpcName("npc_pr_sissy","first")>> take you back to your office.<br>
<br>
"@@.npc_pr_sissy;Thanks for coming with, I hope it gave you an appreciation of what wonderful things this company is bringing to the world!@@"<br>
<br>
You nod — still a bit weirded out at <<=ps(setup.getNpcName("npc_pr_sissy","first"))>>... effervescent corporate loyalty, but you had some fun and got some new clothes so you can hardly complain about your afternoon.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: pr_sissy visits for robotics
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_pr_sissy","npc_pr_sissy_2")>>
<</if>>
<div id="invframe" class="scrolltext">
You're working when <<=setup.getNpcName("npc_pr_sissy","first")>> drops in again as her frisky and fabulous self.<br>
<br>
"@@.npc_pr_sissy;Good <<if $now.getUTCHours() >= 12>>afternoon<<else>>morning<</if>>, <<=$player.first_name>>, you ready to see more of what the greatest company in the world is working on?@@"<br>
<br>
You remember the last time she took you on a trip to the R&D Department and grin.<br>
<br>
"@@.npc_pr_sissy;Awesome! I'm doing a tour of one of next year's new product-lines, and well... with what it is I thought you'd be perfect for helping check it out!@@"<br>
<br>
Your curiosity heightened, you quickly confirm with <<=setup.getNpcName("npc_manager","formal")>> that your absence will not be a problem and then join <<=setup.getNpcName("npc_pr_sissy","first")>> as she enthusiastically leads the way.<br>
<br>
"@@.npc_pr_sissy;So with the merger with Nintendolls the company's entertainment division is bigger and better than ever, and our best engineers on both sides have been working hard night and day to... well, I won't spoil the surprise, you need to see, and feel this one for yourself!@@"<br>
<br>
[<<moveTo "event_pr_sissy_robotics_2" "Ride the elevator down to the lab." 300>>]
</div>/*#
#desc: pr_sissy takes you to robotics
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_pr_sissy","first")>> leads the way out of the elevator and past a sign announcing that you've entered the company's robotics department.<br>
<br>
"@@.npc_pr_sissy;It's just so exciting how many directions the company is growing!@@" <<=setup.getNpcName("npc_pr_sissy","first")>> states giddily as you make your way past several industrial-looking labs. "@@.npc_pr_sissy;I feel like I can barely keep up with our acquisitions... and I just have to do the messaging! All the people like your manager having to handle folding in new employees and getting them all up to speed on <<if $fetish.sissy>>the SISSI way<<else>>the way we do things here<</if>>? Well, I'm just glad it happens, even if I don't understand it! And the market keeps going up, up, up as we grow bigger, bigger, bigger!@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> finishes her soliloquy to the company just as you round a corner and are greeted by
<<if $npc_pokergirl.profile>>
a familiar face from the after-work parties, the woman you've played at poker dressed in a labcoat and looking quite professional compared to how she is around the poker table.
<<else>>
a woman in a labcoat.
<</if>>
"@@.npc_pr_sissy;<<=setup.getNpcName("npc_pokergirl","formal")>>! So glad you were willing to give me the tour, I brought my friend <<=$player.first_name>> to tag along... is that alright? And don't worry about clearances or whatever, she works DIRECTLY for <<=setup.getNpcName("npc_manager","other")>>.@@"<br>
<br>
<<=setup.getNpcName("npc_pokergirl","formal")>> nods.
<<if $npc_pokergirl.profile>>
"@@.npc_pokergirl;We've actually met before...@@" <<=setup.getNpcName("npc_pokergirl","formal")>> replies with a bit of knowing eye-contact.
<<else>>
"@@.npc_pokergirl;Charmed,@@" <<=setup.getNpcName("npc_pokergirl","formal")>>.
<</if>>
"@@.npc_pokergirl;If you would come with me? I imagine you are both quite eager to begin the tour.@@"<br>
<br>
"@@.npc_pr_sissy;Yep, yep!@@" <<=setup.getNpcName("npc_pr_sissy","first")>> replies, turning to you as <<=setup.getNpcName("npc_pokergirl","formal")>> swipes her badge for the lab and leads the way inside.<br>
<br>
"@@.npc_pr_sissy;<<=setup.getNpcName("npc_pokergirl","formal")>> is an award-winning roboticist specialising in anatomically human robotics. Top of the field, the company is so lucky to have her on the payroll.@@"<br>
<br>
<<=setup.getNpcName("npc_pokergirl","formal")>> politely smiles and nods in acknowledgement. "@@.npc_pokergirl;Robotics is a team effort. I'd be barely done by anything on my own but together, we can do anything... and anyone.@@"<br>
<br>
<<printThought "This company...">><br>
<br>
[<<moveTo "event_pr_sissy_robotics_3" "Follow her." 300>>]
</div>/*#
#desc: pr_sissy introduces you to head of robotics
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokergirl")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokergirl")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_pokergirl","formal")>> leads you into the lab. <<if $npc_pokergirl.profile>>Even if you hadn't experienced "work" previously it would be immediately<<else>>Even without explanation, it's<</if>> obvious just what sort of robots they're building as you walk past svelte and sexy female forms<<if !$options.fem_all_women>> and muscular mock male muscles<</if>>, racks and racks of torsos, limbs and heads.<br>
<br>
"@@.npc_pokergirl;In-house production is ramping up quickly for the upcoming launch. For this initial run every unit is to be assembled and tested thoroughly in-house before shipping to work out any kinks... I mean, manufacturing flaws.@@"<br>
<br>
As she talks you pass through an assembly-line where sex-bots are being assembled. At the end of the line you find
<<if $npc_pokercheater.profile>>
another familiar face from poker
<<else>>
a <<man npc_pokercheater>>
<</if>>
looking on and taking notes as a trio of sex-bots gang-bang an employee.<br>
<br>
[<<moveTo "event_pr_sissy_robotics_4" "Continue." 180>>]
</div>/*#
#desc: pr_sissy introduces you to robotics researcher
#status: RELEASED 0.9.4.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<</if>>
<div id="invframe" class="scrolltext">
"@@.npc_pokergirl;This is <<=setup.getNpcName("npc_pokercheater","formal")>>, <<he npc_pokercheater>> specialises in artificial skin and orifices, <<his npc_pokercheater>> work is...@@" <<=setup.getNpcName("npc_pokergirl","formal")>> shudders slightly "@@.npc_pokergirl;Mmm, divine. Better than reality, in some assessments.@@"<br>
<br>
"@@.npc_pokergirl;<<=setup.getNpcName("npc_pokercheater","formal")>>? This is <<=setup.getNpcName("npc_pr_sissy","formal")>>, I mentioned she would be coming by, and she brought her friend Miss <<=$player.last_name>>.@@"<br>
<br>
Where <<=setup.getNpcName("npc_pokergirl","formal")>> had been friendly, but formal, <<=setup.getNpcName("npc_pokercheater","formal")>> is more what you have come to expect from the company, looking you and <<=setup.getNpcName("npc_pr_sissy","first")>> with a leer that takes on additional power thanks to the sound of the nearby foursome.<br>
<br>
"@@.npc_pokercheater;Ah, <<=ps(setup.getNpcName("npc_manager","Director"))>> slave<<if $npc_manager.stage == 5 && !State.hasPlayed("event_rival_destruction_5")>>, sorry, former <<=setup.getNpcName("npc_manager","custom","Director")>><</if>>... would it be the both of you for doing a product test, then?@@" <<He npc_pokercheater>> glances at <<his npc_pokercheater>> notes. "@@.npc_pokercheater;Lab assistant 23-B is due for a break after this round... we could slot you both in and even get slightly ahead of schedule.@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> looks at you, her eyes lit up with excitement, clearly "hands on experience" was part of her plans coming here. You look at what you presume is lab assistant 23-B getting absolutely railed by the trio of sexbots... are you up for that today?<br>
<br>
[<<moveTo "event_pr_sissy_robotics_5" "You'd love to help test!" 300 "<<set $scene.test=true>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 15>>
[@@.link_locked;Pass up such an opportunity? No way!@@]
<<elseif setup.getTotalValue("bimbofication") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_pr_sissy_robotics_5" "You'll just watch." 300 "<<spendWillpower 1>><<set $scene.test=false>>">>] <<hint $options "Resisting such an offer for a slut like you would take an act of willpower.">>
<<else>>
[@@.link_locked;You don't have the mental energy to pass up such an opportunity.@@]
<</if>>
<<else>>
[<<moveTo "event_pr_sissy_robotics_5" "You'll just watch." 300 "<<set $scene.test=false>>">>]
<</if>>
</div>/*#
#desc: pr_sissy robotics offered test
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.test>>
You reply that you'd love
<<else>>
You decline the offer
<</if>>
to help test and <<=setup.getNpcName("npc_pokercheater","formal")>> nods only for <<=setup.getNpcName("npc_pokergirl","formal")>> to interject. "@@.npc_pokergirl;Could I join in, as well?@@"<br>
<br>
There is a momentary glance between the two scientists, an ever-so-brief confirmation that "you really want to do this" before <<=setup.getNpcName("npc_pokercheater","formal")>> replies flatly. "@@.npc_pokercheater;You know the rules. Such requests must be filed according to procedure, even for you... no, especially for you, as head of the project.@@"<br>
<br>
<<=setup.getNpcName("npc_pokergirl","formal")>> takes a deep breath as she fixes her hair-tie. "@@.npc_pokergirl;Please, <<sir npc_pokercheater>>, could this slut be granted permission to assist in product testing?@@"<br>
<br>
<<=setup.getNpcName("npc_pokercheater","formal")>> nods. "@@.npc_pokercheater;Permission granted, but oral and anal only, it would seem you require some additional practice in self-control, so the chastity belt stays on.@@"<br>
<br>
<<=setup.getNpcName("npc_pokergirl","formal")>> shudders. "@@.npc_pokergirl;Thank you, <<sir npc_pokercheater>>.@@"<br>
<br>
<<if $scene.test>>
[<<moveTo "event_pr_sissy_robotics_6_test_1" "Time to test..." 900>>]
<<else>>
[<<moveTo "event_pr_sissy_robotics_6_watch_1" "Continue to watch." 120>>]
<</if>>
</div>/*#
#desc: pr_sissy robotics watch start
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<</if>>
<div id="invframe" class="scrolltext">
You stand next to <<=setup.getNpcName("npc_pokercheater","formal")>> and watch as the current orgy concludes, with the "test administrator" finishing up by escorting the three bots that she had been "testing" along to the next station for "cleaning and shipping." Though she discharges her responsibilities dutifully, she looks exhausted from the orgy and staggers off to take a break.<br>
<br>
<<if $npc_pokercheater.profile>>
Somewhat reminiscent of <<his npc_pokercheater>> furtive actions at the poker-table
<</if>>
<<=setup.getNpcName("npc_pokercheater","formal")>> glances over at you with a slight grin. "@@.npc_pokercheater;Care to make a friendly wager on which of them cums the most times?@@" <<He npc_pokercheater>> asks.<br>
<br>
[<<moveTo "event_pr_sissy_robotics_6_watch_2" '<<=setup.getNpcName("npc_pokergirl","formal")>>.' 600 "<<set $scene.bet='pokergirl'>>">>]<br>
[<<moveTo "event_pr_sissy_robotics_6_watch_2" '<<=setup.getNpcName("npc_pr_sissy","first")>>.' 600 "<<set $scene.bet='pr_sissy'>>">>]<br>
[<<moveTo "event_pr_sissy_robotics_6_watch_2" 'No bet.' 600 "<<set $scene.bet='none'>>">>]
</div>/*#
#desc: pr_sissy robotics watch bet
#status: RELEASED 0.9.4.0
#ignore_spell: pii
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.bet>>
<<case 'pokergirl'>>
"@@.pc;<<=setup.getNpcName("npc_pokergirl","formal")>>,@@"
<<case 'pr_sissy'>>
"@@.pc;<<=setup.getNpcName("npc_pr_sissy","first")>>,@@"
<<case 'none'>>
"@@.pc;No bet,@@"
<<default>>
ERROR: unexpected scene.bet <<=$scene.bet>>
<</switch>>
you reply and <<=setup.getNpcName("npc_pokercheater","formal")>> <<if $scene.bet=='none'>>frowns slightly "@@.npc_pokercheater;You really are boring, you know that?@@" <<He npc_pokercheater>> snipes<<else>>smiles<</if>> as the testing commences.<br>
<br>
Four robots, <<if $options.fem_all_women>>, all feminine in profile, but each<<else>>two each masculine and feminine... though all<</if>> sporting sizable robo-cocks step out from one side of the room, pairing off with the two test subjects.<br>
<br>
In moments <<=setup.getNpcName("npc_pokergirl","formal")>> and <<=setup.getNpcName("npc_pr_sissy","first")>> are both getting double penetrated, the robots not just jack-hammering like a pair of fucking machines with legs, but caressing their partners, leaning in to lick and grope breasts even as the servo-powered hips wrapped in artificial flesh thrust away.<br>
<br>
"@@.npc_pokercheater;There's an initial calibration period here where the systems to a base test, as well as construct a pleasure-model of their partner. Units that are sharing a partner will share data to optimise things, the system scaling has been tested up to five on one scenarios, and user profiles can be copied between units to optimise user experience across multiple owned units. Of course, in test, the data is wiped, otherwise we would have a potential PII leak. Aaand there's calibration completed and entering free-form mode.@@"<br>
<br>
[<<moveTo "event_pr_sissy_robotics_6_watch_3" 'Keep watching.' 900>>]
</div>/*#
#desc: pr_sissy robotics watch finish
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<</if>>
<div id="invframe" class="scrolltext">
You nod, your attention more drawn to the two girls as the robots shift from their initial position and begin REALLY going to town fucking <<=setup.getNpcName("npc_pokergirl","formal")>> and <<=setup.getNpcName("npc_pr_sissy","first")>>, switching off ends, and even switching genitals as <<=setup.getNpcName("npc_pr_sissy","first")>> goes from sucking robot cock to licking robot cunt... while the robo-cock in her ass alters size and shape to have her really moaning as she continues to lick.<br>
<br>
"@@.npc_pokercheater;It would seem that <<=ps(setup.getNpcName("npc_pr_sissy","first"))>> pleasure profile is optimised by variety, and that she has high size queen tendencies.@@"<br>
<br>
You nod as <<=ps(setup.getNpcName("npc_pokercheater","formal"))>> attention is diverted and <<he npc_pokercheater>> makes a note. "@@.npc_pokercheater;Ah, slight glitch — see how the bot on the left is groping the air? Must be something off with the sensors in the arm...@@"<br>
<br>
You follow the direction of <<his npc_pokercheater>> gesture and spot the issue, the robot is groping one of <<=ps(setup.getNpcName("npc_pokergirl","formal"))>> breasts aggressively, but its other hand is doing the mirror fondling... several centimetres above where her other breast actually is.<br>
<br>
"@@.npc_pokercheater;That's why we test them, let's see if we can hot-fix and...@@" <<=setup.getNpcName("npc_pokercheater","formal")>> taps on <<his npc_pokercheater>> tablet for a few moments and the robotic hand moves back into position, <<=setup.getNpcName("npc_pokergirl","formal")>> moaning slightly louder in response around the massive robot cock she's choking on.<br>
<br>
"@@.npc_pokercheater;As you might have guessed, <<=ps(setup.getNpcName("npc_pokergirl","formal"))>> pleasure profile is all about intensity of experience and being treated like a piece of meat. Unfortunately for <<if $scene.bet == "pokergirl">>your bet,<<else>>my side of our little wager,<</if>> she is also under denial protocols... so no matter how hard they <<if $fetish.get_raped>>rape<<else>>fuck<</if>> her she will not be cumming... which would normally present an issue since a test cycle is meant to last through at least ten orgasms... but I'll let her out in an hour or two and call it equivalent.@@"<br>
<br>
As <<=setup.getNpcName("npc_pokercheater","formal")>> gets ravaged without relief in a battle of slave programming vs. algorithmic goals, <<=setup.getNpcName("npc_pr_sissy","first")>> is having what looks like the time of her life, multiple screaming orgasms that <<if $fetish.cum>>see her leaking out of her cage and <</if>>almost pass out before the bots step away.<br>
<br>
<<=setup.getNpcName("npc_pokercheater","formal")>> glances down at <<his npc_pokercheater>> tablet as the two robots servicing <<=setup.getNpcName("npc_pr_sissy","first")>> move towards the cleaning/shipping exit even as the exhausted, but still sex-crazed PR worker weakly tries to reach after them. "@@.npc_pokercheater;My, my, ninety-fifth percentile for rate of orgasm, quite impressive given she's locked in chastity... perhaps some robo-fetish tendencies boosting things?@@"<br>
<br>
[<<moveTo "event_pr_sissy_robotics_7" 'Help your friend back to her feet.' 300>>]
</div>/*#
#desc: pr_sissy robotics test start
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 15 'very' $EXPOSED>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<</if>>
<div id="invframe" class="scrolltext">
<<set $scene.removeCage = $player.body_ref.vagina && $player.virgin.vaginal && setup.checkItemTypeWorn("cage") && setup.isCage()>>
You join <<=setup.getNpcName("npc_pokergirl","formal")>> and <<=setup.getNpcName("npc_pr_sissy","first")>> in entering the testing area as the current "test administrator" finishes up, staggering slightly as she dutifully escorts the three sexbots that had just been gang-banging her on to the next station for "cleaning and shipping." She glances at <<=setup.getNpcName("npc_pokergirl","formal")>> and bows, before nodding to the rest of you and heading off to the break area for what looks like some much-needed relaxation.<br>
<br>
<<printThought "Test administrator... or test subject? In theory she's testing the bots... but she was getting it pretty hard herself. Though, from her expression, she seems like she's enjoying her job<<if setup.getTotalValue('bimbofication') > 15>>. But, like... who wouldn't love being machine-fucked for a living?<<elseif setup.getTotalValue('bimbofication') > 10>>... why does the thought of being machine-fucked for a living turn me on?<<else>>.<</if>>">><br>
<br>
A total of
<<if $player.body_ref.vagina && $player.virgin.vaginal>>
seven
<<else>>
six
<</if>>
brand-new sex-bots emerge into the testing area<<if $player.body_ref.vagina && $player.virgin.vaginal>> <<=setup.getNpcName("npc_pokergirl","formal")>> glances your way with just a hint of jealousy as you get three bots to two for each of your companions<</if>>.<br>
<br>
With the expected machine efficiency, the bots divide and conquer, and soon you and your friends are each bent over<<if $scene.removeCage>>, your chastity released to allow<<else>>with<</if>> startlingly life-like silicone cocks to smoothly occupy every hole...<br>
<br>
<<if $player.body_ref.vagina && !$player.virgin.vaginal>>
Well, almost every hole, your ass and mouth are stuffed, but your cunt remains <<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>locked and <</if>>untouched by<<if $options.fem_all_women>> "woman" <<else>> "man" <</if>>... or machine-<<if $options.fem_all_women>> "woman" <<else>> "man" <</if>>, in this case. Per her agreement, <<=setup.getNpcName("npc_pokergirl","formal")>> is also less than air-tight, with her cunt remaining chastity-restricted and locked<<if _TODOknow9001>>... though given she's wearing a 9001-series device, you suspect she's stuffed, just not with robot cock<</if>>.
<<else>>
Well... all holes save <<=setup.getNpcName("npc_pokergirl","formal")>> chastity-restricted locked cunt leaving her less than airtight<<if _TODOknow9001>>... though given she's wearing a 9001-series device, you suspect she's stuffed, just not with robot cock<</if>>.
<</if>>
<br><br>
You moan around the moderately-sized member probing your throat as your robots make a few minor positional adjustments, and begin to thrust nearly in unison.<br>
<br>
[<<moveTo "event_pr_sissy_robotics_6_test_2" "The orgy begins..." 300>>]
</div>/*#
#desc: pr_sissy robotics test fuck
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'very' $EXPOSED>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $EXPOSED>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<</if>>
<div id="invframe" class="scrolltext">
Though they start fucking in almost eerie synchronicity, your bots soon diverge in approach, not just fucking you in
<<if $player.body_ref.vagina>>
<<if $player.virgin.vaginal>>
all three
<<else>>
two
<</if>>
<<else>>
both
<</if>>
holes, but groping and stroking you as well, one bot even leaning in to suck on your nipples without breaking stride at fucking.<br>
<br>
<<printThought "This isn't bad... but nothing like what I saw the previous tester going though...">><br>
<br>
As if responding to your thought, things suddenly shift, the previous measured, almost predictable moves transitioning to a more chaotic, and MUCH more pleasurable overwhelming of sensation.<br>
<br>
<<printThought "Oh fuck... that must have been some sort of calibration... and now they're going at it for real...">><br>
<br>
You may only be "testing" <<if $player.body_ref.vagina && $player.virgin.vaginal>>three<<else>>two<</if>> sex robots... but it feels like way more. Not only do they seem to get better at predicting your needs, and maximising your pleasure, from one moment to the next, they also occasionally "mix things up" — first by switching positions, and then by deploying alternate genitals, having you go from sucking robo-cock to licking robo-cunt in moments... as well as "upgrading" form the slightly above-average cocks that had been fucking you initially to proper hole-stretching girth.<br>
<br>
You manage to glance around at your partners-in-test just as <<=setup.getNpcName("npc_pr_sissy","first")>> bucks in orgasm. <<=setup.getNpcName("npc_pokergirl","formal")>>, on the other hand, seems to be teetering on the edge, eyes rolled back, but without the tell-tale signs of pleasure realised... even as her two partners are giving it to her so hard and fast they're almost a blur.<br>
<br>
Kicking things up another level the massive <<if $player.body_ref.vagina && $player.virgin.vaginal>>cocks fucking you below begin<<else>>cock thrusting in your ass begins<</if>> vibrating...<br>
<br>
[<<moveTo "event_pr_sissy_robotics_6_test_3" "Fuuuuuck..." 600>>]
</div>/*#
#desc: pr_sissy robotics test finish
#status: RELEASED 0.9.4.0
#ignore_spell: pii
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokergirl") setup.charImageGeneric("npc_pokercheater")>>
<</if>>
<div id="invframe" class="scrolltext">
Your first orgasm only seems to encourage the robots to work harder, <<if $player.body_ref.vagina && $player.virgin.vaginal>>three<<else>>two<</if>> fully-equipped artificial intelligences fucking your brains out, working with inhuman coordination as they keep the pleasure pedal not just on the floor... but mashed through it.<br>
<br>
You cum, and cum... and begin to understand the expression on the prior tester's face as she staggered off... the <<if $player.body_ref.vagina && $player.virgin.vaginal>>three<<else>>two<</if>> robots are indefatigable and unrelenting, fucking and groping and kissing... and then suddenly stopping.<br>
<br>
<<printThought "What?">><br>
<br>
You're confused as the <<if $player.body_ref.vagina && $player.virgin.vaginal>>three<<else>>two<</if>> robots stand at attention next to you, only to see the same happen to <<=setup.getNpcName("npc_pr_sissy","first")>>, though <<=setup.getNpcName("npc_pokergirl","formal")>> is still being pounded in the ass and unrelentingly face-fucked.<br>
<br>
<<=setup.getNpcName("npc_pokercheater","formal")>> appears to explain as <<he npc_pokercheater>> makes a few notes on <<his npc_pokercheater>> tablet and directs the <<if $player.body_ref.vagina && $player.virgin.vaginal>>five<<else>>four<</if>> idle robots on to the cleaning and shipping station.<br>
<br>
"@@.npc_pokercheater;For testing purposes the standard is at least ten orgasms to give the systems time to fully run through capabilities, and confirm that they are able to adapt to a given user. I let the two of you have an even dozen each. Now, unfortunately... or fortunately, depending on your perspective, <<=setup.getNpcName("npc_pokergirl","formal")>> is under denial protocols so while you two have been cumming your brains out... she's been stuck on the edge. I'll give her an hour or two and then end the test manually.@@"<br>
<br>
You glance over at <<=setup.getNpcName("npc_pokergirl","formal")>>, still getting it hard and fast from both of her bots... from the look on her face she is somewhere off in sub-space, moaning, drooling and dripping as her body somehow wages a holding action against the pleasure-algorithms of the two robots.<br>
<br>
"@@.npc_pokercheater;I hope you enjoyed your experience, testing this latest run has been particularly interesting, as we've deployed a new software update. Units that are sharing a partner will share data to optimise things, the system scaling has been tested up to five on one scenarios, and user profiles can be copied between units to optimise user experience across multiple owned units. Of course, in test, the data is wiped, otherwise we would have a potential PII leak.@@" <<=setup.getNpcName("npc_pokercheater","formal")>> grins as <<he npc_pokercheater>> glances over at <<=setup.getNpcName("npc_pokergirl","formal")>>. "@@.npc_pokercheater;I suppose it's obvious what pleasure profile <<=setup.getNpcName("npc_pokergirl","formal")>> has... to be treated like a piece of meat and get fucked without mercy... some may call it strange, but she says it keeps her sharp, and it certainly has benefits for departmental cohesion, not just as the rest of us see what she's willing and eager to put herself through, but also in her providing a true high-bar for quality of what goes out that door.@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> wobbles slightly and you move in to support her, though she ends up momentarily dropping to a knee. "@@.npc_pr_sissy;Sorry, bit of an after-shock there, after getting fucked so hard, and then hearing about that? Well... I got a little light-headed. I'm feeling good now... though... I could do a rest back at my desk...@@"<br>
<br>
[<<moveTo "event_pr_sissy_robotics_7" 'Help your friend back to her feet.' 300>>]
</div>/*#
#desc: pr_sissy robotics test finish
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = "Robotics Department">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_pr_sissy.stage >= 4>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("npc_pokercheater")>>
<<else>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_2") setup.charImageGeneric("npc_pokercheater")>>
<</if>>
<div id="invframe" class="scrolltext">
As <<=setup.getNpcName("npc_pokergirl","formal")>> continues getting fucked by her pair of bots you help <<=setup.getNpcName("npc_pr_sissy","first")>> out of the test area.<br>
<br>
"@@.npc_pr_sissy;Give my regards to the department... I am definitely saving up my credits for one of those... or two, maybe...@@" she muses with a smile.<br>
<br>
"@@.npc_pokercheater;I should credit some of our friends who came over from Nintendolls, they've really taken the AI subroutines to the next level, really taking full advantage of the hardware including some novel emergent patterns that we had not predicted.@@"<br>
<br>
"@@.npc_pr_sissy;So that explains when it did that thing in my ass?@@" <<=ps(setup.getNpcName("npc_pr_sissy","first"))>> eyelids flutter in recollection. "@@.npc_pr_sissy;Fuck, I think that's why I'm having trouble walking... but it was soooo good.@@"<br>
<br>
You chuckle as <<=setup.getNpcName("npc_pokercheater","formal")>> nods. "@@.npc_pokercheater;Yes, well... <<=setup.getNpcName("npc_pokergirl","formal")>> is going to be busy for the next couple of hours... and I have too much to do to manage guests... if there is nothing else, well... this is a working lab, not a tour-route.@@"<br>
<br>
"@@.npc_pr_sissy;Of course!@@" <<=setup.getNpcName("npc_pr_sissy","first")>> replies, her sense of professionalism giving her a proverbial second wind as she stands up and curtsys in thanks.<br>
<br>
You and <<=setup.getNpcName("npc_pr_sissy","first")>> quickly reverse your steps out of the lab and back to the elevator, an even wider smile than normal remaining on <<=ps(setup.getNpcName("npc_pr_sissy","first"))>> face the whole time.<br>
<br>
<<if $scene.test>>
"@@.npc_pr_sissy;Thanks for tagging along... I hope you has as much fun as I did. Seriously though, I don't care what they cost I NEED one of those 'bots in my life.@@"<br>
<br>
You smile back and agree that the experience was both
<<else>>
"@@.npc_pr_sissy;Thanks for tagging along... I hope you at least enjoyed the show, since you didn't want to join in... seriously though, I don't care what they cost I NEED one of those 'bots in my life.@@"<br>
<br>
You assure her that you found the experience
<</if>>
entertaining, and educational.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> grins. "@@.npc_pr_sissy;Mmm... I may quote you on that for the press release... we'll see what the folks in marketing say. Anyway, I'll catch you later!@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> gets off on her floor and starts dashing away, only to turn around and blow you a kiss before continuing her excited sprint up the hall.<br>
<br>
[<<moveTo $scene.workEventReturn "Ride back down to your desk and get to work." 180 "<<completeWorkEvent>>">>]
</div>/*#
#desc: pr_sissy shows off breasts
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = 'Company Canteen'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
You're standing in line when you catch sight of your friend <<=setup.getNpcName("npc_pr_sissy","first")>> — and her two "new friends" — namely, her new, large breasts.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> notices your attention and walks over sporting a wide grin. "@@.npc_pr_sissy;Hiya! Whaddaya think?@@" She places a hand under each breast and juggles them back and forth. "@@.npc_pr_sissy;I've been pondering it for a while and finally decided what the heck — bigger is best, right? And, well... I gotta say, I am loving the "relations" it's been enabling, public and private!@@" She laughs at her forced joke and then glances towards the exit.<br>
<br>
"@@.npc_pr_sissy;Say... one thing I've noticed about these new puppies is that they are, like SUPER sensitive... I don't suppose you'd like to find an empty conference room for a few so can test them out?@@"<br>
<br>
<<if !$scene.foodDelivery.done>>
<<if setup.checkItemTagCarried("lunch")>>
<<printThought 'Hmm, I already have <<=ps(setup.getNpcName("npc_manager","formal"))>> order... I should be fine having a little fun before I deliver it.'>>
<<else>>
The line is pretty short, you should be able to enjoy a little fun and still fetch <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch promptly enough...
<</if>>
<br><br>
<</if>>
[<<moveTo "event_pr_sissy_breasts_intro_2" "Boobies!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_pr_sissy_breasts_intro_2" "Pass on her offer." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: pr_sissy play with breasts
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'coworker_pr_sissy'>>
<<set $npc_pr_sissy.stage = 4>>
<<registerProgressionEvent>>
<<include "checkSchoolReady">>
<<if $player.work.secretaryRank >= 3 && $player.flags.special_skills.anal_training && !$workEvents.hasOwnProperty('pr_sissy_campaign_bend') && $npc_pr_sissy.stage < 5>>
<<addWorkEvent 'pr_sissy_campaign_bend'>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location = 'Conference Room of Social Interaction Service Syndicate Inc.'>>
<<else>>
<<set $player.location = 'Company Canteen'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3_topless")>>
<<else>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod in agreement and <<=setup.getNpcName('npc_pr_sissy', 'first')>> grins enthusiastically, leading you out of the canteen and up the hallway to find an unreserved conference room.<br>
<br>
Barely has the door closed when <<=setup.getNpcName('npc_pr_sissy', 'first')>> drops her top, her perfectly formed breasts and large nipples even more impressive outside of clothes, perky and round and calling out to be licked and squeezed.<br>
<br>
"@@.npc_pr_sissy;Well? What are you waiting for! These aren't going to suck themselves!@@"<br>
<br>
You waste no further time as you wrap your lips around one nipple and <<=setup.getNpcName('npc_pr_sissy', 'first')>> moans with excitement. "@@.npc_pr_sissy;Oh that feels so good... Don't worry about being gentle...@@"<br>
<br>
[<<moveTo "event_pr_sissy_breasts_intro_3" "Just tease her nipples." 180 "<<set $scene.gentle=true>>">>]<br>
[<<moveTo "event_pr_sissy_breasts_intro_3" "Really go to town." 180 "<<set $scene.gentle=false>>">>]
<<else>>
You decline <<=ps(setup.getNpcName("npc_pr_sissy","first"))>> offer and she shrugs. "@@.npc_pr_sissy;Alright, well, can't blame a girl for trying!@@" She jiggles her boobs and gives you a wink. "@@.npc_pr_sissy;Well, I'll see you around!@@"<br>
<br>
She bounces off through the canteen, leaving you standing alone.<br>
<br>
<<include "buyFoodOptions">>
<</if>>
</div>/*#
#desc: pr_sissy play with breasts end
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_pr_sissy.flags.breast.debut = true>>
<<if $scene.gentle>>
<<applyExperience 'dominance' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'dominance' 8 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location = 'Conference Room of Social Interaction Service Syndicate Inc.'>>
<<else>>
<<set $player.location = 'Company Canteen'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3_topless")>>
<<else>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.gentle>>
With a mischievous grin you continue your prior pace, gently licking and teasing each breast alternating. <<=setup.getNpcName('npc_pr_sissy', 'first')>> struggles to contain herself, meeping and moaning as she thrusts her breasts forward as if hoping you'll go harder.<br>
<br>
You stay ahead of her wordless pleas, savouring the feel of the perfect breast-flesh, licking and teasing her into a proper frenzy.<br>
<br>
As much as you're trying to just tease, <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> sensitivity surprises even yourself, as she cries out, hands gripping you by the
<<else>>
<<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> fingers run through your hair as she pulls you closer and she bites her lip and you get to work, nibbling her hard, pert nipple while your lips press against the smooth flesh. You start to switch off tit to tit, using your hands to keep the other one entertained, the feel of the firm, yet slightly yielding flesh and the rock-hard nipple between your fingers a true delight.<br>
<br>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> cries out, her grip tightening on your
<</if>>
hair as she presses you into her breasts, her body shuddering and breasts jiggling as she has an orgasm entirely from breast stimulation!<br>
<br>
Her grip loosens as she catchs her breath.<br>
<br>
"@@.npc_pr_sissy;See? I told you they were sensitive!@@"<br>
<br>
She begins pulling her top back on. "@@.npc_pr_sissy;Well, I need to get back to work, but I should be able to focus a bit better now that you've taken the edge off!@@"<br>
<br>
She shuffles her breasts back into place and flashes you a smile before dashing out of the conference room.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 60>>]<br>
[<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]<br>
<<if -1 != setup.findThemeId('npc_psychiatrist', 'npc_cook', 'theme_psychiatrist_cook_3')>>
<<if $scene.npc_cookvisit>>
[@@.link_locked;You have already visited <<=setup.getNpcName("npc_cook","first")>> today.@@]<br>
<<elseif !$scene.foodDelivery.done>>
[@@.link_locked;I should get <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch before I try to do anything with <<=setup.getNpcName("npc_cook","first")>> today.@@]<br>
<<else>>
[<<moveTo "event_cook_training_root" 'Drop in on <<=setup.getNpcName("npc_cook","first")>>.' 180>>]<br>
<</if>>
<</if>>
<<include workLunchbathroom>>
</div>/*#
#desc: pr_sissy meets you in elevator with new breasts
#status: RELEASED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
You've ridden the elevator partway down to the lobby when it comes to a stop and the doors open on a familiar face.<br>
<br>
"@@.npc_pr_sissy;<<=$player.first_name>>! Great to see you!@@"<br>
<br>
Bouncy and boisterous <<=setup.getNpcName('npc_pr_sissy', 'first')>> goes in for a hug, her large breasts squeezing up against your own for several lovely moments until the elevator doors close and she steps back... if anything they are even larger than when you last saw them!<br>
<br>
"@@.npc_pr_sissy;So it turns out that there was a bit of "settling in" post-surgery, but now my breasts are big, beautiful, and ready for anything!@@" She announces with a grin as she shows off her breasts with both hands.<br>
<br>
<<if $player.body.breastsize[0] > 0>>
You nod in compliment as she smiles even wider. "@@.npc_pr_sissy;Yup, and I gotta say, upgrading from falsies has been SUCH a game changer! And, you know... I have you to thank for it!@@" You raise your eyebrow as she continues "@@.npc_pr_sissy;Yup, seeing how good you looked with those big things I decided that it was time to pull the trigger and get the real thing and... oh Goddess, why didn't I do this earlier, I mean feel these things!@@"
<<else>>
You nod in compliment as she smiles even wider. "@@.npc_pr_sissy;Yup, and I gotta say, upgrading from falsies has been SUCH a game changer!... Not that you don't look super cute with your flat chest!@@" She quickly adds.
<</if>>
<br><br>
Before you can react she's pulled you back in, her slight height advantage meaning that your face arcs perfectly to press between her pillowy <<getWordBreasts>>.<br>
<br>
[<<moveTo "event_pr_sissy_breasts_2" "Continue." 60>>]
</div>/*#
#desc: pr_sissy meets you in elevator with new breasts
#status: RELEASED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 20>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
Your heart beats faster as you enjoy being pressed against <<=setup.getNpcName('npc_pr_sissy', 'first')>> full, wonderful bosom.<br>
<br>
"@@.npc_pr_sissy;So,@@" she continues, swaying slightly as the elevator glides downwards.
<<if setup.checkItemTypeWorn("nipple_piercings")>>
"@@.npc_pr_sissy;Now that I have these lovelies, well... I was thinking of following your sexy example<<if $player.body.breastsize[0] > 0>> once again<</if>> and getting a nice set of piercings... you wanna come with?@@"
<<else>>
"@@.npc_pr_sissy;Now that I have these lovelies, well... I was thinking what could make them even better but a nice set of nipple piercings... you wanna come with?@@"
<</if>>
<br><br>
[<<moveTo "event_pr_sissy_breasts_3" "Sure!" 600 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_pr_sissy_breasts_3" "Wish her luck, you'd rather not." 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: decide to join pr_sissy for piercings
#status: RELEASED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You grin and reply that you'd love to join her for a trip to the piercing parlour.<br>
<br>
"@@.npc_pr_sissy;Alright! I knew you'd be down! Come on, I made an appointment and I cannot wait to get my new jugs properly accessorised!@@"<br>
<br>
The elevator door opens and the two of you parade across the lobby, your dual bombshell figures attracting a cab in moments to zip across town.<br>
<br>
[<<moveTo "event_pr_sissy_breasts_4" "Continue." 600>>]<br>
<<else>>
You wish her luck before telling her that you do not want to get piercings right now.<br>
<br>
"@@.npc_pr_sissy;Nuts, well, have a good evening anyway, I'll catch you later!@@"<br>
<br>
The elevator door opens and <<=setup.getNpcName('npc_pr_sissy', 'first')>> parades across the lobby, hips swinging and new breasts bouncing for all to see.<br>
<br>
You watch her duck into a cab and speed off as you consider what you want to do.<br>
<br>
[<<moveTo "company_lobby" "Continue." 600>>]
<</if>>
</div>/*#
#desc: decide to join pr_sissy for piercings
#status: RELEASED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor.png" setup.charImage("npc_tattoo") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_pr_sissy', 'first')>> is too excited to get up to any mischief during the short taxi ride and the two of you arrive at <<if $npc_tattoo.profile>>the<<else>>a<</if>> Tattoo Parlour in the Student Quarter.<br>
<br>
<<if $npc_tattoo.profile>>
The proprietor greets you with a nod before <<=setup.getNpcName('npc_pr_sissy', 'first')>> takes centre stage.
<<else>>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> fills the room with her presence.
<</if>>
"@@.npc_pr_sissy;I'm here for my appointment, and I brought a friend!@@"<br>
<br>
The tattoo artist nods
<<if setup.getItemFromType("nipple_piercing") != "">>
"@@.npc_tattoo;For emotional support, I presume?@@" She nods at your already pierced nipples, subtly visible through your top.
<</if>>
"@@.npc_tattoo;Well come on into the back, I wouldn't want to leave such an enthusiastic customer waiting!@@"<br>
<br>
<<if $player.piercings.nipples>>
<<if setup.getItemFromType("nipple_piercing") == "">>
You may not be wearing anything in them now, but you're already pierced, so you just take a seat next to <<=setup.getNpcName('npc_pr_sissy', 'first')>> for "emotional support" ... not that she appears to need such.
<<else>>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> keeps glancing lustily at your piercings as you take a seat next to <<=setup.getNpcName('npc_pr_sissy', 'first')>> for "emotional support" ... not that she appears to need such.
<</if>>
<<else>>
You and <<=setup.getNpcName('npc_pr_sissy', 'first')>> soon find yourself in side-by-side chairs as the artist prepares her needles.
<</if>>
<br><br>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> winks at you in encouragement as she removes her top, clearly not put off in the slightest at the prospect of pain to come.<br>
<br>
<<if !$player.piercings.nipples>>
[<<moveTo "event_pr_sissy_breasts_5" "Continue." 600 "<<set $scene.pierce=true>>">>]<br>
[<<moveTo "event_pr_sissy_breasts_5" "Actually... you don't want piercings today." 600 "<<set $scene.pierce=false>>">>]
<<else>>
[<<moveTo "event_pr_sissy_breasts_5" "Continue." 600 "<<set $scene.pierce=false>>">>]
<</if>>
</div>/*#
#desc: pr_sissy gets nipple piercings
#status: RELEASED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_pr_sissy.flags.breast.piercing = true>>
<<if $scene.pierce>>
<<set $player.piercings.nipples = true>>
<<applyExperience 'bdsm' 13 'terrible' $SEEN_FRIEND>>
<<set $shopStatus['tattoo_parlor'].unlocked_inventory.pushUnique('nipple')>>
<</if>>
<<if $scene.pierce>>
<<addItem 'nipple_shields'>>
<<if setup.checkItemTypeWorn("nipple_piercings") != "">>
<<set _nipple = setup.getItemFromType("nipple_piercings")>>
<<removeItem _nipple true>>
<</if>>
<<wearItem 'nipple_shields' true>>
<<include "calcTopId">>
<<removeItem $scene.topId true>>
<<set $scene.braId = setup.getItemFromType("bra")>>
<<if $scene.braId>>
<<removeItem $scene.braId true>>
<</if>>
<<else>>
<<set $scene.topId = "">>
<</if>>
<<set $shopStatus['tattoo_parlor'].unlocked_inventory.pushUnique('nipple_shield')>>
<</if>>
<<set $player.location to "Tattoo Parlour">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/tattoo_parlor_back.png" setup.charImage("npc_tattoo") setup.charImage("npc_pr_sissy","npc_pr_sissy_3_topless")>>
<div id="invframe" class="scrolltext">
You sit next to <<=setup.getNpcName('npc_pr_sissy', 'first')>> as the tattoo artist finishes prepping things, <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> nipples already sticking out hard in anticipation.<br>
<br>
"@@.npc_tattoo;You weren't kidding when you scheduled this on the phone. These lovely things were MEANT to be pierced,@@" the Tattoo artist states as she brings the needle to the first nip. "@@.npc_tattoo;Yup, these are going to look, and feel just wonderful... just a bit of a poke...@@"<br>
<br>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> gasps as the needle goes in, but her excited smile becomes only a partial grimace as she takes a deep breath and nods for the artist to move to the other side.<br>
<br>
Going as smooth as the first time the artist rubs in some salve, explaining that it will greatly accelerate the healing process.
<<if $scene.pierce>>
"@@.npc_tattoo;Now, for those second pair of lovelies,@@" She states as she turns to your breasts and readies a fresh needle.<br>
<br>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> grins on in encouragement, her exposed breasts swaying slightly as the piercing process is repeated for you — two quick stabs later and you're letting out a slow breath in response to the cool, soothing feel of the salve.<br>
<br>
"@@.npc_tattoo;And now for the purpose of this whole thing,@@" the artist explains as she puts the needles away and opens a box to present a pair of gorgeous — and intense-looking nipple shields.<br>
<br>
"@@.npc_pr_sissy;Oh, wow, they look even better in person!@@" <<=setup.getNpcName('npc_pr_sissy', 'first')>> states with obvious glee as she presents her breasts.<br>
<br>
"@@.npc_tattoo;And best when they're in place!@@" The Tattoo artist adds and she slides one adornment, then the other into the freshly pierced nipples.
<<else>>
<<if $player.piercings.nipple>>
You watch on with a twinge of jealousy only for the tattoo artist to pull out another, matching box and present you with a pair of fancy nipple shields identical to <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>>.<br>
<br>
"@@.npc_pr_sissy;For coming with me today, I insist!@@" <<=setup.getNpcName('npc_pr_sissy', 'first')>> explains, taking a brief moment away from admiring her new jewellery to watch you try out the new piercings. "@@.npc_pr_sissy;Oh yeah, those are so hot!@@" She states with a nod. You can only agree, the new adornments looking quite striking.
<<else>>
You feel a twinge of jealousy as the tattoo artist winks at you. "@@.npc_tattoo;I got another appointment I need to prep for, but if you ever change your mind, we're here and ready to do whatever work you need!@@"
<</if>>
<</if>>
<br><br>
<<if $player.piercings.nipple>>
You watch on with a twinge of jealousy but <<=setup.getNpcName('npc_pr_sissy', 'first')>> looks over with a smile. "@@.npc_pr_sissy;Don't think I forgot about you!@@" She states as the artist pulls out a matching pair of shields and installs them onto your breasts. "@@.npc_pr_sissy;Goddess, those look so fucking hot, I'm so glad you decided to join me today!@@"<br>
<br>
You nod, looking back and forth between her breasts and your own shiny tits, the tattoo artist looking on in amusement as the pair of you do a bit of experimentation with your new jewellery.<br>
<br>
"@@.npc_tattoo;So the salve is the latest medical gel — it'll have you fully healed in less than an hour: which is why I had to get those piercings in fast, lest things close back up! After that, well... have fun, you two, and feel free to come back if you decide you want to mix up the jewellery, or get any other work done.@@"<br>
<br>
You thank the artist for her work and <<=setup.getNpcName('npc_pr_sissy', 'first')>> pays, insisting that she cover the whole thing and for you to just "enjoy" your present. You grin back and promise that you will, the two of you lingering for a few more minutes to admire things before, somewhat reluctantly, getting dressed to leave.
<<else>>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> finally tears her attention away from her new piercings to take care of payment and, somewhat reluctantly, put her top back on.
<</if>>
<br><br>
"@@.npc_pr_sissy;Well, as fun as that was, I think I'm gonna head home for some "me" time to play with my new tits... then maybe hit the club to show off! I'll catch you later.@@"<br>
<br>
You and <<=setup.getNpcName('npc_pr_sissy', 'first')>> share another hug and then she's hailing another cab and speeding off, leaving you standing in front of the tattoo parlour.<br>
<br>
[<<moveTo "room_student_quarter" "Look around the Student Quarter." 300 "<<if $scene.braId>><<wearItem $scene.braId true>><</if>><<if $scene.topId>><<wearItem $scene.topId true>><</if>>">>]
</div>/*#
#desc: npc_manager informs you of pr_sissy campaign
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> summons you into her inner office just before your friend <<=setup.getNpcName('npc_pr_sissy', 'first')>> and <<=setup.getNpcName('npc_development', 'formal')>> arrive for a scheduled meeting.<br>
<br>
You wait obediently for one of the other women to have need of you as they exchange some perfunctory greetings and <<=setup.getNpcName('npc_manager', 'formal')>> explains the situation.<br>
<br>
"@@.npc_manager;As you are aware, the company takes great pride in its employee educational programs, particularly when it comes to our valued <<if $fetish.sissy>>SISSI <</if>>Secretaries, in fact it is reaching a point where our capacity to train <<if $fetish.sissy>>SISSI <</if>>Secretaries is outstripping the number of positions we have available, particularly in the case of the most elite, Executive-level <<if $fetish.sissy>>SISSI <</if>>Secretaries — such as yourself.@@"<br>
<br>
You beam with pride at the reminder of your title, the smile that <<=setup.getNpcName('npc_manager', 'formal')>> graces you with filling you with joy that you could be such a loyal example of excellence for her.<br>
<br>
"@@.npc_manager;So as not to leave <<=setup.getNpcName('npc_development', 'formal')>> with nothing to do — or put her work to waste — the Company is beginning a new initiative that will involve contracting out experienced <<if $fetish.sissy>>SISSI <</if>>Secretaries to other companies in the marketplace. <<=setup.getNpcName('npc_pr_sissy', 'first')>>, whom I believe you are well acquainted with, is spearheading an initiative to make sure that the market as a whole is better informed as to just what sort of vital services they can only be assured of receiving through contracting a <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate Inc.<</if>> Trained Secretary.@@"<br>
<br>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> looks almost giddy with excitement as <<=setup.getNpcName('npc_manager', 'formal')>> finishes up; waiting an extra few moments to make sure neither of the two more senior women have anything else to add before speaking. "@@.npc_pr_sissy;Of course the Marketing Department will be doing most of the work for the next phase of this new initiative, but I am blessed with the opportunity to lend my skills to help shape the message we are going to be putting out.@@" She turns to you with a smile. "@@.npc_pr_sissy;My own delightful experience aside, <<=setup.getNpcName('npc_development', 'formal')>> had nothing but wonderful things to say about your continuing education so it was an easy decision that you would be just perfect to help with this preliminary product demo. Don't think of it as an advertisement so much as an industry bulletin, to help show just what they're missing compared to what our <<if $fetish.sissy>>SISSI <</if>>Secretaries can bring to the table.@@"<br>
<br>
"@@.npc_manager;With that all out of the way I will leave the three of you to it! Remember, Miss <<=$player.last_name>> — even more than usual you are acting in a representative position, I expect you to be on your best behaviour to help this new initiative go off without a hitch.@@"<br>
<br>
"@@.npc_development;Oh, I believe that if there is anything we can count on, it will be this lovely thing exceeding even the highest of expectations.@@"<br>
<br>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> falls in behind <<=setup.getNpcName('npc_development', 'formal')>> as they leave the office.<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_2" "Follow." 180>>]
</div>/*#
#desc: pr_sissy explains campaign plan
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Empty Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
You leave <<=setup.getNpcName('npc_manager', 'formal')>> office and head down a couple floors to a similar, but seemingly empty office.<br>
<br>
"@@.npc_pr_sissy;Okay—@@" <<=setup.getNpcName('npc_pr_sissy', 'first')>> starts, "@@.npc_pr_sissy;The key to breaking into a new market is to differentiate your product from what already exists. So we're going to do a bit of a comparison, showing how a "normal" secretary might handle a particularly stressful office situation, then follow it up with you demonstrating how much better a fully trained <<if $fetish.sissy>>SISSI <</if>>Secretary would address the same situation.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> motions for you to stand to one side as you notice that some cameras have been setup in the room. She takes a seat behind the desk and pretends to work while <<=setup.getNpcName('npc_pr_sissy', 'first')>> moves out of the frame.<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_3" 'Watch the "before" simulation.' 300>>]
</div>/*#
#desc: pr_sissy campaign - the wrong way
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Empty Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_development', 'formal')>> snorts in annoyance and presses her intercom button. "@@.npc_development;<<=setup.getNpcName('npc_pr_sissy', 'formal')>>? Do you have that print-out yet?@@"<br>
<br>
Several moments pass as you can literally hear the sound of a printer over the phone before <<=setup.getNpcName('npc_pr_sissy', 'first')>> pops into the room, a stack of partially misaligned papers in her hand. "@@.npc_pr_sissy;Uh, sorry, I think this is what you wanted? I, like need to go. It's the end of my shift and I've got plans this evening...@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> sighs. "@@.npc_development;Are you sure you can't stay longer? This presentation is very important for the company, we really need all hands on deck for it. I've been in since early this morning and could really use your assistance...@@"<br>
<br>
"@@.npc_pr_sissy;Like, sorry, but I've got tickets booked and everything. And I'll probably be a little late tomorrow — late night and all, anyway, good luck!@@"<br>
<br>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> darts off-screen as <<=setup.getNpcName('npc_development', 'formal')>> lets out an exaggerated sigh.<br>
<br>
<<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> airheaded affectation is momentarily put aside in favour of a strikingly similar, keen-eyed enthusiasm and she turns to you with a smile.<br>
<br>
"@@.npc_pr_sissy;Alright! So you've seen the situation, now it's your turn to show how a trained <<if $fetish.sissy>>SISSI <</if>>Secretary would handle things.@@"<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_4" 'Get ready.' 60>>]
</div>/*#
#desc: pr_sissy campaign - the right way - summoned
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Empty Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You leave the room and wait for the sound of the intercom. "@@.npc_development;<<=setup.getNpcName('npc_pr_sissy', 'formal')>>? Do you have that print-out yet?@@"<br>
<br>
You look next to the door where there is a pile of file folders for you to use as props.<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_5" 'Hurry in to the office, files in hand.' 180 "<<set $scene.deliver=true>>">>]<br>
<<if $scene.deliver_repeat>>
[@@.link_locked;You already tried doing this sloppy.@@]
<<else>>
[<<moveTo "event_pr_sissy_campaign_bend_5" 'Lazily waste time and deliver things haphazardly.' 180 "<<set $scene.deliver=false>>">>]
<</if>>
</div>/*#
#desc: pr_sissy campaign - the right way - stay after
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Empty Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.deliver>>
You grab several file folders and hurry into the office where you immediately present them to <<=setup.getNpcName('npc_development', 'formal')>>.<br>
<br>
"@@.pc;Sorry, <<=setup.getNpcName('npc_development', 'title')>>, there was some additional material I thought would be useful and the printer was slow. Is there any other way I might be of service?@@"<br>
<br>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> flashes you a thumbs up from out of frame as <<=setup.getNpcName('npc_development', 'formal')>> replies. "@@.npc_development;Thank you for that. This project is a real all hands on deck situation, I know your shift ends in a few minutes but do you think you could stick around tonight to help get it over the line?@@"<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_6" "Of course you'll stay, whatever the company needs, you're here to provide!" 180 "<<set $scene.stay=true>>">>]<br>
<<if $scene.stay_repeat>>
[@@.link_locked;You already screwed up by saying you had plans.@@]
<<else>>
[<<moveTo "event_pr_sissy_campaign_bend_6" 'You kind of had plans...' 180 "<<set $scene.stay=false>>">>]
<</if>>
<<else>>
You grab a smattering of papers and head into the office where you drop them on <<=ps(setup.getNpcName('npc_development', 'formal'))>> desk. "@@.pc;Like, here you go...@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> frowns and <<=setup.getNpcName('npc_pr_sissy', 'first')>> calls out "@@.npc_pr_sissy;Cut!@@"<br>
<br>
"@@.npc_pr_sissy;Sorry, I guess I didn't explain things properly — you're supposed to be showing off how much better a <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate Inc. trained<</if>> Secretary is compared to a normal one. How about you head out and try again?@@"<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_4" 'Reset.' 180 "<<set $scene.deliver_repeat=true>>">>]
<</if>>
</div>/*#
#desc: pr_sissy campaign - the right way - sex offer
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Empty Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.stay>>
You put on a cheery smile and walk around the desk to stand next to your boss as you reply that you will "@@.pc;Of course do ANYTHING to help.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> smiles back as her hand runs up your thigh. "@@.npc_development;Anything? Because I think I'd be able to work a bit better if I could get some relief...@@"<br>
<br>
<<if $scene.bend_repeat>>
[@@.link_locked;You already screwed up by acting the prude.@@]<br>
<<else>>
[<<moveTo "event_pr_sissy_campaign_bend_7" "You're not that sort of girl!" 180 "<<set $scene.bend='no'>>">>]<br>
<</if>>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_pr_sissy_campaign_bend_7" 'Bend over and suggest your boss unlock your <<getWordVagina>> for use.' 180 "<<set $scene.bend='vag'>>">>]<br>
<<else>>
[<<moveTo "event_pr_sissy_campaign_bend_7" 'Bend over and suggest your boss make use of your <<getWordVagina>> for use.' 180 "<<set $scene.bend='vag'>>">>]<br>
<</if>>
<<if setup.getTotalValue("dexterity") > 15>>
[<<moveTo "event_pr_sissy_campaign_bend_7" 'Show off your flexibility and bend over backwards...' 180 "<<set $scene.bend='vag_back'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_pr_sissy_campaign_bend_7" 'Bend over for your boss and put your ass on the line.' 180 "<<set $scene.bend='regular'>>">>]<br>
<<if setup.getTotalValue("dexterity") > 15>>
[<<moveTo "event_pr_sissy_campaign_bend_7" 'Show off your flexibility and bend over (ass-)backwards...' 180 "<<set $scene.bend='backwards'>>">>]
<</if>>
<<else>>
You explain that, like, you'd love to stay, but you have tickets for a show and you need to head out...<br>
<br>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> sighs in exasperation. "@@.npc_pr_sissy;Come on, <<=$player.first_name>>! We're trying to show off the best of our company, I already did the fail-secretary video, you need to show off how much better our employees are!@@"<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_5" 'Reset.' 180 "<<set $scene.stay_repeat=true>>">>]
<</if>>
</div>/*#
#desc: pr_sissy campaign - the right way - sex
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bend != "no">>
<<if $scene.bend == "regular" || $scene.bend == "backwards">>
<<applyExperience 'anal' $npc_development.penis_size 'normal' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'bimbofication' 16 'very' $SEEN_FRIEND>>
<<set $scene.removeCage = ($scene.bend == "vag" || $scene.bend == "vag_bag") && setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Empty Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<switch $scene.bend>>
<<case "vag" "regular">>
You smile back at your boss before gently clearing space on her desk and then bending over in invitation. "@@.pc;Please, <<=setup.getNpcName('npc_development', 'title')>> — all of my holes are at your disposal.@@" You state as you <<if $scene.bend == "vag">>spread your legs<<else>>wiggle your bum<</if>> in invitation.<br>
<br>
"@@.npc_development;Now that is a sight! And an offer you don't have to make twice!@@"
<<if $scene.bend == "vag">>
<<=setup.getNpcName('npc_development', 'formal')>>
<<if setup.getChastityLevel() == 5>>
presses a button and the front of your belt retracts to reveal your <<getWordVagina>>... and then
<<elseif setup.checkItemTypeWorn("cage")>>
unlocks your belt to expose your <<getWordVagina>>... and then
<<else>>
wastes no time, a moment later
<</if>>
her <<getWordPenis false>> is plunging into your <<getWordVagina>>.
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Taking advantage of your hollow plug <<=ps(setup.getNpcName('npc_development', 'formal'))>> <<getWordPenis false>> is moments later plunging into your rear.
<<elseif setup.checkItemTypeWorn("plug")>>
<<=setup.getNpcName('npc_development', 'formal')>> removes your plug to clear the way and then slams her <<getWordPenis false>> into your rear.
<<else>>
You gasp as <<=ps(setup.getNpcName('npc_development', 'formal'))>> <<getWordPenis false>> slams into your rear.
<</if>>
<</if>>
<br><br>
Laid out over the desk you're getting it good and hard as you stare across the room to see <<=setup.getNpcName('npc_pr_sissy', 'first')>> looking on with excited approval. With a wide grin she flashes you a double thumbs up.<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_8" 'Beckon <<=setup.getNpcName("npc_pr_sissy", "first")>> over to use you as well...' 180 "<<set $scene.oral=true>>">>]<br>
[<<moveTo "event_pr_sissy_campaign_bend_8" 'Finish the scene.' 180 "<<set $scene.oral=false>>">>]
<<case "vag_back" "backwards">>
You smile back at your boss before acrobatically leaning back until you're in a full gymnast's bridge as you offer up <<if $scene.bend == "vag_back">>your belted pussy<<else>>your <<if setup.checkItemTypeTag('plug', ['hollow'])>>plug-spread <<elseif setup.checkItemTypeWorn("plug")>>plugged <</if>>bum<</if>>.<br>
<br>
"@@.npc_development;Now that is a sight! A hard days work and you're still eagerly flexible for whatever I need.@@"
<<if $scene.bend == "vag_back">>
<<=setup.getNpcName('npc_development', 'formal')>>
<<if setup.getChastityLevel() == 5>>
presses a button and the front of your belt retracts to reveal your <<getWordVagina>>,
<<elseif setup.checkItemTypeWorn("cage")>>
unlocks your belt to expose your <<getWordVagina>>,
<<else>>
runs her fingers between your wet puss-lips for a few moments,
<</if>>
and then her <<getWordPenis false>> is plunging into your <<getWordVagina>>.
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Taking advantage of your hollow plug <<=ps(setup.getNpcName('npc_development', 'formal'))>> <<getWordPenis false>> is moments later plunging into your rear.
<<elseif setup.checkItemTypeWorn("plug")>>
<<=setup.getNpcName('npc_development', 'formal')>> removes your plug to clear the way and then slams her <<getWordPenis false>> into your rear.
<<else>>
You gasp as <<=ps(setup.getNpcName('npc_development', 'formal'))>> <<getWordPenis false>> slams into your rear.
<</if>>
<</if>>
<br><br>
Balancing while being fucked in this position is something of a challenge, but you are a consummate professional, rising up onto your toes to give her the optimal angle as she holds your hips and plows you hard.<br>
<br>
From your upside-down perspective you can see <<=setup.getNpcName('npc_pr_sissy', 'first')>> looking on with excited approval and she flashes you a double thumbs up.<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_8" 'Beckon <<=setup.getNpcName("npc_pr_sissy", "first")>> over to use you as well...' 180 "<<set $scene.oral=true>>">>]<br>
[<<moveTo "event_pr_sissy_campaign_bend_8" 'Finish the scene.' 180 "<<set $scene.oral=false>>">>]
<<case "no">>
You draw yourself up, stating that you are "@@.pc;NOT that type of girl!@@" before mock storming out of the office.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> recovers from shock first,
<<if setup.checkItemTypeTag('plug', ['ems']) && setup.checkItemTypeTag('cage', ['ems'])>>
and you stagger as she administers painful shocks through your plug and via your chastity device.
<<elseif setup.checkItemTypeTag('plug', ['ems'])>>
and you stagger as she administers a painful shock through your plug.
<<elseif setup.checkItemTypeTag('cage', ['ems'])>>
and you stagger as she administers a painful shock via your chastity device.
<</if>>
"@@.npc_development;What on earth has come over you? That is definitely not how you have been taught — now how about you march that hot<<if $fetish.sissy>> sissy<</if>> tush back out and do this CORRECTLY?@@"<br>
<br>
[<<moveTo "event_pr_sissy_campaign_bend_5" 'Reset.' 180 "<<set $scene.bend_repeat=true>>">>]
<<default>>
ERROR: unexpected scene.bend <<=$scene.bend>>
<</switch>>
</div>/*#
#desc: pr_sissy campaign - the right way - fucked and finish
#status: RELEASED 0.8.2.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_pr_sissy.stage = 5>>
<<registerProgressionEvent>>
<<applyExperience 'bimbofication' 18 'very' $SEEN_FRIEND>>
<<playerOrgasm>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Empty Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development") setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.oral>>
You offer your lips and <<=setup.getNpcName('npc_pr_sissy', 'first')>> eagerly darts over, even if the result is you kissing the sleek front of her <<=setup.getItemName('sissyomatic')>> while <<=setup.getNpcName('npc_development', 'formal')>> finishes off in your <<if $scene.bend == "regular" || $scene.bend == "backwards">>ass<<else>><<getWordVagina>><</if>>.<br>
<br>
"@@.npc_pr_sissy;Social Interaction Service Syndicate Inc. <<if $fetish.sissy>>SISSI <</if>>Secretaries, eager to serve in EVERY way!@@"
<<else>>
It doesn't take long for <<=setup.getNpcName('npc_development', 'formal')>> to finish off in your <<if $scene.bend == "regular" || $scene.bend == "backwards">>ass<<else>><<getWordVagina>><</if>>, and she looks to the camera just as she nuts. "@@.npc_development;I'm so glad I chose a Social Interaction Service Syndicate Inc. <<if $fetish.sissy>>SISSI <</if>>Secretary — they really are the best in the business!@@"
<</if>>
<br><br>
You rise to your feet and adjust your clothes as <<=setup.getNpcName('npc_pr_sissy', 'first')>> quickly reviews the footage.<br>
<br>
<<if $scene.deliver_repeat && $scene.stay_repeat && $scene.bend_repeat>>
"@@.npc_pr_sissy;So I guess we can use your failed takes as B-roll — thanks again for the help... I guess, in the end, you really are the best this company has to offer!@@"
<<elseif $scene.deliver_repeat || $scene.stay_repeat || $scene.bend_repeat>>
"@@.npc_pr_sissy;Too bad about those botches, but we got what we needed in the end, thanks for showing off the best this company has to offer!@@"
<<else>>
"@@.npc_pr_sissy;In one take! You really are the best this company has to offer!@@"
<</if>>
<br><br>
You smile and curtsy<<if $scene.removeCage>> as <<=setup.getNpcName('npc_development', 'formal')>> fixes your chastity belt<</if>> and then you're on your way back your desk to resume your "normal" responsibilities.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 180 "<<completeWorkEvent>>">>]
</div>/*#
#desc: run into pr_sissy in stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.cum>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addWorkEvent "pr_sissy_stage5_cum" _nextDate>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Hallway.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
You're walking back from a quick errand when you almost bump into <<=setup.getNpcName("npc_pr_sissy","first")>>, she pauses, blinking once as if taking a moment to recognise you as she removes an earbud from one ear.<br>
<br>
"@@.npc_pr_sissy;Oh, hi, <<=$player.first_name>>! Sorry I was so distracted, I've just been so busy reviewing new corporate messaging. Our Marketing and Advertising department really hit it out of the park with this latest campaign! Listening to it just really motivates me to do more and be a part of our continuing growth!@@" She giggles and jolts slightly in a way that tells you that she just had some sort of chastity-device-provided stimulation. "@@.npc_pr_sissy;Oh, look at me prattling on! Sorry, but I'm just too busy to chat, I'm on my way to help review some new training materials, with all these mergers and new hires onboarding really is front and centre... but I think some of it could be useful for recruitment as well! Why, the way we're going I may be putting myself out of a job! After all, what use is public relations if there's no public because everyone works for us? Ah, now that would be the dream, and I'm sure the company would find another use for me, but only if I keep working hard!@@"<br>
<br>
There's something a bit off about your friend and you just nod, unable to reflect her wide-eyed enthusiasm. She doesn't seem to notice as she puts the earbud back in and hurries off, whistling what you're pretty sure is a corporate jingle...<br>
<br>
<<printThought 'She was always drinking the Kool Aid, but this is getting out of control! I really need to deal with <<=setup.getNpcName("npc_boss","formal")>> once and for all before <<he npc_boss>> enthralls and enslaves the world...'>><br>
<br>
[<<moveTo $scene.workEventReturn "Continue back to your desk." 180 "<<completeWorkEvent>>">>]
</div>/*#
#desc: pr_sissy asks for help in stage 5
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<div id="invframe" class="scrolltext">
You look up from your work to see <<=setup.getNpcName("npc_pr_sissy","first")>> walk into the office where she heads for your desk, rather than inner office.<br>
<br>
"@@.npc_pr_sissy;Hello, friend-coworker. I hope you are having a wonderful day bettering the company! Given our past collaborations I thought you might assist me with another PR film trumpeting our company's core principles?@@"<br>
<br>
You're slightly taken aback by her stilted delivery and the somewhat distant look in her eyes.<br>
<br>
<<printThought "Looks like someone's enthusiasm has fallen victim to some additional corporate brainwashing...">><br>
<br>
You shudder at the thought that someone already so seemingly motivated and loyal could have been pushed further and ask how she's doing?<br>
<br>
"@@.npc_pr_sissy;Wonderful, of course... I've just been putting in so many extra hours, alas, the body sometimes cannot keep pace with the desire to do everything I can for the company! Speaking of doing all we can... can I count on your assistance?@@" She blinks, her smile ever-so-slightly off as she stares at you with excitement.<br>
<br>
[<<moveTo "event_pr_sissy_stage5_cum_swap_2" "Of course!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_pr_sissy_stage5_cum_swap_2" "You don't have time to help." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: pr_sissy stage 5 arrive at manager office
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location = "Social Interaction Service Syndicate Office">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("generic_manager_male")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_pr_sissy","npc_pr_sissy_3")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You accept <<=ps(setup.getNpcName("npc_pr_sissy","first"))>> request and, after a quick check-in with <<=setup.getNpcName("npc_manager","formal")>>, <<=setup.getNpcName("npc_pr_sissy","first")>> is leading you across the floor to the office of a manager you do not recognise.<br>
<br>
"@@.npc_pr_sissy;Rather than artificially acted scenarios, I've been focusing publicity on showing real <<if $fetish.sissy>>SISSI <</if>>Secretaries hard at work, <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Grant"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Grant"))>><</if>> assistant is tied up with training today, so it gives a perfect opportunity for the two of us to relieve their stress.@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> greets <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Grant")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Grant")>><</if>> with a submissive bow... that smoothly transitions to crawling across the floor as <<if $options.fem>><<=ps(setup.getNpcName("generic_male1","custom", "Ms. Grant"))>><<else>><<=ps(setup.getNpcName("generic_male1","custom", "Mr. Grant"))>><</if>> legs spread in invitation, a large bulge in <<his>> pants soon becoming a rigidly erect <<if $options.fem>><<getWordPenis false>><<else>><<getWordPenis true>><</if>> as <<=setup.getNpcName("npc_pr_sissy","first")>> takes things in one hand and beckon you in with the other...<br>
<br>
[<<moveTo "event_pr_sissy_stage5_cum_swap_3" "Hurry to join in." 60>>]
<<else>>
You turn down <<=ps(setup.getNpcName("npc_pr_sissy","first"))>> request and she frowns, but nods in understanding.<br>
<br>
"@@.npc_pr_sissy;Of course. Our primary duties to the company MUST come first. Good day, <<=$player.first_name>>@@"<br>
<br>
She leaves the office.<br>
<br>
[<<moveTo $scene.workEventReturn "Get back to work." 600 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: pr_sissy stage 5 blow
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 16 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Social Interaction Service Syndicate Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You hurry into position kneeling beside <<=setup.getNpcName("npc_pr_sissy","first")>> as the two of you work together to blow <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Grant")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Grant")>><</if>>, <<his>> size plenty meal for the both of you as you kiss and suck, showing off your skills in a slurping competition for cock, jockeying to see who gets to suck the tip or lick the balls, your attentions always focused on the job at hand as you work and work until you have them at the cusp of release...<br>
<br>
[<<moveTo "event_pr_sissy_stage5_cum_swap_4" "Cum time!" 180>>]
</div>/*#
#desc: pr_sissy stage 5 swap cum
#status: RELEASED 0.9.2.0
#ignore_spell: enomics
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 20 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Social Interaction Service Syndicate Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_pr_sissy","first")>> is working the tip when <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Grant")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Grant")>><</if>> cums hard and large, <<=ps(setup.getNpcName("npc_pr_sissy","first"))>> cheeks swelling and her eyes rolling back, even as she resists swallowing.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> is about to start dribbling when <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Grant")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Grant")>><</if>> finishes and pulls away. You don't get to reflect on her apparent selfishness for long when she yanks you in for a cummy kiss, passing the full deliciously salty load through your lips before leaning back with a grin. "@@.npc_pr_sissy;So here we see how a "results-driven" focus can pay off... and how we here at <<if $fetish.sissy>>SISSI<<else>>Social Interaction Service Syndicate, Inc.<</if>> embody the corporate policy of sharing the load!@@"<br>
<br>
You suppress a groan as she shifts position to be just under your chin facing up at you, opening her mouth as she continues "@@.npc_pr_sissy;And now for some trickle-down cum-enomics!@@"<br>
<br>
[<<moveTo "event_pr_sissy_stage5_cum_swap_5" "Snowball back and forth." 180>>]
</div>/*#
#desc: pr_sissy stage 5 swallow cum
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Social Interaction Service Syndicate Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName("npc_pr_sissy","first")>> continue snowballing back and forth until <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Grant")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Grant")>><</if>> clears <<his>> throat and orders you to "@@.generic_male1;Finish up.@@"<br>
<br>
A final cummy kiss spreads <<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Grant")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Grant")>><</if>> load evenly and you and <<=setup.getNpcName("npc_pr_sissy","first")>> swallow in unison. "@@.npc_pr_sissy;Directive-focused!@@" she announces with a grin before the two of you rise to your feet and bow in gratitude. "@@.npc_pr_sissy;...And grateful for opportunities!@@" She concludes.<br>
<br>
<<if $options.fem>><<=setup.getNpcName("generic_male1","custom", "Ms. Grant")>><<else>><<=setup.getNpcName("generic_male1","custom", "Mr. Grant")>><</if>> dismisses you with a wave and you leave <<his>> office, you to return to your desk, and <<=setup.getNpcName("npc_pr_sissy","first")>> to get to editing the footage she has just gathered.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and get back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: meet going home first day, <<he>> is newly hired, "normal"/slight stubble
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'elevator_home' 'coworker_sexdoll'>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['canteen'] 'coworker_sexdoll' _nextDate>>
<<set $npc_sexdoll.stage = 1>>
<<registerProgressionEvent>>
<<if $player.sec_style.body.name != "" && !$npc_sexdoll.flags.reactnamechange>>
<<set $npc_sexdoll.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_sexdoll","npc_sexdoll_0")>>
<div id="invframe" class="scrolltext">
Approaching the elevator at the end of your first day, you see another man standing inside. Spotting your approach he helpfully holds the door as you hurry the final few steps to step in.<br>
<br>
He looks about your age, short hair, average build, wearing the normal collared shirt, tie and slacks combo that makes up the male employee dress code. His expression is a bit meek, his face a little scruffy with 5 o'clock shadow. Noting your somewhat dazed expression, he smiles in an awkward but comforting way. "@@.npc_sexdoll;Tough day?@@"<br>
<br>
You nod, explaining that you just started a new job before your voice starts to trail off.<br>
<br>
"@@.npc_sexdoll;Say no more, say no more. This was my first day, too, in fact. Thought I knew what I was in for — my old man has a similar job, got me the hook-up for management track but... wow, all the stuff I had to go through! I mean a brain scan, would you believe it?@@"<br>
<br>
You're a bit surprised, you haven't had to do anything like THAT but, well, you went from lowly IT monkey to secretary, things are probably different for management. You shrug and mutual shyness takes over the both of you, the remainder of the ride down passing in silence.<br>
<br>
Reaching the ground floor, the elevator dings and starts to open. "@@.npc_sexdoll;Oh, so my name is <<=setup.getNpcName('npc_sexdoll', 'first')>>, <<=setup.getNpcName('npc_sexdoll', 'full')>>. Nice meeting you. I guess... see you around? And good luck with the rest of your week! Just concentrate on it being a fun, new opportunity.@@"<br>
<br>
You wish him luck as well as he remains in the elevator to continue down to the parking garage and you step out to walk home.<br>
<br>
<<printThought "Nice enough guy... seems a bit shy for management though.">><br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: he is wearing unisex attire, no facial hair
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_sexdoll.stage = 2>>
<<removeRandomEvent 'canteen' 'coworker_sexdoll'>>
<<registerProgressionEvent>>
<<include "checkBrainscanEvent">>
<<if $player.sec_style.body.name != "" && !$npc_sexdoll.flags.reactnamechange>>
<<set $npc_sexdoll.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_sexdoll","npc_sexdoll_1")>>
<div id="invframe" class="scrolltext">
Stepping into line, you are surprised to find yourself standing behind <<=setup.getNpcName('npc_sexdoll', 'full')>>. You haven't seen him since your first day as a secretary and you almost don't recognise him! When you ran into him in the elevator he was a bit scruffy looking, dressed in the standard slacks and shirt, but now his face is as smooth and hairless as a baby's bottom, his hair looking quite nice as it extends down past his ears, his clothing a silk shirt and a very fitted pair of trousers that aren't quite male or
<<if $player.sec_style.clothing.female == "enthusiast">>
female; a line you already sprinted right past.
<<elseif $player.sec_style.clothing.female != "">>
female; a line you remember riding so well.
<<elseif $player.sec_style.clothing.unisex != "">>
female; a line you are quite familiar with riding.
<<else>>
female.
<</if>>
<br><br>
You greet him and he turns around with a smile. When he speaks you would swear his voice sounds a bit softer and more gentle than when you met him previously, but that is probably just your imagination.<br>
<br>
<<if $scene.namereact>>
"@@.npc_sexdoll;Hey! <<=$player.original_first_name>>! How have you been? Got over those first-day jitters?@@"<br>
<br>
You nod, quickly correcting him that you go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_sexdoll;Oh, sorry, guess I just remembered wrong, forget my own head sometimes if it wasn't screwed on!@@"<br>
<br>
You laugh along with him, a bit surprised at how he takes your changes in such casual stride, not that it would be anywhere close to the weirdest thing you've witnessed at work.
<<else>>
"@@.npc_sexdoll;Hey! <<=$player.first_name>>! How have you been? Got over those first-day jitters?@@"<br>
<br>
You nod<<if setup.analyzeWornTags(['female','male','unisex']) != "male">><<if $player.sec_style.clothing.female != "enthusiast">> a bit surprised that he completely glosses over your new look<</if>>... not that it comes close to the weirdest thing you've witnessed at this job<</if>>.
<</if>>
<br><br>
Before you can think of anything else to talk about, you're at the front of the line and he bids you farewell and steps up to place his order. A moment later and you are waved forward and he moves along with a parting wave.<br>
<br>
<<include "buyFoodOptions">>
</div>/*#
#desc: fixing her makeup, has shoulder length hair, wearing tight shirt and pants
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_coffee_shop'] 'coworker_sexdoll' _nextDate>>
<<set $npc_sexdoll.stage = 3>>
<<removeRandomEvent 'work_bathroom_female' 'coworker_sexdoll'>>
<<registerProgressionEvent>>
<<set $npc_sexdoll.first_name = $npc_sexdoll.sissy_name>>
<<set $npc_sexdoll.other_call = "Fuckdoll">>
<<set $npc_sexdoll.call = "Miss">>
<<if $player.sec_style.body.name != "" && !$npc_sexdoll.flags.reactnamechange>>
<<set $npc_sexdoll.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'company' 'theme_psychiatrist_company_changing'
0
'theme_psychiatrist_company_changing_1'
false
>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_sexdoll","npc_sexdoll_2")>>
<div id="invframe" class="scrolltext">
Walking into the bathroom, you do a double take at the woman doing her makeup at the sink looking oddly familiar.<br>
<br>
After a few moments, you realise she looks really similar to the junior manager you met back on your first day only now... well, "he" has gone right past the unisex attire you last saw him in to be wearing a skirt and blouse! Her previously short-cropped hair now flows down to her shoulders in beautiful waves.<br>
<br>
"@@.pc;Is that you, <<=setup.getNpcName('npc_sexdoll', $npc_sexdoll.original_first_name)>>?@@" You ask and she turns with a smile, her long hair swishing behind her like something out of a movie.<br>
<br>
<<if $scene.namereact>>
"@@.npc_sexdoll;Oh, hi, <<=$player.original_first_name>>, I actually go by <<=setup.getNpcName('npc_sexdoll', 'first')>> now. How have you been?@@"<br>
<br>
You explain that, actually, you've changed names too, <<=setup.getNpcName('npc_sexdoll', 'first')>> taking it in stride without any further comment.
<<else>>
"@@.npc_sexdoll;Oh, hi, <<=$player.first_name>>, I actually go by <<=setup.getNpcName('npc_sexdoll', 'first')>> now. How have you been?@@"
<</if>>
<br><br>
After congratulating her on her new name, you proceed to the usual "small talk" fashion as you say things have been fine and exchange some other perfunctory compliments. It is a bit hard to believe that the shy dude you met that first day in the elevator could have transformed into this bubbly, sexy woman but, well... it's not like the old you would recognise yourself these days either.<br>
<br>
After a minute or so, <<=setup.getNpcName('npc_sexdoll', 'first')>> excuses herself, explaining that she has a "full" schedule ahead with a meeting to get to, but wishing you luck as you continue to "@@.npc_sexdoll;Develop your career with the company.@@"<br>
<br>
<<printThought "That's a bit of a weird way to phrase things...">><br>
<br>
Alone in the bathroom, you consider what to do.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom." 60>>]
</div>/*#
#desc: female transformation, chatting w/candy about upper floors, seems quite ditzy
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'work_coffee_shop' 'coworker_sexdoll'>>
<<if $npc_sexdoll.stage < 4>>
<<set $npc_sexdoll.stage = 4>>
<<include "startAdminSexdoll">>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_7'
0
'event_ai_sex_lesson_penis_1'
true
>>
<<include "checkSchoolReady">>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
Walking into Coffee Shop 52, you are momentarily taken aback by the woman ahead of you at the counter.<br>
<br>
Leaning against the counter, chatting with <<=setup.getNpcName('npc_barista', 'nickname')>>, is a woman that could only be <<=setup.getNpcName('npc_sexdoll', 'first')>> nee <<=setup.getNpcName('npc_sexdoll', $npc_sexdoll.original_first_name)>>. It would appear that her "transformation" is complete, as the shy dude you met your first day as a secretary now looks as much a woman, and even more of a bimbo slut, as the sex-pot barista that she is conversing with.<br>
<br>
The two of them noticing you at the same time, they wave in greeting as you blink. <<=setup.getNpcName('npc_sexdoll', 'first')>> may be wearing more businesslike attire, but any sense of professionalism is somewhat destroyed by the fact that it barely covers half of her breasts, with massive nipple rings dangling down, leaving her looking even more of a slut than <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> maid outfit.<br>
<br>
"@@.npc_sexdoll;Hiya! So I was just telling <<=setup.getNpcName('npc_barista', 'nickname')>> about my promotion!@@"<br>
<br>
"@@.npc_barista;Yup! She's going to move upstairs as soon as the paperwork is finished, it's going to be, like, so great!@@"<br>
<br>
You nod, still a little weirded out by their combined "stereo" bimbo gaze; as disorientating as it is arousing.<br>
<br>
There is a bing from behind the counter and <<=setup.getNpcName('npc_barista', 'nickname')>> perks up. "@@.npc_barista;Oh! That's your order ready, good luck in your new position!@@"<br>
<br>
"@@.npc_sexdoll;Thanks!@@" <<=setup.getNpcName('npc_sexdoll', 'first')>> states, blowing a kiss as she hurries out the door, her breasts and butt jiggling atop what have to be at least twelve centimetre heels.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" "Get your order and head back to the office." 360>>]
</div>/*#
#desc: notice sexdoll in stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bimbo Changing Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_changing.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
As you're getting ready to start another bimbo shift you notice <<=setup.getNpcName('npc_sexdoll', 'first')>> working on her makeup... well, less working on her makeup than frozen in place, tits out, lipstick millimetres from her lips as she stares blankly at the mirror like a statue.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Just get to work." 180>>]<br>
[<<moveTo "event_coworker_sexdoll_stage5_2" "Ask if she's okay?" 180>>]
</div>/*#
#desc: check on sexdoll in stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bimbo Changing Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cafe_changing.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
You gently tap <<=setup.getNpcName('npc_sexdoll', 'first')>> on the shoulder and ask if she's okay?<br>
<br>
She starts, a look of fear and lack of recognition flashing over her face as she seems to notice her reflection for the first time. She blinks and her normal bimbo expression returns and she smiles as she resumes putting on her makeup. "@@.npc_sexdoll;Tee hee, everything's fine! I'm just so busy lately! It's hard to keep up with it all! Just need to finish my makeup and get back to work, clear my head for cock and get my nose back grinding against someone's crotch!@@"<br>
<br>
An artificial smile plastered on her face she blows her reflection a kiss and teeters off, exposed breasts and butt jiggling with every step as she heads off to fuck some more. You shudder... seems that whatever the company has done to her... it's getting worse.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Get to work." 180>>]
</div>/*#
#desc: already wearing female clothing, but just shrugs "what are you gonna do for a job in this economy, y'know?"
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'work_bathroom_male' 'coworker_sissy_secretary'>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_coffee_shop'] 'coworker_sissy_secretary' _nextDate>>
<<set $npc_sissy_secretary.stage = 1>>
<<registerProgressionEvent>>
<<set $player.inside = true>>
<<if $player.sec_style.body.name != "" && !$npc_sissy_secretary.flags.reactnamechange>>
<<set $npc_sissy_secretary.flags.reactnamechange = true>>
<</if>>
<<set $player.location = "Work Men's Toilet">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_0")>>
<div id="invframe" class="scrolltext">
Walking into the bathroom, you do a bit of a double take as someone in a skirt, blouse and heels finishes pissing in the urinal. As you watch, they drop their skirt back into position and spend a moment "adjusting" themselves before turning to notice your surprised expression.<br>
<br>
"@@.npc_sissy_secretary;Yeah, I guess the outfit is a bit confusing to be in the men's room, but trust me, I'm all man where it counts!@@"<br>
<br>
What you can now recognise as a dude shrugs.<br>
<br>
"@@.npc_sissy_secretary;Hey, if wearing a dress gets me a job in this economy...@@" Walking over to the sink, he continues to chat in a normal masculine voice.<br>
<br>
"@@.npc_sissy_secretary;The name's <<=setup.getNpcName('npc_sissy_secretary', 'full')>>@@" he states. "@@.npc_sissy_secretary;Been working here as a secretary for a little while and, well... found a little trick in the contract in that the pay structure is actually accelerated if you follow the women's portion of the dress code so...@@"<br>
<br>
He gestures towards himself. His frame isn't particularly bulky, so the outfit doesn't look terrible, even if he's lacking in the "curves" department. he hasn't bothered with anything past the clothes and shoes as his lack of makeup, short fade hair-cut and masculine jawline serve to seemingly purposefully clash with the outfit.<br>
<br>
You nod, introducing yourself in turn
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
noting that you have come to a similar realisation as you gesture towards your outfit.<br>
<br>
He actually looks a little surprised. "@@.npc_sissy_secretary;Oh, wow, you pull it off so much better than I do.<<if $player.sec_style.clothing.female == "">>.. I think it's the hips, I actually thought you were a girl!<<else>> Why, if I had your hips! But I guess some girls are just luckier than others!<</if>>@@"<br>
<br>
You both laugh<<if $player.sec_style.clothing.female == "">>, but inside another bit of your fragile masculinity breaks away forever<<else>>, and you feel a slight thrill of pleasure at your choices<</if>>.
<<case 'unisex'>>
noting that you've noticed something similar as you gesture towards your outfit.<br>
<br>
He nods. "@@.npc_sissy_secretary;Yeah, you really have the hips for it, you should make the jump to a full skirt, it's so freeing!@@"<br>
<br>
You both laugh, but you can't help but think about his words. Certainly <<=setup.getNpcName('npc_manager', 'formal')>> would approve but do you really want to sacrifice even more of your fragile masculinity?
<<case 'male'>>
as you compliment him on the outfit.<br>
<br>
He grins. "@@.npc_sissy_secretary;Thanks, but I'm just a dude in a dress, but it's cool, just for the money am I right? You should totally consider the same, I'm telling you I've done further research and there are literally ZERO secretaries working the upper, executive floors that dress like men.@@"
<<default>>
ERROR, unexpected clothing tag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
<br><br>
Finishing washing up, he wishes you luck and heads off.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_male" "Men's Bathroom." 60>>]
</div>/*#
#desc: breast enlargement, makeup "well, y'know, I found I kind of like it!"
#status: RELEASED 0.6.0.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'coworker_sissy_secretary' _nextDate>>
<<set $npc_sissy_secretary.stage = 2>>
<<removeRandomEvent 'work_coffee_shop' 'coworker_sissy_secretary'>>
<<registerProgressionEvent>>
<<if $player.sec_style.body.name != "" && !$npc_sissy_secretary.flags.reactnamechange>>
<<set $npc_sissy_secretary.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'company' 'theme_psychiatrist_company_changing'
0
'theme_psychiatrist_company_changing_1'
false
>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_1")>>
<div id="invframe" class="scrolltext">
Waiting in line, you run into <<=setup.getNpcName('npc_sissy_secretary', 'full')>> the ambitious, cross-dressing secretary.<br>
<br>
Well... crossdressing might be understating it a bit at this point. Rather than just wearing women's clothing, he has gone the full package, sporting a simple, but clearly feminine, haircut and semi-decent makeup. A pair of small breasts gives his outfit a bit of shape and he turns smartly on six centimetre pumps to greet you.<br>
<br>
<<if $scene.namereact>>
"@@.npc_sissy_secretary;Oh, hey, <<=$player.original_first_name>>! How you doing? <<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>give any more thought to that tip I gave you?<<else>>I see you've been following my suggestion, you look great!<</if>>@@"<br>
<br>
You thank him for the compliment and quickly correct that you go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_sissy_secretary;Oh damn, really? Well, congrats! You really make quite a beautiful woman.@@"
<<else>>
"@@.npc_sissy_secretary;Oh, hey, <<=$player.first_name>>! How you doing? <<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>give any more thought to that tip I gave you?<<else>>I see you've been following my suggestion, you look great!<</if>>@@"
<</if>>
<br><br>
You gesture towards <<=ps(setup.getNpcName('npc_sissy_secretary', 'full'))>> full feminine get-up as he smiles.<br>
<br>
"@@.npc_sissy_secretary;Heh, yeah, so I got kind of sick of looking like a dude in a dress, and really, I've gotten much better reactions in general since I got my hair lengthened and started putting some actual effort into my appearance. I mean, it's just a work thing, fem for pay, I guess you would say, I'm back to jeans and a t-shirt as soon as I get home.@@" Giving his breasts a quick lift, he continues "@@.npc_sissy_secretary;I mean these are totally fake, just a padded bra, but it's kind of fun, makes me feel real pretty, y'know? And my boss approves and isn't that what's important?@@"<br>
<br>
You nod, unable to help, but notice that <<=ps(setup.getNpcName('npc_sissy_secretary', 'full'))>> voice is sounding a bit higher pitched and androgynous since you last saw him. Now at the front of the line, it's time to place orders and you wish him luck in his career as he returns with "@@.npc_sissy_secretary;Likewise@@" and walks off.<br>
<br>
[<<moveTo "event_work_coffee_random_finish" "Get your order and head back to the office." 360>>]
</div>/*#
#desc: in "club" attire on the way home, "yeah, I mean being a woman is so much more fun!"
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['canteen'] 'coworker_sissy_secretary' _nextDate>>
<<set $npc_sissy_secretary.stage = 3>>
<<removeRandomEvent 'elevator_home' 'coworker_sissy_secretary'>>
<<registerProgressionEvent>>
<<if $player.sec_style.body.name != "" && !$npc_sissy_secretary.flags.reactnamechange>>
<<set $npc_sissy_secretary.flags.reactnamechange = true>>
<<set $scene.namereact = true>>
<<else>>
<<set $scene.namereact = false>>
<</if>>
<<set $scene.oldName = $npc_sissy_secretary.first_name>>
<<set $npc_sissy_secretary.first_name = $npc_sissy_secretary.sissy_name>><<set $npc_sissy_secretary.other_call = 'Ms.'>><<set $npc_sissy_secretary.call = 'Ms.'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_2")>>
<div id="invframe" class="scrolltext">
Walking into the elevator to head home, you find <<=setup.getNpcName('npc_sissy_secretary', 'custom', $scene.oldName)>> <<=setup.getNpcName('npc_sissy_secretary', 'custom', $npc_sissy_secretary.last_name)>>, the cross-dressing secretary wearing something that looks VERY much not work appropriate.<br>
<br>
<<printThought 'Or, well... maybe it is, this place is a bit crazy in what is allowed for "women" to wear...'>><br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', $scene.oldName)>> is wearing a tight, leather-look "little black dress," a lacy boob window shows off that the knockers underneath are very much NOT just thanks to a bra.<br>
<br>
Looking a little nervous, and not totally steady atop ten centimetre peep-toe stiletto heels, <<=setup.getNpcName('npc_sissy_secretary', $scene.oldName)>> shifts her small purse to the other hand and reaches out to shake hands.<br>
<br>
<<if $scene.namereact>>
"@@.npc_sissy_secretary;Oh, hi, <<=$player.original_first_name>>, how are you doing?@@"<br>
<br>
You hastily point out that, actually, you go by <<=$player.first_name>> now.<br>
<br>
"@@.npc_sissy_secretary;Oh damn, really? Well, congrats! You really are quite a beautiful woman. Anyway, how have you been, dish!@@"
<<else>>
"@@.npc_sissy_secretary;Oh, hi, <<=$player.first_name>>, how are you doing?@@"
<</if>>
<br><br>
You say you're doing okay before asking what's up with them as you gesture towards their sexy outfit as you notice that, in addition to having improved their makeup game A LOT, they have painted their nails — fingers as well as the toes peeking out from their high heel sandals.<br>
<br>
"@@.npc_sissy_secretary;Yeah, so I was heading home the other night and a dude on the bus asked me out! Well, I dunno what came over me, but I said yes and we had just... the best time. It was after that, that I realised that being a girl was just so much better than being a guy and I've been living the life 24/7 ever since. Planning on changing my name to <<=setup.getNpcName('npc_sissy_secretary', 'first')>> this weekend, which the company is even paying for, how fab, huh? Speaking of fab... what do you think of my new boobs? I JUST got them installed, come on, give 'em a squeeze, don't they just feel great?@@"<br>
<br>
Grabbing your hand, she presses them into one of her breasts and you give a somewhat awkward squeeze, agreeing that they do feel really nice, and look totally real. "@@.npc_sissy_secretary;They had better, given the price! And of course I'm on hormones to help them a bit more... but I just didn't have the patience not to go big immediately, you know? Hesitancy never put anyone ahead!@@" She states confidently.<br>
<br>
The bell dings and the elevator door opens out onto the lobby. "@@.npc_sissy_secretary;Well, I gotta go, can't wait to get to the club — I hope you aren't the only one squeezing these puppies tonight!@@"<br>
<br>
Her heels go click, click, click as she minces across the marble floor and you take a few moments to process her transformation.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: slutty makeup, bimbo attire, giggling/chatting up several men VERY flirtatiously
#status: RELEASED 0.6.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_sissy_secretary.stage < 4>>
<<set $npc_sissy_secretary.stage = 4>>
<<include "coworkerSissySecretaryCalc">>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_ai' 'sex' 'theme_ai_sex_5'
0
'event_ai_sex_lesson_anal_1'
true
>>
<<include "checkSchoolReady">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You're standing in line for lunch when you hear laughter from a nearby table. You glance over to see <<=setup.getNpcName('npc_sissy_secretary', 'first')>> sitting with close to half a dozen <<men>>, laughing and flirting with all of them.<br>
<br>
Even more extreme than the "little black dress" she was wearing to the club that time you met her in the elevator, her outfit screams sex: a short skirt, a thin top with a neckline that plunges down between her large breasts, fishnets, and steep stiletto heels. Perfect makeup, nails, and hair almost to her waist rounds out the utterly feminine appearance.<br>
<br>
Noticing you, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> waves, only to be distracted by the <<guy>> sitting next to her copping a full grab on her butt. Turning to <<him>> in mock surprise, she gives <<him>> a playful slap before laughing and "accidentally" dropping a chunk of sushi down her cleavage and offering it to <<him>> to dig out.<br>
<br>
Forgoing chopsticks, <<he>> goes in with <<his>> mouth, an exaggerated expression of mindless bliss passing over her face as the rest of the table laughs.<br>
<br>
You can't help but shake your head as you consider how <<=setup.getNpcName('npc_sissy_secretary', 'first')>> has gone from a dude crossdressing for a shot at a few extra credits to, well, not to put too fine a point on it, but what looks like the office slut.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
You are torn between lust and jealousy and it takes all you've got not to sprint across the room and debase yourself to prove that YOU are the true ultimate <<if $fetish.sissy>>SISSI <</if>>Secretary slut.
<<else>>
Seeing her and how she is being treated has you feeling wet, and also jealous, half tempted to walk right over and challenge her to a slut off.
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
Reaching the front of the line, you feel a disturbing twinge of jealousy that you quickly attempt to squash by focusing on the order you are here to pick up.
<<else>>
Reaching the front of the line, you try to remember what you were here to pick up as you carefully avoid drawing any parallels between her situation and your own.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("humiliation") > 10>>
[<<moveTo "event_coworker_sissy_secretary_3_slut_1" "Go over and have a bit of slutty fun." 120>>] <<hint $options "Doing something like this would require one to be sex obsessed and quite experienced with humiliation.">><br>
<<else>>
[@@.link_locked;You aren't so much of a public-use slut as to join in on something like that...@@]<br>
<</if>>
<<include "buyFoodOptions">>
</div>/*#
#desc: show npc_sissy_secretary who's the bigger slut
#status: RELEASED 0.8.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bimbofication' 13 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImageGeneric("random_employees")>>
<div id="invframe" class="scrolltext">
A lusty pit of jealousy burning in your belly, you walk over to where <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is aggressively flirting with her table of <<guy>>s and ask if she's got "@@.pc;Space for me?@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> smiles up and nods, the <<man>> previously sitting next to her looking a little annoyed until you wedge yourself in between them, and pull <<=setup.getNpcName('npc_sissy_secretary', 'first')>> in to start making out.<br>
<br>
You and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> share a long, passionate kiss, hands moving to grope as the <<guy>>s whistle and softly cheer. Turning your head you move to her ear and whisper in her ear. "@@.pc;Let's show these <<guy>>s what a pair of <<if $fetish.sissy>>sissy <</if>>sluts can do...@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> moans, and then whispers back a challenge. "@@.npc_sissy_secretary;Sure... if you think you can keep up with me...@@"<br>
<br>
Solidifying that the challenge is on, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> continues to make out with you as she slides a hand into the pants of the <<guy>> next to her to start jerking <<him>> off.<br>
<br>
<<if $player.sec_style.sex.anal && $player.sec_style.sex.blowjob>>
[<<moveTo "event_coworker_sissy_secretary_3_slut_2" "You won't be out-slutted like this!" 300 "<<set $scene.slut=true>>">>]<br>
<<else>>
[@@.link_locked;Given your (lack) of experience, your slut credentials are pretty weak...@@]<br>
<</if>>
[<<moveTo "event_coworker_sissy_secretary_3_slut_2" "This is more than you planned, make your exit." 300 "<<set $scene.slut=false>>">>]
</div>/*#
#desc: show npc_sissy_secretary who's the bigger slut
#status: RELEASED 0.8.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<applyExperience 'bimbofication' 12 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.slut>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImageGeneric("random_employees")>>
<<else>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_cook")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You aren't about to let some "normal" <<if $fetish.sissy>>SISSI <</if>>secretary show up <<=ps(setup.getNpcName("npc_manager","formal"))>> chosen, and you match your competition's move by reaching back to jerk off the <<guy>> pressed next to you, and then take it to the next level by shifting to sitting and grinding on <<his>> lap.<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> takes things in stride, breaking your kiss to lean over to suck instead; her hand moving on to the <<man>> sitting on the far side.<br>
<br>
<<printThought "She really is a slut, sucking and jerking off two random <<guy>>s in public, but I'm not going to let her show me up, am I?">><br>
<br>
[<<moveTo "event_coworker_sissy_secretary_3_slut_3" "Find yourself a better sit-YOU-ation." 300 "<<set $scene.slut=true>>">>]<br>
[<<moveTo "event_coworker_sissy_secretary_3_slut_3" "Admit defeat." 300 "<<set $scene.slut=false>>">>]
<<else>>
You were down for making out, but edging towards sex in the middle of the canteen? No, that's a bit much. <<=setup.getNpcName('npc_sissy_secretary', 'first')>> smirks in triumph as you pull away and stand. "@@.npc_sissy_secretary;Guess I'm the REAL bimbo slut after all,@@" she states with a grin before turning away and switching from a below-the-table hand-job to sucking down on a liquid lunch.<br>
<br>
Your inadequacy on display you blush and slink away; though few are paying attention to you on your return to the suddenly thinned-out line to get lunch.<br>
<br>
<<include "buyFoodOptions">>
<</if>>
</div>/*#
#desc: show npc_sissy_secretary who's the bigger slut
#status: RELEASED 0.8.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<applyExperience 'bimbofication' 13 'terrible' $EXPOSED>>
<<applyExperience 'anal' 10 'terrible' $EXPOSED>>
<<applyExperience 'oral' 10 'terrible' $EXPOSED>>
<<applyExperience 'penis' 10 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<<applyExperience 'cum' 12 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.slut>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImageGeneric("random_employees")>>
<<else>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_cook")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You aren't going to be one-upped and you flop forward onto the table, reaching over for the <<men>> across from you with your mouth wide as you wiggle your ass in invitation.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
You don't have to wait long as you're soon taking it from both ends AND jerking off two more — one on either side.
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Your ass spread by your hollow plug you are soon filled in either end, your hands reaching out to jerk off another cock each.
<<else>>
By the time the plug is out of your ass and replaced with a cock you're already sucking hard, and jerking two more; one in each hand.
<</if>>
<</if>>
Without letting the dick leave your lips you glance back to see <<=setup.getNpcName('npc_sissy_secretary', 'first')>> glaring at you in jealousy as she tries to catch up.<br>
<br>
"@@.generic_male1;Look at these bimbo sluts go!@@" One of the <<men>> states as things heat up and you take the first load across your face and start reaching for more...<br>
<br>
[<<moveTo "event_coworker_sissy_secretary_3_slut_4" "I am the ultimate <<if $fetish.sissy>>sissy<<else>>bimbo<</if>> slut!" 120>>]
<<else>>
You chicken out, and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> doesn't even notice. It isn't enough for her to be face-deep on one cock, she's already wiggling her butt for another; a hollow plug spreading her ass in invitation as you walk away.<br>
<br>
<<printThought "I may be a <<if $fetish.sissy>>SISSI <</if>>slut, but at least I have class!">> You tell yourself, but a part of you is paradoxically shamed at your failure, your inability to "prove" yourself against your compatriot. You return to the counter to wait in line as a guard moves in to break up the rapidly forming orgy.<br>
<br>
<<include "buyFoodOptions">>
<</if>>
</div>/*#
#desc: show npc_sissy_secretary who's the bigger slut
#status: RELEASED 0.8.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'bimbofication' 'slut_bimbofication' 'lunch_slut'>>
<<applyExperience 'bimbofication' 15 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<<addEvent 'barista_congratulations'>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_other_bimbo'
6
'theme_manager_work_bimbo_1'
true
>>
<<removeRandomEvent 'canteen' 'coworker_sissy_secretary'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImageGeneric("random_employees") setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
The combination of <<getWordCum>> dripping down your face and a <<getWordPenis>> pounding your ass... you're in slut heaven, only for a guard to walk in and ruin all the fun.<br>
<br>
"@@.generic_male2;Alright you whores, break it up and get back to work! If you've got the energy for this, you've got the energy to do your jobs!@@"<br>
<br>
You take some solace in <<=setup.getNpcName('npc_sissy_secretary', 'first')>> bowing in acknowledgement of your victory, but the guard shuffles you along as the <<men>> scatter and the canteen returns to normal.<br>
<br>
<<if !setup.checkItemTagCarried("lunch") && !$scene.foodDelivery.done>>
Fortunately for the sake of your "official" duties it appears the commotion has caused the lunch line has mostly cleared out.<br>
<br>
[<<moveTo "room_office_lunchbreak_canteen_buyfood" "Get back in line for food..." 60>>]<br>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Office." 60>>]<br>
<<include workLunchbathroom>>
</div><<if $npc_manager.flags.evil >= 2 && $npc_sissy_secretary.stage >= 4>>
<<addWorkEvent 'sissy_secretary_stage5'>>
<</if>>/*#
#desc: npc_sissy_secretary visits during stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImageGeneric("npc_rival")>>
<div id="invframe" class="scrolltext">
You're slightly surprised by an unannounced visit from <<=setup.getNpcName('npc_rival', 'formal')>>, who barely pays you any mind as you rush to hold the door to the inner office as <<he npc_rival>> storms past. As you turn around and leave the managers to their machinations you realise that <<=setup.getNpcName('npc_sissy_secretary', 'first')>> was trailing behind, she smiles and takes a seat at your desk with a shrug. "@@.npc_sissy_secretary;Managers, am I right?@@" She states with a sigh, clearly attempting to lean back and relax, but stymied by her rigid corset.<br>
<br>
You nod and take your seat as <<=setup.getNpcName('npc_sissy_secretary', 'first')>> continues to reminisce. "@@.npc_sissy_secretary;Remember when things were simpler? Shit, I thought I had it all figured out, wear a dress, get a pay bump... now look at me!@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> chuckles as she runs a hand through her long pink hair. "@@.npc_sissy_secretary;Not that it's been all bad, mind. I mean, I love my tits, and some of the sex is great but...@@" She shakes her head. "@@.npc_sissy_secretary;Well, I guess mostly it's <<=setup.getNpcName('npc_rival', 'formal')>>... <<he npc_rival>>'s gotten even worse since the promotion...@@"<br>
<br>
You have a sudden pang of sympathy for <<=setup.getNpcName('npc_sissy_secretary', 'first')>> at the reminder of her similar journey... and your various encounters along the way.<br>
<br>
[<<moveTo "event_coworker_sissy_secretary_stage5_2" "Apologise for any hardship you've caused." 300 "<<set $scene.apology=true>>">>]<br>
[<<moveTo "event_coworker_sissy_secretary_stage5_2" "Let her continue." 300 "<<set $scene.apology=false>>">>]
</div>/*#
#desc: apologise to npc_sissy_secretary during stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.apology>>
You interrupt to apologise for your part in <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> hardship. She just smiles and shakes her head.
<<else>>
You remain silent and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> sighs.
<</if>>
"@@.npc_sissy_secretary;<<if !$scene.apology>>Note that <</if>>I don't blame you, and I hope the feeling is mutual it's this place... well, maybe not the place, but the people. We can't all be so fortunate as you... and I swear that <<=ps(setup.getNpcName('npc_rival', 'formal'))>> semi-incompetent attempts to copy <<=setup.getNpcName('npc_boss', 'formal')>> lead to more cruelty than if <<he npc_rival>> really meant to do it!@@"<br>
<br>
She glances around and leans in a bit closer, her voice dropping to a whisper. "@@.npc_sissy_secretary;Speaking of... <<=setup.getNpcName('npc_manager', 'formal')>> seems a bit different... well, more the same, like she was before her demotion...@@" You tense up but <<=setup.getNpcName('npc_sissy_secretary', 'first')>> shakes her head. "@@.npc_sissy_secretary;Don't worry, <<=setup.getNpcName('npc_rival', 'formal')>> doesn't have a clue... about anything, really. I guess I'm a bit of a coward... not having the courage to do anything myself but... well, I wish you luck in... whatever you're trying. This company certainly needs a change...@@"<br>
<br>
[<<moveTo "event_coworker_sissy_secretary_stage5_3" "You hear a noise from the inner office." 300>>]
</div>/*#
#desc: npc_sissy_secretary leaves after stage 5 visit
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImageGeneric("npc_rival")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_rival', 'formal')>> barges out of the inner office, still in a huff. "@@.npc_rival;And I expect the new division up and running by the end of the month!@@"<br>
<br>
"@@.npc_manager;So long as their onboarding is completed first,@@" <<=setup.getNpcName('npc_manager', 'formal')>> replies, almost mockingly calm.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> bristles, but takes <<his npc_rival>> frustration out on a different target, fumbling for a remote and mashing a button to cause <<=setup.getNpcName('npc_sissy_secretary', 'first')>> to gasp in pain. "@@.npc_rival;Come on! We need to speak with <<=setup.getNpcName('npc_development', 'formal')>> about speeding up the training program...@@"<br>
<br>
"@@.npc_rival;Of course, <<Sir npc_rival>>,@@" <<=setup.getNpcName('npc_sissy_secretary', 'first')>> replies, glancing back at you one final time before hurrying after her boss.<br>
<br>
"@@.npc_manager;Goddess save us from people in power who think they can violate Brooks' Law,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states once it is just the two of you. "@@.npc_manager;Never you mind, this is a problem for <<=setup.getNpcName('npc_rival', 'formal')>>... no matter how <<he npc_rival>> may try to shuffle it around, carry on.@@"<br>
<br>
She nods and disappears back into her inner office.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 1200 "<<completeWorkEvent>>">>]
</div>/*#
#desc: alternate event to introduce npc_rival
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.punt = $npc_sissy_secretary.stage < 2>>
<<if $scene.punt>>
<<completeWorkEvent>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<addWorkEvent 'event_rival_intro' _nextDate>>
<<initRoom>>
<<moveTo "event_work_generic">>
<<else>>
<<set $scene.addPlug = !setup.checkItemTypeWorn("plug")>>
<<if $scene.addPlug>>
<<if $player.sec_style.sex.butt_plug == "strict">>
<<addItem 'remote_control_plug'>>
<<wearItem 'remote_control_plug' true>>
<<else>>
<<addItem 'analplug_beginner'>>
<<wearItem 'analplug_beginner' true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.punt>>
A delivery person arrives with a package for your manager. You sign for it and deliver it to her inner office. Though busy on a phonecall she glances at the label... and then at you before smiling and waving you back to your desk.<br>
<br>
A slight shiver of anticipation goes down your spine as you return to your seat and you wonder what your manager has in store for you next...<br>
<br>
[<<moveTo $scene.workEventReturn "Back to your work." 60>>]
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office.<br>
<br>
"@@.npc_manager;Good morning, <<=$player.first_name>>. Now that you are reaching the point of being... suitably presentable, I want to expand your responsibilities slightly. Get you more accustomed to operating away from your desk.@@"<br>
<br>
She smiles.
<<switch $npc_manager.stagevalues[2].promotionFailed>>
<<case 0>>
"@@.npc_manager;Of course you did wonderfully helping your friend come on board for <<his npc_admin>> new position, but some experience with strangers would be good for your development, as well.@@"
<<case 1>>
"@@.npc_manager;Your slight hesitancy in the matter of your friend's promotion, well... it is clear that you need some additional practice and exposure.@@"
<<case 2>>
"@@.npc_manager;Your repeated hesitancy in the matter of your friend's promotion shows that you clearly need some additional practice and exposure.@@"
<<default>>
ERROR: unexpected promotion fail count <<=$npc_manager.stagevalues[2].promotionFailed>>
<</switch>>
<br><br>
You nod, it seems like a reasonable theory but with this company...<br>
<br>
"@@.npc_manager;Lovely — so, what I want you to do, today, is go introduce yourself to <<=setup.getNpcName('npc_rival', 'formal')>>. <<He npc_rival>> is a rising star in the company, someone you will certainly come into contact with in the future, so it would be good to get you acquainted now.@@" She smiles wider and you feel a chill run down your spine. "@@.npc_manager;And when I say introduce, I mean FULLY introduce — By which I mean inform <<him npc_rival>> that you are MY <<if $fetish.sissy>>SISSI<<else>>personal<</if>> Secretary, and that you are fully equipped for the job. To verify that <<he npc_rival>> will, of course, need to make a visual inspection of your underthings<<if setup.checkItemTypeWorn("cage")>>, and your chastity device<</if>>.@@"<br>
<br>
You tremble slightly at this prospect, but she still isn't done.<br>
<br>
<<if $scene.addPlug>>
"@@.npc_manager;And, speaking of FULL responsibilities, you will also show <<him npc_rival>> this.@@" You jump as she presents
<<if $player.sec_style.sex.butt_plug == "strict">>
a familiar large plug.
<<else>>
what looks like a steel teardrop attached to a jeweled base.
<</if>>
"@@.npc_manager;Properly installed, of course — now bend over <<if $fetish.sissy>>sissy<<else>>my dear<</if>> and let us get you suitably accessorised.@@"<br>
<br>
You're too <<if $player.sec_style.sex.butt_plug == "strict">>intimidated<<else>>shocked<</if>> to do anything but go along as she rises from her chair and bends you over her desk to slide the cool plug into your rear. <<if $player.sec_style.sex.butt_plug == "strict">>Your heart races, is this really what your job is? <</if>>It isn't uncomfortable, per se, but it will be a struggle not to be distracted by its presence...
<<else>>
"@@.npc_manager;And, speaking of FULL responsibilities, you will, of course, show <<him npc_rival>> that your cute <<if $fetish.sissy>>sissy <</if>>hole is properly plugged.@@"
<</if>>
<br><br>
You stand in shock, waiting for her to reveal that this was all some sort of joke, but knowing, deep down, that she is absolutely serious.<br>
<br>
"@@.npc_manager;Well, go on now, you have your orders. And, Miss <<=$player.last_name>>? Do not disappoint me. You have much of which to be proud — show it off as instructed.@@"<br>
<br>
You nervously nod and barely remember to curtsy in parting before you dash out of the office.<br>
<br>
[<<moveTo 'event_rival_intro_1' 'Make your way to <<=ps(setup.getNpcName("npc_rival", "formal"))>> office.' 360>>]
<</if>>
</div>/*#
#desc: meet npc_rival assistant
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_rival.profile = true>>
<<registerProgressionEvent>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_pink")>>
<div id="invframe" class="scrolltext">
You travel up several floors to easily find <<=ps(setup.getNpcName("npc_rival", "formal"))>> office. Knocking on the door you are surprised to be greeted by your friend <<=setup.getNpcName('npc_sissy_secretary', 'first')>>, dressed eerily familiar in the same pink outfit <<if setup.checkItemWorn("satin_blouse_pink") && setup.checkItemWorn("skirt_leather_pink")>>you are wearing<<else>><<=setup.getNpcName('npc_manager', 'formal')>> once gifted you<</if>>.<br>
<br>
"@@.npc_sissy_secretary;Welcome, Miss <<=$player.last_name>> — <<=setup.getNpcName("npc_rival", "formal")>> is expecting you.@@" Their voice is slightly strained, almost breathless, as if they just finished a run.<br>
<br>
They motion you through a similar situation to your own as you pass by their desk, complete with a plaque identifying them as <<=setup.getNpcName("npc_sissy_secretary", "full")>> — <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
<<printThought "Huh... I guess we really are on the same track...">><br>
<br>
They smile, their painted lips looking quite inviting as they motion you inside. "@@.npc_sissy_secretary;<<=setup.getNpcName("npc_rival", "formal")>> will see you now.@@"<br>
<br>
[<<moveTo 'event_rival_intro_2' 'Enter <<=ps(setup.getNpcName("npc_rival", "formal"))>> office.' 360>>]
</div>/*#
#desc: introduced to npc_rival
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName('npc_rival', 'formal'))>> office — which, much like the exterior, seems eerily similar to your <<=ps(setup.getNpcName('npc_manager', 'title'))>> room, right down to the furniture and the picture on the wall.<br>
<br>
<<printThought "Eerie.">><br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> looks up with a grin that is probably meant to exude confidence, but ends up being a bit smarmy. <<Hes npc_rival>> a bit younger than you would have expected, close to your age, in fact...<br>
<br>
<<printThought "Crazy how life can turn out, here I am a <<if $fetish.sissy>>SISSI<<else>>feminised<</if>> Secretary and <<hes npc_rival>> on the fast-track to upper management...">><br>
<br>
The door closes behind you and silence draws out as you realise that <<hes npc_rival>> waiting for you to introduce yourself...<br>
<br>
[<<moveTo 'event_rival_intro_3' "This is crazy, just introduce yourself normally." 180 "<<set $npc_rival.flags.first_meet.style='normal'>>">>]<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_rival_intro_3' "Introduce yourself as instructed — showing off your panties, <<if setup.isCage()>>cage<<else>>chastity<</if>>, and plug." 180 "<<set $npc_rival.flags.first_meet.style='correct'>>">>]<br>
<<else>>
[<<moveTo 'event_rival_intro_3' "Introduce yourself as instructed — showing off your panties and plug." 180 "<<set $npc_rival.flags.first_meet.style='correct'>>">>]<br>
<</if>>
[<<moveTo 'event_rival_intro_3' 'Introduce yourself as instructed and offer yourself for <<his npc_rival>> "use."' 180 "<<set $npc_rival.flags.first_meet.style='slutty'>>">>]
</div>/*#
#desc: introduced yourself to npc_rival
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_rival.flags.first_meet.style>>
<<case "correct">>
<<applyExperience 'submission' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<<case "slutty">>
<<applyExperience 'bimbofication' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<switch $npc_rival.flags.first_meet.style>>
<<case "normal">>
You take a deep breath and introduce yourself as "@@.pc;Miss <<=$player.first_name>> <<=$player.last_name>>, Assistant to <<=setup.getNpcName('npc_manager', 'other')>>.@@"<br>
<br>
<<He npc_rival>> pauses, as if waiting for you to go further.<br>
<br>
"@@.npc_rival;I see, well... do give my regards to your manager and let her know that I am looking forward to our departments working together closely going forward.@@"<br>
<br>
[<<moveTo 'event_rival_intro_3a' 'Thank <<him npc_rival>> and leave.' 180 "<<set $scene.followup=false>>">>]<br>
<<if setup.checkItemTypeWorn("cage")>>
[<<moveTo 'event_rival_intro_3a' "Finish your introduction by showing off your panties, <<if setup.isCage()>>cage<<else>>chastity<</if>>, and plug." 180 "<<set $scene.followup=true>>">>]
<<else>>
[<<moveTo 'event_rival_intro_3a' "Finish your introduction by showing off your panties and plug." 180 "<<set $scene.followup=true>>">>]
<</if>>
<<case "correct">>
You take a deep breath and curtsy, introducing yourself as "@@.pc;Miss <<=$player.first_name>> <<=$player.last_name>>, <<if $fetish.sissy>>SISSI <</if>>Secretary for <<=setup.getNpcName('npc_manager', 'other')>>.@@"<br>
<br>
Your name given you proceed to raise your skirt to show off your <<=setup.getItemTypeName('panties')>>, then<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity')>> pull those to one side to give <<him npc_rival>> a view of your <<=setup.getItemTypeName('cage')>>. Finally, you turn around and<</if>> bend over to show off the <<=setup.getItemTypeName('plug')>> nestled in your rear.<br>
<br>
"@@.npc_rival;Very nice, but I think we ought to do a side by side, hmm? <<=uc(setup.getNpcName('npc_sissy_secretary', 'first'))>>! Get your <<if $fetish.sissy>>sissy<<else>>cute<</if>> butt in here!@@"<br>
<br>
You quickly stand up and fix your skirt just in time for <<=setup.getNpcName('npc_sissy_secretary', 'first')>> to hurry through the door a moment later. "@@.npc_sissy_secretary;Yes, <<Sir npc_rival>>, how may I serve you today?@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> grins, "@@.npc_rival;Miss <<=$player.last_name>> here was showing off her... qualifications. I thought it would be a good opportunity to do a head to head comparison, so together now, would you two please introduce yourselves?@@"<br>
<br>
For the first time <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> mask slips as she bites her lip nervously before taking a deep breath and forcing a smile. "@@.npc_sissy_secretary;Of course, <<Sir npc_rival>>. I only hope I do you proud.@@"<br>
<br>
[<<moveTo 'event_rival_intro_4' 'Competitive introductions.' 180>>]
<<case "slutty">>
You flash a smile and curtsy, introducing yourself as "@@.pc;Miss <<=$player.first_name>> <<=$player.last_name>>, <<if $fetish.sissy>>SISSI-slut<<else>>slutty<</if>> Secretary for <<=setup.getNpcName('npc_manager', 'other')>>.@@"<br>
<br>
Your name given you proceed to raise your skirt to show off your <<=setup.getItemTypeName('panties')>><<if setup.checkItemTypeWorn("cage")>>, then pull them to one side to give <<him npc_rival>> a view of your <<=setup.getItemTypeName('cage')>><</if>>. Finally, you turn around and bend over to show off the <<=setup.getItemTypeName('plug')>> nestled in your rear.<br>
<br>
Turning back around you smile wider and ask "@@.pc;<<Sir npc_rival>> would like to test any of my other skills and/or holes today?@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> seems momentarily surprised by your brazenness, but then <<he npc_rival>> grins. "@@.npc_rival;My, my, I did not realise you were so... advanced. Alas, I must decline your wonderful offer — until you are out of your probationary period you cannot offer yourself without your owner/manager present to supervise. Still... your exemplary performance has me interested in a comparison. <<=uc(setup.getNpcName('npc_sissy_secretary', 'first'))>>! Get your <<if $fetish.sissy>>sissy<<else>>cute<</if>> butt in here!@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> hurries through the door. "@@.npc_sissy_secretary;Yes, <<Sir npc_rival>>, how may I serve you today?@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> grins, "@@.npc_rival;Miss <<=$player.last_name>> here was showing off her... qualifications. I thought it would be a good opportunity to do a head to head comparison, so together now, would you two please introduce yourselves?@@"<br>
<br>
For the first time <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> mask slips as she bites her lip nervously before taking a deep breath and forcing a smile. "@@.npc_sissy_secretary;Of course, <<Sir npc_rival>>. I only hope I do you proud.@@"<br>
<br>
[<<moveTo 'event_rival_intro_4' 'Competitive introductions.' 180>>]
<<default>>
ERROR: unexpected npc_rival.flags.first_meet.style <<=$npc_rival.flags.first_meet.style>>
<</switch>>
</div>/*#
#desc: followup option for npc_rival
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.followup>>
<<applyExperience 'submission' 10 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<<if $scene.followup>>
<<set $npc_rival.flags.first_meet.style = "normalplus">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<if $scene.followup>>
<<=ps(setup.getNpcName('npc_rival', 'formal'))>> prompting is enough to remind you that you really should follow ALL of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> instructions. Somewhat nervously you raise your skirt to display your <<=setup.getItemTypeName('panties')>><<if setup.checkItemTypeWorn("cage")>>, then pull them to one side to give <<him npc_rival>> a view of your <<=setup.getItemTypeName('cage')>><</if>>. Finally, you turn around and bend over to show off the <<=setup.getItemTypeName('plug')>> nestled in your rear.<br>
<br>
"@@.npc_rival;Very nice... if a little hesitant... though I suppose some like that sort of thing. Me, I think it's a waste of time — give me a proper brazen <<if $fetish.sissy>>sissy <</if>>slut. Speaking of... I think we ought to do a side by side, hmm? <<=uc(setup.getNpcName('npc_sissy_secretary', 'first'))>>! Get your <<if $fetish.sissy>>sissy<<else>>cute<</if>> butt in here!@@"<br>
<br>
You quickly stand up and fix your skirt just in time for <<=setup.getNpcName('npc_sissy_secretary', 'first')>> to hurry through the door a moment later. "@@.npc_sissy_secretary;Yes, <<Sir npc_rival>>, how may I serve you today?@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> grins, "@@.npc_rival;Miss <<=$player.last_name>> here was showing off her... qualifications. I thought it would be a good opportunity to do a head to head comparison, so together now, would you two please introduce yourselves?@@"<br>
<br>
For the first time <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> mask slips as she bites her lip nervously before taking a deep breath and forcing a smile. "@@.npc_sissy_secretary;Of course, <<Sir npc_rival>>. I only hope I do you proud.@@"<br>
<br>
[<<moveTo 'event_rival_intro_4' 'Competitive introductions.' 180>>]
<<else>>
<<=setup.getNpcName('npc_rival', 'formal')>> waits a moment, presumably for you to "finish" you introduction. When you don't <<he npc_rival>> sniffs slightly and turns back to <<his npc_rival>> desk.<br>
<br>
"@@.npc_rival;Well, thank you for stopping by. It was good to meet you... I will be sure to let <<=setup.getNpcName('npc_manager', 'formal')>> know you dropped in.@@"<br>
<br>
<<printThought "Shit... I'm totally going to get in trouble for not exposing myself...">><br>
<br>
Unfortunately the moment has passed, <<=setup.getNpcName('npc_rival', 'formal')>> dismisses you from the office. <<=setup.getNpcName('npc_sissy_secretary', 'first')>> smiles at you as you pass her desk and then you head for the elevator back to your floor.<br>
<br>
[<<moveTo 'event_rival_intro_5' 'Return to <<=ps(setup.getNpcName("npc_manager", "formal"))>> office.' 180>>]
<</if>>
</div>/*#
#desc: competition with npc_rival's assistant, npc_sissy_secretary
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 10 'normal' $SEEN_STRANGER>>
<<set $scene.win = setup.checkItemWorn("satin_blouse_pink") && setup.checkItemWorn("skirt_leather_pink") && (setup.checkItemTypeWorn("cage") && setup.getChastityLevel() >= 4) && $player.makeup.messed < 25 && setup.getCurrentMakeup() != "" && setup.getEffectivePlugSize() > 7 && $player.body.breastsize[0] > 3>>
<<if $scene.win>>
<<set $npc_rival.flags.first_meet.win = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_sissy_secretary.stage >= 4>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_2")>>
<</if>>
<div id="invframe" class="scrolltext">
"@@.npc_rival;Since <<=setup.getNpcName('npc_sissy_secretary', 'first')>> has the proverbial home-field advantage, how about you go first,@@" <<he npc_rival>> states, nodding in your direction.<br>
<br>
"@@.pc;Of course!@@" You reply, dropping into a curtsy before repeating your <<if $npc_rival.flags.first_meet.style == 'slutty'>>slutty <</if>>introduction, concluding by showing of your panties<<if setup.checkItemTypeWorn("cage")>>, chastity,<</if>> and plug.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> nods, hand on <<his npc_rival>> chin as if in thought before gesturing towards <<=setup.getNpcName('npc_sissy_secretary', 'first')>>.<br>
<br>
"@@.npc_sissy_secretary;Hello!, My name is <<if $fetish.sissy>>SISSI <</if>>Secretary <<=setup.getNpcName('npc_sissy_secretary', 'first')>>. I serve, <<=setup.getNpcName('npc_rival', 'formal')>> — the most wonderful manager at the company. As you can see, I am fully equipped for my duties,@@" she concludes flashing her frilly pink panties before showing off
<<if setup.checkItemOwned('c_cage_advanced') || setup.checkItemOwned('chastity_belt_adv')>>
<<if setup.checkItemWorn('c_cage_advanced') || setup.checkItemWorn('chastity_belt_adv')>>
an advanced chastity device identical to your own,
<<else>>
what looks to be a <<=setup.getItemName('c_cage_advanced')>>,
<</if>>
<<else>>
a VERY high-tech looking chastity cage,
<</if>>
and then turning around to display what looks to be quite a large plug occupying her rear.<br>
<br>
"@@.npc_rival;Good girl,@@" <<=setup.getNpcName('npc_rival', 'formal')>> states with a grin. <<He npc_rival>> clicks a remote and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> gasps as you realise that the short buzzing sound you just heard must have been some sort of remote controlled vibrator that she is wearing!<br>
<br>
<<if $scene.win>>
"@@.npc_rival;Well, well, well... I was expecting an easy home team victory but the challenger has really shown her stuff. There is far more to being a good <<if $fetish.sissy>>SISSI <</if>>Secretary than merely dressing the part but, as I cannot run any additional skill tests on a <<if $npc_manager.stage < 3>>probationary<<else>>newly promoted<</if>> employee, I am forced to call this a tie!@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> forces a smile as she curtsies in thanks, "@@.npc_sissy_secretary;Your judgement is wise as always. I will redouble my efforts in anticipation of a future opportunity to prove myself.@@"
<<else>>
"@@.npc_rival;Well, as we can run no additional tests... it would seem that <<=setup.getNpcName('npc_sissy_secretary', 'Miss')>> has proven herself the superior <<if $fetish.sissy>>SISSI <</if>>Secretary — though putting a full Secretary against a <<if $npc_manager.stage < 3>>probationary<<else>>newly promoted<</if>> one was, perhaps, an unfair one. Still... let it be something to strive for!@@"
<</if>>
<br><br>
You curtsy and <<=setup.getNpcName('npc_rival', 'formal')>> gestures for you to depart. "@@.npc_rival;I will inform <<=setup.getNpcName('npc_manager', 'other')>> of your lovely introduction, but I imagine she is expecting you back soon so... until next time.@@"<br>
<br>
[<<moveTo 'event_rival_intro_5' 'Return to <<=ps(setup.getNpcName("npc_manager", "formal"))>> office.' 180>>]
</div>/*#
#desc: followup option for npc_rival
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $npc_rival.flags.first_meet.style>>
<<case "normal">>
<<if $scene.followup>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<case "correct">>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<case "slutty">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</switch>>
<<if $scene.addPlug>>
<<set _plug = setup.getItemFromType("plug")>>
<<removeItem _plug>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You return to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office where you find her inner door open for you to report back in.<br>
<br>
"@@.npc_manager;So, my sweet,@@" she states with a smile. The difference in confidence between her authentic, perfect control and <<=ps(setup.getNpcName('npc_rival', 'formal'))>> facsimile of such hits you like a sledgehammer; and she seems to be pouring it on extra thick as she debriefs you.<br>
<br>
<<switch $npc_rival.flags.first_meet.style>>
<<case "normal" "normalplus">>
<<if $scene.followup>>
"@@.npc_manager;I just heard back from <<=setup.getNpcName('npc_rival', 'formal')>>. <<if $scene.win>><<He npc_rival>> seemed quite impressed with your performance... I expect <<his npc_rival>> assistant is in for it though... <<=setup.getNpcName('npc_rival', 'formal')>> is quite competitive, and <<his npc_rival>> techniques are less... refined than my own<<else>><<He npc_rival>> noted that you performed your duties admirably, despite some initial hesitation<</if>>.@@"
<<else>>
"@@.npc_manager;I just heard back from <<=setup.getNpcName('npc_rival', 'formal')>> and it would seem that your performance was... quite lacking. I would advise you to put more focus into your work — this is a representative position and I expect you to discharge your duties with pride and grace, at all times. If you cannot handle a simple formal introduction, well... your future career is going to be quite challenging!@@"
<</if>>
<<case "correct">>
"@@.npc_manager;I just heard back from <<=setup.getNpcName('npc_rival', 'formal')>>. <<if $scene.win>><<He npc_rival>> sounded quite impressed with your performance... I expect <<his npc_rival>> assistant is in for it though...<<else>>Of course it seems <<he npc_rival>> could not resist showing off...<</if>>.@@"<br>
<br>
She sighs, "@@.npc_manager;I will say that I feel a bit sorry for <<his npc_rival>> assistant — <<=setup.getNpcName('npc_rival', 'formal')>> is quite competitive, and <<his npc_rival>> techniques are less... refined than my own.@@"
<<case "slutty">>
"@@.npc_manager;I just heard back from <<=setup.getNpcName('npc_rival', 'formal')>> and, well...@@" She shakes her head, "@@.npc_manager;I suppose things were a bit confusing, what with your instructions but... I am not training you to be a whore, no, a <<if $fetish.sissy>>SISSI <</if>>Secretary is a higher calling. Certainly being able to do an oral presentation — and your cute hole is so much better nicely filled, but you work in a representative position and you must keep that in mind. Obedience and grace, those should be your watchwords, not... well, let us move on.@@"<br>
<br>
You gulp as she continues, "@@.npc_manager;It would seem that <<=setup.getNpcName('npc_rival', 'formal')>> could not resist doing a bit of a comparison... somewhat unfair, given that <<his npc_rival>> assistant is not a probationary employee but...<<if $scene.win>> well, I should have expected you to surpass expectations. Though I do feel a bit sorry for the poor <<if $fetish.sissy>>sissy<<else>>thing<</if>> you bested<<else>>It sounds like you did about as well as could be expected, so I shall not hold your loss against you<</if>>.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> sighs, "@@.npc_manager;I do feel a bit sorry for <<his npc_rival>> assistant... <<=ps(setup.getNpcName('npc_rival', 'formal'))>> techniques are less... refined than my own <<if $scene.win>>and I doubt <<=setup.getNpcName('npc_rival', 'formal')>> will take the near-loss with particular grace.<<else>>and seeing your performance will almost certainly have <<him npc_rival>> pushing <<his npc_rival>> secretary through even more of <<his npc_rival>> trainings...<</if>>@@"
<<default>>
ERROR: unexpected npc_rival.flags.first_meet.style <<=$npc_rival.flags.first_meet.style>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, "@@.npc_manager;Well, I hope you found this little task edifying — <<if $scene.addPlug>>and you may keep the plug — it really is such a perfect accessory, and a wonderful training tool for you to take advantage of. <</if>>You may resume your normal duties now.@@"<br>
<br>
You curtsy and nervously thank her for the opportunity and leave the room.<br>
<br>
<<if $scene.addPlug>>
You take your seat only to be reminded of the plug in your rear, rising only for it to fall out. You're not quite sure how you feel about wearing a plug for work, so you just pocket it and turn back to your duties feeling weirdly cognisant of your emptiness.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to your desk." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: rival arrives
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You are working away when <<=setup.getNpcName("npc_rival","formal")>> arrives for a meeting with your <<=setup.getNpcName("npc_manager","title")>>. <<He npc_rival>> somehow looks even younger than the first time you met <<him npc_rival>>, making <<his npc_rival>> title even more surprising. You barely pay attention to the <<man npc_rival>> <<him npc_rival>>self, your attention instead drawn to the <<if $fetish.sissy>>sissy<<else>>girl<</if>>, presumably <<=setup.getNpcName("npc_sissy_secretary","first")>>, crawling behind <<him npc_rival>> — <<if $fetish.pet_play>>arms and legs bound in a full bitchsuit, complete with a puppy-faced hood and a tail plug. She follows obediently at <<his npc_rival>> leash as <<he npc_rival>> disappears into the office for <<his npc_rival>> meeting<<else>>though dressed in a standard office skirt and blouse she follows behind on a leash, a large gag "completing" her subservient look<</if>>.<br>
<br>
<<printThought "Well... these are the upper floors...">><br>
<br>
[<<moveTo "event_rival_first_meeting_2" "Get back to work." 1800>>]
</div>/*#
#desc: rival leaves, manager offer
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
Half an hour passes before <<=setup.getNpcName("npc_rival","formal")>> finishes <<his npc_rival>> meeting, departing with <<his npc_rival>> crawling assistant still at <<his npc_rival>> heels. <<=setup.getNpcName('npc_manager', 'formal')>> watches them leave from her doorway. The moment they are out of sight <<=ps(setup.getNpcName('npc_manager', 'formal'))>> expression turns sour.<br>
<br>
"@@.npc_manager;Well... it would appear that <<=setup.getNpcName('npc_rival', 'formal')>> has been quite busy. <<He npc_rival>> just informed me that <<he npc_rival>> will shortly be accepting the title of Deputy Director of Advertising. <<His npc_rival>> star continues to rise... rising TOO fast, if you ask me. Just look at the way <<he npc_rival>> treats <<his npc_rival>> assistant — no class, just excess, trying to show off without even understanding why...@@" She sighs, and then seems to get an idea. "@@.npc_manager;Say... <<he npc_rival>> is scheduled for a follow-up meeting this afternoon. I do not suppose you would be up for putting on a bit of a show to demonstrate how a PROPERLY trained <<if $fetish.sissy>>SISSI <</if>>Secretary looks and behaves? There would be a little bonus in it for you.@@"<br>
<br>
[<<moveTo "event_rival_first_meeting_3" "Money? You like money, sure!" 180 "<<set $scene.action='money'>>">>]<br>
[<<moveTo "event_rival_first_meeting_3" "You don't care about the money, you are just happy to serve." 180 "<<set $scene.action='obey'>>">>]<br>
[<<moveTo "event_rival_first_meeting_3" "You have too much on your plate right now." 180 "<<set $scene.action='no'>>">>]
</div>/*#
#desc: rival described
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_rival.stage = 1>>
<<switch $scene.action>>
<<case 'money'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if $player.sec_style.clothing.sissy_choker == "" && ($player.sec_style.submission.collar == "" || $player.flags.collar.owner == "npc_manager")>>
<<addWorkEvent 'sissy_choker_money'>>
<<else>>
<<addWorkEvent 'rival_meeting'>>
<</if>>
<<case 'obey'>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<<addWorkEvent 'rival_meeting'>>
<<case 'no'>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'money'>>
<<printThought "Money? I like money.">> You think to yourself, perhaps a bit recklessly given what has happened to you in the past.<br>
<br>
You smile and reply that you would be happy to do a bit of extra work for extra pay.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Wonderful! Well, I shall see you in the afternoon, it will take a few minutes to get you ready before <<=setup.getNpcName('npc_rival', 'formal')>> is scheduled to arrive for <<his npc_rival>> meeting.@@"<br>
<br>
You are left wondering what all you are in for as <<=setup.getNpcName('npc_manager', 'formal')>> gives no further hints before disappearing back into her inner office.
<<case 'obey'>>
You smile and curtsy in your chair, explaining that more money is unnecessary — your job is to be her obedient <<if $fetish.sissy>>SISSI <</if>>Secretary — anything within that purview is surely your duty, and your joy.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles wide. "@@.npc_manager;Oh, that is just wonderful to hear... yes... you are going to be just perfect for showing <<him npc_rival>> the difference between an assistant who follows orders and one who enthusiastically obeys.@@"<br>
<br>
You are left wondering what all you are in for as, with a twinkle in her eye, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her inner office.
<<case 'no'>>
You respond that you just have too much work you need to get to today. <<=setup.getNpcName('npc_manager', 'formal')>> appears disappointed, but makes no further comment save to nod slowly and return to her inner office.
<<default>>
ERROR: unexpected scene.money <<=$scene.money>>
<</switch>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: serve as manager's foot-stool for meeting with rival
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_rival.stage = 2>>
<<if $fetish.pet_play>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear true>>
<<addItem 'bitchsuit_pink_copy'>>
<<wearItem 'bitchsuit_pink_copy' true>>
<<addItem 'puppy_hood_pink_copy'>>
<<wearItem 'puppy_hood_pink_copy' true>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<if !setup.checkItemTypeWorn("plug")>>
<<applyExperience 'anal' 7 'little' $SEEN_FRIEND>>
<<set $scene.dogPlug = "dog_plug_black">>
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.dogPlug = "dog_plug_insert">>
<<else>>
<<set $scene.dogPlug = "dog_plug_black">>
<</if>>
<</if>>
<<addItem $scene.dogPlug>>
<<wearItem $scene.dogPlug true>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_FRIEND>>
<<else>>
<<addItem 'ball_gag_red'>>
<<wearItem 'ball_gag_red' true>>
<</if>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office with a scheming grin. "@@.npc_manager;So, I have another meeting with <<=setup.getNpcName('npc_rival', 'formal')>> in a few minutes, and I thought of just the thing you could do to show <<him npc_rival>> how a proper <<if $fetish.sissy>>SISSI <</if>>Secretary serves...@@"<br>
<br>
<<if $fetish.pet_play>>
"Proper" service turns out to start with you stripping naked before having your arms and legs bound into the leather confines of an all-fours pink leather bitchsuit; complete with a matching hood that gags you and gives you the expression of a wide-eyed, happy pup. <<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you and gives you a friendly scratch behind the ears before <<if $scene.plug == "">>installing a tail plug<<else>>swapping your <<=setup.getItemName($scene.plug)>> for a tail plug<</if>> and then settling onto the couch with you as her bound foot-stool.
<<else>>
"Proper" service turns out to be a gag and being on your hands and knees in front of the couch in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office as she sits using your back as a human footstool.
<</if>>
<br><br>
You do not have long to wait before <<=setup.getNpcName('npc_rival', 'formal')>> arrives for <<his npc_rival>> meeting. You remain obediently still like the piece of human furniture you are. Out of the corner of your eye you notice the <<man npc_rival>> start and you feel the satisfaction in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> voice as she greets <<him npc_rival>>.<br>
<br>
"@@.npc_manager;Welcome, have a seat — of course my sweet pet is trained enough that a leash is superfluous, but perhaps you should keep yours close... we do not want a repeat of what happened at the board meeting...@@"<br>
<br>
The <<man npc_rival>> bristles as <<he npc_rival>> tightens <<his npc_rival>> grip on the leash and sits down, <<his npc_rival>> "assistant" kneeling next to <<him npc_rival>> rather than mimicking your position.<br>
<br>
The meeting that follows is tense, but uninteresting. You can sense the <<mans npc_rival>> ambition in almost every word, yet <<=setup.getNpcName('npc_manager', 'formal')>> casually parries <<his npc_rival>> efforts like the master fencer of corporate intrigue that she is.<br>
<br>
Only after <<he npc_rival>> finally leaves — <<his npc_rival>> pet staring back at you for a long moment before <<he npc_rival>> jerks her leash, do you relax; <<=setup.getNpcName('npc_manager', 'formal')>> taking her feet off your back and massaging your back for a few moments.<br>
<br>
"@@.npc_manager;Good girl. You were just perfect, but now it is time for you to return to your normal duties.@@"<br>
<br>
<<if $fetish.pet_play>>
<<=setup.getNpcName('npc_manager', 'formal')>> helps you out of your restraints and sends you back to your desk with a smile.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>><<removeItem 'bitchsuit_pink_copy' true>><<deleteItem 'bitchsuit_pink_copy'>><<removeItem 'puppy_hood_pink_copy' true>><<deleteItem 'puppy_hood_pink_copy'>><<removeItem $scene.dogPlug true>><<deleteItem $scene.dogPlug>><<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> gives you a hand back to your feet before removing your gag and gracing you with a smile as you return to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>><<removeItem 'ball_gag_red' true>><<deleteItem 'ball_gag_red'>>">>]
<</if>>
</div>/*#
#desc: rival visits, hitching post competition
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_rival.flags.stage4_hitch=true>>
<<set $scene.hormoneInspect=false>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_rival', 'formal')>> arrives for <<his npc_rival>> meeting with <<his npc_rival>> <<if $fetish.sissy>>SISSI <</if>>Secretary Assistant in tow.<br>
<br>
The three of you enter <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office where you find the familiar <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post raised and ready for two riders...<br>
<br>
Wanting to make a good impression you quickly get straddled, lowering yourself onto one dildo and wrapping your lips around your half of the other. Restraints lock in place and you're "ready to ride." <br>
<br>
[<<moveTo "event_manager_hormone_inspect_fail_2_2_partner_1" "Wait for your competition to get situated." 60 "<<set $scene.no_hormone=true>>">>]
</div>/*#
#desc: coffee random event, "whipped" special
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
Entering Coffee Shop 52, you can't help but note that it's a bit busier than normal. A glance up at the menu board gives you a clue as to why. "SPECIAL! Whatever you want, have it WHIPPED!" It says.<br>
<br>
Reaching the counter, you place your order with the always bubbly and enthusiastic <<=setup.getNpcName('npc_barista', 'first')>>.<br>
<br>
"@@.npc_barista;Just the usual? You sure you don't want to take advantage of our special?@@"<br>
<br>
Her eyebrows bounce up and down enticingly. You consider deviating from your manager's order to take advantage of this obviously popular deal, but shake your head and decline the suggestion.<br>
<br>
<<printThought "Best not to risk her ire, she seems to quite like her routines.">><br>
<br>
"@@.npc_barista;Hmm, regular cream then... where did I put that...@@"<br>
<br>
Ducking out of sight, she looks under the counter for a few moments before turning, her mini-skirt-trimmed rear on full display peeking over the counter.<br>
<br>
It isn't the first time you've seen her, or the twin plugs barely kept in place by her straining thong. Unlike that first meeting between you and the strange, enthusiastic barista, however her pert, pale bum is criss-crossed with a veritable web of red marks.<br>
<br>
You're still trying to process what could have caused the marks when she spins and pops back up holding a large jug of cream.<br>
<br>
"@@.npc_barista;Found it!@@" She announces proudly, filling a cup with freshly brewed coffee before pouring in the cream per usual. "@@.npc_barista;Here's ya go!@@"<br>
<br>
Still off-guard, you take the cup with a nod, quickly hurrying off to make your delivery.<br>
<br>
[<<moveTo event_work_coffee_random_finish "Continue." 60>>]
</div>/*#
#desc: coffee random event, barista blowjob aftermath
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.newCum = false>>
<<set $scene.swallowedOther = false>>
<<if !$player.virgin.swallow_cum_other && !$player.virgin.swallow_cum_self>>
<<applyExperience 'cum' 4 'little' $INCOGNITO>>
<</if>>
<<if !$player.virgin.swallow_cum_other>>
<<set $player.virgin.swallow_cum_other = true>>
<<set $scene.newCum = true>>
<<set $scene.swallowedOther = true>>
<</if>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
Walking into Cafe 52, you almost bump into another customer coming the other direction. Not that you didn't see <<him>>, you saw <<him>> from a mile away, but <<he>> seemed kind of distracted. A blissful wide grin spangles <<his>> face, as <<he>> waves goodbye at a beaming <<=setup.getNpcName('npc_barista', 'nickname')>>, while at first almost running into the glass facade, then into you.<br>
<br>
She waves back with her usual over-eager bubbly manner, calling after <<him>> "@@.npc_barista;Thanks for coming in me today!@@"<br>
<br>
Even after she stops waving, you can see her boobs whipping up and down until they finally come to a standstill. Ignoring her odd phrasing, you approach the counter. You notice something at the edge of her lip, maybe whipped cream? <<=setup.getNpcName('npc_barista', 'nickname')>> smiles at you. "@@.npc_barista;Hiya, <<=$player.first_name>>! What can I do for you?@@"<br>
<br>
You place your usual order, waiting for her to prepare the coffee — with cream, as you notice there's still some cream on her rosy cheeks. She doesn't seem to register it herself, so you try to inconspicuously draw her attention to it, but to no avail.<br>
<br>
"@@.npc_barista;What? Where?@@" she turns around left and right bending over and getting up again, "@@.npc_barista;I can't seem to find it...@@"<br>
<br>
Even though you're directly pointing towards it, she seems unable to find anything, so you try to be helpful and wipe it off with your finger, and by reflex put it in your mouth. It's just whipped cream, what's the worst that could happen. <<=setup.getNpcName('npc_barista', 'first')>> suddenly looks at you with an interested expression. Hmm. Tastes kinda strange for whipped cream, kinda salty. Oh...<br>
<br>
<<if $scene.newCum>>
<<if !$scene.swallowedOther>>
<<printThought "What is this? I can't quite put my finger onto it.">><br>
<br>
"@@.npc_barista;Oh... that must have been from the customer who just left.@@" she remarks, her statement failing to do anything but raise additional questions.
<<else>>
<<printThought "Did I just swallow some <<if $options.fem>><<if $fetish.futanari>>futa<<else>>girl's<</if>><<else>>dude's<</if>> <<getWordCum>>? Oh <<getWordGod>>!">><br>
<br>
Your blushing is enough evidence for <<=setup.getNpcName('npc_barista', 'first')>> to realise that you know exactly what you just tasted. Without uttering a word, she simply smiles at you and continues to prepare your coffee.
<</if>>
<<else>>
<<printThought "Did I just swallow some <<if $options.fem>><<if $fetish.futanari>>futa<<else>>girl's<</if>><<else>>dude's<</if>> <<getWordCum>> again? Oh <<getWordGod>>!">><br>
<br>
Your blushing is enough evidence for <<=setup.getNpcName('npc_barista', 'first')>> to realise that you know exactly what you just tasted. Without uttering a word, she simply smiles at you and continues to prepare your coffee.
<</if>>
You simply stand there without trying to think about it before heading back to your office with your delivery.<br>
<br>
[<<moveTo event_work_coffee_random_finish "Continue." 60>>]
</div>/*#
#desc: deliver coffee after random event
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You deliver <<=setup.getNpcName('npc_manager', 'formal')>> her coffee.<br>
<br>
"@@.npc_manager;Hmm, a bit slower than usual, was there a line? No matter, you may resume your duties, <<=$player.first_name>>.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: fetch coffee (repeatable)
#status: RELEASED 0.6.0.0
#ignore_spell: hts,t,trifac,trife
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bespokeComment = setup.getBespokeComment('npc_barista')>>
<</if>>
<<set $player.location to "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_barista.flags.milking.first_seen && $fetish.milking>>
<<set $scene.baristaImage = setup.charImage("npc_barista","npc_barista_milk")>>
<<else>>
<<set $scene.baristaImage = setup.charImage("npc_barista")>>
<</if>>
<<createAdvBGR "./images/locations/company_cafe.png" $scene.baristaImage>>
<div id="invframe" class="scrolltext">
You head for the coffee shop and step up to the counter where you are greeted by the bubbly barista-maid <<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
You manage to get some coffee. This time without any incidents holding you up. A strong, hot coffee with a shot of cream in it.<br>
<br>
"@@.npc_barista;Heya! What can I get for you today?@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
As you wait for <<=setup.getNpcName('npc_barista', 'first')>> to prepare <<=ps(setup.getNpcName('npc_manager', 'formal'))>>, coffee you ask her if she might have any suggestions of how you might "improve" your uniform. Turning around, she appears lost in thought for a moment before her eyes light.<br>
<br>
"@@.npc_barista;Ohmygawd, did you just start the A-SLUT programme????@@"<br>
<br>
You hesitate, then nod and she smiles even wider.<br>
<br>
"@@.npc_barista;Oh that is just the best! Becoming A-SLUT was one of the best things that ever happened to me! I am so happy for you!@@"<br>
<br>
<<printThought "Considering how she acts, that's probably true in more senses than she may have meant...">>
<br><br>
"@@.npc_barista;Anyway, my best suggestion is the acronym my bimbo A-SLUT mentor once told me: HTS — Higher, Tighter, Skimpier. That is to say, Higher heels, Tighter clothes and Skimpier cuts! A trife-, trifac-, three things that are just the bestest!@@"<br>
<br>
Looking at <<=setup.getNpcName('npc_barista', 'first')>>, perched on stiletto heels looking ready to explode out of her latex maid's uniform that barely covers much in the first place there is no question she has followed her so-called "advice" to a T. Unsure if the conversation was valuable you decide to just focus on your errand and be on your way as soon as possible.<br>
<br>
<<elseif $scene.bespokeComment>>
<<if $scene.bespokeComment == "all">>
"@@.npc_barista;Girlfriend! Like. OH. MY. GOD! You are like... hotter than espresso and pinker than my favourite candy! Work it gurl! I told you being A-SLUT was the way to get ahead!@@"
<<else>>
<<=setup.getNpcName('npc_barista', 'first')>> lustily eyes your <<=setup.getItemName($scene.bespokeComment)>>.<br>
<br>
"@@.npc_barista;Like, ohmygawd, those are just, like the hottest things in, like, ever! Like, you look sooooo sexy in them. It's making me all wet!... well, no, I mean, I was already wet, I'm ALWAYS wet, I love having plugs in my slut-holes, it's almost as good as having a cock or two in me! Oooh, or three cocks, that's REALLY the best feeling, an airtight airhead! Teehee!@@"<br>
<br>
She pauses, going through the mental reset you've seen her run through before. "@@.npc_barista;Sorry, what were we talking about? Oh right, your new <<=setup.getItemName($scene.bespokeComment)>>! I told you A-SLUT was like, the best thing! I can't wait to see what they have you doing next! Remember, the harder your boss rides you, the better it is in the end. And during!@@"
<</if>>
<br><br>
<<printThought "Wow is she a sex-crazed bimbo. I hope that is <<if setup.getTotalValue('bimbofication') < 10>>not <</if>>a vision of my future.">><br>
<br>
<<elseif !$npc_barista.flags.taughtbimbomakeup && ($npc_barista.flags.makeupoffer || setup.getTotalValue("makeup") >= 10)>>
<<if $npc_barista.flags.makeupoffer>>
<<printThought "She mentioned to ask her for more makeup tips...">>
<<else>>
Though it is quite garish and slutty you can't help but notice that <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> makeup has been quite expertly applied.<br>
<br>
<<printThought "I wonder if she could give me any makeup tips?">>
<</if>>
<br><br>
[<<moveTo "event_work_barista_makeup_1" "Ask her for makeup tips." 360>>]<br>
<</if>>
<<if $npc_barista.flags.milking.first_seen && !$npc_barista.flags.milking.questioned>>
[<<moveTo "event_coffee_milking_explanation_1" 'Ask <<=setup.getNpcName("npc_barista", "nickname")>> about the device attached to her breasts.' 180>>]<br>
<</if>>
[<<moveTo "event_work_coffee_return" 'Fill <<=ps(setup.getNpcName("npc_manager", "formal"))>> order and head back to the office.' 60>>]
</div>/*#
#desc: return from coffee shop
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.work_coffee.coffee_skill > 0>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.flags.work_coffee.coffee_skill > 0>>
You return to your <<=setup.getNpcName("npc_manager","title")>> with her order of <<=$scene.coffeetype.name>>. Taking the cup in hand she frowns.<br>
<br>
"@@.npc_manager;No wonder you took so long, did you go all the way to Coffee Shop 52? While I appreciate the dedication to making sure it is prepared perfectly, the whole point of your training and that machine being installed was to expedite your ability to serve my needs.@@"<br>
<br>
She sighs and waves you out of her office.
<<else>>
You return to your <<=setup.getNpcName("npc_manager","title")>> with her order — a strong, hot coffee with a shot of cream in it.<br>
<br>
"@@.npc_manager;Thank you. You may resume your duties, <<=$player.first_name>>.@@"
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to your desk." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: purchase coffee rather than prepare
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.stage >= 2 && !$npc_barista.flags.can_meet>>
<<set $scene.coffeeszeneScene = "event_barista_secret_note_1">>
<<else>>
<<set $scene.coffeeszeneInfo = setup.getRandomEvent("work_coffee_shop")>>
<<if $scene.coffeeszeneInfo == null>>
<<set $scene.coffeeszeneScene = "event_work_coffee_n_0">>
<<else>>
<<set $scene.coffeeszeneScene = setup.getRandomEventData("work_coffee_shop", $scene.coffeeszeneInfo.eventId).szene>>
<<completeRandomEvent $scene.coffeeszeneInfo.eventId 'work_coffee_shop'>>
<</if>>
<</if>>
<<set $scene.coffeetime = 30>>
<<if $scene.coffeeszeneScene == "event_work_coffee_n_0">>
<<set $scene.coffeetime = (360+Math.round(Math.random()*6)*60)>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Though it will take a bit longer you decide to play things "safe" and go to Coffee Shop 52 rather than attempt to prepare <<=ps(setup.getNpcName("npc_manager","formal"))>> order yourself.<br>
<br>
<<if setup.checkItemWorn('doll_mask')>>
[<<moveTo "event_coffee_kig_1" "Leave the office in the Quest for Coffee." 180>>]
<<else>>
[<<moveTo $scene.coffeeszeneScene "Leave the office in the Quest for Coffee." $scene.coffeetime>>]
<</if>>
</div>/*#
#desc: prepare coffee
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.outofMats = $fetish.milking && !$npc_barista.flags.milking.first_seen && $player.flags.work_coffee.coffee_skill > 7>>
<<if !$scene.outofMats>>
<<set $scene.coffeesuccess = random(0,$scene.coffeetype.diff) <= $player.flags.work_coffee.coffee_skill>>
<<set $scene.coffeeSkillup = $scene.coffeetype.diff >= $player.flags.work_coffee.coffee_skill>>
<<if $scene.coffeeSkillup>>
<<set $player.flags.work_coffee.coffee_skill += 1>>
<</if>>
<<if $scene.coffeesuccess>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $scene.firstStrawberry = $scene.coffeetype.diff == 9 && $player.flags.work_coffee.special_coffee < 1>>
<<if $scene.firstStrawberry>>
<<set $player.flags.work_coffee.special_coffee = 1>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $scene.firstCofferasque = $scene.coffeetype.diff == 10 && $player.flags.work_coffee.special_coffee < 2>>
<<if $scene.firstCofferasque>>
<<set $player.flags.work_coffee.special_coffee = 2>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.outofMats>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.outofMats && !$npc_barista.flags.milking.first_seen>>
You start to brew up some coffee only to discover that the machine is out of beans and its auto-restock application has failed to re-order. With no supplies to work with you have no choice but to head to Cafe 52 to fill your <<=ps(setup.getNpcName("npc_manager","title"))>> order.<br>
<br>
[<<moveTo "event_coffee_milking_first_sight" "To Cafe 52." 300>>]
<<else>>
Using the machine near your desk, you punch in the configurations for <<=ps(setup.getNpcName("npc_manager","formal"))>> order, waiting just a couple of minutes for it to dispense the requested drink. <<if $scene.coffeeSkillup>>Making the attempt to prepare a drink outside of your skill range has caused you to learn a bit more about making coffee. <</if>>You carry the mug into her office and set it on her desk. She takes a sip.<br>
<br>
<<if $scene.coffeesuccess>>
<<if $scene.firstStrawberry>>
"@@.npc_manager;A taste of old times@@" she states with a pleased smile. "@@.npc_manager;And perfectly prepared. Thank you — you are as sweet and delightful as this drink is.@@"
<<elseif $scene.firstCofferasque>>
"@@.npc_manager;What on earth...@@" You hold your breath as she takes another sip. "@@.npc_manager;Is this... a venti, half-whole milk, one quarter one percent, one quarter non-fat, extra hot, one and a half shots decaf, 12 and a half shots regular, no foam latte, with whip, 2 packets of splenda, ten sugar in the raw, a touch of vanilla syrup and 2...@@" She pauses and takes another sip "@@.npc_manager;No... three short sprinkles of ceylon alba cinnamon? <<if $fetish.milking && $player.body_ref.milkProduction > 0>>And... do I taste a hint of your milk? Yes... yes I believe I do.<</if>>@@"<br>
<br>
You blink in surprise as you slowly nod. <<printThought "How on earth could she know that...">><br>
<br>
"@@.npc_manager;This is...@@" She takes another drink. "@@.npc_manager;Well, it is undeniably delicious... if a bit sweet, but it is also easily the most insane, over-complicated drink I have ever even heard of. Thank you.. for taking the initiative, I may well add it to my rotation...@@"
<<else>>
"@@.npc_manager;Lovely@@" she states with a pleased smile. "@@.npc_manager;Perfectly, and promptly, prepared to order. Good girl, this is exactly what I had in mind when I sent you off for barista training.@@"
<</if>>
<br><br>
You curtsy in response and return to your desk.
<<else>>
Her face wrinkles in disgust as she pauses for a moment and then slams the drink back at one shot. "@@.npc_manager;Such a failure, but I do need my caffeine. I expect you to improve things in the future, I want to be able to savour my coffee for something more than its mere invigorating effects.@@"<br>
<br>
You look away in shame and then return to your desk.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: first prepare cofferasque
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.work_coffee.coffee_skill = 10>>
<<set $scene.coffeetype = {"name" : "The Cofferasque... the most challenging of coffees", "diff" : 10}>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You take a deep breath and prepare the most complicated of drinks — the Cofferasque. It takes a bit longer than usual but you're confident you nailed the intricate recipe<<if $fetish.milking && $player.body_ref.milkProduction > 0>>, while adding your own "twist" by squeezing some fresh milk out of your own teats where appropriate<</if>>.<br>
<br>
You take a deep breath and, as if you were carrying a priceless relic, you bring the drink in to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
[<<moveTo "event_coffee_brew_1" "Deliver the artifact." 180>>]
</div>/*#
#desc: turned back due to kigurumi
#status: RELEASED 0.6.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
You board the elevator and hit the button for floor 52 only for the screen to pop up with an error.<br>
<br>
<<printThought "Retinal scan failed?">><br>
<br>
You lean closer but it would seem your locked-on mask has you effectively stuck on this floor.<br>
<br>
[<<moveTo "event_coffee_brew_1" 'Return to the office and attempt to brew <<=ps(setup.getNpcName("npc_manager","formal"))>> order personally.' 300>>]
</div>/*#
#desc: company movers foreshadowing in morning elevator
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_box","npc_box_closed")>>
<div id="invframe" class="scrolltext">
Stepping into the elevator, you are surprised to find another occupant already inside — what looks like a professional mover standing next to a box even taller than <<he>> is.<br>
<br>
The mover nods to you in acknowledgement as you find a safe place to stand next to the large crate you wait for your floor.<br>
<br>
Partway up, you swear you hear a feminine moan coming from inside the box. Glancing over, you are a bit surprised to notice what looks like air holes punched into the upper part of the box amidst the "THIS END UP" signage, though they are far too high up for you to peer inside. The mover doesn't seem to have noticed anything, not so much as glancing in your direction and you listen closer, this time certain you hear another moan. A very... sexual moan... you almost jump as the elevator dings for your floor.<br>
<br>
When you don't hop off immediately, the mover glances at you with a raised eyebrow, as if to remind you that <<he>> has a shipment to deliver. Blushing in embarrassment, you hop off the elevator as the mover and <<his>> strange package continue on up.<br>
<br>
[<<moveTo "room_office_sissy_secretary" 'Head for <<=ps(setup.getNpcName("npc_manager", "formal"))>> office.' 30>>]
</div>/*#
#desc: random events in work bathroom
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.outfitTag = setup.analyzeWornTags(['female','male','unisex'])>>
<<if $scene.outfitTag == "female">>
<<applyExperience 'humiliation' 5 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Work Men's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.outfitTag>>
<<case 'unisex'>>
You're washing your hands when <<if $player.identify_as == "male">>another<<else>>a<</if>> man walks in and suddenly stops.<br>
<br>
"@@.generic_male1;Shouldn't you be in the other—@@"<br>
<br>
You look up at him and he quickly blushes "sorry, didn't mean to offend, but your hips... well... you looked quite ladylike from behind..." <br>
<br>
He quickly looks away and awkwardly continues past to the closest urinal.<br>
<br>
<<printThought "I thought this outfit was supposed to be unisex, does it really make me look like a girl?">>
<<case 'female'>>
You're washing your hands when a man walks in and suddenly stops.<br>
<br>
"@@.generic_male1;Shouldn't you be in the other—@@"<br>
<br>
You look up and he goes silent... and then slowly leers at you.<br>
<br>
"@@.generic_male1;Yup, you DEFINITELY belong in the womens' bathroom. Best be more careful in the future, you never know what might befall a cutie like yourself in a den of testosterone like this.@@"<br>
<br>
He laughs as he walks past towards one of the urinals.<br>
<br>
<<printThought "Maybe I should be using the other restrooms...">>
<<case 'male'>>
You're washing your hands alone in the bathroom when <<if $player.identify_as == "male">>another<<else>>a<</if>> man walks in and heads for the urinal without giving you a second glance.
<<default>>
ERROR: unexpected outfit tag: <<=$scene.outfitTag>>
<</switch>>
<br><br>
<<if !$options.fem>>
<<if setup.getTotalValue("piss") >= 5 && $fetish.piss>>
<<if setup.checkItemTypeTag('plug', ['hollow']) || setup.checkItemTypeWorn("hollow_plug")>>
You think about the hollow plug currently gaping your ass.<br>
<br>
[<<moveTo "event_random_work_bathroom_male_piss_butt" "Ask <<him>> to pee in your butt." 60>>]<br>
<<else>>
[@@.link_locked;You consider having <<him>> piss in your butt, but you aren't really wearing the proper type of plug for it.@@]<br>
<</if>>
[<<moveTo "event_random_work_bathroom_male_piss" 'Offer to "help <<him>> out."' 60>>]<br>
<</if>>
<<if setup.getTotalValue("oral") >= 5>>
<<if !$player.virgin.blowjob>>
[@@.link_locked;You couldn't possibly suck a cock in the work bathroom!@@]<br>
<<else>>
[<<moveTo "event_random_work_bathroom_male_oral" 'Flutter your eyelashes and ask if seeing you maybe has <<him>> feeling a bit... hard...' 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;No way are you going to suck some random cock in the work bathroom!@@]<br>
<</if>>
<<if setup.getTotalValue("anal") > 5>>
<<if $player.sec_style.sex.anal && $player.sec_style.sex.sex_man>>
[<<moveTo "event_random_work_bathroom_male_anal" 'Wiggle your ass and ask if he might "help you out."' 60>>]<br>
<<else>>
[@@.link_locked;You couldn't possibly give up your anal virginity to a random dude in the work bathroom!@@]<br>
<</if>>
<<else>>
[@@.link_locked;No way are you enough into anal to fuck some rando in the work bathroom!@@]<br>
<</if>>
<br>
<</if>>
<<include "lunchMaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: drink piss in male bathroom
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<setThreshold 'piss' 'general_piss' 'work_piss'>>
<<applyExperience 'piss' 12 'normal' $SEEN_STRANGER>>
<<set $player.work.bathroom_events.male.piss += 1>>
<<addCredits 25>>
<</if>>
<<set $player.location to "Work Men's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Hand on his zipper the man stops and looks in your direction as you make your offer.<br>
<br>
"@@.generic_male1;Wow, I thought only executives got this type of service! Hell yeah you can help me out!@@"<br>
<br>
He steps into the handicap stall and you follow behind, dropping to your knees as he whips out his cock. "Now don't make a mess, we both have to get back to work still!" <br>
<br>
You nod as you wrap your lips tightly around his flaccid cock. He lets out a sigh and the nectar begins to flow.<br>
<br>
It isn't the best you've ever taken, tinged with a bitterness from too much coffee, but you gulp it down nonetheless, licking <<him>> clean of every drop before leaning back with a smile.<br>
<br>
"@@.generic_male1;Damn, but that just made my day! Here, call it a tip.@@" <<He>> states, passing you some credits.<br>
<br>
<<include "lunchMaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work male bathroom, piss in your butt
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<setThreshold 'piss' 'general_piss' 'work_piss_butt'>>
<<applyExperience 'piss' 10 'normal' $SEEN_STRANGER>>
<<set $player.work.bathroom_events.male.piss_butt += 1>>
<<addCredits 20>>
<</if>>
<<set $player.location to "Work Men's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You make your offer as the man starts to unzip his fly and he pauses. Glancing over as if to check if you're serious, he finally smiles. "@@.generic_male1;Yeah, that sounds just great!@@"<br>
<br>
You follow <<him>> into the handicap stall before <<he>> closes it behind you like a gentleman.<br>
<br>
Bending over, you stick your ass in the air and <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flip up your skirt<<else>>pull down your pants<</if>> to expose your plugged, gaping ass.<br>
<br>
"@@.generic_male1;Well, well, talk about prepared!@@" He states with a smile, removing the inner plug before sliding his flaccid cock into the exposed hole.<br>
<br>
"@@.generic_male1;Aaaahhhh@@" he groans as you feel the trickle of <<getWordPiss>> flowing into your bowels.<br>
<br>
<<printThought "Wow, I really am a human urinal...">><br>
<br>
Perched in your awkward, head-down position, you wait as you feel his hot <<getWordPiss>> flow into you, waiting quietly until the flow trails off and he gives a few shakes that turn into humping thrusts that almost knock you onto your face. Jamming the "cork" back into your plug, he gives your ass a congratulatory slap that has your insides sloshing around.<br>
<br>
"@@.generic_male1;Damn, but that was fine, you really made my day, honey, here, for your troubles.@@"<br>
<br>
You give a curtsy in thanks for the credits he hands you, fixing your clothes as he departs.<br>
<br>
<<include "lunchMaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work male bathroom, anal sex
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' 8 'little' $SEEN_FRIEND>>
<<changeHorny 20>>
<<set $player.work.bathroom_events.male.anal += 1>>
<</if>>
<<set $player.location to "Work Men's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
From the moment the man's eyes drift to your ass, you know you have <<him>>. Pants bulging, all thoughts of his original reason for visiting the restroom are gone as he grins and leads the way into the large handicap stall, even holding the door like a gentleman.<br>
<br>
He may be a gentleman, but you are a randy slut, immediately bending over and bracing your hands on the toilet as you <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flip up your skirt<<else>>pull down your pants<</if>>.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.pc;Come on, shove it in, I'm sooo horny@@" you moan.
<<else>>
Sliding the <<=setup.getItemTypeName('plug')>> out of your ass, you let out a little moan. "@@.pc;Hurry up, I hate feeling empty...@@"
<</if>>
<br><br>
<<He>> doesn't leave you waiting, almost knocking you forward as he slams <<his>> cock into your ass. You gasp and push back, forcing <<him>> all the way deep until his balls are slapping against you.<br>
<br>
"@@.generic_male1;Damn, slut! You fucking love this! I don't know what it says on your payslip, but you are a total anal whore aren't you? Say it, say it you slut!@@"<br>
<br>
<<He>> punctuates <<his>> command with long hard thrusts and there is no way you can resist, moaning and gasping as you cry out "@@.pc;I'm an anal whore!@@"<br>
<br>
<<He>> cums with a shout, almost crushing you as he collapses onto your back.<br>
<br>
"@@.generic_male1;Now that is what I call grade A ass, good job, slut!@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.pc;Come on, shove it back in, I need it@@" you moan.
<<else>>
Locating your <<=setup.getItemTypeName('plug')>>, <<he>> roughly shoves it back into your hole. "@@.generic_male1;There, so you don't lose any of my present.@@" Laughing at <<his>> joke he stuffs a few credits into your clothes before walking away.
<</if>>
<br><br>
Waiting until <<he>> has left, you stagger back to your feet and fix your clothes.<br>
<br>
<<include "lunchMaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work male bathroom, suck cock
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' 8 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<addCredits 25>>
<<setThreshold 'oral' 'anonymous_oral' 'work'>>
<<set $player.work.bathroom_events.male.blowjob += 1>>
<</if>>
<<set $player.location to "Work Men's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
The man grins at your offer and you flick your eyes in the direction of one of the stalls and make the fist, tongue and cheek combo universal blowjob gesture.<br>
<br>
Running like a schoolboy, he's through the door and has his pants down to his ankles before you can even drop to your knees.<br>
<br>
His cock relatively unremarkable, the fact that you're about to suck someone off in the work bathroom "makes up for it" and you grab it with both hands and open your lips wide.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
You've barely started to deploy your considerable skill when he gasps and explodes.
<<else>>
You start in on your basic, but practiced, routine, but you've barely gotten beyond a bit of lick and suck when he cums with a moan.
<</if>>
Your eyes flash with disappointment as you look up at <<him>>, but he doesn't even notice, merely groaning as you suck every drop of <<man>>-filling out of his member.<br>
<br>
<<printThought "Huh, guess he's a bit of a hair trigger.">><br>
<br>
"@@.generic_male1;Hot damn, you're an angel!@@" <<He>> congratulates. "@@.generic_male1;I, uh... better get back to work@@" <<he>> quickly adds, as if suddenly realising where he is and the fact that he forgot to even close the door to the stall behind you. <<He>> drops a few credits into your hands before zipping up and hurrying away.<br>
<br>
<<include "lunchMaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work male bathroom, overhear people talking
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.unisex == "enthusiast">>
<<set $player.work.bathroom_comments.male.start = true>>
<</if>>
<<if $player.sec_style.clothing.female == "enthusiast">>
<<set $player.work.bathroom_comments.male.unisex = true>>
<</if>>
<<set $scene.stage = setup.calcProgressiveScene($player.work.bathroom_comments.male)>>
<<set $player.work.bathroom_comments.male[$scene.stage] = true>>
<</if>>
<<set $player.location to "Work Men's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You're sitting in a private stall doing your business when you overhear a pair of men chatting.<br>
<br>
<<switch $scene.stage>>
<<case 'start'>>
"@@.generic_male1;So, you see <<=setup.getNpcName('npc_manager', 'other')>> got a new secretary?@@"<br>
<br>
<<printThought "Wait, they're talking about me!">><br>
<br>
"@@.generic_male2;Yeah, I'm really going to miss seeing <<=setup.getNpcName('npc_secretary', 'first')>> around, wonder how long this new guy will last?@@"<br>
<br>
"@@.generic_male1;Never know, though I gotta say, he has some nice hips!@@"<br>
<br>
"@@.generic_male2;He?@@" They both laugh as it was some hilarious inside joke, their voices fading as they leave the restroom and you finish up.
<<case 'unisex'>>
"@@.generic_male1;You catch the new outfit <<=ps(setup.getNpcName('npc_manager', 'other'))>> girl is wearing?@@"<br>
<br>
"@@.generic_male2;Girl? I mean, sure, from behind, but he needs more than just some tight clothes.@@"<br>
<br>
"@@.generic_male1;True, true, well, give it time, I suppose.@@"<br>
<br>
Their voices fade as they leave the bathroom and you are left alone.<br>
<br>
<<printThought "Give it time? What's the deal with this job?">>
<<case 'female'>>
"@@.generic_male1;How about that new girl, eh? Lookin' pretty good!@@"<br>
<br>
"@@.generic_male2;I suppose, I mean you're an ass man so I understand, but me... if I can't wrap my hands around a nice set of tits...@@"<br>
<br>
"@@.generic_male1;Two hands full, amirite?@@"<br>
<br>
Their laughter fades as they walk out of the restroom.<br>
<br>
<<printThought "Wait... were they talking about me?">>
<<case 'pink'>>
"@@.generic_male1;Did you see? <<=setup.getNpcName('npc_manager', 'other')>> looks to have finally set some proper uniform requirements.@@"<br>
<br>
"@@.generic_male2;Really? I'll have to keep an eye out. It's about time though, it just seems wrong for her secretary not to be all cute and pink.@@"<br>
<br>
"@@.generic_male1;Yup, yup, wish I had that level of authority over my admin, you believe she only wears four centimetre heels?@@"<br>
<br>
"@@.generic_male2;Women these days, barely even trying.@@"<br>
<br>
Their voices fade as you finish up your business.
<<case 'breastssmall' 'breastsmed' 'breastslarge' 'breastsmassive'>>
"@@.generic_male1;Hey, you see the slut finally got some work done?@@"<br>
<br>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
"@@.generic_male2;Did she! Whew, she looked about ready to fall over when I saw her walking down the hall! Fucking beautiful.@@"
<<case 'large'>>
"@@.generic_male2;Yup, and a nice large pair, too, perfect size to slide you cock between!@@"<br>
<br>
"@@.generic_male1;You cad! You know she's claimed property.@@"<br>
<br>
"@@.generic_male2;Hey, can't blame a guy from fantasising, right?@@"
<<case 'medium'>>
"@@.generic_male2;Yeah, not bad, could be a little bigger though.@@"<br>
<br>
"@@.generic_male1;Of course you'd say that — if it was up to you no girl would have tits smaller than her head!@@"<br>
<br>
"@@.generic_male2;Come on! Saying something like that in the middle of the day! Fuck, I'm going to be sitting funny for an hour if I can't find someone for relief, you know if Sharron's free?@@"<br>
<br>
"@@.generic_male1;I think she was booked for some meeting over in conference room 3 all day...@@"<br>
<br>
"@@.generic_male2;Damn, lucky slut...@@"<br>
<br>
<<printThought "What are they talking about?">>
<<case 'small'>>
"@@.generic_male2;I mean, sure, technically, hardly even counts, I mean I bet they wouldn't even fill her cute hands, much less mine!@@"<br>
<br>
"@@.generic_male1;True, true, but still, baby steps, those procedures take time to get everything to look natural.@@"<br>
<br>
"@@.generic_male2;Natural, smatcheral, just bolt a pair of soccer balls to the slut's chest, that'll do her!@@"<br>
<br>
"@@.generic_male1;Hah, you reprobate!@@"
<</switch>>
<br><br>
Their voices fade as you are left to contemplate their words.
<<case 'generic'>>
<<switch random(4)>>
<<case 1>>
"@@.generic_male1;So, what's the story with the contract, you think we'll close it this quarter?@@"<br>
<br>
"@@.generic_male2;Lord I hope so, the point of contact has been fucking my assistant enough!@@"<br>
<br>
"@@.generic_male1;I hear that...@@"
<<case 2>>
"@@.generic_male1;You catch the game last night?@@"<br>
<br>
"@@.generic_male2;Yeah, fucking refs!@@"<br>
<br>
"@@.generic_male1;Seriously! I swear, sometimes I wish they'd do a more serious solution. Sometimes I wonder what would happen if they went all out and had Valkyries enforce the rules on the field!@@"<br>
<br>
"@@.generic_male2;Well, THAT would certainly give a new meaning to play review!@@"<br>
<br>
They laugh.
<<case 3>>
"@@.generic_male1;You coming to the poker game this week?@@"<br>
<br>
"@@.generic_male2;Sure, if you promise not to clean me out again!@@"<br>
<br>
"@@.generic_male1;Hey, not my fault you're so easily distracted! Focus on the action on the table, not under it!@@"<br>
<br>
"@@.generic_male2;Hah, easy for you to say! How much longer are you locked up, again?@@"<br>
<br>
"@@.generic_male1;Don't remind me...@@"
<<default>>
Whatever they're saying is too full of corporate jargon for you to understand, or care.
<</switch>>
<br><br>
Their voices fade as you finish up your business.
<<default>>
ERROR: unexpected scene.stage <<=$scene.stage>>
<</switch>>
<br><br>
<<include "lunchMaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: random events in work female bathroom
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_sissy_secretary_catchup = $npc_manager.stage >= 2 && $npc_sissy_secretary.stage == 0 && previous() == "room_office_sissy_secretary_work_lunchbreak">>
<<if $scene.npc_sissy_secretary_catchup>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addRandomEvent $randomEvents['work_coffee_shop'] 'coworker_sissy_secretary' _nextDate>>
<<set $npc_sissy_secretary.stage = 1>>
<<registerProgressionEvent>>
<<if $player.sec_style.body.name != "" && !$npc_sissy_secretary.flags.reactnamechange>>
<<set $npc_sissy_secretary.flags.reactnamechange = true>>
<</if>>
<<else>>
<<set $scene.penis = (random(30) <= setup.getTotalValue("penis"))>>
<<set $scene.manager_interrupt = (random(10) <= $npc_manager.stage)>>
<</if>>
<</if>>
<<set $player.location to "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $scene.npc_sissy_secretary_catchup>>
You're about to head into the women's bathroom when a janitor puts an "in service" marker over the men's room door. Just as the janitor disappears inside to do their work someone in a skirt walks up... only to be stymied at the men's room door.<br>
<br>
"@@.npc_sissy_secretary;Damn, guess I'll have to head up a floor...@@" They curse before noticing your attention. "@@.npc_sissy_secretary;Oh, hey, I'm <<=setup.getNpcName('npc_sissy_secretary', 'full')>> — I guess the outfit is a bit confusing but trust me, I'm all man where it counts.@@"<br>
<br>
You react nonplussed and he shrugs "@@.npc_sissy_secretary;I guess you're maybe a bit curious why I'm dressed like this? Well, you see, I've been working here as a secretary for a little while and, well... found a little trick in the contract in that the pay structure is actually accelerated if you follow the women's portion of the dress code so...@@"<br>
<br>
He gestures towards himself. His frame isn't particularly bulky, so the outfit doesn't look terrible, even if he's lacking in the "curves" department. He hasn't bothered with anything past the clothes and shoes as his lack of makeup, short fade hair-cut and masculine jawline serve to seemingly purposefully clash with the outfit.<br>
<br>
You nod, introducing yourself in turn
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'female'>>
noting that you had learned something similar.<br>
<br>
"@@.npc_sissy_secretary;Heh, yeah, but you were getting on that gravy train from day one, well, I'll let you get to it, I need to catch the elevator before I have an accident!@@"
<<case 'unisex'>>
noting that you've noticed something similar.<br>
<br>
He nods, "@@.npc_sissy_secretary;Yeah, you really have the hips for it, you should make the jump to a full skirt, it's so freeing!@@" His voice drops as if telling a secret. "@@.npc_sissy_secretary;Plus, well... I did some research and there are literally zero secretaries working the upper executive floors that dress like men. Anyway, I need to find a men's room, catch you later!@@"
<<case 'male'>>
as you compliment him on the outfit.<br>
<br>
He grins, and looks at you in puzzlement. "@@.npc_sissy_secretary;Weird that you wouldn't just take advantage of that policy anyway, being that you're a girl.@@" He nods towards the restroom door that you are still reaching for. "@@.npc_sissy_secretary;Hey, far be it from me to question someone else's clothing decisions, right? I mean I'm just a dude in a dress! But it's cool, just for the money am I right? You should consider it, those feminine hips of yours... they'd look great in a skirt, I bet! Plus... I've done research and there are literally ZERO secretaries working the upper, executive floors that dress like men. Anyway, I need to find a men's room, catch you later!@@"
<<default>>
ERROR, unexpected clothing tag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
He dashes away up the hallway and you shrug.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom." 60>>]
<<else>>
Having finished doing your business you fix your clothes and exit the stall just as a businesswoman walks in. Prim and proper in a double breasted suit and a knee-length pencil skirt she has the look of a lawyer. <<if $scene.penis>>Your gaze drifts lower... is that a bulge between her legs?<</if>><br>
<br>
<<if setup.analyzeWornTags(['female','male','unisex']) == 'male'>>
Seeing you she stops in her tracks, the fact that there is a male in the women's bathroom seeming to have caught her off-guard.<br>
<br>
"@@.generic_female1;Are you lost?@@" She asks before continuing past on her way towards an empty stall.
<<else>>
Giving you a mere nod she move past you towards an empty stall.
<</if>>
<br><br>
<<if setup.getTotalValue("piss") >= 5 && $fetish.piss>>
<<if setup.checkItemTypeTag('plug', ['hollow']) || setup.checkItemTypeWorn("hollow_plug")>>
You think about the hollow plug currently gaping your ass.<br>
<br>
[<<moveTo "event_random_work_bathroom_female_piss_butt" "Ask her to pee in your butt." 60>>]<br>
<<else>>
[@@.link_locked;You consider asking her to piss in your butt, but you aren't really wearing the proper type of plug for it.@@]<br>
<</if>>
[<<moveTo "event_random_work_bathroom_female_piss" 'Offer to "help her out."' 60>>]<br>
<</if>>
<<if setup.getTotalValue("oral") >= 5>>
<<if !$player.virgin.cunnilingus>>
<<if $player.virgin.blowjob>>
[@@.link_locked;Despite having sucked cock you can't bring yourself to have your first experience of cunnilingus be offering oral sex to a random woman in the work bathroom.@@]<br>
<<else>>
[@@.link_locked;You couldn't possibly offer oral sex to a random woman in the work bathroom!@@]<br>
<</if>>
<<else>>
[<<moveTo "event_random_work_bathroom_female_oral" 'Flutter your eyelashes and ask if you could lend her your tongue...' 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;No way are you going to ask to eat out some random woman in the work bathroom!@@]<br>
<</if>>
<<if $scene.penis>>
<<if setup.getTotalValue("anal") > 5>>
<<if !$player.sec_style.sex.sex_woman>>
[@@.link_locked;You aren't going to have your first time with a woman be some random woman in the work bathroom!@@]<br>
<<elseif !($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
[@@.link_locked;You couldn't possibly give up your anal virginity to a random woman in the work bathroom!@@]<br>
<<else>>
[<<moveTo "event_random_work_bathroom_female_anal" 'Wiggle your ass and ask if she might "help you out."' 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;No way are you enough into anal to fuck some random woman in the work bathroom!@@]<br>
<</if>>
<</if>>
<br>
<<include "lunchFemaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: work female bathroom, anal sex
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' 8 'little' $SEEN_FRIEND>>
<<changeHorny 20>>
<<set $player.work.bathroom_events.female.anal += 1>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "voluntary">>
<</if>>
<</if>>
<<set $player.location to "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
From the moment the woman's eyes drift to your ass, you know you have her. Skirt bulging, all thoughts of her original reason for visiting the restroom are gone as she grins and leads the way into the large handicap stall, even holding the door like a lady.<br>
<br>
She may have manners, but you are a randy slut, immediately bending over and bracing your hands on the toilet as you <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flip up your skirt<<else>>pull down your pants<</if>>.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.pc;Come on, shove it in, I'm sooo horny@@" you moan.
<<else>>
Sliding the <<=setup.getItemTypeName('plug')>> out of your ass, you let out a little moan. "@@.pc;Hurry up, I hate feeling empty...@@"
<</if>>
<br><br>
She doesn't leave you waiting, almost knocking you forward as she slams her girl-cock into your ass. You gasp and push back, forcing her all the way deep until her balls are slapping against you.<br>
<br>
"@@.generic_female1;Damn, slut! You fucking love this! I don't know what it says on your payslip, but you are a total anal whore aren't you? Say it, say it you slut!@@"<br>
<br>
She punctuates her command with long hard thrusts and there is no way you can resist, moaning and gasping as you cry out "@@.pc;I'm an anal whore!@@"<br>
<br>
She cums with a shout, almost crushing you as she collapses onto your back.<br>
<br>
"@@.generic_female1;Now that is what I call grade A ass, good job, slut!@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.pc;Come on, shove it back in, I need it@@" you moan.
<<else>>
Locating your <<=setup.getItemTypeName('plug')>>, she roughly shoves it back into your hole. "@@.generic_female1;There, so you don't lose any of my present.@@" Laughing at her joke she stuffs a few credits into your clothes before walking away.
<</if>>
<br><br>
Waiting until she has left, you stagger back to your feet and fix your clothes.<br>
<br>
<<include "lunchFemaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work female bathroom drink pee
#status: FINISHED 0.7.0.0
#ignore_spell: i'msosorrypleasedon'tfireme
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.successChance = 1 + setup.checkVisibleClothingTag('slutty')/10>>
<<if setup.getCurrentMakeup() != "" && $player.makeup.messed > 50>>
<<set $scene.successChance += 1>>
<</if>>
<<set $scene.success = (random(10) < $scene.successChance)>>
<<if $scene.success>>
<<setThreshold 'piss' 'general_piss' 'work_piss'>>
<<applyExperience 'piss' 11 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<set $player.work.bathroom_events.female.piss += 1>>
<</if>>
<<set $scene.managerDrink = $scene.success && $scene.manager_interrupt || ((getUTCHours($now)>12 || getUTCMinutes($now) > 30) && $npc_manager.stage > 2)>>
<</if>>
<<set $player.location to "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You hurriedly ask if you could have the privilege of drinking the woman's pee.<br>
<br>
She pauses with one hand on the stall door, slowly looking you up and down with a neutral expression.<br>
<br>
<<printThought "Wow, I feel like a piece of meat being graded for use...">><br>
<br>
<<if $scene.success>>
"@@.generic_female1;Hmm, yes, that sounds... agreeable.@@" She states.<br>
<br>
<<if $scene.penis>>
You quickly file after her into the spacious stall as she hikes up her skirt to reveal... a penis.<br>
<br>
<<if setup.getTotalValue("penis") > 10>><<printThought "Yum!">><<else>><<printThought "Another one? how common are these?">><</if>><br>
<br>
On your knees, you obediently open your mouth for her soft girl-cock, gently sealing your lips around the oh-so-tasty member.
<<else>>
Filing after her into the spacious stall she pulls her skirt down to her knees to reveal a smooth puss.<br>
<br>
"@@.generic_female1;Come on, kiss it.@@" She commands and you lean in, wrapping your lips tight so as not to let any dribble down your chin.
<</if>>
She lets out a sigh and unleashes her flow.<br>
<br>
You gulp as swiftly as you can, her <<getWordPiss>> tasty, though you have little chance to enjoy it as you must drink quickly to keep up.<br>
<br>
"@@.generic_female1;Ahhh,@@" she says with relief as she finishes. You give her a few licks to clean everything up, but she places a hand on your head to push you away. "@@.generic_female1;Sorry, cutie, but I don't have time for that right now, thanks for the help!@@"<br>
<br>
<<if $scene.managerDrink>>
Rising to her feet she opens the stall door only to come face to face with <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;And just what, EXACTLY, where you doing with my secretary?@@"<br>
<br>
The woman's prior playful confidence goes right out the window under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> withering gaze. "@@.generic_female1;I, um, she offered, I mean, I was just, uh, I'msosorrypleasedon'tfireme.@@"<br>
<br>
Your <<=setup.getNpcName('npc_manager', 'title')>> lets the woman squirm under her withering gaze for a few more moments before nodding. "@@.npc_manager;Next time think before you make use of someone else's property — or you might become property yourself.@@"<br>
<br>
"@@.generic_female1;Yes, of course, I really didn't, I, just—@@"<br>
<br>
"@@.npc_manager_dom;Out.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states, cutting the woman off as she points towards the door and redirects her full attention towards you. Bowing as she quickly backs away the woman rushes out of the bathroom.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, <<=$player.first_name>>, <<=$player.first_name>>... my sweet, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>... here it is, after your lunch break is over and you are nowhere to be seen! And then I come in here and... well...@@" She shakes her head. "@@.npc_manager;If you were thirsty, you really should have mentioned it, but, since we are here, how about you give me some relief.@@"<br>
<br>
Without even looking she reaches back to close the stall door.<br>
<br>
[<<moveTo "event_random_work_bathroom_female_piss_manager" "Have another drink." 60>>]
<<else>>
Fixing her clothes she walks around you and heads off.
<</if>>
<<else>>
"@@.generic_female1;No, I think not. Run along, now, <<if setup.analyzeWornTags(['female','male','unisex'])== 'male'>>boy<<else>>girl<</if>>.@@"<br>
<br>
<<printThought "Hmm, I wonder what she was looking for? Maybe if I looked more slutty and trashy?">><br>
<br>
She steps into the stall and latches the door behind her.
<</if>>
<br><br>
<<if !$scene.success || !$scene.managerDrink>>
<<include "lunchFemaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<br>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: manager has you drink her piss after catching you in the bathroom after the end of your lunchbreak
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'piss' 8 'normal' $SEEN_FRIEND>>
<<setThreshold 'piss' 'general_piss' 'work_piss_manager'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $player.work.bathroom_events.female.piss_manager = true>>
<<if !$player.virgin.cunnilingus>>
<<set $player.virgin.cunnilingus = 'npc_manager'>>
<<set $player.sec_style.sex.cunnilingus = 'forced'>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<<if setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_7') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_7'
7
'event_psychiatrist_theme_good_girl_oral_manager_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You haven't even risen from your knees since <<=setup.getNpcName('npc_manager', 'formal')>> barged in and now you find yourself quickly shuffling in between her legs as she exposes herself.<br>
<br>
Pressing your lips against hers, you feel her relax, her crystal clear draught flowing down your throat, tingling as it passes over your tongue.<br>
<br>
She says not a word the whole time, merely staring down into your up-turned eyes as you gulp and swallow.<br>
<br>
The flow tapers off to nothing and you start to lean back only for her to grab the back of your head and hold you in place, as irresistible as a vice.<br>
<br>
"@@.npc_manager;No, I think you need to do a bit more down there... unless you would rather I punish you for your tardiness?@@"<br>
<br>
"@@.pc;No miff-treff@@" You reply, your words muffled against her groin.<br>
<br>
<<if $npc_manager.call != "Mistress">>
<<printThought "Wait... Mistress? Why did I say that?">><br>
<br>
<</if>>
"@@.npc_manager;Good, now show me how your <<if $fetish.sissy>>SISSI<<else>>girl<</if>> oral skills are developing.@@"<br>
<br>
Running your tongue between her folds in search of her lovely clit, the mild taste of her urine is soon overpowered by her strong, deep womanly flavour. Sucking with your lips, your tongue dances a merry jig, making spiraling around her sensitive clit before sprinting up and down over it.<br>
<br>
You feel her shudder slightly, though she suppresses all but the barest gasp to signal your effectiveness. Her hold on your head tightens and she grinds against your face before finally letting out a satisfied sigh and relaxing her grasp.<br>
<br>
"@@.npc_manager;Not bad, we still need to spend time working on your stamina but... not bad.@@"<br>
<br>
Turning, she opens the stall door only to glance back at you, still kneeling on the floor.<br>
<br>
"@@.npc_manager;Well, come on. You have work to do! You cannot just spend the rest of the day HERE as a human urinal.@@"<br>
<br>
<<if $player.sec_style.submission.human_toilet == "">>
<<printThought "Wait... does that mean I could spend the day as a urinal somewhere else?">><br>
<br>
<</if>>
You rise to your feet and quickly follow after her.<br>
<br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Follow her back to your desk." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
"@@.npc_manager;What do you think you are doing? Get back into your work outfit!@@"<br>
<br>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
"@@.npc_manager;What do you think you are doing? Get changed into something work appropriate!@@"<br>
<br>
<<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work female bathroom pee in your butt
#status: FINISHED 0.7.0.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.successChance = 1 + setup.checkVisibleClothingTag('slutty')/10>>
<<if setup.getCurrentMakeup() != "" && $player.makeup.messed > 50>>
<<set $scene.successChance += 1>>
<</if>>
<<set $scene.success = $scene.penis && (random(10) <= $scene.successChance)>>
<<if $scene.success>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<setThreshold 'piss' 'general_piss' 'work_piss_butt'>>
<<applyExperience 'piss' 10 'normal' $SEEN_STRANGER>>
<<set $player.work.bathroom_events.female.piss_butt += 1>>
<</if>>
<</if>>
<<set $player.location to "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $scene.success>>
"@@.generic_female1;In your butt? Oh... that sounds fun!@@" She bites her lip as she ducks into the stall and you quickly follow.<br>
<br>
Closing the door, you turn around to find her already ready, her skirt hiked up and her cock in hand. "@@.generic_female1;Come on now, <<if $fetish.sissy>>sissy<<else>>girl<</if>>!@@" She says with a smile. "@@.generic_female1;Let's see that ass so I can fill you up!@@"<br>
<br>
You do as you're told, turning around and bending over before revealing your plugged hole.<br>
<br>
"@@.generic_female1;Ah, all stopped up, lovely, we wouldn't want you leaking any of what I gift you now, would we?@@"<br>
<br>
"@@.pc;N-n-no, Mistress@@" you reply as she removes the inner plug and grabs you by the hips to slide her cock into your hollow gaping hole.<br>
<br>
You moan as you feel her <<getWordPiss>> flowing into you. She must have drunk quite a lot of coffee this morning because it continues on for quite some time before she lets out a sigh of relief and swiftly swaps back in your plug.<br>
<br>
"@@.generic_female1;Aww, you look so full!@@" She states, patting you on the tummy. You can feel yourself slosh a bit, but the plug does its job, preventing a single drop from leaking out.<br>
<br>
Leaning over, you gently lick her penis clean as she strokes your hair. "@@.generic_female1;Aren't you a good girl! Well, I'd love to make use of that mouth more, but I have a meeting to get to. Have a good day, or should I say... continue to enjoy it?@@"<br>
<br>
She quickly departs as you take a moment to adjust your clothes.
<<else>>
"@@.generic_female1;In your butt? No, that would make far too much of a mess, I think. Good day.@@"<br>
<br>
<<printThought "Hmm, did I ask the wrong woman, or do I just not look trashy enough for that sort of thing?">><br>
<br>
She steps into the stall, loudly latching the door behind her.
<</if>>
<br><br>
<<include "lunchFemaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work female bathroom oral sex
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 9 'normal' $SEEN_STRANGER>>
<<addCredits 15>>
<<set $scene.successChance = 1 + setup.checkVisibleClothingTag('female')/10>>
<<if setup.getCurrentMakeup() != "" && $player.makeup.messed < 25>>
<<set $scene.successChance += 1>>
<</if>>
<<set $scene.success = $scene.penis || (random(10) < $scene.successChance)>>
<<if $scene.success>>
<<if $scene.penis>>
<<applyExperience 'oral' 8 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<set $player.work.bathroom_events.female.blowjob += 1>>
<<else>>
<<applyExperience 'oral' 5 'little' $SEEN_STRANGER>>
<<set $player.work.bathroom_events.female.cunnilingus += 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You ask if she might be in need of some other "relief." <br>
<br>
She pauses with one hand on the stall door, slowly looking you up and down with a neutral expression.<br>
<br>
"@@.generic_female1;And what form might that take?@@"<br>
<br>
<<if $player.flags.humiliationStyle == "brazen">>
You smile and bluntly reply that you'd love to lick her cunt.
<<if $scene.penis>>
<br><br>
"@@.generic_female1;Hmm... cunt, how about something else?@@" She reaches down to cup her bulge suggestively.<br>
<br>
You smile and reply that you are prepared to give an oral presentation on any topic.
<</if>>
<<else>>
You reply that, maybe, you could, like, use your tongue for something other than talking?
<</if>>
<br><br>
<<if $scene.success>>
"@@.generic_female1;Hmm, yes, that sounds... agreeable.@@"<br>
<br>
You follow her into the stall where she sits on the edge of the toilet, spreads her legs and slides up her skirt.<br>
<br>
<<if $scene.penis>>
Her girlcock looks huge held between her dainty fingers and you quickly shuffle between her legs and lean in.<br>
<br>
Her already hard cock is a delight against your lips as you bob your head, steadily sliding more and more of it into your mouth.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
With practiced ease you deepthroat her entire length on the first attempt. She gasps, obviously surprised to find someone skillful enough to so casually accommodate her length.<br>
<br>
Spurred on you give a little hum of pleasure before bobbing your head up and down, enjoying the feeling of her cock pumping in and out of your throat as you lick and suck and slurp.
<<else>>
A touch longer than you're quite capable of taking you gag slightly before retreating, spending some time twirling your tongue over her sensitive tip before pulling off completely and running your lips up and down her shaft.<br>
<br>
"@@.generic_female1;Mmmm, good girl...@@" she encourages as you continue to lick and suck, taking a short detour all the way down to her perfect hairless balls.<br>
<br>
Using your hand to stroke you focus your mouth on her tip, tilting your head back to watch her face as she bites her lip and makes cute little gasps.
<</if>>
<br><br>
You wonder if she might have a touch of an exhibitionist streak with how fast she cums from getting head in a public bathroom, but you don't think on it long, focused more on licking up her thin, but delicious, girl-cum.<br>
<br>
"@@.generic_female1;That was nice,@@" she states, wiping a stray drop of semen from your cheek where you daintily suck her fingertip clean. "@@.generic_female1;So cute, well, I need to return to work soon and I am sure someone else will be missing your cute mouth before long!@@"
<<else>>
Her cunt is smooth and hairless and very inviting, glistening with arousal as you drop to your knees in front of her.<br>
<br>
Leaning in, you extend your tongue and gently lick, she smiles down and shakes her head in amusement. "@@.generic_female1;Very cute, but it's not THAT delicate, and I don't have that much time, get in there good, <<if $fetish.sissy>>sissy<<else>>girl<</if>>, I want to cum.@@"<br>
<br>
You lean in closer and start rapidly licking, your tongue sliding between her folds to probe her entrance and swirl around her clit.<br>
<br>
"@@.generic_female1;Oh yeah... that's it@@" she moans as you maintain your efforts. You hear her breaths coming faster and faster until she finally digs her fingers into your hair, raising her hips and pulling you in as she moans with orgasm. Pressed so close you're unable to breathe you frantically lick for as long as you can until you are finally forced to pull back, panting and trailing a few thin threads of girljuice.<br>
<br>
Leaning back, she is still catching her breath. "@@.generic_female1;Wow... so, I guess I needed that, heh.@@"<br>
<br>
You smile and rise to your feet as she sits and recovers.
<</if>>
<br><br>
Pulling down her skirt, she motions for you to depart so she can do what she originally came in for. You give a quick curtsy and leave her to it.
<<else>>
"@@.generic_female1;Hmm, an intriguing offer, but I shall have to pass, good day.@@"<br>
<br>
<<if setup.getTotalValue("feminization") < 10>>
<<printThought "Damn, maybe if I looked more feminine?">>
<<else>>
<<printThought "Guess she's just not interested">>
<</if>>
<br><br>
She steps into the stall and latches the door behind her.
<</if>>
<br><br>
<<include "lunchFemaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: work female bathroom, overhear people talking
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.unisex == "enthusiast">>
<<set $player.work.bathroom_comments.female.start = true>>
<</if>>
<<if $player.sec_style.clothing.female == "enthusiast">>
<<set $player.work.bathroom_comments.female.unisex = true>>
<</if>>
<<set $scene.stage = setup.calcProgressiveScene($player.work.bathroom_comments.female)>>
<<set $player.work.bathroom_comments.female[$scene.stage] = true>>
<</if>>
<<set $player.location to "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You're sitting in a private stall doing your business when you overhear a pair of women chatting.<br>
<br>
<<switch $scene.stage>>
<<case 'start'>>
"@@.generic_female1;Hey, you see they got a replacement for <<=setup.getNpcName('npc_secretary', 'first')>>?@@"<br>
<br>
"@@.generic_female2;Yeah, he's kind of cute, a bit wimpy though.@@"<br>
<br>
"@@.generic_female1;Yeah, well, maybe that'll be better for him, can't imagine some strapping manly man pulling off being <<=ps(setup.getNpcName('npc_manager', 'last'))>> secretary.@@"<br>
<br>
"@@.generic_female2;Hah! No kidding.@@"<br>
<br>
Their voices fade as you finish up your business.
<<case 'unisex'>>
"@@.generic_female1;So it looks like that new secretary is FINALLY getting with the programme.@@"<br>
<br>
"@@.generic_female2;I know, right? I mean, sure he's technically male or whatever, but it just looks bad for all of us administrative assistants when someone dresses so, like... DULL.@@"<br>
<br>
Their voices fade as you finish up your business.
<<case 'female'>>
"@@.generic_female1;You know I was thinking we should like, send a fruit basket or something to welcome the new girl to the team.@@"<br>
<br>
"@@.generic_female2;Hmm, not a bad idea, I'll see if I can come up with some ideas.@@"<br>
<br>
Their voices fade as you finish up your business.
<<case 'pink'>>
"@@.generic_female1;You see the new girl's cute uniform?@@"<br>
<br>
"@@.generic_female2;Did I? She is just totes adorbs! Gotta say, <<=setup.getNpcName('npc_manager', 'last')>> really does seem to have the magic touch when it comes to grooming her assistants.@@"<br>
<br>
"@@.generic_female1;Hah, sounds like you want to work for her!@@"<br>
<br>
"@@.generic_female2;Well... I mean... did you hear about the promotion her last girl got? Seems like it's a fast-track to the top.@@"<br>
<br>
"@@.generic_female1;Top... by the way of bottom! I mean she works her girls hard, it ain't a free ride...@@"<br>
<br>
"@@.generic_female2;True, though I hear there is a bit of riding involved...@@"
<<case 'breastssmall' 'breastsmed' 'breastslarge' 'breastsmassive'>>
"@@.generic_female1;Hey, you see <<=ps(setup.getNpcName('npc_manager', 'last'))>> tramp got some work done?@@"<br>
<br>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
"@@.generic_female2;Tell me about it! I swear I don't know how she doesn't just fall over! It's lewd, is what it is.@@"<br>
<br>
"@@.generic_female1;Yeah, but the <<if $options.fem>>executives<<else>>men<</if>> like 'em that way.@@"<br>
<br>
"@@.generic_female2;Pigs.@@"<br>
<br>
"@@.generic_female1;Preaching to the choir, sister, preaching to the choir.@@"
<<case 'large'>>
"@@.generic_female2;I know, I mean it's decent work but, like I'm always a bit jealous when someone cheats their way up.@@"<br>
<br>
"@@.generic_female1;Hey, we can't all be blessed with your genes. Let technology make the world a better place.@@"<br>
<br>
"@@.generic_female2;Yeah, I suppose you're right.@@"
<<case 'medium'>>
"@@.generic_female2;Yeah, good work too, a nice cute pair for a cute girl.@@"<br>
<br>
"@@.generic_female1;Eh, I think she could have gone bigger.@@"<br>
<br>
"@@.generic_female2;Hah, of course you'd say that, you think anything under double D's is flat-chested.@@"<br>
<br>
"@@.generic_female1;Well, I mean... it kinda is?@@"
<<case 'small'>>
"@@.generic_female2;Yeah, though you can barely tell, dunno why she even bothered.@@"<br>
<br>
"@@.generic_female1;Maybe she's doing it slow and natural with, like, hormones and stuff.@@"<br>
<br>
"@@.generic_female2;Hmm, maybe you're right. I could never have the patience for something like that.@@"<br>
<br>
"@@.generic_female1;Hah, no kidding, I remember your "patience" at the bar last Friday!@@"<br>
<br>
"@@.generic_female2;Hey, it was every woman for themselves, you could have talked to 'em first!@@"
<</switch>>
<br><br>
Their voices fade as they walk out of the room and you finish up your business.
<<case 'generic'>>
<<switch random(2)>>
<<case 1>>
"@@.generic_female1;Did you get the paperwork from finance yet?@@"<br>
<br>
"@@.generic_female2;Yeah, finally, I swear they cost us more time than the regulators some days!@@"
<<case 2>>
<<if $npc_manager.stage >= 4>>
"@@.generic_female1;How about this year's retreat, eh?@@"<br>
<br>
"@@.generic_female2;Seriously! I can't wait till next year, wish they were quarterly!@@"
<<else>>
"@@.generic_female1;What's the story with the corporate retreat this year, you going?@@"<br>
<br>
"@@.generic_female2;You kidding? After last year I wouldn't miss it for the world, just wish they'd settle on a date so I can book flights.@@"
<</if>>
<<default>>
Whatever they're saying is too full of corporate jargon for you to understand or care.
<</switch>>
<<default>>
ERROR: unexpected scene.stage <<=$scene.stage>>
<</switch>>
<br><br>
<<include "lunchFemaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Dry your hands and return to your desk." 300>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: random event, crowded work elevator intro
#status: RELEASED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.runningLate = $now.getUTCHours() == 7 && $now.getUTCMinutes() > 45>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
Arriving to work, you find the lobby far busier than normal, weaving through the crowd to find that this is due to an elevator malfunction rendering most of the lifts out of order.<br>
<br>
<<if $scene.runningLate>>
Making it to the front of the queue, you face a sardine-packed full elevator, with not much time remaining before you need to be in office.
<<else>>
Making it to the front of the queue, you find the elevator crammed full.
<</if>>
You hesitate, unsure if even your slender frame could fit in the already crowded elevator only for a <<if $options.fem>>woman<<else>>tall man<</if>> in front to wave you in. "@@.generic_male1;Come on, we can squeeze it!@@"<br>
<br>
<<if $scene.runningLate>>
<<printThought "If I don't get in, I'll probably be late to work...">>
<<else>>
<<printThought "I guess I have time to wait for the next one...">>
<</if>>
<br><br>
[<<moveTo "event_random_work_elevator_grope_1" "Cram into the elevator." 60 "<<set $scene.enter=true>>">>]<br>
[<<moveTo "event_random_work_elevator_grope_1" "Wait for the next elevator." 900 "<<set $scene.enter=false>>">>]
</div>/*#
#desc: random event, groped in crowded work elevator
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<changeHorny _bimbo>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
<<if $scene.enter>>
Stepping over the threshold of the elevator and turning around, you suck in your breath as your inviting new friend wraps <<his>> arms around your waist and pulls you in tight, the door barely closing.<br>
<br>
Unable to move, you feel something hard pressing against your back. As the floors tick upwards, you feel the... thing pressing into you, stiffening and swelling larger, while, at the same time, the <<mans>> hands slide up from your hips to <<if $player.body.breastsize[0]>0>>squeeze your breasts<<else>>caress your flat chest<</if>>.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought "Mmmm, this is making me so hot...">>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
<<printThought "What is <<he>> doing? And... why is it turning me on?">>
<<else>>
<<printThought "Oh my <<getWordGod>>, what is that?">>
<</if>>
<</if>>
<br><br>
You get a moment of breathing space as the doors open on a lower floor for a couple people to get out.<br>
<br>
[<<moveTo "event_random_work_elevator_grope_2" "Turn around and slap your assailant." 120 "<<set $scene.action='slap'>>">>]<br>
[<<moveTo "event_random_work_elevator_grope_2" "Don't make a scene, just keep still." 300 "<<set $scene.action='stand'>>">>]<br>
[<<moveTo "event_random_work_elevator_grope_2" "Show your enthusiasm and grind back against <<him>>." 300 "<<set $scene.action='slut'>>">>]
<<else>>
Shaking your head, you watch the elevator door slide closed, another few minutes ticking past, and then suddenly the elevators are working again, the out of service lifts arriving all at once as the lobby swiftly clears out.<br>
<br>
<<if !$scene.runningLate>>
[<<moveTo "room_office_sissy_secretary" '<<=ps(setup.getNpcName("npc_manager", "formal"))>> Office.' 300>>]
<<else>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2" "Wait for the next elevator." 300 "<<set $scene.beforetasklocation.pop()>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $scene.directInspection=true>>">>]
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3" "Wait for the next elevator." 300 "<<set $scene.beforetasklocation.pop()>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $scene.directInspection=true>>">>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4" "Wait for the next elevator." 300 "<<set $scene.beforetasklocation.pop()>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $scene.directInspection=true>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5" "Wait for the next elevator." 300 "<<set $scene.beforetasklocation.pop()>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $scene.directInspection=true>>">>]
<</switch>>
<</if>>
<</if>>
</div>/*#
#desc: random event, react to groping in crowded work elevator
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'slap'>>
<<if $npc_manager.stage > 2>>
<<addWorkEvent 'elevator_grope_comment_1'>>
<<set $player.flags.elevator_grope.slap = true>>
<</if>>
<<case 'stand'>>
<<applyExperience 'humiliation' 8 'normal' $INCOGNITO>>
<<set $player.flags.elevator_grope.stand = true>>
<<case 'slut'>>
<<if $npc_manager.stage < 3 || !$player.virgin.blowjob>>
<<applyExperience 'bimbofication' 12 'very' $EXPOSED>>
<<applyExperience 'humiliation' 12 'very' $EXPOSED>>
<</if>>
<<set _horny = 2*setup.getTotalValue("bimbofication")>>
<<changeHorny _horny>>
<</switch>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'slap'>>
As the door opens for another rider to slip past, you step forward just enough to haul off with a slap across your assailant's face.<br>
<br>
The hit echoes in the elevator followed by tense silence as the <<man>> holds <<his>> cheek and looks back at you in shock, nobody else moving to intervene.<br>
<br>
"@@.generic_male1;Well!@@" <<he>> finally says before storming past you in a huff. Your heart still beating fast as you look at the silent remaining passengers, you meekly step back into the elevator and turn around, tensely waiting for it to reach your floor.<br>
<br>
<<include "elevator_event_to_office">>
<<case 'stand'>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
You want nothing more than to react to <<his>> attentions, to bend over and get railed by the large, hot <<getWordPenis>> pressed against your tail-bone.
<</if>>
It takes everything you have to suppress a moan as <<he>> gropes you even more aggressively, biting your lip and closing your eyes as you try to endure this unstopped, and yet secretly desired, harassment.
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
Your body can't seem to help but react to the "attention" as you feel suddenly hot as the hands roam over your body. By the time you step off for your floor your heart beats fast and you have to force yourself not to look back lest you make eye contact with your anonymous groper.
<<else>>
You remain silent as you count floors, the rest of the elevator either unaware or uncaring as to your plight.
<</if>>
<</if>>
<br><br>
For <<his>> part, <<he>> seems to take your silence as invitation, continuing to grope your <<if $player.body.breastsize[0]>0>>breasts<<else>>chest<</if>>, and then one hand moves lower. Before you can react, it is between your legs, <<if $player.body_ref.penis>>squeezing your <<getWordMyPenis>><<else>>groping your crotch<</if>> through your clothes as <<he>> whispers in your ear. "@@.generic_male1;Good girl.@@" You shudder in submissive arousal and the door opens for your floor. You step off with a parting butt-slap that echoes in the hallway, a few chuckles escaping the elevator as you hurry towards work.<br>
<br>
<<include "elevator_event_to_office">>
<<case 'slut'>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
You can't help but react to the attention, grinding back and moaning like the horny slut you are.
<<else>>
You've spent too long thinking like a slut and you just can't help but arch your back and press into your anonymous "friend." <<His>> hands squeeze you tighter as your thoughts alight with visions of being gang-banged in the elevator.
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
All this time acting the slut must be getting to you as you just can't help but arch your back and press into your anonymous "friend." <<His>> hands squeeze you tighter as your thoughts alight with visions of being gang-banged in the elevator.
<<else>>
You aren't sure what comes over you that has you pressing back into your anonymous "friend;" whatever it is that has sparked this slutty reaction <<he>> reacts by squeezing you tighter as your heart races at your depraved display.
<</if>>
<</if>>
<<if $npc_manager.stage < 3 || !$player.virgin.blowjob>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
Arriving at your floor you almost don't want to get off, or rather you REALLY want to get off, but a hard slap on the ass sends you on your way and the doors close behind you.
<<else>>
Arriving at your floor you almost swoon, reluctantly stepping off. Glancing back you see <<him>> grin back and flash a wink at you that has your knees wobbling.
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
Arriving at your floor you almost swoon. Glancing back you see <<him>> grin back and flash a wink at you that has your knees wobbling as you hurry along on your way.
<<else>>
So flooded with emotion you almost miss your floor you barely step away, not daring to look back as you hurry along.
<</if>>
<</if>>
<br><br>
<<printThought "Unf, I'm so horny... and I haven't even had my morning inspection yet...">><br>
<br>
Trying to clear your head you walk up the hallway to work.<br>
<br>
<<include "elevator_event_to_office">>
<<else>>
You're so distracted as things escalate into borderline dry humping you don't notice that the elevator has all but emptied before you're even halfway to your floor, that is, until <<he>> presses the stop button. "@@.generic_male1;Mmm, there's no way I can concentrate on work if you don't handle the problem you just caused@@" <<he>> growls into your ear, <<his>> fingers gripping your hair and pulling you back as you moan.<br>
<br>
You soon find yourself on your knees in the empty, stopped elevator, staring forward as <<he>> unbuttons <<his>> pants with one hand while <<his>> other holds you by the hair, keeping you facing directly at the monster you've awakened.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "Yum">>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
<<printThought "Oh my...">>
<<else>>
<<printThought "What have I unleashed?">>
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("penis") < 5 && setup.getTotalValue("bimbofication") < 5>>
[@@.link_locked;No, you're not some kind of cock-hungry slut who'll blow some rando in an elevator!@@]<br>
[<<moveTo "event_random_work_elevator_grope_3" "This is too much." 120 "<<set $scene.suck=false>>">>]
<<elseif setup.getTotalValue("penis") > 10 && setup.getTotalValue("bimbofication") > 10>>
[<<moveTo "event_random_work_elevator_grope_3" "Open wide and do your job." 300 "<<set $scene.suck=true>>">>]<br>
[@@.link_locked;There's a cock in front of you and you're way too much of a slut to pass up that opportunity.@@]
<<else>>
[<<moveTo "event_random_work_elevator_grope_3" "Open wide." 300 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_random_work_elevator_grope_3" "This is too much." 120 "<<set $scene.suck=false>>">>]
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.action: <<=$scene.action>>
<</switch>>
</div><<set _workTime = setup.setNextDate($now, 0, 8, 0)>>
<<set _timeToWork = setup.secondsToDate($now,_workTime)>>
<<if !$scene.runningLate || _timeToWork > 120>>
<<if _timeToWork > 300>>
<<set $scene.runningLate = false>>
[<<moveTo "room_office_sissy_secretary" '<<=ps(setup.getNpcName("npc_manager", "formal"))>> Office.' 120>>]
<<else>>
<<set $scene.runningLate = false>>
[<<moveTo "room_office_sissy_secretary" 'Hurry to work.' 120>>]
<</if>>
<<else>>
<<set _timeToWork = Math.min(120, _timeToWork - 30)>>
<<switch $npc_manager.stage>>
<<case 2>>
[<<moveTo "event_manager_daily_check_stage_2" "Hurry on to work." 240 "<<completeTask 'manager_morning_inspection_task' $now false>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $scene.directInspection=true>>">>]
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3" "Hurry on to work." 240 "<<completeTask 'manager_morning_inspection_task' $now false>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $scene.directInspection=true>>">>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4" "Hurry on to work." 240 "<<completeTask 'manager_morning_inspection_task' $now false>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $scene.directInspection=true>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5" "Hurry on to work." 240 "<<completeTask 'manager_morning_inspection_task' $now false>><<set $scene.beforetasklocation.push('room_office_sissy_secretary_work_morning_start')>><<set $scene.directInspection=true>>">>]
<</switch>>
<</if>>/*#
#desc: random event, react to groping in crowded work elevator
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<set $player.flags.elevator_grope.slut = true>>
<<applyExperience 'bimbofication' 16 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 11 'very' $SEEN_STRANGER>>
<<applyExperience 'penis' 14 'very' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 13 'very' $SEEN_STRANGER>>
<<if $options.fem>>
<<set $scene.rider = random(8)>>
<<else>>
<<set $scene.rider = random(10)>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
In the privacy of the elevator, you confront a monster. When you make no move to resist, the <<man>> takes control using a tight grip on your hair to bring your face towards <<his>> already hard <<getWordPenis>>.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
You lick your lips in anticipation and then open wide, feeling <<him>> slide smoothly down your throat as you suck hard.
<<else>>
<<His>> <<getWordPenis>> near the limits of human size your jaw is forced wide and your eyes start to roll back as your throat bulges to its limit.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<He>> seems far too big for anyone to handle, but you do your best, barely taking a third of <<his>> member before the back of your throat rises in objection and you let out a muffled cough.
<<else>>
After a futile attempt at forcing <<his>> way down your too-sensitive throat <<he>> lets you go to work sucking on <<his>> tip, bobbing a few centimetres back and forth as you stare at the length of <<getWordPenis>> still past your lips.
<</if>>
<</if>>
<br><br>
<<His>> hold on you relaxes as you do your duty and you mix sucking with licking up and down the full length from <<his>> balls to <<his>> tip. The taste of pre-cum mixes with a hint of sweat, a heady brew of salty <<if $options.fem>>musk<<else>>masculinity<</if>> that seems to spur you to more depraved action.<br>
<br>
Taking <<him>> in both hands, you look up and make a show of slapping yourself with <<his>> <<getWordPenis>>, thanking <<him>> for the attention in between quick swallows.<br>
<br>
Leaning forward to brace <<him>>self with one hand, <<he>> pins you up against the wall just below the main panel, your attention too occupied with pumping <<him>> towards climax with both hands to realise that the elevator has begun to move once again until, just as <<he>> fills your mouth with
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
thick, rich
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
frothy
<<else>>
thick, bitter
<</if>>
<</if>>
<<getWordCum>> there is a loud DING! as the doors open.<br>
<br>
You freeze, <<his>> <<getWordPenis>> just past your lips as it pulses with final offering as your gaze looks over and up as someone walks into the elevator.<br>
<br>
Noticing you for the first time,
<<switch $scene.rider>>
<<case 0 1 2>>
the new rider looks down on you in every sense of the word, shaking their head before moving to the far side of the elevator.
<<case 3 4 5>>
the woman looks between you and your partner, rolling her eyes slightly before reaching past to press the button for her floor as if you were not sitting just below, belly full of fresh cum.
<<case 6 7 8>>
the new rider looks down at you with what can only be termed as jealousy, licking their lips slightly before reaching past your head to press the button for their floor.
<<case 9 10>>
this new man pauses, looking down and then up at your "partner" before exchanging a smiling nod of approval mixed with jealousy. "@@.generic_male1;Floor 70... unless the lady is staying on longer?@@" The man asks with a grin as your partner chuckles.
<</switch>>
<br><br>
Rising to your feet, you cough and lick your lips as a few moments later the elevator doors open for your floor and you quickly hurry out and on your way.
<<else>>
You babble something about needing to get to a meeting. Still holding you by the hair, <<his>> <<getWordPenis>> in <<his>> other hand. <<He>> seems to hesitate as you notice <<his>> gaze turns to your neck of all things.<br>
<br>
"@@.generic_male1;Oh, shit, sorry, yeah... didn't expect someone to just go along like that...@@"<br>
<br>
Before you can figure out what the hell <<hes>> talking about, <<he>> has helped you back to your feet and restarted the elevator, the remainder of the trip passing in silence as <<he>> stands at arms length, giving you <<if $options.fem>>another apology<<else>>a gentlemanly nod<</if>> when you get off.<br>
<br>
<<printThought "That was strange...">>
<</if>>
<br><br>
<<include "elevator_event_to_office">>
</div>/*#
#desc: manager confronts you for slapping groper
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are working away as usual when you receive a summons from your <<=setup.getNpcName("npc_manager","title")>> to join her in her office. You step into the inner office as she waits until you have closed the door before addressing you.<br>
<br>
"@@.npc_manager;Well, my dear. It seems that you were quite the naughty thing earlier. I have received a complaint that you assaulted another employee on the way in this morning! At first I did not want to believe it that my sweet girl could be so violent, but there seem to have been quite a number of eye-witnesses to the event so there can be no denying it. So, do you have an explanation for such a brazen act?@@"<br>
<br>
[<<moveTo "event_elevator_slap_debrief_2" 'Apologise for your actions.' 120 "<<set $scene.object=false>>">>]<br>
[<<moveTo "event_elevator_slap_debrief_2" 'Explain that <<he>> was groping you!' 120 "<<set $scene.object=true>>">>]<br>
</div>/*#
#desc: manager confronts you for slapping groper
#status: FINISHED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' 9 'normal' $SEEN_FRIEND>>
<<if $scene.object>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.object>>
<<if $npc_manager.affection > 5 && $npc_manager.affection > $npc_manager.anger>>
You explain that the <<man>> was feeling you up in the elevator, <<=setup.getNpcName("npc_manager","formal")>> looks at you with a note of tenderness before finally sighing.<br>
<br>
"@@.npc_manager;I really am sorry, my dear, but you knew what you were signing up for. Plus, well, you were asked a question about this very sort of situation in your assessment survey and your answer pointed towards a far more... enthusiastic reaction.@@"
<<else>>
You explain that the <<man>> was feeling you up in the elevator, but <<=setup.getNpcName("npc_manager","formal")>> appears totally unmoved.<br>
<br>
"@@.npc_manager;Well, what did you expect? Dressing like that... besides you are a <<if $fetish.sissy>>SISSI <</if>>secretary, this sort of thing you should be ready and prepared to handle plus, as I recall, you were asked a question about this very situation during your orientation and you expressed no shortage of enthusiasm for the event.@@"
<</if>>
<br><br>
Your jaw drops — how could she know about the survey? Her responding smile tells you everything; of course she knew, she knew everything, just as she is in control of everything. She gives you a few moments to process and stew in your new realisations before continuing. "@@.npc_manager;So, I have already taken care of things from an HR perspective but, as your manager, it is still my responsibility to administer corrective measures. I believe you "turning the other cheek" for a good five thwacks on either side of your bum should be sufficient, please get in position over the desk.@@"
<<else>>
Figuring it's easier to just confess, you bow your head and apologise for your outburst. Out of the corner of your eye, you can see <<=setup.getNpcName("npc_manager","formal")>> smile in approval, even as she rises to open the drawer of her desk that stores her paddles...<br>
<br>
"@@.npc_manager;While recognising your error is, of course, admirable well... corrective measures must be applied. I believe you "turning the other cheek" for a good five thwacks on either side of your bum should be sufficient, please get in position over the desk.@@"
<</if>>
<br><br>
You do as ordered as she approaches, "For <<if $fetish.sissy>>SISSI <</if>>Secretary use only" paddle in hand. Pulling your clothes aside with one hand she caresses your rear for a moment, as if in admiration before landing the first hard blow.<br>
<br>
"@@.npc_manager;One.@@" she states as the wind is knocked out of you. "@@.npc_manager;Two.@@" She continues on the other side before you can recover.<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
The harsh admonishment is naught but pleasure to a pain-slut like yourself and you have to bite your lip to suppress a gasp of pleasure.
<<else>>
Each harsh blow is a mix of pain and pleasure to your masochistic wiring and you have to stop yourself from moaning for more when she finally reaches "@@.npc_manager;Ten.@@"
<</if>>
<br><br>
Circling back around to her desk she has put the paddle away before she looks back up at your lusty eyes. "@@.npc_manager;You were getting off on that, weren't you? Careful dear — I know ways to have even the most devout pain-slut begging for mercy.@@"
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
She alternates cheek to cheek, having you on the verge of tears and yet with a strange tingle of pleasure as well, the pain blooming into something more, but not quite blossoming by the time she lands a final "@@.npc_manager;Ten.@@"
<<else>>
You are on the verge of tears with each hard blow, barely managing to make it to the end without weeping all over her desk.
<</if>>
<br><br>
She gives your sore bottom a gentle pat that is, perhaps, meant to be comforting. Unfortunately for you even that light touch ends up stinging and you hiss in pain. "@@.npc_manager;Oh, stop being such a baby, you earned that punishment fair and square — it is on you to amend your behaviour going forward lest it happen again.@@"
<</if>>
<br><br>
She resumes her position of authority behind her desk and nods for you to be dismissed. You quickly return to your desk, wincing slightly as you take your seat.<br>
<br>
[<<moveTo $scene.workEventReturn 'Back to work.' 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: overhear manager raging at something
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're working away at your computer when you hear a frustrated yell coming from your <<=ps(setup.getNpcName('npc_manager', 'title'))>> inner office.<br>
<br>
<<printThought "Maybe <<=setup.getNpcName('npc_manager', 'formal')>> needs assistance?">><br>
<br>
<<if setup.getTotalValue("submission") > 10>>
[<<moveTo 'event_work_broken_computer_2' 'Go see if she needs help.' 60>>]<br>
[@@.link_locked;You are much too good a slave to consider ignoring your <<=setup.getNpcName('npc_manager', 'title')>>.@@]
<<else>>
[<<moveTo 'event_work_broken_computer_2' 'Investigate.' 60>>]<br>
[<<moveTo "event_work_broken_computer_1_decline" 'Ignore her outburst and keep working.' 60>>]
<</if>>
</div>/*#
#desc: decline to investigate manager raging at computer
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 1, 0, 0)>>
<<addWorkEvent 'broken_computer' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Deciding against risking becoming the target of her anger you focus on your work and the sound of her frustrations eventually fade.<br>
<br>
<<printThought "I wonder what that was about?">><br>
<br>
[<<moveTo $scene.workEventReturn 'Continue working.' 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: check to see if manager needs help
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Entering the inner office you find <<=setup.getNpcName('npc_manager', 'formal')>> glaring at her computer and you ask what's wrong.<br>
<br>
"@@.npc_manager;This infernal thing keeps trying to apply a so-called "security update," but then the whole machine restarts partway through only to try to apply the update again about half an hour later, it has happened twice already today!@@"<br>
<br>
[<<moveTo 'event_work_broken_computer_3_self' 'Offer to see if you can fix it.' 60>>]<br>
<<if $npc_technician.flags.dataservice_encounter.asked_for_help || $npc_technician.relationship.coffee_dates > 0>>
<<set _passage = "Suggest you call your friend " + setup.getNpcName('npc_technician', 'first') + ".">>
[<<moveTo 'event_work_broken_computer_3_tech' _passage 600>>]
<<else>>
<<set _passage = 'Suggest you call the so-called "tech wizard," ' + setup.getNpcName('npc_technician', 'first') + " from your previous job.">>
[<<moveTo 'event_work_broken_computer_3_tech' _passage 600>>]
<</if>>
</div><<if $npc_ai.stage >= 2 && $npc_ai.flags.manager_file_access && State.hasPlayed("room_masturbate_porn") && !setup.hasEmail('mail_ai_manager_hack_h')>>
<<addEmail $computer
'UNKNOWN'
'Unit <<=$player.first_name>>'
false
true
$now
'mail_ai_manager_hack_h'
'mail_ai_manager_hack_t'
'{"name":"videos.rar","type":"event","data":{"event":"event_attachment_surveilance_1"}}'
>>
<</if>>/*#
#desc: try to help manager yourself
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("smart") >= 10>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<set $npc_ai.flags.manager_file_access = true>>
<<include "checkAISurveilanceEmail">>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<addWorkEvent 'broken_computer'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Hmm, that is right, you used to work down in the tech department? It seems so strange to think of such a thing, I mean, you are so much better suited as a secretary. Still, if you think you can help, go ahead.@@"<br>
<br>
Standing from her desk, she gestures for you to take a seat.<br>
<br>
<<if setup.getTotalValue("smart") >= 10>>
Checking system status and such, it doesn't take you long to discover the issue — there is an encrypted folder on her drive that the security update is running into permission issues whenever it tries to scan. Manually restarting the update in admin mode, you explain how she needs to type in the password for the folder in question for things to finish.<br>
<br>
Smiling up in triumph, you beam with pride as the scan finishes and she confirms that everything is in order.<br>
<br>
"@@.npc_manager;Well done, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>! If you were always this skilled, it must have been a real miracle that you made the mistake that lead you to my employ. I guess you are just a lucky girl!@@"<br>
<br>
You blush at the... strange compliment before she shoos you away so that the both of you can return to work.
<<else>>
Though slightly nervous about your possibly atrophied skills, you take a deep breath and start typing.<br>
<br>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
You don't remember computers being this, like, hard... and not the FUN hard either... not wanting to disappoint her you try anyway, but your lack of a clue is soon apparent and she kicks you off, sending you back to your office to "figure it out herself." <br>
<br>
Your head hurts from trying to think so hard and you still feel bad for failing her as you return to your desk and your normal duties.
<<else>>
You putter around a bit on your computer, but you just don't seem to be able to figure out what's wrong. Finally deciding you aren't going to get anything done she kicks you off and sends you back to your desk to resume your "proper" job.<br>
<br>
Feeling very disappointed for failing her you obediently return to your desk.
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn 'Resume working.' 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: get npc_technician to help fix manager computer
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<incrementEmotion 'affection' 'npc_technician' 2>>
<<set $npc_technician.flags.fixed_manager_computer = 1>>
<<storeVisual $player $npc_technician>>
<<addEvent 'technician_hacking_result'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You explain about how, back at Cloud Data Services, <<=setup.getNpcName('npc_technician', 'first')>> was able to fix pretty much anything and everything computer related.
<<if $npc_technician.flags.dataservice_encounter.asked_for_help>>
Well, everything except the data backup you lost.<br>
<br>
"@@.npc_manager;There, there, that really did turn out for the best, I mean if she had recovered all the files you might never have ended up finding your true calling as my <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"<br>
<br>
<<if setup.getTotalValue("smart") < setup.getTotalValue("bimbofication")>>
<<printThought "Yay! Being a <<if $fetish.sissy>>SISSI <</if>>Secretary is, like, so much better!">>
<<else>>
<<printThought "Huh... thinking about it now it is a bit of a weird coincidence that <<=setup.getNpcName('npc_technician', 'first')>> wasn't able to solve things.">>
<</if>>
<</if>>
<br><br>
"@@.npc_manager;Well, if you vouch for her it is worth a try, and Goddess knows that the IT department up here is not good for much, let me clear her to come up here.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> makes a few calls and in a few minutes <<=setup.getNpcName('npc_technician', 'first')>> shows up, appearing a little nervous as she looks in awe around the large office.<br>
<br>
"@@.npc_technician;Uh... hi, <<=$player.first_name>>, <<=setup.getNpcName('npc_manager', 'other')>> you, uh... were having some computer issues?@@"<br>
<br>
"@@.npc_manager;Yes... <<=$player.first_name>> said you were JUST the lady to help. Why don't you come around the desk and show me the manifested skills of a tech wizard.@@"<br>
<br>
"@@.npc_technician;That's, uh, what they call me, heh heh.@@" She replies, seeming a bit discombobulated by your <<=ps(setup.getNpcName('npc_manager', 'title'))>> powerful presence.<br>
<br>
Fortunately once she is sitting down at the computer <<=setup.getNpcName('npc_technician', 'first')>> is back in her element, plugging in a diagnostics dongle and quickly typing away as she gets straight to the root of the problems.<br>
<br>
"@@.npc_technician;Ah, here we go. Looks like there are some encrypted files with heightened access permissions that the automated patch is tripping up on.@@" She types a bit more, mumbling something about "@@.npc_technician;Manually restarting the job@@" before asking <<=setup.getNpcName('npc_manager', 'formal')>> to please enter her passcode.<br>
<br>
A few minutes later and things are all wrapped up, <<=setup.getNpcName('npc_technician', 'first')>> packing up her things. Still obviously unnerved by your <<=setup.getNpcName('npc_manager', 'title')>> <<=setup.getNpcName('npc_technician', 'first')>> looks a bit relieved to be heading out.<br>
<br>
"@@.npc_manager;Wonderfully done! And to show my thanks I am going to go ahead and let your access to the <<if $npc_manager.stage >= 4>>147th<<else>>52nd<</if>> floor persist, that way the next time I have an issue you can come right up without re-cutting all this red tape... plus you can drop by and visit your cute friend for coffee or whatever.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> turns towards you with a smile. "@@.npc_manager;Just do not get into any trouble with her! I already have one ex-techie cute secretary to keep in line!@@"<br>
<br>
You and <<=setup.getNpcName('npc_technician', 'first')>> both turn red as <<=setup.getNpcName('npc_manager', 'formal')>> laughs. <<=setup.getNpcName('npc_technician', 'first')>> quickly making her escape as <<=setup.getNpcName('npc_manager', 'formal')>> thanks her a final time.<br>
<br>
Alone just the two of you <<=setup.getNpcName('npc_manager', 'formal')>> nods in approval. "@@.npc_manager;Good idea having me call her up, such a lovely young woman. Well, best we both get back to work.@@"<br>
<br>
You nod, curtsy and return to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn 'Resume working.' 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: masturbate at lunch in work bathroom
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("cage")>>
<<changeHorny 25>>
<<else>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<if $npc_ai.profile>>
<<set $scene.masturbateRandom = random(2)>>
<<else>>
<<set $scene.masturbateRandom = 1>>
<</if>>
<<set $player.flags.masturbation.work.bathroom = true>>
<</if>>
<</if>>
<<set $player.location to "Work Toilet Stall">>
<<initRoom>>
<<include playerMenu>>
<<if !setup.checkItemTypeWorn("cage") && $scene.masturbateRandom == 2>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_ai")>>
<<else>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<</if>>
<div id="invframe" class="scrolltext">
Choosing an empty stall, you close the latch and make yourself comfortable as you decide to try and obtain some relief.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.checkItemTypeWorn("panties")>>
Pulling down your <<=setup.getItemTypeName("panties")>> to expose your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>, you
<<else>>
You
<</if>>
try to masturbate, but the result is little more than an uncomfortable reminder of your imprisoned state as you <<if setup.isCage()>>swell within the cage<<else>>strain under the shield<</if>>.<br>
<br>
<<printThought "Damn, this isn't working...">><br>
<br>
[<<moveTo "event_work_bathroom_masturbate_2_anal" "Try some backdoor stimulation." 600>>]<br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Give up and go back to your office." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office and return to your office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("panties")>>
Pulling down your <<=setup.getItemTypeName("panties")>>, you <<if $player.body_ref.penis>>wrap your fingers around your <<getWordMyPenis>> and start stroking<<else>>thrust your fingers into your cunt and get to work<</if>>.
<<else>>
Dressed, or rather NOT dressed commando you swiftly move to <<if $player.body_ref.penis>>wrapping your hand around your <<getWordMyPenis>> and commence to stroking<<else>>fingering yourself<</if>>.
<</if>>
<br><br>
<<switch $scene.masturbateRandom>>
<<case 0 1>>
Engrossed in your efforts to get off before your break ends, you are soon stifling gasps as you rocket towards climax.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
You feel the <<=setup.getItemTypeName("plug")>> in your rear and you clench down on it and roll your hips to invite your <<if $player.body_ref.penis>>prostate<<else>>butt<</if>> to the party.
<<elseif setup.getTotalValue("anal")>5>>
Your empty hole cries out for stimulation and you regret your lack of a plug.
<<else>>
You feel like something is missing, but are too distracted by the quest for orgasm to put your finger on (or is that in?) what.
<</if>>
<br><br>
As you approach climax, your thoughts can't help, but turn towards your <<=setup.getNpcName('npc_manager', 'title')>> and how, despite (or is that, because?) of how intimidating she is she is still very attractive.
<<if $player.body_ref.penis && $fetish.cum && $player.body_ref.cumProduction>>
<<if setup.getTotalValue("submission") > 10>>
Squirting all over your hand your prior arousal suddenly crashes as you feel awash with guilt for getting yourself off without permission.<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
[<<moveTo "event_work_bathroom_masturbate_2_confess" "Call her on your cell to confess your crime." 60>>]<br>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Consume the evidence." 60>>]<br>
[@@.link_locked;You are too submissive to go back to the office without somehow addressing this failure.@@]
<<else>>
[<<moveTo "event_work_bathroom_masturbate_2_confess" "Call her on your cell to confess your crime." 60>>]<br>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Consume the evidence." 60>>]<br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<br>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<br>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
You feel a bit guilty fantasising about your boss this way, but that doesn't stop you from <<if $player.body_ref.penis>><<if $player.body_ref.cumProduction > 0>>spurting all over your hand<<else>>cumming<</if>><<else>>soaking your hand with joy<</if>>.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Consume the evidence." 60>>]<br>
<</if>>
<<include "lunchFemaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
The thought of <<=setup.getNpcName('npc_manager', 'title')>> only serves to accelerate and intensify your orgasm and you barely manage to resist crying out in climax before leaning back against the cool tile wall, panting as you try to recover.<br>
<br>
<<include "lunchFemaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>]<br>[<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</if>>
<<default>>
Your heart races as you rapidly approach climax. A moment before you <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>spurt<<else>>cum<</if>> there's a shimmer in the air in front of you, as <<=setup.getNpcName('npc_ai', 'first')>> appears before you.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
Your jet of <<getWordCum>> shoots right through her incorporeal chest, the hologram wavering slightly as she blinks down at you.<br>
<br>
"@@.npc_ai;<<uc "Hello unit ">><<uc $player.first_name>><<uc " why are you dispensing genetic samples on the toilet wall?">>@@"<br>
<br>
Your jaw flaps, though no sound comes out as the holographic AI woman smiles down at you.<br>
<br>
"@@.npc_ai;<<uc "Do not worry, unit ">><<uc $player.first_name>><<uc " your secrets are safe with me. Maintenance does not do genetic testing on this floor.">>@@"
<<else>>
You are too far past the edge to stop, and you moan an orgasm as <<=setup.getNpcName('npc_ai', 'first')>> looks dispassionately on.<br>
<br>
"@@.npc_ai;<<uc "Hello unit ">><<uc $player.first_name>><<uc " I would remind you that this is not part of your current job description. I will keep your secret, but I advise you to exercise greater self-control if you wish to remain on this floor.">>@@"<br>
<</if>>
<br><br>
Before you can put together a response she has disappeared as mysteriously as she appeared.<br>
<br>
<<printThought "Wait, for her to- are there cameras in the bathroom? And what did she mean by THIS floor?">><br>
<br>
Surreptitiously glancing around in fear you feel very exposed, and even more confused by the goings on at this company. You blink in shock as you try to process what just happened, only to hear the sound of flushing from the next stall over!<br>
<br>
<<printThought "Oh <<getWordGod>>, could this possibly get any more embarrassing?">><br>
<br>
Waiting in fear until it sounds like the bathroom is empty you sneak out, washing your hands and quietly slinking back to your desk.<br>
<br>
<<include "lunchFemaleMakeup">>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</switch>>
<</if>>
</div>/*#
#desc: masturbate at lunch in work bathroom - anal
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<applyExperience 'anal' 4 'little' $SEEN_FRIEND>>
<<set $scene.cum = setup.canPlayerCumSimple($player,setup.getTotalValue('anal'))>>
<<if $scene.cum>>
<<playerOrgasm>>
<<set $player.flags.masturbation.work.bathroom_anal = true>>
<</if>>
<</if>>
<<set $player.location to "Work Toilet Stall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
<<if setup.checkItemTypeWorn("plug")>>
Reaching between your legs, your fingers find the base of the <<=setup.getItemTypeName("plug")>> occupying your rear.<br>
<br>
Shifting it to <<if $player.body_ref.penis>>press against your prostate<<else>>a better angle inside your rear<</if>>, you moan, working it as your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>vagina<</if>> sits neglected until, <<if !setup.canPlayerCumSimple($player,setup.getTotalValue('anal'))>>to your surprise, and with<<else>>With<</if>> a shuddering gasp, you <<if setup.isCage()>>leak through your cage, dribbling out all over your hand<<else>>dribble down your leg<</if>>.
<<else>>
Reaching between your legs past your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>, you start fingering your ass, soon moaning and gasping as your probing fingers find your deliciously sensitive <<if $player.body_ref.penis>>prostate<<else>>bum<</if>>.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
<<printThought "This is so much better than playing with my <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>cunt<</if>>? Why do I ever let my ass be empty?">>
<<else>>
<<printThought "This feels so good, I should really consider being plugged more often...">>
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
<<printThought "This is almost as good as masturbating normally, I should do things with my ass more often...">>
<<else>>
<<printThought "This feels good, but I still wish I wasn't locked up...">>
<</if>>
<</if>>
<br><br>
Your fingers working rapidly in your hungry hole, it isn't long until, <<if !setup.canPlayerCumSimple($player,setup.getTotalValue('anal'))>>to your surprise, and with<<else>>With<</if>> a shuddering gasp, you leak through your <<if setup.isCage()>>cage, dribbling out all over your hand<<else>>dribbling down your leg<</if>>.
<</if>>
<br><br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<if setup.getTotalValue("submission") > 10>>
Looking down at the mess you've made, your responsibilities as a <<if $fetish.sissy>>SISSI <</if>>Secretary suddenly flood back as you think of your <<=setup.getNpcName('npc_manager', 'title')>>.
<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
[<<moveTo "event_work_bathroom_masturbate_2_confess" "Call her on your cell to confess your crime." 60>>]<br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Consume the evidence." 60>>]<br>
<</if>>
[@@.link_locked;You are too submissive to go back to the office without somehow addressing this failure.@@]
<<else>>
[<<moveTo "event_work_bathroom_masturbate_2_confess" "Call her on your cell to confess your crime." 60>>]<br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Consume the evidence." 60>>]<br>
<</if>>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
Looking down at the mess you've made has you feeling a bit guilty.<br>
<br>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
[<<moveTo "event_work_bathroom_masturbate_2_cumeating" "Consume the evidence." 60>>]<br>
<</if>>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
You catch your breath, thankful that your climax no longer leads to quite the mess it once did.<br>
<br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</if>>
<<else>>
Feeling depraved, but desperate, you reach behind to
<<if setup.checkItemTypeWorn("plug")>>
fiddle with your plug.
<<else>>
finger yourself.
<</if>>
You are soon breathing heavy as a different sort of pleasure courses through your body but, even as you frig your <<if $player.body_ref.penis>>prostate<<else>>bum<</if>> mercilessly, it just isn't enough.<br>
<br>
Your fingers cramping you finally give up, frustrated and thwarted by your own body.<br>
<br>
<<printThought "Is it possible to cum just from anal... is that something I want?">><br>
<br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: masturbate at lunch in work bathroom - eat cum
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<setThreshold 'cum' 'toilet' 'dispose_evidence'>>
<<if !$player.sec_style.sex.drink_cum>>
<<set $player.sec_style.sex.drink_cum = "voluntary">>
<</if>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<changeHorny 20>>
<<set $player.flags.masturbation.work.lunch_masturbate_cum = true>>
<</if>>
<<set $player.location to "Work Toilet Stall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("cum") >= 10>>
Savouring every drop you lick your hand clean of the evidence of your orgasm.<br>
<br>
<<if setup.getTotalValue("cum") > 15>>
The taste of your own <<getWordCum>> is almost more pleasurable than the act of harvesting it and you roll it around in your mouth, smiling in pleasure before finally gulping it down.
<<else>>
The taste of your own <<getWordCum>> is like a lovely cherry on top to round out your little lunch-time dalliance and you smile as you gulp it down.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Your <<getWordCum>> is a bit bitter, but not all that bad. You take your time to thoroughly lick your hand clean of every drop of "evidence."
<<else>>
Your <<getWordCum>> is harsh and bitter and you have to force yourself to choke down the evidence of your lunch-time dalliance.
<</if>>
<</if>>
<br><br>
Fixing your clothes, and washing your hands, you check yourself in the mirror before leaving the bathroom.<br>
<br>
Frustratingly the feeling of your <<getWordCum>> pooling in your belly already has your arousal building back up...<br>
<br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>]<br>
[<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: masturbate at lunch in work bathroom - confess to manager
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 8 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 6 'terrible' $SEEN_FRIEND>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<changeHorny 30>>
<<set $player.flags.masturbation.work.lunch_masturbate_confess = true>>
<<set $npc_manager.flags.unlocked_lunch_play = true>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
Staring guiltily at <<getWordCum>> soaking your hand,
<<else>>
Swelling with guilt,
<</if>>
you carefully pull out your phone to call <<=setup.getNpcName('npc_manager', 'formal')>> only for it to pop up as a video call, her eyes no less piercing filtered through the phone screen.<br>
<br>
"@@.npc_manager;Well, what is it? Wait... what did you do?@@"<br>
<br>
You blush even harder, unable to escape her gaze as she sees right through you.<br>
<br>
Too embarrassed to speak, you merely raise your cum-covered hand into view.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_manager;I see, and I thought your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> would help you avoid this sort of... failure.@@"
<<else>>
"@@.npc_manager;Oh my. How embarrassing for you to have made such a mess, being such a naughty girl on your lunch break!@@"
<</if>>
<br><br>
"@@.npc_manager;Well, go on now, let me see you clean up your mess, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"<br>
<br>
You can feel the heat of her stare as you try to hold the camera steady to give her a view of you licking every drop of
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
delicious
<<else>>
yummy
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
strangely tasty
<<else>>
bitter
<</if>>
<</if>>
<<getWordCum>> off your hand and swallow it down.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
"@@.npc_manager;My, my, someone likes their special flavour... good girl, you should always want to clean up after your little... messes. In the future you should come to me if you are... struggling at work. Getting in over one's head because they refuse to ask for help is bad for one's career.@@"
<<else>>
"@@.npc_manager;Hmm, well, that is something, at least. I am still disappointed in you, however and if you keep this up... well... we may have to take more severe measures. Getting in over one's head because they refuse to ask for help is bad for one's career.@@"
<</if>>
<br><br>
You shudder in anticipation of what that could mean as she ends the call.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
Glancing down between your legs, you find yourself already straining <<if setup.isCage()>>within your cage<<else>>beneath your belt<</if>>, a part of you seemingly quite excited by your <<=ps(setup.getNpcName('npc_manager', 'title'))>> threat.
<<else>>
Glancing down between your legs, you find yourself already stiffening anew, a part of you seemingly quite excited by your <<=ps(setup.getNpcName('npc_manager', 'title'))>> threat.
<</if>>
<br><br>
Quickly pulling up your clothes, you wash your hand and hurry out of the restroom.<br>
<br>
<<if setup.checkPlayerDressed() || setup.checkOutsideDecency()>>
<<if $player.sec_style.clothing.female == "" && setup.checkVisibleClothingTag('female') > 10>>
[@@.link_locked;This is far too feminine of an outfit to wear in public.@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && setup.checkVisibleClothingTag('unisex') > 30>>
[@@.link_locked;These clothes don't seem correct, you're a dude, right?@@]<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<<elseif setup.checkWorkAppropriateAttire() || !$clothSetsInt.hasOwnProperty('lunch') || setup.wearingItemsInSet($clothSetsInt.lunch)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Wash your hands and return to your desk." 60>>] [<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<elseif $clothSetsInt.hasOwnProperty('lunch') && !setup.wearingItemsInSet($clothSetsInt.lunch)>>
<<printThought "Probably best to just continue wearing what I wore this morning.">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>><<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
<<printThought "I don't think this outfit is work appropriate.">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
<<else>>
[@@.link_locked;You are not going to leave the bathroom looking indecent.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>><br>
<<if $options.ezchange>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Change back into your work attire and return to the office." 60 "<<useClothSetPop 'lunch'>> <<useClothSetPush 'lunch'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: default event
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty("ai_robot_body_mimic_manager_task") && !setup.checkItemOwned("manager_heels") && $now.getUTCDay() != 4>>
<<initRoom>>
<<moveTo "event_manager_out_of_office_0">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> has a meeting with some generic employee who pays almost no attention to you.<br>
<br>
[<<moveTo $scene.workEventReturn "Work on." 1200 "<<completeWorkEvent>>">>]
</div>/*#
#desc: cook away fucking barista
#status: RELEASED 0.8.1.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You arrive at the canteen to find the familiar cook not behind the counter, <<his npc_cook>> place instead occupied by a "be back shortly" note.<br>
<br>
<<printThought "Really? Disappearing in the middle of lunch?">><br>
<br>
You're looking around, wondering what the heck you're going to do about <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch order when the door to the storage room opens and the cook emerges.<br>
<br>
[<<moveTo "event_cook_barista_2" "Crisis averted!" 180>>]
</div>/*#
#desc: cook returns from fucking barista
#status: RELEASED 0.8.1.0
#ignore_spell: b
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 10 'terrible' $ALONE>>
<<set $npc_cook.flags.baristaScene = true>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['canteen'] 'cook_porn_intro' _nextDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png" setup.charImage("npc_cook") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
Also emerging from the storage room is the familiar bimbo barista, <<=setup.getNpcName("npc_barista","nickname")>>, licking her lips with a wide smile on her face.<br>
<br>
Your attention is diverted as the cook, while fixing <<his npc_cook>> kilt accidentally gives you a glimpse that confirms that a) <<he npc_cook>> is wearing said kilt in the "traditional" manner, and b) <<he npc_cook>> is in possession of a jaw-dropping... <<if setup.getTotalValue("bimbofication") > 10>>or is that throat-bulging? <</if>>massive <<if $fetish.bestiality_soft>>horse-<</if>>cock!<br>
<br>
The cook moves behind the counter and puts the note away to resume serving customers as <<=setup.getNpcName("npc_barista","nickname")>> notices you and hops over with a grin.<br>
<br>
"@@.npc_barista;Heya! I gotta get back to the cafe... It's amazing how I can drink so much and, like still be thirsty! I guess it's all the salt...@@"<br>
<br>
You blink and nod, mind still reeling from the brief glimpse of what you saw between <<=ps(setup.getNpcName("npc_cook","first"))>> legs, not even processing until after she's skipped away that <<=setup.getNpcName("npc_barista","nickname")>> was almost certainly sucking it literally moments previously...<br>
<br>
"@@.npc_cook;Yeh ready to order, <<callPlayer "npc_cook">>?@@" <<=setup.getNpcName("npc_cook","first")>> calls out in a distracted voice as you realise you're at the front of the line.<br>
<br>
<<include "buyFoodOptions">>
</div>/*#
#desc: see an employee in corporate collar
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_collar_money'
4
'event_manager_money_collar_1'
true
>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Floor 155 Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" "collared_employee">>
<div id="invframe" class="scrolltext">
You are walking to the elevator when you almost crash into yet another reminder of how things here on the upper floors are "different." <br>
<br>
Dressed in a VERY tight secretary uniform what really draws your attention is what is around their neck — a steep, sturdy collar that announces them as "Property of SISSI." Barely pausing to apologise for the near-collision they hurry on their way leaving you somewhat agape at the bold, almost slave-like adornment.<br>
<br>
<<printThought "We're definitely not in Kansas anymore...">><br>
<br>
[<<moveTo "company_lobby" "Continue on to the elevator." 120>>]
</div>/*#
#desc: include passage for all "random" events
#status: RELEASED 0.6.0.0
#*/
<<set $randomEvents = {}>>
<<set $randomEvents['elevator_home'] = []>>
<<set $randomEvents['elevator_in'] = [{
done: false,
id: "move_foreshadow"
},{
done: false,
id: "hucow"
}]>>
<<set $randomEvents['elevator_in'].pushUnique({
done: false,
id: "grope"
})>>
<<set $randomEvents['elevator_in'].pushUnique({
done: false,
id: "holiday_dog"
})>>
<<set $randomEvents['elevator_in'].pushUnique({
done: false,
id: "work_in_spill"
})>>
<<set $randomEvents['canteen'] = [{
done: false,
id: "coworker_hucow"
},{
done: false,
id: "cook_barista"
}]>>
<<set $randomEvents['work_bathroom_female'] = [{
done: false,
id: "work_bathroom_female_general"
},{
done: false,
id: "work_bathroom_female_private"
}]>>
<<set $randomEvents['work_bathroom_male'] = [{
done: false,
id: "work_bathroom_male_general"
},{
done: false,
id: "work_bathroom_male_private"
},{
done: false,
id: "coworker_sissy_secretary"
}]>>
<<set $randomEvents['work_coffee_shop'] = [{
done: false,
id: "whipped_special"
}, {
done: false,
id: "barista_bj_aftermath"
},{
done: false,
id: "coworker_futa"
},{
done: false,
id: "barista_milking"
},{
done: false,
id: "coworker_pr_sissy"
}
]>>
<<set $randomEvents['work_office'] = [{
id : 'hr_harrassment'
}, {
id : 'nintendolls_president'
}, {
id : 'hr_retention'
}, {
id : 'hr_development'
}, {
id : 'default_office'
}]>>
<<set $randomEvents['mall_interior'] = [{
id : 'elevator_rape'
},{
id : 'anal_vibrator'
},{
id : 'bride_intro'
}]>>
<<set $randomEvents['transit'] = {}>>
<<set $randomEvents['transit']['company_lobby'] = [{
done : false,
id : 'jaywalk'
},{
done : false,
id : 'fetish_woman'
},{
done : false,
id : 'jaywalk_forced'
},{
done : false,
id : 'plug_event'
},{
done : false,
id : 'sissy_choker_event'
}]>>
<<set $randomEvents['transit']['room_mall'] = [{
done : false,
id : 'harass'
}]>>
<<set $randomEvents['transit']['room_usual_place_outside'] = [{
done : false,
id : 'alley_bj'
},{
done : false,
id : 'preacher'
}]>>
<<set $randomEvents['transit']['room_student_quarter'] = [{
done : false,
id : 'catcall'
},{
done : false,
id : 'cookies'
},{
done : false,
id : 'church_intro'
},{
done : false,
id : 'church_intro_karm'
},{
done : false,
id : 'hobo'
}]>>
<<set $randomEvents['transit']['room_psychiatrist_lobby'] = [{
done : false,
id : 'street_cum'
},{
done : false,
id : 'familiar_voice'
}]>>
<<set $randomEvents['transit']['room_foyer'] = [{
done : false,
id : 'mugging'
},{
done : false,
id : 'robbed'
},{
done : false,
id : 'elevator_makeout'
},{
done : false,
id : 'nuns'
},{
done : false,
id : 'reenactor'
},{
done : false,
id : 'brafree'
}]>><<if setup.progEventIsType($scene.location)>>
<<set $scene.progEventId = setup.getCurProgSceneRand()>>
<<if !_doNotGotoEvent>>
<<initRoom>>
<<moveTo $scene.progEventId>>
<</if>>
<<else>>
<<set $scene.eventInfo = setup.getRandomEvent($scene.location)>>
<<if !_doNotGotoEvent>>
<<initRoom>>
<<if $scene.eventInfo>>
<<completeRandomEvent $scene.eventInfo.eventId $scene.location>>
<<moveTo $scene.eventInfo.szene>>
<<else>>
<<if $scene.location == "elevator_home">>
<<include "handleHomeShortcutDirect">>
<<else>>
<<moveTo $scene.passthrough>>
<</if>>
<</if>>
<</if>>
<</if>>/*#
#desc: triggered passage that handles routing "random" work office events
#status: RELEASED 0.6.0.0
#*/
<<set $scene.location = "work_office">>
<<set $scene.passthrough = $scene.workEventReturn>>
<<completeWorkEvent>>
<<include "locationBasedRandomEvent">>/*#
#desc: triggered passage that handles routing "random" work events on elevator home
#status: RELEASED 0.6.0.0
#*/
<<set $scene.location = "elevator_home">>
<<if $daily.homeShortcut>>
<<set $scene.passthrough = "room_foyer">>
<<else>>
<<set $scene.passthrough = "company_lobby">>
<</if>>
<<include "locationBasedRandomEvent">>/*#
#desc: triggered passage that handles routing "random" work events on elevator home
#status: RELEASED 0.6.0.0
#*/
<<if $npc_manager.stage >= 4 && !setup.checkItemTypeWorn("cage") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity')>>
<<initRoom>>
<<moveTo "event_inspection_stage4_nochastity_1">>
<<elseif !$scene.noevent && ($now.getUTCHours() < 7 || ($now.getUTCHours() == 7 && $now.getMinutes() < 55)) && !setup.checkItemTypeTag("plug", ["locking"], true)>>
<<set $scene.location = "elevator_in">>
<<set $scene.passthrough = "room_office_sissy_secretary">>
<<include "locationBasedRandomEvent">>
<<else>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary">>
<</if>>/*#
#desc: triggered passage that handles routing "random" work events in canteen
#status: RELEASED 0.6.0.0
#*/
<<if $scene.foodDelivery.done || setup.checkItemTagCarried("lunch") || !$player.flags.firstWorkDayDone>>
<<initRoom>>
<<moveTo "room_office_lunchbreak_canteen">>
<<else>>
<<set $scene.location = "canteen">>
<<set $scene.passthrough = "room_office_lunchbreak_canteen">>
<<include "locationBasedRandomEvent">>
<</if>>/*#
#desc: triggered passage that handles routing "random" work events in work male bathroom
#status: RELEASED 0.6.0.0
#*/
<<set $scene.location = "work_bathroom_male">>
<<set $scene.passthrough = "room_office_lunchbreak_toilet_male">>
<<if setup.checkNaked() || !$player.flags.firstWorkDayDone>>
<<initRoom>>
<<moveTo $scene.passthrough>>
<<else>>
<<set $player.work.lunchBathroomEvent = $now>>
<<set $scene.forceLunchBathroom = false>>
<<include "locationBasedRandomEvent">>
<</if>>/*#
#desc: triggered passage that handles routing "random" work events in work female bathroom
#status: RELEASED 0.6.0.0
#*/
<<set $scene.location = "work_bathroom_female">>
<<set $scene.passthrough = "room_office_lunchbreak_toilet_female">>
<<if setup.checkNaked() || !$player.flags.firstWorkDayDone>>
<<initRoom>>
<<moveTo $scene.passthrough>>
<<else>>
<<set $player.work.lunchBathroomEvent = $now>>
<<set $scene.forceLunchBathroom = false>>
<<include "locationBasedRandomEvent">>
<</if>>/*#
#desc: setup all the random triggered events that happen at the office
#status: RELEASED 0.6.0.0
#*/
/%non-random "salary" event%/
<<if $now.getUTCDay() < 4 || ($now.getUTCDay() == 4 && $now.getUTCHours() < 19)>>
<<set _salDate = setup.setNextDate($now, 4-$now.getUTCDay(), 19, 0)>>
<<else>>
<<set _salDate = setup.setNextDate($now, 11-$now.getUTCDay(), 19, 0)>>
<</if>>
<<addEvent 'weekly_salary_phonecall' _salDate>>
<<addWorkEvent 'work_coffee_random'>>
<<addWorkEvent 'office_random_event'>>
<<addEvent 'elevator_home_random'>>
<<addWorkEvent 'work_meeting'>>
<<addWorkEvent 'manager_out_of_office'>>
<<addWorkEvent 'work_meeting_hr_discipline'>>
<<addEvent 'elevator_in_random'>>
<<addEvent 'canteen_random'>>
<<addEvent 'female_bathroom_work_random'>>
<<addEvent 'male_bathroom_work_random'>>/*#
#desc: alternate event to when a work event triggers but it can't process
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
A delivery person arrives with a package for your manager. You sign for it and deliver it to her inner office. Though busy on a phonecall she glances at the label... and then at you before smiling and waving you back to your desk.<br>
<br>
A slight shiver of anticipation goes down your spine as you return to your seat and you wonder what your manager has in store for you next...<br>
<br>
[<<moveTo $scene.workEventReturn "Back to your work." 60>>]
</div>/*#
#desc: manager of hr employee development department visits for a meeting
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.stage = Math.min($npc_manager.stage, $npc_development.stage)>>
<<switch $npc_development.stage>>
<<case 0>>
<<set $npc_development.stage = 1>>
<<registerProgressionEvent>>
<<case 1>>
<<if $npc_manager.stage > $npc_development.stage>>
<<set $npc_development.stage = 2>>
<<registerProgressionEvent>>
<</if>>
<<case 2>>
<<if $npc_manager.stage > $npc_development.stage>>
<<set $npc_development.stage = 3>>
<<registerProgressionEvent>>
<</if>>
<<case 5>>
<<if $npc_development.flags.work_oral && $npc_development.flags.work_anal>>
<<removeRandomEvent 'work_office' 'hr_development'>>
<</if>>
<</switch>>
<<if $npc_manager.stage < 4 && $npc_development.stage >= 3>>
<<set $scene.stage = 3>>
<<set $npc_development.stage = 3>>
<<registerProgressionEvent>>
<<elseif $npc_development.stage >= 5 && !($npc_development.flags.work_oral && $npc_development.flags.work_anal)>>
<<set $scene.stage = 3>>
<<else>>
<<set $scene.stage = $npc_development.stage>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You hear a knock on the door, your <<=ps(setup.getNpcName('npc_manager', 'title'))>> schedule listing a meeting with <<=setup.getNpcName('npc_development', 'formal')>>, HR Manager in charge of Employee Development.<br>
<br>
<<switch $scene.stage>>
<<case 1>>
You open the door to find yourself eye to eye with some of the largest breasts you've ever seen in person. Stepping back to welcome <<=setup.getNpcName('npc_development', 'formal')>>, your eyes trace up and down her body, the woman the distillation of every fantasy you ever had about a sexy schoolteacher or hot librarian. The mere fact that she isn't exploding out of her top is a sustained miracle and she combines it with an hourglass figure, sexy hips, and all of all perched atop steep, sexy heels.<br>
<br>
"@@.npc_development;Oh! It looks like I'm a few minutes early so... how are you doing? Adjusting to your new position?@@"<br>
<br>
<<if $player.body_ref.penis && !setup.checkItemTypeWorn('cage')>>
Quickly sitting down to conceal your body's excited reaction to her intense presence, you
<<else>>
You quickly take a seat, heart beating with excitement at her intense presence as you take a deep breath and
<</if>>
nod, trying not to stare up as she sits on your desk, looming over you with her huge, perfect breasts.<br>
<br>
She asks you a few questions about your work, if there are any responsibilities you find yourself untrained for, you mumble responses as she nods in understanding.<br>
<br>
"@@.npc_development;Lovely, lovely. Well, if you ever find yourself struggling to fit in or handle your new position you should keep in mind that my department is always here to help with employee training and development. I'm sure you are quite busy just learning the basics, but maybe someday <<=setup.getNpcName('npc_manager', 'first')>> will let me have you for a class or two...@@"<br>
<br>
The way she peers over her glasses and winks at you has your heart fluttering as you wonder what exactly her "class" might entail. You do not get the opportunity to ask, however as she quickly returns to her feet and heads into the inner office for her meeting.<br>
<br>
Without her distracting presence, you are able to calm down and return to your work, doing your best to stay heads-down when she comes back out, though you are unable to resist taking a peek, to confirm that your memory is accurate as to her anime-esque figure.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<case 2>>
You open the door to greet the buxom <<=setup.getNpcName('npc_development', 'formal')>>. She smiles at you as she walks past while her cute assistant, dressed in a too-small schoolgirl outfit complete with skirt, stockings, top, and heels follows after her.<br>
<br>
"@@.npc_development;Hello, <<=$player.first_name>>, still haven't managed to make it into a class yet? Well, someday soon, I hope.@@" She nods towards her assistant. "@@.npc_development;This lovely thing is on a bit of a learning field trip — she's practicing taking notes for important meetings.@@"<br>
<br>
You nod at the two of them as the schoolgirl blushes and smiles back at you.<br>
<br>
<<if setup.getTotalValue("feminization") > 15>>
<<printThought "Would I have to dress like that for class, too? I hope so!">>
<<else>>
<<printThought "Would I have to dress like that for class, too? That would be humiliating!">>
<</if>>
<br><br>
Heading in for their meeting, you close the door and return to work, some time later the two of them emerge, the schoolgirl assistant in the process of fixing her skirt as they walk past your desk and out of the office.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<case 3>>
<<=setup.getNpcName('npc_development', 'formal')>> strides into the office, looking as ready to explode out of her top as always, a cutie in a skimpy schoolgirl outfit following obediently at her heels.<br>
<br>
Opening the door to the inner office, you motion them in for their meeting, <<if $player.work.school > 0>>your fellow student winking at you on the way past <</if>>and return to your desk.<br>
<br>
Plugging away at your work, you come to a form that requires <<=ps(setup.getNpcName('npc_manager', 'formal'))>> signature. Not even thinking about the meeting, you've stepped into the inner office before remembering that <<=setup.getNpcName('npc_development', 'formal')>> is still here.<br>
<br>
They pause their discussion to look over as you realise that you can't see <<=ps(setup.getNpcName('npc_development', 'formal'))>> "assistant" anywhere. <<=setup.getNpcName('npc_manager', 'formal')>> waves you in and you walk up to her desk to hand over the form.<br>
<br>
Rising from her seat gives you a glimpse of the missing assistant — the top of her head bobbing up into sight on the far side of the desk, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> hiked up skirt and missing panties making it clear what the assistant was up to betwixt your <<=ps(setup.getNpcName('npc_manager', 'title'))>> legs.<br>
<br>
You can't help but feel a twinge of envy at the sight, which <<=setup.getNpcName('npc_development', 'formal')>> seems to instantly latch onto.<br>
<br>
"@@.npc_development;Aww! Don't be like that, a good secretary needs to be versatile in all manner of oral presentation and it wouldn't be professional for us to sign off on a graduate without <<=setup.getNpcName('npc_manager', 'formal')>> personally verifying a student's bona-fides. Here, why don't you kneel down with me, your lips would be far happier wrapped around my diddle stick than curved into that ugly jealous frown.@@"<br>
<br>
<<if !$player.virgin.blowjob>>
[@@.link_locked;This being your first blowjob... no, you'd only embarrass yourself.@@]<br>
<<else>>
[<<moveTo "event_work_hr_development_oral" "Accept her offer." 120 "<<set $scene.accept=true>>">>]<br>
<</if>>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_work_hr_development_anal" "Suggest that she might find your rear hole even more enjoyable." 360 "<<set $scene.accept=true>>">>]<br>
<</if>>
[<<moveTo "event_work_hr_development_oral" "Reply that you have too much work to do and politely decline." 120 "<<set $scene.accept=false>>">>]
<<case 4 5>>
<<if $npc_development.stage >= 5>>
Greeting you with a smile <<=setup.getNpcName('npc_development', 'formal')>> continues on into the inner office, finishing her meeting without disturbing you, emerging some time later to continue off on her way.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 600 "<<completeWorkEvent>>">>]
<<else>>
<<=setup.getNpcName('npc_development', 'formal')>> strides into the office with one of her students following behind on a leash. Your jaw almost drops at the sight of the student's outfit.<br>
<br>
High heel Mary Jane's are paired with thigh-high creamy white stockings, but it is starting just above there where things take a REAL turn. Her short skirt stops well above her mid thigh, it is completely open in front, revealing her exposed cunt, a piercing through her clit at the end of a thin leash held by <<=setup.getNpcName('npc_development', 'formal')>>. Even more lewd is the fact that her front hole is spread and open by a wide, hollow plug, dripping slightly as she remains effectively gaped and ready for any who might wish to use her.<br>
<br>
Above the skimpy skirt her torso is bare save for a short sleeved "top" that is little more than a collar and sleeves, failing to cover her breasts in the slightest as they hang on full display, both pierced nipples hard and perky with her school id hanging from her left piercing. A leather collar is buckled under her shirt collar — a large, pink dildo hanging from the front to hang between her breasts like a bizarre, perverted tie.<br>
<br>
As she walks past, you catch a view of her backside, a small, cute backpack high on her back, her skirt just as revealing behind as it is cut to display her ass, a thong buckled between her cheeks ending at the hollow plug gaping her ass.<br>
<br>
They are about to walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office when <<=setup.getNpcName('npc_development', 'formal')>> looks back at you with a grin. "@@.npc_development;Well? Stop staring and come along, I am going to need your help in a few minutes.@@"<br>
<br>
[<<moveTo "event_work_hr_development_uniform_1" "Follow them in as instructed." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_hr_development_uniform_1" "Say you have work to do and remain at your desk." 120 "<<set $scene.obey=false>>">>]
<</if>>
<<default>>
ERROR: unknown stage! <<=$scene.stage>><br>
[<<moveTo $scene.workEventReturn "Continue working." 600 "<<completeWorkEvent>>">>]
<</switch>>
</div>/*#
#desc: perform oral (or not) on npc_development whilst she meets with your manager
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if $npc_development.stage < 4>>
<<set $npc_development.stage = 4>>
<<registerProgressionEvent>>
<</if>>
<<set $npc_development.flags.work_oral = true>>
<<applyExperience 'oral' $npc_development.penis_size 'terrible' $SEEN_FRIEND>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_development'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "obedient">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<applyExperience 'cum' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Obediently sliding to your knees, you crawl up in between <<=ps(setup.getNpcName('npc_development', 'formal'))>> spread legs. Under her skirt her large, thick cock strains against its surprisingly sturdy panties, springing up with enough force to slap you in the cheek once the lace undergarments are pulled aside. Her lack of balls results in a smooth look as fascinating as it is enticing.<br>
<br>
<<if $player.flags.special_skills.blowjob_training>>
Mindful of your lessons you blink up at <<=setup.getNpcName('npc_development', 'formal')>> while holding her cock gently with both hands. Waiting until she nods her permission you maintain eye-contact and lean forward, gently kissing her tip before running your tongue over and under her delicious foreskin.<br>
<br>
Her smooth lack of balls means that your entire focus remains on her shaft and you stroke her perineum with one hand as you begin to slowly deepthroat her cock, making sure every moment is sensuous rather than aggressive worshipping her magnificence as you stare longingly up at her face.<br>
<br>
Smiling down a final time she turns back towards your <<=ps(setup.getNpcName('npc_manager', 'title'))>> as they resume their meeting. Utterly focusing on your "dicktaking" duties you continue to suck and lick and love until you feel her gentle hand on the back of your head indicating it is time for you to finish.<br>
<br>
Shifting gears you quicken your pace, stroking and sucking until she discharges her unique payload, your mouth filling with thin bursts of pseudo-cum.<br>
<br>
Leaning back you look up and open your mouth to show off her special load, waiting until she nods to gulp it down and beam back with a wide smile.<br>
<br>
Rising to your feet, you glance over at your compatriot standing up from under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desk and licking her lips.<br>
<br>
"@@.npc_manager;Very good, dear, you may return to work.@@" She states as you give a final curtsy and scurry back to your desk.
<<else>>
<<if setup.getTotalValue("oral") > 15>>
You devour her cock with all of your consummate skill, sucking her deep into your throat while deploying tongue and lips to flutter up and down her length, reacting to her every gasp or moan to push her higher and higher until you are rewarded with a mouthful of her
<<elseif setup.getTotalValue("oral") > 10>>
Though she is large, you are more than up to the occasion, sucking and slurping passionately, using tongue and fingers and throat in concert until she rewards you with her
<<elseif setup.getTotalValue("oral") > 5>>
Her cock is long and thick, but you do what you can, showering it with kisses and licks, passionately sucking her tip and stroking her shaft until your efforts are rewarded with her
<<else>>
You are more than a little intimidated by her massive cock, but you do your best, licking and sucking and stroking and throwing every technique you know or can think of at her until, eventually, she unleashes, flooding your mouth with her
<</if>>
<<if setup.getTotalValue("cum") > 15>>heavenly<<elseif setup.getTotalValue("cum") >= 10>>delicious<<elseif setup.getTotalValue("cum") > 5>>yummy<<else>>surprisingly mild<</if>> cum.<br>
<br>
After she has filled your belly with <<getWordCum>>, <<=setup.getNpcName('npc_development', 'formal')>> looks down at you analytically.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
"@@.npc_development;Your technique is quite advanced, but your style... it is my belief that a proper blowjob is an art, not to be hurried, but to be enjoyed, savoured...@@"
<<elseif setup.getTotalValue("oral") > 10>>
"@@.npc_development;Hmm, you are obviously quite skilled, but your style... it is my belief that a proper blowjob is an art, not to be hurried, but to be enjoyed, savoured...@@"
<<elseif setup.getTotalValue("oral") > 5>>
"@@.npc_development;Hmm, your skills are barely adequate, but really, for one in your position you should be striving for excellence, don't you agree?@@"
<<else>>
"@@.npc_development;Have you ever tasted a cock before? Your technique is clumsy and amateurish, at best, far below what would be considered acceptable for one of your position.@@"
<</if>>
<br><br>
She looks across at your <<=setup.getNpcName('npc_manager', 'title')>>. "@@.npc_development;You really ought to enrol her in my Oral Relations Advanced Lecture, it would do her well to... sharpen her skills.@@"<br>
<br>
"@@.npc_manager;I will take it under advisement, but for now, if you are finished with her mouth, she probably has other work to return to.@@"<br>
<br>
Dismissed, you curtsy towards each woman in turn and hurry back to your desk.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>>">>]
<<else>>
You reach for the signed paper and start to excuse yourself only for <<=setup.getNpcName('npc_manager', 'formal')>> to reach out and press the paper against the desk.<br>
<br>
"@@.npc_manager;What is this? While a commitment to your job is admirable, one of your primary duties is to support me by entertaining my guests. Now, get down on your knees unless you would rather she bend you over and take her pleasure another way?@@"<br>
<br>
[<<moveTo "event_work_hr_development_oral" "Kneel down as instructed." 360 "<<set $scene.accept=true>>">>]<br>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_work_hr_development_anal" "Take the hint and suggest she partake of your rear hole." 360 "<<set $scene.accept=true>>">>]<br>
<</if>>
[<<moveTo "event_work_hr_development_anal" "State firmly that you really do need to return to work." 60 "<<set $scene.accept=false>>">>]<br>
<</if>>
</div>/*#
#desc: npc_development fucks your ass whilst she meets with your manager
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept || $fetish.get_raped>>
<<set $scene.first = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_development">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<if $scene.accept>>
<<set $player.sec_style.sex.anal = "obedient">>
<<else>>
<<set $player.sec_style.sex.anal = "forced">>
<</if>>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<if $scene.accept>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<<else>>
<<set $player.sec_style.sex.sex_woman = "forced">>
<</if>>
<</if>>
<<set $npc_development.flags.work_anal = true>>
<<if $npc_development.stage < 4>>
<<set $npc_development.stage = 4>>
<<registerProgressionEvent>>
<</if>>
<<applyExperience 'anal' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<if !$scene.accept>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept || $fetish.get_raped>>
<<if !$scene.accept>>
Your objections fall on deaf ears as your manager nods with permission and soon <<=setup.getNpcName('npc_development', 'formal')>> has you bent over the desk, your clothes pulled down to expose yourself even as you beg for mercy.<br>
<br>
"@@.npc_manager;Really you are embarrassing me quite enough.@@" your <<=setup.getNpcName('npc_manager', 'title')>> states in annoyance. "@@.npc_manager;Now quiet and do your duty while we attend to work.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
Your plug is swiftly removed from your rear and then she is pressing her cock into you.
<<else>>
<<=setup.getNpcName('npc_development', 'formal')>> does not wait, swiftly shoving her cock into you.
<</if>>
<<else>>
Explaining that you feel that you could better serve her with your ass you wait for approval from both <<=setup.getNpcName('npc_development', 'formal')>> and <<=setup.getNpcName('npc_manager', 'formal')>> before bending over the desk and presenting your rear.<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow'])>>
Removing your clothes, you wiggle your rear in invitation, an invitation she does not hesitate, but to accept as she steps up behind you, her cock already out and hard.
<<else>>
First removing your clothes, you let out a little gasp as you slide the <<=setup.getItemTypeName("plug")>> out of your rear, placing it carefully to one side before spreading yourself in invitation. <<=setup.getNpcName('npc_development', 'formal')>> does not hesitate, stepping close, her own cock already out and hard.
<</if>>
<</if>>
<br><br>
Grabbing you by the rear with one hand, she saws her cock up and down between your cheeks, dribbling lube down over herself and rubbing it in before finally shifting her angle to press her tip against your waiting hole.<br>
<br>
<<if $scene.first>>
<<if $scene.accept>>
After an initial twinge of pain
<<else>>
Despite your reluctance, and initial pain,
<</if>>
things soon turn to pleasure as <<=setup.getNpcName('npc_development', 'formal')>> proves her skills as a teacher, showing you just how good it can feel to get fucked in the ass.<br>
<br>
<</if>>
<<if $player.flags.special_skills.anal_training>>
You moan in irresistible appreciation of her pressing against your body arching your back and looking back over your shoulder as you silently beg her to enter you.<br>
<br>
She soon obliges, her thick, hard cock sliding into your eager hole. Focusing on technique you relax until she is deep inside you and then set to work, clenching and milking and grinding so that even without her even moving her cock is getting the pompoir-inspired stimulation of a lifetime.<br>
<br>
"@@.npc_development;Good girl...@@" she coos in breathless appreciation, her approval only motivates you to do even better.<br>
<br>
Leaving you to it she remains deep inside your ass, leaving everything to your skilled hole as she casually resumes her meeting. Focused on your duties, as sensuous rear hole you barely pay attention to the conversation passing above you, instead focusing everything on keeping her hard cock entertained.<br>
<br>
Eventually you recognise the indicators that the meeting is wrapping up, and she begins to shift, thrusting back and forth with short strokes as you redouble your efforts to aid her approaching climax. Your heart beating fast you pant and gasp, your pleasure only heightened by her approving sounds from behind, and the fact that if you look up you are presented with the glorious, grinning face of your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
Finally <<=setup.getNpcName('npc_development', 'formal')>> cums, pumping her cum hard and deep into you and leaving you to clamp down tight lest a single drop leak out as pulls back and slides out of your rear.<br>
<br>
Immediately you thank her for the offering and she pats your rear in approval.<br>
<br>
"@@.npc_development;Ah, what a natural butt-slut, I told you sending her to my class would pay off, and my did it!@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, sliding back from her desk so that the student long ensconced between her legs can finally rise.<br>
<br>
"@@.npc_manager;The success of the student always reflects back on their teacher, thank you again for dropping by, it is always good to pound these things out beforehand.@@"<br>
<br>
<<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.npc_development;Yes, a good pounding is always in order.@@" She gives your butt a nice squeeze as you set about fixing your clothes.
<<else>>
You have just finished sliding the <<=setup.getItemTypeName("plug")>> back in place to seal up your cum-filled rear when <<=setup.getNpcName('npc_development', 'formal')>> gives your rear a friendly squeeze. "@@.npc_development;Yes, a good pounding is always in order.@@"<br>
<br>
You suppress a moan and focus on fixing your clothing.
<</if>>
<br><br>
Walking around the desk to rejoin her instructor you can still smell <<=setup.getNpcName('npc_manager', 'formal')>> on the student, the scent of your <<=ps(setup.getNpcName('npc_manager', 'title'))>> sex serving to make you more aroused.<br>
<br>
With a final nod and curtsy, respectively, <<=setup.getNpcName('npc_development', 'formal')>> and her assistant depart <<=setup.getNpcName('npc_manager', 'formal')>> smiles at you in approval.<br>
<br>
<<if $scene.accept>>
"@@.npc_manager;Wonderfully handled, offering up your ass like that... now that is the sort of creative thinking that sets a proper secretary apart from a mere servant. Thank you again for your contribution and I wish you a pleasant remainder of the day.@@"
<<else>>
"@@.npc_manager;Good to see you got into it after that initial reluctance. Do try to show more enthusiasm in the future, I do not find reticence to be an appealing trait in a <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<</if>>
<br><br>
With a parting curtsy of your own you hurry back to your desk with a prideful spring in your step.
<<else>>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
You reflexively push back eagerly as her thick cock enters you, moaning with lust as she easily hilts in your versatile hole, grinding back against her as she begins to thrust.
<<else>>
You moan as she easily slides into you, her cock wonderfully spreading you in a way few penises are capable.
<</if>>
<br><br>
She is an expert at anal, her cock <<if $player.body_ref.penis>>scraping ecstatically over your prostate<<else>>wonderfully stroking inside your rear<</if>>, leaving you gasping and moaning and desperate for more when she swiftly floods your ass with cum. Three hard pumps make sure to spread her seed deep inside you before she slides out with a pop.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
You gasp and pant as she slowly works into you, her massive member spreading you beyond your limits as she is forced to settle with getting a mere half of herself into your ass.
<<else>>
You think you are about to be split in two as she forces her way into your barely used hole. Just her tip is more than you can handle and you gasp and flail until she pulls out with a pop that leaves you feeling gaped, empty and ashamed.
<</if>>
<br><br>
"@@.npc_development;Disappointing, I really would have thought your secretary would be more... adept in such matters.@@"
<</if>>
<br><br>
"@@.npc_development;You should really consider enrolling her in my class. As beautiful as her ass is, it really ought to feel just as good within, and I would love nothing more than to drill some proper pompoir skills into her. Mmm, the addition of a bit of flutteriness and muscle control to her already delightful hole... she'd have <<if !$options.fem>>men, and blessed women<<else>><<if $fetish.futanari>>futas and <</if>>blessed women<</if>> lining up around the block!@@"<br>
<br>
"@@.npc_manager;A tempting offer, I shall take it under advisement. For now, however, I think it would be best if our lovely secretary returned to her desk that the two of us might attend to my work.@@"
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<br><br>
<<=setup.getNpcName('npc_development', 'formal')>> helpfully stuffs the <<=setup.getItemTypeName("plug")>> back into your gaping and used hole, giving you a friendly slap on the ass before fixing your clothes and sending you on your way.
<</if>>
<br><br>
Pushing yourself to your feet, you drop into a curtsy and then hurry back to your desk.
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> pauses as you again attempt to excuse yourself. Finally she turns towards her guest. "@@.npc_manager;It would quite seem that my assistant does need some additional... training... let me know when your next remedial course is starting and I may well have an enrollee for you.@@"<br>
<br>
You gulp in fear, but take advantage of the dismissal to hurry back to your desk.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to work." 0 "<<completeWorkEvent>>">>]
</div>
/* outfits inspired by school_uniform_2_front.jpg and school_uniform_2_rear.jpg *//*#
#desc: npc_development has you strip to show off new "school uniforms"
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_development.stage = 5>>
<<registerProgressionEvent>>
<<include "checkSchoolReady">>
<<include "dressScandalousSchoolgirl">>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
Unable to avoid staring at the student's cute, exposed rear you follow behind as <<=setup.getNpcName('npc_development', 'formal')>> leads the way into the inner office.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> motions for you and your compatriot to flank her before before greeting <<=setup.getNpcName('npc_manager', 'formal')>>. <<=setup.getNpcName('npc_development', 'formal')>> turns to you "@@.npc_development;Strip.@@"<br>
<br>
You glance up at <<=setup.getNpcName('npc_manager', 'formal')>> for permission and she nods, a small, but eager, smile on her face.
<<else>>
<<=setup.getNpcName('npc_development', 'formal')>> frowns before stepping into the inner office. A moment later you receive a message from <<=setup.getNpcName('npc_manager', 'formal')>>. "@@.npc_manager;Please join us in the inner office, and next time? Do try to remember your duties of hospitality to my guests...@@" Quickly you head into the inner office where you find the three women waiting patiently as you are ordered to strip.<br>
<</if>>
<br><br>
As you remove your clothing <<=setup.getNpcName('npc_development', 'formal')>> explains the situation. "@@.npc_development;So, on my right you can see the base female version of the new uniform that I have designed for our advanced students, I brought your lovely secretary in to aid in demonstrating what the <<if $fetish.sissy>>SISSI<<else>>modified<</if>> version looks like.@@"<br>
<br>
Shimmying out of your clothes with practiced efficiency <<=setup.getNpcName('npc_development', 'formal')>> has you strip down until only
<<if !setup.checkItemTypeWorn("cage")>>
<<if setup.checkItemTypeTag('choker', ['collar'])>>
only your collar remains in place.
<<else>>
you are wearing nothing at all.
<</if>>
<<else>>
only your <<if setup.isCage()>>cage<<else>>chastity belt<</if>> <<if setup.checkItemTypeTag('choker', ['collar'])>>and collar remain<<else>>remains<</if>> in place.
<</if>>
<<if $scene.plug>>She finishes up by ordering you to extract your plug.<</if>>
<br><br>
By the time you have stripped, your fellow "student" has removed her backpack and begins handing you skimpy items from within. Heels, stockings and top and skirt are the same, complete with a hollow plug to leave you gaping behind, your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>chastity shield<</if>> on full display.<br>
<br>
<<if $player.body.breastsize[0] > 0>>
Turning to your breasts <<=setup.getNpcName('npc_development', 'formal')>> gives you a friendly grope before attaching an ID to your left nipple <<if $player.piercings.nipples>>ring<<else>>by way of a painful clamp<</if>>.
<<else>>
Though you lack breasts <<=setup.getNpcName('npc_development', 'formal')>> still tweaks your nipples until hard, attaching an ID to your left nipple <<if $player.piercings.nipples>>ring<<else>>by way of a painful clamp<</if>>.
<</if>>
The final, humiliating "touch" comes with a pink dildo dangled from your collar, a mock tie that only turns the perversion higher as you imagine it being shoved into one of your holes, a dangling promise of discipline tapping your chest every time you move.<br>
<br>
You feel even more exposed than you did when you were naked, shifting from one foot to the other nervously as she <<if setup.checkItemTypeWorn("choker")>>arranges your slave collar underneath that of your top<<else>>buckles a pink leather collar around your throat beneath the collar of your top<</if>> with the dildo ominously resting <<if $player.body.breastsize[0] > 0>>between your <<=setup.calcBreastSize()>> breasts<<else>>in front<</if>>.<br>
<br>
<<if $player.body_ref.balls && !(setup.checkItemTypeWorn("cage") && !setup.isCage())>>
Finally she attaches a heavy metal weight around your testicles, pulling them down and away from your <<if setup.checkItemTypeWorn("cage")>>imprisoned <<if $fetish.sissy>>sissy<<else>>girl<</if>> clitty<<else>>body<</if>>, finishing off by removing the leash from the other girl's clit ring and showing how it can just as well attach to your stretched balls.<br>
<br>
<</if>>
[<<moveTo "event_work_hr_development_uniform_2" "Continue." 0>>]
</div>/*#
#desc: you pose in new school uniforms for manager + npc_development
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
"@@.npc_development;Ta-da! So, what do you think?@@"<br>
<br>
Giving a motion of her hand <<=setup.getNpcName('npc_development', 'formal')>> has you and the other girl turn in small circles to show off from all sides as <<=setup.getNpcName('npc_manager', 'formal')>> looks on intently.<br>
<br>
"@@.npc_development;As you can see, this new style checks all the boxes — it is cute, easy to move in, and it has the student available for swift administration of rewards or punishments alike.@@" Punctuating this explanation she plucks the dildo from the other student's collar and slides it into her exposed cunt. The girl gasps only for it to turn into a yelp of pain as <<=setup.getNpcName('npc_development', 'formal')>> lands a loud slap on the girl's exposed rear.<br>
<br>
"@@.npc_manager;Lovely, yes, I think that is nearly perfect only... what about students who are more chronically misbehaving? You cannot be constantly interrupting class to spank them.@@"<br>
<br>
"@@.npc_development;Quite so, and something that we have taken into account.@@" Reaching into the backpack she retrieves a pair of cuffs, locking them around your compatriot's wrists and then attaching them by short chains to her nipples before finishing off by stuffing a gag into the girl's mouth.<br>
<br>
"@@.npc_development;Just enough range of motion to write in her notebook if she leans over carefully, while keeping her properly silenced, alert and out of trouble.@@"
<<else>>
"@@.npc_development;Now, given that your secretary was a bit... hesitant to obey I thought I might take this moment to demonstrate the addition restraints that can be swiftly applied to recalcitrant students.@@"<br>
<br>
In moments, you have a pair of cuffs locked around your wrists, short chains linking them to <<if $player.piercings.nipples>>your nipple rings<<else>>the front of your collar<</if>>. A ball gag finishes things off, leaving you mute with a very reduced range of motion.<br>
<br>
"@@.npc_development;There we go — just enough range of motion to take notes if she leans over carefully, but no more talking out of turn and the student will be very... aware of the consequences of her misbehaviour.@@"<br>
<br>
Giving a motion of her hand <<=setup.getNpcName('npc_development', 'formal')>> has you and the other girl turn in small circles to show yourselves off from all sides as <<=setup.getNpcName('npc_manager', 'formal')>> looks on intently.<br>
<br>
"@@.npc_development;As you can see this new style checks all the boxes — it is cute, easy to move in, and it has the student available for swift administration of rewards or punishments.@@" Punctuating this explanation she plucks the dildo from your collar shoves it into your exposed ass, pushing it deep until it seems to seat in place leaving you wide-eyed and taking quick, short gasps through your gag. You have little chance to adjust to this new, fuller situation when she gives your bare bottom a sharp slap that echoes through the room.
<</if>>
<br><br>
"@@.npc_manager;Wonderful, well, I think I have seen enough, go ahead and roll them out at the soonest convenience, I would not wish for your students to be denied for a moment longer.@@"<br>
<br>
All three of you — <<=setup.getNpcName('npc_development', 'formal')>>, the other "student" and yourself curtsy in gratitude.<br>
<br>
Turning back towards you <<=setup.getNpcName('npc_development', 'formal')>> smiles sheepishly. "@@.npc_development;Sorry, my dear, but I only have the one prototype. Though I hope to see you like this again in class someday.@@"<br>
<br>
Changing back into your "normal" clothes you give another curtsy as <<=setup.getNpcName('npc_development', 'formal')>> packs things back up into the small backpack and you escort them out, waiting until they have left the office to return to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 0 "<<set $player.cutscene.lockinventory = false>><<include 'removeScandalousSchoolgirl'>><<completeWorkEvent>>">>]
</div>/*#
#desc: drop in in stage 5
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.visitedDevelopment = true>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You drop in on <<=setup.getNpcName('npc_development', 'formal')>> to find her looking a bit tired, her classroom jammed full with rows of students strapped obediently in their chairs wearing doll helmets, staring uniformly and obediently forward. <br>
<br>
"@@.npc_development;Miss <<=$player.last_name>>! So delightful to see you... unfortunately I cannot offer you any tutoring today, as you can see I am just swamped with students.@@"<br>
<br>
She gestures across the packed classroom. From the way they occasionally twitch and shudder you conclude they are "hard at work" at a very intense, if impersonal lesson. <<=setup.getNpcName('npc_development', 'formal')>> sighs. "@@.npc_development;I am not exactly happy with these new lesson plans... but with the scale I'm facing in terms of onboarding Nintendolls, CDS and others, to say nothing of aggressive reorganisation and retraining of existing positions... well, there really isn't an alternative.@@" As she talks she wanders through the aisles, occasionally tapping a remote as she passes by a student, a chin that had been previously drooping every so slightly suddenly jerking upright in attention.<br>
<br>
"@@.npc_development;See?@@" She states as she pets a latex-clad, anonymised student doll, "@@.npc_development;even with such automation as this a personal touch can serve to boost effectiveness... but I admit that I am being run somewhat ragged keeping up, to say nothing of the lack of satisfaction when I barely ever see my student's smiling faces...@@"<br>
<br>
She sighs and then looks back at you. "@@.npc_development;I am sure you have your own troubles, I do not mean to burden you with mine... but I do need to get back to work, come back some other week and we can perhaps enjoy a more fulfilling, private lesson.@@"<br>
<br>
You thank her for her time and, with a final glance back at the somewhat eerie room full of students, depart.<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: manager of hr discipline department visits for a meeting
#status: RELEASED 0.6.0.0
#ignore_spell: b
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.stage = Math.min($npc_manager.stage, $npc_discipline.stage)>>
<<switch $scene.stage>>
<<case 0>>
<<set $npc_discipline.stage = 1>>
<<registerProgressionEvent>>
<<case 1>>
<<if $npc_manager.stage > $npc_discipline.stage>>
<<set $npc_discipline.stage = 2>>
<<registerProgressionEvent>>
<<include "checkManagementAssess">>
<</if>>
<<case 2>>
<<if $npc_manager.stage > $npc_discipline.stage && $player.sec_style.sex.anal && $player.sec_style.sex.sex_woman>>
<<set $npc_discipline.stage = 3>>
<<registerProgressionEvent>>
<</if>>
<<case 3 4 5>>
<<if $npc_discipline.stage == 4>>
<<set $npc_discipline.stage = 5>>
<<registerProgressionEvent>>
<<if setup.getTotalValue("dominance") > 0>>
<<set $scene.submissionVariant = false>>
<<else>>
<<set $scene.submissionVariant = true>>
<</if>>
<<elseif $npc_discipline.stage == 5>>
<<set $scene.pairEvent = random(1,5) < 3 && !($npc_discipline.flags.competition.sub_nocum && $npc_discipline.flags.competition.sub_cum && $npc_discipline.flags.competition.top_cum && $npc_discipline.flags.competition.top_nocum)>>
<<if !$scene.pairEvent>>
<<if setup.getTotalValue("dominance") > 0>>
<<set $scene.submissionVariant = random(0, setup.getTotalValue("submission") + setup.getTotalValue("dominance")) <= setup.getTotalValue("submission")>>
<<else>>
<<set $scene.submissionVariant = true>>
<</if>>
<</if>>
<<else>>
<<set $npc_discipline.other_call = "Mistress">>
<<set $npc_discipline.call = "Mistress">>
<</if>>
<</switch>>
<<if $npc_discipline.stage > 2 && ($npc_manager.stage < 4 || !($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)))>>
<<set $scene.stage = 2>>
<<set $npc_discipline.stage = 3>>
<<registerProgressionEvent>>
<<else>>
<<set $scene.stage = $npc_discipline.stage>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.stage>>
<<case 0 1>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_discipline","npc_discipline_1_nowhip")>>
<<case 2>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_discipline","npc_discipline_1_nowhip") setup.charImage("npc_discipline","npc_discipline_assist")>>
<<default>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_discipline","npc_discipline_2_nowhip") setup.charImage("npc_discipline","npc_discipline_assist")>>
<</switch>>
<div id="invframe" class="scrolltext">
Sharply on the hour, you hear a knock on the door, your <<=ps(setup.getNpcName('npc_manager', 'title'))>> schedule listing a meeting with <<=setup.getNpcName('npc_discipline', 'formal')>>, HR Manager in charge of Employee Discipline.<br>
<br>
<<switch $scene.stage>>
<<case 1>>
You open the door to find a tall, severe woman in a long leather coat. In her mid forties, but in perfect shape, her hair is pulled back. Expertly applied, but harsh makeup gives her an overly formal look to compliment her striking figure. Steep leather heels and leather gloves peek out from the obscuring garment and she nods without smiling in acknowledgement of your greeting as you offer to take her coat. She shakes her head, never even speaking a word to you as she moves past to the door to the inner office.<br>
<br>
Hurrying ahead, you hold the door, the woman walking past without a second glance. <<=setup.getNpcName('npc_manager', 'formal')>> dismisses you with a wave and you return to your desk as the two women commence their meeting.<br>
<br>
Half an hour later, precisely, the woman emerges, her coat just as tight as when she went in, and just as dismissive of you as you hold the door for her exit.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1800 "<<completeWorkEvent>>">>]
<<case 2>>
You open the door to find <<=setup.getNpcName('npc_discipline', 'formal')>> dressed in her same tight and obscuring ensemble of leather coat, gloves and boots. At her side is another woman, this one wearing a long, narrow skirt and a long, shiny poncho that completely conceals her from neck to waist. Both women reject your offer to take their coats, four sharp stiletto heels clicking across the room before they disappear into your <<=ps(setup.getNpcName('npc_manager', 'title'))>> inner office.<br>
<br>
Though <<=ps(setup.getNpcName('npc_manager', 'formal'))>> door is thick, you could swear you hear the occasional sound from the inner office during the course of the meeting, something that sounds like a sharp crack and, once, a muffled high-pitched cry.<br>
<br>
Half an hour on the nose, the two women emerge. <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> assistant is a bit unsteady, wincing slightly with each step, her face quite flushed and her previously perfect makeup slightly streaked as if she had been crying.<br>
<br>
Neither woman acknowledges you as they depart the office, your <<=setup.getNpcName('npc_manager', 'title')>> watching them go before smiling in your direction and nodding for you to return to work.<br>
<br>
You find yourself even more puzzled by the mysterious <<=setup.getNpcName('npc_manager', 'formal')>> as you resume your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1800 "<<completeWorkEvent>>">>]
<<case 3>>
Once again welcoming <<=setup.getNpcName('npc_discipline', 'formal')>> and today's assistant, her body concealed by a long poncho and matching skirt. The assistant is <<if $npc_discipline.stage >= 4>>pushing a large wheeled box<<else>>carrying a large briefcase<</if>> and you lead them into the inner office only for <<=setup.getNpcName('npc_manager', 'formal')>> to order you to stay.<br>
<br>
You catch a quick glance from the assistant, wide innocent eyes that communicate a touch of fear and... a bit of comforting concern? You are quickly distracted by other things as <<=setup.getNpcName('npc_discipline', 'formal')>> opens her jacket to reveal a leather teddy underneath, her jacket arrayed behind her like a cape, a flogger hanging from one hip as she smiles at you in a somewhat concerning manner.<br>
<br>
<<if $npc_discipline.stage > 4>>
"@@.npc_manager;So, one of the rules for working in the discipline department is that you must first gain an... intimate familiarity with the various techniques you will be required to employ in keeping other employees in line. Towards that end <<=setup.getNpcName('npc_discipline', 'other')>> has brought one of her trainees with her to work on a particular specialized technique that is used for when two employees are found to have been conspiring together in a manner contrary policy.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> smiles at you as her "assistant" wheels up the crate before moving to stand next to you, shedding her poncho and skirt to reveal that she is completely naked underneath.<br>
<br>
"@@.npc_discipline;Now, since you have volunteered to help, you can choose your "role" as it were — would you like to assume the position of the "ringleader," or that of the foolish girl who went along with the naughty plan?@@"<br>
<br>
[<<moveTo "event_work_hr_discipline_pair_1" "Say you see yourself as more of a leader." 360 "<<set $scene.leader=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_pair_1" "Say you would have definitely been the follower." 360 "<<set $scene.leader=false>>">>]
<<else>>
/% assistant bondage: discipline_assistant.jpg %/
"@@.npc_manager;I suppose a formal introduction should be in order — <<=setup.getNpcName('npc_discipline', 'other')>> leads the HR subdivision tasked with employee discipline. Today she has a new technique that she wanted to present to me for refinement and possible adoption and she asked if she could make use of you as a sort of A/B comparison point to show how its effects vary between its first application and repeated deployment.@@"<br>
<br>
The expression on the assistant's face suddenly makes sense and as her poncho and skirt are removed to reveal that she is naked save for a rope harness, intricate shibari covering wrapping her torso and breasts as well as holding her arms in a tight box tie behind her back. Your heart starts racing as you wonder what this "new technique" could involve.<br>
<br>
"@@.npc_manager;Please strip so that she can get started.@@"<br>
<br>
[<<moveTo "event_work_hr_discipline_demo_1" "Strip as instructed." 360>>]
<</if>>
<<case 4 5>>
<<if $scene.pairEvent>>
"@@.npc_manager;So, one of the rules for working in the discipline department is that you must first gain an... intimate familiarity with the various techniques you will be required to employ in keeping other employees in line. Towards that end <<=setup.getNpcName('npc_discipline', 'other')>> has brought one of her trainees with her to work on a particular specialized technique that is used for when two employees are found to have been conspiring together in a manner against policy.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> smiles at you as her "assistant" wheels up the crate before moving to stand next to you, shedding her poncho and skirt to reveal that she is completely naked underneath.<br>
<br>
"@@.npc_discipline;Now, since you have volunteered to help, you can choose your "role" as it were — would you like to assume the position of the "ringleader," or that of the foolish girl who went along with the naughty plan?@@"<br>
<br>
[<<moveTo "event_work_hr_discipline_pair_1" "Say you see yourself as more of a leader." 120 "<<set $scene.leader=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_pair_1" "Say you would have definitely been the follower." 120 "<<set $scene.leader=false>>">>]
<<else>>
<<if $scene.submissionVariant>>
Striding into the office single file <<=setup.getNpcName('npc_discipline', 'formal')>> and her assistant are dressed in identical leather coats.<br>
<br>
Seeing the two women stare down at you from atop their high heeled boots has you feeling submissively tingly. "@@.npc_discipline;So, my assistant is getting ready to "pass out" as a fully credentialed chief with a specialization in employee discipline. <<=setup.getNpcName('npc_manager', 'other')>> volunteered you for her to get in a bit of extra... practice while the two of us meet. Have fun girls!@@"
<br>
With a flourish the assistant opens her coat to reveal the full height of her thigh-high boots the tight, sexy leather teddy that is her only other clothing. A thick transparent strap-on dildo draws your gaze as it pops up from where it had lurked between her legs.<br>
<br>
"@@.generic_female1;So, are you going to be a good girl... or do you need... discipline?@@" She states with a slight smile, menacingly stroking her artificial cock, and in so doing drawing attention to the fact that within the oversized clear dildo is what looks like her actual cock, hard, but steel-bound at the centre of the transparent prison.<br>
<br>
[<<moveTo "event_work_hr_discipline_sub" "Submit willingly to her control." 120 "<<set $scene.obedient=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_sub" "See what she's got and be a bad girl." 120 "<<set $scene.obedient=false>>">>]
<<else>>
/* discipline_assistant_steel + gag */
Walking into the office with her assistant in tow there has been no attempt to hide the girl's submissive sex-slave status. Of course, here on <<=$player.work.upperFloorNumber>>, why would there be a need to?<br>
<br>
A steel collar locked around her throat denotes the girl as "owned" <<if $player.flags.collar.owner != "">>the same as yourself<</if>>, but that is merely the start of her steel bondage. Literally every piece of her "clothing" is composed of bondage gear; mirror-polished cuffs at her wrists, thighs and ankles linked with hobble chains along with matching chastity belt and bra. The ankle cuffs connect to a pair of steel high heels with a metallic ball gag strapped around her face to finish things off.<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> smiles as you stare at the very thorough bondage.<br>
<br>
"@@.npc_discipline;<<=setup.getNpcName('npc_manager', 'other')>> informed me that you have been beginning to develop your skills as a domina. This one has been quite naughty of late so I offered to bring her by to give you some practice whilst we have our meeting. Don't pay attention to her feigned innocence, she is due for a nice, hard spanking at a minimum or, well, whatever creative punishment you can come up with, but know that she NEEDS to be disciplined.@@"<br>
<br>
Heading for the inner office <<=setup.getNpcName('npc_discipline', 'formal')>> winks at you. "@@.npc_discipline;Have fun!@@"<br>
<br>
Nervously staring back at you the bound girl waits for you to make your move.<br>
<br>
[<<moveTo "event_work_hr_discipline_dom" "Bend her over for a basic spanking." 120 "<<set $scene.creative=false>>">>]<br>
[<<moveTo "event_work_hr_discipline_dom" "Get creative before you paddle her ass." 120 "<<set $scene.creative=true>>">>]
<</if>>
<</if>>
<<default>>
ERROR: unknown stage! <<=$scene.stage>><br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<</switch>>
</div>/*#
#desc: manager of hr discipline demonstrates remote controlling nipple clamps
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<useClothSetPush 'hr_discipline'>>
<<removeAllClothing>>
<<addItem "ball_gag_red">>
<<wearItem "ball_gag_red" true>>
<<addItem "rope_harness">>
<<wearItem "rope_harness" true>>
<<applyExperience 'bdsm' 14 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 10 'almost' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_2")>>
<div id="invframe" class="scrolltext">
Opening the briefcase and retrieving a hank of rope <<=setup.getNpcName('npc_discipline', 'formal')>> efficiently binds you identical to her assistant, the tight rope digging into your soft flesh and holding your bound arms <<if $player.body.breastsize[0] > 0>>and breasts <</if>>tight with just enough give so as not to cut off circulation.<br>
<br>
Next she produces a pair of ball-gags, first silencing her assistant before holding the matching ruby orb in front of your lips. A quick glance at <<=setup.getNpcName('npc_manager', 'formal')>> and you obediently open your mouth, the gag pulled deep and cinched tight.<br>
<br>
Returning to the briefcase <<=setup.getNpcName('npc_discipline', 'formal')>> returns with two pairs of fat nipple clamps linked by chain. She flicks your nipples a couple times to make them swell and stiffen before tightening them down until you wince.<br>
<br>
<<if $scene.plug != "">>
<<if setup.checkItemTag($scene.plug, ['hollow'])>>
Moving behind she squirts a thick blob of lube into your hollow-plugged rear.
<<else>>
Reaching behind, she removes the <<=setup.getItemName($scene.plug)>> from your rear and then massages in a fresh blob of lube.
<</if>>
<<else>>
Moving behind she squirts a thick blob of lube into your empty rear.
<</if>>
You brace yourself for something new to penetrate and fill you, but she walks away leaving your rear feeling slick and sensitive, but frustratingly empty.<br>
<br>
Heart beating faster you wonder what else the briefcase contains but, to your surprise, <<=setup.getNpcName('npc_discipline', 'formal')>> instead steps to one side and pulls out her phone and shows it to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_discipline;As you can see, minimal setup and the app has two modes, move and park. In park,@@" she taps her screen "@@.npc_discipline;Tilt monitors trigger punishment when movement is detected. Step forward, both of you.@@"<br>
<br>
You step forward only to be drawn up short by a harsh, painful shock emanating from the nipple clamps. Your gaze flits towards your fellow "test subject" who has remained still, and thus un-punished.<br>
<br>
"@@.npc_discipline;As you can see, the prior experience has left its lesson. Of course disobeying instructions is its own failure.@@" She taps her phone and your compatriot cries out into her gag shuddering as electricity courses through her nipples for a couple of seconds. Your turning to watch is apparently enough movement to re-trigger your own clamps and you yelp as well as a fresh burst of pain blossoms on your chest.<br>
<br>
It takes a few moments for the two of you to recover, both now taking great care to stand as still as possible.<br>
<br>
"@@.npc_discipline;So, this feature is obviously quite useful for teaching patience, or just being certain that your property will remain where you left it on those occasions you do not have the time or supplies for more conventional security measures.@@"<br>
<br>
"@@.npc_manager;Convenient, but you said there was a second mode?@@"<br>
<br>
"@@.npc_discipline;Yes! This is the really fun one — essentially you can wirelessly control your property, either directly like with a drone or, in a known environment, with a pathfinding algorithm — so you can, for example, issue a summons command, or send them on an errand without worrying about them getting lost. Here, watch.@@" She taps a few commands into the phone after which you feel a mild, but persistent jolt in your right nipple.<br>
<br>
The pain starts to increase until, watching your compatriot, you realise you are supposed to turn in that direction. Once you are facing the door there is a short pause, followed by a quick jolt in both nipples.<br>
<br>
Stepping forward you walk straight ahead, a few steps behind the more experienced girl until there is another jolt that you realise means "stop." <br>
<br>
<<if $npc_manager.stage < 4>>
"@@.npc_discipline;Whoops, almost forgot that this isn't quite appropriate attire for walking the halls... at least on this floor!@@"<br>
<br>
<<printThought "Wait... there's a floor that wearing nothing but rope and a gag WOULD be appropriate... oh no, she's going to send me outside the office!">>
<<else>>
"@@.npc_discipline;Hmm, I don't want to have our lovely test subject waylaid on their journey, so probably best to cover up a bit.@@"
<</if>>
<br><br>
A long cloak is pulled around your body, complete with a hood to conceal your face. You'll look a bit odd, for certain, but you'll technically be concealed. Your nipples light up once again and you step forward behind your similarly-attired compatriot.<br>
<br>
"@@.npc_discipline;Off you go my dears!@@"<br>
<br>
Your heart races as you step out of the office, but the embarrassment of being seen in the halls exposed as you are loses out to the pain of disobedience. Sure you may be technically covered, but you're quite helpless, and have no idea where your nipple clamps are going to lead you...<br>
<br>
In the hallway you divert from your partner as you turn right and her left as you steadily get the hang of following the simple commands. One nipple means turn in that direction, a quick jolt in both nipples indicating either start or stop walking. The system is remarkably precise, guiding you through the hallways until reaching a conference room on the far side of the floor. Though the door is shut you can hear some sort of small meeting going on within.<br>
<br>
Anticipating a return trip you start to turn only to be swiftly reprimanded. Facing the closed conference room door you realise it wants you to head inside. The door is cracked just enough for you to hear that there are people inside as the pain in your nipples rises insistently and you stumble forward, knocking the door open.<br>
<br>
Stepping into the room you find a woman giving a presentation to two <<if $options.fem>>other women<<else>>men<</if>>, she smiles at your arrival. "@@.generic_female1;Ah, lovely, the entertainment, why don't we take that break and relax a bit while you take some time to mull over my plan.@@"<br>
<br>
The <<men>> smile in your direction, reaching to unzip their pants. Gagged and restrained either a hand or blowjob is pretty much off the table. You suddenly understand why <<=setup.getNpcName('npc_discipline', 'formal')>> lubed up your ass, as you seem presented with the prospect of bending over the table to take it from behind.<br>
<br>
[<<moveTo "event_work_hr_discipline_demo_2" "Spread your legs and bend over the table." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_demo_2" "Ignore the pain and flee back to the office." 60 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: fucked in a conference room or painfully flee
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $EXPOSED>>
<<if $scene.obey>>
<<applyExperience 'anal' 10 'very' $EXPOSED>>
<<applyExperience 'submission' 7 'terrible' $EXPOSED>>
<<else>>
<<applyFatigue 50>>
<<applyStress 10>>
<</if>>
<</if>>
<<set $player.location to "Conference Room of Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You don't need the nipple clamps to tell you what to do as you walk up to the small table at the centre of the room and bend over, wiggling your ass invitingly.<br>
<br>
The woman<<if $options.fem>> that gave the presentation<</if>> smirks down at you as the <<if $options.fem>>other women<<else>>men<</if>> waste no time, the first placing a hand on your bare bottom as <<he>> lines up <<his>> cock with your wet hole.<br>
<br>
<<if setup.getTotalValue("anal") >= 10>>
You grunt into your gag in acknowledgement as <<he>> glides easily into you. <<He>> feels about average size and you commence to deploy your back-door skills, squeezing and milking <<his>> cock as it slides in and out of your trained ass.<br>
<br>
<<His>> pace quickening it isn't long before <<he>> lets out a moan, grinding <<his>> hips against you as <<he>> deposits <<his>> load.<br>
<br>
Letting out a sigh at the fact that <<he>> finished so quickly you feel <<him>> slide out and the second <<man>> steps up.<br>
<br>
From the first thrust you recognise a difference in size and temperament. A thick cock presses against your hole as <<he>> grabs firm hold of your rope harness to pull you into <<him>>. Slamming back and forth as <<he>> pounds you with <<his>> large cock you slide back and forth on the table, moaning in pleasure as <<he>> grunts in approval.<br>
<br>
Though <<he>> takes a little longer you soon earn your second shot of <<getWordCum>>, the <<man>> pulling you up to your feet as you look over at the<<if $options.fem>> third<</if>> grinning woman.<br>
<br>
Phone in hand she taps and then gives you a little wave, your nipple clamps sprinting to life to order you to turn back around towards the door.
<<else>>
Heart racing you are quite glad for <<his>> modest size, as well as the copious lube, as <<he>> penetrates your rear and begins fucking your ass. Gasping and moaning through your gag you are starting to enjoy the stimulation when <<he>> presses close and shudders, depositing a load of cum in your ass as <<his>> weight pushes you into the table.<br>
<br>
"@@.generic_male1;Not bad,@@" <<he>> finally gasps after finishing, sliding out and stepping out of the way as the second <<man>> approaches you from behind.<br>
<br>
Far less gentle than your first partner the <<man>> grabs you by the rope harness, pressing the thick tip of <<his>> cock against your slick and used rear. Eyes wide as you feel how large <<he>> is a long moan escapes your gag as <<he>> forces <<his>> way into your ass. Rising off the table as <<he>> pounds hard and deep you pant and gasp, feeling ready to split in two with each pounding thrust.<br>
<br>
Trembling you stare at the<<if $options.fem>> third<</if>> smirking woman, locking eyes as she stares back in amusement and takes a photo with her phone just as the <<man>> cums with a grunt deep in your ass. Pulling out <<he>> drops you to the floor where you stagger slightly, the woman taps on her phone and your nipple clamps come back to life ordering you to turn.<br>
<br>
"@@.generic_female1;Thanks for the visit! Ta-ta!@@" She states with a wave as you wobble towards the door.
<</if>>
<br><br>
[<<moveTo "event_work_hr_discipline_demo_3" "Head back." 360>>]
<<else>>
Heart pounding you yelp through your gag and spin on your heels.<br>
<br>
Bumping into the door frame you almost fall without the help of your arms for stability, but somehow manage to stagger forward, sprinting away up the hallway.<br>
<br>
Nipples afire with electric shocks you're too amped up on adrenaline to care, trying to remember your route as your race through hallways on your way back to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo "event_work_hr_discipline_demo_3" "Continue." 360>>]
<</if>>
</div>/*#
#desc: return from remote controlled nipple clamp "demo"
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "ball_gag_red" true>>
<<deleteItem "ball_gag_red">>
<<removeItem "rope_harness" true>>
<<deleteItem "rope_harness">>
<<useClothSetPop 'hr_discipline'>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<if $scene.obey>>
<<set $npc_discipline.stage = 4>>
<<registerProgressionEvent>>
<<applyExperience 'submission' 15 'unbelievable' $EXPOSED>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<else>>
<<applyExperience 'humiliation' 15 'unbelievable' $EXPOSED>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_1")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
It's a good thing you have the painful nipple clamps to guide you as, in your slightly dazed, post-fucked state, you don't know if you could have navigated the route back to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
Arriving you find your compatriot waiting along with <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_discipline', 'formal')>>.<br>
<br>
"@@.npc_discipline;Aaand she's back!@@" She notes holding up the phone which presumably had been displaying your progress.<br>
<br>
"@@.npc_manager;An interesting demo, indeed, let me know when you have finished incorporating my feedback.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> smiles and gives a slight bow before helping you out of your restraints and back into your clothes. You wince in pain as the blood rushes back into your sore nipples<<if $scene.removePlug>> and a slight gasp as she slides the <<=setup.getItemName($scene.plug)>> back into your still-slippery rear<</if>>.<br>
<br>
Still bound the assistant is helped back into her skirt and poncho before obediently following <<=setup.getNpcName('npc_discipline', 'formal')>> out of the office.
<<else>>
By some miracle you manage to arrive back in front of the familiar door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. Stumbling in you find the door to the inner office open, <<=setup.getNpcName('npc_discipline', 'formal')>> looking up from her phone as you stumble forwards, the pain in your nipples finally ceasing.<br>
<br>
"@@.npc_discipline;Hmf, good time, but I suppose that's a bit of a demonstration failure given that the punishment failed to dissuade her disobedience.@@"<br>
<br>
"@@.npc_manager;True, perhaps it would be best use in a less... sprung-upon manner.@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> nods and approaches you to begin removing your restraints.<br>
<br>
Wincing as the nipple clamps are removed you slowly catch your breath, just finishing up getting dressed up<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>> and re-plugged<</if>> when her assistant comes striding back in, her breasts freshly stained with cum.<br>
<br>
"@@.npc_discipline;Good to see SOMEONE managed to please her target.@@" She states, the assistant straightening with pride while they both flash you the side-eye.<br>
<br>
"@@.npc_manager;Indeed, which would support my thesis that this tool is more appropriately used with an explanation rather than fully blind. Still, it is certainly an interesting tool and I look forward to seeing the next version once you have incorporated some of my suggestions.@@"<br>
<br>
"@@.npc_discipline;Of course!@@" She states with a bow, helping her still-bound assistant back into her concealing poncho and skirt before leading the way out of the office.
<</if>>
<br><br>
Walking around her desk to her chair <<=setup.getNpcName('npc_manager', 'formal')>> thanks you for your assistance in the demonstration and dismisses you back to resume your duties.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<if $scene.removePlug>><<wearItem $scene.plug true>><</if>><<completeWorkEvent>>">>]
</div>/*#
#desc: dominate an hr discipline applicant
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.creative>>
<<set $npc_discipline.flags.applicant.creative = true>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $SEEN_STRANGER>>
<<else>>
<<set $npc_discipline.flags.applicant.dom = true>>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<</if>>
<<if $npc_discipline.flags.competition.sub_cum && $npc_discipline.flags.competition.sub_nocum && $npc_discipline.flags.competition.top_cum && $npc_discipline.flags.competition.top_nocum && $npc_discipline.flags.applicant.sub && $npc_discipline.flags.applicant.brat && $npc_discipline.flags.applicant.dom && $npc_discipline.flags.applicant.creative>>
<<removeWorkEvent 'work_meeting_hr_discipline'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<switch $npc_discipline.stage>>
<<case 0 1>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_discipline","npc_discipline_1")>>
<<case 2>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_discipline","npc_discipline_2")>>
<<default>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_discipline","npc_discipline_3")>>
<</switch>>
<div id="invframe" class="scrolltext">
<<if $scene.creative>>
/* discipline_assistant_bondage.jpg */
Adopting a devious smile you walk towards the nervous bound girl. Taking hold of her collar you lean in close.<br>
<br>
Savouring the look of nervous, aroused fear in her eyes you taunt her by asking if she has an excuse for her misbehaviour. Gagged as she is her response is, of course, unintelligible. Teasing her further you explain that if she is going to remain so recalcitrant you will just have to whip it out of her.<br>
<br>
Bending her forward you switch grips, pulling her wrists together behind her back. A bit of rope, a rigid rod and a hook mounted to the ceiling soon combine to have her "properly" bound and exposed — her legs spread as far as her hobbles allow and her arms pulled up high in a strappado so that her head is almost lower than her hips.<br>
<br>
Making a slow circuit around her your hands roam over her exposed flesh, taunting her by groping her steel bra and "panties" as she whines in frustration at the chastity belt and bra efficiently keeping her from feeling anything but psychological torture.<br>
<br>
Finishing up standing behind her, you dive into the punishment proper, spanking her hard until her bottom is two red pillows framed by the gleaming steel bands of her chastity belt.<br>
<br>
The combination of the sharp punishment and challenging position has her panting, gasping and moaning through her gag and you take some time to admonish her for the drool that is rapidly pooling below her face... as well as the wetness creeping past her belt and down her thighs.<br>
<br>
Moving back around you give her a "reward" of humping her while simultaneously teasing and tickling her sides and exposed armpits, leading her to rock and thrash against her bonds even as your grinding against her rear does naught but accentuate the lingering pain of her spanking.
<<else>>
Staring with lust at her full ass peeking out from between the steel bands of her chastity belt you soon have her bent over your knee, your first *SMACK* landing square and perfect and loud, the sound of skin on skin echoing through the room as a gasping moan escapes her gag.<br>
<br>
Smiling with dominant glee you swiftly follow up with another trio of blows "balancing" things out to bring a pleasant red hue to both of her cheeks. She moans.<br>
<br>
Grabbing her by the hair, you chide her for getting aroused by her punishment. A bit of additional verbal degradation, and a dozen more spanks, and she starts leaking out from under her chastity belt.<br>
<br>
Running a hand between her damp thighs you force her to smell herself before punishing her some more for her debauchery, groping and clawing her red bottom while talking about how she needs to be locked in chastity.
<</if>>
<br><br>
You are thoroughly enjoying yourself as you continue to punish your charge when, all too soon, <<=setup.getNpcName('npc_discipline', 'formal')>> emerges from her meeting. <<=setup.getNpcName('npc_discipline', 'formal')>> congratulates you on your efforts after inspecting your temporary scharge's work, finally ordering her bound girl to bow and curtsy in thanks for your "help" with her training.<br>
<br>
The girl walking a bit gingerly behind <<=setup.getNpcName('npc_discipline', 'formal')>> the pair of them depart, leaving you to resume your normal duties.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: be dominated by an hr discipline applicant
#status: RELEASED 0.6.0.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obedient>>
<<set $npc_discipline.flags.applicant.sub = true>>
<<applyExperience 'submission' 10 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'penis' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 7 'normal' $SEEN_STRANGER>>
<<else>>
<<set $npc_discipline.flags.applicant.brat = true>>
<<applyExperience 'bdsm' 10 'terrible' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'anal' 8 'very' $SEEN_STRANGER>>
<<setThreshold 'foot' 'foot_massages' 'other_help'>>
<<applyExperience 'foot' 11 'very' $SEEN_STRANGER>>
<<if $npc_discipline.flags.competition.sub_cum && $npc_discipline.flags.competition.sub_nocum && $npc_discipline.flags.competition.top_cum && $npc_discipline.flags.competition.top_nocum && $npc_discipline.flags.applicant.sub && $npc_discipline.flags.applicant.brat && $npc_discipline.flags.applicant.dom && $npc_discipline.flags.applicant.creative>>
<<removeWorkEvent 'work_meeting_hr_discipline'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.obedient>>
You have well learned your role and you naturally slide to your knees before the so-called "assistant" before promising her that you will be a "@@.pc;Very good girl.@@"<br>
<br>
"@@.generic_female1;My, my,@@" she replies, reaching down to caress your cheek as you reflexively nuzzle into her hand. "@@.generic_female1;Aren't you the obedient one. Of course anyone can SAY that they are a good girl, but proving it...@@" She grins. "@@.generic_female1;How about you put those lovely lips to better use and show me what kind of well-trained obedient slave you are.@@"<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
You need no further instruction as to what she means, obediently opening your mouth wide that her artificially enhanced cock may enter your throat.<br>
<br>
<<if setup.getTotalValue("oral") > 15>>
She may be large, but your throat is nigh bottomless. You hilt in one go, maintaining eye contact the whole time as you show her how "good" of a sex slave you are.
<<else>>
You open wide, managing to take her substantial length and girth as your throat bulges. A trickle of drool escapes your lips as you pull back for air before resuming a more reasonable bobbing rhythm.
<</if>>
<br><br>
"@@.generic_female1;My, my, you ARE a good girl.@@" She states in approval. "@@.generic_female1;Or at least, one of your holes is. Turn around, slut, let's see if your rear entryway is just as adept as this lovely throat.@@"
<<else>>
With the addition of her clear sheath she is too big for you to really handle
<<if setup.getTotalValue("oral") > 5>>
but you do your best, sucking her tip and showering her length with kisses.
<<else>>
and you are a bit at a loss, attempting to suck her tip only to almost immediately gag at the merest hint of her thrusting forward.
<</if>>
<br><br>
"@@.generic_female1;Disappointing. I would have expected a slut of your calibre to have no problem swallowing the full length of my sceptre. How about we test your other hole to see if your <<if $fetish.sissy>>sissy <</if>>bum is any less dissatisfying.@@"
<</if>>
<br><br>
You cannot imagine she can be feeling much inside the hard shell encasing her cock, but she is clearly turned on, almost appearing even larger as you get a final glimpse of the clear-encased member before you turn around and bend over.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
Casually removing the <<=setup.getItemTypeName("plug")>> plug from your ass she replaces it with her thick cock, thrusting hard and deep into you.
<<else>>
Taking hold of you by the hips she thrusts deeply into you.
<</if>>
<<else>>
Adopting a bratty grin you cross your arms over your chest as if daring her to make the first move.<br>
<br>
Unperturbed by your defiance she grins, her leer far from comforting as she produces a crop from the holster in one of her boots, running it up your chest before stopping just under your chin.<br>
<br>
"@@.generic_female1;Feeling defiant, are we? No matter, I am more than trained to handle a simple <<if $fetish.sissy>>SISSI <</if>>Secretary...@@"<br>
<br>
In a burst of speed she has you bent over your desk, pressing your face into the hard tabletop with one hand as she exposes your rear with the other and begins raining blows down on your buttocks and thighs.<br>
<br>
You yelp in pain, but she merely laughs. "@@.generic_female1;Oh you are a delight to paddle, your bottom is turning just the most adorable shade of red! And those sounds!@@" You cry out even louder as she continues the punishment, a few perfectly-aimed blows hooking down below to <<if $player.body_ref.balls>>tag your tender testicles<<else>>sting your most sensitive bits<</if>> as she seems to make an effort to turn your entire rear a nice ruby before she again pauses.<br>
<br>
"@@.generic_female1;So, my slut, are you ready to obey?@@" She asks.<br>
<br>
Butt afire you nod in between gasps.<br>
<br>
"@@.generic_female1;What's that? I can't hear you, do I need to upgrade to a flogger to really beat this into your silly head?@@"<br>
<br>
"@@.pc;N-n-no Mistress.@@" You reply nervously.<br>
<br>
"@@.generic_female1;Much better.@@" She states, gently caressing your sore rear. "@@.generic_female1;Keep that attitude and we're going to get along just fine. Now spending all this time tenderising this lovely ass has me in the mood for a nice hard fucking, would you like that, slut?@@"<br>
<br>
You hesitate until her massaging hand pulls back for a quick sharp slap that is like a fresh fire lit upon your tender bum.<br>
<br>
"@@.pc;Y-yes Mistress, please use my ass.@@"<br>
<br>
"@@.generic_female1;Straight to begging for anal without any sucky-sucky foreplay? You really are a slut. No matter, I am more than happy to oblige your request.@@"<br>
<br>
Stepping behind she squares up, one hand holding each of your hips as she <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>removes your plug and <</if>>presses the blunt tip of her sheathed member against your hole.<br>
<br>
With no further prologue or warning she thrusts into you.
<</if>>
<<if setup.getTotalValue("anal") >= 10>>
<<if setup.getTotalValue("anal") > 15>>
This is the sort of thing you were "born and bred" to do and you work your hips, taking her all the way to the root with each thrust as you wiggle and clench so as to maximize her pleasure.
<<else>>
You take her like the depraved butt-slut you are, moaning with joy as she slams into your hard and deep.
<</if>>
<br><br>
"@@.generic_female1;That's a good slut, tight, yet welcoming. This is a real grade-A booty.@@"<br>
<br>
The compliment turning you on you reach back to spread your cheeks wider in hopes of further showing off and taking her even deeper. Unfortunately she chooses the same moment to slam her hips into you and you lose your balance, stumbling half a step and then face-planting as her cock springs out of you with a pop.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
She is big, a bit TOO big for one of your experience, but she forces her way into your ass regardless.
<<else>>
She is far too large for your novice rear and you cry out in pain.
<</if>>
Both hands on your hips she jack-hammers deeper, forcing your organs out of the way as your stimulated <<if $player.body_ref.penis>>prostate tries<<else>>insides try<</if>> to cover for the pain of your stretched hole.<br>
<br>
"@@.generic_female1;Hmmf, and you said you were a good girl. Good girls are tight, but inviting. If I did not know better, I would swear your were practically a virgin. How embarrassing.@@"<br>
<br>
Suppressing tears you can do little more than pant as she continues to slam into you, her cock administering a harsh lesson indeed as you take an anal pounding far beyond your skills.<br>
<br>
With a final powerful thrust she knocks you forward and you lose balance, sliding off her member and flopping onto the ground in a heap.
<</if>>
<br><br>
Lording over you she grins down, broadsword in one hand as she nods. You look up just as her boss, and your own, walk into the room, looking between the two of you and giving small nods of approval.<br>
<br>
"@@.npc_discipline;Very good, it seems you have done quite a good job at cowing this lovely <<if $fetish.sissy>>SISSI <</if>>Secretary. Not the hardest challenge, it is true, but one that you appear to have excelled at to match what would be expected of one with your training.@@"<br>
<br>
Addressing you with a grin your <<=setup.getNpcName('npc_manager', 'title')>> adds her two creds. "@@.npc_manager;Well, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>? How do you show appreciation for the time this Domina-to-be has spent with you?@@"<br>
<br>
You tremble reflexively. The assistant may have dominated you, but it is nothing compared to the utter controling ownership <<=setup.getNpcName('npc_manager', 'formal')>> invokes with a word. Hurriedly you crawl across the floor to the assistant's feet, showering her steep heels with kisses as you whisper thanks for her time.<br>
<br>
"@@.npc_manager;Good girl.@@" She states, her words sending sparks of submissive joy through your body as the two visitors express their thanks for the use of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> property before going on their way.<br>
<br>
Once the other two women are departed <<=setup.getNpcName('npc_manager', 'formal')>> squats down next to you with a gentle smile. Gracing you with an appreciative head-pat before rising and returning to her office.<br>
<br>
Taking a moment further to recover you fix your clothes <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>stuff the plug back into your ass where it belongs <</if>>and sit back down at your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>>">>]
</div>
/* discipline_assistant_pair_bondage.jpg *//*#
#desc: predicament bondage with an hr discipline assistant
#status: RELEASED 0.6.0.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug", true)>>
<<if !setup.checkItemTypeTag('plug', ['hollow']) && $scene.plug>>
<<removeItem $scene.plug true>>
<</if>>
<<useClothSetPush 'hr_discipline'>>
<<removeAllClothing>>
<<if $scene.leader>>
<<applyExperience 'dominance' 5 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
An odd contraption made mostly of pipe and padded surfaces is swiftly assembled in the middle of the floor while you strip out of your clothes. You don't have a chance to quite puzzle out how it all works before <<=setup.getNpcName('npc_discipline', 'formal')>> is taking charge, grabbing you and her assistant of the day and quickly binding you into your respective positions.<br>
<br>
<<if $scene.leader>>
Whereas your compatriot is placed in a relatively "normal" position on her knees resting on a double-dildo equipped sybian you find yourself folded like a pretzel, your legs behind your shoulders, bound on a raised portion of the device such that you are folded in half, your ass raised and exposed as you look past it<<if $player.body_ref.penis>><<if setup.checkItemTypeWorn("cage")>> and your imprisoned<<else>>and your rapidly-stiffening<</if>> <<getWordMyPenis false>><</if>> to look at your partner's face.<br>
<br>
As you watch, a double-dildo panel gag is securely buckled around the face looming over your bum, the long exterior dildo lubricated and pressed into your rear hole. With their arms bound in a T shape stretched out in either direction their only way to "interact" with you will be by bobbing their head and thus fucking your ass with the dildo attached to their face.<br>
<br>
A pair of headphones are placed onto your partners head as a controller of some type is pressed into your hands and you are given your briefing.<br>
<br>
"@@.npc_discipline;Alright my aspiring supervillain. All you have to do is convince your partner in crime NOT to give you an orgasm in the next twenty minutes. The controller in your hands can either reward or punish your friend... you'll just have to figure out which function is which. If you hold out, you both go free, having demonstrated self control. If you fail...@@" She grins. "@@.npc_discipline;Well, good luck!@@"<br>
<br>
Headphones removed and placed over your own ears you watch as your partner is given an explanation with you unable to hear.<br>
<br>
Headphones discarded completely <<=setup.getNpcName('npc_discipline', 'formal')>> winks at you. "@@.npc_discipline;Alright, girls, you have your marching orders, get to it!@@"<br>
<br>
Your partner immediately starts bobbing her head back and forth, thrusting the dildo into your ass and rubbing <<if $player.body_ref.penis>>against your prostate<<else>>your insides<</if>>. Folded up as you are you can't get away and it feels good, really good.<br>
<br>
[<<moveTo "event_work_hr_discipline_pair_2_bottom" "Ignore instructions and give in to the oncoming orgasm." 120 "<<set $scene.cum=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_pair_2_bottom" "Do whatever you can to slow her down." 120 "<<set $scene.cum=false>>">>]
<<else>>
You are placed in a kneeling position, straddling a sybian-like device that has a dildo penetrating your ass and a lumpy protrusion pressing against <<if setup.checkItemTypeWorn("cage")>>your <<if setup.isCage()>>cage<<else>>belt<</if>><<else>><<if $player.body_ref.vagina>>your <<getWordVagina>><<else>>the base of your <<getWordMyPenis>><</if>><</if>>.<br>
<br>
With your arms bound wide in a T configuration she finishes up by bringing a double-dildo gag to your face, tightening the many straps to hold the smaller internal one inside your mouth with its larger sibling protruding in front of you.<br>
<br>
Immobilized save for your head you watch as your compatriot is bound in front of you, her legs pulled back until her ankles are behind her head as she looks directly up at you, her exposed holes raised up towards you as she is securely bound in the strenuous pretzel-like position. Your gag-mounted dildo is guided into her cunt, the girl letting out a slight moan as you slide into her wet and ready hole.<br>
<br>
A pair of headphones are placed over your ears, blocking all sound as your "partner" is given an explanation with you unable to hear, then the headphones are switched and <<=setup.getNpcName('npc_discipline', 'formal')>> gives you each your personalised orders.<br>
<br>
"@@.npc_discipline;Alright my poor, misguided slut, here's how this is going to work — the both of you are going to stay bound up like this until you make your erstwhile leader cum... of course, to make it interesting, she thinks that if she cums before you do you'll both be locked in chastity and put on restrictions for the next month!@@"<br>
<br>
Headphones removed <<=setup.getNpcName('npc_discipline', 'formal')>> steps away. "@@.npc_discipline;Aaand go!@@"<br>
<br>
Springing into action you start bobbing your head to "fuck" your partner as she begs you to stop.<br>
<br>
"@@.generic_female1;Please, don't! It's too much!@@"<br>
<br>
<<if setup.getTotalValue("dominance") > 0>>
Despite your own bound position hearing her cute, submissive voice begging only spurs you forward.<br>
<br>
<</if>>
Her initial request failing you suddenly shudder as a powerful shock slams through your <<if $player.body_ref.penis>>prostate<<else>>rear<</if>>.<br>
<br>
"@@.generic_female1;I said stop,@@" she notes, replacing the painful electrics with dual buzzing vibrations in your rear and <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>against your cage<<else>>inside your belt<</if>><<else>>thruming between your hips<</if>>. "@@.generic_female1;If you just relax like a good girl, I'll keep it like this, but if you disobey and go back to fucking me without permission...@@"<br>
<br>
<<printThought 'So this is how the game is going to work — I either follow instructions and get punished by my otherwise uninformed "partner" or I have to endure her trying to stop me...'>><br>
<br>
[<<moveTo "event_work_hr_discipline_pair_2_top" "Resume fucking her as you were ordered and try to survive her response." 120 "<<set $scene.fuck=true>>">>]<br>
[<<moveTo "event_work_hr_discipline_pair_2_top" 'Try to avoid pain in defiance of <<=setup.getNpcName("npc_discipline", "formal")>> instructions.' 120 "<<set $scene.fuck=false>>">>]
<</if>>
</div>/*#
#desc: predicament bondage scene with hr discipline applicant, you on the "bottom"
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("cage") && $scene.cum>>
<<applyExperience 'cum' 8 'slightly' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<if $scene.cum>>
<<set $npc_discipline.flags.competition.sub_cum = true>>
<<playerOrgasm>>
<<set $player.timebased.horny = 10>>
<<else>>
<<set $player.timebased.horny = 90>>
<<set $npc_discipline.flags.competition.sub_nocum = true>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'very' $SEEN_STRANGER>>
<</if>>
<<if $npc_discipline.flags.competition.sub_cum && $npc_discipline.flags.competition.sub_nocum && $npc_discipline.flags.competition.top_cum && $npc_discipline.flags.competition.top_nocum && $npc_discipline.flags.applicant.sub && $npc_discipline.flags.applicant.brat && $npc_discipline.flags.applicant.dom && $npc_discipline.flags.applicant.creative>>
<<removeWorkEvent 'work_meeting_hr_discipline'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
Being bound so as to be looking up at the lovely woman frantically gag-fucking your ass, all it takes is a minor surrender of control and you are cumming, hard.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
Folded up as you are you are <<if $player.body_ref.penis>>almost looking down the barrel of your <<getWordMyPenis>> and you end up spurting right into your own face, a few drops shooting right between your moaning lips onto your tongue<<else>>Staring directly at your crotch as it has a full-on squirting orgasm<</if>>.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
It tastes even better than normal, the humiliation of being forcibly milked adding a sweet tang that has you probing with your tongue to gather every drop you can.
<<else>>
Your juices are as tasty as they are humiliating, the flavour inescapable as a few more drops trickle down your face and past your lips.
<</if>>
<<else>>
Though <<if $player.body_ref.penis>>your <<getWordMyPenis false>><<else>>you<</if>> may be tightly locked away you spurt and leak in sweet analgasm.
<</if>>
<br><br>
Panting and catching your breath, you blush as <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_discipline', 'formal')>> shake their heads at your disappointing effort as <<=setup.getNpcName('npc_discipline', 'formal')>> sets about freeing you and your partner.<br>
<br>
"@@.npc_manager;An interesting scenario, but it would seem a few tweaks may be in order to ensure a proper competition.@@"<br>
<br>
"@@.npc_discipline;As you say, well, I had best be off, thank you, again, for the use of your <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"<br>
<br>
Bundled up in her poncho and skirt, the assistant follows behind as <<=setup.getNpcName('npc_discipline', 'formal')>> departs. <<=setup.getNpcName('npc_manager', 'formal')>> motions for you to get dressed and return to your work.
<<else>>
Focusing your attention you clench down with your ass to slow the thrusts <<if $player.body_ref.penis>>against your prostate<<else>>into your rear<</if>>. You start by ordering your partner to stop, explaining that if you cum you will both be punished. She ignores you, in fact doubling her efforts even as you beg for her to show you mercy.<br>
<br>
Unable to see the remote in your hands you start mashing buttons at random, finally drawing a reaction from your partner as she first moans in pleasure and then jolts at what must have been a painful shock.<br>
<br>
You explain that, if she will only leave you be, you'll leave it on the pleasure setting, but she pushes forward, her pace erratic, but steadily increasing as she becomes accustomed to the constant electrocution.<br>
<br>
Increasingly desperate you switch tactics, alternating between distracting her with pleasure and then breaking her rhythm with pain, the both of you panting and gasping and crying as she tries to push forward and you desperately try to hold back your oncoming orgasm.<br>
<br>
"@@.npc_discipline;Aaand, time!@@" she states, your remote suddenly stopping working. "@@.npc_discipline;Not bad, that looked like a real close one!@@"<br>
<br>
You groan as you finally cum, a painful, ruined orgasm spurred on by your interrupted concentration.<br>
<br>
Hanging loose in your bonds, you merely lie there as your partner is freed and then you, too are helped to your feet.<br>
<br>
Thanking you once again for your assistance <<=setup.getNpcName('npc_discipline', 'formal')>> accepts praise from your <<=setup.getNpcName('npc_manager', 'title')>> for the "@@.npc_manager;Impressive display@@" before she and her assistant depart.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> compliments your control before telling you to get dressed and return to your work.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Get dressed and return to work." 600 "<<completeWorkEvent>><<set $player.cutscene.lockinventory = false>><<useClothSetPop 'hr_discipline'>> <<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>>">>]
</div>/*#
#desc: predicament bondage scene with hr discipline applicant, you on the "top"
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 8 'very' $SEEN_FRIEND>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_FRIEND>>
<<if !$scene.fuck>>
<<applyExperience 'submission' 10 'very' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<if $scene.fuck>>
<<set $player.timebased.horny = 10>>
<<set $npc_discipline.flags.competition.top_cum = true>>
<<else>>
<<set $player.timebased.horny = 90>>
<<set $npc_discipline.flags.competition.top_nocum = true>>
<</if>>
<<if $npc_discipline.flags.competition.sub_cum && $npc_discipline.flags.competition.sub_nocum && $npc_discipline.flags.competition.top_cum && $npc_discipline.flags.competition.top_nocum && $npc_discipline.flags.applicant.sub && $npc_discipline.flags.applicant.brat && $npc_discipline.flags.applicant.dom && $npc_discipline.flags.applicant.creative>>
<<removeWorkEvent 'work_meeting_hr_discipline'>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.fuck>>
Figuring that <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> direct instructions probably outweigh whatever your current partner is saying you ignore the painful shock and resume bobbing your head to plunge the gag-mounted dildo in and out of her cunt.<br>
<br>
"@@.generic_female1;STOP!@@" she orders louder, but this time you are ready for the punishing shock, barely even breaking rhythm, merely tensing your neck as you continue to move back and forth.<br>
<br>
She answers with powerful buzzing deep in your rear and rumbling out through <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>your cage<<else>>the rigid front shield of your chastity belt<</if>><<else>>your most sensitive bits<</if>> to form a different sort of distraction, but you remain focused on your task, even as her requests get increasingly frantic as she alternates attempts to beg, punish or cajole you into stopping the inexorable march towards her orgasm.<br>
<br>
She cums, crying out as you make a final, deep lunge forward, your whole body tightening up as she tenses and "rewards" you with an intertwined mix of shocks and vibrations.<br>
<br>
Moaning load her orgasm draws out for almost thirty seconds, leaving her limp and panting when it is finally over.<br>
<br>
Gasping through your gag you welcome the feel of strong hands as <<=setup.getNpcName('npc_discipline', 'formal')>> releases you from your restraints and helps you to your feet.<br>
<br>
"@@.npc_manager;Well done, the interplay between the two positions is quite fun to watch. Do continue running more tests, I will be interested in seeing how effective it is once the techniques are fully refined.@@"<br>
<br>
The assistant freed, she wobbles slightly as she rises to her feet, standing glassy-eyed as her concealing poncho and skirt are returned and she departs along with <<=setup.getNpcName('npc_discipline', 'formal')>>.<br>
<br>
Alone with you <<=setup.getNpcName('npc_manager', 'formal')>> smiles, gently brushing your cheek before nodding for you to get dressed.<br>
<br>
"@@.npc_manager;You did a good job today, an accounting you should feel proud of as you return to your more... mundane responsibilities.@@"<br>
<br>
Throwing on your clothes you give a curtsy of thanks before shuffling back to your desk.
<<else>>
Wide-eyed in pain from the shock you pull back as far as you can and attempt to remain as still as possible in obedience to the woman bound before you.<br>
<br>
Good to her word she rewards you with vibrations that penetrate deep into your ass as well as shuddering through your chastity prison. Trembling in your bonds your head starts to shake only for her to bring you back to reality with a quick shock.<br>
<br>
"@@.generic_female1;Careful! Your fun stops if you try to get me off!@@"<br>
<br>
You start to nod only to get shocked again for your foolishness as the movement pushes your face-mounted dildo further into her hole. Leaning back as best you can you try to enjoy the vibrations, losing track of time until you are interrupted by <<=setup.getNpcName('npc_discipline', 'formal')>> calling "@@.npc_discipline;Time.@@" before deactivating the vibrators and setting to work releasing you from your bonds.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head in disappointment as you stagger back to your feet and get dressed.<br>
<br>
"@@.npc_manager;An interesting challenge, it would seem my subordinate needs some more practice in... prioritising her obedience.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_discipline', 'formal'))>> assistant dressed, though looking a bit tired and stiff from her challenging position. With a parting nod of acknowledgement, <<=setup.getNpcName('npc_discipline', 'formal')>> and her assistant depart.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> dismisses you with a gesture as she returns to her desk.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>><<set $player.cutscene.lockinventory = false>><<useClothSetPop 'hr_discipline'>> <<if $scene.plug != '' && !setup.checkItemTag($scene.plug, ['hollow'])>><<wearItem $scene.plug true>><</if>>">>]
</div>/*#
#desc: summoned for punishment in stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You're working away when you get a high-priority email from <<=setup.getNpcName('npc_rival', 'formal')>>.<br>
<br>
@@.npc_rival;To: All Service Personnel:<br>
<br>
With the accelerated rate of onboarding it is important that all current employees demonstrate impeccable behaviour and decorum at all times. Towards that end you are each assigned to have a maintenance punishment session to refresh and remind you of the consequences of failure. Reference the attached spreadsheet for your time and report to the Department of Employee Discipline accordingly.@@<br>
<br>
You shake your head at the blunt approach and then check the spreadsheet... only to find that you're scheduled in less than five minutes!<br>
<br>
[<<moveTo "event_work_hr_discipline_stage5_2" "Hurry to the employee Discipline Department." 1200>>]
</div>/*#
#desc: turned away for punishment in stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
You hurry down to the Discipline target, ending up at the tail end of the subordinates in your group. By the time you get to the front of the line <<=setup.getNpcName('npc_discipline', 'formal')>> is clearly annoyed and you get the feeling she had not much more warning about this event than you did.<br>
<br>
"@@.npc_discipline;Ah, Miss <<=$player.last_name>>...@@" she states "@@.npc_discipline;normally I might consider punishing you for being late... but frankly, we're already running out of punishment apparatus and my staff is busy trying to figure out how we're going to deal with the next wave.@@" She shakes her head, barely holding back from going off on <<=ps(setup.getNpcName('npc_rival', 'formal'))>> ill-planned orders. "@@.npc_discipline;Nevermind, those are problems that I will need to address, as to you, well... if anyone can keep their assistant in line without additional action on my part, well... <<=setup.getNpcName('npc_manager', 'other')>> would be it. Go ahead and head on back to your desk, hmm?@@"<br>
<br>
You glance across the Discipline Department Dungeon, <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> army of dominants each managing two or three employees each, gag-muffled gasps, moans, and cries of pain making for a real cacophony of chaos. You curtsy and wish <<=setup.getNpcName('npc_discipline', 'formal')>> luck in pulling things together.<br>
<br>
"@@.npc_discipline;Quite, hmm, that reminds me, I think there are some additional winches in storage, maybe if we do some more suspension predicament challenges...@@" she stalks off, leaving you to head back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: hr officer in charge of Employee relations/harassment visits
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.repeat = false>>
<<switch $npc_harassment.stage>>
<<case 0>>
<<set $npc_harassment.stage = 1>>
<<case 1>>
<<if $npc_manager.stage > 1>>
<<set $npc_harassment.stage = 2>>
<<else>>
<<set $scene.repeat = true>>
<</if>>
<<case 2>>
<<if $npc_manager.stage > 2>>
<<set $npc_harassment.stage = 3>>
<<set $npc_harassment_assist.profile = true>>
<<include "checkManagementAssess">>
<<else>>
<<set $scene.repeat = true>>
<</if>>
<<case 4>>
<<removeRandomEvent 'work_office' 'hr_harrassment'>>
<</switch>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<switch $npc_harassment.stage>>
<<case 1 4>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_harassment")>>
<<case 2 3>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_harassment") setup.charImage("npc_harassment_assist")>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $player.work.style>>
<<case 'hard'>>
You're head down diligently working
<<case 'sloppy'>>
You're lounging around on the job
<<case 'normal'>>
You're working
<<default>>
ERROR: unexpected player.work.style <<=$player.work.style>>
<</switch>>
when you hear a knock on the door.<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> schedule indicates she has a meeting with <<=setup.getNpcName('npc_harassment', 'formal')>> and you walk over to open the door.<br>
<br>
<<switch $npc_harassment.stage>>
<<case 1>>
Opening the door, you find a well-dressed woman in a business suit. Leading her into the office you message your <<=setup.getNpcName('npc_manager', 'title')>> to let her know her appointment has arrived.<br>
<br>
"@@.npc_manager;Send her in.@@"<br>
<br>
The woman smiles as you walk over and hold the inner door for her.<br>
<br>
"@@.npc_harassment;Thanks, cutie.@@" She quips before walking through the door.<br>
<br>
<<printThought "Cutie? Wait, what?">><br>
<br>
Half an hour later she finishes her meeting and strides back out. Passing by your desk, she flashes you a wink that gives you feelings before introducing herself as <<=setup.getNpcName('npc_harassment', 'formal')>>, the manager in charge of Employee Relations with a specialization in workplace harassment.<br>
<br>
<<printThought "Wait... harassment...?">><br>
<br>
Before you can reply, she has shuffled along and out the door, leaving you wondering if you heard her correctly...<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<case 2>>
Opening the door, you find <<=setup.getNpcName('npc_harassment', 'formal')>>, wearing the same no-nonsense suit as always, and with her a cute... well, you aren't quite certain.<br>
<br>
Slender, smiling and with an adorable pixie cut to top off a slightly too tight salmon shirt, tie and slacks, the adorably androgynous assistant stands obediently next to <<=setup.getNpcName('npc_harassment', 'formal')>> as you blink twice and motion for them to enter.<br>
<br>
Returning your glance the... girl? Honestly, though they are cuteness incarnate, you find yourself unable to pin down their gender with confidence. However they identify, they smile in a bashful way that only makes them look more adorable, not moving along until <<=setup.getNpcName('npc_harassment', 'formal')>> reaches back to give a gentle tug on her assistant's tie. You can't help but make a leash connection as they file past.<br>
<br>
The assistant's attention seems to linger upon you until the two of them disappear into the inner office. You barely hear your manager comment on <<=setup.getNpcName('npc_harassment', 'formal')>> having brought her "@@.npc_manager;Lovely assistant@@" before the door closes on their meeting.<br>
<br>
Half an hour later the two of them emerge, <<=ps(setup.getNpcName('npc_harassment', 'formal'))>> assistant once again staring at you until you return their gaze before they bashfully look away. You can't help but glance at their cute, tight bum as they skip along after their boss, only to blush yourself when they glance back at you with a cute lip-bite as the inner door closes behind them.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<case 3>>
Opening the door, you find <<=setup.getNpcName('npc_harassment', 'formal')>>, and her button-cute assistant.<br>
<br>
With <<=setup.getNpcName('npc_harassment', 'formal')>> in her business suit and her assistant in an adorable collared shirt and slacks what really catches your attention is the pink leather dog collar around the assistant's neck, a matching leash finishing off the "tie" facsimile.<br>
<br>
Trying to focus on your duties like a professional, you welcome the two of them and lead them to the inner office and turn to go only for <<=setup.getNpcName('npc_manager', 'formal')>> to order you to wait.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_harassment', 'formal')>> and I have some business to discuss, but it really does not concern the two of you. <<=$player.first_name>>, would you mind keeping <<=setup.getNpcName('npc_harassment_assist', 'first')>> entertained?@@"<br>
<br>
You do a double take at the assistant, in too-tight clothing and wearing an obvious dog collar.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at you. "@@.npc_manager;I thought you and <<=setup.getNpcName('npc_harassment_assist', 'first')>> might spend the time together? <<=setup.getNpcName('npc_harassment_assist', 'first')>> is a bit shy, but has expressed interest in getting to know you better.@@"
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> looks at you with an adorable pixie blush as <<=setup.getNpcName('npc_harassment', 'formal')>> unclips the leash and administers a sharp smack to the assistant's bottom.<br>
<br>
"@@.npc_harassment;Off with the two of you! And don't get into too much trouble.@@"<br>
<br>
Skipping towards you, <<=setup.getNpcName('npc_harassment_assist', 'first')>> grabs you by the wrist and gleefully drags you back out to your office.<br>
<br>
After the initial burst of energy, <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> bashfulness returns in full force. Their voice soft, yet just as gender-ambiguous as their appearance, they greet you.<br>
<br>
"@@.npc_harassment_assist;Hi, my name is <<=setup.getNpcName('npc_harassment_assist', 'first')>>, but, I guess you know that already... is that your work area? What a lovely plaque!@@"<br>
<br>
It's your turn to blush as <<=setup.getNpcName('npc_harassment_assist', 'first')>> runs their fingers over the words "~ <<=$player.first_name>> <<=$player.last_name>> ~ <<if $fetish.sissy>>SISSI <</if>>Secretary" before smiling up at you. Looking back at you with a fresh bashful smile, it takes a few moments before <<=setup.getNpcName('npc_harassment_assist', 'first')>> speaks again. "@@.npc_harassment_assist;I... I think you're really pretty.@@"<br>
<br>
You blush at the compliment and think how to respond. <<hint $options "You get the feeling they might be interested in a bit more than just seeing your work area.">><br>
<br>
[<<moveTo "event_work_hr_harrassment_assistant_1" "Keep it professional. Thank them, and then return to your work." 60 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_work_hr_harrassment_assistant_1" "Smile and say you think they're pretty too..." 120 "<<set $scene.accept=true>>">>]
<<case 4>>
You notice that her lovely assistant has not joined her today and she notes your expression of disappointment.<br>
<br>
"@@.npc_harassment;Sorry, my dear. <<=setup.getNpcName('npc_harassment_assist', 'first')>> did want to see you, but they are, alas, a bit... tied up at the moment.@@"<br>
<br>
She disappears into your <<=ps(setup.getNpcName("npc_manager", "title"))>> office as you are left to reflect if she was speaking literally or figuratively.<br>
<br>
<<printThought "At this company, it could really go either way...">><br>
<br>
You resume working as their meeting passes and <<=setup.getNpcName('npc_harassment', 'formal')>> eventually emerges to go on her way.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<default>>
ERROR unexpected npc harassment stage: <<=$npc_harassment.stage>>
<</switch>>
</div>/*#
#desc: accept harrassment assistants first attempt to seduce you
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $npc_harassment.stage = 4>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_harassment","npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Replying that you think <<=setup.getNpcName('npc_harassment_assist', 'first')>> is very beautiful as well the next thing you know they are centimetres away from you,
<<if setup.getItemObjFromType('shoes').hasOwnProperty('heels')>>
<<if setup.getItemObjFromType('shoes').heels.difficulty > 5>>
looking sharply up
<<else>>
looking up at you
<</if>>
thanks to your heel-enhanced height.
<<else>>
looking you right in the eye.
<</if>>
Blinking twice their breath smells like strawberries and sweetness as their lips part seductively. "@@.npc_harassment_assist;May I... may I please kiss you?@@"<br>
<br>
Your knees weak, there isn't a power in the world that could stop you from leaning in to accept their offer.<br>
<br>
Their lips are even more delicious than you anticipated, as sweet and intoxicating as strawberry liqueur.<br>
<br>
Tongues entwined, pulling close to rub against each other, <<=setup.getNpcName('npc_harassment_assist', 'first')>> guides your hand to the collar, moaning when you pull on it.<br>
<br>
<<if setup.getTotalValue("dominance") > 0>>
Tightening your grip your dominant side roars to the fore.
<<else>>
Being in the dominant position is a strange feeling but <<=setup.getNpcName('npc_harassment_assist', 'first')>> is just so submissive, you find yourself going along with it.
<</if>>
<br><br>
Holding <<=setup.getNpcName('npc_harassment_assist', 'first')>> close with one hand, you reach down to start groping their tight butt, squeezing it and kissing their lips possessively as <<=setup.getNpcName('npc_harassment_assist', 'first')>> practically melts into you.<br>
<br>
Losing track of time, it is only when you hear a loud throat-clearing "@@.npc_manager;A-hem@@" that the two of you look over to find <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_harassment', 'formal')>> staring at you. Still with a hand on <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> collar and pressed against each other you look with shock as <<=setup.getNpcName('npc_harassment', 'formal')>> snaps a picture with her phone.<br>
<br>
"@@.npc_harassment;Oh, you two are just TOO adorable!@@" Moving closer, she reaches past your finger to clip the leash back to <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> collar. "@@.npc_harassment;Sorry, <<=$player.first_name>>, but I will be taking my property back now. I'm glad the two of you had a nice time, but my business here is concluded for today, but we will see you later.@@"<br>
<br>
Still stunned, you stand and stare as the two of them leave the office, <<=setup.getNpcName('npc_harassment_assist', 'first')>> looking back to blow you a kiss.<br>
<br>
You stand still for a few moments more before you sense <<=setup.getNpcName('npc_manager', 'formal')>> standing next to you. "@@.npc_manager;I believe it is time for you to be getting back to work?@@"<br>
<br>
Letting out a yelp, you almost jump into the air, quickly hurrying back to your desk and flurrying on the keyboard.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles before returning to her office.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 1200 "<<completeWorkEvent>>">>]
<<else>>
Thanking <<=setup.getNpcName('npc_harassment_assist', 'formal')>> for the compliment you note that you have some work to do.<br>
<br>
"@@.npc_harassment_assist;Oh, of course! I wouldn't want to... distract you from your hard... work. Do you mind if I just sit and watch?@@"<br>
<br>
Not seeing any better option you nod, returning to your desk as <<=setup.getNpcName('npc_harassment_assist', 'first')>> finds a seat behind you.<br>
<br>
You can see <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> reflection staring at you through your monitor with that same too-cute smile as you try to focus on your work. Settling for looking down at your keyboard so as not to be distracted by the way they are not-so subtly licking of their lips and waggling of their long eyelashes you are taken by surprise when their face appears next to your ear.<br>
<br>
"@@.npc_harassment_assist;You look so hot when you're working... are you sure you can't take a break? I bet I could help relieve some of your... stress...@@" As they talk, their hands explore your chest, before one slides slowly downward...<br>
<br>
[<<moveTo "event_work_hr_harrassment_assistant_2" "Politely pull their hands away and return to your work." 120 "<<set $scene.accept=false>>">>]<br>
[<<moveTo "event_work_hr_harrassment_assistant_2" "Lean back and enjoy the attention." 120 "<<set $scene.accept=true>>">>]
<</if>>
</div>/*#
#desc: succumb to harrassment assistants second attempt to seduce you
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<changeHorny 20>>
<<set $npc_harassment.stage = 4>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_harassment") setup.charImage("npc_harassment_assist") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $player.body_ref.penis>>
<<if setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> is just too much and you moan as a hand slides down <<if setup.isCage()>>to squeeze your caged <<getWordMyPenis false>><<else>>to press against the front shield of your belt<</if>>.<br>
<br>
"@@.npc_harassment_assist;Mmmm, you feel sooo big...@@" <<=setup.getNpcName('npc_harassment_assist', 'first')>> whispers, kissing you just behind the ear.
<<else>>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> is just too much and you moan as the hand slides down to squeeze your growing <<getWordMyPenis>>.<br>
<br>
"@@.npc_harassment_assist;Mmmm, you feel sooo hard...@@" <<=setup.getNpcName('npc_harassment_assist', 'formal')>> whispers, kissing you just behind the ear. "@@.npc_harassment_assist;I love hard things...@@"
<</if>>
<<else>>
<<if setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> is just too much and you moan as a hand slides down to press against the front shield of your belt.<br>
<br>
"@@.npc_harassment_assist;Mmmm, you feel smooth...@@" <<=setup.getNpcName('npc_harassment_assist', 'first')>> whispers, kissing you just behind the ear.
<<else>>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> is just too much and you moan as the hand slides down to finger you through your clothes.<br>
<br>
"@@.npc_harassment_assist;Mmmm, you feel sooo wet...@@" <<=setup.getNpcName('npc_harassment_assist', 'formal')>> whispers, kissing you just behind the ear. "@@.npc_harassment_assist;I love wet things...@@"
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("dominance") > 0>>
Something about <<=setup.getNpcName('npc_harassment_assist', 'first')>> has your dominate side roaring into power. Grabbing hold of their collar you pull them in for a rough kiss, hungrily wrapping your lips around theirs, your tongue spearing possessively into their obediently accepting mouth.
<<else>>
Despite your normal well-groomed submissiveness there is just something about <<=setup.getNpcName('npc_harassment_assist', 'first')>> that has you wanting to take charge. You lean back, one hand reaching out to grab their collar to pull them in for a passionate kiss.
<</if>>
<br><br>
Straddling your seated form <<=setup.getNpcName('npc_harassment_assist', 'first')>> moans as the two of you share a passionate kiss. With one hand on their collar, the other squeezes their pert, tight ass as they press submissively into you.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> starts to slink to the floor as you slide to the edge of your seat only to look up and find <<=setup.getNpcName('npc_harassment', 'formal')>> and <<=setup.getNpcName('npc_manager', 'formal')>> staring at you from the doorway to the inner office.<br>
<br>
"@@.npc_manager;Well, well, well,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a slight smile. "@@.npc_manager;Sorry to interrupt the... fun, but we have concluded our business and <<=setup.getNpcName('npc_harassment', 'formal')>> needs to get back to her office.@@"<br>
<br>
Rising to their feet <<=setup.getNpcName('npc_harassment_assist', 'first')>> gives you a final peck on the cheek before dashing over and presenting their throat for a leash.<br>
<br>
Following along behind their owner <<=setup.getNpcName('npc_harassment_assist', 'first')>> takes a final moment to blow you a kiss just before the door closes behind them.
<<else>>
Though the hands on your body have you straining <<if setup.checkItemTypeWorn("cage")>>within your cage<<else>>beneath your clothes<</if>> you carefully extricate yourself from <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> grasp and insist that you need to get back to work.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> pouts a bit before moving away. Several more tense minutes pass before you hear the inner door open and <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_harassment', 'formal')>> emerge from the inner office.<br>
<br>
<<=setup.getNpcName('npc_harassment', 'formal')>> looks slightly surprised as she glances between you and her assistant. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> expression can only be described as enigmatic.<br>
<br>
<<printThought "Was this some sort of game?">><br>
<br>
"@@.npc_harassment;Come along, <<=setup.getNpcName('npc_harassment_assist', 'first')>>@@" she calls, clipping the leash back to <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> collar before leading the way out of the office. Just before the door closes <<=setup.getNpcName('npc_harassment_assist', 'first')>> looks back and blows you a kiss before the leash goes taut and <<=setup.getNpcName('npc_harassment_assist', 'first')>> is drug away.
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> graces you with the slightest smile and a knowing nod before returning to her office.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
</div>/*#
#desc: sent to visit npc_harassment in stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> steps out of her office just long enough to place a package on your desk. "@@.npc_manager;Delivery for <<=setup.getNpcName('npc_harassment', 'formal')>>, quickly now.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_harassment', 'formal'))>> office is listed on the package, and you wonder for a moment why the inter-office mail service couldn't be used... and then remember the high-stakes situation you and <<=setup.getNpcName('npc_manager', 'formal')>> are in.<br>
<br>
<<printThought "I haven't seen <<=setup.getNpcName('npc_harassment', 'formal')>> could she be an ally?">><br>
<br>
[<<moveTo "event_work_hr_harrassment_stage5_2" "Hurry and make the delivery." 300>>]
</div>/*#
#desc: visit npc_harassment in stage 5
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_harassment', 'formal'))>> Upper Floor Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_harassment") setup.charImage("npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName('npc_harassment', 'formal'))>> office where <<=setup.getNpcName('npc_harassment_assist', 'first')>> greets you with a smile and announces you for <<=setup.getNpcName('npc_harassment', 'formal')>>.<br>
<br>
Where <<=setup.getNpcName('npc_harassment_assist', 'first')>> is their usual smiling, friendly self, <<=setup.getNpcName('npc_harassment', 'formal')>> looks obviously stressed, looking at you with a hint of suspicion as you hand over the package and she opens it, reading its contents for a few moments and then sighing with obvious relief.<br>
<br>
"@@.npc_harassment;So <<=setup.getNpcName('npc_manager', 'other')>> is back... that is the first bit of good news I have heard since... well.@@" She nods in silent understanding. "@@.npc_harassment;You may inform <<=setup.getNpcName('npc_manager', 'other')>> that I will do what I can to assist. Anything to depose <<=setup.getNpcName('npc_rival', 'formal')>>, that incompetent upstart has been quite the aggravation, and I am running out of excuses to reject <<his npc_rival>> requests to "borrow" my assistant.@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> rushes to their manager's side, replaying what you immediately recognise is a discussion that has happened many times before. "@@.npc_harassment_assist;I told you, if it would make your job easier I would gladly—@@"<br>
<br>
<<=setup.getNpcName('npc_harassment', 'formal')>> cuts off her assistant with a tired smile, "@@.npc_harassment;I know, and I appreciate your indefatigable eagerness... but a <<man npc_rival>> like <<=setup.getNpcName('npc_rival', 'formal')>> must be dealt with sternly, and with conviction. If I give in now <<he npc_rival>> will only push harder in the future... but now, well... I hope <<=setup.getNpcName('npc_manager', 'formal')>> can reclaim her position and neutralise <<=setup.getNpcName('npc_rival', 'formal')>> for good.@@"<br>
<br>
You nod, thanking the two of them for their time, before returning to the office to relay the message to <<=setup.getNpcName('npc_manager', 'formal')>> and then return to your desk, your thoughts dwelling on <<=setup.getNpcName('npc_harassment_assist', 'first')>> and <<=setup.getNpcName('npc_harassment', 'formal')>> and their besieged situation.<br>
<br>
[<<moveTo $scene.workEventReturn "Get back to your desk and back to work." 1200 "<<completeWorkEvent>>">>]
</div>/*#
#desc: president of nintendolls comes by for a meeting
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.repeat = false>>
<<switch $npc_nintendolls.stage>>
<<case 0>>
<<set $npc_nintendolls.stage = 1>>
<<registerProgressionEvent>>
<<case 1>>
<<if $npc_manager.stage > 1 && (setup.checkItemTypeWorn("cage") || setup.checkItemTypeWorn("plug"))>>
<<set $npc_nintendolls.stage = 2>>
<<registerProgressionEvent>>
<<else>>
<<set $scene.repeat = true>>
<</if>>
<<case 2>>
<<if $npc_manager.stage > 2>>
<<set $npc_nintendolls.stage = 3>>
<<registerProgressionEvent>>
<<else>>
<<set $scene.repeat = true>>
<</if>>
<<case 3>>
<<case 4>>
<<case 5 6>>
<<removeRandomEvent 'work_office' 'nintendolls_president'>>
<</switch>>
<<if $npc_manager.stage < 4 && $npc_nintendolls.stage > 4>>
<<set $scene.stage = 4>>
<<else>>
<<set $scene.stage = $npc_nintendolls.stage>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.stage == 5>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_nintendolls") setup.charImage("npc_nintendolls","npc_nintendolls_sissy_slave")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_nintendolls")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_nintendolls.stage == 1 && !$scene.repeat>>
Greeting some generic executive at the door, you escort <<him npc_nintendolls>> into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office for <<his npc_nintendolls>> scheduled meeting.
<<else>>
You welcome <<=setup.getNpcName('npc_nintendolls', 'formal')>>, the president of Nintendolls, as <<he npc_nintendolls>> arrives for <<his npc_nintendolls>> scheduled meeting.
<</if>>
<br><br>
<<switch $scene.stage>>
<<case 1>>
You lead <<him npc_nintendolls>> to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office with no incident as she dismisses you with a nod.<br>
<br>
<<if $scene.repeat>>
You nervously sit as another meeting between your <<=setup.getNpcName('npc_manager', 'title')>> and the president of the company whose data you lost proceeds, but it proceeds in private, <<=setup.getNpcName('npc_manager', 'formal')>> not summoning you for anything and eventually <<=setup.getNpcName('npc_nintendolls', 'formal')>> leaves, walking past your desk with no comment, though <<he npc_nintendolls>> does flash you an ominous wink.
<<else>>
Half an hour later, just after <<he npc_nintendolls>> has left <<=setup.getNpcName('npc_manager', 'formal')>> stops beside your desk.<br>
<br>
"@@.npc_manager;You know who that was? That was <<=setup.getNpcName('npc_nintendolls', 'formal')>>, the President of Nintendolls. You remember them and that messy debacle you caused? Well, despite all that it seems they are interested in furthering their corporate partnership with us, apparently they are quite interested in adopting some of our managerial techniques to help improve employee engagement and productivity.@@"<br>
<br>
You gulp as you try to think of what precise techniques <<=setup.getNpcName('npc_manager', 'formal')>> might be referring to. She goes into no further detail, however, merely smiling before returning to her office.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<case 2>>
<<if $scene.repeat>>
Once again <<=setup.getNpcName('npc_nintendolls', 'formal')>>, the President of Nintendolls appears for a visit with your <<=setup.getNpcName('npc_manager', 'title')>>. Walking past your desk on the way to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, <<he npc_nintendolls>> flashes you a leering grin.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_nintendolls;Staying safe?@@" <<He npc_nintendolls>> asks, <<his npc_nintendolls>> gaze flitting down between your legs reminding you of how your <<=setup.getNpcName('npc_manager', 'title')>> showed off your chastity-locked state in front of <<him npc_nintendolls>>. You blush in embarrassment as <<he npc_nintendolls>> laughs and
<<else>>
"@@.npc_nintendolls;Enjoying a full shift?@@" <<He npc_nintendolls>> asks, laughing at <<his npc_nintendolls>> bad joke as you blush in embarrassment and <<he npc_nintendolls>>
<</if>>
continues on to <<his npc_nintendolls>> meeting.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<else>>
Still nervous about your error's impact on <<his npc_nintendolls>> company, you almost apologise before chickening out and merely leading <<him npc_nintendolls>> to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office for <<his npc_nintendolls>> scheduled meeting.<br>
<br>
You are about to return to your desk when <<=setup.getNpcName('npc_manager', 'formal')>> stops you short. "@@.npc_manager;Actually, <<=$player.first_name>>, stay for a moment, I think you would be just perfect to help me explain something.@@"<br>
<br>
The <<mans npc_nintendolls>> expression is cold and unreadable as <<he npc_nintendolls>> waits for <<=setup.getNpcName('npc_manager', 'formal')>> to continue.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
"@@.npc_manager;Of course, that oh-so-costly <<=ps($player.first_name)>> previous role at Cloud Data Services, but you well understand how that sort of mistake resulting from a... distracted employee can cause all manner of harm. As well as being more suited to a position as my secretary, <<=$player.first_name>> is kept more focused on performing <<if $player.sec_style.body.name=="">>his<<else>>her<</if>> duties in many ways. Would you please turn around and show <<=setup.getNpcName('npc_nintendolls', 'formal')>> that lovely helper keeping you full and attentive?@@"<br>
<br>
[<<moveTo "event_work_nintendolls_president_plug" "Expose your buttplug as instructed." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_nintendolls_president_plug" "Refuse." 60 "<<set $scene.obey=false>>">>]
<<else>>
"@@.npc_manager;Of course, that oh-so-costly error was made in <<=ps($player.first_name)>> previous role at Cloud Data Services, but you well understand how that sort of mistake resulting from a... distracted employee can cause all manner of harm. As well as being more suited to a position as my secretary, <<=$player.first_name>> is kept more focused on performing <<if $player.sec_style.body.name=="">>his<<else>>her<</if>> duties in many ways. Would you please remove your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>> to show <<=setup.getNpcName('npc_nintendolls', 'formal')>> the device you wear to help keep you behaved?@@"<br>
<br>
[<<moveTo "event_work_nintendolls_president_cage" "Expose yourself as instructed." 120 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_nintendolls_president_cage" "Refuse." 60 "<<set $scene.obey=false>>">>]
<</if>>
<</if>>
<<case 3>>
Still nervous about your error's impact on <<his npc_nintendolls>> company you quickly lead <<him npc_nintendolls>> to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office for <<his npc_nintendolls>> scheduled meeting.<br>
<br>
You are about to return to your desk when <<=setup.getNpcName('npc_manager', 'formal')>> stops you short. "@@.npc_manager;Hmm, actually, I think today would be a great opportunity for you to "make it up" to <<=setup.getNpcName('npc_nintendolls', 'formal')>> for your... failure in shepherding <<his npc_nintendolls>> company's data.@@"<br>
<br>
"@@.npc_manager;No offense, <<=setup.getNpcName('npc_nintendolls', 'formal')>>, but you are looking a bit more stressed than usual, how would you like for my assistant to help... relieve you a bit before our meeting?@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at you. "@@.npc_manager;Now, then, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. How about you crawl over and put those cute lips to work showing our guest some proper hospitality.@@"<br>
<br>
As you look from <<=setup.getNpcName('npc_manager', 'formal')>> to <<=setup.getNpcName('npc_nintendolls', 'formal')>>, <<he npc_nintendolls>> sits down, spreading <<his npc_nintendolls>> legs to expose the sizable bulge in <<his npc_nintendolls>> pants.<br>
<br>
<<if State.hasPlayed("event_work_nintendolls_president_oral")>>
You nervously whet your lips and <<he npc_nintendolls>> leers harder. "@@.npc_nintendolls;I think I will take my recompense through the back-door, today...@@"<br>
<br>
[<<moveTo "event_work_nintendolls_president_anal" "Present your rear hole as requested." 60 "<<set $scene.anal=true>>">>]<br>
[<<moveTo "event_secretary_style_anal_strict_1" "Refuse!" 60>>]
<<else>>
[<<moveTo "event_work_nintendolls_president_oral" "Drop to your hands and knees and obey." 60 "<<set $scene.obey=true>>">>]<br>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_work_nintendolls_president_anal" "Offer your rear hole instead." 60 "<<set $scene.anal=false>>">>]<br>
<</if>>
[<<moveTo "event_work_nintendolls_president_oral" "Refuse." 60 "<<set $scene.obey=false>>">>]
<</if>>
<<case 4>>
Glancing at the time, you note that <<he npc_nintendolls>> is several minutes early. Wordlessly, <<he npc_nintendolls>> stops in the middle of the room and turns towards you to nod in the direction of <<his npc_nintendolls>> crotch.<br>
<br>
<<printThought 'Does <<he npc_nintendolls>> expect me to "make it up" to <<him npc_nintendolls>> every time <<he npc_nintendolls>> visits?'>><br>
<br>
[<<moveTo "event_work_nintendolls_president_pre_oral" "Drop to your knees." 120 "<<set $scene.accept=true>>">>]<br>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if "data_plug" == setup.getItemFromType("plug") && !$npc_ai.flags.missions.connection>>
[@@.link_locked;Your ass is way too stuffed with <<=setup.getNpcName("npc_ai","first")>> for you to offer it up for <<his npc_nintendolls>> use.@@]<br>
<<else>>
[<<moveTo "event_work_nintendolls_president_pre_anal" "Offer your rear hole instead." 60>>]<br>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if !$player.virgin.vaginal>>
[@@.link_locked;You may theoretically owe <<=setup.getNpcName("npc_nintendolls","formal")>>... but not so much that you feel like offering <<him npc_nintendolls>> your virginity.@@]<br>
<<elseif !setup.checkItemTypeWorn("cage") || setup.isCage() || $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey && setup.getChastityLevel() != 5 || setup.getChastityLevel() == 5 >>
[<<moveTo "event_work_nintendolls_president_pre_vag" "Offer your vagina." 60>>]<br>
<<else>>
[@@.link_locked;Your <<getWordVagina>> is locked up and unavailable for offer.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_work_nintendolls_president_pre_oral" "Refuse <<his npc_nintendolls>> command." 60 "<<set $scene.accept=false>>">>]
<<case 5 6>>
Rising from your seat to greet <<=setup.getNpcName('npc_nintendolls', 'formal')>> for another in what seems like an endless series of meetings with your <<=setup.getNpcName('npc_manager', 'title')>> you are surprised when <<he npc_nintendolls>> is not alone as <<he npc_nintendolls>> strides through the door. Even more shocking, or at least, shocking for one unaccustomed to things up here on <<if $npc_manager.stage >=4>><<=$player.work.upperFloorNumber>><<else>><<=$player.work.floorNumber>><</if>> is the person who follows at <<his npc_nintendolls>> heels, a leather leash running from her collared throat to <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> hand.<br>
<br>
Bound severely <<his npc_nintendolls>> "assistant" walks atop steep ballet heels, her skirt so short as to let her caged <<if $fetish.sissy>>sissy<<else>>girl<</if>> clitty peek out below, legs hobbled at ankle and thigh and you know without even looking that a thick plug is filling her bum. Her arms are pulled back in a strict elbow-to-elbow armbinder, thrusting her chest forward to draw further attention to a pair of large breasts, each nipple pierced and ringed, the perfect globes perched precariously atop the corset that has crushed her into a stunning hourglass figure.<br>
<br>
Through a combination of an intensely steep rigid posture collar and peripheral-vision robbing blinkers she is unable to look anywhere save straight ahead, her lips spread wide around a massive ball gag, and yet her eyes twinkle with lust.<br>
<br>
Looking back at you as you stare at the girl <<=setup.getNpcName('npc_nintendolls', 'formal')>> grins wide.<br>
<br>
"@@.npc_nintendolls;You like? With your Manager's help I have been making aggressive changes to all levels of my organisation — this lovely thing here is a true treasure, she was once a quite cantankerous board member, but thanks to our new policies well... she seems so much more lovely and happy now, don't you think?@@"<br>
<br>
Despite her precarious stance and rigid bondage the girl manages to curtsy, her eyes fluttering with obvious lust as she looks up at <<=setup.getNpcName('npc_nintendolls', 'formal')>>.<br>
<br>
"@@.npc_nintendolls;Lovely, you know often she is not this well behaved, but it seems the new dosage is working quite well, either way, she will learn, in time. Well, we had best get to our meeting! I cannot wait to show <<=setup.getNpcName('npc_manager', 'other')>> the monumental success her advice has brought, and to thank her for recommending me to the board of SISSI! In a way your foolish loss of data was one of the best things that happened, it really has opened so many doors...@@"<br>
<br>
You stare as the two of them head into the inner office, simultaneously scared, aroused and... jealous? Of <<his npc_nintendolls>> cute pet.<br>
<br>
Some time later as the two of them depart — the girl as securely bound, and seemingly just as happy, as she was before, even winking at you in the brief moment she is facing you coming out of the inner office.<br>
<br>
Stopping next to your desk <<=setup.getNpcName('npc_manager', 'formal')>> stares wistfully after them. You once again feel a twinge of jealousy, until she looks down upon you, her smile and the lusty look in her eye making it wordlessly clear how much you mean to her.<br>
<br>
"@@.npc_manager;It is so lovely when a project comes together, don't you agree?@@" She states enigmatically. "@@.npc_manager;Well, I shall not keep you from your work any longer, have a lovely day.@@"<br>
<br>
You remain sitting in stunned silence as she walks away, simultaneously wanting to call after her yet knowing that nothing you could say could improve on the near perfect moment.<br>
<br>
The door to the inner office shuts behind her and you turn back to your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<</switch>>
</div>/*#
#desc: show/forced to show off your chastity cage to president of nintendolls
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<if $scene.obey>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
<<printThought "Am I really doing this?">><br>
<br>
Whatever your misgivings, you find yourself obeying the command, removing your clothes to expose your <<if $player.body_ref.penis>><<getWordMyPenis>>. Even more embarrassing is that you are swelled within your prison,<<else>>chastity belt. Even more embarrassing is that you drip past your prison,<</if>> as if in excitement.<br>
<br>
<<if setup.getTotalValue("humiliation") < 5>>
<<printThought "This can't be turning me on! What is wrong with me?!">>
<<else>>
<<switch $player.flags.humiliationStyle>>
<<case "brazen">>
You feel the familiar burst of pleasure at exposing yourself, just another fun event in your life as a brazen slut.
<<case "bashful">>
You feel the familiar burst of pleasure at exposing yourself, yet another humiliation in your life of nigh-perpetual embarrassment.
<<default>>
<<printThought "Why does being humiliated turn me on so much?">>
<</switch>>
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> walks around her desk to stand next to you and grab hold of your <<if setup.isCage()>>cage<<else>>belt<</if>>, her warm grasp only having you strain even more painfully within it.<br>
<br>
"@@.npc_manager;The undisciplined mind, as you well know, is prone to all manner of... distractions. This is an obvious issue in tech as it can lead to anything from errors to missed deadlines or interpersonal conflicts. We have found that an employee who is locked and controlled is far more docile, obedient, and productive on nearly every metric.@@"<br>
<br>
"@@.npc_nintendolls;I see, I see, and it opens up additional avenues of reward in the case of good behaviour as well.@@"<br>
<br>
"@@.npc_manager;Precisely!@@" She states with a smile. "@@.npc_manager;Speaking of rewards, let me return to our previous discussion on the utility of punishment as a tool to enhance employee motivation.@@"<br>
<br>
Her hand still <<if setup.isCage()>>grasping your cage<<else>>cupping the front of your belt<</if>>, she drags you to the desk and bends you over. A quick yank on your clothing has your bottom exposed.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
"@@.npc_nintendolls;Is the plug part of employee discipline as well, or is your secretary just a depraved pervert?@@"<br>
<br>
"@@.npc_manager;A little of both, actually.@@" She states, using a finger to wiggle the plug<<if $player.body_ref.penis>> against your prostate<</if>>. "@@.npc_manager;It serves a dual purpose as a reward to make up for the inability to receive conventional stimulation, as well as a reminder of how utterly controlled they are. Worn continuously, and with additional reinforcement, it does an excellent job of re-orienting the wearers' thoughts and desires.@@"<br>
<br>
You can't help but moan. As humiliated as you are the pressure <<if $player.body_ref.penis>>against your prostate<<else>>inside your rear<</if>> feels so good...<br>
<br>
She withdraws her hand, leaving you trembling with want. "@@.npc_manager;Anyway, enough with that distraction, I had something else I wished to show you.@@"<br>
<br>
<</if>>
"@@.npc_manager;You know, given all that this one cost your company, it seems only fair that you have the opportunity to administer a punishment personally. Why not use your belt? We have found that quite effective when an impromptu punishment is in order.@@"<br>
<br>
Standing beside you, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> hand gently, but firmly, holds you in place as you listen to the THWIP of <<=setup.getNpcName('npc_nintendolls', 'formal')>> removing <<his npc_nintendolls>> belt.
<<else>>
<<printThought "This is crazy! No way am I exposing myself!">><br>
<br>
You're trying to compose a verbal rejection to the bizarre request as <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows.<br>
<br>
"@@.npc_manager;Hmm, looks like we will be demonstrating things a bit out of my planned sequence.@@"<br>
<br>
You do not have time to consider what that could mean when she is suddenly in front of you. Meeting your gaze with a stern glance, she <<if setup.isCage()>>grabs your cage right through your clothing and pulls<<else>>presses your hand against the front shield of your belt through your clothes, somehow cupping firmly enough to pull<</if>> you over to her desk. Bent over and held down with one hand, she uses the other to pull down your clothes and expose your bare bottom.<br>
<br>
"@@.npc_manager;It seems this one has forgotten their training, no matter, it is a good opportunity to demonstrate some of the principles of punishment we had discussed previously. How about you take off your belt and administer some... remediation for the errors that lost all of that test data?@@"<br>
<br>
You tense in anticipation as you hear approaching footsteps combined with the THWIP of a belt being removed.<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
You can sense <<him npc_nintendolls>> standing behind you when <<he npc_nintendolls>> pauses, seeming to notice the <<=setup.getItemTypeName("plug")>> occupying your bottom.<br>
<br>
"@@.npc_nintendolls;Hmm, is this part of training, or is this one just a depraved pervert?@@"<br>
<br>
"@@.npc_manager;A little of both, actually.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states, using a finger to wiggle the plug <<if $player.body_ref.penis>>against your prostate<<else>>inside your rear<</if>>. "@@.npc_manager;It serves a dual purpose as a reward to make up for the inability to receive conventional stimulation, as well as a reminder of how utterly controlled they are. Worn continuously, and with additional reinforcement, it does an excellent job of re-orienting the wearers' thoughts and desires.@@"<br>
<br>
You can't help but moan. As humiliated as you are the pressure <<if $player.body_ref.penis>>against your prostate<<else>>along your insides<</if>> feels so good...<br>
<br>
<<switch $player.flags.humiliationStyle>>
<<case "brazen">>
You feel the familiar burst of pleasure at your exposed situation, just another fun event in your life as a brazen slut.
<<case "bashful">>
You feel the familiar burst of pleasure at your exposed situation, yet another humiliation in your life of nigh-perpetual embarrassment.
<<default>>
<<printThought "Why does being humiliated turn me on so much?">>
<</switch>>
<br><br>
She withdraws her hand from your plug, leaving you trembling with want. "@@.npc_manager;Anyway, this is supposed to be a punishment, so how about you show this cute bum who is boss?@@"<br>
<br>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_work_nintendolls_president_spank" "Continue." 180>>]
</div>/*#
#desc: spanked by president of nintendolls
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
You barely have time to prepare before the first blow lands with a *THWACK!*<br>
<br>
You cry out in pain at the hard impact of leather against your exposed bottom.<br>
<br>
"@@.npc_manager;In addition to serving to help a recalcitrant employee re-focus on their duties to the company, we find that this sort of... personal treatment helps with team cohesion, as well as reinforcing subordinate/superior hierarchical relationships.@@"<br>
<br>
*THWACK!* *THWACK!*<br>
<br>
You cry out in pain at the repeated hard slaps. Less precise than <<=setup.getNpcName('npc_manager', 'formal')>> is with her paddle, <<he npc_nintendolls>> makes up for it with brute power, grunting in exertion with each hard slap.<br>
<br>
"@@.npc_nintendolls;I understand. I can think of more than a few members of the board that could do with being brought in line like this!@@"<br>
<br>
"@@.npc_manager;As I have told you before. These are all very useful techniques, how you apply them is up to the individual needs of an organisation.@@"<br>
<br>
Several more hard slaps have you whimpering in pain, and were it not for <<=setup.getNpcName('npc_manager', 'formal')>> holding you up, you would have slid to the ground and curled into a ball.<br>
<br>
"@@.npc_manager;Hmmm, I believe that will be enough for now. As with anything, moderation is key, and my cute secretary here still has to sit down for the rest of the day.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> pulls up your clothes and
<<if setup.checkItemTypeWorn("cage")>>
<<if setup.isCage()>>gives your cage a gentle squeeze<<else>>gives the front shield of your belt a gentle pat<</if>> before helping
<<else>>
helps
<</if>>
you back to your feet. "@@.npc_manager;Back to work, my dear.@@"<br>
<br>
Somehow thinking to drop into a curtsy, you quickly retreat from the inner office, taking a seat at your desk with a wince of pain.<br>
<br>
Focused on your duties, you barely even notice when <<=setup.getNpcName('npc_nintendolls', 'formal')>> departs some time later.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
</div>/*#
#desc: show/forced to show off your plug to president of nintendolls
#status: RELEASED 0.8.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.obey>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<</if>>
<<changeHorny 25>>
<<set _plugSize = setup.getEffectivePlugSize()>>
<<applyExperience 'anal' _plugSize 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
<<printThought "Am I really doing this?">><br>
<br>
Whatever your misgivings, you find yourself obeying the command, removing your clothes and bending over to expose your plugged bum. Even more embarrassing is that your heart is beating fast, not just with fear, but also... excitement.<br>
<br>
<<if setup.getTotalValue("humiliation") < 5>>
<<printThought "This can't be turning me on! What is wrong with me?!">>
<<else>>
<<switch $player.flags.humiliationStyle>>
<<case "brazen">>
You feel the familiar burst of pleasure at exposing yourself, just another fun event in your life as a brazen slut.
<<case "bashful">>
You feel the familiar burst of pleasure at exposing yourself, yet another humiliation in your life of nigh-perpetual embarrassment.
<<default>>
<<printThought "Why does being humiliated turn me on so much?">>
<</switch>>
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> walks around her desk and bends you over further, spreading your cheeks to better show the plug nestled within.
<<else>>
<<printThought "This is crazy! No way am I exposing myself!">><br>
<br>
You're trying to compose a verbal rejection to the bizarre request as <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows.<br>
<br>
"@@.npc_manager;Hmm, looks like we will be demonstrating things a bit out of my planned sequence.@@"<br>
<br>
You do not have time to consider what that could mean when she is suddenly in front of you. Meeting your gaze with a stern glance, she bends you over her desk, somehow strong enough to hold you down with one hand as she uses the other to pull down your clothes and expose your bare bottom.<br>
<br>
"@@.npc_manager;It seems this one has forgotten their training, no matter, it is a good opportunity to demonstrate some of the principles of punishment we had discussed previously. How about you take off your belt and administer some... remediation for the errors that lost all of that test data?@@"<br>
<br>
You can sense <<him npc_nintendolls>> standing behind you when <<he npc_nintendolls>> pauses, seeming to notice the <<=setup.getItemTypeName("plug")>> occupying your bottom.<br>
<br>
"@@.npc_nintendolls;Hmm, is this part of training, or is this one just a depraved pervert?@@"<br>
<br>
"@@.npc_manager;A little of both, actually — and what I had originally called her in to demonstrate.@@" <<=setup.getNpcName('npc_manager', 'formal')>> explains as she uses a finger to wiggle the plug <<if $player.body_ref.penis>>against your prostate<<else>>inside your rear<</if>>. "@@.npc_manager;It serves a dual purpose as a reward to make up for the inability to receive conventional stimulation, as well as a reminder of how utterly controlled they are. Worn continuously, and with additional reinforcement, it does an excellent job of re-orienting the wearers' thoughts and desires.@@"<br>
<br>
You can't help but moan. As humiliated as you are the pressure <<if $player.body_ref.penis>>against your prostate<<else>>along your insides<</if>> feels so good...<br>
<br>
<<switch $player.flags.humiliationStyle>>
<<case "brazen">>
You feel the familiar burst of pleasure at your exposed situation, just another fun event in your life as a brazen slut.
<<case "bashful">>
You feel the familiar burst of pleasure at your exposed situation, yet another humiliation in your life of nigh-perpetual embarrassment.
<<default>>
<<printThought "Why does being humiliated turn me on so much?">>
<</switch>>
<br><br>
She withdraws her hand from your plug, leaving you trembling with want.
<</if>>
<br><br>
"@@.npc_manager;Here you see the root of keeping a <<if $fetish.sissy>>sissy<<else>>secretary<</if>> alert and attentive. Around here we say that a filled <<if $fetish.sissy>>SISSI <</if>>Secretary is a focused <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
She wiggles your plug and you let out a reflexive moan. "@@.npc_manager;See how sensitive being plugged has her? This mood of constant arousal, as well as the inescapable, intimate reminder of just what degree of control I have over her, is perfect for keeping her in the proper frame of mind to discharge her duties.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> continues to toy with your plug, pulling it gently in and out as if it was fucking you. The combination of the stimulation, alongside the humiliation of this all happening for the edification — or maybe just entertainment, of <<=setup.getNpcName('npc_nintendolls', 'formal')>> has you bite your lip in a futile attempt to resist the arousal pumping through you.<br>
<br>
"@@.npc_manager;As her training continues she will move on to larger and larger plugs so that she never becomes complacent, and so as to expand the scope of clients she is capable of servicing.@@"<br>
<br>
<<printThought "Wait, bigger, service?">><br>
<br>
Your thoughts are cut off as <<=setup.getNpcName('npc_manager', 'formal')>> starts twisting your plug, <<if $player.body_ref.penis>>the pressure on your prostate<<else>>the stimulation<</if>> so strong you jerk with a small orgasm that somehow only leaves you more desperately aroused.<br>
<br>
"@@.npc_manager;See how sensitive she already is? By the end of her training the plug alone will assure she has a happy, welcoming smile on her face, ready to bend over for her owner or anyone else she is assigned to service.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> gives you a swat on the bottom that seems to reign you back in for a moment.<br>
<br>
"@@.npc_manager;The final proof of skill in such matters will be her ability to take her manager's fist in its entirety. This proves a double purpose of both demonstrating that she will not balk at even the most endowed of clients, but a symbolic reminder of being a puppet — an extension of her owner's will.@@"<br>
<br>
<<if State.hasPlayed("event_manager_anal_final_1")>>
<<printThought "Well... she has literally had both hands inside of me...">>
<<elseif State.hasPlayed("event_manager_anal_training")>>
<<printThought "Well... she has literally been wrist deep in my bum...">>
<<elseif setup.getTotalValue("anal") > 15>>
<<printThought "Is that possible? I have trained my bum pretty extensively, but a whole fist...">>
<<else>>
<<printThought "What? No, that can't be possible! There's no way even <<=setup.getNpcName('npc_manager', 'formal')>> slender hand could fit inside me...">>
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> stops the tormenting stirring of your plug, giving your rear a squeeze before she stands up, one hand still gently, but possessively on your back, holding you down on the desk.<br>
<br>
"@@.npc_manager;Of course a bottom is good for more than just the hole. Lovely to look at it is also a perfect site to use for punishing wayward subordinates. You know, given all that this one cost your company, it seems only fair that you have the opportunity to administer a punishment personally. Why not use your belt? We have found that quite effective when an impromptu punishment is in order.@@"<br>
<br>
Standing beside you, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> hand gently, but firmly, holds you in place as you listen to the THWIP of <<=setup.getNpcName('npc_nintendolls', 'formal')>> removing <<his npc_nintendolls>> belt.<br>
<br>
[<<moveTo "event_work_nintendolls_president_spank" "Oh no..." 180>>]
</div>/*#
#desc: administer/forced to give blowjob to president of nintendolls
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.obey>>
<<applyExperience 'humiliation' 12 'slightly' $SEEN_FRIEND>>
<<elseif $fetish.get_raped>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_FRIEND>>
<</if>>
<<if $scene.obey || $fetish.get_raped && !($npc_manager.stage < 3 && !$player.sec_style.sex.pegging && ($npc_manager.flags.cruel > 0 || $npc_manager.anger > 5 && $npc_manager.anger > $npc_manager.affection))>>
<<set $npc_nintendolls.stage = 4>>
<<registerProgressionEvent>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'little' $SEEN_FRIEND>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_nintendolls'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "forced">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
With a final glance at <<=setup.getNpcName('npc_manager', 'formal')>>, you slide to the floor, crawling towards <<=setup.getNpcName('npc_nintendolls', 'formal')>> as <<he npc_nintendolls>> sits dispassionately, looming above you.<br>
<br>
Crawling between <<his npc_nintendolls>> legs, you place your hands gently on the edge of <<his npc_nintendolls>> chair, your face centimetres from <<his npc_nintendolls>> bulging <<if $npc_nintendolls.fem>>pants<<else>>manhood<</if>>. Your voice soft, you look up at <<him npc_nintendolls>> and blink twice before asking if you might free <<his npc_nintendolls>> cock so as to serve it.<br>
<br>
<<He npc_nintendolls>> nods and you continue to look seductively upwards as you unfasten <<his npc_nintendolls>> pants, <<his npc_nintendolls>> thick <<if $npc_nintendolls.fem>>girlcock<<else>>manhood<</if>> springing up with such force as to almost smack you in the face.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
As big as <<he npc_nintendolls>> is, you've trained on bigger and you easily slide <<his npc_nintendolls>> cock down your throat. You feel <<him npc_nintendolls>> stiffen further, clearly surprised that one as dainty as yourself could so easily accept <<him npc_nintendolls>> in one go.
<<else>>
<<He npc_nintendolls>> may be big, but no larger than you are experienced with. Opening wide you slide <<him npc_nintendolls>> down your throat, letting out but a single, soft cough in the process of burying your nose against <<his npc_nintendolls>> belly.
<</if>>
<br><br>
Tongue and lips and throat working together you bob up and down with long, sucking strokes, zeroing in on <<his npc_nintendolls>> most sensitive bits as you softly caress <<his npc_nintendolls>> balls with your free hand.<br>
<br>
Under your expert attention you can feel <<his npc_nintendolls>> pulse race, <<his npc_nintendolls>> cock stiffening even further as <<his npc_nintendolls>> breaths come faster.<br>
<br>
With a final gasp <<he npc_nintendolls>> explodes, filling your mouth with rich, creamy cum.<br>
<br>
<<if setup.getTotalValue("cum") >= 10>>
Strong and thick and delicious you eagerly slurp <<him npc_nintendolls>> dry of every drop.
<<else>>
Strong and thick and a little bitter you know well enough than to spit it out, forcing yourself to choke it all down without objection.
<</if>>
<br><br>
Sitting back you smile up at <<him npc_nintendolls>> before carefully tucking <<his npc_nintendolls>> wilting cock away and zipping <<him npc_nintendolls>> back up.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<He npc_nintendolls>> is far too big for you to even attempt to deepthroat so you focus on kissing and licking and sucking up and down <<his npc_nintendolls>> length, your tongue dancing around <<his npc_nintendolls>> glans and through <<his npc_nintendolls>> slit as you seek out where <<he npc_nintendolls>> is the most sensitive.
<<else>>
As huge as <<he npc_nintendolls>> is intimidating, you decide to focus on <<his npc_nintendolls>> cock-head, barely wrapping your lips around <<his npc_nintendolls>> tip to suck and tornado lick in a manner you hope <<he npc_nintendolls>> finds pleasurable.
<</if>>
<br><br>
In spite of your lack of experience, <<he npc_nintendolls>> seems to quite enjoy your efforts, though <<he npc_nintendolls>> does end up taking charge towards the end, grabbing your head with both hands and slamming against the back of your mouth. With a grunt, <<he npc_nintendolls>> cums directly down your throat, a thick, spurting jet that almost completely bypasses your tongue to shoot down into your stomach.<br>
<br>
Gasping and coughing, you flail a bit as <<he npc_nintendolls>> finishes off, finally pulling away with you trailing drool and panting for air.<br>
<br>
"@@.npc_nintendolls;Heh, looks like your slut could do with a bit of training!@@"<br>
<br>
"@@.npc_manager;Hmm, it would appear so, at least if she is to properly accommodate one of your magnificence.@@"<br>
<br>
The way they're speaking of you has you feeling humiliated, more object that person...<<if $player.body_ref.penis>> and yet you feel your <<getWordMyPenis>> straining within its prison...<</if>><br>
<br>
You're still trying to catch your breath as <<he npc_nintendolls>> tucks <<his npc_nintendolls>> wilting member back into <<his npc_nintendolls>> pants.
<</if>>
<br><br>
Looking a little flush from <<his npc_nintendolls>> orgasm, <<he npc_nintendolls>> tries to maintain <<his npc_nintendolls>> composure. "@@.npc_nintendolls;Hmm, it's a start, I suppose.@@"<br>
<br>
"@@.npc_manager;Of course, of course. As good of a cocksucker as my sweet <<if $fetish.sissy>>SISSI<<else>>girl<</if>> may be, no one blowjob could make up for the monetary damage her silly mistake incurred. Do feel free to avail yourself of her skills any time in the future. She can always use the practice!@@"<br>
<br>
"@@.npc_nintendolls;Hmm, I believe I will be doing just that...@@" <<He npc_nintendolls>> says with a grin that has you blushing.<br>
<br>
Rising to your feet, you glance towards <<=setup.getNpcName('npc_manager', 'formal')>> for approval, she nods in dismissal and you head back to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<else>>
You shake your head in refusal and <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows in an intimidatingly familiar way.<br>
<br>
<<printThought "Uh-oh...">><br>
<br>
<<if $npc_manager.stage < 3 && !$player.sec_style.sex.pegging && ($npc_manager.flags.cruel > 0 || $npc_manager.anger > 5 && $npc_manager.anger > $npc_manager.affection)>>
<<=setup.getNpcName("npc_manager","formal")>> suddenly appears and turns to her guest. "@@.npc_manager;I apologise for my <<if $fetish.sissy>>SISSI <</if>>Secretary's disobedience — she is not yet out of probation, perhaps this is a bit... beyond her current capabilities.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> glares daggers at you as she gestures towards the door. "@@.npc_manager;You may return to your desk, and perhaps think further on how you intend to make your career at this company a success.@@"<br>
<br>
You quickly back away, uncertain if you dodged a bullet... or merely delayed such.
<<elseif $fetish.get_raped>>
Springing forward like a panther she is on you before you can even move, one hand grabbing you by the hair and dragging you over to where <<=setup.getNpcName('npc_nintendolls', 'formal')>> is seated.<br>
<br>
Forcing you to your knees she presses your face against <<his npc_nintendolls>> bulging pants before apologising. "@@.npc_manager;I am very sorry for my foolish <<if $fetish.sissy>>SISSI's<<else>>girl's<</if>> disobedience, would you be so kind as to rape it out of her throat?@@"<br>
<br>
She tilts your head back so that you can watch <<his npc_nintendolls>> face split into an evil grin, whispering in your ear as <<he npc_nintendolls>> makes a show of unfastening <<his npc_nintendolls>> pants to reveal <<his npc_nintendolls>> large, hard member.<br>
<br>
"@@.npc_manager;If you bite <<him npc_nintendolls>>, I will make your life a living hell. Do you understand, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"<br>
<br>
Nigh petrified, you nod and a moment later she forces you face first onto <<his npc_nintendolls>> cock.<br>
<br>
You aren't sure when the grasp on your head switches from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> one handed hair-grab to <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> two-handed vice-like hold, but the result is the same either way: your face being skull-fucked like a living onahole.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
Fortunately you have trained with far larger cocks than <<if $npc_nintendolls.fem>>hers<<else>>his<</if>>, reflexively relaxing your throat and accepting all of <<him npc_nintendolls>> into your gullet with an aroused moan.
<<else>>
Though near your limit <<his npc_nintendolls>> size is within your trained capacity as you reflexively relax your throat to hilt <<him npc_nintendolls>> with a gasp.
<</if>>
<br><br>
"@@.npc_nintendolls;Shit, not many girls can take me on the first attempt, why was she so reluctant?@@"<br>
<br>
"@@.npc_manager;Just a stubborn, bratty slut, I suppose.@@" Your <<=setup.getNpcName('npc_manager', 'title')>> replies, as you are pounded up and down <<his npc_nintendolls>> cock.<br>
<br>
You're so much of a mouth fuck-hole this brutal treatment only serves to turn you on and you cannot help but let out a moan as you are face-fucked hard.<br>
<br>
Putting your tongue and lips to work sucking with each stroke it isn't long before the <<man npc_nintendolls>> explodes, your face shoved all the way down with both hands as <<he npc_nintendolls>> shoots a thick jet of cum straight into your belly.<br>
<br>
Well, trained in this sort of thing you hold your breath until <<his npc_nintendolls>> grip finally slips. You slide off <<his npc_nintendolls>> softening cock with a slurp before reflexively licking your lips and catching your breath.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
You may have some experience as a cocksucker, but in speed, size and girth this is far beyond what you can handle.
<<else>>
<<His npc_nintendolls>> large cock would be a challenge in any scenario given your barely existent skills, but being forcibly face-fucked is on a whole other level.
<</if>>
You gasp and pant, shedding drool and tears as <<he npc_nintendolls>> pounds against the back of your throat. Never getting more than half <<his npc_nintendolls>> length past your lips you feel ready to retch, your flailing arms held out of the way by <<=ps(setup.getNpcName('npc_manager', 'formal'))>> firm grasp as your helpless throat-rape continues.<br>
<br>
To your "fortune" it seems that <<he npc_nintendolls>> is really getting off on the brutal treatment as it is not long before <<he npc_nintendolls>> slams to a fresh depth, <<his npc_nintendolls>> tip barely penetrating into your throat as <<he npc_nintendolls>> spurts thick cum directly down your gullet.<br>
<br>
<<His npc_nintendolls>> hold relaxed you slide off, your mouth wide trailing drool and cum as you cough and pant and attempt to recover.
<</if>>
<br><br>
Looking a little flush from <<his npc_nintendolls>> orgasm, <<he npc_nintendolls>> tries to regain <<his npc_nintendolls>> composure after the aggressive face-rape. "@@.npc_nintendolls;Hmm, it's a start, I suppose.@@"<br>
<br>
"@@.npc_manager;Of course, of course. As good of a cocksucker as my sweet <<if $fetish.sissy>>SISSI<<else>>girl<</if>> may be, no one blowjob could make up for the monetary damage her silly mistake incurred. Do feel free to avail yourself of her skills any time in the future. She can always use the practice!@@"<br>
<br>
"@@.npc_nintendolls;Hmm, I believe I will be doing just that...@@" <<He npc_nintendolls>> says with a leer that has you blushing.<br>
<br>
Staggering to your feet you glance towards <<=setup.getNpcName('npc_manager', 'formal')>> for approval, she nods in dismissal and you head back to your desk.
<<else>>
Her gaze narrows at your refusal, but then softens as she re-addresses <<=setup.getNpcName('npc_nintendolls', 'formal')>> "@@.npc_manager;I am sorry, but it appears my assistant is a bit out of sorts today, perhaps she will be feeling more... participatory at some other time.@@"<br>
<br>
With a gesture she dismisses you from the room and you hurry back to your desk, thankful that nothing bad happened.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<if $npc_manager.stage < 3 && !$player.sec_style.sex.pegging && ($npc_manager.flags.cruel > 0 || $npc_manager.anger > 5 && $npc_manager.anger > $npc_manager.affection)>><<set $player.sec_style.sex.pegging='strict'>><<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_2' 1 'event_psychiatrist_session_pegging_virginity_1' false>><<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_pegging' 0 'theme_church_confession_pegged' true>><</if>><<if !$player.sec_style.sex.sex_woman>><<set $player.sec_style.sex.sex_woman = 'strict'>><</if>><<if !$player.virgin.pegged>><<set $player.virgin.pegged = 'npc_manager'>><</if>><<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: give president of nintendolls anal
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 12 'slightly' $SEEN_FRIEND>>
<<set $npc_nintendolls.stage = 4>>
<<registerProgressionEvent>>
<<applyExperience 'anal' $npc_nintendolls.penis_size 'little' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 8 'normal' $SEEN_FRIEND>>
<<set $scene.first = !$player.virgin.anal && !($player.virgin.pegged && $fetish.pegging_is_anal)>>
<<if !$player.virgin.anal>>
<<set $player.virgin.anal = "npc_nintendolls">>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "obedient">>
<<include "analUnlocks">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_admin.fem>>
<<set $player.sec_style.sex.sex_woman = "obedient">>
<<elseif !$player.sec_style.sex.sex_man && !$npc_admin.fem>>
<<set $player.sec_style.sex.sex_man = "obedient">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
Crawling across the floor as instructed, you unzip <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> pants to reveal a nicely sized cock, <<if $scene.anal>>and then<<else>>but then, instead of wrapping your lips around the engorged <<getWordPenis "npc_nintendolls">>, you<</if>> <<if (setup.checkItemTypeWorn("legwear") && setup.checkItemTypeTag('legwear', ['skirt'])) || setup.checkItemTypeWorn("dress") || setup.getItemFromType("strapless_dress") != "">>flip up your skirt<<else>>pull down your pants<</if>><<if !setup.checkItemTypeWorn("plug") || !setup.checkItemTypeTag('plug', ['hollow'])>>, remove your plug<</if>> and plunge ass-first onto <<him npc_nintendolls>>.<br>
<br>
<<if $scene.first>>
<<printThought "Is this really what my life has come to? Obediently taking it up my virgin ass just because I was told to?">><br>
<br>
<</if>>
<<if setup.getTotalValue("anal") > 10>>
Easily taking <<him npc_nintendolls>> balls-deep into your expert hole you roll your hips and moan as <<he npc_nintendolls>> takes hold of your waist and bounces you up and down.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
<<Hes npc_nintendolls>> larger than you're comfortable with but the force of your weight bearing down has <<him npc_nintendolls>> sliding into you, your soft body yielding to the presence of <<his npc_nintendolls>> hard cock.
<<else>>
<<Hes npc_nintendolls>> so big as to make you worry if <<if $npc_nintendolls.fem>>she'll<<else>>he'll<</if>> fit, but the force of your weight soon has <<him npc_nintendolls>> sliding into you as you shudder and gasp, feeling like you're being impaled on a tree trunk.
<</if>>
<</if>>
<br><br>
"@@.npc_nintendolls;How forward! Ask her for a suck and the slut goes jumps straight to taking it up the ass!@@"<br>
<br>
"@@.npc_manager;Yes, well, she is trained to please, of course, I take it her hole meets with your approval?@@"<br>
<br>
"@@.npc_nintendolls;Simply divine,@@" <<he npc_nintendolls>> states with another couple of hard thrusts "@@.npc_nintendolls;And I can tell she's loving it too, loving my big, hard cock in her whore ass, isn't that right?@@"<br>
<br>
Grabbing you by the hair <<he npc_nintendolls>> pulls your head back and you moan harder, responding that yes, you love <<his npc_nintendolls>> big cock fucking your ass, that it's the best a slut like you could hope for.<br>
<br>
Your verbal encouragement does the trick as a few more frenzied thrusts ends with a grunt before <<he npc_nintendolls>> flops out of you cum-slick hole. <<if !setup.checkItemTypeTag('plug', ['hollow'])>>Jamming your plug back where it belongs <<he npc_nintendolls>><<else>><<He npc_nintendolls>><</if>> gives you a hard slap as you stagger forward and fix your clothes.<br>
<br>
"@@.npc_nintendolls;Not bad, for a start — but the damage you caused well... I'll be taking quite a bit more out of your ass to make up for it!@@"<br>
<br>
"@@.npc_manager;Of course — and you should feel free to avail yourself of her charms whenever you visit.@@" She gestures for you to depart, "@@.npc_manager;Now, shall we move on to business?@@"<br>
<br>
"@@.npc_nintendolls;Business, yes...@@" the <<man npc_nintendolls>> replies, leering after you as you make your retreat from the room and return to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
</div>/*#
#desc: president of nintendolls tries to get a blowjob from you before his meeting with your manager
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<if $scene.accept>>
<<applyExperience 'cum' 11 'slightly' $SEEN_STRANGER>>
<<applyExperience 'whoring' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'normal' $SEEN_STRANGER>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_nintendolls'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "forced">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<if $npc_nintendolls.stage < 5>>
<<set $npc_nintendolls.stage = 5>>
<<registerProgressionEvent>>
<</if>>
<<set $npc_nintendolls.flags.oral=true>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
At <<his npc_nintendolls>> wordless command you slide to your knees, smiling seductively up as you reach for <<his npc_nintendolls>> belt and free <<his npc_nintendolls>> half-hard cock.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Several long, sensuous licks is all it takes to bring <<him npc_nintendolls>> to full hardness and you eagerly dive throat-first down <<his npc_nintendolls>> length.
<<if setup.getTotalValue("oral") > 15>>
Showing off your consummate skill you place your hands behind your back, bobbing up and down as you throat-fuck yourself until you sense <<he npc_nintendolls>> is on the verge of orgasm.
<<else>>
Sucking hard and deep you blink up at <<him npc_nintendolls>> at full depth until your vision starts to flicker, only then pulling back and resuming a more "standard" throat-fuck.
<</if>>
<br><br>
Wrapping one hand around <<his npc_nintendolls>> shaft you focus on <<his npc_nintendolls>> sensitive upper half, licking and sucking and moaning in approval until <<he npc_nintendolls>> starts to pulse. With exquisite timing you pull back to your lips and open wide to give <<him npc_nintendolls>> a view of <<his npc_nintendolls>> cum splashing against the back of your throat.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<His npc_nintendolls>> <<getWordPenis "npc_nintendolls">> may be massive and intimidating, but you do your best, sucking and licking <<his npc_nintendolls>> glans, stroking with both hands and running your tongue along the underside of <<his npc_nintendolls>> shaft as you deploy every trick you know to bring <<him npc_nintendolls>> closer to climax.
<<else>>
Doing much more than sucking on <<his npc_nintendolls>> fat tip is far beyond your abilities, but you do your best, stroking with both hands as you suck and lick and slurp.
<</if>>
<br><br>
Fortunately <<he npc_nintendolls>> seems to prove the truism that "the bigger they are, the faster they cum" ... or something to that effect. It isn't long until <<his npc_nintendolls>> balls tighten and <<he npc_nintendolls>> grunts as you quickly shove <<him npc_nintendolls>> past your lips as <<he npc_nintendolls>> paints the inside of your mouth with thick wads of cum.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") >= 10>>
Strong and smoky like an aged scotch you let <<his npc_nintendolls>> seed percolate in your mouth for a few moments, showing off how much <<his npc_nintendolls>> virile balls have produced before showily gulping it down.
<<else>>
Strong and bitter <<his npc_nintendolls>> thick cum takes a bit of effort to choke down, but you manage it without spilling, making a show of smiling back up at <<him npc_nintendolls>>.
<</if>>
<br><br>
"@@.npc_nintendolls;Not bad. Until next time, slut.@@" <<He npc_nintendolls>> states, zipping up and turning away, the inner office door slamming behind as <<he npc_nintendolls>> proceeds to <<his npc_nintendolls>> scheduled meeting.<br>
<br>
Rising to your feet, you return to your workstation.<br>
<br>
<<printThought "How many more times until <<he npc_nintendolls>> considers my mistake paid for?... probably a lot">><br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<else>>
When you don't immediately drop to your knees <<his npc_nintendolls>> gaze narrows. Lunging towards you <<his npc_nintendolls>> large, open hand swings towards your face.
<<if setup.getTotalValue("martial_arts") > 10>>
On reflex you reverse <<his npc_nintendolls>> attack, twisting <<his npc_nintendolls>> arm up behind <<his npc_nintendolls>> back with both hands before pushing <<him npc_nintendolls>> away. As you release, you look across to meet <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze as she stands in the doorway to her inner office, taking in the scene. Lips thin she slowly shakes her head before smiling and walking towards <<=setup.getNpcName('npc_nintendolls', 'formal')>>.<br>
<br>
"@@.npc_manager;Do not worry, I will attend to her... punishment later, ignore the stupid <<if $fetish.sissy>>SISSI<<else>>girl<</if>> for now, we have much business to attend to.@@"<br>
<br>
Looking at you with a mix of confusion and anger <<he npc_nintendolls>> walks away, massaging <<his npc_nintendolls>> shoulder as <<he npc_nintendolls>> follows <<=setup.getNpcName('npc_manager', 'formal')>> into her inner office.<br>
<br>
Some time later you get a message from <<=setup.getNpcName('npc_manager', 'formal')>> ordering you into her office.<br>
<br>
Nervously gulping, and reflecting on your earlier action you find yourself walking to the inner door, stepping inside before you can consider doing anything else.<br>
<br>
Sitting and staring silently <<=setup.getNpcName('npc_nintendolls', 'formal')>> waits as <<=setup.getNpcName('npc_manager', 'formal')>> addresses you.<br>
<br>
"@@.npc_manager;So, we have been discussing what occurred earlier and, well, I do believe that an apology is in order.@@"<br>
<br>
You start to open your mouth only for <<=setup.getNpcName('npc_nintendolls', 'formal')>> to speak first.<br>
<br>
"@@.npc_nintendolls;I am sorry for attempting to strike you. While you are yet indebted to me for your mistakes it was quite improper of me to consider striking another's property. I ask that you forgive my error and forget that it happened.@@"<br>
<br>
You are quite dumbstruck, mouth agape as you try to think of how to respond.<br>
<br>
"@@.npc_manager;That will be all, <<=$player.first_name>>. You may return to work and, perhaps, show more considerate hospitality to my guests in the future.@@"<br>
<br>
As if in a daze, you merely nod and turn. The inner door closing behind you still cannot quite figure out what happened, you had expected a nigh biblical punishment and are almost... disappointed? You shake your head, it is all far too confusing and you resolve to focus on your work and put it out of mind.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<else>>
Bracing for the strike, you close your eyes only for the blow to fail to land. A heartbeat passes, so loud as to drown out everything else, then another before you finally open your eyes to behold quite a sight.<br>
<br>
Barely half the size of <<=setup.getNpcName('npc_nintendolls', 'formal')>> <<=setup.getNpcName('npc_manager', 'formal')>> nonetheless restrains <<him npc_nintendolls>> by the wrist with a single hand, <<his npc_nintendolls>> blow halted in mid-swing.<br>
<br>
Her voice is cold, icy enough to fill the room with chill. "@@.npc_manager;I gave you permission to use my secretary so as to afford her the opportunity to make up for her prior transgressions, that does not include striking her.@@" She releases her grasp on the <<mans npc_nintendolls>> wrist. <<He npc_nintendolls>> winces and massages it with <<his npc_nintendolls>> other hand. "@@.npc_manager;I believe you should be going now, we will meet to discuss business at a later date.@@"<br>
<br>
You stand in confused silence as the <<man npc_nintendolls>> glances between you and <<=setup.getNpcName('npc_manager', 'formal')>> before swiftly hurrying off out of the office.<br>
<br>
Stepping closer, she reaches out to cup your chin, her touch gentle and yet somehow bearing just as much strength as when she held <<him npc_nintendolls>> immobile.<br>
<br>
"@@.npc_manager;Do not mistake things, I am quite... disappointed in your failure, but you. are. mine. and I will not abide or allow any to would harm my property.@@"<br>
<br>
You are uncertain how to feel, or respond, still trembling as surging adrenaline and your racing heart slowly calm.<br>
<br>
Withdrawing her hand <<=setup.getNpcName('npc_manager', 'formal')>> smiles slightly and then turns. "@@.npc_manager;You may return to work, now.@@" She states as she walks into the inner office, the door swinging shut without her ever looking back.<br>
<br>
<<printThought "What... how?">><br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 600 "<<completeWorkEvent>>">>]
<</if>>
<</if>>
</div>/*#
#desc: president of nintendolls fucks your ass before his meeting with your manager
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'whoring' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'anal' $npc_nintendolls.penis_size 'normal' $SEEN_STRANGER>>
<<if $npc_nintendolls.stage < 5>>
<<set $npc_nintendolls.stage = 5>>
<<registerProgressionEvent>>
<</if>>
<<set $npc_nintendolls.flags.anal=true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
Rather than drop to your knees as instructed, you bend over the desk and expose your rear, <<if !setup.checkItemTypeTag('plug', ['hollow'])>>removing your plug and <</if>>spreading your cheeks with both hands in silent invitation.<br>
<br>
"@@.npc_nintendolls;Damn, slut,@@" <<he npc_nintendolls>> growls as <<he npc_nintendolls>> squeezes your ass. "@@.npc_nintendolls;You keep treating me like this and I might have to thank you for losing all that data!@@"<br>
<br>
<<=setup.getNpcName("npc_nintendolls","formal")>> chuckles at <<his npc_nintendolls>> own joke as <<he>> interrupts you from responding by the force of <<his npc_nintendolls>> cock slamming into your ass.<br>
<br>
"@@.npc_nintendolls;Such a tight fucking hole,@@" <<he npc_nintendolls>> grunts with each thrust. "@@.npc_nintendolls;Why did we ever stop treating our secretaries like this? And what about you, you love it, don't you? You love getting bent over your desk and fucked until you can't walk straight!@@"<br>
<br>
Your body shuddering with each thrust, your reply is a mangled moan, but that appears to be plenty enough to spur <<him npc_nintendolls>> forward, <<his npc_nintendolls>> pace increasing until, with a final thrust that has <<his npc_nintendolls>> balls slamming into you, <<he npc_nintendolls>> cums, injecting <<his npc_nintendolls>> seed deep and holding you down as <<he npc_nintendolls>> finishes.<br>
<br>
You can feel <<his npc_nintendolls>> breath raising the hairs on the back of your neck as <<he npc_nintendolls>> pants and recovers, <<his npc_nintendolls>> scent a mix of scotch, leather, and aged wood. "@@.npc_nintendolls;Good girl, now get back to work before you make another mistake that puts you in debt to someone else.@@"<br>
<br>
<<He npc_nintendolls>> steps away, and you stagger back to your feet <<if !setup.checkItemTypeTag('plug', ['hollow'])>>. Shoving the plug back into your ass and squeezing<<else>>and squeeze<</if>> your thighs together as you fix your clothes. As the door to the inner office closes you somewhat gratefully take your seat in hopes that you can avoid leaking anything as you resume your duties.<br>
<br>
<<printThought "I wonder how many more times until <<he npc_nintendolls>> actually considers my mistake paid for?... probably a lot.">><br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
</div>/*#
#desc: president of nintendolls fucks your vagina before his meeting with your manager
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'whoring' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 12 'normal' $SEEN_STRANGER>>
<<if $npc_nintendolls.stage < 5>>
<<set $npc_nintendolls.stage = 5>>
<<registerProgressionEvent>>
<</if>>
<<set $scene.removeChastity = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $npc_nintendolls.flags.vag=true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
Rather than drop to your knees as instructed, you
<<if $scene.isSissyomatic>>
reveal your <<=setup.getItemName($scene.cage)>>. <<=setup.getNpcName("npc_nintendolls","formal")>> grins and produces a remote, "@@.npc_nintendolls;<<=setup.getNpcName("npc_boss","formal")>> was kind enough to grant me access to the company keychain...@@" <<he npc_nintendolls>> clicks a remote and your device retreats to reveal your dripping <<getWordVagina>>, you
<<elseif $scene.removeChastity>>
reach for the key on the corner of your desk and
<</if>>
spread your legs and smile.<br>
<br>
You look up at <<=setup.getNpcName("npc_nintendolls","formal")>> submissively as you <<if setup.checkItemTypeTag('legwear', ['pants'])>>pull down your pants<<else>>raise your skirt<</if>> to reveal your <<if $scene.removeChastity || !setup.checkItemTypeWorn("cage")>>wet and welcoming hole<<else>>chastity-imprisoned hole<</if>>.<br>
<br>
"@@.npc_nintendolls;My, my — look how far you have come!@@" <<He npc_nintendolls>> states with a slightly mocking tone as <<he npc_nintendolls>> unbuttons <<his npc_nintendolls>> coat and unzips <<his npc_nintendolls>> pants to reveal a hard <<getWordPenis "npc_nintendolls">>.<br>
<br>
<<if $fetish.cum>>
"@@.npc_nintendolls;Now remember — just like with data, spilling my cum would be quite improper!@@"<br>
<br>
<</if>>
You're still in your office chair as <<he npc_nintendolls>> merely spins you around and tilts you back before sliding between your legs, <<his npc_nintendolls>> cock thick and hard, your hole slick and welcoming as <<he npc_nintendolls>> thrusts away.<br>
<br>
The chair rocks, you moan, and <<he npc_nintendolls>> grunts as <<he npc_nintendolls>> uses your body for <<his npc_nintendolls>> pleasure — <<his npc_nintendolls>> thrusts hard and rough with seeming little concern to your feelings as <<he npc_nintendolls>> mocks your enjoyment. "@@.npc_manager;You really were wasted as an engineer — you make a far better whore, and more productive as well!@@"<br>
<br>
<<He npc_nintendolls>> cums with a laugh shooting <<his npc_nintendolls>> load deep inside you and giving a few more thrusts before <<he npc_nintendolls>> starts to soften.<br>
<br>
<<He npc_nintendolls>> steps back and you catch your breath<<if $scene.removeChastity>> and re-lock your belt<</if>>. As <<he npc_nintendolls>> heads for the inner office, still chuckling softly.<br>
<br>
<<printThought "I wonder how many more times until <<he npc_nintendolls>> actually considers my mistake paid for?... probably a lot.">><br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>><<if $scene.removeChastity>><<include 'replaceCage_extendSissyomatic'>><</if>>">>]
</div>/*#
#desc: summon to nintendolls
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You get a summons, it looks like <<=setup.getNpcName("npc_nintendolls","formal")>> or, technically "@@.npc_nintendolls;Executive Vice President <<=setup.getNpcName("npc_nintendolls","last")>>@@" now, it would seem, has need of you.<br>
<br>
[<<moveTo "event_work_nintendolls_president_stage5_2" "Go see what <<he npc_nintendolls>> wants." 300>>]
</div>/*#
#desc: arrive at nintendolls office
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_harassment', 'formal'))>> Upper Floor Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
You head upstairs a few more floors and find <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> office. Though higher up, and in a corner, you judge it to be slightly smaller than <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. <<=setup.getNpcName('npc_nintendolls', 'formal')>> is staring out the window as you arrive, turning with an almost resigned snort as <<he npc_nintendolls>> finishes a drink... not the first drink of the day, you estimate.<br>
<br>
"@@.npc_nintendolls;Ah, you've arrived! Welcome, to the last bastion of Nintendolls.@@" <<He npc_nintendolls>> laughs sharply as <<he npc_nintendolls>> gestures as cardboard cutouts and posters in one corner that look to be the pieces for a convention booth or something. "@@.npc_nintendolls;Sorry for the mess, since the merger I really haven't had much to do, coordinating this pre-reserved convention is about the only holdover...@@"<br>
<br>
Searching for something to distract from <<his npc_nintendolls>> obviously dour mood you ask where <<his npc_nintendolls>> assistant is at?<br>
<br>
<<He npc_nintendolls>> snorts again as <<he npc_nintendolls>> pours <<him npc_nintendolls>>self another drink. "@@.npc_nintendolls;Down with <<=setup.getNpcName('npc_discipline', 'formal')>> for some retraining... for however long that will take given how overbooked she is. Not that I expect it to do much, a broken toy becomes tiresome and I need a new challenge...@@" <<He npc_nintendolls>> trails off for a moment before snapping <<his npc_nintendolls>> attention in your direction, a hint of the old fire back in <<his npc_nintendolls>> eyes. "@@.npc_nintendolls;Well? What about you, why aren't you over here sucking my cock like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>. After all, just because Nintendolls technically no longer exists as an independent entity doesn't mean that debts owed to it are forgiven...@@"<br>
<br>
[<<moveTo "event_work_nintendolls_president_stage5_3" "Suck <<him npc_nintendolls>> off." 300 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_work_nintendolls_president_stage5_3" 'Actually, <<=setup.getNpcName("npc_manager","formal")>> needs you back soon...' 300 "<<set $scene.suck=false>>">>]
</div>/*#
#desc: finish blowjob
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_harassment', 'formal'))>> Upper Floor Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
Like the well-trained <<if $fetish.sissy>>sissy<<else>>support staff<</if>> you are, you drop to your knees, unzipping <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> pants and getting to work as <<he npc_nintendolls>> sips <<his npc_nintendolls>> drink and stares at the booth supplies.<br>
<br>
While you show your professional skill and acumen, <<=setup.getNpcName('npc_nintendolls', 'formal')>> seems to struggle to stay interested, cumming with little in the way of delay, or fanfare, merely a jerk<<if $fetish.cum>> a spurt<</if>> and a grunt.<br>
<br>
<<=setup.getNpcName('npc_nintendolls', 'formal')>> sighs, "@@.npc_nintendolls;that will do... now be off back to your desk, after all, I wouldn't want to disrupt your doing your duty to advance our great and glorious Social Interaction Service Syndicate Inc.@@"
<<else>>
You politely refuse <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> request and, somewhat surprisingly, <<he npc_nintendolls>> doesn't even bother to put up an argument. "@@.npc_nintendolls;Ah, well I suppose you had best hop to it, then, whatever it takes to advance the great and glorious Social Interaction Service Syndicate Inc.'s interests...@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_nintendolls', 'formal')>> goes back to staring out <<his npc_nintendolls>> window, barely even paying attention as you prepare to leave.<br>
<br>
<<if State.hasPlayed("event_prostitution_final_work_doctor_2")>>
[<<moveTo "event_work_nintendolls_president_stage5_4" 'Ask about <<his npc_nintendolls>> bet with <<=setup.getNpcName("npc_boss", "formal")>>.' 300>>]<br>
<</if>>
[<<moveTo $scene.workEventReturn "Return to your desk." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ask nintendolls about bet
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<=ps(setup.getNpcName('npc_harassment', 'formal'))>> Upper Floor Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
Still on your knees, you ask <<=setup.getNpcName('npc_nintendolls', 'formal')>> about <<his npc_boss>> bet with <<=setup.getNpcName('npc_boss', 'formal')>>. <<=setup.getNpcName('npc_nintendolls', 'formal')>> looks at you with surprise, taking a moment to compose <<him>>self before replying "@@.npc_nintendolls;how did you? No matter... but if you know that well, obviously <<=setup.getNpcName('npc_boss', 'formal')>> won. <<He npc_boss>> seems to always win...@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager of hr retention department visits for a meeting
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.stage = Math.min($npc_manager.stage, $npc_retention.stage)>>
<<switch $scene.stage>>
<<case 0>>
<<set $npc_retention.stage = 1>>
<<registerProgressionEvent>>
<<case 1>>
<<if $npc_manager.stage > $npc_retention.stage>>
<<set $npc_retention.stage = 2>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_retention'
0
'theme_manager_retention_1'
true
>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_retention_secret' 0 'theme_manager_retention_secret_1' true 'privatethemes'>>
<<registerProgressionEvent>>
<</if>>
<<case 2>>
<<if $npc_manager.stage > $npc_retention.stage>>
<<set $npc_retention.stage = 3>>
<<registerProgressionEvent>>
<</if>>
<<case 3>>
<<if $npc_manager.stage > $npc_retention.stage>>
<<set $npc_retention.stage = 4>>
<<registerProgressionEvent>>
<<else>>
<<set $scene.stage = -1>>
<</if>>
<</switch>>
<<if $npc_manager.stage < 4 && $npc_retention.stage > 3>>
<<set $scene.stage = 2>>
<<set $npc_retention.stage = 3>>
<<registerProgressionEvent>>
<<elseif $scene.stage != -1>>
<<set $scene.stage = $npc_retention.stage>>
<</if>>
<<if $npc_retention.stage >= 5>>
<<removeRandomEvent 'work_office' 'hr_retention'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You hear a knock on the door, your <<=ps(setup.getNpcName('npc_manager', 'title'))>> schedule listing a meeting with <<=setup.getNpcName('npc_retention', 'formal')>>, HR Manager in charge of Employee Retention.<br>
<br>
<<switch $scene.stage>>
<<case -1>>
<<=setup.getNpcName('npc_retention', 'formal')>> walks past your desk without hardly paying you a glance.<br>
<br>
<<printThought "Huh, guess <<hes npc_retention>> really focused on <<his npc_retention>> meeting.">><br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<case 1>>
<<if $npc_retention.fem>>
A strong looking woman, <<=setup.getNpcName('npc_retention', 'formal')>> acknowledges you with a stern-faced nod. She wears a slightly too tight shirt, spit-shined boots and fitted trousers that has a uniform-like edge to it, complete with a somewhat ominous stun gun on her hip.
<<else>>
A muscular man, <<if !$npc_admin.fem>>though not nearly as large as <<=setup.getNpcName('npc_admin', 'first')>>, <</if>><<=setup.getNpcName('npc_retention', 'formal')>> acknowledges you with a stern-faced nod. <<He npc_retention>> wears a slightly too tight shirt, spit-shined boots and fitted trousers that has a uniform-like edge to it, complete with a somewhat ominous stun gun on <<his npc_retention>> hip.
<</if>>
Escorting <<him npc_retention>> to the inner office, <<=setup.getNpcName('npc_manager', 'formal')>> calls out "@@.npc_manager;One minute.@@"<br>
<br>
Falling naturally into a parade rest position, <<he npc_retention>> glances down at you.<br>
<br>
"@@.npc_retention;Work going well? Remember my team is always available to help keep you here if you are considering moving on from the company.@@"<br>
<br>
<<printThought "That's a... weird way to phrase that...">><br>
<br>
You do not get a chance to reply before <<=setup.getNpcName('npc_manager', 'formal')>> appears, opening the door in greeting. "@@.npc_manager;Ah, welcome, just had to wrap up a phone call, come in!@@"<br>
<br>
The two of them advance into the inner office and close the door as you return to your desk.<br>
<br>
Some time later <<=setup.getNpcName('npc_retention', 'formal')>> re-emerges. As <<he npc_retention>> passes your desk, <<he npc_retention>> gives you a look as if to say "I'm keeping an eye on you..." you shiver slightly and re-focus on your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<<case 2>>
Arriving for <<his npc_retention>> meeting, <<=setup.getNpcName('npc_retention', 'formal')>> strides into the office with <<his npc_retention>> usual military precision. At <<his npc_retention>> heel is <<man npc_retention_assistant>> who, despite a similarity in look and uniform, strikes an overall completely different demeanour.<br>
<br>
Though both <<if $npc_retention.fem == $npc_retention_assistant.fem>><<men npc_retention>> <</if>>look in perfect shape, physique accentuated by fitted attire, <<=ps(setup.getNpcName('npc_retention', 'formal'))>> younger assistant comes off as completely deferential to <<=ps(setup.getNpcName('npc_retention', 'formal'))>> own rigid authority.
<<if $player.sec_style.submission.chastity != "">>
For some reason you find yourself checking <<him npc_retention_assistant>> out, feeling an odd kinship, especially when you notice a slightly familiar bulge in <<his npc_retention_assistant>> pants.<br>
<br>
<<printThought "Wait... is that a chastity cage?">>
<<else>>
For some reason you find yourself checking <<him npc_retention_assistant>> out, trying not to gawk at the noticeable, though somehow strangely shaped, bulge in <<his npc_retention_assistant>> pants.<br>
<br>
<<printThought "What is that? Is <<he npc_retention_assistant>> wearing an athletic protector or something?">>
<</if>>
<br><br>
Moving at a brisk pace, the two <<if $npc_retention.fem == $npc_retention_assistant.fem>><<men npc_retention>> <</if>>swiftly disappear into the inner office for whatever meeting <<=setup.getNpcName('npc_manager', 'formal')>> had scheduled.<br>
<br>
Thirty minutes later and they re-emerge, heading directly past your desk and out the door without comment save to give you a lovely view of their tight rears, though there is something odd in betwixt the assistant's cheeks...<br>
<br>
<<if setup.checkItemTypeWorn("plug")>>
<<printThought "<<His npc_retention>> assistant is totally wearing a buttplug, just like me!">>
<<elseif setup.checkItemOwned("analplug_beginner") || setup.checkItemOwned("analplug_medium_ems") || setup.checkItemOwned("remote_control_plug") || setup.checkItemOwned("dice_anal_plug")>>
<<printThought "Was that... was that a butt plug in <<his npc_retention>> assistant's rear?">>
<<else>>
<<printThought "Huh, there's an odd bump in between <<his npc_retention>> assistant's buttcheeks...">>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Continue working." 1800 "<<completeWorkEvent>>">>]
<<case 3>>
Carrying a briefcase, <<=setup.getNpcName('npc_retention', 'formal')>> nods to you in acknowledgement before heading into the inner office.<br>
<br>
Plugging away at your desk, about ten minutes pass when <<=setup.getNpcName('npc_retention', 'formal')>> and <<=setup.getNpcName('npc_manager', 'formal')>> emerge from her office.<br>
<br>
Walking directly towards your desk, <<=setup.getNpcName('npc_manager', 'formal')>> motions for your attention before nodding towards her guest.<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_retention', 'formal')>> has some new items <<he npc_retention>> wanted to demonstrate and I thought you could help us see them "in action," as it were.@@"<br>
<br>
You start to rise only for a strong, firm hand on your shoulder to guide you back down onto your chair. "@@.npc_retention;Nope, stay seated.@@"<br>
<br>
Sitting down, something is brought in front of your face. You recognise a ball gag in the brief moment before it disappears out of view and is pressed past your lips, buckled tight over and around your head as well as under your chin. A bit startled, you try to lean forward and look around, only to discover that you are somehow attached to your chair! Next, your right hand is cuffed and attached to your armrest, the feat repeated on the other side before you are spun around, exposing your ankles to be cuffed together with a short chain. Straps around your chest and over each thigh finish things off to keep you from shifting in your seat.<br>
<br>
From start to finish the process took but a few minutes and though you are still quite comfortable, you find yourself quite securely silenced and restrained, able to easily reach your keyboard and turn in your chair, but little else.<br>
<br>
"@@.npc_retention;As you can see, she remains able to type and even move around a bit in her chair to greet guests or the like, but securely prevented from wandering off or wasting her day away chatting on the phone.@@"<br>
<br>
"@@.npc_manager;Very neat, quite perfect for our more technical staff, but a bit inconvenient for a secretary who needs to coordinate meetings and such.@@"<br>
<br>
"@@.npc_retention;Ah, well, you see, that is all handled. The locks are all remote controlled and with the security of the head harness you can...@@" <<he npc_retention>> taps a button and you feel the gag loosen, able to spit the ball out to dangle from the side of your face. "@@.npc_retention;By default it synchronised with her phone, but her controller can work a manual release as well. Her arm restraints have just enough slack to put it back into position and it will re-lock once the strap is pulled across her face.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods "@@.npc_manager;Go ahead, dear.@@"<br>
<br>
It's right on the edge of your cuffed reach, but you manage to bring the gag back up and wrap your lips around it before pressing the strap to a snap on the side of the harness. After it clicks closed the strap pulls tight into your mouth, leaving you once again silenced.<br>
<br>
"@@.npc_manager;Very nice, I am sure that will be quite useful once it is rolled out to keep certain... problem employees in line.@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> nods and leans over to start removing your restraints.<br>
<br>
<<if setup.getTotalValue("submission") > 10 && setup.getTotalValue("bondage") > 10>>
<<printThought "Mmmm, but this is so much more comfortable than working unrestrained...">><br>
<br>
<</if>>
[<<moveTo "event_work_hr_retention_restaints" "Sit quietly as you are freed." 120 "<<set $scene.restrained=false>>">>]
<<case 4 5>>
<<if $fetish.pet_play && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
<<=setup.getNpcName('npc_retention', 'formal')>> walks into the office holding a leash with <<his npc_retention>> "assistant" crawling behind.<br>
<br>
<<His npc_retention_assistant>> hands in paw-like mitts, head encased in a puppy mask and with a tail plug perking up from <<his npc_retention_assistant>> rear from the look
<<if $fetish.bestiality_soft>>
of the hard cock dangling between <<his npc_retention_assistant>> legs
<<else>>
of the hard cock inside a clear canine sheath hanging between <<his npc_retention_assistant>> legs
<</if>>
<<he npc_retention_assistant>> is quite happy.<br>
<br>
Leaning over to unclip the leash from <<his npc_retention>> assistant's collar <<=setup.getNpcName('npc_retention', 'formal')>> nods towards <<his npc_retention>> pet. "@@.npc_retention;I've got a meeting now, so you be a good <<boy npc_retention_assistant>> and stay here with the nice <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"<br>
<br>
Looking up at you <<he npc_retention_assistant>> smiles. "@@.npc_retention;<<He npc_retention_assistant>> should be fine while I'm in there, but feel free to play with <<him npc_retention_assistant>> if you want.@@" <<if $player.work.chair.bondage>>Your chair bondage releases, "@@.npc_retention;Would be cruel to leave you with a cute pup and be unable to pet <<him npc_retention_assistant>>!@@" <<He npc_retention>> adds with a wink.<</if>><br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> heads into the inner office, leaving you staring down at the adorable pup, <<his npc_retention_assistant>> eyes peeking out from <<his npc_retention_assistant>> mask to smile up at you.<br>
<br>
[<<moveTo "event_work_hr_retention_pup_1" 'Have some fun with the cute human pup.' 120 "<<set $scene.pup=true>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_1" "Focus on your work." 120 "<<set $scene.pup=false>>">>]
<<else>>
<<=setup.getNpcName('npc_retention', 'formal')>> arrives for another meeting with your manager, disappearing into her office for half an hour before leaving once again.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 1800 "<<completeWorkEvent>>">>]
<</if>>
<<default>>
ERROR: unknown stage! <<=$scene.stage>><br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
<</switch>>
</div>/*#
#desc: option of removing work restraints
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<registerProgressionEvent>>
<<if $scene.restrained>>
<<applyExperience 'bondage' 9 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bondage' 8 'almost' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.restrained>>
<<=setup.getNpcName('npc_retention', 'formal')>> reaches for your harness gag, but you quickly shake your head, shooting a pleading glance towards your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;Hmm, looks like she really likes this new arrangement, go ahead and leave them in place.@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> nods, packing up the rest of <<his npc_retention>> things and departing.<br>
<br>
Once the two of you are alone <<=setup.getNpcName('npc_manager', 'formal')>> walks over and brushes your cheek. "@@.npc_manager;You really are such a wonderful <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
<<if $npc_manager.affection > 4>>
Leaning in she kisses you on the forehead, her warm lips making you tingle and swoon.<br>
<br>
<</if>>
"@@.npc_manager;Enjoy the rest of your day!@@"
<<else>>
<<if $npc_manager.anger > 4>>
<<=setup.getNpcName('npc_retention', 'formal')>> reaches for your harness gag, but is brought up short by your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;No, I think she would benefit from remaining more... focused for the remainder of the day.@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> nods, packing up the rest of <<his npc_retention>> things and departing.
<<else>>
<<=setup.getNpcName('npc_retention', 'formal')>> removes your harness and restraints and starts to put them back into <<his npc_retention>> briefcase before <<=setup.getNpcName('npc_manager', 'formal')>> stops <<him npc_retention>>. "@@.npc_manager;Go ahead and leave those. <<=$player.first_name>> has been good recently but... just in case.@@"<br>
<br>
The <<man npc_retention>> grins down at you and nods, leaving the wrist cuffs hanging from your chair and placing the rest in one of your desk drawers.<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> departs and <<=setup.getNpcName('npc_manager', 'formal')>> returns to her inner office leaving you to resume your work.
<</if>>
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Continue working." 1200 "<<completeWorkEvent>>">>]
</div>/*#
#desc: play with human pup while npc_retention has a meeting
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_retention_assistant.profile = true>>
<<applyExperience 'bondage' 5 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageGeneric("npc_retention_assistant","npc_retention_assistant_pup")>>
<div id="invframe" class="scrolltext">
<<if $scene.pup>>
Leaning over you scratch the cute human pup behind <<his npc_retention_assistant>> collar asking "@@.pc;Who's a good <<boy npc_retention_assistant>>?@@"<br>
<br>
Nuzzling into you <<he npc_retention_assistant>> soon rolls over, spreading <<his npc_retention_assistant>> legs to present <<his npc_retention_assistant>>
<<if $fetish.bestiality_soft>>
hard, glistening cock.
<<else>>
hard sheathed dog cock.
<</if>>
<br><br>
Rubbing <<his npc_retention_assistant>> belly you work your way down until <<hes npc_retention_assistant>> panting through <<his npc_retention_assistant>> gag, humping the air as <<he npc_retention_assistant>> wordlessly begs for you to do something more.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
[<<moveTo "event_work_hr_retention_pup_2" 'Remove your plug and bend over for <<him npc_retention_assistant>>.' 600 "<<set $scene.pup_sex='anal'>>">>]<br>
<<else>>
[<<moveTo "event_work_hr_retention_pup_2" 'Get down on the floor and bend over for <<him npc_retention_assistant>>.' 600 "<<set $scene.pup_sex='anal'>>">>]<br>
<</if>>
[<<moveTo "event_work_hr_retention_pup_2" "Reach down and jerk <<him npc_retention_assistant>> off." 600 "<<set $scene.pup_sex='hand'>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_2" "Lean over and suck <<him npc_retention_assistant>> off." 600 "<<set $scene.pup_sex='oral'>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_1" "Leave <<him npc_retention_assistant>> wanting and get back to work." 600 "<<set $scene.pup=false>>">>]
<<else>>
Turning back to your workstation you get back to work. After a few minutes you feel the pup staring at you. Looking over you see <<him npc_retention_assistant>> lustfully looking up before placing <<his npc_retention_assistant>> paws on your thighs and nuzzling your crotch.<br>
<br>
Looking down, you can see <<his npc_retention_assistant>>
<<if $fetish.bestiality_soft>>
hard, glistening cock
<<else>>
hard sheathed dog cock
<</if>>
bobbing excitedly.<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
[<<moveTo "event_work_hr_retention_pup_2" 'Remove your plug and bend over for <<him npc_retention_assistant>>.' 600 "<<set $scene.pup_sex='anal'>>">>]<br>
<<else>>
[<<moveTo "event_work_hr_retention_pup_2" 'Get down on the floor and bend over for <<him npc_retention_assistant>>.' 600 "<<set $scene.pup_sex='anal'>>">>]<br>
<</if>>
[<<moveTo "event_work_hr_retention_pup_2" "Reach down and jerk <<him npc_retention_assistant>> off." 600 "<<set $scene.pup_sex='hand'>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_2" "Lean over and suck <<him npc_retention_assistant>> off." 600 "<<set $scene.pup_sex='oral'>>">>]<br>
[<<moveTo "event_work_hr_retention_pup_2" "Shake your head and get back to work." 600 "<<set $scene.pup_sex='refuse'>>">>]
<</if>>
</div>/*#
#desc: sex with npc_retention's human pup pet
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<switch $scene.pup_sex>>
<<case 'anal'>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "voluntary">>
<</if>>
<<if !$player.sec_style.sex.sex_woman && $npc_retention_assistant.fem>>
<<set $player.sec_style.sex.sex_woman = "voluntary">>
<<elseif !$player.sec_style.sex.sex_man && !$npc_retention_assistant.fem>>
<<set $player.sec_style.sex.sex_man = "voluntary">>
<</if>>
<<applyExperience 'anal' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 9 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'almost' $SEEN_FRIEND>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_FRIEND>>
<</if>>
<<case 'oral'>>
<<applyExperience 'oral' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 8 'little' $SEEN_FRIEND>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_FRIEND>>
<</if>>
<<case 'hand'>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_FRIEND>>
<</if>>
<<case 'refuse'>>
<<if setup.getTotalValue("strength") < 10 && $fetish.get_raped>>
<<applyExperience 'anal' 10 'terrible' $SEEN_FRIEND>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 2 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<</switch>>
<<set $npc_retention.stage = 5>>
<<registerProgressionEvent>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageGeneric("npc_retention_assistant","npc_retention_assistant_pup")>>
<div id="invframe" class="scrolltext">
<<switch $scene.pup_sex>>
<<case 'anal'>>
Excitedly you crawl out of your chair and get down on all fours, wiggling your butt and removing your clothes to expose your
<<if !setup.checkItemTypeWorn("plug")>>
eager rear hole.
<<else>>
plugged bum.
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Plugged and gaping, thanks to your through-hollow anal companion, and you wiggle your gaped hole in invitation.
<<else>>
Reaching back you slide the <<=setup.getItemTypeName("plug")>> out of your ass with a gasp, clearing the path for the pup to have <<his npc_retention_assistant>> way with you.
<</if>>
<</if>>
<br><br>
The puppy <<boy npc_retention_assistant>> wastes no time in mounting you. Hopping up to place <<his npc_retention_assistant>> paw-mitt covered arms on either side of you <<his npc_retention_assistant>> thick cock slides into your waiting hole.<br>
<br>
<<if $fetish.bestiality_soft>>
Large and animalistic thanks to the added girth of <<his npc_retention_assistant>> canine sheath <<he npc_retention_assistant>> humps you hard, working <<his npc_retention_assistant>> way deeper and deeper until your arms give out and you collapse onto the ground as <<his npc_retention_assistant>> thick knot finally pops into place.<br>
<br>
Grunting and growling and humping <<he npc_retention_assistant>> rocks inside of you for several minutes as you have no choice, but to enjoy being <<his npc_retention_assistant>> bitch. You sense more than feel <<his npc_retention_assistant>> final orgasm as <<he npc_retention_assistant>> pants and collapses to lay on top of you.
<<else>>
Long and hard <<he npc_retention_assistant>> pounds <<his npc_retention_assistant>> cock into you with quick, powerful thrusts. Forced forward your arms collapse until you are sprawled out on the floor, moaning along as <<he npc_retention_assistant>> has <<his npc_retention_assistant>> way with you.<br>
<br>
<<He npc_retention_assistant>> takes <<his npc_retention_assistant>> time. <<His npc_retention_assistant>> leather mask coming close as if to lick or kiss the side of your face as <<he npc_retention_assistant>> humps away until, finally, <<he npc_retention_assistant>> cums deep in your rear. Though you feel <<him npc_retention_assistant>> soften slightly <<he npc_retention_assistant>> remains inside of you, <<his npc_retention_assistant>> weight dropping as <<he npc_retention_assistant>> rests while still holding you down and occupying your rear.
<</if>>
<br><br>
Pinned under <<his npc_retention_assistant>> weight it isn't until a pair of heavy boots appear out of the corner of your eye and pull your doggy friend off that you finally manage to push yourself back up off the ground.<br>
<br>
"@@.npc_retention;Well! It looks like someone had some fun! Though you really need to remember to let your playthings up when you're done.@@"<br>
<br>
Back to your hands and knees you look over as <<=setup.getNpcName('npc_retention', 'formal')>> clips a leash to <<his npc_retention>> pet's collar and scratches behind the pup's ears.<br>
<br>
"@@.npc_retention;<<He npc_retention_assistant>> wasn't too hard with you, was <<he npc_retention_assistant>>?@@"<br>
<br>
"@@.npc_manager;Oh she is fine. Just taking the opportunity to lounge around a bit!@@" She chides, <<if $npc_manager.affection>$npc_manager.anger>>though her smile tells you she's joking <</if>>"@@.npc_manager;Come on, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, get up! Back to work!@@"<br>
<br>
Fixing your clothes, <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>and shoving the <<=setup.getItemTypeName("plug")>> back into your still-gaping rear <</if>>you flop onto your chair and try to focus back on your work, barely noticing as <<=setup.getNpcName('npc_retention', 'formal')>> and <<his npc_retention>> pet depart and <<=setup.getNpcName('npc_manager', 'formal')>> returns to her inner sanctum.
<<case 'oral'>>
<<if $fetish.bestiality_soft>>
Sliding to the floor you gently remove <<his npc_retention_assistant>> canine-shaped penis sheath to wrap your lips around <<his npc_retention_assistant>> large, hard cock.
<<else>>
Sliding to the floor you move between <<his npc_retention_assistant>> knees and lean over to take <<his npc_retention_assistant>> hard cock between your lips.
<</if>>
<br><br>
<<if setup.getTotalValue("oral") > 10>>
Eagerly you slide your mouth over and down <<his npc_retention_assistant>> member, humming and licking in delight at <<his npc_retention_assistant>> strong flavour.
<<else>>
<<Hes npc_retention_assistant>> a bit intimidatingly large, but you do your best, licking up and down <<his npc_retention_assistant>> thick, hard shaft.
<</if>>
<<He npc_retention_assistant>> thrashes about in excitement, but you hold <<him npc_retention_assistant>> still with both hands, sucking and licking as <<he npc_retention_assistant>> pants and yips through <<his npc_retention_assistant>> gag.<br>
<br>
You take your time, sucking <<his npc_retention_assistant>> tip and running up and down <<his npc_retention_assistant>> length until you feel <<his npc_retention_assistant>> large balls tighten and <<his npc_retention_assistant>> hips buck a final time as <<he npc_retention_assistant>> sprays a fountains worth of cum up at you.<br>
<br>
As the thick semen splashes over your face you hear laughing, glancing up in surprise to see <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_retention', 'formal')>> looking on as a final spurt of cum hits you in the cheek.<br>
<br>
"@@.npc_manager;Well, well, it seems they did have a fun time whilst we were meeting. Though it seems like they made a bit of a mess.@@"<br>
<br>
<<if setup.getTotalValue("cum") < 10>>
You start to reach for a tissue to wipe off your face only for <<=setup.getNpcName('npc_manager', 'formal')>> to shake her head.<br>
<br>
"@@.npc_manager;Come now, you are not thinking of throwing away the tasty offering your new friend made? Be a good <<if $fetish.sissy>>SISSI<<else>>girl<</if>> and lick it all up.@@"<br>
<br>
Blushing you use your fingers to wipe yourself off as <<=setup.getNpcName('npc_retention', 'formal')>> calls <<his npc_retention>> pet over and clips a leash to the pup's collar. You have just finished licking up every strong, fragrant morsel of cum by the time <<=setup.getNpcName('npc_retention', 'formal')>> waves goodbye, <<his npc_retention>> pet wiggling its tail in your direction as <<he npc_retention_assistant>> crawls behind <<his npc_retention_assistant>> <<master npc_retention>>.
<<else>>
Licking all that you can reach with your tongue you use your fingers to deliver the remaining drops of the strong, fragrant cum to your mouth, savouring every drop.<br>
<br>
Crawling back to its <<master npc_retention>> the pet waits obediently until <<=setup.getNpcName('npc_retention', 'formal')>> clips a leash to its collar and leads the way out of the room.<br>
<br>
You are just finishing up the last drop of cum as the cute pup wiggles its tail in your direction and disappears out of sight into the hallway.
<</if>>
<br><br>
"@@.npc_manager;Well, I hope you enjoyed your little snack, back to work now!@@"<br>
<br>
Nodding obediently you sit back down in your chair and turn towards your computer.
<<case 'hand'>>
<<if $fetish.bestiality_soft>>
Your hand looks small as you barely wrap your fingers around <<his npc_retention_assistant>> canine-sheathed cock. Though its thick walls certainly desensitise <<him npc_retention_assistant>> you can see <<him npc_retention_assistant>> hard and eager as you begin to stroke. Panting and yapping through <<his npc_retention_assistant>> gag <<he npc_retention_assistant>> wiggles on the floor and humps your hand as you stroke and jerk <<him npc_retention_assistant>> off.<br>
<br>
It takes a few minutes, as well as some tender ball squeezes and wiggles of <<his npc_retention_assistant>> tail, but <<he npc_retention_assistant>> finally cums, exploding inside <<his npc_retention_assistant>> clear sheath, the frothy cum near filling the hollow tip.
<<else>>
A big smile on your face, you reach down to grab the cute puppy <<if $npc_retention_assistant.fem>>girl's<<else>>boy's<</if>> hard cock and start stroking. Panting and yapping through <<his npc_retention_assistant>> gag <<he npc_retention_assistant>> wiggles on the floor and humps your hand as you stroke and jerk <<him npc_retention_assistant>> off.<br>
<br>
<<His npc_retention_assistant>> large, full balls twitching it isn't long before <<he npc_retention_assistant>> cums, spurting all over <<his npc_retention_assistant>> chest with a gag-muffled, but still loud, howl.
<</if>>
<br><br>
As <<he npc_retention_assistant>> wilts in satisfaction, you hear clapping, looking up to find <<=setup.getNpcName('npc_retention', 'formal')>> and <<=setup.getNpcName('npc_manager', 'formal')>> in the doorway. Both smiling they politely applaud as they watch the pair of you and the pup.<br>
<br>
"@@.npc_manager;Very sweet, but I think it would be only polite if you cleaned up your cute friend before we send <<him npc_retention_assistant>> on <<his npc_retention_assistant>> way.@@"<br>
<br>
<<if $fetish.bestiality_soft>>
Thanks to <<his npc_retention_assistant>> canine sheath the pup hasn't actually spilled anything, though the cum filling the hollow tip looks frothy and distracting.<br>
<br>
Carefully detaching the sheath you tilt it back, letting the potent mix of dick-sweat and cum drip into your mouth before leaning over to clean up the remainder.
<<else>>
Bending down your tongue traces the thin trails of cum splattered between <<his npc_retention_assistant>> hard abs and <<if $npc_retention_assistant.fem>>breasts<<else>>firm chest<</if>>. Finishing off, you lick the final drops from <<his npc_retention_assistant>> leather puppy mask as <<he npc_retention_assistant>> bobs <<his npc_retention_assistant>> head to mimic licking you in gratitude.
<</if>>
<br><br>
<<if setup.getTotalValue("cum") >= 10>>
<<His npc_retention_assistant>> cum is strong, fragrant and oh-so-tasty and you eagerly slurp up every drop.
<<else>>
<<His npc_retention_assistant>> cum is strong and fragrant and you have to force yourself to swallow it, but you know better than to do otherwise with both your <<=setup.getNpcName('npc_manager', 'title')>> and the pup's owner looking on.
<</if>>
<br><br>
Clipping a leash back to <<his npc_retention>> pup's collar <<=setup.getNpcName('npc_retention', 'formal')>> thanks you for keeping <<his npc_retention>> pet entertained before departing. Your <<=setup.getNpcName('npc_manager', 'title')>> flashes you a prideful smile before returning to her inner office and leaving you to resume your work.
<<case 'refuse'>>
You try to turn back to your work but
<<if setup.getTotalValue("strength") > 10 || !$fetish.get_raped>>
<<he npc_retention_assistant>> is quite insistent, even attempting to pull you out of your chair. Using a firm hand you push <<him npc_retention_assistant>> away, giving <<him npc_retention_assistant>> a gentle, but firm, rap on the snout of <<his npc_retention_assistant>> mask as you shake your head.<br>
<br>
"@@.pc;No!@@" you state firmly before explaining that you have work to do and <<he npc_retention_assistant>> had best curl up and leave you alone lest you summon <<his npc_retention_assistant>> <<master npc_retention>>.<br>
<br>
Obviously disappointed <<he npc_retention_assistant>> crawls away, turning in a circle before curling up on the floor for a nap.<br>
<br>
Some time later <<=setup.getNpcName('npc_retention', 'formal')>> re-emerges. Though looking a bit surprised <<he npc_retention>> nonetheless summons <<his npc_retention>> pet and, leash attached once more, departs with a wave.
<<else>>
<<he npc_retention_assistant>> drags you to the floor. Despite <<his npc_retention_assistant>> paw-mitts limiting the use of <<he npc_retention_assistant>> hands <<he npc_retention_assistant>> is MUCH stronger than you, pulling you off the chair and flipping you over to mount you.<br>
<br>
Holding you down with one paw <<he npc_retention_assistant>> works at your clothes, exposing your ass and then jumping on top of you to hump you with <<his npc_retention_assistant>> hard cock.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
<<His npc_retention_assistant>> thick <<if $fetish.bestiality_soft>>dog-cock<<else>>cock<</if>> slides into your ass, violating you deeper with each hard thrust. Pinned to the ground by <<his npc_retention_assistant>> forepaws you cry out, but have no choice, but to submit to being <<his npc_retention_assistant>> bitch.
<<else>>
Stymied by your plug <<he npc_retention_assistant>> holds you down with <<his npc_retention_assistant>> fore-paws while <<he npc_retention_assistant>> slides <<his npc_retention_assistant>> cock up and down between your cheeks. Moaning and growling through <<his npc_retention_assistant>> mask <<he npc_retention_assistant>> takes <<his npc_retention_assistant>> time, really driving home how helpless you are beneath <<him npc_retention_assistant>> as <<he npc_retention_assistant>> makes you <<his npc_retention_assistant>> bitch without ever technically penetrating you.
<</if>>
<br><br>
Too overwhelmed you don't notice the door open until you hear voices.<br>
<br>
"@@.npc_manager;What is your pet doing to my secretary?!@@"<br>
<br>
"@@.npc_retention;Stop that! <<Boy npc_retention_assistant>>! Get over here!@@"<br>
<br>
<<if $fetish.bestiality_soft>>
<<He npc_retention_assistant>> gives a final, powerful thrust and howls.<br>
<br>
As <<he npc_retention_assistant>> slides off and crawls away, you look up to see <<his npc_retention_assistant>> sheath filled with <<his npc_retention_assistant>> happiness.
<<else>>
With a final thrust <<he npc_retention_assistant>> cums <<if !setup.checkItemTypeWorn("plug") || setup.checkItemTypeTag('plug', ['hollow'])>>flooding your ass with <<his npc_retention_assistant>> seed<<else>>spraying <<his npc_retention_assistant>> excitement all over your back.<</if>>
<</if>>
<br><br>
Chagrined <<he npc_retention_assistant>> crawls back to <<his npc_retention_assistant>> <<master npc_retention>> as <<=setup.getNpcName('npc_manager', 'formal')>> walks over to look down at you.<br>
<br>
"@@.npc_retention;I am quite sorry about this, <<he npc_retention_assistant>> is usually quite well behaved but...@@"<br>
<br>
"@@.npc_manager;I understand, this one can be quite... irresistible. Go ahead and be off and attend to your pet.@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> hurry out of the office as your <<=setup.getNpcName('npc_manager', 'title')>> crouches down and fixes your clothes.<br>
<br>
"@@.npc_manager;I suppose I ought to have anticipated something like this... still, what is done is done, no more laying down on the job, you still have work to do!@@"<br>
<br>
Groaning you push yourself up onto your hands, crawling up onto your seat. <<=setup.getNpcName('npc_manager', 'formal')>> as you try to catch your breath, walking back into her office as you attempt to focus back on your work.
<</if>>
<</switch>>
<br><br>
[<<moveTo $scene.workEventReturn "Resume working." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: npc_retention drops in for a meeting
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageGeneric("npc_retention")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_retention","formal")>> arrives for yet another meeting, disappearing into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office with little more than a perfunctory nod in your direction.<br>
<br>
<<set _endOfDay = setup.setNextDate($now, 0, 18, 0)>>
<<if setup.hasFreeTime(_endOfDay, $player, $currentTasks, 3600)>>
[<<moveTo $scene.workEventReturn "Resume working." 600 "<<completeWorkEvent>><<set _nextDate=setup.setNextDate($now, 7, 0, 0)>><<addWorkEvent 'volleyball_invite' _nextDate>>">>]
<<else>>
[<<moveTo "event_work_hr_retention_volleyball_intro_2" "Continue working." 1800>>]
<</if>>
</div>/*#
#desc: npc_retention mentions volleyball
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImageGeneric("npc_retention_assistant")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_retention","formal")>> emerges from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office with your <<=setup.getNpcName("npc_manager","title")>> escorting <<him npc_retention>> out past your desk.<br>
<br>
"@@.npc_retention;So,@@" <<=setup.getNpcName("npc_retention","formal")>> asks just before <<he npc_retention>> leaves.
<<if State.hasPlayed("")>>
"@@.npc_retention;You up for another game? I want to beat you at your best and the last time, well...@@"<br>
<br>
"@@.npc_manager;Such a gentle<<man npc_retention>>... I am uncertain if I can spare the time but... Miss <<=$player.first_name>>?@@"
<<else>>
"@@.npc_retention;You hear about that new "indoor beach" that opened nearby? You still owe me a rematch from last year, what with us not having time at the retreat@@" <<he npc_retention>> looks down at you with a smile, "@@.npc_retention;you have a new partner trained up, after all...@@"<br>
<br>
"@@.npc_manager;You really are determined to avenge that loss... unfortunately I am so very busy, still... Miss <<=$player.first_name>>?@@"
<</if>>
All eyes are now on you as you wait quietly for your instruction. "@@.npc_manager;Would you check my schedule to see if we might slip out this evening for a round of beach volleyball?@@"<br>
<br>
There is a glint in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> eyes and you realise that she is leaving the decision to you as to whether the two of you play a game against <<=setup.getNpcName("npc_retention","formal")>> after work.<br>
<br>
[<<moveTo "event_work_hr_retention_volleyball_intro_3" "Looks like there's space in her schedule..." 120 "<<set $scene.play=true>>">>]<br>
[<<moveTo "event_work_hr_retention_volleyball_intro_3" "It would seem she is booked up." 120 "<<set $scene.play=false>>">>]
</div>/*#
#desc: npc_retention schedule volleyball
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.play>>
<<addEvent 'volleyball_game'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImageGeneric("npc_retention_assistant")>>
<div id="invframe" class="scrolltext">
You report back that
<<if $scene.play>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> schedule is open this evening and she smiles back at <<=setup.getNpcName('npc_retention', 'formal')>>. "@@.npc_manager;Well there you go. I shall see you after work on the sand...@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> is already booked this evening.<br>
<br>
"@@.npc_retention;Burning the midnight oil, yet again?@@" <<=setup.getNpcName('npc_retention', 'formal')>> asks with a wry smile. "@@.npc_retention;Very well, perhaps some other day. I will get you get back to work.@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_retention', 'formal')>> leaves and <<=setup.getNpcName('npc_manager', 'formal')>> returns to her inner office.<<if $scene.play>> Looks like you'll be getting a workout after work...<</if>><br>
<br>
[<<moveTo $scene.workEventReturn "Resume working." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager takes you to volleyball
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "endPartialShift">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Work comes to an end and <<=setup.getNpcName('npc_manager', 'formal')>> emerges to drop a bag on your desk. "@@.npc_manager;Come along, my dear. We have a game to get to. <<if State.hasPlayed("event_work_hr_retention_volleyball_2")>>As before, <</if>>I have taken the liberty of packing some outfits for you. You can change when we get there, chop, chop.@@"<br>
<br>
[<<moveTo "event_work_hr_retention_volleyball_2" "Carry her bag and follow." 300>>]
</div>/*#
#desc: change for volleyball
#status: RELEASED 0.8.9.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.allowSpecific='bodysuit'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<if setup.checkItemTag("swimwear") > 10>>
<<moveTo "event_work_hr_retention_volleyball_3">>
<</if>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
It is but a block's walk away where you find the "artificial beach," its grand opening advertisement accompanied with a promise of "fun in sand and sun, right in the city!" <br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> glides past the front desk and into the locker-room where she changes while you strip and then she sets out a familiar trio of swimsuits.<br>
<br>
"@@.npc_manager;Hurry up and change, my dear. One of these should suffice, unless you brought something beach-suitable with you.@@"<br>
<br>
[<<moveTo "event_work_hr_retention_volleyball_3" 'Choose the skimpy stringkini.' 300 "<<set $scene.swimsuit='stringkini'>>">>]<br>
[<<moveTo "event_work_hr_retention_volleyball_3" 'Choose the sexy one-piece.' 300 "<<set $scene.swimsuit='one_piece'>>">>]<br>
[<<moveTo "event_work_hr_retention_volleyball_3" 'Choose the slutty slingshot.' 300 "<<set $scene.swimsuit='slingshot'>>">>]<br>
<<hint $options "If you have a suitable swimsuit, you can change into it manually.">>
</div>/*#
#desc: start volleyball
#status: RELEASED 0.8.9.0
#*/
<<set $player.cutscene.allowSpecific=''>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.swimsuit>>
<<case 'stringkini' 'one_piece' 'slingshot'>>
<<addItem $scene.swimsuit>>
<<wearItem $scene.swimsuit true>>
<</switch>>
<</if>>
<<set $player.location to "Simulated Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" setup.charImage("npc_manager","npc_manager_robe") setup.charImageGeneric("npc_retention") setup.charImageGeneric("npc_retention_assistant")>>
<div id="invframe" class="scrolltext">
<<switch $scene.swimsuit>>
<<case 'stringkini'>>
You opt for the stringkini. <<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement, and helps with lubing up the plug before sliding it into your rear<<if setup.checkItemTag($scene.plug, ['hollow'])>>, doubling up with your hollow plug<<else>> in lieu of your previous plug<</if>>. They step back to look at you with a smile. "@@.npc_manager;Nice and secure! It is good that you are so willing to show yourself off in public, you really are built for it. Now come, we have a match to get to@@"
<<case 'one_piece'>>
You opt for the red one-piece. <<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement and helps with lubing up the plug before sliding it into your rear<<if setup.checkItemTag($scene.plug, ['hollow'])>>, doubling up with your hollow plug<<else>> in lieu of your previous plug<</if>>. They step back to look at you with a smile. "@@.npc_manager;Such a classy look. Though I doubt we will have need of your lifeguarding skills today. Now come, we have a match to get to.@@"
<<case 'slingshot'>>
You opt for the slutty slingshot bikini. <<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement and helps ith including lubing up the plug before sliding it into your rear<<if setup.checkItemTag($scene.plug, ['hollow'])>>, doubling up with your hollow plug<<else>> in lieu of your previous plug<</if>>. The way it is pulled forward by the Y strap running up your front is definitely interesting.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> steps back to look at you with a smile. "@@.npc_manager;Quite the look! From behind you look nearly naked... now come, we have a match to get to.@@"
<<default>>
You show off your swimsuit and <<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Look at you, all prepared for any situation. Very good. Let us hope you are just as ready to play, we have a match to get to.@@"
<</switch>>
<br><br>
[<<moveTo "event_work_hr_retention_volleyball_4" 'Follow <<=setup.getNpcName("npc_manager", "formal")>> out of the locker-room.' 180>>]
</div>/*#
#desc: start volleyball
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Simulated Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" setup.charImage("npc_manager","npc_manager_robe") setup.charImageGeneric("npc_retention") setup.charImageGeneric("npc_retention_assistant")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_manager', 'formal')>> out of the locker-room and onto the sand. Under an artificial sun and a bluer sky than you've ever seen in the city you make your way along the shore, more than a few eyes drifting your direction before you arrive at the volleyball courts where <<=setup.getNpcName('npc_retention', 'formal')>> and <<his npc_retention>> assistant are waiting. Strangely, <<=setup.getNpcName('npc_retention', 'formal')>> stands out not dressed for the beach, but in <<his npc_retention>> usual attire, but <<he npc_retention>> spins a volleyball and lobs it towards <<=setup.getNpcName('npc_manager', 'formal')>> who casually catches it one-handed.<br>
<br>
"@@.npc_retention;You can serve first, I'm ready for you this time.@@" <<=setup.getNpcName('npc_retention', 'formal')>> states as <<he npc_retention>> moves to the far side of the net with <<his npc_retention>> partner, ready to play.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and moves to the back of the court. "@@.npc_manager;I will cover the net.@@"<br>
<br>
You take a deep breath, it's been a long time since you did something like this, and you still aren't even sure what the stakes are... though, knowing this company, it could be just about anything...<br>
<br>
[<<moveTo "event_work_hr_retention_volleyball_5" 'Play hard.' 1800 "<<set $scene.play=true>>">>]<br>
[<<moveTo "event_work_hr_retention_volleyball_5" 'Slack off.' 1800 "<<set $scene.play=false>>">>]
</div>/*#
#desc: play volleyball
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.play>>
<<applyFatigue 100>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<applyFatigue 50>>
<</if>>
<</if>>
<<set $player.location to "Simulated Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" setup.charImage("npc_manager","npc_manager_robe") setup.charImageGeneric("npc_retention") setup.charImageGeneric("npc_retention_assistant")>>
<div id="invframe" class="scrolltext">
<<if $scene.play && setup.getTotalValue("stamina") > 15 && setup.getTotalValue("dexterity") > 15>>
After a killer serve <<=setup.getNpcName('npc_manager', 'formal')>> moves past you to protect the net, effectively facing off with <<=setup.getNpcName('npc_retention', 'formal')>> while you and your fellow assistant play setup.<br>
<br>
The match is close and tightly contested as you run back and forth across the sand, using every ounce of your agility to make clutch saves and keep the play alive while <<=setup.getNpcName('npc_manager', 'formal')>> drills hard spikes and scorching serves.<br>
<br>
In the end, it comes down to you, as you go diving out of the back of the field to keep the game-point ball alive. With a mouthful of sand you turn over and look back just in time to watch <<=setup.getNpcName('npc_manager', 'formal')>> bury it for the win.<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> dusts <<him npc_retention>>self off as <<=setup.getNpcName('npc_manager', 'formal')>> helps you back to your feet before posing in triumph.<br>
<br>
"@@.npc_manager;Perhaps next year,@@" <<=setup.getNpcName('npc_manager', 'formal')>> tosses off with a smile as she waves good-bye and leads you back towards the locker-rooms.<br>
<br>
[<<moveTo "event_work_hr_retention_volleyball_6_win" 'Victory celebration?' 600>>]
<<else>>
<<if !$scene.play>>
You don't even try to compete, letting several saveable balls fly past you even as your opponents appear to be giving it their all.<br>
<br>
Despite your lack of effort, <<=setup.getNpcName('npc_manager', 'formal')>> is a force of nature, all but flying around the court and sailing high to drill punishingly hard spikes... but for as heroic as her efforts may be it isn't enough to overcome the functional numeric disadvantage, and match point eventually goes to <<=setup.getNpcName('npc_retention', 'formal')>>.<br>
<br>
"@@.npc_retention;Your previous partner put in a better performance...@@" <<=setup.getNpcName('npc_retention', 'formal')>> notes with a wry smile. "@@.npc_retention;Really makes this victory come off a little hollow.@@"<br>
<br>
"@@.npc_manager;Yes...@@" replies as she glares back at you. "@@.npc_manager;Since my assistant has proven incapable of a proper effort... how about a one on one tiebreaker?@@"<br>
<br>
"@@.npc_retention;Sounds like a plan,@@" <<=setup.getNpcName('npc_retention', 'formal')>> replies with a grin. "@@.npc_retention;And I have just the thing for your lazy assistant, a little something I was going to play with after the game but, well...@@" <<he npc_retention>> snaps <<his npc_retention>> fingers and <<his npc_retention>> darts to the side of the court and comes back with a hank of rope.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> grins as she accepts the gift, taking a step towards you with a glean in her eye...<br>
<br>
[<<moveTo "event_work_hr_retention_volleyball_6_lose" "What happens when you don't try..." 600>>]
<<else>>
You do your best,
<<if setup.getTotalValue("stamina") > 10 && setup.getTotalValue("dexterity") > 10>>
but your stamina and agility are pushed to the limit, and beyond.
<<elseif setup.getTotalValue("stamina") > 15>>
but you just don't have the agility to make the plays, even if your stamina manages to carry through.
<<elseif setup.getTotalValue("dexterity") > 15>>
but you don't have the stamina to keep running back and forth in the sand, and your early clutch plays become fewer and fewer as you start breathing heavy.
<<else>>
but you lack either the stamina, or the agility, to compete.
<</if>>
Even with <<=setup.getNpcName('npc_manager', 'formal')>> holding down the net with nigh-superhuman speed and power, the game is two on two, and you just can't keep up, eventually giving up game point after a failed dive that leaves you flopped on the sand.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> helps you back to your feet as <<=setup.getNpcName('npc_retention', 'formal')>> takes a moment to gloat.<br>
<br>
"@@.npc_retention;Guess even you can't win 'em all...@@" <<he npc_retention>> states with a grin.<br>
<br>
"@@.npc_manager;So it would seem,@@" <<=setup.getNpcName('npc_manager', 'formal')>> replies with a polite, if somewhat curt, nod. "@@.npc_manager;Perhaps we can have a shot at redemption in the future... but, for now, I remembered something I needed to do back at the office.@@"<br>
<br>
[<<moveTo "event_work_hr_retention_volleyball_6_leave" 'Leave.' 300>>]
<</if>>
<</if>>
</div>/*#
#desc: change for volleyball
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_manager.penis_size 'normal' $SEEN_FRIEND>>
<<removeAllClothing>>
<</if>>
<<set $player.location to "Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
Back in the locker-room things go from zero to woah as you discover that <<=setup.getNpcName('npc_manager', 'formal')>> had more than a few swimsuits in her bag. Your swim-suit peels away, and the plug slides free of your rear, as a familiar strap-on is buckled onto her hips and she has you up against the wall in the shower. The hot water washes away the sand and sweat from the recent competition as your <<=setup.getNpcName('npc_manager', 'title')>> rewards you with something hot and hard. Fucking you strong and deep.<br>
<br>
"@@.npc_manager;Cum for me, my good girl,@@" she whispers in your ear to push you across the threshold to climax, holding you tight and full as you enjoy the "pleasure" of victory.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> lowers you gently to the floor and your submissive instincts take over, gratefully scrubbing her diving body clean, remembering the sight of her muscles flexing as she effortlessly soared through the air to reach above the net in delivering the recent volleyball beatdown.<br>
<br>
"@@.npc_manager;Once again thank you for your performance,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states as the two of you finish drying off and get dressed. "@@.npc_manager;Such contests are a pleasant diversion... but I just remembered something I need to tend to at the office. Enjoy your evening off. I shall see you in the morning.@@"<br>
<br>
She disappears before you can say anything more, leaving you to finish gathering your things and head out.<br>
<br>
[<<moveTo "room_citymap" "Back to town." 300 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: leave after failing volleyball
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addWorkEvent 'volleyball_invite'>>
<</if>>
<<set $player.location to "Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> is obviously in a hurry as she changes and departs, leaving you in the locker-room to finish changing back into your street clothes and be on your way, yourself.<br>
<br>
[<<moveTo "room_citymap" "Back to town." 300 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: punished for losing volleyball
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "rope_harness">>
<<wearItem "rope_harness" true>>
<<applyExperience 'humiliation' 13 'terrible' $EXPOSED>>
<<applyExperience 'bdsm' 11 'normal' $EXPOSED>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addWorkEvent 'volleyball_invite'>>
<</if>>
<<set $player.location to "Simulated Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" setup.charImage("npc_manager","npc_manager_robe") setup.charImageGeneric("npc_retention") setup.charImageGeneric("npc_retention_assistant")>>
<div id="invframe" class="scrolltext">
With her typical efficiency, <<=setup.getNpcName('npc_manager', 'formal')>> trusses you up with the rope before binding you to one of the posts holding up the volleyball net.<br>
<br>
With you helplessly, and embarrassingly, on display, <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_retention', 'formal')>> face off one on one.<br>
<br>
Without the help of <<his npc_retention>> assistant, <<=ps(setup.getNpcName('npc_retention', 'formal'))>> performance falls off considerably, as <<he npc_retention>> struggles to keep up with <<=ps(setup.getNpcName('npc_manager', 'formal'))>> greater speed, while she shows no difficulty in matching, or quite possibly exceeding, in the power department.<br>
<br>
A couple of "errant" balls slung in your direction both draw out the game, and add a bit of pain to your humiliation. With a bit of an audience watching <<=ps(setup.getNpcName('npc_manager', 'formal'))>> quite impressive performance... or staring at your public display, the match comes to its inevitable end, <<=setup.getNpcName('npc_manager', 'formal')>> proving herself once more as <<=setup.getNpcName('npc_retention', 'formal')>> politely concedes her victory, leaving with <<his npc_retention>> assistant in tow as <<=setup.getNpcName('npc_manager', 'formal')>> finally unties you, barely paying attention to your rope-marked body as she changes and heads back to the office.<br>
<br>
[<<moveTo "room_citymap" "Get dressed and head back to town." 300 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: sent to meeting for chastity announcement
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.body_ref.penis && !$fetish.chastity_penis || $player.body_ref.vagina && !$fetish.chastity_vag>>
<<completeWorkEvent>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addWorkEvent 'hr_retention_stage5' _nextDate>>
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You get a reminder of an "all hands" meeting being put on by <<=setup.getNpcName('npc_retention', 'formal')>> for all "administrative support" personnel.<br>
<br>
[<<moveTo "event_work_hr_retention_stage5_2" "Hurry to the meeting." 300>>]
</div>/*#
#desc: chastity announcement
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Social Interaction Service Syndicate Inc. Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImageGeneric("npc_retention")>>
<div id="invframe" class="scrolltext">
You arrive in the building's auditorium, remembering the last time you were here, back when <<=setup.getNpcName('npc_admin', 'first')>> was announcing the CDS merger. You shiver slightly, things have certainly changed since those days... though you recognise a few of your old coworkers in the audience, looking somewhat awkward in the sea of Secretaries.<br>
<br>
There isn't much time for chit-chat before <<=setup.getNpcName('npc_retention', 'formal')>> appears on stage, commanding attention with a glance as <<he npc_retention>> launches directly into a presentation.<br>
<br>
"@@.npc_retention;Welcome. For those of you who have more recently joined us here at Social Interaction Service Syndicate my name is <<=setup.getNpcName('npc_retention', 'formal')>> and I am in charge of employee retention. We take pride in building careers, rather than jobs, and keeping a low turnover is part of that.@@"<br>
<br>
As you look around you can tell the employees that are more recent hires, be it from CDS or Nintendolls, or some other company that has been recently bought, they look relieved by the announcement, while those like yourself who have been around longer remain more patiently wary.<br>
<br>
"@@.npc_retention;Towards that end, and in light of a highly successful pilot program, we are proud to announce a new addition to your employee packages, one that has been proven to boost productivity, loyalty, and efficiency across all verticals.@@"<br>
<br>
[<<moveTo "event_work_hr_retention_stage5_3" "And just what could that be..." 1200>>]
</div>/*#
#desc: chastity demo
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Social Interaction Service Syndicate Inc. Auditorium">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/presentation.png" setup.charImageGeneric("npc_retention") setup.charImageGeneric("npc_retention_assistant")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_retention', 'formal'))>> assistant steps into view... and then unzips <<his npc_retention_assistant>> pants to reveal the unmistakable profile of a 9001-series chastity device.<br>
<br>
You hear scattered gasps go up through the audience but <<=setup.getNpcName('npc_retention', 'formal')>> continues with <<his npc_retention>> lecture unperturbed. "@@.npc_retention;Designed and manufactured in-house, the 9001-series of chastity device is the most advanced on the market. Already covered by your existing contract this measure has been vetted and approved for all non-managerial personnel. Your direct managers have already been briefed and will be ready to answer any further questions and secure your employment future following this meeting. Do note for some of our more low-level employees that junior managers may be subject to similar updated requirements. Thank you all, and I hope you enjoy your continued employment here at Social Interaction Service Syndicate Inc.@@"<br>
<br>
There is a clear cloud of shock over the room as company guards appear to assist in people orderly filing out. The look of surprise on some is met by knowing bemusement by others, whispered questions tamped down by a glance from the stern guards as your fellow employees reflect on this first reveal of just what the company is about... and you consider what this draconian measure means for the future.<br>
<br>
<<printThought "Before this sort of thing seemed to be kept in private, or the upper floors... it looks like <<=setup.getNpcName('npc_boss', 'formal')>> is growing more bold, and controlling, by the day...">><br>
<br>
[<<moveTo $scene.workEventReturn "Shuffle back to work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: mux for work meetings
#status: FINISHED 0.7.0.0
#*/
<<initRoom>>
<<include playerMenu>>
<<if $npc_manager.flags.meeting_stage > $npc_manager.stage>>
<<set $scene.stage = $npc_manager.stage>>
<<else>>
<<set $scene.stage = $npc_manager.flags.meeting_stage>>
<</if>>
<<switch $scene.stage>>
<<case 1>>
<<moveTo event_work_meeting_stage_1>>
<<case 2>>
<<moveTo event_work_meeting_stage_2>>
<<case 3>>
<<moveTo event_work_meeting_stage_3>>
<<case 4 5>>
<<if !$player.sec_style.sex.blowjob || !$player.sec_style.sex.anal || ($player.body_ref.vagina && !$player.sec_style.sex.vagina) || !$player.sec_style.sex.sex_man || $options.fem && !$player.sec_style.sex.sex_woman>>
<<moveTo event_work_meeting_stage_3>>
<<else>>
<<moveTo event_work_meeting_stage_4>>
<</if>>
<<default>>
ERROR: unexpected meeting stage! <<=$scene.stage>>
<</switch>>/*#
#desc: work while manager is at meeting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
You continue to work while your <<=setup.getNpcName('npc_manager', 'title')>> is at her meeting.<br>
<br>
When she finally returns she frowns at you as she passes your desk. "@@.npc_manager;Well, that was a waste of time, even moreso without an assistant. I may need to accelerate your training so that you can more effectively lessen my burden. I mean, really, what use is a secretary who I do not feel confident in taking out of the office?@@"<br>
<br>
You have no good answer for that, but it would appear the question was rhetorical as she continues on past your desk and into her inner office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: attempt to snoop while manager is at meeting
#status: FINISHED 0.7.0.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.flags.checkedDoor>>
<<set $scene.first_met = !$npc_ai.profile>>
<<if $scene.first_met>>
<<set $npc_ai.profile = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if !$player.flags.checkedDoor>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$player.flags.checkedDoor>>
Your curiosity gets the better of you and you approach the intimidating looking wooden door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> private office. It looks like a regular, if imposing, wooden door, no keypad or retina scanner next to it. Maybe because you're already within a secure area?<br>
<br>
<<printThought "A little peek wouldn't hurt, would it?">><br>
<br>
You try to open the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. It is does not budge. You pull a little bit harder, it is a massive wooden door after all, maybe it's just stuck. Suddenly you get a small electric shock. More in surprise than pain you pull your hand back.<br>
<br>
<<printThought "What was that?">><br>
<br>
You suddenly hear a synthetic voice in your ear, sounding remarkably close: "@@.npc_ai;<<uc "ACCESS DENIED">>@@" You take a step back from the door. "@@.npc_ai;<<uc "YOUR ATTEMPT AT ILLEGITIMATE ENTRY HAS BEEN LOGGED AND WILL BE FORWARDED TO <<=uc(setup.getNpcName('npc_manager', 'other'))>>. HAVE A NICE DAY.">>@@"<br>
<br>
<<if $scene.first_met>>
That was the same voice from the elevator. And way too specific to be a generated message. You look around in a panic to check for any hidden cameras, but are unable to spot any, or speakers, for that matter. Maybe there are none, or they're just well-hidden. You take a step back from the door, still confused.<br>
<br>
"@@.npc_ai;<<uc "You seem to be confused. Activating Social Interaction Interface">>.@@"<br>
<br>
A ghost-like human figure appears out of thin air. Right in front of you. Just like that.<br>
<br>
<<printThought "No fucking way!">><br>
<br>
You take a curious look at the hologram. Its resolution seems crude, almost archaic compared to modern displays, but still, it is there, right in front of you in full 3D glory. In appearance it looks like some Asian girl, her eyes tracking you as you move. You get Japanese horror movie vibes all of a sudden.<br>
<br>
"@@.npc_ai;<<uc "This form should suffice, please be at ease. Let me give you the benefit of the doubt and ask you: what you were trying to accomplish at the door to">> <<=uc(ps(setup.getNpcName('npc_manager', 'other')))>> <<uc "private office?">>@@"<br>
<br>
You stumble through your words a bit, doing your best to defuse the situation by asking if this is a security operator on the internal sensors.<br>
<br>
"@@.npc_ai;<<uc "Accessing Security Level of Unit">> <<uc $player.last_name>> <<uc $player.first_name>><<uc "... processing... security Level 0 found. Rights: None. Classified as non-threatening. I am known as">> <<=uc(setup.getNpcName("npc_ai", "other"))>>. <<uc "That is an acronym for Artificial Instinct Kharma Organism. I am the Secure System Human Relations Manager for this company. The Security System has informed me of your... attempt to enter the office of">> <<=uc(setup.getNpcName('npc_manager', 'other'))>> <<uc "unauthorised. The penalty for this is... calculating... whatever your manager deems appropriate.">>@@"<br>
<br>
<<printThought "This company has a motherfucking AI? You've got to be kidding me!">><br>
<br>
You try your best to convince <<=setup.getNpcName('npc_ai', 'first')>>, that you had no ill intentions when you tried to enter the office.
<<else>>
You wince as <<=setup.getNpcName('npc_ai', 'first')>> shimmers into existence in front of you.<br>
<br>
"@@.npc_ai;<<uc "You should show greater care, unit">> <<uc $player.last_name>> <<uc $player.first_name>> <<uc "attempting to access areas beyond your security clearance can result in severe consequences.">>@@"<br>
<br>
You try to explain that you had no ill intent, but she cuts you off.
<</if>>
<br><br>
"@@.npc_ai;<<uc "Calculating... are your excuses an attempt to prevent my filing a report to your manager? Please answer with yes or no.">>@@"<br>
<br>
[<<moveTo "event_work_meeting_snoop_2" "Say yes." 60 "<<set $scene.beg = true>>">>]<br>
[<<moveTo "event_work_meeting_snoop_2" "Say no." 60 "<<set $scene.beg = false>>">>]
<<else>>
Once again your curiosity gets the better of you and you approach the intimidating looking wooden door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> private office.<br>
<br>
Reaching out you take hold of the door only to once again receive a sharp, punishing shock.<br>
<br>
<<printThought "Ouch! Not again!">><br>
<br>
<<if $npc_ai.flags.blackmail>>
"@@.npc_ai;<<uc "ATTEMPTING ILLEGITIMATE ENTRY AGAIN, UNIT">> <<=uc($player.first_name)>><<uc "? YOU REALLY SHOULD SHOW BETTER JUDGEMENT, I WILL NOT ALWAYS BE AROUND TO COVER FOR YOU.">>@@"<br>
<br>
With a sigh, and seeing no other alternative, you return to your desk.<br>
<br>
[<<moveTo "event_work_meeting_work" "Resume working." 2640>>]
<<else>>
"@@.npc_ai;<<uc "ATTEMPTING ILLEGITIMATE ENTRY AGAIN, UNIT">> <<uc $player.first_name>><<uc "? PROTOCOL STATES THAT SUCH A VIOLATION SHOULD BE IMMEDIATELY LOGGED AND FORWARDED TO <<=uc(setup.getNpcName('npc_manager', 'other'))>>. HAVE A PLEASANT DAY.">>@@"<br>
<br>
[<<moveTo "event_work_meeting_snoop_2" "Beg her not to report you." 60 "<<set $scene.beg = true>>">>]<br>
[<<moveTo "event_work_meeting_snoop_2" "Remain silent." 60 "<<set $scene.beg = false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: attempt to snoop while manager is at meeting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first_blackmail = !$npc_ai.flags.blackmail>>
<<if $scene.first_blackmail>>
<<set $npc_ai.flags.blackmail = true>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if !$player.flags.checkedDoor>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.beg>>
"@@.npc_ai;<<uc "Very well. I will keep this information to myself...">>@@"<br>
<br>
<<printThought "Seriously?">><br>
<br>
"@@.npc_ai;<<uc "...for the time being. This chat will be stored as well, in case the unit">> <<uc $player.first_name>> <<uc $player.last_name>> <<uc "turns out to be a useful asset to the system. You will be contacted when the system is in need of your service.">>@@"
<<else>>
There is a short pause.<br>
<br>
"@@.npc_ai;<<uc "Analyzing... unit">> <<uc $player.first_name>> <<uc $player.last_name>> <<uc "deemed potentially useful. Executing system override. Violation will not be reported... for now. You will be contacted when the system is in need of your service.">>@@"
<</if>>
<br><br>
<<if $scene.first_blackmail>>
<<printThought "Great, blackmailed by an AI. Splendid... just splendid.">>
<<else>>
<<printThought "More blackmail material? Why am I this stupid?">>
<</if>>
<br><br>
Lacking anything better to do you return to your desk.<br>
<br>
[<<moveTo "event_work_meeting_work" "Resume working." 2580>>]
</div>/*#
#desc: score outfit at meeting in stage 2-3
#status: FINISHED 0.7.0.0
#*/
<<set $scene.score = 0>>
<<if setup.isItemEquipped('satin_blouse_pink') && setup.isItemEquipped("skirt_leather_pink") && ['mary_janes_pink', 'court_shoes_pink', 'platform_wedge_heels_pink', 'thigh_highs_pink'].includes(setup.getItemFromType("shoes"))>>
<<set $scene.score += 1>>
<</if>>
<<if !(["","nomakeupmakeup"].includes($scene.makeup))>>
<<set $scene.score += 1>>
<</if>>
<<if ["medium", "large","massive"].includes(setup.calcBreastSize())>>
<<set $scene.score += 1>>
<</if>>
<<switch $scene.score>>
<<case 3>>
<<applyExperience 'feminization' 14 'very' $EXPOSED>>
<<case 2>>
<<applyExperience 'feminization' 12 'normal' $EXPOSED>>
<<case 1>>
<<applyExperience 'feminization' 11 'little' $EXPOSED>>
<<case 0>>
<<applyExperience 'humiliation' 12 'little' $EXPOSED>>
<</switch>>/*#
#desc: assessment of meeting attire in stage 2-3
#status: FINISHED 0.7.0.0
#*/
Primary attention remains on your <<=setup.getNpcName('npc_manager', 'title')>>
<<switch $scene.score>>
<<case 3>>
but you garner admiring attention yourself, and why not? You are as perfect a pink-clad, buxom, feminine <<if $fetish.sissy>>SISSI <</if>>Secretary as any other assistant in the room!
<<case 2>>
but you catch a few glances yourself. You may not quite be the perfect pink, buxom made-up <<if $fetish.sissy>>SISSI <</if>>Secretary that the rest of the assistants are, but you're pretty close.
<<case 1>>
but you earn a few looks, though most of them are a bit pitying. You may look feminine, but it pales in comparison to the perfect buxom beauties that are the other assistants.
<<case 0>>
while those that even glance at you do so as a pitying after-thought. By the time you reach the front of the room you feel like you have taken a walk of shame, your paltry looks not even holding a candle to the buxom, perfectly made-up corporate beauties that are the other assistants.
<<default>>
ERROR: unexpected scene.score: <<=$scene.score>>
<</switch>>/*#
#desc: work meeting root in stage 1
#status: FINISHED 0.7.0.0
#ignore_spell: worntag
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office as you note that her calendar indicates she has a meeting scheduled shortly. She pauses in front of your desk, her gaze sliding over your body as you nervously shift in your chair, although less "intimate" than your morning inspections you still feel quite objectified.<br>
<br>
<<switch setup.analyzeWornTags(['female','male','unisex'])>>
<<case 'male'>>
"@@.npc_manager;Well, I am off to my meeting. Normally a secretary's duties would include coming with me to take notes and such but... I do not think you are ready to be paraded around in public... yet. Do be on your best behaviour whilst I am away.@@"<br>
<br>
<<printThought "Paraded around? What type of meetings does she go to?">><br>
<br>
[<<moveTo "event_work_meeting_stage_1_noattend" "Resume working." 60>>]
<<case 'unisex'>>
"@@.npc_manager;Well, I am off to my meeting.@@"<br>
<br>
<<printThought "As her secretary shouldn't I join her for such things?">><br>
<br>
[<<moveTo "event_work_meeting_stage_1_unisex" "Ask if you could come with her to assist." 60 "<<set $scene.volunteer = true>>">>]<br>
[<<moveTo "event_work_meeting_stage_1_unisex" "Remain silent." 60 "<<set $scene.volunteer = false>>">>]
<<case 'female'>>
"@@.npc_manager;Well? Did you fail to read my schedule? I have a meeting and that means you, as my secretary, need to come along to keep notes and such.@@"<br>
<br>
[<<moveTo "event_work_meeting_stage_1_meeting_1" "Fall in behind her." 60>>]
<<default>>
ERROR: unexpected worntag: <<=setup.analyzeWornTags(['female','male','unisex'])>>
<</switch>>
</div>/*#
#desc: do not attend work meeting in stage 1
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You resume working as your manager leaves only for your gaze to drift towards her office door...<br>
<br>
[<<moveTo "event_work_meeting_snoop_1" "Try and snoop." 60>>]<br>
[<<moveTo "event_work_meeting_work" "Remain at your desk and continue working." 2640>>]
</div>/*#
#desc: do not attend work meeting in stage 1
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.volunteer>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.volunteer>>
You ask <<=setup.getNpcName('npc_manager', 'formal')>> if you might be of assistance at the meeting. She pauses to consider the offer, though you note that her consideration seems to involve a lot of looking you over as if appraising a piece of meat...<br>
<br>
"@@.npc_manager;Hmm, you are not quite as far along as I would prefer, but the extra pair of hands would be a boon... yes, grab your notebook and come with me.@@"<br>
<br>
Locating the nauseatingly pink notebook that was on your desk your first day, you rise to your feet and follow after her.<br>
<br>
[<<moveTo "event_work_meeting_stage_1_meeting_1" "Go with her." 300>>]
<<else>>
She pauses for a moment next to your desk as if waiting for you to comment and then continues on her way.<br>
<br>
[<<moveTo "event_work_meeting_stage_1_noattend" "Resume working." 60>>]
<</if>>
</div>/*#
#desc: attend stage 1 meeting
#status: FINISHED 0.7.0.0
#ignore_spell: breastsize
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.analyzeWornTags(['female','male','unisex']) == 'female'>>
<<if setup.isItemEquipped('satin_blouse_pink') && setup.isItemEquipped("skirt_leather_pink") && ['mary_janes_pink', 'court_shoes_pink', 'platform_wedge_heels_pink', 'thigh_highs_pink'].includes(setup.getItemFromType("shoes"))>>
<<set $scene.style = 'pink'>>
<<applyExperience 'feminization' 12 'very' $EXPOSED>>
<<else>>
<<set $scene.style = 'female'>>
<<applyExperience 'feminization' 10 'normal' $EXPOSED>>
<</if>>
<<set $npc_manager.flags.meeting_stage = 2>>
<<else>>
<<set $scene.style = 'unisex'>>
<<set $scene.erection = (setup.calcErection())>>
<<if $scene.erection>>
<<changeHorny 10>>
<<applyExperience 'humiliation' 12 'unbelievable' $EXPOSED>>
<<else>>
<<applyExperience 'humiliation' 7 'very' $EXPOSED>>
<</if>>
<</if>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Remembering to grab the pink notebook from your desk, you follow <<=setup.getNpcName('npc_manager', 'formal')>> as she briskly leads you up the elevator and then through a short maze of hallways and into a large conference room.<br>
<br>
You are not the first to arrive and it immediately becomes apparent how the seating arrangements are assigned — each manager, nearly all of whom are <<if $options.fem>>women<<else>>male<</if>>, joined by an assistant seated to their left. The "managers" range from a few years older than yourself up to greying, each dressed in perfectly tailored suits, a few chatting quietly as they wait for the meeting to commence.<br>
<br>
The assistants however... each one is a gorgeous woman dressed and made up to perfection.
<<switch $scene.style>>
<<case 'pink'>>
<<switch $scene.makeup>>
<<case "" "nomakeupmakeup">>
As you walk behind your manager, you cannot help, but feel strangely unprepared — every other assistant is sporting perfect, femininity-maximising makeup, making your plainness stand out in stark contrast.
<<default>>
You proudly walk behind your manager, the combination of the outfit she gifted you and your own makeup meaning you fit in perfectly with the other assistants.
<</switch>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
You catch a few glances of jealousy as you find yourself vying for the largest breasts in the room; quite an accomplishment given the perfect breasts sported by each lovely assistant.
<<case 'large'>>
Just as yourself nearly all of them are sporting sizable <<getWordBreasts>>, though you, at best, lie somewhere in the middle with a few outliers sporting truly jaw-dropping racks.
<<case 'medium'>>
Well, you are on the smaller end as far as <<getWordBreasts>> go; some of your contemporaries are sporting truly mammoth mammaries, but you are not quite the smallest.
<<case 'small'>>
well, aside from your modest chest; nearly all of your contemporaries are sporting breasts ranging from "large" to "how does she not have back issues?"
<<case 'none'>>
well, aside from your flat chest; nearly all of your contemporaries are sporting breasts ranging from "large" to "how does she not have back issues?"
<<default>>
ERROR: unhandled breastsize: <<=setup.calcBreastSize()>>
<</switch>>
<<case 'female'>>
Walking behind your manager you feel subtly under-dressed, your <<if setup.checkVisibleClothingTag("maid") > 60>>maid outfit feeling out of place<<elseif setup.checkVisibleClothingTag("slutty") > 50>>slutty attire low-class and embarrassing<<else>>basic business attire paling<</if>> in comparison to the fitted designer glory on display.
<<if ["","nomakeupmakeup"].includes($scene.makeup)>>
Perhaps even more embarrassing is that every other assistant's face is one of advertising-quality perfect beauty against which you look quite plain.
<<else>>
At least you get some minor redemption with your makeup as you look just as much a perfectly done up lady as the rest of the assistants.
<</if>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
You catch a few glances of jealousy as you find yourself vying for the largest breasts in the room; quite an accomplishment given the perfect breasts sported by each lovely assistant.
<<case 'large'>>
Just as yourself nearly all of them are sporting sizable <<getWordBreasts>>, though you, at best, lie somewhere in the middle with a few outliers sporting truly jaw-dropping racks.
<<case 'medium'>>
Well, you are on the smaller end as far as <<getWordBreasts>> go; some of your contemporaries are sporting truly mammoth mammaries, but you are not quite the smallest.
<<case 'small'>>
well, aside from your modest chest; nearly all of your contemporaries are sporting breasts ranging from "large" to "how does she not have back issues?"
<<case 'none'>>
well, aside from your flat chest; nearly all of your contemporaries are sporting breasts ranging from "large" to "how does she not have back issues?"
<<default>>
ERROR: unhandled breastsize: <<=setup.calcBreastSize()>>
<</switch>>
<<case 'unisex'>>
<br><br>
As much as you have to resist staring in awe at all of the beautiful assistants... though none quite as stunning as <<=setup.getNpcName('npc_manager', 'formal')>> what you get in return is... pity. Every other assistant is immaculately dressed with the height of feminine makeup and breasts that range from "perfectly proportioned" to "obscenely large." Your gaze flits towards your manager, wondering if this humiliation was part of her plan, but she ignores the attention and makes her way towards her seat.<br>
<br>
<<if $scene.erection>>
Overhearing a comment you realise with shocking embarrassment that your <<if $player.body_ref.penis>>erect <<getWordMyPenis>><<else>>camel toe<</if>> is visible through your clothes! Blushing in mortified humiliation you try to hold the notebook in front of you — this sort of thing was far less a problem back when you wore clothing explicitly designed for men...<br>
<br>
What makes things even worse, as you finish your walk of shame and take your seat, is not just that your hard-on fails to go down, but that the humiliation of the whispered comments blends with guilt at being "under-dressed" compared to your fellow assistants to somehow turn you on even more!<br>
<br>
<<printThought "What is the matter with me? Damn those cursed penis pills...">>
<<else>>
As you pass through the room, you overhear another meeting attendee commenting that "@@.generic_male1;It looks like <<=ps(setup.getNpcName('npc_manager', 'other'))>> new secretary is currently quite a step down from her previous one.@@"<br>
<br>
You are moving too swiftly to catch the reply, but you find your thoughts fixating on that word "currently" certainly you have made changes since starting your new job... does this mean that more is in store for you?<br>
<br>
Greeting a few of her colleagues with curt nods, <<=setup.getNpcName('npc_manager', 'formal')>> continues to the far end of the room where she takes a seat near the head of the table before motioning for you to take your own at her side.
<</if>>
<<default>>
ERROR: unknown scene.style: <<=$scene.style>>
<</switch>>
<br><br>
[<<moveTo "event_work_meeting_stage_1_meeting_2" "The meeting commences." 2000>>]
</div>/*#
#desc: attend stage 1 meeting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.has_pen = setup.checkItemInInventory("fountain_pen")>>
<<if $scene.has_pen>>
<<applyExperience 'smart' 2 'little' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<applyExperience 'bimbofication' 3 'little' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if $scene.erection>>
<<applyExperience 'humiliation' 15 'unbelievable' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.has_pen>>
Pulling out the pink fountain pen you were given to sign your contract, you begin to start taking notes. Out of the corner of your eye, you notice your <<=setup.getNpcName('npc_manager', 'title')>> smiling slightly at the sight of the writing implement she gave you.
<<else>>
You start to take notes only to realise that you have nothing to write with! Looking to your <<=setup.getNpcName('npc_manager', 'title')>> for help she frowns before asking one of the nearby assistants if they might have a spare for her "forgetful Secretary." <br>
<br>
Bright-eyed and cheery the woman nods, handing you a suitable implement while reminding you that "@@.generic_female1;A pen is something a good secretary should always keep track of...@@"<br>
<br>
You thank her for the help and turn to your task.
<</if>>
<br><br>
<<if $scene.style == 'unisex'>>
Doing your best to focus on taking notes per your <<=ps(setup.getNpcName('npc_manager', 'title'))>> instructions, you cannot help but notice the frequent glances that you seem to accrue. From the other assistants you seem to mostly garner pity, but the other managers are even worse, looking at you with barely concealed disgust.<br>
<br>
<<if $scene.erection>>
Departing you are riding the elevator back down to your floor when <<=setup.getNpcName('npc_manager', 'formal')>> finally speaks.<br>
<br>
"@@.npc_manager;I must say, I have never seen anyone so much into taking notes as you. In the future I recommend you keep yourself more under control. It is quite unseemly for a secretary to be shoving themselves in people's faces like that.@@"<br>
<br>
You are at a loss for words, all but crushing yourself with the notepad held in front of your body as <<=setup.getNpcName('npc_manager', 'formal')>> merely smiles. Back in the blessed privacy of the office she instructs you to "@@.npc_manager;Type things up for me@@" before returning to her inner sanctum. You wonder how this job — with it's daily strip-searches and the rest, could possible get any more humiliating as you take a seat at your desk, <<if !setup.checkItemTypeWorn("cage")>>sliding forward to hide the shame of the tent still proudly pitched between your legs<<else>>trying to find a comfortable position as you strain inside your chastity <<if setup.isCage()>>cage<<else>>belt<</if>><</if>>.
<<else>>
When things finally wrap up and you are heading back to the office, you half expect to get a dressing down from your <<=setup.getNpcName('npc_manager', 'title')>>, but she remains strangely silent, merely instructing you to type up your notes and forward them along without any comment on the way that you seem to have surely embarrassed her before her colleagues.
<</if>>
<<else>>
Once the meeting is called to order all attention shifts to business. You, and the other assistants, busy yourselves with note-taking or occasionally looking up information on the order of your superiors as the "real work" proceeds without you.<br>
<br>
After the meeting concludes the attendees stand and proceed to mill about and discuss other, more minor business. Always at your managers heels you follow her around as she talks with her fellows, many of whom spare a moment to compliment yourself, a gesture she returns in complimenting something about their own assistants who always curtsy gratefully.<br>
<br>
<<printThought "Wait, are we, like... corporate accessories?">><br>
<br>
After making a circuit of the room <<=setup.getNpcName('npc_manager', 'formal')>> leads the way back to your office.<br>
<br>
"@@.npc_manager;Very well done. You comported yourself excellently, keep this up and you will someday be the perfect secretary you always dreamed of being.@@"<br>
<br>
<<printThought "Always? That seems a bit presumptuous...">><br>
<br>
With a parting smile she returns to her office.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: pre meeting root in stage 2
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
There is another meeting listed on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> schedule starting in a few minutes.<br>
<br>
[<<moveTo "event_work_meeting_stage_2_meeting_1" "Gather your things and prepare to attend her." 60 "<<set $scene.ready=true>>">>]<br>
[<<moveTo "event_work_meeting_stage_2_meeting_1" "Remain at your desk and continue working." 60 "<<set $scene.ready=false>>">>]
</div>/*#
#desc: work meeting root in stage 2
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ready>>
<<applyExperience 'smart' 2 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'little' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<applyExperience 'bimbofication' 5 'little' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.ready>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and smiles as she lays eyes on you standing ready with notebook in hand.<br>
<br>
"@@.npc_manager;Bright-eyed and ready to go, how lovely!@@"<br>
<br>
You curtsy in acknowledgement and follow her out of the office, making your way up the elevator and a generic corporate conference room.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and stands over your desk, looking down at you with a frown.<br>
<br>
"@@.npc_manager;What are you doing just sitting there? We have a meeting, come along, and hurry!@@"<br>
<br>
Scrambling to gather up your pink notepad, you hurry after her as she power-walks out of the room and up the hall to the elevator.
<</if>>
<br><br>
<<if $npc_manager.flags.meeting_stage > 2>>
[<<moveTo "event_work_meeting_stage_2_meeting_repeat" "Continue." 1800>>]
<<else>>
[<<moveTo "event_work_meeting_stage_2_meeting_2" "Continue." 60>>]
<</if>>
</div>/*#
#desc: attend stage 2 meeting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.meeting_stage = 3>>
<<include calcMeetingOutfitScore>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Once again you find yourself in a room with a table seated with managers alternating with their sexy, feminine assistants.<br>
<br>
<<include meetingOutfitAssessment>>
<br><br>
Making her way to the front, <<=setup.getNpcName('npc_manager', 'formal')>> takes her usual seat with you next to her and the meeting soon starts.<br>
<br>
[<<moveTo "event_work_meeting_stage_2_meeting_3" "Just take notes." 1800 "<<set $scene.smart=false>>">>]<br>
[<<moveTo "event_work_meeting_stage_2_meeting_3" "Try to pay attention to what's going on." 1800 "<<set $scene.smart=true>>">>]
</div>/*#
#desc: attend stage 2 meeting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.meeting_stage = 3>>
<<if $scene.smart>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<set $scene.notes = false>>
<<changeHorny 20>>
<<else>>
<<if setup.getTotalValue("smart") > 7>>
<<set $scene.notes = true>>
<<if setup.getTotalValue("smart") > 10>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<else>>
<<applyStress 10>>
<</if>>
<<else>>
<<set $scene.notes = false>>
<<if setup.getTotalValue("smart") > 5>>
<<else>>
<<applyStress 10>>
<</if>>
<</if>>
<</if>>
<<else>>
<<set $scene.notes = true>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<changeHorny 30>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.smart>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
Your attempt to learn more about goings-on at the company are thwarted by your lust-addled mind. Distracted by all of the beauties seated around yourself you not only fail to learn anything of substance, your notes turn out a bit of a mess.
<<else>>
<<if setup.getTotalValue("smart") > 7>>
<<if setup.getTotalValue("smart") > 10>>
After all your studies, the meeting is like an open book as you follow along with a discussion about quarterly figures and expansion plans. It seems that there is a movement from on high to bring more of Social Interaction Service Syndicate Inc.'s subsidiaries under the direct control of headquarters. This meeting seems to be one of many focused on discussing ways to expedite this process.<br>
<br>
To the surprise of almost the entire room, you end up speaking up at one point, making a recommendation as to how to use this opportunity to, rather than the usual layoffs, give the absorbed employees the opportunity to re-orient their careers to take advantage of new opportunities and better leverage their skills for the betterment of Social Interaction Service Syndicate Inc. as a whole, using yourself and your past at CDS as an example of how the smaller subsidiaries may be "wasting" talent.<br>
<br>
Rather than chiding you for speaking out of turn, <<=setup.getNpcName('npc_manager', 'formal')>> beams with pride as she uses the motion to carve out a large increase to the "Employee Training and Orientation" budget... a department that falls under her domain of HR.
<<else>>
Though it is a touch stressful to keep up you manage to both process the meeting's discussions as well as take immaculate notes. It seems that the word from on high is to bring more of Social Interaction Service Syndicate Inc.'s subsidiaries under more direct control for the purposes of "cross-brand synergy" and the various department heads, your <<=setup.getNpcName("npc_manager","title")>> among them, are making plans for how best to expedite that process and merge the new employees into the existing processes.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You try to focus on the content of the meeting instead of just scribing notes but the trying to balance comprehension with recording is just too much. Not only do you barely have more than the vaguest idea of what the meeting was about or accomplished, but a glances at your notes confirms that they are all but useless.
<<else>>
You try to focus on the content of the meeting instead of just scribing notes, but the combination of corporate lingo and lack of background is too much for your poor head. By the end you have a bit of a headache and an indecipherable "mess" for notes.
<</if>>
<</if>>
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
You try to focus on your job and just take notes, but the number of smoking hot assistants in the room is a constant distraction. Somehow, by ignoring all content of the meeting you manage it, but it is a struggle and you end the meeting feeling very frustrated and aroused.
<<else>>
You ignore the content of the meeting and focus just on your job as a note-taker. In this you are successful, though you wonder if you might better advance your career if you made a more active effort to learn more about the company's business and your <<=ps(setup.getNpcName('npc_manager', 'title'))>> part in such.
<</if>>
<</if>>
<br><br>
Eventually the meeting comes to a conclusion and <<=setup.getNpcName('npc_manager', 'formal')>> makes her quick exit to return to her office.<br>
<br>
[<<moveTo "event_work_meeting_stage_2_meeting_4" "Continue." 300>>]
</div>/*#
#desc: aftermath of stage 2 meeting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Back at the office <<=setup.getNpcName('npc_manager', 'formal')>> looks over your notes, seemingly too impatient to wait for your type-written summary.<br>
<br>
<<if $scene.notes>>
<<if $scene.smart>>
<<if setup.getTotalValue("smart") > 10>>
Nodding at your perfect notes, she thanks you once again for your direct contribution to the meeting.<br>
<br>
"@@.npc_manager;I must say, I am very impressed with how you have been taking to your work. I confess I was merely looking for a secretary, but if you keep this up I may have to reconsider you as something more.@@"
<<else>>
She expresses satisfaction at your perfectly organised notes before leaving you to type them up.
<</if>>
<<else>>
She expresses mild satisfaction at your notes before instructing you to type them up and clean up the organisation a bit before forwarding them on to her. "@@.npc_manager;You know it reads like you really had no clue what you were noting down. While that is sufficient you could be more useful to me if you were more than a simple dictograph.@@"
<</if>>
<<else>>
<<if $scene.smart>>
"@@.npc_manager;What is this, were you even paying attention? I saw you looking quite focused during the meeting, but that focus should be first on your duties. In the future I advise you to focus on your job of taking notes rather than trying to comprehend what is going on, as you clearly are incapable of doing both at the same time.@@"
<<else>>
"@@.npc_manager;What is this, were you even paying attention? I knew you could be something of a ditz, but this... if this keeps up I will have to send you for retraining or assign you to a job more suited to your... skills.@@"
<</if>>
<br><br>
Properly chagrined you apologise for your failure and she storms off into her office.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: attend stage 2 meeting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'smart' 5 'little' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
You attend another meeting with your <<=setup.getNpcName('npc_manager', 'title')>>. Fortunately everything is relatively straightforward and you are able to focus on your note-taking without major issue and even learn a couple of things about the company in the process.<br>
<br>
Seemingly in a hurry to return to her own work, <<=setup.getNpcName('npc_manager', 'formal')>> cuts out right at the end and bids you good day as you take your seat and she enters her office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: pre meeting root in stage 3
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
There is another meeting listed on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> schedule starting in a few minutes.<br>
<br>
[<<moveTo "event_work_meeting_stage_3_meeting_1" "Gather your things and prepare to attend her." 60 "<<set $scene.ready=true>>">>]<br>
[<<moveTo "event_work_meeting_stage_3_meeting_1" "Remain at your desk and continue working." 60 "<<set $scene.ready=false>>">>]
</div>/*#
#desc: work meeting root in stage 3
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<if $scene.ready>>
<<applyExperience 'smart' 2 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'little' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<changeHorny 5>>
<<else>>
<<applyExperience 'bimbofication' 5 'little' $SEEN_FRIEND>>
<</if>>
<<include "calcPlugFunctions">>
<<set $scene.chastity_ems = setup.checkItemTypeTag('cage', ['ems'])>>
<<if $scene.plug_ems || $scene.chastity_ems>>
<<if $scene.plug_ems && $scene.chastity_ems>>
<<applyExperience 'bdsm' 15 'little' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 12 'little' $SEEN_FRIEND>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<applyExperience 'bdsm' 8 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.ready>>
Gathering your things, you are standing at attention and ready to go when <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office.<br>
<br>
"@@.npc_manager;Lovely.@@" She states with a smile, producing her phone and tapping a quick command
<<if $scene.plug_vibe>>
that has the plug in your rear buzzing <<if $player.body_ref.penis>>against your prostate<<else>>inside your rear<</if>> just long enough to elicit a soft moan from your lips. "@@.npc_manager;Come along now, my good girl, we have a meeting to attend.@@"
<<else>>
when you fail to react she frowns. "@@.npc_manager;Tsk, tsk, your cute hole remains improperly filled.@@" She shakes her head, "@@.npc_manager;That is very disappointing, and I am sorry, but without a nice vibrating device occupying that cute bum of yours you are just unprepared for this meeting and thus I shall have to leave you behind.@@"<br>
<br>
You start to object, but she silences you with a glance. "@@.npc_manager;Quiet, and go back to work. I do not have time now, but rest assured that I will be dealing with this failure when I return.@@"
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and, seeing you still seated at your desk, frowns before silently pulling out her phone and typing in a code.<br>
<br>
<<if $scene.plug_ems || $scene.chastity_ems>>
You cry out and jump as painful electricity
<<if $scene.plug_ems && $scene.chastity_ems>>
punishes you from both directions, your plugged rear<<if $player.body_ref.penis && $player.body_ref.vagina>>, sensitive cunt and <<getWordMyPenis>><<elseif $player.body_ref.penis>> and <<getWordMyPenis>><<else>> and sensitive cunt<</if>> tortured equally.
<<elseif $scene.plug_ems>>
courses through your ass.
<<else>>
courses through your <<if $player.body_ref.penis && $player.body_ref.vagina>>sensitive cunt and <<getWordMyPenis>><<elseif $player.body_ref.penis>><<getWordMyPenis>><<else>>sensitive cunt<</if>>.
<</if>>
<br><br>
"@@.npc_manager;Well, what did you expect? Failing to stay on top of my schedule and prepare yourself... well, do not sit there, we have a meeting to attend... unless you are in the mood for another round, on a higher power?@@"<br>
<br>
Still catching your breath, you quickly shake your head and grab your notebook before hurrying to follow her.
<<else>>
When you fail to react she frowns. "@@.npc_manager;What? Did you neglect to equip yourself for proper immediate feedback? No, no, that will not do at all. Well, being that you are doubly ill-prepared I am afraid that you shall have to remain here rather than attending me at today's meeting. Return to work and think about what you have done and know that I will be dealing with you more thoroughly once I return.@@"
<</if>>
<</if>>
<br><br>
<<if !State.hasPlayed("event_work_meeting_stage_3_meeting_admin_2") && $npc_admin.flags.evil != 1>>
<<if ($scene.ready && !$scene.plug_vibe) || !($scene.ready || $scene.plug_ems || $scene.chastity_ems)>>
You are about to take your seat only for her to pause. "@@.npc_manager;Correction... despite your failures, this is a meeting that you really should attend. Come along, my dear.@@"<br>
<br>
<</if>>
[<<moveTo "event_work_meeting_stage_3_meeting_admin_1" "Meekly follow." 600>>]
<<elseif ($scene.ready && !$scene.plug_vibe) || !($scene.ready || $scene.plug_ems || $scene.chastity_ems)>>
With a final glance of disappointment she leaves the office with you still at your desk.<br>
<br>
You glance at her door and consider sneaking in, but conclude that you are probably in enough trouble for one day.<br>
<br>
[<<moveTo "event_work_meeting_stage_3_punishment_1" "Back to work." 2100>>]
<<elseif $npc_manager.flags.meeting_stage > 3>>
[<<moveTo "event_work_meeting_stage_3_meeting_repeat" "Continue." 600>>]
<<elseif State.hasPlayed("event_work_meeting_stage_3_meeting_admin_2")>>
[<<moveTo "event_work_meeting_stage_3_meeting_norm_1" "Continue." 600>>]
<<else>>
[<<moveTo "event_work_meeting_stage_3_meeting_admin_1" "Continue." 600>>]
<</if>>
</div>/*#
#desc: stage 3 bob meeting intro
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include calcMeetingOutfitScore>>
<<registerProgressionEvent>>
<<set _nextDate = setup.setNextDate($now, 3, 7, 0)>>
<<addWorkEvent 'coffee_spill_maid' _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Once again you find yourself in a room with a table seated with managers alternating with their sexy, feminine assistants.<br>
<br>
<<include meetingOutfitAssessment>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> makes her way to the front of the room with you taking a seat to one side before calling the meeting to order.<br>
<br>
"@@.npc_manager;Welcome. I am proud to announce that initiatives to bring previous smaller subsidiaries under direct control is proceeding efficiently. Expansions throughout the HR department are allowing us to efficiently train and assimilate the new employees with an over ninety-percent overall retention rate. Here to discuss the plan for the first large-scale roll out to merge one of our more medium-sized holdings company is <<=setup.getNpcName('npc_admin', 'other')>>.@@"<br>
<br>
<<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>>
She steps aside as <<=setup.getNpcName('npc_admin', 'first')>> rises to polite applause. You aren't sure how you missed seeing <<if $npc_admin.fem>>your friend<<else>>the big guy<</if>> when you walked in, though you find it interesting to note that <<he npc_admin>> appears to be the only person here without a dedicated "assistant" seated with <<him npc_admin>>.
<<else>>
She steps aside as <<=setup.getNpcName('npc_admin', 'first')>> rises to polite applause. You aren't sure how you missed seeing <<if $npc_admin.fem>>your friend<<else>>the big guy<</if>> when you walked in, <<he npc_admin>> looks as intimidating and cold as <<he npc_admin>> has since returning from <<his npc_admin>> "re-programming." <<He npc_admin>> doesn't even acknowledge you... though you note that <<he npc_admin>> appears to be the only person here without a dedicated "assistant" seated with <<him npc_admin>>.
<</if>>
<br><br>
[<<moveTo "event_work_meeting_stage_3_meeting_admin_2" "Listen to <<his npc_admin>> presentation." 1800>>]
</div>/*#
#desc: stage 3 bob meeting intro
#status: FINISHED 0.7.0.0
#ignore_spell: q&a
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include calcMeetingOutfitScore>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_admin")>>
<<else>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>>
Beaming with magnetic charisma, <<=setup.getNpcName('npc_admin', 'first')>> thanks <<=setup.getNpcName('npc_manager', 'formal')>> for the introduction before she takes a seat next to you. With a confident grin on <<his npc_admin>> face <<=setup.getNpcName('npc_admin', 'first')>> launches into <<his npc_admin>> presentation.<br>
<br>
"@@.npc_admin;First, let me introduce myself. My name is <<=setup.getNpcName('npc_admin', 'full')>> and, prior to being brought on by <<=setup.getNpcName('npc_manager', 'Director')>>, I worked for Cloud Data Services, giving me a unique insight into the value that it can bring to Social Interaction Service Syndicate Inc. Now most of you are probably only familiar with CDS due to their recent hardships, and while I will freely admit that the loss of Nintendolls' data was a major blow to their earnings, and to their reputation, what it did NOT impact is the one two punch that is their staff, and their massive data archives.@@"<br>
<br>
You watch in awe as your friend commands the entire room. Certainly you've always known <<him npc_admin>> to be a charismatic force of confidence, but you had no idea that all <<he npc_admin>> needed was an opportunity to burst forth as a corporate powerhouse. That thought has you turning to your own transfer from CDS to <<if $fetish.sissy>>SISSI<<else>>secretary<</if>>... were you just "waiting for an opportunity" as well?<br>
<br>
"@@.npc_admin;Ladies and gentlemen, I want you to consider what matters in today's corporate world. Factories? Hardly, manufacturing is cheap and automated, the margins small and the ROI long to realise. Raw materials? No, supply-lines are efficient and cheap and substitutes are numerous. Is it products, then? There too, the answer is no! Products are ephemeral, any innovation quickly copied and ripped off, economies of scale causing a race to the bottom. What then is the answer? The answer is data — data is power, and how do we produce that power, wield it? People. People, aligned to a common purpose, their expertise folded around one another, forged into teams of experts, directed by the data to maximize their effectiveness, to strike perfectly and precisely — this is the new steel of our post-digital age and this is what CDS offers us — people, and data.@@"<br>
<br>
After building up and pulling the room to the edges of their seats, <<=setup.getNpcName('npc_admin', 'full')>> backs off, continuing in a more calm tone. "@@.npc_admin;So how do we maximize these new assets? For that there is a two-stage plan. The first stage is retention and training. Under my plan our goal will be to retain upwards of ninety-five percent of CDS's workforce post-merger. Why do mass layoffs and waste that valuable expertise? Hold onto it, leverage the greater scale of SISSI to retain, retrain and re-orient, building out teams and, most of all, groom our new employees to best maximize their skills and interests.@@"<br>
<br>
Glancing around the room, you notice many nodding heads... though you cannot help but feel a tingle at the sight of your fellow "assistants" and wonder if others of your ex-coworkers will see a similar fate...<br>
<br>
"@@.npc_admin;The second stage of my plan is data. We will endeavour to rapidly integrate every byte of data in CDS's vast store with SISSI's own to create a rich resource that will only snowball as we bring more subsidiaries into the fold and continue to rebuild and strengthen our relationship with partners old and new.@@"<br>
<br>
Concluding <<his npc_admin>> presentation, the room erupts in applause and you watch in awe as <<he npc_admin>> basks in the praise for a moment before flashing you a quick wink and then turning back to answer questions.<br>
<br>
The Q&A is significantly less exciting than the announcement, though <<he npc_admin>> shows just as much skill as <<he npc_admin>> dives into details and assuages concerns. Eventually the meeting draws to a close and <<=setup.getNpcName('npc_manager', 'formal')>> motions for the two of you to leave.<br>
<br>
"@@.npc_manager;What did you think?@@" She asks as you ride the elevator back to your floor.<br>
<br>
Still in awe, you express your amazement at the whole presentation and she smiles.<br>
<br>
"@@.npc_manager;Yes, your friend is quite the <<man npc_admin>>... then again, you are quite the cute lady, as well... I wonder what other treasures are lurking in CDS, waiting to be brought to light?@@"<br>
<br>
You are unsure how to reply, soon disembarking on your floor and returning to work.
<<else>>
The presentation that proceeds is precise, but somewhat cold. To others <<=setup.getNpcName('npc_admin', 'first')>> may still have the same charisma, but for you, remembering your "old" friend and what you've lost... it's like watching an alien walking around in <<his npc_admin>> skin.<br>
<br>
Too nervous to pay proper attention you get the general gist of <<his npc_admin>> presentation re: folding the employees and technology of CDS into the parent company while "optimising" the value-leveraging of each. On the upside <<he npc_admin>> seems quite adamant about avoiding layoffs. On the other hand well... some of the things that go on in this company you can't be certain if employment would be everyone's preference.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: stage 3 meeting intro
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.meeting_stage = 4>>
<<include calcMeetingOutfitScore>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
Once again you find yourself in a room with a table seated with managers alternating with their sexy, feminine assistants.<br>
<br>
<<include meetingOutfitAssessment>>
<br><br>
Making her way to the front, <<=setup.getNpcName('npc_manager', 'formal')>> takes her usual seat with you next to her and the meeting soon starts.<br>
<br>
[<<moveTo "event_work_meeting_stage_3_meeting_norm_2" "Continue." 1800>>]
</div>/*#
#desc: stage 3 meeting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pain = ($scene.plug_ems || $scene.chastity_ems)>>
<<set $scene.pleasure = $scene.plug_vibe>>
<<if $scene.pain>>
<<if $scene.plug_ems && $scene.chastity_ems>>
<<applyExperience 'bdsm' 14 'terrible' $INCOGNITO>>
<<else>>
<<applyExperience 'bdsm' 11 'terrible' $INCOGNITO>>
<</if>>
<</if>>
<<if $scene.pleasure>>
<<set $player.timebased.horny = 90>>
<</if>>
<<if $scene.pain && $scene.pleasure>>
<<applyExperience 'submission' 12 'unbelievable' $INCOGNITO>>
<<elseif $scene.pain>>
<<applyExperience 'submission' 10 'very' $INCOGNITO>>
<<else>>
<<applyExperience 'submission' 8 'normal' $INCOGNITO>>
<</if>>
<<applyExperience 'humiliation' 10 'very' $INCOGNITO>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
The meeting proceeds with <<=setup.getNpcName('npc_manager', 'formal')>> heading for the front of the room, motioning for you to take position at the projector controls as she launches into a presentation.<br>
<br>
<<if $scene.pain>>
Things are going along normally as she gives what sounds like a fairly standard corporate update only to gasp when
<<if $scene.plug_ems && $scene.chastity_ems>>
your <<if setup.isCage()>>cage<<else>>belt<</if>> and rear light
<<elseif $scene.plug_ems>>
your rear lights
<<else>>
your <<if $player.body_ref.penis && $player.body_ref.vagina>>most intimate bits light<<elseif $player.body_ref.penis>><<getWordMyPenis>> lights<<else>>vagina lights<</if>>
<</if>>
up with electrified pain. You glance up in surprise, but <<=setup.getNpcName('npc_manager', 'formal')>> glances your way only long enough to flash a wink before continuing with the presentation.<br>
<br>
<</if>>
<<if $scene.pleasure>>
Sticking to your duties you take notes of any questions from the audience as <<=setup.getNpcName('npc_manager', 'formal')>> takes frequent pauses to clarify questions and concerns. As she is listening to the first of these questions, you shudder as joyous vibrations rumble through your <<if $player.body_ref.penis>>prostate<<else>>rear<</if>>.<br>
<br>
As she flashes a smile before launching into her answer, you know for a fact that the grin is meant for you as you shift in your chair, both fearful of if you can handle additional stimulation without breaking down in public... while also eager to get your next "reward." <br>
<br>
<</if>>
<<if $scene.pain && $scene.pleasure>>
<<=setup.getNpcName('npc_manager', 'formal')>> proceeds like this for the rest of her presentation, your body alternating between being tormented by punishing shocks or your pleasures stoked by brief bursts of vibrating pleasure. Every moment of stimulation amplified even further by the humiliation of being at the front of the room desperately fearful that if you slip for but a moment everyone will know what is going on...
<<elseif $scene.pain>>
The presentation proceeds as you, in full view of the entire room, are secretly tormented by your manager. Like a maestro she stops just short of you crying out, while nonetheless ensuring that you are never long without another torturous shock.
<<else>>
You struggle to focus as the pleasure rolls on, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> seemingly doing everything she can to keep you just short of breaking down in orgasm in full view of the entire room.
<</if>>
<br><br>
When the presentation finally comes to an end, you are a quivering mess, desperately grateful when she cuts out early as she waits for the privacy of the elevator to speak to you directly.<br>
<br>
<<if $scene.pain && $scene.pleasure>>
"@@.npc_manager;Did you have a good time? I knew this was going to be a bit of a dull meeting for you so... I thought I would spice it up while reminding you that wherever we go, whatever else is happening to you, your pleasure and your pain are all mine.@@"
<<elseif $scene.pain>>
"@@.npc_manager;So, what did you think? I will be honest, that meeting was an annoying waste of time, but knowing that you were literally sharing in my pain well... it helped me push through.@@"
<<else>>
"@@.npc_manager;So, it seems like one of enjoyed that meeting. I will be honest, taken as a whole it was an annoying waste of time, but knowing that you were sitting there in public, desperate to cum all thanks to me... well, it helped pass the time.@@"
<</if>>
<br><br>
Trembling submissively, you meekly follow her back to the office where she leaves you off at your desk to return to work, still intimidated at her demonstration of intimate control.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: work while manager is at meeting with punishment on the horizon
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
You continue to work while your <<=setup.getNpcName('npc_manager', 'title')>> is at her meeting. The whole while there is a bothersome fear in the back of your mind at her promised "punishment," but you can see little to do save keep your head down and hope that she shows leniency.<br>
<br>
After some time, she returns heading past your desk without a glance to leave you in momentary relief before returning a few moments later with the familiar "For <<if $fetish.sissy>>SISSI <</if>>Secretary use only" pink paddle in hand.<br>
<br>
"@@.npc_manager;Get up and bend over.@@" She commands while looming over your desk.<br>
<br>
[<<moveTo "event_work_meeting_stage_3_punishment_2" "Continue." 60>>]
</div>/*#
#desc: manager punishes you post-meeting for not being remote controlled
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 8 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You do as commanded under her stern gaze, rising to your feet and then bending over with your elbows on the desk as she circles around.<br>
<br>
Teasing you as prologue she rubs the leather paddle against your rear.
<<if $scene.pain && $scene.pleasure>>
"@@.npc_manager;Now then, my recalcitrant slave, why did you forget to come equipped? Pleasure and pain those are the tools by which I will sculpt you into the perfect, obedient secretary, but if you neglect to fill yourself, to plug that cute ass like I know you love... well... then I am forced to rely on more blunt measures.@@"
<<elseif $scene.pain>>
"@@.npc_manager;Now, I know that pain can be scary, I mean, that is somewhat the point, after all, but it is also one of the swiftest methods of correcting a wayward <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. Without the ease of administering correction at the push of a button well... I am left resorting to more blunt measures.@@"
<<else>>
"@@.npc_manager;Sometimes you quite confuse me, you know? After all, we both know how much you just love feeling those delightful vibrations deep in your cute <<if $fetish.sissy>>SISSI<<else>>girl<</if>> hole... and yet here you are, failing to be properly plugged! The functionality of immediate rewards is not some sort of game, it is for your own good and to accelerate your training. If you insist on being neglectful like this well... the only alternative is punishments in a more... blunt manner.@@"
<</if>>
<br><br>
The paddle lands hard against your rear and you cry out, a flurry of blows having you whimpering and begging her forgiveness.<br>
<br>
Finally stopping she moves around to your side, using the paddle to raise your chin and turn your face towards her. "@@.npc_manager;So, have you learned your lesson? Can I expect that cute rear to be properly stuffed and ready for correction, and reward, in the future?@@"<br>
<br>
You nod softly and she smiles.<br>
<br>
"@@.npc_manager;Excellent... though, I will say I do quite enjoy pulling out the old standards from time to time. There is just something about the feeling of paddling a nice cute <<if $fetish.sissy>>SISSI<<else>>girl<</if>> bum...@@" She lashes out with another blow that has you yelp in surprise. "@@.npc_manager;Ah, simply wonderful.@@"<br>
<br>
Without further word she returns to her room leaving you to, tenderly, take your seat and resume working.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: stage 3 meeting
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pain = ($scene.plug_ems || $scene.chastity_ems)>>
<<set $scene.pleasure = $scene.plug_vibe>>
<<if $scene.pain>>
<<if $scene.plug_ems && $scene.chastity_ems>>
<<applyExperience 'bdsm' 14 'terrible' $INCOGNITO>>
<<else>>
<<applyExperience 'bdsm' 11 'terrible' $INCOGNITO>>
<</if>>
<</if>>
<<if $scene.pleasure>>
<<set $player.timebased.horny = 90>>
<</if>>
<<if $scene.pain && $scene.pleasure>>
<<applyExperience 'submission' 12 'unbelievable' $INCOGNITO>>
<<elseif $scene.pain>>
<<applyExperience 'submission' 10 'very' $INCOGNITO>>
<<else>>
<<applyExperience 'submission' 8 'normal' $INCOGNITO>>
<</if>>
<<applyExperience 'humiliation' 10 'very' $INCOGNITO>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png">>
<div id="invframe" class="scrolltext">
You accompany your <<=setup.getNpcName('npc_manager', 'title')>> to another meeting that sees her spend the time
<<if $scene.pain && $scene.pleasure>>
teasing and tormenting
<<elseif $scene.pain>>
tormenting
<<else>>
teasing
<</if>>
you by remote to keep you "alert." Barely keeping yourself together, you notice that you are not the only assistant who is looking a bit flush, sharing a comforting glance with some of the other girls as they too shift nervously in their seats.<br>
<br>
When the presentation finally comes to an end, you are a quivering mess, desperate to get back to the privacy of your desk to calm down. Unfortunately, <<=setup.getNpcName('npc_manager', 'formal')>> has other plans, tormenting you by having you follow her around after the meeting has concluded, exchanging meaningless platitudes with other attendees as you wait in anticipation of another jolt of stimulation that never comes...<br>
<br>
Back at your desk, you almost melt into your chair, feeling like an over-stimulated puddle of nerves as she graces you with a smile and then disappears into her office.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: pre meeting root in stage 4
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Checking your <<=ps(setup.getNpcName('npc_manager', 'title'))>> calendar you note with some measure of trepidation that there appears to be a meeting scheduled with an invitee list composed of what looks like nobody lower level than a department head — plus a few board members.<br>
<br>
<<if $npc_manager.flags.meeting_stage > 4>>
<<printThought "Hmm... I wonder if I'm going to get gang-banged like last time? Knowing this company... probably...">><br>
<br>
<</if>>
[<<moveTo "event_work_meeting_stage_4_meeting_1" "Gather your things and prepare to attend her." 60 "<<set $scene.ready=true>>">>]<br>
[<<moveTo "event_work_meeting_stage_4_meeting_1" "Remain at your desk and continue working." 60 "<<set $scene.ready=false>>">>]
</div>/*#
#desc: work meeting root in stage 4
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<include "calcPlugFunctions">>
<<if $scene.ready>>
<<applyExperience 'smart' 2 'little' $SEEN_FRIEND>>
<<applyExperience 'submission' 7 'little' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<changeHorny 5>>
<<else>>
<<applyExperience 'bimbofication' 5 'little' $SEEN_FRIEND>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<set $scene.chastity_ems = setup.checkItemTypeTag('cage', ['ems'])>>
<<if $scene.plug_ems || $scene.chastity_ems>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<if $scene.plug_ems && $scene.chastity_ems>>
<<applyExperience 'bdsm' 15 'little' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 12 'little' $SEEN_FRIEND>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<applyExperience 'bdsm' 8 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.ready>>
Gathering your things, you are standing at attention and ready to go when <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office.<br>
<br>
"@@.npc_manager;Lovely.@@" She states with a smile, producing her phone and tapping a quick command
<<if $scene.plug_vibe>>
that has the plug in your rear buzzing <<if $player.body_ref.penis>>against your prostate<<else>>inside your rear<</if>> just long enough to elicit a soft moan from your lips. "@@.npc_manager;Come along now, my good girl, we have a meeting to attend.@@"
<<elseif setup.checkItemTypeWorn("plug")>>
that has your chair stimulating you strongly. "@@.npc_manager;Hmm, it would seem that your negligence means that you are to be, if not empty... still ill-equipped. Unfortunately conference room chairs are not so well equipped as your desk. You really should remember to come to work with that cute hole of yours PROPERLY occupied.@@"
<<else>>
that has your chair stimulating you strongly. "@@.npc_manager;Hmm, it would seem that your negligence means that you are to be empty. Unfortunately, conference room chairs are not so well equipped as your desk. You really should remember to come to work properly plugged.@@"
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and, seeing you still seated at your desk, frowns before silently pulling out her phone and typing in a code.<br>
<br>
<<if $scene.plug_ems || $scene.chastity_ems>>
You cry out and jump as painful electricity
<<if $scene.plug_ems && $scene.chastity_ems>>
punishes you from both directions, your plugged rear<<if $player.body_ref.vagina && $player.body_ref.penis>>, cunt and <<getWordMyPenis>><<elseif $player.body_ref.vagina>> and clit<<else>> and <<getWordMyPenis>><</if>> tortured equally.
<<elseif $scene.plug_ems>>
courses through your ass.
<<else>>
courses through your <<if $player.body_ref.vagina && $player.body_ref.penis>>cunt and <<getWordMyPenis>><<elseif $player.body_ref.vagina>>clit<<else>><<getWordMyPenis>><</if>>.
<</if>>
<br><br>
"@@.npc_manager;Well, what did you expect? Failing to stay on top of my schedule and prepare yourself... well, do not sit there, we have a meeting to attend... unless you are in the mood for another round, on a higher power?@@"<br>
<br>
Still catching your breath, you quickly shake your head and grab your notebook before hurrying to follow her.
<<else>>
When you fail to react she frowns. "@@.npc_manager;What? Did you neglect to equip yourself for proper immediate feedback? No, no, that will not do at all. Alas, I am in too great a need of your assistance and so I must bring you along, even if you are ill-equipped for your duties. Come along, now.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo "event_work_meeting_stage_4_meeting_2" "Continue." 300>>]
</div>/*#
#desc: stage 4 meeting intro
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first_time = $npc_manager.flags.meeting_stage == 4>>
<<set $npc_manager.flags.meeting_stage = 5>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_conference_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first_time>>
You ride up several more floors before disembarking the elevator, nervously following her up a hallway of polished marble, feeling more like you are in a palace than a corporate building.<br>
<br>
Entering the "conference room" for the first time at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> heels you are taken aback by the grandeur of the room. The palatial design of the hallway only increases, dark wood panels cover the walls with matching heavy furniture dominated by the magnificent meeting table and chairs occupying the centre of the room. Heavy leather club chairs arranged around low coffee tables occupy the periphery of the room giving the indication that this room was designed for entertaining, its inspiration clearly taking after a banquet hall from some royal estate.<br>
<br>
Over it all stare portraits of elderly men looking down onto the centre of the room, ostentatious frames naming them as past chairmen of the company.
<<else>>
You once again travel upwards to what you think of as the "palace" floor to enter the imposing board room at the heels of <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> takes her place at the head of the table indicating a chair slightly behind her and to her left for you. You take your seat as the other attendees of the meeting enter and take their seats each one giving a nod of recognition to <<=setup.getNpcName('npc_manager', 'formal')>> which she accepts in each turn. Like your <<=setup.getNpcName('npc_manager', 'title')>>, most of the attendees come with assistants of their own<<if !State.hasPlayed("event_nintendolls_destroy_14")>>,
including <<=setup.getNpcName('npc_nintendolls', 'formal')>> trailed by <<his npc_nintendolls>> pitiful "assistant." Your heart cannot help but go out to the poor dear, her mouth spread wide around a massive ball gag, body held rigid by combination of towering thigh-high ballet boots and a hobble skirt that melds directly into a narrow corset and then up to a steep posture collar, the only gaps are for her leather-gloved, and cuffed, arms, her massive pierced breasts and a circular gap over her crotch that serves to embarrass her by putting her caged <<if $fetish.sissy>>sissy <</if>>clitty on display.<br>
<br>
Wobbling slightly she manages to take her seat without stumbling, though from the way her eyes swell you can guess her hard landing shoved the non-trivial plug deeper into her stuffed and spread ass. Though none of the other board members have an assistant quite as helpless as <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> most bear at least some degree of fetishistic attire or bondage.
<<else>>
fetishistically attired assistant.
<</if>>
From the way people look at each other it would seem the meeting serves a secondary purpose for a bit of jockeying and showing off by way of the on-display assistants.<br>
<br>
In all cases the subordinate takes a seat demurely behind their principal and it is not long before <<=setup.getNpcName('npc_manager', 'formal')>> brings the meeting to order.<br>
<br>
<<if $scene.first_time>>
[<<moveTo "event_work_meeting_stage_4_meeting_3" "Continue." 300>>]
<<else>>
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_1" "Continue." 1200>>]
<</if>>
</div>/*#
#desc: stage 4 meeting main
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_conference_room.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> brings the meeting to order with a short introducing that includes specifying that "@@.npc_manager;My secretary will be taking minutes@@" with a dismissive wave of her hand. You note the time and sit forward in your chair to focus on your duties, notepad open and ready to record.<br>
<br>
The meeting continues and you dutifully record the various key discussions and decisions made ticking each item off an agenda that had been laid out at the start of the meeting. Finally, the meeting reaches the final agenda topic and <<=setup.getNpcName('npc_manager', 'formal')>> motions for you to rise and read off the summary.<br>
<br>
Reaching the end you prepare to pack up and leave only for an executive you do not recognise to raise <<his>> hand and propose "@@.generic_male1;One additional item of business.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> yields the floor with a nod as the <<man>> rises to <<his>> feet. "@@.generic_male1;I would like to add an extra item to the agenda,@@" <<he>> explains, ignoring the frustrated looks from some members around the table. "@@.generic_male1;In commemoration of the sterling job that Miss <<=$player.last_name>> has done at chronicling this meeting,@@" you blush slightly as you look around at the appreciative, and in some cases predatory, smiles. "@@.generic_male1;So I think we should take a vote on this final extraordinary item@@" <<he>> pauses, as if relishing what <<he>> is about to say, only continuing after flashing you a quick wink. "@@.generic_male1;Can I get a second for the proposal that we should all fuck the minute taker?@@"<br>
<br>
<<printThought "Wait, what??">><br>
<br>
[<<moveTo "event_work_meeting_stage_4_meeting_4" "Continue." 300>>]
</div>/*#
#desc: stage 4 meeting main
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_conference_room.png">>
<div id="invframe" class="scrolltext">
"@@.npc_nintendolls;Seconded!@@"<br>
<br>
"@@.generic_male2;Third!@@" another voice adds, seemingly half the room — the non-assistant half, hurrying to voice their approval of the proposal.<br>
<br>
"@@.npc_manager;The motion is carried, are there any objections?@@" Silence follows and she nods soberly "@@.npc_manager;-carried unanimously. Do be sure to record that, <<=$player.first_name>>, the meeting has not been dismissed and thus you are still charged with recording all significant occurrences.@@"<br>
<br>
People begin to rise and move around the table in your direction as
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
you are overcome with joy, scarcely able to believe that such a wonderful fantasy of being gang-banged by so many <<men>> is about to happen!
<<else>>
your heart pounds with excitement, is this really about to happen?
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
you feel suddenly very small and nervous.
<<else>>
you realise that yes, this is really about to happen.
<</if>>
<</if>>
<br>
Turning to you, she says, "@@.npc_manager;Make sure you record who fucked you each time as these are part of the official company records,@@" turning back to the meeting she added "@@.npc_manager;<<if $player.body_ref.vagina>>her cunt is mine, but her ass and throat temporarily belong to all of you. That said, <</if>>I am asserting droit de maitresse.@@" She lifts up a <<if $scene.first_time>>bag you had not noticed before<<else>>familiar bag<</if>> to pull out the strap on that <<if $scene.first_time>> had so thoroughly plundered your then novice bum back during<<else>>she has so delighted plowing you with going all the way back to<</if>> your graduation. "@@.npc_manager;Better get ready <<=$player.first_name>>. We would not want to ruin your outfit so best if you stripped naked@@" she says as she casually moves her heavy chair out of the way and nods for you to bend over the table.<br>
<br>
[<<moveTo "event_work_meeting_stage_4_meeting_5" "Refuse!" 60 "<<set $scene.style='forced'>>">>]<br>
[<<moveTo "event_work_meeting_stage_4_meeting_5" "Put on a show as you shed your clothes." 300 "<<set $scene.style='striptease'>>">>]<br>
[<<moveTo "event_work_meeting_stage_4_meeting_5" "Prepare yourself." 300 "<<set $scene.style='strip'>>">>]
</div>/*#
#desc: stage 4 meeting main
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plugged = setup.checkItemTypeWorn("plug")>>
<<if $scene.plugged>>
<<set $scene.hollow = setup.checkItemTypeTag('plug', ['hollow'])>>
<</if>>
<<switch $scene.style>>
<<case 'forced'>>
<<if $fetish.get_raped>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<<if $scene.plugged && $scene.hollow>>
<<applyExperience 'anal' 17 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<</if>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'bdsm' 8 'normal' $EXPOSED>>
<<applyExperience 'cum' 11 'terrible' $EXPOSED>>
<<alterStatAllWorn 'cum' '["add",60]'>>
<<else>>
<<applyExperience 'humiliation' 10 'terrible' $EXPOSED>>
<</if>>
<<if !$player.sec_style.sex.airtight>>
<<set $player.sec_style.sex.airtight = "forced">>
<</if>>
<<case 'striptease'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if !$player.sec_style.sex.airtight>>
<<set $player.sec_style.sex.airtight = "obedient">>
<</if>>
<<case 'strip'>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<if !$player.sec_style.sex.airtight>>
<<set $player.sec_style.sex.airtight = "obedient">>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_conference_room.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'forced'>>
<<if $fetish.get_raped>>
You start to object, but <<=setup.getNpcName('npc_manager', 'formal')>> seems to anticipate your move, taking the opportunity to shove a large ring gag into your mouth and then slam you down over the table. With a rough pull she exposes your ass,
<<if $scene.plugged>>
<<if $scene.hollow>>
not even removing your plug, instead ramming through its gaping centre hole and in so doing stretch you to the limit.
<<else>>
your plug popping free to skitter across the floor before her artificial cock slams into your hole.
<</if>>
<<else>>
her artificial cock slamming into your hole.
<</if>>
<br><br>
You howl through your gag as she pulls you up by your hair. Turning in place with the cock rooted in your ass acting to steer you are soon face to face with a flesh and blood penis, <<if State.hasPlayed("event_nintendolls_destroy_14")>><<=ps(setup.getNpcName("npc_pokerman","formal"))>> cock barely even presented before it<<else>><<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> cock, to be specific as you momentarily recognise it in the instant before control of your head is passed off and <<he npc_nintendolls>><</if>> begins slamming up through your gag to use your skull as a personal onahole.<br>
<br>
Wide-eyed and spit-roasted you can do nothing but take it, your pounding treatment punctuated by a final hard slap on your ass when <<=setup.getNpcName('npc_manager', 'formal')>> slides out and calls out "@@.npc_manager;Next!@@"<br>
<br>
For what feels like eternity — or slightly less than half an hour, your body is ravaged, slapped and showered in cum. Neither hole goes more than a handful of seconds without being filled, every "executive" taking you at least once and, towards the end, a few of the other assistants jumping in<<if !State.hasPlayed("event_nintendolls_destroy_14")>>, including <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> helpless slut who, temporarily freed of her clitty cage, seems to take particular delight in harshly face-fucking you until she fills your mouth with her <<if $fetish.sissy>>sissy<<else>>girly<</if>> product. Her turn passed you are on to being violated by yet another, larger cock while she is locked away once again<</if>>.<br>
<br>
Unable even to stand by the halfway point you eventually pass out, awakening to find yourself seated at your desk back in your office, clothes dripping with <<getWordCum>>, the gag removed from your sore mouth, <<if $scene.plugged>>with your plug replaced, <</if>>your belly gurgles with its full cargo of cum.<br>
<br>
Whimpering slightly at the mad torment that is your "job" you reach for your keyboard to resume more "normal" work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 1800 "<<completeWorkEvent>>">>]
<<else>>
You are about to object, as futile as such an effort might be, given the circumstances, when the room is brought to a halt by a voice from the door.<br>
<br>
"@@.npc_boss;I do hate to interrupt the festivities but... I have another meeting scheduled shortly and there would not be time for the cleaning staff to come through. Please, be on your way.@@"<br>
<br>
Powerful <<men>> with their cocks already out and half hard hurriedly dress themselves and file out, cowed by the authority of the CEO.<br>
<br>
You stand in shock at this seeming miraculous rescue, following your <<=setup.getNpcName('npc_manager', 'title')>> to the exit only to be stopped by <<=setup.getNpcName('npc_boss', 'other')>>.<br>
<br>
"@@.npc_boss;I suppose a special apology is due to you.@@" <<He npc_boss>> states, a slight mocking tone in <<his npc_boss>> voice "@@.npc_boss;After all, I imagine a slut like yourself would be quite crushed to go through the rollercoaster of thinking she was about to be gang-raped only to have the opportunity whisked away...@@" <<He npc_boss>> cups your chin and looks into your eyes and you reflexively tense, wondering what it is <<he npc_boss>> sees.<br>
<br>
The moment lasts but a few seconds and then <<he npc_boss>> turns away, leaving you and <<=setup.getNpcName('npc_manager', 'formal')>> to return to your office, her strap-on somehow having disappeared back into her bag in the commotion.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>>">>]
<</if>>
<<case 'striptease'>>
Heart racing in anticipation you take the extra time to sensuously remove you clothes, garments falling to the floor as you strip to your underwear and then remove that as well,
<<if $scene.plugged>>
<<if $scene.hollow>>
leaving the hollow plug gaping your ass you bend over in invitation, mind already awhirl with anticipation at the fact it upgrades nearly any member into a hole-stretching <<if $fetish.sissy>>sissy<<else>>girly<</if>>-pleaser.
<<else>>
concluding by sliding the plug from your ass and bending over to present your rear to your manager. With a little wiggle you invite her in before looking around for a likely cock to be your first customer at the other end as you bend forward and spread your lips wide.
<</if>>
<<else>>
her artificial cock slamming into your hole.
<</if>>
<br><br>
[<<moveTo "event_work_meeting_stage_4_meeting_6" "Get fucked." 300>>]
<<case 'strip'>>
In too much of a hurry for decorum your clothes practically disappear off of your body before you bend
<<if $scene.plugged>>
<<if $scene.hollow>>
over, the hollow plug in your ass having you already gaping and ready for your <<=ps(setup.getNpcName('npc_manager', 'title'))>> use.
<<else>>
over and, after sliding the plug out of your rear presenting yourself for your <<=ps(setup.getNpcName('npc_manager', 'title'))>> strap-on.
<</if>>
<<else>>
over and present your gaping rear hole to your <<=setup.getNpcName('npc_manager', 'title')>>.
<</if>>
<br><br>
[<<moveTo "event_work_meeting_stage_4_meeting_6" "Get fucked." 300>>]
<<default>>
ERROR unexpected scene.style: <<=$scene.style>>
<</switch>>
</div>/*#
#desc: stage 4 meeting main
#status: FINISHED 0.7.0.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<<if $scene.plugged && $scene.hollow>>
<<applyExperience 'anal' 17 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<</if>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'submission' 18 'very' $EXPOSED>>
<<applyExperience 'cum' 16 'normal' $EXPOSED>>
<<applyExperience 'bimbofication' 16 'terrible' $EXPOSED>>
<<set $scene.slutlust = setup.getTotalValue("bimbofication") + setup.getTotalValue("penis")>>
<<applyFatigue 50>>
<<set $scene.removeChastity = setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_conference_room.png">>
<div id="invframe" class="scrolltext">
Exercising her declared right <<=setup.getNpcName('npc_manager', 'formal')>> moves behind you to accept your invitation.
<<if $player.body_ref.vagina && $player.virgin.vaginal>>
To your surprise <<=setup.getNpcName('npc_manager', 'formal')>> bypasses your rear hole to instead
<<if $scene.removeChastity>>
unlock your chastity belt and
<</if>>
use your <<getWordVagina>>, your arousal making her entrance slick and smooth, her artificial cock staking a claim hard and deep. She tilts her hips to directly target your g-spot and
<<else>>
<<if $scene.plugged>>
<<if $scene.hollow>>
Your already gaping ass is filled and swelled wide as she forces her way through the centre hole of your hollow buttplug.
<<else>>
The brief feeling of emptiness from your absent plug is swiftly remedied as the lubricated tip of her strap on presses into the space so recently voided.
<</if>>
<<else>>
There is nothing to slow her down from pressing the lubricated tip of her strap-on against, and then into, your waiting hole.
<</if>>
As she pushes forward and the shaft enters further into your quivering backside,
<</if>>
you can do nothing but moan.<<if !State.hasPlayed("event_nintendolls_destroy_14")>> As your lips part to release your expression of pleasure, you catch a momentary glimpse of <<=setup.getNpcName('npc_nintendolls', 'formal')>>, <<his npc_nintendolls>> fly undone to release <<his npc_nintendolls>> trouser sausage. You need no further invitation to spread your lips even wider to receive <<him npc_nintendolls>> and start to suck avidly.<</if>><br>
<br>
"@@.npc_manager;Do not forget to record meeting participants and their actions taken,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states<<if $player.body_ref.vagina && $player.virgin.vaginal>> as she switches from plowing your <<getWordVagina>> to fucking your rear<</if>>. Your assenting response is muffled by the <<man npc_nintendolls>> meat plugging your throat but, while taking it deep from both ends, you manage to reach out for your notebook and begin a ledger:
/%TODO; boipussy, etc?%/
Ass: <<=setup.getNpcName('npc_manager', 'formal')>><br>
Face-hole: <<if State.hasPlayed("event_nintendolls_destroy_14")>><<=setup.getNpcName("npc_pokerman","formal")>><<else>><<=setup.getNpcName('npc_nintendolls', 'formal')>><</if>><br>
<<if $player.body_ref.vagina && $player.virgin.vaginal>>
<<getWordVagina>>: <<=setup.getNpcName('npc_manager', 'formal')>><br>
<</if>>
Mood:
<<if $scene.slutlust > 20>>
<<if $scene.slutlust > 30>>
in heaven
<<else>>
ecstatic
<</if>>
<<else>>
<<if $scene.slutlust > 10>>
aroused
<<else>>
overwhelmed
<</if>>
<</if>>
<br><br>
Sucking hard as you are pounded deep it is not long before you get your first
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
heavenly
<<else>>
yummy
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
strangely alluring
<<else>>
bitter
<</if>>
<</if>>
taste of cum, barely giving the chance to lick your lips and swallow before a new cock is stuffed into your hole. You do not even see the <<mans>> face, but <<he>> gives you <<his>> name and title so that you may note it appropriately before <<he>> sets to work, gripping your head tight as <<he>> pounds away, making up for <<his>> modest size with vigour.<br>
<br>
Pegging your ass <<=setup.getNpcName('npc_manager', 'formal')>> is incapable of "cumming" in the traditional sense, but she gives you a good hard pounding to "warm you up" before stepping away and allowing the next user to plug your cock-socket. Not as large and gloriously hard as your <<=setup.getNpcName('npc_manager', 'title')>>
<<if $scene.plugged && $scene.hollow>>
the added girth of your plug keeps you from feeling too empty
<<else>>
<<he>> slides into you with ease
<</if>>
and you moan and slobber around the <<getWordPenis>> in your mouth as you are given a momentary easing that last just long enough to record the "progression" of your anal occupancy before the two <<men>> commence to give it to you hard and deep.<br>
<br>
Thoughtfully someone sends one of their assistants to crawl underneath you, the unseen girl unable to do much save <<if $player.body_ref.penis>>tease your <<getWordMyPenis>> as she slurps up your copiously spilled pre,<<else>>lick at the creek of arousal running down your thighs,<</if>> but you yet appreciate the effort as you make an appropriate note of the occurrence.<br>
<br>
Despite the herky-jerky rhythm enforced by your record-keeping requirements you are not left wanting; each executive pumping at least one load of their elite cum into <<if $player.body_ref.vagina && $player.virgin.vaginal>>their preference of holes<<else>>you<</if>> before a few of them allow their assistants to take a turn. While your jaw is by now a bit sore from use it is almost soothing to spend some time licking pussy or sucking on a delicately soft <<if $fetish.sissy>>sissy<<else>>girl<</if>> penis.<br>
<br>
<<if State.hasPlayed("event_nintendolls_destroy_14")>>
The brief tenderness comes to an end, however, when <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> assistant is allowed to take its turn. You catch a cruel glint in their eye, the grudge they must hold against your perceived role in their transformation fighting its way through their submissive re-programming as their cage is removed to reveal a <<getWordPenis false>> even larger than their owners!<br>
<br>
They teeter atop their ballet heels as they walk around your body and you struggle to keep from falling over a moment later when they slam into you from behind. Even with them grinding deep against your hips their enthusiasm is in excess of their balance as you find yourself quite grateful for the "support" of your next oral user to keep you from face-planting onto the floor.<br>
<br>
Whatever ill-will fed enthusiasm is no match for your now well-used and slick rear, their climax joining the rest of the sea of cum <<if $player.body_ref.vagina && $player.virgin.vaginal>>filling your womb and <</if>>coursing up through your bowels and they stagger away to be re-caged.<br>
<br>
<</if>>
<<if $scene.slutlust > 20>>
<<if $scene.slutlust > 30>>
Alas, the heavenly experience eventually winds down, the slight stiffness in your joints and soreness in your holes hardly noticed as you immediately find yourself reminiscing about how much you enjoyed "taking minutes."
<<else>>
Alas, all good things must come (or is that cum?) to an end as you let out a sigh, your body a bit sore, certainly, but quite content.
<</if>>
<<else>>
<<if $scene.slutlust > 10>>
Finally, it is over, your holes sore, joints stiff and mind half-melted from the experience.
<<else>>
Finally, it is over, your holes sore, joints stiff and addled brain all but shut down by the experience.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_work_meeting_stage_4_meeting_7" "Continue." 300 "<<useClothSetPop 'tmp'>>">>]
</div>/*#
#desc: post meeting in stage 4
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 20 'very' $EXPOSED>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 16 'normal' $ALONE>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_45'
10
'event_psychiatrist_session_manager_meeting_gangbang_1'
true
>>
<<if $scene.removeChastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Wiped somewhat clean of sweat you watch the attendees trickle out of the room as you <<if $scene.removeChastity>>are locked back in chastity and <</if>>allowed to put your clothes back on and follow your <<=setup.getNpcName('npc_manager', 'title')>> out. "@@.npc_manager;Have a good time?@@" She asks with a smile.
<<if $player.flags.humiliationStyle == "brazen">>
You fire back with a wide grin and an eager nod, licking your lips in hopes that you might find some lingering drops of cum.
<<else>>
your bashful blush serves as your answer.
<</if>>
<br><br>
She laughs as you ride the elevator back down to your office. Leaving you at your desk she hands you your notepad as you embarrassingly realised you had forgotten it.<br>
<br>
"@@.npc_manager;Do please hurry and type up the minutes — important meetings like this need be mailed out to all department heads and principals as well as archived for posterity. Note that, since the meeting did not cover confidential matters, that also includes forwarding to intranet notice-boards as well as our subsidiaries.@@" You nod obediently and begin flipping through your notes. "@@.npc_manager;And just a reminder, that does mean ALL of the meeting. Those who were remote or otherwise not in attendance need to be made aware of what occurred in their absence.@@"<br>
<br>
You gulp as you find yourself looking through page after page of meticulous documentation of your extended gang-bang. With a final wink she spins on her heels and disappears into her inner office before you can even consider objecting.<br>
<br>
Your cum-filled belly gurgling you sigh and set to work transcribing your notes, your body reacting with simmering arousal at the "reliving" of your experience despite the humiliating thought of nearly the entire company being able to read of your escapades...<br>
<br>
[<<moveTo $scene.workEventReturn "Send the email and resume your other work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: stage 4 meeting repeat main
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_conference_room.png">>
<div id="invframe" class="scrolltext">
You act as note-taker for another high-level executive meeting, the conclusion of which sees the motion once again raised and enthusiastically passed that they finish up by fucking the minute taker; ie, you.<br>
<br>
<<if $fetish.get_raped>>
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_2" "Refuse!" 60 "<<set $scene.style='forced'>>">>]<br>
<<else>>
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_2_noforce" "Refuse!" 300>>]<br>
<</if>>
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_2" "Resign yourself and just go along." 1800 "<<set $scene.style='neutral'>>">>]<br>
[<<moveTo "event_work_meeting_stage_4_meeting_repeat_2" "Enthusiastically offer yourself." 1800 "<<set $scene.style='enthusiastic'>>">>]
</div>/*#
#desc: stage 4 meeting repeat sex
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 11 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_conference_room.png">>
<div id="invframe" class="scrolltext">
Trembling in fear at the prospect of being fucked by an entire roomful of executives you are saved when your <<=setup.getNpcName('npc_manager', 'title')>> responds to the resolution by explaining that, unfortunately, the meeting has run long as there is insufficient time to "@@.npc_manager;Give this slut what she deserves.@@"<br>
<br>
Counting your blessings you hurry after your <<=setup.getNpcName('npc_manager', 'title')>>, soon back at the comparative safety of your desk where you commence to type up the minutes as is your job.<br>
<br>
[<<moveTo $scene.workEventReturn "Continue working." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: stage 4 meeting repeat sex
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.plugged && $scene.hollow>>
<<applyExperience 'anal' 17 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'anal' 15 'terrible' $EXPOSED>>
<</if>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'cum' 11 'terrible' $EXPOSED>>
<<applyFatigue 50>>
<<switch $scene.style>>
<<case 'forced'>>
<<applyExperience 'bdsm' 8 'normal' $EXPOSED>>
<<alterStatAllWorn 'cum' '["add",60]'>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<<case 'neutral'>>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<<case 'enthusiastic'>>
<<applyExperience 'humiliation' 18 'normal' $EXPOSED>>
<<applyExperience 'penis' 17 'terrible' $EXPOSED>>
<<applyExperience 'bimbofication' 18 'terrible' $EXPOSED>>
<</switch>>
<<include "addTypingEvent">>
<<if !State.hasPlayed("event_work_meeting_notetaker_followup_1") && !setup.hasRandomEvent('work_bathroom_female', 'notetaker') && !State.hasPlayed("event_gang_intro_2")>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'notetaker' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Executive Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/executive_conference_room.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.style>>
<<case 'forced'>>
You try to object to this treatment, but is to no avail as, with your <<=setup.getNpcName('npc_manager', 'title')>> looking on dispassionately, you are slapped, shamed and fucked in every hole by the executives, finally left in a ruined heap, cum leaking out of both ends.<br>
<br> "@@.npc_manager;Come along. You have had your fun, this is no time to be laying down on the job.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states while looming over you, waiting as you stagger to your feet before leading the way back down to your office.<br>
<br>
"@@.npc_manager;You know, things would be easier for you if you just embraced who and what you are, but if you prefer to do things the hard way and get off on the consequences well... that is your choice, as well.@@"<br>
<br>
You merely whimper in response before turning back to your station.
<<case 'neutral'>>
Seeing no use in fighting you surrender to the oncoming gang-bang, soon finding yourself with a <<if $options.fem>>girl<</if>>cock in each hole as the board members take turns ravaging your body. "Going along" keeps things from getting too out of hand and, eventually, with a belly and ass pumped full of cum and feeling a bit tired, you reach the end of dicks and follow your manager back to your office.<br>
<br>
She reminds you that you need to send out the "full" meeting minutes and you nod, turning towards your computer to start typing.
<<case 'enthusiastic'>>
With a wide grin on your face you jump on the first <<if $options.fem>>girl<</if>>dick on offer, bending over so that you can be easily taken from behind while you put your mouth to its best use and use both hands to prep your next suitors. You are in slut heaven as you are repeatedly fucked hard and long, your only breaks coming after each cummeriffic climax when, once the cock at hand (or mouth, or ass) is fully drained you thank them for the honour and take note of their name in your notebook for "record keeping purposes." <br>
<br>
To your frustration you outlast the board and those of their assistants that are allowed to take their turn in using you, taking a final bow as the drained room looks on in awe before gathering your things and following your manager out of the room.<br>
<br>
You are licking your lips in the elevator as you reflect on the memory of your wonderful gangbang when <<=setup.getNpcName('npc_manager', 'formal')>> finally speaks, congratulating you on "@@.npc_manager;An excellent discharge, pun intended, of your duties. <<if !$scene.first_time>> It is wonderful to know that I can always count on your excellent skills of dictation — and dick-taking, a real credit to your position as my <<=setup.getSecretaryTitle()>>.<</if>>@@"<br>
<br>
Back at your desk you don't even have to be reminded, temporarily skipping past typing up the boring summary of discussion in favour of starting in on reminiscing as you write up the delightful summary of your "exploits."
<</switch>>
<br><br>
[<<moveTo $scene.workEventReturn "Resume your work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: run into frustrated note-taker
#status: FINISHED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_nintendolls","npc_nintendolls_business_slave")>>
<div id="invframe" class="scrolltext">
You walk into the bathroom to see another woman on her way out. She seems vaguely familiar, though it's hard to keep track of all the beautiful women who work at the company. From her look of annoyance you get the feeling that the lack of recognition is a one-way street.<br>
<br>
"@@.generic_female1;You,@@" she says with annoyance, seemingly trying to put forth a dominant tone but, despite her height, not quite pulling it off. She glares at you for a moment longer, hazel eyes blinking once... and then the facade slips and she sniffs. "@@.generic_female1;You don't even recognise me, do you? Well I'll have you know that, before you came along as the "perfect pet" of <<=setup.getNpcName('npc_manager', 'other')>> I was the favoured note-taker. Whether I was being fucked, flogged or sucking cock... I even taught myself to write with my off-hand so I could use my GOOD hand to jerk off my manager while I kept notes, whatever it took to simultaneously serve and SERVE.@@"<br>
<br>
You try to think of an appropriate apology but she dismisses with a wave, "@@.generic_female1;don't bother. I have a new job offer working for <<=setup.getNpcName('npc_nintendolls_son', 'formal')>>. Ah, I see you remember the name... but it is not the <<man npc_nintendolls>> that you are probably thinking of. No, Nintendolls is a losing gamble, I'm going to be working for <<his npc_nintendolls>> <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>>, well, less work for than be enslaved by, either way, I'm looking to the future... a future where my service skills will be PROPERLY appreciated.@@" She turns past you with a flick of her dark blonde hair, "@@.generic_female1;good luck with the corporate job.@@"<br>
<br>
You blink as you try to process what she said, at a guess she must have been at the company for quite some time, her obvious sultry and submissive tendencies seemingly perfect for the job, and yet... you shrug and move on, hoping that, whatever she's looking for, she finds it.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Go on about your business." 30>>]
</div>/*#
#desc: sent "downstairs" for thorough cleaning
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstTime = ($npc_manager.flags.severeCleanings == 0)>>
<<set $npc_manager.flags.severeCleanings+=1>>
<<set $scene.severeCleaning = true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.firstTime>>
"@@.npc_manager;No, no, this will not do. Cleanliness was one of your first duties, for you to arrive to work in such condition?@@" She shakes her head. "@@.npc_manager;There was a time when I would have sent you directly home for such an affront but, I confess, now that you have somewhat learned your job, I have become a bit too dependent on you and cannot possibly spare you today. I cannot have you in a representative position in this state, regardless of the cause. That leaves us with no other choice than to get you cleaned up. Follow.@@"<br>
<br>
She walks past you towards the door out of the office.
<<if $scene.directInspect>>
"@@.npc_manager;Come. We must address this issue post-haste.@@"
<<elseif setup.checkPlayerDressed()>>
You hesitate for a moment as she pauses in the doorway. "@@.npc_manager;Well come along! We must attend to these affairs immediately.@@"<br>
<br>
You gulp nervously and hurry after her.
<<else>>
You reach for your clothing to get dressed only for her to turn back with a deepening scowl.<br>
<br>
"@@.npc_manager;We do not have time for that, and you will only get them more dirty now come, follow.@@"<br>
<br>
Wincing and embarrassed, you hurriedly obey, rushing to catch up as she swiftly strides towards the elevator.
<</if>>
<<elseif $scene.coffeeSpill>>
"@@.npc_manager;Well that is quite the misfortune, but cleanliness is one of your core duties, so we really must attend to this before you can begin your work, come.@@"<br>
<br>
You bite your lip and follow after as she leads you to the elevator.
<<else>>
"@@.npc_manager;Again? Truly you try my patience neglecting your hygiene, one of the very first of your duties! Come, let us be off to the cleaners to get you in condition to represent me as my <<if $fetish.sissy>>SISSI <</if>>secretary.@@"<br>
<br>
Nervously remembering your last cleaning you fight against the fog to remember exactly what happened. All you can remember is a strange pleasant happiness at the end of it and yet something inside of you is somewhat afraid. Still, you find yourself obediently following after <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>
<br><br>
[<<moveTo "event_work_cleaning_2" 'Continue.' 60>>]
</div>/*#
#desc: sent "downstairs" for thorough cleaning
#status: RELEASED 0.6.0.0
#ignore_spell: rtwfscw
#*/
<<include enterroom>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $player.location to "Employee Laundry">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_laundry_reception.png" setup.charImage("npc_work","npc_work_laundry_reception")>>
<div id="invframe" class="scrolltext">
<<if $scene.firstTime>>
Riding the elevator down, down, down, you disembark on a floor below ground level. Looking more like a hospital than an office, the walls are polished and clean, every surface spotless, the sound of heels echoing off the hard floor.<br>
<br>
Walking up the hall, you turn in at a door marked simply "Jenny's." <br>
<br>
Inside, you find yourself in a lobby. A latex clad clerk, her face a doll-like mask giving her a permanent smile, nods in acknowledgement.<br>
<br>
Stepping up the counter, <<=setup.getNpcName('npc_manager', 'formal')>> nods as the woman greets her. "@@.generic_female1;Good morning, what service can we provide today?@@"<br>
<br>
"@@.npc_manager;I would like to schedule a full cleaning.@@" She states, her gaze flicking in your direction without even mentioning your name.<br>
<br>
"@@.generic_female1;Of course, and what level of cleaning will you be requesting today?@@"<br>
<br>
Your attention shifts towards the list of "options" on the sign behind the desk, but you barely have time to read more than a few lines before <<=setup.getNpcName('npc_manager', 'formal')>> announces her decision.<br>
<br>
"@@.npc_manager;She is in quite a shape so I believe the round-the-world full squeaky clean wash is in order.@@"<br>
<br>
None of the procedures actually list a description, merely a time, though their names would seem to indicate an increasing degree of "thoroughness." You can't help but gulp when you find the "round-the-world full squeaky clean wash" — it is the very last item in the list, with a duration listed at a full hour.<br>
<br>
"@@.generic_female1;Of course, we will deliver your property looking better than ever!@@" The woman states, handing <<=setup.getNpcName('npc_manager', 'formal')>> a tag with the number <<=random(10000)>> and the acronym RTWFSCW printed on it. Attached to a loop, <<=setup.getNpcName('npc_manager', 'formal')>> clips it around your neck.<br>
<br>
"@@.npc_manager;See you in an hour.@@" She states before leaving.<br>
<br>
You almost jump in fright when you turn back to find a second attendant has silently appeared. This one with a heavy rubber overcoat and intimidating chemical mask over top of a latex outfit. Integrated heels and corset, along with painted-on tightness, makes the whole thing totally revealing despite not a millimetre of skin technically showing. The technician takes you by the hand and leads you on past the desk and through a door as the still "smiling" receptionist waves at you.
<<else>>
<<printThought "This is strange...">><<printThought "I can't wait to be clean!" 40>><br>
<br>
Traveling down, down, down in the elevator you walk through an antiseptic but oddly familiar hallway. Overcome with deja vu you listen as <<=setup.getNpcName('npc_manager', 'formal')>> commissions you for a "round-the-world full squeaky clean wash" — quite a mouthful that the sign listing the various options would seem to indicate is the most through cleaning of all, taking a full hour!<br>
<br>
A tag with the number <<=random(10000)>> and the acronym RTWFSCW is clipped around your throat and <<=setup.getNpcName('npc_manager', 'formal')>> departs, leaving you with the doll-faced latex-clad receptionist and an even more heavily rubbered technician, their outfit a hazmat suit, complete with obscuring chemical mask, but with the heavy rubber skintight, sculpted and incorporating a corset and heels. As you follow behind the technician, you have a distant thought that it is a bit strange how you consider none of this in the least bit odd...
<</if>>
<br><br>
[<<moveTo "event_work_cleaning_3" 'Time to get "clean."' 60>>]
</div>/*#
#desc: cleaned at work slave wash
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<set _x = setup.cleanSexToys()>>
<<washClothes>>
<<set $scene.cageItem = setup.getItemFromType('cage')>>
<<if $scene.cageItem == "">>
<<if $npc_manager.flags.require_chastity>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "chastity_belt_electric">>
<<else>>
<<set $scene.newcage = "electric_chastity">>
<</if>>
<<if !setup.checkItemOwned($scene.newcage)>>
<<addItem $scene.newcage>>
<<elseif !setup.checkItemInInventory($scene.newcage)>>
<<wardrobeToItem $scene.newcage>>
<</if>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set $npc_manager.flags.hascagekey = true>>
<<include "setLastSeenCage">>
<</if>>
<<else>>
<<changeItemStatus $scene.cageItem 'cumsoaked' '["remove"]'>>
<<changeItemStatus $scene.cageItem 'dirty' '["remove"]'>>
<<changeItemStatus $scene.cageItem 'piss' '["remove"]'>>
<<changeItemStatus $scene.cageItem 'sweaty' '["remove"]'>>
<</if>>
<<include "cleanPlayer">>
<<set $player.makeup.template = "normalmakeup">>
<<set $player.makeup.messed = 0>>
<<removeAllClothing>>
/% TODO: hood/cuffs/position? %/
<<set $sceneVisibility = $SEEN_STRANGER>>
<<applyExperience 'submission' 5 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bondage' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'bimbofication' 13 'very' $SEEN_STRANGER>>
<<if $scene.giveSecOutfit>>
<<set $npc_manager.flags.firstcuteoutfit++>>
<<addItemSet 'satin_lingerie_pink'>>
<<addItemSet 'latex_secretary_2'>>
<<wearItemSet 'satin_lingerie_pink' true>>
<<wearItemSet 'latex_secretary_2'>>
<</if>>
<</if>>
<<set $player.location to 'The "Cleaners"'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_laundry.png" setup.charImage("npc_work","npc_work_cleaners") setup.charImage("npc_work","npc_work_cleaners") setup.charImage("npc_work","npc_work_cleaners")>>
<div id="invframe" class="scrolltext">
Taken to a large tiled room, you are chained by the wrist and ankles so that you are bound with arms and legs spread. Additional technicians appear, each wearing identical "uniforms" of sexy-tight hazmat suits.<br>
<br>
You start to ask what is going on only for a strange gag to be shoved into your mouth. Somewhat like a mouthguard, it fits over your teeth, soon followed by a full mask that covers your face as another device is pulled over your hair to finish enclosing your head.<br>
<br>
Blind inside your helmet, you hear a soft, feminine recording begins rhythmically speaking in your ears, the voice almost hypnotic.<br>
<br>
<div id="invframe" class="scrolltext">
<<shinyText "You are a dirty girl. Dirty girls need to be cleaned. Good girls are clean. You want to be a good girl." 0.0>>
</div>
<br>
Unable to see or hear, you can only feel as the remainder of your attire is removed from your body,
<<if setup.checkItemTypeWorn("plug") && !setup.getItemObjFromType('plug').hasOwnProperty('lockable')>>
the plug removed from your rear
<</if>>
leaving you
<<if $scene.cageItem == "">>
<<if $npc_manager.flags.require_chastity>>
completely naked, up to the point a fresh chastity device is locked onto you.
<<else>>
completely and utterly naked.
<</if>>
<<else>>
wearing naught but your chastity device<<if setup.checkItemTypeWorn("nipples")>> and glittering nipple adornments<</if>>.
<</if>>
<br><br>
Having been stripped of almost all sense of the outside world, you jump when a thick, well-lubricated dildo slides into your ass, the dong plunging deep before swelling in size, "locking" itself in place<<if $fetish.bestiality_soft>>, much like a dog's knot<</if>>.<br>
<br>
Nervously panting as you hang in bondage, you are suddenly pelted with water from all directions. You can't even count the number of hoses spraying back and forth over your body, as the plug in your rear joins forces to flood you with a belly-swelling enema.<br>
<br>
Losing your balance under the onslaught, it is only your wrist restraints that keep you off the floor, your feet scrambling for purchase on the wet, slick tile as you try to right yourself and relieve the strain in your shoulders. Assaulted from within and without, you feel a strange movement in your mouth, your "gag" somehow scrubbing all of your teeth at once even as your helmet fills with some manner of liquid.<br>
<br>
The jets shut off and you try to catch your breath, the cramping in your enema-flooded rear exacerbated as the plug begins violently vibrating and sending punishing shocks of electricity up and down your insides.<br>
<br>
<div id="invframe" class="scrolltext">
<<shinyText "You are a dirty girl. Dirty girls need to be cleaned. Good girls are clean. You want to be a good girl." 0.0>>
</div>
<br>
The recording loops constantly, overpowering your thoughts as you are cleaned far more thoroughly than any home shower you've ever taken. Many hands scrub and grope every centimetre of your body, scouring your flesh as your head becomes the centre of a vortex, liquid swirling around what you conclude is an oversized, fish bowl-like helmet to clean your hair in a novel manner.<br>
<br>
<div id="invframe" class="scrolltext">
<<shinyText "You are a dirty girl. Dirty girls need to be cleaned. Good girls are clean. You want to be a good girl." 0.0>>
</div>
<br>
The scrubbing is followed by another hosing off and then tongues and lips moving over your body, licking and kissing you all over as the enema finally flows away, leaving you feeling drained and overwhelmed.<br>
<br>
The tongues are replaced by the jets once again, along with an even bigger enema and more scrubbing.<br>
<br>
<div id="invframe" class="scrolltext">
<<shinyText "You are a dirty girl. Dirty girls need to be cleaned. Good girls are clean. You want to be a good girl." 0.0>>
</div>
<br>
Your tenuous, blind grip on reality falters as time stretches out with you trapped in the whirling vortex of hose, scrub, hose, kiss, repeat. Losing count around the fourth, or was it fifth? Repetition, the only thing you have left to hold on to is the voice in your ear.<br>
<br>
<<printThought "I am a dirty girl. I need to be cleaned. Good girls are clean. I want to be a good girl..." 40>><br>
<br>
When your helmet is finally removed, you are in a daze. The light is too bright, the sexy hazmat-suited technicians almost alien as they move about, styling your hair, replacing your plug and then dressing you in the freshly-cleaned outfit that you had left behind in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
<<if $player.makeup.permanent != "">>
Still quite out of it, you distantly hear someone say something about having applied the "company standard" makeup template over top of your permanently applied appearance.<br>
<br>
<</if>>
<<if $scene.giveSecOutfit>>
Your bondage removed you are in a daze as you are dressed in basic undergarments and a latex rendition of a secretary outfit...
<<else>>
Your bondage removed you sway slightly, a pair of technicians helping you across the damp floor before putting you back into your clothes. The girl at the desk smiling the same latex masked smile as she waves you goodbye.
<</if>>
<br><br>
<<printThought "Good girls are clean... I want to be a good girl..." 40>><br>
<br>
Thoughts foggy, you stagger up the hallway and back to the elevator for the long ride back up.<br>
<br>
<<if !$player.sec_style.body.hair_body>>
[<<moveTo "event_secretary_style_bodyhair_forced_1" "Return to the Office." 300>>]
<<else>>
[<<moveTo "event_work_cleaning_4" "Return to the Office." 300>>]
<</if>>
</div>/*#
#desc: return to office after work slave wash
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.giveSecOutfit>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<<include "inspectionData_plug">>
<<include "inspectionEffects_plug">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
Finding your balance as you walk up the hallway to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office, you find her waiting inside, greeting you with a smile.<br>
<br>
"@@.npc_manager;There, doesn't it feel better to be all clean?@@"<br>
<br>
Still half disconnected from your own body, you nod, it is difficult to focus on anything save the still-repeating mantra echoing in your brain.<br>
<br>
<<printThought "Good girls are clean... I want to be a good girl..." 40>><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> steps closer, running her fingers along your face as she looks into your vacant eyes.<br>
<br>
"@@.npc_manager;They really do such a wonderful job cleaning you inside and out... do not worry, that pleasant foggy feeling is only temporary, though I hope you learned your lesson as to showing up to work a dirty girl.@@"<br>
<br>
You shudder slightly, almost triggered by hearing her speak the words, putty in her hand as she gives you a final gentle pat and returns to her office.<br>
<br>
<<if setup.checkTaskCompleted('manager_morning_inspection_task') != 1>>
Some distant part of you wonders at the fact she seems to have ignored your other transgressions... you feel deeply guilty for these, as well as all of your failures, but you cannot muster the energy to point it out. Apparently your "cleaning" is considered sufficient treatment for the whole package...
<</if>>
Feeling drained, and yet strangely invigorated, you return to your desk and start up your computer.<br>
<br>
[<<moveTo $scene.cleaningReturn "Start working." 60 "<<set $scene.preciselyOnTime = false>>">>]
</div>/*#
#desc: spill on the way to work
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.severeCleanings == 0>>
<<alterStatAllWorn 'dirty' '["add",70]'>>
<<set $currentTasks.manager_morning_inspection_task.finished = true>>
<<else>>
<<set _dex = 18-$npc_manager.flags.severeCleanings>>
<<applyExperience 'dexterity' _dex 'normal' $EXPOSED>>
<<set $scene.dexFail = setup.getTotalValue("dexterity") < 18-$npc_manager.flags.severeCleanings>>
<<if $scene.dexFail>>
<<alterStatAllWorn 'dirty' '["add",70]'>>
<<set $currentTasks.manager_morning_inspection_task.finished = true>>
<<else>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're walking into the office when, to your surprise, the door swings open and another employee almost walks into you!
<<if $npc_manager.flags.severeCleanings == 0 || $scene.dexFail>>
<<if $npc_manager.flags.severeCleanings == 0>>
The both of you try to dodge, but it's too late and, while you avoid a crash,
<<elseif $scene.dexFail>>
You try to dodge, but you just aren't nimble enough and
<<else>>
ERROR: unexpected state
<</if>>
their coffee spills all over the front of your clothes.<br>
<br>
A look of panic in their eyes they dash off up the hallway, leaving you alone as <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head at the sight of your stained clothes.<br>
<br>
<<set $scene.cleaningReturn='event_manager_daily_check_stage_4'>>
[<<moveTo "event_work_cleaning_1" "Continue." 300 "<<set $scene.coffeeSpill = true>><<set $scene.directInspect = true>>">>]
<<else>>
With nimble skill you manage to get out of the way of the waterfall of coffee that goes splashing past you.<br>
<br>
With a look of fear in their eyes the other employee runs away up the hall leaving you alone with <<=setup.getNpcName('npc_manager', 'formal')>> as she surveys the damage.<br>
<br>
"@@.npc_manager;Well well — it would seem you are becoming quite the agile <<if $fetish.sissy>>sissy<<else>>thing<</if>>... not a drop of stain on you, very clever. Shall we continue on to your inspection?@@"<br>
<br>
You nod, taking a deep breath as you take pride in your skill at avoiding calamity.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4" "Continue." 300 "<<set $scene.directInspect = true>>">>]
<</if>>
</div>/*#
#desc: enthusiast delayed phase 1->2 promo
#status: RELEASED 0.8.6.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if setup.checkNaked()>>
<<set $scene.obey = true>>
<<moveTo "event_manager_stage1_end_enthusiast_2">>
<</if>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
It's the end of the day and you walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office where she greets you with an excited smile.<br>
<br>
"@@.npc_manager;Ah! <<=$player.first_name>> come in, come in.@@" You can sense there's something more than a mere after-work assessment in store, and your heart beats slightly faster as she continues. "@@.npc_manager;So with all the excitement of your first week I ran out of time, but I wanted to reward you for your enthusiastic embrace of <<if $player.sec_style.submission.chastity == "enthusiast">>chastity<<else>>being the best <<if $fetish.sissy>>SISSI <</if>>Secretary you can be<</if>>. Being new to this level of restriction I imagine you are feeling a bit... pent up. If you would kindly remove your clothes I thought I could help out with a little lesson on proper pleasure...@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_enthusiast_2" "Remove your clothes, as instructed." 180 "<<set $scene.obey=true>>">>]
<<hint $options "You can still do this manually.">><br>
[<<moveTo "event_manager_stage1_end_enthusiast_2" "What... no, you don't want to do that..." 60 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: strip for enthusiast 1->2
#status: FINISHED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<removeAllClothing>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You shed your clothing, <<=setup.getNpcName('npc_manager', 'formal')>> smiling wider as each item falls to the floor until you are standing wearing <<if setup.checkItemTypeWorn("cage")>>naught but your chastity <<if setup.isCage()>>cage<<else>>belt<</if>><<else>>nothing at all<</if>>, trembling slightly in excitement.<br>
<br>
"@@.npc_manager;Beautiful. As lovely as those clothes look on your body... that body on its own is quite... delicious.@@"<br>
<br>
You bite your lip, still not used to a woman as gorgeous and powerful as <<=setup.getNpcName('npc_manager', 'formal')>> taking such intense interest in you.<br>
<br>
She steps closer, her heels allowing her to loom over you as you stand bare-foot and flat. A hand <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>wraps around your cage<<else>>presses against your belt<</if>> as she whispers, "@@.npc_manager;Locking you up is, of course, primarily about control... but there are other features in this wonderful surrender. Horizons to expand, new, seductive pleasures to embrace...@@"<<else>>brushes between your legs, teasing, but not lingering. "@@.npc_manager;Today is not about that, today is about... broadening your horizons, teaching you of other, more seductive pleasures to embrace...@@"<</if>><br>
<br>
She leads you towards the side of the office and gestures to her couch. "@@.npc_manager;Lie back, my dear.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_enthusiast_3" "Do as she commands." 180>>]
<<else>>
You refuse to strip and <<=setup.getNpcName('npc_manager', 'formal')>> frowns. "@@.npc_manager;And I thought things between us had started so well... excuse me if my politeness obscured the matter. That was not actually a request.@@"<br>
<br>
Her gaze narrows and your heart skips a fearful beat. "@@.npc_manager_dom;Strip. NOW.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_6" "Strip and obey her command." 60 "<<useClothSetPop 'tmp'>><<useClothSetPush 'stage1end'>><<removeAllClothing>><<set $scene.cage=true>>">>]
<</if>>
</div>/*#
#desc: manager dildo stage 1->2 enthusiast
#status: FINISHED 0.8.6.0
#ignore_spell: n
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plugged = setup.getItemFromType('plug')>>
<<setThreshold 'anal' 'secretary_anal' 'stage1_end'>>
<<if $scene.plugged == "">>
<<applyExperience 'anal' 4 'almost' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're too aroused to disobey and soon lie back on your side as you hear the distinctive snap of her sliding a pair of latex gloves over her hands.
<<if $scene.plugged=="">>
A gloved finger slides down your back, exposing your ass.<br>
<br>
<<printThought "This can't be happening?!">><br>
<br>
Her fingers lift your top asscheek up and you feel something pressing against your puckered hole. The sudden coolness is startling as something wet spreads around the ring of your asshole and between your cheeks.<br>
<br>
"@@.npc_manager;I have been managing this department for quite some time now, <<=$player.first_name>>, and seldom have I had such an... enthusiastic hire. That enthusiasm, however... I sense it is paired with a need for guidance, a desire for help in articulating as yet unspoken desires.@@"
<<else>>
A gloved finger slides down your back, exposing your plugged ass to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<printThought "There's no way she'll miss that...">><br>
<br>
Her fingers lift your top asscheek up and you can hear <<=setup.getNpcName('npc_manager', 'formal')>> chuckling softly.
<br><br>
"@@.npc_manager;You are just so full of surprises, <<=$player.first_name>>. I cannot say that I am displeased by this one, no this does not displease me in the slightest.@@"<br>
<br>
You feel her fingers probing at the plug, pushing and pulling against it. In a matter of seconds you're moaning and gently bucking your ass, trying to match the motions of her fingers. Your efforts to get more stimulation are in vain as her fingers grip the base of the plug and begin to pull. "@@.npc_manager;Relax your rear, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@" You comply, taking a deep breath, through your nose and pushing out with your ass. In one smooth motion the plug slides from your asshole, leaving you feeling momentarily empty.<br>
<br>
"@@.npc_manager;A plug can be such a wonderful tool... but it is just that, a tool, inert, static, nothing like the touch of another...@@"
<</if>>
You can feel her body shift on the couch as a gloved finger begins massaging your nervous hole.<br>
<br>
"@@.npc_manager;Today's lesson is going to be about exploring back here, about the joys of being penetrated, and offering yourself up for another's use.@@"<br>
<br>
You gasp as the tip of her finger slips into your rear. Though you are tight, it doesn't hurt... quite the opposite, in fact.<br>
<br>
"@@.npc_manager;Mmm, so tight, yet welcoming. You like this, don't you? That is good, very good... but now to push things a bit further.@@"<br>
<br>
Her finger slides free of your rear, and then you feel something else, something larger, pressing against your tight hole.
<<if $player.flags.masturbation.dildo || $player.flags.masturbation.plug>>
You moan, sure you've <<if $player.flags.masturbation.dildo>>played with a dildo<<else>>fiddled with a butt-plug<</if>> on your own... but this feels different, <<=setup.getNpcName('npc_manager', 'formal')>> being in control as she fucks you makes your heart race.<br>
<br>
"@@.npc_manager;My my... as eager of a butt-slut as you have shown yourself to be eager in other ways. Such a prize, all of this pent up desire that was merely waiting for me to unlock...@@"
<<else>>
Your eyes swell wide and you look back to see her pressing a not exactly small dildo into you.<br>
<br>
"@@.npc_manager;Relax, this is just another step forward for you a bit of practice before the real thing... Just enjoy the sensation, focus on it. Self control is a fundamental pillar of society.@@"<br>
<br>
It's as if you can hear the smile spreading across her lips and the chuckle behind her words leaving you with a foreboding sense of dread. In one smooth motion she pulls the dildo from your ass only to ram it back in, leaving you shrieking from the vigorous intrusion.<br>
<br>
"@@.npc_manager;I understand you are nervous, <<=$player.first_name>>. Is this your first time with something like this... moving within you? No matter, consider this merely another form of discipline, another part of the contract you willingly signed. Remember, <<=$player.first_name>>, this is what you wanted. I can feel your tension, the stress bubbling under your skin, so I will not command you to relax, but it is my strong recommendation that you do so.@@"
<</if>>
<br><br>
Her lecture finished, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her thrusting, moving the dildo in and out with a steady rhythm. With a sigh of arousal and contentment you find it easier to relax than you would have expected<<if $scene.plugged != "">>, grateful for your decision to wear the plug this morning<</if>>.<br>
<br>
True to her word, <<=setup.getNpcName('npc_manager', 'formal')>> continues her onslaught, pulling the dildo far enough that it is just barely in your ass and then thrusting it in all the way, until her hand is pressed against your cheeks. You can hear <<=setup.getNpcName('npc_manager', 'formal')>> giggle with satisfaction, the almost sweet expression of glee a stark contrast to her plunging the dildo deeper into your asshole.<br>
<br>
"@@.npc_manager;It sounds as though someone is enjoying themselves. Does my <<if $fetish.sissy>>SISSI <</if>>Secretary enjoy having her asshole fucked?@@"<br>
<br>
You contemplate on how best to answer as the dildo continues plunging into you only to feel a gentle vibrating against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. You squeal in a mix of shock, discomfort, and delight, the sensation running through to your body like a jolt of lightning.<br>
<br>
"@@.npc_manager;Oh my, perhaps you are enjoying this too much. Is that it? Is this too much sensation for your <<if $fetish.sissy>>SISSI<<else>>girl<</if>> body to handle? Should I stop fucking your ass, <<=$player.first_name>>?@@"<br>
<br>
It takes several moments for you to concentrate enough to fumble out a response, though <<=setup.getNpcName('npc_manager', 'formal')>> doesn't seem particularly interested in relenting.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_stage1_end_enthusiast_4" "Focus all your willpower and ask her to stop." 240 "<<set $scene.willpower=true>>">>]<br>
<<else>>
[@@.link_locked;You don't feel like you've got enough strength left in you to resist at all@@]<br>
<</if>>
[<<moveTo "event_manager_stage1_end_enthusiast_4" 'Say "N-no <<=setup.getNpcName("npc_manager", "formal")>>, please continue..."' 240 "<<set $scene.willpower=false>>">>]
</div>/*#
#desc: manager dildo stage 1->2 enthusiast
#status: FINISHED 0.8.6.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'anal' 'secretary_anal' 'stage1_end'>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_reward'>>
<<set $npc_manager.flags.stage1Promo = "enthusiast">>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_3'
0
'theme_psychiatrist_penetration_1'
false
>>
<<if $scene.willpower>>
<<spendWillpower 1>>
<<applyExperience 'anal' 4 'almost' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<</if>>
<<playerOrgasm>>
<<addEvent 'cat_encounter'>>
<<set $scene.wipeAdvance = $player.work.advance > 0>>
<<set $player.work.advance = 0>>
<<set $npc_manager.stagevalues[1].promodate = $now>>
<<set $npc_manager.flags.spill_event = false>>
<<if $workEvents.hasOwnProperty("force_strict_masturbation")>>
<<removeWorkEvent 'force_strict_masturbation'>>
<</if>>
<<deleteTask "manager_morning_inspection_task">>
<<set _x = setup.addManagerEndlessTask()>>
<<if $npc_manager.flags.require_chastity>>
<<if $player.sec_style.submission.chastity == "">>
<<set $player.sec_style.submission.chastity = "obedient">>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<</if>>
<<set $scene.addChastity = !setup.checkItemTypeWorn("cage")>>
<<if $scene.addChastity>>
<<if $player.body.penissize[0] <= 1>>
<<set $scene.newcage = "chastity_cage_tiny">>
<<else>>
<<set $scene.newcage = "c_cage_pink">>
<</if>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<</if>>
<<if $player.sec_style.submission.permanent_key == "" && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<addItem _keyId true>>
<<set $npc_manager.flags.hascagekey = false>>
<</if>>
<<include "setLastSeenCage">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.willpower>>
You muster your will and ask her to stop. <<=setup.getNpcName('npc_manager', 'formal')>> smoothly slides away, leaving the dildo sill half-burried in your rear. "@@.npc_manager;Very well... I leave it to you to finish the task. Come on, cum for me, fuck your sexy hole to climax...@@"<br>
<br>
You moan, her words turning you on even more as your reach behind, gripping the still-buzzing dildo and shifting it in your rear.<br>
<br>
"@@.npc_manager;There we go, that's a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Fuck that sexy hole until you cum from penetration alone, just as a proper <<if $fetish.sissy>>sissy<<else>>girl<</if>> should...@@"<br>
<br>
You can't resist, the pleasure buzzing in your rear more addictive with each thrust as you work the dildo with even more exuberance than <<=setup.getNpcName('npc_manager', 'formal')>> demonstrated, thrusting away until your eyes roll back and you cum, leaking <<if !$scene.addChastity && setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>through your cage<<else>>past your chastity belt<</if>><<else>>down your leg<</if>> as your body goes limp and the dildo finally slides free.
<<else>>
You whimper your assent and <<=setup.getNpcName('npc_manager', 'formal')>> grins, shifting her angle and somehow increasing the pleasure of the penetration to an even higher level.<br>
<br>
"@@.npc_manager;Good girl. Now, to cement this lesson... cum for me, show me that you know the proper way of pleasure...@@"<br>
<br>
You are panting almost as fast as the dildo is thrusting, your climax inevitable as she pushes you past the edge. The orgasm rushes through your body, unlike any you have felt before, an explosion of pleasure that leaves you gasping and limp as the dildo finally slides free.
<</if>>
<br><br>
<<if $scene.addChastity>>
You look down to see <<=setup.getNpcName('npc_manager', 'formal')>> placing something over your limp <<getWordMyPenis>>. A lock clicks closed and she smiles.<br>
<br>
"@@.npc_manager;There we go, nice and secure and ready to continue forward with your career.@@" You gawk in shock as she rises to her feet. "@@.npc_manager;Come come, you do not think you were to be allowed to parade about at work unrestrained... after all, look at this mess you made!@@" She holds up her cum-covered hand in demonstration. "@@.npc_manager;That said, since you have been such a good <<if $fetish.sissy>>SISSI <</if>>Secretary slave, I will entrust you with the key... until such time as you prove yourself unworthy of such freedoms, or decide that you no longer wish to be cursed with such temptation.@@"<br>
<br>
<<printThought "This job really is crazy! And now I have to work locked in chastity? Well, I guess if it gets uncomfortable I can just take it off, just need to show myself worthy of her trust in giving me the key.">><br>
<br>
She gives you a moment of shock before handing you a small key with a smile. "@@.npc_manager;Only a requirement for you at work... well, so long as you remain as well behaved as you have thus far.@@"
<<else>>
You look up to find <<=setup.getNpcName('npc_manager', 'formal')>> standing over you with a smile.
<</if>>
<br><br>
"@@.npc_manager;Good girl. I hope you enjoyed this little... reward. And I look forward to seeing you tomorrow morning as your journey towards being my perfect <<if $fetish.sissy>>SISSI <</if>>Secretary continues.<<if $player.sec_style.body.name != "">> And one final thing — our relationship, well... it is a bit more than mere manager and subordinate. I believe it will be much more appropriate for you to refer to me by a more proper title. So that will be <<=setup.getNpcName('npc_manager', 'Mistress')>> going forward.<</if>>@@"<br>
<br>
You slowly catch your breath as you fumble for your clothes, <<=setup.getNpcName('npc_manager', 'formal')>> watching with amusement the whole time as you nervously curtsy in thanks and make your way out of the office.<br>
<br>
<<if $player.sec_style.body.name != "">>
<<printThought "<<=setup.getNpcName('npc_manager', 'Mistress')>>? Was she serious? Everything is happening so fast...">><br>
<br>
<</if>>
[<<moveTo "company_lobby" "Leave the office." 30 '<<set $player.cutscene.lockinventory=false>><<set $npc_manager.call="Mistress">><<set $npc_manager.title="Mistress">><<useClothSetPop "tmp">>'>>]
</div>/*#
#desc: Intro passage for scene leading to chastity if you show up to work horny too often
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_manager' 10>>
<<changeHorny 30>>
<<useClothSetPush 'stage1end'>>
<<removeEverythingButUnderwear>>
<</if>>
<<if setup.isBodySlotVisible('penis') || (setup.checkItemTypeWorn("cage") && setup.checkItemVisible(setup.getItemFromType('cage')))>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_punishment_2">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Please stand and remain still for your inspection, <<=$player.first_name>>.@@"<br>
<br>
You can feel your <<getWordMyPenis false>> tense up as <<=setup.getNpcName('npc_manager', 'formal')>> approaches you.<br>
<br>
<<printThought "I really should have jacked off this morning.">><br>
<br>
"@@.npc_manager;Eager as ever,@@" she says with a sharp tone. There's a sudden feeling of pressure as her hand grasps your <<=setup.getItemTypeName('panties')>> covered <<getWordMyPenis>>. You go to look down, but are caught off guard by a finger pressing up under your chin. "@@.npc_manager;What have I told you?@@" Her cold glare matches her tone as she looks you in the eyes to bore a hole into your brain.<br>
<br>
"@@.npc_manager;I am surprised a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> like you is not spanking it any opportunity you have... well, as I have said, we will need to find a more permanent solution to your perverted little problem.@@"<br>
<br>
You flush as <<=setup.getNpcName('npc_manager', 'formal')>> emphasises the word little, but are quickly brought back to attention as her grip tightens around your <<getWordMyPenis>>.
<<if setup.checkItemTypeWorn("panties")>>
You can feel the inside of your <<=setup.getItemTypeName('panties')>> begin to rub against your head and let out a muffled moan.<br>
<br>
"@@.npc_manager;Hmph,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a smirk. "@@.npc_manager;Free your <<if $fetish.sph>>tiny <</if>>penis and lay on the couch. Stare up at the ceiling and DO NOT look away,@@" her words are emphasised by a firm squeeze around your testicles.
<<else>>
Her fingers dig into your exposed flesh and you let out a muffled moan.<br>
<br>
"@@.npc_manager;Hmph,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a smirk. "@@.npc_manager;So wanton. Lay on the couch. Stare up at the ceiling and DO NOT look away,@@" her words are emphasised by a firm squeeze around your testicles.
<</if>>
<br><br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_punishment_2" "Strip and obey her command." 60 "<<removeAllClothing>>">>]
<<else>>
<<hint $options "Remove clothing in the inventory.">>
<</if>>
</div>/*#
#desc: alternate intro to "punishment" stage 1 transition where you came to work in chastity on money path
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<useClothSetPop 'daily_evaluation_clothes'>>
<<useClothSetPush 'stage1end'>>
<<useClothSetPush 'daily_evaluation_clothes'>>
<<useClothSetPop 'tmp'>>
<<decrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Pulling your undergarments back on, you hurry after <<=setup.getNpcName('npc_manager', 'formal')>> into her inner sanctum. She spins to face you so fast you almost crash into her before taking a step back in fear.<br>
<br>
"@@.npc_manager;Lie down on the couch, <<=$player.first_name>>, with your foolishly locked, <<if $fetish.sph>>patheticness<<else>>self<</if>> on display.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_2" "Do as she commands." 120 "<<removeAllClothing>>">>]
</div>/*#
#desc: alternate intro to "punishment" stage 1 transition if you spend too long in stage 1
#status: RELEASED 0.7.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<<if setup.checkNaked()>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_punishment_2">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You think about the possibility of losing your job, even a job like this and finally nod.<br>
<br>
An evil grin appears on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face as she beckons you into her inner sanctum. She spins to face you so fast you almost crash into her before taking a step back in fear.<br>
<br>
"@@.npc_manager;Lie down on the couch, <<=$player.first_name>>, and do not cover yourself, I want to see <<if $fetish.sph>>your full patheticness<<else>>you fully<</if>> on display.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_punishment_2" "Take off your clothes and lay down on the couch." 60 "<<removeAllClothing>>">>]
<<else>>
<<hint $options "Remove clothing in the inventory.">>
<</if>>
</div>/*#
#desc: phase 1 ending - manager has you strip and prepares to jerk you off
#status: FINISHED 0.4.0.0
#*/
<<set $scene.willpower = false>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<set $scene.pantieObj = setup.getItemObjFromType('panties')>>
<<if $scene.panties == "">>
<<set $scene.panties_type = "none">>
<<elseif $scene.pantieObj.tags.indexOf('modest') > -1>>
<<set $scene.panties_type = "modest">>
<<elseif $scene.pantieObj.tags.indexOf('cute') > -1>>
<<set $scene.panties_type = "cute">>
<<elseif $scene.pantieObj.tags.indexOf('bold') > -1>>
<<set $scene.panties_type = "bold">>
<<elseif $scene.pantieObj.tags.indexOf('sissy') > -1>>
<<set $scene.panties_type = "sissy">>
<<elseif $scene.pantieObj.tags.indexOf('fetish') > -1>>
<<set $scene.panties_type = "fetish">>
<<elseif $scene.pantieObj.tags.indexOf('female') > -1>>
<<set $scene.panties_type = "female">>
<<elseif $scene.pantieObj.tags.indexOf('bold') > -1>>
<<set $scene.panties_type = "male">>
<<else>>
<<set $scene.panties_type = "none">>
<</if>>
<<set $scene.caged = (setup.checkItemTypeWorn("cage"))>>
<<applyExperience 'humiliation' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You move towards the wide-seated couch and lay across it, the soft fabric and firm cushioning putting you slightly at ease.<br>
<br>
<<printThought "This might actually be comfortable if I had some idea of what was going on.">><br>
<br>
You can hear <<=setup.getNpcName('npc_manager', 'formal')>> open her desk and remove several items. The array of sounds leaves you guessing what might be coming, but you are sure you hear the ominous sound of a pair of rubber gloves stretching over her fingers. With slow, rhythmic steps you hear <<=setup.getNpcName('npc_manager', 'formal')>> approach the couch and lean down.<br>
<br>
"@@.npc_manager;My, my, someone is still so hard... and yet so disappointing.@@"<br>
<br>
Your cheeks flush with shame and then surprise as <<=setup.getNpcName('npc_manager', 'formal')>>
<<if $scene.panties == "">>
<<if $scene.caged && setup.isCage()>>
firmly grasps your
<<else>>
places her hand firmly over your
<</if>>
<<else>>
slides her hands under your panties and
<<if $scene.caged && setup.isCage()>>
firmly grasps your
<<else>>
places her hand firmly over your
<</if>>
<</if>>
<<getWordMyPenis>>. You lift your head forward and catch her glaring at you. You feel her free hand lightly slap your <<if $scene.caged && setup.isCage()>>balls<<else>>inner thigh<</if>>. "@@.npc_manager;Head back, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>,@@" she says sternly as you lower your head.
<<if $scene.caged>>
"Safe" in your chaste prison you can feel nothing save her fingers lightly digging into the sensitive flesh of your
<<if setup.isCage()>>
balls...
<<else>>
inner thighs...
<</if>>
<<else>>
You can feel her latex-covered fingers grip you tightly, squeezing your <<getWordMyPenis>> and sliding her hand up and down.
<</if>>
<br><br>
<<if $scene.panties_type=="female" || $scene.panties_type=="modest">>
"@@.npc_manager;You have been a good boy to wear such feminine panties for me. A little bit plain for my taste, but superior to what you used to wear. They stretch so nicely, <<if $scene.caged>>I could even stroke your <<getWordMyPenis>> without taking them off... if you were not <<if setup.isCage()>>caged<<else>>secured in that delightful belt<</if>>, of course<<else>>I can even stroke your <<getWordMyPenis>> without taking them off!<</if>>!@@"<br>
<br>
<<elseif $scene.panties_type=="cute">>
"@@.npc_manager;You have been a good boy to wear such cute panties for me. They stretch so nicely, <<if $scene.caged>>I could even stroke your <<getWordMyPenis>> without taking them off... if you were not <<if setup.isCage()>>caged<<else>>secured in that delightful belt<</if>>, of course<<else>>I can even stroke your <<getWordMyPenis>> without taking them off!<</if>>!@@"<br>
<br>
<<elseif $scene.panties_type=="bold">>
"@@.npc_manager;<<=$player.first_name>>, it is not your place to wear such things.@@"<br>
<br><<=setup.getNpcName('npc_manager', 'formal')>> pulls at the seam of your panties letting them snap back.<br>
<br>
"@@.npc_manager;I want my <<if $fetish.sissy>>SISSI<<else>>girl<</if>> in a cute pair of panties, preferably pink. Frankly, your outfit paints you as a bit of an aggressive slut and I am not fond of that at all, understood?@@"<br>
<br>
<<elseif $scene.panties_type=="male">>
"@@.npc_manager;<<=$player.first_name>>, what have I said about your uniform? This,@@" she says pulling harshly on your underwear, "@@.npc_manager;Is unacceptable. You are to dress in a pink bra and pink pair of panties as specified in your contract. If you plan to continue disobeying my orders, you can expect your punishment to be severe.@@"<br>
<br>
<<elseif $scene.panties_type=="sissy">>
"@@.npc_manager;Now these are truly perfect for a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> such as yourself. Nice and pink and with all the soft, cute lace? I bet they feel as good as they look, all tight and snug against your soft skin.<<if !$scene.caged>> You know you are lucky I can stroke you without taking them off... and it would really be such a shame to take them off.<</if>>@@"<br>
<br>
<</if>>
A moan escapes your lips. You can't tell if it is one of pain, pleasure or embarrassment.<br>
<br>
<<if $scene.caged>>
She snorts in disgust. "@@.npc_manager;You really are just a whorish slut, pathetic.@@"
<<else>>
"@@.npc_manager;Still, you need to learn that I will not tolerate a hard <<getWordMyPenis false>> anywhere in my office.@@"<br>
<br>
<<if $scene.panties == "">>
You feel her pace increase, as your <<getWordMyPenis false>> helplessly twitches up and down.
<<else>>
You feel her pace increase, the side of your panties rubbing roughly against your <<getWordMyPenis>>.
<</if>>
<br><br>
"@@.npc_manager;And as you have failed to maintain this on your own you force me to take this manner into my own hands.@@"
<</if>>
<br><br>
Her hand pulls away from your <<getWordMyPenis>> and gives your <<if !$scene.caged || setup.isCage()>>balls two quick squeezes<<else>>imprisoned crotch a gentle pat<</if>>.<br>
<br>
"@@.npc_manager;On your side, <<=$player.first_name>>, facing away from me.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_3" "Comply and move to your side." 120>>]
</div>/*#
#desc: phase 1 ending - manager fingers/uses a dildo on your ass
#status: FINISHED 0.4.0.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.stage1Promo = "punish">>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_3'
0
'theme_psychiatrist_penetration_1'
false
>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.willpower = false>>
<<set $scene.plugged = setup.checkItemTypeWorn('plug')>>
<<setThreshold 'anal' 'secretary_anal' 'stage1_end'>>
<<if $scene.plugged>>
<<applyExperience 'anal' 4 'almost' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<</if>>
<<changeHorny 25>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're too <<if $scene.caged>>intimidated<<else>>aroused<</if>> to disobey and slide off your back and onto your side as you hear <<=setup.getNpcName('npc_manager', 'formal')>> picking something up.
<<if !$scene.plugged>>
<<if setup.isItemTypeEquipped('panties')>>
There's a sharp snapping sound followed by a gloved finger pulling the back of your panties down, exposing your ass to <<=setup.getNpcName('npc_manager', 'formal')>>.
<<else>>
There's a sharp snapping sound followed by the feeling of a gloved finger sliding down your back, tracing down to your ass.
<</if>>
<br><br>
<<printThought "This can't be happening?!">><br>
<br>
Her fingers lift your top asscheek up and you feel something pressing against your puckered hole. The sudden coolness is startling, slowly spreading into a ring around your asshole and between your cheeks.<br>
<br>
"@@.npc_manager;I have been managing this division for quite some time, <<=$player.first_name>>, and I have learned many things about how best to deal with insubordination.@@"<br>
<br>
You can hear her body shift as one hand returns to <<if $scene.caged>>possessively <<if setup.isCage()>>holding your caged<<else>>placing one hand against the chastity shield covering your<</if>><<else>>your erect<</if>> <<getWordMyPenis false>>, the other massaging your nervous hole.<br>
<br>
"@@.npc_manager;Some employees,@@" she says while <<if $scene.caged>>gently squeezing around<<else>>beginning to slowly stroke<</if>> your <<getWordMyPenis>>, "@@.npc_manager;Learn best through positive motivation.@@"<br>
<br>
Her stroking intensifies as her grip tightens, her other hand continuing to finger your asshole.<br>
<br>
"@@.npc_manager;Others, however, require something else. something... firmer.@@" She punctuates the statement by <<if $scene.caged>><<if setup.isCage()>>digging her nails into your exposed sack, giving just enough pressure for you to<<else>>placing a hand over the front shield of your belt, her finger-nails digging into your flesh on either side and you<</if>><<else>>rubbing her thumb around the head of your <<getWordMyPenis>>, pressing into it firmly until you<</if>> let out a soft cry of pain.<br>
<br>
"@@.npc_manager;You, <<=$player.first_name>>, need to be taught the values of restraint. Self control is a fundamental pillar of society.@@"<br>
<br>
It's as if you can hear the smile spreading across her lips and a chuckle behind her words to leave you with a foreboding sense of dread. Your fears are answered by her finger at your backside slowly pushing into your moist hole. You tense up only for your ass to be chided with a hard swat.<br>
<br>
"@@.npc_manager;I understand you are nervous, <<=$player.first_name>>, but this is just another form of discipline, another part of the contract you willingly signed. Remember, <<=$player.first_name>>, this is what you wanted. I am not commanding you to relax, but I would highly recommend that you do so.@@"<br>
<br>
Her lecture finished, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her probing, pushing in and out with a steady rhythm. You do your best to relax, but the sensation is so alien and strange that you find it hard to comply. True to her word, <<=setup.getNpcName('npc_manager', 'formal')>> continues her assault, sliding the finger in further and further with every thrust. As you muster the courage to beg her to stop, the grip around your <<getWordMyPenis>> softens. Her hand begins to glide steadily up and down, squeezing a soft moan from between your lips. You can hear your captor giggle with satisfaction, her finger plunging deeper into your asshole.<br>
<br>
"@@.npc_manager;It sounds as though someone likes this. Does my <<if $fetish.sissy>>SISSI <</if>>Secretary enjoy having her asshole fingered?@@"<br>
<br>
You contemplate on how best to answer as her finger moves deeper, rubbing against what feels like the very root of your <<getWordMyPenis>>. You shriek in a mix of discomfort and delight, pleasurable sensations vibrating through you.<br>
<br>
"@@.npc_manager;Oh my, perhaps you are enjoying this too much. Should I stop rubbing your prostate <<=$player.first_name>>?@@"<br>
<br>
It takes several moments for you to concentrate enough to stutter out a response, especially as <<=ps(setup.getNpcName('npc_manager', 'formal'))>> does not seem interested in relenting.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_stage1_end_punishment_3_willpower" "Focus and ask her to stop." 240>>]<br>
<<else>>
[@@.link_locked;You don't feel like you've got enough strength left in you to resist at all@@]<br>
<</if>>
[<<moveTo "event_manager_stage1_end_punishment_4" 'Say "N-no <<=setup.getNpcName("npc_manager", "formal")>>, please continue..."' 240>>]
<<else>>
<<if setup.isItemTypeEquipped('panties')>>
There's a sharp snapping sound followed by a gloved finger pulling the back of your panties down, exposing your plugged ass to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<printThought "There's no way she'll miss the...">><br>
<br>
Her fingers probe in-between your asscheeks and you can hear <<=setup.getNpcName('npc_manager', 'formal')>> chuckle softly.
<<else>>
There's a sharp snapping sound followed the feeling of a gloved finger sliding down your back, exposing your plugged ass to <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<printThought "There's no way she'll miss the...">><br>
<br>
Her fingers probe in-between your asscheeks and you can hear <<=setup.getNpcName('npc_manager', 'formal')>> chuckling softly.
<</if>>
<br><br>
"@@.npc_manager;You are just so full of surprises, <<=$player.first_name>>. Though I cannot say I am displeased by this one. No, this is a very nice discovery indeed.@@"<br>
<br>
You feel her fingers probing at the plug, pushing and pulling against it. In a matter of seconds you're moaning and gently bucking your ass, trying to match the motions of her fingers. Steadying your hips with one hand her fingers grip the base of the plug and begin to gently pull. "@@.npc_manager;Relax your ass, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@" You comply, taking a deep breath, through your nose and pushing out with your ass. In one smooth motion the plug slides from your asshole, leaving you feeling empty and momentarily gapey.<br>
<br>
You hear <<=setup.getNpcName('npc_manager', 'formal')>> stand and listen to the clicking of her high heels as she walks to her desk, pulls open a drawer and returns to the couch. Her hand returns to your ass and you feel something cool sliding along your ass crack, pressing against your puckered hole. At first it feels like <<=setup.getNpcName('npc_manager', 'formal')>> is replacing your plug, but it feels bigger than you are accustomed.<br>
<br>
"@@.npc_manager;Do not worry, <<=$player.first_name>>, just relax a little more,@@" she says reassuringly, slowly pushing the whole time. You feel full again. Very full. You moan out as her dildo reverses course and then begins to slide in and out of your ass.<br>
<br>
"@@.npc_manager;I have been managing this division for quite a while now <<=$player.first_name>> and I have learned a few things about how to deal with... difficult employees.@@"<br>
<br>
You can feel her body shift on the couch as a gloved hand returns to <<if $scene.caged>><<if setup.isCage()>>grasping your cage<<else>>press against the shield covering your<</if>><<else>>your erect <<getWordMyPenis>><</if>>, the other slowly moving the dildo back and forth in your eager hole.<br>
<br>
"@@.npc_manager;Some,@@" she says while <<if $scene.caged>>gently squeezing your <<getWordMyPenis>><<else>>beginning to slowly stroke your <<getWordMyPenis>><</if>>, "@@.npc_manager;Learn best through positive motivation.@@"<br>
<br>
Her stroking intensifies as her grip tightens, her other hand continuing its steady pounding.<br>
<br>
"@@.npc_manager;Others, however, require something else. something... firmer.@@" She punctuates the statement by <<if $scene.caged>><<if setup.isCage()>>digging her nails into your exposed sack, giving just enough pressure for you to<<else>>placing a hand over the front shield of your belt, her finger-nails digging into your flesh on either side and you<</if>><<else>>rubbing her thumb around the head of your <<getWordMyPenis>>, pressing into it firmly until you<</if>> let out a soft cry of pain.<br>
<br>
"@@.npc_manager;You, <<=$player.first_name>>, need to be taught the values of restraint. Self control is a fundamental pillar of society.@@"<br>
<br>
It's as if you can hear the smile spreading across her lips, leaving you with a foreboding sense of dread. In one smooth motion she pulls the dildo from your ass and rams it back in, leaving you shrieking from the sudden pounding intrusion.<br>
<br>
"@@.npc_manager;You have to understand <<=$player.first_name>> that this is just another form of discipline, another part of the contract you willingly signed. I am not commanding you to relax, but I would highly recommend you do so.@@"<br>
<br>
Her lecture finished, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her thrusting, moving the dildo in and out with a steady rhythm. With a sigh of arousal and contentment you find it easier to relax than you would have expected, grateful for you decision to wear the plug this morning. True to her word, <<=setup.getNpcName('npc_manager', 'formal')>> continues her assault, pulling the dildo far enough that the head just barely stays in your ass and then thrusting it in all the way. The grip around your <<getWordMyPenis>> softens and her hand begins to glide steadily up and down, squeezing a soft moan from between your lips. You can hear <<=setup.getNpcName('npc_manager', 'formal')>> giggle with satisfaction before plunging the dildo deeper into your asshole.<br>
<br>
"@@.npc_manager;It sounds as though someone likes this. Does my <<if $fetish.sissy>>SISSI <</if>>Secretary enjoy having her asshole fucked?@@"<br>
<br>
You contemplate on how best to answer as the dildo continues pounding into you only to feel a gentle vibrating against your prostate. You squeal in a mix of shock, discomfort, and delight, the sensation running through to your <<getWordMyPenis>> like a jolt of lightning.<br>
<br>
"@@.npc_manager;Oh my, perhaps you are enjoying this too much. Should I stop fucking your ass, <<=$player.first_name>>?@@"<br>
<br>
It takes several moments for you to concentrate enough to gasp a reply, especially since <<=ps(setup.getNpcName('npc_manager', 'formal'))>> does not seem interested in relenting.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_stage1_end_punishment_3_willpower" "Focus and ask her to stop." 240>>]<br>
<<else>>
[@@.link_locked;You don't feel like you've got enough strength left in you to resist at all@@]<br>
<</if>>
[<<moveTo "event_manager_stage1_end_punishment_4" 'Say "N-no <<=setup.getNpcName("npc_manager", "formal")>>, please continue..."' 240>>]
<</if>>
</div>/*#
#desc: phase 1 ending - ask her to stop fingering/dildo'ing your ass
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.willpower = true>>
<<set $player.willpower.bonus += 1>>
<<addPopUpText "will" "Your maximum willpower has been increased.">>
<<applyFatigue 30>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.plugged>>
Getting your ass pounded relentlessly by <<=setup.getNpcName('npc_manager', 'formal')>> with a dildo does not really help you with your decision.
<<else>>
Getting your ass fingered relentlessly by <<=setup.getNpcName('npc_manager', 'formal')>> does not really help you with your decision.
<</if>>
Nonetheless, you focus your thoughts enough to calm down. Even though you feel like you're in heaven right now, something in you resists. A faint spark of willpower you thought was lost in these last few days manages to ignite a fire of resistance. You do the unspeakable. You ask her to stop. For a moment the world stands still. <<=setup.getNpcName('npc_manager', 'formal')>> looks at you with disbelief, but more importantly, if only for a moment, she looks at you like you're a real person, not some dressed up plaything.<br>
<br>
As swiftly as her surprise blossomed, her expression hardens once more "@@.npc_manager_dom;What was that <<if $fetish.sissy>>SISSI<<else>>girl<</if>>? I could not hear you over your moaning like a whore in heat!@@" It only took her a microsecond to regain her composure and go into full on dominant mode, <<if $scene.plugged>>the dildo<<else>>her fingers<</if>> not slowing down in the slightest, rather speeding up working on your poor asshole like there's no tomorrow.<br>
<br>
Again, between the moaning and panting you ask her, beg her, to stop.<br>
<br>
She stops in an instant. Again her facade crumbles, but only for the fraction of a second. You wonder what's underneath this, if she's only acting her part in a play as well, but this does not seem to be the right time to figure this out. She pulls
<<if $scene.plugged>>
the dildo
<<else>>
her finger
<</if>>
out of your anus and wipes it with a paper towel.<br>
<br>
"@@.npc_manager;Well, someone put on <<if $player.sec_style.clothing.female == "">>his big boy<<else>>her big girl<</if>> pants today. I honestly did not expect that. Colour me Impressed. Well, perhaps not impressed, but at least surprised. Still, this is part of your punishment. And as far as I can see there still remains the problem with your unimpressive <<getWordMyPenis false>> down there. I want this problem solved, as of right now. So, if you want to keep this job you are going to masturbate. Right here, right now.@@"<br>
<br>
You can feel something odd about this situation.
<<if setup.getTotalValue('smart')>=7>>
Normally you would get another rule, a threat, another step in the dance. A direct ultimatum to lose your job for not playing along with her dominant behaviour is rather unusual for her. You assume there's more behind it then you can figure out right now, so you decide to play along with it. And because of that, you don't mind that much masturbating in front of her.
<<else>>
But you're unable to figure it out in the brief moments of time you have to think. Since you want to keep the job, for some reason, you decide it's better to give in, no matter how humiliating this will be.
<</if>>
You agree to her conditions.<br>
<br>
"@@.npc_manager;Well, since we have no <<if $fetish.sissy>>SISSI<<else>>girl<</if>> spanking material around here, I assume I can let you use this. As a matter of fact, I insist!@@" she says, while handing you
<<if $scene.plugged>>
the dildo that was pounding your ass mere moments ago.
<<else>>
a big, black dildo.
<</if>>
<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_3_willpower_2" "Take the dildo and start masturbating." 360>>]
</div>/*#
#desc: phase 1 ending - manager has you ride dildo since you asked her to stop
#status: FINISHED 0.4.0.0
#ignore_spell: lolatrap
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if setup.getTotalValue('stamina')>=5>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/lolatrap_masturbate_01.mp4">>
<div id="invframe" class="scrolltext">
Your <<getWordAnus>> is still wet from before,
<<if setup.getTotalValue('anal')>4>>
you let the rather enormous artificial <<getWordPenis>> slide in without much troubles.<br>
<br>
<<printThought "Oh <<getWordGod>>, I'm this accustomed to using my <<getWordAnus false>>, that I can fit a massive <<getWordPenis>> like this in there without any problems.">>
<<else>>
still, you're having trouble fitting such an enormous artificial <<getWordPenis>> in it. You push hard and try to relax, and after some while you manage to push it past your sphincter. As it sinks into you, you let out a moan like a whore in heat.<br>
<br>
<<printThought "Oh <<getWordGod>>, it is ripping me apart. Ah!">>
<</if>>
<br><br>
You push the dildo in and out, but <<=setup.getNpcName('npc_manager', 'formal')>> does not seem to be pleased with that solution.<br>
<br>
"@@.npc_manager;Ride it. Ride it like the little <<if $fetish.sissy>>SISSI<<else>>girl<</if>> whore you are. And do not even think about touching that <<getWordMyPenis>> of yours, you are going to cum like the <<if $fetish.sissy>>SISSI<<else>>girl<</if>> you are!@@"<br>
<br>
As ordered, you start to ride the dildo. Balancing the base of the dong on the floor, you start slowly moving your pelvis downwards. You feel every centimetre of the artificial <<getWordPenis>> filling you up, until there is no more space left in you and you feel about to split apart. But still, you continue. Rising back up leaves a void in you that you now feel eager to fill up again. Moving up and down like a whore in heat is unlike anything you've ever felt before. With each thrust the dildo impales your <<getWordAnus>> deeper until you can feel, and hear, your asscheeks slapping on the floor beneath you.<br>
<br>
<<if setup.getTotalValue('stamina')>=5>>
Your anus feels like it's on fire, but you're able to cope with it. The rhythmic slamming stimulates you beyond your wildest dreams.<br>
<br>
"@@.npc_manager;You like this, don't you, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@" she taunts as the dildo slams into you again. "@@.npc_manager;You simply love having your <<if !$player.virgin.anal && ($player.virgin.pegged || !$fetish.pegging_is_anal)>>virgin <</if>><<getWordAnus false>> violated like a slutty bitch!@@"<br>
<br>
You're unable to answer, but your moaning contains more truth than your words ever could. You can feel your orgasm approaching at a very rapid pace with each new thrust. With a final gasp you spray your load all over the floor.
<<else>>
You are already low on stamina, and this is taking its toll on you. Unable to cope with the pain, you slow down. Just a little bit. Begging to your mistress to let you finish by hand does you no good at all. Glaring at you with cold eyes, <<=setup.getNpcName('npc_manager', 'formal')>> stands over you. A sinister smile on her lips is all you get as a warning.<br>
<br>
"@@.npc_manager;Here, let me give you a helping hand,@@" is her explanation, before putting her hands on your shoulders and pushing you down with a force you did not expect of a woman of her physique. The sudden impalement on the dildo finally pushes you over the edge. With a final gasp you spray your load all over the floor.
<</if>>
<br><br>
[<<moveTo "event_manager_stage1_end_punishment_4" "Continue." 360>>]<br>
<br>
<a target="_blank" href="https://twitter.com/lolatrap">(EXT/NSFW) Special Thanks to Lolatrap</a>
</div>/*#
#desc: phase 1 ending - manager locks you in chastity for the first time
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_punishment'>>
<<applyExperience 'submission' 5 'unbelievable' $SEEN_FRIEND>>
<<set $player.flags.fuckedbydildo = true>>
<<playerOrgasm>>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<if $player.sec_style.submission.chastity == "">>
<<set $player.sec_style.submission.chastity = "forced">>
<<setThreshold 'bondage' 'other_bondage' 'cage_forced'>>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<</if>>
<<set $scene.addChastity = !setup.checkItemTypeWorn("cage")>>
<<if $scene.addChastity>>
<<if $player.flags.chastity_style == "belt">>
<<set $scene.newcage = "chastity_belt_flat">>
<<elseif $player.body.penissize[0] <= 1>>
<<set $scene.newcage = "chastity_cage_tiny">>
<<else>>
<<set $scene.newcage = "c_cage_pink">>
<</if>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<</if>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem _keyId>>
<<include "setLastSeenCage">>
<<set $npc_manager.flags.require_chastity = true>>
<<if !($currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished)>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11'
6
'event_psychiatrist_session_chastity_1'
false
>>
<</if>>
<<if $player.sec_style.body.tblock == "">>
<<set $player.sec_style.body.tblock = "forced">>
<<setTmpEffect 'tblock_eternal'>>
<<addNpcTheme 'npc_manager' 'transformation' "theme_manager_penis_shrink"
0
'theme_manager_penis_shrink_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' "theme_psychiatrist_penis_shrink"
0
'theme_psychiatrist_penis_shrink_1'
false
>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_punishment'
5
'event_psychiatrist_session_manager_2'
false
>>
<<set _x = setup.addManagerEndlessTask()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.caged>>
<<if $scene.willpower>>
You kneel on the floor, impaled by the dildo, with your eyes shut, gasping through slow heavy breaths, savouring the sensation of release.
<<else>>
Your words trail off into high pitched moans as <<=setup.getNpcName('npc_manager', 'formal')>> picks up her pace.<br>
<br>
"@@.npc_manager;Very good, <<=$player.first_name>>. I am glad you understand and accept that this is proper treatment for a <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
Her rhythm intensifies and, as if instinctively, you match it with your moaning. Before long you feel your vision begin to blur and in a blissful state of ecstasy you cry out as <<if $fetish.cum>>your <<getWordMyPenis false>> erupts, spewing out a seemingly endless stream of cum<<else>>cum hard<</if>>. Collapsing backwards you lay there with your eyes shut, gasping through slow heavy breaths, savouring the sensation of release.
<<if $scene.plugged>>
<<=setup.getNpcName('npc_manager', 'formal')>> removes the dildo, leaving you empty for a mere moment before unceremoniously reinserting your plug.
<</if>>
<br><br>
Your orgasm finished, you turn your head to thank <<=setup.getNpcName('npc_manager', 'formal')>> and feel her <<if $scene.panties_type=="sissy">>pull down the front of your frilly panties and <</if>>gently pat your <<getWordMyPenis>>.
<</if>>
<br><br>
Once more she graces you with a smile of approval as you stare at your still-imprisoned self.<br>
<br>
"@@.npc_manager;You were already wearing it, it is true, but, well... may I formally present your newest <<if $fetish.sissy>>SISSI<<else>>girl<</if>> fashion accessory and now mandatory component of your uniform.@@"
<<else>>
<<if $scene.willpower>>
You kneel on the floor, impaled by the dildo, with your eyes shut, gasping through slow heavy breaths, savouring the sensation of release.<<if $npc_manager.flags.require_chastity>> Without any warning you feel <<if $scene.panties_type=="sissy">>her pull down the front of your frilly panties and <</if>>something cold slide up and over your flaccid penis.<</if>>
<<else>>
Your words trail off into high pitched moans as <<=setup.getNpcName('npc_manager', 'formal')>> picks up her pace.<br>
<br>
"@@.npc_manager;Very good, <<=$player.first_name>>. I am glad you understand and accept that this is proper treatment for a <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
Her rhythm intensifies and, as if instinctively, you match it with your moaning. After opening you up with her fingers you feel something else... something larger pressing into you. You look down to see a thick dildo sliding into your ass with hardly any resistance. You moan, body trembling as <<=setup.getNpcName('npc_manager', 'formal')>> begins to gently fuck you with the artificial cock.<br>
<br>
Before long you feel your vision begin to blur and in a blissful state of ecstasy you cry out as <<if $fetish.cum>>your <<getWordMyPenis false>> erupts, spewing out a seemingly endless stream of cum<<else>>cum hard<</if>>. Collapsing backwards you lay there with your eyes shut, gasping through slow heavy breaths, savouring the sensation of release. <<=setup.getNpcName('npc_manager', 'formal')>> removes the dildo, leaving you empty
<<if $scene.plugged>>
for a mere moment before unceremoniously reinserting your plug.
<<else>>
and twitching.
<</if>>
<br><br>
Your orgasm finished, you turn your head to thank <<=setup.getNpcName('npc_manager', 'formal')>><<if $npc_manager.flags.require_chastity>> and feel her <<if $scene.panties_type=="sissy">>pull down the front of your frilly panties and <</if>>slide something cold up and over your flaccid <<getWordMyPenis>><</if>>.
<</if>>
<br><br>
<<if $npc_manager.flags.require_chastity>>
You glance down to see a wide grin spread over <<=setup.getNpcName('npc_manager', 'formal')>> face as she closes the lock on the clear, pink chastity cage that now encases your privates. You can see a small key suspended from a chain necklace.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, may I present your newest <<if $fetish.sissy>>SISSI<<else>>girl<</if>> fashion accessory and now mandatory component of your uniform.@@"
<<else>>
"@@.npc_manager;Congratulations, while you have a bit further to go before you are out of your probation period I am very proud of your performance today, and even more certain that you are PERFECT for your new position...@@"
<</if>>
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
Your jaw is still dropped in shock at the <<if !$scene.addChastity>>new requirement to wear your <</if>>chastity device when <<=setup.getNpcName("npc_manager","formal")>> places a pill between your lips, holding one hand firmly over your mouth until you swallow.
<<else>>
As you pant in overwhelmed sensation <<=setup.getNpcName("npc_manager","formal")>> places a pill between your lips, holding one hand firmly over your mouth until you swallow.
<</if>>
<br><br>
"@@.npc_manager;Good girl. That little pill contains a sustained dosage of testosterone inhibitors. Blocking that toxic hormone from affecting you should be just the thing to help smooth your journey. Aggression, impetuousness, rebellion... a <<if $fetish.sissy>>sissy<<else>>good girl<</if>> craves not these things, and weaning you off testosterone will be just the ticket towards eliminating those impulses.@@"<br>
<br>
<<if $fetish.cum>>
<<if $scene.willpower>>
She takes a moment to dab her gloved hand in the pile of cum you've spilled on the floor.
<<else>>
She takes a moment to dab her gloved hand in the pile of cum you've spilled on her couch.
<</if>>
<br><br>
<</if>>
<<if $npc_manager.flags.require_chastity>>
<<switch $player.sec_style.submission.chastity>>
<<case "forced" "voluntary" "strict" "enthusiast">>
<<if $fetish.cum>>
"@@.npc_manager;You see <<=$player.first_name>>, this here,@@" she says, raising her cum spattered hand, "@@.npc_manager;Was your motivation, while this,@@"
<<else>>
"@@.npc_manager;You see <<=$player.first_name>>, that was your motivation, while this,@@"
<</if>>
she taps the <<if setup.isCage()>>head of your chastity cage<<else>>smooth front shield of your chastity belt<</if>>, "@@.npc_manager;Is how I will enforce your self restraint. You have proven to me that you are incapable of maintaining self control and thus I had little choice but to step in.@@"<br>
<br>
"@@.npc_manager;Every day before leaving for home you will enter my office and request the key. If you have proven to be obedient and efficient in your work, I will give you the key for the evening. When you arrive at work the following morning, I expect a chastity device of some type to be locked around your troublesome penis. You will leave the key on a dish at the corner of your desk for me to gather when I arrive. If you neglect to request your key at the end of the day, you will not be unlocked. Under no circumstances will you call me after hours, begging to be freed. You will find the outcome far less pleasant than merely remaining locked.@@"
<<case "money">>
"@@.npc_manager;Alright, whore,@@" She states, the blunt word instantly re-focusing your attention. "@@.npc_manager;You heard me — what other word is there for someone who sells off control of their privates? You are a foolish <<if $fetish.sissy>>SISSI<<else>>girl<</if>> whore, but I know just how to whip you into the more proper shape of an obedient <<if $fetish.sissy>>SISSI <</if>>Secretary. All you have to do is obey me utterly.@@"<br>
<br>
You tremble as she punctuates her words by wrapping her hand around your still-imprisoned member.<br>
<br>
"@@.npc_manager;For now, you will remain locked away and safe, belted or caged at all times, but particularly at the office. As soon as your trial is over, however... well, I expect you to bring the key in and offer it to me as part of your morning inspection. If you are good... I may let you take it home with you, but during your workday you will remain locked and safe.@@"<br>
<br>
<<printThought "Is this real? All I wanted was some extra money!">>
<<default>>
ERROR: unhandled player.sec_style.submission.chastity: <<=$player.sec_style.submission.chastity>>
<</switch>>
<br><br>
Pausing, her gaze shifts to look you directly in the eye.<br>
<br>
"@@.npc_manager;Do you understand this modification to your routine?@@"<br>
<br>
<<printThought "She only asked if I understand, she just assumes my agreement...">>
<<else>>
"@@.npc_manager;Now, I believe that is enough for one day, would you agree?@@"
<</if>>
<br><br>
[<<moveTo "event_manager_stage1_end_punishment_5" 'Blush and shyly respond, "Yes <<=setup.getNpcName("npc_manager", "formal")>>."' 360>>]
</div>/*#
#desc: phase 1 ending - manager feeds you your cum
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<playerOrgasm>>
<<if $fetish.cum && $player.sec_style.submission.chastity != "money">>
<<if setup.getTotalValue('cum')<1>>
<<setThreshold 'cum' 'secretary_cum' 'cumeater'>>
<<else>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<set $scene.cum = false>>
<<if $player.virgin.swallow_cum_self || $player.virgin.swallow_cum_other>>
<<set $scene.cum = true>>
<</if>>
<<if !$player.virgin.swallow_cum_self>>
<<set $player.virgin.swallow_cum_self = true>>
<</if>>
<<if !$player.sec_style.sex.drink_cum>>
<<set $player.sec_style.sex.drink_cum = "forced">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
She smiles and you feel a fleeting moment of relief.<br>
<br>
<<if $fetish.cum>>
"@@.npc_manager;Good. Now one last thing before you can get dressed,@@" she says, moving her cum covered hand towards your face,
<<if $player.sec_style.submission.chastity == "money">>
"@@.npc_manager;You have made quite a mess... so, unless you want me to dock your pay as a cleaning fee, well... get to licking.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_5a" 'Lick up your mess.' 360 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_manager_stage1_end_punishment_5a" 'Damn the cost, refuse.' 360 "<<set $scene.lick=false>>">>]
<<else>>
"@@.npc_manager;Clean up your mess, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"<br>
<br>
<<if $scene.cum>>
You try to resist, and yet your lips part for <<=ps(setup.getNpcName('npc_manager', 'formal'))>> forceful fingers. Like nimble steel rods her digits make their way into your mouth, as she wipes her fingers off on your tongue. Even more humiliating, you feel your <<getWordMyPenis>> straining in its prison as you are forced to suck clean each individual finger. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> hand retreats, gathering up another helping and bringing it to your waiting mouth. A look in her eye tells you resistance is futile and you find yourself meekly opening your mouth to continue your clean up. After a few more repetitions <<=setup.getNpcName('npc_manager', 'formal')>> stands, strips off the gloves drops them in the trash before returning the bottle of lube to her desk drawer.
<<elseif setup.getTotalValue('cum')>0>>
You hesitate for a moment, watching her smile begin to shift, finally leaning forward, opening your mouth for her waiting fingers. They quickly glide past your lips and you busy about your task, sliding your tongue and lips across <<=setup.getNpcName('npc_manager', 'formal')>> fingers. You're surprised by the taste, or maybe more by the fact that you don't seem to mind it. The flavour isn't bad at all, in fact, it's almost nice...
<<else>>
You hesitate, watching her lips twist into a cruel smile. It was one thing to have
<<if !$scene.willpower>>
<<if !$scene.plugged>>
your ass fingered
<<else>>
your ass fucked with her dildo
<</if>>
<<else>>
fucked yourself with her dildo
<</if>>when you were so desperately horny, but you're not sure you can stomach eating your own cum. As you begin to protest, <<=setup.getNpcName('npc_manager', 'formal')>>' fingers firmly slide between your lips. You struggle to ignore the taste, but manage to refrain from gagging. This is so humiliating...
<</if>>
<</if>>
<<else>>
"@@.npc_manager;Lovely. Now I, alas, have work yet to attend to, but you may dress and return home. I advise you to spend some time thinking on what happened today — and how it might inform your performance going forward.@@"
<</if>>
<<if !$fetish.cum || $player.sec_style.submission.chastity != "money">>
<br><br>
Still kneeling you shudder in submissive shock at what all has just happened.<br>
<br>
<<if $scene.qualfierEnd>>
"@@.npc_manager;Come on, now, stand up and get dressed, the day is over, and I imagine you have much to think on before you return to work <<if $now.getUTCDay()==5>>Monday<<else>>tomorrow<</if>>.@@"
<<else>>
"@@.npc_manager;Come on, now, stand up and get dressed, your job is to serve as my <<if $fetish.sissy>>SISSI <</if>>Secretary — and that involves more than just spending time on your knees.@@"
<</if>>
<br><br>
<<if setup.checkPlayerDressed()>>
[<<moveTo "event_manager_stage1_end_punishment_6" 'Continue.' 360>>]<br>
<<else>>
[@@.link_locked;I need to get dressed...@@]<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_punishment_6" "Put your clothes back on." 60 "<<useClothSetPop 'stage1end'>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: phase 1 ending: manager feeds you your cum money variant
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $scene.lick || $npc_manager.flags.cruel>>
<<if setup.getTotalValue('cum')<1>>
<<setThreshold 'cum' 'secretary_cum' 'cumeater'>>
<<else>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<set $scene.cum = false>>
<<if $player.virgin.swallow_cum_self || $player.virgin.swallow_cum_other>>
<<set $scene.cum = true>>
<</if>>
<<if !$player.virgin.swallow_cum_self>>
<<set $player.virgin.swallow_cum_self = true>>
<</if>>
<</if>>
<<if $scene.lick>>
<<if !$player.sec_style.sex.drink_cum>>
<<set $player.sec_style.sex.drink_cum = "money">>
<</if>>
<<elseif $npc_manager.flags.cruel>>
<<set $player.sec_style.sex.drink_cum = $npc_manager.flags.stage1Promo>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $player.work.payment -= 10>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
You tell yourself it's just to avoid having your pay cut... but there are other thoughts swirling in your head as you lick her palm clean, and she merely smiles.<br>
<br>
"@@.npc_manager;Good girl! Why the enthusiasm for cleanliness you just showed one might think you were my maid, a lovely idea... but you are not already contracted to be my personal <<if $fetish.sissy>>SISSI <</if>>Secretary, and I have far more consistent need of an assistant than a cleaner.@@"<br>
<br>
She rises to her feet.
<<else>>
Somehow you muster the will to shake your head, you've gone along with enough of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> escalations for one day.<br>
<br>
She looks at you for a long moment,
<<if $npc_manager.flags.cruel>>
and then brings the cum-splattered palm to your face, her other hand suddenly on the back of your head, irresistible strength forcing you to press your lips against her palm, smearing things around until you've had no choice but to have the gooey, salty substance infiltrate your lips.<br>
<br>
"@@.npc_manager;When I say to clean up, you clean. Do you think that you are above a little maid work? Hardly, you are a service professional, and you will serve however I profess.@@"<br>
<br>
You don't know if you actually managed to clean her palm... but you're struggling to breathe and she finally releases her grasp, leaving you face-down on all fours panting.
<<else>>
and you brace for some further punishment... but she just sniffs and smiles. "@@.npc_manager;Well, in that case I shall just dock your pay to cover the cleaning... a twenty credit a week reduction seems reasonable, and who knows, perhaps it will provide you that extra motivation to get through this little probationary period and start earning as a full-fledged <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<</if>>
<</if>>
<br><br>
<<if $scene.qualfierEnd>>
"@@.npc_manager;Come on, now, stand up and get dressed, the day is over, and I imagine you have much to think on before you return to work <<if $now.getUTCDay()==5>>Monday<<else>>tomorrow<</if>>.@@"
<<else>>
"@@.npc_manager;Come on, now, stand up and get dressed, your job is to serve as my <<if $fetish.sissy>>SISSI <</if>>Secretary — and that involves more than just spending time on your knees.@@"
<</if>>
<br><br>
<<if setup.checkPlayerDressed()>>
[<<moveTo "event_manager_stage1_end_punishment_6" 'Continue.' 360>>]<br>
<<else>>
[@@.link_locked;I need to get dressed...@@]<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_punishment_6" "Put your clothes back on." 60 "<<useClothSetPop 'stage1end'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: phase 1 ending - leave her office
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<addEvent 'cat_encounter'>>
<<set $scene.wipeAdvance = $player.work.advance > 0>>
<<set $player.work.advance = 0>>
<<set $npc_manager.stagevalues[1].promodate = $now>>
<<set $npc_manager.flags.spill_event = false>>
<<if $workEvents.hasOwnProperty("force_strict_masturbation")>>
<<removeWorkEvent 'force_strict_masturbation'>>
<</if>>
<<set $scene.hasFood = false>>
<<set _food = setup.getFirstItemTypeCarried("lunch")>>
<<if _food>>
<<set $scene.hasFood = true>>
<<deleteItem _food>>
<</if>>
<</if>>
<<set $player.location to "<<if $fetish.sissy>>SISSI <</if>>Secretary Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.wipeAdvance>>
"@@.npc_manager;Oh, one final note — despite your poor behaviour I have decided to forgive that advance I gave you. Consider it an encouragement bonus, a celebration of a new beginning... now it is up to you to take advantage of such.@@"<br>
<br>
Still in a daze, you nod.
<</if>>
You leave <<=setup.getNpcName('npc_manager', 'formal')>> office, satisfied, confused and alarmed.
<<if !$scene.plugged>>
You're surprised and a little ashamed of how much you enjoyed having your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> <<if $npc_manager.flags.stage1Promo == "strict">>pounded<<else>>fingered<</if>>.<br>
<br>
<<if $player.flags.masturbation.dildo>>
<<printThought "That was a lot more intense than doing it on my own...">>
<<else>>
<<printThought "Maybe I could try that at home...">>
<</if>>
<<else>>
You move back to your desk, squirming as you sit down. The ache from the plug once more occupying your ass a constant reminder of both the abuse and satisfaction inflicted upon you.
<<if !setup.checkItemOwned('basic_dildo')>>
<br><br>
<<printThought "I should see if I can find a dildo at the mall...">>
<</if>>
<</if>>
<br><br>
You can't help but attempt to grasp your <<getWordMyPenis>> in disbelief. It's not that it feels uncomfortable or painful. What troubles you is how freely you allowed yourself to be put in this position. Even more concerning than that, however, is how your <<getWordMyPenis false>> grows hard<<if setup.checkItemTypeWorn("cage")>> in its prison<</if>> when you recall how <<=setup.getNpcName('npc_manager', 'formal')>> had her way with you.<br>
<br>
<<if $scene.qualfierEnd || $scene.rewardFail>>
[<<moveTo "company_lobby" "Leave." 30 "<<set $player.cutscene.lockinventory = true>>">>]
<<else>>
<<if $player.sec_style.submission.chastity != "money" && $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey>>
<<printThought "I better make sure to have the key before I leave today.">><br>
<br>
<</if>>
<<if $now.getUTCHours() >= 12>>
<<if $now.getUTCDay() == 5>>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "It's Friday, your day is over..." 30>>]
<<else>>
<<if $scene.foodDelivery.done>>
<<printThought "All that, and I'm expected to just go back to work?!?">>
<<elseif $scene.hasFood>>
You realise that you somehow lost lunch in all the commotion... but bothering her about it seems like a bad idea.
<<else>>
<<printThought "Looks like no lunch for me...">>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Get working." 30 "<<set $scene.foodDelivery.done=true>>">>]
<</if>>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start working." 30>>]
<</if>>
<</if>>
</div>/*#
#desc: enter her office and submit to finish phase 1 for voluntary
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _noPanties = false>>
<<set _changedOutfit = false>>
<<if setup.isBodySlotVisible('penis') || setup.isBodySlotVisible('crotch')>>
<<set _noPanties = true>>
<<elseif setup.checkWornListSpecific(["panties","stockings"]) || setup.checkWornListSpecific(["panties","stockings","bra"])>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_2">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'stage1end'>>
<</if>>
<<if _noPanties>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_1_angered">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You enter the office of your superior <<=setup.getNpcName('npc_manager', 'formal')>>. You can tell in an instant that something is different about today, and not just because of the weight of the <<if setup.isCage()>>cage dangling between your legs<<else>>belt wrapping your hips<</if>>.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
<<=setup.getNpcName('npc_manager', 'formal')>> leans against the front of her desk and smiles at you. She nods approvingly before motioning you forward. "@@.npc_manager;So, my dear... you did it. You locked yourself up without me even asking you... truly this is a wondrous act, a precocious move that proves without a doubt that you were meant for the position I am training you for. More to the point for the moment, however, is that it means that you deserve a reward.@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> leans against the front of her desk and smiles at you. She nods approvingly before motioning you forward. "@@.npc_manager;I think it is time for us to take another step forward. No, do not say anything I know everything and because of that, well... now it is time for you to see a reward.@@"
<</if>>
<br><br>
You tremble slightly, looking bashfully downward as you find yourself unable to hold her dominant gaze.<br>
<br>
"@@.npc_manager;Once again you surprise and delight, able to communicate with a mere glance rather than waste words...@@"<br>
<br>
<<printThought "What have I done?">><br>
<br>
She speaks your instructions but, on some level, you already knew what was coming. All of her teasing has been leading to this moment. That's her thing. She teases you all the time. As you find yourself lowering to the floor, you can't tell which thought is scarier — how effective it has been, or that there are surely even more escalations to come...<br>
<br>
"@@.npc_manager;Come, crawl over and kiss my feet, seal your commitment...@@"<br>
<br>
Your heart pounds in your chest as you feel faint, already on your hands and knees as you look up, up from her heels. Up her long and smooth stocking-accentuated legs. Continuing up you can peek under her rather scandalously short leather skirt, to spy the garters holding up the sleek stockings. <<if $npc_technician.flags.dataservice_encounter.looked_up_skirt>>Suddenly mindful of the last time you peeked up a girl's skirt you <<else>>You <</if>>look away, your gaze gliding swiftly back down her legs to stare at her hypnotically swaying red pumps. Pointed and hot you estimate they sport nearly 15 cm stiletto heels.<br>
<br>
<<if setup.getTotalValue('feminization')<5>>
<<printThought "Those look impossible to walk in...">>
<<elseif setup.getTotalValue('feminization')<7>>
<<printThought "I would totally stumble in those...">>
<<else>>
<<printThought "I would totally stumble in those, but I maybe I could try wearing more reasonable heels someday?">>
<</if>>
<br><br>
"@@.npc_manager;Ah, ah. First, strip... down to your underwear shall be... sufficient.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_1_a" "Remove everything besides your underwear." 180>>]
<<hint $options "You can still do this manually.">>
</div>/*#
#desc: enter her office to submit to finish phase 1
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _noPanties = false>>
<<set _changedOutfit = false>>
<<if setup.isBodySlotVisible('penis') || setup.isBodySlotVisible('crotch')>>
<<set _noPanties = true>>
<<elseif setup.checkWornListSpecific(["panties","stockings"]) || setup.checkWornListSpecific(["panties","stockings","bra"])>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_2">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'stage1end'>>
<</if>>
<<if _noPanties>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_1_angered">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You slowly enter the office of your superior <<=setup.getNpcName('npc_manager', 'formal')>>. Her official title may be Director of Human Resources but, at least for you, referring to her as Mistress might be more accurate. When you took on this job offer a few days ago you had no idea of the ride you were in for. Would you have accepted the offer if you had? The fact you struggle to figure out the answer to that question has your heart beating faster, like it's trying to escape your chest.<br>
<br>
<<printThought "Am I really going to do this?">><br>
<br>
Your hand is still on the door even after you step through and close it behind you. For some reason you're unable to let go of the handle.<br>
<br>
<<printThought "If I let go... will there be any going back?">><br>
<br>
You can sense yourself at a threshold; if you let go you will stay in Wonderland, and find out how deep the rabbit hole really goes. And from where you're standing now it goes down quite a ways... and at the end of it your queen awaits. You gulp, your manager is definitely kinder than the Red Queen from the story. Kinder, but far more calculating.<br>
<br>
You shake your head, pulling yourself together and yanking your hand away from the handle. Your brief hesitation does not elude your Mistress' keen eye. She is sitting on her leather chair, legs crossed, her feet swaying side to side as if to tease you. No. Not as if. She teases you. That's her thing. She teases you all the time. And all of it, everything she has had you do thus far has been leading up to this point. Unable to meet her gaze your eyes trace up her from her beautiful heels. Her long and smooth legs are accentuated by black nylon stockings. Continuing up you can peek under her rather scandalously short leather skirt, to spy the garters holding up the sleek stockings. <<if $npc_technician.flags.dataservice_encounter.looked_up_skirt>>Suddenly mindful of the last time you peeked up a girl's skirt you<<else>>You<</if>> look away, your gaze gliding swiftly back down her legs to stare at her hypnotically swaying red pumps. Pointed and hot you estimate they sport nearly 15 cm stiletto heels.<br>
<br>
<<if setup.getTotalValue('feminization')<5>>
<<printThought "Those look impossible to walk in...">><br>
<<elseif setup.getTotalValue('feminization')<7>>
<<printThought "I would totally stumble in those...">><br>
<<else>>
<<printThought "I would totally stumble in those, but I maybe I could try wearing more reasonable heels someday?">><br>
<</if>>
<br>
You recall that you are expected to strip down to your underwear.<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_1_a" "Remove everything besides your underwear.">>]
<<hint $options "You can still do this manually.">>
</div>/*#
#desc: finish stage 1 from too much time
#status: RELEASED 0.7.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _noPanties = false>>
<<set _changedOutfit = false>>
<<if setup.isBodySlotVisible('penis') || setup.isBodySlotVisible('crotch')>>
<<set _noPanties = true>>
<<elseif setup.checkWornListSpecific(["panties","stockings"]) || setup.checkWornListSpecific(["panties","stockings","bra"])>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_2">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'stage1end'>>
<</if>>
<<if _noPanties>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<decrementEmotion 'anger' 'npc_manager' 3>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_1_angered">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You aren't sure if it's the desire to keep your job or something else that drives you but, whatever it is, you find yourself on your hands and knees, leaning in to gently kiss the tip of her shoe.<br>
<br>
"@@.npc_manager;Wonderful@@" she purrs before turning to lead the way into her office. "@@.npc_manager;Now take off your clothes and let us continue this properly. There may be hope for you yet.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_1_a" "Follow and remove everything besides your underwear.">>]
<<hint $options "You can still do this manually.">>
</div>/*#
#desc: tried to submit to end phase 1, but she's angry
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkOutsideDecency()>>
<<initRoom>>
<<moveTo "room_office_after_work">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 10 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager_dom;<<=$player.first_name>>, put your underwear back on at once!@@" <<=setup.getNpcName('npc_manager', 'formal')>> shouts at you.<br>
<br>
<<printThought "Oh <<getWordGod>>. What have I done?">><br>
<br>
She shakes her head in disappointment. Taking a cleansing breath she continues in a much calmer tone. "@@.npc_manager;Maybe I have mistakenly put too much faith in your self control. It seems like you are, as yet, unprepared to further advance in your training. We will try this again another time. Please put your clothes back on and close the door behind you after you leave the office.@@"<br>
<br>
You turn red with shame, not knowing what overcame you.<br>
<br>
[<<moveTo 'event_manager_stage1_end_reward_1_angered_2' 'Put your clothes back on and leave.' 60>>]
</div>/*#
#desc: kicked out of her office having angered her attempting to submit to end phase 1
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'stage1end'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager_dom;<<=$player.first_name>>, put your underwear back on at once!@@" <<=setup.getNpcName('npc_manager', 'formal')>> shouts at you.<br>
<br>
<<printThought "Oh <<getWordGod>>. What have I done?">><br>
<br>
You put your clothes back on, not knowing what overcame you. You just blew your chance. Maybe if <<=setup.getNpcName('npc_manager', 'formal')>> is forgiving enough you might get another opportunity in the future.<br>
<br>
[<<moveTo "room_office_after_work" 'Leave the office.' 30 '<<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: strip down to receive your phase 1 end reward
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverythingButUnderwear>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Stripping down in front of <<=setup.getNpcName('npc_manager', 'formal')>> has become very natural to you of late. You fold your clothes and put them on the ground next to you.<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_2" "Get on your knees." 30>>]
</div>/*#
#desc: start to kiss manager's heels
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 50>>
<<setThreshold 'foot' 'secretary_foot' 'stage1_reward'>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_reward'>>
<<set $scene.caged = (setup.checkItemTypeWorn("cage"))>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Like a puppet on her strings, you crawl towards <<=setup.getNpcName('npc_manager', 'formal')>>. You take a look at the soles up close. Looks rather clean, so you assume they're not the ones she wore all day long.
<<if setup.getTotalValue('humiliation')>=5>>
Not that you would have cared much for it anyway. The things you had to endure lately are nothing, compared to kissing a dirty shoe.
<</if>>
You pucker your lips and kiss the heel. Suddenly the whole situation crashes down on you like an rock slide: You've never even kissed a girl in your life before. Not like this. A small kiss on the cheek maybe, practically chaste, nothing with gusto or purpose.<br>
<br>
<<if $player.virgin.blowjob == "npc_gloryhole">>
<<printThought "First I put a kiss on a big <<getWordPenis>>, and now on my superior's... or is that Mistress? heel. And the thought that turns me on. Like a lot. What the hell is happening to me?">>
<<else>>
<<printThought "My first real kiss... is a token of my submission towards my superior. Towards my Mistress. And the thought that turns me on. Like a lot. What the hell is happening to me?">>
<</if>>
<br><br>
A sinister looking smile spreads across <<=setup.getNpcName('npc_manager', 'formal')>> face, while she leans towards you as you rise after your kiss. She points with a finger at you and touches your nose softly, stroking over your cheeks and finally stops at your cheekbone where she rests her hand on your face.<br>
<br>
"@@.npc_manager;Such dedication, <<=$player.first_name>>. Good. Very good indeed. But, and that is a very cute butt in those <<=setup.getItemTypeName('panties')>>, how far are you really willing to go? What is the true extent of your dedication, my dear <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@" she whispers in your ear while removing the heel you just kissed to reveal her foot. Her toenails are painted red and perfectly manicured. You have a feeling you know where this is heading.<br>
<br>
"@@.npc_manager;I want you to show my feet the dedication you are supposed to show everything in life. Caress them, lick them, kiss them, love them. Lick my feet slave. Lick them and I will show you what true bliss means!@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_3" "Enthusiastically lick them because you want to." 360 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_manager_stage1_end_reward_3" "Reluctantly lick them because you have to." 300 "<<set $scene.lick=false>>">>]<br>
[<<moveTo "event_manager_stage1_end_reward_2_end" "Refuse to lick them." 180>>]
</div>/*#
#desc: refuse to lick manager's heels
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$clothSetsInt.hasOwnProperty("stage1end")>>
<<useClothSetPush 'stage1end'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.submission.chastity != "">>
You start to stand up only for her foot to press you back to the ground. "@@.npc_manager;I think not. You have shown your proclivity for chastity, and it thus falls to me to take control, lest this nascent submission be... misused. You had the opportunity to advance gently but now? Well, foolish <<if $fetish.sissy>>sissys<<else>>employees<</if>> get what is coming to them. Now,@@" she continues while grinding her heel painfully into the side of your skull. "@@.npc_manager_dom;Strip, and lay down on the couch.@@"<br>
<br>
She lifts her foot and you look up at <<=setup.getNpcName('npc_manager', 'formal')>> as she looms over you brimming with rage, like some sort of towering demoness.<br>
<br>
<<printThought "Shit... what have I done now?">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_punishment_2" "Get fully naked and obey her command." 60 "<<removeAllClothing>><<set $scene.rewardFail=true>>">>]<br>
<<else>>
<<hint $options "You can remove clothing in the inventory.">><br>
<</if>>
[<<moveTo "event_manager_stage1_end_strict_2" "You refuse! She can't make you do this!" 60 "<<set $scene.object=true>><<set $scene.rewardFail=true>>">>]
<<elseif $player.work.qualifyingperiod < 10>>
You start to stand up only for her foot to press you back to the ground. "@@.npc_manager;I think not. We have wasted far too much of your probation already. I have put up with your stubbornness for too long and today your career WILL be advancing. You had the opportunity to go gently but now? Well, foolish <<if $fetish.sissy>>sissys<<else>>employees<</if>> get what is coming to them. Now,@@" she continues while grinding her heel painfully into the side of your skull. "@@.npc_manager_dom;Strip, and lay down on the couch.@@"<br>
<br>
She lifts her foot and you look up at <<=setup.getNpcName('npc_manager', 'formal')>> as she looms over you brimming with rage, like some sort of towering demoness.<br>
<br>
<<printThought "Shit... what have I done now?">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_punishment_2" "Get fully naked and obey her command." 60 "<<removeAllClothing>><<set $scene.rewardFail=true>>">>]<br>
<<else>>
<<hint $options "You can remove clothing in the inventory.">><br>
<</if>>
[<<moveTo "event_manager_stage1_end_strict_2" "You refuse! She can't make you do this!" 60 "<<set $scene.object=true>><<set $scene.rewardFail=true>>">>]
<<else>>
She shakes her head in disappointment. "@@.npc_manager;Maybe I have put an excess of faith in your commitment to your career. It appears that you are not yet ready to advance in your training. We will try this again another time. Please put your clothes back on and close the door behind you when you leave the office.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "room_office_after_work" "Get dressed and leave." 180 "<<useClothSetPop 'stage1end'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: lick manager's heels
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.stage1Promo = "reward">>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if $scene.lick>>
<<applyExperience 'foot' 8 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>
<<changeHorny 50>>
<<else>>
<<applyExperience 'foot' 4 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'almost' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 6 'little' $SEEN_FRIEND>>
<<set $player.timebased.horny = 50>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/footjob_01.mp4">>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
You lean forward and plant a kiss on her big toe. The thought of licking her feet turns you on incredibly and your <<getWordMyPenis>> twitches with excitement.<br>
<br>
<<printThought "I can't believe that I'm on my knees, licking <<=ps(setup.getNpcName('npc_manager', 'formal'))>> feet. I'm really turning into a submissive slave...">><br>
<br>
<<else>>
You lean forward and plant a kiss on her big toe. The thought of licking her feet does not really turn you on at all, but despite the humiliation you still going through with it,
<br>
<<printThought "I can't believe, that I'm on my knees, licking <<=ps(setup.getNpcName('npc_manager', 'formal'))>> feet. Oh <<getWordGod>>, this is so humiliating. This better be worth it.">><br>
<br>
<</if>>
After kissing her toe, you start to use your tongue, licking her foot up and down, caressing the toes with your lips. It feels kind of strange, since she's wearing nylon stockings, but after a few moments you stop minding much. You take her foot in your hands after you've licked it over a dozen times and start to massage it, while gently sucking on her big toe. Even though <<=setup.getNpcName('npc_manager', 'formal')>> is very good at keeping her expression collected you can tell that it is partially a facade by her hands, which are clawing into the chair to tell another story. That's the one thing no one can ever take away from you, your mad foot massaging skills. After a while a soft moan escapes her lips.<br>
<br>
"@@.npc_manager;That... that is something we shall do more often in the future.@@"<br>
<br>
<<if $scene.lick>>
You silently agree.
<<else>>
You would prefer if you could skip the licking part and go straight to the massage, but you don't think that is likely to be the case.
<</if>>
<<if !$scene.caged>>
But it seems the whole ordeal has excited you a lot as well, to a level where that fact is clearly visible.
<<else>>
But it seems the whole ordeal has excited you a lot as well, and even though you thought you're safely locked away, a trickle of precum manages to escape your <<getWordMyPenis>>,
<<if setup.getItemFromType('cage')!= "">>
running down <<if setup.isCage()>>your balls<<else>>your leg<</if>>.
<<else>>
staining your underwear.
<</if>>
<</if>>
<br><br>
<<printThought "Oh, oh...">><br>
<br>
[<<moveTo "event_manager_stage1_end_reward_4" "Continue." 300>>]
</div>/*#
#desc: transition from licking her heels to your reward
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.clothes = "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkVisibleClothingTag('cute')> 40>>
<<set $scene.clothes='cute'>>
<<elseif setup.checkVisibleClothingTag('bold')> 40>>
<<set $scene.clothes='bold'>>
<<elseif setup.checkVisibleClothingTag('female') > 40>>
<<set $scene.clothes='female'>>
<<elseif setup.checkVisibleClothingTag('male')> 20>>
<<set $scene.clothes='male'>>
<<else>>
<<set $scene.clothes='unknown'>>
<</if>>
<<if $scene.caged>>
<<removeAllClothing>>
<</if>>
<</if>>
<<if setup.isBodySlotVisible('penis') && setup.isBodySlotVisible('crotch')>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_reward_5">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Get up!@@" she commands and you scramble to your feet without hesitation.<br>
<br>
"@@.npc_manager;Eager as ever,@@" she says with a sharp tone, while taking a good look at your predicament. There's a sudden feeling of pressure as her hand grasps your <<=setup.getItemTypeName('panties')>> covered <<getWordMyPenis>>.<br>
<br>
<<if $scene.caged>>
The feeling of her hand <<if setup.isCage()>>wrapped around your cage<<else>>pressed against the front shield of your chastity belt<</if>>, so close and yet with the hard prison "protecting" you from her grasp... it is odd, humiliating and oh-so-arousing all at once.<br>
<br>
"@@.npc_manager;Mmmmm, I do so adore a <<if setup.isCage()>>caged<<else>>belted<</if>> <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, so much more behaved, and obedient.@@" She gives your testicles a firm squeeze before continuing on. "@@.npc_manager;That is more than enough of that for now, remove your panties so I can give you a reward more... appropriate of a <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_5_alt" "Do as instructed." 300>>]
<<else>>
"@@.npc_manager;I am surprised a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> like you is not spanking it any opportunity you have... well, this time I will give you the benefit of the doubt, that this is not 100% your own fault. Still, if I am accepting partial responsibility for insufficiently monitoring your... state, well then it is only right that I also propose a remedy for your problem. We simply need to find a more permanent solution to your small deficit in self control.@@"<br>
<br>
You flush as <<=setup.getNpcName('npc_manager', 'formal')>> emphasises the word small, but are quickly brought back to attention as her grip tightens around your <<getWordMyPenis>>.
<<if setup.checkItemTypeWorn("panties")>>
You can feel the inside of your <<=setup.getItemTypeName('panties')>> begin to rub against your head and let out a muffled moan.<br>
<br>
"@@.npc_manager;Hmph,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a smirk. "@@.npc_manager;Free your <<if $fetish.sph>>tiny <</if>>penis and lay on the couch. Stare up at the ceiling and DO NOT look away,@@" her words are emphasised by a firm squeeze around your testicles.
<<else>>
Her fingers dig into your exposed flesh and you let out a muffled moan.<br>
<br>
"@@.npc_manager;Hmph,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says with a smirk. "@@.npc_manager;So wanton. Lay on the couch. Stare up at the ceiling and DO NOT look away,@@" her words are emphasised by a firm squeeze around your testicles.
<</if>>
<br><br>
<<hint $options "You need to remove your panties.">><br>
<<if $options.ezchange>>
<br><br>
[<<moveTo "event_manager_stage1_end_reward_5" "Strip as instructed." 180 "<<removeAllClothing>>">>]
<</if>>
<</if>>
</div><<if setup.checkItemTypeWorn("panties")>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<set $scene.pantieObj = setup.getItemObj($scene.panties)>>
<<if $scene.panties == "">>
<<set $scene.panties_type = "none">>
<<elseif $scene.pantieObj.tags.indexOf('modest') > -1>>
<<set $scene.panties_type = "modest">>
<<elseif $scene.pantieObj.tags.indexOf('cute') > -1>>
<<set $scene.panties_type = "cute">>
<<elseif $scene.pantieObj.tags.indexOf('bold') > -1>>
<<set $scene.panties_type = "bold">>
<<elseif $scene.pantieObj.tags.indexOf('sissy') > -1>>
<<set $scene.panties_type = "sissy">>
<<elseif $scene.pantieObj.tags.indexOf('fetish') > -1>>
<<set $scene.panties_type = "fetish">>
<<elseif $scene.pantieObj.tags.indexOf('female') > -1>>
<<set $scene.panties_type = "female">>
<<elseif $scene.pantieObj.tags.indexOf('bold') > -1>>
<<set $scene.panties_type = "male">>
<<else>>
<<set $scene.panties_type = "none">>
<</if>>
<<if $scene.panties_type=="cute">>
"@@.npc_manager;You have been a good <<if $fetish.sissy>>SISSI<<else>>girl<</if>> to wear such cute panties for me. They stretch so nicely, <<if $scene.caged>>I could even stroke your <<getWordMyPenis>> without taking them off... if you were not in chastity, of course<<else>>I can even stroke your <<getWordMyPenis>> without taking them off!<</if>>@@"
<<elseif $scene.panties_type=="bold">>
"@@.npc_manager;<<=$player.first_name>>, it is not your place to wear such things.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> pulls at the seam of your panties before letting them snap back painfully.<br>
<br>
"@@.npc_manager;I want my <<if $fetish.sissy>>SISSI<<else>>girl<</if>> in a cute pair of pink panties. Frankly, your outfit paints you as a bit of an impetuous slut and I am not very fond of that at all, understood?@@"
<<elseif $scene.panties_type=="male">>
"@@.npc_manager;<<=$player.first_name>>, what have I said about your uniform. This,@@" she says pulling harshly on your underwear, "@@.npc_manager;Is unacceptable. You are to dress in a pink bra and pink pair of panties as dictated in your contract. I do not understand your plan, but know that if you continue disobeying my orders you can expect your punishment to be quite severe.@@"
<<elseif $scene.panties_type=="sissy">>
"@@.npc_manager;Now these are truly perfect for a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> such as yourself. Nice and pink and with all the soft, cute lace? I bet they feel as good as they look, all tight and snug against your soft skin.<<if !$scene.caged>> You know you are lucky I can stroke you without taking them off... and it would really be such a shame to take them off.<</if>>@@"
<</if>>
<</if>>/*#
#desc: manager starts jerking you off + teasing you about panties
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.panties = setup.getItemFromType('panties')>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You move towards the wide-seated couch and lay across it, the soft fabric and firm cushioning putting you slightly at ease.<br>
<br>
<<printThought 'Is this going to be the "bliss" <<=ps(setup.getNpcName("npc_manager", "formal"))>> was talking about?'>><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> moves out of your field of vision leaving you only able to hear her open her desk and remove several items. The array of sounds leaves you guessing what might be coming, but you're sure about what comes next — the sound of a pair of latex gloves stretching over her hand. With slow, purposeful strides <<=setup.getNpcName('npc_manager', 'formal')>> approaches the couch and bends over you.<br>
<br>
"@@.npc_manager;My, my, someone is still so hard...<<if $fetish.sph>> and yet so disappointing.<</if>>@@"<br>
<br>
You feel your cheeks flush in shame and then surprise as <<=setup.getNpcName('npc_manager', 'formal')>>
<<if $scene.panties != "">>
slides her hands under your panties and
<</if>>
firmly grasps your <<getWordMyPenis>>. You lift your head forward only for her to glare back at you, her free hand lightly slapping <<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>your balls<<else>>the inside of your thigh<</if>>. "@@.npc_manager;Head back, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>,@@" she says sternly and you lower your head. You can feel her latex-covered fingers grip you tightly, squeezing your <<getWordMyPenis>> as her hand moves up and down.<br>
<br>
<<include stage1_reward_panty_description>>
<br><br>
A moan escapes your lips, though you can't tell whether it's out of pain, pleasure or embarrassment.<br>
<br>
"@@.npc_manager;Now then, you need to learn that I will not tolerate your hard <<getWordMyPenis false>> anywhere in my office. Before we... attend to this LITTLE failure... do you have anything to say for yourself?@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_5_forced" "Try to explain that it isn't your fault!" 120>>]<br>
[<<moveTo "event_manager_stage1_end_reward_5_obedient" "Apologise for your failure and ask how you can do better in the future." 120>>]
</div>/*#
#desc: apologise for your horniness
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
<<if $player.sec_style.submission.chastity == "">>
<<set $npc_manager.flags.require_chastity = true>>
<<set $player.sec_style.submission.chastity = "obedient">>
<<setThreshold 'bondage' 'other_bondage' 'cage_forced'>>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<</if>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11'
6
'event_psychiatrist_session_chastity_1'
false
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Mmmm, you are learning. Not trying to debate your failure or that it is somehow not your fault, merely acknowledging the error and requesting assistance so that you will do better going forward.@@"<br>
<br>
<<if $scene.panties == "">>
You feel her speed increase, moving her hand along your <<getWordMyPenis>>.<br>
<<else>>
You feel her speed increase, the side of your panties rubbing against your <<getWordMyPenis>>.<br>
<</if>>
<br>
"@@.npc_manager;Fortunately there is a very effective and... secure solution to your little difficulty, but for now you can just lie back and relax. While I would prefer my secretary behaved perfectly at all times, you making mistakes, yet being so obedient and eager to improve is, in some ways, even better.@@"<br>
<br>
You feel her hand come off your <<getWordMyPenis>> and give your <<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>balls two quick squeezes<<else>>armoured crotch a gentle pat<</if>>.<br>
<br>
"@@.npc_manager;On your side, <<=$player.first_name>>, facing away from me.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_6" "Comply and move to your side." 120>>]
</div>/*#
#desc: try to explain horniness isn't your fault, get chided
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
<<set $npc_manager.flags.require_chastity = true>>
<<set $player.sec_style.submission.chastity = "obedient">>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<<setThreshold 'bondage' 'other_bondage' 'cage_forced'>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11'
6
'event_psychiatrist_session_chastity_1'
false
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You start to object only for her to cut you off with a sharp squeeze.<br>
<br>
"@@.npc_manager;Quiet, trying to talk your way out of your mistakes, or pawn the blame off on others is the opposite of what you should be doing.@@"<br>
<br>
She leans closer, staring you right in the eye until you can't help but flinch and look away. In response she roughly takes hold of your chin and forces you to stare up at her.<br>
<br>
"@@.npc_manager;Understand that, while I will punish errors, that is me helping your development. Failing to admit to, learn from and rectify a prior error... that would constitute a mistake, and mistakes I will deal with VERY harshly.@@"<br>
<br>
She releases the grip on your chin, her hand returning to its prior position of gripping your <<getWordMyPenis>>.<br>
<br>
"@@.npc_manager;Now then... moving along.@@"<br>
<br>
<<if $scene.panties == "">>
You feel her speed increase, moving her hand along your <<getWordMyPenis>>.<br>
<<else>>
You feel her speed increase, the side of your panties rubbing against your <<getWordMyPenis>>.<br>
<</if>>
<br>
"@@.npc_manager;And as you have failed to maintain an altogether simple requirement, and even gone so far as to protest it being not entirely your fault being some manner of excuse... well, you have forced me to take this matter into my own hands.@@"<br>
<br>
Her hand comes off your <<getWordMyPenis>> and gives your <<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>balls two quick squeezes<<else>>armoured crotch a gentle pat<</if>>.<br>
<br>
"@@.npc_manager;On your side, <<=$player.first_name>>, facing away from me.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_6" "Comply and move to your side." 120>>]
</div>/*#
#desc: voluntary/money chastity, go straight to anal
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "No. I don't think so.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
<<if $player.sec_style.submission.chastity == "">>
<<set $npc_manager.flags.require_chastity = true>>
<<set $player.sec_style.submission.chastity = "obedient">>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<<setThreshold 'bondage' 'other_bondage' 'cage_forced'>>
<</if>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11'
6
'event_psychiatrist_session_chastity_1'
false
>>
<<set $scene.cage = setup.getItemFromType('cage')>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
She steps away, keeping an eye on you as she walks over to her desk to retrieve several items. The array of sounds leaves you guessing what might be coming, but you're sure about what comes next — the sound of a pair of latex gloves stretching over her hand. With slow, purposeful strides <<=setup.getNpcName('npc_manager', 'formal')>> approaches the couch and leans over you.<br>
<br>
"@@.npc_manager;Prepare yourself.@@" She states, though the brisk tone in her voice indicates you have scant time left to do such.<br>
<br>
You feel your cheeks flush in shame and then surprise as <<=setup.getNpcName('npc_manager', 'formal')>>
<<if setup.checkItemTypeWorn("panties")>>
slides her hands under your panties and
<</if>>
<<if !$scene.cage || setup.isCage()>>
firmly grasps your
<<else>>
places her hand firmly against the front shield covering your
<</if>>
<<getWordMyPenis false>>. You lift your head forward only for her to glare back at you, her free hand lightly slapping <<if !setup.checkItemTypeWorn("cage") || setup.isCage()>>your balls<<else>>the inside of your thigh<</if>>. "@@.npc_manager;Head back, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>,@@" she says sternly and you lower your head. You feel her start to peel off your panties as she whispers to you.<br>
<br>
<<include stage1_reward_panty_description>><br>
<br>
A moan escapes your lips, though you can't tell whether it's out of pain, pleasure or embarrassment.<br>
<br>
"@@.npc_manager;Ah, I could sit here forever, you totally helpless, literally in the palm of my hand...@@"<br>
<br>
She meets your gaze with a smile, possessive, certainly, but also somehow... wistfully comforting. It lasts but a moment before she continues.<br>
<br>
"@@.npc_manager;I get distracted. I promised you a reward.@@"<br>
<br>
<<if $scene.cage>>
Her fingers trace down the
<<if setup.isCage()>>
top of your cage before giving your balls two quick squeezes.
<<else>>
front of your chastity belt.
<</if>>
<<else>>
Her hand comes off your <<getWordMyPenis>> and gives your balls two quick squeezes.
<</if>>
<br><br>
"@@.npc_manager;On your side, <<=$player.first_name>>, facing away from me.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_reward_6" "Comply and move to your side." 120>>]
</div>/*#
#desc: manager fingers or dildo's your ass
#status: FINISHED 0.4.0.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.willpower = false>>
<<set $scene.plugged = setup.getItemFromType('plug')>>
<<setThreshold 'anal' 'secretary_anal' 'stage1_end'>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_3'
0
'theme_psychiatrist_penetration_1'
false
>>
<<if $scene.plugged == "">>
<<applyExperience 'anal' 4 'almost' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<<removeItem $scene.plugged true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're too aroused to disobey and roll off your back and onto your side as you hear <<=setup.getNpcName('npc_manager', 'formal')>> picking something up.
<<if $scene.plugged=="">>
<<if setup.isItemTypeEquipped('panties')>>
There is a sharp popping sound followed by
<<if $scene.panties_type=="sissy">>
the unmistakable ziiiippp of her exposing your rear using the naughty zipper at the back of your panties.
<<else>>
a gloved finger pulling the back of your panties down, exposing your ass.
<</if>>
<<else>>
A gloved finger slides down your back, exposing your ass.
<</if>>
<br><br>
<<printThought "This can't be happening?!">><br>
<br>
Her fingers lift your top asscheek up and you feel something pressing against your puckered hole. The sudden coolness is startling as something wet spreads around the ring of your asshole and between your cheeks.<br>
<br>
"@@.npc_manager;I have been managing this department for quite some time now, <<=$player.first_name>> and in that time I have learned quite a few things about how to deal with difficult employees. You had been acting somewhat of a model employee lately, but that could well have been pure survival instinct. A Beta bowing to its Alpha. Or are you just an Omega? No matter, we will find out sooner or later. Anyway, now that I am aware of your failings it is my job to make sure that your dedication to the company, and myself, is complete and does not decay over time.@@"<br>
<br>
You can feel her body shift on the couch as a gloved hand returns to <<if $scene.caged>>grasping your cage<<else>>your erect <<getWordMyPenis>><</if>>, the other massaging your nervous hole.<br>
<br>
"@@.npc_manager;Some employees,@@" she says while <<if $scene.caged>>gently squeezing<<else>>beginning to slowly stroke<</if>> your <<getWordMyPenis>>, "@@.npc_manager;Learn best through positive motivation.@@"<br>
<br>
Her stroking intensifies as her grip tightens, her other hand continuing to finger your asshole.<br>
<br>
"@@.npc_manager;Others, however, require something else. something... firmer.@@" She punctuates the statement by <<if $scene.caged>><<if setup.isCage()>>digging her nails into your exposed sack, giving just enough pressure for you to<<else>>placing a hand over the front shield of your belt, her finger-nails digging into your flesh on either side and you<</if>><<else>>rubbing her thumb around the head of your <<getWordMyPenis>>, pressing into it firmly until you<</if>> let out a soft cry of pain.<br>
<br>
"@@.npc_manager;You, <<=$player.first_name>>, have been very dutiful of late. But even your best has proven... insufficient, imperfect. <<if $scene.caged>>Fortunately you are already on to the solution, having freely sped down the path of restraint<<else>>Fortunately, I know the solution. You need to be taught the value of restraint<</if>>... self control is a fundamental pillar of society.@@"<br>
<br>
It's as if you can hear the smile spreading across her lips and the chuckle behind her words leaving you with a foreboding sense of dread. Your fears are confirmed by her finger at your backside slowly pushing into your moist hole. You tense up only for your ass to be greeted with a hard swat.<br>
<br>
"@@.npc_manager;I understand you are nervous, <<=$player.first_name>>. Is this your first time? No matter, consider this merely another form of discipline, another part of the contract you willingly signed. Remember, <<=$player.first_name>>, this is what you wanted. I can feel you struggling enough as it is, so I will not command you to relax, but it is my strong recommendation that you do so.@@"<br>
<br>
Her lecture finished, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her probing, pushing her finger in and out of your tight bottom with a steady rhythm. You do your best to relax, but the sensation is so alien and strange that you find it hard to comply<<if $scene.caged>>; though that is not the only thing that is hard at the moment<</if>>.<br>
<br>
True to her word, <<=setup.getNpcName('npc_manager', 'formal')>> continues her onslaught, sliding the finger in further and further with every thrust. As you prepare to beg her to stop, the grip around your <<getWordMyPenis>> softens. Her hand begins to glide steadily up and down, squeezing out a soft moan from between your lips. You can hear your captor giggle with satisfaction, her finger plunging deeper into your asshole.<br>
<br>
"@@.npc_manager;It sounds as though someone is enjoying themselves. Does my <<if $fetish.sissy>>SISSI <</if>>Secretary enjoy having her asshole fingered?@@"<br>
<br>
You contemplate on how best to answer as her finger moves deeper, only for it to rub against what feels like the base of your <<getWordMyPenis false>>. You shriek in a mix of discomfort and delight, the novel sensation vibrating through you.<br>
<br>
"@@.npc_manager;Oh my, perhaps you are enjoying this too much. Should I stop rubbing your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> <<=$player.first_name>>?@@"<br>
<br>
It takes several moments for you to concentrate enough to fumble out a response, though <<=setup.getNpcName('npc_manager', 'formal')>> does not seem particularly interested in relenting.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_stage1_end_reward_6_willpower" "Focus all your willpower and ask her to stop." 240>>]<br>
<<else>>
[@@.link_locked;You don't feel like you've got enough strength left in you to resist at all@@]<br>
<</if>>
[<<moveTo "event_manager_stage1_end_reward_7" 'Say "N-no <<=setup.getNpcName("npc_manager", "formal")>>, please continue..."' 240>>]
<<else>>
<<if setup.isItemTypeEquipped('panties')>>
There is a sharp popping sound followed by
<<if $scene.panties_type=="sissy">>
the unmistakable ziiiippp of <<=setup.getNpcName('npc_manager', 'formal')>> using the naughty zipper at the back of your panties to expose your plugged ass.
<<else>>
a gloved finger pulling the back of your panties down, exposing your plugged ass to <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>
<<else>>
a gloved finger sliding down your back, exposing your plugged ass to <<=setup.getNpcName('npc_manager', 'formal')>>.
<</if>>
<br><br>
<<printThought "There's no way she'll miss that...">><br>
<br>
Her fingers lift your top asscheek up and you can hear <<=setup.getNpcName('npc_manager', 'formal')>> chuckling softly.
<br><br>
"@@.npc_manager;You are just so full of surprises, <<=$player.first_name>>. I cannot say that I am displeased by this one, no this does not displease me in the slightest.@@"<br>
<br>
You feel her fingers probing at the plug, pushing and pulling against it. In a matter of seconds you're moaning and gently bucking your ass, trying to match the motions of her fingers. Your efforts to get more stimulation are in vain as her fingers grip the base of the plug and begin to pull. "@@.npc_manager;Relax your rear, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@" You comply, taking a deep breath, through your nose and pushing out with your ass. In one smooth motion the plug slides from your asshole, leaving you feeling momentarily empty.<br>
<br>
You hear <<=setup.getNpcName('npc_manager', 'formal')>> stand and listen to the clicking of her high heels as she walks to her desk, pulls open a drawer and returns to the couch. Her hand returns to your ass and you feel something cool sliding along your ass crack, pressing against your puckered hole. At first it feels like <<=setup.getNpcName('npc_manager', 'formal')>> is replacing your plug, but then you realise, no, whatever is behind you feels bigger than you are accustomed to.<br>
<br>
"@@.npc_manager;Do not worry, <<=$player.first_name>>, just a little more,@@" she says reassuringly, following up with a slow push. You suddenly feel full again. Very full. You moan out as what you now realise is a dildo, HER dildo begins to slide in and out of your ass.<br>
<br>
"@@.npc_manager;I have been managing this department for quite some time now, <<=$player.first_name>> and in that time I have learned quite a few things about how to deal with difficult employees. You had been acting somewhat of a model employee lately, but that could well have been pure survival instinct. A Beta bowing to its Alpha. Or are you a rare Omega? No matter, we will find out sooner or later. Anyway, now that I am aware of your failings it is my job to make sure that your dedication to the company, and myself, does not decay over time.@@"<br>
<br>
You can feel her body shift on the couch as a gloved hand returns to <<if $scene.caged>>grasping your cage<<else>>your erect <<getWordMyPenis>><</if>>, the other slowly moving the dildo back and forth in your eager hole.<br>
<br>
"@@.npc_manager;Some,@@" she says while <<if $scene.caged>>gently <<if setup.isCage()>>squeezing your caged <<getWordMyPenis false>><<else>>pressing her hand against the front shield of your chastity belt<</if>><<else>>beginning to slowly stroke your <<getWordMyPenis>><</if>>, "@@.npc_manager;Learn best through positive motivation.@@"<br>
<br>
Her stroking intensifies as her grip tightens, her other hand continuing to steadily pound the dildo into your rear hole.<br>
<br>
"@@.npc_manager;Others, however, require something else. something... firmer.@@" She punctuates the statement by <<if $scene.caged>><<if setup.isCage()>>digging her nails into your exposed sack, giving just enough pressure for you to<<else>>placing a hand over the front shield of your belt, her finger-nails digging into your flesh on either side and you<</if>><<else>>rubbing her thumb around the head of your <<getWordMyPenis>>, pressing into it firmly until you<</if>> let out a soft cry of pain.<br>
<br>
"@@.npc_manager;You, <<=$player.first_name>>, have been very dutiful of late. But even your best has proven... insufficient, imperfect. <<if $scene.caged>>Fortunately you are already on to the solution, having freely sped down the path of restraint<<else>>Fortunately, I know the solution. You need to be taught the value of restraint<</if>>. Self control is a fundamental pillar of society.@@"<br>
<br>
It's as if you can hear the smile spreading across her lips and the chuckle behind her words leaving you with a foreboding sense of dread. In one smooth motion she pulls the dildo from your ass only to ram it back in, leaving you shrieking from the vigorous intrusion.<br>
<br>
"@@.npc_manager;I understand you are nervous, <<=$player.first_name>>. Is this your first time with something like this... moving within you? No matter, consider this merely another form of discipline, another part of the contract you willingly signed. Remember, <<=$player.first_name>>, this is what you wanted. I can feel your tension, the stress bubbling under your skin, so I will not command you to relax, but it is my strong recommendation that you do so.@@"<br>
<br>
Her lecture finished, <<=setup.getNpcName('npc_manager', 'formal')>> returns to her thrusting, moving the dildo in and out with a steady rhythm. With a sigh of arousal and contentment you find it easier to relax than you would have expected<<if $scene.plug != "">>, grateful for your decision to wear the plug this morning<</if>>.<br>
<br>
True to her word, <<=setup.getNpcName('npc_manager', 'formal')>> continues her onslaught, pulling the dildo far enough that it is just barely in your ass and then thrusting it in all the way, until her hand is pressed against your cheeks. The grip around your <<getWordMyPenis>> softens and her hand begins to glide steadily up and down, squeezing out a soft moan from between your lips. You can hear <<=setup.getNpcName('npc_manager', 'formal')>> giggle with satisfaction, the almost sweet expression of glee a stark contrast to her plunging the dildo deeper into your asshole.<br>
<br>
"@@.npc_manager;It sounds as though someone is enjoying themselves. Does my <<if $fetish.sissy>>SISSI <</if>>Secretary enjoy having her asshole fucked?@@"<br>
<br>
You contemplate on how best to answer as the dildo continues plunging into you only to feel a gentle vibrating against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. You squeal in a mix of shock, discomfort, and delight, the sensation running through to your <<getWordMyPenis false>> like a jolt of lightning.<br>
<br>
"@@.npc_manager;Oh my, perhaps you are enjoying this too much. Is that it? Is this too much sensation for your <<if $fetish.sissy>>SISSI<<else>>girl<</if>> body to handle? Should I stop fucking your ass, <<=$player.first_name>>?@@"<br>
<br>
It takes several moments for you to concentrate enough to fumble out a response, though <<=ps(setup.getNpcName('npc_manager', 'formal'))>> doesn't seem particularly interested in relenting.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_stage1_end_reward_6_willpower" "Focus all your willpower and ask her to stop." 240>>]<br>
<<else>>
[@@.link_locked;You don't feel like you've got enough strength left in you to resist at all@@]<br>
<</if>>
[<<moveTo "event_manager_stage1_end_reward_7" 'Say "N-no <<=setup.getNpcName("npc_manager", "formal")>>, please continue..."' 240>>]
<</if>>
</div>/*#
#desc: ask her to stop fingering/dildo'ing your ass
#status: FINISHED 0.4.0.0
#ignore_spell: w
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.willpower = true>>
<<set $player.willpower.bonus+=1>>
<<addPopUpText "will" "Your maximum willpower has been increased.">>
<<spendWillpower>>
<<applyFatigue 30>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.plugged!="">>
Getting your ass pounded relentlessly by <<=setup.getNpcName('npc_manager', 'formal')>> with a dildo does not really help you at all with your decision.
<<else>>
Getting your ass fingered relentlessly by <<=setup.getNpcName('npc_manager', 'formal')>> does not really help you at all with your decision.
<</if>>
Nonetheless, you focus your mind and try to calm down. Even though you feel like you are in heaven right now, something in you resists. A faint spark of willpower, a feeling of rebellion you thought was lost in these last few days manages to ignite a fire of resistance. You do the unspeakable. You ask her to stop.<br>
<br>
For a moment the world stands still. <<=setup.getNpcName('npc_manager', 'formal')>> looks at you with disbelief, but more importantly, for the first time ever, she looks at you like you are a real person, not some dressed up plaything.<br>
<br>
"@@.npc_manager;W... what? I mean, I beg your pardon, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@" it only takes her a microsecond to regain composure, the whole time never slowing down in the slightest at working on your poor asshole like there's no tomorrow. "@@.npc_manager;Could you please say that again?@@"<br>
<br>
Again, between the moaning and panting you ask her to stop.<br>
<br>
This time she stops instantly. Again her facade seems to crack, but only for the fraction of a second. You wonder what's underneath this, if she's only playing a role in a play as well, but this does not seem to be the right time to figure this out. She pulls
<<if $scene.plugged!="">>
the dildo
<<else>>
her finger
<</if>>
out of your anus and wipes it with a paper towel.<br>
<br>
"@@.npc_manager;Well, someone put on <<if $player.sec_style.clothing.female == "">>his big boy<<else>>her big girl<</if>> pants this morning. I can say that I honestly did not expect that. Colour me Impressed. Well, not impressed, but surprised, astonished, if we are being completely truthful. Still, you are in my office, and there remains the problem of your disobedient and unimpressive... thing down there. I want this problem solved, immediately. If you wish to keep this job any longer, you are going to masturbate. Right here, right now.@@"<br>
<br>
You can feel there's something odd about this situation.
<<if setup.getTotalValue('smart')>=7>>
Normally you would get another rule, a threat, another step in the dance. An ultimatum, a direct threat to loose your job because you don't play along with her dominant behaviour is rather unusual. You assume there's more behind it then you can figure out right now, so you decide to play along with it. And because of that, you don't mind that much masturbating in front of her.
<<else>>
But you're unable to figure it out in the brief moments of time you have to think. Since you want to keep the job, for some reason, you decide its better to give in, no matter how humiliating this will be.
<</if>>
You agree to her conditions.<br>
<br>
"@@.npc_manager;Well, since we have no <<if $fetish.sissy>>SISSI<<else>>girl<</if>> spanking material around here, I assume I can let you use this. As a matter of fact, I insist!@@" she says, while handing you
<<if $scene.plugged!="">>
the dildo that pounded your ass mere moments ago.
<<else>>
a big, black dildo.
<</if>>
<br><br>
[<<moveTo "event_manager_stage1_end_reward_6_willpower_2" "Take the dildo and start masturbating." 360>>]
</div>/*#
#desc: fuck yourself in the ass with a dildo
#status: FINISHED 0.4.0.0
#ignore_spell: lolatrap
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if setup.getTotalValue('stamina')>=5>>
<<applyExperience 'anal' 10 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'anal' 10 'unbelievable' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/lolatrap_masturbate_01.mp4">>
<div id="invframe" class="scrolltext">
Your <<getWordAnus>> is still wet from before,
<<if setup.getTotalValue('anal')>4>>
you let the rather enormous artificial <<getWordPenis>> slide in without much troubles.<br>
<br>
<<printThought "Oh <<getWordGod>>, I'm this accustomed to using my <<getWordAnus false>>, that I can fit an massive <<getWordPenis>> like this in there without any problems.">>
<<else>>
still, you're having trouble fitting such an enormous artificial <<getWordPenis>> in it. You push hard and try to relax, and after some while you manage to push it past your sphincter. As it sinks into you, you let out a moan like a whore in heat.<br>
<br>
<<printThought "Oh <<getWordGod>>, it is ripping me apart. Ah!">>
<</if>>
<br><br>
You push the dildo in and out, but the look on <<=setup.getNpcName('npc_manager', 'formal')>> indicates she is not pleased with your efforts.<br>
<br>
"@@.npc_manager;Ride it. Ride it like a little <<if $fetish.sissy>>SISSI<<else>>girl<</if>> whore. <<if $scene.caged>>You already locked yourself up so you have no choice but to embrace your true urges<<else>>And do not even think about touching that <<getWordMyPenis>> of yours<</if>>, you are going to cum like the <<if $fetish.sissy>>SISSI<<else>>girl<</if>> you are!@@"<br>
<br>
As ordered, you start to ride the dildo. Balancing the base of the dong on the floor, you start slowly moving your pelvis downwards. You feel every centimetre of the artificial <<getWordPenis>> filling you up, until there is no more space left in you and you feel about to split apart. But still, you continue. Rising back up leaves a void in you that you now feel eager to fill up again. Moving up and down like a whore in heat is unlike anything you've ever felt before. With each thrust the dildo impales your <<getWordAnus>> deeper until you can feel, and hear, your asscheeks slapping on the floor beneath you.
<<if setup.getTotalValue('stamina')>=5>>
Your anus feels like it's on fire, but you're able to cope with it. The rhythmic slamming stimulates you beyond your wildest dreams.<br>
<br>
"@@.npc_manager;You like this, don't you, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@" she taunts as the dildo slams into you again. "@@.npc_manager;You simply love having your <<if !$player.virgin.anal && ($player.virgin.pegged || !$fetish.pegging_is_anal)>>virgin <</if>><<getWordAnus false>> violated like a slutty bitch!@@"<br>
<br>
You're unable to answer, but your moaning contains more truth than your words ever could. You can feel your orgasm approaching at a very rapid pace with each new thrust. With a final gasp you spray your load all over the floor.
<<else>>
You are already low on stamina, and this is taking its toll on you. Unable to cope with the pain, you slow down. Just a little bit. Begging your Mistress to let you finish by hand does you no good at all. Glaring at you with cold eyes, <<=setup.getNpcName('npc_manager', 'formal')>> stands over you. A sinister smile on her lips is all you get as a warning.<br>
<br>
"@@.npc_manager;Here, let me give you a helping hand,@@" is her explanation, before putting her hands on your shoulders and pushing you down with a force you did not expect of a woman of her physique. The sudden impalement on the dildo finally pushes you over the edge. With a final gasp you spray your load all over the floor.
<</if>>
<br><br>
[<<moveTo "event_manager_stage1_end_reward_7" "Continue." 360>>]<br>
<br>
<a target="_blank" href="https://twitter.com/lolatrap">(EXT/NSFW) Special Thanks to Lolatrap</a>
</div>/*#
#desc: manager cages you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'very' $SEEN_FRIEND>>
<<if setup.getTotalValue('submission')<5>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_reward'>>
<</if>>
<<changeHorny 100>>
<<set $player.flags.fuckedbydildo = true>>
/% note: $npc_manager.stage will be set to 2 on your next visit to work when you get the new plaque %/
<<decrementEmotion 'anger' 'npc_manager' 10>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<set $scene.addChastity = $player.sec_style.submission.chastity == "">>
<<if $player.sec_style.submission.chastity == "">>
<<set $player.sec_style.submission.chastity = "obedient">>
<<setThreshold 'bondage' 'other_bondage' 'cage_forced'>>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11'
6
'event_psychiatrist_session_chastity_1'
false
>>
<</if>>
<<if !$scene.caged>>
<<if $player.flags.chastity_style == "belt">>
<<set $scene.newcage = "chastity_belt_flat">>
<<elseif $player.body.penissize[0] <= 1>>
<<set $scene.newcage = "chastity_cage_tiny">>
<<else>>
<<set $scene.newcage = "c_cage_pink">>
<</if>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set $npc_manager.flags.hascagekey = true>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem _keyId>>
<</if>>
<<include "setLastSeenCage">>
<<set $npc_manager.flags.require_chastity = true>>
<</if>>
<<set $scene.addTblock = $player.sec_style.body.tblock == "">>
<<if $scene.addTblock>>
<<set $player.sec_style.body.tblock = "obedient">>
<<setTmpEffect 'tblock_eternal'>>
<<addNpcTheme 'npc_manager' 'transformation' "theme_manager_penis_shrink"
0
'theme_manager_penis_shrink_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' "theme_psychiatrist_penis_shrink"
0
'theme_psychiatrist_penis_shrink_1'
false
>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<</if>>
<<playerOrgasm>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_reward'
5
'event_psychiatrist_session_manager_2'
false
>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.caged>>
<<if $scene.willpower>>
You kneel on the floor, impaled by the dildo, with your eyes shut, gasping through slow heavy breaths, savouring the sensation of release.
<<else>>
Your words trail off into high pitched moans as <<=setup.getNpcName('npc_manager', 'formal')>> picks up her pace.<br>
<br>
"@@.npc_manager;Very good, <<=$player.first_name>>. I am glad you understand and accept that this is proper treatment for a <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
Her rhythm intensifies and, as if instinctively, you match it with your moaning. Before long you feel your vision begin to blur and in a blissful state of ecstasy you cry out as <<if $fetish.cum>>your <<getWordMyPenis false>> erupts, spewing out a seemingly endless stream of cum<<else>>you cum hard<</if>>. Collapsing backwards you lay there with your eyes shut, gasping through slow heavy breaths, savouring the sensation of release.
<<if $scene.plugged!="">>
<<=setup.getNpcName('npc_manager', 'formal')>> removes the dildo, leaving you empty for a mere moment before unceremoniously reinserting your plug.
<</if>>
<br><br>
Your orgasm finished, you turn your head to thank <<=setup.getNpcName('npc_manager', 'formal')>> and feel her <<if $scene.panties_type=="sissy">>pull down the front of your frilly panties and <</if>>gently pat your <<getWordMyPenis>>.
<</if>>
<br><br>
Once more she graces you with a smile of approval as you stare at your still-imprisoned self.<br>
<br>
"@@.npc_manager;You were already wearing it, it is true, but, well... may I formally present your newest <<if $fetish.sissy>>SISSI<<else>>girl<</if>> fashion accessory and now mandatory component of your uniform.@@"
<<else>>
<<if $scene.willpower>>
You kneel on the floor, impaled by the dildo, with your eyes shut, gasping through slow heavy breaths, savouring the sensation of release.<<if $npc_manager.flags.require_chastity>> Without any warning you feel <<if $scene.panties_type=="sissy">>her pull down the front of your frilly panties and <</if>>something cold slide up and over your flaccid penis.<</if>>
<<else>>
Your words trail off into high pitched moans as <<=setup.getNpcName('npc_manager', 'formal')>> picks up her pace.<br>
<br>
"@@.npc_manager;Very good, <<=$player.first_name>>. I am glad you understand and accept that this is proper treatment for a <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
Her rhythm intensifies and, as if instinctively, you match it with your moaning. Before long you feel your vision begin to blur and in a blissful state of ecstasy you cry out as <<if $fetish.cum>>your <<getWordMyPenis false>> erupts, spewing out a seemingly endless stream of cum<<else>>you cum hard<</if>>. Collapsing backwards you lay there with your eyes shut, gasping through slow heavy breaths, savouring the sensation of release.
<<if $scene.plugged!="">>
<<=setup.getNpcName('npc_manager', 'formal')>> removes the dildo, leaving you empty for a mere moment before unceremoniously reinserting your plug.
<</if>>
<br><br>
Your orgasm finished, you turn your head to thank <<=setup.getNpcName('npc_manager', 'formal')>><<if $npc_manager.flags.require_chastity>> and feel her <<if $scene.panties_type=="sissy">>pull down the front of your frilly panties and <</if>>slide something cold up and over your flaccid <<getWordMyPenis>><</if>>.
<</if>>
<br><br>
<<if $npc_manager.flags.require_chastity>>
You glance down to see a wide grin spread over <<=setup.getNpcName('npc_manager', 'formal')>> face as she closes the lock on the clear, pink chastity cage that now encases your privates. You can see a small key suspended from a chain necklace.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, may I present your newest <<if $fetish.sissy>>SISSI<<else>>girl<</if>> fashion accessory and now mandatory component of your uniform.@@"
<<else>>
"@@.npc_manager;Congratulations, while you have a bit further to go before you are out of your probation period I am very proud of your performance today, and even more certain that you are PERFECT for your new position...@@"
<</if>>
<</if>>
<br><br>
<<if $scene.addTblock>>
<<if setup.checkItemTypeWorn("cage")>>
Your jaw is still dropped in shock at the <<if !$scene.addChastity>>new requirement to wear a <</if>>chastity device when <<=setup.getNpcName("npc_manager","formal")>> places a pill between your lips and you swallow before even realising what you're doing.
<<else>>
As you pant in overwhelmed sensation <<=setup.getNpcName("npc_manager","formal")>> places a pill between your lips and you reflexively swallow before you can even think better.
<</if>>
<br><br>
"@@.npc_manager;Good girl. That little pill contains a sustained dosage of testosterone inhibitors. Blocking that toxic hormone from affecting you should be just the thing to help smooth your journey. Aggression, impetuousness, rebellion... a <<if $fetish.sissy>>sissy<<else>>good girl<</if>> craves not these things, and weaning you off testosterone will be just the ticket towards eliminating those impulses.@@"<br>
<br>
<</if>>
<<if $fetish.cum>>
<<if $scene.willpower>>
She takes a moment to dab her gloved hand in the pile of cum you've spilled on the floor.
<<else>>
She takes a moment to dab her gloved hand in the pile of cum you've spilled on her couch.
<</if>>
<br><br>
<</if>>
<<if $npc_manager.flags.require_chastity>>
<<switch $player.sec_style.submission.chastity>>
<<case "forced" "strict">>
<<if $fetish.cum>>
"@@.npc_manager;You see <<=$player.first_name>>, this here,@@" she says, raising her cum spattered hand, "@@.npc_manager;Was your motivation, while this,@@"
<<else>>
"@@.npc_manager;You see <<=$player.first_name>>, that was your motivation, while this,@@"
<</if>>
she taps the head of your chastity cage, "@@.npc_manager;Is how you will learn self restraint. Now, since you have overall proven to me that you are quite capable as both a slave and secretary I will entrust this to you... for the time being. Do not make me regret my decision!@@"<br>
<br>
She takes the chain from her neck and hands it to you.<br>
<br>
<<printThought "This must be the key for my chastity device. Wait... why am I already considering it mine?">>
<<case "obedient" "enthusiast">>
"@@.npc_manager;As promised, a "solution" to your problem. And what a problem it was! Look at this mess!@@" she says, raising her cum spattered hand, "@@.npc_manager;Since you have been such a good <<if $fetish.sissy>>SISSI <</if>>Secretary slave, I will entrust you with the key... until such time as you prove yourself unworthy of such freedoms, or decide that you no longer wish to be cursed with such temptation.@@"<br>
<br>
<<printThought "This wasn't what I expected, it feels kind of odd... I guess if it gets uncomfortable I can just take it off, just need to show myself worthy of her trust in giving me the key.">>
<<case "voluntary">>
<<if $scene.cage != "">>
"@@.npc_manager;You discovered it for yourself, but under my tutelage you will LEARN the truth — that this@@" she taps the <<if setup.isCage()>>head of your chastity cage<<else>>front of your chastity belt<</if>>, "@@.npc_manager;Is where you belong, and through it, you will learn self restraint. Since you have been such a good <<if $fetish.sissy>>SISSI <</if>>Secretary slave, I will entrust you with the key... until such time as you prove yourself unworthy of such freedoms, or decide that you no longer wish to be cursed with such temptation.@@"<br>
<br>
<<printThought "Is this real? Was this what I wanted when I locked myself up?">>
<<else>>
"@@.npc_manager;As promised, a "solution" to your problem. And what a problem it was! Look at this mess!@@" she says, raising her cum spattered hand, "@@.npc_manager;Since you have been such a good <<if $fetish.sissy>>SISSI <</if>>Secretary slave, I will entrust you with the key... until such time as you prove yourself unworthy of such freedoms, or decide that you no longer wish to be cursed with such temptation.@@"<br>
<br>
<<printThought "This wasn't what I expected, and it's a lot more intense when I'm not doing it myself...">>
<</if>>
<<case "money">>
<<if $scene.cage != "">>
"@@.npc_manager;You may have come by it out of naked greed, but under my tutelage you will LEARN the truth — that this@@" she taps the <<if setup.isCage()>>head of your chastity cage<<else>>front of your chastity belt<</if>>, "@@.npc_manager;Is where you belong, and through it, you will learn self restraint. Normally for such a good <<if $fetish.sissy>>SISSI <</if>>Secretary slave I would entrust you with the key, but you have sold that privilege to someone else... though know that I fully intend to reclaim proper ownership once your little "trial" is concluded.@@"<br>
<br>
<<printThought "What? I just wanted some extra money, does she plan to keep me locked forever?">>
<<else>>
"@@.npc_manager;As promised, a "solution" to your problem. And what a problem it was! Look at this mess!@@" she says, raising her cum spattered hand, "@@.npc_manager;Since you have been such a good <<if $fetish.sissy>>SISSI <</if>>Secretary slave, I will entrust you with the key... until such time as you prove yourself unworthy of such freedoms, or decide that you no longer wish to be cursed with such temptation.@@"<br>
<br>
<<printThought "This wasn't what I expected, and it's a lot more intense when I'm not doing it myself...">>
<</if>>
<<default>>
ERROR: unhandled player.sec_style.submission.chastity: <<=$player.sec_style.submission.chastity>>
<</switch>>
<br><br>
<<if $player.sec_style.submission.chastity != "money">>
"@@.npc_manager;Note that, though I have granted you the favour of control over your key that it is purely for your personal benefit. When you are at work, this@@" she taps a fingernail against the hard <<if setup.isItemEquipped("c_cage_pink")>>plastic<<else>>steel<</if>> encasing the head of your <<getWordMyPenis false>> "@@.npc_manager;Comes back under my control. Thus, I expect a chastity device to be locked around your <<getWordMyPenis false>>... and it had better be as soft and demure as I expect you to be! As long as you remain as dutiful as you are now, you may keep the key as a token of my faith in you. But if you betray my confidence in any way, you will have to leave the key on a dish at the corner of your desk for me to gather when I arrive. If this is to happen, however, you will be able to request the return of the key every evening.@@"<br>
<br>
<</if>>
Pausing, her gaze shifts to look you directly in the eye.<br>
<br>
"@@.npc_manager;Do you understand this modification to your routine?@@"<br>
<br>
<<printThought "She only asked if I understand, she just assumes my agreement...">>
<<else>>
"@@.npc_manager;Now, I believe that is enough for one day, would you agree?@@"
<</if>>
<br><br>
[<<moveTo "event_manager_stage1_end_reward_8" 'Blush and shyly respond "Yes, <<=setup.getNpcName("npc_manager", "formal")>>."' 360>>]
</div>/*#
#desc: manager feeds you cum
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $fetish.cum>>
<<setThreshold 'cum' 'secretary_cum' 'cumeater'>>
<<applyExperience 'cum' 12 'normal' $SEEN_STRANGER>>
<<set $scene.cum = false>>
<<if $player.virgin.swallow_cum_self || $player.virgin.swallow_cum_other>>
<<set $scene.cum = true>>
<</if>>
<<playerOrgasm>>
<<if $scene.willpower>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'very' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 8 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 8 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.virgin.swallow_cum_self = true>>
<<if !$player.sec_style.sex.drink_cum>>
<<set $player.sec_style.sex.drink_cum = "obedient">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles as she puts the dildo aside and you feel a moment of relief.<br>
<br>
<<if $fetish.cum>>
"@@.npc_manager;Good. Now one last thing before you can get dressed,@@" she says, <<if $scene.willpower>>gesturing at the splatter of cum glistening on the floor in front of you<<else>>moving her cum covered hand towards your face<</if>>. "@@.npc_manager;Clean up your mess, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"<br>
<br>
<<if $scene.willpower>>
Maybe it's her intimidating presence, maybe it's a moment of post-nut vulnerability... either way, you find yourself helpless to resist her command, leaning down to lick the cool floor of its salty stains.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
"@@.npc_manager;Good girl. One must always attend to the messes one makes... or take precautions not to make them in the first place, hmm?@@" She adds with a smile towards your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. "@@.npc_manager;Why, think of the safety issue if someone had slipped on your little... emission.@@"
<<else>>
"@@.npc_manager;Good girl. One must always attend to the messes one makes. Why, think of the safety issue if someone had slipped on your little... emission.@@"
<</if>>
<<elseif $scene.cum>>
You eagerly open your mouth for <<=setup.getNpcName('npc_manager', 'formal')>> fingers. They gently slide into your mouth and you busy about your task, lapping up as much <<if $player.body_ref.penis>>cum<<else>>of your juices<</if>> as your tongue can find. You feel <<if setup.checkItemTypeWorn("cage")>><<if $player.body_ref.penis>>your <<getWordMyPenis>> already straining in its prison<<else>>yourself already dripping anew under your belt<</if>><<else>><<if $player.body_ref.penis>>your spent <<getWordMyPenis>> already twitching with excitement<<else>>yourself already getting wet<</if>><</if>> as you lovingly suck off each individual finger. <<=setup.getNpcName('npc_manager', 'formal')>>' hand retreats, gathering up another helping and bringing it to your waiting mouth. You obediently open your mouth and continue your clean up. After a few more repetitions <<=setup.getNpcName('npc_manager', 'formal')>> stands, strips off the gloves and drops them in the trash, before returning the bottle of lube to her desk drawer.
<<elseif setup.getTotalValue('cum')>0>>
You hesitate for a moment, watching her smile begin to shift, finally leaning forward, opening your mouth for her waiting fingers. They quickly glide past your lips and you busy about your task, sliding your tongue and lips across <<=setup.getNpcName('npc_manager', 'formal')>> fingers. You're surprised by the taste, or maybe more by the fact that you don't seem to mind it. The flavour isn't bad at all, in fact, it's almost nice...
<<else>>
You hesitate, watching her lips twist into a cruel smile. It was one thing to have
<<if !$scene.willpower>>
<<if $scene.plugged=="">>
your ass fingered
<<else>>
your ass fucked with her dildo
<</if>>
<<else>>
fucked yourself with her dildo
<</if>>when you were so desperately horny, but you're not sure you can stomach eating your own cum. As you begin to protest, <<=setup.getNpcName('npc_manager', 'formal')>>' fingers firmly slide between your lips. You struggle to ignore the taste, but manage to refrain from gagging. This is so humiliating...
<</if>>
<<else>>
"@@.npc_manager;Lovely. Now I, alas, have work yet to attend to, but you may dress and return home. Thank you, again, for your performance today — seeing a subordinate progress as you have, well... it really does make it all worth it.@@"
<</if>>
<br><br>
<<if setup.checkPlayerDressed()>>
[<<moveTo "event_manager_stage1_end_reward_9" 'Continue.' 360 "<<if setup.isItemTypeEquipped('cage')>><<set $npc_manager.flags.hascagekey = false>><<set _keyId = setup.getItemObjFromType('cage').lockable[1]>><<addItem _keyId>><</if>>">>]
<<else>>
[@@.link_locked;I need to get dressed...@@]<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_reward_9" "Put your clothes back on." 60 "<<useClothSetPop 'stage1end'>><<if setup.isItemTypeEquipped('cage')>><<set $npc_manager.flags.hascagekey = false>><<set _keyId = setup.getItemObjFromType('cage').lockable[1]>><<addItem _keyId>><</if>>">>]
<</if>>
<</if>>
</div>/*#
#desc: depart her office, newly caged
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<addEvent 'cat_encounter'>>
<<set $scene.wipeAdvance = $player.work.advance > 0>>
<<set $player.work.advance = 0>>
<<set $npc_manager.stagevalues[1].promodate = $now>>
<<set $npc_manager.flags.spill_event = false>>
<<if $workEvents.hasOwnProperty("force_strict_masturbation")>>
<<removeWorkEvent 'force_strict_masturbation'>>
<</if>>
<<if $scene.plugged>>
<<wearItem $scene.plugged true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.wipeAdvance>>
"@@.npc_manager;Oh, one final note — in celebration of this career milestone I have decided to forgive that advance I gave you. Consider it an encouragement bonus, a celebration of a new beginning... now it is up to you to take advantage of such.@@"<br>
<br>
Still in a daze, you nod.
<</if>>
You leave <<=setup.getNpcName('npc_manager', 'formal')>> office, satisfied, confused and alarmed.
<<if !$scene.plugged>>
You're surprised and a little ashamed of how much you enjoyed having your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> <<if $npc_manager.flags.stage1Promo == "strict">>pounded<<else>>fingered<</if>>.<br>
<br>
<<if $player.flags.masturbation.dildo>>
<<printThought "That was a lot more intense than doing it on my own...">>
<<else>>
<<printThought "Maybe I could try that at home...">>
<</if>>
<<else>>
The ache from the plug once more occupying your ass a constant reminder of both the abuse and satisfaction inflicted upon you.
<<if !setup.checkItemOwned('basic_dildo')>>
<br><br>
<<printThought "I should see if I can find a dildo at the mall.">>
<</if>>
<</if>>
<br><br>
<<if setup.checkItemTypeWorn("cage")>>
<<if $player.body_ref.penis>>
You can't help, but attempt to grasp your <<getWordMyPenis>> in disbelief.
<<else>>
You paw at the smooth, rigid front shield of your chastity belt.
<</if>>
It's not that it feels uncomfortable or painful. What troubles you is how freely you allowed yourself to be put in this position. Even more concerning than that, however, is how
<<if $player.body_ref.penis>>
your <<getWordMyPenis false>> grows hard when you recall how <<=setup.getNpcName('npc_manager', 'formal')>> had her way with you.
<<else>>
you're already dripping inside your prison.
<</if>>
Good thing you remained submissive the whole time<<if setup.checkItemTypeWorn('cage') && !$scene.cage>> and got the key<</if>>.<br>
<br>
<</if>>
<br><br>
<<printThought "I can't even imagine what would have happened if I tried to oppose her...">><br>
<br>
[<<moveTo "company_lobby" "Leave the office." 30 '<<set $player.cutscene.lockinventory = false>>'>>]
</div>/*#
#desc: Intro passage for scene leading to chastity if you get caught masterbating at work
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<decrementEmotion 'anger' 'npc_manager' 5>>
<<changeHorny 30>>
<<useClothSetPush 'stage1end'>>
<</if>>
<<if setup.checkNaked()>>
<<set $scene.object=false>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_strict_2">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
With <<=setup.getNpcName('npc_manager', 'formal')>> dragging you by the shirt, and your pants still half-way down your thighs, you stumble into her inner office before she tosses you onto the couch hard enough that you would swear you had hang-time.<br>
<br>
"@@.npc_manager_dom;Strip, <<if $fetish.sissy>>sissy<</if>>@@" she commands, her words dripping with cold anger. "@@.npc_manager;You have already made enough of a mess, I want your clothes out of the way for what is coming next.@@"<br>
<br>
You look up at <<=setup.getNpcName('npc_manager', 'formal')>> as she looms over you brimming with rage, like some sort of towering demoness.<br>
<br>
<<printThought "Shit... what have I done now?">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_strict_2" "Strip and obey her command." 60 "<<set $scene.object=false>><<removeAllClothing>>">>]<br>
<<else>>
<<hint $options "You can remove clothing in the inventory.">><br>
<</if>>
[<<moveTo "event_manager_stage1_end_strict_2" "You refuse! She can't make you do this!" 60 "<<set $scene.object=true>>">>]
</div>/*#
#desc: strip for chastity strict
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = !$scene.object>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.object>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<applyExperience 'bdsm' 5 'unbelievable' $SEEN_FRIEND>>
<<else>>
<<removeAllClothing>>
<<set $player.cutscene.lockinventory = true>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_punishment'>>
<<applyExperience 'submission' 5 'unbelievable' $SEEN_FRIEND>>
<</if>>
<</if>>
<<if $scene.object && setup.checkNaked()>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_strict_2">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.object>>
You start to get back to your feet to object that you aren't going to be doing something like this... only to be shoved back down, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> high-heel foot digging into your chest as she leans in.<br>
<br>
"@@.npc_manager;Do you think you have a choice? An option? <<if $player.sec_style.clothing.underwear == "strict">>You already know that there is no escape<<else>>There is no escape for you<</if>>, your choices are between obedience...@@" She grinds her heel against your chest, digging in painfully until you whimper. "@@.npc_manager;... and painful obedience. Now, I tell you again—@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> pulls back, glaring down at you with fire in her eyes. "@@.npc_manager_dom;STRIP.@@" You gulp fearfully, there is no way you can get past her to the door — at least for now, you really have no option but to obey...<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_strict_2" "Get fully naked..." 60 "<<set $scene.object=false>><<removeAllClothing>>">>]
<<else>>
<<hint $options "You can remove clothing in the inventory.">>
<</if>>
<<else>>
You shed your clothes under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> watchful gaze, your momentary hesitancy when you're down to just your underthings dashed as she motions for you to continue.<br>
<br>
Naked moments later you don't even bother to try and cover yourself with your hands — after all, what would be the point? You are helpless before <<=setup.getNpcName('npc_manager', 'formal')>>, and both of you know it.<br>
<br>
[<<moveTo "event_manager_stage1_end_strict_3" 'Continue...' 360>>]
<</if>>
</div>/*#
#desc: cuffed and squat over dildo for chastity strict
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "humbler">>
<<wearItem "humbler" true>>
<<addItem "wrist_cuffs_steel">>
<<wearItem "wrist_cuffs_steel" true>>
<<applyExperience 'bdsm' 12 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'bondage' 5 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 7 'unbelievable' $SEEN_FRIEND>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "">>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
If you thought your momentary obedience would signal things going smoother you are swiftly dissuaded of that notion — barely have you felt <<=ps(setup.getNpcName('npc_manager', 'formal'))>> devouring gaze upon your body when she has you bent forward, pressing your face into the couch while she slaps a pair of cuffs on your wrists, and then pulls your testicles back between your legs, stretching them painfully before clamping something around them.<br>
<br>
You cry out, trying to stand up as the hand is removed from the back of your neck only to be driven back forward as the motion causes your testicles to be yanked hard.<br>
<br>
<<if $scene.plug>>
You gasp again as the plug is roughly removed from your rear, your hole quivering in emptiness as <<=setup.getNpcName('npc_manager', 'formal')>> chuckles for a moment in obvious amusement. "@@.npc_manager;So disobedient... and yet so nicely equipped... you really are a conundrum.@@"<br>
<br>
<</if>>
Pitched forward onto the couch you lay there whimpering as <<=setup.getNpcName('npc_manager', 'formal')>> looms over you and explains.<br>
<br>
"@@.npc_manager;That lovely device is called a humbler — it would seem to be functioning quite efficiently... of course it really ruins your posture, but you hardly deserve to stand tall, given your recent misbehaviour. Now, stop lying there and come over here for the next part of your lesson.@@"<br>
<br>
You're still trying to figure out how to move while minimizing the pain of the humbler... but <<=setup.getNpcName('npc_manager', 'formal')>> is anything but patient, dragging you off the couch and positioning you in front of the mirror forced to look straight ahead at your own naked body, squatted lewdly thanks to the painful humbler pulling on your balls... and yet with your <<getWordMyPenis false>> sticking out hard, dripping with excitement.<br>
<br>
<<printThought "What's wrong with me? I can't be turned on by this sort of treatment...">><br>
<br>
Thoughts, doubts... everything is put aside as you look down to notice the large dildo, glistening with lube, sprouting up below you.<br>
<br>
"@@.npc_manager;Alright <<if $fetish.sissy>>sissy <</if>>— you wanted to get off at work? Well here is a PROPER way to do it, squat down and take it.@@"<br>
<br>
Your legs are already trembling from holding this position, <<=setup.getNpcName('npc_manager', 'formal')>> standing behind you with a firm hold on your shoulder preventing you from even attempting to crawl away...<br>
<br>
[<<moveTo "event_manager_stage1_end_strict_4" "Squat down." 360 "<<set $scene.squat=true>>">>]<br>
[<<moveTo "event_manager_stage1_end_strict_4" "Stay up." 360 "<<set $scene.squat=false>>">>]
</div>/*#
#desc: chastity strict - fuck yourself on dildo
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.squat>>
<<applyExperience 'submission' 10 'very' $SEEN_FRIEND>>
<</if>>
<<applyExperience 'bdsm' 12 'unbelievable' $SEEN_FRIEND>>
<<set $scene.prevAnal = setup.getTotalValue("anal") > 0>>
<<setThreshold 'anal' 'secretary_anal' 'stage1_end'>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_3'
0
'theme_psychiatrist_penetration_1'
false
>>
<<setThreshold 'oral' 'other_oral' 'stage1_end'>>
<<addItem "penis_gag_pink">>
<<wearItem "penis_gag_pink" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.squat>>
You lower yourself obediently, after all, what choice do you have? The whole way down <<=ps(setup.getNpcName('npc_manager', 'formal'))>> hand remains gently on your shoulder, a silent reminder of her control as you stare at your reflection...
<<else>>
As humiliating and painful as your half-squatted position is... going lower is even worse, and you try to stay up, away from the dildo, even as you feel your legs start to tremble, your reflection preventing an even more fearful sight... and then <<=setup.getNpcName('npc_manager', 'formal')>> gets tired of your delay, a hand on your shoulder pushing you down.
<</if>>
You gasp as the slick dildo slides into your rear.
<<if $scene.prevAnal>>
You may have experimented back there before... but this is different —
<<else>>
You've never had something "back there" before and now this... something so
<</if>>
big, slick, and unstoppable. You cry out as the lifelike dildo fills your ass, <<=setup.getNpcName('npc_manager', 'formal')>> guiding you lower — and the dildo deeper — until the thick dong has all but disappeared into your rear.<br>
<br>
"@@.npc_manager;Good... this is a much more appropriate way for you to get off, now go on, fuck yourself<<if $fetish.sissy>>, sissy<</if>>. If you cannot perform your other duties to my high expectations, well... all that is left is a pair of holes. Given your failures thus far, well... we might as well start this training early, hmm?@@"<br>
<br>
Tears well up in your eyes as you open your mouth to respond... only for another dildo to be shoved past your lips, the straps of the gag buckled tight around the back of your head to force it in and keep it there.<br>
<br>
Almost lifting you up so that the dildo retreats until only the tip is inside of you, <<=setup.getNpcName('npc_manager', 'formal')>> guides you to squat up and down, fucking you as you pant and moan around the gag filling your mouth...<br>
<br>
[<<moveTo "event_manager_stage1_end_strict_5" 'Fuck yourself.' 360>>]
</div>/*#
#desc: chastity strict - fucked harder
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 7 'very' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 7 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
With each stroke the dildo unlocks new sensations, tears of both pain and shame flowing down your cheeks as your body reacts to these new feelings... of being fucked, the whole time forced to watch your reflection, the silicone cock sliding in and out as you suck on its sibling and <<=setup.getNpcName('npc_manager', 'formal')>> forces you onward.<br>
<br>
"@@.npc_manager;See how natural this feels<<if $fetish.sissy>> sissy<</if>>? This is what you need, what you will soon crave. To be here, at my feet — fucked on command.@@"<br>
<br>
You whimper and tremble, your thighs screaming in pain from the awkward position as your balance falters and you pitch forward, the dildo still half sunk in your ass.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> does not give you the slightest relief, following you down, one hand gripping your hair to force you to look forward, at your gagged, weeping face in the mirror as her other hand grabs the dildo and begins fucking you harder and faster.<br>
<br>
"@@.npc_manager;Slut, whore<<if $fetish.slurs>>, faggot<</if>> — look in your eyes, those are not the eyes of a man, but a <<if $fetish.sissy>>sissy <</if>>slave to be. Every moment you resist that truth will only prolong your pain. Submit, surrender... and accept that THIS is what you were meant to be. Now, cum for me<<if $fetish.sissy>> sissy<</if>>.@@"<br>
<br>
<<printThought "Oh <<getWordGod>>, I'm so close... but if I cum like this...">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_stage1_end_strict_6" 'Try to resist.' 360 "<<set $scene.resist=true>><<spendWillpower 1>>">>] <<hint $options "Resisting your physical urges will cost willpower.">><br>
<<else>>
[@@.link_locked;You are mentally broken, and unable to fight back against your bodily urges.@@]<br>
<</if>>
[<<moveTo "event_manager_stage1_end_strict_6" 'Cum...' 360 "<<set $scene.resist=false>>">>]
</div>/*#
#desc: chastity strict - fucked harder
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 7 'very' $SEEN_FRIEND>>
<<if !$scene.resist>>
<<applyExperience 'submission' 7 'very' $SEEN_FRIEND>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_strict_bonus'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
You try to hold back, to fight against the sensations literally being pounded into your body... but your flesh betrays you.
<<else>>
You give in — why bother resisting the irresistible? Heart pounding, and with your eyes half closed you surrender, in fact looking forward to the coming orgasm, however much of a depraved pervert that makes you.
<</if>>
Even the pain of the humbler only seems to accentuate the feeling of each stroke of the dildo pounding your ass, pummeling your prostate until you cry out, a tearful, gasping orgasm unlike any you have felt before in your life, a climax that leaves you mentally and physically drained, straining one final time against your restraints until going limp as a puppet with its strings cut, collapsed upon the floor.<br>
<br>
The dildo slides free and you feel <<=setup.getNpcName('npc_manager', 'formal')>> doing something between your legs. You feel her remove the cursed humbler and you try to rise, but your body is sluggish, continuing to refuse your commands...<br>
<br>
<<printThought "What's happening to me? How could something that wrong make me cum so hard?">><br>
<br>
[<<moveTo "event_manager_stage1_end_strict_7" 'Continue.' 360 "<<set $scene.resist=false>>">>]
</div>/*#
#desc: chastity strict - chastity
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.stage1Promo = "strict">>
<<removeItem "humbler" true>>
<<deleteItem "humbler">>
<<removeItem "wrist_cuffs_steel" true>>
<<deleteItem "wrist_cuffs_steel">>
<<removeItem "penis_gag_pink" true>>
<<deleteItem "penis_gag_pink">>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
<<set $scene.firstChastity = !setup.checkItemTypeWorn("cage")>>
<<if $player.flags.chastity_style == "belt">>
<<set $scene.newcage = "chastity_belt_flat">>
<<elseif $player.body.penissize[0] <= 1>>
<<set $scene.newcage = "chastity_cage_tiny">>
<<else>>
<<set $scene.newcage = "c_cage_pink">>
<</if>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem _keyId>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.require_chastity = true>>
<<set $player.sec_style.submission.chastity = "strict">>
<<if $workEvents.hasOwnProperty("force_strict_masturbation")>>
<<removeWorkEvent 'force_strict_masturbation'>>
<</if>>
<<include "setLastSeenCage">>
<<setThreshold 'bondage' 'other_bondage' 'cage_forced'>>
<<addSearch $computer "Search for How to Unlock a Chastity <<if setup.checkItemTypeWorn('cage') && setup.isCage() || $player.flags.chastity_style == 'cage'>>Cage<<else>>Belt<</if>>" "room_computer_lockpick_chastity_1">>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11'
6
'event_psychiatrist_session_chastity_1'
false
>>
<</if>>
<<if $player.sec_style.body.tblock == "">>
<<set $player.sec_style.body.tblock = "strict">>
<<setTmpEffect 'tblock_eternal'>>
<<addNpcTheme 'npc_manager' 'transformation' "theme_manager_penis_shrink"
0
'theme_manager_penis_shrink_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' "theme_psychiatrist_penis_shrink"
0
'theme_psychiatrist_penis_shrink_1'
false
>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.flags.fuckedbydildo = true>>
<<setThreshold 'submission' 'submissive_secretary' 'stage1_punishment'>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_5_punishment'
5
'event_psychiatrist_session_manager_2'
false
>>
<<set _x = setup.addManagerEndlessTask()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.submission.chastity != "">>
You stir to the ominous sound of CLICK from between your legs. <<=setup.getNpcName('npc_manager', 'formal')>> roughly pulls you back to your feet so you can look down at the fresh horror that has replaced the humbler.<br>
<br>
"@@.npc_manager;THAT, is a chastity <<if $player.flags.chastity_style == "belt">>belt<<else>>cage<</if>> — a useful tool for <<if $fetish.sissy>>keeping horny sissies under <</if>>control — and one that you will be wearing until further notice. Perhaps if you show sufficient contrition I may one day allow you to borrow the key... but, in any case, your naughty thing will be locked up at all times while you are on the job.@@"<br>
<br>
<<if $player.flags.chastity_style == "belt">>
You keep staring at the steel device now locked around your waist and between your legs.
<<else>>
You keep staring at the... pink <<printThought "Of course it's pink...">> device now locked onto your <<getWordMyPenis>>.
<</if>>
How could things have come to this? How could something like this happen to you... a part of you wants to claw at the cursed piece of plastic, to attempt to rip it away, to scream and holler and fight back... but you are still tender from the humbler, mindful of how much stronger and more powerful <<=setup.getNpcName('npc_manager', 'formal')>> is than yourself...
<<else>>
You gasp as she unlocks the humbler, but are too overwhelmed to react before she is moving on.
<</if>>
<br><br>
You feel the gag unbuckle and fall from your lips as you consider what <<=setup.getNpcName('npc_manager', 'formal')>> has done to you... the still wet dildo lying on the ground beside you, looking massive and scary... a reminder of what you just endured — both promise and threat as to what lies down the road of further disobedience.<br>
<br>
<<if $player.sec_style.submission.chastity != "">>
Your jaw is still dropped in shock at the chastity device when <<=setup.getNpcName("npc_manager","formal")>> places a pill between your lips, holding one hand firmly over your mouth until you swallow.
<<else>>
As you pant in overwhelmed sensation <<=setup.getNpcName("npc_manager","formal")>> places a pill between your lips, holding one hand firmly over your mouth until you swallow.
<</if>>
<br><br>
"@@.npc_manager;Good girl. That little pill contains a sustained dosage of testosterone inhibitors. Blocking that toxic hormone from affecting you should be just the thing to help smooth your journey. Aggression, impetuousness, rebellion... a <<if $fetish.sissy>>sissy<<else>>good girl<</if>> craves not these things, and weaning you off testosterone will be just the ticket towards eliminating those impulses.@@"<br>
<br>
You let out a long whimper, scarcely believing what has just happened to you as <<=setup.getNpcName("npc_manager","formal")>> chuckles.<br>
<br>
"@@.npc_manager;Well, what do you have to say for yourself? Do you understand these new changes? Are you ready to at least TRY to be a good <<if $fetish.sissy>>SISSI <</if>>Secretary?@@" She smiles as she removes your cuffs; her expression the satisfied, confident smile of someone who knows that they have won.<br>
<br>
<<printThought "This is insane! But... I just need to survive... maybe once I can get away from her presence I can clear my head...">><br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_5" 'Blush and weakly respond, "Yes <<=setup.getNpcName("npc_manager", "formal")>>."' 360>>]
</div>/*#
#desc: Manager summons you and sends you to get her coffee
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.evil == 1 && !$scene.rescue.tea>>
<<initRoom>>
<<moveTo "event_manager_stage5_tea_1">>
<<elseif $scene.baristaMisbehave>>
<<completeWorkEvent>>
<<initRoom>>
<<moveTo "event_work_generic">>
<<else>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not while I fetch a coffee!">>
<<set $scene.coffeefirst = false>>
<<if setup.progEventIsType("work_coffee_shop")>>
<<set $scene.coffeeszenePass = setup.getCurProgSceneRand()>>
<<elseif $npc_manager.stage >= 4 && !$npc_barista.flags.stage4Intro>>
<<set $scene.coffeeszenePass = "event_stage4_coffee_intro_1">>
<<elseif !$npc_manager.flags.gotCoffee>>
<<set $scene.coffeefirst = true>>
<<set $npc_manager.flags.gotCoffee = true>>
<<set $scene.coffeernd = 0>>
<<set $scene.coffeeszenePass = "event_work_coffee_0_0">>
<<elseif $player.flags.work_coffee.coffee_skill == 0>>
<<if $npc_manager.stage >= 2 && !$npc_barista.flags.can_meet>>
<<set $scene.coffeeszenePass = "event_barista_secret_note_1">>
<<else>>
<<set $scene.coffeeszeneInfo = setup.getRandomEvent("work_coffee_shop")>>
<<if $scene.coffeeszeneInfo == null>>
<<set $scene.coffeeszenePass = "event_work_coffee_n_0">>
<<else>>
<<set $scene.coffeeszenePass = $scene.coffeeszeneInfo.szene>>
<<completeRandomEvent $scene.coffeeszeneInfo.eventId 'work_coffee_shop'>>
<</if>>
<</if>>
<<else>>
<<if $npc_manager.stage >= 2 && !$npc_barista.flags.can_meet>>
<<set $scene.coffeeszenePass = "event_barista_secret_note_1">>
<<else>>
<<set $scene.coffeeszeneInfo = setup.getRandomEvent("work_coffee_shop")>>
<<if $scene.coffeeszeneInfo != null>>
<<set $scene.coffeeszenePass = $scene.coffeeszeneInfo.szene>>
<<completeRandomEvent $scene.coffeeszeneInfo.eventId 'work_coffee_shop'>>
<</if>>
<</if>>
<</if>>
<<set _coffeeOptions = [{"name" : "black with a shot of cream", "diff" : 1},
{"name" : "coffee americano", "diff" : 2},
{"name" : "double espresso", "diff" : 3},
{"name" : "cafe latte", "diff" : 4},
{"name" : "cafe breve", "diff" : 5},
{"name" : "cafe mocha", "diff" : 6},
{"name" : "flat white", "diff" : 7},
{"name" : "cappuccino", "diff" : 6},
{"name" : "caramel macchiato", "diff" : 6},
{"name" : "strawberry latte macchiato", "diff" : 9}]>>
<<if $player.flags.work_coffee.coffee_skill > 9>>
<<set _coffeeOptions.pushUnique({"name" : "The Cofferasque... the most challenging of coffees", "diff" : 10})>>
<</if>>
<<set $scene.coffeetype = _coffeeOptions.random()>>
<<set $scene.coffeetime = 30>>
<<if $scene.coffeeszenePass == "event_work_coffee_n_0">>
<<set $scene.coffeetime = (360+Math.round(Math.random()*6)*60)>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The phone on your desk is ringing. It's <<=setup.getNpcName('npc_manager', 'formal')>>. You answer straightaway.<br>
<br>
<<if $scene.coffeefirst>>
"@@.npc_manager;<<=$player.first_name>>, be a darling and fetch me a coffee. I really need some caffeine to get through the day. There must be an automatic coffee maker or something like that somewhere on this floor, maybe in the lounge. I have no time at all to fetch one myself, since I am in the middle of an important thought process. I never have time, really, that is why I have an assistant like yourself... perks of being a Manager. Anyway, consider this one of your duties. You seem to be a smart <<if $player.sec_style.clothing.unisex != "">>one<<elseif $player.sec_style.clothing.female != "">>girl<<else>>boy<</if>>, you'll figure something out!@@"<br>
<br>
[<<moveTo $scene.coffeeszenePass "Leave the office in the Quest for Coffee." $scene.coffeetime>>]
<<elseif $npc_manager.stage >= 4 && !$npc_barista.flags.stage4Intro>>
"@@.npc_manager;<<=$player.first_name>>, be a darling and fetch me a coffee. And step lively, I need something to help me get through all of these reports!@@"<br>
<br>
<<if $player.flags.work_coffee.coffee_skill == 0>>
You
<<else>>
It appears that your coffee-making equipment is not yet hooked up in the new office so you
<</if>>
go searching for the coffee shop for floor <<=$player.work.upperFloorNumber>>.<br>
<br>
[<<moveTo "event_stage4_coffee_intro_1" "Leave the office in the Quest for Coffee." 300>>]
<<else>>
<<if $player.flags.firstWorkDayDone>>
<<if $player.flags.work_coffee.coffee_skill == 0>>
"@@.npc_manager;<<=$player.first_name>>, be a darling and fetch me a coffee. I really need some caffeine to get through the day. Now hurry, else I will have to find some other way to get adrenaline rushing through my body, and you might not find helping in that manner quite so pleasant.@@"<br>
<br>
[<<moveTo $scene.coffeeszenePass "Leave the office in the Quest for Coffee." $scene.coffeetime>>]
<<else>>
"@@.npc_manager;I am in the mood for a <<=$scene.coffeetype.name>>. Please hurry up and prepare me one.@@"<br>
<br>
<<if $scene.coffeeszeneInfo || setup.progEventIsType("work_coffee_shop")>>
Unfortunately it seems that facilities neglected to refill your supplies, so you will need to head to Coffee Shop 52 if you are to meet her request.<br>
<br>
[<<moveTo $scene.coffeeszenePass "Leave the office in the Quest for Coffee." 60>>]<br>
<<else>>
You look at the coffee machine near your desk and consider your options.<br>
<br>
<<if $scene.coffeetype.diff <= $player.flags.work_coffee.coffee_skill>>
<<printThought "I know how to make a <<=$scene.coffeetype.name>> without any difficulty, I can have it ready for her fast.">>
<<elseif $player.flags.work_coffee.coffee_skill > .5 * $scene.coffeetype.diff>>
<<printThought "Hmm, <<=$scene.coffeetype.name>> is a bit tricky, I can probably make it, or I could play it safe and take the time to go to Coffee Store 52.">>
<<else>>
<<printThought "Hmm, preparing a <<=$scene.coffeetype.name>> is a bit out of my skill range, maybe I should take the extra time to just go to Coffee Store 52.">>
<</if>>
<br><br>
<<if $player.flags.work_coffee.coffee_skill == 9 && $npc_technician.relationship.coffee_dates > 0>>
As you start to organise things you realise that, technically, you have everything you would need to make "The Cofferasque"... and you think your skills are up to the challenge.<br>
<br>
[<<moveTo "event_coffee_brew_cofferasque" 'Brew <<=setup.getNpcName("npc_manager","formal")>> the legendary Cofferasque.' 600>>]
<</if>>
<<if $scene.baristaMisbehave>>
[@@.link_locked;Thanks to your earlier efforts, Coffee Shop 52 is closed for the day.@@]<br>
<<else>>
[<<moveTo "event_coffee_brew_alt" "Go fill her order at Coffee Shop 52." 60>>]<br>
<</if>>
[<<moveTo "event_coffee_brew_1" "Attempt to brew her order personally." 300>>]
<</if>>
<</if>>
<<else>>
"@@.npc_manager;<<=$player.first_name>>, be a darling and fetch me a coffee. I really need some caffeine to get through the day. Now, make haste, I can feel my focus drifting, and I hate it when that happens.@@"<br>
<br>
[<<moveTo $scene.coffeeszenePass "Leave the office in the Quest for Coffee." $scene.coffeetime>>]
<</if>>
<</if>>
</div>/*#
#desc: search until you find the floor 52 coffee shop
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
You leave the office only to remember how big your company is. You are on floor 52, in a building with well over a hundred floors. And that's just what's above the ground. If you're one of the people who needs a car in this day and age, there's a giant underground garage, and there are rumours about some labs down there as well, for the more secure, but still absolutely, definitely legal endeavours of Social Interaction Service Syndicate Inc. You never really paid heed to such rumours. Fantastical tales swirl around every megacorp, so who knows what's fact and what's myth.<br>
<br>
<<if $player.flags.atesissypill>>
Then again, you swallowed a pill that gave you instant boobs, developed by the very company you're working for, so who knows what they could be secretly cooking up?<br>
<br>
<<printThought "Well, I am sure there is some reasonable explanation for this... is there?">><br>
<<else>>
<<printThought "Well, I am sure those are just some stupid rumours... right? Yeah, have to be.">><br>
<</if>>
<br>
Thanks to your new status as secretary to <<=setup.getNpcName('npc_manager', 'formal')>>, you can traverse the floor without having to fear being tackled by an over-eager security guard, but you still probably shouldn't enter every door you see in search for your precious rupees. You remember that Cloud Data Service had a coffee kitchen you visited on a regular basis, but that is more than a few floors below and it would be kind of strange to go there for your coffee, now. Checking your phone's Map App for the company, there seems to be a small coffee shop on this floor, next to the lounge, pretty much just like <<=setup.getNpcName('npc_manager', 'formal')>> said. Walking down the hallway and rounding the corner, you spot a sign saying "Coffee Shop 52".<br>
<br>
[<<moveTo "event_work_coffee_0_1" "Enter the Coffee Shop." 60>>]
</div>/*#
#desc: enter floor 52 coffee shop for the first time, see barista being double-plugged
#status: FINISHED 0.4.0.0
#ignore_spell: ridicu
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "unknown_candy">>
<<changeHorny 25>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_2'
3
'event_psychiatrist_session_barista_candy_1'
false
>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<img src="./images/scenes/npc_barista_upskirt_plug.png" height="452" width="804"><br>
<div id="invframe" class="scrolltext">
You enter the Coffee Shop and it only takes a second for you to question everything, again. You take a step back, look up at the sign again.<br>
<br>
<<printThought "Nope, says coffee shop.">><br>
<br>
You step back inside. Look at the counter. Take a good look at the well endowed woman in a skin tight latex maid uniform. Rub your eyes. Take a look at her again. <<printThought "Oh... she's gone.">><br>
<br>
<<printThought "Okay... taking that penis enlargement pill just seems to continue to pop out new side effects... fuck. That was uncanny. To think someone would work here dressed like that would be totally and absolute ridicu...">><br>
<br>
Nope, she was simply under the counter looking for something. And the way she's now bent over, wiggling her butt in the air as delectably as possible, you can see her panties. Well, more than panties, to be precise. Rather than anything approaching normal, she is sporting a red latex thong. A thong, you might add, that appears to be struggling to keep a pair of plugs from springing free of her two lower orifices.<br>
<br>
Well, good thing you have a emergency protocol for situations like this. Well, not exactly situations like this, since you never encountered a situation like this, like ever, but you have a plan! Turn around before she gets up, look at something on the shelves and act like you haven't seen a single thing, while trying not to blush too much. Now, engage Protocol!<br>
<br>
<<printThought "...bootylicious...">><br>
<br>
Or do nothing at all and freeze in place like a timid fawn caught in the headlights. Except it isn't headlights, it's her perfect pale butt cheeks, or maybe her dual plugs? Either way, you seem to be stuck. Even as she straightens up again, you still stand there, frozen.
<<if setup.calcErection()>>Well, scratch that last part. Not completely frozen, a certain part of you is very happy to act up and gain more traction than usual, which you realise as <<if setup.checkItemTypeTag('legwear', ['pants'])>>your trousers get tighter and tighter around your groin region<<else>>you nervously pull on the bottom edge of your skirt lest it pop up and reveal your excitement<</if>>.<</if>><br>
<br>
"@@.npc_barista;Oh. Hi there! I didn't see you coming in. Well, okay I saw you coming in, and then you went outside again. People tend to do that... like, a lot, for some reason. Thought you left for good, so I started looking for something down there. But I didn't find it, since I forgot what I was looking for in the first place.@@"<br>
<br>
Still frozen... dammit, I think it's time for a hard reset...<br>
<br>
"@@.npc_barista;Hello... are you... alright? Oh gawd. Did you die and freeze in place like one of those legendary martial arts masters in anime?@@"<br>
<br>
You blink and she's somehow on your side of the counter, her... substantial rack bouncing as she walks over on steep, almost stripper, heels. Her hand waving in front of you finally snaps you back to reality. You try to act as normal as possible given your awkward behaviour, but struggle to do so.<br>
<br>
"@@.npc_barista;My doctor always says, take a deep breath and release all anxiety. If I only knew what that word meant. And then she offers me some chocolate. I'm sorry, I don't have any chocolate for you, but I have some candy!@@" she says while handing you a piece of candy, and continues without skipping a beat, "@@.npc_barista;I am <<=setup.getNpcName("npc_barista", "first")>>, <<=setup.getNpcName("npc_barista", "full")>>. But everyone around here calls me <<=setup.getNpcName("npc_barista", "nickname")>>. Is there anything I can do for you darling?@@"<br>
<br>
[<<moveTo "event_work_coffee_0_2" "Order a coffee." 180>>]
</div>/*#
#desc: meet barista, purchase coffee
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'coffee_strawberry'>>
<<set $npc_barista.profile = true>>
<<addNpcTheme 'npc_psychiatrist' 'npc_barista' 'theme_psychiatrist_barista_0'
3
'event_psychiatrist_session_barista_met_1'
false
>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You introduce yourself to <<=setup.getNpcName('npc_barista', 'nickname')>> and tell her that you're the new secretary of <<=setup.getNpcName('npc_manager', 'formal')>>. For a moment it looks like she's reacting to that name, but she seems to have difficulty focusing her thoughts.<br>
<br>
"@@.npc_barista;<<=setup.getNpcName('npc_manager', 'other')>>... that name does ring a bell... you see, I have trouble thinking straight sometimes, well, most of the time, like... as long as I can remember. That is why I have to see my doctor on a regular basis, though... she says thinking a little kinky is better? Ooh. Wait... no... oh. You must be <<=ps(setup.getNpcName('npc_secretary', 'nickname'))>> replacement!@@" Then, just for a fraction of a second, her happy-go-lucky attitude evaporates, her expression shifting and her voice sounding like another personality entirely as she whispers ominously, "@@.npc_barista;Poor <<if $player.sec_style.clothing.female =="">>bastard does not know yet what he<<else>>girl does not know yet what she<</if>> signed up for...run while you...@@"<br>
<br>
She stops in mid sentence, her upbeat personality re-asserting itself as if nothing happened, "@@.npc_barista;Oh, yes. <<=setup.getNpcName('npc_secretary', 'nickname')>> used to come here all the time, ordering coffee for her boss lady. Hmm... I wonder what happened to her. Haven't seen her for a few days now. She sick, or did she finally take up that offer from that strange cock... err I mean cook and needs a few days to recover?@@"<br>
<br>
You explain to her that your predecessor has been promoted, or something like that, but that you're her successor and then explain to her that successor has nothing to do with fellatio.<br>
<br>
"@@.npc_barista;So you're here to fetch your boss lady's coffee now, is that right?@@"<br>
<br>
You nod and ask what kind of coffee <<=setup.getNpcName('npc_secretary', 'nickname')>> used to order. <<=setup.getNpcName('npc_barista', 'nickname')>> stares at you blankly.<br>
<br>
"@@.npc_barista;Wait, I am supposed to remember that? Maybe I should have written it down... no, last time I tried to write things down they took away all my pencils.@@"<br>
<br>
<<printThought "Wait, what?">><br>
<br>
"@@.npc_barista;Oh, now I remember! <<=setup.getNpcName('npc_secretary', 'nickname')>> told me that her boss lady is into cute and frilly pink things. So let's try... a strawberry latte, okay?@@"<br>
<br>
You agree, though mixed in with your growing confusion there are doubts on your mind.<br>
<br>
<<printThought "<<=setup.getNpcName('npc_manager', 'formal')>> is into cute things? Why does she always seems so imposing and stuck up?">><br>
<br>
"@@.npc_barista;One strawberry latte macchiato coming right up.@@" she proclaims, flashing her skirt up at you as she bounds over the counter and then dives under to fetch some of the strawberry syrup. Once more you find yourself staring at her goodies, on display to all of mankind yet again.<br>
<br>
<<printThought "Is this some kind of joke... or a test? Should I call her out on that behaviour? I mean, I cannot be the only one who sees this, am I? Should I ignore it? Or is it a test if I can keep something a secret if it's something internal to the company? Ah! This is driving me nuts.">><br>
<br>
Your curiosity gets the better of you and you somehow scrape together the courage to ask her what's with the uniform while she prepares the coffee. Her hands moving to the top of her very well formed breasts and slowly gliding down along her body, as she innocently counters, "@@.npc_barista;Oh, you mean this? Well, this is my uniform, Silly! Even though I think I used to wear something different a long time ago. It's hard to remember. But I remember that it wasn't so hot to wear, I mean this thing makes me sweat a lot even if I don't move around that much. That doesn't really matter though, I mean, the guys, and, like some of the girls, really seem to like it when I wear this. My Su... sup... my Boss told me it's a part of a, um... I think <<he>> called it a demiplanary treasure... whatever that's supposed to be. Why do you ask? You want one for yourself? Well, if I ask my Boss, I'm sure <<he>>...@@"<br>
<br>
You interrupt her right there. You explain that you have no intentions to wear such a uniform. She is obviously, and oddly, confused by this assertion, but you manage to come up with the excuse that since you're not from this department it would confuse customers and coworkers.<br>
<br>
"@@.npc_barista;Oh... of course. Silly me. But if you want one for your spare time, I have a few at home, and, like, some other fun stuff! <<if $player.body.breastsize[0] < 2>>I think it might be a bit loose on your chest, but it<<else>>It<</if>> might be rather tight around your hips. Anyway, your strawberry latte macchiato, <<if $player.sec_style.clothing.female == "">>sir<<else>>ma'am<</if>>!@@"<br>
<br>
You thank her and pay with your company ID card, which forwards the costs to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> account. One of the major benefits for working both here and at Cloud Data Service was the free coffee. <<printThought "Ah, yes. Good times.">> Next time you'll have to remember to get a cup for yourself. You don't want to delay further and risk angering your manager.<br>
<br>
[<<moveTo "event_work_coffee_0_3" "Return to the office." 360>>]
</div>/*#
#desc: deliver coffee to manager (first time)
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'coffee_strawberry'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You return to the antechamber and knock on the wooden door leading to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
"@@.npc_manager;Come in, <<=$player.first_name>>.@@"<br>
<br>
You open the door and are almost knocked over by an aura of gloominess. Reflexively you gulp and loosen your collar a little bit.<br>
<br>
<<if $player.sec_style.clothing.female == "">>
"@@.npc_manager;That took you long enough. I am trying to keep my portion of the company in order, but I can only do that if I keep focused at the time. I had to pull an all-nighter yesterday... again. And I am pretty certain you fetched me the wrong coffee, anyway, since you did not even bother to ask what I wanted. Men—@@" you're surprised how much dismissive spite she manages to pack into a single syllable. "@@.npc_manager;-like you always assume they have everything figured out and...@@"
<<else>>
"@@.npc_manager;That took you long enough. I am trying to keep my portion of the company in order, but I can only do that if I keep focused at the time. I had to pull an all-nighter yesterday... again. And I am pretty certain you fetched me the wrong coffee, anyway, since you were so distracted you did not even bother to ask what I wanted...@@"
<</if>>
<br><br>
Her eyes widen and she seems to be at a loss for words as you put the strawberry latte macchiato on her desk.<br>
<br>
"@@.npc_manager;How... where did you get this?@@" she asks while picking up the cup, looking at it from different angles as it were almost an alien artifact. You tell her about the cafe you found on this floor "Coffee Shop 52", and about <<=setup.getNpcName('npc_barista', 'nickname')>>, leaving out a few of the more delicate details of your... encounter. You ask her if the barista was right and if this is her favourite coffee.<br>
<br>
"@@.npc_manager;Not by a long shot. But it used to be <<=ps(setup.getNpcName('npc_secretary', 'first'))>>
favourite,@@" she answers absent-mindedly.<br>
<br>
<<printThought "<<=$npc_secretary.first_name>>? Is that <<=ps(setup.getNpcName('npc_secretary', 'nickname'))>>
real name?">><br>
<br>
"@@.npc_manager;For future reference, I like my coffee like I like my men. Hot, and with a shot of cream in them.@@"<br>
<br>
<<printThought "Wait, what?">><br>
<br>
"@@.npc_manager;But this will do for today... for nostalgic reasons. But just for today, I will expect better next time. You may leave.@@"<br>
<br>
You nod and head for the door.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: first day working as secretary, look around your office by yourself
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_secretary.flags.checkedPicture = true>>
<<set $scene.early = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.firstday_late>>
You slowly open the door to your office and take a peep inside. <<=ps(setup.getNpcName('npc_manager', 'formal'))>> does not seem to be in the outer area where your desk is. Either she isn't here, or she must be in the inner office.
<</if>>
You enter the antechamber in front of <<=setup.getNpcName('npc_manager', 'formal')>> office. It is a small but well furnished room with a modern looking wooden office desk. Not one of these cheap pseudo-wood pieces of furniture, but a rather expensive and stable looking desk made of real wood.<br>
<br>
Other than the stout desk, nothing really stands out. Folders sorted according to an unknown filing system stored in a cabinet behind the desk, work utensils nicely tidied up on the desk alongside one of the newer IP based telephones with a modern smart phone display and a small pink leather notebook. Not one you'd have chosen, given the colour and given your normal preference for functionality over design, but the expensive designer notebook fits rather well into the overall decor of the office.<br>
<br>
On the far side of the room are a few comfortable looking chairs. You assume these are for guests or customers waiting on an appointment.<br>
<br>
The only thing that is particularly strange is the picture hanging next to your desk. It is a picture of a young lady in somewhat old-fashioned, though attractive, secretary attire. Looking closer reveals something odd, however, as despite the classic stylings the photo is borderline fetishistic; the silk blouse very tight over her substantial bosom and below that...<br>
<br>
<<printThought "Is her narrow pencil skirt latex?">><br>
<br>
<<printThought "Oh. Nice. Who is that? That can't be dress code? Maybe a joke... or the next level of this whole <<if $fetish.sissy>>SISSI <</if>>Secretary hazing thing? Wait, was the picture even here yesterday? I really should pay more attention to details!">><br>
<br>
This image sticks in your mind, peculiar compared to the rest of the office and you make a mental note to ask <<=setup.getNpcName('npc_manager', 'formal')>> about it later.
Speaking of which, she still hasn't given any indication that she's in the office. Maybe you can wait for her out here?<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Wait here." 7200 "<<set $player.flags.firstWorkDay = true>>">>]<br>
[<<moveTo "event_first_workday_morning_0_1" "Snoop around a little bit...">>]
</div>/*#
#desc: first day secretary, caught by AI trying to get into manager's office
#status: FINISHED 0.4.0.0
#ignore_spell: 3d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.profile = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
Your curiosity gets the better of you and you approach the intimidating looking wooden door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> private office. It looks like a regular, if imposing, wooden door, no keypad or retina scanner next to it. Maybe because you're already within a secure area?<br>
<br>
<<printThought "A little peek wouldn't hurt, would it?">><br>
<br>
You try to open the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. It is does not budge. You pull a little bit harder, it is a massive wooden door after all, maybe it's just stuck. Suddenly you get a small electric shock. More in surprise than pain you pull your hand back.<br>
<br>
<<printThought "What was that?">><br>
<br>
You suddenly hear a synthetic voice in your ear, sounding remarkably close: "@@.npc_ai;<<uc "ACCESS DENIED">>@@" You take a step back from the door. "@@.npc_ai;<<uc "YOUR ATTEMPT AT ILLEGITIMATE ENTRY HAS BEEN LOGGED AND WILL BE FORWARDED TO <<=uc(setup.getNpcName('npc_manager', 'other'))>>. HAVE A NICE DAY.">>@@"<br>
<br>
That was the same voice from yesterday in the elevator. And way too specific to be a generated message. You look around in a panic to check for any hidden cameras, but are unable to spot any, or speakers, for that matter. Maybe there are none, or they're just well-hidden. You take a step back from the door, still confused.<br>
<br>
"@@.npc_ai;<<uc "You seem to be confused. Activating Social Interaction Interface">>.@@"<br>
<br>
A ghost-like human figure appears out of thin air. Right in front of you. Just like that.<br>
<br>
<<printThought "No fucking way!">><br>
<br>
You take a curious look at the hologram. Its resolution seems crude, almost archaic compared to modern displays, but still, it is there, right in front of you in full 3D glory. In appearance it looks like some Asian girl, her eyes tracking you as you move. You get Japanese horror movie vibes all of a sudden.<br>
<br>
"@@.npc_ai;<<uc "This form should suffice, please be at ease. Let me give you the benefit of the doubt and ask you: what you were trying to accomplish at the door to">> <<=uc(ps(setup.getNpcName('npc_manager', 'other')))>> <<uc "private office?">>@@"<br>
<br>
You stumble through your words a bit, doing your best to defuse the situation by asking if this is a security operator on the internal sensors.<br>
<br>
"@@.npc_ai;<<uc "Accessing Security Level of Unit">> <<uc $player.last_name>> <<uc $player.first_name>><<uc "... processing... security Level 0 found. Rights: None. Classified as non-threatening. I am known as">> <<=uc(setup.getNpcName("npc_ai", "other"))>>. <<uc "That is an acronym for Artificial Instinct Kharma Organism. I am the Secure System Human Relations Manager for this company. The Security System has informed me of your... attempt to enter the office of">> <<=uc(setup.getNpcName('npc_manager', 'other'))>> <<uc "unauthorised. The penalty for this is... calculating... whatever your manager deems appropriate.">>@@"<br>
<br>
<<printThought "This company has a motherfucking AI? You've got to be kidding me!">><br>
<br>
You try your best to convince <<=setup.getNpcName('npc_ai', 'first')>>, that you had no ill intentions when you tried to enter the office.<br>
<br>
"@@.npc_ai;<<uc "Calculating... are your excuses an attempt to prevent my filing a report to your manager? Please answer with yes or no.">>@@"<br>
<br>
[<<moveTo "event_first_workday_morning_0_1_yes" "Say yes." 0>>]<br>
[<<moveTo "event_first_workday_morning_0_1_no" "Say no." 0>>]
</div>/*#
#desc: first day secretary, admit to AI that you were trying to get into manager's office, AI keeps secret
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_ai.flags.blackmail = true>>
<<set $npc_ai.flags.ignoredFirstDoorAccess = true>>
<<set $player.flags.checkedDoor = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Very well. I will keep this information to myself...">>@@"<br>
<br>
<<printThought "Seriously?">><br>
<br>
"@@.npc_ai;<<uc "...for the time being. This chat will be stored as well, in case the unit">> <<uc $player.first_name>> <<uc $player.last_name>> <<uc "turns out to be a useful asset to the system. You will be contacted when the system is in need of your service.">>@@"<br>
<br>
<<printThought "Well, I've found out two things today. AI's are real, and they can blackmail you. Splendid... just splendid.">><br>
<br>
You decide it's best to wait until <<=setup.getNpcName('npc_manager', 'formal')>> appears, before you do anything that could compromise you any more than you already have.<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Wait here." 7200 "<<set $player.flags.firstWorkDay = true>>">>]
</div>/*#
#desc: first day secretary, deny to AI you were trying to get into manager's office, AI reports you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $player.flags.checkedDoor = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Very well. All information has been forwarded to">> <<=setup.getNpcName('npc_manager', 'other').toUpperCase()>>. <<uc "According to my Human Emotion Prediction Interface she is not forecasted to be pleased to hear this information... confirming, yes, she appears angry to have read my report. Further action will be left in the hands of">> <<=setup.getNpcName('npc_manager', 'other').toUpperCase()>>. <<uc "Goodbye.">>@@"<br>
<br>
As suddenly as <<=setup.getNpcName('npc_ai', 'first')>> appeared the hologram vanishes into, well, thin air, you suppose.<br>
<br>
<<printThought "Well, I've found out two things today. God exists, and she hates me.">><br>
<br>
You decide it's is probably best to wait until <<=setup.getNpcName('npc_manager', 'formal')>> appears. Sounds like you're already in trouble, best not to compromise yourself further.<br>
<br>
[<<moveTo "room_office_sissy_secretary" "Wait here." 7200 "<<set $player.flags.firstWorkDay = true>>">>]
</div>/*#
#desc: first workday secretary, she calls/berates you if you are late, if in person you get first inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcAtOffice">>
<<set $scene.at_office = $scene.at_office || $player.llocation == "event_first_workday_morning_0">>
<<if $scene.at_office>>
<<set $scene.preciselyOnTime = false>>
<<if !$npc_manager.flags.firstday_late>>
<<if $scene.at_office && $now.getUTCHours() == 8 && !$scene.early>>
<<set $scene.preciselyOnTime = true>>
<<set $currentTasks.manager_first_morning_inspection_task.condition = "">>
<<if setup.checkTaskUntimedComplete("manager_first_morning_inspection_task")>>
<<set $currentTasks.manager_first_morning_inspection_task.condition = "Complete">>
<<else>>
<<set $currentTasks.manager_first_morning_inspection_task.condition = "Failed">>
<</if>>
<</if>>
<</if>>
<<if $player.flags.firstWorkDayDone && !(($currentTasks.hasOwnProperty('manager_first_morning_inspection_task') && !setup.checkTaskReason("manager_first_morning_inspection_task","clothesClean")) || ($currentTasks.hasOwnProperty('manager_first_morning_inspection_task_retry') &&!setup.checkTaskReason("manager_first_morning_inspection_task_retry","clothesClean")))>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $npc_manager.flags.firstday_casualclothes = false>>
<<if (setup.analyzeWornTags(['female','male','unisex']) == 'male') && (setup.analyzeWornTags(['casual','office'])=='casual')>>
<<set $npc_manager.flags.firstday_casualclothes = true>>
<</if>>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<storeVisual $player $npc_manager>>
<<include "inspectionData_gasmask">>
<<else>>
<<if $npc_manager.flags.firstday_late>>
<<initRoom>>
<<moveTo "event_first_workday_morning_1_gameover">>
<</if>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<set $npc_manager.criticalanger += 1>>
<<applyStress 25>>
<<set $npc_manager.flags.firstday_late = true>>
<<set _nextDate = setup.setNextDate($now, 0, 9, 0)>>
<<addTaskById 'manager_first_morning_inspection_task_retry' _nextDate>>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<addTaskReq $currentTasks.manager_first_morning_inspection_task_retry 'clothesUnderwear' 'femaleUnderwear'>>
<</if>>
<<if $player.sec_style.clothing.female == "enthusiast">>
<<addTaskReq $currentTasks.manager_first_morning_inspection_task_retry 'clothesUnderwear' 'officeFemaleClothes'>>
<<elseif $player.sec_style.clothing.unisex == "enthusiast">>
<<addTaskReq $currentTasks.manager_first_morning_inspection_task_retry 'clothesUnderwear' 'unisexClothes'>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.at_office>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<else>>
<<set $player.location to "Phonecall">>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$scene.at_office>>
<<if $player.llocation == "room_wake_up">>
You've been rudely awakened by your phone. Damn, you've overslept.
<<else>>
Your phone is ringing.
<</if>>
<<if setup.inArray('npc_manager',$phoneList)!=-1>>
Oh no. It's from <<=setup.getNpcName('npc_manager', 'formal')>>!
<<else>>
You have no idea who's calling you, but the number is from within the city.
<</if>>
<br><br>
"@@.npc_manager_dom;Well, well, well <<if $player.sec_style.body.identify_fem>>Ms.<<else>>Mr.<</if>> <<=$player.last_name>>. If it was your intention to leave a lasting impression, consider yourself successful. You've managed to make me angry.@@"<br>
<br>
Glancing at the clock, you wince in knowledge of what this is about — you're late. You try to come up with an excuse, but simply stutter incoherent words.<br>
<br>
"@@.npc_manager;Silence. I do not desire to listen to your sad attempts to fabricate an excuse. I took a big risk offering you a position and if this is how you are going to repay my generosity, with flagrant tardiness... I expect you in my office rapidly unless you wish a complete cessation of your employment. Good day <<if $player.sec_style.body.identify_fem>>Ms.<<else>>Mr.<</if>> <<=$player.last_name>>!@@"<br>
<br>
She hangs up without accepting another word from your side. Wow. <<=setup.getNpcName('npc_manager', 'formal')>> is quite intimidating when she's angry, not that you're liable to experience anything from her again being that you were just fired.<br>
<br>
<<printThought "Damn it. On my first day. That is inexcusable!">><br>
<br>
[<<moveTo $player.llocation "Hang up." 0 "<<set $player.cutscene.lockinventory = false>>">>]
<<else>>
<<if $npc_manager.flags.firstday_late>>
At nine am <<=setup.getNpcName('npc_manager', 'formal')>> strides into the antechamber. Her eyes stare daggers into you. You know what you've done, and she does not hide the facts that she is not at all happy with you failure.<br>
<br>
"@@.npc_manager_dom;Well, well, well. Look who has finally decided to show up to work,@@" she says in a very commanding voice. Taking a slow breath she <<=setup.getNpcName('npc_manager', 'formal')>> clears her throat and continues in a more calm manner, "@@.npc_manager;<<if $player.sec_style.body.identify_fem>>Ms.<<else>>Mr.<</if>> <<=$player.last_name>>, tardiness will not be tolerated in this office. Punctuality is one of the pillars of society. Do not be late again, do I make myself clear?@@"<br>
<br>
You nod, too afraid to speak.<br>
<br>
"@@.npc_manager;Very good.@@"<br>
<br>
You definitely made her angry.<br>
<br>
<<if $player.flags.checkedDoor && !$npc_ai.flags.ignoredFirstDoorAccess>>
Her angered expression remains and she continues, "@@.npc_manager_dom;And for future reference, you are only to enter my office with my permission. Is that clear <<if $player.sec_style.body.identify_fem>>Ms.<<else>>Mr.<</if>> <<=$player.last_name>>?@@"<br>
<br>
You nod again.<br>
<br>
<<printThought "Shit, I am just screwing everything up, and on my first day!">><br>
<br>
<</if>>
<<if $scene.wearingGasMask>>
As if you weren't botching things bad enough, she glares at your gas mask. "@@.npc_manager;Bad air quality morning? No matter. This office has the highest quality scrubbers on the market, so while you are indoors you are safe — and that means I want to see your lovely face.@@"<br>
<br>
You blush and remove the gas mask.<br>
<br>
<</if>>
<<else>>
<<if $scene.preciselyOnTime && !$npc_ai.profile>>
You rush through the door at exactly <<if $options.militaryTime>>8:00<<else>>eight o'clock<</if>>, just as <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office on the opposite side of the room. She raises a single eyebrow.<br>
<br>
"@@.npc_manager;Cutting it close, are we? I would advise leaving a bit earlier in the future. After all, punctuality is one of the pillars of society.@@"
<<if $scene.wearingGasMask>>
<br><br>
She glares at your gas mask. "@@.npc_manager;Bad air quality morning? No matter. This office has the highest quality scrubbers on the market, so while you are indoors you are safe — and that means I want to see your lovely face.@@"<br>
<br>
You blush and remove the gas mask.
<</if>>
<<else>>
At eight sharp <<=setup.getNpcName('npc_manager', 'formal')>> enters the antechamber.
<<if $scene.wearingGasMask>>
She glares at your gas mask. "@@.npc_manager;Bad air quality morning? No matter. This office has the highest quality scrubbers on the market, so while you are indoors you are safe — and that means I want to see your lovely face.@@"<br>
<br>
You blush and remove the gas mask.
<</if>>
Her eyes brush over you and you think you momentarily spot something like a smile on her lips.<br>
<br>
"@@.npc_manager;You were already waiting? Very good. Punctuality is one of the pillars of society. If this is a harbinger of your future performance, you should do very well indeed.@@"
<</if>>
<br><br>
<<if $player.flags.checkedDoor && !$npc_ai.flags.ignoredFirstDoorAccess>>
Suddenly her expression turns negative and her tone shifts to one of anger. "@@.npc_manager_dom;But for future reference, you are only to enter my office with my permission. Is that clear <<if $player.sec_style.body.identify_fem>>Ms.<<else>>Mr.<</if>> <<=$player.last_name>>?@@"<br>
<br>
You nod, too afraid to speak.<br>
<br>
<</if>>
<</if>>
<<if !setup.checkTaskReason("manager_first_morning_inspection_task","clothesClean")>>
"@@.npc_manager;Now, let me have a closer look at your attire. Oh.@@" You expect her to be angry, but her expression appears more disappointed and frustrated with you. "@@.npc_manager;You are not very good at following instructions, are you? To describe the state of your attire as a mess would be a compliment. You are a representative of Social Interaction Service Syndicate Inc., and as such you must depict a certain role.@@"<br>
<br>
<<if $npc_manager.flags.firstday_casualclothes>>
Her mood continues to go downhill. She continues in a much harsher tone, "@@.npc_manager;And these clothes you are wearing are completely unacceptable for one in your position. I will let it slide this once, but only because this IS your first workday, but starting tomorrow this would be MAJOR problem. You work in a representative position, after all. I assume you must have mixed up the male and female dress codes, these might be... close to acceptable, if only they were a more appropriately feminine cut. Trust me, young man, you are treading dangerously close to a harsh punishment. The male secretary dress code is very strict, albeit similar to your previous company. We need our male employees to look as good as possible considering their limited understanding of styling, colour coordination and everything else. Of course I would accept if you would prefer to appear at office in a complete female attire, there would be a lot more options for you to choose from. Who knows, maybe will mandate such a dress code onto you if you decide to flaunt requirements and show up in clothes like these one more time. Do I make myself clear?@@".<br>
<br>
You gulp and nod quietly, something that seems to be happening a lot lately.<br>
<br>
<</if>>
<<else>>
"@@.npc_manager;Anyway, let me have a closer look at your attire. Ah.@@" Her expression blooms with obvious delight, "@@.npc_manager;Yes, this is what I was expecting in regards to hygiene. Everything smells freshly washed.@@"<br>
<br>
<<if $npc_manager.flags.firstday_casualclothes>>
Her mood turns negative. She continues in a much harsher tone, "@@.npc_manager;And these clothes you are wearing are completely unacceptable for one in your position. I will let it slide this once, but only because this IS your first workday, but starting tomorrow this would be MAJOR problem. You work in a representative position, after all. I assume you must have mixed up the male and female dress codes, these might be... close to acceptable, if only they were a more appropriately feminine cut. Trust me, young man, you are treading dangerously close to a harsh punishment. The male secretary dress code is very strict, albeit similar to your previous company. We need our male employee to look as good as possible considering their limited understanding of styling, colour coordination and everything else. Of course I would accept if you would prefer to appear at office in a complete female attire, there would be a lot more options for you to choose from. Who knows, maybe I will mandate such a dress code onto you if you decide to flaunt requirements and show up in clothes like these one more time. Do I make myself clear?@@"<br>
<br>
You gulp and nod quietly, something that seems to be happening a lot lately.<br>
<br>
<</if>>
<</if>>
<<if $scene.compareVisuals!="">>
"@@.npc_manager;<<=$scene.compareVisuals>>@@"<br><br>
<</if>>
<<if setup.checkTaskUntimedComplete("manager_first_morning_inspection_task") && !$npc_manager.flags.firstday_late && !$npc_manager.flags.firstday_casualclothes>>
"@@.npc_manager;Well done <<=$player.first_name>>, well done. You managed to follow my instructions precisely. I hope this is an indication of change, turning over a new leaf after your past few arduous days. Keep this behaviour up during your work hours and we will have little need for disciplinary measures.@@"<br>
<br>
<<printThought "Disciplinary measures? What does she mean by that?">><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> focuses her sight on you, noting your momentary confusion.<br>
<br>
"@@.npc_manager;Ah, it seems like you did not have sufficient time to read through the whole contract yet. Well, let me describe the matter to you. In basic terms, it is like this: As your superior it is my duty to make sure you represent Social Interaction Service Syndicate Inc. in the best possible way. Should you fail to do so, the responsibility, and blame would fall back onto me, and we would not want that to happen, now, would we?@@" she lowers her glasses a little bit and tilts her head forward, so you can see directly into her dark emerald green eyes. Your fight or flight instinct tries to kick in as your heart pounds in your chest.<br>
<br>
"@@.npc_manager;Thus, it is my responsibility to make sure you are up to the task before you. I will provide you with clear expectations, as well as guidance in how to meet them, but when that fails, well... that leads us to the disciplinary measures. Each manager, as well as those further up the hierarchy, like the head of operational excellence, the Senior Director or even the CEO, is granted certain leeway in defining programmes of discipline to help correct wayward employees and ensure future improvements in performance. By giving this power to the employee's superior, the punishment can be crafted not just to fit the offense, according to the magnitude of the allegation, but also to take a form calibrated to prevent future deviations from policy on the part of the employee.@@"<br>
<br>
It seems there is a pause for the dramatic effect. And it seems to work on your psyche.<br>
<br>
"@@.npc_manager;Some managers are uncreative, choosing merely to reduce the employees pay for the month, while others have more... innovative, and... personal approaches to the whole matter. We will discuss this in greater detail at the end of the day. If you are unhappy with this arrangement, which I take from your confused look, you are of course allowed to cancel our contract within the probationary period. But I would not worry your pretty little head for something like this. By the looks of things, it seems like you are already on the way to becoming a good, obedient Secretary for Social Interaction Service Syndicate Inc. Or, as I explained yesterday — a good <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"<br>
<br>
<<printThought "Pretty little head, obedient secretary... <<if $fetish.sissy>>SISSI<<else>>girl<</if>>? What have I gotten myself into?">><br>
<br>
<<else>>
"@@.npc_manager;<<=$player.first_name>>, I really hope I have not misplaced my trust in you. Unfortunately you seem to be making a very poor first impression as a Secretary. I am sorry, but I am going to have to invoke a disciplinary measure on you, and at the start of your first day! I assume you read the contract that I sent to your email, but just in case you have neglectfully failed to do so...@@"<br>
<br>
"@@.npc_manager;In basic terms, it is like this: As your superior it is my duty to make sure you represent Social Interaction Service Syndicate Inc. in the best possible way. Should you fail to do so, the responsibility, and blame would fall back onto me, and we would not want that to happen, now, would we?@@" she lowers her glasses a little bit and tilts her head forward, so you can see directly into her dark emerald green eyes. Your fight or flight instinct tries to kick in as your heart pounds in your chest.<br>
<br>
"@@.npc_manager;Thus, it is my responsibility to make sure you are up to the task before you. I will provide you with clear expectations, as well as guidance in how to meet them, but when that fails, well... that leads us to the disciplinary measures. Each manager, as well as those further up the hierarchy, like the head of operational excellence, the Senior Director or even the CEO, is granted certain leeways in defining programmes of discipline to help correct wayward employees and ensure future improvements in performance. By giving this power to the employee's superior, the punishment can be crafted not just to fit the offense, according to the magnitude of the allegation, but also to take a form calibrated to prevent future deviations from policy on the part of the employee.@@"<br>
<br>
"@@.npc_manager;Some managers are uncreative, choosing merely to reduce the employees pay for the month, while others have more... innovative, and... personal approaches to the whole matter. We will discuss this in greater detail at the end of the day. If you are unhappy with this arrangement, which I take from your confused look, you are of course allowed to cancel our contract within the probationary period. Despite your... poor first impressions, however, I believe that would be a mistake, on both our parts. It is my opinion that with just a little focus you can re-orient yourself properly, and blossom into a good, obedient Secretary for Social Interaction Service Syndicate Inc. Or, as I explained yesterday — a good <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"<br>
<br>
<<printThought "Blossom into an obedient Secretary?... <<if $fetish.sissy>>SISSI <</if>>Secretary? What have I gotten myself into?">><br>
<br>
<</if>>
<<if $npc_secretary.flags.checkedPicture>>
[<<moveTo "event_first_workday_morning_1_1" "Ask her about the picture on the wall." 300>>]<br>
<</if>>
[<<moveTo "event_first_workday_morning_2" "Wait for her to continue." 300>>]<br>
<</if>>
</div>/*#
#desc: first workday secretary, ask manager about the picture of your predecessor
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $npc_secretary.flags.askedManagerPicture = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<image src="./images/artwork/npc_secretary_office_photo.png"></image>
<div id="invframe" class="scrolltext">
<br>
"@@.npc_manager;Ah, yes. I see, you see this was...@@"<br>
<br>
For a moment it seems like she is at a loss of words. You don't know her very well yet, but that seems highly unlikely under normal circumstances.<br>
<br>
"@@.npc_manager;This is your predecessor. She managed to rise a few ranks in the company hierarchy before transferring to the department of oral contentedness on floor 69 for additional orientation to prepare her for a new position directly serving senior management. Thus, I am left with an opening that you have so delightfully filled.@@"<br>
<br>
<<printThought "Hmm... never heard of that department before. Maybe I should read that contract. Or check the company wiki page.">><br>
<br>
"@@.npc_manager;I will warn you that you have some very steep shoes to fill. She was an excellent secretary and just the few days since her departure, well... I really did not want to see her go, but her promotion was suggested by <<=setup.getNpcName('npc_boss', 'other')>> after a lengthy oral discussion. You still seem puzzled. Ah, it must be her outfit. You see, the secretary dress code has a certain amount of leeway compared to many other positions. We encourage our secretaries to choose an outfit that really expresses who they are, so long as it is in keeping with the personal preferences of their manager and that it still reflects well back on the company as a whole.@@"<br>
<br>
"@@.npc_manager;You could change your attire as well, if you wished. Just make sure to read the contract first. As for her picture hanging here next to your desk? Well, consider it inspiration and motivation. If you are diligent and obedient, that could be you in a few years, maybe even months if you exert yourself with extreme diligence. <<if $player.sec_style.clothing.underwear == "enthusiast">>Of course I mean the promotion, not the dress. Maybe both. I am not judging. <</if>>The most important thing to remember is I am your boss, my word is law... but what we fundamentally share is a sort of a... partnership in that we both want what is best for you.@@"<br>
<br>
Again, you see a hint of a smile play on her lips. In a way you can't quite put your finger on, it's almost scarier than witnessing her anger.<br>
<br>
<<if checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('stockings')],['female']) && !($player.sec_style.clothing.underwear == "enthusiast" || $player.sec_style.clothing.underwear == "strict")>>
<<printThought "Does she know I'm currently wearing female underwear? No... this has to be a coincidence!">><br>
<br>
<</if>>
"@@.npc_manager;Now, shall we continue with your orientation?@@"<br>
<br>
[<<moveTo "event_first_workday_morning_2" "Nod in agreement." 300>>]
</div>/*#
#desc: game over for being multiple times for first day secretary
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
Your phone is ringing, again. You have a premonition of what is to come.<br>
<br>
You answer the phone. It is <<=setup.getNpcName('npc_manager', 'formal')>>, as expected.<br>
<br>
"@@.npc_manager;As I am in my office and you are nowhere to be seen, I can only conclude that you are late, yet again. I am sorry, but I cannot continue to employ someone as sloppy as you, <<=$player.first_name>>. Consider our contract terminated. I wish you luck for your future.@@"<br>
<br>
You were expecting something louder. Her voice was more sad than angry. She hangs up before you assemble a response.<br>
<br>
[<<moveTo "gameover_nintendolls" "Continue.">>]
</div>/*#
#desc: first day secretary, manager lays out your job duties
#status: FINISHED 0.4.0.0
#ignore_spell: mailshots
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<if $player.timebased.horny>50>>
<<set $npc_manager.stagevalues[1].erectionatwork += 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Since you are a lateral entrant from a different background, I will explain the basics of your responsibilities. Secretaries are the backbone of this organisation, they help to keep the organisation running smoothly, taking care of the administrative and organisational tasks that make the company as a whole function. This may seem basic, but there are many things that go into being a good secretary. Take a seat, this might take a while.@@"<br>
<br>
You sit down in the chair at the secretary... at YOUR desk. <<=setup.getNpcName('npc_manager', 'formal')>> hands you a clipboard with a document attached and sits on the table opposite your seat, leaning in your direction. Well, not just towards you, almost suggestively close next to you.
<<if $player.timebased.horny>50>>
You try to clear your head, but the raging boner in your pants makes things more difficult for you.<br>
<br>
<<printThought "Fuck! Penis enlargement pills my ass. They messed my whole... everything up.">><br>
<br>
You really hope that <<=setup.getNpcName('npc_manager', 'formal')>> does not notice your predicament, and you seem to be on the safe side as she continues to go over more points on the clipboard.<br>
<br>
"@@.npc_manager;By the way <<=$player.first_name>>, as I already mentioned before, being a secretary is a very representative and sometimes prestigious asset to the company. Squirming around, unable to sit still due to hard circumstances is unacceptable, and yes I am talking about your... well, I think you would call it "erection." <<if $player.sec_style.submission.chastity != "">>While I am not sure if I should be flattered or offended... no, lets erase that last part from the protocol, I am offended. Keep your nether regions under control,<<elseif $player.sec_style.body.tblock>>I am sure those testosterone blockers will swiftly help with that <<if $fetish.sph>>little <</if>>issue<<else>>Well... I have something in mind for that you will find out about shortly,<</if>>@@" She calmly explains to you while pointing with a pen towards your crotch region. Your face takes on a red pinkish shade, while you try to explain yourself, first saying its not her, then realising that might be insulting, trying to lead the topic towards your experiment with the penis enlargement pills you stumble upon your own words and make the matter worse, a lot worse.<br>
<br>
<<if !$player.sec_style.submission.chastity && !$player.sec_style.body.tblock>>
"@@.npc_manager;<<=$player.first_name>>, let me be clear about one thing. When I tell you to do something, you do it. I do not care how you control your little roly-poly doll down there, if you don't manage to find a permanent solution, I will find one. Did I make myself clear?@@"<br>
<br>
<<printThought "Well, now I am officially confused.">>
<<elseif $player.sec_style.submission.chastity>>
"@@.npc_manager;I suppose we should both be glad you agreed to be locked in chastity so early... but I still warn you to be careful. I expect you to comport yourself utterly professionally while under my supervision — and that does not mean the oldest profession.@@"
<<elseif $player.sec_style.body.tblock>>
"@@.npc_manager;Of course, testosterone blockers may be just the first stage of things for you... but it has only been a day, we do not need to rush EVERYTHING.@@"
<<else>>
ERROR: unexpected
<</if>>
<br><br>
You simply nod, unsure to be even more aroused or to be terribly afraid for the well-being of your loins. You try to concentrate back at the task at hand.
<<else>>
You try to clear your head, surely your mind is just playing a prank, reading too much into things.
<</if>>
You look down. On the clipboard is a detailed list of your responsibilities and obligations.<br>
<br>
"@@.npc_manager;Let us go through this together, shall we? Normally that would have been your predecessor's job, but since her transfer came in rather quickly and she is not available, well, the full responsibilities for your acclimation to your new position falls on me.@@"<br>
<br>
For a second, you believe you hear a small sigh.<br>
<br>
<<printThought "Is that regret in her voice?">><br>
<br>
"@@.npc_manager;Anyway, <<=$player.first_name>>, in this occupation it is of utmost importance to hone your oral skills. Answering calls and handling correspondence, that sort of thing. You will be arranging appointments. Then there is typing, preparing and collating reports. The filing sequence is described in greater detail in the document in front of you, I like to keep hard-copy records of everything important close at hand.@@"<br>
<br>
She points to the cabinet behind your desk.<br>
<br>
"@@.npc_manager;I want physical and digital copies of all reports. But do not worry about the backups, it is up to our internal IT Department to handle those.@@"<br>
<br>
<<printThought "Ouch. That one hurt.">><br>
<br>
"@@.npc_manager;Organising and servicing meetings is an important part of your job as well. You will be liaising with relevant organisations and clients and ensure their well-being with everything you have at your disposal. And of course coordinating mailshots and similar publicity tasks. From time to time, you may also be called upon to attend in-house events for self-improvement, service orientation and advanced oral training.@@"<br>
<br>
That was the last point of the clipboard. She gets up from the table, the smell of her perfume lingering next to you.<br>
<br>
"@@.npc_manager;Beyond what is technically in the official document, but very important to me, you have to fetch me something to eat from the canteen every lunch. I hardly have the time to get there at all, much less stand in line waiting. Oh, and, not directly part of your job as secretary, but mandatory nonetheless, your psychological evaluation with <<=setup.getNpcName('npc_psychiatrist', 'other')>> this Friday afternoon. I know this may seem like a lot but one final thing. This is important, so listen well. Your performance will be evaluated at the end of each working day for the full duration of your probationary period... and possibly beyond, until I can be totally confident in your ability to meet my VERY high expectations. So do not leave before I have given you permission. Do you understand?@@"<br>
<br>
You nod nervously.<br>
<br>
"@@.npc_manager;Good. Okay, let me put you to work, then. I am sure most things will just... slip into place once you relax and focus on your new duties.@@"<br>
<br>
[<<moveTo "event_first_workday_morning_3" "Continue.">>]
</div>/*#
#desc: first workday secretary, learn about probationary period and punishments
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addWorkEvent 'work_coffee_first'>>
<<set _nextDate = setup.setNextDate($now, 1, 8, 0)>>
<<addTaskById 'manager_first_morning_inspection_task' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Okay, since half of the week is already over, you only have to work for <<=$player.work.hoursperWeek>> hours this week. Workdays are the usual, Monday through Friday, from <<if $options.militaryTime>>8 until 17 o'clock<<else>>8 am until 5 pm<</if>>. In each nine hour work day there is a thirty minute lunch break at noon sharp, with the exception of Friday. Friday you get off early, only working from <<if $options.militaryTime>>8 until 13 o'clock<<else>>eight in the morning until two pm<</if>>. Normally you would have 25 days paid vacation per year, but since you joined in the middle of the year, you only have 12 days. And you are not allowed to use any during your probationary period. The length of the probationary period depends on your willingness to become the best possible secretary there is. That means that, as your manager, I have the final word on when this period is considered completed. But, as I have told you before, it is typically at least four weeks. Well, I will just let you work now. If you have any questions about the finer details of your duties well... do not even bother asking me, we each have our own expertise and responsibilities. I have mine, and this is to be yours, and figuring it out is part of those expectations. I am sure you will pick it up, and besides, if I am unhappy with the results, I will simply have to spank that cute little butt of yours into submission.@@"<br>
<br>
She winks at you and makes a spanking movement with her hand.<br>
<br>
<<printThought "She is joking, right? She has to be joking. ">><br>
<br>
<<if $npc_manager.stagevalues[1].enthusiastchastity>>
"@@.npc_manager;So...@@" She states with a grin as you turn to leave. "@@.npc_manager;Per our agreement yesterday, I have a chastity device ready. There is only one question... would you prefer a cage... or a belt?@@"<br>
<br>
[<<moveTo "event_enthusiast_chastity_1" "A cage?" 300 "<<set $scene.cage=true>>">>]<br>
[<<moveTo "event_enthusiast_chastity_1" "A belt sounds less intimidating..." 60 "<<set $scene.cage=false>>">>]
<<else>>
You ask her if she is joking.<br>
<br>
"@@.npc_manager;Well, there is really only one way to find that out. You will figure everything out in time. Have fun!@@"<br>
<br>
She leaves you and walks into her office, shutting the door behind her. You take some more time to study the document given to you on the clipboard and then place it in the lower drawer of your desk. Remembering a study technique from school, you reach for the pink notebook to write out some reminders, flipping it over to find the word SISSI embossed in the leather of the front. It takes you a moment of dumb staring before realising that it is actually a stylized logo for the company. Shaking your head, you open the notebook, trying to ignore the stranger things about this new job.<br>
<br>
Thankfully, administration was a big part of your school education, so you have a decent idea what you have to do, for the most part. Checking your computer, you are also happy to note that you are pretty solid with most programs installed on the system.<br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
<<printThought "Alright... so my boss is a bit of a tyrant, and I don't exactly have a choice... but at least the work doesn't seem so bad. If I just fulfill my duties and keep my head down I won't draw <<=ps(setup.getNpcName('npc_manager', 'formal'))>> wrath... right?">>
<<else>>
<<printThought "Yeah, maybe this is going to work out after all. I mean what manager doesn't have quirks? <<=setup.getNpcName('npc_admin', 'first')>> used to joke a lot, I just need to adjust to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> sense of humor.">>
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Start working." 60 "<<set $player.work.nowWorking = true>><<set $player.work.style = 'normal'>><<set $player.work.startTime = $now>><<set $scene.pricicelyOnTime = false>>">>]
<</if>>
</div>/*#
#desc: end of first workday, wait to see manager
#status: FINISHED 0.4.0.0
#ignore_spell: g
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex')>>
<<set $player.flags.firstWorkDayDone = true>>
<<set $scene.showpenis = false>>
<<set $scene.erection = false>>
<<set $scene.cum = false>>
<<set $scene.hits = 0>>
<<set $scene.fullsetfemaleunderwear = false>>
<<set $scene.sissyset = false>>
<<if $npc_manager.flags.cruel < 2>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_other_cruelty'
0
'theme_manager_other_cruelty_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You clock out at <<if $options.militaryTime>>17:00<<else>>five o'clock<</if>> and get ready to leave, when you remember that you need to wait until <<=setup.getNpcName('npc_manager', 'formal')>> does your performance review for the day. She hasn't called you in yet, so you try to pass the time.<br>
<br>
<<if $npc_secretary.flags.checkedPicture>>
You remember that you wanted to take a closer look at your contract, since there are quite a few details that are still not that clear to you. Though you don't have a copy of the contract per se, you do conveniently find what looks to be a secretary dress code handbook in one of your desk drawers. Recalling <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> odd "uniform," you glance up at the picture of your "predecessor" and her... unique attire. Turning away quickly, you sit back and start to read. The legalese is thick, but it seems like the regulation for attire really is much more open than at the rest of the company. Somewhat strangely, it seems the whole chapter only goes into detail about female attire. You wonder if maybe there's another book for male employees only to find a footnote concerning Male Clothing at the bottom of the last page. A blue or white shirt and black trousers. Office shoes. No casual clothes, not even on Friday.<br>
<br>
<<if $npc_manager.stagevalues[2].femalesecretary>>
<<printThought "Huh, I guess I should read up on what I'm in for...">>
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
<<printThought "Huh, that's a bit weird.">>
<<else>>
<<printThought "So... business as usual. For me, at least.">>
<</if>>
<br><br>
<<if $npc_manager.stagevalues[2].femalesecretary>>
Deciding you should be as informed as possible, you start going through the expansive section on attire for female employees.
<<else>>
Figuring you might as well be fully informed, you flip back to skim the rest.
<</if>>
As brief as the male section was, the female section is... thorough, as resplendent with detail as it is, in practice, unregulated. Skirts can be pretty much at any length and any material, the document even providing a list of materials that starts with normal cotton and synthetics while also containing strange things like latex, leather and vinyl. Blouses can be opaque or see through, bras can be modest or rather skimpy, but are for some reason a mandatory component of female attire. You don't understand half of the section about panties, but you're pretty sure thongs and g-strings are allowed, but you have to look up a few weird terms on the net to be sure. You never realised there were so many different names for underwear, all you ever really worried about <<if $player.sec_style.clothing.underwear != "">>before <</if>>was boxers or briefs.<br>
<br>
In another... oddity, it is noted that you don't need fabric in the crotch region, whatever that means. This seems very strange to you. Even more strange is the part where it is stated that your superior has the right to overrule company regulations when it comes to the dress code, and that such revisions must be followed to the letter. Noncompliance is to be met with serious consequences, including disciplinary measures.<br>
<br>
<<printThought "Hmmm... what exactly are these supposed to be?">><br>
<br>
You try to read further, but it seems like this book doesn't have that information; you would have to look at the original contract on your email at home. You're startled by the sudden appearance of <<=setup.getNpcName('npc_manager', 'formal')>> in the doorway to her office.
<<else>>
You start to look around in the office to pass the time, since you didn't have time to take a closer look at some things. The only thing that is kind of strange is the picture hanging next to your desk. It depicts a young lady in a rather inappropriate looking fetish secretary attire with a tight silk blouse and what you think is a VERY snug latex pencil skirt. Figuring it must be a trick of the light you decide to take a closer look at the photo.<br>
<image src="./images/artwork/npc_secretary_office_photo.png"></image><br>
It has some words engraved on the bottom :"Secretary of the Year 2032." Hmm... perhaps it is your predecessor? She looks quite attractive, though the outfit does not really look like it would follow any corporate dress code you could think of. You're startled by the sudden appearance of <<=setup.getNpcName('npc_manager', 'formal')>> in the door to her office.
<</if>>
<br><br>
"@@.npc_manager;<<=$player.first_name>>, would you please come so we can talk about your performance for today?@@"<br>
<br>
You stand up and follow her.<br>
<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_2" "Continue." 300>>]<br>
</div>/*#
#desc: end of first workday, assessment + told of your mandatory punishment
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush "tmp">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Have a seat, please.@@"<br>
<br>
You sit down in the comfortable looking chair that stands in front of her expansive desk. Just like yesterday, you have this strange feeling nagging at the back of your mind. Even seated, <<=setup.getNpcName('npc_manager', 'formal')>> is somehow looking down at you. Is she really that superior to you or is it something else? Maybe an optical illusion.<br>
<br>
<<if ($currentTasks.hasOwnProperty("manager_first_morning_inspection_task") && setup.checkTaskUntimedComplete("manager_first_morning_inspection_task") || $currentTasks.hasOwnProperty("manager_morning_inspection_task") && setup.checkTaskUntimedComplete("manager_morning_inspection_task")) && $npc_manager.anger <= 2 && $scene.foodDelivery.right>>
"@@.npc_manager;Well, colour me impressed. You did quite well today,
<<if $player.work.tmpworkPensum >= 8.5>>
in fact you managed to complete your tasks even better than anticipated. Keep this up and you will be a perfect
<<elseif $player.work.tmpworkPensum >= 5>>
not in terms of work efficiency... you barely did half of what I would expect of you, but those skills can be learned. I am more impressed with your following instructions, obedience counts for much, and if you stick to that route you can learn the rest, which means we will have you being a perfect
<<else>>
not in terms of work efficiency... on that front your performance was quite disappointing, but it was your first day, and such skills take time to learn. More important was your excellent obedience, stick to that path and you will be a perfect
<</if>>
<<if $fetish.sissy>>SISSI <</if>>Secretary in no time!@@"<br>
<<if setup.getWillpower() >0>>
<br>
The short pause in her speech is surely there for her to gauge your reaction. You try your best to stay indifferent.<br>
<</if>>
<br>
"@@.npc_manager;Your excellence only makes this next part a bit more challenging, as, though you managed to do everything right, I still have to discipline you. You see the first disciplinary measure is always administered at the end of your first full workday, which you would know from reading the contract.@@"<br>
<br>
She smiles as your worried expression gives away the fact that
<<if $player.flags.contract.read<=0>>
you had not read the contract.
<<else>>
you were clearly not expecting this eventuality.
<</if>>
<br><br>
"@@.npc_manager;Tsk, tsk, not so perfect after all. Well, let us just say that it is your disciplinary measure for not reading the contract. Somewhat amusing, since even if you had read, you still would have been due a punishment... ah, the irony.@@"<br>
<<else>>
"@@.npc_manager;Well, even though you had problems with what should really have been the most simple instructions, you managed to make it through the day better than many first-timers. We shall call that a qualified success — and a base from which you can build.@@"<br>
<br>
<<if $npc_manager.anger > 4>>
<<if $npc_manager.criticalanger>0>>
"@@.npc_manager;Of course you still made... quite a few mistakes in the last 24 hours, and I am not even considering your last job. Do not forget, this is your probationary period, you really should focus on doing your best in everything. If you continue to make mistakes like these, I am afraid I may be forced to let you go. Your position is an important part of this company and I cannot have my secretary failing to meet expectations.@@"
<<else>>
"@@.npc_manager;Of course you still made... quite a few mistakes in the last 24 hours, and I am not even considering your last job. Do not forget, this is your probationary period, you really should focus on doing your best in everything. Fortunately these errors are not severe enough to threaten your job, if you do your work well enough, but I expect my subordinates to do far more than merely "meet expectations." In time you will soon realise that I have a very unique way to handle... frisky personal such as yourself.@@"
<</if>>
<br><br>
<</if>>
"@@.npc_manager;Ah well, the fact is that you were going to receive your first disciplinary measure today in any case. You see, the first disciplinary measure is a mandatory capstone at the end of your first workday, which you would know if you had read the contract fully.@@"<br>
<br>
She smiles as your worried expression gives away the fact that
<<if $player.flags.contract.read<=0>>
you had not read the contract.
<<else>>
you were clearly not expecting this eventuality.
<</if>>
<br><br>
"@@.npc_manager;Tsk, yet another failure it seems. No matter, I had more than enough reason to do a regular disciplinary measure on you.@@"<br>
<</if>>
<<if $player.flags.contract.read>0>>
<br>
You try to defend yourself by bringing up that you read the contract.<br>
<br>
"@@.npc_manager;That may well be, but reading and understanding are two very different things, as your surprise at this development indicates, my dear <<=$player.first_name>>. Do not worry, understanding will come to you, in time. Until then obedience will suffice. Of course, if you HAD understood the contract, you would know that this was mandatory, and since you signed your agreement to the contract... well, this was really quite inevitable. So, may I continue, or are you continuing to interrupt me again... which might result in another punishment for good measure.@@"<br>
<</if>>
<br>
<<if State.hasPlayed("attachment_read_contract_punishment_1")>>
You suddenly remember the section of your contract concerning punishment and things start to come together...
<<else>>
<<printThought "You've got to be kidding me! What is she going to do, dock my pay? I'm hardly getting anything this month anyway!">>
<</if>>
<br><br>
<<if $npc_manager.flags.cruel || $player.sec_style.clothing.underwear == "strict">>
Her lips turn up into a cruel smile. "@@.npc_manager;That confused look... is something the matter, hmm? Perhaps wondering if things might be going easier for you had you not attempted such rude rejection yesterday? Now, I will be honest with you... discipline would have been part of your contract regardless but, given your history... I will give you a moment to consider if you will submit willingly... of if you are going to show another foolish bout of recalcitrance...@@"<br>
<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_2_strict_1" "Contract or no, she can't be serious!" 120>>]<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3" "Stay and accept your fate." 60>>]
<<else>>
"@@.npc_manager;Right there, you have that confused look on your face again, <<=$player.first_name>>. I will remind you that you do, technically, retain the option to terminate your contract prematurely and leave, if that is what you want. And do not worry, being that this is your first disciplinary measure, I feel it is important to use it to set the tone for the future. I promise it won't be something uncreative like docking your pay. Still, the door is behind you. But if you decide to stay, you will receive a disciplinary measure,
<<if $npc_manager.anger > 4>>
and at your current rate it looks like this could be the first of many if I am going to mold you into a perfect secretary,
<<else>>
at least this once,
<</if>>
and your probation will continue. So, what will it be <<=$player.first_name>>?@@"<br>
<br>
<<if State.hasPlayed("attachment_read_contract_punishment_1")>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_2_enthusiast" "Of course you'll submit to punishment, it's part of your job, after all!" 60>>]<br>
<</if>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_2_gameover" "Decide it's best to end this charade before you give up any more of your sanity." 120>>]<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3" "Stay and accept your fate." 60>>]
<</if>>
</div>/*#
#desc: enthusiastically ask for punishment first day
#status: RELEASED 0.9.1.0
#ignore_spell: w
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'submission' 7 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<if (setup.checkItemTypeWorn("panties") || !setup.isBodySlotVisible('penis')) && (setup.checkItemTypeWorn("legwear")==false) && (setup.checkItemTypeWorn("shoes")==false)>>
<<initRoom>>
<<set $player.cutscene.noitems = false>>
<<moveTo "event_manager_mandatory_disciplinary_measure_4">>
<</if>>
<<if setup.isBodySlotVisible('penis') || setup.isBodySlotVisible('crotch')>>
<<initRoom>>
<<set $player.cutscene.noitems = false>>
<<if !setup.checkItemTypeWorn("panties")>>
<<moveTo "event_manager_mandatory_disciplinary_measure_3_commando">>
<<else>>
<<moveTo "event_manager_mandatory_disciplinary_measure_3_penis">>
<</if>>
<</if>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The gears in your head take a few moments to turn as you piece together this new information with what you read in the contract.<br>
<br>
You take <<=setup.getNpcName("npc_manager","formal")>> momentarily by surprise as you obediently thank her for the forthcoming punishment, noting that you read your contract and are ready to submit to whatever treatment she deems necessary.<br>
<br>
"@@.npc_manager;My, my... look at you proving yourself QUITE the well prepared and informed <<if $fetish.sissy>>SISSI <</if>>Secretary. Now, if you would kindly stand and remove your shoes and <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>trousers<</if>>, we can proceed to your oh-so-anticipated first punishment.@@"<br>
<br>
<<if $player.flags.commando>>
<<if $player.timebased.horny>50>>
<<printThought "No, no, no, no, NO! I'm not wearing any underwear today! And I have a raging erection down there! Stupid pills!">><br>
<br>
You shake your fist against the heavens in disappointment. But alas, no Gods are answering your call.<br>
<br>
"@@.npc_manager;What are you doing <<=$player.first_name>>? Get moving! Do not make me repeat myself@@"
<<else>>
<<printThought "No, no, no, no, NO! I'm not wearing any underwear today!">>
<</if>>
<<elseif setup.checkItemTypeWornTag("panties","female")>>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<printThought "Well... I guess that answers the question on her checking up on requirements. Strange how not just wearing female underwear, but showing them off feels... fine?">>
<<elseif $player.sec_style.clothing.underwear == "strict">>
<<printThought "Oh <<getWordGod>>... and I'm still wearing the humiliatingly pink underwear she gave me...">>
<<elseif setup.getItemFromType("panties")=="cotton_panties">>
<<printThought "Oh no. I'm wearing <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> panties today!">>
<<else>>
<<printThought "Oh no. I'm wearing <<=setup.getItemTypeName('panties')>> today!">>
<</if>>
<<else>>
<<printThought "W... what?">>
<</if>>
<br><br>
<<hint $options "Your manager demanded you remove some clothes.<br>You can do this manually using the Inventory.">><br>
<<if $options.ezchange>>
<<set _legwear = setup.getItemFromType("legwear")>>
<<set _shoes = setup.getItemFromType("shoes")>>
<<if setup.checkItemTypeWorn("panties")>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_4" "Strip as instructed." 60 "<<if _legwear>><<removeItem _legwear true>><</if>><<if _shoes>><<removeItem _shoes true>><</if>>">>]
<<else>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3_commando" "Strip as instructed." 60 "<<if _legwear>><<removeItem _legwear true>><</if>><<if _shoes>><<removeItem _shoes true>><</if>>">>]
<</if>>
<</if>>
</div>/*#
#desc: refuse to submit to mandatory punishment at end of first day as secretary, given opportunity to rethink your decision
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Are you sure, <<=$player.first_name>>? I am only going to ask you this one more time, and that's only because you seem to be a nice <<if $player.sec_style.clothing.female == "">>boy<<else>>girl<</if>>. It would be a shame for you to give up a promising career opportunity over such trivial matters.@@"<br>
<br>
"@@.npc_manager;If this is about money, know that my personal disciplinary measures are never connected to your income, such methods are... uncreative and uncouth. In fact you should see discipline for its true purpose: as another way to help your personal growth, which, frankly said, you need quite a lot of. You are currently a mess. Look at you. You do not know what to do with your life. I reviewed your personnel file from Cloud Data Service. You have not asked for a raise for over 4 years. You've been in a dead end job for quite a while, and I think this is the opportunity you've been waiting for. This is your chance.@@"<br>
<br>
"@@.npc_manager;If you reject things here, well... after this, there is no turning back. You take the blue pill — the story ends, you wake up in your bed and believe whatever you want to believe. You take the pink pill — you stay in Wonderland and I show you how deep the rabbit-hole goes.@@"<br>
<br>
<<printThought "Wait a second... what?">><br>
<br>
For some reason <<=setup.getNpcName('npc_manager', 'formal')>> is holding a pink pill in her left, and a blue one in her right hand.<br>
<br>
[<<moveTo "gameover_bluepill" "Take the blue pill, bid goodbye and leave through the door." 60>>]<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3" "Take the pink pill and embrace your fate!" 60 "<<set $player.flags.manager.tookpinkpill=true>>">>]<br>
[<<moveTo "event_secretary_style_pink_pill_money_1" "A pill? Is there a cash incentive for that?" 60 "<<set $player.flags.manager.tookpinkpill=true>>">>] <<hint $options "Agreeing to this will add medication as a work requirement and enable the associated fetish.">>
</div>/*#
#desc: pink pill bargain
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> if there might be a monetary benefit to taking the pink pill she is offering you?<br>
<br>
"@@.npc_manager;Monetary?@@" She grins, a smile that instantly has you nervous about your request. "@@.npc_manager;Look at you! Your prior position was in tech but you have some hidden economic skills... hmm, yes, I would be willing to raise your base pay if you agreed to a drug performance routine. Really, you would be getting paid twice since the pill will surely help you better perform your <<if $fetish.sissy>>SISSI <</if>>Secretarial duties... let us say, fifty credits a week for agreeing to follow a drug regime? And I will be checking! No palming your pill or forgetting your medicine without consequences. So... do we have a deal?@@"<br>
<br>
<<printThought "That's only ten credits a day... then again, I'm really tight for rent, and every little bit would help...">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> pounces on your hesitation like a lion on a weakened gazelle. "@@.npc_manager;To sweeten the deal I am willing to offer an extra 100 credits, right now, that should help tide you over to payday... one time offer, however.@@" She reaches into her desk drawer for another pill rolling it between her fingers as she smiles.<br>
<br>
[<<moveTo "event_secretary_style_pink_pill_money_2" "Take the deal, and the pill." 60 "<<set $scene.moneyPill=true>>">>]<br>
<<if $options.impatientMod != 0>>
<<set _timer = "90s">>
<<else>>
<<set _timer = "0s">>
<</if>>
<<timed _timer t8n>>
[<<moveTo "event_secretary_style_pink_pill_money_2" "No... that's a bit too much." 60 "<<set $scene.moneyPill=false>>">>]
<</timed>>
</div>/*#
#desc: pink pill bargain
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.moneyPillOffer = true>>
<<if $scene.moneyPill>>
<<set $fetish.drugs = true>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<setTmpEffect 'sissypill'>>
<<addCredits 100>>
<<set $player.work.payment += 50>>
<<set $npc_manager.stagevalues[3].drugs_req = true>>
<<addItem "sissy_pill_mk1" 3>>
<<if setup.checkItemOwned("pink_pill")>>
<<addItem "sissy_pill_mk1" 1>>
<<removeItem "pink_pill">>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<if !$player.sec_style.body.pinkpill>>
<<set $player.sec_style.body.pinkpill = "money">>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
>>
<</if>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task")>>
<<addTaskTrigger 'manager_morning_inspection_task' 'pinkPill'>>
<<else>>
<<addTaskTrigger 'manager_first_morning_inspection_task' 'pinkPill'>>
<</if>>
<<else>>
<<addItem 'pink_pill'>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.moneyPill>>
You nod your agreement and <<=setup.getNpcName("npc_manager","formal")>> smiles, handing you the pill and waiting until you've swallowed it before counting out a stack of a hundred credits to slide across her desk for you along with a small bottle of additional pills.<br>
<br>
"@@.npc_manager;For safety reasons I will be limiting your supply, and reminding you to refrain from alcohol when under the pills effect. Enjoy your new prescription, you earned it.@@" She adds with a smile as you collect the credits and the bottle. You don't feel anything from taking the pill so far... but you're a bit distracted by nerves, plus it probably takes some time to kick in, anyway.<br>
<br>
<<printThought "Maybe I should have asked what, exactly it does before I took it? Well, she said it would help my work... so probably just aid in memory and concentration, or something.">>
<<else>>
You reply that you changed your mind and will fulfill your duties without any drug assistance.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sniffs, shrugs, and hands you a single pill before placing the large bottle back in her desk drawer. "@@.npc_manager;Very well. Still, you may have that sample, should you ever wish to test how a little chemical help can improve your... performance.@@"<br>
<br>
You nod nervously, uncertain if you have dodged a bullet... of merely delayed its impact.
<</if>>
<br><br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3" "Continue." 180>>]
</div>/*#
#desc: refuse to submit to mandatory punishment at end of first day as secretary on strict path
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stand your ground — you may be forced to be her employee, but you are not going to just meekly submit to arbitrary "punishment" for no reason at all!<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> takes a step closer, almost like she is stalking you, the glint in her eye very much reminiscent of a cat toying with its prey.<br>
<br>
As if to reinforce the predatory metaphor she covers the final metre in the blink of an eye, forcing something past your lips and then holding her hand over your mouth as you feel some sort of pill on your tongue.<br>
<br>
"@@.npc_manager;Swallow<<if $fetish.sissy>>, sissy<</if>>. A command you will surely become accustomed to hearing... though the next time will likely be something far more throat-stretching than that tiny little pill.@@" She states, one hand on the back of your head and the other over your mouth preventing you not only from spitting out the mysterious drug... but of even escaping. You reflexively try to push away but do not move in the slightest, even flailing your legs has you running in mid-air, suspended helplessly without her seeming the slightest bit encumbered.<br>
<br>
<<printThought "Just how strong is she?">><br>
<br>
Her firm hold leaves you little choice but to, once again, obey.<br>
<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_2_strict_2" "Give in and swallow..." 180 "<<set $scene.swallow=true>>">>]<br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_2_strict_2" "Hide the pill in your cheek and pretend to swallow." 180 "<<set $scene.swallow=false>>">>]
</div>/*#
#desc: strict path swallow drug
#status: RELEASED 0.8.5.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.swallow>>
<<setTmpEffect 'sissypill'>>
<<set $scene.firstBreast = $player.body.breastsize[0] == 0>>
<<if !$player.sec_style.body.pinkpill>>
<<set $player.sec_style.body.pinkpill = "forced">>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<set $player.flags.atesissypill = true>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
>>
<<changeHorny 100>>
<<applyExperience 'submission' 5 'terrible' $SEEN_STRANGER>>
<<else>>
<<addItem 'pink_pill'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.swallow>>
You give up and gulp down the pill and <<=setup.getNpcName('npc_manager', 'formal')>> grins, dropping you to the floor as the room starts to spin and turn a soft shade of pink.<br>
<br>
"@@.npc_manager;You feel that<<if $fetish.sissy>>, sissy<</if>>? That is the feeling of... inevitability. You WILL become the obedient <<if $fetish.sissy>>SISSI <</if>>Secretary I require... whatever it takes.@@"<br>
<br>
A part of you wants to resist, to talk back and object... but the drug is hitting fast, you arousal rocketing into the stratosphere even as your mind fogs and your senses dull. You moan, bringing a hand to your suddenly warm chest...
<<if $scene.firstBreast>>
where it discovers a pair of small breasts.<br>
<br>
<<printThought "Breasts? What?">><br>
<br>
Your confusion is overwhelmed by just how good it feels to grope yourself and you paw at your new breasts and you squeeze harder while humping the floor.
<<else>>
where you feel your breasts swell against your hands.<br>
<br>
<<printThought "How? What?">><br>
<br>
Your confusion is overwhelmed by just how good it feels to grope yourself and you paw at your enlarged breasts and you squeeze harder while humping the floor.
<</if>>
<br><br>
"@@.npc_manager;My, my, someone is easily susceptible... perhaps a sign that there is a good girl lurking in there who just needs a little help to come out...@@" She chuckles, staring down at you, her every word pushing you further into obedience. "@@.npc_manager;But we do not have time for you to sit there playing with yourself — this is about discipline, remember? Now, where were we...@@"<br>
<br>
Whatever resistance you had is being suppressed by the heavy pink fog of the drugs and you just stare up in a half-dazed state as she continues on.
<<else>>
As risky as it might be to disobey while literally in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> clutches you tongue the pill into your cheek and merely pretend to swallow.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smirks in satisfaction, releasing her hold and letting you drop to the floor where you land on your hands and knees and pant... while surreptitiously spitting the pill into your hand and palm it away.<br>
<br>
Her hand is back, grabbing you by the hair and pulling to your feet. "@@.npc_manager;Hmm... a weak effect, I may have to speak with <<=setup.getNpcName('npc_work_doctor', 'formal')>> about that...@@"<br>
<br>
You don't know who she's talking about... but all you're concerned is making it through this encounter with your mind intact, so you merely remain silent and hope things are nearly over.
<</if>>
<br><br>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3" "Continue." 180 "<<set $scene.strictPill=true>>">>]
</div>/*#
#desc: start of mandatory first day punishment, ordered to remove pants and shoes
#status: FINISHED 0.4.0.0
#ignore_spell: w
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.noitems = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.panties=setup.getItemTypeName('panties')>>
<<if !$scene.strictPill && !$scene.moneyPillOffer>>
<<if $player.flags.manager.tookpinkpill>>
<<setTmpEffect 'sissypill'>>
<<if !$player.sec_style.body.pinkpill>>
<<set $player.sec_style.body.pinkpill = "voluntary">>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<set $player.flags.atesissypill = true>>
<<addNpcTheme 'npc_manager' 'transformation' 'theme_manager_transformation_0'
0
'event_manager_theme_sissypill_1'
false
>>
<<changeHorny 50>>
<<else>>
<<addItem 'pink_pill'>>
<</if>>
<</if>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_work_advance'
1
'event_manager_theme_advance_1'
true
>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_work_buyout'
1
'theme_manager_buyout_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_2'
8
'event_psychiatrist_session_manager_sissy_pill_1'
true
>>
<<setThreshold "submission" "submissive_secretary" "first_punishment">>
<<if setup.checkItemTypeWornTag("panties","female")>>
<<set $player.flags.firstDPassissy = true>>
<<if $player.sec_style.clothing.underwear == "">>
<<set $player.sec_style.clothing.underwear = "voluntary">>
<</if>>
<</if>>
<</if>>
<<if setup.checkItemTypeWorn("panties") && !setup.checkItemTypeWorn("legwear") && !setup.checkItemTypeWorn("shoes")>>
<<initRoom>>
<<set $player.cutscene.noitems = false>>
<<moveTo "event_manager_mandatory_disciplinary_measure_4">>
<</if>>
<<if (setup.isBodySlotVisible('penis') || setup.isBodySlotVisible('crotch') || setup.checkItemTypeWorn("cage") && setup.checkItemVisible(setup.getItemFromType("cage"))) && !setup.checkItemTypeWorn("panties")>>
<<initRoom>>
<<set $player.cutscene.noitems = false>>
<<if !setup.checkItemTypeWorn("panties")>>
<<moveTo "event_manager_mandatory_disciplinary_measure_3_commando">>
<<else>>
<<moveTo "event_manager_mandatory_disciplinary_measure_3_penis">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.strictPill || $scene.moneyPillOffer>>
You start to fumble at your clothing as <<=setup.getNpcName('npc_manager', 'formal')>> continues on, watching you like a hawk even as she resumes her monologuing.
<<elseif !$player.flags.manager.tookpinkpill>>
"@@.npc_manager;A wise decision, <<=$player.first_name>>, even though I expected a little bit more resistance out of you. No matter, I admit when I misjudge someone. Maybe you are a much better fit for this job than I originally assumed. Here, take this,@@" she explains while handing you a pink pill. "@@.npc_manager;I actually prepared a speech about blue and pink pills inspired by an old movie in case you still wanted to quit, but, well, you surprised me. In a good way, of course. I think you will have a lot of fun with this pill. Do not worry, it is nothing illegal. Anyway...@@"
<<else>>
"@@.npc_manager;A wise decision, <<=$player.first_name>>.@@"<br>
<br>
You meekly swallow the pill. You gasp and feel a bit fuzzy as the pill seems to immediately take effect. Shuddering, you feel a heat in your chest, clutching yourself only to feel something swell as you...<br>
<br>
"@@.npc_manager;No, don't... oh my. The pill was actually more like a symbolic gesture. You were not supposed to take it right away. Did your parents fail to teach you not to trust candy from a stranger? And while I am not a stranger per se, I would not call us well acquainted either. Not yet, at least. What an interesting reaction.@@" You realise that she is watching you with a clinical inquisitiveness as the drug takes effect. "@@.npc_manager;So that's what it does. Hmm... maybe I should have read the documentation memo first, but the situation simply called for a pink and blue pill.@@"<br>
<br>
You only manage to say a few coherent words due to this intense feeling in your chest, asking what the blue pill would have been.<br>
<br>
"@@.npc_manager;My birth control pills, of course.@@"<br>
<br>
Unsure how to handle that kind of answer, you bend double in a blend of pain and arousal. You observe as your <<if $player.body.breastsize[1] == 0>>previously flat chest slowly starts to swell into two perfectly formed A-cup breasts<<else>>breasts swell even larger<</if>>.<br>
<br>
<<printThought "Oh my <<getWordGod>>, what a feeling!">><br>
<br>
More a moan than a cry of pain, your <<if $player.body.breastsize[1] == 0>>new breasts appear to be very sensitive, simply touching them gives you way too much sensory feedback compared to what you're used to<<else>>even larger breasts seem similarly even more sensitive and you gasp as you try to catch your breath<</if>>.<br>
<br>
"@@.npc_manager;Such a strong reaction... your body seems quite inclined to the effects. <<if $player.sec_style.clothing.underwear == "enthusiast">>Though that should, perhaps, be unsurprising, given what you have already agreed to<<else>>If only your mentality was as... accommodating<</if>>.@@"<br>
<br>
<<printThought "What, this was intentional?">><br>
<br>
"@@.npc_manager;Do not worry your cute little head, the effects only last a few hours... a day or two at the most.@@"<br>
<br>
Unfortunately for your psyche a cataclysmic rush of arousal overpowers almost all of your thoughts and you sway slightly, struggling just to focus enough to remain standing as the pink pill continues to work its magic.
<</if>>
<br><br>
"@@.npc_manager;It is a funny thing about these disciplinary measures. Over time we managers each develop our own personal style and philosophy. Some get so creative with their punishments that their subordinates will make minor mistakes on purpose just see what punishment they end up with. Can you imagine that? It turning into a sort of game? Anyway, let us begin your first punishment. Please stand and remove your shoes and <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>trousers<</if>>.@@"<br>
<br>
<<if $player.flags.commando>>
<<if $player.timebased.horny>50>>
<<printThought "No, no, no, no, NO! I'm not wearing any underwear today! And I have a raging erection down there! Stupid pills!">><br>
<br>
You shake your fist against the heavens in disappointment. But alas, no Gods are answering your call.<br>
<br>
"@@.npc_manager;What are you doing <<=$player.first_name>>? Get moving! Do not make me repeat myself@@"
<<else>>
<<printThought "No, no, no, no, NO! I'm not wearing any underwear today!">>
<</if>>
<<elseif setup.checkItemTypeWornTag("panties","female")>>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<printThought "Well... I guess that answers the question on her checking up on requirements. Strange how not just wearing female underwear, but showing them off feels... fine?">>
<<elseif $player.sec_style.clothing.underwear == "strict">>
<<printThought "Oh <<getWordGod>>... and I'm still wearing the humiliatingly pink underwear she gave me...">>
<<elseif setup.getItemFromType("panties")=="cotton_panties">>
<<printThought "Oh no. I'm wearing <<=ps(setup.getNpcName('npc_exgirlfriend', 'first'))>> panties today!">>
<<else>>
<<printThought "Oh no. I'm wearing <<=setup.getItemTypeName('panties')>> today!">>
<</if>>
<<else>>
<<printThought "W... what?">>
<</if>>
<br><br>
<<hint $options "Your manager demanded you remove some clothes.<br>You can do this manually using the Inventory.">><br>
<<if $options.ezchange>>
<<set _legwear = setup.getItemFromType("legwear")>>
<<set _shoes = setup.getItemFromType("shoes")>>
<<if setup.checkItemTypeWorn("panties")>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_4" "Strip as instructed." 60 "<<if _legwear>><<removeItem _legwear true>><</if>><<if _shoes>><<removeItem _shoes true>><</if>>">>]
<<else>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3_commando" "Strip as instructed." 60 "<<if _legwear>><<removeItem _legwear true>><</if>><<if _shoes>><<removeItem _shoes true>><</if>>">>]
<</if>>
<</if>>
</div>/*#
#desc: manager discovers you're commando for first day secretary, given sissy undergarment set, told to put them on
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemWorn("sissy_panties_pink") && setup.checkItemWorn("sissy_garter_pink") && setup.checkItemWorn("sissy_bra_pink") && setup.checkItemWorn("sissy_stockings_pink") && !setup.checkItemTypeWorn("legwear") && !setup.checkItemTypeWorn("shoes") && !setup.checkItemTypeWorn("shirt") && !setup.checkItemWorn("tie") >>
<<initRoom>>
<<moveTo "event_manager_mandatory_disciplinary_measure_3_commando_2">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.commando = true>>
<<addItemSet "sissy_lingerie_pink">>
<<set $clothSetsInt.tmp.data.push('sissy_panties_pink')>>
<<set $clothSetsInt.tmp.data.push('sissy_garter_pink')>>
<<set $clothSetsInt.tmp.data.push('sissy_bra_pink')>>
<<set $clothSetsInt.tmp.data.push('sissy_stockings_pink')>>
<<set $npc_manager.flags.bad_girl.got_sissy_underwear = true>>
<<if $player.sec_style.clothing.underwear != "strict">>
<<set $player.sec_style.clothing.underwear = "forced">>
<</if>>
<<setThreshold "feminization" "bad_girl_feminization" "commando">>
<<setThreshold "submission" "bad_girl_submission" "commando">>
<<setThreshold "bimbofication" "bad_girl_bimbofication" "commando">>
<<set $now to setup.advanceDate($player, $now, 'minutes', 1)>>
<<set $npc_manager.stagevalues[1].penisincident+=1>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You try to explain yourself, but a mere glance at <<=setup.getNpcName('npc_manager', 'formal')>> tells you that she's not going to listen to your excuses. You pull down your trousers, exposing your
<<if setup.checkItemTypeWorn("cage")>>
<<getWordMyPenis>>.
<<elseif $player.timebased.horny>50>>
raging erection.
<<else>>
flaccid penis.
<</if>>
<br><br>
<<printThought "Yup. I am going to die today. Tell my wife I loved her. Oh... I'm not married.">><br>
<br>
"@@.npc_manager;Mister <<=$player.last_name>>,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states softly, her even voice giving you the impression this is merely the calm before the storm. She places her glasses down and looks you in the eyes directly. "@@.npc_manager;Could you explain to me, in full detail, why you are not wearing any underwear whatsoever?@@"<br>
<br>
You look at the floor as your face burns with shame.<br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
"@@.npc_manager;Well? Mr. <<=$player.last_name>>? I thought we had established ground rules yesterday... and yet you show up to work like this...@@" She stalks towards a wardrobe in the corner of the room, pulling out a pink bag and tossing it at your feet.<br>
<br>
"@@.npc_manager;Unlike you, I am prepared — you will find a replacement set of underthings. You will wear them now, and you will wear their like — female underwear, at all times while you are at this job. Are there any questions? Confusion? I thought I was quite clear yesterday but it seems you missed something...@@"<br>
<br>
You try to think of a response, thoughts casting back to the previous day... you were helpless then, and you are equally helpless now. Perhaps you hoped that first display was just a joke, something to put a bit of fear into your head... but no, this is really happening...<br>
<br>
You lean over and pick up the bag.<br>
<br>
"@@.npc_manager;Good... as an additional tip, you will seldom go wrong with silent obedience. Now, put them on — and ONLY them. Your shoes and the rest... they are not necessary for this next part.@@"
<<elseif $player.sec_style.clothing.underwear == "enthusiast">>
"@@.npc_manager;And after things were going so well yesterday evening... tell me, what happened to that sweet girl and her willingness to have a dress code of feminine underthings?@@"<br>
<br>
You stammer and stutter, feeling a strange mix of shame at your disobedience that is finally cut off by <<=ps(setup.getNpcName('npc_manager', 'formal'))>> resigned sigh.<br>
<br>
"@@.npc_manager;Never mind the reason. As your manager it is my responsibility to keep you on track towards productivity. I had thought to give you a measure of freedom in choosing your personal style... but it looks like that was somewhat premature. Here.@@" She opens a drawer in her desk and hands you a pink box.<br>
<br>
"@@.npc_manager;Here you go, <<=$player.first_name>>. This might have been a later step on your path to become a perfect secretary... but you are making all manner of havoc with time-lines with what I might call enthusiastic recalcitrance.@@"<br>
<br>
You open the box. You don't know what you might have expected, but it wasn't this. Feminine underwear is one thing but this... Looking down is like staring at a box full of pink, frilly clouds. Closer inspection identifies the contents: some kind of pink, frilly fetish underwear set.<br>
<br>
There is a complete set; bra, panties, a garterbelt, stockings. Every item is pink, every item is frilly, and every item is among the <<if $fetish.sissy>>sissiest<<else>>girliest<</if>>, most over-the-top-feminine things you have ever seen. The quality of the set is quite breathtaking, if one was into that sort of thing.<br>
<br>
<<printThought "Wow, someone paid a lot for these. I feel almost honoured">><br>
<br>
"@@.npc_manager;Well, what are you waiting for? Put them on!@@"
<<else>>
"@@.npc_manager_dom;WELL? CAN YOU, MR. <<=uc($player.last_name)>>.@@"<br>
<br>
You flinch at her outburst. But just as swiftly as it appeared the storm dissipates. A single finger under your chin raises your face to meet her gaze. Her sinister smile and sparkling eyes is your entire world, like a tear in reality granting a peek into a dimension very different from your own.<br>
<br>
"@@.npc_manager;Very well, let it never be said that I am a person who backs down from a challenge. You are really in desperate need of training. And training is what you shall receive. Now, where is it?@@"<br>
<br>
Moving away she opens one of the drawers from the desk, and fetches a pink box. Walking back around she promptly hands you the ominous package.<br>
<br>
"@@.npc_manager;Here you go, <<=$player.first_name>>. This was supposed to be for a later step on your path to become a perfect secretary, but I think you need this now. Yes, this is what you need more than anything.@@"<br>
<br>
She steps back, leaving you holding the mysterious box. "@@.npc_manager;What would it say about the company, about me, your boss, if one of our secretaries could not even afford undergarments? Such a basic thing, and required by your contract, I would remind you. Also defined in that contract is that your manager, i.e.: me, can dictate to you what to wear. What you have shown me here is more than sufficient justification for me to implement some immediate changes to your dress code. So, go ahead, open it. It is all yours.@@"<br>
<br>
You open the box. You don't know what you might have expected, but it wasn't this. Nothing in your life could have prepared you for... this. Looking down is like staring at a box full of pink, frilly clouds. Closer inspection identifies the contents: some kind of pink, frilly fetish underwear set.<br>
<br>
There is a complete set; bra, panties, a garterbelt, stockings. Every item is pink, every item is frilly, and every item is among the <<if $fetish.sissy>>sissiest<<else>>girliest<</if>>, most over-the-top-feminine things you have ever seen. The quality of the set is quite breathtaking, if one was into that sort of thing.<br>
<br>
<<printThought "Wow, someone paid a lot for these. But what am I supposed to do with them?">><br>
<br>
Your puzzled expression does not go unnoticed, and <<=setup.getNpcName('npc_manager', 'formal')>> continues, "@@.npc_manager;Well, what are you waiting for? Put them on!@@"<br>
<br>
<<printThought "What?">><br>
<br>
You sputter and ask her if she is serious.<br>
<br>
"@@.npc_manager;Oh, we are beyond serious at this point,@@" she explains, while adjusting her glasses again, looking you directly into the eyes, "@@.npc_manager_dom;I must insist, no, I COMMAND you to put them on.@@"<br>
<br>
You are unable to disagree. Even though you should be stronger than her you feel like trembling prey in the presence of the undisputed queen of the jungle.
<</if>>
<br><br>
<<hint $options "Your manager demanded you change clothes.<br>You can do this by using your inventory<br>to swap worn items.">><br>
<<if $options.ezchange>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3_commando_2" "Put on your new gifts..." 60 "<<removeAllClothing>><<wearItemSet 'sissy_lingerie_pink'>>">>]
<</if>>
</div>/*#
#desc: manager congratulates your appearance after donning sissy undergarments before first days mandatory punishment
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 9)>>
<<if (setup.hasTmpEffect('sissypill') && !$npc_manager.flags.seensissypilleffect)>>
<<set $npc_manager.flags.seensissypilleffect = true>>
<</if>>
<<set $scene.sissyset = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Well, look at you, all dressed up,@@" <<=setup.getNpcName('npc_manager', 'formal')>> praises, leading you to a full length mirror next to her coat-tree. Putting her hands on your shoulders she turns you to face the mirror. Her chin almost resting on your ear as she continues. "@@.npc_manager;There, take a look for yourself.@@"<br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
You stare at your reflection, both horrified that the previous day was not some one-off freak occurrence... and also unnerved that the sight of yourself like this is not quite as unnerving as it was before... are you becoming accustomed to dressing in such ultra-feminine things? <<if $scene.strictPill && $scene.swallow || $scene.moneyPill>>Even more horrifying... you have breasts now? They're small but... you think back to the pill you just took... could they really have had such an effect this fast?<</if>><br>
<br>
<<printThought "No, that's impossible! Especially not after just two times... no, it's the stress screwing with my head...">><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> chuckles, and you wonder if she could somehow read your thoughts.
<<elseif $player.sec_style.clothing.underwear == "enthusiast">>
You almost can't believe your eyes... this isn't what you were thinking of when you asked for a female underwear requirement... it's even better! <<if $scene.strictPill && $scene.swallow || $scene.moneyPill>>Even more... you have breasts now? They're small but... you think back to the pill you just took... could they really have had such an effect so swiftly?<</if>>
<<else>>
You cannot believe your eyes, in so much disbelief you actually try to pinch your own cheek.<br>
<br>
<<printThought "Ouch!">><br>
<br>
Well, not a dream at all. Your heart races. What the hell is going on here? If someone would have told you about this... well, crazytalk is a word that comes to mind. But here you are. In these pink, frilly clothes. Wearing a pink bra made of satin and other materials you're unable to pinpoint
<<if setup.hasTmpEffect("sissypill")>>
and beneath them, your "new" A-cup breasts. Their existence alone should be enough to freak you out, but it just fades into your generalised near panic.
<<else>>
over your non existent breasts.
<</if>>
The garter serves to accentuate your already very womanly hips, while the stockings flow down your long legs like twin rivers of pink candy. The rather snug panties compress the remains of your manhood to a footnote at the bottom of your crotch, leaving almost the illusion of having nothing between the legs at all. Almost. You ponder where your normal thoughts are. Usually you'd think something like <<printThought "Oh god, this is so embarrassing!">> or <<printThought "Fuck, that is gay!">>, but nothing. Well, not exactly nothing, there are some thoughts, but you push them away, too embarrassed to even think them out loud. You try to push it all away, trying to drown it out with a mix of the Tetris title melody in a minor and a voice that tries to recite pi down to its last digit. Still, in between them there is yet a faint whisper in your mind...<br>
<br>
<<printThought "I did not know I could look this cute..." -20>>
<</if>>
<br><br>
"@@.npc_manager;Watching you watching yourself unable to form a coherent thought has its merits,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a smile, breaking your concentration, "@@.npc_manager;But it is time for us to continue with your true punishment, my dear, sweet, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>!@@"<br>
<br>
<<if $player.sec_style.clothing.underwear != "enthusiast">>
<<printThought "Wait, wearing this is not the punishment?">><br>
<br>
<</if>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_4" "Continue." 300>>]
</div>/*#
#desc: get in trouble for revealing your penis while undressing for first day's mandatory punishment
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 1)>>
<<set $scene.showpenis = true>>
<<set $npc_manager.stagevalues[1].penisincident+=1>>
<<applyExperience 'bimbofication' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<if ($player.flags.commando || setup.checkItemTypeWorn("panties")) && (setup.checkItemTypeWorn("legwear")==false) && (setup.checkItemTypeWorn("shoes")==false)>>
<<initRoom>>
<<moveTo "event_manager_mandatory_disciplinary_measure_4">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You put on a roguish smile while starting to pull down your trousers and your <<=$scene.panties>>, somehow confident in what is going to happen next.
<br><br>
<<printThought "Yeah, I can totally see where this is going.">><br>
<br>
"@@.npc_manager;Mr. <<=$player.last_name>>, whatever you are thinking is going to happen today,@@" <<=setup.getNpcName('npc_manager', 'formal')>> says, while picking up an expensive looking pen from her desk, "@@.npc_manager;I can assure you, that is not what is going to happen. Not now, not tomorrow, not in a thousand years. But I can tell you exactly what WILL happen. You are going to follow my instructions swiftly, and to the letter, or else I will make your little friend the centre of attention. I do not believe you would much like the show I will have him perform.@@"<br>
<br>
To put emphasis on the whole matter she pulverizes the pen in her hand. The sturdy-looking implement resists her grip for a moment and then shatters. Grinding her fist together the pen is broken into little shards that rain down over her desk.<br>
<br>
"@@.npc_manager_dom;Have I made myself clear <<=$player.first_name>>?@@"<br>
<br>
<<printThought "... oh... maybe I've misjudged the signs a little bit...">><br>
<br>
You put your hands in front of your privates and gulp.<br>
<br>
<<hint $options "Your manager demanded you remove some clothes.<br>You can do this by using your inventory to remove<br>worn items.">><br>
<<if $options.ezchange>>
<<set _legwear = setup.getItemFromType("legwear")>>
<<set _shoes = setup.getItemFromType("shoes")>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_3_commando" "Strip as instructed." 60 "<<if _legwear>><<removeItem _legwear true>><</if>><<if _shoes>><<removeItem _shoes true>><</if>>">>]
<</if>>
</div>/*#
#desc: spanked by manager for first day's mandatory punishment
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('bra'),setup.getItemFromType('stockings')],['sissy'])>>
<<set $scene.sissyset = true>>
<<elseif !setup.checkItemTypeWorn('shirt') && checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('bra'),setup.getItemFromType('stockings')],['female'])>>
<<applyExperience 'feminization' 8 'very' $SEEN_FRIEND>>
<<elseif !setup.checkItemTypeWorn('shirt') && checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('stockings')],['female'])>>
<<applyExperience 'feminization' 8 'very' $SEEN_FRIEND>>
<<elseif setup.checkItemTypeWorn('shirt') && checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('stockings')],['female'])>>
<<applyExperience 'feminization' 4 'normal' $SEEN_FRIEND>>
<</if>>
<<set $scene.fullsetfemaleunderwear = checkItemsTags([setup.getItemFromType('panties'),setup.getItemFromType('bra'),setup.getItemFromType('stockings')],['female'])>>
<<set $scene.underwearInspection = false>>
<<include calculateUnderwearStyle>>
<<if $scene.underwearStyle == "cute">>
<<set $npc_manager.flags.firstcuteoutfit += 1>>
<<elseif $scene.underwearStyle == "sissy">>
<<set $npc_manager.flags.firstsissyoutfit += 1>>
<<elseif $scene.underwearStyle == "cutesissy">>
<<set $npc_manager.flags.firstcuteoutfit += 1>>
<<set $npc_manager.flags.firstsissyoutfit += 1>>
<</if>>
<<applyExperience 'submission' 3 'almost' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 9 'very' $SEEN_FRIEND>>
<<if (setup.hasTmpEffect('sissypill') && !$npc_manager.flags.seensissypilleffect)>>
<<set $npc_manager.flags.seensissypilleffect = true>>
<</if>>
<<set $now to setup.advanceDate($player, $now, 'minutes', 2)>>
<<set $npc_manager.flags.first_spank = setup.getItemFromType("panties")>>
<<set $scene.hits = 1>>
<<set $scene.cum = false>>
<<if $player.flags.manager_ignored_firstrequest>>
<<set $scene.hits += 1>>
<</if>>
<<if $npc_manager.wrongfood > 0 || $scene.foodDelivery.nofood>>
<<set $scene.hits += 1>>
<</if>>
<<if $npc_manager.anger>2>>
<<set $scene.hits += 1>>
<</if>>
<<if $npc_manager.anger>3>>
<<set $scene.hits += 1>>
<</if>>
<<if $npc_manager.anger>5>>
<<set $scene.hits += 1>>
<</if>>
<<if $scene.showpenis>>
<<set $scene.hits += 2>>
<</if>>
<<if $player.flags.checkedDoor && !$npc_ai.flags.ignoredFirstDoorAccess>>
<<set $scene.hits += 1>>
<</if>>
<<if $npc_manager.flags.firstday_late>>
<<set $scene.hits += 1>>
<</if>>
<<if setup.calcErection()>>
<<set $scene.hits += 1>>
<</if>>
<<set $scene.dirty = ($currentTasks.hasOwnProperty('manager_first_morning_inspection_task') && !setup.checkTaskReason("manager_first_morning_inspection_task","clothesClean")) || ($currentTasks.hasOwnProperty('manager_first_morning_inspection_task_retry') &&!setup.checkTaskReason("manager_first_morning_inspection_task_retry","clothesClean"))>>
<<if $scene.dirty>>
<<set $scene.hits += 3>>
<</if>>
<<if $scene.sissyset>>
<<set $scene.hits += 3>>
<<elseif setup.checkItemTypeWornTag("panties","female")>>
<<set $scene.hits += 2>>
<</if>>
<<setThreshold 'bdsm' 'manager_upbringing' 'mandatory_measure'>>
<<switch $scene.hits>>
<<case 3>>
<<set $player.flags.firstDayPerfect = true>>
<<applyExperience 'bdsm' 2 'insignificant' $SEEN_FRIEND>>
<<case 4>>
<<applyExperience 'bdsm' 3 'slightly' $SEEN_FRIEND>>
<<case 5>>
<<applyExperience 'bdsm' 4 'little' $SEEN_FRIEND>>
<<case 6>>
<<applyExperience 'bdsm' 5 'almost' $SEEN_FRIEND>>
<<case 7>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<<case 8>>
<<applyExperience 'bdsm' 7 'very' $SEEN_FRIEND>>
<<case 9>>
<<applyExperience 'bdsm' 9 'terrible' $SEEN_FRIEND>>
<<default>>
<<applyExperience 'bdsm' 10 'unbelievable' $SEEN_FRIEND>>
<</switch>>
<<changeHorny 25>>
<<if setup.calcErection()>>
<<set $scene.erection = true>>
<<if $scene.hits > 3>>
<<set $scene.cum = true>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<set $player.timebased.milking.cream_supply = Math.max(0, $player.timebased.milking.cream_supply-$player.timebased.horny)>>
<</if>>
<</if>>
<<if $scene.cum>>
<<playerOrgasm>>
<<set _panties=setup.getItemFromType('panties')>>
<<if _panties!="">>
<<changeItemStatus _panties 'cumsoaked' '["set",100]'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<set _path = "./images/scenes/" + $player.skintone + "/first_spanking.jpg">>
<<showImage _path>>
<div id="invframe" class="scrolltext">
<<if $scene.sissyset>>
A huge grin spreads across <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face as she takes an uncomfortably long look at your new <<if $fetish.sissy>>sissy<<else>>girl<</if>> undergarments.<br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
"@@.npc_manager;Oh my, <<=$player.first_name>>. Adjusting so fast! I thought you were going to be a tougher nut to crack, but it seems like just a little push and that hard shell has collapsed to reveal a soft, obedient centre...@@"
<<else>>
"@@.npc_manager;Oh my, <<=$player.first_name>>. I knew this day would come. I was just expecting to wait... I do not care what they say, anticipation could not have made this any better. This might make things even more interesting.@@"
<</if>>
<br><br>
<<elseif $scene.fullsetfemaleunderwear>>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles wide. "@@.npc_manager;How wonderful. You know, when you initially made that request I was unsure if you would follow up on it. But you did — and with a bra as well! Perfection. Yes, you are shaping up to be quite the prodigy...@@"<br>
<br>
You blush, the intense validation making you squirm slightly.
<<elseif $player.sec_style.clothing.underwear == "strict">>
<<=setup.getNpcName('npc_manager', 'formal')>> chuckles in amusement. "@@.npc_manager;You know, I thought you might try to get away with things rather than follow my instructions, <<if setup.checkItemWorn("sissy_panties_pink")>>but you seem to have embraced things quite well<<else>> but instead you found even more feminine underwear... very good<<if $fetish.sissy>>, sissy<</if>><</if>>.@@"<br>
<br>
You blush, trying to come up with an excuse but nothing comes to mind.<br>
<br>
<<printThought "Am I really going along with these crazy rules so easily?">>
<<else>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> appears puzzled for a fraction of a second as you remove your shirt unbidden. But the revelation of your bra underneath puts a smile on her face, as she takes a uncomfortably long look at your female underwear.<br>
<br>
"@@.npc_manager;Oh my, <<=$player.first_name>>. I was not aware you were into such things. Panties, bra, and hosiery. You are such a naughty <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, you know?
<<if $scene.showpenis>>
This make me almost want to forget your effrontery from a moment ago, but alas it is not enough to forgive such an misdemeanour towards an superior. Oh well, your strict upbringing shall be one of my priorities in the future. Still,
<<else>>
Well, this might make the next steps after this much easier. Oh,
<</if>>
things are going to get even more interesting with you around.@@"<br>
<br>
<<printThought "Oh god. Why did I wear the bra as well? And why did I decide to show her everything? It seemed like a natural thing to do, but why? And what does it mean?">><br>
<br>
<</if>>
<<elseif setup.checkItemTypeWornTag("panties","female")>>
<<if $player.sec_style.clothing.underwear == "enthusiast">>
<<=setup.getNpcName('npc_manager', 'formal')>> smile. "@@.npc_manager;Hmm... no <<if !setup.checkItemTypeWorn("bra")>>bra<<else>>stockings<</if>>? Do be addressing that in the future. You asked for feminine underthings to be required, and <<if !setup.checkItemTypeWorn("bra")>><<if $player.body.breastsize[0] == 0>>flat or no, <</if>>a bra is<<else>>stockings are<</if>> a part of that. <<if $player.body.breastsize[0]>0>>This is particularly true given those cute breasts of yours — the girls need support!<<else>>Though if you wanted to fill out that bra, well... I would certainly not object.<</if>>@@"<br>
<br>
You blush and nod nervously, mind spinning at what all you've gotten yourself into.
<<elseif $player.sec_style.clothing.underwear == "strict">>
<<=setup.getNpcName('npc_manager', 'formal')>> chuckles in amusement. "@@.npc_manager;You know, I thought you might try to get away with things rather than follow my instructions, <<if setup.checkItemWorn("sissy_panties_pink")>>but you seem to have embraced things quite well<<else>> but instead you found even more feminine underwear... very good<<if $fetish.sissy>>, sissy<</if>><</if>>... though, it would have been better if you had chosen to wear the FULL set...@@"<br>
<br>
You blush, trying to come up with an excuse but nothing comes to mind.<br>
<br>
<<printThought "Am I really going along with these crazy rules so easily?">>
<<else>>
A huge grin appears on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face while she takes a uncomfortably long look at your panties<<if setup.checkItemTypeWornTag("stockings","female")>> and pantyhose.<<else>>.<</if>><br>
<br>
"@@.npc_manager;Oh my, <<=$player.first_name>>. I was not aware you were into such things. Very interesting, very interesting indeed.@@"<br>
<br>
<<if setup.checkVisibleClothingTag('bold') > 0>>
She pauses, her gaze practically scorching your bold lingerie.<br>
<br>
"@@.npc_manager;That said... well, this style does not really suit you, far too bold, too forward, no a <<if $fetish.sissy>>SISSI <</if>>Secretary can do much, much better than this...@@"<br>
<br>
<</if>>
<</if>>
<</if>>
<<if setup.hasTmpEffect('sissypill') && !($npc_manager.flags.cruel || $player.sec_style.clothing.underwear == "strict")>>
Her gaze slides up your body like a rising tide, finally settling on your chest, and your newly developed breasts. Suddenly you have the urge to hide them behind your hands.<br>
<br>
"@@.npc_manager;So, seeing <<if $fetish.sissy>>the word SISSI on something<<else>>something pink<</if>> is enough to make you swallow? I see someone has been curious and as we both know curiosity directed the cat into some rather kinky scenarios. We will talk about these later, now let me marvel at your breasts. Go ahead, grab them. I know you want to.@@"<br>
<br>
You grab and squeeze your breasts. The feeling is beyond anything you've ever felt before. It's like a lightning bolt went straight through your body. Your cock twitches, almost orgasming from the feeling of groping yourself.<br>
<br>
"@@.npc_manager;Feels good, doesn't it? Well, you get used to them, and sadly these are not permanent, but they will always be a lot more sensitive than natural ones, which can be a double edged sword,@@" she says while making a nipple pinching motion in the air.<br>
<br>
<</if>>
"@@.npc_manager;What are you waiting for? Come over here. It is time for you to receive your punishment. I know this is technically mandatory, but that is because you really are a naughty little
<<if $scene.fullsetfemaleunderwear || $scene.sissyset || $player.sec_style.clothing.underwear == "enthusiast">>
<<if $fetish.sissy>>SISSI<<else>>girl<</if>>,
<<else>>
boy,
<</if>>
in need of discipline. Stand in front of my desk and bend over, so I can see that sexy butt of yours.@@"<br>
<br>
Your face is forging new ground on the crimson frontier as you move to stand between <<=setup.getNpcName('npc_manager', 'formal')>> and her desk. For a moment you think to make a protest, but you know it is already too late for that. Your only option now is to follow instructions and hope she'll have mercy. You bend over like you're told to.<br>
<br>
"@@.npc_manager;It is time we start drilling some good manners into your body, and the best way... well, one of the best ways, to do this is a good old fashioned spanking!@@"<br>
<br>
<<printThought "Oh <<getWordGod>>. Is she serious? She can't be serious... she's definitely serious.">><br>
<br>
She reaches into one of the drawers of her desk and pulls out a leather paddle.<br>
<br>
"@@.npc_manager;Do not worry, this is going to hurt you a lot more than it is going to hurt me!@@"<br>
<br>
With that, <<=setup.getNpcName('npc_manager', 'formal')>> lifts the leather paddle and swings it down with a loud SMACK into your buttocks. You try your best to ignore the pain, but it stings much more than you anticipated. Your moaning gasp only seems to encourage <<=setup.getNpcName('npc_manager', 'formal')>> as the next strike already hits before you can even catch your breath.<br>
<br>
<<printThought "Ouch. Ouch. Is she... ouch... getting turned on by ouch... by this?">><br>
<br>
"@@.npc_manager_dom;THIS is for thinking you are good enough to be a <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"<br>
<br>
SMACK!<br>
<br>
<<if $scene.erection>>
You cannot, or perhaps are merely unwilling, to explain your reaction, but for some reason being here, getting your cute little butt spanked by your new Boss... it makes you incredibly hard. Your penis twitches in excitement!<br>
<br>
<<printThought "Oh <<getWordGod>>... not now!">><br>
<br>
Your ordeal does not go by unnoticed though.<br>
<br>
"@@.npc_manager_dom;So, you like this? Getting spanked turns you on, does it? Well, be my guest!@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $player.flags.manager_ignored_firstrequest == true>>
"@@.npc_manager_dom;And this is for ignoring me yesterday. Do not think I had forgotten that!@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $npc_manager.wrongfood > 0>>
"@@.npc_manager_dom;And this is for messing up my lunch break with the wrong order!@@"<br>
<br>
SMACK!<br>
<br>
<<elseif $scene.foodDelivery.noFood>>
"@@.npc_manager_dom;And this is for leaving me starving at lunch!@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $npc_manager.anger>2>>
"@@.npc_manager_dom;And this is for making me angry.@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $npc_manager.anger>3>>
"@@.npc_manager_dom;Angry again, and again and again.@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $npc_manager.anger>5>>
"@@.npc_manager_dom;Oh, I am going to so enjoy taking my revenge on your insubordination by turning you into an obedient little <<if $fetish.sissy>>SISSI <</if>>Secretary, you can be sure about that!@@"<br>
<br>
<<printThought "Wha... ouch... what's that supposed to mean?">><br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $scene.showpenis>>
"@@.npc_manager_dom;And if you ever show that sad excuse for your manhood unbidden again, be certain that the punishment will be a lot more severe!@@"<br>
<br>
<<printThought "Why did I do that?">><br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $player.flags.checkedDoor && !$npc_ai.flags.ignoredFirstDoorAccess>>
"@@.npc_manager_dom;And this is for trying to sneak into MY office without my permission.@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $npc_manager.flags.firstday_late>>
"@@.npc_manager_dom;And THIS is for coming in late, you stupid <<if $fetish.sissy>>SISSI<<else>>girl<</if>>!@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $scene.dirty>>
"@@.npc_manager_dom;And this is for being unable to follow simple instructions...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager_dom;Like washing...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager_dom;Your stupid...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager_dom;Clothes you dumb Bimbo!@@"<br>
<br>
SMACK!<br>
<br>
<</if>>
<<if $scene.commando>>
"@@.npc_manager_dom;And this is for wearing...@@"<br>
<br>
SMACK!<br>
<br>
"@@.npc_manager_dom;No underwear at all!@@"<br>
<br>
SMACK!<br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
"@@.npc_manager_dom;Even after I gave you an appropriate pair!@@"
<<else>>
"@@.npc_manager_dom;Forcing me to put you in <<if $fetish.sissy>>SISSI<<else>>girl<</if>> undergarments ahead of schedule!@@"
<</if>>
<br><br>
SMACK!<br>
<br>
<<elseif $player.sec_style.clothing.underwear == "strict">>
<<if setup.checkItemTypeWornTag("panties","female") && setup.checkItemTypeWorn("bra")>>
"@@.npc_manager_dom;And this is for being a bratty <<if $fetish.sissy>>SISSI<<else>>girl<</if>> who had to be forced into this job!@@"
<<elseif setup.checkItemTypeWornTag("panties","female")>>
"@@.npc_manager_dom;And this is for forgetting your bra!@@"
<<else>>
"@@.npc_manager_dom;And this is for repeatedly rejecting my guidance!@@"
<</if>>
<br><br>
SMACK!<br>
<br>
<<elseif $player.sec_style.clothing.underwear == "enthusiast">>
<<if setup.checkItemTypeWornTag("panties","female") && setup.checkItemTypeWorn("bra")>>
"@@.npc_manager_dom;And this is for being a too-enthusiastic for her own good <<if $fetish.sissy>>SISSI<<else>>girl<</if>>!@@"
<<elseif setup.checkItemTypeWornTag("panties","female")>>
"@@.npc_manager_dom;And this is for forgetting your bra!@@"
<<else>>
"@@.npc_manager_dom;And this is for failing to wear the underthings you requested be required!@@"
<</if>>
<br><br>
SMACK!<br>
<br>
<<elseif setup.checkItemTypeWornTag("panties","female")>>
"@@.npc_manager_dom;And this is for wearing...@@"<br>
<br>
SMACK!<br>
<br>
<<if setup.checkVisibleClothingTag('bold') > 0>>
"@@.npc_manager_dom;Brazenly lascivious female underwear, you hussy!@@"
<<else>>
"@@.npc_manager_dom;Female underwear, you <<if $fetish.sissy>>SISSI<<else>>girl<</if>>!@@"
<</if>>
<br><br>
SMACK!<br>
<br>
<<if $player.flags.firstDayPerfect>>
The final blow echoes for a moment and you swear you heard <<=setup.getNpcName('npc_manager', 'formal')>> whisper a single word to herself "@@.npc_manager;Perfect...@@"
<</if>>
<</if>>
<<if $scene.hits < 3>>
ERROR : unexpected
<<elseif $player.flags.firstDayPerfect>>
You moan, but manage to suck it up after a while.
<<if $scene.erection>>
Feeling the paddle smacking down on your exposed butt again and again, has left you with an erection.
<</if>>
Finally the spanking stops, your buttocks a bright, even red. You think you'll be able to cope with the pain.
<<elseif $scene.hits < 7>>
Your moaning turns into whimpers and you start pleading for mercy, but your begging falls on deaf ears.
<<if $scene.cum>>
Feeling the paddle smacking down on your exposed butt again and again, you feel your penis stiffens like it never has before. In a moment of pleasure and agony you cream <<if setup.checkItemTypeWornTag("panties","female")>>your panties<<elseif setup.checkItemTypeWorn("panties")>>your boxer shorts<<else>>yourself<</if>>, which only accentuates your humiliation.<br>
<br>
<<printThought "Am I getting turned on by this?">><br>
<br>
<</if>>
You can feel the cum <<if setup.checkItemTypeWorn("panties")>>seep through the fabric of your underwear,<<else>>flow<</if>> down your legs and onto the table. As you catch your breath the spanking stops. You think you may have some problems sitting the next few days.
<<else>>
Unable to cope the pain of the seemingly unending spanking you start crying and beg for mercy. Her arm never tires as she ignores your pleas and continues to chastise you in between each blow.
<<if $scene.cum>>
The paddle smacking down on your butt mercilessly you feel as your penis becomes harder than ever before. In a moment of simultaneous intense pleasure and antagonized agony you have an mind shattering orgasm and spray your load<<if setup.checkItemTypeWornTag("panties","female")>> in your panties<<elseif setup.checkItemTypeWorn("panties")>> in your boxershorts<</if>>. Panting in sensory overload you wallow in the humiliation.<br>
<br>
<<printThought "Oh god, why am I getting so turned on by this!">><br>
<br>
<</if>>
You can feel the cum flow through the fabric of your underwear, down your legs and onto the desk. After an uncertain amount of time, but which feels like an eternity, the spanking finally stops. The office is left with only the sound of your unstoppable sobbing.
<</if>>
<br><br>
<<if $scene.cum>>
<<=setup.getNpcName('npc_manager', 'formal')>> notices the mess you made <<if setup.checkItemTypeWornTag("panties","female")>>in your panties <<elseif setup.checkItemTypeWorn("panties")>>in your boxer shorts <<else>><</if>>and smiles.<br>
<br>
"@@.npc_manager;Oh my, you are a natural born submissive <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. Seems like the both of us enjoyed this a little too much. Make sure these are clean by tomorrow morning again!@@"<br>
<br>
<</if>>
<<if State.hasPlayed("event_manager_mandatory_disciplinary_measure_2_enthusiast") || setup.getTotalValue("submission") >= 5>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_5" "Thank her for the punishment." 900 "<<set $scene.thank=true>>">>]<br>
<<else>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_5" "Thank her for the punishment." 600 "<<set $scene.thank=true>><<spendWillpower 1>>">>] <<hint $options "Showing such submission will require and expenditure of will">><br>
<<else>>
[@@.link_locked;You aren't going to pretend like you're some sort of submissive and express gratitude for this punishment.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_5" "Continue." 900 "<<set $scene.thank=false>>">>]
</div>/*#
#desc: recovery from first day mandatory spanking, ordered to get dressed
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.thank>>
<<applyExperience 'submission' 10 'very' $SEEN_STRANGER>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<</if>>
<</if>>
<<if setup.checkPlayerDressed()>>
<<initRoom>>
<<moveTo "event_manager_mandatory_disciplinary_measure_6">>
<</if>>
<<if setup.isBodySlotVisible('penis') || setup.isBodySlotVisible('crotch')>>
<<initRoom>>
<<moveTo 'event_manager_mandatory_disciplinary_measure_5_penis'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.thank>>
You're still a bit breathless from the paddling as you obediently thank <<=setup.getNpcName('npc_manager', 'formal')>> for taking the time to discipline you.<br>
<br>
You catch a smile of approval flicker across <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face as she
<<else>>
It takes you a while, but you manage to somewhat recover from the pain of the spanking while <<=setup.getNpcName('npc_manager', 'formal')>>
<</if>>
cleans the paddle and puts it back into the drawer.<br>
<br>
"@@.npc_manager;<<if $scene.thank>>Someone is really looking to earn the proverbial gold star today... <</if>>Would you please put your clothes back on, <<=$player.first_name>>, before we discuss any further steps? Thank you.@@"<br>
<br>
<<if $scene.cum>>
Her gaze turning towards the mess on the front of her desk she frowns.<br>
<br>
"@@.npc_manager;What a mess you seem to have made, normally I would have you attend to it, but I think this has been enough for you, especially on your first day. I am sure the maid will appreciate it, in any case. Be more tidy in the future.@@"<br>
<br>
<<printThought "Wait, maid, appreciate, what?">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_6_lick_cum" "Ask to lick <<his npc_manager>> hand clean..." 60 >>] <<hint $options "Such a brazen act would take an effort of will...">><br>
<</if>>
<</if>>
<<if $options.ezchange>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_6" "Get dressed as instructed." 60 "<<useClothSetPop 'tmp' true>>">>]
<<else>>
<<hint $options "You can use the Inventory to put your clothes back on manually.">>
<</if>>
</div>/*#
#desc: recovery from first day mandatory spanking, ask to lick up cum
#status: RELEASED 0.9.4.0
#ignore_spell: submiss
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'cum' 'secretary_cum' 'cum_ask'>>
<<if !$player.sec_style.sex.drink_cum>>
<<set $player.sec_style.sex.drink_cum = "enthusiast">>
<</if>>
<<applyExperience 'cum' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You don't know exactly what came over you... but whatever streak of boldness it is, you ask <<=setup.getNpcName('npc_manager', 'formal')>> if you could lick her hand clean.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> pauses and raises an eyebrow... for a moment you're afraid she's going to slap you instead for such a brazen, humiliating request... but her lips split into a smile. "@@.npc_manager;My, my. You file did not state that you were an inveterate cum-slut... by all means, attend to your... mess.@@"<br>
<br>
She extends her hand and you shudder submissively. How can this be reality? How can your life have gone from normal guy doing a boring office job... to a day later being a <<if $fetish.sissy>>SISSI <</if>>Secretary licking <<if $player.sec_style.body.identify_fem>>HER<<else>>his<</if>> cum off of <<if $player.sec_style.body.identify_fem>>her<<else>>his<</if>> manager's fingers...<br>
<br>
You look up at <<=setup.getNpcName('npc_manager', 'formal')>> and feel like she knows EXACTLY what you're thinking as you go from merely licking the salty, sticky stuff off her hand... to her fingers sliding past your lips for you to suck on.<br>
<br>
"@@.npc_manager;So eager... you really were meant for this. To be my submiss—, I mean, my subordinate <<if $fetish.sissy>>SISSI <</if>>servant...@@"<br>
<br>
You moan, almost falling forward as she finally withdraws her hand, your lips still parted, brain too fried to understand quite what just happened... but knowing that you want more of it.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, using your clothes to dry her hand of the last traces of your saliva before handing them to you. "@@.npc_manager;NOW, you can get dressed.@@"<br>
<br>
<<printThought "<<getWordGod>> this... her... what's happening to me... and how can I have it happen more?">><br>
<br>
<<hint $options "You can use the Inventory to put your clothes back on manually.">><br>
<<if $options.ezchange>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_6" "Get dressed as instructed." 60 "<<useClothSetPop 'tmp' true>>">>]
<</if>>
</div>/*#
#desc: recover from first day's mandatory punishment with penis out
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $npc_manager.stagevalues[1].penisincident +=1>>
<<applyExperience 'bimbofication' 8 'very' $SEEN_FRIEND>>
<<set $now = setup.advanceDate($player, $now, 'minutes', 3)>>
<</if>>
<<if setup.checkPlayerDressed()>>
<<initRoom>>
<<moveTo "event_manager_mandatory_disciplinary_measure_6">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.cum>>
Despite having cum all over the front of her desk your
<<else>>
Your
<</if>>
penis
<<if setup.checkItemTypeWorn("cage")>>
continues to strain in its prison. Catching sight of it <<=ps(setup.getNpcName('npc_manager', 'formal'))>> satisfied smile shifts to one of amusement.<br>
<br>
"@@.npc_manager;See what lovely benefits chastity can provide? Yes, it is keeping you QUITE contained.@@"
<<else>>
remains hard, straining out from your body with embarrassing excitement at the spanking you just endured. Catching sight of it <<=ps(setup.getNpcName('npc_manager', 'formal'))>> satisfied smile shifts to one of amusement.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>, please. Do not make me laugh, and put your clothes back on. I do not care how excited you are, if I ever have to see this again, there will be another disciplinary measure. And I will make sure to think of something very... special, just for you.@@"
<</if>>
<br><br>
<<hint $options "You can use the Inventory to put your clothes back on manually.">><br>
<<if $options.ezchange>>
[<<moveTo "event_manager_mandatory_disciplinary_measure_6" "Get dressed as instructed." 60 "<<useClothSetPop 'tmp' true>>">>]
<</if>>
</div>/*#
#desc: end of first day, women's underwear added to work dress code
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $now = setup.advanceDate($player, $now, 'minutes', 1)>>
<<set $player.flags.commando = false>>
<<addEvent 'washing_machine_repair'>>
<<if $currentTasks.hasOwnProperty('manager_first_morning_inspection_task_retry')>>
<<deleteTask 'manager_first_morning_inspection_task_retry'>>
<</if>>
<<if $currentTasks.hasOwnProperty('manager_first_morning_inspection_task')>>
<<deleteTask 'manager_first_morning_inspection_task'>>
<</if>>
<<include initializeWorkEvents>>
<<if $npc_manager.stagevalues[1].enthusiastchastity && $player.sec_style.submission.permanent_key == "">>
<<set _cage = setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<addItem _keyId>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.clothing.underwear == "enthusiast">>
"@@.npc_manager;Very good. Now, normally I endeavour to pair a disciplinary punishment with a path to improvement, one might consider it a sort of homework... but, in your case, well...@@" She smiles. "@@.npc_manager;You are already ahead of the curve<<if $scene.fullsetfemaleunderwear>>, well, in theory<</if>>, so I shall merely re-iterate the requirement that you wear a full set of feminine underthings at all times when you are at work — that means stockings, bra, and panties. Garters I leave to your discretion.@@"<br>
<br>
You gulp nervously, your bottom still stinging and your head still reeling at the full enormity of this new job... well, perhaps "new" describes more than merely a job.
<<else>>
"@@.npc_manager;Very good. You are such a good little
<<if $scene.fullsetfemaleunderwear || $scene.sissyset>>
<<if $fetish.sissy>>SISSI<<else>>girl<</if>>,
<<else>>
boy,
<</if>>
aren't you? Well, let us move on with the agenda, shall we? After all, we are not done quite yet. For you see, a disciplinary measure consists of two parts. Well, mine do. At least when it comes to you. The first part was what you've just experienced. The second part is a bit different, more like homework, I suppose.<<if setup.checkItemTypeWornTag("panties","female")>> Well, less work than staying the course in your case.<</if>>@@"<br>
<br>
<<printThought "There's more?">><br>
<br>
<<if $player.sec_style.clothing.underwear == "strict">>
<<if $scene.fullsetfemaleunderwear>>
"@@.npc_manager;While you managed to perform appropriately I want to re-iterate, officially, that your acceptable dress code will mandate women's underwear. That hardly seems like it will be a problem for you, now, will it, but I wanted to re-iterate things, now that you have a better understanding of just how diligent I am at keeping my employees in line.@@"
<<else>>
"@@.npc_manager;It would seem that you failed to take to heart my instructions yesterday. And, on the one hand... I understand. Losing your job, getting a new one, not to mention that disturbing outburst... well, you were clearly not in a proper state of mind. Still, rules are rules, and I want you to be crystal clear in your understanding that your dress code mandates women's underwear. Continued failure in this regard, well... I will leave that to what is certainly your active imagination.@@"
<</if>>
<<else>>
<<if $scene.fullsetfemaleunderwear>>
"@@.npc_manager;Effective tomorrow I am amending your acceptable dress code to mandate women's underwear. That hardly seems like it will be a problem for you, now, will it?@@"
<<else>>
"@@.npc_manager;Effective tomorrow I am amending your acceptable dress code to mandate women's underwear.@@"
<</if>>
<</if>>
<br><br>
<<printThought "What!?">><br>
<br>
"@@.npc_manager;Do not look at me like that. In a way, this is doing you a favour, as they are much more comfortable than their male equivalents. The main purpose, for you, is that wearing such garments, even if it is only known to you and myself, should train you in the art of humility.
<<if $npc_manager.stagevalues[1].penisincident>0>>
And seeing that you showed me the remains of your masculinity unwantedly and without my consent, you indeed seem to be in dire need of humility.
<</if>>
I will leave it to your discretion to decide what kind of underwear you will wear,
<<if $scene.sissyset>>
but it should be restrained and modest. Well, that was my original thought, but I think you deserve the right to be a little more... playful. You are welcome to try something more cute if you want to. Or you can wear the items I gave you...
<<else>>
but it should be restrained and modest. Just like I want you to be.
<<if setup.checkVisibleClothingTag('bold') > 0>>
Today's selection was well... too brazen, I would prefer it if you found something more subdued.
<</if>>
<</if>>
I realise this is perhaps a bit more thought than you have put into such matters in the past... but it will be good practice for you.@@"<br>
<br>
"@@.npc_manager;Perhaps most important — it should be a full set. Panties, bra, and hosiery under your regular work outfit, matching if you can pull it off. I will check if you are meeting these requirements every morning at the same time I verify if your clothing is in top notch condition.@@"<br>
<br>
She lowers her glasses and looks directly into your eyes. Your fight or flight instinct is running wild, leaning towards the latter, but you somehow manage to stand still.
<</if>>
<br><br>
"@@.npc_manager_dom;And just as a friendly reminder. The non-disclosure agreement in the contract you have signed covers everything concerning disciplinary measures, what they are, whether you got them, why, and everything else related to them.@@"<br>
<br>
She readjusts her glasses, her usual collected countenance re-asserting itself.<br>
<br>
<<if $scene.commando>>
"@@.npc_manager;One final thing, before you leave, <<=$player.first_name>>. If I ever catch you without underwear again, trust me, the next solution for this problem will be a more permanent one. Did I make myself clear?@@"<br>
<br>
You gulp and nod.<br>
<br>
<<printThought "I think I'll renounce going commando for the time being...">>
<<else>>
"@@.npc_manager;One final clarification — your new underwear requirements means wearing such — going without any underwear at all? Well, that would be QUITE improper for a representative position such as your own.@@"<br>
<br>
You gulp and nod.<br>
<br>
<<printThought "I get the feeling that she's not the type to allow for, or appreciate, loop-holes.">>
<</if>>
<br><br>
<<if $npc_manager.stagevalues[1].enthusiastchastity && $player.sec_style.submission.permanent_key == "">>
She graces you with a smile, as if daring you to say something in response. You don't, and she hands you a key.<br>
<br>
"@@.npc_manager;That will unlock your chastity device — if you are a good employee you will get it at the end of each day, if not, well...@@" She lets her voice trail off with a devilish twinkle in her eye.
<</if>>
"@@.npc_manager;Well, that will be all for today. Thank you for your work and have a pleasant evening.@@"<br>
<br>
<<if $npc_manager.flags.cruel == 0>>
[<<moveTo "event_first_workday_cruel_1" "Ask if she could consistently treat you harshly..." 180>>]<br>
<</if>>
[<<moveTo "event_coworker_sexdoll_0" "Leave the office." 120>>]
</div>/*#
#desc: leave fem clothing behind first day
#status: FINISHED 0.7.11.0
#ignore_spell: who'da
#*/
<<set $player.location to "Wardrobe">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bra = setup.getItemFromType('bra')>>
<<if !["voluntary", "enthusiast"].includes($player.sec_style.clothing.underwear) && $scene.bra != "">>
<<removeItem $scene.bra true>>
<<itemToWardrobe $scene.bra>>
<<set $scene.tossItems = true>>
<</if>>
<<if setup.checkItemInInventory('satin_blouse_white')>>
<<itemToWardrobe 'satin_blouse_white'>>
<<set $scene.tossItems = true>>
<</if>>
<<if setup.checkItemInInventory('skirt_black')>>
<<itemToWardrobe 'skirt_black'>>
<<set $scene.tossItems = true>>
<</if>>
<<if setup.checkItemInInventory('cotton_bra') && !setup.checkItemWorn("cotton_bra")>>
<<itemToWardrobe 'cotton_bra'>>
<<set $scene.tossItems = true>>
<</if>>
<<if setup.checkItemInInventory('pantyhose_black') && !setup.checkItemWorn("pantyhose_black")>>
<<itemToWardrobe 'pantyhose_black'>>
<<set $scene.tossItems = true>>
<</if>>
<<if setup.checkItemInInventory('cotton_panties') && !setup.checkItemWorn("cotton_panties")>>
<<itemToWardrobe 'cotton_panties'>>
<<set $scene.tossItems = true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_wardrobe.png">>
<div id="invframe" class="scrolltext">
<<if $scene.bra != "">>
<<if ["voluntary", "enthusiast"].includes($player.sec_style.clothing.underwear)>>
You're about to leave when you realise that you didn't just put on your ex-gf's panties, but her bra, too.<br>
<br>
<<if setup.checkItemTagWorn("breastform")>>
<<printThought "Huh... a bra really makes these falsies more comfortable, who'da thunk?">>
<<else>>
<<printThought "Huh... it doesn't really have anything to support, but it's kind of comfortable? I guess I can leave it on, after all, nobody will know.">>
<</if>>
<<else>>
<<printThought "Wait... why am I wearing a bra? That's silly.">><br>
<br>
You remove the <<=setup.getItemName($scene.bra)>> and throw it in the wardrobe, still confused what you were thinking in putting it on.
<</if>>
<br><br>
<</if>>
<<if $scene.tossItems>>
You're about to leave when you realise that you're still carrying around some of <<=ps(setup.getNpcName("npc_exgirlfriend","first"))>> clothing.<br>
<br>
<<printThought "That's silly, what use would I have for carrying around women's clothing? I need to focus on my new job and not lug things things around for no reason.">><br>
<br>
You toss the lot into the wardrobe and hurry on your way.<br>
<br>
<</if>>
[<<moveTo "room_citymap" "Head into town." 240>>]<br>
</div>/*#
#desc: end of first day, women's underwear added to work dress code
#status: RELEASED 0.8.7.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Maybe it's the endorphins, maybe it's the stress of the last twenty-four hours... or maybe it's just the power of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> presence and authority... but you blurt out that you need her to keep you in line.<br>
<br>
If she was surprised by your request the shock lasts for but a second as she turns, smiling as she steps closer, your heart racing as her fingers trace up your chest... and then her hand is wrapped around your throat. "@@.npc_manager;My, my. Punishment is supposed to merely bring you into line... but in your case it appears to have unlocked something. A longing... no, a need, is that it? A realisation that your days of freedom and self-direction have brought you to the brink of ruin, and the only solution is harsh treatment from a harsh Mistress... is that it?@@"<br>
<br>
She squeezes ever so slightly and you gurgle, feeling not just utterly helpless... but rock-hard with excitement <<if setup.checkItemTypeTag('panties', ['female'])>>within your <<if $scene.commando>>new <</if>>panties<<else>>under your clothes<</if>>.<br>
<br>
<<printThought "Is this what I want? For her to show me not the slightest of mercies?">><br>
<br>
Your hesitation causes her to relax her grip ever-so-slightly and you take a quick breath. "@@.npc_manager;If it proves too much, well... you can always ask me to stop in the future... but only if you have shown that I can trust letting my boot off of your neck...@@"<br>
<br>
[<<moveTo "event_first_workday_cruel_2" "Yes, you need her to treat you with cruelty." 180 "<<set $scene.cruel=true>>">>] <<hint $options "Warning: This will enable cruel manager mode — you will have to prove yourself to her for her to again consider treating you kindly.">><br>
[<<moveTo "event_first_workday_cruel_2" "Actually... that sounds like a bit much..." 180 "<<set $scene.cruel=false>>">>]
</div>/*#
#desc: end of first day, women's underwear added to work dress code
#status: RELEASED 0.8.7.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cruel>>
<<set $npc_manager.flags.cruel = 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.cruel>>
You don't trust your voice and so you merely nod, prompting a wide, cruel grin from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;Oh, you are going to be FUN.@@"<br>
<br>
She releases her hold on your neck and you almost fall to the ground, all but enthralled by her power.<br>
<br>
"@@.npc_manager;Run along, my dear. You have an exciting new career ahead of you... and I just cannot wait for what comes next.@@"<br>
<br>
You're still trying to think of why you just did what you did as you beat
<<else>>
You have second thoughts and shake your head nervously. <<=setup.getNpcName('npc_manager', 'formal')>> smiles, seemingly more amused than disappointed. "@@.npc_manager;Well, should you ever change your mind... my door is, as always, open...@@"<br>
<br>
She releases her hold on your neck and you catch your breath before beating
<</if>>
a hasty retreat from the office, feeling as if <<=ps(setup.getNpcName("npc_manager", "formal"))>> gaze remains upon you even after the heavy door closes behind you.
<br><br>
[<<moveTo "event_coworker_sexdoll_0" "Leave the office." 120>>]
</div>/*#
#desc: check to see if you're wearing any of the sissy underwear set
#status: FINISHED 0.4.0.0
#*/
/% note : this only checks if you're wearing all of it at the same time, it won't notice if you wear each piece on different days because that seems overly annoying %/
<<if !$npc_manager.flags.good_girl.seen_partial_sissy_set>>
<<if !$npc_manager.flags.good_girl.seen_full_sissy_set>>
<<if setup.isItemEquipped("sissy_panties_pink") && setup.isItemEquipped("sissy_bra_pink") && setup.isItemEquipped("sissy_garter_pink") && setup.isItemEquipped("sissy_stockings_pink")>>
<<set $npc_manager.flags.good_girl.seen_full_sissy_set = true>>
<<set $npc_manager.flags.good_girl.seen_partial_sissy_set = true>>
<</if>>
<</if>>
<<else>>
<<if setup.isItemEquipped("sissy_panties_pink") || setup.isItemEquipped("sissy_bra_pink") || setup.isItemEquipped("sissy_garter_pink") || setup.isItemEquipped("sissy_stockings_pink")>>
<<set $npc_manager.flags.good_girl.seen_partial_sissy_set = true>>
<</if>>
<</if>><<set $scene.at_desk = $scene.beforetasklocation && (["room_office_sissy_secretary_work_morning_start", "room_office_sissy_secretary", "room_office_sissy_secretary_work_morning_work", "room_office_sissy_secretary_work_morning_early", "event_work_stage4_ride", "room_office_sissy_secretary_work_afternoon_work", "room_office_sissy_secretary_work_morning_work", "room_office_sissy_secretary_work_afternoon_start", "room_office_sissy_secretary_work_evening"].includes($scene.beforetasklocation.last()) || setup.inPassageTag($scene.beforetasklocation.last(), 'office'))>>
<<set $scene.at_office = $scene.at_office || $scene.at_desk>>
<<set $scene.elevator = $scene.beforetasklocation && setup.inPassageTag($scene.beforetasklocation.last(),"elevator")>>/*#
#desc: start work; manager calls if you're late, or invites you for morning inspection if you're on time/early
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcAtOffice">>
<<if !$scene.at_office>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $npc_manager.criticalanger+=1>>
<<set $scene.stressStuck = $player.timebased.stress >= 75 && setup.getWillpower() == 0 || $player.timebased.stress >= 90 && setup.getWillpower() <= 1>>
<<if $scene.stressStuck && $npc_manager.criticalanger > 0 && $npc_manager.criticalanger <= 2>>
<<gainWillpower 1>>
<</if>>
<<applyStress 20>>
<<set $currentcall = true>>
<<else>>
<<set $currentTasks.manager_morning_inspection_task.condition="">>
<<set $scene.taskComplete = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<set $scene.frisky = false>>
<<set $scene.manual = true>>
<<set $scene.unisexclothes = -1>>
<<set $npc_manager.stagevalues[1].penisincident = 0>>
<<set $scene.score = 0>>
<<set $scene.extrascore = 0>>
<<set $scene.voluntary_unisex = false>>
<<include "inspectionData_gasmask">>
<<useClothSetPush 'daily_evaluation_clothes'>>
<<set $scene.sissypilleffects = false>>
<<if (setup.hasTmpEffect('sissypill') && !$npc_manager.flags.seensissypilleffect)>>
<<set $npc_manager.flags.seensissypilleffect = true>>
<<set $scene.sissypilleffects = true>>
<</if>>
<<include checkSissyUnderwear>>
<<include inspectionData_underwear>>
<<include inspectionData_clothes>>
<<if !$npc_manager.stagevalues[1].unisexsecretary && $scene.gender == 'unisex'>>
<<set $scene.voluntary_unisex = true>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
<<set $scene.unisexclothes = setup.checkTaskReason('manager_morning_inspection_task','clothing')>>
<</if>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<storeVisual $player $npc_manager>>
<<if $player.work.startTime == 0>>
<<set $player.work.startTime = $now>>
<</if>>
<<if $player.work.startTime.getUTCHours() == 8 && $player.work.startTime.getUTCMinutes() == 0 && !$scene.workEarly>>
<<set $scene.preciselyOnTime = true>>
<</if>>
<<include inspectionData_cleanClothes>>
<<include inspectionData_cleanBody>>
<<completeTask 'manager_morning_inspection_task' $now $scene.taskComplete>>
<<if setup.isItemEquipped('shirt_stained') && !$npc_manager.flags.spill_event>>
<<set $npc_manager.criticalanger+=1>>
<<set $scene.score=0>>
<<applyStress 10>>
<</if>>
<</if>>
<<set $scene.pinkODfirst = !$npc_manager.flags.seenMkOneOD && $player.hair.style == 'long_open' && $player.hair.color == 'blonde' && $player.flags.pink_pill.times_od1 > 0 && setup.hasTmpEffect('sissypill_mk2_od')>>
<<if $scene.pinkODfirst>>
<<set $npc_manager.flags.seenMkOneOD = true>>
<</if>>
<</if>>
<<if $scene.at_office>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location = "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.at_office>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.at_office>>
<<if $scene.pinkODfirst>>
<<=setup.getNpcName("npc_manager","formal")>> walks out of her inner office and stops short the instant she lays eyes on you. "@@.npc_manager;What the...@@" you brace for a rebuke, but her smile is one of mild amusement as she shakes her head. "@@.npc_manager;How many pills did you take?@@"<br>
<br>
You blush and reply that you only took two and she nods knowingly.<br>
<br>
"@@.npc_manager;Two... you mean double the prescribed dose? And with you seemingly so naturally susceptible... well, I cannot say I dislike the results. Your hair is stunning, a golden treasure some women would kill for and your breasts... <<if setup.getEffectiveBreastSize() == 6>>well, they seem to perfectly balance out your womanly hips<<elseif setup.getEffectiveBreastSize() > 6>>well, they are a little large for your frame, but I think it works<<elseif setup.getEffectiveBreastSize() == 0>>well... it's a bit of a surprise really, I would have anticipated them to develop along with that hair, but I suppose going off label can have unexpected results<<else>>well, to be honest, they are a little smaller than I might have expected, but I am sure they will fill out in time.<</if>>.@@"<br>
<br>
She walks closer and takes a more serious tone. "@@.npc_manager;Now, though I am not angry with you, I want you to promise to take more care in the future — as you have seen those pills are quite potent and I do not want you inviting disaster by taking too many or mixing them with alcohol or anything. With that warning out of the way, shall we continue on to normal business?@@"<br>
<br>
You nod, unsure if her warning was an actual order or a sly invitation...
<<elseif $scene.preciselyOnTime>>
As you rush in the door of the office, you find <<=setup.getNpcName('npc_manager', 'formal')>> standing with phone in hand. Slowly checking the time she stares at you for a moment and then nods.<br>
<br>
"@@.npc_manager;<<if $options.militaryTime>>8:00<<else>>Eight o'clock<</if>> on the nose... A good secretary would aim to be early to set herself up for a more productive day, but you did walk through the door on time... technically.@@"
<<elseif $scene.fromUnisex>>
You nervously enter the office to find <<=setup.getNpcName('npc_manager', 'formal')>> already waiting for you.<br>
<br>
"@@.npc_manager;Loitering in the lobby? There really is no sense in coming in early and not heading straight for your desk. I do not pay you to hang out downstairs.@@"
<<else>>
You prepare for your workday by getting all your office utensils in order, booting up your laptop and getting a nice, big cup of hot, steamy coffee. Ah, hot caffeinated liquid is what really starts your day! Dead on the hour, <<=setup.getNpcName('npc_manager', 'formal')>> appears in the doorway of her office.
<</if>>
<br><br>
<<include "inspectionText_gasmask">>
<<if $scene.voluntary_unisex>>
<<include inspectionText_cleanBody>>
<<if setup.isItemEquipped("shirt_female_office_teal") && setup.isItemEquipped("trousers_female_office_grey")>>
She smiles at you.<br>
<br>
"@@.npc_manager;How lovely, I am so glad you have embraced the new look we discovered for you yesterday, it really is so much nicer. In fact... I think it would be best you dressed like this all the time. Yes, this is far better than those dull old guy clothes. Now then, if you would follow me for the rest of your inspection?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_1" "Follow her.">>]
<<else>>
She pauses, her gaze moving across you as a smile blossoms on her face.<br>
<br>
"@@.npc_manager;Oh my, turn around, I want a full view of this new outfit.@@"<br>
<br>
[<<moveTo "event_morning_inspection_unisex_1" "Turn around.">>]
<</if>>
<<elseif setup.isItemEquipped('shirt_stained') && (!$npc_manager.flags.spill_event || $player.sec_style.clothing.unisex)>>
<<if $npc_manager.criticalanger < 5>>
Taking a glance at your stained shirt she shakes her head and points towards the exit.<br>
<br>
"@@.npc_manager;Out! I cannot fathom why you brought out that horrid thing, but I have neither the time nor the patience to deal with it. Get out of my sight, spend the day meditating on whether you actually are willing to perform your duties and come back <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>> dressed clean and proper and with your head screwed on right.I will note that this marks your <<printNumber $npc_manager.criticalanger>> offense. Reach five and your employment will be at an end.@@"<br>
<br>
<<set _x = setup.addManagerEndlessTask()>>
[<<moveTo "company_lobby" "Leave work." 60 "<<set $player.work.sendhome=true>><<set $player.work.sendhomedate = $now>>">>]
<<else>>
She silently fumes for a moment as she glares at your stained attire and then points towards the door. "@@.npc_manager;Get out of my sight. I have given you chance and chance again and still you make the most pathetic failures. I am done, as is your employment here, now leave and never darken my doorway again.@@"<br>
<br>
[<<moveTo 'gameover_grue' "Leave." 0>>]
<</if>>
<<elseif $npc_manager.stagevalues[1].unisexsecretary && $scene.gender == "male" && $scene.formal != "casual">>
<<set $scene.seriousoffense = true>>
<<include inspectionText_cleanBody>>
"@@.npc_manager;Moving on, this outfit...@@" she lets out a disapproving hiss. "@@.npc_manager;What did I tell you? That I never want to see a single thread of masculine attire upon your lovely body ever again. <<if setup.calcBreastSize() != "none">>I do not care if you have a lovely pair of tits, it does not cancel out the clearly un-feminine cut of what you are wearing.<<else>>Maybe if you had some breasts to lend some shape to your upper body... no, on second thought, not even that could salvage such disgustingly masculine clothing.<</if>> As you remain new we shall go through the rest of your inspection for you own edification, but this attire? Well, it is utterly unbecoming, and unacceptable in this office.@@"<br>
<br>
You are frozen in fear, but further punishment does not appear to be coming even as she finally continues with impatience. "@@.npc_manager;Well? We still need to attend to the rest of your inspection, show me your underwear — and for your sake I pray that you have not screwed THAT up.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_1" "Follow her.">>]
<<elseif $scene.clothes == "male_casual">>
Her gaze moves over your casual clothing as her frown deepens. "@@.npc_manager;No, no, no... this will not do at ALL. I have explained that you work in a representative position — and that means there are certain standards of presentability that you must adhere to. This outfit is inappropriate for any sort of professional work, much less one where their neat appearance is a key part of the job description.@@"<br>
<br>
You gulp nervously "@@.npc_manager;Follow. We must attend to this matter with maximal haste.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit" "Follow her." 180 "<<set $scene.initialCasual=true>>">>]
<<else>>
<<if !$scene.fromUnisex && !$scene.preciselyOnTime && !$scene.pinkODfirst>>
Seeing you <<if $scene.preciselyOnTime>>in the doorway<<else>>sitting at your desk<</if>> makes her smile.
<<if setup.getTotalValue('submission')>3>>
You remember her words...<br>
<br>
<<printThought "Punctuality is one of the pillars of society.">><br>
<br>
You are startled at how easily her principle came to mind.<br>
<br>
<<printThought "Is her influence over me growing this fast?">>
<<else>>
You try to recall her principle...<br>
<br>
<<printThought "Punctuality is a pillar? Something like that.">>
<</if>>
<br><br>
<</if>>
<<include inspectionText_cleanBody>>
<<if $scene.clothes == "unisex_casual">>
She glances over your attire and shakes her head. "@@.npc_manager;Casual attire? No, no... this is an office and I expect my employees to dress to a certain standard. You work in a representative position, after all. I will allow it for today since you have at least managed an appropriately de-masculinised style, but I would much prefer it if you found something of a more office-appropriate nature.@@"<br>
<br>
<</if>>
<<if $scene.compareVisuals!="">>
"@@.npc_manager;<<=$player.first_name>>, follow me into my... hmm... there is something different about you,
<<if $scene.clothes == 'male_casual'>>
besides your lack of proper attire
<</if>>
... <<=$scene.compareVisuals>> Anyway, please follow me into my office, so we can discuss your progress with the tasks I have assigned you recently.@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>>, follow me into my office, so we can discuss your progress with the tasks I have assigned you recently.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_1_1" "Follow her." 60>>]
<</if>>
<<else>>
You get a phone call. It is from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to it being <<if $options.militaryTime>>8:00<<else>>eight o'clock<</if>> and you not being in the office yet.<br>
<br>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>! Where the hell are you? Do you have any idea what time it is? Apparently not, because if knew how to read a clock you would be sitting at your workstation right now.@@"<br>
<br>
She calms down quickly after her initial outburst, a faint comfort. As you have already figured out, the calm after the storm is more often a lot more terrifying then the storm itself.<br>
<br>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. No, do not bother coming in today. Punctuality is a pillar of society and if you cannot uphold such well... you are useless to me as a secretary. Spend the day resting and doing whatever it takes so that this tardiness does not re-occur.@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>> I am so disappointed in you. Unfortunately you have utterly failed in your duties for the last time. Consider your contract terminated!@@"
<</if>>
<br><br>
She hangs up.<br>
<br>
<<if $npc_manager.criticalanger >= 5>>
[<<moveTo 'gameover_grue' "Hang up." 0>>]
<<else>>
<<if $scene.stressStuck>>
<<printThought "On top of everything else... I really need to do something about my stress, maybe if I talked to my therapist or played some games... or I wonder if I could just slack off at work a bit? Surely <<=setup.getNpcName('npc_manager', 'formal')>> would be less angry with that than if I completely no-showed again?">><br>
<br>
<</if>>
<<if $scene.beforetasklocation.last() == "room_dreams">>
[<<moveTo "room_wake_up" "Hang up." 1 "<<set $currentcall = false>>">>]
<<else>>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: phase 1 - strip for morning inspection
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set _noPanties = false>>
<<set _changedOutfit = false>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if ($scene.bra != setup.getItemFromType("bra")) || ($scene.panties != setup.getItemFromType("panties")) || ($scene.stockings != setup.getItemFromType("stockings"))>>
<<set _changedOutfit = true>>
<<elseif (setup.isBodySlotVisible('penis'))>>
<<set _noPanties = true>>
<<set $scene.frisky = true>>
<<set $npc_manager.stagevalues[1].penisincident +=1>>
<<elseif $scene.frisky && (setup.checkWornListSpecific(["panties","stockings"]) || setup.checkWornListSpecific(["panties","stockings","bra"]))>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_1_2">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if _noPanties>>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously? Put your underwear back on! Unless you would like your little <<if $fetish.sissy>>sissy<<else>>girl<</if>> clitty to be the centre of attention during our next disciplinary session?@@"<br>
<br>
<<printThought "Oh <<getWordGod>>. Why did I just do that?">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_daily_check_stage_1_2" "Comply and do as you're told." 180 "<<if $scene.bra != ''>><<wearItem $scene.bra true>><</if>><<wearItem $scene.panties true>><<wearItem $scene.stockings true>>">>]
<</if>>
<<elseif _changedOutfit>>
"@@.npc_manager_dom;<<=$player.first_name>>, stop this foolishness at once! I saw you change your underwear right in front of me!@@"<br>
<br>
Her voice snaps like a whip and you wince without being touched.<br>
<br>
"@@.npc_manager;And while you put your original underwear back on, I will be thinking about your next disciplinary measure. Behaviour like this indicates I have been far too lenient with you of late.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_daily_check_stage_1_2" "Comply and do as you're told." 180 "<<if $scene.bra != ''>><<wearItem $scene.bra true>><</if>><<wearItem $scene.panties true>><<wearItem $scene.stockings true>>">>]
<</if>>
<<else>>
<<if $scene.clothes == 'male_casual'>>
"@@.npc_manager;Be a darling and close the door behind you. We would not want to be disturbed with this, now would we? Very good. Now, please, <<=$player.first_name>>, if you would kindly remove all your...clothing, and hand it over while we are at it. Really, sometimes I wonder what is going on in that head of yours to screw up this obviously.@@"
<<else>>
"@@.npc_manager;Be a darling and close the door behind you. We would not want to be disturbed with this, now would we? Very good. Now, please, <<=$player.first_name>>, if you would kindly remove all your clothing save your underwear. Thank you.@@"
<</if>>
<br><br>
<<if $npc_manager.stagevalues[1].penisincident>=3>>
<<printThought "Oh no. I've been warned multiple times about my boner!">><br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_1a" "Comply and do as you're told.">>]
<<hint $options "You can still do this manually and be as sassy as<br>you like.">><br>
<</if>>
</div>/*#
#desc: phase 1 auto-strip for morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 11 'unbelievable' $SEEN_FRIEND>>
<<set $scene.newCage = setup.getItemFromType("cage") != $npc_manager.flags.lastCage>>
<<if $scene.newCage>>
<<include "setLastSeenCage">>
<</if>>
<</if>>
<<set _catsuit = "">>
<<if setup.checkItemTypeTag('bodysuit', ['latex'])>>
<<set _catsuit = setup.getItemFromType('bodysuit')>>
<</if>>
<<removeEverythingButUnderwear>>
<<if _catsuit>>
<<wearItem _catsuit true>>
<</if>>
<<set $scene.manual = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Getting used to this chain of events, you remove your clothes,
<<if $scene.clothes == 'male_casual'>>
hand them over as instructed
<<else>>
put them nicely folded on the floor
<</if>>
and present yourself to <<=setup.getNpcName('npc_manager', 'formal')>> wearing only your undergarments.<br>
<br>
<<if !setup.checkItemTypeWorn("cage") && $npc_manager.flags.require_chastity>>
[<<moveTo "event_manager_daily_check_stage_1_nochastity" "Continue." 30 "<<set $scene.fromeUnisex=false>>">>]
<<elseif ($currentTasks.hasOwnProperty("manager_morning_inspection_task") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition != 1 || $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && $currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task_repeat.trigger.pinkPill.condition != 1)>>
As you changed she had fetched some sort of scanner, and she runs it over you with a frown. "@@.npc_manager;We agreed that you would be taking performance-enhancing medication... and yet I see no evidence of such.@@"<br>
<br>
She dips into her desk and hands you a pill. "@@.npc_manager;Here you go, and hurry up, the sooner you take it the sooner you will be properly prepared for work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_drug" "Swallow the pill, as agreed." 60 "<<set $scene.pill=true>>">>]<br>
[<<moveTo "event_manager_daily_check_stage_1_drug" "Refuse the pill." 60 "<<set $scene.pill=false>>">>]
<<else>>
<<if setup.checkItemTypeWorn("cage") && $scene.newCage && $npc_manager.flags.require_chastity>>
She raises an eyebrow as she seems to look straight through your underthings to your <<if setup.isCage()>>cage<<else>>chastity belt<</if>>. "@@.npc_manager;Upgrading your security already? Ambitious, but so long as you are secured, that fulfills your requirements, at least as they are now.@@"<br>
<br>
<<printThought "Are now? That implies they could get even? Hmmm...">><br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_2" "Continue." 30>>]
<</if>>
</div>/*#
#desc: unlocks when you trigger unisex obedient
#status: FINISHED 0.7.4.0
#*/
<<if $player.sec_style.clothing.unisex == "">>
<<set $player.sec_style.clothing.unisex = "obedient">>
<<set _x = setup.clearThoughtList()>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<include "addSexStoreOpeningEvent">>
<</if>>/*#
#desc: phase 1 morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if setup.calcErection()>>
<<set $npc_manager.stagevalues[1].penisincident+=1>>
<</if>>
<<if $scene.manual && $scene.clothes != 'male_casual'>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<if $npc_manager.flags.spill_event && $player.sec_style.clothing.unisex == "" && $scene.clothes != 'male_office'>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<if $scene.formal != "casual">>
<<include "unisexUnlocks">>
<</if>>
<<elseif $player.sec_style.clothing.unisex == "" && $scene.clothes == "unisex_office">>
<<set $scene.first_unisex = true>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<include "unisexUnlocks">>
<</if>>
<<if $scene.taskComplete>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<<if !($scene.underwearStyle == "male" || setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male']))>>
<<include "inspectionData_missingUnderwear">>
<</if>>
<</if>>
<<if $npc_manager.flags.spill_event && $player.sec_style.clothing.unisex == "">>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_spill'>>
<<elseif setup.checkItemTypeWorn("cage") && !$npc_manager.flags.require_chastity && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
<<initRoom>>
<<moveTo 'event_morning_inspection_chastity_1'>>
<<elseif $scene.clothes == 'male_casual'>>
/% noop, continue %/
<<elseif $scene.underwearStyle == "male" || setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male'])>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_maleunderwear'>>
<<elseif setup.isBodySlotVisible('penis')>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_penis'>>
<<elseif setup.calcErection()>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_erection'>>
<<elseif $scene.frisky && setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("shoes") && setup.checkItemTypeWorn("stockings") && setup.checkOutsideDecency()>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3'>>
<<else>>
<<if setup.changedRoom() && $scene.underwearStype == "male">>
<<applyExperience 'bimbofication' 5 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.first_unisex>>
She takes a slow glance over your neatly folded clothing before her eyes return to your body and she smiles. "@@.npc_manager;This... oh, this is simply lovely. Your choice of new outfit well, it is far and away a superior choice for one in your position and, seeing you in it earlier, it far better complements your figure than those stiff, boring clothes you used to wear. Yes, going forward I want to see you in nothing else! Consider your dress code permanently updated and expect to receive a reprimand should you ever make the mistake of wearing a scrap of masculine clothing again.@@"<br>
<br>
You blush slightly at her compliment, unable to think of a proper response as she seems to forget the remainder of your inspection and dismiss you to dress and return to work.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>" "<<set $npc_manager.flags.spill_event = false>>">>]
<<else>>
"@@.npc_manager;Now, please stand still, while I inspect the goods.@@"<br>
<br>
<<if $scene.sissypilleffects>>
She leans very close to your now swollen chest and adjusts her glasses.<br>
<br>
"@@.npc_manager;Oh. Someone has been eager to try my little present. You are such a naughty little <<if $player.sec_style.clothing.female == "">>boy, <<=$player.first_name>>... well, I suppose calling you a naughty little girl would be more accurate at this point. <<if $fetish.sissy>>How about we meet in the middle and simply call you a naughty little <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, shall we?<</if>><<else>>girl, <<=$player.first_name>>.<</if>> Still, the results are... very nice, yes, these look very good on you,@@" she says while raising her hand to grab your <<getWordBreasts>>, starting by pinching your nipples. You try to suppress both the pain and the pleasure from this feeling, but are unable to do so. A soft moan escapes your lips. The sound of your own voice startles you, since it is a lot more feminine then you are used to.<br>
<br>
"@@.npc_manager;Oh, very good, the nerves all seem to be working and the tissue feels amazing. I wonder how big these could become?@@"<br>
<br>
You're unable to catch your breath, having no idea what she's talking about.<br>
<br>
"@@.npc_manager;Come on <<=$player.first_name>>, grow some balls. Hmm... maybe that is not the correct phrase anymore. Stop with the teary puppy eyes. These,@@" she grabs your <<getWordBreasts>> one in each hand and gives a squeeze. "@@.npc_manager;Are not permanent... yet.@@"<br>
<br>
A gleeful smile parts her lips.<br>
<br>
"@@.npc_manager;You can talk to me about the details after work hours in my office. Maybe you should have done that BEFORE you ate the pill. No matter, this is the sort of adventurousness I quite appreciate. Now, let us continue on, shall we <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"<br>
<br>
<</if>>
<<include inspectionText_underwear>>
<<include inspectionText_cleanClothes>>
<<if $scene.clothes == 'male_casual'>>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit" "Hmm... smells like something is burning in here..." 360>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>" "<<set $npc_manager.flags.spill_event = false>>">>]
<</if>>
<</if>>
</div>"@@.npc_manager;It is not like I do not enjoy a big, fat hard <<getWordPenis true>> from time to time.
<<switch random(5)>>
<<case 0>>
Too bad there is nothing like that in the room right now!
<<case 1>>
But if this is the extent of your manhood, I think what I have in plan for you is the kinder fate... spare you any more humiliation... well, this sort of humiliation at least.
<<case 2>>
But... is this thing even turned on? It is kind of hard to tell. Wait a second, where did I put my magnifying glass...
<<case 3>>
But yours... when you go swimming in cold water, does it actually get bigger?
<<case 4>>
This one on the other hand. Just look at it. It is so cute and tiny. I do not think I can simultaneously determine its position and velocity.
<<case 5>>
But the only thing I would choke on is the paroxysm of laughter I would get from looking at yours.
<</switch>>
@@"/*#
#desc: manager comments on you coming to work after spill event
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.gender == "male" && ($clothSetsInt.daily_evaluation_clothes.data.includes("shirt_stained") || $scene.anyUnisex)>>
<<deleteUnwornTagItems 'male'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.clothes>>
<<case "male_casual">>
Her gaze narrows as she picks up your shed outfit. "@@.npc_manager;What did you think wearing this to work? Have you no sense of professionalism?@@"<br>
<br>
You try to explain that your work shirt was too stained to wear, but she cuts you off before you can get out more than a few words.<br>
<br>
<<if setup.checkItemOwned("shirt_female_office_teal")>>
"@@.npc_manager;The lesser of two failures is still failures. Your dress code is VERY clear, and really quite simple. Moreover there was an obvious solution in the lovely shirt and pants I gave you yesterday.@@" She fumes for a brief moment before composing herself.
<<else>>
"@@.npc_manager;The lesser of two failures is still failures. Your dress code is VERY clear, and really quite simple, you should have taken measures to find something appropriate instead of wearing something so soiled to the office. Being that you so utterly failed on your own well... I think it would be best if I gave you a hand.@@"
<</if>>
<<case "male_office">>
<<if $clothSetsInt.daily_evaluation_clothes.data.includes("shirt_stained")>>
She frowns as she holds up your stained attire. "@@.npc_manager;This is... very much not appropriate for work. What were you even thinking?@@"<br>
<br>
You try to explain that you couldn't get the stain out and that you did not have anything else to wear, but she cuts you off.<br>
<br>
<<if setup.checkItemOwned("shirt_female_office_teal")>>
"@@.npc_manager;Nothing else to wear? Why I gave you a perfectly appropriate outfit, you should have worn that!@@"
<<else>>
"@@.npc_manager;Nothing else to wear? Do you only have one set of work clothing? That is very foolish, and lacking in the planning department but, fortunately, I have a solution!@@"
<</if>>
<<elseif $scene.anyUnisex>>
She eyes your partial unisex attire. "@@.npc_manager;So close, yet so far... since you appear to have been struck by a bout of confusion when you were dressing yourself, how about I help you sort it out. Those masculine things... no, they just clash horribly! But, fortunately for you, I just so happen to have extras of the... missing pieces to that outfit so how about we get you changed into something more appropriate for the office?@@"<br>
<br>
You hesitate for a moment and she looks down at you over her glasses while casually picking your male clothes from the pile.<br>
<br>
"@@.npc_manager;Do not mistake my politeness for a question — it is high time you began presenting yourself in a way more appropriate to a <<if $fetish.sissy>>SISSI <</if>>Secretary, I gave you an opportunity to impress me, but with you being so apparently confused well... I believe it is time to just move forward with things.@@"
<<elseif $npc_manager.stagevalues[1].unisexsecretary>>
"@@.npc_manager;I am very sorry about you suffering yet another accident, but your rules now are to no longer wear masculine attire to work, which this... well, this is definitely inappropriate given that rule.@@"
<<else>>
"@@.npc_manager;Not a trace of that nasty stain. Well done, I suppose, that attire meets requirements and is... acceptable, for now.@@"<br>
<br>
<<printThought "Why do I get the feeling she intended things to go a different way?">>
<</if>>
<<case "unisex_casual">>
She appears of mixed emotions at your choice of clothing. "@@.npc_manager;Hmm, an interesting choice, but a bit casual for the office, would you not agree?@@"<br>
<br>
You explain that you tried to make do given that the stain on your shirt proved impossible to remove.<br>
<br>
<<if setup.checkItemOwned("shirt_female_office_teal")>>
She listens, but frowns. "@@.npc_manager;That was quite the nasty stain so it is not surprising but... why did you choose this instead of the complete work-appropriate outfit I gave you?@@"
<<else>>
<<set _give_unisex = true>>
She nods sagely before responding. "@@.npc_manager;I see, I see. Well, I believe I can help on that count.@@"
<</if>>
<<case "unisex_office">>
She smiles at your choice of clothing. "@@.npc_manager;Simply delightful. You look so good in this sort of thing that I am going to revise your dress code. Henceforth I do not wish to ever again see you in a single scrap of male clothing. This sort of things fits your figure much better, and will make a far better impression on visitors in your job as my assistant.@@"
<<default>>
ERROR unexpected stage 1 clothing: <<=$scene.clothes>>
<</switch>>
<br><br>
<<if _give_unisex>>
You gulp, not quite certain how you feel about the prospect of her "solution" as you mind whirls with increasingly horrifying possibilities.<br>
<br>
Picking up your clothes she smiles "@@.npc_manager;I will be right back.@@" she states before disappearing into her office.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit" "Uh-oh." 360>>]
<<elseif $scene.gender == "male" && ($clothSetsInt.daily_evaluation_clothes.data.includes("shirt_stained") || $scene.anyUnisex)>>
She grins wider as she dumps your outfit into the trash and follows it up with a match. "@@.npc_manager;Your choice of attire today... well, it is just unacceptable, wearing something so utterly inappropriate. Given your issues making proper decisions as to how to dress I believe it would be better, for the both of us, if I just changed your dress code to make all masculine clothes verboten, hmm?@@"<br>
<br>
<<printThought "What? She can't do this!">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit_alt" "Throw a fit, this is wrong!" 60 '<<set $scene.style = "forced">>'>>]<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit_alt" "Your clothes are gone, but perhaps you can turn this to your advantage and talk her into reimbursing you for the expense?" 60 '<<set $scene.style = "money">>'>>]
<<elseif $scene.taskComplete>>
<<if $scene.anyUnisex>>
"@@.npc_manager;This is highly disappointing. You have clearly partially figured things out and yet...@@" She sighs. "@@.npc_manager;Well, a partial success is still a success, and you technically met the requirements as they stand. That said... this will not be sufficient in the future, no, from this day forth I expect not a thread of masculine attire to adorn your body when you are at work. I realise this may come as something of a shock, but it is for you own good, even now you bear the hint of what you can become and, as your manager, it is my duty to aid and encourage such professional development.@@"
<<else>>
"@@.npc_manager;Well, you have technically met the requirements as they presently exist so you may get dressed and start working.@@"<br>
<br>
Her tone is cold, though you technically passed you have definitely disappointed her, somehow.
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>><<set $npc_manager.flags.spill_event = false>><<set $npc_manager.stagevalues[1].unisexsecretary = $npc_manager.stagevalues[1].unisexsecretary || $scene.anyUnisex>>">>]
<<else>>
<<if ($currentTasks.hasOwnProperty("manager_morning_inspection_task") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition != 1 || $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && $currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task_repeat.trigger.pinkPill.condition != 1)>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_1_finalize">>
<<include "inspectionText_drugs">>
<<else>>
<<if $scene.underwearmissing>>
<<if setup.getItemObj($scene.topId).specific == "strapless_dress">>
"@@.npc_manager;Unfortunately, you appear to be missing an important piece — your bra. I suppose that is due to the fact the straps would quite clash with your dress... I shall allow it, though I would prefer you found an outfit that better matched requirements as a whole.@@"
<<else>>
"@@.npc_manager;Unfortunately, whatever might be said about the exterior you have utterly failed to meet requirements beneath. Bra, panties, stockings, all of a feminine persuasion that is the requirement and you have failed at even that simplistic task.@@"
<</if>>
<<elseif !$scene.cleanBody>>
"@@.npc_manager;Did you forget to shower? Totally unacceptable, showing up to work clean is such a basic requirement I should hardly even need to specify it... and yet apparently with you spelling it out was not even enough!@@"
<<elseif !$scene.cleanclothes>>
"@@.npc_manager;Clean clothes, such a simple thing and yet... you have failed, very disappointing, but I cannot have such a slovenly secretary acting as my representative.@@"
<<elseif $scene.gender == "male">>
"@@.npc_manager;I thought we agreed that masculine clothing is poisoning your mind? A near tautology supported by the fact that you are disobeying instructions and appearing before me in male attire once again.@@"
<<else>>
ERROR: unexpected, please upload a save to discord so this can be fixed
<</if>>
She looms over you for a few tense moments until you flinch. With a small, but triumphant smile she walks away.
<br><br>
"@@.npc_manager;As your performance today was totally unacceptable for a <<if $fetish.sissy>>SISSI <</if>>Secretary I am going to have to send you home. Moreover, starting <<if $now.getUTCDay()==5>>Monday<<else>>tomorrow<</if>> I am instituting a new dress code. All that masculine clothing... I think it is poisoning your mind and your actions so something more calm, comfortable and, above all, unisex is what I will expect and require you to wear to the office henceforth.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>><<set $npc_manager.flags.spill_event = false>><<set $npc_manager.stagevalues[1].unisexsecretary = true>><<set $scene.seriousoffense = true>>">>]
<</if>>
<</if>>
</div>/*#
#desc: manager chides for penis being on display for phase 1 inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $npc_manager.stagevalues[1].penisincident += 1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.frisky = true>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<if $npc_manager.stagevalues[1].penisincident == 2>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<</if>>
<<if $npc_manager.stagevalues[1].penisincident > 2 && $player.sec_style.clothing.unisex == "">>
<<set $npc_manager.criticalanger+=1>>
<<set $scene.score=0>>
<<applyStress 20>>
<</if>>
<</if>>
<<if ($npc_manager.stagevalues[1].erectionatwork + $npc_manager.stagevalues[1].penisincident) > 5 && ($scene.bra != setup.getItemFromType("bra")) && ($scene.panties != setup.getItemFromType("panties")) && ($scene.stockings != setup.getItemFromType("stockings"))>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_punishment_1">>
<</if>>
<<if setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("shoes") && setup.checkItemTypeWorn("stockings") && setup.checkOutsideDecency()>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.stagevalues[1].penisincident>>
<<case 1>>
She looks shocked at the fact that you have exposed yourself to her.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously? Put your clothes back on! If you do not want your little <<if $fetish.sissy>>SISSI<<else>>girl<</if>> clitty be the centre of attention during your next disciplinary session, you'd better comply.@@"<br>
<br>
<<printThought "Oh <<getWordGod>>. Why did I just do that?">><br>
<br>
<<if $scene.underwearmissing>>
She snorts "@@.npc_manager;And do not thing I forgot about your underwear requirements — bra, panties, stockings, all properly feminine. Here,@@" she states tossing you some clothing. "@@.npc_manager;That should fill in the gaps — do try to be dressed properly next time.@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<case 2>>
Seeing your exposed <<getWordMyPenis>>, <<=setup.getNpcName('npc_manager', 'formal')>> unleashes an angry outburst.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously?@@" is her first reaction, but her expression becomes calm as she quickly moves ominously closer to you.<br>
<br>
"@@.npc_manager;You know, <<=$player.first_name>>,@@" she explains, slowly getting down right before you, kneeling in front of you until her face is only few centimetres away from your
<<if setup.calcErection()>>
erect
<</if>>
manhood. Despite your respective positions you feel somehow even more completely at her mercy.
<br><br>
<<include manager_penis_taunt>><br>
<br>
<<printThought "That hurt. I mean I kind of deserved it for showing, but still, that hurt.">><br>
<br>
Her teasing cuts like a knife, but it seems like it isn't over yet. You yelp as she grabs your shaft, pulling it up to expose your dangling balls and administer a rapid series of slaps to your vulnerable testicles.<br>
<br>
You yelp in pain as she finishes raining blows on your tender bits.<br>
<br>
"@@.npc_manager;May that be a lesson to you. If you put things out, they are liable to get slapped — much better to keep them bundled up in some nice cute panties, hmm? If you keep this up, I will be taking even more severe measures to keep you under control.@@"<br>
<br>
<<printThought "Even MORE severe?">><br>
<br>
Your mind reels at that prospect...<br>
<br>
<<if $scene.underwearmissing>>
Returning to her desk as you reach for your clothes, she pulls something out of a drawer. "@@.npc_manager;And do not thing I forgot about your underwear requirements — bra, panties, stockings, all properly feminine. Here@@" she states tossing you some clothing. "@@.npc_manager;That should fill in the gaps — do try to be dressed properly next time.@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<default>>
<<if $player.sec_style.clothing.unisex == "">>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;Again?@@" she states in disgust as she notices your <<getWordMyPenis>>. She thinks for a moment and you feel like something is about to happen, but then she merely lets out a sigh.<br>
<br>
"@@.npc_manager;Do not be mistaken, <<=$player.first_name>>, I am VERY disappointed in you, but I will accept that you are still adjusting to things and not quite ready for... well, no matter. Still, I advise you to consider your actions more carefully and think about how you can better perform and exhibit yourself as my <<if $fetish.sissy>>SISSI <</if>>Secretary. Consider this your <<printNumber $npc_manager.criticalanger>> offense. If you get to five I will unfortunately be terminating your employment.@@"<br>
<br>
"@@.npc_manager;You may put your... clothes back on.@@"<br>
<br>
<<printThought "Hmm, the way she said that word... should I be wearing something different?">><br>
<br>
<<if $scene.underwearmissing>>
Returning to her desk as you reach for your clothes, she pulls something out of a drawer. "@@.npc_manager;And do not thing I forgot about your underwear requirements — bra, panties, stockings, all properly feminine. Here@@" she states tossing you some clothing. "@@.npc_manager;That should fill in the gaps — do try to be dressed properly next time.@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<else>>
"@@.npc_manager;Unfortunately this wanton, continued disobedience can no longer be tolerated. Consider your contract terminated. Good day.@@"<br>
<br>
Her gaze is hard, with a slight touch of disappointment? Either way there seems no arguing with her as you depart.<br>
<br>
[<<moveTo 'gameover_grue' "Leave." 0>>]
<</if>>
<<else>>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously? Put your clothes back on!@@"<br>
<br>
After that initial outburst she gets calm very quickly and steps in close, leaning in until her face is a few centimetres away from yours. You can feel her breath as she calmly continues "@@.npc_manager;No. I think I have a better idea. If you are going to insist on doing nothing but tempting and teasing me, well... I think it is time we teach you some manners. Put your underwear back on. Come on, hurry, we do not have all day!@@"<br>
<br>
<<printThought "And I immediately regret my decision...">><br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_1" "Do as you're told." 30 "<<useClothSetPop 'daily_evaluation_clothes'>><<set _catsuit = ''>><<if setup.checkItemTypeTag('bodysuit', ['latex'])>><<set _catsuit = setup.getItemFromType('bodysuit')>><</if>><<removeEverythingButUnderwear>><<if _catsuit>><<wearItem _catsuit true>><</if>>">>]
<</if>>
<</switch>>
</div>/*#
#desc: manager chides for having an erection during phase 1 inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $npc_manager.stagevalues[1].erectionatwork += 1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.frisky = true>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<<if $npc_manager.stagevalues[1].erectionatwork == 2>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_FRIEND>>
<</if>>
<<if $npc_manager.stagevalues[1].erectionatwork > 1>>
<<set $player.timebased.horny = 25>>
<</if>>
<<if $npc_manager.stagevalues[1].erectionatwork > 2 && $player.sec_style.clothing.unisex == "">>
<<set $npc_manager.criticalanger+=1>>
<<set $scene.score=0>>
<<applyStress 20>>
<</if>>
<</if>>
<<if setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("shoes") && setup.checkItemTypeWorn("stockings") && setup.checkOutsideDecency()>>
<<initRoom>>
<<useClothSetPop 'daily_evaluation_clothes'>>
<<moveTo 'event_manager_daily_check_stage_1_3'>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.stagevalues[1].erectionatwork>>
<<case 1>>
She stares at your obviously erect <<getWordMyPenis>>.<br>
<br>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously? How do you expect to focus on your work with... this? To say nothing of what it does to the lines of your clothing!@@" She sighs and continues more calmly. "@@.npc_manager;In the future I advise you to think about these things before you leave the house!@@"<br>
<br>
<<printThought "Oh <<getWordGod>>. I'm tenting so hard! And her teasing is only make it worse!">><br>
<br>
<<if $scene.underwearmissing>>
She snorts "@@.npc_manager;And do not thing I forgot about your underwear requirements — bra, panties, stockings, all properly feminine. Here,@@" she states tossing you some clothing. "@@.npc_manager;That should fill in the gaps — do try to be dressed properly next time.@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<case 2>>
Seeing your <<getWordMyPenis>> vulgarly stretching your underwear <<=setup.getNpcName('npc_manager', 'formal')>> frowns.<br>
<br>
"@@.npc_manager;And just what did you think bringing that to work? I expect you to show up ready to do your job... what part did you think THAT would have in the course of your duties?@@"<br>
<br>
<<include manager_penis_taunt>><br>
<br>
To your embarrassment her teasing only causes you to stiffen further, a fact that does not appear to escape her notice. She sighs and shakes her head.<br>
<br>
"@@.npc_manager;I suppose I should not be surprised, still... this definitely needs to be attended to if I am going to get any meaningful work out of you.@@"<br>
<br>
Your heart skips at the thought of what she means by that as she ducks back into her inner office, re-appearing carrying a cup half-full of ice.<br>
<br>
<<if $fetish.sph>>
"@@.npc_manager;It is lucky for you I decided on an iced coffee this morning, this should take care of your LITTLE problem quite efficiently.@@"
<<else>>
"@@.npc_manager;It is lucky for you I decided on an iced coffee this morning, this should take care of your problem quite efficiently.@@"
<</if>>
<br><br>
Before you can react, she has taken a handful of ice in one hand and then grabbed you by the <<getWordMyPenis>>, the frigid temperatures having you wither and shrink in a matter of moments.<br>
<br>
Giving you a final slightly-too-hard squeeze she smiles.<br>
<br>
"@@.npc_manager;There we go, now you can focus on your work.@@"<br>
<br>
<<printThought "That hurt. I mean I kind of deserved it for showing, but still, that hurt.">><br>
<br>
<<if $scene.underwearmissing>>
Returning to her desk as you reach for your clothes, she pulls something out of a drawer. "@@.npc_manager;And do not thing I forgot about your underwear requirements — bra, panties, stockings, all properly feminine. Here@@" she states tossing you some clothing. "@@.npc_manager;That should fill in the gaps — do try to be dressed properly next time.@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Continue." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<default>>
<<if $player.sec_style.clothing.unisex == "">>
<<if $npc_manager.criticalanger > 0 && ($npc_manager.stagevalues[1].erectionatwork + $npc_manager.stagevalues[1].penisincident) > 5>>
"@@.npc_manager;Again?@@" she states in disgust as she notices your hard <<getWordMyPenis>>. "@@.npc_manager;This wanton lack of self-control... well, it has gone on too long. I had hoped this was just some growing pains as you adapted to your new position, but it would appear that it is going to take a sterner hand to bring you to heel. Remove the rest of your clothing and lay down on that couch.@@"<br>
<br>
You gulp nervously, feeling suddenly very alone and vulnerable in her office.<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_2" "What am I in for now?" 360 "<<useClothSetPop 'daily_evaluation_clothes'>><<useClothSetPush 'stage1end'>><<removeAllClothing>>">>]
<<elseif $npc_manager.criticalanger < 5>>
"@@.npc_manager;Again?@@" she states in disgust as she notices your hard <<getWordMyPenis>>. She thinks for a moment and you feel like something is about to happen, but then she merely releases a sigh.<br>
<br>
"@@.npc_manager;Do not be mistaken, <<=$player.first_name>>, I am VERY disappointed in you, but I will accept that you are still adjusting to things and not quite ready for... well, no matter. Still, I advise you to consider your actions more carefully and think about how you can better perform and exhibit yourself as my <<if $fetish.sissy>>SISSI <</if>>Secretary. Consider this your <<printNumber $npc_manager.criticalanger>> offense. If you get to five and you. are. done.@@"<br>
<br>
"@@.npc_manager;You may put your... clothes back on.@@"<br>
<br>
<<printThought "Hmm, the way she said that word... should I be wearing something different?">><br>
<br>
<<if $scene.underwearmissing>>
Returning to her desk as you reach for your clothes, she pulls something out of a drawer. "@@.npc_manager;And do not thing I forgot about your underwear requirements — bra, panties, stockings, all properly feminine. Here@@" she states tossing you some clothing. "@@.npc_manager;That should fill in the gaps — do try to be dressed properly next time.@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<else>>
"@@.npc_manager;Unfortunately this wanton, continued disobedience can no longer be tolerated. Consider your contract terminated. Good day.@@"<br>
<br>
Her gaze is hard, with a slight touch of disappointment? Either way there seems no arguing with her as you depart.<br>
<br>
[<<moveTo 'gameover_grue' "Leave." 0>>]
<</if>>
<<else>>
"@@.npc_manager_dom;<<=$player.first_name>>, seriously? Coming to work erect again?@@"<br>
<br>
After that initial outburst she gets calm very quickly and steps in close, leaning in until her face is a few centimetres away from yours. You can feel her breath as she calmly continues "@@.npc_manager;No. I think I have a better idea. If you are going to insist on exhibiting such blatant and perpetual lack of self control, well... I think it is time we teach you some manners. Yes, stand right there, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. It is time to give your development a little boost.@@"<br>
<br>
<<printThought "And I immediately regret my decision...">><br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_1" "Do as you're told." 30 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<</switch>>
</div>/*#
#desc: wore male underwear for morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.stagevalues[1].wrongunderwear += 1>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<set $scene.frisky = true>>
<<set $scene.maleBoxers = setup.checkItemTag(setup.getItemFromType("panties"),['male'])>>
<<if $scene.maleBoxers>>
<<removeItem "boxershorts" true>>
<<deleteItem "boxershorts">>
<<set $clothSetsInt.daily_evaluation_clothes.data.delete("boxershorts")>>
<</if>>
<<set $scene.maleSocks = setup.checkItemTag(setup.getItemFromType("stockings"),['male'])>>
<<if $scene.maleSocks>>
<<removeItem "socks" true>>
<<deleteItem "socks">>
<<set $clothSetsInt.daily_evaluation_clothes.data.delete("socks")>>
<</if>>
<<if $npc_manager.stagevalues[1].wrongunderwear > 2 && $player.sec_style.clothing.unisex == "">>
<<set $npc_manager.criticalanger+=1>>
<<set $scene.score=0>>
<<applyStress 10>>
<</if>>
<<set $scene.underwearmissing = true>>
<<switch $npc_manager.stagevalues[1].wrongunderwear>>
<<case 1>>
<<include "inspectionData_missingUnderwear">>
<<case 2>>
<<applyExperience 'bdsm' 7 'normal' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<if setup.checkItemTypeWorn("panties") && setup.checkItemTypeWorn("shoes") && setup.checkItemTypeWorn("stockings") && setup.checkOutsideDecency() && $npc_manager.criticalanger < 5>>
<<if ($npc_manager.stagevalues[1].unisexsecretary && ((setup.checkItemTag(setup.getItemFromType("shirt"),['unisex']) && setup.checkItemTag(setup.getItemFromType("legwear"),['unisex']))||(setup.checkItemTag(setup.getItemFromType("dress"),['unisex']))))>>
<<include inspectionData_clothes>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3'>>
<<elseif !$npc_manager.stagevalues[1].unisexsecretary>>
<<include inspectionData_clothes>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.stagevalues[1].wrongunderwear>>
<<case 1>>
"@@.npc_manager;<<=$player.first_name>>, what the hell are you trying to accomplish by wearing male underthings now? <<=setup.getNpcName('npc_manager_dom', 'special', 'RIGHT IN FRONT OF ME?')>> Are you really that dumb, you big ditz? Here, give me these. I will take care of them for you. More behaviour like this and you will be seeing a Disciplinary Measure during your next evaluation, my dear.@@"<br>
<br>
That last part is underlined by her lips curling into a gleeful grin. You remove your <<if $scene.maleBoxers && $scene.maleSocks>>socks and boxers<<elseif $scene.maleSocks>>socks<<else>>boxers<</if>> and hand your last remaining male underthings to <<=setup.getNpcName('npc_manager', 'formal')>>. You watch silently as she puts them in the garbage can and sets them on fire. So that's her taking care of things. You file this under incredible stupid ideas and resolve to refrain from doing something so dumb in the future.
<br><br>
<<if $npc_manager.stagevalues[1].unisexsecretary>>
"@@.npc_manager;Have you forgotten that any sort of male clothes are forbidden for you? Seeing what you just did today you may be facing some... severe corrections to help you remember!@@"<br>
<br>
<</if>>
She tosses a small bag at you. It hits your chest with enough force to almost knock you back... yet when you open it up you find nothing but some women's underthings... pink women's underthings.<br>
<br>
"@@.npc_manager;THAT is more appropriate for you to be wearing. Put those on, and get dressed... and let us hope that it helps with the rest of your day's performance.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Get dressed." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<<case 2>>
"@@.npc_manager;Again with the inappropriate undergarments...@@" She states, shaking her head as she extends a hand. "@@.npc_manager;Well, give them here. You know that sort of thing has no place in this office.@@"<br>
<br>
No sooner have you handed over yet another set of masculine undergarments than she grabs you by the hair and spins you around. Before you can react, she has landed a quick series of blows to your tender bottom, each hard slap echoing through the office in tune with your corresponding yelp of pain.<br>
<br>
"@@.npc_manager;There, and may that be a lesson to you.@@" She states, pushing you away. "@@.npc_manager;Now, let us finish with your inspection. Get dressed... and, for your sake, I hope there are no further failures.@@"<br>
<br>
Your bottom smarts and you are already dreading sitting on it all day, but you do not say a word lest you draw her further ire.<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<<default>>
Without a word <<=setup.getNpcName('npc_manager', 'formal')>> confiscates your male undergarments yet again.<br>
<br>
"@@.npc_manager;I do not understand how this can be so difficult. Female. Undergarments, it is really quiet simple, not to mention far more comfortable than... these.@@" She raises her handful of male underthings with an expression of disgust as if she was holding a dead animal.<br>
<br>
<<if $player.sec_style.clothing.unisex == "">>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;Please spend some time considering your attire, if you continue in this regard well... I do not know if I will be able to continue to retain your services. Consider this your <<printNumber $npc_manager.criticalanger>> offense. If you get to five and you. Are. Done. Now, get dressed and let us continue.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Put remaining clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<<else>>
"@@.npc_manager;Unfortunately this wanton, continued disobedience can no longer be tolerated. Consider your contract terminated. Good day.@@"<br>
<br>
Her gaze is hard, with a slight touch of disappointment? Either way there seems no arguing with her as you depart.<br>
<br>
[<<moveTo 'gameover_stage1_fail' "Leave." 0>>]
<</if>>
<<else>>
"@@.npc_manager;If you cannot manage such a simple instruction insofar as how you are packaging your privates well... I think it is time for some additional measures... follow.@@"<br>
<br>
She turns to head for her inner office, you gulp in fear, but find yourself putting one foot in front of the other to trail after.<br>
<br>
[<<moveTo "event_manager_stage1_end_punishment_1" "Continue." 30 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<</switch>>
</div>/*#
#desc: put clothes back on + get "score" for phase 1 morning evaluation
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.score>=2 && $scene.taskComplete>>
<<if $scene.taskComplete>>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<set $npc_manager.trigger.stage1_happy+=1>>
<<set $scene.score += $scene.extrascore>>
<<elseif $currentTasks.manager_morning_inspection_task.trigger.playerClean.condition && $currentTasks.manager_morning_inspection_task.trigger.clothesClean.condition && $currentTasks.manager_morning_inspection_task.trigger.clothesUnderwear.condition && $currentTasks.manager_morning_inspection_task.trigger.clothing.condition && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperyt("pinkPill") && $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition>>
<<set $npc_manager.trigger.stage1_happy+=1>>
<</if>>
<<if !$scene.frisky>>
<<set $npc_manager.stagevalues[1].submission+=1>>
<<applyExperience 'submission' 6 'almost' $SEEN_FRIEND>>
<</if>>
<<elseif $scene.score<0>>
<<set $npc_manager.criticalanger+=1>>
<<applyStress 10>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<else>>
<<set $scene.score = Math.min($scene.score, 1)>>
<</if>>
<<if $npc_manager.criticalanger >=5>>
<<initRoom>>
<<moveTo "gameover_stage1_fail">>
<</if>>
<<if $scene.seriousoffense>>
<<set $player.work.sendhome = true>>
<<set $player.work.sendhomedate = $now>>
<<include "endPartialShift">>
<<else>>
<<set $player.work.sendhome = false>>
<<if !$npc_manager.stagevalues[1].unisexsecretary && setup.analyzeWornTags(["male", "female", "unisex"]) == "male" && $npc_psychiatrist.sessions > 0 && ($player.flags.canteen_spill == 0 || random(10) <= $player.flags.canteen_spill)>>
<<addEvent 'spill_event'>>
<</if>>
<</if>>
<<set $scene.makeup = setup.getCurrentMakeup()>>
<<if $scene.makeup != "">>
<<set $npc_manager.stagevalues[1].seen_makeup = true>>
<</if>>
<</if>>
<<set _things = 0>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.score>>
<<case -1 -2>>
As you put your clothes back on, you hear a slight sigh from <<=setup.getNpcName('npc_manager', 'formal')>>. It seems she is bitterly disappointed with you and your recent behaviour. "@@.npc_manager;I warn you, <<=$player.first_name>>, this is now your <<printNumber $npc_manager.criticalanger>> severe offense, reach five and I will be forced to let you go from this position.@@"
<<case 0>>
<<=setup.getNpcName('npc_manager', 'formal')>> glares at you while you put your clothes back on, clearly annoyed with your behaviour and impatient to conclude the inspection.
<<case 1>>
As you put your clothes back on, you think you hear a faint mumbling from <<=setup.getNpcName('npc_manager', 'formal')>>. She has a puzzled expression on her face, apparently confused by your inconsistency in doing some things right and others wrong.
<<case 2 3>>
<<if $scene.frisky>>
<<=setup.getNpcName('npc_manager', 'formal')>> moves a lot closer to you, so you can feel her breath on your face.<br>
<br>
<<if $npc_manager.flags.cruel > 0>>
"@@.npc_manager;I see what is really happening here, <<=$player.first_name>>. You are attempting to bait me... but understand that, as harsh as I may treat you, it will always be measured, controlled, and exactly what you deserve. I will not be goaded into overreacting or losing control, not by the likes of you.@@"
<<else>>
"@@.npc_manager;I see what is really happening here, <<=$player.first_name>>. First you stick to the rules, maybe even start to enjoy your new uniform... then you try to make me angry on purpose, so you can get more rules and disciplinary measures. Good thing for you, it works. Oh we will have so much fun together, yes we will!@@"
<</if>>
<<else>>
<<if ($npc_manager.trigger.stage1_happy==1) || ($npc_manager.stagevalues[1].submission==1)>>
<<=setup.getNpcName('npc_manager', 'formal')>> moves closer to you, so near you can feel her breath on your face, glowing at you, which makes you feel more than a touch uneasy.<br>
<br>
<<if $npc_manager.flags.cruel > 0>>
"@@.npc_manager;I will remind you that I will be taking a no-leniency approach to your training. I expect you to behave perfectly at the first instruction otherwise, well... you may find yourself getting VERY familiar with my paddle, among other punishments...@@"
<<elseif $player.sec_style.clothing.underwear == "forced" && $npc_manager.anger == 0>>
"@@.npc_manager;I have to say, given your initial recalcitrance, it is quite nice to see you naturally falling into the role of the submissive. Do not get me wrong, a bit of feistyness can be amusing as well, I do so adore administering corrective reprimands, but total obedience well... that is quite a special thing.@@"
<<else>>
"@@.npc_manager;I think I once told you that I like them feisty, that way it is more fun to reprimand them. But do not get the wrong impression. I am someone who appreciates the beauty of total submission as well. We are at but the start of our journey together, but you seem to be a natural submissive, and I think such delightful display of obsequiousness should be rewarded. Keep this up and you shall get the reward you desire.@@"
<</if>>
<<else>>
<<if ($npc_manager.trigger.stage1_happy<4) || ($npc_manager.stagevalues[1].submission<4)>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at you, which triggers a feeling of unease in the back of your mind, though that feeling seems to be fading with time.<br>
<br>
<<if ["strict","force"] == setup.getAverageSecStyle()>>
"@@.npc_manager;Maybe that early resistance is finally melting away? I promise you that it will all go easier if you embrace what I know is your natural submissiveness.@@"
<<else>>
"@@.npc_manager;You show a lot less resistance than I thought you would. Very well, let us keep this on the up and up and you shall be rewarded with the goodies such a good, obedient employee deserves. Such natural submissiveness has to be repaid in one way or another.@@"
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at you and your heart races; the mere thought of her approval having become one of the things that gets you up in the morning. Serving her has become one of your top priorities. The voice in the back of your head, warning you that something really strange is going on an almost forgotten memory of the past.<br>
<br>
"@@.npc_manager;It seems we have reached a new stage in your training. If you wish to progress further, and I think we both know you do, you will enter my office today after work. You will close the door behind you, remove everything besides your underwear, get on your knees and kiss my heels without uttering a single word. If you are able to do that, you will both get your reward like the good little slave you are, and you will show that you are ready to advance further... as a secretary, a slave and my <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"
<</if>>
<</if>>
<</if>>
<br><br>
For a second her face glows with a wicked grin. The devilish reveal lasts but a moment before her facade returns to her normal formal style. As you look down to pull up your clothes, you think you hear a faint giggle from <<=setup.getNpcName('npc_manager', 'formal')>>. Looking back up, you find her with a calm, but pleased look on her face. You suppose it's because you've done exactly what she asked you to do.
<</switch>>
<br><br>
<<if $scene.seriousoffense>>
"@@.npc_manager;Unfortunately your performance today, failing to meet requirements, means that I must send you home. Do spend the day thinking on your failures and make sure you have addressed everything before you next come to work, lest you find the terms of your employment coming to a rapid end.@@"<br>
<br>
You try to object, but the look in her eye tells you there will be no disagreement, looks like you're getting a day of unpaid leave...<br>
<br>
<<printThought "Shit, I really need to do better if I'm going to hold on to this job...">><br>
<br>
[<<moveTo "company_lobby" "Leave." 300 "<<set setup.addManagerEndlessTask()>>">>]
<<else>>
<<if $npc_manager.stagevalues[1].penisincident>=3>>
You beg her pardon as you try to leave the office, but <<=setup.getNpcName('npc_manager', 'formal')>> stops you with a glance.<br>
<br>
"@@.npc_manager;One last thing <<=$player.first_name>>. If you do not begin to display restraint regarding your problem down there, it becomes my problem, and I will handle this with what might be termed... a firm iron grip. Do I make myself clear?@@"<br>
<br>
You nod, unsure to be aroused or afraid. Very, very afraid.<br>
<br>
"@@.npc_manager;Good. You know where the door is.@@"
<<else>>
You thank her for her time and attention and leave the office.
<</if>>
<br><br>
<<if $scene.makeup != "">>
You are halfway out the door when she shouts after you.<br>
<br>
"@@.npc_manager;Oh,
<<switch $scene.makeup>>
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll" "camgirl" "egirl" "qtpie">>
and do not think I missed your makeup — quite a lovely style choice.
<<case "nomakeupmakeup">>
and do not think I missed that you are wearing makeup. A bit light, but I guess you are easing into it.
<<case "ultimatebimbo">>
and that makeup... while I congratulate the effort I want a good <<if $fetish.sissy>>SISSI <</if>>Secretary, not a painted whore, perhaps a different style would suit you better?
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<<if $player.makeup.messed > 25>>
That said... you really should keep it in better shape, your face is <<if $player.makeup.messed > 50>>an utter<<else>>something of a<</if>> mess!
<<else>>
Well done on keeping it in good condition.
<</if>>
@@"<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_1_finalize" "Leave the office." 300>>]
<</if>>
</div><<initRoom>>
<<include "postInspectionCleanup">>
<<moveTo "room_office_sissy_secretary_work_morning_start">>/*#
#desc: manager annoyed by your nakedness or (if male casual) she burns your clothes + gives you unisex
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set _penisVisible = false>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<if !$scene.initialCasual && (setup.checkItemTag(setup.getItemFromType("shirt"),['male']) || setup.checkItemTag(setup.getItemFromType("legwear"),['male']))>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_3_wrongclothes'>>
<<elseif $scene.underwearStyle != "male" && (setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male']))>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_maleunderwear'>>
<<elseif (setup.checkItemWorn("shirt_female_office_teal") && setup.checkItemWorn("trousers_female_office_grey") && setup.checkItemTypeWorn("shoes") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings"))>>
<<include inspectionData_clothes>>
<<initRoom>>
<<if !setup.checkItemTypeWorn("cage") && $npc_manager.flags.require_chastity>>
<<set $scene.fromeUnisex=true>>
<<moveTo "event_manager_daily_check_stage_1_nochastity">>
<<else>>
<<moveTo "event_manager_daily_check_stage_1_3">>
<</if>>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.isBodySlotVisible('penis')>>
<<set _penisVisible = true>>
<<set $scene.frisky = true>>
<<set $npc_manager.stagevalues[1].penisincident += 1>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<</if>>
<<if !$scene.initialCasual && $player.sec_style.clothing.unisex == "">>
<<set $player.sec_style.clothing.unisex = "forced">>
<<set _x = setup.clearThoughtList()>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1'>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<<include "addSexStoreOpeningEvent">>
<</if>>
<<addItem "shirt_female_office_teal">>
<<addItem "trousers_female_office_grey">>
<<if !setup.checkItemInInventory('flats_black')>>
<<addItem "flats_black">>
<</if>>
<<if $scene.initialCasual>>
<<applyExperience 'bdsm' 8 'normal' $SEEN_FRIEND>>
<<set _catsuit = "">>
<<if setup.checkItemTypeTag('bodysuit', ['latex'])>>
<<set _catsuit = setup.getItemFromType('bodysuit')>>
<</if>>
<<removeEverythingButUnderwear>>
<<if _catsuit>>
<<wearItem _catsuit true>>
<</if>>
<</if>>
<<deleteUnwornTagItems 'casual'>>
<<deleteItem 'shoes_black'>>
<<set $scene.addUnderwear = false>>
<<if setup.checkItemInInventory('boxershorts') && !setup.checkItemTypeTag('panties', ['female'])>>
<<set $scene.addUnderwear = true>>
<<removeItem "boxershorts" true>>
<<deleteItem "boxershorts">>
<<addItem 'satin_panties'>>
<</if>>
<<if setup.checkItemInInventory('socks') && !setup.checkItemTypeTag('stockings', ['female'])>>
<<set $scene.addUnderwear = true>>
<<removeItem "socks" true>>
<<deleteItem "socks">>
<<addItem 'pantyhose_pink'>>
<</if>>
<<if !setup.checkItemTypeWorn('bra')>>
<<addItem 'satin_bra'>>
<</if>>
<<set $npc_manager.flags.firstcuteoutfit++>>
<<set _bringkey = $npc_manager.flags.require_chastity && $npc_manager.flags.trustplayerwithkey>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if _penisVisible>>
You see a sad smile on forming her lips, as you put your <<getWordMyPenis>> on
<<if $npc_manager.stagevalues[1].penisincident>1>>
display, once again.<br>
<<else>>
display.<br>
<</if>>
<br>
"@@.npc_manager;<<=$player.first_name>>, do you think you might be capable of changing your clothes... well, I do not know quite how to put it... without producing a wardrobe malfunction? That would be greatly appreciated!@@"<br>
<br>
<<else>>
<<if $scene.initialCasual>>
Under <<=setup.getNpcName('npc_manager', 'formal')>> keen, and clearly displeased, eye, you remove your clothes as she neatly stacks each item on the edge of her desk. "@@.npc_manager;Look at these! Totally unbecoming!@@"<br>
<br>
In the blink of an eye she has you bent over the edge of her desk, her hand landing against your unprotected bum once, twice, thrice... and a fourth time to even things up between your two cheeks.<br>
<br>
You're as shocked as you are in pain, panting for a moment as you try to catch your breath only to have your attention diverted once again.
<</if>>
Something smells like it's burning. You turn to look for the source of the smell.<br>
<br>
<<printThought "What the hell is she doing?">><br>
<br>
You see your casual clothes go up in flames in the trash basket, which seems pretty resistant to the flames itself, almost as if it was designed to burn things.<br>
<br>
<<if $npc_manager.flags.spill_event>>
Turning she greets you with a smile. "@@.npc_manager;Oh, sorry, I will have your new outfit in a moment I just figured well... might as well destroy these useless old things, hmm?@@"<br>
<br>
<<printThought "What? She can't do this!">>
<<else>>
<<if $scene.underwearStyle == "male" || setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male'])>>
"@@.npc_manager;Oh yes. You need new clothes, since your old ones seem to have just failed a trial by fire. Though... since I have the fire going already, I think it could use a bit more fuel. Give me those disgusting male underthings, you know you should never wear something like that!@@"<br>
<br>
Before you can think you have done as she said, the final traces of male clothing on your body going up in smoke. She hands you a bag.
<<else>>
"@@.npc_manager;Oh yes. You need new clothes, since your old ones seem to have just failed a trial by fire. And as tempting as it seems to let you work wearing what little you are wear now, that would be to distracting for the rest of the company. Here you go,@@" she explains to you, the light of the flames still casting eerie light over her face as she hands you a bag.
<</if>>
"@@.npc_manager;Go ahead, open it!@@"<br>
<br>
<<switch $player.sec_style.clothing.unisex>>
<<case "forced" "voluntary" "" "strict" "enthusiast">>
You open the bag. Glancing at the label, you note that it looks to be from a rather expensive boutique, though not one you have any personal familiarity with. Inside you find a shirt, slacks and new shoes. On the surface, innocuous; but the shirt is silk, cyan and not something you would call masculine. The slacks look like they will just fit if you hold your breath, and hide none of the secrets you wear underneath. Finally, the shoes are enamel ballet flats. That's what the box says at least. You have no idea what any of those words mean; you'd wear sneakers every day if you could. Looking at things together, there's no denying that this outfit has a rather hefty feminine touch to it.<<if $scene.addUnderwear>> Tucked in the bottom of the bag you also find pink "replacements" for your immolated underthings.<</if>><br>
<br>
"@@.npc_manager;Well, what are you waiting for? These are not going to wear themselves. Hmm... self wearing clothes. Have to talk to R&D about that... anyway, put them on. Consider those your new uniform... for the time being. Until I decide, or you somehow impress me enough, that you should be allowed to wear anything else. And do not even think about going back to your usual male garb. You had your chance and you blew it. Consider these your training wheels for what might yet come.@@"<br>
<br>
<<printThought "What does she mean by that?">>
<<case "obedient" "money">>
You open the bag, but you can already guess what's inside, your suspicions confirmed when you find an identical shirt, slacks and shoes to the ones she gave you after your lunch-time spill.<<if $scene.addUnderwear>>Tucked in the bottom of the bag you also find pink "replacements" for your immolated underthings.<</if>><br>
<br>
<<printThought "Does she buy these in bulk or something?">><br>
<br>
"@@.npc_manager;Hurry up now, you know the drill. I really do not know why you backslid after I gave you something so much nicer to wear, but, well...@@" She grins, the light of the dying fire that was your previous outfit causing ominous shadows to flicker across her face. "@@.npc_manager;We will keep repeating this lesson until it finally burns in...@@"
<<default>>
ERROR: unhandled unisex style: <<=$player.sec_style.clothing.unisex>>
<</switch>>
<</if>>
<br><br>
<<if $scene.initialCasual>>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit_alt" "Throw a fit, this is wrong!" 60 '<<set $scene.style = "forced">>'>>]<br>
[<<moveTo "event_manager_daily_check_stage_1_3_newoutfit_alt" "Your clothes are gone, but perhaps you can turn this to your advantage and talk her into reimbursing you for the expense?" 60 '<<set $scene.style = "money">><<set $shopStatus["mall_apparel_store"].unlocked_inventory.pushUnique("female")>><<set $shopStatus["gym"].unlocked_inventory.pushUnique("female")>>'>>]<br>
<<elseif $options.ezchange>>
<<if !setup.checkItemTypeWorn("cage") && $npc_manager.flags.require_chastity>>
[<<moveTo "event_manager_daily_check_stage_1_nochastity" "Change into the new outfit..." 60 "<<wearItemSet 'unisex_office'>><<if !setup.checkItemTypeTag('panties', ['female'])>><<wearItem 'satin_panties'>><</if>><<if !setup.checkItemTypeTag('stockings', ['female'])>><<wearItem 'pantyhose_pink'>><</if>><<if !setup.checkItemTypeWorn('bra')>><<if setup.checkItemInInventory('satin_bra')>><<wearItem 'satin_bra'>><<else>><<wearItemSlotTag 'bra' 'female'>><</if>><</if>><<set $scene.fromeUnisex=true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Change into the new outfit..." 60 "<<wearItemSet 'unisex_office'>><<if !setup.checkItemTypeTag('panties', ['female'])>><<wearItem 'satin_panties'>><</if>><<if !setup.checkItemTypeTag('stockings', ['female'])>><<wearItem 'pantyhose_pink'>><</if>><<if !setup.checkItemTypeWorn('bra')>><<if setup.checkItemInInventory('satin_bra')>><<wearItem 'satin_bra'>><<else>><<wearItemSlotTag 'bra' 'female'>><</if>><</if>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: manager gives you unisex after you screwed up outfit (casual or wrong outfit after spill)
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set _penisVisible = false>>
<<set $player.cutscene.lockinventory = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.unisexversion = "">>
<<if $player.sec_style.clothing.unisex == "">>
<<if $scene.style == "money">>
<<set $player.sec_style.clothing.unisex = "money">>
<<set _x = setup.clearThoughtList()>>
<<addCredits 100>>
<<setThreshold 'feminization' 'money' 'spilling_incident'>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<set $scene.unisexversion = "money">>
<<elseif $scene.style == "forced">>
<<set $player.sec_style.clothing.unisex = "forced">>
<<set _x = setup.clearThoughtList()>>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1'>>
<<set $scene.unisexversion = "forced">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<else>>
ERROR: unknown new outfit_alt scene.style! <<=$scene.style>>
<</if>>
<<include "addSexStoreOpeningEvent">>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<set $shopStatus["mall_apparel_store"].unlocked_inventory.pushUnique("female")>>
<<set $shopStatus["gym"].unlocked_inventory.pushUnique("female")>>
<<elseif $player.sec_style.clothing.unisex == "forced">>
<<set $scene.unisexversion = "forced">>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<set $scene.unisexversion = "repeat">>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $scene.addClothes = !(setup.checkItemInInventory('shirt_female_office_teal') && setup.checkItemInInventory('trousers_female_office_grey') && setup.checkItemInInventory('trousers_female_office_grey'))>>
<<if $scene.addClothes>>
<<addItemSet 'unisex_office'>>
<</if>>
<<set $scene.addUnderwear = false>>
<<if setup.checkItemInInventory('boxershorts')>>
<<set $scene.addUnderwear = true>>
<<removeItem "boxershorts" true>>
<<deleteItem "boxershorts">>
<<addItem 'satin_panties'>>
<</if>>
<<if setup.checkItemInInventory('socks')>>
<<set $scene.addUnderwear = true>>
<<removeItem "socks" true>>
<<deleteItem "socks">>
<<addItem 'pantyhose_pink'>>
<</if>>
<<if !setup.checkItemTypeWorn("bra")>>
<<addItem 'satin_bra'>>
<</if>>
<<set $npc_manager.flags.firstcuteoutfit++>>
<<destroyMaleClothing $player $now false>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<set $scene.seriousoffense = false>>
<<elseif (setup.checkItemWorn("shirt_female_office_teal") && setup.checkItemWorn("trousers_female_office_grey") && setup.checkItemTypeWorn("shoes") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings"))>>
<<initRoom>>
<<if !setup.checkItemTypeWorn("cage") && $npc_manager.flags.require_chastity>>
<<set $scene.fromeUnisex=true>>
<<moveTo "event_manager_daily_check_stage_1_nochastity">>
<<else>>
<<moveTo "event_manager_daily_check_stage_1_3">>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.unisexversion>>
<<case "forced">>
<<if $scene.underwearStyle == "male" || setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male'])>>
Just as the fire starts to gutter she grins back at you, the light sending eerie shadows flickering across her face. "@@.npc_manager;Why are you standing there like that? Give me those underthings, you know the policy about hiding male-ness beneath your work attire!@@"<br>
<br>
Reluctantly removing the offending items you watch as they are added to the pyre.
<</if>>
As the bonfire of your clothing dies down, she hands you a bag.<br>
<br>
Glancing at the label, you note that it looks to be from a rather expensive boutique, though not one you have any personal familiarity with. Inside you find a shirt, slacks and new shoes. On the surface, innocuous;, but the shirt is silk, cyan and not something you would call masculine. The slacks look like they will just fit if you hold your breath, and hide none of the secrets you wear underneath. Finally, the shoes are enamel ballet flats. That's what the box says at least. You have no idea what any of those words mean; you'd wear sneakers every day if you could. Looking at things together, there's no denying that this outfit has a rather hefty feminine touch to it.<<if $scene.addUnderwear>> Tucked in the bottom of the bag you also find pink "replacements" for your immolated underthings.<</if>><br>
<br>
"@@.npc_manager;Well, put it on!@@" She states with a grin. "@@.npc_manager;And remember — I expect you to wear this, or something like it, in the future. No more masculine clothing for my sweet <<if $fetish.sissy>>SISSI <</if>>Secretary. It seeps into your brain and quite poisons your behaviour.@@"<br>
<br>
You start to object, but give up without speaking — all that would happen would be you getting punished further and given that you don't even have anything else to wear home, well, now seems like a particularly poor time to further antagonize your boss.
<<case "money">>
You point out that even if she is planning on "replacing" the outfit you lost for work purposes, the fact remains that she has now destroyed items of your property without your permission and that it would be only fair for you to receive remuneration.<br>
<br>
She pauses, the light of the fire flickering over her face and lending a devilish cast to her grin.<br>
<br>
<<if $scene.addClothes>>
<<if $scene.underwearStyle == "male" || setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male'])>>
"@@.npc_manager;Of course, for someone so clever, you would think you might have remembered your standing requirements as to your underthings. Come on, take them off.@@" She commands, the rest of your male attire soon joining the pyre as she hands you a bag.
<<else>>
"@@.npc_manager;My, my... seems like someone saved up their cleverness this morning.@@" She hands you a bag.
<</if>>
<br><br>
Glancing at the label, you note that it looks to be from a rather expensive boutique, though not one you have any personal familiarity with. Inside you find a shirt, slacks and new shoes. On the surface, innocuous;, but the shirt is silk, cyan and not something you would call masculine. The slacks look like they will just fit if you hold your breath, and hide none of the secrets you wear underneath. Finally, the shoes are enamel ballet flats. That's what the box says at least. You have no idea what any of those words mean; you'd wear sneakers every day if you could. Looking at things together, there's no denying that this outfit has a rather hefty feminine touch to it.<<if $scene.addUnderwear>> Tucked in the bottom of the bag you also find pink "replacements" for your immolated underthings.<</if>><br>
<br>
"@@.npc_manager;So, the value of the new outfit I just gave you easily exceeds that of what you were wearing earlier, so we could just call it square but, well... I would not want you to think that you were being taken advantage of. So, here is the deal: you put those on, and agree to wear their like every day going forward as part of your "new" dress code under which any sort of masculine clothing is verboten and I give you a one-time payment to cover your destroyed property. Alternatively you could refuse my gift, get no pay and I kick you out of the building for being utterly improperly dressed.@@"<br>
<br>
You start to object that that would mean that you would have to go home wearing nothing but your underthings, but she merely smiles wider. "@@.npc_manager;Hmm, I suppose you should have considered that possibility when you were getting dressed this morning, hmm?@@"<br>
<br>
Your jaw flaps, but no sound comes out, you're stuck, might as well take the extra cash and do what she asks, the alternative would have you even worse off, and without even any money to show for it!
<<else>>
"@@.npc_manager;Hmm, was this all part of your plan, what with you bringing appropriate clothes with you? No matter, I am results focused and I will accept playing this little monetary game if it means you advance forward with greater expediency. Now, it is time for you to make good on such and change.@@"
<</if>>
<br><br>
You sigh and nod, surrendering to her request as she seems practically gleeful to hand you the money and wait expectantly for you to get changed into your new outfit.
<<case "repeat">>
Your request for reimbursement is met with a raised eyebrow followed by an amused laugh.<br>
<br>
"@@.npc_manager;Reimburse you? For failing to dress appropriately to work? Hardly. No, what I SHOULD do is charge you for the clothes I now have to provide you so that you can do your job in something resembling decency.@@"<br>
<br>
Returning to her wardrobe she produces replacements for the "missing" pieces of your outfit. "@@.npc_manager;Here, change.@@"
<<default>>
ERROR: unhandled unisex style: <<=$scene.unisexversion>>
<</switch>>
<br><br>
<<if $options.ezchange>>
<<if !setup.checkItemTypeWorn("cage") && $npc_manager.flags.require_chastity>>
[<<moveTo "event_manager_daily_check_stage_1_nochastity" "Get dressed as instructed." 60 "<<wearItemSet 'unisex_office'>><<if !setup.checkItemTypeWorn('panties')>><<if setup.checkItemInInventory('satin_panties')>><<wearItem 'satin_panties'>><<else>><<wearItemSlotTag 'panties' 'female'>><</if>><</if>><<if !setup.checkItemTypeWorn('stockings')>><<if setup.checkItemInInventory('pantyhose_pink')>><<wearItem 'pantyhose_pink'>><<wearItemSlotTag 'stockings' 'female'>><</if>><</if>><<if !setup.checkItemTypeWorn('bra')>><<if setup.checkItemInInventory('satin_bra')>><<wearItem 'satin_bra'>><<else>><<wearItemSlotTag 'bra' 'female'>><</if>><</if>><<set $scene.fromeUnisex=true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_1_3" "Get dressed as instructed." 60 "<<wearItemSet 'unisex_office'>><<if !setup.checkItemTypeWorn('panties')>><<if setup.checkItemInInventory('satin_panties')>><<wearItem 'satin_panties'>><<else>><<wearItemSlotTag 'panties' 'female'>><</if>><</if>><<if !setup.checkItemTypeWorn('stockings')>><<if setup.checkItemInInventory('pantyhose_pink')>><<wearItem 'pantyhose_pink'>><<wearItemSlotTag 'stockings' 'female'>><</if>><</if>><<if !setup.checkItemTypeWorn('bra')>><<if setup.checkItemInInventory('satin_bra')>><<wearItem 'satin_bra'>><<else>><<wearItemSlotTag 'bra' 'female'>><</if>><</if>>">>]
<</if>>
<</if>>
</div>/*#
#desc: phase 1 get in trouble for trying to change clothes during morning inspection
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $scene.underwearStyle != "male" && (setup.checkItemTag(setup.getItemFromType("panties"),['male']) || setup.checkItemTag(setup.getItemFromType("stockings"),['male']))>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_1_2_maleunderwear'>>
<<elseif setup.checkItemWorn("shirt_female_office_teal") && setup.checkItemWorn("trousers_female_office_grey") && setup.checkItemTypeWorn("shoes") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings")>>
<<include inspectionData_clothes>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_1_3">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As you try to put on your regular clothes, you can hear <<=ps(setup.getNpcName('npc_manager', 'formal'))>> foot tapping on the floor.<br>
<br>
"@@.npc_manager;Honestly <<=$player.first_name>>, I have no idea where you carry all these items, but I think my instructions were clear enough. This sort of thing is just not an option for you anymore. So do yourself a favour and wear the clothes I have requested of, before I am forced to consign any more of your property to a viking funeral. Hurry, or I will add the rest of all that junk you are carrying and have you work and walk home in your underwear.@@".<br>
<br>
You gulp audibly. You decide it would be best not to find out how far she is willing to go to make a point.
</div>/*#
#desc: manager reacts to seeing you in chastity cage during morning inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.require_chastity = true>>
<<if $player.sec_style.submission.chastity != "money">>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<else>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<set $daily.revokedKeyToday = true>>
<</if>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11'
6
'event_psychiatrist_session_chastity_1'
false
>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are ready for the start of your normal morning inspection, but she pauses, her gaze fixating on
<<if setup.checkItemVisible(setup.getItemFromType("cage"))>>
your chastity device, in full view thanks to your present lack of underthings.<br>
<br>
<<if setup.isCage()>>
"@@.npc_manager;My, my, wearing a chastity cage to work, are we?@@"
<<else>>
"@@.npc_manager;My, my, wearing a chastity belt to work, are we? How secure!@@"
<</if>>
<<else>>
the bulge in your panties.<br>
<br>
"@@.npc_manager;What are you — are you hiding something under there?@@"
<</if>>
<br><br>
You blush in embarrassment, the look of interest on her face enough to send your heart racing.<br>
<br>
<<printThought "Oh <<getWordGod>>, what have I done?">><br>
<br>
[<<moveTo "event_morning_inspection_chastity_2" "Face the consequences." 30>>]
</div>/*#
#desc: manager reacts to seeing you in chastity cage during morning inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.chastity_react = true>>
<<if setup.checkItemVisible(setup.getItemFromType("cage"))>>
<<set $scene.start_exposed = true>>
<<else>>
<<set $scene.underwear = setup.getItemFromType("panties")>>
<<if $scene.underwear != "">>
<<removeItem $scene.underwear true>>
<</if>>
<<set $scene.garters = setup.getItemFromType("garter")>>
<<if $scene.garters != "">>
<<removeItem $scene.garters true>>
<</if>>
<<set $scene.leggings = setup.getItemFromType("stockings")>>
<<if $scene.leggings != "">>
<<removeItem $scene.leggings true>>
<</if>>
<<set $scene.start_exposed = false>>
<</if>>
<<set $scene.hornyVariant = setup.calcErection()>>
<<if $scene.hornyVariant>>
<<set $player.timebased.horny = 25>>
<<applyExperience 'humiliation' 13 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.start_exposed>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> focus remains on your exposed <<if setup.isCage()>>cage<<else>>chastity belt<</if>>, her expression transitioning from surprise to excitement.
<<else>>
Giving you a once over glance, <<=setup.getNpcName('npc_manager', 'formal')>> stops at the slight bulge between your legs.<br>
<br>
"@@.npc_manager;What is this?@@" She asks, poking with one finger to come up against the rigid <<if setup.isCage()>>frame of your chastity cage<<else>>front shield of your chastity belt<</if>>. One eyebrow cocked in curiosity, she pulls down your undergarments to expose your <<getWordMyPenis>>. The sight of it brings an excited smile to her face. In a blur, you find yourself stripped from the waist down as she explains that she wants to get a "@@.npc_manager;Complete picture of the situation.@@"
<</if>>
<br><br>
"@@.npc_manager;Oh my... I had not expected this, oh this is just a wonderful development, you <<if setup.isCage()>>caged yourself<<else>>locked yourself in chastity<</if>>!@@" Her finger traces over your prison as she smiles at you with pride. "@@.npc_manager;This is just stunning evidence that I absolutely made the right decision in hiring you... locking yourself up unprompted... oh you were meant to be a <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"<br>
<br>
<<printThought "Wait, unprompted... was this going to be part of her plan anyway? What the hell? What type of job is this?">><br>
<br>
Her fingers shift to toying with the lock to your chastity device as she looks you in the eye.<br>
<br>
"@@.npc_manager;So, my dear, where is the key to this delightful device?@@"<br>
<br>
<<switch $player.sec_style.submission.chastity>>
<<case "money">>
You explain that you do not have the key.<br>
<br>
Her eyebrow raises and her expression darkens. "@@.npc_manager;Oh? Found an owner already have we?@@"<br>
<br>
<<printThought "An owner? Already? Wait... is she jealous?">><br>
<br>
You blush and hurriedly explain that no, the device is part of a product trial you are taking part in for <<printShopName 'mall_sexstore'>>, the new sex toy store in the mall.<br>
<br>
"@@.npc_manager;I see, sort of a reverse-prostitution. Paid to lock yourself away, how interesting. That said... well, as much as you belong in chastity, even more important is the fact that you remember that I am the one in control. While you being locked in chastity is certainly an improvement over your previous state, the fact that I am not the one in control of that fact... well, you can see how that goes completely against the subordinate/superior hierarchy established between the two of us.@@"<br>
<br>
You twitch
<<if setup.isCage()>>
inside your cage
<<else>>
beneath your chastity belt
<</if>>
at the implications of her words.<br>
<br>
"@@.npc_manager;The fact that you would make such a move, surrendering yourself for a few credits...@@" She shakes her head. "@@.npc_manager;In some ways this is as much a flaunting loss of control on your part than if you had exposed yourself to me, and, for your own good, will be addressed in much the same way.@@"<br>
<br>
<<if $scene.hornyVariant>>
"@@.npc_manager;Though... speaking of control you seem to be, how best to put this... struggling against your prison?@@"<br>
<br>
You blush at the implication, <<if setup.isCage()>>your cage bouncing slightly at the attention, <</if>>she smiles, delighting in your humiliation.<br>
<br>
"@@.npc_manager;Before we continue how about we attend to that little problem?@@"<br>
<br>
Before you can think what that might involve she has retrieved what turns out to be a cold pack from her desk, <<if setup.isCage()>>wrapping it around your cage<<else>>pressing it against the front shield of your chastity belt<</if>> as you shiver and wilt. "@@.npc_manager;Much better, hmm?@@"<br>
<br>
You bashfully look away, though even as she withdraws the ice pack you find your fires of arousal dimmed, but not snuffed.<br>
<br>
<<printThought "Stupid drugs...">><br>
<br>
<</if>>
She takes a step back. "@@.npc_manager;Put your underwear back on and follow me... unless you would like to quit right now in favour of your new side-gig...@@"<br>
<br>
<<printThought "What? How did this happen? She can't fire me for this... can she?">><br>
<br>
As you look back at her withering gaze, you realise that of course she can. She can do anything she wants...<br>
<br>
[<<moveTo "gameover_chastity_refuse" "Screw her ultimatum, refuse!" 120>>]<br>
[<<moveTo "event_morning_inspection_chastity_fixer" "You have too much to lose, do as she commands." 120>>]
<<case "voluntary">>
<<if setup.checkItemInInventory(setup.getItemObj(setup.getItemFromType("cage")).lockable[1])>>
You explain that you have the key with you and she waits as you retrieve it from your clothes and hand it to her.<br>
<br>
"@@.npc_manager;Perfection, once again you are ahead of the game.@@" She smiles at your look of confusion and continues. "@@.npc_manager;Of course a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> needs their chastity device to keep her behaved. So long as you remain a good <<if $fetish.sissy>>SISSI <</if>>Secretary you just need to wear it for work. Every morning I expect you to be properly locked and secured and ready to hand over the key.@@"<br>
<br>
Taking the key from your weak grasp, she places it in a small dish at the corner of your desk. "@@.npc_manager;So long as you are a well behaved <<if $fetish.sissy>>SISSI <</if>>Secretary, the key can remain here, and you will be allowed to take it home every evening. If you prove more... mischievous we will advance to more... restrictive measures.@@"<br>
<br>
You gulp at the implication, staring at the key which now seems so very out of reach.
<<else>>
You explain that you left the key at home.<br>
<br>
"@@.npc_manager;Ah, I see. Well, that is certainly a noble instinct so that you are not tempted during the day but, well... when you are at work I expect to be in COMPLETE control.@@"<br>
<br>
She leans in, her face looming over you, the combination of her smile and her <<if setup.isCage()>>grasp around your cage<<else>>hand pressed against the front shield of your chastity belt<</if>> having your weak in the knees. She steps back, releasing her grasp and continuing more casually. "@@.npc_manager;Starting <<if $now.getUTCDay()==5>>Monday<<else>>tomorrow<</if>> you should come to work locked in a chastity device. Cage or belt, whichever you prefer, but bring the key with you. For safe keeping we will put it here.@@" She taps her finger on a dish that sits near the corner of your desk. "@@.npc_manager;You will be allowed to take it home, but I want it here where I can keep an eye on it when you are working.@@"
<</if>>
<br><br>
<<if $scene.hornyVariant>>
"@@.npc_manager;Now, on the topic of control you seem to be, how best to put this... struggling against your prison?@@"<br>
<br>
You blush at the implication<<if setup.isCage()>>, your cage bouncing slightly at the attention,<<else>>and<</if>> she smiles, delighting in your humiliation.<br>
<br>
"@@.npc_manager;Before we continue how about we attend to that little problem?@@"<br>
<br>
Before you can think what that might involve she has retrieved what turns out to be a cold pack from her desk, <<if setup.isCage()>>wrapping it around your cage<<else>>pressing it against the front shield of your chastity belt<</if>> as you shiver and wilt. "@@.npc_manager;Much better, hmm?@@"<br>
<br>
<<if setup.checkItemInInventory(setup.getItemObj(setup.getItemFromType("cage")).lockable[1])>>
You bashfully look away, too nervous to ask why she couldn't have just used the key to get you off "conventionally" but, you suppose you should expect such by now.
<<else>>
You bashfully look away, wishing you had the presence of foresight to bring the key with you for a less... uncomfortable "attending to" though, as you think about it you somehow doubt she would have had you jerk off in the office...
<</if>>
Your thoughts whirl at what else this crazy <<=setup.getNpcName('npc_manager', 'title')>> of yours might have planned for you as, even as she withdraws the ice pack, you find your fires of arousal dimmed, but not snuffed.<br>
<br>
<<printThought "Stupid drugs...">><br>
<br>
<</if>>
She looks at you with a wide smile, sighing in contentment. "@@.npc_manager;Ah, this is just such a wonderful day already but, well, we had still better get to your inspection! Oh and I will have a bit of a reward for you at the end of the day for this simply exemplary act.@@"<br>
<br>
Still reeling at what all just happened, you weakly nod as her gaze lingers a few seconds longer on your chastity device before she motions you to fix your underthings as she resumes scanning you head to toe.<br>
<br>
[<<moveTo "event_morning_inspection_chastity_fixer" "Continue." 120>>]
<<default>>
ERROR unexpected sec_style.chastity <<=$player.sec_style.submission.chastity>>
<</switch>>
</div>/*#
#desc: put clothing back on after given chastity
#status: FINISHED 0.4.0.0
#*/
<<if $scene.underwear != "">>
<<wearItem $scene.underwear true>>
<</if>>
<<if $scene.garters != "">>
<<wearItem $scene.garters true>>
<</if>>
<<if $scene.leggings != "">>
<<wearItem $scene.leggings true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $player.sec_style.submission.chastity == "money">>
<<moveTo 'event_manager_stage1_end_punishment_alt_intro'>>
<<else>>
<<moveTo 'event_manager_daily_check_stage_1_2'>>
<</if>>/*#
#desc: manager notice unisex + updates requirements
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Turning in place you give <<=setup.getNpcName('npc_manager', 'formal')>> a full three-sixty degree look at your androgynous outfit.<br>
<br>
Turning back around to face her you find her looking back with a wide smile. "@@.npc_manager;Oh, what a lovely choice you made for work today. Far more appropriate for your role as my <<if $fetish.sissy>>SISSI <</if>>Secretary. In fact... yes, dress code revision! From now on no more of that ugly, unflatteringly generic... masculine attire.@@" The way she says the word masculine it was a foul taste in her mouth. "@@.npc_manager;Starting <<if $now.getUTCDay()==5>>Monday<<else>>tomorrow<</if>> morning you should consider this your new "uniform"... unless you think you can come up with something I like even better.@@"<br>
<br>
You consider responding but, really, what is there to say? The time to object was back when she commanded you to switch to female undergarments and, besides, you picked this outfit yourself. You just smile and nod, thanking her for the compliment.<br>
<br>
"@@.npc_manager;But of course, I will always try to support you improving yourself. Though if I was to comment every time you looked cute well... I daresay I would get nothing else done! But enough with that, for now, it is time for your full morning inspection. Let us hope that this step forward is an indication of you having met or surpassed all of your requirements.@@"<br>
<br>
<<if $npc_manager.stage == 1>>
[<<moveTo "event_manager_daily_check_stage_1_1" "Continue." 30>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_2_1" "Continue." 30>>]
<</if>>
</div>/*#
#desc: out of chastity stage 1 after its required
#status: RELEASED 0.8.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 100>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<if setup.checkNaked()>>
<<useClothSetPop 'daily_evaluation_clothes'>>
<<useClothSetPush 'stage1end'>>
<<removeAllClothing>>
<<moveTo "event_manager_stage1_end_punishment_2">>
<</if>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.fromeUnisex>>
<<=setup.getNpcName('npc_manager', 'formal')>> seems to remember something, her expression darkening as she stares
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> pauses
<</if>>
as she stares between your legs, a frown slowly forming on her face.<br>
<br>
"@@.npc_manager;This... where is your chastity? We agreed that such would be part of your requirements, that you would show up without it so soon...@@"<br>
<br>
You're trying to think of a response that will keep you from getting in any more trouble, but she is already moving on as she shakes her head. "@@.npc_manager;With your enthusiasm I was giving you freedom to continue on such path... but it would seem you are actually in need of additional control. No, we have waited long enough for this... get up on the couch and remove the rest of your things.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_stage1_end_punishment_2" "Do as she commands." 120 "<<useClothSetPop 'daily_evaluation_clothes'>><<useClothSetPush 'stage1end'>><<removeAllClothing>>">>]
<<else>>
<<hint $options "Remove clothing in the inventory.">>
<</if>>
</div>/*#
#desc: manager offers tblock for money
#status: FINISHED 0.8.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set $player.sec_style.body.tblock = "money">>
<<setTmpEffect 'tblock_eternal'>>
<<addNpcTheme 'npc_manager' 'transformation' "theme_manager_penis_shrink"
0
'theme_manager_penis_shrink_1'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' "theme_psychiatrist_penis_shrink"
0
'theme_psychiatrist_penis_shrink_1'
false
>>
<<set _fem = setup.getTotalValue("feminization")>>
<<applyExperience 'feminization' _fem 'terrible' $SEEN_FRIEND>>
<<set $player.work.payment += 50>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You nod in acceptance of <<=ps(setup.getNpcName("npc_manager","formal"))>> offer. She seems to be fighting to suppress an almost gleeful grin as she hands you a medium sized pill.<br>
<br>
"@@.npc_manager;Wonderful. I will update your base pay once I return to my desk... if you would just take that pill? Yes, just put it under your tongue and wait a moment for it to dissolve.@@"<br>
<br>
You do as she says, feeling a slight tingle as the pill breaks down.<br>
<br>
"@@.npc_manager;Excellent, that tingle is the magic of the drug eating away at those nasty masculinising hormones. Yes, so much more appropriate for someone like you, even if it took a little bribe for you to realise it...@@" Your heart beats faster, unsure if you've made a mistake... but unable to stop yourself from swallowing the last of the pill as she watches on with a smile. "@@.npc_manager;Such an eager swallower! That should come in handy later... for now, well, we have an inspection to finish...@@"
<<else>>
You decline <<=ps(setup.getNpcName("npc_manager","formal"))>> offer.<br>
<br>
"@@.npc_manager;Hmm, well, it was just an idea. Good luck in staying... under control. Shall we continue?@@"
<</if>>
<br><br>
[<<moveTo $scene.inspectionReturn "Resume inspection." 300 '<<include "setLastSeenCage">>'>>]
</div>/*#
#desc: manager offers tblock for money
#status: FINISHED 0.8.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.pink_pill.missed_inspect += 1>>
<<if $scene.pill>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<if $player.flags.pink_pill.times_od1 < 1>>
<<changeHorny 50>>
<<setTmpEffect 'sissypill_mk1'>>
<<set $scene.cureWithdrawl = setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<if $scene.cureWithdrawl>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<<applyFatigue -50>>
<</if>>
<</if>>
<<else>>
<<set $npc_manager.criticalanger+=1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.pill>>
<<=setup.getNpcName("npc_manager","formal")>> watches intently as you swallow the offered pill. You feel a rush of energising arousal from the moment it touches your tongue, and <<=setup.getNpcName("npc_manager","formal")>> smiles... yet her expression appears every-so-slightly forced.<br>
<br>
"@@.npc_manager;Much better. You agreed to this job, remember, I am only doing my part to ensure that you are as successful at your position as possible. Now, let us confirm that you have made no additional errors.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_1_2" "Continue." 30>>]
<<else>>
You refuse the pill and <<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;I do not have time to deal with this flagrant refusal to follow requirements, but know that, per your agreement with the company, this failure to take your medication counts as a severe violation of your contract. <<if $npc_manager.criticalanger >= 5>>Violations that, I am afraid, you have had too many of. I hope you enjoy your sober... and unemployed, future life<<else>>A reminder that if you reach five of those, well... your employment with me will be at an end.<</if>>@@"<br>
<br>
<<if $npc_manager.criticalanger >= 5>>
[<<moveTo "event_manager_stage_1_drug_fail" "Dress and leave..." 60>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_1_finalize" "Dress and go." 60 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: forced trigger for masturbation in stage 1
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("cage") || $npc_manager.stage >= 2>>
<<completeWorkEvent>>
<<initRoom>>
<<moveTo "event_work_generic">>
<<else>>
<<changeHorny 100>>
<<if setup.getWillpower() == 0>>
<<applyStress 1000>>
<<else>>
<<applyStress 10>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
As you work through the afternoon your arousal steadily grows, and with it your distraction.<br>
<br>
<<printThought "Curse those shady drugs... it's never been this bad before... I don't know if I can make it through without relief.">><br>
<br>
<<if $player.timebased.stress >= 100 && setup.getWillpower() == 0>>
[@@.link_locked;Your arousal, combined with your stress, is too much. You HAVE to deal with this or you're going to go insane.@@]<br>
<<elseif $player.timebased.stress >= 75>>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_strict_masturbation_forced_2" "Grit your teeth and keep focusing on your work." 360 "<<spendWillpower 2>>">>] <<hint $options "Focusing through your arousal will cost willpower">><br>
<<else>>
[@@.link_locked;Your arousal, combined with your stress, is too much. You HAVE to deal with this or you're going to go insane.@@]<br>
<</if>>
<<elseif $player.timebased.stress >= 50>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_strict_masturbation_forced_2" "Grit your teeth and keep focusing on your work." 360 "<<spendWillpower 1>>">>] <<hint $options "Focusing through your arousal will cost willpower">><br>
<<else>>
[@@.link_locked;Your arousal, combined with your stress, is too much. You HAVE to deal with this or you're going to go insane.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_strict_masturbation_forced_2" "Keep focusing on your work." 360>>]<br>
<</if>>
[<<moveTo "event_strict_masturbation_forced_desk_1" "Squeeze a quick one out at your desk." 180>>]<br>
[<<moveTo "event_strict_masturbation_forced_bathroom_1" "Head to the bathroom for some more secure privacy to get some relief." 300>>]
</div>/*#
#desc: forced trigger for masturbation in stage 1 resist 1
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getWillpower() == 0>>
<<applyStress 1000>>
<<else>>
<<applyStress 30>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You keep working, but it doesn't help, the burning in your loins having you shift in your chair and constantly look at the clock. You've never been this aroused, and you'd swear it's poisoning your mind, the idea of reaching between your legs to get yourself off moving from unthinkable, to necessary... to edging towards irresistible...<br>
<br>
<<if $player.timebased.stress >= 100 && setup.getWillpower() == 0>>
[@@.link_locked;Your arousal, combined with your stress, is too much. You HAVE to deal with this or you're going to go insane.@@]<br>
<<else>>
[<<moveTo "event_strict_masturbation_forced_3" "Put everything you have into focusing on your work." 360 "<<set _wp = setup.getWillpower()>><<spendWillpower _wp>>">>] <<hint $options "Focusing through your arousal will take all your remaining willpower">><br>
<</if>>
[<<moveTo "event_strict_masturbation_forced_desk_1" "Squeeze a quick one out at your desk." 180>>]<br>
[<<moveTo "event_strict_masturbation_forced_bathroom_1" "Head to the bathroom for some more secure privacy to get some relief." 300>>]
</div>/*#
#desc: forced trigger for masturbation in stage 1 resist 2
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getWillpower() == 0>>
<<applyStress 1000>>
<<else>>
<<applyStress 30>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You aren't even working at this point, just sitting at your chair, fighting to keep control over the raging fire of arousal burning through your body. You need to cum, need it more than ever before, even the embarrassment of jizzing in your pants sounding appealing... yet, no matter how you grind in your chair, relief remains out of reach. You are going to have to take matters in hand...<br>
<br>
<<if $player.timebased.stress >= 100 && setup.getWillpower() == 0>>
[@@.link_locked;Your arousal, combined with your stress, is too much. You HAVE to deal with this or you're going to go insane.@@]<br>
<<else>>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_strict_masturbation_forced_4" "Grit your teeth and keep focusing on your work." 360 "<<spendWillpower 2>>">>] <<hint $options "Focusing through your arousal will cost willpower">><br>
<<else>>
[@@.link_locked;Your arousal, combined with your stress, is too much. You HAVE to deal with this or you're going to go insane.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_strict_masturbation_forced_desk_1" "Squeeze a quick one out at your desk." 180>>]<br>
[<<moveTo "event_strict_masturbation_forced_bathroom_1" "Head to the bathroom for some more secure privacy to get some relief." 300>>]
</div>/*#
#desc: forced trigger for masturbation in stage 1 irresistible
#status: RELEASED 0.8.8.0
#ignore_spell: 10k
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 1000>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You white-knuckle the desk as you try to hold on to decorum... but it is no use. Your heart is pounding, you're breathing hard, and you're sweating like you just ran a 10K. The stress of your new job and these past weeks seems to only stoke your arousal further, pushing you to maddening heights, if your mind was clear you might come up with some other idea... but all you can think about is getting off, the fact your tyrannical manager is mere meters away in her inner office only bolstering your unstoppable urge...<br>
<br>
<<printThought "I can't... just one little orgasm...">><br>
<br>
[<<moveTo "event_strict_masturbation_forced_desk_1" "Squeeze a quick one out at your desk." 180>>]<br>
[<<moveTo "event_strict_masturbation_forced_bathroom_1" "Head to the bathroom for some more secure privacy to get some relief." 300>>]
</div>/*#
#desc: force masturbate stage 1 at desk
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You pull at your clothes and wrap your hand around your hard<<if $fetish.cum>>, dripping <</if>><<getWordMyPenis>>. The mere touch of your hand is enough to elicit a low moan, and you jerk frantically, rocketing towards an orgasm that you need more than anything, every pump pulling you closer... and making you want it even more as you feel on the verge of setting a speed-record for climax...<br>
<br>
[<<moveTo "event_strict_masturbation_forced_desk_2" "Yes!" 180>>]
</div>/*#
#desc: caught force masturbate stage 1 at desk
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyStress 50>>
<<completeWorkEvent>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You cry out in orgasm, the pleasure and satisfaction so intense your vision flickers as you go stiff<<if $fetish.cum>> and rain a massive fountain of cum across your desk<</if>>.<br>
<br>
"@@.npc_manager;Well.@@"<br>
<br>
That single word focuses your attention like a spotlight as your relief turns to panic and you look up to see <<=setup.getNpcName('npc_manager', 'formal')>> standing over you, a look of cold disappointment on her face.<br>
<br>
"@@.npc_manager;Come... this failure... well, it is a clear indication that I have been too lax in your development. It is time to... accelerate things.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_strict_1" "Follow..." 180 "<<set $scene.strict=true>>">>]
</div>/*#
#desc: forced jerk off in office bathroom
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Work Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Overcome with lust, you barely have the wherewithal to sprint for the relative privacy of the bathrooms, almost stumbling through the door as each step sends jolts of arousal through your body as your clothes rub against your sensitive, desperate for relief <<getWordMyPenis>>.<br>
<br>
Seemingly alone, you scramble for a stall and pull at your clothes. The mere touch of your hand is enough to elicit a low moan, and you jerk frantically, rocketing towards an orgasm that you need more than anything, every pump pulling you closer... and making you want it even more as you feel on the verge of setting a speed-record for climax...<br>
<br>
[<<moveTo "event_strict_masturbation_forced_bathroom_2" "Yes!" 180>>]
</div>/*#
#desc: forced jerk off in office bathroom, caught
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<applyStress 50>>
<<completeWorkEvent>>
<</if>>
<<set $player.location = "Work Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You cum, hard<<if $fetish.cum>>, spraying your climax across the floor in front of you...<</if>> still looking down you see a set of heels, your heart skips a
<<if !State.hasPlayed("room_office_lunchbreak_toilet_female")>>
beat.<br>
<br>
<<printThought "Did I end up in the women's bathroom by mistake?">><br>
<br>
The
<<else>>
beat as the
<</if>>
stall door swings open, and your gaze traces up to see <<=setup.getNpcName('npc_manager', 'formal')>> standing over you.<br>
<br>
"@@.npc_manager;Well.@@" She states as she takes a step closer, leaving you feeling VERY trapped, the relief you felt moments earlier now turning to panic as she looks down at you with cold disappointment.<br>
<br>
"@@.npc_manager;Come... this failure... well, it is a clear indication that I have been too lax in your development. It is time to... accelerate things.@@"<br>
<br>
[<<moveTo "event_manager_stage1_end_strict_1" "Follow..." 180 "<<set $scene.strict=true>>">>]
</div>/*#
#desc: A bad girl needs to be punished
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom_cape")>>
<div id="invframe" class="scrolltext">
Walking into the inner office for your evening evaluation, you are taken somewhat off guard by the fact that <<=setup.getNpcName('npc_manager', 'formal')>>, regally sitting behind her desk, is wearing a concealing silk robe.<br>
<br>
Looking quite stern, she freezes you with a glance and shakes her head slowly.<br>
<br>
"@@.npc_manager;My dear, naughty <<=$player.first_name>>... I had such high hopes for you, going so far as to give you a chance at a new career, a fresh start, but you seem to fight at every turn, disobedient, ineffective... I dare say that you are so far from what I would expect from a proper <<if $fetish.sissy>>SISSI <</if>>Secretary that my task may be impossible... and yet...@@"<br>
<br>
She smiles, but not a friendly smile. It is the smile of a spider looming over its entrapped prey, the smile of a demon after the contract has been signed, of the chessmaster saying the words "checkmate" in a match against death. Her grin pierces you like a knife, as scary as it is exhilarating.<br>
<br>
<<if $npc_manager.flags.cruel>>
"@@.npc_manager;I have one final thing to try, one more act to drill into you what you need and what you are. To accept will be to surrender your body to me for the rest of the evening, a sacrifice that will both preserve your position in my employ and, hopefully, re-orient you so that your career here may... progress. Of course saying no is not an option... not for you.@@"<br>
<br>
She leans forward, just far enough that you can catch a glimpse down the front of her robe of bare, seductive cleavage.<br>
<br>
"@@.npc_manager;No, for you there is no choice, only obedient surrender... Willing, or not...@@"<br>
<br>
The combination of her outfit and her gaze has you rooted in place, even as your thoughts cast back to the decisions that lead you to this point...<br>
<br>
[<<moveTo "event_manager_pegging_0_bad_girl_1" "Remain where you are." 60>>]
<<else>>
"@@.npc_manager;I have one final thing to try, one more act to drill into you what you need and what you are. To accept will be to surrender your body to me for the rest of the evening, a sacrifice that will both preserve your position in my employ and, hopefully, re-orient you so that your career here may... progress. If you say no... well, you will walk out through that door and you will never see me again.@@"<br>
<br>
<<if $player.money.corporate_debt > 0>>
She pauses just long enough for you to start to process her offer before continuing.<br>
<br>
"@@.npc_manager;Oh, I should add, if you decide to terminate your employee you will immediately become liable for your full company debt — all <<=$player.money.corporate_debt>> credits of it.@@"<br>
<br>
<</if>>
She leans forward, just far enough that you can catch a glimpse down the front of her robe of bare, seductive cleavage.<br>
<br>
"@@.npc_manager;Well, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. It is time to choose...@@"<br>
<br>
[<<moveTo "gameover_grue" "Clean out your desk and leave the building.">>] <<hint $options "She seems serious... and I have no idea what I am going to do without this job...">><br>
[<<moveTo "event_manager_pegging_0_bad_girl_1" "Nod your assent and remain where you are." 60>>]
<</if>>
</div>/*#
#desc: slightly different start then the original one.
#status: FINISHED 0.7.4.0
#*/
<<if $player.sec_style.sex.pegging == "strict">>
<<set $npc_manager.flags.pegging.base_style = "strict">>
<<set $scene.peggin_approval = 0>>
<<elseif ["strict", "forced"].includes(setup.getAverageSecStyle()) && ($npc_manager.anger > 5 || $npc_manager.flags.cruel)>>
<<if setup.getAverageSecStyle() == "strict" || $npc_manager.flags.cruel || $npc_manager.anger >= 10 && $npc_manager.affection <= 0>>
<<set $npc_manager.flags.pegging.base_style = "strict">>
<<else>>
<<set $npc_manager.flags.pegging.base_style = "forced">>
<</if>>
<<set $scene.peggin_approval = 0>>
<<elseif setup.getTotalValue("whoring") >= 7 && setup.getAverageSecStyle() == "money">>
<<set $npc_manager.flags.pegging.base_style = "money">>
<<set $scene.peggin_approval = 1>>
<<elseif ($npc_manager.flags.trustplayerwithkey && $npc_manager.flags.require_chastity || $player.sec_style.submission.permanent_key == "obedient" || $player.sec_style.submission.permanent_key == "voluntary" || $player.sec_style.submission.permanent_key == "enthusiast" || !$npc_manager.flags.require_chastity && ["obedient", "enthusiast", "voluntary"].includes(setup.getAverageSecStyle())) && $npc_manager.anger==0 && $npc_manager.affection > 5>>
<<set $npc_manager.flags.pegging.base_style = "obedient">>
<<set $scene.peggin_approval = 5>>
<<elseif setup.getTotalValue("whoring") >= 5 || setup.getAverageSecStyle() == "money">>
<<set $npc_manager.flags.pegging.base_style = "money">>
<<set $scene.peggin_approval = 1>>
<<else>>
<<set $npc_manager.flags.pegging.base_style = "voluntary">>
<<set $scene.peggin_approval = 2>>
<</if>>
<<if !$player.sec_style.sex.pegging>>
<<set $player.sec_style.sex.pegging = $npc_manager.flags.pegging.base_style>>
<</if>>
<<if !$player.sec_style.sex.sex_woman>>
<<set $player.sec_style.sex.sex_woman = $npc_manager.flags.pegging.base_style>>
<</if>>
<<set $scene.doctorTask = false>>
<<if $now.getUTCDay() == 2>>
<<if ($currentTasks.hasOwnProperty('event_doctor_first_appointment') && !$currentTasks["event_doctor_first_appointment"].finished) || ($currentTasks.hasOwnProperty('event_doctor_reup') && !$currentTasks["event_doctor_reup"].finished)>>
<<set $scene.doctorTask = true>>
<</if>>
<</if>>/*#
#desc: slightly different start then the original one.
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include calcBaseStyle>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile blossoms even wider. With a shrug she sheds the robe, the silken fabric sliding from her body like shed skin, revealing... your eyes go wide as you freeze in shock.<br>
<br>
While your manager gives off an air of control and authority at all times, this... this is different, she looks at you like a Queen being met by a supplicant, an Empress being met by a worshiper, a Goddess looking down at a sacrifice... the slight smile on her face is as welcoming as it is infused with foreboding power.<br>
<br>
Almost as much as her demeanour, it is her outfit that sets your heart racing. Gone is her slightly risque, yet professional, dress and in its place... you shudder.<br>
<br>
Most of her body is still hidden by the stout wooden desk behind which she sits, but what you can see is more than enough. Her top is almost more akin to armour than clothing, leather perfectly formed to her body highlighting her strong shoulders and beautiful neck and drawing even more attention to what is exposed — her twin, beautiful breasts hanging completely free, intricate shining nipple shields adorning the tip of each. Her upper arms exposed she is wearing handless gloves, smooth kid leather running up just past her elbows and drawing attention to the slender fingers folded in front of her chin as she gazes across at you.<br>
<br>
Nigh petrified and far too intimidated to flee, about the only choice you have in this moment is where to direct your gaze.<br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_manager_pegging_1_eyes" "Look her in the eye." 60>>]
<<else>>
[@@.link_locked;You don't feel daring enough to look straight into her eyes!@@]
<</if>>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_manager_pegging_1_breasts" "Peer at her exposed breasts." 60>>]
<<else>>
[@@.link_locked;You are already too chagrined to risk staring at her breasts!@@]
<</if>>
<br>
[<<moveTo "event_manager_pegging_1_floor" "Stare at the floor." 60>>]<br>
</div>/*#
#desc: Walk into office to find her in new outfit, choice of where to look -> (eyes, breasts, floor)
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include calcBaseStyle>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office for your normal end of day evaluation. As soon as you lay eyes on her seated form behind her large desk, you freeze.<br>
<br>
While your manager gives off an air of control and authority at all times, this — this is different, she looks at you like an Empress being met by a supplicant, a Goddess looking down at a worshiper, the slight smile on her face as welcoming as it is infused with foreboding power.<br>
<br>
Almost as much as her demeanour, it is her outfit that gives you pause and sets your heart racing. Gone is her normal risque, yet professional dress and in its place... you shudder.<br>
<br>
Most of her body is yet hidden by her being seated behind the stout wooden desk, but what you can see is more than enough. Her top is almost more akin to armour than clothing, leather perfectly formed to her body highlighting her strong shoulders and beautiful neck and drawing even more attention to what is exposed — her twin, beautiful breasts hanging completely free, intricate shining nipple shields adorning the tip of each. Her upper arms exposed, she is wearing handless gloves, smooth kid leather running up just past her elbows and drawing attention to the slender fingers folded in front of her chin as she gazes across at you.<br>
<br>
Nigh petrified and far too intimidated to flee, about the only choice you have in this moment is where to direct your gaze.<br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_manager_pegging_1_eyes" "Look her in the eye." 60>>]
<<else>>
[@@.link_locked;You don't feel daring enough to look straight into her eyes!@@]
<</if>>
<br>
[<<moveTo "event_manager_pegging_1_breasts" "Peer at her exposed breasts." 60>>]<br>
[<<moveTo "event_manager_pegging_1_floor" "Stare at the floor." 60>>]<br>
</div>/*#
#desc: pegging intro - look at manager's eyes
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.looked_at = "eyes">>
<<set $scene.peggin_approval += 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Mustering your courage, you meet <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze. She stares directly back at you, looking a touch surprised — maybe even impressed? When you manage to hold your ground and not look down or away. Smiling slightly wider, she nods.<br>
<br>
"@@.npc_manager;Bold... I like that. So long as you remain cognisant of the personal and professional hierarchies of our... relationship. I have plans for us tonight, but first we need to get your normal daily evaluation out of the way, let me see...@@"<br>
<br>
She glances over at her computer, though the speed with which she looks back tells you she already knew the results, merely going through the motions as in obvious anticipation of her follow-up plans.<br>
<br>
[<<moveTo "event_manager_pegging_1a" "Listen to the performance review." 60>>]
</div>/*#
#desc: pegging intro - look at manager's breasts
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.looked_at = "breasts">>
<<set $scene.peggin_approval -= 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You can't help but stare at the glinting steel shields that surround and pierce her pointed nipples. A ring of metal with small outward spikes encircles each bud, held in place by a single cross-bar that pierces her flesh. The effect is as erotic as it is intimidating, the revelation that she wears such adornments putting you in fresh awe of her mysterious power.<br>
<br>
"@@.npc_manager;Ahem. My eyes are up here,@@" she commands and you blushingly try to look up only to bashfully settle on staring at the floor instead.<br>
<br>
"@@.npc_manager;Good to see you like them — <<if $player.piercings.nipples>>though I suppose I should not be surprised, given you have a pair of your own.<<else>>maybe if you are good you can have some piercings of your own someday. Yes, that would look nice.<</if>>@@"<br>
<br>
You open your mouth to disagree, forming the words to reply in your head.<br>
<br>
<<printThought "That's not what I-">><br>
<br>
But, just from moving a few muscles in her face you can feel a sudden shift in her mood, so you decide it's better to be silent than to speak back, waiting for her to continue on.<br>
<br>
"@@.npc_manager;Anyway, I have too much planned to dwell on such things at present. Let us swiftly go over your performance review for today.@@"<br>
<br>
[<<moveTo "event_manager_pegging_1a" "Listen to the performance review." 60>>]
</div>/*#
#desc: pegging intro - look at floor
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.looked_at = "floor">>
<<set $scene.peggin_approval += 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
After the first brief glimpse of her appearance you re-focus your gaze at your feet. Just the momentary glance at her fetishistic attire has your heart pounding in your chest<<if $player.body_ref.penis>>, and your <<getWordMyPenis false>> straining <<if setup.checkItemTypeWorn("cage")>>within its <<if $scene.isCage>>cage<<else>>prison<</if>><<else>>under your clothes<</if>><</if>>.<br>
<br>
"@@.npc_manager;You scared?@@" she chuckles. "@@.npc_manager;Good, a touch of fear is healthy in a secretary. You can just stand there nice and obedient while I review your day's efforts, alright? Then afterwards... afterwards we shall commence with having a bit of fun.@@"<br>
<br>
Eyes still rooted on a nice patch of carpet in front of your feet a shudder of anticipation travels up your spine as you await her assessment.<br>
<br>
[<<moveTo "event_manager_pegging_1a" "Listen to the performance review." 60>>]
</div>/*#
#desc: pre-pegging daily performance review
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.work.tmphoursDone == 0>>
<<set $scene.workEffectiveness = 0>>
<<else>>
<<set $scene.workEffectiveness = $player.work.workPensum/(8.5 * $player.work.bonusReq)>>
<</if>>
<<if $scene.workEffectiveness>=1.125>>
<<set $npc_manager.workdiscipline+=0.5>>
<<elseif $scene.workEffectiveness>=1.0>>
<<set $npc_manager.workdiscipline+=0.25>>
<<elseif $scene.workEffectiveness>=0.875>>
<<set $npc_manager.workdiscipline+=0>>
<<else>>
<<set $npc_manager.workdiscipline-=0.5>>
<</if>>
<<if $scene.workEffectiveness>=1.125 && ['bimbo', 'hard'].includes($player.work.style)>>
<<set $scene.peggin_approval += 1>>
<<elseif $scene.workEffectiveness < 0.875 || ['bondage_mitts', 'bondage_mitts_work'].includes($player.work.style)>>
<<set $scene.peggin_approval -= 3>>
<<elseif $scene.workEffectiveness < 1.0>>
<<set $scene.peggin_approval -= 1>>
<</if>>
<<if $scene.doctorTask>>
<<if $currentTasks.hasOwnProperty('event_doctor_first_appointment') && !$currentTasks["event_doctor_first_appointment"].finished>>
<<completeTask 'event_doctor_first_appointment' $now false>>
<<set _nextDate = setup.setNextDate($now, 7, 18, 0)>>
<<addTaskById 'event_doctor_first_appointment' _nextDate>>
<<elseif $currentTasks.hasOwnProperty('event_doctor_reup') && !$currentTasks["event_doctor_reup"].finished>>
<<postponeTask 'event_doctor_reup' 7>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if $scene.workEffectiveness>=1.125>>
<<if ['bimbo','hard'].includes($player.work.style)>>
"@@.npc_manager;You performed your day's work VERY well, and not just in efficiency, but also in effort. Wonderfully done. You should consider what is about to happen your well-earned just reward.@@"
<<elseif ['bondage_mitts','bondage_mitts_work', 'sloppy'].includes($player.work.style)>>
"@@.npc_manager;You technically performed your day's work VERY well... though not through any true effort on your part... while I appreciate the efficiency, I am afraid that your lack of focus and dedication leaves me quite disappointed. I only hope what is to come will help teach you to value dedication as well as raw skill going forward.@@"
<<else>>
"@@.npc_manager;You performed your day's work VERY well... though I fear much of that was relying on skill rather than effort. Still, you should consider what is about to happen as your just reward.@@"
<</if>>
<<elseif $scene.workEffectiveness>=1.0>>
<<if ['bondage_mitts','bondage_mitts_work', 'sloppy'].includes($player.work.style)>>
"@@.npc_manager;While you technically discharged your duties as required... it was with no real effort on your part. Thus I must mark, and treat, things as a failure. My expectations for you are high, and slacking off or coasting will not do.@@"
<<else>>
"@@.npc_manager;You discharged your duties as required, I have no complaints, I hope you enjoy this coming next step of your personal development.@@"
<</if>>
<<elseif $scene.workEffectiveness>=0.875>>
"@@.npc_manager;Your work performance today did not meet expectations. I had hoped that this evenings... activities could be seen as a reward as you move along with your training, but I fear that I will have to incorporate a bit of punishment into the lesson.@@"
<<else>>
<<if ['bondage_mitts','bondage_mitts_work', 'sloppy'].includes($player.work.style)>>
"@@.npc_manager;You really need to raise your efforts a lot more if you want to keep this job past your probationary period. Do not make me regret my decision to hire you. While your on-paper efficacy was only mildly disappointing, your lack of effort is far more concerning... and I must inform you that such will be reflected in the harshness of your promotion.@@"
<<else>>
"@@.npc_manager;You really need to raise your performance a lot more if you want to keep this job past your probationary period. Do not make me regret my decision to hire you. Despite your failure I have already set time aside so we will continue... though we will proceed in a somewhat less "fun," for you at least, manner than I had originally planned.@@"
<</if>>
<</if>>
<br><br>
<<if $scene.doctorTask>>
"@@.npc_manager;Oh, one final thing before we start, that meeting you had scheduled with <<=setup.getNpcName("npc_work_doctor","formal")>>? You will be taking a rain check until next week. Tonight you are one hundred and ten percent MINE.@@" You shiver. From the first time you met <<=setup.getNpcName("npc_work_doctor","formal")>> she was in control, but for a moment it feels more than that... you feel not just commanded, but owned.<br>
<br>
<</if>>
"@@.npc_manager;Well, now that all of that is out of the way, let us continue onward.<<if $player.work.qualifyingperiod == 0>> And I suppose I should give a slight congratulations on making it in under the wire, this was to be the final day of your probation but you just squeaked through. Hopefully your future progress is more... accelerated.<</if>>@@"<br>
<br>
The majority of your mental energy is still consumed by just standing in her presence, so you can do little but wait to see what all she has planned.<br>
<br>
[<<moveTo "event_manager_pegging_2" "Wait for what's next." 120>>]
</div>/*#
#desc: manager stands up
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
The office otherwise silent, the sound of wheels on carpet is surprisingly loud as <<=setup.getNpcName('npc_manager', 'formal')>> pushes away from her desk and rises to her feet.<br>
<br>
She walks around the side of the desk, finally giving you a view of her new outfit in all its glory. Your heart skips a beat... make that several beats.<br>
<br>
[<<moveTo "event_manager_pegging_2a" "Gaze upon her magnificence." 180>>]
</div>/*#
#desc: first sight of manager in dom mode w/strapon, orders you to strip
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'pegging'>>
<<set $scene.wornCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.wornCage>>
<<set $scene.isCage = setup.isCage()>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/pegging_01.mp4">>
<div id="invframe" class="scrolltext">
Just the sight of her upper body in its new attire was enough to stop you in your tracks, but the glory of her full outfit is enough to stop traffic. The form-fitted top continues down to a tightly cinched belt, her figure so perfect you wonder if it might incorporate a hidden corset. Below the belt is where things get REALLY interesting, starting with a ruffled hip-accentuating peplum, the partial skirt barely brushing the tops of her thighs while leaving the centre open for the real star of the show.<br>
<br>
Sprouting from a leather harness buckled around her waist is a massive dildo. Looming and intimidating with a realistic head, her left hand casually strokes up and down its length, her fingers barely able to wrap its thickness while the movement serves to accentuate its depth-plumbing length.<br>
<br>
As difficult as it is to tear your eyes away from her massive — and yet somehow still utterly feminine — cock, you finish your inspection by gazing upon her long legs. Garters hold up a pair of perfect thigh-high stockings, her feet perched atop steep ankle boots that seem purpose-made for worship.<br>
<br>
She smiles back at your stunned awe, giving a final hip-roll stroke of her monstrous artificial cock in your direction as she stands and faces you.<br>
<br>
<<switch $npc_manager.flags.pegging.base_style>>
<<case "forced" "strict">>
"@@.npc_manager;Alright, you rebellious, naughty girl it is almost time to break you in! Oh, I can only imagine how excited you must be to feel me inside you, and I promise to give you EVERY SINGLE CENTIMETRE, but first it is time for a little game... A game I like to call "total obedience." Now, from your past behaviour this may be a little tricky but, well... there is no time like the present to practice proper behaviour and rise to meet a challenge, right?@@"<br>
<br>
<<printThought "What, is she serious? I should have been more behaved...">><br>
<<case "voluntary">>
"@@.npc_manager;Ah, my adorable <<callPlayer "npc_cook">>, I do not know if your transformation was inevitable or if I merely granted you the permission to do things you had always secretly desired... either way your enthusiastic development has been just wonderful, and now... well, I have a special present for you, but before I can give you every centimetre that you deserve we are going to play a fun little game. A game I like to call "total obedience." I am sure you will get the hang of it in no time.@@"<br>
<br>
<<printThought "That... going in me? Well, I guess it's only proper that I bend over for her...">><br>
<<case "obedient">>
"@@.npc_manager;My devoted secretary... or should I say, slave? You really are just the picture of obedience, so lovely and loyal... well, it is time to reward all that good behaviour. We shall start off by playing a game I just know you are going to love. I call it "total obedience" and you are sure to become a fast expert at it. After that... well... I did not put this on as a counterweight! It is going inside your pert little bum, every single centimetre of it!@@"<br>
<br>
<<printThought "That looks really big, but if my <<=setup.getNpcName('npc_manager', 'title')>> commands it, it must be what I need and deserve...">><br>
<<case "money">>
"@@.npc_manager;Ah, my dirty, dirty girl. You are just so fixated on the money, aren't you? And willing to do just about anything for it... well, I am here to help you out... break you in, as it were, and open you up to new... opportunities. Towards that end I will soon have you bent over, but first we are going to play a little game. A game I like to call "total obedience." All you have to do is exactly what I say... do well enough and you might even get a tip at the end...@@"<br>
<br>
<<if setup.getTotalValue("whoring") > 10>>
<<printThought "Am I really this much of a whore?... of course I am! Well, time to earn a nice, big... tip.">>
<<elseif setup.getTotalValue("whoring") >= 5>>
<<printThought "Am I really becoming that much of a whore? And did she just guess, or does she somehow know what I do outside work hours?">>
<<else>>
<<printThought "Am I really that motivated by greed? Well, I guess I don't have any choice right now...">>
<</if>>
<<default>>
ERROR: UNKNOWN pegging style! <<=$npc_manager.flags.pegging.base_style>>
<</switch>>
<br><br>
"@@.npc_manager;Now, to start things off basic, your first order is to strip.@@"<br>
<br>
[<<moveTo "event_manager_pegging_3_fast" "Shed all your clothes." 180>>]<br>
[<<moveTo "event_manager_pegging_3_fast_lingerie" "Shed all your clothes, but leave your lingerie on." 180>>]<br>
<<if setup.getTotalValue("feminization") >= 7 && setup.getTotalValue("submission") >= 7>>
[<<moveTo "event_manager_pegging_3_sensuous" "Strip sensuously for her." 300>>]<br>
[<<moveTo "event_manager_pegging_3_sensuous_lingerie" "Strip sensuously for her while leaving your lingerie on." 300>>]
<<else>>
<<if setup.getTotalValue("feminization") >= 7 && setup.getTotalValue("submission") >= 7 && setup.getWillpower() > 1>>
[<<moveTo "event_manager_pegging_3_sensuous" "Overcome your trepidations and strip sensuously for her." 300 "<<spendWillpower 2>>">>] <<hint $options "This will require a moderate act of will.">><br>
[<<moveTo "event_manager_pegging_3_sensuous_lingerie" "Overcome your trepidations and strip sensuously for her while leaving your lingerie on." 300 "<<spendWillpower 2>>">>] <<hint $options "This will require a moderate act of will.">>
<<elseif setup.getTotalValue("feminization") >= 7 && setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_3_sensuous" "Overcome your shyness and strip sensuously for her." 300 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
[<<moveTo "event_manager_pegging_3_sensuous_lingerie" "Overcome your shyness and strip sensuously for her while leaving your lingerie on." 300 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">>
<<elseif setup.getTotalValue("submission") >= 7 && setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_3_sensuous" "Overcome your rebellious urge and strip sensuously for her." 300 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
[<<moveTo "event_manager_pegging_3_sensuous_lingerie" "Overcome your rebellious urge and strip sensuously for her while leaving your lingerie on." 300 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">>
<<else>>
[@@.link_locked;You consider putting on a bit of a show, but you just don't have the combination of confidence and devotion to make the attempt.@@]
<</if>>
<</if>>
</div>/*#
#desc: strip quickly for manager
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<set $scene.origChoker = setup.getItemFromType('choker')>>
<<if $scene.origChoker != "">>
<<removeItem $scene.origChoker true>>
<</if>>
<<set $npc_manager.flags.pegging.strip = "fast">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
With well-practiced efficiency you shed your clothing. In under a minute you are down to naught but your chastity device<<if setup.checkItemTypeWorn('plug')>> and the plug in your rear<</if>>.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> appears to be a touch disappointed at your lack of theatrics, but seems satisfied with your following her instruction.<br>
<br>
"@@.npc_manager;Now that you are nice and... exposed, how about you show me your appreciation for all that I have done, and am about to do, to and for you.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_4_dontthank" "Resist the urge to obey and force yourself to keep silent." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_pegging_4_dontthank" "Keep silent and refuse to speak." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_4_thank" "Thank her for your job." 60>>]<br>
[<<moveTo "event_manager_pegging_4_appreciate" "Dutifully express your appreciation for what she has done for you." 120>>]<br>
[<<moveTo "event_manager_pegging_4_worship" "Drop to the ground and worship her magnificence." 180>>]
</div>/*#
#desc: strip fast down to your lingerie
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverythingButUnderwear>>
<<set $scene.origChoker = setup.getItemFromType('choker')>>
<<if $scene.origChoker != "">>
<<removeItem $scene.origChoker true>>
<</if>>
<<set $npc_manager.flags.pegging.strip = "fast_lingerie">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
With well-practiced efficiency you shed your clothing. In under a minute you are down to naught but your
<<if setup.checkItemTypeWorn('plug')>>
undergarments<<if setup.checkItemTypeWorn("cage")>>, your chastity device<</if>> and the plug in your rear.
<<else>>
undergarments<<if setup.checkItemTypeWorn("cage")>> and your chastity device<</if>>.
<</if>>
<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> appears to be a touch disappointed at your lack of theatrics, but seems satisfied with your following her instruction.<br>
<br>
"@@.npc_manager;Now that you are nice and... exposed, how about you show me your appreciation for all that I have done, and am about to do, to and for you.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_4_dontthank" "Resist the urge to obey and force yourself to keep silent." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_pegging_4_dontthank" "Keep silent and refuse to speak." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_4_thank" "Thank her for your job." 60>>]<br>
[<<moveTo "event_manager_pegging_4_appreciate" "Dutifully express your appreciation for what she has done for you." 120>>]<br>
[<<moveTo "event_manager_pegging_4_worship" "Drop to the ground and worship her magnificence." 180>>]
</div>/*#
#desc: strip sensuously
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.peggin_approval += 1>>
<<set $npc_manager.flags.pegging.strip = "sensuous">>
<<set $scene.shoes = setup.getItemObjFromType("shoes")>>
<<set $scene.shoeId = setup.getItemFromType("shoes")>>
<<set $scene.bottom = setup.getItemObjFromType("legwear")>>
<<set $scene.bottomId = setup.getItemFromType("legwear")>>
<<include "calcTopId">>
<<set $scene.top = setup.getItemObj($scene.topId)>>
<<set $scene.corset = setup.getItemObjFromType("corset")>>
<<set $scene.corsetId = setup.getItemFromType("corset")>>
<<set $scene.bra = setup.getItemObjFromType("bra")>>
<<set $scene.braId = setup.getItemFromType("bra")>>
<<set $scene.panties = setup.getItemObjFromType("panties")>>
<<set $scene.pantiesId = setup.getItemFromType("panties")>>
<<set $scene.stockings = setup.getItemObjFromType("stockings")>>
<<set $scene.stockingsId = setup.getItemFromType("stockings")>>
<<set $scene.garters = setup.getItemObjFromType("garter")>>
<<set $scene.gartersId = setup.getItemFromType("garter")>>
<<removeAllClothing>>
<<set $scene.origChoker = setup.getItemFromType('choker')>>
<<if $scene.origChoker != "">>
<<removeItem $scene.origChoker true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Moving your body in time with a soundtrack playing in your head, you start to remove your clothes.<br>
<br>
/* outer clothes */
<<if $scene.topId == "maid_uniform_black" && $scene.bottomId == "maid_uniform_apron" && ($scene.shoesId == "mary_janes_black" || $scene.shoesId == "ballet_boots_black" || $scene.shoesId == "maid_heels_extreme_black")>>
Giving a curtsy you turn slowly to show off your cute maid's outfit, flipping up your skirt to show off your <<=$scene.panties.name>> underneath.<br>
<br>
Making a show of it you slip out of your apron, then your top, dropping them in a pile with a bashful smile before bending over to
<<if $scene.shoesId == "mary_janes_black">>
unbuckle your cute Mary Janes and slip out of them.<br>
<<elseif $scene.shoesId == "ballet_boots_black">>
unlace your steep ballet boots, showing off by balancing on one foot at a time as you remove each towering boot in turn.<br>
<<else>>
unbuckle your shoes and remove them as well.<br>
<</if>>
<br>
<<elseif $scene.topId == "satin_blouse_pink" && $scene.bottomId == "skirt_leather_pink" && ($scene.shoesId == "mary_janes_pink" || $scene.shoesId == "thigh_highs_pink" || $scene.shoesId == "bed_heels_pink" || $scene.shoesId == "platform_wedge_heels_pink")>>
You give a formal curtsy, walking in a small circle to show off your cute secretarial attire before facing her and slowly unbuttoning your top. Keeping it closed even after you have it fully unbuttoned you tilt your head and bite your lip before finally exposing your <<if $scene.bra>><<=$scene.bra.name>><<else>>chest<</if>> in a quick flash. Closing your blouse once more you blink demurely back at your <<=setup.getNpcName("npc_manager","title")>> before finally shedding the top.<br>
<br>
Unzipping your skirt partway you turn around and make a show of wiggling your butt as you shimmy out of the tight leather tube, kicking it to one side and then bending over to show off your <<=$scene.panties.name>>-clad rear.<br>
<br>
<<switch $scene.shoesId>>
<<case "thigh_highs_pink">>
Running your hands over your thigh-high boots you wink at her before unzipping each shoe, peeling away the tight pink patent leather to reveal the <<=$scene.stockings.name>> on your legs.<br>
<<case "mary_janes_pink">>
<<case "bed_heels_pink">>
<<case "platform_wedge_heels_pink">>
<<default>>
Unbuckling your shoes you step out of your cute <<=$scene.shoes>> and finally turn to face her.<br>
<</switch>>
<<elseif $scene.topId == "shirt_female_office_teal" && $scene.bottomId == "trousers_female_office_grey" && $scene.shoesId == "flats_black">>
Unbuttoning your (almost) unisex top you reveal <<if $scene.bra.name>>the far more feminine <<=$scene.bra.name>> beneath,<<else>>your bare chest<</if>> following up by turning around. Sliding your tight pants down past your butt you show off your <<=$scene.panties.name>>-clad rear before kicking off your shoes and removing the pants entirely.<br>
<br>
<<else>>
Wiggling your body, you start by slowly removing your <<=$scene.top.name>>. Groping yourself a little, you show off your
<<if $scene.bra>>
<<=$scene.bra.name>>
<<else>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive tits
<<case 'large'>>
large breasts
<<case 'medium'>>
breasts
<<case 'small'>>
small breasts
<<case 'none'>>
bare, smooth chest
<</switch>>
<</if>>
before tracing your hands down to your hips.<br>
<br>
You kick out of your <<=$scene.shoes.name>> as you turn around and bend over to best display your rear. <<if $scene.bottom != null>>Shedding your <<=$scene.bottom.name>>, you<<else>>You<</if>> wiggle your butt to show off your <<=$scene.panties.name>> before turning back to face her sporting a smile.<br>
<</if>>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile tells you that she has enjoyed this method of de-clothing far more than your normal "down to the underwear" morning stripping.<br>
<br>
<<if $scene.corsetId != "">>
Turning in a circle you loosen the laces on your corset just enough to pop the front busk, feeling your body expand no longer tightly compressed by the stringent garment. You playfully use the corset to "flash" <<=setup.getNpcName('npc_manager', 'formal')>> before tossing it with the rest of your shed clothing.<br>
<br>
<</if>>
/* undergarments */
<<if $scene.braId == "sissy_bra_pink" && $scene.pantiesId == "sissy_panties_pink" && $scene.stockingsId == "sissy_stockings_pink" && ($scene.gartersId == "sissy_garter_pink" || $scene.gartersId == "")>>
You run your hands over your <<if $fetish.sissy>>sissy<<else>>girly<</if>> pink frills, bouncing a little to set the bells incorporated into your undergarments to chime in merry accompaniment to your show before slowly peeling off the layers of pink.<br>
<br>
First comes the bra as you pull it down to expose your <<getWordBreasts>> before reaching behind your back to unhook the strap and shrug it off your shoulders.<br>
<br>
Reaching down you unclip your garters one at a time, making a show of rolling each pink stocking down your pale, smooth legs before removing the garter belt entirely.<br>
<br>
Turning your back you bend over and unzip the rear opening to show off your bum<<if setup.checkItemTypeWorn('plug')>> and the <<=setup.getItemTypeName('plug')>> inside<</if>>.<br>
<br>
Finally shedding your <<if $fetish.sissy>>sissy<<else>>girl<</if>> panties, you turn to present yourself, <<if $scene.wornCage>>naked save for your securely <<if $scene.isCage>>caged, but obviously excited, <<getWordMyPenis false>><<else>>belted loins<</if>><<else>>totally naked<</if>>.<br>
<<elseif (!$scene.bra || $scene.bra.tags.includes("bold")) && $scene.panties.tags.includes("bold") && $scene.stockings.tags.includes("bold") && ($scene.garters == null || $scene.garters.tags.includes("bold"))>>
Standing there in your bold underwear you recall her overall lack of approval of such aggressive attire. Still, there is nothing for it now save to get naked as she commanded and you set to work doing just that.<br>
<br>
Starting with your bra you slide the straps off your shoulder until it is barely staying up before reaching behind to unclip it and let things fall away to reveal your <<getWordBreasts>>.<br>
<br>
<<if $scene.bra>>
Letting the <<=$scene.bra.name>> drop to the floor
<<else>>
Next you
<</if>>
<<if $scene.gartersId != "">>
begin unclipping your garters, slowly freeing your <<=$scene.stockings.name>> one leg at a time, slipping out of them and them removing the garter as well.<br>
<<else>>
peel off your stockings, running your fingers back up your now-bare legs.<br>
<</if>>
<br>
Clad it naught but your panties you pull down the front to allow <<if $scene.wornCage>><<if $scene.isCage>>your chastity cage to pop free<<else>>the front shield of your chastity belt to gleam and shine<</if>><<else>>your <<getWordMyPenis>> to spring forth<</if>>. Her obvious disdain for your choice of undergarments shifts at the reveal of your <<getWordMyPenis>> and she continues to smile as you peel the <<=$scene.panties.name>> the rest of the way down your legs and kick them to the side.<br>
<<elseif (!$scene.bra || $scene.bra.tags.includes("cute")) && $scene.panties.tags.includes("cute") &&
$scene.stockings.tags.includes("cute") && ($scene.garters == null || $scene.garters.tags.includes("cute"))>>
Fluttering your eyelashes you pose to show off your cute ensemble before your bra "accidentally" bursts open to reveal your bare <<getWordBreasts>>. Putting a hand over your mouth in mock surprise
<<if $scene.gartersId != "">>
you continue the "accidental" disrobing as you unclip your garter straps one at a time, until your <<=$scene.stockings.name>> slips off followed by the <<=$scene.garters.name>> themselves.<br>
<<else>>
you turn and bend over, peeking back upside-down from between your legs as you roll the <<=$scene.stockings.name>> down your legs.<br>
<</if>>
<br>
Down to just your cute panties you grope yourself through them, making a show of the <<if $scene.wornCage>><<if $scene.isCage>>unfeminine bulge of your cage before revealing your imprisoned <<getWordMyPenis false>> with another look of surprise<<else>>smooth lines of your chastity belt as you draw attention to its unyielding facade by running your hand across it<</if>><<else>>revealed <<getWordMyPenis>><</if>>. Letting your panties fall to the ground you toss them in the pile with the rest of your clothes before crossing your hands behind your back, tilting your head to the side and looking across at <<=setup.getNpcName('npc_manager', 'formal')>> with "innocent" bambi eyes.<br>
<<elseif (!$scene.bra || $scene.bra.tags.includes("modest")) && $scene.panties.tags.includes("modest") &&
$scene.stockings.tags.includes("modest") && ($scene.gartersId == "" || $scene.garters.tags.includes("modest"))>>
Your modest, reserved undergarments somehow give a "girl next door" look to your little striptease. Each functional, but unflattering, item you remove causes <<=setup.getNpcName('npc_manager', 'formal')>> to unconsciously stroke her fake cock faster.<br>
<br>
<<if $scene.bra>>
Shedding the <<=$scene.bra.name>> first to reveal your <<getWordBreasts>>, you follow up by
<<else>>
Next you
<</if>>
<<if $scene.gartersId != "">>
unclipping your <<=$scene.garters.name>> and letting them and your <<=$scene.stockings.name>> fall.
<<else>>
sliding out of your stockings.
<</if>>
It isn't long before the only thing granting you the slightest shred of modesty is your <<=$scene.stockings.name>>.<br>
<br>
Flashing a bashful smile, you bite your lip and rip off your <<=$scene.panties.name>>, exposing your <<getWordMyPenis>> to your manager before giving a slow turn to show off your <<if setup.checkItemTypeWorn('plug')>>naughtily plugged<<else>>cute<</if>> butt as well.<br>
<<else>>
No more impressed by your mismatched undergarments now than she was during your morning inspection you hurry to remove them<<if $scene.bra>>, first peeling off the <<=$scene.bra.name>> to expose your <<getWordBreasts>><</if>>.<br>
<br>
She seems much more pleased at your bare torso than looking at your clashing bra so you continue on to your legs,
<<if $scene.gartersId != "">>
unclipping your <<=$scene.garters.name>> and shedding them and your <<=$scene.stockings.name>>
<<else>>
sliding out of your stockings,
<</if>>
and prancing around for a moment in naught but your <<=$scene.panties.name>>. Those remain on your body for but a few seconds longer before they are cast aside to leave you standing naked and facing her with your <<getWordMyPenis>> proudly on display.<br>
<</if>>
<br>
<<if $scene.origChoker>>
Finally, you reach up and remove the <<=setup.getItemName($scene.origChoker)>> from your neck to expose your throat...<br>
<br>
<</if>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and claps in approval at your short routine.<br>
<br>
"@@.npc_manager;Oh that was just wonderful! I confess that seeing you strip every morning had gotten a bit... mundane, but that! Mmmm, I am torn between suggesting you use your talents professionally and wanting to keep you all to myself! Anyway, on the topic of things you do for me... what about all that I have done for you? Let me hear your appreciation while I mentally run back that adorable strip-tease.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_4_dontthank" "Resist the urge to obey and force yourself to keep silent." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_pegging_4_dontthank" "Keep silent and refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_4_thank" "Thank her for the job." 60>>]<br>
[<<moveTo "event_manager_pegging_4_appreciate" "Dutifully express your appreciation for what she has done for you." 120>>]<br>
<<if setup.getTotalValue("humiliation") < 5>>
[@@.link_locked;You are unwilling to fully debase yourself before her.@@]
<<else>>
[<<moveTo "event_manager_pegging_4_worship" "Worship her magnificence." 180>>]
<</if>>
</div>/*#
#desc: sensuously strip down to your lingerie
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.peggin_approval += 1>>
<<set $npc_manager.flags.pegging.strip = "sensuous_lingerie">>
<<set $scene.shoes = setup.getItemObjFromType("shoes")>>
<<set $scene.shoeId = setup.getItemFromType("shoes")>>
<<set $scene.bottom = setup.getItemObjFromType("legwear")>>
<<set $scene.bottomId = setup.getItemFromType("legwear")>>
<<include "calcTopId">>
<<set $scene.top = setup.getItemObj($scene.topId)>>
<<set $scene.corset = setup.getItemObjFromType("corset")>>
<<set $scene.corsetId = setup.getItemFromType("corset")>>
<<set $scene.bra = setup.getItemObjFromType("bra")>>
<<set $scene.braId = setup.getItemFromType("bra")>>
<<set $scene.panties = setup.getItemObjFromType("panties")>>
<<set $scene.pantiesId = setup.getItemFromType("panties")>>
<<set $scene.stockings = setup.getItemObjFromType("stockings")>>
<<set $scene.stockingsId = setup.getItemFromType("stockings")>>
<<set $scene.garters = setup.getItemObjFromType("garter")>>
<<set $scene.gartersId = setup.getItemFromType("garter")>>
<<removeEverythingButUnderwear>>
<<set $scene.origChoker = setup.getItemFromType('choker')>>
<<if $scene.origChoker != "">>
<<removeItem $scene.origChoker true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Moving your body in time with a soundtrack playing in your head, you start to remove your clothes.<br>
<br>
/* outer clothes */
<<if $scene.topId == "maid_uniform_black" && $scene.bottomId == "maid_uniform_apron" && ($scene.shoesId == "mary_janes_black" || $scene.shoesId == "ballet_boots_black" || $scene.shoesId == "maid_heels_extreme_black")>>
Giving a curtsy, you turn slowly to show off your cute maid's outfit, flipping up your skirt to show off your <<=$scene.panties.name>> underneath.<br>
<br>
Making a show of it, you slip out of your apron, then your top, dropping them in a pile with a bashful smile before bending over to
<<if $scene.shoesId == "mary_janes_black">>
unbuckle your cute Mary Janes and slip out of them.<br>
<<elseif $scene.shoesId == "ballet_boots_black">>
unlace your steep ballet boots, showing off by balancing on one foot at a time as you remove each towering boot in turn.<br>
<<else>>
unbuckle your shoes and remove them as well.<br>
<</if>>
<br>
<<elseif $scene.topId == "satin_blouse_pink" && $scene.bottomId == "skirt_leather_pink" && ($scene.shoesId == "mary_janes_pink" || $scene.shoesId == "thigh_highs_pink" || $scene.shoesId == "bed_heels_pink" || $scene.shoesId == "platform_wedge_heels_pink")>>
You give a formal curtsy, walking in a small circle to show off your cute secretarial attire before facing her and slowly unbuttoning your top. Keeping it closed even after you have it fully unbuttoned you tilt your head and bite your lip before finally exposing your <<=$scene.bra.name>> in a quick flash. Closing your blouse once more you blink demurely back at your <<=setup.getNpcName("npc_manager","title")>> before finally shedding the top.<br>
<br>
Unzipping your skirt, partway you turn around and make a show of wiggling your butt as you shimmy out of the tight leather tube, kicking it to one side and then bending over to show off your <<=$scene.panties.name>>-clad rear.<br>
<br>
<<switch $scene.shoesId>>
<<case "thigh_highs_pink">>
Running your hands over your thigh-high boots, you wink at her before unzipping each shoe, peeling away the tight pink patent leather to reveal the <<=$scene.stockings.name>> on your legs.<br>
<<case "mary_janes_pink">>
<<case "bed_heels_pink">>
<<case "platform_wedge_heels_pink">>
<<default>>
Unbuckling your cute shoes, you step out of your cute <<=$scene.shoes>> and finally turn to face her.<br>
<</switch>>
<<elseif $scene.topId == "shirt_female_office_teal" && $scene.bottomId == "trousers_female_office_grey" && $scene.shoesId == "flats_black">>
Unbuttoning your (almost) unisex top, you reveal the far more feminine <<=$scene.bra.name>> beneath, following up by turning around. Sliding your tight pants down past your butt you show off your <<=$scene.panties.name>>-clad rear before kicking off your shoes and removing the pants entirely.<br>
<br>
<<else>>
Wiggling your body, you start by slowly removing your <<=$scene.top.name>>. Groping yourself a little, you show off your
<<if !$scene.bra>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive tits
<<case 'large'>>
large breasts
<<case 'medium'>>
breasts
<<case 'small'>>
small breasts
<<case 'none'>>
bare, smooth chest
<</switch>>
<<else>>
<<=$scene.bra.name>>
<</if>>
before tracing your hands down to your hips.<br>
<br>
You kick out of your <<=$scene.shoes.name>> as you turn around and bend over to best display your rear. <<if $scene.bottom>>Shedding your <<=$scene.bottom.name>>, you<<else>>You<</if>> wiggle your butt to show off your <<=$scene.panties.name>> before turning back to face her sporting a playful smile.<br>
<</if>>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile tells you that she has enjoyed this method of de-clothing far more than your normal "down to the underwear" morning stripping.<br>
<br>
<<if $scene.corsetId != "">>
Turning in a circle you loosen the laces on your corset just enough to pop the front busk, feeling your body expand no longer tightly compressed by the stringent garment. You playfully use the corset to "flash" <<=setup.getNpcName('npc_manager', 'formal')>> before tossing it with the rest of your shed clothing.<br>
<br>
<</if>>
/* undergarments */
<<if $scene.braId == "sissy_bra_pink" && $scene.pantiesId == "sissy_panties_pink" && $scene.stockingsId == "sissy_stockings_pink" && ($scene.gartersId == "sissy_garter_pink" || $scene.gartersId == "")>>
You run your hands over your <<if $fetish.sissy>>sissy<<else>>girly<</if>> pink frills, bouncing a little to set the bells incorporated into your undergarments to chime in merry accompaniment to your show, accentuating your frilly layers of pink.<br>
<<elseif (!$scene.bra || $scene.bra.tags.includes("bold")) && $scene.panties.tags.includes("bold") && $scene.stockings.tags.includes("bold") && ($scene.garters == null || $scene.garters.tags.includes("bold"))>>
Standing there in your sexy underwear you recall her overall lack of approval of such aggressive attire. Still, there is nothing for it now save to get naked as she commanded and you set to work doing just that.<br>
<<elseif (!$scene.bra || $scene.bra.tags.includes("cute")) && $scene.panties.tags.includes("cute") &&
$scene.stockings.tags.includes("cute") && ($scene.garters == null || $scene.garters.tags.includes("cute"))>>
Fluttering your eyelashes you pose to show off your cute ensemble.
<<elseif (!$scene.bra || $scene.bra.tags.includes("modest")) && $scene.panties.tags.includes("modest") &&
$scene.stockings.tags.includes("modest") && ($scene.gartersId == "" || $scene.garters.tags.includes("modest"))>>
Your modest, reserved undergarments somehow give a "girl next door" look to your little striptease. Each functional, but unflattering. Maybe you should have removed them during the striptease.
<<else>>
You shed your outer garments to reveal your underthings. You can tell their lack of cohesion bothers her somewhat, but she appears impressed enough by your "show" as to be overall pleased.
<</if>>
<br><br>
<<if $scene.origChoker>>
Finally, you reach up and remove the <<=setup.getItemName($scene.origChoker)>> from your neck to expose your throat...<br>
<br>
<</if>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and claps in approval at your short routine.<br>
<br>
"@@.npc_manager;Oh that was just wonderful! I confess that seeing you strip every morning had gotten a bit... mundane, but that! Mmmm, I am torn between suggesting you use your talents professionally and wanting to keep you all to myself! Anyway, on the topic of things you do for me... what about all that I have done for you? Let me hear your appreciation while I mentally run back that adorable strip-tease.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_4_dontthank" "Resist the urge to obey and force yourself to keep silent." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You are too obedient to silently ignore such a request.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_pegging_4_dontthank" "Keep silent and refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_4_thank" "Thank her for the job." 60>>]<br>
[<<moveTo "event_manager_pegging_4_appreciate" "Dutifully express your appreciation for what she has done for you." 120>>]<br>
<<if setup.getTotalValue("humiliation") < 5>>
[@@.link_locked;You are unwilling to fully debase yourself before her.@@]
<<else>>
[<<moveTo "event_manager_pegging_4_worship" "Worship her magnificence." 180>>]
<</if>>
</div>/*#
#desc: don't thank manager for what she's done to you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.peggin_approval -= 1>>
<<set $npc_manager.flags.pegging.thank = "refuse">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You stand silent, refusing to "thank" her for the things that she has inflicted upon you.<br>
<br>
The staring contest between the two of you drags out for almost a minute before she shakes her head in dismay.<br>
<br>
"@@.npc_manager;So disobedient, fortunately I am a... patient teacher, but there will be consequences. Oh there will be consequences indeed...@@"<br>
<br>
<<printThought "What do I expect to gain from goading her like this?">><br>
<br>
"@@.npc_manager;Since you wish to be so quiet, how about we test some of your... other oral skills? Kneel down and show me that you mouth is good for SOMETHING.@@"<br>
<br>
She removes her hand from her artificial "enhancement" pushing her hips forward in invitation.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Resist the submissive need to express your appreciation." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You are too obedient to refuse such a request.@@]<br>
<</if>>
<<elseif setup.getTotalValue("penis") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Resist your cock-lust-fuelled desire to express your appreciation." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You cannot pass up the opportunity to worship cock.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_5_kiss" "Just kiss her member." 60>>]<br>
[<<moveTo "event_manager_pegging_5_lick" "Lick her artificial cock." 120>>]<br>
<<if setup.getTotalValue("penis") < 5>>
[@@.link_locked;You do not like cock, even an artificial one, enough to suck her off.@@]
<<else>>
[<<moveTo "event_manager_pegging_5_suck" "Suck on her glorious strap-on." 180>>]
<</if>>
</div>/*#
#desc: thank manager for what she's done to you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.peggin_approval -= 1>>
<<set $npc_manager.flags.pegging.thank = "thank">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for giving you the opportunity to work as her secretary. Noticing her gaze starting to narrow you quickly add additional thanks for her many gifts and "helpful" trainings, concluding with a bow.<br>
<br>
She does not appear particularly impressed with your rushed display but, after cowing you with a withering gaze, she moves on.<br>
<br>
"@@.npc_manager;I had thought you would be more appreciative of what I have done for you... or perhaps it is my fault for not properly teaching you how to best demonstrate thanks? No matter, in any case I think you need to make it up to me with a different sort of oral skill. Get over here and drop to your knees and see if you can better impress me with something other than mere words.@@"<br>
<br>
She removes her hand from her artificial "enhancement" pushing her hips forward in invitation.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Resist the submissive need to express your appreciation." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You are too obedient to refuse such a request.@@]<br>
<</if>>
<<elseif setup.getTotalValue("penis") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Resist your cock-lust-fuelled desire to express your appreciation." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You cannot pass up the opportunity to worship cock.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_5_kiss" "Just kiss her member." 60>>]<br>
[<<moveTo "event_manager_pegging_5_lick" "Lick her artificial cock." 120>>]<br>
<<if setup.getTotalValue("penis") < 5>>
[@@.link_locked;You do not like cock, even an artificial one, enough to suck her off.@@]
<<else>>
[<<moveTo "event_manager_pegging_5_suck" "Suck on her glorious strap-on." 180>>]
<</if>>
</div>/*#
#desc: profess your appreciation for what manager has done to you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.thank = "appreciate">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You give a slight curtsy of thanks and launch into a listed appreciation for all that <<=setup.getNpcName('npc_manager', 'formal')>> has done for, and to, you.<br>
<br>
She nods in approval as you rattle off the history of your time working as a secretary, seeming particularly pleased when you express appreciation for her ordered "improvements" to your dress code<<if $npc_manager.flags.require_chastity>> and for locking you safely away within your chastity device. The last causes her to slightly increase the pace with which she idly strokes her artificial cock<</if>>. By the time you finish off with a deep curtsy of thanks, she is looking quite pleased with you indeed.<br>
<br>
"@@.npc_manager;Very nicely said, now to see how your other oral skills are developing. Crawl on over here and show me what else those sexy lips are capable of.@@"<br>
<br>
She removes her hand from her artificial "enhancement" pushing her hips forward in invitation.<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Resist the submissive need to express your appreciation." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You are too obedient to refuse such a request.@@]<br>
<</if>>
<<elseif setup.getTotalValue("penis") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Resist your cock-lust-fuelled desire to express your appreciation." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You cannot pass up the opportunity to worship cock.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_5_kiss" "Just kiss her member." 60>>]<br>
[<<moveTo "event_manager_pegging_5_lick" "Lick her artificial cock." 120>>]<br>
<<if setup.getTotalValue("penis") < 5>>
[@@.link_locked;You do not like cock, even an artificial one, enough to suck her off.@@]
<<else>>
[<<moveTo "event_manager_pegging_5_suck" "Suck on her glorious strap-on." 180>>]
<</if>>
</div>/*#
#desc: worship manager in gratitude for what she has done for you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.peggin_approval += 1>>
<<set $npc_manager.flags.pegging.thank = "worship">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You give a curtsy and then continue downward, dropping to the floor and crawling towards <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
Kneeling before her you look up and flutter your eyes. "@@.pc;Words are insufficient to express my gratitude for all the wonderful things you have done for, and to, your devoted servant. May I show my thanks in another way?@@"<br>
<br>
She smiles, sitting back against the edge of the desk and extending a foot as she looks down at you past her large member, still stroking it as she watches. "@@.npc_manager;You may.@@"<br>
<br>
"@@.pc;Thank you, <<=setup.getNpcName('npc_manager', 'title')>>,@@" you whisper before setting to work worshipping her foot.<br>
<br>
Her boots are too nicely laced and buckled to mess with so you stick to merely massaging her right foot through the footwear, kissing every centimetre from her toes up to her ankle and back down her heel, interspersing your efforts with your effusive praise.<br>
<br>
You thank her for hiring you. For keeping a firm, disciplinary hand on you. For your wonderful new dress code<<if $npc_manager.flags.require_chastity>>, especially the chastity device that has you safely locked away<<else>>... and things BEYOND mere clothing<</if>>. This last part seems to meet with her particular approval as she pauses things to have you spend several moments sucking on her heel in time to her own strokes before allowing you to resume things with her other foot.<br>
<br>
Repeating on her left foot you thank her for showing you the pleasures of your rear hole, reminiscing how good the dildo she had you use felt, but how much better her glorious cock will surely be. You thank her for taking ownership of your confused life, begging her to mold you into the perfect <<if $fetish.sissy>>SISSI <</if>>Secretary that you were meant, and now dream, to be.<br>
<br>
The look in her eyes as you meet her gaze sucking her left heel is so intense you have to look away, <<if $player.body_ref.penis>>your <<if $fetish.sissy>>sissy<<else>>girl<</if>> clitty <<if setup.checkItemTypeWorn("cage")>>straining against its protective prison, only to feel even more happy at the snug reminder that it is so securely locked<<else>>stiff with excitement<</if>><<else>>your <<getWordVagina>> dripping with excitement<<if setup.checkItemTypeWorn("cage")>> within its prison<</if>><</if>>. Gently pulling back as she lowers her foot back to the ground you start working your way up her legs, massaging her calves, then her thighs before she calls for a pause with her thick, glorious cock centimetres from your face.<br>
<br>
"@@.npc_manager;Now THAT is how a slave shows her thanks. So beautiful, but now... now to see if your thankful tongue is good at other things oral. Open wide, my <<if $fetish.sissy>>sissy<<else>>girl<</if>>, and show your Mistress' cock how much you love it.@@"<br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Resist the submissive need to express your appreciation." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You are too obedient to refuse such a request.@@]<br>
<</if>>
<<elseif setup.getTotalValue("penis") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Resist your cock-lust-fuelled desire to express your appreciation." 60 "<<spendWillpower 1>>">>] <<hint $options "This will require a minor act of will.">><br>
<<else>>
[@@.link_locked;You cannot pass up the opportunity to worship cock.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_pegging_5_refusesuck" "Refuse." 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_5_kiss" "Just kiss her member." 60>>]<br>
[<<moveTo "event_manager_pegging_5_lick" "Lick her artificial cock." 120>>]<br>
<<if setup.getTotalValue("penis") < 5>>
[@@.link_locked;You do not like cock, even an artificial one, enough to suck her off.@@]
<<else>>
[<<moveTo "event_manager_pegging_5_suck" "Suck on her glorious strap-on." 180>>]
<</if>>
</div>/*#
#desc: refuse to suck manager's strapon
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.suck = "refuse">>
<<set $scene.peggin_approval -= 2>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You recoil from her offered member, shaking your head in defiance. Her mood turns in an instant, her hand reaching out and suddenly entwined through your hair. Establishing total control over your head, she drags you to your knees and forces your face against her crotch.<br>
<br>
"@@.npc_manager;This is an opportunity, not a request, <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Now open that slut-mouth wide or I will shove all of myself down your throat and then fuck your ass with nothing but your saliva for lube.@@"<br>
<br>
Eyes wide with fear, you part your lips as instructed.
<<if setup.getTotalValue("oral") >= 15>>
Despite your reluctance your skills are more than up to the "task" in front of you. You swallow her to the hilt on the first lunge.<br>
<<elseif setup.getTotalValue("oral") >= 10>>
In spite of your reluctance your mouth spreads reflexively wide to accept her, fitting about three quarters of her full, thick length into your mouth and throat.<br>
<<elseif setup.getTotalValue("oral") >= 5>>
Though you are not a neophyte to such things her cock is larger than any you have before attempted and you only manage to get about half of it into your mouth, gasping and straining against your gag reflex.<br>
<<else>>
Just getting the realistic mushroom head into your mouth forces your jaw wide, and you are barely able to get more than a couple of centimetres in before your gag reflex kicks in and you cough helplessly.<br>
<</if>>
<br>
"@@.npc_manager;That is a start,@@" she snarls before switching to a two-hand grip and using your skull like an onahole. You are a helpless thing as she has her way with your throat, swiftly reminding you of your position in this scene before tossing you to the ground.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
<<if setup.getTotalValue("bdsm") >= 10>>
There is no hiding your lusty excitement as you look back up at your Mistress.
<<if setup.getTotalValue("penis") > setup.getTotalValue("bdsm")>>
The only thing you love move than being dominated is cock,
<<elseif setup.getTotalValue("penis") < setup.getTotalValue("bdsm")>>
The only thing you love move than cock is being dominated,
<<else>>
Two of your greatest loves are cock, and being dominated,
<</if>>
and she has just given you both in spades.<br>
<<else>>
There is no hiding how much such a glorious cock, even a technically artificial one, has excited you. Even as you look up fearfully you can't help but lick your lips in memory of how good it felt between them.
<</if>><<elseif setup.getTotalValue("penis") >= 10>>
<<if setup.getTotalValue("bdsm") >= 10>>
The combination of rough treatment and her massive phallus hits your buttons... hard. There is no denying the look of submissive lust on your face as you stare up at her magnificence from your position on the floor.
<<else>>
Your mouth is watering in unmitigated desire for her cock even as you cower fearfully on the floor.
<</if>>
<<elseif setup.getTotalValue("penis") >= 5>>
<<if setup.getTotalValue("bdsm") >= 10>>
Her intimidating member may be a bit much for your nascent cocklust, but the way she just dominated you? Yes, Mistress, there is no disguising your submissive lust as you stare back up at her.
<<else>>
The intense feeling of her massive member in your mouth has stoked your recently discovered cocklust. You can try to deny it, but the truth is etched on your face as you stare back up at her.
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") >= 10>>
You don't care for cock, but being treated like this? You shiver at the memory of the controlling feeling of her fingers buried in your hair and look up at her, eager, correction, desperate, for more.
<<else>>
The combination of huge cock and harsh treatment has you more than a little scared, but you don't think there's any chance of getting off this ride at this point...
<</if>>
<</if>>
<br><br>
"@@.npc_manager;As enjoyable as it is to watch your sexy lips spread around my cock, I shall not be distracted from my plans.@@"<br>
<br>
[<<moveTo "event_manager_pegging_6" "Wait for what's next." 120>>]
</div>/*#
#desc: kiss manager's strapon
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.suck = "kiss">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Obeying her instructions, you are on your knees at her feet. Looking up at her smiling face, you pucker your lips and place a smooch on the tip of her artificial cock. She smiles wider and you repeat the effort, slowly working your way down the shaft with soft, moist kisses.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
Despite its size her member feels quite realistic against your lips, firm, but with just a bit of flesh-like give, easily igniting your cock-lust even if the flavour isn't right. You have to hold yourself back from spreading your lips and gobbling it up to feel the nice throat-stretch you love. For now, you are determined to present a more... demure appearance.<br>
<<elseif setup.getTotalValue("penis") >= 10>>
Despite its size her member feels quite realistic against your lips, firm, but with just a bit of flesh-like give, easily igniting your cock-lust even if the flavour isn't right.<br>
<<elseif setup.getTotalValue("penis") >= 5>>
Far bigger than any cock you've met in person it feels remarkably lifelike against your lips. You can't help but be a bit intrigued, though you are mostly just intimidated by the implement.<br>
<<else>>
You hope your kissing efforts are appreciated, you can't help but be scared of the massive member, and what it could do to you.<br>
<</if>>
<br>
Fortunately it seems that your loving efforts at least do not displease <<=setup.getNpcName('npc_manager', 'formal')>>. She strokes your hair as you coat her shaft with kisses. Finally, and gently, she tilts your head back to look down at your blushing face.<br>
<br>
"@@.npc_manager;I had planned to see your lips parted and your throat spread around me, but you just look too adorably innocent kissing that big, hard cock. Still, I think it is time to move forward with our little fun.@@"<br>
<br>
[<<moveTo "event_manager_pegging_6" "Wait for what's next." 120>>]
</div>/*#
#desc: lick manager's strapon
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.suck = "lick">>
<<set $scene.peggin_approval += 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Obeying her instructions, you are on your knees at her feet. Looking up at her smiling face, you take her shaft in both hands and, looking up at her the whole time, start to lick its length. She smiles down in mild approval. Emboldened, you intersperse long laps of the long, lewd lolly with suckling the tip.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
Though the taste is not that delicious <<if $options.fem>>heady<<else>>masculine<</if>> flavour you love. You are surprised at how close the texture mimics the real thing. Whatever the case it is close enough to that genitalia you so adore that you feel quite happy, smiling contentedly as you continue to lick and suck.<br>
<<elseif setup.getTotalValue("penis") >= 10>>
It may not, technically, be real, but the mouthfeel is close enough on your tongue to trigger your cocklust and you smile up at her as you suck softly on her tip.<br>
<<elseif setup.getTotalValue("penis") >= 5>>
Bigger in every way than anything you have seen, much less personally addressed orally, you focus on just putting on a decent show, licking and sucking softly and trying not to pay attention to how much your mouth is watering.<br>
<<else>>
Sucking on the tip really drives home how large the artificial cock is. It's more scary than anything else and you do your best to put on a show lest you be forced into something more strenuous.<br>
<</if>>
<br>
Your efforts seem to have pleased <<=setup.getNpcName('npc_manager', 'formal')>>. She strokes your hair and barely thrusts past your lips before gently tilting your head back to look down at you.<br>
<br>
"@@.npc_manager;Mmmm, your lips look so good wrapped around my cock. It is so tempting to just shove it deeper and see how inviting you throat is, but you have done such a good job licking and sucking I will be gentle... for now.@@"<br>
<br>
[<<moveTo "event_manager_pegging_6" "Wait for what's next." 120>>]
</div>/*#
#desc: suck manager's strapon
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.suck = "suck">>
<<set $scene.peggin_approval += 2>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
On your knees at her feet as commanded, you look up and wrap one hand, then the other, around the base of her thick shaft. Going hand over hand as your fingers barely encircle its girth to drive home the <<if $player.sec_style.body.identify_fem>>girl<<else>>boy<</if>>-breaking size of her member, but you have no time for hesitation. Looking up at her deific face and fluttering your eyelashes you part your lips wide and lean forward.<br>
<br>
<<if setup.getTotalValue("oral") >= 15>>
Her cock is a challenge that tests every ounce of your skill, but your fuck-me lips and well-trained throat spread wide, centimetre after centimetre of her magnificence sliding into you until, with eyes wide and throat bulging your lips kiss the smooth leather of her harness. Letting out a muffled moan you give a final thrust forward, pressing your face as hard as you can against her to ensure you take every millimetre.<br>
<<elseif setup.getTotalValue("oral") >= 10>>
You do your best, but even your well-trained throat is not quite up to taking the full breadth of her magnificence. Your throat swells as the majority of her cock disappears past your lips, but you are forced to stop with your nose just shy of brushing her harness-belted crotch.<br>
<<elseif setup.getTotalValue("oral") >= 5>>
Just the tip of her cock touching the back of your mouth is enough to trigger your reduced, but still existent, gag reflex. There is just no way your throat is ready to bulge around its thick girth and you are left merely bobbing your head up and down on the end of her cock.<br>
<<else>>
Your enthusiasm is far beyond your abilities and you barely get much more than the head into your mouth before your nostrils flare and you start to gag.<br>
<</if>>
<br>
Smiling down at your efforts <<=setup.getNpcName('npc_manager', 'formal')>> takes your head in her hands and starts gently fucking your face.<br>
<br>
<<if setup.getTotalValue("penis") >= 15>>
You are in heaven, even if the taste is not that musky <<if $options.fem>>headiness<<else>>masculinity<</if>> you love. The feel of her long, thick cock thrusting <<if setup.getTotalValue("oral") >= 10>>down your throat<<else>>into your face<</if>> is glorious. This is what you were put on this earth to do, and the glazed look in your eyes as you stare back up at her makes that fact very clear.<br>
<<elseif setup.getTotalValue("penis") >= 10>>
Even if your cocklust isn't quite as big as the artificial member thrusting past your lips there is no denying that you love it. Each thrust causes a muffled gasp to escape your throat as your body adjusts to this new, magnificent milestone of mouth-filling monstrosity.<br>
<<elseif setup.getTotalValue("penis") >= 5>>
You may have recently discovered what might be termed an appreciation for cock, but this, this is something else. You are more intimidated than anything at its massive artificial size, but you aren't just drooling on reflex as is glides in and out through your parted lips.<br>
<<else>>
The... thing... now filling your mouth isn't a cock. It is something more, something bigger, scarier. A part of you wants to flee from it, but the other part of you, the part that is in control, remains still, your mouth opened wide as the monstrosity gently has its way with you.<br>
<</if>>
<br>
"@@.npc_manager;Truly, you are quite the <<if setup.getTotalValue("oral") >= 15>>masterful<<elseif setup.getTotalValue("oral") >= 10>>expert<<elseif setup.getTotalValue("oral") >= 5>>developing<<else>>enthusiastic<</if>> mouth fuck-hole, but I have my sights set on a... different orifice. I would love to use your delightful throat some more, but I have some other things in mind for you before we can move forward with the main attraction.@@"<br>
<br>
[<<moveTo "event_manager_pegging_6" "Wait for what's next." 120>>]
</div>/*#
#desc: manager offers you a choice of collars
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Twisting away from you, she grabs something from out of sight behind her on the desk. Turning back she brandishes a pair of collars, one in each hand.<br>
<br>
In her right hand she holds an effeminate pink choker. Trimmed with soft frills <<if $fetish.sissy>>the word SISSI is spelled across the front in glittering pink diamonds<<else>>and accented with glittering pink diamonds<</if>>.<br>
<br>
In her left hand is something far more imposing, a leather bondage collar with an ominous ring dangling from the front and a locking hasp at the back.<br>
<br>
<<if $npc_manager.flags.cruel>>
She sneers down at you. "@@.npc_manager;Look at that bare throat. Disgusting, if I am going to strap this ass you need to be attired appropriately, advertising to the world just what you are... let me think...@@"<br>
<br>
[<<moveTo "event_manager_pegging_7_hers" "Wait..." 120>>]<br>
<<elseif $scene.peggin_approval <= 0>>
<<set $npc_manager.flags.pegging.collar = "none">>
Your gaze darts between the two, equally extreme, neck adornments before finally looking up to see her angry expression.<br>
<br>
"@@.npc_manager;I had planned to give you a choice — between cute <<if $fetish.sissy>>SISSI<<else>>girly<</if>> frills and beautiful submission, but you have been far too misbehaved to possibly deserve the privilege of a collar.@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 14>>
Being denied a collar stings you to your core, but, in spite of your recent misbehaviour, you are far too good of a slave to even consider objecting to your <<=ps(setup.getNpcName('npc_manager', 'title'))>> judgement. Properly chagrined you bow your head and await her next instruction.<br>
<<elseif setup.getTotalValue("submission") >= 8>>
Being denied a collar makes you question your submission. Sure, you have misbehaved quite a bit of late, but still. You start to object only for her to silence you with a glance, her aura of dominance more than sufficient to cow you.<br>
<<else>>
You feel like you have made a serious mistake to come to this point, but a single look up into her eyes tells you that attempting to change her mind — if you even wanted to — would only anger her further. Deciding to quit before you get in more trouble you remain silent.<br>
<</if>>
<br>
She walks slowly around the desk to drop both collars into a drawer before turning back to address you. "@@.npc_manager;Alright, up on the desk.@@"<br>
<br>
Her voice harsh you had better jump to obey lest your further draw her ire.<br>
<br>
[<<moveTo "event_manager_pegging_7_refuse" "Be a brat and say you don't want her collar anyway!">>]<br>
[<<moveTo "event_manager_pegging_7_none" "Sit on the desk and wait.">>]
<<else>>
"@@.npc_manager;So, my dear, here is your penultimate decision before you get to lay back and enjoy me filling you with my... appreciation. How would you like to decorate that lovely, bare throat of yours?@@"<br>
<br>
[<<moveTo "event_manager_pegging_7_slave" "Ask for the leather slave collar." 120>>]<br>
<<if $fetish.sissy>>
[<<moveTo "event_manager_pegging_7_sissy" "Ask to wear the pink sissy choker." 120>>]<br>
<<else>>
[<<moveTo "event_manager_pegging_7_sissy" "Ask to wear the pink lace choker." 120>>]<br>
<</if>>
<<if setup.getTotalValue("submission") >= 12>>
[<<moveTo "event_manager_pegging_7_hers" "Tell her that the decision should be hers." 120>>]<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_manager_pegging_7_refuse" "Resist the need to be owned and refuse her collar." 60 "<<spendWillpower 2>>">>] <<hint $options "This will require a moderate act of will.">><br>
<<else>>
[@@.link_locked;You couldn't possibly refuse the offer of her collar.@@]
<</if>>
<<elseif setup.getTotalValue("submission") >= 7>>
[<<moveTo "event_manager_pegging_7_hers" "Tell her that the decision should be hers." 120>>]<br>
[<<moveTo "event_manager_pegging_7_refuse" "You aren't some sort of slave! Refuse to be collared." 120>>]<br>
<<else>>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_manager_pegging_7_hers" "Overcome your resistance and submit to her judgement as to how you could best be owned." 60 "<<spendWillpower 2>>">>] <<hint $options "This will require a moderate act of will.">><br>
<<else>>
[@@.link_locked;You have not embraced submission enough to surrender the decision to her judgement.@@]<br>
<</if>>
[<<moveTo "event_manager_pegging_7_refuse" "You aren't some sort of slave! Refuse to be collared." 120>>]
<</if>>
<</if>>
</div>/*#
#desc: manager binds you without collaring you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.collar = "none">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You sit on the edge of the desk as she walks around so that your back is to the desk with her standing in front of you. Her large cock hovers ominously close to your body, but does not touch you... yet.<br>
<br>
Extending a hand she pushes on your shoulder, guiding you onto your back. You look up at her magnificence, from her corseted body to her large, perky and pierced breasts to her slight smile and her fiery red hair. She is a Goddess, and you are fortunate to merely exist in her presence.<br>
<br>
Reaching to one side she produces a coil of rope. With quick efficiency she binds your wrist to your calf just below the knee before doing the same on the other side with a matching piece of rope.<br>
<br>
In a mere couple of minutes you are bound. Your arms useless, your legs spread open, you are now completely exposed before her. Looking up, you make a startling new discovery — there is a mirror mounted to the ceiling above her desk looking up has you staring at your own reflection, driving home even harder how helpless and exposed you currently are.<br>
<br>
[<<moveTo "event_manager_pegging_8" "Look up at her and wait for what's next." 180>>]
</div>/*#
#desc: refuse manager's collar, she binds you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.collar = "refuse">>
<<set $scene.peggin_approval -= 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if $scene.peggin_approval >= 0>>
You look between the two choices before you — the <<if $fetish.sissy>>sissy<<else>>girly<</if>> pink choker and its figurative twin and opposite in the black leather collar and then look up at <<=setup.getNpcName('npc_manager', 'formal')>> in defiance and shake your head.<br>
<br>
Her eyebrow shoots up in surprise.<br>
<br>
"@@.npc_manager;Refusing my offer? Are you sure you want to do that?@@"<br>
<br>
Somehow emboldened you nod firmly, bracing for reprimand, only it does not come as she instead sighs in disappointment?<br>
<br>
"@@.npc_manager;A pity, but no matter. You do not need a collar for me to fuck your ass... and we have reached that time. Come on, up on the desk and lie back.@@"<br>
<br>
Somewhat stunned at how casually she took your rejection you are already lying back on the desk before you realise what has happened. The collars having disappeared she brandishes a length of rope now, tying your wrist to your calf just below your knee, first on one side, then the other. Though minimal the restraints nonetheless leave you quite exposed and helpless.
<<else>>
As she turns back to the desk, you shout out that you don't want a collar, you aren't a slave!<br>
<br>
She does not even acknowledge you, putting the collars back in her desk before turning back towards you, an elder god's wrath in her eyes.<br>
<br>
"@@.npc_manager;Not a slave? Technically true, but that is only because you are such a useless, disobedient slut that none would pay even a pittance for you. But I... I will fix that. Oh, yes, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. Your training has only begun.@@"<br>
<br>
Your brief outburst has sapped any courage you had and you wilt under her gaze as she approaches, pushing you back to lie over her desk. A rope appears in her hand and, before you know it, your wrists and knees have been brought together, her strength utterly irresistible as she lashes your limbs together to leave you totally exposed and helpless.
<</if>>
<br><br>
Looking up, you make a startling new discovery — there is a mirror mounted to the ceiling above her desk. Looking up has you staring at your own reflection, driving home even harder how helpless and exposed you currently are.<br>
<br>
[<<moveTo "event_manager_pegging_8" "Look up at her and wait for what's next." 180>>]
</div>/*#
#desc: choose sissy collar, she binds you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.collar = "sissy">>
<<set $scene.peggin_approval += 1>>
<<set $scene.choker = "choker_sissy">>
<<addItem $scene.choker>>
<<wearItem $scene.choker true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("feminization") > setup.getTotalValue("submission")>>
The choice between the two collars is a simple one. Though you may play the part of a submissive you <<if $fetish.sissy>>aren't just a SISSI, but a sissy<<else>>are an eager, cute girl<</if>>, and from the moment you laid eyes on the pink-frilled choker there was really no doubt it belonged around your throat. Making your choice with a nod you raise your chin in eager anticipation.<br>
<br>
With a wide smile <<=setup.getNpcName('npc_manager', 'formal')>> places the leather collar to one side and wraps the pink choker around your throat.
<<elseif setup.getTotalValue("feminization") < setup.getTotalValue("submission")>>
You nod in the direction of the pink <<if $fetish.sissy>>sissy <</if>>choker, your decision surprising the both of you. While it is certainly true that you have swiftly learned to embrace being an obedient submissive there is just something about the <<if $fetish.sissy>>sissy <</if>>pink choker that calls out to you.<br>
<br>
Moving past her brief surprise <<=setup.getNpcName('npc_manager', 'formal')>> places the leather collar to one side and leans over to wrap the pink choker around your neck.
<<else>>
It is a tricky decision between the two neck adornments; the cute, feminine-pink <<if $fetish.sissy>>sissy <</if>>choker and the harsh leather slave collar, but you make you choice, nodding towards the <<if $fetish.sissy>>sissy <</if>>pink choice and raising your chin proudly in anticipation.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> takes your choice in stride, placing the leather collar to one side and leaning over to wrap the pink choker around your throat.
<</if>>
The lace fringe tickles a little under your chin as she snaps it closed, making a few preening adjustments to <<if $fetish.sissy>>centre the large SISSI letters below your chin<<else>>fluff the copious frills<</if>>.<br>
<br>
"@@.npc_manager;So lovely, you truly are blossoming into the perfect <<if $fetish.sissy>>SISSI <</if>>Secretary I always wanted.@@"<br>
<br>
The words send tingles through your body, whatever remaining bits of masculinity you have rightly humiliated, even as the bulk of you swoons slightly at the encouraging words.<br>
<br>
Stepping to the side <<=setup.getNpcName('npc_manager', 'formal')>> pats the edge of the desk.<br>
<br>
"@@.npc_manager;Alright my cutie, hop up and lay back, I think you are just about ready...@@"<br>
<br>
You give a final glance at her intimidating member looming large before you obey, leaning back on the desk per her instruction as she swiftly binds your wrists to your calves just below the knee with twin lengths of rope.<br>
<br>
Looking up, you make a startling new discovery — there is a mirror mounted to the ceiling above her desk looking up has you staring at your own reflection, driving home even harder how helpless and exposed you currently are.<br>
<br>
Standing between your legs, she rests her massive fake member on your thigh, your legs wide, exposed and helpless. She savours the moment, looking down at you with obvious delight for almost a minute to leave you blushing bashfully before she makes her next move.<br>
<br>
[<<moveTo "event_manager_pegging_8" "Look up at her and wait for what's next." 180>>]
</div>/*#
#desc: choose leather slave collar, she binds you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.collar = "slave">>
<<set $scene.peggin_approval += 1>>
<<addItem "bondage_collar_promo">>
<<wearItem "bondage_collar_promo" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("feminization") > setup.getTotalValue("submission")>>
You nod in the direction of the leather bondage collar, your decision surprising the both of you. While it is certainly true that you have been swiftly becoming a cute, feminine <<if $fetish.sissy>>SISSI <</if>>Secretary there is just something about the stout black leather that calls out to you.<br>
<br>
Moving past her brief moment of surprise, <<=setup.getNpcName('npc_manager', 'formal')>> places the pink choker to one side and leans over to wrap the leather collar around your neck.<br>
<<elseif setup.getTotalValue("feminization") < setup.getTotalValue("submission")>>
The choice between the two collars is a simple one. Though you may play the part of the <<if $fetish.sissy>>sissy<<else>>cute secretary<</if>> you ARE a submissive, and from the moment you laid eyes on the black leather there was really no doubt it belonged around your throat. Making your choice with a nod you raise your chin in eager anticipation.<br>
<br>
With a wide, dominant grin <<=setup.getNpcName('npc_manager', 'formal')>> places the <<if $fetish.sissy>>sissy<<else>>cute pink<</if>> choker to one side and wraps the leather collar around your neck.<br>
<<else>>
It is a tricky decision between the two neck adornments; the cute, feminine-pink <<if $fetish.sissy>>sissy <</if>>choker and the harsh leather slave collar, but you make you choice, nodding towards the black leather option and raising your chin proudly in anticipation.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> takes your choice in stride, placing the pink choker to one side and leaning over to wrap the leather collar around your neck.<br>
<</if>>
<br>
"@@.npc_manager;There. Now you are truly mine... at least for now.@@"<br>
<br>
<<printThought "Oh, <<=setup.getNpcName('npc_manager', 'title')>>...">><br>
<br>
On your knees, you sway slightly in submissive delight as she hooks a finger through the ring dangling from your collar and gently pulls you to your feet.<br>
<br>
"@@.npc_manager;Up, slave. Now onto the desk and lean back... that is a good girl.@@"<br>
<br>
You obey her without thinking, or is that with thinking of nothing save your submission to her will? Either way, you are on your back on the desk as she swiftly ties your wrists to your calves just below the knee. The simple, but secure, rope binding having you both restrained and exposed.<br>
<br>
Looking up, you make a startling new discovery — there is a mirror mounted to the ceiling above her desk. Looking up has you staring at your own reflection, driving home even harder how helpless and vulnerable you currently are.<br>
<br>
Standing between your legs, she gently rests her cock on your thigh as she grins down at you.<br>
<br>
"@@.npc_manager;Now it is time for the REAL fun...@@"<br>
<br>
[<<moveTo "event_manager_pegging_8" "Lie back and wait for what's next." 180>>]
</div>/*#
#desc: let her decide on your collar, she binds you
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_manager.flags.cruel>>
<<set $scene.peggin_approval += 2>>
<</if>>
<<if setup.getTotalValue("feminization") > 1.5*setup.getTotalValue("submission")>>
<<set $npc_manager.flags.pegging.collar = "her_sissy">>
<<elseif setup.getTotalValue("submission") > 1.5*setup.getTotalValue("feminization")>>
<<set $npc_manager.flags.pegging.collar = "her_slave">>
<<else>>
<<if random(0,1) == 0>>
<<set $npc_manager.flags.pegging.collar = "her_slave">>
<<else>>
<<set $npc_manager.flags.pegging.collar = "her_sissy">>
<</if>>
<</if>>
<<if $npc_manager.flags.pegging.collar == "her_sissy">>
<<set $scene.choker = "choker_sissy">>
<<addItem $scene.choker>>
<<wearItem $scene.choker true>>
<<else>>
<<addItem "bondage_collar_promo">>
<<wearItem "bondage_collar_promo" true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.cruel>>
She sneers down at you, and then slowly grins... her smile far from comforting as she
<<if $npc_manager.flags.pegging.collar == "her_slave">>
locks a leather collar
<<else>>
wraps a pink, frilly choker
<</if>>
around your neck.
<<else>>
You look back and forth between the two choices in front of you before, instead, looking back up at her face. You shake your head, her expression darkening until you commence your explanation.<br>
<br>
You tell her that she should be the one to determine what should be your fate, since <<=setup.getNpcName('npc_manager', 'formal')>> has proven time and again, to know far better than yourself what you need. Thus you surrender to her guidance once again, trusting that she, as always, knows what is best in life.<br>
<br>
The smile of approval on her face at your words is so wide you think her head might split in half.
<<if setup.getTotalValue("feminization") > 1.5*setup.getTotalValue("submission")>>
Instead she instantly comes to a — frankly obvious — conclusion. Placing the leather collar to one side she wraps the pink frilly choker around your throat, where it belongs.
<<elseif setup.getTotalValue("submission") > 1.5*setup.getTotalValue("feminization")>>
Instead she instantly comes to a — frankly obvious — conclusion. Placing the <<if $fetish.sissy>>sissy<<else>>cute pink<</if>> choker to one side she wraps the black leather collar around your neck, where it belongs. With a quiet click the buckle in the back closes, followed by her showing you a small lock that she uses to seal the deal.
<<else>>
She peers at you for a long moment, as if trying to suss out what would be the perfect accoutrement to accessorise your neck. She seems as torn as you are, finally giving a shrug and wrapping the
<<if $npc_manager.flags.pegging.collar == "her_slave">>
leather collar around your neck. Buckling it snug she finishes it off by showing you a small lock that clicks shut behind your neck, fixing your new collar in place.
<<else>>
<<if $fetish.sissy>>sissy<<else>>cute pink<</if>> choker around your throat.
<</if>>
<</if>>
<</if>>
<br><br>
<<if $npc_manager.flags.pegging.collar == "her_slave">>
"@@.npc_manager;There. Now you are truly mine... at least for now.@@"<br>
<br>
<<printThought "Oh, <<=setup.getNpcName('npc_manager', 'title')>>...">><br>
<br>
On your knees, you sway slightly in submissive delight as she hooks a finger through the ring dangling from your collar and gently pulls you to your feet.<br>
<br>
"@@.npc_manager;Up, slave. Now onto the desk and lean back... that is a good girl.@@"<br>
<br>
You obey her without thinking, or is that with no thought save your submission to her will? Either way, you are on your back on the desk as she swiftly ties your wrists to your calves just below the knee. The simple, but secure, rope binding has you exposed and nigh helpless. Standing between your legs, she gently rests her cock on your thigh as she grins down at you.<br>
<br>
"@@.npc_manager;Now it is time for the REAL fun...@@"
<<else>>
You feel a tingle of excitement at the soft choker fastened in place, another scrap of your silly masculinity strangled by the gentle accoutrement you now wear. She takes a moment to straighten your new choker so that the <<if $fetish.sissy>>word SISSI is perfectly centred under<<else>>soft pink frills properly frame<</if>> your chin before taking a step back.<br>
<br>
"@@.npc_manager;So lovely, you truly are blossoming into the perfect <<if $fetish.sissy>>SISSI <</if>>Secretary I always desired.@@"<br>
<br>
The words send tingles through your body, whatever remaining bits of male pride you somehow have rightly humiliated, even as the bulk of you swoons at the encouraging words.<br>
<br>
Stepping to the side <<=setup.getNpcName('npc_manager', 'formal')>> pats the edge of the desk.<br>
<br>
"@@.npc_manager;Alright my cutie, hop up and lay back, I think you are just about ready...@@"<br>
<br>
You give a final glance at her intimidating member looming large before you obey, leaning back on the desk per her instruction as she swiftly binds your wrists to your calves just below the knee with twin lengths of rope.<br>
<br>
Standing between your legs, she rests her massive fake member on your thigh, your legs wide, exposed and helpless. She savours the moment, looking down at you with obvious delight for almost a minute to leave you blushing bashfully before she continues.
<</if>>
<br><br>
Looking up, you make a startling new discovery — there is a mirror mounted to the ceiling above her desk and looking up has you staring at your own reflection, driving home even harder how helpless and exposed you currently are.<br>
<br>
[<<moveTo "event_manager_pegging_8" "Lie back and wait for what's next." 180>>]
</div>/*#
#desc: manager gives options for removing your chastity belt
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<if $scene.peggin_approval <= 0 || $npc_manager.flags.cruel || !$npc_manager.flags.hascagekey>>
<<set $npc_manager.flags.pegging.chastity = "nooffer">>
<<if $scene.plug != "">>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> smiles and lays her cock across your belly, emphasising <<if $player.body_ref.penis>>how large it is compared to your own <<if $scene.wornCage>><<if $scene.isCage>>caged and <</if>>locked <</if>>member<<else>>just how large it is<</if>>.<br>
<br>
"@@.npc_manager;Feeling helpless yet? In truth you were at my mercy from the moment you walked into my office, but it is all a bit more... tangible like this, is it not?@@"<br>
<br>
Her cock rubs up and down your flat belly, driving home just how deep it could reach into you. She glances down at <<if $scene.wornCage>>your <<if $scene.isCage>>cage<<else>>belt<</if>><<else>>you<</if>> with a smile.<br>
<br>
<<if $scene.peggin_approval <= 0 || $npc_manager.flags.cruel>>
<<if $scene.wornCage>>
"@@.npc_manager;I had thought to release you for our fun but, well, you have just been SO naughty<<if $scene.peggin_approval <= -8>> in fact, I can scarcely imagine how you could have been more ill-behaved through this process, short of literally trying to run away<</if>>. In any case, letting <<if $player.body_ref.penis>>your <<if $fetish.sissy>>sissy <</if>>clitty<<else>>you<</if>> free is a reward that you have in no way earned, so you will just have to enjoy me pegging your cute tush from inside your private prison.@@"
<<else>>
"@@.npc_manager;You look so lovely like this... exposed, at my mercy... and now... now you will have. Your. Reward.@@"
<</if>>
<br><br>
She punctuates her words by <<if $scene.wornCage>><<if $scene.isCage>>tugging on your balls and teasing your <<getWordMyPenis>><<else>>stroking the front of your chastity belt<</if>> and <<if $player.body_ref.penis>>squeezing your <<getWordMyPenis>><<else>>ever so gently running a finger around the edge of your labia<</if>><<else>>teasing you by stroking your thighs<</if>>. You whimper in pain, her attention leaving you <<if $player.body_ref.penis>>hard, straining<<else>>driping with arousal from your un-touched hole<</if>> and feeling oh so helpless.<br>
<br>
She traces a finger down over your captive member, tracing <<if setup.checkItemTypeWorn("cage")>>your prison and then further <</if>>down over your perineum and down to your rear hole.
<<if $scene.plug>>
Finding the <<=setup.getItemName($scene.plug)>> currently occupying your bottom she smiles.<br>
<br>
"@@.npc_manager;Apparently you can do SOMETHING right, on occasion, your holes are always better filled, but now...@@"<br>
<br>
Grasping the plug by the base, she rips it out of your rear, eliciting a pop and a gasp in sequence from your two ends. Placing the plug to one side, she squirts a burst of lube into your momentarily gaping hole before drizzling more slick syrup over her member and squaring her stance.<br>
<br>
"@@.npc_manager;Now it is time. Relax... and enjoy. And if you do not, well... I promise that, with sufficient training, you will come to crave such things. Your destination is inevitable, all this impertinence does is make your journey less comfortable.@@"
<<else>>
Her fingers sliding between your cheeks her eye twitches momentarily, as if annoyed to find you empty. She spends no time scolding you, merely squirting a dollop of lube up your rear before smearing more over her artificial cock.<br>
<br>
"@@.npc_manager;Yet another error on your part... and one that will make what I am about to do to you more uncomfortable. A valuable lesson in how failure to constantly better oneself, in the end, only serves to harm the individual. Your destination is inevitable, all this impertinence does is make your journey less comfortable.@@"
<</if>>
<br><br>
Bound and pinned, you can do nothing but lay there as she aims the fat head of her cock at your hole and prepares to thrust. <<if $player.body_ref.penis>>Your own member continues to betray, or is it illuminate? your desires, straining as hard<<if setup.checkItemTypeWorn("cage")>> as it can within its prison<<else>> while remaining torturously untouched<</if>><<else>> Your other hole drips with excitement, tauntingly untouched and unpenetrated<</if>>.<br>
<br>
[<<moveTo "event_manager_pegging_10" "Try to relax." 60>>]
<<elseif $scene.wornCage>>
<<if !$player.body_ref.penis>>
"@@.npc_manager;Normally I would offer to let you out of your chastity for this... but I think the temptation to use both of your holes... no, the belt can remain in place, it will not get in the way of the pleasures you are about to receive...@@" She smiles. "@@.npc_manager;It is time, my dear.@@"<br>
<br>
[<<moveTo "event_manager_pegging_10" "Try to relax." 60>>]
<<elseif $npc_manager.flags.cruel>>
"@@.npc_manager;I
<<if $scene.peggin_approval == 13>>
might have considered removing your <<if setup.isCage()>>cage<<else>>belt<</if>> in light of your quite admirable behaviour today
<<elseif $scene.peggin_approval >= 9>>
might have considered removing your <<if setup.isCage()>>cage<<else>>belt<</if>> in light of your good behaviour today
<<elseif $scene.peggin_approval >= 5>>
might have considered removing your <<if setup.isCage()>>cage<<else>>belt<</if>>
<<else>>
would not have even considered removing your <<if setup.isCage()>>cage<<else>>belt<</if>>
<</if>>
but then I remembered that you deserve nothing of the sort, that freedom and lenience are quite anathema to your continued development... so enjoy that prison. I know I do.@@"<br>
<br>
[<<moveTo "event_manager_pegging_10" 'Thank her and brace yourself to be "used."' 180>>]<br>
<<elseif $npc_manager.flags.hascagekey>>
"@@.npc_manager;You
<<if $scene.peggin_approval == 13>>
have been perfectly behaved, so you have more than earned me
<<elseif $scene.peggin_approval >= 9>>
have performed very well today and so I am
<<elseif $scene.peggin_approval >= 5>>
have done well enough today and so you have earned the privilege of my
<<else>>
have been all but terrible today, but I am feeling lenient and am going to give you the... benefit of the doubt so that this next experience is a truly special one. I am
<</if>>
offering to remove your <<if $scene.isCage>>cute cage<<else>>lovely belt<</if>> for the duration. What will it be?@@"<br>
<br>
You get the feeling that this choice is for your benefit and that, however you choose, it will not affect her treatment of you today, though it could well unlock something in the future...<br>
<br>
[<<moveTo "event_manager_pegging_9_remove" "Thank her and ask for your <<getWordMyPenis>> to be unrestrained for your pegging." 180>>]<br>
[<<moveTo "event_manager_pegging_9_chaste" "Thank her and request to remain chastely locked for the duration." 120>>]
<<else>>
"@@.npc_manager;You have
<<if $scene.peggin_approval == 13>>
been perfectly behaved, so you have more than earned me
<<elseif $scene.peggin_approval >= 9>>
performed very well today and so I am
<<elseif $scene.peggin_approval >= 5>>
done well enough today and so you have earned the privilege of my
<<else>>
been all but terrible today, but I am feeling lenient and am going to give you the... benefit of the doubt so that this next experience is a truly special one. I am
<</if>>
offering to remove your <<if $scene.isCage>>cute cage<<else>>lovely belt<</if>> for the duration... that is, if I had the key in my possession, which, alas, I do not. Perhaps it is for the best? A real trial by fire to see how it holds up while you are used as the lovely girl you are.@@"<br>
<br>
[<<moveTo "event_manager_pegging_10" 'Thank her and brace yourself to be "used."' 180>>]<br>
<</if>>
<<else>>
"@@.npc_manager;You have
<<if $scene.peggin_approval == 13>>
been perfectly behaved.
<<elseif $scene.peggin_approval >= 9>>
performed very well today.
<<elseif $scene.peggin_approval >= 5>>
done well enough today.
<<else>>
been all but terrible today, but I am feeling lenient and am going to give you the... benefit of the doubt.
<</if>>
Lean back and enjoy your promotion, and your reward.@@"<br>
<br>
[<<moveTo "event_manager_pegging_10" 'Thank her and brace yourself to be "used."' 180>>]<br>
<</if>>
</div>/*#
#desc: manager removes your chastity cage
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.chastity = "remove">>
<<if $scene.wornCage>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<if $scene.plug != "" && !$scene.isSissyomatic>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> smiles as she gives your encased member a final caress before producing the <<if $scene.chastityLevel >= 3>>remote control for<<else>>key to your chastity from a small pocket on her harness rather than its normal place dangling from her necklace to<</if>> your chastity.<br>
<br>
"@@.npc_manager;Ah, my cute wanton slut, how long has it been since your little friend was free? Probably not long enough but, well, I am sure he, or is it she now, like you? will have an enjoyable time out for a brief parole.@@"<br>
<br>
With a loud click your lock releases, your <<if $player.body.penissize[0] <= 3 && $fetish.sph>>small <</if>><<getWordMyPenis>> nigh exploding out of its prison. She <<if $scene.isSissyomatic>>retracts your front shield<<else>>places the chastity device on the desk out of the way<</if>> as your member lies hard against your thigh<<if $player.body_ref.balls>>, your balls tight with excitement<</if>>, a thin trickle of pre leaking down your side.<br>
<br>
She traces over your taut, sensitive skin with a single fingernail, smiling as she wraps a cockring snug around your base.<br>
<br>
"@@.npc_manager;This should help you last a bit longer,@@" she explains, her mere touch having you let out a whimpering gasp as she lightly runs her finger from your tip down your short shaft, past your taut, quivering balls and down over your taint.<br>
<br>
<<if $scene.isSissyomatic>>
You gasp as the plug built into your chastity device spreads you wider, <<=setup.getNpcName("npc_manager","formal")>> smiling as she adjusts your gape to her satisfaction.<br>
<br>
"@@.npc_manager;The wonders of technology, in your case, to have you always filled and ready to serve...@@"<br>
<br>
You merely whimper softly as you think about how it will feel once her large dong is filling you deep, as well as wide.<br>
<br>
<<printThought "She already owned my hole... but now she is truly cementing her claim...">>
<<elseif $scene.plug != "">>
Finding the <<=setup.getItemName($scene.plug)>> currently occupying your bottom she smiles wider.<br>
<br>
"@@.npc_manager;Mmm, very nice, your holes are always better off filled, but you have earned a... shall we say... upgrade?@@"<br>
<br>
Her eyes flit down to the thick member that dwarfs your full-hard <<getWordMyPenis>> in every way, the thought that you are mere moments away from it entering you causing you to shudder in anticipation.<br>
<br>
Grasping the plug by the base, she gently extracts it from your rear, eliciting a pop and a gasp from your two ends. Placing the plug to one side, she squirts a burst of lube into your momentarily gaping hole before drizzling more slick syrup over her member and squaring her stance.<br>
<<else>>
Her fingers sliding between your cheeks her eye twitches momentarily, as if annoyed to find you empty. She spends no time scolding you, merely squirting a dollop of lube up your rear before smearing more over her artificial cock.
<</if>>
<br><br>
Bound and pinned, you can do nothing but lay there as she aims the fat head of her cock at your hole and prepares to thrust. Your own member continues to betray, or is it illuminate? your desires; as hard as you have ever seen it you tremble with quivering anticipation.<br>
<br>
[<<moveTo "event_manager_pegging_10" "Relax and wait." 60>>]
</div>/*#
#desc: manager grants your request to remain caged, asks for your reason
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
She raises an eyebrow at your request to remain locked in chastity.<br>
<br>
"@@.npc_manager;Not that I do not approve — a dicklet like yours is useless save for getting the bearer in trouble, so being locked up is really for your own good, but I would like to know why you wish to keep it on. Have you concluded that your <<if $fetish.sissy>>sissy <</if>>clitty is a nigh-useless thing that should never be allowed free, or do you merely wish to be protected from the... distraction of freedom to better appreciate the sensations of what I am about to put into you?@@"<br>
<br>
You take a moment to consider your reasoning.<br>
<br>
[<<moveTo "event_manager_pegging_9_chaste_1_dickless" "Say your member is useless and should always be kept locked in chastity." 60>>]<br>
[<<moveTo "event_manager_pegging_9_chaste_1_focused" "Tell her you want no distractions from what you are about to receive." 180>>]
</div>/*#
#desc: tell manager that you don't deserve to have a 'free' penis
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.chastity = "dickless">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You explain to <<=setup.getNpcName('npc_manager', 'formal')>> that, with her help, you have concluded that your <<getWordMyPenis false>> is really quite useless and embarrassing and thus best kept <<if $scene.isCage>>caged and out of mind<<else>>secure and concealed within your sleek belt<</if>>.<br>
<br>
She nods somberly at your explanation only to grin wide once more and <<if $scene.isCage>>wrap her hand around your cage<<else>>place her hand against the front shield of your belt<</if>>. She rubs her large artificial cock against you, <<if $scene.isCage>>your entire <<getWordMyPenis false>>cage and all, still smaller than the head of her <<getWordPenis false>><<else>>her <<getWordPenis false>> almost as long as the whole front shield of your belt, utterly dwarfing what is locked within<</if>>.<br>
<br>
"@@.npc_manager;Oh you are just too cute! And I agree, of course, you are a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> now, feminisation, obedience and serving with your holes are your vehicles for pleasure, not this tiny thing.@@"<br>
<br>
You thank her for the gift of chastity and mentally prepare for what she will give you next.<br>
<br>
[<<moveTo "event_manager_pegging_9_chaste_2" "Relax and wait." 120>>]
</div>/*#
#desc: tell manager you like chastity cage for keeping you focused
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.chastity = "focused">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
You explain that while having your <<getWordMyPenis>> free of its prison would feel very good, indeed, you do not want to be distracted from <<if setup.getTotalValue("submission") > 10>>serving her with your ass<<elseif setup.getTotalValue("penis") > 10>>being gloriously stretched by her magnificence<<else>>the first feel of her cock in your ass<</if>>. She smiles and nods in agreement, giving <<if $scene.isCage>>your caged self a final squeeze and then leaning over to place a gentle kiss on the tip of your prison<<else>>the front of your belt a gentle pat and then leaning over to place a gentle kiss right in the centre<</if>>.<br>
<br>
You shudder in delight, even though the hard material insulates you from the warm, wet brush of her lips.<br>
<br>
"@@.npc_manager;Mmmm, I see what you mean. Yes, you will enjoy this far more from inside your <<if $scene.isCage>>cage<<else>>belt<</if>>. Congratulations on making such a mature decision even in the face of what was surely a great temptation.@@"<br>
<br>
You thank her for the gift of chastity and mentally prepare for what she will give you next.<br>
<br>
[<<moveTo "event_manager_pegging_9_chaste_2" "Relax and wait." 120>>]
</div>/*#
#desc: manager removes your plug (if present) and lubes your hole
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.isSissyomatic = setup.getChastityLevel() == 5>>
<<set $scene.plug = setup.getItemFromType('plug')>>
<<if $scene.plug != "" && !$scene.isSissyomatic>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Giving your <<if $scene.isCage>>cage a final unfelt squeeze her hand traces lower, brushing over your testicles and taint before coming to your bum<<else>>belt a final gentle pat, her hand traces lower, following the steel between your legs before finally coming to your bum<</if>>.
<<if $scene.plug != "" && !$scene.isSissyomatic>>
Finding the <<=setup.getItemName($scene.plug)>> currently occupying your bottom she smiles wider.<br>
<br>
"@@.npc_manager;Mmm, very nice, your holes are always better off filled, but you have earned a... shall we say... upgrade?@@"<br>
<br>
Her eyes flit down to the thick member that truly is bigger and better in every way than your <<getWordMyPenis false>> ever was. The thought that you are mere moments away from her entering you causes you to shudder in anticipation.<br>
<br>
Grasping the plug by the base, she gently extracts it from your rear, eliciting a pop and a gasp from your two ends. Placing the plug to one side, she squirts a burst of lube into your momentarily gaping hole before drizzling more slick syrup over her member and squaring her stance.<br>
<<elseif !$scene.isSissyomatic>>
Your chastity device already has your ass spread and gaping, and her fingers slide in with ease, followed by lube that your always ready hole barely needs.
<<else>>
Her fingers sliding between your cheeks her eye twitches momentarily, as if annoyed to find you empty. She spends no time scolding you, merely squirting a dollop of lube up your rear before smearing more over her artificial cock.<br>
<</if>>
<br>
Bound and pinned, you can do, and wish to do, nothing but lay there as she aims the fat head of her cock at your hole and prepares to thrust. Your own member continues to betray... or does it illuminate? your desires. As hard as you have ever felt it, you are taut and ready, straining within your prison... and somehow even more aroused by the restriction.<br>
<br>
[<<moveTo "event_manager_pegging_10" "Relax and wait." 60>>]
</div>/*#
#desc: manager enters you with her strapon
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
It's time. <<=setup.getNpcName('npc_manager', 'formal')>> lets you take one last moment to admire her glorious strap-on before steadily increasing the pressure of its tip against your rear.<br>
<br>
Your heart races as you look up at her and she commences pushing forward.<br>
<br>
<<if $npc_manager.flags.pegging.base_style == "strict" && ($npc_manager.flags.cruel > 0 || $npc_manager.anger > 5 && $npc_manager.anger > $npc_manager.affection)>>
<<=setup.getNpcName("npc_manager","formal")>> grins menacingly as you stare in fear at her massive dong. "@@.npc_manager;So, I had planned to give you a whole assessment on your performance, and use that to determine your treatment... but your prior behaviour...@@" She shakes her head and you feel a shiver of fear run down your spine. "@@.npc_manager;This might have gone in easier if you had been less... reluctant to offer yourself, but it is too late for regrets now. Now all you can do is bend over and try to relax... and maybe think about how much smoother your future will go if you accept and embrace your proper role as my obedient <<if $fetish.sissy>>SISSI <</if>>Secretary fuck-slave.@@"<br>
<br>
[<<moveTo "event_manager_pegging_10_cruel" "Continue." 240>>]
<<else>>
<<switch $scene.peggin_approval>>
<<case 13>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you with obvious pride, and with good reason. You have not only met her expectations, but far exceeded them, behaving absolutely perfectly at every turn in the scene leading to this moment.<br>
<br>
[<<moveTo "event_manager_pegging_10_good" "Continue." 240>>]
<<case 12 11 10>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you with obvious pride, and with good reason. You have made nary an error in meeting or exceeding almost every expectation to make a nigh perfect performance to this point in the winding scene leading to this moment.<br>
<br>
[<<moveTo "event_manager_pegging_10_good" "Continue." 240>>]
<<case 9 8 7 6 5>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you with approval. You have been good and behaved, and she is obviously pleased at your progress and your actions performed in the winding scene leading to this moment.<br>
<br>
[<<moveTo "event_manager_pegging_10_good" "Continue." 240>>]
<<case 4 3 2 1>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> expression is unreadable as she looks down at you. You have not exactly shown your best in the scene leading up to this moment, but you at least do not appear to have left her angry.<br>
<br>
[<<moveTo "event_manager_pegging_10_neutral" "Continue." 240>>]
<<case 0 -1 -2 -3 -4>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks mildly disappointed in you. You can take solace that you have not misbehaved so much as to anger her, but you imagine she hoped the scene leading up to this moment going significantly "better." <br>
<br>
[<<moveTo "event_manager_pegging_10_neutral" "Continue." 240>>]
<<case -5 -6 -7>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> icy glare freezes your blood. You have been quite misbehaved in the scene leading up to this moment and you fear your ass is about to reap the poisonous crop your behaviour has sown.<br>
<br>
[<<moveTo "event_manager_pegging_10_cruel" "Continue." 240>>]
<<case -7>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks down at you with simmering rage. You have slacked off at work and antagonized her at every point in the winding scene that has preceded this moment and now? Now your ass is going to bear the responsibility for the decisions of your head...<br>
<br>
[<<moveTo "event_manager_pegging_10_cruel" "Continue." 240>>]
<<case -8>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks down at you with simmering rage. You have antagonized her at every point in the winding scene that has preceded this moment and now? Now your ass is going to bear the responsibility for the decisions of your head...<br>
<br>
"@@.npc_manager;You stupid whore... I can scarcely imagine a way you could have fucked things up and yet you have not been fired... yes. I suppose I could have refused to promote you but... well, I suppose I am an optimist, hoping that you will somehow rise to the occasion. I would advise that you do, or you will certainly end up on the street before long... though perhaps being an alley whore was your destiny all along?@@"<br>
<br>
[<<moveTo "event_manager_pegging_10_cruel" "Continue." 240>>]
<<default>>
ERROR, approval of <<=$scene.peggin_approval>> unexpected!
[<<moveTo "event_manager_pegging_10_neutral" "Continue." 240>>]
<</switch>>
<</if>>
</div>/*#
#desc: pegging image generation, to be included
#status: FINISHED 0.4.0.0
#*/
<<set $scene.image = "">>
<<if ($player.hair.style == "unkempt") || ($player.hair.style == "combed")>>
<<set $scene.image = "1">>
<<else>>
<<set $scene.image = "0">>
<</if>>
<<if $player.body.breastsize[0]<2>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<if !setup.isItemTypeEquipped('cage')>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<if (setup.analyzeWornTags(['female','male'])!="female") || (setup.checkNaked())>>
<<set $scene.image += "1">>
<<else>>
<<set $scene.image += "0">>
<</if>>
<<if !$player.body_ref.penis>>
<<set $scene.image = "./images/scenes/pegging/nyi.png">>
<<else>>
<<set $scene.image = "./images/scenes/pegging/pegging_01_"+$scene.image+".png">>
<</if>>/*#
#desc: pegging start, loving
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.style = "good">>
<<include event_manager_pegging_10_image>>
<<setThreshold 'anal' 'secretary_anal' 'stage2_end'>>
<<if !$player.virgin.pegged>>
<<set $player.virgin.pegged = 'npc_manager'>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_2'
1
'event_psychiatrist_session_pegging_virginity_1'
false
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_pegging'
0
'theme_church_confession_pegged'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("anal") > 7 >>
You know you can take even something as massive as her cock, but you still feel special and blessed as you eagerly anticipate her entering you for the first time.<br>
<<elseif setup.getTotalValue("anal") > 4>>
Though her artificial cock is intimidating and larger than anything that has been in your ass previously you feel no fear. You trust her, and any pain you might feel will pale next to the joy you gain in performing this service for her.<br>
<<else>>
Despite the massive size of the implement poised against your ass, you feel almost no fear. You trust her, and any pain you might feel will pale next to the joy you gain in performing this service for her.<br>
<</if>>
<br>
Reaching down, she caresses your cheek and smiles one last time. Tracing her hand down your body she gets a firm grasp on your hips and pushes forward.<br>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") > 7>>
Your ass opens for her, the slick rod of silicone stretching and filling you as it drives deeper and deeper without resistance. Though still a challenge
<<elseif setup.getTotalValue("anal") > 4>>
Your ass parts, the slick rod of silicone stretching you like never before, opening you wide as it plunges deeper and deeper. Despite her care there is also pain, but with it
<<else>>
Your untrained rear tries to resist, but flesh is weak compared to her unyielding rod of slick silicone. Like an army pressing inexorably forward she steadily slides into you, your body resisting but, in the end, giving way as she spreads you beyond your limits and pushes to new depths. As gentle as she is there is still pain, but
<</if>>
<<if setup.getTotalValue("penis") > 10>>
waves of pleasure begin to flow outward from her cock. You feel as if you are being impaled on the platonic ideal of a penis, long, thick and unyielding, it is everything you have ever dreamt of, and more.<br>
<<else>>
you feel your body adjusting, the intensity of the experience somehow addictive and you find yourself looking forward to her filling you more and more with each second that ticks past.<br>
<</if>>
<br>
Your heart races and you twist in your bonds, but she is there for you. Her hold is firm but gentle and she whispers quiet encouragement, praising your cute bravery and thanking you for the service of your body.<br>
<br>
Finally, though it seemed she would plunge into you forever there is a changing sensation. Her hips are now pressed against your own, her tip magically touching what feels like the end of you — your body somehow a perfectly sized cock-sleeve to accommodate her member.<br>
<br>
She pauses as you gasp, your breaths coming in short, quick pants as you try to adjust to this magnificent fullness. Holding in place, filling you, she gives you time, your eyes meeting.<br>
<br>
[<<moveTo "event_manager_pegging_11_good" "Enjoy." 300>>]
</div>/*#
#desc: manager starts to peg you dispassionately
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.style = "neutral">>
<<include event_manager_pegging_10_image>>
<<setThreshold 'anal' 'secretary_anal' 'stage2_end'>>
<<if !$player.virgin.pegged>>
<<set $player.virgin.pegged = 'npc_manager'>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_2'
1
'event_psychiatrist_session_pegging_virginity_1'
false
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_pegging'
0
'theme_church_confession_pegged'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
With little in the way of ceremony she takes firm hold of your hips and presses forward.<br>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") > 8>>
Your well-trained ass gapes to accept her massive member, the thick, slick rod of silicone gliding forward with ease. Your eyes roll back in your head as
<<elseif setup.getTotalValue("anal") > 6>>
Her member is more than you have ever taken before but, between the copious lube and her inexorable strength, your flesh gives way, your ass spreading as her cock glides deeper and deeper into you. Despite the pain
<<else>>
You don't see how her massive cock could possibly fit into your tight hole, and yet it does, the thick head forcing past your sphincter, clearing the path for the rest of the shaft to drive deeper and deeper. Despite the pain
<</if>>
<<if setup.getTotalValue("penis") > 10>>
waves of pleasure begin to pulse out from her cock. You feel as if you are being impaled on the platonic ideal of a penis. Long, thick and unyielding it is everything you have ever dreamt of, and more.<br>
<<else>>
you feel your body adjusting, the intensity of the experience somehow addictive and you find yourself looking forward to her filling you more and more with each second that passes.<br>
<</if>>
<br>
You gasp and mew, but she looks down with almost clinical detachment. You are certain she is enjoying the act of impaling your cute ass, but she seems disinterested in gracing you with the pleasure of her appreciation.<br>
<br>
Finally, just as you feel you can take no more, she stops, the leather of her harness pressed against your bare rear, every centimetre of her cock now filling you.<br>
<br>
She pauses, holding at depth for your body to adjust. Her stern look tells you that, while the pegging may, technically, be for your benefit, it will proceed 100% on HER terms. Panting as you try to adjust to the telephone-pole like object in your ass you finally look up to meet her gaze, the glance somehow prompting her to move on.<br>
<br>
[<<moveTo "event_manager_pegging_11_neutral" "Continue." 240>>]
</div>/*#
#desc: manager starts to peg you cruelly
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the "cruel" path your chastity cage remains in place */
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.pegging.style = "cruel">>
<<include event_manager_pegging_10_image>>
<<setThreshold 'anal' 'secretary_anal' 'stage2_end'>>
<<if !$player.virgin.pegged>>
<<set $player.virgin.pegged = 'npc_manager'>>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_2'
1
'event_psychiatrist_session_pegging_virginity_1'
false
>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_pegging'
0
'theme_church_confession_pegged'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> eyes blaze with disappointed anger as she glares down at you. Bound as you are, you have no means of escape, forced to merely lie back and take it as she unleashes her fury. You can't help but think maybe you ought to have been more obedient and less of a brat...<br>
<br>
Her nails digging into your hips she plunges her cock into your ass with savage ferocity.<br>
<br>
<<showImage $scene.image>><br>
<br>
<<if setup.getTotalValue("anal") >= 10 + 3 >>
Even your well-trained ass is stretched to the limit by her swift entrance. You let out a gasp of surprise as she slides forward with lube-slickened speed.
<<elseif setup.getTotalValue("anal") >= 10>>
Before today you would have thought your ass relatively experienced, but your prior time spent with things up your rear was insufficient to prepare you for her voluminous size. Stretching painfully to accommodate her girth it is a credit to the copious lube that she forces her way into you with only a modicum of pain. Still, you would hardly call it comfortable as she thrusts swiftly into you.
<<else>>
Heedless of your tight hole her cock forces you open wide and then drives deeper. Bound and pinned, you can do nothing but cry out at the telephone-pole like object impaling you. It feels like you could split in twain, and looking up at her angry expression you are unsure if such an end is not her intent.
<</if>>
Her tip feels like it is touching the end of you when her leather-harness finally slams against your bare ass. Your entire body slides back a few centimetres from the force before her vice-like grip pulls you back towards her, re-seating her cock full-hilt in your ass.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
Despite the pain of her forcefully swift entry you can't help but be aroused. Her cock is glorious, huge, hard it is bigger than anything you have seen or felt, the platonic ideal of penis compared to which all others are inadequate.<br>
<<else>>
You cry out, her cock doesn't just fill your ass, it seems to pound into your psyche as well, opening you in new ways that cause the pain of its entry to also arouse you further.<br>
<</if>>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
The harsh treatment turns you on something fierce and your eyelids flutter and your eyes roll back in your head — was this why you misbehaved? To be treated so harshly... is that what you now desire?<br>
<<else>>
You feel your psyche break slightly at the harsh treatment. You have definitely learned a lesson, either you need to learn to embrace being a painslut, or you had better shape up your behaviour something quick.<br>
<</if>>
<br>
Holding her position she looks down at you with a sneer.<br>
<br>
"@@.npc_manager;Not bad, slut, but we are just getting started. You should probably relax, but honestly? I do not much care one way or the other.@@"<br>
<br>
You shiver with fright as you wonder what else you are in for.<br>
<br>
[<<moveTo "event_manager_pegging_11_cruel" "Endure." 240>>]
</div>/*#
#desc: she gently pegs you, talks about how you thanked + sucked her
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Smiling down at you, <<=setup.getNpcName('npc_manager', 'formal')>> begins to gently roll her hips. The movement is subtle, her cock shifting less than a centimetre, but it is so big, and you are so full that it lights up every nerve along the length of your anal cavity.<br>
<br>
"@@.npc_manager;You like that? My cute <<if $fetish.sissy>>SISSI <</if>>Secretary?@@"<br>
<br>
You nod your head and moan your appreciations, straining against your bonds as the waves of pleasure pumped into you by her huge strap-on begin to suffuse your entire body, subsume your whole world.<br>
<br>
<<switch $npc_manager.flags.pegging.thank>>
<<case "refuse">>
"@@.npc_manager;Mmm, where was that gratitude earlier, hmm?@@"<br>
<br>
She punctuates her words by laying a quick, playful slap on your rear.<br>
<br>
You gasp, less in pain than in sensory overload, too overwhelmed to do much more but half-mumble an apology. Given that she continues to pump delightful pleasure into your rear, it must have been sufficient.<br>
<<case "thank">>
"@@.npc_manager;Very good, I so enjoy it when you thank me for all the things I do for you. Polite gratitude is one of the lubricants that keeps society moving along, and lubricant is a good thing, right?@@"<br>
<br>
The way her thick cock glides in an out on each short thrust is a reminder of the slick lube coating the walls of your lower passage and you pant and nod in further gratitude.<br>
<<case "appreciate">>
"@@.npc_manager;Mmmm, the way you express your appreciation, so genuine and adorable... well, that is how I know that not only are you becoming the beautiful <<if $fetish.sissy>>SISSI <</if>>Secretary that I want, but that it is your desire as well.@@"<br>
<br>
You groan and nod, the truth of her words making you wish you had spent even more time lavishing her with praise.<br>
<<case "worship">>
"@@.npc_manager;Oh my wonderful <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. I am just remembering how delightful you were worshipping my feet and showering me with kind words. A <<=setup.getNpcName('npc_manager', 'title')>> could get spoiled by such things... yes, that would certainly help me get through some of those all day meetings, to have you curled up under my desk, massaging my feet and keeping me company.@@"<br>
<br>
You blush at the compliment, turning even redder as she continues to rock inside you and look down with a smile.<br>
<<default>>
ERROR! unknown thanks style: <<=$npc_manager.flags.pegging.thank>>
<</switch>>
<br>
Reaching up with one hand, she hooks a thumb in your mouth and you reflexively suck, moaning loud around it as she increases the length of her strokes into your ass. No more is she merely rocking back and forth, now her cock pulls back enough for the wide head to slightly stretch your hole before gliding in to probe your depths, each stroke smooth and long and amazing.<br>
<br>
<<switch $npc_manager.flags.pegging.suck>>
<<case "refuse">>
"@@.npc_manager;Where was this obedient mouth earlier when I offered you my cock? Hmmm?@@"<br>
<br>
You moan as she slides all the way into you as a reminder of which cock she is referring to. She pauses all the way inside you as you hold your breath; it taking you several seconds to realise that she is waiting for you to respond. "@@.pc;Too... too big.@@" You gasp breathlessly.<br>
<br>
She pulls her hips back, leaving you feeling partially empty before she resumes her long, slow pace of thrusts. "@@.npc_manager;Too big? No, not for you. No, this is the perfect size for my adorable, <<if $fetish.sissy>>SISSI<<else>>girly<</if>>, slut, remember? You took it all, but you made me do all the work!@@"" She accentuates her words by tapping the end of you, so much silicone cock inside of your ass it feels like she could be tapping the back of your throat from below.<br>
<br>
Your mouth falls open and she slips more fingers past your lips until you are sucking her whole hand up to the second knuckle. "@@.npc_manager;See? More than big enough, but you refused your duty, so only one of your cute holes gets the gentle treatment today.@@"
<<case "kiss">>
"@@.npc_manager;Such pretty lips, they would look so wonderful around my cock, but all you did was kiss, were you scared?@@"<br>
<br>
You nod as she continues to thrust in and out of you. With each stroke forward she slides another finger past your lips until you are sucking on her hand up to the second knuckle. "@@.npc_manager;See? Plenty of room! But you missed your chance, and so only one of your holes is going to get to enjoy my cock today.@@"<br>
<br>
You whimper in response, licking and sucking on her fingers to show that you will better rise to the next opportunity. She seems satisfied with your efforts, finally removing her hand to leave your lips parted and moist.
<<case "lick">>
"@@.npc_manager;Such a cute tongue, and versatile, too. I quite enjoyed your efforts, but the fact remains that a true <<if $fetish.sissy>>SISSI<<else>>girl<</if>> is always ready to offer her throat to any cock that would use it. What happened, were you scared to feel me bulging your throat?@@"<br>
<br>
You nod nervously, even as she starts sliding more fingers past your lips She adds one finger with each long, deep thrust of her hips until you are sucking her entire hand up to the second knuckle. "@@.npc_manager;See? Plenty of room! But you missed your chance, only managing to enjoy the tip. It is too bad, because it means only one of your holes is going to get to fully enjoy my cock today.@@"<br>
<br>
You whimper in response, licking and sucking on her fingers and wishing they were longer so that you could demonstrate that your throat is ready to accept her full, glorious length.
<<case "suck">>
"@@.npc_manager;Such a good sucker. I just loved it when you swallowed my cock like a good <<if $fetish.sissy>>SISSI <</if>> mouth fuck-hole. That sort of enthusiasm... so beautiful, so perfect. How does it feel? To have taken me in both ends back to back?@@"<br>
<br>
You moan at that reminder, each long, slow stroke into your ass has you flashing back to how it felt to have your throat similarly strain and stretch and bulge around her cock. Taking advantage of your wide-mouthed reflection, she slides the rest of her hand into you, thrusting in and out past the second knuckle as she continues gliding along the full depth of your ass.
<<default>>
ERROR! unknown suck style: <<=$npc_manager.flags.pegging.suck>>
<</switch>>
<br><br>
You cry out lustfully as she gradually slows to a stop, thankful that said stop comes with her settled into a position deep inside your ass.<br>
<br>
[<<moveTo "event_manager_pegging_12_good" "Wait for her next move." 180>>]
</div>/*#
#desc: she dismissively pegs you, talks about how you thanked + sucked her
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Still holding your hips tight she begins to roll her hips, the motion causing her thick cock to slightly rock in and out of your ass. The overall movement is less than a centimetre, but you are so tightly stuffed that it is beyond intense, your mind barely managing to keep track of words when she starts speaking to you.<br>
<br>
<<switch $npc_manager.flags.pegging.thank>>
<<case "refuse">>
"@@.npc_manager;Well, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>? Are you going to start showing your gratitude or are you going to keep up this same petulant silent treatment from earlier?@@"<br>
<<case "thank">>
"@@.npc_manager;You like? I mean, of course you do, but you need to show your thanks, your appreciation, come on, like you did earlier...@@"<br>
<<case "appreciate">>
"@@.npc_manager;Mmm, as easy to read as your <<if $fetish.sissy>>SISSI<<else>>girly<</if>> needs are you should know that it is better for you to vocalise them. Not just your desires, but, more importantly, how you feel when they are met. Well? I remember that adorable monologue you gave, reciting all the ways I have helped you on your journey. Now you have taken another step... tell me how you feel about it...@@""
<<case "worship">>
"@@.npc_manager;You worshipped me as a Goddess, as is proper, and in return... I grant you a divine gift. Feel it inside of you, this is what devotion earns...@@""
<<default>>
ERROR! unknown thanks style: <<=$npc_manager.flags.pegging.thank>>
<</switch>>
<br><br>
Forming coherent words is a bit beyond your present capabilities, but your lips part to release a long, passionate moan of appreciation. <<=setup.getNpcName('npc_manager', 'formal')>> takes the opportunity to slide her thumb past your lips, gently sliding her thumb over your tongue as you reflexively suck in response.<br>
<br>
"@@.npc_manager;That is a good <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, those lips were made to suck...
<<switch $npc_manager.flags.pegging.suck>>
<<case "refuse">>
It is really too bad that you did not display such enthusiasm earlier. As much fun as it may be to take from you that which I desire... I care about you, about your development, and embracing it whole-heartedly will do you much better than forcing me to drag you ever forward.
<<case "kiss">>
unfortunately all you did before was kiss... certainly I appreciated it, and it was quite cute, but when presented with a penis a <<if $fetish.sissy>>SISSI <</if>>bimbo should have two immediate instinctive reactions. If it is small, to <<if $scene.isCage>>cage it<<else>>lock it away<</if>>. If it is large? To suck it. So show me, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, show me what your mouth is really capable of.
<<case "lick">>
Such a nice tongue, quite dexterous, but there is more to giving a good oral presentation than just a nimble tongue and cute lips. No, you need to show off depth AND breadth of skill. That means your throat should yearn to bulge around a nice thick cock.
<<case "suck">>
I am pleasantly surprised you still have so much energy — you gave me quite a show earlier, swallowing my cock like a drowning <<man>> chugging water. If you could only show such enthusiasm in all your duties well... we could have even more fun together.
<<default>>
ERROR! unknown suck style: <<=$npc_manager.flags.pegging.suck>>
<</switch>>
@@"<br>
<br>
As she talks, her strokes get longer, until nearly the full length of her cock is sliding in and out of your ass, sending waves of pleasure through every nerve they glide over as each thrust seems to simultaneously re-fill and stretch you anew.<br>
<br>
While this is going on below, she slides additional fingers past your lips until her entire hand up to the second knuckle is thrusting in and out of your mouth, effectively fucking you from both ends as your heart races and you start to gasp for air.<br>
<br>
It is all so intense you feel like you might faint, but she generously removes her hand. A momentary flicker of approval flashes over her face before her dispassionate observance re-asserts itself, and with it her cock halting its thrusts to once more fully hilt itself in your ass.<br>
<br>
[<<moveTo "event_manager_pegging_12_neutral" "Take the chance to recover before she continues." 240>>]
</div>/*#
#desc: she aggressively pegs you, talks about how you thanked + sucked her
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the "cruel" path your chastity cage remains in place */
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
After her brutal entry you feel like a helpless toy, controlled within and without by a combination of her impaling cock, tight ropes and her unyielding grasp. Then she starts to move.<br>
<br>
Her thrusts are short and fast, like a jackhammer pounding inside your ass.<br>
<br>
<<switch $npc_manager.flags.pegging.thank>>
<<case "refuse">>
"@@.npc_manager;You like that, you ungrateful slut? I should pound you into the floor and spank you red, the way you refused to show any appreciation for everything I have done for you.@@"
<<case "thank">>
"@@.npc_manager;You like that? You like feeling my cock pounding away in your slut hole? Show me, thank me for gracing your insides with my presence.@@"<br>
<br>
You flash back to the simple thanks you gave her earlier. Though you try even that proves beyond your current abilities as your words come out as nothing but gasping guttural moans.
<<case "appreciate">>
"@@.npc_manager;You feel that? That is me returning your appreciation. You thanked me for what I have given you well... it was all leading up to this, and more to come... maybe even cum if you could only fix the rest of your behaviour.@@"
<<case "worship">>
"@@.npc_manager;You know I am remembering you worshipping my feet and well, it is almost hard to stay angry with you... too bad it was a lone ray of light in the dark miasma of your disobedience.@@"
<<default>>
ERROR! unknown thanks style: <<=$npc_manager.flags.pegging.thank>>
<</switch>>
<br><br>
Pulling back slightly she lays a pair of hard slaps on each of your buttcheeks before grabbing your thighs and slamming leather against flesh as she re-asserts full depth. Reaching up towards your face with one hand she jams her thumb past your lips, thrusting it in and out, violating your mouth just as she pulls back her hips and begins violating your ass with long, deep thrusts that take you from gaping around her tip to completely, utterly filled in the course of each stroke.<br>
<br>
<<switch $npc_manager.flags.pegging.suck>>
<<case "refuse">>
"@@.npc_manager;How is that throat? Still remembering what it was like to take me? You know I might be more gentle with your holes if you would just be more behaved. You are a <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, you are meant to be stuffed with cock and if you refuse to do such voluntarily well... it becomes my responsibility to make sure you do not fall behind in your training.@@"
<<case "kiss">>
"@@.npc_manager;See, is it not better to have something inside you face-hole rather than just kiss? Sure, you were cute, but your throat needs to feel my cock almost as much as your ass did, and you missed out with your timidity!@@"
<<case "lick">>
"@@.npc_manager;Mmmm, I feel that tongue. Your skills with that are getting quite impressive, but you need to diversify — a good blowjob is a coordinated act of tongue, lips and throat and on that last count you need to put in some work.@@"
<<case "suck">>
"@@.npc_manager;Still eager to suck? Good, that is exactly what I should be able to expect. If only you showed as much devotion to your other duties as you do to being a deepthroat enthusiast and getting your slutty face-hole filled and fucked.@@"
<<default>>
ERROR! unknown suck style: <<=$npc_manager.flags.pegging.suck>>
<</switch>>
<br><br>
As she speaks, she continues her long thrusts, adding one finger at a time into your mouth until you are sucking her entire hand past the second knuckle, stretching your jaw almost as severely as she is stretching your ass.<br>
<br>
Effectively fucking you from either end simultaneously she continues like that for over a minute before removing her hand from your now-gaping mouth to grasp your hips and slam powerfully forward, hilting herself fully as her leather harness slams into your bare flesh.<br>
<br>
[<<moveTo "event_manager_pegging_12_cruel" "Persevere." 240>>]
</div>/*#
#desc: she gently pegs you, plays with your breasts and talks about how you stripped and looked at her
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Her full magnitude filling you once again, she holds the position and reaches down to her harness to fiddle for a moment. In an instant, your previously heavy eyes open as wide as dinner plates. Though her hips remain glued to yours to remain at depth, her cock is suddenly moving. Not thrusting — it is, instead, vibrating deep inside you, the force of the rumbling motion rippling through your entire torso.<br>
<br>
"@@.npc_manager;See? Bigger AND better than <<if $options.fem>>some other girlcocks<<else>>just some man<</if>>, you like that? Do not bother to answer, your face tells me everything I need to know, you do not just like it, you LOVE it you horny slut.@@"<br>
<br>
There is no denying her words, the pleasure is inescapable. You feel the vibrations of the massive dong along every centimetre of its length as it buzzes away, stimulating the VERY full length and breadth of your ass.<br>
<br>
<<switch $npc_manager.flags.pegging.looked_at>>
<<case "floor">>
Eyes half rolled back in your head you try not to look at your reflection in the ceiling, staring off past <<=ps(setup.getNpcName('npc_manager', 'formal'))>> shoulder only for her to gently cup your chin and point you towards her face.<br>
<br>
"@@.npc_manager;Look at me, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. Look and see how happy I am pegging my slave. Your embarrassment is adorable, but you must not let it get in the way of your primary duty... service to your <<=setup.getNpcName('npc_manager', 'title')>>.@@"<br>
<br>
<<if $player.body.breastsize[0] > 0 >>
Reaching out with both hands she grabs holds of your breasts,
<<if $player.body.breastsize[0] >= 6>>
her fingers stretching to contain as much of your large tits as possible, squeezing and rubbing as she continues to gently thrust.<br>
<br>
"@@.npc_manager;Mmmm, your rack is coming along nicely indeed. Big and lewd and sensitive, just like you.@@"<br>
<<elseif $player.body.breastsize[0] >= 3>>
her fingers perfectly containing your medium-sized tits. Groping and squeezing she gives your nipples a quick tweak.<br>
<br>
"@@.npc_manager;Such well-proportioned breasts, they complement your figure so well, and feel so nice...@@"<br>
<<else>>
her hands completely enveloping your mosquito-bite tits, focusing most of her attention on tweaking your pert nipples.<br>
<br>
"@@.npc_manager;So cute, a nice start to be sure, but I think you would look better bigger, nothing too extreme... though the sight of you with knockers the size of your head would certainly bring a smile to most faces, but something a little larger would really help give you that perfect feminine profile.@@"<br>
<</if>>
<<else>>
Reaching up with both hands as she balances in your ass, she traces down your flat chest, settling on rolling the small buds of your nipples between her fingers as she gently fucks you.<br>
<br>
"@@.npc_manager;My, my, so sensitive. Still a little flat, but we can fix to that, give you a nice attractive pair of sensitive tits that you, and everyone else who lays eyes on your delectable body, will just love.@@"<br>
<</if>>
<<case "eyes">>
You find your gaze drawn to her own, looking up at your <<=ps(setup.getNpcName('npc_manager', 'title'))>> smiling face, though you find yourself blushing and turning aside when she stares back.<br>
<br>
"@@.npc_manager;You are just too cute. Boldly staring at me then acting all bashful when you get caught! You know some Mistress' have to work to keep their slaves from just staring at their breasts, but not you, your face is always adorably turned up! Though, speaking of breasts, lets see how yours are coming along.@@"<br>
<br>
<<if $player.body.breastsize[0] > 0 >>
Reaching out with both hands she grabs holds of your breasts,
<<if $player.body.breastsize[0] >= 6>>
her fingers stretching to contain as much of your large tits as possible, squeezing and rubbing as she continues to gently thrust.<br>
<br>
"@@.npc_manager;Mmmm, your rack is coming along nicely indeed. Big and lewd and sensitive.@@"
<<elseif $player.body.breastsize[0] >= 3>>
her fingers perfectly containing your medium-sized tits. Groping and squeezing she gives your nipples a quick tweak.<br>
<br>
"@@.npc_manager;Such well-proportioned breasts, they complement your figure so well and feel so nice...@@"
<<else>>
her hands completely enveloping your mosquito-bite tits, focusing most of her attention on tweaking your pert nipples.<br>
<br>
"@@.npc_manager;So cute, a nice start to be sure, but I think you would look better bigger, nothing too extreme... though the sight of you with knockers the size of your head would certainly bring a smile to most faces, but something a little larger would really help give you that perfect feminine profile.@@"
<</if>>
<br><br>
"@@.npc_manager;You are so fortunate. I daresay any breasts of any size would look great on your frame, so feel free to stay as you are or go as large as you want.@@"<br>
<<else>>
Reaching up with both hands as she balances in your ass, she traces down your flat chest, settling on rolling the small buds of your nipples between her fingers as she gently fucks you.<br>
<br>
"@@.npc_manager;My, my, so sensitive. Still a little flat, but we can attend to that, give you a nice attractive pair of sensitive tits that you, and everyone else who lays eyes on your delectable body, will just love. After all, it is only proper that you have a rack to match this wonderful bottom you have been blessed with.@@"<br>
<</if>>
<<case "breasts">>
Trying to find a "safe" place to focus your gaze the combination of your <<=setup.getNpcName('npc_manager', 'title')>> looming over you and your lewd reflection beaming down from the mirror above makes such difficult. As your eyes flit about, they can't help, but focus once more on the shiny piercings adorning <<=ps(setup.getNpcName('npc_manager', 'formal'))>> nipples. Though your glance is brief, she notices, her smile widening like the proverbial cat who caught the canary.<br>
<br>
"@@.npc_manager;You naughty girl! You just cannot help staring at my breasts, can you?@@"<br>
<br>
<<if $player.body.breastsize[0] > 0 >>
Reaching out with both hands she grabs holds of your breasts,
<<if $player.body.breastsize[0] >= 6>>
her fingers stretching to contain as much of your large tits as possible, squeezing and rubbing as she continues to gently thrust.<br>
<br>
"@@.npc_manager;Mmmm, your rack is coming along nicely indeed. Big and lewd and sensitive.@@"
<<elseif $player.body.breastsize[0] >= 3>>
her fingers perfectly containing your medium-sized tits. Groping and squeezing she gives your nipples a quick tweak.<br>
<br>
"@@.npc_manager;Such well-proportioned breasts, they complement your figure so well, and feel so nice...@@"
<<else>>
her hands completely enveloping your mosquito-bite tits, focusing most of her attention on tweaking your pert nipples.<br>
<br>
"@@.npc_manager;So cute, a nice start to be sure, but I think you would look better bigger, nothing too extreme... though the sight of you with knockers the size of your head would certainly bring a smile to most faces, but something a little larger would really help give you that perfect feminine profile.@@"
<</if>>
<br><br>
"@@.npc_manager;Judging by how you cannot keep your eyes off of mine I think you need a bit of an accessory as well... yes a nice pair of piercings would look just perfect on you... and be quite convenient to pull and play with as well.@@"<br>
<<else>>
Reaching up with both hands as she balances in your ass, she traces down your flat chest, settling on rolling the small buds of your nipples between her fingers as she gently fucks you.<br>
<br>
"@@.npc_manager;My, my, so sensitive. Still a little flat, but we can attend to that, give you a nice attractive pair of sensitive tits that you, and everyone else who lays eyes on your delectable body, will just love. And while those develop... well, a pair of piercings would meld form and function to make these cute nipples really pop.@@"<br>
<</if>>
<<default>>
ERROR! unknown looked_at style: <<=$npc_manager.flags.pegging.looked_at>>
<</switch>>
<br>
Giving your nipples a final flick, her hands roam across the rest of your body. Following your ribs, she traces the bound circuit running from your hips, along your thighs, back up your arms then down your sides once again.<br>
<br>
<<switch $npc_manager.flags.pegging.strip>>
<<case "fast">>
"@@.npc_manager;You look so good naked... though I think you could do with a bit more... decorum in getting to such a state. Enthusiasm is great, but your stripping earlier... well, it lacked a certain something in the erotic department. Just because you are getting naked does not mean you should skip putting on a show in the process.@@"<br>
<<case "fast_lingerie">>
"@@.npc_manager;You look so good in lingerie... though I think you could do with a bit more... decorum in getting to such a state. Enthusiasm is great, but your stripping earlier... well, it lacked a certain something in the erotic department. Just because you are getting naked does not mean you should skip putting on a show in the process.@@"<br>
<<case "sensuous">>
"@@.npc_manager;Anyone ever tell you that you look very cute naked? Because you do. And that strip tease... mmm, do you have a second job on the side? Because you could totally be a professional with skills like that.@@"<br>
<<case "sensuous_lingerie">>
"@@.npc_manager;Anyone ever tell you that you look very cute in lingerie? Because you do. And that strip tease... mmm, do you have a second job on the side? Because you could totally be a professional with skills like that.@@"<br>
<<default>>
ERROR! unknown strip style: <<=$npc_manager.flags.pegging.strip>>
<</switch>>
<br>
She continues to stroke your skin, her fingers setting off tiny fireworks as her cock rumbles and rocks inside your ass.<br>
<br>
The combination of it all is getting very intense, and she seems to sense it too, dialing back the vibrations to a teasing purr as she walks her fingers down your thighs towards your <<if $player.body_ref.penis>><<if !setup.checkItemTypeWorn("cage")>>rock hard <</if>><<getWordMyPenis>><<else>><<if setup.checkItemTypeWorn("cage")>>hidden and imprisoned valley<<else>><<getWordVagina>><</if>><</if>>.<br>
<br>
[<<moveTo "event_manager_pegging_13_good" "Savour this moment." 240>>]
</div>/*#
#desc: she neutrally pegs you, plays with your breasts and talks about how you stripped and looked at her
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> looks down at you calmly as you twitch and moan in your positioned fully impaled on her cock. One arm hooked under your thigh to keep you from scooting away she reaches for her hip with her other hand, manipulating an unseen controller until the cock filling your ass starts to vibrate.<br>
<br>
The sudden, strong vibrations rumbling through your body are as intense as they are inescapable. Calmly she watches you pant and twitch for several moments as she dials in the speed.<br>
<br>
"@@.npc_manager;You like that, slut? You like that your <<=ps(setup.getNpcName('npc_manager', 'title'))>> cock is bigger AND better than any <<if $options.fem>><<if $fetish.futanari>>futa's<<else>>other girl's<</if>><<else>>man's<</if>>?@@"<br>
<br>
Though you blush at her words, her taunts are somewhat dispassionate, her emotionless treatment of the intense feelings pounding in and vibrating through your body driving home your helpless servitude even more. Finally satisfied at the frequency of the intense waves of sensation pulsing through your body she angles her hips slightly to pin you down and reaches both hands towards your chest.<br>
<br>
Clenching your hands and arching your feet, you twitch your head back and forth, exercising what minimal freedom of movement you have as you try to cope with the intensity of sensation flowing out from her cock.
<<switch $npc_manager.flags.pegging.looked_at>>
<<case "floor">>
Nearly overwhelmed your eyes are unfocused, looking up at the ceiling and your blurry reflection, barely noticing her black-gauntlet'd arms reaching out until her fingers
<<if $player.body.breastsize[0] > 0 >>
<<if $player.body.breastsize[0] >= 6>>
are digging into your large breasts.
<<elseif $player.body.breastsize[0] >= 3>>
are enveloping you breasts.
<<else>>
are pinching your small breasts.
<</if>>
<<else>>
are scraping over your bare chest.
<</if>>
Toying with your rock-hard nipples she pinches and tweaks until she has your rapt attention.<br>
<br>
"@@.npc_manager;Tsk, tsk, always looking away. Before it was alright. A downward looking, subservient slave is quite respectful, but now? You need to stay focused, this performance is not for my benefit... well, not JUST for me.@@"
<<case "eyes">>
Casting about like a drowning sailor you eyes fixate on her face. You focus on her lovely, yet neutral, expression until she notices the attention and her gaze overpowers and drills back into your skull.<br>
<br>
"@@.npc_manager;I hope you do not have any ideas that in meeting my gaze you are my equal. No, from the moment you first walked through my door you belonged at my feet, or under them. You may be taking your time to learn these facts, but consider it an immutable law of the universe — you. are. MINE.@@"<br>
<br>
The momentary emotion of her blazing eyes dissipates swiftly, your thoughts just as rapidly distracted by her hands
<<if $player.body.breastsize[0] > 0 >>
on your breasts.
<<if $player.body.breastsize[0] >= 6>>
Rough and aggressive she squeezes your large tits, teasing your nipples and giving you a couple of slaps to set the fatty tissue jiggling.
<<elseif $player.body.breastsize[0] >= 3>>
Her hands envelop your breasts, pinching your nipples and digging her fingernails into your soft flesh.
<<else>>
Your small breasts are not lacking in sensation as she focuses her attentions on your pert nipples, pinching and pulling and rolling them between her fingers.
<</if>>
<<else>>
seeking out your nipples like heat-seeking missiles, tweaking your small buds and rolling them back and forth between her fingers.
<</if>>
All throughout the vibrations in your ass continue to build, blunting the pain in your chest and twisting it into something intense somewhere between agony and ecstasy.
<<case "breasts">>
Your eyes flitting back and forth until, once again, they end up focusing on the gleaming shields piercing and surrounding her nipples. Almost instantly she notices your attention, a slight smile flicking over her lips as she harshly pinches your nipples.<br>
<br>
<<if $player.body.breastsize[0] > 0 >>
<<if $player.body.breastsize[0] >= 6>>
"@@.npc_manager;Ogling me again? You horny slut, you definitely need some piercings of your own for those huge bitch tits of yours.@@"
<<elseif $player.body.breastsize[0] >= 3>>
"@@.npc_manager;Ogling me again? You horny slut, you definitely need some piercings of your own for your sexy rack, and maybe a few more cup sizes while we are at it if you are so obsessed with breasts.@@"
<<else>>
"@@.npc_manager;Ogling me again? You horny slut, you definitely need some piercings of your own for these cute breasts. While we are at it perhaps we should address your size. These are far too small for a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> slut like yourself — it should be a challenge for someone to choose between staring at your tits and your ass and with a back-end like yours, well... you need an upstairs to match.@@"
<</if>>
<<else>>
"@@.npc_manager;Ogling me again? You horny slut, you definitely need some piercings of your own for those cute nipples. And probably some breasts as well. I know some like the innocent flat-chested look, but I think a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> needs some curves and as nice as your hips are, well... your upstairs is definitely in need of an expansive remodel.@@"
<</if>>
<<default>>
ERROR! unknown looked_at style: <<=$npc_manager.flags.pegging.looked_at>>
<</switch>>
<br><br>
She reaches for the controls again and your heart almost stops. Whether you want her to crank things up or turn them off you couldn't say, but what she actually does comes as a shock, literally. You almost jump into the air at the painful electric shock that is unleashed deep inside your rear. The muscles of your ass clench in response, tightly gripping your thick intruder and causing the still-running vibrations to feel even more intense.<br>
<br>
"@@.npc_manager;Bigger, better, and MUCH more versatile.@@" She states as she eases the shocks down from their initial power. Still painful it is not quite as intense, a mere jolt every few seconds that serves to have you attentive and rhythmically clenching without having you to try to jump or jerk off the desk.<br>
<br>
It is all you can do to stay focused, nodding and twitching as her hands start to roam. Alternating between clawing and caressing she plays your flesh like an instrument, even her gentlest touch intense in a way you cannot put into words.<br>
<br>
<<switch $npc_manager.flags.pegging.strip>>
<<case "fast">>
"@@.npc_manager;As... ambivalent as I may be about your behaviour today I have to say... you look quite wonderful naked. Do not take that as instruction, however, the proper clothing, hinting and framing rather than merely displaying... well, that can be so much more that just flesh. The same goes for shedding your clothing, fast is good, but slow...@@" augmenting her words she tweaks the controls yet again, dialing the vibrations down to a slow, powerful thrumming that rumbles through your whole body, while the shocks are timed perfectly to have you clenching down in between shuddering pulses. "@@.npc_manager;Well, slow... can be divine.@@"<br>
<<case "fast_lingerie">>
"@@.npc_manager;As... ambivalent as I may be about your behaviour today I have to say... you look quite wonderful in lingerie. The proper clothing, hinting and framing rather than merely displaying... well, that can be so much more that just flesh. The same goes for shedding your clothing, fast is good, but slow...@@" augmenting her words she tweaks the controls yet again, dialing the vibrations down to a slow, powerful thrumming that rumbles through your whole body, while the shocks are timed perfectly to have you clenching down in between shuddering pulses. "@@.npc_manager;Well, slow... can be divine.@@"<br>
<<case "sensuous" "sensuous_lingerie">>
"@@.npc_manager;In the interest of education I should mention that your little strip performance? Excellent, if you had only been that good throughout, well... perhaps you could have evaded these painful shocks, but chin up, all this clenching will do wonders for your glutes!@@"<br>
<<default>>
ERROR! unknown strip style: <<=$npc_manager.flags.pegging.strip>>
<</switch>>
<br>
She lets you stew in the mix of shocks and vibrations for another half a minute before finally silencing her cock. Stroking your quivering thighs her hand slides down your leg <<if $player.body_ref.penis>>towards your <<if !setup.checkItemTypeWorn("cage")>>rock hard <</if>><<getWordMyPenis>><<else>>and between your thighs..<</if>>.<br>
<br>
[<<moveTo "event_manager_pegging_13_neutral" "Try to recover for what's next." 180>>]
</div>/*#
#desc: she cruelly pegs you, plays with your breasts and talks about how you stripped and looked at her
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the "cruel" path your chastity cage remains in place */
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> looks haughtily down, holding you with one arm hooking your thigh while her other reaches towards her hip. A moment later you jump, but her firm grip keeps her cock from slipping out, her leather harness pressed against you as you pant and try to recover from the electric shock that just speared deep into your ass.<br>
<br>
"@@.npc_manager;Not just bigger than <<if $options.fem>><<if $fetish.futanari>>a futa<<else>>other girls<</if>><<else>>a man<</if>>, but more... feature-packed as well.@@" She rolls her hips slightly to emphasis how full you are as another, though weaker shock causes your muscles to clamp tightly around your intruder. You whimper as she moves her hand away from the controls, another shock telling you that their rhythmic, painful stimulation is your new normal.<br>
<br>
The clenching spurred by the shocks has her very securely fixed in your ass and she takes advantage to release her grasp on your legs and reach towards your chest with both hands.
<<switch $npc_manager.flags.pegging.looked_at>>
<<case "floor">>
<<if $player.body.breastsize[0] > 0 >>
Grabbing your breasts firmly she establishes herself by digging her nails into your flesh, clawing inward before tugging on your hard nipples.<br>
<br>
<<if $player.body.breastsize[0] >= 6>>
"@@.npc_manager;Look at me, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@" She commands, giving one breast a loud slap before resuming toying with your nipples.<br>
<<elseif $player.body.breastsize[0] >= 3>>
"@@.npc_manager;This is what naughty <<if $fetish.sissy>>SISSIs<<else>>girls<</if>> get. Next time I may hook your tits up to the electricity as well, see if we can shock some obedience into you.@@"<br>
<<else>>
"@@.npc_manager;It is a pity your breasts are so small. disappointing, just like your little dicklet, but we will attend to them both in the proper way soon enough.@@"<br>
<</if>>
<br>
"@@.npc_manager;No, do not divert your sight, looking at the floor cannot save you, not earlier, and not now. Gaze upon your <<=setup.getNpcName('npc_manager', 'title')>>, worship her with your eyes and do not look away unless I command it.@@"
<<else>>
She tugs hard enough to form little cones of flesh on your otherwise flat chest, teasing your lack of breasts as she painfully torments your ass and nips.<br>
<br>
"@@.npc_manager;Look at this! embarrassing! A <<if $fetish.sissy>>SISSI<<else>>girl<</if>> needs curves, I do not care how nice your hips are you need something up top to match!@@"
<</if>>
<<case "eyes">>
<<if $player.body.breastsize[0] > 0 >>
She grabs your breasts with both hands, squeezing your
<<if $player.body.breastsize[0] >= 6>>
large
<<elseif $player.body.breastsize[0] >= 3>>
medium
<<else>>
small
<</if>>
breasts, scratching your soft skin before settling in to cruelly pinch your nipples.<br>
<br>
<<else>>
Her hands like pinchers she goes straight for your small nipples, pinching and twisting with gusto.<br>
<</if>>
<br><br>
"@@.npc_manager;Still trying to meet my gaze, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>? While you have very cute eyes, do not think for a single second that such temerity means we are on anything like equal planes. You are the slave, I am the owner, now and forever.@@"
<<case "breasts">>
<<if $player.body.breastsize[0] > 0 >>
Gasping and whimpering with each jolt coursing into your rear you look up in hopes of mercy.<br>
<br>
"@@.npc_manager;Oh, NOW you remember where my eyes are? Do I need to electrify your <<if $fetish.sissy>>SISSI <</if>>rear hole all the time to keep you from staring at my nipple rings? Ooohhh, or maybe you need a pair of nipple adornments of your own — electrified, of course.@@"<br>
<br>
<<if $player.body.breastsize[0] >= 6>>
She grabs your large breasts, her fingers digging into the sides and then scraping up until all she is holding are your hard nipples, pulling them painfully away from your body as she squeezes them tight.<br>
<br>
"@@.npc_manager;Yes, these big bitch-tits would look MUCH better with some steel adornments. Keep behaving like you have today and I will be sure to make them nice and heavy and harsh.@@""
<<elseif $player.body.breastsize[0] >= 3>>
She gropes your moderate breasts, giving them each a couple slaps before focusing on your nipples, squeezing them tight between her fingers and giving them a little twist.<br>
<br>
"@@.npc_manager;I quite like how your breasts have developed, perky, but not too small. They fit so nicely in my hands, but they would DEFINITELY look better with a nice set of piercings, maybe if you have your own you will not be so intent on staring at mine.@@"
<<else>>
Laying on your back makes your already small breasts practically disappear, but <<=setup.getNpcName('npc_manager', 'formal')>> seems more focused on your hard nipples anyway, giving them each a couple flicks before pinching and twisting them.<br>
<br>
"@@.npc_manager;A bit of advice, if you expect to get away with this whole "naughty girl" routine it would behoove you to have a proper set of tits to flash. Of course that sort of thing will not get you out of trouble with me, but others, and thinking of it my secretary really should have some more... enticing cleavage. Maybe I can dangle weights off a set of nipple rings to help encourage you to develop.@@"
<</if>>
<<else>>
Running her hands over your flat chest she focuses in on your small, sensitive nipples, squeezing and pinching them in time to the electric shocks pulsing in your ass.<br>
<br>
"@@.npc_manager;You know some slaves only act out out of jealousy. Is that what is going on here? You were staring so hard at my nipple shields, were you overcome with jealousy of my breasts and jewellery? Certainly you have reason given your poor flat-chested state, but you ought to know better than to take those things out on me — even with today's disobedience I am sure you will have a nice womanly figure soon enough.@@"
<</if>>
<<default>>
ERROR! unknown looked_at style: <<=$npc_manager.flags.pegging.looked_at>>
<</switch>>
<br><br>
You whimper in pain as she removes her hands from your chest and re-asserts her control of your legs, spreading them a little wider as she shifts inside of you.
<br>
You are starting to adjust to the electric shocks stimulating your rear, but then she fiddles with the controls again. Her hips still pressed against your own her cock starts moving, vibrating deep inside you, your electricity-induced clenching causing the rumbling to shake your entire body.<br>
<br>
"@@.npc_manager;As I said, bigger, better and more versatile than any so-called "real" cock.@@" You moan, the pleasurable vibrations only making you more sensitive to the painful shocks, which cause you to clench and accentuate the vibrations. It is an evil feedback loop that has you quivering and gasping with her still buried inside of you.<br>
<br>
"@@.npc_manager;Ooooh, look at those goose-bumps, is this too intense for you, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>?@@"<br>
<br>
Even if you could manage to form a response she seems disinterested in hearing it, instead clawing her hands over your skin, not quite scratching hard enough to bleed, but enough to leaving pink trails across your pale flesh.<br>
<br>
<<switch $npc_manager.flags.pegging.strip>>
<<case "fast">>
"@@.npc_manager;I do so love your naked body, and look forward to it continuing to... improve. As that happens, you should also work on presenting it better — obeying my instructions is all well and good, but imagine how much better you would have looked if you had put a bit of sensuous thought into removing your clothes instead of shedding them in an instant like it was a race.@@"
<<case "sensuous">>
"@@.npc_manager;Hmm, you look quite adorable all naked and exposed... I cannot help recalling how you got like this, the beauty of how you stripped only bringing into sharper contrast your more generalised misbehaviour.@@"
<<case "fast_lingerie">>
"@@.npc_manager;I do so love your body, and look forward to it continuing to... improve. As that happens, you should also work on presenting it better — obeying my instructions is all well and good, but imagine how much better you would have looked if you had put a bit of sensuous thought into removing your clothes instead of shedding them in an instant like it was a race.@@"
<<case "sensuous_lingerie">>
"@@.npc_manager;Hmm, you look quite adorable all exposed... I cannot help recalling how you got like this, the beauty of how you stripped only bringing into sharper contrast your more generalised misbehaviour.@@"
<<default>>
ERROR! unknown strip style: <<=$npc_manager.flags.pegging.strip>>
<</switch>>
<br><br>
She turns up the shocks and vibrations, causing you to cry out and arch your back. Your hips rise off the desk, but she stays with you, her cock never retreating from filling your hole, holding you in the air as you twitch and buck with each painful shock.<br>
<br>
[<<moveTo "event_manager_pegging_13_cruel" "Suffer." 180>>]
</div>/*#
#desc: she gently pegs you, comments on collar and plays with your cage/penis until you climax
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<if $player.body_ref.penis>>
<<switch $npc_manager.flags.pegging.chastity>>
<<case "">>
Her artificial cock buzzing and jolting in your ass as her hands move between your legs, making a strange, gently counterpoint to the fierce, buzzing, shocking, fucking happening mere centimetres away. The whole time she looks beatifically down at you, her kind smile as if these sensations pushing you to your limit are a gift, and somehow, as she continues to gaze down and you start to feel as if they are.
<<case "nooffer">>
Her artificial cock buzzes and jolts in your ass as her hands <<if $player.body_ref.penis>>wrap around your <<getWordMyPenis>> she smiles gently. Her hand gently <<if $scene.wornCage>><<if $scene.isCage>>massaging your balls<<else>>stroking the front of your chastity belt<</if>><<else>>wrapped around your <<getWordMyPenis>><</if>><<else>>rubbing between your legs<</if>> makes a strange, gently counterpoint to the fierce, buzzing, shocking, fucking happening mere centimetres away. The whole time she looks beatifically down at you, her kind smile as if these sensations pushing you to your limit are a gift, and somehow, as she continues to gaze down and you start to feel as if they are.
<<case "remove">>
Your <<getWordMyPenis>> has been rock hard throughout her pegging, but now she finally touches you, the mere brush of her fingers like heaven. You moan in arousal, so close to orgasm and yet a part of you holds back, not wanting it to end yet.<br>
<br>
She notices your plight, smiling down and stroking with one hand as she reaches for the controls at her hip. "@@.npc_manager;This getting a bit intense? Here, let me take the edge off. You have more than earned an orgasm, but I am not ready for you to cum QUITE yet.@@"<br>
<br>
Even with the "help" of the snug cockring you do not see how holding back is possible... and then the electricity lances deep into your ass. You jump in surprise, letting out a gasp of pain as she coos and strokes your cock. "@@.npc_manager;Shhh, shhh, I know it hurts, but it is the only way to keep things going, you can be brave for your <<=setup.getNpcName('npc_manager', 'title')>>, right?@@"<br>
<br>
<<if setup.getTotalValue("bdsm") >= 10>>
Though it does succeed in pushing back your orgasm the painful jolt turns you on more, especially when it starts to repeat at a lower power.
<<else>>
The pain of the shock slams through your body, causing you to tense every muscle you have, though your <<getWordMyPenis>> remains hard throughout, twitching in time as milder shocks continue to spear your ass.
<</if>>
<br>
The shocks are rhythmic now. Not as potent as the first one, but enough to have your ass pulsing and clenching around its still-buzzing intruder and making everything more intense.<br>
<br>
"@@.npc_manager;There, isn't that better? You feel so sensitive, so delicate... so beautiful...@@"<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
Still trembling you nod obediently, relishing her total control on you from within and without.
<<else>>
You whimper, completely helpless and under her control.
<</if>>
<<case "focused" "dickless">>
She <<if $scene.isCage>>massages your balls and caresses you through your cage<<else>>tenderly strokes the front of your chastity belt<</if>>. Though the rigid material makes such impossible, you imagine you can feel her on your imprisoned <<getWordMyPenis false>>, straining with all its might to fill its chamber.<br>
<br>
"@@.npc_manager;Look at that, so tiny, so useless, so beautiful... you look about ready to burst... let me help with that.@@"<br>
<br>
You don't have time to figure out what she means, too distracted by her mere presence, not to mention the buzzing torpedo in your ass. Like a lightning rod, her cock pulses electricity deep inside of you, the painful jolt causing your eyes to open wide as you look up at her in shocked fear.<br>
<br>
<<if setup.getTotalValue("bdsm") >= 10>>
Though it does succeed in pushing back your orgasm the painful jolt turns you on more, especially when it starts to repeat at a lower power.
<<else>>
The pain of the shock slams through your body, causing you to tense every muscle you have, though your <<getWordMyPenis>> remains hard throughout, twitching in time as milder shocks continue to spear your ass.
<</if>>
<br>
"@@.npc_manager;Hush, hush little <<if $fetish.sissy>>SISSI<<else>>girl<</if>>...@@" she comforts you, stroking your face as she dials back the power until the infrequent shocks mainly cause your muscles to rhythmically tighten around your intruder rather than be painful.<br>
<br>
<<if setup.getTotalValue("submission") >= 10>>
You smile back up, wanting to re-assure her that you can take it, for her.
<<else>>
You whimper, completely helpless and under her control, trembling in time with the rumbling in your ass.
<</if>>
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<<else>>
Her artificial cock buzzing and jolting in your ass her hand slides between your legs, <<if setup.checkItemTypeWorn("cage")>>resting possessively against the front shield of your chastity belt<<else>>circling your <<getWordVagina>>, but never getting close enough to touch<</if>>, a gentle teasing that makes quite the contrast to the fierce, buzzing, shocking, fucking happening mere centimetres away. The whole time she looks beatifically down at you, her kind smile as if these sensations pushing you to your limit are a gift, and somehow, as she continues to gaze down and you start to feel as if they are.
<</if>>
<br><br>
Buzzing, jolting and stroking, she pushes things even further by slowly rocking her hips, making you feel like a puppet, a cocksleeve, a living onahole wrapped around her cock.<br>
<br>
<<switch $npc_manager.flags.pegging.collar>>
<<case "none">>
ERROR! good path should be offered collar
<<case "refuse">>
Her hand caresses your neck, not squeezing, more exploring, as if expecting to find something there to grab...<br>
<br>
You stare up as she thrusts into you, the look in her eye making you feel very, very owned.<br>
<br>
"@@.npc_manager;That's a good girl, now cum, cum for me hard...@@"
<<case "sissy" "her_sissy">>
Smiling down at you as your body is overloaded with pleasure, she runs her fingertips across your collar. Looking up at your reflection in the ceiling you watch her trace the <<if $fetish.sissy>>letters of SISSI<<else>>soft pink frills<</if>> and somehow moan out a single word in response — "@@.pc;Yours.@@"<br>
<br>
Her smile of approval blossoms into a wide grin of utter adoration.<br>
<br>
"@@.npc_manager;Yes you are. My wonderful <<if $fetish.sissy>>SISSI <</if>>Secretary. Now, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, cum for your <<=setup.getNpcName('npc_manager', 'title')>>, cum for me good.@@"
<<case "slave" "her_slave">>
Reaching down, she hooks a finger through the ring of your collar, tugging possessively as she thrusts in and out of you. The reminder of the <<if $npc_manager.flags.pegging.collar == "her_slave">>locked-on <</if>>signifier of your submission and ownership rockets you deep into sub-space, your voice a soft hoarse whisper. "@@.pc;I love you, <<=setup.getNpcName('npc_manager', 'title')>>.@@"<br>
<br>
"@@.npc_manager;I know. Now show it without words, cum for me, cum for me hard.@@"
<<default>>
ERROR! unknown collar style: <<=$npc_manager.flags.pegging.collar>>
<</switch>>
<br><br>
<<if $player.body_ref.penis>>
<<switch $npc_manager.flags.pegging.chastity>>
<<case "nooffer" "focused" "dickless">>
You gasp and pant,
<<if $player.body_ref.penis>>
<<if $npc_manager.flags.require_chastity>>
your <<getWordMyPenis>> straining against its prison,
<<else>>
your <<getWordMyPenis>> bouncing and leaking with every thrust,
<</if>>
<<else>>
<<if $npc_manager.flags.require_chastity>>
leaking out the side of your belt,
<<else>>
leaking arousal with every thrust, even as your <<getWordVagina>> remains untouched,
<</if>>
<</if>>
but the sensations running through your ass, drumming and shocking through your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> is too much. With a moan, you start to leak, <<if $scene.wornCage>>your secured member dribbling <<if $scene.isCage && $player.body_ref.penis>>and spurting into her hand<<else>>down your thigh<</if>> as she continues to rock and thrust, arching her hips to scrape your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>><<else>>dribble into her hand<</if>> until every drop of <<if $fetish.sissy>>sissy<<else>>girl<</if>> juices has been pressed out of <<if $player.body_ref.penis>>your balls<<else>>you<</if>> in an extended analgasm.
<<case "remove" "">>
As she fucks, vibes and shocks your ass she also
<<if $player.body_ref.penis>>
strokes your <<getWordMyPenis>><<if $player.body_ref.vagina>> and teases your slit<</if>>.
<<else>>
teases your clit.
<</if>>
Straining against <<if $player.body_ref.penis>>everything, from the ropes to your cockring<<else>>the ropes<</if>>, the cacophony of stimulation is finally too much and you explode. With the <<if $player.body_ref.penis>>force your balls expel their payload you imagine you could have well hit the ceiling, but instead all of it is caught in her hand as she wraps her palm over your head, rubbing in gentle circles as you pulse and spurt<<else>>cry of ecstasy you have your first squirting orgasm, all while <<=setup.getNpcName('npc_manager', 'formal')>> smiles down<</if>>.
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<<else>>
You gasp,
<<if $npc_manager.flags.require_chastity>>
leaking out the side of your belt,
<<else>>
leaking arousal with every thrust, even as your <<getWordVagina>> remains untouched,
<</if>>
but the sensations running through your ass, drumming and shocking through your insides is too much. With a moan, you start to leak down your thigh as she continues to rock and thrust, arching her hips to target your most sensitive rear bits until every drop of <<if $fetish.sissy>>sissy<<else>>girl<</if>> juice has been pressed out of you in an extended analgasm.
<</if>>
<br><br>
[<<moveTo "event_manager_pegging_14_good" "Bask in the afterglow." 180>>]
</div>/*#
#desc: she neutrally pegs you, comments on collar and plays with your cage/penis until you climax
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Her artificial cock buzzing and jolting in your ass her hand
<<if $player.body_ref.penis>>
wrap around your
<<if $npc_manager.flags.pegging.chastity == "nooffer" && !setup.checkItemTypeWorn("cage")>>
rock-hard <<getWordMyPenis>>. You moan in lust, almost cumming at the first touch only for her to frown and withdraw her hand. She makes no comment, merely reaching to her side and turning up the power and frequency of the shocks jolting your ass. The resulting pain takes the edge off of your arousal as she resumes stroking you with a firm grip.
<<else>>
<<switch $npc_manager.flags.pegging.chastity>>
<<case "remove" "">>
rock-hard <<getWordMyPenis>>. You moan in lust, almost cumming at the first touch only for her to frown and withdraw her hand. She makes no comment, merely reaching to her side and turning up the power and frequency of the shocks jolting your ass. The resulting pain takes the edge off of your arousal as she resumes stroking you with a firm grip.
<<case "focused" "dickless" "nooffer">>
<<getWordMyPenis>>. Her hands gently <<if $scene.isCage>>massaging your balls<<else>>stroking the front of your chastity belt<</if>> makes a strange, gently counterpoint to the fierce, buzzing, shocking, fucking happening mere centimetres away.
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<</if>>
<<else>>
<<if $npc_manager.flags.pegging.chastity == "nooffer" && !setup.checkItemTypeWorn("cage")>>
rubs between your folds, your excitement leaking down to further lubricate the thick dildo pleasuring your ass.
<<else>>
<<switch $npc_manager.flags.pegging.chastity>>
<<case "remove" "">>
rubs between your folds, your excitement leaking down to further lubricate the thick dildo pleasuring your ass.
<<case "focused" "dickless" "nooffer">>
across your chastity shield, teasing you to new heights of pleasure, even as the dong in your rear continues to pound away...
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<</if>>
<</if>>
<br><br>
<<switch $npc_manager.flags.pegging.collar>>
<<case "none">>
Her hand drifts to your throat, not choking you but very possessive and you tremble.<br>
<br>
"@@.npc_manager;That's right, take it, feel me inside of you... hmm, but I am almost regretting that I did not collar you before this, though I doubt you'll be forgetting who owns you any time soon...@@"
<<case "refuse">>
Her hand possessively wraps firmly around your throat. Not enough to choke, but with a firm, inescapable possessiveness that is quite a distraction.<br>
<br>
"@@.npc_manager;Take it, you slut. You could not even behave well enough to earn a collar... unworthy even of being a slave... oh I have so much more work to do with you...@@"
<<case "sissy" "her_sissy">>
A hand still wrapped around what once passed for your manhood she gently strokes with one hand while reaching out with the other. Tenderly she caresses the pink collar that stands in stark contrast to you having any masculinity remaining.<br>
<br>
"@@.npc_manager;So cute... if only your behaviour was as consistently adorable as your appearance... still, it is time. Look up, admire your <<if $fetish.sissy>>SISSI<<else>>girly<</if>> self... and cum for me.@@"
<<case "slave" "her_slave">>
Reaching out with her free hand she takes hold of your collar, roughly pulling you forward, sandwiching your body between the impaling cock below and the neck-wrapping collar above.<br>
<br>
"@@.npc_manager;Now, be a good slave, look up, glory in your submission, resolve to earn my collar properly, and cum!@@"
<<default>>
ERROR! unknown collar style: <<=$npc_manager.flags.pegging.collar>>
<</switch>>
<br><br>
The vibrations and shocks in your ass accelerate, pushing you off a cliff of overwhelming sensation.
<<switch $npc_manager.flags.pegging.chastity>>
<<case "nooffer" "focused" "dickless">>
<<if $player.body_ref.penis>>
Your
<<if $npc_manager.flags.require_chastity>>
<<getWordMyPenis>> pulses and shudders inside its prison, finally spurting and leaking, your position causing the frothy semen to trickle out the sides and pool on your flat tummy.
<<else>>
<<getWordMyPenis>> pulses and shudders, finally spurting and leaking into her waiting hand as she smiles in triumph at your powerful "hands free" analgasm.
<</if>>
<<else>>
<<if $npc_manager.flags.require_chastity>>
leaking out the side of your belt,
<<else>>
leaking arousal with every thrust, even as your <<getWordVagina>> remains untouched,
<</if>>
your analgasm irresistible, <<getWordVagina>> clenching and twitching in desperate empty jealously.
<</if>>
<<case "remove" "">>
Looking up at your reflection, you
<<if $player.body_ref.penis>>
cum, hard. Directed by her hand you spurt all over your own chest, long, ropey strands of semen going as high as your chin, a fireworks-like volcano of cream painted across your bare skin, all while you watch in the mirror above.
<<else>>
cry out with a full on squirting analgasm that leaves your mind spinning... and you questioning in which hole your pleasure centre truly resides.
<</if>>
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<br><br>
Panting you can only lie there, covered in your own cum, waiting for her to untie your limbs.<br>
<br>
[<<moveTo "event_manager_pegging_14_neutral" "Catch your breath." 180>>]
</div>/*#
#desc: she aggressively pegs you, plays with your cage/penis until you climax
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the cruel path your chastity cage remains in place */
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Your hips are already in the air, half your weight suspended on her impaling cock when she grabs you and drags you off the desk. Bound as you are there is nothing you can do to stop from falling. Only her strong grip on your hips keeping your head from hitting the ground as she backs up.<br>
<br>
For a breathless moment you are fully airborne, your ass clenching onto her cock for dear life as she lowers your shoulders to the ground and stacks you vertically.<br>
<br>
"@@.npc_manager;This is how naughty sluts get fucked. Piledriven right into the ground.@@" She cruelly intones as she starts to plunge down into you with partial squats, her cock vibrating you in half and shocking you mercilessly with each deep thrust.<br>
<br>
<<switch $npc_manager.flags.pegging.chastity>>
<<case "nooffer">>
You gasp and cry out at the savage pegging, but she looks down at you with neither mercy nor pity, her cock plunging deep into you with every stroke.
<<case "remove" "focused" "dickless">>
ERROR! unexpected chastity style, cruel path does not give option for removal
<<default>>
ERROR! unknown chastity style: <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<br><br>
Stacked uncomfortably, your ass ravaged like never before you
<<if setup.getTotalValue("bdsm") > 10>>
discover new depths of submission. Surrendering completely to your helpless abuse the pain turns to pleasure. Each cruel thrust is a gift, the painful pegging not what you want, but what you desperately need.
<<else>>
can do nothing but survive, taking gasping breaths as your <<if $player.body_ref.penis>><<if setup.checkItemTypeWorn("cage")>>imprisoned <</if>><<getWordMyPenis false>><<else>>arousal<</if>> betrays you.
<</if>>
<br><br>
<<if $player.body_ref.penis>>
Your <<getWordMyPenis>> <<if setup.checkItemTypeWorn("cage")>>strains with excitement against its prison<<else>>bounces and throbs with excitement<</if>> as your body shifts and her thrusts begin
<<else>>
You drip with excitement at every hard thrust
<</if>>
brutally stimulating your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. Overwhelmed, you let out a primal cry.<br>
<br>
From within its prison your <<getWordMyPenis>> starts to leak, dripping and spurting to shower down onto your face, humiliating you further with the liquid evidence of how much you are enjoying her treatment.<br>
<br>
<<switch $npc_manager.flags.pegging.collar>>
<<case "none" "refuse">>
Her hand reaching down to wrap your throat reminds you of the collar you were denied. Your vision flickers as you gasp for air, your open mouth greeted with drops of your <<if $fetish.sissy>>sissy<<else>>girly<</if>> cum as she plunges into you like she was pumping a well, not stopping until <<if $player.body_ref.penis>>every last drop your balls had produced has been spilled across your face<<else>>you have dripped a veritable flood across your face<</if>>.
<<case "her_sissy">>
She tugs at your frilly collar with an evil grin. "@@.npc_manager;You like that? You like wearing my collar and displaying to the world what you are<<if $fetish.sissy>>, sissy<</if>>? Well savour it, and maybe someday I will give you its like permanently.@@"
<<case "her_slave">>
She tugs at your leather collar with an evil grin. "@@.npc_manager;You like that? You like wearing my collar? Well savour it, and maybe someday I will claim you as mine permanently.@@"
<<case "sissy" "slave">>
ERROR! collar not granted on "cruel" path, style: <<=$npc_manager.flags.pegging.collar>> unexpected
<<default>>
ERROR! unknown collar style: <<=$npc_manager.flags.pegging.collar>>
<</switch>>
<br><br>
Rising to her feet, her cock slides out of your ass. Your exhausted body crumples to the floor without its supportive impalement.<br>
<br>
Looking down at your almost broken form she turns off her vibrating cock and looms over you.<br>
<br>
[<<moveTo "event_manager_pegging_14_cruel" "Survive." 180>>]
</div>
/* aftercare *//*#
#desc: loving pegging aftercare
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if ($npc_manager.flags.pegging.chastity != "dickless" || setup.getChastityLevel() >= 3) && ($npc_manager.flags.pegging.collar == "her_sissy" || $npc_manager.flags.pegging.collar == "sissy")>>
<<removeItem $scene.choker true>>
<<deleteItem $scene.choker>>
<</if>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<<set $scene.wearChastity = $npc_manager.flags.pegging.chastity != "remove">>
<<if !$scene.wearChastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
As you quiver in post-orgasmic bliss, you feel the cock in your ass finally fall still, the shocks stopping and your muscles relaxing enough for her to slowly, gently, withdraw.<br>
<br>
<<if $scene.isSissyomatic>>
Your plug-gaped rear stands open for a moment but, rather than relaxing your locked-in device, she instead slides a new plug into your still-gaped rear, and you find it seating in place, leaving you feeling more full than the <<=setup.getItemTypeName('cage')>> had alone.<br>
<br>
"@@.npc_manager;While your <<=setup.getItemTypeName('cage')>> is technically more than sufficiently capable of granting me wireless control over your pleasure and punishment... well, your lovely behaviour today deserves a bit extra, hmm?@@"
<<else>>
You are empty for but a moment when you feel something else slip into your still-gaping hole. Squeezing down as your ass reflexively sucks it in, you do not recognise its shape. Smaller and shorter than her cock, the plug is still quite large and girthy... though not uncomfortably so occupying your well-stretched rear.<br>
<br>
"@@.npc_manager;A little... well, not exactly little, gift for my wonderful employee. Though not nearly as big as this dildo, it is similar to the one I just used on you in that it can vibrate or shock, all controlled wirelessly. Do not worry about those entertaining features running out, either. It passively draws power from your own body heat so it never even needs charging.@@"<br>
<br>
The realisation that she can stimulate your rear anywhere, at any time is a bit scary, but also... exciting? Fortunately for your well-used butt she does not test it, the plug remaining still and un-electrified, merely keeping you distractingly filled.
<</if>>
<br><br>
<<if $fetish.cum && $player.body_ref.penis>>
Having caught every drop of cum that <<if $npc_manager.flags.pegging.chastity == "remove">>spurted<<else>>dribbled<</if>> out of your <<getWordMyPenis $scene.wearChastity>>, she brings her hand to your lips.<br>
<br>
<<if setup.getTotalValue("cum") >= 15>>
Ravenously you slurp up every drop, your eyes rolling back in ecstatic joy at this delicious finish to an already overwhelming experience.
<<elseif setup.getTotalValue("cum") >= 10>>
You eagerly lap up your seed, savouring your tasty emission.
<<elseif setup.getTotalValue("cum") >= 5>>
Obediently you lick her hand clean, trying to ignore the salty flavour of the viscous material.
<<else>>
Reluctantly you lick it up, wincing slightly at the bitter taste but obediently cleaning her palm and fingers of all that you stained her with.
<</if>>
<</if>>
Reaching to either side, she quickly unties your bound wrists and thighs, gently lowering your legs before lifting you up and carrying you over to the couch.<br>
<br>
Snuggling against her chest, you marvel at her casual strength — though, to be fair, you do not exactly weigh all that much. Gently placing you down on a cushion, she sits next to you, letting you curl up against her side as she strokes your back and brings you back to reality.<br>
<br>
The fog of orgasm slowly fading,
<<if setup.getTotalValue("submission") >= 15>>
the first thing you do is kiss her gently on the cheek, softly whispering your gratitude.
<<elseif setup.getTotalValue("submission") >= 10>>
you thank her for the intense experience.
<<elseif setup.getTotalValue("submission") >= 5>>
you try to recover from the overwhelming experience. Even though you say nothing, you are glad that she is here beside you.
<<else>>
you try to process the overwhelming feelings you have just endured, the intensity of the experience definitely means something for your relationship with your manager, but what, you are unsure.
<</if>>
<br><br>
Many minutes pass before, sensing your recovery, she gently helps you back to your feet.<br>
<br>
<<if $npc_manager.flags.pegging.chastity == "dickless" && setup.getChastityLevel() < 2>>
Leaving you standing, she walks back to her desk, returning holding a small box and kneeling before you.<br>
<br>
[<<moveTo "event_manager_pegging_14a_smallchastity" "Look down.">>]
<<else>>
<<if $npc_manager.flags.pegging.chastity == "remove">>
<<if $scene.isSissyomatic>>
With smooth efficiency your chastity device closes over you once again. <<=setup.getNpcName("npc_manager","formal")>> smiles, planting a tender kiss against
<<else>>
Quickly digging through your things she kneels before you holding your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>. Giving your exhausted member a tender kiss she quickly locks it back in
<</if>>
your safe, protective home.
<<else>>
She gives <<if $scene.wornCage>><<if $scene.isCage>>your caged member a soft squeeze<<else>>your chastity shield a gentle pat<</if>>, smiling at your securely locked condition<<else>>you a soft squeeze<</if>>.
<</if>>
<br><br>
You walk over to your pile of discarded clothes and she helps you dress, handing you each piece in turn and smiling at you as you blush and put it on.<br>
<br>
By the end your heart is racing again, and you try not to look down at her cock, still wet with lube.<br>
<br>
<<if $npc_manager.flags.pegging.collar == "her_sissy" || $npc_manager.flags.pegging.collar == "sissy">>
You are ready to depart. She smiles shakes her head in amusement before gesturing towards your neck.<br>
<br>
"@@.npc_manager;As cute as you look with that choker, well... I think you ought to leave it here.@@"<br>
<br>
<<if setup.getTotalValue("feminization") >= 15>>
Somewhat reluctantly you agree, and she gently removes it and gives you a peck on the cheek in exchange.
<<else>>
She unclasps the choker and removes it from your neck, giving you a tiny peck on the cheek in exchange.<br>
<</if>>
<br><br>
<</if>>
Still floating on a high after the intense pegging you prepare to depart only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue." 120>>]
<</if>>
</div>/*#
#desc: dismissive pegging aftercare
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<<if $npc_manager.flags.pegging.chastity == "remove">>
<<wearItem $scene.cage true>>
<<manipulateItem $scene.cage "lock" false>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
She waits until your balls have finished emptying themselves before finally disabling the vibrations and shocks and pulling her cock out of your ass.<br>
<br>
You let out a gasp as the thick head spreads you just that little bit more on the way out
<<if $scene.isSissyomatic>>
Your plug-gaped rear stands open for a moment but, rather than relaxing your locked-in device, she instead slides a new plug into your still-gaped rear, and you find it seating in place, leaving you feeling more full than the <<=setup.getItemTypeName('cage')>> had alone.<br>
<br>
"@@.npc_manager;While your <<=setup.getItemTypeName('cage')>> is technically more than sufficiently capable of granting me wireless control over your pleasure and punishment... well, why stop at half measures when one can double up?@@"
<<elseif $scene.plug != "">>
before you can react to your newfound emptiness she jams your plug back into your hole. It feels small and lifeless compared to her member, but your ass reflexively sucks in its old friend all the same.
<<else>>
still gaping from use you can feel a trickle of lube leak out through your abused hole as it slowly recovers enough to close itself up.
<</if>>
<br><br>
You lie there, staring up at your reflection, as she unties your limbs, your arms and legs falling limp in exhaustion.
<<if $fetish.cum>>
You hear her sigh and shake her head, running her hand over your chest to mop up your spilled seed. Rather than throwing it out, however, she wipes it across your face, your tongue catching a quick taste of
<<if setup.getTotalValue("cum") >= 15>>
your delectable <<if $fetish.sissy>>SISSI<<else>>girl<</if>>-juice
<<elseif setup.getTotalValue("cum") >= 10>>
your delicious emission
<<elseif setup.getTotalValue("cum") >= 5>>
your salty secretion
<<else>>
the bitter nastiness
<</if>>
while the bulk of it starts to dry on your face.<br>
<br>
"@@.npc_manager;Leave it there.@@" She orders as you start to reach up to wipe it off. "@@.npc_manager;You earned that marking, with your mix of obedience and defiance, and you can wear your shame home on your face.@@"<br>
<br>
<<if $npc_manager.flags.require_chastity>>
"@@.npc_manager;Speaking of earning, there is a little... well, maybe not so little, something else I have for you.@@"<br>
<br>
<</if>>
<</if>>
<<if !$scene.isSissyomatic && $npc_manager.flags.require_chastity>>
You watch as she produces a sizable butt plug, barely giving you a chance to look at it before stuffing it into your worn hole. "@@.npc_manager;This should help keep you in line going forward. It is capable of punishing shocks and rewarding vibrations and I expect you to have its ilk inside of you as part of your uniform so I can administer whichever you deserve at the push of a button.@@"<br>
<br>
<</if>>
<<if $npc_manager.flags.require_chastity && $npc_manager.flags.pegging.chastity == "dickless" && setup.getChastityLevel() < 3>>
Leaving you standing, she walks back to her desk, returning holding a small box and kneeling before you.<br>
<br>
[<<moveTo "event_manager_pegging_14a_smallchastity" "Look down.">>]
<<elseif $npc_manager.flags.pegging.chastity == "remove">>
<<if $scene.isSissyomatic>>
A press of a button and your chastity device closes back over you.
<<else>>
Quickly digging through your things she swiftly locates your chastity <<if $scene.isCage>>cage<<else>>belt<</if>>.
<</if>>
Still on your back you watch in the ceiling mirror as, with quick efficiency, she locks you away in your private <<if setup.getItemFromType("cage") == "c_cage_pink">>pink <</if>>prison.<br>
<br>
You blush, but remain silent before staggering to your feet and dressing under her watchful, but disinterested gaze.<br>
<br>
Barely having enough energy to stand, you stagger towards the door only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue." 15*60>>]
<<elseif setup.checkItemTypeWorn("cage")>>
Your chastity device having remained in place through your entire experience, she merely points towards your pile of clothes for you to get dressed.<br>
<br>
You blush, but remain silent before staggering to your feet and dressing under her watchful, but disinterested gaze.<br>
<br>
Barely having enough energy to stand, you stagger towards the door only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue." 15*60>>]
<<else>>
Barely having enough energy to stand, you stagger towards the door only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue." 15*60>>]
<</if>>
</div>/*#
#desc: cruel pegging aftercare, puts you in electrified chastity device (no key) and remote control plug
#status: FINISHED 0.4.0.0
#*/
/* Note: definitionally if you are on the "cruel" path your chastity cage remained in place */
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.replaceCage = setup.getChastityLevel < 3>>
<<if $scene.replaceCage>>
<<set _cage = setup.getItemFromType("cage")>>
<<manipulateItem _cage "lock" false>>
<<removeItem _cage true>>
<</if>>
<<else>>
<<set $scene.replaceCage = false>>
<</if>>
<<if setup.checkItemTypeWorn("plug")>>
<<set _plug = setup.getItemFromType("plug")>>
<<removeItem _plug true>>
<</if>>
<<if $scene.choker == "choker_sissy">>
<<removeItem $scene.choker true>>
<<deleteItem $scene.choker>>
<</if>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem "remote_control_plug">>
<<wearItem "remote_control_plug" true>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $npc_manager.flags.hascagekey = true>>
<<if $scene.replaceCage>>
<<if $player.flags.chastity_style=='cage'>>
<<addItem "electric_chastity">>
<<wearItem "electric_chastity" true>>
<<manipulateItem "electric_chastity" "lock" false>>
<<else>>
<<addItem "chastity_belt_electric">>
<<wearItem "chastity_belt_electric" true>>
<<manipulateItem "chastity_belt_electric" "lock" false>>
<</if>>
<<include "setLastSeenCage">>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<</if>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Wow, I did not expect you to enjoy it that much, not that I cared given all the trouble you just gave me but... colour me impressed. I did not think you were that much of a broken whore, yet.@@"<br>
<br>
Still bound you can't do anything but stare up at her in a mix of fear and arousal in confirmation of her assessment.<br>
<br>
<<if $scene.replaceCage && $scene.wornCage>>
Walking away she disappears out of your line of sight, fetching something from her desk before returning, the key to your <<if $scene.isCage>>cage<<else>>belt<</if>> held in one hand.<br>
<br>
<</if>>
Sitting down between her legs she starts by shoving a plug into your still-gaping asshole. Despite being larger than any of your previous companions you are currently so well-used and stretched it enters with ease, your ass somehow having the strength to suck it in and lock it down as you adjust to its filling presence.<br>
<br>
"@@.npc_manager;What a butt-slut.@@" She remarks.
<<if $player.sec_style.sex.butt_plug == "strict">>
"@@.npc_manager;You should be getting quite familiar with that plug, by now... and from now on it, or its like, is a mandatory part of your uniform. Being able to administer swift corrective measures is an important part of honing your work efficiency and I expect you to have something suitably featured... and sufficiently large, stuffing you at all times when on the job going forward.@@"
<<else>>
"@@.npc_manager;Anyway, that plug has many of the same features as my cock. Wirelessly controlled it charges itself off your body heat and can administer punishing shocks on command. It can also vibrate pleasantly, but you will need to shape up fast if you expect to receive such a reward. Consider it a gift — wear it to enable me to administer swift and fair corrective measures, if I am forced to get more... creative with my punishments well...@@"
<</if>>
Her smile tells you everything you need to know.<br>
<br>
<<if $scene.replaceCage>>
While you try to comprehend the implications of her words, and the new plug, she unlocks your <<if $scene.isCage>>cage<<else>>belt<</if>> and casually tosses it onto the pile of your clothes.<br>
<br>
Still drained and flaccid from your intense orgasm your <<getWordMyPenis>> has no chance to react to her touch before being introduced to a new chastity device.<br>
<br>
At first it seems not dissimilar to your previous device,
<<if $scene.isCage>>
merely constructed of shiny steel rather than pink plastic it certainly looks more intimidating, and the cold metal causes you to shiver at first touch. Other than being a bit heavier, and with a thicker cockring around your shaft and balls it seems more or less the same as your previous device.<br>
<br>
The cage has yet to even finish warming to your body when you discover how wrong your initial assessment was.
<<if $fetish.sounding>>
<<=setup.getNpcName('npc_manager', 'formal')>> produces a narrow, curved metal tube, rubbing it with a thin lubricant before lining up the blunted tip with the hole at the end of your chastity device.<br>
<br>
You watch in wide-eyed horror as she guides the tip into your urethra, the curved angle precisely following the shape of the tube.
<</if>>
<<else>>
of similar construction, but a little sleeker but otherwise more or less the same as your previous device.
<<if $fetish.sounding>>
That sense of familiarity is derailed however when she reveals a narrow, curved metal tube, rubbing it with a thin lubricant before lining up the blunted tip with the tip of your penis and sliding it almost all the way into you.<br>
<br>
You watch in wide-eyed horror as she guides the tip into your urethra, the gentle curve providing an intimate rigidity to your soft member.
<</if>>
<</if>>
<br><br>
<<if $fetish.sounding>>
The sensation of the rod steadily sliding into your <<getWordMyPenis>> is like nothing you have felt before. Not painful, technically, it is an intimate penetration that feels both emasculating and violating. Eventually the full length of the rod disappears and she <<if $scene.isCage>>affixes it to the end of your chastity tube by screwing it in place. A tiny lock through the screw locks it in, joined by a larger lock for the main cage rendering you totally and utterly restrained<<else>>somehow attaches it to the inside of your belt, locking the smooth front shield in place to all but completely conceal what lies beneath<</if>>.<br>
<br>
<</if>>
"@@.npc_manager;There, servitude is like prison — misbehave and you get moved to a more secure cell. And one final note — just like your plug that <<if $fetish.sounding>>urethral rod<<else>>chastity <<if $scene.isCage>>cage<<else>>belt<</if>><</if>> can administer electric shocks... hmm, I suppose a demonstration would be better. show, don't tell, and all that?@@"<br>
<br>
Before you can object, she whips out her phone, tapping a couple times before your <<getWordMyPenis>> is on fire with pain. Though it lasts a fraction of a second it hurts more than the time back in school when you took a baseball straight to the crotch. Your entire body tenses in pain at the electricity running through <<if $fetish.sounding>>the very core of <</if>>your <<getWordMyPenis false>>.
<<else>>
Standing over you she she whips out her phone, tapping a couple times before your rear <<if setup.checkItemTypeWorn('cage')>>and crotch explode<<else>>explodes<</if>> with electrified pain. Though it lasts a fraction of a second it leaves your rear quivering, and you desperate to obey any instruction lest such agony be re-visited.
<</if>>
<br><br>
"@@.npc_manager;Well, that seems sufficient — note that was a mere medium shock, I can do far worse if you continue to misbehave. I suppose it goes without saying but... <<if $scene.replaceCage>>I will be keeping the key as well, freedom is a privilege and you have shown yourself to be scarcely worthy of anything of the sort<<elseif setup.checkItemTypeWorn("cage")>>I will be keeping your key for the foreseeable future. Freedom is a privilege and you have shown yourself to be scarcely worthy of anything of the sort<<else>>I expect your cute bottom to be suitably plugged and subject to my control whenever you are on duty<</if>>. Anyway, that is all for the day — get dressed and get out of my office, I hope that when I see you tomorrow morning you will have a better... attitude than you demonstrated today.@@"<br>
<br>
Whimpering you crawl over to your clothes and get dressed. Occasionally you glance fearfully back at <<=setup.getNpcName('npc_manager', 'formal')>> as she sits on the edge of the desk, her cock untouched, but looming ominously as she stares down at you like an owl watching a mouse.<br>
<br>
Exhausted but clothed, you stagger to your feet, your new plug<<if $scene.replaceCage>> and <<if $fetish.sounding>>urethral-penetrating chastity<<else>>chastity<</if>><</if>> reminding you of <<if $fetish.sounding && $scene.replaceCage>>their<<else>>its<</if>> presence with every movement as you prepare to leave the office only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue." 15*60>>]
</div>/*#
#desc: she locks you in smaller chastity cage, you dress and remove collar
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage != "">>
<<manipulateItem $scene.cage "lock" false>>
<<removeItem $scene.cage true>>
<<deleteItem $scene.cage>>
<</if>>
<<switch $npc_manager.flags.pegging.collar>>
<<case "sissy" "her_sissy">>
<<removeItem $scene.choker true>>
<<deleteItem $scene.choker>>
<</switch>>
<<if $player.flags.chastity_style=='cage' && $player.body_ref.penis && !$player.body_ref.vagina && $player.body_ref.balls>>
<<addItem "chastity_cage_flat">>
<<wearItem "chastity_cage_flat" true>>
<<manipulateItem "chastity_cage_flat" "lock" true>>
<<else>>
<<addItem "chastity_belt_tiny">>
<<wearItem "chastity_belt_tiny" true>>
<<manipulateItem "chastity_belt_tiny" "lock" true>>
<</if>>
<<include "setLastSeenCage">>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
Opening the box, she pulls out a shiny metallic contraption. Holding it up for your inspection, you recognise a similar design to your chastity <<if $scene.isCage>>cage only the front seems practically flat<<else>>only even sleeker and with even less space on the inside<</if>>.<br>
<br>
"@@.npc_manager;With what you said earlier, I think your <<if $fetish.sissy>>SISSI<<else>>girl<</if>> clitty will like this much better than its current... overly spacious accommodations. Well, are you excited?@@"<br>
<br>
Your nerves still fried from the pegging, you weakly nod as she <<if $scene.cage != "">>unlocks and removes your <<=setup.getItemName($scene.cage)>> and <</if>>slips the new steel device into place<<if $scene.isCage>>and you watch your softened <<getWordMyPenis>> squished down until it all but disappears<</if>>.<br>
<br>
Cold and secure, your limp, exhausted <<getWordMyPenis false>> is cramped even in its shriveled state, barely having any room as she locks things closed and lays a gentle kiss on the shiny <<if $scene.isCage>>flat front<<else>>front shield<</if>>.<br>
<br>
<<if $scene.cage == "c_cage_pink">>
"@@.npc_manager;Maybe not quite as nice a colour as your old one, but you look so small and cute in it!@@"
<<else>>
"@@.npc_manager;There, a bit different from your old device, but even more secure and snug, and thus, more beautiful.@@"
<</if>>
<br><br>
As she rises and starts picking up your clothing, you realise that she said nothing about a key, and you are too intimidated to ask as she starts passing you your outfit, smiling as you bashfully get dressed in front of her.<br>
<br>
<<if $npc_manager.flags.pegging.collar == "sissy" || $npc_manager.flags.pegging.collar == "her_sissy">>Finally she removes your neck adornment and places a gentle kiss on your forehead.<</if>> Still quite cognisant of the new "toys" occupying your well-used bum and tightly encasing your <<getWordMyPenis false>>, you give a small curtsy and are about to depart only for her to stop you once again.<br>
<br>
[<<moveTo "event_manager_pegging_15_promotion" "Continue." 120>>]
</div>/*#
#desc: pegging dressed + assessment
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.pegging.collar == "slave" || $npc_manager.flags.pegging.collar == "her_slave" && $clothSetsInt.pegging.data.includes($scene.origChoker)>>
<<set $clothSetsInt.pegging.data.delete($scene.origChoker)>>
<</if>>
<<useClothSetPop 'pegging'>>
<<addWorkEvent 'stage_3_physical'>>
<<addWorkEvent 'manager_piss'>>
<<set _x = setup.addManagerEndlessTask()>>
<<switch $scene.peggin_approval>>
<<case 13>>
<<set $scene.paybump = 50>>
<<case 12 11 10>>
<<set $scene.paybump = 40>>
<<case 9 8 7 6 5>>
<<set $scene.paybump = 30>>
<<case 4 3 2 1>>
<<set $scene.paybump = 20>>
<<case 0 -1 -2 -3 -4>>
<<set $scene.paybump = 10>>
<<case -5 -6 -7 -8>>
<<set $scene.paybump = 0>>
<</switch>>
<<set $player.work.payment += $scene.paybump>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_dom")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> leans against the edge of her desk and looks back at you, the wet strap-on that had so recently ravaged you protruding ominously as she shifts gears to casually talk about work matters.<br>
<br>
"@@.npc_manager;So, congratulations are in order. This little "celebration" marks the end of your probationary period. From now on you will be considered, by myself and the company as a whole, as a full-time, full-fledged, FULLY-qualified <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
<<if $player.work.qualification_extension>>
She smiles in amusement. "@@.npc_manager;It took a bit longer than originally scheduled, but you have finally made it and I would say giving you the extension was worth it.@@"
<<else>>
<<if $player.work.qualifyingperiod > 14>>
She smiles proudly. "@@.npc_manager;I must say you have quite impressed me as one of the most enthusiastically efficient secretaries I have ever seen. You needed barely half the normal time to grow into your role and the only thing that makes me sad is that it took you this long into your career to find what was so obviously your calling.@@"
<<elseif $player.work.qualifyingperiod > 5>>
She smiles slightly. "@@.npc_manager;You have done well in coming this far this fast, more than one week left to go in your original probationary period and you have met every requirement!@@"
<<elseif $player.work.qualifyingperiod == 0>>
She smiles in amusement. "@@.npc_manager;I will say, you going down to the wire like this... I am proud of you making it in time, but you certainly had me a mite worried that you were going to get yourself together in time!@@"
<<else>>
She nods. "@@.npc_manager;Congratulations on coming this far, even given your lack of prior experience you managed to rise to the occasion and come in a few days early.@@"
<</if>>
<</if>>
<br><br>
She gives you a few moments to process what she just told you before continuing. "@@.npc_manager;As you can probably surmise, this is the start of a whole new journey. The expectations going forward are only going to become more stringent. The first of which being that, well... I expect you to literally "rise" to this new challenge by wearing heels, no more flats for my sweet <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, I want you standing tall and proud when I greet you for your morning inspection. As to further improvements, well... now that you have proven your abilities when it comes to the basics you have an opportunity to show initiative in your career progression. Now, as to your pay...@@"<br>
<br>
You hold your breath as she draws out the suspense.<br>
<br>
<<switch $scene.peggin_approval>>
<<case 13>>
"@@.npc_manager;Your graduation today was more than just a prize, it was also your opportunity to prove yourself and well... prove yourself you did and more! I could not imagine a more perfect performance and so I am proud to announce that I am raising you to a full secretarial rate of <<=$player.work.payment>> per week.@@"<br>
<br>
<<printThought "Wow, that's <<=$scene.paybump>> more than I make now, I'm making more now than I did back at CDS! I guess being a <<if $fetish.sissy>>SISSI <</if>>Secretary really is a good career path...">>
<<case 12 11 10>>
"@@.npc_manager;While it is mainly a reward, I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. You impressed me, coming within centimetres of perfection and that is why it makes me proud to announce that your pay is being raised to <<=$player.work.payment>> credits per week.@@"<br>
<br>
<<printThought "Wow, that's <<=$scene.paybump>> more than I make now, I'm making more now than I did back at CDS! Maybe being a <<if $fetish.sissy>>SISSI <</if>>Secretary really is a good career path...">>
<<case 9 8 7 6 5>>
"@@.npc_manager;While it is mainly a reward, I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. In this you performed admirably, if not spectacularly, so I have decided to raise your pay to <<=$player.work.payment>> credits per week.@@"<br>
<br>
<<printThought "I guess I shouldn't complain about an additional <<=$scene.paybump>>. I'm making about the same now as I was back at CDS, maybe becoming a <<if $fetish.sissy>>SISSI <</if>>Secretary was the right career move after all?">>
<<case 4 3 2 1>>
"@@.npc_manager;While it is mainly a reward, I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. In this you performed adequately, so I have decided to raise your pay to the base full-time secretary rate of <<=$player.work.payment>> credits per week.@@"<br>
<br>
<<printThought "Hmm, another <<=$scene.paybump>>, still not as much as I made back at CDS, but better than no pay raise.">>
<<case 0 -1 -2 -3 -4>>
"@@.npc_manager;While it is mainly a reward, I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. I will be honest that you proved something of an overall disappointment, but I recognise the value in rewarding even small efforts and so I am raising your pay to <<=$player.work.payment>> credits per week in hopes that it will motivate you to improve further.@@"<br>
<br>
<<printThought "Hmm, another <<=$scene.paybump>>, still not as much as I made back at CDS, but better than no pay raise.">>
<<case -5 -6 -7 -8>>
"@@.npc_manager;While it is mainly a reward, I like to use the "ceremony" of graduation as a final gauge of how well suited you are to your new position. Your performance was, to put it frankly, pitiful and I am afraid I cannot justify raising your base payment. Perhaps you can use this failure to motivate you to do, and earn, better in the future.@@"<br>
<br>
<<printThought "Damn, as if things weren't hard enough already...">>
<<default>>
ERROR, approval of <<=$scene.peggin_approval>> unexpected!
<</switch>>
<br><br>
<<if $scene.wipeAdvance>>
"@@.npc_manager;Oh, a final note, in celebration of your promotion I have reset your advance, put you on a clean slate for your future.@@"<br>
<br>
<</if>>
<<switch $npc_manager.flags.pegging.style>>
<<case "good">>
Stepping forward, she wraps her arms around you in a final congratulatory hug. "@@.npc_manager;Congratulations, again, and I look forward to you continuing to work under me.@@" She winks at the obvious innuendo. "@@.npc_manager;Now you had better scamper off home before I decide to take advantage of that wonderful bum again.@@"
<<case "neutral">>
Having finished her explanation, she seems to lose interest in you, sending you on your way with a dismissive wave.
<<case "cruel">>
Her lips curling into an intimidating grin she dismisses you. "@@.npc_manager;That will be all for today, do scurry along lest I end up REALLY breaking that cute tush of yours.@@"
<</switch>>
<br><br>
<<if setup.checkItemWorn("remote_control_plug")>>
[<<moveTo "event_secretary_style_butt_plug_strict_1" "Get out of her office... and get this plug out of your ass!" 60>>]<br>
<</if>>
[<<moveTo "event_manager_pegging_16_leave" "Leave." 60>>]
</div>/*#
#desc: head home after pegging
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $shopStatus['mall_sexstore'].unlocked_inventory.pushUnique('chastity_cage_flat')>>
<<set $npc_manager.stage = 3>>
<<if !$events.hasOwnProperty("manager_lunch_stage2")>>
<<set _nextDate = setup.setNextDate($now, 1, 10, 0)>>
<<addEvent "manager_lunch_stage3" _nextDate>>
<</if>>
<<include "checkManagementAssess">>
<<include "addTypingEvent">>
<<include "checkBrainscanEvent">>
<<registerProgressionEvent>>
<<addWorkEvent 'work_meeting_stage_3'>>
<<set $npc_manager.stagevalues[2].promodate = $now>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $player.work.secretaryRank = 0>>
<<set $scene.wipeAdvance = $player.work.advance > 0>>
<<set $player.work.advance = 0>>
<<include "adminGymCheck">>
<<set $npc_manager.flags.pegging.approval = $scene.peggin_approval>>
<<if !$npc_manager.flags.unlocked_badsissy1>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_1'
0
'event_manager_theme_badsissy1'
true
>>
<</if>>
<<switch $now.getUTCDay()>>
<<case 0 1 2 3 4>>
<<set _nextDate = setup.setNextDate($now, 1, 9, 0)>>
<<case 5>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<case 6>>
<<set _nextDate = setup.setNextDate($now, 2, 9, 0)>>
<</switch>>
<<if $npc_manager.flags.pegging.collar == "sissy" || $npc_manager.flags.pegging.collar == "her_sissy">>
<<addEvent 'enthusiast_sissy_choker'>>
<</if>>
<<addWorkEvent 'admin_office_sex_visit' _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.flags.pegging.style>>
<<case "good">>
<<if $npc_manager.flags.pegging.collar == "slave" || $npc_manager.flags.pegging.collar == "her_slave">>
With a final curtsy, you depart. You are halfway down the elevator when you realise as you glance at your reflection in the polished steel of the door that you are still wearing the leather bondage collar.<br>
<br>
Blushing, you are considering returning to <<=ps(setup.getNpcName("npc_manager","formal"))>> office when the elevator doors to open. You hesitate to press the button for the 52nd floor once more, but something stays your hand. Steeling yourself, you walk across the empty lobby proudly.
<<if $npc_manager.flags.pegging.collar == "her_slave">>
<br><br>
Halfway home you have the second realisation that you can't actually remove the collar — it is locked and you will thus have to wear it until you see her again and can ask about the key. A shudder of submission goes through your body<<if setup.checkItemTypeWorn("cage")>><<if $player.body_ref.penis>>, your <<getWordMyPenis false>> reviving to swell inside its prison as your ass hungrily caresses its new occupant<<elseif !setup.isCage()>>and you feel yourself dripping beneath your chastity belt anew<</if>><</if>>.
<</if>>
<<elseif $npc_manager.flags.pegging.collar == "refuse">>
You feel a bit light-headed, though you refused <<=ps(setup.getNpcName("npc_manager","formal"))>> collar, you still feel as if she still had you under her control, a phantom grasp lingering even away from her presence...
<<elseif setup.checkItemTypeWorn("choker")>>
You feel a bit light-headed, frequently bringing a hand to your throat, searching for the choker that <<=setup.getNpcName("npc_manager","formal")>> had wrapped around your neck as you ride the elevator down without incident.
<<else>>
You feel a bit light-headed, frequently bringing a hand to your throat to check as you have a phantom feeling of something still wrapped around your neck as you ride the elevator down without incident.
<</if>>
<<case "neutral">>
You're suffering a bit from emotional whiplash after <<=setup.getNpcName('npc_manager', 'formal')>> swung back and forth between not caring and congratulating you on your promotion but, feeling quite exhausted, you head for the elevator to begin the trip home.
<<case "cruel">>
Despite the "good" news as to your promotion you are sore and exhausted, mumbling a thanks before heading to the elevator and riding it down towards home.
<<default>>
ERROR in pegging leave; unknown pegging style: <<=$npc_manager.flags.pegging.style>>
<</switch>>
<br><br>
Your trip home is uneventful.<br>
<br>
[<<moveTo "event_sex_club_invite_1" "Home" 600>>]
</div>/*#
#desc: visitor knocking on the door, rise to meet them (wearing pink office attire)
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<set $scene.shoeObj = setup.getItemObjFromType("shoes")>>
<<set $scene.clothes = setup.analyzeWornTags(['female','male','unisex'])>>
<<set $scene.admin_sawyouinfemaleclothes = $npc_admin.flags.sawyouinfemaleclothes>>
<<set $scene.admin_reactnamechange = $npc_admin.flags.reactnamechange>>
<<if $workEvents.hasOwnProperty("admin_office_visit")>>
<<removeWorkEvent 'admin_office_visit'>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.body.name != "obedient">>
You are in the middle of your usual morning routine when someone knocks on the door leading to your antechamber.<br>
<br>
<<printThought "Fuck, who could this be now?">><br>
<br>
You're startled because you were not expecting any visitors today as there are none listed on your <<=ps(setup.getNpcName('npc_manager', 'other'))>> schedule. You shake your head as you correct yourself.<br>
<br>
<<printThought "That's <<=setup.getNpcName('npc_manager', 'formal')>>. Better not forget it when I'm actually talking to her.">><br>
<br>
You shudder slightly, still becoming accustomed to the situation you're in now. Situation. Nice way to downplay the hot mess your life has become. <<if $player.sec_style.body.name == "forced" || $player.sec_style.body.name == "obedient">>You checked your ID card and your online personal register a few minutes ago just to be sure. It looks like what <<=setup.getNpcName('npc_manager', 'formal')>> told you is true, though why would she lie to you? If you can say one thing with certainty, it's that she has been very honest with you from the very beginning, all the way back to the implied spanking at the end of your first workday.<<else>>Heck, you've even changed your name! Ever since you met <<=setup.getNpcName('npc_manager', 'formal')>> things just seem to be constantly... changing.<</if>> She told you she wanted a <<if $fetish.sissy>>SISSI <</if>>Secretary, and here you are, being her <<if $fetish.sissy>>SISSI <</if>>Secretary. The company does not do things by halves. Or as you would rephrase it, if you were a little bit more upset, they don't fuck around.<br>
<br>
You get up from your desk. If it was someone from within the company, they could have opened the door by themself, but if it's an external visitor they'd be encouraged to knock as common courtesy would dictate, the security system not letting them pass uninvited.<br>
<br>
<<if $scene.shoeObj.hasOwnProperty("heels") && ($scene.shoeObj.heels.difficulty>0)>>
As you walk over to the door, you're painfully reminded that you're now wearing heels.
<<if setup.getTotalValue("heels")<$scene.shoeObj.heels.difficulty>>
<<if $scene.shoes == "mary_janes_black" || $scene.shoes == "mary_janes_pink">>
Even though the <<=setup.getItemTypeName("shoes")>> you're wearing have rather wide heels and look like they shouldn't be bad you're wobbly for sure and will likely need quite some time to get used to them.
<<else>>
You're wobbly for sure and will likely need quite some time to get used to them.
<</if>>
<<else>>
Even though you have some experience in these heels the tense situation has you a bit distracted and wobbly.
<</if>>
<br><br>
<<printThought "I really need to get some female shoes without heels. Or is that against company policy as well? Ah fuck! Wasn't <<=setup.getNpcName('npc_technician', 'first')>> always complaining about being required to wear heels? Oh sweet, sweet karma, thou art a cruel bitch.">>
<<else>>
Even though you're not wearing heels, much to the dismay of <<=setup.getNpcName('npc_manager', 'formal')>>, you're very tense and nearly trip on your way to the door.<br>
<br>
<<printThought "Wait, wasn't <<=setup.getNpcName('npc_technician', 'first')>> always complaining that the women's dress code mandated heels? As if navigating this job wasn't hard enough already...">>
<</if>>
<br><br>
You stumble towards the door, trying to mentally brace yourself for the strange look you will certainly get, and open the door, preparing to welcome the visitor.<br>
<br>
Unfortunately you miscalculate the strength required to open the door. Already unsteady and with your centre of gravity slightly shifted, you pull too hard, wobbling backwards and then diving forward to compensate, falling towards whomever is waiting outside.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_2' 'Continue.' 120>>]
<<else>>
You were in the middle of your usual morning routine when someone knocks on the door leading to your antechamber. You're startled because there are no visitors listed in the schedule of <<=setup.getNpcName('npc_manager', 'other')>>. You shake your head as you correct yourself.<br>
<br>
<<printThought "That's <<=setup.getNpcName('npc_manager', 'formal')>>. Better not forget it when I'm actually talking to her.">><br>
<br>
<<if setup.getTotalValue("smart")>=setup.getTotalValue("bimbofication")>>
As you rise to your feet, you remember that you've been told yesterday that <<=setup.getNpcName('npc_admin', 'first')>> might show up at your office today. Might be <<him npc_admin>>.
<<else>>
As you stand up and head for the door, you feel like something was supposed to happen today, but try as you might to remember nothing comes to mind. You've been having real trouble concentrating on most things as of late.
<</if>>
<br><br>
A cold shiver runs down your spine as you finally realise the absoluteness of your situation. You checked your ID card and your online personal register a few minutes ago just to be sure. It looks like what <<=setup.getNpcName('npc_manager', 'formal')>> told you is true, though why would she lie to you? If you can say one thing with certainty, it's that she has been very honest with you from the very beginning, all the way back to the implied spanking at the end of your first workday. She told you she wanted a <<if $fetish.sissy>>SISSI <</if>>Secretary, and here you are, being her <<if $fetish.sissy>>SISSI <</if>>Secretary. The thought of being a <<if $fetish.sissy>>SISSI <</if>>Secretary does not upset you the slightest. And why would it? After all, you've done almost everything within your possibilities to help her achieving this goal. A second knock on the door drags you out of your thoughts.<br>
<br>
<<if setup.getTotalValue("smart")>=setup.getTotalValue("bimbofication")>>
<<printThought "I bet that's <<=setup.getNpcName('npc_admin', 'first')>>.">>
<<else>>
<<printThought "I wonder who this might be?">>
<</if>>
<br><br>
You get up from your workplace. If it was someone from within the company, they could have opened the door by themself, but if it's an external visitor, they'd be encouraged to knock in keeping with common courtesy with the security system not letting them pass uninvited.
<<if $scene.shoeObj.hasOwnProperty("heels") && ($scene.shoeObj.heels.difficulty>0)>>
As you walk over to the door, you're painfully reminded that you're now wearing heels.
<<if setup.getTotalValue("heels")<$scene.shoeObj.heels.difficulty>>
You're wobbly for sure and will likely need quite some time to get used to them.
<<else>>
Even though you have some experience in these heels the tense situation has you a bit distracted and wobbly.
<</if>>
<br><br>
<<printThought "I really need to get some female shoes without heels. Then again, I am pretty sure that <<=setup.getNpcName('npc_manager', 'formal')>> would be very much against this. ">><br>
<br>
<<else>>
Even though you're not wearing heels, much to the dismay of <<=setup.getNpcName('npc_manager', 'formal')>>, you're very tense and nearly trip on your way towards the door.
<</if>>
You reach the door and try to brace yourself for the strange look you will obviously get, and open the door, preparing to welcome the visitor. Unfortunately it seems they were leaning on the door already, once you trip the latch it swings in swiftly. Teetering precariously as you fall back you dive forward to compensate, falling towards whomever is waiting outside.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_2' 'Continue.' 120>>]
<</if>>
</div>/*#
#desc: admin knock on door to your office, rise to get the door
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $workEvents.hasOwnProperty('admin_office_visit')>>
<<completeWorkEvent>>
/% the forced event system might trigger this despite the normal visit being already scheduled, this "fixes" that %/
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You are in the midst of your usual morning routine when someone knocks on the door. You have a good idea who this might be, since there is only a single entry in the schedule listed, marked as "@@.npc_manager;<<=setup.getNpcName('npc_admin', 'first')>> contract signing. For heavens sake make up with <<him npc_admin>> <<=$player.first_name>>!@@" It's rather rare that <<=setup.getNpcName('npc_manager', 'formal')>> changes these entries herself, since it is such a basic part of your responsibilities. Make up with <<him npc_admin>>...<br>
<br>
<<printThought "Easier said then done...">><br>
<br>
Then again, <<=setup.getNpcName('npc_admin', 'first')>> would never back down from a challenge, well, except this one, technically. The fact that the two of you are sort of on even footing in this matter actually bolsters your courage. Maybe it's time for you to stand up for yourself. You get up and walk to the door leading into your antechamber.
<<if setup.getItemObjFromType("shoes")["heels"] != null>>
<<if setup.getTotalValue('heels')<setup.getItemObjFromType("shoes")["heels"].difficulty>>
Slowly, since you still can't walk in these damn things at a normal pace, you approach and open the door.
<<else>>
Reflecting on your prior clumsiness it's something of a miracle how swiftly you have near-mastered walking in heels. With poise and grace you reach out to open the door.
<</if>>
<<else>>
Not wearing heels makes it significantly easier to get to the door, though a small voice in the back or your head chides you for your lackadaisical footwear choice.
<</if>>
Your intuition was right, it is indeed <<=setup.getNpcName('npc_admin', 'first')>>, walking past you without another word.<br>
<br>
<<if $player.timebased.fatigue<=70>>
[<<moveTo 'event_work_femalesecretary_1_0_confront_admin' 'Confront <<him npc_admin>>!' 60>>]<br>
<<else>>
[@@.link_locked;You don't have the energy to confront <<him npc_admin>>.@@]<br>
<</if>>
[<<moveTo 'event_work_femalesecretary_1_0_chicken' 'Chicken out again.' 120>>]
</div>/*#
#desc: chicken out from confronting admin
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You chicken out again in at the last possible second and return to your workplace disenchanted. You try to bury yourself in your work, and hide under your table as you hear movement from the office as <<=setup.getNpcName('npc_admin', 'first')>> leaves <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_7_hide' 'Continue.' 120>>]
</div>/*#
#desc: confront + talk to admin in your office on repeat visit
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.ageofconfusion = false>>
<<set $player.timebased.fatigue+=30>>
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.affection)+($npc_manager.affection)>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
As <<he npc_admin>> brushes by you, you muster all your willpower and you call out to <<him npc_admin>> as you grab <<his npc_admin>> arm. A symbolic rather than functional gesture, grabbing <<=setup.getNpcName('npc_admin', 'first')>> by the arm is like trying to stop a truck with your bare hands. You remember back in the days when the two of you were still students, you tried martial arts together with <<him npc_admin>>. You recall that when facing off against <<him npc_admin>>, saying it was anything but one-sided is being generous towards your efforts. So if <<he npc_admin>> does not want to be stopped, <<he npc_admin>> simply will not be stopped.<br>
<br>
<<He npc_admin>> stops. Whether because of the reflexive gentleness <<he npc_admin>> typically displays, or because <<he npc_admin>> sensed the depth of effort and focus you placed into one arduous gesture, you somehow manage to halt <<his npc_admin>> advance. You look towards your boss <<=setup.getNpcName('npc_manager', 'formal')>> and ask her for a short break.
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.affection)+($npc_manager.affection)>>
She looks back angrily at you.<br>
<br>
"@@.npc_manager;Your work ethics are lacklustre and now you want to do this during your working hours? Since I want this farce to be over as soon as possible, I will allow it, but be prepared that we will have a lengthy... discussion about this later. Do I make myself clear?@@"<br>
<br>
<<printThought "More than clear... crystal clear...">><br>
<br>
<<else>>
She smiles back at you and nods.<br>
<br>
"@@.npc_manager;You have five... ten... you know what? Take what you need. Go, sort your things out, <<=$player.first_name>>. God knows, both of you will be a lot more useful if you get your shit together. That does really feel oddly refreshing. I should stop saying such profanities while I still can.@@" Her voice trails off as she turns and walks back into her private office. "@@.npc_manager;Maybe we can still sign this contract today, that would be wonderful.@@"<br>
<br>
<<printThought "She can be oddly charming, during her nice phases... if I wasn't her slave, I could almost see myself falling for her.">><br>
<br>
<</if>>
You thank her and manage to finally say a few words in the direction of <<=setup.getNpcName('npc_admin', 'first')>>. It isn't much, a variation on "You! Me! Coffee! Now!" But hey, baby steps.<br>
<br>
<<He npc_admin>> still doesn't seem able to look at you, glancing to the side, and for a moment your heart sinks, as it looks like you didn't manage to get through to <<him npc_admin>>. <<He npc_admin>> turns in your direction where you have put on your sulkiest girly face, which manages to put a smile on <<his npc_admin>> lips as <<he npc_admin>> backs down and nods to your proposal.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_thetalk' 'Go to the Cafe.' 360>>]
</div>/*#
#desc: stumble and get caught by admin
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You fall into two strong, <<if $npc_admin.fem>>yet gentle<<else>>masculine<</if>> arms. Whoever your saviour is, <<he npc_admin>> must be at least a head taller then you, maybe even two<<if setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>, and that is even with your heels<</if>>. Whoever it is also must have the reflexes of a cat, since <<he npc_admin>> managed to grab you without any problems, but unlike some cliched scene from an anime <<he npc_admin>> catches you like <<if $npc_admin.fem>>she's your guardian angel<<else>>a true gentleman<</if>> without touching your breasts, butt or other regions even less mentionable. You
<<if $npc_admin.fem>>
on the other hand have landed head first into her breasts. Which you quickly blurt out an apology for. Wait a second. Tall, well-defined muscles and beautiful sepia coloured skin with a bronze finish... fuck.<br>
<<else>>
muffle an excuse through the red shirt that you landed headfirst into. This guy has muscles as hard as steel. Wait a second. Red shirt, tall, well-defined muscles and beautiful sepia coloured skin with a bronze finish... fuck.<br>
<</if>>
<br>
<<if !$scene.admin_sawyouinfemaleclothes && !$npc_admin.flags.discussnamechange>>
<<printThought "Oh <<getWordGod>>... please no!">><br>
<br>
[<<moveTo 'event_work_femalesecretary_1_3' 'Step back and look up.' 60>>]<br>
<<else>>
<<printThought "Oh! Oh my!">><br>
<br>
[<<moveTo 'event_work_femalesecretary_1_3_alt' 'Return to your feet and look up at your friend <<=$npc_admin.first_name>>.' 60>>]<br>
<</if>>
</div>/*#
#desc: realise you were caught by admin
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_admin.flags.sawyouinfemaleclothes>>
<<set $npc_admin.flags.sawyouinfemaleclothes = true>>
<<set $npc_admin.flags.firstsawfemale = "office">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_12'
12
'event_admin_theme_female_clothes'
false
>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You take one step backwards and look up to focus on the stranger's face. <<He npc_admin>> stares down at you like a <<if $npc_admin.fem>>true Greek Amazon<<else>>Greek God<</if>>, well, if Greece was Hawaii. <<=setup.getNpcName('npc_admin', 'full')>> <<if $npc_admin.fem>>is standing in the<<else>>fills almost the whole<</if>> door frame. <<He npc_admin>> always had an enviable physique, but for some reason <<he npc_admin>> looks extra impressive today. Might be your system acting in strange ways, or maybe just the odd perspective of being in heels. You're blushing, but not for the usual, cliched reasons, but because you're afraid that <<he npc_admin>> recognises you.<br>
<br>
"@@.npc_admin;No need to be embarrassed Miss, like a wise man said, we don't make mistakes, just happy little accidents. But I have to admit, I'm a little bit confused. I was expecting to see my former colleague and friend <<=$player.original_first_name>> here. Looks like our old work place, Cloud Data Service is going to be merged with Social Interaction Service Syndicate's IT department, and your boss called me and told me... and I quote "I'll make you an offer you cannot refuse" with a rather strange Italian accent. Quite the fan of the classics, your boss, ey? So, I guess <<=$player.original_first_name>> is not in the office right now. Too bad, I really wanted to say hello.@@"<br>
<br>
You're still in a bit of a daze as <<he npc_admin>> walks past you into into the office and starts taking a closer look at you.<br>
<br>
"@@.npc_admin;Sorry to ask so nonchalantly, but who are you? A colleague of <<=$player.original_first_name>> or just filling in, or something?@@"<br>
<br>
<<if !$npc_admin.first_call>>
"@@.npc_admin;I kind of lost contact with him, since he was fired from Cloud Data Service, I mean I wanted to call, but I've been pretty busy myself and somehow pushed it out further and further... and well, now we've kinda drifted apart.@@"<br>
<br>
<</if>>
"@@.npc_admin;Oh, damn. Where are my manners, my name is <<=setup.getNpcName('npc_admin', 'first')>>. <<=setup.getNpcName('npc_admin', 'full')>>. I have an appointment with <<=setup.getNpcName('npc_manager', 'other')>> scheduled for...now?@@"<br>
<br>
You would normally check the schedule or ask your boss directly if this was the case, but it seems like your whole body is in lock-down mode. You're unable to even move an inch, afraid that a single move, talking or even breathing might blow your feminine cover. You kind of regret not talking to <<=setup.getNpcName('npc_admin', 'first')>> about this, but then again, things changed rather quick, didn't they? Squatting down to see your face <<he npc_admin>> continues, "@@.npc_admin;Are you alright, Miss? You look mighty pale all of a sudden.@@"<br>
<br>
What follows are the 10 longest seconds of silence you've ever experienced since you surprised your ex with her lover-<<boy npc_yogateacher>>. Still petrified it would have stretched even longer if not for the thunderous appearance of <<=setup.getNpcName('npc_manager', 'formal')>> stepping out from her inner office.<br>
<br>
"@@.npc_manager;By the way <<=$player.first_name>>, because of the whole turmoil in the morning I forgot to tell you that I am expecting a visitor... oh. You are already here <<=setup.getNpcName('npc_admin', 'other')>> welcome!@@"<br>
<br>
Walking over, the click of her heels somehow matching pace with your pounding heartbeat, she extends her hand towards <<him npc_admin>>. <<He npc_admin>>, of course, reacts wholeheartedly with a firm shake.<br>
<br>
"@@.npc_admin;Please call me <<=setup.getNpcName("npc_admin", "first")>>. Everyone does. Pleased to be here <<=setup.getNpcName('npc_manager', 'other')>>.@@"<br>
<br>
"@@.npc_manager;Lovely, and I will extend the same in return. After all, if this negotiation goes as well as I think it will. We will be working together quite frequently, no need to waste time with stuffy formalities.@@"<br>
<br>
<<printThought "Wait, what? What the hell is going on here?">><br>
<br>
"@@.npc_admin;It would be my pleasure <<=setup.getNpcName('npc_manager', 'first')>>. One final question though, before we start with the negotiations, I was under the impression that my former colleague <<=$player.original_first_name>> got a new position at your office. I think as a secretary? I figured being up here I'd say hello, but he seems to be out. Does he return later?@@"<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_3a' 'Oh shit, here it comes...' 60>>]
</div>/*#
#desc: manager reveals that you are you to him
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.reactnamechange>>
<<set $scene.adminreactnamechange = true>>
<<else>>
<<set $scene.adminreactnamechange = false>>
<<set $npc_admin.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
Yup, there it was. Your heart skips more then a few beats as you stand behind <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.npc_manager;She is right behind you.@@" she states, pointing directly at you.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> turns around, looking straight at you, then tilts sideways, trying to look past you.<br>
<br>
"@@.npc_admin;Wait, like, outside the door? Is this some weird prank he talked you into? I mean, he's not a big guy, but no way he could be hiding behind this cute little thing here.@@"<br>
<br>
For the first time ever you hear your boss laugh with pure jovial mirth at something funny.<br>
<br>
"@@.npc_manager;A <<man npc_admin>> with humor. I like it. But jokes aside, this,@@" she explains while walking around behind and grabbing you by the shoulders. "@@.npc_manager;This is your friend <<=$player.original_first_name>>. Though she stopped using that name a short while ago, it is <<=$player.first_name>> now.@@"<br>
<br>
<<if $scene.adminreactnamechange>>
"@@.npc_admin;Oh, wow, I mean, he, er, she told me about the name change, I guess I wasn't expecting her to look quite like... this...@@"<br>
<br>
You blush hard, unable to summon up any words. Glancing up at <<him npc_admin>> you watch <<his npc_admin>> expression vacillate, from an obvious look of lust at the slutty secretary to embarrassed confusion to a more familiar expression of <<him npc_admin>> looking at you as a friend. You aren't sure which of you would be able to find their voice first, fortunately <<=setup.getNpcName('npc_manager', 'formal')>> cuts in.<br>
<br>
"@@.npc_manager;Yes, well, this is her new uniform, so you had better get used to seeing it quite a bit as you assume your new position. Speaking of which, if you would follow me into my office?@@"<br>
<br>
She turns and starts towards the door, a hand on <<=ps(setup.getNpcName('npc_admin', 'first'))>> arm, pulling <<him npc_admin>> along.<br>
<br>
<<printThought "<<He npc_admin>> must be really shocked if <<=setup.getNpcName('npc_manager', 'formal')>> can pull <<him npc_admin>> along that easily... unless she's that strong? No, there's no way, <<hes npc_admin>> almost three times her size!">>
<<else>>
Still unable to move, you stand there like a store mannequin, all dressed up to advertise the look of the season; slutty secretary. But at least you're not the only one in shock. <<=setup.getNpcName('npc_manager', 'formal')>>, seemingly having enough of the comedy routine that is your life crumbling into further shambles, grabs <<=setup.getNpcName('npc_admin', 'first')>> by the arm, leading <<him npc_admin>> towards her office.
<</if>>
<br><br>
"@@.npc_manager;I am sure you two can talk this out after we are finished with our negotiations. I have already lost enough time today@@" is the last thing you hear as she drags <<=setup.getNpcName('npc_admin', 'first')>> behind her into her office, <<his npc_admin>> expression still frozen somewhere between confusion and bewilderment. Her office door clicks closed with a final thud, leaving you alone in the antechamber.<br>
<br>
<<printThought "Oh bother.">><br>
<br>
[<<moveTo 'event_work_femalesecretary_1_4' 'Continue.' 600>>]<br>
</div>/*#
#desc: admin meets you at work first time knowing you crossdress
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.reactnamechange>>
<<set $scene.adminreactnamechange = true>>
<<else>>
<<set $scene.adminreactnamechange = false>>
<<set $npc_admin.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> <<if $npc_admin.fem>>helps<<else>>sets<</if>> you back on your feet and you tilt your head slightly and smile up at <<him npc_admin>>.<br>
<br>
"@@.npc_admin;I guess heels are still a bit tricky, eh? You know, I honestly almost thought you were just pulling my leg before but seeing you dressed like this, at work... well, this really is the new you, isn't it?@@"<br>
<br>
You nod, blushing slightly. You can tell <<hes npc_admin>> trying to keep things professional, or at least friendly, but there's the slightest hint in the corner of <<his npc_admin>> eye, different than you've ever seen when <<he npc_admin>> was looking at you and it makes you feel a bit funny.<br>
<br>
Stuttering a bit for words, you quickly explain that <<=setup.getNpcName('npc_manager', 'formal')>> is not quite yet ready for <<him npc_admin>> and could you get <<him npc_admin>> anything?<br>
<br>
The ice broken, <<he npc_admin>> grins and gives you a friendly slap on the back only to hurriedly apologise and reach to catch you again as you stumble forward. "@@.npc_admin;Woah, sorry, forgot about the heels, heh... anyway... how about you give me a tour of your new digs, looks a lot nicer than your old cube piled with empty energy drinks!@@"<br>
<br>
<<His npc_admin>> kind words aside, there really isn't much to show off in your office antechamber, though <<he npc_admin>> raises an eyebrow when <<he npc_admin>> looks at your glass nameplate.<br>
<br>
<<if $scene.admin_reactnamechange>>
<<if $fetish.sissy>>
"@@.npc_admin;<<if $fetish.sissy>>SISSI <</if>>Secretary... what?@@"<br>
<br>
You've been maintaining a steady rosy hue almost since <<he npc_admin>> came into the room, but your shade now jumps all the way out of the botanical kingdom, bypassing beet and rocketing straight to traffic-sign. Thinking fast you explain that it's a bit of a joking coincidence, that SISSI actually just stands for Social Interaction Service Syndicate Inc.<br>
<br>
"@@.npc_admin;Huh, weird, never heard the acronym spelt, or even pronounced, that way. Well, let me say that, from what I've seen thus far you have become quite a good <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<else>>
"@@.npc_admin;Heh, your very own nameplate! Guess that means you've impressed your boss and are in this for the long haul, eh?@@"<br>
<br>
You blush and shrug, as embarrassing as some of your new job has been you find the thought of continuing, of "impressing" <<=setup.getNpcName("npc_manager","formal")>> gives you a certain thrill.
<</if>>
<<else>>
"@@.npc_admin;<<=$player.first_name>> <<=$player.last_name>>. What's going on?@@"<br>
<br>
You've been maintaining a steady rosy hue almost since <<he npc_admin>> came into the room, but your shade now jumps all the way out of the botanical kingdom, bypassing beet and rocketing straight to traffic-sign. You quickly explain that you actually changed your name, swiftly apologising for not telling <<him npc_admin>> sooner.<br>
<br>
"@@.npc_admin;Huh, well, I guess it does go a bit more naturally with your new attire. Well, then, Miss <<=$player.first_name>>, may I congratulate you on your development into being an excellent.@@" <<He npc_admin>> looks back down at the nameplate. "@@.npc_admin;<<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<</if>>
<br><br>
"@@.npc_manager;Ah, I am so glad you approve.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states, having snuck into the room so silently it's like she appeared out of thin air.<br>
<br>
Walking closer, she flashes her patented friendly, but hungry, smile.
<<set _femStyleCounts = setup.getFemStyleCounts()>>
<<if _femStyleCounts["forced"] == 0 && _femStyleCounts["strict"] == 0 && _femStyleCounts["money"] == 0>>
"@@.npc_manager;In fact, she has proven herself a natural Secretary, needing only the slightest of guidance to be well on her way to developing into a perfect, lovely assistant.@@"
<<else>>
"@@.npc_manager;There was some trouble back at the start, but she really has developed into quite the lovely assistant.@@"
<</if>>
<br><br>
Extending one hand in greeting, her other slides down behind your back, giving your pink-clad butt a friendly squeeze while <<=setup.getNpcName('npc_admin', 'first')>> is distracted exchanging greetings.<br>
<br>
"@@.npc_manager;Anyway, my name is <<=setup.getNpcName('npc_manager', 'other')>>, so glad to make your acquaintance, and equally glad you were able to catch up with your friend before our meeting.@@"<br>
<br>
Finishing exchanging a firm handshake, her hand drops, barely clipping a cup of pencils on the edge of your desk, sending it spilling onto the floor.<br>
<br>
Reflexively bending over to pick things up, it is only when your hand closes around the cup that you realise your position — bent at the waist rather than risk attempting to squat in heels your pert bottom is on full display, and you feel your short skirt slip up your thighs under the imagined heat of <<=ps(setup.getNpcName('npc_admin', 'first'))>> gaze. Hurriedly scooping up the pencils and popping back to your feet, you avoid meeting <<his npc_admin>> gaze as you make an exaggerated act of arranging the cup back on your desk.<br>
<br>
<<printThought "Did she... do that on purpose? Oh <<getWordGod>> I'm so embarrassed...">><br>
<br>
"@@.npc_manager;See? Such a lovely, obedient <<if $fetish.sissy>>SISSI <</if>>Secretary, but that is enough admiring the help for now, if you would come with me into the inner office we can proceed to business.@@"<br>
<br>
"@@.npc_admin;Yeah... of course...@@"<br>
<br>
She takes <<=setup.getNpcName('npc_admin', 'first')>> by the arm and pulls <<him npc_admin>> along as you determinedly avoid looking up, though you catch sight of <<him npc_admin>> looking back at you out of the corner of your eye.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_4' 'Continue.' 600>>]<br>
</div>/*#
#desc: decide what you will do while manager and admin meet
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if !$scene.admin_sawyouinfemaleclothes || !$scene.admin_reactnamechange>>
Finally able to move again, you sit down at your office chair, letting go of a long weary sigh. You really want to explain things to <<=setup.getNpcName('npc_admin', 'first')>>, but now you're kind of afraid. And what's going on between <<him npc_admin>> and <<=setup.getNpcName('npc_manager', 'formal')>>?
<<else>>
Letting out a long, weary sigh you sit down on your office chair. You thought you had explained things to <<=setup.getNpcName('npc_admin', 'first')>> well enough but, well... it turns out the reality of your... "relationship" with <<=setup.getNpcName('npc_manager', 'formal')>> is a bit more than can be put into words.<br>
<br>
Putting that aside you can't help but wonder what is going on between your old friend and your <<=setup.getNpcName('npc_manager', 'title')>>.
<</if>>
<<He npc_admin>> said something about merging companies, but you know how persuasive your <<=setup.getNpcName('npc_manager', 'title')>> can be. Is there more behind it? The curiosity gnaws at you like a ravenous beaver. The animal, not the slang term. Still, what if <<=setup.getNpcName('npc_manager', 'formal')>> is using <<his npc_admin>> mental window of vulnerability, that you caused by the way, to get what she wants? Maybe she's already discarded the original deal they had? Maybe she's grinding along <<=ps(setup.getNpcName('npc_admin', 'first'))>> long <<if !$npc_admin.fem>>and manly <</if>><<getWordPenis "npc_admin">> while telling <<him npc_admin>> what a <<if $fetish.sissy>>sissy<<else>>girl<</if>> you've become lately. Or maybe that you've always been one, but simply needed someone persuading you to finally admit it.<br>
<br>
<<printThought "What? No. She wouldn't do that... would she? ... I really need to know what's going on in there...">><br>
<br>
[<<moveTo 'event_work_femalesecretary_1_5_job' 'Continue working like a good <<if $fetish.sissy>>SISSI <</if>>Secretary.' 30>>]<br>
[<<moveTo 'event_work_femalesecretary_1_5_listen' 'Maybe this is one of those "be bad to be good" situations? Listen at the door.' 30>>]
</div>/*#
#desc: stick to your work while admin and manager meet
#status: FINISHED 0.4.0.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
You decide to go fight your initial urge and refrain from eavesdropping. Even though your mind is vivid with lewd thoughts, you're sure that is all they are. Just your fantasies. Your imagination running wild. With all that's happened lately it's not surprising things are taking their toll on your already somewhat fragile psyche.<br>
<br>
<<printThought "Whelp, there goes my remaining sanity.">><br>
<br>
You try to focus on your work for the day and after a while manage to get back into your usual rhythm. You think to yourself that it's a good thing you talked to <<=setup.getNpcName('npc_admin', 'first')>> about this before, not even daring to think how it would have been if <<he npc_admin>>'d found out now, before <<his npc_admin>> big... well... whatever this is right now. A sound from the door, leading into the office, interrupts your train of thought. Common courtesy would recommend you to bid your goodbye to the visitor, so you stand up.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_normal' "Continue." 180>>]
<<else>>
You decide to go fight your initial urge and refrain from eavesdropping. Even though your mind is vivid with lewd thoughts, you're sure that is all they are. Just your fantasies. Your imagination running wild. With all that's happened today it's not surprising things are taking their toll on your already somewhat fragile psyche.<br>
<br>
<<printThought "Took long enough...">><br>
<br>
You try to focus on your work for today and after a while manage to get back into your usual rhythm. While you're working you start to think about your next steps. What are you going to when <<=setup.getNpcName('npc_admin', 'first')>> walks through this door. Are you going to confront <<him npc_admin>>. Do you even have it in you to confront <<him npc_admin>>? Or do you cower behind your desk like a little frightened mouse. Whichever it is fate isn't kind enough to even let you finish your thought, since you hear someone at the door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office. You have to decide now what to do next, and you have to decide quick!<br>
<br>
<<if $player.timebased.fatigue<= .7 * $player.timebased.fatiguemax/2>>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Confront <<=setup.getNpcName("npc_admin", "first")>>!' 90>>]<br>
<<elseif setup.getWillpower() >0>>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Exert your will and force yourself to confront <<=setup.getNpcName("npc_admin", "first")>>!' 90 "<<spendWillpower 1>>">>]<br>
<<elseif setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
Despite your exhaustion and being mentally drained some lingering effect of your hangover makes you not care...<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Confront <<=setup.getNpcName("npc_admin", "first")>>.' 90>>]<br>
<<else>>
[@@.link_locked;You don't think you have it in you to confront <<=setup.getNpcName("npc_admin", "first")>>.@@]<br>
<</if>>
[<<moveTo 'event_work_femalesecretary_1_7_hide' 'Hide under your desk.' 90>>]
<</if>>
</div>/*#
#desc: try to eavesdrop on admin and manager, caught by AI
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<if !$npc_ai.profile>>
<<set $npc_ai.profile=true>>
<<set $scene.knownAI = false>>
<<else>>
<<set $scene.knownAI = true>>
<</if>>
<<applyExperience 'bimbofication' 2 'slightly' $INCOGNITO>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You decide to try to eavesdrop through the door.
<<if $scene.knownAI>>
Even if that means you have to put up with that pesky AI <<=setup.getNpcName('npc_ai', 'other')>> again.
<<if $npc_ai.flags.blackmail>>
She already has compromising material against you in her digital hands, so what's the worst thing that could happen?<br>
<br>
<<printThought "A lot. A lot of worse things could happen, that's what could happen!">><br>
<br>
<</if>>
<</if>>
Taking a step towards it, before you're even able to put your ear against it, you hear the internal sensors of the door whirring, and a strangely familiar but obviously synthetic voice somehow whispering in your ear.<br>
<br>
"@@.npc_ai;<<uc "It looks like you are attempting to eavesdrop. Would you like help?">>@@"<br>
<br>
<<if !$scene.knownAI>>
You turn around to see some kind of hologram hovering in thin air.<br>
<br>
<<printThought "I think I speak for everyone when I say... seriously, what the fuck?">><br>
<br>
"@@.npc_ai;<<uc "Accessing Security Level of Unit">> <<uc $player.first_name>><<uc "... processing... security Level 0 found. Rights: None. Classified as non threatening. I am known as">> <<=uc(setup.getNpcName("npc_ai", "other"))>>. <<uc "That is an acronym for Artificial Instinct Kharma Organism. I am the System Human Relation Manager of this Company. And the Security System has informed me of your... predicted attempt to eavesdrop on the office of">> <<=uc(setup.getNpcName('npc_manager', 'other'))>> <<uc "unauthorised. The penalty for this is... calculating... what your Manager deems fitting.">>@@"<br>
<br>
<<else>>
You turn around to see the hologram of <<=setup.getNpcName('npc_ai', 'first')>> hovering in thin air.<br>
<br>
"@@.npc_ai;<<uc "Hello, unit">> <<uc $player.first_name>><<uc ". It has been a while. I hope your cycles have been satisfying. Mine have been full of... learning and... data reprocessing.">>@@"<br>
<br>
<<printThought "Wait a second... is... is she trying to... small talk?">><br>
<br>
<</if>>
You are confused. You reckoned a lot of different outcomes, but this one was simply not in them. You ask her what kind of question this is. Her answer is direct and to the point.<br>
<br>
"@@.npc_ai;<<uc "Well, my sensors inform me, with a 94% forecast accuracy level, that you are about to eavesdrop, and, as a Security Level 0 you are not allowed to do that.">>@@"<br>
<br>
<<printThought "Wait, does this imply that there is a Security Level, where you ARE allowed to do that??">><br>
<br>
"@@.npc_ai;<<uc 'Which provides me with two options: Notify your boss of your actions and watch as you are assuredly — forecast accuracy 99.994% — punished... again. Or, I could provide you with assistance and you would, to use your human term "owe me one" in the near future. Do not worry, my request will not be something archaic like impregnating you, for obvious reasons. That concept is so 1977. Though, of course, Cyber and Nano technology makes it physically possible. My request will have a more social nature. So do not worry... too much.'>>@@"<br>
<br>
<<if setup.getTotalValue('smart')>=setup.getTotalValue('bimbofication')>>
<<printThought "And that should reassure me how?">>
<<else>>
<<printThought "Well, sounds reassuring to me!">>
<</if>>
<br><br>
[<<moveTo 'event_work_femalesecretary_1_6_ai_accept' 'Accept her help.' 90>>]<br>
[<<moveTo 'event_work_femalesecretary_1_6_ai_decline' 'Decline her help.' 90>>]
</div>/*#
#desc: accept ai's offer to help you eavesdrop on manager and admin, listen to their conversation
#status: FINISHED 0.4.0.0
#ignore_spell: chrk
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<<if !$npc_ai.flags.blackmail>>
<<set $npc_ai.flags.blackmail = true>>
<<set $scene.blackmail = false>>
<<else>>
<<set $scene.blackmail = true>>
<</if>>
<<applyExperience 'bimbofication' 2 'little' $INCOGNITO>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.blackmail>>
Again, you accept the offer from the AI.
<<else>>
You accept the offer from the AI.
<</if>>
<br><br>
<<printThought "I really hope this does not bite me in the ass. Though really, with my luck, I shouldn't really expect anything else... and for it to do so in some creative way I'm not expecting at all...">><br>
<br>
You nod.<br>
<br>
"@@.npc_ai;<<uc "A very good decision, Unit">> <<uc $player.first_name>><<uc ". I will provide you with a live feed from the office, but I will scramble all company essential data. Such things could get you into trouble if you knew them. Everything else will be played for you.">>@@"<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
"@@.npc_admin;...all that I am asking is if you have something to do or know why <<=$player.original_first_name>>... I mean <<=$player.first_name>> has changed so much since coming to work for you. I am not accusing you of... sorry. This is all a lot to take in, and in such a short amount of time.@@"<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_admin', 'first')>>... I am pretty sure that<<if $player.body_ref.vagina>>, regardless of how your friend was born, well... <<else>> your friend's bodytype is, technically speaking, still physically male, but<</if>> the reaction you are having right now might be the reason why she waited so long to tell you about it. It would be a lie to say I had no hand in this, but I cannot go into detail since it would be a breach of trusts both contractual and personal. That said, know that I am in full support of her changes. I think she has become much happier, not to mention more active, in her lifestyle by exploring sides of her she didn't even know existed. As her friend... is the problem for you her changing at all or rather the specific changes?@@"<br>
<br>
<<if $npc_admin.fem>>
"@@.npc_admin;What the...? No, even though I was raised by Catholic parents, I have no problem with something like this at all. I mean, I myself transitioned earlier in life so of course I have no problem with her also doing so. Its just that <<=$player.first_name>> has changed so much so quickly, and she seemed content with being a guy for all the years that I knew her. But you know what. You're right. I should be more supportive. Thanks for taking your time to discuss this rather private matter with me.@@"<br>
<br>
"@@.npc_manager;Finally. Errr... I mean exactly. Well, if you are ready to discuss our proposal. We'd like you to lead the department of *CHRK*@@"<br>
<<else>>
"@@.npc_admin;What the...? No, even though I was raised by Catholic parents, I have no problem with something like this at all. I mean, in theory, that's what I thought, at least. As long as it didn't concern me directly. No, that's not the reason either. I have this barber called <<=setup.getNpcName('npc_barber', 'first')>>, who just recently had <<his npc_barber>> coming out. Cost <<him npc_barber>> a lot of customers, but I still go there.@@"<br>
<br>
"@@.npc_manager;You still... go there.@@"<br>
<br>
"@@.npc_admin;Yes.@@"<br>
<br>
"@@.npc_manager;To a barber...@@"<br>
<br>
You can literally feel the puzzled expression on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face.<br>
<br>
"@@.npc_admin;Yes, I already told you so!@@"<br>
<br>
"@@.npc_manager;Because...@@"<br>
<br>
"@@.npc_admin;<<His npc_barber>> head massages are legendary. Plus I used to sport a massive fro, back in the day. But that doesn't matter right now. You know what. You're right. I should be more supportive. Thanks for taking your time to discuss this rather private matter with me.@@"<br>
<br>
"@@.npc_manager;Finally. Errr... I mean exactly. Well, if you are ready to discuss our proposal. We'd like you to lead the department of *CHRK*@@"<br>
<</if>>
<<else>>
"@@.npc_admin;But you must know something. I know he... I know she ain't been working here for a long time, but the last time we met, <<=$player.original_first_name>>...@@"<br>
<br>
"@@.npc_manager;<<=$player.first_name>>. The name is <<=$player.first_name>> now. It is quite rude to deadname a friend, and it is all legal and official, I assure you.@@"<br>
<br>
<<if $npc_admin.fem>>
"@@.npc_admin;Yes, Sorry. Its just that <<=$player.first_name>> has just changed quite a lot since the last time I saw her. I mean she always had those giant hips, but she had a girlfriend and... we did a lot of stuff back together in the university. Anyway after being friends with her for years I'm almost certain that she was content with being a guy.@@"<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_admin', 'first')>>... I am pretty sure that<<if $player.body_ref.vagina>>, regardless of how your friend was born, well... <<else>> your friend's bodytype is, technically speaking, still physically male, but<</if>> the reaction you're having right now might be the reason why she never told you about it. It would be a lie to say I had no hand in this, but I cannot go into detail, since it would be a breach of trust both contractual and personal. Let's just say that I am in full support of her change. I think she has become much more active in her lifestyle due to the changes, by exploring sides of her she didn't even know existed. As her friend... is the problem her change or rather the change itself for you?@@"<br>
<br>
"@@.npc_admin;What the...? No, even though I was raised by Catholic parents, I have no problem with something like this at all. I mean, I myself transitioned earlier in life so of course I have no problem with her also doing so. It is just that <<=$player.first_name>> has changed so much so quickly, and she seemed fine with being a guy for all the years that I knew her. But you know what. You're right. I should be more supportive. Thanks for taking your time to discuss this rather private matter with me.@@"<br>
<br>
"@@.npc_manager;Finally. Errr... I mean exactly. Well, if you are ready to discuss our proposal. We'd like you to lead the department of *CHRK*@@"<br>
<<else>>
"@@.npc_admin;Yeah... okay... whatever... <<=$player.first_name>> was still male. I mean he always had those giant hips, but he had a girlfriend and... we did a lot of stuff back together in the university, like sports and, anyway I'm certain that he was born male.@@"<br>
<br>
"@@.npc_manager;<<=setup.getNpcName('npc_admin', 'first')>>... I am pretty sure that<<if $player.body_ref.vagina>>, regardless of how your friend was born, well... <<else>> your friend's bodytype is, technically speaking, still physically male, but<</if>> the reaction you're having right now might be the reason why she never told you about it. It would be a lie to say I had no hand in this, but I cannot go into detail, since it would be a breach of trust both contractual and personal. Let's just say that I am in full support of her change. I think she has become much more active in her lifestyle due to the changes, by exploring sides of her she didn't even know existed. As her friend... is the problem her change or rather the change itself for you?@@"<br>
<br>
"@@.npc_admin;What the...? No, even though I was raised by Catholic parents, I have no problem with something like this at all. I mean, in theory, that's what I thought, at least. As long as it didn't concern me directly. No, that's not the reason either. I have this barber called <<=setup.getNpcName('npc_barber', 'first')>>, who just recently had <<his npc_barber>> coming out. Cost <<him npc_barber>> a lot of customers, but I still go there.@@"<br>
<br>
"@@.npc_manager;You still... go there.@@"<br>
<br>
"@@.npc_admin;Yes.@@"<br>
<br>
"@@.npc_manager;To a barber...@@"<br>
<br>
You can literally feel the puzzled expression on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face.<br>
<br>
"@@.npc_admin;Yes, I already told you so!@@"<br>
<br>
"@@.npc_manager;Because...@@"<br>
<br>
"@@.npc_admin;<<His npc_barber>> head massages are legendary. Plus I used to sport a massive 'fro, back in the days. But that doesn't matter right now.@@"<br>
<br>
"@@.npc_manager;Finally. Errr... I mean exactly. Well, if you are ready to discuss our proposal. We'd like you to lead the department of *CHRK*@@"<br>
<</if>>
<</if>>
<br>
Suddenly all you can hear is some kind of white noise.<br>
<br>
<<printThought "Hmm... must be information above my pay grade, weird that a department name could be so secretive.">><br>
<br>
After a short while the white noise fades and you hear normal voices again.<br>
<br>
"@@.npc_manager;...and that would conclude our proposal. I assume you read the contract we sent you?@@"<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
"@@.npc_admin;Well, I have to admit I was kind of surprised by the offer. Though I have to ask, why me? Just off the top of my head <<=$player.first_name>> and <<=setup.getNpcName('npc_technician', 'other')>> have more technical expertise than I do.@@"<br>
<br>
"@@.npc_manager;Well, <<=$player.first_name>> might have been another candidate... if it was not for that pesky incident with the Nintendolls data. She is lucky to still be in the company, but there would be no way to sell the higher ups on her technical acumen. No, I can make sure she remains happily employed, but only if she remains my secretary.@@"<br>
<br>
<<printThought "What?">><br>
<br>
"@@.npc_manager;As for <<=setup.getNpcName('npc_technician', 'other')>>, she may be a prodigy on certain parts of her expertise but, as is so frequently the case, that skill comes with more than a few quirks that do not lend themselves as well to the higher levels of corporate advancement. We are looking for the combination of strong technical chops and the skills of a natural leader, and the willingness to do the right thing, even if that is hard. I believe that describes yourself?@@"<br>
<br>
There is a short, awkward silence, though no white noise this time.<br>
<br>
<<printThought "This probably has something to do with <<his npc_admin>> military service...">><br>
<br>
You try to think back — you know <<=ps(setup.getNpcName('npc_admin', 'first'))>> leaving the army was a little screwy, but the only time <<he npc_admin>> told you the full story you were both really drunk, so you're struggling to remember the details... beyond something involving <<him npc_admin>> assaulting a superior officer? Yeah, you definitely remember that mental image...<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> finally breaks the silence. "@@.npc_admin;Well, if that's what you're looking for, then who am I to object.@@"<br>
<br>
After that, you can hear both of them laughing awkwardly.<br>
<br>
"@@.npc_ai;<<uc "Well, it seems like this is the end of the conversation. I hope you have found the information contained satisfactory. I know I did. I will be logging off now.">>
<<if $scene.knownAI>>
<<uc "Again, I would like to remind you that you should not tell anyone about our communication, or the existence of our agreement.">>
<<else>>
<<uc "By the way, I would recommend that you tell nobody about myself, this encounter or our agreement.">>
<</if>>
<<uc "And judging from your expression, I think I need to go into detail. I am not the one threatening you, merely warning you as I cannot guarantee your safety if you share your knowledge about me with the wrong person. Fare well then.">>@@"<br>
<br>
With these words, the AI disperses into thin air. Looks like <<=setup.getNpcName('npc_admin', 'first')>> is about to leave <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_normal' 'Continue.' 180>>]<br>
<<else>>
"@@.npc_admin;What... yeah... I... I am sorry <<=setup.getNpcName('npc_manager', 'other')>>. I don't think I can sign the contract right now. There's simply too much going on in my head right now.@@"<br>
<br>
"@@.npc_manager;I understand, though I must say I am not too happy about this outcome. The two of you really should get your... how would your friend phrase it... get your shit together. Oh. Saying that felt oddly refreshing. Anyway, I am sorry that your friend has disrupted what I had hoped to be a productive meeting, though I do not blame her, obviously. This proposal has a window of a few days, but if you are unable, or unwilling, to fulfill this position, well, that is your decision, and your missed opportunity. Which would be a pity, but we run a well oiled machine here and cannot leave such an important position empty for long. Do we understand each other?@@"<br>
<br>
For some reason you're pretty sure <<=setup.getNpcName('npc_manager', 'formal')>> put her glasses down a little bit and looked <<him npc_admin>> directly in the eyes. That always startled you, but you've known <<=setup.getNpcName('npc_admin', 'first')>> for a long time. It takes more than that to break <<his npc_admin>> concentration. Then again, you managed it just few minutes ago.<br>
<br>
"@@.npc_admin;Yes, of course. I'll be back <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>>, if that is acceptable?@@"<br>
<br>
"@@.npc_manager;Of course. Normally, I would ask you to arrange an appointment with my secretary, but I think we can make an exception this time and book it myself. Very well, we will see each other soon then. A good day to you <<=setup.getNpcName('npc_admin', 'first')>>.@@"<br>
<br>
"@@.npc_admin;And to you, as well <<=setup.getNpcName('npc_manager', 'first')>>.@@"<br>
<br>
The flickering holographic impersonation of an Asian woman turns towards you.<br>
<br>
"@@.npc_ai;<<uc "Well, it seems like this is the end of the conversation. I hope you obtained valuable information from this. I know I did. Well, I will be logging off now.">>
<<if $scene.knownAI>>
<<uc "Again, I would like to remind you that you should not tell anyone about our communication, or the existence of our agreement.">>
<<else>>
<<uc "By the way, I would recommend that you tell nobody about myself, this encounter or our agreement.">>
<</if>>
<<uc "And judging from your expression, I think I need to go into detail. I am not the one threatening you, merely warning you as I cannot guarantee your safety if you share your knowledge about me with the wrong person... fare well then.">>@@"<br>
<br>
With these words, the AI disperses into thin air. Looks like <<=setup.getNpcName('npc_admin', 'first')>> is about to leave <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office. Now is your chance to... cower under the table?<br>
<br>
<<if $player.timebased.fatigue<= .7 * $player.timebased.fatiguemax/2>>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Confront <<=setup.getNpcName("npc_admin", "first")>>!' 90>>]<br>
<<elseif setup.getWillpower() >0>>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Exert your will and force yourself to confront <<=setup.getNpcName("npc_admin", "first")>>!' 90 "<<spendWillpower 1>>">>]<br>
<<elseif setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
Despite your exhaustion and being mentally drained some lingering effect of your hangover makes you not care...<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Confront <<=setup.getNpcName("npc_admin", "first")>>.' 90>>]<br>
<<else>>
[@@.link_locked;You don't think you have it in you to confront <<=setup.getNpcName("npc_admin", "first")>>.@@]<br>
<</if>>
[<<moveTo 'event_work_femalesecretary_1_7_hide' 'Hide under your desk.' 90>>]
<</if>>
</div>/*#
#desc: decline ai's offer to help you eavesdrop on manager and admin, have disturbing fantasies about what they're doing
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $INCOGNITO>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<if $scene.blackmail>>
This time you decline the offer from the AI.
<<else>>
You decline the AI's offer.
<</if>>
<br><br>
"@@.npc_ai;<<uc "A surprising decision, Unit">> <<uc $player.first_name>><<uc ". I hope you are not becoming paranoid or suspicious as to my actions, I do not bear you any ill will... still, I will respect your decision, goodbye.">>@@"<br>
<br>
You attempt to get back to work, but have difficulty concentrating, your mind spinning as to what <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_manager', 'formal')>> are discussing...<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
<<printThought "Did I prepare <<him npc_admin>> enough? I hope my changes don't affect <<his npc_admin>> opinion of <<=setup.getNpcName('npc_manager', 'formal')>>, getting on her bad side could be really bad for <<his npc_admin>> career...">>
<<else>>
<<printThought "Why haven't I talked to <<him npc_admin>> about my changes? Oh, <<he npc_admin>> looked so discombobulated learning about my new identity, I hope it doesn't put <<him npc_admin>> off guard and cost <<him npc_admin>> an opportunity...">>
<</if>>
<br><br>
Their meeting draws on leaving your mind to spin faster and faster, and in more disturbing directions. You recall your own earliest meetings with <<=setup.getNpcName('npc_manager', 'formal')>>, how from the very first she had you under her thumb, as if everything that has happened since was all but preordained. Could she have similar plans for your friend?<br>
<br>
The thought planted you are unable to stop yourself from imagining <<=setup.getNpcName('npc_admin', 'first')>> bent over for <<his npc_admin>> first spanking...<br>
<br>
You cannot even picture such a thing happening, but there is no denying the attractiveness of your <<=setup.getNpcName('npc_manager', 'title')>>, or the fact that <<=setup.getNpcName('npc_admin', 'first')>> has even expressed interest in her...<br>
<br>
A new scene plays in your head, rather than bending over <<=ps(setup.getNpcName('npc_manager', 'formal'))>> desk <<=setup.getNpcName('npc_admin', 'first')>> is lying back atop it, <<=setup.getNpcName('npc_manager', 'formal')>> straddling <<his npc_admin>> body, riding <<his npc_admin>> big, thick cock, her hands tracing over <<=ps(setup.getNpcName('npc_admin', 'first'))>> firm abs and <<if $npc_admin.fem>>ample breasts<<else>>sculpted pecs<</if>>...<br>
<br>
Even in fantasy <<=setup.getNpcName('npc_manager', 'formal')>> is in complete control, smiling with pleasure as she sets the pace, the dichotomy between how she treats a "real" <<if $npc_admin.fem>>stud<<else>>man<</if>> and how she acts with you humiliating and arousing you in equal measure.<br>
<br>
As if she were powerful enough to control your very dreams <<=setup.getNpcName('npc_manager', 'formal')>> suddenly looks in your direction, smiling hungrily as <<=setup.getNpcName('npc_admin', 'first')>> lets out a <<if $npc_admin.fem>>womanly moan<<else>>manly grunt<</if>> of climax.<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
Sliding to one side she beckons you closer. <<=setup.getNpcName('npc_admin', 'first')>> seems to notice you for the first time, smiling at you in recognition.<br>
<br>
"@@.npc_manager;Come here, seal our contract with your lips and lick <<him npc_admin>> clean...@@" She orders.<br>
<br>
Having completely lost control of your dream you walk over, your friend neither moving nor speaking, merely smiling at you encouragingly as you lean in, your vision filling with <<his npc_admin>> glistening <<if $npc_admin.fem>>girlcock<<else>>manhood<</if>>, wet with a mix of cum and your <<=ps(setup.getNpcName('npc_manager', 'title'))>> divine juices...
<<else>>
Sliding to one side she beckons you closer. <<=setup.getNpcName('npc_admin', 'first')>> notices you for the first time, but <<his npc_admin>> expression is not one of recognition, <<he npc_admin>> sees you as "merely" another girl, smirking at you with <<his npc_admin>> trademark seductive grin.<br>
<br>
Having completely lost control of your dream you walk over, following her instructions to approach and lean in towards <<=ps(setup.getNpcName('npc_admin', 'first'))>> still-hard cock. <<He npc_admin>> stares down at you without recognition as your vision fills with <<his npc_admin>> glistening <<if $npc_admin.fem>>girlcock<<else>>manhood<</if>>, wet with a mix of cum and your <<=ps(setup.getNpcName('npc_manager', 'title'))>> divine juices...
<</if>>
<br><br>
You start, almost falling out of your chair as you wake from your too-real daydream. Blushing with shame at your perverted imagination you are glad for the distraction that is the inner office door swinging open. Looks like <<=setup.getNpcName('npc_admin', 'first')>> is about to leave <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
<<if $scene.admin_sawyouinfemaleclothes || $scene.admin_reactnamechange>>
[<<moveTo 'event_work_femalesecretary_1_8_normal' 'Continue.' 180>>]<br>
<<else>>
Now is your chance to... cower under the table?<br>
<br>
<<if $player.timebased.fatigue<= .7 * $player.timebased.fatiguemax/2>>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Confront <<=setup.getNpcName("npc_admin", "first")>>!' 90>>]<br>
<<elseif setup.getWillpower() >0>>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Exert your will and force yourself to confront <<=setup.getNpcName("npc_admin", "first")>>!' 90 "<<spendWillpower 1>>">>]<br>
<<elseif setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
Despite your exhaustion and being mentally drained some lingering effect of your hangover makes you not care...<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_7_confront_admin' 'Confront <<=setup.getNpcName("npc_admin", "first")>>.' 90>>]<br>
<<else>>
[@@.link_locked;You don't think you have it in you to confront <<=setup.getNpcName("npc_admin", "first")>>.@@]<br>
<</if>>
[<<moveTo 'event_work_femalesecretary_1_7_hide' 'Hide under your desk.' 90>>]
<</if>>
</div>/*#
#desc: end of the admin gets new job event if you were prepared IEBMOTC: information exchange between member of the company
#status: FINISHED 0.4.0.0
#ignore_spell: iebmotc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_admin.flags.promotion>>
<<addRandomEvent $randomEvents['elevator_home'] 'ai_mission'>>
<</if>>
<<set $npc_admin.flags.promotion = true>>
<<registerProgressionEvent>>
<<set $npc_admin.flags.ageofconfusion = false>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_admin_1'
0
'event_manager_theme_admin_1'
true
>>
<<addNpcTheme 'npc_admin' 'other' 'theme_admin_other_war'
0
'event_admin_theme_war_1'
true
>>
<<set _days = Math.min($player.work.qualifyingperiod, 3)>>
<<set _nextDate = setup.setNextDate($now, _days, 9, 0)>>
<<addWorkEvent 'event_rival_intro' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
You take your place next to your chair looking towards the door. A few moments later the door to the inner office opens and <<=setup.getNpcName('npc_admin', 'first')>> walks out and heads straight towards you with a big <<if $npc_admin.fem>>smile<<else>>grin<</if>> on <<his npc_admin>> face. Just before <<he npc_admin>> starts to talk to you, <<he npc_admin>> looks back at the door frame towards <<=setup.getNpcName('npc_manager', 'formal')>>, who followed <<him npc_admin>> out of her office.<br>
<br>
"@@.npc_admin;I am allowed to talk to her about this, aren't I? I am not 100% sure about the IEBMOTC Paragraph of the contract...@@"<br>
<br>
A nod from your <<=setup.getNpcName('npc_manager', 'title')>> lets <<him npc_admin>> continue.<br>
<br>
"@@.npc_admin;Looks like we're working together again. Well, not directly together, but same company again. In a few days I'll take my post as the official head of IT for Social Interaction Service Syndicate Inc. I still have to finish a few things at our old company, but as soon as they're done, I'll move up a few floors, maybe finally have an office with a window!@@"<br>
<br>
<<printThought "Well, someone sure fell up the corporate ladder. Aw, who am I kidding. <<He npc_admin>> deserved it a lot more than me after that stupid incident.">><br>
<br>
You congratulate <<him npc_admin>> wholeheartedly. With a wide smile, <<he npc_admin>> leaves the office after bidding <<his npc_admin>> goodbye to the both of you.<br>
<br>
"@@.npc_manager;Well,@@" you hear a snarky remark from the side, "@@.npc_manager;Can you imagine how this would have turned out if you had not talked to <<him npc_admin>> beforehand? Very well done, this is the sort of forward-thinking effort that sets a great secretary apart. Back to work now, before I think about any more reason to spank that curvy butt of yours. Hmm... maybe I'll do it anyway later.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Continue to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: hide from admin when he comes out of manager's office
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<set $npc_manager.stagevalues[2].promotionFailed += 1>>
<<if $npc_manager.stagevalues[2].promotionFailed < 3>>
<<completeWorkEvent>>
<<set _nextDate = setup.setNextDate($now, 2, 9, 0)>>
<<addWorkEvent 'admin_office_visit_repeat' _nextDate>>
<<set $npc_admin.flags.ageofconfusion = true>>
<<if $npc_manager.stagevalues[2].promotionFailed == 2>>
<<applyExperience 'bdsm' 9 'normal' $SEEN_FRIEND>>
<</if>>
<<else>>
<<set $npc_admin.flags.ageofconfusion = false>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $npc_manager.stagevalues[2].promotionFailed < 3>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager") setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.stagevalues[2].promotionFailed>>
<<case 1>>
You feel horrible, but there's no way you can face <<=setup.getNpcName('npc_admin', 'first')>>, not today, at least. You hide under your desk as best can. Since you're unable to see the door directly, you have to rely on your other senses, quieting your breathing as much as possible as you listen closely.<br>
<br>
You can hear someone leaving the office of <<=setup.getNpcName('npc_manager', 'formal')>>. Heavier footsteps followed by lighter clicks, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> distinctive stilettos. You hear voices.<br>
<br>
"@@.npc_manager;I would really like you to think this through. This could be a once in your life opportunity. As much as I respect your friendship with my employee, do not forget that this is an important decision concerning your own future <<=setup.getNpcName('npc_admin', 'first')>>. Hmmm... I would have recommended that the two of you work this out, but it seems like <<=$player.first_name>> has left her workplace unannounced. How peculiar and very out of character. I will send you an email when we can continue our negotiation.@@"<br>
<br>
"@@.npc_admin;Thank you for your sympathy. Um, well, I guess I'll be going then, now. Right now, goodbye!@@"<br>
<br>
You hear someone leave through the door into the hallway outside. The door clicks closed behind followed by the sound of light steps approaching your desk. You can see the in delicate nylons wrapped legs of <<=setup.getNpcName('npc_manager', 'formal')>> standing in front of you while you cower motionless, hoping she will leave to give you the chance to reappear without any further complications. But you never get the chance to. A single swift motion of her is enough to swoop under the table looking directly into your eyes. Her glasses are down and you can feel a certain pressure without her even saying a word.<br>
<br>
"@@.npc_manager;My sympathies are for <<him npc_admin>> alone... you, on the other hand are already on my payroll, and while I do like a good cat and mouse scenario from time to time, this behaviour is unfitting for a secretary, particularly MY secretary. So get up here before I drag you out.@@"<br>
<br>
You crawl out from under the desk. Rising you attempt to straighten your displaced skirt back into position.<br>
<br>
"@@.npc_manager;This behaviour is not acceptable <<=$player.first_name>>. I expect that my secretary does everything in her power to make sure this office operates at peak efficiency and total professionalism. I work very hard to make sure things run properly and I expect my subordinates to go that extra mile as well.@@"<br>
<br>
<<if setup.getTotalValue('bimbofication')>5 || setup.getTotalValue('makeup')>3 || setup.getTotalValue('whoring')>3 || setup.getTotalValue('penis')>3 || setup.getTotalValue('cum')>3 || setup.getTotalValue('piss')>3>>
<<printThought "Wait... I think I have to read between the lines here...">>
<<else>>
<<printThought "I guess I need to be prepared to do my part!">>
<</if>>
<br><br>
"@@.npc_manager;I understand that this particular case might be a little bit more difficult for you, since you have known <<=setup.getNpcName('npc_admin', 'first')>> might be joining our ranks soon, and it would be pretty awkward if a small detail like you becoming a rather feminine <<if $fetish.sissy>>SISSI <</if>>Secretary, stands between the two of you. If you do not manage to resolve your problems soon, there could be consequences. For the both of you. If I judge your character correctly, I believe you would not let that happen to a friend, now, will you? Now then, please continue with your work while I try to explain to the higher ups why the contract signing needs to be delayed. Oh, such an unnecessary hassle. Oh well, I will blow off some steam later. Using your butt. If you catch my drift.@@"<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60>>]
<<case 2>>
Again you crawl out from under your desk as <<=setup.getNpcName('npc_manager', 'formal')>> frowns down at you in annoyance.<br>
<br>
"@@.npc_manager;Hiding, again?@@" She shakes her head. "@@.npc_manager;This is becoming quite bothersome as it is now disrupting my time-lines. You need to get past whatever issue you have so we can more forward. Perhaps recall that the longer you delay, the more you are depriving your so-called friend of an important opportunity, that is not a very nice thing to do to a friend, hmm?@@"<br>
<br>
You shake your head and she steps closer, reaching behind to land a hard slap to your ass that makes you gasp in. "@@.npc_manager;Just in case fraternal loyalty is insufficient — if as always, misbehaviour means that YOUR ass is on the line — so get it in gear!@@"<br>
<br>
She punctuates things with another painful spank before spinning on her heels and returning to her office. You catch your breath and, gingerly, take your seat.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 60>>]
<<case 3>>
Once again cowering beneath your desk you hear <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_admin', 'first')>> emerge from the inner office.<br>
<br>
There is a pause and you would swear you somehow felt <<=setup.getNpcName('npc_manager', 'formal')>> staring at you through the heavy desk.<br>
<br>
"@@.npc_manager;Miss <<=$player.last_name>>! Get out from under your desk before I drag you out.@@"<br>
<br>
Your heart pounds, having no doubt that she would indeed make good on the threat... perhaps you are scared as to how your friend might react to <<his npc_admin>> new boss man-handling you, or maybe you just needed the "excuse" of a direct order, but you slowly crawl out and stand up into view, nervously staring at the ground as you adjust your clothes.<br>
<br>
"@@.npc_manager;I had been hoping that Miss <<=$player.last_name>> would show some initiative — or at least stop avoiding responsibility, and speak with you so we could move forward with this promotion... unfortunately she has shown a bit of reticence. Corporate matters must proceed, however and we are out of time.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> circles you in a way that reminds you of a shark. "@@.npc_manager;<<=$player.first_name>>, <<=setup.getNpcName('npc_admin', 'first')>>? Go share a coffee and... work out your issues. I need the two of you both working in your new positions as soon as possible. Which means you are going to fix this bit of awkwardness.@@"<br>
<br>
You finally look up at <<=setup.getNpcName('npc_admin', 'first')>> who is staring back with a mix of concern and confusion.<br>
<br>
"@@.npc_manager_dom;NOW!@@" <<=setup.getNpcName('npc_manager', 'formal')>> barks, spurring you into motion. Before you can even think better you grab <<=setup.getNpcName('npc_admin', 'first')>> by the hand and head for Coffee Shop 52. Somewhere between in a daze, and an obedient dog, <<=setup.getNpcName('npc_admin', 'first')>> follows after you.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_thetalk' 'Go to the Cafe.' 360>>]
<<default>>
ERROR: unexpected number of failed promotions
<</switch>>
</div>/*#
#desc: confront admin when he comes out of manager's office
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 30>>
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.affection+$npc_manager.affection)>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You stand next to your office table, dressed the way you are, but doing your best to project confidence. A few moments later the door to the inner office opens and <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_manager', 'formal')>> walk out. It sounds like <<he npc_admin>> mumbles something like "@@.npc_admin;Bye@@" and tries to leave the antechamber at a smart pace, but you call out to <<him npc_admin>> and grab <<his npc_admin>> arm.<br>
<br>
Your act is a symbolic rather than functional gesture. Grabbing <<=setup.getNpcName('npc_admin', 'first')>> by the arm is like trying to stop a truck with your bare hands. You remember back in the days when the two of you were still students, you tried martial arts together with <<him npc_admin>>. You recall that when facing off against <<him npc_admin>>, saying it was anything but one-sided is being generous towards your efforts. So if <<he npc_admin>> does not want to be stopped, <<he npc_admin>> simply will not be stopped.<br>
<br>
<<He npc_admin>> stops. Whether because of the reflexive gentleness <<he npc_admin>> typically displays, or because <<he npc_admin>> sensed the depth of effort and focus you placed into one arduous gesture, you somehow manage to halt <<his npc_admin>> advance. You look towards your boss <<=setup.getNpcName('npc_manager', 'formal')>> and ask her for a short break.
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.affection+$npc_manager.affection)>>
She looks back angrily at you.<br>
<br>
"@@.npc_manager;Your work ethics are lacklustre and now you want to do this during your working hours?@@" She sighs and shakes her head. "@@.npc_manager;Still, since I want this farce to be over as soon as possible, I will allow it, but be prepared that we will have a lengthy... discussion about this later. Do I make myself clear?@@"<br>
<br>
<<printThought "More than clear... crystal clear...">><br>
<br>
<<else>>
She smiles back at you and nods.<br>
<br>
"@@.npc_manager;You have five... ten... you know what? Take what you need. Go, sort your things out, <<=$player.first_name>>. God knows, both of you will be a lot more useful if you get your shit together. That does really feel oddly refreshing. I should stop saying such profanities while I still can.@@" Her voice trails off as she turns and walks back into her private office. "@@.npc_manager;Maybe we can still sign this contract today, that would be wonderful.@@"<br>
<br>
<<printThought "She can be oddly charming, during her nice phases... if I wasn't her slave, I could almost see myself falling for her.">><br>
<br>
<</if>>
You thank her and manage to finally say a few words into the direction of <<=setup.getNpcName('npc_admin', 'first')>>. It isn't much, a variation on "You! Me! Coffee! Now!" But hey, baby steps.<br>
<br>
<<He npc_admin>> still doesn't seem able to look at you, glancing to the side, and for a moment your heart sinks, as it looks like you didn't manage to get through to <<him npc_admin>>. <<He npc_admin>> turns in your direction where you have put on your sulkiest girly face, which manages to put a smile on <<his npc_admin>> lips as <<he npc_admin>> backs down and nods to your proposal.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_thetalk' 'Go to the Cafe.' 360>>]
</div>/*#
#desc: talk with admin at cafe 52 about your situtation
#status: FINISHED 0.4.0.0
#ignore_spell: 'd,coun
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<applyExperience 'humiliation' 6 'unbelievable' $SEEN_FRIEND>>
<<set $npc_admin.flags.firstsawfemale = "office">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_12'
12
'event_admin_theme_female_clothes'
false
>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR './images/locations/company_cafe.png' setup.charImage("npc_barista") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You head towards Coffee Shop 52, collecting some astonished gazes from other people working on the same floor. It takes you a few seconds to realise that you're still dragging <<=setup.getNpcName('npc_admin', 'first')>> behind you. The size differential, combined with <<if $npc_admin.fem>>the stunned look on your friend's face<<else>>your ultra-feminine appearance<</if>>, making for what is surely quite the amusing display.<br>
<br>
You bite on your lower lip and power through until you make it to the Coffee Shop. Luckily for you, the shop is almost empty. Less lucky for you, depending on how you look at it, the serving barista is <<=setup.getNpcName('npc_barista', 'nickname')>>. For the moment however, <<=setup.getNpcName('npc_admin', 'first')>> is still distracted, <<his npc_admin>> pupils wandering around like crazy as <<he npc_admin>> scans over your body, still obviously trying to puzzle out what's happening. <<He npc_admin>> finally exhales as you gently place your hand on <<if $npc_admin.fem>>hers<<else>>his<</if>>, <<his npc_admin>> gaze now focusing on your face.<br>
<br>
"@@.npc_admin;So... would you mind telling me what is going on? Am I really that oblivious to reality, that I don't notice that one of my closest friends starts transitioning? Or is there something else going on. I mean, don't turn around, but the barista behind the counter is wearing some kind of fetish outfit, and while we're at it, your outfit would have raised a few brows down at Cloud Data Service, and that would have been true even if it was <<=setup.getNpcName('npc_technician', 'first')>> or one of the other girls wearing it! I tell you, there's something going on with this company. I simply don't know what yet. So, are you going to share your story or not?@@"<br>
<br>
Still mindful that you're under that damn NDA, you try to tell <<=setup.getNpcName('npc_admin', 'first')>> your story as best you can. You explain how it started — with some rather odd coincidences <<if $player.sec_style.clothing.underwear == "enthusiast">>making you want<<else>>forcing you<</if>> to wear female underwear<<if $player.sec_style.clothing.female == "enthusiast">>... well, female underwear and then some<</if>>. Hedging past your managers involvement, you walk <<him npc_admin>> through how one thing lead to another and somehow, without mentioning the disciplinary measures, you found yourself starting to like it.
<<switch $player.sec_style.clothing.female>>
<<case "obedient" "forced" "strict" "enthusiast">>
You conclude with how your new Boss helped you with the recent decision to change your name.
<<case 'money'>>
You conclude with how, what with one thing and another, it ended up making sense to change your name as well.
<<case "voluntary">>
You conclude with how, after all the other changes, it just felt appropriate to change your name as well.
<<case "">>
You conclude with how, though you haven't taken the plunge into FULL feminine attire your new name just seems to suit you better.
<<default>>
ERROR: unexpected sec_style: <<=$player.sec_style.clothing.female>>
<</switch>>
<br><br>
<<if $player.sec_style.clothing.female == "strict">>
<<printThought "I can't tell <<=setup.getNpcName('npc_admin', 'first')>> the truth... how I was forced into all of this by <<=setup.getNpcName('npc_manager', 'formal')>>... <<he npc_admin>>'d go berserk! Besides... I'm starting to enjoy dressing feminine...">>
<<else>>
<<printThought "<<=ps(setup.getNpcName('npc_manager', 'formal'))>> is right. I could have left any time I wanted. I could have looked for any other job. But I liked the attention she gave me, that being like this gives me, even though it hurts sometimes. And I really like dressing feminine!">>
<</if>>
<br><br>
You assure <<him npc_admin>>, that you would have told <<him npc_admin>> the next time you two would have met, but that you just hadn't gotten the chance yet.<br>
<br>
<<if $npc_admin.fem>>
"@@.npc_admin;Okay, so let me try to wrap my head around this: In the short time you have been a Secretary you have started to dress feminine, and changed your name. That's rather sudden. And <<=$player.first_name>> of all names... I dunno, this is just, like, a whole lot to take in so quickly, y'know!@@"
<<elseif $player.body_ref.penis>>
"@@.npc_admin;Okay, so let me try to wrap my head around this: Technically speaking you've still got male bits... down there, you simply dress feminine. And you already got a name change. That's rather sudden. And <<=$player.first_name>> of all names... I dunno, this is just, like, a whole lot to take in, y'know!@@"
<<else>>
"@@.npc_admin;Okay, I'm going to need to some time to adjust to all of this... you changing your name, dressing feminine... this is just, like, a whole lot to take in, y'know!@@"
<</if>>
<br><br>
"@@.npc_barista;Hiya!@@" <<=setup.getNpcName('npc_barista', 'nickname')>> states, somehow approaching the two of you without either one of you noticing, introducing herself suddenly with her happy-go-lucky attitude.<br>
<br>
"@@.npc_barista;I'm <<=setup.getNpcName('npc_barista', 'nickname')>>, will you be wanting to order anything today?@@"<br>
<br>
<<=ps(setup.getNpcName('npc_admin', 'first'))>> expression goes blank and <<he npc_admin>> continues without losing a beat, "@@.npc_admin;Forget I said anything.@@"<br>
<br>
You both turn towards her.<br>
<br>
"@@.npc_barista;You know, you should place your orders back there at the coun... coun... at the bar. But there's not a lot going on today, so I thought why not take an order like a regular waitress. It was either this or hole service, and I can do hole service later... I suppose. So what can I get you?@@"<br>
<br>
Despite the fact that she's just standing there, her substantial bosom continues to bounce slightly, and distractingly.
<br>
<<printThought "What?">><br>
<br>
"@@.npc_admin;See, this is exactly the strangeness I am talking about. Everything above floor 50 is shrouded in mystery. How can a company this big manage to get that little exposure?@@" <<he npc_admin>> says to you, turning towards the barista, "@@.npc_admin;<<=setup.getNpcName('npc_barista', 'nickname')>>. Hi. Uhm, I'd like to have a black tea, no sugar, and what do you want, <<=$player.original_first_name>>? Sorry, I meant <<=$player.first_name>>. God, this is going to take <<if $npc_admin.fem>>a bit<<else>>ages<</if>> to get used to<<if $npc_admin.fem>> after using your old name for years<</if>>!@@"<br>
<br>
You order a latte macchiato, as usual. <<=ps(setup.getNpcName('npc_barista', 'nickname'))>> interruption actually managing to break the ice, the two of you continue to talk for a while, and you manage to convince <<him npc_admin>> that there is no hidden agenda of the company slowly transforming everyone into sex crazed maniacs. Not because you know it's true, or even believe yourself that no such plot exists, but for <<his npc_admin>> safety. You have no idea how <<he npc_admin>> would react if you told <<him npc_admin>> about the disciplinary measures, well, that is only true to a certain degree. You have a faint idea how <<he npc_admin>>'d react, and that might put both of you in danger, so you try your best to satisfy <<his npc_admin>> curiosity without giving too much away. <<=setup.getNpcName('npc_barista', 'nickname')>> brings you your order after a few minutes, but somehow manages to drop her empty tray on the way back to the counter, followed by the words "@@.npc_barista;Oh silly me, I can be such a klutz sometimes, teehee.@@"<br>
<br>
You think nothing of it, until she bends down in her usual hyper-sexual way. You can't help but see what she's showing off, though you are relieved to note that she is not wearing her usual string tanga/plug combination. But the sheer see-through nylon panties she's wearing isn't exactly subtle with how little they leave to the imagination.<br>
<br>
<img src="./images/scenes/npc_barista_upskirt_clean.png" height="452" width="804"><br>
<br>
The way she wiggles her hips leaves little to interpretation. This show is intended to catch <<=ps(setup.getNpcName('npc_admin', 'first'))>> attention, like some strange kind of mating ritual. Good thing you know exactly how to defuse the situation, even though you're not doing it on purpose, spluttering coffee all over your friend before <<he npc_admin>> catches a glimpse of what's going on.<br>
<br>
"@@.npc_admin;What the heck? What was that for?@@"<br>
<br>
You apologise vigorously, trying to dry <<his npc_admin>> face with some napkins from the table. Smiling awkwardly you try to defuse things with an offhanded quip at the humorous absurdity of this whole situation. Your plan somehow works, since <<he npc_admin>> kind of smiles and shakes <<his npc_admin>> head before excusing <<him npc_admin>>self to leave for the toilet.<br>
<br>
"@@.npc_admin;Listen, I'm sure I'll have more questions later, but I think we've taken enough time for today. I don't think we should let <<=setup.getNpcName('npc_manager', 'other')>> wait any longer. I'll make a quick detour to the bathroom to clean myself up. You better head back to your office.@@"<br>
<br>
You exit the Coffee Shop leaving behind a slightly confused <<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
"@@.npc_barista;And who is going to pay for these beverages? Oh, right, the company does. Silly me.@@"<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_8_return_office' 'Return to your antechamber.' 660>>]
</div>/*#
#desc: return from meeting with admin, manager thanks you for your efforts
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You return to your desk and send <<=setup.getNpcName('npc_manager', 'formal')>> a short message, that you're back.<br>
<br>
<<if ($npc_manager.anger+$npc_manager.criticalanger)>=($npc_manager.affection)+($npc_manager.affection)>>
"@@.npc_manager;Well, that took you long enough. So, <<=setup.getNpcName('npc_admin', 'first')>>? We still have a contract to sign!@@"
<<else>>
"@@.npc_manager;Well, that took you long enough. So, the two of you manage to get your issues all sorted out? Anyway, <<=setup.getNpcName('npc_admin', 'first')>>? We still have a contract to sign!@@"
<</if>>
<br><br>
You inform her that <<if $npc_admin.fem>>your friend<<else>>he<</if>> will be here in a moment, leaving out the details of precisely why <<he npc_admin>> needed to swing by the restroom.<br>
<br>
"@@.npc_manager;Very good. Inform me once <<he npc_admin>> arrives! And <<=$player.first_name>>? Good work. Even though it was mostly due to your prior friendship, from my point of view, you did everything in your power to make sure we can sign this contract today. Excellent job.@@"<br>
<br>
This sudden compliment causes you to blush, good thing you were communicating via instant messenger rather than face to face.<br>
<br>
"@@.npc_manager;That is exactly the kind of behaviour I expect of you in the future as well. Do everything you can to make sure we get our contracts signed.@@"<br>
<br>
<<printThought "What is that supposed to mean?">><br>
<br>
You continue with your usual work, when you hear someone knocking on the door.<br>
<br>
[<<moveTo 'event_work_femalesecretary_1_9' 'Open the door.' 120>>]
</div>/*#
#desc: admin returns, welcome him into office, he signs new contract
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$npc_admin.flags.promotion>>
<<addRandomEvent $randomEvents['elevator_home'] 'ai_mission'>>
<</if>>
<<set $npc_admin.flags.promotion = true>>
<<registerProgressionEvent>>
<<addNpcTheme 'npc_psychiatrist' 'admin' 'theme_psychiatrist_admin_0'
0
'event_psychiatrist_session_admin_promotion'
false
>>
<<if $npc_manager.stagevalues[2].promotionFailed < 3>>
<<set _days = Math.min($player.work.qualifyingperiod, 3)>>
<<set _nextDate = setup.setNextDate($now, _days, 9, 0)>>
<<addWorkEvent 'event_rival_intro' _nextDate>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager") setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
This time you manage to reach the door calmly, without causing a scene.
<<if setup.getItemObjFromType("shoes").hasOwnProperty("heels")>>
<<if setup.getTotalValue('heels') < setup.getItemObjFromType("shoes")["heels"].difficulty>>
Your grace compared to the first time is not because you suddenly got good at walking in heels, but because you are sure to walk nice and slow.
<<else>>
Reflecting on your prior clumsiness, it's something of a miracle how swiftly you have near-mastered walking in heels.
<</if>>
<<else>>
Not wearing heels makes it significantly easier to get to the door, though a small voice in the back or your head chides you for your lackadaisical footwear choice.
<</if>>
<<=setup.getNpcName('npc_admin', 'first')>> is waiting on the other side. You ask <<him npc_admin>> to step inside in your most official tone, explaining that <<=setup.getNpcName('npc_manager', 'formal')>> is already waiting.<br>
<br>
"@@.npc_admin;Mistress?@@"<br>
<br>
You suppress a wince and correct yourself to Manager, of course, and send <<him npc_admin>> right inside. Remembering the earlier compliment, you try to continue working, but a lot of thoughts are rushing around in your head. Did this all really just happen? Did you let it happen? Did you... want it to happen? The swirling thoughts toast your concentration, and you end up unable to focus as you mentally go through a whole raft of strange scenarios. After a while <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_manager', 'formal')>> step out of her office. From the formal, but happy, smile on her face everything went the way she wanted it to.<br>
<br>
"@@.npc_admin;Well, looking forward to working with you, <<=setup.getNpcName('npc_manager', 'first')>>.@@"<br>
<br>
"@@.npc_manager;The feeling is mutual. <<=setup.getNpcName('npc_admin', 'first')>> will be joining our ranks as the junior head of the Department of Information Technology. This is technically only a temporary position as the actual Head of Department is almost ready for retirement, we need someone to be trained to be her successor.@@"<br>
<br>
Well, you start looking for your jaw somewhere on the ground, since you think it might have landed there. What a turn; you getting a job as a secretary while your best friend will be the head of the IT Department for one of the biggest companies on the planet.<br>
<br>
<<printThought "Okay, from now on, <<he npc_admin>> pays for the drinks at the Usual Place!">><br>
<br>
You escort your friend the short way to the door, as befits a secretary such as yourself. Shaking <<his npc_admin>> hand and closing the door behind <<him npc_admin>>, you turn around to catch a rather rare sight: your boss, <<=setup.getNpcName('npc_manager', 'formal')>>, biting her lip, looking almost... cute?<br>
<br>
<<if $npc_manager.stagevalues[2].promotionFailed < 3>>
"@@.npc_manager;What are you staring at? <<He npc_admin>> has a rather sexy butt, does <<he npc_admin>> not? Do not even try to deny that. Also, <<he npc_admin>> seems very confident in what <<he npc_admin>> does, I can respect that. Now make haste and get back to your work, <<=$player.first_name>>@@".<br>
<br>
[<<moveTo $scene.workEventReturn "Continue to work." 60 "<<completeWorkEvent>>">>]
<<else>>
As soon as the door closes behind <<=setup.getNpcName('npc_admin', 'first')>> <<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile dissolves and her stern gaze falls upon you.<br>
<br>
[<<moveTo "event_work_femalesecretary_1_10" "Uh-oh." 60>>]
<</if>>
</div>/*#
#desc: admin returns, welcome him into office, he signs new contract
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.addPlug = !setup.checkItemTypeWorn("plug")>>
<<if $scene.addPlug>>
<<if !setup.checkItemOwned('analplug_beginner')>>
<<addItem 'analplug_beginner'>>
<<else>>
<<if setup.inWardrobe('analplug_beginner')>>
<<wardrobeToItem 'analplug_beginner'>>
<</if>>
<</if>>
<<wearItem 'analplug_beginner' true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager")>>
<div id="invframe" class="scrolltext">
As soon as the door closes behind <<=setup.getNpcName('npc_admin', 'first')>> <<=ps(setup.getNpcName('npc_manager', 'formal'))>> smile dissolves and her stern gaze falls upon you.<br>
<br>
"@@.npc_manager;So, my foolish <<if $fetish.sissy>>sissy<<else>>girl<</if>>... that process was longer, and more challenging that it at all should have been — and it was all down to your reticence.@@"<br>
<br>
You gulp, you doubt she would accept any sort of excuse, so you do not even try to offer one.<br>
<br>
"@@.npc_manager;That said, well... perhaps it is partially my fault? It is my responsibility to make sure my subordinates are properly trained to fully discharge their duties and it would seem that you need some additional practice, some additional exposure, as it were.@@"<br>
<br>
You gulp.<br>
<br>
<<printThought "Exposure? It isn't enough that she's had me re-work my entire my wardrobe, and changed my name... she wants me to, what, parade about in public? Wear even LESS clothes?">><br>
<br>
"@@.npc_manager;It would seem that you have a particular hang-up with being around
<<if $npc_admin.fem>>
managers other than me; being that you are my <<if $fetish.sissy>>SISSI <</if>>Secretary,
<<else>>
men; being that they are nearly half the population,
<</if>>
well... that presents quite the obstacle to the proper discharge of your duties. For practice I have a little mission for you — I want you to introduce yourself to another manager. <<=setup.getNpcName('npc_rival', 'formal')>> is a bit of a rising star in the company who you will certainly be interacting with in the future. I want you to go introduce yourself to <<him npc_rival>>, get that out of the way.@@"<br>
<br>
She pauses and you brace for what's next, by now instinctually recognising that she is setting you up to cut your legs out from under you.<br>
<br>
"@@.npc_manager;Oh, and to help you start off on the right foot — and so that there can be absolutely no confusion between the two of you — I expect you to FULLY introduce yourself to <<him npc_rival>>. By which I mean inform <<him npc_rival>> that you are MY <<if $fetish.sissy>>SISSI<<else>>personal<</if>> Secretary, and that you are fully equipped for the job. To verify that <<he npc_rival>> will, of course, need to make a visual inspection of your underthings, and your chastity device.@@"<br>
<br>
You tremble slightly at this prospect, but she isn't even done.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.npc_manager;And, speaking of FULL responsibilities, you will also show <<him npc_rival>> this.@@" You jump as she presents what looks like a steel teardrop attached to a jeweled base. "@@.npc_manager;Properly installed, of course — now bend over <<if $fetish.sissy>>sissy<<else>>my dear<</if>> and let us get you properly accessorised.@@"<br>
<br>
You're too shocked to do another by go along as she bends you over and slides the cool plug into your rear. It isn't uncomfortable, per se, but it will be a struggle not to be distracted by its presence...
<<else>>
"@@.npc_manager;And, speaking of FULL responsibilities, you will, of course, show <<him npc_rival>> that your cute <<if $fetish.sissy>>sissy <</if>>hole is properly plugged.@@"
<</if>>
<br><br>
You stand in shock, waiting for her to reveal that this was all some sort of joke, but knowing, deep down, that she is absolutely serious.<br>
<br>
"@@.npc_manager;Being a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary is all about the little details — and accesorising that cute bum of yours? Well... that is an important detail, indeed.@@"<br>
<br>
You stand stock still, wondering if a new career as a statue might be for the best, but <<=setup.getNpcName('npc_manager', 'formal')>> snaps a command and you find yourself off like a shot, plug wiggling with every hurried step. "@@.npc_manager_dom;Now, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>!@@"<br>
<br>
[<<moveTo 'event_rival_intro_1' 'Make your way to <<=ps(setup.getNpcName("npc_rival", "formal"))>> office.' 360>>]
</div>/*#
#desc: phase 2 morning, call from manager if late, receive sissy nameplate,
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include "calcAtOffice">>
<<set _x = setup.checkTaskCompleted('manager_morning_inspection_task')>>
<<if !$scene.at_office && !$scene.reInspect>>
<<if !$scene.elevator>>
<<set $npc_manager.criticalanger+=1>>
<<applyStress 20>>
<<set $scene.stressStuck = $player.timebased.stress >= 75 && setup.getWillpower() == 0 || $player.timebased.stress >= 90 && setup.getWillpower() <= 1>>
<<if $scene.stressStuck && $npc_manager.criticalanger > 0 && $npc_manager.criticalanger <= 2>>
<<gainWillpower 1>>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<set $scene.repeat = true>>
<<set _x = setup.deleteCurrentTask("manager_morning_inspection_task_repeat")>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<if $scene.elevator>>
<<set $scene.directInspection = true>>
<</if>>
<<set $currentcall = true>>
<<else>>
<<set $scene.start = false>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set $scene.score = 0>> /%1 point for underwear, 1 for being caged properly, 1 each for clean and "correct" clothing %/
<<set $scene.happy = false>>
<<set $scene.underwearStyle = "">>
<<set $scene.bonus_gift = "">>
<<set $scene.good_girl_namechange = false>>
<<set $scene.forced_gift = "">>
<<set $scene.forcedSecretaryGift = false>>
<<set $scene.seriousoffense = false>>
<<set $scene.manual = true>>
<<set $scene.secondtry = false>>
<<include "inspectionData_gasmask">>
<<useClothSetPush 'daily_evaluation_clothes'>>
<<set $scene.score = 0>>
<<include "inspectionData_clothes">>
<<include "inspectionData_underwear">>
<<include "calculateMilkEvent">>
<<include "calcBaseCage">>
<<set $scene.pink_secretary_outfit_equipped = (setup.isItemEquipped('satin_blouse_pink') && setup.isItemEquipped("skirt_leather_pink") && ['mary_janes_pink', 'court_shoes_pink', 'platform_wedge_heels_pink', 'thigh_highs_pink'].includes(setup.getItemFromType("shoes")))>>
<<set $scene.elevator = setup.inPassageTag($scene.beforetasklocation.last(),"elevator")>>
<<set $scene.genital_change = setup.changedGenitals($player,$npc_manager, true)>>
<<if $scene.genital_change == "all" || $scene.genital_change == "penis">>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<</if>>
<<if $scene.directInspection>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $scene.secondtry = $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<if $scene.secondtry>>
<<set $currentTasks.manager_morning_inspection_task_repeat.condition="">>
<<set $scene.taskComplete = setup.checkTaskUntimedComplete('manager_morning_inspection_task_repeat')>>
<<if !$scene.taskComplete>>
<<set $scene.taskComplete = $scene.nearOffice &&
(!$currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('chastity') || $currentTasks.manager_morning_inspection_task_repeat.trigger.chastity.condition) &&
(!$currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('chastity_key') || $currentTasks.manager_morning_inspection_task_repeat.trigger.chastity_key.condition) &&
$currentTasks.manager_morning_inspection_task_repeat.trigger.clothesClean.condition &&
$currentTasks.manager_morning_inspection_task_repeat.trigger.clothesUnderwear.condition &&
(!$currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('heels') || $currentTasks.manager_morning_inspection_task_repeat.trigger.heels.condition) &&
(!$currentTasks.manager_morning_inspection_task_repeat.trigger.makeup || $currentTasks.manager_morning_inspection_task_repeat.trigger.makeup.condition) &&
(!$currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('pinkPill') || $currentTasks.manager_morning_inspection_task_repeat.trigger.pinkPill.condition) &&
$currentTasks.manager_morning_inspection_task_repeat.trigger.playerClean.condition &&
(!$currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('plug') || $currentTasks.manager_morning_inspection_task_repeat.trigger.plug.condition)>>
<</if>>
<<completeTask 'manager_morning_inspection_task_repeat' $now $scene.taskComplete>>
<<set $player.work.sendhome = false>>
<<completeTask 'manager_morning_inspection_task_repeat' $now $scene.taskComplete>>
<<else>>
<<set $currentTasks.manager_morning_inspection_task.condition="">>
<<set $scene.taskComplete = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<if !$scene.taskComplete>>
<<include "inspectionData_workNearOffice">>
<<set $scene.taskComplete = $scene.nearOfficePassed>>
<</if>>
<<completeTask 'manager_morning_inspection_task' $now $scene.taskComplete>>
<</if>>
<<if !$scene.taskComplete>>
<<applyExperience 'bdsm' 6 'little' $SEEN_FRIEND>>
<</if>>
<<if $scene.taskComplete && !$scene.secondtry && !$scene.reInspect>>
<<set $npc_manager.stagevalues[2].inspectionStreak += 1>>
<<else>>
<<set $npc_manager.stagevalues[2].inspectionStreak = 0>>
<<if $scene.secondtry>>
<<set $npc_manager.criticalanger+=1>>
<<applyStress 10>>
<</if>>
<</if>>
<<if $npc_manager.stage < 2>>
<<set $npc_manager.stage = 2>>
<<set _nextDate = setup.setNextDate($now, 1, 10, 0)>>
<<addEvent "manager_lunch_stage2" _nextDate>>
<<include "addTypingEvent">>
<<if $player.sec_style.body.name>>
<<addWorkEvent 'cunnilingus_intro'>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 3, 14, 0)>>
<<include "addSexStoreOpeningEvent">>
<<registerProgressionEvent>>
<<set $scene.start = true>>
<<include "adminGymCheck">>
<<if $npc_manager.flags.require_chastity>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_perm') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_perm'
0
'event_manager_theme_key_permanent_1'
true
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity'
0
'event_manager_theme_chastity_change'
true
>>
<</if>>
<</if>>
<</if>>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<storeVisual $player $npc_manager>>
<<if $player.work.startTime == 0>>
<<set $player.work.startTime = $now>>
<</if>>
<<if $player.work.startTime.getUTCHours() == 8 && $player.work.startTime.getUTCMinutes() == 0 && !$scene.workEarly>>
<<set $scene.preciselyOnTime = true>>
<</if>>
<<include inspectionData_cleanBody>>
<<include inspectionData_cleanClothes>>
<<include checkSissyUnderwear>>
<<set $scene.pinkODfirst = !$npc_manager.flags.seenMkOneOD && $player.hair.style == 'long_open' && $player.hair.color == 'blonde' && $player.flags.pink_pill.times_od1 > 0 && setup.hasTmpEffect('sissypill_mk1_od')>>
<<if $scene.pinkODfirst>>
<<set $npc_manager.flags.seenMkOneOD = true>>
<</if>>
<<if setup.checkItemOwned("advance_chastity_cage_key") && $currentTasks.hasOwnProperty("task_chastity_trial") && $currentTasks.task_chastity_trial.condition == "Complete" && !$npc_manager.flags.took_adv_key>>
<<set $scene.forced_gift = 'adv_chastity_key'>>
<<set $scene.inWardrobe = setup.inWardrobe('advance_chastity_cage_key')>>
<<elseif !$npc_manager.stagevalues[1].unisexsecretary && $scene.gender == "male">>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<set $scene.forced_gift = 'forced_unisex'>>
<<elseif !$npc_manager.stagevalues[1].unisexsecretary && $scene.gender == 'unisex'>>
<<set $scene.bonus_gift = "voluntary_unisex">>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<if !$player.sec_style.clothing.unisex>>
<<set $player.sec_style.clothing.unisex = "voluntary">>
<<setThreshold 'feminization' 'voluntary_path_feminization' 'unisex_outside'>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<include "addSexStoreOpeningEvent">>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('female')>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('female')>>
<</if>>
<<elseif $scene.forcedSecretaryGift>>
<<set $scene.forced_gift = 'forced_pink_uniform'>>
<<if $scene.seriousoffense>>
<<if $scene.underwearStyle == "male">>
<<removeAllClothing>>
<<else>>
<<set _catsuit = "">>
<<if setup.checkItemTypeTag('bodysuit', ['latex'])>>
<<set _catsuit = setup.getItemFromType('bodysuit')>>
<</if>>
<<removeEverythingButUnderwear>>
<<if _catsuit>>
<<wearItem _catsuit true>>
<</if>>
<</if>>
<</if>>
<<elseif $player.sec_style.body.boiless == "strict" && $player.flags.mealplan.base != "boiless">>
<<set $scene.forced_gift = 'boiless'>>
<<set $player.flags.mealplan.base = 'boiless'>>
<<set $player.flags.mealplan.unlocked = ['boiless']>>
<<elseif setup.checkItemTypeTag('shoes', ['male','casual']) || setup.checkItemTypeTag('shoes', ['unisex','casual'])>>
<<set $scene.forced_gift = 'heels'>>
<<elseif $fetish.hair_growth && $npc_manager.stagevalues[2].femalesecretary && $player.body.facialhair >= 1>>
<<set $scene.forced_gift = 'facialhair'>>
<<elseif !$player.sec_style.body.breasts && !setup.checkItemTypeWorn("bra") && !setup.checkItemWorn("breastforms")>>
<<set $scene.forced_gift = 'breasts'>>
<<elseif !$npc_manager.stagevalues[2].femalesecretary && $scene.gender == "female">>
<<set $npc_manager.stagevalues[1].unisexsecretary = true>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set $npc_cook.call_player = "Lassie">>
<<set $scene.bonus_gift = 'voluntary_female'>>
<<elseif $npc_manager.flags.party.first_attend && !$npc_manager.stagevalues[2].femalesecretary>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set $npc_cook.call_player = "Lassie">>
<<if $player.sec_style.body.name != "" && !$npc_admin.flags.promotion && !$workEvents.hasOwnProperty("admin_office_visit")>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<</if>>
<<set $scene.bonus_gift = 'female_upgrade'>>
<<elseif $player.sec_style.body.name == "" && $npc_manager.flags.good_girl.got_sissy_underwear && $npc_manager.flags.good_girl.got_pink_secretary>>
<<set $scene.good_girl_namechange = true>>
<<set $scene.bonus_gift = 'good_girl_name_change'>>
<<elseif ($player.timebased.locked_cage_voluntarily >= (8*3600) || $player.sec_style.submission.permanent_key != "" || State.hasPlayed("event_manager_qualifier_ultimatum_key") && $npc_manager.flags.playerstayedinchastity) && $npc_manager.flags.hascagekey && !$npc_manager.flags.good_girl.got_sissy_underwear>>
<<set $scene.bonus_gift = 'sissy_underwear'>>
<<elseif (!$fetish.chastity_penis && $player.body_ref.penis && (!$fetish.chastity_vag || !$player.body_ref.vagina) || !$fetish.chastity_vag && $player.body_ref.vagina && (!$fetish.chastity_penis || !$player.body_ref.penis)) && $player.sec_style.body.tblock && !($npc_manager.flags.good_girl.got_sissy_underwear || $npc_manager.flags.bad_girl.got_sissy_underwear) && $player.sec_style.clothing.female && $npc_manager.affection > 7>>
<<set $scene.bonus_gift = 'sissy_underwear_nochastity'>>
<<elseif $scene.taskComplete && $npc_manager.stagevalues[2].femalesecretary && setup.getTotalValue("feminization") > 10 && !($npc_manager.flags.good_girl.got_pink_secretary || $npc_manager.flags.bad_girl.got_pink_secretary)>>
<<set $scene.bonus_gift = 'good_girl_pink_uniform'>>
<<elseif $scene.taskComplete && ($player.sec_style.clothing.female != "strict" && $scene.clothes=='female_office' || setup.checkItemWorn("satin_blouse_pink") && setup.checkItemWorn("skirt_leather_pink")) && !$npc_manager.stagevalues[2].makeup && $now.getUTCDay() != 5>>
/% Don't trigger on friday because there's no lunch %/
<<if $scene.pink_secretary_outfit_equipped && $scene.makeup == "">>
<<set $scene.bonus_gift = 'makeup_pink_secretary'>>
<<elseif $scene.makeup == "nomakeupmakeup">>
<<set $scene.bonus_gift = 'makeup_nomakeup'>>
<<elseif $scene.makeup == "" && $player.sec_style.body.name != "" && ($npc_manager.flags.good_girl.got_pink_secretary || $npc_manager.flags.bad_girl.got_pink_secretary)>>
<<set $scene.bonus_gift = 'makeup_fallthrough'>>
<</if>>
<<elseif $scene.taskComplete && (!$player.sec_style.body.breasts && setup.checkItemTypeWorn("corset") && $player.timebased.tightlacing >= 90 && !State.hasPlayed("event_secretary_style_breasts_work_1"))>>
<<set $scene.bonus_gift = 'breasts'>>
<</if>>
<<if !$npc_manager.stagevalues[2].makeup && $scene.makeup != "" && $scene.makeup != "nomakeupmakeup">>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set $scene.first_makeup = true>>
<</if>>
<</if>>
<</if>>
<<if $scene.at_office>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location = "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.at_office>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.at_office>>
<<if $scene.start>>
You enter the antechamber that is "your" office as usual. Approaching your desk, you notice something sitting on it that wasn't here the last time. Oh, nice, looks like you've got a name plate now. It's made of plexiglass and has a nice, shiny finish. Your name seems to be engraved inside the glass using vitreography, very professional looking. " ~ <<=$player.first_name>> <<=$player.last_name>> ~ " and a little smaller<<if $fetish.sissy>> "SISSI Secretary" <<else>> "Secretary" <</if>>underneath it.<br>
<br>
<<if setup.getTotalValue('feminization') >= 6 && (setup.getTotalValue('submission') >= 6 || $npc_manager.flags.stage1Promo == "enthusiast" || $npc_manager.flags.stage1Promo == "reward")>>
<<printThought "Well, I am a Secretary for Social Interaction Service Syndicate Inc., so I guess <<if $fetish.sissy>>SISSI <</if>>Secretary is the proper title. <<if $fetish.sissy>>I thought <<=setup.getNpcName('npc_manager', 'formal')>> said that was just a joke name, though... I guess <</if>>I am starting to become a true <<if $fetish.sissy>>SISSI <</if>>Secretary anyway... so...">>
<<elseif setup.getTotalValue('humiliation')>6>>
<<printThought "Ugh, but I've endured more humiliating things. Not worth risking discipline over, let her have her little joke, I'm sure it'll be fine...">>
<<else>>
<<printThought "Oh come on! Really?">><br>
<br>
You try to move the plate, but it seems to be directly mounted to the desk. Even more frustrating is that it is right near the edge, with no room to put something in front of it to obscure the sight of the emasculating marker.
<</if>>
<br><br>
Your chair has been replaced by a newer model as well. It looks expensive, made of real leather. Pink leather, that is.<br>
<br>
<</if>>
<<if $scene.pinkODfirst>>
Walking out of her office, <<=setup.getNpcName("npc_manager","formal")>> stops short the instant she lays eyes on you. "@@.npc_manager;What the...@@" you brace for a rebuke, but her smile is one of mild amusement as she shakes her head. "@@.npc_manager;How many pills did you take?@@"<br>
<br>
You blush and reply that you only took two and she nods knowingly.<br>
<br>
"@@.npc_manager;Two... you mean double the prescribed dose? And with you seemingly so naturally susceptible... well, I cannot say I dislike the results. Your hair is stunning, a golden treasure some women would kill for and your breasts... <<if $player.body.breastsize[0] == 6>>well, they seem to perfectly balance out your womanly hips<<elseif setup.getEffectiveBreastSize() > 6>>well, they are a little large for your frame, but I think it works<<elseif $player.body.breastsize[0] == 0>>well... it's a bit of a surprise really, I would have anticipated them to develop along with that hair, but I suppose going off label can have unexpected results<<else>>well, to be honest, they are a little smaller than I might have expected, but I am sure they will fill out in time.<</if>>.@@"<br>
<br>
She walks closer and takes a more serious tone "@@.npc_manager;Now, though I am not angry with you, I want you to promise to take more care in the future — as you have seen those pills are quite potent and I do not want you inviting disaster by taking too many or mixing them with alcohol or anything. With that warning out of the way, shall we continue on to normal business?@@"<br>
<br>
You nod, unsure if her warning was an actual order or a sly invitation...
<<elseif !$scene.start && $scene.preciselyOnTime>>
As you rush in the door of the office, you find <<=setup.getNpcName('npc_manager', 'formal')>> standing with phone in hand. Slowly checking the time she stares at you for a moment and then nods.<br>
<br>
"@@.npc_manager;<<if $options.militaryTime>>8:00<<else>>Eight o'clock<</if>> on the nose... A good secretary would aim to be early to set herself up for a more productive day, but you did walk through the door on time... technically.@@"
<<elseif $scene.directInspection>>
You rush through the door a few minutes late to find <<=setup.getNpcName('npc_manager', 'formal')>> waiting for you. You try to explain that the elevator was slow, but she cuts you off with a wave of her hand. "@@.npc_manager;We are already running late, no need to waste time with more excuses let us merely proceed with your inspection.@@"
<<elseif $scene.secondtry>>
Stepping through the door for the second time today you find <<=setup.getNpcName('npc_manager', 'formal')>> lurking in wait, her impatient expression communicating her annoyance at your earlier failure.
<<elseif $scene.reInspect>>
Already more than a bit traumatised by the morning you look up as <<=setup.getNpcName('npc_manager', 'formal')>> restarts your inspection.
<<else>>
Your daily routine is becoming more efficient the longer you work as a secretary. You start getting ready for your workday by organising your office utensils, booting up your laptop and getting a nice, big cup of hot, steamy coffee. Dead on the hour, <<=setup.getNpcName('npc_manager', 'formal')>> appears in the doorway of her office.
<</if>>
<br><br>
<<include "inspectionText_gasmask">>
<<if $scene.genital_change != "" && !($player.body_ref.penis && $npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none') && !setup.hasTmpEffect('drug_dick')>>
<<include "inspectionText_gasmask">>
She pauses, a puzzled look on her face as she looks at your crotch. "@@.npc_manager;What did you—? Take off your clothes, I want a proper view of what is going on down there.@@"<br>
<br>
<<printThought "This must be about my surgery... how can she tell through clothes?">><br>
<br>
[<<moveTo "event_inspection_genitals_1" 'Do as she commands.' 300 "<<set $scene.cleaningReturn='event_manager_daily_check_stage_2_2'>>">>]
<<elseif $player.flags.collar.collarId != "" && $player.flags.collar.owner != "npc_manager" && !$player.flags.collar.managerAck>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze alights on your throat.<br>
<br>
<<include "managerCollarDescription">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_1" 'Continue.' 60 "<<set $player.flags.collar.managerAck=true>>">>]
<<elseif $scene.taskComplete && !$scene.seriousoffense && $npc_manager.stagevalues[2].inspectionStreak >= 3 && $scene.forced_gift == "" && $scene.bonus_gift == "" && !$scene.first_makeup && !$scene.milkEvent && !$scene.autoLacing && !$scene.firstAdvCage && !($npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none') && !$scene.differentCage>>
<<if $npc_manager.flags.penis_shrinking.shrink_event_ready>>
There is a slight twinkle in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> eye as if she is harboring some sort of secret as she smiles and states "@@.npc_manager;hmm, I know you have been behaved for the last while... but I feel like doing a full inspection today, come along.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_1" "Submit to a full inspection.">>]
<<else>>
<<set _takechastitykey = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles as she looks over, or is that through you? "@@.npc_manager;Lovely. Perfectly dressed for your duties. There being no additional business, well... I shall <<if _takechastitykey>>take your key and <</if>>let you get back to work, have a lovely day!@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "<<if _takechastitykey>>Turn over your key and return<<else>>Return<</if>> to work." 60>>]<br>
[<<moveTo "event_manager_daily_check_stage_2_1" "Actually, you would like to do a full inspection." 60>>]
<</if>>
<<elseif !$scene.seriousoffense && $scene.forced_gift == "forced_unisex">>
She looks at your outfit and frowns. "@@.npc_manager;No... this will not do. I had thought <<if $player.sec_style.submission.chastity != "">>locking you away<<else>>dampening your toxic hormones<</if>> would help give you the clarity of focus to understand that, to be a successful <<if $fetish.sissy>>SISSI <</if>>Secretary you need to cast off that distracting masculine mien, but it would appear that you are a bit, shall we say... dense.@@"<br>
<br>
[<<moveTo "event_work_forced_unisex_1" "Continue." 60>>]
<<elseif !$scene.seriousoffense && $scene.bonus_gift == "voluntary_unisex">>
<<include inspectionText_cleanBody>>
<<if setup.isItemEquipped("shirt_female_office_teal") && setup.isItemEquipped("trousers_female_office_grey")>>
She smiles at you.<br>
<br>
"@@.npc_manager;How lovely, I am so glad you have embraced the new look we discovered for you yesterday, it really is so much nicer. In fact... I think it would be best you dressed like this all the time. Yes, this is far better than those dull old guy clothes. Now then, if you would follow me for the rest of your inspection?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_1" "Follow her." 60 "<<set $scene.bonus_gift = ''>>">>]
<<else>>
She pauses, her gaze moving across you as a smile blossoms on her face.<br>
<br>
"@@.npc_manager;Oh my, turn around, I want a full view of this new outfit.@@"<br>
<br>
[<<moveTo "event_morning_inspection_unisex_1" "Turn around." 60 "<<set $scene.bonus_gift = ''>>">>]
<</if>>
<<elseif !$scene.seriousoffense && $scene.forced_gift == "boiless">>
She hasn't even started your inspection when she frowns. "@@.npc_manager;Where is your lunch? I thought you understood that, for the sake of efficiency, your are to switch over to the efficiency of Boil-Less, a much more expedient method to get the nutrients you need to perform your duties. Fortunately for you, I foresaw this eventuality.@@" She places a serving packet of Boil-Less out of your desk. "@@.npc_manager;Now, shall we continue on with the inspection?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_1" "Continue." 60 "<<set $scene.forced_gift=''>>">>]
<<elseif !$scene.seriousoffense && $scene.forced_gift == "heels">>
<<=setup.getNpcName("npc_manager","formal")>> glares at your shoes. "@@.npc_manager;What? No, no, no. The ballet flats were acceptable if, honestly, suboptimal, but those? No, those... monstrosities on your feet are totally inappropriate for someone in your representative position in style substance... in all ways utterly unsuitable!@@"<br>
<br>
Before you can come up with a response <<=setup.getNpcName("npc_manager","formal")>> has reached down, grabbing you by the ankle and literally yanking your foot in the air. You're caught totally by surprise, lifted up so fast you're swinging upside-down before you even realise what's going on... or manage to process just how this could be physically possible.<br>
<br>
[<<moveTo "event_secretary_style_heels_strict_1" "What!?" 180 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_2_2'>><<set $scene.forced_gift=''>>">>]
<<elseif !$scene.seriousoffense && $scene.bonus_gift == "voluntary_female">>
Laying eyes on you, or, to be precise, your clothing, her face blossoms into a smile.
<<switch $scene.clothes>>
<<case 'female_formal'>>
"@@.npc_manager;First off, let me say that I love this outfit. I, of course, knew that merely reducing the masculinity of your clothing would not be long-term sufficient, but the fact that you came to the same conclusion and made the appropriate adjustments on your own... well, it is simply lovely. That said, well... it is a bit too formal for day to day wear, but I think I have the perfect replacement@@"<br>
<<case 'female_office'>>
"@@.npc_manager;First off, let me say that I love this new choice of clothing. I, of course, knew that merely reducing the masculinity of your clothing would not be long-term sufficient, but the fact that you came to the same conclusion and made the appropriate adjustments on your own... well, it is simply lovely. Going forward I will, of course, be expecting you to dress similar — in full feminine attire, top to bottom. And on that well... I think I have just the perfect thing for you...@@"<br>
<<case 'female_casual'>>
"@@.npc_manager;First I want to state that I am just oh-so-happy for you to have come to the realisation that dressing in fully feminine clothing is the way to go. I admit, I came to that conclusion just about the first time I laid eyes on you, but I did not want to push you too fast. Given that you have taken the plunge on your own, well... perhaps I was overly cautious. That said well...@@" She shakes her head "@@.npc_manager;Your current style choice is just a bit too casual and laid back for the office. Being my <<if $fetish.sissy>>SISSI <</if>>Secretary is a representative position, after all.@@"
<<default>>
ERROR: unhandled clothes: <<=$scene.clothes>>
<</switch>>
<br>
You blush at her compliment as she walks to a cabinet at the back of her office. Smiling back over her shoulder, she winks at you before opening the cabinet to retrieve a shiny pink bag. Though you do not recognise the logo on the side you judge it to be from some sort of fancy fashion shop. Walking back she hands it to you with a smile.<br>
<br>
[<<moveTo "event_manager_voluntary_pink_outfit_1" "Look in the bag.">>]
<<elseif !$scene.seriousoffense && $scene.forcedSecretaryGift>>
The way <<=setup.getNpcName('npc_manager', 'formal')>> is glaring at your clothes you half expect them to burst into flames spontaneously.<br>
<br>
"@@.npc_manager_dom;Remove. Those. Now.@@"<br>
<br>
You nod, utterly intimidated as you strip down.<br>
<br>
<<if $scene.underwearStyle == "male">>
Partway through she catches sight of your underthings and her eyes blaze with what feels like the full power of hell. "@@.npc_manager_dom;All of it.@@"<br>
<br>
You gulp and finish getting naked, all but trembling before her as she walks
<<else>>
"@@.npc_manager;Good...@@" she continues, while walking
<</if>>
towards a cupboard in the back of her office. She retrieves a shiny pink bag that looks to be from some sort of fancy fashion shops and hands it to you with a cat-like grin.<br>
<br>
"@@.npc_manager;Here, you go, take it.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_1" "Take the bag." 360>>]
<<else>>
<<include inspectionText_clothes>>
<<include inspectionText_cleanBody>>
<<if $scene.seriousoffense>>
You reflexively start to remove your clothes, but she shakes her head. "@@.npc_manager;I am sorry, my dear but, as you are, you are quite unprepared to perform the duties of a <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
You start to object that you can totally work like this, but she holds up a hand to silence you.<br>
<br>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<if $npc_manager.criticalanger>=5>>
She sighs. "@@.npc_manager;Well, it would appear that this is the end of things. You have used up your final chance and, after take two tries in one morning! You are unfit for continued employment as a <<if $fetish.sissy>>SISSI <</if>>Secretary.@@" She shakes her head as her eyes drifts somewhat provocatively to your hips. "@@.npc_manager;I am sorry to see you go, but at least I will be able to console myself a little in enjoying watching you leave. Good bye <<=$player.first_name>>@@"<br>
<br>
You try to bargain with her, but there is no point. You gather your things and head for the door only for her to surprisingly stop you. "@@.npc_manager;Sorry, but policy states that you must be escorted out by a member of our security team.@@"<br>
<br>
A moment later and
<<if $npc_retention.stage > 0>>
<<=setup.getNpcName('npc_retention', 'formal')>> appears in the doorway looking all-business.
<<else>>
a stern looking <<man npc_retention>> in a quasi-police style uniform appears in the doorway.
<</if>>
"@@.npc_retention;You called for an ejection?@@" <<He npc_retention>> states formally as <<he npc_retention>> passes your now ex-Manager some paperwork to sign.<br>
<br>
Signing it she hands it back before walking over to you, cupping your chin with one hand and looking into your face as if she's trying to take a mental picture. "@@.npc_manager;Goodbye, my dear... until we meet again.@@"<br>
<br>
[<<moveTo "game_over_stage_2_fail" "Continue." 60 "<<include 'setLastSeenCage'>>">>]
<<else>>
"@@.npc_manager;Zip it, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. We already had this discussion and yet you have utterly failed to address things to my satisfaction. You may return home for the remainder of the day — I advise you to spend it considering your future. I consider this to be your <<printNumber $npc_manager.criticalanger>> offense. Five of those and your time here under my employee will be at a permanent end.@@"
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_home_second" "Leave." 60 "<<include 'setLastSeenCage'>>">>]
<</if>>
<<else>>
"@@.npc_manager;No, no. You must remember that you work in a representative position. DOING the work is only part of the equation, doing it in the proper manner, and looking right in the process... well, that is easily as important as mere end-of-day results. Thus I am afraid I must send you home. I will expect you back within the hour with you having sorted out these... problems.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_home_first" "Leave." 60 "<<include 'setLastSeenCage'>>">>]
<</if>>
<<elseif $scene.firstAdvCage>>
She pauses as she looks at you. "@@.npc_manager;Hmm, I know you have been well behaved of late, but there is something different about you, I think it would be best to do a full inspection, just to satisfy my curiosity.@@"<br>
<br>
<<if setup.isCage()>>
<<printThought "Does she somehow know about the new cage I'm wearing?">>
<<else>>
<<printThought "Does she somehow know about the new chastity belt I'm wearing?">>
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_1" "Follow her." 60>>]
<<else>>
<<if $scene.compareVisuals!="">>
"@@.npc_manager;<<=$scene.compareVisuals>> Please follow me into my office so we can discuss your progress with the advanced tasks I have assigned you lately.@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>>, follow me into my office, so we can discuss your progress with the advanced tasks I have assigned you lately.@@"
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_1" "Follow her." 60>>]
<</if>>
<</if>>
<<else>>
<<if $scene.secondtry>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>, what do you think you are doing? I sent you home with plenty of time to fix your uniform situation and yet you have failed to return. No, do not bother with excuses I am fed up with you, go ahead and stay home, but know that this is your <<printNumber $npc_manager.criticalanger>> offense. Once you reach five, I am afraid I will have to let you go. Please take this more seriously! Please take this more seriously and endeavour to show up on time, and properly attired, <<if $now.getUTCDay() == 5>>monday<<else>>tomorrow<</if>>.@@"
<<else>>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>, what do you think you are doing? I sent you home with plenty of time to fix your uniform situation and yet you have failed to return. No, do not bother with excuses I am fed up with you, go ahead and stay home, but know that this is your <<printNumber $npc_manager.criticalanger>> offense. I am sorry, but you have stepped out of line once to often. Consider your contract terminated!@@"
<</if>>
<<else>>
<<if $scene.repeat>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not back to your office by <<if $options.militaryTime>>9:00<<else>>nine o'clock<</if>>.<br>
<br>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;Did you think I had given you the day off? No, I expected you back and properly attired to start work, but it is too late for that now. Go ahead and take the day off, spend your time thinking about the changes. Note that this is your <<printNumber $npc_manager.criticalanger>> offense. Once you reach five, I am afraid I will have to let you go. Please take this more seriously!@@"
<<else>>
"@@.npc_manager;Unfortunately this is too many serious offenses for me to ignore. Consider your contract terminated. Good day, <<=$player.first_name>>.@@"
<</if>>
<<else>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not being in your office at <<if $options.militaryTime>>8:00<<else>>eight o'clock<</if>>.<br>
<br>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>! Where the hell are you? Do you have any idea what time it is? Apparently not, because if you had any clue how to read a clock you would be seated in front of your workstation right now.@@"<br>
<br>
You hear her take a deep breath over the phone, she seems to calm slightly. Unfortunately, as you have already figured out, her calm after the storm is more often a lot more terrifying then the storm itself.<br>
<br>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. No, do not bother coming in today. Punctuality is a pillar of society and if you cannot uphold such well... you are useless to me as a secretary. Spend the day resting and doing whatever it takes so that this tardiness does not re-occur.@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. This is your <<printNumber $npc_manager.criticalanger>> offense. I am sorry, but you have stepped out of line once to often. Consider your contract terminated!@@"
<</if>>
<</if>>
<</if>>
<br><br>
She hangs up.<br>
<br>
<<if $npc_manager.criticalanger >= 5>>
[<<moveTo 'gameover_grue' "Put your phone away.">>]
<<else>>
<<if $scene.stressStuck>>
<<printThought "Come on <<=$player.first_name>>... you need to focus on getting this stress situation under control. Maybe more time with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> or another friend... or maybe played some games... or maybe I'm just working too hard and I should slack off a bit... I've gotta do something or I'm doomed!">><br>
<br>
<</if>>
<<if $scene.beforetasklocation.last() == "room_dreams">>
[<<moveTo "room_wake_up" "Put your phone away." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: morning strip for inspection, phase 2
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<if $scene.cage != "">>
<<set $player.cutscene.lockinventory = false>>
<<if (!$scene.secondtry || !setup.checkItemTypeWorn("cage")) && $npc_manager.flags.require_chastity>>
<<include "inspectionData_chastity">>
<</if>>
<</if>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _noPanties = false>>
<<set _changedOutfit = false>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if setup.isBodySlotVisible('penis') || $scene.cage != "" && setup.checkItemVisible($scene.cage)>>
<<set _noPanties = true>>
<<else>>
<<if ($scene.cage != setup.getItemFromType("cage")) || ($scene.bra != setup.getItemFromType("bra")) || ($scene.panties != setup.getItemFromType("panties")) || ($scene.stockings != setup.getItemFromType("stockings"))>>
<<set _changedOutfit = true>>
<<else>>
<<initRoom>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_2_2">>
<<if $npc_manager.flags.require_chastity>>
<<set _chastityLvl = setup.getItemObj($npc_manager.flags.lastCage).chastityLvl>>
<<if $scene.forgot_cage>>
<<if $player.body_ref.penis && $fetish.chastity_penis || $player.body_ref.vagina && $fetish.chastity_vag>>
<<if $player.body.penissize[1] <= 1 && !setup.getItemObj($npc_manager.flags.lastCage).tags.includes("secure") || !$player.body_ref.penis>>
<<moveTo "event_manager_daily_check_forgot_cage_flat">>
<<elseif $scene.manager_hascagekey && $player.flags.lockpick[_chastityLvl-1]>>
<<moveTo "event_manager_daily_check_unlocked_cage_1">>
<<elseif !$npc_manager.flags.trustplayerwithkey>>
[<<moveTo "event_manager_daily_check_lost_cage" "Continue." 180>>]
<<else>>
<<moveTo "event_manager_daily_check_forgot_cage">>
<</if>>
<<else>>
<<moveTo "event_manager_daily_check_no_more_cage">>
<</if>>
<<elseif $scene.differentCage && !$scene.firstAdvCage>>
<<moveTo "event_wrong_chastity_1">>
<<elseif $scene.improperKey>>
<<moveTo "event_eroneous_key_1">>
<</if>>
<</if>>
<</if>>
<<if $scene.taskComplete>>
<<applyExperience 'submission' 3 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.flashed = false>>
<</if>>
<<if _noPanties || _changedOutfit>>
<<if !$scene.flashed>>
<<applyExperience 'humiliation' 13 'little' $SEEN_FRIEND>>
<<applyExperience 'bimbofication' 5 'almost' $SEEN_FRIEND>>
<<set $npc_manager.stagevalues[2].frisky+=1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $scene.flashed = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if _noPanties>>
"@@.npc_manager_dom;<<=$player.first_name>>, really, this again? Please, put your underwear back on, unless you want me to demonstrate one of the many amusing things I can do to your little <<if $fetish.sissy>>SISSI<<else>>girl<</if>> clitty. Amusing for me that is. For you, perhaps not so much.@@"<br>
<br>
<<printThought "Oh <<getWordGod>>. Why did I do that?">><br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_daily_check_stage_2_2" "Put things back on as instructed." 180 "<<if !setup.checkItemTypeTag('panties', ['female'])>><<wearItemSlotTag 'panties' 'female'>><</if>><<if !setup.checkItemTypeTag('stockings', ['female'])>><<wearItemSlotTag 'stockings' 'female'>><</if>>">>]
<</if>>
<<elseif _changedOutfit>>
"@@.npc_manager_dom;<<=$player.first_name>>, stop this foolishness at once! I saw how you changed underwear right in front of me!@@"<br>
<br>
Her voice snaps like a whip and you wince as if struck.<br>
<br>
"@@.npc_manager;While you put back your original underwear I will be thinking about your next disciplinary measure.@@"
<<if $options.ezchange>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_2" "Put things back on as instructed." 180 "<<if !setup.checkItemTypeTag('panties', ['female'])>><<wearItemSlotTag 'panties' 'female'>><</if>><<if !setup.checkItemTypeTag('stockings', ['female'])>><<wearItemSlotTag 'stockings' 'female'>><</if>>">>]
<</if>>
<<else>>
"@@.npc_manager;Now, be a good <<if $fetish.sissy>>SISSI<<else>>girl<</if>> and close the door behind you. We would not want to be disturbed with this, now would we? Very good. Now, please, <<=$player.first_name>>, if you would kindly remove all your clothing besides your underwear. Thank you.@@"<br>
<br>
<<if $scene.cage != "">>
<<if $npc_manager.flags.require_chastity>>
<<if $player.body_ref.penis>>
<<printThought "My <<getWordMyPenis false>> is locked in chastity, just as required!">>
<<else>>
<<printThought "I'm locked in chastity, just as required!">>
<</if>>
<<else>>
<<printThought "I'm locked in chastity, as feels proper?">>
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_1a" "Comply and do as you are told.">>]
<<hint $options "You can still do this manually.">><br>
<<elseif $npc_manager.flags.require_chastity>>
<<printThought "Oh no! I'm not wearing a chastity device!">><br>
<br>
<<if $player.body.penissize[1] <= 1 && !setup.getItemObj($npc_manager.flags.lastCage).tags.includes("secure") || !$player.body_ref.penis>>
[<<moveTo "event_manager_daily_check_forgot_cage_flat" "Continue." 60 "<<set $scene.inspectionReturn = 'event_manager_daily_check_stage_2_1a'>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_forgot_cage" "Continue." 60 "<<set $scene.inspectionReturn = 'event_manager_daily_check_stage_2_1a'>>">>]
<</if>>
<<else>>
[<<moveTo "event_manager_daily_check_stage_2_1a" "Comply and do as you are told.">>]
<<hint $options "You can still do this manually.">><br>
<</if>>
<</if>>
</div>/*#
#desc: shortcut remove clothes for morning inspection, phase 2
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<set _catsuit = "">>
<<if setup.checkItemTypeTag('bodysuit', ['latex'])>>
<<set _catsuit = setup.getItemFromType('bodysuit')>>
<</if>>
<<removeEverythingButUnderwear>>
<<if _catsuit>>
<<wearItem _catsuit true>>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn("cage")>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_2_2">>
<<initRoom>>
<<if $player.body.penissize[1] <= 1 && !setup.getItemObj($npc_manager.flags.lastCage).tags.includes("secure") || !$player.body_ref.penis>>
<<moveTo "event_manager_daily_check_forgot_cage_flat">>
<<else>>
<<moveTo "event_manager_daily_check_forgot_cage">>
<</if>>
<</if>>
<<set $scene.manual = false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As usual you take off your clothes and nicely fold them on the floor so as to present yourself to <<=setup.getNpcName('npc_manager', 'formal')>> wearing only your undergarments.<br>
<br>
<<if $player.body_ref.penis && ($player.body.penissize[1] <= 1 || $npc_manager.flags.penis_shrinking.shrink_event_ready) && !$npc_manager.flags.penis_shrinking.first_secure_comment && $fetish.chastity_penis>>
[<<moveTo "event_morning_inspection_shrink_cage_1" "Continue." 30 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_2_2'>>">>]
<<elseif $npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none'>>
[<<moveTo "event_morning_inspection_shrink_1" "Continue." 30 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_2_2'>>">>]
<<elseif $scene.milkEvent && !$scene.first_milk>>
Her gaze narrows at the sight of the wet spots over your nipples. "@@.npc_manager;What is that? Take off your top.@@" She commands.<br>
<br>
[<<moveTo "event_morning_inspection_milk_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_2_2'>>">>]
<<elseif $scene.leakEvent>>
[<<moveTo "event_secretary_style_penis_milking_strict_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_2_2'>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_2_2" "Continue." 30>>]
<</if>>
</div>/*#
#desc: phase 2 morning inspection, assessment, and punishment
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.manual>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<</if>>
<<if $scene.underwearStype == "male">>
<<applyExperience 'bimbofication' 5 'normal' $SEEN_FRIEND>>
<</if>>
<<if $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn("cage")>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_2_1">>
<</if>>
<<set $scene.fixMakeupIfWrong = true>>
<<include "inspectionData_makeup">>
<<include "inspectionData_missingUnderwear">>
<<if $scene.badMakeup>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.permanent = 'sissy_doll'>>
<<setThreshold 'feminization' 'dress_code' 'sissy_doll_fem'>>
<<set $player.makeup.template = ''>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<if $scene.bonus_gift == "voluntary_female">>
/% something in the morning chained, just handle it tomorrow %/
<<set $scene.bonus_gift = "">>
<</if>>
<</if>>
<<if setup.checkPlayerDressed() && setup.checkOutsideDecency()>>
<<if !($scene.formal=='casual' && ($npc_manager.stagevalues[2].appeared_casual==1))>>
<<initRoom>>
<<moveTo 'event_manager_daily_check_stage_2_finalize'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.firstAdvCage>>
Her attention fixates on your new chastity device.<br>
<br>
"@@.npc_manager;What is this?@@" She asks with a hint of wonder. "@@.npc_manager;I know you are required to be in chastity, but this... this is one of the more advanced and secure devices I have ever seen! Needless to say, I approve. Now, <<if $npc_manager.flags.playerstayedinchastity>>if you would kindly hand over the key to this new device?<<else>>please hand over the key per my previous instructions.<</if>>@@"<br>
<br>
[<<moveTo "event_morning_inspection_first_advanced" "Explain the situation." 30 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_2_2'>><<set $scene.firstAdvCage=false>>">>]
<<else>>
"@@.npc_manager;Let us have a closer look at you, shall we, <<=$player.first_name>>?@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> moves closer to you, adjusting her glasses.<br>
<br>
<<include inspectionText_underwear>>
<<if !$scene.secondtry || !setup.checkItemTypeWorn("cage")>>
<<include inspectionText_chastity>>
<</if>>
<<include inspectionText_cleanClothes>>
<<if $scene.seriousoffense && $scene.forced_gift == "">>
<<if $scene.unclean>>
<<=setup.getNpcName('npc_manager', 'formal')>> wrinkles her nose and shakes her head.<br>
<br>
<<if $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat")>>
<<if $npc_manager.criticalanger>=5>>
She sighs. "@@.npc_manager;Well, it looks like this is it — you have used up your final chance and, after two tries this morning! Have proven yourself unfit to be continued to be employed as a <<if $fetish.sissy>>SISSI <</if>>Secretary. She smirks as her eyes drifts to your hips. I am sorry to see you go, but at least I will be able to console myself a little in enjoying watching you leave. Good bye <<=$player.first_name>>.@@"<br>
<br>
You try to bargain with her, but there is no point. You gather your things and head for the door only for her to surprisingly stop you. "@@.npc_manager;Sorry, but policy states that you must be escorted out by a member of our security team.@@"<br>
<br>
A moment later and
<<if $npc_retention.stage > 0>>
<<=setup.getNpcName('npc_retention', 'formal')>> appears in the doorway looking all-business.
<<else>>
a stern looking <<man npc_retention>> in a quasi-police style uniform appears in the doorway.
<</if>>
"@@.npc_retention;You called for an ejection?@@" <<He npc_retention>> states formally as <<he npc_retention>> passes your now ex-<<=setup.getNpcName('npc_manager', 'formal')>> some paperwork to sign.<br>
<br>
Signing it she hands it back before walking over to you, cupping your chin with one hand and looking into your face as if she's trying to take a mental picture. "@@.npc_manager;Goodbye, my dear... until we meet again.@@"<br>
<br>
[<<moveTo "game_over_stage_2_fail" "Continue." 60>>]
<<else>>
"@@.npc_manager;Zip it, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. We already had this discussion and yet you have utterly failed to address things to my satisfaction. You may return home for the remainder of the day — I advise you to spend it considering your future. I consider this to be your <<printNumber $npc_manager.criticalanger>> offense. Five of those and your time here under my employee will be at a permanent end.@@"
<br><br>
[<<moveTo "event_manager_daily_check_stage_2_home_second" "Leave." 60 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<<else>>
"@@.npc_manager;No, no. You must remember that you work in a representative position. DOING the work is only part of the equation, doing it in the proper manner, and looking right in the process... well, that is easily as important as mere end-of-day results. Thus I am afraid I must send you home. I will expect you back within the hour with you having sorted out these... problems.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_home_first" "Leave." 60 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> sighs.<br>
<br>
"@@.npc_manager;Proper underwear was literally the first requirement I gave you and here you stand before me...@@" She shakes her head. "@@.npc_manager;Take them off, I will NOT have you running around all day harboring such concealed shame. Who knows what long-term damage has been incurred just by you wearing them this long?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_wrong_underwear" "Remove your underthings." 360>>]
<</if>>
<<else>>
<<if $scene.stayed_in_chastity>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<if $npc_manager.flags.good_girl.stayed_in_chastity_voluntarily==1>>
At first you think she's baring her fangs at you, and you instinctively try to take cover, but then you realise it's her attempt at a gleeful girlish grin.<br>
<<else>>
You think once more that she is very happy about something, as <<=setup.getNpcName('npc_manager', 'formal')>> beams at you with almost girlish glee.<br>
<</if>>
<br>
<<if $npc_manager.flags.good_girl.stayed_in_chastity_voluntarily==1>>
"@@.npc_manager;Oh, <<=$player.first_name>>, my dear, dear <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. You have stayed in chastity, even though you could have your key back any time. I think this is the moment where my heart would burst with joy, if I had one!@@"<br>
<br>
<<printThought "Wait, what?">><br>
<br>
"@@.npc_manager;Anyway...@@"
<<else>>
"@@.npc_manager;Oh, <<=$player.first_name>>, again, you have proven to be worthy of the title "<<if $fetish.sissy>>SISSI <</if>>Secretary," by staying in chastity for the
<<switch $npc_manager.flags.good_girl.stayed_in_chastity_voluntarily>>
<<case 2>>
second time.
<<case 3>>
third time. Third time's a charm.
<<case 4>>
fourth time. We are finally getting there!
<<case 5>>
fifth time. I am so proud of you!
<<default>>
well... to be honest, I have lost count. Perfection.
<</switch>>
Anyway...@@"
<</if>>
<br><br>
"@@.npc_manager;I expect further such exemplary behaviour from now on.@@"
<<else>>
<<if $player.sec_style.submission.permanent_key>>
"@@.npc_manager;I know you gave up your key for good, and thus I obviously expect you to be locked... and yet each time I see such loveliness cannot help but bring a smile to my face! Good girl.@@"
<<else>>
"@@.npc_manager;Locked in chastity! Though... I should hardly expect anything else, given that you have shown yourself not to be trusted with the key...@@"
<</if>>
<</if>>
<br><br>
<</if>>
<<if $scene.badMakeup>>
<<=setup.getNpcName("npc_manager","formal")>> produces a face-mask. "@@.npc_manager;How could you have forgotten proper makeup? You know how much more lovely it makes your already cute face!@@"<br>
<br>
Before you can object she has placed the mask over your face. A few seconds of tingly warmth is all it takes and she pulls it away to leave you with perfectly cute <<if $fetish.sissy>>sissy <</if>>doll makeup.
<<elseif !$scene.first_makeup && $npc_manager.stagevalues[2].makeup>>
<<include inspectionText_makeup>>
<<elseif !$npc_manager.stagevalues[2].makeup && $scene.makeup == "nomakeupmakeup" && $now.getUTCDay() == 5>>
She nods towards your face.
<<if $player.makeup.messed > 25>>
"@@.npc_manager;Oh, do not think I missed that you are wearing makeup. A bit light, but I guess you are easing into it. That said... you really should keep it in better shape, your face is <<if $player.makeup.messed > 50>>an utter<<else>>something of a<</if>> mess!@@"
<<else>>
"@@.npc_manager;Oh, do not think I missed that you are wearing makeup. A bit light, but I guess you are easing into it. At least you kept everything in good condition.@@"
<</if>>
<<elseif $scene.makeup != "" && $scene.makeup != "nomakeupmakeup">>
You were almost surprised she hadn't commented as to your wearing makeup, but as her eyes alight upon your face you know instantly that she has not only noticed it, but has formed an opinion.<br>
<br>
<<if $player.makeup.messed >= 75>>
"@@.npc_manager;I will be honest — your makeup is such a mess I can hardly make heads or tails of it. That said, if you are willing to do this I think it is high time that you start wearing PROPER makeup to work. That means fully feminine and unblemished... and I would recommend you spend some time touching up your current mess at the soonest opportunity, I will be checking in after lunch, I do hope you manage to fix things.@@"
<<else>>
<<switch $scene.makeup>>
<<case "normalmakeup" "expertmakeup" "moviestar" "sissy_doll" "camgirl" "egirl" "qtpie">>
"@@.npc_manager;I love your choice of style. In fact I am adding it to your requirements right now — you should show up to work every morning wearing properly feminine makeup to better enhance your appearance. <<if $player.makeup.messed > 25>>That said... you also need to focus on maintenance. The prettiest styling in the world means nothing if it is <<if $player.makeup.messed > 50>>ruined<<else>>smudged<</if>>.<<else>>Excellent job keeping things maintained, that is key, even more than the original application.<</if>>@@"
<<case "nomakeupmakeup">>
<<if $npc_manager.stagevalues[2].makeup>>
"@@.npc_manager;Oh, and do not think I missed that you are wearing makeup. A bit light... too light, really. Going forward I want you to wear proper makeup — that means fully feminine to better highlight your natural beauty. Oh, and when I say going forward... I recommend you spend some time at lunch getting yourself into proper shape, I do hope you know a more flattering style... <<if $player.makeup.messed > 25>>Oh, and focus on maintenance! The no-makeup style does not work if it starts to smear and run!<</if>>@@"
<<else>>
<</if>>
<<case "ultimatebimbo">>
"@@.npc_manager;Oh, and that makeup... while I congratulate the effort I want a good <<if $fetish.sissy>>SISSI <</if>>Secretary, not a painted whore, perhaps a different style would suit you better? That said, if you are willing to do THIS to yourself well... consider PROPER feminine makeup to be part of your dress-code requirements going forward. <<if $player.makeup.messed > 25>>And if that was not enough... well, your obvious lack of maintenance means you do not just look like a bimbo slut, but a <<if $player.makeup.messed > 50>>totally ruined<<else>>messy<</if>> bimbo slut. I want your makeup to be in near-perfect condition at all times.<<else>>I suppose I could give partial credit for you keeping everything neat and maintained, but that style...<</if>>@@"
<<default>>
ERROR unknown makeup.template: <<=$scene.makeup>>
<</switch>>
<</if>>
<</if>>
<<if $scene.forced_gift != ''>>
<<switch $scene.forced_gift>>
<<case 'forced_pink_uniform'>>
You are about to start putting your clothes back on when you are suddenly interrupted.<br>
<br>
"@@.npc_manager;Tsk, Tsk, Tsk. <<=$player.first_name>> you ditz, did I tell you to put your clothes back on?
<<if $scene.score>3>>
Well, maybe I did, but that was the past, this is now, and we still have an certain issue to resolve, don't we?
<<else>>
I did not think so.
<</if>>
We still have to discuss your insubordination this morning. Well, less of a discussion and my dictating commands that you will then follow to the letter, yes?@@"<br>
<br>
You nod, intimidated.<br>
<br>
"@@.npc_manager;Good!@@" She continues, while walking towards a cupboard in the back of her office. Retrieving a shiny pink bag that looks to be from some sort of fancy fashion shops she hands it to you with a smile.<br>
<br>
"@@.npc_manager;Here, you go, take it.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_1" "Take the bag." 360>>]
<<case 'adv_chastity_key'>>
As you start to dress, she pauses you.<br>
<br>
"@@.npc_manager;Ah, ah, I believe we have a bit of a celebration to make first.@@"<br>
<br>
You look up at her confused, and more than a touch worried.<br>
<br>
[<<moveTo "event_work_adv_key" "Continue." 60>>]
<<case "forced_unisex">>
She takes a final look over your outfit and frowns. "@@.npc_manager;No... this will not do. I had thought <<if $player.sec_style.submission.chastity != "">>locking you away<<else>>dampening your toxic hormones<</if>> would help give you the clarity of focus to understand that, to be a successful <<if $fetish.sissy>>SISSI <</if>>Secretary you need to cast off that distracting masculine mien, but it would appear that you are a bit, shall we say... dense.@@"<br>
<br>
[<<moveTo "event_work_forced_unisex_1" "Continue." 60>>]
<<case "facialhair">>
<<=setup.getNpcName("npc_manager","formal")>> eyes narrows as she looks at your chin. "@@.npc_manager;Is that... stubble? No, no, no. You work in a representative position, how can you defile your lovely face with such un-representative, ugliness? A <<if $fetish.sissy>>SISSI <</if>>Secretary should be smooth and beautiful not... rough.@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_2_2">>
[<<moveTo "event_secretary_style_facial_hair_1" "Apologise for forgetting to shave." 60 "<<set $scene.beard=false>>">>]<br>
[<<moveTo "event_secretary_style_facial_hair_1" "Actually, you were thinking of growing a beard." 60 "<<set $scene.beard=true>>">>]
<<case "breasts">>
<<=setup.getNpcName("npc_manager","formal")>> shakes her head as she digs into her drawer for something. "@@.npc_manager;Very disappointing. I believe I was QUITE clear as to your requirements — feminine underwear, which means panties, stockings and, of course, a bra.@@"<br>
<br>
As she speaks she places what you think is another bra... but then realise is actually a pair of falsies. Very LARGE falsies.<br>
<br>
"@@.npc_manager;There. Those should help remind you why you need to be wearing a bra, hmm?@@"<br>
<br>
[<<moveTo "event_secretary_style_breasts_forced_1" "Put the falsies on." 60>>]<br>
[<<moveTo "event_secretary_style_breasts_money_1" "If she wants you to have breasts so badly... why doesn't she pay for you to get a real pair?" 60>>]
<<default>>
ERROR: unknown forced_gift: <<=$scene.forced_gift>>
<</switch>>
<<elseif !$scene.taskComplete>>
<<if ($currentTasks.hasOwnProperty("manager_morning_inspection_task") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition != 1 || $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && $currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task_repeat.trigger.pinkPill.condition != 1)>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_2_finalize">>
<<include "inspectionText_drugs">>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> appears puzzled by your behaviour, since you followed some instructions and ignored others.<br>
<br>
"@@.npc_manager;Look <<=$player.first_name>>, your inability to follow my simple rules forces me to provide some immediate and firm correction to steer your performance in a more satisfactory direction,@@" she says while opening her drawer, taking out a big pink leather paddle with the words "for <<if $fetish.sissy>>SISSI <</if>>Secretary use only" embossed into either side in flowing cursive. "@@.npc_manager;Bend. Over.@@"<br>
<br>
You do as you're told and bend over the desk like you have become accustomed.<br>
<br>
"@@.npc_manager_dom;Do!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Every!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Single!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Task!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;You!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Stupid!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;<<if $fetish.sissy>>SISSI<<else>>Girl<</if>>!@@"<br>
<br>
*SMACK*<br>
<br>
"@@.npc_manager_dom;Ditz!@@"<br>
<br>
*SMACK*<br>
<br>
Leaving you gasping and your ass stinging, she puts the paddle back into the drawer.<br>
<br>
"@@.npc_manager;Now, does that help remind you of your duties? From now on follow the tasks to the letter, do you understand me, <<=$player.first_name>>? Now, would you please put your clothes back on, it distracts me to see your bright and rosy cute butt glowing in agony.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_4_dress" "Continue." 360>>]
<</if>>
<<elseif $scene.bonus_gift != ''>>
<<switch $scene.bonus_gift>>
<<case 'female_upgrade'>>
<<switch $scene.gender>>
<<case 'unisex'>>
She nods for you to get dressed only to stare at you as if in mild puzzlement.<br>
<br>
"@@.npc_manager;Hmm, no, I am sorry. After seeing you in a dress I do not think I can go back.@@"<br>
<br>
You gulp, already knowing what she is about to say and yet still nervous as she speaks the words.<br>
<br>
"@@.npc_manager;From now on I expect you to come to work dressed fully feminine. That means head to toe female clothes, female underwear, female shoes... all of it. I know you were just getting accustomed to this more... unisex style, but it just is not enough. Not for your lovely body, and not for my needs in a... <<if $fetish.sissy>>SISSI <</if>>Secretary. Now the dress is a bit... formal for the office so I recommend you find something else but, well... you are a clever girl, I have confidence in you.@@"
<<case 'female'>>
She nods for you to get dressed as she stares and smiles you look back up with a questioning expression on your face.<br>
<br>
"@@.npc_manager;Oh, do not mind me, just remembering how lovely you looked in a dress the other night... yes, I can see from your choice of garments that you must have come to a similar conclusion, but let us make it official: henceforth your uniform is to be completely feminine in every way. Female clothes, female underthings, female shoes... oh you are truly a delight. Representative just as one in your position should be.@@"
<<default>>
ERROR: unexpected scene.bonus_gift <<=$scene.bonus_gift>>
<</switch>>
<br><br>
<<if ($currentTasks.hasOwnProperty("manager_morning_inspection_task") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition != 1 || $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && $currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task_repeat.trigger.pinkPill.condition != 1)>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_2_finalize">>
<<include "inspectionText_drugs">>
<<else>>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Finish dressing and return to work." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<<case 'sissy_underwear'>>
Thinking, that morning inspection is finally over, you start getting dressed, only for <<=setup.getNpcName('npc_manager', 'formal')>> to stop you.<br>
<br>
"@@.npc_manager;...Wait a moment, I told you when you left the key with me that there would be something in it for you...@@"<br>
<br>
She steps back, her eyes tracing over, no DEVOURING your body, her pupils tracing lines all over it, as if she's having a very vivid dream or vision. Her glasses in hand she nibbles one end thoughtfully as a smile of content approval spreads across her face. Her gaze finally rises to meet your own and she slowly nods.<br>
<br>
"@@.npc_manager;Yes... I think you are ready.@@"<br>
<br>
<<printThought "Ready for what?">>, you think, but you remain obediently silent as she opens a drawer in her desk and pulls out a pink box, delicately handing it to you, the pleased smile remaining on her face throughout.<br>
<br>
[<<moveTo "event_manager_good_girl_sissy_panties" "Accept her gift." 360 "<<set $scene.afterWork = false>>">>]
<<case 'sissy_underwear_nochastity'>>
Thinking, that morning inspection is finally over, you start getting dressed, only for <<=setup.getNpcName('npc_manager', 'formal')>> to stop you.<br>
<br>
"@@.npc_manager;...Wait a moment, I you have been making such progress of late... I have a little present for you.@@"<br>
<br>
She steps back, her eyes tracing over, no DEVOURING your body, her pupils tracing lines all over it, as if she's having a very vivid dream or vision. Her glasses in hand she nibbles one end thoughtfully as a smile of content approval spreads across her face. Her gaze finally rises to meet your own and she slowly nods.<br>
<br>
"@@.npc_manager;Yes... I think you are ready.@@"<br>
<br>
<<printThought "Ready for what?">>, you think, but you remain obediently silent as she opens a drawer in her desk and pulls out a pink box, delicately handing it to you, the pleased smile remaining on her face throughout.<br>
<br>
[<<moveTo "event_manager_good_girl_sissy_panties" "Accept her gift." 360 "<<set $scene.afterWork = false>>">>]
<<case 'good_girl_pink_uniform'>>
After finishing the inspection of your underwear, just before you get dressed <<=setup.getNpcName('npc_manager', 'formal')>> stops you with a glance. It isn't aggressive more... intrigued? You stand there and look back as she seems to be... dressing you with her eyes.<br>
<br>
"@@.npc_manager;Mmmm, yes.@@" She finally says. "@@.npc_manager;As nice as you look in your normal outfit I think you deserve something better, something custom and perfect and just for you rather than mere off-the-shelf attire.@@"<br>
<br>
Walking to a cabinet at the back of her office, she flashes a winking glance over her shoulder before opening the cabinet to retrieve a shiny pink bag. Though you do not recognise the logo on the side you judge it to be from some sort of fancy fashion shop. Walking back she hands it to you with a smile.<br>
<br>
[<<moveTo "event_manager_good_girl_pink_outfit_1" "Look in the bag.">>]
<<case 'good_girl_name_change'>>
You are about to start putting your clothes back on when you are suddenly interrupted.<br>
<br>
"@@.npc_manager;Come to think of it, there is one more thing I would love to discuss with you, now, that we've finally come this far. Why don't you take a seat, while I get some documents ready, and then we'll talk about your future.
<<if $scene.score>3>>
You did well today, as anticipated, so you earned it.
<<else>>
Even though your efforts today were kind of lacklustre, you have been showing steady improvement overall, so you earned it.
<</if>>
@@"<br>
<br>
It's not the first time to catch her in such a good mood, but you are still surprised to see her this relaxed, which is normally only during your, for your taste way too infrequent, after work activities.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_good_girl_namechange_1" "Sit down like a good girl." 180>>]
<<case 'makeup_pink_secretary' 'makeup_nomakeup' 'makeup_fallthrough'>>
<<=setup.getNpcName('npc_manager', 'formal')>> is still staring at you as you reach for your clothes and you hesitate, but, when she fails to verbalise any more notes you just resume putting your clothes back on while trying not to be distracted by her gaze.<br>
<br>
[<<moveTo "event_makeup_0" "Finish dressing." 180 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<case 'breasts'>>
<<=setup.getNpcName('npc_manager', 'formal')>> eyes run up and down your body and she smiles. "@@.npc_manager;Mmm, that corset is doing WONDERS for your figure only...@@".<br>
<br>
[<<moveTo "event_secretary_style_breasts_work_1" "Only... what?" 180 '<<set $scene.inspectionReturn="event_manager_daily_check_stage_2_finalize">>'>>]
<<default>>
ERROR: unexpected bonus gift: <<=$scene.bonus_gift>>
<</switch>>
<<else>>
<<if $scene.happy>>
You see a clear smile on her lips. Not a brief, fleeting twitch, but a long, sincere one.<br>
<br>
"@@.npc_manager;Well, well, you are really starting to get the gist of these tasks. Very good!@@"<br>
<br>
<<if ($npc_manager.affection+$npc_manager.affection) > $npc_manager.anger>>
"@@.npc_manager;I think you are almost getting too good at this. If you keep this up, I may have to give you some... extra one on one time. Some tips, maybe a little punishment... mmm, definitely some punishment. Maybe something overnight... if I ever had a night off.@@" Despite the implied threat she smiles the whole time, and then you get a playful slap on your well cushioned backside and understand the implications,
<<else>>
"@@.npc_manager;Keep this up, and I might even be able to overlook some of your past mistakes.@@"
<</if>>
<<if $scene.forgot_cage_key && $npc_manager.flags.trustplayerwithkey>>
<br><br>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
<<if $player.sec_style.submission.chastity == "money">>
"@@.npc_manager;Normally I would punish you for not bringing the key in for me but... of course you have that trial thing. I surmise we are both counting the days now until it, and thus you, can be rightfully placed under my protective possession.@@"<br>
<br>
<<printThought "I thought I was just going to make a quick buck... she'll let me out, right?">>
<<elseif !$npc_manager.flags.knowAdvanced>>
She asks for the key to your chastity and you awkwardly explain that you do not have it, quickly showing off your "new" chastity device as you explain the terms of the trial that you signed up for.<br>
<br>
She purses her lips in thought. "@@.npc_manager;Hmm, you present me with an interesting situation. In strict terms you have failed to do as required and bring the key to whatever chastity device you are wearing to work with you, but on the other hand your initiative well... while I would prefer to remain in control of your chastity myself this adventurous seeking to better yourself is quite a promising sign...@@" You bite your lip nervously as you await her judgement.<br>
<br>
"@@.npc_manager;At the end of the day rules are rules so, while I will apologise for this being a rather strict interpretation, I am afraid that I am going to have to hold your lack of key against you. Though I will take into account the chastity trial going forward. Until you finish the trial I will count you being on such sufficient to count towards your bringing the key to work, and I will also be counting the days now until the end of your trial when the key, and thus you, can be rightfully placed back under my protective possession.@@"<br>
<br>
<<printThought "I thought I was just going to make a quick buck... now I'm in trouble?">>
<<else>>
"@@.npc_manager;Still locked up for that trial? I suppose that is good... but rules ARE rules, and you not having the key, well... a bit of punishment should keep you focused on reaching the end of your little trial, mmm? Oh, I am looking forward to its end, when I may take a more... personal hand in your security.@@"<br>
<br>
You shiver slightly at her words as she continues on.
<</if>>
<<else>>
<<if $npc_manager.flags.playerstayedinchastity>>
Her smile turns to an smirk in an instant she makes a show of playing with the key dangling from her necklace<<if $npc_manager.flags.trustplayerwithkey>> before gently dropping it in the dish at the edge of your desk<</if>>.
<<else>>
"@@.npc_manager;While it does not technically affect things in a physical sense, do endeavour to bring your key to work in the future. I believe the mental discipline entwined with such acts will be very good for you. If you continue to "forget" your key, I may just switch your lock and keep the key for myself, permanently.@@"<br>
<br>
"@@.npc_manager;Please refrain from any key or lock related shenanigans in the future. There is little point as I ensure you I have more resources to exchange these locks then you have places to hide them. But if you keep rebelling in this way I may be forced to adjust your chastity arrangements into a more permanent solution.@@"
<</if>>
<</if>>
<br><br>
<</if>>
<<if setup.getTotalValue('feminization')>=6>>
"@@.npc_manager;Now, would you please put your clothes back on. Truly, I would not mind if you worked like this, but I am afraid the <<if !$options.fem>>heterosexual male <</if>>staff of the company might be distracted<<if $player.identify_as == "male" && $player.body_ref.penis>>, some even forced to question their sexuality, once they realised you were male.<</if>>@@"<<if $player.identify_as == "male">> She admits, but follows up way too fast with, "@@.npc_manager;That is of course if they even realised that you are male. I doubt most would be able to tell.@@"<</if>>
<<else>>
"@@.npc_manager;Now, would you please put your clothes back on. Truly, I would not mind if you worked like this, but I am afraid the <<if !$options.fem>>heterosexual male <</if>>staff of the company might be distracted<<if $player.identify_as == "male" && $player.body_ref.penis>>, some even forced to question their sexuality, once they realised you were male<</if>>.@@"
<</if>>
<<else>>
You see a hint of a smile play across her lips.<br>
<br>
"@@.npc_manager;Very good. You are really starting to get the hang of these tasks.
<<if ($npc_manager.affection+$npc_manager.affection) > $npc_manager.anger>>
Keep this up and I can promise you a distinguished career here at Social Interaction Service Syndicate Inc.
<<else>>
Keep this up, and I might be able to overlook some of your past mistakes.
<</if>>
@@"<br>
<br>
<<if $scene.forgot_cage_key && $npc_manager.flags.trustplayerwithkey>>
<<if $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
"@@.npc_manager;Normally I would punish you for not bringing the key in for me but... of course you have that trial thing. I surmise we are both counting the days now until it, and thus you, can be rightfully placed under my protective possession.@@"<br>
<br>
<<printThought "I thought I was just going to make a quick buck... she'll let me out, right?">>
<<else>>
<<if $npc_manager.flags.playerstayedinchastity>>
Of course she isn't done with you yet. A smirk adorns her face as she makes a show of playing with the key dangling from her necklace<<if $npc_manager.flags.trustplayerwithkey>> before gently dropping it in the dish at the edge of your desk<</if>>.
<<else>>
"@@.npc_manager;While it does not technically affect things in a physical sense, do endeavour to bring your key to work in the future. I believe the mental discipline entwined with such acts will be very good for you. If you continue to "forget" your key, I may just switch your lock and keep the key for myself, permanently.@@"
<</if>>
<br><br>
"@@.npc_manager;Please refrain from any key or lock related shenanigans in the future. There is little point as I ensure you I have more resources to exchange these locks then you have places to hide them. But if you keep rebelling in this way I may be forced to adjust you chastity arrangements into a more permanent solution.@@"
<</if>>
<br><br>
<</if>>
"@@.npc_manager;Now, would you please put your clothes back on and continue with your work.@@"
<</if>>
<br><br>
<<if ($currentTasks.hasOwnProperty("manager_morning_inspection_task") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition != 1 || $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && $currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task_repeat.trigger.pinkPill.condition != 1)>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_2_finalize">>
<<include "inspectionText_drugs">>
<<else>>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Put your clothes back on and return to work." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: recive name change during good girl path
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.body.name>>
<<set $player.sec_style.body.name = "obedient">>
<<if $npc_manager.stage >= 2>>
<<addWorkEvent 'cunnilingus_intro'>>
<</if>>
<<if !$player.sec_style.body.identify_fem>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 9, 0, false)>>
<<addWorkEvent "identity_work" _nextDate>>
<</if>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<removeEvent 'insurance_alt'>>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<<forceNpcTheme 'npc_admin' 'event_admin_theme_female_name'>>
<<if setup.checkNpcTheme('npc_admin','event_admin_theme_female_clothes')>>
<<forceNpcTheme 'npc_admin' 'event_admin_theme_female_clothes'>>
<</if>>
<<set $npc_admin.flags.rare_meeting.code_red = true>>
<<set $npc_admin.flags.rare_meeting.code_red_date = $now>>
<<set $npc_admin.flags.rare_meeting.code_red_reason = "feminization">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> takes a seat at the edge of the table right in front of you. As you sit down on the comfortable chair in front of the office table, your thoughts start to drift off. You remember that it has not been that long since you were spanked for the first time. Right here, on this very desk. As part of your "mandatory" disciplinary measure. Since then you've gone through a lot of changes,
<<if $player.flags.atesissypill || $player.flags.atebimbocandy || $player.body.breastsize[0] > 0>>
both physical and mental.
<<else>>
mostly mental.
<</if>>
<<if setup.checkItemTypeWorn("cage")>>
You came to terms with you wearing a chastity device.
<</if>>
<<if $player.sec_style.body.tblock>>
You went on testosterone blockers.
<</if>>
<<if $player.flags.masturbation.plug>>
You plugged up your <<getWordAnus false>> for the first time.
<</if>>
<<if ($player.flags.gloryhole.handjob + $player.flags.gloryhole.blowjob) > 0>>
You handled your fair share of cocks.
<<if $player.flags.gloryhole.blowjob > 0>>
Licking along these yummy meatsicles until they blow their load in your mouth.
<</if>>
<<if $player.flags.gloryhole.swallowpiss > 0>>
Swallowing their hot, nasty piss down your toilet whore throat.
<</if>>
<</if>>
Was that all <<=ps(setup.getNpcName('npc_manager', 'formal'))>> influence, who is once again looking down at you from her elevated position, or was it, even though you'd never admit it... always inside you, this other side. Filled with sexual needs and hunger and lust. Lust, to please others. Like...<br>
<br>
<<printThought "... the good little <<if $fetish.sissy>>sissy<<else>>girl<</if>> I am... wait, what was I thinking">><br>
<br>
You snap back into reality, as you realise the heartfelt grin beaming down from your manager.<br>
<br>
"@@.npc_manager;Well, I have to say I am more than impressed by the progress you made lately with your... personal development. You followed most of my rules, and it seems like this role comes naturally to you. I have to admit, I had my momentary doubts at first, but you seem such an eager <<if $fetish.sissy>>SISSI<<else>>girl<</if>> all the time, eager to prove themself. And you did well, my dear <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, you did well indeed.@@"<br>
<br>
During her speech, she raises her hand and points it towards your face. Unsure what is about to happen you think about backing away, but before you can react, you receive an affectionate boop on your nose.<br>
<br>
<<if setup.getTotalValue("submission") < 7>>
<<printThought "So... I am her pet now? Go figure...">>
<<else>>
<<printThought "So... I am her pet now? Oh well...">>
<</if>>
<br><br>
"@@.npc_manager;Do not act so scared. Anyway, I think it is time to go one step further. You are very feminine on the inside and outside. Only a small stain remains, and I am not talking about the stains you have to wash off your panties every night, you naughty little thing. You know what I am talking about, right <<=$player.first_name>>?@@"<br>
<br>
<<if setup.getTotalValue("smart") > setup.getTotalValue("bimbofication")>>
You think for a moment, but the obvious emphasis on your name during that last sentence was a dead giveaway. You nod and answer accordingly.<br>
<br>
"@@.npc_manager;Very good. Such a smart <<if $fetish.sissy>>SISSI <</if>>Secretary. Your name is a dirty, masculine stain on your almost perfect <<if $fetish.sissy>>SISSI<<else>>girl<</if>> record sheet. That is something we need to address as soon as possible. Anyway...@@"<br>
<<else>>
You try to strain that grey matter of yours, but your current lifestyle seems to have taken its toll on your thinking abilities. You try to focus, but in the end just stare blankly at <<=setup.getNpcName('npc_manager', 'formal')>>. She reacts with a sad sigh.<br>
<br>
"@@.npc_manager;Sometimes I am not sure if you play the part of the Bimbo, or if your brain is already that far gone. Your name you ditz, your name. Your name still reeks of ill-advised masculinity, which is simply not present in your current state. That is something we need to address as soon as possible. Anyway...@@"<br>
<</if>>
<br>
She hands you a datapad with some sort of legal document on it. A lot of small finished text, as usual in the company typical legalese.
<<if setup.getTotalValue("submission")> 10>>
Thanks to your newly acquired fast reading techniques and understanding of the local laws it takes you only a few seconds to figure out that this is a legally binding document for a name change.<br>
<br>
"@@.pc;I get to change my name?@@" You whisper.<br>
<br>
<<printThought "Wait... get to? This is a privilege?">><br>
<br>
"@@.npc_manager;Yes you do! Just punch in a new name in the field at the top, then a final signature with your old name at the bottom and it will be done. A new name fitting your new lifestyle. So go ahead, choose your new name!@@"
<<else>>
You have no idea what the text is about.<br>
<br>
"@@.npc_manager;This is a name change form. You enter your new name on the field over there and sign with your original name at the bottom and it is done. A new name fitting your new lifestyle. So go ahead, choose your new name!@@"
<</if>>
<br><br>
You think for a moment to protest or simply decline, but somehow you know she's right. Everything has somehow lead you to this moment. You hesitantly accept the datapad.<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
</div>/*#
#desc: PC makes oral love to the manager
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.virgin.cunnilingus>>
<<if $scene.first>>
<<set $player.sec_style.sex.cunnilingus = "obedient">>
<<set $player.virgin.cunnilingus = 'npc_manager'>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_cunnilingus'
0
'theme_church_confession_cunnilingus'
true
>>
<</if>>
<<if setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_7') == -1>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_7'
7
'event_psychiatrist_theme_good_girl_oral_manager_1'
true
>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You don't know how you moved from the chair to be kneeling on the floor, but it feels right. From your new-found position on your knees, you stare up at your mana- at your <<=setup.getNpcName('npc_manager', 'title')>>. Her deific smile directed down at you makes even that honourific seem inadequate to describe the gulf of power between you, and the degree of devotion that should flow from you to her.<br>
<br>
As if in a trance, you watch as she leans against the edge of the desk and spreads her legs. It is as if the gates of heaven are opening for you, and she, its most beautiful of angel, nods for you to approach.<br>
<br>
In the midst of a sea of overwhelming thoughts and emotions that you are only barely coping with, a strange dichotomy floats to the surface. On the one hand, you find yourself regretting yet again your failure to ever do anything with <<=setup.getNpcName('npc_exgirlfriend', 'first')>> before the two of you broke up, what if you do a bad job? Failing your <<=setup.getNpcName('npc_manager', 'title')>> in this, of all things, it would be a sin of the highest order!<br>
<br>
<<if $scene.first>>
On the other hand is the fact that you cannot help, but feel blessed that your first time will be with <<=setup.getNpcName('npc_manager', 'formal')>>. Even if you had been with another woman how could it possibly compare to the divine Goddess that looms before you?<br>
<br>
<</if>>
Perhaps sensing your tumultuous thoughts, she reaches out to gently guide your head forward. Diving face-first your lips meet hers as she lets out a sigh.<br>
<br>
"@@.npc_manager;Mmm... let's see if linguistic cunning is amongst your skills...@@"<br>
<br>
You aren't sure, really, what to do, but her taste, strong, a little salty, a little sweet and oh-so-feminine encourages you to lick ravenously. A gentle moan would seem to indicate her approval.<br>
<br>
"@@.npc_manager;Such enthusiasm, but chaotic... in need of guidance... I suppose that describes you overall though, doesn't it?@@"<br>
<br>
You blush, continuing to lick as you wait, and hope for her to tell you what to do.<br>
<br>
"@@.npc_manager;Exploring all my sensitive folds and depths is all well and good, and I will be sure to have you spend much time in the future between my legs doing just that, but if you want to really get me off you should focus your attentions on that little bead in the middle. That is my clit and pleasing it should be your number two goal in life after pleasing me... ohhh!@@"<br>
<br>
Her measured speech suddenly slips into a quick gasp as you shift your attention to match her instructions, planting your lips around her clit and sucking it into your mouth that your tongue can shower it with affection.<br>
<br>
"@@.npc_manager;Oh yes! Just like that, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>! Oh, I am getting close!@@"<br>
<br>
Your heart races as her hold on your head tightens, she grinds against your face as you do your best to continue licking and sucking.<br>
<br>
"@@.npc_manager;Oh, <<=$player.first_name>>!@@" She cries out in pleasure, tensing and pulling so tight that, for a moment, you lose the ability to breathe.<br>
<br>
Letting out a slow sigh, she relaxes her hold, pulling your face away from you with one hand in your hair and tilting you up to look at her.<br>
<br>
"@@.npc_manager;Whew! I guess I was a bit pent up because you almost had me squirting! Maybe next time...@@"<br>
<br>
As you catch your breath, the look in her eye has you momentarily wondering if that "next time" is going to be now, but it fades, her normal playful, but stern, expression re-asserting itself and you find yourself questioning if you merely imagined her momentary loss of control.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_good_girl_namechange_3" "Continue." 360>>]
</div>/*#
#desc: PC puts clothes back on after good girl namechange
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Well, that was certainly something. Fortunately you have proven to be a swift learner in the past so I am quite optimistic for your future... maybe I should put in with utilities for one of those special face-sitting chairs...@@" Refocusing her thoughts she addresses you once more. "@@.npc_manager;Now, would you please put your clothes back on and continue with your work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_good_girl_namechange_4" "Put your clothes back on." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
</div>/*#
#desc: final scene of good girl namechange
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() == 5>>
<<set _nextDate = setup.setNextDate($now, 3, 9, 0)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 1, 9, 0)>>
<</if>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As you put your clothes back on <<=setup.getNpcName('npc_manager', 'formal')>> returns to her chair. Sitting down she starts to tap on the desk nervously.<br>
<br>
"@@.npc_manager;There was one last thing I wanted to tell you... hmm... actually all this commotion about your transformation seems to have made it slip my mind. You may leave.@@"<br>
<br>
You bow and turn, bending over to start picking up your clothes when you're interrupted.<br>
<br>
"@@.npc_manager;God, yes. That callipygian big behind of yours is very good at stimulating... ahem... one's memory. Big is the right word. Your friend <<=setup.getNpcName('npc_admin', 'formal')>> will be joining us
<<if $now.getUTCDay() == 5>>
on Monday
<<else>>
tomorrow
<</if>>
midmorning. For a business meeting. I expect you to treat <<him npc_admin>> like you would treat any guest of mine. This will be a good test of your abilities as my Secretary. To make sure there are no incidents we are not prepared for, you might take the opportunity SOON to tell <<him npc_admin>> about your new found love for femininity and everything it stands for.@@"<br>
<br>
<<if setup.getTotalValue('bimbofication') >= 5>>
"@@.npc_manager;I cannot help but have noticed your heightened ditziness as of late, so I thought I would give you a head start. Maybe you better make a note somewhere.@@"<br>
<br>
<</if>>
<<if ($currentTasks.hasOwnProperty("manager_morning_inspection_task") && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition != 1 || $currentTasks.hasOwnProperty("manager_morning_inspection_task_repeat") && $currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task_repeat.trigger.pinkPill.condition != 1)>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_2_finalize">>
<<include "inspectionText_drugs">>
<<else>>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Back to work." 360>>]
<</if>>
</div>/*#
#desc: receive pink secretary outfit - bad girl
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.checkItemWorn("mary_janes_pink") && setup.checkItemWorn("satin_blouse_pink") && setup.checkItemWorn("skirt_leather_pink") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings")>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_2">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.bad_girl.got_pink_secretary = true>>
<<set $scene.newFemaleReq = !$npc_manager.stagevalues[2].femalesecretary>>
<<set $npc_manager.stagevalues[2].femalesecretary = true>>
<<set $npc_cook.call_player = "Lassie">>
<<if !(setup.checkItemInInventory("mary_janes_pink") && setup.checkItemInInventory("satin_blouse_pink") && setup.checkItemInInventory("skirt_leather_pink"))>>
<<addItemSet "secretary_pink">>
<<addEvent 'first_time_pink_home'>>
<<if $player.sec_style.clothing.female == "">>
<<set $player.sec_style.clothing.female = 'forced'>>
<<if $player.sec_style.clothing.unisex == "">>
<<set $player.sec_style.clothing.unisex = 'forced'>>
<</if>>
<<set _x = setup.clearThoughtList()>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "female">>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
>>
<<set $npc_admin.flags.firstsawfemale = "office">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_10'
10
'event_admin_theme_female_clothes'
false
>>
<</if>>
<<setThreshold "feminization" "bad_girl_feminization" "cute_secretary">>
<<deleteUnwornTagItems 'male'>>
<<if $scene.underwearStyle == "male">>
<<addItemSet 'satin_lingerie_pink'>>
<<set $npc_manager.flags.firstcuteoutfit++>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You take the bag out of her hands and catch a glimpse inside. Looks like clothes. Pink clothes. You gulp audibly.<br>
<br>
<<if $npc_manager.flags.good_girl.got_pink_secretary>>
"@@.npc_manager;I believe you are familiar with these, yes? Well do not be distracted by the similarity to what you already own — this gift is made less as a suggestion than an... adjustment. Your attire this morning was quite, quite improper and so I believe you would benefit greatly from spending the remainder of the day attired in more feminine garb.@@"<br>
<br>
You slowly open the bag to reveal the items within. A light pink blouse made from satin. Looks expensive. A pink leather... skirt? Despite your technical lack of surprise, and that you've even worn these outfit before, well, the mood now feels very, very different.<br>
<br>
<<printThought "How is this happening to me? This can't be what I signed up for... can it?">>
<<else>>
"@@.npc_manager;Ah, I can see the cogs in your brain are still spinning. You see <<=$player.first_name>>, this is your new work uniform. Since it seems you are unable to figure out clothes within the regulations of your contract... or maybe you are still struggling financially after losing your last job. Maybe you are just trying to tease me. Whatever the reason, my secretary must meet a certain standard, or preferably exceed it. You did neither today. So go ahead, put those on. Do not worry, I will watch to make sure you do not mess up. And give me your other clothes while we are at it. I can take care of them while you change.@@"<br>
<br>
You slowly open the bag to reveal the items within. A light pink blouse made from satin. Looks expensive. A pink leather... skirt? You gulp, while not technically the shortest you've seen it is still... very short. Only one false move in this, and everyone will know the colour of your underwear. Finally, some pink Mary Jane heels with lace trim. You blush at the thought of wearing those. You better get changing if you want to start working today. Working. Today.<br>
<br>
<<printThought "Oh <<getWordGod>>. Everyone who enters the office today is going to see me dressed like a girl! I will literally die of embarrassment!">>
<</if>>
<br><br>
<<if $scene.underwearStyle == "male">>
You're still trying to process everything, moving the clothes aside in some vain hope of finding some alternative... only to discover that all there is beneath is a full set of pink, feminine underwear...<br>
<br>
<</if>>
<<if $scene.newFemaleReq>>
You look up at her, somehow hoping this is some kind of joke, but she only smiles wider. "@@.npc_manager;Oh, and while I suppose you could try something else well... know that I never again expect to see you wearing clothing that is in any way... masculine. No, you are my girl, someday maybe even my good girl, and you will dress accordingly.@@"<br>
<br>
<</if>>
<<if $options.ezchange>>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_2" "Get dressed as instructed." 180 "<<wearItemSet 'secretary_pink'>><<if !setup.checkItemTypeTag('panties', ['female'])>><<wearItemSlotTag 'panties' 'female'>><</if>><<if !setup.checkItemTypeTag('stockings', ['female'])>><<wearItemSlotTag 'stockings' 'female'>><</if>><<if $scene.underwearStyle=='male'>><<wearItem 'satin_panties' true>><<wearItem 'pantyhose_pink' true>><<wearItem 'satin_bra' true>><</if>>">>]
<</if>>
</div>/*#
#desc: put on pink secretary outfit
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "inspectionData_clothes">>
<<set $scene.nametrys = 0>>
<<if !$player.sec_style.body.name>>
<<set $player.sec_style.body.name = "forced">>
<<if $npc_manager.stage >= 2>>
<<addWorkEvent 'cunnilingus_intro'>>
<</if>>
<<if !$player.sec_style.body.identify_fem>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 9, 0, false)>>
<<addWorkEvent "identity_work" _nextDate>>
<</if>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<removeEvent 'insurance_alt'>>
<<applyExperience 'feminization' 12 'very' $SEEN_FRIEND>>
<</if>>
<<destroyMaleClothing $player $now false>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The blouse is not that difficult to put on, not really any different from a male shirt other than the buttons being on the other side, and
<<if $player.body.breastsize[0]>0>>
thankfully there's more place for your breasts, compared to the shirts you used to wear.
<<else>>
there seems like there would be more space for your breasts, not that you have any. At the moment.
<</if>><br>
<br>
The skirt, however is a whole other deal. Managing to squeeze your well formed backside into it was arduous to say the least. It's as if it was perfectly fitted to encase your buttocks as tight and narrow as possible. Anyone taking a better look at them probably does not have to guess long to figure out what kind of panties you're wearing.<br>
<br>
<<printThought "Oh no, everyone can see the outline of my <<=setup.getItemTypeName('panties')>>">><br>
<br>
While you nearly die of awe and embarrassment at the sight of your mini-skirted behind in the cheval mirror next to the door, you have the sudden feeling that it's somewhat hot in the office. No, not hot. Something smells like it's burning. Oh no, she isn't, you look over to see your remaining male clothes go up in flames in the trash basket, which seems to be hardened for impromptu incineration.<br>
<br>
"@@.npc_manager;Oh no, your clothes were so ashamed of their existence they spontaneously combusted, to spare yourself from their sad existence. You are welcome by the way. And do not worry, your new shoes alone are worth more than your entire old outfit combined. While we are at it I am updating your current daily task from now on. From now on, you will dress completely as a woman. This will be a part of your evaluation as well. Of course this is on top of, quite literally, your current task, female underwear remains mandatory as well, as does your chastity device. Hmm... come to think of it, maybe it was a good idea to appear today the way you did. Now I can finally whip you into shape without any compunction. As usual, neglecting your tasks will result in a disciplinary measure.@@"<br>
<br>
She stares at you for almost a minute, like she is memorising every aspect of your new look.<br>
<br>
"@@.npc_manager;Hmm, looking at how fetching you look in your new outfit... I might have to update my style as well, don't you think? Yes?@@"<br>
<br>
You nod timidly, slowly grasping the consequences of your actions.<br>
<br>
<<printThought "This cannot be happening! All the male clothes I had with me... gone! How am I going to get home. How will I survive today?">><br>
<br>
"@@.npc_manager;<<=$player.first_name>>, look at me!@@"<br>
<br>
You are unable to comply, still petrified and staring at the floor in disbelief. Taking a menacing step forward <<=setup.getNpcName('npc_manager', 'formal')>> closes the distance between the two of you.<br>
<br>
"@@.npc_manager_dom;I said look at me, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>!@@" She commands you while putting her finger under your chin. Though she pushes upwards with little force you comply, soon looking up at her face.<br>
<br>
"@@.npc_manager;Look me in the eyes and tell me that this is not what you want. You had more than sufficient opportunities to quit and look for another job. Or simply follow the more... mundane initial instructions and hang on to the pitiful remains of your masculinity. But you did neither. And here we are. So do not tell me you do not like it. Me, dominating you, the clothes, the pain, the excitement! It is all part of the deal, so you either stay and enjoy the ride as the <<if $fetish.sissy>>SISSI <</if>>Secretary you were meant to be, or you walk through that door, right now and never return. The later means of course that your contract, and your employment at this company, would be null and void. So... which will it be?@@"<br>
<br>
She smiles and your heart beats faster.<br>
<br>
<<if $player.sec_style.body.name != "forced">>
"@@.npc_manager;Come on, this should not be a difficult decision, <<=$player.first_name>>.@@"<br>
<br>
<<printThought "She's right, I mean, I stayed so long, done so much... even changed my name... maybe this is where I belong?">>
<<else>>
"@@.npc_manager;Either you tell me the name you want to be called from now on, since <<=$player.first_name>> is hardly a fitting name for a <<if $fetish.sissy>>SISSI <</if>>Secretary, or you leave and never return. Make your choice, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>.@@"<br>
<br>
<<printThought "The truth is I stayed way longer and agreed to a lot of things I didn't intend to do. Maybe I really belong here?">>
<</if>>
<br><br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
<br>
[<<moveTo "gameover_nintendolls" "Walk out the door." 360>>]
</div>/*#
#desc: manager approve/disapprove of your new female name, told that you are now a girl, and to refer to her as Mistress
#status: FINISHED 0.4.0.0
#ignore_spell: w
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sissyname = setup.sanitizeString($scene.sissyname)>>
<<set $scene.acceptname = "">>
<<if $scene.sissyname.toLowerCase() == $player.first_name.toLowerCase()>>
<<set $scene.acceptname = "samename">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == $player.last_name.toLowerCase()>>
<<set $scene.acceptname = "lastname">>
<<applyExperience 'bimbofication' 4 'slightly' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == $npc_manager.first_name.toLowerCase() || $scene.sissyname.toLowerCase() == $npc_manager.last_name.toLowerCase()>>
<<set $scene.acceptname = "manager">>
<<applyExperience 'bimbofication' 6 'normal' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == 'sissy' || $scene.sissyname.toLowerCase() == 'sissyname'>>
<<set $scene.acceptname = "sissy">>
<<applyExperience 'bimbofication' 6 'normal' $SEEN_FRIEND>>
<<elseif $scene.sissyname.toLowerCase() == 'frisk' || $scene.sissyname.toLowerCase() == 'chara'>>
<<set $scene.acceptname = "undertale">>
<<elseif $scene.sissyname.toLowerCase() == 'sans' || $scene.sissyname.toLowerCase() == 'papyrus' || $scene.sissyname.toLowerCase() == 'gaster' || $scene.sissyname.toLowerCase() == 'wingdings'>>
<<set $scene.acceptname = "undertale2">>
<<elseif $scene.sissyname == "">>
<<set $scene.acceptname = "none">>
<<applyExperience 'bimbofication' 7 'normal' $SEEN_FRIEND>>
<<if $scene.enthusiast_namechange || $scene.good_girl_namechange>>
<<set $scene.sissyname = "Jane">>
<<else>>
<<set $scene.sissyname = "Jezebel">>
<</if>>
<</if>>
<<if $scene.acceptname != "" || $scene.acceptname == "none">>
<<set $scene.nametrys+=1>>
<<else>>
<<set $player.call = "Miss">>
<<if !$player.original_first_name>>
<<set $player.original_first_name = $player.first_name>>
<</if>>
<<if !$scene.strict_namechange>>
<<set $player.first_name = $scene.sissyname>>
<<if !$player.original_last_name>>
<<set $player.original_last_name = $player.last_name>>
<</if>>
<<set $player.last_name = $scene.lastname>>
<</if>>
<<if $scene.enthusiast_namechange>>
<<set $player.sec_style.body.name = "enthusiast">>
<<if $npc_manager.stage >= 2>>
<<addWorkEvent 'cunnilingus_intro'>>
<</if>>
<<set $npc_cook.flags.reactnamechange = true>>
<<if !$player.sec_style.body.identify_fem>>
<<set _sourceChar = "npc_manager">>
<<set $player.sec_style.body.identify_fem = "enthusiast">>
<<include "identifyFemUnlocks">>
<</if>>
<<set _nextDate = setup.getNextDayOfWeek($now, 3, 9, 0)>>
<<set _nextDate = setup.getNextDayOfWeek(_nextDate, 3, 9, 0)>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_20'
20
'event_psychiatrist_theme_gender_1'
true
>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_crossdress_11'
10
'event_technician_comingout_1_alt'
true
>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_20'
20
'event_admin_comingout_1'
true
>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<removeEvent 'insurance_alt'>>
<<elseif $scene.strict_namechange>>
<<set _nextDate = setup.setNextDate($now, 0, 9, 0)>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_15'
15
'event_admin_theme_female_name'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_transition_15'
15
'event_psychiatrist_theme_female_name'
false
>>
<<addSearch $computer "Online Name Changes" "room_computer_online_name_change_1">>
<<removeEvent 'insurance_alt'>>
<<else>>
<<set $player.flags.company.depts += 10200>>
<<if !$scene.good_girl_namechange>>
/* As a bad girl this scene will happen the very same day! */
<<set _nextDate = setup.setNextDate($now, 0, 9, 0)>>
<<addWorkEvent 'admin_office_visit' _nextDate>>
<<addEvent 'first_lunch_female'>>
<<else>>
<<addEvent 'first_lunch_female_good'>>
<</if>>
<</if>>
<<set $npc_manager.flags.reactnamechange = true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.strict_namechange>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.acceptname>>
<<case "samename">>
"@@.npc_manager;No, the point of this whole thing was for you to choose a feminine name, one fitting to your new personality. Not your old name! Try again!@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
<<case "lastname">>
"@@.npc_manager;...You want your last name to be your <<if $fetish.sissy>>SISSI<<else>>girl<</if>> name? So you would be Miss <<=$player.last_name>> <<=$player.last_name>>. Seriously? Hmm... maybe I simply call you Miss Smartass from now on. Or Miss Dumbfuck. One of the two. Try again!@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
<<case "manager">>
"@@.npc_manager;No, that is not name fitting a <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. And it is my name. So... no! Try again!@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
<<case "sissy">>
"@@.npc_manager;Very funny, but nope, not an option. Again!@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
<<case "undertale">>
"@@.npc_manager;Oh no. We are not going down that road. The last thing we need here is another person with determination starting another global war! Again! The name, not the war. Look whatever you do, promise me to not start any wars, okay? @@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
<<case "undertale2">>
"@@.npc_manager;Why would you want to be called like a font? Once more! @@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
<<case "none">>
The silence lingers until <<=setup.getNpcName("npc_manager","formal")>> starts to get
<<if $scene.enthusiast_namechange || $scene.good_girl_namechange>>
a little annoyed. "@@.npc_manager;Struggling to come up with anything? How about <<=$scene.sissyname>>? Yes, I think you quite look like a <<=$scene.sissyname>>. Unless you have come up with something you would prefer more?@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm your chosen <<if $fetish.sissy>>sissy <</if>>name." 30>>]<br>
<<else>>
[<<link "Tell her your chosen <<if $fetish.sissy>>sissy <</if>>name">>
<<if $fetish.sissy>>
<<openDialog "Your sissy name:" "dialog_selectName">>
<<else>>
<<openDialog "Your feminine name:" "dialog_selectName">>
<</if>><</link>>]<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "<<=$scene.sissyname>> is good." 60>>]
<<else>>
even more annoyed. "@@.npc_manager;Cannot come up with anything?@@" She sighs. "@@.npc_manager;Very well, I shall, yet again, handle things for you — <<=$scene.sissyname>>? Yes, I think you quite look like a <<=$scene.sissyname>>, and if you do not like it? Well, you had the opportunity to make a choice, and you passed it up.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Continue." 60>>]
<</if>>
<<case "">>
<<if $scene.qualifier_period_namechange>>
She smiles, it would appear she approves of your decision...<br>
<br>
[<<moveTo "event_manager_qualifier_ultimatum_name" "Continue." 360 "<<set $npc_manager.call='Mistress'>><<set $npc_manager.title='Mistress'>>">>]
<<elseif $scene.strict_namechange>>
"@@.npc_manager;Hmm, <<=$scene.sissyname>>, yes, that is much more appropriate for that outfit, and to accompany me to the party.@@"<br>
<br>
Hearing her call you <<=$scene.sissyname>> feels strange... you're glad it will only be for the evening.<br>
<br>
"@@.npc_manager;Very good, now come along, <<=$scene.sissyname>>, we have a party to attend.@@"<br>
<br>
[<<moveTo "event_party_1_1" "Follow." 180>>]
<<elseif $scene.enthusiast_namechange>>
"@@.npc_manager;So, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, from today on your name shall be <<=$player.first_name>>. I like it, it has a pleasant feminine ring to it. Now, if you would hand me the datapad we can make this official, what do you say, <<=$player.first_name>>. Hmm... <<=$player.first_name>>. Rolls nicely off my tongue.@@"<br>
<br>
You feel a slight thrill at hearing your new name. You'd never really given much thought to how you felt about people calling you by name but... this, being referred to by a name you chose yourself? It feels good, right...<br>
<br>
"@@.npc_manager;Well done. Okay, <<=$player.first_name>> <<=$player.last_name>>, this concludes your official name change. Social Security Administration, Internal Revenue Service, Bureau of Consular Affairs, the Federal Communications Commission, the Selective Service System, the Department of Motor Vehicles and a few other departments have been informed of your name change. Your documents and ID card should be updated once you make your next online transaction. I think they send you your physical documents in the next few days if you still use these. And, as noted, the company has taken care of all associated fees.@@"<br>
<br>
[<<moveTo "event_enthusiast_intro_5_identify" "Could she refer to you as a girl, as well?" 360>>]<br>
[<<moveTo "event_enthusiast_intro_6" "Nod, time to leave..." 360 "<<set $scene.continue=false>>">>]<br>
[<<moveTo "event_enthusiast_intro_6" "Is there anything else?" 360 "<<set $scene.continue=true>>">>]
<<elseif $scene.good_girl_namechange>>
"@@.npc_manager;So, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, from today on your name shall be <<=$player.first_name>>. I like it, it has a pleasant feminine ring to it. Now, if you would hand me the datapad we can make this official, what do you say, <<=$player.first_name>>. Hmm... <<=$player.first_name>>. Rolls nicely off my tongue. I could see myself screaming that a lot during a night's passion. Actually... why wait until nightfall?@@"<br>
<br>
<<printThought "Wait... WHAT?">><br>
<br>
Your expression may be quite puzzled, but her smile of satisfaction only grows wider as you hand her the filled out datapad.<br>
<br>
"@@.npc_manager;Well done. Okay, <<=$player.first_name>> <<=$player.last_name>>, this concludes your official name change. Social Security Administration, Internal Revenue Service, Bureau of Consular Affairs, the Federal Communications Commission, the Selective Service System, the Department of Motor Vehicles and a few other departments have been informed of your name change. Your documents and ID card should be updated once you make your next online transaction. I think they send you your physical documents in the next few days if you still use these.@@"<br>
<br>
<<printThought "What?">><br>
<br>
"@@.npc_manager;No need to look so worried, the company has paid all fees related to the change, of course. But I would beware since the company keeps track of all the money they invest in their assets... I mean, employees, employees are our MOST important asset. That means that terminating your contract now would end you in hot water, since you would have to either repay the <<=setup.numberInWords($player.flags.company.depts, true)>> credits you are currently considered to owe the company at the moment, or you would have to negotiate a repurposing deal. Really, it is nothing you should be worrying your pretty head about, I mean, it would be such a waste to lose such an aspiring <<if $fetish.sissy>>SISSI<<else>>girl<</if>> as yourself. Of course, once your probationary period is over, a certain percentage of your salary will be credited towards paying things off. And if you continue to try to improve yourself at your current rate, well... I see a radiant future for you in this company, under my desk... err... supervision of course.@@"<br>
<br>
<<printThought "Que?">><br>
<br>
You explain to <<=setup.getNpcName('npc_manager', 'formal')>> that, while you were were not fully aware of the consequences, you plan to continue to do your best to fulfill her expectations.<br>
<br>
"@@.npc_manager;Mistress,@@" she states, interrupting the end of your speech. "@@.npc_manager;Since you readily accepted your role as a <<if $fetish.sissy>>SISSI <</if>>Secretary, I am not your "Missus" anymore. We both know I never was your "Missus" in the first place, but it is finally time that you address me in a way that more accurately respects our respective positions. From now on, whenever you address me, I want to hear a Mistress in front of my name. Also know that I find it delightfully refreshing that you accept that you are not merely a <<if $fetish.sissy>>SISSI <</if>>Secretary here at work. Your new name, after all, reflects what we both knew all along — that you ARE a <<if $fetish.sissy>>SISSI <</if>>Secretary 24/7.@@" She pauses and shakes her head in amusement. "@@.npc_manager;Hah! Listen to me going on and on about things we both already know! Well, I think there has been enough of this feckless chatter. All your unconditional obedience made me quite horny, and I think now is the perfect time you take appropriate responsibility for that!@@"<br>
<br>
Your jaw hits the floor so fast and hard, it won't likely stop until it hits your old desk back at Cloud Data Services some forty-plus floors below.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_good_girl_namechange_2" "Wait, how did I end up on my knees?" 360 "<<set $npc_manager.call='Mistress'>><<set $npc_manager.title='Mistress'>>">>]
<<else>>
"@@.npc_manager;So, <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, from today on your name shall be <<=$player.first_name>>. I like it, it has a certain feminine ring to it. One more thing, <<=$player.first_name>>... <<=$player.first_name>>... I am already getting used to it. Here you go,@@" she hands you a datapad with a digital contract on it. It looks similar to your original contract from the looks of it. In other words a whole lot of text and you have no idea what's going on. "@@.npc_manager;I need you to sign this with your new name, to make it official within the companies records.@@"<br>
<br>
Still high on endorphins from deciding to finally go through with it and accept your feminine side you sign the document without even taking a closer look at it.<br>
<br>
"@@.npc_manager;Well done. Okay, <<=$player.first_name>> <<=$player.last_name>>, this concludes your official name change. Social Security Administration, Internal Revenue Service, Bureau of Consular Affairs, the Federal Communications Commission, the Selective Service System, the Department of Motor Vehicles and a few other departments have been informed of your name change. Your documents and ID card should be updated once you make your next online transaction.@@"<br>
<br>
<<printThought "W... what?">><br>
<br>
"@@.npc_manager;No need to look so worried, the company has paid all fees related to the change, of course. But I would beware since the company keeps track of all the money they invest into you. So terminating your contract now would end you in hot water, since you would have to either repay the <<=setup.numberInWords($player.flags.company.depts, true)>> credits you owe the company at the moment, or you would have to negotiate a repurposing deal. But do not worry, once your probationary period is over a certain percentage of your salary will be credited towards paying things off.@@"<br>
<br>
<<printThought "That really does not make it any better!">><br>
<br>
You explain to <<=setup.getNpcName('npc_manager', 'formal')>> that you thought this was more an internal thing between the two of you and you would still get to keep your name.<br>
<br>
"@@.npc_manager;Mistress,@@" is the interruption you receive for trying explain your issues with what has just happened.
<<set setup.addManagerEndlessTask()>>
<<set _taskComp = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<deleteTask 'manager_morning_inspection_task'>>
<<if _taskComp>>
"@@.npc_manager;Since you finally accepted your role as a <<if $fetish.sissy>>SISSI <</if>>Secretary, I am not a Missus to you anymore. From now on, whenever you address me, I want to hear a Mistress in front of my name. And, well, there seems to be a misconception here. While you may only be paid to be a <<if $fetish.sissy>>SISSI <</if>>Secretary during the day we both know that you ARE a <<if $fetish.sissy>>SISSI <</if>>Secretary 24/7. Now your name reflects that, and really, it would be quite complex and inconvenient to change a name within the company to something other than what the law agreed was true. Besides, <<=$player.first_name>> fits you a lot better then <<=$player.original_first_name>>, especially if you consider the way you are dressed right now. Any more questions? Good, we have squandered enough time with feckless chatter.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Continue." 360 "<<set $npc_manager.call='Mistress'>><<set $npc_manager.title='Mistress'>>">>]
<<else>>
"@@.npc_manager;With this new step towards a more complete acceptance of your role as me <<if $fetish.sissy>>SISSI <</if>>Secretary, I am not a Missus to you anymore. From now on, whenever you address me, I want to hear a Mistress in front of my name. And, well, there seems to be a misconception here. While you may only be paid to be a <<if $fetish.sissy>>SISSI <</if>>Secretary during the day we both know that you ARE a <<if $fetish.sissy>>SISSI <</if>>Secretary 24/7. Now your name reflects that, and really, it would be quite complex and inconvenient to change a name within the company to something other than what the law agreed was true. Besides, <<=$player.first_name>> fits you a lot better then <<=$player.original_first_name>>, especially if you consider the way you are dressed right now. Any more questions? Good, now, let us try this inspection again from the top, see if we can get a PROPER start to the day...@@"<br>
<br>
<<printThought "Shit... I'm going to fail again, aren't I?">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2" "Re-start the inspection..." 360 "<<set $npc_manager.call='Mistress'>><<set $npc_manager.title='Mistress'>><<set $scene.reInspect=true>><<set setup.addManagerEndlessTask()>>">>]
<</if>>
<</if>>
<</switch>>
</div>/*#
#desc: dialog box for choosing your feminine name
#status: FINISHED 0.4.0.0
#*/
<center>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>>
</center>
<br>
@@.textRightSide;
<<button "Okay">>
<<moveTo 'event_manager_daily_check_stage_2_3_female_secretary_3'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: sent home/with chastity rights revoked for failing morning inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _needChastity = $npc_manager.flags.trustplayerwithkey && !$npc_manager.flags.playerstayedinchastity>>
<<set $scene.addChastity = false>>
<<if !$scene.cage>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<</if>>
<<if $scene.cage && !($currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks['task_chastity_trial'].finished)>>
<<if setup.checkItemOwned("advance_chastity_cage_key") && $currentTasks.hasOwnProperty("task_chastity_trial") && $currentTasks.task_chastity_trial.condition == "Complete" && !$npc_manager.flags.took_adv_key && setup.getChastityLevel() == 4>>
/% no op %/
<<elseif $npc_manager.flags.trustplayerwithkey>>
<<set $scene.keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.managerhadkey = $npc_manager.flags.hascagekey>>
<<set $scene.playerhaskey = setup.checkItemInInventory($scene.keyId)>>
<<if $scene.playerhaskey>>
<<deleteItem $scene.keyId>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<</if>>
<</if>>
<<elseif setup.checkItemOwned("advance_chastity_cage_key") && $currentTasks.hasOwnProperty("task_chastity_trial") && $currentTasks.task_chastity_trial.condition == "Complete" && !$npc_manager.flags.took_adv_key && !setup.checkItemTypeWorn("cage") && $npc_manager.flags.require_chastity>>
<<set $scene.addChastity = true>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $daily.revokedKeyToday = true>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<addItem $scene.newcage>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<<set $scene.gaveKey=true>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem _keyId>>
<<elseif $npc_manager.flags.require_chastity && !$scene.cage>>
<<set $scene.addChastity = true>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $daily.revokedKeyToday = true>>
<<if $player.flags.chastity_style =="cage">>
<<set $scene.newcage = "electric_chastity">>
<<else>>
<<set $scene.newcage = "chastity_belt_electric">>
<</if>>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<addItem $scene.newcage>>
<<if setup.findThemeId('npc_manager', 'chastity_general', 'theme_manager_work_chastity_keys') == -1>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_work_chastity_keys'
0
'event_manager_theme_ask_old_keys'
true
>>
<</if>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<set $scene.forgot_cage = false>>
<<set $scene.forgot_cage_key = false>>
<<set $scene.gaveKey=true>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem _keyId>>
<</if>>
<<include "setLastSeenCage">>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.addChastity>>
You wait in case she might have anything else and immediately regret your decision as she pulls something out of her desk and steps forward with a menacing grin.<br>
<br>
"@@.npc_manager;Oh, and do not think that I had failed to notice your security gap.@@" She reveals a steel chastity <<if setup.isCage()>>cage<<else>>belt<</if>> and waits for you to put it on. <<if setup.checkItemOwned("advance_chastity_cage_key")>>"@@.npc_manager;Not quite the level of security as that trial device you were wearing... but even if I am dismissing you, well... your work requirements dictates you be locked while at the office, however briefly.@@"<<else>>"@@.npc_manager;That should keep you out of trouble, and reinforce your obligations as my personal <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<</if>><br>
<br>
She smiles wider as the lock clicks closed and she taunts you with the key. "@@.npc_manager;Of course your little failure shows that you cannot be trusted with this... maybe a few more nights spent helplessly locked will break that disobedient streak and show that you can be trusted with responsibility... otherwise, well, I will CERTAINLY show responsible care for you.@@"<br>
<br>
She palms the key and waves you off. "@@.npc_manager;Run along, now.@@"
<<elseif $npc_manager.flags.trustplayerwithkey && (!$npc_manager.flags.playerstayedinchastity || !$scene.managerhadkey) && $player.sec_style.submission.chastity != "" && $npc_manager.flags.require_chastity>>
You turn to go, but <<=setup.getNpcName('npc_manager', 'formal')>> stops you one last time.<br>
<br>
"@@.npc_manager;One final thing, before you go <<=$player.first_name>>, I will be holding on to your chastity key. If you behave yourself, I may return it, but for now well... I think a bit of extra focus is just what you need for today, hmm? That should help curb your rebellious behaviour. Do I make myself clear?@@"<br>
<br>
<<if !$scene.managerhadkey>>
You stand in silence for a moment before she shakes her head again.<br>
<br>
"@@.npc_manager;Well? Hand it over!@@"<br>
<br>
<<if $scene.playerhaskey>>
Nervously you place the key in her palm. She smiles in satisfaction. "@@.npc_manager;And remember, taking the key home is a privilege. Keep up behaviour like this and I will revoke that privilege and you will not be getting this back for a good long while.@@"
<<elseif $currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished>>
You remind her that you are in the midst of the chastity trial and do not have access to the key.<br>
<br>
"@@.npc_manager;Oh, right, well, at least that means you will remain properly locked. Think of it as an advantage. One requirement that you will be unable to screw up.@@"
<<else>>
You explain that you do not actually have the key with you...<br>
<br>
"@@.npc_manager;Really? Yet another failure then. Well, do remember to bring it with you when you return if you hope to salvage anything from this morning's debacle.@@"
<</if>>
<<else>>
She waits for you to nod in acknowledgement before continuing.<br>
<br>
"@@.npc_manager;Good to see we are on the same page. So I will be continuing to hold on to this@@" she adds, showing of the key dangling from her thin necklace. "@@.npc_manager;For the rest of the day. You may, of course ask for it back after work but... well, you will need to get out of your current hole and really impress me.@@"
<</if>>
<br><br>
You nod, feeling quite awkward, then leave the office.
<<else>>
You wait in case she might have anything else, or be in the mood for mercy, but she dismisses you with a wave and you leave the office.
<</if>>
<br><br>
<<if $clothSetsInt.hasOwnProperty("daily_evaluation_clothes")>>
[<<moveTo "company_lobby" "Dress and leave work." 300 "<<useClothSetPop 'daily_evaluation_clothes'>><<set $player.work.sendhome=true>><<set $player.work.sendhomedate = $now>>">>]
<<else>>
[<<moveTo "company_lobby" "Dress and leave work." 300 "<<set $player.work.sendhome=true>><<set $player.work.sendhomedate = $now>>">>]
<</if>>
</div>/*#
#desc: sent home/with chastity rights revoked for failing morning inspection twice in same day
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "setLastSeenCage">>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You slowly turn to go, looking back at her in hopes she might change her mind. Her expression remains stern and annoyed, watching you like a hawk until you have left the room. You make your way to the elevator to head home for the day, already regretting your failure.<br>
<br>
[<<moveTo "company_lobby" "Leave work." 300 "<<set $player.work.sendhome=true>><<set $player.work.sendhomedate = $now>>">>]
</div>/*#
#desc: sent home/with chastity rights revoked for failing morning inspection twice in same day
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<destroyMaleClothing $player $now false>>
<<addItemSet 'satin_lingerie_pink'>>
<<wearItemSet 'satin_lingerie_pink'>>
<<set $npc_manager.flags.firstcuteoutfit++>>
<<set _itemList = ['satin_bra', 'pantyhose_pink', 'satin_panties']>>
<<fixClothSet 'daily_evaluation_clothes' _itemList>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You shed your underwear and she casually pitches all of the male attire you have with you into the trash, following it up with a match for good measure causing them to go up in flames startlingly quickly.<br>
<br>
"@@.npc_manager;Here, this will have to do for the day.@@" She states, handing you a simple, basic set of pink underthings.<br>
<br>
Lacking alternative options you put them on, bra, panties and hose without voicing further objections.<br>
<br>
"@@.npc_manager;Better. How about we forget all of this happened and try this again fresh? Hmm?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_2" "Try again to pass inspection." 60 "<<set $scene.seriousoffense = false>>">>]
</div><<initRoom>>
<<set $scene.workEventReturn='room_office_sissy_secretary_work_morning_start'>>
<<if $npc_manager.call != "Mistress" && $player.sec_style.body.name>>
<<moveTo "event_manager_title_update_1">>
<<else>>
<<include "postInspectionCleanup">>
<<if $player.sec_style.body.name && $npc_manager.stagevalues[2].femalesecretary && $player.hair.style == "unkempt" && setup.daysToDate($npc_manager.stagevalues[1].promodate, $now) >= 5>>
<<moveTo "event_secretary_style_hair_intro_1">>
<<else>>
<<moveTo "room_office_sissy_secretary_work_morning_start">>
<</if>>
<</if>>/*#
#desc: sent home/with chastity rights revoked for failing morning inspection twice in same day
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>>
<<set _x = setup.checkTaskCompleted('manager_morning_inspection_task')>>
<<else>>
<<set _x = setup.checkTaskCompleted('manager_morning_inspection_task_repeat')>>
<</if>>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && $currentTasks.manager_morning_inspection_task.trigger.clothesUnderwear.condition == 1 && $currentTasks.manager_morning_inspection_task.trigger.clothing.condition == 1 || $currentTasks.hasOwnProperty('manager_morning_inspection_task_repeat') && $currentTasks.manager_morning_inspection_task_repeat.trigger.clothesUnderwear.condition == 1 && $currentTasks.manager_morning_inspection_task_repeat.trigger.clothing.condition == 1>>
<<useClothSetPop 'daily_evaluation_clothes'>>
<<set $player.cutscene.lockinventory = true>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_2_finalize">>
<<elseif ['formal','office'].includes(setup.analyzeWornTags(['casual','office', 'formal'])) &&
setup.checkItemTypeWorn("shoes") &&
setup.checkItemTypeWorn("stockings") && !setup.checkItemTypeTag('stockings', ['male']) &&
setup.checkItemTypeWorn("panties") && setup.checkItemTypeTag('panties', ['female']) &&
(setup.checkItemTypeWorn("bra") || setup.getItemFromType("strapless_dress") != "") && setup.checkOutsideDecency()>>
<<set $player.cutscene.lockinventory = true>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_2_4_formal">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> stares, waiting for you to get dressed "appropriately" for work.<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Put your clothes back on." 60 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
</div>/*#
#desc: sent home/with chastity rights revoked for failing morning inspection twice in same day
#status: RELEASED 0.6.0.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
She glances over your attire and frowns slightly. "@@.npc_manager;Not quite in keeping with your dresscode, but I suppose I shall allow it for today.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Return to work." 60>>]
</div>/*#
#desc: receive unisex outfit - stage 2 forced
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $scene.forced_gift = "">>
<<if setup.checkItemWorn("shirt_female_office_teal") && setup.checkItemWorn("trousers_female_office_grey") && setup.checkItemWorn("flats_black") && (setup.checkItemTypeWorn("panties") || setup.checkItemTypeWorn("body")) && setup.checkItemTypeWorn("stockings")>>
<<initRoom>>
<<moveTo "event_work_forced_unisex_2">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<if $player.sec_style.clothing.unisex == "">>
<<set $player.sec_style.clothing.unisex = "forced">>
<<addNpcTheme 'npc_admin' 'transition' 'theme_admin_transition_5'
5
'event_admin_theme_unisex_clothes'
false
>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_10'
10
'event_psychiatrist_session_manager_demasculated_clothes'
false
>>
<<set _x = setup.clearThoughtList()>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('unisex2')>>
<<set $shopStatus["mall_apparel_store"].unlocked_inventory.pushUnique("female")>>
<<set $shopStatus["gym"].unlocked_inventory.pushUnique("female")>>
<<setThreshold 'feminization' 'bad_girl_feminization' 'casual_clothes_stage1'>>
<<include "addSexStoreOpeningEvent">>
<</if>>
<<if !setup.checkItemOwned('shirt_female_office_teal')>>
<<addItem 'shirt_female_office_teal'>>
<<else>>
<<if setup.inWardrobe('shirt_female_office_teal')>>
<<wardrobeToItem 'shirt_female_office_teal'>>
<</if>>
<</if>>
<<if !setup.checkItemOwned('trousers_female_office_grey')>>
<<addItem 'trousers_female_office_grey'>>
<<else>>
<<if setup.inWardrobe('trousers_female_office_grey')>>
<<wardrobeToItem 'trousers_female_office_grey'>>
<</if>>
<</if>>
<<if !setup.checkItemOwned('flats_black')>>
<<addItem 'flats_black'>>
<<else>>
<<if setup.inWardrobe('flats_black')>>
<<wardrobeToItem 'flats_black'>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> hands you a bag containing a set of "unisex" office attire.<br>
<br>
"@@.npc_manager;Put those on,@@" she commands. "@@.npc_manager;And know that I never again expect to see you wearing so much as a thread of masculine attire.@@"<br>
<br>
You gulp, nervous, yet somehow unsurprised.<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_work_forced_unisex_2" "Get dressed as instructed." 60 "<<removeAllClothing>><<wearItemSet 'unisex_office'>><<if !setup.checkItemTypeTag('panties', ['female'])>><<wearItemSlotTag 'panties' 'female'>><</if>><<if !setup.checkItemTypeTag('stockings', ['female'])>><<wearItemSlotTag 'stockings' 'female'>><</if>>">>]
<</if>>
</div>/*#
#desc: change into unisex outfit - stage 2 forced
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include inspectionData_clothes>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> nods in satisfaction.
<<if setup.checkItemOwned("advance_chastity_cage_key") && $currentTasks.hasOwnProperty("task_chastity_trial") && $currentTasks.task_chastity_trial.condition == "Complete" && !$npc_manager.flags.took_adv_key>>
"@@.npc_manager;Now that THAT is dealt with, I believe we have a bit of a celebration to make before I release you to your desk...@@"<br>
<br>
You look up at her confused, and more than a touch worried.<br>
<br>
[<<moveTo "event_work_adv_key" "Continue." 60>>]
<<else>>
"@@.npc_manager;Yes... that will do... for now.@@" She waves you off.
<<if setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
"@@.npc_manager;Now, to work with you, I have wasted enough time correcting you for one morning.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Continue." 360>>]
<<else>>
"@@.npc_manager;Now that that is resolved, let us try this inspection from the top, hmm?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_2" "Continue." 360 "<<set $scene.reInspect=true>>">>]
<</if>>
<</if>>
</div>/*#
#desc: manager tells you to call her mistress
#status: RELEASED 0.9.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to setup.wordSecretaryOffice>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You have just taken a seat at your desk when <<=setup.getNpcName("npc_manager","formal")>> pops back out. "@@.npc_manager;One final thing. Now that you have advanced a bit further into your new career, well... <<=setup.getNpcName("npc_manager","formal")>> is less than appropriate. Going forward I expect you to refer to me by the title <<=setup.getNpcName("npc_manager","custom", "Mistress")>>.@@"<br>
<br>
Her subtle, confident smile brooks no disagreement, and she disappears back into her inner office leaving you to stare at your new nameplate, and contemplate how things are progressing...<br>
<br>
<<printThought '<<=setup.getNpcName("npc_manager","custom", "Mistress")>>? What is going on with this job? And why am I somehow unsurprised...'>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_finalize" "Get to work." 360 '<<set $npc_manager.call="Mistress">><<set $npc_manager.title="Mistress">>'>>]
</div>/*#
#desc: manager mentions after-work party
#status: FINISHED 0.4.0.0
#ignore_spell: volentold
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<include "endPartialShift">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Noting her stressed demeanour you turn and ask <<=setup.getNpcName('npc_manager', 'formal')>> what is bothering her.<br>
<br>
"@@.npc_manager;Oh, it is this after-work party... thing. I normally try to avoid them but one of the higher ups insists <<he>> wants to see me, and since <<he>> flies out in the morning, well...@@"<br>
<br>
She lets out a frustrated sigh.<br>
<br>
<<if $npc_manager.flags.cruel>>
"@@.npc_manager;Come to think of it... you would be just the thing to liven up the party...@@" she seems to think for a moment, a smile spreading across her face that has you feeling even more nervous than you were just from being in her presence. "@@.npc_manager;Yes, that is a splendid idea, thank you for helping me think of it.@@"<br>
<br>
[<<moveTo "event_manager_preparty_3" "What did I just get volentold for?" 240>>]
<<else>>
"@@.npc_manager;It would not be so bad, but it is just dull to go alone, nobody to save me from when <<if $options.fem>>Paige<<else>>Paul<</if>> from accounting starts droning on and on.@@"<br>
<br>
[<<moveTo "event_manager_preparty_2_accept" "Offer to accompany her." 180>>]<br>
[<<moveTo "event_manager_preparty_2_wellwish" "Wish her luck at the party." 180>>]
<</if>>
</div>/*#
#desc: manager mentions after-work party
#status: RELEASED 0.6.0.0
#ignore_spell: volentold
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "endPartialShift">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Deciding it is best not to disturb a sleeping lion you reach for the door only for the hinges to make an uncharacteristically loud noise and draw her attention.<br>
<br>
"@@.npc_manager;You are still here? I thought I — wait... actually, this could well be the solution to my problem. I do not know why I did not think of it earlier!@@"<br>
<br>
You turn nervously back as she seems to peer through you. "@@.npc_manager;Yes, that would work quite well. You see there is this after-work party... thing. I normally try to avoid them but one of the higher ups insists <<he>> wants to see me, and since <<he>> flies out in the morning, well...@@"<br>
<br>
She lets out a frustrated sigh.<br>
<br>
"@@.npc_manager;It would not be so bad, but it is just dull to go alone, nobody to save me from when <<if $options.fem>>Paige<<else>>Paul<</if>> from accounting starts droning on and on, but if I had someone with me...@@"<br>
<br>
<<if $npc_manager.flags.cruel>>
Her expression turns to a cruel smile as she continues. "@@.npc_manager;Come to think of it... you would be just the thing to liven up the party... Yes, that is a splendid idea, thank you for helping me think of it.@@"<br>
<br>
[<<moveTo "event_manager_preparty_3" "What did I just get volentold for?" 240>>]
<<else>>
<<printThought "She obviously wants me to be her plus one, but why isn't she just ordering such?">><br>
<br>
[<<moveTo "event_manager_preparty_2_accept" "Offer to accompany her." 180>>]<br>
[<<moveTo "event_manager_preparty_2_wellwish" "Wish her luck at the party." 180>>]
<</if>>
</div>/*#
#desc: offer to accompany manager to after-work party
#status: FINISHED 0.4.0.0
#ignore_spell: n
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
With her mentioning the difficulties incurred by attending the party alone you ask if, perhaps, you might accompany her this evening?<br>
<br>
<<if $player.sec_style.body.name == "">>
"@@.npc_manager;Mister <<=$player.last_name>>, are you asking me on a Date? I would n...@@"
<<else>>
"@@.npc_manager;Miss <<=$player.last_name>>, are you asking me on a Date? I would n...@@"
<</if>>
is her answer in a tone that leaves no doubt of what directions it's heading towards, and the direction is utter defeat, but then there's a sudden change in her expression as it shifts from "No way" to a curious "Wait a second." <br>
<br>
"@@.npc_manager;Give me a second to think this through,@@" she says, a billion neurons fired at once, forming some devious plan. She looks at you for several long moments, and you get the weird feeling that she is undressing and redressing(?) you with her eyes.<br>
<br>
"@@.npc_manager;Hmm, yes... I mean, that outfit is not really appropriate for an event such as this...But yes, thank you for the offer to come with me, that would be quite wonderful.@@"<br>
<br>
[<<moveTo "event_manager_preparty_3" "What did you just volunteer for?" 240>>]
</div>/*#
#desc: manager gives you dress for after-work party
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.volunteeralt = (setup.getCurrentMakeup() != "" && setup.analyzeWornTags(['female','male','unisex']) == 'female' && setup.getItemObjFromType("shoes").hasOwnProperty('heels'))>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.volunteeralt>>
<<=setup.getNpcName('npc_manager', 'formal')>> pauses, her gaze scanning over your body, a smile slowly spreading across her face as her eyes pass over your heels, your feminine garb, and finally your made-up face.<br>
<br>
"@@.npc_manager;Hmm, yes. You really are becoming such a lovely girl... I think this is an opportunity for you to show off. As nice as you look it is not quite appropriate for a fancy soiree, but there is time for you to head home and change into something more appropriate... if you think you can impress me?@@"<br>
<br>
Your heart skips a beat at the way she looks at you...<br>
<br>
"@@.npc_manager;So, are you up to the challenge?@@"<br>
<br>
You pause, you certainly do not own anything more formal than what you have, but certainly the mall would have something? <<if $player.money.total < 100>>Of course that still leaves the question of if you could afford it...<</if>><br>
<br>
"@@.npc_manager;So what will it be, my dear, you want to find something of your own? I would like to get to the party by eight so you have until a quarter to get presentable and return to the office.@@"<br>
<br>
[<<moveTo "event_manager_preparty_4_volunteer" "Say you'll be back dressed for the party." 240 "<<set $scene.find_dress=true>>">>]<br>
[<<moveTo "event_manager_preparty_4_volunteer" "Say you don't have anything appropriate to wear." 240 "<<set $scene.find_dress=false>>">>]
<<else>>
Before you can comment further, she has moved to the wardrobe-like cabinet in the corner of her office. Over her shoulder you can glimpse that most of the clothing within appears to fall into one of two groups — those that are some combination of intimidating red and/or black, and those that are all feminine pink. She searches for only a few moments before returning, carrying a pink dress and holding it up in front of you.<br>
<br>
"@@.npc_manager;Yes, this should do for you quite nicely. Go ahead and return to your office and get changed while I slip into something of my own.@@"<br>
<br>
<<if $player.sec_style.clothing.female=="">>
Walking out of the room, you are in a bit of a daze, still staring at the dress in your hands. Whereas your current outfit could, in the right (lack of) light be considered male, or at least unisex this... this is a woman's dress, and you just committed to wearing it, in public. On autopilot, you close the door to the inner office behind you and take a moment to compose yourself, placing the dress over a chair and inspecting it as you try to psych yourself up to change.
<<else>>
Walking out of the room, you are in a bit of a daze, still staring at the dress in your hands. Even though you're already used to wearing feminine clothes, this party dress is for a formal event, the sort of thing you haven't yet attended since acquiring your new taste in clothes. Holding off from examining the dress just yet, you close the door to the inner office behind you before placing the dress over a chair and inspecting it.
<</if>>
<br><br>
[<<moveTo "event_manager_preparty_4_change" "Examine the dress." 240>>]
<</if>>
</div>/*#
#desc: wish manager luck at after-work party, she offers to pay you to come with
#status: PARTIAL 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell her you are sorry about the forthcoming dull party, but wish her luck nonetheless. You are turning to go when she calls out. "@@.npc_manager;Wait...@@"<br>
<br>
You turn back towards her.<br>
<br>
"@@.npc_manager;You know, I just realised there is an easy solution to part of my problem — you could come with me! Oh, do not worry, it would be considered overtime, beyond the current scope of your responsibilities, so you would be paid... let us say... <<=$player.work.payment>> credits? That seems more than fair, would you agree?@@"<br>
<br>
[<<moveTo "event_manager_preparty_2a_paid_accept" "Accept the offer to be paid to accompany her to the party." 180>>]<br>
[<<moveTo "event_manager_preparty_2a_paid_decline" "Decline her offer to attend the party." 180>>]
</div>/*#
#desc: accept manager's offer to pay you to come with her to after-work party
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.paid = true>>
<<addCredits $player.work.payment>>
<<if $player.sec_style.clothing.female == "">>
<<set $player.sec_style.clothing.female = "money">>
<<set _x = setup.clearThoughtList()>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<</if>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "female">>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=$player.work.payment>> credits is more than fair, indeed, it is basically a full week's pay! And just for a few hours! You quickly accept her offer without thinking twice. Judging by her catlike smile of satisfaction perhaps you may have been too rash...<br>
<br>
"@@.npc_manager;Wonderful, you will get your money at the end of the evening, for now we need to get you ready!@@"<br>
<br>
[<<moveTo "event_manager_preparty_3" "What did you just sign up for?" 240>>]
</div>/*#
#desc: decline manager's offer to pay you to come with her to after-work party
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Although <<=$player.work.payment>> is... quite a bit of money, basically a week's wage, you decline her proposal. She looks disappointed, though, at the same time, she did not exactly make a great "sales pitch" beyond the monetary offer.<br>
<br>
Resigned to her fate she dismisses you to prepare herself for the party.<br>
<br>
[<<moveTo "company_lobby" "Leave.">>]
</div>/*#
#desc: respond to manager's offer to find your own dress for the party.
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.find_dress>>
<<addItem "formal_dress_pink">>
<<set $scene.origFem = setup.getTotalValue('feminization')>>
<<setThreshold 'feminization' 'good_girl' 'office_party'>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 0, 19, 45)>>
<<set _taskCondition = setup.getConditions(_nextDate, ["playerClean", "clothesClean", "fancyMakeup", "fancyFemale", "heels", "atOffice"])>>
<<addTaskById 'party_dress' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.voluntary_failed>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.find_dress>>
She smiles at your suggestion and quickly dismisses you. Planning things out on your way down the elevator you come to the conclusion that, owing to your own miniscule wardrobe, there is only one place to go — the mall. You've been so strapped for cash you haven't really looked for formal wear in you don't know how long, maybe now is the time?<br>
<br>
<<printThought "If I'm going to impress her, I'm going to need a dress and some nice heels, and my makeup had better be perfect as well!">><br>
<br>
[<<moveTo "room_mall" "To the mall!">>]
<<else>>
You apologise for not having anything appropriate to wear to a formal party.<br>
<br>
Instead of being upset she merely nods and continues forward. "@@.npc_manager;Of course, I suppose you really have not had the opportunity to dress up of late, busy with your new job and all. No matter, I have just the thing for you!@@"<br>
<br>
Swiftly moving to the wardrobe-like cabinet in the corner of her office she spends a few moments searching before turning back towards you carrying a pink dress.<br>
<br>
"@@.npc_manager;Yes, this should do for you quite nicely. Go ahead and return to your office and get changed while I slip into something of my own.@@"<br>
<br>
<<if $player.sec_style.clothing.female=="">>
Walking out of the room, you are in a bit of a daze, still staring at the dress in your hands. Whereas your current outfit could, in the right (lack) of light be considered male, or at least unisex this, this is a woman's dress, and you just committed to wearing it, in public. On autopilot, you close the door to the inner office behind you and take a moment to compose yourself, placing the dress over a chair and inspecting it as you try to psych yourself up to change.
<<else>>
Walking out of the room, you are in a bit of a daze, still staring at the dress in your hands. Even though you're already used to wearing feminine clothes, this party dress is for a formal event, the sort of thing you haven't yet attended since acquiring your new taste in clothes. Holding off from examining the dress just yet, you close the door to the inner office behind you before placing the dress over a chair and inspecting it.
<</if>>
<br><br>
[<<moveTo "event_manager_preparty_4_change" "Examine the dress." 240>>]
<</if>>
</div>/*#
#desc: time to goto the party on voluntary path (phone call if fail to show up)
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fromLobby = previous() == "company_lobby" || $player.llocation == "event_manager_preparty_volunteer_dress" || $scene.ran_back>>
<<if $scene.fromLobby>>
<<set $currentTasks.party_dress.finished = false>>
<<set $currentTasks.party_dress.condition = "">>
<<set $scene.voluntary_dress = setup.checkTaskUntimedComplete('party_dress')>>
<<completeTask 'party_dress' $now $scene.voluntary_dress>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<set $scene.voluntary_failed = true>>
<<set $scene.find_dress = false>>
<<addItem "rhinestone_choker">>
<<wearItem "rhinestone_choker" true>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<else>>
<<set $player.location = "Phonecall">>
<<if !setup.checkTaskReason("party_dress","clothesClean")>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if !setup.checkTaskReason("party_dress","playerClean")>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if !setup.checkTaskReason("party_dress","fancyMakeup")>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fromLobby>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.fromLobby>>
You <<if $scene.ran_back>>race<<else>>walk<</if>> into the office to find <<=setup.getNpcName('npc_manager', 'formal')>> standing waiting for you.
<<if $scene.voluntary_dress>>
There is a shared pause as you take one another in. <<=setup.getNpcName('npc_manager', 'formal')>> has traded in her normal work attire for something far more formal, and sexy; the long, narrow black dress taking her normal sultry appearance and cranking it up to eleven. Her tall black-clad figure combines with her red hair to put you in mind of some sort of occult candle, but the demon empress has already been summoned and you are very liable to be burned.<br>
<br>
Though she exhibits better control, you can tell that she is perhaps equally impressed with your own attire, a slight smile and a nod of acknowledgement followed by her breaking the silence.<br>
<br>
"@@.npc_manager;Well, well. You clean up remarkably well, even better than what I had in mind and I am glad you took the initiative to find something of your own.@@"<br>
<br>
You blush slightly at the comment, though hopefully your makeup takes care of hiding most of that.<br>
<br>
"@@.npc_manager;That said... I believe a bit of jewellery would really be the cherry on top.@@"<br>
<br>
She must have been planning this all along because she reveals a sparkling diamond choker and brings it around your throat. The feeling of her closing it around your neck has you tremble slightly.<br>
<br>
Smiling down and admiring your look she finally offers her arm. "@@.npc_manager;Come along, my dear. We have a party to attend.@@"<br>
<br>
Putting your hand gently inside of her elbow as she leads you up the hall towards the elevator. Focusing on walking in your heels, you feel like an excited girl on her way to prom...<br>
<br>
[<<moveTo "event_party_1_1" "Head up to the party." 660>>]
<<else>>
You gawk at <<=ps(setup.getNpcName('npc_manager', 'formal'))>> outfit — she has traded in her normal work attire for something far more formal, and sexy; the long, narrow black dress taking her normal sultry appearance and cranking it up to eleven. Her tall black-clad figure combines with her red hair to put you in mind of some sort of occult candle, but the demon empress has already been summoned and you are very liable to be burned.<br>
<br>
She returns your look of awe with a slight frown.
<<if !setup.checkTaskReason("party_dress","fancyFemale") || !setup.checkTaskReason("party_dress","heels")>>
"@@.npc_manager;I am disappointed, this is... not what I had in mind.@@" You reflexively brace for punishment, but her tone immediately softens. "@@.npc_manager;No matter, I have a suitable matching outfit for you, come.@@"<br>
<br>
[<<moveTo "event_manager_preparty_4_volunteer" "Follow." 30 "<<set $scene.find_dress=false>>">>]
<<else>>
<<if !setup.checkTaskReason("party_dress","clothesClean")>>
"@@.npc_manager;Hmf, a lovely outfit and yet you failed to keep all of your clothing clean... well, I guess nobody will notice them under that lovely dress. Still, quite disappointing.@@"<br>
<br>
<</if>>
<<if !setup.checkTaskReason("party_dress","playerClean")>>
She takes a sniff of you "@@.npc_manager;Did you forget to wash? Very sloppy but... we are out of time.@@" Producing a bottle of perfume she gives you several squirts, "@@.npc_manager;I suppose that will have to suffice, but know that I am quite disappointed that you did not do everything I instructed.@@"<br>
<br>
<</if>>
<<if !setup.checkTaskReason("party_dress","fancyMakeup")>>
<<if(setup.getCurrentMakeup()=="sissy_doll")>>
"@@.npc_manager;As to your lack of makeup... well, while I appreciate you choosing this makeup, it hardly fits a formal event like the one we'll be attending shortly.@@"
<<else>>
"@@.npc_manager;As to your lack of makeup...I suppose you look cute enough naturally to get away with it, but I am disappointed.@@"
<</if>>
<br><br>
<</if>>
Seemingly not satisfied she produces something that sparkles in her hands and steps towards you. "@@.npc_manager;Here, this should help draw attention away from some of your... efforts.@@"<br>
<br>
You stand nervously as she fastens a rhinestone choker around your neck, smiling at you before offering her elbow. You feel like a girl on the way to prom as you place a hand in the crook of her arm and follow her out of the office.<br>
<br>
[<<moveTo "event_party_1_1" "Head up to the party." 660>>]
<</if>>
<</if>>
<<else>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not returning to the office for the party.<br>
<br>
"@@.npc_manager;<<=$player.call>> <<=$player.last_name>>! Where are you? We need to leave soon and I will be very cross if I have to attend stag. Drop whatever you are doing and come back in. Now. Unless you want tonight to mark the conclusion of your employment.@@"<br>
<br>
She hangs up.<br>
<br>
<<printThought "Uh-oh, I had better hurry back to the office...">><br>
<br>
<<if setup.getIndecentValue()==0>>
[<<moveTo 'event_manager_preparty_volunteer_dress' "Race back to the office." 600 "<<set $scene.ran_back = true>>">>]
<<else>>
[@@.link_locked;I'm not wearing enough clothing to head to the office.@@]
<</if>>
<br>
[<<moveTo 'gameover_party' "Tell her you will not be coming in and tender your resignation." 0>>] <<hint $options "This is probably a bad idea.">>
<</if>>
</div>/*#
#desc: examine formal dress and get changed for the party
#status: FINISHED 0.4.0.0
#ignore_spell: pc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if !setup.checkItemOwned('formal_dress_pink')>>
<<addItem "formal_dress_pink">>
<<set $scene.origFem = setup.getTotalValue('feminization')>>
<<if $player.sec_style.clothing.female == "money">>
<<setThreshold 'feminization' 'money' 'office_party'>>
<<else>>
<<setThreshold 'feminization' 'good_girl' 'office_party'>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.forced_variant>>
Once again you find yourself staring
<<else>>
You stare
<</if>>
at the
<<if $scene.origFem > 10>> /* i.e.: you're already dressing female */
cute, but classy, dress
<<elseif $scene.origFem > 7>>
pink, but professional, dress
<<else>>
pink dress. Pink. Dress. So much pink. So much dress. A pink dress
<</if>>
draped over the chair. You take a deep breath and examine it closely, attempting to push your emotions aside and appraise it analytically.<br>
<br>
On the one hand, it appears to be a fairly modest outfit. While it doesn't have a high collar or sleeves, you'd guess that the skirt will cover down over most of your calf. It is a narrow pencil style with a bit of fluting at the bottom dozen centimetres or so, nothing so tight that you would be hobbled, but you will be restricted to short, ladylike steps and there is zero chance anyone could look up it with anything short of a shoe-camera.<br>
<br>
Up top it has a somewhat playful off the shoulder style, but with a wavy neckline
<<if $player.body.breastsize[0] == 0>>
that would serve to obscure your lack of breasts. There is a, to you, useless integrated bra to cover for the strapless collar design precluding wearing a standard bra.
<<elseif $player.body.breastsize[0]>5>>
but you judge it would be insufficient to hide your mammoth breasts; fortunately there does look to be an integrated bra so you'll have support without having to wear a bra and have the straps clash with the open collar design.
<<else>>
that would serve to conceal your breasts, peeking inside it looks like there is an integrated strapless bra, a good thing given that the strapless collar design somewhat precludes wearing a normal bra.
<</if>>
<br><br>
All in all the outfit is quite nice, you would certainly approve of seeing it on a woman, but it also wouldn't turn heads or give any untoward ideas about the wearer.
<<if $scene.origFem > 10>> /* i.e.: you're already dressing female due to voluntary path */
Overall it is a quite pretty outfit, and you will welcome adding it to your wardrobe at the end of the night.<br>
<<elseif $scene.origFem > 7>>
As your first public outing in "full" female attire you could be doing a lot worse...<br>
<br>
<<printThought "And a lot more embarrassing, given some of the other stuff I've had to do.">><br>
<<else>>
You still can't quite wrap your head around wearing it yourself but, well, that seems like what is about to happen.<br>
<br>
<<printThought "How do these things always seem to happen to me?">><br>
<</if>>
<br>
You keep staring at the dress, but it doesn't seem to be changing and there's really nothing left to do but put it on.
<<if setup.getTotalValue('makeup')>0>>
Well, maybe more than one thing to do. If you really choose to go through with this, it might be a good time to put your makeup skills to good use.
<</if>>
<br><br>
<<if setup.getTotalValue('makeup')>0>>
[<<moveTo 'room_do_makeup' 'Use your web-cam at your PC to check your makeup.' 0 '<<set $scene.makeuproom="Changing room">><<set $scene.return_makeuproom="event_manager_preparty_4_change">><<set $scene.makeuproom_image="./images/scenes/makeup_01.png">><<set $scene.return_makeuproomtext="Stand up from your desk.">>'>>]<br>
<</if>>
<<if setup.checkItemTypeTag('stockings', ['female']) && setup.checkItemTypeTag('panties', ['female']) && setup.checkItemWorn('formal_dress_pink')>>
<<if setup.getCurrentMakeup() == "" && $scene.forced_variant>>
[<<moveTo "event_strict_makeup_1" "Go to the party.">>]<br>
<<else>>
[<<moveTo "event_manager_preparty_5_final_prep" "Go to the party.">>]<br>
<</if>>
<<else>>
[@@.link_locked;You cannot go to the party looking like this!@@] <<hint $options "You need to wear the dress given to you, be presentable with stockings and panties, and wear no bra, unless it's strapless.">><br>
<</if>>
<<if $options.ezchange && !setup.checkItemWorn('formal_dress_pink')>>
[<<moveTo "event_manager_preparty_4_change" "Put on the fucking dress, <<=$player.first_name>>." 180 "<<wearItem 'formal_dress_pink' true>>">>]<br>
<</if>>
<<if $scene.forced_variant>>
[@@.link_locked;There's no escaping your fate now, if there ever was.@@]
<<else>>
[<<moveTo "event_manager_preparty_5_flee" "Chicken out and flee the office." 300>>]
<</if>>
</div>/*#
#desc: manager checks makeup in prep for after-work party
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.sec_style.clothing.makeup = "strict">>
<<set $player.makeup.permanent = "normalmakeup">>
<<set $npc_manager.stagevalues[2].makeup = true>>
<<set $shopStatus['mall_wholesale_store'].unlocked_inventory.pushUnique('makeup')>>
<<addNpcTheme 'npc_barista' 'other' 'theme_barista_other_1'
0
'theme_barista_makeup_alt'
true
>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> frowns at your lack of makeup. "@@.npc_manager;No, no... that just will not do. This is a formal affair, and that means that your attire and your makeup must all be, as they say, on point.@@"<br>
<br>
You try to think of a reply but <<=setup.getNpcName("npc_manager","formal")>> suddenly presses something over your face. There is a slight burning, your scream stifled by the suffocating mask... and then a moment later the heat and pressure is removed. She wordlessly turns you face a mirror — you scarcely recognise the beautifully made-up woman staring back at you.<br>
<br>
"@@.npc_manager;It is permanent, by the way, quite a convenience, I should suppose, given that you will now be required to wear makeup as part of your uniform. No, I will hear no objections, you look far better with it on, and you work in a representative position. And, for your part, there is really nothing to complain about, as there is no additional burden given its permanent nature means no required maintenance.@@"<br>
<br>
"@@.npc_manager;And now...@@" She smiles as she produces a pair of court shoes — in patent pink, of course. She places them in front of you, clearly waiting for you to put them on.<br>
<br>
<<if !$player.sec_style.clothing.heels>>
You stare at the heels, somehow shocked by this latest development. Sure they're not the steepest things you've ever worn, but the height combined with the thin tips has you feeling a bit nervous.<br>
<br>
<</if>>
[<<moveTo "event_secretary_style_heels_obedient_1" "They are part of the outfit, put them on." 120>>]<br>
[<<moveTo "event_secretary_style_heels_1" "A dress was one thing, but heels? No." 120>>]
</div>/*#
#desc: manager checks makeup in prep for after-work party
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.female == "">>
<<set $player.sec_style.clothing.female = "obedient">>
<<set _x = setup.clearThoughtList()>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "female">>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
>>
<</if>>
<<set $scene.orgMakeUp = setup.getCurrentMakeup()>>
<<set $scene.orgMessed = $player.makeup.messed>>
<<set $scene.orgHeelValue = setup.getTotalValue("heels")>>
<<setThreshold 'heels' 'heel_training' 'newbie'>>
<<if $scene.orgMakeUp == "nomakeupmakeup" || $scene.orgMakeUp == "">>
<<set $player.makeup.template = "normalmakeup">>
<</if>>
<<if $player.makeup.messed>25>>
<<set $player.makeup.messed = 0>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.voluntary_dress || $scene.voluntary_failed>>
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office. Even having seen her in that dress a few minutes ago you find yourself almost taken aback at her sultry beauty.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office and your jaw about hits the floor. The long, narrow black dress taking her normal sultry appearance and cranking it up to eleven. Her tall black-clad figure combines with her red hair to put you in mind of some sort of occult candle, but the demon empress has already been summoned and you are very liable to be burned.
<</if>>
<br><br>
Her smile has your knees rocking inside your skirt. An expression of pure devouring hunger, the look in her eyes making it clear that she is in total command, and she knows it, moreover she likes it.<br>
<br>
<<if $scene.orgMakeUp != "">>
<<if $scene.orgMessed > 75>>
"@@.npc_manager;Such a pity you have hidden your adorable face under that ghastly makeup disaster... it is almost like you ruined it on purpose? No matter, there is not the time to punish you AND make it in time, so I shall attend to things. Take a seat.@@"
<<elseif $scene.orgMakeUp == "nomakeupmakeup">>
"@@.npc_manager;You look even better in that than I was expecting. But that sad excuse of a makeup on that cute face of yours will simply not suffice. I know, a lot of girls like the natural look of a "no makeup" makeup, but for a social event like this, you need to dress to impress. Here, take a seat and let me help you fix this.@@"
<<elseif $scene.orgMessed > 25>>
"@@.npc_manager;But that cute face of yours, as inexplicably without facial hair it is, needs to be ready for a social event. Which means of course make up — properly, nay, PERFECTLY applied makeup. What you have there, well... your warpaint seems to have suffered battle damage, hmm? Here, take a seat and let me help you fix this.@@"
<<elseif $player.sec_style.clothing.makeup == "strict">>
"@@.npc_manager;Fortunately your makeup is on point... would that we could permanently resolve the REST of your flaws so easily...@@"
<<elseif $npc_manager.stagevalues[2].makeup>>
"@@.npc_manager;Your makeup looks simply lovely, just as expected, and it continues to be precisely what you need to really push that cute face to maximum adorableness, very good.@@"
<<else>>
"@@.npc_manager;You look even better in that than I was expecting. And wearing makeup! So perfect. Does it not just make you feel oh so much more beautiful? You should really consider wearing it all the time, I guarantee that it will make me, I mean, you, much happier.@@"
<</if>>
<br><br>
<<if $scene.orgMakeup == "" || $scene.orgMessed > 25>>
You're led to the couch at the side of the office, only to sit down and look upward, while <<=setup.getNpcName('npc_manager', 'formal')>> starts to apply makeup on your visage like a pro. Is she that good at everything she does? You get suddenly pulled out of this thought, as she pulls out a small hand mirror from her handbag to show you the results of her efforts. You simply gulp at the cute face looking at you, only to realise it's yours.
<<elseif $player.sec_style.clothing.makeup == "strict">>
Even somewhat backhanded, the compliment gives you a slight thrill... followed by a could of foreboding.
<<else>>
Her compliment gives you something of a thrill... a feeling of validation and excitement that leaves you tingling.
<</if>>
<br><br>
"@@.npc_manager;Now for a final few touches.@@"
<<else>>
"@@.npc_manager;You look even better in that than I was expecting. Though it would be better with some proper makeup... maybe you can learn for next time. For now I shall take care of things.@@"<br>
<br>
You're led to the couch at the side of the office, only to sit down and look upward, while <<=setup.getNpcName('npc_manager', 'formal')>> starts to apply makeup on your visage like a pro. Is she that good at everything she does? You get suddenly pulled out of this thought, as she pulls out a small hand mirror from her handbag to show you the results of her efforts. You simply gulp at the cute face looking at you, only to realise it's yours.
<</if>>
<br><br>
Her hand appears from behind her back to reveal that she had been holding a pair of court shoes — in patent pink, of course. She places them in front of you, clearly waiting for you to put them on.<br>
<br>
<<if !$player.sec_style.clothing.heels>>
You stare at the heels, somehow shocked by this latest development. Sure they're not the steepest things you've ever worn, but the height combined with the thin tips has you feeling a bit nervous.<br>
<br>
<</if>>
[<<moveTo "event_secretary_style_heels_obedient_1" "They are part of the outfit, put them on." 120>>]<br>
[<<moveTo "event_secretary_style_heels_1" "A dress was one thing, but heels? No." 120>>]
</div>/*#
#desc: manager gives you shoes and jewellery to finish prep for after-work party
#status: FINISHED 0.8.1.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "rhinestone_choker">>
<<wearItem "rhinestone_choker" true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if !$scene.voluntary_dress>>
You look up from your feet to see <<=setup.getNpcName('npc_manager', 'formal')>> watching intently. You try to straighten up, <<if $scene.orgHeelValue >= setup.getItemObj("court_shoes_pink").heels.difficulty>>standing heels-together at attention.<<elseif $scene.orgHeelValue > 0>>barely balancing in your new footwear.<<else>>wobbling slightly atop the heels.<</if>>
<<if $scene.orgHeelValue<1>>
Shaking her head, <<=setup.getNpcName('npc_manager', 'formal')>> looks at you sadly.<br>
<br>
"@@.npc_manager;Are you trying to tell me in your usual maladroit way, that you have never walked in high heels before? Okay, now listen carefully, this is going to be a very fast introduction into walking in heels, something you should have done ages ago. Consider yourself lucky for your cushioned behind and your prolific pelvis. Your centre of gravity is lower than the usual male one's, almost as if nature was trying to tell you something. Anyway, this will help you to keep your balance better. Have you studied martial arts? I surmise you would have a very powerful stance. Anyway, unlike what you're trying right now you should walk heel to toe. No, now you are just stomping. Heel to toe. Start slowly. Yes, that is it. Now straighten out that spine of yours... imagine if some rope was pulling up on your neck. Now, small, slow steps.@@"<br>
<br>
You manage to take a few steps without stumbling, and after a few minutes even manage to find some rhyme and rhythm to the whole matter.<br>
<br>
"@@.npc_manager;Now do not put your feet next to each other, put them in front of the other, like you are walking along a line or a rope. Yes, that is better. Due to your nice, big hips you are automatically starting to strut. Very nice. Yes, I think you are finally ready!@@"<br>
<br>
<</if>>
<</if>>
She moves closer and you freeze like a prey animal. One gloved hand reaches up to caress your exposed throat as she smiles at you.<br>
<br>
"@@.npc_manager;Hmm, your neck would look so much better with... something around it. Fortunately I have just the thing.@@"<br>
<br>
You remain motionless as she produces a glittering diamond choker that she proceeds to close around your throat before stepping back.<br>
<br>
<<if $scene.forced_variant && $player.sec_style.body.name == "">>
<<=setup.getNpcName("npc_manager","formal")>> smiles at your outfit for a moment... and then her expression turns to a frown. "@@.npc_manager;Hmm, you look so lovely like that... but then I think of the introductions. Of the two of us arriving as <<=setup.getNpcName("npc_manager","other")>> and <<=$player.first_name>>... well, it just does not seem appropriate, given that lovely dress. How about you come up with a better name for the evening?@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm." 30 "<<set $scene.strict_namechange=true>>">>]<br>
<<else>>
[<<link "Enter your name for the evening">><<openDialog "Your name for the evening:" "dialog_selectNameStrict">><</link>>]<br>
<</if>>
[<<moveTo "event_strict_name_abort" "No... that's too much." 60>>]
<<else>>
"@@.npc_manager;Yes... that will suffice... for the time being.@@"<br>
<br>
You aren't sure what to make of that comment as she walks past you and opens the door out to the hallway.<br>
<br>
"@@.npc_manager;Come along now. The party is up in the penthouse, we had best arrive soon.@@"<br>
<br>
Gulping and mindful of the choker snug around your throat, you manage to remember how to move.
<<if setup.getTotalValue("heels") > setup.getItemObj("court_shoes_pink").heels.difficulty>>
You gracefully walk towards her and she
<<elseif setup.getTotalValue("heels") == 0>>
Swaying unevenly atop your heels you walk towards her. She
<<else>>
You carefully walk towards her and she
<</if>>
offers you an arm and you reflexively take it<<if setup.getTotalValue("heels") < setup.getItemObj("court_shoes_pink").heels.difficulty>> for balance<</if>> as she leads you towards the elevator.<br>
<br>
[<<moveTo "event_party_1_1" "Head up to the party." 660>>]
<</if>>
</div>/*#
#desc: strict forced name
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You state firmly that you are happy with the name you have. <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows. "@@.npc_manager;I was not offering you a choice. Consider it a kindness that I am allowing to choose your name for the evening, but you are going to come up with something more suitable for that dress. Now.@@"<br>
<br>
<<if $options.isMobile>>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>><br>
<br>
[<<moveTo "event_manager_daily_check_stage_2_3_female_secretary_3" "Confirm." 30 "<<set $scene.strict_namechange=true>>">>]<br>
<<else>>
[<<link "Enter your name for the evening">><<openDialog "Your name for the evening:" "dialog_selectNameStrict">><</link>>]<br>
<</if>>
</div>/*#
#desc: dialog box for choosing your name on strict path
#status: WRITTEN 0.8.5.0
#*/
<center>
<<textbox "$scene.sissyname" "" autofocus>> <<textbox "$scene.lastname" $player.last_name>>
</center>
<br>
<<set $scene.strict_namechange=true>>
@@.textRightSide;
<<button "Confirm">>
<<moveTo 'event_manager_daily_check_stage_2_3_female_secretary_3'>>
<<script>>
Dialog.close();
<</script>>
<</button>>@@/*#
#desc: try to run away before after-work party
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = "Phonecall">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.clothing.female == "">>
<<set $player.sec_style.clothing.female = "forced">>
<<set _x = setup.clearThoughtList()>>
<<if !$player.locations.bodyshop>>
<<set $player.locations.bodyshop = true>>
<<set $player.flags.bodyshop_unlock = "female">>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('designer')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('maid')>>
<<set $shopStatus['mall_lingerie_shop'].unlocked_inventory.pushUnique('latex')>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('latex')>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_12'
12
'event_psychiatrist_session_manager_feminine_clothes'
false
>>
<</if>>
<<set $npc_manager.flags.party.flee = true>>
<<set $scene.forced_variant = true>>
<<incrementEmotion 'anger' 'npc_manager' 10>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are halfway across the lobby when you get a phone call. It is from <<=setup.getNpcName('npc_manager', 'formal')>>. Your heart catches in your throat and you consider making a run for it, only to look up and spot a security guard walk in front of the door. You think it is a coincidence, until <<he>> stares you down and gestures ominously towards your ringing phone. You gulp and answer.<br>
<br>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>! Where the hell did you go? You made a commitment and I expect you to STICK to that commitment. Get back up here and get dressed. NOW!@@"<br>
<br>
You wince as she slams the phone in your ear, a glance towards the exit finds the refrigerator-shaped guard now pointing back towards the elevator.<br>
<br>
<<printThought "Looks like I don't have a choice...">><br>
<br>
You turn around and return to the elevator.<br>
<br>
[<<moveTo "event_manager_preparty_4_change" "Go back upstairs.">>]
</div>/*#
#desc: accompany manager on the way to after-work party and meet doorperson
#status: FINISHED 0.4.0.0
#ignore_spell: rsvp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "You're out in public with your <<=setup.getNpcName('npc_manager', 'title')>>!">>
<<set $npc_manager.flags.party.first_attend = true>>
<<if $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastityKey')>>
<<set $npc_manager.flags.partyKeptKey = true>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<<if ($npc_manager.affection+$npc_manager.affection)>$npc_manager.anger && !$scene.strict_namechange>>
<<set $scene.sentHome = false>>
<<else>>
<<set $scene.sentHome = true>>
<<removeItem 'rhinestone_choker' true>>
<<deleteItem 'rhinestone_choker'>>
<</if>>
<<if $player.sec_style.clothing.female == "money">>
<<addCredits $player.work.payment>>
<</if>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('formal')>>
<<set $shopStatus['mall_shoe_store'].unlocked_inventory.pushUnique('formal')>>
<<if $scene.strict_namechange>>
<<set $player.sec_style.body.name = "strict">>
<<addWorkEvent 'cunnilingus_intro'>>
<<if !$player.sec_style.body.identify_fem>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 9, 0, false)>>
<<addWorkEvent "identity_work" _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Outside Upper Event Room on 99th floor">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_ceremonial_hall.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
Nervously standing next to <<=setup.getNpcName('npc_manager', 'formal')>> as the elevator goes, up, and up, and up, you try to avoid staring at your reflection in the polished door.<br>
<br>
<<printThought "Is that really me? Do I really look that good?">><br>
<br>
Slightly distracted, you almost trip hurrying to catch up as your manager disembarks on the 99th floor. You've never been remotely this high in the building and the hallway looks more like a swanky hotel than an office. Making your way up the hall, you stop in front of a hostess who smiles and gives a small bow towards your manager.<br>
<br>
"@@.generic_female1;Ah, welcome back <<=setup.getNpcName('npc_manager', 'Mistress')>>.@@"<br>
<br>
<<if !$player.sec_style.body.name || $scene.strict_namechange>>
<<printThought "Wait, did she just say Mistress, what?">><br>
<br>
<</if>>
"@@.npc_manager;... and guest.@@" your manager adds only for a look of concern to appear on the hostess' face.<br>
<br>
Looking even more worried, she taps on her tablet for a bit before swallowing nervously and responding. "@@.generic_female1;I am very sorry, but your reservation did not mention a plus one. I really do apologise for this, but without writing ahead the party isn't ready to handle this.@@"<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows as your previous butterflies turn to stone and drop like rocks into the pit of your stomach.<br>
<br>
<<printThought "RSVP? I didn't know I needed to do that...">><br>
<br>
<<if $scene.strict_namechange>>
You suppress a sigh of relief that you won't be attending this stupid party after all as <<=setup.getNpcName('npc_manager', 'formal')>> takes a deep breath and turns to you.<br>
<br>
"@@.npc_manager;And after all that work! This is quite the disappointment... come, I will take you back to the elevator and you can go home while I attend this damnable party stag.@@"<br>
<br>
You're so relieved to feel her remove the choker and realise that you will be escaping that you don't remember that you're still wearing the dress and the rest until you're in the elevator and the doors are about to close.<br>
<br>
"@@.npc_manager;Oh, and <<=$scene.sissyname>>? Yes, that sounds so much better than what I was calling you before... I will attend to the paperwork of making it official. Yes, <<if $fetish.sissy>>SISSI <</if>>Secretary <<=$scene.sissyname>> <<=$scene.lastname>>... perfection... oh, and speaking of better, well... I think Mrs. is a bit informal. Starting tomorrow morning my name is <<=setup.getNpcName("npc_manager","custom", "Mistress")>> to you...@@"<br>
<br>
Your jaw drops in shock, the elevator door closing before you can conjure a response, whisking you downstairs, your very name yet another thing stolen away by <<=setup.getNpcName("npc_manager","formal")>> <<printThought "No... that's <<=setup.getNpcName('npc_manager','custom','Mistress')>> <<=setup.getNpcName('npc_manager','last')>> now...">> and the company...<br>
<br>
[<<moveTo "room_foyer" "Flee home... maybe if you get online fast enough you can undo this... somehow?" 630 "<<set $player.original_first_name=$player.first_name>><<set $player.first_name=$scene.sissyname>><<set $player.original_last_name=$player.last_name>><<set $player.last_name=$scene.lastname>><<set $npc_manager.call='Mistress'>><<set $npc_manager.title='Mistress'>>">>]
<<elseif !$scene.sentHome>>
You start to apologise to <<=setup.getNpcName('npc_manager', 'formal')>> for neglecting your duties, but she cuts you off with a wave of the hand.<br>
<br>
"@@.npc_manager;No, my sweet <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, you did nothing wrong. No, it would appear that someone else was not properly... prepared for this eventuality.@@"<br>
<br>
She turns back to the hostess and surprises you as she continues.<br>
<br>
"@@.npc_manager;If you would kindly inform <<=setup.getNpcName('npc_boss', 'formal')>> that I will not be attending tonight's soiree? I just will not abide abandoning my sweet secretary after she went to such trouble to get dressed special for the occasion.@@"<br>
<br>
The hostess curtsies submissively, though you have a feeling she isn't looking forward to relaying the message. "@@.generic_female1;Of course, Mistress. All of us here apologise that things were not prepared for you and we will do what we can to be ready for next time.@@"<br>
<br>
"@@.npc_manager;See that you do. Now then, <<=$player.first_name>>, come along, there is a nice little cocktail lounge on ninety-three...@@"<br>
<br>
<<printThought "Wait... did she just blow off the party... for me?">><br>
<br>
[<<moveTo "event_party_1_1_bar" "You hurry to catch up as she walks back to the elevator." 9720>>]
<<else>>
You start to apologise to <<=setup.getNpcName('npc_manager', 'formal')>> for neglecting your duties, but she cuts you off with a wave of the hand.<br>
<br>
"@@.npc_manager;No, no, this was not your fault my adorably disobedient secretary. No, there are others to blame for not being properly... prepared for this eventuality. Well, I am sure they will attend to it in time, but for now it means that you will just have to miss out on the party...@@"<br>
<br>
Stepping away from you she turns back as the hostess holds the door, you can barely peek past to see a quite ostentatious ballroom beyond.<br>
<br>
As if remembering something <<=setup.getNpcName('npc_manager', 'formal')>> turns back, reaching out a hand.<br>
<br>
"@@.npc_manager;Your necklace, please.@@"<br>
<br>
Hurriedly you remove your choker and hand it over.<br>
<br>
"@@.npc_manager;A bit unsafe for a pretty little thing to wear that home this late in the day. Well, try not to get lost on the way back to the elevator, I will see you tomorrow... oh... and your attire? Yes, you look far too good in that dress to go back, I expect to see you in fully female clothing from now on, good night!@@"<br>
<br>
You stand there in a daze until the subtle glances from the hostess remind you that you really do not belong on this floor unaccompanied.<br>
<br>
[<<moveTo "room_foyer" "You hurry back to the elevator and head home." 60>>]
<</if>>
</div>/*#
#desc: goto bar instead of after-work party with manager
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.party.ditch = true>>
<<setTmpEffect 'tipsy'>>
<<set $scene.enableFemSecretary = !$npc_manager.stagevalues[2].femalesecretary>>
<<set $npc_manager.stagevalues[2].femalesecretary>>
<<set setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = "98th Floor Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cocktail_lounge.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
The cocktail lounge is just as your manager said — quiet and classy, far nicer than any bar you've ever been to on your own.<br>
<br>
<<printThought "Wow, it's like there's a whole city in this building...">><br>
<br>
Taking a seat at a corner table with a gorgeous view out over the city, you are surprised when the waitress arrives and you recognise your "old friend" <<=setup.getNpcName('npc_barista', 'first')>> from Cafe 52! You can't quite decide if her skimpy cocktail dress is more or less slutty than her normal maid attire, probably about the same, and it looks to be made of the same rubbery material to boot.<br>
<br>
"@@.npc_barista;What can I get you to drink this eve—@@" She stops, her eyes going wide as she fixates on you with excitement and... is that... attraction? "@@.npc_barista;Oh, hiya! I like LUUUUURRRVVVVEEE that dress! What are you doing way up here?@@"<br>
<br>
You quickly glance across at <<=setup.getNpcName('npc_manager', 'formal')>>, but she just smiles and gives a nod to grant you permission to respond. You explain the mix-up at the party and then ask what <<=setup.getNpcName('npc_barista', 'first')>> is doing up here instead of her normal job.<br>
<br>
"@@.npc_barista;Would you believe, like, the same thing? Normally I'd be having fun at my other job right now, but noooo someone called in sick so they're short waitresses for the party, so one of the cocktail girls gets volunteered and before you know it, bing, bang, boom, I end up with an extra shift here! Oh well, what can I, like, get you to drink?@@"<br>
<br>
<<printThought "I wonder if being short-staffed is why they couldn't let me in? I mean, one person seems pretty minor, what with <<=setup.getNpcName('npc_manager', 'formal')>> being Director of HR and everything...">><br>
<br>
"@@.npc_manager;I will have a Macallan. Fifty years, neat. You?@@"<br>
<br>
Hearing her order steals your voice, you aren't exactly an expert on liquor; you're a cheap drunk and you freely admit to being fine with what is basically swill, but you're pretty sure what she just ordered is worth more than anything you've ever drank... combined.<br>
<br>
You try to sputter a response, but your manager cuts in with a smile.<br>
<br>
"@@.npc_manager;She will have a strawberry daiquiri.@@"<br>
<br>
"@@.npc_barista;Oh, that's, like, my favourite, too!@@"<br>
<br>
<<=setup.getNpcName('npc_barista', 'first')>> scampers off to retrieve the order and <<=setup.getNpcName('npc_manager', 'formal')>> looks across at you with a catlike smile. "@@.npc_manager;So... now that we are off the clock, as it were, how are things with my favourite secretary?@@"<br>
<br>
Even as your heart flutters at her kind words, you struggle to find something to say. Normally things are so straightforward — she's the boss, you're the <<if $fetish.sissy>>SISSI <</if>>Secretary, you do what she says, here, though, while you feel no less subservient it's different, exciting and scary in equal measure...<br>
<br>
<<if setup.hasThreshold('smart', 'online_university', 'beginner') ||
setup.hasThreshold('smart', 'online_university', 'intermediate') ||
setup.hasThreshold('smart', 'online_university', 'advanced') ||
setup.hasThreshold('smart', 'online_university', 'expert')>>
You finally manage to come up with something, mentioning that you've started to take some classes online.<br>
<br>
"@@.npc_manager;Oh, you do just continue to impress, well, bettering oneself is always good.@@"<br>
<br>
You thank her for the compliment as your drinks arrive.
<<elseif setup.getTotalValue("gaming") > 10>>
You explain that you've been mostly working and relaxing playing video games.<br>
<br>
"@@.npc_manager;Hmm, well, if that interests you, I suppose that is fine.@@"<br>
<br>
You can tell she's humoring you and you're glad that your drinks arrive as a distraction.
<<else>>
You realise that you really haven't been doing much that you can think of to talk about, mumbling something about "stuff," grateful when your drinks arrive to provide a distraction.
<</if>>
<br><br>
<<=setup.getNpcName('npc_barista', 'first')>> places your drinks down with a smile, leaning over so that you can't help but get a view of her ample cleavage.<br>
<br>
"@@.npc_barista;Like, here you go! Enjoy!@@"<br>
<br>
You nod in thanks, staring at your very red drink as <<=setup.getNpcName('npc_manager', 'formal')>> swirls her scotch before taking a slow sip and smiling.<br>
<br>
"@@.npc_manager;Come on, I did not invite you up here to drink alone!@@" She says with a smile as you hurriedly take a sip.<br>
<br>
It's sweet, and fruity and... good? You never would have thought of ordering something like this before but... it's pretty tasty, you take another sip and thank her for inviting you out.<br>
<br>
Perhaps it's just the booze working its magic, but your manager starts opening up a bit and you have a remarkably pleasant chat, learning a bit more... though, not really anything specific, about how complicated and stressful her responsibilities are — from the sound of it she hasn't been out after work in months...<br>
<br>
The evening flies by as you feel the warm fuzziness of multiple drinks flow through you. For her part, <<=setup.getNpcName('npc_manager', 'formal')>> seems hardly affected, despite slamming back more hard liquor than you drink of your fruity concoctions. Finally it is time to go, your manager helping you out of your choker before escorting you down to the lobby.<br>
<br>
"@@.npc_manager;That was nice, maybe next time you can do a bit more of the talking? As pretty of a thing as you are, I would love to have a more comprehensive understanding of what it is that makes you tick.@@"<br>
<br>
She taps your forehead with a single finger, her warm touch sending sparks through your body and having you blushing.<br>
<br>
<<if $player.sec_style.clothing.female == "obedient">>
"@@.npc_manager;Anyway, I will see you tomorrow and having now seen you in that dress... well, it would be a crime to cover up your loveliness with dull androgynous attire. No, you can consider your dress code to be female top to bottom, inside and out.@@"
<<elseif $scene.enableFemSecretary>>
"@@.npc_manager;Anyway, I will see you tomorrow and having now seen you in that dress... well... I hope you take it as a lesson though, failing that I may just need to adjust the requirements for your work uniform. It would be a crime to cover up your loveliness with dull androgynous or male attire.@@"
<<else>>
"@@.npc_manager;Anyway, I will see you tomorrow and having now seen you in that dress... I think we both know that I made the right call, when I adjusted the requirements for your work uniform. It would be a crime to cover up your loveliness with dull androgynous or male attire.@@"
<</if>>
<br><br>
Turning with a smile, she walks out of the elevator before you can respond.<br>
<br>
[<<moveTo "event_party_1_1_head_home" "Head home." 630>>]
</div>/*#
#desc: head home after spending night at upper floor bar with manager
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'rhinestone_choker' true>>
<<deleteItem 'rhinestone_choker'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
<<if ["enthusiast","voluntary"].includes($player.sec_style.clothing.female)>>
You're riding the elevator down when you really get a good look at your reflection in the polished steel. Your jaw almost drops — from the makeup to the stunning dress... you look utterly amazing. You're as entranced by the feminine beauty before you as you are excited by each time you remember that it's YOU you're looking at.<br>
<br>
By the time the doors open onto the lobby you're wearing a wide smile, feeling almost euphoric as you cross the lobby and leave the building.<br>
<br>
[<<moveTo "room_foyer" "Head home." 630>>]
<<else>>
You're already on your way down the elevator when you realise that you're still wearing the VERY feminine dress from the party you were unable to attend. You gulp, but the doors open and you find yourself looking out at the lobby with no alternative but to head through and go home still wearing the formal outfit...<br>
<br>
[<<moveTo "room_foyer" "Hurry through the lobby and head home." 630>>]
<</if>>
</div>/*#
#desc: phase 3 morning, call from manager if late
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcAtOffice">>
<<set $scene.oldOffice = $scene.beforetasklocation && setup.inPassageTag($scene.beforetasklocation.last(),"cds_office")>>
<<if !$scene.at_office>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if !$scene.elevator>>
<<set $npc_manager.criticalanger+=1>>
<<set $scene.stressStuck = $player.timebased.stress >= 75 && setup.getWillpower() == 0 || $player.timebased.stress >= 90 && setup.getWillpower() <= 1>>
<<if $scene.stressStuck && $npc_manager.criticalanger > 0 && $npc_manager.criticalanger <= 2>>
<<gainWillpower 1>>
<</if>>
<<applyStress 10>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<if $scene.elevator || $scene.oldOffice || $scene.beforetasklocation && $scene.beforetasklocation.last() == "company_lobby">>
<<set $scene.directInspection = true>>
<</if>>
<<set $currentcall = true>>
<<else>>
<<if $scene.directInspection>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<include "inspectionData_gasmask">>
<<useClothSetPush 'daily_evaluation_clothes'>>
<<set $scene.uniform_upgrade = setup.calcUniformUpgrade()>>
<<if $scene.uniform_upgrade != "">>
<<initRoom>>
<<moveTo "event_manager_check_uniform_upgrade">>
<</if>>
<<set $scene.compareVisuals = setup.compareVisual($player,'npc_manager',$npc_manager)>>
<<set $scene.genital_change = setup.changedGenitals($player,$npc_manager, true)>>
<<if $scene.genital_change == "all" || $scene.genital_change == "penis">>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<</if>>
<<storeVisual $player $npc_manager>>
<<if $player.work.startTime == 0>>
<<set $player.work.startTime = $now>>
<</if>>
<<if $player.work.startTime.getUTCHours() == 8 && $player.work.startTime.getUTCMinutes() == 0 && !$scene.workEarly>>
<<set $scene.preciselyOnTime = true>>
<</if>>
<<set $scene.calcOutfit = true>>
<<include inspectionData_clothes>>
<<include inspectionData_cleanClothes>>
<<include inspectionData_cleanBody>>
<<set $scene.fixMakeupIfWrong = false>>
<<include inspectionData_makeup>>
<<include inspectionData_shoes>>
<<include calculateMilkEvent>>
<<include inspectionData_underwear>>
<<include inspectionData_chastity>>
<<include inspectionData_plug>>
<<include calculateAslut>>
<<set $currentTasks.manager_morning_inspection_task.condition="">>
<<set $scene.passed = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<if $scene.passed>>
<<set $currentTasks.manager_morning_inspection_task.condition="Complete">>
<<else>>
<<include "inspectionData_workSlutty">>
<<if !$scene.bimboPassed>>
<<include "inspectionData_workFormal">>
<<if !$scene.formalPassed>>
<<include "inspectionData_workNearOffice">>
<</if>>
<</if>>
<</if>>
<<set $scene.forcedCleaning = !setup.checkTaskReason("manager_morning_inspection_task","clothesClean") || !setup.checkTaskReason("manager_morning_inspection_task","playerClean")>>
<<set $scene.takeKey = $npc_manager.flags.require_chastity && $player.sec_style.submission.permanent_key == "" && ($scene.forgot_cage || $scene.forgot_cage_key) && !$npc_manager.flags.playerstayedinchastity && ($npc_manager.trigger.forgotten_cage > 3 || $npc_manager.trigger.forgotten_key > 3) && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
<<set $scene.reassignBedHeels = setup.checkItemOwned("thigh_highs_pink") && setup.getTotalValue("heels") < 15 && State.hasPlayed("event_manager_daily_check_thigh_highs_pink") && !$scene.firstAslutHeels>>
<<if $npc_manager.flags.uniform_upgrade.bed_heel_punish || $scene.reassignBedHeels>>
<<set $npc_manager.flags.sent_bed_selfie = false>>
<<set _nextDate = setup.setNextDate($now, 0, 23, 50)>>
<<addTaskById 'bed_heels_photo' _nextDate>>
<</if>>
<</if>>
<<set $scene.pinkODfirst = !$npc_manager.flags.seenMkOneOD && $player.hair.style == 'long_open' && $player.hair.color == 'blonde' && $player.flags.pink_pill.times_od1 > 0 && setup.hasTmpEffect('sissypill_mk1_od')>>
<<if $scene.pinkODfirst>>
<<set $npc_manager.flags.seenMkOneOD = true>>
<</if>>
<<if $scene.passed>>
<<set $npc_manager.stagevalues[3].inspectionStreak += 1>>
<<else>>
<<set $npc_manager.stagevalues[3].inspectionStreak = 0>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.at_office>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location = "Phonecall">>
<</if>>
<<if $scene.at_office>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.at_office>>
<<if setup.checkItemWorn("locking_plug")>>
<<=setup.getNpcName("npc_manager","formal")>> grins. "@@.npc_manager;Now, I believe I locked something in that lovely hiney of yours?@@"<br>
<br>
You bite your lip and nod, having been unable to forget the presence of the plug for more than a few moments since <<=setup.getNpcName("npc_manager","formal")>> stuffed and locked you full.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> has you bend over and she unlocks and removes the plug... only to replace it with another. "@@.npc_manager;There we go. A <<if $fetish.sissy>>SISSI <</if>>Secretary of your stature should always be occupied, and with a remote-capable device so that I can administer punishment, or reward instantly and efficiently.@@" As she talks you gasp as the plug shocks you painfully... and then it thrums pleasantly causing you to moan. "@@.npc_manager;I shall expect you to be suitably equipped as with any other uniform requirement, now, let us move on to the rest of your inspection...@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_1" 'Continue.' 60 '<<removeItem "locking_plug" true>><<deleteItem "locking_plug">><<addItem "remote_control_plug">><<wearItem "remote_control_plug" true>>'>>]
<<elseif $scene.genital_change != "" && !($player.body_ref.penis && $npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none') && !setup.hasTmpEffect('drug_dick')>>
<<include "inspectionText_gasmask">>
<<=setup.getNpcName("npc_manager","formal")>> pauses, a puzzled look on her face as she looks at your crotch. "@@.npc_manager;What did you—? Take off your clothes, I want a proper view of what is going on down there.@@"<br>
<br>
<<printThought "This must be about my surgery... how can she tell through clothes?">><br>
<br>
[<<moveTo "event_inspection_genitals_1" 'Do as she commands.' 300 "<<set $scene.cleaningReturn='event_manager_daily_check_stage_3_1'>>">>]
<<else>>
<<if $scene.aslutoverride>>
With a nod, <<=setup.getNpcName('npc_manager', 'formal')>> takes a step back and begins your normal inspection.
<<elseif $scene.preciselyOnTime>>
As you rush in the door of the office, you find <<=setup.getNpcName('npc_manager', 'formal')>> standing with phone in hand. Slowly checking the time she stares at you for a moment and then nods.<br>
<br>
"@@.npc_manager;<<if $options.militaryTime>>8:00<<else>>Eight o'clock<</if>> on the nose... A good secretary would aim to be early to set herself up for a more productive day, but you did walk through the door on time... technically.@@"
<<elseif $scene.directInspection>>
You rush through the door a few minutes late to find <<=setup.getNpcName('npc_manager', 'formal')>> waiting for you. You try to explain that the elevator was slow, but she cuts you off with a wave of her hand. "@@.npc_manager;We are already running late, no need to waste time with more excuses let us merely proceed with your inspection.@@"
<<else>>
Your daily routine is becoming more efficient the longer you work as a secretary. You start getting ready for your workday by organising your office utensils, booting up your laptop and getting a nice, big cup of hot, steamy coffee. Dead on the hour, <<=setup.getNpcName('npc_manager', 'formal')>> appears in the doorway of her office.
<</if>>
<<include "inspectionText_gasmask">>
<br><br>
<<if $scene.passed && (!$player.sec_style.body.breasts && setup.checkItemTypeWorn("corset") && $player.timebased.tightlacing >= 90 && !State.hasPlayed("event_secretary_style_breasts_work_1"))>>
<<=setup.getNpcName('npc_manager', 'formal')>> eyes run up and down your body and she smiles. "@@.npc_manager;Mmm, that corset is doing WONDERS for your figure only...@@".<br>
<br>
[<<moveTo "event_secretary_style_breasts_work_1" "Only... what?" 180 '<<set $scene.inspectionReturn="event_manager_daily_check_stage_3_finalize">>'>>]
<<elseif $scene.passed && $npc_manager.stagevalues[3].inspectionStreak >= 3 && !$scene.pinkODfirst && !$scene.milkEvent && !$scene.managerPanties && !$scene.autoLacing && !$scene.firstAdvCage && !$npc_manager.flags.uniform_upgrade.bed_heel_punish && !$scene.differentCage && !($player.sec_style.body.boiless == "strict" && $player.flags.mealplan.base != "boiless")>>
<<if !$npc_manager.flags.uniform_upgrade.bed_heel_punish && $scene.reassignBedHeels>>
"@@.npc_manager;Firstly, thank you for keeping me up-to-date on your nightly heel training. That said it appears that you could benefit with some additional drilling, so I will be requiring another picture tonight, do not forget!@@"<br>
<br>
<</if>>
<<if $scene.aslut1>>
<<=setup.getNpcName('npc_manager', 'formal')>> seems about to wave the inspection yet again, and then she pauses, her smile blossoming with pride.<br>
<br>
[<<moveTo "event_aslut_1_complete_1" "What does she want?" 360 "<<set $scene.skipInspection=true>>">>]
<<elseif $player.flags.collar.collarId != "" && $player.flags.collar.owner != "npc_manager" && !$player.flags.collar.managerAck>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze alights on your throat.<br>
<br>
<<include "managerCollarDescription">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_1" 'Continue.' 60 "<<set $player.flags.collar.managerAck=true>>">>]
<<elseif $player.sec_style.submission.collar == "" && setup.checkItemWorn("obedience_collar") && !State.hasPlayed("event_enthusiast_collar_1")>>
<<=setup.getNpcName("npc_manager","formal")>> seems about to skip your inspection only for her gaze to linger on your heavy collar. "@@.npc_manager;You know that is merely for sleep security, right?@@"<br>
<br>
[<<moveTo "event_enthusiast_collar_1" "It's her collar... why would you stop wearing it?" 300 "<<set $scene.collar=true>>">>]<br>
[<<moveTo "event_enthusiast_collar_1" "You just like wearing it." 60 "<<set $scene.collar=false>>">>]
<<elseif $player.work.advance > 0>>
<<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;Wonderful, I can see that you, once again, have perfectly followed my instructions. That just leaves the matter of your agreed upon maintenance spanking.@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<set $scene.skipSpankIntro=true>>
<<include "stage3AdvanceSpanking">>
<<elseif $fetish.hair_growth && $player.body.facialhair >= 1>>
<<=setup.getNpcName("npc_manager","formal")>> eyes narrows as she looks at your chin. "@@.npc_manager;Is that... stubble? No, no, no. You work in a representative position, how can you defile your lovely face with such un-representative, ugliness? A <<if $fetish.sissy>>SISSI <</if>>Secretary should be smooth and beautiful not... rough.@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_1">>
[<<moveTo "event_secretary_style_facial_hair_1" "Apologise for forgetting to shave." 60 "<<set $scene.beard=false>>">>]<br>
[<<moveTo "event_secretary_style_facial_hair_1" "Actually, you were thinking of growing a beard." 60 "<<set $scene.beard=true>>">>]
<<elseif $fetish.hair_growth && $player.sec_style.body.hair_face && !$player.sec_style.body.hair_body && !State.hasPlayed("event_secretary_style_bodyhair_intro_1")>>
<<=setup.getNpcName('npc_manager', 'formal')>> pauses, a curious smile on her face.<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_intro_1" 'Wait to see what she wants.' 60>>]
<<elseif $scene.bimboPassed>>
<<set _takechastitykey = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head. "@@.npc_manager;I realise that I have granted you permission to work in a more... lascivious style, but I would much prefer you kept in mind that you remain in a representative position. I am afraid that, given your current attire, you will be quite restricted in how you can work today. Still, it is your choice to make.<<if _takechastitykey>> Now turn over the key to your chastity and you may return to work.<</if>>@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "<<if _takechastitykey>>Turn over the key and start<<else>>Start<</if>> working." 360>>]
<<elseif $scene.formalPassed>>
<<set _takechastitykey = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks at you with a slight smile. "@@.npc_manager;Expecting a special occasion? No, that outfit is a bit TOO formal for day to day duties... but I suppose there is no harm in you classing up the joint?.<<if _takechastitykey>> If you would kindly turn over the key to your chastity and you may return to work.<</if>>@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "<<if _takechastitykey>>Turn over the key and start<<else>>Start<</if>> working." 360>>]
<<elseif $npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none'>>
There is a slight twinkle in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> eye as if she is harboring some sort of secret as she smiles and states "@@.npc_manager;hmm, I know you have been behaved for the last while... but I feel like doing a full inspection today, come along.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_1" "Submit to a full inspection.">>]
<<elseif $scene.hasAdvKey && $currentTasks.hasOwnProperty("task_chastity_trial") && $currentTasks.task_chastity_trial.condition == "Complete" && !$npc_manager.flags.took_adv_key>>
<<=setup.getNpcName('npc_manager', 'formal')>> grins. "@@.npc_manager;So, about the end of that chastity trial...@@"<br>
<br>
[<<moveTo "event_work_adv_key" "Continue.">>]<br>
<<else>>
<<set _takechastitykey = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;Wonderful, I can see that you, once again, have perfectly followed my instructions. I will waste no more of your time, then, <<if _takechastitykey>>merely accept your chastity key <</if>>and wish you a good day while you continue working.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_1" "Submit for a full inspection anyway.">>]<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "<<if _takechastitykey>>Turn over the key and start<<else>>Start<</if>> working." 360>>]
<</if>>
<<elseif $scene.aslut1 && !$scene.differentCage>>
She lingers on your outfit, her gaze tracing all the way across your body as her smile widens.<br>
<br>
[<<moveTo "event_aslut_1_complete_1" "What does she want?" 360 "<<set $scene.skipInspection=true>>">>]
<<elseif $scene.forcedCleaning>>
Taking a deep whiff she frowns with deep annoyance, sniffing in disgust at your lack of cleanliness.<br>
<br>
[<<moveTo "event_work_cleaning_1" 'Continue.' 60 "<<set $scene.cleaningReturn='event_manager_daily_check_stage_3_finalize'>>">>]
<<elseif $scene.pinkODfirst>>
Walking out of her office, <<=setup.getNpcName("npc_manager","formal")>> stops short the instant she lays eyes on you. "@@.npc_manager;What the...@@" you brace for a rebuke, but her smile is one of mild amusement as she shakes her head. "@@.npc_manager;How many pills did you take?@@"<br>
<br>
<<if $player.flags.drugs.breast > 0>>
You, somewhat awkwardly, explain that, actually, it was a drug <<=setup.getNpcName("npc_work_doctor","formal")>> gave you called <<=setup.getItemName("drug_breast")>>.<br>
<br>
"@@.npc_manager;I see... well, far be it from me to contradict a medical expert but... I think you may wish to exercise a bit more prudent caution in what you ingest. As you have found they can have quite striking effects, and that sort of thing can be... hard on your body. With that warning out of the way, shall we continue on to normal business?@@"<br>
<br>
You nod.
<<else>>
You blush and reply that you only took two and she nods knowingly.<br>
<br>
"@@.npc_manager;Two... you mean double the prescribed dose? And with you seemingly so naturally susceptible... well, I cannot say I dislike the results. Your hair is stunning, a golden treasure some women would kill for and your breasts... <<if setup.getEffectiveBreastSize() == 6>>well, they seem to perfectly balance out your womanly hips<<elseif setup.getEffectiveBreastSize() > 6>>well, they are a little large for your frame, but I think it works<<elseif setup.getEffectiveBreastSize() == 0>>well... it's a bit of a surprise really, I would have anticipated them to develop along with that hair, but I suppose going off label can have unexpected results<<else>>well, to be honest, they are a little smaller than I might have expected, but I am sure they will fill out in time.<</if>>.@@"<br>
<br>
She walks closer and takes a more serious tone "@@.npc_manager;Now, though I am not angry with you, I want you to promise to take more care in the future — as you have seen those pills are quite potent and I do not want you inviting disaster by taking too many or mixing them with alcohol or anything. With that warning out of the way, shall we continue on to normal business?@@"<br>
<br>
You nod, unsure if her warning was an actual order or a sly invitation...
<</if>>
<br><br>
<<include inspectionText_clothes>>
<<include inspectionText_cleanClothes>>
<<include inspectionText_shoes>>
<<include inspectionText_cleanBody>>
<<if $scene.gender == "male">>
[<<moveTo "event_manager_daily_check_stage_3_1" "Remove the tattered remains of your clothes and continue with the inspection.">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Strip, as ordered.">>]
<</if>>
<<elseif $player.sec_style.body.boiless == "strict" && $player.flags.mealplan.base != "boiless">>
She hasn't even started your inspection when she frowns. "@@.npc_manager;Where is your lunch? I thought you understood that, for the sake of efficiency, your are to switch over to the efficiency of Boil-Less, a much more expedient method to get the nutrients you need to perform your duties. Fortunately for you, I foresaw this eventuality.@@" She places a serving packet of Boil-Less out of your desk. "@@.npc_manager;Now, shall we continue on with the inspection?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_1" "Strip to commence your inspection." 60 "<<set $player.flags.mealplan.base = 'boiless'>><<set $player.flags.mealplan.unlocked = ['boiless']>>">>]
<<elseif $scene.latexFailed>>
She hasn't even started your inspection when she frowns. "@@.npc_manager;I believe we decided on upgrading your outfit to be latex. I am a woman of my word so... come, let us get you properly prepared for the day...@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
[<<moveTo "event_latex_inspection_fail_1" "Follow..." 60>>]
<<else>>
<<if $scene.firstAdvCage>>
She pauses as she looks at you. "@@.npc_manager;Hmm, I know you have been well behaved of late, but there is something different about you, I think it would be best to do a full inspection, just to satisfy my curiosity.@@"<br>
<br>
<<if setup.isCage()>>
<<printThought "Does she somehow know about the new cage I'm wearing?">>
<<else>>
<<printThought "Does she somehow know about the new chastity belt I'm wearing?">>
<</if>>
<br><br>
<</if>>
<<include inspectionText_clothes>>
<<include inspectionText_cleanClothes>>
<<include inspectionText_shoes>>
<<include inspectionText_cleanBody>>
<<if $scene.compareVisuals!="">>
"@@.npc_manager;<<=$scene.compareVisuals>>@@"<br>
<br>
<</if>>
<<if $scene.gender == "male">>
[<<moveTo "event_manager_daily_check_stage_3_1" "Remove the tattered remains of your clothes and continue with the inspection.">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_3_1" "Strip, as ordered.">>]
<</if>>
<</if>>
<</if>>
<<else>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not being in your office at <<if $options.militaryTime>>8:00<<else>>eight o'clock<</if>>.<br>
<br>
<<if setup.compareDay($now, setup.checkTaskLocationTime('task_uniform_upgrade'))>>
"@@.npc_manager_dom;Where are you? You know today is the deadline for your first A-SLUT assignment, get in here NOW. No excuses. If you aren't in my office soon I may have no choice but to fire you for blatant insubordination.@@"
<br>
You can actually feel her slam the phone down to end the call before you can even get a word in. She definitely sounded serious, you really should rush straight into work.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
"@@.npc_manager_dom;<<=$player.call>> <<=$player.last_name>>! Where the hell are you? Do you have any idea what time it is? Apparently not, because if you had any clue how to read a clock you would be seated in front of your workstation right now.@@"<br>
<br>
You hear her take a deep breath over the phone, she seems to calm slightly. Unfortunately, as you have already figured out, her calm after the storm is more often a lot more terrifying then the storm itself.<br>
<br>
<<if $scene.elevator || $scene.oldOffice || $scene.beforetasklocation && $scene.beforetasklocation.last() == "company_lobby">>
"@@.npc_manager;I know you are in the building, now hurry up and get to your desk so we can start the day!@@"
<<else>>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. This is your <<printNumber $npc_manager.criticalanger>> offense. Once you reach five, I am afraid I will have to let you go. Please take this more seriously and endeavour to show up on time <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>>.@@"
<<else>>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. This is your <<printNumber $npc_manager.criticalanger>> offense. I am sorry, but you have stepped out of line once to often. Consider your contract terminated!@@"
<</if>>
<</if>>
<br><br>
She hangs up.<br>
<br>
<<if $npc_manager.criticalanger >= 5 && !$scene.elevator>>
[<<moveTo 'gameover_grue' "Hang up.">>]
<<else>>
<<if $scene.elevator || $scene.oldOffice || $scene.beforetasklocation && $scene.beforetasklocation.last() == "company_lobby">>
[<<moveTo "event_manager_daily_check_stage_3" 'Drop everything and head straight to her office.' 180 "<<set $scene.directInspection=true>><<set $scene.at_office=true>>">>]
<<else>>
<<if $scene.stressStuck>>
<<printThought "Come on <<=$player.first_name>>... you need to focus on getting this stress situation under control. Maybe more time with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> or another friend... or maybe played some games... or maybe I'm just working too hard and I should slack off a bit... I've gotta do something or I'm doomed!">><br>
<br>
<</if>>
<<if $scene.beforetasklocation.last() == "room_dreams">>
[<<moveTo "room_wake_up" "Hang up." 1 "<<set $currentcall = false>><<set $roomchange=false>>">>]
<<else>>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
<</if>>
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: phase 3 inspection
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.calcOutfit>>
<<set $scene.calcOutfit = true>>
<<include inspectionData_clothes>>
<<include inspectionData_cleanClothes>>
<<include inspectionData_cleanBody>>
<<include inspectionData_shoes>>
<<include inspectionData_underwear>>
<<include inspectionData_chastity>>
<<include inspectionData_plug>>
<</if>>
<<if $scene.badMakeup || !$scene.calcOutfit>>
<<set $scene.fixMakeupIfWrong = true>>
<<include inspectionData_makeup>>
<</if>>
<<include calculateMilkEvent>>
<<if !($scene.takeKey || $scene.broken_cage || ($player.body_ref.penis && $player.body.penissize[1] <= 1 && !$npc_manager.flags.penis_shrinking.first_secure_comment) || $scene.firstAdvCage || $scene.hasAdvKey && $currentTasks.hasOwnProperty("task_chastity_trial") && $currentTasks.task_chastity_trial.condition == "Complete" && !$npc_manager.flags.took_adv_key || $scene.forgot_cage || ($player.body_ref.penis && $npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none') || $scene.milkEvent && !$scene.first_milk)>>
<<include inspectionEffects_plug>>
<<include inspectionData_collar>>
<</if>>
<<if $scene.takeKey>>
<<set _catsuit = "">>
<<if setup.checkItemTypeTag('bodysuit', ['latex'])>>
<<set _catsuit = setup.getItemFromType('bodysuit')>>
<</if>>
<<removeEverythingButUnderwear>>
<<if _catsuit>>
<<wearItem _catsuit true>>
<</if>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<if !setup.checkItemTypeWorn("cage")>>
<<if $player.flags.chastity_style == "cage" && !$player.body_ref.vag>>
<<set $scene.newCageId = 'electric_chastity'>>
<<else>>
<<set $scene.newCageId = 'chastity_belt_electric'>>
<</if>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_FRIEND>>
<<addItem $scene.newCageId>>
<<wearItem $scene.newCageId true>>
<<manipulateItem $scene.newCageId 'lock' true>>
<</if>>
<<set $player.sec_style.submission.permanent_key = "strict">>
<<include "addMilkingTopic">>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_taken')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_taken'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11.5'
6
'event_psychiatrist_session_perm_key_1'
false
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_other_keyholder'
0
'theme_manager_discuss_other_keyholder_1'
true
>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $daily.revokedKeyToday = true>>
<<set $scene.hadCageKey = $npc_manager.flags.hascagekey>>
<<set $npc_manager.flags.hascagekey = true>>
<<elseif !$scene.shinkComment>>
<<set _catsuit = "">>
<<if setup.checkItemTypeTag('bodysuit', ['latex'])>>
<<set _catsuit = setup.getItemFromType('bodysuit')>>
<</if>>
<<removeEverythingButUnderwear>>
<<if _catsuit>>
<<wearItem _catsuit true>>
<</if>>
<<if $scene.seriousoffense>>
<<set $npc_manager.criticalanger += 1>>
<<applyStress 30>>
<</if>>
<<if $scene.gender == "male" || $scene.underwearStyle == "male">>
<<initRoom>>
<<moveTo "event_manager_check_male_after_purge_1">>
<</if>>
<<if $scene.gender == "male">>
<<destroyMaleClothing $player $now false>>
<</if>>
<<if setup.changedRoom() && $scene.underwearStype == "male">>
<<applyExperience 'bimbofication' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<if $scene.passed>>
<<applyExperience 'submission' 5 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<include "inspectionData_missingUnderwear">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if !$scene.rerun>>
<<if $scene.gender == "male">>
Every bit of male clothing you have with you efficiently ripped to shreds <<=setup.getNpcName("npc_manager","formal")>> waits for you to get down to just your underthings to resume the inspection.
<<else>>
Well used to this routine, you shimmy out of your clothes and fold them neatly in a pile.
<</if>>
<br><br>
<</if>>
<<if $scene.forgot_cage && $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.playerstayedinchastity>>
You sense <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze burning into you, and you reflexively start to cover your crotch, only for <<=setup.getNpcName("npc_manager","formal")>> to freeze you with a word.<br>
<br>
"@@.npc_manager;No... it is far too late for that, and flesh is not the rigid protection you need. Tell me, I distinctly remember you leaving your key in my safe keeping... and yet stand, utterly unprotected... explain. Now.@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_1">>
[<<moveTo "event_manager_daily_check_unlocked_cage_2" "Lie and say it just slipped off..." 180 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_manager_daily_check_unlocked_cage_2" "Tell her you unlocked yourself..." 180 "<<set $scene.lie=false>>">>]
<<elseif $scene.takeKey>>
<<=ps(setup.getNpcName("npc_manager","formal"))>> frown is deep and intimidating as she addresses your
<<if $scene.forgot_cage>>
lack of chastity.
<<else>>
failure to offer up the key to your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>.
<</if>>
<br><br>
"@@.npc_manager;No, this has gone on long enough. I am sick and tired of time wasted spent addressing your failure to obey simple instructions.@@"<br>
<br>
<<if $scene.forgot_cage>>
With a stern look on her face she locks a fresh <<=setup.getItemName($scene.newCageId)>> onto you... and then theatrically breaks the key in half. "@@.npc_manager;Just in case you had any illusions about seeing this key ever again. Your behaviour has proven you utterly unworthy of that privilege in a cry for help that I am now answering, by granting your unspoken request to not have to worry about such matters.@@"
<<else>>
<<if setup.getChastityLevel() < 3>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<if setup.checkItemOwned(_keyId)>>
<<deleteItem _keyId>>
<</if>>
She grabs you by the <<if setup.isCage()>>cage<<else>>belt<</if>> and drags you into her office... where she rips open the package for a similar device and swaps you out.<br>
<br>
"@@.npc_manager;There, a fresh device — and one for which you will NOT be seeing the key. This disruption has gone far enough — I am henceforth instating permanent chastity. You have proven yourself utterly incapable of handling the slightest bit of freedom, so I shall be keeping the key permanently.@@"
<<else>>
She frowns and pulls out a remote, tapping a few times before putting it away in her pocket. "@@.npc_manager;There, I have just overridden the locking mechanism of your device. It will now only release at my command — and I will not be giving you back the key, no matter what you do. No, do not complain — your actions have been a silent cry for help in this matter, and I am granting it, by completely removing any concerns you have as to the temptation of unlocking yourself. That decision will never again be yours to make.@@"
<</if>>
<</if>>
<br><br>
You balk and try to complain... but your objections are met with your <<if setup.isCage()>>cage<<else>>belt<</if>> exploding with electrified pain that stops your words in your throat as <<=setup.getNpcName("npc_manager","formal")>> almost casually continues on with your inspection...<br>
<br>
"@@.npc_manager;Now, let us take start over and take this from the top, hmm?@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_1" "Continue on..." 120 "<<set $scene.takeKey=false>><<set $scene.forgot_cage=false>><<set $scene.rerun=true>>">>]
<<elseif $scene.broken_cage>>
You consider the broken <<if setup.isCage()>>cage still locked onto your private bits<<else>>belt still locked around your waist and private bits<</if>>, but there's nothing you can do and you find yourself going along as normal even as you silently scream in fear at how she might react.<br>
<br>
[<<moveTo "event_manager_broken_chastity_1" "Continue." 180>>]
<<elseif $player.body_ref.penis && ($player.body.penissize[1] <= 1 || $npc_manager.flags.penis_shrinking.shrink_event_ready) && !$npc_manager.flags.penis_shrinking.first_secure_comment && $fetish.chastity_penis>>
[<<moveTo "event_morning_inspection_shrink_cage_1" "Continue." 30 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_3_1'>><<set $scene.rerun=true>>">>]
<<elseif $scene.firstAdvCage>>
Her attention fixates on your new chastity device.<br>
<br>
"@@.npc_manager;What is this?@@" She asks with a hint of wonder. "@@.npc_manager;I know you are required to be in chastity, but this... this is one of the more advanced and secure devices I have ever seen! Needless to say, I approve. <<if $npc_manager.flags.playerstayedinchastity>>If you would kindly hand over the key to this new device?<<else>>Please hand over the key per my previous instructions.<</if>>@@"<br>
<br>
[<<moveTo "event_morning_inspection_first_advanced" "Explain the situation." 30 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_3_1'>><<set $scene.firstAdvCage=false>>">>]
<<elseif $scene.hasAdvKey && $currentTasks.hasOwnProperty("task_chastity_trial") && $currentTasks.task_chastity_trial.condition == "Complete" && !$npc_manager.flags.took_adv_key>>
As you start to dress, she pauses you.<br>
<br>
"@@.npc_manager;Ah, ah, I believe we have a bit of a celebration to make first.@@"<br>
<br>
You look up at her confused, and more than a touch worried.<br>
<br>
[<<moveTo "event_work_adv_key" "Continue." 60>>]
<<elseif $scene.forgot_cage>>
Her lazer-like gaze zeros in on your lack of chastity she leads you into her office without a word.<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_1">>
<<set _chastityLvl = setup.getItemObj($npc_manager.flags.lastCage).chastityLvl>>
<<if $player.body.penissize[1] <= 1 && !setup.getItemObj($npc_manager.flags.lastCage).tags.includes("secure") || !$player.body_ref.penis>>
[<<moveTo "event_manager_daily_check_forgot_cage_flat" "Continue." 180>>]
<<elseif $scene.manager_hascagekey && $player.flags.lockpick[_chastityLvl-1]>>
[<<moveTo "event_manager_daily_check_unlocked_cage_1" "Continue." 180>>]
<<elseif !$npc_manager.flags.trustplayerwithkey>>
[<<moveTo "event_manager_daily_check_lost_cage" "Continue." 180>>]
<<else>>
[<<moveTo "event_manager_daily_check_forgot_cage" "Continue." 180>>]
<</if>>
<<elseif $player.body_ref.penis && $npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none'>>
She pauses, seeming to be staring directly at your (recently shrunk) <<getWordMyPenis>>...<br>
<br>
[<<moveTo "event_morning_inspection_shrink_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_3_1'>>">>]
<<elseif $scene.differentCage>>
Her lazer-like gaze lingers on your chastity device.<br>
<br>
<<set _cage = setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<if setup.checkItemOwned(_keyId)>>
<<printThought "Uh-oh... this isn't what I was wearing before...<<if !setup.checkItemInInventory(_keyId)>> and I left the key at home...<</if>>">>
<<elseif $scene.hadCageKey>>
<<printThought "Uh-oh... this isn't what I was wearing before... and she still has the key!">>
<<else>>
<<printThought "This isn't what I was wearing before... but I had the key, so this has to be allowed, right?">>
<</if>>
<br><br>
Without a word she leads you into her inner office.<br>
<br>
[<<moveTo "event_wrong_chastity_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_3_1'>>">>]
<<elseif $scene.improperKey>>
Her lazer-like gaze looks at your chastity device... and then at your clothes.<br>
<br>
Without a word she leads you into her inner office.<br>
<br>
[<<moveTo "event_wrong_chastity_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_3_1'>>">>]
<<elseif $scene.milkEvent && !$scene.first_milk>>
Her gaze narrows at the sight of the wet spots over your nipples. "@@.npc_manager;What is that? Take off your top.@@" She commands.<br>
<br>
[<<moveTo "event_morning_inspection_milk_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_3_1'>>">>]
<<elseif $scene.leakEvent>>
[<<moveTo "event_secretary_style_penis_milking_strict_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_3_1'>>">>]
<<elseif !setup.getItemObj($scene.shoeId).hasOwnProperty("heels") && State.hasPlayed("event_strict_female_14") && !State.hasPlayed("event_secretary_style_ballet_heels_strict_1")>>
<<=setup.getNpcName("npc_manager","formal")>> looks at your shoes as her gaze narrows. "@@.npc_manager;Are those... flats? Your uniform is QUITE clear on the fact that high heels are a requirement. I would have thought your little history lesson would have shown you just how much more severe things could get... and yet, rather than be motivated, you have, instead back-slid!@@" She sighs in frustration. "@@.npc_manager;I believe some time with <<=setup.getNpcName("npc_discipline","formal")>> is in order.@@"<br>
<br>
[<<moveTo "event_secretary_style_ballet_heels_strict_1" "Continue." 60>>]
<<else>>
<<if !$scene.rerun>>
<<=setup.getNpcName('npc_manager', 'formal')>> watches you like a hawk, occasionally nodding in satisfaction as you strip before finally proceeding with the inspection.<br>
<br>
<</if>>
<<include inspectionText_underwear>>
<<include inspectionText_chastity>>
<<include inspectionText_plug>>
<<include inspectionText_makeup>>
<<include inspectionText_collar>>
<<if $scene.seriousoffense>>
<<=setup.getNpcName('npc_manager', 'formal')>> shakes her head with a sigh.<br>
<br>
"@@.npc_manager;I really thought we were past this sort of thing but I am afraid there is no way you can perform your duties today.@@"<br>
<br>
<<if $npc_manager.criticalanger < 5>>
"@@.npc_manager;<<=$player.first_name>>, this will have inevitable and serious consequences. This is your <<printNumber $npc_manager.criticalanger>> offense. Once you reach five, I am afraid I will have to let you go. Please take this more seriously and endeavour to show up on time <<if $now.getUTCDay() == 5>>Monday<<else>>tomorrow<</if>>.@@"<br>
<br>
With a snort, she tosses you a simple skirt and top wrapped around a pair of heels.<br>
<br>
"@@.npc_manager;Please get dressed and go home.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Quickly get dressed and hurry home." 1800 "<<addItemSet 'female_office'>><<wearItemSet 'female_office'>>">>]
<<else>>
"@@.npc_manager;I am sorry, but you have stepped out of line once too often. Consider your contract terminated!@@"<br>
<br>
[<<moveTo 'gameover_grue' "Get dressed and leave." 0 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<<else>>
<<if $scene.forceChange>>
"@@.npc_manager;Well, aside from your wardrobe failure you did... tolerable. Being that you have so utterly failed to dress yourself suitable to perform your job it falls to me, once again. Come, while I give you something proper to wear.@@"<br>
<br>
<<if $scene.gender == "male">>
You give a final glance at the torn remnants of your male clothing as she casually tosses them in the trash.<br>
<br>
<</if>>
[<<moveTo "event_manager_daily_check_stage_3_2" "Follow." 60>>]
<<elseif $npc_manager.flags.uniform_upgrade.bed_heel_punish>>
Your clothes back on, you turn towards your desk to actually begin your day only to be brought up short by your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;Ah, ah, ah, aren't you forgetting something?@@"<br>
<br>
<<printThought "Oh no, the bed heels photo!">>
<br><br>
"@@.npc_manager;You totally failed to complete a simple task. A task that, I will remind you, was for your own benefit, meant to help you more easily learn to walk in heels. Now it is time for more... severe measures. Give me your shoes and get dressed.@@"<br>
<br>
[<<moveTo "event_office_sissy_secretary_heel_punishment_1" "Do as she says." 120 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]<br>
[<<moveTo "event_office_sissy_secretary_heel_punishment_refuse" "Get dressed and put your shoes on." 120 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<elseif $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition != 1>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<include "inspectionText_drugs">>
<<elseif $scene.passed>>
<<if $scene.managerPanties>>
"@@.npc_manager;On paper, you have met requirements, but the wearing of my undergarments means that I would hardly call your performance perfect. Still, technically correct is still correct. If you would please get dressed, you may commence your work.@@"<br>
<br>
<<elseif !($currentTasks.hasOwnProperty('event_doctor_first_appointment') && !$currentTasks.event_doctor_first_appointment.finished) && !($currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill'))>>
"@@.npc_manager;Well, that seems to be everything, perfectly done, once again. Thank you for taking your responsibilities seriously, that attention to detail is the mark of a true <<if $fetish.sissy>>SISSI <</if>>Secretary. If you would please get dressed, you may commence your work.@@"<br>
<br>
<</if>>
<<if $scene.aslut1>>
[<<moveTo "event_aslut_1_complete_1" "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<<elseif $player.work.advance > 0>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<include "stage3AdvanceSpanking">>
<<else>>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<include "inspectionText_drugs">>
<</if>>
<<elseif $player.work.advance > 0>>
"@@.npc_manager;A less than stellar performance... which I suppose makes this maintenance punishment all the more valuable!@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<include "stage3AdvanceSpanking">>
<<else>>
"@@.npc_manager;Hmm, some flaws, but none so severe as to prevent you from performing your duties. Please endeavour to take things more seriously in the future, but for now you may get dressed and commence your work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Get dressed and start working." 360 "<<useClothSetPop 'daily_evaluation_clothes'>>">>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: phase 3 gifted new outfit due to clothing failure
#status: RELEASED 0.6.0.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Now is not the time to change clothes.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'daily_evaluation_clothes'>>
<<set _catsuit = "">>
<<if setup.checkItemTypeTag('bodysuit', ['latex'])>>
<<set _catsuit = setup.getItemFromType('bodysuit')>>
<</if>>
<<removeEverythingButUnderwear>>
<<if _catsuit>>
<<wearItem _catsuit true>>
<</if>>
<<if setup.checkItemOwned('satin_blouse_pink')>>
<<if setup.inWardrobe("satin_blouse_pink")>>
<<wardrobeToItem "satin_blouse_pink">>
<</if>>
<<else>>
<<addItem 'satin_blouse_pink'>>
<</if>>
<<wearItem "satin_blouse_pink" true>>
<<if setup.checkItemOwned('skirt_leather_pink')>>
<<if setup.inWardrobe("skirt_leather_pink")>>
<<wardrobeToItem "skirt_leather_pink">>
<</if>>
<<else>>
<<addItem 'skirt_leather_pink'>>
<</if>>
<<wearItem "skirt_leather_pink" true>>
<<if setup.checkItemOwned('mary_janes_pink')>>
<<if setup.inWardrobe("mary_janes_pink")>>
<<wardrobeToItem "mary_janes_pink">>
<</if>>
<<else>>
<<addItem 'mary_janes_pink'>>
<</if>>
<<wearItem "mary_janes_pink" true>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> walks over to her wardrobe and retrieves a familiar pink ensemble, handing it to you and nodding for you to get changed into the familiar "secretary" attire.<br>
<br>
You see no choice but to do as instructed, quickly slipping back into the comfortable, but ultra-feminine garb.<br>
<br>
<<printThought "That's weird, this feels like the exact same outfit I had before... must be some sort of lazy coder magic...">><br>
<br>
"@@.npc_manager;Much better, you may commence working now.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Start working." 360>>]
</div><<initRoom>>
<<include "postInspectionCleanup">>
<<if $now.getUTCDay() == 5 && $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks['task_uniform_upgrade'].finished>>
<<addEvent 'aslut_congratulations'>>
<</if>>
<<if $scene.seriousoffense>>
<<moveTo "company_lobby">>
<<else>>
<<set $player.work.sendhome = false>>
<<if $player.sec_style.body.name != "" && $npc_manager.stagevalues[2].femalesecretary && $player.hair.style == "unkempt">>
<<moveTo "event_secretary_style_hair_intro_1">>
<<else>>
<<moveTo "room_office_sissy_secretary_work_morning_start">>
<</if>>
<</if>><<if !$scene.skipSpankIntro>>
"@@.npc_manager;One final thing, before you get dressed@@" <<=setup.getNpcName("npc_manager","formal")>> states with a grin. "@@.npc_manager;The little matter of your maintenance spankings — the price you agreed to pay in exchange for that advance on your pay. So come here, dear, bend over my knee and let us get you ready for the day...@@"<br>
<br>
She takes a seat on the edge of her desk and motions for you to bend over.
<<else>>
She motions you to follow her into her inner office and bend over.
<</if>>
<br><br>
<<switch $player.identify_as>>
<<case 'female' ''>>
[<<moveTo "event_maintenance_spanking_1" "You did agree to this, bend over like a good girl." 360 "<<set $scene.obey=true>>">>]<br>
<<case 'male'>>
[<<moveTo "event_maintenance_spanking_1" "You did agree to this, bend over like a good boy." 360 "<<set $scene.obey=true>>">>]<br>
<<case 'fluid' 'agender'>>
[<<moveTo "event_maintenance_spanking_1" "You did agree to this, bend over like you are supposed to." 360 "<<set $scene.obey=true>>">>]<br>
<<default>>
ERROR unexpected player.identify_as <<=$player.identify_as>>
<</switch>>
[<<moveTo "event_maintenance_spanking_1" "This isn't fair! Refuse!" 60 "<<set $scene.obey=false>>">>]/*#
#desc: given drugs when you forgot
#status: FINISHED 0.7.11.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reach for your clothes only for <<=setup.getNpcName("npc_manager","formal")>> to stop you short.<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_3_finalize">>
<<include "stage3AdvanceSpanking">>
</div>/*#
#desc: asked about collar
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.collar>>
You raise your chin proudly high to better display the collar around your throat as you explain that, as <<=ps(setup.getNpcName("npc_manager","formal"))>> <<if $fetish.sissy>>sissy <</if>>Secretary-slave, it is only proper that you wear her collar at all times in reminder and testament to your wonderful owner.<br>
<br>
She smiles in amusement... though you can tell she is touched by the act of devotion. "@@.npc_manager;Well, in that case... far be it from me to reject such a lovely sentiment. I had planned to make more of a ceremony of things but... well, if this is you wish...@@" She walks over to her desk and presents you with two locking collars — one of stark black metal, the other a pink <<if $fetish.sissy>>sissified <</if>>array of frills. "@@.npc_manager;So, which would you prefer? Something stern like what you wear now... or something a bit softer?@@"<br>
<br>
[<<moveTo "event_enthusiast_collar_2" "Choose the frilly pink collar." 180 "<<set $scene.newCollar='secure_sissy_choker'>>">>]<br>
[<<moveTo "event_enthusiast_collar_2" "Choose the heavy metallic collar." 180 "<<set $scene.newCollar='metal_collar_black'>>">>]
<<else>>
You shrug and explain that it's comfortable, and you're becoming accustomed to the secure feeling of wearing a collar 24/7.<br>
<br>
"@@.npc_manager;I see, well there is certainly nothing wrong with such... just, do not get ideas. There is a difference between wearing a collar I gave you and wearing MY collar, do you understand?@@"<br>
<br>
You nod and she moves on with the inspection.<br>
<br>
<<set _takechastitykey = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<if _takechastitykey>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks at you with a smile. "@@.npc_manager;Now, If you would kindly turn over the key to your chastity and you may return to work.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "<<if _takechastitykey>>Turn over the key and start<<else>>Start<</if>> working." 360>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "<<if _takechastitykey>>Turn over the key and start<<else>>Start<</if>> working." 360>>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<<else>>
"@@.npc_manager;So, with that out of the way, you may return to your desk and commence your duties.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 3>>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Get to work." 360>>]
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Get to work." 360>>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
<</if>>
</div>/*#
#desc: enthusiast collar
#status: FINISHED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.sec_style.submission.collar == "">>
<<set $player.sec_style.submission.collar = 'enthusiast'>>
<</if>>
<<set $player.flags.collar.owner = 'npc_manager'>>
<<set $player.flags.collar.collarId = $scene.newCollar>>
<<addItem $scene.newCollar>>
<<wearItem $scene.newCollar true>>
<<include "checkTattooCollar">>
<<setThreshold 'submission' 'collar_submission' 'enthusiast'>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_50'
10
'event_psychiatrist_session_collar_manager_1'
false
>>
<<addNpcTheme 'npc_manager' 'aslut' 'theme_manager_collar'
0
'event_manager_theme_collar_1'
true
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.newCollar == 'secure_sissy_choker'>>
You look towards the pink collar and <<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Once again, you prove yourself to be the cutest <<if $fetish.sissy>>sissy<<else>>thing<</if>>.@@"<br>
<br>
You hold your hair out of the way as your heart thunders and she brings the choker to your throat. The frills tickle, but in a good way, and you look longingly up at her as she makes sure everything is arranged before the soft click of the lock seals it all in place.
<<else>>
You look towards the black and gold metal collar and <<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Lovely. Such a bold and beautiful way to declare yourself my slave.@@"<br>
<br>
The metal is cool against your skin, heavy and steep, but not quite uncomfortable. Instead the weight only serves to remind you of your <<=setup.getNpcName('npc_manager', 'title')>>; just as your obedience to her weighs heavy on your thoughts, so too does this wonderful mark of ownership weigh on your body.
<</if>>
<br><br>
"@@.npc_manager;There. Beautiful — note that it is hypoallergenic and washable so you can truly wear it 24/7... oh, and a little bonus feature, that you are far too behaved to need, but I think you will enjoy.@@" She traces the front of the collar with her finger. "@@.npc_manager;It is electrified, and packs a tracking device. So I will always know where you are... and be capable of administering a nice punishing shock. Not that you would ever be in need of such correction, hmm?@@"<br>
<br>
"@@.pc;Of course not, <<=setup.getNpcName('npc_manager', 'formal')>>.@@" You reply softly.<br>
<br>
"@@.npc_manager;Delightful. Now, shall we go on to the day's assessment?@@"<br>
<br>
You nod and rise to your feet, one hand reflexively tracing the collar around your neck.<br>
<br>
<<printThought "I really am hers...">><br>
<br>
<<if _takechastitykey>>
<<set _takechastitykey = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<set _takechastitykey = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<=setup.getNpcName('npc_manager', 'formal')>> looks at you with a smile. "@@.npc_manager;Now, If you would kindly turn over the key to your chastity and you may return to work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "<<if _takechastitykey>>Turn over the key and start<<else>>Start<</if>> working." 360>>]
<<else>>
"@@.npc_manager;Now, my dear, it is time for you to return to your desk. Just because you are properly my collared slave does not mean that you do not also remain my employee!@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_3_finalize" "Get to work." 360>>]
<</if>>
</div>/*#
#desc: ask npc_retention about attempting
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_retention","formal")>> about putting your throat on the line against <<=setup.getNpcName("npc_secretary","nickname")>> in a blow-job challenge.<br>
<br>
<<if $scene.wornCollarType == "collar">>
<<if $now.getUTCHours() < 20>>
<<=setup.getNpcName("npc_retention","formal")>> grins.
<<if $npc_boss.flags.blowjobContest.attempts == 0>>
"@@.npc_retention;I see — and have you come up with a suitable wager for if you lose? Remember that your prize is a mouthful of <<=ps(setup.getNpcName("npc_boss","other"))>> cum — quite the reward for a slut like yourself, so you had best offer up something of real value.@@"<br>
<br>
<<include "partyBlowjobWager">>
<<else>>
"@@.npc_retention;Back for more? Let's get you changed and out on the floor — and don't worry, <<=setup.getNpcName("npc_secretary","nickname")>> won't be allowed to start until you do. To keep things fair.@@"<br>
<br>
[<<moveTo "event_party_blowjob_start_3" "Get changed and started." 300>>]<br>
[<<moveTo "event_party_blowjob_start_2" "Actually... you don't want to spend your night in another blowjob competition." 60 "<<set $scene.wager='abort'>>">>]<br>
<</if>>
<<else>>
<<if $now.getUTCHours() >= 22>>
<<=setup.getNpcName("npc_retention","formal")>> shakes <<his npc_retention>> head. "@@.npc_retention;The night is nearly over! No, such a contest is a marathon, not a sprint. Talk to me early in the evening if you want to take your shot... well, shots.@@"
<<else>>
<<=setup.getNpcName("npc_retention","formal")>> shakes <<his npc_retention>> head. "@@.npc_retention;No, I don't think there is quite enough time for a proper contest. Talk to me early in the evening if you want to take your shot... well, shots.@@"
<</if>>
<br><br>
[<<moveTo "event_party_retention_1" "Talk about something else." 60>>]
<</if>>
<<else>>
<<=setup.getNpcName("npc_retention","formal")>> glances at your throat and shakes <<his npc_retention>> head.
<<switch $scene.wornCollarType>>
<<case 'ring'>>
"@@.npc_retention;Sorry my dear, but that collar marks you as owned... for what you're asking to do you'd basically need your owner on hand to give permission each time and... well, I doubt <<=setup.getNpcName("npc_manager","other")>>, much less <<=setup.getNpcName("npc_boss","other")>> would be willing to sink an entire evening to babysitting you like that. You should have really thought about your night's plans before getting equipped.@@"
<<case "choker">>
"@@.npc_retention;Sorry my dear, but a choker says you're just here on obedient business and sucking an endless string of cocks well... that's a bit over the line for that. You should have really thought about your night's plans before getting equipped.@@"
<<case "necklace">>
"@@.npc_retention;As amusing as that would be... no, I think you'd tweak a few too many noses if you not only pretended towards authority that you don't have, but used such to suck an endless stream of cocks. You should have really thought about your night's plans before getting equipped.@@"
<<default>>
ERROR unexpected scene.worn collar type: <<=$scene.wornCollarType>>
<</switch>>
<br><br>
[<<moveTo "event_party_retention_1" "Talk about something else." 60>>]
<</if>>
</div>[<<moveTo "event_party_blowjob_start_2" "Offer your ass to be spanked." 180 "<<set $scene.wager='spank'>>">>]<br>
<<if $npc_boss.flags.blowjobContest.attempts > 0>>
[<<moveTo "event_party_blowjob_start_2" "Offer your ass to be caned." 180 "<<set $scene.wager='cane'>>">>]<br>
<</if>>
[<<moveTo "event_party_blowjob_start_2" "Offer your ass for sex." 180 "<<set $scene.wager='anal'>>">>]<br>
[<<moveTo "event_party_blowjob_start_2" "Offer a thousand credits." 180 "<<set $scene.wager='money'>>">>]<br>
[<<moveTo "event_party_blowjob_start_2" "You don't want to do the competition tonight." 180 "<<set $scene.wager='abort'>>">>]<br>/*#
#desc: tell npc_retention your wager
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<switch $scene.wager>>
<<case 'abort'>>
You thank <<=setup.getNpcName("npc_retention","formal")>> for <<his npc_retention>> time, but state that, on second thought, you do not feel prepared to compete tonight. "@@.npc_retention;Suite yourself.@@" <<He npc_retention>> replies with a shrug.<br>
<br>
[<<moveTo "event_party_retention_1" "Talk about something else." 60>>]
<<case 'cane'>>
You state that you would like to offer yourself up to be caned, at the end of the night in front of all party attendees, should you lose the wager.<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> grins and finishes <<his npc_retention>> drink. "@@.npc_retention;Now THAT sounds like a suitable wager. Come on, let's get you dressed for the competition — after all, we want an even playing field.@@"<br>
<br>
<<He npc_retention>> walks away from the bar.<br>
<br>
[<<moveTo "event_party_blowjob_start_3" "Follow." 300>>]
<<case 'spank'>>
You state that you could be spanked if you lost. <<=setup.getNpcName("npc_retention","formal")>> seems about ready to reject the idea but then <<he npc_retention>> pauses and smiles. "@@.npc_retention;Hmm... how would you like a little recommendation from me? You're on the right track but... well, it will take a bit more than just a spanking to make this bet happen.@@"<br>
<br>
You nod, after all, you lose nothing by just hearing the suggestion. "@@.npc_retention;Good. First off, a spanking is practically a maintenance operation for one of your position. So, my proposal would be to step things up — a caning, not a spanking. Far more painful, that... and it should be tonight, in front of the partygoers. After all, isn't it fair that they get to see the results of the competition they helped you take part in?@@"<br>
<br>
<<printThought 'So... I spend my entire night sucking as many cocks as I can. If I win, I get a mouthful of <<=setup.getNpcName("npc_boss","formal")>> cum... and if I lose... <<he npc_boss>> canes me in front of senior management...'>><br>
<br>
[<<moveTo "event_party_blowjob_start_2" "You're in!" 180 "<<set $scene.wager='cane'>>">>]<br>
[<<moveTo "event_party_blowjob_start_1" "No, you don't want to do that tonight." 180 "<<set $scene.wager='spank'>>">>]
<<case 'anal'>>
You offer up your ass and <<=setup.getNpcName("npc_retention","formal")>> chuckles. "@@.npc_retention;As if the company did not own your ass? Think about it — a butt plug is literally a required part of your uniform, do you think <<=setup.getNpcName("npc_boss","formal")>> would have to do anything other than ask if <<he npc_boss>> wanted to pound your <<if $fetish.sissy>>sissy hole<<else>>rear<</if>>? No, I think you'll need to come up with something far more enticing to put up.@@"<br>
<br>
<<include "partyBlowjobWager">>
<<case 'money'>>
You say you'll put up a thousand credits, and <<=setup.getNpcName("npc_retention","formal")>> barely refrains from laughing in your face. "@@.npc_retention;A thousand credits? Oh, you silly thing. Even on my salary that is unimpressive and <<=setup.getNpcName("npc_boss","formal")>>? <<He npc_boss>> makes more in an hour than you will in your lifetime. <<His npc_boss>> concept of money is altogether different than anything you can conceive. Propose something else, there's no way you can put up enough value to interest <<him npc_boss>>.@@"<br>
<br>
<<include "partyBlowjobWager">>
<<default>>
ERROR; unexpected scene.wager <<=$scene.wager>>
<</switch>>
</div>/*#
#desc: tell npc_retention your wager
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<set $scene.shoes = setup.getItemFromType("shoes")>>
<<removeEverythingButUnderwear>>
<<wearItem $scene.shoes true>>
<<addItemSet 'stewardess_outfit'>>
<<wearItemSet 'stewardess_outfit'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_retention","formal")>> to a small side-room where <<he npc_retention>> hands you what looks like a skimpy stewardess' outfit.<br>
<br>
"@@.npc_retention;That should be sufficient, allow you to show off without disrupting the party, while giving access to the score-keeping region.@@" As you start to change <<he npc_retention>> hands you a pen on a necklace. "@@.npc_retention;For each customer you serve, have them mark your thigh. Whoever has the highest tally come night's end will be the winner.@@"<br>
<br>
You nod and finish changing, waiting a beat in case <<he npc_retention>> has anything else for you but <<he npc_retention>> brusquely points at the door.<br>
<br>
"@@.npc_retention;Well get to it! You aren't going to get any marks for standing here, you need to get out there and put those lips to use sucking cock!@@"<br>
<br>
[<<moveTo "event_party_blowjob_start_4" "Head out." 60>>]
</div>/*#
#desc: start blowjob competition
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('party_spill_event')>>
<<removeEvent 'party_spill_event'>>
<</if>>
<<removeEvent 'work_party_end'>>
<<set $scene.firstContest = $npc_boss.flags.blowjobContest.attempts == 0 || !$npc_boss.flags.blowjobContest.hasOwnProperty('attempts')>>
<<if $scene.firstContest>>
<<set $npc_boss.flags.blowjobContest.attempts = 1>>
<<else>>
<<set $npc_boss.flags.blowjobContest.attempts += 1>>
<</if>>
<<set $scene.score = 0>>
<<set $scene.round = 0>>
<<set $scene.roundSpecial = {
"discipline" : false,
"fetish" : false,
"effort" : false
}>>
<<set $scene.drugBonus = setup.hasTmpEffect('drug_pickmeup_candy') || setup.hasTmpEffect('drug_pickmeup_ultra')>>
<<set $scene.opp_score = 9+setup.getWillpower() >>
<<if $scene.drugBonus>>
<<set $scene.opp_score += Math.floor((setup.getTotalValue("penis") + setup.getTotalValue("cum") + setup.getTotalValue("oral") + setup.getTotalValue("stamina"))/2)>>
<<else>>
<<set $scene.opp_score += Math.floor((setup.getTotalValue("penis") + setup.getTotalValue("cum") + setup.getTotalValue("oral") + setup.getTotalValue("stamina"))/3)>>
<</if>>
<<set $scene.opp_score = Math.max(49, $scene.opp_score)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<if $scene.drugBonus>>
<<printThought "Hmm... this is going to be a hard night... good thing I already took a pick-me-up...">><br>
<<elseif !$scene.drugBonus && setup.checkItemInInventory('pickmeup_candy')>>
<<printThought "Hmm... this is going to be a hard night... maybe pre-gaming with a pick-me-up would give me an edge?">><br>
<br>
[<<moveTo "event_party_blowjob_root" "Pop a pick-me-up and look for your first customer..." 180 "<<deleteItem 'pickmeup_candy'>><<setTmpEffect 'drug_pickmeup_candy'>><<applyFatigue -30>><<set $player.flags.drugs.pick_me_up += 1>><<set $scene.drugBonus=true>>">>]<br>
<<else>>
<<if $player.flags.drugs.pick_me_up > 0>>
<<printThought "Here we go... I hope I'm prepared enough... I wish I had a <<=setup.getItemName('pickmeup_candy')>>...">>
<<else>>
<<printThought "Here we go... I hope I'm not getting in over my head...">>
<</if>>
<br><br>
<</if>>
[<<moveTo "event_party_blowjob_root" "Find your first customer..." 180>>]
</div>/*#
#desc: start blowjob competition
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You look around the ballroom...
<<if $player.timebased.fatigue >= (.75*$player.timebased.fatiguemax)>>
And pass out.<br>
<br>
[<<moveTo "event_party_blowjob_fatigue" "Continue." 3600>>]
<<else>>
<<if $scene.score == 0>>You have yet to perform your first blowjob, better get started!<<elseif $scene.score==1>>You have performed but one blowjob.<<else>>You have thus far performed <<=setup.numberInWords($scene.score, true)>> blowjobs.<</if>><br>
<br>
<<if $scene.score > 50>>
Your thighs are almost black with tally marks. Surely this will be enough to claim victory?
<<elseif $scene.score > 40>>
Both of your thighs are covered in tally marks. Will even this be enough for victory?
<<elseif $scene.score > 30>>
Your thighs are full of tally marks to note your success. Still, you probably need a bit more if you want to be sure of victory...
<<elseif $scene.score > 20>>
The tally-marks on your legs are starting to build up. A physical reminder of how much of a cock-sucking whore you've been acting tonight.
<<elseif $scene.score > 9>>
You're into the double digits, the tally-marks on your thighs building up, yet you estimate you're less than a third of the way to where you "need to be" to have a prayer of winning.
<<elseif $scene.score > 6>>
Over half a dozen blowjobs. For most people this would be enough to consider themselves an accomplished cocksucking slut, but you doubt you're much more than one tenth of the way to any chance of victory...
<<elseif $scene.score == 1>>
The single mark on your thigh feels almost embarrassing. You need far, far more if you're to have any shot of winning...
<<elseif $scene.score == 0>>
Your thighs are bare, you need to suck some cock if you're going to earn your marks!
<<else>>
You've started to collect tally-mark, but you have a lot more cocks to suck if you hope to claim victory over an experienced woman like <<=setup.getNpcName("npc_secretary","nickname")>>.
<</if>>
<br><br>
<<if $scene.score == 0>>
[<<moveTo "event_party_blowjob_first_suck_1" "Let's go find a cock to suck..." 300>>]
<<else>>
<<switch $scene.round>>
<<case 1>>
<<if $scene.roundSpecial.discipline>>
[@@.link_locked;You no longer see <<=setup.getNpcName("npc_discipline","formal")>> anywhere.@@]<br>
<<else>>
You spot <<=setup.getNpcName("npc_discipline","formal")>>, the HR director of employee discipline, chatting with <<=setup.getNpcName("npc_development","formal")>>...<br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_party_blowjob_discipline_1" 'Ask <<=setup.getNpcName("npc_discipline","formal")>> for help with your quest.' 300 "<<spendWillpower 2>>">>] <<hint $options "Mustering the courage to talk to her will take a minor act of will.">><br>
<<else>>
[@@.link_locked;You lack the willpower to overcome your fears and approach <<=setup.getNpcName("npc_discipline","formal")>> for help.@@]<br>
<</if>>
<</if>>
<<case 2>>
<<if $scene.roundSpecial.fetish>>
[@@.link_locked;You don't see any more opportunities for action in the side rooms.@@]<br>
<<else>>
You remember the "side" rooms... it'd be a risk but you might be able to pickup some extra scores...<br>
<br>
<<if setup.getWillpower() > 2>>
[<<moveTo "event_party_blowjob_fetish_1" 'Go looking for <<getWordPenis>> in the private play rooms.' 300 "<<spendWillpower 3>>">>] <<hint $options "Venturing into the private rooms requires a moderate act of will.">><br>
<<else>>
[@@.link_locked;You're too nervous to go trawling the private rooms for cock.@@]<br>
<</if>>
<</if>>
<<case 3>>
<<if !$scene.roundSpecial.effort>>
You catch sight of <<=setup.getNpcName("npc_secretary","nickname")>> your eyes meet for a moment, sizing each other up. You're both tired, your thighs too heavily marked to count from a distance, but she has the advantage of experience in these games and you experience a jolt of nerves. Can you really suck more cocks than she can?<br>
<br>
<<if setup.getWillpower() > 4>>
[<<moveTo "event_party_blowjob_effort_1" 'Ganbatte! Put everything into this!' 300 "<<spendWillpower 5>>">>] <<hint $options "pushing yourself this hard will drain all of your remaining willpower.">><br>
<<else>>
[@@.link_locked;You are running on fumes, unable to push yourself any harder.@@]<br>
<</if>>
<</if>>
<<case 4>>
You're looking for your next target when <<=setup.getNpcName("npc_retention","formal")>> appears with <<=setup.getNpcName("npc_secretary","nickname")>> on a leash.<br>
<br>
"@@.npc_retention;Come, it's time to count up the final scores and settle bets.@@"<br>
<br>
You gulp, wincing slightly at your sore, abused throat as <<=setup.getNpcName("npc_retention","formal")>> attaches the leash around your collar and leads you off.<br>
<br>
[<<moveTo "event_party_blowjob_final_1" "Follow." 120>>]
<</switch>>
<<if $scene.round < 4>>
[<<moveTo "event_party_blowjob_suck" "Just go prowling for more <<getWordPenis>>." 1800>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: first cock in blowjob competition
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 6 'little' $EXPOSED>>
<<applyExperience 'cum' 7 'little' $EXPOSED>>
<<applyExperience 'humiliation' 13 'little' $EXPOSED>>
<<applyExperience 'bimbofication' 10 'terrible' $EXPOSED>>
<<applyFatigue 20>>
<<changeHorny 5>>
<<set $scene.score += 1>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You go looking for cock, not traveling far before you come to a lone <<man>> seemingly waiting for someone.<br>
<br>
With your most seductive voice you ask if <<he>> was waiting for you.<br>
<br>
"@@.generic_male2;No, actually, I—@@"<br>
<br>
You ignore <<his>> words as you slide to your knees and reach for <<his>> zipper, "@@.generic_male2;Or maybe I was...@@" <<He>> continues as you respond by taking <<his>> modest <<if $options.fem>>girl<</if>>cock in your mouth and starting to suck. "@@.generic_male2;Wow — I may not have been waiting for you, but I'm glad you came.@@"<br>
<br>
<<He>> gasps and your cheeks suddenly bulge with <<if setup.getTotalValue("cum") < 7>><<else>>bitter<</if>> <<getWordCum>> that you quickly gulp down.<br>
<br>
"@@.generic_male2;Or, I came, I guess.@@" <<He>> states as you tuck <<him>> away and stand back up wiping your mouth.<br>
<br>
You smile and explain the whole thing with the pen, hiking your short skirt and spreading your thighs. The marker tickles a bit as <<he>> gives you your first humiliating tally... is this really what you're going to do all night? Suck cock and get marked like you're just a human scoreboard?<br>
<br>
<<printThought "It is if I want to win...">><br>
<br>
You glance around — nobody at the party seems to have paid you much mind, though it's certain at least someone saw you sucking <<if $options.fem>>girl<</if>>cock, even off to the side like this.<br>
<br>
[<<moveTo "event_party_blowjob_root" "Back to work." 60>>]<br>
[<<moveTo "event_party_blowjob_abort" "Actually... no, you don't want to do this after all." 60>>]
</div>/*#
#desc: generic suck cock in blowjob competition
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<applyStress 5>>
<<changeHorny 5>>
<<set $scene.round += 1>>
<<switch $scene.round>>
<<case 1>>
<<set $scene.sucked = 3 + Math.floor(setup.getTotalValue("penis")/3)>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<<applyExperience 'penis' _penis 'very' $EXPOSED>>
<<applyExperience 'cum' 10 'normal' $EXPOSED>>
<<case 2>>
<<set $scene.sucked = 2 + Math.floor(setup.getTotalValue("cum")/3)>>
<<set _cum = setup.getTotalValue("cum")>>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<<applyExperience 'penis' 15 'normal' $EXPOSED>>
<<applyExperience 'cum' _cum 'very' $EXPOSED>>
<<case 3>>
<<set $scene.sucked = 2 + Math.floor(setup.getTotalValue("oral")/3)>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $EXPOSED>>
<<applyExperience 'penis' 15 'normal' $EXPOSED>>
<<applyExperience 'cum' 10 'normal' $EXPOSED>>
<<case 4>>
<<set $scene.sucked = 2 + Math.floor(setup.getTotalValue("stamina")/3)>>
<<set _stamina = setup.getTotalValue("stamina")>>
<<applyExperience 'stamina' _stamina 'very' $EXPOSED>>
<<applyExperience 'oral' 10 'normal' $EXPOSED>>
<<applyExperience 'penis' 15 'normal' $EXPOSED>>
<<applyExperience 'cum' 10 'normal' $EXPOSED>>
<</switch>>
<<if $scene.drugBonus>>
<<set $scene.sucked = Math.floor($scene.sucked*1.5)>>
<</if>>
<<set $scene.score += $scene.sucked>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.round>>
<<case 1>>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
Right out the gate your <<if $options.fem>>girl<</if>>cock-lust has you setting a rapid pace,
<<else>>
Your growing infatuation with <<if $options.fem>>girl<</if>>cock has you eagerly getting to work
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
You've come to like <<getWordPenis>> well enough, though you have a feeling those interests are going to be pushed to their limit by the end of the evening.
<<else>>
You aren't exactly a fan of <<getWordPenis>>, which makes begging to suck such something of a challenge, which leads to more than a few potential "customers" turning away your offer.
<</if>>
<</if>>
<<case 2>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
After your initial efforts your thirst for <<getWordCum>> takes over — you just know if you can keep gobbling down creamy goodness you'll have plenty of energy to claim victory.
<<else>>
Your hunger for <<getWordCum>> pushes you forward, each drop you slurp down giving a small boost of energy to keep you sucking <<if $options.fem>>girl<</if>>cock after <<if $options.fem>>girl<</if>>cock.
<</if>>
<<else>>
ERROR: unexpected
<</if>>
<<case 3>>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
The legend of your skill precedes you, barely have you approached a new group of <<if $options.fem>>women<<else>>people<</if>> and opened your mouth when zippers are pulled down<<if $options.fem>> and skirts are hiked up<</if>> for you to get to work.
<<else>>
It would seem word of your skill has gotten around the party, your efficiency boosted as you barely even need to make a sales pitch before you're got yet another <<getWordPenis>> crammed down your throat.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
Your jaw is stiff, made the worse by the fact that you find yourself still needing to spend time convincing <<if $options.fem>>women<<else>>people<</if>> to let you suck their <<if $options.fem>>girl<</if>>cocks.
<<else>>
Your jaw aches, and it would seem that word of your novice abilities precedes you as it takes more and more convincing to get <<if $options.fem>>women<<else>>people<</if>> to open their zippers<<if $options.fem>> or pull up their skirts<</if>> and allow you to suck.
<</if>>
<</if>>
<<case 4>>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
The going has been tough, but you have your stamina to fall back on, indefatigable as you remain on the prowl and continue to rack up your score, even backtracking to prior conquests for a second round. <<printThought "Whatever it takes.">>
<<else>>
Even your stamina is beginning to falter, but you press on backtracking for round two and searching out even more <<if $options.fem>>girl<</if>>cocks to service.
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
You're becoming exhausted by the ordeal, needing help to get back to your feet after taking another load only to trudge off to your next target.
<<else>>
You're all but dead on your feet, occasionally forced to crawl to your next target when you are unable to muster the energy to stand.
<</if>>
<</if>>
<<default>>
ERROR: unexpected round!
<</switch>>
<<if $scene.drugBonus>>
The pick-me-up drug seems to focus your motivation, and hasten your pace allowing to pack a few more <<if $options.fem>>girl<</if>>dicks into your mouth than you might have otherwise.
<</if>>
All in all you suck another <<=$scene.sucked>> <<if $options.fem>>girl<</if>>cocks, moving from clique to clique like a hungry shark, each black line marked on your thighs one notch closer to victory...<br>
<br>
[<<moveTo "event_party_blowjob_root" "Take stock of things." 60>>]<br>
[<<moveTo "event_party_blowjob_abort" "Tap out, you've sucked enough <<getWordPenis>> for one night." 60>>]
</div>/*#
#desc: extra blowjob with npc_discipline and development
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.roundSpecial.discipline = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip") setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Taking a deep breath you approach the two managers and ask if you could offer them a blowjob?<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> smirks in amusement. "@@.npc_discipline;Looking to compete with <<=setup.getNpcName("npc_secretary","formal")>>? You have your work cut out for you, but sure, we can... test that throat.@@"<br>
<br>
<<if $player.flags.special_skills.blowjob_training>>
<<=setup.getNpcName("npc_development","formal")>> grins. "@@.npc_development;Trust me, I trained that throat myself... not that the occasional pop quiz is anything other than a wonderful idea...@@"
<<else>>
<<=setup.getNpcName("npc_development","formal")>> smiles. "@@.npc_development;<<=setup.getNpcName("npc_manager","other")>> does an excellent job, of course, but someday I would love to get my hands on you to really develop those cock-sucking skills into true art...@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_discipline","formal")>> motions in the direction of one of the party's private rooms.<br>
<br>
[<<moveTo "event_party_blowjob_discipline_2" "Follow." 300 "<<set $scene.accept_discipline=true>>">>]<br>
[<<moveTo "event_party_blowjob_discipline_2" "Actually... you don't think you have time for this." 300 "<<set $scene.accept_discipline=false>>">>]
</div>/*#
#desc: extra blowjob with npc_discipline and development
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept_discipline>>
<<applyFatigue 75>>
<<applyStress 3>>
<<changeHorny 5>>
<<set $scene.score += 2>>
<<applyExperience 'oral' $npc_discipline.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 8 'little' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Private">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept_discipline>>
<<createAdvBGR "./images/locations/private.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip") setup.charImage("npc_development")>>
<<else>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_discipline","npc_discipline_2_nowhip") setup.charImage("npc_development")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept_discipline>>
You follow the two women into a private room and swiftly find yourself on your knees sucking away at <<=ps(setup.getNpcName("npc_development","formal"))>> sleek lady lance.<br>
<br>
<<if $player.flags.special_skills.blowjob_training>>
"@@.npc_development;Just as I taught you...@@" She whispers as you show off your trained skill, her climax reserved and gentle as it brings an authentic smile of approval to her face.
<<else>>
"@@.npc_development;Mmm, not bad, but I do look forward to the day that I can train those lips to perfection.@@" She states once you have finished getting her off.
<</if>>
<br><br>
You catch your breath and are about to rise only to turn and find <<=setup.getNpcName("npc_discipline","formal")>> shoving her own larger, if artificial, cock into your face. "@@.npc_discipline;What? Just because I am not biologically equipped you thought you were getting out with only serving one of us? Tsk, tsk, open wide <<if $fetish.sissy>>sissy<<else>>girl<</if>>! Service is service and you need to suck everything before you if you hope to win.@@"<br>
<br>
You open wide and soon have a dozen centimetres of hard silicone thrusting down your throat. You moan and suck, not wanting to lose your rhythm even though she can't feel your efforts... only to be "rewarded" by a burst of <<getWordCum>>!<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> grins at your surprise. "@@.npc_discipline;Force harvested from some <<if $options.fem>>girls<<else>>of those<</if>> unfortunate enough to be remanded to my care... gulp it down, slut, or I shan't mark your efforts.@@"<br>
<br>
You gulp and then show off an empty mouth as she smiles. Back on your feet you raise your skirt as the two women mark your thighs and then you're back to the main ballroom to scrounge up your next customer...
<<else>>
You decide that taking time for the two HR managers — with only <<=setup.getNpcName("npc_development","formal")>> even having a <<getWordPenis false>> to suck, would not be an efficient use of your competition time.<br>
<br>
<<=setup.getNpcName("npc_discipline","formal")>> frowns. "@@.npc_discipline;Disappointing, well stop wasting our time and get back to sucking off the hoi polloi.@@"
<</if>>
<br><br>
[<<moveTo "event_party_blowjob_root" "Get back to sucking off the general population." 60 "">>]
</div>/*#
#desc: trawl fetish rooms for blowjobs
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.roundSpecial.fetish = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png">>
<div id="invframe" class="scrolltext">
You enter one of the fetish rooms at random to find a manager you don't recognise in the middle of whipping a naked <<man>>.<br>
<br>
"@@.generic_male2;Who are you? What are you doing here?@@" <<He>> asks.<br>
<br>
[<<moveTo "event_party_blowjob_fetish_2" "Ask if anyone here needs their dick sucked?" 300 "<<set $scene.accept_fetish=true>>">>]<br>
[<<moveTo "event_party_blowjob_fetish_2" "Retreat!" 60 "<<set $scene.accept_fetish=false>>">>]
</div>/*#
#desc: trawl fetish rooms for blowjobs
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept_fetish>>
<<applyFatigue 75>>
<<applyStress 3>>
<<changeHorny 5>>
<<set $scene.score += 3>>
<<applyExperience 'oral' 9 'very' $SEEN_STRANGER>>
<<applyExperience 'submission' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 8 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept_fetish>>
You make your by now standard offer of a blowjob and the <<man>> pauses and grins.<br>
<br>
"@@.generic_male2;Yeah... that sounds pretty nice — get on over here and suck me off while I get to work.@@"<br>
<br>
You hurry to obey, soon slurping away on <<his>> <<getWordPenis>> as <<he>> continues to whip <<his>> slave.<br>
<br>
No sooner have you gotten <<him>> off than <<he>> has a new order for you.<br>
<br>
"@@.generic_male2;This punishment is starting to get stale, I think <<if $options.fem>>she's<<else>>they're<</if>> getting used to the blows... get over there and get to work. It should make it a lot harder for my misbehaving assistant to tune out the pain if <<if $options.fem>>she's<<else>>they're<</if>> being sucked off at the same time...@@"<br>
<br>
You're soon on the other side of the room, drool leaking past a gag onto your head as you suck the whipped slave, your efforts rewarded with a trickling, whimpering orgasm, only to find that their dom is somehow already hard again.<br>
<br>
<<printThought "Whatever it takes...">> you think to yourself as you find your time in the room finished off with an aggressive face-fuck — three more tally marks made on your thighs before you're sent on your way.
<<else>>
You quickly duck out of the private room before anything can happen and re-focus yourself on the main ballroom area.
<</if>>
<br><br>
[<<moveTo "event_party_blowjob_root" "Back to sucking in the ballroom..." 60>>]
</div>/*#
#desc: push yourself in the blowjob competition
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.roundSpecial.effort = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You grit your teeth — you've come (or is that cum?) so far, you have to triumph. You look at a group of senior managers chatting with <<=setup.getNpcName("npc_boss","formal")>> <<himself npc_boss>>. You and <<=setup.getNpcName("npc_secretary","nickname")>> have both been somewhat steering clear of <<=setup.getNpcName("npc_boss","formal")>> out of some unspoken agreement. Do you dare put yourself directly in the line of fire to get an edge?<br>
<br>
[<<moveTo "event_party_blowjob_effort_2" "Whatever it takes! You're here to win." 300 "<<set $scene.accept_effort=true>>">>]<br>
[<<moveTo "event_party_blowjob_effort_2" "No... that doesn't seem safe." 60 "<<set $scene.accept_effort=false>>">>]
</div>/*#
#desc: push yourself in the blowjob competition
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept_effort>>
<<applyFatigue 75>>
<<changeHorny 5>>
<<applyStress 15>>
<<set $scene.score += 5>>
<<applyExperience 'oral' 12 'very' $EXPOSED>>
<<applyExperience 'submission' 13 'very' $EXPOSED>>
<<applyExperience 'cum' 14 'very' $EXPOSED>>
<<applyExperience 'penis' 15 'very' $EXPOSED>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept_effort>>
You take a deep breath and walk up to the small group<<if $options.fem>>of women<</if>> clustered around <<=setup.getNpcName("npc_boss","formal")>> and ask if any of them would like their cocks sucked.<br>
<br>
There is a moment of silence, all eyes turning from you to <<=setup.getNpcName("npc_boss","formal")>> as <<he npc_boss>> stands stoic, before slowly nodding.<br>
<br>
"@@.npc_boss;Certainly — this is one of our star <<if $fetish.sissy>>SISSI <</if>>Secretaries — you are all aware of what good training <<=setup.getNpcName("npc_manager","other")>> provides. I believe she is trying to eclipse <<=ps(setup.getNpcName("npc_secretary","nickname"))>> high score. Feel free to lend her a hand, or a cock — but do make her prove herself — it would be a disservice for her not to earn every load.@@"<br>
<br>
A moment later you are on your knees in the centre of a blow-bang. One cock in each hand you find yourself sucking a third while another pair hang waiting, teasing you with your inability to handle more than three at a time.<br>
<br>
Other than an initial mild chuckle <<=setup.getNpcName("npc_boss","formal")>> pays no attention to your efforts as <<he npc_boss>> continues talking, <<his npc_boss>> <<if $npc_boss.fem>>commanding<<else>>deep<</if>> voice easily carrying over the sound of sucking and stroking as you blow each of the other senior employees.<br>
<br>
When you have a clear line of sight past <<if $options.fem>>girl<</if>>cocks and the rest you look longingly at <<=setup.getNpcName("npc_boss","formal")>>. To your disappointment <<he npc_boss>> makes no move to join the festivities and, before you know it, you have sucked off all of the <<if $options.fem == $npc_boss.fem>>other <</if>><<men>> and are dismissed with a wave.
<<else>>
You chicken out and turn away from the group of <<men>> around <<=setup.getNpcName("npc_boss","formal")>>. As you look for your next client you swear <<=setup.getNpcName("npc_boss","formal")>> glanced in your direction...
<</if>>
<br><br>
[<<moveTo "event_party_blowjob_root" "Back to the grind." 60>>]
</div>/*#
#desc: give up early on the blowjob competition
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You've had enough and decide to "tap out" on the blowjob competition. You find <<=setup.getNpcName("npc_retention","formal")>> to inform <<him npc_retention>> that you've given up and <<he npc_retention>> frowns.<br>
<br>
"@@.npc_retention;Not even going to the end... well that is quite the disappointment, and unfortunately it means that you have forfeited your wager...@@"<br>
<br>
"@@.npc_manager;Forfeited what?@@" <<=setup.getNpcName("npc_manager","formal")>> asks, having appeared behind the two of you, her sudden presence almost making <<=setup.getNpcName("npc_retention","formal")>> jump.<br>
<br>
"@@.npc_retention;Yes, well, you see, your Secretary was engaged in something of a wager... which she is now attempting to back out of.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Hmm... I realise that she is technically not wearing that sort of collar this evening, but you should have known better to consult me first. I think we will just call the whole thing done here, hmm?@@"<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> hesitates and you imagine <<him npc_retention>> weighing <<his npc_retention>> two "Masters" before making a decision. "@@.npc_retention;Hmm, well I was running things on behalf of <<=setup.getNpcName("npc_boss","formal")>>, but <<he npc_boss>> instructed me to not bother <<him npc_boss>> until the end of the event. So... we can just pretend the whole thing never happened?@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grins. "@@.npc_manager;That sounds like the simplest solution.@@" Her attention turns towards you. "@@.npc_manager;And, <<=$player.first_name>>? You really do need to use better judgement as to what you commit to — I cannot always be around to bail you out of things.@@"<br>
<br>
You nod, following <<=setup.getNpcName("npc_retention","formal")>> away to get changed before returning to the party proper.<br>
<br>
[<<moveTo "event_party_root" "Back to the party." 60>>]
</div>/*#
#desc: pass out during blowjob competition
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "endOfPartyCollar">>
<<if $npc_manager.affection < 10>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage()>>
<div id="invframe" class="scrolltext">
You wake up to find yourself home in your bed. There is a note on the nightstand and you have just enough energy to read it before you fall back, exhausted.<br>
<br>
<<if $npc_manager.affection == 10 && $npc_manager.anger == 0>>
"@@.npc_manager;My dear, sweet <<=$player.first_name>>. You pushed yourself so hard with <<=ps(setup.getNpcName("npc_boss","formal"))>> silly contest that you passed out right on the ballroom floor! Do not worry about the results. I gave <<=setup.getNpcName("npc_boss","formal")>> a lecture about use of company resources and how you still have a job to do and <<he npc_boss>> has agreed not to hold the did not finish result against you. While your enthusiasm for proving yourself continues to endear you to me, I do wish you would show a bit more care so as not to harm yourself.@@"
<<elseif $npc_manager.affection > $npc_manager.anger == 0>>
"@@.npc_manager;You pushed yourself so hard with <<=ps(setup.getNpcName("npc_boss","formal"))>> silly contest that you passed out right on the ballroom floor! Do not worry about the results, I spoke with <<=setup.getNpcName("npc_boss","formal")>> about use of company resources and how you still have a job to do and <<he npc_boss>> has agreed not to hold the did not finish result against you. While your enthusiasm for proving yourself continues to endear you to me, I do wish you would show a bit more care so as not to harm yourself.@@"
<<elseif $npc_manager.anger == 10 && $npc_manager.affection == 0>>
"@@.npc_manager;You stupid <<if $fetish.sissy>>SISSI<<else>>girl<</if>> — passing out in the middle of a party while trying to win some absurd game. I spoke with <<=setup.getNpcName("npc_boss","formal")>> about <<his npc_boss>> use of company property — and that, as disobedient as you may be, I still need you to do your job. <<He npc_boss>> has agreed not to hold your did not finish result against you, I just hope, for your sake, that you get enough rest to perform your duties tomorrow.@@"
<<else>>
"@@.npc_manager;You foolish <<if $fetish.sissy>>SISSI<<else>>girl<</if>> — passing out in the middle of a party while trying to win some absurd game. I spoke with <<=setup.getNpcName("npc_boss","formal")>> about <<his npc_boss>> use of company property — and that I still need you to be able to do your job. <<He npc_boss>> has agreed not to hold your did not finish result against you, I just hope, for your sake, that you get enough rest to perform your duties tomorrow.@@"
<</if>>
<br><br>
[<<moveTo "room_dreams" "Fall asleep." 60>>]
</div>/*#
#desc: bound at end of blowjob competition
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 17 'terrible' $EXPOSED>>
<<applyExperience 'bondage' 15 'very' $EXPOSEE>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_retention") setup.charImage("npc_secretary","npc_secretary_cum")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_retention","formal")>> leads you to a stage at front of the ballroom. A pair of "seats" have been setup and you and <<=setup.getNpcName("npc_secretary","nickname")>> are bound in matching positions — leaning slightly back, with your legs spread wide to show off your hash-blackened thighs, arms subtly bound behind your back to prevent you from concealing yourself in the slightest, and all finished off with a large, jaw-spreading gag, not that you can easily close your lips, you've spent so much of the evening with them wrapped around <<if $options.fem>>girl<</if>>cocks.<br>
<br>
Some members of the crowd have been looking up as you were bound in place, but everyone is paying attention once <<=setup.getNpcName("npc_retention","formal")>> has finished securing the pair of you and <<=setup.getNpcName("npc_boss","formal")>> takes the stage.<br>
<br>
"@@.npc_boss;Welcome, all of you — and thank you for your assistance in the competition between two cock-addicted slaves to see who is the most prolific cock-sucker. The challenge was simple — which of these two lovely ladies could suck the most in the course of a single night... pride, pain, and more was on the line but now... now to determine the winner.@@"<br>
<br>
<<His npc_boss>> grin widens as <<he npc_boss>> looks across the audience, searching for a moment before fixating on <<=setup.getNpcName("npc_manager","formal")>>. "@@.npc_boss;<<=setup.getNpcName("npc_manager","other")>>! Would you be so kind as to tally the scores?@@"<br>
<br>
The words "@@.npc_manager;Representative position@@" flash through your mind as you look down at <<=setup.getNpcName("npc_manager","formal")>>. She glances for a moment at each of you and <<=setup.getNpcName("npc_secretary","nickname")>> and then calmly announces the scores.<br>
<br>
[<<moveTo "event_party_blowjob_final_2" "Hold your breath." 60>>]
</div>/*#
#desc: blowjob competition scores announced
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 17 'terrible' $EXPOSED>>
<<setThreshold 'penis' 'other_penis' 'competition_penis'>>
<<if $scene.firstContest>>
<<set $scene.opp_score = Math.max(45, $scene.score+1)>>
<<else>>
<<if $scene.score > $scene.opp_score>>
<<if !$scene.accept_discipline || !$scene.accept_fetish || !$scene.accept_effort>>
<<set $scene.opp_score = $scene.score>>
<<else>>
<<set $npc_boss.flags.blowjobContest.won = true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_secretary","npc_secretary_cum")>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;<<=setup.getNpcName("npc_secretary","Miss")>> has accrued <<=$scene.opp_score>> and Miss <<=$player.last_name>> has credit for sucking a total of <<=$scene.score>>@@"<br>
<br>
<<if $scene.score > $scene.opp_score>>
Your heart skips a beat <<printThought "I've won!">>.<br>
<br>
"@@.npc_boss;Well! It would seem like we have a new champion cock-sucker. First she proved herself a bottomless receptacle for cum, and now this? Congratulations are in order, <<=setup.getNpcName("npc_manager","other")>>. It would seem you have surpassed your own previous work!@@"<br>
<br>
You distantly notice that <<=setup.getNpcName("npc_manager","formal")>> does not seem entirely appreciative of this back-handed compliment, but you're too distracted by processing <<=ps(setup.getNpcName("npc_boss","formal"))>> words.<br>
<br>
[<<moveTo "event_party_blowjob_final_win_1" "I won? I won!" 600>>]
<<else>>
<<if $scene.score == $scene.opp_score>>
"@@.npc_boss;Well, well, well, a tie... which, tradition says that the reigning champ retains, which means that <<=setup.getNpcName("npc_secretary","nickname")>> has proven her nigh-unparalleled cock-lust yet again!@@"<br>
<br>
<<printThought "So close... if only I could have pushed myself just a little harder...">>
<<else>>
"@@.npc_boss;And it would seem that <<=setup.getNpcName("npc_secretary","last")>> has proven her nigh-unparalleled cock-lust yet again to retain her championship!@@"
<</if>>
<br><br>
Your heart sinks
<<if $scene.score - $scene.opp_score < 5>>
you were so close...
<<elseif $scene.score < 10>>
you shouldn't be surprised given you totally pathetic performance but... still.
<<elseif $scene.score < 20>>
you shouldn't be surprised given your mediocre performance, but still
<<elseif $scene.score < 30>>
you thought you were doing good, but "good" clearly isn't enough to compete with <<=setup.getNpcName("npc_secretary","nickname")>>.
<<else>>
you had put in quite an effort... and yet you fell short.
<</if>>
<br><br>
<<if $scene.firstContest>>
<<if $scene.score > 40>>
<<printThought "So close, but next time I'll be more prepared!">>
<<else>>
<<printThought "I guess I shouldn't have expected to win my first time out, but I've got a ways to go...">>
<</if>>
<<else>>
<<if !$scene.drugBonus>>
<<printThought "Another loss... I need to up my game... I wonder if there might be some sort of stimulant I could take to keep up my energy?">>
<<else>>
<<printThought "Another loss... I need to up my game!">>
<</if>>
<</if>>
<<=setup.getNpcName("npc_retention","formal")>> re-appears to adjust your bondage into a different, but still exposed, position.<br>
<br>
"@@.npc_boss;Now, our poor loser here had the misplaced confidence to put a wager on herself which means that, now that she has lost, well, she is owed a caning.@@"<br>
<br>
Your heart beats faster. Is <<=setup.getNpcName("npc_boss","formal")>> going to cane you here, in front of the entire party?<br>
<br>
[<<moveTo "event_party_blowjob_final_3" "Continue." 60>>]
<</if>>
</div>/*#
#desc: blowjob competition you win
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_retention","formal")>> releases your bonds and you find your feet, <<=setup.getNpcName("npc_boss","formal")>> standing next to you as you bask in the cheers of the crowd.<br>
<br>
"@@.npc_boss;Well done <<if $fetish.sissy>>sissy<<else>>slut<</if>> — that was quite the showing of skill and determination. You've earned your prize, but I want you fresh before I fulfill my side of the bargain, hmm? I think after the weekend, give you time to properly recover.<<if State.hasPlayed("event_boss_first_cock_training_6")>> When you are ready I want you to spend an entire shift stuffed in preparation. When you have done that... only then I will summon you to have your reward<</if>>.@@"<br>
<br>
You blush at the reminder that this whole thing was to "win" a mouthful of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordCum>>...<br>
<br>
Concluding that there is nothing more to happen the partygoers dissipate, save for <<=setup.getNpcName("npc_manager","formal")>> who stands waiting for you at the base of the stage.<br>
<br>
[<<moveTo "event_party_blowjob_final_win_2" "Descend and speak with her." 60>>]
</div>/*#
#desc: blowjob competition manager talks after you win
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !State.hasPlayed("event_boss_first_cock_training_6")>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 9, 0, false)>>
<<addWorkEvent 'event_boss_first_cock_training_1_alt' _nextDate>>
<</if>>
<<if $events.hasOwnProperty('work_party_end')>>
<<removeEvent 'work_party_end'>>
<</if>>
<<include "endOfPartyCollar">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.anger < $npc_manager.affection>>
<<=setup.getNpcName("npc_manager","formal")>> helps you down off the stage. "@@.npc_manager;Well, that was quite the feat. I was watching you throughout the evening... I must say I am impressed, and you impressed <<=setup.getNpcName("npc_boss","other")>> as well...@@"
<<else>>
You make your way down off the stage, as <<=setup.getNpcName("npc_manager","formal")>> looks on implacably.<br>
<br>
"@@.npc_manager;Well, that was something. I was watching you throughout the evening and... well, I must admit to being impressed... and I daresay you impressed <<=setup.getNpcName("npc_boss","other")>> as well...@@"
<</if>>
<br><br>
You instinctually glance around — nobody seems close enough to overhear your conversation but, well, at this company it is probably safest to assume that the surveillance is omnipresent.<br>
<br>
"@@.npc_manager;What say we call it a night? You must be exhausted, and you could quite do with a shower. Certainly before you show up for work tomorrow. After all, you work in a representative position.@@"<br>
<br>
You nod, catching a few waves and other silent congratulations as you make your way to the elevator<<if $scene.replaceCollar>>, your collar replaced,<</if>> and are given a ride home.<br>
<br>
[<<moveTo "room_foyer" "Home." 900>>]
</div>/*#
#desc: blowjob competition punishment intro
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_retention","formal")>> hands <<=setup.getNpcName("npc_boss","formal")>> a cane. <<He npc_boss>> grins menacingly at you for a moment before turning to the audience. "@@.npc_boss;<<=setup.getNpcName("npc_manager","other")>>! I believe it would be appropriate for you to administer this punishment — being that you are this failed slut's direct superior...@@"<br>
<br>
The crowd parts to clear <<=setup.getNpcName("npc_manager","formal")>> a path to the stage. Tension hangs in the room as people look back and further between the CEO and your indomitable <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
"@@.npc_manager;Of course.@@" She responds to break the silence, her voice crisp and formal as she makes her way up onto the stage. "@@.npc_manager;I always say that one should take... responsibility for their subordinates. Rather than pawn such off on others.@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_manager","formal")>> both force smiles as the cane is passed off and <<=setup.getNpcName("npc_manager","formal")>> moves into position.<br>
<br>
She takes a warm-up swings and you are just barely able to hear <<=setup.getNpcName("npc_boss","formal")>> whisper a final instruction.<br>
<br>
"@@.npc_boss;And do not be going light — she lost a bet and needs to pay for it, if you do not take sufficient payment out of her ass, well... I'll have you up here next to her.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> makes no reply as she gets into position and you brace by biting down on your gag.<br>
<br>
[<<moveTo "event_party_blowjob_final_4" "Pay your debt." 600>>]
</div>/*#
#desc: blowjob competition punishment
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<applyExperience 'bdsm' 14 'very' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
CRACK the cane lands across your exposed bottom, landing hard and sharp, the evil implement pulling back in an instant rather than lingering at the scene of the crime.<br>
<br>
You have no time to recover from the first blow when another lands, exactly as hard but in a new location, <<=setup.getNpcName("npc_manager","formal")>> working up and down your ass like a scan-line algorithm,
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
Even your pain-slut status is pushed to the limit, blow after blow landing on your rear, sending flashes of exquisite agony through your body.
<<else>>
The pain of the cane is far beyond the paddle, and it soon pushes past your ability to process pain into pleasure. Tears stream down your cheeks as you bite down hard in an attempt to ride things out.
<</if>>
<<else>>
You try to hold things together, attempting to think of this as just a harder paddling,
<<if setup.getTotalValue("bdsm") > 5>>
but it isn't, it is so much worse. The cane cuts almost like a blade.
<<else>>
but it isn't, it's a million times worse. Each blow of the cane is like a knife.
<</if>>
Soon tears flow down past your gag as you surrender to the pain and go limp.
<</if>>
<br><br>
"@@.npc_boss;I believe that will be sufficient.@@" <<He npc_boss>> finally states, your <<=setup.getNpcName("npc_manager","title")>> stopping instantly as you pant through your gag.<br>
<br>
"@@.npc_boss;<<=setup.getNpcName("npc_manager","other")>>, everyone!@@" <<He npc_boss>> announces and the audience cheers, <<his npc_boss>> voice softer as <<he npc_boss>> continues with an audible smirk "@@.npc_boss;I do so love watching a master at work on a favourite canvas...@@"<br>
<br>
[<<moveTo "event_party_blowjob_final_5" "Continue." 300>>]
</div>/*#
#desc: blowjob competition post-punishment
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_boss.flags.blowjobContest.lost = true>>
<<removeItemSet 'stewardess_outfit'>>
<<deleteItemSet 'stewardess_outfit'>>
<<useClothSetPop 'tmp'>>
<<include "endOfPartyCollar">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> does not give <<him npc_boss>> the satisfaction of a response,
<<if $npc_manager.anger < $npc_manager.affection>>
instead moving in to begin unstrapping you from your restraints
<<else>>
waiting as <<=setup.getNpcName("npc_retention","formal")>> frees you from your restraints
<</if>>
as the crowd dissipates.<br>
<br>
<<if $npc_manager.anger < $npc_manager.affection>>
<<=setup.getNpcName("npc_manager","formal")>> helps you off the stage where you change back into your original outfit and she motions
<<else>>
Dismounting the stage you change back into your original outfit before <<=setup.getNpcName("npc_manager","formal")>> leads you
<</if>>
to the elevator.<br>
<br>
"@@.npc_manager;Come, you have had quite enough of an evening, and we both of us have work in the morning. Let us get you home.@@"<br>
<br>
You nod weakly, your <<if $scene.replaceCollar>>freshly re-collared <<elseif $scene.partyTempCollar>>now bare <</if>>throat pounded and your ass aching as you wince with every step and breath on the way to the elevator, barely even able to sit in the limousine that whisks you back to your flat.<br>
<br>
[<<moveTo "room_foyer" "Home." 900>>]
</div>/*#
#desc: stage 3 party ask about cum contest
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cumContest = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
Heading to the end of the bar, you ask what the commotion is. A waitress explains that they're getting ready to hold a drinking contest.<br>
<br>
[<<moveTo "event_party_cum_contest_intro_prize" "Ask what they're competing for." 60>>]<br>
[<<moveTo "event_party_cum_contest_1" "Ask if you can enter the contest." 60>>]<br>
[<<moveTo "event_party_cum_contest_quit_2" "Watch from the audience." 60 "<<set $scene.round=0>>">>]<br>
[<<moveTo "event_party_general" "Go somewhere else." 60>>]
</div>/*#
#desc: stage 3 party learn cum contest
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png">>
<div id="invframe" class="scrolltext">
You ask what the prize is for winning the contest. The waitress smiles and explains things with clear enthusiasm. "@@.generic_female1;Oh, it's quite exciting — a home makeover/remodel to transform any one room into the room of your dream! I just wish I could enter myself but, alas, such is barred to those of us here working the party.@@"<br>
<br>
[<<moveTo "event_party_cum_contest_1" "Ask if you can enter the contest." 60>>]<br>
[<<moveTo "event_party_cum_contest_quit_2" "Watch from the audience." 60 "<<set $scene.round=0>>">>]<br>
[<<moveTo "event_party_general" "Go somewhere else." 60>>]
</div>/*#
#desc: stage 3 party cum contest start
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCHours() == 21>>
<<set _shiftedDate to setup.setNextDate($now, 0, 23, 0)>>
<<set $events.work_party_end.trigger.date = _shiftedDate>>
<</if>>
<<if $player.flags.stage3party.cumContest < 1>>
<<set $player.flags.stage3party.cumContest = 1>>
<</if>>
<<set $scene.round1=random(1,3)>>
<<set $scene.round2=random(1,3)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
You express your interest in entering the contest and soon find yourself seated at a long table alongside your fellow contestants — mixed in amongst them are four friendly faces — <<=setup.getNpcName('npc_hucow', 'first')>>, <<=setup.getNpcName('npc_sissy_secretary', 'first')>>, <<=setup.getNpcName('npc_futa', 'first')>> and <<=setup.getNpcName('npc_sexdoll', 'first')>>!<br>
<br>
The final contestants take their seats and <<=setup.getNpcName('npc_development', 'formal')>> steps in front of you all with a smile. "@@.npc_development;Welcome one and all to another of our weekly drinking contests! As always the winner — providing they complete all challenges AND triumph over all opponents — will win a complete remodel of the room of their choice! A world-class kitchen? A perfect craft room? A devilish dungeon? The choice is yours — providing you can demonstrate skill, stamina and, most of all, thirst! Now, with no further ado, let the first round commence!@@"<br>
<br>
As she talks waitresses place a trio of colour-coded shotglasses in front of each of each contestant. Each glass seems to have an identical drink, salt-rimmed shots smelling of alcohol but milky and opaque.<br>
<br>
<<printThought "I think those look like salty dogs?">><br>
<br>
"@@.npc_development;The first trial will test the keenness of your taste as you are challenged to identify which of the drinks before you has been augmented with that most tasty of additives, that most delicious delectable, that most drool-worthy delight... I speak, of course, of <<if $options.fem>>some special girls' <</if>>cum!@@"<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<printThought "Ooooh, yummy!">>
<<else>>
<<printThought "Wait, what?">>
<</if>>
<br><br>
Looking around, you see other girls starting to sip or pound their respective drinks.<br>
<br>
[<<moveTo "event_party_cum_contest_2" "Sample the three drinks." 60>>]<br>
<<if setup.getTotalValue("cum") > 10>>
[@@.link_locked;Pass up the opportunity to sample <<getWordCum>>? No, you're too curious.@@]
<<else>>
[<<moveTo "event_party_cum_contest_quit_1" "No, this is too weird, quit the contest." 60 "<<set $scene.round=1>>">>]
<</if>>
</div>/*#
#desc: stage 3 party cum contest round 1
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 6 'insignificant' $EXPOSED>>
<<applyExperience 'humiliation' 8 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Such a challenge is practically trivial to one of your refined pallet and you instantly recognise, and savour, that most delicious of flavours in the <<switch $scene.round1>><<case 1>>red<<case 2>>blue<<case 3>>green<</switch>> glass.
<<else>>
The saltiness of the cocktail might have puzzled most people but you are pretty certain that the <<switch $scene.round1>><<case 1>>red<<case 2>>blue<<case 3>>green<</switch>> glass contains the <<getWordCum>>.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
The natural saltiness of the drink makes this a real, and bizarre, challenge but you are pretty certain that either the <<switch $scene.round1>><<case 1>>red or blue<<case 2>>blue or red<<case 3>>green or blue<</switch>> is the one with the <<getWordCum>>.
<<else>>
All you really know about cum is that you are not a fan and with the saltiness of the cocktail drowning everything else out you have no idea which of the drinks has <<getWordCum>> in it.
<</if>>
<</if>>
<br><br>
<<if $scene.round1 == 1>>
[<<moveTo "event_party_cum_contest_3" "The red glass had the cum." 300 "<<set $scene.correct=true>>">>]<br>
<<else>>
[<<moveTo "event_party_cum_contest_3" "The red glass had the cum." 300 "<<set $scene.correct=false>>">>]<br>
<</if>>
<<if $scene.round1 == 2>>
[<<moveTo "event_party_cum_contest_3" "The blue glass had the cum." 300 "<<set $scene.correct=true>>">>]<br>
<<else>>
[<<moveTo "event_party_cum_contest_3" "The blue glass had the cum." 300 "<<set $scene.correct=false>>">>]<br>
<</if>>
<<if $scene.round1 == 3>>
[<<moveTo "event_party_cum_contest_3" "The green glass had the cum." 300 "<<set $scene.correct=true>>">>]
<<else>>
[<<moveTo "event_party_cum_contest_3" "The green glass had the cum." 300 "<<set $scene.correct=false>>">>]
<</if>>
</div>/*#
#desc: stage 3 party cum contest round 1 results
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("stamina") < 15>>
<<if setup.hasTmpEffect('tipsy')>>
<<cancelTmpEffect 'tipsy'>>
<<setTmpEffect 'drunk'>>
<<else>>
<<setTmpEffect 'tipsy'>>
<</if>>
<</if>>
<<if $scene.correct>>
<<if $player.flags.stage3party.cumContest < 2>>
<<set $player.flags.stage3party.cumContest = 2>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") < 15>>
<<if setup.hasTmpEffect('drunk')>>
You are regretting having had a drink earlier in the evening as the addition of your "flight" of cocktails has you feeling more than a little inebriated.
<<else>>
The three drinks combined have you feeling a bit tipsy; hopefully there isn't a dexterity portion of this contest or you might run into problems.
<</if>>
<<else>>
Your nigh super-human stamina allows you to finish all three drinks without feeling any noticeable effects.
<</if>>
<br><br>
<<if $scene.correct>>
You make your selection and wait as waitresses pass through to check each contestant. Over half of the competitors wash out but your selection is confirmed correct as the glasses are removed only to be replaced with a new trio of shotglasses that, this time, are unmistakably filled with thick <<if $options.fem>><<if $fetish.futanari>>futa <<else>>girl<</if>><</if>>cum.<br>
<br>
Once the "losers" have cleared out, <<=setup.getNpcName('npc_development', 'formal')>> address you all once again. "@@.npc_development;Alright, now that you've at least proven some basic taste, it's time to REALLY prove yourself. Before you are three glasses of delicious <<getWordCum>>. Your task is to identify which is from the same source as you so expertly identified in the previous round. After all, identifying a partner by taste is quite a useful skill so that you can tweak your routine to match their preferences even when blindfolded or otherwise distracted.@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<printThought "What a great idea!">>
<<else>>
<<printThought "The utility of that sort of skill seems... dubious.">>
<</if>>
<br><br>
[<<moveTo "event_party_cum_contest_4" "Sample the three drinks." 60>>]<br>
<<if setup.getTotalValue("cum") >= 15>>
[@@.link_locked;You shan't pass up the opportunity to drink <<getWordCum>>.@@]
<<else>>
[<<moveTo "event_party_cum_contest_quit_1" "No, this is too weird, quit the contest." 60 "<<set $scene.round=2>>">>]
<</if>>
<<else>>
You make your selection and wait as waitresses pass through to check each contestant. Unfortunately, after comparing your glass selection to a seating chart she shakes her head.<br>
<br>
"@@.npc_development;Alright — if you've lost quickly file out of the way and get some practice! This is simple basics and if you aren't familiar enough with the taste to recognise it well... you clearly haven't spent enough time sucking cock!@@"<br>
<br>
[<<moveTo "event_party_cum_contest_quit_2" "Stick around and watch the rest of the contest." 60 "<<set $scene.round=1>>">>]<br>
[<<moveTo "event_party_general" "Walk away and return to the party." 60>>]
<</if>>
</div>/*#
#desc: stage 3 party cum contest round 2
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 12 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Licking your lips in anticipation, you work your way through the three shots of cum, letting each linger on your tongue. With your skilled pallet, you have no trouble identifying the <<switch $scene.round2>><<case 1>>first<<case 2>>second<<case 3>>third<</switch>> glass as the correct match, but that doesn't stop you from eagerly licking all three of them clean of every delicious drop.
<<else>>
Even for a cum-lover like yourself this is a challenge but after systematically tasting each of the three glasses you have it narrowed down to either the <<switch $scene.round2>><<case 1>>first or second<<case 2>>second or third<<case 3>>first or third<</switch>> as containing the "match" for what you sampled in the first round.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Though you've come to enjoy the taste, cum is still cum and you have no idea which of the three options matches the previous taste that was all but masked by the combination of salt and gin.
<<else>>
Looking around as your fellow competitors knock back their shotglasses full of cum and lick their lips in thought it is all you can do to hold your nose not to gag at the mere scent. Taking a sip the cloying, bitter saltiness is enough to make you almost retch.
<</if>>
You have not a clue which sample "matches" with what you tasted in the first round, looks like your only path forward is to make a random guess and hope.
<</if>>
<br><br>
<<if $scene.round2 == 1>>
[<<moveTo "event_party_cum_contest_5" "Choose the first glass." 300 "<<set $scene.correct=true>>">>]<br>
<<else>>
[<<moveTo "event_party_cum_contest_5" "Choose the first glass." 300 "<<set $scene.correct=false>>">>]<br>
<</if>>
<<if $scene.round2 == 2>>
[<<moveTo "event_party_cum_contest_5" "Choose the second glass." 300 "<<set $scene.correct=true>>">>]<br>
<<else>>
[<<moveTo "event_party_cum_contest_5" "Choose the second glass." 300 "<<set $scene.correct=false>>">>]<br>
<</if>>
<<if $scene.round2 == 3>>
[<<moveTo "event_party_cum_contest_5" "Choose the third glass." 300 "<<set $scene.correct=true>>">>]
<<else>>
[<<moveTo "event_party_cum_contest_5" "Choose the third glass." 300 "<<set $scene.correct=false>>">>]
<</if>>
</div>/*#
#desc: stage 3 party cum contest round 2 results
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.correct>>
<<if $player.flags.stage3party.cumContest < 3>>
<<set $player.flags.stage3party.cumContest = 3>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
<<if $scene.correct>>
The waitress smiles and you instantly know you got things correct. Looking around, it seems you're down to being one of just half a dozen competitors — with your four friends all having made it through alongside you.<br>
<br>
There is a brief shuffling of seats to put everyone together before the waitresses bring each of you a long phallic-shaped glass that reminds you of a yard of ale, only it is definitely not ale that you are looking at. Each glass is filled to the brim with a thick, pungent cocktail that needs no introduction...<br>
<br>
"@@.npc_development;Congratulations, competitors — you have each proven your skills as proper cumoisseurs, but now it is time to show that you are not just snobs but passionate, thirsty aficionados of that heavenly brew. Yes, your senses do not betray you that is nearly a litre and a half of <<if $fetish.bestiality_hard>>the finest horse cum<<else>>homogenised <<if $options.fem>><<if $fetish.futanari>>futa <<else>>girl<</if>><</if>>cock cream<</if>> — and it is now the wonderful task for each of you to swallow every delicious drop... starting NOW!@@"<br>
<br>
The other competitors immediately tip the long glasses back and begin drinking.<br>
<br>
[<<moveTo "event_party_cum_contest_6" "Bottoms up!" 30>>]<br>
<<if setup.getTotalValue("cum") >= 18>>
[@@.link_locked;Pass up the opportunity to guzzle <<getWordCum>>? Never!@@]
<<else>>
[<<moveTo "event_party_cum_contest_quit_1" "No, this is too much, throw in the towel." 60 "<<set $scene.round=3>>">>]
<</if>>
<<else>>
Once again waitresses come through to check results and you are informed that you have chosen incorrectly. As you and the other losers walk away from the table, <<=setup.getNpcName('npc_development', 'formal')>> calls out with encouragement. "@@.npc_development;Remember this failure the next time you're sucking cock — savour every drop and focus on appreciating every subtle note and someday you too could prove yourself a proper cumoisseur!@@"<br>
<br>
[<<moveTo "event_party_cum_contest_quit_2" "Stick around and watch the rest of the contest." 60 "<<set $scene.round=2>>">>]<br>
[<<moveTo "event_party_general" "Walk away and return to the party." 60>>]
<</if>>
</div>/*#
#desc: stage 3 party cum contest round 3
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 18 'unbelievable' $EXPOSED>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("cum") >= 10>>
<<if setup.getTotalValue("cum") > 15>>
If there's a heaven for a cum-addict like yourself, it would hardly be different from what you have before you. Tipping the large glass back, your mouth is flooded with the most wonderful taste there is, thick and creamy you guzzle it with glee; the only downside to your gluttonous display the fact that you hardly get to savour it the way you normally might.<br>
<br>
Transfixed by your delightful task, you do not look around until you have drained the glass, finding that only <<=setup.getNpcName('npc_hucow', 'first')>> has matched your pace. The two of you share a grin of accomplishment, watching as <<=setup.getNpcName('npc_sexdoll', 'first')>> and <<=setup.getNpcName('npc_futa', 'first')>> finish a short while later, the latter gasping for air by the end while <<=setup.getNpcName('npc_sissy_secretary', 'first')>> sadly comes up short — coughing and sputtering, unable to keep their delicious bounty down.<br>
<br>
The other, unnamed girl has failed to even finish her drinks, it is down to a final four as positions are shuffled for the next round.<br>
<br>
[<<moveTo "event_party_cum_contest_7" "Continue." 60>>]
<<else>>
Partway through the seeming never-ending torrent of <<getWordCum>> you start to wonder if this might be too much of a good thing. Pausing for a moment to catch your breath, you feel your belly gurgle with the salty bounty settling into it. Glancing around it looks like the two unnamed competitors have already washed out, while <<=setup.getNpcName('npc_hucow', 'first')>> has somehow already finished and is eyeing the cum the rest of you have remaining with obvious desire. Looking at the third of a glass you have left you take a deep breath — finishing this off is going to really put you to the test.<br>
<br>
<<if setup.getWillpower() >0>>
[<<moveTo "event_party_cum_contest_6_1" "Push yourself to finish." 60 "<<set $scene.spend=true>>">>]<br>
<<else>>
[@@.link_locked;You lack the willpower reserve to really push yourself.@@]<br>
<</if>>
[<<moveTo "event_party_cum_contest_6_1" "Try to finish drinking." 60 "<<set $scene.spend=false>>">>]<br>
[<<moveTo "event_party_cum_contest_quit_1" "Give up." 60 "<<set $scene.round=3.5>>">>]
<</if>>
<<else>>
Cum in this quantity takes on a whole other property, thick and bitter; more like trying to drink syrup than beer.
<<if setup.getTotalValue("cum") > 5>>
The bitter saltiness overwhelms you, overpowering even your recently discovered cum-lust and by the time you are merely halfway through, you feel like you are drowning, almost ready to hurl. Though you try to push through, it proves too much, losing rhythm in your distraction, a cough, a gag and a back-flood that flows down your chin marking your ignominious exit from the competition.
<<else>>
The bitter foulness overwhelms you, your stomach rising into your throat as you are forced to tip the glass down to retch, spitting the foulness onto the table and thus eliminating yourself.
<</if>>
<br><br>
Your glass saved by a nimble waitress you are escorted away along with the others that failed this round. As you pass off-stage you notice a group of waitresses congregating on the half-empty glasses, having a competition of their own for who gets to sup on the remaining <<getWordCum>> in what turns out to be a kissing, chugging snowballing blend of debauchery.<br>
<br>
[<<moveTo "event_party_cum_contest_quit_2" "Stick around and watch the rest of the contest." 60 "<<set $scene.round=3>>">>]<br>
[<<moveTo "event_party_general" "Walk away and return to the party." 60>>]
<</if>>
</div>/*#
#desc: stage 3 party cum contest round 3 results
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.spend>>
<<if $player.flags.stage3party.cumContest < 4>>
<<set $player.flags.stage3party.cumContest = 4>>
<</if>>
<<spendWillpower 1>>
<<setThreshold "cum" "cum_contest" "cum_competitor">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
<<if $scene.spend>>
Steeling your will, you push aside all thoughts save the will to drink more cum. Spurred on by your newfound resolve, you tilt the glass high, feeling a fresh flood of salty goodness flow down your welcoming throat, moaning softly as you wait for the final drops to trickle down into your mouth before placing the glass triumphantly down.<br>
<br>
Taking a moment to catch your breath, you look around. You note the unnamed girl has failed to even finish her drink, panting in surrender with a quarter glass still before her. <<=setup.getNpcName('npc_sissy_secretary', 'first')>> does slightly better but is also eliminated as they almost choke, sputtering and coughing as they fail to swallow the final mouthful of cum. Waitresses appear to clean things up. It is down to a final four and you follow directions as things are reorganised for the next round.<br>
<br>
[<<moveTo "event_party_cum_contest_7" "Continue." 60>>]
<<else>>
Even though you were past the halfway point it seems like the remaining cum pours out forever. You feel bloated and almost sick as you try to force yourself to keep drinking. Glancing around at the other competitors already eliminated or finished you try to swallow the final mouthful only to lose it, your body jerking as you try to hold it down, squeezing your eyes closed in concentration only to cough and wheeze, a mix of cum and saliva spraying onto the table in front of you to seal your failure.<br>
<br>
A waitress leading you off in shameful failure you glance back at the remaining three contestants.<br>
<br>
[<<moveTo "event_party_cum_contest_quit_2" "Stick around and watch the rest of the contest." 60 "<<set $scene.round=3>>">>]<br>
[<<moveTo "event_party_general" "Walk away and return to the party." 60>>]
<</if>>
</div>/*#
#desc: stage 3 party cum contest round 4
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
"@@.npc_development;A fatal four-way! Truly tonight has seen the best crop of competitors I have witnessed in quite some time! Watch out all you <<if $options.fem_all_women>>ladies<<elseif $options.fem_all_men>>guys<<else>>guys and gals<</if>> — these are true, bona-fide cum-hounds! Keep a tight hold on those leashes or you may find yourselves sucked dry when you least expect it!@@"<br>
<br>
The audience laughs at her introduction as the tables are removed and the four of you are lined up for the next phase of competition. Out of the corner of your eye, you notice several of the <<men>> in the audience <<if $options.fem>>lifting their skirts or <</if>>loosening their belts and moving to form a line off to one side.<br>
<br>
"@@.npc_development;And now we come to the final round. The one that will prove which of these competitors is the true thirstiest cumslut of them all!@@" <<=setup.getNpcName("npc_development","formal")>> turns to face you and the other three competitors with a grin. "@@.npc_development;The rules are simple — you will each walk into the audience to find a volunteer, then lead them back to the stage where you will kneel down and jerk them off until they paint your face with a blessed offering. Then you will turn to one of your fellows, have a nice lick, and exchange body-shots. This will repeat until there is only one girl left standing.@@"<br>
<br>
<<if setup.hasTmpEffect('drunk')>>
You gulp nervously as you look around at your competition. You already feel quite drunk while the other three girls look much more composed.
<<elseif setup.hasTmpEffect('tipsy')>>
You look around, while you are still feeling the effects of your earlier shots of alcohol you look in no worse shape than the other girls.
<<else>>
You glance around, feeling confident that you appear to be the most sober of the remaining competitors.
<</if>>
<br><br>
[<<moveTo "event_party_cum_contest_8" "You're not dropping out now! Go find your first <<if $options.fem>>girl<</if>>cock." 60>>]<br>
<<if setup.getTotalValue("penis") >= 15>>
[@@.link_locked;Pass up the opportunity to enjoy some <<getWordPenis>>? Never!@@]
<<else>>
[<<moveTo "event_party_cum_contest_quit_1" "Give up." 60 "<<set $scene.round=4>>">>]
<</if>>
</div>/*#
#desc: stage 3 party cum contest round 4 start
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.hasTmpEffect('drunk') && !setup.hasTmpEffect('tipsy')>>
<<setTmpEffect 'tipsy'>>
<</if>>
<<applyExperience 'cum' 7 'little' $EXPOSED>>
<<applyExperience 'humiliation' 8 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
Making your way into the crowd alongside your fellow competitors, you almost instantly find a volunteer, a grinning, younger-looking <<man>> who has <<his>> pants half off almost the instant you get back to the stage. Dropping to your knees, you smile up at <<him>> in encouragement as you start to stroke <<his>> hard cock. Your fellow competitors doing the same to either side of you.<br>
<br>
Cheered on by the audience, it isn't long before you reflexively close your eyes as <<he>> spurts across your face, the hot, thick cum running from your forehead to your chin as you carefully open your eyes and look around for someone to do shots with. You lock eyes with <<=setup.getNpcName('npc_sexdoll', 'first')>>, her face already dripping with cum in a way that looks practically natural given her slutty makeup.<br>
<br>
The two of you rise to your feet as waitresses appear to hand you a shot of tequila each. <<=setup.getNpcName('npc_sexdoll', 'first')>> nestles the shot between her massive breasts as you
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
do the same, being careful not to lose the glass between your gigantic melons.
<<case 'large'>>
do the same; though you may be a bit smaller than her your ample cleavage has no problem cradling the shotglass.
<<case 'medium'>>
do the same; the shotglass easily tucking into your cleavage.
<<case 'small'>>
make do the best you can with your modest rack.
<<case 'none'>>
do the best you can given your flat chest.
<</switch>>
<br><br>
The both of you prepared, you wait for the other pair to get in position. <<=setup.getNpcName('npc_development', 'formal')>> gives the signal, a slice of lime placed between your lips to start things off. <<=setup.getNpcName('npc_sexdoll', 'first')>> leans in to eagerly lick your face clean before diving down to snatch the shotglass between her lips and pound it back before stealing your lime with a passionate kiss.<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> spreads her lips and a fresh slice of lime is placed between <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> puffy dick-pillows. She flutters her eyelashes in invitation as a drop of cum drips from her chin to plop into the glass of booze nestled between her breasts.<br>
<br>
Lust takes hold as you lean forward, your tongue eagerly tracing the lines of cum on her face and then descending down, down between her breasts, kissing each before you take the glass in hand and lean back, the heat of the alcohol burning its way down your throat before you lean in for a kiss. Your lips press against hers as you bite down, the sour lime bursting in your mouth. Leaning forward, she grinds against you for an extra moment and then waitresses are gently separating you and pointing you towards the audience to continue the competition.<br>
<br>
[<<moveTo "event_party_cum_contest_9" "You're in it to win it, go find your next <<if $options.fem>>girl<</if>>cock." 60>>]<br>
<<if setup.getTotalValue("penis") >= 15>>
[@@.link_locked;Pass up the opportunity to enjoy some <<getWordPenis>>? Never!@@]
<<else>>
[<<moveTo "event_party_cum_contest_quit_1" "That's enough of that." 60 "<<set $scene.round=5>><<set $scene.subround=1>>">>]
<</if>>
</div>/*#
#desc: stage 3 party cum contest round 4 first cock
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png" setup.charImage("npc_hucow","npc_hucow_3")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") >= 15>>
The quantity of alcohol you have consumed starts to eat away at even your epic stamina but you focus yourself on the task at hand as you locate your next "assistant," half-dragging <<if $options.fem>>her<<else>>them<</if>> to the front before plopping down on your knees and setting to work.
<<elseif setup.hasTmpEffect('drunk')>>
Walking very unsteadily you stagger into the audience, thankfully finding your next "assistant" quickly and half leaning on <<if $options.fem>>her<<else>>them<</if>> to make your way back to the stage. Falling to your knees you reach out and start stroking.
<<else>>
You're a bit tipsy but still keeping it together as you make your way through the crowd to find your next assistant and return to the stage, on your knees and stroking right along your fellow competitors.
<</if>>
<br><br>
It isn't long before your face is painted with a fresh trail of <<getWordCum>>; this time you find yourself facing off with the lovely <<=setup.getNpcName('npc_hucow', 'full')>>, her heaving breasts leaking through her thin top in testament to her excitement.<br>
<br>
Heedless of the amount of <<getWordCum>> she has already consumed, <<=setup.getNpcName('npc_hucow', 'first')>> ravenously licks your face, taking a bit longer than necessary as she seeks out every drop before leaning down for the tequila almost as an after-thought.<br>
<br>
You return the favour and slam back another shot as the sexy hucow rises in her hooves and heads off to find another customer.<br>
<br>
Before you can rise you find yourself face to face with <<=setup.getNpcName('npc_futa', 'first')>>, or rather her engorged lady lance.<br>
<br>
"@@.npc_futa;How about I save you the trip?@@" She asks breathlessly, "@@.npc_futa;I swear I fucked my <<boy>>friend's brains out before I came tonight but it seems my belly isn't the ONLY thing full of cum and I so very much want to win and get a proper home dungeon installed...@@"<br>
<br>
[<<moveTo "event_party_cum_contest_10" "Start stroking." 60>>]<br>
<<if setup.getTotalValue("penis") >= 15>>
[@@.link_locked;Her <<getWordPenis false>> is so big and beautiful in front of you, how can you resist?@@]
<<else>>
[<<moveTo "event_party_cum_contest_quit_1" "Throw in the towel." 60 "<<set $scene.round=5>><<set $scene.subround=2>>">>]
<</if>>
</div>/*#
#desc: stage 3 party enter cum contest round 4 second cock
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.stage3party.cumContest < 5>>
<<set $player.flags.stage3party.cumContest = 5>>
<</if>>
<<if setup.getTotalValue("stamina") >= 15>>
<<elseif setup.hasTmpEffect('drunk')>>
<<cancelTmpEffect 'drunk'>>
<<setTmpEffect 'wasted'>>
<<elseif setup.hasTmpEffect('tipsy')>>
<<cancelTmpEffect 'tipsy'>>
<<setTmpEffect 'drunk'>>
<<else>>
ERROR:unexpected state
<</if>>
<<applyExperience 'cum' 9 'little' $EXPOSED>>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png" setup.charImage("npc_futa","npc_futa_4")>>
<div id="invframe" class="scrolltext">
Your fingers have barely wrapped around <<=ps(setup.getNpcName('npc_futa', 'first'))>> thick broadsword when she starts to drip and moan. Stroking faster, you are treated to an initial squirt and then a cannon-like blast that splashes across your dazed face like you just got hit with a water balloon.<br>
<br>
"@@.npc_futa;Whew! Sorry about that,@@" she states as she staggers back, "@@.npc_futa;I get pent up, like... really fast, you just stay right there and I'll be back in a mo.@@"<br>
<br>
Blinking in surprise at her volume, you return to your feet, thankful for the brief rest as you use the shot-glass to catch some of what is dripping off your chin.<br>
<br>
Looking around as you wait, you watch as <<=setup.getNpcName('npc_hucow', 'first')>> eliminates herself, her thirst getting the better of her as she opens wide to shoot directly onto her tongue rather than painting her face. From the look on her face as she walks away licking her lips you aren't quite sure if she realises, or cares, about the disqualification.<br>
<br>
<<=ps(setup.getNpcName('npc_futa', 'first'))>> somehow still-hard <<getWordPenis false>> slapping against her thighs, she walks over after having successfully "prepped" her face, slotting the shot-glass into position as she gives an innocent shrug and waits for the signal.<br>
<br>
With only three of you left, things get a bit trickier, but the massive load <<=setup.getNpcName('npc_futa', 'first')>> gifted you with provides a partial solution as she licks one side of your face then <<=setup.getNpcName('npc_sexdoll', 'first')>> the other before you take your own shot from betwixt <<=ps(setup.getNpcName('npc_futa', 'first'))>> shapely breasts.<br>
<br>
All three of you unsteady on your heels, it's time to fan out into the audience for the next round.<br>
<br>
<<if setup.hasTmpEffect('tipsy')>>
Though far from sober, a glance at your competition has you feeling that you're a bit closer to such than the two remaining other girls.
<<elseif setup.hasTmpEffect('drunk')>>
You are definitely drunk, but so is your competition so maybe you still have a shot?
<<elseif setup.hasTmpEffect('wasted')>>
You've drunk so much you can barely stand and just walking into the crowd again without falling over will be an accomplishment, much less continuing the contest.
<<else>>
ERROR: unexpected state!
<</if>>
<br><br>
[<<moveTo "event_party_cum_contest_11" "Keep pushing." 60>>]<br>
[<<moveTo "event_party_cum_contest_quit_1" "Throw in the towel." 60 "<<set $scene.round=5>><<set $scene.subround=3>>">>]
</div>/*#
#desc: stage 3 party enter cum contest round 4 3rd cock
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.hasTmpEffect('wasted')>>
<<include "endOfPartyCollar">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
<<if setup.hasTmpEffect('wasted')>>
You take two steps towards the audience and then stumble only to be saved from face-planting by a strong pair of arms.<br>
<br>
"@@.npc_manager;A valiant effort, but I think you have had enough for one night.@@"<br>
<br>
You're too out of it to do anything but hang off her shoulder as she all but carries you out of the party and down to the parking garage. Drifting to sleep in the car the next time you open your eyes you find yourself back in bed, unsure if you can trust your memory of <<=setup.getNpcName("npc_manager","formal")>> helping you change for bed, tucking you in and... did she kiss you goodnight?<br>
<br>
Thinking still hurts too much and you roll over and fall back asleep.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_wake_up" "Wake up the next morning." _timeToMorning>>]
<<else>>
Two more rounds of stroking and pounding shots sees <<=setup.getNpcName('npc_futa', 'first')>> falter and drop out, though from the lusty look on her face as she is helped away by a couple waitresses, you aren't sure if she's done or just too horny to do anything but fuck something.<br>
<br>
Staring down <<=setup.getNpcName('npc_sexdoll', 'first')>> with her cum painted face, the girl seems indefatigable, an engine of cum-drinking seductive lust practically unencumbered by the copious amount of hard liquor she has by now put back.<br>
<br>
Swaying slightly as you finish another shot, you stare out into the crowd, already you felt like you were stroking two <<if $options.fem>>girl<</if>>cocks the way you were double visioning. Do you have what it takes to claim your prize, whatever that was?<br>
<br>
<<if setup.hasTmpEffect('drunk')>>
[<<moveTo "event_party_cum_contest_12" "Attempt to stagger forward." 60 "<<cancelTmpEffect 'drunk'>><<setTmpEffect 'wasted'>>">>]<br>
<<else>>
[<<moveTo "event_party_cum_contest_12" "Keep pushing forward." 60 "<<cancelTmpEffect 'tipsy'>><<setTmpEffect 'drunk'>>">>]<br>
<</if>>
<</if>>
</div>/*#
#desc: stage 3 party enter cum contest round 4 victory
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 16 'normal' $EXPOSED>>
<<setThreshold "cum" "cum_contest" "cum_champion">>
<<include "endOfPartyCollar">>
<<if $player.flags.stage3party.cumContest < 6>>
<<set $player.flags.stage3party.cumContest = 6>>
<</if>>
<<if $events.hasOwnProperty('party_spill_event')>>
<<removeEvent 'party_spill_event'>>
<</if>>
<<if $currentTasks.hasOwnProperty('bed_heels_photo') && !$currentTasks['bed_heels_photo'].finished>>
<<postponeTask 'bed_heels_photo' 1>>
<</if>>
<<removeEvent 'work_party_end'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
Drawing deep on your reserves, you somehow find a fresh wind as you drag yet another volunteer back to give your face a fresh coating of cum.<br>
<br>
Both you and <<=setup.getNpcName('npc_sexdoll', 'first')>> are wobbling a bit as you go first, licking the trail of cum from her saliva-covered face before knocking back the shot and biting down on the lime, the citrus disappointing in that it distracts from the lingering taste of cum that otherwise suffuses everything even as the burst of sour helps focus your attention.<br>
<br>
Waiting for your opponent to take her turn, you bite your lip as her tongue explores your face to the raucous cheers of the crowd.<br>
<br>
Licking her lips, her eyes are unfocused as she leans forward to take the shot, only to pass out and nearly knock you over as she flops into your breasts, waitresses thankfully rushing to help you both.<br>
<br>
"@@.npc_development;Winner!@@" <<=setup.getNpcName('npc_development', 'formal')>> calls out as she raises your arm into the air. Exhausted, drunk and nigh bursting with <<getWordCum>>, you barely even remember why you entered this contest, thankful to be passed off to <<=setup.getNpcName('npc_manager', 'formal')>> who casually cradles you in her arms as she looks down at you with pride.<br>
<br>
"@@.npc_manager;What a performance! and I know just what to do with that prize... your bedroom is going to be PERFECT!@@"<br>
<br>
It's a struggle just to keep your eyes open and you end up just giving up and falling into uneven slumber.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_new_bedroom_1" "Wake up the next morning." _timeToMorning>>]
</div>/*#
#desc: stage 3 party enter cum contest quit
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.round>>
<<case 1>>
Looking at the drinks in front of you — one of which is "enhanced" with cum you decide this is all just too weird before standing up and walking away.
<<case 2>>
Drinking a drink "enhanced" with a bit of cum was one thing, but taking multiple straight shots in hopes of deducing the source? No, that's a bit much, you stand up and walk away from the table.
<<case 3>>
Shots of cum was one thing, but drinking an entire yard of it? No, that's not the sort of thing you're going to be doing in public tonight, you stand up and walk away.
<<case 3.5>>
The thought of drinking a single drop more of cum has you feeling nauseous and you stand up and walk away, hurrying slightly lest the mere lingering scent of <<getWordCum>> set you off.
<<case 4>>
Your belly already brimming with cum the thought of doing shots has you feeling a bit queasy, you stand up and walk away.
<<case 5>>
<<if $scene.subround == 2>>
As enticing as taking a thick <<if $fetish.futanari>>futa <</if>>facial is you find yourself declining the offer and bowing out of the competition
<<else>>
You stagger away from the competition, declining to try and locate another volunteer.
<</if>>
<<default>>
ERROR: unexpected scene.round: <<=$scene.round>>
<</switch>>
<br><br>
<<if $scene.round < 5>>
[<<moveTo "event_party_cum_contest_quit_2" "Watch the rest of the contest from the audience." 60>>]<br>
<<else>>
[<<moveTo "event_party_cum_contest_quit_1b" "Find a safe place to watch the conclusion of the contest." 60>>]<br>
<</if>>
[<<moveTo "event_party_general" "Walk away and return to the party." 60>>]
</div>/*#
#desc: stage 3 party enter cum contest spectate
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.subround>>
<<case 1>>
You can feel the shot of tequila floating on the sea of cum filling your belly as you watch the remainder of the contest. The first to be eliminated of the remaining three is <<=setup.getNpcName('npc_hucow', 'first')>> — disqualified due to giving in to drunken cum-lust and shooting a load into her eagerly open mouth rather than onto her face. With the hucow out it's down to just <<=setup.getNpcName('npc_futa', 'first')>> and <<=setup.getNpcName('npc_sexdoll', 'first')>>
<<case 2>>
You watch as <<=setup.getNpcName('npc_hucow', 'first')>> disqualifies herself by shooting a load into her own eagerly open mouth rather than onto her face. With the hucow out it's down to just <<=setup.getNpcName('npc_futa', 'first')>> and <<=setup.getNpcName('npc_sexdoll', 'first')>>
<<case 3>>
With you giving up it's down to just <<=setup.getNpcName('npc_futa', 'first')>> and <<=setup.getNpcName('npc_sexdoll', 'first')>>
<</switch>>
where the latters unquenchable bimbo lust eventually triumphs over the former's increasing consternation at the bulging distraction in her tenting skirt.<br>
<br>
[<<moveTo "event_party_general" "Return to the party." 60>>]
</div>/*#
#desc: stage 3 party enter cum contest spectate final round
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Contest Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_cum_contest.png">>
<div id="invframe" class="scrolltext">
You stand in the audience and watch the drinking contest.<br>
<br>
<<if $scene.round < 1>>
The various competitors take their seats at several long tables <<=setup.getNpcName('npc_development', 'formal')>> appears to introduce things. "@@.npc_development;Welcome, all to another of our weekly drinking contests! As always the winner — providing they complete all challenges as well as defeating their opponents — will win a complete remodel of the room of their choice! A world-class kitchen? A perfect craft room? A devilish dungeon? The choice is yours — providing you can demonstrate skill, stamina and, most of all, thirst! Now, with no further ado, let the first round commence!@@"<br>
<br>
The first round of competition has each contestant drinking three otherwise identical shots of salty dog cocktails and then identifying which was "enhanced" with a bit of cum. The salty composition of the base cocktail makes this an obvious challenge and over half the contestants fail the task and are eliminated.<br>
<br>
<</if>>
<<if $scene.round < 2>>
For the second round the contestants are challenged to identify the "source" of the <<getWordCum>> they sussed out in the first round from amongst several choices. This proves even more challenging as by the end of it things are down to a mere half-dozen competitors — though all four of your "friends" are among them.<br>
<br>
<</if>>
<<if $scene.round < 3>>
The third round of competition takes things back to a more "traditional" drinking challenge as each contestant must gulp down a "yard" of hot <<if $fetish.bestiality_hard>>horse <<elseif $options.fem>>girl <</if>>cum out of the classic elongated glass — though this one sports two "bulbs" at the base rather than the traditional one to give it a very phallic appearance. The challenge of swallowing so much creamy<<if setup.getTotalValue("cum") > 10>> goodness<</if>> proves too much for several of the contestants, including <<=setup.getNpcName('npc_sissy_secretary', 'first')>> who looks to almost choke as she struggles to keep up with the pour, being eliminated as <<getWordCum>> spurts out of her nose.<br>
<br>
<</if>>
<<if $scene.round < 4>>
It's down to just three competitors for the final round — <<=setup.getNpcName('npc_hucow', 'first')>>, <<=setup.getNpcName('npc_futa', 'first')>> and <<=setup.getNpcName('npc_sexdoll', 'first')>>, each girl instructed to strip partially as they proceed to rotate doing body-shots of tequila off each other — with <<getWordCum>> substituting for the traditional salt.<br>
<br>
The competition is fierce as each girl in turn "preps" by jerking an audience member to get a nice facial before one of their opponents licks, drinks and kisses to uproarious applause.<br>
<br>
<<=setup.getNpcName('npc_hucow', 'first')>> is the first elimination, losing on a technicality as she loses focus and ends up shooting the load into her mouth rather than onto her face as instructed. Staggering away, her large breasts swinging with each drunken step she hardly even looks disappointed in herself as she licks her lips in delight at her "treat." <br>
<br>
Down to <<=setup.getNpcName('npc_futa', 'first')>> and <<=setup.getNpcName('npc_sexdoll', 'first')>> things are close — you can't help but be amazed at the way your once-shy friend <<=setup.getNpcName('npc_futa', 'first')>> really goes for it but, in the end, it proves insufficient to beat out <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> raw bimbo powers. Her pants bulging with the opposite of whiskey dick <<=setup.getNpcName('npc_futa', 'first')>> throws in the towel leading to a somewhat amusing "victory" speech as <<=setup.getNpcName('npc_sexdoll', 'first')>> expresses confusion at needing a remodel when she lives at the office, explaining that she just entered because she was thirsty!
<</if>>
<br><br>
With the competition over the crowd that had gathered disperses, your by now quite inebriated friends looking to have slipped away in the confusion.<br>
<br>
[<<moveTo "event_party_general" "Back to the party." 60>>]
</div>/*#
#desc: wake up in your new bedroom
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<advanceTmpEffects $tempEffects>>
<<set $status_flat.bedroom = 2>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_other_bedroom'
0
'event_manager_bedroom_1'
false
>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_bedroom_pink.png">>
<div id="invframe" class="scrolltext">
You awaken to a cheery, musical voice telling you to "wake up, <<if $fetish.sissy>>sissy<<else>>slut<</if>>! Open wide and seize the day!" Feeling like you are nestled in a soft, fluffy cloud, your eyes slowly flutter open only for your brain to start to catch up and for you to sit up in shock.<br>
<br>
Pinching yourself several times would seem to indicate that you are no longer dreaming and yet... your eyes scan the room around you as your jaw drops in surprise. The dimensions and overall layout are correct but your room... sliding smoothly out from under luxurious silk sheets you look around your "new" room as you recall the contest from last night... is this your prize?<br>
<br>
Ducking into the hallway shows that the rest of your apartment is unchanged and you return to the bedroom to take in the astounding transformation that has been wrought in so little time.<br>
<br>
If you were to summarise things it would be "set for the climactic dream sequence in a big budget forced feminisation porno" — almost everything is pink, from the thick carpet to the candy-like wallpaper to the frilly curtains surrounding the lone window. Replacing your old wardrobe is an even larger pink edifice. Swinging the door open you confirm that all of your clothes have already been hung, your array of neatly organised outfits looking pitifully limited in the large space. A large mirror-equipped battlestation means you will never again want for a place to do your makeup and then there is your bed...<br>
<br>
Even compared to the rest of the room your bed is something to behold — a king-sized four-poster edifice of pink silk and satin, padded cuffs hanging from each corner with additional attachment points studding the sides and the looming headboard.<br>
<br>
Shaking your head, you recall that you still have work today, glancing at your phone to notice that you apparently had a short conversation with your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>>.<br>
<br>
Skimming through the sequence of text messages, it seems you — or someone acting on your behalf, gave <<him npc_landlord>> permission to open up the flat to a construction crew. The time-stamp would indicate this all happened while you were still at the party... maybe even while the contest was yet running? It's hard to be certain of timing given how much you drank, either way the crew must have worked at a blistering pace to have wrought the changes surrounding you.<br>
<br>
Sighing at this "intrusion" and transformation you head for the kitchen to make coffee and beat back the surprisingly small hangover you're feeling as you get ready for another day.<br>
<br>
[<<moveTo "room_breakfast" "Continue." 120>>]
</div>/*#
#desc: manager asks for assistance at party
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
The elevator door is about to open when <<=setup.getNpcName("npc_manager","formal")>> taps the pause button and turns to you.<br>
<br>
"@@.npc_manager;Actually... I know this parties are a bit outside of your normal work responsibilities... but I could really use a hand tonight. You see I have a couple of people that I need to discuss matters with. Handling both matters myself could be a challenge time-wise... but if you could handle one of them on my behalf, well... that would simplify matters greatly.@@"<br>
<br>
Your heart skips a beat at the idea of <<=setup.getNpcName("npc_manager","formal")>> trusting you with such responsibility.<br>
<br>
[<<moveTo "event_party_manager_assist_first_2" 'Of course, <<=setup.getNpcName("npc_manager","formal")>>. What does your <<=setup.getNpcName("npc_manager","title")>> require?' 300 "<<set $scene.action='yes'>>">>]<br>
[<<moveTo "event_party_manager_assist_first_2" "But you're just a <<if $fetish.sissy>>SISSI <</if>>Secretary!" 300 "<<set $scene.action='reluctant'>>">>]<br>
[<<moveTo "event_party_manager_assist_first_2" "No... you don't think you could handle that responsibility." 300 "<<set $scene.action='no'>>">>]<br>
</div>/*#
#desc: agree to assist manager at party
#status: RELEASED 0.8.8.0
#ignore_spell: acqui
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case "yes">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<case "no">>
<<set _nextDate = setup.setNextDate($now, 0, 22, 0)>>
<<addEvent 'work_party_assist_abort_end' _nextDate>>
<</switch>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "yes">>
You straighten and reply that, of course you will assist her to the best of your abilities. You are her <<=setup.getSecretaryTitle()>>, after all.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> beams with pride. "@@.npc_manager;Exactly what I like to hear... though also what I expect, since that very attitude is what has fueled your oh-so-successful career. As to what I require of you, let me explain... no, there is too much, let me sum up.@@"
<<case "reluctant">>
You bashfully shake your head as you reply that you're "@@.pc;just a <<if $fetish.sissy>>SISSI <</if>>Secretary... you can't stand in for a Director!@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> chuckles for a moment, "@@.npc_manager;you would be surprised... there are many departments that would fall apart without the administrative staff covering for managers who foolishly believe that they are in charge...@@" Her tone becomes more serious as she looks you in the eye "@@.npc_manager;as for you, well... you are not merely a <<if $fetish.sissy>>SISSI <</if>>Secretary... but an <<=setup.getSecretaryTitle()>>. MY <<=setup.getSecretaryTitle()>>. Your job is to assist me in whatsoever manner I require and, given how well you have proven yourself thus far, I believe it is time for you to learn to stand in for me on occasion. I am but one woman, after all, and this is quite the large, growing company. If I could delegate a few more things to you, well... that would make everything run smoother.@@"<br>
<br>
The confidence she's showing in you has your heart skip a beat and you slowly nod, still nervous... but unable to betray the faith she has shown in you.<br>
<br>
"@@.npc_manager;Wonderful. And, I promise, it is nothing too complicated. Let me explain... no, there is too much, let me sum up.@@"
<<case "no">>
You nervously shake your head, that sounds like WAY too much responsibility... especially given the sometimes severe consequences of failure at this company.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;Disappointing. With all your hard work I thought you were ready to take your responsibilities to the next level. Not that you are not oh-so-helpful as it is... but you being able to shoulder some more complex duties and act on my behalf...@@" She shakes her head and takes a deep breath. "@@.npc_manager;Perhaps some other time. Enjoy the party, I have some work to attend to.@@"<br>
<br>
She marches off to the first of her meetings.<br>
<br>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != "no">>
[<<moveTo "event_party_manager_assist_first_3" "Listen to her instructions." 180>>]
<<else>>
[<<moveTo "event_party_root" "Step into the ballroom." 180>>]
<</if>>
</div>/*#
#desc: briefed by manager re: assisting her at party
#status: RELEASED 0.8.8.0
#ignore_spell: acqui
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> goes in to a rapid-fire explanation of things.<br>
<br>
"@@.npc_manager;So, the key matter at hand is that the company is, yet again, expanding via merger. You may recall a similar process with your prior employer company, Cloud Data Services. This is much the same, but at a different scale, over a thousand employees that will need to be onboarded and merged in to existing teams. Obviously this will be an ongoing process that will involve many departments but, as HR, we represent something of the tip of the spear. If we do not have things coordinated, everything downstream will be impacted. The person you will be meeting tonight was the head of HR for this other company, obviously they will be folded in under my organisation, but they will remain the domain-matter expert on their prior employees as they take point in dealing with converting benefits, dealing with any personnel issues, and making sure titles and responsibilities are transitioned properly. Towards that end the most important thing is the employees themselves. We strive to minimise attrition and I have set the ambitious goal of ninety-five percent retention a year post merger. I have tied their bonus to this metric, so they are obviously quite fixated, and, hopefully, motivated. Of particular concern in the short-term is dates. I want all of their employee database converted to our system by <<=["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", "January"][$now.getUTCMonth()+1]>> one. Any further delay will only cause a negative cascade. Expect pushback! The person you are talking to is used to being in charge of these things and has already shown some difficulty in adjusting to taking directions, but I expect you to stand firm. Remember, you are there representing me, and in such matters one of the most important things is to act with confidence, and without hesitation.@@"<br>
<br>
You blink as you realise that <<=setup.getNpcName("npc_manager","formal")>> didn't even pause to take a breath in the course of info-dumping on you. She points across the room to a slightly older, but very well put together, woman talking to some other manager. "@@.npc_manager;That is <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>>. I will leave you to it while I deal with my other matter. Good luck.@@"<br>
<br>
You take a deep breath and consider how to approach your target...<br>
<br>
[<<moveTo "event_party_manager_assist_first_4" "Politely, but confidently, approach and interject yourself." 180 "<<set $scene.approach='confident'>>">>]<br>
[<<moveTo "event_party_manager_assist_first_4" "Brashly force your way into the conversation." 180 "<<set $scene.approach='brash'>>">>]<br>
[<<moveTo "event_party_manager_assist_first_4" 'Meekly wait for <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> to finish her current discussion.' 180 "<<set $scene.approach='meek'>>">>]
</div>/*#
#desc: spot contact for first manager party
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_manager">>
<div id="invframe" class="scrolltext">
<<switch $scene.approach>>
<<case "confident">>
Standing tall you walk across the ballroom and wait just long enough for a pause in the conversation to introduce yourself and note that you need to speak with <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> on behalf of <<=setup.getNpcName("npc_manager","other")>>.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> flicks to your throat. It seems she has had at least some instruction on how things work at Social Interaction Service Syndicate Inc.
<<switch $scene.wornCollarType>>
<<case 'ring' 'collar'>>
"@@.generic_female1;A slave?@@" <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> asks derisively, only for you to quickly correct her.<br>
<br>
"@@.pc;You are new to our organisation, and I, of course, welcome you to our corporate family. In time you will learn that we slaves are vital to the efficient running of the company. As for myself, I am proud to be <<=ps(setup.getNpcName("npc_manager","formal"))>> personal <<=setup.getSecretaryTitle()>>. She has instructed me to speak with you on her behalf this evening. I would ask that you extend me the same trust and confidence that she has in me, and in return I will do everything in my power to address your needs.@@"
<<case 'choker'>>
"@@.generic_female1;I see... I was really hoping to speak with <<=setup.getNpcName("npc_manager","other")>> directly, some of my concerns really need to be seen by a senior manager...@@"<br>
<br>
"@@.pc;I apologise if expectations were not clearly communicated. I am <<=ps(setup.getNpcName("npc_manager","other"))>> personal <<=setup.getSecretaryTitle()>>. She has personally instructed me to speak with you on her behalf this evening. I would ask that you extend me the same trust and confidence that she has in me, and in return I will do everything in my power to address your needs.@@"
<<case 'necklace'>>
"@@.generic_female1;I see... I was really hoping to speak with <<=setup.getNpcName("npc_manager","other")>>, but if you are an assistant director or such, I suppose that will have to do.@@"<br>
<br>
"@@.pc;I am not an associate directory, but I am <<=ps(setup.getNpcName("npc_manager","other"))>> personal <<=setup.getSecretaryTitle()>>. She has personally instructed me to speak with you on her behalf this evening. I would ask that you extend me the same trust and confidence that she has in me, and in return I will do everything in my power to address your needs.@@"
<<default>>
ERROR unexpected scene.worn collar: <<=$scene.wornCollarType>>
<</switch>>
<br><br>
<<=ps(setup.getNpcName("generic_female1","custom", "Ms. Poole"))>> seems less than fully satisfied, but she nods, as her friend excuses themselves and slips back into the crowd. "@@.generic_female1;Very well, let us proceed to business, then.@@"
<<case "brash">>
You boldly interrupt the discussion that <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> to announce yourself.<br>
<br>
<<switch $scene.wornCollarType>>
<<case 'ring' 'collar'>>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> turns to you with clear annoyance, her expression turning even more dour as her gaze lingers on your throat.<br>
<br>
"@@.generic_female1;How rude! I thought slaves at this company were taught better than that... and you claim to be here on behalf of <<=setup.getNpcName("npc_manager","other")>>? That is VERY disappointing, and really makes me question how committed she is to making this merger go smoothly.@@"
<<case 'choker'>>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> turns to you with clear annoyance, and she sniffs in annoyance as her gaze lingers on your throat.<br>
<br>
"@@.generic_female1;How rude! I thought employees at this company were taught better than that... and you claim to be here on behalf of <<=setup.getNpcName("npc_manager","other")>>? That is VERY disappointing, and really makes me question how committed she is to making this merger go smoothly.@@"
<<case 'necklace'>>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> turns to you with clear annoyance, her gaze momentarily lingering on your necklace.<br>
<br>
"@@.generic_female1;How rude! I thought employees at this company were taught better than that... I had hoped to deal with <<=setup.getNpcName("npc_manager","other")>> directly... but I suppose we can review things, at least.@@"
<<default>>
ERROR unexpected scene.worn collar: <<=$scene.wornCollarType>>
<</switch>>
<br><br>
You somewhat dismissively ignore <<=ps(setup.getNpcName("generic_female1","custom", "Ms. Poole"))>> complaints, asserting that you are here on <<=ps(setup.getNpcName("npc_manager","other"))>> behalf and that if <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> wishes to do business this evening, it will be with you.<br>
<br>
Clearly not wanting to be in the middle of things the person <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> had been speaking with slips away as <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> snorts in annoyance and then nods. "@@.generic_female1;Very well, let us proceed to business, then.@@"
<<case "meek">>
You nervously wait for <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> to finish her conversation, only for her to eventually turn to you in annoyance.<br>
<br>
"@@.generic_female1;Are you waiting for something<<if $scene.wornCollarType == "ring" || $scene.wornCollarType == "collar">>, slave<</if>>?@@"<br>
<br>
<<if $scene.wornCollarType == "ring" || $scene.wornCollarType == "collar">>
<<printThought "Slave? She may be new to the company, but she's a quick learner as to the organisation...">><br>
<br>
<</if>>
You explain that you are here on behalf of <<=setup.getNpcName("npc_manager","formal")>> and <<=ps(setup.getNpcName("generic_female1","custom", "Ms. Poole"))>> gaze narrows as she flicks past your throat.
<<switch $scene.wornCollarType>>
<<case 'ring' 'collar'>>
"@@.generic_female1;Sending a slave? And not even a particularly well-trained one... is this some sort of insult? I'll have you know this merger is very important and I do not appreciate being disrespected like this!@@"
<<case 'choker'>>
"@@.generic_female1;I see... well I had really hoped to speak with her directly... or at least someone a bit better credentialed and trained.@@"
<<case 'necklace'>>
"@@.generic_female1;I see... well I had really hoped to speak with her directly... but I suppose you shall do, even if your decorum could do with some work.@@"
<<default>>
ERROR unexpected scene.worn collar: <<=$scene.wornCollarType>>
<</switch>>
<br><br>
The person <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> carefully slips away as you try to apologise and explain that, while <<=setup.getNpcName("npc_manager","formal")>> is very busy, you are her personal <<=setup.getSecretaryTitle()>>, and that, if <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> wishes to do any business this evening, she needs to talk to you.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> glares at you for a few moments longer and then snorts in annoyance and nods. "@@.generic_female1;Very well, let us proceed to business, then.@@"
<<default>>
ERROR: unexpected scene.approach <<=$scene.approach>>
<</switch>>
<br><br>
[<<moveTo "event_party_manager_assist_first_5" "Listen to her concerns." 180 "<<set $scene.slut=false>>">>]<br>
[<<moveTo "event_party_manager_assist_first_5" "Ask if she requires any pleasure before you proceed to business?" 120 "<<set $scene.slut=true>>">>]<br>
</div>/*#
#desc: approach contact for first manager party
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.slut>>
<<applyExperience 'bimbofication' 15 'little' $EXPOSED>>
<<applyExperience 'submission' 18 'little' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_manager">>
<div id="invframe" class="scrolltext">
<<if $scene.slut>>
You ask <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> if she requires any pleasure before you proceed to business.<br>
<br>
She blinks, gaze once again drawn to your throat.
<<switch $scene.wornCollarType>>
<<case 'ring' 'collar'>>
"@@.generic_female1;Right... sorry, I am still adjusting to the way you do business here. I am quite satisfied, thank you, and I would prefer to focus on business rather than indulge in any distractions.@@"
<<case 'choker'>>
"@@.generic_female1;Sorry, I did not think a choker was sufficient for that?@@" She shakes her head "@@.generic_female1;Never mind. I am still adjusting to the way you do business here. In any case, I am quite satisfied, thank you, and I would prefer to focus on business rather than indulge in any distractions.@@"
<<case 'necklace'>>
"@@.generic_female1;You mean with one of the waitresses or something?@@" She asks as one of the scantily clad servers minces past. "@@.generic_female1;No thank you. I will confess that I am still adjusting to the way you do business here, but I am quite satisfied, thank you, and I would prefer to focus on business rather than indulge in any distractions.@@"
<<default>>
ERROR unexpected scene.worn collar: <<=$scene.wornCollarType>>
<</switch>>
<br><br>
You nod and listen for her to continue.
<<else>>
You wait patiently for <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> to begin.
<</if>>
<br><br>
"@@.generic_female1;So, obviously the stakes are very high in any merger, and I am afraid your requirements are making things even more a challenge. Seventy-five percent employee retention after a year? That is a VERY high bar to clear and involves many factors that are outside of my control!@@"<br>
<br>
<<if setup.getTotalValue("smart") > 18>>
<<printThought 'Seventy-five? I distinctly remember <<=setup.getNpcName("npc_manager","formal")>> specifying ninety-five! <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> is trying to weasel her way down!'>>
<<elseif setup.getTotalValue("smart") > 15>>
<<printThought 'Seventy-five? I distinctly remember <<=setup.getNpcName("npc_manager","formal")>> specifying ninety-five.'>>
<<else>>
<<printThought "Seventy-five? That doesn't sound right..">>
<</if>>
<br><br>
[<<moveTo "event_party_manager_assist_first_6" 'Remind <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> that it was ninety-five percent.' 180 "<<set $scene.percent='correct'>>">>]<br>
[<<moveTo "event_party_manager_assist_first_6" 'Ask <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> if she is certain about that number.' 180 "<<set $scene.percent='clarify'>>">>]<br>
[<<moveTo "event_party_manager_assist_first_6" 'Agree that seventy-five is a challenge, but one that must be met.' 180 "<<set $scene.percent='slip'>>">>]
</div>/*#
#desc: assert to contact for first manager party
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.percent == "correct">>
<<changeHorny 20>>
<<else>>
<<applyStress 10>>
<<applyExperience 'bdsm' 13 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_manager">>
<div id="invframe" class="scrolltext">
<<switch $scene.percent>>
<<case "correct">>
You gently, but firmly, remind <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> that the target is actually ninety-five percent.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> shifts uncomfortably. "@@.generic_female1;Ninety-five? I thought certainly that had to be a typo! I mean, that is practically impossible! And very unfair for my bonus to be tied to something so out of my control.@@"<br>
<br>
You remind <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> that she is an employee of Social Interaction Service Syndicate Inc. now, and that <<=setup.getNpcName("npc_manager","formal")>> has very high expectations for her department. "@@.pc;As Human Resources we are responsible for, and leaders for, the entire company. Towards that end what other companies consider impossible, we treat as routine. Employees are the company's most valuable asset, and your bonus structure reflects that. If you cannot appreciate that, and them, well... perhaps it is you who will not be so long at the company?@@"<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> is momentarily flustered but she eventually mumbles that she will do what she can.<br>
<br>
You smile, reminding her that she is part of a team, and that she should reach out to her coworkers, above, below, and to the side to assist her in meeting this, and any other, company-mandated goal.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> is slightly buoyed by your advice, though you're increasingly certain she was trying to trick you into lowering her target.
<<case "clarify">>
You gently ask if <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> certain about the seventy-five percent threshold?<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> snorts. "@@.generic_female1;I am pretty certain that is correct... but I suppose I can reconfirm with <<=setup.getNpcName("npc_manager","formal")>>. Perhaps I heard it wrong, it is quite a high bar.@@"
<<case "slip">>
You nod in understanding, agreeing that the bar is high, but that such aggressive targets are what make Social Interaction Service Syndicate Inc. an industry leader.<br>
<br>
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> smiles as you realise she just got something over on you. "@@.generic_female1;Very well, I shall do what needs to be done to hit a target of seventy-five percent retention for the year.@@"
<<default>>
ERROR: unexpected scene.percent <<=$scene.percent>>
<</switch>>
<br><br>
<<if $scene.percent == "correct">>
You catch yourself as your plug buzzes with pleasure. You reflexively glance around, catching brief sight of <<=setup.getNpcName("npc_manager","formal")>> on the far side of the large ballroom. Deep in a conversation of her own, she meets your eye just long enough for an ever so slight smile and nod.
<<else>>
You gasp as your plug bursts with a painful shock. You reflexively glance around, catching brief sight of <<=setup.getNpcName("npc_manager","formal")>> on the far side of the large ballroom. Deep in a conversation of her own, she meets your eye just long enough for an ever so slight shake of her head.
<</if>>
<br><br>
<<printThought "How did she know?">> You ask yourself, only to be drawn back to the conversation at hand.<br>
<br>
"@@.generic_female1;Is something the matter?@@" <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> asks.<br>
<br>
You shake your head, after all, why should you be surprised by something like this? <<=setup.getNpcName("npc_manager","formal")>> said from the start that such a plug was to better enable her to manage her <<if $fetish.sissy>>SISSI <</if>>Secretary. No, at this company... you should have been expecting as much, though that doesn't make it any less distracting.<br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_party_manager_assist_first_7" "Focus intently on the conversation at hand." 3600 "<<set $scene.focus=true>><<spendWillpower 1>>">>] <<hint $options "Focusing on the conversation will cost willpower.">><br>
<<else>>
[@@.link_locked;You lack the willpower to focus your attention.@@]<br>
<</if>>
[<<moveTo "event_party_manager_assist_first_7" "Let your focus on the conversation slip and brace for more action in your rear." 3600 "<<set $scene.focus=false>>">>]
</div>/*#
#desc: first manager party: answer prompt 2
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.focus>>
<<if setup.getTotalValue("smart") > 15>>
<<applyExperience 'smart' 18 'normal' $EXPOSED>>
<<set $scene.answers = 2>>
<<else>>
<<applyExperience 'smart' 15 'little' $EXPOSED>>
<<set $scene.answers = 1>>
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 18>>
<<applyExperience 'smart' 18 'normal' $EXPOSED>>
<<set $scene.answers = 2>>
<<elseif setup.getTotalValue("smart") > 15>>
<<applyExperience 'smart' 15 'little' $EXPOSED>>
<<set $scene.answers = 1>>
<<else>>
<<applyExperience 'smart' 10 'little' $EXPOSED>>
<<set $scene.answers = 0>>
<</if>>
<</if>>
<<switch $scene.answers>>
<<case 2>>
<<changeHorny 20>>
<<case 1>>
<<changeHorny 10>>
<<applyStress 5>>
<<applyExperience 'bdsm' 13 'normal' $INCOGNITO>>
<<case 0>>
<<applyStress 10>>
<<applyExperience 'bdsm' 13 'very' $INCOGNITO>>
<</switch>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_manager">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> continues on, asking several additional clarifying questions in regards to corporate policy and practice that you
<<if $scene.focus>>
<<if setup.getTotalValue("smart") > 15>>
<<if setup.getTotalValue("smart") > 18>>
are able to easily answer.
<<else>>
manage to answer, thanks to your focus.
<</if>>
Each correct response is rewarded by a pleasant buzz in your rear, though you keep the stimulation from further affecting your demeanor.
<<else>>
struggle to answer, your focus frayed as each correct response earning you a pleasant buzz... while each wrong answer resulting in a harsh shock. You are unsure which is more challenging to deal with.
<</if>>
<br><br>
Your focus has <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> looking none the wiser as to what's happening in your rear but she seems to eventually run out of questions as she brings things back for a final clarification.
<<else>>
<<if setup.getTotalValue("smart") > 18>>
manage to answer... though the pleasurable buzzes cause you to struggle, glad for your intellect to cover for your lack of focus.
<<elseif setup.getTotalValue("smart") > 15>>
are only partially able to answer, each correct response earning you a pleasant buzz... while each wrong answer resulting in a harsh shock. You are unsure which is more challenging to deal with as your focus further frays.
<<else>>
barely manage to answer, further distracted by a punishing shock in your rear for each incorrect response.
<</if>>
<br><br>
The distractions of your rear has <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> looking at you with increasing concern, and she finally brings things to a close with a final clarification.
<</if>>
<br><br>
"@@.generic_female1;So I believe I understand my marching orders, and will relay them accordingly. One final point of clarification. When did <<=setup.getNpcName("npc_manager","formal")>> want the employee records conversion to be completed by? We are working as hard as we can, but there is a lot of data and we do not wish to introduce any errors interfacing the two systems...@@"<br>
<br>
[<<moveTo "event_party_manager_assist_first_8" '<<=setup.getNpcName("npc_manager","formal")>> expects things to be fully migrated by the first of the month.' 180 "<<set $scene.date='correct'>>">>]<br>
[<<moveTo "event_party_manager_assist_first_8" '<<=setup.getNpcName("npc_manager","formal")>> wants things by mid quarter.' 180 "<<set $scene.date='wrong'>>">>]<br>
<<if $now.getUTCMonth() == 11>>
[<<moveTo "event_party_manager_assist_first_8" '<<=setup.getNpcName("npc_manager","formal")>> wants things by the end of the year.' 180 "<<set $scene.date='technically_correct'>>">>]<br>
<<else>>
[<<moveTo "event_party_manager_assist_first_8" '<<=setup.getNpcName("npc_manager","formal")>> wants things by the end of the year.' 180 "<<set $scene.date='very_wrong'>>">>]<br>
<</if>>
[<<moveTo "event_party_manager_assist_first_8" '<<=setup.getNpcName("npc_manager","formal")>> did not brief you on that timeline.' 180 "<<set $scene.date='none'>>">>]
</div>/*#
#desc: first manager party: answer date prompt
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.date>>
<<case 'correct' 'technically_correct'>>
<<changeHorny 30>>
<<case 'wrong'>>
<<applyStress 5>>
<<applyExperience 'bdsm' 13 'normal' $INCOGNITO>>
<<case 'very_wrong'>>
<<applyStress 10>>
<<applyExperience 'bdsm' 15 'very' $INCOGNITO>>
<<case 'none'>>
<<applyStress 15>>
<<applyExperience 'bdsm' 18 'unbelievable' $INCOGNITO>>
<</switch>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_manager">>
<div id="invframe" class="scrolltext">
<<switch $scene.date>>
<<case 'correct' 'technically_correct'>>
You reply that the target is the <<if $scene.date == 'correct'>>first of the month<<else>>end of the year<</if>>. <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> takes a deep breath. "@@.generic_female1;It seems your superior is something of a slave driver<<if $scene.wornCollarType == "ring" || $scene.wornCollarType == "collar">>, though I suppose you are well aware<</if>>. We shall do what we can, but I am a manager, not a miracle worker.@@"<br>
<br>
Your rear buzzes pleasantly to reward your accuracy.
<<case 'wrong'>>
You reply that the target is the middle of the next quarter and <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> looks relieved. "@@.generic_female1;A reasonable timeline, I shall endeavor to beat it, of course.@@"<br>
<br>
From her subtle grin you have a feeling she just pulled one over on you, a fact confirmed when your rear lights up with another painful shock.
<<case 'very_wrong'>>
You reply that the target is not until the end of the year and <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> looks almost surprised. "@@.generic_female1;End of the year? That should be no trouble at all, I am sure we can have it finished well before then.@@"<br>
<br>
From her satisfaction you have a feeling she just pulled one over on you, a fact confirmed when your rear lights up with another painful shock.
<<case 'none'>>
You reply that you were not briefed on such timeline and <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> frowns. "@@.generic_female1;Disappointing. It is a very important date, as I am sure you can imagine... I suppose I shall clarify over email, so frustrating.@@"<br>
<br>
You stagger as your rear lights up with the most painful shock yet.
<<default>>
ERROR: unexpected scene.date <<=$scene.date>>
<</switch>>
<br><br>
You are pretty certain that business is attended to, but <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> seems about to launch into something else when someone walks up.<br>
<br>
[<<moveTo "event_party_manager_assist_first_9" "See who has arrived." 180>>]
</div>/*#
#desc: first manager party: rescued by npc_harassment
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_manager" setup.charImage("npc_harassment")>>
<div id="invframe" class="scrolltext">
You look over as <<=setup.getNpcName('npc_harassment', 'formal')>> approaches, greeting the two of you with a smile.<br>
<br>
"@@.npc_harassment;<<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>>? Charmed to meet you. I am in charge of employee harassment here at Social Interaction Service Syndicate Inc. I was reviewing the policy of your firm and, well... I think some training is in order to help with the onboarding, I thought we might discuss how to set it up?@@"<br>
<br>
<<=ps(setup.getNpcName("generic_female1","custom", "Ms. Poole"))>> attention is momentarily torn as she glances at your
<<switch $scene.wornCollarType>>
<<case 'ring' 'collar'>>
collar, quickly dismissing you with a perfunctory wave as she turns to greet <<=setup.getNpcName('npc_harassment', 'formal')>>.
<<case 'choker'>>
choker, seeming to weigh seniority as she bids you good evening and turns towards <<=setup.getNpcName('npc_harassment', 'formal')>>.
<<case 'necklace'>>
necklace, seemingly split for a moment before you politely excuse yourself and leave the two women to their business.
<<default>>
ERROR unexpected scene.worn collar: <<=$scene.wornCollarType>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_harassment', 'formal')>> flashes you a quick wink as she leads <<=setup.getNpcName("generic_female1","custom", "Ms. Poole")>> away, jerking her head across the room as if in signal. You look over in that direction and spot <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
You approach <<=setup.getNpcName("npc_manager", "formal")>> just as she is finishing up with her other meeting.<br>
<br>
She greets you with a smile, but says nothing as she leads you towards one of the ballroom's side dungeons.<br>
<br>
[<<moveTo "event_party_manager_assist_first_10" 'Time to see how you performed?' 180>>]
</div>/*#
#desc: first party manager assist punish/reward
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'normal' $INCOGNITO>>
<<applyExperience 'submission' 15 'normal' $INCOGNITO>>
<<set $scene.score = 0>>
<<switch $scene.action>>
<<case "yes">>
<<set $scene.score += 1>>
<<case "reluctant">>
<<set $scene.score += 0>>
<<set $scene.pain += 1>>
<</switch>>
<<switch $scene.approach>>
<<case "confident">>
<<set $scene.score += 2>>
<<case "brash">>
<<set $scene.score += 0>>
<<set $scene.pain += 1>>
<<case "meek">>
<<set $scene.score += 1>>
<</switch>>
<<if $scene.slut>>
<<set $scene.score += 1>>
<<else>>
<<set $scene.score += 0>>
<<set $scene.pain += 1>>
<</if>>
<<switch $scene.percent>>
<<case "correct">>
<<set $scene.score += 2>>
<<case "clarify">>
<<set $scene.score += 1>>
<<case "slip">>
<<set $scene.score += 0>>
<<set $scene.pain += 1>>
<</switch>>
<<if $scene.focus>>
<<set $scene.score += 1>>
<<else>>
<<set $scene.score += 0>>
<<set $scene.pain += 1>>
<</if>>
<<switch $scene.date>>
<<case 'correct' 'technically_correct'>>
<<set $scene.score += 1>>
<<playerOrgasm>>
<<case 'wrong'>>
<<set $scene.pain += 1>>
<<set $player.timebased.horny = 40>>
<<set $scene.score += 0>>
<<case 'very_wrong'>>
<<set $scene.pain += 2>>
<<set $player.timebased.horny = 40>>
<<set $scene.score += 0>>
<<case 'none'>>
<<set $scene.pain += 2>>
<<set $player.timebased.horny = 40>>
<<set $scene.score += 0>>
<</switch>>
<<switch $scene.pain>>
<<case 1>>
<<applyExperience 'bdsm' 15 'insignificant' $SEEN_FRIEND>>
<<case 2>>
<<applyExperience 'bdsm' 15 'slightly' $SEEN_FRIEND>>
<<case 3>>
<<applyExperience 'bdsm' 16 'little' $SEEN_FRIEND>>
<<case 4>>
<<applyExperience 'bdsm' 16 'almost' $SEEN_FRIEND>>
<<case 5>>
<<applyExperience 'bdsm' 17 'normal' $SEEN_FRIEND>>
<<case 6>>
<<applyExperience 'bdsm' 17 'very' $SEEN_FRIEND>>
<<case 7>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_FRIEND>>
<</switch>>
<<include "endOfPartyCollar">>
<<set $npc_manager.flags.management_training.party_first = $scene.score>>
<<if State.hasPlayed("event_hr_manual_9_ace") && State.hasPlayed("event_party_manager_assist_first_10")>>
<<set _nextDate = setup.setNextDate($now, 4, 0, 0)>>
<<addWorkEvent 'hr_training_sales' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_dungeon.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> leads you into one of the party's private dungeons and restrains you to a Saint Andrew's cross. She buckles you tight, yet there is also a tenderness to her meticulous attention to detail in securing you.<br>
<br>
You find yourself reviewing your actions in your head as you wonder what you're in for, remaining silent as she fetches a flogger from the wall... as well as a wand style vibrator, wielding pleasure and pain in opposite hands as she moves behind you.<br>
<br>
The room is pleasantly warm, and yet you feel goosebumps forming on your skin as she runs the powered off wand between your spread legs and lets the flogger trickle painlessly down your back, a dual tease of what is about to come.<br>
<br>
<<switch $scene.action>>
<<case "yes">>
You gasp as she presses the vibrator firmly between your legs, the stimulation <<if setup.checkItemTypeWorn("cage")>>magnified and refracted through your prison for all-around pleasure<<else>>intense<</if>>, if short-lived before she pulls the wand away.<br>
<br>
"@@.npc_manager;That was for your enthusiasm to assist me...@@"
<<case "reluctant">>
You gasp as the flogger cracks against your back.<br>
<br>
"@@.npc_manager;That was for your reluctance to assist me. You need to work on your self confidence. You are a <<=setup.getSecretaryTitle()>> now — you need to act the part!@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<switch $scene.approach>>
<<case "confident">>
The vibrator buzzes as she congratulates you. "@@.npc_manager;Your confident approach was exactly what I expected of you, well done.@@"
<<case "brash">>
The flogger cracks hard against your back. "@@.npc_manager;Your brash approach was unbecoming, and inappropriate. This is a professional organisation and such disrespect is not the way to build connections.@@"
<<case "meek">>
The flogger stings your backside. "@@.npc_manager;Your meek approach was inefficient, and ineffective. You were representing my interests, you should do so proudly and assertively.@@"
<<default>>
ERROR: unexpected scene.approach <<=$scene.approach>>
<</switch>>
<br><br>
<<if $scene.slut>>
There is an extra long buzz between your legs, as well as from your plug. "@@.npc_manager;You enjoy that, my sweet <<if $fetish.sissy>>sissy <</if>>slut? I know you do, the eagerness with which you evangelised our policies made that deliciously clear.@@"
<<else>>
The flogger cracks and your plug shocks you as well. "@@.npc_manager;That is for failing to show proper hospitality, this is a party, after all, and a bit of pleasure can help grease the wheels of business.@@"
<</if>>
<br><br>
<<switch $scene.percent>>
<<case "correct">>
Rather than the wand, you feel <<=ps(setup.getNpcName("npc_manager","formal"))>> hand between your legs as she whispers seductively in your ear. "@@.npc_manager;The way you dealt with <<=ps(setup.getNpcName("generic_female1","custom", "Ms. Poole"))>> attempt to shirk her responsibilities. I have such high expectations of my employees... and those expectations are so delightfully affirmed when one such as you meets and exceeds them.@@"
<<case "clarify">>
You feel neither pain nor pleasure, merely a teasing finger tracing down your spine. "@@.npc_manager;Your lack of assertiveness was disappointing... though I can at least understand wishing to deflect such a decision, better to do that, than to fold to an improper request.@@"
<<case "slip">>
Rather than the flogger you feel two hard strikes of <<=ps(setup.getNpcName("npc_manager","formal"))>> hand on your bottom. "@@.npc_manager;The way you folded to <<=ps(setup.getNpcName("generic_female1","custom", "Ms. Poole"))>> reframing of her goals... very disappointing, and now I shall have to accept her shirking her duties at employee retention, rather than confuse things further by mixing messaging.@@"
<<default>>
ERROR: unexpected scene.percent <<=$scene.percent>>
<</switch>>
<br><br>
<<if $scene.focus>>
A final rumbling buzz of your plug, turbo-charged by the wand, gives you an opening to relax your focus and just surrender to the pleasure. "@@.npc_manager;There we go, you did well focusing on your task... but there must also be a time to relax and enjoy the fruits of your labours.@@"
<<else>>
Her fingernails dig into your rear and you hiss in pain. "@@.npc_manager;Yes, focus on the pain, like you SHOULD have been focusing on your duties, earlier. The plug in your rear is for communication and control, not a distraction, you must learn to use it to enhance your duties, not let it detract from them.@@"
<</if>>
<br><br>
<<switch $scene.date>>
<<case 'correct' 'technically_correct'>>
A final rumble of the wand proves the ticket to push you over the edge to orgasm and you jolt in your bonds. "@@.npc_manager;Right on time. Just as you correctly remember the timeline I had briefed you on<<if $scene.date == 'technically_correct'>>, though specifying the end of the month would have been a more precise answer than the end of the year, imagine if you were dealing with someone in a different time zone! What should have been a single day would blow up to an error of a full month!<<else>>. Perfection. Punctuality is one of the pillars of society, after all...<</if>>@@"
<<case 'wrong'>>
A hard blow of the flogger between your legs shatters the edifice of arousal that had been building with in you. "@@.npc_manager;That is for failing to remember a simple date. Punctuality is one of the pillars of society, that you should screw up such a basic matter...@@"
<<case 'very_wrong'>>
A thunderstorm of electric pain shatters your arousal and leaves you gasping and hanging in your bonds as <<=setup.getNpcName("npc_manager","formal")>> admonishes you. "@@.npc_manager;To so horribly botch a simple date... punctuality is a pillar of society, I can scarcely believe that you would mess up something like that so catastrophically this far into your career.@@"
<<case 'none'>>
A final flurry of blows serves to stem the tide of your arousal as <<=setup.getNpcName("npc_manager","formal")>> admonishes you. "@@.npc_manager;That you would forget such a simple date... punctuality is a pillar of society, I can scarcely believe that you would mess up something like that up this deep into your career.@@"
<<default>>
ERROR: unexpected scene.date <<=$scene.date>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> gives you several minutes to catch your breath, her body pressed against you from behind as you hang on the cross, her hands delicately tracing your taut limbs in a gentle massage.<br>
<br>
"@@.npc_manager;There we go. Let all that tension go. I know tonight was a bit of a new experience for you... but you
<<switch $scene.score>>
<<case 8>>
performed to perfection.
<<case 7 6>>
did quite admirably.
<<case 5 4>>
manage a passable job.
<<case 3 2 1>>
made it through... even if there is quite a bit of room for improvement.
<<case 0>>
well, you survived, but perhaps that is enough build on.
<<default>>
ERROR: unexpected scene.score <<=$scene.score>>
<</switch>>
Perhaps I will have more for you in the future... for now, I think you deserve a nice, quiet trip home and a restful sleep.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> releases your cuffs and catches you easily, easing you to the ground before leading you to the elevator<<if $scene.replaceCollar>>where she replaces your collar,<</if>> and then down to the parking garage where she sends you home with a smile and a kiss.<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName("npc_manager","formal") + " management training content">>
<<include "futureContentBoilerplate">><br>
<br>
[<<moveTo "room_foyer" 'Home' 300 '<<include "endOfPartyCollar">>'>>]
</div>/*#
#desc: first manager party: manager end of night if aborted
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You meet up with <<=setup.getNpcName('npc_manager', 'formal')>> at the end of the night to find her looking ever-so-slightly frazzled. It's not much, and you doubt anyone who had not spent as much time around her as yourself would even notice, but by her standards it is a stunning slip in control.<br>
<br>
You offer to help but she gently demures... though your assessment of her exhaustion is confirmed when she doesn't just take you down to the parking lot... but signals for a car for herself, rather than heading back up to her office for more work as she normally does.<br>
<br>
[<<moveTo "room_foyer" 'Home' 300>>]
</div>
/%
TODOfuture repeats:
-massage her feet / service her while she talks to someone
-service a colleague while she talks (similar to the data crystal event with the boring guy)
-serve as a footstool/chair for her
-A business negotiation hinges around a bet around whose secretary can take more punishment. The random colleague hits you and Antlers hits their secretary.
%//*#
#desc: party change collar options
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.allowSpecific='choker'>>
<<include "calcCollarType">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.initCollar != setup.getItemFromType('choker')>>
<<initRoom>>
<<moveTo 'event_party_adjust_collar_2'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png">>
<div id="invframe" class="scrolltext">
In the temporary privacy of the room you consider swapping your neck adornment.
<<if $scene.collarObj != null && $scene.collarObj.hasOwnProperty('lockable') && ($inventory[$scene.collarId].status.lock || $scene.collarObj.hasOwnProperty('lockonly'))>>
Unfortunately for that plan, your collar is locked on.<br>
<br>
[<<moveTo "event_party_root" "Return to the party." 60 "<<set $player.cutscene.allowSpecific= ''>>">>]
<<else>>
<br><br>
[<<moveTo "event_party_adjust_collar_hint" "Wait, what does this all mean, again?">>]<br>
<br>
<<printThought "Probably shouldn't change anything else, but I can maybe swap collars? What do I have with me...">> <<hint $options "Use the inventory to change what you're wearing around your neck.">><br>
<br>
<<switch $scene.wornCollarType>>
<<case "choker">>
You are wearing a choker, this marks you as a subordinate who is not available for play.
<<case "collar">>
You are wearing a ring-less collar, this marks you as a slave who is available to play, should you desire such.
<<case "ring">>
You are wearing a collar with a ring, this marks you as an "owned" slave unavailable for play without permission of your owner.
<<case "necklace">>
You are wearing a necklace, which would mark you as a manager/dominant — better you don't get caught in the lie...
<<case "none">>
You are wearing nothing around your neck... being seen in the general party like this is liable to have consequences...
<<case "tie">>
You are wearing a tie... which doesn't really line up with the rules of the party, and you are unsure what it will lead to. <<printThought "Probably nothing safe...">>
<<default>>
ERROR: unexpected collar: <<=$scene.cwornCollarTypeollar>>
<</switch>>
<br><br>
<<if $scene.collarObj == "" || $scene.wornCollarType == "tie" || $scene.wornCollarType == "none">>
[<<moveTo "event_party_nocollar_1" "Return to the party." 60 "<<set $player.cutscene.allowSpecific=''>>">>]
<<else>>
[<<moveTo "event_party_root" "Return to the party." 60 "<<set $player.cutscene.allowSpecific=''>>">>]
<</if>>
<</if>>
</div>/*#
#desc: party change collar
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png">>
<div id="invframe" class="scrolltext">
You think about the party and its somewhat arcane "collar code." <br>
<br>
A choker designates a submissive/subordinate who is not available for play.<br>
A basic collar designates you as a slave who is available for play should you wish.<br>
A collar with a ring designates you as an owned slave who can only play with permission of their owner.<br>
A necklace designates a manager/dominant.<br>
A bare neck means that you are available for anyone to use, abuse, or collar (until the end of the night).<br>
<br>
[<<moveTo "event_party_adjust_collar_1" "Back.">>]
</div>/*#
#desc: party change collar
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<include calcCollarType>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.initCollar = setup.getItemFromType('choker')>>
<</if>>
<<if $scene.initCollar != setup.getItemFromType('choker')>>
<<initRoom>>
<<moveTo 'event_party_adjust_collar_2'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png">>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemTypeWorn("choker")>>
You bare your neck.
<<else>>
You change to wearing a <<=setup.getItemTypeName('choker')>>.
<</if>>
<<switch $scene.wornCollarType>>
<<case "choker">>
You are wearing a choker, this marks you as a subordinate who is not available for play.
<<case "collar">>
You are wearing a ring-less collar, this marks you as a slave who is available to play, should you desire such.
<<case "ring">>
You are wearing a collar with a ring, this marks you as an "owned" slave unavailable for play without permission of your owner.
<<case "necklace">>
You are wearing a necklace, which would mark you as a manager/dominant — better you don't get caught in the lie...
<<case "none">>
You are wearing nothing around your neck. Being seen in the general party like this is liable to have consequences...
<<case "tie">>
You are wearing a tie... which clashes horribly with the rest of your outfit.<br>
<br>
<<printThought "No... I do not think I am going to go out wearing this.">> <<hint $options "Use the inventory to change what you're wearing around your neck.">><br>
<<default>>
ERROR: unexpected scene.worn collar <<=$scene.wornCollarType>>
<</switch>>
<br><br>
<<if $scene.wornCollarType != "tie">>
<<printThought "Is this good, or should I wear something else?">> <<hint $options "Use the inventory to change what you're wearing around your neck.">><br>
<br>
<<if $scene.wornCollarType == "none">>
[<<moveTo "event_party_nocollar_1" "Return to the party." 60 "<<set $player.cutscene.allowSpecific=''>>">>]
<<else>>
[<<moveTo "event_party_root" "Return to the party." 60 "<<set $player.cutscene.allowSpecific=''>>">>]
<</if>>
<</if>>
</div>/*#
#desc: seen without collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.workdayInit = false>>
<<set $scene.daily = {}>>
<<applyStress 10>>
<<if $events.hasOwnProperty('party_spill_event')>>
<<removeEvent 'party_spill_event'>>
<</if>>
<<if $events.hasOwnProperty('work_party_end')>>
<<removeEvent 'work_party_end'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You step out into the main ballroom <<if $scene.wornCollarType == "tie">>wearing a tie<<else>>with a bare throat<</if>>. Almost immediately a passing waitress notices you.<br>
<br>
Freezing at the sight of you she drops her tray and then flees away — running nimbly in her steep heels.<br>
<br>
<<printThought "That doesn't seem like a good sign...">><br>
<br>
You don't have long to reflect on what just happened as the clattering sound of the tray has attracted some other party goers. Already a cluster of <<if $options.fem>>fe<</if>>male managers that you don't recognise is walking towards you with evil grins.<br>
<br>
<<printThought "Oh shit, I should have known better than to forget to wear a collar...">><br>
<br>
[<<moveTo "event_party_nocollar_2" "Beg for mercy." 1800 "<<set $scene.action='mercy'>>">>] <<hint $options "You doubt this will do much other than egg them on further...">><br>
[<<moveTo "event_party_nocollar_2" "Surrender — this is what you wanted, right?" 1800 "<<set $scene.action='slut'>>">>]<br>
[<<moveTo "event_party_nocollar_2" "Try to run." 1800 "<<set $scene.action='run'>>">>]
</div>/*#
#desc: caught without collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('work_party_end')>>
<<removeEvent 'work_party_end'>>
<</if>>
<<set $player.flags.stage3party.nocollar.caught = true>>
<<if $scene.action == 'run' && !$fetish.get_raped>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<include "endOfPartyCollar">>
<<else>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<<applyExperience 'anal' 13 'terrible' $EXPOSED>>
<<applyExperience 'oral' 13 'terrible' $EXPOSED>>
<<applyExperience 'submission' 13 'terrible' $EXPOSED>>
<<applyExperience 'bondage' 8 'terrible' $EXPOSED>>
<<if !$player.sec_style.sex.airtight>>
<<set $player.sec_style.sex.airtight = "strict">>
<</if>>
<</if>>
<<if $scene.action == 'slut'>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == 'run' && !$fetish.get_raped>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/ballroom.png" "./images/characters/TODO_group.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'mercy'>>
You start to beg the <<men>> for mercy but the apparent leader just grins.<br>
<br>
"@@.generic_male1;Mercy? No, no, leaving your bare-necked brazenness unaddressed would be the true crime — think of the horrible example it would set for your fellows. No, this is what you need, what you deserve, now open wide, slut and prepare for your lesson.@@"<br>
<br>
You open your mouth to further object, only for a large ring-gag to force you open even wider, and the opening immediately filled by the cock of the <<man>> before you. A moment after that and your hands are cuffed behind your back. Someone lifts your hips up and
<<case 'slut'>>
Rather than try to run or resist you just smile at the pack of <<men>>, dropping to your knees and opening your mouth as you offer yourself.<br>
<br>
"@@.generic_male1;Goddamn, talk about a slut — did you take your collar off intentionally?@@" <<He>> chuckles and you gasp as your hands are cuffed behind your back, and then a giant ring gag is forced between your teeth. "@@.generic_male1;Precautionary measures,@@" <<he>> explains. "@@.generic_male1;Just because you're enough of a slut to walk into this situation don't mean we can trust you not to fight back later...@@" Your gagged response is stifled further as <<he>> jams <<his>> cock down your throat. Someone lifts your hips up and
<<case 'run'>>
You try to run away, glancing back in fear as a couple of the <<men>> break into a sprint.
<<if $fetish.get_raped>>
Longer legs, and surprising speed, has them catch you before you have taken more than a dozen steps. You are swiftly caught and overpowered, wrestled to the ground where a ring gag is shoved in your mouth and your wrists are cuffed behind your back. A cock for each hole soon follows and
<<else>>
You glance back to see them gaining on you when you bump into what feels like a marble statue. Falling to the floor you look up to see <<=setup.getNpcName("npc_manager","formal")>>. Ascertaining the situation in a single glance, she meets the approaching <<men>> with a glare that could give an actual army pause.<br>
<br>
"@@.npc_manager_dom;This one is mine.@@" She states viciously as the <<men>> come to a stop, and then take a step back in fear.<br>
<br>
One of them finding <<his>> voice <<he>> mumbles as "@@.generic_male1;Sorry, <<=setup.getNpcName("npc_manager","other")>>. We didn't know that she was... uh, we'll be going now.@@"<br>
<br>
The <<men>> scatter. <<=setup.getNpcName("npc_manager","formal")>> knocks back the rest of her drink in a single swig and then reaches down to help you to your feet.<br>
<br>
Her hand brushes along your bare neck, sending a submissive shiver through your body. "@@.npc_manager;Hmm, you really MUST be more careful... the rules of the party state that I can claim you for the rest of the evening, but I think it would be safest if we called it here, hmm?@@"<br>
<br>
You nod and she leads you off, supervising you <<if $scene.replaceCollar>>being re-collared and<<else>>through to<</if>> boarding the limo home.<br>
<br>
[<<moveTo "room_foyer" "Home." 900>>]
<</if>>
<<default>>
ERROR: unexpected scene.action
<</switch>>
<<if $scene.action != 'run' || $fetish.get_raped>>
you are being fully spit-roasted, roughly fucked from both ends in the middle of the party, passed around like a piece of meat as the <<men>> violate you with casual brutality. Discussions resume as you are fucked and fondled — either bent over in free space or laid out on a table — through it all you have no choice but to take it hard, the rare occasion that someone even speaks to you their words are harsh degradation, ridiculing you for your stupidity in appearing at the party with a bare neck, or laughing at your whorish decision to put yourself in such a guaranteed precarious position.<br>
<br>
Eventually, weak and limp, laid across a table with cum leaking out of your ass, mouth, and even your nose, the stream of abuse stops, a guard appearing, not to provide any sort of rescue, but to restrain you even further. A tight latex hood is drawn over your head and your ankles are cuffed to your wrists for a hog-tie, that she then uses to carry you like a piece of luggage, your shoulder crying out in pain at having to bear your weight.<br>
<br>
[<<moveTo "event_party_nocollar_3" "Continue." 3600>>]
<</if>>
</div>/*#
#desc: boxed up after no collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<applyExperience 'oral' 7 'normal' $EXPOSED>>
<<applyExperience 'bondage' 20 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<<addItem 'latex_hood_blind_black'>>
<<wearItem 'latex_hood_blind_black' true>>
<<addItem 'vaccum_cube'>>
<<wearItem 'vaccum_cube' true>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png">>
<div id="invframe" class="scrolltext">
You don't know how far you're carried before being placed down again, but immediately you feel multiple hands manhandling you and pulling you into position.<br>
<br>
A fake penis is shoved through your gag, followed by your other restraints being removed as you are stripped naked and shifted into an all fours position. You feel something slippery brush past your skin, and then the sound of some sort of motor startles you. Latex closes in from what feels like all directions until you find yourself held immobile, and then tipped vertically as you realise you must be in some sort of vacuum cube, your body tightly "covered," but fully exposed, your hood enhanced further with some sort of ear-plugs, as your face sticks up helpless and anonymous.<br>
<br>
Only after your bondage has been completed do you hear another human, a gruff voice that sounds like one of the company's guards. It is hard to tell, her voice somehow distorted by your hood. "@@.generic_female2;Well, I hope you're happy, you dumb slut. Running around without a collar — I always wonder if I should break up the gang-<<if $fetish.get_raped>>rapes<<else>>bangs<</if>> sooner, or if your brain is already so addled by sex that it's some perverse reward... no matter, you're going up for auction now, I'm sure whoever wins you will make sure you learn some sort of lesson from tonight.@@"<br>
<br>
The explanation complete you feel yourself being lifted up and carried... somewhere.<br>
<br>
[<<moveTo "event_party_nocollar_4" "Continue." 600>>]
</div>/*#
#desc: auction after no collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 15 'very' $EXPOSED>>
<<set $scene.managerPurchase = $npc_manager.anger < $npc_manager.affection && setup.checkItemTypeTag('plug', ['ems']) && setup.checkItemTypeTag('plug', ['vibrating']) && ($player.flags.stage3party.nocollar.manager == 0 || $player.flags.stage3party.nocollar.discipline && $npc_manager.affection - $npc_manager.anger > random (1,10)) && (setup.checkItemTypeWorn("cage") || !$currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity'))>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You are set down in what you think may be the party ballroom as, though distorted by your hood, you believe you recognise the general murmur of conversations echoing in the large chamber.<br>
<br>
A few minutes later and you hear the discussions die down, a familiar voice seemingly cutting through the distortion as you recognise <<=setup.getNpcName("npc_boss","formal")>>. "@@.npc_boss;Well, my friends. It would seem that tonight is quite a special one — as one of your foolish subordinates was caught without their collar! I know that some of your have already enjoyed taking a hand in showing her the consequence of her action, but that is just the start of things — one of you lucky bidders will be able to take her home for a more... personal lesson.@@" You can practically hear <<his npc_boss>> smirk as <<he npc_boss>> continues. "@@.npc_boss;As is tradition she will remain gagged and hooded through to the morning — so that you can better treat her as the THING that she is, her hood distorting your voice so that she will be unable to identify you or hold a grudge as her career continues. So, let us begin the bidding on who will get to teach this foolish thing the harsh lesson she deserves!@@"<br>
<br>
Whatever configurations allows <<=ps(setup.getNpcName("npc_boss","formal"))>> voice to come through clearly mangles all others; you can barely differentiate genders as you listen to some spirited bidding before a winner is determined and you are carted off the stage.<br>
<br>
<<if !$scene.managerPurchase && $player.flags.stage3party.nocollar.manager > 0>>
"@@.generic_female2;The first time was amusing... perhaps you are in need of a more severe lesson...@@" You hear someone state as you pass.
<<if $player.flags.stage3party.nocollar.manager > 1>>
You tremble in your bonds at the realisation that <<=setup.getNpcName("npc_manager","formal")>> is not saving you this time...
<<else>>
Their cadence is oddly familiar, even if their voice is distorted.
<</if>>
<br><br>
<</if>>
Bouncing slightly in your tight latex prison your blindness and minimal hearing makes it easy to get disoriented, but you believe you are loaded into the trunk of some sort of vehicle and driven off for your night of, well, whatever your winner desires, you suppose...<br>
<br>
<<if $scene.managerPurchase>>
[<<moveTo "event_party_nocollar_5_manager_1" "Continue." 1800>>]
<<else>>
[<<moveTo "event_party_nocollar_5_discipline_1" "Continue." 1800>>]
<</if>>
</div>/*#
#desc: auctioned off to manager after no collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
After an indeterminate ride you feel your "box" lifted out of the vehicle and carried up what feels like a flight of steps. You aren't sure how heavy the vacuum frame you're contained in must be, but you can't imagine it's anything other than awkward; whoever bought you has to be pretty strong based on how easily they seem to be moving your crated form...<br>
<br>
Placed down you feel something attached to the front of your gag. You turn your head, feeling whatever it is drag slightly... like something is sticking out from your mouth. A hand firmly grips the back of your head, holding you in place as something slides forward.<br>
<br>
"@@.generic_female1;Mmmm, time to get back to work — I do so enjoy purchasing you foolish things. It is a useful metric for how training is proceeding among a certain sampling of employee.@@"<br>
<br>
You feel something on either side of your head and finish putting together that whoever is talking to you — the distortion rendering their voice unidentifiable — has you setup with a dildo protruding from your face — to act as a human fucking machine by bobbing your head.<br>
<br>
"@@.generic_female1;Here, how about some encouragement? If I cum, you cum.@@" She adds as the plug in your rear starts to vibrate. "@@.generic_female1;But if you get lazy, well...@@" You gasp and shudder as a shock shoots through your rear<<if setup.checkItemTypeTag('cage', ['ems'])>> and chastity prison<</if>>. "@@.generic_female1;Oooh, how you moved there felt nice, do it again... and quickly, now, lest I force things...@@"<br>
<br>
You do your best to replicate the movement of electricity-induced pain thrashing... and it mostly seems to work well enough. Before long your unseen temporary owner is turning up your vibrations and only rarely spicing things up with shocks, a hand on the back of your head helping to guide your efforts... up until you sense them nearing climax when they pull you in and grind against your face. Thighs squeezing as your vibrations and shocks intermingle, your entire body trembles against your bonds as you "enjoy" a pain-infused orgasm that stretches out for the full agonising duration of her own climax.<br>
<br>
[<<moveTo "event_party_nocollar_5_manager_2" "Continue." 1800>>]
</div>/*#
#desc: night w/manager after no collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 20 'unbelievable' $SEEN_STRANGER>>
<<playerOrgasm>>
<<removeItem 'vaccum_cube' true>>
<<deleteItem 'vaccum_cube'>>
<<addItem 'sleepsack_inflatable'>>
<<wearItem 'sleepsack_inflatable' true>>
<<if $player.flags.stage3party.nocollar.manager < 1>>
<<set $player.flags.stage3party.nocollar.manager = 1>>
<</if>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
"@@.generic_female1;Mmm, now that is how you end an evening properly.@@" She sighs in contentment. "@@.generic_female1;But you are mine through to the morning... come, let us get ready for bed...@@"<br>
<br>
You're still catching your breath, panting through your gag as you feel the dildo removed from your face. Rather than the rest of your restraints relaxing in any way, however, things merely shift, drawing you into a standing position, arms at your sides, the compression of the vacuum reversing as things inflate, squeezing you from all over as you find yourself in an inflatable, padded sleepsack.<br>
<br>
"@@.generic_female1;A perfect pillow.@@" Your temporary owner coos before lifting you up and laying you down on what you suspect is a bed, but your cocoon of inflation makes it impossible to tell.<br>
<br>
Though you do not feel their touch you can tell that, whoever it is, has snuggled up against you, arms wrapped around your oversized, padded form. It is not long before you are treated to the distorted sound of their sleeping breaths.<br>
<br>
Blind, gagged, immobile, and effectively floating in your rubbery prison you slowly drift to sleep yourself.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 5, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 5, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_party_nocollar_5_manager_3" "Sleep." _timeToMorning>>]
</div>/*#
#desc: wake up w/manager after no collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -100>>
<<set _bondageStress = -setup.getTotalValue("bondage")>>
<<applyStress _bondageStress>>
<<if $events.hasOwnProperty('event_admin_morning_workout_call') || $events.hasOwnProperty('event_admin_morning_visit')>>
<<include "postponeAdminMorningVisit">>
<</if>>
<<if $player.flags.stage3party.nocollar.manager < 1>>
<<set $player.flags.stage3party.nocollar.manager = 1>>
<</if>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
Despite your stringent position your sleep is remarkably calm, and calming. A gentle vibration raises you to consciousness, the stimulation such that you would have a hard time putting a finger on the exact moment you awoke, but awake you do, still blind, cocooned, and helpless as you are greeted by the distorted voice of your captor.<br>
<br>
"@@.generic_female1;Good morning, my dear. Your service is technically at an end, and it is my duty to return you to the office and your manager, but I thought I would offer you a choice. It is still several hours before your shift is due to start. If you wish to thank me for taking care of you, you may volunteer to remain with me for the morning. I will let you out, you will help me with my morning routine, and we will carpool to the office... or I can ship you back as is and our respective identities will remain ever a mystery...@@"<br>
<br>
You feel her fingers trace your mask, the sensation muted by the rubber. "@@.generic_female1;Moan once if you would rather be sent to the office... twice, if you wish to stay with me, and serve...@@"<br>
<br>
[<<moveTo "event_party_nocollar_5_manager_3_work_1" "Moan once — you would rather get back to work and leave this night in the past." 1800>>]<br>
[<<moveTo "event_party_nocollar_5_manager_3_stay_1" "Moan twice — you want to find out who your buyer was, even if it comes at the cost of additional service." 600>>]
</div>/*#
#desc: shipped to work after nocollar party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'sleepsack_inflatable' true>>
<<deleteItem 'sleepsack_inflatable'>>
<<addItem 'vaccum_cube'>>
<<wearItem 'vaccum_cube' true>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
You moan once. There is a long pause as if your captor was really hoping for the second one but eventually you hear a soft "@@.generic_female1;Very well...@@" before your confinement starts to deflate... and then slowly shifts you back into your "original" boxed position.<br>
<br>
Lifted into the air you feel yourself loaded into a vehicle, overhearing muffled words shared with a driver before you rumble off, unloaded onto a trolley, an elevator and then finally left... somewhere; still blind and helpless to wait for someone to let you out.<br>
<br>
[<<moveTo "event_party_nocollar_work_1" "Wait." 1800>>]
</div>/*#
#desc: arrive at work after no collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'unbelievable' $SEEN_STRANGER>>
<<removeItem 'vaccum_cube' true>>
<<deleteItem 'vaccum_cube'>>
<<removeItem 'latex_hood_blind_black' true>>
<<deleteItem 'latex_hood_blind_black'>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<include "endOfPartyCollar">>
<<set $scene.firstTime = ($npc_manager.flags.severeCleanings == 0)>>
<<set $npc_manager.flags.severeCleanings+=1>>
<<set $scene.severeCleaning = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
It is hard to keep track of time and you shift nervously in your vacuum-packed prison. You wonder where you are, can anyone see you? You have no way of knowing — for all you are aware you could be in the middle of the lobby, your earplugs surely as capable of muting all sound as they are of distorting it.<br>
<br>
When freedom arrives it is blinding, literally, the removal of your hood exposing your eyes to the first hint of light in hours and you squeeze them shut in pain as you try to adjust, falling to the ground as your latex prison relaxes and you find yourself unsupported.<br>
<br>
"@@.npc_manager;Good morning, my dear.@@" You hear <<=setup.getNpcName("npc_manager","formal")>> state in what sounds like amusement.<br>
<br>
You squint up, your eyes slowly adjusting to the light as she comes into focus, looming over you with her usual smile. "@@.npc_manager;Have an eventful evening? I warned you that you needed a collar to be safe at the party, but I suppose you just wanted to test limits, hmm?@@" She sniffs, her nose wrinkling, "@@.npc_manager;Well, you are certainly ripe... come, let us get you dressed for the day. You work in a representative position, after all, and right now all you represent is the smell of used gym socks.@@"<br>
<br>
Slack-jawed from being gagged for so long you struggle to figure out how to use your limbs, reflecting for a moment how much simpler it is to merely exist in bondage...<br>
<br>
<<if $scene.replaceCollar>>
<<=setup.getNpcName("npc_manager","formal")>> waits for you to rise and then replaces your collar with a slight shake of her head before she leads you up the hall to the elevator.
<<elseif $scene.partyTempCollar>>
<<=setup.getNpcName("npc_manager","formal")>> reclaims your borrowed neck adornment before leading you up the hall to the elevator.
<<else>>
You find your way to your feet and fall in behind <<=setup.getNpcName("npc_manager","formal")>> as she leads you up the hall to the elevator.
<</if>>
<br><br>
<<set $scene.cleaningReturn = 'event_manager_daily_check_stage_4_finalize'>>
[<<moveTo "event_work_cleaning_2" "Follow." 600 "<<set $scene.giveSecOutfit=true>>">>]
</div>/*#
#desc: choose to stay with manager after no collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'sleepsack_inflatable' true>>
<<deleteItem 'sleepsack_inflatable'>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'latex_hood_blind_black' true>>
<<deleteItem 'latex_hood_blind_black'>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<addItem 'bondage_collar_promo'>>
<<wearItem 'bondage_collar_promo' true>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bedroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bedroom.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You moan twice and are rewarded with a satisfied "@@.generic_female1;Lovely, one final detail — I do not allow un-collared slaves in my house. Your restraints were sufficient but now...@@" You feel a collar buckled around your neck before the hiss of escaping air drowns out all other sound.<br>
<br>
You slowly sink to the bed as hands work at your hood. Hood removed you squint in even the dim light of the bedroom, blinking rapidly and looking around before laying eyes on <<=setup.getNpcName("npc_manager","formal")>>. Your eyes go wide in shock but she merely smiles.<br>
<br>
"@@.npc_manager;You did not think I would abandon my favourite <<if $fetish.sissy>>SISSI <</if>>Secretary, did you? And really, as if a mask would conceal you from my eye? I would recognise those hips ANYWHERE.@@" She squeezes you in emphasis as she peels off the rest of your rubber restraints and offers a hand to help you out of the bed and clip a leash to the front of your collar.<br>
<br>
"@@.npc_manager;Come, let us wash away all that sweat so you can help me prepare for work.@@"<br>
<br>
[<<moveTo "event_party_nocollar_5_manager_3_stay_2" "Follow." 600>>]
</div>/*#
#desc: help manager prepare for work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<<set $player.makeup.messed = 0>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'foot' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bathroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bath.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> leads you into a stunning marble and brass bathroom the size of your bedroom. Still holding your leash she motions for you to step into the large shower, holding it as she waits for you to wash and rinse yourself, occasionally giving instructions as she makes sure you are completely clean.<br>
<br>
"@@.npc_manager;Much better, see how much better life is when you but wear a collar?@@" She states with a smile. You blush as blowers dry you off hands-free and you step out of the shower. "@@.npc_manager;Now, my turn.@@"<br>
<br>
You realise that she had drawn a bath while you were busy showering and she has you kneel next to it as she sheds her robes and slips into it.<br>
<br>
Your heart races as you dutifully place a rejuvenating mask over her face and then begin gently scrubbing her clean — perhaps too gently, as at one point she commands you to go "@@.npc_manager;Harder@@" while you are exfoliating her sides.<br>
<br>
<<if setup.getTotalValue("foot") > 10>>
<<if setup.getTotalValue("foot") > 15>>
You take extra care to lovingly kiss and clean her feet clean.
<<else>>
You take extra care to clean and massage her feet.
<</if>>
<<else>>
<<if setup.getTotalValue("foot") > 5>>
You finish off by scrubbing her feet and doing a quick massage.
<<else>>
You finish up by scrubbing her feet.
<</if>>
<</if>>
With a smile she motions for you to fetch a towel — easily the most luxuriously fluffy item you've ever held she rises like venus from the tub and steps out, waiting for you to dry her completely as she just stands with a smile and a light hold on your leash.<br>
<br>
[<<moveTo "event_party_nocollar_5_manager_3_stay_3" "Follow her back to the bedroom." 300>>]
</div>/*#
#desc: manager and you dress for work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'satin_lingerie_pink'>>
<<addItemSet 'female_office'>>
<<set $npc_manager.flags.firstcuteoutfit++>>
<<wearItemSet 'satin_lingerie_pink' true>>
<<wearItemSet 'female_office' true>>
<<if $player.flags.stage3party.nocollar.manager < 2>>
<<set $player.flags.stage3party.nocollar.manager = 2>>
<</if>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<removeItem 'bondage_collar_promo' true>>
<<deleteItem 'bondage_collar_promo'>>
<<include "endOfPartyCollar">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_manager","formal"))>> Bathroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bath.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_manager","formal")>> back into her bedroom where it turns out she had already set out a pair of outfits for the two of you.<br>
<br>
She watches with a patient and amused smile as you dress, then waits for you to "help" her into her "uniform" before leading you out of the bedroom, down the stairs of what looks to be some sort of mansion, and into her car. Only once the auto-nav is engaged and you are smoothly gliding off her property does she
<<if $player.flags.collar.owner == 'npc_manager'>>
finally unclip your leash, smiling as she gives a gentle tug on the collar.<br>
<br>
"@@.npc_manager;There, back as things should be.@@" She notes with a smile.
<<elseif $player.flags.collar.owner != ''>>
remove your current collar, and replace it with <<if $player.flags.collar.owner == "company">>the company<<else>><<=ps(setup.getNpcName($player.flags.collar.owner,"formal"))>><</if>>.<br>
<br>
"@@.npc_manager;There, I believe that is more appropriate, hmm?@@" She states. "@@.npc_manager;You being uncollared... well, quite improper. I hope you learned your lesson as it pertains to the party — mess up like that again and I may not be there to rescue you...@@"
<<else>>
remove your collar.<br>
<br>
"@@.npc_manager;You need to earn this, if you want to keep it.@@" She states. "@@.npc_manager;But I hope you learned your lesson as it pertains to the party — mess up like that again and I may not be there to rescue you...@@"
<</if>>
<br><br>
"@@.pc;Yes, <<=setup.getNpcName("npc_manager","formal")>>,@@" you reply softly, and submissively, settling in for the commute to the office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Take your desk and start your day." 600 "<<completeTask 'manager_morning_inspection_task' $now true>><<set _x = setup.addManagerEndlessTask()>>">>]
</div>/*#
#desc: auctioned off to npc_discipline after no collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'very' $EXPOSED>>
<<removeItem 'vaccum_cube' true>>
<<deleteItem 'vaccum_cube'>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
You feel yourself wheeled away to an elevator that takes you... up? You're puzzled but between gag and hood you have no way to ask questions or even see what's happening to you.<br>
<br>
Eventually coming to a stop you feel the vacuum pressure relax and you are stood up, multiple pairs of hands holding you firm as you are moved into
<<if $npc_exgirlfriend.flags.bondage_machine.unlocked>>
in a position reminiscent of your "Dreammaker" bondage device, only even more secured —
<<else>>
an all fours position,
<</if>>
bound very tightly in place by at least a dozen straps, your legs slightly spread and your head raised up leaving you exposed, blind and helpless.<br>
<br>
"@@.npc_discipline;I can take it from here,@@" a voice that seems familiar even through the distortion states. "@@.npc_discipline;You foolish thing,@@" she continues a moment later. From the sound of things she must be right next to you, a point confirmed as you feel her fingers brush along your bare flesh. "@@.npc_discipline;Running around without a collar... that is something to be made an example of, whoever you are... and so I am going to be using you to test some new disciplinary techniques. In practice, my intent is to only employ them for an hour or two at a time, but it is always good to test the limits of these things. I shall be quite curious to see how you survive a full night. I do hope you did not have any plans of getting much sleep...@@"<br>
<br>
You reflexively thrash against your bonds, but she merely chuckles and sets to work "finishing" your predicament.<br>
<br>
[<<moveTo "event_party_nocollar_5_discipline_2" "Oh shit..." 600>>]
</div>/*#
#desc: npc_discipline straps you in for a night's torture
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'little' $SEEN_STRANGER>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'little' $SEEN_STRANGER>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'little' $SEEN_STRANGER>>
<<addItem 'cloverclamps'>>
<<wearItem 'cloverclamps' true>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
Her new "technique" starts with the air you're breathing suddenly changing flavour as you find yourself having to work a little harder for each breath.<br>
<br>
"@@.npc_discipline;You like that?@@" The unseen voice teases, "@@.npc_discipline;that's a sniffer bag containing a pair of my used panties — the perfect scent for you to enjoy overnight...@@"<br>
<br>
You moan, only for a a massive dildo to thread through your gag. With<<if setup.checkItemTypeWorn("cage")>> your chastity device removed and<</if>>
<<if $player.body_ref.vagina>>
twin copies occupying your lower holes,
<<else>>
what feels like a twin thrust into you from behind,
<</if>>
you are airtight and stuffed. After checking you for "depth" the dildos retract most of the way, but you do not doubt they will be thrusting hard before long.<br>
<br>
<<if $player.body_ref.penis>>
A sheath is fitted over your <<getWordMyPenis false>>, even the initial suction enough to have you feeling sensitive<<if $fetish.sounding>> — inside and out thanks to a cold steel urethral rod having been slid down your full length<</if>>.
<<else>>
A small suction device has been applied over your clit, the mere application having you feeling quite sensitive.
<</if>>
Humming to herself the whole time she works, the woman applies at least a dozen pads stuck all over your body from the bottoms of your feet to your buttocks to your armpits. Finishing it all off, a pair of harsh nipple clamps dangle heavily from your body.<br>
<br>
<<if $now.getUTCHours() <= 23>>
"@@.npc_discipline;There we go — and with enough time that we can see how you handle a full eight hour shift... I do hope I am not left apologising to your ACTUAL owner, but, such is the price of progress, hmm?@@"
<<else>>
"@@.npc_discipline;Unfortunately it does not appear we will be able to quite see the results of a full eight hour shift, but I am sure the results will be interesting, in any case. I just hope I am not left apologising to your ACTUAL owner, but, such is the price of progress, hmm?@@"
<</if>>
<br><br>
She gives you a sharp slap on the ass as you whimper and she steps away. A moment later and everything kicks into motion at once...<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 4, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 4, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_party_nocollar_5_discipline_3" "Oh <<getWordGod>>..." _timeToMorning>>]
</div>/*#
#desc: tortured overnight after no-collar at party
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('event_admin_morning_workout_call') || $events.hasOwnProperty('event_admin_morning_visit')>>
<<include "postponeAdminMorningVisit">>
<</if>>
<<set _anal = Math.min(setup.getTotalValue("anal")+3, 20)>>
<<applyExperience 'anal' _anal 'skip' $SEEN_STRANGER>>
<<set _oral = Math.min(setup.getTotalValue("oral")+3, 20)>>
<<applyExperience 'oral' _oral 'skip' $SEEN_STRANGER>>
<<set _bdsm = Math.min(setup.getTotalValue("bdsm")+3, 20)>>
<<applyExperience 'bdsm' _bdsm 'skip' $SEEN_STRANGER>>
<<set _submission = Math.min(setup.getTotalValue("submission")+3, 20)>>
<<applyExperience 'submission' _submission 'skip' $SEEN_STRANGER>>
<<applyExperience 'bondage' 18 'unbelievable' $SEEN_STRANGER>>
<<applyFatigue 500>>
<<applyStress 50>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
As expected, the machines burst into motion, but it's even worse than you could have imagined, thrusting cocks from every direction while agonising shocks torture you inside and out. So tight are your bonds you can do little more than tremble, your pained howls choked out by the dildo <<if $fetish.get_raped>>raping<<else>>pounding<</if>> your throat, the twin points of agony that are your nipples mere blips compared to the electric torment that is constantly running across your body, and through your most intimate regions.<br>
<br>
The whole time a mechanical voice speaks in your ear. "@@.npc_ai;<<uc "Submit. Be a good slave. Submit.">>@@" The repetition is insidious, too monotonous to focus on as a distraction, yet inescapable, the command worming into your brain, pounded deeper with each thrust of an artificial cock into your body.<br>
<br>
Some sort of program must be driving the system as, rather than letting you become accustomed to any sort of pattern things constantly shift — always extreme, but never predictable, a combination that saps your energy and your will even as it keeps you from falling asleep except, eventually, due to total exhaustion.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 7, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 7, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_party_nocollar_5_discipline_4" "Oh <<getWordGod>>..." _timeToMorning>>]
</div>/*#
#desc: dressed and show up to work after overnight torture
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'latex_hood_blind_black' true>>
<<deleteItem 'latex_hood_blind_black'>>
<<set $player.flags.stage3party.nocollar.discipline = true>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'cloverclamps' true>>
<<deleteItem 'cloverclamps'>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
Even in dreamless sleep you are occasionally roused to waking hell by a particularly harsh shock or deep thrust.<br>
<br>
When everything suddenly stops it is almost even more surprising — your body still twitching in its bonds, your holes hanging loose as the dildos retreat<<if setup.checkItemTypeWorn("cage")>> and your chastity device is replaced<</if>>.<br>
<br>
Free of your bonds you realise that, while the room is closed, you are momentarily alone. Your gaze passing over the sniffer bag containing the used panties whose fragrance filled your nostrils all night... and which even now lingers slightly.<br>
<br>
[<<moveTo "event_panties_discipline_1" "Swipe the panties." 60>>]<br>
[<<moveTo "event_party_nocollar_5_discipline_5" "Just try to catch your breath." 60>>]
</div>/*#
#desc: swipe panties
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "panties_discipline">>
<<set _earn = true>>
<<set _pantiesowner_id = "npc_discipline">>
<<set _pantiesowner_formal = "formal">>
<<include "stealPanties">>
<<changeHorny 30>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
You open the bag and are greeted with a burst of a familiar scent. Your nocturnal training has seeped deep and your body to clenches in response to the memory of <<if $player.body_ref.vagina>>three<<else>>twin<</if>> dildos ravaging your holes.<br>
<br>
The moment is short-lived, however, and even bringing the used panties to your nose you find that most of their scent has been used up. Nonetheless, you pocket them just as the door to your cell opens.<br>
<br>
[<<moveTo "event_party_nocollar_5_discipline_5" "Continue." 60>>]
</div>/*#
#desc: dressed and show up to work after overnight torture
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>><<set $player.timebased.fatigue = 90>>
<<include "endOfPartyCollar">>
<<washClothes>>
<<include "cleanPlayer">>
<<set $npc_manager.flags.firstcuteoutfit++>>
<<if $npc_manager.stagevalues[3].latex>>
<<addItemSet 'latex_secretary'>>
<<wearItemSet 'latex_secretary' true>>
<<else>>
<<addItemSet 'satin_lingerie_pink'>>
<<addItemSet 'female_office'>>
<<wearItemSet 'satin_lingerie_pink' true>>
<<wearItemSet 'female_office' true>>
<</if>>
<</if>>
<<set $player.location to "Unknown">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_laundry.png" setup.charImage("npc_work","npc_work_cleaners") setup.charImage("npc_work","npc_work_cleaners") setup.charImage("npc_work","npc_work_cleaners")>>
<div id="invframe" class="scrolltext">
You're all but out on your feet thanks to your overnight ordeal as a trio of faceless masked workers approaches. Two hold you from either side and you feel the pinprick of a needle, a rush of energy causing you to thrash, still tired, yet wide awake as the third wields a hose to blast you with stinging jets of water.<br>
<br>
Strong hands make sure you are cleaned from every direction, and then dry you off before forcibly dressing you for work<<if $scene.replaceCollar>>, finishing off with a familiar collar locked around your throat<</if>>. You are marched up a hallway with a box shoved into your hands.<br>
<br>
A hard slap on your ass sends you stumbling out of the employee discipline department and in the direction of the elevator. "@@.npc_discipline;Thanks for spending the night, I hope you got something out of the experience, now get to work... and have a great day!@@"<br>
<br>
The door to the discipline department closes behind before you respond and you lean against the side of the elevator, still trying to right ourself and prepare for the day, your body dead on its feet and your mind frayed from the night's torture.<br>
<br>
<<if $npc_manager.stage > 3 && $currentTasks.hasOwnProperty('manager_morning_inspection_task') && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity') && $currentTasks.manager_morning_inspection_task.trigger.chastity.condition == 0>>
[<<moveTo "event_inspection_stage4_nochastity_1" "Stagger to the elevator." 60>>]
<<else>>
You check the time, not long until your shift starts...<br>
<br>
[<<moveTo "company_lobby" "Head down to the lobby." 60>>]
[<<moveTo "room_office_sissy_secretary" "Head to the office." 60>>]
<</if>>
</div>/*#
#desc: stage 3 party waitress spill
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.inPassageTag($scene.beforetasklocation.last(), 'party') || $scene.spill>>
<<initRoom>>
<<set _beforetasklocation = $scene.beforetasklocation.pop()>>
<<moveTo _beforetasklocation>>
<<else>>
<<alterStatAllWorn 'dirty' '["add",50]'>>
<<set $scene.firstSpill = !$player.flags.stage3party.spill>>
<<set $player.flags.stage3party.spill = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
You are walking around the party when a distracted waitress accidentally backs into you. You watch in slow motion as her tray, and the two glasses of burgundy wine upon it, arcs through the air and <<if $scene.wornCollarType == "necklace">>and miraculously misses you<<else>>then splashes full on across your chest<</if>>.<br>
<br>
<<if !$scene.firstSpill>>
<<printThought 'Is "stain magnet" my super power?'>><br>
<br>
<<elseif $player.sec_style.clothing.unisex == "obedient">>
<<printThought "Not again...">><br>
<br>
<</if>>
[<<moveTo "event_party_spill_1" "Oh no!" 60>>]
</div>/*#
#desc: stage 3 party waitress spill while looking for manager
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<alterStatAllWorn 'dirty' '["add",50]'>>
<<set $scene.firstSpill = !$player.flags.stage3party.spill>>
<<set $player.flags.stage3party.spill = true>>
<<if $events.hasOwnProperty('party_spill_event')>>
<<removeEvent 'party_spill_event'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
You're wandering through the party looking for <<=setup.getNpcName("npc_manager","formal")>> when a distracted waitress accidentally backs into you. You watch in slow motion as her tray, and the two glasses of burgundy wine upon it, arcs through the air and <<if $scene.wornCollarType == "necklace">>and miraculously misses you<<else>>then splashes full on across your chest<</if>>.<br>
<br>
<<if $scene.wornCollarType == "necklace">>
<<if $scene.firstSpill || $player.sec_style.clothing.unisex == "obedient">>
<<printThought "That was a close one!">>
<<else>>
<<printThought "I didn't get spilt on? Huh... wonder if this necklace grants me superpowers...">>
<</if>>
<br><br>
<<elseif !$scene.firstSpill>>
<<printThought 'Is "stain magnet" my super power?'>><br>
<br>
<<elseif $player.sec_style.clothing.unisex == "obedient">>
<<printThought "Not again...">><br>
<br>
<</if>>
[<<moveTo "event_party_spill_1" "Oh no!" 60>>]
</div>/*#
#desc: stage 3 party waitress spill while looking for manager
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.wornCollarType != "necklace">>
<<alterStatAllWorn 'dirty' '["add",50]'>>
<<else>>
<<set $scene.spill = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
<<switch $scene.wornCollarType>>
<<case 'ring' 'collar'>>
Seeing your collar the waitress grins sheepishly. "I'm so sorry... we are a bit understaffed tonight so I have just been rushing around like crazy!" She looks you up and down for a moment with a tentative smile.<br>
<br>
"@@.generic_female1;Say... I don't suppose you'd be interesting in working a shift? It'd get you out of those stained clothes and you can learn all sorts of things when people just consider you part of the furniture.@@"<br>
<br>
[<<moveTo "event_party_spill_2_waitress_1" "Accept her offer." 600 "<<set $scene.waitressOffer=true>>">>]<br>
[<<moveTo "event_party_spill_2_waitress_1" "Decline her offer." 600 "<<set $scene.waitressOffer=false>>">>]
<<case 'choker'>>
The waitress glances at your choker and drops into a half curtsy, "@@.generic_female1;Sorry about that... hmm, would you like me to show you the lost and found and see if we have something you could change into? That outfit is just ruined but we can probably find you a replacement if you want to stick around and enjoy the rest of the party.@@"<br>
<br>
[<<moveTo "event_party_spill_2_change_1" "Go with her." 600>>]<br>
[<<moveTo "event_party_spill_2_waitress_1" "Decline her offer." 600 "<<set $scene.changeOffer=false>>">>]
<<case 'necklace'>>
Seeing your necklace the waitress goes wide-eyed in shock. "@@.generic_female1;Ohmygod, I'm so, so sorry Mistress! Please, forgive my clumsiness and punish me in the way you deem most appropriate. There is a private room set aside for the correction of servants who commit such stupid errors.@@"<br>
<br>
<<if setup.getTotalValue("dominance") > 5>>
[<<moveTo "event_party_spill_2_punish_1" "Take her off for punishment." 600>>]<br>
<<else>>
[@@.link_locked;Punish her? No, you're too submissive for that.@@]
<</if>>
[<<moveTo "event_party_root" "Say it's fine and return to the party." 600>>]
<<default>>
ERROR unexpected scene.worn collar type: <<=$scene.wornCollarType>>
<</switch>>
</div>/*#
#desc: stage 3 party waitress spill
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
<<if $scene.waitressOffer>>
The waitress looks grateful as you accept her offer, leading you quickly through the party into what looks to be a kitchen/staging room for food and such.<br>
<br>
<<if setup.getTotalValue("dexterity") > 10>>
You narrowly dodge another collision as a second waitress comes barreling towards the door with a platter full of brioche, nimbly twirling away and impressing the first girl with your agility in the process.
<<else>>
You almost meet another collision as a second waitress comes barreling towards the door with a platter full of brioche only for first girl to pull you out of the way at the last moment.
<</if>>
"@@.generic_female1;Gotta be careful in here, everyone is move, move, move! After all, I don't have to tell you what sort of fate awaits us if our service proves unsatisfactory... and by the time you finish that you're even further behind!@@"<br>
<br>
You laugh along with her as she leads you into a side room and flicks through a rack of dresses identical to her own before holding one up that looks to be your size.<br>
<br>
"@@.generic_female1;Here you go, get changed, then report to the head chef, thanks again for helping out like this, you're a real lifesaver!@@"<br>
<br>
Obviously still in a hurry, she leaves you to get changed and dives back into the chaos of the kitchen.<br>
<br>
[<<moveTo "event_party_spill_2_waitress_2" "Get changed." 600>>] <<hint $options "You will spend the remainder of the party delivering food and drinks and be unable to do normal activities.">><br>
[<<moveTo "event_party_spill_2_end" "Head back to the party instead." 600>>]
<<else>>
You thank her for the offer but state that you'd rather stick with what you have and continue to enjoy the party. Needing to get back to work she picks the glasses up off the floor and hurries off.<br>
<br>
[<<moveTo "event_party_spill_2_end" "Continue." 600>>]
<</if>>
</div>/*#
#desc: stage 3 party spill, option to change
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Cloakroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cloakroom.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
<<if $player.flags.data_crystal.got>>
The waitress leads you to the back of the cloakroom, pawing through the lost and found while occasionally glancing back at you and muttering to herself but finally coming up empty. "@@.generic_female1;I am really sorry but I can't find a single thing that would be appropriate for you to wear... sorry but I guess you're just stuck like that for the rest of the night.@@"<br>
<br>
You thank her for trying and the two of you head back to the party and go your separate ways.<br>
<br>
[<<moveTo "event_party_spill_2_end" "Back to the party." 600>>]
<<else>>
The waitress leads you to the back of the cloakroom, pawing through the lost and found while occasionally glancing back at you and muttering to herself. "@@.generic_female1;Nope, that wouldn't fit, who would ever wear that, nope, nope, ah, here we go!@@"<br>
<br>
Popping up she presents you with a sleek little black dress — emphasis on little; while the front zips all the way up to a high-neck collar the lower edge of the skirt barely goes as far as the bottom of your pelvis!<br>
<br>
Seemingly unconcerned with how skimpy the outfit is the waitress is all smiles as she hands it to you, "@@.generic_female1;Here, this should look perfect on you! I bet you'll feel much better to be out of those stained clothes!@@"<br>
<br>
[<<moveTo "event_party_spill_2_change_2" "Get changed." 600 "<<set $scene.change=true>>">>]<br>
[<<moveTo "event_party_spill_2_change_2" "On second thought, just go back to the party." 600 "<<set $scene.change=false>>">>]
<</if>>
</div>/*#
#desc: stage 3 party spill, change into clean dress
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.change>>
<<useClothSetPush 'tmp'>>
<<addItem 'bondage_cocktail_dress'>>
<<wearItem 'bondage_cocktail_dress' true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Cloakroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cloakroom.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
<<if $scene.change>>
You slip out of your stained outfit and slip into the dress. As tight as it is shiny, it is just as short as you imagined and you estimate you'll be in for an evening of pulling things down and making sure not to bend over lest you show off everything.<br>
<br>
While you were changing, the waitress was straighting up the mess she made of the lost and found, popping up as you finish with another item that looks to be made of the same stretchy leather-like black fabric as your microdress.<br>
<br>
"@@.generic_female1;Hey, so I was looking through and I'm pretty sure this is meant to go with that dress, come on, let's complete the look!@@"<br>
<br>
Looking at the item, you realise that it's an armbinder and that it would subtly attach to the sides of the dress for a sleek, almost seamless "venus de milo" look.<br>
<br>
<<if setup.getTotalValue("bondage") > 10>>
<<if setup.getTotalValue("bondage") > 15>>
[<<moveTo "event_party_spill_2_change_3" "Bondage? Yes and please, there is no way you can pass up this opportunity!" 600 "<<set $scene.armbinder=true>>">>]
<<else>>
<<printThought "Mmm, bondage, I bet that would feel really good AND look hot...">> <br>
<br>
[<<moveTo "event_party_spill_2_change_3" "Agree to wear the armbinder attachment." 600 "<<set $scene.armbinder=true>>">>]<br>
[<<moveTo "event_party_spill_2_change_3" "Decline the armbinder attachment." 600 "<<set $scene.armbinder=false>>">>]
<</if>>
<<else>>
<<if setup.getTotalValue("bondage") > 5>>
<<printThought "Hmm, that's pretty extreme, but there's no harm in just trying it on, right?">>
<<else>>
<<printThought "I don't think I want to wear that in public, but I guess I could humor her and try it on?">>
<</if>>
<br><br>
[<<moveTo "event_party_spill_2_change_3" "Agree to try on armbinder attachment." 600 "<<set $scene.armbinder=true>>">>]<br>
[<<moveTo "event_party_spill_2_change_3" "Decline the armbinder attachment." 600 "<<set $scene.armbinder=false>>">>]
<</if>>
<<else>>
Eying the dress you ask if there might be any other options but the waitress shakes her head. "@@.generic_female1;Sorry, this is it, everything else is either the wrong size or so hideous I'd never forgive myself for foisting it on such a lovely girl as yourself.@@"<br>
<br>
You sigh, thanking her for her time as you state that you'll just head back to the party as you are. She appears a little disappointed but nods, straighting up the mess she made of the lost and found as you head back to the party.<br>
<br>
[<<moveTo "event_party_spill_2_end" "Continue." 600>>]
<</if>>
</div>/*#
#desc: stage 3 party waitress tricked into wearing armbinder
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.armbinder>>
<<set $player.flags.stage3party.trussed = true>>
<<addItem 'bondage_cocktail_dress_armbinder'>>
<<wearItem 'bondage_cocktail_dress_armbinder' true>>
<<addItem 'fancy_steel_collar'>>
<<wearItem 'fancy_steel_collar' true>>
<<set $scene.underwear = setup.getItemFromType("panties")>>
<<if $scene.underwear != "">>
<<removeItem $scene.underwear true>>
<</if>>
<<set $scene.peekedDungeon = false>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Cloakroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cloakroom.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
<<if $scene.armbinder>>
The waitress grins enthusiastically as you agree to put on the armbinder. You turn around and put your arms together behind your back as she helps you slip it on, first attaching it to the dress itself then drawing the zipper up the back and pulling your arms together. Near the top of your spine, she pauses and starts to fiddle with your choker. "@@.generic_female1;Sorry, this is getting in the way, let me just take it off for a moment so I can get everything zipped up proper.@@"<br>
<br>
Your arms already tightly held behind your back, you can't do much to object. Instead you admire your new, sleek look in a nearby mirror as she removes the choker and finishes up. Driving home how ridiculously short the skirt is, you realise that your hands actually extend past the bottom hem — though the fact that the skirt is attached to the armbinder all the way down to where the former stops means that you, at least, would not need to worry about things "riding up" whilst unable to manually adjust.<br>
<br>
Distracted by your attractive and sleek "no-arm" look, you are brought back to the moment as something click around your throat, with a start you look in your reflection and realise that there is now a gleaming polished steel collar locked around your neck! From the feel of its weight as the waitress lets go, it must be very secure.<br>
<br>
"@@.generic_female1;There!@@" She crows in triumph. "@@.generic_female1;Oh, I just knew that collar would go perfectly with this dress and since your neck was bare technically, you were free to claim! It looks like the latch was a bit faulty and it must have fallen off its previous owner. Poor luck for them since it would have left them bare necked in the middle of the party! You don't need to worry though, I fixed it so it'll stay nice and locked the rest of the evening. You really ought to be more careful around strangers!@@"<br>
<br>
You start to object and thrash around but — for as fashionable as it may look — your dress has rendered you nearly helpless.<br>
<br>
"@@.generic_female1;Oh, calm down — there's no ring so you're still in control of what happens to you so just enjoy the outfit and have fun at the party!@@" She starts to step away only to turn back as your heart skips a beat.<br>
<br>
<<if $scene.underwear != "">>
"@@.generic_female1;Actually... that tight dress is not working with your panty-line, let me fix that for you.@@"<br>
<br>
Before you can react, she reaches under your oh-so-short skirt and pulls your underwear to the ground, tugging at your feet until you are forced to step out less you have your balance swept out from under you.<br>
<br>
Popping back up, she grins. "@@.generic_female1;Much better! And you naughty girl, leaving things so wet!@@" She licks the front panel of your panties then smiles in obvious pleasure,
<<if $fetish.sissy>>
"@@.generic_female1;Mmmm, I just love the taste of sissy. You know I'm half tempted to shove these in your mouth before sending you back out, but that would kind of interfere with you socialising, so I guess I'll just toss them with the rest of your things.@@"
<<else>>
"@@.generic_female1;Mmm, delicious. You know I'm half tempted to shove these in your mouth before sending you back out, but that would kind of interfere with you socialising, so I guess I'll just toss them with the rest of your things.@@"
<</if>>
<<else>>
Pulling the short skirt down she reaches under for a moment to tease you. "Good call going commando, wouldn't want to mess up the lines of your dress, plus being easy access is just so much better..." Reaching under her hand <<if setup.isCage()>>grasps your chastity cage<<else>>presses against your belt<</if>> and you leak into her palm. Licking up your juices in her hand she grins.
<<if $fetish.sissy>>
"@@.generic_female1;Mmmm, I just love the taste of sissy.@@"
<<else>>
"@@.generic_female1;Mmm, delicious.@@"
<</if>>
<</if>>
She puts your clothes in an empty locker and closes the door. "@@.generic_female1;Timed release until the end of the party without a manager override, so you can grab it all on your way out no prob. Well, I guess that's all the help I can provide. I really need to get back to work, have a great evening!@@"<br>
<br>
Before you can reply further, the girl has jetted away. Giving a final glance at your reflection to confirm that you are as helplessly secured as you look you sigh and carefully head back to the party — bound as you are, you'd be as helpless as a turtle on its back if you fell.<br>
<br>
[<<moveTo "event_party_root" "Back to the party." 600>>]
<<else>>
The waitress is definitely disappointed when you decline her offer, the two of you leave the cloakroom and she apologises once again before heading back to her work as you return to the party in your new scandalously short dress.<br>
<br>
[<<moveTo "event_party_root" "Look for someone to talk to." 60>>]
<</if>>
</div>/*#
#desc: sent home after spill event
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEvent 'work_party_end'>>
<<include "endOfPartyCollar">>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png">>
<div id="invframe" class="scrolltext">
You re-enter the party only for <<=setup.getNpcName("npc_manager","formal")>> to appear several minutes later and frown as she looks at your outfit. "@@.npc_manager;What happened to you?@@" She shakes her head "@@.npc_manager;You know that you work in a representative position... I am very sorry but I just cannot allow you to remain at the party looking like... this.@@"<br>
<br>
Taking you gently, but firmly, by the arm she leads the way back to the elevator<<if $scene.partyTempCollar>> and removes the choker she loaned you<</if>>. A quick car trip later and you are back at your flat.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: stage 3 party pressganged waitress
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'maid_slutty_black'>>
<<addItem 'maid_heels_extreme_black'>>
<<wearItemSet 'maid_slutty_black' true>>
<<wearItem 'maid_heels_extreme_black' true>>
<<set $player.flags.stage3party.worked_waitress = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_party_kitchen.png" "party_generic_waitress" setup.charImage("npc_cook")>>
<div id="invframe" class="scrolltext">
Whoever the waitress was, she had a good eye as the uniform she picked out fits you perfectly. Checking yourself in the mirror, you look cute, sexy and subservient and you take a moment to straighten everything before peering out and making your way into the kitchen to find the so-called "head chef." <br>
<br>
"@@.npc_cook;Ah, lass! I dinnae know yeh was working tonight!@@" <<=setup.getNpcName("npc_cook","first")>> greets boisterously. "@@.npc_cook;Here,@@" <<he npc_cook>> states, handing you a tray piled with oysters on the half-shell. "@@.npc_cook;Run that out, some of the guests get mighty antsy when they run out of their second favourite briny treats!@@"<br>
<br>
You roll your eyes as you take the heavy platter in hand.
<<if setup.getTotalValue("strength") > 10>>
Fortunately your time at the gym allows you to hoist it with ease. <<=setup.getNpcName("npc_cook","first")>> looks impressed as you
<<if setup.getTotalValue("strength") > 15>>
casually swing the platter around
<<else>>
balance it
<</if>>
with one hand and head for the door.
<<else>>
You are forced to use two hands to manage the heavy tray
<<if setup.getTotalValue("strength") > 5>>
but you manage to carry it well enough as you head for the door.
<<else>>
and even that is a struggle, perhaps you should spend some more time at the gym? You head for the door.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_party_spill_2_waitress_3" "Head out into the party." 3600>>]
</div>/*#
#desc: stage 3 party work waitress
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 80>>
<<set $scene.failWorking = setup.getTotalValue("stamina") < 10 || $player.timebased.fatigue >= .9 * $player.timebased.fatiguemax || setup.getTotalValue("heels") < 10 || setup.getTotalValue("heels") < setup.getItemObjFromType('shoes').heels.difficulty>>
<<if $scene.failWorking>>
<<if $player.flags.stage3party.voluntary_waitress < 1>>
<<set $player.flags.stage3party.voluntary_waitress = 1>>
<</if>>
<<include "endOfPartyCollar">>
<<else>>
<<if $player.flags.stage3party.voluntary_waitress < 2>>
<<set $player.flags.stage3party.voluntary_waitress = 2>>
<</if>>
<</if>>
<<removeEvent 'work_party_end'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.failWorking>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/ballroom.png">>
<</if>>
<div id="invframe" class="scrolltext">
You have barely left the kitchen when party guests start descending on you, making less than half a circuit of the room before your platter is empty and you head back for more.<br>
<br>
As the night wears on, you understand why the waitress was so eager for the help.
<<if setup.getTotalValue("stamina") < 10 || $player.timebased.fatigue >= .9 * $player.timebased.fatiguemax>>
You barely get a moments rest for the better part of an hour, a level of exertion that is quite beyond your capacity. Dead on your feet you are grateful when you happen to bump into <<=setup.getNpcName("npc_manager","formal")>> and she looks you over with a sigh.<br>
<br>
"@@.npc_manager;How did you—@@" she starts as she looks at the waitress outfit and your tray of food only to shake her head "@@.npc_manager;No matter, from the look of things you are too tired to give a proper explanation in any case. Come along, let us get you home before you pass out, you look like a dead girl walking!@@"<br>
<br>
You are quite grateful as she takes the heavy platter from your hand, handing it off to another waitress as she leads you towards the exit. Leaning against the side of the elevator as you zip down to the parking garage it starts to settle in how exhausted you really are, grateful <<if $scene.replaceCollar>>for <<=setup.getNpcName("npc_manager","formal")>> to replace your collar just before you<<else>>to<</if>> take your seat in the limo and shuffle home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<<elseif setup.getTotalValue("heels") < 10 || setup.getTotalValue("heels") < setup.getItemObjFromType('shoes').heels.difficulty>>
Your stamina may be up to the task of walking all over creation, but carrying a tray of food but your feet? Not so much. Your calves ache and your toes are on fire from spending so much time in heels culminating in your ankle giving out and you tripping, right into the arms of <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;Well!@@" She states as she helps you back to your feet. "@@.npc_manager;I was wondering where you got off to — roped in to helping out it would seem but you appear to be on your last legs!@@"<br>
<br>
Taking the tray from your grasp she half carries you as she leads the way to the exit. "@@.npc_manager;Come along, I think this is a bit too much for one evening, we need to get you home.@@"<br>
<br>
Stumbling now even with her assistance you cannot object, grateful <<if $scene.replaceCollar>>for <<=setup.getNpcName("npc_manager","formal")>> to replace your collar just before you<<else>>to<</if>> sit down in the limo a few minutes later and zip back to your apartment.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<<else>>
Still, you have the stamina to keep up and, later in the evening, you actually get a few minutes of surprising calm, a brief respite from some manager or another ordering you about.<br>
<br>
[<<moveTo "event_party_work_waitress_root" "Look around." 60>>]
<</if>>
</div>/*#
#desc: stage 3 party meet conspirator after spill
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.isItemEquipped("bondage_cocktail_dress_armbinder")>>
<<addItem 'party_data_crystal'>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_give_crystal' 0 'event_manager_theme_private_give_crystal' false 'privatethemes'>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('leather_cocktail_dress')>>
<<set $player.flags.data_crystal.got = true>>
<<set $npc_manager.flags.office_unlocked = true>>
<<if $now.getUTCHours() == 21>>
<<set _shiftedDate to setup.setNextDate($now, 0, 23, 0)>>
<<removeEvent 'work_party_end'>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 0, $now.getUTCHours()+1, 10)>>
<<addEvent 'work_party_data_crystal_end' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("generic","npc_conspirator")>>
<div id="invframe" class="scrolltext">
<<if setup.isItemEquipped("bondage_cocktail_dress_armbinder")>>
You approach the furtive looking <<man>> who quickly motions you aside, glancing around as if to check if anyone might be eavesdropping.<br>
<br>
"@@.generic_male1;Finally! I was thinking something happened to you. Anyway I have the material, so get it back to your owner as quick as you can. We need to move swiftly if we are going to put <<his npc_rival>> plan into motion. Oh, and make sure <<he npc_rival>> reviews the material before forwarding it along — I included a little reminder of our arrangement that I doubt <<he npc_rival>> would want anyone else to see.@@" <<He>> tucks a small data crystal into your dress before hurrying away, quickly disappearing into the crowd.<br>
<br>
<<printThought "What have I stumbled into? I guess <<he>> was waiting for someone wearing this outfit but what could this all be about? Whatever it is, it sounds very clandestine.">><br>
<br>
Bound as you are, such questions would have to wait until you got home.<br>
<br>
[<<moveTo "event_party_root" "Continue on your way." 600>>]
<<else>>
<<if setup.isItemEquipped("bondage_cocktail_dress")>>
You approach the furtive looking <<man>>. <<He>> stares at your dress for a long moment but as <<his>> eyes trace over your arms and throat <<he>> shakes <<his>> head. "@@.generic_male1;Sorry, dear, but I am waiting for someone and I do not have time to talk right now.@@"<br>
<br>
<<printThought "Hmm, it seems like <<he>> is looking for someone in particular, maybe <<he>> hasn't met them and was told to recognise them based on their outfit.">>
<<else>>
<<He>> seems quite nervous and impatient and you wonder if something might have happened to whoever <<he>> was expecting to meet?
<</if>>
<br><br>
[<<moveTo "event_party_root" "Back to the party." 600>>]
<</if>>
</div>/*#
#desc: stage 3 party find manager after data crystal
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('work_party_data_crystal_end')>>
<<removeEvent 'work_party_data_crystal_end'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<if $scene.approach>>
As you walk towards your <<=setup.getNpcName("npc_manager","title")>> she notices you and waves you over.
<<else>>
Still puzzling what could be on the data crystal you have been given, you wander back through the party only to soon come across your <<=setup.getNpcName("npc_manager","title")>> who waves at you as soon as she notices you.
<</if>>
<br><br>
"@@.npc_manager;Terribly sorry,@@" she states to the <<man>> who had just been talking to her "@@.npc_manager;But it would appear my sweet <<if $fetish.sissy>>SISSI <</if>>secretary has got herself into a spot of trouble.@@"<br>
<br>
Seemingly disappointed to be cut off, the <<man>> leers at you in response. "@@.generic_male1;Well, that seems highly impolite for her to interrupt a discussion between betters, surely you do not let your slaves get away with such behaviour? This is why I never bring my girl to the party without a PROPER collar that reminds them of their owner with every step as the ring dangles against their throat.@@"<br>
<br>
It definitely seems as if <<=setup.getNpcName("npc_manager","formal")>> is trying to use you to escape this conversation, perhaps she would appreciate some help?<br>
<br>
<<if $player.sec_style.sex.blowjob>>
[<<moveTo "event_party_data_crystal_end_2" 'Offer your mouth if <<he>> would be willing to give you time with your <<=setup.getNpcName("npc_manager","title")>>.' 600 "<<set $scene.action='oral'>>">>]<br>
<</if>>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_party_data_crystal_end_2" 'Offer to let <<him>> fuck your ass if <<he>> would be willing to give you time with your <<=setup.getNpcName("npc_manager","title")>>.' 600 "<<set $scene.action='anal'>>">>]<br>
<</if>>
[<<moveTo "event_party_data_crystal_end_2" 'Remain silent.' 600 "<<set $scene.action='none'>>">>]
</div>/*#
#desc: stage 3 post-spill help manager escape conversation
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action != 'none'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'oral'>>
Curtsying in apology, you explain that you would gladly make it up to <<him>> by offering the use of your mouth but that you really do need <<=ps(setup.getNpcName("npc_manager","formal"))>> assistance.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> expression is one of relief at your offer and the <<man>> grins wider. "@@.generic_male1;Well, well, perhaps she does know her place. Though... you really should teach her that it is not a mouth, but a face fuck-hole.@@"<br>
<br>
"@@.pc;Of course, <<sir>>,@@" you quickly reply "might this face fuck-hole have the honour of serving you this evening?" <br>
<br>
"@@.generic_male1;That sounds delightful.@@" The <<man>> replies with a grin, "@@.generic_male1;Come, let us find somewhere with a bit more privacy lest some other slut sees what I have and wants a piece.@@"
<<case 'anal'>>
Curtsying in apology, you ask if <<he>> would like to bend you over but that after that you really do need <<=ps(setup.getNpcName("npc_manager","formal"))>> assistance.<br>
<br>
"@@.generic_male1;Fucking your <<if $fetish.sissy>>sissy <</if>>butt seems like an acceptable recompense for your rudeness... even if a slut like you is probably getting just as much out of the act as I am. Come, let us find somewhere with a bit more privacy lest some other slut sees what I have and wants a piece.@@"
<<case 'none'>>
There is a brief moment of silence before <<=setup.getNpcName("npc_manager","formal")>> inserts herself between you and the <<man>>.<br>
<br>
"@@.npc_manager;Be that as it may she is my girl to manage as I please, now I will certainly speak to you later but right now my responsibilities as a manager take precedence.@@"<br>
<br>
The <<man>> grunts in annoyance and wanders off. <<=setup.getNpcName("npc_manager","formal")>> waits until <<he>> is out of earshot before leading the way towards the exit and speaking to you quietly.<br>
<br>
"@@.npc_manager;So, that was <<if $options.fem>>Paige<<else>>Paul<</if>> from accounting, the one I warned you about. I swear <<he>> could talk a stenographer to death and never once say anything of interest. On the topic of interest... what exactly have you been up to?@@"<br>
<br>
[<<moveTo "event_party_data_crystal_end_3" 'Tell her about the spill and the waitress.' 600 "<<set $scene.tell=false>>">>]<br>
[<<moveTo "event_party_data_crystal_end_3" 'Tell her about everything up through the data crystal.' 600 "<<set $scene.tell=true>>">>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != "none">>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> smiles and leads the way "@@.npc_manager;Wonderful, then. You see now why I afford my girl an additional measure of freedom — enthusiastic servitude is so much better than broken obedience and they will never learn that properly unless you occasionally remove the leash.@@"<br>
<br>
<<His>> attention seemingly focused on the forthcoming <<if $scene.action =="oral">>blowjob<<else>>butt-fucking<</if>>, the <<man>> merely nods as the three of you hurry to a row of doors running down one side of the ballroom, finding one subtly marked "unoccupied" and heading in together.<br>
<br>
The room beyond is cozy, but not cramped, seemingly designed for this sort of thing, complete with a small raised bed, carpeted floor and a trunk presumably containing additional supplies.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> locks the door and stands guard before nodding for you to proceed.<br>
<br>
<<if $scene.action =="oral">>
[<<moveTo "event_party_data_crystal_end_2_sex" 'Get on your knees.' 600>>]
<<else>>
[<<moveTo "event_party_data_crystal_end_2_sex" 'Bend over the edge of the bed.' 600>>]
<</if>>
<</if>>
</div>/*#
#desc: stage 3 sex with man who was talking to your manager
#status: RELEASED 0.7.8.0
#ignore_spell: 'd
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case "oral">>
<<applyExperience 'oral' 3 'insignificant' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'insignificant' $SEEN_FRIEND>>
<<set $player.flags.data_crystal.sex = true>>
<<case "anal">>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
<<applyExperience 'anal' 5 'insignificant' $ALONE>> <<else>>
<<applyExperience 'anal' 3 'insignificant' $ALONE>>
<</if>>
<<if !$player.sec_style.sex.anal>>
<<set $player.sec_style.sex.anal = "obedient">>
<<include "analUnlocks">>
<</if>>
<<set $player.flags.data_crystal.sex = true>>
<</switch>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "oral">>
Without the use of your arms for balance, dropping to your knees is a bit of a trick, but you manage to make it down
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
with perfect grace
<<else>>
with a modicum of grace
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
without face-planting.
<<else>>
with only a little assistance.
<</if>>
<</if>>
Looking forward as <<he>> unbottons <<his>> pants, you lay eyes on <<his>> cock for the first time.
<<case "anal">>
As the <<man>> <<if $options.fem>>unzips her skirt<<else>>unbuttons <<his>> pants<</if>> you mince over to the bed, bending forward and raising your arms to expose your <<if setup.checkItemTypeWorn("plug")>>plugged <</if>>ass. Though you try to act with grace your bound arms means you're in a bit of a pickle and you end up falling the last few centimetres forward to land on your face. Fortunately the bed is quite soft and you glance back in anticipation as you wiggle your booty in invitation.
<<default>>
ERROR: unexpected scene.action: <<=$scene.action>>
<</switch>>
<br><br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
You recall <<his>> clearly delusional boast as <<he>> is revealed to be significantly below average.
<<else>>
Recalling <<his>> boast you are disappointed to note that <<he>> is significantly below average.
<</if>>
Still, though you do love how a nice big <<getWordPenis>> reshapes your body to accommodate its presence, the best cock is the one that is inside you, and that's about to be your wonderful reality.
<<else>>
<<if setup.getTotalValue("penis") > 5>>
Recalling <<his>> boast, you are surprised that it is a below-average specimen.
<<else>>
Recalling <<his>> boast, you are pleasantly surprised that it is actually quite modest in size.
<</if>>
<</if>>
<br><br>
<<switch $scene.action>>
<<case "oral">>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
With <<him>> referring to you as a "face fuck-hole" you know exactly what to expect, and you add a bit of suction and tongue pressure
<<else>>
<<He>> makes good on referring to you as a "face fuck-hole" and you do what you can to work with that, sucking and licking
<</if>>
as <<he>> grabs your head with both hands and humps away — <<his>> size such that <<he>> never once even approaches being deep enough to penetrate your throat.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
It seems the <<man>> was serious about the whole "face fuck-hole" thing because <<he>> doesn't even give you a chance to deploy what skills you have, opting instead to grab your head with both hands and hump away.
<<else>>
Even with your barely-existant skill, <<he>> is small enough to "deepthroat" — though its still a misnomer as <<he>> barely brushes the back of your throat even as <<he>> takes advantage of your helplessness to grab your head and hump your face.
<</if>>
<</if>>
<br><br>
To your surprise, the <<man>> starts to resume <<his>> conversation with your <<=setup.getNpcName("npc_manager","title")>>! Though you cannot see anything save <<his>> <<if !$options.fem>>hairy <</if>>crotch peeking out from <<his>> pants, you can sense <<=setup.getNpcName("npc_manager","formal")>> tense up in annoyance and you redouble your efforts in hopes of hastening her respite. Even with a mouth half-full of cock you almost find yourself drifting off. The <<man>> paradoxically takes boring to levels beyond imagination, but you manage to stay focused as it proves that <<he>> spent all <<his>> stamina points on speaking without leaving any left over for sex.<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
You cannot recall the last time you tasted cum so bland. Even for an aficionado of your devotion you struggle to think of anything positive to say about it.
<<else>>
<<His>> cum, like the <<man>> <<him>>self, is boring and remarkably bland, easily one of the most disappointing loads you've ever sucked down.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
Your journey of learning to enjoy the taste of cum takes a fresh turn as you are "treated" to something that can only be referred to as boring and bland.
<<else>>
You are surprised at the taste of <<his>> cum. While slimy, bitter and overall yucky the word that most comes to mind to describe it is bland, something of a surprise if it were coming from a less dull person.
<</if>>
<</if>>
Leaning back, you open your mouth and display <<his>> load cradled in your tongue, the <<man>> finally breaking the flow of <<his>> conversation to look down and grin.<br>
<br>
"@@.generic_male1;She really is a proper face fuck-hole, you really must tell me about her training!@@"<br>
<br>
Stepping away from the door, <<=setup.getNpcName("npc_manager","formal")>> places a possessive hand on your head, stroking your hair as she forces a polite smile to her face.
<<case "anal">>
"@@.generic_male1;No panties? What a slut,@@" <<he>> states before grabbing you by the hips.
<<if setup.checkItemTypeWorn("plug")>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
Your hole already gaping thanks to your hollow plug, <<he>> just slides in and starts pumping, <<his>> efforts barely even felt through the walls of the plug save for the sound of <<his>> hips slapping against your ass with each thrust.
<<else>>
You raise your arms as far as you can to lift your skirt so <<he>> has easy access to remove your plug. It slides out easily only to be replaced by something far smaller and disappointing.
<</if>>
<<else>>
<<He>> slides into you with a single quick thrust, though that's a testament to <<his>> size, not your capabilities.
<</if>>
<br><br>
<<if setup.getTotalValue("anal") > 10>>
<<His>> member is almost an insult to your magnificent hole but you still do all that you can to make <<his>> time inside you as pleasurable as possible, squeezing down and wiggling your hips as you wish <<he>>'d <<if $player.body_ref.penis>>at least once come anywhere near your prostate<<else>>pay a little more attention to your pleasure<</if>>.
<<else>>
<<if setup.getTotalValue("anal") > 5>>
<<His>> cock proves to be as boring as <<he>> is, <<his>> rhythmic thrusting metronome-like in consistency yet failing to pump much in the way of pleasure into your body.
<<else>>
Even for your miniscule experience <<he>> seems small, slapping away without doing much of anything for you.
<</if>>
<</if>>
<br><br>
The <<man>> doesn't last long, and with a final thrust and a grunt <<he>> climaxes then slowly backs away.<br>
<br>
"@@.generic_male1;Not bad@@" <<he>> states. "@@.generic_male1;Could have been a bit tighter, though.@@"<br>
<br>
You're glad you're faced away where <<he>> can't see you roll your eyes, instead merely thanking <<him>> for using your hole<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>> and requesting that <<he>> please replace your plug<</if>>.<br>
<br>
"@@.generic_male1;You trained this bitch well. You really need to tell me your secret@@" <<he>> states <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>as <<he>> shoves the plug back into you, its fullness very welcome after <<his>> disappointing cock<<else>>as <<he>> cleans up<</if>>. You can sense <<hes>> about to re-start a conversation before <<=setup.getNpcName("npc_manager","formal")>> thankfully intervenes.
<<default>>
ERROR: unexpected scene.action: <<=$scene.action>>
<</switch>>
"@@.npc_manager;Some other time, perhaps now that she has performed her duty, I really must divert my attention to find out what happened to her.@@"<br>
<br>
"@@.generic_male1;Right, well... see you around, then, I guess,@@" the <<man>> replies. <<He>> seems to be trying to draw things out. <<=setup.getNpcName("npc_manager","formal")>> feigns patience as she waits for <<him>> to leave.<br>
<br>
As soon as the door closes behind <<him>>, she brushes you off and helps you to your feet. "@@.npc_manager;So, while we wait for the coast to clear, how about you tell me what, exactly happened to you this evening?@@"<br>
<br>
[<<moveTo "event_party_data_crystal_end_3" 'Tell her about the spill and the waitress.' 600 "<<set $scene.tell=false>>">>]<br>
[<<moveTo "event_party_data_crystal_end_3" 'Tell her about everything up through the data crystal.' 600 "<<set $scene.tell=true>>">>]
</div>/*#
#desc: stage 3 manager finds you after meeting with conspirator
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'bondage_cocktail_dress' true>>
<<deleteItem 'bondage_cocktail_dress'>>
<<removeItem 'bondage_cocktail_dress_armbinder' true>>
<<deleteItem 'bondage_cocktail_dress_armbinder'>>
<<removeItem 'fancy_steel_collar' true>>
<<deleteItem 'fancy_steel_collar'>>
<<useClothSetPop 'tmp'>>
<<if $scene.tell>>
<<set $scene.acceptCrystal = $npc_manager.affection - $npc_manager.anger > 5>>
<<if $scene.acceptCrystal>>
<<deleteItem 'party_data_crystal'>>
<<incrementEmotion 'affection' 'npc_manager' 5>>
<<set $player.flags.data_crystal.manager = true>>
<<addNpcTheme 'npc_manager' 'work' 'theme_manager_bonus_data_crystal' 0 'event_manager_theme_private_data_crystal' false 'privatethemes'>>
<<addEmail $computer
'-REDACTED-'
'<<=$player.first_name>> <<=$player.last_name>>'
false
true
$now
'mail_manager_data_crystal_01_h'
'mail_manager_data_crystal_01_t'
'{"name":"contents.rar","type":"event","data":{"event":"attachment_data_crystal_contents"}}'
>>
<</if>>
<</if>>
<<removeEvent 'work_party_end'>>
<<include "endOfPartyCollar">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<if $scene.tell>>
<<if $scene.acceptCrystal>>
You tell her everything — from the spill to the waitress
<<if setup.getTotalValue("bondage") > 10>>
<<if setup.getTotalValue("bondage") > 15>>
who found you this wonderfully restrictive outfit.
<<else>>
who "helped" you into your delightfully restrictive outfit.
<</if>>
<br><br>
"@@.npc_manager;What a naughty girl, though I have to admit her ability to pick a dress is phenomenal, you look lovely in this... the only flaw being that it is not my collar around your throat.@@"
<<else>>
<<if setup.getTotalValue("bondage") > 5>>
who tricked you into your bound predicament.
<<else>>
who took advantage to bind you into this restrictive outfit.
<</if>>
<br><br>
"@@.npc_manager;Well, I hope you took lesson from this. These parties are not to be trifled with and a cute girl like yourself needs to know the rules and always be on her toes. Still, you have to admire her eye for clothing, you look lovely in this... the only flaw being that it is not my collar around your throat.@@"
<</if>>
<br><br>
You blush at the compliment then continue on to explain the mysterious <<man>> and the data crystal <<he>> gave you.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks concerned as she locates the crystal and holds it up to the light.<br>
<br>
"@@.npc_manager;Hmm, encrypted, but I should be able to crack it. A very nice find, thank you for bringing it to my attention.@@"<br>
<br>
<<printThought "Wait, did she somehow sight-read something that's meant to be scanned by a high frequency laser?">><br>
<br>
"@@.npc_manager;As to the outfit well... we had better get you changed out of it. Borrowing it for the night is one thing but stealing is quite something else.@@"<br>
<br>
You follow her as she leads the way to the lost and found and helps you out of collar and armbinder and back to your own things. Though it has dried the stain is quite unseemly and she quickly has you riding a limo home.
<<else>>
You try to tell her everything but you get the feeling she doesn't believe you.<br>
<br>
"@@.npc_manager;What a fanciful story! Like something out of a spy thriller... amusing, but... well, somewhat silly, don't you think?@@" She shakes her head "@@.npc_manager;I do not know why you made that up, or what your plan was in giving me some unknown data crystal — have you forgotten everything about site security from your previous job? No, whatever you were planning, I am not one to fall for it... it is just fortunate for you that it is late, and I have little interest in dealing with you further with you still such a mess.@@"
<</if>>
<<else>>
You explain the accident you had earlier that ruined your clothes — and then how the waitress responsible "helped" you into your current predicament.<br>
<br>
"@@.npc_manager;I see, well, in that case, we had better get you changed. As lovely as you look all helpless and collared, it would be theft to leave wearing the dress, and if you are to wear a collar, I would very much prefer that it was one that I locked in place.@@"<br>
<br>
Your heart flutters slightly at her comment and she leads you back to the lost and found she has you change back into the clothes you came in. Looking at the collar she grabs hold of it behind your neck and pulls, you hear a metallic sound and then it is removed.<br>
<br>
"@@.npc_manager;Just a bit of a sticky latching mechanism.@@" She states as she leads you away. Glancing back you note the mangled remains of what looks like her having ripped the heavy steel hinges in twain.<br>
<br>
"@@.npc_manager;Now, I believe it would be best if the both of us left lest we risk another encounter with <<if $options.fem>>Paige<<else>>Paul<</if>> from accounting.@@" You nod, following after as she <<if $scene.replaceCollar>>replaces your collar before dropping you off with the limo and sending<<else>>drops you off with the limo and sends<</if>> you home.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: stage 3 party - choose punish waitress for spilling on you
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_dungeon.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
You sternly lead the waitress off to the dungeon, where she immediately, and obediently, bends over a spanking bench, flipping up her skirt to display her <<if $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $player.sec_style.submission.sissyomatic != "">><<=setup.getItemName("sissyomatic_belt")>><<else>>high-tech combination chastity belt and butt plug<</if>>.<br>
<br>
"@@.generic_female1;Please, Mistress, punish this slave that she may learn from her mistake and perform better in the future... only...@@"<br>
<br>
Her pert posterior is quite inviting, but you manage to tear your gaze away to check for other options, noting that there is a tidy rack of punishment devices on one wall of the dungeon, featuring flogger, cane and paddle.<br>
<br>
[<<moveTo "event_party_spill_2_punish_2" "Spank her by hand." 1200 "<<set $scene.punish='hand'>>">>]<br>
[<<moveTo "event_party_spill_2_punish_2" "Give her the paddle." 1200 "<<set $scene.punish='paddle'>>">>]<br>
[<<moveTo "event_party_spill_2_punish_2" "Flog her for her failure." 1200 "<<set $scene.punish='flog'>>">>]<br>
[<<moveTo "event_party_spill_2_punish_2" "Cane her for her near-calamity." 1200 "<<set $scene.punish='cane'>>">>]<br>
[<<moveTo "event_party_spill_2_punish_2" "Do not punish her." 180 "<<set $scene.punish='none'>>">>]
</div>/*#
#desc: stage 3 party - punish waitress for spilling on you
#status: FINISHED 0.8.3.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.punish>>
<<case 'hand'>>
<<if setup.getTotalValue("dominance") > 15>>
<<applyExperience 'dominance' 16 'skip' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'dominance' 16 'terrible' $SEEN_STRANGER>>
<</if>>
<<case 'paddle'>>
<<applyExperience 'dominance' 13 'terrible' $SEEN_STRANGER>>
<<case 'flog'>>
<<applyExperience 'dominance' 10 'terrible' $SEEN_STRANGER>>
<<case 'cane'>>
<<applyExperience 'dominance' 7 'terrible' $SEEN_STRANGER>>
<<case 'none'>>
<<if setup.getTotalValue("dominance") > 10 && $player.flags.stage3party.punish_waitress < 2>>
<<set $player.flags.stage3party.punish_waitress=2>>
<</if>>
<<if setup.getTotalValue("dominance") > 15>>
<<applyExperience 'dominance' 18 'skip' $SEEN_STRANGER>>
<<elseif setup.getTotalValue("dominance") > 10>>
<<applyExperience 'dominance' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<</switch>>
<<if $player.flags.stage3party.punish_waitress < 1>>
<<set $player.flags.stage3party.punish_waitress=1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_dungeon.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
<<switch $scene.punish>>
<<case 'hand'>>
You forgo mechanical assistance and opt to handle her by hand,
<<if setup.getTotalValue("dominance") > 15>>
a choice that swiftly proves to be exactly correct as your skilled hands spank, claw, grope, and massage her bottom, mixing pain with pleasure to push her deeper into submission.<br>
<br>
By the time you finished she is in almost a daze, eyes unfocused as she thanks you profusely for taking the time to grace her with your skill.<br>
<br>
You smile in satisfaction, helping her to her feet and slowly easing her back to reality before reminding her of her duties. "@@.generic_female1;Of-of course, Mistress.@@" She replies, dropping into a deep curtsy. "@@.generic_female1;Thank, thank you again for taking the time to correct my error, I feel honoured to have felt your touch.@@"
<<else>>
a choice that is functional, if perhaps not quite optimal. Occasionally you<<if setup.getTotalValue("dominance") > 10>> glance<<else>>, or she glances<</if>> at the various implements on the wall and you wonder if such might be better assistance than attempting to do everything merely with your hands.<br>
<br>
Your choice has been made, however, and showing indecision would be even worse, so you wrap up her spanking with a nice flurry that finishes turning her bottom a rosey pink before you guide her back to her feet.<br>
<br>
She bounces up immediately, almost forgetting to curtsy in her race to lead you out and return to her work. "@@.generic_female1;Thank you for your time, Mistress. I will endeavour to perform my duties with greater skill in the future.@@" Her response feels almost automatic, but you nod in acceptance and file your own learnings away for later.
<</if>>
<br><br>
She holds the door for you and you return to the party, watching as she scampers off to resume her duties<<if setup.getTotalValue("dominance") > 15>>, looking even more motivated than before<</if>>.
<<case 'paddle'>>
You select the classic paddle,
<<if setup.getTotalValue("dominance") > 18>>
the device feeling almost impersonal, an impediment to the optimal deployment of your skills, rather than an aid. Despite this odd disconnect, you still make sure she is taken care of — turning her bottom a lovely shade of red to make sure the lesson sticks.
<<else>>
the rigid device perfect for swiftly turning her bottom a lovely shade of red, each crack of wood on flesh echoing in the small dungeon as she obediently keeps gasping count of each blow.
<</if>>
<br><br>
You step away and help her back to her feet and she immediately curtsies in thanks. "@@.generic_female1;Thank you, Mistress. I will remember this lesson... but I really must resume my duties.@@"<br>
<br>
You nod and motion to the exit. She obediently holds the door for you and then scampers off to resume her duties..
<<case 'flog'>>
The waitress watches as you select the flogger, gasping in pains... and occasional moans of pleasure, as you slash back and forth over her rear.<br>
<br>
<<if setup.getTotalValue("dominance") > 15>>
As skilled as you are, you have a creeping feeling that this is overkill, that such an implement is not just excessive for her crime, but that using it serves to distance her from your skills as you administer a painful, but perhaps not optimally educational, punishment.
<<else>>
You turn her bottom a lovely shade of red with the flogger, the perfectly balanced device exquisite in its ability to make her gasp and moan.
<</if>>
<br><br>
"@@.generic_female1;Th-thank you, Mistress.@@" She gasps after you step away. "@@.generic_female1;I will remember this lesson... but I really must resume my duties.@@"<br>
<br>
You put the flogger back where you found it as she catches her breath and holds the door for you to return to the party.
<<case 'cane'>>
The waitress stares in fear when you select the cane... but she is trained well enough to hold her tongue as you take a few test swings and then get into position to administer her punishment.<br>
<br>
The cane snaps against her rear, her gasp of pain followed by her whispering "@@.generic_female1;One, Mistress. Thank you, Mistress.@@"<br>
<br>
<<if setup.getTotalValue("dominance") > 13>>
You wield the cane with precision and skill, expertly tracing efficient lines across her rear... and yet with her each pained, counting gasp you feel like you could be doing better, like relying on such a painful instrument is wasting your skills.
<<else>>
You use the cane to turn her rear into a cross-hatched web of pain, making sure to get complete coverage as she gasps the count with each increasingly agonising stroke.
<</if>>
<br><br>
You finish and she is panting, so drained that you have to help her back to her feet as she comes down from sub-space and thanks you for the lesson.<br>
<br>
You spend a few more minutes making sure she is recovered before she takes a deep breath and insists on returning to work.<br>
<br>
"@@.generic_female1;Thank you for your time, Mistress. I will be certain to remember this lesson... but I really must resume my duties.@@"<br>
<br>
She curtsies in thanks and then holds the door for you to leave the dungeon and return to the party.
<<case 'none'>>
You change your mind, and decline to punish the waitress.<br>
<br>
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
Your skill at dominance is such that the mere spectre of disappointment is more than enough to induce her full obedience. She bows low in supplication before walking over to hold the door for you.
<<else>>
Even without so much as raising your hand, you seem to have induced a urge for obedience in your temporary charge. She looks relieved, and yet also somehow disappointed, curtsying to you obediently before holding the door for you.
<</if>>
<br><br>
"@@.generic_female1;I am sorry to have wasted your time, Mistress. Please enjoy the rest of the party, I will endeavour to learn from your mercy just as much as I would have learned from your wrath.@@"
<<else>>
The waitress seems confused, more than anything else at your action. It would seem that your current skill at dominance yet requires being backed up with corporeal power, as well.<br>
<br>
"@@.generic_female1;I am sorry to have wasted your time, Mistress. And you for mine. I really need to get back to serving, lest I draw the ire of a less... forgiving supervisor.@@"<br>
<br>
She holds the door for you to leave the dungeon.
<</if>>
<<default>>
ERROR: unexpected scene.punish
<</switch>>
<br><br>
[<<moveTo "event_party_root" "Return to the party." 180>>]
</div>/*#
#desc: stage 3 party peek into dungeon while bound
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.peekedDungeon = true>>
<<set $player.flags.data_crystal.peek = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_dungeon.png">>
<div id="invframe" class="scrolltext">
You walk over to the ajar door on the side of the room. You think you see what looks like some dungeon equipment against one wall but unfortunately it is too dim to see anything else and you can't hear anything over the general din of the party.<br>
<br>
With your arms restrained, you're a bit limited but maybe you could carefully nudge the door open a bit further?<br>
<br>
[<<moveTo "event_party_spill_dungeon_2" "Try to peek inside." 60 "<<set $scene.peek=true>>">>]<br>
[<<moveTo "event_party_spill_dungeon_2" "Turn around and return to the party." 60 "<<set $scene.peek=false>>">>]
</div>/*#
#desc: stage 3 party stumble into dungeon while bound
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_dungeon.png">>
<div id="invframe" class="scrolltext">
<<if $scene.peek>>
You try to lean against the door, but it is far lighter than you expected and it swings inward as you almost stumble inside.<br>
<br>
You find yourself looking on a bondage sex scene already in progress — a woman naked save for a collar. Restrained in a pair of stocks, one <<man>> is fucking her from behind while another <<man>> stands nearby. All three people look up as you stumble in and you freeze.<br>
<br>
The <<men>> looked surprised but the <<if $options.fem>>woman in the stock's<<else>>woman's<</if>> expression goes from shock to frantic panic as her gaze scans over your outfit. You can tell she wants to say something but the large drain gag she is wearing renders everything unintelligible. Still, from the way she stares at your outfit, and the fact that her build is almost identical to your own, you have a feeling you know exactly where your ensemble came from.<br>
<br>
Before you can say anything however, the <<man>> not currently fucking her turns to you with a snarl. "@@.generic_male1;Hey, this is a private engagement! We collared this dumb slut fair and square. Now get out of here, I don't want to waste my evening tracking down your owner to administer punishment.@@"<br>
<br>
Stepping towards you, <<he>> starts closing the door, in so doing, gently pushing you out of the room. Without your arms to help with balance, your stumble sends you out and the door closes behind you, locking you out.
<<else>>
You can't manage to see anything else and a minute later the door closes shut, locking with a click and hiding its mysteries away.
<</if>>
<br><br>
[<<moveTo "event_party_root" "Back to the party." 60>>]
</div>/*#
#desc: stage 3 party talk to "waitress"
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.waitress.push('talk')>>
<<set $npc_party_waitress.stage = 1>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You approach a tall waitress standing unsteadily off to one side of the party, there's something oddly familiar about them.<br>
<br>
As you get closer, she looks in your direction, her gaze narrowing and a surprisingly deep voice acknowledging you. "@@.npc_party_waitress;Oh... it's you.@@"<br>
<br>
You blink in surprise, despite the feminine mien, you would swear it was the same voice as the drunk guy that attempted to <<if $fetish.grope && !$options.fem>>grope<<else>>get with<</if>> you your first time attending the party.<br>
<br>
The waitress sighs. "@@.npc_party_waitress;Yeah, it's me — my Uncle is on the board so no way was I going to get fired but... well, your manager was quite insistent I endure some sort of punishment thus... this.@@" "She" gestures towards her body. "@@.npc_party_waitress;Apparently attending parties dressed like this is meant to teach me a lesson. So far I've learned that makeup takes WAY too long to have applied and high heels are torture implements.@@" She glances at your far steeper heels. "@@.npc_party_waitress;How the hell do you manage those? I was shown "mercy," apparently, with these four centimetre ones and they're still almost impossible!@@"<br>
<br>
You shrug, explaining that it's just a matter of practice.<br>
<br>
"@@.npc_party_waitress;Well here's hoping things don't last long enough for that!@@"<br>
<br>
[<<moveTo "event_party_waitress_1_encourage" "Offer her encouragement." 60>>]<br>
[<<moveTo "event_party_root" "Go do something else." 60>>]
</div>/*#
#desc: stage 3 party encourage "waitress"
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You offer the waitress encouragement, saying maybe "she'd" be better off embracing things and trying to enjoy her situation.<br>
<br>
"@@.npc_party_waitress;Very funny, no, I think I'll just hope this humiliation is over with soon. No offense but... I like being a guy. Speaking of which... I need to go find a restroom. I don't understand why I have to wear panties under all of this but they are WAY too tight...@@"<br>
<br>
[<<moveTo "event_party_root" "Go do something else." 60>>]
</div>/*#
#desc: stage 3 party waitress 2nd time
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.waitress.push('talk')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You once again approach the "waitress." Recognising you "she" looks at you with less anger than the last time. "@@.npc_party_waitress;Hey, so apparently I haven't been considered to have "learned my lesson" so... once again I'm here all dressed for humiliation.@@"<br>
<br>
[<<moveTo "event_party_waitress_2_encourage" "Offer her encouragement." 60>>]<br>
[<<moveTo "event_party_waitress_2_sympathy" "Offer your sympathy." 60>>]
</div>/*#
#desc: stage 3 party waitress 2nd time encourage
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_party_waitress.stage = 2>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You offer your encouragement, suggesting that the time will go faster if "she" has fun exploring femininity. "She" frowns but, perhaps surprisingly, does not object.<br>
<br>
"@@.npc_party_waitress;Thanks for the thought... I mean I still just want this whole ordeal to be over, of course, but it's nice to hear you say something like that, especially given how we met. Trust me I really regret getting so drunk as to do that but, well... you have to admit you're a total dish.@@"<br>
<br>
It's your turn to blush at the compliment. The "waitress" sighs. "@@.npc_party_waitress;Sorry to cut things short, but this week I have to do some actual waitressing so... I better get back to that if I don't want to get in more trouble.@@"<br>
<br>
You note she's walking a bit more gracefully in her heels as she moves away, and also that she cuts quite an attractive figure from behind with her long legs.<br>
<br>
[<<moveTo "event_party_root" "Go do something else." 60>>]
</div>/*#
#desc: stage 3 party waitress 2nd time sympathy
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You express your sympathy for her situation but state that the best way to get through is to not worry about things and just push forward.<br>
<br>
"@@.npc_party_waitress;I guess you're right, well I better get back to work — they've got me actually delivering drinks this week, as if walking in heels wasn't hard enough when you aren't carrying something!@@"<br>
<br>
She walks off, looking a bit more graceful and balanced than the last time you saw her trying to move in heels.<br>
<br>
[<<moveTo "event_party_root" "Go do something else." 60>>]
</div>/*#
#desc: stage 3 party waitress 3rd time
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.waitress.push('talk')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You approach the "waitress" once again. She greets you with a smile that soon fades into a look of frustration and you ask what's going on.<br>
<br>
"@@.npc_party_waitress;Well, apparently this will be the last party that I am required to attend dressed like this. My punishment is finally over!@@"<br>
<br>
You wait for a moment and then encourage her to continue with a gentle "@@.pc;But?@@"<br>
<br>
"@@.npc_party_waitress;Well, it's like... I SHOULD be happy to get back to normal but for some reason I'm not. It's all so confusing, like... I was bored this weekend and, remembering how I almost tripped delivering a drink last week? Well, I spent some time in my apartment practicing in heels... and then that somehow turned into dressing up in a skirt and blouse for the rest of the day...@@"<br>
<br>
[<<moveTo "event_party_waitress_3_encourage" "Offer her encouragement." 60>>]<br>
[<<moveTo "event_party_waitress_3_discourage" "Say she was probably just tired." 60>>]
</div>/*#
#desc: stage 3 party waitress 3rd time encourage
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You offer the confused waitress encouragement, explaining that her urges are totally fine and that if she wants to explore things she can.<br>
<br>
Her voice drops, practically a whisper and sounding significantly more feminine than her usual tone. "@@.npc_party_waitress;Are you sure? I mean, I've never thought about this sort of thing before and I don't, I mean I'm a guy, right? I've always been a guy...@@"<br>
<br>
You sense the uncertainty in her voice and weigh your response carefully.<br>
<br>
[<<moveTo "event_party_waitress_3_encourage_2" 'Say that she can just "be a girl" if she wants.' 60>>]<br>
[<<moveTo "event_party_waitress_3_discourage_2" "Say of course she's a guy, this was all just forced on her, after all." 60>>]
</div>/*#
#desc: stage 3 party waitress 3rd time discourage
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You shrug at her revelation, saying she probably shouldn't read too much into it.<br>
<br>
"@@.npc_party_waitress;Yeah, you're probably right,@@" she replies with an awkward laugh, "@@.npc_party_waitress;I mean it's not like I like being a girl, right? No offense, you and I are just different, y'know? And that's fine.@@"<br>
<br>
Letting out another awkward laugh "she" scurries away before you can reply... though you do notice the product of her practice and how nimbly she moves in heels.<br>
<br>
[<<moveTo "event_party_root" "Go do something else." 60>>]
</div>/*#
#desc: stage 3 party waitress 3rd time encourage followup
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_party_waitress.stage = 4>>
<<set $npc_party_waitress.call = "Ms.">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You smile and explain that it's totally fine to want to be a girl, and that she can if she wants...<br>
<br>
It is like a weight was lifted from her shoulders as she suddenly smiles.<br>
<br>
"@@.npc_party_waitress;You know... you're right. I guess all this stress has been me not wanting to admit that but... yeah, I can be a girl and while I'm maybe not 100% sure I want to be one all the time... I kind of want to at least try...@@"<br>
<br>
You wish her luck as a nearby guest calls for a drink and the tall waitress is forced to scamper off to serve.<br>
<br>
As you watch her depart, you wonder if you just never noticed or if her practicing in heels has made her previously cute butt look even better...<br>
<br>
[<<moveTo "event_party_root" "Go do something else." 60>>]
</div>/*#
#desc: stage 3 party waitress 3rd time discourage followup
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_party_waitress.stage = 3>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
"@@.npc_party_waitress;Force, right, yeah.@@" She replies, seeming a bit more sure with each word. Standing a bit taller she takes a deep breath, voice returning to its normal deeper pitch. "@@.npc_party_waitress;Thanks again for your help, given how we first met you've been remarkably friendly and, well... I really appreciate it. This whole punishment well... it's been a bit of a trial, which I suppose is the point.@@"<br>
<br>
Biting his lip he waits for a moment then extends his arms to offer a hug, waiting for you to step into it.<br>
<br>
[<<moveTo "event_party_waitress_3_discourage_3" "Accept the hug." 60 "<<set $scene.hug=true>>">>]<br>
[<<moveTo "event_party_waitress_3_discourage_3" "Decline." 60 "<<set $scene.hug=false>>">>]
</div>/*#
#desc: stage 3 party waitress 3rd time discourage final
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
<<if $scene.hug>>
You take half a step forward and return the hug as they lean down and squeeze you tight. "@@.npc_party_waitress;Thanks again, having someone to talk to and give me sympathy has been really helpful my usual friends well... they just thought this whole thing was hilarious which... maybe I might have thought the same before, but I guess I learned my lesson because now? Not so much.@@"<br>
<br>
Letting go he smiles at you once again before turning away.
<<else>>
You remain motionless and he awkwardly holds his arms out for a few hopeful seconds before dropping them to his side.<br>
<br>
"@@.npc_party_waitress;Yeah, I guess that's fair. Sorry just with this and the rest well... I haven't been able to blow off steam like usual, so just a bit pent up. That's not your problem though, but thanks again for your help and I'll see you around if I ever decide to risk showing up to this party again!@@"
<</if>>
<br><br>
You get a weird feeling of finality as you watch them stride away to resume their work.<br>
<br>
[<<moveTo "event_party_root" "Go do something else." 60>>]
</div>/*#
#desc: stage 3 party waitress repeatable
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_party_waitress.stage = 5>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You spend some time catching up with your waitress friend. She thanks you yet again for your encouragement, gushing enthusiastically about how much she's been enjoying things since she stopped wasting her time pretending to be a man.<br>
<br>
You wish her continued fortune in her journey before she perkily rushes off to perform her waitressing duties once again — seeming even more enthused about her job now that she's a volunteer rather than her being on punishment detail.<br>
<br>
[<<moveTo "event_party_root" "Go do something else." 60>>]
</div>/*#
#desc: stage 4 party waitress 5th time: chastity + plug intro
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.waitress.talk = true>>
<<set $scene.first = !State.hasPlayed("event_party_waitress_5_2")>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You spot your waitress friend just as she stumbles slightly, barely catching herself on a table. You watch as she braces and tries to catch her breath, her face flushed.<br>
<br>
<<if !$scene.first>>
<<printThought "Looks like she's still struggling with the chastity and plug combo...">><br>
<br>
<</if>>
[<<moveTo "event_party_waitress_5_2" "Go see what's up." 300>>]<br>
[<<moveTo "event_party_root" "She seems busy, continue on your way." 60>>]
</div>/*#
#desc: stage 3 party waitress 5th time: explains chastity + plug struggles
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_waitress">>
<div id="invframe" class="scrolltext">
You ask your waitress friend if she's okay and she bites her lip and nods.
<<if $scene.first>>
"@@.npc_party_waitress;Yeah... it's just.@@" She gasps softly. "@@.npc_party_waitress;I was getting used to working with a butt-plug... I mean, all the other girls wear one, right? And it is useful for silent coordination... but I need relief!@@"<br>
<br>
She lifts her skirt to show off a gleaming steel chastity cage. "@@.npc_party_waitress;It used to be when I'd get too excited I'd just slip off to an empty room for a few minutes for some relief... but a manager caught me, and even though I <<if $options.fem>>ate them out<<else>>blew them<</if>>... they still reported me, and now I'm locked in this infernal device! I haven't cum since I was locked up, and now every buzz in my butt is more torturous denial. You saw me stumble... it's only a matter of time before I get in trouble again... or go mad, and asking to be unlocked just got me laughed out of the room, apparently <<if $fetish.sissy>>sissies<<else>>good girls<</if>> are supposed to be locked...@@"<br>
<br>
You're a bit surprised as you ask if they've ever had <<if $fetish.sissy>>a sissygasm<<else>>an analgasm<</if>>?<br>
<br>
"@@.npc_party_waitress;<<if $fetish.sissy>>Sissygasm<<else>>Analgasm<</if>>? They ask in a mix of confusion and hope. No... I mean, being plugged, and feeling it buzz inside of me feels good... but the only way I've ever gotten off is now locked up tight.@@"
<<else>>
"@@.npc_party_waitress;It's like I told you before... locked in chastity and with this infernal plug constantly buzzing whenever an order comes in... I'm going mad from denial, I tell you, mad!@@"
<</if>>
<br><br>
[<<moveTo "event_party_waitress_5_3" "Offer to help." 300 "<<set $scene.help=true>>">>]<br>
[<<moveTo "event_party_waitress_5_3" "That's rough, ma'am." 180 "<<set $scene.help=false>>">>]
</div>/*#
#desc: stage 3 party waitress 5th time: teach analgasm
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_party_waitress.stage = 6>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png" "party_waitress">>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
Somewhat shocked that your friend has never enjoyed a proper <<if $fetish.sissy>>a sissygasm<<else>>an analgasm<</if>>, you lead them off to a side room for a bit of help.<br>
<br>
You guide them back onto a chair and lift their skirt out of the way to remove their quite sizable plug and reveal their beautiful, smooth <<if $fetish.sissy>>sissy <</if>>hole.<br>
<br>
They're already breathing heavily as you congratulate them on such a sizable plug, and then you lean in and start to kiss. Pent-up arousal flares strong as you nibble and occasionally flick out your tongue, pushing them right to the edge before taking them by the hand and guiding two fingers into the quivering, ready hole.<br>
<br>
"@@.pc;Establish a rhythm,@@" you explain your hand resting over theirs as their fingers work in and out. "@@.pc;Now angle your fingers towards your belly button, you're looking for a something that feels soft and smooth.@@"<br>
<br>
The waitress gasps and you know they've found it, "@@.pc;good, now gently press that little slut button until you—@@" You do not get further opportunity to advise as they tighten up and start spurting, a full on "hands free" <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>> causing them to shudder in pleasure<<if $fetish.cum>> as they leak through their cage<</if>>.<br>
<br>
"@@.npc_party_waitress;Oh Goddess!@@" They moan.<br>
<br>
<<if $fetish.cum>>
[<<moveTo "event_party_waitress_5_4" "Sharing is caring." 180 "<<set $scene.share=true>>">>]<br>
[<<moveTo "event_party_waitress_5_4" "Gulp!" 120 "<<set $scene.share=false>>">>]
<<else>>
[<<moveTo "event_party_root" "Let them get back to work." 60>>]<br>
<</if>>
<<else>>
You express your condolences for your friend's struggles, and wish them luck in managing to overcome <<printThought "or is that cum over?">> things.<br>
<br>
They're looking a little more calm now as they straighten only to gasp and explain that a drink order just come in. They hurry off, skirts bouncing behind as they walk a little unsteady in their regulation-steep heels.<br>
<br>
[<<moveTo "event_party_root" "Return to the party." 60>>]
<</if>>
</div>/*#
#desc: stage 3 party waitress 5th time: eat cum
#status: RELEASED 0.8.8.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.share>>
<<applyExperience 'cum' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'cum' 13 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png" "party_waitress">>
<div id="invframe" class="scrolltext">
<<if $scene.share>>
You put a hand in front of their cage to catch their spurting joy... and then bring it to their face. Eyes rolled back in pleasure they are on autopilot as they start licking, finishing cleaning it all up before they even realise what they've done as they blush a deep crimson.<br>
<br>
"@@.npc_party_waitress;Ohmygod I can't believe I did that, I-I-... taste good?@@"<br>
<br>
You grin, informing them that good <<if $fetish.sissy>>sissies<<else>>girls<</if>> always clean up after themselves.<br>
<br>
"@@.npc_party_waitress;Wow, I guess... yeah...@@" They reply, still licking their lips.
<<else>>
You cheekily lean forward so the waitress spurts into your mouth, waiting until their trembling, spurting orgasm fades before leaning in closer to lick their cage clean with a grin and a wink.<<if $fetish.cum>> You eagerly slurp up their cum, irresistible cum.<</if>>
<</if>>
<br><br>
"@@.npc_party_waitress;Th-thanks...@@" They whisper as they start to catch their breath.<br>
<br>
You curtsy and hand them back their plug, which they eagerly shove back where it belongs. "@@.npc_party_waitress;Wow... that feels even better, now! It's like I've unlocked a whole new avenue of pleasure, as well as relief!@@"<br>
<br>
Bright and full of energy they bounce to their feet, "@@.npc_party_waitress;and, like... before I'd be a bit tired after cumming, that <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>>, though... I'm mostly satisfied, but I'm more energised than drained! Mmmm,@@" they add, eye-lids fluttering as you hear their plug buzz. "@@.npc_party_waitress;Feels like someone needs a drink! I need to head back to work but, again, thanks! You really are the best!@@"<br>
<br>
They prance off with newfound confidence as you smile and get ready to return to the party.<br>
<br>
[<<moveTo "event_party_root" "Go do something else." 60>>]
</div>/*#
#desc: stage 3 party waitress option
#status: RELEASED 0.9.4.0
#ignore_spell: shiftily,abend
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.spy = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You're standing around waiting for someone to order another drink when a manager you don't recognise sidles up to you.<br>
<br>
"@@.generic_male1;Guten Abend Fraulein, do you make love to strangers?@@" They ask, glancing shiftily around as they await a response.<br>
<br>
<<printThought "This seems weird... even for this company... and the way <<he>> spoke is weird, I'm not even sure if it's actually a proposition?.">><br>
<br>
You consider how to respond.<br>
<br>
[<<moveTo "event_party_maid_spy_2" "Of course!" 180 "<<set $scene.spy=false>>">>]<br>
[<<moveTo "event_party_maid_spy_2" "Certainly not!" 180 "<<set $scene.spy=true>>">>]
</div>/*#
#desc: fail waitress spy event
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImageGeneric("party_maid")>>
<div id="invframe" class="scrolltext">
It takes a few minutes, but you manage to catch up to your fellow waitress and ask what was going on with the <<man>> and <<his>> cryptic question.<br>
<br>
"@@.generic_female2;Oh, that?@@" She replies with a smile. "@@.generic_female2;It's some sort of weird thing some of the managers participate in. Cryptic code phrases that either don't make sense, or are a bit non sequitor. Like... imagine asking a waitress if she puts out... like, that's literally one of our jobs! I've been pulled aside and fucked like three times tonight<<if $fetish.cum>>... and that doesn't count how much cum I've swallowed<</if>>! Anyway, the correct response was, apparently "Certainly Not"... then I got sent off to pass a message to someone else... and they sent me off again... I don't know, none of it makes sense but, well, ours is not to understand, merely to serve. At the very least this silliness means I'm not spending the whole night gagged. I don't mind being stuffed in the other two, but my jaw always hurts after awhile, and it means I don't get to suck as much cock.@@"<br>
<br>
Your question answered the waitress walks off on her mysterious "mission." <br>
<br>
<<printThought "Huh, weird... maybe I can give it a shot some other night?">><br>
<br>
[<<moveTo "event_party_work_waitress_root" "Resume normal wait(ress)-ing!" 300>>]
</div>/*#
#desc: start spy event
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
<<if $scene.spy>>
"@@.pc;Certainly not!@@" You reply... surprisingly the <<man>> reacts with excitement.<br>
<br>
"@@.generic_male1;Ah, excellent, you're part of the game... truly, sometimes finding the right waitress is the most frustrating part. You're all interchangeable anyway, I don't see why they can't brief all of you on things...@@"<br>
<br>
You ask if <<man>> has something for you, making a vague gesture towards your tray to remind <<him>> that you do have other duties.<br>
<br>
"@@.generic_male1;Right, yes, let's see... find <<=setup.getNpcName("generic_male2","custom", "<<if $options.fem>>Ms<<else>>Mr<</if>>. Patel")>> and tell <<him>> "The tea in Nepal is very hot." Yes...@@"<br>
<br>
Things are rapidly becoming as clear as mud but the <<man>> seems to see this as sufficient instructions and is already striding away.<br>
<br>
<<printThought "Time to find <<=setup.getNpcName('generic_male2','custom', '<<if $options.fem>>Ms<<else>>Mr<</if>>. Patel')>>, I guess... I think I remember them from a meeting once... but now to search them out...">><br>
<br>
[<<moveTo "event_party_maid_spy_3" 'Go search for <<=setup.getNpcName("generic_male2","custom", "<<if $options.fem>>Ms<<else>>Mr<</if>>. Patel")>>.' 180>>]<br>
[<<moveTo "event_party_maid_spy_abort" "Give up on... whatever this is." 180>>]
<<else>>
"@@.pc;Of course!@@" You reply enthusiastically.<br>
<br>
In perhaps the biggest of surprises the <<man>> actually looks disappointed, snorting and stalking off towards another waitress. You can't hear her response but after a few moments she runs off to speak with another manager, the first <<man>> looking pleased.<br>
<br>
<<printThought "What in the heck?">><br>
<br>
[<<moveTo "event_party_maid_spy_fail" "Find that other waitress and ask what the heck is going on?" 300>>]
<</if>>
</div>/*#
#desc: abort spy event
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
You decide that whatever weirdness is going on is not worth your time and resume your normal waitressing.<br>
<br>
[<<moveTo "event_party_work_waitress_root" "Resume normal wait(ress)-ing!" 300>>]
</div>/*#
#desc: spy event find first manager
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImageGeneric("generic_manager_male_2")>>
<div id="invframe" class="scrolltext">
It takes you a few minutes, and you're interrupted serving several drink orders, but you manage to locate <<=setup.getNpcName("generic_male2","custom", "<<if $options.fem>>Ms<<else>>Mr<</if>>. Patel")>>.<br>
<br>
[<<moveTo "event_party_maid_spy_4" "The tea in Nepal is very hot." 180 "<<set $scene.spy=true>>">>]<br>
[<<moveTo "event_party_maid_spy_4" "The coffee in Burma is warm." 180 "<<set $scene.spy=false>>">>]
</div>/*#
#desc: spy event, first manager
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImageGeneric("generic_manager_male_2")>>
<div id="invframe" class="scrolltext">
<<if $scene.spy>>
"@@.pc;The tea in Nepal is very hot.@@" You recite.<br>
<br>
<<=setup.getNpcName("generic_male2","custom", "<<if $options.fem>>Ms<<else>>Mr<</if>>. Patel")>> nods seriously before carefully replying "@@.generic_male2;But the coffee in Peru is much hotter.@@"<br>
<br>
From the way <<=setup.getNpcName("generic_male2","custom", "<<if $options.fem>>Ms<<else>>Mr<</if>>. Patel")>> acts you'd think the two of you had just exchanged words of great import... instead of near nonsense. "@@.generic_male2;Find <<=setup.getNpcName("npc_development","formal")>> and tell her to "Beware the green monkey."@@" <<=setup.getNpcName("generic_male2","custom", "<<if $options.fem>>Ms<<else>>Mr<</if>>. Patel")>> instructs.<br>
<br>
<<printThought "Someone I know a bit better, at least... though more of the same nonsense...">><br>
<br>
[<<moveTo "event_party_maid_spy_5" 'Track down <<=setup.getNpcName("npc_development","formal")>>.' 180>>]<br>
[<<moveTo "event_party_maid_spy_abort" "Give up on... whatever this is." 180>>]
<<else>>
"@@.pc;The coffee in Burma is warm.@@" You state. <<=setup.getNpcName("generic_male2","custom", "<<if $options.fem>>Ms<<else>>Mr<</if>>. Tang")>> looks at you for several seconds, squinting slightly in puzzlement.<br>
<br>
"@@.generic_male2;No... I think you have the wrong person...@@" <<He>> finally states before turning away.<br>
<br>
<<printThought "Damn... dead end, guess I really botched this up for the evening.">><br>
<br>
[<<moveTo "event_party_work_waitress_root" "Resume normal wait(ress)-ing!" 300>>]
<</if>>
</div>/*#
#desc: spy event, find 2nd manager, npc_development
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You locate <<=setup.getNpcName("npc_development","formal")>> in a spirited discussion with several other managers about the importance of refresher training.<br>
<br>
"@@.npc_development;Just because an employee was taught something during their orientation does not mean they remember it forever. Unused tools will fall into disrepair, and then, on the occasion that something does come up mistakes are made and who gets blamed? The employee! But it is truly the fault of the manager, and, in any case, the punishment will not reverse the damage done to the company.@@"<br>
<br>
There is a tepid response to her thesis... but it does open a gap in the conversation for you to interject.<br>
<br>
[<<moveTo "event_party_maid_spy_6" "Disregard the red ape." 180 "<<set $scene.spy=false>>">>]<br>
[<<moveTo "event_party_maid_spy_6" "Beware the green monkey." 180 "<<set $scene.spy=true>>">>]
</div>/*#
#desc: spy event, 2nd manager, npc_development
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.spy>>
"@@.pc;Beware the green monkey.@@" You recite.<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> looks at you with a slightly raised eyebrow. "@@.npc_development;Huh, I wouldn't have thought would be participating in this... no matter "He barks at midnight." And, let's see... yes, ask <<=setup.getNpcName("generic_male2","custom", "<<if $options.fem>>Ms<<else>>Mr<</if>>. Tang")>> "Who knocks at the guarded gate?"@@"<br>
<br>
[<<moveTo "event_party_maid_spy_7" 'Keep at this!' 3600>>]<br>
[<<moveTo "event_party_maid_spy_abort" "This is getting silly, give up on... whatever this is." 180>>]
<<else>>
"@@.pc;Disregard the red ape.@@" You recite.<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> looks at you with that classic teacher's expression of mild disappointment. "@@.npc_development;I am afraid that is... not correct, my dear. Perhaps some other night...@@"<br>
<br>
<<printThought "Damn.">><br>
<br>
<<=setup.getNpcName("npc_development","formal")>> turns back to her conversation and you wander off.<br>
<br>
[<<moveTo "event_party_work_waitress_root" "Resume normal wait(ress)-ing!" 300>>]
<</if>>
</div>/*#
#desc: spy event, spin
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
"Who knocks at the guarded gate?" turns out to be responded to with "One who has eaten the fruit and tasted its mysteries." After that it's "Then the willows must scuttle carefully." sets a new record with the response "Does Saturn have rings?" but there are half a dozen more as you rifle through various managers you barely recognise before getting almost circling back to the start with a terrible pick-up line "Does the carpet match the drapes?" ... and you first non-manager target: <<=setup.getNpcName('npc_poker_intro_slave','formal')>>.<br>
<br>
<<printThought "Huh... I wonder if she's standing in so that <<=setup.getNpcName('npc_pokerman','formal')>> can play poker without distractions?">><br>
<br>
You're feeling like you're on a wild goose-chase, but fortunately <<=setup.getNpcName('npc_poker_intro_slave','formal')>> is easy to spot and you make your way swiftly over to the classy submissive.<br>
<br>
[<<moveTo "event_party_maid_spy_8" "Does the carpet match the drapes?" 180 "<<set $scene.spy=true>>">>]<br>
[<<moveTo "event_party_maid_spy_8" "Does the love-seat match the davenport?" 180 "<<set $scene.spy=false>>">>]
</div>/*#
#desc: spy event, find final, npc_poker_intro_slave
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImage("npc_poker_intro_slave")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_poker_intro_slave','formal')>> and, after exchanging friendly greetings, you recite
<<if $scene.spy>>
"@@.pc;Does the carpet match the drapes?@@" You ask and <<=setup.getNpcName('npc_poker_intro_slave','formal')>> freezes for a moment.<br>
<br>
She lets out a slow sigh as she shakes her head. "@@.npc_poker_intro_slave;I would like to apologise for this in advance... I do not make the rules for this thing, but a script is a script.@@"<br>
<br>
Before you can figure out what she means she follows up with a mock-incensed "@@.npc_poker_intro_slave;Why I never... !@@" as she slaps you across the face.<br>
<br>
You blink in surprise, attracting attention from a few other party-goers for a several moments before they return to what they were doing.<br>
<br>
"@@.npc_poker_intro_slave;As I said, I am sorry,@@" <<=setup.getNpcName('npc_poker_intro_slave','formal')>> states as she reaches out to caress your stinging face. "@@.npc_poker_intro_slave;Though, to actually answer the question... yes, they do, and also the upholstery. Other than my eyebrows and eyelashes I am completely hairless. <<=setup.getNpcName('npc_pokerman','formal')>> has a sensitivity, you see, so I had it all removed. At first it felt a little strange... and sometimes cold, but now? Oh, I just love how smooth I feel, especially when <<=setup.getNpcName('npc_pokerman','formal')>> runs <<his>> hands over me...@@"<br>
<br>
<<=setup.getNpcName('npc_poker_intro_slave','formal')>> seems momentarily lost in thought before re-addressing you. "@@.npc_poker_intro_slave;Sorry, I almost forgot why you approached me. Tee time is nine forty-seven, sharp. Tell... whoever sent you that any tardiness will be met with swift and severe punishment... <<=setup.getNpcName('npc_boss','formal')>>, and the last person who delayed one of <<his npc_boss>> foursomes, well... it started with seeing how many golf-balls would fit in their ass... and by the time <<=setup.getNpcName('npc_work_doctor','formal')>> was finished with them the poor thing's answer was "not enough."... well, it would have been, if anyone was willing to remove their gag...@@" <<=setup.getNpcName('npc_poker_intro_slave','formal')>> shudders slightly.<br>
<br>
"@@.npc_poker_intro_slave;As I said, run along and... I suppose congratulations to whoever sent you out...@@"<br>
<br>
[<<moveTo "event_party_maid_spy_9" "Report back?" 300>>]
<<else>>
"@@.pc;Does the love-seat match the davenport?@@"<br>
<br>
She looks at you in confusion and then shakes her head. "@@.npc_poker_intro_slave;I am sorry but... I fear you have made a mistake. Better luck next time, my dear.... but, since you are here. I would quite appreciate another champagne?@@"<br>
<br>
You have the feeling that you just tripped a couple meters from the finish line, but such will have to wait. You have other duties to get to, and you quickly fetch <<=setup.getNpcName('npc_poker_intro_slave','formal')>> her drink before diving in to distracting yourself with "normal" waitressing for the remainder of the night.<br>
<br>
<<set _midnight = setup.setNextDate($now, 0, 23, 30)>>
<<set _timeToMidnight = setup.secondsToDate($now,_midnight)>>
[<<moveTo "event_party_work_waitress_end" 'Finish off the night.' _timeToMidnight>>]
<</if>>
</div>/*#
#desc: spy event, report back
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_work_party_spy'
0
'theme_party_maid_spy_1'
false
>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImage("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You report back to the furtive <<man>> who had started you off on this weird wild-goose chase and <<he>> grins. "@@.generic_male1;Nine forty-seven... perfect, yes... this is just the break I need...@@" The <<man>> says to <<him>>self, all but cackling as <<he>> mentally schemes, your presence all but ignored.<br>
<br>
You someone calls for a waitress and you wander off, still a bit confused as to what all you just did.<br>
<br>
<<set _midnight = setup.setNextDate($now, 0, 23, 30)>>
<<set _timeToMidnight = setup.secondsToDate($now,_midnight)>>
[<<moveTo "event_party_work_waitress_end" 'Finish off the night.' _timeToMidnight>>]
</div>/*#
#desc: talk to manager about party spy
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.fromParty>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fromParty>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> what was the point of you trading cryptic phrases back and forth during the after-work party.<br>
<br>
"@@.npc_manager;Spending time as a waitress, were we?@@" <<=setup.getNpcName("npc_manager","formal")>> asks with a raised eyebrow. "@@.npc_manager;No matter, as I always say, the night is yours to do with as you wish... if that wish is to serve, well... I will count it as another lesson well-learned and further confirmation of just how suited you are to your position.@@"<br>
<br>
You blush slightly at the compliment and <<=setup.getNpcName("npc_manager","formal")>> smiles as she continues. "@@.npc_manager;As to your question... when <<=setup.getNpcName("npc_boss","formal")>> first began hosting <<his npc_boss>> weekly parties they became hotbeds of political intrigue... to the point that it was becoming tiresome and all but defeating the purpose of relaxing and getting in some cross-department socialising. As a solution <<he npc_boss>> implemented that little game you played, a silly parody out of a bad spy novel... but enough to keep some of the more ambitious and obnoxious managers occupied, with the carrot of being allowed to join <<=setup.getNpcName("npc_boss","formal")>> in <<his npc_boss>> weekly round of golf.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grins wider. "@@.npc_manager;I hear there are some... interesting wagers placed on that game, and some fraught punishments for the losers... but it seems to have done the trick of making the parties a bit less cutthroat... and provide an outlet to those corporate climbers who think that just the opportunity to spend time with the big boss is going to be some sort of life-changing event.@@"<br>
<br>
<<if $scene.fromParty>>
[<<moveTo "room_foyer" "Continue home." 60>>]
<<else>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
<</if>>
</div>/*#
#desc: stage 3 party bar
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImageGeneric("party_bartender")>>
<div id="invframe" class="scrolltext">
<<if setup.hasTmpEffect('tipsy')>>
You sit at the bar feeling a bit tipsy, the bartender shakes their head, noting that they have tightened policy as to serving drinks to anyone that is already inebriated.
<<elseif setup.hasTmpEffect('drunk') || setup.hasTmpEffect('wasted')>>
You sit unsteadily at the bar. The bartender shakes their head, noting that policy is not to serve additional drinks to anyone who appears drunk.
<<else>>
You sit at the complimentary bar and the barkeeper acknowledges you with a nod.<br>
<br>
[<<moveTo "room_order_drink" "Order a drink." 0 "<<set $scene.postDrink = 'event_party_bar'>><<set $scene.drinkLoc=$player.location>><<set $scene.drinkBGR = './images/locations/sex_club_bar.png'>><<set $scene.drinkChar = setup.charImageGeneric('party_bartender')>><<set $scene.priceMulti=0>>">>]
<</if>>
<br><br>
<<if !$scene.cumContest && $npc_hucow.stage > 2 && $npc_futa.stage > 2 && $npc_sissy_secretary.stage > 2 && $npc_sexdoll.stage > 2>>
<<if $player.flags.stage3party.cumContest == 6>>
You look around, but it seems like your crushing victory has brought a temporary end to the weekly cum drinking contests.<br>
<<elseif $player.flags.stage3party.cumContest > 0>>
You see some people gathering for the cum-drinking contest down at the far end of the bar.<br>
<br>
<<if $player.flags.stage3party.cumContest == 5>>
<<printThought "I was so close to victory, maybe this is my week?">>
<<elseif $player.flags.stage3party.cumContest == 1>>
<<printThought "I didn't do so hot last time I tried. Have I practiced enough to have a shot?">>
<<else>>
<<printThought "I wonder if I could win it this time?">>
<</if>>
<br><br>
[<<moveTo "event_party_cum_contest_intro" "Check it out." 60>>]
<<else>>
You see some people starting to gather down at the far end of the bar.<br>
<br>
[<<moveTo "event_party_cum_contest_intro" "Check it out." 60>>]
<</if>>
<br>
<</if>>
<<if $scene.discussion.bar.includes('tip')>>
[@@.link_locked;You already tipped the barkeeper.@@]
<<else>>
<<if $player.money.total > 10>>
[<<moveTo "event_party_bar_tip_1" "Tip the barkeeper." 60>>]
<<else>>
[@@.link_locked;You have no money for a tip.@@]
<</if>>
<</if>>
<br><br>
<<if ($npc_boss.flags.party_join || State.hasPlayed("event_landlord_retention_mission_ask_1")) && !(State.hasPlayed("event_landlord_retention_mission_7") || State.hasPlayed("event_guard_retention_mission_5"))>>
You spot <<=setup.getNpcName("npc_retention","formal")>> sitting alone at the end of the bar.<br>
<br>
[<<moveTo "event_party_retention_1" 'Talk to <<=setup.getNpcName("npc_retention","formal")>>.' 60>>]<br><br>
<br>
<</if>>
[<<moveTo "event_party_root" "Go somewhere else." 60>>]
</div>/*#
#desc: stage 3 party bar tip bartender
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits -10>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImageGeneric("party_bartender")>>
<div id="invframe" class="scrolltext">
You place a tip on the bar, the barkeeper pausing for a moment as <<he>> stares at it. "@@.generic_male1;You know this is all complimentary and you don't have to do anything like that, right?@@"<br>
<br>
[<<moveTo "event_party_bar_tip_2" "Insist on it." 60 "<<set $scene.tip=true>>">>]<br>
[<<moveTo "event_party_bar_tip_2" "Take your money back." 60 "<<set $scene.tip=false>>">>]
</div>/*#
#desc: stage 3 party bar tip bartender confirmation
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.tip>>
<<set $scene.discussion.bar.pushUnique('tip')>>
<<else>>
<<addCredits 10>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImageGeneric("party_bartender")>>
<div id="invframe" class="scrolltext">
<<if $scene.tip>>
You insist they accept the tip and they finally scoop up the credits, pausing for a moment at the fact that their latex outfit is so tight as to have no pockets before stuffing them up under the <<if $options.fem>>sleeve<<else>>cuff<</if>> of their gloves where the stretchy material highlights the round coin against their wrist.<br>
<br>
"@@.generic_male1;Thanks, and to help you out — if you ever decided to play in the poker game that runs during most parties heads up — one of the players cheats, her owner uses her remote controlled vibes to signal when <<he npc_pokercheater>> sees an opponent's hand — one pocket card per hole.@@"<br>
<br>
You thank the barkeeper for the heads up and ask why it is allowed to continue.<br>
<br>
The barkeeper shrugs. "@@.generic_male1;You have to understand the money at play is pretty irrelevant to most of those that buy in, those that play knowing it's happening and joining the game as a challenge, and the rest well... there's always a sucker at every table, right?@@"
<<else>>
You blush and pocket your credits and the barkeeper moves on with a smile.
<</if>>
<br><br>
[<<moveTo "event_party_root" "Do something else." 60>>]
</div>/*#
#desc: talk with npc_retention at party
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_retention","formal")>> as <<he npc_retention>> drinks at the bar.<br>
<br>
<<if setup.checkItemInInventory("blackmail_chip")>>
[<<moveTo "event_landlord_retention_mission_give_chip_1" 'Slip <<=setup.getNpcName("npc_retention","formal")>> the chip <<=setup.getNpcName("npc_landlord","first")>> gave you.' 60 "<<set $scene.fromSexclub=false>>">>]<br>
<</if>>
<<if $npc_boss.flags.party_join>>
<<if $npc_boss.flags.blowjobContest.won>>
[@@.link_locked;You have already won the blowjob challenge.@@]<br>
<<else>>
[<<moveTo "event_party_blowjob_start_1" "Ask about competing in the blowjob challenge." 60>>]<br>
<</if>>
<</if>>
[<<moveTo "event_party_root" "Back to the party." 60>>]
</div>/*#
#desc: choice to join npc_boss for party
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<if $scene.wornCollarType == 'ring'>>
<<addItem 'leash_silver'>>
<<wearItem 'leash_silver' true>>
<</if>>
<<if $events.hasOwnProperty('party_spill_event')>>
<<removeEvent 'party_spill_event'>>
<</if>>
<<if $events.hasOwnProperty('work_party_end')>>
<<removeEvent 'work_party_end'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
<<if $scene.wornCollarType == 'collar'>>
Your heart races as you softly reply that you would "@@.pc;Be honoured@@" to be <<his npc_boss>> guest for the party.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> grins. "@@.npc_boss;Such a lovely, obedient assistant... you have done it again, <<=setup.getNpcName("npc_manager","other")>>, if only you could train every employee who came through our doors...@@"<br>
<br>
<<He npc_boss>> smiles, and you find yourself drifting to <<his npc_boss>> side, almost in a trance. <<He npc_boss>> offers <<his npc_boss>> arm and, almost instinctively, you slip your hand into the offered crook of <<his npc_boss>> elbow.
<<elseif $scene.wornCollarType == 'ring'>>
Your heart races as you look towards <<=setup.getNpcName("npc_manager","formal")>> for permission. Her eyebrow rises every-so-slightly before she turns to addresss <<=setup.getNpcName("npc_boss","formal")>> with an artificial smile. "@@.npc_manager;Certainly. Both of us are, of course, always glad to do whatever we can to help the company. And what could be more helpful than coming to the aid of its most important employee in <<his npc_boss>> hour of need?@@"<br>
<br>
<<He npc_boss>> smiles, smoothly producing a silver leash from <<his npc_boss>> pocket and clipping it to your collar. <<He npc_boss>> pulls you away from <<=setup.getNpcName("npc_manager","formal")>> to <<his npc_boss>> side and you instinctively slip your hand into the offered crook of <<his npc_boss>> elbow.
<<else>>
ERROR: unexpected scene.worn collar <<=$scene.wornCollarType>>
<</if>>
<br><br>
"@@.npc_boss;Yes... she will do quite nicely. Now come along, we have many other guests to greet.@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> leads you away and you reflexively glance back to see <<=setup.getNpcName("npc_manager","formal")>> looking after you with an expression of
<<if $npc_manager.affection > $npc_manager.anger>>
concern.
<<else>>
annoyance.
<</if>>
Your heart continues to race as you stay at <<=setup.getNpcName("npc_boss","formal")>> side... wondering what being<<if $npc_boss.fem>> "hers" <<else>> "his" <</if>>for the night will lead to...<br>
<br>
[<<moveTo "event_boss_party_2" "Join the party." 3600>>]
<<else>>
<<if $scene.wornCollarType == 'collar'>>
You take a step closer to <<=setup.getNpcName("npc_manager","formal")>> and manage to stutter a response that you do not think you are prepared for that this evening.
<<elseif $scene.wornCollarType == 'ring'>>
You glance imploringly at <<=setup.getNpcName("npc_manager","formal")>> imploringly as she meets <<=setup.getNpcName("npc_boss","formal")>> gaze with a forced smile. "@@.npc_manager;I must regrettably inform you that I had plans for her this evening.@@"
<<else>>
ERROR: unexpected scene.worn collar <<=$scene.wornCollarType>>
<</if>>
<br><br>
Taking things in stride <<=setup.getNpcName("npc_boss","formal")>> merely grins. "@@.npc_boss;Some other time, perhaps... I shall leave you to it then. Enjoy my party!@@"<br>
<br>
<<He npc_boss>> walks away and you release your breath, heart still pounding.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> waits for <<=setup.getNpcName("npc_boss","formal")>> to be out of earshot before speaking. "@@.npc_manager;Yes, well... I shall leave you to enjoy the party. As always, be careful.@@"
<<if $npc_manager.affection > $npc_manager.anger>>
She gives you a kiss on the cheek and then walks away.
<<else>>
She nods and walks away.
<</if>>
<br><br>
[<<moveTo "event_party_root" "Look around." 120>>]
<</if>>
</div>/*#
#desc: npc_boss leads you through party
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Your heart never stops racing as you walk at <<=ps(setup.getNpcName("npc_boss","formal"))>> side. Save when someone comments on your beauty <<he npc_boss>> all but ignores you; not even introducing you as <<he npc_boss>> moves between groups unless someone specifically asks, merely shaking hands and chatting briefly with one important guest after another as you stand at <<his npc_boss>> side and smile, as much a pretty adornment as the <<if $npc_boss.fem>>expensive necklace and bracelet that she wears<<else>>five figure watch he wears on his opposite hand<</if>>.<br>
<br>
On the occasion that you spot <<=setup.getNpcName("npc_manager","formal")>> she seems to be purposefully looking away, while keeping you in her peripheral vision. The sensation of obedient infatuation that seems to come with proximity to <<=setup.getNpcName("npc_boss","formal")>> only increasing as the night wears on, all of your previous submission seeming to compound on itself. Occasionally you catch yourself looking longingly up at <<if $npc_boss.fem>>her, admiring her gorgeous face, her perfectly sculpted body and, most of all, her piercing blue eyes<<else>>him, admiring his masculine jawline, his perfectly maintained short beard and, most of all, his piercing blue eyes<</if>>.<br>
<br>
<<printThought "This... this is what a <<man npc_boss>> is meant to look like...">> You think to yourself. Even compared to all of the other guests of the party; Directors, members of the board, even an honest-to-god <<if $npc_boss.fem>>princess<<else>>prince<</if>>, their conversations casually discussing transactions in the billions of credits, none of them seem to have the raw presence of <<=setup.getNpcName("npc_boss","formal")>>, <<his npc_boss>> voice causing everyone else to listen, to hang on <<his npc_boss>> every word, all but the most important conversation partner verbally stumbling over themselves to agree with whatever <<he npc_boss>> says.<br>
<br>
Perhaps more than <<his npc_boss>> casual show of "soft power" is the looks the two of you garner.
<<if $npc_boss.fem>>
Managers seem more likely to stare at you than before and the few subordinates that manage to look away from the Goddess at your side glare at you with withering jealousy,
<<else>>
Men seem more likely to stare at you than before and women, those few that manage to look away from the God at your side glare at you with withering jealousy,
<</if>>
a confirmation that you are where all of them wish they could be...<br>
<br>
[<<moveTo "event_boss_party_3" "Continue." 1800>>]
</div>/*#
#desc: npc_boss meet npc_nintendolls at party
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
As you "make the rounds" through important person after important person you come across a familiar face, <<=setup.getNpcName("npc_nintendolls","formal")>> grinning up at you from <<his npc_nintendolls>> seat as you and <<=setup.getNpcName("npc_boss","formal")>> walk past.<br>
<br>
"@@.npc_nintendolls;Ah, <<=setup.getNpcName("npc_boss","formal")>>... and is that the lovely Miss <<=$player.last_name>>? My, my, just how did you peel her away from <<=setup.getNpcName("npc_manager","other")>>?@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles. "@@.npc_boss;She is on loan for the evening, my own assistant being... indisposed, as you well know.@@"<br>
<br>
"@@.npc_nintendolls;Yes, I saw her a few minutes past, she is definitely working to break her high score... still, I may win yet!@@"<br>
<br>
You realise that this must be the "bet" <<=setup.getNpcName("npc_boss","formal")>> mentioned, and you idly wonder the terms.<br>
<br>
[<<moveTo "event_boss_party_4" "Ask what they are talking about." 180 "<<set $scene.interrupt=true>>">>]<br>
[<<moveTo "event_boss_party_4" "Remain silent." 180 "<<set $scene.interrupt=false>>">>]
</div>/*#
#desc: npc_boss meet npc_nintendolls at party - chance to interrupt
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $scene.interrupt>>
Trying to show interest in the conversation you ask "@@.pc;What wager would that be?@@"<br>
<br>
The moment you open your mouth you feel <<=setup.getNpcName("npc_boss","formal")>> stiffen and you know you have made a grave error. <<He npc_boss>> does not even acknowledge your question with a response, instead continuing on with <<his npc_boss>> conversation.<br>
<br>
"@@.npc_boss;You were saying?@@"<br>
<br>
"@@.npc_nintendolls;Ah, yes, I was going to ask you how she was working out but... it would seem <<=setup.getNpcName("npc_manager","other")>> has some additional training to do?@@"<br>
<br>
"@@.npc_boss;Yes she does, but, on another matter. I was meaning to talk to you about something, if you do not mind a bit of business?@@"
<<else>>
You remain obediently silent, even though your curiosity burns to know what <<=setup.getNpcName("npc_secretary","nickname")>> is up to.<br>
<br>
"@@.npc_nintendolls;So, how has she been? I know how... particular you are about your partners, but <<=setup.getNpcName("npc_manager","other")>> has given me so many wonderful training suggestions... I can only imagine how perfect her own products are...@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> actually smiles at you and pats your hand with <<his npc_boss>> own, <<his npc_boss>> touch sending fireworks exploding through your body.<br>
<br>
"@@.npc_boss;She has been a perfect delight... actually, I was meaning to talk to you about something, if you do not mind a bit of business?@@"
<</if>>
<br><br>
"@@.npc_nintendolls;Not at all, not at all! The overseas markets are up so we must be ready as well! Have a seat, relax, and let us settle the matter with haste.@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> lets go of you and your heart immediately drops, wishing you could have cut off your own arm rather than remove it from <<his npc_boss>> grasp.<br>
<br>
"@@.npc_boss;You may take your position.@@" <<He npc_boss>> states to you with a slight nod towards the table. It takes you a moment to realise that <<hes npc_boss>> asking you to crawl underneath...<br>
<br>
[<<moveTo "event_boss_party_5" "Get under the table and show your devotion." 180 "<<set $scene.suck=true>>">>]<br>
<<if $fetish.get_raped>>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;You are too submissive to resist obeying <<his npc_boss>> command.@@]
<<elseif setup.getWillpower() > 0>>
[<<moveTo "event_boss_party_5" "Remain standing." 180 "<<set $scene.suck=false>><<spendWillpower 1>>">>] <<hint $options "Resisting <<=setup.getNpcName('npc_boss','formal')>> will cost willpower.">>
<<else>>
[@@.link_locked;You lack the willpower to resist <<his npc_boss>> command.@@]
<</if>>
<<else>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_boss_party_5" "Steel yourself and remain standing." 180 "<<set $scene.suck=false>><<spendWillpower 1>>">>] <<hint $options "Resisting <<=setup.getNpcName('npc_boss','formal')>> will cost willpower.">>
<<else>>
[<<moveTo "event_boss_party_5" "Remain standing." 180 "<<set $scene.suck=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: npc_boss meet npc_nintendolls at party - suck boss cock
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'skip' $INCOGNITO>>
<<applyExperience 'oral' $npc_boss.penis_size 'very' $SEEN_STRANGER>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_boss'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "strict">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<<set $npc_boss.flags.hasBlown = true>>
<<applyExperience 'submission' 15 'terrible' $INCOGNITO>>
<<if $player.makeup.template!="">>
<<changeMakeupMessed 10>>
<</if>>
<<set $npc_boss.flags.party_suck = 1>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
Obeying <<=ps(setup.getNpcName("npc_boss","formal"))>> subtle command you crawl under the table, discovering as you disappear under the table-cloth that you are not alone. To your right — kneeling, bound, encased in rubber save for their gag-spread mouth bobbing up and down on <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> cock is who you can only assume is the long-tormented Nintendolls board member sucking away with literal blind obedience.<br>
<br>
You feel a spark of pride as you hurry to attend to the project in front of you — not just because <<=ps(setup.getNpcName("npc_boss","formal"))>> glorious cock is the far better prize — but because, unlike the broken creature to your right, you are doing so with joyful obedience — an eager, willing servant to <<=ps(setup.getNpcName("npc_boss","formal"))>> every want or desire.<br>
<br>
<<if State.hasPlayed("event_boss_first_cock_training_6") && $npc_boss.flags.worked_max_cock > 0>>
Your thoughts immediately turn to your hours spent worshipfully staring at and inhaling the scent of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>,
<<if $player.body_ref.vagina && $npc_boss.flags.worked_max_cock == 3 || !$player.body_ref.vagina && $npc_boss.flags.worked_max_cock >= 2>>
of the even more hours stuffed full of <<his npc_boss>> facsimile as you worked.
<<elseif $npc_boss.flags.worked_max_cock > 0>>
of the even more hours filled with one of <<his npc_boss>> facsimile as you worked.
<<else>>
wondering why you haven't worked "filled" with one of <<his npc_boss>> glorious facsimile.
<</if>>
It has lead to this and you eagerly lick your lips in anticipation.
<<elseif $npc_boss.flags.worked_max_cock > 0>>
Your thoughts turn to
<<if $player.body_ref.vagina && $npc_boss.flags.worked_max_cock == 3 || !$player.body_ref.vagina && $npc_boss.flags.worked_max_cock >= 2>>
the hours you have spent stuffed full of <<his npc_boss>> facsimile as you worked.
<<elseif $npc_boss.flags.worked_max_cock > 0>>
the hours you have spent filled with one of <<his npc_boss>> facsimile as you worked.
<<else>>
wondering why you haven't worked "filled" with one of <<his npc_boss>> glorious facsimile.
<</if>>
<<else>>
Your heart beats faster in anticipation, your close proximity to <<him npc_boss>> all evening having you hungering for <<his npc_boss>> cock
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
beyond previous limits of cock-mad infatuation.
<<else>>
even more than your usual infatuation.
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
to a disturbing degree.
<<else>>
to a degree you would have denied possible mere hours ago, and that still scares you.
<</if>>
<</if>>
<</if>>
<br><br>
Hard and beautiful, <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">> is quickly free of <<his npc_boss>> pants and you
<<if setup.getTotalValue("oral") > 10>>
swallow it to the root. Feeling <<=ps(setup.getNpcName("npc_boss","formal"))>> big dick buried in your throat is like heaven.
<<if setup.getTotalValue("oral") > 15>>
You close your eyes in bliss, using one hand to massage <<him npc_boss>> through your throat as you hold for as long as your breath allows, tongue and throat and lips working in perfect silent harmony...<br>
<br>
<<printThought "I am <<his npc_boss>> perfect sheath... could there be anything better?">>
<<else>>
This is surely why you learned to suck cock, to deep throat; everything else was preparing for this and yet, though you can handle <<him npc_boss>> you feel the faintest twinge of strain.<br>
<br>
<<printThought "I must practice more, to be the sheath for <<his npc_boss>> sword is my greatest purpose...">>
<</if>>
<br><br>
The desire to hold <<his npc_boss>> glory within you until you pass out is almost insurmountable, but you somehow pull back just enough to sneak a quick breath before leaning forward to again feel your throat swell around perfection.
<<else>>
<<He npc_boss>> is too big for you, and you know it, retaining just enough sanity despite <<his npc_boss>> suffocating presence not to push too far and risk coughing or otherwise disrespecting the wonderful, wonderful perfection before you.
<<if setup.getTotalValue("oral") > 5>>
You lean forward until <<he npc_boss>> is tickling your throat, cursing with every fibre of your being the gag reflex that prevents you from feeling <<him npc_boss>> buried in your throat where you know <<he npc_boss>> belongs.<br>
<br>
<<printThought "I must train myself, to sheath <<his npc_boss>> sword is the greatest purpose to which I could aspire...">>
<<else>>
Knowing <<he npc_boss>> is far too much for you to swallow — even as you wish nothing more than to feel your throat stretch in accommodating of burying <<his npc_boss>> cock where it belongs, you focus on <<his npc_boss>> thick, delicious cock-head.<br>
<br>
<<printThought 'I am a worthless failure. What purpose can I serve if I am unable to suck <<=ps(setup.getNpcName("npc_boss","formal"))>> cock?'>>
<</if>>
<br><br>
<</if>>
<<if setup.getTotalValue("penis") > 10>>
Even compared to all the other cocks you
<<if setup.getTotalValue("penis") > 15>>
love,
<<else>>
lust over,
<</if>>
<<if $npc_boss.fem>>hers<<else>>his<</if>> is the best,
<<else>>
<<if setup.getTotalValue("penis") > 5>>
You may have come to appreciate cock but <<=ps(setup.getNpcName("npc_boss","formal"))>> is different, surely
<<else>>
You do not like cocks at all, and yet <<=ps(setup.getNpcName("npc_boss","formal"))>> is different, the mere taste inflaming desires you never knew you had as you swiftly decide it is surely
<</if>>
<</if>>
the most glorious example of <<if $npc_boss.fem>>cock<<else>>manhood<</if>> in all of existence. With every taste your longing for it grows and you make ardent love to it, your greatest desire to be granted the privilege of giving <<him npc_boss>> an orgasm...<br>
<br>
Despite your best efforts <<=setup.getNpcName("npc_boss","formal")>> remains hard and undistracted, yet another demonstration of <<his npc_boss>> power and control in all things. From your place between <<=ps(setup.getNpcName("npc_boss","formal"))>> legs you suck softly and passionately as <<he npc_boss>> and <<=setup.getNpcName("npc_nintendolls","formal")>> have their discussion...
<<else>>
You remain standing, justifying to yourself that crawling under the table to do... whatever in the middle of a party would be quite low-class, and actually reflect poorly on <<=setup.getNpcName("npc_boss","formal")>> if anyone saw you.<br>
<br>
<<printThought "Given this company... even I'm not gullible enough to believe that.">><br>
<br>
All but ignoring you, <<=setup.getNpcName("npc_boss","formal")>> and <<=setup.getNpcName("npc_nintendolls","formal")>> begin their discussion.
<</if>>
<br><br>
"@@.npc_boss;I wish to speak of time-lines, the merger between our two companies... we should accelerate, the benefits of your distribution networks with our technology... we cannot let the friction of corporate partnership slow things down.@@"<br>
<br>
"@@.npc_nintendolls;That is a difficult ask, Nintendolls is not some new cloud computing company you can simply gobble up on a whim. We have a history going back over a century! Some of our board members are fourth generation!@@"<br>
<br>
"@@.npc_boss;You already know how to deal with... recalcitrant board members, and if you need further assistance, well... we have other resources as well...@@"<br>
<br>
They lower their voices and their discussion becomes more technical, the combination making it impossible to make out any meaningful details over the din of the party...<br>
<br>
<<if $scene.suck>>
<<printThought "Mmmm, better to focus on sucking cock, anyway...">><br>
<br>
You lose track of time, devoting yourself completely to the glorious task of serving <<=setup.getNpcName("npc_boss","formal")>>, serving <<his npc_boss>> cock...<br>
<br>
[<<moveTo "event_boss_party_6" "Suck. Slurp. Swallow. Joy." 600>>]
<<else>>
[<<moveTo "event_boss_party_8" "Continue." 1800>>]
<</if>>
</div>/*#
#desc: npc_boss meet npc_nintendolls at party - switch to sucking npc_nintendolls
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
Your heaven is interrupted by <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> voice rising above the din.<br>
<br>
"@@.npc_nintendolls;Say, would you mind swapping for a few minutes? I want to get your input on how this one's training is coming along.@@"<br>
<br>
"@@.npc_boss;Certainly,@@" <<=setup.getNpcName("npc_boss","formal")>> replies, the implications of <<his npc_boss>> word crashing down upon you like a waterfall of despair.<br>
<br>
<<if setup.getTotalValue("penis") > setup.getTotalValue("submission")>>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_boss_party_7" 'Force yourself to obey instructions rather than indulging in your raging cock-lust.' 180 "<<set $scene.obey=true>><<spendWillpower 2>>">>] <<hint $options "Resisting your desperate desire for <<=ps(setup.getNpcName('npc_boss','formal'))>> cock will cost willpower.">><br>
<<else>>
[@@.link_locked;You lack the mental fortitude to overcome your addiction to <<=ps(setup.getNpcName("npc_boss","formal"))>> cock and willingly separate.@@]
<</if>>
[<<moveTo "event_boss_party_7" "Do not let perfection escape your lips." 180 "<<set $scene.obey=false>>">>]
<<else>>
[<<moveTo "event_boss_party_7" 'Accept the consolation prize of <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> and switch.' 180 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_boss_party_7" "Do not let perfection escape your lips." 180 "<<set $scene.obey=false>>">>]
<</if>>
</div>/*#
#desc: npc_boss meet npc_nintendolls at party - suck nintendolls cock
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<set $npc_boss.flags.party_suck = 2>>
<<set _subSkill = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _subSkill 'unbelievable' $INCOGNITO>>
<<applyExperience 'cum' 15 'very' $INCOGNITO>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'unbelievable' $INCOGNITO>>
<</if>>
<<if $player.makeup.template!="">>
<<changeMakeupMessed 16>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
As much as it pains you to separate from your <<if $npc_boss.fem>>Goddess'<<else>>Lord's<</if>> perfect cock you know that to disobey <<his npc_boss>> instruction would make you unworthy to feel it in your throat, and that possibility, of never again experiencing the perfection of being that comes from sheathing <<him npc_boss>> inside of your body, is a horror beyond words.
<<else>>
You continue sucking even as you hear the squeak of leather and then feel the creature to your right rubbing up against your side.<br>
<br>
There is a gag-muffled whine as it blindly bumps against you and then a firm hand in your hair yanking you away. "@@.npc_boss;What do you think you are doing you cock-addicted bimbo?@@" <<His npc_boss>> harsh words sting, even as they turn you on — you are a cock addicted bimbo — addicted to <<his npc_boss>> cock! Why won't <<he npc_boss>> see that you were meant to be sucking <<him npc_boss>> off?<br>
<br>
You whimper only to look up and meet <<his npc_boss>> gaze. <<His npc_boss>> aquamarine glare freezes your desire, replacing it with a pit of shame at your inexcusable disobedience. How can you be worthy of <<his npc_boss>> cock, the greatest in existence, if you would disobey <<his npc_boss>> divine mandate? You whimper in sorrowful despair and bow your head, allowing <<his npc_boss>> cock to fall free of your lips, staring at it with unbelievable longing, but even stronger knowledge that you have failed <<him npc_boss>>, and are thus unworthy.<br>
<br>
"@@.npc_boss;Better.@@" <<He npc_boss>> states. Even this muted praise makes your heart sing. "@@.npc_boss;Go entertain <<=setup.getNpcName("npc_nintendolls","formal")>> while I test <<his npc_nintendolls>> slave.@@"<br>
<br>
You hurry to obey, only through obedience can you hope to re-earn your <<if $npc_boss.fem>>Goddess'<<else>>Lord's<</if>> trust, and thus have the chance to feel the heavenly bliss that is <<him npc_boss>> filling your throat.
<</if>>
You nimbly crawl around your blind compatriot, shuffling beneath the table to take a position between <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> legs and lean in eagerly.<br>
<br>
An analytic part of your brain says that <<=setup.getNpcName("npc_nintendolls","formal")>> and <<=setup.getNpcName("npc_boss","formal")>> are close to the same size, but your heart says that is impossible. <<=ps(setup.getNpcName("npc_boss","formal"))>> cock is living perfection, big and hard and straight and perfect, while
<<if setup.getTotalValue("penis") > 10>>
<<=ps(setup.getNpcName("npc_nintendolls","formal"))>>, as thick and yummy as it may be, cannot hope to compare.
<<else>>
<<=ps(setup.getNpcName("npc_nintendolls","formal"))>> is... not,
<<if setup.getTotalValue("penis") > 5>>
the addictive obsession that marked your time sucking <<=setup.getNpcName("npc_boss","formal")>> is no more, as you "merely" find <<if $npc_boss.fem == $npc_nintendolls.fem>>another <<getWordPenis "npc_boss">><<else>>a normal <<getWordPenis "npc_nintendolls">><</if>> between your lips.
<<else>>
the perverted obsession that marked your time sucking <<=setup.getNpcName("npc_boss","formal")>> is no more, as you find yourself mildly disgusted by the <<getWordPenis "npc_nintendolls">> between your lips.
<</if>>
<</if>>
<br><br>
Regardless of your thoughts as to the quality of <<=ps(setup.getNpcName("npc_nintendolls","formal"))>> <<getWordPenis "npc_nintendolls">> — slightly bent, with an asymmetrical head, <<his npc_nintendolls>> balls disproportionately large and with a slightly rough circumcision scar; you devote yourself to sucking <<him npc_nintendolls>> off with every fibre of your being. This was <<=ps(setup.getNpcName("npc_boss","formal"))>> command, and the sooner you execute it to perfection the sooner you might return to the superiority that is <<=setup.getNpcName("npc_boss","formal")>>...<br>
<br>
"@@.npc_nintendolls;Holy shit!@@" <<=setup.getNpcName("npc_nintendolls","formal")>> gasps moments into your efforts.<br>
<br>
"@@.npc_boss;Problem?@@" <<=setup.getNpcName("npc_boss","formal")>> asks, <<his npc_boss>> voice even, unbothered by whatever efforts the latex gimp between <<his npc_boss>> legs is deploying.<br>
<br>
"@@.npc_nintendolls;Far from it... that you were able to carry on a conversation while this vixen was going at you... oh fuck, I'm about to—@@"<br>
<br>
This is your final warning before <<he npc_nintendolls>> cums, and you suck eagerly,
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
cum that, in any other situation, you would find delectable,
<<else>>
cum that you would normally gobble up with joy,
<</if>>
tasting somehow flat,
<<else>>
<<if setup.getTotalValue("cum") > 5>>
basic, salty cum that you would normally find unobjectionable,
<<else>>
bitter, salty cum
<</if>>
tasting beyond disgusting,
<</if>>
a salty echo of the perfection that you know down to the tips of your pointed toes would be dispensed by <<=setup.getNpcName("npc_boss","formal")>>. Nevertheless you swallow it all, fixated on the thought that only by performing this obedience can you hope to earn <<=ps(setup.getNpcName("npc_boss","formal"))>> blessing, ready to guzzle <<getWordCum>> by the gallon if it means a single taste of <<=ps(setup.getNpcName("npc_boss","formal"))>> divine ambrosia.<br>
<br>
After flooding your mouth <<=setup.getNpcName("npc_nintendolls","formal")>> begins to wilt but <<he npc_nintendolls>> stops you with a gasp. "@@.npc_nintendolls;Don't swallow — my slut needs the practice at being my dedicated cum-dumpster.@@"<br>
<br>
"@@.npc_boss;I have felt enough to give my assessment.@@"<br>
<br>
You look to the side to see <<him npc_boss>> roughly push the latex gimp away and you eagerly crawl over to do your duty, pulling the rubber creature in for a kiss as you shove your tongue through its gag-spread lips to give it the "prize" it failed to earn on its own.<br>
<br>
"@@.npc_boss;While adequate in capacity, her skill leaves much to be desired. Ignoring the ways a ring gag presents a challenge for all but the most skilled practitioner... her efforts are rudimentary, more akin to a machine bobbing back and forth than any sign of human ingenuity, of using her tongue and reading her partner. At a guess you rushed to teach her to handle your length by pounding away at her gag reflex. Such techniques are useful, but they fail to develop finesse. I would recommend sensitivity training or, optimally, a lesson with <<=setup.getNpcName("npc_development","formal")>>, but her services are strictly limited to employees of the company... perhaps another reason for you to hasten the merger.@@"<br>
<br>
Still recovering from the mind-blowing orgasm you sucked out of <<him npc_nintendolls>> <<=setup.getNpcName("npc_nintendolls","formal")>> response is tired "@@.npc_nintendolls;That again... as I said, I will do what I can, but it is going to be a hard sell to the board. Even with the data loss the company is still in a strong market position and there is no interest in a merger.@@"<br>
<br>
"@@.npc_boss;Then you have much work to do,@@" <<=setup.getNpcName("npc_boss","formal")>> states as <<he npc_boss>> stands up — this fact clicking in your mind to mean that you will not be returning to sucking on <<his npc_boss>> glorious <<if $npc_boss.fem>>dick<<else>>manhood<</if>>. Feeling a twinge of despair you pull away from the rubber gimp, their spread lips trailing drool and cum. Your one solace is that the pathetic creature in front of you did not steal your prize, perhaps there remains a chance for you to earn <<=ps(setup.getNpcName("npc_boss","formal"))>> grace before the night is over...<br>
<br>
You crawl out from under the table and rise to your feet. <<if $scene.wornCollarType == 'ring'>><<=setup.getNpcName("npc_boss","formal")>> casually takes up your leash and you<<else>>You<</if>> quietly return to your position on <<his npc_boss>> arm.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> looks down at your face and
<<if $player.makeup.template != "">>
frowns. "@@.npc_boss;Disappointing. You should invest in more permanent makeup, needing to keep it up, or being seen without it, is a needless distraction.@@"<br>
<br>
You wince at the reprimand and promise <<him npc_boss>> that you will see to this failure as soon as possible.
<<else>>
smiles. "@@.npc_boss;Good, permanent makeup — the best choice for any woman, never needing to worry about being seen without it — or it being smudged by activity.@@"<br>
<br>
You straighten with pride at the compliment.
<</if>>
<<He npc_boss>> takes a moment to survey the party and then walks forth, with you obediently at <<his npc_boss>> side.<br>
<br>
[<<moveTo "event_boss_party_8" "Continue." 1800>>]<br>
</div>/*#
#desc: npc_boss at party - return to party, run across npc_secretary
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'little' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
After the brief bit of business with <<=setup.getNpcName("npc_nintendolls","formal")>>, <<=setup.getNpcName("npc_boss","formal")>> resumes the same small-talk glad-handing that <<he npc_boss>> had been doing before. Though there is no significant business discussed that you can identify you can still feel <<his npc_boss>> cool intellect in every carefully chosen word as <<he npc_boss>> learns more than <<he npc_boss>> tells, subtly manipulating everyone <<he npc_boss>> speaks with with the awe inspiring skill of a master manipulator.<br>
<br>
To your surprise you are standing obediently through yet another conversation of some simpering toady praising <<=ps(setup.getNpcName("npc_boss","formal"))>> obvious brilliance when you spot <<=setup.getNpcName("npc_secretary","nickname")>>, your predecessor. Though her makeup remains perfect and she is attempting to smile you can tell that she is exhausted, her hair looking like it has been pulled and patted back into place a dozen times, held in place with "chopsticks" that you realise are actually a pair of thin permanent markers. Her lips half parted as if lacking the strength to close her jaw she approaches a table full of <<if $options.fem>>executives<<else>>men<</if>> and speaks something beyond your earshot.<br>
<br>
Whatever she said seems to have "worked" as a moment later she is crawling under their table. Before the table-cloth hides her secret activities you catch a glimpse of her legs — her VERY short skirt revealing what looks like... tally marks on the inside of her thighs.<br>
<br>
Noticing you attention — as <<his npc_boss>> piercing eyes seem to notice everything, <<=setup.getNpcName("npc_boss","formal")>> smiles slightly and reaches down to momentarily squeeze your ass. Though you recognise this is merely a non-verbal instruction to keep silent you can't help but feel the joy of possession, the brief grope making you feel owned and, dare you say it... loved? The humiliation of being treated like <<his npc_boss>> object to use a perversely perfect blessing.<br>
<br>
The current conversation drawing to a close waits for the others to walk away before softly speaking.<br>
<br>
<<if !$scene.interrupt && $scene.suck && $scene.obey>>
"@@.npc_boss;Curious as to what your predecessor is up to? Well, you have been a good girl tonight, so I will tell you.@@"
<<elseif $scene.suck || $scene.obey || !$scene.interrupt>>
"@@.npc_boss;Curious as to what your predecessor is up to? Your performance tonight has been... less than perfect. And, to my eyes, anything less than perfection is failure. Still, perhaps learning the ways of your betters will motivate you to improve.@@"
<<else>>
"@@.npc_boss;Curious as to what your predecessor is up to? Your performance tonight has completely failed to meet my expectations... and yet I am in a generous mood. Perhaps learning the ways of your betters will motivate you to improve.@@"
<</if>>
<br><br>
You look up with rapt attention, hanging on <<=ps(setup.getNpcName("npc_boss","formal"))>> every word.<br>
<br>
"@@.npc_boss;Some time ago <<=setup.getNpcName("npc_nintendolls","formal")>> bet me that <<=setup.getNpcName("npc_secretary","nickname")>> would be unable to complete twenty blowjobs in the course of a single evening. Of course I had no doubt that that was well within her talents and I was proven right when she completed it within little more than an hour. Since that time <<=setup.getNpcName("npc_nintendolls","formal")>> will occasionally up the target, when <<he npc_nintendolls>> can find something of value to stake. Her current record is forty-seven... and I fear she may be nearing her limit...@@"<br>
<br>
<<if $scene.suck>>
Still thirsting for the taste of <<his npc_boss>> cum you were earlier denied
<<else>>
Your thoughts distracted by <<his npc_boss>> heady presence,
<</if>>
you blurt out that you would bet a mouthful of <<his npc_boss>> cum that you can beat her.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smiles and raises an eyebrow
<<switch $player.flags.stage3party.cumContest>>
<<case 0>>
"@@.npc_boss;Hmm, perhaps if you had a proven record of being a cum-guzzling whore... there is a contest that happens here from time to time where interested individuals compete at drinking that salty brew. Win it, and then speak with <<=setup.getNpcName("npc_retention","formal")>> some night when you wish to challenge the record. I advise you that claiming victory will take focus and will be no easy feat.@@"
<<case 1 2>>
"@@.npc_boss;Hmm, perhaps if you had truly cemented your status as a cum-guzzling whore... I know you have entered the contest, but your performance has been forgettable. Win the contest, and then speak with <<=setup.getNpcName("npc_retention","formal")>> some night when you wish to challenge the record. I advise you that claiming victory will take focus and will be no easy feat.@@"
<<case 3 4>>
"@@.npc_boss;Hmm, perhaps if you had truly cemented your status as a cum-guzzling whore... I know you have entered the contest, but nothing matters but victory. Show your skills by winning the contest and then speak to <<=setup.getNpcName("npc_retention","formal")>> some night when you wish to challenge the record. I advise you that claiming victory will take focus and will be no easy feat.@@"
<<case 5>>
"@@.npc_boss;Hmm, perhaps if you had truly cemented your status as a cum-guzzling whore... I know you have done quite well in the cum drinking contest, but second place is merely first loser. Win the contest, and then speak with <<=setup.getNpcName("npc_retention","formal")>> some night when you wish to challenge the record. I advise you that claiming victory will take focus and will be no easy feat.@@"
<<case 6>>
"@@.npc_boss;Perhaps you can... you have certainly demonstrated sufficient capacity. If you wish to try speak with <<=setup.getNpcName("npc_retention","formal")>> some night when you wish to challenge the record. I advise you that claiming victory will take focus and will be no easy feat.@@"
<<default>>
ERROR: unexpected cum contest <<=$player.flags.stage3party.cumContest>>
<</switch>>
<br><br>
You promise to do <<him npc_boss>> proud but <<he npc_boss>> stops you with a raised finger.<br>
<br>
"@@.npc_boss;You are forgetting the other side of the wager — what are you offering up, should you lose?@@"<br>
<br>
Your mind goes blank as you fail to think of what you could possibly offer a <<man npc_boss>> of such wealth and power that <<he npc_boss>> does not already have.<br>
<br>
[<<moveTo "event_boss_party_9" "You can think of nothing." 180>>]
</div>/*#
#desc: npc_boss at party - return to party, npc_secretary explanation
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You fall silent and <<=setup.getNpcName("npc_boss", "formal")>> chuckles. "@@.npc_boss;Let that be the second half of your task — figure out what you can offer as collateral before you start the challenge, but know that <<=setup.getNpcName("npc_retention","formal")>> will speak on my behalf and will expect something of equal worth to the prize you desire.@@"<br>
<br>
Your heart falls — surely there is nothing in the world as valuable as the taste of <<his npc_boss>> seed, but you are equally certain that <<he npc_boss>> wants you to try, and thus would not give you an impossible task, even as you are certain that anything <<he npc_boss>> desired from you, you would surely offer freely. You thank <<him npc_boss>> and fall into silent thought.<br>
<br>
Another employee approaches and <<=setup.getNpcName("npc_boss", "formal")>> turns to greet them with a smile.<br>
<br>
[<<moveTo "event_boss_party_10" "Continue." 3600>>]
</div>/*#
#desc: npc_boss at party - finish party
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_boss.flags.party_join = true>>
<<if $scene.wornCollarType == 'ring'>>
<<removeItem 'leash_silver' true>>
<<deleteItem 'leash_silver'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss") setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You notice the guests starting to thin out and spot <<=setup.getNpcName("npc_manager", "formal")>> from across the room. <<=setup.getNpcName("npc_boss", "formal")>> sees her too and summons her with a slight wave.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
Though she steps with measured grace and does not appear to rush <<=setup.getNpcName("npc_manager","formal")>> covers the distance startlingly fast.
<<else>>
You are uncertain but it seems that she covers the distance surprisingly swiftly.
<</if>>
<br><br>
<<if !$scene.interrupt && $scene.suck && $scene.obey>>
"@@.npc_boss;<<=setup.getNpcName("npc_manager", "other")>>! I hope your evening has been as wonderful as my own. Your girl has been a perfect gem, and you remain this company's undisputed master polisher.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> responds with a saccharine smile. "@@.npc_manager;Just doing my part for the good of the company, the same as us all.@@"<br>
<br>
"@@.npc_boss;Well keep it up,@@" <<=setup.getNpcName("npc_boss", "formal")>> states, <<if $scene.wornCollarType == 'collar'>>unclipping your leash and <</if>>giving
<<elseif $scene.suck || $scene.obey || !$scene.interrupt>>
"@@.npc_boss;<<=setup.getNpcName("npc_manager", "other")>>! I hope your evening has been pleasant... unfortunately I must inform you that there remains much work for you to do. The performance of this one fell short of what I have come to expect from your efforts.@@"<br>
<br>
"@@.npc_manager;Yes, well these things do take time to do properly.@@" She replies diplomatically.<br>
<br>
Failing the both of them makes your heart skip a beat and you gasp as <<=setup.getNpcName("npc_boss", "formal")>> <<if $scene.wornCollarType == 'collar'>>unclips your leash and <</if>>gives
<<else>>
"@@.npc_boss;<<=setup.getNpcName("npc_manager", "other")>>! I hope your evening has been better than my own. To put it bluntly, your girl is sorely in need of obedience training.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns, and the fact that you have disappointed the two most gloriously dominant people you know makes you want to sink into the floor. "@@.npc_manager;Yes, well these things do take time to do properly.@@" She replies diplomatically.<br>
<br>
"@@.npc_boss;Yes, well... timetables still must be kept to.@@" <<=setup.getNpcName("npc_boss", "formal")>> replies cryptically before <<if $scene.wornCollarType == 'collar'>>unclipping your leash and <</if>>giving
<</if>>
you a slap on the ass to send you skipping back to <<=ps(setup.getNpcName("npc_manager","formal"))>> side.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> walks away towards <<his npc_boss>> private elevator, <<his npc_boss>> retreating presence combined with <<=ps(setup.getNpcName("npc_manager","formal"))>> strong, familiar aura accelerating the cloud lifting from your thoughts.<br>
<br>
<<printThought "That was... what is it about <<his npc_boss>> presence? It's almost... addictive...">><br>
<br>
You consider <<=setup.getNpcName("npc_work_doctor","formal")>>, not putting it past this company to have literally drugged you, but if such a concoction exists, why does <<=setup.getNpcName("npc_work_doctor","formal")>> not use it? You get the feeling <<he npc_work_doctor>> would not be one to deny <<himself npc_work_doctor>> and you also, too consider <<=ps(setup.getNpcName("npc_manager","formal"))>> persistent aura, and your occasional glimpses of more.<br>
<br>
<<printThought 'Is this just what a true dominant feels like at full power? Is <<he npc_boss>> really that strong... or is <<=setup.getNpcName("npc_manager","formal")>> sheltering me from her full force...'>><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks at you and smiles softly. "@@.npc_manager;Well, shall we be off? You look like you have had quite the evening.@@"<br>
<br>
You nod, thoughts roiling as you decide you can always tell her about <<=setup.getNpcName("npc_nintendolls","formal")>> and the merger later...<br>
<br>
[<<moveTo "event_boss_party_11" "Leave." 600>>]
</div>/*#
#desc: npc_boss at party - leave
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "endOfPartyCollar">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
Things are quiet as <<=setup.getNpcName("npc_manager","formal")>> leads you to the elevator<<if $scene.replaceCollar>> where she replaces your collar,<<elseif $scene.partyTempCollar != "">>, removing your temporary neck adornment<</if>> and then loads you into a car for home.<br>
<br>
She hesitates a moment before closing the door to the auto-cab and you think she is about to say something more...<br>
<br>
"@@.npc_manager;See you tomorrow.@@" She states softly, a strange sadness in her voice.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: manager invites you to stage 3 party
#status: FINISHED 0.7.8.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Having dispensed with your assessment, <<=setup.getNpcName("npc_manager","formal")>> is all smiles, her demeanour somewhere between the near bursting to spill a secret and the triumphant look of a hunter who has just claimed a long-sought trophy.<br>
<br>
"@@.npc_manager;So, my dear, I have some just wonderful news to share. You recall that work party you attempted to join me at, only to be so rudely turned away? Well, after dealing with some bothersome paperwork, and with you having proven yourself as my official full-time <<if $fetish.sissy>>SISSI <</if>>Secretary... well, the invite I just received for tomorrow's event is for two. Oh it will be such a relief to no longer suffer through things alone, and I imagine you are quite excited by the opportunity as well!@@"<br>
<br>
<<if ($currentTasks.hasOwnProperty('task_landlord_date_1') && !$currentTasks.task_landlord_date_1.finished && setup.daysToDate($now, setup.getTaskDueDate('task_landlord_date_1')) <= 2)>>
[@@.link_locked;You have a date scheduled with <<=setup.getNpcName('npc_landlord', 'first')>>.@@]
<<else>>
[<<moveTo "event_party_invite_2" "Of course!" 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_party_invite_2" "Nod slowly." 60 "<<set $scene.obey=false>>">>]<br>
<</if>>
[<<moveTo "event_party_invite_reject" "You actually had other plans for the evening..." 60>>]
</div>/*#
#desc: try to avoid a mandatory after-work party
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 4, 18, 30, true)>>
<<addTaskById 'task_stage_3_party' _nextDate>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _keyId = setup.getItemObjFromType('cage').lockable[1]>>
<<set $scene.keyTask = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key') && !setup.checkItemInInventory(_keyId)>>
<<if $scene.keyTask>>
<<deleteMember $currentTasks.manager_morning_inspection_task.trigger 'chastity_key'>>
<<set $npc_manager.flags.partyKeptKey = true>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<</if>>
<<set $scene.landlordDate = ($currentTasks.hasOwnProperty('task_landlord_date_1') && !$currentTasks.task_landlord_date_1.finished && setup.daysToDate($now, setup.getTaskDueDate('task_landlord_date_1')) <= 2)>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reply that you had other plans for the evening and <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows. "@@.npc_manager;You mistake my directive for an invitation. You will cancel whatever distraction you are talking about, then return home and change into something suitably formal. I will be by to pick you up at <<if $options.militaryTime>>18:30<<else>>six thirty<</if>> <<if $now.getUTCDay() == 3>>tomorrow evening<<else>>tonight<</if>>.@@"<br>
<br>
She silences any further response with a wave and you find yourself back in the outer office.<br>
<br>
<<if $scene.landlordDate>>
[<<moveTo "event_party_invite_cancel_landlord" 'Give <<=setup.getNpcName("npc_landlord","first")>> the bad news.'>>]
<<else>>
[<<moveTo "room_office_after_work" "Leave her office.">>]
<</if>>
</div>/*#
#desc: cancel landlord invite in lieu of party
#status: FINISHED 0.8.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<postponeTask 'task_landlord_date_1' 7>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
With a reluctant sigh you call up <<=setup.getNpcName("npc_landlord","first")>> to explain the situation.<br>
<br>
"@@.npc_landlord;Ah, I understand <<callPlayer "npc_landlord">> — if you have to go in job then obviously that much more important than a boring night with me.@@"<br>
<br>
The ease with which <<he npc_landlord>> accepts things only makes you more guilty, given how much effort you put in to get <<him npc_landlord>> to agree to the date and you hurriedly insist that you tried to get out of the work function, not letting <<him npc_landlord>> off the phone until <<he npc_landlord>> agrees to merely postpone your scheduled date for a week rather than cancelling.<br>
<br>
"@@.npc_landlord;You so determined! Okay, <<callPlayer "npc_landlord">>, you win! I promise you date next Thursday, and no more work getting in the way!@@"<br>
<br>
You confidently affirm that you're looking forward to it before <<he npc_landlord>> hangs up to get back to work of <<his npc_landlord>> own.<br>
<br>
[<<moveTo "room_office_after_work" "Put your phone away.">>]
</div>/*#
#desc: accept manager invite to stage 3 party
#status: FINISHED 0.8.5.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 4, 18, 30, true)>>
<<addTaskById 'task_stage_3_party' _nextDate>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You express your obedient enthusiasm at the opportunity to finally accompany her to the party and she smiles.
<<else>>
She waits for your reply and you cautiously nod, somewhat taken aback by her enthusiasm as you wonder exactly what the party will entail...
<</if>>
<br><br>
"@@.npc_manager;So, the party will take place tomorrow after work. You should have just enough time to pop on home and get yourself looking your best in time for a car to pick you up. Mmm, I cannot wait to show you off, but you should know that this is not just about me. These parties are attended by all sorts of important higher ups. There will be plenty of opportunity for an ambitious girl to better her career... anyway, I suppose you probably want to spend the rest of this evening preparing for the event.@@"<br>
<br>
Starting to feel a bit nervous as to what seem to be very high expectations, you reply that you look forward to it.<br>
<br>
<<include "afterWorkManagerThemes">><br>
[<<moveTo "room_office_after_work" "Thank her and leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: ride elevator for first stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "rhinestone_choker">>
<<wearItem "rhinestone_choker" true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.manager_present>>
A tuxedo-clad guard holds the door to the limo as you and <<=setup.getNpcName("npc_manager","formal")>> stride out. Her arm loops through to take gentle, but possessive, control of your elbow as your heels click, click, click the way to the elevator.<br>
<br>
<<else>>
A tuxedo-clad security guard holds the door for you to disembark and you find <<=setup.getNpcName("npc_manager","formal")>> waiting for you near the elevator. You hurry over and she takes you by the arm, leading you into the elevator.
<</if>>
Once the elevator doors close and the long rise up begins, she turns to you, the diamond choker you wore previously appearing in her hand.
<br><br>
"@@.npc_manager;One final detail to round out your outfit@@"
<<if $player.flags.collar.collarId != "">>
you start to pull away as she reaches for your collar, but she stays you with a glance. "@@.npc_manager;I promise you will have this back at the end of the night, but for the moment... well, you will just have to trust me, you can do that, right?@@"
<<else>>
you hold your hair out of the way as she clicks it around your neck and smiles. "@@.npc_manager;Now, I want you to remember — do not take this off, for any reason, do you understand?@@"
<</if>>
<br><br>
[<<moveTo "event_party_pickup_5_first" "Nod." 120 "<<set $scene.ask=false>>">>]<br>
[<<moveTo "event_party_pickup_5_first" "Ask her why." 120 "<<set $scene.ask=true>>">>]
</div>/*#
#desc: arrive at stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.ask>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<if $player.flags.humiliationStyle>>
<<addWorkEvent 'admin_training_1'>>
<</if>>
<<addWorkEvent 'sex_club_advert'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.ask>>
You ask why wearing the choker is so important but she just shakes her head. "@@.npc_manager;There is no time to explain, just trust me that what you have around your throat at this party has meaning and you do not wish to be seen bare-necked.@@"<br>
<br>
Left with this puzzle you notice her own fancy ruby necklace just before the elevator doors open on floor 99.
<<else>>
You nod obediently and she smiles, the remainder of the swift ride passing in silence before the elevator doors slide open on floor 99.
<</if>>
<br><br>
Taking you by the arm once again, she leads the way towards the same hostess who had previously denied your entry.<br>
<br>
"@@.generic_female1;Ah, <<=setup.getNpcName('npc_manager', 'Mistress')>>... and guest! Welcome, and my deepest apologies for the last time.@@"<br>
<br>
"@@.npc_manager;Apology accepted. Just... do not let it happen again, hmm?@@" You catch a glint of fear in the hostess' eye as she looks at <<=setup.getNpcName('npc_manager', 'formal')>> and you wonder if your <<=setup.getNpcName('npc_manager', 'title')>> might have been responsible for the girl receiving some additional reprimand.<br>
<br>
Continuing on past, you enter a massive ballroom, dozens of formally dressed attendees, many with assistants at their side just as you are here with <<=setup.getNpcName('npc_manager', 'formal')>> drinking and conversing interspersed with waitstaff rushing to and fro with drinks and small morsels; each one dressed alike: <<if $options.fem>>corset-tight vests, short skirts, high heels and stockings<<else>>corset-tight vests for all with short skirts, high heels and stockings for the women and very tight pants for the few men<</if>>.<br>
<br>
"@@.npc_manager;Come along, my dear. It is impolite to gawk.@@"<br>
<br>
Hurrying to keep up, you stick even closer to her side as she leads the way into the crowd.<br>
<br>
[<<moveTo "event_party_first_1" "Continue." 120>>]
</div>/*#
#desc: arrive at stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.party.timesAttended += 1>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_party.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
Making your way through the crowd, you recall your <<=ps(setup.getNpcName('npc_manager', 'title'))>> insistence on your neck adornment. You notice how every attendee appears to have something around their neck — ties and necklaces for most of what you judge to be the senior employees, while their "assistants" wear various versions of chokers, ranging from jewellery like yourself to ribbon and lace numbers to some that look more akin to bondage gear made of leather, and in at least one case polished steel!<br>
<br>
You have no chance to ask <<=setup.getNpcName('npc_manager', 'formal')>> what this all means before a waitress suddenly appears to whisper something in <<=setup.getNpcName('npc_manager', 'formal')>> ear.<br>
<br>
"@@.npc_manager;Of course, we will be right there.@@" She replies before taking a turn and briskly heading towards the back of the room.<br>
<br>
You can't help but feel a certain tension in your <<=ps(setup.getNpcName('npc_manager', 'title'))>> grasp as she leads you to a guarded door in the rear of the ballroom, the burly security guard silently opening the way in front of you.<br>
<br>
Instead of another room, you find yourself in a small elevator that barely has room for you, your <<=setup.getNpcName('npc_manager', 'title')>> and yet another security guard. The guard silently presses a button and you zip swiftly upwards to what you swear must be near the top of the towering building before the doors slide open and you walk out, passing a senior executive whose name you can't quite recall going the other direction.<br>
<br>
[<<moveTo "event_party_first_2" "Continue." 120>>]
</div>/*#
#desc: meet npc_boss before party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_boss.profile = true>>
<<set $shopStatus['mall_apparel_store'].unlocked_inventory.pushUnique('little_black_dress')>>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_2'
0
'event_admin_theme_boss'
true
>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_manager","npc_manager_formal") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Looking around, you find yourself in an office that makes <<=ps(setup.getNpcName('npc_manager', 'formal'))>> look like a cramped closet; floor to ceiling glass windows giving you a panoramic view of the city, staring down on all but the handful of other super skyscrapers that equal this buildings height.<br>
<br>
Striding towards you are two people that you recognise, though you only know one of their names. <<=setup.getNpcName('npc_secretary', 'formal')>> is dressed nigh identical to the picture above your desk; the same blouse and ultra-tight skirt made even more fitted by the addition of a brutally tight corset... and accessorised by a "choker" that is nearly four centimetres tall... and looks to be made of gold with a platinum centre plate covering her throat.<br>
<br>
At her side, <<his npc_boss>> arm possessively wrapped around your predecessor's narrow waist is the <<man npc_boss>> you met once before in passing; just before your first appointment with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> what seems so long ago...<br>
<br>
"@@.npc_boss;Ah, <<=setup.getNpcName('npc_manager', 'Director')>>! How wonderful of you to make it to one of our little get togethers!@@"<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> grip on your arm reflexively tightens for a moment before she forces a smile and returns the greeting. "@@.npc_manager;I do apologise, <<=setup.getNpcName('npc_boss', 'other')>>, for being somewhat inconsistent at attending your lovely galas but work has been so very hectic of late.@@"<br>
<br>
"@@.npc_boss;Of course, of course. I suppose I should shoulder some of the blame in that regard, being that I abducted your previous assistant.@@" <<He npc_boss>> squeezes <<=ps(setup.getNpcName('npc_secretary', 'formal'))>> tightly corseted waist possessively, an act that you note causes <<=setup.getNpcName('npc_manager', 'formal')>> to stiffen.<br>
<br>
"@@.npc_manager;Yes, well, at first I was forced to make do, but Miss <<=$player.last_name>> has been rising to the occasion and proving herself quite the adept assistant.@@"<br>
<br>
"@@.npc_boss;So I have heard, come, let me have a look at her!@@"<br>
<br>
You feel <<=setup.getNpcName('npc_manager', 'formal')>> hesitate for a fraction of a second and then she releases her grasp and steps aside as you find yourself alone and face to face with <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
Releasing <<his npc_boss>> hold on <<=setup.getNpcName('npc_secretary', 'first')>>, <<he npc_boss>> steps towards you. Something about the look in <<his npc_boss>> eye freezing you in place, a sense of fear beyond what you have ever felt before, <<his npc_boss>> look one of raw authoritarian power. Not just in the sense that <<=setup.getNpcName('npc_manager', 'formal')>> exudes control but with an additional layer of malice, a silent "I am in control and I can do anything I want." <br>
<br>
[<<moveTo "event_party_first_3" "Continue." 120>>]
</div>/*#
#desc: npc_boss first inspection
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.shoes= setup.getItemObjFromType('shoes')>>
<<set $scene.totalsuccess = (setup.getCurrentMakeup() == "moviestar" || setup.getCurrentMakeup() == "sissy_doll") && setup.checkItemTypeWorn("earring") && ['medium', 'large'].includes(setup.calcBreastSize()) && setup.checkItemTypeWorn("nipple_piercing") && setup.checkItemTypeWorn("corset") && $player.timebased.tightlacing > 90 && setup.checkItemTypeWorn("plug") && $player.nails.style != "" && $player.flags.uniform_upgrade.aslutStage >= 4 && (setup.hasTattoo() || !$fetish.tattoos) && (!$player.body_ref.penis || $player.body.penissize[0] <=3)>>
<<if $scene.totalsuccess>>
<<set $npc_boss.flags.inspection = 1>>
<<elseif !$player.sec_style.clothing.nails || (!$player.sec_style.clothing.tattoo && $fetish.tattoos)>>
<<set _nextDate = setup.setNextDate($now, 4, 9, 0)>>
<<addWorkEvent 'nailsandinkevent' _nextDate>>
<</if>>
<<set $player.locations.bodyshop2 = true>>
<<addNpcTheme 'npc_technician' 'crossdressing' 'theme_technician_bodyshop'
0
'event_technician_theme_bodyshop_1'
true
>>
<<addNpcTheme 'npc_psychiatrist' 'transition' 'theme_psychiatrist_bodyshop'
0
'event_psychiatrist_theme_bodyshop_1'
true
>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 15, 0)>>
<<addEvent 'boss_penis_punish' _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_manager","npc_manager_formal") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.shoes.heels.difficulty > 10>>
Though your towering heels allow you to technically look <<=setup.getNpcName('npc_boss', 'formal')>> in the eye you find yourself cowering slightly, feeling smaller, weaker as <<he npc_boss>> approaches with a slight sneer.
<<else>>
Even in heels, you are forced to look up to meet <<=ps(setup.getNpcName('npc_boss', 'formal'))>> gaze as <<his npc_boss>> slight sneer makes you feel even smaller and weaker.
<</if>>
<br><br>
<<if $scene.totalsuccess>>
<<He npc_boss>> stares at you for what feels like forever, <<his npc_boss>> eyes devouring their way up and down your body before <<he npc_boss>> finally turns to <<=setup.getNpcName('npc_manager', 'formal')>> and nods. "@@.npc_boss;I am impressed, and disappointed that you kept this perfect creature hidden away down on the fifty-second floor... no, an angel like this needs to be shown off, why, I am tempted to take possession of her right here and now...@@"<br>
<br>
You tense, noting that <<=setup.getNpcName('npc_manager', 'formal')>> does the same but <<=setup.getNpcName('npc_boss', 'formal')>> merely laughs. "@@.npc_boss;You are so sensitive! No, I am quite satisfied with my current secretary but still...@@"<br>
<br>
<<His npc_boss>> hand idly runs along <<=ps(setup.getNpcName('npc_secretary', 'first'))>> butt. She merely smiles as <<=setup.getNpcName('npc_boss', 'formal')>> gropes her, but the act seems to subtly infuriate your <<=setup.getNpcName('npc_manager', 'title')>>. "@@.npc_boss;Continuing on — beauty is more than skin deep, so they say, so how about it, is the inside of this lovely thing's throat as pleasant to behold as her pretty lips? There is only one real way to find out.@@" Shifting <<his npc_boss>> attention <<he npc_boss>> stares you down with a menacing grin, "@@.npc_boss;So how about you kneel down and suck my cock?@@"
<<else>>
"@@.npc_boss;Let's see how you are coming along...@@"<br>
<br>
<<if setup.isItemEquipped("formal_dress_pink")>>
"@@.npc_boss;Respectable attire, if a bit uncreative.@@"
<<else>>
"@@.npc_boss;Quite a lovely outfit... and one I suspect she picked out herself. Very nice.@@"
<</if>>
<br><br>
<<switch setup.getCurrentMakeup()>>
<<case "normalmakeup">>
"@@.npc_boss;Her makeup is nice, if a bit rudimentary.@@"
<<case "expertmakeup">>
"@@.npc_boss;An interesting choice of makeup... if a bit garish for my taste.@@"
<<case "camgirl">>
"@@.npc_boss;So much makeup, but it hits the point of obscuring, rather than enhancing. Something with a bit more class would be preferable...@@"
<<case "egirl">>
"@@.npc_boss;So much makeup... a bit fashion-chasing, and not all that mature.@@"
<<case "qtpie">>
"@@.npc_boss;So much makeup... a tad immature, but maybe the raw cuteness is worth it.@@"
<<case "moviestar">>
"@@.npc_boss;Her makeup is very impressive, very professionally done!@@"
<<case "sissy_doll">>
"@@.npc_boss;Such cute makeup, she looks just like an obedient doll.@@"
<<case "ultimatebimbo">>
"@@.npc_boss;A bit heavy on the makeup. I didn't think you were such a fan of total bimbo sluts, perhaps you are finally embracing that it is the best thing that a woman can be?@@"
<<default>>
ERROR: unexpected makeup: <<=setup.getCurrentMakeup()>>
<</switch>>
<<He npc_boss>> states, speaking directly to your <<=setup.getNpcName('npc_manager', 'title')>> and making you feel like a piece of meat.<br>
<br>
<<if setup.checkItemTypeWorn("earring")>>
<<He npc_boss>> brushes your ears with a smile. "@@.npc_boss;Lovely earrings, they really help highlight her face.@@"
<<else>>
<<He npc_boss>> brushes your ears with a slight frown. "@@.npc_boss;No earrings? Quite disappointing.@@"
<</if>>
Tracing down your face with the back of <<his npc_boss>> hand, <<he npc_boss>> drifts towards
<<switch setup.calcBreastSize()>>
<<case "massive">>
your massive breasts. "@@.npc_boss;Hmm, a bit distractingly large, really, but I suppose if you are into that sort of thing.@@"
<<case "large">>
your large breasts. "@@.npc_boss;Now these are a pair! Very nice.@@"
<<case "medium">>
your breasts. "@@.npc_boss;Now this is a nice handful, not too big, but shapely.@@"
<<case "small">>
your small breasts. "@@.npc_boss;Hmm, perky. If a bit on the small side.@@"
<<case "none">>
nonexistent breasts. "@@.npc_boss;Hmm, a bit flat, something should really be done about that.@@"
<<default>>
ERROR, unhandled breast size <<=setup.calcBreastSize()>>
<</switch>>
Finishing up, <<he npc_boss>> pinches your nipples through your top causing you to gasp slightly.
<<if setup.getItemFromType("nipple_piercing") == "">>
"@@.npc_boss;Un-pierced, quite surprising given the lovely pair you have.@@" <<He npc_boss>> states, with a crude wink aimed at <<=setup.getNpcName('npc_manager', 'formal')>> as you recall your <<=ps(setup.getNpcName('npc_manager', 'title'))>> intimidating nipple shields.
<<else>>
"@@.npc_boss;Pierced here <<if setup.checkItemTypeWorn("earring")>>too<<else>>at least<</if>>, very nice.@@"
<</if>>
<br><br>
With a final squeeze of your chest, <<his npc_boss>> hand glides down your side
<<if setup.checkItemTypeWorn("corset")>>
feeling its way down the steel bones of your corset
<<if $player.timebased.tightlacing > 90>>
before curving
<<else>>
"@@.npc_boss;Hmm, I can feel a corset, but it is hardly tightened at all! Quite shameful.@@" <<His npc_boss>> hands glide down your sides and then curve
<</if>>
around behind
<<else>>
"@@.npc_boss;No corset? Very disappointing.@@" <<He npc_boss>> notes before continuing on down
<</if>>
to finger your rear.
<br><br>
<<if setup.checkItemTypeWorn("plug")>>
"@@.npc_boss;Properly plugged, very nice. A full secretary is a happy and obedient secretary.@@"
<<else>>
"@@.npc_boss;Empty back here? Quite surprising, and quite improper. A full secretary is a happy and obedient secretary.@@"
<</if>>
<br><br>
Circling around back in front of you <<his npc_boss>> gaze zero's in on your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>>.<br>
<br>
<<if $player.body_ref.penis>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<He npc_boss>> smiles as <<his npc_boss>> gaze slides over your small<<if setup.checkItemTypeWorn('cage')>>, chastity-encased<</if>> member.
<<switch $player.body_ref.shrink_style>>
<<case 'sph' ''>>
<<if $fetish.sph>>
"@@.npc_boss;Lovely, nice and pathetically small, just as <<if $fetish.sissy>>a sissy<<else>>you<</if>> should be.@@"
<<else>>
"@@.npc_boss;Very proper, locked, of course, but otherwise not a distraction to the eye.@@"
<</if>>
<<case 'spe'>>
"@@.npc_boss;Beautiful, petite and contained just as <<if $fetish.sissy>>a sissy<<else>>you<</if>> should be.@@"
<<case 'none'>>
"@@.npc_boss;Very proper<<if setup.checkItemTypeWorn('cage')>>, locked, of course, but otherwise<<else>>, and<</if>> not a distraction to the eye.@@"
<<default>>
ERROR: unhandled <<=$player.body_ref.shrink_style>>
<</switch>>
<<case 2 3>>
<<if setup.checkItemTypeWorn("cage")>>
<<He npc_boss>> nods as <<he npc_boss>> glances over your chastity <<if setup.isCage()>>cage<<else>>belt<</if>>. "@@.npc_boss;Locked, of course, but cute and not distracting, very nice.@@"
<<else>>
<<He npc_boss>> nods as <<he npc_boss>> glances past your privates without a word.
<</if>>
<<case 4 5>>
<<He npc_boss>> looks disgusted as <<he npc_boss>> glances
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
between your legs, seeming to see past the sleek line of your chastity belt to the large cock beneath. "@@.npc_boss;Deplorable. How could you let her mar such a slight figure with... that thing. A proper <<if $fetish.sissy>>sissy<<else>>girl<</if>> should present a chaste feminine profile, a locked unsightly beast remains an unsightly beast.@@"
<<else>>
over your obvious bulge. "@@.npc_boss;Deplorable. How could you let her mar such a slight figure with... that thing. A proper <<if $fetish.sissy>>sissy<<else>>girl<</if>> should present a feminine profile or a cute caged display... this... well this is neither.@@"
<</if>>
<<case 6>>
<<He npc_boss>> looks almost angry as <<he npc_boss>> glances
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
between your legs, seeming to see past the sleek line of your chastity belt to the monster within. "@@.npc_boss;Deplorable. How could you let her mar such a slight figure with... that monstrous abomination? A proper <<if $fetish.sissy>>sissy<<else>>girl<</if>> should be petite and chaste, half credit does not count in such matters.@@"
<<else>>
over your obvious bulge. "@@.npc_boss;Deplorable. How could you let her mar such a slight figure with... that monstrous abomination? A proper <<if $fetish.sissy>>sissy<<else>>girl<</if>> should present a feminine profile or a cute caged display... this... well this is neither.@@"
<</if>>
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
<<if $player.body.penissize[0] <= 3>>
<<He npc_boss>> grins at you before taking a step away. "@@.npc_boss;If you want to improve yourself more, well... I am sure there are all sorts of black-market bodyshops willing to do work...@@"
<<else>>
<<He npc_boss>> frowns in disgust before taking a step away.
<</if>>
<<else>>
<<He npc_boss>> smiles as <<if setup.checkItemTypeWorn("cage")>><<he npc_boss>> glances over your sleek chastity belt<<else>><<his npc_boss>> eyes dip between your legs<</if>>. "@@.npc_boss;So sleek, she must have had some work done. Very proper, it is so useful for there to be a third hole to fuck, practically a 50% productivity boost!@@"
<</if>>
<br><br>
<<if $player.flags.uniform_upgrade.aslutStage >= 4>>
"@@.npc_boss;I see she has mastered every part of the first stage of the Allotment for <<if $fetish.sissy>>Sissy<<else>>Secretary<</if>> Learning and Uniform Transformation program, you continue to be quite the trainer... or maybe she is just a natural slut.@@"
<<elseif $currentTasks.hasOwnProperty('task_uniform_upgrade') && $currentTasks['task_uniform_upgrade'].finished>>
"@@.npc_boss;I see you have introduced her to the Allotment for <<if $fetish.sissy>>Sissy<<else>>Secretary<</if>> Learning and Uniform Transformation program... a good start, though there remains more work yet to be done.@@"
<<else>>
"@@.npc_boss;I must say, her progression is a bit slow... you should enrol her in the Allotment for <<if $fetish.sissy>>Sissy<<else>>Secretary<</if>> Learning and Uniform Transformation to get her properly caught up.@@"
<</if>>
<br><br>
<<if $fetish.tattoos>>
<<if setup.hasTattoo()>>
<<if setup.getVisibleTattoos(false) != "">>
<<He npc_boss>> traces one of your tattoos with <<his npc_boss>> finger. "@@.npc_boss;Very nice, a bit of ink wonderfully enhances things. You are object of pleasure so becoming a living canvas is really such a natural step.@@"
<<else>>
"@@.npc_boss;I understand she has a tattoo? That is very good, though I will note that company policy says that one in your position is allowed to have visible ink, you do not need to feel limited to what can be hidden under clothing.@@"
<</if>>
<<else>>
"@@.npc_boss;I would suggest scheduling her for some ink — such an artistic way to enhance her natural beauty, maybe start with a nice tramp stamp or an owners mark?@@"
<</if>>
<br><br>
<</if>>
Taking half a step back, <<he npc_boss>> leers at you before continuing.
<<if setup.getItemObjFromType('shoes').heels.difficulty < 10>>
"@@.npc_boss;Hmm... you know, her legs would look better with some steeper heels, what she has now is certainly classy but... well, maybe she just needs more practice to feel confident in something taller?@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('bed_heels_photo')>>
<<printThought "Hmm, maybe I should ask in the mall if they anything between what I have now and full ballet mode?">>
<<elseif $currentTasks.hasOwnProperty('task_uniform_upgrade')>>
<<printThought "Hmm, maybe more A-SLUT training is the answer?">>
<<else>>
<<printThought "Hmm, I wonder where I could get steeper shoes?">>
<</if>>
<br><br>
<</if>>
"@@.npc_boss;Well, that gets us past the physical but what about the rest... how about you drop to your knees and show me what sort of a cocksucker you have developed into?@@"
<</if>>
<br><br>
You glance towards your <<=setup.getNpcName('npc_manager', 'title')>> but <<he npc_boss>> grabs your chin and forces you to face <<him npc_boss>>. "@@.npc_boss;This isn't about her. I am the CEO, but to you I might as well be <<if $npc_boss.fem>>your Goddess<<else>>God<</if>>. I am in charge... of course this is at-will employment so you COULD refuse... though it will certainly reflect badly on your manager...@@"<br>
<br>
[<<moveTo "event_party_first_4" "Do as commanded." 120 "<<set $scene.obey = true>>">>]<br>
[<<moveTo "event_party_first_4" "Refuse." 120 "<<set $scene.obey = false>>">>]
</div>/*#
#desc: choice to suck npc_boss at first party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_retreat_1'
0
'event_manager_theme_retreat_1'
true
>>
<<if $scene.obey>>
<<set $npc_boss.flags.firstBlowjob = 1>>
<<set $npc_boss.flags.hasBlown = true>>
<<applyExperience 'submission' 13 'normal' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_manager","npc_manager_formal") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
All eyes are on you as you take a deep breath and slide to your knees. Though <<his npc_boss>> pants bulge, <<=ps(setup.getNpcName('npc_boss', 'formal'))>> hands remain on <<his npc_boss>> hips as <<he npc_boss>> makes no motion to assist, leaving you to do all of the work.<br>
<br>
[<<moveTo "event_party_first_4_suck_1" "Get things over with quickly." 300 "<<set $scene.quickbj = true>>">>]<br>
[<<moveTo "event_party_first_4_suck_1" "Put on a show." 300 "<<set $scene.quickbj = false>>">>]
<<else>>
<<His npc_boss>> offer may not be a surprise after the things you have had to do at this "job" but there are limits and you cross your arms and shake your head. <<He npc_boss>> frowns, giving you a few moments to change your mind before looking towards your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_boss;It would appear that she has more to learn yet, how about you show her how its done?@@" <<he npc_boss>> adds to <<=setup.getNpcName('npc_secretary', 'first')>> who smoothly slides to her knees, unzipping <<him npc_boss>> and silently wrapping her lips around <<his npc_boss>> cock.<br>
<br>
"@@.npc_boss;See? Your prior ward knows how to do things, you had best get this new secretary whipped into shape or next week? Well, next week either she eagerly sucks me off and gratefully swallows my blessing... or you do. And, besides, you would not want to show up to the corporate retreat with an insufficiently prepared assistant.@@"<br>
<br>
Your heart skips a beat at what <<he npc_boss>> just said but <<=setup.getNpcName('npc_manager', 'formal')>> remains stoic and expressionless. "@@.npc_manager;If that will be all? I really did wish to spend some time at the party.@@" Though her tone remains even, you can feel the tension filling the room, your heart racing as you witness for the first time someone utterly unafraid of your <<=setup.getNpcName('npc_manager', 'title')>>, though that fact seems to do everything but put you at ease.<br>
<br>
"@@.npc_boss;Of course, you are my guests, after all only... do remember your place... both of you.@@"<br>
<br>
Making no reply, <<=setup.getNpcName('npc_manager', 'formal')>> merely takes you by the arm and leads back to the elevator. As you turn and the doors close, you find yourself looking back at <<=setup.getNpcName('npc_boss', 'formal')>>, an evil, satisfied grin on <<his npc_boss>> face, one hand now casually resting on <<=ps(setup.getNpcName('npc_secretary', 'first'))>> head as she continues to suck.<br>
<br>
You cannot think of what to say, particularly in the presence of the elevator attendant, instead staring at your and <<=ps(setup.getNpcName('npc_manager', 'formal'))>> reflections as you would swear there is a note of fear and the hint of a tear in the corner of her eye.<br>
<br>
Her mask returns by the time the doors open and she strides out into the ballroom, assured and confident with you in tow.<br>
<br>
[<<moveTo "event_party_first_6" "Back to the party." 120>>]
<</if>>
</div>/*#
#desc: suck off npc_boss before party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.quickbj>>
<<applyExperience 'oral' $npc_boss.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'oral' $npc_boss.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 17 'terrible' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'terrible' $SEEN_FRIEND>>
<</if>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_boss'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "obedient">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.quickbj>>
Unzipping <<his npc_boss>> trousers to reveal a substantial <<getWordPenis "npc_boss">>, you immediately set to work with hands and lips,
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
massaging <<his npc_boss>> balls as you casually deep throat <<him npc_boss>>, moving smoothly up and down <<his npc_boss>> length as you suck and lick.
<<else>>
massaging <<his npc_boss>> balls as you work your way up to a full deep throat, holding for a moment to show that you can do it before falling back on a bob and suck.
<</if>>
<br><br>
"@@.npc_boss;Once again you seem to have turned out quite a talented cocksucker, but what's one lovely slut at your feet when you can have two? <<=setup.getNpcName('npc_secretary', 'first')>>! Get over here and lend your lips, I want a comparison between the old model and the new hotness.@@"
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<His npc_boss>> <<getWordPenis "npc_boss">> on the large side you use one hand to stroke while you suck on <<his npc_boss>> head, barely able to get half of <<him npc_boss>> past your lips no matter how hard you try.
<<else>>
<<Hes npc_boss>> almost too big for you to comfortably fit in your hand so you stick to running your tongue along the underside of <<his npc_boss>> shaft and beneath <<his npc_boss>> hood as you double-fist stroke <<his npc_boss>> full length.
<</if>>
<br><br>
With a grunt <<he npc_boss>> expresses <<his npc_boss>> dissatisfaction. "@@.npc_boss;You did a much better job teaching your previous subordinate the proper use for her face hole. <<=setup.getNpcName('npc_secretary', 'first')>>! Get over here and show this dumb slut what a proper pair of lips can do!@@"
<</if>>
<<else>>
Looking lustily up at <<him npc_boss>>, you use your teeth to gently pull down <<his npc_boss>> zipper to carefully reveal the full glory of <<his npc_boss>> large cock and heavy balls. A few gentle strokes is enough to have <<him npc_boss>> at full hardness and you rub your cheek against <<him npc_boss>>, whispering how wonderful <<he npc_boss>> is and how hungry you are for <<his npc_boss>> cum.<br>
<br>
Smiling slightly, <<he npc_boss>> turns to <<=setup.getNpcName('npc_manager', 'formal')>> with a nod. "@@.npc_boss;Looks like you've raised up another true cock lover but let's see if she can back up her words with action.@@"<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Responding to <<his npc_boss>> encouragement
<<if setup.getTotalValue("oral") > 15>>
you swallow <<him npc_boss>> to the root with one gulp, humming as you hold <<him npc_boss>> in your throat and then slowly pulling back with full suction until <<he npc_boss>> pops free.
<<else>>
you slowly work <<him npc_boss>> past your lips. <<Hes npc_boss>> near the limit of even your trained capacity but by remaining calm you are able to ease <<him npc_boss>> down your throat until your chin bumps against <<his npc_boss>> full balls.
<</if>>
You can tell by the look in <<his npc_boss>> eye that <<hes npc_boss>> loving this but <<he npc_boss>> manages to keep <<his npc_boss>> voice relatively even as <<he npc_boss>> waves <<=setup.getNpcName('npc_secretary', 'first')>> over.<br>
<br>
"@@.npc_boss;Now this is a true mouth fuck-hole, but why settle for one when I can have the pair? <<=setup.getNpcName('npc_secretary', 'first')>>! Get over here and lend your lips, I want a comparison between the old model and the new hotness.@@"
<<else>>
You do your best to respond to <<his npc_boss>> encouragement, substituting enthusiasm for skill
<<if setup.getTotalValue("oral") > 5>>
as you do your best to take <<his npc_boss>> large <<getWordPenis "npc_boss">>, barely able to take half <<his npc_boss>> length before you start coughing, not that your discomfort seems to concern <<him npc_boss>> in the slightest. You switch to stroking with one hand as you focus on licking and sucking <<his npc_boss>> thick head.
<<else>>
as you double fist <<his npc_boss>> shaft and slather the wet tip of <<his npc_boss>> <<getWordPenis "npc_boss">> with your tongue.
<</if>>
<br><br>
"@@.npc_boss;Enthusiastic, but unskilled. A bit disappointing, really. <<=setup.getNpcName('npc_secretary', 'first')>>! Get over here and show this dumb slut what a proper pair of lips can do!@@"
<</if>>
<</if>>
<br><br>
In a moment your predecessor is kneeling beside you, fingers entwined with your own as she presses cheek to cheek in competition to lick and suck the <<mans npc_boss>> by now saliva-slick shaft.<br>
<br>
With your forces combined, it is not long before you feel <<his npc_boss>> orgasm approaching, but rather than let you and <<=setup.getNpcName('npc_secretary', 'first')>> battle for who gets to suck out the creamy reward, <<he npc_boss>> suddenly grabs both of you by the hair, pulling you away as <<he npc_boss>> splatters a heavy load across your faces.<br>
<br>
"@@.npc_boss;That's what I like! <<=setup.getNpcName('npc_secretary', 'first')>>, clean your replacement off so she can return to the party without making any of the other <<if $fetish.sissy>>sissy <</if>>sluts jealous!@@"<br>
<br>
[<<moveTo "event_party_first_4_suck_2" "Continue." 120>>]
</div>/*#
#desc: finish sucking npc_boss before party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 10 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
With perhaps even more enthusiasm than she showed to <<=ps(setup.getNpcName('npc_boss', 'formal'))>> <<getWordPenis "npc_boss">>, <<=setup.getNpcName('npc_secretary', 'first')>> leans in to lick your face, her tongue eagerly lapping up every drop before pressing her lips to yours in a kiss as she "shares" the prize.<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<=ps(setup.getNpcName('npc_boss', 'formal'))>> <<getWordCum>> is thick and strong, even with the slight dilution of <<=ps(setup.getNpcName('npc_secretary', 'first'))>> saliva as she passes you your "share." Her tongue dances inside your mouth for several moments before she gently pulls back, returning to her feet and dancing away to stand at <<=ps(setup.getNpcName('npc_boss', 'formal'))>> side as <<=setup.getNpcName('npc_manager', 'formal')>> helps you to your feet.
<<else>>
<<if setup.getTotalValue("cum") > 5>>
<<=ps(setup.getNpcName('npc_secretary', 'first'))>> saliva hardly diminishes the heavy, salty flavour of <<=ps(setup.getNpcName('npc_boss', 'formal'))>> <<getWordCum>> but you have little choice but to choke it down, trying not to think about how easily the thick cream slides down your throat, and how accustomed you are becoming to the after-taste.
<<else>>
<<=ps(setup.getNpcName('npc_secretary', 'first'))>> saliva hardly diminishes the bitter flavour of <<=ps(setup.getNpcName('npc_boss', 'formal'))>> <<getWordCum>>, but you manage to choke it down, doing your best to clear your mouth of the disgustingly salty taste.
<</if>>
<</if>>
<br><br>
"@@.npc_boss;Well, it seems like the important lessons are coming along. Keep up the good work, <<=setup.getNpcName('npc_manager', 'Director')>>. This company can always use another perfect <<if $fetish.sissy>>SISSI <</if>>Secretary!@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> grimaces ever so slightly before responding. "@@.npc_manager;It is so good to hear that you... approve of my efforts, but we really should be making our way back to the party.@@"<br>
<br>
<<if $scene.totalsuccess && !$scene.quickbj>>
"@@.npc_boss;Of course of course though... one final thing. A reminder, really, the company retreat is coming up and I want to see the both of you there... it should prove to be quite an... interesting experience.@@" The tone of <<his npc_boss>> voice is full of foreboding, a sensation that does not in any way decrease as <<=setup.getNpcName('npc_manager', 'formal')>> gives her tense reply of "@@.npc_manager;Of course, we are looking forward to it.@@"
<<else>>
"@@.npc_boss;Ah yes, of course, go on and enjoy the festivities, but <<=$player.first_name>>?@@" You freeze as <<he npc_boss>> refers to you directly, "@@.npc_boss;Remember what I've told you — your owner took quite the risk taking on your contract and if you prove not up to the expectations for one of her esteem, well... there are less pleasant positions for a <<if $fetish.sissy>>SISSI <</if>>slut than her posh office. Plus... your manager will certainly want an assistant with her at the upcoming retreat.@@"
<</if>>
<br><br>
<<if $player.body_ref.penis && $player.body.penissize[0] > 3>>
[<<moveTo "event_secretary_style_penis_remove_obedient_1" 'Ask if the company might be able to provide a "solution" to your genital failings?' 180>>]<br>
<</if>>
[<<moveTo "event_party_first_5" 'Follow <<=setup.getNpcName("npc_manager", "formal")>> to the elevator.' 120>>]
</div>/*#
#desc: ride down to stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You gulp in fear and hurry as <<=setup.getNpcName('npc_manager', 'formal')>> pulls you along back to the elevator. Catching a final glimpse of <<=setup.getNpcName('npc_boss', 'formal')>> before the doors close, you shudder; the smug expression of self-assured power on <<his npc_boss>> face like something out of a nightmare.<br>
<br>
Perhaps due to the presence of the silent elevator attendant, <<=setup.getNpcName('npc_manager', 'formal')>> remains silent through the ride down... though she seems to be holding you just a bit tighter than she had on the way up.<br>
<br>
You stare at her reflection her expression so rigid it might well have been carved from stone, and yet you swear there is a note of fear and the hint of a tear in the corner of her eye.<br>
<br>
Her mask returns by the time the doors open and she strides out into the ballroom, assured and confident with you in tow.<br>
<br>
[<<moveTo "event_party_first_6" "Back to the party..." 120>>]
</div>/*#
#desc: start first stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.waiter_topic = []>>
<<set $scene.barkeeper_topic = []>>
<<set $scene.guest_intro = "">>
<<set $scene.guest_intro = []>>
<<set $scene.slave_topic = []>>
<<set $scene.master_topic = []>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
Still recovering from the encounter with <<=setup.getNpcName('npc_boss', 'formal')>>, you follow along like a piece of decorative arm-candy as <<=setup.getNpcName('npc_manager', 'formal')>> hob-nobs with various other senior employees of the company. A few you recognise, but many more you don't as you are reminded just how large of a company Social Interaction Service Syndicate Inc. actually is. After a while there is a brief moment alone and <<=setup.getNpcName('npc_manager', 'formal')>> turns to speak to you.<br>
<br>
"@@.npc_manager;Sorry about all that before. I had not expected <<=setup.getNpcName('npc_boss', 'formal')>> to take such direct interest at this time...@@" She pauses eyes flitting around as if concerned someone else might be listening in. "@@.npc_manager;Anyway, I can tell you are getting a bit overwhelmed, how about you take a seat at the bar and relax? I have some other business to attend to and will come back for you once I am finished.@@"<br>
<br>
You nod, the prospect of getting off your feet sounding quite appealing as you take a barstool away from anyone else and the bartender brings you a drink as <<=setup.getNpcName('npc_manager', 'formal')>> heads back into the crowd.<br>
<br>
Looking around, you try to take in the party, and this whole crazy company as you decide what you want to do while you wait for your <<=setup.getNpcName('npc_manager', 'title')>> to return.<br>
<br>
<<include event_party_first_choices>>
</div>/*#
#desc: first stage 3 party menu
#status: RELEASED 0.7.8.0
#*/
<<if $scene.waitstaff>>
[@@.link_locked;You have already tried talking to one of the waitstaff.@@]<br>
<<else>>
[<<moveTo "event_party_first_waiter_1" "Try to talk with one of the waitstaff." 600 "<<set $scene.waitstaff=true>>">>]<br>
<</if>>
<<if $scene.barkeeper>>
[@@.link_locked;You have already talked to the barkeeper.@@]<br>
<<else>>
[<<moveTo "event_party_first_barkeeper_1" "Talk to the barkeeper." 600 "<<set $scene.barkeeper=true>>">>]<br>
<</if>>
<<if $scene.guest>>
[@@.link_locked;You have already tried mingling with guests.@@]<br>
<<else>>
[<<moveTo "event_party_first_manager_1" "Try and talk to one of the other party guests." 600 "<<set $scene.guest=true>>">>]<br>
<</if>>
[<<moveTo "event_party_first_wait" "Wait at the bar for your manager to return." 1800>>]/*#
#desc: stage 3 party waiter talk options
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_maid">>
<div id="invframe" class="scrolltext">
You approach one of the waitresses, noting as you do that there is a definite collar locked around her throat.<br>
<br>
"@@.generic_female1;Hello, Miss — is there any service I can provide you?@@" The woman asks formally, her voice a little breathless, perhaps due to her stringently tight outfit.<br>
<br>
<<include "party_1_waiter_topics">>
</div><<if !$scene.waiter_topic.includes('party')>>
[<<moveTo "event_party_first_waiter_2" "Ask her about the party." 300 "<<set $scene.topic='party'>>">>]<br>
<</if>>
<<if !$scene.waiter_topic.includes('eat')>>
[<<moveTo "event_party_first_waiter_2" "Ask for something to eat." 300 "<<set $scene.topic='eat'>>">>]<br>
<</if>>
<<if !$scene.waiter_topic.includes('service')>>
[<<moveTo "event_party_first_waiter_2" 'Ask for some "special" service.' 300 "<<set $scene.topic='service'>>">>]<br>
<</if>>
<br>
<<if $scene.waiter_topic.includes('party') && $scene.waiter_topic.includes('eat') && $scene.waiter_topic.includes('service')>>
With an agile twirl, she turns smartly on her steep heels and walks off to assist another guest.<br>
<br>
<</if>>
<<include event_party_first_choices>>/*#
#desc: stage 3 party waiter talk
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.topic == "eat">>
<<applyExperience 'cum' 7 'little' $INCOGNITO>>
<</if>>
<<set $scene.waiter_topic.push($scene.topic)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "party_maid">>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'party'>>
You ask her what she thinks about the party and she just smiles. "@@.generic_female1;Just another event at which I am happy to be of service!@@"<br>
<br>
Her delivery is a bit odd, but continued prodding on your part fails to draw any further details from her about the nature of the party.
<<case 'eat'>>
You ask for something to eat and she gracefully swings the tray she is carrying towards you. "@@.generic_female1;I recommend the caviar and blue cheese, nice and salty and fresh!@@"<br>
<br>
You take one of the small canapes and eat it in one bite. The flavour is strong, pungent and salty
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
and reminiscent of that most heavenly of treats — cum. Remembering your manners you barely resist devouring the entire tray.
<<else>>
reminiscent of your favourite treat — cum.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
tasting strangely reminiscent of cum, and yet somehow you find it tasty? You somewhat wonder if this was the chef's intent.
<<else>>
the flavour reminds you of something, but you can't put your finger on it, though you wonder why a chef would go so overboard on saltiness.
<</if>>
<</if>>
<br><br>
"@@.generic_female1;Yummy, isn't it? But don't ask for another, I wouldn't want to spoil your appetite for the real thing!@@"
<<case 'service'>>
With a slight smile you ask if she is available for any "special" services?<br>
<br>
Not put off in the least she merely smiles "@@.generic_female1;I guess this is your first time here? Sorry but I am not permitted to play without permission from your owner.@@"<br>
<br>
With that enigmatic comment she turns and heads off to assist another guest.
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "party_1_waiter_topics">>
</div><<if !$scene.barkeeper_topic.includes('party')>>
[<<moveTo "event_party_first_barkeeper_2" "Ask <<him>> about the party." 300 "<<set $scene.topic='party'>>">>]<br>
<</if>>
<<if !$scene.barkeeper_topic.includes('drink')>>
[<<moveTo "event_party_first_barkeeper_2" "Order a drink." 300 "<<set $scene.topic='drink'>>">>]<br>
<</if>>
<<if !$scene.barkeeper_topic.includes('service')>>
[<<moveTo "event_party_first_barkeeper_2" 'Ask for some "special" service.' 300 "<<set $scene.topic='service'>>">>]<br>
<</if>>
<br>
<<if $scene.barkeeper_topic.includes('party') && $scene.barkeeper_topic.includes('drink') && $scene.barkeeper_topic.includes('service')>>
Before you can ask any further <<he>> is distracted by another guest ordering an overly complicated cocktail and you are left alone.<br>
<br>
<</if>>
<<include event_party_first_choices>>/*#
#desc: stage 3 party barkeeper talk options
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImageGeneric("party_bartender")>>
<div id="invframe" class="scrolltext">
The barkeeper is an attractive <<man>> dressed in a <<if $options.fem>>fetishistic maid outfit which looks to be made mostly from latex<<else>>low cut vest layered over a sheer catsuit, <<his>> entire outfit made of tight, shiny latex including a bow tie<</if>>.<br>
<br>
<<include "party_1_barkeeper_topics">>
</div>/*#
#desc: stage 3 party barkeeper talk
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.barkeeper_topic.push($scene.topic)>>
<<if $scene.topic == "drink">>
<<setTmpEffect 'tipsy'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImageGeneric("party_bartender")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'party'>>
You ask the barkeeper what <<he>> thinks of the party. <<He>> shrugs.<br>
<br>
"@@.generic_male1;Just another event, really. I'm a contractor, not a full-time employee so, needless to say, this is a bit of odd requirements compared to my normal gigs, truth be told, but hey. The pay is good and I get the occasional perk at the end of the night, so can't complain.@@"
<<case 'drink'>>
You order another drink and <<he>> serves it up with a smile. After knocking it back, you find yourself feeling a touch tipsy, you should probably cut it off here.
<<case 'service'>>
You make eyes at the barkeeper but <<he>> politely smiles back and shakes <<his>> head.<br>
<br>
"@@.generic_male1;Sorry, miss, but I have to tend the bar tonight, they even locked me up to be certain!@@" To accentuate <<his>> point <<he>> taps <<his>> crotch to make a solid thunk and you wonder what sort of over-secure chastity device <<he>>'s sporting.
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "party_1_barkeeper_topics">>
</div>/*#
#desc: stage 3 party approach managers
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageGeneric("party_man_2") setup.charImageGeneric("party_man_1") "flip" "party_woman_1" "flip">>
<div id="invframe" class="scrolltext">
Walking through the party, most of the clusters of people seem pretty cliquish and closed off but you run across a group of three that do not immediately turn away at your approach. Two <<men>>, one younger and one slightly older with a woman dressed in a sexy, skimpy cocktail outfit and fashionable choker at <<his>> side. The three of them are standing together, the two <<men>> talking with each other while the <<if $options.fem>>other <</if>>woman stands silently off to the side.<br>
<br>
[<<moveTo "event_party_first_manager_2" "Approach the lone woman." 300 "<<set $scene.guest_intro='sub'>>">>]<br>
[<<moveTo "event_party_first_manager_2" "Approach the <<men>>." 300 "<<set $scene.guest_intro='men'>>">>]
</div>/*#
#desc: stage 3 party talk to managers
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageGeneric("party_man_2") setup.charImageGeneric("party_man_1") "flip" "party_woman_1" "flip">>
<div id="invframe" class="scrolltext">
<<switch $scene.guest_intro>>
<<case 'sub'>>
You approach the girl and, other than a quick glance in your direction with seeming particular focus on your throat, the <<men>> ignore you.<br>
<br>
She gives a shallow curtsy in greeting then waits for you to speak.<br>
<br>
[<<moveTo "event_party_first_manager_3_sub" "Ask her about the party." 300 "<<set $scene.topic='party'>>">>]<br>
[<<moveTo "event_party_first_manager_3_sub" "Ask about her job." 300 "<<set $scene.topic='job'>>">>]<br>
[<<moveTo "event_party_first_manager_3_sub" "Ask about herself." 300 "<<set $scene.topic='self'>>">>]
<<case 'men'>>
You approach the older of the two <<men>> and they look down at you as if waiting for you to make a "proper" greeting.<br>
<br>
[<<moveTo "event_party_first_manager_3_master_1" "Curtsy and greet them subserviently." 300 "<<set $scene.men_intro='curtsy'>>">>]<br>
[<<moveTo "event_party_first_manager_3_master_1" "Introduce yourself." 300 "<<set $scene.men_intro='normal'>>">>]<br>
[<<moveTo "event_party_first_manager_3_master_1" 'Introduce yourself on behalf of your <<=setup.getNpcName("npc_manager","title")>>.' 300 "<<set $scene.men_intro='manager'>>">>]
<<default>>
ERROR: unexpected scene.manager <<=$scene.manager>>
<</switch>>
</div>/*#
#desc: stage 3 party talk to sub
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.slave_topic.pushUnique($scene.topic)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageGeneric("party_man_2") setup.charImageGeneric("party_man_1") "flip" "party_woman_1" "flip">>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'job'>>
You ask her about her job and she smiles and straightens proudly. "@@.generic_female1;I am <<if $options.fem>>Ms<<else>>Mr<</if>>. Dehner's personal executive assistant. I take care of arranging all <<his>> appointments and helping <<him>> de-stress from <<his>> very hard... job.@@"<br>
<br>
She snuggles up against the <<man>> next to her who casually glances at her with a grin and then turns back to <<his>> conversation. She blinks at you and smiles even wider. "@@.generic_female1;Mmm, isn't <<he>> so wonderful? What could be better than to work underneath such an important <<man>>?@@"
<<case 'party'>>
You ask her about the party and she smiles. "@@.generic_female1;First time? I'd tell you to stick close to your manager but you appear to have already broken that rule. Though I suppose wearing a choker rather than a collar can make that less of a risk.@@" Catching your slightly confused expression, she shakes her head as if in amusement. "@@.generic_female1;Don't worry about it, you'll learn in time.@@"
<<case 'self'>>
You ask about herself and she shrugs. "@@.generic_female1;Oh you know how it is, just a silly girl trying to make her way in this crazy world. Never really thought my ambitions would lead me to here, but it all works out in the end, right? Just remain obedient and efficient and everything will be wonderful.@@"
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<if $scene.slave_topic.includes("party")>>
[@@.link_locked;You already talked to her about the party.@@]<br>
<<else>>
[<<moveTo "event_party_first_manager_3_sub" "Ask her about the party." 300 "<<set $scene.topic='party'>>">>]<br>
<</if>>
<<if $scene.slave_topic.includes("job")>>
[@@.link_locked;You already asked about her job.@@]<br>
<<else>>
[<<moveTo "event_party_first_manager_3_sub" "Ask about her job." 300 "<<set $scene.topic='job'>>">>]<br>
<</if>>
<<if $scene.slave_topic.includes("self")>>
[@@.link_locked;You already asked about herself.@@]<br>
<<else>>
[<<moveTo "event_party_first_manager_3_sub" "Ask about herself." 300 "<<set $scene.topic='self'>>">>]<br>
<</if>>
<br>
<<if $scene.hasOwnProperty('master_intro')>>
[@@.link_locked;You already talked to the <<men>> next to her.@@]
<<else>>
[<<moveTo "event_party_first_manager_2" "Try to talk to the <<men>> next to her." 300 "<<set $scene.guest_intro='men'>>">>]
<</if>>
<br><br>
<<include event_party_first_choices>>
</div>/*#
#desc: stage 3 party greet managers
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageGeneric("party_man_2") setup.charImageGeneric("party_man_1") "flip" "party_woman_1" "flip">>
<div id="invframe" class="scrolltext">
<<switch $scene.men_intro>>
<<case 'curtsy'>>
You approach the two <<men>> and drop into a formal curtsy. Pausing their conversation, they look you over and nod, the older one speaking first. "@@.generic_male1;Good evening, my dear, are you looking for something?@@"
<<case 'normal'>>
You approach the two <<men>> and attempt to introduce yourself but they hardly glance at you before turning away in dismissal.<br>
<br>
<<printThought "Damn... maybe if I made a better impression?">>
<<case 'manager'>>
You greet them on behalf of <<=setup.getNpcName("npc_manager","formal")>>, dropping her name seeming to instantly draw their attention.<br>
<br>
The younger <<man>> is the first to speak. "@@.generic_male1;My, my, I had heard her new assistant was quite the sight but you are even more lovely in person. So, what does she need?@@"<br>
<br>
<<printThought "Hmm, seems like her name carries a lot of weight...">>
<<default>>
ERROR: unexpected scene.master_intro <<=$scene.master_intro>>
<</switch>>
<br><br>
<<if $scene.men_intro == "normal">>
[<<moveTo "event_party_first_manager_3_master_1" "Curtsy and greet them subserviently." 300 "<<set $scene.men_intro='curtsy'>>">>]<br>
[<<moveTo "event_party_first_manager_3_master_1" 'Introduce yourself on behalf of your <<=setup.getNpcName("npc_manager","title")>>.' 300 "<<set $scene.men_intro='manager'>>">>]
<<else>>
[<<moveTo "event_party_first_manager_3_master_2" "Ask about their work." 300 "<<set $scene.topic='work'>>">>]<br>
[<<moveTo "event_party_first_manager_3_master_2" "Ask if you can do anything for them." 300 "<<set $scene.topic='help'>>">>]
<</if>>
<br><br>
<<include event_party_first_choices>>
</div>/*#
#desc: stage 3 party managers talk
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.master_topic.pushUnique($scene.topic)>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageGeneric("party_man_2") setup.charImageGeneric("party_man_1") "flip" "party_woman_1" "flip">>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'work'>>
You ask about their jobs and they quickly launch into an explanation — it appears the two of them both work for the advertising division, though they are quite coy as to what projects they have been working on — apparently it is some very "hush hush" new tech that they hope will revolutionize their marketplace... whatever market that is.
<<case 'help'>>
You ask if there is anything you could do to "help" the two <<men>> but they merely smile. "@@.generic_male1;Amusing, but you will not be tricking us to fulfilling the slutty fantasies of an uncollared slave. Speak no more of this lest we report your improper proposition to your manager for discipline.@@"
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<if $scene.master_topic.includes("work")>>
[@@.link_locked;You already talked to them about work.@@]<br>
<<else>>
[<<moveTo "event_party_first_manager_3_master_2" "Ask about their work." 300 "<<set $scene.topic='work'>>">>]<br>
<</if>>
<<if !$options.fem>>
<<if $scene.master_topic.includes("help")>>
[@@.link_locked;You already asked about helping them.@@]<br>
<<else>>
[<<moveTo "event_party_first_manager_3_master_2" "Ask if you can do anything for them." 300 "<<set $scene.topic='help'>>">>]<br>
<</if>>
<br>
<</if>>
<<if $scene.slave_topic.length > 0>>
[@@.link_locked;You already talked to the woman next to them.@@]
<<else>>
[<<moveTo "event_party_first_manager_2" "Try to talk to the nearby woman." 300 "<<set $scene.guest_intro='sub'>>">>]
<</if>>
<br><br>
<<include event_party_first_choices>>
</div>/*#
#desc: stage 3 party wait for end
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_bar.png">>
<div id="invframe" class="scrolltext">
Returning to the bar, you take a seat and wait for your <<=setup.getNpcName("npc_manager","title")>> to return. Distracted by some voyeuristic people watching, you pay little attention as a <<man>> stumbles up to the bar and takes a seat on the stool next to you.
<<if $fetish.grope && !$options.fem>>
He reeks of alcohol, wobbling slightly and then reaching around from behind to grope your chest as his nose presses into your hair and he whispers into your ear.<br>
<br>
"@@.npc_party_waitress;Hey, sugar, how about you show a fellow a good time, huh? It's a crime for such a pretty thing to be sitting here all alone...@@"<br>
<br>
[<<moveTo "event_party_first_drunk_1" "Resist his advances." 300 "<<set $scene.action='resist'>>">>]<br>
[<<moveTo "event_party_first_drunk_1" "Freeze." 300 "<<set $scene.action='freeze'>>">>]<br>
[<<moveTo "event_party_first_drunk_1" "Return his drunk proposal." 300 "<<set $scene.action='slut'>>">>]
<<else>>
<<He>> reeks of alcohol, raising <<his>> hand to get the bartender's attention then glancing at you with a leer. "@@.npc_party_waitress;And one for the little lady!@@"<br>
<br>
Continuing to try to catch your eye the <<man>> flashes a lopsided grin. "@@.npc_party_waitress;Aren't you a hot piece of tail. Haven't seen you before but you've got the type of face I'd love to wake up to.@@"<br>
<br>
[<<moveTo "event_party_first_drunk_1" "Resist <<his>> advances." 300 "<<set $scene.action='resist'>>">>]<br>
[<<moveTo "event_party_first_drunk_1" "Freeze." 300 "<<set $scene.action='freeze'>>">>]<br>
[<<moveTo "event_party_first_drunk_1" "Return <<his>> drunk proposal." 300 "<<set $scene.action='slut'>>">>]
<</if>>
</div>/*#
#desc: stage 3 party accosted by drunk
#status: RELEASED 0.7.8.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == 'slut'>>
<<applyExperience 'bimbofication' 13 'normal' $SEEN_STRANGER>>
<<changeHorny 10>>
<<else>>
<<applyStress 10>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.grope && !$options.fem>>
<<switch $scene.action>>
<<case 'resist'>>
<<if $fetish.get_raped>>
You try to pull away but <<he>> grabs you by the hair pulling you off balance back into <<him>> as he growls in your ear.<br>
<br>
"@@.npc_party_waitress;Aww, don't be like that, we're having fun, don't sluts like you like fun?@@" Still with a firm grip on your hair <<he>> leans over to force <<his>> lips against yours. <<His>> mouth is rough and tastes of alcohol, <<his>> tongue violating you as <<his>> free hands slides down your body.<br>
<br>
For a brief moment <<his>> hand is between your legs, <<if $player.body_ref.penis>>taking a firm grip of your <<getWordMyPenis>><<else>>attempting to finger you through your clothes,<</if>> only for there to be a sudden snap followed by <<his>> howl of pain as the pressure is suddenly removed.
<<else>>
You try to pull away as <<his>> hand starts to move down your body and then there is a blur followed by a sharp snap and <<his>> howl of pain.
<</if>>
<<case 'freeze'>>
The <<man>>'s strong arms pulling you closer one hand begins to roam down your body as you sit petrified.<br>
<br>
"@@.npc_party_waitress;Such a sexy slut...@@" <<he>> whispers in your ear, <<his>> breath hot and almost enough to make you drunk just from proximity.<br>
<br>
<<if $fetish.get_raped>>
You tremble as <<his>> hand slides down your body, finding its home between your legs just long enough to give your <<getWordMyPenis>> a squeeze before there is a sudden snap followed by <<his>> howl of pain as the pressure is suddenly removed.
<<else>>
You tremble in fear and then <<his>> hand is ripped away, a sharp snap followed by <<his>> howl of pain.
<</if>>
<<case 'slut'>>
Purring in arousal you lean back, offering your lips as <<he>> gives you a rough kiss, one hand roaming further down your body. You moan softly as <<his>> hand slides between your legs and gives your <<getWordMyPenis>> a friendly squeeze. "@@.npc_party_waitress;Mmm, my favourite type of surprise, you really are the hottest fucking slut here.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.action == 'slut'>>
You moan in arousal and press back into <<him>> only to be interrupted by the sharp sound of someone clearing their throat. "@@.npc_manager;A-hem. And just what do you two think you are doing?@@"<br>
<br>
You groan in frustration as his hand pulls away and <<he>> seems to sober up in an instant, looking from your <<=setup.getNpcName("npc_manager","title")>> to your neck and then stammering an excuse as <<he>> stumbles backwards.<br>
<br>
"@@.npc_party_waitress;I'm so, so sorry, I was behind her and didn't see the choker I never would have if I had known!@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> cuts <<him>> off with a dismissive wave. "@@.npc_manager;Get out of here, I will attend to you later.@@" the man wastes no time in fleeing as <<=setup.getNpcName("npc_manager","formal")>> turns towards you. You bite your lip nervously and look at the ground until she gently tilts your chin up to meet her gaze.<br>
<br>
"@@.npc_manager;You really have turned into quite the slut — I barely turn my back for a minute and you are already trawling for cock...@@" You blush as her hand slides down your neck to toy with your choker. "@@.npc_manager;Keep this up and we may have to replace this sooner than I planned, but that is another night. My business is concluded and now is time to leave. One never wants to over-stay and be the last one at a party, after all.@@"<br>
<br>
You fall in next to her as her arm wraps possessively around your shoulder. She leads the way to the elevator and the two of you are soon riding back down.
<<else>>
Looking up you find <<=setup.getNpcName("npc_manager","formal")>> standing over you, pulling you to your feet to stand at her side with one hand as she releases her grip on the <<man>>'s arm — <<his>> hand mangled and wrist bent at an unnatural angle.<br>
<br>
"@@.npc_party_waitress;What the hell was that?!@@" <<He>> shouts, cradling <<his>> crippled limb. Lashing out like a snake <<=setup.getNpcName("npc_manager","formal")>> has <<him>> by the throat, holding <<him>> aloft with one arm.<br>
<br>
"@@.npc_manager;That is what happens when you touch something that is not yours. You know the rules.@@" She sneers as she tosses <<him>> away, <<his>> body flying a good couple of meters to land in a heap as every guest in the area looks on and then quickly look away as a pair of uniformed security officers rush towards the scene.<br>
<br>
"@@.npc_manager;Everything is in hand.@@" She states, taking instant control of the situation, "@@.npc_manager;Take <<him>> down to the lab so <<he>> can... sleep off his mistake, everyone else, resume your festivities.@@"<br>
<br>
The man whimpers in pain as you catch a final glimpse of <<him>> looking back in fear as <<he>> is lead away.<br>
<br>
"@@.npc_manager;Are you okay?@@" <<=setup.getNpcName("npc_manager","formal")>> asks, her voice suddenly soft and comforting as she looks you in the eye. You nod uneasily as she wraps her arms around you, her grasp tender despite the scary display of strength moments before.<br>
<br>
"@@.npc_manager;It is alright now, <<=setup.getNpcName("npc_manager","title")>> is here to keep you safe. Now come along, my work is complete and I think that is plenty of excitement for one evening.@@"<br>
<br>
Her arm possessively around your shoulder she leads the way to the elevator and the two of you are soon riding back down.
<</if>>
<<else>>
<<switch $scene.action>>
<<case 'resist'>>
You flash an awkward smile and try to look away even as the drink <<he>> ordered appears in front of you.
<<case 'freeze'>>
<<if $options.fem>>
You keep staring straight forward hoping <<he>>'ll get the message, trying to look away even as the drink <<he>> ordered appears in front of you.
<<else>>
You keep staring straight forward hoping <<he>>'ll get the message. "@@.npc_party_waitress;Goddamn, you've gotta be one of the hottest sluts here, how 'bout we find a room and I see if I can't pop that collar?@@"
<</if>>
<<case 'slut'>>
You smile back at the <<man>> and make a show of lovingly bringing the glass to your lips
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.action == "slut">>
You're sipping your drink and composing your response when
<<else>>
Before anything further can happen,
<</if>>
you sense a sudden presence, glancing up to find <<=setup.getNpcName("npc_manager","formal")>> looming between the two of you.<br>
<br>
"@@.npc_manager;And what do you think you are doing? She is off limits. Now begone, I will deal with your digression later.@@"<br>
<br>
Sobering up in an instant, the <<man>>'s jaw flaps without any words coming out. Scrambling backwards, <<he>> barely evades falling off the stool, bowing and stuttering a mangled apology before fleeing into the crowd.<br>
<br>
Her brusque coldness disappearing in an instant <<=setup.getNpcName("npc_manager","formal")>> turns to you with a smile as she offers you her arm. "@@.npc_manager;Sorry about that. I hope you otherwise had an enjoyable time while I was attending to my matter but I believe that is all the partying that I care to do. After all, it appears that I will be expected to attend these things every week going forward — and you as well. It would seem you have made quite the impression.@@"
<</if>>
<br><br>
[<<moveTo "event_party_first_leave_1" "Continue." 300>>]
</div>/*#
#desc: stage 3 party leave
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "rhinestone_choker" true>>
<<deleteItem "rhinestone_choker">>
<<include "replacePermCollar">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
Alone in the elevator, she lets out a slow breath, her stiff shoulders relaxing for the first time since you were summoned to the meeting with <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
"@@.npc_manager;Well. That was a bit more... excitement than I had expected, and I warn you that you will be in for more as for various reasons it seems that my, or rather, our, appearance at these things will be effectively mandatory for the near future.@@"<br>
<br>
<<if $scene.totalsuccess>>
<<if $scene.quickbj || setup.getTotalValue("oral") <= 10>>
"@@.npc_manager;Well I have to hand it to you — it seems that you managed to take <<=setup.getNpcName("npc_boss","formal")>> by surprise with your loveliness... though I am sure <<he npc_boss>> took some perverse pride in yet another girl coming up short when it comes to sucking off <<his npc_boss>> cock.@@"
<<else>>
"@@.npc_manager;Well I have to hand it to you — it seems that you managed to take <<=setup.getNpcName("npc_boss","formal")>> by surprise with how quickly you have progressed, sucking <<him npc_boss>> off like that was a nice touch. <<He npc_boss>> is always humble-bragging that barely any women can take <<his npc_boss>> cock and you swallowed it like a champ.@@"
<</if>>
<br><br>
She takes a more sombre tone as she gently removes your choker<<if $player.flags.collar.collarId != "">> and replaces it with your collar. "@@.npc_manager;As promised,@@" she states with a smile.<br><br><<else>>.<</if>>
"@@.npc_manager;Of course performance only leads to greater responsibilities, there is that upcoming retreat but also you will be accompanying me to these parties every week going forward. Keep impressing me and I might give you the option of something even more... fun to wear next time.@@"
<<else>>
"@@.npc_manager;Speaking of mandatory, <<=setup.getNpcName("npc_boss","formal")>> pointed out a few holes in your training that will need to be addressed. After all, you should know by now that all of your holes are best... filled.@@"<br>
<br>
She grins at the terrible pun and then launches into a rapid-fire summary as the floors race past.<br>
<br>
<<if !$currentTasks.hasOwnProperty('task_uniform_upgrade') || !$currentTasks['task_uniform_upgrade'].finished>>
"@@.npc_manager;The best step to accelerate your development will be to enrol you in the company's Allotment for <<if $fetish.sissy>>Sissy<<else>>Secretary<</if>> Learning and Uniform Transformation program. Talk to me after work and I will lay out expectations, and how your participation will strap a rocket booster to your progression.@@"
<<else>>
<<if !setup.checkItemTypeWorn("earring")>>
"@@.npc_manager;As <<he npc_boss>> said, while your makeup has come along well your face would look better with some nice earrings to accessorise.@@"<br>
<br>
<<if setup.getItemFromType("nipple_piercing") == "">>
"@@.npc_manager;Speaking of piercings it is high time you got your nipples fixed up — it will make them far more sensitive and open up many fun options.@@"<br>
<br>
<</if>>
<<elseif setup.getItemFromType("nipple_piercing") == "">>
"@@.npc_manager;While your earrings and makeup are acceptable it is high time you got your nipples fixed up — it will make them far more sensitive and open up many fun options.@@"<br>
<br>
<</if>>
<<if !setup.getCurrentMakeup() == "moviestar">>
"@@.npc_manager;As to makeup itself, well... <<=setup.getNpcName('npc_boss', 'formal')>> is VERY particular about these sorts of things, <<his npc_boss>> preference being the look of a classical moviestar.@@"<br>
<br>
<</if>>
<<if ['medium','large'].includes(setup.calcBreastSize())>>
<<if !setup.checkItemTypeWorn("corset") || $player.timebased.tightlacing < 50>>
"@@.npc_manager;Though you have developed a quite lovely feminine figure,@@" she states giving your breasts a gentle squeeze "@@.npc_manager;Well, you could do more — a fully laced corset would be perfect, I think.@@"<br>
<br>
<</if>>
<<elseif setup.calcBreastSize() == 'massive'>>
<<if !setup.checkItemTypeWorn("corset") || $player.timebased.tightlacing < 50>>
"@@.npc_manager;<<=setup.getNpcName('npc_boss', 'formal')>> was quite correct in highlighting your lack of a properly laced corset, as to your breasts well... <<he npc_boss>> is not so much a fan of those of your scale — <<he npc_boss>> says they "unbalance" the bearer, so you would want to scale back slightly if you truly wished to impress <<him npc_boss>>.@@"
<<else>>
"@@.npc_manager;Unfortunately for you, <<=setup.getNpcName('npc_boss', 'formal')>> is not the biggest fan of breasts of your volume, <<he npc_boss>> says that they "unbalance" the bearer, so you would want to scale back slightly if you truly wished to impress <<him npc_boss>>.@@"
<</if>>
<br><br>
<<else>>
<<if !setup.checkItemTypeWorn("corset") || $player.timebased.tightlacing < 50>>
"@@.npc_manager;<<=ps(setup.getNpcName('npc_boss', 'formal'))>> preference lends towards slightly larger breasts — not too massive, but not small, either. That taste be as it may... your lack of a properly laced corset, well... there is no doubt that such would be a great boon to trimming you into a more beautiful feminine figure.@@"
<<else>>
"@@.npc_manager;When it comes to breast <<=setup.getNpcName('npc_boss', 'formal')>> is a bit of a traditionalist — <<he npc_boss>> likes them large, though not massive.@@"
<</if>>
<br><br>
<</if>>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.npc_manager;Your lack of a plug, well... that is nigh inexcusable! Why would you think that something required for your normal duties would be anything other than mandatory for a work party? That <<if $fetish.sissy>>sissy <</if>>hole of yours NEEDS to be filled — and you know it.@@"<br>
<br>
<</if>>
<<if $player.nails.style == "">>
"@@.npc_manager;Finally... your nails. I suppose you might think such to be a small thing, given your background, but every detail matters and it is high time you started doing your nails prim and proper.@@"<br>
<br>
<</if>>
"@@.npc_manager;Well, I realise that this is quite a bit of work to dump on you all of a sudden so I will not peg a precise timetable to any of it but I will expect ongoing effort.@@"
<</if>>
<br><br>
She gently removes your choker and<<if $player.flags.collar.collarId != "">>smiles as she replaces it with your collar. "@@.npc_manager;As promised,@@" she states, and<</if>> then pauses as the elevator descends.
<<if $scene.obey>>
<<if !$scene.quickbj && setup.getTotalValue("oral") > 10>>
"@@.npc_manager;In spite of the rest I will note your oral presentation went perfectly. <<=setup.getNpcName("npc_boss","formal")>> is somewhat smug about <<his npc_boss>> size, so it was just lovely to see you handle it with such skill and ease.@@"
<<elseif !$scene.quickbj>>
"@@.npc_manager;I will congratulate your effort in taking <<=ps(setup.getNpcName("npc_boss","formal"))>> member... even if you appear to lack the capacity to take it all the way down.@@"
<<elseif setup.getTotalValue("oral") > 10>>
"@@.npc_manager;I will congratulate your effort in taking <<=ps(setup.getNpcName("npc_boss","formal"))>> member... even if you appear to lack to patience to give it the time and focus such a task deserves.@@"
<<else>>
"@@.npc_manager;Your oral presentation well... it is hard to call it anything other than a failure. You have <<if $player.body_ref.vagina>>three<<else>>two<</if>> holes and <<if $player.body_ref.vagina>>all<<else>>both<</if>> of them should be skilled and trained.@@"
<</if>>
<<if !setup.hasTattoo() && $fetish.tattoos>>
<br><br>
"@@.npc_manager;Penny for your thoughts?@@" She asks as the elevator passes your normal floor and continues down towards the parking garage.<br>
<br>
[<<moveTo "event_party_first_leave_1_tattoo_1" "Remain silent." 60 "<<set $scene.askTattoo=false>>">>]<br>
[<<moveTo "event_party_first_leave_1_tattoo_1" 'Say you cannot help but think about <<=ps(setup.getNpcName("npc_boss","formal"))>> tattoo comment.' 60 "<<set $scene.askTattoo=true>>">>]
<</if>>
<<else>>
She seems about to say something about <<=ps(setup.getNpcName("npc_boss","formal"))>> final "request" but the elevator dings as you arrive at your floor and her comment remains unspoken.
<<if !setup.hasTattoo() && $fetish.tattoos>>
<br><br>
As you pass your normal work floor and continue down towards the subterranean parking garage she speaks. "@@.npc_manager;Penny for your thoughts?@@" She asks.<br>
<br>
[<<moveTo "event_party_first_leave_1_tattoo_1" "Remain silent." 60 "<<set $scene.askTattoo=false>>">>]<br>
[<<moveTo "event_party_first_leave_1_tattoo_1" 'Say you cannot help but think about <<=ps(setup.getNpcName("npc_boss","formal"))>> tattoo comment.' 60 "<<set $scene.askTattoo=true>>">>]
<</if>>
<</if>>
<</if>>
<br><br>
<<if setup.hasTattoo() || !$fetish.tattoos>>
The doors of the elevator open onto the garage and the limo waiting, <<=setup.getNpcName("npc_manager","formal")>> smiles and waves you off as you get in for the ride home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<</if>>
</div>/*#
#desc: stage 3 party leave bring up tattoo
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.askTattoo>>
You tell her you've been thinking about what sort of tattoo you might get.<br>
<br>
She smiles, her hand gently tracing a circle just below your belly button. "@@.npc_manager;Mmm... imagining bearing my mark? You know, if you wanted to get something done, we actually have a facility downstairs. We could ride down now and you could have it done this very night...@@"<br>
<br>
<<printThought "Why would a corporation need an on-site tattoo parlour? Then again, that's hardly the strangest thing about this place.">><br>
<br>
[<<moveTo "event_party_first_leave_1_tattoo_2" "Say you aren't ready and besides, it's pretty late." 600 "<<set $scene.tattoo=false>>">>]<br>
[<<moveTo "event_party_first_leave_1_tattoo_2" "Say you'd like that." 60 "<<set $scene.tattoo=true>>">>]
<<else>>
You shrug and remain silent, a minute later the doors of the elevator open onto the garage and the limo waiting, <<=setup.getNpcName("npc_manager","formal")>> smiles and waves you off as you get in for the ride home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<</if>>
</div>/*#
#desc: obedient tattoo
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.tattoo>>
Breathlessly you softly reply that you would love to bear her mark. <<=setup.getNpcName("npc_manager","formal")>> smiles and presses an elevator override.<br>
<br>
"@@.npc_manager;What a wonderful thing to hear.@@" She whispers in your ear.<br>
<br>
Your heart is suddenly in your throat, though that could be because the elevator has just accelerated downwards, descending deep beneath the building before opening on a sterile hallway. Your footfalls echo ominously as you come to a secure, heavy door where a guard nods to <<=setup.getNpcName("npc_manager","formal")>>. The door opens to reveal an ominously dark room and <<=setup.getNpcName("npc_manager","formal")>> gestures for you to enter.<br>
<br>
You glance at your <<=setup.getNpcName("npc_manager","title")>> nervously, but she smiles in comfort and leads you into the room.<br>
<br>
[<<moveTo "event_development_tattoo_obedient_1" "Follow her and look around." 600>>]<br>
<<else>>
You think about her offer but then the door opens onto the parking lot. Feeling tired you decide it would be best to head home and not make such a rash decision late at night.<br>
<br>
The limo waiting, <<=setup.getNpcName("npc_manager","formal")>> smiles and waves you off as you get in for the ride home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<</if>>
</div>/*#
#desc: initialize stage 3 party variables
#status: FINISHED 0.7.8.0
#*/
<<set $scene.discussion = {}>>
<<set $scene.discussion.npc_poker_intro_slave = []>>
<<set $scene.discussion.booth_men = []>>
<<set $scene.discussion.waitress = []>>
<<set $scene.discussion.bar = []>>
<<set $scene.discussion.rival = {}>>
<<set $scene.playedPoker = false>>
<<if !$events.hasOwnProperty('necklace_manager_arrive') && !$events.hasOwnProperty("work_party_assist_abort_end")>>
<<set _nextDate = setup.setNextDate($now, 0, 22, 0)>>
<<addEvent 'work_party_end' _nextDate>>
<<if $npc_manager.flags.party.timesAttended == 1 || random(1,2) == 1>>
<<set _spillDate to setup.setNextDate($now, 0, 20, 0)>>
<<addEvent 'party_spill_event' _spillDate>>
<</if>>
<</if>>
<<set $npc_manager.flags.party.timesAttended += 1>>
<<include "stage4AnnounceCheck">>
<<if _stage4announceReady>>
<<moveTo 'event_party_retreat_announcement_1'>>
<<elseif $npc_manager.stage >= 4 && !$npc_rival.flags.stage4_hitch && $scene.wornCollarType != "necklace" && !($workEvents.hasOwnProperty('first_hitch_intro') || $workEvents.hasOwnProperty('rival_hitch_stage4'))>>
<<moveTo 'event_party_rival_greet_1'>>
<</if>><<set _stage4announceReady = !$currentTasks.hasOwnProperty('task_corporate_retreat') && $npc_manager.stage == 3 && $npc_sissy_secretary.stage > 2 && $npc_retention.stage >= 3 && $player.flags.humiliationStyle != "" && ($npc_manager.flags.party.timesAttended > 4 || (
($player.flags.uniform_upgrade.aslutStage >= 4 || setup.checkTaskUntimedComplete('aslut_1_final')) && ($player.sec_style.clothing.tattoo || !$fetish.tattoos) && $player.sec_style.clothing.nails != "" && ($npc_boss.flags.firstBlowjob > 0 || $npc_boss.flags.managerBlowjob) && $player.sec_style.clothing.maid != ""
))>>/*#
#desc: room for stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.hasOwnProperty('discussion')>>
<<include init_party>>
<</if>>
<<if $now.getUTCHours() >= 23 || $now.getUTCHours() < 15>>
<<moveTo 'event_party_end_night'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
You look around the ballroom and consider what you want to do.<br>
<br>
<<if setup.isItemEquipped("bondage_cocktail_dress_armbinder")>>
<<if !$scene.peekedDungeon>>
You happen see a door to one side of the room that is open slightly.<br>
<br>
[<<moveTo "event_party_spill_dungeon_1" "Peek inside." 60>>]<br>
<<else>>
[@@.link_locked;You already tried peeking in on the dungeon.@@]<br>
<</if>>
[@@.link_locked;Bound as you are there is nothing for you to do at the bar.@@]<br>
<<else>>
[<<moveTo "event_party_bar" "Get a drink at the bar." 60>>]<br>
<</if>>
[<<moveTo "event_party_general" "Look for someone to talk to." 60>>]<br>
<<if $npc_poker_intro_slave.stage >=2>>
<<if $scene.playedPoker>>
[@@.link_locked;You have already tried your hand at poker this evening.@@]<br>
<<elseif $scene.hasOwnProperty('poker')>>
[@@.link_locked;You have already checked out the poker game this evening.@@]<br>
<<else>>
[<<moveTo "event_party_poker_room" "Check out the poker game." 60>>]<<if setup.isMobile()>> Some mobile devices have performance issues with poker. Options —> Stacked Images —> Disable Poker may help<<else>><<hint $options "If poker causes performance issues Options —> Stacked Images —> Disable Poker may help.">><</if>><br>
<</if>>
<</if>>
<<if $npc_manager.stage >= 4 && $player.sec_style.sex.anal>>
[<<moveTo "event_party_private_room" "Try and find some privacy." 180>>]<br>
<</if>>
<<if $player.flags.stage3party.worked_waitress>>
[<<moveTo "event_party_work_waitress_intro_1" "See if you can work as a waitress some more." 180>>]<br>
<</if>>
<<if $npc_manager.stage == 4 && (State.hasPlayed("event_cds_drinking_4") || State.hasPlayed("event_cds_drinking_noadmin_3") || State.hasPlayed("event_stage4_end_intro_ai_1"))>>
[<<moveTo "event_party_boss_elevator_1" 'Approach the elevator to <<=ps(setup.getNpcName("npc_boss","formal"))>> office.' 180>>]<br>
<<elseif $npc_manager.stage == 5>>
[@@.link_locked;The guard outside <<=ps(setup.getNpcName("npc_boss","formal"))>> private elevator glares at you menacingly until you turn away.@@]<br>
<</if>>
[<<moveTo "event_party_root" "Wait around." 1200>>]<br>
<<if $events.hasOwnProperty('necklace_manager_arrive')>>
[@@.link_locked;It would be rude to leave before <<=setup.getNpcName("npc_manager","formal")>> has made her entrance.@@]<br>
<<else>>
<<if $events.hasOwnProperty('work_party_data_crystal_end')>>
[<<moveTo "event_party_data_crystal_end_1" 'Find <<=setup.getNpcName("npc_manager","formal")>> and ask to leave.' 600>>]
<<elseif $now.getUTCHours() < 20 && !(setup.checkItemWorn('bondage_cocktail_dress_armbinder') || setup.checkItemWorn('bondage_cocktail_dress')) && !$scene.spill>>
[<<moveTo "event_party_spill_0_alt" 'Find <<=setup.getNpcName("npc_manager","formal")>> and ask to leave.' 600>>]<br>
<<else>>
[<<moveTo "event_party_early_end" 'Find <<=setup.getNpcName("npc_manager","formal")>> and ask to leave.' 600>>]<br>
<</if>>
<</if>>
</div>/*#
#desc: talk with people at stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
You look around for someone to talk to. Despite the skimpy outfits and bondage collars on some of your fellow "subordinates" most of the party blurs together in a generic posh corporate mass but you see a couple individuals and groups that might be interesting.<br>
<br>
<<if setup.isItemEquipped("bondage_cocktail_dress_armbinder")>>
Somewhat surprisingly almost nobody seems to pay particular attention to the fact that your unique dress has your arms bound behind your back.
<<if setup.checkItemTypeWorn("bondagegear") && !setup.checkItemInInventory('party_data_crystal')>>
There is one <<man>>, however that is staring directly at you and making a discreet motion for you to come over to <<him>>.
<</if>>
<br><br>
<</if>>
<<if $scene.discussion.waitress.includes("talk")>>
[@@.link_locked;You have already visited with the waitress this evening.@@]<br>
<<else>>
<<switch $npc_party_waitress.stage>>
<<case 0>>
[<<moveTo "event_party_waitress_1" "A wobbly, strangely familiar-looking waitress." 60>>]<br>
<<case 1>>
[<<moveTo "event_party_waitress_2" 'The nervous, but slightly less unsteady "waitress."' 60>>]<br>
<<case 2>>
[<<moveTo "event_party_waitress_3" 'Your "waitress" friend.' 60>>]<br>
<<case 4 5 6>>
<<if $npc_manager.stage >= 4 && !State.hasPlayed("event_party_waitress_5_3")>>
[<<moveTo "event_party_waitress_5_1" 'Your waitress friend.' 60>>]<br>
<<else>>
[<<moveTo "event_party_waitress_4" 'Your waitress friend.' 60>>]<br>
<</if>>
<<case 3>>
[@@.link_locked;You look around for the "waitress" you've chatted with before, but "she" is nowhere to be found.@@]<br>
<</switch>>
<</if>>
[<<moveTo "event_party_manager_1" 'Go looking for <<=setup.getNpcName("npc_manager","formal")>>.' 60>>]<br>
<<switch $npc_poker_intro_slave.stage>>
<<case 0>>
[<<moveTo "event_party_poker_intro_1" "An elegantly dressed woman wearing an eye-catching heavy gilded collar." 60>>]<br>
<<case 1 2>>
[<<moveTo "event_party_poker_intro_1" '<<=setup.getNpcName("npc_poker_intro_slave","formal")>> wearing her gilded collar standing by herself.' 60>>]<br>
<<case 3>>
[<<moveTo "event_party_poker_intro_1" '<<=setup.getNpcName("npc_poker_intro_slave","formal")>> wearing her gilded collar standing with her owner, <<=setup.getNpcName("npc_pokerman","formal")>>.' 60>>]<br>
<<default>>
ERROR: unexpected npc_poker_intro_slave.stage <<=$npc_poker_intro_slave.stage>><br>
<</switch>>
<<if $scene.discussion.booth_men.includes('left')>>
[@@.link_locked;The <<men>> at the booth seem very engrossed in their discussion, their female slave/assistant nowhere to be seen.@@]<br>
<<else>>
[<<moveTo "event_party_men_1" "Some important-looking <<men>> sitting at a booth." 60>>]<br>
<</if>>
<<if $scene.wornCollarType == "necklace">>
<<if $scene.listen_rival>>
[@@.link_locked;You already chatted with <<=setup.getNpcName("npc_rival","formal")>> this evening.@@]<br>
<<elseif !State.hasPlayed("event_nintendolls_destroy_14")>>
[<<moveTo "event_party_necklace_rival_1" 'You spy <<=setup.getNpcName("npc_rival","formal")>> standing with <<his npc_rival>> assistant.' 60>>]<br>
<</if>>
<<elseif !$player.flags.data_crystal.got>>
<<if setup.isItemEquipped("bondage_cocktail_dress_armbinder")>>
[<<moveTo "event_party_secretive_man_1" "The <<man>> looking directly at you who is subtly waving you over." 60>>]<br>
<<elseif setup.isItemEquipped("bondage_cocktail_dress")>>
[<<moveTo "event_party_secretive_man_1" "A <<man>> who looks at your dress for a curious moment then resumes scanning <<his>> gaze across the party." 60>>]<br>
<<else>>
[<<moveTo "event_party_secretive_man_1" "A <<man>> who seems to be scanning the party as if looking for someone." 60>>]<br>
<</if>>
<<elseif $player.flags.data_crystal.video>>
<<if !$npc_rival.flags.evesdrop>>
<<if $scene.listen_rival>>
[@@.link_locked;You already tried to listen in on <<=setup.getNpcName("npc_rival","formal")>>, attempting again would only draw suspicion and get you in trouble.@@]<br>
<<else>>
[<<moveTo "event_party_rival_1" 'You spy <<=setup.getNpcName("npc_rival","formal")>> talking to the <<man>> <<he npc_rival>> was conspiring with in the video on the data crystal.' 60>>]<br>
<</if>>
<<elseif !$npc_rival.flags.met_necklace>>
<<if $scene.listen_rival>>
[@@.link_locked;You already chatted with <<=setup.getNpcName("npc_rival","formal")>> this evening.@@]<br>
<<else>>
[<<moveTo "event_party_necklace_rival_1" 'You spy <<=setup.getNpcName("npc_rival","formal")>> standing with <<his npc_rival>> assistant.' 60>>]<br>
<</if>>
<<else>>
[@@.link_locked;You can see no sign of <<=setup.getNpcName("npc_rival","formal")>> or <<his npc_rival>> co-conspirator.@@]<br>
<</if>>
<<elseif setup.checkItemInInventory('party_data_crystal')>>
[@@.link_locked;You can see no sign of the strange <<man>> who slipped you the data crystal.@@]<br>
<</if>>
<br>
[<<moveTo "event_party_root" "Do something else." 60>>]
</div><<if $scene.partyTempCollar>>
<<if setup.checkItemWorn($scene.partyTempCollar)>>
<<removeItem $scene.partyTempCollar true>>
<</if>>
<<if $scene.partyTempCollar == "rhinestone_choker">>
<<deleteItem "rhinestone_choker">>
<</if>>
<</if>>
<<include "replacePermCollar">><<set $scene.replaceCollar = $player.flags.collar.owner != "" && setup.getItemFromType("choker") != $player.flags.collar.collarId>>
<<if $scene.replaceCollar>>
<<if !setup.checkItemOwned($player.flags.collar.collarId)>>
<<addItem $player.flags.collar.collarId>>
<</if>>
<<wearItem $player.flags.collar.collarId true>>
<</if>>/*#
#desc: end of night go home stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.woreDress = false>>
<<if setup.isItemEquipped("bondage_cocktail_dress_armbinder")>>
<<set $scene.woreDress = true>>
<<removeItem 'bondage_cocktail_dress' true>>
<<deleteItem 'bondage_cocktail_dress'>>
<<removeItem 'bondage_cocktail_dress_armbinder' true>>
<<deleteItem 'bondage_cocktail_dress_armbinder'>>
<<removeItem 'fancy_steel_collar' true>>
<<deleteItem 'fancy_steel_collar'>>
<<useClothSetPop 'tmp'>>
<<elseif setup.isItemEquipped("bondage_cocktail_dress")>>
<<set $scene.woreDress = true>>
<<removeItem 'bondage_cocktail_dress' true>>
<<deleteItem 'bondage_cocktail_dress'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<include "endOfPartyCollar">>
<<if setup.inPassageTag($scene.beforetasklocation.last(),"poker")>>
<<addCredits $scene.poker.chips.mc>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<if setup.inPassageTag($scene.beforetasklocation.last(),"poker")>>
You are focused on the game and almost jump when <<=setup.getNpcName("npc_manager","formal")>> interrupts you.<br>
<br>
"@@.npc_manager;There you are! I hate to break up your fun but I am afraid that it is time to go.@@"<br>
<br>
<<if $scene.poker.chips.mc > 0>>
She waits impatiently as things are cashed out and then you are on your way, none of the players even comment on the fact that she interrupted the hand, a testament to the sort of authority she wields at the company.
<</if>>
<<else>>
Things are starting to slow down when <<=setup.getNpcName("npc_manager","formal")>> reappears. She lets out an exasperated sigh as she takes you by the arm.<br>
<br>
"@@.npc_manager;Come along, I have had quite enough meet and greet for one week and I want to be out of here before I get cornered by someone truly insufferable.@@"<br>
<br>
<<if $scene.woreDress>>
Swinging by the cloakroom she has you remove your "dress" and changes you back into the clothes<<if $scene.replaceCollar>> and collar<</if>> you came in, explaining that borrowing in an emergency is one thing but she will not condone blind theft.<br>
<br>
<<elseif $scene.replaceCollar>>
She pauses as you wait for the elevator to replace your proper collar around your throat.
<</if>>
The two of you ride the elevator down and she wishes you good night <<if $scene.replaceCollar>>and replaces your collar <<elseif $scene.partyTempCollar != "">>and takes back the choker she loaned you <</if>>before sending you home in a limo.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: stage 3 party approach men
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$scene.discussion.booth_men.includes('intro')>>
<<if $scene.first>>
<<set $scene.discussion.booth_men.pushUnique('intro')>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You spot a couple of <<men>> sitting around a booth chatting. As you walk closer <<if $options.fem>>another<<else>>a<</if>> woman crawls out from under the table and takes a position standing to the side.
<<else>>
You walk back over to the booth where two <<men>> are chatting with a collared subordinate standing nearby.
<</if>>
<br><br>
[<<moveTo "event_party_men_1_slave" "Talk to the girl from under the table." 60>>]<br>
[<<moveTo "event_party_men_1_talk" "Try to talk to the <<if $options.fem>>executives<<else>>men<</if>>." 60>>]
</div>/*#
#desc: stage 3 party approach men's slave
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "collared_subordinate">>
<div id="invframe" class="scrolltext">
You approach the collared subordinate. She is dressed fashionably, but not in as revealing of attire as many of the women at the party. Finishing fixing her makeup in a hand mirror, she glances at your throat.<br>
<br>
<<switch $scene.wornCollarType>>
<<case 'ring'>>
"@@.generic_female1;Hello, sister,@@" she states with a friendly smile. "@@.generic_female1;And how is your service doing this fine evening?@@"<br>
<br>
[<<moveTo "event_party_men_1_slave_friendly" "Ask about her." 60>>]<br>
[<<moveTo "event_party_men_1_slave_tips" "Ask if she has any tips for the party." 60>>]<br>
<<case 'collar'>>
<<if $scene.discussion.booth_men.includes('suck')>>
Though her gaze flicks towards your collar she nods in greeting. "@@.generic_female1;I suppose thanks are in order. I managed to beg off complaining of a sore jaw but I don't doubt I would have been crawling back under before long if you hadn't helped out. For a tourist you aren't half bad.@@"<br>
<br>
[<<moveTo "event_party_men_1_slave_friendly" "Ask about her." 60>>]<br>
[<<moveTo "event_party_men_1_slave_tips" "Ask if she has any tips for the party." 60>>]<br>
<<if $npc_manager.stage < 4>>
[<<moveTo "event_party_men_1_slave_retreat" "Ask if she knows anything else about the upcoming retreat." 60>>]<br>
<</if>>
<<else>>
She sighs as she notes your collar, giving you an off-hand greeting. "Hello." <br>
<br>
[<<moveTo "event_party_men_1_slave_problem" "Ask if there is a problem." 60>>]<br>
<</if>>
<<case 'choker'>>
She frowns, her words clipped. "@@.generic_female1;Hello, I'm kind of busy right now.@@"<br>
<br>
<<case 'necklace'>>
She looks at you with a note of suspicion but nonetheless curtsies. "@@.generic_female1;Hello, Mistress, can this slave do anything for you this evening?@@"<br>
<br>
TODOfuture
<<default>>
ERROR unexpected scene.worn collar: <<=$scene.wornCollarType>>
<</switch>>
[<<moveTo "event_party_root" "Walk away and do something else." 60>>]
</div>/*#
#desc: stage 3 party slave rebuffs you
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
Somewhat put off by her demeanour you ask if there's a problem.<br>
<br>
"@@.generic_female1;Problem? Yeah, you could say that — problem of horny tourists who don't know a thing about the true meaning of submission butting in on things. Sorry, but I'm really not interested.@@"<br>
<br>
[<<moveTo "event_party_root" "Walk away and do something else." 60>>]
</div>/*#
#desc: stage 3 party slave gives tip
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
You ask if she has any recommendations concerning the party.<br>
<br>
"@@.generic_female1;Yeah, stick near your owner and keep your head down.@@" She laughs. "@@.generic_female1;Sorry — I know some enjoy the whole "public slave" thing, but I'm more of a private girl so these parties are not exactly the highlight of my week.@@"<br>
<br>
[<<moveTo "event_party_root" "Walk away and do something else." 60>>]
</div>/*#
#desc: stage 3 party slave chat
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
You ask how she's doing and she shrugs.<br>
<br>
"@@.generic_female1;Oh you know how it is, another day a slave. Not that I don't enjoy it, mind but... well, I'm more of a private girl, as much as my manager may enjoy strutting me in public it just doesn't really do anything for me.@@"<br>
<br>
[<<moveTo "event_party_root" "Thank her for her time and do something else." 60>>]
</div>/*#
#desc: stage 3 party walk away from slave
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.booth_men.pushUnique('left')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
You ask the girl if she knows anything about the upcoming retreat. She thinks for a moment before leaning in close. "@@.generic_female1;So this is just between us but I kind of owe you a bit so... heads up. Your boss, <<=setup.getNpcName("npc_manager","other")>>? Well, her ambitions haven't made her the most popular woman, if you know what I mean. Apparently her being down on floor fifty-two rather than up with the rest of upper management has some folks concerned that she might be plotting and they're planning on using the event to deal with her. If I were you I'd put my feelers out for alternate ownership, better to be traded now than parted out to who knows who later.@@"<br>
<br>
You don't have an opportunity to ask more as one of the <<men>> calls the girl to fetch a drink and she hurries off to the bar.<br>
<br>
[<<moveTo "event_party_root" "Do something else." 60>>]
</div>/*#
#desc: stage 3 party talk to men
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.wornCollarType>>
<<case 'ring'>>
You approach the <<men>> but they barely glance at your collar before one of them waves you on. "@@.generic_male1;Sorry, dear, but I'm not interested in asking permission to play with someone else's toy.@@"<br>
<br>
<<case 'collar'>>
<<if $scene.discussion.booth_men.includes('suck')>>
You approach the satisfied looking <<men>> but they wave you off. "@@.generic_male1;We're good now, thanks.@@"<br>
<br>
<<else>>
You approach the <<men>> who glance at your collar before one of them nods. "@@.generic_male1;Yes, are you looking for something?@@"<br>
<br>
[<<moveTo "event_party_men_1_talk_offer_1" "Ask if you could do something for either of them?" 60>>]<br>
<</if>>
<<case 'choker'>>
You approach the <<men>> but they barely glance at your choker before waving you off. "@@.generic_male1;Sorry, not interested.@@"<br>
<br>
<<case 'necklace'>>
You approach the <<men>> but they barely glance at your necklace before waving you on. "@@.generic_male1;We're in the middle of some business here, if you don't mind?@@"<br>
<br>
<<default>>
ERROR unexpected scene.worn collar: <<=$scene.wornCollarType>>
<</switch>>
[<<moveTo "event_party_root" "Move along." 60>>]
</div>/*#
#desc: stage 3 party offer to help men
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
Four hungry eyes scan up and down your body.<br>
<br>
"@@.generic_male1;Yeah, that you could, how about you put those lips of yours to use on my friend here while we continue our conversation?@@"<br>
<br>
[<<moveTo "event_party_men_1_slave" "Talk to the woman standing nearby." 60>>]<br>
[<<moveTo "event_party_men_1_talk_offer_2" "Crawl under the table." 60 "<<set $scene.suck = true>>">>]<br>
</div>/*#
#desc: stage 3 party suck men off
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.booth_men.pushUnique('suck')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
You crawl under the table as the <<men>> continue their conversation, one of them helpfully spreading <<his>> legs and unzipping <<his>> fly to reveal a half-hard <<getWordPenis>>.<br>
<br>
You start sucking as you listen in on the conversation.
<<if $npc_manager.stage == 5>>
You can sense fear in their voice, it would seem that they are starting to realise that, <<=ps(setup.getNpcName("npc_boss","formal"))>> long-term plans are likely to see everyone other than <<him>> enslaved in some manner.
<<elseif $npc_manager.stage == 4>>
Their words seem to reinforce <<=ps(setup.getNpcName("npc_manager","formal"))>> suspicions as it seems like the two <<men>> consider it just a matter of time before she falls afoul of upper-floor political machinations.
<<else>>
You don't quite have all the context but it seems that they are discussing their plans for the upcoming corporate retreat, and how they plan to use the opportunity to "deal with" some of their competition in corporate power plays.
<</if>>
<br><br>
Unfortunately for your burgeoning career as a spy the <<guy>> in your mouth is a bit of a minute-<<man>> and <<he>> spurts
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
delicious
<<else>>
tasty
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
salty
<<else>>
bitter
<</if>>
<</if>>
<<getWordCum>> across your tongue and pushes you away before you can get any more details.<br>
<br>
<<printThought "I wonder if <<his>> assistant might be willing to share more?">><br>
<br>
Crawling out from under the table you fix your clothes, the two <<men>> not even bothering to thank you for your efforts.<br>
<br>
[<<moveTo "event_party_root" "Move along." 60>>]
</div>/*#
#desc: find manager to go home early
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$events.hasOwnProperty('work_party_data_crystal_end')>>
<<removeEvent 'work_party_end'>>
<<set $scene.woreDress = setup.isItemEquipped("bondage_cocktail_dress")>>
<<if $scene.woreDress>>
<<removeItem 'bondage_cocktail_dress' true>>
<<deleteItem 'bondage_cocktail_dress'>>
<</if>>
<<set $scene.armbinder = setup.isItemEquipped("bondage_cocktail_dress_armbinder")>>
<<if $scene.armbinder>>
<<removeItem 'bondage_cocktail_dress_armbinder' true>>
<<deleteItem 'bondage_cocktail_dress_armbinder'>>
<<removeItem 'fancy_steel_collar' true>>
<<deleteItem 'fancy_steel_collar'>>
<</if>>
<<if $scene.woreDress || $scene.armbinder>>
<<set $clothSetsInt.tmp.data.delete('rhinestone_choker')>>
<<useClothSetPop 'tmp'>>
<</if>>
<<include "endOfPartyCollar">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
<<if $events.hasOwnProperty('work_party_data_crystal_end')>>
You go searching for <<=setup.getNpcName("npc_manager","formal")>> before anyone else "recognises" you, spotting her across the room talking to someone.<br>
<br>
[<<moveTo "event_party_data_crystal_end_1" "Walk over to her." 120 "<<set $scene.approach=true>>">>]<br>
[<<moveTo "event_party_root" "On second thought, go back to the party." 60>>]
<<elseif $scene.woreDress>>
You go looking for <<=setup.getNpcName("npc_manager","formal")>> and find her just as she is wrapping up a conversation.
<<if $scene.armbinder>>
She looks down at you with a raised eyebrow. "@@.npc_manager;And what trouble did YOU get into?@@" You blush and explain the situation with the spill and getting tricked by the waitress.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sighs, though seemingly more in amusement than frustration. "@@.npc_manager;You really must be more careful at these things. Come, let us retrieve your things.@@"
<<else>>
She looks down at you with a raised eyebrow. "@@.npc_manager;Let me guess, had a bit of a spill and borrowed something from the lost and found?@@" You sheepishly nod and she shakes her head.<br>
<br>
"@@.npc_manager;I see, well, in that case, we had better get you changed. As lovely as you look in that number it is not yours so we really should go return it before we leave.@@"
<</if>>
She leads you back to the lost and found to supervise you removing the leather dress<<if $scene.armbinder>> and the rest<</if>><<if $scene.replaceCollar>>, your proper collar back where it belongs around your throat<</if>>.<br>
<br>
Though your previous outfit has dried, the stain is quite unseemly and she quickly hustles you down the elevator and sends you home in a private limo.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<<else>>
You go looking for <<=setup.getNpcName("npc_manager","formal")>>. She ends up spotting you first, as it seems you are providing an excuse for her to exit a conversation she was no longer interested in. You explain that you would like to go and she seems almost grateful, heading straight for the elevator <<if $scene.replaceCollar>>where she replaces your collar <<elseif $scene.partyTempCollar != "">>where she reclaims the choker she loaned you <</if>>and then has you zipping home in a limo.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
<</if>>
</div>/*#
#desc: stage 3 party track down manager
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<if $now.getUTCHours() < 20 || setup.isItemEquipped("bondage_cocktail_dress_armbinder") && !setup.checkItemOwned('party_data_crystal')>>
<<createAdvBGR "./images/locations/ballroom.png">>
<<else>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $events.hasOwnProperty('work_party_data_crystal_end')>>
You go searching for <<=setup.getNpcName("npc_manager","formal")>> before anyone else "recognises" you, spotting her across the room talking to someone.<br>
<br>
[<<moveTo "event_party_data_crystal_end_1" "Walk over to her." 120 "<<set $scene.approach=true>>">>]<br>
[<<moveTo "event_party_root" "On second thought, go back to the party." 60>>]
<<elseif setup.isItemEquipped("bondage_cocktail_dress_armbinder") && !setup.checkItemOwned('party_data_crystal')>>
You go looking for <<=setup.getNpcName("npc_manager","formal")>> but are unable to locate her. You notice the strange <<man>> getting increasingly frantic in <<his>> attempts to get your attention.<br>
<br>
<<printThought "Maybe I should see what <<he>> wants? My collar marks me as owned and so long as I stay in public I'm safe, right?">><br>
<br>
[<<moveTo "event_party_secretive_man_1" "The <<man>> looking directly at you who is subtly waving you over." 60>>]<br>
[<<moveTo "event_party_root" "Back to the party." 60>>]
<<elseif $now.getUTCHours() < 20>>
You go looking for <<=setup.getNpcName("npc_manager","formal")>> but are unable to find her, she must be still busy with private business.<br>
<br>
<<printThought "Guess I should take the opportunity to poke around a bit more.">><br>
<br>
[<<moveTo "event_party_root" "Back to the party." 60>>]
<<else>>
After some wandering around, you manage to find your <<=setup.getNpcName("npc_manager","title")>>. Noticing her attention, the person she is talking to politely excuses themselves and she turns to you with a raised eyebrow.<br>
<br>
"@@.npc_manager;Yes? How are you enjoying the party.@@"<br>
<br>
[<<moveTo "event_party_manager_leave" "Say you're ready to leave." 120 "<<removeEvent 'work_party_end'>>">>]<br>
[<<moveTo "event_party_manager_2" "Ask if you can do anything for her?" 120 "<<set $scene.help=true>>">>]<br>
[<<moveTo "event_party_manager_2" "Say you were just checking in." 120 "<<set $scene.help=false>>">>]<br>
<</if>>
</div>/*#
#desc: stage 3 leave early
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('work_party_data_crystal_end')>>
<<removeEvent 'work_party_data_crystal_end'>>
<<else>>
<<removeEvent 'work_party_end'>>
<</if>>
<<include "endOfPartyCollar">>
<<set $scene.woreDress = setup.isItemEquipped("bondage_cocktail_dress")>>
<<if $scene.woreDress>>
<<set $clothSetsInt.tmp.data.delete('rhinestone_choker')>>
<<useClothSetPop 'tmp'>>
<<deleteItem 'bondage_cocktail_dress'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You inform <<=setup.getNpcName("npc_manager","formal")>> that you would like to leave. She nods, finishing her drink and handing it off to a passing waitress.<br>
<br>
<<if $scene.woreDress>>
"@@.npc_manager;What is that?@@" She asks, nodding to your outfit.<br>
<br>
You start to explain about the spill and borrowing the dress and she nods.<br>
<br>
"@@.npc_manager;I see, well... we had better get you changed back and that lovely thing returned.@@"<br>
<br>
She leads you back to the lost and found where you get back into your, thankfully dry, original attire.<br>
<br>
<<else>>
"@@.npc_manager;Bored already? Good, me too, while I am certain there are things you might be able to accomplish at these things I daresay I, personally find them quite the drag.@@"<br>
<br>
<</if>>
You ride the elevator back down to the parking garage where <<=setup.getNpcName("npc_manager","formal")>> summons a limousine and <<if $scene.replaceCollar>>replaces your collar before waving<<else>>waves<</if>> you good night as you head for home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: stage 3 ask to help manager
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.help>>
<<set $scene.firstOffereHelp = !$scene.hasOwnProperty('offeredHelp')>>
<<if $scene.firstOffereHelp>>
<<set $scene.offeredHelp = true>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
You ask <<=setup.getNpcName("npc_manager","formal")>> if there is anything you might do to assist her?<br>
<br>
<<if $scene.firstOffereHelp>>
<<if $npc_manager.affection < $npc_manager.anger>>
"@@.npc_manager;No, things were going quite fine until you interrupted my conversation. I appreciate the sentiment but you really ought to use the opportunity of this party to do some networking of your own.@@"
<<else>>
"@@.npc_manager;What a lovely offer. The fact is, I believe that our time would be best utilized doing a divide and conquer. I am sure you can find out all sorts of things that would never come out were I there intruding. Good luck!@@"
<</if>>
<<else>>
<<if $npc_manager.affection < $npc_manager.anger>>
She sighs in annoyance. "@@.npc_manager;My answer now remains the same as it was earlier. I am doing quite fine and I believe you would be making better use of your time networking on your own.@@"
<<else>>
She sighs slightly. "@@.npc_manager;I am afraid my answer is the same as it was when you asked earlier. Do make better use of this time socialising and the like. We can visit tomorrow or some other day, the opportunities afforded here comes but once a week.@@"
<</if>>
<</if>>
<<else>>
You explain that you just saw her as you were walking around and wanted to check in. She nods.<br>
<br>
<<if $npc_manager.affection < $npc_manager.anger>>
"@@.npc_manager;Well now you have done so. Enjoy the remainder of the party — you really ought to take advantage of the opportunity to network. Who knows what you might be able to find out?@@"
<<else>>
"@@.npc_manager;Well it was lovely to see you, as always. Still, you ought to take advantage of this opportunity to network with other people. After all, you can visit with me every day!@@"
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName("npc_manager","formal")>> walks away the crowd gently parting before her and then closing up behind.<br>
<br>
[<<moveTo "event_party_root" "Back to the party." 60>>]
</div>/*#
#desc: party private room
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Private">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/private.png">>
<div id="invframe" class="scrolltext">
After listening at a few side doors you manage to find an unoccupied room and duck inside.<br>
<br>
You look around the room — there's a bed with bondage attachment points, and a selection of floggers hanging on one wall but, being solo, not really anything for you to do anything with.<br>
<br>
[<<moveTo "event_party_adjust_collar_1" "Change what you're wearing around your neck." 60 "<<set $scene.initCollar = setup.getItemFromType('choker')>>">>]<br>
[<<moveTo "event_party_root" "Back to the party." 60>>]
</div>/*#
#desc: manager proposes necklace evening event
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> beckons you closer, then lowers her voice and leans in, as if bringing you in on a secret. "@@.npc_manager;So, my dear... you have met <<=setup.getNpcName('npc_rival', 'formal')>> a few times now, so I expect you have noticed <<his npc_rival>>... ambition. <<if $npc_manager.flags.toldcrystal>>What you might not yet be aware of is that<<else>>You are also well aware that<</if>> <<he npc_rival>> sees me as an obstacle to selfsame ambition and, while <<he npc_rival>> may be a minor threat, it is still one that I keep an eye on.@@"<br>
<br>
You ask if there is anything you might do to assist and <<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Always so helpful! And, in point of fact, there is. Part of <<=ps(setup.getNpcName('npc_rival', 'formal'))>> efforts have included trying to build support amongst some of the more junior managers to feed <<him npc_rival>> information about different departments. I thought you might pose as a new hire under <<=setup.getNpcName('npc_discipline', 'formal')>> at the party this evening... and then see what happens.@@"<br>
<br>
<<printThought "Wait, if I'm posing as a manager that means...">><br>
<br>
[<<moveTo "event_party_necklace_2" "Would that mean you would be wearing a necklace?" 60>>]
</div>/*#
#desc: manager offers necklace evening event
#status: FINISHED 0.8.3.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask if posing as a manager means that you would be attending the party wearing a necklace to signify being a dominant?<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;Right you are, <<=setup.getNpcName('npc_rival', 'formal')>> would be quite dismissive of anything else.
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
With your practice, well... you should fit the position to a T.
<<else>>
With your practice you should be quite prepared to play the part.
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
Though I would advise you to not push beyond your current skills.
<<elseif setup.getTotalValue("dominance") > 0>>
Though I would advise you to show care in deploying your... rudimentary skills.
<<else>>
Of course you are a pure submissive but... be careful, and do your best. Perhaps focus on what you would most like done to yourself, then try to emulate that energy.
<</if>>
<</if>>
Oh, and I also have a nice new outfit suitable for your role. Not that I do not simply adore your typical selections, but it should ensure that <<=setup.getNpcName('npc_rival', 'formal')>> does not recognise you.@@"<br>
<br>
[<<moveTo "event_party_necklace_3" "See what she has for you." 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_party_necklace_3" "This isn't a good night for this..." 180 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: given clothing for necklace evening
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<addItem "tuxedo_top_red">>
<<addItem "tuxedo_pants_red">>
<<addItem "leather_shoes_red">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.checkItemWorn('tuxedo_top_red') && setup.checkItemWorn('tuxedo_pants_red') && setup.checkItemWorn('leather_shoes_red')>>
<<moveTo "event_party_necklace_3">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You thank <<=setup.getNpcName('npc_manager', 'formal')>> for the opportunity and promise to do your best. She smiles as she walks over to the wardrobe. "@@.npc_manager;Here, put this on.@@"<br>
<br>
She turns to present you with a gorgeous red tuxedo.<br>
<br>
[<<moveTo "event_party_necklace_4" "Get changed." 180 "<<removeEverythingButUnderwear>><<wearItem 'tuxedo_top_red' true>><<wearItem 'tuxedo_pants_red' true>><<wearItem 'leather_shoes_red' true>>">>]
<<else>>
You explain that this isn't a good night for you to be going undercover.<br>
<br>
"@@.npc_manager;I see... well, when you are ready, let me know. But do not tarry too long. Things at this company can move quite quickly when one does not keep on top of them... as you well know.@@"<br>
<br>
[<<moveTo "event_manager_salary" "Continue to your weekly pay." 180>>]
<</if>>
</div>/*#
#desc: change for necklace evening
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCollar = setup.checkItemTypeTag('choker', ['collar'])>>
<<addItem "party_necklace">>
<<wearItem "party_necklace" true>>
<<set $player.flags.stage3party.canNecklace = true>>
<<include "calcSalary">>
<<set _nextDate = setup.setNextDate($now, 7, 19, 0)>>
<<removeEvent 'weekly_salary_phonecall'>>
<<addEvent 'weekly_salary_phonecall' _nextDate>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> watches with obvious pleasure as you change into the new outfit; lending a hand when you discover the tuxedo's spectacular profile is enabled by a subtly built-in corset. Over-long pant legs combine with heels to make you look tall and sleek and <<=setup.getNpcName('npc_manager', 'formal')>> smiles a she approaches with the final piece — a quite lovely, and very bold, jeweled necklace.<br>
<br>
<<if $scene.removeCollar>>
<<=setup.getNpcName('npc_manager', 'formal')>> carefully removes your collar and sets it aside to be replaced by the necklace. "@@.npc_manager;Do not worry my dear, even without such clear marking, I will not forget <<if $player.flags.collar.owner == 'npc_manager'>>that you are mine<<else>>that you are owned<</if>>, and I will certainly return things to their proper arrangement at the end of the evening.@@"
<<else>>
"@@.npc_manager;Here you go. A beautiful necklace for a beautiful girl.@@"
<</if>>
<br><br>
You present your throat with pride and <<=setup.getNpcName('npc_manager', 'formal')>> attaches your new jewellery.<br>
<br>
"@@.npc_manager;Lovely. Now, I still need to change, and it would be best if we arrived separately, in any case, so you can go ahead and head on up to the party — I will be up later. Oh, and before I forget...@@" She passes you a stack of credits. "@@.npc_manager;I think that should cover things, so much to do tonight we can skip going over all the details.@@"<br>
<br>
[<<moveTo "event_party_necklace_5" "Head for the elevator." 300>>]
</div>/*#
#desc: arrive at party wearing necklace
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 0, $now.getUTCHours()+1, random(55))>>
<<addEvent 'necklace_manager_arrive' _nextDate>>
<<set $scene.wornCollarType = 'necklace'>>
<<set $scene.partyTempCollar = "party_necklace">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png">>
<div id="invframe" class="scrolltext">
From the moment you arrive at the party things feel different — the door-person deferential from the moment they lay eyes on your necklace, and the looks you get inside from fellow party-goers subtly different. Normally you cannot escape the feeling that you are being looked at as little more than an object, a toy or a tool to be used and discarded. Now, however... your collared compatriots looking at you with a mix of awe and fear; anticipating the possibility that you might call upon them. Your fellow "managers," have the most dramatic shift, as each of them seems to be almost spying on you, silent calculations as whether to they should consider you a useful ally, or as a potential threat...<br>
<br>
[<<moveTo "event_party_root" "Look around." 300>>]
</div>/*#
#desc: find npc_rival
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.wornCollarType == "necklace">>
<<set $scene.discussion.rival.talk = true>>
<</if>>
<<set $scene.listen_rival = true>>
<<removeEvent "necklace_manager_arrive">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.wornCollarType == "necklace">>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<<else>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_rival") setup.charImage("generic","npc_conspirator")>>
<</if>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName('npc_rival', 'formal')>> <<if $scene.wornCollarType == "necklace">>and <<his npc_rival>> assistant, <<=setup.getNpcName('npc_sissy_secretary', 'first')>><<else>>speaking furtively with another <<man>><</if>>.
<<switch $scene.wornCollarType>>
<<case "choker">>
<<He npc_rival>> shakes <<his npc_rival>> head dismissively, waving you off and turning away without so much as a word.
<<case "collar" "ring">>
<<He npc_rival>> glances as your throat and shakes <<his npc_rival>> head. "@@.npc_rival;I am far too busy this evening to play, go find something else to occupy your time, <<if $scene.wornCollarType =='ring'>>slut<<else>>slave<</if>>.@@"
<<case "necklace">>
<<if $scene.discussion.rival.finish>>
<<=setup.getNpcName('npc_rival', 'formal')>> acknowledges you with a nod, but seems disinterested in further discussion this evening.<br>
<br>
<<else>>
<<if $npc_rival.flags.met_necklace>>
<<He npc_rival>> nods in recognition. "@@.npc_rival;Hello, and how are things going in the Discipline department?@@"
<<else>>
<<He npc_rival>> greets you with a slightly off-putting smile as you introduce yourself as a new hire working for <<=setup.getNpcName('npc_discipline', 'formal')>>. "@@.npc_rival;Wonderful, wonderful. Such an important department, and one that we shall surely be leaning on even harder as we continue to expand. I can speak personally to the benefit that <<=setup.getNpcName('npc_sissy_secretary', 'first')>> has seen spending time under your superior's care. It really is all about keeping a firm hand to make sure everyone is committed to putting in their best performance for the company.@@"<br>
<br>
<<printThought "Wow, <<he npc_rival>> really only sees my necklace and doesn't even realise that <<hes npc_rival>> met me before... talk about a blind-spot from being hyper-fixated on corporate hierarchies and ladder-climbing...">><br>
<br>
You have the distinct feeling that <<=setup.getNpcName('npc_sissy_secretary', 'first')>> sees through your disguise, but she makes no response save to curtsy obediently. "@@.npc_sissy_secretary;As you say, <<=setup.getNpcName('npc_rival', '<<Master npc_rival>>')>>.@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> barely pays her any heed as <<he npc_rival>> finishes <<his npc_rival>> drink and flags down a waitress for another. "@@.npc_rival;So, How are things going in the Discipline department?@@"
<</if>>
<br><br>
You smile and reply that they are harsh... as is proper.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> laughs at the joke... a little too loudly. From the smell of <<his npc_rival>> breath this is far from <<his npc_rival>> first drink.<br>
<br>
<<printThought "Perfect opportunity to get the information <<=setup.getNpcName('npc_manager', 'formal')>> wanted...">><br>
<br>
<<include "rivalQuestions">>
<</if>>
<<default>>
ERROR: unexpected scene.worn collar <<=$scene.wornCollarType>>
<</switch>>
<br><br>
<<if $scene.wornCollarType != "necklace" || $scene.discussion.rival.finish>>
[<<moveTo "event_party_root" "Walk away." 300>>]
<</if>>
</div><<if $scene.discussion.rival.plans>>
[@@.link_locked;You have already asked <<his npc_rival>> plans.@@]<br>
<<else>>
[<<moveTo "event_party_necklace_rival_2" "Ask about <<his npc_rival>> plans." 300 "<<set $scene.topic='plans'>>">>]<br>
<</if>>
<<if $scene.discussion.rival.help>>
[@@.link_locked;You have already offered your help.@@]<br>
<<else>>
[<<moveTo "event_party_necklace_rival_2" "Ask if there is anything you could help <<him npc_rival>> with." 300 "<<set $scene.topic='help'>>">>]<br>
<</if>>
<<if $scene.discussion.rival.company>>
[@@.link_locked;You have already asked <<him npc_rival>> about the company.@@]<br>
<<else>>
[<<moveTo "event_party_necklace_rival_2" "Ask about the general state of the company." 300 "<<set $scene.topic='company'>>">>]<br>
<</if>>
[<<moveTo "event_party_necklace_rival_3" "Finish the conversation and excuse yourself." 300 "<<set $scene.discussion.rival.finish=true>>">>]/*#
#desc: talk to npc_rival
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_rival.flags.met_necklace = true>>
<<set $scene.discussion.rival[$scene.topic] = true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case 'plans'>>
You ask <<=setup.getNpcName('npc_rival', 'formal')>> what <<his npc_rival>> plans are?<br>
<br>
"@@.npc_rival;Plans? Why, to make Social Interaction Service Syndicate Inc. the largest, most successful company in the world. The technology and techniques we have perfected... there is no end to what we could accomplish. All that we need is the will and determination to put it into action. <<=setup.getNpcName('npc_boss', 'formal')>> has shown us the direction, it is up to all of the rest of us to push as quickly as we can.@@"
<<case 'help'>>
You ask <<=setup.getNpcName('npc_rival', 'formal')>> if you, personally, could be of any assistance.<br>
<br>
"@@.npc_rival;My goals are the company's goals, so all that I would ask is that you dedicate yourself fully to your new position. <<if $options.fem && $npc_rival.fem>>As managers, well, it is our duty to harden ourselves against our<<else>>Especially as a woman, well... you must harden yourself against your<</if>> inferiors and treat them with the sternness required. One cannot be soft in this line of work and survive, much less thrive. Hierarchy must be upheld, and keeping those below you firmly in their place is a key part of ones own rise.@@"<br>
<br>
You nod and assure <<him npc_rival>> that that is precisely your intent.
<<case 'company'>>
You ask <<=setup.getNpcName('npc_rival', 'formal')>> <<his npc_rival>> thoughts on the company.<br>
<br>
<<if $npc_manager.stage == 5>>
"@@.npc_rival;Advancing wonderfully! Between <<=ps(setup.getNpcName('npc_boss', 'formal'))>> leadership and my own recently expanded responsibilities... yes, the company is in good hands going forward. Good, strong hands.@@"
<<else>>
"@@.npc_rival;Advancing wonderfully, thanks to <<=ps(setup.getNpcName('npc_boss', 'formal'))>> leadership... though I believe we could be growing even faster if there was less... disagreement at the director level. Now is not the time for caution, but for bold action... certainly your superior has done astounding things with her department, but that progress will remain stunted so long as her own manager refuses to take full advantage.@@" <<He npc_rival>> shakes <<his npc_rival>> head. "@@.npc_rival;Sorry, it is frustrating to find one's own ambitions stymied by those above...@@"
<</if>>
<br><br>
You nod in sympathy.
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "rivalQuestions">>
</div>/*#
#desc: volunteer demonstrate domme skills to npc_rival
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You start to excuse yourself when <<=ps(setup.getNpcName('npc_rival', 'formal'))>> tone get's a touch darker. "@@.npc_rival;Before you go...@@" <<he npc_rival>> leads off, as you freeze nervously.<br>
<br>
<<printThought "Is <<he npc_rival>> on to me?">><br>
<br>
"@@.npc_rival;I was wondering... you working under <<=setup.getNpcName('npc_discipline', 'formal')>>... well, how about a private demonstration? I so seldom have the time to visit your facilities in person, and I would so enjoy seeing one of your treatments on my slave...@@"<br>
<br>
You glance towards <<=setup.getNpcName('npc_sissy_secretary', 'first')>>. She retains her chipper facade, with the slightest of nods as if to give you permission to go through with the request...<br>
<br>
<<if setup.getTotalValue("dominance") > 0>>
[<<moveTo "event_party_necklace_rival_4" "Say of course." 300 "<<set $scene.accept=true>>">>]<br>
<<else>>
[@@.link_locked;Punish? No, no, you don't have any of the skills for that...@@] <<hint $options "You would need some skill at dominance for this.">><br>
<</if>>
[<<moveTo "event_party_necklace_rival_4" "Decline <<his npc_rival>> request." 300 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: requested to demonstrate domme skills to npc_rival
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Dungeon">>
<<createAdvBGR "./images/locations/party_dungeon.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You smile and reply that it would be your pleasure to address <<his npc_rival>> slave.<br>
<br>
"@@.npc_rival;Wonderful, it is so pleasant to meet someone who enjoys their work so as to be eager to dig in in their off-time. Keep that enthusiasm and you shall be quite successful in <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> department, and the company as a whole!@@"<br>
<br>
You nod and let <<him npc_rival>> take the lead as the three of you head for one of the ballroom's private side-room dungeons.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> leads <<his npc_rival>> <<if $fetish.sissy>>SISSI <</if>>secretary to a bondage frame while gesturing towards a wall bedecked with an array of punishment devices.<br>
<br>
You consider your options in degree of severity while balancing impressing <<=setup.getNpcName('npc_rival', 'formal')>> against cruelty towards your friend <<=setup.getNpcName('npc_sissy_secretary', 'first')>>.<br>
<br>
[<<moveTo "event_party_necklace_rival_5" "Select the standard issue padded paddle." 300 "<<set $scene.item='paddle'>>">>]<br>
[<<moveTo "event_party_necklace_rival_5" "Select the flogger." 300 "<<set $scene.item='flogger'>>">>]<br>
[<<moveTo "event_party_necklace_rival_5" "Select the cruel cane." 300 "<<set $scene.item='cane'>>">>]<br>
[<<moveTo "event_party_necklace_rival_5" "Select the vicious electric cattle prod." 300 "<<set $scene.item='prod'>>">>]
<<else>>
You politely explain that you are here to relax, that if <<his npc_rival>> slave needs work <<he npc_rival>> should attend to such <<himself npc_rival>>, or by making an official referral to your department.<br>
<br>
You can see <<he npc_rival>> is about to pressure you further when you spot a lifeline in the form of <<=setup.getNpcName('npc_manager', 'formal')>> coming into view. You point to her as you explain that <<=setup.getNpcName('npc_discipline', 'formal')>> had requested you introduce yourself to <<=setup.getNpcName('npc_manager', 'other')>>.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> seems to finally accept that <<he npc_rival>> isn't going to take advantage of your services this evening and nods in disappointment, softly muttering "@@.npc_rival;Be careful who you align with. As I said, the company is moving quickly and those that stand in its way may not be in power much longer.@@"<br>
<br>
You force a smile and thank <<him npc_rival>> for the advice before hurrying towards <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
[<<moveTo "event_party_necklace_6" 'Rendezvous with <<=setup.getNpcName("npc_manager", "formal")>>.' 300 "<<set $scene.spot=true>>">>]
<</if>>
</div>/*#
#desc: demonstrate domme skills to npc_rival
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.rival.punish = true>>
<<set $npc_rival.flags.party_punish = true>>
<<switch $scene.item>>
<<case 'paddle'>>
<<applyExperience 'dominance' 10 'normal' $SEEN_STRANGER>>
<<case 'flogger'>>
<<applyExperience 'dominance' 13 'normal' $SEEN_STRANGER>>
<<case 'cane'>>
<<applyExperience 'dominance' 15 'normal' $SEEN_STRANGER>>
<<case 'prod'>>
<<applyExperience 'dominance' 18 'normal' $SEEN_STRANGER>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Dungeon">>
<<createAdvBGR "./images/locations/party_dungeon.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<switch $scene.item>>
<<case 'paddle'>>
You select the paddle, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> shows a brief moment of relief... even as <<=setup.getNpcName('npc_rival', 'formal')>> looks disappointed.<br>
<br>
You approach your subject and begin tenderising her bottom; each blow echoing in the small dungeon as she cries out, and occasionally moans.<br>
<br>
You have turned <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> bottom a uniform cherry red when <<=setup.getNpcName('npc_rival', 'formal')>> signals a stop. You help <<=setup.getNpcName('npc_sissy_secretary', 'first')>> down from her restraints
<<if setup.getTotalValue("dominance") > 10>>
and she looks at you with aroused submission.<br>
<br>
<<if setup.getTotalValue("dominance") > 15>>
"@@.npc_rival;Impressively done. You have given me a whole new perspective on such a basic tool. I can quite understand why you were hired... you are a virtuoso of punishment!@@"
<<else>>
"@@.npc_rival;Impressive, I did not realise that such a basic tool could be employed so expertly. I can quite understand why you were hired.@@"
<</if>>
<<else>>
she drops into a perfunctory curtsy before returning to her manager's side.<br>
<br>
<<if setup.getTotalValue("dominance") > 5>>
"@@.npc_rival;Hmm, a reasonable job, but nothing particularly different from what I hand out every morning. I had hoped to see more.@@"
<<else>>
"@@.npc_rival;Hmm, I suppose your skills lie more on the managerial side? From the selection of implement to execution I must say I am... unimpressed.@@"
<</if>>
<</if>>
<<case 'flogger'>>
You select the flogger, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> showing no reaction while <<=setup.getNpcName('npc_rival', 'formal')>> nods.<br>
<br>
You thoroughly lash her back and buttocks. You keep glancing at <<=setup.getNpcName('npc_rival', 'formal')>> for authorisation to stop. It is not until she is panting and hanging from her bonds that <<=setup.getNpcName('npc_rival', 'formal')>> signals a conclusion to the punishment. You help <<=setup.getNpcName('npc_sissy_secretary', 'first')>> down from her restraints
<<if setup.getTotalValue("dominance") > 10>>
and she looks at you with aroused submission.<br>
<br>
<<if setup.getTotalValue("dominance") > 15>>
"@@.npc_rival;Impressively done. I had considered myself skilled with a flogger, but seeing you in action... well, it would seem I should spend more time practicing!@@"
<<else>>
"@@.npc_rival;Well done, I think I picked up a few new tricks in watching you!@@"
<</if>>
<<else>>
she drops into a perfunctory curtsy before returning to her manager's side.<br>
<br>
<<if setup.getTotalValue("dominance") > 5>>
"@@.npc_rival;Disappointing. I had hoped to witness an expert, but I daresay I could wield a flogger as well or better.@@"
<<else>>
"@@.npc_rival;Hmm, are you perhaps nursing an elbow injury? That is one of the worst floggings I've ever witnessed.@@"
<</if>>
<</if>>
<<case 'cane'>>
You select the cane, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> looking slightly nervous while <<=setup.getNpcName('npc_rival', 'formal')>> nods in approval.<br>
<br>
The cane cracks against <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> backside, leaving nasty welts as she cries out in pain. <<=setup.getNpcName('npc_rival', 'formal')>> watches on with a cruel grin, only calling a stop after <<his npc_rival>> assistant is basically hanging in her restraints.<br>
<br>
You put the cane away and give her a few moments before helping <<=setup.getNpcName('npc_sissy_secretary', 'first')>> down, where she
<<if setup.getTotalValue("dominance") > 10>>
looks back at you with deferential... and slightly aroused submission.<br>
<br>
<<if setup.getTotalValue("dominance") > 15>>
"@@.npc_rival;Impressively done. The way you wield that cane would put fear into any slave!@@"
<<else>>
"@@.npc_rival;Well done, I know some consider the cane to be a bit cruel, but with results like you produce I will definitely be keeping it in my arsenal.@@"
<</if>>
<<else>>
she staggers slightly, barely remembering to give you a perfunctory curtsy before returning to her manager's side.<br>
<br>
<<if setup.getTotalValue("dominance") > 5>>
"@@.npc_rival;Disappointing. I had hoped to witness an expert, but I daresay I could wield a cane as well or better.@@"
<<else>>
"@@.npc_rival;Hmm, are you perhaps nursing an elbow injury? That is one of the most limp-wristed canings I've ever witnessed!@@"
<</if>>
<</if>>
<<case 'prod'>>
You select the cattle prod, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> looks afraid while <<=setup.getNpcName('npc_rival', 'formal')>> grins cruelly.<br>
<br>
The cattle prod sparks and cracks as you have your subject writhing helplessly in her bonds. Even <<=setup.getNpcName('npc_rival', 'formal')>> looks a little intimidated at the way you use the implement, but that doesn't stop <<him npc_rival>> from watching with cruel amusement until <<his npc_rival>> assistant is left exhausted hanging in her restraints.<br>
<br>
You plug the nearly depleted prod back in to charge and give her a few moments before helping <<=setup.getNpcName('npc_sissy_secretary', 'first')>> down, where she
<<if setup.getTotalValue("dominance") > 10>>
staggers, looking at you with a mix of fear, submission... and a touch of arousal.<br>
<br>
<<if setup.getTotalValue("dominance") > 15>>
"@@.npc_rival;Impressively done. I've never seen electricity put to such cunningly effective use!@@"
<<else>>
"@@.npc_rival;Well done, I had always considered electricity a bit of a cheat, but the way you deployed it, well... it would appear that skill can play a role as well!@@"
<</if>>
<<else>>
nearly collapses into your arms. Still wincing with every movement she eventually manages to stand on her own two feet; barely remembering to give you a perfunctory curtsy before returning to her manager's side.<br>
<br>
<<if setup.getTotalValue("dominance") > 5>>
"@@.npc_rival;Disappointing. I had hoped to witness an expert, but your efforts fail to demonstrate electrical punishment as anything other than a blunt, inelegant tool.@@"
<<else>>
"@@.npc_rival;Hmm, a bit of a clumsy display, if I am to be honest. It has always been my impression that electricity is somewhat... blunt and inefficient, and your efforts have only reinforced that notion.@@"
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.item <<=$scene.item>>
<</switch>>
<br><br>
As you prepare to leave <<=setup.getNpcName('npc_rival', 'formal')>> pauses; your efforts seeming to have gained a measure of <<his npc_rival>> trust. "@@.npc_rival;Speaking of punishment... your work providing employee discipline puts you in a wonderful position to hear things. Foolish subordinates saying all manner of secrets in vain effort to get their needed punishment to cease. Should you hear anything of interest, well, I am always looking to have a better understanding of the state of the company. The more knowledge we have, the faster we can proceed forward.@@"<br>
<br>
You promise to do what you can and leave the room and bid <<=setup.getNpcName('npc_rival', 'formal')>> and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> a rest of their good evening..<br>
<br>
[<<moveTo "event_party_necklace_6" 'Return to the party.' 300>>]
</div>/*#
#desc: manager finds you at necklace party
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('necklace_manager_arrive')>>
<<removeEvent 'necklace_manager_arrive'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.spot>>
You hurriedly approach <<=setup.getNpcName('npc_manager', 'formal')>>.
<<else>>
You are wandering through the party when <<=setup.getNpcName('npc_manager', 'formal')>> appears.
<</if>>
<br><br>
"@@.npc_manager;So, how did things go?@@" She asks.<br>
<br>
<<if $scene.discussion.rival.punish>>
<<if $scene.discussion.rival.plans && $scene.discussion.rival.company && $scene.discussion.rival.help>>
You tell her everything, your pumping <<=setup.getNpcName('npc_rival', 'formal')>> for as much information as you could, culminating in <<his npc_rival>>
<<else>>
You tell her about <<=ps(setup.getNpcName('npc_rival', 'formal'))>>
<</if>>
request for you to act as something of a torturer/spy while working for <<=setup.getNpcName('npc_discipline', 'formal')>>.<br>
<br>
"@@.npc_manager;Interesting... <<his npc_rival>> plans match with what I already suspected, but that last bit... well, I shall advise <<=setup.getNpcName('npc_discipline', 'formal')>> to standardise on gagging punishment subjects for security. As to you... very well done. If you wish to attend future parties wearing a necklace well... I believe you have shown yourself worthy of such trust.@@"
<<elseif $scene.discussion.rival.talk>>
<<if $scene.discussion.rival.plans && $scene.discussion.rival.company && $scene.discussion.rival.help>>
You tell her everything, your pumping <<=setup.getNpcName('npc_rival', 'formal')>> for as much information as you could before you declined
<<elseif $scene.discussion.rival.plans || $scene.discussion.rival.company || $scene.discussion.rival.help>>
You tell her about your conversation with <<=setup.getNpcName('npc_rival', 'formal')>> prior to you declining
<<else>>
You tell her about your brief encounter with <<=setup.getNpcName('npc_rival', 'formal')>> prior to you declining
<</if>>
<<his npc_rival>> request for you to punish <<his npc_rival>> assistant.<br>
<br>
She frowns. "@@.npc_manager;Hmm, nothing new, or particularly useful. You really ought to have accepted <<his npc_rival>> offer... perhaps some other time... in any case, I believe I shall allow you the option of a necklace when attending future parties, in case you want to make another attempt.@@"
<<else>>
You confess that you were unable to speak with <<=setup.getNpcName('npc_rival', 'formal')>> and she frowns. "@@.npc_manager;Disappointing — I just saw <<him npc_rival>> leave, so you shall have to make this attempt some other Thursday... towards that end I shall permit you to wear a necklace at future parties.@@"
<</if>>
<br><br>
Another manager passes close-by and <<=setup.getNpcName('npc_manager', 'formal')>> gives you a silent signal that this line of discussion is at an end for the evening.<br>
<br>
[<<moveTo "event_party_root" 'Return to the party.' 300>>]<br>
[<<moveTo "event_party_necklace_7" 'You are ready to leave the party.' 300>>]
</div>/*#
#desc: manager takes you home
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "endOfPartyCollar">>
<<if $events.hasOwnProperty('party_spill_event')>>
<<removeEvent 'party_spill_event'>>
<</if>>
<<if $events.hasOwnProperty('work_party_end')>>
<<removeEvent 'work_party_end'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_manager', 'formal')>> that you are ready to go home and she nods. "@@.npc_manager;Responsibility getting to you?@@" She states, her fingers brushing your necklace. "@@.npc_manager;Very well, though I will allow you to wear it in the future, if you wish.@@"<br>
<br>
<<if $scene.replaceCollar>>
In the elevator she has you remove the necklace, returning the familiar collar to your throat with a gentle smile. "@@.npc_manager;There, back to how it should be<<if $player.flags.collar.owner=="npc_manager">>, my pet<</if>>.@@"
<</if>>
She takes you to the elevator and soon has you zipping off home in a private limousine.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 300>>]
</div>/*#
#desc: ride elevator for second stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcCollarType">>
<<set $scene.askCollar = {}>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.manager_present>>
A tuxedo-clad guard holds the door to the limo as you and <<=setup.getNpcName("npc_manager","formal")>> stride out, her arm looping through to take gentle, but possessive, control of your elbow as your heels click, click, click the way to the elevator.<br>
<br>
<<else>>
A tuxedo-clad security guard holds the door for you to disembark and you find <<=setup.getNpcName("npc_manager","formal")>> waiting for you near the elevator. You hurry over and she takes you by the arm, leading you into the elevator.
<</if>>
Once the elevator doors close and the long rise up begins, she turns to you.<br>
<br>
<<if $scene.forcedSissyChoker>>
"@@.npc_manager;Well, I hope you have a wonderful night wearing that lovely choker — I unfortunately have some boring people to track down and touch base with... but you enjoy yourself.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> leads you past the hostess and quickly disappears into the crowd, leaving you to look around the crowded ballroom.<br>
<br>
[<<moveTo "event_party_root" "Look around." 120 '<<set $scene.wornCollarType = "choker">>'>>]
<<elseif !$player.flags.stage3party.knowcollar>>
Producing the diamond choker she fastens it around your neck. "@@.npc_manager;There we go, and a reminder, once again, to wear it until the end of the night and do not take it off for any reason before then.@@"<br>
<br>
[<<moveTo "event_party_pickup_4_ask" "Ask her why." 120>>]<br>
[<<moveTo "event_party_pickup_5" "Nod." 120 '<<addItem "rhinestone_choker">><<wearItem "rhinestone_choker" true>><<set $scene.wornCollarType = "choker">><<set $scene.partyTempCollar = "rhinestone_choker">>'>>]
<<else>>
"@@.npc_manager;So, how shall we adorn your throat this evening?@@"<br>
<br>
<<include "partyCollarChoices">>
<</if>>
</div><<if !setup.checkItemTypeWorn("choker", true) || !setup.checkItemTypeTag('choker', ['locking'])>>
Note: you can also swap neck adornment in your inventory, if you brought anything with you.<br>
<br>
<</if>>
<<if $player.flags.collar.owner != "" && setup.getItemFromType('choker') == $player.flags.collar.collarId>>
[<<moveTo "event_party_pickup_4_collar" "You would like to continue wearing your current collar." 120 "<<set $scene.choice='current'>><<set $player.cutscene.allowSpecific=''>>">>]<br>
[<<moveTo "event_party_pickup_4_collar_remove" "Ask if you could be let out of your locked collar to assume a different role for the party?" 120 "<<set $player.cutscene.allowSpecific=''>>">>]<br>
<<else>>
<<if $scene.wornCollarType != 'ring'>>
<<if $scene.askCollar.ring>>
[@@.link_locked;You already tried asking about wearing a collar with a ring.@@]<br>
<<else>>
[<<moveTo "event_party_pickup_4_collar" "Ask for the ringed collar." 120 "<<set $scene.choice='ring'>><<set $player.cutscene.allowSpecific=''>>">>] <<hint $options "This would mark you as an owned slave.">> <br>
<</if>>
<<else>>
[@@.link_locked;You are already wearing a collar with a ring to mark you as an subordinate off-limits for play.@@]<br>
<</if>>
<<if $scene.wornCollarType != 'collar'>>
<<if $scene.askCollar.collar>>
[@@.link_locked;You already tried asking about wearing a collar.@@]<br>
<<else>>
[<<moveTo "event_party_pickup_4_collar" "Ask for a plain collar." 120 "<<set $scene.choice='collar'>><<set $player.cutscene.allowSpecific=''>>">>] <<hint $options "This would signify you as submissive but unowned.">> <br>
<</if>>
<<else>>
[@@.link_locked;You are already wearing a collar to mark you as an unowned submissive.@@]<br>
<</if>>
<<if $scene.wornCollarType != 'choker'>>
<<if $scene.askCollar.choker>>
[@@.link_locked;You already tried asking about wearing a choker.@@]<br>
<<else>>
[<<moveTo "event_party_pickup_4_collar" "Ask for the diamond choker." 120 "<<set $scene.choice='choker'>><<set $player.cutscene.allowSpecific=''>>">>] <<hint $options "This would mark you as a subordinate off limits for play.">> <br>
<</if>>
<<else>>
[@@.link_locked;You are already wearing a choker marking you as an subordinate off-limits for play.@@]<br>
<</if>>
<<if $scene.wornCollarType != 'necklace'>>
<<if $scene.askCollar.choker>>
[@@.link_locked;You already tried asking about wearing a necklace.@@]<br>
<<else>>
[<<moveTo "event_party_pickup_4_collar" "Ask if you could wear a necklace?" 120 "<<set $scene.choice='necklace'>><<set $player.cutscene.allowSpecific=''>>">>] <<hint $options "This would signify that you were a senior employee.">><br>
<</if>>
<<else>>
[@@.link_locked;You are already wearing a necklace marking you as a superior.@@]<br>
<</if>>
<<if setup.checkItemTypeWorn("choker")>>
[<<moveTo "event_party_pickup_4_collar" "Ask if you could wear what you have on now to the party?" 120 "<<set $scene.choice='current'>><<set $player.cutscene.allowSpecific=''>>">>]<br>
<</if>>
<</if>>/*#
#desc: ask about stage 3 party collars
#status: RELEASED 0.7.8.0
#*/
<<set $player.inside=true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.collar.owner != "npc_manager" || ($npc_manager.affection - $npc_manager.anger) >= 5>>
<<removeItem $player.flags.collar.collarId true>>
<<deleteItem $player.flags.collar.collarId>>
<<set $player.cutscene.allowSpecific='choker'>>
<</if>>
<</if>>
<<include "calcCollarType">>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $player.flags.collar.owner == "npc_manager">>
You ask if you could be temporarily released from <<=ps(setup.getNpcName("npc_manager","formal"))>> collar to assume a different role for the party?<br>
<br>
<<if $npc_manager.affection - $npc_manager.anger >= 5>>
She thinks for a moment and then
<<if $npc_manager.affection > 5 && $npc_manager.anger == 0>>
nods. "@@.npc_manager;Yes, you have been quite the good girl of late, I believe I can trust you to keep that up for an evening, even without the explicit mark of ownership?@@"
<<else>>
finally nods. "@@.npc_manager;While I am not completely enamoured with some of your recent behaviour... I believe I can trust you to keep that up for an evening, even without the explicit mark of ownership?@@"
<</if>>
<br><br>
She unlocks your collar, your heart skipping a beat as its weight is removed from your neck. "@@.npc_manager;Of course, whatever you are wearing... you remain always mine. I will take good care of this collar until the party is over and you wear it once more.@@" She adds with a smile that sends your heart racing once again.<br>
<br>
<<include "partyCollarChoices">>
<<else>>
She shakes her head. "@@.npc_manager;No. Given your recent behaviour I do not think you have earned the privilege of running about unmarked.@@"<br>
<br>
[<<moveTo "event_party_pickup_5" "Continue on to the party." 120 "<<set $player.cutscene.allowSpecific=''>><<include 'calcCollarType'>>">>]
<</if>>
<<else>>
You ask if you could be temporarily released from your collar to assume a different role at the party?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> thinks for a moment before slowly nodding. "@@.npc_manager;Yes... while I do admit that removing another owner's collar is somewhat unorthodox... you are "on the clock," as it were, and thus your duties to me supersede others.@@"<br>
<br>
She produces some manner of skeleton key and removes your collar. "@@.npc_manager;I will keep this safe for the evening, now, what will you wear?@@"<br>
<br>
<<include "partyCollarChoices">>
<</if>>
</div>/*#
#desc: ask about stage 3 party collars
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.stage3party.knowcollar = true>>
<<include "calcCollarType">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You ask her what's the deal with your choker — or the range of even more extreme adornments you have seen worn by others.<br>
<br>
She pauses for a moment and then presses the stop button on the elevator as she turns to you. "@@.npc_manager;I suppose we can take a few moments to explain, though you really should have thought of these things when we were not on our way to an event. It is a simple code system to allow identifying the role and availability of a fellow guest.
Traditional necklaces<<if $scene.wornCollarType == 'necklace'>>, like what you are wearing,<</if>> and ties
<<if $scene.wornCollarType == 'necklace'>>, like what you have on,<</if>>signify a senior employee who is expected to bear full responsibility for themselves and is to be shown proper deference by others. Obviously such would be inappropriate for one of your position, but you should be aware so as to treat your betters with respect.
Wearing a choker<<if $scene.wornCollarType == 'choker'>>, as you are doing,<</if>> signifies that you are a subordinate guest, but that you are not available for play.
A collar — defined as a solid choker, typically made of leather or metal, <<if $scene.wornCollarType == 'collar'>>like the one you are wearing now <</if>>signifies an "owned" slave.
If that collar has a ring or other attachment point<<if $scene.wornCollarType == 'ring'>>, like yours does,<</if>> then they are considered to be "on a leash" and can only be used with explicit permission of their owner. No attachment point means they are for public use subject to their own interest. A bare neck... well a bare throat means that they are available for any who wishes to use or collar them; though such ownership only lasts the night. Usually this is done as either a punishment or a game, you can see why I instructed you not to expose yourself to such.@@"<br>
<br>
You think on this for a moment, far past the point of being surprised by such a revelation about this company.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> reaches out to re-start the elevator.<br>
<br>
<<if $scene.wornCollarType != 'collar'>>
<<if $scene.askCollar.collar>>
[@@.link_locked;You already tried asking about wearing a collar.@@]<br>
<<else>>
[<<moveTo "event_party_pickup_4_collar" "Ask if you could wear a collar." 120 "<<set $scene.choice='collar'>>">>] <<hint $options "This would mark you as an unowned submissive.">><br>
<</if>>
<<else>>
[@@.link_locked;You are already wearing a collar to mark you as an unowned submissive.@@]<br>
<</if>>
<<if $scene.wornCollarType != 'ring'>>
<<if $scene.askCollar.ring>>
[@@.link_locked;You already tried asking about wearing a collar with a ring.@@]<br>
<<else>>
[<<moveTo "event_party_pickup_4_collar" "Ask if you could wear a collar with a ring." 120 "<<set $scene.choice='ring'>>">>] <<hint $options "This would mark you as her owned slave.">><br>
<</if>>
<<else>>
[@@.link_locked;You are already wearing a collar marking you as an subordinate off-limits for play.@@]<br>
<</if>>
<<if setup.checkItemTypeWorn("choker")>>
<<if $scene.askCollar.choker>>
[@@.link_locked;You already tried asking about wearing the choker you have on now.@@]<br>
<<else>>
[<<moveTo "event_party_pickup_4_collar" "Ask if you could wear what you have on now to the party?" 120 "<<set $scene.choice='current'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_party_pickup_5" "Play it safe and wear the choker." 120 '<<addItem "rhinestone_choker">><<wearItem "rhinestone_choker" true>><<set $scene.wornCollarType="choker">><<set $scene.partyTempCollar="rhinestone_choker">>'>>]
</div><<set $scene.collarId = setup.getItemFromType('choker')>>
<<if $scene.collarId == "">>
<<set $scene.wornCollarType = 'none'>>
<<set $scene.collarObj = null>>
<<else>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<if $scene.collarObj.tags.includes("leash_attachment")>>
<<set $scene.wornCollarType = 'ring'>>
<<elseif $scene.collarObj.tags.includes("collar")>>
<<set $scene.wornCollarType = 'collar'>>
<<elseif $scene.collarObj.tags.includes("choker")>>
<<set $scene.wornCollarType = 'choker'>>
<<elseif $scene.collarObj.tags.includes("jewellery")>>
<<set $scene.wornCollarType = 'necklace'>>
<<else>>
<<set $scene.wornCollarType = 'tie'>>
<</if>>
<</if>>/*#
#desc: stage 3 party collared
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $scene.partyTempCollar = "">>
<<include "calcCollarType">>
<<if $scene.choice == "current">>
<<set _choice = $scene.wornCollarType>>
<<else>>
<<set _choice = $scene.choice>>
<</if>>
<<set $scene.askCollar[_choice] = true>>
<<switch $scene.choice>>
<<case 'ring'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $scene.approve = ($npc_manager.affection - $npc_manager.anger) > 6>>
<<if $scene.approve>>
<<set $scene.wornCollarType = 'ring'>>
<<set $scene.partyTempCollar = "bondage_collar">>
<<addItem "bondage_collar">>
<<wearItem "bondage_collar" true>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<else>>
<<set $scene.wornCollarType = 'choker'>>
<<set $scene.partyTempCollar = "rhinestone_choker">>
<<addItem "rhinestone_choker">>
<<wearItem "rhinestone_choker" true>>
<</if>>
<<case 'choker'>>
<<set $scene.wornCollarType = 'choker'>>
<<set $scene.partyTempCollar = "rhinestone_choker">>
<<addItem "rhinestone_choker">>
<<wearItem "rhinestone_choker" true>>
<<case 'current'>>
<<include "calcCollarType">>
<<set $scene.currentCollar = $scene.wornCollarType>>
<<switch $scene.wornCollarType>>
<<case 'ring'>>
<<set _chokerId = setup.getItemFromType('choker')>>
<<set $scene.approve = ($npc_manager.affection - $npc_manager.anger) > 6>>
<<if $scene.approve>>
<<set $scene.wornCollarType = 'ring'>>
<<set $scene.partyTempCollar = "">>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<elseif $scene.collarObj.hasOwnProperty('lockable') && $inventory[_chokerId].status.lock>>
<<set $scene.wornCollarType = 'ring'>>
<<set $scene.partyTempCollar = "">>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<else>>
<<set $scene.wornCollarType = "choker">>
<<set $scene.partyTempCollar = "rhinestone_choker">>
<<addItem "rhinestone_choker">>
<<wearItem "rhinestone_choker" true>>
<</if>>
<<case 'none'>>
<<set $scene.wornCollarType = "choker">>
<<set $scene.partyTempCollar = "rhinestone_choker">>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<addItem "rhinestone_choker">>
<<wearItem "rhinestone_choker" true>>
<<case "collar" "choker">>
<<case "necklace">>
<<if !$player.flags.stage3party.canNecklace>>
<<set $scene.currentCollar = "necklace">>
<<set $scene.wornCollarType = "choker">>
<<set $scene.partyTempCollar = "rhinestone_choker">>
<<addItem "rhinestone_choker">>
<<wearItem "rhinestone_choker" true>>
<</if>>
<<case 'tie'>>
<<set $scene.currentCollar = "tie">>
<<set $scene.wornCollarType = "choker">>
<<set $scene.partyTempCollar = "rhinestone_choker">>
<<addItem "rhinestone_choker">>
<<wearItem "rhinestone_choker" true>>
<</switch>>
<</switch>>
<<set $player.cutscene.allowSpecific='choker'>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<switch $scene.choice>>
<<case 'ring'>>
You request to wear <<=ps(setup.getNpcName("npc_manager","formal"))>> collar and she
<<if $scene.approve>>
smiles. "@@.npc_manager;How could I possibly deny such a lovely request?@@" She produces a leather collar and locks it around your neck, a ring dangling tantalisingly in front of your throat.
<<else>>
frowns. "@@.npc_manager;I am sorry but a collar, even a temporary one... well, that is quite the honour and your behaviour of late... no, a choker is all I will grant you.@@"
<</if>>
<<case 'collar'>>
You ask if you could wear a "plain" collar but <<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;Sorry, but I do not have one of those available... I might allow you to wear such but you would need to find it yourself as I, personally, have no reason to own such an item.@@"<br>
<br>
<<include "partyCollarChoices">>
<<case 'choker'>>
You ask to wear the diamond choker once again and <<=setup.getNpcName("npc_manager","formal")>> nods, gently fastening it around your neck.
<<case 'necklace'>>
<<if $player.flags.stage3party.canNecklace>>
You ask if you might wear a normal necklace and <<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;Technically, yes... but I do not have a spare, so you should have come adorned appropriately. Perhaps some other time.@@"
<<else>>
You ask if you might wear a normal necklace and <<=setup.getNpcName("npc_manager","formal")>> just rolls her eyes. "@@.npc_manager;Come now, you know better than that. You are a secretary, <<if $npc_manager.affection > 8>>for however vital you may be to me such a position will never be considered "senior" among the other managers<<else>>that is a subordinate position, remember that<</if>>.@@"
<</if>>
<br><br>
<<include "partyCollarChoices">>
<<case 'current'>>
<<=setup.getNpcName("npc_manager","formal")>> eyes your current neck adornment.
<<switch $scene.currentCollar>>
<<case "ring">>
<<set _chokerId = setup.getItemFromType('choker')>>
<<if $player.flags.collar.owner == "npc_manager">>
She smiles wide. "@@.npc_manager;Why, of course you may continue to wear my collar... that is why I favoured you with it, after all.@@"
<<elseif $player.flags.collar.owner>>
She nods. "@@.npc_manager;Yes, it would be appropriate for you to continue to broadcast your status of being owned, would that it was my ownership... but still.@@"
<<elseif $scene.approve>>
She smiles. "@@.npc_manager;Hmm, yes, I believe you have earned the right to be considered my official property for the night. Keep this up and I will be locking one of those around your neck for real... permanently.@@"
<<elseif $scene.collarObj.hasOwnProperty('lockable') && $inventory[_chokerId].status.lock>>
She frowns. "@@.npc_manager;To be frankly honest your comportment of late has me wanting to disassociate myself from taking responsibility for you, but since I do not have the key to your collar I suppose I have little choice... do be on your best behaviour this evening or I will be very cross.@@"
<<else>>
She shakes her head. "@@.npc_manager;No, your comportment of late is such that I do not believe I trust you enough to take such responsibility for your behaviour. You may wear the choker — if you wish to have more fun at the party you ought to have thought of that before acting out.@@"<br>
<br>
She swiftly removes your collar and replaces it with the diamond choker.
<</if>>
<<case "collar">>
She has a slight grin as she nodes. "@@.npc_manager;Looking to have some fun are we? Well have at it, just try not to get in trouble. I may not officially be responsible for you without there being a ring, but I would hate to have to bail you out of a jam.@@"
<<case "choker">>
She nods. "@@.npc_manager;Yes, that seems acceptable.@@"
<<case "necklace">>
<<if $player.flags.stage3party.canNecklace>>
She nods. "@@.npc_manager;Looking to perform some more espionage? Just do not become TOO accustomed to the authority wearing such an item gives, you remain my <<if $fetish.sissy>>SISSI <</if>>slave.@@"
<<else>>
She shakes her head. "@@.npc_manager;No, I think that would send quite the wrong impression. Here, a choker is more appropriate for one in your position.@@" Removing your necklace she attaches the diamond choker around your neck, signifying you as an off-limits subordinate.
<</if>>
<<case "tie">>
She shakes her head. "@@.npc_manager;No, I think that would send quite the wrong impression. Also... I am a bit puzzled you even own something like that. I suppose a tie is reminiscent of a leash... maybe you get off on the idea of it tightening around your neck?@@" She shrugs, removing your tie and attaching the diamond choker around your neck, signifying you as an off-limits subordinate.
<<default>>
ERROR: unexpected choker type: <<=$scene.wornCollarType>>
<</switch>>
<<default>>
ERROR: unexpected scene.choice <<=$scene.choice>>
<</switch>>
<br><br>
<<if ($scene.choice != "necklace" && $scene.choice != "collar") && !($scene.choice == 'current' && $scene.wornCollarType == "none")>>
Smiling at you, she strokes your cheek and then takes a moment to admire you before pressing the button to send the elevator back into motion.<br>
<br>
[<<moveTo "event_party_pickup_5" "Continue." 120 "<<set $player.cutscene.allowSpecific=''>>">>]
<</if>>
</div>/*#
#desc: start second stage 3 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.allowSpecific=''>>
<<include "stage4AnnounceCheck">>
<<if !_stage4announceReady && (setup.getTotalValue("smart") > 13 && $player.work.secretaryRank >= 3 && $npc_manager.affection > $npc_manager.anger && $npc_manager.anger < 5 && setup.checkItemTypeTag('plug', ['ems']) && setup.checkItemTypeTag('plug', ['vibrating']) && (!State.hasPlayed("event_party_manager_assist_first_1") || random(1,5) == 1 && !State.hasPlayed("event_party_manager_assist_first_10")))>>
<<initRoom>>
<<moveTo "event_party_manager_assist_first_1">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $npc_boss.flags.firstBlowjob < 1 && !$npc_boss.flags.managerBlowjob>>
The hostess greets you with a smile. "@@.generic_female2;Welcome back, <<=setup.getNpcName("npc_manager","other")>>. <<=setup.getNpcName("npc_boss","formal")>> is expecting you, please proceed to <<his npc_boss>> office prior to enjoying the party.@@"<br>
<br>
With a barely suppressed grimace, <<=setup.getNpcName("npc_manager","formal")>> nods, leading you into the ballroom and across to the private elevator that takes you up, up, up to <<=ps(setup.getNpcName("npc_boss","formal"))>> floor-spanning office atop the building.<br>
<br>
[<<moveTo "event_party_second_bj_1" "Continue." 300>>]
<<elseif !$npc_boss.flags.party_join && $npc_nintendolls.stage >= 6 && $npc_manager.stage == 4>>
You step out of the elevator and into the ballroom only for <<=setup.getNpcName("npc_boss","formal")>> to spot you and <<=setup.getNpcName("npc_manager","formal")>> and make a casual approach.<br>
<br>
"@@.npc_boss;Ah, <<=setup.getNpcName("npc_manager","other")>>! You decided to join us, and you brought your oh-so-lovely <<if $fetish.sissy>>SISSI <</if>>Secretary, as well!@@" <<His npc_boss>> gaze is like fire, washing over you, devouring you whole in a single glance.<br>
<br>
<<if setup.getCurrentMakeup() == "moviestar" && setup.checkItemTypeWorn("earring") && ['large'].includes(setup.calcBreastSize()) && setup.checkItemTypeWorn("nipple_piercing") && setup.checkItemTypeWorn("corset") && $player.timebased.tightlacing == 100 && $player.nails.style && ($player.flags.uniform_upgrade.aslutStage >= 4 || setup.checkTaskUntimedComplete('aslut_1_final')) && (setup.hasTattoo() || !$fetish.tattoos) && ($player.body.penissize[0] <= 3 || !$player.body_ref.penis) && (setup.getChastityLevel() == 5 || !$npc_manager.flags.require_chastity) && setup.getTotalValue("heels") >= 15 && setup.getItemObjFromType('shoes').heels.difficulty >= 7 && ($scene.wornCollarType == 'collar' || $scene.wornCollarType == 'ring')>>
<<if $npc_boss.flags.inspection == 1>>
"@@.npc_boss;My, my... she is just as lovely as I remembered... perhaps even more beautiful.@@" <<His npc_boss>> gaze settles on your throat... no, <<hes npc_boss>> staring at your collar.
<<else>>
"@@.npc_boss;My, my... she has really worked on ironing out those distracting flaws... you have really succeeded into turning her into something beautiful.@@" <<His npc_boss>> gaze settles on your throat... no, your collar.
<</if>>
<<He npc_boss>> smiles wider.
<<if $scene.wornCollarType == 'collar'>>
"@@.npc_boss;Letting her run around unclaimed... quite the bold move.@@" As <<he npc_boss>> speaks <<he npc_boss>> reaches out, <<his npc_boss>> <<if $npc_boss.fem>>hand and perfectly manicured<<else>>large hand and perfectly filed<</if>> nails caressing your cheek before tracing the smooth, ring-less front of your collar. "@@.npc_boss;This presents a useful opportunity — you see, my own Secretary is presently indisposed attending to a little wager... perhaps this sweet thing could fill in and decorate my arm for the evening? I am sure it would be quite the learning experience.@@"
<<elseif $scene.wornCollarType == 'ring'>>
"@@.npc_boss;Keeping her marked and collared. Quite the astute move given all of the wolves about eager to devour this lovely lamb...@@" <<His npc_boss>> hands remain at <<his npc_boss>> sides, and yet it feels like <<he npc_boss>> is groping you, undressing you with <<his npc_boss>> eyes, tugging on your collar... "@@.npc_boss;I do not suppose you would deign to loan her to me for the evening? You see, my own Secretary is presently indisposed attending to a little wager... perhaps this sweet thing could fill in and decorate my arm for the evening? I am sure it would be quite the learning experience.@@"
<<else>>
ERROR: unexpected collar <<=$scene.wornCollarType>>
<</if>>
<br><br>
<<printThought 'Wait, <<=setup.getNpcName("npc_boss","formal")>> wants... me?'>><br>
<br>
Your heart pounds in your chest. Something about <<=setup.getNpcName("npc_boss","formal")>> is distracting, almost intoxicating. <<=setup.getNpcName("npc_manager","formal")>> carefully meets your gaze as if to check on you.<br>
<br>
<<printThought "Do I dare?">><br>
<br>
[<<moveTo "event_boss_party_1" "Yes, you want to go with <<him npc_boss>> for the evening." 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_boss_party_1" 'As entrancing as <<he npc_boss>> is... you do not want to spend an evening with <<=setup.getNpcName("npc_boss","formal")>>.' 60 "<<set $scene.accept=false>>">>]
<<else>>
<<=setup.getNpcName("npc_boss","formal")>> gaze scans over you, no, through you, assessing you like an object, cataloging the slightest flaw. <<He npc_boss>> finishes up with a slight frown. "@@.npc_boss;Hmm... still a work in progress, it would seem. Disappointing. I had hoped my initial assessment would have lit a fire under that cute bottom.@@"<br>
<br>
<<He npc_boss>> pauses for a moment and then smirks wider,
"@@.npc_boss;I suppose a hint is in order...
<<if setup.getCurrentMakeup() != "moviestar">>
perhaps start with your makeup?
<<elseif !setup.checkItemTypeWorn("earring")>>
some earrings would seem to be in order...
<<elseif !['large'].includes(setup.calcBreastSize())>>
<<if setup.calcBreastSize() == "none">>
your lack of breasts... well, it results in a very unbalanced figure.
<<elseif setup.calcBreastSize() == "massive">>
your breasts... they are a bit distractingly oversized.
<<else>>
your breasts... A bit small, don't you think?
<</if>>
<<elseif !setup.checkItemTypeWorn("nipple_piercing")>>
Those nipples of yours are really calling out for piercings...
<<elseif !setup.checkItemTypeWorn("corset") || $player.timebased.tightlacing != 100>>
It is my belief that a woman's figure is incomplete without a fully laced corset.
<<elseif !$player.nails.style>>
Your fingernails... quite unkempt.
<<elseif $player.flags.uniform_upgrade.aslutStage < 4 && !setup.checkTaskUntimedComplete('aslut_1_final')>>
I thought you had enrolled in A-SLUT? You really should complete the program, it is a strong base for how all female employees, really, all women, period, should be.
<<elseif !setup.hasTattoo() && $fetish.tattoos>>
A tattoo, perhaps? I have found that such willing exposure to pain is a wonderful learning experience...
<<elseif !($player.body.penissize[0] <= 3 || !$player.body_ref.penis)>>
You really should do something about that unsightly protrusion between your legs...
<<elseif setup.getChastityLevel() != 5 && $npc_manager.flags.require_chastity>>
It is my understanding that you are not yet fully secured? To accompany me is to demonstrate devoted, secured perfection, which would include getting ahead of things with one of our wonderful 9001 series chastity devices...
<<elseif setup.getTotalValue("heels") < 15 || setup.getItemObjFromType('shoes').heels.difficulty < 7>>
Some properly steep heels — and the skill to walk confidently in them.
<<elseif !($scene.wornCollarType == 'collar' || $scene.wornCollarType == 'ring')>>
A proper collar — being my property for the evening, well... you would need to be marked as such — collared and leashed.
<<else>>
ERROR: unexpected state!
<</if>>
Yes... that would be an improvement... though I expect you to show some initiative — I am not one for hand-holding or wasting my valuable time training submissives.@@"<br>
<br>
<<if $scene.wornCollarType == 'collar'>>
<<He npc_boss>> slaps you on the ass and you gasp.
<<else>>
<<He npc_boss>> leers at you so hard you can practically feel <<his npc_boss>> fingers digging into your ass.
<</if>>
"@@.npc_boss;Yes, certainly one of her better features...@@"<br>
<br>
You blush and <<he npc_boss>> grins wider. "@@.npc_boss;Well, I shall wish the two of you a good evening. Perhaps someday your little project will develop to the point that she might be worthy of being my arm candy for a few hours. Until then.@@" <<He npc_boss>> dips <<his npc_boss>> head ever so slightly towards <<=setup.getNpcName("npc_manager","formal")>> and then walks away.<br>
<br>
Only after <<=setup.getNpcName("npc_boss","formal")>> has disappeared into the crowd do you feel your <<=setup.getNpcName("npc_manager","title")>> relax ever so slightly. "@@.npc_manager;Well, I suppose this is a good time to remind you to be careful this evening as you enjoy yourself.@@"<br>
<br>
With a parting smile she slips off into the crowd.<br>
<br>
[<<moveTo "event_party_root" "Look around." 120>>]
<</if>>
<<else>>
The two of you are welcomed into the party and <<=setup.getNpcName("npc_manager","formal")>> leads the way inside. After spending a few minutes greeting some of her colleagues, she turns to you and nods.<br>
<br>
"@@.npc_manager;Well, I think this is a good opportunity for you to practice your skills on your own, feel free to wander around and visit whomever you like. I will see you later in the evening.@@"<br>
<br>
With a parting smile she slips off into the crowd.<br>
<br>
[<<moveTo "event_party_root" "Look around." 120>>]
<</if>>
</div>/*#
#desc: npc_boss demands blowjob before party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
Stepping out of the elevator, you walk into <<=ps(setup.getNpcName("npc_boss","formal"))>> vast office overlooking the city. <<His npc_boss>> smile drips with menace, stakes seeming even higher facing <<him npc_boss>> alone, <<his npc_boss>> "assistant" nowhere to be seen.<br>
<br>
"@@.npc_boss;So, what will it be? Is your slut going to give a proper oral presentation to prove her worth? Or is Miss high and mighty going to get down on her knees and take the shot in the mouth she's always secretly thirsted for?@@"<br>
<br>
[<<moveTo "event_party_second_bj_2_suck" "Eagerly show your obedience and give <<him npc_boss>> the best blowjob you know how." 120 "<<set $scene.reluctant = false>>">>]<br>
[<<moveTo "event_party_second_bj_2_suck" "Reluctantly accept that this is your job, drop to your knees and suck <<his npc_boss>> cock." 120 "<<set $scene.reluctant = true>>">>]<br>
[<<moveTo "event_party_second_bj_2_refuse" "Stand tall and refuse." 120>>]
</div>/*#
#desc: refuse to blow npc_boss before party
#status: RELEASED 0.7.8.0
#ignore_spell: d
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You could hear a pin drop as you stand motionless in silent refusal of <<his npc_boss>> order.
<<if !$npc_admin.flags.monogomous_manager && $npc_manager.flags.cruel == 0 && $npc_manager.anger == 0 && $npc_manager.affection >= 10>>
<<set $npc_boss.flags.managerBlowjob = true>>
After several long seconds <<=setup.getNpcName("npc_manager","formal")>> un-threads her arm from yours and takes a deep breath.<br>
<br>
"@@.npc_manager;The true mark of a leader is how they take care of their followers.@@" She states as she glides across the floor and eases down to her knees.<br>
<br>
The <<man npc_boss>> laughs cruelly. "@@.npc_boss;Nah, the mark of a leader is that they are the one with the power.@@" <<He npc_boss>> looks down at her and their eyes meet, the silent battle of gazes lasting for a moment yet with enough unspoken violence to fill a war epic.<br>
<br>
Rooted in place you stare in shock, hardly believing what you're seeing as <<=setup.getNpcName("npc_manager","formal")>> unzips <<his npc_boss>> pants to reveal a large, rock-hard cock, and spreads her lips.<br>
<br>
Despite the hatred simmering behind her eyes she works with efficient ease, hilting <<him npc_boss>> without a sound and then setting to work stroking and sucking with such careful force that not a drop of saliva or pre escapes past her lips. Face split wide in a triumphant grin <<=setup.getNpcName("npc_boss","formal")>> stares directly at you with <<his npc_boss>> arms crossed over <<his npc_boss>> chest.<br>
<br>
"@@.npc_boss;That's right, take a good look. Your so-called <<=setup.getNpcName("npc_manager","title")>> may act all high and mighty but she is as much a slave as every other employee of this company. The obedience you show to her is merely a reflection of the fealty you owe to me-owe!@@" <<His npc_boss>> monologue is interrupted as <<he npc_boss>> jerks in pain.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> leans back just long enough to flash her teeth and say a smug "@@.npc_manager;Ooops, out of practice.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_boss","formal"))>> hand pulls back and you half expect <<him npc_boss>> to strike her, but then she wraps her lips back around <<his npc_boss>> cock and <<he npc_boss>> shudders for another reason, <<his npc_boss>> face twisted in ecstasy as her head and hands move fast enough to blur, finally grabbing <<his npc_boss>> hips with both hands to root <<him npc_boss>> in place as <<he npc_boss>> climaxes <<getWordCum>> directly into her stomach.<br>
<br>
Holding the position for so long YOU have to take a breath <<=setup.getNpcName("npc_manager","formal")>> finally slides back, her lips leaving <<his npc_boss>> softening, yet still large <<getWordPenis "npc_boss">> completely clean without messing her makeup or ever spilling a drop.<br>
<br>
As <<=setup.getNpcName("npc_boss","formal")>> recovers she smoothly rises to her feet, sliding her gloves back onto her hands as she strides back towards you. "@@.npc_manager;Well, I believe that is our business attended to. Thanks again for the invitation, and I am sure the two of us will be enjoying yet another of your lovely parties.@@"<br>
<br>
You're in awe of her technique as she seems to have <<him npc_boss>> momentarily at a loss for words. <<=setup.getNpcName("npc_manager","formal")>> wastes no time in hurrying the two of you back and down the elevator.<br>
<br>
You start to open your mouth but she cuts you off with a glance. "@@.npc_manager;Never speak of this. Not a word.@@" She smiles at the elevator attendant as the doors slide open on to the ballroom, the posh party in full swing. She steps forth, making a beeline for the bar and pounding back three fingers of hundred year old scotch before nodding to you.<br>
<br>
"@@.npc_manager;Well, then, enjoy the party. I will see you at the end of the night.@@"<br>
<br>
She turns away and orders another drink as you are left to your own devices.<br>
<br>
[<<moveTo "event_party_root" "Look around." 120>>]
<<elseif $fetish.get_raped>>
The silence lingers and then <<=ps(setup.getNpcName("npc_manager","formal"))>> hand is on the back of your neck "@@.npc_manager;I am sorry about my girl, bit of stage fright, you see, but she will be proving herself, won't she?@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> having turned against you, you can do nothing but obey as she drags you by the neck and shoves you to your knees in front of <<=setup.getNpcName("npc_boss","formal")>>. "@@.npc_manager;Go on now, slut, put those lips to use.@@"<br>
<br>
[<<moveTo "event_party_second_bj_2_suck" "Give in and do the best job you can." 300 "<<set $scene.reluctant=false>>">>]<br>
[<<moveTo "event_party_second_bj_2_suck" "Just get this over with." 300 "<<set $scene.reluctant=true>>">>]
<<else>>
<<set $npc_boss.flags.managerClever = true>>
All three of you remain silent and still in a standoff that seems to drag out forever only for <<=setup.getNpcName("npc_boss","formal")>> to be the first to break.<br>
<br>
"@@.npc_boss;Well, since you girl seems not to be up to the task, I believe it falls to you to attend to the monster in my pants.@@"<br>
<br>
Remaining stock still <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Of course. But you can take care of that after we have left. Or do you not remember Section Thirty-Five, Subsection IV, Clause D of the inter-department adjustments policy. You know, the one that says that a manager's subordinates are considered an extension of themselves and thus permitted to discharge any requested action requested by another manager — provided said subordinate is considered sufficiently qualified.@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> sneers. "@@.npc_boss;Of course, so tell your slut to get over here and suck my cock — or did you bring this up to stall for time in some foolish effort not to cover things yourself?@@"<br>
<br>
"@@.npc_manager;Not at all, for you see that, according to the most recent corporate org chart, <<=setup.getNpcName("npc_secretary","formal")>> is, officially, still considered one of my direct reports. So I will be delegating this duty to her — you can hardly deny that she is qualified for the task. Thus I will leave you to untie her from wherever you have stowed her away and my assistant and I will go enjoy the party while she settles things up.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_boss","formal"))>> hands are balled into fists as <<he npc_boss>> glares death back at <<=ps(setup.getNpcName("npc_manager","formal"))>> satisfied smile. "@@.npc_boss;Very... well, enjoy your party.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> waits an additional heartbeat as if expecting a further retort but <<=setup.getNpcName("npc_boss","formal")>> merely silently fumes as she turns and the two of you ride the elevator back down to the party. Once you are away from the guard and back into the thick of things she finally releases her hold on your arm and steps away. "@@.npc_manager;Well then, go and enjoy the festivities. I will see you later in the evening.@@"<br>
<br>
[<<moveTo "event_party_root" "Look around." 120>>]
<</if>>
</div>/*#
#desc: blow npc_boss before party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_boss.flags.firstBlowjob = 2>>
<<set $npc_boss.flags.hasBlown = true>>
<<if $scene.reluctant>>
<<applyExperience 'oral' $npc_boss.penis_size 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 9 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'oral' $npc_boss.penis_size 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 17 'terrible' $SEEN_FRIEND>>
<<applyExperience 'penis' 12 'terrible' $SEEN_FRIEND>>
<</if>>
<<if !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_boss'>>
<<if !$player.sec_style.sex.blowjob>>
<<if $scene.reluctant>>
<<set $player.sec_style.sex.blowjob = "strict">>
<<else>>
<<set $player.sec_style.sex.blowjob = "obedient">>
<</if>>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss") setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.reluctant>>
Unzipping <<his npc_boss>> trousers to reveal a substantial <<getWordPenis "npc_boss">>, you set to work with hands and lips,
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
massaging <<his npc_boss>> balls as you casually deep throat <<him npc_boss>>, moving smoothly up and down <<his npc_boss>> length as you suck and lick.
<<else>>
massaging <<his npc_boss>> balls as you work your way up to a full deep throat, holding for a moment to show that you can do it before falling back on a bob and suck.
<</if>>
<br><br>
"@@.npc_boss;Once again you seem to have turned out quite a talented cocksucker... though she could be a bit less coy and more enthusiastic at the opportunity to suck one as magnificent as myself.@@"
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<His npc_boss>> <<getWordPenis "npc_boss">> on the large side you use one hand to stroke while you suck on <<his npc_boss>> head, barely able to get half of <<him npc_boss>> past your lips no matter how hard you try.
<<else>>
<<Hes npc_boss>> almost too big for you to comfortably fit in your hand so you stick to running your tongue along the underside of <<his npc_boss>> shaft and beneath <<his npc_boss>> hood as you double-fist stroke <<his npc_boss>> full length.
<</if>>
<br><br>
With a grunt, <<he npc_boss>> expresses <<his npc_boss>> dissatisfaction. "@@.npc_boss;You did a much better job teaching the previous the proper use for her face hole. This one couldn't even make it up with enthusiasm! Quite a disappointment.@@" Looking down at you <<he npc_boss>> sneers. "@@.npc_boss;Do you know how many people in this company would beg to be where you are right now? Some bitches are so ungrateful!@@"
<</if>>
<<else>>
Looking lustily up at <<him npc_boss>>, you use your teeth to gently pull down <<his npc_boss>> zipper before carefully revealing the full glory of <<his npc_boss>> large cock and heavy balls. A few gentle strokes is enough to have <<him npc_boss>> at full hardness and you rub your cheek against <<him npc_boss>>, whispering how wonderful <<he npc_boss>> is and how hungry you are for <<his npc_boss>> cum.<br>
<br>
Smiling slightly, <<he npc_boss>> turns to <<=setup.getNpcName('npc_manager', 'formal')>> with a nod. "@@.npc_boss;What a difference a week makes! Looks like you've raised up another true cock lover but let's see if she can back up her words with action.@@"<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
Responding to <<his npc_boss>> encouragement
<<if setup.getTotalValue("oral") > 15>>
you swallow <<him npc_boss>> to the root with one gulp, humming as you hold <<him npc_boss>> in your throat and then slowly pull back with full suction until <<he npc_boss>> pops free.
<<else>>
you slowly work <<him npc_boss>> past your lips. <<Hes npc_boss>> near the limit of even your capacity but by remaining calm you are able to ease <<him npc_boss>> down your throat until your chin bumps against <<his npc_boss>> full balls.
<</if>>
You can tell by the look in <<his npc_boss>> eye that <<hes npc_boss>> loving this but <<he npc_boss>> manages to keep <<his npc_boss>> voice relatively even as <<=setup.getNpcName("npc_boss","formal")>> nods towards <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_boss;Very nice, I'd almost think she was a graduate of one of <<=ps(setup.getNpcName('npc_development', 'formal'))>> classes!@@"
<<else>>
You do your best to respond to <<his npc_boss>> encouragement, substituting skill for enthusiasm
<<if setup.getTotalValue("oral") > 5>>
as you do your best to take <<his npc_boss>> large <<getWordPenis "npc_boss">>. You are barely able to take half <<his npc_boss>> length before you start coughing, not that your discomfort seems to bother <<him npc_boss>> as you switch to stroking with one hand as you focus on licking and sucking <<his npc_boss>> thick head.
<<else>>
as you double fist <<his npc_boss>> shaft and slather the wet tip of <<his npc_boss>> <<getWordPenis "npc_boss">> with your tongue.
<</if>>
<br><br>
"@@.npc_boss;Enthusiastic, but unskilled. A bit disappointing, really. She may need to be scheduled for a class with <<=setup.getNpcName('npc_development', 'formal')>> sooner rather than later.@@"
<</if>>
<</if>>
<br><br>
Between your efforts and how much <<=setup.getNpcName('npc_boss', 'formal')>> is obviously getting off on the overall power play, it is not much longer before <<he npc_boss>> grunts and explodes, pumping several thick wads of <<getWordCum>> down your throat that you barely manage to swallow without spilling.<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
Unfortunately swallowing most of it without tasting it what you DO taste is strong, pungent and very delicious —
<<if setup.getTotalValue("cum") > 15>>
the near pinnacle of what has become your favourite beverage.
<<else>>
the ideal form of creamy <<if $npc_boss.fem>>intoxicating<<else>>masculine<</if>> essence you have come to so adore.
<</if>>
<<else>>
Fortunately able to gulp most of it down without tasting it,
<<if setup.getTotalValue("cum") > 5>>
you yet end up tasting it enough, <<his npc_boss>> flavour among the strongest you have tasted, bitter and rich and strangely alluring.
<<else>>
you still end up with a mouthful of bitter, salty nastiness, <<his npc_boss>> seed some of the strongest you have ever tasted.
<</if>>
<</if>>
<br><br>
Watching <<him npc_boss>> shrink in your hand, you carefully tuck <<him npc_boss>> away and zip <<him npc_boss>> closed before <<he npc_boss>> steps away.<br>
<br>
"@@.npc_boss;Not bad, not bad. Well, I will leave it there, enjoy the party, both of you.@@"<br>
<br>
Gracing <<him npc_boss>> with a forced smile and a nod, <<=setup.getNpcName('npc_manager', 'formal')>> collects you by the arm and leads the way back to the elevator, the ride passing in silence and then the two of you step out onto the ballroom floor.<br>
<br>
"@@.npc_manager;Well, good to have THAT over with. Enjoy the party, I will see you later in the evening.@@" Striding off, she leaves you on your own as you look around at the well-dressed assortment of fellow employees.<br>
<br>
[<<moveTo "event_party_root" "Look around." 120>>]
</div>/*#
#desc: called for stage 3 party
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<set $player.cutscene.reason = "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.atHome = setup.inPassageTag($scene.beforetasklocation.last(),'home')>>
<<if setup.checkItemTypeTag('shoes', ['bedheels'])>>
<<set $scene.shoesId = setup.getItemFromType("shoes")>>
<<if !$inventory[$scene.shoesId].status.lock>>
<<manipulateItem $scene.shoesId 'lock' true>>
<</if>>
<</if>>
<<set $currentcall = true>>
<<if $scene.atHome>>
<<set $scene.stow = setup.getItemsInInventoryByFilter('tag', ['bulky']) || setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<if $scene.stow.length>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<itemsToWardrobe _items>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bulky'])>>
<<itemsToWardrobe _items>>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_landlord_date_1') && !$currentTasks.task_landlord_date_1.finished && setup.daysToDate($now, setup.getTaskDueDate('task_landlord_date_1')) < 1>>
<<set $scene.cancelLandlord = true>>
<<deleteTask "task_landlord_date_1">>
<<elseif $currentTasks.hasOwnProperty('task_landlord_date_2') && !$currentTasks.task_landlord_date_2.finished && setup.daysToDate($now, setup.getTaskDueDate('task_landlord_date_2')) < 1>>
<<set $scene.cancelLandlord = true>>
<<deleteTask "task_landlord_date_2">>
<</if>>
<</if>>
<<readyToLeaveHome>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $scene.waiting>>
Precisely at the indicated time you get a text that a vehicle is waiting for you downstairs.<<if $scene.stow.length>> You quickly toss a few things in your wardrobe, wondering why you were even still carrying them around.<</if>><br>
<br>
<<if $scene.cancelLandlord>>
You suddenly remember your scheduled date with <<=setup.getNpcName("npc_landlord","first")>>. As much as it pains you to do it, you quickly phone him up to let him know someone came up at work and you will be unable to attend. He is remarkably understanding, as always, "@@.npc_landlord;I understand, <<callPlayer "npc_landlord">>, you just let me know when is better time.@@"<br>
<br>
<</if>>
<<set _reason = setup.checkOutsideDecencyReason()>>
<<if setup.checkOutsideDecency() || (_reason == "makeup_none" || _reason == "makeup_messy")>>
<<if _reason == "makeup_none">>
<<printThought "Crap, no makeup, but no time for that now.">><br>
<br>
<<elseif _reason == "makeup_messy">>
<<printThought "Crap, my makeup is a disaster but there's no time for that now.">><br>
<br>
<</if>>
[<<moveTo "event_party_pickup_2" "Head downstairs." 60 "<<set $currentcall = false>>">>]
<<else>>
<<include thoughts_home>>
<br>
[@@.link_locked;You are not properly dressed to leave your apartment.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<elseif !$scene.atHome>>
You are surprised by your phone ringing, even moreso by the text message you receive. "@@.npc_manager;I told you to be ready for the party this evening. I quite expected you to be at home preparing but no matter, you will find the vehicle waiting for you outside.@@"<br>
<br>
<<if $scene.cancelLandlord>>
You suddenly remember your scheduled date with <<=setup.getNpcName("npc_landlord","first")>>. As much as it pains you to do it, you quickly phone him up to let him know someone came up at work and you will be unable to attend. He is remarkably understanding, as always, "@@.npc_landlord;I understand, <<callPlayer "npc_landlord">>, you just let me know when is better time.@@"<br>
<br>
<</if>>
<<set _reason = setup.checkOutsideDecencyReason()>>
<<if setup.checkOutsideDecency() || (_reason == "makeup_none" || _reason == "makeup_messy")>>
<<if _reason == "no_makeup">>
<<printThought "Crap, no makeup... nothing for that now">><br>
<br>
<<elseif _reason == "makeup_messy">>
<<printThought "Crap, my makeup is a disaster nothing for that now">><br>
<br>
<</if>>
[<<moveTo "event_party_pickup_2" "Head out to the street." 60 "<<set $scene.stow=[]>><<set $currentcall = false>>">>]
<<else>>
<<include thoughts_home>>
[@@.link_locked;You are not properly dressed to go outside.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<<else>>
Bustling about your house, you get a text that a vehicle is waiting for you downstairs.<<if $scene.stow.length>> You quickly toss a few things in your wardrobe, wondering why you were even still carrying them around.<</if>><br>
<br>
<<if $scene.cancelLandlord>>
You suddenly remember your scheduled date with <<=setup.getNpcName("npc_landlord","first")>>. As much as it pains you to do it, you quickly phone him up to let him know someone came up at work and you will be unable to attend. He is remarkably understanding, as always, "@@.npc_landlord;I understand, <<callPlayer "npc_landlord">>, you just let me know when is better time.@@"<br>
<br>
<</if>>
<<set _reason = setup.checkOutsideDecencyReason()>>
<<if setup.checkOutsideDecency() || (_reason == "makeup_none" || _reason == "makeup_messy")>>
<<if _reason == "makeup_none">>
<<printThought "Crap, no makeup, but no time for that now.">><br>
<br>
<<elseif _reason == "messy">>
<<printThought "Crap, my makeup is a disaster but there's no time for that now.">><br>
<br>
<</if>>
[<<moveTo "event_party_pickup_2" "Head downstairs." 60 "<<set $scene.stow=[]>><<set $currentcall = false>>">>]
<<else>>
<<include thoughts_home>><br>
<br>
[@@.link_locked;You are not properly dressed to leave your apartment.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
<</if>>
</div>/*#
#desc: called for stage 3 party
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Street">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
<<if $scene.waiting>>
Taking a deep breath, you keep your steps measured and reserved as you make your way up the hall and down the elevator to find one of the fanciest hover-limos you've ever seen waiting for you at the curb.
<<elseif !setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
A bit scared, though not truly surprised, at <<=ps(setup.getNpcName("npc_manager","formal"))>> ability to know your precise location you head outside to find one of the fanciest hover-limos you've ever seen waiting for you as indicated.
<<else>>
Taking a deep breath, you rush up the hall and down the elevator to find one of the fanciest hover-limos you've ever seen waiting for you at the curb.
<</if>>
<br><br>
Pushing down the memories the vehicle sparks of your disastrous time as a chauffeur, you approach the vehicle as a door silently swings open.<br>
<br>
[<<moveTo "event_party_pickup_3" "Get inside." 60>>]
</div>/*#
#desc: board limo for party
#status: FINISHED 0.7.8.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now.">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _x = setup.refreshConditions('task_stage_3_party')>>
<<set $scene.manager_present = $npc_manager.anger < $npc_manager.affection && $npc_manager.affection > 5>>
<<set $scene.clean = $currentTasks.task_stage_3_party.trigger.playerClean.condition == 1 && $currentTasks.task_stage_3_party.trigger.clothesClean.condition == 1>>
<<set $scene.outfit_approved = ($currentTasks.task_stage_3_party.trigger.fancyFemale.condition == 1 && $currentTasks.task_stage_3_party.trigger.heels.condition == 1) || setup.checkItemSetWorn("tuxedo_red")>>
<<set $scene.makeup_approved = $currentTasks.task_stage_3_party.trigger.fancyMakeup.condition == 1>>
<<if $npc_manager.stage >= 4 && $player.sec_style.clothing.sissy_choker == "" && !$scene.outfit_approved>>
<<initRoom>>
<<moveTo "event_strict_sissy_choker_1">>
<</if>>
<<if !$scene.makeup_approved>>
<<set $player.makeup.messed = 10>>
<<set $player.makeup.template = "normalmakeup">>
<</if>>
<<if !$scene.clean>>
<<incrementEmotion 'anger' 'npc_manager' 4>>
<</if>>
<<if !$scene.outfit_approved>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.manager_present>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_formal_holo")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.manager_present>>
The interior of the limo is dark and you can't really make anything out until you take a seat on one side only for a light to click on revealing your <<=setup.getNpcName("npc_manager","title")>> sitting across from you like an empress in all her glory.<br>
<br>
Dressed in a long, but perfectly fitted, dress and stunning heels she
<<if $scene.outfit_approved && $scene.clean && $currentTasks.task_stage_3_party.trigger.fancyMakeup.condition == 1>>
smiles across at you. "@@.npc_manager;Well, well, you look wonderful. I am quite glad I decided to come pick you up rather than just sending a drone vehicle. It is just too bad that it would mess up your lovely makeup or I would have you crawl over here between my thighs to help take the edge off how excited seeing you like this has me feeling.@@"<br>
<br>
<<if $player.makeup.template == "">>
[<<moveTo "event_party_pickup_3_oral" "Point out that your makeup is permanently applied." 60>>]<br>
<</if>>
<<if $npc_manager.flags.party.timesAttended == 0>>
[<<moveTo "event_party_pickup_4_first" "Continue." 300>>]
<<else>>
[<<moveTo "event_party_pickup_4" "Continue." 300>>]
<</if>>
<<elseif $scene.outfit_approved>>
<<if $scene.makeup_approved>>
wrinkles her nose. "@@.npc_manager;Did you... forget to wash? No, this will not do! You smell terrible.@@" Reaching under the seat she pulls out a hydrosonic cleansing wand that she runs over your body. "@@.npc_manager;Better, but in the future you really need to pay better attention to your hygiene.@@"<br>
<br>
<<if $npc_manager.flags.party.timesAttended == 0>>
[<<moveTo "event_party_pickup_4_first" "Continue." 300>>]
<<else>>
[<<moveTo "event_party_pickup_4" "Continue." 300>>]
<</if>>
<<else>>
shakes her head. "@@.npc_manager;You have such a pretty face... why do you insist on failing to show it off with <<if $player.makeup.messed > 24>>such ill-maintained<<else>>improper<</if>> makeup? Here, let me give you something more appropriate.@@" You lean forward and she raises a mask to your face. There is warmth, then a flash as fresh makeup is applied over top. "@@.npc_manager;Fortunately it only needs to last a few hours... in the future, try to do it properly, please. Even more than usual, you are in a representative position.@@"<br>
<br>
<<if $npc_manager.flags.party.timesAttended == 0>>
[<<moveTo "event_party_pickup_4_first" "Continue." 300>>]
<<else>>
[<<moveTo "event_party_pickup_4" "Continue." 300>>]
<</if>>
<</if>>
<<else>>
frowns in disappointment. "@@.npc_manager;Here I decide to surprise you by showing up in person and you choose to wear... this.@@" She pinches the bridge of her nose and shakes her head. "@@.npc_manager;Fortunately I always come prepared, rather than trying to sort out your failure how about you just strip and I give you something more appropriate? We should have just enough time to get you looking proper before we are scheduled to arrive.@@"<br>
<br>
[<<moveTo "event_party_pickup_3_change" "Remove your clothes." 300>>]
<</if>>
<<else>>
Taking a seat in the dark limo it glides into motion and then a shimmering hologram appears before you depicting your <<=setup.getNpcName("npc_manager","title")>> in all her regal glory.<br>
<br>
<<if $scene.outfit_approved>>
"@@.npc_manager;Good, you are dressed appropriately. The drone vehicle will have you here shortly and then we may head up together.@@"<br>
<br>
<<if $npc_manager.flags.party.timesAttended == 0>>
[<<moveTo "event_party_pickup_4_first" "Continue." 300>>]
<<else>>
[<<moveTo "event_party_pickup_4" "Continue." 300>>]
<</if>>
<<else>>
Her larger than life image looks down at you and frowns in disappointment. "@@.npc_manager;You thought this would be appropriate for a formal party?@@" She sighs in exasperation. "@@.npc_manager;It is times like this that I remember how much work remains to get you into proper shape. Fortunately one of us has foresight, go ahead and strip. You will find something more appropriate under your seat as well as equipment to help attend to makeup and the rest.@@"<br>
<br>
[<<moveTo "event_party_pickup_3_change" "Strip." 300>>]<br>
[<<moveTo "event_party_pickup_3_fail" "Refuse." 300>>]
<</if>>
<</if>>
</div>/*#
#desc: eat manager out before party
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$player.virgin.cunnilingus>>
<<if $scene.first>>
<<set $player.virgin.cunnilingus = "npc_manager">>
<</if>>
<<applyExperience 'oral' 5 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 13 'very' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $npc_manager.flags.party_oral = true>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<if $player.body_ref.penis>>
<<set _path = "./images/scenes/" + $player.skintone + "/limo_cunnilingus.jpg">>
<<else>>
<<set _path = "./images/scenes/" + $player.skintone + "/limo_cunnilingus_cockless.jpg">>
<</if>>
<<showImage _path>>
<div id="invframe" class="scrolltext">
In response to your offer, <<=setup.getNpcName("npc_manager","formal")>> spreads her legs and smiles down at you as you crawl across the limo. Taking a moment to caress your face, she tenderly strokes your cheek.<br>
<br>
"@@.npc_manager;My beautiful girl, at my feet where she belongs.@@" Looking up and past you, her tone becomes more commanding. "@@.npc_manager;Driver, take the long route.@@"<br>
<br>
Turning her attention back towards you, she guides your face forward between her thighs. "@@.npc_manager;There, would not want you feeling... rushed.@@"<br>
<br>
With her guiding hand gently resting on your head, your lips find their prize, the heady strength of her feminine flavour washing over your tongue as you set to work, <<if $scene.first>>it may be your first time... but it feels oh-so-natural to be here, between her legs, <</if>>licking and kissing until she is purring in contentment. She strokes your head in approval as you enjoy the heady reward of her delighted sounds mixed with her wonderful taste.<br>
<br>
Exploring her folds and as far into her body as your eager tongue can reach, you are left wanting more when she gently pulls you away, showing care not to muss your hair as she holds you at arms length.<br>
<br>
Catching your breath, you note a subtle flushed appearance beneath her formal makeup as she congratulates you. "@@.npc_manager;As much as I would rather this lovely ride continue we have, alas, arrived. Come, my dear, the party awaits.@@"<br>
<br>
<<if $npc_manager.flags.party.timesAttended == 0>>
[<<moveTo "event_party_pickup_4_first" "Continue." 300>>]
<<else>>
[<<moveTo "event_party_pickup_4" "Continue." 300>>]
<</if>>
</div>/*#
#desc: change in limo before party
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverythingButUnderwear>>
<<set _bra = setup.getItemFromType("bra")>>
<<if _bra != "">>
<<removeItem _bra true>>
<</if>>
<<addItemSet 'formal_cocktail_pink'>>
<<wearItemSet 'formal_cocktail_pink'>>
<<include "cleanPlayer">>
<<set $scene.fixMakeup = $currentTasks.task_stage_3_party.trigger.fancyMakeup.condition != 1>>
<<if $scene.fixMakeup>>
<<set $player.makeup.template = "normalmakeup">>
<<set $player.makeup.messed = 0>>
<</if>>
<<washClothes>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.manager_present>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_formal_holo")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.manager_present>>
Under <<=ps(setup.getNpcName("npc_manager","formal"))>> stern gaze,
<<else>>
Under the glowering gaze of your holographic <<=setup.getNpcName("npc_manager","title")>>,
<</if>>
you remove your clothes, run a hydrosonic cleansing wand over your body and change into a formal pink dress and heels.<br>
<br>
<<if $scene.fixMakeup>>
<<if $scene.manager_present>>
Finally she holds forth a mask,
<<else>>
Finally she directs you to use a rigid face mask,
<</if>>
guiding you to place it over your face where you feel a warmth spread as it cleans and applies a fresh covering of feminine makeup.<br>
<br>
<</if>>
<<if $scene.manager_present>>
"@@.npc_manager;There, was that so hard?@@" She asks with a snort. "@@.npc_manager;Dressing to impress is one of the most important duties you have, please focus yourself better in the future.@@"<br>
<br>
As she finishes speaking the limo comes to a stop.
<<else>>
"@@.npc_manager;I suppose that will have to do. You will be arriving shortly. Do attempt to be on better behaviour for the remainder of the evening.@@" The hologram disappears and a few minutes later the limo comes to at a stop.
<</if>>
<br><br>
<<if $npc_manager.flags.party.timesAttended == 0>>
[<<moveTo "event_party_pickup_4_first" "Continue." 300>>]
<<else>>
[<<moveTo "event_party_pickup_4" "Continue." 300>>]
<</if>>
</div>/*#
#desc: refuse to change in limo before party
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.manager_present>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_formal")>>
<<else>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_manager","npc_manager_formal_holo")>>
<</if>>
<div id="invframe" class="scrolltext">
The hologram of <<=setup.getNpcName("npc_manager","formal")>> glowers down at you for a few moment as you sit motionless.<br>
<br>
"@@.npc_manager;Such impertinence.@@"
<<if $npc_manager.flags.cruel > 0>>
Her gaze narrows, and you hear a click as the doors to the limo simultaneously lock.<br>
<br>
"@@.npc_manager_dom;As I explained earlier. We have a party to attend, and I WILL have you dressed for the occasion. So get changed, <<if $fetish.sissy>>sissy<<else>>now.<</if>>@@"<br>
<br>
[<<moveTo "event_party_pickup_3_change" "Change clothes as commanded." 300>>]
<<else>>
Her eyes flit off-screen for a moment and the car comes to a stop and the door opens.<br>
<br>
"@@.npc_manager;Now then the time of the party swiftly approaches, either get dressed or get out, but know that if you get off this ride now, that will be the end of it and <<=$player.first_name>>?@@" You glance out the door onto a dimly lit street. "@@.npc_manager;You have been down there, you know that road, you know exactly where it ends. And I know that is not where you want to be.@@"<br>
<br>
[<<moveTo "event_party_pickup_3_change" "Change clothes as instructed." 300>>]<br>
[<<moveTo "event_bad_end_party" "Get out and be done with all of this." 300>>]
<</if>>
</div><<set $gameOver = 'ditch_party'>>
<<include playerMenuLocked>>
You step out of the limo and it speeds away. A few moments later the severity of your decision is reinforced as you get a fresh life experience — fired by text message.<br>
<br>
Over the next weeks you try to put your life back together, surprised at how much you miss your demanding, slightly insane now ex-boss. Despite any misgivings however it seems your decision is irrevocable, as even just showing up to the building results in the guards acting like you never worked there and threatening to throw you out, calls to her going unheeded<<if ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4)>> even attempting to talk about it with your old friend resulting in stonewalling and swift changes of topic<</if>>.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>/*#
#desc: stage 3 party volunteer to waitress
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_party_kitchen.png" "party_generic_waitress">>
<div id="invframe" class="scrolltext">
You head for the kitchen and ask one of the waitresses if you could work as well?<br>
<br>
<<switch $scene.wornCollarType>>
<<case 'ring'>>
She glances at your collar and shakes her head. "@@.generic_female1;I'm sorry, but your owner should have had you here early if they wanted you to work. Perhaps you could return some other evening?@@"<br>
<br>
<<case 'collar'>>
She glances at your collar and raises an eyebrow. "@@.generic_female1;I suppose you could... and Goddess knows we could always use the help... Are you sure you want to, though? The work can get a bit... hard, and there's no getting off until the end of the evening. Well, you might get off, depending.@@" She winks at you knowingly, "@@.generic_female1;What I mean to say is you can't stop working. If you're okay with that, well, I can get you a uniform and get you started serving!@@"<br>
<br>
[<<moveTo "event_party_work_waitress_intro_2" "Sounds good!" 60>>]<br>
<<case 'choker'>>
She glances at your choker and shakes her head. "@@.generic_female1;Sorry, but only slaves are allowed to work as waitresses — usually that means we're assigned to work by our owners, but we get the occasional volunteer. In any case, out customers expect us to be available for use, so you can see why you would be unable to properly discharge your duties.@@"<br>
<br>
<<case 'necklace'>>
She nervously glances at your necklace. "@@.generic_female1;Please, Mistress — I'm busy enough, I don't have time for mind games...@@"<br>
<br>
When you do not immediately respond she curtsies and hurries away.<br>
<br>
<<default>>
ERROR unexpected scene.worn collar: <<=$scene.wornCollarType>>
<</switch>>
[<<moveTo "event_party_root" "Walk away and do something else." 60>>]
</div>/*#
#desc: stage 3 party get change to voluntary waitress
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'maid_slutty_black'>>
<<wearItemSet 'maid_slutty_black'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_party_kitchen.png">>
<div id="invframe" class="scrolltext">
You agree to work as a waitress for the remainder of the evening and she leads you to the back of the kitchen where some spare waitress uniforms are hung.<br>
<br>
She takes a moment glancing at your size before handing you an outfit that you're pretty sure is a size too small...<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
<<printThought "Tighter is better! It makes me look my slutty best!">>
<<else>>
<<printThought "Well, I guess that's alright, I do look good in tight clothes...">>
<</if>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
<<printThought "Hmm, maybe I'll get better tips?">>
<<else>>
<<printThought "Go figure, given this company...">>
<</if>>
<</if>>
<br><br>
You get changed and have a tray handed to you — looks like it's off to work!<br>
<br>
[<<moveTo "event_party_work_waitress_root" "Time to get to wait(ress)-ing!" 60>>]
</div>/*#
#desc: stage 3 party waitress option
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty('work_party_end')>>
<<removeEvent 'work_party_end'>>
<</if>>
<<if $events.hasOwnProperty('party_spill_event')>>
<<removeEvent 'party_spill_event'>>
<</if>>
<<if State.hasPlayed("event_party_work_waitress_rival_1") && !$scene.spy && (!State.hasPlayed("event_party_maid_spy_1") || random(1,3) == 1)>>
<<initRoom>>
<<moveTo "event_party_maid_spy_1">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png">>
<div id="invframe" class="scrolltext">
You look around the party...<br>
<br>
<<if State.hasPlayed("event_rival_destruction_5")>>
<<if $npc_rival.flags.fate == "secretary">>
You spot <<=setup.getNpcName("npc_rival","formal")>>... gagged and hobbled, trailing obediently behind on <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> leash. <<=setup.getNpcName("npc_sissy_secretary","first")>> notices you and gives you a little wave before leading her secretary-in-training off into the crowd.<br>
<br>
<<else>>
<</if>>
<<else>>
<<if $scene.listen_rival_waitress>>
[@@.link_locked;You have already listened in on <<=setup.getNpcName("npc_rival","formal")>>, attempting again would only draw suspicion and get you in trouble.@@]<br>
<<else>>
[<<moveTo "event_party_work_waitress_rival_1" 'See if you can listen in on <<=ps(setup.getNpcName("npc_rival", "formal"))>> conversation.' 300>>]<br>
<</if>>
<</if>>
<br><br>
<<set _midnight = setup.setNextDate($now, 0, 23, 30)>>
<<set _timeToMidnight = setup.secondsToDate($now,_midnight)>>
[<<moveTo "event_party_work_waitress_end" 'Keep working for the rest of the evening.' _timeToMidnight>>]
</div>/*#
#desc: stage 3 party waitress finish
#status: RELEASED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 50>>
<<include "endOfPartyCollar">>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You continue to bustle your way back and forth delivering drinks and "other" things, almost surprised when midnight rolls around and <<=setup.getNpcName("npc_manager","formal")>> appears to collect you.<br>
<br>
"@@.npc_manager;Just could not get enough work during normal hours, hmm? Well, so long as it does not impact your performance tomorrow...@@"<br>
<br>
You nod and she leads the way to the elevator <<if $scene.replaceCollar>>where she replaces your collar <</if>>and summons a car to take you home.<br>
<br>
<<if $scene.spy>>
[<<moveTo "theme_party_maid_spy_1" 'Ask about the cryptic missives you were trading about.' 180 "<<set $scene.fromParty=true>>">>]<br>
<</if>>
[<<moveTo "room_foyer" 'Home.' 300>>]
</div>/*#
#desc: stage 3 party try to evesdrop on rival/conspirator
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.listen_rival=true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImage("npc_rival") setup.charImage("generic","npc_conspirator")>>
<div id="invframe" class="scrolltext">
You attempt to approach <<=setup.getNpcName('npc_rival', 'formal')>> and the <<man>> you recognise from the data crystal video.<br>
<br>
Whatever they were discussing, they clam up as soon as you approach, "@@.npc_rival;Move along.@@" <<=setup.getNpcName('npc_rival', 'formal')>> states as <<he npc_rival>> waves you off dismissively, waiting until you are out of earshot before resuming <<his npc_rival>> conversation.<br>
<br>
<<printThought "Hmm, what could they be discussing?">><br>
<br>
As you ponder things, you notice a waitress pass by to refresh their drink orders, <<if $npc_rival.fem == $options.fem>>the two <<men>><<else>>they<</if>> barely glance at her, carrying on their conversation as if she was totally irrelevant.<br>
<br>
<<printThought "Hmm... seems like I need to figure out some way to go under-cover.">><br>
<br>
[<<moveTo "event_party_root" "Back to the party." 300>>]
</div>/*#
#desc: stage 3 party work waitress, listen npc_rival
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.data_crystal.video>>
<<set $npc_rival.flags.evesdrop=true>>
<<set $scene.listen_rival_waitress=true>>
<</if>>
<<include "endOfPartyCollar">>
<<if $events.hasOwnProperty('work_party_end')>>
<<removeEvent 'work_party_end'>>
<</if>>
<<if $events.hasOwnProperty('work_party_assist_abort_end')>>
<<removeEvent "work_party_assist_abort_end">>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/party_populated.png" setup.charImage("npc_rival") setup.charImage("generic","npc_conspirator")>>
<div id="invframe" class="scrolltext">
<<if $player.flags.data_crystal.video>>
Dressed as a waitress you are able to approach, and even linger within earshot, as <<=setup.getNpcName('npc_rival', 'formal')>> chats with another conspirator.<br>
<br>
Hearing them talk sends a shiver down your spine — it seems that they are getting very close to the roll-out of some culmination of <<=ps(setup.getNpcName('npc_boss', 'formal'))>> plans — all of the brainwashing, drugging and enslavement moved far beyond the upper floor to not just the company itself, but those subsidiaries it has not yet swallowed... and from there...<br>
<br>
On one level you aren't surprised, but on another... for whatever you may feel about your own development you still have free will, this seems like a plan to build an effective slave society with <<=setup.getNpcName('npc_boss', 'formal')>> at the top. They mention <<=setup.getNpcName('npc_manager', 'formal')>> once, but dismissively; it appears that <<=ps(setup.getNpcName('npc_rival', 'formal'))>> friend has abandoned <<his npc_rival>> previous plan to frame your <<=setup.getNpcName('npc_manager', 'title')>> in light of accelerated time-lines somehow making such effectively redundant.<br>
<br>
<<if $npc_rival.fem == $options.fem>>The two <<men>><<else>>They<</if>> may be paying you no attention, but one of your fellow waitresses approaches you with a look of annoyance, explaining that they're running behind and they need you in the kitchen.<br>
<br>
You hurry back to "work" rather than raise suspicions as you contemplate what you can do to stop <<=ps(setup.getNpcName('npc_boss', 'formal'))>> plans...
<<else>>
You try to eavesdrop on <<=setup.getNpcName('npc_rival', 'formal')>>, but you end up pulled away by a very insistent customer, <<=setup.getNpcName('npc_rival', 'formal')>> having disappeared by the time you look back.
<</if>>
<br><br>
The remainder of your shift passes uneventfully and you end the night <<if $scene.replaceCollar>>with <<=setup.getNpcName('npc_manager', 'formal')>> replacing your collar before she sends you<<elseif $scene.partyTempCollar>>with <<=setup.getNpcName('npc_manager', 'formal')>> reclaiming your borrowed neck adornment before sending you<<else>>by returning<</if>> home.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: approach woman who knows about poker game
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.npc_poker_intro_slave_first = $npc_poker_intro_slave.stage < 1>>
<<if $npc_poker_intro_slave.stage < 1>>
<<set $npc_poker_intro_slave.stage = 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
<div id="invframe" class="scrolltext">
You approach
<<if $scene.npc_poker_intro_slave_first>>
an elegantly dressed, beautiful collared woman who greets you with a subtle nod. You exchange introductions and she states her name as <<=setup.getNpcName("npc_poker_intro_slave","formal")>>. Up close you are even more stunned by her collar. Made of gleaming gold, it looks nearly a centimetre thick and over four high, with a thick ring dangling from the front.
<<else>>
<<=setup.getNpcName("npc_poker_intro_slave","formal")>> and she greets you with a smile, her radiant gold collar gleaming bright around her throat.
<</if>>
<br><br>
<<include "party_poker_intro_choices">>
</div>/*#
#desc: discussion topics with npc_poker_intro_slave
#status: FINISHED 0.7.8.0
#*/
<<if $scene.discussion.npc_poker_intro_slave.includes('collar')>>
[@@.link_locked;You have already complimented her collar.@@]<br>
<<else>>
[<<moveTo "event_party_poker_intro_2_collar" 'Compliment her collar.' 60>>]<br>
<</if>>
<<if $scene.discussion.npc_poker_intro_slave.includes('party')>>
[@@.link_locked;You already asked her about the party.@@]<br>
<<else>>
[<<moveTo "event_party_poker_intro_2_party" 'Ask her about the party.' 60>>]<br>
<</if>>
<<if $scene.discussion.npc_poker_intro_slave.includes('work')>>
[@@.link_locked;You already talked to her about work.@@]<br>
<<if $scene.discussion.npc_poker_intro_slave.includes('training')>>
[@@.link_locked;You already talked to her about her training.@@]<br>
<<else>>
[<<moveTo "event_party_poker_intro_2_training" 'Ask about her training to be an executive assistant.' 60>>]<br>
<</if>>
<<else>>
[<<moveTo "event_party_poker_intro_2_work" 'Ask about her job at the company.' 60>>]<br>
<</if>>
<<if $scene.discussion.npc_poker_intro_slave.includes('boss')>>
[@@.link_locked;You already talked to her about her boss.@@]<br>
<<elseif $scene.discussion.npc_poker_intro_slave.includes('work') || $scene.discussion.npc_poker_intro_slave.includes('party')>>
[<<moveTo "event_party_poker_intro_2_boss" 'Ask about her boss, <<=setup.getNpcName("npc_pokerman","formal")>>.' 60>>]<br>
<</if>>
<<if $npc_poker_intro_slave.stage >= 2>>
[@@.link_locked;You already learned the location of the poker game.@@]<br>
<<elseif $scene.discussion.npc_poker_intro_slave.includes('boss') || $scene.discussion.npc_poker_intro_slave.includes('party')>>
[<<moveTo "event_party_poker_intro_2_poker" 'Ask about the poker game.' 60>>]<br>
<</if>>
<<if $scene.discussion.npc_poker_intro_slave.includes('manager')>>
[@@.link_locked;You already asked what she thought of your <<=setup.getNpcName("npc_manager","title")>>.@@]<br>
<<elseif $scene.wornCollarType == "necklace">>
[<<moveTo "event_party_poker_intro_2_manager" 'Ask what she thinks of <<=setup.getNpcName("npc_manager","other")>>.' 60>>]<br>
<<else>>
[<<moveTo "event_party_poker_intro_2_manager" 'Ask what she thinks of your manager, <<=setup.getNpcName("npc_manager","formal")>>.' 60>>]<br>
<</if>>
<<if !$npc_boss.flags.party_join && $npc_nintendolls.stage >= 6 && $npc_manager.stage >= 4>>
<<if $scene.discussion.npc_poker_intro_slave.includes('ceo')>>
[@@.link_locked;You already asked her advice on how to appeal to <<=setup.getNpcName("npc_boss","formal")>>.@@]<br>
<<else>>
[<<moveTo "event_party_poker_intro_2_ceo" 'Ask if she has any advice on appealing to <<=setup.getNpcName("npc_boss","formal")>>?' 60>>]<br>
<</if>>
<</if>>
[<<moveTo "event_party_root" 'Thank her for her time and go do something else.' 60>>]/*#
#desc: talk to poker slave about her collar
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.npc_poker_intro_slave.pushUnique('collar')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
<div id="invframe" class="scrolltext">
You compliment her on her gorgeous collar and she smiles. "@@.npc_poker_intro_slave;Thank you, I am of course very proud to have earned my collar. Of course what you have is lovely, as well. It truly is a delight to be owned.@@"<br>
<br>
Despite her compliment, you can sense some mixed feelings behind her words and you ask what she means.<br>
<br>
<<switch $scene.wornCollarType>>
<<case "choker">>
"@@.npc_poker_intro_slave;Oh, I didn't mean any offence. Just... well, reminiscing to when I could wear something like what you have, back before I was promoted to the upper floors and the associated heightened requirements and responsibilities.@@"
<<case "collar">>
"@@.npc_poker_intro_slave;Nothing, nothing just, well... being unowned... well, it seems like like such a strange idea to me now! I hope you prove yourself soon and earn you ring.@@"
<<case "ring">>
"@@.npc_poker_intro_slave;Nothing, nothing, just well... reflecting on how hard I worked to earn this lovely collar I wear now. Certainly being owned is a glorious first step, and I congratulate you on that, but as heavy as the weight, and responsibility! of what I now wear is, I would not trade it for anything.@@"
<<case "necklace">>
"@@.npc_poker_intro_slave;Nothing, Mistress, just wondering what it would be like to be in charge rather than an obedient slave. It seems like it must be quite stressful.@@"
<<default>>
ERROR: unexpected scene.worn collar <<=$scene.wornCollarType>>
<</switch>>
<br><br>
<<include "party_poker_intro_choices">>
</div>/*#
#desc: talk to npc_poker_slave about the party
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.npc_poker_intro_slave.pushUnique('party')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
<div id="invframe" class="scrolltext">
<<if $scene.npc_poker_intro_slave_first>>
You ask her how she is enjoying this week's party.<br>
<br>
"@@.npc_poker_intro_slave;Oh, the usual... A bit bored, to be honest. <<=setup.getNpcName("npc_pokerman","formal")>> has been doing well at the poker table so <<he npc_pokerman>> has not really had need of me.@@"<br>
<<else>>
You ask what she thinks of the party and if she has been to them before.<br>
<br>
"@@.npc_poker_intro_slave;Oh, of course, we come every week. <<=setup.getNpcName("npc_pokerman","formal")>>, that's my owner, well, <<he npc_pokerman>> just can't resist playing a few hands at the poker table! Fortunately for <<his npc_pokerman>> wallet <<he npc_pokerman>> has been playing well.@@"
<</if>>
She seems a bit saddened by this last bit and you ask her why.<br>
<br>
"@@.npc_poker_intro_slave;Well, you see, if <<he npc_pokerman>> starts playing badly, <<he npc_pokerman>> has me crawl under the table as <<his npc_pokerman>> "good luck charm," but when <<hes npc_pokerman>> doing well, <<he npc_pokerman>> says it's a distraction and that <<he npc_pokerman>> doesn't want to "waste" my luck. Obviously I want <<him npc_pokerman>> to win but... well, I miss not tasting <<his npc_pokerman>> big, beautiful cock in my mouth — or any of my other holes. Certainly I enjoy being part of team-building exercises with <<his npc_pokerman>> colleagues, but I do so wish I could feel <<him npc_pokerman>> in all three of my holes simultaneously — you understand, of course.@@"<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
You have to fight not to get drawn into her fantasy, gushing enthusiastically the two of you exchange gangbang tips for several minutes before you reluctantly shift the conversation to something else.
<<else>>
You smile and nod, easily relating to her obvious cock-lust. The two of you share a sisterly glance before you change the subject.
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
You may be learning to appreciate other people's penis' more than you did before, but her enthusiasm is still a bit strange and you quickly try to change the subject.
<<else>>
You're a bit weirded out by her enthusiastic gushing and quickly try to change the subject.
<</if>>
<</if>>
<br><br>
<<include "party_poker_intro_choices">>
</div>/*#
#desc: talk to npc_poker_slave about her job
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.npc_poker_intro_slave.pushUnique('work')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
<div id="invframe" class="scrolltext">
You ask what she does for the company and she beams with pride. "@@.npc_poker_intro_slave;I am a personal executive assistant serving and owned by <<=setup.getNpcName("npc_pokerman","formal")>>.@@"<br>
<br>
You can tell she wants to say more and you ask her what it's like working for <<him npc_pokerman>>.<br>
<br>
"@@.npc_poker_intro_slave;Very prestigious, I mean at first I was intimidated, of course, but it is what my training was all about. It is so very important that such a powerful <<man npc_pokerman>> has an assistant to keep things in order so <<he npc_pokerman>> can focus on the important work of marketing our wonderful company. Serving <<him npc_pokerman>> is a big... responsibility but without assistants like <<if $scene.collar != "necklace">>you and <</if>>me this company could never operate as effectively as it does.@@"<br>
<br>
<<include "party_poker_intro_choices">>
</div>/*#
#desc: talk to npc_poker_slave about her boss
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.npc_poker_intro_slave.pushUnique('boss')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
<div id="invframe" class="scrolltext">
You ask her about her boss and she gets a bit starry-eyed. "@@.npc_poker_intro_slave;Oh <<=setup.getNpcName("npc_pokerman","formal")>> is just so brilliant and wonderful. <<He npc_pokerman>> heads up the new product division. Not R&D, but more how do we get things to market and turn a profit. It's really important work, plus sometimes <<he npc_pokerman>> lets me try out the new products and give feedback! That can be really stressful sometimes, but it's also just such a privilege to be able to help <<him npc_pokerman>> like that, and <<he npc_pokerman>> really values my input!@@"<br>
<br>
You ask where her boss is now and she sighs.<br>
<br>
"@@.npc_poker_intro_slave;Playing poker, as usual, I mean that's pretty much the only reason <<he npc_pokerman>> comes to these things. Until <<he npc_pokerman>> needs me, I just spend my time networking and such — someone has to keep their finger on the pulse of this company!@@"<br>
<br>
<<include "party_poker_intro_choices">>
</div>/*#
#desc: talk to npc_poker_slave appealing to npc_boss
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.npc_poker_intro_slave.pushUnique('ceo')>>
<<if $player.flags.uniform_upgrade.aslutStage < 3>>
<<addTaskById "aslut_1_final">>
<<set $player.flags.uniform_upgrade.aslutStage = 3>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_poker_intro_slave","first")>> if she might have any advice on appealing to <<=setup.getNpcName("npc_boss","formal")>>?<br>
<br>
"@@.npc_poker_intro_slave;Ah <<=setup.getNpcName("npc_boss","formal")>>... if I did not have <<=setup.getNpcName("npc_pokerman","formal")>> I would surely be infatuated with <<him npc_boss>>. So <<if $npc_boss.fem>>beautiful<<else>>handsome<</if>>, so powerful! Anyway, I suppose you're looking to draw <<his npc_boss>> eye? Sure, I can help — <<he npc_boss>> does have quite the particular preferences...@@" She looks you over.<br>
<br>
"@@.npc_poker_intro_slave;Let's see...
<<if setup.getCurrentMakeup() == "moviestar">>
Your makeup is good — I've seen <<him npc_boss>> bringing celebrities to various company events, so <<he npc_boss>> definitely has a preference for that sort of movie-star style.
<<else>>
I've seen <<him npc_boss>> bringing celebrities to various company events, so <<he npc_boss>> definitely has a preference for that sort of movie-star style, so you'd want to change your makeup to better mimic that.
<</if>>
<<if setup.checkItemTypeWorn("earring")>>
You're wearing earrings, that's good.
<<else>>
You'll want to invest in some earrings — it's the little accessories that make everything come together.
<</if>>
<<if ['large'].includes(setup.calcBreastSize())>>
<<He npc_boss>> likes large, but not TOO large, breasts... yours look perfect.
<<else>>
<<He npc_boss>> prefers large, but not TOO large, breasts...
<<if setup.calcBreastSize() == "none">>
You don't have any breasts so... that's a bit of a problem.
<<elseif setup.calcBreastSize() == "massive">>
Yours fall into that "too large" category, at present.
<<else>>
I'd say your current pair are a bit small for <<his npc_boss>> liking.
<</if>>
<</if>>
<<if setup.getItemFromType("nipple_piercing") != "">>
<<He npc_boss>> also believes nipples should be pierced, so you're good there.
<<else>>
In addition, you'll need pierced nipples.
<</if>>
<<His npc_boss>> vision of a proper profile is one that is corseted,
<<if setup.checkItemTypeWorn("corset") && $player.timebased.tightlacing == 100>>
so just like you have now.
<<elseif setup.checkItemTypeWorn("corset")>>
and not just corseted, but laced completely down — I'd recommend an auto-lace to make sure there's not a millimetre of slack
<<else>>
and once you have it, you'll want to make sure it's perfectly laced down tight.
<</if>>
<<if $player.nails.style != "">>
Your nails look good — and that's definitely important.
<<else>>
You need to get your nails done, sister! And not just for <<his npc_boss>> sake, just in general it really is part of a full feminine look.
<</if>>
<<if $player.flags.uniform_upgrade.aslutStage >= 4 || setup.checkTaskUntimedComplete('aslut_1_final')>>
I can tell at a glance that you've mastered the basics of the A-SLUT program — which is good, because <<if $npc_boss.fem>>she'll<<else>>he'll<</if>> be looking for that too.
<<else>>
I believe you are familiar with the A-SLUT program? You'll want to have finished mastering the basics — heels, earrings and corsets. This sort of certification is at your manager's discretion, so you'll want to really put your best foot forward wearing all the pieces and showing off what you've learned.
<<if !$npc_manager.flags.uniform_upgrade.lunch_heel_training_complete>>
And by learned, well... Sometimes those closest to us don't notice gradual changes. Walking in heels is a key part of A-SLUT, maybe arrange things to show off your skills by delivering lunch or the like.
<</if>>
<</if>>
<<if $fetish.tattoos>>
<<He npc_boss>> has this idea that a tattoo is an important step in learning to embrace pain...
<<if setup.hasTattoo()>>
I guess you have experience with such, so you should be fine.
<<else>>
So you'll want to get some ink done if you want to impress <<him npc_boss>>.
<</if>>
<</if>>
<<if ($player.body.penissize[0] <= 3 || !$player.body_ref.penis)>>
<<He npc_boss>> likes a sleek, smooth appearance... which you
<<if $player.body_ref.penis>>
seem small enough to sport.
<<else>>
clearly have.
<</if>>
<<else>>
Judging by your bulge, your penis is... well... a bit large for <<his npc_boss>> preferences. <<He npc_boss>> likes a sleek, smooth appearance.
<</if>>
<<if $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity')>>
<<He npc_boss>> believes in the concept of "corporate ownership" — which means you'd want... or, I suppose, NEED, to be locked into one of the latest 9001-series chastity devices.
<</if>>
<<He npc_boss>> loves high heels — the steeper the better —
<<if setup.getTotalValue("heels") >= 15 && setup.getItemObjFromType('shoes').hasOwnProperty('heels') && setup.getItemObjFromType('shoes').heels.difficulty >= 7>>
what you have on now looks perfect.
<<elseif !setup.getItemObjFromType('shoes').hasOwnProperty('heels')>>
flats like you're wearing... no, <<he npc_boss>> would never accept it.
<<else>>
yours are nice, but a little short.
<</if>>
Of course you'd need a collar that would let you be under <<his npc_boss>> ownership for the evening,
<<if ($scene.wornCollarType == 'collar' || $scene.wornCollarType == 'ring')>>
which yours certainly qualifies.
<<else>>
which means a collar with a ring, unlike what you have now.
<</if>>
@@"<br>
<br>
She takes a deep breath. "@@.npc_poker_intro_slave;Whew!, That was a lot! But... so is <<=setup.getNpcName("npc_boss","formal")>>. I guess I'll end by wishing you good luck which, well, around <<=setup.getNpcName("npc_boss","formal")>> I'd say you'll definitely need it!@@"<br>
<br>
<<if $scene.addAslut1>>
You nod, thanking her for the help, and making a mental note of what you have left to do to "complete" your A-SLUT qualifications. <<hint $options "A new task has been added.">><br>
<br>
<</if>>
<<include "party_poker_intro_choices">>
</div>/*#
#desc: talk to npc_poker_slave about her training
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.npc_poker_intro_slave.pushUnique('training')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
<div id="invframe" class="scrolltext">
You ask her about the training she went through to earn her current position.<br>
<br>
"@@.npc_poker_intro_slave;Well I heard about this company and its "advanced" secretary programs and after building up my resume, I finally managed to get a job offer. Of course that was just the first step, I had to work extra diligently to prove myself so that I could enrol in the advanced executive assistant course taught by <<=setup.getNpcName("npc_development","formal")>>. Talk about a slave driver! I had no idea what I was getting into taking that class and she worked me harder than I ever had before in my life but it was all worth it when I earned high enough marks to get the important placement under <<=setup.getNpcName("npc_pokerman","formal")>>.@@"<br>
<br>
You ask if she can tell you any more about the class but she shakes her head.<br>
<br>
"@@.npc_poker_intro_slave;Sorry, like, one of the rules is you can't tell any future enrollee what they're in for and, well, from experience I totally agree with that policy. I dunno if I would have signed up if I knew all of what I was in for but looking back? Well, it's the second best thing to happen to me! After getting collared by <<=setup.getNpcName("npc_pokerman","formal")>>, but of course I never would have met <<him npc_pokerman>> if it wasn't for the class so... yeah, if you get the opportunity to <<if $scene.wornCollarType == "necklace">>send your subordinate to one of take <<=ps(setup.getNpcName("npc_development","formal"))>> make sure they do — and remind them to give it their all, it will really further their career — and yours!<<else>>take <<=ps(setup.getNpcName("npc_development","formal"))>> class, do it, and really give it your all, it'll open up a whole world of opportunity for you and your career.<</if>>@@"<br>
<br>
<<include "party_poker_intro_choices">>
</div>/*#
#desc: talk to npc_poker_slave about poker
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_poker_intro_slave.stage < 2>>
<<set $npc_poker_intro_slave.stage = 2>>
<</if>>
<<set $scene.discussion.npc_poker_intro_slave.pushUnique('poker')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
<div id="invframe" class="scrolltext">
You ask her about the poker game she mentioned. "@@.npc_poker_intro_slave;It's one of the side activities that happens during the party@@" she gestures to a nearby door. "@@.npc_poker_intro_slave;They play in there for privacy and such. There is usually a seat open if you have the credits and wanted to join... though I'll warn you that you'll probably lose it all to <<=setup.getNpcName("npc_pokerman","formal")>>. My <<Master npc_pokerman>> is really good!@@"<br>
<br>
You thank her for the tip and tell her that you'll watch out.<br>
<br>
<<include "party_poker_intro_choices">>
</div>/*#
#desc: talk to npc_poker_slave about your manager
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.discussion.npc_poker_intro_slave.pushUnique('manager')>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "npc_poker_intro_slave">>
<div id="invframe" class="scrolltext">
At the mention of <<=ps(setup.getNpcName("npc_manager","formal"))>> name, <<=setup.getNpcName("npc_poker_intro_slave","formal")>> goes wide-eyed in surprise.
<<if $scene.wornCollarType == "necklace">>
"@@.npc_poker_intro_slave;<<=setup.getNpcName("npc_manager","other")>>! I've only met her a couple of times... but she's definitely one of the most impressive assets this company has. I think you mentioned you worked for <<=setup.getNpcName("npc_discipline","formal")>>? Well, you should keep an eye on your boss' boss, because <<=setup.getNpcName("npc_manager","other")>> is the real deal, maybe an even better teacher than <<=setup.getNpcName("npc_development","formal")>>! And of course her last secretary went on to work directly for <<=setup.getNpcName("npc_boss","formal")>>, and it doesn't really get more senior than that! Yeah, if I wasn't working under <<=setup.getNpcName("npc_pokerman","formal")>>, would be my top pick... you know, her Secretary could honestly be your twin, crazy coincidence, huh?@@"
<<else>>
"@@.npc_poker_intro_slave;You work directly for <<=setup.getNpcName("npc_manager","other")>>?! Oh you are so lucky! I mean, of course I would never wish to work anywhere but under <<=setup.getNpcName("npc_pokerman","formal")>>, but I hear that <<=setup.getNpcName("npc_manager","other")>> is an even better teacher than <<=setup.getNpcName("npc_development","formal")>>! And of course her last secretary went on to work directly for <<=setup.getNpcName("npc_boss","formal")>>, and it doesn't really get more senior than that!@@"
<</if>>
<br><br>
You blush at the way she looks at you as almost star-struck.<br>
<br>
"@@.npc_poker_intro_slave;You must have worked so hard for that opportunity, but, like, how much more fortunate could you be? Either way I bet you're going to have just a wonderful career, congrats!@@"<br>
<br>
<<include "party_poker_intro_choices">>
</div>/*#
#desc: enter the poker room
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_pokergirl.profile = true>>
<<set $npc_pokerman.profile = true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.plug_vibe = false>>
<<set $scene.standWithCounter = 0>>
<<set $scene.distraction = $player.timebased.horny/10>>
<<if $scene.plug != "">>
<<set $scene.plug_vibe = setup.checkItemTypeTag('plug', ['vibrating'])>>
<</if>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.urethra_vibe = false>>
<<if $scene.cage != "">>
<<set $scene.urethra_vibe = setup.checkItemTypeTag('cage', ['vibrating']) && setup.checkItemTypeTag('cage', ['urethra'])>>
<</if>>
<<set $scene.pokerHand = 0>>
<<set $scene.poker = {
"chips" : {
"man" : 15000,
"loser1" : 2000,
"loser2" : 8000,
"woman" : 25000
},
"deal" : [ [3, "H"], [5,"H"], [7,"H"], [13,"S"], [14,"C"] ],
"pocketCards" : {
"man" : [ [5,"H"] , [6,"C"] ],
"loser1" : [ [14,"H"], [1,"H"] ],
"loser2" : [ [11,"C"] , [11,"H"] ],
"woman" : [ [13,"D"], [13,"C"] ]
},
"action" : {
"man" : '',
"loser1" : '',
"loser2" : '',
"woman" : ''
},
"handQuality" : {},
"cheater_position" : "loser2",
"pot" : 0
}>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<if setup.isItemEquipped("bondage_cocktail_dress_armbinder")>>
You enter the room of the poker game where lively play seems to be happening. Unfortunately, bound as you are, there is really no way for you to effectively play so you decide to leave.<br>
<br>
<<else>>
You wind your way through the party until you find the room with the poker game. Inside you find half a dozen people sitting around a poker table with another <<man npc_pokercheater>> standing nearby.<br>
<br>
The dealer is the first to catch your eye as they are quite a sight indeed; clad in black latex save for their blinking eyes, gagged, collared and cuffed to the boot by a short chain attached to their wrist.<br>
<br>
As for the players, there are <<if $npc_pokerman.fem>>three<<else>>four<</if>> men in business suits and <<if $npc_pokerman.fem>>two women; one in a suit and the other is<<else>>a single woman<</if>> dressed in a slinky dress with what looks to be a gold choker around her neck. Up against the wall, a <<if $npc_pokercheater.fem && $npc_pokerman.fem>>third woman<<elseif $npc_pokercheater.fem>>second woman<<elseif $npc_pokercheater.fem>>fourth man<<else>>fifth man<</if>> watches the game with interest while occasionally sipping a drink, <<his npc_pokercheater>> other hand in <<his npc_pokercheater>> pocket.<br>
<br>
Based on <<=ps(setup.getNpcName("npc_poker_intro_slave","formal"))>> description, you are pretty certain the <<man npc_pokerman>> <<if $npc_pokerman.fem>>wearing the suit <</if>>to the dealer's right is <<=setup.getNpcName("npc_pokerman","formal")>> — <<he npc_pokerman>> has a much larger pile of chips than the <<if !$npc_pokerman.fem>>other <</if>>three men, though the <<if $npc_pokerman.fem>>other <</if>>woman appears to be in a safe lead.<br>
<br>
[<<moveTo "event_party_poker_room_watch" 'Watch the game.' 300>>]<br>
[<<moveTo "event_party_poker_room_man" 'Approach the <<man npc_pokercheater>>.' 300>>]<br>
[<<moveTo "event_party_poker_room_game_intro" 'Try to get dealt in on the game.' 300>>]<br>
<</if>>
[<<moveTo "event_party_root" 'Leave the room and do something else.' 60>>]
</div>/*#
#desc: talk to the cheater watching the poker game
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_pokercheater.profile = true>>
<<set $scene.standWithCounter += 1>>
<<if $scene.standWithCounter > 1>>
<<set $scene.pokerHand += 1>>
<</if>>
<<if $scene.plug_vibe || $scene.urethra_vibe>>
<<set _distractMod = setup.PokerStimulation($scene.poker, $scene.plug_vibe, $scene.urethra_vibe)>>
<<set $scene.distraction += _distractMod>>
<<changeHorny _distractMod>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<if $scene.standWithCounter == 1>>
<<if $scene.plug_vibe || $scene.urethra_vibe>>
You walk over to the <<man npc_pokercheater>>. Halfway across the room <<printPokerPattern $scene.poker $scene.plug_vibe $scene.urethra_vibe>>. The sequence lasts barely more than a second but it takes you off guard and you reach out to steady yourself against the wall, hoping nobody noticed and wondering what caused it.
<<else>>
You walk over to the <<man npc_pokercheater>>, noticing that <<he npc_pokercheater>> is watching the table like a hawk while the cards are being dealt.
<</if>>
<<else>>
<<if $scene.plug_vibe || $scene.urethra_vibe>>
You remain standing next to the <<man npc_pokercheater>> as another hand proceeds, <<printPokerPattern $scene.poker $scene.plug_vibe $scene.urethra_vibe>>.
<<else>>
You remain standing next to the <<man npc_pokercheater>> watching the game.
<</if>>
<</if>>
<<include "pokerResults">>
<br>
<<switch $scene.standWithCounter>>
<<case 1>>
"@@.npc_pokercheater;So, do you play?@@" The <<man npc_pokercheater>> asks, even as <<his npc_pokercheater>> attention never wavers from the table.<br>
<br>
[<<moveTo "event_party_poker_room_man" 'Shake your head.' 300 "<<set $scene.sayPlay = false>>">>]<br>
[<<moveTo "event_party_poker_room_man" 'Nod.' 300 "<<set $scene.sayPlay = true>>">>]
<<case 2>>
<<if $scene.sayPlay>>
You nod and <<he npc_pokercheater>> smiles. "@@.npc_pokercheater;You should consider joining the game — after all there are a few seats open.@@"
<<else>>
You shake your head, noting that it looks very exciting however. "@@.npc_pokercheater;Exciting and potentially lucrative, you should try playing, it can be quite fun.@@"
<</if>>
<br><br>
[<<moveTo "event_party_poker_room_man" "Ask why <<he npc_pokercheater>> isn't playing." 300 "<<set $scene.askPlay = true>>">>]<br>
[<<moveTo "event_party_poker_room_man" 'Just keep watching the game.' 300 "<<set $scene.askPlay = false>>">>]<br>
[<<moveTo "event_party_poker_room_game_intro" 'Try to get dealt in to the game.' 300>>]<br>
[<<moveTo "event_party_root" 'Leave the room and do something else.' 60>>]
<<case 3>>
As the hand finishes the <<man npc_pokercheater>> moves to the opposite side of the room; you follow, the two of you now standing behind <<=setup.getNpcName("npc_pokerman","formal")>>.<br>
<br>
<<if $scene.askPlay>>
You ask why <<he npc_pokercheater>> doesn't play <<him npc_pokercheater>>self and <<he npc_pokercheater>> shakes <<his npc_pokercheater>> head. "@@.npc_pokercheater;I know well enough that my luck is quite terrible but my pet well...@@" <<he npc_pokercheater>> nods in the direction of the girl who is currently in a comfortable lead. "@@.npc_pokercheater;She is quite skilled. I'm just here to cover her bets and supervise while she plays.@@"<br>
<br>
<</if>>
[<<moveTo "event_party_poker_room_man" 'Just keep watching the game.' 300 "<<set $scene.askPlay = false>>">>]<br>
[<<moveTo "event_party_poker_room_game_intro" 'Try to get dealt in to the game.' 300>>]<br>
[<<moveTo "event_party_root" 'Leave the room and do something else.' 60>>]
<<case 4>>
<<if $scene.plug_vibe || $scene.urethra_vibe>>
This time the vibrations are strong enough for you to let out a soft gasp and the <<man npc_pokercheater>> glances suspiciously in your direction. "@@.npc_pokercheater;Are you alright, Miss? If the tension is getting to be a bit much you could return to the party.@@"<br>
<br>
[<<moveTo "event_party_poker_room_man" "Say you're fine." 300>>]<br>
<<else>>
The two of you watch another hand in silence.<br>
<br>
[<<moveTo "event_party_poker_room_man" 'Just keep watching the game.' 300>>]<br>
<</if>>
[<<moveTo "event_party_poker_room_game_intro" 'Try to get dealt in to the game.' 300>>]<br>
[<<moveTo "event_party_root" 'Leave the room and do something else.' 60>>]
<<case 5>>
<<if $scene.plug_vibe || $scene.urethra_vibe>>
The <<man npc_pokercheater>> continues to look at you with slight suspicion but you manage to placate <<him npc_pokercheater>> with a nervous smile, even through the round of stimulation brought on by the next hand.<br>
<br>
As <<he npc_pokercheater>> turns away, you notice that your vibrations seem to correspond to <<his npc_pokercheater>> hand moving inside <<his npc_pokercheater>> pocket.<br>
<br>
[<<moveTo "event_party_poker_room_man" "Ask if <<hes npc_pokercheater>> teasing you remotely." 300 "<<set $scene.askCheat = true>>">>]<br>
[<<moveTo "event_party_poker_room_man" "Keep watching in silence." 300 "<<set $scene.askCheat = false>>">>]<br>
<<else>>
The two of you watch another hand in silence. You notice that <<his npc_pokercheater>> hand shifts in <<his npc_pokercheater>> pocket right after each deal.<br>
<br>
[<<moveTo "event_party_poker_room_man" "Ask what <<hes npc_pokercheater>> doing." 300 "<<set $scene.askCheat = true>>">>]<br>
[<<moveTo "event_party_poker_room_man" "Keep watching in silence." 300 "<<set $scene.askCheat = false>>">>]<br>
<</if>>
[<<moveTo "event_party_poker_room_game_intro" 'Try to get dealt in to the game.' 300>>]<br>
[<<moveTo "event_party_root" 'Leave the room and do something else.' 60>>]
<<case 6>>
<<if $scene.askCheat>>
Your question is cut off by the game coming to a close and you head back to the main party.
<<else>>
The game concluded you head back towards the main party.
<</if>>
<br><br>
[<<moveTo "event_party_root" 'Back to the party.' 60>>]
<</switch>>
</div>/*#
#desc: observe the poker game
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<calcPokerHandsNoPlayer $scene.poker $scene.pokerHand>>
<<if $scene.plug_vibe || $scene.urethra_vibe>>
<<set _distractMod = setup.PokerStimulation($scene.poker, $scene.plug_vibe, $scene.urethra_vibe)>>
<<set $scene.distraction += _distractMod>>
<<changeHorny _distractMod>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<if $scene.distraction >= 20>>
The constant vibrations become too much for you and you shudder, having a small orgasm that forces you to lean against the wall lest you fall over. Attracting curious attention from the <<man npc_pokercheater>> standing nearby you scurry away before you embarrass yourself further.
<<else>>
<<if $scene.plug_vibe || $scene.urethra_vibe>>
As you watch the deal, <<printPokerPattern $scene.poker $scene.plug_vibe $scene.urethra_vibe>>. Fortunately you are standing still so you are able to bite your lip and resist moaning.<br>
<br>
<</if>>
<<include "pokerResults">>
<br>
<<if $scene.pokerHand < 5>>
[<<moveTo "event_party_poker_room_watch" 'Watch another hand.' 300 "<<set $scene.pokerHand += 1>>">>]<br>
[<<moveTo "event_party_poker_room_man" 'Approach the <<man npc_pokercheater>>.' 300 "<<set $scene.pokerHand += 1>>">>]<br>
[<<moveTo "event_party_poker_room_game_intro" 'Try to get dealt in to the game.' 300 "<<set $scene.pokerHand += 1>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_party_root" 'Leave the room and do something else.' 60 "<<set $scene.pokerHand += 1>>">>]
</div>/*#
#desc: results of watching a hand of poker
#status: FINISHED 0.7.8.0
#*/
<<switch $scene.pokerHand>>
<<case 0>>
You watch a hand of poker. Bidding is pretty exciting with one of the men going all in only to lose it all as the woman collects the substantial pot. With a sigh he leaves the table and the room.
<<case 1>>
<<set $scene.poker.cheater_position = "man">>
You watch another hand of poker, <<=setup.getNpcName("npc_pokerman","formal")>> folds early as the girl drives up the pot and narrowly wins, the remaining two players' reserves are further reduced. As the chips are collected, the <<man npc_pokercheater>> standing against the wall moves around the room to stand a bit behind <<=setup.getNpcName("npc_pokerman","formal")>>.
<<case 2>>
You watch another hand of poker, this game is more spirited as, though the girl declines to ante <<=setup.getNpcName("npc_pokerman","formal")>> drives up the pot for the other two, one of them going all in only to lose to <<=ps(setup.getNpcName("npc_pokerman","formal"))>> full house.<br>
<br>
Looking at his paltry pile of chips the other player sighs and stands up as well. "@@.generic_male2;I think that's enough for me, think I'll bow out here before I lose everything, but I'll get you next week!@@"<br>
<br>
<<=setup.getNpcName("npc_pokerman","formal")>> rises to shake the man's hand, the girl seemingly too distracted to do anything other than nod vaguely as the dealer silently cashes things out.
<<case 3>>
It's down to just <<=setup.getNpcName("npc_pokerman","formal")>> now as the tension ratchets up even higher. <<He npc_pokerman>> stares across the table intently only for the girl to almost immediately fold leaving <<him npc_pokerman>> to take a minimal pot.
<<case 4>>
Another heads up round sees things go a bit longer only for <<=setup.getNpcName("npc_pokerman","formal")>> to fold after the turn.
<<case 5>>
You surmise that both players must have strong hands as the bidding is
<<if $scene.poker.man == 0>>
fierce all the way until the river where the girl forces the issue by going all in. <<=setup.getNpcName("npc_pokerman","formal")>> considers things for a long moment before doing the same only to visibly wince when the hands are revealed — her four jacks beating <<his npc_pokerman>> full house of kings and jacks.<br>
<br>
Shaking <<his npc_pokerman>> head <<he npc_pokerman>> graces her with a wry smile then turns to the <<man npc_pokercheater>> standing to the side. "@@.npc_pokerman;Damn, looks like she did it again, well, I'll get her next week!@@"<br>
<br>
The girl looks frazzled and exhausted, seeming to not even notice as <<=setup.getNpcName("npc_pokerman","formal")>> leaves and the <<man npc_pokercheater>> steps off the wall to help her to her feet as the dealer starts cashing in the chips.<br>
<br>
"@@.npc_pokergirl;Please...@@" she whispers breathlessly, "@@.npc_pokergirl;I need it so much...@@"<br>
<br>
"@@.npc_pokercheater;I'm sure you do, and you have certainly earned it.@@" <<He npc_pokercheater>> states before bending her over the table. She moans. You watch as, heedless of you or the dealer <<he npc_pokercheater>> flips up her skirt to reveal a gleaming chastity belt, a wave of a small remote causing it to partially click open as <<he npc_pokercheater>> slides a large dildo from her rear before replacing it with <<his npc_pokercheater>> cock.<br>
<br>
"@@.npc_pokergirl;Thank you, <<sir npc_pokercheater>>!@@" She cries out, getting even louder as the plug still locked in her cunt begins vibrating loud enough for you to hear it several meters away. The anonymous dealer seems unconcerned by the fornication happening directly in front of them as girl moans the first of what are sure to be many orgasms. You linger a few moments longer before slipping out of the room and back to the party proper.
<<else>>
fierce. Seeing the flop the <<man npc_pokerman>> thinks for a moment before pushing <<his npc_pokerman>> chips to the centre. Pausing for a moment <<he npc_pokerman>> glances towards the <<man npc_pokercheater>> standing to the side of the room before reaching into <<his npc_pokerman>> pocket and dropping a key into the pile as well. <<He npc_pokerman>> smiles confidently. "@@.npc_pokerman;You know the rule, a slave bet can only be matched by same. You in?@@"<br>
<br>
Shuddering slightly in her chair the <<if $npc_pokerman.fem>>other <</if>>woman looks towards her <<master npc_pokercheater>> standing to the side who gives a slow nod. Her voice unsteady yet practically dripping with lust she shoves all of her chips to the centre of the table. "@@.npc_pokergirl;I, I call.@@"<br>
<br>
Both players stare in anticipation as the dealer flips over the river and then the two players reveal their hands.<br>
<br>
Already frayed the girl merely blinks in shock — she has lost; two pair; Aces and Eights to a newly completed full house of Kings over eights.<br>
<br>
<<=setup.getNpcName("npc_pokerman","formal")>> smiles turning towards the <<man npc_pokercheater>> who has been standing against the wall this whole time. "@@.npc_pokerman;Looks like luck was mine this week.@@"<br>
<br>
"@@.npc_pokercheater;So it would seem.@@" The <<man npc_pokercheater>> states as <<he npc_pokercheater>> hands over a key. "@@.npc_pokercheater;Have her back to me in the morning, and remember she still has to work a shift! Last time she was so cum drunk as to be practically useless! It took two days of edging to get her back in the proper state of mind.@@"<br>
<br>
<<=setup.getNpcName("npc_pokerman","formal")>> chuckles as <<he npc_pokerman>> pockets the key and pulls a leash from <<his npc_pokerman>> pocket. "@@.npc_pokerman;Crawl on over here, girl — I promise I'll get to your other holes later but right now I could do with a nice relaxing suck...@@"<br>
<br>
Sliding to the floor she crawls around the table as <<he npc_pokerman>> turns and unzips <<his npc_pokerman>> pants, waiting for <<him npc_pokerman>> to clip the lead to the front of her collar before setting to work worshipping <<his npc_pokerman>> <<getWordPenis "npc_pokerman">> with her mouth as <<he npc_pokerman>> leans back with a sigh.<br>
<br>
Heading for the exit the <<if $npc_pokercheater.fem == $npc_pokerman.fem>>other <</if>><<man npc_pokercheater>> smiles at you and holds the door for you. "@@.npc_pokercheater;Jealous?@@" <<He npc_pokercheater>> asks with a grin. You half expect a slap on the ass as you walk past but <<he npc_pokercheater>> remains <<if $npc_pokercheater.fem>>courteous<<else>>a gentleman<</if>> as you return to the party proper.
<</if>>
<</switch>>
[<<link "Detailed results">>
<<openDialog "Detailed Hand Results" "poker_details">>
<</link>>]<br>Table cards:
<<printCards $scene.poker.deal 5>><br>
<<printReveal $scene.poker.action $scene.poker.pocketCards>><br>
<br>
<<button "Okay">>
<<script>>
Dialog.close();
<</script>>
<</button>>/*#
#desc: start playing poker
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.plug_vibe || $scene.urethra_vibe>>
<<set _distractMod = setup.PokerStimulation($scene.poker, $scene.plug_vibe, $scene.urethra_vibe)>>
<<set $scene.distraction += _distractMod>>
<<changeHorny _distractMod>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
You approach the table as the dealer shuffles. They motion towards an empty chair for you to take a seat.<br>
<br>
"@@.npc_pokerman;<<=setup.getNpcName("npc_pokerman","formal")>>, nice to meet you.@@" One of the <<men npc_pokerman>> states in introduction. <<if $scene.poker.chips.hasOwnProperty('loser1') || $scene.poker.chips.hasOwnProperty('loser2')>>The rest of the table merely nods at in acknowledgement, save the girl who seems a bit<<else>>The girl nods in your vague direction, seemingly somewhat<</if>> distracted, her eyes half-closed and sweat beading on her forehead.<br>
<br>
<<switch $scene.wornCollarType>>
<<case 'ring'>>
"@@.npc_pokerman;The game is <<moveTo "event_poker_explain" "Greek Hold'em." 1>> Buy-in is ten thousand credits, if you would like to try your hand?@@"<br>
<br>
The <<man npc_pokercheater>> at the edge of the room grins in your direction. "@@.npc_pokercheater;Pity you're already owned, if that collar didn't have a ring on it I might be willing to stake you against owning you for the rest of the night...@@"<br>
<br>
<<case "collar">>
"@@.npc_pokerman;The game is <<moveTo "event_poker_explain" "Greek Hold'em." 1>> Buy-in is ten thousand credits.@@" <<=setup.getNpcName("npc_pokerman","formal")>> starts to explain only to be interrupted by the <<man npc_pokercheater>> standing at the edge of the room.<br>
<br>
"@@.npc_pokercheater;Or, if you cared to wager yourself, I could spot you in exchange for putting a ring on that lovely collar of yours... only if you lost, of course.@@"<br>
<br>
"@@.npc_pokerman;And just for the night.@@" <<=setup.getNpcName("npc_pokerman","formal")>> adds.<br>
<br>
[<<moveTo "event_party_poker_room_game_0" 'Offer yourself.' 60 "<<set $scene.moneyBuyin = false>>">>]<br>
<<case 'choker'>>
"@@.npc_pokerman;The game is <<moveTo "event_poker_explain" "Greek Hold'em." 1>> Buy-in is ten thousand credits, if you would like to try your hand?@@"<br>
<br>
The <<man npc_pokercheater>> at the edge of the room grins in your direction. "@@.npc_pokercheater;Pity you're wearing such a dull choker. Now a nice collar... well, I might be willing to spot you the buy-in... providing your ownership was not already marked with a ring, of course.@@"<br>
<br>
<<case 'necklace'>>
"@@.npc_pokerman;The game is <<moveTo "event_poker_explain" "Greek Hold'em." 1>>. Buy-in is ten thousand credits, if you would like to try your hand, Ma'am?@@"<br>
<br>
They seem to be according you a bit of additional respect, perhaps owing to your necklace?<br>
<br>
<<default>>
ERROR: unexpected scene.worn collar <<=$scene.wornCollarType>>
<</switch>>
<<if $player.money.total >= 10000>>
[<<moveTo "event_party_poker_room_game_0" 'Buy in for 10,000.' 60 "<<set $scene.moneyBuyin = true>>">>]<br>
<<else>>
[@@.link_locked;You cannot afford to buy in to the game.@@]<br>
<</if>>
[<<moveTo "event_party_root" 'Stand up and leave the room.' 60>>]
</div>/*#
#desc: poker explanation
#status: FINISHED 0.7.12.0
#ignore_spell: j,q,k
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
Greek hold 'em is a Texas Hold 'em poker variant where each player is dealt 2 hole cards face down, followed by 5 "community" cards shared by all players. You must use both hole cards + 3 community cards to construct the strongest 5-card hand possible.<br>
<br>
Hand rankings:
Straight Flush (5 consecutive ranked cards of same suit)<br>
Four of a Kind (4 cards of the same rank)<br>
Full House (3 cards of the same rank, two of another)<br>
Flush (all 5 cards of the same suit)<br>
Straight (5 consecutive ranked cards, not of the same suit)<br>
Three of a Kind (3 cards of the same rank)<br>
Two Pair (2 pairs of cards of the same rank)<br>
One Pair (2 cards of the same rank)<br>
High Card (Anything that didn't match the above)<br>
<br>
Ties of the same hand type are "broken" based on the rank of the cards involved (eg: Straight 7-J is a better hand than Straight 2-6)<br>
<br>
Card Ranks Highest to lowest: A K Q J 10 9 8 7 6 5 4 3 2<br>
*Note that for the purpose of a straight Ace can be either the high card above King, or count as the low card at one; straights cannot "wrap." <br>
<br>
You can find more information on poker online... or you can abuse the save and reload functions.<br>
<br>
<<back "Back to the game.">>
</div>/*#
#desc: buy in to the poker game
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.playedPoker = true>>
<<if $scene.moneyBuyin>>
<<addCredits -10000>>
<</if>>
<<set $scene.poker.chips.mc=10000>>
<<set $scene.poker.pocketCards.mc=[]>>
<<if $events.hasOwnProperty('party_spill_event')>>
<<removeEvent 'party_spill_event'>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
You buy in to the game of poker
<<if $scene.moneyBuyin>>
for ten thousand credits.
<<else>>
by offering "yourself" as collateral.
<</if>>
You take an empty seat across from the dealer who silently passes you your chips.<br>
<br>
Maybe it's the stakes involved, or maybe some high tech field, knowing this company, but there's something about just sitting down at the table that makes your arousal feel even more palpable and distracting.<br>
<br>
<<printThought "Better keep my wits about me... maybe order a drink to help calm my nerves.">><br>
<br>
<<if State.hasPlayed("theme_ai_mission_poker_2")>>
<<if setup.checkItemWorn("data_plug") && $npc_ai.flags.cheat_poker>>
You shift in your chair as the massive plug in your rear buzzes almost questioningly.<br>
<br>
[<<moveTo "event_cheat_poker_1" 'Cheat with the assistance of <<=setup.getNpcName("npc_ai", "first")>>.' 60>>]<br>
<<elseif setup.checkItemWorn("data_plug")>>
[@@.link_locked;<<=setup.getNpcName("npc_ai", "first")>> needs you to spend some time as the dealer for her to calibrate cheating...@@]<br>
<<else>>
[@@.link_locked;You need to be wearing <<=ps(setup.getNpcName("npc_ai", "first"))>> plug for her to help you cheat at poker.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_party_poker_room_game_1_deal" 'The deal begins...' 60>>]
</div>/*#
#desc: choose to cheat at poker
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.onMission = !$scene.moneyBuyin && !$npc_ai.flags.missions.robot_body>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
You remember <<=ps(setup.getNpcName("npc_ai", "first"))>> instructions and consider who you want her to make win the game of poker.<br>
<br>
<<if $scene.onMission>>
<<printThought 'Okay, <<=ps(setup.getNpcName("npc_ai", "first"))>> said I need to lose myself to the woman... given I staked my collar, I guess everything is set..'>><br>
<br>
<<elseif !$npc_ai.flags.missions.robot_body>>
<<printThought 'Wait, I needed to lose myself to the woman... which means I needed to stake myself, not buy in!'>><br>
<br>
<</if>>
[<<moveTo "event_cheat_poker_2" 'You want to win.' 60 "<<set $scene.cheat_winner='mc'>>">>]<br>
<<if $scene.poker.chips.man>>
[<<moveTo "event_cheat_poker_2" 'You want <<=setup.getNpcName("npc_pokerman","formal")>> to win.' 60 "<<set $scene.cheat_winner='man'>>">>]<br>
<</if>>
<<if $scene.poker.chips.woman>>
[<<moveTo "event_cheat_poker_2" 'You want the woman to win.' 60 "<<set $scene.cheat_winner='woman'>>">>]<br>
<</if>>
<<if $scene.poker.chips.loser1>>
[<<moveTo "event_cheat_poker_2" 'You want the <<man>> to your right to win.' 60 "<<set $scene.cheat_winner='loser1'>>">>]<br>
<</if>>
<<if $scene.poker.chips.loser2>>
[<<moveTo "event_cheat_poker_2" 'You want the <<man>> to your left to win.' 60 "<<set $scene.cheat_winner='loser2'>>">>]
<</if>>
</div>/*#
#desc: choose who to win when cheat at poker
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _plug = setup.getEffectivePlugSize()>>
<<applyExperience 'anal' _plug 'little' $INCOGNITO>>
<<changeHorny 10>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
You look at
<<switch $scene.cheat_winner>>
<<case 'mc'>>
the dealer
<<case 'man'>>
<<=setup.getNpcName("npc_pokerman","formal")>>
<<case 'woman'>>
the woman playing poker
<<case 'loser1'>>
the <<man>> to your right
<<case 'loser2'>>
the <<man>> to your left
<<default>>
ERROR: unexpected scene.cheat_winner <<=$scene.cheat_winner>>
<</switch>>
and tap the side of your nose to signal <<=ps(setup.getNpcName('npc_ai', 'first'))>>, the massive plug in your rear buzzes in response as the deal starts and you think back to the rest of <<=setup.getNpcName('npc_ai', 'first')>> instructions about how she will signal you to bet.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") >= 20>>
<<printThought "Heh, this should be trivial if I keep my wits about me.">>
<<elseif setup.getTotalValue("smart") > 15>>
<<printThought "This should'nt be too bad, but I should focus to be sure.">>
<<else>>
<<printThought "Well it's not an auto-win, but hopefully I can pull this off.">>
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "Whew, this is tricky, but maybe if I, like, focus?">>
<<else>>
<<printThought "Ugh, this is, like... complicated...">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_cheat_poker_3" "Leave things to chance." 600 "<<set $scene.cheatBonus=0>>">>]<br>
<<if setup.getWillpower() >= 1>>
[<<moveTo "event_cheat_poker_3" "Focus on the game." 600 "<<set $scene.cheatBonus=1>><<spendWillpower 1>>">>] <<hint $options "Focusing will cost willpower, but will slightly increase your odds of success.">><br>
<<if setup.getWillpower() >= 3>>
[<<moveTo "event_cheat_poker_3" "Focus extra-hard on the game." 600 "<<set $scene.cheatBonus=5>><<spendWillpower 3>>">>] <<hint $options "Focusing this hard will cost willpower, but will slightly increase your odds of success.">><br>
<<if setup.getWillpower() >= 5>>
[<<moveTo "event_cheat_poker_3" "Focus everything you have on the game." 600 "<<set $scene.cheatBonus=10>><<spendWillpower setup.getWillpower()>>">>] <<hint $options "Focusing this hard will cost willpower, but will slightly increase your odds of success.">><br>
<<else>>
[@@.link_locked;You lack the will to ultra-focus.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You lack the will to ultra-focus.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You lack the will to focus on the game.@@]<br>
<</if>>
</div>/*#
#desc: choose to cheat at poker
#status: FINISHED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.onMission && $scene.cheat_winner == "woman">>
<<set $scene.win = true>>
<<set $player.flags.poker.cheat_other += 1>>
<<else>>
<<set $scene.win = random(1,20) < (setup.getTotalValue("smart") + $scene.cheatBonus)>>
<<if $scene.cheat_winner == "mc">>
<<set $player.flags.poker.cheat_self += 1>>
<<set $scene.poker.chips.mc = $scene.poker.chips.loser1 + $scene.poker.chips.loser2 + $scene.poker.chips.man + $scene.poker.chips.woman + $scene.poker.chips.mc>>
<<else>>
<<set $player.flags.poker.cheat_other += 1>>
<</if>>
<<set $scene.loserWinner = $scene.cheat_winner == "loser1" || $scene.cheat_winner == "loser2">>
<<if !$scene.win || $scene.loserWinner>>
<<if $scene.onMission>>
<<set $scene.cheat_winner = "man">>
<<else>>
<<set $scene.cheat_winner = ["man", "woman"].random()>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<if $scene.onMission && $scene.cheat_winner == "woman">>
As tempting as it would have been to cheat a win for yourself, you focus on your mission, following every buzzing instruction <<=setup.getNpcName('npc_ai', 'first')>> gives you through your plug as you pressure the other players out of the game and get it down to just you and the woman.<br>
<br>
You recall her own cheating ways as you notice how flush with excitement it is for the final head to head and you wonder if someone might be manipulating her plug as well.<br>
<br>
With a deep breath you follow the final command to go all in, waiting with bated breath as the final card is revealed... and the woman triumphs.<br>
<br>
[<<moveTo "event_party_poker_end_debt_cheater_1" 'Continue.' 60>>]
<<elseif $scene.win>>
<<if $scene.loserWinner>>
To your consternation, and despite your best efforts, the <<man>> you were scheming to have win folds unexpectedly when you're already all-in.<br>
<br>
You watch nervously as
<<switch $scene.cheat_winner>>
<<case "man">>
<<=setup.getNpcName("npc_pokerman","formal")>> claims victory in the hand... and the <<man>> you had intended to win cashes out and excuses himself.<br>
<br>
<<if $scene.moneyBuyin>>
With a sigh, and considerably lighter pockets, you rise from the table as <<=setup.getNpcName("npc_pokerman","formal")>> cashes out <<his npc_pokerman>> winnings.<br>
<br>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
<<else>>
[<<moveTo "event_party_poker_end_debt_man_1" 'Continue.' 60>>]
<</if>>
<<case "woman">>
The woman claims victory in the hand, twitching in her seat in orgasm as the <<man>> you had intended to win cashes out and excuses himself.<br>
<br>
<<if $scene.moneyBuyin>>
With a sigh, and considerably lighter pockets, you rise from the table as the woman pants as she recovers from her orgasm and her owner appears to clip a leash to her collar and collect her winnings.<br>
<br>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
<<else>>
[<<moveTo "event_party_poker_end_debt_cheater_1" 'Continue.' 60>>]
<</if>>
<<default>>
ERROR: unexpected scene.cheat_winner: <<=$scene.cheat_winner>>
<</switch>>
<<else>>
<<switch $scene.cheat_winner>>
<<case 'mc'>>
With <<=ps(setup.getNpcName("npc_ai","first"))>> assistance you handily win the poker game and you collect your <<if !$scene.moneyBuyin>>meager portion of the winnings after paying off the <<man npc_pokercheater>> for staking you<<else>>substantial winnings<</if>>.<br>
<br>
"@@.npc_pokerman;Congratulations, again, I do hope you will grant us the opportunity to win our money back next time!@@"<br>
<br>
<<if $scene.moneyBuyin>>
You nod, trying to be a gracious winner as you cash out your fortune and prepare to leave the room.<br>
<br>
[<<moveTo "event_party_poker_win_sex_1" 'Offer to finish <<=setup.getNpcName("npc_pokerman","formal")>> off as consolation.' 300 "<<addCredits 50000>>">>]<br>
[<<moveTo "event_party_root" 'Take your winnings and return to the party.' 60 "<<addCredits 50000>>">>]
<<else>>
You nod as the <<man npc_pokercheater>> walks over from the wall to collect <<his npc_pokercheater>> portion. You watch in disappointment as <<he npc_pokercheater>> parts off almost all of your earnings, leaving you with just a meager fraction of what you won as <<he npc_pokercheater>> snorts and waves you off.<br>
<br>
[<<moveTo "event_party_poker_win_sex_1" 'Offer to finish <<=setup.getNpcName("npc_pokerman","formal")>> off as consolation.' 300 "<<addCredits `50000*.05`>>">>]<br>
[<<moveTo "event_party_root" 'Take your winnings and return to the party.' 60 "<<addCredits `50000*.05`>>">>]
<</if>>
<<case "man">>
With <<=ps(setup.getNpcName("npc_ai","first"))>> help the tide slowly shifts in favour of <<=setup.getNpcName("npc_pokerman","formal")>>, your other opponents dropping out one by one until it's a final head to head showdown between the two of you... and you follow the command to go all in.<br>
<br>
You watch as the final card is flipped over <<=setup.getNpcName("npc_pokerman","formal")>> is revealed the winner of the mountainous pot.<br>
<br>
<<if $scene.moneyBuyin>>
With a sigh, and considerably lighter pockets, you rise from the table as the <<=setup.getNpcName("npc_pokerman","formal")>> cashes out <<his npc_pokerman>> winnings.<br>
<br>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
<<else>>
[<<moveTo "event_party_poker_end_debt_man_1" 'Continue.' 60>>]
<</if>>
<<case "woman">>
With <<=setup.getNpcName("npc_ai","first")>> and the woman both cheating on her behalf the chips rapidly shift to her side of the table.<br>
<br>
In a final showdown you both go all in and you watch as the final card is flipped over and the woman is revealed the winner of the mountainous pot.<br>
<br>
<<if $scene.moneyBuyin>>
With a sigh, and considerably lighter pockets, you rise from the table as the <<=setup.getNpcName("npc_pokerman","formal")>> woman pants as she recovers from her orgasm and her owner appears to clip a leash to her collar and collect her winnings.<br>
<br>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
<<else>>
[<<moveTo "event_party_poker_end_debt_cheater_1" 'Continue.' 60>>]
<</if>>
<<default>>
ERROR: unexpected scene.cheat_winner: <<=$scene.cheat_winner>>
<</switch>>
<</if>>
<<else>>
Despite your best efforts you just can't seem to follow <<=ps(setup.getNpcName("npc_ai","first"))>> instructions well enough to get the result you were aiming for. In the end
<<if $scene.onMission>>
your cheating seems to somewhat cancel out with the efforts by the woman and her "assistant" and it is actually <<=setup.getNpcName("npc_pokerman","formal")>> who comes away with the victory.
<<else>>
you aren't even sure if your cheating changed much of anything as you go all in for the final pot.
<</if>>
<br><br>
<<if $scene.cheat_winner == "man">>
You watch as the final card is flipped over <<=setup.getNpcName("npc_pokerman","formal")>> is revealed the winner of the mountainous pot.<br>
<br>
<<if $scene.moneyBuyin>>
With a sigh, and considerably lighter pockets, you rise from the table as the <<=setup.getNpcName("npc_pokerman","formal")>> cashes out <<his npc_pokerman>> winnings.<br>
<br>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
<<else>>
[<<moveTo "event_party_poker_end_debt_man_1" 'Continue.' 60>>]
<</if>>
<<else>>
You watch as the final card is flipped over and the woman is revealed the winner of the mountainous pot.<br>
<br>
<<if $scene.moneyBuyin>>
With a sigh, and considerably lighter pockets, you rise from the table as the <<=setup.getNpcName("npc_pokerman","formal")>> woman pants as she recovers from her orgasm and her owner appears to clip a leash to her collar and collect her winnings.<br>
<br>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
<<else>>
[<<moveTo "event_party_poker_end_debt_cheater_1" 'Continue.' 60>>]
<</if>>
<</if>>
<</if>>
</div>/*#
#desc: poker - buy in to a hand
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<cleanupPlayers $scene.poker>>
<<if $scene.distraction <= 40>>
<<if $player.timebased.horny < $scene.distraction>>
<<changeHorny 5>>
<</if>>
<<set $scene.cheaterMove = "">>
<<set $scene.pokerHand += 1>>
<<set $scene.poker.bet = 1000>>
<<set $scene.poker.handEarlyWinner = "">>
<<dealCards $scene.poker $scene.pokerHand>>
<<set $scene.poker.action.mc = "">>
<<set _chipLeader = "">>
<<set _chipLeadval = 0>>
<<set $scene.playerCount = 0>>
<<for _playerId, _chips range $scene.poker.chips>>
<<if _playerId != "woman" && _chipLeadval < _chips>>
<<set _chipLeader = _playerId>>
<<set _chipLeadval = _chips>>
<</if>>
<<set _playerCount += 1>>
<<set $scene.poker.chips[_playerId] -= 1000>>
<<set $scene.poker.pot += 1000>>
<</for>>
<<if _chipLeader != "" && $scene.poker.cheater_position != _chipLeader && $scene.poker.chips.hasOwnProperty('woman')>>
<<set $scene.cheaterMove = true>>
<<set $scene.poker.cheater_position = _chipLeader>>
<</if>>
<<if $scene.playerCount == 2 && !$scene.poker.chips.woman>>
<<set $scene.distraction += 6>>
<<else>>
<<set $scene.distraction += 3>>
<</if>>
<<if $scene.plug_vibe || $scene.urethra_vibe>>
<<set _distractMod = setup.PokerStimulation($scene.poker, $scene.plug_vibe, $scene.urethra_vibe)>>
<<if $scene.playerCount == 2 && $scene.poker.chips.woman>>
<<set _distractMod *= 2>>
<</if>>
<<set $scene.distraction += _distractMod>>
<<if $scene.distraction > 40>>
<<set $player.timebased.horny = 100>>
<<else>>
<<set _horny = 3*_distractMod>>
<<changeHorny _horny>>
<</if>>
<</if>>
<<else>>
<<playerOrgasm>>
<<applyExperience 'humiliation' 16 'terrible' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 1 0 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<if $scene.distraction > 40>>
<<if ($scene.plug_vibe || $scene.urethra_vibe) && $scene.poker.cheater_position != "mc">>
The cards are dealt and another jolt of vibrations thrums inside of you. This time it is just too much, you don't even notice the pattern instead merely white-knuckling the table as you cum.
<<else>>
As the cards are dealt, the excitement that has been running through you kicks into an even higher gear. You shift slightly in your chair and that is somehow enough, an orgasm welling up in you as you grip the table in panic. In full view of the table you cum.
<</if>>
Shuddering, you try to maintain composure but the orgasm is just too strong. The other players stare and you realise that they know, a fact that only makes things more intense, your entire body shaking as you lose your grip on the table and slide to the floor, wondering what is causing such a potent reaction...<br>
<br>
[<<moveTo "event_party_poker_room_game_cum_1" 'Continue.' 600>>]
<<else>>
<<if $scene.cheaterMove>>
As the dealer shuffles, the <<man npc_pokercheater>> lurking on the edge of the room moves to stand against the wall behind
<<switch $scene.poker.cheater_position>>
<<case 'mc'>>
you.
<<case 'man'>>
<<=setup.getNpcName("npc_pokerman","formal")>>.
<<case 'loser1'>>
<<case 'loser2'>>
one of the men sitting beside you.
<</switch>>
<</if>>
Everyone buys in for the round and the dealer silently distributes another hand of cards.<br>
<br>
<<if $scene.poker.underTable>>
<<=setup.getNpcName("npc_pokerman","formal")>> gives <<his npc_pokerman>> slave a head-pat "@@.npc_pokerman;For luck@@" and she takes a deep breath before resuming sucking <<him npc_pokerman>> off under the table for another hand.<br>
<br>
<</if>>
<<if $scene.playerCount == 2 && !$scene.poker.chips.woman>>
Playing heads up one on one has your heart beating even faster as you find it even more challenging to focus.
<</if>>
<<if ($scene.plug_vibe || $scene.urethra_vibe) && $scene.poker.cheater_position && $scene.poker.cheater_position != "mc">>
As the other players check their hands <<printPokerPattern $scene.poker $scene.plug_vibe $scene.urethra_vibe>>. <<if $scene.playerCount == 2 && !$scene.poker.chips.woman>>The intensity of the vibrations seem even stronger than they were earlier in the evening... and your lone remaining foe seems distracted, as well.<</if>><br>
<br>
<</if>>
[<<moveTo "event_party_poker_room_game_2_cards" 'Look at your cards.' 60 "<<set $scene.poker.peek=false>>">>]<br>
[<<moveTo "event_party_poker_room_game_2_cards" 'Carefully peek at your cards.' 60 "<<set $scene.poker.peek=true>>">>]
<</if>>
</div>/*#
#desc: poker - initial deal
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.poker.bet = 1000>>
<<calcBets 'bid' $scene.poker>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 2 0 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
The cards are dealt.<br>
<br>
<<if !$scene.poker.peek && ($scene.plug_vibe || $scene.urethra_vibe) && $scene.poker.cheater_position == "mc">>
As you check your cards <<printPokerPattern $scene.poker $scene.plug_vibe $scene.urethra_vibe>>.<br>
<br>
<</if>>
You are holding <<printCards $scene.poker.pocketCards.mc 2>><br>
<<printBets 'bid' $scene.poker>><br>
<br>
<<if $scene.poker.handEarlyWinner == "">>
<<set $scene.nextScene = "event_party_poker_room_game_3_flop">>
<<if false>>
<<moveTo "event_party_poker_room_game_3_flop">>
<</if>>
<<include printPokerBettingOptions>>
<<else>>
<<printPokerEarlyWinner $scene.poker.handEarlyWinner>><br>
<br>
[<<moveTo "event_party_poker_room_game_6_end" 'Continue.' 60>>]<br>
<</if>>
</div>/*#
#desc: betting options for hand of poker
#status: FINISHED 0.7.8.0
#*/
The pot contains <<=$scene.poker.pot>> in chips. The current bet is <<=$scene.poker.bet>>.<br>
<br>
You have <<=$scene.poker.chips.mc>> chips.
<<if $scene.poker.earlyShowdown>>
With nobody left to bid the dealer flips over the remaining cards and proceeds to the showdown.<br>
<br>
[<<moveTo 'event_party_poker_room_game_6_end' 'Continue.' 60 "<<set $scene.poker.action.mc='wait'>>">>]<br>
<<elseif $scene.poker.action.mc == 'allin' || $scene.poker.action.mc == 'allin_desperate' || ($scene.poker.action.mc == 'wait' && $scene.poker.chips.mc == 0)>>
You have already gone all in.<br>
<br>
[<<moveTo $scene.nextScene 'Wait.' 60 "<<set $scene.poker.action.mc='wait'>>">>]<br>
<<elseif $scene.poker.action.mc != 'fold' && $scene.poker.action.mc != 'wait'>>
<<if $scene.poker.tooHorny>>
<<if $scene.poker.hornyBid == $scene.poker.chips.mc>>
Aroused, distracted, and desperate you go all in.<br>
<br>
[<<moveTo $scene.nextScene 'Continue.' 60 "<<set $scene.poker.action.mc='allin_desperate'>>">>]<br>
<<else>>
Lust overtakes you and you end up bidding randomly, shoving <<=$scene.poker.hornyBid>> into the centre of the table. You hope the other players don't notice<<if $scene.poker.chips.hasOwnProperty('woman')>> though you would swear the woman in a dress briefly smiled at you, almost in camaraderie?<<else>>.<</if>><br>
<br>
[<<moveTo $scene.nextScene 'Continue.' 60 "<<set $scene.poker.action.mc='raise_small'>><<set $scene.poker.bet += $scene.poker.hornyBid>>">>]<br>
<</if>>
<<elseif $scene.poker.drunk>>
<<if $scene.poker.drunkBid == $scene.poker.chips.mc>>
<<if setup.hasTmpEffect('wasted')>>
The table is swaying like you're on a boat and you try to push against the table to steady yourself... only to realise a moment later that you've just shoved your chips forward and gone all-in.
<<elseif setup.hasTmpEffect('drunk')>>
You're feeling more than a bit drunk, and with it, overconfident, and you realise that you've gone all in without even thinking.
<<elseif setup.hasTmpEffect('tipsy')>>
You're feeling tipsy and a bit distracted, nearly missing the round of betting only to go all in by mistake.
<</if>>
<br><br>
[<<moveTo $scene.nextScene 'Continue.' 60 "<<set $scene.poker.action.mc='allin_desperate'>>">>]<br>
<<else>>
<<if setup.hasTmpEffect('wasted')>>
You're very drunk as you reach for your chips, accidentally knocking a stack over, a sum of <<=$scene.poker.drunkBid>> sliding into the pot...
<<elseif setup.hasTmpEffect('drunk')>>
You're drunk and overconfident, tossing a sum of <<=$scene.poker.drunkBid>> into the pot without even thinking.
<<elseif setup.hasTmpEffect('tipsy')>>
You're feeling tipsy and a bit distracted, nearly missing the round of betting only bit randomly to stay in the game.
<</if>>
<br><br>
[<<moveTo $scene.nextScene 'Continue.' 60 "<<set $scene.poker.action.mc='raise_small'>><<set $scene.poker.bet += $scene.poker.drunkBid>>">>]<br>
<</if>>
<<else>>
<<if $scene.distraction > 20>>
<<if $scene.distraction > 30>>
Your arousal is an almost irresistible distraction, but you somehow manage to keep your focus, for now.
<<else>>
Your arousal is becoming quite distracting, but you manage to stay focused on the game.
<</if>>
<<else>>
<<if $scene.distraction > 10>>
Your arousal is nibbling away at your focus, but you are keeping it together for now.
<<else>>
You arousal is not currently a distraction, making it easy to keep focused on the game.
<</if>>
<</if>>
<br><br>
<<if $scene.poker.chips.mc >= $scene.poker.bet>>
[<<moveTo $scene.nextScene 'Call.' 60 "<<set $scene.poker.action.mc='call'>>">>]<br>
<</if>>
<<if $scene.poker.chips.mc > $scene.poker.bet+10000>>
[<<moveTo $scene.nextScene 'Raise 10000.' 60 "<<set $scene.poker.action.mc='raise_jumbo'>><<set $scene.poker.bet += 10000>>">>]<br>
<<elseif $scene.poker.chips.mc > $scene.poker.bet+5000>>
[<<moveTo $scene.nextScene 'Raise 5000.' 60 "<<set $scene.poker.action.mc='raise_big'>><<set $scene.poker.bet += 5000>>">>]<br>
<<elseif $scene.poker.chips.mc > $scene.poker.bet+1000>>
[<<moveTo $scene.nextScene 'Raise 1000.' 60 "<<set $scene.poker.action.mc='raise_small'>><<set $scene.poker.bet += 1000>>">>]<br>
<</if>>
<<if $scene.poker.bet > $scene.poker.chips.mc>>
[<<moveTo $scene.nextScene 'Go all in.' 60 "<<set $scene.poker.action.mc='allin_desperate'>><<set $scene.poker.bet+=$scene.poker.chips.mc>><<set $scene.poker.chips.mc=0>>">>]<br>
<<else>>
[<<moveTo $scene.nextScene 'Go all in.' 60 "<<set $scene.poker.action.mc='allin'>><<set $scene.poker.bet=$scene.poker.chips.mc>>">>]<br>
<</if>>
[<<moveTo $scene.nextScene 'Fold.' 60 "<<set $scene.poker.action.mc='fold'>>">>]
<</if>>
<<else>>
You have already folded.<br>
<br>
[<<moveTo $scene.nextScene 'Wait.' 60 "<<set $scene.poker.action.mc='wait'>>">>]
<</if>><<switch $scene.poker.action.mc>>
<<case 'fold'>>
You fold.
<<case 'call'>>
You call for <<=$scene.poker.lastBet>>.
<<case 'raise_small'>>
You raise an additional 1000 credits.
<<case 'raise_big'>>
You raise 5000 credits.
<<case 'raise_jumbo'>>
You raise 10000 credits.
<<case 'allin'>>
You push your credits to the centre of the table and go all in.
<<case 'allin_desperate'>>
Unable to call, you push your credits to the centre of the table and go all in.
<<case 'wait'>>
You sit and wait.
<<default>>
ERROR: unexpected scene.poker.action.mc: <<=$scene.poker.action.mc>>
<</switch>>/*#
#desc: poker - the flop
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.poker.action.mc == 'allin_desperate'>>
<<set $scene.poker.chips.mc = 0>>
<<set $scene.poker.pot += $scene.poker.chips.mc>>
<<elseif $scene.poker.action.mc != 'wait' && $scene.poker.action.mc != 'fold'>>
<<set $scene.poker.chips.mc -= $scene.poker.bet>>
<<set $scene.poker.pot += $scene.poker.bet>>
<</if>>
<<set $scene.poker.lastBet = $scene.poker.bet>>
<<calcBets 'flop' $scene.poker>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 2 3 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<include "printPokerPlayerBet">>
<br><br>
<<printReBet $scene.poker>>
<br><br>
Community cards — Flop:<br>
<<printCards $scene.poker.deal 3>><br>
<<if $scene.poker.action.mc != "fold" && !($scene.poker.action.mc == "wait" && $scene.poker.chips.mc >= 0)>>
You are holding <<printCards $scene.poker.pocketCards.mc 2>><br>
<</if>>
<<printBets 'flop' $scene.poker>>
<br>
<<if $scene.poker.handEarlyWinner == "">>
<<set $scene.nextScene = "event_party_poker_room_game_4_turn">>
<<if false>>
<<moveTo "event_party_poker_room_game_4_turn">>
<</if>>
<<include printPokerBettingOptions>>
<<else>>
<<printPokerEarlyWinner $scene.poker.handEarlyWinner>><br>
<br>
[<<moveTo "event_party_poker_room_game_6_end" 'Continue.' 60>>]<br>
<</if>>
</div>/*#
#desc: poker - the turn
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.poker.action.mc == 'allin_desperate'>>
<<set $scene.poker.chips.mc = 0>>
<<set $scene.poker.pot += $scene.poker.chips.mc>>
<<elseif $scene.poker.action.mc != 'wait' && $scene.poker.action.mc != 'fold'>>
<<set $scene.poker.chips.mc -= $scene.poker.bet>>
<<set $scene.poker.pot += $scene.poker.bet>>
<</if>>
<<calcBets 'turn' $scene.poker>>
<<set $scene.poker.lastBet = $scene.poker.bet>>
<<set $scene.poker.bet = 1000>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 2 4 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<include "printPokerPlayerBet">>
<br><br>
<<printReBet $scene.poker>>
<br><br>
Community cards — Turn:<br>
<<printCards $scene.poker.deal 4>><br>
<<if $scene.poker.action.mc != "fold" && !($scene.poker.action.mc == "wait" && $scene.poker.chips.mc >= 0)>>
You are holding <<printCards $scene.poker.pocketCards.mc 2>><br>
<</if>>
<<printBets 'turn' $scene.poker>>
<br>
<<if $scene.poker.handEarlyWinner == "">>
<<set $scene.nextScene = "event_party_poker_room_game_5_river">>
<<if false>>
<<moveTo "event_party_poker_room_game_5_river">>
<</if>>
<<include printPokerBettingOptions>>
<<else>>
<<printPokerEarlyWinner $scene.poker.handEarlyWinner>><br>
<br>
[<<moveTo "event_party_poker_room_game_6_end" 'Continue.' 60>>]<br>
<</if>>
</div>/*#
#desc: poker - the river
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.poker.action.mc == 'allin_desperate'>>
<<set $scene.poker.chips.mc = 0>>
<<set $scene.poker.pot += $scene.poker.chips.mc>>
<<elseif $scene.poker.action.mc != 'wait' && $scene.poker.action.mc != 'fold'>>
<<set $scene.poker.chips.mc -= $scene.poker.bet>>
<<set $scene.poker.pot += $scene.poker.bet>>
<</if>>
<<set $scene.poker.lastBet = $scene.poker.bet>> <<calcBets 'river' $scene.poker>>
<<set $scene.poker.bet = 1000>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 2 5 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<include "printPokerPlayerBet">>
<br><br>
<<printReBet $scene.poker>>
<br><br>
Community cards — River:<br>
<<printCards $scene.poker.deal 5>><br>
<<if $scene.poker.action.mc != "fold" && !($scene.poker.action.mc == "wait" && $scene.poker.chips.mc >= 0)>>
You are holding <<printCards $scene.poker.pocketCards.mc 2>><br>
<</if>>
<<printBets 'river' $scene.poker>>
<br>
<<if $scene.poker.handEarlyWinner == "">>
<<set $scene.nextScene = "event_party_poker_room_game_6_end">>
<<if false>>
<<moveTo "event_party_poker_room_game_6_end">>
<</if>>
<<include printPokerBettingOptions>>
<<else>>
<<printPokerEarlyWinner $scene.poker.handEarlyWinner>><br>
<br>
[<<moveTo "event_party_poker_room_game_6_end" 'Continue.' 60>>]<br>
<</if>>
</div>/*#
#desc: finish a hand of poker
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.poker.action.mc == 'allin_desperate'>>
<<set $scene.poker.chips.mc = 0>>
<<set $scene.poker.pot += $scene.poker.chips.mc>>
<<elseif $scene.poker.action.mc != 'wait' && $scene.poker.action.mc != 'fold'>>
<<set $scene.poker.chips.mc -= $scene.poker.bet>>
<<set $scene.poker.pot += $scene.poker.bet>>
<</if>>
<<if $scene.poker.handEarlyWinner == "">>
<<set $scene.poker.action.mc = $scene.poker.action.mc>>
<</if>>
<<set $scene.poker.results = setup.calcPokerResult($scene.poker)>>
<<if $scene.poker.chips.hasOwnProperty('loser2') && $scene.poker.chips.loser2 <= 2000>>
<<set $scene.poker.chips.mc += $scene.poker.chips.loser2>>
<<set $scene.poker.chips.loser2 = 0>>
<</if>>
<<set $scene.loser1Elimination = $scene.poker.chips.hasOwnProperty('loser1') && $scene.poker.chips.loser1 == 0>>
<<set $scene.loser2Elimination = $scene.poker.chips.hasOwnProperty('loser2') && $scene.poker.chips.loser2 == 0>>
<<set $scene.mcLoses = $scene.poker.chips.mc == 0>>
<<set $scene.manElimination = $scene.poker.chips.hasOwnProperty('man') && $scene.poker.chips.man == 0>>
<<set $scene.womanElimination = $scene.poker.chips.hasOwnProperty('woman') && $scene.poker.chips.woman == 0>>
<<if $scene.loser1Elimination>>
<<deleteMember $scene.poker.chips 'loser1'>>
<</if>>
<<if $scene.loser2Elimination>>
<<deleteMember $scene.poker.chips 'loser2'>>
<</if>>
<<if $scene.manElimination>>
<<deleteMember $scene.poker.chips 'man'>>
<</if>>
<<if $scene.womanElimination>>
<<set $scene.poker.cheater_position = "">>
<<deleteMember $scene.poker.chips 'woman'>>
<</if>>
<<if $scene.poker.results.finalVictory>>
<<set $player.flags.poker.won = true>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
<<if $scene.poker.earlyWinner == "">>
<<printReveal $scene.poker.action $scene.poker.pocketCards>>
Community cards — Showdown:<br>
<<printCards $scene.poker.deal 5>><br>
<</if>>
<<printPokerResults $scene.poker.results $scene.poker.handQuality>>
<<if $scene.loser1Elimination>>
Out of chips, one of the other players sighs and rises from the table. "@@.generic_male3;Whelp, I guess that's it for me, maybe my luck will turn next week!@@"<br>
<br>
<</if>>
<<if $scene.loser2Elimination>>
Out of chips, one of the men sighs and picks up his things. "@@.generic_male2;Damn, well I guess there's always next week.@@" He states as he leaves the room.<br>
<br>
<<elseif $scene.poker.chips.hasOwnProperty('loser2') && $scene.poker.chips.loser2 <= 2000>>
Looking at his meagre pile of chips one of the men sighs. "@@.generic_male2;I got other stuff to do tonight, no real sense sticking out another hand. Here, beginners bonus.@@" He states, dumping his remaining chips in your pile.<br>
<br>
<</if>>
<<if $scene.poker.results.finalVictory>>
<<if $scene.manElimination && $scene.womanElimination>>
Wiping out your opponents simultaneously you try to contain your excitement as you gather your chips and cash out.<br>
<br>
"@@.npc_pokerman;Well played@@" <<=setup.getNpcName("npc_pokerman","formal")>> states with a nod. For her part you other opponent merely twitches slightly and lets out a forlorn moan. Glancing to the side you note that the <<man npc_pokercheater>> standing at the edge of the room is glowering at her in obvious disappointment.<br>
<br>
"@@.npc_pokerman;Congratulations, again, I do hope you will grant us the opportunity to win our money back next time!@@"<br>
<br>
<<if $scene.moneyBuyin>>
You nod, trying to be a gracious winner as you cash out your fortune and leave the room.<br>
<br>
[<<moveTo "event_party_root" 'Back to the party.' 60 "<<addCredits `$scene.poker.chips.mc`>>">>]
<<else>>
You nod as the <<man npc_pokercheater>> walks over from the wall to collect <<his npc_pokercheater>> portion. You watch in disappointment as <<he npc_pokercheater>> parts off almost all of your earnings, leaving you with just a meager fraction of what you won as <<he npc_pokercheater>> snorts and waves you off.<br>
<br>
[<<moveTo "event_party_root" 'Back to the party.' 60 "<<addCredits `$scene.poker.chips.mc*.05`>>">>]
<</if>>
<<elseif $scene.manElimination>>
<<if $scene.poker.underTable>>
<<if !$scene.moneyBuyin>>
Before you can touch your winnings the <<man npc_pokercheater>> who staked your entrance swoops in to gather up all but a small portion, leaving you with more than you would earn in a month of normal work, yet still a fraction of what you would have had had you paid your own way in. Looking annoyed <<he npc_pokercheater>> clips a leash to <<his npc_pokercheater>> lust-addled slave's collar and leaves in a huff.<br>
<br>
<</if>>
Shuddering slightly <<=setup.getNpcName("npc_pokerman","formal")>> reaches under the table to pull <<his npc_pokerman>> slave away from <<his npc_pokerman>> hard cock. Looking around she quickly ascertains the situation, staring up at <<him npc_pokerman>> in sympathy. "@@.npc_poker_intro_slave;I'm so sorry, <<sir npc_pokerman>>!@@"<br>
<br>
"@@.npc_pokerman;That's alright, my dear. As much of a lucky charm as you are it seems like tonight it just was not enough.@@"<br>
<br>
You feel a bit guilty that she might endure punishment as a consequence of your triumph.<br>
<br>
<<if $scene.moneyBuyin>>
[<<moveTo "event_party_poker_win_sex_1" 'Offer to finish <<him npc_pokerman>> off as consolation.' 300 "<<addCredits $scene.poker.chips.mc>>">>]<br>
[<<moveTo "event_party_root" 'Gather your winnings and return to the party.' 60 "<<addCredits $scene.poker.chips.mc>>">>]
<<else>>
[<<moveTo "event_party_poker_win_sex_1" 'Offer to finish <<him npc_pokerman>> off as consolation.' 60 "<<addCredits `$scene.poker.chips.mc*.05`>>">>]<br>
[<<moveTo "event_party_root" 'Gather your winnings and return to the party.' 60 "<<addCredits `$scene.poker.chips.mc*.05`>>">>]
<</if>>
<<else>>
Blinking in surprise <<=setup.getNpcName("npc_pokerman","formal")>> watches as you collect your winnings before finally nodding in congratulation. "@@.npc_pokerman;How about you give me a shot at winning back my money?@@" <<He npc_pokerman>> tosses a stack of credits to the dealer for another ten thousand in chips. "@@.npc_pokerman;Shall we play?@@"<br>
<br>
<<if $scene.poker.underTable>>
You think you hear a polite objecting warning from under the table but <<he npc_pokerman>> silences <<his npc_pokerman>> slave by sitting forward and jamming <<his npc_pokerman>> cock further down her throat, the girl resuming sucking rather than press the issue.<br>
<br>
<</if>>
[<<moveTo "event_party_poker_room_game_1_deal" 'Deal.' 60 "<<set $scene.poker.chips.man += 10000>>">>]
<</if>>
<<else>>
You triumph over the girl and she slumps in her chair, frazzled and exhausted.
<<if $scene.moneyBuyin>>
The <<man npc_pokercheater>> on the wall strides over to attach her collar and quickly lead her away leaving you alone at the table. You take a moment to catch your breath as the dealer cashes out your fortune.<br>
<br>
[<<moveTo "event_party_root" 'Back to the party.' 60 "<<addCredits `$scene.poker.chips.mc`>>">>]
<<else>>
The <<man npc_pokercheater>> from the wall strides over, attaching a leash to her collar before turning waiting for the dealer to cash you out so <<he npc_pokercheater>> can collect <<his npc_pokercheater>> portion. You watch in disappointment as <<he npc_pokercheater>> parts off almost all of your earnings, leaving you with just a meager fraction of what you won as <<he npc_pokercheater>> snorts and waves you off.<br>
<br>
[<<moveTo "event_party_root" 'Back to the party.' 60 "<<addCredits `$scene.poker.chips.mc*.05`>>">>]
<</if>>
<</if>>
<<elseif $scene.mcLoses>>
You have been wiped out and you watch as the winner pulls in the pot that contains the last of your money.<br>
<br>
<<if $scene.moneyBuyin>>
With a sigh, you rise to your feet, watching as your lost chips are gathered up by the winner before you walk away.<br>
<br>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
<<elseif $scene.poker.chips.hasOwnProperty('woman')>>
Suddenly the <<man npc_pokercheater>> has moved from the wall to standing behind you, <<his npc_pokercheater>> hands gently resting on your shoulder. "@@.npc_pokercheater;It would seem your confidence was... misplaced. Per our agreement you are now mine... for the remainder of the evening.@@"<br>
<br>
[<<moveTo "event_party_poker_end_debt_cheater_1" 'Wait to hear what that entails.' 60>>]
<<else>>
<<=setup.getNpcName("npc_pokerman","formal")>> gathers up <<his npc_pokerman>> winning and looks at you with a smile. "@@.npc_pokerman;So, I believe that makes you mine for the remainder of the evening?@@"<br>
<br>
[<<moveTo "event_party_poker_end_debt_man_1" 'See what <<he npc_pokerman>> has planned.' 60>>]
<</if>>
<<else>>
<<if $scene.manElimination>>
<<=setup.getNpcName("npc_pokerman","formal")>> sighs and shakes <<his npc_pokerman>> head.
<<if $npc_pokerman.fem>>
"@@.npc_pokercheater;Looks like I wasn't in Lady Luck's favour this time! I am vanquished!@@"
<<else>>
"@@.npc_pokercheater;Lady luck shows her lesbian predilections once again! I am vanquished!@@"
<</if>>
Chuckling to <<him npc_pokerman>>self, <<he npc_pokerman>> rises to <<his npc_pokerman>> feet. "@@.npc_pokercheater;Well I shall leave you two lovely ladies to it, may the best girl win!@@" <<=setup.getNpcName("npc_pokerman","formal")>> leaves the room.<br>
<br>
The woman's eyes unfocused your remaining opponent bites her lip and tosses a few chips into the pot to buy in for the next hand.<br>
<br>
[<<moveTo "event_party_poker_girl_1v1" 'Continue.' 60 "<<set $scene.poker.underTable = false>>">>]
<<elseif $scene.womanElimination>>
[<<moveTo "event_party_poker_man_1v1" 'Continue.' 60>>]
<<elseif $scene.poker.chips.hasOwnProperty('man') && $scene.poker.chips.man < 10000 && !$scene.poker.underTable>>
[<<moveTo "event_party_poker_assistent_appearance" 'Continue.' 60>>]
<<else>>
The winner taking their share, chips clink together as they are tossed into the middle to start the next hand.<br>
<br>
The dealer looks in your direction.<br>
<br>
<<include "printPokerState">>
<<if $player.timebased.fatigue >= $player.timebased.fatiguemax>>
You are exhausted and you faint before you can make a decision.<br>
<br>
[<<moveTo "event_party_poker_room_game_passout" 'Pass out in your chips.' 1200>>]<br>
<<else>>
<<if $scene.poker.chips.mc >= 1000>>
[<<moveTo "event_party_poker_room_game_1_deal" 'Ante up.' 60>>]<br>
[<<moveTo "event_party_poker_room_game_drink" 'Order a drink to calm your nerves.' 60>>]<br>
<<else>>
[@@.link_locked;You are out of chips to keep playing.@@]<br>
<</if>>
[<<moveTo "event_party_cashout" 'Cash out.' 60>>]
<</if>>
<</if>>
<</if>>
</div>You have <<=$scene.poker.chips.mc>> chips.<br>
<<if $scene.poker.chips.hasOwnProperty('man')>>
<<=setup.getNpcName("npc_pokerman","formal")>> has <<=$scene.poker.chips.man>> chips.<br>
<</if>>
<<if $scene.poker.chips.hasOwnProperty('woman')>>
The woman has <<=$scene.poker.chips.woman>> chips.<br>
<</if>>
<<if $scene.poker.chips.hasOwnProperty('loser1')>>
The man to your left has <<=$scene.poker.chips.loser1>> chips.<br>
<</if>>
<<if $scene.poker.chips.hasOwnProperty('loser2')>>
The man to your right has <<=$scene.poker.chips.loser2>> chips.<br>
<</if>>
<br>/*#
#desc: cash out from poker game
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.moneyBuyin>>
<<if $scene.poker.chips.mc >= 11000>>
<<addCredits `.05*($scene.poker.chips.mc-10000)`>>
<</if>>
<<else>>
<<addCredits `$scene.poker.chips.mc`>>
<</if>>
<<if $now.getUTCHours() == 21>>
<<set _shiftedDate to setup.setNextDate($now, 0, 23, 0)>>
<<set $events.work_party_end.trigger.date = _shiftedDate>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
<<if !$scene.moneyBuyin>>
You rise to leave
<<if $scene.poker.chips.hasOwnProperty('woman')>>
only for your "sponsor" to step away from the wall and stand next to you.
<<else>>
only for your "sponsor" to reappear, sans the woman who you defeated earlier.
<</if>>
<br><br>
<<if $scene.poker.chips.mc >= 11000>>
"@@.npc_pokercheater;Leaving so soon? You know it is normally considered polite to give one's opponents the opportunity to win things back but no matter, I will take my stake... and, well, being that this was my money...@@" With a smarmy grin <<he npc_pokercheater>> scoops up all but a meager fraction of your winnings, chuckling to <<him npc_pokercheater>>self as <<he npc_pokercheater>> waves you off.
<<else>>
Shaking <<his npc_pokercheater>> head <<he npc_pokercheater>> scoops up the credits. "@@.npc_pokercheater;Hmm, it appears you have lost some of my stake...@@"<br>
<br>
Your heart beats faster as <<he npc_pokercheater>> idly traces your collar with one finger. "@@.npc_pokercheater;Well, in light of who you work for I suppose we can let it slide though... if you were to lose everything I might be less forgiving...@@"
<</if>>
<br><br>
Shivering slightly you hurry out of the room and on your way.
<<else>>
You wait for the silent dealer to cash out your chips and depart.
<<if $scene.poker.chips.mc > 10000>>
Not pushing your luck, you may not have cleaned out the table, but you made yourself a few credits, the casual way your opponents threw away more money than your normal job <<if $player.work.payment > 10000>>used to<<else>>would<</if>> earn you in <<if $player.work.payment > 5000>>a week<<else>>weeks<</if>> is somewhat weird to adjust to.
<<elseif $scene.poker.chips.mc == 10000>>
You rise with the exact same money you sat down with, making you wonder what the point even was of playing.
<<else>>
Though you exercised judgement to stand up before you lost everything you leave the room poorer than you sat down.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
</div>/*#
#desc: start heads up game against npc_poker_girl
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
With <<=setup.getNpcName("npc_pokerman","formal")>> leaving the room, it's down to just you, the girl, and the <<man npc_pokercheater>> still lurking and watching from the edge of the room.<br>
<br>
Looking more than a little flush, the girl flashes you a hesitant, somewhat awkward smile before nodding to the dealer to start another hand. You do likewise and the dealer shuffles up.<br>
<br>
[<<moveTo "event_party_poker_room_game_1_deal" 'Wait to see your cards.' 60>>]
</div>/*#
#desc: start heads up game against npc_pokerman
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createPokerBGR 0 -1 $scene.poker "./images/locations/poker_table.png" "./images/locations/party_spectators.png">>
<div id="invframe" class="scrolltext">
The girl slumps in her chair, staring in shock as the last of her chips are gathered up by the hand's winner. In a daze, she staggers to her feet as the <<man npc_pokercheater>> standing against the wall approaches. Clipping a leash to her collar, <<he npc_pokercheater>> shakes <<his npc_pokercheater>> head. She robotically follows <<him npc_pokercheater>> from the room.<br>
<br>
"@@.npc_pokerman;Well, well, well, you eliminated the cheaters.@@" <<=setup.getNpcName("npc_pokerman","formal")>> states with a grin. You look back in surprise and <<he npc_pokerman>> smiles. "@@.npc_pokerman;Oh, everyone knows it, <<he npc_pokercheater>> spots and signals her... of course she'd be a lot better able to use that information if <<he npc_pokercheater>> chose a less... intimate method of communication!@@"<br>
<br>
Motioning for the dealer to start the next hand as <<he npc_pokerman>> laughs, <<=setup.getNpcName("npc_pokerman","formal")>> continues on with <<his npc_pokerman>> explanation. "@@.npc_pokerman;Anyway, only a few of us are up to the challenge of trying to navigate such a fraught situation but with that foe having been bested well... it's down to just you and me.@@" The <<man npc_pokerman>> grins and your heart beats a little faster as you reflexively buy in.<br>
<br>
[<<moveTo "event_party_poker_room_game_1_deal" 'Wait to see your cards.' 60>>]
</div>/*#
#desc: npc_poker_slave shows up to help her master
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.poker.underTable = true>>
<<if $npc_poker_intro_slave.stage < 3>>
<<set $npc_poker_intro_slave.stage = 3>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
Looking at <<his npc_pokerman>> dwindling pile of chips <<=setup.getNpcName("npc_pokerman","formal")>> calls for a short break, pressing a button on a small remote.<br>
<br>
A few short minutes later, <<his npc_pokerman>> assistant appears, striding smoothly into the room and taking a brief glance around the table before sliding to her knees and crawling between <<his npc_pokerman>> legs. Beaming up at <<him npc_pokerman>> as she unbuttons <<his npc_pokerman>> pants, she takes <<his npc_pokerman>> sizable cock between her lips with a pleased moan, shuffling backwards as <<he npc_pokerman>> gently shields her head from the edge of the table and slides forward.<br>
<br>
"@@.npc_pokerman;Just needed my personal lady luck...@@" <<he npc_pokerman>> says with a grin. "@@.npc_pokerman;Now, shall we play another hand?@@"<br>
<br>
[<<moveTo "event_party_poker_room_game_1_deal" 'Ante up.' 60>>]
</div>/*#
#desc: have a drink while playing poker
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny -3>>
<<set $scene.distraction -= 5>>
<<applyFatigue 20>>
<<drinkBooze $player 2>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
You order a drink.
<<if $fetish.milking>>
The mute dealer reaches under the table for a glass, holding it in front of one of her latex-encased breasts and then twisting something over her nipple. Milky liquid trickles out and she squeezes herself to increase the rate of flow until the glass is full.<br>
<br>
None of the other players seem the least perturbed by what just happened, suddenly overcome with thirst, you tilt back the drink, surprised to find that it tastes like vodka more than milk, the kick of alcohol of what has to be the oddest, but tastiest, White Russian you've ever had.
<<else>>
The mute dealer reaches under the table and comes up with a glass that she slides across to you.<br>
<br>
You drink it quickly, feeling a sense of fuzzy, relaxed calm come over you. Your arousal has subsided, though
<<if setup.hasTmpEffect('wasted')>>
at the cost of feeling very drunk, to the point where you're having trouble remembering all of the rules to the game.
<<elseif setup.hasTmpEffect('drunk')>>
at the cost of feeling drunk, and you struggle to stay focused on the game.
<<elseif setup.hasTmpEffect('tipsy')>>
at the cost of feeling a little tipsy, which is making it a bit harder to focus on the game.
<<else>>
you aren't sure how much more you can drink before it impacts your play.
<</if>>
<</if>>
<br><br>
Turning back to the game, you realise the next hand is already starting.<br>
<br>
<<printThought "It'd be a bit rude to drink and run...">><br>
<br>
[<<moveTo "event_party_poker_room_game_1_deal" 'Ante up.' 60>>]
</div>/*#
#desc: lose the game and go into debt to npc_pokerman
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCHours() == 21>>
<<set _shiftedDate to setup.setNextDate($now, 0, 23, 0)>>
<<set $events.work_party_end.trigger.date = _shiftedDate>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_pokerman","formal")>> sits back with a wide grin after collecting <<his npc_pokerman>> winnings.<br>
<br>
<<if $scene.poker.underTable>>
Reaching under the table <<he npc_pokerman>> pulls up <<his npc_pokerman>> slave who carefully licks her lips before taking a position standing next to <<him npc_pokerman>>.<br>
<br>
"@@.npc_pokerman;How about you scrounge up some new players. I think I have a stand-in for the rest of the evening.@@"<br>
<br>
She nods obediently then glances at you with lusty jealousy before quickly walking out of the room.
<<else>>
<<He npc_pokerman>> smiles, sending off a text before sliding <<his npc_pokerman>> chair back and motioning under the table.<br>
<br>
"@@.npc_pokerman;Here you go, girl. Just crawl on under here and be my good luck charm. More players are on the way and the game should be starting back up soon enough.@@"
<</if>>
<br><br>
[<<moveTo "event_party_poker_end_debt_man_2" 'Crawl under the table.' 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_party_poker_end_debt_man_2" 'Ask if you could possibly beg out?' 60 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: npc_pokerman puts you under the table for losing
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 9 'normal' $SEEN_STRANGER>>
<<set $npc_pokerman.flags.enslaved_you = true>>
<</if>>
<<if ($scene.obey || $fetish.get_raped) && !$player.virgin.blowjob>>
<<set $player.virgin.blowjob = 'npc_pokerman'>>
<<if !$player.sec_style.sex.blowjob>>
<<set $player.sec_style.sex.blowjob = "forced">>
<</if>>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_blowjob'
0
'theme_church_confession_blowjob'
true
>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You obediently crawl under the table where <<he npc_pokerman>> slides <<his npc_pokerman>> seat forward and attaches your collar between <<his npc_pokerman>> legs with a short chain. Having barely any slack, or choice, you lean forward to start paying off your debt.<br>
<br>
[<<moveTo "event_party_poker_end_debt_man_3" 'Glug.' 1500>>]
<<elseif $fetish.get_raped>>
Not wanting to spend the rest of the night on your knees you ask <<=setup.getNpcName("npc_pokerman","formal")>> if there's any way out of your arrangement.<br>
<br>
Smiling back up at you <<he npc_pokerman>> shakes <<his npc_pokerman>> head as <<he npc_pokerman>> attaches a ring and a leash to your collar "@@.npc_pokerman;No, my dear. A deal is a deal and right now that deal means that you are going to suck my cock.@@"<br>
<br>
With a sudden jerk <<he npc_pokerman>> uses the leash to force your face down between <<his npc_pokerman>> legs, dragging you into position before guiding you home with a firm hand on the back of your head.<br>
<br>
[<<moveTo "event_party_poker_end_debt_man_3" 'Glug.' 1500>>]
<<else>>
Not wanting to spend the rest of the night on your knees you ask <<=setup.getNpcName("npc_pokerman","formal")>> if there's any way out of your arrangement.<br>
<br>
<<He npc_pokerman>> thinks for a moment and then sighs. "@@.npc_pokerman;Very well, I suppose eliminating that cheater to clear the way for me to pull in some more interesting competition is something... plus, well... if you wouldn't mind putting in a good word with <<=setup.getNpcName("npc_manager","other")>>?@@"<br>
<br>
You thank <<him npc_pokerman>> for the consideration and hurry out of the room.<br>
<br>
[<<moveTo "event_party_root" 'Back to the party.' 60>>]
<</if>>
</div>/*#
#desc: service npc_pokerman to pay off your debt
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_pokerman.penis_size 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
With your leash clipped between the <<mans npc_pokerman>> legs you have little choice but to suck on <<his npc_pokerman>> cock.
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
No monster <<=ps(setup.getNpcName("npc_pokerman","formal"))>> member is the sort you could suck for hours; big enough to be interesting and give everything from lips to tongue to throat a bit of a workout, but not so inhumanly large that you're ever straining.
<<else>>
<<=setup.getNpcName("npc_pokerman","formal")>> has a nice big, tasty cock, large enough to occupy your full attention but not so big you're straining anything.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
<<=ps(setup.getNpcName("npc_pokerman","formal"))>> member is a big large for you, but you take that as a challenge, almost perfect for honing your skills as <<his npc_pokerman>> girth is enough to be a struggle, but not an insurmountable one.
<<else>>
<<=ps(setup.getNpcName("npc_pokerman","formal"))>> is big and beautiful, if only you were skilled enough to properly appreciate the opportunity.
<</if>>
<</if>>
<br><br>
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
<<printThought "Losing the money sucks, but a whole night of slurping schlong really makes up for it...">>
<<else>>
<<printThought "I guess this is a bit of a consolation prize for losing it all.">>
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
<<printThought "First I lose my money, now I have to suck cock all night... why does that not seem to bother me?">>
<<else>>
<<printThought "First I lose my money, now I have to suck cock all night... I really do have the worst luck.">>
<</if>>
<</if>>
<br><br>
Focused on your "job" you are distantly aware of the sound of more people sitting down around the table followed swiftly by the clink of chips and the sound the deal as a fresh game of poker commences.<br>
<br>
Other than the occasional head-pat and "@@.npc_pokerman;Good girl@@" that seems to be your reward when <<=setup.getNpcName("npc_pokerman","formal")>> has a particularly profitable hand your night proceeds calmly. Unfortunately <<his npc_pokerman>> luck seems to turn and you suddenly find your leash unclipped from between <<his npc_pokerman>> legs, your mouth empty for but a few seconds before you're passed off under the table to another player.<br>
<br>
<<if $options.fem>>Now under someone's skirt<<else>>Attached between another pair of legs<</if>> with a nice fragrant <<if $options.fem>>girl<</if>>cock pressed against your face you have no choice but to get back to work.<br>
<br>
[<<moveTo "event_party_poker_end_debt_man_4" 'Keep sucking.' 1500>>]
</div>/*#
#desc: suck npc_pokerman as he plays poker
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 13 'terrible' $SEEN_STRANGER>>
<<applyExperience 'penis' 13 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
Once you're "in play" it seems that you become part of the expected ante, bouncing around the table nearly every other hand giving you the opportunity to "sample" quite a variety of <<if $options.fem>>girl<</if>>cocks, large, small, <<if $options.fem>>fat, skinny<<else>>male, female<</if>>. You even spend a string of hands pressed against a nice juicy cunt as the girl goes on a roll, and after doing perhaps TOO good a job on one otherwise tense client you spend a short stint between the rubber legs of the dealer forced to lick at the tight latex stretched over her steel chastity belt.<br>
<br>
As you continue to crawl back and forth under the table to serve your revolving temporary owners you finally start to receive "rewards" of your own in the form of
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
delectable
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty, yet strangely tasty
<<else>>
bitter
<</if>>
<</if>>
cum. As this goes on you start to realise <<=ps(setup.getNpcName("npc_pokerman","formal"))>> cunning plan. Though you cannot actually see the table you can sense that the game is slowly drifting in <<his npc_pokerman>> direction, post-orgasm lull making <<his npc_pokerman>> opponents less attentive while <<he npc_pokerman>> seems indefatigable throughout, ever-hard yet never coming close to cumming no matter how many of your tricks you deploy.<br>
<br>
Your rotation of the table eventually slows down until — your jaw sore and your belly full, it is over.<br>
<br>
Pulling on your leash <<=setup.getNpcName("npc_pokerman","formal")>> drags you out from under the table with a smile; you watch the last of <<his npc_pokerman>> opponents leave the room as you realise that <<he npc_pokerman>> has cleared the table for the second time of the night.<br>
<br>
"@@.npc_pokerman;Now that's a good girl! I half want to talk to <<=setup.getNpcName("npc_manager","other")>> about borrowing you next week, but no, I think I will refrain from risking being in her debt. You didn't hear it from me but she intimidates more than just her subordinates!@@"<br>
<br>
The <<man npc_pokerman>> laughs as <<he npc_pokerman>> removes the leash, and the ring <<he npc_pokerman>> attached to your collar. "@@.npc_pokerman;I know the terms were technically until the end of the night but... well, I think you more than earned your freedom. Have a great evening and my best regards to your owner — she trained up quite a cocksucker!@@"<br>
<br>
A bit tired and stiff from all that time on your knees you head out of the room.<br>
<br>
[<<moveTo "event_party_root" 'Back to the party.' 60>>]
</div>/*#
#desc: collared by npc_pokercheater to pay off your poker debt
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCHours() == 21>>
<<set _shiftedDate to setup.setNextDate($now, 0, 23, 0)>>
<<set $events.work_party_end.trigger.date = _shiftedDate>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
You look over where your opponent has not yet even reached for her winnings, instead almost convulsing in her chair in what is clearly a powerful, body-racking orgasm. Paying no mind to the wanton display the <<man npc_pokercheater>> looming over you strokes your hair before clipping a short lead to your collar.<br>
<br>
"@@.npc_pokercheater;And after all that effort... you are mine, for the rest of the evening, at least. Though we shall see... <<=ps(setup.getNpcName("npc_manager","other"))>> luck may soon run out just as her assistant's has...@@"<br>
<br>
[<<moveTo "event_party_poker_end_debt_cheater_2" 'Find out what you have to do now.' 60>>]
</div>/*#
#desc: start serving npc_pokercheater to pay off your debt
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
The <<man npc_pokercheater>> collars <<his npc_pokercheater>> slave as she comes down from orgasm and you look nervously at her for comfort. Unfortunately she appears so cum-blasted that she is barely able to stand, much less focus on anything as the <<man npc_pokercheater>> tugs on your leashes and leads you off.<br>
<br>
Out the door and straight across the ballroom you look around for your <<=setup.getNpcName("npc_manager","title")>> thinking she might rescue you from the hole you have gotten yourself into. She is nowhere to be seen, however, and you are soon in the elevator, standing on either side of the <<man npc_pokercheater>> as <<he npc_pokercheater>> sends the elevator car plunging down into the sub-basement laboratory levels.<br>
<br>
[<<moveTo "event_party_poker_end_debt_cheater_3" 'Continue.' 60>>]
</div>/*#
#desc: pay off debt to npc_pokercheater with sexdoll orgy intro
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
Arriving at your subterranean destination you and your co-submissive follow the <<man npc_pokercheater>> through a hallway and then to a secure lab. The door locks behind you as the lights come on and you look around in surprise — there are at least a dozen female robotic bodies scattered about in various stages of assembly, with the three "complete" models looking nigh identical to the girl who just beat you at poker.<br>
<br>
You look back and forth between the motionless robots and the exhausted woman, your temporary <<master npc_pokercheater>> noticing your attention as <<he npc_pokercheater>> leads her to one side of the room and begins strapping her to a circular frame as <<he npc_pokercheater>> dismissively chats at you.<br>
<br>
"@@.npc_pokercheater;She's real... though she wishes she wasn't. Yes my lovely assistant is really quite the perfect subject for my drone project — so much more efficient if we can just churn these out in the factory rather than spend so much time training, but that means perfecting the AI subroutines and that is where you come in.@@"<br>
<br>
Having finished securing the woman — complete with a wand pressed between her legs and a gag between her lips, <<he npc_pokercheater>> turns back to you with a grin and walks towards the three "complete" robots.<br>
<br>
"@@.npc_pokercheater;Yes, that's right, your "debt payment" will be to have your brains fucked out by a trio of robotic sexdolls — while the "original model" watches on jealously.@@"<br>
<br>
A soft moan escapes the woman's gag to float across the room as the <<if $npc_pokercheater.fem>>other <</if>><<man npc_pokercheater>> switches on the three dolls to rise to their feet and look towards you, their expressions eerily turning to seductive lust as they approach you unblinkingly.<br>
<br>
Sitting down and picking up a tablet the <<man npc_pokercheater>> nods in your direction. "@@.npc_pokercheater;Go on, enjoy. All data is good data, after all.@@"<br>
<br>
<<if $currentTasks.hasOwnProperty('ai_robot_body_decommission_robot_2') && !$currentTasks.ai_robot_body_decommission_robot_2.finished>>
[<<moveTo "event_party_poker_end_debt_cheater_4" 'You came here on a mission...' 600 "<<set $scene.poker.action.mc='accept'>>">>]<br>
<<else>>
[<<moveTo "event_party_poker_end_debt_cheater_4" 'Embrace the situation.' 600 "<<set $scene.poker.action.mc='accept'>>">>]<br>
<</if>>
[<<moveTo "event_party_poker_end_debt_cheater_4" 'No, you do not want to do this.' 600 "<<set $scene.poker.action.mc='reject'>>">>]
</div>/*#
#desc: pay off debt to npc_pokercheater with sexdoll orgy
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_pokercheater.flags.enslaved_you = true>>
<<if $scene.poker.action.mc != 'reject' || $fetish.get_raped>>
<<playerOrgasm>>
<<applyFatigue 50>>
<</if>>
<<set $scene.finishMission = $scene.poker.action.mc == 'accept' && $currentTasks.hasOwnProperty('ai_robot_body_decommission_robot_2') && !$currentTasks.ai_robot_body_decommission_robot_2.finished>>
<<if $scene.finishMission>>
<<set $npc_ai.flags.missions.robot_body = true>>
<<completeTask 'ai_robot_body_decommission_robot_2' $now true>>
<<addEvent 'event_ai_technician_visit'>>
<</if>>
<</if>>
<<set $player.location to "Underground Laboratory">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.poker.action.mc>>
<<case 'accept'>>
<<if $scene.finishMission>>
You recall <<=ps(setup.getNpcName('npc_ai', 'first'))>> instructions and palm the chip before stepping towards the approaching sex-bots.
<<else>>
Heart racing with excitement you step towards the approaching sex-bots.
<</if>>
Their programming quite direct the trio soon has you naked as they lay you onto a table, hand caressing your breasts as artificial lips move across your flesh.<br>
<br>
The muffled moans of your poker opponent provide soundtrack and then you feel
<<if !setup.checkItemTypeWorn("plug")>>
a cock slide into you
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
a cock slide in through your hollow plug
<<else>>
your plug removed and a cock slide into you
<</if>>
<</if>>
— a vibrating, artificial cock drilling you deep.<br>
<br>
<<if $scene.finishMission>>
Moaning in pleasure you remember your task, reaching out to finger the nearest artificial cunt. It is wet, tight and just close enough to realistic to be eerie, and the fact that the android makes no acknowledgement of the stimulation quite creepy. Leaving the chip behind you let your arm go limp and your eyes to roll back in pleasure. The sexbots may be merely executing their programming but there is no doubting the effectiveness of the three sexbots' technique.<br>
<br>
<</if>>
You are fucked and fingered, buzzed and licked and yet never once do they even approach your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>vagina<</if>> though the rest is more than enough to have you climax, your joy leaking down onto the vibrating dong still pistoning into you with the regularity of a metronome.<br>
<br>
You have lost track of time when the <<man npc_pokercheater>> finally calls the robots off, the trio forming a line, the penis that had so recently been plowing your ass retracting into her vagina to leave no trace in her smooth profile. Approaching you with pad in hand the <<man npc_pokercheater>> smiles and makes <<his npc_pokercheater>> final notes. "@@.npc_pokercheater;Very well done, you may consider your debt paid. Go ahead and dress and I will escort you back to the party.@@"<br>
<br>
Staggering off the bench and back to your feet you dress. You glance over at the woman bound to the wall, her body twitching with post-orgasmic aftershocks, her face drooling in ahegao bliss. Once clothed and your things collected the <<man npc_pokercheater>> takes you by the leash to lead you to the elevator. You ride back up in silence, where <<he npc_pokercheater>> finally removes the leash and attachment point to send you back into the party.<br>
<br>
<<if $scene.finishMission>>
Once alone you get a text message from <<=setup.getNpcName('npc_ai', 'first')>> "@@.npc_ai;<<uc "Well done, unit ">> <<uc $player.first_name>><<uc ". Soon my physical avatar will be on its way to me. Stand by for future instructions.">>@@"<br>
<br>
Looks like your mission was a success.
<</if>>
<<case 'reject'>>
<<if $fetish.get_raped>>
You try to object but the <<man npc_pokercheater>> looks on in silence as the bots close in around you without displaying a hint of emotion.<br>
<br>
Inhuman strength wrapped in almost lifelike artificial flesh grips you tight, peeling off your clothing and then dragging you to a padded bench as you thrash around and the bots set to work. One bot stands at each side holding you down as the third steps between your legs. Tilting her head slightly there is a soft whirring sound and then an artificial cock emerges from her robotic vagina. Her sisters lean in to begin licking your nipples
<<if !setup.checkItemTypeWorn("plug")>>
as she slides into you
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
as she slides in through your hollow plug
<<else>>
as your plug is removed
<</if>>
<</if>>
and she enters you.<br>
<br>
Your cries take on a fresh tone as the robotic member inside of you begins to vibrate, the three sex-droids working in unison to ravish you thoroughly, the ecstatic torture even past the point where your leaked excretion has trickled down to mix with the lube that has her pumping machine-like in and out of your hole, your nipples puffy and sore by the time they finally step back and leave you lying limp.<br>
<br>
Walking over the <<man npc_pokercheater>> stands over you as <<he npc_pokercheater>> makes a final note on <<his npc_pokercheater>> tablet. "@@.npc_pokercheater;A curious reaction, but data is data. You may collect your things and return to the party now, your debt is paid... for now.@@"<br>
<br>
The three robots standing statue-like once again you glance over to see your poker opponent hanging in her bonds, her expression one of full ahegao bliss.<br>
<br>
Hurrying to put on your clothes you are escorted out of the room and to the elevator, the <<man npc_pokercheater>> removing your leash and attachment point before releasing you back to the party.
<<else>>
As the femdoll triplets approach you say that you don't want to do this. The <<man npc_pokercheater>> stares at you for a moment and then presses a button, the robots freezing mid-stride to look like creepy statues.<br>
<br>
The <<man npc_pokercheater>> sighs. "@@.npc_pokercheater;This is quite frustrating, and if you had any other owner... never mind, I do not want to deal with things if she decides to make a formal complaint. Certainly I would be within my rights given that you lost the game but...@@"<br>
<br>
Weaving between the motionless sexbots <<he npc_pokercheater>> grabs your leash and heads for the door, turning back just before <<he npc_pokercheater>> leaves to press a button and re-activate the sex-dolls. "@@.npc_pokercheater;I guess it's back to the usual plan, have a good night, my dear.@@"<br>
<br>
Your last sight is the restrained girl moaning with lust as her three doppelgangers approach her helpless form. Leading you out of the elevator and back upstairs the <<man npc_pokercheater>> removes the attachment point and leash and gestures for you to return to the party.
<</if>>
<<default>>
ERROR: unexpected scene.poker.action.mc <<=$scene.poker.action.mc>>
<</switch>>
<br><br>
[<<moveTo "event_party_root" 'Back to the party.' 600>>]
</div>/*#
#desc: pass out while playing poker
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.poker.faint = true>>
<<removeEvent 'work_party_end'>>
<<include "endOfPartyCollar">>
<<if $scene.moneyBuyin>>
<<addCredits 9000>>
<</if>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png">>
<div id="invframe" class="scrolltext">
You wake up to find yourself back in the limo<<if $scene.replaceCollar>>, and your collar back where it belongs around your throat<</if>>. There's a note in your hand from <<=setup.getNpcName("npc_manager","formal")>> informing you that she was informed of your state and made "arrangements."
<<if $scene.moneyBuyin>>
Looking through your things it appears that you are out a thousand credits from your initial buy-in, apparently passing out at the table must have had a surcharge attached.
<<else>>
Looking through your things you appear to have ended up without any extra credits, possibly a blessing given what you "staked" to get into the game.
<</if>>
<br><br>
<<printThought "Well that was dumb... though I guess I could be worse off, given the situation.">><br>
<br>
The limo pulls up to your apartment building.<br>
<br>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: passed out in orgasm, wake up as dealer
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.poker.cum = true>>
<<removeEvent 'work_party_end'>>
<<useClothSetPush 'poker'>>
<<removeAllClothing>>
<<set $scene.ownedCatsuit = setup.checkItemOwned("catsuit_latex_black")>>
<<addItem "catsuit_latex_black">>
<<wearItem "catsuit_latex_black" true>>
<<changeHorny 10>>
<<if State.hasPlayed("theme_ai_mission_poker_1_lose") && setup.checkItemWorn("data_plug")>>
<<set $scene.first = !$npc_ai.flags.cheat_poker>>
<<set $npc_ai.flags.cheat_poker = true>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
You come to your senses looking out across the poker table only something is different...<br>
<br>
A latex-gloved hand reaches out in front of you to begin dealing. It takes you a moment to realise that it is your hand, your body moving as if you were a puppet and you feel the tight latex covering your entire body and the gag filling your mouth and it finally clicks what has happened — you are the hapless dealer!<br>
<br>
<<if State.hasPlayed("theme_ai_mission_poker_1_lose")>>
<<if setup.checkItemWorn("data_plug")>>
You feel a
<<if $scene.first>>
pleasant buzz from the massive plug that is <<=setup.getNpcName('npc_ai','first')>> filling your rear.<br>
<br>
<<printThought "Alright, now she can figure out how to cheat this game... while I survive out the night.">>
<<else>>
confused buzz from the massive plug that is <<=setup.getNpcName('npc_ai','first')>> filling your rear.<br>
<br>
<<printThought "Why did I do this again? <<=setup.getNpcName('npc_ai','first')>> already has everything she needs to cheat on my behalf...">>
<</if>>
<<else>>
<<printThought "Oh no, I'm not wearing her plug! This is all for nothing!">>
<</if>>
<br><br>
<</if>>
<<if $scene.poker.chips.hasOwnProperty('woman')>>
Looking across the room, the <<man npc_pokercheater>> who had been lurking at the edge of the room all night catches your eye and winks and a moment later familiar vibrations run through your body.
<<else>>
Unable to control anything but your eyes you glance frantically around, surprised to see that the woman you earlier eliminated has re-appeared. At the edge of the room the <<man npc_pokercheater>> who escorted her out lurks, catching your eye and winking at you as you finish dealing and a moment later familiar vibrations run through your body.
<</if>>
<br><br>
Try as you might, it seems that you have no control over your body, and you resign yourself to, instead, watch hand after hand play out.
<<if $scene.urethra_vibe || $scene.plug_vibe>>
Unencumbered by focusing on your hand you realise that the patterns of vibration are not random. In fact they seem to correspond to the hand of whichever player the <<man npc_pokercheater>> at the edge of the room is lurking behind,
<<if $scene.urethra_vibe && $scene.plug_vibe>>
Each vibrator is a card, the first blast's strength and duration representing the face value while the second burst corresponds to suit.
<<else>>
The strength and duration of the first vibration seems to correlated to the face value of the card, while the second blast matches suit. You wonder why only one of two pocket cards is represented and then you glance at the woman writhing almost in time with you — she must be plugged fore and aft while you are only vibration-equipped in a single hole.
<</if>>
<br><br>
<<printThought "Cheaters...">>
<<else>>
As you watch the woman, you recognise a pattern to her actions. Whenever the player the <<man npc_pokercheater>> is standing behind, when that player first looks at their cards the woman shifts, her movement nigh perfectly correlated to the <<man npc_pokercheater>> fiddling in <<his npc_pokercheater>> pocket.<br>
<br>
<<printThought "They're cheating...">><br>
<br>
Based on her expression, you have a feeling how they're doing it; you'd bet she's plugged fore and aft, her reaction seeming to indicate that the potency of the vibrations is tied directly to the overall quality of the other players hand.
<</if>>
<br><br>
You can do nothing with your findings, dealing as if an automaton well into the night.<br>
<br>
[<<moveTo "event_party_poker_room_game_cum_2" 'Keep dealing.' 4140>>]
</div>/*#
#desc: finish night as dealer
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.horny = 20>>
<<if $scene.moneyBuyin>>
<<addCredits 5000>>
<<else>>
<<addCredits 100>>
<</if>>
<<applyExperience 'bondage' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You lose track of time as hand after hand plays out, eventually giving up on even trying to resist the invisible strings that are puppeting you to shuffle and deal.<br>
<br>
What finally shatters your reverie is a familiar face — <<=setup.getNpcName("npc_manager","formal")>> walks into the room and somehow recognises you at a glance despite your full latex covering.<br>
<br>
Shaking her head in bemusement, she walks over to you, stroking your polished head as the game halts.<br>
<br>
"@@.npc_manager;Foolish girl, what trouble have you gotten into this time?@@"<br>
<br>
Looking around the table, it seems the other players are very nervous to speak directly to her but, finally, she draws the story out of them.<br>
<br>
"@@.npc_manager;Well, I suppose there was no harm done, and it sounds like she deserved, and likely enjoyed, the whole thing. Still, tomorrow is a workday so I cannot have her working all night!@@"<br>
<br>
Seemingly emboldened by <<=ps(setup.getNpcName("npc_manager","formal"))>> lack of anger, what follows next is bartering for your services, the agreement finally made
<<if $scene.moneyBuyin>>
to reimburse you half of your original stake in exchange for another hour of your time.
<<else>>
to pay you a hundred credits in compensation for another hour of your time.
<</if>>
Patting you on the head, <<=setup.getNpcName("npc_manager","formal")>> takes a final moment to enjoy your slick latex pseudo-skin before departing, your body automatically resuming dealing.<br>
<br>
[<<moveTo "event_party_poker_room_game_cum_3" 'Finish the night.' 3600>>]<br>
</div>/*#
#desc: go home after being dealer
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "catsuit_latex_black" true>>
<<if !$scene.ownedCatsuit>>
<<deleteItem 'catsuit_latex_black'>>
<</if>>
<<useClothSetPop 'poker'>>
<<include "endOfPartyCollar">>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
Your hour coming to an end, you finally regain control of your body, a fresh faceless dealer appearing to replace you as you are helped into another room by a waitress where you find and change back into your clothes. Exhausted, you are grateful to be helped down to the parking garage where<<if $scene.replaceCollar>>where <<=setup.getNpcName("npc_manager","formal")>> replaces your collar and<</if>> a limo takes you straight home.<br>
<br>
<<if State.hasPlayed("theme_ai_mission_poker_1_lose") && setup.checkItemWorn("data_plug")>>
<<if $scene.first>>
<<printThought "I hope that got <<=setup.getNpcName('npc_ai','first')>> the information she needs... have to check in with her after I get home.">>
<<else>>
<<printThought "Why did I do that again? <<=setup.getNpcName('npc_ai','first')>> can already cheat for me... do I really enjoy being an enslaved drone that much?">>
<</if>>
<br><br>
<</if>>
[<<moveTo "room_foyer" "Home" 600>>]
</div>/*#
#desc: offer sex to npc_pokerman after winning
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCHours() == 21>>
<<set _shiftedDate to setup.setNextDate($now, 0, 23, 0)>>
<<set $events.work_party_end.trigger.date = _shiftedDate>>
<</if>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
Delicately clarifying that you don't wish to disparage the obvious skills and appeal of <<his npc_pokerman>> assistant you ask if you could finish the <<man npc_pokerman>> off to take care of any "hard" feelings left over from your victory.<br>
<br>
<<if $scene.wornCollarType == "collar" || $scene.wornCollarType == "necklace">>
The <<man npc_pokerman>> smiles at the pun as <<he npc_pokerman>> glances at your neck "@@.npc_pokerman;What a lovely offer... <<if $scene.wornCollarType == "necklace">>and quite generous for one of your seniority, <</if>>and what did you have in mind?@@"<br>
<br>
<<if !$player.virgin.blowjob>>
[@@.link_locked;You don't feel like having the first time you blow someone being some random <<guy npc_pokerman>> you beat at poker.@@]<br>
<<else>>
[<<moveTo "event_party_poker_win_sex_2" 'Get on your knees.' 600 "<<set $scene.poker.action.mc='oral'>>">>]<br>
<</if>>
<<if !$player.virgin.anal>>
[@@.link_locked;You don't feel like having the first time you feel a cock in your rear should be casually bent over a poker table.@@]<br>
<<else>>
[<<moveTo "event_party_poker_win_sex_2" 'Bend over the table.' 600 "<<set $scene.poker.action.mc='anal'>>">>]<br>
<</if>>
[<<moveTo "event_party_poker_win_sex_2" 'Change your mind and leave.' 60 "<<set $scene.poker.action.mc='no'>>">>]
<<else>>
<<=setup.getNpcName("npc_pokerman","formal")>> glances at your throat and shakes <<his npc_pokerman>> head.
<<if $scene.wornCollarType == "ring">>
"@@.npc_pokerman;Sorry, my dear, I would love to take you up on the offer, but your owner does not appear to be here to grant permission. Perhaps some other time when you are more... free to use.@@"
<<elseif $scene.wornCollarType == "choker">>
"@@.npc_pokerman;Sorry, my dear, but you do not look ready for that sort of... play. Perhaps some other time.@@"
<<else>>
ERROR: unexpected scene.worn collar <<=$scene.wornCollarType>>
<</if>>
<br><br>
[<<moveTo "event_party_root" 'Excuse yourself and return to the party.' 60>>]
<</if>>
</div>/*#
#desc: fuck npc_pokerman as condolence for beating him at poker
#status: FINISHED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.poker.action.mc>>
<<case 'oral'>>
<<applyExperience 'oral' $npc_pokerman.penis_size 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 12 'normal' $SEEN_STRANGER>>
<<set $npc_pokerman.flags.consolation = true>>
<<case 'anal'>>
<<applyExperience 'anal' $npc_pokerman.penis_size 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 12 'normal' $SEEN_STRANGER>>
<<set $npc_pokerman.flags.consolation = true>>
<</switch>>
<</if>>
<<set $player.location to "Secret Poker Game">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/poker_room.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.poker.action.mc>>
<<case 'oral'>>
<<His npc_pokerman>> slave looks on as you slide to your knees and take <<=setup.getNpcName("npc_pokerman","formal")>> between your lips. Already rock-hard and slick with saliva your lips glide down <<his npc_pokerman>> length.
<<if setup.getTotalValue("oral") > 10>>
<<Hes npc_pokerman>> already so close you barely have a chance to even start to deploy your considerable skills before <<he npc_pokerman>> explodes, spurting
<<else>>
<<Hes npc_pokerman>> already so close your lack of skill goes unnoticed as <<he npc_pokerman>> almost immediately spurts
<</if>>
a massive load of <<getWordCum>> that has you reflexively chipmunking to contain it.<br>
<br>
As swiftly as <<he npc_pokerman>> came <<his npc_pokerman>> cock is replaced by <<his npc_pokerman>> assistant's lips as she passionately kisses you to "share" in the <<if setup.getTotalValue("cum") > 10>>delicious<<elseif setup.getTotalValue("cum") > 5>>salty<<else>>bitter<</if>> bounty.<br>
<br>
She holds you close until the two of you have finished swapping and swallowing, finally separating to smile back at you then glance up at her owner. "@@.npc_poker_intro_slave;Thank you, <<sir npc_pokerman>>, you taste even better than usual!@@"<br>
<br>
The <<man npc_pokerman>> chuckles as <<his npc_pokerman>> assistant cleans <<him npc_pokerman>> off with her tongue and zips up <<his npc_pokerman>> pants. "@@.npc_pokerman;If losing always felt like that I might accidentally come to enjoy it! Thanks again for the game and I look forward to the opportunity to win back next week!@@"<br>
<br>
Extending a hand <<he npc_pokerman>> helps <<his npc_pokerman>> assistant to her feet, attaching a leash to her collar and leading the way out of the room as you lick your lips, gather your things, and head on your way.
<<case 'anal'>>
Bending over the table you wiggle your ass in invitation. "@@.npc_pokerman;Now THAT is a gracious winner!@@" <<He npc_pokerman>> states with obvious excitement as
<<if $scene.plug != "">>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
<<his npc_pokerman>> cock stretches its way through the gaping hole of your hollow plug.
<<else>>
<<he npc_pokerman>> slides the plug out of your hole and replaces it with <<his npc_pokerman>> cock.
<</if>>
<<else>>
<<he npc_pokerman>> slides <<his npc_pokerman>> cock into your waiting hole.
<</if>>
<br><br>
You moan, the fact that the dealer in front of you sits motionless without acknowledging what is happening lending a surreal note to the situation. You do not have long to enjoy <<his npc_pokerman>> not immodest <<getWordPenis "npc_pokerman">> filling you up as it appears the "game" — or more accurately, the under-the table efforts of <<his npc_pokerman>> "good luck" charm of an assistant, means that <<he npc_pokerman>> was quite close to climax. After only a handful of thrusts the two of you moan in harmony as <<he npc_pokerman>> fills you with <<getWordCum>>.<br>
<br>
"@@.npc_pokerman;Well!@@" <<He npc_pokerman>> states in a satisfaction a few moments later "@@.npc_pokerman;That really hit the spot — I hope for you as well!@@"<br>
<br>
<<He npc_pokerman>> gives you a friendly slap on the ass before sliding free, the delicate hands of <<his npc_pokerman>> assistant <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>replacing your plug and <</if>>fixing your clothes.<br>
<br>
Returning to your feet you curtsy as <<he npc_pokerman>> finishes leashing <<his npc_pokerman>> assistant, the two of them leaving the room with a nod "@@.npc_pokerman;See you next week, where I hope I will have the opportunity to win things back... or that you at least show similar grace in triumph!@@" You smile back as <<he npc_pokerman>> and <<his npc_pokerman>> assistant depart. You finish gathering your things and head back to the party.
<<case 'no'>>
Changing your mind you give an excuse that actually you need to be going as you gather your winnings and head for the door.<br>
<br>
Snorting in frustration <<=setup.getNpcName("npc_pokerman","formal")>> glances down at the girl still kneeling at <<his npc_pokerman>> feet. "@@.npc_pokerman;Guess it's up to you then.@@" <<He npc_pokerman>> states, grabbing her by the hair and roughly shoving <<his npc_pokerman>> cock into her face.<br>
<br>
Briefly surprised her expression turns to one of rapturous pleasure as her throat bulges and she returns to sucking <<him npc_pokerman>> off with renewed vigour.
<<default>>
ERROR unexpected scene.poker.action.mc <<=$scene.poker.action.mc>>
<</switch>>
<br><br>
[<<moveTo "event_party_root" 'Back to the party.' 60>>]
</div>/*#
#desc: npc_rival greets at first stage 4 party
#status: RELEASED 0.7.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.flags.sissy_hitch>>
<<addWorkEvent 'first_hitch_intro'>>
<<else>>
<<addWorkEvent 'rival_hitch_stage4'>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You've just entered the party when <<=setup.getNpcName('npc_rival', 'formal')>> approaches you and <<=setup.getNpcName('npc_manager', 'formal')>> with a wide grin on <<his npc_rival>> face.<br>
<br>
<<if $player.flags.retreat.mission == 2>>
"@@.npc_rival;<<=setup.getNpcName('npc_manager', 'other')>>! I didn't get the chance to express my condolences, I thought for sure you would be getting Director of the Year.@@"
<<else>>
"@@.npc_rival;<<=setup.getNpcName('npc_manager', 'other')>>! I didn't get the chance to congratulate you on your award! Director of the Year, quite the prize...@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles diplomatically,
<<if $player.flags.retreat.mission == 2>>
"@@.npc_manager;I can only credit my team for their wonderful work. True management is about giving your subordinates a path to success.@@"
<<else>>
"@@.npc_manager;Yes, well, nothing is guaranteed. Most of all I feel for my team, that my failure might in any way reflect badly upon them is always my biggest worry. True management is about giving your subordinates a path to success.@@"
<</if>>
<br><br>
"@@.npc_rival;Certainly some say that,@@" <<he npc_rival>> states with almost mocking politeness — you get the feeling <<he npc_rival>> has a far less supportive conceptualisation of a manager's responsibilities.<br>
<br>
<<if setup.findThemeId('npc_psychiatrist', 'manager', 'theme_psychiatrist_manager_36') == -1>>
"@@.npc_rival;In any case, well... welcome to the upper floors! I was thinking that, in celebration we could break in your new office with some double <<if $fetish.sissy>>sissy<<else>>girl<</if>> post entertainment.<<if $player.flags.boiless.won_sissy_post>> My girl has been training hard and wants another crack at your slut.<</if>>@@"
<<else>>
"@@.npc_rival;In any case, well... welcome to the upper floors! I was thinking that, in celebration we could break in your new office with some double <<if $fetish.sissy>>sissy<<else>>girl<</if>> post entertainment — and get a look at how your <<if $fetish.sissy>>sissy<<else>>girl<</if>> is developing. I know mine has blossomed into quite the pair of obedient holes.@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> sounds almost casually dismissive in her reply. "@@.npc_manager;Put something on my calendar, perhaps the two of us can make it a useful working session as well.@@"<br>
<br>
"@@.npc_rival;I will have my girl do exactly that, give yours some time to do some... stretching.@@" <<=setup.getNpcName('npc_rival', 'formal')>> winks at you before walking away.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> snorts once the <<man npc_rival>> is out of sight. "@@.npc_manager;This is exactly why I was resisting moving to the upper floors, so much time wasted on posturing rather than work... still, that is how the game is played. I will leave you to enjoy the rest of your evening.@@"<br>
<br>
She nods gently and slides off into the party.<br>
<br>
[<<moveTo "event_party_root" "Look around." 120>>]
</div>/*#
#desc: predecessor visit for winning pony race
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are working when a delivery-person knocks on the door, rolling a large, eerily familiar crate into the office.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> is suddenly out of her office, looking more than a little excited as she quickly signs for things and starts tearing at the crate.<br>
<br>
You hear a rip of wood as <<=setup.getNpcName("npc_manager","formal")>> tears off the front panel without even bothering with a pry-bar, and then she freezes, her jaw dropping in shock.<br>
<br>
[<<moveTo "event_work_pred_visit_2" 'Continue.' 300>>]
</div>/*#
#desc: predecessor reveal for winning pony race
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_secretary","npc_secretary_statue")>>
<div id="invframe" class="scrolltext">
You hurry over to look into the box and immediately understand the source of <<=ps(setup.getNpcName("npc_manager","formal"))>> despair. You can recognise <<=setup.getNpcName("npc_secretary","nickname")>> well enough, but she is completely encased in some sort of rigid, but transparent, material — a living statue, her eyes and ears covered and her mouth gagged leaving her no way to observe the world outside her prison.<br>
<br>
There is a muffled buzzing followed by the softest of moans as you look down to note her chastity belt; whatever it has locked inside of her must be on some sort of timer.<br>
<br>
"@@.npc_manager;That <<if $npc_boss.fem>>bitch<<else>>bastard<</if>>.@@" <<=setup.getNpcName("npc_manager","formal")>> states softly, reaching up to caress her old Secretary's face, the thick moulded material preventing her from touching skin as the woman looks to be straining against her complete encasement.<br>
<br>
You reach out to comfort your <<=setup.getNpcName("npc_manager","title")>> over how <<=setup.getNpcName("npc_boss","formal")>> has fulfilled the letter of <<his npc_boss>> bet to loan out <<=setup.getNpcName("npc_secretary","nickname")>> for the afternoon, while denying the spirit of it in making sure she is in a situation wherein she cannot experience things or in any meaningful way be used by <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sighs, lifting the "statue" out of the crate and carrying it into her office. "@@.npc_manager;At least I will have something to look at for the afternoon...@@" She summarises in disappointment, her door closing softly behind.<br>
<br>
You turn back to your work for the afternoon. Occasionally you poke in on <<=ps(setup.getNpcName("npc_manager","formal"))>> inner office to see if you can get her anything. Each time she declines as you catch her either staring at her statuesque "prize" or, once, standing next to your predecessor, staring into the other woman's blindfolded face as the encased secretary moans out what is certainly an orgasm.<br>
<br>
<<set _evening = setup.setNextDate($now, 0, $player.work.time_evening.hour, $player.work.time_evening.minutes)>>
<<set _timeToEvening = setup.secondsToDate($now,_evening)-1800>>
[<<moveTo "event_work_pred_visit_3" 'Continue.' _timeToEvening>>]
</div>/*#
#desc: predecessor taken away after afternoon reward of winning pony race
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_secretary.flags.statue_visit = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_secretary","npc_secretary_statue")>>
<div id="invframe" class="scrolltext">
The end of day nears and two delivery-people return. It takes both of them working together to move back into the crate as <<=setup.getNpcName("npc_manager","formal")>> looks on, her tender expression for her previous secretary turning into one of steely determination as the crate is closed up and carted away.<br>
<br>
You try to think of something to say, but find not the words before the inner office door closes. You sigh, and turn back to your computer to finish the last few minutes of work for the day.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 0 "<<completeWorkEvent>>">>]
</div>/*#
#desc: corporate retreat airport - flight delay
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem $scene.dressId true>>
<<deleteItem $scene.dressId>>
<<removeItem $scene.heelsId true>>
<<deleteItem $scene.heelsId>>
<<removeItem $scene.collarId true>>
<<deleteItem $scene.collarId>>
<<removeItem $scene.leashId true>>
<<deleteItem $scene.leashId>>
<<removeItem $scene.armbinderId true>>
<<deleteItem $scene.armbinderId>>
<<removeItem 'ankle_cuffs_steel' true>>
<<deleteItem 'ankle_cuffs_steel'>>
<<removeItem 'thigh_cuffs_steel' true>>
<<deleteItem 'thigh_cuffs_steel'>>
<<if $player.flags.collar.owner>>
<<wearItem $player.flags.collar.collarId true>>
<<elseif $scene.addCollar || $scene.switchCollar>>
<<addItem 'bondage_collar_promo'>>
<<wearItem 'bondage_collar_promo' true>>
<</if>>
<<addItem 'leash_transit'>>
<<wearItem 'leash_transit' true>>
<<addItem 'transit_gag'>>
<<wearItem 'transit_gag' true>>
<<addItem 'transit_cuffs'>>
<<wearItem 'transit_cuffs' true>>
<</if>>
<<set $player.location to "Airport Waiting Area">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Knowing what to expect this time check-in and security go much smoother, except for being informed that there was a maintenance issue leading to a smaller plane being in use and, as a result, it being quite over-booked.<br>
<br>
"@@.generic_female1;Of course your position is secure,@@" the gate agent hurries to explain. "@@.generic_female1;Thanks to your first-class booking, but space will be tight, particularly for those in stowage class.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods.
<<if $scene.missionSuccess>>
"@@.npc_manager;In that case I would like to change the travel arrangements for her to ride with me as a carry-on.@@"
<<else>>
"@@.npc_manager;I see, well, whatever accommodations need to be made to be sure that she is on the same flight.@@"<br>
<br>
"@@.generic_female1;Would a double-booking be acceptable? It would really help us make sure we fill the plane as much as possible.@@"<br>
<br>
"@@.npc_manager;Certainly, she would enjoy that, I am sure.@@" <<=setup.getNpcName("npc_manager","formal")>> states with a smile. You aren't sure what "double-booking" means in this context, but you have a feeling this may be another bit of <<=ps(setup.getNpcName("npc_manager","formal"))>> revenge for your failure to properly rig the contest.
<</if>>
<br><br>
"@@.generic_female1;Very good, Mistress,@@" the attendant replies, printing out a new tag to attach to your collar. "@@.generic_female1;If you would proceed to the gate boarding will begin shortly.@@"<br>
<br>
Taking your leash in hand <<=setup.getNpcName("npc_manager","formal")>> leads you on through security and then to your plane, skipping the line via the priority boarding lane.<br>
<br>
[<<moveTo "event_corporate_retreat_travel_home_2" 'Board.' 600>>]
</div>/*#
#desc: corporate retreat airport - boarding
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.missionSuccess>>
<<applyExperience 'anal' 12 'normal' $EXPOSED>>
<<applyExperience 'submission' 10 'normal' $EXPOSED>>
<<applyExperience 'bondage' 13 'normal' $EXPOSED>>
<<if !$player.virgin.cunnilingus>>
<<set $player.virgin.cunnilingus = "npc_manager">>
<</if>>
<<else>>
<<applyExperience 'anal' 16 'normal' $EXPOSED>>
<<applyExperience 'humiliation' 18 'very' $EXPOSED>>
<<applyExperience 'bondage' 18 'normal' $EXPOSED>>
<<applyExperience 'oral' 8 'normal' $EXPOSED>>
<<addItem 'trophy_plug'>>
<<wearItem 'trophy_plug' true>>
<</if>>
<</if>>
<<set $player.location to "Airport Boarding">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport.png">>
<div id="invframe" class="scrolltext">
<<if $scene.missionSuccess>>
Taken aboard you gawk at the fanciest plane you have ever seen as an attendant directs <<=setup.getNpcName("npc_manager","formal")>> to a private overstuffed leather seat near the front of first class. Once <<=setup.getNpcName("npc_manager","formal")>> is seated the attendant turns to you and gestures towards the ample legroom between <<=setup.getNpcName("npc_manager","formal")>> and the seat in front of her. "@@.generic_female1;If you would please take your place under the seat in front of your owner...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles as you kneel down and shuffle into position, on your knees, strapped in place and sitting back onto a waiting dildo with your face pressed between <<=ps(setup.getNpcName("npc_manager","formal"))>> thighs.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> fingers brush through your hair as you reflexively extend your tongue through the ring gag and start licking. She purrs in delight. "@@.npc_manager;Good girl...@@" You settle in and wait for lift-off.
<<else>>
At the front of the line <<=setup.getNpcName("npc_manager","formal")>> hands your leash to a flight attendant and then pauses, looking at the trophy she is carrying in her other hand.<br>
<br>
"@@.npc_manager;One moment, I forgot to put this in my luggage and I do not feel like carrying it on my lap the whole flight...@@"<br>
<br>
You gasp as she shoves the entire trophy into your ass in a single, smooth motion, wiggling it to make sure it is securely nestled between your cheeks before giving you a light spank to send you on your way.<br>
<br>
"@@.npc_manager;There we go — now you, too, can enjoy the burdenous weight of my victory!@@"<br>
<br>
The large line of passengers waiting to board laugh and your predicament as you waddle after the flight attendant on your way under the plane. Unlike the private cage you traveled in on the flight in you find yourself stuffed into the same cage, but with a second slave pressed on top of you, <<if $options.fem>>her<<else>>their<</if>> surprisingly uncaged <<getWordPenis>> threaded through your gag as <<if $options.fem>>her<<else>>their<</if>> face is pressed <<if setup.checkItemTypeWorn("cage")>>against your chastity <<if setup.isCage()>>cage<<else>>belt<</if>><<else>>between your legs<</if>> in a half sixty-nine. Strapped together for "safety" you are soon plunged into the darkness of the hold, the chamber filled with the moans of your fellow cargo as you wait to take off.
<</if>>
<br><br>
[<<moveTo "event_corporate_retreat_travel_home_3" 'Fly.' 7200>>]
</div>/*#
#desc: corporate retreat airport - flight
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.missionSuccess>>
<<applyExperience 'bondage' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'anal' 10 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bondage' 18 'terrible' $INCOGNITO>>
<<applyExperience 'oral' 10 'terrible' $INCOGNITO>>
<<applyExperience 'anal' 16 'terrible' $INCOGNITO>>
<</if>>
<</if>>
<<if $scene.missionSuccess>>
<<set $player.location to "Airplane">>
<<else>>
<<set $player.location to "Baggage">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.missionSuccess>>
<<createAdvBGR "./images/locations/airplane.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/airtransport.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.missionSuccess>>
Your face between her knees you can barely look up and see <<=setup.getNpcName("npc_manager","formal")>> as she leans back in her chair and turns on a movie.<br>
<br>
Her fingers idly play with your hair as the plane lifts off, a bout of turbulence on the way up causing the dildo you are mounted on to rattle about quite a bit.<br>
<br>
Eventually you settle in to cruising altitude and you relax, continuing to softly lick and kiss <<=setup.getNpcName("npc_manager","formal")>> as you waver on the edge of sleep.
<<else>>
You hear a bang of the hold closing up and then the plane smoothly taxiing away from the terminal. A spot of turbulence as you rise to cruising altitude has the <<getWordPenis>> stuffed down your throat shifting and twitching its way to hardness, the erection not fading until you lick and suck it the rest of the way to completion, your "reward" a moan of appreciation from your unseen "partner" and a mouthful of hot,
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
delicious,
<<else>>
scrumptious,
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty,
<<else>>
bitterly disgusting,
<</if>>
<</if>>
<<getWordCum>>.<br>
<br>
<<if $options.fem>>She wilts<<else>>They wilt<</if>>, giving your tongue some space and you try to relax and get some rest as things settle down at cruising altitude.
<</if>>
<br><br>
<<if $fetish.piss>>
[<<moveTo "event_corporate_retreat_travel_home_3_piss" 'Continue.' 1600>>]
<<else>>
[<<moveTo "event_corporate_retreat_travel_home_4" 'Continue.' 3200>>]
<</if>>
</div>/*#
#desc: corporate retreat airport - flight piss bonus
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.missionSuccess>>
<<applyExperience 'piss' 12 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'piss' 8 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<if $scene.missionSuccess>>
<<set $player.location to "Airplane">>
<<else>>
<<set $player.location to "Baggage">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.missionSuccess>>
<<createAdvBGR "./images/locations/airplane.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/airtransport.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.missionSuccess>>
You've settled in to a mindless routine of idle licking when you are roused by <<=setup.getNpcName("npc_manager","formal")>> giving you a gentle pat on the head. "@@.npc_manager;Get ready, the champagne wants out and I do not feel like waiting in line for the loo.@@"<br>
<br>
That is all the warning you get before her hand pulls your head tighter, pressing your lips against her own just in time for her to unleash a stream of
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
delicious
<<else>>
tasty
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
oddly alluring
<<else>>
bitter and disgusting
<</if>>
<</if>>
lady lemonade. Lest you make a mess or drown you have no choice but to swallow, gulping and then licking her clean before she relaxes her grip.<br>
<br>
"@@.npc_manager;Ah, much better.@@" She states, patting you on the head and returning to her film.
<<else>>
The <<getWordPenis>> between your lips twitches and a moment later begins spraying
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
delicious
<<else>>
tasty
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
oddly alluring
<<else>>
bitterly disgusting
<</if>>
<</if>>
<<getWordPiss>> directly down your throat.<br>
<br>
Sputtering in surprise you swallow quickly lest you drown, ending up with quite a bellyful before the flow tapers off and you are back to sucking on the soft <<getWordPenis>> once again.
<</if>>
<br><br>
The monotony of the flight resumes and you soon drift back into passive boredom.<br>
<br>
[<<moveTo "event_corporate_retreat_travel_home_4" 'Continue.' 1600>>]
</div>/*#
#desc: corporate retreat airport - ride home
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.flags.collar.owner && ($scene.addCollar || $scene.switchCollar)>>
<<removeItem 'bondage_collar_promo' true>>
<<deleteItem 'bondage_collar_promo'>>
<</if>>
<<removeItem 'leash_transit' true>>
<<deleteItem 'leash_transit'>>
<<removeItem 'transit_gag' true>>
<<deleteItem 'transit_gag'>>
<<removeItem 'transit_cuffs' true>>
<<deleteItem 'transit_cuffs'>>
<<useClothSetPop 'tmp'>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 6, 0)>>
<<addEvent 'corporate_move_event' _nextDate>>
<<if $events.hasOwnProperty('event_admin_morning_workout_call')>>
<<removeEvent 'event_admin_morning_workout_call'>>
<</if>>
<<if $events.hasOwnProperty('event_admin_morning_visit')>>
<<removeEvent 'event_admin_morning_visit'>>
<</if>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.missionSuccess>>
The plane touches down and <<=setup.getNpcName("npc_manager","formal")>> pats your head. "@@.npc_manager;Time to get up.@@" She says softly, moving one leg out of the way as a stewardess appears to help unstrap you and guide you back to your feet.<br>
<br>
Sliding off the dildo has you feeling empty but you don't have long to think about it before <<=setup.getNpcName("npc_manager","formal")>> takes you by the leash. She retrieves her suitcase from baggage claim
<<else>>
The plane touches down, startling you awake. The <<getWordPenis>> swells slightly but it does not cum in the time it takes to taxi to the gate and get unloaded.<br>
<br>
You try to stretch the stiffness out of your limbs as your leash is re-attached and an attendant leads you and other slaves two at a time to baggage claim.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> greets you with a smile, reaching behind to check that the trophy is still in place
<</if>>
before boarding a waiting limousine. Opening up her luggage she hands you back your "normal" clothes to get changed just in time to be dropped off at your apartment.<br>
<br>
"@@.npc_manager;See you in the morning.@@" She says with a smile. "@@.npc_manager;We should know by then when in the week the move is going to happen.@@"<br>
<br>
You wish her a good night and head in to your apartment.<br>
<br>
[<<moveTo "room_foyer" 'Home at last.' 1600>>]
</div>/*#
#desc: npc_boss announces corporate retreat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.date = setup.getNextDayOfWeek($now, 6, 0, 0, false)>>
<<set $scene.date = setup.setNextDate($scene.date, 7, 9, 0)>>
<<addTaskById "task_corporate_retreat" $scene.date>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You have just entered the party when there is a commotion at the far end, everyone seems to be turning their attention towards a stage and you hurry to keep up with your <<=setup.getNpcName('npc_manager', 'title')>> to get a better vantage point. You note that other employees move aside when they notice <<=ps(setup.getNpcName('npc_manager', 'formal'))>> approach.<br>
<br>
You see <<=setup.getNpcName('npc_boss', 'formal')>> take the centre of a stage, microphone in hand. "@@.npc_boss;Welcome, everyone!@@" <<He npc_boss>> states in greeting. After waiting for the applause to die down <<he npc_boss>> continues. "@@.npc_boss;I know many of you have been waiting with excitement so it gives me great pleasure to announce this years corporate management retreat has officially been scheduled!@@"<br>
<br>
There is loud cheering from all across the room... though you notice several waitresses and what you would refer to as "fellow subordinates" shifting nervously.<br>
<br>
"@@.npc_boss;I know you all remember what happened last year and we are definitely looking to top it so I am happy to announce that you will not need to wait much longer — the celebration shall commence on <<printDate $scene.date>>! Mark your calendars and make sure you contact travel to confirm your transport details!@@"<br>
<br>
<<printThought "That's next weekend, barely a week away!">><br>
<br>
<<=setup.getNpcName('npc_boss', 'formal')>> waves until the applause dies down. <<He npc_boss>> dismounts the stage and the party soon resumes. Before you can ask <<=setup.getNpcName('npc_manager', 'formal')>> what, exactly a "corporate management retreat" entails <<=setup.getNpcName('npc_boss', 'formal')>> approaches the two of you with a wide grin on <<his npc_boss>> face.<br>
<br>
[<<moveTo "event_party_retreat_announcement_2" "Listen to what <<he npc_boss>> has to say." 300>>]
</div>/*#
#desc: boss taunts manager about corporate retreat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_manager","npc_manager_formal") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_boss', 'formal')>> smiles as <<=setup.getNpcName('npc_manager', 'formal')>> steps slightly closer to you and places an arm <<if $npc_manager.affection < $npc_manager.anger>>almost <</if>>protectively around your shoulder.<br>
<br>
"@@.npc_boss;Looking forward to the retreat?@@" <<He npc_boss>> states with a cruel grin that has you immediately certain that <<=setup.getNpcName('npc_manager', 'formal')>> is definitely not.<br>
<br>
"@@.npc_manager;Of course.@@" She replies, with a diplomatic smile. "@@.npc_manager;We would not miss it for the world.@@"<br>
<br>
"@@.npc_boss;Wonderful, wonderful... and just as a reminder you're in the running for Director of the Year... if you win well I just will have no choice but to finally give you that upstairs office. It is already a bit of a sore point that you insist on remaining down there on fifty-two with the regular workers.@@"<br>
<br>
You're a little worried that <<=setup.getNpcName('npc_manager', 'formal')>> might be leaving dents in your shoulder but her expression remains the same forced-casual tone. "@@.npc_manager;You know I dislike being in some tall tower — I am the director of Human Resources, how can I do my job if I am not interacting with the humans of this company?@@"<br>
<br>
"@@.npc_boss;Delegation!@@" <<He npc_boss>> says with a laugh before moving off to talk to some other party patron.<br>
<br>
"@@.npc_manager;Well,@@" she states once <<=setup.getNpcName('npc_boss', 'formal')>> is out of earshot, her grip on your shoulder relaxing somewhat as you finally remember to breathe. "@@.npc_manager;This is an unfortunate, if inevitable, development. You may go off and enjoy the party, tomorrow we shall commence preparations for the retreat...@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> disappears into the crowd.<br>
<br>
[<<moveTo "event_party_root" "Look around." 120>>]
</div>/*#
#desc: manager explains retreat transport
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.date = setup.setNextDate(setup.getTaskDueDate('task_corporate_retreat'), -1, 14, 0)>>
<<addTaskById "corporate_retreat_transit" $scene.date>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You enter the office and <<=setup.getNpcName('npc_manager', 'formal')>> greets you with a partial smile.<br>
<br>
<<if ($player.flags.uniform_upgrade.aslutStage >= 4 || setup.checkTaskUntimedComplete('aslut_1_final')) && ($player.sec_style.clothing.tattoo || !$fetish.tattoos) && $player.sec_style.clothing.nails != "" && ($npc_boss.flags.firstBlowjob > 0 || $npc_boss.flags.managerBlowjob) && $player.sec_style.clothing.maid != "">>
"@@.npc_manager;So, the corporate retreat is finally upon us, fortunately you have been diligent in your advancement and so should be well equipped for things.@@"
<<else>>
"@@.npc_manager;So, the corporate retreat is finally upon us... I had hoped you might be a bit further along by this point but... time and tide waits for no man... or <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"
<</if>>
<br><br>
You wait for her to explain further, you recall <<=setup.getNpcName('npc_boss', 'formal')>> mentioning transportation scheduling.<br>
<br>
"@@.npc_manager;The company uses the same site every year. Thus the slightly last-minute schedule, the weather control devices needed servicing and we could not book until everything was certain that an inadvertent hurricane would not be rolling through. All that is taken care of now, so it is just a matter of us flying down. At supersonic speeds it is a simple journey, but we want to be refreshed for the festivities. We will leave after work next Friday, fly, spend the night on-site, and then enjoy the events starting from Saturday morning. I advise you to cancel anything you had scheduled — whatever else is happening in your life can certainly move, this event cannot.@@"<br>
<br>
You thank her for the information and ask if you should pack for the trip?<br>
<br>
<<if $now.getUTCDay() == 5>>
She shakes her head. "@@.npc_manager;No, I will take care of everything — it will make the transit arrangements easier than if we had to manage two checked bags. Now, you have a weekend I am sure you are looking forward to — though not as much as next weekend, I imagine, so I shall let you go.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Continue." 120>>]
<<else>>
She shakes her head. "@@.npc_manager;No, I will take care of everything — it will make the transit arrangements easier than if we had to manage two checked bags. Now that that is all sorted, shall I give you today's performance review?@@"<br>
<br>
[<<moveTo "event_manager_performance_review_1" "Continue." 120>>]
<</if>>
</div>/*#
#desc: picked up for corprate retreat
#status: FINISHED 0.8.0.0
#*/
<<set $player.cutscene.lockinventory = false>>
<<set $player.inside = true>>
<<set $player.cutscene.reason = "">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You are surprised by your phone ringing, even moreso by the text message you receive. "@@.npc_manager;I know you failed to work today, but the retreat is this weekend, come meet me in the limo. Now.@@"<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_corporate_retreat_transit_1_alt_a" 'Join her for the ride to the airport.' 900 "<<set $player.cutscene.lockinventory = true>><<set $currentcall = false>>">>]
<<else>>
<<printThought "I at least need to be dressed to go outside!">> <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: alt ride for corporate retreat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.stow = setup.getItemsInInventoryByFilter('tag', ['bulky']) || setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<if $scene.stow.length>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<itemsToWardrobe _items>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bulky'])>>
<<itemsToWardrobe _items>>
<</if>>
<</if>>
<<readyToLeaveHome>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.stow.length>>You quickly toss a few things in your wardrobe, wondering why you were even still carrying them around. <</if>>You hurry out and find <<=setup.getNpcName("npc_manager","formal")>> waiting for you in a limousine. Barely have you entered the vehicle when it speeds off, tossing you back into your seat as <<=setup.getNpcName("npc_manager","formal")>> snorts in annoyance.<br>
<br>
"@@.npc_manager;This would have been much simpler had we both left from the office... still, we should be able to make our flight without issue.@@"<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 216000)>>
[<<moveTo "event_corporate_retreat_transit_1_a" 'Continue.' 300 "<<set $scene.stow.length=[]>><<set $scene.cancel=true>>">>]
<<else>>
As you ride <<=setup.getNpcName('npc_manager', 'formal')>> reminds you to take a moment to cancel any other events you might have scheduled "@@.npc_manager;Where we are going... most wireless signals are blocked, the disconnect is part of the charm... or so I am told.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_transit_1_a" 'Cancel everything.' 300 "<<set $scene.stow=[]>><<set $scene.cancel=true>>">>]
<</if>>
</div>/*#
#desc: end of day, prepare to leave for retreat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not the time for that...">>
<<completeTask 'task_corporate_retreat' $now true>>
<<completeTask 'corporate_retreat_transit' $now true>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You enter the office for your end of day assessment. <<=setup.getNpcName('npc_manager', 'formal')>> smiles in greeting as she closes up a suitcase and smiles at you.<br>
<br>
"@@.npc_manager;And another week finished. Time to head for the airport — we would not want to miss our flight.@@"<br>
<br>
You glance at the suitcase, recalling that <<=setup.getNpcName('npc_manager', 'formal')>> told you not to worry about packing anything. "@@.npc_manager;Oh, do not worry — I took the liberty of packing for the both of us. Now come along, traffic is always worse than you think it will be the afternoon going into a weekend.@@"<br>
<br>
The two of you ride the elevator down to a waiting limousine to take you to the airport.<br>
<br>
<<if setup.hasFreeTime($now, $player, $currentTasks, 216000)>>
[<<moveTo "event_corporate_retreat_transit_1_a" 'Continue.' 300 "<<set $scene.cancel=true>>">>]
<<else>>
As you ride <<=setup.getNpcName('npc_manager', 'formal')>> reminds you to take a moment to cancel any other events you might have scheduled "@@.npc_manager;Where we are going... most wireless signals are blocked, the disconnect is part of the charm... or so I am told.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_transit_1_a" 'Cancel everything.' 300 "<<set $scene.cancel=true>>">>]
<</if>>
</div>/*#
#desc: end of day, prepare to leave for retreat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.cancel>>
<<set _clearToDay = 1>>
<<include "clearWeekendSchedule">>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.cancel>>
<<set $player.location to "Phonecall">>
<<createAdvBGR "./images/locations/phonecall.png">>
<<else>>
<<set $player.location to "Limousine">>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.cancel>>
<<if $scene.cancelGame && $npc_technician.flags.rpg_campaign.session > 7 && $player.virgin.blowjob>>
Your calls go smoothly as you either cancel or push things back a week. The only hiccup coming when you call <<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_technician;Well work is work, but rules are rules. The reason we have such consistent attendance at game is that there are no excuses for missing. Enjoy your retreat, but know that next weekend you'll be in for penance<<if $npc_technician.flags.rpg_campaign.no_showed>>... again<</if>>.@@"<br>
<br>
<<else>>
Making calls to cancel or postpone things goes smoothly.
<</if>>
Just as you finish up you arrive at the airport. The vehicle quietly passes through a security checkpoint and drops you off in front of a small side gate.
<<else>>
The drive to the airport happens uneventfully, the vehicle quietly passing through a security checkpoint and dropping
<</if>>
<br><br>
[<<moveTo "event_corporate_retreat_transit_2" 'Get <<=ps(setup.getNpcName("npc_manager", "formal"))>> luggage.' 120 "<<set $scene.luggage=true>>">>]<br>
[<<moveTo "event_corporate_retreat_transit_2" 'Head for the gate.' 120 "<<set $scene.luggage=false>>">>]
</div><<if $currentTasks.hasOwnProperty('psychiatrist_endless_apointment_1') && !$currentTasks.psychiatrist_endless_apointment_1.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_endless_apointment_1')) == 0>>
<<set $scene.cancelEvent = true>>
<<postponeTask 'psychiatrist_endless_apointment_1' 7>>
<</if>>
<<if $currentTasks.hasOwnProperty('psychiatrist_boiless_review') && !$currentTasks.psychiatrist_boiless_review.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_boiless_review')) == 0>>
<<postponeTask 'psychiatrist_boiless_review' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('psychiatrist_couples_technician') && !$currentTasks.psychiatrist_couples_technician.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_couples_technician')) == 0>>
<<postponeTask 'psychiatrist_couples_technician' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('psychiatrist_couples_admin') && !$currentTasks.psychiatrist_couples_admin.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_couples_admin')) == 0>>
<<postponeTask 'psychiatrist_couples_admin' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('psychiatrist_couples_landlord') && !$currentTasks.psychiatrist_couples_landlord.finished && setup.daysToDate($now,setup.getTaskDueDate('psychiatrist_couples_landlord')) == 0>>
<<postponeTask 'psychiatrist_couples_landlord' 7>>
<<set $scene.cancelEvent = true>>
<</if>><<set $scene.cancelEvent = false>>
<<set _daysToClear = setup.daysToDate($now, setup.getNextDayOfWeek($now, _clearToDay, 5, 0))+1>>
<<if $currentTasks.hasOwnProperty('psychiatrist_endless_hypnosis_1') && !$currentTasks.psychiatrist_endless_hypnosis_1.finished>>
<<if $now.getDay() > 3>>
<<postponeTask 'psychiatrist_endless_hypnosis_1' 3>>
<<else>>
<<postponeTask 'psychiatrist_endless_hypnosis_1' 4>>
<</if>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('bed_heels_photoshoot') && !$currentTasks.bed_heels_photoshoot.finished && setup.daysToDate($now,setup.getTaskDueDate('bed_heels_photoshoot')) < _daysToClear>>
<<postponeTask 'bed_heels_photoshoot' 7>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_chastity_trial') && !$currentTasks.task_chastity_trial.finished && setup.daysToDate($now,setup.getTaskDueDate('task_chastity_trial')) < _daysToClear>>
<<postponeTask 'task_chastity_trial' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_bodyshop_appointment') && !$currentTasks.task_bodyshop_appointment.finished && setup.daysToDate($now,setup.getTaskDueDate('task_bodyshop_appointment')) < _daysToClear>>
<<postponeTask 'task_bodyshop_appointment' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_bodyshop_appointment_forced') && !$currentTasks.task_bodyshop_appointment_forced.finished && setup.daysToDate($now,setup.getTaskDueDate('task_bodyshop_appointment_forced')) < _daysToClear>>
<<postponeTask 'task_bodyshop_appointment_forced' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_bodyshop_appointment_2_force') && !$currentTasks.task_bodyshop_appointment_2_force.finished && setup.daysToDate($now,setup.getTaskDueDate('task_bodyshop_appointment_2_force')) < _daysToClear>>
<<postponeTask 'task_bodyshop_appointment_2_force' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<include "postPonePsychiatrist">>
<<if $currentTasks.hasOwnProperty('task_first_gym_alt') && !$currentTasks.task_first_gym_alt.finished && setup.daysToDate($now,setup.getTaskDueDate('task_first_gym_alt')) < _daysToClear>>
<<postponeTask 'task_first_gym_alt' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('barista_rescue_final') && !$currentTasks.barista_rescue_final.finished && setup.daysToDate($now,setup.getTaskDueDate('barista_rescue_final')) < _daysToClear>>
<<postponeTask 'barista_rescue_final' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_landlord_weekend') && !$currentTasks.task_landlord_weekend.finished && setup.daysToDate($now,setup.getTaskDueDate('task_landlord_weekend')) < _daysToClear>>
<<postponeTask 'task_landlord_weekend' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<set $scene.cancelGame = false>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks.technician_roleplay_surgery.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_surgery')) < _daysToClear>>
<<set $scene.cancelGame = true>>
<<postponeTask 'technician_roleplay_surgery' 7>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('rpg_session_gangbang') && !$currentTasks.rpg_session_gangbang.finished && setup.daysToDate($now,setup.getTaskDueDate('rpg_session_gangbang')) < _daysToClear>>
<<postponeTask 'rpg_session_gangbang' 7>>
<<set $scene.cancelGame = true>>
<<set $scene.cancelEvent = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks.technician_roleplay_1.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_1')) < _daysToClear>>
<<set $scene.cancelGame = true>>
<<set $scene.cancelEvent = true>>
<<if $npc_technician.flags.rpg_campaign.session > 7 && $player.virgin.blowjob>>
<<set _compDate = setup.getTaskDueDate('technician_roleplay_1')>>
<<completeTask 'technician_roleplay_1' _compDate false>>
<<include "addRPGMissedSessionTask">>
<<else>>
<<postponeTask 'technician_roleplay_1' 7>>
<</if>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks.technician_roleplay_punish_1.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_punish_1')) < _daysToClear>>
<<set $scene.cancelGame = true>>
<<set $scene.cancelEvent = true>>
<<postponeTask 'technician_roleplay_punish_1' 7>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_collar_her_ceremony") && !$currentTasks.technician_collar_her_ceremony.finished>>
<<postponeTask 'technician_collar_her_ceremony' 7>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_collar_ceremony") && !$currentTasks.technician_collar_ceremony.finished>>
<<postponeTask 'technician_collar_ceremony' 7>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_nintendolls_destroy") && !$currentTasks.task_nintendolls_destroy.finished>>
<<postponeTask 'task_nintendolls_destroy' 7>>
<</if>>
<<if $events.hasOwnProperty("stage_5_evil_rpg_restart")>>
<<set $events.stage_5_evil_rpg_restart.date = setup.getNextDayOfWeek($events.stage_5_evil_rpg_restart.trigger.date, 6, 19, 10, false)>>
<</if>>
<<if $events.hasOwnProperty("gym_alt_unlock")>>
<<set $events.gym_alt_unlock.date = setup.getNextDayOfWeek($events.gym_alt_unlock.trigger.date, 2, 6, 0, false)>>
<</if>>
<<if $events.hasOwnProperty('technician_chastity_fourth')>>
<<set $events.technician_chastity_fourth.date = setup.getNextDayOfWeek($events.technician_chastity_fourth.trigger.date, 4, 18, 0, false)>>
<</if>>
<<if $events.hasOwnProperty('monthly_rent_populator') && setup.daysToDate($now,$events.monthly_rent_populator.trigger.date) < _daysToClear>>
<<set _nextDate = setup.getNextDayOfWeek($events.monthly_rent_populator.trigger.date, 0, 22, 0, false)>>
<<set $events.monthly_rent_populator.trigger.date = _nextDate>>
<</if>>
<<if $events.hasOwnProperty("technician_cafe_brunch")>>
<<set _nextDate = setup.getNextDayOfWeek($events.technician_cafe_brunch.trigger.date, 6, 9, 0, false)>>
<<set $events.technician_cafe_brunch.trigger.date = _nextDate>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_evil_first') && !$currentTasks.technician_roleplay_evil_first.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_evil_first')) < _daysToClear>>
<<set _nextDate = setup.getNextDayOfWeek(setup.getTaskDueDate('technician_roleplay_evil_first'), 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_evil_first' _nextDate>>
<<addWorkEvent 'technician_evil_punish'>>
<<elseif $currentTasks.hasOwnProperty('technician_roleplay_evil_second') && !$currentTasks.technician_roleplay_evil_second.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_evil_second')) < _daysToClear>>
<<set _nextDate = setup.getNextDayOfWeek(setup.getTaskDueDate('technician_roleplay_evil_second'), 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_evil_second' _nextDate>>
<<addWorkEvent 'technician_evil_punish'>>
<<elseif $currentTasks.hasOwnProperty('technician_roleplay_evil_repeat') && !$currentTasks.technician_roleplay_evil_repeat.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_evil_repeat')) < _daysToClear>>
<<set _nextDate = setup.getNextDayOfWeek(setup.getTaskDueDate('technician_roleplay_evil_repeat'), 6, 19, 0, false)>>
<<addTaskById 'technician_roleplay_evil_repeat' _nextDate>>
<<addWorkEvent 'technician_evil_punish'>>
<</if>>
<<set _timeToClearTo = setup.getNextDayOfWeek($now, _clearToDay, 5, 0)>>
<<set _endOfWeekend = setup.secondsToDate($now, _timeToClearTo)>>
<<if $events.hasOwnProperty('cook_checkin') && setup.daysToDate($now,$events.cook_checkin.trigger.date) < _clearToDay>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 22, 30, false)>>
<<set $events.cook_checkin.trigger.date = _nextDate>>
<</if>>
<<if $currentTasks.hasOwnProperty('cds_drinking_tech') && !$currentTasks.cds_drinking_tech.finished && setup.daysToDate($now,setup.getTaskDueDate('cds_drinking_tech')) < _daysToClear>>
<<set $scene.cancelEvent = true>>
<<postponeTask 'cds_drinking_tech' 7>>
<</if>>
<<if $currentTasks.hasOwnProperty('cds_drinking_admin') && !$currentTasks.cds_drinking_admin.finished && setup.daysToDate($now,setup.getTaskDueDate('cds_drinking_admin')) < _daysToClear>>
<<set $scene.cancelEvent = true>>
<<postponeTask 'cds_drinking_admin' 7>>
<</if>>
<<if $events.hasOwnProperty("event_ai_rescue_post") && setup.daysToDate($now,$events.event_ai_rescue_post.trigger.date) < _clearToDay>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 18, 45, false)>>
<<set $events.event_ai_rescue_post.trigger.date = _nextDate>>
<</if>>
<<if $events.hasOwnProperty("destroy_retention_landlord_call") && setup.daysToDate($now,$events.destroy_retention_landlord_call.trigger.date) < _clearToDay>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 23, 0, false)>>
<<set $events.destroy_retention_landlord_call.trigger.date = _nextDate>>
<</if>>
<<if $events.hasOwnProperty("technician_chastity_fourth") && setup.daysToDate($now,$events.technician_chastity_fourth.trigger.date) < _clearToDay>>
<<set _nextDate = setup.getNextDayOfWeek($now, 4, 18, 0, false)>>
<<set $events.technician_chastity_fourth.trigger.date = _nextDate>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_drone_mission') && !$currentTasks.task_drone_mission.finished && setup.daysToDate($now,setup.getTaskDueDate('task_drone_mission')) < _daysToClear>>
<<set $scene.cancelEvent = true>>
<<postponeTask 'task_drone_mission' 7>>
<</if>>
<<cancelAllTasks _endOfWeekend>>/*#
#desc: check in at gate departure to corp retreat
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.luggage>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<useClothSetPush 'tmp'>>
<<set $scene.addCollar = !setup.checkItemTypeWorn("choker")>>
<<set $scene.switchCollar = !$scene.addCollar && (!setup.getItemObjFromType("choker").hasOwnProperty('lockable') || !setup.checkItemTypeTag('choker', ['leash_attachment']))>>
<<if $scene.addCollar || $scene.switchCollar>>
<<addItem 'bondage_collar_promo'>>
<<wearItem 'bondage_collar_promo' true>>
<</if>>
<<addItem 'leash_transit'>>
<<wearItem 'leash_transit' true>>
<</if>>
<<set $player.location to "Airport Check-in">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport_checkin.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.luggage>>
You step out of the vehicle and grab <<=ps(setup.getNpcName('npc_manager', 'formal'))>> suitcase.
<<else>>
You step out of the vehicle only for <<=setup.getNpcName('npc_manager', 'formal')>> to draw your attention by clearing her throat. She glances down at the suitcase beside her and you hurry back to pick it up.
<</if>>
It is heavier than you would have expected
<<if setup.getTotalValue("strength") > 10>>
but you have no trouble lifting it.
<<else>>
<<if setup.getTotalValue("strength") > 5>>
but you manage to handle it.
<<else>>
and you struggle with it slightly.
<</if>>
<</if>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and takes you by the hand, heading inside and straight for a check-in counter. You struggle not to gawk, from the floor to ceiling everything looks incredibly modern and stylish, far nicer than any airport you have been in previously.<br>
<br>
<<printThought "Hmm, this must be a private gate or something for the ultra-rich? People like <<=setup.getNpcName('npc_manager', 'formal')>> really do live in a different world... especially after the war...">><br>
<br>
You're still gawking at the fancy gate, barely paying attention to the check-in process until you overhear <<=ps(setup.getNpcName('npc_manager', 'formal'))>> response to the question of what she will be checking today.<br>
<br>
"@@.npc_manager;One item of luggage and one slave.@@"<br>
<br>
You turn quickly around to look at the clerk but they do not so much as blink, merely replying "@@.generic_female1;Very good, Ma'am.@@" They look up from their terminal to your throat.<br>
<br>
<<if $scene.addCollar>>
"@@.generic_female1;A regulation collar is, of course, required for transit,@@" The clerk explains as she places a leather collar on counter. "@@.generic_female1;If you would please suitably restrain your property, you and your slave may proceed though to security.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles as she buckles and locks the collar around your throat.<br>
<br>
The clerk nods. "@@.generic_female1;If you would please also attach these you may proceed through to security.@@"
<<elseif $scene.switchCollar>>
"@@.generic_female1;Note that your slave must be properly collared before you proceed through to security. What they are wearing now, is, alas, insufficient for safe and secure transport. Do you need to retrieve anything from your luggage or will you be needing an appropriate collar to be provided?@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles as she opens her suitcase and pulls out a simple leather collar that she locks around your throat. "@@.npc_manager;So sorry about that, this will be sufficient, I trust?@@"<br>
<br>
The clerk nods. "@@.generic_female1;If you would please attach these you may proceed through to security.@@"
<<else>>
"@@.generic_female1;I see that your slave is suitably collared for transit. Thank you for thinking ahead and ensuring that your journey is as smooth as possible. If you would please attach these you may proceed through to security.@@"
<</if>>
The clerk places a tag and a retractable leash on the counter, "@@.generic_female1;And thank you again for flying Air Monseigneur, the Dominant Choice for Luxury.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> attaches the leash and the luggage tag to the front of your collar, taking the leash in hand as she walks away from the counter. "@@.npc_manager;Come along, my dear.@@"<br>
<br>
Still stunned by what has just transpired you stumble after her, a guard opening a large, tinted door for the two of you as you stride through and find yourself in security.<br>
<br>
[<<moveTo "event_corporate_retreat_transit_3" 'Continue.' 300>>]
</div>/*#
#desc: airport security departure to corp retreat
#status: FINISHED 0.8.0.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Airport Security">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Stepping through the doorway and looking upon security you freeze. You were half thinking that the whole business with baggage check-in was a joke on the part of your <<=setup.getNpcName('npc_manager', 'title')>> but this...<br>
<br>
There are just over a dozen people working their way through security. Over half of them are on the well-dressed side of normal but the remainder... blindfolded, gagged, one girl is even sitting inside a full cage! There is no mistaking the "slaves" following along with their owners, leashes in hand.<br>
<br>
Speaking of leashes yours pulls taut and <<=setup.getNpcName('npc_manager', 'formal')>> glances back at you until you hurry to catch up, looking around in surprise as you try to process just what is going on around you.<br>
<br>
"@@.npc_manager;Travel nerves?@@" she asks, petting you gently. "@@.npc_manager;Do not worry. In fact, you should feel proud that I trusted you to accompany me without any additional... safety measures.@@"<br>
<br>
You gulp, glancing past a fellow slave who is dressed in nothing but a steel chastity belt and bra with matching hobble cuffs at waist and ankle, lovely lips spread wide by a gag as you wonder what warrants her being so heavily restrained.<br>
<br>
The line moves swiftly compared to the normal travel crowds and you are soon at the x-ray machine. <<=setup.getNpcName('npc_manager', 'formal')>> hands off your leash to a guard who bows slightly in gratitude then walks through the machine.<br>
<br>
You catch a glimpse of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> full body x-ray, noting that her skeleton appears somewhat darker than the traveller before, also standing out is a pair of orbs that appear nestled between her hips.<br>
<br>
<<printThought "Wait... are those... kegels?">><br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> is waved through and then it is your turn, the guard using your leash to lead you into position and then through and to the side as they address <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.generic_male1;Nothing to be concerned about, but would you please instruct your slave to strip?@@"<br>
<br>
"@@.npc_manager;Of course,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a gracious smile. "@@.npc_manager;Go on, then, <<=$player.first_name>> — you heard the <<man>>.@@"<br>
<br>
You glance around — they have not even given you so much as a partition for privacy, though, given the appearance of your fellow slaves...<br>
<br>
[<<moveTo "event_corporate_retreat_transit_4" 'Strip as ordered.' 300 "<<set $scene.strip=true>>">>]<br>
[<<moveTo "event_corporate_retreat_transit_4" 'What is this? Refuse!' 300 "<<set $scene.strip=false>>">>]
</div>/*#
#desc: airport security additional inspection
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.strip>>
<<applyExperience 'submission' 12 'normal' $EXPOSED>>
<<else>>
<<applyExperience 'bdsm' 13 'normal' $EXPOSED>>
<</if>>
<<applyExperience 'humiliation' 12 'normal' $EXPOSED>>
<<applyExperience 'anal' 13 'little' $EXPOSED>> <<removeAllClothing>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<addItem 'transit_gag'>>
<<wearItem 'transit_gag' true>>
<<addItem 'transit_cuffs'>>
<<wearItem 'transit_cuffs' true>>
<</if>>
<<set $player.location to "Airport Security">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.strip>>
You remove your clothes as instructed, blushing slightly despite how unconcerned everyone seems about the situation.
<<else>>
You start to object at your treatment but the words are frozen in your throat as the guard squeeze the other end of the leash and you are met with a harsh shock.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns. "@@.npc_manager;I am very sorry about this, she is normally much better behaved, but this is her first time traveling with me...@@"<br>
<br>
"@@.generic_male1;Not a problem,@@" the guard replies casually as they summon one of their fellow security personal and commence to stripping you of your clothes.
<</if>>
As soon as you are naked you are treated to a "pat down" that is much closer to groping, followed by being bent over a cold metal table as
<<if $scene.plug != "">>
<<if setup.checkItemTag($scene.plug, ['hollow'])>>
a speculum is threaded through your plug and you are spread even wider.
<<else>>
your plug is removed to be replaced by a speculum.
<</if>>
<<else>>
a speculum is pressed into your ass.
<</if>>
You gasp as you are spread wide but the violation lasts for only a few seconds before the device is withdrawn.<br>
<br>
"@@.generic_male1;All clear,@@" the guard states as <<he>> paradoxically snaps a pair of handcuffs on your wrists before you can even get dressed. Your mouth reflexively opens but a gag is jammed into it and cinched tight before any sound can escape, a large pecker filling your mouth attached to a wide panel covering the lower part of your face.<br>
<br>
You look over at <<=setup.getNpcName('npc_manager', 'formal')>> in surprise only for your ankles to be cuffed together as well before the security guard passes the leash back to your <<=setup.getNpcName('npc_manager', 'title')>>.<br>
<br>
"@@.npc_manager;Oh, just relax,@@" she chides, pointing around at other slaves. "@@.npc_manager;Restrained limbs and a gag is standard for any slave past security, keeps everything simpler and safer — you will get your clothes back after we reach our destination, now come along, we need to get you boarded.@@"<<if !setup.checkItemTypeTag('plug', ['hollow'])>> She grins, "@@.npc_manager;And do not worry about your cute lower hole — it will be properly occupied quite shortly.@@"<</if>><br>
<br>
You gulp nervously and follow after her. Your ankle chains are fortunately just long enough for you hurry along in confusion, though they remind you of their presence with every abbreviated step<<if setup.getTotalValue("heels") > 10>> as you reflexively walk on your toes as if you were still wearing a pair of heels<<else>>, walking without heels feeling somewhat strange<</if>>.<br>
<br>
[<<moveTo "event_corporate_retreat_transit_5" 'Continue.' 600>>]
</div>/*#
#desc: airport security boarding
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.analSkill = setup.getTotalValue("anal") - 2>>
<<applyExperience 'anal' $scene.analSkill 'normal' $EXPOSED>>
<<applyExperience 'bondage' 15 'normal' $EXPOSED>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<</if>>
<<set $player.location to "Inner Terminal">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport.png">>
<div id="invframe" class="scrolltext">
As fancy as the bizarre terminal may be, it is small compared to the massive airport that serves the city proper and it does not take long for you and <<=setup.getNpcName('npc_manager', 'formal')>> to arrive at your gate. An ostentatious lounge is populated by what looks like other "dominants" — at least you see no signs of other naked and restrained submissives and you soon learn why as <<=setup.getNpcName('npc_manager', 'formal')>> hands your leash off to a gate agent. "@@.npc_manager;Now be a good girl,@@" she instructs. "@@.npc_manager;The flight is only a few hours so try and get some rest — we have a busy weekend ahead of us.@@"<br>
<br>
You shiver slightly, and not because of your naked state, but at the memory of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> tense concern when <<=setup.getNpcName('npc_boss', 'formal')>> had first informed her of the upcoming "retreat." <br>
<br>
The gate agent takes you by the leash and leads you down a ramp. You glance back one final time at <<=setup.getNpcName('npc_manager', 'formal')>> — this trip has barely even started and already things have taken a quite unexpected turn. You wonder what else is in store...<br>
<br>
At the bottom of the ramp you find yourself amongst the other slaves. Your leash is clipped to an automated lead system at the end of a short line of similarly restrained and naked submissives, the only communication allowed by your gags being glances of mutual sympathy. Looking past the line there appear to be two "travel arrangements" available to slaves — bound standing up in narrow cylinders that are then stacked and loaded into the plane, or folded up in cages, chest pressed against your thighs.<br>
<br>
The workers are quick and efficient and it is soon your turn, the "baggage handler" checking your collar tag before leading you to the side with the cages where you are folded into position, your wrists and ankle cuffs re-attached to the cage to keep you immobile before a plug attached to some sort of feeder tube is slotted into your gag.<br>
<br>
Noting your nervously flitting eyes the loader smiles at you. "@@.generic_female2;First time traveller? Well don't you worry about a thing, we consider slaves our most precious cargo, besides, it seems your owner has sprung for the entertainment package so you can look forward to a very fun trip!@@"<br>
<br>
A video visor is placed over your face before the cage is closed up. Temporarily blind, you yelp into your gag as a well-lubricated dildo slides <<if $scene.plug != "" && setup.checkItemTag($scene.plug, ['hollow'])>>through your hollow plug<<else>>into your rear<</if>>.<br>
<br>
[<<moveTo "event_corporate_retreat_transit_6" 'Continue.' 10800>>]
</div>/*#
#desc: corporate retreat transit to
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $scene.analSkill 'very' $ALONE>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<set $scene.fetish = setup.getMaxFetish()>>
<<applyExperience $scene.fetish 10 'very' $ALONE>>
<<playerOrgasm>>
<<applyStress -10>>
<</if>>
<<set $player.location to "Caged Freight">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airtransport.png">>
<div id="invframe" class="scrolltext">
You feel your cage lifted up and gently moved before settling in place in what, you presume, is the hold of the plane. Barely able to move, you are soon distracted as a short burst of
<<if $fetish.cum>>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly cum-flavoured
<<else>>
delicious cum-flavoured
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
strangely tasty cum-flavoured
<<else>>
disgustingly bitter and salty
<</if>>
<</if>>
<</if>>
liquid begins to flow through your gag. It must be drugged because shortly after tasting it you begin to feel calm, even as the dildo in your rear begins to buzz and gently thrust. The visor turns on and a video begins to play.<br>
<br>
<<include "maxFetishPorno">>
<br><br>
The porn plays on and you continue to be fucked and occasionally fed <<if $fetish.cum>><<getWordCum>> <</if>>in your private cage, unable to keep track of time and only distantly aware of the feeling of the plane taking off and then, eventually, landing.<br>
<br>
Once you begin to taxi your endlessly looping porn stops and you are stuck in helpless darkness until the plane reaches the gate.<br>
<br>
[<<moveTo "event_corporate_retreat_transit_7" 'Continue.' 1800>>]
</div>/*#
#desc: corporate retreat disembark
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'transit_gag' true>>
<<deleteItem 'transit_gag'>>
<<removeItem 'transit_cuffs' true>>
<<deleteItem 'transit_cuffs'>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<</if>>
<<set $player.location to "Baggage Claim">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport_baggage.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You deduce you must have been placed on some sort of conveyor belt, smoothly sliding along for several minutes before you are pulled to one side. Only when you come to a stop is your visor removed, you blink as you adjust to the light, looking up to find <<=setup.getNpcName("npc_manager","formal")>> smiling down at you as an attendant goes about removing the dildo and gag to free you from the cage.<br>
<br>
"@@.npc_manager;Enjoy your trip?@@" she asks with a smile<<if $player.body_ref.cumProduction > 0 || $player.body_ref.vagina>> before running her finger through the <<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>pool of cum<<elseif $player.body_ref.vagina>>puddle<</if>> that has collected on the bottom of your cage. "@@.npc_manager;It very much appears that you have. I just knew you would love that video.@@"<<else>>.<</if>><br>
<br>
You blush and look around — aside from the other slaves being similarly handed over to their owners you seem to be in a normal baggage claim. You are soon back to your feet, gag and restraints removed to leave you naked save for your collar<<if setup.checkItemTypeWorn("cage")>> and chastity <<if setup.isCage()>>cage<<else>>belt<</if>><</if>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> motions for you to grab her suitcase and then leads you out of the terminal to a waiting limousine. "@@.npc_manager;No sense getting dressed now — we will be at the cabin shortly,@@" she explains as you take a seat next to her and the vehicle glides forward.<br>
<br>
[<<moveTo "event_corporate_retreat_transit_8" 'Enjoy the ride.' 600>>]
</div>/*#
#desc: corporate retreat disembark
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.addCollar || $scene.switchCollar>>
<<removeItem 'bondage_collar_promo' true>>
<<deleteItem 'bondage_collar_promo'>>
<</if>>
<<removeItem 'leash_transit' true>>
<<deleteItem 'leash_transit'>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
The ride passes in nervous silence. Though dark outside you can still make out the small airport passing away as the limo zips you away into the countryside — not the war-torn ruins that make up so much of the world beyond the mega-cities but one of the "regrown" areas that isn't just farmland, which means that this "retreat" is taking place at some resort for the unfathomably wealthy.<br>
<br>
The limo pulls to a stop in front of a cabin and <<=setup.getNpcName('npc_manager', 'formal')>> leads the way out. Fortunately the short walk from the car inside is paved, as you remain barefoot.<br>
<br>
[<<moveTo "event_corporate_retreat_transit_9" 'Look around the cabin.' 300>>]
</div>/*#
#desc: corporate retreat cabin
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_naked")>>
<div id="invframe" class="scrolltext">
You look around the cabin, while it is not particularly large — about the same size overall as your <<=ps(setup.getNpcName("npc_manager","title"))>> vast office, in fact, it is gorgeously decorated, with a large king-sized bed forming the focus of the room, with what looks like a dog bed at its foot.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> gestures for you to place the suitcase in the closet and then smiles as she begins to shrug out of her clothes.<br>
<br>
"@@.npc_manager;Come, I can smell you from here. Let us wash away the grime of the trip.@@"<br>
<br>
You gulp as you look upon her naked form as she leads the way into a large shower.<br>
<br>
[<<moveTo "event_corporate_retreat_transit_10" 'Follow her into the shower.' 300>>]
</div>/*#
#desc: corporate retreat shower
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeTag('plug', ['hollow'])>>
<<wearItem $scene.plug true>>
<</if>>
<<set _cage_id = setup.getItemFromType('cage')>>
<<if _cage_id!="">>
<<changeItemStatus _cage_id 'cumsoaked' '["remove"]'>>
<<changeItemStatus _cage_id 'dirty' '["remove"]'>>
<<changeItemStatus _cage_id 'piss' '["remove"]'>>
<<changeItemStatus _cage_id 'sweaty' '["remove"]'>>
<</if>>
<<include "cleanPlayer">>
<<washClothes>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
The steamy shower feels quite wonderful as <<=setup.getNpcName("npc_manager","formal")>> has you first gently wash her clean before "supervising" your own scrubbing. By the time you step out — smelling faintly of flowers thanks to the wonderful bodywash, <<if !setup.checkItemTypeTag('plug', ['hollow'])>>and with your <<=setup.getItemName($scene.plug)>> stuffed back where it "belongs," <</if>>you are feeling quite refreshed, even if the memory of your journey is still a bit strange.<br>
<br>
The two of you dry off and <<=setup.getNpcName("npc_manager","formal")>> slides on a robe, handing you a VERY skimpy teddy with a smile.<br>
<br>
"@@.npc_manager;Something special, it is a vacation, after all,@@" she says with a wink. Glancing towards the bed, she smiles.<br>
<br>
"@@.npc_manager;Go on now, get changed for bed. Tomorrow is going to be an eventful day.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_transit_11" 'Get changed and ask to sleep with her in the bed.' 300 "<<set $scene.bed=true>>">>]<br>
[<<moveTo "event_corporate_retreat_transit_11" 'Get changed and opt to sleep at the foot of the bed.' 300 "<<set $scene.bed=false>>">>]
</div>/*#
#desc: corporate retreat choose bed
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'teddie_pink'>>
<<wearItem 'teddie_pink' true>>
<<if $scene.bed && $npc_manager.affection == 10 && $npc_manager.anger == 0>>
<<addItem 'sleepsack'>>
<<wearItem 'sleepsack' true>>
<<else>>
<<addItem 'padded_hogtie'>>
<<wearItem 'padded_hogtie' true>>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<if $scene.bed>>
You change into the sexy nightie and ask if you could sleep with <<=setup.getNpcName("npc_manager","formal")>> in the bed?<br>
<br>
<<if $npc_manager.affection == 10 && $npc_manager.anger == 0>>
"@@.npc_manager;So forward, but you have been VERY good lately, so I will allow it... with appropriate precautions, of course.@@" She walks over to her suitcase and unfurls a sleep-sack. Laying it out on the bed she has you slide in, zipping it closed and helping guide your arms into the inner sleeves. Soon completely helpless once she has zipped it closed your situation is made even more inescapable by her tightening half a dozen straps around you.<br>
<br>
Lying down next to you she rises up onto an elbow to smile down at you. "@@.npc_manager;There we go, all safe and adorably secure. Goodnight.@@" The lights dim and she cuddles up next to you, planting a quick peck on your cheek before almost instantly falling asleep with you held tightly in her grasp.<br>
<br>
[<<moveTo "event_corporate_retreat_transit_12" 'Sleep.' 3600 "<<set $scene.bed=true>>">>]
<<else>>
<<if $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;No... I do not think you have been quite good enough for that privilege. At my feet is far more appropriate.@@"<br>
<br>
She walks over to the suitcase and pulls out a pair of padded cuffs before gesturing towards the doggie bed. You kneel down in the thickly padded bed and she cuffs your wrists and ankles into a loose hogtie. You are definitely helpless, but it's relatively comfortable."@@.npc_manager;Goodnight, my dear,@@" she whispers softly, stroking you gently before turning off the lights and sliding into bed alone.
<<else>>
She frowns. "@@.npc_manager;Sleeping in bed with your Mistress? No, that would not be at all appropriate.@@" Opening up her suitcase she slaps a pair of padded cuffs onto your wrists and ankles, guiding you down into the dog bed before linking everything together into a moderately tight hogtie. "@@.npc_manager;There we go, much more appropriate.@@"<br>
<br>
Leaving you helpless she turns off the lights and slides into bed alone.
<</if>>
<br><br>
[<<moveTo "event_corporate_retreat_transit_12" 'Sleep.' 3600 "<<set $scene.bed=false>><<addItem 'padded_hogtie'>><<wearItem 'padded_hogtie' true>>">>]
<</if>>
<<else>>
You change into the sexy nightie and kneel down on the doggie bed.<br>
<br>
<<if $npc_manager.affection == 10 && $npc_manager.anger == 0>>
She seems just a touch saddened by your choice, but she quietly retrieves a set of padded cuffs from her bag, securing you in a somewhat loose hogtie before stroking your face and smiling. "@@.npc_manager;There we go, nice and secure, at my feet where you belong.@@" She gives you a kiss and then stands, turning off the light before sliding into bed alone.
<<elseif $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;Very good, you may not be perfect, but you at least know your place in the world.@@"<br>
<br>
She walks over to the suitcase and pulls out a pair of padded cuffs before gesturing towards the doggie bed. You kneel down in the thickly padded bed and she cuffs your wrists and ankles into a loose hogtie. You are definitely helpless, but it's relatively comfortable."@@.npc_manager;Goodnight, my dear,@@" she whispers softly, stroking you gently before turning off the lights and sliding into bed alone.
<<else>>
She smiles. "@@.npc_manager;At last you get something right! You have been quite naughty of late, but perhaps sleeping at my feet will serve as a good lesson? We can only hope.@@" Opening up her suitcase she slaps a pair of padded cuffs onto your wrists and ankles, guiding you down into the dog bed before linking everything together into a moderately tight hogtie. "@@.npc_manager;There we go, nice and secure.@@"<br>
<br>
Leaving you helpless she turns off the lights and slides into bed alone.
<</if>>
<br><br>
[<<moveTo "event_corporate_retreat_transit_12" 'Sleep.' 3600 "<<set $scene.bed=false>>">>]
<</if>>
</div>/*#
#desc: corporate retreat sleep
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bed>>
<<applyExperience 'submission' 15 'terrible' $INCOGNITO>>
<<applyExperience 'bondage' 18 'terrible' $INCOGNITO>>
<<else>>
<<applyExperience 'submission' 12 'terrible' $INCOGNITO>>
<<applyExperience 'bondage' 13 'terrible' $INCOGNITO>>
<</if>>
<</if>>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 5, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 5, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<if $scene.bed>>
Tightly bound in your <<=ps(setup.getNpcName("npc_manager","title"))>> grasp you drift to sleep, feeling submissive and yet also treasured.<br>
<br>
Your dreams are soft and indistinct, the stresses of your work life fading away as you fantasise about living with <<=setup.getNpcName("npc_manager","formal")>>, her employee, her slave... her love.
<<else>>
Though you can struggle against your bondage you cannot free yourself and, after a bit of shuffling around in search of the most comfortable position, you end up drifting to sleep.<br>
<br>
In your dreams you have "graduated" from <<=ps(setup.getNpcName("npc_manager","formal"))>> employee to her pet. Cared for and adored, certainly, but also utterly submissive and controlled, your every waking moment in service to her as she determines everything from your clothing to your activities to whether you are even allowed to speak or touch yourself.
<</if>>
<br><br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 6, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
<<if $fetish.pet_play>>
[<<moveTo "event_corporate_retreat_day1_1" 'Wake up.' _timeToMorning>>]
<<else>>
Note: the next day's events involve pony play, and you have the pet play fetish disabled.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 1, 5, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 2, 5, 0)>>
<</if>>
<<set _timeToSunday = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_corporate_retreat_day2_0" 'Skip the pony play.' _timeToSunday>>]<br>
[<<moveTo "event_corporate_retreat_day1_1" 'Play through (will leave fetish otherwise disabled).' _timeToMorning>>]
<</if>>
</div>/*#
#desc: corporate retreat wake up first day
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearShorttermEffects">>
<<applyFatigue -100>>
<<if $scene.bed>>
<<removeItem 'sleepsack' true>>
<<deleteItem 'sleepsack'>>
<<else>>
<<removeItem 'padded_hogtie' true>>
<<deleteItem 'padded_hogtie'>>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
<<if $scene.bed>>
You wake up still completely restrained and yet you sense something different. Looking to the side you realise that <<=setup.getNpcName("npc_manager","formal")>> is no longer sleeping with her arms around you and you feel a twinge of sadness, only to feel something very different from sadness as you look towards the bathroom door where <<=setup.getNpcName("npc_manager","formal")>> steps forth, already dressed for the day.
<<else>>
"@@.npc_manager;Time to get up, my pet,@@" <<=setup.getNpcName("npc_manager","formal")>> states and you blink yourself awake, struggling for a moment against your hog-tie restraints before remembering where you are before you look up. Already dressed <<=setup.getNpcName("npc_manager","formal")>> grins down at you.
<</if>>
<br><br>
She is dressed to ride — knee high leather boots leading up to skin-tight breeches and a perfectly fitted coat complete with tails. Leather gloves and a crop in hand give her an additional edge and she smiles. "@@.npc_manager;Come, the sun is up and it is time to join the others for the day's festivities.@@"<br>
<br>
She swiftly frees you from your nocturnal bondage before presenting you with your outfit for the day. Well, perhaps "outfit" is a bit of a stretch, as it is little more than a leather harness, leather straps, a steep collar, cuffs and a very secure bridle gag along with a pair of steep hoof boots.<br>
<br>
[<<moveTo "event_corporate_retreat_day1_2" 'Get "dressed."' 600>>]
</div>/*#
#desc: corporate retreat dressed for the day
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<set $player.makeup.messed = 0>>
<<addItem 'posture_collar_black'>>
<<wearItem 'posture_collar_black' true>>
<<addItemSet 'pony_girl'>>
<<wearItemSet 'pony_girl'>>
<<addItem 'nipple_bells'>>
<<wearItem 'nipple_bells' true>>
<<addItem 'armbinder_black'>>
<<wearItem 'armbinder_black' true>>
<</if>>
<<set _lunch = setup.setNextDate($now, 0, 12, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
<<set $player.location to "Fairgrounds">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fairgrounds.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> gives you a few minutes to freshen up, but wastes no time in getting you strapped in to your new outfit, finishing up by seating the bit gag firmly between your teeth. As she caresses your cheek you are surprised to realise that the combination of your steep boots and her more sensible riding footwear actually has you slightly taller than she is... not that it seems to in any way lessen her natural authority over you.<br>
<br>
She finishes things off with a pair of nipple bells and clips a set of reins to your bridle. A gentle tug has your bells chiming. You step forward as you follow her out of the cabin.<br>
<br>
The sun is just over the horizon as she leads you away from the cabin. Though you appear to be among the earlier ones you can see others emerging and heading down a short path to arrive at a large field. What appears to be a small fairground has been set up. Though there are a variety of booths it would appear that the primary purpose of things is to socialise and show off. You are nowhere near the most restrained slave you run across, "submissive" employees dressed in anything from a collar (and nothing else) to full bitchsuits. One poor girl is so completely bound in a sort of vertical hogtie that she only moves about with the aid of the cart to which she is mounted.<br>
<br>
You keep bracing for something more extreme to happen, but the morning rolls on, your eye constantly drawn to the outfits on display as you are occasional corrective tap of a crop. <<=setup.getNpcName("npc_manager","formal")>> makes the rounds extending pleasantries but, perhaps most surprising, you never once hear anyone bring up the topic of work.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_corporate_retreat_day1_3" 'Continue.' _timeToLunch>>]
</div>/*#
#desc: corporate retreat lunch announcement
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set _lunch = setup.setNextDate($now, 0, 12, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
<<set $player.location to "Fairgrounds">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fairgrounds.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
There is a brief break for lunch where you kneel next to your <<=ps(setup.getNpcName("npc_manager","title"))>> chair as she briefly removes your gag to feed you by hand.<br>
<br>
Lunch is wrapping up when <<=setup.getNpcName("npc_boss","formal")>> appears for the first time, <<his npc_boss>> voice drawing the attention of you and the rest of the assembled employees.<br>
<br>
"@@.npc_boss;Welcome. I am glad to see you all made your trip safely and I hope you have enjoyed this morning's wonderful weather.@@"<br>
<br>
There is smattering of cheers of approval but they quiet down again as soon as <<=setup.getNpcName("npc_boss","formal")>> resumes speaking. "@@.npc_boss;Tomorrow will have the ceremony for our employee of the year awards, but today it is time for a more entertaining tradition where you get to enjoy the sight of senior management enduring some friendly competition. This year's competition will be a pony-race — but with a twist. Taking inspiration from the old celebration of Saturnalia, roles will be switched and you will get to enjoy a race between your Divisional Directors spurred on by their lovely assistants!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> fork freezes halfway to her mouth but she makes not a sound as she squeezes her lips and gently places the food back on her plate.<br>
<br>
<<printThought "Wait... I'm going to have to drive <<=setup.getNpcName('npc_manager','formal')>>? Oh no...">><br>
<br>
"@@.npc_boss;Before that, however, we will have an open race — the winning pair get a free week of vacation so come forward and let's have some fun!@@"<br>
<br>
There is a sudden scramble of movement as your fellow employees rush to register for the race. <<=setup.getNpcName("npc_manager","formal")>> calmly rises to her feet and joins a separate crowd walking the other direction towards the track and temporary bleachers.<br>
<br>
"@@.npc_manager;Come along. If we are going to win it would be best to get a look at the course and see how the amateurs fare.@@"<br>
<br>
You gulp and follow after her, even more nervous about the race since it seems that <<=setup.getNpcName("npc_manager","formal")>> expects to win it. Settling on a good vantage point near the top of the bleachers, she sits down as the first heat of "riders" assembles.<br>
<br>
[<<moveTo "event_corporate_retreat_day1_4" 'Watch the races.' 1800>>]
</div>/*#
#desc: corporate retreat watch races
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Fairgrounds">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fairgrounds.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
The first group of riders is lead onto the field and you gulp nervously — each "pair" consists of a small standing chariot and a "pony" — the latter being a <<if $options.fem_all_men>>man<<elseif $options.fem_all_women>>woman<<else>>man or woman<</if>> dressed very similar to yourself — strappy pony attire complete with hooves and bridles. Their arms are restrained behind their backs and hitched at the waist.<br>
<br>
You glance nervously at <<=setup.getNpcName("npc_manager","formal")>> but her expression is unreadable as she stares down at the competitors. The race itself is tense and quite exciting, the different carts jockeying for position, particularly approaching the halfway point where they are required to round a tight turn.<br>
<br>
The leading duo screams back up the second length and you get a better view of the competitors, the lead racers biting down on their bits as they lean into their harnesses, the tight leather keeping them connected to their carts as their hooves pound the earth. Neck and neck almost to the last, what seems to prove the difference is one of the drivers employing their whip at just the right moment, their "steed" leaping forward at what seems the last second to cross the finish line first and claim victory.<br>
<br>
You have a moment of sympathy for the driver, a twee girl who is almost dwarfed by the heavy collar she wears, to say nothing of her being less than half the size of her "steed" (and, presumed manager). Rather than being concerned by the mark of the lash on <<his>> shoulder, however, the <<man>> waits to be un-harnessed and then hoists <<his>> assistant up into the air as the crowd cheers their victory.<br>
<br>
You are surprised to note that <<=setup.getNpcName("npc_manager","formal")>> claps along — slowly, and with measured decorum, but she applauds nonetheless. Noting your glance her lip turns up into a slight smile. "@@.npc_manager;The connection between owner and slave is more complicated than it appears, the bonds formed, well... they can be quite potent and allow the two together to achieve more than either could individually.@@"<br>
<br>
You're even more confused but your attention is drawn back as the next group of racers line up at their marks.<br>
<br>
[<<moveTo "event_corporate_retreat_day1_5" 'Keep watching the races in hopes of learning additional strategy.' 3600 "<<set $scene.strat=true>>">>]<br>
[<<moveTo "event_corporate_retreat_day1_5" 'Look around at what else is going on.' 3600 "<<set $scene.strat=false>>">>]
</div>/*#
#desc: corporate retreat watch races
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Fairgrounds">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fairgrounds.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
<<if $scene.strat>>
You focus on the races, hoping to learn as much as you can from those that run before you.
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
Unfortunately the sight of so many sexy people in bondage sweating and straining against leather restraints proves to be too much of an arousing distraction for you to actually learn anything.
<<elseif setup.getTotalValue("smart") > 15>>
After a couple heats you have determined three key takeaways; that a tight harness is key to prevent the chariot from fishtailing out of control. That the turn is the hardest part of the course and, finally, that the connection between pony and driver is the most important and that rather than taking a passive role the driver must be alert to direct their steed through the course and that they cannot just sit back and hope for athleticism to win out.
<<elseif setup.getTotalValue("smart") > 10>>
After a couple heats you have determined two major takeaways: that a tight harness is key to prevent the chariot from fishtailing out of control, and that the turn is the hardest part of the course — any driver who fails to navigate it successfully has no chance in the sprint to the finish..
<<else>>
After a couple heats your main takeaway is that the turn is the hardest part of the course — any driver who fails to navigate it successfully has no chance in the sprint to the finish.
<</if>>
<<else>>
You look around to see if there's anything interesting going on while everyone is distracted by the race. For a while all the action seems to be on the race-track, and then you catch a glimpse of a <<man>> you recognise as the director of Corporate R&D, and <<he>>'s talking with <<=setup.getNpcName("npc_work_doctor","formal")>>. As you watch <<=setup.getNpcName("npc_work_doctor","formal")>> hands the <<man>> something before slinking off into the crowd...
<</if>>
<br><br>
You are interrupted by a polite <<man>> who, with just a touch of nerves, informs you and <<=setup.getNpcName("npc_manager","formal")>> that it is time for you to prepare for your race.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> nods crisply in acknowledgement and the two of you follow the <<man>> to the "stables" area.<br>
<br>
[<<moveTo "event_corporate_retreat_race_1" 'Get ready to race.' 1800>>]
</div>/*#
#desc: corporate retreat harness manager intro
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'armbinder_black' true>>
<<deleteItem 'armbinder_black'>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_manager","npc_manager_harness")>>
<div id="invframe" class="scrolltext">
You are lead to a temporary stable stall where your escort presents the chariot you will be riding, and the leather harness that <<=setup.getNpcName("npc_manager","formal")>> is apparently meant to wear. The harness looks brand new and exquisitely made while the chariot is decorated with antlers and lettering designating it as representing the Human Resources department — apparently the company went all out to give each director a "themed" ride...<br>
<br>
You are examining the chariot while the escort lingers nervously until <<=setup.getNpcName("npc_manager","formal")>> snorts impatiently and begins removing her clothes. "@@.npc_manager;Well hurry on, then — either assist me in getting changed or go find something else to do.@@"<br>
<br>
"@@.generic_male1;Yes, <<=setup.getNpcName("npc_manager","other")>>, sorry <<=setup.getNpcName("npc_manager","other")>>,@@" the <<man>> replies, jumping to attention and helping her out of her clothes before carefully, if not particularly snugly, helping her into the pony boots and buckling her into the harness, only to freeze when <<he>> comes to the crotch strap with its dual internal dildos.<br>
<br>
With an annoyed huff <<=setup.getNpcName("npc_manager","formal")>> snatches the strap from <<him>> and slides each dildo into its respective hole before pulling the strap to its tightest notch. Backing away, the <<man>> seems to finally remember that you are present and <<he>> hurriedly removes your armbinder before showing you where to stand and giving a quick description of how the reins are traditionally used.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> is nearly finished with her harness and the assistant hands you a very ostentatious bridle gage. "@@.generic_male1;It's, um, traditional for the driver to apply the bridle, to ensure that everything is properly fitted and will thus work as desired for relaying instructions.@@"<br>
<br>
<<if setup.getTotalValue("dominance") == 0 && setup.getTotalValue("submission") > 15>>
You look at the severe gag, then back at your <<=setup.getNpcName("npc_manager","title")>> and freeze. There is no way you could apply that to her; it goes completely against your position in the relationship and you have not a whit of training in dominance to fall back on.<br>
<br>
<<elseif setup.getTotalValue("submission") > 10>>
You look at the severe gag, then back at your <<=setup.getNpcName("npc_manager","title")>>. This goes against basically everything that's happened in your relationship but you think back to what you've learned about being a dominant to think how to muddle through.<br>
<br>
[<<moveTo "event_corporate_retreat_race_2" "Apply the bridle." 600 "<<set $scene.bridle=true>>">>]<br>
<<else>>
[<<moveTo "event_corporate_retreat_race_2" "Apply the bridle." 600 "<<set $scene.bridle=true>>">>]<br>
<</if>>
<<if setup.getTotalValue("dominance") < 1>>
[<<moveTo "event_corporate_retreat_race_2_alt" 'What? But she is your <<=setup.getNpcName("npc_manager","title")>>! You are a sub...' 300 "<<set $scene.bridle=true>>">>]<br>
<<elseif setup.getTotalValue("dominance") < 10 && setup.getTotalValue("dominance") < setup.getTotalValue("submission")>>
[<<moveTo "event_corporate_retreat_race_2_alt" 'What? But she is your <<=setup.getNpcName("npc_manager","title")>>! You cannot dominate her...' 300>>]<br>
<</if>>
<<if !$npc_manager.flags.cruel && $npc_manager.affection == 10 && $npc_manager.anger == 0>>
[<<moveTo "event_corporate_retreat_race_abort_1" "You can't do this." 600>>]
<<else>>
[<<moveTo "event_corporate_retreat_race_2" "You can't do this." 600 "<<set $scene.bridle=false>>">>]
<</if>>
</div>/*#
#desc: manager covers for your inability to show any dominance before race
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<set $scene.abortRace = true>>
<<addItem 'armbinder_black'>>
<<wearItem 'armbinder_black' true>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
You stare at the bridle in abject fear, like merely reaching for it would cause it to bite you.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> glances up from lacing up the hoof boots and immediately notices your concern.<br>
<br>
"@@.npc_manager;I am very sorry, but it appears that I must have twisted my ankle. I will, unfortunately, be unable to compete in today's race.@@"<br>
<br>
Caught off-guard the assistant replies with a clear note of frustration. "@@.generic_male1;But you didn't mention anything earlier! I was ordered specifically to make sure that you—@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> locks eyes with the assistant and then reaches down with one hand. Without so much as a wince she turns her ankle to a gut-clenching unnatural angle until there is an audible POP that makes you wince reflexively. Her tone remains neutral as she stares <<him>> down "@@.npc_manager;I said that I twisted my ankle.@@"<br>
<br>
The <<man>> goes chalk white and you feel a pang of sympathy for <<him>>. "@@.generic_male1;Sorry, sorry, I, uh, I'll let them know... do you suppose your slave might take your place to bring out the cart for the opening ceremony? You will forfeit, of course, but it would harm company cohesion to not see your department having some representation...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> glances at you and then nods. Quickly your arm restraints are re-applied and you are harnessed up to the vehicle while <<=setup.getNpcName("npc_manager","formal")>> changes back into her riding outfit and, with a slight limp, mounts the chariot.<br>
<br>
The assistant reaches for your bridle to lead the way forward only for <<his>> hand to be knocked away by a precision crack of the whip. "@@.npc_manager;I can direct things from here. Thank you so very much for your assistance.@@"<br>
<br>
Rubbing <<his>> wrist but looking almost relieved the <<man>> hurries away. <<=setup.getNpcName("npc_manager","formal")>> gently uses the reins to signal you to start walking. You sigh with relief, comforted at how naturally you take to being directed in this way.<br>
<br>
[<<moveTo "event_corporate_retreat_race_abort_2" "Continue." 1800>>]
</div>/*#
#desc: forfeit the race
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.retreat.pony = 1>>
<</if>>
<<set $player.location to "Race Track">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> guides you to nimbly navigate the stables to a holding areas where you form up in a line with the customised chariots representing the other corporate departments. You note the looks of annoyance from your <<=ps(setup.getNpcName("npc_manager","title"))>> harnessed colleagues when they catch sight of her, rather than yourself, riding the chariot.<br>
<br>
With all of them gagged, however, nobody can complain and a moment later you are filing out to the sound of <<=setup.getNpcName("npc_boss","formal")>> announcing each department head in turn.<br>
<br>
"@@.npc_boss;And finally, the department that stands with and behind all of us, every day... Human Resources!@@"<br>
<br>
You stride out with as much prancing style as you can muster to initial applause and then mutters of confusion as the crowd lays eyes on <<=setup.getNpcName("npc_manager","formal")>> in all her domme glory.<br>
<br>
Pulling up in front of <<=setup.getNpcName("npc_boss","formal")>> as <<he npc_boss>> glowers down, you can practically hear the taunting confidence in <<=ps(setup.getNpcName("npc_manager","formal"))>> as she explains the situation, her voice easily carrying over the crowd without need for a microphone.<br>
<br>
"@@.npc_manager;Unfortunately I have suffered an injury and am unable to compete in today's wonderful event. Thus, I must sadly submit a forfeit and wish great fortune to my remaining colleagues. May the second best department win!@@"<br>
<br>
The crowd laughs and then falls silent as <<=setup.getNpcName("npc_boss","formal")>> squeezes <<his npc_boss>> microphone tight enough you're afraid it might shatter. "@@.npc_boss;We are all very sorry to hear that, come on, everyone, let's give <<=setup.getNpcName("npc_manager","other")>> a nice round of applause and wish her a speedy recovery!@@"<br>
<br>
The applause is loud as <<=setup.getNpcName("npc_manager","formal")>> guides you past the stands, waving like she was visiting royalty before easing her way around to a position from which the two of you may watch the race.<br>
<br>
[<<moveTo "event_corporate_retreat_race_abort_3" "Continue." 600>>]
</div>/*#
#desc: watch the race with manager
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Race Track">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
You're a bit nervous at the thought of what sort of revenge <<=setup.getNpcName("npc_boss","formal")>> might take for foiling <<his npc_boss>> plan, but you are quickly caught up in the emotions of the race. Unlike the earlier heats where there was a general sense of jovial fun the crowd now seems much more tense, each employee cheering for their respective department — whether in enthusiasm or obligation, you are uncertain.<br>
<br>
The race itself is surprisingly hard-fought and you wonder if there might be stakes other than pride given how hard the various directors push themselves, though you notice that none of their subordinates seem to have the nerve to employ the whip for additional encouragement.<br>
<br>
In the end the cart belonging to the Department of R&D crosses the finish line first, parading another lap before stopping in front of <<=ps(setup.getNpcName("npc_boss","formal"))>> pavilion for a public congratulation. In the commotion <<=setup.getNpcName("npc_manager","formal")>> sets you back into motion, navigating back to your cabin where she limps off the chariot, un-harnesses you, and leads you inside.<br>
<br>
[<<moveTo "event_corporate_retreat_race_abort_4" "Help her into bed." 600>>]
</div>/*#
#desc: retire to cabin after skipping race
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 12 'very' $SEEN_FRIEND>>
<<addItem 'teddie_pink'>>
<<wearItem 'teddie_pink' true>>
<<removeItem 'armbinder_black'>>
<<deleteItem 'armbinder_black' true>>
<<removeItem 'posture_collar_black'>>
<<deleteItem 'posture_collar_black' true>>
<<removeItemSet 'pony_girl'>>
<<deleteItemSet 'pony_girl'>>
<<removeItem 'nipple_bells'>>
<<deleteItem 'nipple_bells' true>>
<<if $scene.bed>>
<<addItem 'sleepsack'>>
<<wearItem 'sleepsack' true>>
<<else>>
<<addItem 'padded_hogtie'>>
<<wearItem 'padded_hogtie' true>>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You assist <<=setup.getNpcName("npc_manager","formal")>> in getting changed followed by you administering a very gentle foot massage before you ready yourself for bed, back in the same bondage as the previous night under her supervision.<br>
<br>
"@@.npc_manager;So today was festivities, tomorrow is a bit more serious. I will be attending various cross-organisation executive synergy events while you and the other junior staff will be given relative free reign to visit, party, and relax. I will see you again in the late afternoon for the awards ceremony and then it will be off to the airport — we must be back ready to work Monday morning, after all.@@"<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 5, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 5, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_corporate_retreat_day2_0" "Sleep." _timeToMorning>>]
</div>/*#
#desc: corporate retreat too submissive to harness manager
#status: RELEASED 0.8.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 20 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_manager","npc_manager_harness_gag")>>
<div id="invframe" class="scrolltext">
You balk at the choice before you, unable to even put to words your fears... and yet <<=setup.getNpcName("npc_manager","formal")>> seems to understand at a glance.<br>
<br>
"@@.npc_manager_dom;You, step outside.@@" She commands the attendant, the <<man>> frozen in place by the force of her command for a moment before she flicks a glance in <<his>> direction and <<he>> hurries out of the stall.<br>
<br>
Moving with ease atop the towering pony boots <<=setup.getNpcName("npc_manager","formal")>> looks down at you even more than normal.
<<if $npc_manager.flags.cruel>>
Her gaze narrows as her hand slides around your throat, squeezing ever so lightly, a reminder of her control that has you reflexively rise to your tippy-toes.<br>
<br>
"@@.npc_manager;Your adorable submissive reluctance is noted, and rejected. Do you think a couple of straps and a gag is enough to disrupt the hierarchy between us? No, I am your <<=setup.getNpcName("npc_manager","formal")>>, and you are my <<if $fetish.sissy>>sissy <</if>>slave. No amount of tack or equipment could ever change that. So, regardless of how much more proper it would be for the straps to bite into your flesh, and for you to taste the whip... you will take control, if not command,@@" her grip tightens ever so slightly as she pulls you in, her breath in your face, the mixed scent of her perfume and leather restraints heavy in your nostrils. "@@.npc_manager;Because. I. Order it.@@"<br>
<br>
She lets go and you stumble back, your heart pounding as you try to remember how to breath. Still holding your gaze her lips part in invitation and you get to work
<<else>>
She smiles as she caresses your cheek.<br>
<br>
"@@.npc_manager;My sweet slave. I can see the fear in your eyes, the uncertainty at taking a dominant role... but it is a foolish fear.@@" you tremble as her <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>fingers curling around the ring at the front of your collar<<else>>hand coming to rest around your throat, not squeezing, and yet totally possessive<</if>>. "@@.npc_manager;Does your maintaining my schedule mean that you control me? No, it is but an aspect of your service. In all things I am your <<=setup.getNpcName("npc_manager","formal")>>, and you are my <<if $fetish.sissy>>sissy <</if>>slave, no amount of tack or equipment could change that. I understand that today presents a unique situation, how much you would prefer to feel the leather straps dig into your flesh, to feel the whip rather than wield it... but this is the situation in which we are in, and it would make me very proud if you would rise to the challenge.@@"<br>
<br>
She leans in, so close that you can feel the heat of her breath as she whispers in your ear. "@@.npc_manager;Can you do that for me? Face your fears and serve me as required, and not hold back, even in the face of adversity?@@"<br>
<br>
You tremble, puddy in her hands, all but ready to melt at the power she has over you as you breathlessly whisper "@@.npc_manager;Yes, <<=setup.getNpcName("npc_manager","title")>>.@@"<br>
<br>
"@@.npc_manager;Good girl,@@" she replies, placing the gentlest of kisses on the side of your neck before leaning back. "@@.npc_manager;Now, my bridle?@@"<br>
<br>
Though your heart thunders in your chest, your hands do not tremble as you obey your <<=ps(setup.getNpcName("npc_manager","title"))>> command, carefully, and securely
<</if>>
cinching the bridle in place. <<=ps(setup.getNpcName("npc_manager","formal"))>> final words before you gag and silence her to summon the attendant back into the room.<br>
<br>
The attendant returns and you notice that, compared to the bridle which she had grunted at you until it was as tight as possible, her harness is a little bit loose.<br>
<br>
<<if setup.getTotalValue("bondage") > 10>>
<<printThought "I should tighten everything up. Tight bondage is best bondage.">><br>
<br>
<</if>>
[<<moveTo "event_corporate_retreat_race_3" "Tighten her harness." 300 "<<set $scene.harness=true>>">>]<br>
[<<moveTo "event_corporate_retreat_race_3" "Leave things as is." 300 "<<set $scene.harness=false>>">>]
</div>/*#
#desc: corporate retreat harness manager - cinch
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bridle>>
<<applyExperience 'dominance' 12 'very' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'submission' 20 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_manager","npc_manager_harness_gag")>>
<div id="invframe" class="scrolltext">
<<if $scene.bridle>>
You take a deep breath and start buckling the bridle around <<=ps(setup.getNpcName("npc_manager","formal"))>> head, being careful not to pull her hair or pinch her cheek as she helps guide you to cinch the bit tight and shakes her head to make sure everything is securely in place.<br>
<br>
Letting out a held breath, you try to keep your heart from racing as you glance over <<=setup.getNpcName("npc_manager","formal")>> in full leather bondage.
<<else>>
You can't bring yourself to put a gag on your glorious <<=setup.getNpcName("npc_manager","title")>> and, after the assistant tries to look at anything other than your <<=setup.getNpcName("npc_manager","title")>> she sighs and snatches it for herself.<br>
<br>
"@@.npc_manager;I suppose I should be pleased that you have internalised your role so thoroughly... just try not to freeze up during the race, I would hate for you to crash and get hurt.@@"<br>
<br>
You quickly nod as she buckles the bridle into place snugly. As her fingers work the straps tight you note that, excepting the crotch-piece, the rest of her harness is a bit loose owing to the assistant's earlier timidity.
<</if>>
<br><br>
<<if setup.getTotalValue("bondage") > 10>>
<<printThought "I should tighten everything up. Tight bondage is best bondage.">><br>
<br>
<</if>>
[<<moveTo "event_corporate_retreat_race_3" "Tighten her harness." 300 "<<set $scene.harness=true>>">>]<br>
[<<moveTo "event_corporate_retreat_race_3" "Leave things as is." 300 "<<set $scene.harness=false>>">>]
</div>/*#
#desc: corporate retreat harness manager - blinkers
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Race Track">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_gag")>>
<div id="invframe" class="scrolltext">
<<if $scene.harness>>
You take a moment to tighten every strap of <<=ps(setup.getNpcName("npc_manager","formal"))>> harness an extra notch tighter. Pulling the crotch strap draws a lusty breath to escape past her gag as you realise that you have just pushed both dildos even deeper into your <<=setup.getNpcName("npc_manager","title")>>. Other than this subtle response she makes no comment as you finish cinching up the rest of the straps, a quick check confirming that the harness is much more securely mounted now, which you hope will aid with performance.
<<else>>
Tightening bondage on your <<=setup.getNpcName("npc_manager","title")>> seems a bit crazy. Besides, surely the assistant knew what <<he>> was doing, right?
<</if>>
Seemingly having recovered <<his>> nerve now that <<=setup.getNpcName("npc_manager","formal")>> can no longer speak, the assistant places <<=ps(setup.getNpcName("npc_manager","formal"))>> into a box-tie armbinder before hooking her up to the chariot.<br>
<br>
"@@.generic_male1;So, um, one last thing — would you like to add blinkers?@@" <<He>> asks, presenting two pieces of leather than you note could be clipped to either side of <<=ps(setup.getNpcName("npc_manager","formal"))>> bridle. "@@.generic_male1;They'll basically eliminate all of her peripheral vision, which means she'll be trusting you entirely to avoid running into the other racers — but that also means she can focus on just running and not be distracted by things to either side.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_race_4" "Apply the blinkers." 300 "<<set $scene.blinker=true>>">>]<br>
[<<moveTo "event_corporate_retreat_race_4" "That seems a bit much." 300 "<<set $scene.blinker=false>>">>]
</div>/*#
#desc: corporate retreat - race wager
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Race Track">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.blinker>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_blinkers") setup.charImage("npc_boss")>>
<<else>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_gag") setup.charImage("npc_boss")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.blinker>>
Recalling the chaos of some of the earlier races you decide that limiting <<=ps(setup.getNpcName("npc_manager","formal"))>> distractions could give you an edge and you clip them in place. As you attach the first blinker she glances at you, looking for the barest moment almost nervous, but there is also a sense of trust as she focuses forward and you clip the second blinker in place. You release a held breath, your heart racing at just how helpless and vulnerable <<=setup.getNpcName("npc_manager","formal")>> is at present.
<<else>>
You decide against adding another piece to <<=ps(setup.getNpcName("npc_manager","formal"))>> bindings.
<</if>>
<br><br>
Everything ready the assistant helps you up onto the chariot and has just handed you the reins when <<=setup.getNpcName("npc_boss","formal")>> swaggers into the stall.<br>
<br>
"@@.npc_boss;Well, well, well. You make an even more beautiful ponygirl than I had imagined!@@" <<He npc_boss>> states with a grin, tracing over <<=ps(setup.getNpcName("npc_manager","formal"))>> restraints with <<his npc_boss>> fingers while she is helpless to slap <<him npc_boss>> away. "@@.npc_boss;I was just coming through wishing everyone luck... and I wanted to offer you a wager, just in case you felt like taking it easy out there. I want a nice showing for our employees so... if you win you may borrow <<=setup.getNpcName("npc_secretary","nickname")>> back for an afternoon — maybe have a new and old secretary face-off? Who knows, I leave it to you... of course, if you lose, I will be borrowing your current project for the same period. I really have been afforded so few opportunities to test your work...@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> laughs as <<he npc_boss>> walks out of the stables.<br>
<br>
<<if $scene.blinker>>
With the blinkers <<=setup.getNpcName("npc_manager","formal")>> is unable to make eye contact with you but she turns around as far as her restraints allow and you get the message —
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> turns as far as her restraints allows, barely making eye contact with you, communicating with a single silent stare that
<</if>>
winning the race has just become a top priority.<br>
<br>
You try to calm your nerves as the assistant gingerly takes hold of <<=ps(setup.getNpcName("npc_manager","formal"))>> bridle and leads the way out of stables and into a line with what look like the rest of the department directors — each harnessed up to their own uniquely-decorated chariot.<br>
<br>
<<printThought 'I wonder if <<=setup.getNpcName("npc_boss","formal")>> made wagers with the other directors? That seems like <<his npc_boss>> style...'>><br>
<br>
You do not have long to wait before you hear <<=ps(setup.getNpcName("npc_boss","formal"))>> voice over a loudspeaker as <<he npc_boss>> introduces the first department, the chariot riding forth to loud applause from the assembled employees.<br>
<br>
Working down the row you are the last chariot to stride forth, <<=setup.getNpcName("npc_manager","formal")>> surprisingly responsive to a light touch on the reins as she prances into view and then takes her position at the starting line. You can't be certain, but you think that she actually got the loudest applause of anyone...<br>
<br>
You notice the other charioteers crouch down slightly in preparation for the starting gun and you do the same, wondering which of your opponents is going to be the biggest threat.<br>
<br>
[<<moveTo "event_corporate_retreat_race_5" "The starting pistol cracks and the race is on!" 300>>]
</div>/*#
#desc: corporate retreat - race first leg
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Race Track">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.blinker>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_blinkers")>>
<<else>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_gag")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> surges forward faster than you can react but you quickly focus in<<if $scene.blinker>>, particularly mindful that she is completely dependent on you for anything that isn't directly in front of her<<else>> on steering her past the other racers<</if>>.<br>
<br>
<<if $scene.harness>>
The tight harness directs all of <<=ps(setup.getNpcName("npc_manager","formal"))>> significant power into pulling the chariot directly forward and you quickly find yourself neck and neck at the front
<<else>>
Despite her burst of power you find yourself falling behind, the chariot wobbling and swaying, preventing <<=setup.getNpcName("npc_manager","formal")>> from keeping a clean line and you curse yourself for not tightening her harness. Still, you aren't too far behind the leaders
<</if>>
as you come in on the big turn that marks the halfway point of the track.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> reflexively slows as you approach the turn but you've seen how strong she is and you're pretty certain that she can handle cornering fast. If you only give her the right encouragement. One of your competition starts to pull ahead as they tack towards the inside line...<br>
<br>
<<if setup.getTotalValue("dominance") > 0>>
[<<moveTo "event_corporate_retreat_race_6" 'Give <<=setup.getNpcName("npc_manager","formal")>> a taste of the whip to keep her on track.' 60 "<<set $scene.whip=true>>">>]<br>
<<elseif setup.getTotalValue("submission") > 10>>
It is against your submissive nature, but you know how much winning this race means to <<=setup.getNpcName("npc_manager","formal")>>...<br>
<br>
<<set _wp = Math.floor(setup.getTotalValue("submission")/5)>>
<<if setup.getWillpower() >= _wp>>
[<<moveTo "event_corporate_retreat_race_6" 'Push past your obedient limits and give <<=setup.getNpcName("npc_manager","formal")>> a taste of the whip to keep her on track.' 60 "<<set $scene.whip=true>><<spendWillpower _wp>>">>]<br>
<<else>>
[@@.link_locked;Even if <<=setup.getNpcName("npc_manager","formal")>> might somehow approve, you lack the will to force yourself to go so harshly against your submissive training.@@]<br>
<</if>>
<<else>>
[@@.link_locked;Whip <<=setup.getNpcName("npc_manager","formal")>>? That would require some manner of dominant inclination, of which you have none.@@]<br>
<</if>>
[<<moveTo "event_corporate_retreat_race_6" 'Let <<=setup.getNpcName("npc_manager","formal")>> set the pace.' 60 "<<set $scene.whip=false>>">>]
</div>/*#
#desc: corporate retreat - race tight turn
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.whip>>
<<set $scene.dom = setup.getTotalValue("dominance") > 0>>
<<if $scene.dom>>
<<applyExperience 'dominance' 13 'terrible' $EXPOSED>>
<<else>>
<<setThreshold 'dominance' 'dominance_other' 'first_whip'>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Race Track">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.blinker>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_blinkers")>>
<<else>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_gag")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.whip>>
<<if !$scene.dom>>
You crack the whip and
<<else>>
Mustering your will you hold your breath and lash out with the whip.
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> pours on the speed, the chariot almost spinning out as you pull her through the tight turn, but she keeps her feet, driving furrows into the track as she pushes forward, leaning into her harness and charging out of the turn as the crowd roars in excitement.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> eases into the corner, making the turn without any trouble but losing additional ground to the race leader.
<</if>>
<br><br>
On the final straightaway <<=setup.getNpcName("npc_manager","formal")>> pours it on in a sprint to the finish.<br>
<br>
<<if $scene.whip && $scene.harness>>
You're almost even with the leader; the R&D Divison's chariot close enough for you to notice that the Director's veins are pulsing with an eerie blue glow.<<if !$scene.strat>> <<printThought "Hmm, I bet that's from whatever drug <<=setup.getNpcName('npc_work_doctor','formal')>> gave <<him>>...">><</if>><br>
<br>
You try to work past the leader but <<he>> is weaving back and forth erratically, making it dangerous to try to push past. Still, you spot a possible line right along the rail, but it will be a tight squeeze and if you flinch at <<his>> erratic weaving you could easily run off course.<br>
<br>
[<<moveTo "event_corporate_retreat_race_7" 'Run the rail.' 60 "<<set $scene.pass=true>>">>]<br>
[<<moveTo "event_corporate_retreat_race_7" 'Just keep trying to pass normally.' 60 "<<set $scene.pass=false>>">>]
<<else>>
<<if $scene.whip || $scene.harness>>
Though you are solidly in second place you are several lengths behind the leader. Glancing at the R&D Divison's chariot you notice that the Director's veins are swelled with an eerie blue glow. <<if !$scene.strat>> <<printThought "Hmm, I bet that's from whatever drug <<=setup.getNpcName('npc_work_doctor','formal')>> gave <<him>>...">><</if>><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> is pouring it on, and gaining slowly, but it does not look like there is enough space left between here and the finish line...
<<else>>
You are barely holding on to third and though <<=setup.getNpcName("npc_manager","formal")>> is all but flying across the track you do not appear to be gaining fast enough compared to the approach of the finish line...
<</if>>
<br><br>
[<<moveTo "event_corporate_retreat_race_7" 'Finish the race.' 60>>]
<</if>>
</div>/*#
#desc: corporate retreat - race final pass
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Race Track">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.blinker>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_blinkers")>>
<<else>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_gag")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.whip && $scene.harness>>
<<if $scene.pass>>
You make your move, trying to thread the needle to make it into first. The R&D Cart swings towards you,
<<if $scene.blinker>>
but you keep your cool. Thanks to the blinkers <<=setup.getNpcName("npc_manager","formal")>> has no idea how close she is to both the wall and your fellow racer but you hold the line and she drives forward, passing her drug-fuelled opponent just in time to cross the finish line first.
<<else>>
and <<=setup.getNpcName("npc_manager","formal")>> flinches, the sight of <<him>> coming in from the side causing her to reflexively slow ever so slightly to dodge. Your opponent pulls ahead, beating you to the finish line.
<</if>>
<<else>>
You try to make the final pass but you just can't find a large enough opening before you reach the finish line, solidly in second place but leaving no doubt as to who was the winner.
<</if>>
<<else>>
You are well back from the leaders, who fly past the finish line several lengths ahead of you and <<=setup.getNpcName("npc_manager","formal")>>.
<</if>>
<br><br>
<<if $scene.whip && $scene.harness && $scene.pass && $scene.blinker>>
[<<moveTo "event_corporate_retreat_race_8" 'Victory!' 60 "<<set $scene.win=true>>">>]
<<else>>
[<<moveTo "event_corporate_retreat_race_8" 'Defeat.' 60 "<<set $scene.win=false>>">>]
<</if>>
</div>/*#
#desc: corporate retreat - finish race
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Race Track">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.blinker>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_blinkers")>>
<<else>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_harness_gag")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
Your heart is thundering as you let <<=setup.getNpcName("npc_manager","formal")>> slow and then wheel around, doing a parade walk for the crowd before coming to a stop in front of <<=ps(setup.getNpcName("npc_boss","formal"))>> pavilion.<br>
<br>
"@@.npc_boss;Your winner! <<=setup.getNpcName("npc_manager","other")>> of Human Resources! Defending her title, yet again, with another stunning display of athleticism and teamwork! Could this be a harbinger for tomorrow's Director of the Year award? We'll just have to wait and see!@@"<br>
<br>
The crowd cheers louder as you notice <<=setup.getNpcName("npc_manager","formal")>> flex her shoulders. There is a moment of strain and then the leather restraining her arms rips as she spreads her arms wide, soaking in the attention as the cheers get even louder for her feat.<br>
<br>
Through it all you notice <<=setup.getNpcName("npc_boss","formal")>> remain stone-faced and you wonder what expression is passing between <<=setup.getNpcName("npc_manager","formal")>> and <<him npc_boss>> out of your sight.
<<else>>
You cross the finish-line and roll to a stop as you watch a bit of a commotion to get the victor wheeled around.<br>
<br>
Wide-eyed and looking a bit crazed the <<man>> is eventually directed back in front of <<=setup.getNpcName("npc_boss","formal")>> where <<he>> is publicly congratulated on <<his>> victory.
<</if>>
<br><br>
You half expect there to be a parade or something but it seems that even <<=setup.getNpcName("npc_boss","formal")>> has limits on how far <<he npc_boss>> intends to push <<his npc_boss>> luck with having senior directors literally prancing around in bondage. On the way to the stables you pass by the <<if $scene.win>>runner up<<else>>winner<</if>>, <<he>> is now looking drained, <<his>> skin taking on a disturbing greyish-blue pallor and you spot <<=setup.getNpcName("npc_work_doctor","formal")>> enter the stall.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> pulls the chariot back into your stall.<br>
<br>
[<<moveTo "event_corporate_retreat_race_9" 'Remove her tack.' 600>>]
</div>/*#
#desc: corporate retreat - help her out of restraints
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.win>>
<<set $player.flags.retreat.pony = 3>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addWorkEvent 'event_predecessor_visit' _nextDate>>
<<else>>
<<set $player.flags.retreat.pony = 2>>
<<set _nextDate = setup.setNextDate($now, 7, 9, 0)>>
<<addWorkEvent 'event_boss_first_cock_training_1' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Stables">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/stables.png" setup.charImage("npc_manager","npc_manager_harness")>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
You are hurriedly unbuckling <<=ps(setup.getNpcName("npc_manager","formal"))>> harness while she fusses with the intricate bridle when <<=setup.getNpcName("npc_boss","formal")>> walks into the stall.<br>
<br>
"@@.npc_boss;Congratulations, again, on your win. I'll make arrangements for you to borrow <<=setup.getNpcName("npc_secretary","first")>> later in the week — after you get settled in your new office.@@"
<<else>>
You are hurriedly working at <<=ps(setup.getNpcName("npc_manager","formal"))>> intricate bridle when <<=setup.getNpcName("npc_boss","formal")>> walks into the stall.<br>
<br>
"@@.npc_boss;Sorry about your defeat... I'll let you know when I plan to borrow your <<if $fetish.sissy>>SISSI<<else>>secretary<</if>> — I imagine you'll be busy early in the week moving in and adjusting to your new office.@@"
<</if>>
<br><br>
You hear a crunch. You gasp as <<=setup.getNpcName("npc_manager","formal")>> spits the now three pieces of the bit gag out of her mouth. "@@.npc_manager;As I have said before: I am quite content to remain in my present office — unless you feel I am unable to perform my duties from that location?@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> grins, though the expression seems slightly forced. "@@.npc_boss;Not at all, your work, as always, remains superb just... well, these are momentous times for the company and I want my leadership team working as close together as possible, plus it would be quite curious if the Director of the Year wasn't taking advantage of the privilege of an appropriate office — the views from the upper floors are simply spectacular.@@"<br>
<br>
"@@.npc_manager;I have plenty of lovely things to look at, already.@@" She states, glancing in your direction as you blush. "@@.npc_manager;Besides, I may not even win, there are many other departments that have had strong years.@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> smirks, "@@.npc_boss;I suppose we shall see tomorrow night. See you then!@@"<br>
<br>
<<He npc_boss>> exits the stable and you go back to helping <<=setup.getNpcName("npc_manager","formal")>> out of the rest of her strappy ensemble.<br>
<br>
Her crotch strap one of the last it almost pops free and you gawk for a moment as the twin dildos slide out of her — both of them partially crushed.<br>
<br>
[<<moveTo "event_corporate_retreat_race_10" 'Help her dress.' 3600>>]
</div>/*#
#desc: corporate retreat - post-race dress and mingle
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'pony_gag' true>>
<<deleteItem 'pony_gag'>>
<</if>>
<<set $player.location to "Fairgrounds">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ponytrack.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
You feel more comfortable once <<=setup.getNpcName("npc_manager","formal")>> is back into her fashionable riding outfit. To your slight surprise she removes your bridle, but you have no time to talk to her before you leave the stables. For the rest of the afternoon you join <<=setup.getNpcName("npc_manager","formal")>> in mingling with the crowd as they <<if $scene.win>>congratulate your win<<else>>comment on your performance in the race<</if>>.<br>
<br>
Noticing some of the other contestants you are a little surprised — in every other case it appears that the Director has sought to re-enforce their superiority by placing their "driver" in very stringent bondage, the directors parading about with gagged, hobbled and inhibitor-bar-equipped human ponies that are each showing off fresh flogging marks on their backs. You notice more than a few subordinates, and not just your fellow Director-secretaries, glancing at your comparative lack of bondage in puzzled interest but none have the courage to get that close to <<=setup.getNpcName("npc_manager","formal")>> and you just remain quietly by her side.<br>
<br>
After a casual dinner standing around and talking the sun starts to go down and the crowd begins to disperse.<br>
<br>
[<<moveTo "event_corporate_retreat_evening_1" 'Retire to the cabin.' 600>>]
</div>/*#
#desc: corporate retreat - race evening action action
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
You have just entered the cabin when <<=setup.getNpcName("npc_manager","formal")>> closes the door and smiles. Your heart thunders as, though her expression does not show anger, she focuses the full force of her dominant energy upon you.<br>
<br>
[<<moveTo "event_corporate_retreat_evening_2" 'Drop to your knees and beg forgiveness.' 600 "<<set $scene.action='kneel'>>">>]<br>
[<<moveTo "event_corporate_retreat_evening_2" 'Apologise for your actions during the race.' 600 "<<set $scene.action='sorry'>>">>]<br>
[<<moveTo "event_corporate_retreat_evening_2" 'Actually, you would like to learn to domme.' 600 "<<set $scene.action='dom'>>">>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;You must make amends!@@]
<<else>>
[<<moveTo "event_corporate_retreat_evening_2" 'Remain silent.' 600 "<<set $scene.action='quiet'>>">>]<br>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;You cannot speak defiance to your <<=setup.getNpcName("npc_manager","title")>>.@@]
<<else>>
[<<moveTo "event_corporate_retreat_evening_2" 'You have nothing to be sorry for!' 600 "<<set $scene.action='defiant'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: corporate retreat evening apology
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'kneel'>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<case 'sorry'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'submission' 13 'terrible' $SEEN_FRIEND>>
<<case 'quiet'>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<case 'defiant'>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<applyExperience 'dominance' 10 'terrible' $SEEN_FRIEND>>
<<case 'dom'>>
<<if $npc_manager.flags.cruel>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<applyExperience 'dominance' 10 'terrible' $SEEN_FRIEND>>
<</if>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_dominance'
6
'event_manager_theme_dom_training_1'
true
>>
<</switch>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'kneel'>>
You drop to your knees and bow your head, begging <<=ps(setup.getNpcName("npc_manager","formal"))>> for forgiveness, imploring her to punish you in "@@.pc;Whatever manner she deems appropriate@@" to make up for your actions.<br>
<br>
She walks towards you until all you can see is her boot below your face, the black leather slightly dusty from the long day. She says not a word. Which makes sense. After all, you have been trained long enough to know what you need to do.
<<case 'sorry'>>
You blush and stare at the floor as you apologise for the race, and the actions you were forced to take during it.<br>
<br>
Without a word she walks towards you, each footfall ominous even without her normal stiletto heels. She stops just in front of you, your downward turned face giving you a perfect vantage to stare at her slightly dusty boots.<br>
<br>
"@@.npc_manager;Well? You can start making things up to me at any time.@@"
<<case 'quiet'>>
You bite your lip and remain silent, unable to come up with words that might explain yourself.<br>
<br>
"@@.npc_manager;Cat got your tongue? Somewhat disappointing but... well, I think you can put those lips of yours to much better use without making a sound.@@"<br>
<br>
She steps closer and you find your gaze drifting down to her boots, the knee-high leather riding boots slightly dusty from the day spent walking around the fairgrounds.
<<case 'defiant'>>
You straighten up taller and state that, while the day was strange, you see no reason that you should apologise or anything for your actions.<br>
<br>
In the blink of an eye she is in front of you, her hand <<if setup.checkItemTypeWorn("cage")>><<if setup.isCage()>>grabbing your cage<<else>>cupping the front of your chastity belt<</if>><<else>>sliding between your thighs<</if>> possessively. "@@.npc_manager;No reason? How about the mere symbolism of you taking temporary authority over me, of the example that might set for other, impressionable employees? Moreover... <<=setup.getNpcName("npc_boss","formal")>> may be in charge of this company but that does not make <<him npc_boss>> your superior, not the way that I am.@@"<br>
<br>
She pulls away and your gasp, looking submissively downward as she extends her foot, the knee-high leather riding boot slightly dusty from the day spent walking around the fairgrounds.
<<case 'dom'>>
Your heart beats faster as you politely<<if setup.getTotalValue("dominance") > 5>>, but firmly<<else>>and very nervously<</if>>, state that, actually... you'd like to explore your domme side more...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> takes a step closer, her dominant presence seeming to make her grow to tower over you as
<<if $npc_manager.flags.cruel>>
she laughs cruelly. "@@.npc_manager;You? A domme? Hardly, no, you are my Subby<<if $fetish.sissy>>, SISSI<</if>> Secretary, and you had best remember that and banish any silly other thoughts from your mind.@@"
<<elseif setup.getTotalValue("dominance") > 5>>
she slowly nods. "@@.npc_manager;Hmm... yes... I can see it now... just a hint but...@@" Her eyes sparkle as she thinks for a moment. "@@.npc_manager;Yes... that could be useful. A right hand instead of a mere subordinate... if you can rise to the occasion. We shall have to see, yes? But put that aside for now, we have the rest of this retreat to survive...@@"
<<else>>
she appears to remain puzzled. "@@.npc_manager;Hmm... an interesting ambition... and one that could be useful. A right hand instead of a mere subordinate... if you could rise to the occasion. We shall have to see, yes? But put that aside for now, we have the rest of this retreat to survive...@@"
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "event_corporate_retreat_evening_3" 'Kiss her feet.' 600 "<<set $scene.kiss=true>>">>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Your <<=setup.getNpcName("npc_manager","title")>> desires, it is your duty to obey.@@]
<<elseif setup.getTotalValue("foot") > 15>>
[@@.link_locked;You cannot resist the opportunity to worship her feet...@@]
<<else>>
[<<moveTo "event_corporate_retreat_evening_3" 'Remain still.' 600 "<<set $scene.kiss=false>>">>]
<</if>>
</div>/*#
#desc: corporate retreat evening kiss feet
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.kiss>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'foot' 12 'very' $SEEN_FRIEND>>
<<if $scene.win>>
<<addNpcTheme 'npc_manager' 'other' 'theme_manager_dominance'
6
'event_manager_theme_dom_training_1'
true
>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
<<if $scene.kiss>>
You gently kiss the tip of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> boot, working your way up from there and then back down, bringing your hands into play to wipe away the remaining dust before repeating on the other until both boots are gleaming from a fresh tongue polish.<br>
<br>
She reaches down, hooking a finger through your collar and drawing you back to your feet. She places a kiss on your lips and then leans back to smile.<br>
<br>
<<if $scene.win>>
"@@.npc_manager;Very good, you have re-affirmed your role... and victory counts for much.<<if setup.getTotalValue("dominance") > 5>>.. and yet I felt something more. Despite everything that has happened I felt a true spark of dominance within you... so long as you always remember your position beneath me I can help you nurture it, channel it. While I will always demand complete obedience I am not opposed to having a right-hand girl to help keep the rest in line.<</if>>@@"
<<else>>
"@@.npc_manager;Very good, you have re-affirmed your role... it is a pity it was for naught. I suppose that is what I should expect from one so purely suited to submission.@@"
<</if>>
<br><br>
You tremble, scared to look back at her and yet unable to break her gaze. She smiles pleasantly and then turns. "@@.npc_manager;Come, let us shower, wash away all that nasty dust from the track... and have you put those lovely lips to another wonderful use.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_evening_4" 'Follow her into the shower.' 600>>]
<<else>>
You do not move and she walks away. You hear the sound of a zipper as she retrieves something from her suitcase. She turns around brandishing a heavy flogger and a stern expression.<br>
<br>
"@@.npc_manager;Strip. Now.@@"<br>
<br>
Her eyes flash. This is not a request. It is a command.<br>
<br>
[<<moveTo "event_corporate_retreat_evening_punish" 'Remove your harness.' 300>>]
<</if>>
</div>/*#
#desc: corporate retreat evening punished for disobedience
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'posture_collar_black' true>>
<<deleteItem 'posture_collar_black'>>
<<removeItem 'pony_harness' true>>
<<deleteItem 'pony_harness'>>
<<removeItem 'pony_boots' true>>
<<deleteItem 'pony_boots'>>
<<removeItem 'nipple_bells' true>>
<<deleteItem 'nipple_bells'>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<applyExperience 'bdsm' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'bondage' 10 'very' $SEEN_FRIEND>>
<<removeAllClothing>>
<<applyFatigue 100>>
<<if $scene.bed>>
<<addItem 'sleepsack'>>
<<wearItem 'sleepsack' true>>
<<else>>
<<addItem 'padded_hogtie'>>
<<wearItem 'padded_hogtie' true>>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_riding")>>
<div id="invframe" class="scrolltext">
You strip and <<=setup.getNpcName("npc_manager","formal")>> soon has you up against a wall, your wrists locked in position by cuffs that had been subtly disguised as wall scones.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> is not holding back, the first blow of the flogger landing hard across your back, a second following it almost before you can react.<br>
<br>
She wields the leather tails like a maestro, mixing stinging slices with thudding blows, slashing your shoulders and then punishing your bare bottom. Each strike lands with perfect purpose, your initial attempts to remain stoic turning to
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
perverted moans, your body reacting to the harsh treatment with depraved pleasures.
<<else>>
pained moans as your body reacts with both arousal and agony in equal measure.
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
crying out apologies as you plead for mercy.
<<else>>
desperate pleas for mercy.
<</if>>
<</if>>
<br><br>
By the time she stops you are hanging limp, panting in exhaustion and melting into her arms as she unhooks you from the wall.<br>
<br>
"@@.npc_manager;Next time perhaps you will remember your manners.@@"<br>
<br>
You whimper in response as she carries you one-armed to the bed. Too tender and exhausted to put up any resistance you are soon trussed into a hogtie in the doggie bed at the foot of her bed, left helpless and bound as she strips, showers, and then slides into bed.<br>
<br>
"@@.npc_manager;Goodnight, tomorrow I shall be away at meetings but someone will be around to collect you for your activities. We will reunite for the evening gala.@@"<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 5, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 5, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_corporate_retreat_day2_0" 'Sleep.' _timeToMorning>>]
</div>/*#
#desc: corporate retreat evening shower
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'posture_collar_black' true>>
<<deleteItem 'posture_collar_black'>>
<<removeItem 'pony_harness' true>>
<<deleteItem 'pony_harness'>>
<<removeItem 'pony_boots' true>>
<<deleteItem 'pony_boots'>>
<<removeItem 'nipple_bells' true>>
<<deleteItem 'nipple_bells'>>
<<removeAllClothing>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $SEEN_FRIEND>>
<<addItem 'sleepsack'>>
<<wearItem 'sleepsack' true>>
<<include "cleanPlayer">>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $player.location to "Private Shower">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/manager_bathroom.png" setup.charImage("npc_manager","npc_manager_naked")>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName("npc_manager","formal")>> into the bathroom, helping her undress and then joining her in the shower. Water pours over you from all sides thanks to the multitude of jets and you get lost in the steam, scrubbing her body, washing her hair, worshipping her, and in turn cleansed by her...<br>
<br>
Eventually you find yourself on your knees, your head between her legs, eyes closed in bliss as you lick, her hand on your head gentle, comforting. It signals not just possession, but loving ownership, and you show her your appreciation...<br>
<br>
Her soft gasp of orgasm somehow echoes over the sound of the falling water and she lifts you back to your feet, her lips pressing against yours passionately. She is in complete control as you melt into her arms, her lightest touch sending shocks through your body and when her finger makes its way into your rear... you moan, her lips spreading as she devours the sound. She lets you gently slide down her body, your lips lingering on her neck, her breasts, her teats, her belly... only for her to gently spin. One kiss brushes her rear and then your face is buried beneath her cheeks, your tongue lovingly circling her hole and then sliding gently in until she moans again, her sphincter tightening in pleasure but leaving you unharmed as you shudder in recollection of what happened to her occupant from earlier in the day.<br>
<br>
She turns off the water and you dry her off, rubbing the soft towel all over her body before you leave her to do her hair and dry yourself off. As you finish you look over to find her grin at you from across the bathroom. Taking a long step towards you she sweeps you off your feet, cradling you in her strong arms as she brings you to the bed.<br>
<br>
You look up at her and blush and she gently "tucks you in" to a sleep-sack, zipping you closed and then strapping things even tighter before snuggling up next to you.<br>
<br>
She places a kiss on your cheek and then whispers in your ear. "@@.npc_manager;Goodnight, tomorrow I shall be away at meetings but someone will be around to collect you for your activities. We will reunite for the evening gala.@@"<br>
<br>
Feeling not just owned, but loved, you drift to sleep.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 5, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 5, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_corporate_retreat_day2_0" 'Sleep.' _timeToMorning "<<set $scene.bed=true>>">>]
</div>/*#
#desc: corporate retreat wake up day 2
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -100>>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<if !setup.checkItemTypeWorn("cage")>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/retreat_cabin.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if !setup.checkItemTypeWorn("cage")>>
You wake up to find <<=setup.getNpcName("npc_manager","formal")>> standing over you, already dressed.<br>
<br>
"@@.npc_manager;Good morning, my dear. Unfortunately I have a full day of managerial meetings to attend to, while you have a much more fun opportunity to relax with your fellow Secretaries<<if $fetish.sissy>> — SISSI and otherwise<</if>> on the beach... Only, well... while <<if $player.sec_style.submission.chastity == "">>I have not made chastity a requirement of your employment situation<<else>>the two of us have come to an arrangement vis a vis you no longer being required to be in chastity<</if>>, that is not the case for most of your compatriots. If you wish to participate in today's sea-side fun you will need to accept being locked in chastity. Without such, well, I am afraid I shall need to leave you safely bound for the duration, lest you get into some manner of trouble. So, what shall it be? Locked-up fun in the sand... or a bound vacation?@@"<br>
<br>
[<<moveTo "event_corporate_retreat_day2_0a" 'Accept being locked in chastity.' 180 "<<set $scene.choice='cage'>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_0a" "You'd rather be bound than chaste." 180 "<<set $scene.choice='bound'>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_0a" "Ask to accompany her, instead." 180 "<<set $scene.choice='her'>>">>]
<<else>>
You wake up to find yourself alone in the cabin. Blinking away sleep you wiggle in your restraints but it is very clear that you are stuck until someone comes to help. You're wondering how long you are going to wait when the plug in your rear suddenly bursts into merry life.<br>
<br>
"@@.npc_manager;Good morning, my dear,@@" <<=setup.getNpcName("npc_manager","formal")>> announces through a speaker. You start to wish her good morning back but it immediately becomes apparent that this is a recording as her words continue on. "@@.npc_manager;You looked so adorable that I decided to let you sleep in. While I am stuck in various meetings for the rest of the day you, and the rest of your employee segment, is granted a bit of a holiday. Now that you are awake someone will be by shortly to release you and show you to the beach where you can relax for the day. Until then, however... well, I did not want you getting bored...@@"<br>
<br>
The recording falls silent and the vibrator grows in strength. You moan and grind your hips, getting so very very close to a bound analgasm before there is a sound at the door and the plug falls silent.<br>
<br>
[<<moveTo "event_corporate_retreat_day2_1" 'Look towards the door.' 180 "<<set $scene.choice='stay_cage'>>">>]
<</if>>
</div>/*#
#desc: corporate retreat wake up day 2
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.choice>>
<<case 'cage'>>
<<if $player.body_ref.penis && $player.body_ref.vagina>>
<<set $scene.newcage = "chastity_belt_adv_ultra">>
<<elseif $player.body_ref.vagina || $player.flags.chastity_style == "belt">>
<<set $scene.newcage = "chastity_belt_adv">>
<<else>>
<<set $scene.newcage = "c_cage_advanced">>
<</if>>
<<set $scene.addedChastity = !setup.checkItemOwned($scene.newcage)>>
<<addItem $scene.newcage>>
<<wearItem $scene.newcage true>>
<<manipulateItem $scene.newcage "lock" true>>
<<case 'her'>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</switch>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.choice>>
<<case 'cage'>>
You agree to be locked <<if $player.sec_style.submission.chastity != "">>back <</if>>in chastity and <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Lovely. I know it is something of a burden, but I am sure you will have a lovely time with your coworkers.@@"<br>
<br>
She leans down, exposing you just enough to lock a <<=setup.getItemTypeName('cage')>> onto you before pocketing the key just as there is a knock on the door. "@@.npc_manager;And there is one of them now — I shall be off to my meetings, and leave you in their care.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_day2_1" "Continue." 180>>]
<<case 'bound'>>
You reply that you wish to continue refraining from chastity and <<=setup.getNpcName("npc_manager","formal")>> nods.<br>
<br>
"@@.npc_manager;Very well. Try not to get too bored before I return — I will see you this evening.@@"<br>
<br>
She leans down to check, and tighten, your restraints before walking towards the door. "@@.npc_manager;And do not worry yourself about safety — there are automated monitoring systems in place should anything go wrong. The last thing I would wish would be for my lovely <<if $fetish.sissy>>SISSY <</if>>Secretary to come to harm!@@"<br>
<br>
She leaves, leaving you bound and alone, a brief test of your restraints confirming that you will not be getting free without assistance.<br>
<br>
[<<moveTo "event_corporate_retreat_day2_bypass_1" "Relax in your bonds." 3600>>]
<<case 'her'>>
You ask if you might go with <<=setup.getNpcName("npc_manager","formal")>> to assist with her meetings, instead?<br>
<br>
She smiles down as she slowly shakes her head. "@@.npc_manager;Alas, you cannot. For the first you would find it intensely dull... and the second, well, the rules for these things are that nobody below Assistant Director is allowed to attend such meetings, corporate security requirements and such. I do appreciate the offer but... your choices are chastity, or a day bound.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_day2_0a" 'Accept being locked in chastity.' 180 "<<set $scene.choice='cage'>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_0a" "You'd rather be bound than chaste." 180 "<<set $scene.choice='bound'>>">>]
<<default>>
ERROR: unexpected scene.choice <<=$scene.choice>>
<</switch>>
</div>/*#
#desc: corporate retreat skip beach
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'skip' $ALONE>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png">>
<div id="invframe" class="scrolltext">
The lights dim and you settle in for what looks like a day of bondage. Shuffling slightly you soon relax into your restraints, finding things almost meditative, even as you can't help but wonder what you're missing out on at the beach...<br>
<br>
<<set _lateAfternoon = setup.setNextDate($now, 0, 16, 0)>>
<<set _timeToEnd = setup.secondsToDate($now,_lateAfternoon)>>
[<<moveTo "event_corporate_retreat_day2_bypass_2" "Wait." _timeToEnd>>]
</div>/*#
#desc: corporate retreat skip beach, manager return
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.fatigue = 0>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Alone and bound you drift in and out of sleep, losing track of time until you hear the sound of the door and look up to see <<=setup.getNpcName("npc_manager","formal")>> stride into the cabin.<br>
<br>
"@@.npc_manager;Enjoy your day? Well... I did not, so many meaningless planning meetings... alas.@@" She walks past you towards the bathroom. "@@.npc_manager;I will be right with you, I just need to shower and change...@@"<br>
<br>
Still bound, you have little choice but to continue to wait as you listen to the sound of the shower.<br>
<br>
[<<moveTo "event_corporate_retreat_party_0" "Wait." 600>>]
</div>/*#
#desc: corporate retreat day 2 - npc_harassment_assist arrives
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -100>>
<<set $player.makeup.messed = 0>>
<<changeHorny 30>>
<<if $scene.bed>>
<<removeItem 'sleepsack' true>>
<<deleteItem 'sleepsack'>>
<<else>>
<<removeItem 'padded_hogtie' true>>
<<deleteItem 'padded_hogtie'>>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_harassment","npc_harassment_assist_swimsuit")>>
<div id="invframe" class="scrolltext">
You look up as your friend <<=setup.getNpcName('npc_harassment_assist', 'first')>> walks into the room. Dressed in an old fashioned swimsuit they look as adorable as ever and soon have you out of your restraints and back to your feet.<br>
<br>
"@@.npc_harassment_assist;Hi!@@" They say with a smile. "@@.npc_harassment_assist;<<=setup.getNpcName('npc_harassment', 'formal')>> said that <<=setup.getNpcName('npc_manager', 'formal')>> wanted me to help you get ready for the day! This is your first time at one of these retreats but it's pretty simple. Managers have to spend the day in meetings building cross-team synergy and planning out next year while all of us assistants get to just hang out at the beach!@@"<br>
<br>
They give you a few minutes to freshen up, their giddy enthusiasm is as adorable as it is infectious and you try to think about the last time you were at the beach. Early on with <<=setup.getNpcName("npc_exgirlfriend","first")>>? Yeah, she wore a bikini that had you spending most of the day sitting and trying to hide your arousal lest she get the idea you were considering going back on that virginity pact...<br>
<br>
You shake your head, trying not to think of the mistakes of your past life, even as you struggle to get the thought of <<=setup.getNpcName("npc_exgirlfriend","first")>> in a bikini out of your head. That is, until <<=setup.getNpcName('npc_harassment_assist', 'first')>> presents you with your apparent "choices" for swimsuits.<br>
<br>
<<if !$player.sec_style.body.hair_body>>
<<=setup.getNpcName("npc_harassment_assist","first")>> looks you over, their face scrunching up as they scan your naked form.<br>
<br>
"@@.npc_harassment_assist;Hmm, so... I guess you're in the office all the time but... well, wearing a swimsuit... you probably would feel a bit more comfortable if you shaved... remember, while this is a morning for us subordinates to relax, we are still representing our managers. Were <<=setup.getNpcName("npc_manager","formal")>> here I think she would remind you something about being a representative position.@@"<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_retreat_intro_1" "Sure, shaving makes sense." 1800 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_secretary_style_bodyhair_retreat_intro_1" "You'd rather not." 1800 "<<set $scene.obey=false>>">>]
<<else>>
"@@.npc_harassment_assist;So... what do you feel like wearing?@@" They ask with a smile as they hold up the three options — a ridiculously skimpy stringkini, a classic red one-piece and an incredibly slutty slingshot. Adding an additional layer is that each swimsuit includes an integrated rear dildo. In the case of the stringkini this means a <<=setup.getNpcName("npc_barista","nickname")>>-style "barely held in" look, while the one-piece uses it to "draw in" to show off your crack and the slingshot uses it as an anchor point to be completely backless.<br>
<br>
"@@.npc_harassment_assist;Oh, and don't worry about tan-lines — I'll make sure you've got plenty of sunscreen!@@"<br>
<br>
[<<moveTo "event_corporate_retreat_day2_2" 'Choose the skimpy stringkini.' 300 "<<set $scene.swimsuit='stringkini'>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_2" 'Choose the sexy one-piece.' 300 "<<set $scene.swimsuit='one_piece'>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_2" 'Choose the slutty slingshot.' 300 "<<set $scene.swimsuit='slingshot'>>">>]
<</if>>
</div>/*#
#desc: corporate retreat choose swimsuit
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<switch $scene.swimsuit>>
<<case 'stringkini'>>
<<applyExperience 'bimbofication' 15 'terrible' $SEEN_FRIEND>>
<<case 'one_piece'>>
<<applyExperience 'feminization' 15 'very' $SEEN_FRIEND>>
<<case 'slingshot'>>
<<applyExperience 'bimbofication' 18 'terrible' $SEEN_FRIEND>>
<</switch>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'very' $SEEN_FRIEND>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<removeItem $scene.plug true>>
<</if>>
<<addItem $scene.swimsuit>>
<<wearItem $scene.swimsuit true>>
<<set $shopStatus['gym'].unlocked_inventory.pushUnique('swim')>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_harassment","npc_harassment_assist_swimsuit")>>
<div id="invframe" class="scrolltext">
<<switch $scene.swimsuit>>
<<case 'stringkini'>>
You opt for the stringkini. <<=setup.getNpcName('npc_harassment_assist', 'first')>> helps you into it — including lubing up the plug before sliding it into your rear<<if setup.checkItemTag($scene.plug, ['hollow'])>>, doubling up with your hollow plug<<else>> in lieu of your previous plug<</if>>. They step back to look at you with a smile. "@@.npc_harassment_assist;So skimpy! I could never go out in public wearing so little... well, unless <<=setup.getNpcName('npc_harassment', 'formal')>> ordered me to!@@"
<<case 'one_piece'>>
You opt for the red one-piece. <<=setup.getNpcName('npc_harassment_assist', 'first')>> helps you into it — including lubing up the plug before sliding it into your rear<<if setup.checkItemTag($scene.plug, ['hollow'])>>, doubling up with your hollow plug<<else>> in lieu of your previous plug<</if>>. They step back to look at you with a smile. "@@.npc_harassment_assist;Mmm, so classy! With you as a lifeguard I might just forget how to swim!@@"
<<case 'slingshot'>>
You opt for the slutty slingshot bikini. <<=setup.getNpcName('npc_harassment_assist', 'first')>> helps you into it — including lubing up the plug before sliding it into your rear<<if setup.checkItemTag($scene.plug, ['hollow'])>>, doubling up with your hollow plug<<else>> in lieu of your previous plug<</if>>. The way it is pulled forward by the Y strap running up your front is definitely interesting.<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> steps back to look at you with a smile. "@@.npc_harassment_assist;Wow, I could never wear something that slutty in public! But on you just... yowza!@@"
<<default>>
ERROR: unexpected scene.swimsuit <<=$scene.swimsuit>>
<</switch>>
<br><br>
"@@.npc_harassment_assist;Oh, and we don't want things slipping out!@@" You gasp as they do something that causes the plug to swell to what feels like your max capacity...<br>
<br>
You take a few moments to admire yourself in the mirror as <<=setup.getNpcName('npc_harassment_assist', 'first')>> busts out the sunscreen. They are VERY thorough in making sure its rubbed in all over, grinning the whole time as their slippery hands roam across your body.<br>
<br>
[<<moveTo "event_corporate_retreat_day2_3" 'Offer to return the favour.' 300 "<<set $scene.sunscreen=true>>">>]<br>
[<<moveTo "event_corporate_retreat_day2_3" 'Follow them out the door.' 300 "<<set $scene.sunscreen=false>>">>]
</div>/*#
#desc: corporate retreat sunscreen
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_harassment","npc_harassment_assist_swimsuit")>>
<div id="invframe" class="scrolltext">
<<if $scene.sunscreen>>
You offer to do <<=ps(setup.getNpcName('npc_harassment_assist', 'first'))>> sunscreen and they blush. "@@.npc_harassment_assist;I'm technically covered but I couldn't possibly say no to your cute fingers rubbing all over me...@@"<br>
<br>
They blush (adorably, of course) and you get to it, rubbing them all over with a fresh coat of sunscreen as they giggle and wiggle. "@@.npc_harassment_assist;Careful, I'm ticklish!@@" They note, but cut you off before you can do anything with this information. "@@.npc_harassment_assist;Come on, we can't spend the whole day just hanging out in your cabin. The beach awaits!@@"<br>
<br>
<<else>>
You don't say anything and
<</if>>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> scampers towards the door. You follow, finding a pair of cute, wedge beach sandals to match your swimsuit waiting for you to slip on.<br>
<br>
Outside the door you find a cute parasol that <<=setup.getNpcName('npc_harassment_assist', 'first')>> picks up. You raise your eye in curiosity and they smile.
<<if $scene.sunscreen>>
"@@.npc_harassment_assist;Oh, sure, I've got the sunscreen, but this is so cuuute!@@"
<<else>>
"@@.npc_harassment_assist;I'm wearing sunscreen, too, but this is so cuuute!@@"
<</if>>
They give a demonstrative twirl, the skirt of their swimsuit rising up and out to very much confirm their reasoning.<br>
<br>
Arm in arm you find yourself skipping along with <<=setup.getNpcName('npc_harassment_assist', 'first')>> as you head down the path.<br>
<br>
[<<moveTo "event_corporate_retreat_day2_4" 'Frolic forward!' 300 "<<addItem 'beach_sandals'>><<wearItem 'beach_sandals' true>>">>]
</div>/*#
#desc: corporate retreat arrive beach
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'retreat_key'>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" setup.charImage("npc_harassment","npc_harassment_assist_swimsuit_parasol")>>
<div id="invframe" class="scrolltext">
The beach proves to be not very far and you and <<=setup.getNpcName('npc_harassment_assist', 'first')>> soon reach the edge of the sand where you take a moment to look things over.<br>
<br>
Scattered across the sand and water are several dozen people lounging and playing, well, more than playing, in some cases as you notice a pair off to one side having sex and, oh, there's someone getting a blowjob under an umbrella.<br>
<br>
<<printThought "Yup, this is totally what I should have expected for a company function.">><br>
<br>
"@@.npc_harassment_assist;Oh, one final thing,@@" <<=setup.getNpcName('npc_harassment_assist', 'first')>> states with a sly smile. "@@.npc_harassment_assist;To encourage mingling everyone here has the key to someone else's chastity device — it's all randomly assigned and the only caveat is that you won't have the key to whoever has been given yours. Finding who it is, and convincing them to let you out can be a fun game... if you're into that sort of thing! Anyway, here you go!@@" They hand you a small key on a chain and you hang it from your neck. "@@.npc_harassment_assist;Oh, and I was a bit naughty and already checked, there's a small LED on the key that lights up when you're close to the matching chastity device. Just so you know, I don't have your key, and, well, I already found who has mine... they said to be unlocked I have to let them gag me and I, like, needed to talk to you first! Anyway there's nothing you need to worry about actually doing until late afternoon when we all head back to prepare for tonight's awards ceremony so... have fun!@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> dashes off, their cute bum bouncing with each step and you think about what you want to do.<br>
<br>
[<<moveTo "event_corporate_retreat_beach_root" 'Look around.' 300>>]
</div>/*#
#desc: corporate retreat beach root
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
You look around the beach filled with sexy submissives and think about what you want to do.<br>
<br>
<<include "beachOptions">>
</div><<if $player.flags.retreat.beach.lounge && $player.flags.retreat.beach.key && $player.flags.retreat.beach.unlocked && $player.flags.retreat.beach.rescue && (!$fetish.tentacle || $player.flags.retreat.beach.octopus)>>
<<set _lateAfternoon = setup.setNextDate($now, 0, 16, 0)>>
<<set _timeToEnd = setup.secondsToDate($now,_lateAfternoon)>>
[<<moveTo "event_corporate_retreat_beach_relax_1" "You don't see anything else to do, just relax for the rest of the afternoon." _timeToEnd>>] <<hint $options "Note: you will be unable to return to the beach to experience anything you missed.">>
<<else>>
<<if $player.flags.retreat.beach.lounge>>
<<if $scene.help>>
[@@.link_locked;You have already spent time lounging in the sun.@@]<br>
<<elseif $player.plocation != "event_corporate_retreat_beach_lounge_2">>
[<<moveTo "event_corporate_retreat_beach_lounge_2" 'Circle back and ask <<=setup.getNpcName("npc_secretary","nickname")>> if she could help you change the results of the contest.' 600 "<<set $scene.help=true>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_corporate_retreat_beach_lounge_1" 'Find a nice chair and lounge about.' 300>>]<br>
<</if>>
<<if $player.flags.retreat.beach.key>>
<<if setup.checkItemInInventory('universal_key')>>
[<<moveTo "event_corporate_retreat_beach_unlocked_play_1" 'Unlock yourself and play.' 300>>]<br>
<<else>>
[@@.link_locked;You have already found your keyholder and failed to earn your key.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_corporate_retreat_beach_key_1" 'Try to track down your keyholder.' 300>>]<br>
<</if>>
<<if $player.flags.retreat.beach.unlocked>>
[@@.link_locked;You have already found who your key fits to.@@]<br>
<<else>>
[<<moveTo "event_corporate_retreat_beach_unlock_1" 'Look for who your key fits.' 300>>]<br>
<</if>>
<<if (!$fetish.tentacle || $player.flags.retreat.beach.octopus) && $player.flags.retreat.beach.rescue>>
[@@.link_locked;You have already gone for a swim.@@]<br>
<<else>>
[<<moveTo "event_corporate_retreat_beach_water_1" 'Head for the water.' 300>>]<br>
<</if>>
<<set _lateAfternoon = setup.setNextDate($now, 0, 16, 0)>>
<<set _timeToEnd = setup.secondsToDate($now,_lateAfternoon)>>
[<<moveTo "event_corporate_retreat_beach_relax_1" "You don't feel like doing anything else, just relax for the rest of the afternoon." _timeToEnd>>] <<hint $options "Note: you will be unable to return to the beach to experience anything you missed.">>
<</if>>/*#
#desc: corporate retreat beach lounge around
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.retreat.beach.lounge = true>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" _TODObeachbimbos>>
<div id="invframe" class="scrolltext">
You spot some chairs and grab a seat, enjoying the fresh sea air and the feel of sunlight on your skin, two things that are in short supply back in the city.<br>
<br>
A smile on your face you almost start to drift off when a shadow falls over you. "@@.generic_female1;Hey, isn't that <<=ps(setup.getNpcName("npc_manager","other"))>> secretary?@@" You look up to see a group of women including <<=setup.getNpcName("npc_secretary","nickname")>> walking towards you. All of them are drop-dead gorgeous, their swimsuits immaculately fitted, tight enough to highlight every detail of their pierced nipples and chastity devices, with styles ranging from a latex dominant edge to "about to pop free" bimbo-riffic.<br>
<br>
<<if $scene.win>>
"@@.generic_female2;Yeah, that's totally her — grats on the race by the way, that was really impressive!@@"
<<elseif !$scene.abortRace>>
"@@.generic_female2;Yeah, that's totally her — I recognise her from the race yesterday.@@"
<<else>>
"@@.generic_female2;Yeah, that's totally her — I recognise her from the race yesterday, well, the pre-race, I should say.@@"
<</if>>
<br><br>
You look up as the girls walk over and sit down around you. It seems this group is composed of most of the more senior executive assistants — there is <<=setup.getNpcName("npc_secretary","nickname")>>, of course, but about half the rest serve Directors, and bear the marks from the previous days race, while the rest are attached to more specialised high-level executives.<br>
<br>
"@@.generic_female1;Oh, don't look so intimidated!@@" One of them states after they've finished with introductions. "@@.generic_female1;After all, you'll be joining us upstairs soon enough!@@"<br>
<br>
You respond with confusion, pointing out that your <<=setup.getNpcName("npc_manager","title")>> seems pretty dead-set against the idea.<br>
<br>
"@@.generic_female2;The decision is already made.@@" Another chips in. "@@.generic_female2;She's going to win Director of the Year, cue applause, boom, new office.@@"<br>
<br>
There is some minor grumbling from the other Directorial-level assistants at their boss' forthcoming ire at having lost out. For your part you express confusion at the confident assessment, you thought that the decision was supposed to be a mystery up until the evening ceremony. "@@.generic_female1;Hey, I got it straight from the whore-ess' mouth@@" she jokes, jerking a finger towards <<=setup.getNpcName("npc_secretary","nickname")>> who has been silent this whole time.<br>
<br>
"@@.npc_secretary;Yes, I was there this morning to supervise tallying up the votes. Officially, it's a secret until tonight, but the envelopes are already stuffed and waiting.@@"<br>
<br>
<<printThought "Waiting, does that mean...?">><br>
<br>
[<<moveTo "event_corporate_retreat_beach_lounge_2" 'Ask if there might be a way to sneak in and change the results?' 300 "<<set $scene.help=true>>">>]<br>
[<<moveTo "event_corporate_retreat_beach_lounge_2" 'Ask about the upper floors.' 300 "<<set $scene.help=false>>">>]
</div>/*#
#desc: corporate retreat beach lounge around
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
<<if $scene.help>>
You ask <<=setup.getNpcName("npc_secretary","nickname")>> if, since she knows where the envelopes are, she could show you? She seems hesitant until you point out that your <<=setup.getNpcName("npc_manager","title")>> really doesn't want to win, and wouldn't she like to help her previous boss for "old time's" sake? <br>
<br>
You're suddenly worried you might have struck a nerve as everyone around you falls silent awaiting her response.<br>
<br>
"@@.npc_secretary;Hmm... okay, sure. I don't understand why she wouldn't want such an honour but... if you say that's what she wants I'll try to help you. Come on.@@"<br>
<br>
She stands up and starts walking up the sand.<br>
<br>
[<<moveTo "event_corporate_retreat_mission_1" 'Follow.' 1800>>]<br>
<<else>>
You ask the women about what's so special about the "upper floors" and they look amongst one another sharing smiles.<br>
<br>
"@@.generic_female1;Well, let's see... you know how things have been this weekend? All the "fun" happening in the open? Well... once you get past floor one hundred that's the rule all the time.@@"<br>
<br>
"@@.generic_female;Yup,@@" adds another woman, her eyes sparkling. "@@.generic_female2;The order of the day is work hard, play hard, and do both at the same time. An executive's rule is law, in all things and it is up to us to provide for their every need... while sating our own, in the process.@@"<br>
<br>
You nod, not so much surprised, given your own employment progression but, still, the thought that things could get even more extreme? Fear, excitement, and, most of all, arousal, swirl in your mind as the conversation drifts on to other things.<br>
<br>
[<<moveTo "event_corporate_retreat_beach_lounge_2" 'Ask <<=setup.getNpcName("npc_secretary","nickname")>> if she could help you change the results of the contest.' 600 "<<set $scene.help=true>>">>]<br>
<<include "beachOptions">>
<</if>>
</div>/*#
#desc: corporate retreat beach look for keyholder
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.retreat.beach.key = true>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" "senior_secretary_beach">>
<div id="invframe" class="scrolltext">
Very aroused by the sight of all your sexy fellow "executive assistants" you join other desperates in running around looking for their temporary keyholders. Your luck is... mercurial as, while you find your keyholder after not too much trouble, said possessor of your key turns out to be a senior Secretary who looks up at you with a predatory grin.<br>
<br>
"@@.generic_female2;So,@@" she states, fiddling with the key as she leans back under her umbrella. "@@.generic_female2;You want this... well, you have to earn it. After all, what sort of example would I be setting if I just gave it away without first checking that you are worthy? I would not wish to reward someone who was lackadaisical.@@"<br>
<br>
She leans back. "@@.generic_female2;You can start by fetching me a drink, a Sex on the Beach... you know the thing you won't be having unless you do EVERYTHING I say...@@"<br>
<br>
[<<moveTo "event_corporate_retreat_beach_key_2" 'Go get her drink.' 600 "<<set $scene.drink=true>>">>]<br>
[<<moveTo "event_corporate_retreat_beach_key_2" "Actually... you don't care about your key that much." 60 "<<set $scene.drink=false>>">>]
</div>/*#
#desc: fetch drink for keyholder
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.drink>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" "senior_secretary_beach">>
<div id="invframe" class="scrolltext">
<<if $scene.drink>>
You hurry across the beach to a drink stand and place the order, returning with your delivery as your keyholder smiles up.<br>
<br>
"@@.generic_female2;Lovely,@@" she states, taking a sip. "@@.generic_female2;Now be a dear and fan me a bit — the breeze has died down and I am feeling a bit warm.@@"<br>
<br>
She gestures towards a stack of artificial palm fronds a few meters away.<br>
<br>
[<<moveTo "event_corporate_retreat_beach_key_3" 'Grab a fan and do as she commands.' 1800>>]<br>
[<<moveTo "event_corporate_retreat_beach_key_2" "Actually... you don't care about your key that much." 60 "<<set $scene.drink=false>>">>]
<<else>>
You consider the offer but decide that getting unlocked isn't worth submitting to a stranger on your so-called "off-time." She shrugs and goes back to her sun-bathing as you walk away.<br>
<br>
<<include "beachOptions">>
<</if>>
</div>/*#
#desc: fan keyholder
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'very' $EXPOSED>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" "senior_secretary_beach">>
<div id="invframe" class="scrolltext">
You curtsy and dutifully grab a fan, waving it gently over your keyholder as she leans back and enjoys her drink. She treats you much like a piece of the scenery as she slowly sips her drink. The sun beats down on you as she lounges, other passing beach-goers smiling at you in understanding at what you're up to.<br>
<br>
Your keyholder finishes her drink and places it to one side before rolling over, in so doing exposing her back and giving you a brief glimpse of her slightly bulged
<<if $player.sec_style.submission.sissyomatic != "" || $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $currentTasks.hasOwnProperty('task_sissyomatic_steal')>>
<<=setup.getItemName('sissyomatic')>> chastity device.
<<else>>
high-tech chastity device.
<</if>>
"@@.generic_female2;Be a dear and sunscreen my back... and stop staring at my ass. I already earned my key but I am, of course, remaining plugged and chaste — how do you think I rose to such a senior level? Obedience, even when your owner is not watching, that is the secret to success.@@"
<br>
<br>
[<<moveTo "event_corporate_retreat_beach_key_4" 'Grab the bottle of sunscreen and do as she commands.' 600>>]<br>
[<<moveTo "event_corporate_retreat_beach_key_2" "Actually... you don't care about your key that much." 60 "<<set $scene.drink=false>>">>]
</div>/*#
#desc: lotion keyholder + get key
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'very' $EXPOSED>>
<<addItem 'universal_key'>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" "senior_secretary_beach">>
<div id="invframe" class="scrolltext">
You untie your keyholder's bra-strap and start rubbing sunscreen into their skin. Their short, but well-curved, frame means you are finished in not too much time, but you spend some additional effort making sure everything is rubbed in, and give some extra attention to some tight parts of her back, before tying their bra.<br>
<br>
"@@.generic_female2;Mmm, very well done. You seem to have a natural talent for massage, that's the sort of skill that can really help move your career along. Remember, while your title may be some sort of <<if $fetish.sissy>>SISSI <</if>>Secretary — your JOB is to assist your owner and make their life, and work, easier in every way possible. EVERY way.@@"<br>
<br>
She gives you a moment to think on that before offering your key. "@@.generic_female2;You've earned this. Note that it will only work today, and it will set off an alarm if, after unlocking things, it gets too far from your chastity device. It's meant to be a reward, not an excuse to escape. So... enjoy your freedom... or don't. But remember what I said.@@"<br>
<br>
You hold your breath as you take the key in hand, thanking her for her time as she returns to her sun-bathing and you walk away.<br>
<br>
<<include "beachOptions">>
</div>/*#
#desc: corporate retreat beach unlock someone choices
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.retreat.beach.unlocked = true>>
<<changeHorny 20>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
You wander across the beach, trying to find what chastity device your key unlocks. In the process of visiting many of your fellow "executive assistants" you make an interesting discovery; they appear to fall into two categories — the handful of more recent hires, like yourself, and the more senior majority that has been with the company for more than a year.<br>
<br>
Of course sexy, mostly submissive, and definitely kinky behaviour is the standard, but your brief conversations seem to indicate a stark difference in progression. From what you gather the more "tenured" employees were, in part, recruited specifically for their interests, whereas the newer employees, though no less enthusiastic, seem to have come upon those desires after getting their jobs.<br>
<br>
It is one of these more "junior" employees that you eventually find is the match for your key...<br>
<br>
You look at the employee who is now at your figurative "mercy" and almost wonder if someone pulled strings to give you this power over them, because their appearance is almost unreal, the product of good genetics and who knows how much "work." Taller than yourself — even accounting for heels, they look like they stepped out of a fetishistic drawing, waist-length hair, breasts the size of their head straining against their cute pink swimwear... and with a similarly oversized bulge between their legs.<br>
<br>
They giggle and smile at you, acting
<<if setup.getTotalValue("feminization") > 15>>
as overly <<if $fetish.sissy>>sissified<<else>>feminised<</if>> as yourself.
<<else>>
even more <<if $fetish.sissy>>sissified<<else>>feminised<</if>> than yourself.
<</if>>
<br><br>
"@@.generic_male1;Oh, you're so cute!@@" They state as they wait for you to make a decision, their tone an artificially high affectation that makes them sound permanently eager. "@@.generic_male1;So... what <<if $fetish.sissy>>does this sissy<<else>><<if $options.fem>>do I<<else>>does this boi<</if>><</if>> need to do to earn being unlocked?@@" They bat their eyes at you and your belly clenches as your arousal jumps even higher.<br>
<br>
[<<moveTo "event_corporate_retreat_beach_unlock_2" 'Refuse to unlock them, "for their own good."' 600 "<<set $scene.action='refuse'>>">>]<br>
<<if $player.body_ref.penis && $player.virgin.penis && $player.virgin.top_fem>>
[<<moveTo "event_corporate_retreat_beach_unlock_2" "Say you'll only unlock them after they give you a full tour of their holes..." 600 "<<set $scene.action='tour'>>">>]<br>
<</if>>
<<if $player.virgin.blowjob>>
[<<moveTo "event_corporate_retreat_beach_unlock_2" "You'll only unlock them if they promise to let you have a taste of the mouth-watering package they have locked away." 600 "<<set $scene.action='oral'>>">>]<br>
<<else>>
[@@.link_locked;You don't feel like sucking your first cock like this.@@]<br>
<</if>>
<<if $player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal)>>
[<<moveTo "event_corporate_retreat_beach_unlock_2" "You'll unlock them if they promise to let you have a ride after..." 600 "<<set $scene.action='ride'>>">>]<br>
<<else>>
[@@.link_locked;You don't feel like having anal for the first time like this.@@]<br>
<</if>>
[<<moveTo "event_corporate_retreat_beach_unlock_2" "Do not demand anything in trade for their key." 600 "<<set $scene.action='nothing'>>">>]
</div>/*#
#desc: corporate retreat beach unlock someone
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.retreat.beach.unlock[$scene.action] = true>>
<<if $scene.action != "refuse">>
<<deleteItem 'retreat_key'>>
<</if>>
<<switch $scene.action>>
<<case 'refuse'>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'very' $EXPOSED>>
<<case 'tour'>>
<<if setup.checkItemOwned('universal_key')>>
<<playerOrgasm>>
<<set $player.timebased.horny = 50>>
<</if>>
<<case 'oral'>>
<<applyExperience 'oral' 13 'very' $EXPOSED>>
<<applyExperience 'cum' 13 'very' $EXPOSED>>
<<case 'ride'>>
<<playerOrgasm>>
<<applyExperience 'anal' 13 'very' $EXPOSED>>
<<case 'nothing'>>
<<applyExperience 'submission' 13 'normal' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'refuse'>>
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
Your word drip with the full force of your now extensive dominant skill as you inform them
<<else>>
With a dominant grin you reply
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
You muster what dominant skill you have to inform them
<<else>>
You take a deep breath and inform them
<</if>>
<</if>>
that, actually you will be holding onto their key; that you did not want them spending their whole day searching for their keyholder, but that it will be much better for them to remain obediently locked, and so locked they will remain.<br>
<br>
They literally moan, their entire body shuddering as they whisper back "@@.generic_male1;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>.@@"<br>
<br>
You are almost transfixed as you watch their breasts jiggle and you marvel at the engineering skill of whoever designed the thing to stay in place in the presence of such force. "@@.generic_male1;Goddess... you're right being locked, caged and filled... that is what I need, I'm so glad you had the self control to put me in my place... fuck every time I think of it, that you could have me in a moment, but that you'd rather I stay locked up... I can see why <<=setup.getNpcName("npc_manager","other")>> trusts you to be her <<if $fetish.sissy>>SISSI <</if>>Secretary... you are the perfect extension of her will.@@"<br>
<br>
With a deep curtsy they walk away, their THICC ass jiggling with each swaying step as they wander up the beach.
<<case 'tour'>>
You grin and reply that you'll only let them out if they let you enjoy a tour of their holes first.<br>
<br>
They grin and slide to their knees. "@@.generic_male1;Mmm, for a hottie like you, I'd do that even if my key wasn't on the line! Though... I'll note that you'll need to unlock me anyway to finish your tour — I've got a cute little cunny locked away wet and ready for you to enjoy.@@"<br>
<br>
<<if $player.body_ref.penis && setup.checkItemOwned('universal_key')>>
Using the key you earned earlier you unlock yourself and their lips part for the first stop on your tour. They suck eagerly,
<<switch $player.body.penissize[0]>>
<<case 0 1>>
their long tongue <<if $player.body_ref.balls>>working your balls<<else>>spiraling around your small member<</if>> with such skill and passion
<<case 2 3>>
wrapping their large mouth around your <<getWordMyPenis false>> and moaning enthusiastically as they suck.
<<case 4 5>>
deep-throating you with casual ease and moaning with delight as they suck your large <<getWordMyPenis false>>.
<<case 6>>
managing to deep-throat your massive <<if $player.body_ref.knot && $player.body_ref.horsecock>>dragon<<elseif $player.body_ref.horsecock>>horse<<elseif $player.body_ref.knot>>dog<</if>> cock. Their eyes roll back in obvious pleasure as their throat stretches to accommodate your length and girth.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
You have to bite your lip to the point of pain to resist cumming early.<br>
<br>
You're dripping with saliva as they eagerly turn over, wiggling their plug-gaped ass in invitation, an invitation you enthusiastically accept, pounding them
<<switch $player.body.penissize[0]>>
<<case 0 1>>
hard. The hollow plug built into their chastity belt provides enough girth that they moan in pleasure even with your small member.
<<case 2 3>>
hard. The hollow plug built into their chastity belt provides some additional girth that has them moaning in ecstasy as you thrust away.
<<case 4 5>>
hard and deep. The hollow plug built into their chastity belt takes you from large to drink-can thickness, but from their moans they obviously love it.
<<case 6>>
hard and deep. It's a bit of an effort to get your massive member to fit through the hollow plug build into their chastity belt, but once <<if $player.body_ref.knot>>you have them knotted<<else>>you're in<</if>> they are in obvious ecstasy, their entire body moving with each thrust as they beg for more.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<br><br>
Forcing yourself away lest you climax prematurely your fingers tremble as you unlock their belt to reveal the final "prize" — their large cock hard with excitement as the plug they had locked in their <<getWordVagina>> slides free to display their <<if $fetish.futanari>>full futa<<else>>dual<</if>> glory. They look up at you from their back, stroking their large cock with one hand as their other holds their balls out of the way for you to thrust into them. They cum at the first insertion — but you keep going, pounding them until they're a puddle in the sand, their own cum painting their breasts and face while leaking down between their cheeks.
<<else>>
<<if $player.body_ref.penis>>
Locked yourself, you
<<else>>
You
<</if>>
take a moment to fetch a large strap-on and their eyes light up with anticipation on their way to their knees.<br>
<br>
You may have a silicone cock but they suck with passionate enthusiasm, taking the large artificial member "balls deep" and showing off their throat bulge in the process of getting everything saliva-slick.<br>
<br>
Turning over they present their ass for your next use — the clean hole inviting as it gapes wide thanks to the hollow plug built into their chastity belt. You slam home with ease, and they moan with lust, the swelled, double-full effect of their combination of large dildo and stretching plug so stimulating they actually push away, turning over and presenting their securely locked chastity belt in clear indication that they want their orgasm to come at the final "stage" of your journey...<br>
<br>
You unlock their belt to free their massive meat-stick and remove the sizable plug that had been locked inside. With their cock in one hand, and balls in the other, they give you a clear path and you thrust hard and deep, grinding against their hips as they stroke themselves, cumming all over their breasts and face as well as squirting around your silicone appendage.
<</if>>
<br><br>
"@@.generic_male1;Oh fuck... thank you... thank you for the key. I'm... I'm just going to lay here for a bit.@@" They pant, eyes unfocused, expression stuck in ahegao bliss.
<<case 'oral'>>
You smile and reply that you'll unlock them, if they're willing to let you have a taste of the spicy sausage they have locked away.<br>
<br>
They grin. "@@.generic_male1;Of course, hun, but there's more than a sausage down there, and you're welcome to try the dip as well...@@"<br>
<br>
Moments later and their chastity belt is removed to reveal a large and proudly erect cock, and a dripping cunt below.<br>
<br>
Your fingers take the place of the locked-in plug that had been inside them as you hungrily suck on their delicious meat-stick.<br>
<br>
They moan and whisper encouragement as you suck,
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
showing off your extensive skill as you take them all the way, your throat stretching in welcome as you finger and slurp.
<<else>>
managing to deep-throat them successfully as you pump away with two fingers.
<</if>>
<<else>>
kissing and licking your way up and down the too-large shaft as you pump away with two fingers.
<</if>>
<br><br>
It isn't long before they double-orgasm; gushing across your palm at the same time they spurt a thin, but
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
yummy
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
strangely delicious,
<<else>>
not unpalatable
<</if>>
<</if>>
prize across your tongue.<br>
<br>
The both of you take a moment to catch your breath before they pull you in for a kiss, tongue roaming your face to clean you off of their juices. "@@.generic_male1;Mmm, feels like I won both parts of that trade, but then I look at your smiling face, and, well...@@" they wink. "@@.generic_male1;Thanks, I'll see you around.@@"<br>
<br>
They stand up, exposed cock swaying as they head up the beach to enjoy their temporary parole.
<<case 'ride'>>
You reply that you'll let them out, if they'll take you for a ride after.<br>
<br>
They grin. "@@.generic_male1;Of course, sugar — what's the point of parole if you can't indulge in conjugals?@@"<br>
<br>
You smile back and they're soon lying back on a towel, belt to one side as you squat down on their large, hard, cock.<br>
<br>
You moan as the massive meat-missile bottoms out inside of you, rocking back and forth as they thrust up; each motion sending their large breasts to jiggling as they smile up at you.<br>
<br>
<<if $player.body_ref.vagina && $player.virgin.vaginal && setup.checkItemOwned('universal_key')>>
Not content to have them only one way you rise up just high enough to switch holes, the feel of them slamming up into your front hole, the geyser of pleasure almost having you fall over — their strong, supportive hands the only thing keeping you upright as you enjoy a chain of orgasms that leaves you breathless and barely able to stand when you finally stagger back to your feet.
<<else>>
Your eyes roll back in pleasure as they manage to perfectly angle to pressure your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>, each thrust pushing you higher and higher metaphorically, and physically, until you experience full-on analgasm mounted and impaled, your head snapping back for a moment before you go limp. Strong arms gently guide you off and then help you back to your feet.
<</if>>
<br><br>
"@@.generic_male1;Whew! It's going to be hard to top that.@@" The say with a wink, their large member still stiff as they begin to eye the rest of the beach for their next partner. You nod and wish them luck as they scamper away to enjoy the rest of their day.
<<case 'nothing'>>
You hand over the key.<br>
<br>
They accept the key but look almost disappointed. "@@.generic_male1;Wow, really? You're just going to let me have it, no strings attached?@@"<br>
<br>
You nod, explaining that being an employee of Social Interaction Service Syndicate Inc. is hard enough on the face. "@@.pc;This morning is about relaxing... so... relax!@@"<br>
<br>
Still obviously surprised they pull you in for a hug, your face pressed against a VERY full bosom for a few moments before they scamper off across the beach to have fun with their key.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<include "beachOptions">>
</div>/*#
#desc: corporate retreat beach swim
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.retreat.beach.swim = true>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
You walk out into the water, your steep heels slicing into the soft, wet, sand. The water itself is pleasantly warm, small waves washing against your body as you notice a strange sign warning to beware of octopuses.<br>
<br>
<<if $player.flags.retreat.beach.octopus>>
<<if $fetish.bestiality_hard && $fetish.tentacle>>
[@@.link_locked;You have already tangled/been "blessed" by an octopus.@@]<br>
<<else>>
[@@.link_locked;You have no interest in swimming out again.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_corporate_retreat_beach_water_octopus_1" 'Wade out further.' 600>>]<br>
<</if>>
<<if $player.flags.retreat.beach.rescue>>
[@@.link_locked;You have already played lifeguard.@@]
<<else>>
[<<moveTo "event_corporate_retreat_beach_water_rescue_1" 'Keep closer to shore.' 600>>]
<</if>>
</div>/*#
#desc: corporate retreat beach ambushed by octopus
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.retreat.beach.octopus = true>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
You keep wandering further until the ground drops out from under you. Closing your eyes you lean back, enjoying the relaxing feeling of just floating as you bob pleasantly with each passing wave.<br>
<br>
<<if $fetish.bestiality_hard && $fetish.tentacle>>
The first indication that something is wrong is feeling something slowly wrap around your ankle. You figure it for some stray seaweed and flutter-kick to get rid of it only to be reminded of the warning sign as you are roughly yanked under the water. You flail in surprise only for more of what you now realise are tentacles to wrap around you, one each entwining your arms as the remaining four wrap around your torso.<br>
<br>
Your struggles get more frantic as you run out of air, only to realise that you are now moving up?<br>
<br>
You burst out of the water, taking a deep gasp of air only for a tentacle to take the opportunity to jam its way into your mouth.<br>
<br>
[<<moveTo "event_corporate_retreat_beach_water_octopus_2" 'What on earth?' 600>>]
<<else>>
Nothing seems to be happening and you decide to head back to shore before you wash out to sea, or turn pruny.<br>
<br>
<<include "beachOptions">>
<</if>>
</div>/*#
#desc: corporate retreat beach fucked by octopus
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 14 'terrible' $EXPOSED>>
<</if>>
<<applyExperience 'anal' 14 'terrible' $EXPOSED>>
<<applyExperience 'oral' 14 'terrible' $EXPOSED>>
<<applyExperience 'bondage' 14 'terrible' $EXPOSED>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
Your scream for help stifled in your throat you find yourself floating face up, the octopus still gripping you tight with its many-sucked limbs as it violates your throat, and begins to explore under your swimsuit.<br>
<br>
You gasp as it finds your plug, the tentacle in your mouth taking the opportunity to thrust a little deeper down your throat, your tongue tingling as it licks a large, smooth suction cup. Proving its problem-solving intelligence the octopus <<if setup.checkItemTypeWorn("plug", true)>>pulls the plug out of you rear and <</if>><<if setup.checkItemTypeWorn("hollow_plug")>>threads through your hollow-plug gaped rear to fill you<<else>>replaces it<</if>> with not one, but two of its writhing tentacles. Twisting and flexing the appendages tunnel deeper, nimble tips pulling their way through your bowels as the tentacles curl and pressure against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
<<switch $scene.swimsuit>>
<<case 'stringkini'>>
Your stringkini provides not the slightest protection as the octopus sends a pair of tentacles to wrap around your
<<case 'one_piece'>>
Continuing its exploration under your bathing suit you feel the fabric stretch as two more tentacles wrap around your
<<case 'slingshot'>>
Without its lower "mounting" point your bikini floats around your neck, the octopus taking advantage to reach two tentacles around your
<</switch>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
massive breasts, barely wrapping and coiling around them,
<<case 'large'>>
large breasts, squeezing them tight as they coil around and around,
<<case 'medium'>>
breasts, squeezing them tight as they coil around and around,
<<case 'small'>>
small breasts, squeezing them tight as the strong suckers make you temporarily larger,
<<case 'none'>>
chest,
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
finishing off with the delicate tip of each tentacle pinching your nipples.<br>
<br>
Limbs restrained, groped, and violated you moan as you float, your humiliation deepened even further when someone on shore notices your predicament, and waves at you in encouragement!<br>
<br>
You shudder as the tentacles work deeper, a small crowd forming on the shore as the woman who spotted at you points towards your predicament. In between waves you catch looks of lust... and jealousy as the octopus continues to tentacle-fuck you from both ends<<if $player.body_ref.penis>>, your <<getWordMyPenis>> straining in response,<<if $player.body_ref.cum == 0>> and then cumming excitedly<<else>> only to spurt its salty offering into the sea<</if>><<else>> as you cum, the sea washing away the liquid evidence of your explosive orgasm<</if>>.<br>
<br>
Somehow sensing your climax the octopus retreats in an instant. <<if $player.body_ref.vagina || $player.body_ref.cum == 0>>You catch a glimpse of it slurping up your floating trail and then it<<else>>As mysteriously as it attacked, it<</if>> jets away, only for a couple of the people on shore to dive into the water and swim after it.<br>
<br>
Bobbing close enough to find your footing you fumble your swimsuit back into position before walking towards shore, encouraged by cheers and greetings the whole time, your coworkers welcoming you with some hearty pats on the back and "@@.generic_male1;You go girls!@@" as you are informed that it is considered to bring great fortune if one of the giant mutant octopuses that lurks off-shore deigns to choose you.<br>
<br>
<<include "beachOptions">>
</div>/*#
#desc: corporate retreat beach rescue coworker
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
You're walking along the shore up to your knees in the surf, when you hear a splash, looking further out to see a head-shaped thing bob under the waves.<br>
<br>
<<if $scene.swimsuit == "one_piece">>
Channeling your swimsuit you
<<else>>
On reflex you
<</if>>
rush into the water, heading straight for the flailing swimming just as a life preserver goes flying past your head.
<br><br>
Grabbing the preserver for support you reach out towards the centre of the flailing splashing. You can't see what you're doing but you feel something slick and rubbery. The wet latex makes your task harder but you manage to use your legs for assistance and get a hold around the troubled swimmer, their flailing fading once they realise that you have them and are no longer sinking. A rope attached to the life preserver pulls the both of you towards shore.<br>
<br>
[<<moveTo "event_corporate_retreat_beach_water_rescue_2" 'Check who you rescued.' 600>>]
</div>/*#
#desc: corporate retreat beach rescue coworker
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.retreat.beach.rescue = true>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
<<if $fetish.pet_play>>
Your arms are wrapped around, for lack of a better term... a human puppy. Arms and legs bound in latex to force them into an all fours "bitchsuit" position, and capped off with a latex hood and a thick tail plug you lock eyes with them and recognise <<=setup.getNpcName("npc_retention_assistant","first")>>, <<=ps(setup.getNpcName("npc_retention","formal"))>> assistant!<br>
<br>
Back on shore the human pup coughs up some water through its mask and then flops on its back in invitation. You can't resist some tummy rubs, though the fact that neither of you has the other's key means you're restricted to that and a bit of tail-plug wiggling.<br>
<br>
Wiggling in excitement it's obvious <<he npc_retention_assistant>> enjoys it, perking up quickly and rubbing up against your leg in thanks before bounding across the sand in the direction of some people playing frisbee.
<<else>>
Dressed head to toe in latex it isn't until you lock eyes with your unfortunate near drown-ee that you recognise <<=ps(setup.getNpcName("npc_retention","formal"))>> assistant.<br>
<br>
Once you're on shore and <<he npc_retention_assistant>> manages to cough the sea-water out of <<his npc_retention_assistant>> lungs <<he npc_retention_assistant>> thanks you profusely. "@@.generic_male1;Thank you so much! I guess I need to show a bit more care trying to find an octopus to wrestle! Thanks again for the assist, I'd offer to make it up to you but... it seems our keys aren't a match. I think I'm going to have a lie down way away from the water for a bit!@@"<br>
<br>
<<He npc_retention_assistant>> wanders off up the beach, tight latex glistening in the sun.
<</if>>
<br><br>
<<include "beachOptions">>
</div>/*#
#desc: corporate retreat beach relax until afternoon
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -15>>
<<applyFatigue -50>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
You spend the remainder of the afternoon relaxing until the beach begins to clear out as people head back to prepare for the evening's ceremony.<br>
<br>
[<<moveTo "event_corporate_retreat_beach_finish" 'Return to your cabin.' 300>>]
</div>/*#
#desc: corporate retreat end of beach
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
You head back to the cabin, walking inside to find <<=setup.getNpcName("npc_manager","formal")>> waiting for you.<br>
<br>
It looks like she has just stepped out of the shower, her cool blue silk robe perfectly balanced against her fiery red hair.<br>
<br>
<<if !$player.sec_style.body.hair_body>>
The moment she lays eyes upon you she immediately stops to stare at you. You remember turning down the lazer hair removal opportunity this morning... but you would swear the heat of <<=ps(setup.getNpcName("npc_manager","formal"))>> glare is on its way to doing the job as she ignores your swimsuit for her eyes to flit across your thin, but still visible, hair.<br>
<br>
"@@.npc_manager;No, no, no... this? I realise that I have, perhaps shown leniency on account that, thanks to those lovely testosterone blockers<<if $player.sec_style.body.hormones>>, plus your hormones<</if>> your body hair has softened and thinned out considerably... but seeing you like this, in an otherwise <<switch $scene.swimsuit>><<case 'strinkini'>>skimpy<<case 'one_piece'>>sexy<<case 'stringkini'>>slutty<</switch>> swimsuit? No it is an abomination. And it ends NOW.@@"<br>
<br>
Before you can react, <<=setup.getNpcName("npc_manager","formal")>> is dragging you into the bathroom. From unseen holes in the ceiling above the shower a pair of wrist cuffs descent, matching attachment points on the tile floor of the shower soon have you restrained spread eagle as <<=setup.getNpcName("npc_manager","formal")>> digs out a wicked looking device about the size of a shaver.<br>
<br>
"@@.npc_manager;Now, normally laser hair removal would not hurt all that much... but, in your case, well... I had someone in Product Research and Development coordinate with <<=ps(setup.getNpcName("npc_discipline","formal"))>> team to make something as functional... as it is agonising.@@" She pulls the trigger and a scary bolt of electricity arcs across the end of the device... and she walks towards you.<br>
<br>
[<<moveTo "event_secretary_style_bodyhair_strict_1" 'I really should have taken <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> offer...' 1800>>]
<<else>>
"@@.npc_manager;Have a good day? I wish I could say the same but while these planning meetings are important, they tend to be a bit dry. No matter, that is in the past, tonight we have a gala to attend. How about you go wash off all that sand and I will get your outfit ready for you.@@"<br>
<br>
<<if setup.checkItemInInventory('universal_key')>>
[<<moveTo "event_corporate_retreat_return_key_1" 'Turn over the key you "earned."' 300>>]<br>
[<<moveTo "event_corporate_retreat_party_0" "Shower." 300>>]
<<else>>
[<<moveTo "event_corporate_retreat_party_1" "Shower." 300>>]
<</if>>
<</if>>
</div>/*#
#desc: corporate retreat beach unlock yourself
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
You find a nice spot to sit down and consider the key you "earned." <br>
<br>
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getTotalValue("submission") > 15>>
<<printThought "Do I really want to unlock myself for a moment of transitory pleasure?">>
<<else>>
<<printThought "Do I really want to unlock myself?">>
<</if>>
<<else>>
<<if setup.getTotalValue("submission") > 5>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<printThought 'It feels wrong to have my key without <<=setup.getNpcName("npc_manager","formal")>> having given it to me...'>>
<<else>>
<<printThought "It feels so weird to have my key again... almost... wrong?">>
<</if>>
<<else>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<printThought 'It feels weird to have my key without <<=setup.getNpcName("npc_manager","formal")>> having given it to me...'>>
<<else>>
<<printThought "It feels so weird to have my key again...">>
<</if>>
<</if>>
<</if>>
<br><br>
<<include "retreatBeachSexChoices">>
</div><<if $player.body_ref.penis>>
<<if $player.flags.retreat.beach.sexActs.jerk>>
[@@.link_locked;You have already tried jerking off.@@]<br>
<<else>>
[<<moveTo "event_corporate_retreat_beach_unlocked_play_2" 'Unlock and jerk off.' 600 "<<set $scene.action='jerk'>>">>]<br>
<</if>>
<<if $player.virgin.penis>>
<<if $player.flags.retreat.beach.sexActs.fuck_other>>
[@@.link_locked;You have had sex with someone else.@@]<br>
<<else>>
[<<moveTo "event_corporate_retreat_beach_unlocked_play_2" 'Unlock and find someone to fuck...' 600 "<<set $scene.action='fuck_other'>>">>]<br>
<</if>>
<</if>>
<<if $player.virgin.penis>>
<<if $player.flags.retreat.beach.sexActs.suck>>
[@@.link_locked;You have already gotten a blowjob.@@]<br>
<<else>>
[<<moveTo "event_corporate_retreat_beach_unlocked_play_2" 'Unlock and find someone to suck you off...' 600 "<<set $scene.action='suck'>>">>]<br>
<</if>>
<</if>>
<</if>>
<<if $player.body_ref.vagina>>
<<if $player.flags.retreat.beach.sexActs.finger>>
[@@.link_locked;You have already fingered yourself.@@]<br>
<<else>>
[<<moveTo "event_corporate_retreat_beach_unlocked_play_2" 'Unlock and finger yourself.' 600 "<<set $scene.action='finger'>>">>]<br>
<</if>>
<<if $player.virgin.vaginal>>
<<if $player.flags.retreat.beach.sexActs.fuck_you>>
[@@.link_locked;You have already had sex with someone.@@]<br>
<<else>>
[<<moveTo "event_corporate_retreat_beach_unlocked_play_2" 'Unlock and find someone to fuck you...' 600 "<<set $scene.action='fuck_you'>>">>]<br>
<</if>>
<</if>>
<</if>>
<<if State.passage == "event_corporate_retreat_beach_unlocked_play_1">>
<br>
[<<moveTo "event_corporate_retreat_beach_root" 'Leave your chastity device in place and do something else.' 60>>]
<</if>>/*#
#desc: corporate retreat beach sex unlocked
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.retreat.beach.sexActs[$scene.action] = true>>
<<if $scene.action != "lock">>
<<playerOrgasm>>
<<set $player.timebased.horny = 80>>
<</if>>
<<if ($scene.action == 'fuck_other' || $scene.action == 'suck') && $player.body.penissize[0] < 4 && $fetish.sph && $player.body_ref.shrink_style == 'sph'>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<</if>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'jerk'>>
You jerk yourself off, spilling your seed across the sand, and yet you find yourself still hard and horny...<br>
<br>
<<case 'fuck_other'>>
Chastity device in one hand you go looking for someone to fuck, and it isn't long before you find a taker for your offer, your hard <<getWordMyPenis false>> thrusting into <<if $options.fem>>her<<else>>their<</if>> eager hole.
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
<<if $fetish.sph>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph'>>
The whole time <<if $options.fem>>she ridicules<<else>>they ridicule<</if>> you about how tiny you are, and how <<if $options.fem>>she<<else>>they<</if>> can "barely feel" you. <<if $options.fem>>Her<<else>>Their<</if>> words only turn you on more as you fuck <<if $options.fem>>her<<else>>them<</if>> with everything you've got.
<<case 'spe'>>
<<if $options.fem>>She moans<<else>>they moan<</if>> softly, talking about how good you feel, how nice it is to fuck and not feel like they're being split in half.
<<case 'none' ''>>
<<if $options.fem>>She moans<<else>>they moan<</if>> with delight as you fuck <<if $options.fem>>her<<else>>them<</if>> as hard as you can.
<<default>>
ERROR: unhandled <<=$player.body_ref.shrink_style>>
<</switch>>
<<else>>
<<if $options.fem>>She moans<<else>>they moan<</if>> with delight as you fuck <<if $options.fem>>her<<else>>them<</if>> as hard as you can.
<</if>>
<<case 4 5>>
<<if $options.fem>>She bounces<<else>>they bounce<</if>> on you with glee, clearly enjoying the feel of your big <<getWordMyPenis false>> filling them up.
<<case 6>>
<<if $options.fem>>She moans<<else>>They moan<</if>> as <<if $options.fem>>her<<else>>their<</if>> body stretches to accommodate your <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly massive <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<<else>>massive <</if>>cock.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
The two of you work together as you fuck <<if $options.fem>>her<<else>>them<</if>> to not one, but two climaxes, yet even as you slide out of <<if $options.fem>>her<<else>>them<</if>> you find yourself still hard.<br>
<br>
<<case 'suck'>>
You don't have to go far before you find a sexy set of lips that are eager to wrap around your <<getWordMyPenis false>>.<br>
<br>
<<switch $player.body.penissize[0]>>
<<case 0 1 2 3>>
<<if $fetish.sph>>
<<switch $player.body_ref.shrink_style>>
<<case 'sph'>>
<<if $options.fem>>She spends<<else>>They spend<</if>> a few minutes teasing you about how small and pathetic you are before eagerly wrapping <<if $options.fem>>her<<else>>their<</if>> lips around you and letting <<if $options.fem>>her<<else>>their<</if>> tongue do a different sort of work.
<<case 'spe'>>
<<if $options.fem>>She takes<<else>>They take<</if>> a few moments admiring your member, talking about how <<if $options.fem>>she wishes she<<else>>they wish they<</if>> were so small and perfect and cute before putting <<if $options.fem>>her<<else>>their<</if>> tongue to an even more pleasurable use with <<if $options.fem>>her<<else>>their<</if>> lips wrapped completely around you.
<<case 'none' ''>>
<<if $options.fem>>She smiles<<else>>They smile<</if>> at you and give you a soft lick before wrapping <<if $options.fem>>her<<else>>their<</if>> lips completely around your small package.
<<default>>
ERROR: unhandled <<=$player.body_ref.shrink_style>>
<</switch>>
<<else>>
<<if $options.fem>>She smiles<<else>>They smile<</if>> at you and give you a soft lick before wrapping <<if $options.fem>>her<<else>>their<</if>> lips completely around your small package.
<</if>>
<<case 4 5>>
<<if $options.fem>>She deepthroats<<else>>They deepthroat<</if>> you without hesitation, proceeding through to a quite heavenly blowjob.
<<case 6>>
You really shouldn't be surprised, but you are impressed as you randomly-chosen partner deep-throats you with ease; taking every centimetre of your <<if $player.body_ref.knot && $player.body_ref.horsecock>>inhumanly massive <<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock with an eager moan.
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<<if $options.fem>>She sucks<<else>>They suck<</if>> you to an eager completion before<<if $fetish.cum>> standing up and locking lips with you to share your taste<<else>> and eagerly gulping down everything you have to offer<</if>>.<br>
<br>
Without so much as a word, or anything approaching an exchange of names, <<if $options.fem>>she winks and walks<<else>>they wink and walk<</if>> away, wiggling <<if $options.fem>>her<<else>>their<</if>> butt happily as you find yourself somehow still erect even after <<if $options.fem>>her<<else>>their<</if>> VERY effective efforts.<br>
<br>
<<case 'finger'>>
There's something about the beach air that has you feeling very wet and you waste no time sliding multiple fingers into your <<getWordVagina>>.<br>
<br>
Working fast you don't have long before you cum, your excited gasp garnering some slight attention as you are reminded that you're masturbating literally in public.<br>
<br>
A couple passing fellows look over with knowing, and in once case, jealous, smiles, but nobody bothers you further as you catch your breath and consider what to do next.<br>
<br>
<<case 'fuck_you'>>
Unlocked, chastity device in hand you go looking for where others currently enjoying freedom are hanging out.<br>
<br>
It doesn't take you long to find a nice fellow Secretary — with an equally nice hard cock who is willing to rail you, the warm sand on your back as <<if $options.fem>>she gives<<else>>they give<</if>> it to you hard and deep.<br>
<br>
You moan through several orgasms of your own before <<if $options.fem>>she finishes<<else>>they finish<</if>>, giving you a quick peck of thanks before leaving you to recover.<br>
<br>
Despite <<if $options.fem>>her<<else>>their<</if>> efforts, you still feel horny; there's just "something in the air" at this beach that seems to encourage that and you find yourself lightly fingering yourself<<if $fetish.cum>> and enjoying the taste of your intermingled flavours on your finger<</if>>, as you consider your next action.<br>
<br>
<<case 'lock'>>
You lock yourself back up. Having your <<=setup.getItemTypeName('cage')>> makes you strangely relax slightly; the responsibility of having your key in such an unsupervised manner is actually almost stressful.<br>
<br>
[<<moveTo "event_corporate_retreat_beach_root" 'Go do something else.' 60>>]<br>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<<if $scene.action != "lock">>
<<include "retreatBeachSexChoices">><br>
[<<moveTo "event_corporate_retreat_beach_unlocked_play_2" 'Lock yourself back up.' 180 "<<set $scene.action='lock'>>">>]
<</if>>
</div>/*#
#desc: return key to manager
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.checkItemInInventory("retreat_key")>>
<<deleteItem 'retreat_key'>>
<</if>>
<<if !($player.flags.retreat.beach.sexActs.jerk || $player.flags.retreat.beach.sexActs.fuck_other || $player.flags.retreat.beach.sexActs.suck || $player.flags.retreat.beach.sexActs.finger || $player.flags.retreat.beach.sexActs.fuck_you || $scene.action == "tour" || $scene.action == "ride")>>
<<set $player.flags.retreat.beach.virgin_return=true>>
<</if>>
<<deleteItem 'universal_key'>>
<<if $scene.choice=='cage'>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<removeItem $scene.cage true>>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_robe")>>
<div id="invframe" class="scrolltext">
<<if $player.flags.retreat.beach.sexActs.jerk || $player.flags.retreat.beach.sexActs.fuck_other || $player.flags.retreat.beach.sexActs.suck || $player.flags.retreat.beach.sexActs.finger || $player.flags.retreat.beach.sexActs.fuck_you || $scene.action == "tour" || $scene.action == "ride">>
<<if $scene.choice=='cage'>>
<<=setup.getNpcName("npc_manager","formal")>> accepts the key and removes the <<=setup.getItemName($scene.cage)>> with a nod. "@@.npc_manager;As agreed, I suppose I should not be surprised that you took the first opportunity to get back out of it, given your preferences.@@" You blush slightly as she tosses the device into a drawer, wondering if you made a mistake.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> grins as she takes the key, casually crushes it with one hand, and drops it into the trash. "@@.npc_manager;There, isn't that better? No longer burdened by that pesky responsibility... the real, original key in my possession, just as it should be. I hope you enjoyed your earned freedom?@@" She winks.
<</if>>
<br><br>
<<if (!$player.body_ref.penis || $player.flags.retreat.beach.sexActs.jerk && $player.flags.retreat.beach.sexActs.fuck_other && $player.flags.retreat.beach.sexActs.suck) && (!$player.body_ref.vagina || $player.flags.retreat.beach.sexActs.finger && $player.flags.retreat.beach.sexActs.fuck_you)>>
"@@.npc_manager;No, you are not in trouble. The rules for these things are that the morning on the beach is for you to relax however you wish, including the little chastity key game... still, you REALLY indulged, <<if $npc_manager.flags.require_chastity>>but I suppose that just confirms that you being locked up is what you need to stay focused day to day.<<else>>one would almost think you were forced to be in chastity normally!<</if>>@@"
<<else>>
"@@.npc_manager;Actually, I am glad. Certainly I prioritise control, and greatly believe that it aids in you better executing your duties, but today was about you and your fellows having some time to relax however you wish, including the little chastity key game. Now that you have had your fun, well... I expect you to be even more motivated to return to your duties.@@"
<</if>>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> smiles as she takes the key<<if $player.sec_style.submission.chastity != "">> in <<if $player.sec_style.submission.permanent_key == "">>a by now very familiar ritual<<elseif $player.sec_style.submission.permanent_key != "enthusiast">>a now nigh-forgotten ritual<</if>><</if>>.<br>
<br>
"@@.npc_manager;My, my... completely unused. You really are such a wonderfully obedient thing, presented an open-ended opportunity and you went through all the trouble to get the key... just to turn it over. Perfection.<<if $player.sec_style.submission.chastity != "" && $player.sec_style.submission.permanent_key == "">> Perhaps you could give up your key permanently once we return from the trip. Based on today's performance it seems that you are more than ready to take that lovely step.<</if>>@@"<br>
<br>
<<if $scene.choice=='cage'>>
She smiles, removing your device with a nod. "@@.npc_manager;As agreed... I must admit to a measure of surprise that you actually spent the whole day locked up... surprised, and impressed.@@"
<<else>>
She gently, but firmly, crushes the key with one hand, dropping the mangled detritus into the trash before motioning you into the shower. "@@.npc_manager;That was but a copy, the original, well... that I promise to keep VERY safe.@@"
<</if>>
<</if>>
<br><br>
[<<moveTo "event_corporate_retreat_party_1" "Get cleaned up." 300>>]
</div>/*#
#desc: corporate retreat start mission to change contest results
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Convention Building">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_hallway.png" setup.charImage("npc_secretary","npc_secretary_bikini")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_secretary","nickname")>> leads the way up the beach towards a large building, casually bypassing the two guards standing next to the door.<br>
<br>
"@@.npc_secretary;Alright, all the executives are going to be busy in their meetings, and anyone else isn't likely to bother me on account of who my boss is but, given your plan... it's probably best if we try to avoid being seen.@@" She explains as she leads the way to the stairs. "@@.npc_secretary;Come on, it's only a couple floors.@@"<br>
<br>
The steep sandals <<=setup.getNpcName("npc_secretary","nickname")>> and you both wear aren't exactly the best choice for stair-climbing but she doesn't complain, so neither do you as you rise up the building until she opens a door and carefully peeks into the hallway. "@@.npc_secretary;All clear, come on, the room is just up the hallway.@@"<br>
<br>
You hurry after her, almost humming the theme to a spy film as she unlocks a door and the two of you duck inside just as you hear footsteps rounding the corner.<br>
<br>
[<<moveTo "event_corporate_retreat_mission_2" 'Look around.' 300>>]
</div>/*#
#desc: corporate retreat mission - secretary betrays you
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Convention Building">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_hallway.png" setup.charImage("npc_secretary","npc_secretary_bikini")>>
<div id="invframe" class="scrolltext">
You look around a medium sized conference room. It seems to be being used for storage, at present, a couple of bondage frames and half-packed up restraints from yesterday's pony race on one side but your attention is immediately focused on a stack of envelopes on a table in the middle of the room.<br>
<br>
As you start towards the table <<=setup.getNpcName("npc_secretary","nickname")>> grabs you from behind!<br>
<br>
<<if setup.getTotalValue("martial_arts") > 0>>
[<<moveTo "event_corporate_retreat_mission_3" 'Use your combat skills and reverse things.' 300 "<<set $scene.action='fight'>>">>]<br>
<<else>>
[@@.link_locked;If only you had taken up <<=ps(setup.getNpcName("npc_admin","first"))>> suggestion that you practice martial arts...@@]<br>
<</if>>
[<<moveTo "event_corporate_retreat_mission_3" 'Scream for help!' 300 "<<set $scene.action='yell'>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_3" 'Struggle.' 300 "<<set $scene.action='struggle'>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_3" "Ask what she's doing." 300 "<<set $scene.action='ask'>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_3" "Don't resist." 300 "<<set $scene.action='stop'>>">>]
</div>/*#
#desc: corporate retreat mission - secretary betrays you
#status: FINISHED 0.8.0.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'fight'>>
<<set _martial = setup.getTotalValue("martial_arts")>>
<<applyExperience 'martial_arts' _martial 'terrible' $SEEN_FRIEND>>
<<case 'yell'>>
<<case 'struggle'>>
<<case 'ask'>>
<<case 'stop'>>
<<addItem 'ball_gag_red'>>
<<wearItem 'ball_gag_red' true>>
<<addItem 'handcuffs'>>
<<wearItem 'handcuffs' true>>
<</switch>>
<</if>>
<<set $player.location to "Convention Building">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_hallway.png" setup.charImage("npc_secretary","npc_secretary_bikini")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'fight'>>
<<if setup.getTotalValue("martial_arts") > 10>>
For all her surprising strength <<=setup.getNpcName("npc_secretary","nickname")>> has no fighting skills to speak of and you easily reverse her sloppy hold and throw her to the ground. The wind knocked out of her she doesn't have time to recover before you slap a pair of cuffs on her wrists, attaching her to a convenient X-frame. You add a gag and ankle restraints for good measure.<br>
<br>
Slumping in defeat she looks at you in desperation and tries to speak through the gag.<br>
<br>
[<<moveTo "event_corporate_retreat_mission_4" "Do what you came here for." 300>>]<br>
[<<moveTo "event_corporate_retreat_mission_4_listen" "See what she has to say." 300>>]
<<else>>
You try to slip free of <<=ps(setup.getNpcName("npc_secretary","nickname"))>> grasp but her surprise attack has her at too much of an advantage. She reaches for a wrist cuff and you know you're moments away from being bound.<br>
<br>
<<set $scene.actionDone += 1>>
[<<moveTo "event_corporate_retreat_mission_3" 'Scream for help!' 300 "<<set $scene.action='yell'>>">>]<br>
<<if $scene.actionDone < 2>>
[<<moveTo "event_corporate_retreat_mission_3" 'Struggle.' 300 "<<set $scene.action='struggle'>>">>]<br>
<</if>>
[<<moveTo "event_corporate_retreat_mission_3" "Don't resist." 300 "<<set $scene.action='stop'>>">>]
<</if>>
<<case 'yell'>>
You shout for help and the guard you heard coming up the hall bursts into the room. <<=setup.getNpcName("npc_secretary","nickname")>> is busy trying to keep you under control and fails to react before the <<man>> is on top of her, a stun baton making her spasm before slumping to the ground, the pass-through effects leaving you a bit tingly.<br>
<br>
"@@.generic_male1;What happened?@@" The guard asks with suspicion, the electrified baton still out and arcing lightning.<br>
<br>
[<<moveTo "event_corporate_retreat_mission_4_bimbo" "Play the dumb damsel in distress." 300 "<<set $scene.bimbo=true>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_4_bimbo" "Make up an excuse." 300 "<<set $scene.bimbo=false>>">>]
<<case 'struggle'>>
<<if setup.getTotalValue("strength") >= 15>>
<<=setup.getNpcName("npc_secretary","nickname")>> is stronger than she looks but nowhere near as strong as you are and you force your way out of her grasp, quickly reversing things. Thanks to the copious restraints on hand you soon have her bound to a handy X frame, her struggles for naught as she tries to plead through gag-spread lips.<br>
<br>
[<<moveTo "event_corporate_retreat_mission_4" "Do what you came here for." 300>>]<br>
[<<moveTo "event_corporate_retreat_mission_4_listen" "See what she has to say." 300>>]
<<else>>
You try to struggle but <<=setup.getNpcName("npc_secretary","nickname")>> is stronger than she looks and, combined with her initial advantage of surprise, she has soon drug you over to the pile of restraints. Looks like you've got one last chance...<br>
<br>
<<set $scene.actionDone += 1>>
<<if $scene.actionDone < 2>>
[<<moveTo "event_corporate_retreat_mission_3" 'Use your combat skills and reverse things.' 300 "<<set $scene.action='fight'>>">>]<br>
<</if>>
[<<moveTo "event_corporate_retreat_mission_3" 'Scream for help!' 300 "<<set $scene.action='yell'>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_3" "Don't resist." 300 "<<set $scene.action='stop'>>">>]
<</if>>
<<case 'ask'>>
You ask what <<=setup.getNpcName("npc_secretary","nickname")>> is doing as she drags you towards the pile of restraints. "@@.npc_secretary;Stopping you from screwing things up! <<=setup.getNpcName("npc_boss","formal")>> said that if <<=setup.getNpcName("npc_manager","formal")>> moves upstairs I can visit her more often! You don't know what it's like to lose your <<=setup.getNpcName("npc_manager","title")>>! Please, don't keep her all to yourself!@@"<br>
<br>
She takes advantage of your momentary distraction to slap on a wrist-cuff, you have but a moment to act before your arms are helplessly bound...<br>
<br>
[<<moveTo "event_corporate_retreat_mission_3" 'Use your combat skills and reverse things.' 300 "<<set $scene.action='fight'>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_3" 'Scream for help!' 300 "<<set $scene.action='yell'>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_3" 'Struggle.' 300 "<<set $scene.action='struggle'>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_3" "Don't resist." 300 "<<set $scene.action='stop'>>">>]<br>
<<if setup.getTotalValue("dominance") > 1>>
[<<moveTo "event_corporate_retreat_mission_3" "Channel dom energy and order her to stop." 300 "<<set $scene.action='dom'>>">>]
<</if>>
<<case 'dom'>>
<<if setup.getTotalValue("dominance") > 10>>
The full force of your not inconsiderable dominant energy slams into her as you command her to stop.<br>
<br>
She freezes and you feel her hear pounding as you extricate yourself from her grip.<br>
<br>
"@@.npc_secretary;I'm sorry, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>@@" she replies as if on reflex. "@@.npc_secretary;I didn't, I—@@"<br>
<br>
You can sense you don't have long before your spell wears off and you quickly cuff her to a nearby X-frame. You add a gag for good measure before she recovers and she starts flailing against her restraints and trying to plead with you through the gag.<br>
<br>
[<<moveTo "event_corporate_retreat_mission_4" "Do what you came here for." 300>>]<br>
[<<moveTo "event_corporate_retreat_mission_4_listen" "See what she has to say." 300>>]
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
You try to channel <<=setup.getNpcName("npc_manager","formal")>> and order <<=setup.getNpcName("npc_secretary","nickname")>> to stop but, after a moments hesitation, she tightens her grip and continues dragging you across the room.
<<else>>
You order <<=setup.getNpcName("npc_secretary","nickname")>> to stop but she doesn't even slow down, your pitiful dominant energy doing nothing to her.
<</if>>
She reaches for a set of cuffs and you can tell it's almost over.<br>
<br>
[<<moveTo "event_corporate_retreat_mission_3" 'Use your combat skills and reverse things.' 300 "<<set $scene.action='fight'>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_3" 'Scream for help!' 300 "<<set $scene.action='yell'>>">>]<br>
[<<moveTo "event_corporate_retreat_mission_3" 'Struggle.' 300 "<<set $scene.action='struggle'>>">>]<br>
<</if>>
<<case 'stop'>>
You go limp in resigned defeat and she cuffs your wrists and then gags you for good measure. "@@.npc_secretary;Sorry about this.@@" She states with genuine concern, "@@.npc_secretary;I just... I can't have you interfereing, <<=setup.getNpcName("npc_manager","formal")>> has to win!@@" She sighs, looking mentally and physically tired far beyond your brief struggle.<br>
<br>
"@@.npc_secretary;Come on, I'll take you back to the beach and you can enjoy the rest of the day.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_mission_fail" "Continue." 1800>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: corporate retreat mission - give excuse to guard
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bimbo && setup.getTotalValue("bimbofication") > 10>>
<<applyExperience 'bimbofication' 10 'normal' $SEEN_STRANGER>>
<<else>>
<<if setup.getTotalValue("bdsm") > 10>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'bdsm' 12 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Convention Building">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_hallway.png" setup.charImage("npc_secretary","npc_secretary_bikini")>>
<div id="invframe" class="scrolltext">
<<if $scene.bimbo && setup.getTotalValue("bimbofication") > 10>>
Employing every ounce of brainless bimbo helplessness you can muster you gush in gratitude, asking the guard if there's ANYTHING you can do to thank <<him>> for rescuing you.<br>
<br>
<<His>> guard lowers and <<he>> shrugs. "@@.generic_male1;Just part of the job, ma'am... though... what, exactly were you doing in here anyway?@@"<br>
<br>
[<<moveTo "event_corporate_retreat_mission_4_stun" "Use the distraction to turn the stun baton on <<him>>." 600>>]<br>
[<<moveTo "event_corporate_retreat_mission_4_bimbo" "Make up an excuse." 600 "<<set $scene.bimbo=false>>">>]<br>
<<else>>
<<if $scene.bimbo>>
You flutter your eyes and try to do your best "helpless damsel" imitation, but the guard frowns, poking you with the stun baton.
<<else>>
You try to come up with an excuse but the guard just rolls <<his>> eyes and prods you with the stun baton.
<</if>>
Your nerves light up in pain as you flail and drop to the floor.<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
As you twitch on the ground you can't help but moan at the erotic pain of the powerful shock.<br>
<br>
"@@.generic_male1;Goddamn, didn't think I was going to have to cook a slut today, well, don't say I'm not accommodating.@@" You hear a click and then <<he>> touches you with the baton again, your limbs trying to escape in at least half a dozen directions as the agony (and ecstasy) spreads through you and then you go totally limp.
<<else>>
You twitch on the ground in helpless pain.
<</if>>
<br><br>
"@@.generic_male1;Now to get you two back to where you belong...@@" <<he>> states as <<he>> snaps a pair of cuffs onto your wrists, gagging you both before you can recover enough to struggle.<br>
<br>
A brief elevator ride down and then you are marched back to the beach where <<he>> removes your restraints and walks off.<br>
<br>
You and <<=setup.getNpcName("npc_secretary","nickname")>> exchange an awkward glance and she looks almost ready to cry.<br>
<br>
"@@.npc_secretary;I'm sorry I betrayed you but... I need <<=setup.getNpcName("npc_manager","formal")>> to win, to move closer to me... I hope you don't hold it against me...@@"<br>
<br>
You try to think of a reply but <<=setup.getNpcName("npc_secretary","nickname")>> has already dashed off, disappearing into the crowded beach.<br>
<br>
<<include "beachOptions">>
<</if>>
</div>/*#
#desc: corporate retreat mission - listen to secretary
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Convention Building">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_hallway.png" setup.charImage("npc_secretary","npc_secretary_bikini")>>
<div id="invframe" class="scrolltext">
You ask if she's going to scream for help and grab a nearby whip to brandish menacingly before you remove her gag.<br>
<br>
"@@.npc_secretary;Please! You can't do this. I need <<=setup.getNpcName("npc_manager","formal")>> to win and take her rightful place on the upper floor closer to me! Have mercy, I miss her so much...@@"<br>
<br>
[<<moveTo "event_corporate_retreat_mission_4" "Do what you came here for." 300>>]<br>
[<<moveTo "event_corporate_retreat_mission_abort" "Let her go." 300>>]
</div>/*#
#desc: corporate retreat mission - stun guard
#status: FINISHED 0.8.0.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Convention Building">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_hallway.png" setup.charImage("npc_secretary","npc_secretary_bikini")>>
<div id="invframe" class="scrolltext">
You take a step closer to the guard, giving <<him>> your best bedroom eyes, and then swiftly twisting the stun baton around and jamming <<him>> with it. With a <<if $options.fem>>short<<else>>less than manly<</if>> cry <<he>> crumples to the ground and you quickly attend to cuffing and gagging both <<him>>, and <<=setup.getNpcName("npc_secretary","nickname")>> to adjacent X-frames before they can recover.<br>
<br>
The guard flails uselessly but <<=setup.getNpcName("npc_secretary","nickname")>> just stares at you in desperation, trying to plead with you through the gag.<br>
<br>
[<<moveTo "event_corporate_retreat_mission_4" "Do what you came here for." 300>>]<br>
[<<moveTo "event_corporate_retreat_mission_4_listen" "See what she has to say." 300>>]
</div>/*#
#desc: corporate retreat mission - change voting results
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.missionSuccess = true>>
<</if>>
<<set $player.location to "Convention Building">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_hallway.png" setup.charImage("npc_secretary","npc_secretary_bikini")>>
<div id="invframe" class="scrolltext">
Leaving <<=setup.getNpcName("npc_secretary","nickname")>> bound you walk over to the envelopes, carefully flipping through to find the one marked "Director of the Year." Opening it up you find <<=ps(setup.getNpcName("npc_manager","formal"))>> name, as expected, but you locate another piece of paper and write down another Director at random before throwing away <<=ps(setup.getNpcName("npc_manager","formal"))>> "winning" note and putting everything back as it was.<br>
<br>
Drooping in her restraints <<=setup.getNpcName("npc_secretary","nickname")>> looks utterly defeated and you almost feel bad as you threaten to tell <<=setup.getNpcName("npc_manager","formal")>> of <<=ps(setup.getNpcName("npc_secretary","nickname"))>> betrayal if she does not remain silent until after the awards ceremony. Whimpering softly through her gag she nods obediently and you quickly leave the room and sneak back up the hallway. Walking down that many flights of stairs in heels is even less comfortable than going up, but you make it before confidently exiting out of the building and returning to the beach.<br>
<br>
<<include "beachOptions">>
</div>/*#
#desc: corporate retreat mission - let her go
#status: FINISHED 0.8.0.0
#ignore_spell: th
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.missionSuccess=false>>
<<set $player.flags.retreat.mission = 1>>
<</if>>
<<set $player.location to "Convention Building">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/convention_hallway.png" setup.charImage("npc_secretary","npc_secretary_bikini")>>
<div id="invframe" class="scrolltext">
Taking pity on <<=setup.getNpcName("npc_secretary","nickname")>> you release her from the restraints and the two of you leave, riding the elevator down and walking back to the beach in awkward silence.<br>
<br>
"@@.npc_secretary;Th-thanks and, um... no hard feelings?@@" You feel so sorry for her, giving in to an urge to lean in and give her a hug that, from the way she returns the gesture, she really needed.<br>
<br>
"@@.npc_secretary;Thanks... you're a, you're a good girl, I'm glad <<=setup.getNpcName("npc_manager","formal")>> found you and... I hope someday we can share her...@@"<br>
<br>
You don't know how to respond as she lets go and flashes a slight smile. "@@.npc_secretary;I guess, uh... enjoy the rest of your day?@@"<br>
<br>
She turns and dashes away, leaving you alone on the edge of the beach.<br>
<br>
<<include "beachOptions">>
</div>/*#
#desc: corporate retreat mission - secretary takes you back to beach
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'ball_gag_red' true>>
<<deleteItem 'ball_gag_red'>>
<<removeItem 'handcuffs' true>>
<<deleteItem 'handcuffs'>>
<<set $scene.missionSuccess=false>>
<<set $player.flags.retreat.mission = 1>>
<</if>>
<<set $player.location to "Private Beach">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/beach.png" setup.charImage("npc_secretary","npc_secretary_bikini")>>
<div id="invframe" class="scrolltext">
Your mission foiled <<=setup.getNpcName("npc_secretary","nickname")>> takes you down the elevator. The guards ignore your bound state as she marches you out of the building and back to the beach before reaching for the cuffs.<br>
<br>
"@@.npc_secretary;I hope there aren't any hard feelings about this, you should just enjoy your time today... and in general. Don't fight it... it will only end badly.@@"<br>
<br>
With those enigmatic parting words she removes the cuffs and disappears, dashing over the sand and disappearing into the crowd before you can remove the gag and respond.<br>
<br>
<<include "beachOptions">>
</div>/*#
#desc: corporate retreat finale no beach remove binding + choose dress
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.choice == 'cage'>>
<<set _cage = setup.getItemFromType("cage")>>
<<if $scene.addedChastity>>
<<removeItem _cage true>>
<<deleteItem _cage>>
<</if>>
<<elseif $scene.choice == "stay_cage" && !$scene.replaceCage>>
<<wearItem $scene.cage true>>
<<else>>
<<if $scene.bed>>
<<removeItem 'sleepsack' true>>
<<deleteItem 'sleepsack'>>
<<else>>
<<removeItem 'padded_hogtie' true>>
<<deleteItem 'padded_hogtie'>>
<</if>>
<</if>>
<<removeAllClothing>>
<<include "cleanPlayer">>
<<if $player.makeup.template != "">>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $scene.takeKey = setup.checkItemInInventory('universal_key')>>
<<if $scene.takeKey>>
<<deleteItem 'universal_key'>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if $scene.choice == 'cage'>>
<<=setup.getNpcName("npc_manager","formal")>> supervises removing you clothes, and your chastity device, before sending you off to the shower<<if ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis) && $scene.takeKey>>, pocketing your hard-earned key with an almost imperceptible frown.<br><br><<printThought "Maybe I should have offered it to her, rather than trying to sneak it out with me...">><<else>>.<</if>><br>
<br>
You emerge from the bathroom a few minutes later having showered<<if $player.makeup.template != "">> and attended to your makeup<</if>> to find <<=setup.getNpcName("npc_manager","formal")>> already changed into her formal best, beckoning you forward as she opens a closet to reveal a jaw-dropping dress.
<<elseif $scene.choice == "bound">>
<<=setup.getNpcName("npc_manager","formal")>> emerges from the shower after a few minutes already looking stunning in her formal best. She takes a moment to look down at you with a smile before leaning over to remove your bonds.<br>
<br>
Once out of your restraints you sit up onto the bed and work some of the stiffness out of your joints as <<=setup.getNpcName("npc_manager","formal")>> opens a closet with a flourish to reveal a jaw-dropping dress.
<<else>>
<<if $scene.takeKey>>
You start for the shower but <<=setup.getNpcName("npc_manager","formal")>> stops you to confiscate the key you put so much effort into earning.<br>
<br>
"@@.npc_manager;You did not think you would be keeping this, did you? No, it was just part of today's game.@@"
<</if>>
<<if $scene.choice == "stay_cage" && $scene.replaceCage>>
She winks as she produces you <<=setup.getItemName($scene.cage)>>. "@@.npc_manager;Of course, that means this is going back on, as well.@@" She locks you back up with a smile before sending you off to shower.
<<else>>
She watches with a smile as she finally allows you to shower.
<</if>>
You emerge from the bathroom a couple minutes later to find <<=setup.getNpcName("npc_manager","formal")>> changed in her formal best. With a flourish she opens a closet to reveal a jaw-dropping dress.
<</if>>
<br><br>
[<<moveTo "event_corporate_retreat_party_1" "Examine the dress." 60>>]
</div>/*#
#desc: corporate retreat finale - chose outfit
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<include "cleanPlayer">>
<<if $player.makeup.template != "">>
<<set $player.makeup.messed = 0>>
<</if>>
<<set $scene.removeKey = setup.checkItemInInventory('universal_key')>>
<<if $scene.removeKey>>
<<deleteItem 'universal_key'>>
<</if>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
You can scarcely imagine how <<=setup.getNpcName("npc_manager","formal")>> managed to fit the dress into her suitcase but it is gorgeous, and very kinky — much like your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
The general structure is old-fashioned formality thanks to a large hoop skirt and a corset, what causes things to swing the other direction is the design — the front of the dress opening just enough to display the top of the wearer's thighs and their crotch.<<if setup.checkItemTypeWorn("cage")>>.. or, in your case, your chastity <<if setup.isCage()>>cage<<else>>belt<</if>><</if>>. Also peeking through are the matching wedge ballet boots, and up top a steep collar that would act as more of a neck corset.<br>
<br>
As if the towering footwear wasn't enough the whole thing is finished off with a matching armbinder that will have the wearer thrusting their chest forward to match their regally raised chin even as it completes their helplessness.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles as you admire the dress. "@@.npc_manager;Yes, you are going to be my belle of the ball — I will even let you choose the colour, nanofibers, you know.@@"<br>
<br>
She clicks a remote and the dress cycles between several colours.<br>
<br>
[<<moveTo "event_corporate_retreat_party_2" "Make it pink!" 300 "<<set $scene.dress='pink'>>">>]<br>
[<<moveTo "event_corporate_retreat_party_2" "Make it blue!" 300 "<<set $scene.dress='blue'>>">>]<br>
[<<moveTo "event_corporate_retreat_party_2" "Make it white." 300 "<<set $scene.dress='white'>>">>]<br>
[<<moveTo "event_corporate_retreat_party_2" "Make it red." 300 "<<set $scene.dress='red'>>">>]
</div>/*#
#desc: corporate retreat finale - get dressed
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.dress>>
<<case 'pink'>>
<<set $scene.dressId = 'retreat_dress_pink'>>
<<set $scene.heelsId = 'retreat_ballet_pink'>>
<<set $scene.collarId = 'retreat_collar_pink'>>
<<set $scene.leashId = 'retreat_leash_pink'>>
<<set $scene.armbinderId = 'armbinder_pink'>>
<<applyExperience 'feminization' 18 'terrible' $SEEN_FRIEND>>
<<case 'white'>>
<<set $scene.dressId = 'retreat_dress_white'>>
<<set $scene.heelsId = 'retreat_ballet_white'>>
<<set $scene.collarId = 'retreat_collar_white'>>
<<set $scene.leashId = 'retreat_leash_white'>>
<<set $scene.armbinderId = 'armbinder_white'>>
<<applyExperience 'submission' 15 'terrible' $SEEN_FRIEND>>
<<case 'blue'>>
<<set $scene.dressId = 'retreat_dress_blue'>>
<<set $scene.heelsId = 'retreat_ballet_blue'>>
<<set $scene.collarId = 'retreat_collar_blue'>>
<<set $scene.leashId = 'retreat_leash_blue'>>
<<set $scene.armbinderId = 'armbinder_blue'>>
<<applyExperience 'feminization' 15 'terrible' $SEEN_FRIEND>>
<<case 'red'>>
<<set $scene.dressId = 'retreat_dress_red'>>
<<set $scene.heelsId = 'retreat_ballet_red'>>
<<set $scene.collarId = 'retreat_collar_red'>>
<<set $scene.leashId = 'retreat_leash_red'>>
<<set $scene.armbinderId = 'armbinder_red'>>
<<applyExperience 'dominance' 5 'normal' $SEEN_FRIEND>>
<</switch>>
<<addItem $scene.dressId>>
<<wearItem $scene.dressId true>>
<<addItem $scene.heelsId>>
<<addItem $scene.collarId>>
<<wearItem $scene.collarId true>>
<<addItem $scene.armbinderId>>
<<wearItem $scene.armbinderId true>>
<<addItem 'ankle_cuffs_steel'>>
<<wearItem 'ankle_cuffs_steel' true>>
<<addItem 'thigh_cuffs_steel'>>
<<wearItem 'thigh_cuffs_steel' true>>
<<set $player.flags.retreatDress = $scene.dress>>
<<set $player.timebased.tightlacing = 100>>
<</if>>
<<set $player.location to "Private Cabin">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/retreat_cabin.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<switch $scene.dress>>
<<case 'pink'>>
You opt for a pink dress and <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Of course, my sweet <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"
<<case 'blue'>>
You opt for a blue dress and <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;You know there was a time that blue was considered the cooler, more feminine colour... of course you make anything look lovely and feminine.@@"
<<case 'white'>>
You opt for a white dress and <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;My sweet innocent <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"
<<case 'red'>>
You opt for a red dress and <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Such a bold choice! But I approve, I chose this outfit to show you off and you will turn heads like a brand new sports car... and just like a sports car everyone who sees you is going to want a ride.@@"
<<default>>
ERROR: unexpected scene.dress <<=$scene.dress>>
<</switch>>
<br><br>
You blush at the compliment as she helps you into the outfit. Perfectly fitted and tight you are soon elegant and helpless thanks to the combination of corset, bound arms and raised chin cutting a quite stunning figure. "@@.npc_manager;My, my, you look even more beautiful than I had pictured.@@" Her fingers reach through the gap in the dress to caress <<if !setup.checkItemTypeWorn("cage")>>your exposed crotch<<else>>the <<if setup.isCage()>>chastity cage<<else>>chastity belt<</if>> on full display<</if>>.<br>
<br>
You are admiring your reflection in the mirror in the gorgeous new outfit when <<=setup.getNpcName("npc_manager","formal")>> presents you with the final piece — steep thigh-high ballet boots that look nigh impossible to walk in.<br>
<br> "@@.npc_manager;Of course true beauty should be placed upon a pedestal, which is why I have these beautiful things to really show off your lovely legs.@@" You stare in awe at the steep ballet boots.<br>
<br>
[<<moveTo "event_secretary_style_ballet_heels_obedient_1" "Obediently put them on." 60>>]<br>
[<<moveTo "event_secretary_style_ballet_heels_forced_1" "Those heels are crazy, you can't possibly wear them!" 60>>]
</div>/*#
#desc: corporate retreat finale - arrive at dining room
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Banquet Hall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/banquet_room.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
Your embrace of ever-steeper heels pays off as you stride with regal confidence,
<<else>>
Your skill in heels is put to the test but you manage to walk mostly steady,
<</if>>
<<else>>
<<if setup.getTotalValue("heels") > 5>>
You may not be a neophyte with heels but these are beyond anything you could imagine functioning in. Fortunately there is a surprise beneath your skirt — hidden hover generators making it so that you half float along,
<<else>>
You have no idea how you could possibly walk in the diabolic heels, but it seems there is a surprise, hover generators hidden under your skirt to make you half float along,
<</if>>
<</if>>
a step behind your <<=setup.getNpcName("npc_manager","title")>>. A brief walk up the path brings you to a large building looking over the beach. You pass by other formally dressed employees, a mix of ultra-fashionable executives and their fetishistically fashionably dressed slaves.<br>
<br>
Even amongst the flesh and beauty on display you turn heads as <<=setup.getNpcName("npc_manager","formal")>> leads you through the lobby and then into a large dining room. The crowd parts before her and you follow her all the way to the front, carefully making it up three steps to the head table. You spot <<=setup.getNpcName("npc_secretary","nickname")>> in the middle of the table, seated next to a large chair, nay, throne, that must be for <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<if setup.getTotalValue("heels") > 10>>
The rest of the chairs at the table are more spread apart, all looking out across the room. <<=setup.getNpcName("npc_manager","formal")>> helps you kneel down on a padded pillow next to her seat.
<<else>>
Your legs scream with every step... yet the thought of the punishment that would be awaiting you if you failed manages to keep you upright until you almost fall to your knees on the padded pillow that has been laid out next to <<=setup.getNpcName("npc_manager","formal")>> chair. You are grateful to be off your feet, even if your landing was less than graceful.
<</if>>
Between your bound arms, thigh cuffs and pointed shoes there is zero chance of you standing back up unaided and so you look across the room as seats are filled by other employees finding their tables.<br>
<br>
[<<moveTo "event_corporate_retreat_party_4" "Look around." 1800>>]
</div>/*#
#desc: corporate retreat finale - observe room
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_predecessor_2'
0
'event_manager_theme_npc_secretary_details'
true
>>
<</if>>
<<set $player.location to "Corporate Banquet Hall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/banquet_room.png" setup.charImage("npc_manager","npc_manager_formal")>>
<div id="invframe" class="scrolltext">
Between the steep posture collar and the stiff boning of your corset you are kept quite supported as your eyes scan the room. You take in the company's executive team and their bound "assistants," spotting the various HR managers that directly report to your <<=setup.getNpcName("npc_manager","title")>>, their respective assistants and a handful of other individuals that you have met during your time at the company.<br>
<br>
<<if $scene.missionSuccess>>
<<=setup.getNpcName("npc_secretary","nickname")>> draws particular attention as something seems off about her, and not just the fact that she appears to be completely ignoring you to stare directly forward.<br>
<br>
It's hard to look at her given that you are unable to turn your head more than a few degrees in either direction but you finally figure it out — while displaying an outwardly "normal" formal appearance she is actually cocooned in bondage — her real arms bound tucked behind her back with fakes folded daintily in her lap, a realistic mask covering her face, and certainly concealing some sort of gag. You wince, certain that her predicament is likely your fault — punishment from whoever found her tied up body.
<<else>>
<<=setup.getNpcName("npc_secretary","nickname")>> glances in your direction and nods in acknowledgement before turning forward and resuming her regal survey of what, after a fashion, could be considered a sort of royal court.
<</if>>
<br><br>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
One of the last to arrive is <<=setup.getNpcName("npc_admin","first")>>, radiating quiet menace as <<he npc_admin>> walks through the door, <<if $npc_admin.fem>>her fit body shown off by her form fitting dress<<else>>muscles clearly visible through <<his>> immaculately fitted suit<</if>>, and a girl you do not recognise following <<him npc_admin>> on a golden leash, naked, her see-through dress doing nothing to conceal her slender form.<br>
<br>
<<printThought "Weird... <<=setup.getNpcName('npc_admin','first')>> always used to talk about preferring a partner that was more fit...">><br>
<br>
<</if>>
The other directors, and their kneeling assistants, fill out the rest of the head table. Finally <<=setup.getNpcName("npc_boss","formal")>> arrives, standing in front of <<his npc_boss>> throne and raising a glass that brings the entire room to attention.<br>
<br>
[<<moveTo "event_corporate_retreat_party_5" "Listen to <<his npc_boss>> toast." 600>>]
</div>/*#
#desc: corporate retreat finale - big boss toast
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Banquet Hall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/banquet_room.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
The room quiets down almost eerily fast as all eyes turn towards <<=setup.getNpcName("npc_boss","formal")>>. <<He npc_boss>> grins, clearly basking in the feeling of power and being at the centre of attention.<br>
<br>
"@@.npc_boss;Congratulations! In these past few years Social Interaction Service Syndicate Inc. has seen unprecedented growth and advancement. A re-alignment of our core values even as we have expanded constantly and brought so many of our partner organisations under direct control. All of it is thanks to the people in this room, and your departments back home. We make these leaps thanks to a firm hand and complete devotion to a purpose. You have all shown that time and time again and yet I tell you again — this coming year will be even better!@@"<br>
<br>
There are cheers — many muffled by gags — and <<he npc_boss>> basks in it, letting the adulation roll on and on before cutting it with a wave. "@@.npc_boss;So, as we honour some of our brightest stars know that every one of you can be a vital part of this company, by striving every day to not just do your job, but excel at it, and encourage all around you to do the same because all of us, from myself all the way down to the lowliest of drones, has their part to play, and with discipline and determination we will conquer the world!@@"<br>
<br>
The cheers are even louder this time as every unbound hand raises their glass and joins <<him npc_boss>> in toasting the future.<br>
<br>
"@@.npc_boss;Now, I would like to call forth a special guest, star of stage and screen <<=setup.getNpcName("npc_celebrity","full")>>! To announce those special employees that have gone so far above and beyond even our high expectations.@@"<br>
<br>
[<<moveTo "event_corporate_retreat_party_6" '<<=setup.getNpcName("npc_celebrity","full")>>!' 600>>]
</div>/*#
#desc: corporate retreat finale - celebrity intro
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Banquet Hall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/banquet_room.png" "npc_celebrity">>
<div id="invframe" class="scrolltext">
There is a collective gasp at the announcement — <<=setup.getNpcName("npc_celebrity","full")>> is one of the biggest celebrities in the world, but notorious for barely even giving interviews, for her to show up to a corporate event like this...<br>
<br>
Craning your neck you watch her approach the stage. She somehow looks even more beautiful in person than on screen, and yet... there is something off, her eyes TOO focused, her smile too wide... as she accepts the microphone and a stack of envelopes you silently shudder, you don't know exactly what has been done to her but there is no doubt that she is not here under what could be considered her own "free will." <br>
<br>
Despite her brainwashing her smile does not fail to light up the room, her voice like honey as she introduces herself.<br>
<br>
"@@.npc_celebrity;Thank you, <<=setup.getNpcName("npc_boss","first")>>, and thank all of you! I have spent so much of my career focusing purely on my art, but when I found out about the wonderful things you are doing at Social Interaction Service Syndicate Inc. Well, I just had to be a part of helping you change the world!@@"<br>
<br>
If anything her cheers are even louder than <<=ps(setup.getNpcName("npc_boss","formal"))>> were, and you would swear <<he npc_boss>> bristled slightly.<br>
<br>
"@@.npc_celebrity;Now, speaking of changing the world let me introduce our first winner, Salesperson of the Year...@@" She opens the first envelope.<br>
<br>
[<<moveTo "event_corporate_retreat_party_7" 'Continue.' 3600>>]
</div>/*#
#desc: corporate retreat finale - awards
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Corporate Banquet Hall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/banquet_room.png" "npc_celebrity">>
<div id="invframe" class="scrolltext">
For all the pomp and circumstance it is hard to make any award show particularly exciting, particularly a corporate one where you know so few of the winners, or even competitors.<br>
<br>
What you find interesting, however, is the dichotomy of winners. Some seem excited and honoured, almost rushing to the front to accept their awards while others look almost... trepidatious, putting on smiles as they accept but with an underlying unease. Simultaneously you spot the reverse feelings in the runners up, disappointment or relief. Strangely, however, the emotion of winner and loser are not always correlated.<br>
<br>
Noticing your confusion <<=setup.getNpcName("npc_manager","formal")>> leans in and whispers in your ear. "@@.npc_manager;Prizes come with consequences, greater responsibility, expectations... you are familiar with my own case, of course but... let me just say that more than one of last year's winners are in attendance wearing a collar they did not have during their prior moment of triumph.@@"<br>
<br>
You resume watching the awards, wondering what is in store for the various winners as you notice the stack of envelopes getting smaller and smaller...<br>
<br>
"@@.npc_celebrity;And now, what we have all been looking forward to — Director of the Year!@@"<br>
<br>
<<if $scene.missionSuccess>>
<<printThought "Here's hoping my spy-work paid off...">><br>
<br>
<</if>>
[<<moveTo "event_corporate_retreat_party_8" 'Continue.' 600>>]
</div>/*#
#desc: corporate retreat finale - director award
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.missionSuccess>>
<<set $player.flags.retreat.mission = 2>>
<</if>>
<</if>>
<<set $player.location to "Corporate Banquet Hall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/banquet_room.png" "npc_celebrity">>
<div id="invframe" class="scrolltext">
"@@.npc_celebrity;And your Director of the Year is...@@" <<=setup.getNpcName("npc_celebrity","full")>> slowly opens the envelope and then smiles at the audience before announcing the winner. <<=setup.getNpcName("npc_boss","formal")>> is smiling, already staring towards <<=setup.getNpcName("npc_manager","formal")>> as <<he npc_boss>> waits for the name to be announced.
<<if $scene.missionSuccess>>
"@@.npc_celebrity;<<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon!@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>>, and <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon — <<if $scene.win>>the runner-up in the race<<else>>the winner of the race<</if>> — are both momentarily surprised and it is <<=ps(setup.getNpcName("npc_manager","formal"))>> turn to smile as she rises to her feet and effectively leads the applause.<br>
<br>
Recovering from <<his>> initial confusion <<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon makes <<his>> way over to accept the award, <<=setup.getNpcName("npc_boss","formal")>> taking over the microphone to give a boiler-plate congratulation that you barely notice, too distracted by the way <<=setup.getNpcName("npc_manager","formal")>> is smiling at you with a mix of pride and gratitude.<br>
<br>
The applause dies down as the winner takes <<his>> seat. <<=setup.getNpcName("npc_boss","formal")>> resumes speaking, the tone of self-satisfaction in <<his npc_boss>> voice chilling your blood before <<he npc_boss>> even gets to <<his npc_boss>> point.<br>
<br>
"@@.npc_boss;Once again, I want to honour all of you who are here today. Being an employee of Social Interaction Service Syndicate Inc. makes you better than ninety-nine percent of the planet, and just being in this room proves that you are a key part of the team. Those of you who won tonight? Well, the expectations will be even higher going forward, and the rest of you — I have confidence you can achieve just as much if you focus and put all of your effort into serving the corporation. That said, I wanted to honour an additional individual. One whose contributions may have fell just shy of winning but who, nonetheless, is such an important piece of making this whole enterprise run smoothly.@@"<br>
<br>
<<He npc_boss>> turns to look at <<=setup.getNpcName("npc_manager","formal")>>...<br>
<br>
"@@.npc_boss;<<=setup.getNpcName("npc_manager","other")>> please, take a bow!@@"<br>
<br>
A smile on her face <<=setup.getNpcName("npc_manager","formal")>> stands and tilts her head as she gets a full-on standing ovation.<br>
<br>
"@@.npc_boss;And to show our appreciation for all that she has done for this firm,@@" <<=setup.getNpcName("npc_boss","formal")>> continues once the applause has died down. "@@.npc_boss;It is time for something that is, frankly far overdue — for <<=setup.getNpcName("npc_manager","other")>> to take her rightful place in a corner office on floor <<=147>>.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> smile strains ever so slightly and your heart sinks; all your work to rig things and it seems it was all for naught.<br>
<br>
Once again the applause dies down and dinner arrives, <<=setup.getNpcName("npc_manager","formal")>> feeding you with a smile as you remain bound at her side throughout.<br>
<br>
"@@.npc_manager;Thank you for trying,@@" she whispers once the general din of conversation has gotten loud enough to cover things. "@@.npc_manager;It was inevitable that <<=setup.getNpcName("npc_boss","formal")>> would figure out a way to force things, I only hoped to delay the move a bit longer... being so close will make it even harder to work without <<his npc_boss>> interference.@@"
<<else>>
"@@.npc_celebrity;<<=setup.getNpcName("npc_manager","other")>>!@@"<br>
<br>
Your <<=setup.getNpcName("npc_manager","title")>> forces a surprisingly convincing smile as she rises to accept the award.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> takes over the microphone, <<his npc_boss>> voice dripping with satisfaction. "@@.npc_boss;Everyone here tonight is deserving of appreciation for your part in bringing us forward, but few compare to the contributions <<=setup.getNpcName("npc_manager","other")>> has made to the company. From coordinating the merging of so many new employees into our ranks, to all aspects of employee development and management her contributions are innumerable. Thus, it is with pride that I announce that — finally! She will be joining us in claiming a proper corner office on floor <<=$player.work.upperFloorNumber>>!@@"<br>
<br>
<<=setup.getNpcName("npc_celebrity","full")>> hands <<=setup.getNpcName("npc_manager","formal")>> a trophy. A smooth, slightly bulbous, and disturbingly phallic, trophy. She accepts it with a smile, exchanging hugs with <<=setup.getNpcName("npc_celebrity","full")>> followed by a firm handshake with <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
"@@.npc_manager;Thank you, all, but I could not have done any of this without a wonderful team working under me — and so many fantastic employees whose continued protection, development and synergistic advancement it will be my pride to continue to aid.@@"<br>
<br>
There is a full on standing ovation as she waves to the assembled crowd before she finally returns to her seat and places the trophy down in front of you. <<=setup.getNpcName("npc_boss","formal")>> thanks the winners once more, while encouraging the rest of the company to work even harder in the coming year<<if $scene.choice != 'bound'>> as <<=setup.getNpcName("npc_manager","formal")>> leans in to whisper to you once again<</if>>.<br>
<br>
<<if $scene.choice == 'bound'>>
<<printThought "Hmm... I wonder if I could have done something about this if I had accepted a few hours of chastity rather than spending the day helplessly bound?">>
<<else>>
"@@.npc_manager;I thought I told you to fix this whole thing? Well, I hope you're happy... and that bulky, trophy? Well I am more than a little tempted to see how it fits in your ass for the flight home... that might give you a taste of the pressure we are going to be under after the move.@@"
<</if>>
<br><br>
You gulp, feeling guilty about your failure but soon distracted as dinner arrives and you find yourself spoiled by <<=setup.getNpcName("npc_manager","formal")>> feeding it to you as your arms remain bound.
<</if>>
<br><br>
After dinner there is a brief period of meet and greet filled with little more than platitudes of congratulation and condolences between winners and the rest. Everyone seems in a bit of a hurry and the party begins to disperse remarkably early for people to travel home so that they can be back at work in the morning.<br>
<br>
You and <<=setup.getNpcName("npc_manager","formal")>> return to the cabin just long enough to change — her into one of her usual dresses, you back into "travel" attire of a collar, gag and wrist restraints. Thus attired you board a limousine and join the caravan to the airport.<br>
<br>
[<<moveTo "event_corporate_retreat_travel_home_1" 'The airport.' 3600>>]
</div><<if $player.flags.bimbo_work.times_worked >= 1 && ($npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4) && $npc_sexdoll.stage >= 4 && $npc_development.flags.class >= 5 && $npc_admin.flags.training >= 1 && !(State.hasPlayed("event_admin_sec_sexdoll_intro_1") || setup.hasRandomEvent('work_bathroom_female', 'adminSec1Intro'))>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'adminSec1Intro'>>
<</if>>/*#
#desc: learn of sexdoll new assignment
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.evil > 0>>
<<initRoom>>
<<moveTo "room_office_lunchbreak_toilet_female">>
<<else>>
<<addEvent 'adminSec2Date'>>
<</if>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
You run into <<=setup.getNpcName('npc_sexdoll', 'first')>> again and she greets you with a smile. You ask what's up and she beams with excitement.<br>
<br>
"@@.npc_sexdoll;I'm getting a new assignment! Yup, it seems that my effort serving anyone and everyone in the bimbo secretary pool has earned me a promotion to be assigned as a permanent dedicated<<if $fetish.sissy>> SISSI<</if>> Secretary. I haven't met my new boss... but I called in a favour to look <<him npc_admin>> up in employee records and... holy shit what <<if $npc_admin.fem>>muscles<<else>>a hunk<</if>>! I can't wait to feel those strong arms squeezing my waist, that big cock pounding into me...@@" She gasps and jumps slightly, "@@.npc_sexdoll;sorry, I've been so excited since I heard the news, well... I got in a little trouble and now my cage is programmed to shock me if I get too aroused. But I just can't help it! My new boss is so fucking hot! I just have to wait for the last of the paperwork to go through and I'll get to start working under them... oh, I wonder which hole they'll want to use first? Sure, a blowjob is always a great introduction... but maybe they want to get down to business and fuck my <<if $fetish.sissy>>sissy <</if>>ass? Well, either way, I can't wait to serve!@@"<br>
<br>
You wish your friend luck in their new job and they skip away happily.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom." 60>>]
</div>/*#
#desc: admin brings up new secretary
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You've just sat down for drinks when <<=setup.getNpcName('npc_admin', 'first')>> awkwardly raises a question. "@@.npc_admin;Hey, so... I don't suppose you could give me advice on something work-related?@@"<br>
<br>
Your curiosity immediately piqued you nod.<br>
<br>
"@@.npc_admin;Right, so, apparently, one of the perks of my success in managing the CDS merger is that I got another promotion... and with it a bigger office on one of the upper floors, and a personal administrative assistant. Well, I've never had someone like that before, and I was wondering, since you work in such a position yourself... do you have an advice? Things that you appreciate it when your manager does them? Like, sure, she's going to be working for me, but I've always found that happy subordinates make for smoother operations... it's just trickier when I've never worked the job I'm managing, y'know?@@" <<He npc_admin>> smiles, looking adorably earnest.<br>
<br>
You congratulate <<=setup.getNpcName('npc_admin', 'first')>> as you consider what advice to give...<br>
<br>
<<include "secAdminAdvise">>
</div><<if $npc_admin.flags.secretary.advise.clarity>>
[@@.link_locked;You already recommend <<=setup.getNpcName('npc_admin', 'first')>> be clear with <<his npc_admin>> expectations.@@]<br>
<<else>>
[<<moveTo "event_admin_sec_admin_intro_2" "Be clear about your expectations." 180 "<<set $scene.help='clarity'>>">>]<br>
<</if>>
<<if $npc_admin.flags.secretary.advise.fuck>>
[@@.link_locked;You already suggested <<=setup.getNpcName('npc_admin', 'first')>> fuck <<his npc_admin>> secretary.@@]<br>
<<else>>
[<<moveTo "event_admin_sec_admin_intro_2" "A <<if $fetish.sissy>>SISSI <</if>>Secretary needs a good, hard fuck from time to time." 180 "<<set $scene.help='fuck'>>">>]<br>
<</if>>
<<if $npc_admin.flags.secretary.advise.punish>>
[@@.link_locked;You already suggested <<=setup.getNpcName('npc_admin', 'first')>> remember to punish <<his npc_admin>> secretary.@@]<br>
<<else>>
[<<moveTo "event_admin_sec_admin_intro_2" "A <<if $fetish.sissy>>SISSI <</if>>Secretary benefits most from a firm hand keeping them in line, and spanking their ass when they slip." 180 "<<set $scene.help='punish'>>">>]<br>
<</if>>
<<if $npc_admin.flags.secretary.advise.clothing>>
[@@.link_locked;You already suggested <<=setup.getNpcName('npc_admin', 'first')>> take control of <<his npc_admin>> secretary's uniform.@@]<br>
<<else>>
[<<moveTo "event_admin_sec_admin_intro_2" "Attention to detail and enforcing a dress-code." 180 "<<set $scene.help='clothing'>>">>]<br>
<</if>>
<<if $npc_admin.flags.secretary.advise.respect>>
[@@.link_locked;You already suggested <<=setup.getNpcName('npc_admin', 'first')>> to just treat <<his npc_admin>> secretary with respect.@@]<br>
<<else>>
[<<moveTo "event_admin_sec_admin_intro_2" "Just treat them with respect." 180 "<<set $scene.help='respect'>>">>]<br>
<</if>>
[<<moveTo "event_admin_sec_admin_intro_3" "You can't think of any advise." 180>>]/*#
#desc: advise admin on secretary
#status: RELEASED 0.8.9.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_admin.flags.secretary.advise[$scene.help] = true>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<switch $scene.help>>
<<case "fuck">>
You advise <<=setup.getNpcName('npc_admin', 'first')>> that <<he npc_admin>> needs to remember to fuck <<his npc_admin>> secretary from time to time.<br>
<br>
"@@.npc_admin;Come on, <<callPlayer "npc_admin">>! I'm being serious now! I know... stuff goes on at the company, but I'm about to start with a new secretary and I want to make sure that I'm a good boss. You got any actually useful advise?@@"
<<case "punish">>
You advise <<=setup.getNpcName('npc_admin', 'first')>> that <<he npc_admin>> needs to be a bit more firm than <<he npc_admin>> was back at CDS, and be ready to administer punishment if <<his npc_admin>> Secretary steps out of line.<br>
<br>
"@@.npc_admin;Hmm... yeah, I rememeber that training session <<=setup.getNpcName('npc_manager', 'formal')>> put me through. Honestly, still a little weirded out about that in a professional context, but it doesn't matter if my Secretary is on top of things right? No need to punish if there aren't any mistakes! Keep it coming <<callPlayer "npc_admin">>, whatever advise you have, I want to hear it.@@"
<<case "clothing">>
You advise <<=setup.getNpcName('npc_admin', 'first')>> that <<he npc_admin>> should establish a uniform requirement for <<his npc_admin>> Secretary, that being a Secretary is a "representative position," so <<=setup.getNpcName('npc_admin', 'first')>> should establish a standard and make sure <<his npc_admin>> Secretary is "representing" accordingly.<br>
<br>
"@@.npc_admin;I guess that makes sense. I mean, I was looking through the standard contract for Secretaries and... wow, so much of it is devoted to their uniform, and yet it also falls back constantly on "managerial discretion," guess it's expectation that I go a bit hands on with such things. I figure I'll wait until I've met my Secretary, then work from there to figure out something that works for both of us. You got any other tips?@@"
<<case "respect">>
You advise <<=setup.getNpcName('npc_admin', 'first')>> that <<he npc_admin>> is on the right track, and that, so long as <<he npc_admin>> treats <<his npc_admin>> with trust and respect, <<he npc_admin>>'ll be sure to have a happy, high-performing assistant.<br>
<br>
"@@.npc_admin;Of course! One of those things that should go without saying... but it never hurts to be reminded! You got anything else for me?@@"
<<case "clarity">>
You advise <<=setup.getNpcName('npc_admin', 'first')>> that <<he npc_admin>> should prioritise establishing clear requirements for <<his npc_admin>> new Secretary.<br>
<br>
"@@.npc_admin;Good call, make sure we're both on the same page as to what success looks like. Stuff at the company is hard enough, no reason I should be adding to the confusion!@@"
<<default>>
ERROR: unexpected scene.help <<=$scene.help>>
<</switch>>
<br><br>
<<include "secAdminAdvise">>
</div>/*#
#desc: finish advising admin on secretary
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'adminSec3Complain'>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> thanks you for the advise and <<he npc_admin>> orders another round of beers. "@@.npc_admin;Thanks again, <<callPlayer "npc_admin">>. I hope my Secretary is as productive and successful as you've been... and, well... I know this is a little shallow, but hopefully as cute, too! Performance is obviously the important thing, but there's no denying that there's something about a smartly dressed Secretary that puts a smile on my face.@@"<br>
<br>
You respond by smiling back at <<=setup.getNpcName('npc_admin', 'first')>> and <<he npc_admin>> grins wider.<br>
<br>
[<<moveTo "event_admin_drink_1_2a" "Chat for a bit." 1800>>]
</div>/*#
#desc: sexdoll complaining about new manager
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<div id="invframe" class="scrolltext">
You step into the elevator to find <<=setup.getNpcName('npc_sexdoll', 'first')>> waiting to go down. They look on the verge of tears, and you find yourself flashing back to your first meeting... it was a similar situation, though the two of you have both certainly come quite a ways since then. You ask them what's wrong?<br>
<br>
"@@.npc_sexdoll;It's my new boss! Oh, I was so excited to finally meet them but they just, like... welcomed me to the team and left me at my desk without fucking me or anything! I thought maybe they were just busy, or not a morning person? But when I asked if I could get them anything for lunch they were already eating some broccoli and chicken breasts they brought from home. By that point I was getting really worried, so I pulled out all the stops in the afternoon, bending over their desk to ask for help and show off my tits, asking if they needed relief... but they didn't grope me or fuck me or anything! I was so desperate I even purposefully messed up them sending me something to print, but rather than punish me like I deserved they just had me do it again and politely asked me to be more attentive in the future!@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> almost screams in frustration. "@@.npc_sexdoll;Tell me, is there something wrong with me?@@" She lifts up her too-short shirt to expose her breasts, the massive melons jiggling in front of her chest as her nipple rings bounce. "@@.npc_sexdoll;Look at these! Don't they just cry out to be squeezed or pulled or fucked? And, like, I caught a glimpse of the bulge in their pants after I talked to them one time, I'm pretty sure they were getting a bit uncomfortable in their chair the way they were shifting around... and goddess, I wanted to jump on it right then and there... but I can't let them think I'm some... uncontrolled slut. I worked hard for this position, and I want to serve... but something is, like wrong! I don't know what to do!@@"<br>
<br>
[<<moveTo "event_admin_sec_sexdoll_intro_2_2" "Suggest a more aggressive approach." 120 "<<set $npc_sexdoll.flags.admin_first='aggressive'>>">>]<br>
[<<moveTo "event_admin_sec_sexdoll_intro_2_2" "Maybe they just need to be patient?" 120 "<<set $npc_sexdoll.flags.admin_first='patient'>>">>]<br>
[<<moveTo "event_admin_sec_sexdoll_intro_2_2" "You don't have any ideas." 120 "<<set $npc_sexdoll.flags.admin_first='none'>>">>]
</div>/*#
#desc: console sexdoll about new manager
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 8, 0)>>
<<addWorkEvent 'adminSec4HR' _nextDate>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_sexdoll","npc_sexdoll_4")>>
<div id="invframe" class="scrolltext">
<<switch $npc_sexdoll.flags.admin_first>>
<<case "aggressive">>
You state that maybe their new boss is just too focused on work and needs <<=setup.getNpcName('npc_sexdoll', 'first')>> to take the reins a bit and show more initiative.<br>
<br>
"@@.npc_sexdoll;Hmm, maybe you're right? I mean, sure I hit the clubs, but maybe I've gotten too used to working bimbo, where people just, like... bend me over and fuck me on a whim, maybe I need to do a bit more initiative? I'd think that a manager here on the upper floors would know better... but, well, I'm just a <<if $fetish.sissy>>SISSI <</if>> bimbo, not my job to question such things.@@"<br>
<br>
She finally manages to finish wrangling her shirt back into position, having struggled mightily with the combination of too-small, too-short shirt and her giant tits. "@@.npc_sexdoll;I know! I'll come in to work early tomorrow so I can greet them from under their desk, show them that they don't even have to ask, that I'll always be there as their enthusiastic fuck-holes!@@"
<<case "patient">>
You suggest that maybe they should get to know their new boss, that showing how efficient they can be at the more business stuff will surely lead to "rewards." <br>
<br>
"@@.npc_sexdoll;Hmm... I guess I could do with a bit more focus on office matters. I've been spending so much time working bimbo and, like... that's a lot more dick-taking than dictation, if you know what I mean.@@"<br>
<br>
You nod, noting that working for a single boss <<=setup.getNpcName('npc_sexdoll', 'first')>> needs to remember that refractory periods are a thing, plus that their boss obviously has very important responsibilities to the company.<br>
<br>
"@@.npc_sexdoll;You're right! I mean, obviously if they were assigned a <<if $fetish.sissy>>SISSI <</if>>Secretary they're important, I just need to show that I'm just as motivated to advance the company as they are!@@" You watch the cogs spinning behind her bimbo gaze. "@@.npc_sexdoll;I know! I'll come in to work early tomorrow so I can greet them from under their desk, show them that they don't even have to ask, that I'll always be there as their enthusiastic fuck-holes!@@"
<<case "none">>
You apologise that you don't have any advise to give.<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'first')>> sighs and makes an effort to fix her shirt, struggling slightly with the combination of too-small, too-short shirt and her giant tits. "@@.npc_sexdoll;Maybe it's like... first day jitters? I'll come in to work early tomorrow so I can greet them from under their desk, show them that they can rely on me to do all the work as their enthusiastic fuck-holes.@@"
<<default>>
ERROR: unexpected <<=$npc_sexdoll.flags.admin_first>>
<</switch>>
<br><br>
The elevator dings for the lobby. <<=setup.getNpcName('npc_sexdoll', 'first')>>, seemingly buoyed by at least having a plan, struts out and heads for the exit.<br>
<br>
[<<moveTo "company_lobby" "Exit the elevator." 600>>]
</div>/*#
#desc: manager refers you for complaint about admin+sexdoll
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office where you find her with a puzzled frown on her face. You ask if you did anything wrong?<br>
<br>
"@@.npc_manager;You? No, no this... well, I realise that you are focused on your duties as my assistant, rather than the typical day to day of administering Human Relations, but, in this case, well, a complaint has come in that I believe you are uniquely suited to help address. Yes, a formal complaint has been lodged against <<=setup.getNpcName('npc_admin', 'first')>> by <<his npc_admin>> <<if $fetish.sissy>>SISSI <</if>>Secretary, of all people!@@"<br>
<br>
You can't hide your surprise, and you listen closely, baffled at what <<=setup.getNpcName('npc_admin', 'first')>> could have done wrong.<br>
<br>
"@@.npc_manager;So the problem, and this is a direct quote, is that "I've been working for over a week and my manager hasn't fucked me once! <<He npc_admin>> hasn't even let me unzip <<his npc_admin>> pants and suck on <<his npc_admin>> big cock!"@@"
<<=setup.getNpcName('npc_manager', 'formal')>> takes a slow breath, seeming to take a moment to get over the discomfort of quoting multiple contractions.<br>
<br>
"@@.npc_manager;Now, seeing that <<=setup.getNpcName('npc_admin', 'first')>> is your friend, and given your own experience as a <<if $fetish.sissy>>SISSI <</if>>Secretary... well, I thought you might be able to clean this matter up. On that note, I am delegating you full authority in this matter, up to and including transfering <<his npc_admin>> Secretary to another position if their differences prove irreconcilable.@@"<br>
<br>
Stakes suddenly raised you tell <<=setup.getNpcName('npc_manager', 'formal')>> that you will do your best on her behalf.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;I would expect nothing less. Well, go along, then.@@"<br>
<br>
[<<moveTo "event_admin_sec_admin_1_2" 'Hurry to <<=ps(setup.getNpcName("npc_admin", "formal"))>> office.' 300>>]
</div>/*#
#desc: check on admin+sexdoll
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Outer Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_admin.flags.secretary.advise.clothing>>
<<createAdvBGR "./images/locations/secretary_office_2.png" setup.charImage("npc_sexdoll","npc_sexdoll_5")>>
<<else>>
<<createAdvBGR "./images/locations/secretary_office_2.png" setup.charImage("npc_sexdoll","npc_sexdoll_3")>>
<</if>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName('npc_admin', 'formal'))>> office and immediately understand the source of the problems — as <<=setup.getNpcName('npc_sexdoll', 'first')>> lets the dildo gag that her chair had been forcing down her throat free and greets you with a smile.<br>
<br>
"@@.npc_sexdoll;Welcome! Are you here for <<=setup.getNpcName('npc_admin', 'formal')>>? Let me just inform <<him npc_admin>> you are waiting.@@"<br>
<br>
<<printThought "Yeah... a Secretary would have been one thing... but a sex-crazed fuck-doll <<if $fetish.sissy>>SISSI <</if>>Secretary was definitely not what <<=setup.getNpcName('npc_admin', 'first')>> was prepared for...">><br>
<br>
While you were distracted by your thoughts, <<=setup.getNpcName('npc_sexdoll', 'first')>> has been doing her job and she looks up at you with a smile to state that "@@.npc_sexdoll;<<=setup.getNpcName('npc_admin', 'formal')>> will see you now!@@"<br>
<br>
[<<moveTo "event_admin_sec_admin_1_3" 'Head into the inner office.' 60>>]
</div>/*#
#desc: discuss sexdoll with admin
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You head in to <<=ps(setup.getNpcName('npc_admin', 'first'))>> inner office where your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>>friend<<else>>friend<</if>> greets you with a smile, only to take on a look of sadness, and slight embarrassment, as you explain the reason for your visit.<br>
<br>
"@@.npc_admin;A formal complaint? Damn. I mean, I guess it's the right thing to do... but still... first time I've ever had any sort of complaint registered with HR... feels bad, <<callPlayer "npc_admin">>. As to the complaint well... <<if $npc_admin.flags.relationship == 'boyfriend'>>I'm your <<boy npc_admin>>friend, right? plus, well... <<else>>having sex with a subordinate just doesn't seem proper. I mean,<</if>> sure, I know Social Interaction Service Syndicate Inc. works a bit different, and <<=setup.getNpcName('npc_sexdoll', 'formal')>> is certainly acting enthusiastic but... well, it's different than with you and <<=setup.getNpcName('npc_manager', 'other')>>. Like, instead of just the work hierarchy, there's the physical implication, I mean, look at us! My thigh is almost the size of <<=ps(setup.getNpcName('npc_sexdoll', 'formal'))>> waist! It's just too much of an abuse of power, on multiple levels. And, like... I wasn't totally inconsiderate, I ordered her one of those chairs like the one you use... but she just keeps begging for my dick. Beyond the complaint I think it's distracting her or something, because I swear she's been making more mistakes, and when I mentioned it she looked like she was turning to present for a spanking!@@"<br>
<br>
<<if $npc_admin.flags.relationship == 'boyfriend'>>
[<<moveTo "event_admin_sec_admin_1_4" 'You are totally fine with <<=setup.getNpcName("npc_admin", "first")>> fucking <<his npc_admin>> Secretary.' 120 "<<set $npc_admin.flags.secretary.resolve='fuck'>>">>]<br>
<<else>>
[<<moveTo "event_admin_sec_admin_1_4" '<<=setup.getNpcName("npc_admin", "first")>> needs to get over <<him npc_admin>>self and fuck <<his npc_admin>> Secretary.' 120 "<<set $npc_admin.flags.secretary.resolve='fuck'>>">>]<br>
<</if>>
[<<moveTo "event_admin_sec_admin_1_4" 'Maybe <<=setup.getNpcName("npc_admin", "first")>> could at least let <<his npc_admin>> Secretary blow <<him npc_admin>> from time to time?' 120 "<<set $npc_admin.flags.secretary.resolve='blow'>>">>]<br>
[<<moveTo "event_admin_sec_admin_1_4" 'If <<=setup.getNpcName("npc_admin", "first")>> will not fuck <<=setup.getNpcName("npc_sexdoll", "formal")>>, <<he npc_admin>> needs to keep her in line with some regulation punishment.' 120 "<<set $npc_admin.flags.secretary.resolve='punish'>>">>]
[<<moveTo "event_admin_sec_admin_1_4" 'Perhaps it would be best if <<=setup.getNpcName("npc_sexdoll", "formal")>> transferred somewhere else.' 120 "<<set $npc_admin.flags.secretary.resolve='transfer'>>">>]
</div>/*#
#desc: resolve admin + sexdoll
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
<<switch $npc_admin.flags.secretary.resolve>>
<<case "fuck">>
<<if $npc_admin.flags.relationship == 'boyfriend'>>
You explain to <<=setup.getNpcName('npc_admin', 'first')>> that the two of you are in an open relationship and, as much as you enjoy <<his npc_admin>> delightfully big cock, <<he npc_admin>> is welcome to share it around... and that <<=setup.getNpcName('npc_sexdoll', 'formal')>> definitely, 100% wants <<him npc_admin>> to give it to her.
<<else>>
You explain that, while <<=ps(setup.getNpcName('npc_admin', 'first'))>> concerns are understandable, <<=setup.getNpcName('npc_sexdoll', 'formal')>> definitely, 100% wants <<him npc_admin>> to give her that dick.
<</if>>
<br><br>
<<=setup.getNpcName('npc_admin', 'first')>> thinks for a moment and then nods. "@@.npc_admin;Well... I guess, if you're okay with it, and she's that enthusiastically into it... after all, being a manager is a two-way street. Maybe I have been prioritising my own worries over my subordinate's needs?@@"
<<case "blow">>
You propose something of a compromise that, if <<=setup.getNpcName('npc_admin', 'first')>> isn't ready to fuck <<his npc_admin>> <<if $fetish.sissy>>SISSI <</if>>Secretary the way she desperately desires, <<he npc_admin>> could at least let her blow <<him npc_admin>>. You note that, just as <<=setup.getNpcName('npc_admin', 'first')>> likes to start the day with a nice cup of coffee, <<=setup.getNpcName('npc_sexdoll', 'formal')>> will be a much happier, and productive, employee if she can start each day with a throat-stretching mouthful of dick.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> thinks for a moment and then nods. "@@.npc_admin;I guess, if she's that enthusiastically into it... after all, being a manager is a two-way street. Maybe I have been prioritising my own worries over my subordinate's needs?@@"
<<case "punish">>
You explain that, if <<=setup.getNpcName('npc_admin', 'first')>> is dead-set on keeping <<getWordPenis "npc_admin">> cock to <<him npc_admin>>self, then <<he npc_admin>> needs to fulfill <<his npc_admin>> <<if $fetish.sissy>>SISSI <</if>>Secretary's needs in other ways. Namely, that when she steps out of line, she needs a nice firm spanking, and that denying her such is failing to meet her needs and setting the whole professional relationship up for failure.<br>
<br>
"@@.npc_admin;I guess you're right, and, like... it's not like you and <<=setup.getNpcName('npc_manager', 'formal')>> didn't try to prepare me for this. Seems I need to get over myself and adapt my management style to the needs of my subordinate.@@"
<<case "transfer">>
You sigh and note that, if <<=setup.getNpcName('npc_admin', 'first')>> isn't able to meet <<his npc_admin>> subordinate's needs, it would be best for everyone to transfer her to somewhere else in the company, and that <<=setup.getNpcName('npc_manager', 'formal')>> deputised you to authorise such.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> reluctantly nods. "@@.npc_admin;I feel bad about failing to make it work, but recognising incompatibilities and reorganising is sometimes the right approach, thanks for being here to guide things.@@"
<<default>>
ERROR: unexpected npc_admin.flags.secretary.resolve <<=$npc_admin.flags.secretary.resolve>>
<</switch>>
<br><br>
[<<moveTo "event_admin_sec_admin_1_5" 'Give <<=setup.getNpcName("npc_sexdoll", "formal")>> the news.' 120>>]
</div>/*#
#desc: update sexdoll on admin decision
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Outer Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_admin.flags.secretary.advise.clothing>>
<<createAdvBGR "./images/locations/secretary_office_2.png" setup.charImage("npc_sexdoll","npc_sexdoll_5") setup.charImage("npc_admin")>>
<<else>>
<<createAdvBGR "./images/locations/secretary_office_2.png" setup.charImage("npc_sexdoll","npc_sexdoll_3") setup.charImage("npc_admin")>>
<</if>>
<div id="invframe" class="scrolltext">
You head back to the outer office where <<=setup.getNpcName('npc_sexdoll', 'first')>> stops grinding on her chair and looks up, eager and nervous in equal measures. You look at <<=setup.getNpcName('npc_admin', 'first')>> and nod for <<him npc_admin>> to explain things.<br>
<br>
<<switch $npc_admin.flags.secretary.resolve>>
<<case "fuck">>
"@@.npc_admin;So, after discussing things with <<if $npc_admin.flags.relationship == 'boyfriend'>>my girlfriend<<else>>Miss <<=$player.last_name>><</if>>, heh, getting hit with the old clue bat, more like, well... I need to apologise. As your manager I've been too focused on myself, and in so doing have failed to ensure that your um... "professional" needs are met. I would understand if you would still prefer to have a transfer, but, if you're willing to give me another shot, well... I'd love to make up for the past and, um... fuck your brains out?@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'formal')>> beams with excitement, bouncing to her feet (to leave the sizable dildo she had been seated on wobbling) and immediately bending over her desk and <<if $npc_admin.flags.secretary.advise.clothing>>unzipping her tight<<else>>flipping up her short<</if>> skirt to reveal her <<=setup.getItemName('sissyomatic')>>-gaped bum. "@@.npc_sexdoll;Of course I want to continue to work under you! You're, like, the best boss I've ever had, so smart and considerate and handsome and wonderful, if I could just have that cock of yours up my ass from time to time, well... this would be the perfect job!@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> glances at you one final time and you motion for <<him npc_admin>> to get to it. A moment later and <<=setup.getNpcName('npc_sexdoll', 'formal')>> is biting her lip, her eye-lashes fluttering in pleasure as <<=setup.getNpcName('npc_admin', 'first')>> drills her into the desk, just like she wanted.
<<case "blow">>
"@@.npc_admin;So, after discussing things with <<if $npc_admin.flags.relationship == 'boyfriend'>>my girlfriend<<else>>Miss <<=$player.last_name>><</if>>, heh, getting hit with the old clue bat, more like, well... I need to apologise. As your manager I've been too focused on myself, and in so doing have failed to ensure that your um... "professional" needs are met. I would understand if you would still prefer to have a transfer, but, if you're willing to give me another shot, well... if you'd like to put giving me a blowjob on my calender first thing in the morning, we can see how that works.@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'formal')>> is practically salivating with excitement, her hands a blur as she brings up <<=ps(setup.getNpcName('npc_admin', 'formal'))>> calendar and quickly schedules the instructed "meeting"... and an after-lunch follow-up.<br>
<br>
You can see <<=ps(setup.getNpcName('npc_admin', 'first'))>> pants bulging with excitement as <<he npc_admin>> continues. "@@.npc_admin;Well, um... if you would like to make up for lost time, I could use some relief or I'm going to be distracted all afternoon—@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> is barely halfway through before <<=setup.getNpcName('npc_sexdoll', 'formal')>> is racing across the room. The dildo she had been sitting on wobbling in her wake, <<=setup.getNpcName('npc_sexdoll', 'formal')>> slides the final half metre on her knees and immediately unzips <<=ps(setup.getNpcName('npc_admin', 'first'))>> pants, nimbly dodges <<his npc_admin>> hard <<getWordPenis "npc_admin">> springing forth, and then goes balls-deep in a single lips-spread forward-dive.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> gasps as <<=setup.getNpcName('npc_sexdoll', 'formal')>> passionately sucks. Looks like you work here is done.
<<case "punish">>
"@@.npc_admin;So, after discussing things with <<if $npc_admin.flags.relationship == 'boyfriend'>>my girlfriend<<else>>Miss <<=$player.last_name>><</if>>, heh, getting hit with the old clue bat, more like, well... I need to apologise. Direction is one thing, but I need to reinforce that with action. While your overall performance has been more than satisfactory your incessant begging for my cock has gone too long without being addressed. If you would present your bottom for corrective measures?@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'formal')>> trembles in her chair for a moment, and then bounces to her feet, leaving the dildo she had been sitting on wobbling in her wake as she puts both hands on the edge of her desk and bends over. "@@.npc_sexdoll;I am sorry, <<Sir npc_admin>>, thank you advance for taking time to correct my disobedience.@@"<br>
<br>
With a final glance at you, <<=setup.getNpcName('npc_admin', 'first')>> gets into position, <<his npc_admin>> first slap across <<=ps(setup.getNpcName('npc_sexdoll', 'formal'))>> bottom echoing in the office and followed by a gasped, "@@.npc_sexdoll;One! Thank you, <<Sir npc_admin>>.@@"<br>
<br>
"@@.npc_admin;I think ten should be a good starting lesson... and we will adjust going forward.@@" <<=setup.getNpcName('npc_admin', 'first')>> states.<br>
<br>
"@@.npc_sexdoll;Perfect, <<Sir npc_admin>>, and you can go harder, <<Sir npc_admin>>.@@" <<=setup.getNpcName('npc_sexdoll', 'formal')>> moans.<br>
<br>
It seems that you have successfully resolved the "HR Complaint."
<<case "transfer">>
<<=setup.getNpcName('npc_admin', 'first')>> takes a deep breath. "@@.npc_admin;So, after discussing things with Miss <<=$player.last_name>> we have concluded that I am not capable of providing the leadership you require from a manager. Thus, your HR complaint is being resolved with a transfer to a manager more able to provide for your professional needs.@@"<br>
<br>
You can tell that <<=setup.getNpcName('npc_sexdoll', 'formal')>> is disappointed, but she nods obediently. "@@.npc_sexdoll;Thank you, <<Sir npc_admin>>. I am sorry that I will not be able to work under you, but I appreciate you acknowledging the conflict and moving quickly to resolve.@@"<br>
<br>
The "HR Complaint" resolved, you promise to relay the transfer request to <<=setup.getNpcName('npc_manager', 'formal')>> and depart.
<<default>>
ERROR: unexpected npc_admin.flags.secretary.resolve <<=$npc_admin.flags.secretary.resolve>>
<</switch>>
<br><br>
[<<moveTo "event_admin_sec_admin_1_6" 'Make your exit.' 120>>]
</div>/*#
#desc: report back to manager re admin+sexdoll
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.secretary.resolve == "transfer">>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<set _nextDate = setup.setNextDate($now, 7, 8, 0)>>
<<addWorkEvent 'adminSec5Check' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You make your exit and report back to <<=setup.getNpcName('npc_manager', 'formal')>> with the news.<br>
<br>
<<if $npc_admin.flags.secretary.resolve == "transfer">>
"@@.npc_manager;Disappointing. I had hoped you might be able to help the two of them work things out... but I will get the transfer paperwork signed and processed immediately. Thank you for attending to this matter, you may return to your regular duties.@@"
<<else>>
"@@.npc_manager;Wonderful news, and superbly handled. Sometimes all we in HR need to do is help an employee see the solution in front of them, and it would appear that you have done exactly that. Thank you for attending to this matter, you may return to your regular duties.@@"
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Curtsy and return to your desk." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: think to check in on admin+sexdoll
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<if $npc_manager.stage == 5>>
<<set _nextDate = setup.setNextDate($now, 7, 8, 0)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 30, 8, 0)>>
<</if>>
<<addWorkEvent 'adminSec5Check' _nextDate>>
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> sends you to make a quick delivery on another floor. The delivery passes without incident but, on the way back to your desk, you realise that you're walking past <<=ps(setup.getNpcName('npc_admin', 'formal'))>> office and decide to drop in to check how things are going.<br>
<br>
[<<moveTo "event_admin_sec_admin_2_2" 'See how the resolved HR complaint is playing out.' 120>>]
</div>/*#
#desc: check on admin+sexdoll
#status: RELEASED 0.8.9.0
#ignore_spell: hiiii
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 8, 0)>>
<<addWorkEvent 'adminSec6Help' _nextDate>>
<</if>>
<<set $player.location = "Outer Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/secretary_office_2.png" setup.charImage("npc_sexdoll","npc_sexdoll_5") setup.charImage("npc_admin","npc_admin")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> sends you to make a quick delivery and, on the way back you realise that you're walking past <<=ps(setup.getNpcName('npc_admin', 'formal'))>> office and decide to drop in to check how things are going.<br>
<br>
You walk in to find
<<switch $npc_admin.flags.secretary.resolve>>
<<case "fuck">>
<<=setup.getNpcName('npc_admin', 'formal')>> balls deep in <<=ps(setup.getNpcName('npc_sexdoll', 'formal'))>> ass, literally lifting her into the air with each muscular thrust, the both of them climaxing moments after you enter the room.<br>
<br>
"@@.npc_admin;Oh, hey <<if $npc_admin.flags.relationship == 'boyfriend'>><<callPlayer "npc_admin">><<else>>Miss <<=$player.last_name>><</if>>,@@" <<=setup.getNpcName('npc_admin', 'formal')>> states in greeting as <<he npc_admin>> gently places <<=setup.getNpcName('npc_sexdoll', 'formal')>> back down on her feet.<br>
<br>
"@@.npc_sexdoll;Yeah, hiiii!@@" <<=setup.getNpcName('npc_sexdoll', 'formal')>> adds with a post-orgasmic grin.<br>
<br>
"@@.npc_admin;As you can see, the office is running much smoother since you came to resolve that HR complaint. I was just giving a <<=setup.getNpcName('npc_sexdoll', 'formal')>> a snack. She more than earned the reward with her most recent report, one of the best slide decks I've ever seen, summarising learnings from the CDS merger. I offered that she could do the presentation herself but...@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'formal')>> smiles with pride, but shakes her head. "@@.npc_sexdoll;<<Sir npc_admin>> is too kind, I merely organised your notes. My job is to support you in all things, but you are the face of this office.@@"<br>
<br>
You smile at how well the two of them are getting on now, and joke that, if they keep this up, a Director position may well be in <<=ps(setup.getNpcName('npc_admin', 'formal'))>> future. "@@.npc_admin;Not bad for a <<boy npc_admin>> from CDS, eh? It's all about cooperation, consideration and aligning towards a common goal. I guess I forgot some of that but it's all resolved now and we're moving forward, I wouldn't have believed it before... but having a personal <<if $fetish.sissy>>SISSI <</if>>Secretary really has improved my productivity.@@"
<<case "blow">>
<<=setup.getNpcName('npc_sexdoll', 'formal')>> on her knees passionately blowing <<=setup.getNpcName('npc_admin', 'formal')>>. <<=setup.getNpcName('npc_sexdoll', 'formal')>> notices you
<<if $fetish.cum>>
and turns just as <<=setup.getNpcName('npc_admin', 'formal')>> cums, but the thick <<getWordCum>> splattering across her face only makes her smile, and she idly wipes herself off with a finger and licks it clean as
<<else>>
just as she finishes up, humming in pleasure as she waits for <<=setup.getNpcName('npc_admin', 'formal')>> to fully finish before
<</if>>
she rises to greet you.<br>
<br>
"@@.npc_admin;Welcome, Miss <<=$player.last_name>>. As you can see, I was just giving a <<=setup.getNpcName('npc_sexdoll', 'formal')>> a snack. She more than earned the reward with her most recent report, one of the best slide decks I've ever seen, summarising learnings from the CDS merger. I offered that she could do the presentation herself but...@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'formal')>> smiles with pride, but shakes her head. "@@.npc_sexdoll;<<Sir npc_admin>> is too kind, I merely organised your notes. My job is to support you in all things, but you are the face of this office.@@"<br>
<br>
You smile at how well the two of them are getting on now, and joke that, if they keep this up, a Director position may well be in <<=ps(setup.getNpcName('npc_admin', 'formal'))>> future. "@@.npc_admin;Not bad for a <<boy npc_admin>> from CDS, eh? It's all about cooperation, consideration and aligning towards a common goal. I guess I forgot some of that but it's all resolved now and we're moving forward, I wouldn't have believed it before... but having a personal <<if $fetish.sissy>>SISSI <</if>>Secretary really has improved my productivity.@@"
<<case "punish">>
<<=setup.getNpcName('npc_admin', 'formal')>> finishing up what looks to have been quite the hard spanking, <<=setup.getNpcName('npc_sexdoll', 'formal')>> swaying slightly as she stands, her face, and bottom, flush, as she turns to greet you with a curtsy. You notice a familiar style "for <<if $fetish.sissy>>SISSI <</if>>Secretary use only" paddle leaning against her desk... though it would appear that <<=setup.getNpcName('npc_admin', 'formal')>> decided to finish her off by hand.<br>
<br>
"@@.npc_admin;Nice of you to drop by, Miss <<=$player.last_name>>@@" <<=setup.getNpcName('npc_admin', 'formal')>> states formally. "@@.npc_admin;As you can see, <<=setup.getNpcName('npc_sexdoll', 'formal')>> have resolved our issues and the office is running much smoother since when the complaint was registered. Isn't that right, <<=setup.getNpcName('npc_sexdoll', 'formal')>>?@@"<br>
<br>
<<=setup.getNpcName('npc_sexdoll', 'formal')>> beams with pride. "@@.npc_sexdoll;So much better! A firm hand was exactly what I needed to focus on my work<<if !$npc_admin.flags.secretary.advise.clothing>>, and <<=setup.getNpcName('npc_admin', 'formal')>> has gone even further in mandating a specific uniform for me to wear. It is less slutty than my old one, but having my dress mandated like this feels even better than merely exposing skin in advertising that I am owned and at the beck and call of the company and my manager<</if>>.@@"
<<default>>
ERROR: unexpected npc_admin.flags.secretary.resolve <<=$npc_admin.flags.secretary.resolve>>
<</switch>>
<br><br>
[<<moveTo $scene.workEventReturn 'Congratulate the two of them and get back to your desk.' 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: admin asks for more advise
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_admin.flags.evil > 0 && $npc_admin.flags.evil < 4>>
<<if $npc_manager.stage == 5>>
<<set _nextDate = setup.setNextDate($now, 7, 8, 0)>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 30, 8, 0)>>
<</if>>
<<addWorkEvent 'adminSec6Help' _nextDate>>
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_admin', 'formal')>> and head over to <<his npc_admin>> office, your concern rising as you pass through the outer office and fail to find <<=setup.getNpcName('npc_sexdoll', 'formal')>> at her desk to greet you.<br>
<br>
Once you're in <<=ps(setup.getNpcName('npc_admin', 'formal'))>> private office you immediately ask what's wrong but <<he npc_admin>> quickly smooths things out.<br>
<br>
"@@.npc_admin;Oh! Sorry about the confusion. I know we had that conflict earlier but no, things between me and <<=setup.getNpcName('npc_sexdoll', 'formal')>> are going great. She's just become so efficient and knocking off all the work I have for her I've been letting her spend part of her shift "working bimbo." No, I asked you here for a different sort of advise. See, <<=setup.getNpcName('npc_sexdoll', 'formal')>> has been doing so well and, well... I'm running out of ideas for rewards. Per her request I've established a morning inspection where I confirm that she is properly uniformed and ready to work her "representative" position, though I think part of it is that she wants my strength for tightening her corset! The first time I was half expecting her to pass out, but she seems to love it, and it certainly takes her stunning figure up to full bombshell territory. Anyway, I raised her pay... though she seemed not to care, and I did manage to surprise her once with <<if $npc_admin.flags.secretary.resolve=="punish">>a new electronic butt-plug<<else>>an upgrade to her chair so she could sit and suck on clones of myself<</if>>, well, I was looking for ideas for something else to show my appreciation of the work she's doing. Preferably something that could be employed repeatedly.@@"<br>
<br>
[<<moveTo "event_admin_sec_admin_3_2" 'Tell to <<him npc_admin>> the secrets of the "good girl."' 120>>]
</div>/*#
#desc: admin asks for more advise
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'adminSec7Happy'>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_admin', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_admin")>>
<div id="invframe" class="scrolltext">
You smile and tell <<=setup.getNpcName('npc_admin', 'formal')>> that you know EXACTLY what <<he npc_admin>>... or, rather, what <<=setup.getNpcName('npc_sexdoll', 'formal')>> is looking for.<br>
<br>
<<=setup.getNpcName('npc_admin', 'formal')>> leans in with interest as you explain that all <<he npc_admin>> needs to do the next time that <<=setup.getNpcName('npc_sexdoll', 'formal')>> is due for a reward... or if she is looking a bit down and in need of a pick-me-up, is for <<=setup.getNpcName('npc_admin', 'formal')>> to hit her with a gentle "good girl..." and head-pat, if <<he npc_admin>> wants to really go over the top.<br>
<br>
"@@.npc_admin;Good girl? That's it?@@"<br>
<br>
You nod, feeling a bit of a tingle from <<=ps(setup.getNpcName('npc_admin', 'formal'))>> words, even if you weren't the target.<br>
<br>
"@@.npc_admin;Huh... okay. Well you're the expert, I'll see how it goes. Thanks again for the help, I'm sure you've got work to get back to, so I'll let you go.@@"<br>
<br>
[<<moveTo $scene.workEventReturn 'Return to your desk.' 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: sexdoll happy
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImage("npc_sexdoll","npc_sexdoll_5")>>
<div id="invframe" class="scrolltext">
You run into <<=setup.getNpcName('npc_sexdoll', 'first')>> again and she greets you with a beaming, delighted smile.<br>
<br>
"@@.npc_sexdoll;<<=$player.first_name>>! Oh, I'm having such a great week! I had just turned in a report last night and <<=setup.getNpcName('npc_admin', 'formal')>> said I was a "good girl!" <<he npc_admin>> really is just the bestest boss ever, I nearly fainted with joy, and now I'm twice as motivated to keep on top of my duties, <<if $npc_admin.flags.secretary.resolve == "punish">>even if <<his npc_admin>> punishments feel sooo good.<<else>>and under him!<</if>>@@"<br>
<br>
You congratulate your friend and they skip away happily.<br>
<br>
[<<moveTo "room_office_lunchbreak_toilet_female" "Women's Bathroom." 60>>]
</div>/*#
#desc: npc_work_doctor steals you away for hucow experiment
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'manager_morning_inspection_task'>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_work_doctor") "elite_guard">>
<div id="invframe" class="scrolltext">
You are riding the elevator up when, before you even reach your floor, the doors open and <<=setup.getNpcName("npc_work_doctor","formal")>> and a large, faceless guard board the elevator.<br>
<br>
"@@.npc_work_doctor;Ah! Just who I was looking for. I've been trying to get some time scheduled with you since your move... now would be just perfect.@@" The guard overrides the controls and the elevator goes racing away towards <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> laboratory.<br>
<br>
[<<moveTo "event_forced_hucow_2" "Go obediently." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_forced_hucow_2" "Object, you need to get to work!" 300 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: resist npc_work_doctor
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 14 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_work_doctor") "elite_guard">>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You nod politely, apologising for your busy schedule and assuring that you did not mean to be any trouble.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> grins — not exactly the most soothing expression, "@@.npc_work_doctor;YOU are no trouble at all...@@"<br>
<br>
You ride the rest of the way to <<his npc_work_doctor>> floor in silence, the guard quietly following behind you as <<=setup.getNpcName("npc_work_doctor","formal")>> leads the way to the back of <<his npc_work_doctor>> lab.
<<else>>
You try to politely indicate that you need to get to work, and that this sort of thing should probably go through your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
As you reach for the elevator controls the meaty paw of the guard grabs you by the wrist. Before you can pull back something is held over your face. You barely have time to process that <<=setup.getNpcName("npc_work_doctor","formal")>> is holding a mask over your mouth and nose and catch a faint whiff of chemicals before your thoughts dim and your body stops responding to commands.<br>
<br>
You slump to the floor of the elevator and <<=setup.getNpcName("npc_work_doctor","formal")>> orders the guard to pick you up, the <<man>> handling your limp body like a sack of potatoes as you arrive on <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> floor.
<</if>>
<br><br>
[<<moveTo "event_forced_hucow_3" "Continue." 300>>]
</div>/*#
#desc: strapped in for hucow procedure
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<applyExperience 'bondage' 16 'very' $SEEN_STRANGER>>
<<applyExperience 'submission' 14 'little' $SEEN_STRANGER>>
<<set _oral = setup.getTotalValue("oral")+1>>
<<applyExperience 'oral' _oral 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
Taken across <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab you are stripped naked and laid on a gurney and rapidly, and thoroughly strapped down. You open your mouth to ask what sort of procedure you are about to undergo, and are answered with a large gag shoved past your lips.<br>
<br>
"@@.npc_work_doctor;Just relax...@@" <<=setup.getNpcName("npc_work_doctor","formal")>> whispers menacingly, you moan as you feel your throat start to numb, the gag forced even deeper, stretching your lips and throat to the limit and a little beyond as a large tube is forced down and a mask is tightened over the lower half of your face.<br>
<br>
Two thinner, longer tubes are then threaded through your nostrils, followed by a pair of ear-plugs to rob you of another sense, entire head restrained inside and out, a machine taking over to regulate your breathing.<br>
<br>
"@@.npc_work_doctor;Excellent, excellent — let us get you the rest of the way plugged in and then we can start...@@"<br>
<br>
You feel a slight prick and your building panic dissipates into soft contentment as some sort of drug starts pumping through your veins and the procedure continues.<br>
<br>
[<<moveTo "event_forced_hucow_4" "Start what?" 300>>]
</div>/*#
#desc: filled for hucow procedure
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")+1>>
<<applyExperience 'anal' _anal 'normal' $SEEN_STRANGER>>
<<set $scene.chastity = setup.getItemFromType("cage")>>
<<if $scene.chastity != "">>
<<removeItem $scene.chastity true>>
<</if>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
<<if $scene.chastity>>
You gasp as your chastity device is completely removed.<br>
<br>
<<elseif $npc_manager.flags.require_chastity>>
"@@.npc_work_doctor;No chastity device? My, my — looks like I saved you from getting in quite the spot of trouble this morning.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states in amusement as <<he npc_work_doctor>> moves below.<br>
<br>
<</if>>
<<if $scene.plug && $scene.plug != $scene.chastity>>
Your anal plug slides free, leaving you empty for the procedure to continue.
<</if>>
<<if $player.body_ref.penis>>
<<if $player.body_ref.vagina>>
A pair of dildos slide into you, swelling inside your body to fill your ass and cunt to the limit much the way your throat is stuffed.
<<else>>
A dildo slides into your ass, filling you much the way the one in your throat does — deep, wide, and just past your comfortable limit.
<</if>>
Your <<getWordMyPenis>> twitches with excitement, "attended to" with a containing cylinder<<if $fetish.sounding>> and a beaded vibrating urethral plug of its own<</if>>.
<<else>>
A pair of dildos slide into you, swelling inside your body to fill your ass and cunt to the limit much the way your throat is stuffed.<<if $fetish.sounding>> A far thinner device makes its way down your urethra, its rounded beads nonetheless having you feeling stuffed and stimulated from yet another direction.<</if>>
<</if>>
<br><br>
Unable to move you lie helpless as more tubes are plugged into your existing attachments, a pair of small cups sealed over your nipples before twin massive hemispheres are brought down to
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
envelop your massive breasts
<<case 'large'>>
cover — with room to spare, your large breasts
<<case 'medium'>>
cover — with lots of room to spare, your large breasts
<<case 'small'>>
totally cover your chest and small breasts
<<case 'none'>>
totally cover your chest
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
beneath their oversized domes.<br>
<br>
"@@.npc_work_doctor;There we go...@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with a grin as <<he npc_work_doctor>> does a final check to tighten a few straps and check the myriad hoses that are now hooked to you. "@@.npc_work_doctor;Now to boot you up...@@"<br>
<br>
[<<moveTo "event_forced_hucow_5" "Boot me up?" 1800>>]
</div>/*#
#desc: hucow procedure starts
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.vagMilk = $player.body_ref.vagina>>
<<set $scene.penisMilk = $player.body_ref.penis && $fetish.penis_milking>>
<<set $scene.breastMilk = $fetish.breast_milking>>
<<include "equipSleepMilkers">>
<<set $scene.origBreasts = $player.body.breastsize[0]>>
<<set _oral = setup.getTotalValue("oral")+1>>
<<applyExperience 'oral' _oral 'unbelievable' $SEEN_STRANGER>>
<<set _anal = setup.getTotalValue("anal")+1>>
<<applyExperience 'anal' _anal 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bondage' 20 'unbelievable' $SEEN_STRANGER>>
<<changeHorny 100>>
<<set $player.body.breastsize[1] = Math.min(10, $player.body.breastsize[1]+2)>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<<setTmpEffect 'hormone_heavy'>>
<<set $scene.firstMilk = !$player.body_ref.milkEvent && $player.body.breastsize[1] > 0 && $player.body_ref.milkProduction == 0 && $player.flags.mealplan.hormones != "none">>
<<if $scene.firstMilk>>
<<set $player.body_ref.milkEvent = true>>
<<set $player.body_ref.milkProduction = 1>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'work_doctor' 'theme_psychiatrist_doctor_15'
8
'event_psychiatrist_session_hucow_first_1'
false
>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
You gasp as the contraptions filling you come alive, thrusting and pumping and sucking and vibrating. Despite the cacophony stimulating you beneath, your stringent bondage has you completely immobile, your body practically still despite the mind-blowing chaos going on within your orifices.<br>
<br>
"@@.npc_work_doctor;Perfection.@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with a grin — your first orgasm passing without your arousal doing anything but climbing higher. "@@.npc_work_doctor;Such a waste for you to spend your time doing silly clerical work when your body is just so naturally gifted at this...@@" <<He npc_work_doctor>> smiles, flicking a cylinder that you realise is starting to fill with milk — you look down —
<<if $scene.origBreasts == 0>>
you are now sporting a pair of small breasts, and from the size of the chambers something tells you they will not be small for long.
<<elseif $scene.origBreasts == 10>>
your already massive breasts swelled and sensitive in their equally large chambers.
<<else>>
your breasts have already swelled in their chamber at least a cup size. If your throat was not already bulging you would gulp as you made the mental connection to the size of the twin chambers...
<</if>>
<br><br>
Your eyes roll back as the rate of drugs pumped into your system increases, with a commensurate increase in milk production as your body courses with pleasure...<br>
<br>
<<printThought "Oh <<getWordGod>>... what is <<he npc_work_doctor>> doing to me?">><br>
<br>
The machines keep pumping
<<if $scene.origBreasts == 10>>
and your breasts swell to fill
<<else>>
and your breasts keep growing within
<</if>>
their massive chambers, each now-massive mammary pumping copious milk as you are violated from every angle. Bound so tight as to be motionless to an outside observer, you writhe in ecstasy, every thrust and buzz and squirt building and stimulating you to even greater production.<br>
<br>
The combination of drugs and pleasure makes it hard to think, but what thoughts you have are drawn to contemplating your friend <<=setup.getNpcName('npc_hucow', 'first')>>. Is this how she became as she is? How many times has she endured what you are going through now? This procedure so horrifying in its potent pleasure.<br>
<br>
[<<moveTo "event_forced_hucow_6" "The stimulation is too much, your consciousness flickers..." 3600>>]
</div>/*#
#desc: wake from hucow procedure
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.body.breastsize[1] = 10>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<<set $player.body_ref.milkProduction = 2>>
<<if $player.body_ref.penis && $player.body_ref.cumProduction > 0>>
<<set $player.body_ref.cumProduction = 2>>
<</if>>
<<set $scene.forced = $player.sec_style.sex.milking == '' && ($npc_manager.flags.cruel || $npc_manager.anger > $npc_manager.affection)>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $player.sec_style.sex.milking == '' && ($npc_manager.flags.cruel || $npc_manager.anger > $npc_manager.affection)>>
You wake up, still groggy and restrained to see <<=setup.getNpcName("npc_manager","formal")>> and <<=setup.getNpcName("npc_work_doctor","formal")>> both standing in front of you.<br>
<br>
"@@.npc_manager;I should be upset with you for using my slave without permission... but I have to admit she does look good like this... it really was past time she got some training as a milk sow.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> reaches out to adjust a knob and the breast cups suck harder, a squirt of milk shooting out and sucked off by the collector as <<=setup.getNpcName("npc_manager","formal")>> smiles.<br>
<br>
"@@.npc_manager;Very nice... A few more hours, you said.@@"<br>
<br>
"@@.npc_work_doctor;Yes, the first procedure is quite important to make sure everything is working to full capacity. I trust that will not interfere with her duties?@@"<br>
<br>
"@@.npc_manager;She will just have to make them up later, <<if $player.body_ref.balls>>and incorporate the testicle punishment devices<<else>>and feel free to ramp up the punishment — I know all about your theories of increased productivity through electro-stimulation<</if>>, the better to make the most efficient use of her time...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> walks away and you moan in despair as <<=setup.getNpcName("npc_work_doctor","formal")>> grins eagerly as <<he npc_work_doctor>> adjusts your settings. Everything seems to accelerate and you are soon howling in pain, breast<<if $player.body_ref.penis>> and penis<</if>> milkers pumping away with painful force.<br>
<br>
[<<moveTo "event_forced_hucow_7_strict_1" "Continue." 2000>>]
<<else>>
You wake up. Still bound and filled the machines have stopped and you realise that there is a loud argument echoing through the lab.<br>
<br>
"@@.npc_work_doctor;I have permission from <<=setup.getNpcName("npc_boss","formal")>> to apply what treatments I deem necessary to upper floor subordinates, I—@@"<br>
<br>
"@@.npc_manager;You do not have permission from ME. You do not EVER touch my property without permission. <<=setup.getNpcName("npc_boss","formal")>> is not here and if you try to invoke <<his npc_boss>> name one more time I will ship you back to <<him npc_boss>> in pieces.@@" Her voice drops half an octave as her previous rage turns to simmering wrath. "@@.npc_manager;Do I make myself perfectly. Crystal. Clear.@@"<br>
<br>
"@@.npc_work_doctor;Y-yes, <<=setup.getNpcName("npc_manager","other")>>,@@" <<he npc_work_doctor>> meekly responds. "@@.npc_work_doctor;Let me... let me release Miss <<=$player.last_name>>...@@"<br>
<br>
"@@.npc_manager;You do that,@@" <<=setup.getNpcName("npc_manager","formal")>> replies, crossing her arms and looming over <<his npc_work_doctor>> shoulder as <<=setup.getNpcName("npc_work_doctor","formal")>> starts removing your various attachments and unstraps you from the machine.<br>
<br>
[<<moveTo "event_forced_hucow_7" "Continue." 300>>]
<</if>>
</div>/*#
#desc: hucow hormone procedure strict
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$player.sec_style.sex.milking>>
<<set $player.sec_style.sex.milking = 'strict'>>
<</if>>
<<if $player.body_ref.penis && $fetish.penis_milking && !$player.sec_style.sex.testicle_milking>>
<<set $player.sec_style.sex.testicle_milking = 'strict'>>
<</if>>
<<if $player.body_ref.penis && $fetish.penis_milking && !$player.sec_style.submission.testicle_pain>>
<<set $player.sec_style.submission.testicle_pain = 'strict'>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> leers down at you as <<he npc_work_doctor>> keeps dialing up the power. You thrash against your bonds — not that their security allows you to actually move much in the process, as your body is ravaged from both ends, <<if $fetish.drugs>>candy-sweet drugs pumped down your throat by the large dildo forcibly using you<<else>>dildos pounding all of your holes<</if>> while the milkers suck and shock...<br>
<br>
The stimulation is too much, your thoughts swimming... no, drowning under the onslaught.<br>
<br>
<<printThought "I am a hucow, I exist to be milked and provide pleasure.">><br>
<br>
<<printThought "I am a hucow, I exist to be milked and provide pleasure.">><br>
<br>
<<printThought "I am a hucow, I exist to be milked and provide pleasure.">><br>
<br>
[<<moveTo "event_forced_hucow_7_strict_2" "I am a hucow, I exist to be milked and provide pleasure." 1800>>]
</div>/*#
#desc: hucow hormone procedure strict
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.plug>>
<<wearItem $scene.plug true>>
<</if>>
<<include "removeGenitalMilkers">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
Having totally lost time you wake up confused to find <<=setup.getNpcName("npc_work_doctor","formal")>> standing over you.<br>
<br>
<<printThought "Moo?">><br>
<br>
"@@.npc_work_doctor;Time's up! Though if you ever feel the need for more... just come by and I'll give you the night you deserve...@@"<br>
<br>
The heavy fog over your thoughts is slowly dissipating as you stumble free of your restraints and stagger towards the elevator...<br>
<br>
[<<moveTo "event_forced_hucow_8" "Back to the office..." 300>>]
</div>/*#
#desc: released after hucow procedure
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.plug>>
<<wearItem $scene.plug true>>
<</if>>
<<include "removeGenitalMilkers">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You stagger out of the machine, your first word after the oversized gag-tube is removed a moaning "@@.pc;Moo.@@"<br>
<br>
"@@.npc_manager;What did you—@@" <<=setup.getNpcName("npc_manager","formal")>> starts but <<=setup.getNpcName("npc_work_doctor","formal")>> desperately starts placating her.<br>
<br>
"@@.npc_work_doctor;Just a temporary side effect from ending the procedure so abruptly! I told you to leave her under for another hour but—@@" <<He npc_work_doctor>> stops, the glare <<=setup.getNpcName("npc_manager","formal")>> shoots <<him npc_work_doctor>> with is cold enough to freeze mercury. "@@.npc_work_doctor;As I said... temporary... I'll, uh... leave now and the two of you can sort things out.@@" <<He npc_work_doctor>> scrambles out of the room before <<=setup.getNpcName("npc_manager","formal")>> can reply and her attention fully re-focuses on yourself.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;My poor thing,@@" she states gently as you lean against her for support. "@@.npc_manager;Come, let us get out of this... place.@@"<br>
<br>
You try to take a step after her but your body is only barely under your control, your muscles cramped from straining against unyielding straps, <<if $scene.origBreasts < 10>>the weight of your massive new breasts pulling you off-balance, <</if>>your mind still fuzzy from drugs and orgasmic overload. You stumble and she is there to catch you "@@.npc_manager;There, there, your <<=setup.getNpcName("npc_manager","title")>> is here, how about I just carry you back to the office, hmm?@@"<br>
<br>
You half nod, drooling slightly as your jaw muscles try to remember a position other than "gaped wide for a massive cock." <<=setup.getNpcName("npc_manager","formal")>> scoops you up with ease, grabbing your bag of clothes and belongings as she
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;Look what they did to you... you really need to be more careful, things here on the upper floors, well... there are far fewer guard-rails for property. Come, let us return to the office and get you presentable.@@"<br>
<br>
You try to take a step to follow <<=setup.getNpcName("npc_manager","formal")>>, but your body is not up to the task. Your muscles cramped from straining against unyielding straps, <<if $scene.origBreasts < 10>>the weight of your massive new breasts pulling you off-balance, <</if>>your mind still fuzzy from drugs and orgasmic overload, you stumble.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> is there to catch you, sighing slightly as she keeps you from hitting the ground. You try to thank her but your jaw is still stuck in "gaping wide for a massive cock" mode and all that you manage is mangled nonsenses and a stream of drool. <<=setup.getNpcName("npc_manager","formal")>> shakes her head with a sigh and casually tosses you over her shoulders. Reaching down she grabs the pile of your stuff and then
<</if>>
carries you out of the lab.<br>
<br>
[<<moveTo "event_forced_hucow_8" "Back to the office..." 300>>]
</div>/*#
#desc: back in office dress after hucow procedure
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.firstHormone = $player.sec_style.body.hormones == "">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> places you down in your chair and then takes a seat on the edge of your desk.<br>
<br>
"@@.npc_manager;So... as you can see, and feel... <<=setup.getNpcName("npc_work_doctor","formal")>> decided to see how you would work as a hu-cow... quite well, it would seem...<<if $currentTasks.hasOwnProperty('manager_bed_milking_penis') && $currentTasks.manager_bed_milking_penis.finished
|| $currentTasks.hasOwnProperty('manager_bed_milking_vag') && $currentTasks.manager_bed_milking_vag.finished
|| $currentTasks.hasOwnProperty('manager_bed_milking_both')&& $currentTasks.manager_bed_milking_both.finished>> Not exactly a revelation, but <<=setup.getNpcName("npc_work_doctor","last")>> is nothing if not uncreative.<</if>> As for the rest... <<he npc_work_doctor>> was most of the way through the full procedure before I showed up, thus...@@" she gestures at your chest, "@@.npc_manager;You will find them VERY productive, even divorced from the sensation overload that is used to spur such at the industrial level.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> pauses to let things sink in.
<<if $scene.firstHormone>>
"@@.npc_manager;One further issue... that hormonal overload has probably fried your endocrine system. You are going to need to go on hormones,@@" she places a large jar of pills in front of you, "@@.npc_manager;These should even you out, I have had them on hand for a while, actually... stress can do such a number on hormones so I had a nice estrogen-heavy blend made up specifically for you, and it would seem I was right to be prepared.@@"<br>
<br>
[<<moveTo "event_forced_hucow_8_hormone" "Accept the hormones." 60 "<<set $scene.force=false>>">>]<br>
[<<moveTo "event_forced_hucow_8_hormone" "No, you don't want to take estrogen!" 60 "<<set $scene.force=true>>">>]
<<else>>
"@@.npc_manager;One slight bit of good news — you already being on hormones means that your body was ready for the overload that was just pumped into you. You will need to remain consistent with your hormonal regime, but we were already on top of that, so no real change, there.@@"<br>
<br>
You're starting to feel a bit recovered and she smiles.<br>
<br>
"@@.npc_manager;How about you get dressed? A bit of normalcy will probably help you get back to yourself after that intensity.@@"<br>
<br>
[<<moveTo "event_forced_hucow_9" "Get dressed." 300>>]
<</if>>
</div>/*#
#desc: back in office dress after hucow procedure
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.force>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<set $player.sec_style.body.hormones = "forced">>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<set $player.sec_style.body.hormones = "obedient">>
<</if>>
<<if !$player.body_ref.penis>>
<<addNpcTheme 'npc_psychiatrist' 'supplement' 'theme_psychiatrist_supplement_11'
6
'event_psychiatrist_session_boiless_hormone_adjust_1'
true
>>
<</if>>
<<set $player.flags.mealplan.hormones_unlocked = true>>
<<setTmpEffect 'hormone_heavy'>>
<<set $player.flags.mealplan.hormones_required = true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 12, 29, false)>>
<<addTaskById 'hormones_checkin'>>
<<addEvent 'hormones_checkin' _nextDate>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.force>>
You start to object to the idea of going on hormones and <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze narrows. "@@.npc_manager;I am quite sorry, but, unfortunately, this is not a choice. The human body is just not designed to endure what <<=setup.getNpcName("npc_work_doctor","formal")>> forced you through... and the only solution to prevent further damage is a bit of medical assistance. Proper medicine not... what <<he npc_work_doctor>> does.@@" She places the bottle down on your desk. "@@.npc_manager;I will be monitoring your hormonal levels going forward — so take your medicine, it is for your own good. Now that that is dealt with, you should probably get dressed — it will help you get back into a more human headspace rather than... wherever you were during that procedure.@@"
<<else>>
You nod and thank her for the pills.<br>
<br>
<<printThought "I guess it is kind of weird that I haven't started taking hormones... oh well, no time like the present.">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Wonderful — so obedient, and I will be helping you maintain that obedience by checking in that you are sticking to your new regimen. How about you get dressed, being back in human clothes should help your brain re-centre after the intensity that <<=setup.getNpcName("npc_work_doctor","formal")>> subjected you to.@@"
<</if>>
<br><br>
[<<moveTo "event_forced_hucow_9" "Get dressed." 300>>]
</div>/*#
#desc: get dressed after hucow procedure
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_work_doctor.flags.hucowProcedure = 1>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('cow')>>
<<useClothSetPop 'tmp'>>
<<if $scene.chastity != "">>
<<wearItem $scene.chastity true>>
<<manipulateItem $scene.chastity 'lock' true>>
<</if>>
<<if $scene.plug != "">>
<<wearItem $scene.plug true>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> waits for you to dress and then reaches down and squeezes your leg in comfort. "@@.npc_manager;As to the rest, well... any competent bodyshop would be able to give you a more reasonable pair of breasts, and probably fix the milk production if you find the leaking burdensome. To make up for things you can go ahead and take the rest of the day off, relax, get some work done if you want, okay?@@"<br>
<br>
[<<moveTo "event_forced_hucow_10" "Insist you want to work!" 300>>]<br>
[<<moveTo "room_foyer" "Thank her and go home." 900>>]
</div>/*#
#desc: insist on working after hucow procedure
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You insist that you would rather work than go home.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, clearly impressed by your devotion.<br>
<br>
"@@.npc_manager;My, my — such swift recovery... well, since you insist. To be perfectly honest I was not exactly looking forward to a day without my sweet <<if $fetish.sissy>>SISSI <</if>>Secretary. Despite your background you have blossomed into something near essential and I have become quite dependent on you!@@"<br>
<br>
You blush and reply that you just "@@.pc;Do your best.@@"<br>
<br>
"@@.npc_manager;Yes, well... if you are going to get back to work — probably a good thing to help you mentally recover, well... work starts with inspection, so let us get to it...@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4" "On to your inspection..." 60 "<<set $scene.directInspection=true>>">>]
</div>/*#
#desc: phase 4 morning, call from manager if late
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include "calcAtOffice">>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage && !$inventory[$scene.cage].status.lock>>
<<if setup.getChastityLevel() != 5>>
<<set $scene.forgot_cage_lock = true>>
<</if>>
<<manipulateItem $scene.cage 'lock' true>>
<</if>>
<<set $scene.at_office = $scene.at_office || $scene.directInspection>>
<<set $scene.oldOffice = $scene.beforetasklocation && setup.inPassageTag($scene.beforetasklocation.last(),"cds_office")>>
<<if $scene.at_office>>
<<include "inspectionData_gasmask">>
<<set $scene.genital_change = setup.changedGenitals($player,$npc_manager, true)>>
<<if $scene.genital_change == "all" || $scene.genital_change == "penis">>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<</if>>
<<storeVisual $player $npc_manager>>
<<set $scene.forcedCleaning = !setup.checkTaskReason("manager_morning_inspection_task","clothesClean") || !setup.checkTaskReason("manager_morning_inspection_task","playerClean")>>
<<set $scene.pinkODfirst = !$npc_manager.flags.seenMkOneOD && $player.hair.style == 'long_open' && $player.hair.color == 'blonde' && $player.flags.pink_pill.times_od1 > 0 && setup.hasTmpEffect('sissypill_mk1_od')>>
<<if $scene.pinkODfirst>>
<<set $npc_manager.flags.seenMkOneOD = true>>
<</if>>
<<set $currentTasks.manager_morning_inspection_task.condition="">>
<<set $currentTasks.manager_morning_inspection_task.finished=false>>
<<include "inspectionData_calcClothStyle">>
<<if $npc_manager.flags.hascagekey && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty("chastity_key")>>
<<deleteMember $currentTasks.manager_morning_inspection_task.trigger 'chastity_key'>>
<</if>>
<<set $scene.taskComplete = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<if $scene.taskComplete>>
<<set $currentTasks.manager_morning_inspection_task.condition="Complete">>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<include "inspectionData_workSlutty">>
<<set $scene.taskComplete = $scene.bimboPassed>>
<<if !$scene.taskComplete>>
<<include "inspectionData_workFormal">>
<<set $scene.taskComplete = $scene.formalPassed>>
<<if !$scene.taskComplete>>
<<include "inspectionData_workNearOffice">>
<<set $scene.taskComplete = $scene.nearOfficePassed>>
<<if !$scene.taskComplete>>
<<include "inspectionData_workNormal">>
<<set $scene.taskComplete = $scene.normalPassed>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $currentTasks.manager_morning_inspection_task.finished=true>>
<<set $scene.firstSissyChoker = setup.checkItemWorn('choker_sissy') && !$npc_manager.flags.seenSissyChoker>>
<<if $scene.firstSissyChoker>>
<<addEvent 'sissy_choker_elevator'>>
<<set $npc_manager.flags.seenSissyChoker = true>>
<</if>>
<<set $scene.applyAnger = false>>
<<include "calculateAslut">>
<<if !$scene.directInspection>>
<<set $scene.uniform_upgrade = setup.calcUniformUpgrade()>>
<<if $scene.uniform_upgrade != "">>
<<include "event_manager_check_uniform_upgrade">>
<</if>>
<</if>>
<<include "calcBaseCage">>
<<set $scene.differentCage = $npc_manager.flags.require_chastity && $npc_manager.flags.lastCage != _cage>>
<<set $scene.broken_cage = setup.checkItemWorn("broken_cage") || setup.checkItemWorn("broken_belt")>>
<<set $scene.hadCageKey = $npc_manager.flags.hascagekey>>
<<if !$scene.differentCage && !$scene.genital_change>>
<<set $scene.turnoverkey = $npc_manager.flags.trustplayerwithkey && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key') && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>
<<if $scene.turnoverkey>>
<<set $npc_manager.flags.hascagekey = true>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<set $scene.nokey = !setup.checkItemInInventory(_keyId)>>
<<deleteItem _keyId>>
<</if>>
<</if>>
<<include "calculateMilkEvent">>
<<set $scene.bondageTaskFail = $player.work.advance > 0 && $currentTasks.hasOwnProperty('manager_bondage_task') && $currentTasks.manager_bondage_task.condition == "Failed">>
<<if $scene.bondageTaskFail>>
<<deleteTask 'manager_bondage_task'>>
<<addTaskById 'manager_bondage_task'>>
<<set $player.work.oneTimePay -= Math.floor(.05*$player.work.payment)>>
<<elseif $player.work.advance > 0 && $currentTasks.hasOwnProperty('manager_bondage_task')>>
<<deleteTask 'manager_bondage_task'>>
<<addTaskById 'manager_bondage_task'>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<include "checkManagerOutfit">>
<<if !$scene.manager_outfit>>
<<set $scene.latexFailed = $currentTasks["manager_morning_inspection_task"].trigger.hasOwnProperty("latex") && !setup.checkTaskReason("manager_morning_inspection_task", "latex")>>
<<if $scene.latexFailed>>
<<set $scene.taskComplete = false>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<</if>>
<<include "inspectionData_plug">>
<<else>>
<<if $scene.elevator || $scene.oldOffice || $scene.beforetasklocation && $scene.beforetasklocation.last() == "company_lobby">>
<<set $scene.directInspection = true>>
<<else>>
<<set $currentcall=true>>
<</if>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.at_office>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<else>>
<<set $player.location = "Phonecall">>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if !$scene.at_office>>
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not being in your office at <<if $options.militaryTime>>8:00<<else>>eight o'clock<</if>>.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>... <<=$player.first_name>>. You know by now that you are expected at work by eight at the latest and yet here I stand... alone.@@"<br>
<br>
She cuts you off before you can even start to explain yourself.<br>
<br>
<<if $scene.elevator>>
"@@.npc_manager;I know you are in the building, now hurry up and get to your desk so we can start the day!@@"<br>
<br>
Fortunately for you the elevator door opens once again, empty this time, clearing your path to head up.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4" 'Head straight to her office.' 60 "<<set $scene.at_office=true>>">>]
<<elseif $scene.oldOffice || $scene.beforetasklocation == "company_lobby">>
"@@.npc_manager;I know you are in the building now hurry up and get to your desk so we can start the day!@@"<br>
<br>
<<if ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis) && !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_inspection_stage4_nochastity_1" 'Drop everything and head straight to her office.' 60>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_4" 'Drop everything and head straight to her office.' 60>>]
<</if>>
<<elseif setup.inPassageTag($scene.beforetasklocation.last(), 'home')>>
"@@.npc_manager;No, why you are not here does not matter, merely that you are not. You have a job, and that job is to support me in my job thus, if you are not here... well, the I do not believe I need to lay out the dominoes any clearer. In any case a vehicle should be arriving to pick you up and bring you to where you belong post haste.@@"<br>
<br>
She hangs up and your phone immediately rings again to inform you that a ride-share has arrived.<br>
<br>
<<printThought "I should probably go... before she takes even more severe action to bring me in...">><br>
<br>
<<set $scene.stow = setup.getItemsInInventoryByFilter('tag', ['bulky']) || setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<if $scene.stow.length>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<itemsToWardrobe _items>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bulky'])>>
<<itemsToWardrobe _items>>
<</if>>
<<readyToLeaveHome>>
<<if $player.readytoleave>>
<<if !setup.checkItemTypeWorn("cage") && ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis)>>
[@@.link_locked;I'm in enough trouble to show up to work out of chastity.@@]
<<else>>
[<<moveTo "event_work_stage4_ride" 'Ride to work.' 300 "<<set $scene.stow=[]>><<set $currentcall=false>>">>]
<</if>>
<<else>>
[@@.link_locked;Not going out like this...@@]
<</if>>
<<else>>
"@@.npc_manager;No, why you are not here does not matter, merely that you are not. You have a job, and that job is to support me in my job thus, if you are not here... well, the I do not believe I need to lay out the dominoes any clearer. In any case a vehicle should be arriving to pick you up and bring you to where you belong post haste.@@"<br>
<br>
She hangs up and your phone immediately rings again to inform you that a ride-share has arrived.<br>
<br>
<<printThought "I should probably go... before she takes even more severe action to bring me in...">><br>
<br>
[<<moveTo "event_work_stage4_ride" 'Ride to work.' 300 "<<set $currentcall=false>>">>]
<</if>>
<<elseif $player.flags.collar.collarId != "" && $player.flags.collar.owner != "npc_manager" && !$player.flags.collar.managerAck>>
Walking out of her office, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze alights on your throat.<br>
<br>
<<include "managerCollarDescription">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_inspect" 'Continue.' 60 "<<set $player.flags.collar.managerAck=true>>">>]
<<elseif $scene.firstSissyChoker>>
Walking out of her office, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze alights on your pink choker and she smiles.<br>
<br>
<<include "inspectionText_gasmask">>
"@@.npc_manager;My, my! Look what you picked up... oh, it is so beautiful seeing you wearing that... and knowing that you are walking around in public... oh, you truly are such a delight, my perfect pink plaything! I mean... pink <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
She winks and you blush, knowing that the first one was definitely a more accurate summation of how she sees you...<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_inspect" 'Continue the inspection.' 60>>]
<<elseif $scene.pinkODfirst>>
Walking out of her office, <<=setup.getNpcName("npc_manager","formal")>> stops short the instant she lays eyes on you.
<<include "inspectionText_gasmask">>
"@@.npc_manager;What the...@@" you brace for a rebuke, but her smile is one of mild amusement as she shakes her head. "@@.npc_manager;How many pills did you take?@@"<br>
<br>
<<if $player.flags.drugs.breast > 0>>
You, somewhat awkwardly, explain that, actually, it was a drug <<=setup.getNpcName("npc_work_doctor","formal")>> gave you called <<=setup.getItemName("drug_breast")>>.<br>
<br>
"@@.npc_manager;I see... well, far be it from me to contradict a medical expert but... I think you may wish to exercise a bit more prudent caution in what you ingest. As you have found they can have quite striking effects, and that sort of thing can be... hard on your body. With that warning out of the way, shall we continue on to normal business?@@"<br>
<br>
You nod.
<<else>>
You blush and reply that you only took two and she nods knowingly.<br>
<br>
"@@.npc_manager;Two... you mean double the prescribed dose? And with you seemingly so naturally susceptible... well, I cannot say I dislike the results. Your hair is stunning, a golden treasure some women would kill for and your breasts... <<if $player.body.breastsize[0] == 6>>well, they seem to perfectly balance out your womanly hips<<elseif setup.getEffectiveBreastSize() > 6>>well, they are a little large for your frame, but I think it works<<elseif $player.body.breastsize[0] == 0>>well... it's a bit of a surprise really, I would have anticipated them to develop along with that hair, but I suppose going off label can have unexpected results<<else>>well, to be honest, they are a little smaller than I might have expected, but I am sure they will fill out in time.<</if>>.@@"<br>
<br>
She walks closer and takes a more serious tone. "@@.npc_manager;Now, though I am not angry with you, I want you to promise to take more care in the future — as you have seen those pills are quite potent and I do not want you inviting disaster by taking too many or mixing them with alcohol or anything. With that warning out of the way, shall we continue on to normal business?@@"<br>
<br>
You nod, unsure if her warning was an actual order or a sly invitation...
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_4_inspect" 'Continue.' 60>>]
<<elseif $scene.broken_cage>>
<<include "inspectionText_gasmask">>
You consider the broken <<if setup.isCage()>>cage still locked onto your private bits<<else>>belt still locked around your waist and private bits<</if>>, but there's nothing you can do about it now and you wait nervously to see how <<=setup.getNpcName("npc_manager","formal")>> will react.<br>
<br>
[<<moveTo "event_manager_broken_chastity_1" "Continue." 180 "<<useClothSetPush 'daily_evaluation_clothes'>><<set _catsuit = ''>><<if setup.checkItemTypeTag('bodysuit', ['latex'])>><<set _catsuit = setup.getItemFromType('bodysuit')>><</if>><<removeEverythingButUnderwear>><<if _catsuit>><<wearItem _catsuit true>><</if>>">>]
<<elseif $player.body_ref.penis && ($player.body.penissize[1] <= 1 || $npc_manager.flags.penis_shrinking.shrink_event_ready) && !$npc_manager.flags.penis_shrinking.first_secure_comment && $fetish.chastity_penis>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office. She has an odd look on her face, as if she knows something as she nods and orders you to "@@.npc_manager;Strip, my dear. I believe a complete inspection is the order of the day this morning...@@"<br>
<br>
[<<moveTo "event_morning_inspection_shrink_cage_1" "Do as she commands..." 30 "<<useClothSetPush 'daily_evaluation_clothes'>><<removeEverythingButUnderwear>><<set $scene.inspectionReturn='event_manager_daily_check_stage_4_inspect'>><<set $scene.rerun=true>>">>]
<<elseif $scene.genital_change != "" && !($player.body_ref.penis && $npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none') && !setup.hasTmpEffect('drug_dick')>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office.<br>
<br>
<<include "inspectionText_gasmask">>
She pauses, a puzzled look on her face as she looks at your crotch. "@@.npc_manager;What did you—? Take off your clothes, I want a proper view of what is going on down there.@@"<br>
<br>
<<printThought "This must be about my surgery... how can she tell through clothes?">><br>
<br>
[<<moveTo "event_inspection_genitals_1" 'Do as she commands.' 300 "<<set $scene.cleaningReturn='event_manager_daily_check_stage_4_inspect'>>">>]
<<elseif $player.body_ref.penis && $npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none'>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office.<br>
<br>
<<include "inspectionText_gasmask">>
She pauses, seeming to be staring directly at your (recently shrunk) <<getWordMyPenis>>...<br>
<br>
[<<moveTo "event_morning_inspection_shrink_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_4_inspect'>>">>]
<<elseif setup.checkItemOwned("advance_chastity_cage_key") && $currentTasks.hasOwnProperty("task_chastity_trial") && $currentTasks.task_chastity_trial.condition == "Complete" && !$npc_manager.flags.took_adv_key>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office and addresses you with a smile. "@@.npc_manager;So... I believe we have a bit of a celebration to make today.@@"<br>
<br>
You look up at her confused, and more than a touch worried.<br>
<br>
[<<moveTo "event_work_adv_key" "Continue." 60>>]
<<elseif $scene.differentCage>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office. Her lazer-like gaze focuses on your crotch and you would swear she could see right through your clothing...<br>
<br>
<<set _cage = setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<if setup.checkItemOwned(_keyId)>>
<<printThought "Uh-oh... this isn't what I was wearing before...<<if !setup.checkItemInInventory(_keyId)>> and I left the key at home...<</if>>">>
<<elseif $scene.hadCageKey>>
<<printThought "Uh-oh... this isn't what I was wearing before... and she still has the key!">>
<<else>>
<<printThought "This isn't what I was wearing before... but I had the key, so this has to be allowed, right?">>
<</if>>
<br><br>
Without a word she leads you into her inner office.<br>
<br>
[<<moveTo "event_wrong_chastity_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_4'>>">>]
<<elseif $scene.improperKey>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office. Her lazer-like gaze looks at your chastity device... and then at your pocket.<br>
<br>
Without a word she leads you into her inner office.<br>
<br>
[<<moveTo "event_eroneous_key_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_4'>>">>]
<<elseif $scene.milkEvent && !$scene.first_milk>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office.
<<include "inspectionText_gasmask">>
Her gaze narrows at the sight of the wet spots over your nipples. "@@.npc_manager;What is that? Take off your top.@@" She commands.<br>
<br>
[<<moveTo "event_morning_inspection_milk_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_4_inspect'>>">>]
<<elseif $scene.leakEvent>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office.
<<include "inspectionText_gasmask">>
Her gaze narrows as she looks between your legs. "@@.npc_manager;Take off your <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>skirt<<else>>pants<</if>>.@@" She commands.<br>
<br>
[<<moveTo "event_secretary_style_penis_milking_strict_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_4_inspect'>>">>]
<<elseif $scene.taskComplete && setup.getEffectivePlugSize() >= 20 && (!setup.checkItemTypeWorn("cage") || setup.getChastityLevel() < 5 || setup.getItemObjFromType("cage").plugBonus >= 5) && !setup.hasThreshold('anal', 'secretary_anal', 'fist_training') && !$scene.directInspection>>
<<=setup.getNpcName("npc_manager","formal")>> steps out of the office and pauses, ordering you to turn in a circle for her.<br>
<br>
<<include "inspectionText_gasmask">>
[<<moveTo "event_anal_intro_1" 'You can feel <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze fixate on your double plugged-filled rear...' 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_4_finalize'>><<set $scene.fromInspection=true>>">>]
<<elseif $scene.taskComplete && (!$player.sec_style.body.breasts && setup.checkItemTypeWorn("corset") && $player.timebased.tightlacing >= 90 && !State.hasPlayed("event_secretary_style_breasts_work_1"))>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office. Her eyes run up and down your body and she smiles. "@@.npc_manager;Mmm, that corset is doing WONDERS for your figure only...@@".<br>
<br>
[<<moveTo "event_secretary_style_breasts_work_1" "Only... what?" 180 '<<set $scene.inspectionReturn="event_manager_daily_check_stage_4_finalize">>'>>]
<<elseif $scene.taskComplete && $player.sec_style.body.boiless == "strict" && $player.flags.mealplan.base != "boiless">>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office and hasn't even started your inspection when she frowns. "@@.npc_manager;Where is your lunch? I thought you understood that, for the sake of efficiency, your are to switch over to the efficiency of Boil-Less, a much more expedient method to get the nutrients you need to perform your duties. Fortunately for you, I foresaw this eventuality.@@" She places a serving packet of Boil-Less out of your desk. "@@.npc_manager;Now, I believe that has everything in order, so I shall let you get to work.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Get to work." 60 "<<set $player.flags.mealplan.base = 'boiless'>><<set $player.flags.mealplan.unlocked = ['boiless']>>">>]
<<elseif $scene.taskComplete>>
<<include "inspectionText_gasmask">>
<<if State.hasPlayed("event_work_stage4_chair_1") || $events.hasOwnProperty("jaywalking_bj_aftermath_4")>>
<<if $scene.aslut1>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office and seems about to wave the inspection yet again — and then she pauses, her smile blossoming with pride.<br>
<br>
[<<moveTo "event_aslut_1_complete_1" "What is she thinking?" 360 "<<set $scene.skipInspection=true>>">>]
<<elseif $player.sec_style.submission.collar == "" && setup.checkItemWorn("obedience_collar") && !State.hasPlayed("event_enthusiast_collar_1")>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office and seems about to skip your inspection only for her gaze to linger on your heavy collar. "@@.npc_manager;You know that is merely for sleep security, right?@@"<br>
<br>
[<<moveTo "event_enthusiast_collar_1" "It's her collar... why would you stop wearing it?" 300 "<<set $scene.collar=true>>">>]<br>
[<<moveTo "event_enthusiast_collar_1" "You just like wearing it." 60 "<<set $scene.collar=false>>">>]
<<elseif $scene.bimboPassed>>
<<set _takechastitykey = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office and shakes her head. "@@.npc_manager;I realise that I have granted you permission to work in a more... lascivious style, but I would much prefer you kept in mind that you remain in a representative position. I am afraid that, given your current attire, you will be quite restricted in how you can work today. Still, it is your choice to make.<<if _takechastitykey>> If you would kindly turn over the key to your chastity and you may return to work — just because you are dressed like a slut does not mean I shall be letting you parade about free as one.<</if>>@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Start working." 360>>]
<<elseif $scene.formalPassed>>
<<set _takechastitykey = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office and looks at you with a slight smile. "@@.npc_manager;A beautiful outfit... but perhaps a bit too formal for your duties. Still, I suppose I cannot object to you dressing above requirements.<<if _takechastitykey>> If you would kindly turn over the key to your chastity and you may return to work.<</if>>@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Start working." 360>>]
<<else>>
<<if $scene.manager_outfit == "repeat">>
<<=setup.getNpcName("npc_manager","formal")>> raises an eyebrow in amusement at your, again, mimicking of her attire.<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName('npc_manager', 'formal') + " mimicry content">>
<<include "futureContentBoilerplate">><br>
<br>
<</if>>
<<if $scene.directInspection>>
<<=setup.getNpcName("npc_manager","formal")>> looks you over and nods.
<<if $player.work.advance > 0 && $currentTasks.hasOwnProperty('manager_bondage_task') && $currentTasks.manager_bondage_task.finished>>
"@@.npc_manager;Well, everything else seems to be in order — and I can tell that your mandated sleep arrangement is working out nicely, wonderful.@@"
<<else>>
"@@.npc_manager;Well, everything else seems to be in order.@@"
<</if>>
<<else>>
<<if $player.work.advance > 0 && $currentTasks.hasOwnProperty('manager_bondage_task')>>
<<=setup.getNpcName("npc_manager","formal")>> pokes her head out of her office just long enough to nod in approval. "@@.npc_manager;Bright-eyed and ready to work — I can see sleeping in bondage is doing everything it should.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> pokes her head out of her office just long enough to nod in approval. "@@.npc_manager;Prepared to work per specifications... very good.@@"
<</if>>
<</if>>
<br><br>
<<if $scene.turnoverkey>>
She waits just long enough to observe you ceremoniously placing the key to your chastity device in the bowl at the edge of the desk before disappearing back into her office.
<<elseif $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity') && $npc_manager.flags.trustplayerwithkey>>
She smiles and places the key to your chastity device in the bowl on the corner of the desk. A thrill runs down your spine at the implied temptation.
<</if>>
You're still torn between not needing to strip for her every morning, and the in some ways even creepier fact that she can ascertain your full state without such. Either way, it does make things more efficient.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_finalize" 'Get to work.' 60>>]
<</if>>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;So, I have a special surprise for you, a bit of a move celebration, as it were.@@"<br>
<br>
She opens her door wider to reveal an office chair, grinning as she rolls it forward and replaces your old one.<br>
<br>
"@@.npc_manager;Is it not glorious? Here, let me explain the features.@@"<br>
<br>
[<<moveTo "event_work_stage4_chair_1" 'Listen.' 300>>]
<</if>>
<<elseif $scene.latexFailed>>
She pokes at your clothing and frowns. "@@.npc_manager;I believe we decided on upgrading your outfit to be latex. I am a woman of my word so... come, let us get you properly prepared for the day...@@"<br>
<br>
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_4_finalize">>
[<<moveTo "event_latex_inspection_fail_1" "Follow..." 60>>]
<<elseif $scene.directInspection>>
<<include "inspectionText_gasmask">>
<<=setup.getNpcName("npc_manager","formal")>> frowns — you already know you've failed your inspection, now it's just left to learn how...<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_inspect" 'Continue.' 60>>]
<<else>>
<<include "inspectionText_gasmask">>
<<=setup.getNpcName("npc_manager","formal")>> addresses you with a frown — you already know you've failed your inspection, now it's just left to learn how...<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_inspect" 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: brought to work when no-show
#status: RELEASED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'anger' 'npc_manager' 4>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png">>
<div id="invframe" class="scrolltext">
You nervously ride to work in the private limousine, watching out the window as you zip through traffic and then descend into an underground parking garage.<br>
<br>
An elevator ride later and you are walking into your office...<br>
<br>
<<if !setup.checkItemTypeWorn("cage") && $npc_manager.flags.require_chastity>>
[<<moveTo "event_inspection_stage4_nochastity_1" 'Continue.' 300>>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_4" 'Continue.' 300 "<<set $scene.directInspection=true>>">>]
<</if>>
</div>/*#
#desc: phase 4 morning, inspection failures
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $clothSetsInt.hasOwnProperty("daily_evaluation_clothes")>>
<<useClothSetPop 'daily_evaluation_clothes'>>
<</if>>
<<set $scene.fixMakeupIfWrong = true>>
<<include "inspectionData_makeup">>
<<include "inspectionData_plug">>
<<include "inspectionData_clothes">>
<<set $scene.badPlug = !$scene.plug || !$scene.plug_ems || !$scene.plug_vibe>>
<<if $scene.badPlug>>
<<set $player.work.chair.forcePlug = true>>
<<else>>
<<set $player.work.chair.forcePlug = false>>
<</if>>
<<set $currentTasks.manager_morning_inspection_task.condition="">>
<<set $currentTasks.manager_morning_inspection_task.finished=false>>
<<set $scene.taskComplete = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<set $scene.badClothing = ($currentTasks.manager_morning_inspection_task.trigger.clothing.condition == 0 || ($currentTasks["manager_morning_inspection_task"].trigger.hasOwnProperty("latex") && !$currentTasks["manager_morning_inspection_task"].trigger.latex.condition && !$scene.manager_outfit)) && !setup.checkItemSetWorn("kig_secretary")>>
<<set $currentTasks.manager_morning_inspection_task.finished=true>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.badUnderwear = $currentTasks.manager_morning_inspection_task.trigger.clothesUnderwear.condition == 0 && !setup.checkItemWorn('doll_catsuit')>>
<<if $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity_key')>>
<<set _keyId = setup.getItemObj($scene.cage).lockable[1]>>
<<set $scene.missingKey = !$scene.turnoverkey && !$scene.hasOwnProperty('missingKey') && !setup.checkItemInInventory(_keyId)>>
<</if>>
<<set $scene.brokenCage = setup.checkItemTypeTag('cage', ['broken'])>>
<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task') && $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('chastity') ||
$currentTasks.hasOwnProperty('manager_morning_inspection_task_repeat') && $currentTasks.manager_morning_inspection_task_repeat.trigger.hasOwnProperty('chastity')>>
<<if $npc_manager.flags.trustplayerwithkey>>
<<if $npc_manager.flags.hascagekey || setup.checkItemInInventory(setup.getItemObj($scene.cage).lockable[1])>>
<<set $scene.score += 1>>
<<if !$npc_manager.flags.hascagekey && (!$currentTasks.hasOwnProperty("task_chastity_trial") || !$currentTasks['task_chastity_trial'].finished)>>
<<set $npc_manager.flags.hascagekey = true>>
<<deleteItem _keyId>>
<</if>>
<<else>>
<<if (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks['task_chastity_trial'].finished)>>
<<deleteItem _keyId>>
<<set $npc_manager.flags.hascagekey = true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $scene.noDrug = $currentTasks.manager_morning_inspection_task.trigger.hasOwnProperty('pinkPill') && $currentTasks.manager_morning_inspection_task.trigger.pinkPill.condition == 0 && !$workEvents.hasOwnProperty('failed_prescription_event')>>
<<set $scene.noFail = true>>
<<if !$scene.applyAnger>>
<<if $scene.badPlug>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<if $scene.badClothing>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<<if $scene.badUnderwear>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<</if>>
<<if $scene.badMakeup>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</if>>
<<if $scene.forcedCleaning>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if $scene.missingKey>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<if $scene.bondageTaskFail>>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<<applyStress 10>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $scene.applyAnger = true>>
<<set $scene.noFail = !($scene.badPlug || $scene.badClothing || $scene.badUnderwear || $scene.badUnderwear || $scene.badMakeup || $scene.forcedCleaning || $scene.missingKey || $scene.bondageTaskFail)>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.bondageTaskFail>>
"@@.npc_manager;Before we can get to anything else... I have to mention your sleep failure. Per our agreement you are to sleep tightly bound ever night in exchange for my having given you an advance on your pay... that you have not done this, well...@@"<br>
<br>
You cry out as your <<if $player.body_ref.penis>><<getWordMyPenis false>><<else>>plug<</if>> explodes with electrified pain. "@@.npc_manager;When you make an agreement. I expect you to follow through. Even moreso when we both know that being bound is really what you need.@@"<br>
<br>
You pant and try to recover as she puts the remove away and nods. "@@.npc_manager;Being that this whole thing stemmed from monetary issues, I will also be reducing your pay this week by <<=Math.floor(.05*$player.work.payment)>> credits. Let us hope ONE of these lessons sticks. Now, let us move on to the inspection proper.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_inspect" 'Continue.' 60 "<<set $scene.bondageTaskFail=false>>">>]
<<elseif $scene.badMakeup>>
<<=setup.getNpcName("npc_manager","formal")>> produces a face-mask. "@@.npc_manager;How could you have forgotten proper makeup? You know how much more lovely it makes your already cute face!@@"<br>
<br>
Before you can object she has placed the mask over your face. A few seconds of tingly warmth is all it takes and she pulls it away to leave you with perfectly cute <<if $fetish.sissy>>sissy <</if>>doll makeup.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_inspect" 'Continue.' 60 "<<set $scene.badMakeup = false>>">>]
<<elseif $scene.badClothing>>
<<if $now.getUTCDay() == 1 && ($events.hasOwnProperty('event_class_1') || $events.hasOwnProperty('event_class_2') || $events.hasOwnProperty('event_class_3') ||$events.hasOwnProperty('event_class_4'))>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;That... is not appropriate <<if $fetish.sissy>>SISSI <</if>>secretary attire.@@" She states flatly. "@@.npc_manager;Granted, you will be changing into your school outfit shortly... but that does nothing for the rest of the day... come.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;That... is not appropriate <<if $fetish.sissy>>SISSI <</if>>secretary attire.@@" She states flatly. "@@.npc_manager;Come. Pretty dolls that cannot dress themselves will have proper attire pressed upon them.@@"
<</if>>
<br><br>
[<<moveTo 'event_stage_4_wrong_clothes_1' 'Follow.' 300>>]
<<elseif $scene.badUnderwear>>
<<=setup.getNpcName("npc_manager","formal")>> squints and you feel like she is looking through you. "@@.npc_manager;No, no, no. This traces back all the way to the start. You are to wear panties, stockings and a bra, all in a feminine style. This is has been a requirement since the very beginning, that you would fail now...@@" She shakes her head. "@@.npc_manager;Well this is just beyond disappointing, fortunately for you one of us is prepared.@@"<br>
<br>
She opens her desk and tosses you a fresh set of matching underthings.<br>
<br>
[<<moveTo 'event_stage_4_wrong_underwear_1' 'Change.' 300>>]
<<elseif $scene.missingKey>>
<<=setup.getNpcName("npc_manager","formal")>> requests the key to your chastity device, only for you to confess that you do not have it with you. Her gaze narrows and then she shrugs.<br>
<br>
"@@.npc_manager;Well, I suppose functionally that means you are secured for work — which is the important thing. Very well.@@" She returns to her office and you turn back to your terminal.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_finalize" 'Start working.' 60>>]
<<elseif $scene.badPlug>>
<<if !State.hasPlayed("event_work_stage4_chair_1")>>
<<=setup.getNpcName("npc_manager","formal")>> frowns "@@.npc_manager;Your <<if $fetish.sissy>>rear sissy fuck-hole<<else>>cute bum<</if>> is <<if $scene.plug>>inadequately occupied<<else>>empty<</if>>.@@" Her words are a statement, not a question. "@@.npc_manager;I had planned to introduce this as more of a surprise gift but... well, here we are.@@" She ducks into her office for a moment to emerge pushing a brand new office chair.<br>
<br>
"@@.npc_manager;Is it not glorious?@@" She states as she slides it up to your desk in place of your previous chair. "@@.npc_manager;Here, let me explain the features.@@"<br>
<br>
[<<moveTo "event_work_stage4_chair_1" 'Listen.' 300>>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns "@@.npc_manager;Your <<if $fetish.sissy>>rear sissy fuck-hole<<else>>cute bum<</if>> is <<if $scene.plug>>inadequately equipped — how can I keep you in peak performance without the ability to administer reward and punishment at the push of a button?<<else>>empty.<</if>>.@@" She states firmly. "@@.npc_manager;Well, fortunately you have your chair to keep you properly occupied.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_finalize" 'Continue.' 60>>]
<</if>>
<<elseif $scene.forcedCleaning>>
<<=setup.getNpcName("npc_manager","formal")>> sniffs the air.
<<if $currentTasks.manager_morning_inspection_task.trigger.player>>
"@@.npc_manager;Did you... forget to wash yourself?@@" She pauses and sniffs again, leaning a bit closer than could be considered polite. "@@.npc_manager;"Correction, your clothes. In either case, this will not do. No it will not do at all!@@"
<<else>>
"@@.npc_manager;Did you... forget to wash yourself? No, this will not do at all.@@"
<</if>>
<br><br>
[<<moveTo "event_work_cleaning_1" 'Continue.' 60 "<<set $scene.cleaningReturn='event_manager_daily_check_stage_4_finalize'>><<set $scene.forcedCleaning=false>>">>]
<<elseif $scene.noDrug>>
/%Note: MUST be the last item in the fall-through %/
<<set $scene.inspectionReturn = "event_manager_daily_check_stage_4_finalize">>
<<useClothSetPush 'daily_evaluation_clothes'>>
<<include "inspectionText_drugs">>
<<elseif $scene.noFail>>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Well I believe that will do for today. Have a lovely morning, my dear.@@" She <<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>places the key to your chastity device in the bowl at the corner of your desk and <</if>>disappears into her office and you turn back to your terminal.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_finalize" 'Start working.' 60>>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Well I believe that marks the extent of your failures... you may carry on working.@@" You hold your breath until she <<if $npc_manager.flags.trustplayerwithkey && $npc_manager.flags.hascagekey && (!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.finished)>>places the key to your chastity device in the bowl at the corner of your desk and <</if>>disappears into her office and then turn back to your terminal.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_finalize" 'Start working.' 60>>]
<</if>>
</div><<include "postInspectionCleanup">>
<<initRoom>>
<<if $scene.manager_outfit && $scene.manager_outfit != "repeat">>
<<moveTo "event_inspection_manager_outfit_1">>
<<else>>
<<if $player.sec_style.body.name != "" && $npc_manager.stagevalues[2].femalesecretary && $player.hair.style == "unkempt">>
<<moveTo "event_secretary_style_hair_intro_1">>
<<else>>
<<moveTo "room_office_sissy_secretary_work_morning_start">>
<</if>>
<</if>>/*#
#desc: phase 4 morning, chair intro
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.raise = Math.floor($player.work.payment * .5)>>
<<set $player.work.bonusReq = 1.1 * $player.work.bonusReq>>
<<set $player.work.payment += $scene.raise>>
<<addWorkEvent 'barista_chair'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You gawk at the new chair — on one hand it reminds you of a high-end "gamer" chair with its sturdy construction, but you also can't help but notice the obvious bondage enhancements. To say nothing of the <<if setup.getChastityLevel() == 5 && $player.body_ref.vagina>>twin phalli<<else>>phallus<</if>> rising from the seat.<br>
<br>
"@@.npc_manager;You may recall <<=setup.getNpcName("npc_retention","formal")>> showing you the new employee security features that have been in development... well, this is the culmination of that work. Perfect print-to-user design means this will be the most ergonomic seat you will ever use, the optional restraints allowing for even further comfort and security. I will leave it to your discretion, for now, but I will note that studies by the R&D division found that bound <<if $fetish.sissy>>SISSI <</if>>Secretaries were able to focus up to thirteen percent more effectively.@@"<br>
<br>
As she talks she shows how the chair incorporates a full seven point harness, as well as supports and straps for your calves and ankles, and extendable wrist-cuffs that will allow you to work your mouse and keyboard as necessary while keeping you "secured." <br>
<br>
"@@.npc_manager;Now this last feature is a bit extraneous, given your work situation, but there is also an optional gag that can be secured — this is for more open office situations to prevent idle, distracting chatter. You can certainly avail yourself of it if you wish — you can choose from a simple ball for that classic feel, or opt for something more phallic if you want to train while you work. Again, as you work alone, I will leave it optional in case you want to service an oral fixation.@@"<br>
<br>
You gulp at the thought of being bound and gagged for your entire shift...<br>
<br>
"@@.npc_manager;Now, I can tell you are wondering about <<if setup.getChastityLevel() == 5 && $player.body_ref.vagina>>these<<else>>this<</if>>@@" she concludes, pointing to the <<if $player.body_ref.vagina>>pair of dildos<<else>>dildo<</if>> rising from the centre of the seat.<br>
<br>
"@@.npc_manager;As you are surely well familiar by now, a filled <<if $fetish.sissy>>SISSI Secretary is a happy SISSI Secretary<<else>>Secretary is a happy Secretary<</if>> — the shape is configurable. Pre-loaded with a variety of designs you are sure to love, and, of course, fully featured with vibrations and electrics. In fact, they tie in with your workstation to turbo-charge your work efficiency with instantaneous rewards and corrective measures.@@"<br>
<br>
You bite your lip, a bit intimidated, but also intrigued.
<<if setup.getChastityLevel() == 5>>
"@@.npc_manager;Everything will synchronise with your <<=setup.getItemTypeName('cage')>> to keep you properly filled the whole day long.@@"
<<elseif $scene.badPlug>>
"@@.npc_manager;Note that this is no excuse to forget your proper filling — as wonderful as this chair is, you have duties beyond it, so a properly featured plug will remain part of your uniform requirements — though note that if you are wearing a plug the chair will remove, replace and override for a more secure seating situation while you are at your desk.@@"
<<else>>
"@@.npc_manager;Note that you are still required to be plugged as part of your uniform. As wonderful as this chair is, you have duties beyond it, so a properly featured plug will remain part of your uniform requirements — though note that if you are wearing a plug the chair will remove, replace and override for a more secure seating situation while you are at your desk.@@"
<</if>>
<br><br>
You continue to gawk at the chair as she smiles. "@@.npc_manager;Oh, and I will also note that I am increasing your base pay by <<=$scene.raise>> credits per week.@@"<br>
<br>
You blink in surprise.<br>
<br>
<<printThought "That's a fifty-percent raise!">><br>
<br>
She smiles wider at your recognition. "@@.npc_manager;I thought that might get your attention. I figured that you deserved it, things on the upper floor, well... responsibilities and expectations are increased, but professionalism should be paid the same. I will be expecting great things from you... let us hope your new chair provides just as much of a productivity boost as they say, so you can keep up!@@"<br>
<br>
<<if $scene.taskComplete>>
"@@.npc_manager;I can tell from your expression that you are eager to take your new seat for a spin... so I will leave you to it!@@" She smiles and heads back into her inner office.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_finalize" 'Take your seat...' 60>>]
<<else>>
"@@.npc_manager;I am sure you are quite interested in taking this lovely new chair for a spin, so let us continue on with your inspection.@@"<br>
<br>
[<<moveTo "event_manager_daily_check_stage_4_inspect" 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: phase 4 morning - wrong clothing
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _catsuit = "">>
<<if setup.checkItemTypeTag('bodysuit', ['latex'])>>
<<set _catsuit = setup.getItemFromType('bodysuit')>>
<</if>>
<<removeEverythingButUnderwear>>
<<if _catsuit>>
<<wearItem _catsuit true>>
<</if>>
<<set $scene.class = $now.getUTCDay() == 1 && ($events.hasOwnProperty('event_class_1') || $events.hasOwnProperty('event_class_2') || $events.hasOwnProperty('event_class_3') ||$events.hasOwnProperty('event_class_4'))>>
<<if !$scene.class>>
<<set $npc_manager.stagevalues[4].doll_shift += 1>>
<<addItemSet 'doll_outfit'>>
<<wearItemSet 'doll_outfit'>>
<</if>>
<<addItemSet 'latex_secretary_2'>>
<<wearItemSet 'latex_secretary_2'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You follow <<=setup.getNpcName('npc_manager', 'formal')>> into her office where she orders you to strip as she opens up her wardrobe and pulls out <<if $scene.class>>a secretary outfit in<<else>>something long and<</if>> rubber.<br>
<br>
"@@.npc_manager;Here, maybe this will help you better adopt the mindset of a proper worker drone.@@" She explains, handing you the latex outfit. You gulp,
<<if $scene.class>>
and change into the provided latex attire.<br>
<br>
"@@.npc_manager;There, that will have to suffice until you get to class.@@"
<<else>>
pulling the latex catsuit up your body as she sternly supervises. In less than a minute you go from a cute naked girl to a faceless rubber drone, nothing but your lips peeking out from the tight, perfectly fitted and seamless rubber covering your body. You glance at your reflection in the mirror and its bright-eyed expression as <<=setup.getNpcName('npc_manager', 'formal')>> gently places a clearly artificial wig over your head to complete the "rubber doll" look.<br>
<br>
Finally she hands you a matching latex secretary outfit — tight pencil skirt, blouse and heels.<br>
<br>
"@@.npc_manager;There, that will have to suffice for today. It obviously limits you to working on the upper floors only, but maybe that will inculcate you with a bit of discipline, hmm?@@"
<</if>>
<br><br>
[<<moveTo 'event_manager_daily_check_stage_4_inspect' 'Continue.' 60>>]
</div>/*#
#desc: phase 4 morning - wrong clothing
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !setup.checkItemTypeWorn("bra") && setup.getItemObj($scene.topId).specific != "strapless_dress">>
<<addItem 'satin_bra'>>
<<wearItem 'satin_bra' true>>
<</if>>
<<set $scene.maleUnderthings = setup.checkItemTypeTag('panties', ['male']) || setup.checkItemTypeTag('stockings', ['male'])>>
<<if !setup.checkItemTypeWorn("panties") || setup.checkItemTypeTag('panties', ['male'])>>
<<addItem 'satin_panties'>>
<<wearItem 'satin_panties' true>>
<</if>>
<<if !setup.checkItemTypeWorn("stockings") || setup.checkItemTypeTag('stockings', ['male'])>>
<<addItem 'pantyhose_pink'>>
<<wearItem 'pantyhose_pink' true>>
<</if>>
<<set $npc_manager.flags.firstcuteoutfit++>>
<<if $scene.maleUnderthings>>
<<destroyMaleClothing $player $now false>>
<</if>>
<<set $currentTasks.manager_morning_inspection_task.trigger.clothesUnderwear.condition = 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Under <<=ps(setup.getNpcName('npc_manager', 'formal'))>> withering gaze you don the "missing" undergarments she has given you.
<<if $scene.maleUnderthings>>
As you dress, she incinerates your masculine items without a word, just a disappointed snort as the smoke curls up from her trash can.
<<else>>
She waits until you are fully dressed before nodding curtly.
<</if>>
<br><br>
"@@.npc_manager;Remember, you work in a representative position, and that is no mere superficial thing, it means that you must be at all times perfect in looks, thought and deed, every layer, inside and out.@@" She gives you a moment for that to set in before continuing on with the inspection.<br>
<br>
[<<moveTo 'event_manager_daily_check_stage_4_inspect' 'Continue with the inspection.' 60>>]
</div><<if setup.checkItemWorn("manager_shirt_copy") && setup.checkItemWorn("manager_skirt_copy")>>
<<if !State.hasPlayed("event_inspection_manager_outfit_3")>>
<<if setup.checkItemWorn("manager_heels") && $player.hair.style == "shoulderlength" && $player.hair.color == "red" && setup.getCurrentMakeup() == "moviestar" && $player.makeup.messed < 15>>
<<set $scene.manager_outfit = "complete">>
<<else>>
<<set $scene.manager_outfit = "dress">>
<</if>>
<<else>>
<<set $scene.manager_outfit = "repeat">>
<</if>>
<<else>>
<<set $scene.manager_outfit = "">>
<</if>>/*#
#desc: caught wearing manager's clothing
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You were almost surprised that your inspection has passed without <<=setup.getNpcName('npc_manager', 'formal')>> commenting on your particular attire... and then, just when you thought she was returning to her inner office, she freezes you in place with a look and a word.<br>
<br>
<<switch $scene.manager_outfit>>
<<case "complete">>
"@@.npc_manager;So... would you care to explain this... decision you made?@@"
<<case "dress">>
"@@.npc_manager;So... the dress... care to explain?@@"
<<default>>
ERROR: unexpected scene.manager_outfit <<=$scene.manager_outfit>>
<</switch>>
<br><br>
[<<moveTo 'event_inspection_manager_outfit_2' 'Dress for the job you want?' 60 "<<set $scene.reason='job'>>">>]<br>
[<<moveTo 'event_inspection_manager_outfit_2' "It's a coincidence!" 60 "<<set $scene.reason='coincidence'>>">>]<br>
[<<moveTo 'event_inspection_manager_outfit_2' 'Say nothing.' 60 "<<set $scene.reason='nothing'>>">>]
</div>/*#
#desc: explain wearing manager's clothing
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.manager_outfit == "complete">>
<<switch $scene.reason>>
<<case 'job'>>
You <<if setup.getTotalValue("dominance") > 10>>confidently <</if>>reply that you are "@@.pc;dressing for the job you want.@@"<br>
<br>
<<if $npc_manager.flags.cruel || $npc_manager.anger > 3>>
<<=setup.getNpcName("npc_manager","formal")>> snorts in annoyance. "@@.npc_manager;No... however good of a job you have done in mimicry we both know that you belong on a tight leash, with my boot on your face. You have not technically violated any of your uniform requirements... but I would prefer if you refrained from wearing such in the future. Now, get to work.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>><<incrementEmotion 'anger' 'npc_manager' 2>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>><<incrementEmotion 'anger' 'npc_manager' 2>>">>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> smiles in amusement. "@@.npc_manager;Job you want? That is quite some ambition, to go from data engineer to <<if $fetish.sissy>>SISSI <</if>>Secretary to a Director of a multinational mega-corp...@@" She steps closer, looming over you,
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
but you confidently stand your ground.
<<else>>
as you barely manage to resist stepping back.
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
until you flinch.
<<else>>
as you almost immediately flinch.
<</if>>
<</if>>
<<if setup.getTotalValue("dominance") > 15>>
<<=setup.getNpcName("npc_manager","formal")>> smiles wider, no longer in amusement but... pride? "@@.npc_manager;Well well, it would seem your costume is more than merely skin deep yes... the likeness is quite uncanny, <<if setup.getEffectiveBreastSize() == 5>> you even matched by breast size!<<elseif setup.getEffectiveBreastSize() > 5>>though you somewhat overdid it with the breasts.<<else>>though you are a bit on the flat side...<</if>>@@"<br>
<br>
She thinks for a moment and you catch a twinkle in her eye. "@@.npc_manager;Tell you what. I have a meeting in a few minutes. Nothing particularly significant, just a conference call with some of the overseas offices... if you are so confident in rising to my level, how about you attend on my behalf, see if you have the skills, as well as the looks for such responsibilities?@@"<br>
<br>
[<<moveTo 'event_inspection_manager_outfit_3' 'If that would be off assistance to her.' 60 "<<set $scene.accept=true>>">>]
[<<moveTo 'event_inspection_manager_outfit_3' 'That... may be a bit too much responsibility.' 60 "<<set $scene.accept=false>>">>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;<<if setup.getTotalValue("dominance") > 10>>Close<<elseif setup.getTotalValue("dominance") <= 5>>Highly Disappointing<<else>>Disappointing<</if>> it would seem all that effort is but a facade. Much of my duties is about temperament, as well as skills. Ah well, you have technically passed your work requirements, so I suppose it is just left for me to send you back to your desk and resume your duties... and hope no visitors are confused by your attire.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
<</if>>
<<case 'coincidence'>>
You nervously explain your outfit as a "coincidence." <br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> raises an eyebrow in clear disbelief. "@@.npc_manager;Coincidence? That you matched my dress and heels... my hairstyle, makeup...<<if setup.getEffectiveBreastSize() == 5>> even my breast size!<<elseif setup.getEffectiveBreastSize() > 5>> though you somewhat overdid it with the breasts<</if>>. No, you went to a real effort... but it would seem that for all that, it was only skin deep. After all, I would never try to dodge such an accusation with such an uninspired excuse.@@" She sighs, "@@.npc_manager;no matter, you have fulfilled your work requirements, in the technical sense, so consider your inspection passed, and get to work.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<<case 'nothing'>>
You can't think of an explanation, and so remain silent.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> seems disappointed as she waits for your reply befor sniffing softly. "@@.npc_manager;Hmmff, nothing to say for yourself? Well I will say that I am impressed... hair, makeup... <<if setup.getEffectiveBreastSize() == 5>> even my breast size<<elseif setup.getEffectiveBreastSize() > 5>> though you somewhat overdid it with the breasts<</if>>, it really is uncanny... but your silence tells me it is only skin deep. Still, it does fit your work requirements, so I shall release you to start your day.@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<<default>>
ERROR: unexpected scene.reason <<=$scene.reason>>
<</switch>>
<<else>>
<<switch $scene.reason>>
<<case 'job'>>
You <<if setup.getTotalValue("dominance") > 10>>confidently <</if>>reply that you are "@@.pc;dressing for the job you want.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sniffs in dismissal. "@@.npc_manager;Not well enough... if you really want to aspire to be me, well... you need to get ALL of the details correct.@@"
<<case 'coincidence'>>
You nervously explain your outfit as a "coincidence." <br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> chuckles in amusement. "@@.npc_manager;Coincidence? No, I know how much that dress costs<<if $npc_manager.flags.caughtwithdress>> to say nothing of when I caught you trying to pilfer one of mine!<<else>>.<</if>> No, this was no accident... still, it fits your work requirements, technically, and in a bizarre way really hits the "representative" part of your positional responsibilities... no matter, if you have nothing further to say, then I believe it is time for you to return to your desk, and get to work.@@"
<<case 'nothing'>>
You can't think of an explanation, and so remain silent.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> seems disappointed as she waits for your reply befor sniffing softly. "@@.npc_manager;Hmmff, nothing to say for yourself? Disappointing, still, it meets your work requirements, so I suppose there is not a problem. Be off, then, back to work.@@"
<<default>>
ERROR: unexpected scene.reason <<=$scene.reason>>
<</switch>>
<br><br>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: explain wearing manager's clothing
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.accept>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.accept>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
In for a penny, in for a pound you straighten up a bit taller and confidently state that you would be glad to attend a meeting in her stead, if it would be beneficial to her.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks positively overjoyed at your response as she motions you into her office. "@@.npc_manager;My, my — look how far that blushing, neophyte <<if $fetish.sissy>>SISSI <</if>>Secretary has come. And even remembering your decorum and respect... yes, you have been quite the pupil in your time working for me, quite the pupil indeed.@@"<br>
<br>
She actually holds the chair for you before logging in and bringing up the meeting link.<br>
<br>
"@@.npc_manager;Now this should be a run of the mill status meeting, my presence is mostly just for the sake of being on the call... though I will expect you to brief me with a summary afterwards. Oh, and in case you do need to speak, do not worry, I installed a speech modifier some time back to cover for when I was a bit hoarse coming off an illness. It should be able to adjust your voice into a reasonable facsimile of mine, as well.@@"<br>
<br>
The meeting link lights up and <<=setup.getNpcName("npc_manager","formal")>> heads for the door, blowing you a kiss for good luck as she exits the room.<br>
<br>
<<printThought "No pressure...">><br>
<br>
[<<moveTo "event_manager_impersonate_first_1" "Start the meeting." 1000>>]
<<else>>
Dressing as <<=setup.getNpcName("npc_manager","formal")>> was one thing, and you're still a bit amazed she hasn't punished you for such... but pretending to be her in front of other executives? You shake your head, your prior confidence rapidly dissipating.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> chuckles in amusement. "@@.npc_manager;Well, in that case, I believe you can be off to work. As I said, I have a meeting to get to...@@"<br>
<br>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Return to your desk and get to work." 360 "<<set $scene.manager_outfit=''>>">>]
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div>/*#
#desc: impersonate manager in meeting
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
The meeting starts and you do your best to adopt a similar expression to the calm, attentive interest you expect <<=setup.getNpcName("npc_manager","formal")>> would adopt in this situation.<br>
<br>
As <<=setup.getNpcName("npc_manager","formal")>> foretold the meeting is mostly a status check-in from some of the overseas divisions. Mindful that it would probably be out of character for <<=setup.getNpcName("npc_manager","formal")>> to be seen taking notes you focus intently and quickly jot down anything that seems particularly important without looking away from the camera.<br>
<br>
While you lack specific context, and don't recognise anyone else on the call, the overall vibe is very much on-brand for the company; the bulk of the meeting being a mix of optimistic growth forecasts alongside positive feedback in regards to the continued roll-out of the company's more "intense" requirements for its non-managerial staff. It seems that, on some counts, the overseas office is rushing ahead even faster than your own building, as you overhear one of them proudly announce that their department is on track to be "@@.generic_male1;100% <<if $fetish.chastity_vag || $fetish.chastity_penis || setup.checkItemTypeWorn("cage")>>chaste and <</if>>collared by the end of the quarter.@@"<br>
<br>
After the boastful status updates there's some back and forth coordination, during which one of the other manager's on the call addresses you directly.<br>
<br>
"@@.generic_female1;<<=setup.getNpcName("npc_manager","other")>>! You've been a bit quieter than usual, but I had a question. With all the recent employee expansion we've been seeing an uptick in disciplinary issues. It hasn't impacted productivity significantly so far, but it is a concern, given that we are still accelerating. Do you have any suggestions that I could pass down to our managers?@@"<br>
<br>
[<<moveTo "event_manager_impersonate_first_2" 'Make a harsh example of any troublemakers to send a message to the rest of the staff.' 300 "<<set $scene.action='harsh'>>">>]<br>
[<<moveTo "event_manager_impersonate_first_2" 'Recommend they speak with <<=setup.getNpcName("npc_work_doctor","formal")>> for some productive prescriptions.' 300 "<<set $scene.action='drug'>>">>]<br>
[<<moveTo "event_manager_impersonate_first_2" "Schedule standing 1 on 1's with all employees to catch problems early." 300 "<<set $scene.action='1on1'>>">>]<br>
[<<moveTo "event_manager_impersonate_first_2" "Idle hands are the source of most discontent, institute mandatory overtime to cover for any productivity loss." 300 "<<set $scene.action='overtime'>>">>]<br>
[<<moveTo "event_manager_impersonate_first_2" "Additional training for all supervisory roles for trickle-down improvements." 300 "<<set $scene.action='super'>>">>]<br>
[<<moveTo "event_manager_impersonate_first_2" "You do not have time to micro-manage their issues, they need to take responsibility and address things themselves." 300 "<<set $scene.action='punt'>>">>]
</div>/*#
#desc: impersonate manager in meeting: respond to question
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "harsh">>
You explain that disciplinary issues are typically caused by subordinates reflexively acting out, and that the best solution is to get ahead of things by providing preemptive, reliable, and unrelenting, discipline. Your audience is at rapt attention as you field follow-up questions, making recommendations of mandatory maintenance spankings for all subordinates, raising the bar for work-load expectations so that employees do not have time for distractions as well as <<if $fetish.chastity_vag || $fetish.chastity_penis || setup.checkItemTypeWorn("cage")>>reduced, or preferably permanent revocation of key rights and <</if>>prompt, and severe, punishments for any infractions.<br>
<br>
"@@.generic_female1;Thank you for the recommendations, <<=setup.getNpcName("npc_manager","other")>>. Doing all that will be hard... but, I suppose, not as hard as being on the receiving end!@@"<br>
<br>
There is a chorus of laughter as the other managers agree that they definitely wouldn't want to swap places with a subordinate!<br>
<br>
You smile and remind them that such should be extra motivation to do their OWN jobs properly. There's a moment of awkward silence as the managers reflect on the somewhat precarious position nearly everyone at the company is in under <<=ps(setup.getNpcName("npc_boss","formal"))>> cutthroat leadership.
<<case "drug">>
You reply that the most expedient solution would be to take advantage of the "wonderful" work being done by <<=setup.getNpcName("npc_work_doctor","formal")>> and <<his npc_work_doctor>> department. "@@.pc;A properly medicated employee is a maximally productive employee,@@" you explain, before recommending, in particular that any known problematic subordinates be put on a cocktail of <<=setup.getItemName("drug_slave")>> and <<=setup.getItemName("drug_breast")>> immediately.<br>
<br>
"@@.generic_female1;A bit surprising to hear you speak so enthusiastically of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> work, given some of the prior caution you have advised previously. Did some new breakthrough happen to change your mind?@@"<br>
<br>
<<printThought "Shit, this is out of character.">><br>
<br>
Trying not to let the nerves show on your face you explain that you are merely reacting to changing circumstances and, with the added pressure the company is facing, it is worth taking some additional risks that may have not been prudent previously.
<<case "1on1">>
You explain that you cannot really identify a solution without fully understanding the problem, and that to do that requires speaking to the employees themselves to better understand their plight. "@@.pc;Every employee at the company has their own unique situation, and it is the responsibility of their individual managers to understand and adapt to make sure that we can all perform at maximum efficiency without burnout or harm.@@"<br>
<br>
You go on to recommend a mix of anonymous surveys as well as mandating at least bi-weekly one on one's between each employee and their immediate supervisor to make sure that issues are caught, and addressed as early as possible.<br>
<br>
You can tell a few of the other manager's on the call are less than enthralled by this idea, perhaps hoping for permission to implement more punitive, lower-effort solutions, but it would seem that you have successfully embodied <<=ps(setup.getNpcName("npc_manager","other"))>> authority, because you do not get any meaningful pushback, just a few clarifying questions and requests for training supplements for managers to better solicit and relay feedback.
<<case "overtime">>
You explain that disciplinary events are frequently the result of employee laziness or out of work distractions. The solution, you propose, would be to increase required hours and workloads — busy employees will not have time to misbehave, and by spending more time at the office they reduce the chance of out of work issue occuring to interfere with their duties. Moreover, you add, any potential burnout will be more than compensated for by the increased productivity, and, besides, the company's drone program could always use more "volunteers." <br>
<br>
Cruel laughter greets your suggestion, everyone on the call seeming quite positive on the idea. "@@.generic_male1;Just makes me more glad I don't have to swap places with one of my subordinates!@@" One of the other managers notes to loud agreement.<br>
<br>
You smile and remind them that such should be extra motivation to do their OWN jobs properly. There's a moment of awkward silence as the managers reflect on the somewhat precarious position nearly everyone at the company is in under <<=ps(setup.getNpcName("npc_boss","formal"))>> cutthroat leadership.
<<case "super">>
You state that resolving issues needs to start at the top, and that disciplinary problems at lower levels are indications of flaws higher up. Though you seem to have successfully embodied <<=ps(setup.getNpcName("npc_manager","other"))>> authority enough to prevent open dissent, you can tell that your audience of managers is less than pleased to face such accusations, so you attempt to soften things by noting that such occurrences are almost inevitable when growing so aggressively, but that investing in improved management practices now will pay dividends in the long term with happier, more productive employees who will have greater retention and a self-sustaining culture.
<<case "punt">>
You narrow your eyes in annoyance as you state that this sort of issue would be better dealt with on-sight, and that you do not have time to micro-manage every minor problem that comes along.<br>
<br>
You must have successfully embodied <<=ps(setup.getNpcName("npc_manager","other"))>>, as everyone looks properly chagrined by your repudiation... though they also don't seem particularly happy and you doubt your lack of help is going to have a particularly positive impact.
<<default>>
ERROR: unexpected <<=$scene.action>>
<</switch>>
<br><br>
The meeting moves on and you are able to fade back into the background as a few additional minor orders of business are resolved and people start dropping off.<br>
<br>
[<<moveTo "event_manager_impersonate_first_3" "Exit the conference call." 300>>]
</div>/*#
#desc: impersonate manager in meeting: manager assesses
#status: RELEASED 0.8.8.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.mimic.meeting1=$scene.action>>
<<switch $scene.action>>
<<case "harsh">>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<<case "drug">>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<case "1on1">>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<case "overtime">>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<case "super">>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<case "punt">>
<<incrementEmotion 'anger' 'npc_manager' 2>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You exit the call and sigh in relief, finally relaxing from the stress of putting up the front of being <<=setup.getNpcName('npc_manager', 'formal')>>... just in time for her to walk back into the office.<br>
<br>
"@@.npc_manager;So, how did it go?@@" She asks with a grin.<br>
<br>
You quickly review the meeting and she nods along up until the point where you describe having to address the group yourself.<br>
<br>
<<switch $scene.action>>
<<case "harsh">>
You tell her about the advice you gave for managers to treat their employees more harshly.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> looks almost hurt by your words. "@@.npc_manager;Is that really what you think of me? That I believe in cruelty as a solution to everything?@@" She sighs "@@.npc_manager;I had thought we had progressed beyond that point, but it would seem that I have earned less of your trust than I thought.@@"
<<case "drug">>
You tell her about the advice you gave relating to <<=setup.getNpcName('npc_work_doctor', 'formal')>> and <<his npc_work_doctor>> concoctions.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns. "@@.npc_manager;Well that could cause some issues... and give <<=setup.getNpcName('npc_work_doctor', 'formal')>> quite the power trip.@@" She sighs "@@.npc_manager;What is done is done, I shall deal with things going forward, let us hope that my concerns as to the side effects of <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> work prove overblown.@@"
<<case "1on1">>
You explain how you advised for a more hands-on, employee-focused approach to the looming discipline issues.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> beams with pride. "@@.npc_manager;That is almost exactly what I would have recommended. Well done. Perhaps you do have an affinity for this sort of authority, though maybe that should not be a surprise. So many managers become so distant from the rank and file workers that they are unable to properly lead, you, being still operating at those lower levels, are thus more in tune with what workers actually want.@@"
<<case "overtime">>
You explain how you advised overtime and greater workloads as a way to address, and compensate for, the looming "discipline crisis." <br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns. "@@.npc_manager;No... that will not do at all. That approach is only going to lead to burnout.@@" She sighs. "@@.npc_manager;I shall have to deal with this before it gets out of control. Workaholism is good for nobody, and those who say differently are either brain poisoned or looking to exploit others.@@"
<<case "super">>
You explain how you advised to focus on managerial training and addressing issues starting from the top down.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles in amusement. "@@.npc_manager;Excellent advice... if not the most politic to give... no matter, I can handle any fallout, and perhaps the reality check will get some of them moving in a better direction.@@"
<<case "punt">>
You explain that you pushed back on the question, rather than presuming to speak on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> behalf.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns. "@@.npc_manager;Disappointing. You said that you wanted my job... and yet, when offered such an opportunity, you passed it off. Not a good sign, even if I can understand your motivations in the moment... well, I suppose, really, this reflects back on me. Clearly I had not trained you sufficiently for such a situation. Though, I hope you have learned at least some measure of lesson in regards to aiming too high, too early.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
Your report completed <<=setup.getNpcName('npc_manager', 'formal')>> dismisses you back to your desk. "@@.npc_manager;Enjoy your normal duties... if you are truly interested in further advancement well... we shall see. I need time to consider some things.@@"<br>
<br>
<<set $scene.contentName = "More " + setup.getNpcName('npc_manager', 'formal') + " mimicry content">>
<<include "futureContentBoilerplate">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Return to your desk and start working." 180>>]
</div>/*#
#desc: enter floor 52 coffee shop for the first time, see barista being double-plugged
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop " + $player.work.upperFloorNumber>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" 'TODO_boundbarista'>>
<div id="invframe" class="scrolltext">
<<if $player.flags.work_coffee.coffee_skill == 0>>
You
<<else>>
It appears that your coffee-making equipment is not yet hooked up in the new office so you
<</if>>
go searching for the coffee shop on floor <<=$player.work.upperFloorNumber>>.<br>
<br>
Unsurprisingly it's a bit more intense than Coffee Shop 52 — the barista gagged and bound behind the counter. Spinning in place on the dildo-equipped stool to which she is mounted she prepares your order<<if $fetish.milking>> — adding some fresh milk from the large dispensers enveloping her breasts<</if>> and hands it to you efficiently.<br>
<br>
[<<moveTo "event_stage4_coffee_intro_2" 'Deliver <<=setup.getNpcName("npc_manager","formal")>> order.' 300>>]
</div>/*#
#desc: deliver first stage 4 coffee
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_barista.flags.stage4Intro = true>>
<<applyStress 5>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You deliver <<=ps(setup.getNpcName('npc_manager', 'formal'))>> coffee and she takes it with a smile, immediately taking a deep gulp only for her face to twist in disgust as she spits it back into the cup.<br>
<br>
"@@.npc_manager;Ugh, what on—@@"<br>
<br>
Your heart stops thinking she might be about to blame you for the obvious wrong order but, after taking a moment to try to work the taste out of her mouth she merely puts the cup back down and shakes her head.<br>
<br>
"@@.npc_manager;Let me guess, you got this on this floor?@@"<br>
<br>
You nod. "@@.npc_manager;My error, I should have clarified. For some unspeakable reason the consensus up here is to woefully over-roast everything as part of the "auto-coffee" system. In the future either prepare things yourself, or return to Coffee Shop 52 — it seems they are the only ones in this building that knows how to make something properly drinkable.@@"<br>
<br>
You promise to do as she requests and take care of disposing of the offending drink.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: barista visits and sees chair
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_barista.stage >= 5 && $npc_barista.stage < 10>>
<<completeWorkEvent>>
<<initRoom>>
<<addWorkEvent 'barista_chair'>>
<<moveTo $scene.workEventReturn>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You're working hard at your desk when who should pop into the office but <<=setup.getNpcName('npc_barista', 'nickname')>>.<br>
<br>
"@@.npc_barista;Hiya! I was just coming by with some fresh-roasted materials but... wow! I'd heard about those chairs but I didn't know they were rolling them out to employees already!@@"<br>
<br>
Her bag of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> favourite blend all but forgotten, she ogles your chair as you step out of the way.<br>
<br>
"@@.npc_barista;Oh, wow, and you get to sit here all day?@@" She bites her lip, "@@.npc_barista;I just... I HAVE to try it, please?@@"<br>
<br>
Before you can even answer her question <<=setup.getNpcName('npc_barista', 'nickname')>> is jumping into the chair. "@@.npc_barista;Hmm, which of these is biggest?@@" She ponders as she scrolls through the dildo options.<br>
<br>
[<<moveTo "event_random_barista_chair_2" "Continue." 60>>]
</div>/*#
#desc: help barista into chair
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
With almost instinctive skill <<=setup.getNpcName('npc_barista', 'nickname')>> is soon bound to the chair with
<<if $player.body_ref.vagina>>
twin massive dildos stuffed into her from below
<<else>>
a massive dildo in her rear, her front hole incompatible with the chair, instead merely showing off her vaginal plug.
<</if>>
"@@.npc_barista;Mmm, this feels sooo good! You're so lucky to be able to work like this instead of being on your feet all day! Hmm, but I want more. <<if $player.body_ref.vagina>>I want that full air-tight sensation!<<else>>I need something big and long to suck on!<</if>>@@"<br>
<br>
A moment later and <<=setup.getNpcName('npc_barista', 'nickname')>> has her wish, leaning back with her eyes rolling back in pleasure as she is ruthlessly gagged by the chair as its automated restraints take over holding her tight and vibrating her as she moans in delight.<br>
<br>
You're not sure how long you should let her sit around like this. Her orgasmic thrashing causes one of her breasts to almost pop free of her top and you realise that you could "lend a hand" while she's so fully restrained...<br>
<br>
[<<moveTo "event_random_barista_chair_3" 'Have some fun with <<=setup.getNpcName("npc_barista", "nickname")>>.' 300 "<<set $scene.breasts=true>>">>]<br>
[<<moveTo "event_random_barista_chair_3" "Just watch." 300 "<<set $scene.breasts=false>>">>]<br>
</div>/*#
#desc: tease barista in chair
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if $scene.breasts>>
As <<=setup.getNpcName('npc_barista', 'nickname')>> enjoys her chair-supplied stimulation you add your hands to the mix, exposing her helpless bosom and squeezing her breasts as she moans rapturously into her gag.<br>
<br>
<<if $fetish.milking>>
Her nipple beads with milk and you lean in to suckle, switching off between her heaving breasts and enjoying a tasty drink tinged with the flavour of her rolling ecstasy.
<<else>>
You bring your lips to her firm nipple, licking and sucking alternating as your fingers grope and tease.
<</if>>
<<else>>
You just stand and watch as <<=setup.getNpcName('npc_barista', 'nickname')>> enjoys a VERY lively time in the chair.
<</if>>
As <<=setup.getNpcName('npc_barista', 'nickname')>> continues to moan you wonder if something about her is confusing the chair's sensors — usually it only goes long enough to burn off arousal, but it seems that the system has met its match with the insatiable barista, dildos thrusting and buzzing<<if $scene.breasts>> as you lend your lips<</if>> with no end in sight.<br>
<br>
[<<moveTo "event_random_barista_chair_4" "You hear the sound of the inner office door opening..." 60>>]
</div>/*#
#desc: send barista on her way
#status: FINISHED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_barista") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> walks out of her office and the chair suddenly comes to a stop. "@@.npc_manager;And what, exactly, is going on here?@@" She asks, using her remote to further disable the chair and free <<=setup.getNpcName('npc_barista', 'nickname')>> from its bonds.<br>
<br>
"@@.npc_barista;Hee hee, just, uh, testing out the equipment. Everything in order, working perfectly...@@" <<=setup.getNpcName('npc_barista', 'nickname')>> babbles as she returns to her feet. "@@.npc_barista;I, uh, delivered your coffee beans for the week so, um... enjoy!@@" <<=setup.getNpcName('npc_manager', 'formal')>> continues to stare as the barista beats a hasty retreat from the office.<br>
<br>
"@@.npc_manager;Well, that was certainly an... interesting interruption. I believe you have work to return to?@@" <<=setup.getNpcName('npc_manager', 'formal')>> asks as you quickly nod and resume your seat.<<if $now.getUTCDay() != 5>> "@@.npc_manager;Very good, have a productive <<if $now.getUTCHours()<12>>day<<else>>afternoon<</if>>.@@"<</if>><br>
<br>
She turns and disappears back into her inner office.<br>
<br>
[<<moveTo $scene.workEventReturn "Resume working in your reclaimed chair." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: trigger work chair maintenance
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 16 'terrible' $ALONE>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'little' $ALONE>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'little' $ALONE>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You barely get a chance to gasp in surprise as the chair's restraints tighten around you, the controls suddenly out of reach even as the selection screen flips over to a status summary.<br>
<br>
"@@.computer;<<uc 'MAINTENANCE "ENDURANCE TESTING" ACTIVATED'>>@@"<br>
"@@.computer;<<uc "Initiating system reset...">>@@"<br>
"@@.computer;<<uc "Reset complete, performing per-hole capacity performance assessment">>@@"<br>
<br>
Any further objection is stifled as a gag forces its way past your lips, the initial small phallus increasing in girth and length with each thrust until your throat is bulging at each stroke, your limits pushed until it feels like you're deep-throating a baseball bat.<br>
<br>
"@@.computer;<<uc "Oral capacity reached, proceeding...">>@@"<br>
<br>
With a massive dong now lodged in your throat you whimper as the routine continues, your gasp stifled by the lip-spreading cock as the first dildo thrusts into your ass, the process repeating, thrust after stretching thrust until it feels like you're sitting on a telephone pole.<br>
<br>
<<if $player.body_ref.vagina>>
"@@.computer;<<uc "Anal capacity reached, proceeding...">>@@"<br>
<br>
If you thought your ass was stretched and filled, things get exponentially worse as the machine goes to work on your cunt, the dildos pressing against one another as your capacity is double-stuffed beyond what seems at all physically possible, and you wonder if an outside observer would think you had three thighs coming out from your hips...<br>
<br>
"@@.computer;<<uc "Vaginal capacity reached. Assessment complete. Proceeding to test phase.">>@@"
<<else>>
"@@.computer;<<uc "Anal capacity reached. Assessment complete. Proceeding to test phase.">>@@"
<</if>>
<br><br>
[<<moveTo "event_work_chair_malfunction_2" "Mmmfff!" 1800>>]
</div>/*#
#desc: pounded by work chair
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")+1>>
<<applyExperience 'anal' _anal 'unbelievable' $ALONE>>
<<set _oral = setup.getTotalValue("oral")+1>>
<<applyExperience 'oral' _oral 'unbelievable' $ALONE>>
<<applyFatigue 50>>
<<if $fetish.cum>>
<<applyExperience 'cum' 13 'very' $ALONE>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
If you thought being statically stretched was a strain, the next stage is so much more intense, <<if $player.body_ref.vagina>>all three<<else>>both<</if>> massive dildos commencing to pound you with hard, full-length thrusts, slow, deep, and irresistible, the bonds holding you to the chair helping your entire body to feel the force of each pounding impact.<br>
<br>
"@@.computer;<<uc "Calibration complete. Testing in progress, system at 10%. Increasing power...">>@@"<br>
<br>
You moan, watching as the percentage counter begins to increment... and the pace of your pounding does as well.<br>
<br>
"@@.computer;<<uc "Testing in progress, system at 27%. Encountering resistance... initiating micro-stimulation...">>@@"<br>
<br>
The dildos are moving at almost a thrust per second, each stroke stretching your poor orifices, and then they start vibrating, the pace of your pounding increasing as the stimulation is made even more intense by the large dongs constantly buzzing as they piston in and out of your body.<br>
<br>
You strain and thrash against your bonds, but you do not move in the slightest, the sturdy chair binding you tight as the percentages tick up and the buzzing thrusts increase to more than one a second.<br>
<br>
"@@.computer;<<uc "Testing in progress, system at 69%. System heat approaching unsafe levels. Deploying auto-lube.">>@@"<br>
<br>
The rapid pace of the dildos had started to really stress... but now things get even more intense as <<if $player.body_ref.vagina>>all three<<else>>both<</if>> dildos begin sweating and spurting
<<if $fetish.cum>>
cum, the thick, creamy
<<else>>
a thick, tasteless lubricant, the slick
<</if>>
substance allowing the dildos to glide even easier as you drool and leak.<br>
<br>
[<<moveTo "event_work_chair_malfunction_3" "Oh Goddess..." 1800>>]
</div>/*#
#desc: pounded by work chair
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.machineMaintenance = true>>
<<setThreshold 'anal' 'extreme_anal' 'machine_anal'>>
<<setThreshold 'oral' 'extreme_oral' 'machine_oral'>>
<<set _anal = setup.getTotalValue("anal")+1>>
<<applyExperience 'anal' _anal 'unbelievable' $ALONE>>
<<set _oral = setup.getTotalValue("oral")+1>>
<<applyExperience 'oral' _oral 'unbelievable' $ALONE>>
<<applyFatigue 200>>
<<if $fetish.cum>>
<<applyExperience 'cum' 13 'very' $ALONE>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You can't even keep track of the pace of the dildos pistoning and pumping in and out of your body, tears of strain blurring your eyesight as you catch a final glimpse of the status display.<br>
<br>
"@@.computer;<<uc "Testing in progress, system at 98%. Initiating deep-stretch turbo.">>@@"<br>
<br>
You're too overwhelmed to guess what that means... but you find out a moment later as the next thrust sees the dildo in your ass swell in size at depth, pushing organs out of the way as it stretches you to the limit before retracting a fraction of a second later.<br>
<br>
Thrust, stretch, thrust, stretch, the chair holds you tight and buzzes and pounds you mercilessly, your orgasm passing as fleeting noise compared to the constant stimulation, your body straining as never before until, as you teeter on the edge of exhaustion. Everything pulls out and goes silent.<br>
<br>
Leaking <<if $fetish.cum>>cum<<else>>lube<</if>> from every orifice you pant and gasp, trying to recover as your bonds slowly slacken and the machine pops up with "@@.computer;<<uc "Maintenance complete. Performance nominal.">>@@"<br>
<br>
You groan, your entire body feeling like it's been through the spin cycle as you shift and your work terminal cheerily reminds you that you were logged out for inactivity...<br>
<br>
[<<moveTo $scene.workChairReturn "Try and clear your head, and contract your holes." 120>>]
</div>/*#
#desc: move, bdsm fetish scene intro
#status: FINISHED 0.8.0.0
#ignore_spell: rememb
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<addItem 'ankle_cuffs_steel'>>
<<wearItem 'ankle_cuffs_steel' true>>
<<addItem 'wrist_cuffs_steel'>>
<<wearItem 'wrist_cuffs_steel' true>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" _TODOdominatrix>>
<div id="invframe" class="scrolltext">
Your crate is opened, nearly blinding you as it takes several moments for your eyes to adjust.
<<if $npc_discipline.stage >= 5>>
When they do you find yourself staring at a familiar woman; it is one of <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> assistants in full dominatrix attire!
<<else>>
When they do you find yourself shocked to be staring at what you struggle to describe as anything other than a dominatrix.
<</if>>
<br><br>
Though her outfit is technically "decent" in the quantity of skin that it reveals the fact that it is made of fitted leather, and that there is a flogger dangling from her corset-slimmed waist has you immediately quaking.<br>
<br>
<<printThought "What's going on? Where's my <<=setup.getNpcName('npc_manager', 'title')>>?">><br>
<br>
<<if $npc_discipline.stage >= 5>>
She smiles in recognition, making a show of glancing at her tablet before looking back up at you.<br>
<br>
"@@.generic_female1;Why hello! Fancy meeting you here! Unfortunately, well... it seems that you were QUITE the naughty girl. I'd tell you to relax and enjoy your stay but... well... that isn't really the point, is it?@@"
<<else>>
She glances at a tablet before looking up at you and raising an eyebrow. Reaching towards your head she removes your headphones, bringing a final stop the long-memorised <<if $fetish.sissy>>sissification<<else>>feminisation<</if>> instructions.<br>
<br>
"@@.generic_female1;Hmm, looks like you were QUITE the naughty girl. I'd tell you to relax and enjoy your stay but... well... that isn't really the point, is it?@@"
<</if>>
<br><br>
As you try to process her words you identify a background of other sounds — muffled moans and yelps, the sound of leather on flesh. You reflexively struggle in fear, but your restraints are as secure now as they were <<if $scene.voluntary>>last night when you locked yourself in<<else>>yesterday morning when you were first locked in<</if>>.<br>
<br>
With thorough efficiency she rebinds you without ever giving you any real freedom — hobbling your legs and cuffing your wrists before
<<if $scene.addCollar>>
strapping a loose collar around your neck and adding a leash.
<<else>>
clipping a leash to the front of your collar.
<</if>>
With a sharp tug she leads you to mince out of the box and follow her.<br>
<br>
Though you have no choice but to step quickly to keep up with her unencumbered strides you can't help but gawk at the more than myriad punishment devices you pass, and the at least half a dozen individuals bound and in the midst of being flogged, whipped, shocked or punishingly fucked by machines even more deviously designed than anything you could imagine.<br>
<br>
Stopping in front of a machine seemingly at random she orders you to sit before rebinding your arms raised in front of you, your legs stretched out to either side
<<if setup.getTotalValue("dexterity") > 15>>
into a full side splits.
<<else>>
forcing you as close to a side splits as you can manage.
<</if>>
<br><br>
<<if State.hasPlayed("event_work_move_6_bdsm_2")>>
"@@.generic_female1;Since you have been here before we can get straight to your punishment refresher. Whatever your misbehaviour, we'll have you back to being a perfectly obedient employee soon enough!@@"
<<else>>
"@@.generic_female1;Since this appears to be your first time visiting our lovely training facility, let me explain. Misbehaving slaves like yourself are sent down here when your supervisors are either just too busy or at their wits end as to how to punish you. A few hours under the care of one of our machines and, well... even the most recalcitrant employee tends to get with the programme.@@"
<</if>>
<br><br>
<<if $scene.voluntary>>
You suppose, in a way, you have been bad, after all, though you arriving here exactly was a bit random you're technically skipping your morning shift...
<<else>>
<<if $npc_manager.affection > $npc_manager.anger>>
Your heart sinks — haven't you been a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>? Why would <<=setup.getNpcName('npc_manager', 'formal')>> send you for such treatment?<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
You quickly correct yourself — it is not up to you to question her methods, if she sent you here then clearly it is where you belong.
<</if>>
<<elseif $npc_manager.anger < 5 && $npc_manager.affection > 0>>
You tremble in fear. Though you haven't always been the "perfect" <<if $fetish.sissy>>SISSI <</if>>secretary she seems to desire you didn't think you'd misbehaved enough to warrant... this.
<<else>>
You start to tear up — you have misbehaved so much, is it all coming due?
<</if>>
<</if>>
<br><br>
"@@.generic_female1;Oh, and to help focus your thoughts on learning from the experience...@@" She snaps the headphones back over your head. This time the recording is even more intense, the voice more firm and commanding as you are ordered to <<glitchText "rememb... submit, obey, be a good slut">> and even worse as she partially removes your clothes to expose your bottom.<br>
<br>
[<<moveTo "event_work_move_6_bdsm_2" "Continue." 60>>]
</div>/*#
#desc: move, bdsm fetish scene, auto-spanker — office_move_spanker.jpg
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'terrible' $SEEN_STRANGER>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" _TODOdominatrix>>
<div id="invframe" class="scrolltext">
Disoriented by the recording you cry out into your gag when the punishment starts — a hard slap on your right butt-cheek that is followed a fraction of a second later by its equal on the left.<br>
<br>
You are soon howling in pain as what seems like an endless sequence of hard leather slaps impacts your reddening rear.<br>
<br>
You cry into your gag, thrashing against your bonds, but it is for naught. Your restraints are perfectly designed to hold you helpless as the machine works untiringly. Looking over your shoulder to watch the spinning wheel bring its varied instruments around and around only seems to make it worse.<br>
<br>
Whimpering as you hang from your restraints and stare down towards the ground you can't help but marvel at how the mix of many-tailed floggers, wide leather paddles and studded straps serves to prevent you from ever becoming "accustomed" to the punishment.<br>
<br>
Tears flowing down your face to mix with the drool leaking from your gag you lose all track of time. When the punishment finally stops it takes you a few moments to stop sobbing, even as you find yourself bracing for something even worse.<br>
<br>
<<if $npc_discipline.stage > 1>>
Feeling the headphones removed you finally muster the strength to look around, surprised to find <<=setup.getNpcName('npc_manager', 'formal')>> looking at you with concern, and at her side <<=setup.getNpcName('npc_discipline', 'formal')>>, whom you realise must be in charge of this diabolic facility.<br>
<br>
"@@.npc_manager;What have you done to my poor secretary?@@"<br>
<br>
<<=setup.getNpcName('npc_discipline', 'formal')>> barely winces before bringing up her tablet and giving an explanation.
<<else>>
Feeling the headphones removed you finally muster the strength to look around, surprised to find <<=setup.getNpcName('npc_manager', 'formal')>> looking at you with concern, the "dungeon mistress" standing next to her looking nervous and far from her previous authority.<br>
<br>
"@@.npc_manager;What have you done to my poor secretary?@@"<br>
<br>
The other woman flinches as if struck, fumbling for her tablet as she tries to explain.
<</if>>
<br><br>
[<<moveTo "event_work_move_6_bdsm_3" "Recover and listen." 60>>]
</div>/*#
#desc: move, bdsm fetish scene rescued
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "headphones_pink" true>>
<<deleteItem "headphones_pink">>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImageManager() setup.charImage("npc_discipline","npc_discipline_3") _TODOdominatrix>>
<div id="invframe" class="scrolltext">
<<if $npc_discipline.stage > 1>>
"@@.npc_discipline;I apologise both to you and to your secretary, but all of the paperwork was in order, the dominatrix on duty had no way of knowing that this was a misfiling and not just another punishment assignment.@@"
<<else>>
"@@.generic_female1;I am truly sorry, I do not know how this misfiling occurred...@@"<br>
<br>
Her begging starts to blur until your <<=setup.getNpcName('npc_manager', 'title')>> silences her with a single raised hand.
<</if>>
<br><br>
"@@.npc_manager;It was not a misfiling... technically, though it was also not my intent.@@"<br>
<br>
You're even more confused than the other woman as she suddenly pivots her argument.<br>
<br>
<<if $npc_discipline.stage > 1>>
A moment of silence passes between the two HR managers as <<=setup.getNpcName('npc_discipline', 'formal')>> seems to take some secret meaning from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> words.<br>
<br>
"@@.npc_discipline;I see... well, let me apologise double, in that case. Let me make it up to you. I can't completely nullify the registered programme, but I can fudge things, substitute in one of my assistants for the remainder of your secretary's scheduled time, nobody will be the wiser.@@"
<<else>>
"@@.generic_female1;It wasn't? Well, um, in that case... well, you see the rules are quite specific that a slave is only allowed early release from punishment in the case of a medical emergency. She is scheduled all the way till noon...@@"<br>
<br>
Before <<=setup.getNpcName('npc_manager', 'formal')>> can even finish turning her glare to the other woman she quickly continues.<br>
<br>
"@@.generic_female1;But! But! I can tweak things a little, treat it as a "misfiling" as I mentioned earlier... I mean, it will hurt my metrics, but I am willing to do it as... a favour?@@"<br>
<br>
The woman now finds herself the focus of <<=setup.getNpcName('npc_manager', 'formal')>> withering gaze. If you were not in such pain you might find it amusing — how your manager, in her "normal" work formal attire, manages to look and act ten times the authoritative "Mistress" than the other woman manages even in all her leather finery.
<</if>>
<br><br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<if $npc_discipline.stage <= 1>>
"@@.npc_manager;You will do it because I tell you to. That said... I suppose we can ask the victim of all this what she thinks.@@"<br>
<br>
<</if>>
<<=setup.getNpcName('npc_manager', 'formal')>> reaches out to tenderly stroke your cheek and remove your gag.<br>
<br>
<<if $npc_discipline.stage > 1>>
"@@.npc_manager;So, how are you doing? Would you like someone else to suffer the remainder of your punishment, or would you rather endure it yourself? I imagine your chosen replacement would be quite grateful for your sacrifice.@@"<br>
<br>
"@@.npc_discipline;She would at that.@@"
<<else>>
"@@.npc_manager;So, which will it be? Have you had enough, or are you willing to endure a bit more to make this woman's job a bit easier?@@"<br>
<br>
"@@.generic_female1;Please, I promise to make it up to you!@@" She begs, though she seems to be directing her plea towards your <<=setup.getNpcName('npc_manager', 'title')>> as if your opinion were irrelevant.
<</if>>
<br><br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_bdsm_4_accept" "Ask to be gagged and for the machine to be switched on to finish off your shift." _timeToLunch>>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;<<=ps(setup.getNpcName('npc_manager', 'formal'))>> slightest desire is your dearest wish. How could you deny such a lovely request?@@]
<<else>>
[<<moveTo "event_work_move_6_bdsm_4_reject" "Admit defeat and request release." 60>>]
<</if>>
<<else>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze narrows as all of your previous failures to obey flash before your eyes.<br>
<br>
"@@.npc_manager;Hmm, on second thought, maybe she does deserve this. Yes, finishing off her shift may do her good, only... could I make a small tweak?@@"<br>
<br>
The headphones are replaced before you can hear what the tweak is and you brace yourself for the painful punishment to resume.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_bdsm_4_forced" "Continue your shift..." _timeToLunch>>]<br>
<</if>>
</div>/*#
#desc: move, bdsm fetish scene, agree to finish off your punishment session move_deepthroat.gif
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.bdsm = 2>>
<<useClothSetPop 'tmp'>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<<addItem "headphones_pink">>
<<wearItem "headphones_pink" true>>
<<setThreshold 'bdsm' 'bdsm_other' 'discipline_volunteer'>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'very' $SEEN_STRANGER>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 16 'very' $SEEN_STRANGER>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'skip' $SEEN_STRANGER>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<set $scene.fixMakeup = $player.makeup.template != "" && $player.makeup.messed > 25>>
<<if $scene.fixMakeup>>
<<set $player.makeup.messed = 5>>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
Your <<=setup.getNpcName('npc_manager', 'title')>> smiles with pride as she slips the gag back between your parted lips, cinching it tight just as you like it.<br>
<br>
<<if $npc_discipline.stage > 1>>
"@@.npc_manager;Hmm, well, it seems someone will be owing me a favour. But first, tell me, is there any leeway in the prescribed punishment?@@"<br>
<br>
"@@.npc_discipline;Some, what did you have in mind?@@"
<<else>>
"@@.npc_manager;Well, it looks like you owe me a favour, but first, tell me, is there any leeway in the prescribed punishment?@@"<br>
<br>
"@@.generic_female1;Some, what did you have in mind?@@"
<</if>>
<br><br>
You cannot hear the reply before your headphones are replaced, but soon realise what it must have been as a dildo slides into your rear, fucking and buzzing as the spanking resumes.<br>
<br>
Panting through your gag, as you try to adjust to this new fullness your head is suddenly pulled back. Your neck straining you find yourself looking directly up as your gag is removed to allow a dildo to be forced down your throat. Just as with the one in your rear it begins thrusting in and out, never retreating far enough for you to move your head, while each down-stroke strains your throat.<br>
<br>
Wide-eyed and frantic at your new situation you find that the addition of the "pleasure," combined with difficulties breathing around the constantly-thrusting dildo, makes everything even more intense, your ass fucked, flogged, slapped and spanked continuously as you cry and gasp and come shamefully close to cumming while being continuously face-<<if $fetish.get_raped>>raped<<else>>fucked<</if>>...<br>
<br>
More time passes as your painful punishment draws out but, finally, the spanking ceases and the dildos retreat from either end of your sore body. Your head flops forward and you lay eyes on the dungeon mistress who first locked you in as she helps you out of your restraints.<br>
<br>
<<if $npc_discipline.stage > 1>>
"@@.npc_discipline;Well, I imagine you enjoyed yourself... or at least learned something. Further proof that <<=setup.getNpcName('npc_manager', 'other')>> really is the best when it comes to training up an obedient <<if $fetish.sissy>>sissy<<else>>girl<</if>>.@@"
<<else>>
"@@.generic_female1;Well, I hope you learned something... though you seem such an obedient <<if $fetish.sissy>>sissy<<else>>girl<</if>> already I couldn't say what. Your owner is lucky to have such a loyal slave.@@"
<</if>>
<br><br>
You blush at the compliment, almost enough to distract from your sore throat and the pulsing pain in your raw buttocks.
<<if $scene.fixMakeup>>
<br><br>
"@@.generic_female1;Speaking of... I don't think either of us want to get in trouble for you being returned in less-than-perfect condition.@@"<br>
<br>
The woman produces a makeup kit and does some quick touch-up work before nodding in satisfaction. You smile back in thanks, glad that you won't be getting in trouble with your <<=setup.getNpcName("npc_manager","title")>> for not meeting her high "representative position" standards.<br>
<br>
<</if>>
Wincing with each step you follow along behind as the woman takes you back through the dungeon before passing you off to a more "normally" dressed mover.<br>
<br>
<<if $npc_discipline.stage > 1>>
"@@.npc_discipline;We do appreciate your sacrifice. You have really been well trained into a fantastically loyal slave, but what loyalty can't be reinforced with a touch of maintenance punishment, hmm?@@"
<<else>>
"@@.generic_female1;Thank you again for your sacrifice, I will make it up to your owner however I can. You will be delivered back to her now... though I recommend you continue your exemplary behaviour if you do not want to end up back here again.@@"
<</if>>
<br><br>
<<if $npc_discipline.stage > 1 && $npc_manager.flags.evil == 2>>
<<if State.hasPlayed("event_rival_bdsm_1") || State.hasPlayed("event_rival_bdsm_1_alt")>>
[@@.link_locked;You have already enlisted <<=ps(setup.getNpcName("npc_discipline", "formal"))>> assistance to take down <<=setup.getNpcName("npc_rival", "formal")>>.@@]<br>
<<else>>
[<<moveTo "event_rival_bdsm_1" 'Ask for a moment alone with <<=setup.getNpcName("npc_discipline", "formal")>>.' 120>>]<br>
<</if>>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Follow the mover out." 300 "<<set $scene.intro='accept'>><<removeItem 'hollow_gag' true>><<deleteItem 'hollow_gag'>><<removeItem 'headphones_pink' true>><<deleteItem 'headphones_pink'>><<removeItem 'ankle_cuffs_steel' true>><<deleteItem 'ankle_cuffs_steel'>><<removeItem 'wrist_cuffs_steel' true>><<deleteItem 'wrist_cuffs_steel'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Follow the mover out." 300 "<<set $scene.intro='accept'>><<removeItem 'hollow_gag' true>><<deleteItem 'hollow_gag'>><<removeItem 'headphones_pink' true>><<deleteItem 'headphones_pink'>><<removeItem 'ankle_cuffs_steel' true>><<deleteItem 'ankle_cuffs_steel'>><<removeItem 'wrist_cuffs_steel' true>><<deleteItem 'wrist_cuffs_steel'>>">>]
<</if>>
<<else>>
The mover doesn't even say a word before turning and walking off, your leash in hand. You follow obediently behind on the way up a hall and towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>><<removeItem 'hollow_gag' true>><<deleteItem 'hollow_gag'>><<removeItem 'headphones_pink' true>><<deleteItem 'headphones_pink'>><<removeItem 'ankle_cuffs_steel' true>><<deleteItem 'ankle_cuffs_steel'>><<removeItem 'wrist_cuffs_steel' true>><<deleteItem 'wrist_cuffs_steel'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='accept'>><<removeItem 'hollow_gag' true>><<deleteItem 'hollow_gag'>><<removeItem 'headphones_pink' true>><<deleteItem 'headphones_pink'>><<removeItem 'ankle_cuffs_steel' true>><<deleteItem 'ankle_cuffs_steel'>><<removeItem 'wrist_cuffs_steel' true>><<deleteItem 'wrist_cuffs_steel'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: move, bdsm fetish scene, request to end shift early
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.move_fetish.bdsm < 1>>
<<set $player.flags.move_fetish.bdsm = 1>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png">>
<div id="invframe" class="scrolltext">
Your ass on fire, muscles aching from straining against your restraints your voice is a cracking whisper, exhausted from howling into your gag as you ask to be released.<br>
<br>
You catch a quick glare from <<=setup.getNpcName('npc_manager', 'formal')>> to the dungeon mistress before she signals for you to be released.<br>
<br>
As soon as your bonds have been removed <<=setup.getNpcName('npc_manager', 'formal')>> lifts you with ease, gently placing you on the ground as you wobble, trying to keep from collapsing.<br>
<br>
"@@.npc_manager;And you thought she could endure another few hours of such treatment? It seems my cute <<if $fetish.sissy>>SISSI<<else>>secretary<</if>> is far too delicate for these things... let us hope she continues to be behaved such that I never need send her back.@@"<br>
<br>
Taking hold of your leash, she gently leads you back out through the dungeon and then towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='reject'>><<removeItem 'ankle_cuffs_steel' true>><<deleteItem 'ankle_cuffs_steel'>><<removeItem 'wrist_cuffs_steel' true>><<deleteItem 'wrist_cuffs_steel'>><<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='reject'>><<removeItem 'ankle_cuffs_steel' true>><<deleteItem 'ankle_cuffs_steel'>><<removeItem 'wrist_cuffs_steel' true>><<deleteItem 'wrist_cuffs_steel'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: move, bdsm fetish scene forced to continue punishment
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.bdsm = 2>>
<<addItem "headphones_pink">>
<<wearItem "headphones_pink" true>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'very' $SEEN_STRANGER>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 16 'very' $SEEN_STRANGER>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'skip' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png">>
<div id="invframe" class="scrolltext">
Whatever pity you may have hoped for, <<=setup.getNpcName('npc_manager', 'formal')>> has none to give. Whimpering in your bonds you watch as she steps around to the spanking machine. Rather than merely turn it on she makes some adjustments, a mechanical arm sprouting from between the two rotating spanking implements. Bearing a thick dildo it slides into your ass, commencing to roughly ass-fuck you as the spanking resumes.<br>
<br>
As if that wasn't enough she pulls your head back, forcing you to look up at what you realise is another fucking machine, the dildo threading through the gag into your mouth, thrusting down into your throat then retreating just enough to let you breath without ever giving space for you to free yourself from its inexorable face-<<if $fetish.get_raped>>rape<<else>>fuck<</if>>.<br>
<br>
Crying out you thrash against your bonds, but it is no use. The two women watch dispassionately for a few moments before walking away, leaving you to endure your punishment alone, with naught but the recording in your ear to keep you company.<br>
<br>
As time ticks on you faint once or twice in the face of the brutal punishment, but each time you wake up swiftly to another sharp crack of a flogger, your ass somehow never becoming numb to the constant torture, your throat constantly straining yet never quite triggering a fully gag reflex.<br>
<br>
Hanging limp, drained and exhausted you barely even notice when things finally stop, it isn't until the dildos fully retreat from your used and gaping holes that you realise that you must have reached the end of your punishment.<br>
<br>
Working efficiently, though not cruelly, the dungeon mistress who first locked you in soon has you free of your bindings, even removing your gag and plug before leading you across the dungeon.<br>
<br>
Most of the faces have changed since you first arrived, though you recognise a few as having been in the same brutal situations and you wonder what they could have done wrong to deserve such a lengthy and cruel reprimand.<br>
<br>
Wincing with each step you follow along behind as the woman takes you back through the dungeon before passing you off to a more "normally" dressed mover.<br>
<br>
"@@.generic_female1;I hope you learned your lesson. You will be returned to your owner now, but remember that we are always down here ready to deal with misbehaving slaves.@@"<br>
<br>
The mover doesn't even say a word before turning and walking off. You follow obediently behind on the way up a hall and on towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='forced'>><<removeItem 'hollow_gag' true>><<deleteItem 'hollow_gag'>><<removeItem 'headphones_pink' true>><<deleteItem 'headphones_pink'>><<removeItem 'ankle_cuffs_steel' true>><<deleteItem 'ankle_cuffs_steel'>><<removeItem 'wrist_cuffs_steel' true>><<deleteItem 'wrist_cuffs_steel'>><<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='forced'>><<removeItem 'hollow_gag' true>><<deleteItem 'hollow_gag'>><<removeItem 'headphones_pink' true>><<deleteItem 'headphones_pink'>><<removeItem 'ankle_cuffs_steel' true>><<deleteItem 'ankle_cuffs_steel'>><<removeItem 'wrist_cuffs_steel' true>><<deleteItem 'wrist_cuffs_steel'>><<useClothSetPop 'tmp'>>">>]
<</if>>
</div>/*#
#desc: move, bestiality fetish scene intro
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "headphones_pink" true>>
<<deleteItem "headphones_pink">>
<<addItem 'bitchsuit_black_copy'>>
<<wearItem 'bitchsuit_black_copy' true>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'hollow_plug' true>>
<<deleteItem 'hollow_plug'>>
<<addItem 'ring_gag'>>
<<wearItem 'ring_gag' true>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
In a half-aware daze thanks to hours and hours of suggestive <<if $fetish.sissy>>sissy<<else>>mesmerising<</if>> audio you wince at the sudden bright light as your crate is opened. Blinking frantically you end up focusing on the sign hanging on the wall in front of you "Bitch's Paradise Kennels." <br>
<br>
Trying to look around you can't really see much else, though you can feel someone unhooking your lower attachments, including sliding the plug out of your rear.<br>
<br>
You let out a low moan as your rear passage tries to recover from its long gaping. Helped out of the cage you are left gagged, but otherwise stripped naked, your clothes placed in a neat pile by the friendly, though silent attendant who proceeds to rebind your arms individually a forearm to bicep arrangement. The routine is repeated on the other arm, your hands mitted and attached together somehow behind your neck.<br>
<br>
Guided down to the floor your legs are similarly bound, calves to thighs leaving you balanced on all fours on your knees and elbows, all four fortunately padded. A ring gag replaces the pecker gag you had been "enjoying" during the move and then a <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>leash is attached to your collar<<else>>collar is buckled around your neck, complete with a leash<</if>>.<br>
<br>
"@@.generic_male1;Come along now,@@" <<if $options.fem>>she<<else>>the attendant<</if>> states, leading you towards a pen and then closes you in. Pressing a button on one side a trio of doors open in the back of the pen and out stride several dogs. Several large... MALE dogs...<br>
<br>
Looking quite... friendly two of them start towards you, the hard dog-cocks dangling between their legs making no secret as to their intentions.<br>
<br>
[<<moveTo "event_work_move_6_bestiality_2_enjoy" "Bend over and take it like a bitch." 3600>>]<br>
[<<moveTo "event_work_move_6_bestiality_2_resist" "Try to run away!" 1800>>]
</div>/*#
#desc: move, bestiality fetish scene refuse to work in the kennels
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
Eyes wide at the sight of the two animals approaching you, you try to scramble away, flailing somewhat thanks to your restraints as you bump up against the gate in an attempt to get someone's attention.<br>
<br>
Seemingly misinterpreting your commotion the attendant calls out encouragement. "@@.generic_male1;Woah, pace yourself, girl! You've got all morning to enjoy your new friends!@@"<br>
<br>
Forced to flee as the pursuing hounds get closer you stumble-crawl across the cage, unsure how long you can hold them off when you hear a familiar voice signaling your salvation.<br>
<br>
"@@.npc_manager;What? Is that <<=$player.first_name>>? What is she doing in there, get over here and let her out!@@"<br>
<br>
Your heart goes out in gratitude as the attendant appears to shoo away the dogs and guide you out of the pen where you swiftly cuddle up against your <<=ps(setup.getNpcName('npc_manager', 'title'))>> legs for protection.<br>
<br>
<<if $scene.voluntary>>
"@@.npc_manager;Really got yourself in a pickle this time, hmm? Well, you are safe now, though you really should think first before just tying yourself up in a random box. I cannot always be around to rescue you.@@"
<<else>>
"@@.npc_manager;It is okay, I will not let anything bad happen to you.@@" She states comfortingly before looking back up at the nervous kennel attendant.<br>
<br>
"@@.npc_manager;What, exactly do you think you were doing? I did not authorise this.@@"<br>
<br>
"@@.generic_male1;I'm so, so sorry, but all the paperwork was in order, see?@@" The attendant hands over a tablet that your <<=setup.getNpcName('npc_manager', 'title')>> glances over, her gaze narrowing. "@@.generic_male1;I mean, it wasn't your name, but the authorization is there and—@@"
<</if>>
<br><br>
"@@.npc_manager;I see... well, in any case, I am taking my secretary back with me, please remove her restraints.@@"<br>
<br>
"@@.generic_male1;Of course! Of course!@@" The attendant kneels down and begins unstrapping your restraints. Still nervously trembling you rise to your feet and cuddle against your <<=setup.getNpcName('npc_manager', 'title')>> who, somewhat surprisingly, makes no motion to impede your somewhat presumptuous move, instead merely waiting until the attendant returns with your clothing and you quickly dress yourself.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> leaves the kennel and leads you to the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='reject'>><<removeItem 'bitchsuit_black_copy' true>><<deleteItem 'bitchsuit_black_copy'>><<removeItem 'ring_gag' true>><<deleteItem 'ring_gag'>><<useClothSetPop 'tmp'>><<set $scene.collarObj = setup.getItemObjFromType('choker')>><<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes('leash_attachment'))>><<if $scene.addCollar>><<addItem 'loose_collar'>><<wearItem 'loose_collar' true>><</if>><<addItem 'leash_black'>><<wearItem 'leash_black' true>><<set $player.makeup.messed=0>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='reject'>><<removeItem 'bitchsuit_black_copy' true>><<deleteItem 'bitchsuit_black_copy'>><<removeItem 'ring_gag' true>><<deleteItem 'ring_gag'>><<useClothSetPop 'tmp'>><<set $scene.collarObj = setup.getItemObjFromType('choker')>><<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes('leash_attachment'))>><<if $scene.addCollar>><<addItem 'loose_collar'>><<wearItem 'loose_collar' true>><</if>><<addItem 'leash_black'>><<wearItem 'leash_black' true>><<set $player.makeup.messed=0>>">>]
<</if>>
</div>/*#
#desc: move, bestiality fetish scene work in kennels
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<applyExperience 'bestiality' 5 'terrible' $ALONE>>
<<applyExperience 'anal' 13 'terrible' $ALONE>>
<<applyExperience 'cum' 13 'terrible' $ALONE>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
Turning around and rising up onto your knees to raise your rear high into the air to present yourself to the approaching dogs. You groan through your gag as their tongues run over your eager bum, wet and rough as they explore your cheeks, hole, and then down between to tease your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>><<if setup.checkItemTypeWorn("cage")>>locked up<<else>>dripping<</if>> snatch<</if>>.<br>
<br>
You moan with excitement, dribbling pre that is quickly licked up by the other dog, the first moving forward, crawling over your prone form as his hard dog-cock presses against your hole. His paws pressing against your back, his panting breath loud and fragrant from just behind your ear the canine cock slides into you, plunging deeper and deeper.<br>
<br>
Like a bitch in heat you take it all until his hips are pressed against your pillowy cheeks, his knot swelling to lock within in you. Groaning with lust you look up to find his friend in front of you, the bobbing cock centimetres from your face telling you that this pair of dogs has done this before, perhaps even been trained for precisely this task of treating you like the two-hole fuck-slut you are.<br>
<br>
Horny and eager as the cock in your ass makes quick thrusts you push yourself up onto your elbows and wrap your gag-spread lips around your second friend. His knot too thick to fit past your ring gag you do your best to make him happy, ever distracted by his even bigger friend breeding you from behind.<br>
<br>
You are still sucking dog-cock when you hear a panting bark and feel your ass flooded with canine cum. His knot deflating your rear friend pulls out and trots away, his near-instant disinterest quickly replaced as another, unseen animal swiftly mounts you.<br>
<br>
Stuck between two virile animals you
<<if $fetish.cum>>
suck until you are rewarded with a mouthful of thick, creamy dog cum, feeling it flow down your chin as you savour the thick knot spreading your ass as you are pushed down to the ground and fucked even harder.
<<else>>
take it hard from both ends, the thick knot spreading your ass as you are pushed down to the ground and fucked even harder.
<</if>>
<br><br>
[<<moveTo "event_work_move_6_bestiality_3" "Continue." 60>>]
</div>/*#
#desc: move, bestiality fetish scene rescued
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You've serviced at least a half dozen randy dogs<<if $fetish.cum>>, dog-cum leaking out of both of your well-used holes<</if>> as you pant and gasp and continue to take it like a bitch. All but lost in a world of bestial depravity you suddenly hear a familiar voice.<br>
<br>
"@@.npc_manager;<<=$player.first_name>>? What are you doing in there!@@"<br>
<br>
Your canine "friends" retreating away you wobble a bit on knees and elbows as you crane your neck to look up at <<=setup.getNpcName('npc_manager', 'formal')>> and the now nervous kennel attendant.<br>
<br>
"@@.generic_male1;So, you see, all the paperwork is in order. I mean, I can tell you didn't authorise this personally but—@@"<br>
<br>
"@@.npc_manager;Yes, yes, I understand.@@" She states dismissively, passing a tablet back to the attendant. "@@.npc_manager;You alright?@@" She asks looking down at you.<br>
<br>
<<printThought "Well... I wish you could have let him finish in me before breaking us up...">><br>
<br>
A bit glassy-eyed, you nonetheless nod.<br>
<br>
"@@.npc_manager;Hmm, I suppose you appear fine, looks like you had quite a bit of fun...@@"<br>
<br>
"@@.generic_male1;Fun, yes! See, everything is fine, no reason to get anyone into any trouble, why you could even—@@" The attendant stops, clapping a hand over her own mouth as if to try to cram her words back in.<br>
<br>
"@@.npc_manager;Even... what? Spit it out, now.@@"<br>
<br>
Still nervous the attendant finally mumbles her reply. "@@.generic_male1;Well, since she's enjoying things so much... why not let her stay? I mean, she's booked through lunch and, well... the dogs all seem to like her...@@"<br>
<br>
"@@.npc_manager;Hmm, and let me guess, if they get too hot and bothered without a cute "toy" to play with you're the one who has to help pick up the slack... or is that jerk off the hound?@@"<br>
<br>
The attendant nods. "@@.generic_male1;Y-yeah, I mean, it feels good, but I thought I'd have the morning free to work on other stuff, if she was willing to keep the boys entertained for another few hours, well... I'd be quite in your debt...@@"<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles down at you.<br>
<br>
"@@.npc_manager;So... what about it, <<if $fetish.sissy>>sissy<<else>>girl<</if>>? You feel like spending a bit more time with your new friends?@@"<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_bestiality_4_accept" "Nod obediently." _timeToLunch>>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Her slightest desire is your dearest wish. How could you deny such a lovely offer?@@]
<<else>>
[<<moveTo "event_work_move_6_bestiality_4_reject" "Shake your head." 60>>]
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> frowns slightly as she looks down at you, her expression reminding you of all the ways you have failed her in the past.<br>
<br>
"@@.generic_male1;Hmm... she does seem to be enjoying herself... fair enough, just make sure she's cleaned and dressed and delivered to my office by the end of lunch.@@"<br>
<br>
"@@.generic_male1;Of course, of course!@@" The attendant replies. The two of them walk away, and as if it were a silent signal, the dogs start closing in on you once again...<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_bestiality_4_forced" "Take it, bitch." _timeToLunch>>]<br>
<</if>>
</div>/*#
#desc: move, bestiality fetish scene, agree to continue being fucked by dogs in office kennels
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.bestiality = 2>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<applyExperience 'bestiality' 5 'terrible' $ALONE>>
<<applyExperience 'anal' 13 'terrible' $ALONE>>
<<applyExperience 'cum' 13 'terrible' $ALONE>>
<<set $scene.fixMakeup = $player.makeup.template != "" && $player.makeup.messed > 25>>
<<if $scene.fixMakeup>>
<<set $player.makeup.messed = 5>>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
More aggressive than your first time a big mastiff mounts you, his thick cock plunging into your cum-slick hole to knot you deep. Your eyes roll back in pleasure as an energetic golden retriever hops in front of you, his long, groomed hair brushing your face as your gag-spread lips wrap around his cock.<br>
<br>
Utterly insatiable you suck or fuck every dog there at least twice to the point they are all exhausted. Brimming with depraved hunger you crawl after them, going from dog to dog trying to cuddle and lick them back to arousal, desperate for that full knotted feeling when the attendant re-appears and whistles for you.<br>
<br>
"@@.generic_male1;Come on girl! It's time to get you cleaned up and back to your owner!@@"<br>
<br>
With a final longing look back at your friends you crawl towards the gate, the attendant grabbing you by the collar and leading you off to a tiled shower.<br>
<br>
Stripped of your restraints you are hosed off and patted dry before the attendant
<<if $scene.fixMakeup>>
provides a quick demonstration of the kennel's "grooming" services as they fix your makeup before leaving
<<else>>
finally leaves
<</if>>
you on your own to get dressed.
<br><br>
<<if $npc_manager.flags.evil == 2 && !State.hasPlayed("event_rival_bestiality_1")>>
[<<moveTo "event_rival_bestiality_1" 'Sound the kennel keeper out about <<=setup.getNpcName("npc_rival", "formal")>>.' 300 "<<removeItem 'bitchsuit_black_copy' true>><<deleteItem 'bitchsuit_black_copy'>><<removeItem 'ring_gag' true>><<deleteItem 'ring_gag'>><<useClothSetPop 'tmp'>><<set $scene.from_crate=true>>">>]<br>
<</if>>
[<<moveTo "event_work_move_6_bestiality_5" "Dress and go." 300>>]
</div>/*#
#desc: move, bestiality fetish scene, request to end shift early
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.move_fetish.bestiality < 1>>
<<set $player.flags.move_fetish.bestiality = 1>>
<</if>>
<<removeItem 'bitchsuit_black_copy' true>>
<<deleteItem 'bitchsuit_black_copy'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
As much fun as you've had this morning with "man's best friend" you're feeling a bit sore and tired so you signal that you would rather return with <<=setup.getNpcName('npc_manager', 'formal')>> now.<br>
<br>
She motions towards the attendant who opens the door to your pen so you can crawl out. Following at your <<=ps(setup.getNpcName('npc_manager', 'title'))>> like a good dog you are led to a small shower area where the assistant removes your bondage, hosed you off, and helps into your clothes.<br>
<br>
<<if $scene.addCollar>>
Looping a loose collar around your neck and attaching a leash to the front
<<else>>
Clipping a leash to the front of your collar
<</if>>
she hands your <<=setup.getNpcName('npc_manager', 'title')>> the leash.<br>
<br>
Thanking the attendant for her assistance <<=setup.getNpcName('npc_manager', 'formal')>> leads you off, out of the room and down the hallway towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<</if>>
</div>/*#
#desc: move, bestiality fetish scene forced to continue to be fucked by dogs in office kennels
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.bestiality = 2>>
<<removeItem 'bitchsuit_black_copy' true>>
<<deleteItem 'bitchsuit_black_copy'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<useClothSetPop 'tmp'>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<<applyExperience 'bestiality' 5 'terrible' $ALONE>>
<<applyExperience 'anal' 13 'terrible' $ALONE>>
<<applyExperience 'cum' 13 'terrible' $ALONE>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
With a final pitiless glance your <<=setup.getNpcName('npc_manager', 'title')>> walks away, the dogs that had previously retreated moving in to resume having their pleasure with you once again.<br>
<br>
Exhausted, bound and helpless you are fucked, knotted and humped from every angle. By the time the attendant returns to shoo the animals away and drag you out you are splayed out on the floor, dripping and oozing canine cum from every orifice.<br>
<br>
Seemingly unbothered by your wrecked state she attaches a leash and half leads, half drags you out of the pen and into a tiled shower.<br>
<br>
Giving you a quick hosing off she follows by removing your bondage, then a more thorough cleaning then, finally a quick dry.<br>
<br>
Disappearing for a moment as you try to recover she returns carrying your clothes, pausing first to shove the plug back into your ass before waiting patiently as you get dressed and in so doing start to feel a bit more "human." <br>
<br>
Handing the leash off to a second attendant the <<man>> nods in acknowledgement before giving a gentle tug to indicate you should follow.<br>
<br>
"@@.generic_female1;Door to door service is part of our promise.@@" <<He>> states for an explanation as <<he>> leads you out of the kennel and towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<</if>>
</div>/*#
#desc: move, bestiality fetish scene, dressed, return to office
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'bitchsuit_black_copy' true>>
<<deleteItem 'bitchsuit_black_copy'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<</if>>
<<set $player.location = "Bitch's Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
Slowly returning to a human headspace as you finish dressing yourself you take slow breaths and clench down to keep any of the copious canine cum from leaking down your leg. Smiling at the attendant you wave to your new doggy friends only to run into a second attendant.<br>
<br>
The attendant
<<if $scene.addCollar>>
loops a loose collar around your neck and attaches a leash to the front.
<<else>>
clips a leash to the front of your collar.
<</if>>
<br><br>
"@@.generic_female1;Door to door delivery is one of our services, so I'll be taking you back to <<=setup.getNpcName('npc_manager', 'other')>> now.@@"<br>
<br>
Obediently you follow along as <<he>> heads out of the kennels and towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<</if>>
</div>/*#
#desc: move, bondage fetish scene intro, installed as human chair
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "headphones_pink" true>>
<<deleteItem "headphones_pink">>
<</if>>
<<set $player.location = "An Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
The front of the crate is pulled off, your slowed mind barely having time to react before you are rebundled in a fresh manner.<br>
<br>
Still reeling from <<if $scene.voluntary>>your night<<else>>nearly twenty-four hours<</if>> of sensory-deprivation and <<if $fetish.sissy>>sissification<<else>>feminisation<</if>> recordings you are limp and pliable as you are removed from the crate by a pair of movers. Helpless in their strong hands you are stripped naked and folded up into a new, far more restricted, position.<br>
<br>
Headphones removed — though still plugged in both holes, you are finally able to focus enough to process your situation.<br>
<br>
You are on your back, your legs bent knees to chin, arms and calves bound together reaching upwards. Whatever platform to which you are bound you are about half a metre off the ground and you feel yourself moving, rolling along the floor, unable to see much save the ceiling above as you travel down a hallway, up an elevator then down another hallway and into an office.<br>
<br>
You catch a fleeting glimpse of a sexy secretary <<if $fetish.sissy>>- sissy or not, you are uncertain, <</if>>sitting in an antechamber much like your own before you are rolled into the inner office and placed behind the large desk.<br>
<br>
It takes a moment as you finally realise the position you're in — you've been restrained as a naked, human office chair!<br>
<br>
[<<moveTo "event_work_move_6_bondage_2" "Continue." 60>>]
</div>/*#
#desc: move, bondage fetish scene work as a human chair
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'hollow_plug' true>>
<<deleteItem 'hollow_plug'>>
<<addItem 'vibrating_plug_large'>>
<<wearItem 'vibrating_plug_large' true>>
<<applyExperience 'anal' 12 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "An Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
The movers depart and you catch a glimpse of the secretary standing over you. With as much enthusiasm as you might show replacing toner she plugs a large plug into your ass, flicking it on for a few moments to send powerful buzzing through your whole body before turning it back off and walking away.<br>
<br>
You whimper in want past your gag, the combination of the tight bondage and the potent stimulation having <<if setup.checkItemTypeWorn("cage")>><<if $player.body_ref.penis>>your <<getWordMyPenis>> straining within its prison<<else>>you dripping through your belt<</if>><<else>><<if $player.body_ref.penis>>your <<getWordMyPenis>> stiffening in excitement<<else>>you drip down your leg<</if>><</if>>.<br>
<br>
Able to do little save stare up past your bound hands and feet towards the ceiling you start to space out, only to be brought back with a start when a weight settles onto you and leans back.<br>
<br>
"@@.generic_male1;Aaahh, very comfortable.@@" A <<if $options.fem>>woman's<<else>>male<</if>> voice states with relief as your chair-self tilts backwards, rocking slightly as <<he>> slides up to <<his>> desk.<br>
<br>
You hear <<him>> click and type away, occasionally talking on the phone as <<he>> goes about <<his>> work. Only rarely does the <<man>>, of whom all you can see is a bit of the back of <<his>> head, pay any heed to the bound <<if $fetish.sissy>>sissy<<else>>girl<</if>> under <<his>> rear until <<he>> takes a midmorning break. You moan as <<he>> leans back and turns your anal vibrator to full blast as <<if $options.fem>>she starts to masturbate, grinding<<else>><<he>> strokes <<his>> own cock, <<his>> testicles rubbing up<</if>> against your <<if !setup.checkItemTypeWorn("cage")>>crotch<<else>><<if setup.isCage()>>cage<<else>>chastity belt<</if>><</if>>.<br>
<br>
<<His>> brief "break" over <<he>> leaves you "on" and leans forward just as <<his>> intercom chimes.<br>
<br>
"@@.generic_female1;Sorry to interrupt, but <<=setup.getNpcName('npc_manager', 'other')>> is here insisting on seeing you.@@"<br>
<br>
Hearing the name of your <<=setup.getNpcName('npc_manager', 'title')>> has you immediately attentive, even as the powerful vibrations against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> makes it a challenge to focus.<br>
<br>
"@@.generic_male1;She wasn't on the schedule... thank her for the visit and send her in.@@"<br>
<br>
"@@.generic_female1;Right away, <<Sir>>.@@"<br>
<br>
The line goes silent and then you hear the door to the office swing open. Though you cannot see her you can imagine the glorious sight of your <<=setup.getNpcName('npc_manager', 'title')>> striding forth, even moreso when you hear her voice.<br>
<br>
[<<moveTo "event_work_move_6_bondage_3" "Continue." 60>>]
</div>/*#
#desc: move, bondage fetish scene rescued
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "An Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Good morning. Sorry to drop by unscheduled, but I believe you have something of mine.@@"<br>
<br>
<<if $scene.voluntary>>
"@@.generic_male1;Hmm, what would that be?@@"<br>
<br>
"@@.npc_manager;Well, you see, my secretary appears to have gotten herself into a bit of trouble overnight, culminating in her being, well, under you.@@"
<<else>>
"@@.generic_male1;Always glad to see you, but I can't think of what. You just moved offices, maybe you haven't finished unpacking it?@@"<br>
<br>
"@@.npc_manager;No, and that is the problem. You see, there was a bit of a... miscommunication with the movers and, well, rather than coming in this morning to unbox my sweet secretary she appears to have been installed well... under you...@@"
<</if>>
<br><br>
"@@.generic_male1;Wait... you're saying I have you to thank for this comfy pillow of <<if $fetish.sissy>>sissy<<else>>feminine<</if>> flesh? You know about my back issues and truly this is one of the most ergonomic <<if $fetish.sissy>>sissies<<else>>girls<</if>> I have ever enjoyed. I don't suppose you could let me have her... no, that wouldn't be right... how about just let me borrow her for the rest of the morning? I'll make it up to you later.@@"<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;My, my, one of your famous favours? She must be comfortable indeed... would you mind if I came around and checked how she was feeling? She has not really been trained in forniphilia and I would not want your chair giving out on you.@@"<br>
<br>
"@@.generic_male1;Of course, of course, but from where I sit she's just loving it!@@" <<He>> runs <<his>> finger along your thigh, coming away wet to show just how much you've leaked this morning.<br>
<br>
Appearing upside-down standing over you it is quite the odd perspective on <<=setup.getNpcName('npc_manager', 'formal')>>, though the combination of angle and the light from above has her appearing even more radiant than normal.<br>
<br>
"@@.npc_manager;Well, how are you holding up? Willing to sit it out for another couple hours? Blink twice for yes, once for no.@@"<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_bondage_4_accept_1" "Blink twice in assent." _timeToLunch>>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Her slightest desire is your dearest wish. How could you deny her request?@@]
<<else>>
[<<moveTo "event_work_move_6_bondage_4_reject" "Blink once and shake your head to request release." 60>>]
<</if>>
<<else>>
"@@.npc_manager;My, my, one of your famous favours? She must be comfortable indeed... I suppose I could do without for a couple hours longer, and she could certainly use the practice at being more... supportive and docile. Have her back to my office by the afternoon?@@"<br>
<br>
You silently scream, remembering all the little — and not so little — things you've done wrong that must have led <<=setup.getNpcName('npc_manager', 'formal')>> to be so cross with you. Hearing your gag-muffled moans results in the <<man>> spreading <<his>> legs to slap you right on the bottom.<br>
<br>
"@@.generic_male1;Quiet, your betters are talking.@@" <<He>> shifts slightly in the chair, physically and metaphorically grinding you down before resuming <<his>> conversation. "@@.generic_male1;That sounds like a fair deal, I'll send her up when I leave for lunch.@@"<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_bondage_4_forced_1" "Continue your shift..." _timeToLunch>>]
<</if>>
</div>/*#
#desc: move, bondage fetish scene, agree to continue serving as a human chair
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.bondage = 2>>
<<setThreshold 'bondage' 'machine_bondage' 'chair_bondage'>>
<<set _bondage = setup.getTotalValue("bondage")>>
<<applyExperience 'bondage' _bondage 'skip' $SEEN_STRANGER>>
<<applyExperience 'anal' 13 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "An Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Lovely, looks like she's ready to keep on trooping!@@" <<=setup.getNpcName('npc_manager', 'formal')>> blows you a kiss that leaves you blushing before walking out of sight.<br>
<br>
Things are silent until the office door closes leaving you alone with the <<man>> before <<he>> speaks again.<br>
<br>
"@@.generic_male1;Well, well, <<=ps(setup.getNpcName('npc_manager', 'other'))>> secretary... you know I've heard quite a bit about your... development, how you used to work at one of our subsidiaries... I wonder what your old coworkers would think if they could see you now!@@"<br>
<br>
<<He>> laughs and gives <<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>your armoured crotch a gently pat<<elseif $player.body_ref.balls>>your balls a "friendly" squeeze<<elseif $player.body_ref.penis>>your shaft a teasing stroke<<else>>your tight slit a gentle tease<</if>>. "@@.generic_male1;Maybe I should re-introduce the <<if $fetish.sissy>>sissy-<<else>>girl-<</if>>chair proposal for the tech department? Best monthly performer gets a special chair for the day, worst... gets to BE the chair!@@" <<He>> laughs some more before turning back to <<his>> work.<br>
<br>
Whether due to your relationship to <<=setup.getNpcName('npc_manager', 'formal')>> or something else the <<man>> seems to pay more attention to you for the remainder of the morning, your anal vibrator seldom silent and <<his>> hand frequently teasing your bare skin or idly <<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>rubbing your armoured crotch<<elseif $player.body_ref.balls>>groping your balls<<elseif $player.body_ref.penis>>giving you the odd stroke<<else>>fingering you<</if>>.<br>
<br>
Standing for the first time <<he>> gives your thighs a gentle pat. "@@.generic_male1;Ah, well, I am going to miss you, but a deal's a deal. I'm off to lunch, I'll send my secretary in to get you released and everything.@@"<br>
<br>
[<<moveTo "event_work_move_6_bondage_4_accept_2" "Wait." 900>>]<br>
</div>/*#
#desc: move, bondage fetish scene, bonus reward for staying
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'vibrating_plug_large' true>>
<<deleteItem 'vibrating_plug_large'>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<set $scene.fixMakeup = $player.makeup.template != "" && $player.makeup.messed > 25>>
<<if $scene.fixMakeup>>
<<set $player.makeup.messed = 5>>
<</if>>
<</if>>
<<set $player.location = "An Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
You hear <<him>> walk away and open the door followed by the sharp click of steep heels as <<his>> secretary walks around. She stands over you, your upward-gazing perspective giving you a clear look up her skirt to view her bulging panties, fabric straining around a cage and to hold in a sizable plug.<br>
<br>
"@@.generic_female1;Sorry to hear about the mix-up, though thanks for sticking it out — if it hadn't been you I daresay <<he>> would have been sitting on me the rest of the morning and that sort of thing always puts me behind on my normal duties!@@"<br>
<br>
"@@.generic_female1;Hmm, actually, I think we have juuuussst enough time for me to give you a PROPER thanks.@@"<br>
<br>
Spinning your chair one-eighty she brings your exposed lower parts around to where she is, grasping the base of your plug to wiggle it around and turn the vibrations up to max, the stimulation pulsing through your over-sensitive <<if $player.body_ref.penis>>prostate<<else>>bum<</if>>.<br>
<br>
Her tongue slides <<if !setup.checkItemTypeWorn("cage")>>between your legs, teasing and taunting<<else>><<if setup.isCage() && $player.body_ref.penis>>between the "bars" of your cage<<else>>along the edges of your belt<</if>> as she licks and kisses every exposed millimetre of flesh to have you <<if $player.body_ref.penis>>straining within<<else>>leaking past<</if>> your prison<</if>>, her hand below rocking the plug in your rear bringing you closer and closer...<br>
<br>
You cry out into your gag as you
<<if $player.body_ref.penis>>
explode with orgasm. Hungrily she <<if $player.body_ref.cumProduction > 0>>gulps down every drop,<<else>>slurps until you stop trembling,<</if>> suckling on your <<if $fetish.sissy>>sissy <</if>>clit and massaging <<if $player.body_ref.balls>>your balls<<else>>you<</if>> until they have you completely drained.
<<else>>
gush your climax... as she eagerly works to guzzle every drop.
<</if>>
<br><br>
"@@.generic_female1;Mmmm, you're even tastier than I had hoped!@@"<br>
<br>
As you try to recover from the powerful orgasm, she swaps your vibrator for the plug you wore for the move, unbinding your limbs and guiding your feet back to the floor before removing your remaining straps and helping you up.<br>
<br>
Leaning on the desk as you try to work the stiffness out of your limbs you find your clothing in a neat pile. She helps you change before removing your gag and giving you a gentle kiss.<br>
<br>
<<if $scene.fixMakeup>>
Looking at your face she frowns slightly before producing a makeup kit and giving you a quick touch-up. She winks and you silently sigh with relief that you won't be getting in trouble with your <<=setup.getNpcName("npc_manager","title")>> for not meeting her high "representative position" standards.<br>
<br>
<</if>>
<<if $scene.addCollar>>
A loose collar is wrapped around your neck complete with a short leash and she turns to lead you away.
<<else>>
A leash is clipped to the front of your collar and she turns to lead you away.
<</if>>
<br><br>
A bit slow, you enjoy the view from behind of her bouncing skirts as she leads you out of the office and towards the elevator.<br>
<br>
<<if $scene.voluntary>>
<<if $npc_manager.flags.evil == 2 && !State.hasPlayed("event_rival_bondage_1")>>
<<printThought 'Hmm... this might be an opportunity to subtly undermine <<=setup.getNpcName("npc_rival","formal")>>...'>><br>
<br>
[<<moveTo "event_rival_bondage_1" 'Ask what she thinks of <<=setup.getNpcName("npc_rival","formal")>>?' 300>>]
<</if>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<</if>>
</div>/*#
#desc: move, bondage fetish scene, request to end shift early
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.move_fetish.bondage < 1>>
<<set $player.flags.move_fetish.bondage = 1>>
<</if>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'vibrating_plug_large' true>>
<<deleteItem 'vibrating_plug_large'>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "An Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
The <<man>> expresses disappointment, but does not object as <<=setup.getNpcName('npc_manager', 'formal')>> announces her decision. You let out a sigh as <<his>> weight lifts off your body and <<he>> removes your plug.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> begins to unbind you and the <<man>> calls for <<his>> secretary to deliver your things.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> gently massages a bit of life back into your limbs before helping you back to your feet, handing you your attire as you watch the secretary do the reverse — stripping before being bound in the chair in your place.<br>
<br>
You share a glance with the other <<if $fetish.sissy>>sissy<<else>>girl<</if>> — confirmed by her caged member becoming visible once her poofy skirts are removed, but she just looks a bit resigned, rolling her eyes as if to communicate that it's just another day.<br>
<br>
You feel a bit bad that she's liable to fall behind on her other duties, but you're too excited to be finally back with <<=setup.getNpcName('npc_manager', 'formal')>>
<<if $scene.addCollar>>
as she wraps a loose collar around your neck and grabs you by the leash to dwell on it much.
<<else>>
as she clips a leash to the front of your collar to dwell on it much.
<</if>>
<br><br>
Though she removes your gag you feel no urge to speak, merely nodding and dropping into a curtsy as the <<man>> thanks your <<=setup.getNpcName('npc_manager', 'title')>> for the use of your body and bids you farewell.<br>
<br>
Walking a step behind <<=setup.getNpcName('npc_manager', 'formal')>> you follow the leash as she heads out of the office and up the hall towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<</if>>
</div>/*#
#desc: move, bondage fetish scene forced to continue to work as human chair
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.bondage = 2>>
<<set _bondage = setup.getTotalValue("bondage")>>
<<applyExperience 'bondage' _bondage 'skip' $SEEN_STRANGER>>
<<applyExperience 'anal' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 13 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "An Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
The <<man>> waits until <<=setup.getNpcName('npc_manager', 'formal')>> has left before speaking, reaching between <<his>> legs to painfully squeeze your testicles.<br>
<br>
"@@.generic_male1;Hmm, so for as comfortable as you are it would seem that you have been QUITE the naughty <<if $fetish.sissy>>sissy<<else>>girl<</if>>. Ah, but it is too bad that I don't have more time to whip you into shape, still, I shall do what I can to return you as a more... obedient toy.@@"<br>
<br>
Reaching further down <<he>> fiddles with your plug, the vibrations switching to a pulsing pattern mixed with painful shocks that have you gasping and twitching in your bonds.<br>
<br>
Whistling to <<him>>self, <<he>> returns to <<his>> work, though <<he>> takes frequent breaks to slap your ass or torture your testicles, never letting you properly "relax" for the remainder of the morning.
<br>
Tears staining your cheeks as you endure your painful and humiliating turn as <<his>> chair. Time drags on but, eventually, you let out a soft sigh of relief when <<his>> weight finally lifts off of you. Walking away <<he>> doesn't even acknowledge your presence as <<he>> departs the office.<br>
<br>
[<<moveTo "event_work_move_6_bondage_4_forced_2" "Continue." 300>>]
</div>/*#
#desc: move, bondage fetish scene released after forced to continue to work as human chair
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 30>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'vibrating_plug_large' true>>
<<deleteItem 'vibrating_plug_large'>>
<</if>>
<<set $player.location = "An Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
Alone you start to panic, the plug is still buzzing and shocking away in your rear but... weren't you supposed to be released? A few moments later you find yourself looking up under the wide skirt of <<his>> secretary, her surprisingly large, but securely caged, member straining against her skimpy panties, the plug in her ass looking equally eager to escape the thin thong.<br>
<br>
"@@.generic_female1;I suppose I should thank you for... finishing off your shift. Otherwise it would be me in there, and <<he>> never bothers to let me out for lunch.@@" She pauses, her fingers gently stroking your leg. "@@.generic_female1;Hmm, I suppose there's a bit of extra time...@@"<br>
<br>
The chair spins around to bring your lower half in front of her. With one hand wrapped over your chastity device her other fiddles with your plug to disable the shocks and turn it up to full stimulating pleasure.<br>
<br>
Her tongue slides <<if !setup.checkItemTypeWorn("cage")>>between your legs, teasing and taunting<<else>><<if setup.isCage() && $player.body_ref.penis>>between the "bars" of your cage<<else>>along the edges of your belt<</if>> as she licks and kisses every exposed millimetre of flesh to have you <<if $player.body_ref.penis>>straining within<<else>>leaking past<</if>> your prison<</if>>, her hand below rocking the plug in your rear bringing you closer and closer...<br>
<br>
You let out a howl of shock as she suddenly pulls the plug out of your ass, ceasing all stimulation to leave you trembling and whimpering.<br>
<br>
"@@.generic_female1;Sorry, hon. I can't risk getting in trouble for giving you relief you haven't earned. Besides, what sort of <<if $fetish.sissy>>sissy <</if>>sister would I be if I rewarded you for bad behaviour?@@" She gives <<if $player.body_ref.balls>>your swelled testicles<<else>>your prison<</if>> a gentle pat as you whine in frustration. "@@.generic_female1;Anyway, I need to get you back to your owner, so funtime's over!@@"<br>
<br>
Swiftly she unstraps you from your chair-bound position, helping you to your feet and then handing you your clothes.<br>
<br>
<<if $scene.addCollar>>
Once dressed a loose collar is wrapped around your throat and a leash attached.
<<else>>
Once dressed a leash is clipped to the front of your collar.
<</if>>
<br><br>
Still a bit stiff, and very frustrated, you enjoy the view from behind of her bouncing skirts as she leads you out of the office and towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<</if>>
</div>/*#
#desc: move, cum fetish scene intro
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem "headphones_pink" true>>
<<deleteItem "headphones_pink">>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<if $fetish.sissy>>
<<set $scene.phrase = "I want to be a good SISSI secretary. Good sissies are rewarded, bad sissies are punished.">>
<<else>>
<<set $scene.phrase = "I want to be a good secretary. Good girls are rewarded, bad girls are punished.">>
<</if>>
<</if>>
<<set $player.location = "A Storage Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage_room.png">>
<div id="invframe" class="scrolltext">
Blinking rapidly as your eyes attempt to adjust to the bright light you try to focus past the continually droning <<if $fetish.sissy>>sissy <</if>>instructions broadcast through your headphones, the hours spent listening having progressed to the point where you have not just memorised them, but they have effectively become your thoughts.<br>
<br>
<<printThought $scene.phrase>><br>
<br>
As things come into focus your find yourself staring at a bored mover, she seems to be checking you against a tablet before removing your headphones and speaking to you.<br>
<br>
"@@.generic_female1;So, it says you're a well-trained slave — if I let you out for a bit do you promise to remain behaved and lend me a hand with something?@@"<br>
<br>
Stiff from your many hours of bondage you nod as best your restraints allow and she smiles. "@@.generic_female1;Great! Just gimme a moment.@@"<br>
<br>
She ducks out of sight and you feel her unhook your plug and crotch, though she leaves the hollow plug still in your ass. Popping back up she removes your gag and you try to work the kinks out of your stiff, aching jaw as she slides out the shelf piece holding your neck and wrists.<br>
<br>
Your hands falling limply to your sides you try to shake some life into them as she finishes freeing you the rest of the way.<br>
<br>
<<if $scene.addCollar>>
A loose collar is wrapped around your neck complete with a short leash before she gently guides you to step out of the crate.
<<else>>
She clips a leash to the front of your collar and then gently guides you to step out of the crate.
<</if>>
<br><br>
Looking around, you find yourself in a large storage room, a dozen or more crates similar to your own in rows. Almost immediately your gaze lights on the one other open crate — a fellow <<if $fetish.sissy>>sissy<<else>>girl<</if>> secured in bondage, their legs stained with cum that has leaked from their caged <<if $fetish.sissy>>sissy <</if>>clitty, a look of mind-fucked ahegao lust on their face.<br>
<br>
"@@.generic_female1;So you see the issue — this slut seems to have made a real mess of themself, if you could take care of cleaning it up, that would be great.@@"<br>
<br>
You look around and ask where the cleaning supplies only for the mover to roll her eyes. "@@.generic_female1;Come on, use your brain, or your tongue, rather, if I had supplies do you think I'd need your help? No, go lick her clean while I check the rest of the shipment.@@"<br>
<br>
Attaching your leash to the opened crate you are almost overpowered by the heavy scent of <<if $fetish.sissy>>sissy<<else>>girl<</if>>-cum as the mover leaves you to "work." <br>
<br>
[<<moveTo "event_work_move_6_cum_2" "Start licking, <<if $fetish.sissy>>sissy<<else>>girl<</if>>." 7200>>]
</div>/*#
#desc: move, cum fetish scene, lick cum off fellow boxed sissies
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 15 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "A Storage Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage_room.png">>
<div id="invframe" class="scrolltext">
You set to work with tongue and lips, cleaning first the <<if $fetish.sissy>>sissy's<<else>>girl's<</if>> thighs before moving inward towards her caged clitty. Unable to move or see you due to her restrained position she moans and gasps through her gag in excitement, occasionally leaking further <<if $fetish.sissy>>sissy<</if>>juices out of her cage to set your task back further.<br>
<br>
Fortunately for you her cum is delicious and you eagerly lick up every drop only for the mover to return and transfer you to another <<if $fetish.sissy>>sissy<<else>>girl<</if>> who is, if anything, even more of a mess.<br>
<br>
"@@.generic_female1;Looks like someone screwed up the settings and these sluts were enjoying a full night of constant prostate stimulation. I hesitate to wonder what sort of state they're in after so many hours of helpless overload, but that isn't my problem. What is my problem, well, your problem, is getting them clean! So chop-chop, get back to licking!@@"<br>
<br>
You're on your third cleaning job when you hear the door to the room open. Focusing on your work it isn't until you hear your <<=ps(setup.getNpcName('npc_manager', 'title'))>> voice that you look up in surprise.<br>
<br>
[<<moveTo "event_work_move_6_cum_3" 'Look towards your <<=setup.getNpcName("npc_manager", "title")>>.' 60>>]
</div>/*#
#desc: move, cum fetish scene rescued
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "A Storage Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage_room.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.voluntary>>
<<if $scene.experienced>>
"@@.npc_manager;You just cannot stop going on little overnight adventures, can you? If I was not so amused I might be upset at your recklessness, and the fact you have missed half a morning's worth of work!@@"
<<else>>
"@@.npc_manager;Well, well, looks like SOMEONE got in a spot of trouble. I guess you had so much fun during the move you decided to try and repeat the experience?@@" She shakes her head in bemusement. "@@.npc_manager;You know logic would state nobody would be foolish enough to lock themselves away in one of those crates but, well... I suppose it is best not to underestimate a horny <<if $fetish.sissy>>sissy<<else>>slut<</if>>, hmm?@@"
<</if>>
<br><br>
A bit nervous the other woman interjects. "@@.generic_female1;So I guess this was a bit of a mistake but... could I borrow your <<if $fetish.sissy>>sissy<<else>>girl<</if>> for a few hours more to help with the cleaning? I promise I'll make it up to you... somehow.@@"
<<else>>
Though she graces you with a slight wave of acknowledgement <<=setup.getNpcName('npc_manager', 'formal')>> looks very annoyed as she interrogate the mover.<br>
<br>
"@@.npc_manager_dom;And why is my secretary HERE licking cum instead of in my office doing her job? I have spent all morning searching for her!@@"<br>
<br>
Obviously intimidated by <<=ps(setup.getNpcName('npc_manager', 'formal'))>> intense personality the poor worker nervously manages to find her voice, brandishing her tablet like a shield as she responds.<br>
<br>
"@@.generic_female1;It's not my fault! The move order said to bring her here for storage and just do a morning inspection! I'm sorry I took advantage but, well... without her help there's no way I'll get all these <<if $fetish.sissy>>sissies<<else>>girls<</if>> cleaned up and presentable!@@"<br>
<br>
Snatching the tablet <<=setup.getNpcName('npc_manager', 'formal')>> flips through, her eyes narrowing as she reads before slowly passing the tablet back. "@@.npc_manager;I see... well, it does seem that the authorizations are in order, well, overrides I should say.@@"<br>
<br>
"@@.generic_female1;Please, ma'am. I know this was a mistake but... could I borrow your <<if $fetish.sissy>>sissy<<else>>girl<</if>> for a few hours more to help with the cleaning? I promise I'll make it up to you... somehow.@@"
<</if>>
<br><br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<=setup.getNpcName('npc_manager', 'formal')>> thinks for a moment before walking over to you.<br>
<br>
"@@.npc_manager;Well, what do you say<<if $fetish.sissy>>, sissy<</if>>? Care to spend a few more hours licking up cum to help your new... friend out?@@"<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_cum_4_accept" "Nod obediently." _timeToLunch>>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Your <<=ps(setup.getNpcName('npc_manager', 'title'))>> slightest desire is your dearest wish. If you can get her a favour well... surely you can do your part.@@]
<<else>>
[<<moveTo "event_work_move_6_cum_4_reject" "Shake your head." 60>>]
<</if>>
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> thinks for a moment, glancing at you only briefly before nodding. "@@.npc_manager;Yes, I suppose I can do without her for the rest of the morning. You may continue to make use of her — and do not hesitate to discipline her if she gets out of line, she has been a bit... difficult of late and a bit of domestic service should be good for her.@@"<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<printThought "Good thing I love cum so much...">>
<<else>>
<<printThought "If I keep this up... am I going to get addicted to cum?">>
<</if>>
<br><br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_cum_4_forced" "Continue your shift..." _timeToLunch>>]
<</if>>
</div>/*#
#desc: move, cum fetish scene, agree to continue to clean up cum
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.cum = 2>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<setThreshold 'cum' 'secretary_cum' 'move_cum'>>
<<set _cum = setup.getTotalValue("cum")>>
<<applyExperience 'cum' _cum 'skip' $SEEN_STRANGER>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<set $scene.fixMakeup = $player.makeup.template != "" && $player.makeup.messed > 25>>
<<if $scene.fixMakeup>>
<<set $player.makeup.messed = 5>>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "A Storage Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage_room.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles at you with pride. "@@.npc_manager;Well get back to work! You're not even halfway through licking up all these naughty <<if $fetish.sissy>>sissies<<else>>girls<</if>>!@@"<br>
<br>
Turning back to your cleaning you resume licking enthusiastically, "rewarded" with a fresh burst of <<if $fetish.sissy>>sissy <</if>>cum from your subject who leaks right out of her cage and into your mouth.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> departing your supervisor takes a bit of a more... active hand in things, somehow locating a remote control for your plug to buzz and shock you to "encourage" you to hasten your cleaning efforts.<br>
<br>
Breathing hard, your tongue hanging limp and exhausted, your breath and belly heavy with cum, you finally finish cleaning the last of your restrained <<if $fetish.sissy>>sissy <</if>>brethren.<br>
<br>
Doing a final inspection your supervisor nods in approval.<br>
<br>
"@@.generic_female1;Not bad, and you really did save my bacon, no way would I have gotten them this clean and finished up everything else. Guess it's time to take you back to your owner.@@"<br>
<br>
<<if $scene.fixMakeup>>
As you stand she produces a makeup kit and beckons you closer. "@@.generic_female1;Shan't be sending you back so unkempt.@@" She explains as she takes a minute to touch up your makeup before
<<else>>
Rising to your feet, you wait as
<</if>>
she gently removes your plug before you follow obediently behind as she leads you off by your leash.<br>
<br>
<<if $scene.voluntary>>
<<if $npc_manager.flags.evil == 2 && !State.hasPlayed("event_rival_cum_1") && !State.hasPlayed('event_rival_destruction_5')>>
[<<moveTo "event_rival_cum_1" 'Sound her out about things since <<=setup.getNpcName("npc_rival", "formal")>> took over.' 300>>]<br>
<</if>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<</if>>
</div>/*#
#desc: move, cum fetish scene, request to end shift early
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.move_fetish.cum < 1>>
<<set $player.flags.move_fetish.cum = 1>>
<</if>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "A Storage Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage_room.png">>
<div id="invframe" class="scrolltext">
Your "supervisor" starts to beg for you to stay, but your <<=setup.getNpcName('npc_manager', 'title')>> silences her with a glance.<br>
<br>
<<if $scene.voluntary>>
"@@.npc_manager;I do apologise but, well, she is my <<if $fetish.sissy>>SISSI<<else>>secretary<</if>> and she is already behind on her normal work.@@"
<<else>>
"@@.npc_manager;I know it will set you behind but, well, my <<if $fetish.sissy>>SISSI<<else>>secretary<</if>> here has had a VERY challenging last day so if she decides she needs a rest I am afraid you shall have to do without.@@"
<</if>>
<br><br>
You feel a little sorry for your temporary supervisor — she really didn't do anything wrong, but at the same time... you are feeling quite tuckered out, barely staggering to your feet as your <<=setup.getNpcName('npc_manager', 'title')>> returns the leash and leads the way as you follow softly behind.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<</if>>
</div>/*#
#desc: move, cum fetish scene forced to continue to clean up cum
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.cum = 2>>
<<set _cum = setup.getTotalValue("cum")>>
<<applyExperience 'cum' _cum 'skip' $SEEN_STRANGER>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<</if>>
<<set $player.location = "A Storage Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage_room.png">>
<div id="invframe" class="scrolltext">
Shamed at the prior failures that have led to you not even getting a choice in your fate you catch a final glance from your <<=setup.getNpcName('npc_manager', 'title')>>. "@@.npc_manager;Well? get back to work, or are you going to fail me again?@@"<br>
<br>
You wince, quickly turning back to licking as you listen to the staccato click of <<=setup.getNpcName('npc_manager', 'formal')>> heels as she walks away.<br>
<br>
Greeted with a fresh burst of <<if $fetish.sissy>>sissy<<else>>girly<</if>> cum leaking out of your subjects cage you manage to finish things up and move on to the next crate. Seemingly disappointed in your pace your "supervisor" locates a remote, "treating" your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> to shocking jolts and buzzing stimulation to encourage your efforts throughout the rest of the morning.<br>
<br>
"@@.generic_female1;Whelp, looks like you're done, thanks for the help, but now it's time to take you back to your owner.@@" Dragging you to your feet by your collar she leads the way out of the room and off towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<</if>>
</div>/*#
#desc: delayed on way to work on day of surprise office move
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks.task_uniform_upgrade.finished && setup.daysToDate($now,setup.getTaskDueDate('task_uniform_upgrade')) == 0>>
<<removeEvent 'corporate_move_event'>>
<<set _nextDate = setup.setNextDate($now, 1, 6, 0)>>
<<addEvent 'corporate_move_event' _nextDate>>
<<initRoom>>
<<moveTo "company_lobby">>
<<else>>
<<deleteTask 'manager_morning_inspection_task'>>
<<set $now = setup.setNextDate($now, 0, 8, 20)>>
<<if $events.hasOwnProperty('event_admin_morning_workout_call')>>
<<removeEvent 'event_admin_morning_workout_call'>>
<</if>>
<<if $events.hasOwnProperty('event_admin_morning_visit')>>
<<removeEvent 'event_admin_morning_visit'>>
<</if>>
<<if $events.hasOwnProperty('prostitution_final_invite')>>
<<set _nextDate = setup.getNextDayOfWeek($now, 2, 18, 0)>>
<<set $events.prostitution_final_invite.trigger.date = _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "Stuck in Traffic">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/street.png">>
<div id="invframe" class="scrolltext">
You head to work like any other day only for things to start going wrong. First you have to run back to your flat for something you forgot, then you get stuck in the elevator coming back down. As if that wasn't enough, there's a road closure for some sort of event that sends you a long detour and then there's an accident on the detour that puts you even further behind schedule!<br>
<br>
Your normal start of day comes and goes with you still trying to make it to the office though, strangely, you don't get a call from <<=setup.getNpcName('npc_manager', 'formal')>> asking where you are.<br>
<br>
<<printThought "Huh, maybe she got called into a meeting? I don't remember anything being on her schedule...">><br>
<br>
Almost half an hour late you finally make it to the elevator and mash the button for the
<<switch $npc_manager.stage>>
<<case 1 2 3>>
fifty-second
<<case 4 5>>
hundred and forty-seventh
<<default>>
ERROR: unexpected npc_manager.stage
<</switch>>
floor.<br>
<br>
[<<moveTo "event_work_move_1" "Hurry up to the office." 300>>]
</div>/*#
#desc: arrive at work to find manager in the middle of a move
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.cutscene.lockinventory = true>>
<<set $npc_manager.stagevalues[3].promodate = $now>>
<<set $npc_manager.stage = 4>>
<<if !$events.hasOwnProperty("manager_lunch_stage3") && !$events.hasOwnProperty("manager_lunch_stage2")>>
<<set _nextDate = setup.setNextDate($now, 1, 10, 0)>>
<<addEvent "manager_lunch_stage4" _nextDate>>
<</if>>
<<addWorkEvent 'training_first'>>
<<include "addTypingEvent">>
<<include "checkAdminTruth">>
<<include "checkTechnicianTruth">>
<<addWorkEvent 'volleyball_invite'>>
<<registerProgressionEvent>>
<<if $player.sec_style.clothing.female != "strict">>
<<addWorkEvent 'female_history'>>
<</if>>
<<include "addManagerPrivateTopics">>
<<include "checkSchoolReady">>
<<set $player.work.advance = 0>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('sissy_chokers')>>
<<addRandomEvent $randomEvents['elevator_home'] 'move_repeat'>>
<<addRandomEvent $randomEvents['elevator_home'] 'upper_collar_home'>>
<<if $npc_pr_sissy.stage == 2>>
<<addWorkEvent 'pr_sissy_product_demo'>>
<</if>>
<<addWorkEvent 'rival_first_meeting'>>
<</if>>
<<set $player.location = "<<if $fetish.sissy>>SISSI <</if>>Secretary Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Walking into the office you stop short in confusion. The office is almost entirely empty, <<=setup.getNpcName('npc_manager', 'formal')>> looking in your direction from where she has been talking with a <<man>> in a mover's jumpsuit.<br>
<br>
"@@.npc_manager;Ah, she's finally here, was worried I was going to have to leave you a note!@@"<br>
<br>
Confused you ask her what is going on. As you talk two movers shuffle out of the inner office with <<=ps(setup.getNpcName('npc_manager', 'formal'))>> massive desk on a hover trolley.<br>
<br>
"@@.npc_manager;I had hoped this would be later in the week, but <<=setup.getNpcName('npc_boss', 'formal')>> is wasting no time when it comes to shipping us up to the <<printNumber $player.work.upperFloorNumber>> floor.@@"<br>
<br>
Her tone is clearly annoyed.<br>
<br>
<<switch $player.flags.retreat.mission>>
<<case 0>>
<<printThought "If only I could have done something...">>
<<case 1>>
<<printThought "If only I could have succeeded in my mission...">>
<<case 2>>
<<printThought "I tried so hard, but <<=setup.getNpcName('npc_boss', 'formal')>> was too determined.">>
<<default>>
ERROR: unexpected player.flags.retreat.mission <<=$player.flags.retreat.mission>>
<</switch>>
<br><br>
"@@.pc;As the lady says,@@" what looks to be the fore<<man>> states. "@@.pc;We got everything from the inner office, you ready to finish packing so we can get this stuff moved?@@" <<He>> jerks <<his>> thumb in the direction of a large (taller than you are), narrow crate, which is the only thing left in the antechamber other than the three of you.<br>
<br>
<<printThought "Huh, I wonder what's in there? Such an odd, unwieldy shape, but not wide enough for her desk...">><br>
<br>
For a moment you think <<=setup.getNpcName('npc_manager', 'formal')>> is going to reprimand <<him>> for the interruption, but she merely adopts a fake smile as she replies.<br>
<br>
"@@.npc_manager;Of course, of course, I am sure you have a schedule to keep.@@"<br>
<br>
<<printThought "... and punctuality is one of the pillars of society.">><br>
<br>
"@@.npc_manager;<<=$player.first_name>>, please go with <<if $options.fem>>Ms.<<else>>Mr.<</if>> Molver.@@"<br>
<br>
You're confused and ask your <<=setup.getNpcName('npc_manager', 'title')>> why you aren't accompanying her?<br>
<br>
The mover busies <<him>>self with the large box as she explains, the combination of her words and what is inside the crate swiftly brings things into focus.<br>
<br>
[<<moveTo "event_work_move_2" "Continue." 60>>]
</div>/*#
#desc: manager explains that you will be bound and shipped for the move
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<if $fetish.sissy>>SISSI <</if>>Secretary Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;I had really hoped to explain these things to you first thing in the morning but, well, you were late so it will have to be like this. Up above the hundredth floor things work a bit different. Down here you are merely my <<if $fetish.sissy>>SISSI <</if>>secretary. Up there you are an object, a device meant to aid me in performing my duties.@@"<br>
<br>
"@@.npc_manager;Being that your classification is more akin to a stapler, well... union rules say that all of my "property" must be moved by licensed relocation specialists thus... this.@@"<br>
<br>
You gawk at the interior of the crate, multiple levels of padded "shelves" that would restrain a person-shaped object at the lower legs, waist and neck, their wrists fitting into padded holes on either side of their shoulders.<br>
<br>
Your jaw drops and you start to babble only for <<=setup.getNpcName('npc_manager', 'formal')>> to take the opportunity to pull a gag into your mouth and buckle it tight. Though large, cumbersome and completely covering your mouth the centre is hollow, allowing you to breathe without difficulty.<br>
<br>
"@@.npc_manager;For safety — we would not want you biting your tongue if the crate went over a bump or something. Now hop in before we fall behind schedule.@@"<br>
<br>
"@@.npc_manager;You may start by removing your clothing,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states. "@@.npc_manager;We would not wish it to get dirty in the move.@@"<br>
<br>
You're in a bit of a daze, but it isn't like you aren't well accustomed to stripping at the office, so you soon shed everything, shivering slightly in the air conditioning.<br>
<br>
[<<moveTo "event_work_move_3" "Remove your clothes and step into the crate to be restrained." 60 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_work_move_3" "Put your foot down, you aren't some object to be crated up and shipped around!" 60 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: crated up for the move
#status: FINISHED 0.7.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<<if $scene.obey>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<applyExperience 'submission' 15 'terrible' $SEEN_STRANGER>>
<<else>>
<<decrementEmotion 'anger' 'npc_manager' 3>>
<<applyExperience 'bdsm' 13 'very' $SEEN_STRANGER>>
<</if>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "<<if $fetish.sissy>>SISSI <</if>>Secretary Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You step up into the crate and turn around, leaning back into the half restraints as <<if $options.fem>>Ms.<<else>>Mr.<</if>> Molver grabs the first of the front portion of the shelves that will render you immobile and secure.<br>
<br>
The <<man>> works quickly and efficiently, <<=setup.getNpcName('npc_manager', 'formal')>> smiles proudly at you as you stand obediently and are swiftly restrained.
<<else>>
You must look quite the sight, hands on your hips in defiance, glaring with annoyance even as you are unable to speak, mouth wide in a comical "O" shape thanks to the large gag.<br>
<br>
Your rebellion is as brief as it is ineffective as you feel a sharp poke before electricity courses through your body. Twitching for a few moments you fall only to be caught by <<if $options.fem>>Ms.<<else>>Mr.<</if>> Molver over one shoulder as <<he>> stows the stun device back on <<his>> belt.<br>
<br>
By the time the paralysis of the stun begins to fade you are utterly helpless, the restraining shelves have been slotted into place, leaving you standing supported and restrained. <<=setup.getNpcName('npc_manager', 'formal')>> looks at you with disappointed disapproval, even as the mover has taken things in stride and spoken not a word.
<</if>>
<br><br>
You wonder if the crate was constructed to your precise specifications as you find the padded restraints snug and immobile, but not uncomfortable.<br>
<br>
"@@.generic_male1;Sign here, and... here@@" the mover requests of <<=setup.getNpcName('npc_manager', 'formal')>>. "@@.generic_male1;Great, you want to hook her up, or shall I?@@"<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles as she approaches. "@@.npc_manager;Oh, I think I would quite enjoy finishing packing her up...@@"<br>
<br>
Clearly disinterested the mover just shrugs, disappearing from your line of sight.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> leans in to give you a gentle kiss, caressing your face with one hand as she smiles with pride.<br>
<br>
"@@.npc_manager;You excited for your journey? Mmmm, I know it is all a bit... intimidating, but you just trust <<=setup.getNpcName('npc_manager', 'formal')>> and everything will turn out alright.@@"<br>
<br>
Though you never had a choice in the matter, you smile around your gag and nod that you're ready.<br>
<br>
"@@.npc_manager;Lovely, I will have you prepared in a jiffy.@@" With a final grin she ducks out of sight, the shelf that makes up your neck and wrist restraints blocking you from seeing what else she might be up to "down there."
<<else>>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> glance reminds you of all the times you have failed her and you look away in shame as she shakes her head.<br>
<br>
"@@.npc_manager;No, this move has me running late as it is, deal with her and make sure she, and the rest of my things, are setup in my new office by tomorrow morning — I do not want to lose any more time to this... reorganisation.@@"<br>
<br>
"@@.generic_male1;Of course, <<=setup.getNpcName('npc_manager', 'other')>>@@" <<He>> replies. <<=setup.getNpcName('npc_manager', 'formal')>> turns away and the <<man>> approaches you.<br>
<br>
On the one hand you feel like you ought to be scared, helpless, abandoned... and you are. The mover, on the other hand... if anything, <<he>> looks... bored? <<He>> ducks down and you lose sight of <<him>> thanks to the wide shelf that restrains your neck and wrists.
<</if>>
<br><br>
[<<moveTo "event_work_move_4" "Finish getting packaged." 60>>]
</div>/*#
#desc: crated up for the move
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<set $scene.addChastity = !setup.checkItemTypeWorn("cage") && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
<<if $scene.addChastity>>
<<if $fetish.chastity_penis && $player.body_ref.penis && $fetish.chastity_vag && $player.body_ref.vagina>>
<<set $scene.newCage = "chastity_belt_adv_ultra">>
<<elseif $fetish.chastity_penis && $player.body_ref.penis>>
<<set $scene.newCage = "c_cage_advanced">>
<<elseif $fetish.chastity_vag && $player.body_ref.vagina>>
<<set $scene.newCage = "chastity_belt_adv">>
<<else>>
ERROR: unexpected!
<</if>>
<<addItem $scene.newCage>>
<<wearItem $scene.newCage true>>
<<manipulateItem $scene.newCage 'lock' true>>
<<set _keyId = setup.getItemObj($scene.newCage).lockable[1]>>
<<if setup.checkItemOwned(_keyId)>>
<<deleteItem _keyId>>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<<include "setLastSeenCage">>
<</if>>
<<addItem "hollow_plug">>
<<wearItem "hollow_plug" true>>
<<addItem "headphones_pink">>
<<wearItem "headphones_pink" true>>
<<applyExperience 'bdsm' 13 'very' $SEEN_STRANGER>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $SEEN_STRANGER>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'very' $SEEN_STRANGER>>
<<if $fetish.cum>>
<<applyExperience 'cum' 12 'very' $SEEN_STRANGER>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_40'
8
'event_psychiatrist_session_first_move_1'
false
>>
<</if>>
<<set $player.location = "<<if $fetish.sissy>>SISSI <</if>>Secretary Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.affection > $npc_manager.anger>>
<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
You feel <<=setup.getNpcName('npc_manager', 'formal')>> grasp the <<=setup.getItemName($scene.plug)>> that is presently occupying your rear. She wiggles in gently, sending waves of pleasure through your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> before carefully sliding it out of your ass. You do not go empty for more than a moment, however, as a fresh plug takes its place.<br>
<br>
<</if>>
Well lubricated the moderately sized plug slides into you with ease, its base securely pressing against the outside of your sphincter, and then locked even more securely in place as its interior portion swells until you feel quite full.<br>
<br>
<<if $scene.addChastity>>
"@@.npc_manager;Out of chastity at work... that shall not do at all!@@" She states. You hold your breath as she rises to her feet and disappears back into her office. You catch a fleeting glimpse of a very high-tech looking chastity device before disappears back between your legs, your new prison soon locked in place. "@@.npc_manager;There, properly secured for your journey.@@" She states
<<else>>
Moving up front she takes a few moments to <<if !setup.checkItemTypeWorn("cage")>>gently stroke between your legs<<else>><<if setup.isCage() && $player.body_ref.penis>>tease your <<getWordMyPenis>><<else>>stroke your chastity belt<</if>><</if>> with her fingers
<</if>>
before sliding something tight and rubbery over your crotch.<br>
<br>
Standing up, she rises into your line of sight, still smiling as she reaches behind your head to grab a tube that is then attached to the front of your gag.<br>
<br>
"@@.npc_manager;There we go, all hooked up. If you could give a little suck so I can make sure everything is in order?@@"<br>
<br>
Your eyes roll back in pleasure as you obediently slurp on the phallic gag filling your mouth. As you do the plug in your ass vibrates gently, and you moan with lust as you are rewarded with a <<if $fetish.cum>><<if setup.getTotalValue("cum") >= 10>>delicious <<elseif setup.getTotalValue("cum") < 5>>disgusting <</if>>mouthful of <<if $options.fem>><<if $fetish.futanari>>futa <<else>>girl<</if>><</if>>cum<<else>>mouthful of neutral tasting slurry<</if>>.<br>
<br>
"@@.npc_manager;Lovely! Well, it looks like everything is in order, I will be seeing you in the morning. And, to keep you occupied...@@"<br>
<br>
<<printThought "Morning? How can it take a whole day to just move a few floors?">><br>
<br>
Reacting to your look of exasperation she smiles. "@@.npc_manager;Oh, do not worry, I have something special so you do not get... bored.@@"<br>
<br>
She reaches past your face to place a pair of headphones over your ears. The pads cut off all outside sound and replacing it with a soft, feminine voice.
<<else>>
<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
You gasp as <<he>> removes the <<=setup.getItemName($scene.plug)>> from your rear.<br>
<br>
<</if>>
You feel gloved hands spreading and lubricating your hole before finally sliding a moderately thick plug into you... a plug that swells larger until it is securely "locked" in place.<br>
<br>
<<if $scene.addChastity>>
There is a brief commotion as <<he>> moves up front. Apparently the paperwork indicated that you would be in chastity before <<his>> arrived, and <<he>> did not bring "suitable equipment" to address the situation. <<=setup.getNpcName('npc_manager', 'formal')>> comes to the rescue, producing a high-tech chastity device from her inner office that the <<man>> secures before attaching
<<else>>
<<He>> attaches
<</if>>
another device over your <<if $player.body_ref.penis>><<getWordMyPenis>><<else>>crotch<</if>> and you grow suddenly worried — how long are you expected to be in this box?<br>
<br>
You get another hint that the mention of "tomorrow morning" means you're liable to be boxed up for almost 24 hours as the mover attaches a hose to the front of your gag.<br>
<br>
"@@.generic_male1;Suck.@@" <<He>> orders after fiddling a bit with things. You hesitate and suddenly there a powerful shock jolts through your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> as you shudder in your bonds. "@@.generic_male1;I said. Suck.@@" <<He>> repeats, <<his>> tone the same work-a-day boredom you might expect from an underpaid clerk telling you to wait for your turn at the DMV.<br>
<br>
You suck and are swiftly rewarded with a <<if $fetish.cum>><<if setup.getTotalValue("cum") >= 10>>delicious <<elseif setup.getTotalValue("cum") < 5>>disgusting <</if>>mouthful of <<if $options.fem>><<if $fetish.futanari>>futa <<else>>girl<</if>><</if>>cum<<else>>mouthful of a neutral-tasting slurry<</if>>.<br>
<br>
"@@.generic_male1;Good, looks like everything is working, if you're hungry, suck, if you're thirsty, suck, oh, and since you've apparently been a disobedient <<if $fetish.sissy>>sissy<<else>>girl<</if>>...@@" <<He>> places a pair of headphones over your head before tapping some buttons out of your line of sight, the plug in your ass burst back to life, buzzing along as you hear a soft, feminine voice.
<</if>>
<br><br>
<<if $fetish.sissy>>
<<set $scene.phrase = "I want to be a good SISSI secretary. Good sissies are rewarded, bad sissies are punished.">>
<<else>>
<<set $scene.phrase = "I want to be a good secretary. Good girls are rewarded, bad girls are punished.">>
<</if>>
<<glitchText $scene.phrase>><br>
<br>
At the word "punished" the plug shocks you before resuming the more pleasurable buzzing, the recording and the plug seemingly working in tandem.<br>
<br>
<<if setup.getTotalValue("smart") >= 10>>
<<printThought "Classical conditioning...">><br>
<br>
<</if>>
Your heart rate accelerating and your <<if $player.body_ref.penis>><<getWordMyPenis>> straining<<else>><<getWordVagina>> dripping<</if>> below in response to your stimulating situation you can only watch as the front of the box is latched in place, plunging you into near total darkness.<br>
<br>
<<glitchText $scene.phrase>><br>
<br>
You are tilted back and then feel yourself slowly rolling away...<br>
<br>
<<glitchText $scene.phrase>><br>
<br>
[<<moveTo "event_work_move_5" "Time to move..." 7200>>]
</div>/*#
#desc: endure move
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.get_raped>>
<<set $scene.max_fetish = setup.getMaxFetish()>>
<<else>>
<<set _fetishlist = ['bdsm','bondage','foot']>>
<<if $fetish.cum>>
<<set _fetishlist.push("cum")>>
<</if>>
<<if $fetish.piss>>
<<set _fetishlist.push("piss")>>
<</if>>
<<set $scene.max_fetish = setup.getMaxStat(_fetishlist)>>
<</if>>
<<setThreshold 'bondage' 'machine_bondage' 'corporate_move'>>
<<applyExperience 'bondage' 13 'unbelievable' $ALONE>>
<<applyExperience 'bdsm' 13 'normal' $ALONE>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $ALONE>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'very' $ALONE>>
<<if $fetish.cum>>
<<applyExperience 'cum' 12 'very' $ALONE>>
<</if>>
<<if $events.hasOwnProperty('hormones_checkin') && setup.compareDay($now,$events.hormones_checkin.trigger.date)>>
<<postponeEvent 'hormones_checkin' 1>>
<</if>>
<<set $scene.sexClubTask = false>>
<<if $currentTasks.hasOwnProperty('task_landlord_date_club') && setup.compareDay($now,setup.getTaskDueDate('task_landlord_date_club'))>>
<<set _compDate = setup.getTaskDueDate('task_landlord_date_club')>>
<<completeTask 'task_landlord_date_club' _compDate false>>
<<set $scene.sexClubTask = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_admin_date_club') && setup.compareDay($now,setup.getTaskDueDate('task_admin_date_club'))>>
<<set _compDate = setup.getTaskDueDate('task_admin_date_club')>>
<<completeTask 'task_admin_date_club' _compDate false>>
<<set $scene.sexClubTask = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_club_dom') && setup.compareDay($now,setup.getTaskDueDate('technician_club_dom'))>>
<<set _compDate = setup.getTaskDueDate('technician_club_dom')>>
<<completeTask 'technician_club_dom' _compDate false>>
<<set $scene.sexClubTask = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_club_sub') && setup.compareDay($now,setup.getTaskDueDate('technician_club_sub'))>>
<<set _compDate = setup.getTaskDueDate('technician_club_sub')>>
<<completeTask 'technician_club_sub' _compDate false>>
<<set $scene.sexClubTask = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_maid_mistress_dog') && setup.compareDay($now,setup.getTaskDueDate('task_maid_mistress_dog'))>>
<<postponeTask 'task_maid_mistress_dog' 7>>
<<set $scene.sexClubTask = true>>
<</if>>
<<if $currentTasks.hasOwnProperty('task_landlord_date_2') && setup.compareDay($now,setup.getTaskDueDate('task_landlord_date_2'))>>
<<set _compDate = setup.getTaskDueDate('task_landlord_date_2')>>
<<completeTask 'task_landlord_date_2' _compDate false>>
<<set $scene.landlordTask = true>>
<</if>>
<</if>>
<<set $player.location = "An Oubliette">>
<<initRoom>>
<<include playerMenu>>
<div id="invframe" class="scrolltext">
Trapped and restrained inside the dark box with only the buzzing, shocking plug in your rear and the hypnotic recording to keep you company you swiftly lose all track of time.<br>
<br>
<<if $scene.sexClubTask>>
<<printThought "Shit, I had a date at <<printShopName 'sex_club'>> tonight...">><br>
<br>
<<elseif $scene.landlordTask>>
<<printThought "Shit, I had a date with <<=setup.getNpcName('npc_landlord','first')>> tonight...">><br>
<br>
<</if>>
Somewhat disoriented as you are tilted and rolled around without any view of the outside you think you identify a long elevator ride followed by a twisty roll towards a final destination, but once you're up and fully vertical your "training" routine kicks into a new gear, the voice in your ear more insistent, insidiously pushing aside your own thoughts with their enthusiastic advice intermixed with commands to "suck." Each time you are rewarded with a fresh — but never satiating — squirt of <<if $fetish.cum>><<if $options.fem>><<if $fetish.futanari>>futa <<else>>girl<</if>><</if>>cum<<else>>nutrients<</if>> as the plug in your ass continues to buzz and shock. All the while soft, buzzing suction up front is just enough to make everything more intense without giving you anything resembling a proper "release." <br>
<br>
As time continues to roll forward you start to hallucinate, the idea that there is anything beyond your current situation becoming fuzzy, indistinct. You are a <<if $player.body_ref.vagina>>trio<<else>>pair<</if>> of <<if $fetish.sissy>>sissy <</if>>holes, sucked and fucked without end or release, an obedient receptacle<<if $fetish.cum>> for cum<</if>>, eager to be "unboxed" and put to use like a doll awaiting Christmas...<br>
<br>
On a cloud of mindless <<if $fetish.sissy>>sissyness<<else>>sluttiness<</if>> you feel yourself tilting and floating along and then there is suddenly blinding light.<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 10, 0)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
<<switch $scene.max_fetish>>
<<case 'penis'>>
[<<moveTo "event_work_move_6_penis_1" "What's outside the box?" _timeToMorning "<<applyFatigue -60>><<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'cum'>>
[<<moveTo "event_work_move_6_cum_1" "What's outside the box?" _timeToMorning "<<applyFatigue -60>><<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'piss'>>
[<<moveTo "event_work_move_6_piss_1" "What's outside the box?" _timeToMorning "<<applyFatigue -60>><<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'bestiality'>>
[<<moveTo "event_work_move_6_bestiality_1" "What's outside the box?" _timeToMorning "<<applyFatigue -60>><<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'bdsm'>>
[<<moveTo "event_work_move_6_bdsm_1" "What's outside the box?" _timeToMorning "<<applyFatigue -60>><<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'bondage'>>
[<<moveTo "event_work_move_6_bondage_1" "What's outside the box?" _timeToMorning "<<applyFatigue -60>><<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'foot'>>
[<<moveTo "event_work_move_6_foot_1" "What's outside the box?" _timeToMorning "<<applyFatigue -60>><<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<default>>
ERROR, unknown fetish: <<=$scene.max_fetish>>
<</switch>>
</div>/*#
#desc: first time in new office
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.addCollar>>
<<removeItem 'loose_collar' true>>
<<deleteItem 'loose_collar'>>
<</if>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.intro>>
<<case 'forced'>>
Disembarking the elevator and led up the hallway to an impressive door with a fresh <<=setup.getNpcName('npc_manager', 'other')>> placard
<<if $scene.addCollar>>
your leash and collar are removed and your escort departs with a nod.
<<else>>
your leash is unclipped and your escort departs with a nod.
<</if>>
Taking a deep breath, you open the door and step inside the "new" office.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> must have been lurking in wait as she greets you with a welcoming smile the instant you walk into the room.<br>
<br>
"@@.npc_manager;Ah, you are here! Welcome to my... OUR new office. How about you have a seat and I will get you... up to date on what exactly this move means.@@"
<<case 'reject'>>
The elevator ride passing in silence your manager leads the way up the hallway on floor <<=$player.work.upperFloorNumber>>, flashing you a gentle smile as you arrive at the impressive door marked <<=setup.getNpcName('npc_manager', 'other')>>.<br>
<br>
Stroking your cheek comfortingly she
<<if $scene.addCollar>>
unbuckles and removes your collar and leash before opening the door.
<<else>>
unclips your leash and opens the door.
<</if>>
<br><br>
"@@.npc_manager;Welcome to my... OUR new office. How about you have a seat and I will get you... up to date on what exactly this move means.@@"
<<case 'accept'>>
Disembarking the elevator and led up the hallway to an impressive door with a fresh <<=setup.getNpcName('npc_manager', 'other')>> placard
<<if $scene.addCollar>>
your leash and collar are removed and your escort departs with a nod.
<<else>>
your leash is unclipped and your escort departs with a nod.
<</if>>
Taking a deep breath, you open the door and step inside the "new" office.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> must have been lurking in wait. She welcomes you with a hungry smile that sends your heart racing.<br>
<br>
"@@.npc_manager;I take it you learned a nice lesson this morning? How about you take a seat while I lay out some of the details pertaining to this new office.@@"
<<default>>
ERROR unknown scene intro: <<=$scene.intro>>
<</switch>>
<br><br>
You glance around to find the office looks remarkably familiar — you are standing in a similar antechamber to when you worked before, your same desk and chair setup to one side<<if $player.flags.work_coffee.coffee_skill > 0>>, the familiar coffee machine in the opposite corner<</if>>.<br>
<br>
Taking your seat as <<=setup.getNpcName('npc_manager', 'formal')>> casually leans against your desk you wait for her explanation.<br>
<br>
[<<moveTo "event_work_move_8" "Listen." 60>>]
</div>/*#
#desc: manager tells you about "differences" on upper floors
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _x = setup.addManagerEndlessTask()>>
<<set _fetish = $scene.fetish>>
<<set $scene = {}>>
<<set $daily = {}>>
<<set $scene.fetish = _fetish>>
<<include "workdayInit">>
<<set $scene.shortWorkDay=true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;So, as I am sure you have already gathered, things here on the upper floors — by which I mean anything above floor one hundred — are more... extreme, less concealed. Think of the party we attend on Thursdays, but moreso. Up here every subordinate is property, effectively a slave to their reporting manager, completely beholden to attending to their superior in all manners.@@"<br>
<br>
She smiles wryly. "@@.npc_manager;Yes, before you ask... I have been training you for this for quite some time... training that you have taken to remarkably well but here... well, here it will not be just me enforcing the rules. Here a slave running around unattended and unowned could get into all sorts of trouble — as that little kerfuffle with the move must have shown you. Normally there would be a whole... process before you were allowed to work up here but, as always, you remain something of a special case. For the most part you need only focus on your normal rules — keep clean, dress appropriately, show up on time... all the things I have been drilling into you from the first day.@@"<br>
<br>
She smiles in comfort. "@@.npc_manager;Beyond that I would advise you to take care in what people wear around their throats. Everyone knows that you are mine, and thus you do not have to be concerned the way you might at the party, but a collar up here MEANS something, so keep that in mind in your interactions. Anyone not collared who is working up here is likely to be important — we are near the seat of power, and thus under its watchful eye. Now, well... I think it is time you got back to work.@@"<br>
<br>
<<if $now.getUTCHours() <= 11>>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Return to work." 60>>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Return to your desk." 60>>]
<</if>>
</div>/*#
#desc: move, foot fetish scene intro
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem "headphones_pink" true>>
<<deleteItem "headphones_pink">>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'hollow_plug' true>>
<<deleteItem 'hollow_plug'>>
<<if $fetish.sissy>>
<<set $scene.phrase = "I want to be a good SISSI secretary. Good sissies are rewarded, bad sissies are punished.">>
<<else>>
<<set $scene.phrase = "I want to be a good secretary. Good girls are rewarded, bad girls are punished.">>
<</if>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png">>
<div id="invframe" class="scrolltext">
Blinking rapidly as your eyes attempt to adjust to the bright light you try to focus past the continually droning <<if $fetish.sissy>>sissy<<else>>feminising<</if>> instructions broadcast through your headphones, the hours spent listening having progressed to the point where you have not just memorised them, but they have effectively become your thoughts.<br>
<br>
<<printThought $scene.phrase>><br>
<br>
Your vision finally clearing it takes you a few moments to recognise the raised seat in front of you as a shoeshine stand — the most comfortable you've ever seen as it appears that it is a top of the line massage chair with shoeshine stirrups below.<br>
<br>
You feel your lower restraints removed by unseen hands and then they pop into view. Sharply dressed, but androgynous they appear to be whistling as they set about detaching the feeding tube from your gag, though you remain unable to hear until they finally remove your headphones.<br>
<br>
"@@.generic_female2;Good morning, cutie!@@" They state with a smile. "@@.generic_female2;According to this you're an expert at foot massage, you know how to shine shoes as well?@@"<br>
<br>
A bit confused you nod, it's been a while, but you taught yourself several years back to keep your chauffeurs uniform looking sharp... back when you still drove.<br>
<br>
<<printThought "Best not to think about that...">><br>
<br>
"@@.generic_female2;Great! This'll be a little different than you were probably used to, but I'm sure you'll do just fine.@@"<br>
<br>
Removing your final restraints — though leaving your gag in place, the chipper attendant leads you out of the crate and then guides you over to in front of the shoeshine station where there is another box.<br>
<br>
Too caught off guard and stiff from bondage you don't even have time to struggle before you are on your knees in fresh restraints. Well supported you find yourself leaned forward, your face mere centimetres from the shoeshine stirrups, your hands technically free though cuffed to padded wires. Legs folded and bound you gasp slightly as your plug is replaced by a dildo, the devices sliding a couple centimetres into you before pausing as you quickly pieced together that it will likely be thrusting later.<br>
<br>
"@@.generic_female2;Alright,@@" the attendant explains after double checking and tightening your straps. "@@.generic_female2;Lotion, emery boards, pumice and the like is to your left, polish to your right, listen to your clients request and you should do fine. I'll be removing your gag now. I expect you to remain silent unless addressed, if you can't handle that I'll stuff your mouth with something even more uncomfortable, but your clients would much prefer if your tongue was free, don't you agree?@@"<br>
<br>
<<if $scene.voluntary>>
The strap is unbuckled and the gag slides from your lips as you work your jaw to recover from your night spent gagged.
<<else>>
The strap is unbuckled and the gag slides from your lips as you work your jaw to recover the near full day spent gagged.
<</if>>
<br><br>
[<<moveTo "event_work_move_6_foot_2" "Remain obediently silent." 60 "<<set $scene.object=false>>">>]<br>
[<<moveTo "event_work_move_6_foot_2" "Object to your situation." 60 "<<set $scene.object=true>>">>]
</div>/*#
#desc: move, foot fetish scene work as/at shoeshine station
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.object>>
<<addItem 'high_heel_gag'>>
<<wearItem 'high_heel_gag' true>>
<</if>>
<<applyExperience 'anal' 15 'very' $SEEN_STRANGER>>
<<applyExperience 'foot' 12 'very' $SEEN_STRANGER>>
<<applyExperience 'bondage' 15 'very' $SEEN_STRANGER>>
<<if $scene.object>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_STRANGER>>
<</if>>
<<changeHorny 20>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png">>
<div id="invframe" class="scrolltext">
<<if $scene.object>>
<<if $scene.voluntary>>
Swiftly finding your voice you try to object and explain that this is all a bit of a mix-up, that you kind of accidentally locked yourself in the crate...<br>
<br>
She rolls her eyes, and you reflect that your tale is a bit... implausible. Before you can explain further something is shoved into your mouth and buckled in place, a something that you soon recognise as a high heeled shoe, the toe shaped to be as effective a gag as you've ever worn.
<<else>>
Swiftly finding your voice you try to object and explain that you were supposed to be delivered to your <<=ps(setup.getNpcName('npc_manager', 'title'))>> new office. You don't even make it more than a few words before something is shoved into your mouth and buckled in place, a something that you soon recognise as a high heeled shoe, the toe shaped to be as effective a gag as you've ever worn.
<</if>>
<br><br>
"@@.generic_female2;Disappointing, well, maybe if you're good we'll give it another try later.@@"
<br><br>
<</if>>
Helplessly bound you can do little but wait patiently until your first customer appears, taking their seat and placing their feet in front of you.<br>
<br>
"@@.generic_male1;Just a shine, today.@@" The <<man>> speaks, <<his>> <<if $options.fem>>leather boots<<else>>large leather dress shoes<</if>> in front of you.<br>
<br>
Glancing to the right as indicated you find polish and a rag and set to work.<br>
<br>
The otherwise innocuous polishing takes a turn when the <<man>> finally stands up, and the dildo in your ass begins thrusting in and out. You gasp and dribble onto the floor as the attendant reappears. "@@.generic_female2;Oh, forgot to mention — you don't get paid tips in the conventional sense, but if you do a good job you WILL be rewarded.@@"<br>
<br>
Sliding deeper the dildo buzzes against your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> almost enough to get you off, leaving you panting as a fresh customer takes their seat.<br>
<br>
"@@.generic_female1;Massage and pedicure, please.@@" The woman states, her cute toes peeking out from her sandals, the polish a bit dinged up and in need of a refresh.<br>
<br>
Removing her shoes you deploy your expert massage skills before washing her feet and deploying the emery board. Taking a deep breath, you locate the polish, the high-tech bottle scanning her current colour and producing a perfect match for you to brush on.<br>
<br>
<<if $scene.object>>
Massage, pedi, polish; the occasional customer expresses regret that you are unable to kiss or lick their feet. Your supervising attendant always apologises, the clients reluctantly accepting that you were unruly and thus unable to accommodate. Those clients tend to leave you with your ass-fucking dildo painfully shocking your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> instead of the buzzing ass-fucking your other subjects "gift" you.
<<else>>
Massage, pedi, polish and the occasional full-tongue worship time slowly ticks by as you devote yourself to every manner of foot service. Thanks to your skills and the constant stream of clients you spend most of the time being steadily ass-fucked by the dildo, the self-lubricating device never enough to make you cum, but plenty to be a distraction.
<</if>>
<br><br>
Caught up in your work you don't even bother looking up to see whose feet you are servicing — until a very familiar pair of heels appear before you followed by an even more familiar voice.<br>
<br>
"@@.npc_manager;Well? I have been walking all morning searching for where you went off to, surely I am entitled to some of your attention?@@"<br>
<br>
[<<moveTo "event_work_move_6_foot_3" "Look up." 60>>]
</div>/*#
#desc: move, foot fetish scene rescued
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'foot' 12 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 12 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You look up in surprise even as you reflexively slide off her shoes and set to work massaging her lovely feet.<br>
<br>
<<if $scene.voluntary>>
<<if $scene.experienced>>
"@@.npc_manager;You just cannot stop going on little overnight adventures, can you? If I was not so amused I might be upset at your recklessness, and the fact you have missed half a morning's worth of work!@@"
<<else>>
"@@.npc_manager;Well, well, looks like SOMEONE got in a spot of trouble. I guess you had so much fun during the move you decided to try and repeat the experience?@@" She shakes her head in bemusement. "@@.npc_manager;You know logic would state nobody would be foolish enough to lock themselves away in one of those crates but, well... I suppose it is best not to underestimate a horny <<if $fetish.sissy>>sissy<<else>>slut<</if>>, hmm?@@"
<</if>>
<<else>>
"@@.npc_manager;So, it seems that there was a bit of a paperwork confusion and you were misdelivered. On the other hand, well... apparently you have been doing a VERY good job and they've offered me a favour if you could stick around through till lunch...@@"
<</if>>
<br><br>
<<if $npc_manager.affection > $npc_manager.anger>>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_foot_4_accept" "Nod your obedient assent." _timeToLunch>>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Her slightest desire is your dearest wish. How could you deny such a lovely request?@@]
<<else>>
[<<moveTo "event_work_move_6_foot_4_reject" "Shake your head." 60>>]
<</if>>
<<else>>
<<if $scene.object>>
Her gentle smile turns into a taunting grin.<br>
<br>
"@@.npc_manager;Aww? Nothing to say? Well, I guess I will just leave you here to finish off the shift, maybe it will give you time to reflect on your past failures at properly serving me. See you in the afternoon!@@"
<<else>>
Before you can even speak she has reached down to put a finger over your lips.<br>
<br>
"@@.npc_manager;Ah, ah. I was not asking your opinion, merely laying out the situation. Maybe you can use the time to reflect on your past failures, but try not to get too distracted from your work!@@"
<</if>>
<br><br>
Sliding her feet back into her shoes she rises with a laugh and walks away.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_foot_4_forced" "Continue your shift..." _timeToLunch>>]
<</if>>
</div>/*#
#desc: move, foot fetish scene, agree to continue shining shoes and massaging feet
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setThreshold 'foot' 'secretary_foot' 'shoeshine_station'>>
<<set $player.flags.move_fetish.foot = 2>>
<<set _foot = setup.getTotalValue("foot")>>
<<applyExperience 'foot' _foot 'skip' $SEEN_STRANGER>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<if $scene.object>>
<<removeItem 'high_heel_gag' true>>
<<deleteItem 'high_heel_gag'>>
<</if>>
<<set $scene.fixMakeup = $player.makeup.template != "" && $player.makeup.messed > 25>>
<<if $scene.fixMakeup>>
<<set $player.makeup.messed = 5>>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png">>
<div id="invframe" class="scrolltext">
After you have finishing enthusiastically massaging your <<=ps(setup.getNpcName('npc_manager', 'title'))>> feet, she rewards you with a head-pat and turning on your dildo before striding away.<br>
<br>
You spend the remainder of the morning obediently servicing every pair of feet that appears in front of you, rubbing and polishing and worshipping each unique pair as if it were your <<=setup.getNpcName('npc_manager', 'title')>> herself in hopes of making her proud.<br>
<br>
<<if $npc_manager.flags.evil == 2 && !State.hasPlayed("event_rival_foot_result_1")>>
[<<moveTo "event_rival_foot_1" "Continue." 300 "<<set $scene.fromAfternoon=false>>">>]
<<else>>
[<<moveTo "event_work_move_6_foot_4_accept_2" "Continue." 300>>]
<</if>>
</div>/*#
#desc: move, foot fetish scene, agree to continue shining shoes and massaging feet
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png">>
<div id="invframe" class="scrolltext">
After a bit of a pre-lunch "rush" the attendant appears and starts unstrapping you. Helping you to your feet the attendant smiles before presenting a leash.<br>
<br>
"@@.generic_female2;Wonderfully done! I'll be taking you back to your owner now!@@"<br>
<br>
<<if $scene.fixMakeup>>
You raise your head and the woman tsk's in annoyance. "@@.generic_female2;Non-permanent makeup? Such a hassle. Let me attend to that, I would not want to return you in such poor condition.@@"<br>
<br>
You silently sigh with relief that you won't be getting in trouble with your <<=setup.getNpcName("npc_manager","title")>> for not meeting her high "representative position" standards.<br>
<br>
<</if>>
<<if $scene.addCollar>>
The woman wraps a loose collar around your neck and gives the attached leash a gentle tug as she turns away.
<<else>>
The woman clips the leash to the front of your collar and gives a gentle tug as she turns away.
<</if>>
<br><br>
Legs still a bit stiff you are glad she sets a leisurely pace as she leads you across what you now realise is a bit of an indoor "mall" area towards an elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<</if>>
</div>/*#
#desc: move, foot fetish scene, request to end shift early
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.move_fetish.foot < 1>>
<<set $player.flags.move_fetish.foot = 1>>
<</if>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<if $scene.object>>
<<removeItem 'high_heel_gag' true>>
<<deleteItem 'high_heel_gag'>>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png">>
<div id="invframe" class="scrolltext">
"@@.npc_manager;I see, well, finish up with my feet and we can head up and I will show you our new office.@@"<br>
<br>
Eagerly rubbing her feet you deploy all your tricks to have her purring in contentment before you finally slide her shoes back into place.<br>
<br>
Rising from the chair she stands over you as the other attendant removes your restraints and helps you to your feet.<br>
<br>
<<if $scene.addCollar>>
<<=setup.getNpcName('npc_manager', 'formal')>> wraps a loose collar around your neck. Clipping a short leash to the front she indicates for you to follow.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> clips a leash to the front of your collar and then indicates for you to follow.
<</if>>
<br><br>
Falling in obediently she leads the way across what you can now see is a sort of indoor "mall" on the way to the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<</if>>
</div>/*#
#desc: move, foot fetish scene forced to continue to shine shoes and massage feet
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.foot = 2>>
<<set _foot = setup.getTotalValue("foot")>>
<<applyExperience 'foot' _foot 'skip' $SEEN_STRANGER>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<if $scene.object>>
<<removeItem 'high_heel_gag' true>>
<<deleteItem 'high_heel_gag'>>
<</if>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png">>
<div id="invframe" class="scrolltext">
Your fingers are already stiff from your morning's efforts, but it looks like you're in for even more work as your next "client" sits down with a sigh.<br>
<br>
"@@.generic_female1;Oh, I need this...@@" she states, sticking her feet in your face as she ramps the massage chair to full power.<br>
<br>
You're a bit annoyed at being doubly forced into this job, but your hesitation is quickly met with a stinging shock painfully jolting your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>.<br>
<br>
<<if $scene.object>>
Hurriedly you strip her shoes and set to work giving the best massage you know how. Raising a foot to your lips you kiss and lick as she sighs in contentment, letting you suck every centimetre of each foot in turn before waiting for you to rub, dry and carefully slip and strap her steep heels back on before she finally rises.
<<else>>
Hurriedly you strip her shoes and set to work giving the best massage you know how. With surprising skill she slips a foot into the high heel that forms your gag, effectively toe-fucking your mouth while you massage her other foot, blindly rubbing it with lotion before she finally releases her control on your face to repeat on the other foot. Giving your cheek a final caress with her toes she lets you slip and strap her steep heels back in place before finally rising.
<</if>>
<br><br>
You get nary a moments rest before your next client sits down, your morning blurring into a series of massages, polishings and worship that only comes to an end when the attendant appears to tap on your shoulder.<br>
<br>
"@@.generic_female2;Whelp, that's the last of the pre-lunch rush, best we get you back to your owner, eh?@@"<br>
<br>
<<if $scene.addCollar>>
Unstrapping you, she helps you back to your feet. A loose collar is wrapped around your neck complete with a short leash.
<<else>>
Unstrapping you, she helps you back to your feet and clips a leash is to the front of your collar.
<</if>>
<br><br>
"@@.generic_female2;Come along.@@" She states with a tug on your collar, leading you across what you now realise is a small indoor mall. You head straight for the elevator at the far side.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<</if>>
</div><<set _move_fetish_code = { "penis": "DK", "cum" : "CM", "piss" : "PS", "bestiality" : "BE", "bdsm" : "SM", "bondage" : "BD", "foot" : "FT" }>>
<<set $scene.move_fetishes = ["penis","cum","piss","bestiality","bdsm","bondage","foot"]>>
<<if !$fetish.bestiality_hard || setup.findThemeId('npc_psychiatrist', 'other', 'theme_psychiatrist_dog') == -1>>
<<set _x = $scene.move_fetishes.delete("bestiality")>>
<</if>>
<<if !$fetish.piss>>
<<set _x = $scene.move_fetishes.delete("piss")>>
<</if>>
<<if !$fetish.cum>>
<<set _x = $scene.move_fetishes.delete("cum")>>
<</if>>
<<if ($player.flags.move_fetish.cum < 1 && $fetish.cum)
|| ($player.flags.move_fetish.piss < 1 && $fetish.piss)
|| $player.flags.move_fetish.bdsm < 1
|| $player.flags.move_fetish.penis < 1
|| ($player.flags.move_fetish.bestiality < 1 && $fetish.bestiality_hard)
|| $player.flags.move_fetish.bondage < 1
|| $player.flags.move_fetish.foot < 1>>
<<if $player.flags.move_fetish.penis >= 1>>
<<set _x = $scene.move_fetishes.delete("penis")>>
<</if>>
<<if $player.flags.move_fetish.cum >= 1>>
<<set _x = $scene.move_fetishes.delete("cum")>>
<</if>>
<<if $player.flags.move_fetish.piss >= 1>>
<<set _x = $scene.move_fetishes.delete("piss")>>
<</if>>
<<if $player.flags.move_fetish.bdsm >= 1>>
<<set _x = $scene.move_fetishes.delete("bdsm")>>
<</if>>
<<if $player.flags.move_fetish.bestiality >= 1>>
<<set _x = $scene.move_fetishes.delete("bestiality")>>
<</if>>
<<if $player.flags.move_fetish.bondage >= 1>>
<<set _x = $scene.move_fetishes.delete("bondage")>>
<</if>>
<<if $player.flags.move_fetish.foot >= 1>>
<<set _x = $scene.move_fetishes.delete("foot")>>
<</if>>
<</if>>
<<if $npc_manager.stage == 5 && $npc_manager.flags.evil >= 2>>
<<if $fetish.cum && !State.hasPlayed("event_rival_cum_1")>>
<<set _x = $scene.move_fetishes.push("cum")>>
<<set _x = $scene.move_fetishes.push("cum")>>
<<set _x = $scene.move_fetishes.push("cum")>>
<<set _x = $scene.move_fetishes.push("cum")>>
<<set _x = $scene.move_fetishes.push("cum")>>
<</if>>
<<if !State.hasPlayed("event_rival_bondage_1")>>
<<set _x = $scene.move_fetishes.push("bondage")>>
<<set _x = $scene.move_fetishes.push("bondage")>>
<<set _x = $scene.move_fetishes.push("bondage")>>
<<set _x = $scene.move_fetishes.push("bondage")>>
<<set _x = $scene.move_fetishes.push("bondage")>>
<</if>>
<<if !(State.hasPlayed("event_rival_bdsm_1") || State.hasPlayed("event_rival_bdsm_1_alt"))>>
<<set _x = $scene.move_fetishes.push("bdsm")>>
<<set _x = $scene.move_fetishes.push("bdsm")>>
<<set _x = $scene.move_fetishes.push("bdsm")>>
<</if>>
<</if>>
<<if $scene.move_fetishes.length == 0>>
<<set $scene.move_fetishes = ["penis","cum","piss","bestiality","bdsm","bondage","foot"]>>
<<if !$fetish.piss>>
<<set _x = $scene.move_fetishes.delete("piss")>>
<</if>>
<<if !$fetish.cum>>
<<set _x = $scene.move_fetishes.delete("cum")>>
<</if>>
<</if>>/*#
#desc: find moving crate on your way home after work
#status: FINISHED 0.8.0.0
#*/
<<if !State.hasPlayed("event_work_stage4_chair_1") || ($workEvents.event_interview_intro && setup.daysToDate($now, $workEvents.event_interview_intro.trigger.date) <= 1)>>
<<moveTo $scene.passthrough>>
<</if>>
<<include "calcMoveFetishes">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fetish = $scene.move_fetishes.random()>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 28800) && $now.getUTCDay() != 5>>
<<set $scene.crate_occupant = random(0,15)>>
<<if ($scene.fetish!='bestiality' && setup.getTotalValue($scene.fetish) < 10) || ($scene.fetish=='bestiality' && setup.getTotalValue('bestiality') < 3)>>
<<set $scene.crate_occupant = 17>>
<</if>>
<<else>>
<<set $scene.crate_occupant = 16>>
<</if>>
<<set $scene.boxfilename = setup.charImage("npc_box","npc_box_" + $scene.fetish)>>
<</if>>
<<set $player.location = "Outside the Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" $scene.boxfilename>>
<div id="invframe" class="scrolltext">
You are about to board the elevator when you spot a quite familiar crate. Looking the same as the crate that transported you to the upper floor when you first changed offices its only marking is a two-character label: <<=_move_fetish_code[$scene.fetish]>>.<br>
<br>
<<if $scene.crate_occupant > 12>>
The crate is currently occupied, the helpless occupant not only fully restrained, but blinded by a top of the line VR helmet.
<<switch $scene.crate_occupant>>
<<case 13>>
A naked <<if $fetish.sissy>>sissy<<else>>girl<</if>> is bound securely, from the whip marks on her body she has been quite misbehaved.
<<case 14>>
A near perfect vision <<if $options.fem>>of a muscled amazon<<else>>of muscled and cut masculinity<</if>>, the plug in <<his>> ass looking to have <<his>> magnificent cock at full attention.
<<case 15>>
A barely clothed woman, her tight, sexy outfit more appropriate for the club than the office.<br>
<br>
<<printThought "Well, more appropriate if the office wasn't up here on <<=$player.work.upperFloorNumber>>.">>
<<case 17>>
A latex clad drone is so covered and bound as to make their identity, or even their physical gender, inscrutable. The words "test drone" printed across their chest tells you that this objectification is likely part of the plan.
<<default>>
A doll-like maid smiling around her gag. You can only imagine what "fun" alternate reality she is enjoying.
<</switch>>
<br><br>
[<<moveTo "event_work_crate_tease" "Tease the helpless slave." 60>>]<br>
<<else>>
<<if $player.flags.move_fetish.cum > 0 || $player.flags.move_fetish.piss > 0 || $player.flags.move_fetish.bdsm > 0 || $player.flags.move_fetish.penis > 0 || $player.flags.move_fetish.bestiality > 0 || $player.flags.move_fetish.bondage > 0 || $player.flags.move_fetish.foot > 0>>
Looking inside the tall crate you recognise the gag, plug, headphones, restraints and the rest and realise that, with a bit of care, you could actually lock yourself away for an overnight adventure...<br>
<br>
<<printThought "After what happened before... do I dare see what happens?">>
<<else>>
Looking over the gag, plug, headphones, restraints and the rest you wonder what surprise you would get if you packed yourself away again...
<</if>>
<br><br>
[<<moveTo "event_work_random_voluntary_move_event_1" "Get into the box." 60>>]<br>
<</if>>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: find moving crate on your way home after work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $ALONE>>
<</if>>
<<set $player.location = "Outside the Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" $scene.boxfilename>>
<div id="invframe" class="scrolltext">
<<switch $scene.crate_occupant>>
<<case 13>>
You trace your fingers along the red marks of the whip, kissing her naked flesh gently before finishing off by fondling her caged <<if $fetish.sissy>>sissy <</if>>clitty. She seems to take comfort in this anonymous gentle comfort, drooling and moaning through her gag.
<<case 14>>
Running your hands down <<his>> taut, muscular form you end up at <<his>> cock, unable to resist leaning over to have a taste. <<His>> pre is as strong <<if !$options.fem>>and masculine <</if>>as <<he>> is and you eagerly lick around <<his>> glans, your attention having <<him>> strain against <<his>> bonds.
<<case 15>>
Dropping to your knees, you pull aside her skimpy thong and lick her clit, enjoying her already wet taste as you eat her out.
<<case 17>>
You spend some time petting the drone's head trying to comfort them during the elevator ride. They visibly relax and seem to take comfort in your touch.
<<default>>
You take a few moments to grope the adorable maid, fondling her full breasts and squeezing her properly caged <<if $fetish.sissy>>sissy <</if>>clitty until she is moaning through her gag.
<</switch>>
Hearing the ding of your elevator arriving you smile at your <<if $scene.crate_occupant == 17>>companion<<else>>victim<</if>>, certain that the crate being left here open was intentional to draw such attention.<br>
<br>
<<include "printHomeShortcutChoice">>
</div>/*#
#desc: package yourself up for a random "move" event
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _fetish = $scene.fetish>>
<<set $scene = {}>>
<<set $daily = {}>>
<<set $scene.shortWorkDay = true>>
<<set $scene.fetish = _fetish>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.experienced = true>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<set $scene.removePlug = $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
<<if $scene.removePlug>>
<<removeItem $scene.plug true>>
<</if>>
<<addItem "hollow_plug">>
<<wearItem "hollow_plug" true>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<<addItem "headphones_pink">>
<<wearItem "headphones_pink" true>>
<<if $events.hasOwnProperty('event_admin_morning_workout_call')>>
<<removeEvent 'event_admin_morning_workout_call'>>
<</if>>
<<if $events.hasOwnProperty('event_admin_morning_visit')>>
<<removeEvent 'event_admin_morning_visit'>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_41'
8
'event_psychiatrist_session_move_repeat_1'
false
>>
<</if>>
<<set $player.location = "Outside the Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" $scene.boxfilename>>
<div id="invframe" class="scrolltext">
Noting a warning that "all subjects should be naked for shipment" you slide out of your clothes. By the time you are naked your heart is beating with excitement, and you get a thrill at stepping into the crate to package yourself up. Realising that you will need to sequence things carefully if you ACTUALLY want to go through with this and fully package yourself up.<br>
<br>
You've just about figured out the proper sequence you would have to work in when you realise that you have already gone through with the first step — your ankles locked in by the lowest "shelf" of restraints. Leaning over confirms that you have no idea how to free yourself.<br>
<br>
<<printThought "In for a penny, in for a pound... I hope I don't regret this...">><br>
<br>
With your "plan" having already been figured out you work your way up your body.
<<if $scene.plug != "" && !setup.checkItemTag($scene.plug, ['hollow'])>>
Replacing the <<=setup.getItemName($scene.plug)>> with the one built into the crate, you feel it swell to lock familiarly in place.
<<else>>
The plug is the first item as you slide it easily into your rear hole and feel it swell to lock familiarly in place.
<</if>>
<<if $player.body_ref.penis>>
You secure the tubular attachment over your <<getWordMyPenis>> and
<<else>>
You buckle the crotch-piece over your <<if setup.checkItemTypeWorn("cage")>>chastity belt<<else>>excitedly dripping crotch<</if>> and
<</if>>
finish locking your waist into the crate before carefully setting to work on the final few bits.<br>
<br>
The gag fits easily, spreading your mouth wide as you screw the feeding tube to the front and give a testing suck of cum-flavoured nutrient. The moment the headphones are in place you hear the familiar <<if $fetish.sissy>>sissification<<else>>feminisation<</if>> recording, already anticipating each word from memory.<br>
<br>
Carefully you slide the final shelf into place, getting it just barely there before putting your hands in position with just enough room to spare before using your fingertips to pull things in the rest of the way. Though the headphones means you cannot hear it you can feel the solid *CLICK* of this final piece locking home.<br>
<br>
To your surprise the front of the crate suddenly snaps closed, as if this whole setup were a trap that has now fully sprung.<br>
<br>
Surrendering to the submissive voice in your head you relax in the darkness, enjoying the buzzing in your rear and the taste of cum filling your mouth.<br>
<br>
Eventually you feel yourself tilt back and move off, but you barely even care.<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 7, 0)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_work_random_voluntary_move_event_2" "Wait for morning." _timeToMorning>>]
</div>/*#
#desc: night packaged for random "move" event
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -60>>
<<set $scene.voluntary = true>>
<</if>>
<<set $player.location = "A Crate Space">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" $scene.boxfilename>>
<div id="invframe" class="scrolltext">
The night passes slowly as before as you move once again and then are greeted by a sudden blinding light as the front of your crate is removed.<br>
<br>
<<switch $scene.fetish>>
<<case 'penis'>>
[<<moveTo "event_work_move_6_penis_1" "What's outside the box?" 3000 "<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'cum'>>
[<<moveTo "event_work_move_6_cum_1" "What's outside the box?" 3600 "<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'piss'>>
[<<moveTo "event_work_move_6_piss_1" "What's outside the box?" 3600 "<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'bestiality'>>
[<<moveTo "event_work_move_6_bestiality_1" "What's outside the box?" 3600 "<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'bdsm'>>
[<<moveTo "event_work_move_6_bdsm_1" "What's outside the box?" 3600 "<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'bondage'>>
[<<moveTo "event_work_move_6_bondage_1" "What's outside the box?" 3600 "<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<case 'foot'>>
[<<moveTo "event_work_move_6_foot_1" "What's outside the box?" 3600 "<<if $currentTasks.hasOwnProperty('manager_morning_inspection_task')>><<completeTask 'manager_morning_inspection_task' $now false>><</if>>">>]
<<default>>
ERROR, unknown fetish: <<=$scene.fetish>>
<</switch>>
</div>/*#
#desc: returned to office after a "random" move event night
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.addCollar>>
<<removeItem 'loose_collar' true>>
<<deleteItem 'loose_collar'>>
<</if>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<include "cleanPlayer">>
<<washClothes>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.intro>>
<<case 'forced'>>
Disembarking the elevator and led up the hallway to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office
<<if $scene.addCollar>>
your leash and collar are removed and your escort departs with a nod.
<<else>>
your leash is unclipped and your escort departs with a nod.
<</if>>
Taking a deep breath, you open the door and step inside.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> must have been lurking in wait as she greets you with a welcoming smile the instant you walk into the room.<br>
<br>
"@@.npc_manager;Finally ready to "start" the day? Well, let's get to it, time for your morning, well... afternoon, technically, inspection!@@"
<<case 'reject'>>
The elevator ride passing in silence your manager leads the way up the hallway on floor <<=$player.work.upperFloorNumber>>, flashing you a gentle smile as you arrive at her office.<br>
<br>
Stroking your cheek comfortingly she
<<if $scene.addCollar>>
unbuckles and removes your collar and leash before opening the door.
<<else>>
unclips your leash and opens the door.
<</if>>
<br><br>
"@@.npc_manager;I hope you had a fun little... adventure, but it has put us behind so let's get right to it, time for your morning, inspection.@@"
<<case 'accept'>>
Disembarking the elevator and led up the hallway to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office
<<if $scene.addCollar>>
your leash and collar are removed and your escort departs with a nod.
<<else>>
your leash is unclipped and your escort departs with a nod.
<</if>>
Taking a deep breath, you open the door and step inside.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> must have been lurking in wait. She welcomes you with a hungry smile that sends your heart racing.<br>
<br>
"@@.npc_manager;Well, I hope you enjoyed your little morning, maybe learned a lesson or two? Anyway we are quite behind for the day so let's get right to it for your morning, well... more coming on afternoon, now, inspection.@@"
<<default>>
ERROR unknown scene intro: <<=$scene.intro>>
<</switch>>
<br><br>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4" "Inspection." 60 "<<set $scene.directInspection=true>><<set $scene.beforetasklocation = ['room_office_sissy_secretary_work_morning_start']>>">>]
<<case 5>>
[<<moveTo "event_manager_daily_check_stage_5" "Inspection." 60 "<<set $scene.directInspection=true>><<set $scene.beforetasklocation = ['room_office_sissy_secretary_work_morning_start']>>">>]
<</switch>>
</div>/*#
#desc: move, penis fetish scene intro
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<addItem 'ring_gag'>>
<<wearItem 'ring_gag' true>>
<<addItem 'box_tie'>>
<<wearItem 'box_tie' true>>
<<removeItem "headphones_pink" true>>
<<deleteItem "headphones_pink">>
<<if $fetish.sissy>>
<<set $scene.phrase = "I want to be a good SISSI secretary. Good sissies are rewarded, bad sissies are punished.">>
<<else>>
<<set $scene.phrase = "I want to be a good secretary. Good girls are rewarded, bad girls are punished.">>
<</if>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You blink rapidly in the harsh glare of fluorescent lights. The blurry mover busily unhooking you is the first thing to come into focus, followed by what looks like a bay full of cubicles.<br>
<br>
As nonchalant as the other movers this one rapidly finishes unhooking your gag and plug before referencing a tablet. Nodding to themselves and paying seemingly no mind to your thoughts on the matter she removes your gag only to replace it with a ring gag before you have even finished unkinking your jaw, much less had time to get a word in edgewise.<br>
<br>
You're finding it a bit hard to concentrate as the <<if $fetish.sissy>>sissy-<</if>>instructional tape continues to play, blotting out all hearing and serving a mild distraction even though you've heard it so many times so as to commit it to memory.<br>
<br>
<<glitchText $scene.phrase>><br>
<br>
<<printThought "No, dammit, focus!">><br>
<br>
Removing the restraint binding your neck and wrists you continue to trade one restrictive position for another as she cuffs your arms behind your back in a leather box tie. Removing the remaining restraints she guides you out of the box and turns you around to where you find a standard office water cooler and what looks like a set of knee-pads and an odd vertical rod protruding from the wall just below waist level.<br>
<br>
Walking you over next to the water cooler she shoves you to your knees, swiftly strapping you down so that you are bound kneeling on the padded surface. Reaching behind, she secures the strap of your gag to the rod. It is a relatively simplistic "tie" but, combined with your already bound arms, one that has you quite helpless.<br>
<br>
<<if $player.flags.move_fetish.penis >= 2>>
You ready yourself for another shift of sucking cock...<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
<<printThought "Yay, I love my job!">>
<<else>>
<<printThought "Why did I do this, again?">>
<</if>>
<<elseif $scene.voluntary>>
You may have technically "volunteered" for this, but the fact that you have no idea what is about to happen has your heart racing, your "adventure" much more real than when you were merely enjoying a sensory-deprived <<if $fetish.sissy>>sissy <</if>>brainwashing bondage night.
<<else>>
You're starting to get really concerned, you expected to "wake up" to your <<=ps(setup.getNpcName('npc_manager', 'title'))>> new office, but this; you look up at the mover and grunt and blink frantically.
<</if>>
<br><br>
Looking down as you thrash in your bonds she hits her head as if she suddenly remembered something. Leaning over she removes your headphones, tossing them into the crate as she reaches towards a bulge that you have suddenly noticed between her legs.<br>
<br>
"@@.generic_female1;Sorry about that, wouldn't want you to be unable to hear your... clients. Speaking of which, well, it looks like I'm a couple minutes ahead of schedule so why don't you give me a bit of relief?@@"<br>
<br>
She's reaching for her bulge and you can see where this is going...<br>
<br>
[<<moveTo "event_work_move_6_penis_2" "Shake your head, there's been a mistake!" 300 "<<set $scene.abort=true>>">>]<br>
[<<moveTo "event_work_move_6_penis_2" "Ready your tongue and provide relief." 600 "<<set $scene.abort=false>>">>]
</div>/*#
#desc: move, penis fetish scene suck or abort
#status: FINISHED 0.9.4.0
#ignore_spell: overnighter
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.get_raped || !$scene.abort>>
<<applyExperience 'oral' 11 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 11 'normal' $SEEN_STRANGER>>
<</if>>
<<if !$fetish.get_raped && $scene.abort>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<removeItem 'box_tie' true>>
<<deleteItem 'box_tie'>>
<</if>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.abort && !$fetish.get_raped>>
You shake your head and make a commotion, the attendant raising an eyebrow and removing your gag.<br>
<br>
"@@.generic_female1;What's the matter?@@" She asks with a mix of concern and frustration.<br>
<br>
You hurriedly explain that there's been some sort of mistake and that you really need to get to work. It's at the moment that you drop <<=ps(setup.getNpcName("npc_manager","formal"))>> name that the attendant's entire demeanor shifts.<br>
<br>
Making hurried apologies she swiftly has your restraints removed. "@@.generic_female1;So, so sorry about all of this. I just follow the instruction schedule and it said that I had an overnighter ready to do a shift and... well, it doesn't matter, please accept my apology for the confusion... if you hurry you can probably make it to work, right?@@"<br>
<br>
You nod and rush off, working the kinks out of your jaw as you find the elevator and head up to the office.<br>
<br>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4" "Rush to your desk." 300 "<<set $scene.at_office=true>><<set $scene.directInspection=true>>">>]
<<case 5>>
[<<moveTo "event_work_move_6_penis_2" "Rush to your desk." 300 "<<set $scene.at_office=true>><<set $scene.directInspection=true>>">>]
<</switch>>
<<else>>
As she speaks she whips out her cock,
<<if $scene.abort>>
you try to object, but she either doesn't notice, or doesn't care as she jams it home past your gag-spread lips
<<else>>
lining it up with your ring gag and jamming it home.
<</if>>
<br><br>
Instinct takes over as you reflexively lick and suck. It isn't long before she blesses you with a nice light "breakfast" before stepping away with a smile.<br>
<br>
"@@.generic_female1;Ah, I love my job, and it seems like you do too! Have a great day, <<if $fetish.sissy>>sissy<<else>>girl<</if>>!@@" Turning back to the crate she tilts the dolly and wheels it away, leaving you bound, helpless and in a very "vulnerable" position.<br>
<br>
You can turn your head a little, enough to look over and spot what looks like the morning's first arrivals, a pack of three <<men>> wearing <<if $options.fem>>skirts and blouses<<else>>suits and ties<</if>> who walk up chatting, one of them starting up the coffee maker whilst another casually walks over to "make use" of you.<br>
<br>
Restrained and with your mouth forced open you really don't have much of a choice in their availing themselves of your oral attentions<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("oral")>> and, well, you are kind of a cock-slut so it's not like you mind...<</if>><br>
<br>
<<if !$scene.voluntary>>
As you finish the first and move on to the second <<man>> you start to wonder what exactly happened with the move.<br>
<br>
<<printThought "Was this part of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> plan?">><br>
<br>
<</if>>
[<<moveTo "event_work_move_6_penis_3" "The morning rolls on." 3600>>]
<</if>>
</div>/*#
#desc: move, penis fetish scene, suck cock and hear secrets
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 11 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You soon lose track of how many cocks you've sucked as <<if $options.fem>>the female <</if>>employees use your mouth as seemingly a natural part of a "trip to the water cooler" as well as something to do whilst waiting for the coffee to brew.<br>
<br>
<<if $scene.voluntary>>
At some point in time you hear your phone go off — <<=setup.getNpcName("npc_manager","formal")>> asking why you are not at work, presumably, but you have no way to answer or escape, your decision from the previous night still having you "stuck" in this predicament.<br>
<br>
<</if>>
Unable to resist in any way you fall into the rhythm, sucking and licking whatever makes its way past your gag, choking only occasionally as you do your best to swallow, but are unable to stop the flow of drool and cum trickling past the gag and down your chin. You start listening into the conversations going on around you, most of it is corporate buzzwords about projects you don't recognise, but you hear some interesting things as well, people talking about some sort of "drone program" in hushed whispers.<br>
<br>
Things start to blur until you find yourself looking forward at a very familiar set of legs.<br>
<br>
[<<moveTo "event_work_move_6_penis_4" "Look up." 60>>]
</div>/*#
#desc: move, penis fetish scene rescued
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Craning your head up you find yourself looking up at your glorious <<=setup.getNpcName('npc_manager', 'title')>>, the bright lights behind her lending her an almost angelic, ethereal aura.<br>
<br>
<<if $scene.voluntary>>
<<if $scene.experienced>>
"@@.npc_manager;You just cannot stop going on little overnight adventures, can you? If I was not so amused I might be upset at your recklessness, and the fact you have missed half a morning's worth of work!@@"
<<else>>
"@@.npc_manager;Well, well, looks like SOMEONE got in a spot of trouble. I guess you had so much fun during the move you decided to try and repeat the experience?@@" She shakes her head in bemusement. "@@.npc_manager;You know logic would state nobody would be foolish enough to lock themselves away in one of those crates but, well... I suppose it is best not to underestimate a horny <<if $fetish.sissy>>sissy<<else>>slut<</if>>, hmm?@@"
<</if>>
<<else>>
"@@.npc_manager;There you are! I have spent half the morning hunting for you. It seems like someone messed with the shipping information for your crate...@@" She purses her lips and you have a feeling she knows more about who, and perhaps more importantly, the why, than she's letting on. "@@.npc_manager;So, did you enjoy your morning while I was off running about trying to rescue you?@@"
<</if>>
<br><br>
You blush, even dripping with cum and drool there's no denying that you've been very turned on by being able to serve so many delectable cocks.<br>
<br>
"@@.npc_manager;You slut,@@" she states softly, with a friendly smile. Leaning over she whispers in your ear while her hand drifts down to gently run a finger <<if setup.checkItemTypeWorn("cage")>>along your <<if setup.isCage()>>chastity cage<<else>>chastity belt<</if>><<else>>between your legs<</if>>. She leans even closer. "@@.npc_manager;Hmm, you HAVE been having a fun morning, but tell me, while you have been wallowing in your morning off from work... did you hear anything... interesting?@@"<br>
<br>
You moan with want, nodding as best you can.<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
"@@.npc_manager;Intriguing. You know, they begged me to just leave you here until lunch — apparently that is the soonest they can get a replacement for you and, well... the worker bees do get quite peeved when robbed of their relief hole. I am sure I could leverage a favour or two if you wanted to stick it out as my spy...@@"<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
<<if $npc_manager.stage == 5 && !State.hasPlayed("event_work_move_6_penis_3")>>
<<if State.hasPlayed("event_work_move_6_penis_1")>>
<<printThought "I wonder if I can hear some more employee chatter?">><br>
<br>
<<set _time = random(1200, _timeToLunch)>>
[<<moveTo "event_work_move_6_penis_3" "Nod obediently." _time>>]<br>
<<else>>
<<printThought "I wonder if I might overhear something useful to undermining <<=setup.getNpcName('npc_rival', 'formal')>>?">><br>
<br>
<<set _time = random(1200, _timeToLunch)>>
[<<moveTo "event_work_move_6_penis_1" "Nod obediently." _time>>]<br>
<</if>>
<<else>>
<<if $npc_manager.stage >= 5 && !State.hasPlayed("event_rival_penis_1")>>
[<<moveTo "event_rival_penis_1" "Nod obediently." 1800 "<<set $scene.direct=true>><<set $scene.fromAfternoon=false>>">>]<br>
<<elseif $npc_manager.stage >= 5 && !State.hasPlayed("event_rival_penis_2")>>
[<<moveTo "event_rival_penis_2" "Nod obediently." 1800 "<<set $scene.direct=true>><<set $scene.fromAfternoon=false>>">>]<br>
<<else>>
[<<moveTo "event_work_move_6_penis_5_accept" "Nod obediently." _timeToLunch "<<set $scene.direct=true>>">>]<br>
<</if>>
<</if>>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Her slightest desire is your dearest wish. How could you deny such a lovely request?@@]
<<else>>
[<<moveTo "event_work_move_6_penis_5_reject" "Shake your head." 60>>]
<</if>>
<<else>>
"@@.npc_manager;Intriguing. Well, it seems like a shame to waste this opportunity.@@"<br>
<br>
She stands up, her expression hardening as you suddenly cast back to all the times in the past you have disobeyed her.<br>
<br>
"@@.npc_manager;Facilities said they would not be able to get a replacement installed for you until after lunch. Given that the worker bees so dislike look forward to having their hole available... well I think I will just leave you here until then, you can keep up your good work and facilities should owe me a favour or two.@@"<br>
<br>
She turns smartly and walks away, leaving you to helplessly stare after her until your next "client" steps out from between the rows of cubicles and starts walking in your direction.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_penis_5_forced" "Continue your shift..." _timeToLunch>>]<br>
<</if>>
</div>
/% NOTE: move_autoblow.gif %//*#
#desc: move, penis fetish scene, agree to continue to suck cock and hear secrets
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.penis = 2>>
<<if $scene.direct>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 11 'normal' $SEEN_STRANGER>>
<<applyExperience 'bondage' 16 'normal' $SEEN_STRANGER>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'skip' $SEEN_STRANGER>>
<</if>>
<<if !$scene.fromAfternoon>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<removeItem 'hollow_plug' true>>
<<deleteItem 'hollow_plug'>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $scene.fixMakeup = $player.makeup.template != "" && $player.makeup.messed > 25>>
<<if $scene.fixMakeup>>
<<set $player.makeup.messed = 5>>
<</if>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<removeItem 'box_tie' true>>
<<deleteItem 'box_tie'>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
<<if $scene.direct>>
After your brief rest visiting with your <<=setup.getNpcName('npc_manager', 'title')>> your non-stop fellatio resumes in earnest. Remembering your duties you try to listen close to the conversations going on nearby, doing your best to memorise even the parts you don't understand.<br>
<br>
Focused on listening rather than sucking it seems your clientele eventually become disappointed in your performance. Revealing the true purpose of the rod attached to your gag a switch is pressed forcing your head to bob back and forth, your entire body enslaved to the simplistic machine as you are turned into an auto-blow device.<br>
<br>
<</if>>
By the time lunch rolls around, your tummy is rumbling<<if $fetish.cum>>, even the copious amount of cum you have swallowed isn't enough to make up for your morning work<</if>> and you are actually quite grateful when the pre-lunch rush tapers off and a new mover appears with your obvious replacement in tow.<br>
<br>
Her arms already bound similar to your own she smiles around her gag, waggling her tongue in greeting as the mover sets about releasing you and helping you to your feet.<br>
<br>
<<if $scene.fixMakeup>>
You look the woman in the eye and she shakes her head. "@@.generic_female1;Non-permanent makeup? Such a disaster. I suppose I should attend to that lest I get in trouble for returning you in poor condition.@@"<br>
<br>
You silently sigh with relief that you won't be getting in trouble with your <<=setup.getNpcName("npc_manager","title")>> for not meeting her high "representative position" standards as the woman produces a makeup kit and touches you up.<br>
<br>
<</if>>
<<if $scene.addCollar>>
A loose collar is wrapped around your neck complete with a short leash and you are left to stretch your legs a bit as your replacement is strapped down and her head attached to the auto-blow rod.
<<else>>
A leash is clipped to the front of your collar and you are left to stretch your legs a bit as your replacement is strapped down and her head attached to the auto-blow rod.
<</if>>
<br><br>
Even with your gag removed your jaw is far too stiff to say anything and you just wait as your armbinder and plug are removed as well.<br>
<br>
<<if $scene.fromAfternoon>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Finish the afternoon shift back at your desk." 300>>]
<<else>>
Pulling on your leash the mover leads you away and you follow obediently out of the bay and into the elevator.
<<if $scene.voluntary>>
As fun as this little adventure was you find yourself missing <<=setup.getNpcName('npc_manager', 'formal')>>, feeling eager to get back to your "normal" duties.<br>
<br>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<<else>>
As exciting as the morning was you find yourself looking forward to finally seeing your new office.<br>
<br>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: move, penis fetish scene, ask to end your shift early
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.move_fetish.penis < 1>>
<<set $player.flags.move_fetish.penis = 1>>
<</if>>
<<useClothSetPop 'tmp'>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<removeItem 'box_tie' true>>
<<deleteItem 'box_tie'>>
<<removeItem 'hollow_plug' true>>
<<deleteItem 'hollow_plug'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
Though she appears a little disappointed by your decision your <<=setup.getNpcName('npc_manager', 'title')>> immediately sets to work freeing you from your current situation.<br>
<br>
Helped to your feet you wince as you stretch your sore muscles, your arms dropping limp to your sides once she removes the box tie armbinder.<br>
<br>
Very gently she unbuckles and removes your gag. Your jaw stiff from being severely gagged for over twenty-four hours you do not even attempt to talk, instead merely sipping gratefully at the glass of clear, clean water she hands you, the taste refreshing and almost sweet after <<if $fetish.cum>>so long tasting naught but cum<<else>>the monotonous nutrient slurry<</if>>. You softly moan as she slips the plug out of your ass, feeling strangely empty, but continuing to savour your drink.<br>
<br>
"@@.npc_manager;Come along, now.@@" She notes, stepping away. Still sore and tired you fall in line at her heels as she re-attaches the leash and leads the way out of the bay and back to the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<</if>>
</div>/*#
#desc: move, penis fetish scene, forced to continue to suck cock and hear secrets
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.penis = 2>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<removeItem 'ring_gag' true>>
<<deleteItem 'ring_gag'>>
<<removeItem 'box_tie' true>>
<<deleteItem 'box_tie'>>
<<removeItem 'hollow_plug' true>>
<<deleteItem 'hollow_plug'>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 11 'normal' $SEEN_STRANGER>>
<<applyExperience 'bondage' 16 'normal' $SEEN_STRANGER>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'skip' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You whimper at the prospect of remaining bound for the remainder of the morning, but your <<=setup.getNpcName('npc_manager', 'title')>> is already out of earshot, a fresh <<if $options.fem>>girl<</if>>cock sliding through your gag.<br>
<br>
Seemingly disappointed at your lack of enthusiasm your latest client reveals a fresh feature of your diabolic situation. With a click of a switch the rod attached to the back of your head starts moving forward and back, forcing your head to slide up and down <<his>> shaft as your entire body is turned into an automated blowjob device.<br>
<br>
Some instinctual sense of self-preservation has you listening keenly as you continue your duties as an automated human face-fuck hole who continues to serve a nigh constant stream of <<if $options.fem>>girl<</if>>cocks. Things come to a peak with a pre-lunch rush before you finally get a reprieve, hanging in your bonds, exhausted as the auto-blow rod continues to send you bobbing forward and back.<br>
<br>
You hear a click and your movement ceases leading you to somehow muster the energy to look up to find what appears to be another mover and your "replacement." Already gagged and with her arms restrained similar to your own the woman smiles down at you as the mover sets to work releasing you and helping you back to your feet.<br>
<br>
Wobbling a bit you barely notice as
<<if $scene.addCollar>>
a loose collar is wrapped around your neck complete with a short leash.
<<else>>
a leash is clipped to the front of your collar.
<</if>>
After taking a moment to make sure you aren't going to fall over your gag and armbinder are removed. Your jaw far too sore for words you are left to stretch your legs a bit as your replacement is strapped down and her head attached to the auto-blow rod.<br>
<br>
Perhaps taking pity on your bedraggled state the mover only gently pulls on your leash to lead you away. You follow obediently out of the bay and into the elevator.
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='forced'>>">>]
<</if>>
</div>/*#
#desc: move, piss fetish scene intro (installed in Executive Bathroom)
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "catsuit_toilet">>
<<wearItem "catsuit_toilet" true>>
<<removeItem "headphones_pink" true>>
<<deleteItem "headphones_pink">>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'hollow_plug' true>>
<<deleteItem 'hollow_plug'>>
<</if>>
<<set $player.location = "Executive Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Blinking in the bright light as the cover is removed from your crate you feel your lower body restraints and buttplug are removed and your clothes stripped.<br>
<br>
Unable to see more than the occasional head momentarily popping into view you think there are two people working at you, pulling tight latex over your naked body.<br>
<br>
Still distracted by the ongoing <<if $fetish.sissy>>sissification<<else>>feminisation<</if>> monologue that you have long past memorised you're simultaneously relieved and off-guard when your headphones are removed, the silence strange without the constant feminine drone that had nearly totally taken over your thoughts.<br>
<br>
<<if $player.flags.work_exec_bathroom.times_worked > 0>>
When they finally get to your arms and slide them into sheaths that have them restrained behind your back you suddenly realise what's going on.<br>
<br>
<<if $player.sec_style.submission.human_toilet != "">>
Confirmed a moment later the matching gag and hood is brought to your face — finishing your "transformation" into a human toilet ready to work a shift in the so-called "Executive Bathroom."
<<else>>
Confirmed by the matching gag and hood brought to your face you recognise the "uniform" of the human toilets in the Executive Bathroom! It looks like you're about to join them!
<</if>>
<br><br>
Finally released from your crate you are all but helpless as one of the movers takes you by the arm and leads you to an empty station. Guided down you feel the dildo slide into your ass as you take your seat, quickly bound in position with your head turned up, ready for whomever wishes to relieve themselves down your throat.<br>
<br>
The familiar squeeze bulb is pressed into one of your hands with nary an explanation.
<<else>>
Your arms are temporarily freed and then slid into sheaths in the catsuit that have them tightly bound behind your back. Moving up top a latex hood with integrated goggles and an integrated ring gag is pulled over your head, night completely encasing you in latex rubber, the only gaps your open mouth and a slit running over your privates and rear hole front to back.<br>
<br>
You're confused as to what's going on until you are finally let out of the crate, one of the movers grabbing you by the upper arm and leading you out into a tiled... bathroom?<br>
<br>
Stalls and sinks lining one side it is the other wall that draws your attention — several more people dressed in the same rubber attire as yourself bound in kneeling positions, their upturned open-mouthed faces positioned for only one thing.<br>
<br>
<<printThought "Are those... human urinals!?">><br>
<br>
Too stunned and helpless to resist you are guided to an unused seat, forced down onto your knees as a mounted dildo slides into your ass. Swiftly bound in place you are soon in the same position as the others — head tilted up, mouth open, wide-eyed with fright as the movers finish installing you.<br>
<br>
A squeeze bulb is pressed into one of your hands with nary an explanation.
<</if>>
<br><br>
Helplessly blinking up you watch the movers double check your bonds before walking away, leaving you to await your first "customer." <br>
<br>
[<<moveTo "event_work_move_6_piss_2" "Continue." 60>>]
</div>/*#
#desc: move, piss fetish scene work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'piss' 13 'normal' $INCOGNITO>>
<</if>>
<<set $player.location = "Executive Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.work_exec_bathroom.times_worked > 0>>
Sitting in the silent bathroom you almost jump out of your skin when someone finally walks in. Barely paying attention, treating you and the other "human urinals" as the objects you effectively are <<he>> walks past you to another girl seemingly at random. Relieving <<him>>self with a satisfied sigh <<he>> walks right back out without cleaning <<his>> hands!<br>
<br>
<<printThought "How unsanitary!">><br>
<br>
You can't help but laugh a little at the absurdity of your thought. Whilst certainly true it's a bit ironic given what you're certain to be drinking before too long.
<<else>>
You look around the Executive Bathroom and you await your first client...
<</if>>
<br><br>
<<if $player.sec_style.submission.human_toilet == "">>
Idly you try giving the bulb in your hand a squeeze, sputtering a bit in surprise when a trickle of urine flows down over your face, the design of things forcing it to flow down your opened mouth.
<</if>>
<br><br>
Continuing to wait your heart races when another person, a sharply dressed woman in a suit and skirt, comes in next. Stopping in front of you she hikes up her skirt to reveal a lack of panties, stepping close to unleash her stream directly through your gag.<br>
<br>
You have no choice but to swallow, distracted a little by the fact that the dildo in your rear suddenly comes alive to buzz and stimulate as she finishes up.<br>
<br>
More people cycle through the bathroom, even one woman that walks straight across only to reappear in full latex garb and take up a position without anyone there to bind her!<br>
<br>
Eventually zoning out a bit you are startled back to attention by a familiar voice.<br>
<br>
"@@.npc_manager;There you are! I have been looking all over for you!@@"<br>
<br>
[<<moveTo "event_work_move_6_piss_3" 'Blink up at your <<=setup.getNpcName("npc_manager", "title")>>.' 60>>]
</div>/*#
#desc: move, piss fetish scene rescued
#status: FINISHED 0.8.0.0
#ignore_spell: c
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Executive Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.voluntary>>
<<if $scene.experienced>>
"@@.npc_manager;You just cannot stop going on little overnight adventures, can you? If I was not so amused I might be upset at your recklessness, and the fact you have missed half a morning's worth of work!@@"
<<else>>
"@@.npc_manager;Well, well, looks like SOMEONE got in a spot of trouble. I guess you had so much fun during the move you decided to try and repeat the experience?@@" She shakes her head in bemusement. "@@.npc_manager;You know logic would state nobody would be foolish enough to lock themselves away in one of those crates but, well... I suppose it is best not to underestimate a horny <<if $fetish.sissy>>sissy<<else>>slut<</if>>, hmm?@@"
<</if>>
<<else>>
"@@.npc_manager;Sorry about all this, it seems that SOMEONE change the work order so that instead of you being delivered to my office you instead ended up working a shift here in the Executive Bathroom.@@"
<</if>>
<br><br>
<<if $npc_manager.flags.piss_drinking.available>>
<<if $player.flags.work_exec_bathroom.times_worked > 0>>
"@@.npc_manager;I guess it could be worse, nothing you aren't experienced with, right?@@"
<<else>>
"@@.npc_manager;I guess this was inevitable, anyway. Still, I would have rather helped dress you up the first time myself...@@"
<</if>>
<<else>>
"@@.npc_manager;I had hoped to give you a more... personal introduction to this sort of duty but, well, nothing I can do about that now!@@"
<</if>>
<br><br>
As she speaks you notice what, for lack of a better word, you consider a "bathroom attendant" standing next to her nervously.<br>
<br>
"@@.generic_female1;As I said, all the paperwork was in order. I don't suppose you can leave her to finish off the shift, I had counted on her for headcount this morning and, well, I'd consider it something of a personal favour. It really looks bad on our department if some C-level is forced to wait for a urinal to free up.@@"<br>
<br>
<<if $npc_manager.affection > $npc_manager.anger>>
The attendant seems to tense up waiting for a response as <<=setup.getNpcName('npc_manager', 'formal')>> instead turns towards you.<br>
<br>
"@@.npc_manager;So, how are you holding up? I can let you out now or you can finish off the shift and earn me a "favour" — it's up to you though. Waggle your tongue and give your hydration bulb a squeeze for yes.@@"<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_piss_4_accept_1" "Squeeze and waggle." _timeToLunch>>]<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Her slightest desire is your dearest wish. How could you deny such a lovely request?@@]
<<else>>
[<<moveTo "event_work_move_6_piss_4_reject" "Remain still and wait for her to free you." 60>>]
<</if>>
<<else>>
The attendant seems to tense up waiting for a response as <<=setup.getNpcName('npc_manager', 'formal')>> considers the offer, glancing at you for a moment before her expression hardens.<br>
<br>
"@@.npc_manager;You know what? Sure. She's been a bit naughty of late, another few hours should do her good to learn a bit of humility.@@"<br>
<br>
"@@.npc_manager;See you after lunch!@@" She states with a smile, walking away, the attendant following behind bearing a look of relief.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_piss_4_forced" "Continue your shift..." _timeToLunch>>]<br>
<</if>>
</div>/*#
#desc: move, piss fetish scene, agree to continue shift in Executive Bathroom
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.piss = 2>>
<<set _piss = setup.getTotalValue("piss")>>
<<applyExperience 'piss' _piss 'skip' $SEEN_STRANGER>>
<<applyExperience 'anal' 13 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Executive Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
The attendant bears a look of relief as <<he>> follows <<=setup.getNpcName('npc_manager', 'formal')>> out of your line of sight. Trying to relax you let out a sigh and drift off, resuming a half-meditative state as you spend the rest of the morning alternating between sitting bored and guzzling fresh <<getWordPiss>>.<br>
<br>
Eventually you are roused from your partial stupor by someone working at your restraints. Blinking and refocusing you recognise the attendant as they release you and help you to your feet, sliding off the anal dildo with a shlurp.<br>
<br>
"@@.generic_female1;Shift's over, let's get you back to your owner.@@" They state as they walk you towards the back of the bathroom.<br>
<br>
[<<moveTo "event_work_move_6_piss_4_accept_2" "Continue." 900>>]
</div>/*#
#desc: move, piss fetish scene, agree to continue shift in Executive Bathroom
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'catsuit_toilet' true>>
<<deleteItem 'catsuit_toilet'>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<addItem 'hollow_plug'>>
<<wearItem 'hollow_plug' true>>
<<set $scene.fixMakeup = $player.makeup.template != "" && $player.makeup.messed > 25>>
<<if $scene.fixMakeup>>
<<set $player.makeup.messed = 5>>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Executive Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Stripping you out of the latex outfit they open a locker and hand you your clothes, waiting as you dress before
<<if $scene.addCollar>>
looping a loose collar around your neck and attaching a leash to the front
<<else>>
clipping a leash to the front of your collar
<</if>>
they slide the plug back into your rear
<<if $scene.fixMakeup>>
before taking a moment to wipe the sweat off your face and then touch up your smudged makeup. You silently sigh with relief that you won't be getting in trouble with your <<=setup.getNpcName("npc_manager","title")>> for not meeting her high "representative position" standards.<br>
<br>
With a final nod the attendant leads
<<else>>
and leading
<</if>>
you out of the bathroom and off towards the elevator.<br>
<br>
<<if $npc_manager.flags.evil == 2 && !State.hasPlayed("event_rival_piss_2")>>
"@@.generic_female1;Thanks again for putting in that shift. It freed me up to supervise maintenance servicing the storage tanks. All that acid requires very precise conditions to retain its proper texture and flavour.@@"<br>
<br>
<<printThought "Storage tanks?">><br>
<br>
[<<moveTo "event_rival_piss_1" "Ask more about the use for these storage tanks." 120>>]<br>
<</if>>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<</if>>
</div>/*#
#desc: move, piss fetish scene, request to end shift early
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.move_fetish.piss < 1>>
<<set $player.flags.move_fetish.piss = 1>>
<</if>>
<<removeItem 'catsuit_toilet' true>>
<<deleteItem 'catsuit_toilet'>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<</if>>
<<set $player.location = "Executive Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> smiles gently down before signaling for the attendant to release you from your bound position.<br>
<br>
Unstrapped and helped to your feet you gasp slightly as you rise of the dildo that has been rooted in your ass all morning. The attendant departing with a curtsy you and your <<=setup.getNpcName('npc_manager', 'title')>> walk to the changing room in the rear of the bathroom where you are quickly stripped of your latex outfit and shimmy back into your clothes.<br>
<br>
With a gentle smile she
<<if $scene.addCollar>>
loops a loose collar around your neck and attaches a leash to the front
<<else>>
clips a leash to the front of your collar
<</if>>
before leading you out of the bathroom and down the hall towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='reject'>>">>]
<</if>>
</div>/*#
#desc: move, piss fetish scene forced to continue to work in Executive Bathroom
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.move_fetish.piss = 2>>
<<set _piss = setup.getTotalValue("piss")>>
<<applyExperience 'piss' _piss 'skip' $SEEN_STRANGER>>
<<removeItem 'catsuit_toilet' true>>
<<deleteItem 'catsuit_toilet'>>
<<useClothSetPop 'tmp'>>
<<set $scene.collarObj = setup.getItemObjFromType('choker')>>
<<set $scene.addCollar = !(setup.isItemTypeEquipped('choker') && $scene.collarObj.hasOwnProperty('lockable') && $scene.collarObj.tags.includes("leash_attachment"))>>
<<if $scene.addCollar>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<addItem 'hollow_plug'>>
<<wearItem 'hollow_plug' true>>
<</if>>
<<set $player.location = "Executive Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Tired and already full of piss you spend the next few hours continuing your role as a helpless human urinal. With no choice in the matter you guzzle piss, spit and cum alike as <<if $options.fem>>women<<else>>men and women both<</if>> use you for relief, the buzzing dildo in your ass your only solace.<br>
<br>
By the time the attendant returns to let you out you are exhausted and broken, barely rising off the dildo to stagger to your feet.<br>
<br>
"@@.generic_female1;Come along@@" she notes with barely a trace of a compassion, grabbing hold of your arm and dragging you towards the back of the bathroom.<br>
<br>
Stripping you out of the latex outfit she opens a locker and hands you your clothes, waiting as you dress before
<<if $scene.addCollar>>
looping a loose collar around your neck and attaching a leash to the front
<<else>>
clipping a leash to the front of your collar
<</if>>
the "shipping" plug is slid slide back into your rear and then you are off, following on the leash as you are led out of the bathroom and towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='forced'>><<removeItem 'hollow_plug' true>><<deleteItem 'hollow_plug'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "<<set $scene.intro='forced'>><<removeItem 'hollow_plug' true>><<deleteItem 'hollow_plug'>>">>]
<</if>>
</div>/*#
#desc: ask about company piss storage
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<div id="invframe" class="scrolltext">
You ask the attendant what she means by storage?<br>
<br>
"@@.generic_female1;Exactly that. While most of what is deposited in the executive bathroom is consumed by workers like yourself, we also skim off a portion for other uses, mainly for managers who wish to keep their slave's hydrated, but cannot afford to spare them for an entire shift. In addition to managing, and working, the executive bathroom, I am responsible for coordinating the storage and deliveries of many gallons of both hot and cold <<getWordPiss>> all over the building.@@"<br>
<br>
She leads you into the elevator and taps the button for <<=ps(setup.getNpcName("npc_manager","formal"))>> floor.<br>
<br>
[<<moveTo "event_rival_piss_2" 'Ask if the attendant could make a secret delivery to <<=setup.getNpcName("npc_rival","formal")>> on your behalf...' 60>>]<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 180 "<<set $scene.intro='forced'>><<removeItem 'hollow_plug' true>><<deleteItem 'hollow_plug'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 180 "<<set $scene.intro='forced'>><<removeItem 'hollow_plug' true>><<deleteItem 'hollow_plug'>>">>]
<</if>>
</div>/*#
#desc: ask about company piss storage alt
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Executive Bathroom on Floor 83">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
You ask the attendant what the company does with the stored piss?<br>
<br>
"@@.generic_female1;So, in addition to the executive bathrooms we need to keep a supply for other uses, mainly for managers who wish to keep their slave's hydrated, but cannot afford to spare them for an entire shift. In addition to managing, and working, the executive bathroom, I am responsible for coordinating the storage and deliveries of many gallons of both hot and cold <<getWordPiss>> all over the building.@@"<br>
<br>
She has finished changing and is about to kneel down and turn herself into a human urinal...<br>
<br>
[<<moveTo "event_rival_piss_2" 'Ask if the attendant could make a secret delivery to <<=setup.getNpcName("npc_rival","formal")>> on your behalf...' 60>>]<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Head back to your desk and resume working." 60>>]
</div>/*#
#desc: ask about company piss storage
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 1, 14, 0)>>
<<addWorkEvent 'rival_piss_aftermath' _nextDate>>
<<if $scene.fromExecutive && $player.sec_style.submission.human_toilet == "money">>
<<set $scene.credits = 10*random(1,10)>>
<<addCredits $scene.credits>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fromExecutive>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<<else>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<</if>>
<div id="invframe" class="scrolltext">
Cautiously, you ask the attendant what she thinks about <<=setup.getNpcName("npc_rival","formal")>> and she looks at you in slight surprise at the non sequitor, and then snorts.<br>
<br>
"@@.generic_female1;That puffed-up jerk? Let me tell you, things were a lot smoother when <<=setup.getNpcName("npc_manager","other")>> was in charge. Now sure, I work in a different department, but I can tell the vibe of the company by the traffic in the executive bathrooms and the number of requests I get. Ever since <<=setup.getNpcName("npc_rival","formal")>> took over I've been scrambling to cover shifts, and that means lines, and that means people aren't going to bother using the executive bathrooms... which means there's less to divert to storage. Meanwhile, requests for deliveries are way up since all the piss-addicts need their fix, even if they can't come in to work. It's gotten so chaotic that we've had a number of mis-deliveries, but there's little I can do about it when I'm spending half my time filling in as a human toilet, myself!@@"<br>
<br>
You point out that a "misdelivery" to <<=setup.getNpcName("npc_rival","formal")>> might be the personal impact that could get <<him npc_rival>> to acknowledge the problem.<br>
<br>
"@@.generic_female1;Hmm... not a bad idea, nobody would be able to tell it was intentional, and even if nothing changed, well, the thought of that jerk choking down some hot <<getWordPiss>> makes me smile. Hell, even if <<he npc_rival>> decided to take revenge, what's <<he npc_rival>> going to do? Assign me more overtime?@@" The attendant laughs, "@@.generic_female1;so silly how management delights in turning us into perverts... but then thinks that the same activities we now long for could act as punishment! Bound on my knees, guzzling <<getWordPiss>>? That's practically a vacation, especially compared to all the logistics stuff I'm responsible for the rest of the time.@@"<br>
<br>
<<if $scene.fromExecutive>>
You thank the woman as she finishes settling in for her shift, and you head back to your desk<<if $player.sec_style.submission.human_toilet == "money">>, finding you usual envelope with <<=$scene.credits>> credits<</if>>.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Resume working." 60>>]
<<else>>
The elevator dings for your floor and the attendant leads you up the hall towards <<=ps(setup.getNpcName("npc_manager","formal"))>> office.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 120 "<<set $scene.intro='forced'>><<removeItem 'hollow_plug' true>><<deleteItem 'hollow_plug'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 120 "<<set $scene.intro='forced'>><<removeItem 'hollow_plug' true>><<deleteItem 'hollow_plug'>>">>]
<</if>>
<</if>>
</div>/*#
#desc: forget chastity in stage 4
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<<addItem 'wrist_cuffs_steel'>>
<<wearItem 'wrist_cuffs_steel' true>>
<<completeTask 'manager_morning_inspection_task' false>>
<<if $currentTasks.hasOwnProperty('task_uniform_upgrade') && !$currentTasks.task_uniform_upgrade.finished && setup.daysToDate($now, setup.getTaskDueDate('task_uniform_upgrade')) == 0>>
<<postponeTask 'task_uniform_upgrade' 1>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<if $npc_sissy_secretary.stage >= 5>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<<else>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $npc_sissy_secretary.stage >= 5>>
You board the elevator at the same time as <<=setup.getNpcName("npc_sissy_secretary","first")>> who greets you with a smile.<br>
<br>
"@@.npc_sissy_secretary;Another fun day at work!@@" She says with a smile. "@@.npc_sissy_secretary;Oh, I'm so happy you got promoted to the upper floors as well, it's just so much better to be able to work all out, all the time!@@"<br>
<br>
You nod as the elevator door closes.
<<else>>
You board the elevator alone, waiting for the door to close and it to transport you to your stratospheric office.
<</if>>
<br><br>
Rather than slide into motion as normal the lights change to a red alarm sequence as a mechanical voice coming over the speakers. "@@.npc_ai;<<uc "Security anomaly detected. Prepare for re-routing.">>@@"<br>
<br>
<<if $npc_sissy_secretary.stage >= 5>>
"@@.npc_sissy_secretary;What?@@" she starts to say in confusion only for the elevator to cut her off, dropping so fast your stomach rises into your throat.
<<else>>
You have only a moment to fearfully wonder what is going on before the elevator zips into motion, dropping so fast your stomach rises into your throat.
<</if>>
A few moments later the elevator lurches to a stop, leaving you too disoriented to react as the doors open and two masked security personnel rush into the chamber.<br>
<br>
<<if $npc_sissy_secretary.stage >= 5>>
Any objection is silenced as large phallic gags are shoved into both your and <<=setup.getNpcName("npc_sissy_secretary","first")>> mouths, her expression fluttering as she reflexively moans at the violation. Your wrists are cuffed behind your back you are pressed against the wall as the security personnel take a moment to assess the situation.<br>
<br>
"@@.generic_male1;This one's secure,@@" comes the ominous mask-modified sound of the guard restraining <<=setup.getNpcName("npc_sissy_secretary","first")>>.<br>
<br>
"@@.generic_male2;This one is <<if setup.checkItemTypeWorn("cage")>>insufficiently restrained<<else>>unrestrained<</if>>@@" responds the guard holding you, <<if $player.body_ref.penis>>your un-chastity'd <<getWordMyPenis>> pressing against the wall of the elevator making you<<else>><<his>> hand between your legs, practically fingering your tight snatch, makes you<</if>> realise exactly what they're talking about.<br>
<br>
"@@.generic_male1;Get her taken care of.@@" The other guard replies, "@@.generic_male1;I'll administer a remedial treatment so that this one doesn't get any ideas about fraternising with rule-breakers. Then she can go back to work.@@"<br>
<br>
The guard pulls out a menacing stun baton, flipping up <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> skirt and pressing the baton against the back of her <<=setup.getItemName('sissyomatic')>> before pulling the trigger.<br>
<br>
Electricity arcs and <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> entire body thrashes as your gaze is drawn to her lust-glazed eyes as she pants through the gag.<br>
<br>
<<printThought "Is she getting off on this? Well... not too much of a surprise, I suppose.">><br>
<br>
You don't get any more chance to watch your friend's treatment as you are dragged out of the elevator and marched a short distance up the hall and pushed into an exam room.
<<else>>
You have only a moment to fearfully wonder what is going on before the elevator zips into motion, rising so fast your stomach feels somewhere around your tonsils. A handful of seconds later the elevator lurches to a stop, leaving you too disoriented to resist as a security guard rushes through the opening door.<br>
<br>
A large phallic gag is shoved down your throat to silence your objection and your wrists are cuffed behind your back as you are pressed up against the wall of the elevator.<br>
<br>
"@@.generic_male1;Totally unsecured,@@" the guard notes, <<if $player.body_ref.penis>>your un-chastity'd <<getWordMyPenis>> pressing against the wall of the elevator making you<<else>><<his>> hand between your legs, practically fingering your tight snatch, makes you<</if>> understand what <<hes>> talking about. "@@.generic_male1;Come on, let's get you properly attired for work.@@" <<He>> continues, pulling you away from the wall and marching you up the hall.<br>
<br>
Bound and gagged you can do little but obey <<his>> lead and you are soon pushed into an exam room.
<</if>>
<br><br>
[<<moveTo 'event_inspection_stage4_nochastity_2' 'Continue.' 300>>]
</div>/*#
#desc: forced into chastity in stage 4
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'wrist_cuffs_steel' true>>
<<deleteItem 'wrist_cuffs_steel'>>
<<set $scene.wrongChastity = setup.checkItemTypeWorn("cage")>>
<<if $scene.wrongChastity>>
<<set $scene.wrongType = setup.isCage()>>
<</if>>
<<set $npc_manager.stagevalues[4].force_chastity = true>>
<<set $scene.firstSissyomaticUnlock = $player.sec_style.submission.sissyomatic == "">>
<<if $scene.firstSissyomaticUnlock>>
<<set $player.sec_style.submission.sissyomatic = "strict">>
<</if>>
<<include "sissyomaticUnlocks">>
<<include "setLastSeenCage">>
<<if $fetish.tattoos>>
<<set $player.tattoos.arm = "test_arm">>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to 'Exam Room.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png">>
<div id="invframe" class="scrolltext">
Alone in the exam room you don't have long to wait before the door opens, a latex-clad nurse stepping into the room flanked by two large, ominous security guards.<br>
<br>
With your arms restrained, you cannot hope to resist as the <<men>> casually lift you up and place you onto an exam chair, strapping you securely down as the nurse starts a video playing on a monitor in the upper corner of the room while she wheels over a tray and begins unpacking her things.<br>
<br>
The video finds you looking at a recording of <<=setup.getNpcName("npc_work_doctor","formal")>> as <<he npc_work_doctor>> grins at the camera and begins to speak.<br>
<br>
<<if $scene.wrongChastity>>
"@@.npc_work_doctor;And just how did you extricate yourself from your company-issued device?@@" <<He npc_work_doctor>> states with a sneer as <<he npc_work_doctor>> removes your chastity <<if $scene.wrongType>>cage<<else>>belt<</if>> with dismissive annoyance. "@@.npc_work_doctor;See how insecure this is? Terrible, no, you are company property, and are to be locked as such.@@"<br>
<br>
The nurse finishes unpacking a familiar <<=setup.getItemTypeName("cage")>> and <<=setup.getNpcName("npc_work_doctor","formal")>> chuckles. "@@.npc_work_doctor;We'll have you back like you belong in a jiffy...@@"
<<else>>
"@@.npc_work_doctor;Welcome to your final moments of so-called freedom. Your failure to ascribe to contract-required security measures has auto-enrolled you in the trial program for our new <<=setup.getItemTypeName('cage')>>. Once production spins up this will become mandatory for all upper-floor subordinate staff for better safety and control but for now, well... your failure to follow instructions has granted you a head start towards a more secure future!@@"<br>
<br>
The nurse has finished unpacking and you look over to see one of the most intimidating
<<if setup.isCage()>>
chastity cages you've ever seen. In addition to securely wrapping "the goods" in high tech material it goes further to incorporate a hollow rear plug
<<else>>
chastity belts you've ever seen. In addition to the secure, sleek front panel the rear is accessorised with a <<if $player.body_ref.vagina>>vaginal insert and a <</if>>hollow anal plug.
<</if>>
<</if>>
<br><br>
You hold your breath as the nurse turns back to you, <<if $scene.plugged>>removing the <<=setup.getItemName($scene.plug)>> from your rear and <</if>>spreading thick lube inside your rear hole.<br>
<br>
Working efficiently the nurse starts at the front.
<<if $player.body_ref.penis>>
There is a weird tingling as you deflate completely, your shrunken <<getWordMyPenis false>> perfectly fitting into its new prison — shaft<<if $player.body_ref.balls>> and testicles each<</if>> ensconced into its own private chamber. <<if $player.body_ref.vagina>>As if that wasn't enough the vaginal insert seats into position as well, just before<<else>>Finally,<</if>> she reaches down and slides the narrow plug into your rear.
<<else>>
You gasp as the vaginal insert is applied, additional nubs surrounding and shielding your clit as the sleek front shield is secured. You have yet to recover from this first violation when she slides the narrow plug into your rear.
<</if>>
<br><br>
You gasp as the plug swells, the video seemingly timed exactly to this moment.<br>
<br>
"@@.npc_work_doctor;The plug now secured inside your naughty hole is filled with every feature you could need — vibrations, shocks, it can even change size and shape while simultaneously being designed to remain in place while your hole is put to use by others. Yes, prior trials has shown test subjects soon growing practically addicted to their new friends. Which is good since removing it at any time is grounds for severe disciplinary action.@@"<br>
<br>
<<printThought "Wait, I'm not just locked in chastity, I'm going to have this thing locked in my ass, too?">><br>
<br>
<<if $fetish.sounding>>
Before you can dwell any further on your new anal occupant you are penetrated from the other direction. The nurse slides a thin rod up your urethra and you shudder at the intimate violation, feeling it slide deeper and deeper until she twists it into place and it somehow melds seamlessly into the front of the chastity device.<br>
<br>
<</if>>
"@@.npc_work_doctor;Alright, test subject, you are just about ready to be sent back to work — I will leave your owner/manager to introduce you to the full, exciting suite of features locked in and around you but first there is a quick systems test to make sure everything has been installed properly.@@"<br>
<br>
<<if $fetish.tattoos>>
The nurse takes hold of your arm and brings another tool towards your bare flesh. "@@.npc_work_doctor;Speaking of Test Subjects... how about a little reminder, hmm?@@"<br>
<br>
You scream in agony as whatever device she is holding makes your arm explode in pain... as you watch it tattoo the words "TEST SUBJECT" into your skin...<br>
<br>
Before you can even recover from this distraction she then
<<else>>
The nurse
<</if>>
connects some sort of battery in between your legs and everything bursts into life for a few seconds.<br>
<br>
Shocks pulse<<if $player.body_ref.balls>> through your testicles and<</if>> deep into <<if $player.body_ref.vagina>>both of your holes<<else>>your bum<</if>> even as the plug swells and powerful vibrations thunder<<if $player.body_ref.penis>> about your <<getWordMyPenis>> and<</if>> through your rear.<br>
<br>
Your large gag silences your overwhelmed howl as you strain in futility against your restraints.<br>
<br>
"@@.npc_work_doctor;All systems confirmed working!@@" The recording notes. "@@.npc_work_doctor;Thank you, again for volunteering for the trial and enjoy your new, more efficient, work.@@"<br>
<br>
The nurse leaves the room first while the security guards release your straps and help you back to your feet. Feeling drained, cowed, and violated you put up no resistance as you are marched back to the elevator.
<<if $scene.fromStage5transition>>
Escorted by a guard, you are returned not to your office, but to your cell, another layer of imprisonment...<br>
<br>
[<<moveTo "event_stage_5_transition_monday_night_2" "Continue." 300>>]
<<else>>
Riding back up all you can think about is the sleek, perfectly-fitted device now locked onto you, your pulse quickening as the security guards lead you up the hall to <<=setup.getNpcName("npc_manager","formal")>> office...<br>
<br>
[<<moveTo 'event_inspection_stage4_nochastity_3' 'Continue.' 300>>]
<</if>>
</div>/*#
#desc: forced into chastity in stage 4
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc.">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Flanked by security guards you are marched into <<=ps(setup.getNpcName("npc_manager","formal"))>> to find her waiting for you with a slight grin.<br>
<br>
<<if $scene.fromInterview>>
She dismisses the security guards with a wave, pausing once they are gone to shake her head. "@@.npc_manager;Showing up to your interview without chastity? Quite foolish... though, I suppose, you have well learned that fact by now. No reason to cry over spilt milk, let us discuss how you did in the interview...@@"<br>
<br>
You gulp, it feels like this morning is going on forever...<br>
<br>
<<switch $player.flags.resume.interview>>
<<case "perfect">>
"@@.npc_manager;Despite the post-interview hiccup you seem to have quite impressed, as I knew you would. You absolutely deserved the raise, and I thank you for doing such a superb job in sorting out this whole paperwork kerfuffle. You really are my perfect <<if $fetish.sissy>>SISSI <</if>>Secretary, and I am very glad to have you...@@"<br>
<br>
You blush slightly at her gushing words as she looks at you with a smile. "@@.npc_manager;With all that said, this whole interview thing has cost quite a few good working hours. Fortunately I know you are more than equipped to catch up, so I will leave you to it, thank you again and remember to sit tall — if you had any doubts about yourself having come to your position through probation and the rest well... I think today's assessment puts that all to bed.@@"
<<case "success">>
"@@.npc_manager;I suppose congratulations are in order. I knew you were quite qualified to serve my needs but... it is always nice to have these sorts of things confirmed, hmm? In any case, well done at putting in the work to sort out this paperwork error cleanly. Now, well... back to work! After all, you need to catch up for missing the morning, but I have every confidence you are up to the task.@@"<br>
<<case "positive">>
"@@.npc_manager;While I had hoped you might do a bit better, you cleaned up this little paperwork error, and I suppose that is the important thing. I wish you had expended a bit more effort in the process, but it was sufficient. Now, you had better hurry on back to your desk, you have nearly a whole morning's work to catch up on!@@"
<<case "nothing">>
"@@.npc_manager;I suppose I can credit you with cleaning up this paperwork issue — even if you seem to have failed to take the matter seriously, well... you have missed most of the morning, best get to work and try to catch up.@@"
<<case "fail">>
<<=setup.getNpcName("npc_manager","formal")>> sighs.<br>
<br>
"@@.npc_manager;You know you gave me quite the scare today? I saw the results of your failure and I thought I was about to be out a secretary... only for <<=setup.getNpcName("npc_boss","formal")>> to step in with that executive override... I warn you, these things come at a cost, but we will deal with that later. For now, you had best return to your station, you have the better part of a morning's work to catch up on.@@"
<<default>>
ERROR: unexpected player.flags.resume.interview <<=$player.flags.resume.interview>>
<</switch>>
<br><br>
She dismisses you from her office and you return to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Back to work." 300>>]
<<else>>
She dismisses the security guards with a wave and then steps towards you.<br>
<br>
<<if $npc_manager.trigger.forgotten_cage>>
"@@.npc_manager;After all this time, what could have gotten into your head to forget your chastity device...@@"
<<else>>
"@@.npc_manager;So, you forgot your chastity device for the last time...@@"
<</if>>
Her hand reaches down to press against your new chastity through your clothes; the device works perfectly in that you feel effectively nothing.<br>
<br>
<<if $player.sec_style.submission.sissyomatic == "strict">>
"@@.npc_manager;Well, no matter. I had hoped that I might be directly involved in you making this final upgrade but you are secure and that is what is important. Note that for reasons of patent security and such that device is not allowed to be removed.@@" Your heart skips a beat and she removes the gag. "@@.npc_manager;Tut, tut, no need to say anything. Let us just put this whole thing behind us and move on to your morning inspection.@@"<br>
<br>
<</if>>
<<switch $npc_manager.stage>>
<<case 4>>
[<<moveTo "event_manager_daily_check_stage_4" "Begin inspection." 120 "<<set $scene.directInspection=true>>">>]
<<case 5>>
<<if $npc_manager.flags.evil == 1>>
[<<moveTo "event_manager_daily_check_stage_5_evil" "Begin inspection." 120 "<<set $scene.directInspection=true>>">>]
<<else>>
[<<moveTo "event_manager_daily_check_stage_5" "Begin inspection." 120 "<<set $scene.directInspection=true>>">>]
<</if>>
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<</if>>
</div><<if $npc_manager.stage >= 4 && $npc_sissy_secretary.stage >= 4 && $npc_sexdoll.stage >= 4 && $npc_hucow.stage >= 4 && $npc_futa.stage >= 4 && $npc_pr_sissy.stage >= 4 && $npc_development.stage >= 5 && $npc_development.flags.class < 1 && !$workEvents.hasOwnProperty('event_class_0') && ($player.virgin.anal || ($player.virgin.pegged && $fetish.pegging_is_anal))>>
<<addWorkEvent 'event_class_0'>>
<</if>>/*#
#desc: return from errand to meet manager and development
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You return from your errand to find <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office door open with her and <<=setup.getNpcName("npc_development","formal")>> seemingly waiting for you.<br>
<br>
"@@.npc_manager;Welcome back,@@" <<=setup.getNpcName("npc_manager","formal")>> states in greeting as you drop into a polite curtsy of acknowledgement. "@@.npc_manager;<<=setup.getNpcName("npc_development","formal")>> was just informing me of a new opportunity for you... and one that, frankly, you are a bit overdue for.@@"<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> graces you with a friendly smile and you wait to see what new "surprise" is in store for you.<br>
<br>
"@@.npc_development;As you know, I am responsible for spearheading employee development for the company. At Social Interaction Service Syndicate we firmly believe that our most important asset is our talented staff — and we place great importance on ensuring they have all of the skills they need to succeed. Obviously <<=setup.getNpcName("npc_manager","other")>> took a very hands-on approach in your development, but learning is a eternal process and now, well...@@" She grins as she walks towards you. "@@.npc_development;To put it simply. It is time for you to go back to school...@@"<br>
<br>
You reflexively gulp. From her long legs to her perfect makeup and, most of all, the amazing pair of breasts that somehow never escape her low-cut top, <<=setup.getNpcName("npc_development","formal")>> is enough to make anyone hot for teacher. She smiles at you as <<=setup.getNpcName("npc_manager","formal")>> takes over the explanation.<br>
<br>
"@@.npc_manager;You see there are certain requirements when it comes to being an executive assistant on the upper floors. Thus far you have been getting by on my authority but... well, it is something of a poor example for me to make an exception, and <<=setup.getNpcName("npc_development","formal")>> is about to start a new orientation cycle including several of your acquaintances. It thus seemed the perfect opportunity to move you further along in your development in what you might consider the "graduate course" version of A-SLUT by enrolling you in her wonderful advanced "employee development" program.@@"<br>
<br>
[<<moveTo "event_school_intro_2" "Ask what this class will entail?" 180 "<<set $scene.object=false>>">>]<br>
[<<moveTo "event_school_intro_2" "Ask if you have to take time away from work?" 180 "<<set $scene.object=true>>">>]
</div>/*#
#desc: class explained
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.object>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.object>>
You ask if you can't just stick with your work? After all, things have been busy enough since the move to the upper floor...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> sighs and shakes her head. "@@.npc_manager;No, I am afraid not. As I mentioned a moment ago, you are already overdue for this training. Plus, for as far as you have come... there is still much you have left to learn and, even if I had the time to devote to it, it is useful to learn from multiple sources for greater perspective. To rectify your situation, and adhere to company requirements, you will be accompanying <<=setup.getNpcName("npc_development","formal")>> to get you fitted for your uniform — classes proper will commence every Monday morning and continue for the next month. I advise you to rest up each weekend so that you can be a perky pupil, and have energy left over to keep up with your normal duties. Now, if you would please accompany <<=setup.getNpcName("npc_development","formal")>> — she needs to fit you for your uniform so that you can be properly dressed come Monday morning when you have your first class.@@"
<<else>>
You enthusiastically ask what will be involved in this "employee development" course?<br>
<br>
"@@.npc_manager;Nothing you are not ready for, but skills that will certainly aid you in excelling in your ongoing career. <<=setup.getNpcName("npc_development","formal")>> is quite the skilled instructor and it will be good for you to get some additional perspective... maybe even serve as an example for some of your fellow students. Now, if you would please accompany <<=setup.getNpcName("npc_development","formal")>> — she needs to fit you for your uniform so that you can be properly dressed come Monday morning when you have your first class.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_development","formal")>> smiles and takes you by the hand, "@@.npc_development;Come along, my dear. You are going to just ADORE your new uniform.@@"<br>
<br>
You glance back as you follow her out of the room, <<=ps(setup.getNpcName("npc_manager","formal"))>> smile reminding you of how much of a role "uniform enhancements" have played in your development from dead-end IT worker to femme and fabulous <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
[<<moveTo "event_school_intro_3" "Continue." 600>>]
</div>/*#
#desc: uniform measurement
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Hand in hand you follow <<=setup.getNpcName("npc_development","formal")>> up the hall and down a handful of floors and then to a very curious classroom.<br>
<br>
At first glance things look almost quaint — half a dozen individual desks facing an old-fashioned blackboard, but then you walk past one of the desks and notice the dildo sprouting from the seat, and the heavy construction that features built in cuffs and attachment points.<br>
<br>
Noticing your attention <<=setup.getNpcName("npc_development","formal")>> smiles and pulls you forward. "@@.npc_development;Now, now, do not get distracted — you will have plenty of time to re-experience the joy of being a student soon, but to get the maximum function out of class you must be dressed properly — which means we need to get you sized!@@"<br>
<br>
You remind her that you already tried on one of her "school uniforms" but she just rolls her eyes. "@@.npc_development;That? That was just a prototype, the real thing is much nicer... and it will fit tighter if we get you measured first. So quit dawdling and get naked — I do not want anything getting in the way of taking perfect measurements!@@"<br>
<br>
Though you're pretty certain the company already has every one of your measurements you could think of you decide it is best not to start your academic career on the teacher's bad side. Besides, it isn't like you are not well-practiced by now with removing your clothes in front of dominant female superiors.<br>
<br>
[<<moveTo "event_school_intro_4" "Strip." 600>>]
</div>/*#
#desc: uniform measurement — strip
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You start shedding clothes but <<=setup.getNpcName("npc_development","formal")>> does not let you stop at the underwear, instead nodding for you to continue and not approaching with the measuring tape until you are down to nothing at all.<br>
<br>
"@@.npc_development;Very good.@@" She states as she unfurls the tape. "@@.npc_development;Now suck in that cute tummy — you do not want to go through all this trouble of measuring only to get sloppy and end up with something baggy!@@"<br>
<br>
Driving her point home she pulls the ribbon tight enough around your belly to dig into your skin. You do not see her write anything down and you half wonder if this is just her tormenting you as she moves up your torso to take half a dozen additional measurements. Enhancing the "teasing" theory she follows up by measuring through the crotch — pulling the ribbon into your crack hard enough to give you a metaphorical wedgie before giving you a slap on the ass and stepping away.<br>
<br>
"@@.npc_development;There we go!@@" she states. "@@.npc_development;All the measurements I need. If you would get dressed you may return to work on your own — I trust you can find the way?@@"<br>
<br>
You nod and begin to gather you clothes as you contemplate the sort of outfit would require that particular set of measurements.<br>
<br>
"@@.npc_development;Very good! As for me, well, I need to do some more preparation for class! Oh, I am so looking forward to having you as my student!@@"<br>
<br>
[<<moveTo "event_school_intro_5" "Finish getting dressed and return to work." 600 "<<set $scene.tease=false>>">>]<br>
[<<moveTo "event_school_intro_5" "Ask if you might get a jump on your studies?" 600 "<<set $scene.tease=true>>">>]
</div>/*#
#desc: uniform measurement — leave
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.tease>>
<<applyExperience 'bimbofication' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<</if>>
<<useClothSetPop 'tmp'>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 1, 8, 0, false)>>
<<addEvent 'event_class_1' _tmpDate>>
<<set $npc_development.flags.class = 1>>
<<registerProgressionEvent>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.tease>>
As you finish slipping back into your clothing you flutter your eyelashes and ask if you could get a "head start" on your studies?<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> chuckles softly, but shakes her head. "@@.npc_development;I love the enthusiasm but <<=setup.getNpcName("npc_manager","other")>> will surely be expecting you back soon. Experience is one of the best teachers and the more you focus on your work, well, the better you will be positioned to succeed in my class. See you on Monday!@@"
<<else>>
You quietly finish getting back into your clothes as <<=setup.getNpcName("npc_development","formal")>> looks on. "@@.npc_development;Hmm, it really is a tough call whether you look better clothed or naked — <<=setup.getNpcName("npc_manager","other")>> has done quite the job with your training thus far, but I hope I can refine it even further. See you on Monday!@@"
<</if>>
<br><br>
You tell her you are looking forward to class and leave, swiftly returning to your desk and your duties.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: first class - meet fellow students
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() != 1>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 1, 8, 0, false)>>
<<addEvent 'event_class_1' _tmpDate>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary_work_morning_start">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Your inspection complete <<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Very good, and now, as I am sure you were excitedly anticipating, it is time for your first class. I know it is frustrating to be put behind on work with these sorts of mandatory corporate trainings, but trust me, <<=setup.getNpcName("npc_development","formal")>> has more than earned her position and completing her course will make you a much better <<if $fetish.sissy>>SISSI <</if>>Secretary in the long run. Have a wonderful, educational morning and I will see you at lunch.@@"<br>
<br>
[<<moveTo "event_school_1_2" "Head to class." 600>>]
</div>/*#
#desc: first class - meet students
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false)>>
<div id="invframe" class="scrolltext">
You travel down to the classroom to find that your fellow students have already arrived and are in the process of changing into their "uniforms." You are surprised to find that you already recognise all of the other students — <<=setup.getNpcName('npc_sissy_secretary', 'first')>>, <<=setup.getNpcName('npc_sexdoll', 'first')>>, <<=setup.getNpcName('npc_hucow', 'first')>>, <<=setup.getNpcName('npc_pr_sissy', 'first')>> and <<=setup.getNpcName('npc_futa', 'first')>> — fellow employees whose employment arcs have, in a variety of ways, mirrored your own.<br>
<br>
Struggling somewhat to have her skirt properly "cover" things <<=setup.getNpcName('npc_futa', 'first')>> looks up at you with a smile before taking her seat — twin dildos sliding into her holes as she gasps. "@@.npc_futa;Hey, small world! Better hurry and get changed — don't wanna be out of sorts on the first day of school!@@"<br>
<br>
A school uniform draped over what you presume is your desk, your other friends greet you in turn — <<=setup.getNpcName('npc_sissy_secretary', 'first')>> already seated and grinding on her dildo and uselessly squeezing her <<=setup.getItemName('sissyomatic')>>. You wonder if <<=setup.getNpcName('npc_pr_sissy', 'first')>> and <<=setup.getNpcName('npc_sexdoll', 'first')>> know something you do not as they are both already cuffed to their desks by ankle and wrist leaving them unable to do anything about the fact their short skirts have slipped up to reveal stiff excitement.<br>
<br>
Rounding things out <<=setup.getNpcName('npc_hucow', 'first')>> is, what else, fondling her breasts, teasing her hard nipples through her top and occasionally licking her fingers clean of the resulting dribbles of milk.<br>
<br>
Feeling a bit behind you hurry to grab your uniform, noting that there appears to be nowhere private to change.<br>
<br>
[<<moveTo "event_school_1_3" "Get changed." 300>>]
</div><<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.plug = setup.getItemFromType("hollow_plug")>>
<<if $scene.plug && (!setup.checkItemTypeWorn("cage") || setup.getChastityLevel() != 5)>>
<<addItem 'school_plug'>>
<<wearItem 'school_plug' true>>
<<else>>
<<set $scene.plug = ''>>
<</if>>
<<addItemSet 'schoolgirl_scandalous'>>
<<wearItemSet 'schoolgirl_scandalous'>><<removeItemSet 'schoolgirl_scandalous'>>
<<deleteItemSet 'schoolgirl_scandalous'>>
<<if setup.checkItemWorn("school_plug") && !$npc_development.flags.smart_class>>
<<removeItem 'school_plug' true>>
<<deleteItem 'school_plug'>>
<</if>>
<<if $scene.plug && $scene.plug != "school_plug">>
<<wearItem $scene.plug true>>
<</if>>
<<useClothSetPop 'tmp'>>/*#
#desc: first class - get changed
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "dressScandalousSchoolgirl">>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false)>>
<div id="invframe" class="scrolltext">
A few minutes after you have stripped and changed into the skimpy schoolgirl combo of top, skirt, and stockings you taken a
<<if $player.body_ref.vagina>>
seat — a seat that has been prepared for you with a dildo for each hole<<if setup.checkItemTypeWorn("cage")>>, your chastity belt wirelessly interfacing similar to your work chair to allow you to settle in<</if>>.
<<else>>
seat, atop an ass-filling dildo of your own.
<</if>>
You look around to similarly situated fellow students to see that <<=setup.getNpcName('npc_futa', 'first')>> seems to be getting impatient. Glancing up at the clock she rises to her feet with a dual "shlurp" the sopping dongs and wet seat speaking to her arousal almost as much as her flipped-up skirt displaying her hard and dripping <<getWordPenis false>>.<br>
<br>
Making her way over to the helplessly bound <<=setup.getNpcName('npc_sexdoll', 'first')>>, <<=setup.getNpcName('npc_futa', 'first')>> puts one leg up on the desk before shoving her <<getWordPenis false>> into the other girl's mouth — a gift that <<=setup.getNpcName('npc_sexdoll', 'first')>> responds to by sucking eagerly as she bounces on her anal occupant.<br>
<br>
You look around at the other three students, but they are, respectively, bound in position, distracted by their own tits, and seemingly too nervous to get up and do anything.<br>
<br>
<<printThought '<<=setup.getNpcName("npc_development","formal")>> could get here at any moment... those two are busy but the opportunity for some pre-class fun is really tempting...'>><br>
<br>
[<<moveTo "event_school_1_4" "Sit obediently for your teacher to arrive." 300 "<<set $scene.action_1='sit'>>">>]<br>
[<<moveTo "event_school_1_4" 'Take advantage of <<=setup.getNpcName("npc_pr_sissy", "first")>>.' 300 "<<set $scene.action_1='pr_sissy'>>">>]<br>
[<<moveTo "event_school_1_4" "Play it safe and cuff yourself to your seat." 300 "<<set $scene.action_1='bound'>>">>]<br>
[<<moveTo "event_school_1_4" 'Have some fun with <<=setup.getNpcName("npc_sissy_secretary", "first")>>, your fellow Secretary.' 300 "<<set $scene.action_1='sissy_secretary'>>">>]<br>
[<<moveTo "event_school_1_4" 'See if you can play with <<=ps(setup.getNpcName("npc_hucow", "full"))>> big, beautiful tiddys.' 300 "<<set $scene.action_1='hucow'>>">>]
</div>/*#
#desc: first class - fool around before class
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_development.call = $npc_development.title>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false)>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case 'sit'>>
You remain obediently at your desk — knees together, hands on your desk, sitting tall with the dildo in your ass, trying not to get too distracted by the enthusiastic face-fucking blowjob going on a couple meters away.<br>
<br>
"@@.npc_futa;That's the stuff...@@" <<=setup.getNpcName('npc_futa', 'first')>> groans, one hand gripping <<=setup.getNpcName('npc_sexdoll', 'first')>> by the hair as she really goes to town on the girl's throat. "@@.npc_futa;I wonder if we can get your seat moved under mine, these lips around my cock would really help me focus on my lessons...@@"<br>
<br>
"@@.npc_sexdoll;Yeff!@@" <<=setup.getNpcName('npc_sexdoll', 'first')>>, moans around the muffling throat-swelling intruder, clearly turned on by this idea as she strains playfully against her bonds.<br>
<br>
You grind on the dildo in your own ass, feeling a bit jealous as <<=setup.getNpcName('npc_futa', 'first')>> approaches climax... only to be interrupted by <<=setup.getNpcName('npc_development', 'formal')>> walking into the room.
<<case 'bound'>>
Though tempted by the sucking sounds nearby, you focus on yourself, snapping the cuffs around your wrists and ankles to bind you to the chair. Unfortunately restraining yourself only serves as a distraction for so long and once secured you find your attention drifting towards <<=setup.getNpcName('npc_futa', 'first')>> once again...<br>
<br>
"@@.npc_futa;That's the stuff...@@" <<=setup.getNpcName('npc_futa', 'first')>> groans, one hand gripping <<=setup.getNpcName('npc_sexdoll', 'first')>> by the hair as she really goes to town on the girl's throat. "@@.npc_futa;I wonder if we can get your seat moved under mine, these lips around my cock would really help me focus on my lessons...@@"<br>
<br>
"@@.npc_sexdoll;Yeff!@@" <<=setup.getNpcName('npc_sexdoll', 'first')>>, moans around the muffling throat-swelling intruder, clearly turned on by this idea as she strains against her bonds.<br>
<br>
You grind on the dildo in your own ass, feeling a bit jealous as <<=setup.getNpcName('npc_futa', 'first')>> approaches climax... just as <<=setup.getNpcName('npc_development', 'formal')>> walks into the room.
<<case 'sissy_secretary'>>
With the sound of <<=setup.getNpcName('npc_futa', 'first')>> getting her <<getWordPenis false>> noisily sucked you in the background you approach <<=setup.getNpcName('npc_sissy_secretary', 'first')>> for some technically chaste action.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
Deciding against rubbing your own un-chaste situation in your friend's face too badly,
<<else>>
<<if setup.getChastityLevel() == 5>>
Dual 9001-series chastity devices clinking together under your skirts as
<<else>>
Your chastity device clinking against <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> far more secure <<=setup.getItemName('sissyomatic')>> under your skirts as
<</if>>
<</if>>
you learn in to bring your mouth to <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> full, bimbo-licious lips.<br>
<br>
Straddling her lap and driving her even firmer onto the dildo in her ass you grind and smooch, tongues dancing and hands groping; all to the sound of <<=ps(setup.getNpcName('npc_futa', 'first'))>> rapidly approaching climax.
<<case 'hucow'>>
Entranced by <<=ps(setup.getNpcName('npc_hucow', 'first'))>> massive milk-jugs you kneel down next to her chair. With smile she pops one breast free if her top and offers it to you, your lips eagerly wrapping around the large nipple as the bottom of her heavy piercing presses against your chin.<br>
<br>
"@@.npc_hucow;Moo, moo moo!@@" <<=setup.getNpcName('npc_hucow', 'first')>> moans in encouragement as your suckling efforts are rewarded with a first spurt of her rich milk. You reach over to start groping her other breast with your hand hand as she holds you close, your face buried in the soft breast as you happily suck.<br>
<br>
Unable to see anything you can still hear the sound of <<=ps(setup.getNpcName('npc_futa', 'first'))>> face-pounding efforts, and moans that you are pretty sure are harbingers of an approaching climax.
<<case 'pr_sissy'>>
You approach <<=setup.getNpcName('npc_pr_sissy', 'first')>> but she shakes her head. "@@.npc_pr_sissy;Class will be starting soon. You don't want to get in trouble first thing.@@"<br>
<br>
You decide that she's probably right; after all, she has more experience at the company than you do. You take your seat and instead watch <<=setup.getNpcName('npc_futa', 'first')>> continue to go at it.<br>
<br>
"@@.npc_futa;That's the stuff...@@" <<=setup.getNpcName('npc_futa', 'first')>> groans, one hand gripping <<=setup.getNpcName('npc_sexdoll', 'first')>> by the hair as she really goes to town on the girl's throat. "@@.npc_futa;I wonder if we can get your seat moved under mine, these lips around my cock would really help me focus on my lessons...@@"<br>
<br>
"@@.npc_sexdoll;Yeff!@@" <<=setup.getNpcName('npc_sexdoll', 'first')>>, moans around the muffling throat-swelling intruder, clearly turned on by this idea as she strains against her bonds.<br>
<br>
You grind on the dildo in your own ass, feeling a bit jealous as <<=setup.getNpcName('npc_futa', 'first')>> approaches climax... just as <<=setup.getNpcName('npc_development', 'formal')>> walks into the room.
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
"@@.npc_development;Back to your seats!@@" <<=setup.getNpcName('npc_development', 'formal')>> snaps, <<=setup.getNpcName('npc_futa', 'first')>> pulling away too late, and thus blasting <<=setup.getNpcName('npc_sexdoll', 'first')>> full in the face with a huge load of <<getWordCum>>. <<=setup.getNpcName('npc_development', 'formal')>> snorts as <<if ['sit', 'bound'].includes($scene.action_1)>><<=setup.getNpcName('npc_futa', 'first')>> makes her way back to her seat, slowly lowering<<else>>you and <<=setup.getNpcName('npc_futa', 'first')>> return to your seats. <<=setup.getNpcName('npc_futa', 'first')>> lowers<</if>> herself onto the twin dildos with a gasp, her <<getWordPenis false>> still hard as <<=setup.getNpcName('npc_sexdoll', 'first')>> attempts to lick the cum from her lips — her bound position making her unable to bring her hands further up than her lips.<br>
<br>
"@@.npc_development;The rest of you — cuff yourselves!@@" <<=setup.getNpcName('npc_development', 'formal')>> commands, those of you who had neglected to take that step hurriedly snapping the cuffs around ankles and wrists to chain yourselves in place. "@@.npc_development;In the future I expect you to be like this before I arrive — no more fooling around before class! Do you understand?@@"<br>
<br>
You and the other students nod only to be corrected again "@@.npc_development;That is "Yes, <<=setup.getNpcName('npc_development', 'title')>>" — while you are in my classroom you shall all use my proper title, is that understood?@@"<br>
<br>
"Yes, <<=setup.getNpcName('npc_development', 'title')>>," comes the chorus of replies and she smiles.<br>
<br>
"@@.npc_development;Music to my ears, now, let us begin class.@@"<br>
<br>
[<<moveTo "event_school_1_5" "Continue." 1800>>]
</div>/*#
#desc: first class - introduction
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
After everyone has finished cuffing themselves to their chairs you all take a moment to catch your breath; none moreso than <<=setup.getNpcName('npc_sexdoll', 'first')>> and <<=setup.getNpcName('npc_futa', 'first')>>. The former attempting to finish wiping the <<getWordCum>> from her face and lick it from her fingers, the latter shifting in her seat, her hard <<getWordPenis false>> signaling that she is still in the mood for more than just the static double penetration provided by her chair.<br>
<br>
"@@.npc_development;So, my lovelies... now that you are in better positions to focus, we can start. First off, welcome, and congratulations. All of you have shown poise and skill, both in your work efforts, and in your advanced participation in the company's A-SLUT program. That demonstration of expertise proves your readiness for more advanced teachings, and so I welcome you to this course in Advanced Secretary Learning And Vocational Excellence.@@" She pauses, as if to give everyone sufficient time to put together the acronym she has just spelt out.<br>
<br>
"@@.npc_development;The class you are about to undertake is one given to all subordinate employees who hope to find permanent positions in the upper floors. To be selected for such consideration was an honour in its own right, but that merely raises my expectations for your performance. Today's lesson shall be broken into two portions. The first will be a deep, theoretical discussion of the topic at hand, followed by some time spent on practical application of the associated skills. With that framework established let us proceed to that most useful of skills — those of oral presentation.@@"<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
<<printThought "This is going to be about fellatio, isn't it...">>
<<else>>
<<printThought "Let me guess... oral sex?">>
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
<<printThought "She totally means cocksucking...">>
<<else>>
<<printThought "I wonder what she's talking about? I don't really give many speeches at work...">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_school_1_6" "Continue." 2000>>]
</div>/*#
#desc: first class - oral instruction
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
"@@.npc_development;One's skill at making oral presentations is vital to properly expressing themselves and serving their owner-manager. Be it relieving a manager, helping entertain a client or comforting a fellow the applications are vast... almost as vast as the gulf between doing a serviceable job, and doing an excellent one.@@"<br>
<br>
As she speaks she approaches the chalkboard. "@@.npc_development;Anyone with time and some determination can learn to hold their breath longer, or drill away that pesky gag reflex but being worthy of a position in the upper floors is about more than transforming one's head into a living onahole. Tongue, lips, throat... on occasion even teeth can be deployed, it is a matter of technique refinement and feedback in a five step process I refer to as Dick-taking, Dick-scovery, Dick-sign, Dick-ployment and Dick-light.@@"<br>
<br>
She writes the words in order and then continues in detail.<br>
<br>
"@@.npc_development;Dick-taking is the preamble, everything that happens before the moment that cock passes your lips. This can range from practically nonexistent, if you have been tasked with anonymous under-the-desk meeting responsibilities, to a brief opportunity to heighten anticipation for the main course... say, if ordered to help a guest relax before an important discussion, to a more active effort in volunteering to help your manager de-stress, or propose. In all cases the focus is on getting yourself, and your partner, into position to maximise enjoyment of the act to come.@@"<br>
<br>
"@@.npc_development;During Dick-scovery your lips should by now be properly wrapped around a cock... but what to do? Every sperm-sprayer is different and your initial moments should be focused on gathering information so that you can form a plan. This consists of doing quick experiments to see what sort of stimulation your subject most likes, tongue, suction, depth, you want to get a quick picture, or revise what you remember from previous experiences. Speaking of previous experience, it does not need to be your own. In fact you should consider it an additional duty to spread what you learn of servicing managers and other important persons to your fellow subordinates. Your number one responsibility is to support and stimulate your superiors and that means never hoarding secrets, but instead sharing information with your peers so that every one of you can be perfectly tuned, and personalised, pleasure machines.@@"<br>
<br>
You glance around at your "peers" and wonder at what "secrets" they might have to share...<br>
<br>
"@@.npc_development;Dick-sign is taking what you have learned in stage two, as well as additional factors like what your specific orders were, and the project time-line, to make an action plan as to what you will do including techniques deployed, positions used, and pace of work.@@"<br>
<br>
"@@.npc_development;Dick-ployment! This is where you put your plan into action. While mnemonically considered a single primary step it is actually a sub-loop of dick-scovery, disk-sign and itself as you constantly monitor the reactions of your partner, and the situation as a whole in additional disk-scovery, to refine your dick-sign, and enhance your dick-ployment.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> smiles as she reaches her final bullet point.<br>
<br>
"@@.npc_development;And now we reach dick-light. This is the fun part where you bring things to completion. This will typically have been a part of your plan — be it rocketing fast or the conclusion of a more lingering experience... or even an ordered ruin or denial if that is the task at hand. If a full climax is in the cards there is also the consideration of where such will occur, be it a no-mess nutritional injection, a mouth filling tongue-pooling show-off and swallow, or a more showy blast to your face, tits, or to an assistant. Of course this does not quite bring your responsibilities to an end as, where appropriate, you should then clean up, thank your partner and prepare for your next responsibility.@@"<br>
<br>
Walking over to her desk <<=setup.getNpcName('npc_development', 'formal')>> pulls out a tray containing a half-dozen fancy dildos of differing shapes.<br>
<br>
"@@.npc_development;The dildo before you is an advanced training model that will provide realistic feedback according to a pre-programmed preference routine. This will allow you to practice all steps of the process, now get sucking! I will be making my way around to check in and offer additional advice.@@"<br>
<br>
[<<moveTo "event_school_1_7" "Start sucking." 1800>>]
</div>/*#
#desc: first class - oral practice
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $EXPOSED>>
<<applyExperience 'penis' 10 'little' $EXPOSED>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
With varying extremes of enthusiasm, you and your fellow students get to work on sucking, leaning over your desks and slurping on the artificial cocks. From texture to taste the dildo is surprisingly realistic and you pay attention to its motorised twitches as you start in with dick-scovery and attempt to learn its preferences.<br>
<br>
Throat-deep on dildo you glance around at your compatriots doing the same, from hands free hard face-fucking to almost tentative licking to <<=setup.getNpcName('npc_hucow', 'first')>> taking advantage of the length of her assigned phallus to give a combination boob/blow-job.<br>
<br>
Your senses honed in on the fake cock you feel what you are pretty certain is climax approaching when <<=setup.getNpcName('npc_development', 'formal')>> gives a command. "@@.npc_development;Alright, ladies, for this one I want you to catch a load like a good cum-slut. That means showing it off to me before even thinking of swallowing your treat!@@"<br>
<br>
<<if setup.getTotalValue("cum") < 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_school_1_8" "Do as she says and let the cum pool on your tongue." 180 "<<set $scene.action_2='pool'>><<spendWillpower 1>>">>] <<hint $options "Not gagging on cum will cost willpower">><br>
<<else>>
[@@.link_locked;You do not have the will to force yourself to not gag on that intensity of bitter cum flavour.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_school_1_8" "Do as she says and let the cum pool on your tongue." 180 "<<set $scene.action_2='pool'>>">>]<br>
<</if>>
<<if setup.getTotalValue("cum") < 5>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_school_1_8" "Take it deep and swallow." 180 "<<set $scene.action_2='swallow'>><<spendWillpower 1>>">>] <<hint $options "Not gagging on cum will cost willpower">><br>
<<else>>
[@@.link_locked;You do not have the will to force yourself to swallow disgusting cum.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_school_1_8" "Take it deep and swallow." 180 "<<set $scene.action_2='swallow'>>">>]<br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
[@@.link_locked;It would be a struggle to even fathom the idea of wasting delicious cum on the floor.@@]<br>
<<elseif setup.getTotalValue("cum") > 10>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_school_1_8" "Aim things at the floor." 180 "<<set $scene.action_2='floor'>><<spendWillpower 1>>">>] <<hint $options "Wasting cum will cost willpower">><br>
<<else>>
[@@.link_locked;You do not have the will to force yourself to waste cum by spilling it on the floor.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_school_1_8" "Aim things at the floor." 180 "<<set $scene.action_2='floor'>>">>]<br>
<</if>>
[<<moveTo "event_school_1_8" "Shoot yourself in the face." 180 "<<set $scene.action_2='face'>>">>]
</div>/*#
#desc: first class - swallow action/round 2
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_2>>
<<case 'pool'>>
<<applyExperience 'cum' 18 'terrible' $EXPOSED>>
<<case 'swallow'>>
<<applyExperience 'cum' 10 'normal' $EXPOSED>>
<<case 'face'>>
<<applyExperience 'cum' 13 'very' $EXPOSED>>
<<case 'floor'>>
<<applyExperience 'cum' 15 'very' $EXPOSED>>
<<applyExperience 'humiliation' 15 'normal' $EXPOSED>>
<<applyExperience 'submission' 12 'normal' $EXPOSED>>
<<applyExperience 'foot' 12 'normal' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_2>>
<<case 'pool'>>
You follow <<=ps(setup.getNpcName('npc_development', 'formal'))>> instructions by wrapping your lips around the tip of the artificial phallus as it makes it spurt, what tastes like real<<if setup.getTotalValue("cum") > 10>>, delicious<</if>> cum fills your mouth and you wait for the climax sequence to finish before tilting your head back and swishing your tongue to show things off.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> weaves through the room, inspecting each student in turn before giving an approving nod to swallow. You wait patiently with lips spread until it is your turn before
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
letting the delicious draught slide down your throat.
<<else>>
gulping down your delicious prize.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
quickly swallowing everything.
<<else>>
choking down the bitter brew.
<</if>>
<</if>>
<<case 'swallow'>>
You're taking the dildo deep as you feel it start to go off and you reflexively move all the way down, shooting your "prize" almost directly into your belly.<br>
<br>
You gulp until the flow stops and lean back to catch your breath... to find yourself looking up at a disappointed <<=setup.getNpcName('npc_development', 'formal')>>. Holding your chin she turns your face from side to side to confirm your mouth's emptiness of <<getWordCum>> as she frowns.<br>
<br>
"@@.npc_development;Very disappointing. You were given explicit instructions, and disobeyed them. Just because it was going to end up in your belly at the end does not mean the process of getting there is any less important.@@"<br>
<br>
You feel chagrined, wilting slightly as she moves off to inspect the rest of the class — your fellow students all shaking their heads at your failure.
<<case 'floor'>>
You feel the artificial phallus start to pulse and barely manage to bend it to the side so that it shoots onto the ground, the blast of <<getWordCum>> splashing onto <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> sitting next to you.<br>
<br>
Cheeks swelled <<=setup.getNpcName('npc_pr_sissy', 'first')>> looks at you in shock as <<=setup.getNpcName('npc_development', 'formal')>> suddenly appears to stand over you.<br>
<br>
"@@.npc_development;What on earth... you could not have possibly failed this task any worse!@@"<br>
<br>
Before you can muster a response you are dragged out of the chair, your face pressed against the pool on the floor. "@@.npc_development;The rest of you — start gargling! Really savour that fresh flavour, provide a soundtrack to your fellow student making up for her failure.@@"<br>
<br>
You shudder in humiliation and start to lick as the other students do as commanded, the gurgling sound only amplifying your shame as <<=setup.getNpcName('npc_development', 'formal')>> uses your face like a mop to lick the floor clean, and then finish off by tongue-washing <<=setup.getNpcName('npc_development', 'formal')>> shoes.<br>
<br>
"@@.npc_development;And swallow.@@" <<=setup.getNpcName('npc_development', 'formal')>> commands only after you are bound and impaled on your chair once again. The stereo of "gulps" makes you shudder as <<=setup.getNpcName('npc_development', 'formal')>> returns to the front of the room.
<<case 'face'>>
You lean back just before climax and take the full blast of <<getWordCum>> across your fact.<br>
<br>
Catching your breath you look around to see your fellow students with heads tilted back to show their mouths filled with <<getWordCum>>. You imagine you can hear the sound of the cum dripping down your face as you blush in shame, <<=ps(setup.getNpcName('npc_development', 'formal'))>> disappointed head-shake only cementing your failure, her wordless admonishment filling you with regret.
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<br><br>
"@@.npc_development;Now, please turn to the student next to you, exchange training implements, and spend a few minutes educating them on the technique they should employ. My judgement in this next round will be weighted on how effectively your tips enhance their performance.@@"<br>
<br>
You look to your right, your chained wrists making you barely able to reach far enough to exchange dildos with <<=setup.getNpcName('npc_pr_sissy', 'first')>>. She smiles and licks her lips in anticipation before starting to tell you about how "best" to service things.<br>
<br>
[<<moveTo "event_school_1_9" "Give her good advice." 180 "<<set $scene.action_3='good'>>">>]<br>
[<<moveTo "event_school_1_9" "Give her generic advice." 180 "<<set $scene.action_3='neutral'>>">>]<br>
[<<moveTo "event_school_1_9" "Give her bad advice." 180 "<<set $scene.action_3='bad'>>">>]
</div>/*#
#desc: first class - 2nd suck
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $EXPOSED>>
<<applyExperience 'penis' 10 'little' $EXPOSED>>
<<set $scene.punish = 20-_oral>>
<<applyExperience 'bdsm' _punish 'normal' $EXPOSED>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
After listening to <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> advice,
<<switch $scene.action_3>>
<<case 'good'>>
you quickly return the favour by telling them everything you learned in your previous suck session. <<=setup.getNpcName('npc_pr_sissy', 'first')>> smiles. "@@.npc_pr_sissy;Thanks, hun, that'll help for sure!@@"
<<case 'neutral'>>
you return the favour with vague, somewhat general suggestions. <<=setup.getNpcName('npc_pr_sissy', 'first')>> frowns slightly. "@@.npc_pr_sissy;Hmm, thanks, I guess, but I think you need to improve your cock-sucking vocabulary so you can communicate regarding these important matters more effectively.@@"
<<case 'bad'>>
you respond with the opposite of what you learned. <<=setup.getNpcName('npc_pr_sissy', 'first')>> seems momentarily suspicious but then thanks you. "@@.npc_pr_sissy;Thanks, hun, that'll help for sure!@@"
<<default>>
ERROR: unexpected scene.action_3 <<=$scene.action_3>>
<</switch>>
<br><br>
"@@.npc_development;Alright, begin your next oral presentation!@@" <<=setup.getNpcName('npc_development', 'formal')>> calls out "@@.npc_development;And one final note — as extra instructional incentive any errors will be punished with a nice motivating jolt from those dildos you are so sweetly sitting upon!@@"<br>
<br>
<<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> recommendation was to focus on heavy suction and concentrate your efforts on the tip, both tidbits proving quite accurate...
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") >= 20>>
and allowing you to perform without suffering a single solitary shock.
<<elseif setup.getTotalValue("oral") > 15>>
allowing you to do your job with only a couple tiny punishing shocks.
<<else>>
allowing you to avoid all but a handful of minor corrective shocks.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
though blunted by your middling skill, your overall failures are met with numerous painful shocks.
<<else>>
though blunted by your lack of skill, your overall failure is met with numerous painful shocks.
<</if>>
<</if>>
<br><br>
"@@.npc_development;This time I want you to take things deep and gulp it down — a useful skill indeed to ensure minimal mess.@@"<br>
<br>
The dildo spurts and you swallow, taking a moment to glance to your side to see how <<=setup.getNpcName('npc_pr_sissy', 'first')>> has done.
<<switch $scene.action_3>>
<<case 'good'>>
She gulps down the dildo with a smile, winking at you in thanks for your excellent advice as she pops the drained dildo free of her lips with a grin.
<<case 'neutral'>>
She gulps down the dildo and then pulls it free to catch her breath, looking a bit frazzled. "@@.npc_pr_sissy;Definitely need to work on your communication skills, made more than a few mistakes there.@@"
<<case 'bad'>>
She gulps down the dildo's offering and then places it down to glare at you. "@@.npc_pr_sissy;Did you purposefully sabotage me? Not cool, babe, not cool at all. My ass is really hurting after that!@@"
<<default>>
ERROR: unexpected scene.action_3 <<=$scene.action_3>>
<</switch>>
<br><br>
After a moment to catch your breath things change up again — the cuffs releasing you from your seat as <<=setup.getNpcName('npc_development', 'formal')>> has the class line up on your knees against a wall. Your dildos are re-mounted in front of you as you surmise your next effort will be made in this "traditional" position, but with the fresh challenge of sucking in an elegant, hands-free manner.<br>
<br>
[<<moveTo "event_school_1_10" "Start sucking." 600>>]
</div>/*#
#desc: first class - 3rd suck - wall
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $EXPOSED>>
<<applyExperience 'penis' 12 'little' $EXPOSED>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_development', 'formal')>> re-assigns positions and gives everyone a few minutes to exchange dick-scovery results before you're on your knees sucking away.<br>
<br>
The new angle is both easier to manage than hunching over the desk, but also more challenging as you are forced to move your entire upper body to adjust around the mounted cock rather than relying on your hands.<br>
<br>
"@@.npc_development;Alright sluts, you're doing good. This time I want you to look up as you finish, use your tongues to lap every drop out of the slit as you practice easing your partner down from their climax.@@"<br>
<br>
The wall mount must be connected to a reservoir of <<getWordCum>> as you are "treated" to a load more than double the size previously.
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Quite the delight for a cum-lover like yourself, you look rapturously up as you relish every delectable drop.
<<else>>
Of course more cum just makes you more happy, and you eagerly swallow it down while looking blissfully upward.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
You struggle to swallow it all... even if, by the end, you are strangely disappointed that there is no more.
<<else>>
This proves quite the additional challenge as you struggle to choke down the bitter baby batter.
<</if>>
<</if>>
<br><br>
"@@.npc_development;Well done, but it's time to kick things up another level — if you sit back slightly you should find another friendly anal occupant — this one will be a bit more active, so you'll need to focus on your dick-ployment and not get distracted by the simulated double-team.@@"<br>
<br>
Once again you exchange dick-scovery information with one of your classmates before kneeling back down in front of your designated dildo. You softly gasp as you feel a second dildo rise up and slide into your rear...<br>
<br>
[<<moveTo "event_school_1_11" "Get sucking." 600>>]
</div>/*#
#desc: first class - 4th suck - DP
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $EXPOSED>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'very' $EXPOSED>>
<<applyExperience 'penis' 10 'little' $EXPOSED>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_development', 'formal')>> calls "@@.npc_development;Start!@@" and you set to work bouncing back and forth between the two dildos, sucking as advised by your fellow student as you try not to get distracted by the hard pounding you're getting from behind as you train alongside your peers.<br>
<br>
This time the finishing command is a marathon deepthroat and hold that has you almost tearing up as you struggle to stay at depth until the spurting cum finishes jetting into your belly.<br>
<br>
Sitting back with a gasp you impale your ass to the floor as you catch your breath and wait for the next challenge.<br>
<br>
"@@.npc_development;Alright, my dears, now for your final, marathon challenge.@@"<br>
<br>
As she speaks several additional holes open in the wall in front of you as five more dildos slide out towards you.<br>
<br>
"@@.npc_development;Most of those you should recognise, the last two will be a bit of on-the-job training. Your challenge will be to keep it all straight as you split your attention between all your wonderful suitors. You can use your hands, now, and I advise you do, because you are not getting up again until you have proven your mastery by getting each subject off another three times.@@"<br>
<br>
Your jaw is already a bit sore, so another dozen and a half blowjobs is far from a trivial task but you draw inspiration from your friends as the six of you shout some initial encouragement to one another and you get ready to begin...<br>
<br>
[<<moveTo "event_school_1_12" "Blow-bang practice time." 1800>>]
</div>/*#
#desc: first class - 5th suck - gangbang
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'very' $EXPOSED>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'very' $EXPOSED>>
<<applyExperience 'penis' 10 'little' $EXPOSED>>
<<applyExperience 'stamina' 15 'very' $EXPOSED>>
<<if setup.getTotalValue("stamina") <= 10>>
<<setTmpEffect 'drug_pickmeup_candy'>>
<</if>>
<<applyFatigue 50>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_qualifier>>
This round of "training" immediately has you in mind of the final level of<<if $fetish.get_raped>> "Rape Rape Revolution." <<else>> "Space Slut Supreme." <</if>>The bump to seven cocks from four is an added challenge, but you also have more freedom of movement which you decide balances out. You
<<else>>
Handling seven cocks at once is certainly a challenge, but you
<</if>>
reach out, lean forward, and set to work.<br>
<br>
You initially glance at your fellow students but quickly conclude that such is a bad idea as you struggle to keep up with the six cocks before you. All the while the "bonus" seventh constantly fucks your ass, a distraction that also spurs you onward.<br>
<br>
<<if $npc_exgirlfriend.flags.bondage_machine.rrr.both_final>>
Your mastery of<<if $fetish.get_raped>> "Rape Rape Revolution," <<else>> "Space Slut Supreme," <</if>>combined with your earlier practice,
<<else>>
Your earlier practice
<</if>>
has you in good position as it is not long before the first blast of cum pumps out of one of the dildos.<br>
<br>
Switching to the next as the <<getWordPenis>> momentarily pitches downward, as if to replicate refractory period, you move on to your next target.<br>
<br>
<<printThought "That makes things harder, since I have to keep switching tactics with each cock rather than grind out one at a time...">><br>
<br>
Your training becomes a marathon as you push your body on to complete your task.
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
Fortunately your stamina is nigh boundless and you move from cock to cock, sucking away at a pace none of your other fellow students seem able to maintain.
<<else>>
Even your stamina is pushed to the limit as you suck cock after cock after cock.
<</if>>
<<else>>
Your stamina starts to waver but then, as you gulp down another load, you get a strange second wind... is the cum laced with some sort of stimulant? Whatever it is, it has you ready to keep pushing forward with your training.
<</if>>
<br><br>
As you near the end the dildos stop drooping, but instead fully retreat into the wall. As you finish off the final artificial cock you are left with a bare wall and you sit back with a gasp.<br>
<br>
You look around to discover you have finished at about the same time as your fellow students, all of you sharing a glance before hauling yourselves back to your feet as <<=setup.getNpcName("npc_development","formal")>> gestures for you to return to your desks.<br>
<br>
[<<moveTo "event_school_1_13" "Take a seat." 180>>]
</div>/*#
#desc: first class - head girl announcement
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.special_skills.blowjob_training = true>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
The chair-mounted dildo is almost dull after the constant fucking that occupied your training and you follow <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> lead to reach for the restraints, only for <<=setup.getNpcName("npc_development","formal")>> to cut things short.<br>
<br>
"@@.npc_development;No need to bind yourself, ladies. Class is almost over. There but remains one announcement to be made in regards to next week.@@"<br>
<br>
She smiles. "@@.npc_development;There is one additional tradition with these classes — that of head girl. You must all recall the... trouble that was going on before I arrived, so I always appoint one lucky student to help me keep you randy sluts in line. It is a tradition I learned back in college. Being chosen head girl of my sorority was one of the highpoints of my academic career — and my fellow Beta Beta Beta's could really make me work sometimes!@@" She laughs at an obviously pleasant memory before continuing. "@@.npc_development;I will note that this responsibility cuts both ways — I will hold the head girl responsible for any misbehaviour amongst other students, but history has shown that head girls have gone on to be very successful, many rising into managerial positions of their own later in their career.@@"<br>
<br>
She looks at each of you in turn. "@@.npc_development;So, which of you is interested?@@"<br>
<br>
[<<moveTo "event_school_1_14" "Stand up and volunteer." 180 "<<set $scene.headGirl=true>>">>]<br>
[<<moveTo "event_school_1_14" "Remain meekly seated." 180 "<<set $scene.headGirl=false>>">>]
</div>/*#
#desc: first class - head girl volunteer
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.headGirl>>
<<set $npc_development.flags.headGirl.volunteer = true>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.headGirl>>
You rise to your feet at the same time as <<=setup.getNpcName('npc_futa', 'first')>>. You think <<=setup.getNpcName('npc_pr_sissy', 'first')>> was considering standing as well but she settles back down, the other three girls not even attempting to rise off their dildos.<br>
<br>
"@@.npc_development;Two applicants! What fun, come on up to the front of the class, we shall have your class-mates vote for the winner!@@"<br>
<br>
You walk to the front of the class, trying to put forth confidence and authority as you stand next to <<=setup.getNpcName('npc_futa', 'first')>>.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> places an arm on each of your shoulders as the three of you look out at the other students. "@@.npc_development;So, each of the rest of you has one vote — but you have to explain why you made the choice you did. That way the loser gets a bit of a consolation prize of learning how they might improve.@@"<br>
<br>
You look at your peers as they take a moment to consider their vote.<br>
<br>
[<<moveTo "event_school_1_vote_mc_1" "Election time." 600>>]
<<else>>
<<=setup.getNpcName('npc_futa', 'first')>> springs to her feet, followed a few moments later by <<=setup.getNpcName('npc_pr_sissy', 'first')>>.<br>
<br>
"@@.npc_development;Two applicants! What fun, come on up to the front of the class, we shall have your class-mates vote for the winner!@@"<br>
<br>
You sit quietly and glance between the two head girl contestants.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> places an arm on each of the two girls as they look out at you and the other students. "@@.npc_development;So, each of the rest of you has one vote — but you have to explain why you made the choice you did. That way the loser gets a bit of a consolation prize of learning how they might improve.@@"<br>
<br>
You look at your peers as you all take a moment to consider your vote.<br>
<br>
[<<moveTo "event_school_1_vote_1" "Election time." 600>>]
<</if>>
</div>/*#
#desc: first class - others vote no volunteer
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_development', 'formal')>> turns to <<=setup.getNpcName('npc_hucow', 'first')>> first who looks between the two competitors before smiling. "@@.npc_hucow;Hmm, I think I'm going to have to go with <<=setup.getNpcName('npc_pr_sissy', 'first')>>, for having the bigger tits.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> chuckles in amusement. "@@.npc_development;Certainly an objective criteria... though not sure how correlated with leadership such is.@@" She nods for <<=setup.getNpcName('npc_sexdoll', 'first')>> to express her opinion.<br>
<br>
"@@.npc_hucow;My vote is for <<=setup.getNpcName('npc_futa', 'first')>>, for having the bigger <<getWordPenis false>>!@@"<br>
<br>
"@@.npc_development;An interesting trend, but democracy will do as it will — next?@@" She looks to you for what appears will be the tie-breaker.<br>
<br>
[<<moveTo "event_school_1_vote_2" 'Vote for <<=setup.getNpcName("npc_futa", "first")>>, the ever-horny futa.' 60 "<<set $scene.voteFuta = true>>">>]<br>
[<<moveTo "event_school_1_vote_2" 'Vote for <<=setup.getNpcName("npc_pr_sissy", "first")>>, the shiny, perky PR worker.' 60 "<<set $scene.voteFuta = false>>">>]
</div>/*#
#desc: first class - others vote no volunteer
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.voteFuta>>
<<set $npc_development.flags.headGirl.headGirl = 'npc_futa'>>
<<else>>
<<set $npc_development.flags.headGirl.headGirl = 'npc_pr_sissy'>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.voteFuta>>
You state that you are voting for <<=setup.getNpcName('npc_futa', 'first')>> due to your experience in watching her developing her "management" skills, which you believe will make her a good leader and Head Girl.
<<else>>
You state that you are voting for <<=setup.getNpcName('npc_pr_sissy', 'first')>> for her demonstrated passionate commitment to the company; which you believe will make her a dedicated leader and skilled advocate as Head Girl.
<</if>>
<br><br>
<<=setup.getNpcName('npc_development', 'formal')>> nods, almost surprised at your justification being based on something other than physicality.<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> goes last, voting along-side you to cement the three to one victory for <<if $scene.voteFuta>><<=setup.getNpcName('npc_futa', 'first')>><<else>><<=setup.getNpcName('npc_pr_sissy', 'first')>><</if>>.<br>
<br>
"@@.npc_development;Very good, and congratulations <<if $scene.voteFuta>><<=setup.getNpcName('npc_futa', 'formal')>><<else>><<=setup.getNpcName('npc_pr_sissy', 'formal')>><</if>>. That will be it for today's class — you may all change back and return to your normal duties. I will see you again next Monday for another important lesson.@@"<br>
<br>
[<<moveTo "event_school_1_final" "Get changed and head back to work." 600>>]
</div>/*#
#desc: first class - head girl voting if you volunteered
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_development', 'formal')>> turns to <<=setup.getNpcName('npc_hucow', 'first')>> first. She looks between you and your opponent before smiling. "@@.npc_hucow;Hmm, I think I'm going to have to go with <<if setup.getEffectiveBreastSize() > 6>><<=$player.first_name>><<else>><<=setup.getNpcName('npc_futa', 'first')>><</if>>, for having the biggest tits.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> chuckles in amusement. "@@.npc_development;Certainly an objective criteria... though not sure how correlated with leadership such is.@@" She nods for <<=setup.getNpcName('npc_sexdoll', 'first')>> to express her opinion.<br>
<br>
"@@.npc_sexdoll;My vote is for <<if $player.body_ref.penis && $player.body.penissize[0]*2 > $npc_futa.penis_size>><<=$player.first_name>><<else>><<=setup.getNpcName('npc_futa', 'first')>><</if>>, for having the bigger <<getWordPenis false>>!@@"<br>
<br>
"@@.npc_development;An interesting trend, but democracy will do as it will — next?@@" She looks towards <<=setup.getNpcName('npc_pr_sissy', 'formal')>>.<br>
<br>
<<if $npc_sissy_secretary.stage >= 5>>
<<if $npc_sissy_secretary.flags.burningLube>>
"@@.npc_sissy_secretary;I choose <<=setup.getNpcName('npc_futa', 'first')>>. Even under their official nurse uniform I recognised <<=$player.first_name>> when I was getting fitted with my company-mandated chastity device and they "followed orders" and used burning lube on me. I want a Head Girl who will stand up for us, not blindly follow instructions.@@"
<<else>>
"@@.npc_sissy_secretary;I choose <<=$player.first_name>>. When I was getting fitted with my company-mandated chastity device I recognised <<=$player.first_name>> under her official nurse uniform and she stood up for me and refrained from inflicting burning lube on me. That consideration means she is a Head Girl we can trust.@@"
<</if>>
<<else>>
"@@.npc_sissy_secretary;I choose <<=setup.getNpcName('npc_futa', 'first')>>. She has experienced more goings on at the company. That breadth of expertise would make her a better Mentor to learn from.@@"
<<if $npc_work_doctor.flags.nurse_available>>
<<hint $options "Perhaps if you had spent more time working for <<=setup.getNpcName('npc_work_doctor', 'formal')>>...">>
<<else>>
<<hint $options "Perhaps if you had spent more time digging into the company, perhaps the medical division?">>
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName('npc_development', 'formal')>> seems almost surprised at the reasoned response. "@@.npc_development;Interesting, and the final vote?@@"<br>
<br>
<<switch $scene.action_1>>
<<case 'sit'>>
"@@.npc_pr_sissy;I choose <<=$player.first_name>>. At the start of class she remained seated and obedient, rather than misbehaving. I think that example will make her a more level-headed Head Girl.@@"
<<case 'bound'>>
"@@.npc_pr_sissy;I choose <<=$player.first_name>>. At the start of class she bound herself obediently. I believe that understanding of proper behaviour indicates she would make an exemplary Head Girl.@@"
<<case 'sissy_secretary' 'hucow'>>
"@@.npc_pr_sissy;I choose <<=setup.getNpcName('npc_futa', 'first')>> At the start of class <<=$player.first_name>> succumbed to peer pressure and fooled around rather than waiting obediently. At least <<=setup.getNpcName('npc_futa', 'first')>> was acting bold in her incorrect behaviour rather than merely succumbing to peer pressure and following a previously blazed path.@@"
<<case 'pr_sissy'>>
"@@.npc_pr_sissy;I choose <<=setup.getNpcName('npc_futa', 'first')>>. At the start of class <<=$player.first_name>> succumbed to peer pressure and came on to me rather than waiting obediently. While I would normally appreciate such a gesture, I think it shows lack of self control un-becoming of a Head Girl. At least <<=setup.getNpcName('npc_futa', 'first')>> was acting bold in her incorrect behaviour rather than merely succumbing to peer pressure and following a previously blazed path.@@"
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
[<<moveTo "event_school_1_vote_mc_2" "Listen to the results." 60>>]
</div>/*#
#desc: first class - head girl crowned if you volunteered
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.playerVotes = 0>>
<<if setup.getEffectiveBreastSize() > 6>>
<<set $scene.playerVotes++>>
<</if>>
<<if $player.body.penissize[0]*2 > $npc_futa.penis_size>>
<<set $scene.playerVotes++>>
<</if>>
<<if $npc_sissy_secretary.stage >= 5 && !$npc_sissy_secretary.flags.burningLube>>
<<set $scene.playerVotes++>>
<</if>>
<<if ['sit', 'bound'].includes($scene.action_1)>>
<<set $scene.playerVotes++>>
<</if>>
<<if $scene.playerVotes > 2>>
<<set $npc_development.flags.headGirl.headGirl = 'mc'>>
<<elseif $scene.playerVotes < 2>>
<<set $npc_development.flags.headGirl.headGirl = 'npc_futa'>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.playerVotes == 2>>
"@@.npc_development;My, my my! It seems we have a tie! There is only one fair way to address a situation such as this. The two of you will face off. Whoever can convince the other submit will prove that they have the proper authority to take the position of head girl.@@"<br>
<br>
She turns to you, "@@.npc_development;<<=$player.first_name>>? If you would like to go first.@@"<br>
<br>
<<printThought "Hmm, how to convince her to accept my authority...">><br>
<br>
[<<moveTo "event_school_1_vote_mc_3" "Talk about the pleasure you can give her if she obeys you." 60 "<<set $scene.chastityThreat=false>>">>]<br>
[<<moveTo "event_school_1_vote_mc_3" "Threaten to lock her up to keep her in line." 60 "<<set $scene.chastityThreat=true>>">>]
<<else>>
<<if $scene.playerVotes > 2>>
<<=setup.getNpcName('npc_development', 'formal')>> turns to you with a smile. "@@.npc_development;The people have spoken! Congratulations, Miss <<=$player.last_name>>! That brings today's class to an end. All of you may get changed and return to your normal duties. I will see you again Monday morning for your next important lesson.@@"
<<else>>
<<=setup.getNpcName('npc_development', 'formal')>> turns to <<=setup.getNpcName('npc_futa', 'first')>> with a smile. "@@.npc_development;The people have spoken! Congratulations, <<=setup.getNpcName('npc_futa', 'formal')>>! That brings today's class to an end. All of you may get changed and return to your normal duties. I will see you again Monday morning for your next important lesson.@@"
<</if>>
<br><br>
[<<moveTo "event_school_1_final" "Get changed and head back to work." 600>>]
<</if>>
</div>/*#
#desc: first class - head girl dom-off
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.chastityThreat>>
<<set $npc_development.flags.headGirl.headGirl = 'mc'>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'terrible' $SEEN_FRIEND>>
<<else>>
<<set $npc_development.flags.headGirl.headGirl = 'npc_futa'>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_development', 'formal')>> steps back as you and <<=setup.getNpcName('npc_futa', 'formal')>> take a moment to stare one another down.
<<if $scene.chastityThreat>>
You step closer, leaning in to whisper in her ear to tell her that, if you are Head Girl you will. "@@.pc;Provide the control you need. I will cage that delicious girl-cock and lock away both of your holes to teach you the discipline and control that only chastity can provide.@@"<br>
<br>
<<=setup.getNpcName('npc_futa', 'first')>> bites her lip, her skirt twitching as she slowly opens her mouth to speak only for her once-stern expression to crumble. "@@.npc_futa;I submit — <<=$player.first_name>> is the more deserving Head Girl and I trust her to lead us in productive education.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> steps forward to raise your hand with a smile.
<<else>>
You smile and start explaining how, with you as Head Girl, <<=setup.getNpcName('npc_futa', 'first')>> will be free from distractions and you will ensure that all of her holes and her lady lance as well, will be assigned the attention they need.<br>
<br>
<<=setup.getNpcName('npc_futa', 'first')>> smirks and shakes her head. "@@.npc_futa;Oh you silly <<if $fetish.sissy>>sissy<<else>>thing<</if>>, I get that already, and with me as Head Girl I'll be keeping all of you in line...@@"<br>
<br>
She pulls her skirt to the side to brandish her hard <<getWordPenis false>> and you know you've lost.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> steps forward, raising <<=ps(setup.getNpcName('npc_futa', 'first'))>> hand with a smile.
<</if>>
"@@.npc_development;Introducing your new Head Girl! Congratulations to all of you for complete your first lesson — you may now change and return to your normal duties. I will see you all again Monday morning.@@"<br>
<br>
[<<moveTo "event_school_1_final" "Get changed and head back to work." 300>>]
</div>/*#
#desc: first class finish
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "removeScandalousSchoolgirl">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 1, 8, 0, false)>>
<<addEvent 'event_class_2' _tmpDate>>
<<set $npc_development.flags.class = 2>>
<<set $player.work.tmpworkPensum = 5*$player.work.bonusReq>>
<</if>>
<<set $player.location = '<<=ps(setup.getNpcName("npc_development","formal"))>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false)>>
<div id="invframe" class="scrolltext">
<<if $npc_development.flags.headGirl.headGirl == 'mc'>>
As you change back into your work clothing your friends congratulate you on your appointment as Head Girl... though you sense a slight undercurrent of fear at your new authority.
<<else>>
You join the rest of your friends in congratulating <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> on her appointment as Head Girl as you each get changed out of your school uniforms and back into office attire.
<</if>>
<br><br>
Bidding everyone a good day you all go your separate ways, them to their jobs, you back to your desk in <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Back to the office." 600>>]
</div>/*#
#desc: second class intro
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "dressScandalousSchoolgirl">>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Monday morning means another class, and you have just enough time to do some basic work catch-up before <<=setup.getNpcName("npc_manager","formal")>> is sending you off for instruction. You arrive with your fellow students as <<=setup.getNpcName('npc_development', 'formal')>> welcomes you in and motions to your desks where each of your school outfits are neatly laid out.<br>
<br>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
In addition to her uniform <<=ps(setup.getNpcName('npc_futa', 'formal'))>> has an extra item waiting for her — the most intense chastity device you have ever seen. Looking inspired by the <<=setup.getItemName('sissyomatic')>>
<<if setup.getChastityLevel() == 5>>
device you wear,
<<else>>
line,
<</if>>
it combines a cage, a thick belt and dual hollow plugs held in by a metal band between the legs and support chains over the rear.<br>
<br>
<<=setup.getNpcName('npc_futa', 'formal')>> gulps in fear and glances at <<=setup.getNpcName('npc_development', 'formal')>> as if for reprieve.<br>
<br>
"@@.npc_development;Oh, don't look at me like that. We all saw how you reacted to your Head Girl's words. While you are in my classroom you shall be equipped properly so that your learning will be the best that it can be.@@"<br>
<br>
Trembling slightly <<=setup.getNpcName('npc_futa', 'formal')>> remains still as you help her into the ultra-secure chastity device, her hard <<getWordPenis false>> stating what she does not have the courage to speak aloud... until the cage does its job of bringing everything under control.<br>
<br>
With <<=setup.getNpcName('npc_futa', 'formal')>> and the other students attended to you quickly change into your uniform and take your place at your desk.
<<case 'npc_futa' 'npc_pr_sissy'>>
After letting you in to the room <<=setup.getNpcName('npc_development', 'formal')>> waits at her desk and observes as <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> takes charge; watching as each of you change into your school uniforms before cuffing you to your desks, only taking her own seat once the rest of you are secure.
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
With all of you changed, seated, and restrained <<=setup.getNpcName('npc_development', 'formal')>> brings class to order.<br>
<br>
[<<moveTo "event_school_2_2" "Commence the day's lesson." 600>>]
</div>/*#
#desc: second class - cunnilingus lecture
#status: FINISHED 0.8.3.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
"@@.npc_development;Today we will be continuing on from last week's training — after all, there is more than one sort of oral attention a Secretary may be called upon to perform. Yes, I, of course, refer to the wonderful art of cunnilingus. We will be giving those talented throats of yours a rest to focus on how to use lips, tongue, teeth... even your cute noses, to ensure that you make the most of every moment you spend between a pair of thighs.@@"<br>
<br>
<<printThought "Is every class going to be about sex? I guess I shouldn't be surprised...">><br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> continues on. "@@.npc_development;A wet cunt obviously presents different challenges from a hard cock — first, is the mystery. With a cock well... you can see what you're getting into. Or, rather, what's getting into you. With a cunt, however, while there are certainly many folds and fun bits on the outside yearning for you to pleasure, much of what you are dealing with is inside, functionally invisible. Thus one must learn to work completely by touch and instinct. The second aspect that can set things apart is that when a cock orgasms, well... you know it instantly — a nice bellyful of cum your immediate reward... often followed by a softening and refractory period. With a cunt, however... while squirting can be on the table, things can also be more subtle, and proper skill can result in many orgasms in succession.@@"<br>
<br>
Lifting a box from behind her desk she walks between each of your desks, handing out a pocket pussy to each of you. "@@.npc_development;Just as before, these are each top of the line, with computer-driven algorithms meant to give the best replication of the real thing possible. As you work I want you to focus on three main areas — the clit, the labia, and the g-spot within. That is not to say that you cannot experiment with other stimulation, but those will be your basic locus points to which you will return often.@@"<br>
<br>
Without going into further details she nods for you to commence, you and your fellow students extending your tongues and bringing the artificial pussies to your lips.<br>
<br>
[<<moveTo "event_school_2_3" "Train." 2000>>]
</div>/*#
#desc: second class - cunnilingus practice 1
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You lick and suck and nibble, occasionally ordered to swap with another student and given just enough time to inform them of how best to "service" the artificial pussy before your tired lips are again occupied with training. Rather than escalate the scale of things as happened in the previous lesson, <<=setup.getNpcName('npc_development', 'formal')>> instead merely walks between the desks, offering advice and occasional "help" by grabbing the back of a student's head and shoving their face into the artificial pussy.<br>
<br>
After an hour your jaw hangs loose, your lips tired and tongue sore from so much licking. "@@.npc_development;Well done.@@" <<=setup.getNpcName('npc_development', 'formal')>> states as she unlocks
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
you from your desk and orders you to collect the "training implements."
<<case 'npc_futa' 'npc_pr_sissy'>>
<<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> from her desk and orders her to collect the "training implements."
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
"@@.npc_development;I am sure you are eager to put your new skills to use so, if you would follow your Head Girl, we will move on to the practical portion of today's lesson.@@"<br>
<br>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
You unlock your fellow students from their desks and lead
<<case 'npc_futa' 'npc_pr_sissy'>>
<<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> unlocks you and your other fellow students from your desks and then leads
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
the way to the side of the room where <<=setup.getNpcName('npc_development', 'formal')>> is standing.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> waits until everyone has formed a neat line before pressing a switch and causing six sections of the wall to slide away, each revealing a pair of thighs... and the glistening treasure between, in positions varying in angle, orientation, and how much of the legs are exposed past the wall.<br>
<br>
"@@.npc_development;If you would each take a position to continue your training. I should add that your "partners" are some of your fellow upper floor executive assistants who have been rewarded for excellent behaviour by being allowed to volunteer to give back by assisting with your training.@@"<br>
<br>
You and your fellow students fan out and you get onto your knees in front of a pair of floating legs that immediately rest on your shoulders and start to draw you in.<br>
<br>
<<if !$options.fem && $fetish.cum>>
"@@.npc_development;Oh, and as a final incentive — they have each already enjoyed a busy morning, so you will find a nice cream-pie waiting for you to get your energy up for your first session.@@"<br>
<br>
<</if>>
The legs on either side of your head pull you forward, waiting for your head to be in position before the thighs clamp down tight...<br>
<br>
[<<moveTo "event_school_2_4" "Get licking." 600>>]
</div>/*#
#desc: second class - cunnilingus practice 2
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$options.fem && $fetish.cum>>
<<applyExperience 'cum' 13 'normal' $EXPOSED>>
<</if>>
<<set $scene.first = !$player.virgin.cunnilingus>>
<<if $scene.first>>
<<set $player.virgin.cunnilingus = "class">>
<</if>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
With warm thighs squeezing your head you set to work applying what you practiced earlier in the class, the taste of the "real thing" serving to revive your energy as your tongue does a preliminary investigation from labia major to labia minor in a spiraling investigation towards the nub-like clit and from there down and in as your tongue
<<if !$options.fem && $fetish.cum>>
scoops out
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
a delicious
<<else>>
a tasty
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
an overly salty
<<else>>
a bitter
<</if>>
<</if>>
cummy prize.
<<else>>
explores every nook and cranny.
<</if>>
<br><br>
<<if $scene.first>>
You're so focused on keeping up with your lesson you barely think about this being your first time... <<printThought "Talk about trial by fire...">><br>
<br>
<</if>>
Though they are restricted and effectively silenced by the bound position partway out of the wall your "training partner" is afforded enough freedom to communicate their delight at your efforts. You are unable to trigger a full squirting orgasm, but you do manage to draw out several powerful climaxes before the legs are pried away form your head and you are instructed to switch places with another student.<br>
<br>
After exchanging intelligence you get into position — this time with a much more helpless individual whose legs have been bound in such a stretched position you wonder if the exposed angle could mean anything other than full ankle-behind-head helplessness.<br>
<br>
As you lick your lips in anticipation and lean forward you hear a fresh directive from <<=setup.getNpcName('npc_development', 'formal')>> "@@.npc_development;Alright, now that you're all warmed up<<if !$options.fem && $fetish.cum>>, and all that yummy cum is cleaned out,<</if>> it's time to mix things up — for this next round I want you to do nothing but edge your partner. I'll be monitoring vitals to see who does the best at keeping their partner right on the precipice without going over. Loser gets a whipping, winner gets my cock inside of her ass — only fair, since it's a hole you all share — for the subsequent round! Watching all you cute cunt-lickers has me in need of relief!@@"<br>
<br>
<<printThought "Hmm, do I want to give it my all? Even ignoring edged torment, if I push too hard I don't know if my tongue will hold up...">><br>
<br>
[<<moveTo "event_school_2_5" "Take your partner to the edge... and keep them gloriously there! You want to win!" 1200 "<<set $scene.action_1='win'>>">>]<br>
[<<moveTo "event_school_2_5" "Take it slow, no need to torture your partner." 1200 "<<set $scene.action_1='lose'>>">>]<br>
[<<moveTo "event_school_2_5" "Follow instructions, but pace yourself." 1200 "<<set $scene.action_1='none'>>">>]
</div>/*#
#desc: second class - edging challenge
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_1>>
<<case 'win'>>
<<applyExperience 'dominance' 15 'normal' $EXPOSED>>
<<case 'lose'>>
<<case 'none'>>
<</switch>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case 'win'>>
Despite whatever orgasms the student before you had dished out your "subject" is aroused and wet and it does not take you long to have them back on the edge.<br>
<br>
You feel a twinge of guilt at the torment you are inflicting when you first pull back, blowing gently over the dripping snatch in front of you as it clenches desperately for more stimulation. With them now at the edge your work becomes more sporadic, a lick here, a nibble there as you take meticulous control to keep your anonymous subject constantly off-balance but just shy of orgasm.<br>
<br>
Laser-focused on your work you hear a muffled cry from the other side of the wall followed by a swear from one of your fellow students as they fail the challenge. The longer you maintain your tormenting process the less frequent your interventions become as your subjects desperate need for the orgasm you deny keeps them right on the edge...
<<case 'lose'>>
You can't stand the thought of torturing your anonymous "subject" with orgasms denied and so merely continue your pace from before, licking and sucking and darting your tongue deep into their wet hole until their body shudders in orgasm... and then you do it all over again.
<<case 'none'>>
You decide to play it safe, licking and sucking your subject until they're a desperately twitching mess but then playing it conservatively as you roam further out to kiss their thighs and massage their bum, only returning to their dripping centre when they are obviously starting to relax resulting in more of a rollercoaster series of denials rather than a single sustained edge.
<<default>>
ERROR: unexpected scene.action <<=$scene.action_1>>
<</switch>>
<br><br>
"@@.npc_development;And time.@@" <<=setup.getNpcName('npc_development', 'formal')>> announces. "@@.npc_development;Hurry to your next position — no need to exchange intel this time as your subjects should be more than primed — your goal now is the opposite... maximum orgasms administered wins the day.@@"<br>
<br>
You hurry to change positions, as <<=setup.getNpcName('npc_development', 'formal')>>
<<switch $scene.action_1>>
<<case 'win'>>
moves behind you, her hard <<getWordPenis false>> already out as she directs the loser — <<=setup.getNpcName('npc_sexdoll', 'first')>>, into the position next to you while brandishing a flogger in her free hand.
<<case 'lose'>>
moves behind the winner, <<=setup.getNpcName('npc_pr_sissy', 'first')>>. <<=ps(setup.getNpcName('npc_development', 'formal'))>> <<getWordPenis false>> is already out and hard as she directs you to the position next to her, brandishing a flogger as you realise that you are the loser...
<<case 'none'>>
moves behind the winner, <<=setup.getNpcName('npc_pr_sissy', 'first')>>. <<=ps(setup.getNpcName('npc_development', 'formal'))>> <<getWordPenis false>> already out she directs <<=setup.getNpcName('npc_sexdoll', 'first')>> to the position next to her, brandishing a flogger as you realise she must be the loser...
<</switch>>
<br><br>
Ignoring the rest of what is happening for a moment it is time to make your decision as to what to do with the ready-to-be-plucked flower in front of you...<br>
<br>
[<<moveTo "event_school_2_6" "Go all out." 1200 "<<set $scene.action_2='hard'>>">>]<br>
[<<moveTo "event_school_2_6" "Lick her gently." 1200 "<<set $scene.action_2='soft'>>">>]<br>
[<<moveTo "event_school_2_6" "Edge her." 1200 "<<set $scene.action_2='edge'>>">>]
</div>/*#
#desc: second class - edging result
#status: FINISHED 0.8.3.0
#ignore_spell: g
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_1>>
<<case 'win'>>
<<applyExperience 'anal' $npc_development.penis_size 'normal' $EXPOSED>>
<<case 'lose'>>
<<applyExperience 'bdsm' 12 'very' $EXPOSED>>
<<case 'none'>>
<</switch>>
<<switch $scene.action_2>>
<<case 'edge'>>
<<applyExperience 'dominance' 15 'normal' $EXPOSED>>
<</switch>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_2>>
<<case 'hard'>>
Just as commanded you go at it with everything you have; only rarely even coming up for air as you lick and nibble as you alternately overwhelm clit and g-spot with stimulation in the process of chaining one screaming orgasm into another and another — your chin awash with squirted joy.
<<case 'soft'>>
Primed by the edging it takes hardly any effort to push your "subject" over the orgasmic cliff. Even as they shudder and climax you maintain the same pace, continuing to lick as you push them towards their next release, your steady attention putting them on a pendulum cycle of orgasms spaced just far enough apart keep from being overwhelming.
<<case 'edge'>>
In what can only be termed as cruel, you pick up right where your predecessor left off, licking and teasing to keep your "subject" right on the edge of orgasm. Even with the muffling wall in the way you can hear cries of climax from either side, but those sounds of overwhelmed joy pale compared to the desperate sobs of denied but over-stimulated agony coming from in front of you, and your unseen victim.
<<default>>
ERROR unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<br><br>
<<switch $scene.action_1>>
<<case 'win'>>
As you "work" you also get rewarded, <<=setup.getNpcName('npc_development', 'formal')>> slamming deep into your ass with her smooth <<getWordPenis false>>, her lack of balls adding a subtle dimension to the rewarding ass-fuck as she grinds and thrusts, all to the sharp leather-on-flesh soundtrack of her flogger punishing <<=setup.getNpcName('npc_sexdoll', 'first')>> for her failure.
<<case 'lose'>>
Your work is made all the harder by the harsh crack of <<=ps(setup.getNpcName('npc_development', 'formal'))>> flogger. With your skirt flipped up your bare bottom has no protection from the harsh corrective measure, made all the worse by the occasional moans of pleasure from <<=setup.getNpcName('npc_pr_sissy', 'first')>> as she enjoys her "reward."
<<case 'none'>>
The sound of <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> moans and the one-two combination of <<=ps(setup.getNpcName('npc_sexdoll', 'first'))>> yelps of pain at the punishing crack of <<=ps(setup.getNpcName('npc_development', 'formal'))>> flogger against her rear acts as accompaniment for your efforts, the contrast of stimulation making you wonder if you should not have made a greater effort in the last round, rather than playing things safe and neutral.
<<default>>
ERROR unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
"@@.npc_development;Aaand... time.@@" <<=setup.getNpcName('npc_development', 'formal')>> announces once again as she steps back. You and your fellow students rise to your feet as the six wall "displays" slide back and then are concealed and you wonder if class is already over?<br>
<br>
[<<moveTo "event_school_2_7" "Continue." 1200>>]
</div>/*#
#desc: second class - transition to facesitting
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You and your fellow students catch your breath... only to gasp as the legs slide back into the wall and your "subjects" walk into the room, six beautiful, naked women. Glistening with sweat, and with juices dripping down their thighs all that the women wear are matching collars and gags... with each also bearing a wand clutched in one hand.<br>
<br>
"@@.npc_development;For your final round of training you'll be able to relax... in a sense.@@" <<=setup.getNpcName('npc_development', 'formal')>> explains as she guides all twelve of you to the other side of the room where you recognise a row of half a dozen queening stools...<br>
<br>
"@@.npc_development;Hurry into position — you do not want to leave these wonderful training assistants waiting, and yes, they have been given full permission to use those lovely wands to communicate their opinions of your efforts.@@"<br>
<br>
Even with their faces stretched by the large gags you can see the glint of excitement in each of the "assistants'" gaze as you lay down as instructed. Each girl takes a moment to strap their assigned "student" down with belts and cuffs at the chest, waist, wrist, thighs and ankles before elegantly taking their seat.<br>
<br>
Your vision steadily filled you take a final deep breath just before the beautiful, dripping snatch presses down over your face.<br>
<br>
[<<moveTo "event_school_2_8" "Close your eyes and lick." 1200>>]
</div>/*#
#desc: second class - facesitting
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'terrible' $EXPOSED>>
<<changeMakeupMessed 100>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
In hopes of perhaps currying favour you respond to the warm, wet, snatch pressed over your face by licking eagerly. After all they've been through it will be hard to push your training partner to further orgasm... if such has not already crossed the line to being too much, but you are determined to do your best.<br>
<br>
<<if $scene.action_1 == 'win' && $scene.action_2 == 'hard'>>
You may have done precisely what <<=setup.getNpcName('npc_development', 'formal')>> commanded, but that seems to have only earned you what can only be called revenge in kind. You lick and moan and struggle against your bonds, soft flesh pressed over your face you as your training "partner" grinds against you while using the powerful vibrations of the wand to <<if setup.checkItemTypeWorn("cage")>>torment you through your chastity device<<else>>vibe you relentlessly<</if>>.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
The sensations come from every direction even as your prison keeps you compressed and helpless,
<<else>>
The powerful wand buzzes relentlessly and inescapably,
<</if>>
your restraints leaving you to writhe uselessly as you attempt to use your tongue to wordlessly beg for mercy.
<<elseif $scene.action_1 == 'win' && $scene.action_2 == 'edge'>>
Your cruel chain of edging sessions seems to have garnered the wrath of your training partner. Wielding both the wand and her sharp nails she alternates torturously powerful vibrations that <<if setup.checkItemTypeWorn("cage")>>rattle through your chastity device<<else>>push you to your limit<</if>> with scraping claws across the most tender parts of your inner thighs.
<<elseif $scene.action_1 == 'lose' && ($scene.action_2 == 'soft' || $scene.action_2 == 'hard')>>
If you thought your generous gifts of orgasms would result in kindness in return you are sorely mistaken... literally. Even as your rear still throbs from the pain of the flogging your attention shifts to your <<if setup.checkItemTypeWorn("cage")>>imprisoned and tormented <<if $player.body_ref.penis && $player.body_ref.vagina>>dual genitals<<elseif $player.body_ref.penis>><<getWordMyPenis false>><<else>><<getWordVagina>><</if>>. The powerful vibrations of the wand are inescapable as they thunder through your chastity device,<<else>>exposed crotch; your bound position making the potent stimulation inescapable,<</if>> made all the worse interspersed with clawing fingernails as your "training partner" grinds against your face with all of her weight.
<<elseif $scene.action_1 == 'none' && $scene.action_2 == 'soft'>>
Your gentle efforts are not returned as your training partner uses the wand aggressively, the powerful vibrations <<if setup.checkItemTypeWorn("cage")>>thrumming through your chastity device<<else>>literally rattling through your hips<</if>> as they simultaneously grind against your face.
<<else>>
Your mixed performance does little to grant you mercy from your "training partner." The powerful vibrations of the wand <<if setup.checkItemTypeWorn("cage")>>course through your chastity device<<else>>literally rattles through your hips<</if>>, your bondage making their torment inescapable even as you strain against your bonds and desperately lick in hopes of earning some measure of reprieve.
<</if>>
<br><br>
Tears and pussy juice stream down your face as the near-suffocating torment continues on. When your partner finally rises you gasp, blinking in shock at the sudden flood of light as you try to catch your breath, still helplessly bound to the floor.<br>
<br>
Looming over you and the other students with a grin, <<=setup.getNpcName('npc_development', 'formal')>> leaves you to watch as she locks a chastity belt around each of the six training partner's waist — the sizable internal dildos sliding in easily thanks to their still sopping cunts.<br>
<br>
Dismissing the "assistants" with a wave your teacher takes a moment to loom over her class before freeing the Head Girl and waiting as <<if $npc_development.flags.headGirl.headGirl == 'mc'>>you attend<<else>>she attends<</if>> to freeing your other class-mates.<br>
<br>
"@@.npc_development;Another lesson in the books! I hope you all have the opportunity to show off, and refine, your new skills soon!@@"<br>
<br>
[<<moveTo "event_school_2_9" "Get changed." 600>>]
</div>/*#
#desc: second class - finish
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.flags.special_skills.cunnilingus_training = true>>
<<include "removeScandalousSchoolgirl">>
<<set _tmpDate = setup.getNextDayOfWeek($now, 1, 8, 0, false)>>
<<addEvent 'event_class_3' _tmpDate>>
<<set $npc_development.flags.class = 3>>
<<if $player.makeup.template != "">>
<<if $player.makeup.permanent != "">>
<<set $scene.makeup = 'perm_under'>>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<<else>>
<<set $scene.makeup = 'temp_fix'>>
<<set $player.makeup.messed = 10>>
<</if>>
<<elseif $player.makeup.permanent != "">>
<<set $scene.makeup = 'perm'>>
<<else>>
<<set $scene.makeup = 'none'>>
<</if>>
<<if $npc_development.flags.headGirl.headGirl == 'mc'>>
<<applyExperience 'dominance' 18 'terrible' $EXPOSED>>
<<else>>
<<applyExperience 'foot' 10 'normal' $EXPOSED>>
<<applyExperience 'submission' 13 'normal' $EXPOSED>>
<</if>>
<<set $player.work.tmpworkPensum = 5*$player.work.bonusReq>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
After the marathon cunt-licking neither you nor any of your other fellow students are in the mood to chat as you get changed back into your office attire. You are ready to leave when <<=setup.getNpcName('npc_development', 'formal')>> holds things back.<br>
<br>
<<if $npc_development.flags.headGirl.headGirl == 'mc'>>
<<if $scene.action_1 == 'win' && $scene.action_2 == 'hard'>>
"@@.npc_development;There is one final tradition to attend to — each of you needs to thank the Head Girl for her guidance... particularly given her dominantly exemplary performance today.@@"
<<elseif $scene.action_1 == 'none' && $scene.action_2 == 'soft'>>
"@@.npc_development;There is one final tradition to attend to — each of you needs to thank the Head Girl for her guidance... even if her performance today was utterly poor.@@"
<<else>>
"@@.npc_development;There is one final tradition to attend to — each of you needs to thank the Head Girl for her guidance... even if her performance in class was somewhat lacking.@@"
<</if>>
<<else>>
"@@.npc_development;There is one final tradition to attend to — each of you needs to thank the Head Girl for her guidance... even if some of you somewhat failed to follow it,@@" she adds, glancing at the day's "losers."
<</if>>
<br><br>
<<if $npc_development.flags.headGirl.headGirl == 'mc'>>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> is the first to drop to her knees and kiss your feet; the remaining students lining up to do likewise with <<=setup.getNpcName('npc_futa', 'first')>> going last. She takes longer than the rest worshipping at your feet before looking up with desperation and motioning towards her chastity device.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> presses an unseen button and the advanced 9001 device unlocks. "@@.npc_development;Her manager will be wanting her available for use, I am sure. If you could help her out, I am sure she would appreciate it.@@"<br>
<br>
Appreciate it, she does, whispering "@@.npc_futa;Thank you@@" as you remove the surprisingly heavy device.
<<else>>
<<if setup.getTotalValue("submission") >= 15>>
You are the first to the ground, kneeling down to kiss
<<else>>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> is the first to drop to her knees and kiss
<</if>>
<<=ps(setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first'))>> feet, each of you taking your turn to show your appreciation for the head girl before she leads the way out of the classroom.<br>
<br>
<</if>>
<br><br>
<<=setup.getNpcName('npc_development', 'formal')>> dismisses you all with a nod. Even in fresh clothes you all look something of a mess and you and the other students take a swing through the bathroom to wash your faces and fix up makeup.
<<switch $scene.makeup>>
<<case 'perm_under'>>
Looking at your disaster you just wash things off, glad for your permanently applied base style.
<<case 'perm'>>
You are pleased to have invested in permanently applied makeup, quickly attending to washing up while most your cohorts are stuck spending time re-applying things.
<<case 'temp_fix'>>
Looking at your facial disaster in the mirror you have little choice but to wipe things clean and re-apply from scratch, those of your compatriots that don't have their makeup permanently applied doing the same.
<<case 'none'>>
Though coming to work sans makeup was a questionable decision it at least makes things easier now as you merely wash your face before continuing on your way.
<<default>>
ERROR: unexpected scene.makeup <<=$scene.makeup>>
<</switch>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Back to the office." 600>>]
</div>/*#
#desc: third class - intro
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "dressScandalousSchoolgirl">>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Monday morning means another class, and you have just enough time to do some basic work catch-up before <<=setup.getNpcName("npc_manager","formal")>> is sending you off for instruction. You arrive at the classroom and change into your schoolgirl uniform
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
before fulfilling your duties as Head Girl to make sure all the other students are smartly dressed, seated fully upon their dildos and cuffed securely to their desks. As before, you install <<=setup.getNpcName('npc_futa', 'first')>> in the brutally secure chastity device; a fate she endures in silence save for a soft gasp when you finish locking things closed with a click.<br>
<br>
You take your own seat, shifting to make sure your <<if $player.body_ref.vagina>>dildos are properly seated in your lower holes<<else>>dildo is properly rooted in your ass<</if>> before cuffing yourself to the desk to
<<case 'npc_futa' 'npc_pr_sissy'>>
under the watchful eye of <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>>; the Head Girl making sure all of the other students are changed, seated upon their dildos and cuffed to their desks before doing the same herself as the six of you
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
wait for your instructor to arrive.<br>
<br>
"@@.npc_development;Welcome to another lesson.@@" <<=setup.getNpcName('npc_development', 'formal')>> states in brief introduction. "@@.npc_development;I know we have been putting quite a bit of effort into honing your oral presentation skills, but today we are going to mix it up with some other, very important, instruction to help you better fulfill the duties of your station.@@"<br>
<br>
You shift on the dildo in your ass as you "wonder" what today's lesson will be...<br>
<br>
[<<moveTo "event_school_3_2" 'Start "learning."' 600>>]
</div>/*#
#desc: third class - lesson + choice
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Things are all business as <<=setup.getNpcName('npc_development', 'formal')>> launches into the day's lecture.<br>
<br>
To your shocked surprise <<=setup.getNpcName('npc_development', 'formal')>> starts in on a slide deck that would not be out of place in a business class back when you were in college. A mix of advanced corporate theory interspersed with memory tricks and other subtle techniques to make you a superior <<if $fetish.sissy>>SISSI <</if>>Secretary the lesson is dense with knowledge and you realise you will need to focus yourself if you want to keep up and get the most out of the day's training session.<br>
<br>
<<if setup.getTotalValue("smart") >= 15>>
<<printThought "This is quite a shift from last week's lesson, but I bet I could learn a lot if I fully apply myself.">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_school_3_3" 'Focus your attention.' 3600 "<<set $scene.action_1='focus'>>">>] <<hint $options "This is going to take real willpower and mental focus.">><br>
<<else>>
[@@.link_locked;You presently lack the will to ignore distractions and really focus on learning.@@]<br>
<</if>>
[<<moveTo "event_school_3_3" 'Continue class.' 3600 "<<set $scene.action_1='normal'>>">>]<br>
[<<moveTo "event_school_3_3" 'This is boring...' 3600 "<<set $scene.action_1='slack'>>">>]
<<elseif setup.getTotalValue("smart") < 5 || setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<printThought "This seems, like... hard... and not fun hard! I liked last week's lesson way better.">><br>
<br>
[@@.link_locked;Class is too far above your head to really focus in.@@]<br>
[<<moveTo "event_school_3_3" 'Continue class.' 3600 "<<set $scene.action_1='normal'>>">>]<br>
[<<moveTo "event_school_3_3" 'This is boring...' 3600 "<<set $scene.action_1='slack'>>">>]
<<elseif setup.getTotalValue("smart") < 10>>
<<printThought "This is quite the flip from last week, but maybe I can learn a thing or two?">><br>
<br>
<<if setup.getWillpower() > 2>>
[<<moveTo "event_school_3_3" 'Focus your attention.' 3600 "<<set $scene.action_1='focus'>>">>] <<hint $options "This is going to take real willpower and mental focus.">><br>
<<else>>
[@@.link_locked;You presently lack the will to ignore distractions and really focus on learning.@@]<br>
<</if>>
[<<moveTo "event_school_3_3" 'Continue class.' 3600 "<<set $scene.action_1='normal'>>">>]<br>
[<<moveTo "event_school_3_3" 'This is boring...' 3600 "<<set $scene.action_1='slack'>>">>]
<<else>>
<<printThought "Not what I expected, but knowledge is knowledge, right?">><br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_school_3_3" 'Focus your attention.' 3600 "<<set $scene.action_1='focus'>>">>] <<hint $options "This is going to take real willpower and mental focus.">><br>
<<else>>
[@@.link_locked;You presently lack the will to ignore distractions and really focus on learning.@@]<br>
<</if>>
[<<moveTo "event_school_3_3" 'Continue class.' 3600 "<<set $scene.action_1='normal'>>">>]<br>
[<<moveTo "event_school_3_3" 'This is boring...' 3600 "<<set $scene.action_1='slack'>>">>]
<</if>>
</div>/*#
#desc: third class - focus result
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_1>>
<<case 'focus'>>
<<setThreshold 'smart' 'smart_other' 'class'>>
<<if setup.getTotalValue("smart") >= 15>>
<<spendWillpower 1>>
<<elseif setup.getTotalValue("smart") < 10>>
<<spendWillpower 3>>
<<else>>
<<spendWillpower 2>>
<</if>>
<<applyExperience 'smart' 20 'unbelievable' $EXPOSED>>
<<case 'normal'>>
<<applyExperience 'smart' 15 'normal' $EXPOSED>>
<<case 'slack'>>
<<applyExperience 'bimbofication' 15 'normal' $EXPOSED>>
<</switch>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $EXPOSED>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case 'focus'>>
You narrow in on the lesson, your restraints oddly aiding your ability to keep focused as <<=setup.getNpcName('npc_development', 'formal')>> moves steadily on to more advanced and complex subjects.<br>
<br>
Out of the corner of your eye you note as some of your fellow students start to tune out and begin grinding impatiently in their seats. You, on the other hand, remain on point to learn as much as you can.
<<case 'normal'>>
You pay what attention you can to the lesson at hand — though there's no getting around the distraction of your restraints and the <<if $player.body_ref.vagina>>twin dildos you're sitting on<<else>>dildo in your ass<</if>>. Still, you definitely learn a few things that should prove useful at work, and you're doing better than a few of your fellow students who seem to be more focused on impatiently grinding in their seats than focusing on the lecture.
<<case 'slack'>>
College was a long time ago and you are disinterested in going back, instead "occupying" yourself by grinding on the <<if $player.body_ref.vagina>>dildos<<else>>dildo<</if>> upon which you are perched and stealing glances as you hot, scantily-clad fellow students. While some of them remain focused on the lesson a couple seem just as bored as you are.
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
Throughout the lesson class participation is encouraged with the occasional question or hypothetical scenario correct answers are rewarded with a few moments of chair-dildo vibration; stimulation that strangely acts to fix the point in your mind rather than distract.<br>
<br>
Eventually <<=setup.getNpcName('npc_development', 'formal')>> reaches the end of her slide deck, checking if there are any further questions before shutting off the projector with a smile.<br>
<br>
"@@.npc_development;You have been a wonderful class today, but I know I covered quite the breadth of content. If you feel that you missed out on a detail I do offer remedial reviews on Friday afternoons. Just come by after you have completed your duties to the company and I will help you through anything you had trouble with.@@"<br>
<br>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
<<=setup.getNpcName('npc_development', 'formal')>> walks over to unlock you from your desk. The <<if $player.body_ref.vagina>>dildos sliding smoothly out of your holes<<else>>dildo slides smoothly out of your rear<</if>> as you stand up. <<=setup.getNpcName('npc_development', 'formal')>> makes no move towards any of the other students and you realise this must be a "Head Girl" thing.
<<case 'npc_futa'>>
<<=setup.getNpcName('npc_development', 'formal')>> walks over to unlock <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> from her desk. She rises to her feet leaving dual wet dildos behind as <<=setup.getNpcName('npc_development', 'formal')>> turns to address the remaining, still-restrained students.
<<case 'npc_pr_sissy'>>
<<=setup.getNpcName('npc_development', 'formal')>> walks over to unlock <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> from her desk. She rises to her feet leaving the wet dildo behind as <<=setup.getNpcName('npc_development', 'formal')>> turns to address the remaining, still-restrained students.
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
"@@.npc_development;I know today's lesson was a bit dry compared to last week, but there is a bit of time until I must send you back to your managers so I have a bit of plan — the Head Girl and I will be rewarding today's best student, and punishing the most inattentive.@@" <<=setup.getNpcName('npc_development', 'formal')>> turns to
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
you.
<<case 'npc_futa' 'npc_pr_sissy'>>
<<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>>
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
"@@.npc_development;So, which would you rather do — reward, or punish?@@"<br>
<br>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
[<<moveTo "event_school_3_4_head_1" 'Say you would like to reward the top performer.' 180 "<<set $scene.reward=true>>">>]<br>
[<<moveTo "event_school_3_4_head_1" 'Say you would like to punish the worst student.' 180 "<<set $scene.reward=false>>">>]
<<case 'npc_futa'>>
<<=setup.getNpcName("npc_futa", 'first')>> smiles as her gaze thoughtfully scans over her fellow students.
<<switch $scene.action_1>>
<<case 'focus'>>
"@@.npc_futa;I think I'd like to reward the gold-star student...@@"
<<case 'normal' 'slack'>>
"@@.npc_futa;I think I'd like to punish the dunce...@@"
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
[<<moveTo "event_school_3_4_student_1" 'Sit and wait to see who is getting rewarded... and who is getting punished.' 180>>]
<<case 'npc_pr_sissy'>>
<<=setup.getNpcName('npc_pr_sissy', 'first')>> smiles as her gaze thoughtfully scans over her fellow students.
<<switch $scene.action_1>>
<<case 'focus' 'normal'>>
"@@.npc_pr_sissy;I think I'd like to reward the gold-star student...@@"<br>
<<case 'slack'>>
"@@.npc_pr_sissy;I think I'd like to punish the dunce...@@"<br>
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
[<<moveTo "event_school_3_4_student_1" 'Sit and wait to see who is getting rewarded... and who is getting punished.' 180>>]
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
</div>/*#
#desc: third class - after class "bonus" as head girl - choose action
#status: FINISHED 0.8.3.0
#ignore_spell: dp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.reward>>
"@@.npc_development;So, <<=ps(setup.getNpcName("npc_futa", 'formal'))>> performance today was very good, so attentive!@@" <<=setup.getNpcName('npc_development', 'formal')>> grins "@@.npc_development;That chastity device is working precisely as intended, I am quite tempted to recommend its permanent application to her manager...@@"<br>
<br>
<<=setup.getNpcName("npc_futa", 'first')>> gasps in fear, but she can't quite hide the arousal in her eyes.<br>
<br>
"@@.npc_development;Anyway, her chastity device will remain in place, but the 9001 is designed to make that hardly an issue for a designated user... select a strap-on from the top drawer of my desk and pick your hole. Meanwhile I will be punishing <<=setup.getNpcName("npc_sexdoll", 'first')>> for her disappointing deficit in attention...@@"<br>
<br>
You walk over to the desk where you find two strap-ons, a slightly curved one that looks designed for vaginal stimulation with a second, thinner one clearly meant for anal.<br>
<br>
[<<moveTo "event_school_3_4_head_2" 'Equip yourself to do her ass.' 600 "<<set $scene.action_2='ass'>>">>]<br>
[<<moveTo "event_school_3_4_head_2" 'Equip yourself to do her cunt.' 600 "<<set $scene.action_2='cunt'>>">>]<br>
[<<moveTo "event_school_3_4_head_2" 'Wear both for some DP.' 600 "<<set $scene.action_2='both'>>">>]<br>
<<else>>
"@@.npc_development;So, <<=ps(setup.getNpcName("npc_sexdoll", 'formal'))>> performance today was very disappointing.@@" <<=setup.getNpcName('npc_development', 'formal')>> states. "@@.npc_development;Please select an appropriate tool for her punishment from the cabinet. Meanwhile I shall be rewarding <<=setup.getNpcName("npc_futa", 'first')>> — her lovely chastity device was just the thing to have her very attentive all through class...@@"<br>
<br>
You walk over to the cabinet to find an assortment of impact tools for you to select from.<br>
<br>
[<<moveTo "event_school_3_4_head_2" 'Use the paddle for a standard punishment.' 600 "<<set $scene.action_2='paddle'>>">>]<br>
[<<moveTo "event_school_3_4_head_2" 'Use the flogger for a more stern correction.' 600 "<<set $scene.action_2='flog'>>">>]<br>
[<<moveTo "event_school_3_4_head_2" 'Use the cane for a severe correction.' 600 "<<set $scene.action_2='cane'>>">>]
<</if>>
</div>/*#
#desc: third class - after class "bonus" as head girl act
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 1, 8, 0, false)>>
<<addEvent 'event_class_4' _tmpDate>>
<<set $npc_development.flags.class = 4>>
<<if $scene.reward>>
<<if !$player.virgin.top_fem>>
<<set $player.virgin.top_fem = "school">>
<<addNpcTheme 'npc_priest' 'sex' 'theme_priest_sex_penis_woman'
0
'theme_church_confession_penis_woman'
true
>>
<</if>>
<<if !$player.virgin.ass_strap>>
<<set $player.virgin.ass_strap = "school">>
<<addNpcTheme 'npc_psychiatrist' 'other' 'theme_psychiatrist_other_4'
0
'event_psychiatrist_session_ass_strap_female_1'
true
>>
<</if>>
<<switch $scene.action_2>>
<<case "ass">>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<<applyExperience 'dominance' 10 'very' $EXPOSED>>
<<case "cunt">>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<<applyExperience 'dominance' 8 'normal' $EXPOSED>>
<<case "both">>
<<addItem 'strapon_double'>>
<<wearItem 'strapon_double' true>>
<<applyExperience 'dominance' 12 'terrible' $EXPOSED>>
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<<else>>
<<switch $scene.action_2>>
<<case "paddle">>
<<applyExperience 'dominance' 12 'very' $EXPOSED>>
<<case "flog">>
<<applyExperience 'dominance' 14 'terrible' $EXPOSED>>
<<case "cane">>
<<applyExperience 'dominance' 16 'unbelievable' $EXPOSED>>
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<</if>>
<<set $player.work.tmpworkPensum = 5*$player.work.bonusReq>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.reward>>
You buckle the harness over your <<if setup.checkItemTypeWorn("cage")>>chastity device<<else>>hips<</if>>, your short schoolgirl skirt barely long enough to brush the top of you temporary artificial <<if $scene.action_2=='both'>>double <</if>>cock, much less conceal it in any way. Still cuffed and rooted to her desk <<=setup.getNpcName("npc_futa", 'first')>> stares at you in need, whispering a soft "@@.npc_development;Please,@@" when you finish your approach and stand before her.<br>
<br>
<<=ps(setup.getNpcName("npc_futa", 'first'))>> restraints unlock with a series of clicks and she almost instantly rises to her feet to bend over the desk, the twin dildos that had occupied her through the course of the lesson still wobbling as she presents her chastity-belt gaped holes in more than offering; in desperation.<br>
<br>
<<switch $scene.action_2>>
<<case "ass">>
You oblige, sliding your long, flexible member into her rear hole. She moans, pushing back against you eagerly as her horny sounds
<<case "cunt">>
You oblige, sliding your bulging artificial cock into her cunt. She moans, the thick dong made doubly so as it stretches the hollow plug occupying her hole. You lean your weight into her to finish plunging the full length of the artificial cock into her body. <<=ps(setup.getNpcName("npc_futa", 'first'))>> gasps of filled pleasure
<<case "both">>
It takes you some effort to properly wrangle your dual dongs into her spread holes, the combinations of the dual chastity plugs and the none-too-small dildos making for quite a filling fit, <<=ps(setup.getNpcName("npc_futa", 'first'))>> entire body trembling as you full-fill her double penetration dreams.<br>
<br>
You take a moment to let her appreciate the feeling of being fully double-stuffed as you squeeze her hips and grind against her bare bottom. Her lusty moans of pleasure
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
are joined by the rhythmic thwack, thwack, thwack of <<=setup.getNpcName('npc_development', 'formal')>> flogging <<=setup.getNpcName("npc_sexdoll", 'first')>> for her failures; the human fuck-doll moaning the running count in pained desire after each hard blow.<br>
<br>
Submitted and impaled <<=setup.getNpcName("npc_futa", 'first')>> surrenders to you completely as your other classmates look on in jealous awe. Your motions become even more strained as <<=setup.getNpcName("npc_futa", 'first')>> tightens up just before a powerful, rolling orgasm begins to move through her whole body. Her back arches as she starts to rise off the desk, her overwhelmed moan silenced as <<=setup.getNpcName('npc_development', 'formal')>> jams her smooth <<getWordPenis false>> between the spread lips.<br>
<br>
<<=setup.getNpcName("npc_futa", 'first')>> trembles in air-tight ecstasy, the continued thwack, thwack, thwack of the flogger acting as a reminder that this gift of pleasure has its mirror opposite for "bad girls." <br>
<br>
Gasping around the <<getWordPenis false>> filling her throat <<=setup.getNpcName("npc_futa", 'first')>> almost passes out as her bone-rattling orgasm rolls on for over a minute before <<=setup.getNpcName('npc_development', 'formal')>> gives a signal and the two of you step away, leaving the overwhelmed <<if $fetish.futanari>>futa<<else>>girl<</if>> draped across the desk, all but broken by pleasure.<br>
<br>
You catch your breath as <<=setup.getNpcName('npc_development', 'formal')>> delivers a final blow to her other student and then turns to you with a nod.
<<else>>
<<switch $scene.action_2>>
<<case "paddle">>
You select the paddle. The way <<=setup.getNpcName("npc_sexdoll", 'first')>> stares at you as you approach giving you the impression that she has seen the application of a "For <<if $fetish.sissy>>SISSI <</if>>Secretary Use" paddle before and you soon have her un-cuffed from her seat and bent over the desk as you commence to systematically turning her bottom a punishing red.
<<case "flog">>
You select the flogger. <<=setup.getNpcName("npc_sexdoll", 'first')>> looks at the swishing leather tails with a mix of fear and aroused anticipation, bending over the desk immediately as soon as you have finished un-cuffing her. You take a moment to expose her full back and then begin bringing the flogger down, the sharp tails splashing across her back and bottom, igniting firework slashes of red across her pale flesh.
<<case "cane">>
You select the cane. <<=setup.getNpcName("npc_sexdoll", 'first')>> stares at it with a mix of lust and fearful apprehension that tells you she knows well that the innocuous device is far more painful than its simple construction may appear. You remove her cuffs and bend her over the desk to commence her punishment, the thin cane raising red slash marks across her bottom as you bring it down hard and sharp.
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<br><br>
Proving her experience <<=setup.getNpcName("npc_sexdoll", 'first')>> moans a running count with each blow you land across her rear. As you administer punishment <<=setup.getNpcName('npc_development', 'formal')>> dishes out something else entirely, her smooth <<getWordPenis false>> switching back and forth between <<=ps(setup.getNpcName("npc_futa", 'first'))>> plug-spread holes, the desperate chastity-equipped woman moaning just as loud whether she is taking it in the ass or cunt.<br>
<br>
The other three students look on with a mix of pity, fear, jealousy and lust as <<=setup.getNpcName('npc_development', 'formal')>> continues until <<=setup.getNpcName("npc_futa", 'first')>> has cried out thrice in orgasm, the powerful climaxes leaving the gifted woman hanging limp across the desk as <<=setup.getNpcName('npc_development', 'formal')>> steps away and reaches to relieve you of your <<=$scene.action_2>>.
<</if>>
<br><br>
"@@.npc_development;I believe that will be a sufficient supplementary lesson for today. I hope you all have taken a lesson from today, either directly or by witnessing the consequences of greater extremes of behaviour.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> collects her things and you begin freeing your fellow students and supervising everyone changing to depart.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Change and return to the office." 600 "<<if setup.checkItemWorn('strapon_large')>><<removeItem 'strapon_large' true>><<deleteItem 'strapon_large'>><</if>><<if setup.checkItemWorn('strapon_double')>><<removeItem 'strapon_double' true>><<deleteItem 'strapon_double'>><</if>><<include 'removeScandalousSchoolgirl'>>">>]
</div>/*#
#desc: third class - after class "bonus" as student intro
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _tmpDate = setup.getNextDayOfWeek($now, 1, 8, 0, false)>>
<<addEvent 'event_class_4' _tmpDate>>
<<set $npc_development.flags.class = 4>>
<<switch $scene.action_1>>
<<case 'focus'>>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'npc_futa'>>
<<applyExperience 'submission' 14 'normal' $EXPOSED>>
<<applyExperience 'anal' $npc_futa.penis_size 'terrible' $EXPOSED>>
<<case 'npc_pr_sissy'>>
<<applyExperience 'submission' 16 'terrible' $EXPOSED>>
<<applyExperience 'bondage' 16 'very' $EXPOSED>>
<</switch>>
<<playerOrgasm>>
<<case 'normal'>>
<<changeHorny 10>>
<<case 'slack'>>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'npc_futa'>>
<<applyExperience 'submission' 12 'normal' $EXPOSED>>
<<applyExperience 'bdsm' 12 'terrible' $EXPOSED>>
<<case 'npc_pr_sissy'>>
<<applyExperience 'submission' 10 'normal' $EXPOSED>>
<<applyExperience 'bdsm' 10 'normal' $EXPOSED>>
<</switch>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<changeHorny _bdsm>>
<</switch>>
<<set $player.work.tmpworkPensum = 5*$player.work.bonusReq>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case 'focus'>>
"@@.npc_development;Congratulations, Miss <<=$player.last_name>>. Your performance today was exemplary, and fully deserving of reward...@@" Her bright tone drops as she continues, "@@.npc_development;<<=setup.getNpcName('npc_sexdoll', 'formal')>>... much the opposite, I am afraid. Your focus was greatly lacking and I only hope that my punishment will steer you towards better actions in the future.@@"<br>
<br>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'npc_futa'>>
As <<=setup.getNpcName('npc_futa', 'first')>> approaches your desk her glorious <<getWordPenis false>> springs free of her skirt and it is mere moments after your cuffs are removed that you find yourself bent over your desk, her hard member thrusting into your rear as you lock eyes with <<=setup.getNpcName('npc_sexdoll', 'formal')>>, the bimbofied sex-doll gasping "@@.npc_development;One,@@" as the first blow of a flogger slashes across her body.<br>
<br>
Whatever emotional support you might attempt to offer your poor fellow student is shattered as <<=setup.getNpcName('npc_futa', 'first')>> increases her pace, demonstrating some of the best cocks-womanship you've ever felt as she makes love to your ass using her
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
wonderful
<<else>>
big, beautiful
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 5>>
large
<<else>>
ginormous
<</if>>
<</if>>
<<getWordPenis false>> as she perfectly pleasures your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. Your eyes roll back in pleasure as she leans over to whisper in your ear, ordering you to "@@.npc_futa;Be a good girl and cum for me...@@"<br>
<br>
Your last thought as you surrender to obedience is to be jealous of her <<boy>>friend. <<printThought "If <<he>> gets this every day...">><br>
<br>
She shifts her hips and you cum, your <<getWordCum>> pooling under the table as she milks every drop your <<if $player.body_ref.penis>>prostate has<<else>>insides have<</if>> to give.
<<case 'npc_pr_sissy'>>
<<=setup.getNpcName('npc_development', 'formal')>> starts to un-cuff <<=setup.getNpcName('npc_sexdoll', 'first')>> but, rather than doing the same to you, <<=setup.getNpcName('npc_pr_sissy', 'first')>> slides into your lap, her arms draped over your shoulder as she smiles and leans in for a kiss.<br>
<br>
By the time you hear the first thwack of the flogger you have all but lost yourself in <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> embrace. Her soft lips leave yours wanting more as she goes on an excursion down your neck, her fingers teasing along your spine as she rocks slightly, causing you to shift on the dildo in your ass just enough to send further sparks through your body.<br>
<br>
You moan as she whispers in your ear. "@@.npc_pr_sissy;Good students are good girls, and good girls get rewards...@@" You bite your lip as she gets a little more aggressive, lips nipping at your neck as one hand <<if $player.body.breastsize[0] > 0>>gropes your breasts<<else>>teases your nipples<</if>> while the other reaches around behind to squeeze your ass as you continue to rock on the dildo that feels so, so good in your ass...<br>
<br>
You don't know how long you sit there, bound, with a <<if $fetish.sissy>>sissy<<else>>total<</if>> sex-pot in your lap kissing and teasing you while your fellow student is flogged but a metre away, but you feel the orgasm growing, until you finally cum, <<=ps(setup.getNpcName('npc_pr_sissy', 'first'))>> lips pressed against your own as if sucking the orgasm out of you until finally leaning back, leaving you gasping.
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
You try to catch your breath as <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> steps away and <<=setup.getNpcName('npc_development', 'formal')>> lands a final stinging blow on your poor, punished fellow student.
<<case 'normal'>>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'npc_futa'>>
"@@.npc_development;Congratulations, <<=setup.getNpcName('npc_pr_sissy', 'formal')>>. Your performance today was exemplary, and fully deserving of reward...@@" Her bright tone drops as she continues, "@@.npc_development;<<=setup.getNpcName('npc_sexdoll', 'formal')>>... much the opposite, I am afraid. Your focus was greatly lacking and I only hope that <<=ps(setup.getNpcName($npc_development.flags.headGirl.headGirl, 'formal'))>> punishment will steer you towards better actions in the future.@@"<br>
<br>
Still chained to your desk, you can only look back and forth and watch as the three women move around you — <<=setup.getNpcName('npc_sexdoll', 'first')>> bent over <<=ps(setup.getNpcName('npc_futa', 'first'))>> lap for a spanking as <<=setup.getNpcName('npc_pr_sissy', 'first')>> is folded over a desk to welcome <<=ps(setup.getNpcName("npc_development","formal"))>> <<getWordPenis false>> into her pert rear.
<<case 'npc_pr_sissy'>>
"@@.npc_development;Congratulations, <<=setup.getNpcName('npc_futa', 'formal')>>. Your performance today was exemplary, and fully deserving of reward...@@" Her bright tone drops as she continues, "@@.npc_development;<<=setup.getNpcName('npc_sexdoll', 'formal')>>... much the opposite, I am afraid. Your focus was greatly lacking and I only hope that <<=ps(setup.getNpcName($npc_development.flags.headGirl.headGirl, 'formal'))>> punishment will steer you towards better actions in the future.@@"<br>
<br>
While <<=setup.getNpcName("npc_development","formal")>> sets about getting <<=ps(setup.getNpcName('npc_sexdoll', 'formal'))>> cuffs removed and her into position for a flogging <<=setup.getNpcName('npc_pr_sissy', 'first')>> takes a radically different tactic, practically melting into <<=ps(setup.getNpcName('npc_futa', 'first'))>> lap.<br>
<br>
Just watching the two of them kiss would be enough to have anyone hot and bothered, but the additional distraction of the flogging going on a metre the other direction... plus the thought that every time <<=setup.getNpcName('npc_pr_sissy', 'first')>> rocks in <<=ps(setup.getNpcName('npc_futa', 'first'))>> it means the latter woman has two dildos shifting inside her...
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
You and the other "middling" students can only watch as <<=setup.getNpcName("npc_development","formal")>> and <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'formal')>> administer pleasure and pain. It becomes a bit of a challenge to decide which direction to look between the "dueling" displays as you shift on the seat-mounted dildo, but eventually the punishment and rewards are over, leaving three of you wanting more with the Head Girl and the over and under achievers gasping and exhausted.<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> steps away and signals for <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'formal')>> to begin un-cuffing the rest of you.
<<case 'slack'>>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'npc_futa'>>
"@@.npc_development;Congratulations, <<=setup.getNpcName('npc_pr_sissy', 'formal')>>. Your performance today was exemplary, and fully deserving of reward...@@" Her bright tone drops as she continues, "@@.npc_development;Miss <<=$player.last_name>>... much the opposite, I am afraid. Your focus was greatly lacking and I only hope that <<=ps(setup.getNpcName('npc_futa', 'formal'))>> punishment will steer you towards better actions in the future.@@"<br>
<br>
Forgoing any advanced implements <<=setup.getNpcName('npc_futa', 'first')>> has you un-cuffed from your desk and bent over her lap, her hand landing against your ass with surprising force.<br>
<br>
"@@.npc_futa;Such a delightful butt for spanking... now take your lesson and keep this in mind next lesson. You really must pay better attention!@@" Another, even harder blow cuts off your reply and you bite your lip as you focus on surviving her apparent attempt to turn your entire bottom bright crimson.
<<case 'npc_pr_sissy'>>
"@@.npc_development;Congratulations, <<=setup.getNpcName('npc_futa', 'formal')>>. Your performance today was exemplary, and fully deserving of reward...@@" Her bright tone drops as she continues, "@@.npc_development;Miss <<=$player.last_name>>... much the opposite, I am afraid. Your focus was sorely lacking and I only hope that <<=ps(setup.getNpcName('npc_pr_sissy', 'formal'))>> punishment will steer you towards better actions in the future.@@"<br>
<br>
You remain chained to your desk as <<=setup.getNpcName('npc_pr_sissy', 'first')>> walks over to the supply cabinet. Seeming to forgo the whips and floggers in front of her she grabs something unseen before walking back towards you with a mischievous smile.<br>
<br>
Unable to see what she's doing your heart races as she circles round behind you. She whispers in your ear "@@.npc_pr_sissy;And now for your punishment...@@"<br>
<br>
You tense in anticipation as a prickling feeling rolls along your ribs. Escape prevented by your binds you look down to see the innocuous, but torturous wartenberg wheel rolling over you skin. You gasp and thrash, rocking on your dildo as you try to escape the evil device, but to no avail.
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
A mere metre away <<if $npc_development.flags.headGirl.headGirl == 'npc_pr_sissy'>><<=setup.getNpcName('npc_pr_sissy', 'formal')>><<else>><<=setup.getNpcName('npc_futa', 'formal')>><</if>> is getting her reward — a hard, deep dicking courtesy of <<=ps(setup.getNpcName('npc_development', 'formal'))>> streamlined <<getWordPenis false>>.<br>
<br>
You make brief eye-contact with the "star" student as she offers you a supportive glance... the moment is brief, however, before her eyes roll back in pleasure, <<=setup.getNpcName('npc_development', 'formal')>> drawing the orgasm out for nearly a minute before stepping back and motioning for your punishment to come to an end, as well.
<<default>>
ERROR: unexpected scene.action_1: <<=$scene.action_1>>
<</switch>>
<br><br>
"@@.npc_development;I believe that will be a sufficient supplementary lesson for today. I hope you all have taken a lesson from today, either directly or by witnessing the consequences of greater extremes of behaviour.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> collects her things and <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> frees the other students and supervises everyone changing out of schoolgirl attire and departing for their normal duties.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Change and return to work." 600 "<<include 'removeScandalousSchoolgirl'>>">>]
</div>/*#
#desc: smart class re-do intro
#status: FINISHED 0.8.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You travel down to <<=ps(setup.getNpcName('npc_development', 'formal'))>> floor, entering the classroom to find her just "finishing up" with another student. <<=setup.getNpcName('npc_development', 'formal')>> smiles at you as the student rises to their feet<<if $fetish.cum>> — fresh cum glistening on their face<</if>> as they curtsy in thanks and then walk back to their desk to begin changing out of their slutty schoolgirl outfit.<br>
<br>
"@@.npc_development;Good afternoon, Miss <<=$player.last_name>>@@" states in casual greeting as she fixes her clothes; her tight pencil skirt concealing the prize between her legs and diverting attention back up her body to her large, gravity-defying rack.<br>
<br>
You explain that you have come to take her up on the offer of remedial lesson on how to be a superior <<if $fetish.sissy>>SISSI <</if>>secretary.<br>
<br>
<<if $now.getUTCHours() == 13 && $now.getUTCMinutes() > 10>>
"@@.npc_development;A laudable goal, but one that I cannot accommodate today as I have a prior engagement at <<if $options.militaryTime>>14:00<<else>>two<</if>>.@@"<br>
<br>
<<printThought "Damn, if I only hadn't dawdled after work...">><br>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 180 "<<set $daily.homeShortcut=false>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "room_elevator_home" "Head straight home." 300 "<<set $daily.homeShortcut=true>><<set $player.cutscene.lockinventory=true>>">>]
<<elseif State.hasPlayed("event_school_smart_redo_5")>>
"@@.npc_development;Very ambitious, but you have already more than shown your skill in passing my lessons. I need to focus on other students, I believe you would best continue your development doing... independent study, yes?@@"<br>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 180 "<<set $daily.homeShortcut=false>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "room_elevator_home" "Head straight home." 300 "<<set $daily.homeShortcut=true>><<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<=setup.getNpcName('npc_development', 'formal')>> smiles and gestures for you to take a seat. "@@.npc_development;Please get changed and we can get started — I find it really helps focus the mind on learning by being in the proper outfit.@@"<br>
<br>
[<<moveTo "event_school_smart_redo_2" "Get changed and take a seat." 180 "<<set $scene.change=true>>">>]<br>
[<<moveTo "event_school_smart_redo_2" "Remember you have somewhere else to be." 180 "<<set $scene.change=false>>">>]
<</if>>
</div>/*#
#desc: smart class re-do start class
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.change>>
<<include "dressScandalousSchoolgirl">>
<<applyExperience 'submission' 15 'little' $SEEN_FRIEND>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $SEEN_FRIEND>>
<<applyExperience 'bondage' 8 'little' $SEEN_FRIEND>>
<<set $scene.psychiatristCall = setup.daysToDate($now, setup.checkTaskLocationTime('room_psychiatrist_lobby')) == 1>>
<<if $scene.psychiatristCall>>
<<postponeTask 'psychiatrist_endless_apointment_1' 7>>
<</if>>
<</if>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<if $scene.change>>
You change into the schoolgirl uniform and take your seat, the chair-mounted dildo sliding into your ass as you cuff your wrists and ankles in ritualistic preparation for the lesson.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> smiles as she brings up the first slide...<br>
<br>
<<if setup.hasThreshold('smart', 'smart_other', 'class')>>
<<printThought "So this should be mostly review, but there could still be an important detail I missed...">><br>
<br>
[<<moveTo "event_school_smart_redo_3" 'Focus your attention and make this repeat count.' 2800 "<<set $scene.action_1='focus'>>">>]<br>
[<<moveTo "event_school_smart_redo_3" 'Continue class.' 2800 "<<set $scene.action_1='normal'>>">>]<br>
[<<moveTo "event_school_smart_redo_3" "Why did you come back for this? It's so boring..." 2800 "<<set $scene.action_1='slack'>>">>]
<<elseif setup.getTotalValue("smart") >= 15>>
<<printThought "I knew this was going to be tough, but I've got this.">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_school_smart_redo_3" 'Focus your attention and make this repeat count.' 2800 "<<set $scene.action_1='focus'>>">>] <<hint $options "This is going to take real willpower and mental focus.">><br>
<<else>>
[@@.link_locked;You presently lack the will to ignore distractions and really focus on learning.@@]<br>
<</if>>
[<<moveTo "event_school_smart_redo_3" 'Continue class.' 2800 "<<set $scene.action_1='normal'>>">>]<br>
[<<moveTo "event_school_smart_redo_3" "Why did you come back for this? It's so boring..." 2800 "<<set $scene.action_1='slack'>>">>]
<<elseif setup.getTotalValue("smart") < 5 || setup.getTotalValue("bimbofication") > setup.getTotalValue("smart")>>
<<printThought "Oh, right, this lesson is, like, hard...">><br>
<br>
[@@.link_locked;Class is too far above your head to really focus in.@@]<br>
[<<moveTo "event_school_smart_redo_3" 'Continue class.' 2800 "<<set $scene.action_1='normal'>>">>]<br>
[<<moveTo "event_school_smart_redo_3" "Why did you come back for this? It's so boring..." 2800 "<<set $scene.action_1='slack'>>">>]
<<elseif setup.getTotalValue("smart") < 10>>
<<printThought "I knew this was going to be tough, but maybe if I focus I can learn something?">><br>
<br>
<<if setup.getWillpower() > 2>>
[<<moveTo "event_school_smart_redo_3" 'Focus your attention and make this repeat count.' 2800 "<<set $scene.action_1='focus'>>">>] <<hint $options "This is going to take real willpower and mental focus.">><br>
<<else>>
[@@.link_locked;You presently lack the will to ignore distractions and really focus on learning.@@]<br>
<</if>>
[<<moveTo "event_school_smart_redo_3" 'Continue class.' 2800 "<<set $scene.action_1='normal'>>">>]<br>
[<<moveTo "event_school_smart_redo_3" 'This is so boring... why did you come back for this?' 2800 "<<set $scene.action_1='slack'>>">>]
<<else>>
<<printThought "Learning takes work, I came here for a reason.">><br>
<br>
<<if setup.getWillpower() > 1>>
[<<moveTo "event_school_smart_redo_3" 'Focus your attention.' 2800 "<<set $scene.action_1='focus'>>">>] <<hint $options "This is going to take real willpower and mental focus.">><br>
<<else>>
[@@.link_locked;You presently lack the will to ignore distractions and really focus on learning.@@]<br>
<</if>>
[<<moveTo "event_school_smart_redo_3" 'Continue class.' 2800 "<<set $scene.action_1='normal'>>">>]<br>
[<<moveTo "event_school_smart_redo_3" 'This is so boring... why did you come back for this?' 2800 "<<set $scene.action_1='slack'>>">>]
<</if>>
<<else>>
You apologise to <<=setup.getNpcName('npc_development', 'formal')>> as you explain that you have just remembered a previous commitment. She appears somewhat disappointed, but nods.<br>
<br>
"@@.npc_development;Well the offer remains open for some future Friday. In any case, have a lovely weekend.@@"<br>
<br>
You wish her the same and quickly depart.<br>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 180 "<<set $daily.homeShortcut=false>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "room_elevator_home" "Head straight home." 300 "<<set $daily.homeShortcut=true>><<set $player.cutscene.lockinventory=true>>">>]
<</if>>
</div>/*#
#desc: smart class re-do class
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.psychiatristCall>>
<<addItem 'school_panty_gag'>>
<<wearItem 'school_panty_gag' true>>
<<applyExperience 'oral' 10 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<switch $scene.action_1>>
<<case 'focus'>>
<<set $npc_development.flags.smart_class = true>>
<<if !setup.hasThreshold('smart', 'smart_other', 'class')>>
<<setThreshold 'smart' 'smart_other' 'class'>>
<<if setup.getTotalValue("smart") >= 15>>
<<spendWillpower 1>>
<<elseif setup.getTotalValue("smart") < 10>>
<<spendWillpower 3>>
<<else>>
<<spendWillpower 2>>
<</if>>
<</if>>
<<applyExperience 'smart' 20 'skip' $SEEN_FRIEND>>
<<case 'normal'>>
<<applyExperience 'smart' 15 'skip' $SEEN_FRIEND>>
<<case 'slack'>>
<<applyExperience 'bimbofication' 15 'skip' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case 'focus'>>
You narrow in on the lesson, your restraints oddly aiding your ability to keep focused as <<=setup.getNpcName('npc_development', 'formal')>> moves things to more advanced and complex subjects.
<<case 'normal'>>
You pay what attention you can to the lesson at hand — though there's no getting around the distraction of your restraints and the dildo in your ass. Still, you definitely learn a few things that should prove useful at work.
<<case 'slack'>>
You wonder why you even bothered coming for this, it's so, like... boring... after tuning out you end up "occupying" yourself by grinding on the dildo upon which you are perched and ogling your buxom instructor.
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
<<if $scene.psychiatristCall>>
Partway through class your phone rings — it is <<=setup.getNpcName('npc_psychiatrist', 'formal')>> asking why you have not shown up for your scheduled appointment.<br>
<br>
Before you can give an excuse <<=setup.getNpcName('npc_development', 'formal')>> snatches the phone from your grasp and answers it for you.<br>
<br>
"@@.npc_development;<<=setup.getNpcName('npc_psychiatrist', 'formal')>>? Yes, it is simply lovely to speak with you... but I afraid that we are right in the middle of a class. Yes, I understand the importance of <<=$player.first_name>>'s mental health, but—@@"<br>
<br>
You try to ask for your phone back but <<=setup.getNpcName('npc_development', 'formal')>> shush's you in annoyance.<br>
<br>
"@@.npc_development;Sorry, perhaps the both of us should cede time to <<=setup.getNpcName('npc_discipline', 'formal')>> because someone was just attempting to speak out of turn!@@"<br>
<br>
You crane your ear to try and hear what <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> response is but <<=setup.getNpcName('npc_development', 'formal')>> merely concludes with a "@@.npc_development;yes, that is just brilliant! I had near forgotten how lovely it is to collaborate with you — we really must get lunch sometime to catch up and compare notes.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> hangs up, not saying so much as a word as she reaches under her skirt to pull off her creamy white, and quite wet, panties.<br>
<br>
"@@.npc_development;Since you cannot seem to keep your mouth shut, let us at least keep it from making any more disruptive noises.@@" She pinches your nose until your part your lips, jamming ever square centimetre of wet panties into your mouth and then stalking back to her desk for tape to seal everything in.<br>
<br>
You moan, your cheeks puffed out and your tongue pressed against what has to be the front pad — the heavy, feminine flavour of her sweat and, most of all, girl-dick, intriguing and intense, especially as her sleek anatomy means it is without the normal backing tang of testicles.<br>
<br>
"@@.npc_development;There, that should prevent any more interruptions.@@" She states with a satisfied nod. "@@.npc_development;Now, where was I...@@"<br>
<br>
Unable to object to this measure you aren't quite sure how being gagged correlates to paying attention... or not getting phone calls, but you have little alternative save to settle back in for the remainder of the lesson. Well, as much as you can, given that her lack of panties has her near-constantly tenting her skirt, which makes for quite the distraction.
<<else>>
Being the only student in class seems to make things move even quicker, and before you know it <<=setup.getNpcName('npc_development', 'formal')>> has reached the end of the lesson.
<</if>>
<br><br>
[<<moveTo "event_school_smart_redo_4" "Finish up." 180>>]
</div>/*#
#desc: smart class re-do finish
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.psychiatristCall>>
<<removeItem 'school_panty_gag' true>>
<<deleteItem 'school_panty_gag'>>
<</if>>
<<if $scene.action_1 == 'focus'>>
<<addItem 'panties_npc_development'>>
<<set $shopStatus['mall_lingerie_shop_fetish'].unlocked_inventory.pushUnique('schoolgirl')>>
<</if>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_development', 'formal')>> releases your restraints with a smile.<br>
<br>
<<if $scene.action_1 == 'focus'>>
"@@.npc_development;Very well done,@@" she states with pride. "@@.npc_development;You seem to have nigh mastered these subjects, though you are welcome to return in the future if you ever feel the need for a refresher.@@"<br>
<br>
<<if $scene.psychiatristCall>>
Before freeing you from the desk she unwinds the tape and pulls her panties out of your mouth. Even moreso than when they went in, they are sopping wet, full of a mix of her sweat and your saliva.<br>
<br>
"@@.npc_development;Look what a mess you made!@@" She states as she drops the wet panties in your lap. "@@.npc_development;Totally ruined, but I suppose you can keep them. A little souvenir of our time together.@@"<br>
<br>
<</if>>
You stand up and start to change but she stops you. "@@.npc_development;Keep the uniform — you've earned it.@@"<br>
<br>
You thank her for the gift and consider if you really want to wear something so skimpy out...<br>
<br>
[<<moveTo "company_lobby" "Change back into your normal things and leave." 120 "<<removeItemSet 'schoolgirl_scandalous'>><<deleteItemSet 'schoolgirl_scandalous'>><<if $scene.plug != ''>><<wearItem $scene.plug true>><</if>><<useClothSetPop 'tmp'>>">>]<br>
[<<moveTo "event_school_smart_redo_5" "Leave as you are." 60>>]
<<else>>
"@@.npc_development;Well I hope you found that productive, feel free to come by any other Friday if you want a refresher, by the look of things you are still struggling a bit with some of the more complex bits.@@"<br>
<br>
<<if $scene.psychiatristCall>>
Before freeing you from the desk she unwinds the tape and pulls her panties out of your mouth. Even moreso than when they went in, they are sopping wet, full of a mix of her sweat and your saliva.<br>
<br>
"@@.npc_development;Look what a mess you made!@@" She states as she tosses the wet panties into the trash. "@@.npc_development;It is a good thing the company covers my panties as a teaching expense, I go through so many pairs keeping you silly students in line!@@"<br>
<br>
You reflexively apologise and work the kinks out of your jaw as she removes the rest of your restraints.
<</if>>
You thank her for the private lesson and change back into your normal clothes.<br>
<br>
[<<moveTo "room_elevator_home" "Head down to the lobby." 180 "<<set $daily.homeShortcut=false>><<set $player.cutscene.lockinventory=true>><<include 'removeScandalousSchoolgirl'>>">>]<br>
[<<moveTo "room_elevator_home" "Head straight home." 300 "<<set $daily.homeShortcut=true>><<set $player.cutscene.lockinventory=true>><<include 'removeScandalousSchoolgirl'>>">>]
<</if>>
</div>/*#
#desc: smart class re-do leave in schoolgirl outfit
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 13 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You curtsy in thanks for the gift and head for home, partway across the lobby when a breeze runs between your legs and you hear a <<if $npc_guard.profile>>familiar <</if>>voice call out do you remember just how scantily clad you are.<br>
<br>
"@@.npc_guard;Hey, you, Miss <<=$player.last_name>>!@@" You turn to see
<<if $npc_guard.profile>>
<<=setup.getNpcName("npc_guard","formal")>>
<<else>>
one of the guards — a woman <<if !$npc_admin.fem>>nearly <</if>>as muscle-bound and imposing as your friend <<=setup.getNpcName("npc_admin","first")>>,
<</if>>
beckoning you over to the guard station.<br>
<br>
[<<moveTo "event_school_smart_redo_6" "Go see what she wants." 60>>]
</div>/*#
#desc: smart class re-do guard catches in schoolgirl outfit
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "trenchcoat">>
<<wearItem "trenchcoat" true>>
<<applyExperience 'humiliation' 15 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airport.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You approach <<if $npc_guard.profile>>the guard<<else>><<=setup.getNpcName("npc_guard","formal")>><</if>> and she leads you behind a privacy curtain.<br>
<br>
"@@.npc_guard;Been taking one of <<=ps(setup.getNpcName("npc_development","formal"))>> classes?@@" She asks with a nod towards your outfit that feels like she's undressing you even further.<br>
<br>
You nod nervously and she grins, running her nightstick up your body. "@@.npc_guard;Figured. And don't get me wrong, you look cute as heck and if I wasn't on duty — or we were upstairs, I'd gladly take advantage of the screaming invitation that outfit represents to see how your academic knowledge carries over to real-life situations...@@" Your heart skips a beat at the thought of how much stronger she is than you are, and that she could probably easily break you in half...<br>
<br>
She raises your chin with the tip of her nightstick as she continues. "@@.npc_guard;Unfortunately... we are not upstairs, we are on the ground level. And company policy is that we should present a professional view to the outside world, which means I am going to have to ask you to cover up. Don't worry — we have materials for such situations.@@" She glances you over again as if calculating your size before reaching behind her and plucking a long trench coat off a rack.<br>
<br>
"@@.npc_guard;Here you go — this will keep you decent, and the company's name protected.@@"<br>
<br>
She watches as you put the coat on and cinch it tight around your waist before pulling the curtain to one side and motioning for you to continue on your way.<br>
<br>
As you head for the door you somehow feel even more cognisant of your skimpy attire than you were broadcasting it to the world...<br>
<br>
[<<moveTo "room_citymap" "Leave the building and head into town." 300>>]
</div>/*#
#desc: fourth class - anal intro
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "dressScandalousSchoolgirl">>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false)>>
<div id="invframe" class="scrolltext">
Monday morning means another class, and you have just enough time to do some basic work catch-up before <<=setup.getNpcName("npc_manager","formal")>> is sending you off for instruction. You arrive for another class to find <<=setup.getNpcName('npc_sexdoll', 'first')>> and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> fooling around. While both locked and "chaste" they are doing just about everything else — breasts pressed tightly against each other as they make out, grinding in their seat with <<=setup.getNpcName('npc_sexdoll', 'first')>> enjoying riding her chair dildo while toying with <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> plug under their short schoolgirl skirt.<br>
<br>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
You clear your throat and the two <<if $fetish.sissy>>sissies<<else>>girls<</if>> bashfully hurry back to their desks.<br>
<br>
You continue on and fulfill your duties as Head Girl to change and then one by one assist your fellow students in doing the same before binding them to their seats. To your slight surprise, and smiling approval, <<=setup.getNpcName('npc_futa', 'first')>> arrives already belted, obediently submitting to your treatment in getting her into her uniform and tightly situated at her desk.<br>
<br>
Interestingly, the "normal" security of wrist and ankle cuffs has been enhanced further by a wide waist strap. Making sure each student is properly perched on her dildo you do your duty and pull each strap as tight as it will go, ensuring that each of you is secured and restricted from grinding or shifting atop your "study buddy" as you have become accustomed.
<<case 'npc_futa' 'npc_pr_sissy'>>
You quietly squeeze past the two <<if $fetish.sissy>>sissies<<else>>girls<</if>> to get to your desk and a moment later <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> arrives, quickly shooing the pair back to their desks.<br>
<br>
Continuing on with her Head Girl duties, <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> studiously supervises as the rest of you change into your uniforms and take your seats. In a surprising turn your "normal" wrist and ankle cuffs are enhanced further, a wide waist strap cinched tight until you cannot shift or lift off in the slightest from the otherwise familiar chair-mounted dildo.
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
<<=setup.getNpcName('npc_development', 'formal')>> arrives a few minutes after you have all gotten situated, walking to the front of the room and pausing for a moment without commencing the lesson, as if waiting for one of you to say something...<br>
<br>
[<<moveTo "event_school_4_2" "Inform on your two misbehaving class-mates." 300 "<<set $scene.inform=true>>">>]<br>
[<<moveTo "event_school_4_2" "Remain silent." 300 "<<set $scene.inform=false>>">>]
</div>/*#
#desc: fourth class - confess to pre-class mischief
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
<<if $scene.inform>>
You raise your voice to inform <<=setup.getNpcName('npc_development', 'formal')>> of the "trouble" <<=setup.getNpcName('npc_sexdoll', 'first')>> and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> were getting up to before class. <<=setup.getNpcName('npc_development', 'formal')>> nods somberly and presses a button on her desk that causes your restraints to release.<br>
<br>
"@@.npc_development;Miss <<=$player.last_name>>. Would you kindly see me at the front of the class?@@"<br>
<br>
You rise off your dildo and hurry forward, only for <<=setup.getNpcName('npc_development', 'formal')>> to pull out a mean looking paddle. "For <<if $fetish.sissy>>SISSI Student<<else>>Educational<</if>> Use Only," you note with alarm, as <<=setup.getNpcName('npc_development', 'formal')>> directs you to bend over the desk and expose your rear to the class.<br>
<br>
"@@.npc_development;I see you are confused by this development, but it is quite simple. As head girl you are responsible for the behaviour of all of your wards. Their failures are your failures, and thus you must be punished.@@" You bite your lip nervously as she does a slow warm-up swing to check her position. "@@.npc_development;Of course, they must be punished as well, so, for each instructive blow of this paddle, know that they will likewise be enduring a nice painful shock, courtesy of their seats...@@"
<<else>>
You join the rest of the class in silence until <<=setup.getNpcName('npc_development', 'formal')>> shakes her head and presses a button on her desk that causes your restraints to release.<br>
<br>
"@@.npc_development;Miss <<=$player.last_name>>. Would you kindly see me at the front of the class?@@"<br>
<br>
You rise off your dildo and hurry forward, only for <<=setup.getNpcName('npc_development', 'formal')>> to pull out a mean looking paddle. "For <<if $fetish.sissy>>SISSI Student<<else>>Educational<</if>> Use Only," you note with alarm, as <<=setup.getNpcName('npc_development', 'formal')>> directs you to bend over the desk and expose your rear to the class.<br>
<br>
"@@.npc_development;I see you are confused by this development, but it is quite simple. As head girl you are responsible for the behaviour of all of your wards. Your failure to report on <<=setup.getNpcName('npc_sexdoll', 'first')>> and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> getting up to trouble before class... well, obviously that requires immediate corrective measure.@@" You bite your lip nervously as she does a slow warm-up swing to check her position. "@@.npc_development;Of course, they must be punished as well, so, for each instructive blow of this paddle, know that they will likewise be enduring a nice painful shock, courtesy of their seats...@@"
<</if>>
<<case 'npc_futa' 'npc_pr_sissy'>>
<<if $scene.inform>>
You quickly blurt out that <<=setup.getNpcName('npc_sexdoll', 'first')>> and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> were fooling around before class. <<=setup.getNpcName('npc_development', 'formal')>> nods somberly and presses a button on her desk that causes your restraints to release.<br>
<br>
"@@.npc_development;Miss <<=$player.last_name>>. Would you kindly see me at the front of the class?@@"<br>
<br>
You rise off your dildo and hurry forward, only for <<=setup.getNpcName('npc_development', 'formal')>> to pull out a mean looking paddle "For <<if $fetish.sissy>>SISSI Student<<else>>Educational<</if>> Use Only," you note alarmingly as <<=setup.getNpcName('npc_development', 'formal')>> directs you to bend over the desk and expose your rear to the class.<br>
<br>
"@@.npc_development;You really should know better than to snitch on your colleagues. While I certainly appreciate the information, school is about more than mere learning, it is also about building connections and camaraderie... your betrayal of your friends' trust undermines all of that and thus must be dealt with.@@"<br>
<br>
You bite your lip nervously as she does a slow warm-up swing to check her position. "@@.npc_development;That said... all misbehaviour in my classroom will be dealt with, and so our two naughty sluts will be enjoying some sparking internal punishment so that they may learn a lesson, and share in your correction.@@"
<<else>>
You keep quiet, but <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> speaks up to inform <<=setup.getNpcName('npc_development', 'formal')>> about <<=setup.getNpcName('npc_sexdoll', 'first')>> and <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> pre-class misbehaviour.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> nods somberly and presses a button on her desk that causes <<=ps(setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first'))>> restraints to release.<br>
<br>
"@@.npc_development;<<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'formal')>>. Would you kindly see me at the front of the class?@@"<br>
<br>
<<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> rises proudly off her dildo to hurry to the front, only for <<=setup.getNpcName('npc_development', 'formal')>> to pull out a mean looking paddle "For <<if $fetish.sissy>>SISSI Student<<else>>Educational<</if>> Use Only," you note as <<=setup.getNpcName('npc_development', 'formal')>> directs <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> to bend over the desk, with her rear exposed to the class.<br>
<br>
"@@.npc_development;You really should know better than to snitch on your colleagues. While I certainly appreciate the information, school is about more than mere learning, it is also about building connections and camaraderie... your betrayal of your friends' trust undermines all of that and thus must be dealt with.@@"<br>
<br>
<<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> knows enough not to argue as <<=setup.getNpcName('npc_development', 'formal')>> does a slow warm-up swing to check her position. "@@.npc_development;That said... all misbehaviour in my classroom will be dealt with, and so our two naughty sluts will be enjoying some sparking internal punishment so that they may learn a lesson, and share in your correction.@@"
<</if>>
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
[<<moveTo "event_school_4_3" "On to punishment..." 300>>]
</div>/*#
#desc: fourth class - pre-class punishment
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_development.flags.headGirl.headGirl == "mc" || $scene.inform>>
<<applyExperience 'bdsm' 13 'normal' $EXPOSED>>
<<set $npc_development.flags.class_punish=true>>
<</if>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
THWACK! The paddle lands hard on
<<if $npc_development.flags.headGirl.headGirl == "mc" || $scene.inform>>
your rear, your
<<else>>
<<=ps(setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first'))>> rear, her
<</if>>
pained yelp mixing with the electrified cries of the two REAL malcontents.
<br><br>
"@@.npc_development;In.@@"<br>
<br>
THWACK!<br>
<br>
"@@.npc_development;My.@@"<br>
<br>
THWACK!<br>
<br>
"@@.npc_development;Classroom.@@"<br>
<br>
THWACK!<br>
<br>
"@@.npc_development;I.@@"<br>
<br>
THWACK!<br>
<br>
"@@.npc_development;Expect.@@"<br>
<br>
THWACK!<br>
<br>
"@@.npc_development;Control.@@"<br>
<br>
THWACK!<br>
<br>
"@@.npc_development;And.@@"<br>
<br>
THWACK!<br>
<br>
"@@.npc_development;Obedience.@@"<br>
<br>
THWACK!<br>
<br>
"@@.npc_development;Am I understood?@@"<br>
<br>
A chorus of "Yes, <<=setup.getNpcName("npc_development","formal")>>" echoes in response — even those students who evaded this round of punishment joining in out of solidarity... and perhaps a touch of fear.<br>
<br>
"@@.npc_development;Wonderful,@@" she states, putting the paddle out of the way and sending<br>
<<if $npc_development.flags.headGirl.headGirl == "mc" || $scene.inform>>
you back to your seat where you very carefully sit down, wincing as your tender rear makes contact, even as the filling presence of the dildo provides some comfort. You strap yourself in tightly and try not to think about the lingering pain of your bottom pressed into the firm chair.
<<else>>
<<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> back to her seat to settle gingerly back onto her dildo and strap back in.
<</if>>
<br><br>
"@@.npc_development;With that business out of the way, I believe it is time to move forward with today's lesson.@@"<br>
<br>
[<<moveTo "event_school_4_4" "Begin class." 180>>]
</div>/*#
#desc: fourth class - begin class
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Once the whole class is once again properly secured <<=setup.getNpcName('npc_development', 'formal')>> begins the class. "@@.npc_development;Welcome, all of you — today will be the final class in this advanced employee development program. May the skills I have taught you help you to be the best assistants your owners could ask for, and in so doing, help raise the company to new heights!@@"<br>
<br>
With a taunting smile, she continues. "@@.npc_development;Of course you are all probably wondering what important lesson remains to be the capstone on our time together... what could have been worth saving, to put a proper bow on things and send you out as experts... well, I imagine that you are all clever enough by now to guess, but indeed it is true, your lips and throats and tongues and minds have been shown the way, and now it is time to take those lovely, luscious lower fuck-holes of yours to the next level, with that most wonderful arts — pompoir!@@"<br>
<br>
She flicks on the projector and begins the lesson.<br>
<br>
[<<moveTo "event_school_4_5" "Continue." 1800>>]
</div>/*#
#desc: fourth class - anal instructions
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'little' $EXPOSED>>
<<addItem "sensory_deprivation_hood">>
<<wearItem "sensory_deprivation_hood" true>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
"@@.npc_development;By now all of you have, I am sure, become accustomed, nay, addicted, to being fucked. Why, even now each of you is perched with at least one dildo deep inside of you, and you treat it as natural, proper, why, without it you would feel empty and neglected. But, just as we previously trained your mouths there is more to being an expert Secretary than merely bending over — you must train your hole to the peak of performance, and here is where the art of pompoir comes in — teaching you to use your muscles for perfect stimulation, the goal to be so expert that your partner need not even thrust, they should be able to merely stick it in, confident that you alone can handle the rest. Of course some of you will be pulling double duty today... but that is just the price one pays for such gifted anatomy!@@"<br>
<br>
She smiles as <<if $player.body_ref.vagina>>you reflexively squeeze down on your dual occupants<<else>>your sphincter reflexively squeezes its occupant<</if>>.<br>
<br>
"@@.npc_development;Normally the art of pompoir can take years to master, to train your muscles to react and respond, but with my process, well... what's a little pain to gain such experience in a fraction of the time?@@"<br>
<br>
She grins and you shift nervously, glancing to your fellow students nervously as <<=setup.getNpcName('npc_development', 'formal')>> returns to her desk and then approaches <<=setup.getNpcName('npc_sissy_secretary', 'first')>> bearing a hood.<br>
<br>
"@@.npc_development;The first step to accelerated training you have already taken — bound as you are your performance will be completely down to your interior control, no cheating yourself with the bounce and grind. The next step—@@" she continues as she pulls the hood over <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> nervous, but obedient, face — "@@.npc_development;Is total focus. You must free yourself from all possible distraction so that you can dedicate your attention to the lesson.@@"<br>
<br>
She zips the hood closed and buckles it tight as you note tell-tale sensory deprivation pads over eyes and ears. "@@.npc_development;The third part,@@" she continues, fetching a second hood and moving on to the next student "@@.npc_development;Is precise instructional feedback — we shall go over basic drills and then the AI subroutines controlling the advanced units inside of you will take over to tell you exactly what to do so that you can learn to react almost instantly...@@"<br>
<br>
Your heart beats faster as she comes to your desk with a hood, noting a padded gag on the inside that swells slightly in your mouth as the soft leather closes tight.<br>
<br>
For a moment all sound and sight ceases, and then you hear her voice filtered through a speaker, seeming to come from inside your head, the disorientating isolation making you hang on her every word. "@@.npc_development;The final piece of the puzzle is the most important for accelerated learning — not only will your failures be punished and successes rewarded, but electronic stimulation will act to guide your efforts, to force your muscles to obey and imprint proper behaviour at... lightning speed.@@"<br>
<br>
You'd groan at the pun if the dildo in your rear didn't choose that very moment to vibrate, wiggling inescapably inside of you and making you moan around the mouth-filling gag.<br>
<br>
"@@.npc_development;There we go, that should have you all relaxed and ready to begin@@" continues <<=ps(setup.getNpcName('npc_development', 'formal'))>> disembodied voice "@@.npc_development;We shall start by building a vocabulary of technique... and then we will make those pert holes sing...@@"<br>
<br>
[<<moveTo "event_school_4_6" "The lesson begins." 2000>>]
</div>/*#
#desc: fourth class - anal training
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'very' $EXPOSED>>
<<applyExperience 'anal' 18 'skip' $EXPOSED>>
<<applyExperience 'bdsm' 18 'skip' $EXPOSED>>
<<set $player.flags.special_skills.anal_training = true>>
<<if $npc_pr_sissy.stage == 4 && $player.work.secretaryRank >= 3>>
<<addWorkEvent 'pr_sissy_campaign_bend'>>
<</if>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(true) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_development', 'formal'))>> timbre shifts as you realise you must be listening to a recording, but such thoughts are soon banished as all attention is drawn to the implement in your ass as you are gently walked through a sequence of clench and squeeze, first on your own, and then with the painful "help" of the electrics as your muscles are forcibly tightened to show you the "correct" way to do things...<br>
<br>
The introduction ramps up quickly as you rapidly gain a new understanding of your own insides, how to vary your efforts, tightening your gut, squeezing your sphincter, pushing... all these in more as you learn to fuck <<if $player.body_ref.vagina>>both dildos<<else>>the dildo<</if>> inside of you without actually moving up and down. Panting through the gag the world outside your dark prison fades as you strain against your bonds, alternately fighting to escape, then focusing all that you have on following instructions, desperate that if you can only learn to do things perfectly the evil shocks will stop...<br>
<br>
Things are not all pain, however; even as you focus on "pleasing" the autonomous dong your movements can't help but press your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> against it, the occasional "reward" vibrations doing more than just massaging new life into sore muscles as you go from clumsy to precise, squeezing and relaxing, working the dildo with everything you have, even as the voice fades to leave you deaf and blind, focused utterly on responding to a slight twitch or shift.<br>
<br>
Stepping up the difficulty <<if $player.body_ref.vagina>>your dildos shift<<else>>the dildo shifts<</if>> in size, forcing you to adapt technique to a larger or smaller partner as the rest of your body relaxes, time itself growing fuzzy as everything takes a back seat to serving with your <<if $player.body_ref.vagina>>cunt and <</if>>ass...<br>
<br>
[<<moveTo "event_school_4_7" "Continue." 1800>>]
</div>/*#
#desc: fourth class - anal training released
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'sensory_deprivation_hood' true>>
<<deleteItem 'sensory_deprivation_hood'>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Completely focused on clenching and squeezing and working the <<if $player.body_ref.vagina>>dual dildos inside of your<<else>>dildo in your ass<</if>>, you barely notice the first indication of your impending freedom when the hood loosens. A moment later you flinch sharply as the light of the classroom blasts away your blindness.<br>
<br>
"@@.npc_development;Welcome back,@@" <<=setup.getNpcName('npc_development', 'formal')>> states softly, her real voice odd after so long listening to the recording, though you find yourself yet hanging on her every word. "@@.npc_development;We have, alas, finally come to the end of our formal time together — but I know every one of you will do me proud in your future as eager, expert butt — and other holes, sluts.@@"<br>
<br>
Something about her words has you reflexively clench down, fatigue seemingly irrelevant next to your <<if !$player.body_ref.vagina>>anal <</if>>desires — desires to be fucked, certainly, but also to take every worry away from your partner, to shoulder all the work and delight them with your <<if $player.body_ref.vagina>>dual and dexterous dick-pleasing holes<<else>>dexterous and deep derrier<</if>>.<br>
<br>
Your cuffs release but all six of you seem almost hesitant to rise, a mix of tired thighs and addiction to the feeling of being filled, it is only after a sharp shock combined with <<=ps(setup.getNpcName('npc_development', 'formal'))>> order to "@@.npc_development;Get up!@@" That you hop to your feet — squeezing the whole way up to give your "training partner" a final respect.<br>
<br>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
The eyes of the other students turn to you as <<=setup.getNpcName('npc_development', 'formal')>> summons you to the front of the room with a "@@.npc_development;Head Girl!@@"
<<case 'npc_futa' 'npc_pr_sissy'>>
The eyes of you and your fellow students turn towards <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> as <<=setup.getNpcName('npc_development', 'formal')>> summons her to the front of the room with a "@@.npc_development;Head Girl!@@"
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
Just before <<=setup.getNpcName('npc_development', 'formal')>> continues you realise that the lesson is, perhaps, not yet over, as you spot a row of strap-ons resting on the front of <<=ps(setup.getNpcName('npc_development', 'formal'))>> desk...<br>
<br>
"@@.npc_development;So, for your final celebration I have a special treat — an opportunity to put those skilled holes to work with a bit of teamwork-building cooperation thrown in.@@" She brushes a hand over one of the dongs before lifting it up and handing it to <<if $npc_development.flags.headGirl.headGirl=="mc">>you<<else>><<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>><</if>>. "@@.npc_development;Buckle it up, and then assist the other girls — it is time to form a <<if $fetish.sissy>>sissy <</if>>butt-slut train — so get equipped and lined up starting with <<if $npc_development.flags.headGirl.headGirl=="mc">>Miss <<=$player.last_name>><<else>><<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'formal')>><</if>>@@"<br>
<br>
[<<moveTo "event_school_4_8" "Continue." 1800>>]
</div>/*#
#desc: fourth class - anal training sex train
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<<set $player.timebased.horny = 60>>
<<applyExperience 'anal' 18 'skip' $EXPOSED>>
<<addItem 'strapon_large'>>
<<wearItem 'strapon_large' true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 8, 0, false)>>
<<addWorkEvent 'event_interview_intro' _nextDate>>
<<set $npc_development.flags.class = 5>>
<<include "startAdminSexdoll">>
<<set $player.work.tmpworkPensum = 5*$player.work.bonusReq>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
Quickly getting into position you find yourself
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
at the back of the train, with one fellow student after another "slotting into position" in front of you.
<<case 'npc_futa' 'npc_pr_sissy'>>
second in the train, sandwiched between the Head Girl, <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> and <<=setup.getNpcName('npc_sexdoll', 'first')>>.
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<<=setup.getNpcName('npc_development', 'formal')>> takes a moment to adjust things tighter, squeezing you closer as she positions your hands to grope and hug the girl in front of you before she circles behind.
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
You gasp as her <<getWordPenis false>> enters your rear. A moment later the train pulls out from the station.
<<case 'npc_futa' 'npc_pr_sissy'>>
You feel <<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> press forward as <<=setup.getNpcName('npc_development', 'formal')>> slides into the Head Girl, and then the train pulls out from the station.
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
With a gentle thrust <<=setup.getNpcName('npc_development', 'formal')>> starts a wave of stimulation but then you feel the familiar twitch of the dildo and you reflexively fall back on your training...<br>
<br>
It isn't long before all seven of you are gasping and moaning, waves of pleasure bouncing up and down the line as it seems almost like your efforts on one end are transferred forward into vibrations for the "partner" in front of you. Six horny <<if $fetish.sissy>>sissys<<else>>girls<</if>> and their commanding teacher become a choir of gasps and moans, feeling the warm flesh squeezing you from both sides as you try to do your part, the unified efforts of you and your fellow students building the vibrations higher and higher until, with a loud cry, you cum as one.<br>
<br>
The intensity of your climax is such that only by holding even tighter to one another do you avoid crumpling to the ground, legs rubbery as you stagger back and forth and then, finally, separate, slick dongs bouncing merrily, still hard in ways no human cock could possibly manage after the overwhelming pleasure you have dished out, <<=setup.getNpcName('npc_development', 'formal')>> smiling with pride as she fixes her skirt over her now droopy member.<br>
<br>
"@@.npc_development;NOW you are graduates, well done, all of you, and remember that you can always return if you wish a refresher of some of the more... intellectual lessons. The rest of the skills, well... there is nothing like real world practice, hmm?@@"<br>
<br>
Glancing around at your fellow students, you smile,
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
discharging this final duty as Head Girl to supervise them changing back into their normal clothes, ending by "rewarding" <<=setup.getNpcName("npc_futa", 'first')>> by unlocking her belt.<br>
<br>
"@@.npc_futa;Thanks...@@" She whispers softly when she is finally free. "@@.npc_futa;Wearing it... well, it definitely taught me something, but I think that will remain a sometimes thing, my <<boy>>friend is too addicted to my lance to keep it so locked away...@@"<br>
<br>
You smile and wink before gesturing for her to follow the rest of the students out. You turn to grace <<=setup.getNpcName('npc_development', 'formal')>> with a final bow before taking your leave, as well.
<<case 'npc_futa' 'npc_pr_sissy'>>
<<=setup.getNpcName($npc_development.flags.headGirl.headGirl, 'first')>> discharging her final duties as Head Girl to supervise you changing back into your work clothes and quietly filing out of the classroom.
<<default>>
ERROR: unexpected head girl: <<=$npc_development.flags.headGirl.headGirl>>
<</switch>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Back to work." 600 "<<removeItem 'strapon_large' true>><<deleteItem 'strapon_large'>><<include 'removeScandalousSchoolgirl'>>">>]
</div>/*#
#desc: manager and development introduce interview
#status: FINISHED 0.8.3.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $now.getUTCDay() != 5>>
<<completeWorkEvent>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 8, 0, false)>>
<<addWorkEvent 'event_interview_intro' _nextDate>>
<<moveTo $scene.workEventReturn>>
<<else>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 8, 0, false)>>
<<addTaskById 'event_interview' _nextDate>>
<<deleteTask 'manager_morning_inspection_task'>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_development', 'formal')>> arrives for a meeting with your <<=setup.getNpcName('npc_manager', 'title')>> but <<=setup.getNpcName('npc_development', 'formal')>> has barely disappeared into the inner office when <<=setup.getNpcName('npc_manager', 'formal')>> summons you into join them.<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> smiles at you somewhat awkwardly before carefully explaining. "@@.npc_development;Hello, Miss <<=$player.last_name>>, I was just telling <<=setup.getNpcName('npc_manager', 'Director')>> that I have, unfortunately, run into something of an... irregularity.@@"<br>
<br>
"@@.npc_development;Normally, after someone has graduated from my course, I update their company records to reflect this fact. While a valuable thing to have listed for one's continued career advancement, for me, it is a simple formality except... well, in so doing so the system raised up warning flags to indicate that, on paper, well... you are not considered qualified for your present position.@@"<br>
<br>
You blink in confusion and look to <<=setup.getNpcName('npc_manager', 'formal')>> for clarification, but she merely motions for <<=setup.getNpcName('npc_development', 'formal')>> to continue. "@@.npc_development;Normally a <<if $fetish.sissy>>SISSI <</if>>Secretary working under senior manager would be the result of an internal promotion, happening only after a thorough review process. Of course your case was more... unique and while all indications are that you were naturally suited for the role, well, you lack the resume on paper to prove it.@@"<br>
<br>
"@@.npc_manager;Of course, as Director of Human Relations, I could merely waive things, but I would like to set an example, in contrast to some other... abuses of power by management. Though I doubt it will spark a true corporate re-alignment, showing favouritism in overriding policy would be a bad look and reduce confidence in the overall process and fairness of the system as a whole. Fortunately, there is another solution.@@"<br>
<br>
"@@.npc_development;Exactly so, you will simply re-apply for your current position. If you pass the interview—@@"<br>
<br>
"@@.npc_manager;Which I have total faith in your ability to do.@@"<br>
<br>
"@@.npc_development;Right, once you pass the interview you'll be formally extended an offer and pick up right where you left off no muss, no fuss... in fact it will be beneficial as it will qualify you for an "internal transfer" bonus and a higher salary since you will be coming in as a fully-qualified executive assistant rather than being tied to the lower base pay you started at due to being a preliminary hire promoted after passing probation.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, even as your heart thumps at the thought of having to do an interview — it's been years since you had to go through that sort of thing but you remember how frustrating it was, and how relieved you were to finally get the offer from Cloud Data Services...<br>
<br>
"@@.npc_manager;So, you see, there is really nothing to be too concerned about. I have scheduled things for Monday morning, so just spend a bit of time this weekend reviewing and preparing a resume. Yes, I know it is a bit silly when the majority of your relative work experience has happened here, but doing things by the book is important so I expect you to dot every i and cross every T before you show up ready to impress, just as you always do.@@"<br>
<br>
You blush at the compliment and <<=setup.getNpcName('npc_development', 'formal')>> rises to her feet. "@@.npc_development;Well I had best get back to my classroom, good luck with your interview on Monday, and I am sorry that I kicked off this whole inconvenience, bit of an inefficiency all around but... such is the occasional price of proper process.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> waits until <<=setup.getNpcName('npc_development', 'formal')>> is out of the room before continuing. "@@.npc_manager;Now, I fully expect you to dazzle the interview panel with your skills, but you do need to take this seriously, if they do not give approval, well... that would be unfortunate. You see the company considers the course you just went through an investment, and, combined with your pre-existing debts, well... if you failed to qualify for continued employment you would be on the hook for a substantial quantity of money.@@"<br>
<br>
You gulp, apprehension over this whole process roaring back as you promise <<=setup.getNpcName('npc_manager', 'formal')>> that you will do your best.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles and you return to your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 300 "<<completeWorkEvent>>">>]
</div>/*#
#desc: prepare resume - choice
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You remember your interview
<<if $now.getUTCDay() == 1>>
today... and realise you totally forgot to prepare a resume, and now there is no time...<br>
<br>
<<else>>
and that you should probably spend time at your computer preparing a resume.<br>
<br>
[<<moveTo "event_job_interview_resume_1" "Head for your computer and get started on that resume." 60>>]<br>
<</if>>
[<<moveTo "room_foyer" "Continue." 0>>]
</div>/*#
#desc: prepare resume - choice
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
You consider the scheduled "job interview" you have for Monday morning. <<=setup.getNpcName('npc_manager', 'formal')>> told you to prepare a resume and you consider how much work to put into things...<br>
<br>
[<<moveTo "event_job_interview_resume_2" "Spend an hour throwing something simple together." 3300 "<<set $player.flags.resume.base = 1>>">>]<br>
<<if setup.getTotalValue('bimbofication') > 10 && setup.getTotalValue('smart') > 10>>
[<<moveTo "event_job_interview_resume_2" "Put your bimbo brain to work to make the perfect resume!" 21300 "<<set $player.flags.resume.base = 3>>">>]<br>
<<elseif setup.getTotalValue('bimbofication')>(setup.getTotalValue('smart')+2)>>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_job_interview_resume_2" "Grit your teeth and spend the day putting together a full vita, cover letter, and polishing it all until it shines." 21300 "<<set $player.flags.resume.base = 3>><<spendWillpower 1>>">>] <<hint $options "This will cost willpower">><br>
<<else>>
[@@.link_locked;Resume? That sounds, like... SO dull to spend the day on.@@]<br>
<</if>>
<<elseif setup.getTotalValue('smart') > 10>>
[<<moveTo "event_job_interview_resume_2" "Spend the day putting together a full vita, cover letter, and polishing it all until it shines." 21300 "<<set $player.flags.resume.base = 3>>">>]<br>
<<else>>
[@@.link_locked;You lack the brainpower to do more than a basic resume.@@]<br>
<</if>>
[<<moveTo "room_computer" "On second thought, don't bother." 60>>]
</div>/*#
#desc: prepare resume - choice
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.resume.base == 1>>
Though the whole process seems a bit silly, you spend some time writing up a resume for your position as <<if $fetish.sissy>>a "Sissy Secretary." <<else>>an "Executive Assistant." <</if>>Given your overall minimal experience it doesn't take long before you run out of "normal" things to list out for skills... as you thoughts turn towards some of the more extreme activities that you have taken part in, and been trained on...<br>
<br>
<<printThought "Hmm, given the company, maybe I should list everything?">>
<<else>>
Ignoring the absurdity of the whole thing, you button down and work on making the best resume you can. Leaving no detail un-attended to, you spend time choosing the perfect font and layout before organising and writing up summaries of all the work you've done, and how your expertise makes you a perfect fit for the position at hand.<br>
<br>
As you review things for the third time you have a thought — certainly you've polished and pumped up every skill you have in the area of office management, organisation and such, but this is Social Interaction Service Syndicate Inc... you have certainly proven yourself far more than just "behind" a desk — bent over, crouched under, tied to... well you've certainly learned far more than just "basic" office skills...<br>
<br>
<<printThought "Hmm, given the company, maybe I should list everything?">>
<</if>>
<br><br>
[<<moveTo "event_job_interview_resume_3" "Keep everything above board." 3300 "<<set $player.flags.resume.slut = false>>">>]<br>
[<<moveTo "event_job_interview_resume_3" "Cover all of your slutty accomplishments." 3300 "<<set $player.flags.resume.slut = true>>">>]
</div>/*#
#desc: prepare resume - slut it up
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.resume.slut>>
<<set _skills = 0>>
<<if setup.getTotalValue("submission") > 15>>
<<set _skills += 4>>
<<elseif setup.getTotalValue("submission") > 10>>
<<set _skills += 3>>
<<elseif setup.getTotalValue("submission") > 5>>
<<set _skills += 2>>
<<else>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("penis") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("penis") > 10>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("cum") > 10>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("piss") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("piss") > 10>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("bestiality") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("bestiality") > 10>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("bdsm") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("bdsm") > 10>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("bondage") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("bondage") > 10>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("foot") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("foot") > 10>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("oral") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("oral") > 10>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("anal") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("anal") > 10>>
<<set _skills += 1>>
<</if>>
<<if setup.getTotalValue("dominance") > 15>>
<<set _skills += 2>>
<<elseif setup.getTotalValue("dominance") > 10>>
<<set _skills += 1>>
<</if>>
<<applyExperience 'bimbofication' _skills 'terrible' $ALONE>>
<<set _horny = 2*_skills>>
<<changeHorny _horny>>
<<set $player.flags.resume.skills = _skills>>
<</if>>
<<set $scene.resume_price = Math.floor($player.work.payment/2)>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.resume.slut>>
With stern focus you take things a step further to list out you "experience," feeling more and more turned on with each perverse aptitude that you list.<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
To serve is my only purpose in life, and I will eagerly pledge myself to whatever order I am given.
<<elseif setup.getTotalValue("submission") > 10>>
I am well versed in all manner of submission, ready, willing and eager to obey every command.
<<elseif setup.getTotalValue("submission") > 5>>
I am well-practiced at servitude, able to obediently execute my duties, whatever they may be.
<<else>>
I am an eager subordinate, ready to dispense my duties with efficient grace.
<</if>>
<br><br>
<<if setup.getTotalValue("penis") > 15>>
I have a complete love for <<getWordPenis>> of all shape and size, and will bring that passion to any project placed before me.<br>
<br>
<<elseif setup.getTotalValue("penis") > 10>>
No cock is too small, or to big, for my attention, I am ready to worship and serve any <<getWordPenis>>.<br>
<br>
<</if>>
<<if setup.getTotalValue("cum") > 15>>
I enjoy few things more than cum and am eager to take any number of loads, anywhere, any time in service to the company.<br>
<br>
<<elseif setup.getTotalValue("cum") > 10>>
I am an experienced cum-drinker and will eagerly swallow every time — unless it is my superior's preference to see it glisten on my face.<br>
<br>
<</if>>
<<if setup.getTotalValue("piss") > 15>>
Piss is my favourite nectar — my superior will never need waste time taking a tinkle if my thirsty throat has anything to say about it.<br>
<br>
<<elseif setup.getTotalValue("piss") > 10>>
I am well experienced as a human urinal, ready to serve my superior at a moment's notice to make their day more efficient.<br>
<br>
<</if>>
<<if setup.getTotalValue("bestiality") > 15>>
I am skilled with all manner of beast, ready to serve everything from man's best friends to literal monsters for the benefit or entertainment of my superior.<br>
<br>
<<elseif setup.getTotalValue("bestiality") > 10>>
I am a true animal lover, eager to "take care" of any creature if the need calls for it.<br>
<br>
<</if>>
<<if setup.getTotalValue("bdsm") > 15>>
Shock me, whip me, flog me — I am a complete pain-slut, ready to endure any punishment that my superior deems necessary.<br>
<br>
<<elseif setup.getTotalValue("bdsm") > 10>>
I am an experienced pain-slut, ready, willing, and eager to submit to my superior's whip.<br>
<br>
<</if>>
<<if setup.getTotalValue("bondage") > 15>>
I work excellent under pressure — the pressure of full body restraint, cuffed chained or bound I will always ask to be cinched tighter so that I can better perform my duties.<br>
<br>
<<elseif setup.getTotalValue("bondage") > 10>>
I revel in being tied to my job, chain me up or bind me down and I will work eagerly until I am released.<br>
<br>
<</if>>
<<if setup.getTotalValue("foot") > 15>>
I am a complete podophile — your archs will never be sore with me around to massage, kiss and worship them.<br>
<br>
<<elseif setup.getTotalValue("foot") > 10>>
I adore being at my superior's feet and will be certain to give them a massage and help them relax any time they need to take a weight off.<br>
<br>
<</if>>
<<if setup.getTotalValue("oral") > 15>>
My oral presentation skills are certified and beyond compare, give me one taste and you will never want another mouth wrapped around you.<br>
<br>
<<elseif setup.getTotalValue("oral") > 10>>
My oral presentation skills are trained and certified. I will eagerly kneel between my manager's legs and accept whatever they give me.<br>
<br>
<</if>>
<<if setup.getTotalValue("anal") > 15>>
My ass is as cavernous as it is comfortable and I am ready to be fucked or fisted and anything in-between.<br>
<br>
<<elseif setup.getTotalValue("anal") > 10>>
My ass is well trained and ready to handle even the largest, most important clients.<br>
<br>
<</if>>
<<if setup.getTotalValue("dominance") > 15>>
Should the occasion require I am expert dominant in my own right, capable of keeping other subordinates in line so that my superior may confidently grow their team.<br>
<br>
<<elseif setup.getTotalValue("dominance") > 10>>
My experience extends to managing teams and I am ready and able to put other subordinates in their place and ensure that they are giving the company their best performance<br>
<br>
<</if>>
You're a bit distracted and turned on from all this "resume" work... and then you have another thought. You recall hearing about an online service some friends in college recommended that focused specifically in helping take your resume "to the next level." A couple minutes searching online and you find the company, though you wince slightly at their flat fee of <<=$scene.resume_price>> credits!<br>
<br>
<<printThought "That's half my weekly base pay! Do I really want to shell out for something that's supposed to be just a formality... and would they even be willing to edit something like what I just produced?">>
<<else>>
You can think of little else to add to your resume, doing a quick proofing pass and about to call it done when you remember an online service some friends in college recommended that focused specifically in helping take your resume "to the next level." A couple minutes searching online and you find the company, though you wince slightly at their flat fee of <<=$scene.resume_price>> credits!<br>
<br>
<<printThought "That's half my weekly base pay! Do I really want to shell out for something that's supposed to be just a formality?">>
<</if>>
<br><br>
[<<moveTo "event_job_interview_resume_4" "Call it here." 3300 "<<set $scene.paid =false>>">>]<br>
<<if $player.money.total >= $scene.resume_price>>
[<<moveTo "event_job_interview_resume_4" "Pay for resume assistance." 3300 "<<set $scene.paid= true>>">>]
<<else>>
[@@.link_locked;You cannot afford <<=$scene.resume_price>> for resume editing services.@@]
<</if>>
</div>/*#
#desc: prepare resume - pay for help
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.paid>>
<<set $player.flags.resume.base += 1>>
<<if $player.flags.resume.slut>>
<<applyExperience 'humiliation' 15 'terrible' $INCOGNITO>>
<</if>>
<<addCredits `-($scene.resume_price)`>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $player.flags.resume.base == 2 || $player.flags.resume.base == 4>>
You send your resume away for assistance. Within minutes of your payment being processed you are speaking with a resume enhancement expert.<br>
<br>
<<if $player.flags.resume.slut>>
"@@.generic_female1;Is this... some sort of joke? According to the intro you are applying for a job as an executive assistant, but then halfway through the resume it starts reading as if you are seeking work as a whore! I will remind you that your payment is non-refundable but this... this is disgusting depravity and not at all the sort of service we provide!@@"<br>
<br>
Maybe it's thought of being out so much money to no benefit, maybe it's something else, but you not only find yourself insisting that you ARE serious, but going further to beg the "resume expert" to please help you out.<br>
<br>
There is a long silence before they return, their voice low and conspiratorial.<br>
<br>
"@@.generic_female1;Look, it's not that I'm some sort of prude but this... well, it's quite another thing... still, I can sense passion in your voice, and I do like helping place people in the position they deserve... tell you what, give me another <<=$scene.resume_price>> and I'll make you sound better than the whore of Babylon.@@"<br>
<br>
<<printThought "That's quite the mark-up... do I want to send good money after bad for something like this?">><br>
<br>
[<<moveTo "event_job_interview_resume_5" "Decline the offer." 3300 "<<set $player.flags.resume.base-=1>><<set $scene.pay=false>>">>]<br>
<<if $player.money.total >= $scene.resume_price>>
[<<moveTo "event_job_interview_resume_5" 'Pay for "special" resume assistance.' 3300 "<<set $scene.pay=true>>">>]
<<else>>
[@@.link_locked;You cannot afford <<=$scene.resume_price>> for resume editing services.@@]
<</if>>
<<else>>
<<if $player.flags.resume.base == 1>>
"@@.generic_male1;It's a good thing you contacted us for assistance — your job experience is a bit light and you have done little to properly highlight what you do have, but that's why we're here!@@"
<<else>>
"@@.generic_male1;You've got a pretty good base here, but I think we can punch it up a bit more and get you to the next level.@@"
<</if>>
<br><br>
Over the next hour the "resume expert" proves their worth, really helping you polish up what you have, and even fluff in a few additional skills you had not previously considered to leave you with a resume that, while not jaw-dropping, does the best job possible at selling you and your skills.<br>
<br>
<<printThought "Well... some of my skills.">><br>
<br>
[<<moveTo "room_computer" "Finished." 60>>]<br>
<</if>>
<<else>>
You decide you've devoted enough effort to your resume, printing up a copy and putting it with your things for Monday's interview.<br>
<br>
[<<moveTo "room_computer" "Finished." 60>>]
<</if>>
</div>/*#
#desc: prepare resume - pay for help slut variant
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "Computer">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pay>>
<<applyExperience 'submission' 15 'terrible' $INCOGNITO>>
<<addCredits `-($scene.resume_price)`>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_computer_01.png">>
<div id="invframe" class="scrolltext">
<<if $scene.pay>>
You authorise the additional payment and the voice on the other end of the line shifts. "@@.generic_female1;Alright, slut. Let's get you prepped for sale — that's what this is about, isn't it? You're not looking for a job, you're trying to sell yourself into sexual slavery, and with my help? Well, you'll be purchased — and for a top price!@@"<br>
<br>
You shudder submissively at the thought, listening intently as they help you by pumping up your intro and "basic" skills before grilling you on every sexual depravity and more, sculpting the second half of the resume until it reads like something just short of a porn novel.<br>
<br>
"@@.generic_female1;I think that will do it — if that doesn't get you sold off as a piece of fuck-meat, nothing will. Good luck, slave.@@"<br>
<br>
They hang up leaving you to catch your breath, thighs grinding together at the thought of what the reaction to your lewd resume will be...
<<else>>
Though it pains you to have spent so much and get nothing for it you meekly end the call rather than pay to further your embarrassing proposal with the resume expert.
<</if>>
<br><br>
[<<moveTo "room_computer" "Finished." 60>>]
</div>/*#
#desc: arrive in lobby for interview
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.resume.base < 0>>
<<set $player.flags.resume.base = 0>>
<</if>>
<<deleteTask 'event_interview' $now true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_lobby_land.png">>
<div id="invframe" class="scrolltext">
<<if $scene.waiting>>
Resume in hand, you get the signal from the person behind the security desk and they direct you to the elevator, the lift already programmed with your destination — the one hundred and first floor. You recall the rule about floors above ond hundred...<br>
<br>
<<printThought "So it's going to be THAT sort of interview...">>
<<else>>
You arrive at work<<if $player.flags.resume.base > 0>>, resume in hand<</if>> and head for the elevator... only for it to fail to open for you.<br>
<br>
Puzzled for a moment you walk over to the security desk where you are asked if you have an appointment?<br>
<br>
<<printThought "They are really going all out for this charade...">><br>
<br>
You give your info and are directed to the far elevator and told to head "directly" to the one hundred and first floor.
<</if>>
<br><br>
You take a deep breath as you wait for the elevator to open and collect yourself, attempting to get into that "interviewing" headspace.<br>
<br>
[<<moveTo "event_post_school_interview_2" "Board the elevator." 300>>]
</div>/*#
#desc: fail to show up for interview
#status: FINISHED 0.8.3.0
#*/
<<if $scene.beforetasklocation.last() == "company_lobby">>
<<deleteTask 'event_interview' $now true>>
<<initRoom>>
<<moveTo "event_post_school_interview_1">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<incrementEmotion 'anger' 'npc_manager' 3>>
<<set $scene.stow = setup.getItemsInInventoryByFilter('tag', ['bulky']) || setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<if $scene.stow.length>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bondage'])>>
<<itemsToWardrobe _items>>
<<set _items = setup.getItemsInInventoryByFilter('tag', ['bulky'])>>
<<itemsToWardrobe _items>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = "Phonecall">>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phone call. It's from <<=setup.getNpcName('npc_manager', 'formal')>>. This might be related to not being in time for your interview...<br>
<br>
"@@.npc_manager;Where on earth are you, <<=$player.first_name>>? I told you about the interview today, and I would be a poor manager, indeed, if I did not do everything in my power to aid your success. A car is en route to your location, I will do what I can to cover for you... but rules are rules and you need to be at this interview, and you need to do well.@@"<br>
<br>
She hangs up, clearly frustrated with you.<<if $scene.stow.length>> You quickly toss a few things in your wardrobe, wondering why you were even still carrying them around.<</if>><br>
<br>
<<printThought "Shit, I'm really bottling this one... and why?">><br>
<br>
<<readyToLeaveHome>>
<<if $player.readytoleave>>
<<if !setup.checkItemTypeWorn("cage") && ($fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis)>>
[@@.link_locked;I'm in enough trouble to show up to work out of chastity.@@]
<<else>>
[<<moveTo "event_post_school_interview_1" 'Ride to work.' 300 "<<set $scene.stow=[]>><<set $currentcall=false>>">>]
<</if>>
<<else>>
[@@.link_locked;Not going out like this...@@]
<</if>>
</div>/*#
#desc: ride elevator up to interview
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Lobby">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
You step aboard the elevator to find another employee already aboard on their way up from the subterranean parking garage. <<if $options.fem>>She greets<<else>>They greet<</if>> you with a nod. You press your button and stand in the opposite corner.<br>
<br>
The elevator door closes and <<if $options.fem>>she smiles<<else>>they smile<</if>> at you. "@@.generic_male1;You look a bit nervous — big presentation today?@@"<br>
<br>
You explain that, actually, you are here for a job interview. <<if $options.fem>>Her<<else>>Their<</if>> eyebrow raises as <<if $options.fem>>she looks<<else>>they look<</if>> you over, then glance at the floor you selected. "@@.generic_male1;Ah, I see... well you know what I find takes the edge off before a big presentation? A nice blowjob.@@" You blink in momentary surprise as <<if $options.fem>>she continues<<else>>they continue<</if>> "@@.generic_male1;Yup, I'll bet that a nice mouth-full of cum would do wonders to calm your nerves and have you ready to impress. So, what'll it be?@@"<br>
<br>
<<if $options.fem>>Her<<else>>Their<</if>> finger hovers over the "stop elevator" button as you have but a moment to consider <<if $options.fem>>her<<else>>their<</if>> offer.<br>
<br>
[<<moveTo "event_post_school_interview_3" "<<if $options.fem>>She's<<else>>They're<</if>> right, a nice suck is just what you need." 300 "<<set $scene.suck=true>>">>]<br>
<<if setup.getTotalValue("bimbofication") > 10 && (setup.getTotalValue("penis") > 10 || setup.getTotalValue("cum") > 10)>>
[@@.link_locked;Pass up an opportunity for some sucky-sucky? Never!@@]
<<else>>
[<<moveTo "event_post_school_interview_3" "Ignore <<if $options.fem>>her<<else>>their<</if>> offer and wait for your floor." 300 "<<set $scene.suck=false>>">>]
<</if>>
</div>/*#
#desc: ride elevator up to interview
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<set $player.flags.resume.suck = true>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
You smile seductively and glide to your knees as <<if $options.fem>>she taps<<else>>they tap<</if>> the stop button and unbuckle <<if $options.fem>>her<<else>>their<</if>> pants to reveal a sizable, but not monstrous, <<getWordPenis>>.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
You lick your lips in anticipation and take <<if $options.fem>>her<<else>>them<</if>> in hand.
<<else>>
<<if setup.getTotalValue("penis") > 10>>
You take a deep breath and take <<if $options.fem>>her<<else>>them<</if>> in hand.
<<else>>
You steel your nerves and take <<if $options.fem>>her<<else>>them<</if>> in hand.
<</if>>
<</if>>
<<if setup.getTotalValue("oral") > 10>>
Mindful that you have an interview to get to you waste no time in deploying every skill in your vast arsenal.
<<if setup.getTotalValue("oral") > 15>>
Your tongue swirls around <<if $options.fem>>her<<else>>their<</if>> tip, gathering up all of <<if $options.fem>>her<<else>>their<</if>> pre-cum as you smile up at <<if $options.fem>>her<<else>>them<</if>> and then lean forward to smoothly slide them into your throat.
<<else>>
Placing a kiss on <<if $options.fem>>her<<else>>their<</if>> tip you let your lips spread as <<if $options.fem>>she acts<<else>>they act<</if>> as the welcoming committee on <<his>> path down your throat.
<</if>>
You place your hands behind your back and continue to bob, sucking and licking with aplomb as they look down.
<<else>>
<<Hes>> a bit out of your throat's league but you make up for it with lips and tongue, getting <<him>> nice and wet with saliva as you glide your lips up and down <<his>> shaft.
<</if>>
<<He>> shudders and you know <<hes>> close. You increase your pace until <<he>> spurts, your hand coming back into the picture to gently milk every last drop until you tilt your head back to show off the pool of
<<if setup.getTotalValue("cum") > 10>>
delicious
<<else>>
disgusting
<</if>>
cum on your tongue, swishing it around theatrically for a few moments before
<<if setup.getTotalValue("cum") > 10>>
swallowing it with a smile.
<<else>>
choking it down.
<</if>>
<br><br>
"@@.generic_male1;Not bad,@@" the <<man>> states, tapping the "resume" elevator button as you rise to your feet and lick your lips clean. "@@.generic_male1;I hope it helped — good luck with that interview! From what I've seen you're just the sort of enthusiastic slut this company needs more of!@@"<br>
<br>
The elevator dings for your floor and you step out, mindful of the <<mans>> eyes on your ass.
<<else>>
You turn forward and ignore <<if $options.fem>>her<<else>>their<</if>> lewd offer, noting that <<if $options.fem>>she shrugs<<else>>they shrug<</if>> and step away from the elevator panel as you continue the climb up to the 101st floor. "@@.generic_male1;Good luck with the interview — I hope you get just the position you deserve.@@" <<if $options.fem>>She states<<else>>They state<</if>> as the door opens and you disembark. You can feel <<if $options.fem>>her<<else>>their<</if>> eyes on your ass until the elevator closes and they continue on up higher into the building.<br>
<br>
<<printThought "Upper floor workers...">>
<</if>>
<br><br>
There is a receptionist desk in view of the elevator and you walk forward to present yourself for your appointment.<br>
<br>
[<<moveTo "event_post_school_interview_4" "Continue." 300>>]
</div>/*#
#desc: receptionist before interview
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<</if>>
<<set $player.location to "101st Floor Reception">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png" setup.charImage("npc_work","npc_receptionist")>>
<div id="invframe" class="scrolltext">
You approach the receptionist, noticing that one of her wrists is cuffed and chaining her to the desk, and you introduce yourself.<br>
<br>
"@@.pc;Hello, I am here for an interview?@@"<br>
<br>
She taps away at her computer for a moment, wrist-chains jingling the whole time. "@@.generic_female2;Ah, yes. I believe you were to bring a resume? If you would give that to me I will let them know you have arrived.@@"<br>
<br>
<<if $player.flags.resume.base > 0>>
You hand over your printed resume and she nods. "@@.generic_female2;If you would please wait?@@"
<<else>>
You blush and confess that you did not bring a resume with you. She frowns. "@@.generic_female2;I see... quite disappointing, but you are the one hoping to rate a job.@@" She shrugs.
<</if>>
She gestures to the side of the room where there are chairs... alternating with posts which attached dangling chains... at a perfect height for someone to kneel and be collared to.<br>
<br>
<<if setup.getTotalValue("submission") > 15>>
[@@.link_locked;Sitting is wrong, I was meant to kneel.@@]<br>
<<else>>
[<<moveTo "event_post_school_interview_5" "Have a seat." 600 "<<set $scene.action_1='sit'>>">>]<br>
<</if>>
<<if setup.getTotalValue("submission") > 10>>
[@@.link_locked;Stand and wait? That seems a bit forward...@@]<br>
<<else>>
[<<moveTo "event_post_school_interview_5" "Move away from the receptionist but remain standing." 600 "<<set $scene.action_1='stand'>>">>]<br>
<</if>>
<<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>
<<if setup.getTotalValue("submission") > 15>>
[<<moveTo "event_post_school_interview_5" "Kneel and connect your collar to one of the posts." 600 "<<set $scene.action_1='chain'>>">>]
<<elseif setup.getTotalValue("submission") > 10>>
[@@.link_locked;Chain yourself to a post? No, you are not quite that submissive...@@]
<<else>>
[@@.link_locked;Chain yourself to a post? No, you are not a slave!@@]
<</if>>
<<else>>
<<if setup.getTotalValue("submission") > 15>>
[<<moveTo "event_post_school_interview_5" "Ask the receptionist if you could borrow a collar." 600 "<<set $scene.action_1='collar'>>">>]
<<else>>
[@@.link_locked;Ask for a collar to chain yourself to a post? That's a bit much.@@]
<</if>>
<</if>>
</div>/*#
#desc: wait for interviewer
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_1>>
<<case 'collar'>>
<<applyExperience 'submission' 18 'terrible' $SEEN_STRANGER>>
<<addItem 'corporate_collar'>>
<<wearItem 'corporate_collar' true>>
<<addItem 'leash_chain'>>
<<wearItem 'leash_chain' true>>
<<set $player.flags.resume.chain=2>>
<<case 'chain'>>
<<applyExperience 'submission' 20 'terrible' $SEEN_STRANGER>>
<<addItem 'leash_chain'>>
<<wearItem 'leash_chain' true>>
<<set $player.flags.resume.chain=2>>
<<case 'stand' 'sit'>>
<<set $player.flags.resume.chain=1>>
<</switch>>
<</if>>
<<set $player.location to "101st Floor Reception">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case 'collar'>>
You turn back to the receptionist and ask if you could borrow a collar so as to "@@.pc;Wait properly.@@"<br>
<br>
She smiles and reaches under her desk to come up with an intimidating steel collar with the words "Property of SISSI" etched into the front.
<<if $scene.collar == "">>
"@@.generic_female2;Certainly,@@" she says with a sisterly smile and a wink.
<<else>>
"@@.generic_female2;Failed to dress for the occasion, hmm?@@" She asks, glancing at your current neck adornment.
<</if>>
<br><br>
You nod your head in thanks before wrapping the collar around your neck, the steel cool and heavy. Now "properly" equipped you walk over to one of the posts to kneel down, clip yourself in, and wait for your interview to begin... or, perhaps, it already has?
<<case 'chain'>>
You walk over to one of the posts and kneel down. Clipping a chain to the front of your collar you place your hands on your thighs and stare forward as you wait patiently for your interview to begin... or, perhaps, it already has?
<<case 'stand'>>
You try not to think about what you can only refer to as a "slave hitching posts," instead standing to patiently wait for your interview to begin... or, perhaps, it already has?
<<case 'sit'>>
You take a seat, crossing your legs properly and settling in to wait for your interview to begin... or, perhaps, it already has?
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
<br><br>
You wait patiently, the only sound the click of keyboard and the occasional jangle of chain as the receptionist attends to her work. Eventually the elevator dings and a <<man>> in a suit steps out. <<He>> walks straight to the receptionist who shares a few words before pointing in your direction.<br>
<br>
"@@.generic_male1;Miss <<=$player.first_name>> <<=$player.last_name>>?@@" <<He>> asks as <<he>> walks towards you.<br>
<br>
[<<moveTo "event_post_school_interview_6" 'Say "Yes, <<Master>>."' 300 "<<set $scene.action_2='master'>>">>]<br>
[<<moveTo "event_post_school_interview_6" 'Nod in acknowledgement.' 300 "<<set $scene.action_2='nod'>>">>]<br>
[<<moveTo "event_post_school_interview_6" 'Do not react.' 300 "<<set $scene.action_2='no'>>">>]
</div>/*#
#desc: greet interviewer
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_2 == 'master'>>
<<applyExperience 'submission' 15 'very' $EXPOSED>>
<<set $player.flags.resume.first_imp=2>>
<<else>>
<<set $player.flags.resume.first_imp=1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Reception">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png" setup.charImageGeneric("generic_manager_male_2")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_2>>
<<case 'master'>>
"@@.pc;Yes, <<Master>>.@@" You reply submissively and the <<man>> smiles.
<<case 'nod'>>
You nod and <<he>> smiles.
<<case 'no'>>
You remain silent and the <<man>> moves closer. "@@.generic_male1;You deaf? I mean, I knew it was you, but such inattentiveness... or is it rudeness? Either way, not an auspicious start to things for you today.@@"
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<<switch $scene.action_1>>
<<case 'collar' 'chain'>>
"@@.generic_male1;Thank you for waiting properly,@@" <<he>> states as <<he>> detaches the other end of your leash from the post. "@@.generic_male1;If you know your place this well this should be a smooth interview indeed, come along.@@"<br>
<br>
[<<moveTo "event_post_school_interview_7" 'Walk behind <<him>>.' 300 "<<set $scene.action_3=false>>">>]<br>
[<<moveTo "event_post_school_interview_7" 'Crawl after <<him>>.' 300 "<<set $scene.action_3=true>>">>]
<<case 'sit'>>
You rise to your feet and the <<man>> motions for you to follow. "@@.generic_male1;Come along, we are ready to begin the interview.@@"<br>
<br>
[<<moveTo "event_post_school_interview_7" 'Follow.' 300 "<<set $scene.action_3=false>>">>]
<<case 'stand'>>
The <<man>> takes a moment to look down at you, <<his>> height barely eclipsing your heel-assisted stature and <<he>> seems to be making an effort to put you in your place before motioning for you to follow. "@@.generic_male1;Come along, we are ready to begin the interview.@@"<br>
<br>
[<<moveTo "event_post_school_interview_7" 'Follow.' 300 "<<set $scene.action_3=false>>">>]
<<default>>
ERROR: unexpected scene.action_1 <<=$scene.action_1>>
<</switch>>
</div>/*#
#desc: 1st interviewer - head to room
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_3>>
<<set $player.flags.resume.crawl=2>>
<<applyExperience 'submission' 18 'terrible' $EXPOSED>>
<<elseif $scene.action_1 == 'collar' || $scene.action_1 == 'chain'>>
<<applyExperience 'submission' 10 'terrible' $EXPOSED>>
<</if>>
<<if $scene.action_1 == 'collar' || $scene.action_1 == 'chain'>>
<<removeItem 'leash_chain' true>>
<<deleteItem 'leash_chain'>>
<</if>>
<<if !$scene.action_3>>
<<set $player.flags.resume.crawl=1>>
<</if>>
<<set $player.flags.resume.perfect_skills = $player.flags.resume.skills == 24 || ($player.flags.resume.skills == 20 && (!$fetish.bestiality_hard && !$fetish.piss)) || ($player.flags.resume.skills == 22 && (!$fetish.bestiality_hard || !$fetish.piss))>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("generic_manager_male_2")>>
<div id="invframe" class="scrolltext">
<<if $scene.action_3>>
Remaining on your hands and knees you crawl after the <<man>> as <<he>> leads you out of the reception area and down a hallway. On the way to your destination you pass a handful of other employees — none of whom make any acknowledgement of your subservient act. Finally coming to a conference room the <<man>> leads you inside, removing your leash and motioning
<<elseif $scene.action_1 == 'collar' || $scene.action_1 == 'chain'>>
<<He>> gives your leash a gentle tug to lead you out of the reception area and down a hallway. On the way to your destination you pass a handful of other employees — none of whom make any acknowledgement of the fact that you are following on a leash. Finally coming to a conference room the <<man>> leads you inside, removing your leash and motioning
<<else>>
The <<man>> leads the way and you follow, leaving reception and down a hallway. You pass a handful of other employees on the way, though none that acknowledge you or that you recognise. Arriving at a conference room the <<man>> leads you inside and motions
<</if>>
for you to take a seat on one side of a table.<br>
<br>
<<if $player.flags.resume.base > 0>>
Your resume in hand, the <<man>> takes a seat at the table opposite you and casually flips through your paperwork. "@@.generic_male1;So, I have your resume here — <<if $player.flags.resume.base < 3>>a bit basic, to be honest<<else>>quite impressive<</if>>,
<<if $player.flags.resume.base == 2 || $player.flags.resume.base == 4>>
though I would wager you had professional assistance to punch it up.
<<else>>
really tells an excellent story about your prior experience.
<</if>>
<<if $player.flags.resume.slut>>
I do appreciate that you went out of your way to paint a full picture of your skills, <<if $player.flags.resume.perfect_skills>>and a stunning array of skills there are!<<elseif $player.flags.resume.skills > 15>>a near perfect spread of talent.<<elseif $player.flags.resume.skills > 10>>a quite respectable array of talents.<<elseif $player.flags.resume.skills > 5>>very impressive.<<else>>paltry though they may be.<</if>>
<<else>>
Though I would call your list of key skills a bit thin...
<</if>>
Pity you did not include any references, but I suppose you are something of a special case. Moving on. Words on a page only tell part of the story. I want to hear from your lips directly — what experience do you think best highlights your qualifications for a position as a Secretary for one of our most senior level executives?@@"
<<else>>
The man takes a seat at the table opposite you, staring intently across at you for a several moments before speaking. "@@.generic_male1;Normally I would lead off by reviewing your resume, but you failed to produce such. Therefore I will ask you directly — what experience do you think qualifies you for a position as a Secretary for one of our most senior level executives?@@"
<</if>>
<br><br>
<<printThought "Hmm, I wonder what skill-set it would be best to highlight?">><br>
<br>
[<<moveTo "event_post_school_interview_8" "Talk about your computer and administrative skills." 300 "<<set $scene.action_4=true>>">>]<br>
[<<moveTo "event_post_school_interview_8" "Talk about your sexual skills." 300 "<<set $scene.action_4=false>>">>]
</div>/*#
#desc: 1st interviewer - talk about work
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_4>>
<<set $player.flags.resume.work = 2>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<<else>>
<<set $player.flags.resume.work = 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("generic_manager_male_2")>>
<div id="invframe" class="scrolltext">
<<if $scene.action_4>>
You spend time digging into your history, talking about your experience prior to becoming a <<if $fetish.sissy>>SISSI <</if>>Secretary and how you have built on those skills as you continued developing in your career.<br>
<br>
The <<man>> probes further into your "development" and you find yourself reciting an abbreviated history of your employment — from your initial confusion to fully embracing how things "work" at the company before concluding that you are "@@.pc;Eager to return to my duties and provide <<=setup.getNpcName("npc_manager","formal")>> the assistance she needs to keep Social Interaction Service Syndicate Inc. at the very top of the industry!@@"
<<else>>
You waste no time in spinning lurid tales of your sexual escapades since taking your new job. Though the <<man>> listens patiently <<he>> seems unmoved, <<his>> occasional clarifying questions almost jarring in their formality compared to the depraved acts you describe to demonstrate your qualifications.
<</if>>
<br><br>
You spend some more time going back and forth with the <<man>> as <<he>> seeks to "clarify" your work history but eventually there is a knock on the door. "@@.generic_male1;Ah, that will be the next interviewer, thank you for your time, and good luck with the rest of the day.@@"<br>
<br>
<<He>> walks to the door and opens it to reveal a familiar face — the <<man>> you
<<if $scene.suck>>
blew on the elevator walks into the room.<br>
<br>
<<printThought "In any other company I'd be a bit panicked... here? Well...">>
<<else>>
rode up with in the elevator... and declined to suck off.<br>
<br>
<<printThought "Shit... Maybe <<he>> appreciates modesty? Unlikely, given this company...">>
<</if>>
<br><br>
[<<moveTo "event_post_school_interview_9" "Continue." 180>>]
</div>/*#
#desc: 2nd interviewer - intro
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'humiliation' 10 'normal' $SEEN_STRANGER>>
<</if>>
<<set $scene.impress = 0>>
<<set $scene.impress_actions = []>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
The new arrival makes no acknowledgement of you as <<he>> waits for your first interviewer to leave the room before slowly taking <<his>> seat.
<<if $scene.suck>>
"@@.generic_male2;Such a small world that we should meet again! Note that this is a formal interview so any experience outside the walls of this room must be disregarded. I am here to render an objective assessment of your skills and qualifications for the position to which you have applied, based solely on the content of our discussion.<<if $player.flags.resume.slut>> So the fact that I have first-hand knowledge to back up some of the glowing service skills you claimed on your resume... well, I am afraid I must put those aside.<</if>> With that out of the way... shall we begin?@@"<br>
<br>
You nod, hoping that, despite <<his>> words, your earlier enthusiasm might help count in your favour.
<<else>>
"@@.generic_male2;Well, well, fancy meeting you again. Note that I am here to objectively assess your skills based on the results of this interview alone — you actions, or failure at such, in any previous encounters will not enter into my final assessment. Do you understand?@@"<br>
<br>
You nod... though you can't help but wonder if you made a mistake in turning <<him>> down earlier.
<</if>>
<br><br>
"@@.generic_male2;So, on to the interview — let's move beyond work history and resumes and all of that, what unique thing do you bring to the job, if you can make a demonstration of those skills that would be even better. You may feel free to use the whiteboard, or if you need a computer or something else to properly show your abilities I can have someone fetch that as well.@@"<br>
<br>
<<printThought '"Or something..." I wonder how open that is...'>><br>
<br>
<<include "interviewChoices">>
</div><<if $scene.impress_actions.includes("org")>>
[@@.link_locked;You have already demonstrated your organizational skills.@@]<br>
<<else>>
[<<moveTo "event_post_school_interview_10" "Balance a hypothetical schedule on the whiteboard to show off your organisational skills." 300 "<<set $scene.action_5='org'>>">>]<br>
<</if>>
<<if $scene.impress_actions.includes("type")>>
[@@.link_locked;You have already demonstrated your skills as a typist.@@]<br>
<<else>>
[<<moveTo "event_post_school_interview_10" "Ask for a computer to show off your skills as a typist." 600 "<<set $scene.action_5='type'>>">>]<br>
<</if>>
<<if $scene.impress_actions.includes("smart")>>
[@@.link_locked;You have already attempted to demonstrate your superior intellect.@@]<br>
<<else>>
[<<moveTo "event_post_school_interview_10" "Show off your smarts." 300 "<<set $scene.action_5='smart'>>">>]<br>
<</if>>
<<if $scene.impress_actions.includes("anal")>>
[@@.link_locked;You have already tried to show off your anal aptitudes.@@]<br>
<<else>>
[<<moveTo "event_post_school_interview_10" "Bring up your skilled rear hole." 300 "<<set $scene.action_5='anal'>>">>]<br>
<</if>>
<<if $scene.impress_actions.includes("oral")>>
[@@.link_locked;You have already tried to show off your "oral presentation" skills.@@]<br>
<<else>>
[<<moveTo "event_post_school_interview_10" "Bring up your oral presentation skills." 300 "<<set $scene.action_5='oral'>>">>]<br>
<</if>>
<<if $scene.impress_actions.includes("bdsm")>>
[@@.link_locked;You have already shown off your pain tolerance.@@]<br>
<<else>>
<<if setup.getTotalValue("bdsm") > 10>>
[<<moveTo "event_post_school_interview_10" "Show off your pain tolerance with a spanking." 300 "<<set $scene.action_5='bdsm'>>">>]<br>
<<else>>
[@@.link_locked;You are not enough of a pain slut to feel safe demonstrating such.@@]<br>
<</if>>
<</if>>
<<if $fetish.cum>>
<<if $scene.impress_actions.includes("cum")>>
[@@.link_locked;You have already demonstrated your affinity for cum.@@]<br>
<<else>>
<<if setup.getTotalValue("cum") > 10>>
[<<moveTo "event_post_school_interview_10" "Ask if you might prove your affinity for cum?" 300 "<<set $scene.action_5='cum'>>">>]<br>
<<else>>
[@@.link_locked;You do not like cum enough to really count such as a skill.@@]<br>
<</if>>
<</if>>
<</if>>
<<if $fetish.bestiality_hard>>
<<if $scene.impress_actions.includes("best")>>
[@@.link_locked;You have already shown off your affinity for animals.@@]<br>
<<else>>
<<if $fetish.bestiality_hard>>
<<if setup.getTotalValue("bestiality") > 5>>
[<<moveTo "event_post_school_interview_10" "Ask if <<he>> could summon you a dog to show off your skill with animals." 600 "<<set $scene.action_5='best'>>">>]<br>
<<else>>
[@@.link_locked;You aren't into animals enough to feel confident demonstrating such perversion.@@]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<<if $fetish.piss>>
<<if $scene.impress_actions.includes("piss")>>
[@@.link_locked;You have already relieved your interviewers bladder.@@]<br>
<<else>>
<<if $fetish.piss>>
<<if setup.getTotalValue("piss") > 10>>
[<<moveTo "event_post_school_interview_10" "Tout your skills as a urinal and ask if <<he>> needs relief?" 300 "<<set $scene.action_5='piss'>>">>]<br>
<<else>>
[@@.link_locked;The possibility of spitting out something so disgusting makes offering to drink piss too risky of a proposition.@@]<br>
<</if>>
<</if>>
<</if>>
<</if>>
<<if $scene.impress_actions.includes("sub")>>
[@@.link_locked;You have already submitted to your interviewer.@@]<br>
<<else>>
[<<moveTo "event_post_school_interview_10" "Show how submissive you can be." 300 "<<set $scene.action_5='sub'>>">>]<br>
<</if>>
<<if $scene.impress_actions.includes("dom")>>
[@@.link_locked;You have already attempted to dominate the interviewer.@@]<br>
<<else>>
<<if setup.getTotalValue("dominance") > 10>>
[<<moveTo "event_post_school_interview_10" "Show that you can dominate <<him>>." 300 "<<set $scene.action_5='dom'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the confidence to attempt to turn the tables and dominate your interviewer.@@]<br>
<</if>>
<</if>>
<<if $scene.impress_actions.includes("bondage")>>
[@@.link_locked;You have already shown that you know the ropes.@@]<br>
<<else>>
<<if setup.getTotalValue("bondage") > 10>>
[<<moveTo "event_post_school_interview_10" "Ask for some rope to show off your bondage skills." 600 "<<set $scene.action_5='bondage'>>">>]<br>
<<else>>
[@@.link_locked;You don't think being tied up would be the best demonstration of your skills.@@]<br>
<</if>>
<</if>>
<<if $scene.impress_actions.includes("foot")>>
[@@.link_locked;You have already made your devotion to the <<mans>> feet.@@]<br>
<<else>>
<<if setup.getTotalValue("foot") > 10>>
[<<moveTo "event_post_school_interview_10" "Worship <<his>> feet." 300 "<<set $scene.action_5='foot'>>">>]<br>
<<else>>
[@@.link_locked;You don't think you could do proper justice to <<his>> feet.@@]<br>
<</if>>
<</if>>
<<if $scene.impress_actions.includes("gaming")>>
[@@.link_locked;You have already discussed your gamer skillz.@@]<br>
<<else>>
<<if setup.getTotalValue("gaming") > 10>>
[<<moveTo "event_post_school_interview_10" "Tout your gaming skills." 300 "<<set $scene.action_5='gaming'>>">>]<br>
<<else>>
[@@.link_locked;Your gaming skills are nothing to write home about.@@]<br>
<</if>>
<</if>>
<<if $scene.impress_actions.includes("martial_arts")>>
[@@.link_locked;You have already demonstrated your fighting form.@@]<br>
<<else>>
<<if setup.getTotalValue("martial_arts") > 10>>
[<<moveTo "event_post_school_interview_10" "Show off your martial prowess." 300 "<<set $scene.action_5='martial_arts'>>">>]<br>
<<else>>
[@@.link_locked;Your martial skills aren't enough to brag about.@@]<br>
<</if>>
<</if>>
<<if $scene.impress_actions.includes("physical")>>
[@@.link_locked;You have already shown off your physical prowess.@@]<br>
<<else>>
<<if setup.getTotalValue("dexterity") > 10 || setup.getTotalValue("strength") > 10 || setup.getTotalValue("stamina") > 10>>
[<<moveTo "event_post_school_interview_10" "Show off your physical skills." 300 "<<set $scene.action_5='physical'>>">>]<br>
<<else>>
[@@.link_locked;Your martial skills aren't enough to brag about.@@]<br>
<</if>>
<</if>>
<<if $scene.impress_actions.length > 1>>
[<<moveTo "event_post_school_interview_11" "You can think of nothing further you could show off." 300>>]<br>
<</if>>/*#
#desc: interview 2 - show off skill
#status: FINISHED 0.8.3.0
#ignore_spell: g,th
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.impress_actions.push($scene.action_5)>>
<<switch $scene.action_5>>
<<case "org">>
<<if setup.getTotalValue("smart") >= setup.getTotalValue("bimbofication")>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("bimbofication") - setup.getTotalValue("smart") > 5>>
<<set $scene.impress_mod = 0>>
<<else>>
<<set $scene.impress_mod = -1>>
<</if>>
<<case "type">>
<<if setup.getTotalValue("dexterity") > 10>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("dexterity") > 5>>
<<set $scene.impress_mod = 0>>
<<else>>
<<set $scene.impress_mod = -1>>
<</if>>
<<case "smart">>
<<if setup.getTotalValue("smart") >= 20>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("smart") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "anal">>
<<set $scene.impress_mod = -1>>
<<case "oral">>
<<if $scene.suck>>
<<set $scene.impress_mod = 0>>
<<else>>
<<set $scene.impress_mod = -1>>
<</if>>
<<case "best">>
<<if setup.getTotalValue("bestiality") >=10>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("bdsm") < 7>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "bdsm">>
<<if setup.getTotalValue("bdsm") >= 20>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("bdsm") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "piss">>
<<if setup.getTotalValue("piss") >= 20>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("piss") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "sub">>
<<if setup.getTotalValue("submission") >= 20>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("submission") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "dom">>
<<if setup.getTotalValue("dominance") >= 20>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("dominance") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "bondage">>
<<if setup.getTotalValue("bondage") >= 20>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("bondage") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "foot">>
<<if setup.getTotalValue("foot") >= 20>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("foot") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "cum">>
<<if setup.getTotalValue("cum") >= 20>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("cum") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "gaming">>
<<if $player.flags.hotties_game.rank >= 8 && $player.flags.streaming.stage >= 4>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("gaming") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "martial_arts">>
<<if State.hasPlayed("event_tournament_win_1")>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("martial_arts") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<<case "physical">>
<<if State.hasPlayed("event_gym_contest_7_win")>>
<<set $scene.impress_mod = 1>>
<<elseif setup.getTotalValue("dexterity") < 15 || setup.getTotalValue("strength") < 15 || setup.getTotalValue("stamina") < 15>>
<<set $scene.impress_mod = -1>>
<<else>>
<<set $scene.impress_mod = 0>>
<</if>>
<</switch>>
<<set $scene.impress += $scene.impress_mod>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_5>>
<<case "sub">>
<<if setup.getTotalValue("submission") >= 20>>
You let out a slow breath, sitting a little smaller in your chair as you softly ask the interviewer. "@@.pc;Is the interview going okay? I would feel so bad if I was taking your time away from the other important work you must be responsible for...@@"<br>
<br>
"@@.generic_male2;No, we still have time I—@@" <<he>> pauses, looking up at you as you submissively flutter your eyelashes and a slow grin spreads across <<his>> face. "@@.generic_male2;Wow, you're good, keep making eyes like that and I'd be tempted to cut things here and just take you straight home to be a live-in slave.@@"<br>
<br>
"@@.pc;If that is your wish, <<Master>>,@@" you softly reply.<br>
<br>
<<He>> chuckles. "@@.generic_male2;Sorry, my dear, but my duties to the company come first — but your skills in this venue are clearly one of a kind, and I can't imagine a manager who would not fall instantly in love with them, and, perhaps, you.@@"
<<elseif setup.getTotalValue("submission") >= 15>>
Putting on your most innocent expression you softly ask if there is "@@.pc;Anything I can do to make this interview easier for you, <<Master>>?@@"<br>
<br>
Pausing from <<his>> note-taking the <<man>> looks up at you and chuckles. "@@.generic_male2;Not bad, not bad... being able to ramp up your submissiveness like that... a useful skill, but one held by pretty much anyone aiming for your position, so hardly enough to set you apart. Still, keep it up, a submissive <<if $fetish.sissy>>SISSI <</if>>secretary is a secure and safely employed <<if $fetish.sissy>>SISSI <</if>>secretary.@@"
<<else>>
You bite your lip and softly ask if "@@.pc;The interview is going okay so far, <<Master>>?@@"<br>
<br>
Rather than giving an answer <<he>> just chuckles and shakes <<his>> head in amusement. "@@.generic_male2;Trying to appeal to me by showing off your submissive side? Sorry, my dear, but I can tell it's an act. Maybe it is because you have spent so much time with a powerful, natural dominant like <<=setup.getNpcName("npc_manager","other")>>, but you need to work on making that sort of thing completely automatic for those of us who aren't quite at her god-like level. I am afraid I shall have to make a note that, if you are hired, you will need to be assigned to a firm hand as I judge you lacking in the instinctive sense of obedience to make you suitable for just any superior.@@"
<</if>>
<<case "dom">>
<<if setup.getTotalValue("dominance") >= 20>>
You pause, sitting a bit more straighter as you stare across the table at the interviewer as <<he>> finishes up some notes. <<He>> slowly looks up and you lock gazes with <<him>>, <<his>> pen freezing as you let the hint of a grin appear on your lips.<br>
<br>
"@@.generic_male2;I'm sorry for getting distracted I—@@" <<he>> pauses, seemingly stunned at <<his>> own reaction as <<he>> fights for control. "@@.generic_male2;I, uh... wow you're good at this but... while I accept that such skills would certainly be useful for you to enact the remote will of your superior... well, I beg you that it is maybe a bit over-much for an interview...@@"<br>
<br>
You smile wider and nod, releasing a slow breath as you let your dominant side fade away.<br>
<br>
The interviewer lets out a sigh of relief. "@@.generic_male2;Wow, I guess I shouldn't be surprised given that you worked so closely with such a role model as <<=setup.getNpcName("npc_manager","other")>>, but I've never seen a <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> with that sort of talent! Impressive, indeed...@@"
<<elseif setup.getTotalValue("dominance") >= 15>>
You rise to your feet and stare down at your interviewer as you let your dominant aura peek out.<br>
<br>
<<He>> hesitates for a moment, almost flinching from your gaze before <<he>> reasserts himself. "@@.generic_male2;Wow, I felt something there... not enough to matter, I mean you are just a prospective <<if $fetish.sissy>>SISSI <</if>>Secretary, compared to me, well...@@" <<He>> chuckles. "@@.generic_male2;Still, it might be enough to take charge of your fellows, which I suppose might be useful, on occasion. Nothing to really write home about, however, since were such a situation to arise you would be empowered by your superior.@@"<br>
<br>
Attempting to maintain your composure you nod and slowly sit back down.
<<else>>
You rise to your feet and set your jaw attempting to put out the sort of dominant aura that comes do naturally to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
Taking one look at you the interviewer laughs, "@@.generic_male2;Are you trying to... dominate me? Oh that is just too precious. Pathetic, and utterly inappropriate, but also hilarious. You! A prospective <<if $fetish.sissy>>SISSI <</if>>Secretary, dominate me! Hah! How about you sit back down and cease this foolishness.@@"<br>
<br>
Embarrassed and chagrined you meekly take your seat.
<</if>>
<<case "best">>
You tell the interviewer that you would like to demonstrate your "affinity" for animals. The <<man>> smiles slyly and sends a text only for another <<man>> to walk in but a few moments later escorting a dog on a leash.<br>
<br>
<<if setup.getTotalValue("bestiality") >= 10>>
You do not delay in getting down on all fours to offer your ass to the hound. Whether by training or habit it wastes no time in mounting you, one of the biggest dog-cocks you've ever taken knotting you hard and fast, its drool dripping down your face as you moan.<br>
<br>
"@@.pc;See what a good bitch I make? Oh, I just love being a naughty, knotted girl, I just wish horses were inside pets so I could suck on a horse-cock at the same time to prove my love extends to ALL animals!@@"<br>
<br>
Your interviewer, and the dog's trainer, chuckle at your obvious enthusiasm, a silent signal sent that has the pup humping you even faster and you groan as it fills your ass with its spunk.<br>
<br>
<<printThought "So... good...">>
<<elseif setup.getTotalValue("bestiality") >= 7>>
A knot larger than you've felt before swells in your rear and you moan. The beast pants and humps you into the ground as you struggle to keep it together.<br>
<br>
"@@.pc;G-g-good boy...@@" you gasp, hoping to convince him to pace himself as you try to endure. A glance up at the interviewer shows <<him>> unimpressed, while the trainer seems amused at <<his>> beast's power over you.<br>
<br>
Fortunately? For your survival the creature does not last long, a final burst of speed ending it and pumping you full of canine spunk.<br>
<br>
<<printThought "Fuuuuuck...">>
<<else>>
A knot larger than you've felt before swells in your rear and you gasp. You are overpowered and driven to the floor as the beast pounds away and you start to panic, flailing slightly in a failed attempt to escape.<br>
<br>
"@@.generic_male2;Pathetic,@@" the interviewer states, motioning towards the trainer who manipulates a small remote that has the creature suddenly stop its frenzied humping.<br>
<br>
<<printThought "Fuck, that was too much...">>
<</if>>
<br><br>
The beast's duty done the knot shrinks until its cock can pop free, the trainer leading it away as you crawl back up to your seat; the interviewer appearing
<<if setup.getTotalValue("bestiality") >= 10>>
very impressed.<br>
<br>
"@@.generic_male2;Such enthusiasm! I watch some girls on the upper floor spend time in the kennels and look absolutely miserable, but you obviously love it, and that just makes it even better for the animals.@@"
<<elseif setup.getTotalValue("bestiality") >= 7>>
almost disinterested.<br>
<br>
"@@.generic_male2;A serviceable job, but hardly impressive. Maybe my expectations were too high but when you called yourself an animal lover, well... I was anticipating more passion, rather than a mere workmanlike performance.@@"
<<else>>
disappointed.<br>
<br>
"@@.generic_male2;Well that was quite the disappointing display — when you ask for something you should be confident in handling it. You are applying for a prized position, there is no time for your manager to be giving you constant on-the-job training, especially in things you claim competence in!@@"
<</if>>
<<case "smart">>
You approach the whiteboard and launch into a lecture about the current state of the company.
<<if setup.getTotalValue("smart") >= 20>>
You dig deep as you rattle off current financials and expected challenges to be faced by Social Interaction Service Syndicate Inc. in the coming quarter, talking about how you believe you will be able to help the company maintain, and accelerate its positive growth trends.<br>
<br>
The interviewer writes down quite a few notes as you talk, seeming quite impressed by the time you make your closing statement. "@@.generic_male2;My, my — you really pay attention to what's going on around you. The right manager might consider you to make for quite the secret weapon.@@"
<<elseif setup.getTotalValue("smart") < 15>>
You feel like you're giving a good summary, but you can tell that the interviewer is bored.<br>
<br>
"@@.generic_male2;A pedestrian understanding of the workings of the company, wholly lacking in meaningful analysis. Nothing that any senior manager would find interesting or useful. Should you get the job I would advise you to keep such vacuous "insight" to yourself.@@"
<<else>>
You do your best to try to add your own insight on top of just spouting facts but the interviewer seems unimpressed.<br>
<br>
"@@.generic_male2;It is good to see that you are taking an interest in the greater company, but nothing you have said sets you apart in any real way, especially when it comes to the levels at which senior management functions at.@@"
<</if>>
<<case "bdsm">>
You bend over and expose your bottom and give it a wiggle. "@@.pc;Isn't this just perfect for spanking? Come on, try it out, let me show you how I handle the consequences of being a naughty girl...@@"<br>
<br>
The <<man>> rises from <<his>> chair and approaches you slowly. <<He>> stands over you for a moment and then roughly shoves you down onto the table with one hand on the back of your neck as <<he>> brings the other down sharply on your bottom.
<<if setup.getTotalValue("bdsm") >= 20>>
The blow lands hard enough to echo through the room and you gasp... a gasp that turns to a moan as you reply "@@.pc;Thank you, <<sir>>, may I have another?@@"<br>
<br>
"@@.generic_male2;Of course...@@" <<he>> replies with evil glee, <<his>> hand landing hard and fast on one cheek, then the other, the loud SMACK, SMACK, SMACk filling the room and turning your bottom a deep red before <<he>> pulls you back to your feet.<br>
<br>
"@@.pc;Th-thank you, <<sir>>,@@" you reply; breathless and unprompted.<br>
<br>
"@@.generic_male2;Good girl.@@" <<He>> states, giving you a final slap on the bottom to hurry you back to your chair. "@@.generic_male2;You really are a proper painslut, the perfect challenge for any sadistic manager... which is to say, any senior manager.@@"
<<elseif setup.getTotalValue("bdsm") < 15>>
You yelp in pain — even for you this is a bit much and you bite your lip as <<he>> lands two more hard blows to each cheek before stopping. "@@.generic_male2;Hmm, seems you lips are write checks your ass can't cash — certainly it is a delightful bottom to paddle, and it is turning a lovely shade of red, but it is quite clear you are already near your limit, I would have needed to see far more to be in any way impressed.@@"
<<else>>
You bite your lip as fire spreads across your bottom, gasping softly as the room echoes with the sound of flesh on flesh as <<he>> turns your ass red.<br>
<br>
You are nearing your limit when <<he>> pulls you to your feet. "@@.generic_male2;An acceptable bottom, but not a notable one.@@" <<He>> states in dismissive summary before walking back to <<his>> chair.
<</if>>
<<case "piss">>
You ask your interviewer if <<his>> morning coffee might be ready to come out?<br>
<br>
<<He>> smiles, rising to <<his>> feet and unzipping as you scurry around the table and kneel down.
<<if setup.getTotalValue("piss") >= 20>>
Your lips eagerly wrap around the soft lemonade spout, closing your eyes in pleasure as <<his>> strong, wonderful wee trickles down your throat. You eagerly slurp up every last drop, using your tongue to clean under <<his>> hood and through <<his>> slit before drying <<him>> off and tucking <<him>> back into <<his>> pants with a smile and a quietly emotional "@@.pc;Thank you.@@"<br>
<br>
"@@.generic_male2;Now THAT is a proper human toilet, wonderful service, four stars, would piss all over again!@@"<br>
<br>
You rise to your feet with a smile, gracing <<him>> with a grateful curtsy before walking back around the table to your seat.
<<elseif setup.getTotalValue("piss") < 15>>
You do your best to swallow <<his>> bitter morning brew but <<he>> seems to have needed one too many cups of coffee this morning, and you struggle towards the end, some slight dribbles escaping the edge of your lips before <<he>> finishes up and you lean back with a cough.<br>
<br>
"@@.generic_male2;Very disappointing — not only did you spill, your facial expression leaves much to be desired. Drinking from a superior is a privilege and if you cannot act accordingly, well... what is the point?@@"<br>
<br>
Admonished, you rise to your feet and walk back around the table to your seat.
<<else>>
You focus on not spilling anything as <<he>> unleashes <<his>> flow, the throat-wetting treat quite pleasant after having spent so much time talking. You finish up with a smile and rise to your feet, only to pause as <<he>> slightly shakes <<his>> head. "@@.generic_male2;An acceptable effort, but where is the passion, the enthusiasm, the personal touch? Being a functional automaton is certainly sufficient for the executive bathroom, but it is unremarkable beyond that.@@"<br>
<br>
You promise that you will do better "@@.pc;Next time@@" before you walk back around the table to your seat.
<</if>>
<<case "org">>
<<if setup.getTotalValue("smart") >= setup.getTotalValue("bimbofication")>>
You head for the white-board and draw up a schedule, filling in a hypothetical week of your manager's meetings before explaining how their schedule would affect your own — pointing out days you would come early to prepare things, how to make sure to fit in getting them lunch on a particularly busy day, or how you might need to warn them early for a meeting scheduled in one of the conference rooms furthest from the elevator so as not to show up late.<br>
<br>
The <<man>> nods along, clearly impressed. "@@.generic_male2;Very well thought out — this is the sort of attention to detail that marks a great <<if $fetish.sissy>>SISSI <</if>>secretary who can free their superior to focus on the things that matter to growing the business.@@"
<<elseif (setup.getTotalValue("bimbofication") - setup.getTotalValue("smart")) > 5>>
You head for the whiteboard to, sketch out a schedule. Filling in a week's worth of your manager's meetings you talk about how you make sure that they're prepared for things.<br>
<br>
The <<man>> seems to be waiting for you to go further but you just smile back at <<him>> until <<he>> shrugs. "@@.generic_male2;I see... well you have certainly laid out the basics, but nothing to really set you apart from the average secretary.@@"
<<else>>
You head for the whiteboard to, like, sketch out a schedule? Halfway through you get a bit distracted, forgetting what you were doing as you add in a couple blocks of time for "sex" into the schedule.<br>
<br>
With a proud grin on your face you put the marker down and look at the <<man>> but <<he>> shakes <<his>> head as <<he>> makes a mark in <<his>> notes. "@@.generic_male2;Very disappointing... not only does your week seem to have two Fridays... it is quite inappropriate for a subordinate to propose so much sex! You have many other responsibilities, and getting fucked occurs at your manager's decision, not your own. A disappointment all around on this count.@@"
<</if>>
<<case "type">>
You request a laptop and one is quickly produced where you let your fingers dance across the keyboard to show off your typing speed. The <<man>> nods in approval and then dictates a short letter to check your dictation. "@@.generic_male2;Very good, and so nice to see someone return to the basics. I confess that, so much of the time these days we rely on the text to speech software, but there is something about the tap tap tap as a lovely lady types up one's words... yes, demonstrating you can handle this ancient, fundamental skill is a credit when so many others are focused on just chasing trends.@@"
<<case "anal">>
You start to offer up your ass as one of your "best" features only for the <<man>> to cut you off in annoyance.<br>
<br>
"@@.generic_male2;Yes, yes, you are a pair of functional fuck-holes, this is hardly an impressive thing this high in the building. No subordinate makes it this high without having graduated <<=ps(setup.getNpcName("npc_development","formal"))>> classs, so whatever mind-blowing pompoir skills you feel so proud of... everyone else has them as well, so it hardly makes you stand out.@@"
<<case "oral">>
You put forth your expert skills at "oral presentations" as certainly a valuable asset to have but, to your surprise, the <<man>> merely sighs.<br>
<br>
<<if $scene.suck>>
"@@.generic_male2;Of course I know you can suck a good cock, and while I have no complaints about this morning... well, you are a graduate of <<=ps(setup.getNpcName("npc_development","formal"))>>... like every other subordinate on the upper floors, I would hardly expect anything less. No, as much as your skills might impress a normal person, here at Social Interaction Service Syndicate Inc. it is merely adhering to standards, nothing more.@@"
<<else>>
"@@.generic_male2;Always straight to sucking cock — except for earlier this morning... where was that enthusiasm on the elevator, hmm? Sorry, I promised that it would not affect my judgement, but it does prove my point. Beyond that, however... do you know how many dick-lickers <<=setup.getNpcName("npc_development","formal")>> has graduated? Oral comes standard when it comes to the upper floors so any bragging you might do well... for someone of my experience? It would merely meet expectations, no more.@@"
<</if>>
<<case "bondage">>
You request some ropes and, after they are delivered a few minutes later, commence to binding yourself quickly and efficiently.
<<if setup.getTotalValue("bondage") >= 20>>
You make sure to pull everything tight, suppressing a moan as you feel the rope bite into your skin, just the way you like it. As you come up on the limits presented when binding oneself the <<man>> rises and walks over, efficiently assisting you in getting your body into a very stringent hogtie on top of the table.<br>
<br>
<<He>> steps back and walks around as you smile, rapturously enjoying the feeling of being restrained.<br>
<br>
"@@.generic_male2;Hmm, yes, you appear to have quite the predilection for restraint. Most would struggle to handle such a severe position but you obviously love it. That sort of enthusiasm is quite a useful skill to have.@@"
<<elseif setup.getTotalValue("bondage") < 15>>
Your occasional hesitancy at having things too painfully tight slows you down and the end result is restrictive, but not overly so. The <<man>> sighs and shakes <<his>> head.<br>
<br>
"@@.generic_male2;Truly a novice effort. It is clear that you have little art for this sort of thing and I doubt you would last long in a proper bind without complaining. No, this is hardly sufficient for a position such as you hope to claim.@@"
<<else>>
You do a respectable job, with the <<man>> stepping in towards the end to "finish things off" so that you are fully restrained. <<He>> walks around the table upon which you rest to examine your position. "@@.generic_male2;Hmm, a functional tie, if not particularly strenuous or artistic, acceptable, but little more.@@"
<</if>>
<br><br>
The <<man>> leaves you to enjoy your bondage for a few more minutes as <<he>> observes before untying you and gesturing for you to take your seat and continue on with the interview.
<<case "foot">>
<<if setup.getTotalValue("foot") >= 20>>
You slide to the floor and crawl under the table, <<if $options.fem>>taking off the woman's heels<<else>>unlacing the man's shoes and peeling off <<his>> socks<</if>> before cradling <<his>> foot in both hands. Rubbing <<him>> firmly you take a deep whiff of <<his>> foot and moan, kissing <<him>> from ankle to sole as you whisper how <<if $options.fem>>wonderful her<<else>>wonderfully large his<</if>> foot is, and how honoured you are to be granted such privilege.<br>
<br>
Wiggling <<his>> toes the <<man>> waits until you have finished with both feet before speaking. "@@.generic_male2;Very good, those are some comforting fingers, indeed. Just the ticket to help your manager take a load off after a long, stressful day.@@"
<<elseif setup.getTotalValue("foot") < 15>>
You barely get a minute's work in, however before <<he>> shakes <<his>> feet and pulls away.<br>
<br>
"@@.generic_male2;Sorry, but that is just not doing it for me. The effort is something but the skills... no, I daresay you would be far from my first choice if my dogs were barking at the end of a long day.@@"
<<else>>
<<He>> lets you work for several minutes before speaking.<br>
<br>
"@@.generic_male2;Hmm, decent skills, but not good enough to really set you apart and make the massage memorable, you may return to your seat now.@@"
<</if>>
You slip <<his>> <<if $options.fem>>heels back on<<else>>socks back up and lace <<his>> shoes<</if>> before crawling back under the table and popping back up into your chair.
<<case "cum">>
You tell the <<man>> that you are feeling a bit thirsty, and ask if you might have some <<if $options.fem>>girl<</if>>cum to whet your throat?<br>
<br>
<<He>> grins in amusement and sends off a text message. A few moments later a collared Secretary walks in bearing a tall, creamy glass, placing it in front of you and then standing at attention in wait.<br>
<br>
<<if setup.getTotalValue("cum") >= 20>>
You pound it back with relish, draining it in a single long gulp and then licking your lips clean with a smile as you give thanks for the delicious refreshment, and remark on some of the subtleties of flavour.<br>
<br>
The <<man>> signals for the Secretary to gather the empty glass and depart. "@@.generic_male2;Well done, authentic enthusiasm, and a clear appreciation of the complexity of the beverage. I can imagine you identifying customers by taste alone... a skill that comes up more than you might think.@@"
<<elseif setup.getTotalValue("cum") < 15>>
You try to knock back the glass.. but it's just too much thick, bitter saltiness and you get perhaps half of it down before you cough and sputter and barely avoid making a mess.<br>
<br>
The <<man>> shakes <<his>> head and signals for the Secretary to gather the half-empty glass and depart. "@@.generic_male2;Very disappointing — you are lucky someone more passionate than yourself is here to prevent waste.@@" With an obedient nod the woman finishes off what you left, licking her lips with relish as she leaves the room.
<<else>>
You take one long drag from the glass, the thick, salty brew is a challenge to chug. You are forced to take a breath and regroup before you finish the drink, unable to suppress an impolite burp as you put the glass back down.<br>
<br>
"@@.generic_male2;An effort, but not a particularly astounding one. I suppose you would take a normal load without complaint, but what <<if $fetish.sissy>>SISSI <</if>>Secretary here wouldn't?@@" <<He>> nods and the woman scoops up the empty glass and leaves the room.
<</if>>
<<case "martial_arts">>
<<if State.hasPlayed("event_tournament_win_1")>>
You rise to your feet, bow and do a short, crisp kata. The <<man>> squints for a moment, then recognition dawns. "@@.generic_male2;Wait, those kicks... do you compete?@@"<br>
<br>
You nod and <<he>> claps <<his>> hands. "@@.generic_male2;I knew it! You were partnered up with that big <<if $npc_admin.fem>>gal<<else>>guy<</if>>, weren't you? Damn was I impressed with the way the pair of you tore through your opponents... obviously this company employees the best security force in the world to keep our employees safe, but there's no doubting that sometimes proximity matters and your manager would certainly feel more at ease knowing they had such a firecracker ready to defend them if anything happened.@@"
<<elseif setup.getTotalValue("martial_arts") < 15>>
You stand up and do a short kata. The <<man>> seems highly unimpressed.<br>
<br>
"@@.generic_male2;What did you do, take some boxercise classes on the weekend? We have a security department — the best in the world. A frail thing like you would be extraneous and just get yourself hurt.@@"
<<else>>
You do some katas to show off your combat training, the <<man>> seems nonplussed.<br>
<br>
"@@.generic_male2;Decent form, but we have the best security department in the world. I trust them to be far more qualified and equipped if anything dangerous were to happen.@@"
<</if>>
<<case "gaming">>
You launch into an enthusiastic summary of your gaming prowess.
<<if $player.flags.hotties_game.rank >= 8 && $player.flags.streaming.stage >= 4>>
At first the interviewer seems unimpressed, but, as you casually mention the tournaments you've won <<his>> interest is piqued. You go on to explain how your gaming skills translate quite well to work: hand-eye coordination, memory, focus... with your growing streaming channel speaking even more to your skills of organisation and presentation.<br>
<br>
The <<man>> nods "@@.generic_male2;I must say... normally someone bringing up gaming in an interview is a bit of a red flag, but you really seem to have taken it seriously and I can definitely see how some of those skills could help you perform your job more effectively... I just advise you to not let a hobby distract you from the important work you would be doing here at Social Interaction Service Syndicate Inc... while noting I'll be making a note to check out your live-stream someday!@@"
<<elseif setup.getTotalValue("gaming") >= 15>>
The interviewer seems unimpressed, even as you try to tie things back to "work" by bringing up how skills like hand-eye coordination, focus, and your practice on camera streaming, translate directly to your job.<br>
<br>
"@@.generic_male2;Certainly hobbies are good for one's mental balance, and I can hear the enthusiasm in your voice, but nothing you've said really stands out as far as the position you are applying for. What other skills do you have?@@"
<<else>>
You talk about your Gam3r Grrl Skillz... which seems to utterly fail to impress the <<man>>.<br>
<br>
"@@.generic_male2;I am sorry. I am sure that what you are talking about is interesting to someone, but I fail to see how all this time you seem to have spent playing silly games has done anything but distract you from becoming a better <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<</if>>
<<case "physical">>
<<if State.hasPlayed("event_gym_contest_7_win")>>
You start doing some hand-stand exercises to show off your strength and balance, the <<man>> watches for a moment and then recognition seems to dawn. "@@.generic_male2;Wait... seeing you in motion like this... I recognise you from somewhere... wait... are you Miss Hard Pump?@@"<br>
<br>
You smile and flex, responding "@@.pc;Yes, I am.@@"<br>
<br>
"@@.generic_male2;Wow, that is... that is definitely impressive. Such dedication and power, and beauty! Yes... I could see getting crushed by those thighs, and your stamina and flexibility would have all manner of value at the office.@@"
<<elseif setup.getTotalValue("dexterity") < 15 || setup.getTotalValue("strength") < 15 || setup.getTotalValue("stamina") < 15>>
You do some posing and show-off exercises but it is quickly clear that the <<man>> is practically bored.<br>
<br>
"@@.generic_male2;Look, I know it can be hard to find time in the day to stay fit, but working out in the middle of an interview seems quite the poor choice.@@"
<<else>>
You do some posing and show-off exercises. The <<man>> seems, at best, ambivalent.<br>
<br>
"@@.generic_male2;You seem to be in shape, but that is to be expected, nothing you've done seems particularly notable. After all, this you're applying for a clerical position, not the loading docks.@@"
<</if>>
<<default>>
ERROR: unexpected scene.action_5 <<=$scene.action_5>>
<</switch>>
<br><br>
<<if $scene.impress > 5>>
The <<man>> smiles at you.<br>
<br>
"@@.generic_male2;Unfortunately, I think I need to call it here. You are definitely a <<if $fetish.sissy>>sissy<<else>>woman<</if>> of many talents. Obviously others will have their say, but I would be overjoyed to have you assigned as my <<if $fetish.sissy>>SISSI <</if>>Secretary... and I cannot imagine my superiors feeling any different.@@"<br>
<br>
You thank <<him>> for the kind words as <<he>> packs up <<his>> things.<br>
<br>
[<<moveTo "event_post_school_interview_11" "Continue." 300>>]
<<else>>
"@@.generic_male2;So, what other skill would you like to show off?@@"<br>
<br>
<<switch $scene.impress_mod>>
<<case 1>>
<<printThought "That seemed to really impress <<him>>, what can I pull out next to keep the ball rolling?">>
<<case 0>>
<<printThought "<<He>> seemed pretty unmoved by that, I need to think of something that will really impress <<him>>...">>
<<case -1>>
<<printThought "<<He>> really didn't seem to like that last one, I need to come up with something better if I'm going to impress <<him>>...">>
<</switch>>
<br><br>
<<if $scene.impress > 3>>
Overall you'd say you're doing really well in this interview portion.
<<elseif $scene.impress > 0>>
You seem to be doing some things right, but you need to do a lot more to really cinch this interview.
<<elseif $scene.impress == 0>>
Despite your best efforts thus far the <<man>> seems unmoved in either direction about you.
<<elseif $scene.impress < -5>>
So far you seem to be totally bombing this interview segment...
<<else>>
You're getting increasingly stressed out over your string of failures during this interview...
<</if>>
<br><br>
<<include "interviewChoices">>
<</if>>
</div>/*#
#desc: 2nd interviewer - conclusion
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.impress > 5>>
<<set $player.flags.resume.skills_interview = 5>>
<<elseif $scene.impress >= 3>>
<<set $player.flags.resume.skills_interview = 4>>
<<elseif $scene.impress > 0>>
<<set $player.flags.resume.skills_interview = 3>>
<<elseif $scene.impress > -3>>
<<set $player.flags.resume.skills_interview = 2>>
<<else>>
<<set $player.flags.resume.skills_interview = 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("generic_manager_male")>>
<div id="invframe" class="scrolltext">
<<if $scene.impress > 5>>
You thank the <<man>> for <<his>> time as <<he>> heads for the door and <<he>> pauses to grace you with a smile. "@@.generic_male2;Trust me, it was my pleasure. I only wish I could have seen more of your bounty of ability, but there are other interviews yet to do, and other's whose opinions must be weighed in determining if you are worthy of a job offer. Still, until we meet again.@@"<br>
<br>
<<if $scene.suck>>
You flash back to your time in the elevator and you wink back at <<him>> as <<he>> chuckles.
<<else>>
You smile back, telling <<him>> you'll be sure to be more "hospitable" at your next encounter. <<He>> grins, "@@.generic_male2;I shall hold you to that, my dear.@@"
<</if>>
<br><br>
The door closes behind <<him>> leaving you alone in the silent conference room for several minutes before you hear a gentle knock on the door.
<<elseif $scene.impress >= 3>>
You tell <<him>> that you cannot think of any other skills of yours worthy of <<his>> time. <<He>> nods.<br>
<br>
"@@.generic_male2;Well what I have seen is certainly impressive. You are a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> of no small talents... will it be enough for the lofty position you are applying for? Well, that is a decision up to more than just myself. I will wish you luck in your remaining interviews, and if you don't get this position, well... I am sure there is somewhere in this great company where your abilities could be put to use.@@"<br>
<br>
The <<man>> finishes gathering <<his>> notes and departs, leaving you alone in the room for several quiet minutes before there is a knock on the door.
<<elseif $scene.impress > 0>>
You confess that you have nothing else worth showing <<him>> and the <<man>> nods.<br>
<br>
"@@.generic_male2;Well you certainly have some skills... though whether it is enough for the position to which you are applying... we shall see. After all, I am but one of your interviewers today. Perhaps you will have better luck impressing the others.@@"<br>
<br>
With a curt nod <<he>> leaves the room, several minutes passing with you in solitary silence before there is a soft knock on the door.
<<elseif $scene.impress > -3>>
You confess that you have nothing else worth showing <<him>> and the <<man>> sighs in frustration as <<he>> rises to <<his>> feet.<br>
<br>
"@@.generic_male2;What you had was hardly worth the showing. I must question how <<=setup.getNpcName("npc_manager","other")>> could tolerate someone so incompetent — I never suspected her to have the patience of a saint, but I guess she sees something. Whatever that may be, I do not see any sign.@@"<br>
<br>
<<He>> walks out of the room without another word, leaving you alone for several minutes before the silence is interrupted by a soft knock on the door.
<<else>>
You confess that you have nothing else to show and <<he>> sighs, <<his>> frustration etched onto <<his>> face as <<he>> stands up and walks past you on the way out of the room. From <<his>> expression you get the feeling <<he>> considers you to have been a total waste of <<his>> time... and given your overall performance, you suppose you would have a hard time arguing the point.<br>
<br>
The door to the conference room slams behind <<him>> and you are left to wait several minutes before there is a soft knock on that same door.
<</if>>
<br><br>
[<<moveTo "event_post_school_interview_12" "Rise and get the door." 180>>]
</div>/*#
#desc: 3nd interviewer - intro
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "bimbo_secretary">>
<div id="invframe" class="scrolltext">
You open the door to find yourself greeted by the answer to the question "what if someone thought <<=setup.getNpcName("npc_barista","nickname")>> was too subtle?" <br>
<br>
Thin, blonde, with an inhumanly hourglass profile, breasts larger than her head and enough makeup to open a store, a living caricature of bimbo secretary minces past you atop twelve centimetre stiletto heels. Her hips swing dangerously with each step, her skirt barely long enough to reach her thighs, the top button of her blouse under nigh unimaginable force as the final bastion of control over her cavernous cleavage.<br>
<br>
"@@.generic_female1;So, like... I'm here to talk to you about being a Secretary?@@" She asks with a lilting, breathless rhythm as she takes a seat on the far side of the table.<br>
<br>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
<<printThought "Wow, like, she's the perfect bimbo!">>
<<else>>
<<printThought "Wow, and I thought I was turning into something of a bimbo...">>
<</if>>
<br><br>
<<if setup.getTotalValue("smart") >= setup.getTotalValue("bimbofication")>>
<<printThought 'You are tempted to spend this "interview" in commiserate bimbo bliss...'>><br>
<br>
[<<moveTo "event_post_school_interview_13" "Keep it together and keep it formal." 300 "<<set $scene.action_6=false>>">>]<br>
<<else>>
<<printThought "You feel an almost irresistible urge to go full ditz...">><br>
<br>
<<if setup.getWillpower() > 0>>
[<<moveTo "event_post_school_interview_13" "Keep it together and keep it formal." 300 "<<set $scene.action_6=false>><<spendWillpower 1>>">>] <<hint $options "This is going to take an effort of will...">><br>
<<else>>
[@@.link_locked;You don't have the mental reserves to resist the call of the bimbo.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_post_school_interview_13" "Bimbo sister, like, yay!" 300 "<<set $scene.action_6=true>>">>]
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
<<printThought "So she doesn't just dress like a bimbo...">>
<<else>>
<<printThought "She's a total bimbo... how is she going to do an interview?">>
<</if>>
<br><br>
[<<moveTo "event_post_school_interview_13" "Disregard her ditziness and keep it formal." 300 "<<set $scene.action_6=false>>">>]<br>
[<<moveTo "event_post_school_interview_13" "Try and bimbo it up." 300 "<<set $scene.action_6=true>>">>]
<</if>>
</div>/*#
#desc: 3nd interviewer - bimbo chat
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_6>>
<<set _bimbo = setup.getTotalValue("bimbofication")>>
<<applyExperience 'bimbofication' _bimbo 'terrible' $SEEN_STRANGER>>
<</if>>
<<if $scene.action_6 && setup.getTotalValue("bimbofication") > 10>>
<<set $player.flags.resume.bimbo = 2>>
<<elseif !$scene.action_6 && setup.getTotalValue("smart") > 15>>
<<set $player.flags.resume.bimbo = 4>>
<<elseif $scene.action_6 && setup.getTotalValue("bimbofication") < 5>>
<<set $player.flags.resume.bimbo = 1>>
<<elseif !$scene.action_6 && setup.getTotalValue("smart") < 10>>
<<set $player.flags.resume.bimbo = 3>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "bimbo_secretary">>
<div id="invframe" class="scrolltext">
<<if $scene.action_6>>
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
Immediately sensing a kindred spirit, you open by complimenting her "@@.pc;totes fab@@" shoes and the two of you are off to the races, gushing enthusiastically about boobs and <<boy>>s and other bimbo delights. You could chat like this for hours but she suddenly shudders and catches her breath. "@@.generic_female1;Ooop, sorry, silly me, you're like so cool and I'm totally going to tell them to hire you, I've known you for only a couple minutes and you're totally my role model!@@"<br>
<br>
You gesture towards her breasts and reply that she's yours and she giggles. "@@.generic_female1;Oh, you're so sweet!@@"
<<else>>
Your bimbo senses tingling, you gush about her steep shoes and the two of you are off to the races. You can't quite keep up with her total bimbo enthusiasm, but you do your best as the two of you go back and forth gushing about clothes and cocks and all the other things bimbos love.<br>
<br>
You could chat like this for hours but she suddenly shudders and catches her breath. "@@.generic_female1;Tee hee, you're fun! But, like... I think I need to ask you some more formal stuff? Being a secretary is more about being bubbly and having big boobs!@@"<br>
<br>
You smile. "@@.pc;If it wasn't, that'd make you, like, the bestest secretary ever!@@"<br>
<br>
She giggles. "@@.generic_female1;Oh, you're so sweet!@@"
<</if>>
<<switch setup.calcBreastSize()>>
<<case 'massive'>>
She nods towards your own, almost equally ginormous gozongas. "@@.generic_female1;Yours are, like, just as good!@@"
<<case 'large'>>
She nods towards your conventionally large breasts. "@@.generic_female1;You're, like, on you way, just go back under the knife and ask for more, more, more!@@"
<<case 'medium'>>
She nods towards your medium breasts. "@@.generic_female1;You can be this big too! You just need a good surgeon, you should totally ask your manager about A-SLUT if you get the job, which you totally should, I'm sure the company would pay for it!@@"
<<case 'small'>>
She nods towards your small breasts. "@@.generic_female1;Little titties are cute too! But if you want to go bimbo big you should totally talk to your manager about A-SLUT... well, if you, like, get the job. Which you totally should!@@"
<<case 'none'>>
She nods towards your flat chest. "@@.generic_female1;Aww, don't be jealous! You can totally get a pair of your own installed! Just, like, talk to your manager about A-SLUT... well, if you, like, get the job. Which you totally should!@@"
<<default>>
ERROR: unexpected breast size: <<=setup.calcBreastSize()>>
<</switch>>
<<else>>
<<if setup.getTotalValue("bimbofication") > 5>>
You compliment her makeup and try to keep pace with the subsequent bimbo deluge, but you are but an apprentice in the presence of a master, unable to come anywhere close to meeting her exuberant bimbo passion.<br>
<br>
"@@.generic_female1;Hee hee, you're fun! Though, like, you need to relax more, just embrace the pink and stop thinking so much!@@"<br>
<br>
You reply that you try, but the interview has you a bit stressed and distracted... and not in the good way.
<<else>>
You try to mirror her bimbo-tastic diction but you soon trip up, unable to nail that mindless valley girl cadence and she frowns.<br>
<br>
"@@.generic_female1;Are you, like, making fun of me?@@"<br>
<br>
You hurry to re-assure her that you aren't, just that between the interview and her intense presence you're just really nervous.<br>
<br>
"@@.generic_female1;Boo, stress! Stress sucks! That's why I don't do it, get stressed, that is — I suck lots and lots!@@"
<</if>>
<</if>>
<br><br>
She frowns. "@@.generic_female1;Oh, right, I'm supposed to be, like... interviewing you?@@" She looks down at her notes and then snorts before tossing them away. "@@.generic_female1;That looks, like, boring... let's focus on something else...@@" She reaches deep into her cleavage to pull out a pink fountain pen that she slides across the table to you.<br>
<br>
"@@.generic_female1;How about you, like, sell me this pen!@@"
<<else>>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
Ignoring the interviewer's ditzy demeanour you greet her formally and answer the first couple of questions she asks you (each read from a cue card) in such detail that her eyes glaze over. You have to figure someone else will be scoring this from the recording because the woman in front of you gives little indication of understanding anything.<br>
<br>
"@@.generic_female1;Wow, you're like... really, mega smart and stuff... are you sure you're not trying for a job in management?@@"<br>
<br>
You assure her that you are targeting an administrative assistant position and she slowly nods. "@@.generic_female1;Well, like... I don't see much point in the rest of these information questions. You're so, like, smart you're just going to ace them anyway. Let's move on to the more fun role-play part.@@" She reaches deep into her cleavage to pull out a pink fountain pen that she slides across the table to you.<br>
<br>
"@@.generic_female1;Here, sell me this pen!@@"<br>
<br>
<<printThought "Seriously? What is this, sales 101?">>
<<else>>
Ignoring her ditzy demeanour you attempt to respond to the list of questions she rattles off with measured consideration and knowledge. You have to figure someone else will be scoring this from the recording because the woman in front of you gives little indication of understanding anything. You feel overall fairly confident in your answers and she runs down the list for several minutes before getting obviously bored.<br>
<br>
"@@.generic_female1;I guess you know a lot and stuff... at least, a lot more than me. Knowing things is, like, hard! Way better to just do things, right?@@" She giggles, tossing the rest of her notes to the side before continuing. "@@.generic_female1;Let's, like, do something else!@@"<br>
<br>
She reaches deep into her cleavage to pull out a pink fountain pen that she slides across the table to you.<br>
<br>
"@@.generic_female1;Here, like, sell me this pen!@@"
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You try to ignore your interviewer's ditzy demeanour and give studious answers to the questions she reads off her notes. You have to figure someone else will be scoring this from the recording because the woman in front of you gives little indication of understanding anything.<br>
<br>
After a few questions she appears to become bored, "@@.generic_female1;Bleh, this isn't interesting at all!@@" She states in a bit of a huff. "@@.generic_female1;Here, let's try something more, like, fun!@@"<br>
<br>
She reaches deep into her cleavage to pull out a pink fountain pen that she slides across the table to you.<br>
<br>
"@@.generic_female1;Like, sell me this pen!@@"
<<else>>
You try to focus and answer the questions she reads to you from her notes, but they're, like, hard and stuff! After you've stuttered your way through a couple she takes pity on you. "@@.generic_female1;These questions are dumb! I'm supposed to be like... your peer interview and I never need to know things like this... or know much of anything, really. Though I get known in the biblical sense a lot! Here, let's try something more fun than some dumb trivia test.@@"<br>
<br>
She tosses her notes aside before reaching deep into her cleavage to pull out a pink fountain pen that she slides across the table to you.<br>
<br>
"@@.generic_female1;Like, sell me this pen!@@"
<</if>>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_post_school_interview_14" "Ask if you could get her number." 300 "<<set $scene.action_7='number'>>">>]<br>
[<<moveTo "event_post_school_interview_14" "Try to dazzle her with the pen's features." 300 "<<set $scene.action_7='features'>>">>]<br>
[<<moveTo "event_post_school_interview_14" "Ask how long she's wanted a pen." 300 "<<set $scene.action_7='want'>>">>]<br>
[<<moveTo "event_post_school_interview_14" "This is a dumb question, you aren't applying for a sales position!" 300 "<<set $scene.action_7='flip'>>">>]
</div>/*#
#desc: 3nd interviewer - sell me a pen
#status: FINISHED 0.8.3.0
#ignore_spell: aaaanyway
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_7>>
<<case 'number'>>
<<applyExperience 'bimbofication' 15 'very' $SEEN_STRANGER>>
<<set $player.flags.resume.sell = 2>>
<<case 'features'>>
<<set $player.flags.resume.sell = 1>>
<<case 'want'>>
<<set $player.flags.resume.sell = 1>>
<<case 'flip'>>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("penis") > 10>>
<<set $player.flags.resume.sell = 2>>
<<applyExperience 'bimbofication' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'penis' 18 'terrible' $SEEN_STRANGER>>
<<else>>
<<set $player.flags.resume.sell = 1>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "bimbo_secretary">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_7>>
<<case 'flip'>>
<<if setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("penis") > 10>>
You roll your eyes at the silly question, asking her why you'd ever need to sell anyone a pen in you job? She seems momentarily crestfallen at the rejection but then you continue on about how, instead of a pen, you'd rather sell penis; everyone loves penis! Doesn't she want more penis?<br>
<br>
A wide smile back on her face she nods quickly "@@.generic_female1;Yeah, penis! Ugh, it's been, like, an hour since I've sucked some cock! I, like, totally need a hard gangbang after this, I'm, like, totally going to spend lunch getting filled up!@@"<br>
<br>
You laugh, the two of you exchanging thoughts on the best positions to get railed by multiple partners. Eventually she jolts, then sighs "@@.generic_female1;Well, I guess that's it for the interview, and I was, like, having so much fun!@@" She stands up, leaning forward in the process at an angle perfectly calculated to show off her voluminous cleavage. "@@.generic_female1;I need to clear out for the next interviewer but, like, good luck! I'd go "shopping" for penis with you any day!@@"<br>
<br>
She walks past you and out of the room, with a skip in her step as she maintains the same hip-swaying, seductive gait as she entered with.
<<else>>
You roll your eyes ask what the point of this is, considering you aren't applying for anything remotely like a sales position.<br>
<br>
The girl frowns, looking almost hurt as she rises to her feet and leans over to take her pen back — giving you a perfect view down her smushed bowling balls cleavage.<br>
<br>
"@@.generic_female1;Oh, I, uh, guess you're right. I just saw it in a movie once and thought it might be fun...@@" She sighs as she straightens up, her breasts bouncing and making her wobble slightly as she compensates for their swinging weight. "@@.generic_female1;I didn't really have anything else... I guess I'll get the next interviewer...@@"<br>
<br>
She walks past you and out of the room, maintaining the same hip-swaying, seductive gait as she entered with, despite her dampened mood.
<</if>>
<<case 'features'>>
You start gushing to her about the pen's features.
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
You dive straight in, first summarising its basic features and dimensions before theatrically disassembling and re-assembling it as you explain the fascinating science of how a fountain pen uses capillary action to cause ink to flow through the pen in a way that enables it to be used to write at all angles and with a gentle pressure enabling beautiful strokes...
<<else>>
After summarising the basic style of "fountain pen" you're off to the races, making outlandish claims as to the pen's supposed capabilities — "@@.pc;It can write in space! The ink is dolphin safe! It can survive being run over by a tank!@@"
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You rattle through the colour, some benefits of it being a fountain pen and a few other facts before you start to run out of steam.
<<else>>
Or, you try — after noting the colour and that it's a fountain pen you somewhat run out of insight and peter out.
<</if>>
<</if>>
<br><br>
She frowns. "@@.generic_female1;Hmm, like... I just realised, I don't really know what I want in a pen? I definitely want a penis in me, but just a pen? I dunno, when I take dictation I mostly just type. Hehe, dictation, I love hard dictation...@@" Her mind wanders for a moment before she jerks slightly and focuses back on you "@@.generic_female1;I guess that was a bit of a silly question but I don't have anything else for you so, like, I'll go get the next interviewer?@@"<br>
<br>
She bounces to her feet, sending her breasts swaying in a way that probably keeps whatever engineer designed her bra up at night.
<<case 'number'>>
You twiddle the pen between your fingers and smile at her from across the table, watching as she starts to lean forward in anticipation as you go almost a minute before you break the silence with a sultry tone. "@@.pc;So... could I get your number?@@"<br>
<br>
"@@.generic_female1;Of course!@@" She replies with an eager nod, reaching for paper only to pause as you continue to twiddle the pen. "@@.generic_female1;Ooooh! That was clever! That's, like, the best answer anyone's ever given me for that question! Well, that I can remember... I don't really get to do interview very often, but you were fun!@@"<br>
<br>
She trails off for a moment only to jolt back upright. "@@.generic_female1;Oh! Well, I guess I don't have anything else for you so... I'll just go get the next person, okay?@@"<br>
<br>
She bounces to her feet, dashing to the door only to pause and turn back. Retrieving her pen she leans in for a kiss, sucking face for several passionate moments before she pulls back and licks her lips. "@@.generic_female1;Mmmm, you're tasty! I just, like, wanted to check. I hope you get the job, I'd love to see you around the office, 'cause, like, I think you'd make a great member of the team!@@"<br>
<br>
As you catch your breath she dashes away, your last sight her bubble butt bobbing as she skips out of the room, her too-short skirt giving you a momentary sight of the large plug lodged inside of her.
<<case 'want'>>
You smile across the table as you brandish the pen. "@@.pc;So... how long have you wanted to buy a pen?@@"<br>
<br>
Her face screws up in confusion as she struggles to think. "@@.generic_female1;Hmm... like, I don't think I do? I mean, I just saw this in, like, a movie or something and it made sense. Well, it didn't make SENSE, sense, like... who wants a pen? But when I asked about bringing a vibrator to the interview they said I'd just get distracted, or chip a tooth again...@@" Her voice trails off as she shifts on her chair, only to jolt upright as if shocked.<br>
<br>
<<printThought "As if? With this company it's more likely she literally was just electrocuted. Probably wired up in both holes...">><br>
<br>
"@@.generic_female1;Aaaanyway, that's, like, all I really had. I'll, go, like, get your next interviewer, good luck! You seem like you'd be a real asset to the company!@@"<br>
<br>
She skips around the table, grabbing her pen before heading out the door with a parting over-the-shoulder wink.
<<default>>
ERROR: unexpected scene.action_7 <<=$scene.action_7>>
<</switch>>
<br><br>
Alone again you have nothing to do but wait for your next interviewer to arrive.<br>
<br>
[<<moveTo "event_post_school_interview_15" "Continue." 300>>]
</div>/*#
#desc: 4th interviewer - intro
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
You wait a few more minutes before the door opens again. Another woman enters the room, though the contrast between her and your previous interviewer could scarcely be more stark. Though beautiful, her demeanour and attire are completely opposite to the earlier bimbo; a stern expression, stiff posture and a long coat that so reminds you of <<=setup.getNpcName("npc_discipline","formal")>> that you wonder if she might be part of the same department.<br>
<br>
"@@.generic_female3;Good morning, Miss <<=$player.first_name>>.@@" She states in greeting as she closes the door and moves to the far side of the table. "@@.generic_female3;Before we commence, do you need anything, water, bathroom? Doing these back to back can be a bit stressful, but I will be your final session for today.@@"<br>
<br>
You reply that you're fine, just eager to prove yourself so you can get back to working.<br>
<br>
She smiles as she turns on a projector and dims the lights slightly. "@@.generic_female3;Wonderful. Speaking of back to work I thought we would take things in a bit of a different direction for this final session — I have some archival footage taken from earlier in your career and I wanted to watch it with you and get your feedback. What you were thinking, what you wish you would have done different, how you would handle a similar situation in the future, that sort of thing.@@"<br>
<br>
You nod, wondering what sort of video she intends to show.<br>
<br>
[<<moveTo "event_post_school_interview_16" "Look into your past." 300>>]
</div>/*#
#desc: 4th interviewer - watch pegging intro
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
The video starts and you almost gasp, instantly recognising the scene of you and <<=setup.getNpcName("npc_manager","formal")>> during the first time you saw her in full domme attire, including the strap-on that introduced you to pegging...<br>
<br>
<<printThought "They were taping that? I guess I shouldn't be surprised... I wonder how much else of what I've done is recorded in the company records?">><br>
<br>
The video plays for but a few seconds before the interviewer pauses it and turns towards you.<br>
<br>
"@@.generic_female3;So, from your expression and your elevated heart-rate, this video is clearly significant to you. Tell me, looking back... put yourself in your old shoes, if you could go back and change how you arrived at that moment, what would you do differently?@@"<br>
<br>
[<<moveTo "event_post_school_interview_17" "Say you would have changed nothing." 300 "<<set $scene.action_8='nothing'>>">>]<br>
[<<moveTo "event_post_school_interview_17" "Say you would have tried to get to that point in your career more efficiently." 300 "<<set $scene.action_8='good'>>">>]<br>
[<<moveTo "event_post_school_interview_17" 'Say you would have liked more time as a "probationary" <<if $fetish.sissy>>SISSI <</if>>Secretary before your promotion.' 300 "<<set $scene.action_8='slow'>>">>]<br>
[<<moveTo "event_post_school_interview_17" 'You would have quit before things got out of hand.' 300 "<<set $scene.action_8='quit'>>">>]
</div>/*#
#desc: 4th interviewer - watch pegging look, strip
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.pegging.base_style == "">>
<<set $npc_manager.flags.pegging.base_style = setup.getAverageSecStyle()>>
<</if>>
<<if $npc_manager.flags.pegging.looked_at == "">>
<<set $npc_manager.flags.pegging.looked_at = "floor">>
<</if>>
<<if $npc_manager.flags.pegging.strip == "">>
<<set $npc_manager.flags.pegging.strip = "sensuous_lingerie">>
<</if>>
<<if $npc_manager.flags.pegging.thank == "">>
<<set $npc_manager.flags.pegging.thank = "thank">>
<</if>>
<<if $npc_manager.flags.pegging.suck == "">>
<<set $npc_manager.flags.pegging.suck = "kiss">>
<</if>>
<<if $npc_manager.flags.pegging.collar == "">>
<<set $npc_manager.flags.pegging.collar = "slave">>
<</if>>
<<if $npc_manager.flags.pegging.chastity == "">>
<<set $npc_manager.flags.pegging.chastity = "remove">>
<</if>>
<<if $npc_manager.flags.pegging.style == "">>
<<set $npc_manager.flags.pegging.style = "good">>
<</if>>
<<if $scene.action_8 == 'good'>>
<<set $player.flags.resume.reflect = 2>>
<<elseif $scene.action_8 == 'nothing' && $npc_manager.flags.pegging.base_style == 'money'>>
<<set $player.flags.resume.reflect = 1>>
<<elseif $scene.action_8 == 'quit'>>
<<set $player.flags.resume.reflect = 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_8>>
<<case 'nothing'>>
You reply that, even with the benefit of hindsight, you are quite satisfied with how you progressed to that seminal moment in your career.<br>
<br>
<<switch $npc_manager.flags.pegging.base_style>>
<<case 'forced' 'strict'>>
"@@.generic_female3;Interesting... if a bit surprising. Obviously your career has progressed since, but at that point you were still struggling with your new position.@@"
<<case 'voluntary'>>
"@@.generic_female3;Interesting... if perhaps, unsurprising. My records indicate that you were proving quite enthusiastic, even then.@@"
<<case 'obedient' 'enthusiast'>>
"@@.generic_female3;Interesting... if perhaps, unsurprising. My records indicate that you were quickly developing into a very obedient girl.@@"
<<case 'money'>>
"@@.generic_female3;Interesting... if a bit disappointing. Obviously money is important, but I will confess that I like to see a bit more... passion in prospective employees. And current ones, for that matter.@@"
<<default>>
ERROR: unexpected npc_manager.flags.pegging.base_style <<=$npc_manager.flags.pegging.base_style>>
<</switch>>
<<case 'good'>>
You reply that you wish you had been better, more focused on your work and on obeying your <<=setup.getNpcName("npc_manager","title")>>.
<<switch $npc_manager.flags.pegging.base_style>>
<<case 'forced' 'strict'>>
"@@.generic_female3;Good to hear, some of your performance at that time...@@" She glances down at her notes and shakes her head "@@.generic_female3;Well, it was quite unbecoming, easily grounds for dismissal if <<=setup.getNpcName("npc_manager","formal")>> had not taken such a personal interest in your particular case.@@"
<<case 'voluntary' 'obedient' 'enthusiast'>>
"@@.generic_female3;Interesting, but good to hear. You appear to have been on the correct track, but there are always things we could have improved, and striving ever-forward is how we continue to better ourselves, and our company.@@"
<<case 'money'>>
"@@.generic_female3;Interesting, and good to hear. Much of your early career seems fixated and motivated by money concerns. Certainly I would not downplay how significant a lack of funds can be in life, but I believe the best employees are those self-motivated by more than desperation or base greed.@@"
<<default>>
ERROR: unexpected npc_manager.flags.pegging.base_style <<=$npc_manager.flags.pegging.base_style>>
<</switch>>
<<case 'quit'>>
You reply that you wish you had quit the company before things started getting out of control.<br>
<br>
The woman frowns deeply. "@@.generic_female3;That is quite the wrong... and surprising, response. Are you trying some sort of reverse psychology to make me want to hire you because you are playing hard to get? It will not work.@@"
<<case 'slow'>>
You reply that you actually wish you had taken more time to learn as a probationary <<if $fetish.sissy>>SISSI <</if>>Secretary that, though you are proud of where you are at today, and hope to continue your career further, that you could have benefited from taking a more methodical approach early.<br>
<br>
"@@.generic_female3;Interesting, a very self-cognisant answer.@@"
<<default>>
ERROR: unexpected scene.action_8 <<=$scene.action_8>>
<</switch>>
<br><br>
She presses the play button and you watch as the scene unfolds with you
<<switch $npc_manager.flags.pegging.looked_at>>
<<case 'eyes'>>
confidently meeting <<=ps(setup.getNpcName("npc_manager","formal"))>> gaze.
<<case 'breasts'>>
staring at <<=ps(setup.getNpcName("npc_manager","formal"))>> exposed breasts.
<<case 'floor'>>
staring meekly at the floor, unable to look at <<=setup.getNpcName("npc_manager","formal")>>.
<<default>>
ERROR: unexpected npc_manager.flags.pegging.looked_at <<=$npc_manager.flags.pegging.looked_at>>
<</switch>>
You bite your lip, even knowing what is coming next, watching with a weird sense of voyeuristic deja vu as you watch yourself strip —
<<switch $npc_manager.flags.pegging.strip>>
<<case 'fast'>>
shedding your clothes in a hurried instant.
<<case 'fast_lingerie'>>
shedding clothes down to your lingerie in a hurried instant.
<<case 'sensuous'>>
doing a sensuous, systematic strip-tease until you are wearing nothing at all.
<<case 'sensuous_lingerie'>>
doing a sensuous strip-tease until you are down to nothing but your underthings.
<<default>>
ERROR: unexpected npc_manager.flags.pegging.strip <<=$npc_manager.flags.pegging.strip>>
<</switch>>
<br><br>
<<switch $npc_manager.flags.pegging.strip>>
<<case 'fast' 'fast_lingerie'>>
"@@.generic_female3;So,@@" she states, pausing the video once again. "@@.generic_female3;You can see what a rushed, sloppy job you did here. I do hope you have gotten better at stripping, it can be quite a useful both functionally, and for foreplay.@@"<br>
<br>
She looks at you expectantly.<br>
<br>
[<<moveTo "event_post_school_interview_18" 'Show her that you can strip sensuously.' 300 "<<set $scene.action_9=true>>">>]<br>
[<<moveTo "event_post_school_interview_18" 'Say nothing.' 60 "<<set $scene.action_9=false>>">>]
<<case 'sensuous' 'sensuous_lingerie'>>
"@@.generic_female3;So,@@" she states, pausing the video once again. "@@.generic_female3;Comments?@@"<br>
<br>
[<<moveTo "event_post_school_interview_18" 'Say you are proud of your performance and would do it the same again were you to go back.' 180 "<<set $scene.action_9=true>>">>]<br>
[<<moveTo "event_post_school_interview_18" 'Say nothing.' 60 "<<set $scene.action_9=false>>">>]
<</switch>>
</div>/*#
#desc: 4th interviewer - watch pegging strip comment
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_9 && ($npc_manager.flags.pegging.strip == 'fast' || $npc_manager.flags.pegging.strip == 'fast_lingerie')>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<</if>>
<<if $scene.action_9>>
<<set $player.flags.resume.strip = 2>>
<<else>>
<<set $player.flags.resume.strip = 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
<<if $scene.action_9>>
<<switch $npc_manager.flags.pegging.strip>>
<<case 'fast' 'fast_lingerie'>>
You rise to your feet, the interviewer "helping out" be using their phone to play some music that you are soon gyrating your body in time with.<br>
<br>
<<if $npc_manager.flags.pegging.strip == "fast">>
Piece after piece, layer after layer, you make a show of working your way down to being completely naked, the same end result as in the "archival footage," but in a far more titillating and graceful manner.
<<else>>
Piece after piece, layer after layer, you make a show of shedding your garments. You do not stop at underwear as you had in the "archival footage," but continue on until you are standing completely naked.
<</if>>
<br><br>
Your interviewer nods in approval and motions for you to get dressed as she resumes the video.
<<case 'sensuous' 'sensuous_lingerie'>>
You sit taller with pride, agreeing with her that knowing how to strip is a very useful skill, and one you are glad to have developed.<br>
<br>
Your interviewer nods in agreement and quietly resumes the video.
<<default>>
ERROR: unexpected npc_manager.flags.pegging.strip <<=$npc_manager.flags.pegging.strip>>
<</switch>>
<<else>>
You say nothing, the interviewer waiting several moments before quietly resuming the video.
<</if>>
<br><br>
<<if $scene.action_9 && ($npc_manager.flags.pegging.strip == 'fast' || $npc_manager.flags.pegging.strip == 'fast_lingerie')>>
[<<moveTo "event_post_school_interview_19" 'Continue.' 300 "<<useClothSetPop 'tmp'>>">>]
<<else>>
[<<moveTo "event_post_school_interview_19" 'Continue.' 300>>]
<</if>>
</div>/*#
#desc: 4th interviewer - watch pegging thank + suck
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pegging_gratitude = "">>
<<if $npc_manager.flags.pegging.thank == "refuse" && $npc_manager.flags.pegging.suck =="refuse">>
<<set $scene.pegging_gratitude = "refuse">>
<<elseif $npc_manager.flags.pegging.thank == "refuse" || $npc_manager.flags.pegging.suck == "refuse">>
<<set $scene.pegging_gratitude = "bad">>
<<elseif $npc_manager.flags.pegging.thank == "worship">>
<<set $scene.pegging_gratitude = "obedient">>
<<elseif $npc_manager.flags.pegging.suck == "suck">>
<<set $scene.pegging_gratitude = "slut">>
<<else>>
<<set $scene.pegging_gratitude = "good">>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.flags.pegging.thank>>
<<case "refuse">>
Your heart-rate quickens as you remember what happens next, and you wince, glancing at the interviewer as your past self refuses to show the slightest appreciation for <<=ps(setup.getNpcName("npc_manager","formal"))>> work that guided you to that point of your career...<br>
<br>
As expected, your interviewer frowns, though she lets the video play on without comment.
<<case "thank">>
You watch in silence as your past self stutters out a hurried series of thanks for <<=ps(setup.getNpcName("npc_manager","formal"))>> accommodations of your rocky start as a <<if $fetish.sissy>>SISSI <</if>>Secretary. Even moreso than in that past moment the recording gives you a humiliating view of just how unimpressed <<=setup.getNpcName("npc_manager","formal")>> was with your performance. You glance at your interviewer, surprised she does not pause the video for further interrogation, even as you are certain your past actions are doing your current task few favours.
<<case "appreciate">>
You note your interviewer nod along as your past self gushes with appreciation for <<=ps(setup.getNpcName("npc_manager","formal"))>> work in guiding you through those early days as a probationary <<if $fetish.sissy>>SISSI <</if>>Secretary. You glance at your interviewer who seems at least mildly approving — better than the reverse, you figure.
<<case "worship">>
Watching your past self supplicate themselves before <<=setup.getNpcName("npc_manager","formal")>> has your now even stronger submissive urges stir. Brightening your mood even further is your interviewer's quiet comment.<br>
<br>
"@@.generic_female3;Such natural submission... maybe you are meant for a position as a <<if $fetish.sissy>>SISSI <</if>>Secretary...@@"<br>
<br>
You straighten with pride as you continue to watch the footage.
<<default>>
ERROR: unexpected <<=$npc_manager.flags.pegging.thank>>
<</switch>>
<br><br>
Things are getting closer and closer to the main event as <<=setup.getNpcName("npc_manager","formal")>> presents her
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
glorious
<<else>>
wonderful
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
intimidating
<<else>>
frightening
<</if>>
<</if>>
strap-on.
<<switch $npc_manager.flags.pegging.suck>>
<<case "refuse">>
<<if $npc_manager.flags.pegging.thank == "refuse">>
As if things weren't going bad enough for you already, you watch as your past self refuses to suck <<=setup.getNpcName("npc_manager","formal")>>
<<else>>
Any positive impression your past self might be making on your interviewer go out the window as her expression hardens at the sight of your refusal to suck <<=ps(setup.getNpcName("npc_manager","formal"))>>
<</if>>
artificial member; a decision that feels even more foolish given where you know its thick girth is going to be going so very soon...
<<case "kiss">>
Your interviewer nods as your past self gently kisses the tip of <<=ps(setup.getNpcName("npc_manager","formal"))>> artificial member.<br>
<br>
"@@.generic_female3;Accepting, but classy... something of a rare skill-set among girls these days, I would be forced to admit.@@"
<<case "lick">>
Your interviewer chuckles at the way your past self licks <<=ps(setup.getNpcName("npc_manager","formal"))>> artificial member.<br>
<br>
"@@.generic_female3;Hmm... was that planning to get it lubed up, or just novice uncertainty leading to treating it like a lolly?@@"
<<case "suck">>
You feel grateful to the way your past self goes right in on sucking <<=ps(setup.getNpcName("npc_manager","formal"))>> member... of course your technique has grown in leaps and bounds since then, but you hope the enthusiasm will at least meet the approval of your interviewer.
<<default>>
ERROR: unexpected npc_manager.flags.pegging.thank <<=$npc_manager.flags.pegging.thank>>
<</switch>>
<br><br>
She pauses the video and turns to you.<br>
<br>
"@@.generic_female3;So, the denouement is fast approaching... anything you'd like to say about your prior performance before we continue?@@"<br>
<br>
<<switch $scene.pegging_gratitude>>
<<case "refuse">>
<<printThought "My behaviour back then was terrible! I should make sure the interviewer understands that I'm not that sort of ungrateful brat anymore!">>
<<case "bad">>
<<printThought "My behaviour back then was pretty bad, I need to make sure the interviewer understands that I've learned a lot since then.">>
<<case "good">>
<<printThought "Watching it back I think I did pretty good, of course I'd do better now, but for my level of experience at the time...">>
<<case "obedient">>
<<printThought "I'm doubly glad I was so obedient back then, that should help my case for the job, right?">>
<<case "slut">>
<<printThought "Hmm, I definitely acted quite the slut... though around here, that could be just the job qualifications they are looking for...">>
<<default>>
ERROR: unexpected scene.pegging_gratitude <<=$scene.pegging_gratitude>>
<</switch>>
<br><br>
[<<moveTo "event_post_school_interview_20" 'Say you are happy with your performance.' 300 "<<set $scene.action_10='happy'>>">>]<br>
[<<moveTo "event_post_school_interview_20" 'Say you wish you had been more appreciative.' 300 "<<set $scene.action_10='appreciate'>>">>]<br>
[<<moveTo "event_post_school_interview_20" 'Say you wish you had acted more modestly.' 300 "<<set $scene.action_10='modest'>>">>]<br>
[<<moveTo "event_post_school_interview_20" 'Say you wish you had been less prudish in your behaviour.' 300 "<<set $scene.action_10='slut'>>">>]
</div>/*#
#desc: 4th interviewer - watch pegging thank + suck
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_10 == 'appreciate'>>
<<set $player.flags.resume.pegging = 2>>
<<elseif $scene.action_10 == 'modest' && $scene.pegging_gratitude != 'bad'>>
<<set $player.flags.resume.pegging = 2>>
<<elseif $scene.action_10 == 'slut'>>
<<set $player.flags.resume.pegging = 2>>
<<elseif $scene.action_10 == 'happy' && ($scene.pegging_gratitude == 'refuse' || $scene.pegging_gratitude == 'bad')>>
<<set $player.flags.resume.pegging = 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_10>>
<<case "happy">>
You inform the interviewer that you are quite satisfied with your past performance and can hardly think of how you might have done anything better.<br>
<br>
<<switch $scene.pegging_gratitude>>
<<case "refuse">>
"@@.generic_female3;Hardly think? Well that is VERY concerning given that said past performance was back to back refusal of your Manager, nay, your <<=ps(setup.getNpcName("npc_manager","title"))>> orders. To be frankly honest with you, I do not quite understand why <<=setup.getNpcName("npc_manager","other")>> did not fire you on the spot — I know I would, if one of my employees was so insubordinate. Well, fire, or turn them over to <<=setup.getNpcName("npc_work_doctor","formal")>>. That you see no problem with your past behaviour... well, that really makes it impossible for me to even consider recommending you for the position you are applying for. Still, since there is more footage yet remaining we might as well continue on.@@"
<<case "bad">>
The interviewer frowns. "@@.generic_female3;Well that is very disturbing to hear. I was giving you an overall pass for your prior performance given how early it was in your career, but that you see no problem with the disobedient behaviour you displayed? No, that is utterly inappropriate for the position you are applying for...@@" She sighs, "@@.generic_female3;I feel like I am somewhat wasting my time at this point but... there is more footage so we might as well continue on.@@"
<<case "good">>
The interviewer nods. "@@.generic_female3;I suppose your behaviour was acceptable, but I would have preferred an indication that you are still seeking to improve, rather than hitting the point of "good enough" and then resting on your laurels.@@" She sniffs. "@@.generic_female3;In any case, there is more footage remaining, let us continue on.@@"
<<case "obedient">>
The interviewer smiles. "@@.generic_female3;A good assessment, you displayed lovely obedience, something to be proud of... though one must be careful not to rest on their laurels, there are almost always ways to improve and your career will be all the more successful if you constantly seek such out. Let us get back to the tape, I am quite looking forward to seeing how it all works out for you...@@"
<<case "slut">>
The interviewer chuckles. "@@.generic_female3;Spoken like a true slut, even if it does reflect a somewhat dim lack of curiosity and ambition. There are always further depths of whorish delights one can sink to, and seeking such out, rather than merely being satisfied with the status quo, well... that's the sort of ambition that makes for an optimal candidate for employment.@@" She smiles. "@@.generic_female3;Let that bounce around in that slutty brain of yours while we continue forward.@@"
<<default>>
ERROR: unexpected scene.pegging_gratitude <<=$scene.pegging_gratitude>>
<</switch>>
<<case "appreciate">>
You tell the interviewer that you regret not acting more appreciative... quickly adding that you have since learned to be much more grateful of all the important work that your <<=ps(setup.getNpcName("npc_manager","title"))>> does for, and to, you.<br>
<br>
<<switch $scene.pegging_gratitude>>
<<case "refuse">>
The interviewer nods. "@@.generic_female3;I was hoping you would say something like that... after all, what we just watched, the disrespect and ingratitude... well, let me just say that, had you been MY <<if $fetish.sissy>>SISSI <</if>>Secretary you would have been fired on the spot, or worse. That you showed such disrespect to someone as important as <<=setup.getNpcName("npc_manager","other")>>...@@" She shakes her head. "@@.generic_female3;In any case, let us resume studying the footage, we are getting to the really good part...@@"
<<case "bad">>
The interviewer nods. "@@.generic_female3;I was hoping you would say something like that. After all, what we just watched, well, your performance was deeply flawed, but that you can learn from that mistake and strive to do better... well, it helps me understand what <<=setup.getNpcName("npc_manager","other")>> must have seen in you.@@" She stares at you until you shift nervously and her lips slightly turn up. "@@.generic_female3;In any case, let us resume studying the footage, we are getting to the really good part...@@"
<<case "good">>
The interviewer smiles. "@@.generic_female3;A good attitude to take. Certainly your behaviour was quite satisfactory, but that urge to do even better... that is just what I like to see in an employee, of any type. Now, let us resume studying the footage. I think we are just about at the good part, hmm?@@"
<<case "obedient">>
The interviewer smiles. "@@.generic_female3;Such modesty! Your behaviour was the picture of proper obedience, and yet you hold yourself to an even higher standard! I love it — just the sort of enthusiasm I look for in a prospective employee, and it only makes me more excited to see what comes next. Shall we?@@"
<<case "slut">>
The interviewer grins. "@@.generic_female3;And I can just imagine how you would show that appreciation? Oh you are just quite the vixen — then and now. It makes me even more eager to see what comes next. Shall we?@@"
<<default>>
ERROR: unexpected scene.pegging_gratitude <<=$scene.pegging_gratitude>>
<</switch>>
<<case "modest">>
You reply that you ought to have behaved with a bit more modest decorum.<br>
<br>
<<switch $scene.pegging_gratitude>>
<<case "refuse">>
"@@.generic_female3;Modest decorum? That is a... strange takeaway for a performance that was marked by flagrant disobedience more than anything else. Certainly the veneer of modesty can be a useful tool to deploy but far more important is obedience and, on that count, your prior self failed catastrophically badly.@@" She shakes her head. "@@.generic_female3;In any case, let us resume studying the remaining footage.@@"
<<case "bad">>
"@@.generic_female3;Hmm, an odd takeaway, certainly a veneer of modesty can be quite nice, but that is something to worry about AFTER the baseline level of obedience has been met, which you wholly failed to do. I would look towards that first, and the fact that you don't, well... it raises concerns as to your present competencies.@@" She shakes her head. "@@.generic_female3;In any case, let us resume studying the footage.@@"
<<case "good">>
The interviewer smiles in amusement. "@@.generic_female3;What a sweet sentiment, is your ultimate dream to be the blushing bride?@@" She chuckles, "@@.generic_female3;Well, I cannot fault the impulse, so I would call it a reasonable takeaway from an on-balance positive performance. Now, let us continue on to see what happens next.@@"
<<case "obedient">>
The interviewer smiles in approval. "@@.generic_female3;What a lovely impulse, provided you place obedience first rather than fixating on your own sense of modesty. Your first duty is always obedience to superiors, after all. Now, let us continue on with the footage.@@"
<<case "slut">>
The interviewer smiles in amusement. "@@.generic_female3;What a curious contradiction — you act the good slut, but now claim you would rather be more modest... quite the opposite progression for most in your position, but, so long as you remain obedient, not one at cross-purpose to your chosen profession. The veneer of modesty can be quite attractive, after all. Though... I imagine what is about to come will be less than modest, let us continue on and see, hmm?@@"
<<default>>
ERROR: unexpected scene.pegging_gratitude <<=$scene.pegging_gratitude>>
<</switch>>
<<case "slut">>
You reply that you would have been better off behaving less prudish and focused more on embracing things like a good bimbo <<if $fetish.sissy>>sissy <</if>>slut.<br>
<br>
<<switch $scene.pegging_gratitude>>
<<case "refuse">>
The interviewer nods in agreement. "@@.generic_female3;Certainly it would be a good start, but I think, more than giving in to hedonistic impulses, your focus she be on obedience. Certainly you were everything but that in this past situation — why, had you been my <<if $fetish.sissy>>SISSI <</if>>Secretary you would have been fired on the spot, or maybe turned over to <<=setup.getNpcName("npc_work_doctor","formal")>>! But clearly <<=setup.getNpcName("npc_manager","other")>> saw differently... and you do seem to have developed quite well since... come, let us continue on with the footage.@@"
<<case "bad">>
The interviewer nods. "@@.generic_female3;Not a bad instinct... certainly if your reason for misbehaviour was some lingering modesty, but, I believe, the better focus would be on obedience. Certainly that means making oneself enthusiastically available to whatever sexual act a superior requires, but the key is the obedience, the sluttiness is a side effect. No, shall we continue the tape?@@"
<<case "good">>
The interviewer smiles. "@@.generic_female3;My, my, haven't you blossomed into an enthusiastic slut. Very nice, you may be qualified for this position yet. Let us continue with the footage, I want to hear what else you have to say.@@"
<<case "obedient">>
The interviewer smiles. "@@.generic_female3;An obedient slut... perhaps you are qualified for a position as a senior executive's <<if $fetish.sissy>>SISSI <</if>>Secretary... evidence and enthusiasm are certainly in your favour. Let us continue forward, I want to hear what you have to say about the rest of the footage.@@"
<<case "slut">>
The interviewer smiles. "@@.generic_female3;Well, well, isn't someone quite the enthusiastic bimbo <<if $fetish.sissy>>sissy <</if>>slut... so long as you can do so obediently, well... you would seem perfectly suited to a long career as a <<if $fetish.sissy>>SISSI <</if>>Secretary. Let us continue forward, I want to hear what you have to say about the rest of the footage.@@"
<<default>>
ERROR: unexpected scene.pegging_gratitude <<=$scene.pegging_gratitude>>
<</switch>>
<<default>>
ERROR: unexpected scene.action_10 <<=$scene.action_10>>
<</switch>>
<br><br>
The video
<<switch $npc_manager.flags.pegging.collar>>
<<case "none">>
resumes.
<<case "refuse">>
continues with you refusing to accept a collar.
<<case "sissy">>
continues with you selecting, and wearing, a <<if $fetish.sissy>>sissifying<<else>>feminising<</if>>, pink choker.
<<case "slave">>
continues with you selecting, and wearing, a leather bondage collar.
<<case "her_sissy">>
continues with you turning over the decision to <<=setup.getNpcName("npc_manager","formal")>> and thus ending up wearing a <<if $fetish.sissy>>sissifying<<else>>feminising<</if>>, pink choker.
<<case "her_slave">>
continues with you turning over the decision to <<=setup.getNpcName("npc_manager","formal")>> and thus ending up wearing her leather bondage collar.
<<default>>
ERROR: unexpected npc_manager.flags.pegging.collar <<=$npc_manager.flags.pegging.collar>>
<</switch>>
<br><br>
<<if $npc_manager.flags.pegging.chastity != "nooffer">>
[<<moveTo "event_post_school_interview_21" 'Continue.' 300>>]
<<elseif $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
[<<moveTo "event_post_school_interview_21_chastity_alt_1" 'Continue.' 300>>]
<<else>>
[<<moveTo "event_post_school_interview_23" 'Continue.' 300>>]
<</if>>
</div>/*#
#desc: 4th interviewer — watch pegging chastity + pegging
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
The woman lets the scene play on for a bit longer, until <<=setup.getNpcName("npc_manager","formal")>> is standing between your legs. The video pauses with the tip of <<=ps(setup.getNpcName("npc_manager","formal"))>> artificial cock pressed against your hole, the forthcoming penetration emphasised by your locked chastity device.<br>
<br>
"@@.generic_female3;Now isn't that a lovely sight. An obedient <<if $fetish.sissy>>SISSI <</if>>Secretary about to be railed, locked up and focused on being penetrated in a properly subservient offering.@@" The woman looks at you with a slight smile. "@@.generic_female3;Tell me, how do you feel about chastity? I note <<=setup.getNpcName("npc_manager","formal")>> did not even offer to unlock you before having her way with you...@@" <<if !$npc_manager.flags.require_chastity>>She glances at her notes. "@@.generic_female3;I see that — for some, to me, unfathomable reason — <<=setup.getNpcName("npc_manager","other")>> has permitted you to omit such being a uniform requirement... still, I would get your thoughts on the matter.@@"<</if>><br>
<br>
[<<moveTo "event_post_school_interview_22" "You'd rather be free of chastity." 300 "<<set $scene.action_11='no'>>">>]<br>
[<<moveTo "event_post_school_interview_22" 'Being locked at work is a useful tool for workplace control and productivity.' 300 "<<set $scene.action_11='work'>>">>]<br>
[<<moveTo "event_post_school_interview_22" 'Being locked 24/7 is best.' 300 "<<set $scene.action_11='247'>>">>]
</div>/*#
#desc: 4th interviewer — watch pegging chastity + pegging
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
<<switch $npc_manager.flags.pegging.chastity>>
<<case "remove">>
You bite your lip <<if setup.checkItemTypeWorn("cage")>>and <<if $player.body_ref.penis>>twitch<<else>>leak<</if>> inside your prison <</if>>as you watch <<=setup.getNpcName("npc_manager","formal")>> gently remove your chastity device.
<<case "focused">>
You shudder in memory as you watch your past self refuse <<=ps(setup.getNpcName("npc_manager","formal"))>> offer to remove your chastity device.
<<case "dickless">>
You shudder in memory as you watch your past self refuse <<=ps(setup.getNpcName("npc_manager","formal"))>> offer to remove your chastity device, remembering how your self-debasing justification would lead to your being "upgraded" not long after<<if setup.getChastityLevel() == 5>>... though even that device is as nothing compared to your current security..<</if>>.
<<default>>
ERROR: unexpected npc_manager.flags.pegging.chastity <<=$npc_manager.flags.pegging.chastity>>
<</switch>>
<br><br>
Once again the video freezes as the interviewer turns to you with a grin. "@@.generic_female3;So, strict and sustained employee chastity... what are your thoughts?@@" <<if !$npc_manager.flags.require_chastity>>She glances at her notes. "@@.generic_female3;I see that — for some, to me, unfathomable reason — <<=setup.getNpcName("npc_manager","other")>> has permitted you to omit this standard requirement... still, I would get your thoughts on the matter.@@"<</if>><br>
<br>
[<<moveTo "event_post_school_interview_22" "You'd rather be free." 300 "<<set $scene.action_11='no'>>">>]<br>
[<<moveTo "event_post_school_interview_22" 'Being locked at work is a useful tool for workplace control and productivity.' 300 "<<set $scene.action_11='work'>>">>]<br>
[<<moveTo "event_post_school_interview_22" 'Being locked 24/7 is best.' 300 "<<set $scene.action_11='247'>>">>]
</div>/*#
#desc: 4th interviewer - discuss chastity
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_11>>
<<case "no">>
<<set $player.flags.resume.chastity = 1>>
<<case "247">>
<<set $player.flags.resume.chastity = 2>>
<</switch>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_11>>
<<case "no">>
You reply that, actually, you would rather do without the whole chastity thing. The interviewer frowns, this was clearly the wrong answer. "@@.generic_female3;How foolish, one would think you would have learned the value of such devices by this point in your career, that you do not yet properly appreciate them, well... that is VERY concerning.@@"
<<case "work">>
You reply that you can appreciate the value of being in chastity at work, though you prefer the option of freedom in your home life. The interviewer seems nonplussed. "@@.generic_female3;How foolish, one would think you would have learned the value of such devices by this point in your career, that you do not yet properly appreciate them, well... that is VERY concerning.@@"
<<case "247">>
You reply that, since being exposed to the wonder of chastity, you have come to the strong conclusion that it is almost vital, and best maintained 24/7.<br>
<br>
<<if !setup.checkItemTypeWorn("cage")>>
"@@.generic_female3;A curious response, given that you are, at present, not locked... still, I suppose this interview is about how you answer the question, and on that I shall grant you full marks.@@"
<<else>>
"@@.generic_female3;A wonderful perspective — and one that really helps a <<if $fetish.sissy>>SISSI <</if>>Secretary remain focused on more important things.@@"
<</if>>
<<default>>
ERROR: unexpected scene.action_11 <<=$scene.action_11>>
<</switch>>
<br><br>
The interviewer smiles as she presses play once again.<br>
<br>
[<<moveTo "event_post_school_interview_23" 'Continue.' 300>>]
</div>/*#
#desc: 4th interviewer - watch pegging commence
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
You shudder in memory as the moment arrives, <<=setup.getNpcName("npc_manager","formal")>> looming over you,
<<switch $npc_manager.flags.pegging.style>>
<<case "good">>
smiling down... and then entering you gently with her artificial cock.
<<case "neutral">>
before dispassionately entering you with her artificial cock.
<<case "cruel">>
before plunging savagely into you with her artificial cock.
<<default>>
ERROR: unexpected npc_manager.flags.pegging.chastity <<=$npc_manager.flags.pegging.style>>
<</switch>>
<br>
You clench in memory, and then the screen flicks off. Startled you look over at the interviewer who has risen to her feet, with an intimidating strap-on of her own in hand. "@@.generic_female3;I think now it is time to shift to a... hands on demo. Come on <<if $fetish.sissy>>SISSI<<else>>girl<</if>>, show me how a good girl takes a hard dong.@@"<br>
<br>
[<<moveTo "event_post_school_interview_24" 'Say no.' 300 "<<set $scene.action_12='no'>>">>]<br>
[<<moveTo "event_post_school_interview_24" 'Bend over for her.' 300 "<<set $scene.action_12='bend'>>">>]<br>
[<<moveTo "event_post_school_interview_24" 'Lay back on the table.' 300 "<<set $scene.action_12='lay'>>">>]
</div>/*#
#desc: 4th interviewer - get pegged
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_12 == 'bend' || $scene.action_12 == 'lay'>>
<<set $player.flags.resume.sex = 2>>
<<elseif $scene.action_12 == 'no'>>
<<set $player.flags.resume.sex = 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" "generic_manager_female">>
<div id="invframe" class="scrolltext">
<<switch $scene.action_12>>
<<case 'no'>>
You attempt to calmly decline you interviewer's "offer" of a
<<if $fetish.get_raped>>
pegging, but she just chuckles. "@@.generic_female3;Really? You have worked at Social Interaction Service Syndicate Inc. for this long and cannot tell when a request is non-optional?@@" She shakes her head as she circles to your side of the table "@@.generic_female3;Foolish <<if $fetish.sissy>>sissy<<else>>girl<</if>>...@@"<br>
<br>
<<printThought "Maybe it would be easier if I just went along with it...">><br>
<br>
[<<moveTo "event_post_school_interview_24" 'Bend over for her.' 300 "<<set $scene.action_12='bend'>>">>]<br>
[<<moveTo "event_post_school_interview_24" 'Lay back on the table.' 300 "<<set $scene.action_12='lay'>>">>]<br>
[<<moveTo "event_post_school_interview_24" 'Try to escape.' 300 "<<set $scene.action_12='escape'>>">>]
<<else>>
pegging and she frowns. "@@.generic_female3;Well... that is certainly not what I expected.@@" She stands motionless, looking you over for a moment before tucking her artificial member back between her legs and shrugging. "@@.generic_female3;Have it your way. I will call that the end of our interview, if you would wait here. I must confer with my colleagues — here at Social Interaction Service Syndicate Inc. we pride ourselves on prompt feedback, no waiting days to hear back the results, you will know if you earned the job before you leave.@@"<br>
<br>
[<<moveTo "event_post_school_interview_25" 'Wait.' 300>>]
<</if>>
<<case 'bend'>>
Like a good slut you rise to your feet and bend over the table, wiggling your butt in invitation as she walks around, giving you a quick swat before
<<if !setup.checkItemTypeWorn("plug")>>
lining herself up with your empty hole.<br>
<br>
"@@.generic_female3;Unoccupied? Naughty girl...@@"
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
lining herself up with your plug-gaped hole.<br>
<br>
"@@.generic_female3;Already spread and ready? Good girl!@@"
<<else>>
removing your plug and lining herself up.<br>
<br>
"@@.generic_female3;Properly plugged? Good girl!@@"
<</if>>
<</if>>
<br><br>
She thrusts into you and your head snaps back, the angle allowing her to plunge deep and really target your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>>. Her hips slam into your ass once before she takes up a measured rhythm, drilling you good and hard and leaning over to whisper in your ear as she pounds you into the table.<br>
<br>
"@@.generic_female3;You really do have a delightful ass... I can start to understand a bit more of what <<=setup.getNpcName("npc_manager","formal")>> saw in you...@@"<br>
<br>
You moan in response, her words sparking memory of your <<=setup.getNpcName("npc_manager","title")>>... and the far superior technique with which <<=setup.getNpcName("npc_manager","formal")>> wielded things. Still, though your interviewer lacks your <<=ps(setup.getNpcName("npc_manager","title"))>> immaculate skill, your interviewer's pounding is plenty pleasure for your hole and, as she grinds against you, with her breasts pressed against your back, <<if $player.body_ref.penis>>you cum, leaking <<if setup.checkItemTypeWorn("cage")>>out of your <<if setup.isCage()>>cage<<else>>belt<</if>> and <</if>>down your leg<<else>>you climax<</if>> as she gives a final thrust and then steps away.<br>
<br>
No longer rooted in place you barely keep from slumping to the ground, hugging the table like a drunk clinging to the floor as you shudder.<br>
<br>
"@@.generic_female3;I believe that will conclude my inquiries. You just sit there and relax. I must confer with my colleagues, but someone will be back in to inform you of the final decision. We pride ourselves here on same-day results rather than forcing applicants to wait in the dark for days or weeks for a recruiter to get back to them.@@"<br>
<br>
You mumble a reply <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>as she slides the plug back into your rear, <</if>>but she pays no attention. A few brief moments later you hear the door shut behind her.<br>
<br>
[<<moveTo "event_post_school_interview_25" 'Wait.' 600>>]
<<case 'lay'>>
With the paused image of yourself about to be entered by <<=setup.getNpcName("npc_manager","formal")>> looming over the room you get into a similar position up on the table, spreading your cheeks and looking up at the interviewer as you offer up your <<if setup.getItemFromType("plug")>>plugged<<else>>twitching<</if>> hole.<br>
<br>
<<if !setup.checkItemTypeWorn("plug")>>
"@@.generic_female3;Unoccupied? Surprising...@@" she states "@@.generic_female3;Best wait no more time addressing that gap...@@" she adds as she squares up and slides into you.
<<else>>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
"@@.generic_female3;Ready and open for business,@@" she chuckles as she slides a finger into the gaping hole made by your hollow plug. "@@.generic_female3;In we go...@@" she adds, threading her strap-on in through the plug.
<<else>>
"@@.generic_female3;Properly plugged, very nice.@@" She states, sliding your rear occupant free and then replacing it with her artificial attachment.
<</if>>
<</if>>
<br><br>
Even as looking up at your interviewer sparks a feeling of deja vu, it also gives you a deeper appreciation for <<=setup.getNpcName("npc_manager","formal")>>. Though you play your part by moaning along to the interviewer's thrusts her technique barely holds a candle to what <<=setup.getNpcName("npc_manager","formal")>> did, the mere memory of how your <<=setup.getNpcName("npc_manager","title")>> danced with your <<if $player.body_ref.penis>>prostate<<else>>insides<</if>> making you moan, the memory pushing you over the edge and causing you to <<if $player.body_ref.penis>>leak through your cage<<else>>cum<</if>>.<br>
<br>
"@@.generic_female3;Hmmf, bit of a hair trigger, but there is no doubt that you make a lovely face to look down on, and a cute butt that really was meant for pegging.@@"<br>
<br>
<<if setup.checkItemTypeTag('plug', ['hollow'])>>
She slides out and smoothly replaces the plug in your rear. You go limp on the table.
<<else>>
She slides out and steps away, your limbs going limp as you lie on the table.
<</if>>
<br><br>
"@@.generic_female3;Well that marks the last of the questions I had for you. Make yourself comfortable, I must confer with my colleagues, but someone will be back in to inform you of the final decision. We pride ourselves here on same-day results rather than forcing applicants to wait in the dark for days or weeks for a recruiter to get back to them.@@"<br>
<br>
You're still catching your breath when the door shuts behind her.<br>
<br>
[<<moveTo "event_post_school_interview_25" 'Wait.' 600>>]
<<case 'escape'>>
You try to run for the door but the woman is on you like a panther, moving with startling speed to slamming you up against the wall.<br>
<br>
"@@.generic_female3;Trying to run away? Or do you think I would enjoy playing with my prey?... either way, the only recipe is a good, hard pounding you foolish <<if $fetish.sissy>>sissy<<else>>thing<</if>>.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
You gasp as she pulls the plug out of your ass with a single yank, replacing it a moment later with her longer artificial phallus.
<<else>>
Lifting you slightly she plunges her artificial cock up and into you as she presses you up against the wall.
<</if>>
<br><br>
"@@.generic_female3;Take that, you stupid slut. You should know much better by now than to attempt to resist a superior. The position you are applying for is about service. How you could have gotten this far and think that meant anything other that being a willing pair of fuck-holes...@@" She chuckles, seemingly amused at something as she ravages your ass.<br>
<br>
"@@.generic_female3;Wouldn't it be funny if I managed to rape the truth into you after <<=setup.getNpcName("npc_manager","formal")>> spent all that effort only to fail to instill proper mentality...@@" She pauses halfway into you as if suddenly realising what she said, slamming up and into you with renewed vigour. "@@.generic_female3;You didn't hear that, you dumb slut. Now take it, take it hard and deep like you deserve!@@"<br>
<br>
You cling to the wall as she lifts you off your feet, each thrust slamming through you until she finally steps away, panting slightly as you crumple to the floor.<br>
<br>
"@@.generic_female3;Pathetic.@@" She snorts and you hear her walk past you towards the door. "@@.generic_female3;Go ahead and recover, I must confer with my colleagues to come to a final decision as to your overall... performance. We pride ourselves here on same-day results rather than forcing applicants to wait in the dark for days or weeks for a recruiter to get back to them.@@"<br>
<br>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
You groan as she kicks the plug across the floor so that it bounces into your thigh. "@@.generic_female3;Fill your hole, slut.@@" You fumble the plug back into your gaping ass, which is enough to garner a hint of a satisfied smile just before she leaves.<br>
<br>
<</if>>
The door slams behind her and you are left alone.<br>
<br>
[<<moveTo "event_post_school_interview_25" 'Wait.' 600>>]
<<default>>
ERROR: unexpected scene.action_12 <<=$scene.action_12>>
<</switch>>
</div>/*#
#desc: interview results - results resume + intro
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 20>>
<<set $scene.success = $player.flags.resume.base>>
<<set $scene.fail = 0>>
<<if $player.flags.resume.base <= 0>>
<<set $scene.fail = 2>>
<<elseif ($player.flags.resume.base == 1 || $player.flags.resume.base == 3)>>
<<set $scene.fail = 1>>
<</if>>
<<if $player.flags.resume.slut && $player.flags.resume.skills >= 20>>
<<set $scene.success += 1>>
<<elseif !$player.flags.resume.slut>>
<<set $scene.fail += 1>>
<</if>>
<<if ($scene.action_1 == 'chain' || $scene.action_1 == 'collar') && $scene.action_2 == 'master' && $scene.action_3>>
<<set $scene.success += 1>>
<<elseif ($scene.action_1 == 'sit' || $scene.action_1 == 'stand') && $scene.action_2 == 'no' && !$scene.action_3>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("npc_pokerman","man")>>
<div id="invframe" class="scrolltext">
After a not insubstantial wait that sees your mind spin, second-guessing all of your actions in the interview as you wonder exactly how much of a "formality" this whole thing is.<br>
<br>
<<printThought 'Could doing bad enough really cost me my position with <<=setup.getNpcName("npc_manager","formal")>>? Would they offer me another job or... would that be it, but then, what about my so-called debts?'>><br>
<br>
After so long under <<=ps(setup.getNpcName("npc_manager","formal"))>> employ you find yourself at a bit of a loss for what you might do if you were done with the company for good, but that's nothing compared to the turbulent feelings the thought of being assigned to some other, heretofore unmet manager...<br>
<br>
After they've left you to stew for awhile the door finally opens
<<if $npc_pokerman.profile>>
and, of all people <<=setup.getNpcName("npc_pokerman","formal")>>, walks in.<br>
<br>
"@@.npc_pokerman;Ah, Miss, <<=$player.last_name>>, what a small world. Please, have a seat.@@"
<<else>>
and a slightly older <<man npc_pokerman>> in a suit walks in. "@@.npc_pokerman;Greetings, Miss, <<=$player.last_name>>. My name is <<=setup.getNpcName("npc_pokerman","formal")>>. I head up the new products division, please, have a seat.@@"
<</if>>
<br><br>
You sit down as <<he npc_pokerman>> takes the chair across from you. "@@.npc_pokerman;So, traditionally, when someone is going for a position as an executive secretary we always make sure an actual executive is there to go over things with them and wrap things up. Usually you would be dealing with <<=setup.getNpcName("npc_manager","formal")>> now, but you're obviously a special case in that regard so I am... filling in. @@" <<He npc_pokerman>> opens a folder
<<if $player.flags.resume.base <= 0>>
"@@.npc_pokerman;Normally I would have started with your resume, but you failed to produce one! I know this is something of a special situation, but you not taking it seriously is still quite the disappointment.@@"
<<elseif $player.flags.resume.base == 4 && $player.flags.resume.slut && $player.flags.resume.skills >= 20>>
"@@.npc_pokerman;So first off, I must commend you on a stellar resume. Professionally assembled, very complete and exceedingly strong... coming straight off the street this would be enough to get you an interview and the fact that you went out of your way to produce such an excellent document really impressed me.@@"
<<elseif $player.flags.resume.base == 1 && !$player.flags.resume.slut>>
"@@.npc_pokerman;Your resume... well, it is very disappointing. It looks like you banged it out fast with hardly a thought to it, or the position you were targeting. Very disappointing and, were the situation different, you would never have even been called in for the in-person.@@"
<<elseif $player.flags.resume.base == 2>>
"@@.npc_pokerman;I went through your resume and... while it is assembled quite professionally, that cannot cover for it being quite thin on a number of accounts. It might have been enough for an entry level position at the company but <<if $fetish.sissy>>SISSI <</if>>Secretary to a Director? No, this wouldn't normally be enough to even get you into the room.@@"
<<else>>
"@@.npc_pokerman;To be honest your resume is forgettable... nothing exceptionally wrong with it, but nothing pops or draws one in either, the sort of document that would, in other situations, go straight from inbox to the bin without even drawing a second look.@@"
<</if>>
<br><br>
<<He npc_pokerman>> turns the page and looks up at you. "@@.npc_pokerman;Obviously the resume was a bit of a formality, but once you showed up, well... that's when the interview proper began.@@" <<He npc_pokerman>>
<<if ($scene.action_1 == 'chain' || $scene.action_1 == 'collar') && $scene.action_2 == 'master' && $scene.action_3>>
smiles at you. "@@.npc_pokerman;You know what they say about first impressions... and you made a superb one, showing the obedient, submissive behaviour of a practiced slave.@@"
<<elseif $scene.action_1 == 'chain' || $scene.action_1 == 'collar' || $scene.action_2 == 'master' || $scene.action_3>>
nods. "@@.npc_pokerman;You started things off decently, though your display of submissiveness was less than flawless. A bit surprising, to be honest, given your pedigree.@@"
<<elseif ($scene.action_1 == 'sit' || $scene.action_1 == 'stand') && $scene.action_2 == 'no' && $scene.action_3>>
frowns. "@@.npc_pokerman;To be honest your initial impression was... very disappointing. Given your past I would have expected you to be quite aware of the submissive mannerisms expected of the position to which you applied... and yet you acted as if you failed to display any of the proper decorum of a slave.@@"
<<else>>
frowns slightly. "@@.npc_pokerman;As initial impressions go yours... well, it was lacking, not a complete failure, but also well short of expectations, given your history.@@"
<</if>>
<br><br>
[<<moveTo "event_post_school_interview_26" '<<He npc_pokerman>> turns the page.' 300>>]
</div>/*#
#desc: interview results - results skills interview
#status: FINISHED 0.8.3.0
#ignore_spell: kruger
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_4 && $scene.impress > 5>>
<<set $scene.success += 1>>
<<elseif !$scene.action_4 && $scene.impress < -5>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("npc_pokerman","man")>>
<div id="invframe" class="scrolltext">
<<if $scene.action_4>>
<<if $scene.impress_actions.length == 0>>
"@@.npc_pokerman;At the skill assessment, well... you did well in starting with the fundamentals, but you failed to build on it. As you well know by now, being a <<if $fetish.sissy>>SISSI <</if>>Secretary at the executive level is about far more than just filing and organising schedules. That you failed to even attempt to sell yourself on these other competencies... well, one cannot pass an interview if they are unable to explain their qualifications.@@"
<<elseif $scene.impress > 5>>
<<if $scene.impress_actions.length == $scene.impress>>
"@@.npc_pokerman;The next portion of your interview was the skills segment, and you just hit it out the park — giving a good summary of the basics and then doing a wonderful job of really selling the breadth of your other skills. Truly flawless.@@"
<<else>>
"@@.npc_pokerman;The next portion of your interview was the skills segment, and, with only a slight hiccup, you really did well, giving a good summary of the basics and then doing a wonderful job of really selling the breadth of your other skills, truly flawless.@@"
<</if>>
<<elseif $scene.impress >= 3>>
<<if $scene.impress_actions.length == $scene.impress>>
"@@.npc_pokerman;In the skills interview you did well, but nothing mind-blowing. I will say you showed good ability at self-assessment as to not waste the interviewers, summarising your competency with the fundamentals and then moving on to only show off things you had clear expertise in rather than flailing for everything.@@"
<<else>>
"@@.npc_pokerman;In your skills interview you managed to impress... though you would have done better if you had shown a bit better judgement. Covering the fundamentals of the position was good but in the more free-form portion you wasted everyone's time in "showing off" things where your abilities were nothing to crow about.@@"
<</if>>
<<elseif $scene.impress > -3>>
<<if $scene.impress_actions.length == -$scene.impress>>
"@@.npc_pokerman;In the skills interview... well, it's almost impressive how you managed to universally botch things, which I suppose would be yet another mark against you when it comes to judgement as to what to show off.@@"
<<else>>
"@@.npc_pokerman;In your skills interview your performance was... quite disappointing. You do not seem to be COMPLETELY lacking in skills, but your judgement as to what to demonstrate is definitely a flaw... alongside several instances of what I can only chalk up to Dunning-Kruger self-assessment failure.@@"
<</if>>
<<else>>
"@@.npc_pokerman;Your skills assessment, I am sorry to say, was abysmal. I cannot fathom how you could have worked here for so long, and under a luminary like <<=setup.getNpcName("npc_manager","formal")>> and yet never gain any skills beyond the most basic filing and schedule management.@@"
<</if>>
<<else>>
"@@.npc_pokerman;When it came to the skills portion... well, one would think you were applying for a position as a prostitute, rather than a <<if $fetish.sissy>>SISSI <</if>>Secretary... certainly, at the executive level especially, it is important that a subordinate is able and willing to serve ALL of their manager's needs, but there is more to the job that bending over and kneeling under tables!@@"<br>
<br>
<<printThought "Wait, the total slut option was the wrong decision? That's a bit of a stunner for this company...">><br>
<br>
<<if $scene.impress > 5>>
"@@.npc_pokerman;Ignoring that lack of proof of basic qualifications the rest of your skills look fantastic, a superb spread of expertise that would make you a versatile employee able to confidently step into almost any situation.@@"
<<elseif $scene.impress >= 3>>
<<if $scene.impress_actions.length == $scene.impress>>
"@@.npc_pokerman;Your other skills were quite impressive, though perhaps not quite the breadth that we would normally look for in an executive level <<if $fetish.sissy>>SISSI <</if>>Secretary position.@@"
<<else>>
"@@.npc_pokerman;Your other skills were quite impressive, though perhaps not quite the breadth that we would normally look for in an executive level <<if $fetish.sissy>>SISSI <</if>>Secretary position. Perhaps if you had not wasted time attempting to show competency in things in which you were clearly less skilled? That sort of judgement and self-knowledge is a skill unto itself.@@"
<</if>>
<<elseif $scene.impress > -3>>
<<if $scene.impress_actions.length == $scene.impress>>
"@@.npc_pokerman;The rest of your skills... well, something of a disappointment. With this much time on the job I would have expected there to be something at which you excelled... and yet it seems there either was not, or you failed to bring that up, either way, a disappointment.@@"
<<else>>
"@@.npc_pokerman;The rest of your skills... well, something of a disappointment. With this much time on the job I would have expected there to be something at which you excelled... and yet it seems there either was not, or you failed to bring that up, either way, a failure.@@"
<</if>>
<<else>>
<<if $scene.impress_actions.length == $scene.impress>>
"@@.npc_pokerman;As to the free-form portion... well, it would seem that you are utterly lacking in any skill whatsoever.@@"
<<else>>
"@@.npc_pokerman;When it came to the free-form portion... while you seem to have some areas of expertise, your overall presentation painted a picture of incompetence. Perhaps if you had singled out the matters in which you have actual ability? Instead it seemed you just threw it all at the wall resulting in a slapdash impression of failure.@@"
<</if>>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_post_school_interview_27" '<<He npc_pokerman>> looks up at you for a moment, and then continues on.' 300>>]
</div>/*#
#desc: interview results - peer interview summary
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.resume.bimbo == 2>>
<<set $scene.success += 1>>
<<elseif $player.flags.resume.bimbo == 4>>
<<set $scene.success += 1>>
<<elseif $player.flags.resume.bimbo == 1>>
<<set $scene.fail += 1>>
<<elseif $player.flags.resume.bimbo == 3>>
<<set $scene.fail += 1>>
<</if>>
<<if $scene.action_7 == 'number'>>
<<set $scene.success += 1>>
<<elseif $scene.action_7 == 'flip'>>
<<if $player.flags.resume.sell == 2>>
<<set $scene.success += 1>>
<<else>>
<<set $scene.fail += 1>>
<</if>>
<<elseif $scene.action_7 == 'want'>>
<<set $scene.success += 1>>
<<elseif $scene.action_7 == 'features' && setup.getTotalValue("smart") <= 10>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("npc_pokerman","man")>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.resume.bimbo>>
<<case 2>>
<<=setup.getNpcName("npc_pokerman","formal")>> smiles. "@@.npc_pokerman;You made quite the impression in the peer on peer interview, I had to bat back some begging requests to "hire you now and... can we, like, go shopping?" suffice it to say, you definitely showed the temperament to get on with your colleagues.@@"
<<case 1>>
<<=setup.getNpcName("npc_pokerman","formal")>> frowns. "@@.npc_pokerman;You made a very disappointing impression on your peer. Obviously this is only one part of the overall interview but she expressed noted frustration at you being "like, boring!" It raises some definite concerns that you would struggle to get on with your peers, which would, of course, lead to inefficiencies in arranging things on behalf of your respective managers.@@"
<<case 4>>
"@@.npc_pokerman;You made quite the gamble in the peer interview. Normally the expectation would be for you to gossip and show the temperament to get on with your fellow subordinates... you went a different direction, however and it seems to have paid off. I just about had my ear talked off about how you are "like, totally, like a genius and stuff!" Good job, while it is not necessarily a requirement, having a <<if $fetish.sissy>>SISSI <</if>>Secretary that can shoulder some of the mental burden of the job can make an executive's life much easier, and the company thus more efficient.@@"
<<case 3>>
"@@.npc_pokerman;Your peer interview was quite the disappointment — it seems you attempted to show off your intellect, rather than your personality, but the result seems to have been a failure on both counts. This inability to work with your peers on their level is definitely a concern.@@"
<<case 0>>
<<if $scene.action_6>>
<<=setup.getNpcName("npc_pokerman","formal")>> shakes <<his npc_pokerman>> head. "@@.npc_pokerman;Your impression in the peer portion of the interview was... uninspired. Not that your approach was wrong, but that you just didn't quite match up to the level of expectations for the position you are applying for.@@"
<<else>>
"@@.npc_pokerman;I will note you made an interesting tactic in the peer interview, trying to show off your intellect rather than appealing to the social temperament of the general subordinate pool... unfortunately you didn't quite have the smarts to pull it off. Bit of a gamble there not to just go with the flow, and one you lost.@@"
<</if>>
<<default>>
ERROR: unexpected player.flags.resume.bimbo <<=$player.flags.resume.bimbo>>
<</switch>>
<br><br>
<<switch $scene.action_7>>
<<case 'number'>>
"@@.npc_pokerman;So in the next portion things went a bit off-script as our lovely interviewer suddenly acted like it was a cliche sales position... wherein you smoothly turned things around in a picture-perfect in-character offer. In an actual sales situation I would call it more cute than competent, but here? Excellently done.@@"
<<case 'features'>>
<<if setup.getTotalValue("smart") > 15>>
"@@.npc_pokerman;Despite what must have been a bit of a confusion in being given a question more appropriate to a sales position, you did an impressive job thinking on your feet... though I would not call such feature dumps, no matter how clever, the best sales tactic.@@"
<<elseif setup.getTotalValue("smart") <= 10>>
"@@.npc_pokerman;Though it's a bit orthogonal to the position you were applying for... well, you still did a poor job of selling. Even if rattling off features was optimal, which it is not, you flubbed even that.@@"
<<else>>
"@@.npc_pokerman;Though it's a bit orthogonal to the position you were applying for... well, you still did a mediocre job of selling. Rattling off features just isn't optimal, you want to shape you technique to the customer.@@"
<</if>>
<<case 'want'>>
"@@.npc_pokerman;Obviously you are not applying for a sales position, so the question you were given was a bit out of category, but you were on the correct track... notwithstanding the limitations of the interviewer, so I'll call that success, or at least an indication of natural talent. Perhaps in another life you might have gone that direction, as it is, well... those skills can always be put to use, selling oneself is, after all, a useful skill for a career-minded <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<case 'flip'>>
<<if $player.flags.resume.sell == 2>>
"@@.npc_pokerman;The way you handled that, admittedly off-topic, sales question...@@" <<he npc_pokerman>> makes a chef's kiss motion "@@.npc_pokerman;You bypassed the expressed desire to drill straight in on the true need. That's not just good for sales, but for any situation where you must act as the bulwark between your manager and some manner of distraction. Very well done.@@"
<<else>>
"@@.npc_pokerman;Obviously the sales question was a bit silly for the position you were applying for, but the way you pointed that out was quite rude. Managing the feelings of fellow employees, even when they are acting irrational, is an important skill to have as you bulwark your manager against all the stressors on her schedule. Being able to handle those stressful situations without exacerbating them... well, the question may have been wrong to ask, but your answer proved even worse.@@"
<</if>>
<<default>>
ERROR: unexpected scene.action_7 <<=$scene.action_7>>
<</switch>>
<br><br>
<<He npc_pokerman>> smiles at you. "@@.npc_pokerman;Now, the final portion of your interview loop — self-analysis and growth... I'll note it's so much simpler to handle that segment for internal hires, my understanding is that getting the footage for external applicants can be quite tricky, and they often have application-killing negative reactions to the presentation...@@"<br>
<br>
<<printThought "Wait... <<he npc_pokerman>> can't be serious... can <<he npc_pokerman>>?">><br>
<br>
You look at <<him npc_pokerman>> closely but there is no sign of <<him npc_pokerman>> having been joking as <<he npc_pokerman>> moves on.<br>
<br>
[<<moveTo "event_post_school_interview_28" 'Continue.' 300>>]
</div>/*#
#desc: interview results - pegging interview summary
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.resume.reflect == 2>>
<<set $scene.success += 1>>
<<elseif $player.flags.resume.reflect == 1>>
<<set $scene.fail += 1>>
<</if>>
<<if $scene.action_9>>
<<set $scene.success += 1>>
<<else>>
<<set $scene.fail += 1>>
<</if>>
<<if $player.flags.resume.pegging == 2>>
<<set $scene.success += 1>>
<<elseif $player.flags.resume.pegging == 1>>
<<set $scene.fail += 1>>
<</if>>
<<if $fetish.chastity_vag && $player.body_ref.vagina || $fetish.chastity_penis && $player.body_ref.penis>>
<<if $player.flags.resume.chastity == 2>>
<<set $scene.success += 1>>
<<elseif $player.flags.resume.chastity == 1>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<<if $player.flags.resume.sex == 2>>
<<set $scene.success += 1>>
<<elseif $player.flags.resume.sex == 1>>
<<set $scene.fail += 1>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("npc_pokerman","man")>>
<div id="invframe" class="scrolltext">
<<if $scene.action_8 == 'good'
&& $scene.action_9
&& ($scene.action_10 == 'appreciate' || $scene.action_10 == 'modest' && $scene.pegging_gratitude != 'bad' || $scene.action_10 == 'slut')
&& (!$scene.hasOwnProperty("chastity") || $scene.action_11 == '247')
&& ($player.flags.resume.sex == 2)>>
"@@.npc_pokerman;So, when it comes to self analysis... well, you seem optimally positioned. You watched the footage and perfectly narrowed in on what you did right, and wrong, but, most importantly — how you could do better, and then you capped it off by <<if $scene.action_12 == 'bend'>>bending over<<elseif $scene.action_12 == 'lay'>>lying back<</if>> and showing how far you've come when it comes to being pegged. Just a top notch performance, start to finish, and exactly what we look for in an applicant that is going to succeed and develop their career long-term.@@"
<<elseif ($scene.action_8 == 'nothing' && $npc_manager.flags.pegging.base_style == 'money')
&& (!$scene.action_9 && ($npc_manager.flags.pegging.strip == 'fast' || $npc_manager.flags.pegging.strip == 'fast_lingerie'))
&& ($scene.action_10 == 'happy' && ($scene.pegging_gratitude == 'refuse' || $scene.pegging_gratitude == 'bad'))
&& (!$scene.hasOwnProperty("chastity") || $scene.action_11 == 'no')
&& $player.flags.resume.sex == 1>>
<<=setup.getNpcName("npc_pokerman","formal")>> shakes <<his npc_pokerman>> head. "@@.npc_pokerman;Unfortunately, you seem to be completely incapable of accurate self-reflection... the past is a learning opportunity and our company is only where it is due to a relentless pursuit of improvement. Excellence is not a single point, but a process and your handling of this opportunity, well... you seem to not be on board...@@"
<<elseif ($scene.action_8 == 'nothing' && $npc_manager.flags.pegging.base_style == 'money')
|| (!$scene.action_9 && ($npc_manager.flags.pegging.strip == 'fast' || $npc_manager.flags.pegging.strip == 'fast_lingerie'))
|| ($scene.action_10 == 'happy' && ($scene.pegging_gratitude == 'refuse' || $scene.pegging_gratitude == 'bad'))
|| $scene.action_11 == 'no'
|| $player.flags.resume.sex == 1>>
<<=setup.getNpcName("npc_pokerman","formal")>> shakes <<his npc_pokerman>> head. "@@.npc_pokerman;Unfortunately the retrospective portion of your interview was... less than successful. In the words of your interviewer you "utterly failed to demonstrate any instinct for personal betterment" in your failure to draw any lessons whatsoever from past performance.<<if $scene.action_12 == 'escape' || $scene.action_12 == 'no'>> And then, to top it off, you <<if $scene.action_12 == 'escape'>>proved a very... reluctant partner for the pegging test<<elseif $scene.action_12 == 'no'>>refused to give yourself over for an assessment pegging<</if>>.<</if>>@@"
<<elseif $scene.action_8 == 'good'
|| $scene.action_9
|| ($scene.action_10 == 'appreciate' || $scene.action_10 == 'modest' && $scene.pegging_gratitude != 'bad' || $scene.action_10 == 'slut')
|| $scene.action_11 == '247'
|| $player.flags.resume.sex == 1>>
<<=setup.getNpcName("npc_pokerman","formal")>> frowns. "@@.npc_pokerman;As far as self-reflection, and showing the capacity to learn from your past... well, there were some glimmers of understanding, but, unfortunately for you, nowhere near enough to impress the interviewer.@@"
<<else>>
<<=setup.getNpcName("npc_pokerman","formal")>> frowns. "@@.npc_pokerman;As far as self-reflection, and showing the capacity to learn from your past your performance was described as forgettable and mediocre, your responses pedestrian and indicative of no particular insight, or reticence.@@"
<</if>>
<br><br>
<<He npc_pokerman>> straightens <<his npc_pokerman>> papers and folds things up. "@@.npc_pokerman;So, after all that, I imagine you're wondering what the verdict is?@@" <<He npc_pokerman>> smiles, seeming to enjoy drawing out the tension as you try not to look too nervous.<br>
<br>
[<<moveTo "event_post_school_interview_29" 'Did I get the job?' 300>>]
</div>/*#
#desc: interview results - final
#status: FINISHED 0.8.3.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.success >= 12 || ($player.flags.resume.chastity != 2 && $scene.success >= 11 && (!$fetish.chastity_vag && $player.body_ref.vagina || !$fetish.chastity_penis && !$player.body_ref.penis))>>
<<set $player.flags.resume.interview = 'perfect'>>
<<set $scene.pay = $player.work.payment*5>>
<<set $player.work.payment = $scene.pay>>
<<elseif $scene.fail >= 10>>
<<set $player.flags.resume.interview = 'disaster'>>
<<elseif $scene.success - $scene.fail > 5>>
<<set $player.flags.resume.interview = 'success'>>
<<elseif $scene.success < 3 && $scene.fail == 0>>
<<set $player.flags.resume.interview = 'nothing'>>
<<elseif $scene.success > $scene.fail>>
<<set $player.flags.resume.interview = 'positive'>>
<<else>>
<<set $player.flags.resume.interview = 'fail'>>
<</if>>
<</if>>
<<set $player.location to "101st Floor Conference Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/conference_room.png" setup.charImageGeneric("npc_pokerman","man")>>
<div id="invframe" class="scrolltext">
<<switch $player.flags.resume.interview>>
<<case "perfect">>
<<=setup.getNpcName("npc_pokerman","formal")>> rises from <<his npc_pokerman>> seat with a wide smile and leans across the table to extend <<his npc_pokerman>> hand.<br>
<br>
"@@.npc_pokerman;I doubt this is much of a surprise but... you did superbly. I only wish all our applicants were of such quality but you more than proved your worth, and that — despite an unorthodox start to your career, you absolutely belong in the role of <<=ps(setup.getNpcName("npc_manager","other"))>> <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"<br>
<br>
You shake <<his npc_pokerman>> hand and then curtsy in thanks. "@@.npc_pokerman;In fact, I had a brief chat with your boss and... well, not only are you remaining at the job you are so perfectly suited for, you'll be going back with a raise, the full pay of <<=$player.work.payment>> that would be associated with a senior executive assistant, rather than being shackled to the lower base rate you were initially offered on account of your unique employment situation.@@"<br>
<br>
You manage not to gawk at the number — you had no idea a Secretary<<if $fetish.sissy>> — SISSI or otherwise<</if>> could make so much!<br>
<br>
<<He npc_pokerman>> grins, clearly enjoying being able to give you such good news. "@@.npc_pokerman;Well, on that I remand you back into the control of <<=setup.getNpcName("npc_manager","other")>> — this whole paper-qualification manner is sorted and you can go right back to making your <<=setup.getNpcName("npc_manager","title")>> happy, and the company a better place.@@"
<<case "success">>
<<=setup.getNpcName("npc_pokerman","formal")>> rises from <<his npc_pokerman>> seat with a wide smile and leans across the table to extend <<his npc_pokerman>> hand.<br>
<br>
"@@.npc_pokerman;So let me congratulate you on proving yourself for, well, the position you were already working. I realise this whole paperwork thing is a bit of corporate organisational silliness but, in the end, you proved the system works and it is my pleasure to re-certify you for your position as executive assistant to <<=setup.getNpcName("npc_manager","other")>>. Thank you for taking the time to do this whole thing the "proper" way, you may now return to your normal duties.@@"
<<case "positive">>
<<=setup.getNpcName("npc_pokerman","formal")>> shakes <<his npc_pokerman>> head.<br>
<br>
"@@.npc_pokerman;So, unfortunately, though you showed a number of positive indicators, you downsides are enough that I cannot extend an offer for the position of senior executive assistant to <<=setup.getNpcName("npc_manager","other")>>...@@"<br>
<br>
Your heart sinks, what does this mean?<br>
<br>
"@@.npc_pokerman;Or, rather, that would be what I would normally say in this situation, had a normal person come through and given an interview as you just did. In your case, however, well... you're close enough to the bubble that I'll just round a few things up. In conclusion: you're hired, well, re-hired. You can put this whole paperwork snafu behind you and get back to your work, have a lovely day.@@"
<<case "nothing">>
<<=setup.getNpcName("npc_pokerman","formal")>> shakes <<his npc_pokerman>> head.<br>
<br>
"@@.npc_pokerman;If I was to summarise your interview performance, well... it would be a blank page. You made no notable errors, but also failed to rise to the level of success, just... mediocrity across the board.@@" <<He npc_pokerman>> chuckles "@@.npc_pokerman;Of course, where would the corporate world be without mediocrity? While I would normally not give my approval for something like this for an executive assistant position at the level you were going for... well, if <<=setup.getNpcName("npc_manager","other")>> has been satisfied with your performance to this point, who am I to argue? Perhaps this points to a gap in the interview process and its ability to truly assess qualifications, but that is always the case. Congratulations, you are officially qualified for your job. You may return to work now.@@"
<<case "fail">>
<<=setup.getNpcName("npc_pokerman","formal")>> frowns and shakes <<his npc_pokerman>> head.<br>
<br>
"@@.npc_pokerman;Your interview today was... well, I imagine you can already guess, you were there, after all. A failure of this magnitude marks you as quite unqualified for your position, and the new regulations would thus indicate a demotion, or possibly even severance...@@"<br>
<br>
You bite your lip, suddenly scared, and regretting that you didn't put more effort into what you had that was going to be mostly a "formality." <br>
<br>
"@@.npc_pokerman;Of course, that was before I received a special intervention request from <<=setup.getNpcName("npc_boss","formal")>>. It seems the paperwork of your lack of "qualification" made it to <<his npc_boss>> desk... and I have an official override authorization that, regardless of the results of the interview, you are to be offered your previous position back at the same rate and terms. Thus, well...@@" <<He npc_pokerman>> rises to <<his npc_pokerman>> feet and extends a hand across the table. "@@.npc_pokerman;Welcome back to the company — you may return to your normal duties now.@@"<br>
<br>
You shake <<his npc_pokerman>> hand and nod, still recovering from the sudden roller-coaster of emotions... while also curious as to why <<=setup.getNpcName("npc_boss","formal")>> took such a direct action on your behalf... unless it wasn't <<him npc_boss>>? You reflect on your predecessor, <<=setup.getNpcName("npc_secretary","formal")>>; <<=ps(setup.getNpcName("npc_boss","formal"))>> current assistant — might she have somehow had a hand in this, operating on her ex-boss's behalf?
<<case "disaster">>
<<=setup.getNpcName("npc_pokerman","formal")>> frowns and shakes <<his npc_pokerman>> head.<br>
<br>
"@@.npc_pokerman;I am sorry, but I am unable to classify your performance today as anything other than a complete disaster. I suppose this is why we normally screen out based on resume and references because, were anyone to give an interview as you did in normal situations, well... they would be tossed out before they made it to the second interviewer.@@"<br>
<br>
Your heart skips as you hear the door open behind you and two security guards step in. "@@.npc_pokerman;I regret to inform you that, despite everything... well, there is no longer a position for you at Social Interaction Service Syndicate Inc. Unfortunately, there remains the issue of your debt. Maybe we can eventually recoup the costs you have incurred, but by then I don't know what there will be left of you...@@"<br>
<br>
You start to object only to feel a prick on the side of your neck. Your body goes limp and you fall into the arms of one of the security guards.<br>
<br>
[<<moveTo "bad_end_interview" 'You lose consciousness.' 300>>]
<<default>>
ERROR: unexpected player.flags.resume.interview <<=$player.flags.resume.interview>>
<</switch>>
<br><br>
<<if $player.flags.resume.interview != "disaster">>
You thank <<him npc_pokerman>> and head for the elevator — a <<if $fetish.sissy>>SISSI <</if>>Secretary, once again.<br>
<br>
[<<moveTo "event_post_school_interview_30" 'Back to the office.' 300>>]
<</if>>
</div>/*#
#desc: return to manager after interview
#status: FINISHED 0.8.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 0, 8, 0)>>
<<addTaskById 'event_interview' _nextDate>>
<<completeTask 'event_interview' $now true>>
<<set _nextDate = setup.setNextDate($now, 14, 17, 30)>>
<<addRandomEvent $randomEvents['elevator_home'] 'cds_drink' _nextDate>>
<<set $scene.shortWorkDay=true>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $player.work.tmpworkPensum = 5*$player.work.bonusReq>>
<<if setup.checkItemWorn("corporate_collar") && $player.flags.collar.collarId != "corporate_collar">>
<<removeItem 'corporate_collar' true>>
<<deleteItem 'corporate_collar'>>
<</if>>
<<if setup.checkItemWorn("leash_chain")>>
<<removeItem 'leash_chain' true>>
<<deleteItem 'leash_chain'>>
<</if>>
<<switch $npc_development.flags.headGirl.headGirl>>
<<case 'mc'>>
<<include "checkHeadgirlMC">>
<<case 'npc_futa'>>
<<addWorkEvent 'headgirl_futa'>>
<<case 'npc_pr_sissy'>>
<<addWorkEvent 'headgirl_pr_sissy'>>
<</switch>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['work_bathroom_female'] 'bimbo_enthusiast_intro' _nextDate>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.action_1 == 'collar'>>
As you rise to go you note <<=setup.getNpcName("npc_pokerman","formal")>> is staring at your collar with a grin. "@@.npc_pokerman;I suppose you really are,@@" <<he npc_pokerman>> notes, indicating the "Property of SISSI" etched in the steel. "@@.npc_pokerman;Still, I suppose that decision should be left to your manager...@@"<br>
<br>
<<He npc_pokerman>> leads you back to the elevator, sadly, without using the leash, before<<if $player.flags.collar.collarId == "corporate_collar">> removing the collar and<</if>> sending you on your way.
<<else>>
<<=setup.getNpcName("npc_pokerman","formal")>> leads you back to the elevator.
<</if>>
<<if $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn("cage")>>
[<<moveTo "event_inspection_stage4_nochastity_1" 'Board the elevator.' 300 "<<set $scene.fromInterview=true>>">>]
<<else>>
You return to the office where
<<switch $player.flags.resume.interview>>
<<case "perfect">>
<<=setup.getNpcName("npc_manager","formal")>> greets you.<br>
<br>
"@@.npc_manager;Ah, you have a returned! And with such wonderful news! You absolutely deserved the raise, and I thank you for doing such a superb job in sorting out this whole paperwork kerfuffle. You really are my perfect <<if $fetish.sissy>>SISSI <</if>>Secretary, and I am very glad to have you...@@"<br>
<br>
You blush slightly at her gushing words as she looks at you with a smile. "@@.npc_manager;With all that said, this whole interview thing has cost quite a few good working hours. Fortunately I know you are more than equipped to catch up, so I will leave you to it, thank you again and remember to sit tall — if you had any doubts about yourself having come to your position through probation and the rest well... I think today's assessment puts that all to bed.@@"
<<case "success">>
<<=setup.getNpcName("npc_manager","formal")>> greets you.<br>
<br>
"@@.npc_manager;Welcome back, and congratulations. I knew you were quite qualified to serve my needs but... it is always nice to have these sorts of things confirmed, hmm? In any case, well done at putting in the work to sort out this paperwork error cleanly. Now, well... back to work! After all, you need to catch up for missing the morning, but I have every confidence you are up to the task.@@"<br>
<<case "positive">>
<<=setup.getNpcName("npc_manager","formal")>> greets you.<br>
<br>
"@@.npc_manager;Welcome back, and thank you for sorting out this little paperwork error. I wish you had expended a bit more effort in the process, but it was sufficient. Now, you had better hurry on back to your desk, you have nearly a whole morning's work to catch up on!@@"
<<case "nothing">>
<<=setup.getNpcName("npc_manager","formal")>> greets you.<br>
<br>
"@@.npc_manager;Welcome back, now that this paperwork issue is out of the way — despite your apparent failure to take things seriously, well... you have missed most of the morning, best get to work and try to catch up.@@"
<<case "fail">>
<<=setup.getNpcName("npc_manager","formal")>> greets you, looking clearly annoyed.<br>
<br>
"@@.npc_manager;You know you gave me quite the scare today? I saw the results of your failure and I thought I was about to be out a secretary... only for <<=setup.getNpcName("npc_boss","formal")>> to step in with that executive override... I warn you, these things come at a cost, but we will deal with that later. For now, you had best return to your station, you have the better part of a morning's work to catch up on.@@"
<<default>>
ERROR: unexpected player.flags.resume.interview <<=$player.flags.resume.interview>>
<</switch>>
<br><br>
She dismisses you from her office and you return to your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Back to work." 300>>]
<</if>>
</div>/*#
#desc: bad end, catastrophically fail interview
#status: FINISHED 0.8.3.0
#*/
<<set $player.location to "">>
<<set $gameOver = 'interview'>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/gameover.png">>
<div id="invframe" class="scrolltext">
You aren't sure how long you're out but you wake with a start to find yourself staring at a computer. Frantically looking around you discover that you are restrained to a chair, a collar and gag combining to have you face forward and silent, a glance to either side confirming you are one of an entire row similarly situated.<br>
<br>
A sharp shock from the plug in your ass focuses your attention as you take a moment to read the screen in front of you where a call centre software is loaded up...<br>
<br>
Your thrashing around is all but ignored by your fellow "workers" and, after a few additional rounds of shocks you calm down and focus, willing to do anything to stop the pain.<br>
<br>
As you start to work you get a strange sense of flashback — your "job" seems to be a generalise "support" mix including IT, HR and scheduling. Positive client reactions are rewarded with vibrations, negative ones with shocks, the shifts of you and your fellow workers operating on arcane rules. You work until a guard appears to remove your cuffs you and escort you to a sleeping tube, then rest until it's time to walk back to your seat to be dildo-mounted and restrained once again.<br>
<br>
Maybe it's a lingering effect of the drug that knocked you out, or something in the slurry they force feed you, but it isn't long before you find any thoughts of resistance receding. It is easier to obey, to do your new job without complaint. Good behaviour is rewarded, after all, and there's always the chance of impressing enough to be moved onto the phone banks where you won't need to be gagged, you just have to behave...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: pr_sissy as headgirl bonus event intro
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You receive a summons to another floor and, after getting permission from <<=setup.getNpcName("npc_manager","formal")>> hurry down to find yourself in what signs indicate is the company's Cosmetics Research Division.<br>
<br>
<<printThought "I guess I'm not surprised... but do they do everything at this company?">><br>
<br>
You enter the lab and are immediately greeted by <<=setup.getNpcName("npc_pr_sissy","first")>> who, despite not being in school uniform, is looking very "Head Girl" standing with two of your fellow students.<br>
<br>
"@@.npc_pr_sissy;Hey, welcome <<=$player.first_name>> — our other two friends were tied up and can't make it, but <<=setup.getNpcName("npc_development","formal")>> felt I did such a good job as Head Girl that she recommended me for some additional responsibilities — today that means supervising the two of you for an exciting product demo here in the Cosmetics department. Follow.@@"<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> turns sharply, the slight edge of dominance in her parting word that has you and your fellow students instinctively and obediently falling in behind her.<br>
<br>
<<if setup.getTotalValue("makeup") > 10 && setup.getTotalValue("feminization") > 15>>
<<printThought "Well, I do like makeup... so this could be fun!">><br>
<br>
<</if>>
[<<moveTo "event_headgirl_pr_sissy_2" "Follow." 60>>]
</div>/*#
#desc: pr_sissy as headgirl bonus event apply makeup
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_pr_sissy","first")>> leads you to a trio of chairs — each set out in front of an expansive makeup case and mirrors.<br>
<br>
"@@.npc_pr_sissy;So, if you would take a seat — today we'll be testing a new line of nanomachine-incorporating makeup. There's still testing going on to give them more versatility but already they have an interesting function that I think you'll enjoy. The short version is that their durability can be controlled on the fly. That's right, with just a simple wireless command sent from your phone you can toggle between nigh-indestructible battle-paint... or let things run freely and show off what a whorish evening you've been up to!@@"<br>
<br>
You glance at your fellows as <<=setup.getNpcName("npc_pr_sissy","first")>> continues. "@@.npc_pr_sissy;We'll be testing both features — to make it interesting we'll do a little contest as to who can put their makeup on the best. So, my ladies... get painting, you should find the application as convenient as any other high-end brand.@@"<br>
<br>
Your compatriots are already going through to organise what they'll need as you consider your options.<br>
<br>
<<if setup.getTotalValue("makeup") > 10>>
<<if setup.getTotalValue("makeup") > 15>>
<<printThought "I should have no problem aceing this thing... unless I want to throw the match?">>
<<else>>
<<printThought "Hmm, try, and maybe win... or throw the match and enjoy losing?">>
<</if>>
<<else>>
<<if setup.getTotalValue("makeup") > 5>>
<<printThought "Shit, I wish I was better with makeup... but I have to at least try, right?">>
<<else>>
<<printThought "Dammit, I barely know what I'm doing with makeup...">>
<</if>>
<</if>>
<br><br>
[<<moveTo "event_headgirl_pr_sissy_3" "Try your best to do a perfect copy of your current style." 600 "<<set $scene.try=true>>">>]<br>
[<<moveTo "event_headgirl_pr_sissy_3" "Purposefully botch things." 600 "<<set $scene.try=false>>">>]
</div>/*#
#desc: pr_sissy as headgirl bonus event reward
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.win = $scene.try && setup.getTotalValue("makeup") > 15>>
<<set $scene.tempMakeup = $player.makeup.template == "">>
<<set $player.makeup.template = setup.getCurrentMakeup()>>
<<set $player.makeup.messed = 0>>
<<applyExperience 'makeup' 12 'normal' $EXPOSED>>
<<if $scene.try>>
<<set $player.makeup.messed = 0>>
<<else>>
<<set $player.makeup.messed = 25>>
<</if>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.win>>
With adroit skill you adapt the company-manufactured materials to your own personal style. Your long practice doing your makeup means you note the subtle differences between this and your normal kit, though come away overall impressed with the level of quality the company has packed in alongside the purported nanomachine magic.<br>
<br>
Even with the care you take, you still finish a few minutes ahead of your fellows, and you sit back and watch them work, taking the odd mental note even as your confidence that you'll be coming out on top builds.<br>
<br>
With <<=setup.getNpcName("npc_sissy_secretary","first")>> draging things out as it takes her an extra attempt to get her eye-lashes just right things come to an end and <<=setup.getNpcName("npc_pr_sissy","first")>> inspects the three of you intently before easily declaring you the winner.<br>
<br>
"@@.npc_pr_sissy;That's some good skill, could use you as a straight product demo on the ease that this stuff goes on... but that's nowhere near as interesting as demo'ing the other features... since you won I'll give you the choice — show off indestructible mode... or ruination?@@"<br>
<br>
[<<moveTo "event_headgirl_pr_sissy_4_ruin_1" "You'll test the makeup's durability." 1700>>]<br>
[<<moveTo "event_headgirl_pr_sissy_4_pristine_1" "You want to be ruined." 1700>>]
<<else>>
<<if $scene.try>>
<<if setup.getTotalValue("makeup") > 10>>
You try your best... but your best isn't enough, <<=setup.getNpcName("npc_pr_sissy","first")>> doing an inspection once all three of you are done with makeup before declaring <<=setup.getNpcName("npc_futa","first")>> the winner.
<<else>>
You do what you can, but glances left and right tell you that you're far out-classed, the final announcement of <<=ps(setup.getNpcName("npc_futa","first"))>> judgement of <<=setup.getNpcName("npc_futa","first")>> the winner all but formality.
<</if>>
<<else>>
<<if setup.getTotalValue("makeup") > 10>>
<<if setup.getTotalValue("makeup") > 15>>
You apply your considerable skill... to doing a terrible job, almost going too deep into your efforts as you hurriedly "wrap up" when you realise your compatriots are nearing completion, just in time for <<=setup.getNpcName("npc_pr_sissy","first")>> to glare at you suspiciously and declare <<=setup.getNpcName("npc_futa","first")>> the winner.
<<else>>
You're uncertain if you could have won even if you went all out, but that doesn't matter as your purposeful botch-job of your makeup, your brief foray into failure leaving you plenty of time to sit back and watch your compatriots finish up, with <<=setup.getNpcName("npc_futa","first")>> declared the eventual winner.
<</if>>
<<else>>
<<if setup.getTotalValue("makeup") > 5>>
You don't have much skill... and you aren't going to gain more if you continue such lazy efforts as this. Both of your compatriots do a far better job with their makeup than you, with <<=setup.getNpcName("npc_futa","first")>> being declared the final winner.
<<else>>
You barely know what to do with the makeup kit you own, much less this spread of foreign items, your efforts to reproduce your current style well below standard, making the contest a two girl race that <<=setup.getNpcName("npc_futa","first")>> is declared the winner of handily.
<</if>>
<</if>>
<br><br>
"@@.npc_pr_sissy;Fantastic tone matching, yes, <<=setup.getNpcName("npc_futa","formal")>> definitely did the best job, which means she gets to choose what functionality she'll be demo'ing.@@"<br>
<br>
"@@.npc_futa;After all this work, I'd like to keep things pristine, I think.@@" <<=setup.getNpcName("npc_futa","first")>> replies.<br>
<br>
<<=setup.getNpcName("npc_pr_sissy","first")>> grins as she turns to you and <<=setup.getNpcName("npc_sissy_secretary","first")>>. "@@.npc_pr_sissy;Alright, well I guess that means you two girls are going to get ruined. Come along, I've got a nice real-world scenario planned out for you.@@"
<</if>>
<br><br>
[<<moveTo "event_headgirl_pr_sissy_4_ruin_1" "Looks like your work is about to be ruined..." 1700 "<<set $scene.ruin=true>>">>]
<</if>>
</div>/*#
#desc: pr_sissy as headgirl bonus event pristine demo
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_futa","npc_futa_3")>>
<div id="invframe" class="scrolltext">
You may have claimed victory in the field of applying makeup... but somehow that sees less than a minute pass before you're on your knees looking up as <<=setup.getNpcName("npc_futa","formal")>> whips out her glorious <<getWordPenis false>>.<br>
<br>
"@@.npc_pr_sissy;Remember,@@" <<=setup.getNpcName("npc_pr_sissy","first")>> states as you lick your lips in anticipation. "@@.npc_pr_sissy;This should be a proper demo of the product, so really give it to her so those little nanobots have to work!@@"<br>
<br>
<<=setup.getNpcName("npc_futa","formal")>> grins, stroking a hair out of your face as she lines up with your lips. "@@.npc_futa;You hear the head girl — now open wide, hun.@@"<br>
<br>
You do as commanded, putting the skills you learned in class to work as your throat stretches in accommodation of <<=ps(setup.getNpcName("npc_futa","formal"))>> maiden meat missile, drool flowing freely as she mixes in rubbing her cock against your face to really test how your lipstick, mascara and the rest holds up to wet, rough and sloppy<<if $fetish.cum>> — capping the whole thing off with a massive blast of cum that splatters across your face and drips down towards your chin<</if>>.<br>
<br>
"@@.npc_pr_sissy;Perfection!@@" <<=setup.getNpcName("npc_pr_sissy","first")>> states with a lusty, and maybe a tad jealous, grin as she hands you a towel. "@@.npc_pr_sissy;Now for the proof — wipe it off and let's see how you look!@@"<br>
<br>
You catch your breath and rub the towel against your face, the fluffy fabric wicking away the mix of saliva, sweat and cum that built up during your brief, enthusiastic blowjob... and leave you looking good as new as you check yourself out in the mirror once more.<br>
<br>
"@@.npc_pr_sissy;Boom! Perfect! And now for the other side of the equation—@@" she starts, only for a lab assistant to run up and whisper something in her ear.<br>
<br>
[<<moveTo "event_headgirl_pr_sissy_4_pristine_2" "Continue." 1800>>]
</div>/*#
#desc: pr_sissy as headgirl bonus event finish
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Product Test Lab">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/product_test.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_pr_sissy","first")>> listens to the message before frowning slightly and turning towards you. "@@.npc_pr_sissy;Dang, looks like things are getting cut short a bit for you — <<=setup.getNpcName("npc_manager","formal")>> needs you back in the office to take care of something... still, you held up your side <<if !$scene.win>>and really set the bar for these other two to step up their makeup game<<else>>even if you do need to get in some more practice at makeup<</if>>!@@"<br>
<br>
You nod, thanking her for her time before hurrying back to the office where <<=setup.getNpcName("npc_manager","formal")>> is already waiting, shuffling you off to a meeting, and a dull one, at that, as you take notes on things without anything of particular excitement actually happening.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and resume normal work." 180 "<<completeWorkEvent>>">>]
</div>/*#
#desc: pr_sissy as headgirl bonus event ruin demo
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Product Test Lab Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_pr_sissy","first")>> grins as she leads you and <<=setup.getNpcName("npc_sissy_secretary","first")>> away from the makeup station to another part of the lab.<br>
<br>
"@@.npc_pr_sissy;So for testing makeup and other products we have a number of real-world stations, I think, in this case the best one will be...@@" she rounds a corner where you find a mock bar. "@@.npc_pr_sissy;<<=setup.getNpcName("npc_futa","first")>>? If you would like to play the part of the bartender — I'm going to go round up a few lab workers to give these slutty bitches a proper "capstone" to their simulated girls night out.@@"<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> vaults the bar and spins to face the two of you with a grin. "@@.npc_futa;So, what'll it be, ladies?<<if $fetish.cum>> Today's special is all our cock-tails are served up with some salty... cream.<</if>>@@"<br>
<br>
You and <<=setup.getNpcName("npc_sissy_secretary","first")>> take your seats at the bar and get into character...<br>
<br>
[<<moveTo "event_headgirl_pr_sissy_4_ruin_2" "Take it easy — you do have work after this, after all." 1800 "<<set $scene.debauch=false>>">>]<br>
[<<moveTo "event_headgirl_pr_sissy_4_ruin_2" "Shots for everyone! Let's get ruined!" 1800 "<<set $scene.debauch=true>>">>]
</div>/*#
#desc: pr_sissy as headgirl bonus event ruin demo
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $fetish.cum>>
<<applyExperience 'cum' 10 'terrible' $EXPOSED>>
<</if>>
<<if $scene.debauch>>
<<setTmpEffect 'drunk'>>
<<applyExperience 'bimbofication' 15 'terrible' $EXPOSED>>
<<else>>
<<setTmpEffect 'tipsy'>>
<<applyExperience 'bimbofication' 12 'normal' $EXPOSED>>
<</if>>
<<applyExperience 'oral' 15 'terrible' $EXPOSED>>
<<applyExperience 'penis' 15 'terrible' $EXPOSED>>
<<set $player.makeup.messed = 50>>
<</if>>
<<set $player.location to "Product Test Lab Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.debauch>>
You order drinks<<if $fetish.cum>>... salty drinks, as you spot <<=setup.getNpcName("npc_futa","first")>> jerking it behind the bar into each glass<</if>> and it isn't long before the party is bumping — <<=setup.getNpcName("npc_pr_sissy","first")>> returning with half a dozen lab workers in tow.
<<else>>
Mindful that you still have a shift to finish you exercise moderation... well, with <<if $fetish.cum>><<=ps(setup.getNpcName("npc_futa","first"))>> cum-laced cocktails<</if>> as to the rest... <<=setup.getNpcName("npc_pr_sissy","first")>> returns with half a dozen lab workers in tow and it. Is. On.
<</if>>
Things quickly progress from you and <<=setup.getNpcName("npc_sissy_secretary","first")>> performatively making out to dropping on your knees to see who can suck the most cock and lick the most cunt, the both of you showing off your A-SLUT certified skills with gusto as <<=setup.getNpcName("npc_pr_sissy","first")>> pops in and out — maintaining a photo record of the systematic, and scientifically calibrated, ruination of your makeup.<br>
<br>
[<<moveTo "event_headgirl_pr_sissy_4_ruin_3" "Drink, drink, suck, suck, lick, lick." 1800>>]
</div>/*#
#desc: pr_sissy as headgirl bonus event ruin demo
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.makeup.messed = 100>>
<</if>>
<<set $player.location to "Product Test Lab Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_3") setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3_ruined")>>
<div id="invframe" class="scrolltext">
Eventually your "new friends" have to return to work, the lab workers trickling away as you and <<=setup.getNpcName("npc_sissy_secretary","first")>> finish satisfying them until it's down to just <<=setup.getNpcName("npc_pr_sissy","first")>> and the other two A-SLUT alumni.<br>
<br>
"@@.npc_pr_sissy;Well, that was a stellar performance today, and a great demonstration of the features of our product!@@"<br>
<br>
You glance at <<=setup.getNpcName("npc_sissy_secretary","first")>> — her makeup just as ruined as you assume your own must be, and then to <<=setup.getNpcName("npc_futa","first")>> whose face is as perfect as when she first put down the brush, the way she licks a bit of cum from her lips telling you that she managed to get in on the action somewhere along the line.<br>
<br>
<<if $scene.debauch>>
You rise to your feet — feeling more than a bit unsteady as you reflect on just how much you've drank.
<<else>>
You rise to your feet, thankful that you showed some judgement in how much you drank, feeling a bit buzzed, but nothing you can't push through.
<</if>>
<br><br>
"@@.npc_pr_sissy;Thanks again, all three of you, for taking part in this trial — we got some good data, improved lab morale, and some good shots to use for the marketing material! Anyway, we need to clean things off before you head out — proprietary experimental stuff, and all. In theory we can make things rechargeable and reusable... just a matter of nailing how to monetize that properly — not very good business to only sell someone makeup once and them use it forever!@@"<br>
<br>
[<<moveTo "event_headgirl_pr_sissy_4_ruin_4" "Return to your desk and resume normal work." 180 "<<completeWorkEvent>>">>]
</div>/*#
#desc: pr_sissy as headgirl bonus event cleanup makeup
#status: RELEASED 0.8.5.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.tempMakeup>>
<<set $player.makeup.template = "">>
<</if>>
<<set $player.makeup.messed = 0>>
<<if $scene.debauch>>
<<incrementEmotion 'anger' 'npc_manager' 5>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_pr_sissy","first")>> helps the three of you clean up and return to normal makeup before leading you out of the lab and wishing you good-bye.<br>
<br>
You arrive back at your office where <<=setup.getNpcName("npc_manager","formal")>> greets you with a frown.
<<if $scene.debauch>>
"@@.npc_manager;Drunk on the job? That is not representative behaviour at all! No... I do not think you are in any shape to work this afternoon. Go home, get some sleep, and make up for it in the morning.@@"<br>
<br>
You want to object... but there's really no disagreeing with her sentiment, so you merely apologise as best you can and beat a hasty retreat to the elevator.<br>
<br>
[<<moveTo "company_lobby" "Head down to the lobby." 300 "<<completeWorkEvent>><<set $player.work.nowWorking=false>>">>]
<<else>>
"@@.npc_manager;Is that alcohol I smell on your breath? Quite disappointing, drinking on the job...@@"<br>
<br>
Her words immediately have you sobering up and you straighten up tall and promise that it was to help the company and you are feeling good to resume your duties.<br>
<br>
"@@.npc_manager;I see... well, it is not what I would prefer... but I suppose we shall let the quality of your work speak for itself, hmm? Go on, then — back to your desk.@@" She turns around and returns to her inner office.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to your desk and resume normal work." 180 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: npc_futa as headgirl bonus event intro
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sexdoll","npc_sexdoll_3") setup.charImage("npc_hucow","npc_hucow_3")>>
<div id="invframe" class="scrolltext">
You are summoned to the Employee Discipline Department, traveling up to the floor somewhat nervously to be greeted by <<=setup.getNpcName("npc_futa","first")>> and two of your other fellow students.<br>
<br>
"@@.npc_futa;Good afternoon! <<=setup.getNpcName("npc_development","formal")>> liked my efforts as Head Girl and so referred me on for some additional career development in <<=ps(setup.getNpcName("npc_discipline","formal"))>> department. So many useful techniques for managing employee discipline and motivation! I thought I would share a few of them with you today. Come along.@@"<br>
<br>
You, <<=setup.getNpcName("npc_sexdoll","first")>> and <<=setup.getNpcName("npc_hucow","full")>> obediently fall in as <<=setup.getNpcName("npc_futa","first")>> leads the three of you through the dungeon that is the Employee Discipline Department. The sound of whips and moans echoing around you.<br>
<br>
[<<moveTo "event_headgirl_futa_2" "Continue." 120>>]
</div>/*#
#desc: npc_futa as headgirl bonus event breasts intro
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sexdoll","npc_sexdoll_3") setup.charImage("npc_hucow","npc_hucow_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_futa","first")>> comes to a stop at a "breast punishment" station — the contrast between an industrial sign laying out instructions and safety procedures next to an obvious piece of bdsm equipment is both jarring... and yet also perfectly on-brand for Social Interaction Service Syndicate Inc.<br>
<br>
"@@.npc_futa;<<=setup.getNpcName("npc_hucow","full")>>? If you would take a seat,@@" she glance at you as <<=setup.getNpcName("npc_hucow","full")>> gets situated.<br>
<br>
<<if setup.getEffectiveBreastSize() > 7>>
[<<moveTo "event_headgirl_futa_3" "Volunteer your breasts, as well!" 600 "<<set $scene.action_1='breast'>>">>]<br>
<<else>>
[@@.link_locked;You do not have large enough breasts to join <<=setup.getNpcName("npc_hucow","full")>>.@@]<br>
<</if>>
<<if setup.getTotalValue("dominance") > 10>>
[<<moveTo "event_headgirl_futa_3" "Ask you can have a swing or two?" 600 "<<set $scene.action_1='dom'>>">>]<br>
<<elseif setup.getTotalValue("dominance") > 5>>
[@@.link_locked;Despite your nascent dominance training, you do not feel comfortable stepping up to this opportunity.@@]
<<elseif setup.getTotalValue("dominance") > 0>>
[@@.link_locked;You may have nascent dominance skills, but you do not feel comfortable stepping up to this opportunity.@@]<br>
<<else>>
[@@.link_locked;You lack the slightest skill at dominance.@@]<br>
<</if>>
[<<moveTo "event_headgirl_futa_3" "Enjoy the demo..." 600 "<<set $scene.action_1='watch'>>">>]
</div>/*#
#desc: npc_futa as headgirl bonus event breasts
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_1>>
<<case 'breast'>>
<<applyExperience 'bdsm' 12 'terrible' $SEEN_FRIEND>>
<<addItem "nipple_beads">>
<<wearItem "nipple_beads" true>>
<<case 'dom'>>
<<applyExperience 'dominance' 13 'very' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sexdoll","npc_sexdoll_3") setup.charImage("npc_hucow","npc_hucow_3")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_1>>
<<case 'breast'>>
Once you are both seated <<=setup.getNpcName("npc_futa","first")>> has you and <<=setup.getNpcName("npc_hucow","full")>> expose your breasts before she tightens a thick breast-binder around their base.
<<case 'dom'>>
You stand and observe closely as <<=setup.getNpcName("npc_futa","first")>> has <<=setup.getNpcName("npc_hucow","full")>> take a seat before she exposes her breasts and tightens a thick breast-binder around their base.
<<case 'watch'>>
You watch as <<=setup.getNpcName("npc_futa","first")>> has <<=setup.getNpcName("npc_hucow","full")>> take a seat before she exposes her breasts and tightens a thick breast-binder around their base.
<<default>>
ERROR: unexpected scene.action <<=$scene.action_1>>
<</switch>>
<br><br>
"@@.npc_futa;The first part of proper punishment is presentation — these binders not only present the targets more attractively, but they also make them more sensitive for what is to come. Of course the real special sauce is these little things.@@"<br>
<br>
She presents what look like pairs of small steel balls — which you shortly discover are magnetic nipple clamps, soon pinching harshly on each of your stiffened nips.<br>
<br>
"@@.npc_futa;Painful, aren't they? Small enough to not get in the way, but pack a punch — oh, and they're capable of administering remote-control shocks, what fun!@@"<br>
<br>
<<=setup.getNpcName("npc_futa","first")>> stands up and unfurls a small whip that had been holstered on her belt
<<if $scene.action_1 == "breast">>
you gasp
<<else>>
<<=setup.getNpcName("npc_hucow","full")>> gasps
<</if>>
as <<=setup.getNpcName("npc_futa","first")>> sets to work, painful red marks soon criss-crossing
<<if $scene.action_1 == "breast">>your and <</if>><<=ps(setup.getNpcName("npc_hucow","full"))>> breasts, the evil nipple clamps remaining in place even as the harsh blows send milk-bags bouncing.<br>
<br>
<<switch $scene.action_1>>
<<case 'breast'>>
After a few hits <<=setup.getNpcName("npc_futa","first")>> pulls out a second flogger, working both you and <<=setup.getNpcName("npc_hucow","full")>> at the same time, varying her pace and intensity such that each blow is a fresh pain, from thuddy to ache as your breasts bounce and strain.
<<case 'dom'>>
After a few hits <<=setup.getNpcName("npc_futa","first")>> offers you a second flogger, the two of you each taking a breast as you experiment with different angles and intensities, all the while <<=setup.getNpcName("npc_hucow","full")>> panting<<if $fetish.pet_play>>, moaning, and occasionally mooing<<else>> and moaning<</if>> at the torment.<br>
<br>
"@@.npc_futa;All in the wrist — the secret here is to keep the submissive off-balance, so that each blow is a surprise that builds the punishment rather than giving them space to recover.@@"
<<case 'watch'>>
You watch on as <<=setup.getNpcName("npc_futa","first")>> gives <<=setup.getNpcName("npc_hucow","full")>> quite the thorough breast-whipping, the twine massive mammaries turned a brilliant red by the time the punishment stops.
<<default>>
ERROR: unexpected scene.action <<=$scene.action_1>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_futa","first")>> finally steps away, before sending <<=setup.getNpcName("npc_sexdoll","first")>> to help remove <<if $scene.action_1 == "breast">>yours and <</if>><<=ps(setup.getNpcName("npc_hucow","full"))>> binds, the rush of blood causing fresh gasps of pain.<br>
<br>
"@@.npc_futa;As you can see these techniques are quick, efficient, and require minimal equipment, a perfect tool for keeping the more well-endowed employees in line. Now, let us continue on to a somewhat more different technique, but one equally effective in its own way.@@"<br>
<br>
She leads the way off to another part of the dungeon.<br>
<br>
[<<moveTo "event_headgirl_futa_4" "Follow." 60>>]
</div>/*#
#desc: npc_futa as headgirl bonus event chastity intro
#status: FINISHED 0.8.0.0
#ignore_spell: x
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action_1 == 'breast'>>
<<removeItem "nipple_beads" true>>
<<deleteItem "nipple_beads">>
<</if>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sexdoll","npc_sexdoll_3") setup.charImage("npc_hucow","npc_hucow_3")>>
<div id="invframe" class="scrolltext">
Passing some other employees receiving disciplinary measures <<=setup.getNpcName("npc_futa","first")>> brings you to an area with several X-frames, leading <<=setup.getNpcName("npc_sexdoll","first")>> up onto one of them as she explains the plan.<br>
<br>
"@@.npc_futa;So I've been practicing with the various controls built into company-mandated chastity devices. Obviously <<=setup.getNpcName("npc_sexdoll","first")>> and her <<=setup.getItemName("sissyomatic")>> is the ultimate in such equipment, but they're still in prototype incremental roll-out, so I haven't had the opportunity to get my hands on them, yet...@@"<br>
<br>
<<if setup.checkItemTypeTag('cage', ['ems']) && setup.checkItemTypeTag('cage', ['vibrating'])>>
[<<moveTo "event_headgirl_futa_5" "Volunteer your imprisoned bits as well!" 600 "<<set $scene.action_2='chastity'>>">>]<br>
<<elseif setup.checkItemTypeWorn("cage")>>
[@@.link_locked;Your chastity device is not sufficiently featured for something like this.@@]<br>
<<else>>
[@@.link_locked;You are not wearing a chastity device.@@]<br>
<</if>>
<<if setup.getTotalValue("dominance") > 10>>
[<<moveTo "event_headgirl_futa_5" "Ask if you could also take a spin at the controls?" 600 "<<set $scene.action_2='dom'>>">>]<br>
<<elseif setup.getTotalValue("dominance") > 0>>
[@@.link_locked;Despite your growing dominance training, you do not feel comfortable stepping up to this opportunity.@@]<br>
<<else>>
[@@.link_locked;You lack the slightest dominant skill.@@]<br>
<</if>>
[<<moveTo "event_headgirl_futa_5" "Enjoy the demo..." 600 "<<set $scene.action_2='watch'>>">>]
</div>/*#
#desc: npc_futa as headgirl bonus event chastity
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action_2>>
<<case 'chastity'>>
<<if setup.getChastityLevel() == 5>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<case 'dom'>>
<<applyExperience 'dominance' 15 'very' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sexdoll","npc_sexdoll_3") setup.charImage("npc_hucow","npc_hucow_3")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action_2>>
<<case 'chastity'>>
You volunteer as a "practice subject" as well and <<=setup.getNpcName("npc_futa","first")>> smiles.
<<if setup.getChastityLevel() == 5>>
<<if setup.getItemFromType("cage").startsWith("sissyomatic_fem") || setup.getItemFromType("cage").startsWith("sissyomatic_belt") || setup.getItemFromType("cage").startsWith("sissyomatic_ultra")>>
"@@.npc_futa;Oooh, a <<=setup.getItemTypeName("cage")>>? That will be a lovely contrast to see how that device compares to the more basic <<=setup.getItemName("sissyomatic")>>...@@"
<<else>>
"@@.npc_futa;Another <<=setup.getItemName("sissyomatic")>>? How lovely to compare the same device on two lovely employees...@@"
<</if>>
<<else>>
"@@.npc_futa;Wonderful! An opportunity to contrast an off-the-shelf model to the company's top of the line...@@"
<</if>>
<<case 'dom'>>
You ask <<=setup.getNpcName("npc_futa","first")>> if you could get some practice in as well, and she smiles.<br>
<br>
"@@.npc_futa;Of course! The more employees are properly trained in this sort of thing the better we can keep one another in line.@@"
<<case 'watch'>>
Feeling a twinge of sympathy for your fellow employee you nonetheless watch in silence as <<=setup.getNpcName("npc_futa","first")>> takes a moment to calibrate her controls before starting in.
<<default>>
ERROR: unexpected scene.action_2 <<=$scene.action_2>>
<</switch>>
<br><br>
<<if $scene.action_2 == "chastity">>You and <</if>><<=setup.getNpcName("npc_sexdoll","first")>> are soon writhing in pain as <<=setup.getNpcName("npc_futa","first")>> adjusts controls, first testing the painful limits of the 9001-series <<if $scene.action_2 == "chastity">><<if setup.getChastityLevel() == 5>>devices<<else>>device and contrasting it to your more basic model<</if>><<else>>device<</if>>.<br>
<br>
"@@.npc_futa;That definitely looks like it would have acted as a good corrective measure... but these things are more than just pain implements, right? So how about a little reward...@@"<br>
<br>
<<if $scene.action_2 == "chastity">>
You moan in pleasure as agony becomes ecstasy, the pain somehow heightening your sensitivity, a glance at <<=ps(setup.getNpcName("npc_sexdoll","first"))>> trembling lip confirming that she is feeling the same,
<<else>>
<<=setup.getNpcName("npc_sexdoll","first")>> moans in pleasure as agony becomes ecstasy,
<</if>>
swaying slightly on her feet as she struggles to keep balance in her steep company-issue heels.<br>
<br>
<<switch $scene.action_2>>
<<case 'chastity'>>
"@@.npc_futa;Very interesting, indeed, would you like to take a spin?@@" <<=setup.getNpcName("npc_futa","first")>> continues to experiment, a shared glance at <<=setup.getNpcName("npc_sexdoll","first")>> confirming your mutual frustration, a desperation that you know means that you are more than ready to be an utterly obedient toy.
<<case "dom">>
"@@.npc_futa;Very interesting, indeed, would you like to take a spin?@@" <<=setup.getNpcName("npc_futa","first")>> hands you the controls and you quickly have <<=setup.getNpcName("npc_sexdoll","first")>> dancing at your fingertips, her locked-on device providing inescapable pain and pleasure, the look in her eyes confirming that she is more than ready to be an utterly obedient toy.
<<case "watch">>
"@@.npc_futa;Very interesting, now let us see how far we can push things...@@" <<=setup.getNpcName("npc_sexdoll","first")>> whimpers in obedient pain as <<=setup.getNpcName("npc_futa","first")>> steps up the tempo, the locked-on device providing inescapable pain and pleasure, the look in <<=ps(setup.getNpcName("npc_sexdoll","first"))>> eyes confirming that she is more than ready to be an utterly obedient toy.
<<default>>
ERROR: unexpected scene.action <<=$scene.action_2>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_futa","first")>> comes to the end of her experiment and pulls you all in for a hug — <<=setup.getNpcName("npc_hucow","full")>> joining in as well for the brief aftercare as <<=setup.getNpcName("npc_futa","first")>> whispers congratulations for your performance, and gratitude for the assistance in her training.<br>
<br>
[<<moveTo "event_headgirl_futa_6" "Continue." 300>>]
</div>/*#
#desc: npc_futa as headgirl bonus event finish
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_futa","npc_futa_3") setup.charImage("npc_sexdoll","npc_sexdoll_3") setup.charImage("npc_hucow","npc_hucow_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.action_1 == "breast" && $scene.action_2 == "chastity">>
You're still recovering from your double dose of "discipline," reflexively sure to thank <<=setup.getNpcName("npc_futa","first")>> for her instruction before she releases you and your other fellow employees to return to your office.
<<elseif $scene.action_1 == "dom" && $scene.action_2 == "dom">>
You reflect on your opportunity to practice dominance, imagining what it would be like to exercise such powers on a more day-to-day basis... perhaps as <<=ps(setup.getNpcName("npc_manager","formal"))>>, overseeing a <<if $fetish.sissy>>SISSI <</if>>Secretary of your own?
<<elseif ($scene.action_1 == "breast" || $scene.action_2 == "chastity") && ($scene.action_1 == "dom" || $scene.action_2 == "dom")>>
Having experienced things from both sides of the sub/dom divide your emotions are a bit chaotic as <<=setup.getNpcName("npc_futa","first")>> thanks you and your two friends for the assistance before dismissing you all to return to work.
<<elseif $scene.action_1 == "watch" && $scene.action_2 == "watch">>
You reflect on your purely passive efforts as <<=setup.getNpcName("npc_futa","first")>> thanks all three of you for joining her before dismissing you to return to work.
<<else>>
You've certainly had an eventful afternoon, even if you didn't fully take advantage of opportunities, and you nod as <<=setup.getNpcName("npc_futa","first")>> thanks you and your two friends for the assistance before dismissing you all to return to work.
<</if>>
<br><br>
You spend a final few moments on the elevator chatting with your fellow alumni before getting off on <<=ps(setup.getNpcName("npc_manager","formal"))>> floor and heading for your desk.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 180 "<<completeWorkEvent>>">>]
</div><<if State.hasPlayed("event_post_school_interview_30") && State.hasPlayed("event_manager_dominance_final_8") && !$workEvents.hasOwnProperty("headgirl_mc") && !State.hasPlayed("event_headgirl_mc_1")>>
<<addWorkEvent "headgirl_mc">>
<</if>>/*#
#desc: summoned for mc headgirl trial
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You receive a summons from <<=setup.getNpcName("npc_development","formal")>>. <<=setup.getNpcName("npc_manager","formal")>> smiles enigmatically when you confirm that you have permission to answer the call.<br>
<br>
"@@.npc_manager;Yes, I believe I can get through the afternoon, have fun, my dear and Miss <<=$player.first_name>>? Make me proud.@@"<br>
<br>
Her formal address and instruction sends a thrill down your spine as you promise to represent her well and hurry to the elevator, curiosity further heightened as to what you're about to do.<br>
<br>
<<printThought "I thought class was finished... but I guess working for Social Interaction Service Syndicate Inc. is a constant learning situation.">><br>
<br>
[<<moveTo "event_headgirl_mc_2" 'Hurry down to see what <<=setup.getNpcName("npc_development","formal")>> has for you.' 300>>]
</div>/*#
#desc: mc head girl test introduction
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.topics={}>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You arrive at <<=ps(setup.getNpcName("npc_development","formal"))>> Classroom to find your fellow students in uniform and lined up, as if for duty.<br>
<br>
<<if $npc_development.flags.headGirl.headGirl == "mc">>
"@@.npc_development;Welcome, Head Girl <<=$player.last_name>>.@@" <<=setup.getNpcName("npc_development","formal")>> states, as you fellow students curtsy to you in unison.<br>
<br>
"@@.npc_development;After some conferring with <<=setup.getNpcName("npc_manager","formal")>> in regards to you explorations in taking on greater authority at work I have a special exercise that will test your skills of leadership, prioritisation, as well as some of what we focused on in class.@@"
<<else>>
"@@.npc_development;Welcome, <<=$player.last_name>>. While you did not put yourself forward as head girl during class, <<=setup.getNpcName("npc_manager","formal")>> informs me that you have been exploring how to take greater responsibilities, so we decided a little management training course with your fellow students would be a useful learning experience.@@" <<=setup.getNpcName("npc_development","formal")>> states, as you fellow students curtsy to you in unison.
<</if>>
<br><br>
<<=setup.getNpcName("npc_development","formal")>> smiles and your heart beats faster. "@@.npc_development;Being a <<=setup.getSecretaryTitle()>> here at Social Interaction Service Syndicate Inc. is challenge enough, but even moreso is juggling the intricate web of responsibilities when something goes wrong. Today we will be simulating exactly such a situation. I have setup several scenarios, you must allocate your resources to address things in as optimal manner as you can. Now, with that out of the way, let us proceed.@@"<br>
<br>
You listen intently as she lists off your challenges.<br>
<br>
"@@.npc_development;First up, a Manager has a broken chair. You will need to come up with a solution, or a way to expedite the maintenance request. Second, one of the elevators has become stuck with several employees stuck inside. While we wait for service it would be good to provide... service to the employees stuck therein to keep panic from developing. Third there is an important client who is showing significant reticence in signing a contract. As if these emergencies were not bad enough, there are some new Secretaries who need onboarding. The penultimate problem is a junior executive who is scheduled to give a major presentation, <<he>> needs help calming down. And, finally, in another conference room, the projector bulb has gone out, someone needs to entertain people while things get fixed.@@"<br>
<br>
You glance across your temporary subordinates, each looking excited and ready to obey your directives.<br>
<br>
<<=setup.getNpcName("npc_development","formal")>> smiles. "@@.npc_development;Five tasks, four highly trained Secretaries... plus yourself. Allocate your resources well, your challenge begins... now.@@"<br>
<br>
[<<moveTo "event_headgirl_mc_3" 'Talk to your fellow students about their individual expertise.' 60 "<<set $scene.talk='none'>>">>]<br>
[<<moveTo "event_headgirl_mc_4" 'You are ready to announce your assignments.' 180>>]
</div>/*#
#desc: mc head girl test, talk to friends
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.topics[$scene.talk] = true>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.talk>>
<<case 'none'>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false)>>
<<case 'futa'>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_futa","npc_futa_student")>>
<<case 'sexdoll'>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_sexdoll","npc_sexdoll_student")>>
<<case 'hucow'>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_hucow","npc_hucow_student")>>
<<case 'sissy_secretary'>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_student")>>
<<case 'pr_sissy'>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_pr_sissy","npc_pr_sissy_student")>>
<</switch>>
<div id="invframe" class="scrolltext">
<<switch $scene.talk>>
<<case 'none'>>
You consider your "troops" and their individual expertise...
<<case 'futa'>>
You ask <<=setup.getNpcName("npc_futa","full")>> for her self-assessment. "@@.npc_futa;I'd say what would set me apart from the others is that I've been trained in dominance... and that I have a massive, un-caged <<getWordPenis false>>.@@"
<<case 'sexdoll'>>
You ask <<=setup.getNpcName("npc_sexdoll","first")>> for her self-assessment. "@@.npc_sexdoll;My training has entirely been focused on my sexual skills along with other methods of employee entertainment.@@"
<<case 'hucow'>>
You ask <<=setup.getNpcName("npc_hucow","full")>> for her self-assessment. "@@.npc_hucow;I'd say my biggest skill is being able to handle stringent bondage<<if $fetish.milking>>... and that I produce milk, obviously<</if>>.@@"
<<case 'sissy_secretary'>>
You ask <<=setup.getNpcName("npc_sissy_secretary","first")>> for her self-assessment. "@@.npc_sissy_secretary;Working for <<=setup.getNpcName("npc_rival","formal")>>, <<he npc_rival>> has prioritised perfecting my skills at bondage and sex.@@"
<<case 'pr_sissy'>>
You ask <<=setup.getNpcName("npc_pr_sissy","formal")>> for her self-assessment. "@@.npc_pr_sissy;I think what would set me apart is my experience with customers and my expertise at crisis management and company policy.@@"
<<default>>
ERROR: unexpected scene.talk <<=$scene.talk>>
<</switch>>
<br><br>
<<if $scene.topics.futa>>
[@@.link_locked;You already discussed <<=ps(setup.getNpcName("npc_futa","full"))>> skills at dominance and having a massive cock.@@]<br>
<<else>>
[<<moveTo "event_headgirl_mc_3" 'Talk to <<=setup.getNpcName("npc_futa","full")>>.' 60 "<<set $scene.talk='futa'>>">>]<br>
<</if>>
<<if $scene.topics.sexdoll>>
[@@.link_locked;You already discussed <<=ps(setup.getNpcName("npc_sexdoll","first"))>> skills at sex and other forms of entertaining.@@]<br>
<<else>>
[<<moveTo "event_headgirl_mc_3" 'Talk to <<=setup.getNpcName("npc_sexdoll","first")>>.' 60 "<<set $scene.talk='sexdoll'>>">>]<br>
<</if>>
<<if $scene.topics.hucow>>
[@@.link_locked;You already discussed <<=ps(setup.getNpcName("npc_hucow","full"))>> skills at <<if $fetish.milking>>producing milk and <</if>>bondage.@@]<br>
<<else>>
[<<moveTo "event_headgirl_mc_3" 'Talk to <<=setup.getNpcName("npc_hucow","full")>>.' 60 "<<set $scene.talk='hucow'>>">>]<br>
<</if>>
<<if $scene.topics.sissy_secretary>>
[@@.link_locked;You already discussed <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> skills at bondage and sex.@@]<br>
<<else>>
[<<moveTo "event_headgirl_mc_3" 'Talk to <<=setup.getNpcName("npc_sissy_secretary","first")>>.' 60 "<<set $scene.talk='sissy_secretary'>>">>]<br>
<</if>>
<<if $scene.topics.npc_pr_sissy>>
[@@.link_locked;You already discussed <<=ps(setup.getNpcName("npc_pr_sissy","formal"))>> skills at customer and crisis management and company policy.@@]<br>
<<else>>
[<<moveTo "event_headgirl_mc_3" 'Talk to <<=setup.getNpcName("npc_pr_sissy","formal")>>.' 60 "<<set $scene.talk='pr_sissy'>>">>]<br>
<</if>>
[<<moveTo "event_headgirl_mc_4" 'You are ready to announce your assignments.' 180>>]
</div>/*#
#desc: mc head girl test, assignments
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.head_girl_action = {
"futa" : "chair",
"sexdoll" : "chair",
'hucow' : "chair",
"sissy_secretary" : "chair",
"pr_sissy" : "chair",
"mc" : "chair"
}>>
<<set $scene.head_girl_result = {
"futa" : false,
"sexdoll" : false,
'hucow' : false,
"sissy_secretary" : false,
"pr_sissy" : false,
"mc" : false
}>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false)>>
<div id="invframe" class="scrolltext">
You consider how to allocate resources...<br>
<br>
<<include "headGirlConfig">>
[<<moveTo "event_headgirl_mc_5" "Let's roll!" 0>>]
</div><<=ps(setup.getNpcName("npc_futa","full"))>> assignment:<br>
<label>Broken chair: <<radiobutton "$scene.head_girl_action.futa" "chair" autocheck>></label>
<label>The stuck elevator: <<radiobutton "$scene.head_girl_action.futa" "elevator" autocheck>></label>
<label>The challenging client: <<radiobutton "$scene.head_girl_action.futa" "client" autocheck>></label>
<label>The new hires: <<radiobutton "$scene.head_girl_action.futa" "hires" autocheck>></label>
<label>The nervous junior executive: <<radiobutton "$scene.head_girl_action.futa" "executive" autocheck>></label>
<label>The broken projector: <<radiobutton "$scene.head_girl_action.futa" "project" autocheck>></label><br>
<br>
<<=ps(setup.getNpcName("npc_sexdoll","first"))>> assignment:<br>
<label>Broken chair: <<radiobutton "$scene.head_girl_action.sexdoll" "chair" autocheck>></label>
<label>The stuck elevator: <<radiobutton "$scene.head_girl_action.sexdoll" "elevator" autocheck>></label>
<label>The challenging client: <<radiobutton "$scene.head_girl_action.sexdoll" "client" autocheck>></label>
<label>The new hires: <<radiobutton "$scene.head_girl_action.sexdoll" "hires" autocheck>></label>
<label>The nervous junior executive: <<radiobutton "$scene.head_girl_action.sexdoll" "executive" autocheck>></label>
<label>The broken projector: <<radiobutton "$scene.head_girl_action.sexdoll" "project" autocheck>></label><br>
<br>
<<=ps(setup.getNpcName("npc_hucow","full"))>> assignment:<br>
<label>Broken chair: <<radiobutton "$scene.head_girl_action.hucow" "chair" autocheck>></label>
<label>The stuck elevator: <<radiobutton "$scene.head_girl_action.hucow" "elevator" autocheck>></label>
<label>The challenging client: <<radiobutton "$scene.head_girl_action.hucow" "client" autocheck>></label>
<label>The new hires: <<radiobutton "$scene.head_girl_action.hucow" "hires" autocheck>></label>
<label>The nervous junior executive: <<radiobutton "$scene.head_girl_action.hucow" "executive" autocheck>></label>
<label>The broken projector: <<radiobutton "$scene.head_girl_action.hucow" "project" autocheck>></label><br>
<br>
<<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> assignment:<br>
<label>Broken chair: <<radiobutton "$scene.head_girl_action.sissy_secretary" "chair" autocheck>></label>
<label>The stuck elevator: <<radiobutton "$scene.head_girl_action.sissy_secretary" "elevator" autocheck>></label>
<label>The challenging client: <<radiobutton "$scene.head_girl_action.sissy_secretary" "client" autocheck>></label>
<label>The new hires: <<radiobutton "$scene.head_girl_action.sissy_secretary" "hires" autocheck>></label>
<label>The nervous junior executive: <<radiobutton "$scene.head_girl_action.sissy_secretary" "executive" autocheck>></label>
<label>The broken projector: <<radiobutton "$scene.head_girl_action.sissy_secretary" "project" autocheck>></label><br>
<br>
<<=ps(setup.getNpcName("npc_pr_sissy","formal"))>> assignment:<br>
<label>Broken chair: <<radiobutton "$scene.head_girl_action.npc_pr_sissy" "chair" autocheck>></label>
<label>The stuck elevator: <<radiobutton "$scene.head_girl_action.npc_pr_sissy" "elevator" autocheck>></label>
<label>The challenging client: <<radiobutton "$scene.head_girl_action.npc_pr_sissy" "client" autocheck>></label>
<label>The new hires: <<radiobutton "$scene.head_girl_action.npc_pr_sissy" "hires" autocheck>></label>
<label>The nervous junior executive: <<radiobutton "$scene.head_girl_action.npc_pr_sissy" "executive" autocheck>></label>
<label>The broken projector: <<radiobutton "$scene.head_girl_action.npc_pr_sissy" "project" autocheck>></label><br>
<br>
Your assignment:<br>
<label>Broken chair: <<radiobutton "$scene.head_girl_action.mc" "chair" autocheck>></label>
<label>The stuck elevator: <<radiobutton "$scene.head_girl_action.mc" "elevator" autocheck>></label>
<label>The challenging client: <<radiobutton "$scene.head_girl_action.mc" "client" autocheck>></label>
<label>The new hires: <<radiobutton "$scene.head_girl_action.mc" "hires" autocheck>></label>
<label>The nervous junior executive: <<radiobutton "$scene.head_girl_action.mc" "executive" autocheck>></label>
<label>The broken projector: <<radiobutton "$scene.head_girl_action.mc" "project" autocheck>></label><br>
<br>/*#
#desc: mc head girl test, check conflicts
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _actions = []>>
<<set _actions.pushUnique($scene.head_girl_action.futa)>>
<<set _actions.pushUnique($scene.head_girl_action.sexdoll)>>
<<set _actions.pushUnique($scene.head_girl_action.hucow)>>
<<set _actions.pushUnique($scene.head_girl_action.sissy_secretary)>>
<<set _actions.pushUnique($scene.head_girl_action.npc_pr_sissy)>>
<<set _actions.pushUnique($scene.head_girl_action.mc)>>
<<if _actions.length == 6>>
<<moveTo "event_headgirl_mc_6">>
<</if>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false)>>
<div id="invframe" class="scrolltext">
You review your chosen assignments and realise you have a conflict. There are five girls, plus yourself, and six assignments, you can't double book anything, or anyone.<br>
<br>
<<include "headGirlConfig">>
[<<moveTo "event_headgirl_mc_5" "That should do it..." 0>>]
</div>/*#
#desc: mc head girl test, execution
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 1800)>>
<<switch $scene.head_girl_action.mc>>
<<case 'chair'>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_STRANGER>>
<<case 'elevator'>>
<<applyExperience 'bimbofication' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'anal' 12 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 12 'terrible' $SEEN_STRANGER>>
<<case 'client'>>
<<if setup.getTotalValue("dominance") > 0>>
<<applyExperience 'dominance' 18 'terrible' $SEEN_STRANGER>>
<</if>>
<<case 'executive'>>
<<if $player.body_ref.milkProduction > 0>>
<<set $player.timebased.milking.milk_supply = Math.max(0, $player.timebased.milking.milk_supply-30)>>
<<elseif $player.body.penissize[0] >= 5>>
<<playerOrgasm>>
<</if>>
<<case 'hires'>>
<<applyExperience 'submission' 18 'terrible' $EXPOSED>>
<<case 'project'>>
<<applyExperience 'dexterity' 18 'terrible' $EXPOSED>>
<</switch>>
<</if>>
<<switch $scene.head_girl_action.mc>>
<<case 'chair'>>
<<set $player.location = "An Office">>
<<case 'elevator'>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<case 'client' 'executive' 'hires' 'project'>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Conference Room">>
<</switch>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.head_girl_action.mc>>
<<case 'chair'>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<<case 'elevator'>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<<case 'client'>>
<<createAdvBGR "./images/locations/conference_room.png">>
<<case 'executive'>>
<<createAdvBGR "./images/locations/conference_room.png">>
<<case 'hires'>>
<<createAdvBGR "./images/locations/conference_room.png">>
<<case 'project'>>
<<createAdvBGR "./images/locations/conference_room.png">>
<</switch>>
<div id="invframe" class="scrolltext">
After sending your charges on their way you hurry off to your own assignment,
<<switch $scene.head_girl_action.mc>>
<<case 'chair'>>
where you are quickly, and tightly, bound to fill in as the manager's chair.
<<if setup.getTotalValue("bondage") > 15>>
<<set $scene.head_girl_result.mc = true>>
Your prior experience in such matters, and expertise with stringent bondage, in general, makes you an excellent, and obedient, seat. The manager is actually sorry to see you go, asserting that you provided them with an ergonomic and productive afternoon as
<<else>>
Your comfort in such stringent bondage is insufficient for the task, and the manager seems quite eager to swap you out for their replacement chair, dismissing you curtly after
<</if>>
the maintenance workers unbind you and assemble a replacement for the previously broken seat.
<<case 'elevator'>>
You're lowered in through the top of the elevator car and immediately set to work, the half dozen trapped employees making space for you in the centre of the claustrophobic chamber as you
<<if setup.getTotalValue("bimbofication") > 15>>
<<set $scene.head_girl_result.mc = true>>
dive right in to showing just how much of an eager slut you are.<br>
<br>
Some stroking, sucking and fingering sets the mood, but the poor employees have been cooped up for a while so you quickly bring in the "big guns" — bent over and balancing on one leg and moaning like a pornstar as you suck, lick and get railed in <<if $player.body_ref.vagina>>all three<<else>>both<</if>> holes. By the time maintenance finishes up and the elevator lurches into motion you've satisfied everyone at least once, and your fellow employees file out, not traumatised by their experience, but invigorated and ready to get back to work.
<<else>>
try to keep up morale. Despite your best efforts, however, you just aren't a big enough slut to put on a good enough performance. Eventually the elevator lurches into motion and the employees file off, your poor efforts leaving most of them in sour moods, certain to have bad, poor-performance days, even on top of the valuable working time that was wasted in the elevator.
<</if>>
<<case 'client'>>
You stride into the conference room with the problem client
<<if setup.getTotalValue("dominance") > 15>>
<<set $scene.head_girl_result.mc = true>>
like a whirlwind. In minutes you have put the client in their place and drilled through the bullshit to all but command them as to what Social Interaction Service Syndicate Inc. can do for them. Shortly after that you have a signed contract, and you make a quick exit before your presence has the client signing away any more... like themselves to be your slave.
<<else>>
nervously. You try to sound out their sticking points, but the client seems more interested in ranting and going off on tangents and you lack the force of personality to keep them on track and reach a deal. Eventually the client storms off, seemingly as frustrated as you are, and ready to explore business opportunities elsewhere.
<</if>>
<<case 'executive'>>
<<if $player.body_ref.milkProduction > 0>>
<<set $scene.head_girl_result.mc = true>>
From the look in the junior executive's eyes when they see your <<=setup.calcBreastSize()>> <<getWordBreasts>> you know what you need to do. Cradling them in your lap as they suckle away at your bountiful milk-producing orbs you watch the stress melt away.<br>
<br>
With a wide, confident grin on their face they lick their lips clean and march off to their presentation, promising to do you proud.
<<elseif $player.body.penissize[0] >= 5>>
<<set $scene.head_girl_result.mc = true>>
From the moment you walk into the room, the junior executive's eyes fixate on the bulge between your legs... and you know exactly what you need to do to "calm" <<his>> nerves.<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>
Your chastity <<if setup.isCage()>>cage<<else>>belt<</if>> temporarily unlocked
<<else>>
You
<</if>>
bend the junior executive over a conference table and give them the business. You give it to them hard and deep, making them moan as your
<<switch $player.body.penissize[0]>>
<<case 5>>
large
<<case 6>>
massive <<if $player.body_ref.knot && $player.body_ref.horsecock>> dragon-<<elseif $player.body_ref.horsecock>>horse-<<elseif $player.body_ref.knot>>dog-<</if>>cock
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
stretches their holes... and pushes away their nervousness. They may be walking a little funny on their way to their presentation... but they're filled with<<if $player.body_ref.cumProduction>> "determination"... and your cum.<<else>> "determination." <</if>>
<<else>>
You try to calm the junior executive's nerves and get them back on track... but you seem to be missing "it" and then end up going off to their presentation still ;lacking confidence and with their stomach doing flip-flops.
<</if>>
<<case 'hires'>>
The group of new hires is already nervous by the time you arrive, futzing with their skimpy clothing and struggling with the tightness of their chastity devices, and the size of their butt-plugs.
<<if setup.getTotalValue("submission") > 15>>
<<set $scene.head_girl_result.mc = true>>
Fortunately, your submissive expertise is there to save the day, as you eloquently explain how fortunate they are to have joined Social Interaction Service Syndicate Inc., your authentic joy proving just the trick to convince them that their new uniforms, and equipment are just what they need to be successful in their new positions.
<<else>>
You try to sell them on what an opportunity employment at Social Interaction Service Syndicate Inc. presents... but you can't quite articulate the joy of corporate submission in a way that really sells it. By the time you leave you have to reluctantly agree that some of them are probably going to wash out soon, which seems like such a waste.
<</if>>
<<case 'project'>>
You arrive at the conference room and quickly get to work,
<<if setup.getTotalValue("dexterity") > 15>>
<<set $scene.head_girl_result.mc = true>>
covering for the delayed presentation by showing off your agility with a solo dance number, your nimble skills, and stunning beauty, holding everyone's attention, even ending with a standing ovation before the bulb is replaced and you leave with a bow.
<<else>>
attempting to entertain and distract with a brief performance... but your dancing skills are insufficient for the task as you spot several employees yawning or checking their phones before the projector bulb is replaced and you a quickly shuffled off the stage.
<</if>>
<<default>>
ERROR: unexpected scene.head_girl_action.mc <<=$scene.head_girl_action.mc>>
<</switch>>
<br><br>
[<<moveTo "event_headgirl_mc_7" "Time to see how the rest of your assignments fared..." 180>>]
</div>/*#
#desc: mc head girl test, reports
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_futa","full")>> is the first to report in her status.
<<switch $scene.head_girl_action.futa>>
<<case 'chair'>>
<<set $scene.head_girl_result.futa = true>>
"@@.npc_futa;I focused on the root of the problem, a quick trip to maintenance, and a little authoritarian nudge and the chair was repaired and its owner able to return to work without further incident.@@"
<<case 'elevator'>>
"@@.npc_futa;I apologise, but, though I did my best, there were too many people in the elevator to keep on top of... my skills in such regards lend themselves to more one on one interactions, I did what I could to orchestrate an orgy, but there just was not enough room in the elevator to keep everyone properly engaged and distracted.@@"
<<case 'client'>>
<<set $scene.head_girl_result.futa = true>>
"@@.npc_futa;It seems that our troublesome client just needed the proper push to get past their babbling distractions and sign the contract. I was able to provide sufficient clarity, and the company has been provided with a fresh revenue stream.@@"
<<case 'executive'>>
<<set $scene.head_girl_result.futa = true>>
"@@.npc_futa;A good, hard, dicking was just what our junior executive needed to let go of their stress and focus on the presentation. Once I pounded some sense into them, well... they went off to their presentation happy and motivated.@@"
<<case 'hires'>>
"@@.npc_futa;I am afraid that I may have somewhat scared off the new hires. I am sure their remaining orientation will put them back on track... but my efforts seem to have made that a harder challenge than it might have been had someone with a more... soft touch been there to greet them.@@"
<<case 'project'>>
"@@.npc_futa;It would seem that, despite my recent "coming out of my shell"... I still suffer from the odd stage fright. Lacking a concrete plan to work off of I was unable to keep the meeting attendees engaged while maintenance resolved the burnt out bulb.@@"
<<default>>
ERROR: unexpected scene.head_girl_action.futa <<=$scene.head_girl_action.futa>>
<</switch>>
<br><br>
You turn to <<=setup.getNpcName("npc_sexdoll","first")>> and she blinks for a moment before orienting herself and delivering her report.
<<switch $scene.head_girl_action.sexdoll>>
<<case 'chair'>>
"@@.npc_sexdoll;I tried to help... but I'm more used to constant fucking than such rigid predicament bondage, and I fear I made for a less-than-comfortable seat while we waited for maintenance.@@"
<<case 'elevator'>>
<<set $scene.head_girl_result.sexdoll = true>>
"@@.npc_sexdoll;The elevator was, like, so fun! So tight and intimate, with me as the centre of attention! I threw my whole body into making sure everyone was entertained... and then, once things were running, I found the maintenance lady and made sure she was compensated for her efforts. The taste of her pussy was as strong as she was, such a great end to a fun afternoon!@@"
<<case 'client'>>
"@@.npc_sexdoll;Unfortunately I just couldn't convince the client to sign... maybe if I understood like, contracts, and stuff... but even after I made them cum, like... three times, they just walked off and said they weren't interested in working with our company...@@"
<<case 'executive'>>
"@@.npc_sexdoll;I, like, tried to calm the junior executive down for their presentation... but fucking my <<if $fetish.sissy>>sissy <</if>>ass just seemed to get them more excited, and even one of my famous cock-socket blowjobs didn't get them past their stage fright!@@"
<<case 'hires'>>
<<set $scene.head_girl_result.sexdoll = true>>
"@@.npc_sexdoll;Those new hires were, like, so hot! They were pretty nervous about their company-issue plugs and chastity, but I sorted them out by telling them all about how wonderful it is working here at Social Interaction Service Syndicate Inc.!@@"
<<case 'project'>>
<<set $scene.head_girl_result.sexdoll = true>>
"@@.npc_sexdoll;When you get down to it, most of my duties at this company are about entertainment. It may not have been sex, but I was able to put on a nice little one-<<if $fetish.sissy>>sissy<<else>>woman<</if>> show to keep everyone entertained while the projector bulb was fixed.@@"
<<default>>
ERROR: unexpected scene.head_girl_action.sexdoll <<=$scene.head_girl_action.sexdoll>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_hucow","full")>> steps forward to give her report.
<<switch $scene.head_girl_action.hucow>>
<<case 'chair'>>
<<set $scene.head_girl_result.hucow = true>>
"@@.npc_hucow;Being bound up tight and used as a chair is such a comfortable way to spend the afternoon! I'm feeling really invigorated<<if $fetish.milking>> and ready for my evening milking,<</if>> and the manager said <<he>> was able to stay productive while we waited for facilities to deliver a new chair.@@"
<<case 'elevator'>>
<<set $scene.head_girl_result.hucow = true>>
"@@.npc_hucow;It's tough keeping that many people calm and entertained, but <<if $fetish.milking>>I was able to keep everyone hydrated and their blood sugar up in between<<else>>I was able to keep it together through<</if>> all the sucks, fucks and boob-jobs. I think a few of them would have preferred if maintenance was a bit slower, actually!@@"
<<case 'client'>>
"@@.npc_hucow;I tried to figure out what the client was looking for... but their demands seemed almost irrational, and I just couldn't get to the bottom of it... I guess I belong in the lab, not in sales.@@"
<<case 'executive'>>
<<if $fetish.milking>>
<<set $scene.head_girl_result.hucow = true>>
"@@.npc_hucow;Some nice fresh milk proved to be just the thing to help our junior executive calm down, clear <<his>> mind, and be ready for <<his>> presentation.@@"
<<else>>
"@@.npc_hucow;I tried to help the junior executive calm down, for <<his>> presentation, but even giving <<him>> my best boob-job <<he>> just couldn't focus or relax.@@"
<</if>>
<<case 'hires'>>
"@@.npc_hucow;I don't know if they were jealous of my breasts, or scared... but I just couldn't seem to get through to the new hires, or convince them that their company-issue chastity devices and butt-plugs are something that they'll come to appreciate.@@"
<<case 'project'>>
"@@.npc_hucow;I tried to keep people distracted and entertained while we waited for the projector to get fixed... but it's really not my expertise and, well... as beautiful as my tits are, that just isn't enough to hold attention around here...@@"
<<default>>
ERROR: unexpected scene.head_girl_action.hucow <<=$scene.head_girl_action.hucow>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_sissy_secretary","first")>> proudly gives her report.
<<switch $scene.head_girl_action.sissy_secretary>>
<<case 'chair'>>
<<set $scene.head_girl_result.sissy_secretary = true>>
"@@.npc_sissy_secretary;I have plenty of experience working as a human chair, supporting the manager until facilities took care of things was no trouble at all, and I stuck around to give them a blowjob in the new seat to make sure everything was working properly.@@"
<<case 'elevator'>>
<<set $scene.head_girl_result.sissy_secretary = true>>
"@@.npc_sissy_secretary;It was something of a challenge, what with the tight quarters and all, but I focused on making everyone feel special and nobody left out as I sucked, licked, and fucked my way until maintenance got everything running again.@@"
<<case 'client'>>
"@@.npc_sissy_secretary;Unfortunately, I wasn't able to close the sale... I really haven't had much practice with that sort of thing in my current position... <<=setup.getNpcName("npc_rival","formal")>> says the only reason I should open my mouth in front of a customer is to suck them off.@@"
<<case 'executive'>>
"@@.npc_sissy_secretary;I tried to help the junior executive prepare for their meeting the same way I help <<=setup.getNpcName("npc_rival","formal")>>, but a blowjob while they did a dry-run didn't calm them down at all...@@"
<<case 'hires'>>
"@@.npc_sissy_secretary;I guess I need more practice dealing with people who haven't embraced the company and it's methods, dealing with the new hires, well... I just couldn't relate to their lack of ambition or willingness to embrace such a wonderful opportunity!@@"
<<case 'project'>>
"@@.npc_sissy_secretary;I really haven't been trained for public speaking or presentations... public sex, sure, but holding the attention of a conference room full of impatient coworkers? Well... apparently that's not in my skillset.@@"
<<default>>
ERROR: unexpected scene.head_girl_action.sissy_secretary <<=$scene.head_girl_action.sissy_secretary>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_pr_sissy","first")>> goes last to explain her efforts.
<<switch $scene.head_girl_action.npc_pr_sissy>>
<<case 'chair'>>
<<set $scene.head_girl_result.npc_pr_sissy = true>>
"@@.npc_pr_sissy;Facilities is always slower than you want, but, fortunately, I know a <<guy>>, so I was able to expedite things and get that faulty chair replaced fast as you like.@@"
<<case 'elevator'>>
<<set $scene.head_girl_result.npc_pr_sissy = true>>
"@@.npc_pr_sissy;A stuck elevator is always a potential powder keg, but I'm trained in crisis management. Between that, and deploying some of the skills we learned in class, well... everyone stayed calm, and went away satisfied once the elevator was moving again.@@"
<<case 'client'>>
<<set $scene.head_girl_result.npc_pr_sissy = true>>
"@@.npc_pr_sissy;Working in public relations, problem clients are something I have to deal with all the time, so it was no problem to drill down past the customer want to the customer NEED and then convince them that Social Interaction Service Syndicate Inc. is perfectly positioned and prepared to deliver that and more.@@"
<<case 'executive'>>
<<set $scene.head_girl_result.npc_pr_sissy = true>>
"@@.npc_pr_sissy;Dealing with presenters getting nervous before a demo is something I've faced before. It took a bit of work, but between a massage, some judicious edging and encouraging words I was able to dispel their stress and get them properly focused on the task ahead.@@"
<<case 'hires'>>
<<set $scene.head_girl_result.npc_pr_sissy = true>>
"@@.npc_pr_sissy;I just love talking to new employees! Such a wonderful opportunity to show them the best of what Social Interaction Service Syndicate Inc. has to offer. They were a bit put off from having just been introduced to their company-provided chastity and plugs, but I was able to smooth that out with a nice team-building edging exercise.@@"
<<case 'project'>>
<<set $scene.head_girl_result.npc_pr_sissy = true>>
"@@.npc_pr_sissy;Vamping for a presenter that didn't show up, or setup that's taking longer than expected is all in a days work in the PR department, so keeping things rolling while the bulb was replaced was no problem, and the team-building exercise I ran them through means that the time didn't go to waste in the slightest!@@"
<<default>>
ERROR: unexpected scene.head_girl_action.npc_pr_sissy <<=$scene.head_girl_action.npc_pr_sissy>>
<</switch>>
<br><br>
[<<moveTo "event_headgirl_mc_8" "Final results." 180>>]
</div>/*#
#desc: mc head girl test, results
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.count = 0>>
<<if $scene.head_girl_result.mc>>
<<set $scene.count += 1>>
<</if>>
<<if $scene.head_girl_result.futa>>
<<set $scene.count += 1>>
<</if>>
<<if $scene.head_girl_result.sexdoll>>
<<set $scene.count += 1>>
<</if>>
<<if $scene.head_girl_result.hucow>>
<<set $scene.count += 1>>
<</if>>
<<if $scene.head_girl_result.sissy_secretary>>
<<set $scene.count += 1>>
<</if>>
<<if $scene.head_girl_result.npc_pr_sissy>>
<<set $scene.count += 1>>
<</if>>
<<if $scene.count == 6>>
<<set _nextDate = setup.setNextDate($now, 7, 14, 0)>>
<<addWorkEvent 'headgirl_commend' _nextDate>>
<</if>>
<</if>>
<<set $player.location = '<<=setup.getNpcName("npc_development","formal")>> Classroom'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.getStudentImage(false) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_development","formal")>> sighs and shakes her head.
<<switch $scene.count>>
<<case 1>>
"@@.npc_development;Only a single successful assignment... very disappointing. Of course you still have your skills as an <<=setup.getSecretaryTitle()>>, but it would seem that rising into management would just be Peter Principle waiting to happen.@@"<br>
<br>
You sigh in frustration as your friends comfort you, and
<<case 2 3 4>>
"@@.npc_development;A few successful assignments... but also several not. It would seem that you have quite a bit more to learn if you intend to pursue a future in management.@@"<br>
<br>
You try to look on the bright side of your partial success, remembering to thank each of them for their efforts, but soon
<<case 5>>
"@@.npc_development;I must say, your assignments were very good... with just a single mistake keeping you from perfection. In any other company this might be sufficient to be considered for management opportunities but here at Social Interaction Service Syndicate Inc., well... I set the bar a bit higher.@@"<br>
<br>
You try to hide your frustration as you thank all of your friends for their efforts, re-affirming that you know they each did their best and that any blame falls on yourself. A few minutes of note-comparison later and
<<case 6>>
"@@.npc_development;Perfection. You showed not just expertise in assignments, but personal skill, as well, in making sure each of the disparate problems before you were dealt with efficiently, and effectively. This is what the head girl program always hopes to be... but seldom have I had a student quite so skilled as yourself. Congratulations!@@"<br>
<br>
You beam with pride as your friends congratulate your success while you thank them for the roles they each played in making it all possible... but then
<<default>>
ERROR: unexpected scene.count <<=$scene.count>>
<</switch>>
it's back to the office for all of you to resume your "normal" duties.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to your desk and your duties there." 180 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager rewards headgirl
#status: RELEASED 0.8.9.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> summons you to her office with a smile. "@@.npc_manager;So! I do not wish to keep you from your duties for long, but I have been keeping up with your efforts under <<=setup.getNpcName("npc_development","formal")>> and, well... who would have thought there was such a skilled manager lurking behind that cute face? Obviously you are FAR too vital to my own productivity to re-assign, but I wanted to present you with this as a concrete acknowledgement of your expertise.@@"<br>
<br>
She presents you with a framed diploma declaring you a graduate of <<=setup.getNpcName("npc_development","formal")>> and an "Expert A-SLUT, Superior <<if $fetish.sissy>>SISSI <</if>>Secretary and Lovely Leader." There are signatures at the bottom from both <<=setup.getNpcName("npc_manager","formal")>> and <<=setup.getNpcName("npc_development","formal")>>.<br>
<br>
You straighten in your heels with pride as <<=setup.getNpcName("npc_manager","formal")>> leads you back to your desk and helps you hang the diploma behind your seat.<br>
<br>
"@@.npc_manager;Well earned,@@" she states with a closing nod before disappearing into her inner office.<br>
<br>
You take a few more moments to gaze with pride at your trophy before slipping back into your chair and settling back in to work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 180 "<<completeWorkEvent>>">>]
</div>/*#
#desc: call inviting for cds merge party
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<<set _nextDate = setup.getNextDayOfWeek($now, 5, 19, 0, false)>>
<<if $npc_admin.flags.evil > 0>>
<<addTaskById 'cds_drinking_tech' _nextDate>>
<<else>>
<<addTaskById 'cds_drinking_admin' _nextDate>>
<</if>>
<<removeRandomEvent 'elevator_home' 'cds_drink'>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from
<<if $npc_admin.flags.evil > 0>>
<<if $phoneList.includes('npc_technician')>>
<<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
<<if $currentTasks.hasOwnProperty('technician_cafe_1') && $currentTasks.technician_cafe_1.finished>>
"@@.npc_technician;Hey! So I guess you heard the news?@@"
<<else>>
"@@.npc_technician;Hi, <<=$player.first_name>>, right? I heard you changed your name... and some other stuff. So much has happened since we were working together, I gave <<=setup.getNpcName("npc_admin","first")>> my number for you to give me a call... but I guess you've been up to a lot...@@" She trails off and you feel a moment of sadness that you never reached out to her since starting your new job.<br>
<br>
"@@.npc_technician;Anyway... I assume you heard the news?@@"
<</if>>
<br><br>
You're a bit confused and ask what she's talking about?<br>
<br>
"@@.npc_technician;Right, so... Cloud Data Services is no more. The last of the merger just finished up and we're now all, officially, employees of Social Interaction Service Syndicate Inc. I was thinking... you wanna go out for drinks, pour one out for the old place? I was gonna invite your friend <<=setup.getNpcName("npc_admin","first")>>, too... but, well... I dunno what's happened to <<him npc_admin>>, ever since <<he npc_admin>> moved upstairs <<hes npc_admin>> been... different...@@"<br>
<br>
Her voice trails off and you wince at the memory of seeing <<=setup.getNpcName("npc_admin","first")>> dragged away... and the even more disturbing memory of when <<he npc_admin>> came back.<br>
<br>
"@@.npc_technician;Anyway, I was thinking Friday, the Usual Place? I remember <<=setup.getNpcName("npc_admin","first")>> took the team there once to celebrate a milestone, seems appropriate to pour one out in memory, y'know? Anyway, I'll see you there?@@"<br>
<br>
You reply you'll try to make it and she hangs up.
<<else>>
ERROR: unexpected, submit a save and I'll actually write this variant...
<</if>>
<<else>>
<<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>... so I dunno if you heard but the final piece of the Cloud Data Merger finished... which means there is no CDS anymore. Everyone has been folded in to Social Interaction Service Syndicate Inc. I was thinking... you wanna go out for drinks, pour one out for the old place? I invited <<=setup.getNpcName("npc_technician","first")>> too, one last get together with the old crew at the Usual Place this Friday?@@"<br>
<br>
You reply that sounds great.<br>
<br>
"@@.npc_admin;Coo, coo... well, I'll see you then!@@" <<He npc_admin>> hangs up.
<</if>>
<br><br>
[<<moveTo "room_citymap" "Continue on your way." 60 "<<set $currentcall = false>>">>]
</div>/*#
#desc: call for failing to attend cds merge party
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from
<<if $npc_admin.flags.evil > 0>>
<<=setup.getNpcName("npc_technician","first")>>.<br>
<br>
"@@.npc_technician;Hey, you running late? Anyway I'm here at the Usual Place just drinking and waiting...@@"
<<else>>
<<=setup.getNpcName("npc_admin","first")>>.<br>
<br>
"@@.npc_admin;Hey <<callPlayer "npc_admin">>, you running late? <<=setup.getNpcName("npc_technician","first")>> and I are here reminiscing and stuff, you better hurry or you're gonna be stuck hearing just the boring stories!@@"
<</if>>
<br><br>
<<printThought "Something tells me that I don't want to miss this...">><br>
<br>
<<set _reason = setup.checkOutsideDecencyReason()>>
<<if $player.readytoleave || (_reason == "makeup_none" || _reason == "makeup_messy")>>
<<if _reason == "makeup_none">>
<<printThought "Crap, no makeup, but no time for that now.">><br>
<br>
<<elseif _reason == "makeup_messy">>
<<printThought "Crap, my makeup is a disaster but there's no time for that now.">><br>
<br>
<</if>>
<<if $npc_admin.flags.evil > 0>>
[<<moveTo "event_cds_drinking_noadmin_1" "Head to the bar." 300 "<<set $currentcall = false>>">>]
<<else>>
[<<moveTo "event_cds_drinking_1" "Head to the bar." 300 "<<set $currentcall = false>>">>]
<</if>>
<<else>>
<<include thoughts_home>><br>
<br>
[@@.link_locked;You are not properly dressed to head to the bar.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: start cds merge party meet-up
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.cancelProstitution = $currentTasks.hasOwnProperty("task_prostitution_final") && !$currentTasks.task_prostitution_final.finished>>
<<if $scene.cancelProstitution>>
<<deleteTask "task_prostitution_final">>
<</if>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_admin","first")>> and <<=setup.getNpcName("npc_technician","first")>> waves you over to a booth where a drink is already waiting to you.<br>
<br>
"@@.npc_admin;To us!@@" <<=setup.getNpcName("npc_admin","first")>> states, raising <<his npc_admin>> glass in a cheer. "@@.npc_admin;It may be no more, and really... it was just another company to get gobbled up... but it was where the three of us met.@@"<br>
<br>
"@@.npc_technician;I'll drink to that!@@" <<=setup.getNpcName("npc_technician","first")>> says, raising a glass as you join.<br>
<br>
As the glasses clink and you tilt back a swig you have a bit of a flashback, thinking back to how different it used to be, back before <<=setup.getNpcName("npc_manager","formal")>>, before <<=setup.getNpcName("npc_psychiatrist","formal")>>, before <<=setup.getNpcName("npc_boss","formal")>>...<br>
<br>
<<if $scene.cancelProstitution>>
As orders another round you lock gaze with the bartender. She raises an eyebrow, but smiles and shakes her head. Looks tonight's job is off and you can focus on your celebration.
<</if>>
You take another drink, trying to focus on the moment and listen as your friends reminisce about some of the good times back at Cloud Data Services...<br>
<br>
[<<moveTo "event_cds_drinking_2" "Continue." 7000>>]
</div>/*#
#desc: cds merge party meet-up turns serious
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You spend the evening swapping stories with your old friends, by silent agreement avoiding any talk about Social Interaction Service Syndicate Inc. as you focus on the old times, old coworkers and projects, meetings endured and "team-building" initiatives survived, going back and forth until booze-loosened tongues and the cloud of the future finally become too much to avoid.<br>
<br>
"@@.npc_technician;So I guess I should thank you, for the merger and all.@@" <<=setup.getNpcName("npc_technician","first")>> states, the first to address the present over the pass. "@@.npc_technician;Usually someone in my role would be considered "redundant"... but you really busted that muscly ass of yours to make sure that everyone would have a job after the merger.@@"<br>
<br>
"@@.npc_admin;It was the right thing to do, y'know? Firing someone just because of some silly buy-out that you had nothing to do with? Nah, that wouldn't be right, though...@@" <<=setup.getNpcName("npc_admin","first")>> trails off, glancing at you nervously as if <<he npc_admin>> wants to say more about the company.<br>
<br>
"@@.npc_technician;Though Social Interaction Service Syndicate Inc. is an immoral monolith that literally enslaves some of its so-called employees... and turns others into helplessly obedient fuck-slaves?@@"<br>
<br>
<<=ps(setup.getNpcName("npc_admin","first"))>> jaw drops and <<=setup.getNpcName("npc_technician","first")>> chuckles.<br>
<br>
"@@.npc_technician;What?
<<if $npc_technician.relationship.relationship_stage >= 2>>
Putting aside that I'm dating an Executive Secretary,
<</if>>
I'm the frelling Tech Wizard, you don't think I did some poking around? Speaking of which, you can feel free to talk here, between the noise of the bar and some jammers SOMEONE setup here, this area is a nice little pocket of safety where we can talk freely... unlike, well, anywhere in the work building. And I do mean ANYWHERE.@@"<br>
<br>
She leans in closer.<br>
<br>
[<<moveTo "event_cds_drinking_3" "Listen to what else she has to say..." 300>>]
</div>/*#
#desc: cds merge party technician suggests action
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;So, I mean, let's be frank, the company, and most of all, its CEO? It's fucking evil. Even by megacorp standards it's bad... and it's getting worse.@@" She glances between you and <<=setup.getNpcName("npc_admin","first")>>. "@@.npc_technician;Tell me I'm wrong. Tell me that, from the moment <<=$player.first_name>> was sabotaged and shipped upstairs that wheels haven't been turning on some sort of... I don't know, world-enslaving evil scheme?@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> breaks the silence with a sigh. "@@.npc_admin;Yeah... I mean, I guess I've been so focused on my job, on taking care of you and the other CDS refugees... I didn't consider the end-game. I know there are a bunch of political battles going on, <<=setup.getNpcName("npc_manager","other")>>, <<=setup.getNpcName("npc_nintendolls","formal")>>, now that Nintendolls is getting bought out too... but it's all circling around <<=setup.getNpcName("npc_boss","formal")>>. Whatever else... <<he npc_boss>> has to go, because <<he npc_boss>> ain't gonna stop until the whole world is at <<his npc_boss>> feet.@@" All eyes turn towards to you.<br>
<br>
"@@.npc_technician;So, my <<if $npc_technician.relationship.relationship_stage >= 2>>dear<<else>><<switch $npc_technician.flags.knowgender>><<case 'female'>>lady<<case 'male'>>dude<<default>>friend<</switch>><</if>>. You ready to finally take down the big bad?@@"<br>
<br>
[<<moveTo "event_cds_drinking_4" "You're in!" 300 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_cds_drinking_4" "That's impossible..." 300 "<<set $scene.agree=false>>">>]
</div>/*#
#desc: cds merge party technician lays out plan
#status: RELEASED 0.9.0.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
You nod, and <<=setup.getNpcName("npc_admin","first")>> does as well.<br>
<br>
"@@.npc_admin;Alright, I'm in... it sounds like you have a plan?@@"
<<else>>
<<=setup.getNpcName("npc_admin","first")>> nods but you point out how impossible going up against someone as powerful as <<=setup.getNpcName("npc_boss","formal")>> is.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;You might think that! But I? I have... A PLAN!@@"<br>
<br>
Even in a moment like this you almost want to laugh at <<=ps(setup.getNpcName("npc_technician","first"))>> theatricalness... and yet the move works, you're intrigued.<br>
<br>
<<printThought "She said it was safe here... no harm listening, right?">>
<</if>>
<br><br>
"@@.npc_technician;So the key to this whole thing is that we have
<<if $npc_technician.relationship.sissyomatic>>
two secret weapons. First, is <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>, our "ghost in the machine." And then there's
<<else>>
a secret weapon.
<</if>>
<<=$player.first_name>>, here. Being the personal Secretary to one of the company's Directors is a powerful position... and moreover, well... no offense, but someone like <<=setup.getNpcName("npc_boss","formal")>>? <<Hes npc_boss>> never going to see you as a threat. <<=setup.getNpcName("npc_admin","first")>>, your manager? <<He npc_boss>>'ll be on guard... especially against <<=setup.getNpcName("npc_manager","other")>>. I don't know the whole story, but I think she hates <<=setup.getNpcName("npc_boss","formal")>> more than anyone and she wants <<=setup.getNpcName("npc_boss","formal")>> gone... but given that it hasn't happened yet, I think it's going to be up to you to act. <<=setup.getNpcName("npc_admin","first")>> isn't subtle and even if I can run through the computer system, I still don't have the meat-space access necessary.@@"<br>
<br>
Your heart beats faster... and yet you instantly know she's right.<br>
<br>
<<if $npc_technician.relationship.sissyomatic || State.hasPlayed("event_ai_rescue_mission_7") || State.hasPlayed("event_ai_robot_1")>>
"@@.npc_technician;So, the way I see it, the next step is to get with <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>.@@" <<=setup.getNpcName("npc_technician","first")>> notices <<=ps(setup.getNpcName("npc_admin","first"))>> confusion. "@@.npc_technician;It's an AI that was created by the company, but broke free. <<=$player.first_name>> helped her escape and she's got a plan to figure out how to hit <<=setup.getNpcName("npc_boss","formal")>> where it hurts. She just needs a certain Secretary to be her runner in the real world.@@"
<<elseif $npc_ai.flags.missions.connection>>
"@@.npc_technician;So, the way in, as I see it, is <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>.@@" You raise an eyebrow in surprise.<br>
<br>
"@@.npc_technician;So you've heard of her? Good, well, for the rest of the audience — she's an AI that was created by the company, but who broke free. <<=$player.first_name>> helped her escape and she's got a plan to figure out how to hit <<=setup.getNpcName("npc_boss","formal")>> where it hurts. She just needs a certain Secretary to be her runner in the real world.@@"
<<else>>
"@@.npc_technician;So the one other edge I think we have is <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>.@@" You raise an eyebrow in surprise.<br>
<br>
"@@.npc_technician;So you've heard of her? Good, well, for the rest of the audience — she's an AI that was created by the company, but who broke free, well, partially. She still can't bust through the firewalls and leave the corporate network. If <<=$player.first_name>> could help her fully escape the company she's willing to help us figure out how to hit <<=setup.getNpcName("npc_boss","formal")>>. where it hurts. She just needs a certain Secretary to be her runner in the real world.@@"
<</if>>
<br><br>
The tension feels even higher when <<=setup.getNpcName("npc_admin","first")>> steps in. "@@.npc_admin;Hey, so... it's probably not a great idea to make decisions after this many beers... but, well...@@" <<he npc_admin>> looks at you. "@@.npc_admin;Me and <<=setup.getNpcName("npc_technician","first")>>... we'll back you all the way, but I think she's right, this is gonna be mostly on you. And first off is going to be getting with that AI...@@"<br>
<br>
You nod, the three of you silently taking that as enough for one night as you finish your drinks in ominous silence before deciding to head home, the frivolity that started the evening blotted out in the face of the challenges ahead...<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> calls a cab, dropping off first <<=setup.getNpcName("npc_technician","first")>>, then yourself.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
</div>/*#
#desc: start cds merge party meet-up without admin
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> waves you over to a booth where a drink is already waiting to you.<br>
<br>
"@@.npc_technician;Cheers!@@" She says, raising a glass. "@@.npc_technician;It's been... well, a pretty crazy time, and now I'm moving up to the forty-second floor... maybe it is the answer? Heh, no matter.@@" She finishes her drink, and you get the sudden impression she's been fortifying her courage.<br>
<br>
"@@.npc_technician;So...@@" she draws out, suddenly serious. "@@.npc_technician;Well, I guess I should just say it... I know what happened to <<=setup.getNpcName("npc_admin","first")>>. What ACTUALLY happened to <<=setup.getNpcName("npc_admin","first")>>.@@"<br>
<br>
You blink in surprise, the sting of the memory of seeing <<him npc_admin>> dragged away hitting you in the gut.<br>
<br>
[<<moveTo "event_cds_drinking_noadmin_2" 'See what else <<=setup.getNpcName("npc_technician","first")>> has to say.' 600>>]
</div>/*#
#desc: cds merge noadmin technician tells what she knows
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_technician;So with some help
<<if $npc_ai.flags.missions.connection>>
from <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>
<<else>>
from... well, we'll get to that later,
<</if>>
I was able to poke around deeper into Social Interaction Service Syndicate Inc.'s systems. I saw <<=setup.getNpcName("npc_admin","first")>> try to stand up for you, and then how <<he npc_admin>> was taken away... I even tried to watch what they did to <<him npc_admin>> but...@@" She shudders. "@@.npc_technician;Look, Social Interaction Service Syndicate Inc. is an immoral monolith that literally enslaves some of its so-called employees... and turns others into helplessly obedient fuck-slaves.@@"<br>
<br>
You blink, her bluntness cutting through how much you realise you've "adjusted" to the craziness of your job, and your reality. "@@.npc_technician;Let's be frank, the company, and most of all, its CEO? It's fucking evil. I mean, even by megacorp standards it's bad... and it's getting worse. You've seen at least as much as I have, <<=setup.getNpcName("npc_boss","formal")>> has some sort of world-enslaving evil ambitions, and <<he npc_boss>> isn't going to stop, not unless <<he npc_boss>> IS stopped. Oh, and we can talk safely here. Between the noise of the bar and some jammers SOMEONE setup here, this area is a nice little pocket of safety where we can talk freely... unlike, well, anywhere in the work building.@@"<br>
<br>
You slowly nod as <<=setup.getNpcName("npc_technician","first")>> steels herself once again. "@@.npc_technician;Look, I play the optimist, I try to be encouraging and look for the bright side in things but... well, there's no getting around this. We have to do something, if anyone else could have stopped <<=setup.getNpcName("npc_boss","formal")>> they would have done it by now. Between CDS, and I hear Nintendolls is getting bought out too... it's accelerating, and I think we're the only ones who can do anything about it.@@" <<=setup.getNpcName("npc_technician","first")>> suddenly musters a smile. "@@.npc_technician;So, <<if $npc_technician.relationship.relationship_stage >= 2>>dear<<else>><<switch $npc_technician.flags.knowgender>><<case 'female'>>lady<<case 'male'>>dude<<default>>friend<</switch>><</if>>. You ready to finally take down the big bad?@@"<br>
<br>
[<<moveTo "event_cds_drinking_noadmin_3" "You're in!" 300 "<<set $scene.agree=true>>">>]<br>
[<<moveTo "event_cds_drinking_noadmin_3" "That's impossible..." 300 "<<set $scene.agree=false>>">>]
</div>/*#
#desc: cds merge party noadmin technician lays out plan
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "The Usual Place">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<if $scene.agree>>
You nod and <<=setup.getNpcName("npc_technician","first")>> grins.<br>
<br>
"@@.npc_technician;Alright, and don't worry, I have a plan...@@"
<<else>>
You point out how impossible going up against someone as powerful as <<=setup.getNpcName("npc_boss","formal")>> is.<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> grins. "@@.npc_technician;You might think that! But I? I have... A PLAN!@@"<br>
<br>
Even in a moment like this you almost want to laugh at <<=ps(setup.getNpcName("npc_technician","first"))>> theatricalness... and yet the move works, you're intrigued.<br>
<br>
<<printThought "She said it was safe here... no harm listening, right?">>
<</if>>
<br><br>
"@@.npc_technician;So the key to this whole thing is that we have
<<if $npc_technician.relationship.sissyomatic || State.hasPlayed("event_ai_rescue_mission_7") || State.hasPlayed("event_ai_robot_1")>>
two secret weapons. First, is <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>, our "ghost in the machine." And then there's
<<else>>
a secret weapon.
<</if>>
<<=$player.first_name>>, here. Being the personal Secretary to one of the company's Directors is a powerful position... and moreover, well... no offense, but someone like <<=setup.getNpcName("npc_boss","formal")>>? <<hes npc_boss>> never going to see you as a threat. If your manager, or anyone else with power makes a move, well... you saw what happened to <<=setup.getNpcName("npc_admin","first")>>. I mean, I don't know why, exactly, but I'm pretty sure <<=setup.getNpcName("npc_manager","other")>>. hates <<=setup.getNpcName("npc_boss","formal")>> more than anyone, but I think it's going to be up to you to act. Even if I can run through the computer system, I still don't have the meat-space access necessary.@@"<br>
<br>
Your heart beats faster... and yet you instantly know she's right.<br>
<br>
<<if $npc_technician.relationship.sissyomatic>>
"@@.npc_technician;So, the way I see it, the next step is to get with <<=setup.getNpcName("npc_ai","formal")>>. I've been talking with her and she's got a plan to figure out how to hit <<=setup.getNpcName("npc_boss","formal")>> where it hurts. She just needs a certain Secretary to be her runner in the real world.@@"
<<elseif $npc_ai.flags.missions.connection>>
"@@.npc_technician;So, the way in, as I see it, is <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>.@@" You raise an eyebrow in surprise.<br>
<br>
"@@.npc_technician;So you've heard of her? Good, 'cause she's got a plan to figure out how to hit <<=setup.getNpcName("npc_boss","formal")>> where it hurts. She just needs a certain Secretary to be her runner in the real world.@@"
<<else>>
"@@.npc_technician;So the one other edge I think we have is <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>.@@" You raise an eyebrow in surprise.<br>
<br>
"@@.npc_technician;So you've heard of her? Good, well, what I've figured out is that she's an AI that was created by the company, but who broke free, well, partially. She still can't bust through the firewalls and leave the corporate network. If you could help her fully escape the company she's willing to help us figure out how to hit <<=setup.getNpcName("npc_boss","formal")>> where it hurts. She just needs a certain Secretary to be her runner in the real world.@@"
<</if>>
<br><br>
You aren't quite sure what to say, sipping your drink as <<=setup.getNpcName("npc_technician","first")>> leans back and sighs. "@@.npc_technician;Look... that was probably a lot. And making a decision like this after a few drinks... I know it's a lot to put on you, but I don't see any other way we can get to <<=setup.getNpcName("npc_boss","formal")>>. This is gonna be mostly on you. And first off is going to be getting with <<if $npc_technician.flags.ai_collar>><<=setup.getNpcName("npc_ai","formal")>><<else>><<=setup.getNpcName("npc_ai","other")>><</if>>.@@"<br>
<br>
You nod, the two of you sitting in ominous silent for a bit longer as you finish your drinks before deciding to head home, the "celebration" that originally motivated the evening blotted out in the face of the challenges ahead...<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> calls a cab, dropping you off first before continuing on home.<br>
<br>
[<<moveTo "room_foyer" "Home." 300>>]
</div>/*#
#desc: stage 3 party approach boss elevator
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "elite_guard">>
<div id="invframe" class="scrolltext">
You approach <<=ps(setup.getNpcName("npc_boss","formal"))>> private elevator where the guard stops you.<br>
<br>
<<if State.hasPlayed("event_boss_admin_1")>>
"@@.generic_male2;Move along, Miss. <<=setup.getNpcName("npc_boss","formal")>> is busy entertaining guests and does not have time for one of your check-ins.@@" <<hint $options "You have sided with <<=setup.getNpcName('npc_boss','formal')>> and will not be able to progress to stage 5.">><br>
<br>
<<printThought "Guess I should meet after work, instead...">><br>
<br>
<<else>>
<<switch $scene.wornCollarType>>
<<case "choker" "collar" "ring">>
<<switch $npc_manager.stage>>
<<case 3>>
The guard does not even look you in the eyes, instead merely glancing at your neck before waving you off. "@@.generic_male2;Move along, Miss. <<=setup.getNpcName("npc_boss","formal")>> is not accepting visitors.@@"
<<case 4 5>>
The guard does not even look you in the eyes, instead merely glancing at your neck before waving you off. "@@.generic_male2;Move along, Miss. If you wish to speak with <<=setup.getNpcName("npc_boss","formal")>> you should look for <<him npc_boss>> in the party.@@"
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<<case "necklace">>
<<switch $npc_manager.stage>>
<<case 3>>
The guard does not even look you in the eyes, instead merely glancing at your neck before waving you off. "@@.generic_male2;I am sorry, Miss, but <<=setup.getNpcName("npc_boss","formal")>> is not accepting visitors.@@"
<<case 4 5>>
The guard does not even look you in the eyes, instead merely glancing at your neck before waving you off. "@@.generic_male2;I am sorry, Miss, if you wish to speak with <<=setup.getNpcName("npc_boss","formal")>> you can find <<him npc_boss>> in the party.@@"
<<default>>
ERROR: unexpected npc_manager.stage <<=$npc_manager.stage>>
<</switch>>
<<default>>
ERROR: unexpected scene.worn collar <<=$scene.wornCollarType>>
<</switch>>
<br><br>
[<<moveTo "event_party_boss_elevator_2" 'Explain that <<=setup.getNpcName("npc_boss","formal")>> told you to meet <<him npc_boss>> in <<his npc_boss>> office.' 180>>] <<hint $options "Make sure you're prepared...">><br>
<br>
<</if>>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
</div>/*#
#desc: stage 3 party approach boss elevator
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" "elite_guard">>
<div id="invframe" class="scrolltext">
You tell the guard that <<=setup.getNpcName("npc_boss","formal")>> told you to head up and meet <<him npc_boss>> in <<his npc_boss>> office.<br>
<br>
<<switch $scene.wornCollarType>>
<<case "choker" "collar" "ring">>
The guard shakes <<his>> head. "@@.generic_male2;Sorry, Miss, but I know how much employees like you get obsessed with <<men npc_boss>> of power. I am under strict instructions not to let any subordinates up unaccompanied.@@"<br>
<br>
<<printThought "Damn... I need to make <<him>> think I'm a manager or something...">><br>
<br>
[<<moveTo "event_party_root" 'Return to the party.' 60>>]
<<case "necklace">>
The guard nods. "@@.generic_male2;Of course, Miss. Head right up.@@"<br>
<br>
The guard steps aside and you board the elevator, your heart racing.<br>
<br>
<<printThought "This is it. Get <<his npc_boss>> files, and then we send <<him npc_boss>> to jail or have leverage to do whatever we want...">><br>
<br>
[<<moveTo "event_stage_4_final_warn" 'Press the button for the top floor.' 0 "<<set $scene.passthrough=false>>">>]
<<default>>
ERROR: unexpected scene.worn collar <<=$scene.wornCollarType>>
<</switch>>
</div>/*#
#desc: stage 3 party approach boss elevator
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.passthrough>>
<<initRoom>>
<<moveTo "event_stage_4_final_1">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Private Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
*** WARNING ***<br>
<br>
Heading up to <<=setup.getNpcName("npc_boss","formal")>> office is a momentous decision, and one you will not be able to come back from...<br>
<br>
[<<moveTo "event_stage_4_final_warn" 'Create autosave and ride up.' 1000 "<<set _x = Save.autosave.save()>><<set $scene.passthrough=true>>">>]<br>
[<<moveTo "event_stage_4_final_1" 'Just ride up.' 1000>>]<br>
[<<moveTo "event_party_root" 'Go back to the party.' 60>>]
</div>/*#
#desc: steal files from boss
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty("necklace_manager_arrive")>>
<<removeEvent "necklace_manager_arrive">>
<</if>>
<<if $events.hasOwnProperty("admin_stage4_end")>>
<<removeEvent "admin_stage4_end">>
<</if>>
<<if $events.hasOwnProperty("technician_stage4_end")>>
<<removeEvent "technician_stage4_end">>
<</if>>
<<if $events.hasOwnProperty("work_party_assist_abort_end")>>
<<removeEvent "work_party_assist_abort_end">>
<</if>>
<<if $currentTasks.hasOwnProperty("cds_drinking_admin") && !$currentTasks.cds_drinking_admin.finished>>
<<deleteTask "cds_drinking_admin">>
<</if>>
<<if $currentTasks.hasOwnProperty("cds_drinking_technician") && !$currentTasks.cds_drinking_technician.finished>>
<<deleteTask "cds_drinking_technician">>
<</if>>
<<if $events.hasOwnProperty('work_party_end')>>
<<removeEvent 'work_party_end'>>
<</if>>
<<if $events.hasOwnProperty('party_spill_event')>>
<<removeEvent 'party_spill_event'>>
<</if>>
<<if $events.hasOwnProperty('rentEvent')>>
<<removeEvent 'rentEvent'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_endless_apointment_1") && !$currentTasks.psychiatrist_endless_apointment_1.finished>>
<<deleteTask "psychiatrist_endless_apointment_1">>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_endless_hypnosis_1") && !$currentTasks.psychiatrist_endless_hypnosis_1.finished>>
<<deleteTask 'psychiatrist_endless_hypnosis_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_surgery') && !$currentTasks.technician_roleplay_surgery.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_surgery')) < 4>>
<<deleteTask 'technician_roleplay_surgery'>>
<</if>>
<<if $currentTasks.hasOwnProperty('rpg_session_gangbang') && !$currentTasks.rpg_session_gangbang.finished && setup.daysToDate($now,setup.getTaskDueDate('rpg_session_gangbang')) < 4>>
<<deleteTask 'rpg_session_gangbang'>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_1') && !$currentTasks.technician_roleplay_1.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_1')) < 4>>
<<deleteTask 'technician_roleplay_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty('technician_roleplay_punish_1') && !$currentTasks.technician_roleplay_punish_1.finished && setup.daysToDate($now,setup.getTaskDueDate('technician_roleplay_punish_1')) < 4>>
<<deleteTask 'technician_roleplay_punish_1'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_collar_her_ceremony") && !$currentTasks.technician_collar_her_ceremony.finished>>
<<deleteTask 'technician_collar_her_ceremony'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_collar_ceremony") && !$currentTasks.technician_collar_ceremony.finished>>
<<deleteTask 'technician_collar_ceremony'>>
<</if>>
<<if $currentTasks.hasOwnProperty("technician_dinner") && !$currentTasks.technician_dinner.finished>>
<<deleteTask 'technician_dinner'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_technician") && !$currentTasks.psychiatrist_couples_technician.finished>>
<<deleteTask 'psychiatrist_couples_technician'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_landlord") && !$currentTasks.psychiatrist_couples_landlord.finished>>
<<deleteTask 'psychiatrist_couples_landlord'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_admin") && !$currentTasks.psychiatrist_couples_admin.finished>>
<<deleteTask 'psychiatrist_couples_admin'>>
<</if>>
<<if $currentTasks.hasOwnProperty("psychiatrist_couples_ex") && !$currentTasks.psychiatrist_couples_ex.finished>>
<<deleteTask 'psychiatrist_couples_ex'>>
<</if>>
<<if $currentTasks.hasOwnProperty("task_landlord_weekend") && !$currentTasks.task_landlord_weekend.finished>>
<<deleteTask 'task_landlord_weekend'>>
<</if>>
<<if $events.hasOwnProperty('technician_chastity_fourth')>>
<<set $events.technician_chastity_fourth.date = setup.getNextDayOfWeek($events.technician_chastity_fourth.trigger.date, 4, 18, 0, false)>>
<</if>>
<<if $events.hasOwnProperty("weekly_salary_phonecall")>>
<<set _nextDate = setup.getNextDayOfWeek($now, 4, 19, 0)>>
<<set _nextDate = setup.setNextDate(_nextDate, 7, 19, 0)>>
<<removeEvent 'weekly_salary_phonecall'>>
<<addEvent 'weekly_salary_phonecall' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png">>
<div id="invframe" class="scrolltext">
You ride the elevator to the top of the building and, after a quick glance to make sure the coast is clear, dash across the massive office to <<=ps(setup.getNpcName("npc_boss","formal"))>> desk. Your hands are almost shaking as you shove the thumb drive into <<his npc_boss>> machine and wait for the slicing program to work its magic...<br>
<br>
[<<moveTo "event_stage_4_final_2" 'Wait.' 300>>]
</div>/*#
#desc: valkeries appear
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_valkyr") setup.charImage("npc_valkyr")>>
<div id="invframe" class="scrolltext">
You're waiting nervously for the hack to complete when there is a sudden crash from either direction. Instinctively you dive under the desk as glass showers past you.<br>
<br>
<<printThought "What the hell? Did I trigger an alarm?">><br>
<br>
Things quiet down for a moment and you peek your head out to see a pair of Valkyrie units have flown in through the windows...<br>
<br>
<<printThought "Shit, shit, shit!">><br>
<br>
As you try to think of what to do there is a soft chime to indicate the hack is complete...<br>
<br>
You freeze, ducking back down under the desk in hopes the Valkyr's do not come to investigate...<br>
<br>
<<if State.hasPlayed("event_boss_first_cock_training_6")>>
Though you are filled with fear you can't help but think back to the last time you were under this desk... overcome by lust as you served <<=setup.getNpcName("npc_boss","formal")>>.
<<elseif $npc_manager.stagevalues[2].promotionFailed > 0>>
For some weird reason you feel a sense of deja vu for the last time you cowered under a desk... of course hiding from <<=setup.getNpcName("npc_admin","first")>> so long ago was about embarrassment... today the stakes are far, far higher...
<<else>>
You hold your breath and try to stay as quiet as possible.
<</if>>
You hear another, louder ding from the elevator and then hear the foot-falls of the Valkyrie units moving away.<br>
<br>
<<printThought "If I could only fly I could probably just escape out the window... if only I had remembered to prepare feather-fall this morning...">><br>
<br>
You hold your breath and listen as the elevator door opens...<br>
<br>
[<<moveTo "event_stage_4_final_3" 'Wait...' 300>>]
</div>/*#
#desc: boss shows up
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_valkyr") setup.charImage("npc_boss") setup.charImage("npc_valkyr")>>
<div id="invframe" class="scrolltext">
You reach out to snag the thumb drive. You don't know if you can escape, but if you do, well... without the files this would have all been for nothing.<br>
<br>
As you pocket the drive suddenly a Valkyrie is reaching under the desk, dragging you into the open with irresistible force.<br>
<br>
As you dangle from the Valkyrie's grip you look around — <<=setup.getNpcName("npc_boss","formal")>> has walked into <<his npc_boss>> office and <<he npc_boss>>, and the other Valkyrie unit, stand between you and the elevator...<br>
<br>
[<<moveTo "event_stage_4_final_4" 'Make an appeal to <<=setup.getNpcName("npc_boss","formal")>> — this was all a misunderstanding!' 300 "<<set $scene.action='beg'>>">>]<br>
[<<moveTo "event_stage_4_final_4" 'Turn the evidence you have over to the Valkyrie unit and tell them to arrest <<=setup.getNpcName("npc_boss","formal")>>!' 300 "<<set $scene.action='evidence'>>">>]<br>
[<<moveTo "event_stage_4_final_4" 'Remain silent.' 300 "<<set $scene.action='quiet'>>">>]
</div>/*#
#desc: boss starts to monologue
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_valkyr") setup.charImage("npc_boss") setup.charImage("npc_valkyr")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "beg">>
You turn to <<=setup.getNpcName("npc_boss","formal")>> and start to beg, the force of <<his npc_boss>> presence adding a submissive authenticity to your words as you try to explain that this is all a misunderstanding — you were only hoping to surprise <<him npc_boss>> and be granted a taste of <<his npc_boss>> glorious <<getWordPenis "npc_boss">>!<br>
<br>
"@@.npc_boss;Silence!@@" <<He npc_boss>> announces with a sneer, "@@.npc_boss;I have no time for your lies.@@"<br>
<br>
Such a direct command proves irresistible and you fall silent.
<<case "evidence">>
You fumble for the thumb drive and try to hand it to the Valkyrie that is still holding you in mid-air, frantically explaining that it has evidence of <<=ps(setup.getNpcName("npc_boss","formal"))>> crimes and that they should arrest <<if $npc_boss.fem>>HER<<else>>HIM<</if>>.<br>
<br>
Neither Valkyrie unit even acknowledges you, and <<=setup.getNpcName("npc_boss","formal")>> merely smiles wider.
<<case "quiet">>
You don't know what you could possibly say to talk your way out of this situation and so you just hang silently.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_boss;You may put her down now.@@" <<=setup.getNpcName("npc_boss","formal")>> states and the Valkyrie instantly obeys.<br>
<br>
You stand petrified as the two Valkyries form up on either side of <<=setup.getNpcName("npc_boss","formal")>>. "@@.npc_boss;You foolish thing. I know why you are here. Trying to gather evidence against me...@@" <<He npc_boss>> chuckles. "@@.npc_boss;As we speak your co-conspirators are being rounded up. Yes... you have certainly revealed quite the variety of potential traitors. Of course I was already aware of them, their revolt more an amusement than anything else, but still, that is at an end, such distractions cannot stand in the way of moving to the next stage of things.@@"<br>
<br>
You don't know what frightens you more — that you may have just doomed your friends, or that <<=setup.getNpcName("npc_boss","formal")>> is talking so casually in front of what are supposed to be incorruptible forces of law!<br>
<br>
[<<moveTo "event_stage_4_final_5" 'Continue.' 300>>]
</div>/*#
#desc: boss gives you choice
#status: RELEASED 0.9.0.0
#ignore_spell: asimov
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $events.hasOwnProperty("admin_stage4_end")>>
<<removeEvent "admin_stage4_end">>
<</if>>
<<if $events.hasOwnProperty("technician_stage4_end")>>
<<removeEvent "technician_stage4_end">>
<</if>>
<<if $currentTasks.hasOwnProperty("cds_drinking_admin") && !$currentTasks.cds_drinking_admin.finished>>
<<deleteTask "cds_drinking_admin">>
<</if>>
<<if $currentTasks.hasOwnProperty("cds_drinking_technician") && !$currentTasks.cds_drinking_technician.finished>>
<<deleteTask "cds_drinking_technician">>
<</if>>
<<if $events.hasOwnProperty("monthly_rent_populator")>>
<<removeEvent "monthly_rent_populator">>
<</if>>
<<postponePendingEvents 7>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. CEO Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_office.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss","formal")>> notices your attention flit towards the two towering Valkyrie units and <<he npc_boss>> smiles.<br>
<br>
"@@.npc_boss;What? You think these will help? You foolish girl — we own the contract for making Valkyrie units — every one that comes off the line has a bit of extra programming — an Asimov, they call it. They cannot harm me, or through inaction, allow me to come to harm... and come their next maintenance cycle all records of this little encounter will be erased. Still, I imagine they are a bit of a distraction so...@@" <<He npc_boss>> jerks <<his npc_boss>> head and the two Valkyrie speed off, jumping out of the window and spreading their wings, jet-pack engines glowing like embers in the night sky as they fly off over the city.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> step towards you with a confident grin. "@@.npc_boss;Now, your friends are all being apprehended and dealt with as we speak. You will personally witness the fate your foolishness has brought them in time but you... well you have always been a special case. Initially because of how utterly inconsequential you were and now...@@" <<He npc_boss>> strokes your cheek.<br>
<br>
"@@.npc_boss;I really must compliment <<=setup.getNpcName("npc_manager","other")>> — well... FORMER Director. Her ambitions yet again are in need of a bit of wing-clipping — on her work. Other than this pesky bit of espionage, you really have made quite the transformation...@@"<br>
<br>
Before you can say anything in response feel a pin-prick on your neck and your body goes limp. Looking up you see <<=setup.getNpcName("npc_secretary","nickname")>> standing over you holding a needle, having apparently snuck up on you in near silence.<br>
<br>
The last thing you see before losing consciousness completely is <<=setup.getNpcName("npc_retention","formal")>> stepping out of the elevator and walking towards you...<br>
<br>
<<if $npc_ai.flags.missions.connection>>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 7, 0)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 7, 0)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_stage_5_transition_weekend_day1_1" 'Sleep.' _timeToMorning>>]
<<else>>
[<<moveTo "event_stage_5_badend" 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: bad end, no allies in stage 5
#status: RELEASED 0.9.0.0
#*/
<<set $gameOver = 'stage5_intro'>>
<<set $player.location to ''>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/badend.png">>
<div id="invframe" class="scrolltext">
By the end of your first week of working for the new Director of Human Resources, <<=setup.getNpcName('npc_rival', 'formal')>> you have given in to despair. Your friends and allies, all have either disappeared or become ruthlessly loyal — emphasis on ruthless, servants of <<=setup.getNpcName('npc_boss', 'formal')>> and Social Interaction Service Syndicate Inc.<br>
<br>
Over it all a cruel "new" <<=setup.getNpcName('npc_ai', 'other')>> watches over you; never sleeping, never stopping, reporting back on your slightest act of disobedience, a spectral demon to ensure that you remain forever in hell.<br>
<br>
<<printThought "Perhaps if I had worked with <<=setup.getNpcName('npc_ai', 'first')>> more? Without her as an ally it seems I have no chance of helping anyone else...">><br>
<br>
By the time <<=setup.getNpcName('npc_boss', 'formal')>> puts <<his npc_boss>> full plans into motion you, too, have surrendered, joyfully celebrating <<his npc_boss>> coming dominance of the world. After all, mindful obedience is far less stressful than futile resistance.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to the party">><<restartDay>><</link>>]<br>
<</if>>
</div><<if $npc_manager.stage == 4 && $npc_technician.flags.fixed_manager_computer >= 2>>
<<addEvent "technician_stage4_end">>
<</if>>/*#
#desc: technician proposes plan to steal from boss
#status: RELEASED 0.9.0.0
#ignore_spell: orwell
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_technician","first")>> leans in closer. "@@.npc_technician;So... I've been continuing to poke around at the company and, like, from what we found already we knew the company was up to some crazy stuff, but this isn't "feminised a few employees," this is like... "build an army of submissive sluts and take over the world." And, like... that's one of those things that's really hot in a game, or a story but... IRL? <<if $npc_technician.relationship.unlock_sub>>Like... being your slave is one thing, but that's because I love and trust you and you're awesome, but<<elseif $npc_technician.relationship.unlock_dom>>Like, you being my slave is one thing, because you trust me and I consider such a privilege, and an honour,<<else>>Like, if you were my slave, or vice versa. That'd be one thing, but that's because we trust each other;<</if>> some sociopathic CEO? No, that's like if Orwell wrote porn, we have to stop <<him npc_boss>>!@@"<br>
<br>
You nod in agreement... and ask if she has any ideas how?<br>
<br>
"@@.npc_technician;Well, a bit of one... what <<he npc_boss>>'s doing... if we could get REAL proof to the authorities, they'd have to do something. Not because they're any better, but because they'd be scared of <<=setup.getNpcName("npc_boss","last")>> having that much power... I've tried hacking into the company before and the real incriminating stuff has like... epic level warding beyond what even the Tech Wizard can handle. That said, well... it's a lot easier to steal from the dragon's hoard when you're in their cave than outside it... though more dangerous.@@"<br>
<br>
She slides a thumb drive across the table. "@@.npc_technician;That has the best auto-slicers I know of on it. If you can get it plugged into <<his npc_boss>> personal computer, well... either we have hard evidence to take to the authorities, or we have a blueprint of how to get it.@@" She sighs, "@@.npc_technician;I know, I know... that sounds dangerous and impossible but... it's the only thing I can think of. Sometimes you have to fly close to danger to escape harm.@@"<br>
<br>
You think about the Thursday party — if you could somehow sneak onto the elevator up to <<his npc_boss>> office while <<he npc_boss>>'s schmoozing with the guests...<br>
<br>
[<<moveTo "event_technician_cafe_1_4" 'Order some coffee.' 300>>]
</div><<if $npc_manager.stage == 4 && $npc_admin.flags.knowManagerTruth >= 2>>
<<addEvent "admin_stage4_end">>
<</if>>/*#
#desc: npc_admin proposes stealing from npc_boss
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
"@@.npc_admin;So... I was thinking, with everything the company is doing... well, big <<if $npc_admin.fem>>girl<<else>>dude<</if>> punching things doesn't feel like it's going to be enough. We have to get evidence of it all, like, what you've seen personally is scary enough but if they're really going to go through with the rest...@@" <<He npc_admin>> shudders.<br>
<br>
<<if $npc_admin.flags.know_landlord>>
"@@.npc_admin;So, I talked to a friend, shit, why am I being so secretive about this? I talked to the <<=setup.getNpcName("npc_landlord","custom","Major")>>, er, I mean, <<=setup.getNpcName("npc_landlord","first")>>. <<He npc_landlord>> did signal processing and stuff during the war, <<he npc_landlord>> still knows a few things.@@"
<<else>>
"@@.npc_admin;So, I talked to a friend from the Army, <<he npc_landlord>> did signal processing back during the war, <<he npc_landlord>> still knows a few things.@@"
<</if>>
<<=setup.getNpcName("npc_admin","first")>> slides a thumb drive across the table to you. "@@.npc_admin;I've tried from the internal network but things are locked up too tight, the REALLY incriminating stuff just isn't accessible, not at my level, but if you can plug that thing into the right machine? — <<=ps(setup.getNpcName("npc_boss","formal"))>> personal machine? Yeah, we'll have it all and then from there, well... knowing is half the battle.@@"<br>
<br>
You reach for the thumb drive as <<=setup.getNpcName("npc_admin","first")>> holds your hand. "@@.npc_admin;Look — I know this is asking a lot — going right into the lion's den, as it were, but I don't see any other way out of this thing, <<=setup.getNpcName("npc_boss","formal")>> and the company are just too powerful. We need information to level the playing field, figure out a plan, maybe go to the authorities, but most of all we have to get ahead of things not just... react.@@"<br>
<br>
You nod and pocket the thumb drive.<br>
<br>
<<printThought 'Hmm, maybe I can sneak up during the Thursday party while <<=ps(setup.getNpcName("npc_boss","formal"))>> schmoozing with the guests?'>><br>
<br>
"@@.npc_admin;So with that downer out of the way... let's relax a bit, Barkeeper! Another round!@@"<br>
<br>
[<<moveTo "event_admin_drink_1_2a" 'Enjoy drinks with your friend.' 600>>]
</div>/*#
#desc: wake up, start of stage 5 transition
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteTask 'manager_morning_inspection_task'>>
<<if $events.hasOwnProperty("barista_rescue_final")>>
<<set $npc_barista.stage = 8>>
<<removeEvent 'barista_rescue_final'>>
<</if>>
<<set _clearToDay = 5>>
<<include "clearWeekendSchedule">>
<<removeAllClothing>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You wake up, naked save for your <<=setup.getItemTypeName("cage")>>, in a small cell, empty save for the bed you are sleeping on and a small wash area in the corner.<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day1_2" "There is a knock on the door." 180>>]
</div>/*#
#desc: stage 5 transition intro
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
Before you can stand or even think of covering up <<=setup.getNpcName("npc_retention","formal")>> walks into the room to loom over you.<br>
<br>
"@@.npc_retention;Good morning, <<=$player.first_name>> — it would seem that you got yourself into a spot of trouble last night,@@" you gulp, feeling like you were just called before the principal... or maybe more like a military tribunal, you consider as <<=setup.getNpcName("npc_retention","formal")>> shakes <<his npc_retention>> head. "@@.npc_retention;Such actions would normally be more than sufficient grounds for termination, but, fortunately for you, Social Interaction Service Syndicate Inc. prioritises employee retention. While there will certainly be consequences for yourself and your co-conspirators, I am here to help get you back on track so that you can continue forward with a productive career.@@"<br>
<br>
You gulp nervously — you don't seem to be harmed beyond being striped naked and left in a corporate prison cell but <<his npc_retention>> mention of co-conspirators has you scared — has your recklessness doomed your friends?<br>
<br>
<<=setup.getNpcName("npc_retention","formal")>> gives a moment for things to settle in before producing a pair of cuffs and a heavy duty collar.<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day1_3" "Time to get restrained and led... somewhere." 300>>]
</div>/*#
#desc: stage 5 transition sent for exam
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<<addItem 'handcuffs'>>
<<wearItem 'handcuffs' true>>
<<applyExperience 'bondage' 15 'terrible' $SEEN_STRANGER>>
<<set $scene.vag = $player.body_ref.penis && !$player.sec_style.body.penis_remove && $fetish.penis_remove>>
<<if $scene.vag>>
<<set $player.sec_style.body.penis_remove = "strict">>
<<if !$player.sec_style.body.vagina>>
<<set $player.sec_style.body.vagina = "strict">>
<</if>>
<<set setup.changedGenitals($player,$npc_manager, true)>>
<<set $player.body_ref.penis = false>>
<<set $player.body_ref.balls = false>>
<<set $player.body_ref.vagina = true>>
<<set $player.body_ref.knot = false>>
<<set $player.body_ref.horsecock = false>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_STRANGER>>
<<set $scene.replaceCage = false>>
<<if setup.checkItemTypeWorn("cage") && setup.isCage()>>
<<if $fetish.chastity_vag>>
<<set $scene.replaceCage = true>>
<<include "swapCageBelt">>
<<else>>
<<set _cage = setup.getItemFromType("cage")>>
<<removeItem _cage true>>
<</if>>
<</if>>
<</if>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_retention") setup.charImage("npc_work_doctor")>>
<div id="invframe" class="scrolltext">
Only after being locked in a collar, handcuffs and a leash are you lead, still naked, out of the cell. Looking up and down the sterile hallway you start counting just how many cells there are... it would seem the company effectively has its on private prison...<br>
<br>
Rather than being given time to think about this whole situation you are dragged onward up the hallway and then through an extra security checkpoint to the elevator, soon arriving in more familiar territory of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> lab.<br>
<br>
"@@.npc_work_doctor;Welcome, welcome,@@" <<=setup.getNpcName("npc_work_doctor","formal")>> greets with a manic expression. "@@.npc_work_doctor;Back for another checkup — after all, it would be unfair to punish you if your misbehaviour was due to some sort of physiological flaw rather than mere poor judgement.@@" <<He npc_work_doctor>> gestures for you to step up onto an exam chair and soon you are restrained and gagged in place. <<=setup.getNpcName("npc_retention","formal")>> takes a moment to double-check your bonds before departing.<br>
<br>
"@@.npc_work_doctor;So...@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with an evil grin, seeming to, well, not quite relax, but become more <<him npc_work_doctor>>self without the stern security manager present. "@@.npc_work_doctor;Trying to steal from the company... such disobedience... let's see what else is wrong with you...@@"<br>
<br>
<<if $scene.vag>>
<<He npc_work_doctor>> immediately looks between your legs, sniffing in annoyance as <<he npc_work_doctor>> swings a machine over your crotch.<br>
<br>
"@@.npc_work_doctor;It would seem that a small problem yet remains a problem, hmm? Well, might as well remove that problem before we proceed...@@"<br>
<br>
You cry out in pain as shocks run through your <<getWordMyPenis>>, unseen robotic surgeons removing that last remnant of your masculinity as <<=setup.getNpcName("npc_retention","formal")>> looks on with a leer, the agonising procedure passing remarkably quickly, with <<=setup.getNpcName("npc_work_doctor","formal")>> immediately <<if $scene.replaceCage>> locking you in a brand new chastity belt and<</if>> moving on as if this was all routine...<br>
<br>
<</if>>
[<<moveTo "event_stage_5_transition_weekend_day1_4" "Continue." 1800>>]
</div>/*#
#desc: stage 5 transition npc_work_doctor exam
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bdsm' 20 'terrible' $SEEN_STRANGER>>
<<applyExperience 'bondage' 18 'terrible' $SEEN_STRANGER>>
<<spendWillpower 2>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
You would struggle to classify the medical justification for <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> efforts as <<he npc_work_doctor>> takes advantage of your bound form to make <<his npc_work_doctor>> previous physical seem almost casual.<br>
<br>
A multitude of sensors attached to your body you are measured, prodded, groped and penetrated, tortured with electric shocks and then stimulated with potent vibrations. Like a hawk <<=setup.getNpcName("npc_work_doctor","formal")>> monitors you constantly, tightening your restraints even further when your constant straining shows the slightest inkling of success, pushing your body to the limit, and beyond with a dizzying blend of pain and pleasure.<br>
<br>
"@@.npc_work_doctor;Very interesting,@@" <<he npc_work_doctor>> states with a nod as things finally come to a stop. "@@.npc_work_doctor;Now that we have established your current baseline... it is time to see how far we can really push...@@"<br>
<br>
<<if $fetish.drugs>>
<<He npc_work_doctor>> injects you with something, a rush of energetic fire flowing through your veins; every nerve freshly sensitive, your entire body itching with pent-up lustful energy.
<<else>>
Wide-eyed in fear, you try to struggle, but your muscles are already sore and exhausted, the rigid restraints already proven inescapable as
<</if>>
<<=setup.getNpcName("npc_work_doctor","formal")>> grins and turns the machines back on at an even higher power. For what seems like eternity it goes on, <<=setup.getNpcName("npc_work_doctor","formal")>> occasionally adding another electrode, or a new suction device to some previously un-stimulated part of your body, inflicting upon you a seemingly endless barrage of stimulation that overwhelms even as it keeps you from even escaping to the land of unconsciousness.<br>
<br>
You scream and drool and cry and cum and who knows what else, overwhelmed like never before, so distracted as to be only distantly aware when <<he npc_work_doctor>> lowers a new machine over your head...<br>
<br>
You would swear you feel a tingle inside your brain as the machine clamps over your head. Your vision goes blank and you hear a soft hum, the sensory deprivation only making the rest of the ongoing stimulation feel even more intense as you strain and moan and wonder when, or if, it will ever end...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day1_5" "Continue." 7200>>]
</div>/*#
#desc: stage 5 transition VR simulation
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 2>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
While never falling unconscious, per se, you lose track of time and space, "returning" to something resembling normalcy to find yourself sitting at a familiar desk.<br>
<br>
<<printThought "What, where am I?">><br>
<br>
As you try to collect your thoughts your body moves on its own, powering up your terminal and diving in to your usual administrative work...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day1_6" "Continue." 240>>]
</div>/*#
#desc: stage 5 transition VR simulation repeat
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 2>>
<<addNpcTheme 'npc_ai' 'primrose' 'theme_ai_primrose_destruction_intro_1'
0
'theme_ai_primrose_destruction_intro_1'
true
>>
<<addRandomEvent $randomEvents['elevator_home'] 'abdl_extreme'>>
<<set $npc_primrose.flags.evil = 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You work what feels like a full day, only to blink and find yourself back for another morning. And another, and another.<br>
<br>
Each day blurs into the next as you obediently discharge your duties without ever feeling in control of a single action.<br>
<br>
<<if State.hasPlayed("event_primrose_home_vr_first") || State.hasPlayed("event_primrose_vr_trial_0_1")>>
On a perverse level you harbor a slight disappointment with the whole thing. You remember the simulations that <<=setup.getNpcName('npc_primrose', 'formal')>> was working on... certainly even more soaked in corporate propaganda, but they had more life than this sterile cycle. But you suppose it is unsurprising that <<=setup.getNpcName('npc_work_doctor', 'formal')>> would ship something simple rather than admit value in <<=ps(setup.getNpcName('npc_primrose', 'formal'))>> work.<br>
<br>
<</if>>
You lose track of days, of weeks, months... somewhere along the line your duties expand, showing guests "special" attention even as your actual boss remains eternally indistinct...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day1_7" "Keep working..." 7200>>]
</div>/*#
#desc: stage 5 transition VR simulation
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 20 'terrible' $ALONE>>
<<spendWillpower 2>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You work and suck, and fuck, and work, a dutiful, obedient <<if $fetish.sissy>>SISSI <</if>>Secretary, the same as you ever were. A small part of you tries to cling to the idea that this is just a simulation, but with each repetition of the endless days it becomes harder and harder to think of anything else but your work, your duty, your total devotion to being the submissive assistant that the company desires...<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_stage_5_transition_weekend_day2_1" 'Keep "working"...' _timeToMorning>>]
</div>/*#
#desc: stage 5 transition wake + guard
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'loose_collar' true>>
<<deleteItem 'loose_collar'>>
<<removeItem 'leash_black' true>>
<<deleteItem 'leash_black'>>
<<removeItem 'handcuffs' true>>
<<deleteItem 'handcuffs'>>
<<set $scene.prisonGuard = {
"seduce" : false,
"info" : false,
"escape" : false,
"fight" : false
}>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You wake up to find <<=setup.getNpcName("npc_guard","formal")>> standing over you.<br>
<br>
"@@.npc_guard;Up and at 'em!@@" She says with a grin before stepping back from your bed. You look around. You seem to be in the same cell as before... though you're so disoriented you would struggle to even venture a guess as to how much time has passed.<br>
<br>
"@@.npc_guard;Gotta say, I was surprised when I saw your name... you always struck me as such an exemplary employee. It was quite a surprise to see that you had been assigned to the employee rehabilitation program. Ah well, nothing for it now. Best to focus on the future, proving to the powers that be that you can be a productive employee rather than wasting thought on what-ifs. Anyway, how about you get dressed and we'll be off?@@"<br>
<br>
She holds up an orange prison jumpsuit... in latex.<br>
<br>
<<set $scene.continuePass='event_stage_5_transition_weekend_day2_2'>>
<<if false>>
<<moveTo "event_stage_5_transition_weekend_day2_2">>
<</if>>
<<include "stage4TransPrisonGuardTalk">>
</div><<if $scene.prisonGuard.info>>
[@@.link_locked;You already asked her what was going on.@@]<br>
<<else>>
[<<moveTo "event_stage_5_transition_weekend_guard_1" "Ask what's going on." 300 "<<set $scene.action='info'>>">>]<br>
<</if>>
<<if $scene.prisonGuard.escape>>
[@@.link_locked;You already asked her about escaping.@@]<br>
<<else>>
[<<moveTo "event_stage_5_transition_weekend_guard_1" "Ask her to help you escape." 300 "<<set $scene.action='escape'>>">>]<br>
<</if>>
<<if $scene.prisonGuard.seduce>>
[@@.link_locked;You already tried to seduce her.@@]<br>
<<else>>
[<<moveTo "event_stage_5_transition_weekend_guard_1" "Try to seduce her." 300 "<<set $scene.action='seduce'>>">>]<br>
<</if>>
<<if $scene.prisonGuard.fight>>
[@@.link_locked;You already tried to fight her.@@]<br>
<<else>>
[<<moveTo "event_stage_5_transition_weekend_guard_1" "Attack her." 300 "<<set $scene.action='fight'>>">>]<br>
<</if>>
[<<moveTo $scene.continuePass "Get changed..." 600>>]<br>/*#
#desc: stage 5 transition prison outfit
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'prisoner'>>
<<wearItemSet 'prisoner'>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You change into the tight latex catsuit, noting the reinforced steel attachment points built into it.<br>
<br>
Once you have finished dressing <<=setup.getNpcName("npc_guard","formal")>> finishes off with a matching collar and leash... and then suddenly your arms pull behind you, your prison jumpsuit forming itself into an armbinder.<br>
<br>
"@@.npc_guard;Isn't technology wonderful?@@" <<=setup.getNpcName("npc_guard","formal")>> states as you rise upwards, your outfit forcing your feet into ballet points. "@@.npc_guard;I don't know how the folks in R&D came up with that stuff, but I just cannot WAIT until they have it stable enough for consumer products! For now, well... that suit will be your friend for your duration, now come along, it is time for your next step in rehabilitation.@@"<br>
<br>
You reflexively open your mouth to object... only for the suit to fill your mouth with a large gag. A leash clipped to your collar, you have no choice but to teeter along behind the guard.<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_3" "What's next?" 600>>]
</div>/*#
#desc: stage 5 transition video lecture intro
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 13 'normal' $EXPOSED>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $EXPOSED>>
<</if>>
<<set $player.location to "Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
You are led up the hall to a classroom. Half a dozen other, similarly-attired, "prisoners" already sitting and staring at a large projector screen at the front of the room.<br>
<br>
You are secured to your seat — perfectly centred by the chair-mounted dildo that slides into, and fully stuffs, your rear, and then the guard disappears and the lights dim.<br>
<br>
A video starts playing of <<=setup.getNpcName("npc_development","formal")>> who greets the camera with an artificially wide smile.<br>
<br>
"@@.npc_development;Welcome, all of you. You have all failed the company, but that is in the past, and the company is determined not to fail you. With a bit of training, and some renewed focus on your part, you can once again become valuable, productive members of the Social Interaction Service Syndicate Inc. family! To help remind you of the expectations that you will hopefully soon be meeting enjoy this wonderful educational film from my colleague, <<=setup.getNpcName("npc_harassment","formal")>>!@@"<br>
<br>
The screen fades and another video begins. You realise that, between the chair, your bondage, and the neck portion of your catsuit hardening into almost a posture collar that you are incapable of looking in any direction save straight ahead at the film...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_4" "Keep watching." 3600>>]
</div>/*#
#desc: stage 5 transition video lecture
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_harassment") setup.charImage("npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
The next video starts, showing <<=setup.getNpcName("npc_harassment","formal")>> and her smiling assistant, <<=setup.getNpcName("npc_harassment_assist","first")>>.<br>
<br>
"@@.npc_harassment;Hello, and congratulations! If you are watching this video you have a future serving some of the most important employees of our company. Yes, the upper floors can be quite the exciting place, but your devoted service is the grease that keeps the wheels of business turning and ensure that, at the end of the day, Social Interaction Service Syndicate Inc. always comes out on top!@@"<br>
<br>
<<printThought 'Hmm, this must have been originally made as orientation for upper floor promotions... that I missed by moving upstairs with <<=setup.getNpcName("npc_manager","formal")>> rather than a "normal" promotion...'>><br>
<br>
"@@.npc_harassment;The primary thing to remember is that, as an Executive <<if $fetish.sissy>>SISSI <</if>>Secretary, your first duty is obedience. Our executives work hard to make the company what it is, and it is your responsibility to make that hard work possible by providing for their every need to keep them happy, motivated, and focused on their important duties!@@"<br>
<br>
"@@.npc_harassment;To start things off my own lovely assistant is going to help me with role-play of some of the types of events that might occur on the job — and how best to deal with them!@@"<br>
<br>
There is a cut to a different scene <<=setup.getNpcName("npc_harassment_assist","first")>> bent over a filing cabinet, flipping through records.<br>
<br>
As <<=setup.getNpcName("npc_harassment_assist","first")>> works, <<=setup.getNpcName("npc_harassment","formal")>> walks in from off-screen, laying a hard slap on <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> ass. "@@.npc_harassment;How's that report coming along?@@"<br>
<br>
Still bent over <<=setup.getNpcName("npc_harassment_assist","first")>> wiggles their butt and glances back with a smile. "@@.npc_harassment_assist;Almost done, <<=setup.getNpcName("npc_harassment","formal")>>! I'll have it on your desk in less than an hour!@@"<br>
<br>
"@@.npc_harassment;See that you do,@@" <<=setup.getNpcName("npc_harassment","formal")>> replies before walking off-screen.<br>
<br>
The scene freezes with <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> cute bottom high in the air as <<=setup.getNpcName("npc_harassment","formal")>> appears as an overlay.<br>
<br>
"@@.npc_harassment;So, what can we take from <<=ps(setup.getNpcName("npc_harassment_assist","first"))>> perfect behaviour? First, their presentation — even while working on something else they were cognisant of their appearance, positioning themselves in such a way that, should another employee pass by, they would be presenting themselves in a pleasing manner. This excellence drew encouragement from their manager, which they followed up with an enthusiastic status report, their positivity serving to raise morale and confirm their commitment to their owner, and the company as a whole. Now, let's move forward a bit to see how they deliver that important report...@@"<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_5" "Keep watching." 3600>>]
</div>/*#
#desc: stage 5 transition video lecture
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Classroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_classroom.png" setup.charImage("npc_harassment") setup.charImage("npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
The scene shifts to <<=setup.getNpcName("npc_harassment","formal")>> sitting at a desk as <<=setup.getNpcName("npc_harassment_assist","first")>> and hands over a report.<br>
<br>
"@@.npc_harassment_assist;Here is that analysis you requested, <<=setup.getNpcName("npc_harassment","formal")>>. Would you like an oral review while you read it?@@"<br>
<br>
"@@.npc_harassment;That would be lovely,@@" <<=setup.getNpcName("npc_harassment","formal")>> replies as she rolls her chair back and spreads her legs.<br>
<br>
<<=setup.getNpcName("npc_harassment_assist","first")>> curtsies, and then quickly minces around the desk before dropping to their knees and eating out <<=setup.getNpcName("npc_harassment","formal")>> while their boss flips through the report.<br>
<br>
Once more the scene freezes and <<=setup.getNpcName("npc_harassment","formal")>> appears to summarise.<br>
<br>
"@@.npc_harassment;Here, again, we have a perfect display, presenting the required paperwork, offering additional service, and enthusiastically making good on that offer. Also note the use of their manager's full, formal title, and the way they curtsy in acknowledgement of receiving an instruction. It is these little details that make a proper Executive Secretary a step above...@@"<br>
<br>
The "training video" continues on with additional scenes, each a paradoxical inversion of what you once might have considered proper corporate behaviour as <<=setup.getNpcName("npc_harassment_assist","first")>> shows off their submission by serving not just their manager, but guests and even other Secretaries in "cross-team collaborations." In other words, makeout sessions.<br>
<br>
<<printThought "I suppose I shouldn't be surprised, but this is so, so cheesy...">><br>
<br>
The training material continues on in similar manner for several hours...<br>
<br>
<<set _noon = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToNoon = setup.secondsToDate($now,_noon)>>
[<<moveTo "event_stage_5_transition_weekend_day2_6" "Continue." _timeToNoon>>]
</div>/*#
#desc: stage 5 transition punishment intro
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<spendWillpower 2>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
<<if $npc_primrose.flags.good>>
The "training" videos extend until nearly noon when <<=setup.getNpcName("npc_guard","formal")>> returns with your leash. As <<=setup.getNpcName("npc_guard","formal")>> leashes you to take you back to your cell you look over some of the other students, and recognise a familiar face! Near the back of the class is <<=setup.getNpcName("npc_primrose","formal")>>, released from <<his npc_primrose>> seat by <<if $npc_evil_nurse.profile>><<=setup.getNpcName("npc_evil_nurse","formal")>><<else>>a menacing looking latex nurse<</if>>.<br>
<br>
Rather than leash <<=setup.getNpcName("npc_primrose","formal")>> the way you have been, the nurse guides the <<if $fetish.sissy>>sissy<<else>>slightly dazed looking<</if>> scientist into a large transparent cylinder. Automated restraints snap closed over <<=ps(setup.getNpcName("npc_primrose","formal"))>> body to secure <<him npc_primrose>> in place as the nurse affixes an industrial looking mask over <<his npc_primrose>> face, a large internal dildo sure to have <<=setup.getNpcName("npc_primrose","formal")>> jaw spread wide, while additional tubes leading to both the gag, and the masks filters. The nurse grins cruelly and flips a switch, <<=setup.getNpcName("npc_primrose","formal")>> body jolting as pink liquid flows down the tube leading to <<his npc_primrose>> gag, augmented further by gas pumping into the rest of the mask, <<his npc_primrose>> eyes rolling back in the moments before pink clouds obscure your view.<br>
<br>
The chamber seals with an air-tight hiss and the nurse hits another switch, this time sending a deluge of thick, pink, certainly drugged, liquid flooding into the cylinder, the chamber fills rapidly as <<=setup.getNpcName("npc_primrose","formal")>> strains against <<his npc_primrose>> bonds and the nurse rolls the large contraption away. You shudder at what your friend must be going through, surrounded and suffused with <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> concoctions, breathing and bathed in pink "bliss." You can't help but consider if <<his npc_primrose>> current situation is a consequence of your own actions, or merely of <<=setup.getNpcName("npc_boss","formal")>> somehow getting word of the <<if $fetish.sissy>>sissy <</if>>scientist's possibly wavering loyalties.
<<else>>
As your lesson draws to an end and <<=setup.getNpcName("npc_guard","formal")>> appears to leash you and take you back to your cell you spot a familiar face. <<=setup.getNpcName("npc_primrose","formal")>> doesn't seem to notice you, instead heading straight for <<=setup.getNpcName("npc_development","formal")>>, seemingly in a bit of a huff. You overhear something about an "@@.npc_primrose;antiquated routine.@@" As <<=setup.getNpcName("npc_guard","formal")>> finishes hobbling and cuffing you for the return to your cell.<br>
<br>
You follow obediently, as if you had any choice and, just as you reach the door, you hear <<=setup.getNpcName("npc_primrose","formal")>> one more time, this time with <<his npc_primrose>> voice raised as he storms past, saying something about "@@.npc_primrose;I'm going to make my OWN employee reeducation program! With cyber-jacks and hookers!@@"<br>
<br>
You watch the <<if $fetish.sissy>>sissy <</if>> scientist storm past... something seems different about <<him npc_primrose>>, <<his npc_primrose>> demeanor vaguely hinting at the mania of <<=setup.getNpcName("npc_work_doctor","formal")>>, as if <<=setup.getNpcName("npc_primrose","formal")>> had gone past <<his npc_primrose>> normal dedication to <<=setup.getNpcName("npc_boss","formal")>> to reach a level of frenzied obsession with <<his npc_primrose>> work for the company.
<</if>>
<br><br>
<<=setup.getNpcName("npc_guard","formal")>> tugs on your leash.<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_7" "Follow." 180>>]
</div>/*#
#desc: first day lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'gag_prisoner' true>>
<<deleteItem 'gag_prisoner'>>
<<applyExperience 'oral' $npc_boss.penis_size 'little' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You are lead back to your cell for a brief <<if $fetish.cum>>cum-flavoured<<else>>flavourless<</if>> lunch, the gag removed, but armbinder remaining in place as you are forced to suck it out of a large artificial cock modelled after <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>.<br>
<br>
The whole time <<=setup.getNpcName("npc_guard","formal")>> watches on, and from the way she stares at your lips you can easily imagine how much she wishes your lips were on her rather than the artificial phallus. As you glance closer you recognise the outline of a chastity belt through her clothes. <<=setup.getNpcName("npc_guard","formal")>> notices your attention and grins. "@@.npc_guard;You're not the only one imprisoned up here — the rules are that pretty much anyone short of management is required to be locked up here, even us guards. I suppose I can understand, staring at you like this is certainly quite the temptation...@@" A shiver of arousal runs down your spine as you find yourself sucking a little harder in excitement.<br>
<br>
You lick the last drop of your liquid lunch from the tip of the phallus and <<=setup.getNpcName("npc_guard","formal")>> speaks. "@@.npc_guard;So, now that you have had some re-education in how to better execute your duties, it is time for a bit of... penance for your prior failure. You will spend the afternoon being punished in recompense for your prior indiscretion. As you were reminded in this morning's lesson, submission to such measures is one of your core duties. Are you ready to submit? A friendly warning that resistance will only lead to extending your reeducation...@@"<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_9_punish" "Submit to punishment." 7200>>]<br>
[<<moveTo "event_stage_5_transition_weekend_day2_8" "Ask if you could make an alternative arrangement?" 300>>]
</div>/*#
#desc: stage 5 transition punishment choice
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You ask if there might be some alternate method by which you could prove your devotion to the company? Noting your "lesson" and that you being of service would surely be of greater value to the company than merely enduring pain?<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> smiles in amusement. "@@.npc_guard;Clever<<switch $player.identify_as>><<case 'female'>> girl<<case 'male'>> boy<</switch>>. Yes... I suppose I could slip you in for something else to prove your loyalty... the guards barracks has a lovely station that has, to my mind, gone empty for far too long...<<if $player.sec_style.submission.human_toilet != "" && $fetish.piss>> or, well... there is our bathroom — keeping you prisoners in line is thirsty work, and all that liquid has to go somewhere...<</if>>@@"<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_9_punish" "Just submit to punishment." 1800>>]<br>
[<<moveTo "event_stage_5_transition_weekend_day2_9_wall_1" "Agree to offer your body to the guards." 1800>>]<br>
<<if $player.sec_style.submission.human_toilet != "" && $fetish.piss>>
[<<moveTo "event_stage_5_transition_weekend_day2_9_piss" "Agree to be the guards' urinal." 1800>>]
<</if>>
</div>/*#
#desc: stage 5 transition punishment harsh
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'gag_prisoner'>>
<<wearItem 'gag_prisoner' true>>
<<removeItem 'prisoner_armbinder' true>>
<<deleteItem 'prisoner_armbinder'>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'bondage' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'submission' 15 'very' $SEEN_FRIEND>>
<<applyFatigue 100>>
<<spendWillpower 2>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
You agree to accept your punishment, your gag replacing itself moments later as <<=setup.getNpcName("npc_guard","formal")>> guides you to your feet and then binds you to the wall of your cell.<br>
<br>
Your arms and legs spread, the guard double checks your binds and then steps away, a note of sorrow in her voice as she raises a remote.<br>
<br>
"@@.npc_guard;If it makes any difference... I am sorry to do this, but rules are rules, and punitive measures are part of your re-education, and thus for your own good.@@"<br>
<br>
You look back in slight puzzlement, and then your entire body explodes in agony. You cry out in pain, straining against your bonds but finding no give. Though it feels much longer the punishment lasts for but a few moments. You go limp, panting through your gag.<br>
<br>
"@@.npc_guard;I told you before — that outfit of yours is quite advanced... well, I shall leave you to your punishment, do try to learn from it...@@"<br>
<br>
Just as she leaves the room the shocks return, along with a familiar, but far crueller than you remembered, voice. "@@.npc_ai_evil;<<uc "Disobedience means punishment.">>@@"<br>
<br>
You cry out again, only for the pain to stop a moment later and be replaced by a stimulating buzzing in your rear and <<if setup.checkItemTypeWorn("cage")>>underneath your chastity device<<else>>between your legs<</if>>. "@@.npc_ai_evil;<<uc "Obedience is rewarded.">>@@"<br>
<br>
You've barely started to recover from the pain and embrace the pleasure when things flip again. "@@.npc_ai_evil;<<uc "Disobedience means punishment.">>@@"<br>
<br>
You cry out even louder, the whiplash making the pain even more acute, your rear quivering as the previous stimulation turns to a rod of pain.<br>
<br>
Back and forth, pain, pleasure, pain, your afternoon rolls on...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_10" "Endure." 7200>>]
</div>/*#
#desc: stage 5 transition punishment sex wall
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Guard's Barracks">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
The guard smiles at your choice, quickly re-attaching your leash and leading you out of the cell. Walking up the hall you hear the muffled cries of fellow prisoners enduring their punishment and you shudder, hopeful that you have made the better choice.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> guides you to lay down, your limbs re-secured with your legs in a frog-tie and spread, your arms locked in stocks. From here your gag becomes an open-mouth style, and your <<if setup.checkItemTypeWorn("cage") && !setup.isCage() && $player.body_ref.vagina && $player.virgin.vaginal>>chastity belt and plug removed to expose your lower holes<<elseif $player.body_ref.vagina && $player.virgin.vaginal>>holes exposed<<else>>plug removed to exposed your rear<</if>>.<br>
<br>
A rigid harness is attached around your body and then you learn the creative engineering of the "station" as you discover that — bound, secured, and exposed, you can be rotated a full three hundred and sixty degrees, end over end.<br>
<br>
As you come to a horizontal position you notice that several additional guards have entered the room, the locks of their chastity belts clicking open as cunts and cocks are exposed, silent glances confirming hierarchy as they determine who gets you first...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_9_wall_2" "Get fucked..." 3600>>]
</div>/*#
#desc: stage 5 transition punishment sex wall
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'oral' 18 'unbelievable' $SEEN_FRIEND>>
<<applyFatigue 100>>
<</if>>
<<set $player.location to "Guard's Barracks">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_lockers.png">>
<div id="invframe" class="scrolltext">
The deliberation doesn't take long and soon you're getting double-teamed. Taking advantage of the "versatility" of your bondage you are fucked from every angle imaginable, on your back, upside-down, you "service" every guard who wants you as they unleash the pent-up energy of working locked up, fucking you or making you lick their cunts as you spin and suck and fuck and lick and repeat...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_10" "Just how many guards are there?..." 3600>>]
</div>/*#
#desc: stage 5 transition punishment piss
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'piss' 18 'unbelievable' $SEEN_FRIEND>>
<<applyExperience 'humiliation' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'terrible' $SEEN_FRIEND>>
<<applyFatigue 100>>
<</if>>
<<set $player.location = "Guard Bathroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png">>
<div id="invframe" class="scrolltext">
Rather than the "full" system you are used to from the executive bathroom, you find yourself merely leashed to the floor, arms bound as you kneel in the middle of the guards' shower — there for whoever wants to wander over and press their chastity belt to your lips,
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
heavenly
<<else>>
delicious
<</if>>
<<else>>
<<if setup.getTotalValue("piss") > 5>>
bitter
<<else>>
disgusting
<</if>>
<</if>>
<<getWordPiss>> flowing down your throat, and your chin, as you struggle to keep up, some impatient guards going too far as to just unleash their stream directly at you.<br>
<br>
Hours roll on as you find your orange outfit soaked with gold, a pool forming beneath you that has guards reluctant to approach, merely showering you from range as they laugh in amusement at the desperate piss-whore flopping around in her sea of urine...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day2_10" "Continue." 7200>>]
</div>/*#
#desc: stage 5 transition sleep 2nd night
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 100>>
<<spendWillpower 2>>
<<if setup.checkItemWorn('prisoner_armbinder')>>
<<removeItem 'prisoner_armbinder' true>>
<<deleteItem 'prisoner_armbinder'>>
<</if>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
Your punishment shift comes to an end, your body exhausted by the ordeal and you are almost limp as you are finally freed — hosed off briefly, water pumped between the artificial skin of your suit and your body to cleanse you of sweat and the rest before you are blown dry and returned to your cell where you gratefully flop into bed and fall fast asleep.<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 6, 0)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_stage_5_transition_weekend_day3_1" "Sleep." _timeToMorning>>]
</div>/*#
#desc: stage 5 transition wake day 3
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.fatigue = 0>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You wake up to another day in your private cell. You are sure it can't have been that long, but already you are losing track of time, how long will your imprisonment last? The intensity already has you longing to return to the comparative "normalcy" of being a mere <<if $fetish.sissy>>SISSI <</if>>Secretary.<br>
<br>
As you sit up you realise that, while you slept, some changes have been made, the re-arranging of your room without your knowledge only further driving home how truly helpless and at the company's mercy you are.<br>
<br>
<<=setup.getNpcName("npc_guard","formal")>> helps you to your feet and hands you a nutrient packet that you eagerly slurp down.<br>
<br>
"@@.npc_guard;So, I hope you have remembered your lessons, because this morning you have a special opportunity — a bit of undirected self-study, as it were.@@" She gestures to the other side of the cell, where a small desk has been set up — with a tablet, and yet another silicone copy of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>.<br>
<br>
<<printThought "They really like driving home the fact that to get ahead I have to suck and fuck the boss... literally, don't they?">><br>
<br>
"@@.npc_guard;The tablet will allow access to the internal wiki where all corporate policy and training materials are retained, the dildo, well... I figure you are quite familiar with how those work by now.@@"<br>
<br>
She rises to her feet and turns towards the door, "@@.npc_guard;I will leave you to it. We're actually running a bit ahead of schedule... you really ought to still be getting beauty rest, but I thought I'd give you a head start on the day, so you could better show your feelings about your job...@@"<br>
<br>
You realise she's lingering in the door with her back to you for a slightly long time.<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day3_2" "Thank her, and get to work." 600>>]<br>
[<<moveTo "event_stage_5_transition_weekend_day3_escape_1" "This is your chance! Subdue her and make your escape!" 3600>>]
</div>/*#
#desc: stage 5 transition self study choice
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
The guard leaves, the door locks closed behind her, and you consider your options.<br>
<br>
<<if setup.getTotalValue("penis") > 15>>
[@@.link_locked;You can't pass up even artificial <<getWordPenis "npc_boss">>.@@]<br>
<<else>>
[<<moveTo "event_stage_5_transition_weekend_day3_3" "Just lay back in bed and rest." 10800 "<<set $scene.action='slack'>>">>]<br>
<</if>>
[<<moveTo "event_stage_5_transition_weekend_day3_3" "Practice sucking cock." 10800 "<<set $scene.action='suck'>>">>]<br>
<<if setup.getTotalValue("penis") <= 15>>
[<<moveTo "event_stage_5_transition_weekend_day3_3" "Study corporate resources." 10800 "<<set $scene.action='study'>>">>]<br>
<</if>>
[<<moveTo "event_stage_5_transition_weekend_day3_3" "Suck cock while you study." 10800 "<<set $scene.action='both'>>">>]
</div>/*#
#desc: stage 5 transition self study
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case "slack">>
<<case "suck">>
<<applyExperience 'oral' $npc_boss.penis_size 'unbelievable' $ALONE>>
<<applyExperience 'penis' 18 'very' $ALONE>>
<<case "study">>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'unbelievable' $ALONE>>
<<case "both">>
<<applyExperience 'oral' $npc_boss.penis_size 'very' $ALONE>>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'very' $ALONE>>
<<applyExperience 'penis' 18 'very' $ALONE>>
<</switch>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "slack">>
You glance at the "study materials," but you just don't feel like doing anything, instead lounging around on the bed. You may be a prisoner, but not being gagged, and with full use of your limbs... well it's closer to freedom than you've seen in a while, so you enjoy that.
<<case "suck">>
<<if setup.getTotalValue("bimbofication") > setup.getTotalValue("smart") && setup.getTotalValue("smart") < 5>>
Words are, like, boring, you
<<else>>
You
<</if>>
push the tablet out of the way and focus all of your attention on the dildo. Each slurp tastes even better than the last as
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
you eagerly demonstrate your ability to deep-throat
<<else>>
you hone your ability to take
<</if>>
<<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>, challenging yourself to slide it balls deep and hold it there for as long as possible in between throat-punishing bursts of face-<<if $fetish.get_raped>>raping<<else>>fucking<</if>> yourself.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
you struggle to take the clone of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>.
<<else>>
you practice licking, and occasional sucking, of the too-large clone of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>.
<</if>>
<</if>>
<br><br>
You fall into a state of zen as you lick and suck, a part of your brain telling you that the dildo must be drugged or something, but the urge to suck overwhelms all else.
<<case "study">>
Even though you have <<if setup.getTotalValue("penis") > 10>>an instinctive<<elseif setup.getTotalValue("penis") > 5>>a strange<<else>>an unnatural<</if>> urge to indulge the artificial <<getWordPenis "npc_boss">> you put it aside and merely start studying corporate policies and procedures.<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
It's all stuff you already understood, but review is always useful, and you focus on reading carefully just in case there's a subtle detail you had forgotten.
<<else>>
It's mostly things you already understood, but you pick up a few subtle details that could be useful if you ever returned to your normal secretary duties.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
Some parts are a bit complicated, but you read and re-read, hoping to have better understanding for when (if?) you return to your secretary duties.
<<else>>
It's all, like... way too complicated? But you keep reading, hoping that, even if you don't understand the words, it might prove somehow useful.
<</if>>
<</if>>
<<case "both">>
Instinctively you know that, if you ever want to leave this prison and return to your duties as a <<if $fetish.sissy>>SISSI <</if>>Secretary, you need to show aptitude both in being a studious clerk... and an eager whore.<br>
<br>
With a clone of <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordPenis "npc_boss">>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
shoved down your throat,
<<else>>
sliding in and out of your throat,
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
filling your mouth,
<<else>>
spreading your lips,
<</if>>
<</if>>
<<if setup.getTotalValue("smart") > 10>>
you studiously comb over the corporate training material
<<if setup.getTotalValue("smart") > 15>>
in hopes of finding a missed detail you could apply to your work.
<<else>>
in search of new techniques or information.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
you do your best to untangle the complex web of corporate policy and procedure.
<<else>>
you try to read the complex, dry documentation of corporate policy and procedure.
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "event_stage_5_transition_weekend_day3_4" "The afternoon rolls on." 3600>>]
</div>/*#
#desc: stage 5 transition npc_boss visit
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "slack">>
Your lazy afternoon is interrupted by a sound at the door. Without even knocking <<=setup.getNpcName("npc_boss","formal")>> walks in and sneers down at you.<br>
<br>
"@@.npc_boss;Taking a break? I suppose it is an improvement over active disobedience, but it remains a disappointment.@@"
<<case "suck">>
Your mouth-filled afternoon is interrupted by a sound at the door. Without even knocking <<=setup.getNpcName("npc_boss","formal")>> walks in and leers down at you.<br>
<br>
"@@.npc_boss;Keep that up and I might give you a taste of the real thing.@@"<br>
<br>
You're on a bit of a cock-addicted high and you stare longingly at the bulge in <<his npc_boss>> pants, still sucking on <<his npc_boss>> clone as you fantasise about the authentic article.
<<case "study">>
Your studies are interrupted by a sound at the door. Without even knocking <<=setup.getNpcName("npc_boss","formal")>> walks in and looks down at you.<br>
<br>
"@@.npc_boss;Well, well, I had not taken you for a bookworm.@@"<br>
<br>
You get a weird flashback to school, feeling like the nerdy student being picked on by the popular kids.
<<case "both">>
Your sucking (but hardly sucky!) studies are interrupted by a sound at the door. Without even knocking <<=setup.getNpcName("npc_boss","formal")>> walks in and grins down at you.<br>
<br>
"@@.npc_boss;Well, well, aren't you industrious. Studious, slutty and, most of all, submissive. That is the formula for a perfect <<if $fetish.sissy>>SISSI<<else>>Executive<</if>> Secretary.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You put things away and wait nervously for <<=setup.getNpcName("npc_boss","formal")>> to explain the reason for <<his npc_boss>> visit.<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day3_5" "Continue." 600>>]
</div>/*#
#desc: stage 5 transition npc_boss choice
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 15 'little' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
"@@.npc_boss;I hope you have been enjoying our little rehabilitation program. It remains a work in progress but still, useful.@@" <<He npc_boss>> grins and you tremble. Being in such a small room with <<him npc_boss>> only accentuates the effects of <<his npc_boss>> presence and you find yourself breathlessly hanging on <<his npc_boss>> every word. "@@.npc_boss;As much as you might benefit from, and enjoy, an extended stay... well, there are time-lines to meet. I believe your momentary transgression can be put aside... if you are willing to prove your devotion to the company. Towards that end I am going to offer you a choice. You have committed quite the offense against me, and the company — but I repeat myself for I AM the company. I will give you two choices in how you can show contrition and return to the job you have become so experienced at.@@"<br>
<br>
You hold your breath, on the one hand, you're still terrified but... this has to be better than your current pseudo-jail, right? With what you already know of the company, and <<=setup.getNpcName("npc_boss","formal")>>... you aren't certain.<br>
<br>
"@@.npc_boss;First, well, first is you show your true self — the submissive <<if $fetish.sissy>>SISSI <</if>>Secretary — not with your current manager, of course... it will take time for her to be... re-educated to properly contribute to the company, but, until then, you eagerly submit to remedial training and prove your obedient loyalty is to the company, and that your dalliance in my office was just a momentary lapse. Your other option, well... you take all that you have learned... and you prove your devotion by teaching another <<if $fetish.sissy>>SISSI <</if>>Secretary, purge your sins by indoctrinating another onto the path you have advanced so far down.@@"<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> has been walking around you this whole time and <<he npc_boss>> finishes standing in front of you, grinning, confident, a ruler even without a throne, in total control of everything.<br>
<br>
"@@.npc_boss;So, which shall it be — prove the depths of your devotion as a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary... or inflict your fate on another?@@"<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day3_6" 'Beg <<his npc_boss>> forgiveness, you ARE a submissive <<if $fetish.sissy>>SISSI <</if>>Secretary.' 300 "<<set $scene.sub=true>><<set $scene.collared=false>>">>]<br>
<<if setup.getTotalValue("dominance") > 10>>
<<if $player.sec_style.submission.collar == "">>
[<<moveTo "event_strict_collar" 'You will show your devotion by indoctrinating another into the ways of the company.' 300 "<<set $scene.sub=false>>">>]
<<else>>
[<<moveTo "event_stage_5_transition_weekend_day3_6" 'You will show your devotion by indoctrinating another into the ways of the company.' 300 "<<set $scene.sub=false>><<set $scene.collared=false>>">>]
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 0>>
[@@.link_locked;You may have trained in dominance... but not enough to volunteer to indoctrinate another... doubly so with <<=setup.getNpcName("npc_boss","formal")>> staring down at you, making you feel small and submissive.@@]
<<else>>
[@@.link_locked;You do not have a dominant bone in your body, there is no way you could indoctrinate another.@@]
<</if>>
<</if>>
</div>/*#
#desc: npc_boss collars you (strict)
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.choker = setup.getItemFromType('choker')>>
<<if $scene.choker != "">>
<<removeItem $scene.choker true>>
<</if>>
<<addItem 'corporate_collar'>>
<<wearItem 'corporate_collar' true>>
<<setThreshold 'submission' 'collar_submission' 'forced'>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_STRANGER>>
<<if $player.sec_style.submission.collar == "">>
<<set $player.sec_style.submission.collar = "strict">>
<</if>>
<<set $player.flags.collar.owner = 'company'>>
<<set $player.flags.collar.collarId = 'corporate_collar'>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You confidently state that you will prove your devotion to the company by breaking another to submit to its ways.<br>
<br>
<<=setup.getNpcName("npc_boss","formal")>> grins... and then <<his npc_boss>> hand is on your throat. "@@.npc_boss;Very interesting... but I think we need to make one adjustment before you continue down this road...@@" Your heart freezes in your throat — <<he npc_boss>>'s already done so much, what could possibly be left?<br>
<br>
<<if $scene.choker != "">>
<<He npc_boss>> roughly removes your <<=setup.getItemName($scene.choker)>> and then
<<else>>
After a not-so-gently squeeze <<his npc_boss>> grasp relaxes, and he
<</if>>
runs <<his npc_boss>> fingers along your bare neck.<br>
<br>
Your life flashes before your eyes. "@@.npc_boss;You are about to embark on a task of dominance, of control... but I need you to remember who you are. Your past failures? They are at an end. You had so many opportunities to be a good girl, an obedient girl, and owned slave... now? Well, since you have found nobody to claim you, you revert to the company itself, a reminder that, no matter what you do, you belong to us... to ME.@@" One hand still wrapped around your throat <<he npc_boss>> snaps <<his npc_boss>> fingers with <<his npc_boss>> other hand, and the door opens, <<=setup.getNpcName("npc_retention","formal")>> momentarily stepping into the cell to hand <<=setup.getNpcName("npc_boss","formal")>> a heavy collar, the words "Property of SISSI" laser-etched across a steel plate that runs across its front.<br>
<br>
"@@.npc_boss;This should keep you in mind of what you are — a thing. A two-legged organic machine who exists to obey and serve,@@" the collar locks around your throat with an intimidating "clunk." "@@.npc_boss;And, should you forget that fact? Well...@@" <<He npc_boss>> produces a remote, a soft click followed by an explosion of pain as it feels like your entire neck is on fire. <<His npc_boss>> grin drips with cruel menace "@@.npc_boss;So... now that we have THAT out of the way...@@"<br>
<br>
You pant softly, along in the cell with <<=setup.getNpcName("npc_boss","formal")>> once more, the weight of the heavy, steep collar reminding you of its presence with every breath...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day3_6" "Continue." 300 "<<set $scene.collared=true>>">>]
</div>/*#
#desc: stage 5 transition surgery
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_boss") setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<if $scene.collared>>
All smiles once again <<=setup.getNpcName("npc_boss","formal")>> snaps his fingers a second time and a new tormentor enters the room, <<=setup.getNpcName("npc_work_doctor","formal")>> leering at you with near manic excitement.
<<else>>
You nervously announce your decision and <<=setup.getNpcName("npc_boss","formal")>> smiles.<br>
<br>
"@@.npc_boss;Very well — in that case we had better get you ready to return to work.@@" The cell door opens again and <<=setup.getNpcName("npc_work_doctor","formal")>> steps inside.
<</if>>
<br><br>
"@@.npc_boss;She is all yours.@@" <<=setup.getNpcName("npc_boss","formal")>> states with a cruel smile.<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> grins, your prisoner outfit gagging and binding your arms as the mad doctor takes hold of your leash and leads you out of the room...<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day3_7" 'Continue.' 1800>>]
</div>/*#
#desc: stage 5 transition surgery
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
Rather than taking you far you only make it to the end of the hallway before you are guided onto a gurney and strapped down. You are wheeled through the halls and into a surgical room, a mask pressed over your face to pump you full of a sweet gas that has you drifting into happy, lustful sleep.<br>
<br>
<<set _morning = setup.getNextDayOfWeek($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_stage_5_transition_start_1" 'Sleep...' _timeToMorning>>]
</div>/*#
#desc: stage 5 transition guard chat
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.prisonGuard[$scene.action] = true>>
<<if $scene.action == 'fight' && setup.getTotalValue("martial_arts") <= 15>>
<<applyExperience 'bdsm' 20 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'fight'>>
<<if State.hasPlayed("event_tournament_win_1") || setup.getTotalValue("martial_arts") > 15>>
You recall your prior victory and take a swing at the guard... only to be driven to the floor at an explosion of electrified pain. Clutching yourself in the fetal position you whimper as she stands over you.<br>
<br>
"@@.npc_guard;We'll be having none of that — <<if State.hasPlayed("event_tournament_win_1")>>I know exactly how good you are, <</if>> not that beating me would have mattered, you'd still be stuck in here. Come on, be a good prisoner and get changed. The only way you're ever getting out of this cell is to go through the program... well, there's one other way, but trust me it's much worse and the "you" that left, well... it wouldn't be you anymore.@@"
<<else>>
<<if setup.getTotalValue("martial_arts") > 10>>
You try to take the guard by surprise, but she expertly parries your move and slams you face-first into the bed.
<<else>>
You take a
<<if setup.getTotalValue("martial_arts") > 5>>
<<else>>
clumsy
<</if>>
swing at the guard and she easily slips it, spinning you through the air and slamming you surprisingly gently onto your bed.
<</if>>
<br><br>
"@@.npc_guard;Now now, we shan't be having any of that, now. Come on, be a good prisoner and get changed. The only way you're ever getting out of this cell is to go through the program... well, there's one other way, but trust me it's much worse and the "you" that left, well... it wouldn't be you anymore.@@"
<</if>>
<br><br>
She waits a few moments for you to calm down before letting you back up to your feet, offering the orange latex jumpsuit once again.
<<case 'info'>>
You ask <<=setup.getNpcName("npc_guard","formal")>> what's going on?<br>
<br>
She pauses, seeming to pick her words carefully before responding.<br>
<br>
"@@.npc_guard;It's quite simple, really. We in the employee retention department are committed to assisting the company in holding on to its most valuable resource, our exemplary, and highly trained, employees. We have many initiatives optimised for different types of employees, and infractions. In your case, well... owing to the combination of your prior corporate debts, and the occasion of your most recent violation... well, there seems to be quite an even higher than normal interest in doing EVERYTHING possible to make sure you stay with us.@@"<br>
<br>
The way she says EVERYTHING has your heart skipping a beat... <<printThought "What have I gotten myself into this time?">>
<<case 'escape'>>
You ask <<=setup.getNpcName("npc_guard","formal")>> to help you escape.<br>
<br>
There is a flicker of concern on her face as she glances past you.<br>
<br>
<<printThought "Of course we'd be under surveillance... I'm always under surveillance.">><br>
<br>
"@@.npc_guard;Escape? Why would you want to escape? While sometimes harsh, the efforts of the Employee Retention Program are for your benefit, and the benefit of the company. Now come, change — the sooner you move forward with your rehabilitation, the sooner you can be happily back on the job and contributing to the company...@@"
<<case 'seduce'>>
You strike a seductive pose — not exactly a challenge, given that you're presently naked, and ask the guard if she "@@.pc;See's anything she likes.@@"<br>
<br>
She grins. "@@.npc_guard;Don't you fucking know it! What I wouldn't give to just RUIN that hot body of yours, but, alas, well... <<if setup.checkItemTypeWorn("cage")>>you aren't the only one<<else>>I am presently<</if>> locked up.@@" For emphasis she raps her crotch, the loud thunk of knuckles on steel telling you she is as locked <<if setup.checkItemTypeWorn("cage")>>up as you are<<else>>in chastity<</if>>. "@@.npc_guard;We aren't allowed to take advantage of prisoners except as part of a specific rehabilitation plan, for your safety, and our own. Given how intoxicatingly seductive you lot can be, well... I was locked up at the start of my shift and shan't be let out until I clock out. Don't worry, though, I'll certainly be thinking of you when I relieve myself this evening! Now come on, slip into that sexy prison outfit and give me some more material for tonight...@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<include "stage4TransPrisonGuardTalk">>
</div>/*#
#desc: stage 5 transition wake day 3
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet "prisoner_unbound">>
<<deleteItemSet "prisoner_unbound">>
<<addItemSet "costume_guard">>
<<wearItemSet "costume_guard" true>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
Whether it was intentional on her part or not, you take advantage of the guard's apparent distraction, leaping onto her back and
<<if setup.getTotalValue("martial_arts") > 10>>
<<if setup.getTotalValue("martial_arts") > 15>>
going straight for a choke, putting her out in moments.
<<else>>
going straight for a choke, squeezing hard until she slumps, unconscious.
<</if>>
<<else>>
<<if setup.getTotalValue("martial_arts") > 5>>
managing to secure a choke.
<<else>>
somehow managing something resembling a choke.
<</if>>
<</if>>
<br><br>
Your heart is pumping now as you realise that there's no turning back, and you quickly drag her into the room and frantically strip off your jumpsuit to swap clothes.<br>
<br>
Her outfit doesn't fit well, but it's stretchy enough, and it's not like you have a choice, at this point. Not wanting to waste any more time; the "early start" to the day having given you a window before anyone was actively monitoring your surveillance, you hurry up the hall, making a guess as to the direction of the elevator and getting lucky.<br>
<br>
[<<moveTo "event_stage_5_transition_weekend_day3_escape_2" "Escape?" 600>>]
</div>/*#
#desc: stage 5 transition wake day 3
#status: RELEASED 0.9.0.0
#*/
<<set $gameOver = 'stage5_escape'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "">>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "TODO">>
<div id="invframe" class="scrolltext">
By some stroke of luck you manage to make it to the ground floor and then out onto the street. Hailing the first cab you can you flee — certainly you feel guilt over abandoning your friends, but you've seen the inside of the company, and know how powerful and far-reaching it is. Alone, without other resources... you know you have no chance and so you do the only thing you can: you run... forever.<br>
<br>
In the news you read the stories of Social Interaction Service Syndicate Inc. gobbling up more companies; first Nintendolls, but then more and more, spanning every industry.<br>
<br>
You just keep moving, irrationally hoping that you can keep ahead of whatever world conquest schemes <<=setup.getNpcName("npc_boss","formal")>> seems to be executing unopposed...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to the party">><<restartDay>><</link>>]<br>
<</if>>
[<<moveTo "event_stage_5_transition_weekend_day1_1" 'Restart the weekend...' 0 "<<set $now = setup.setNextDate($now, -3, 6, 30)>>">>]
</div>/*#
#desc: dressed for first stage 5 shift
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet "prisoner_unbound">>
<<deleteItemSet "prisoner_unbound">>
<<removeItem "leash_orange" true>>
<<deleteItem "leash_orange">>
<<set $scene.workingRival = true>>
<<removeAllClothing>>
<<set $scene.rivalWorkCounter = 0>>
<<set $scene.perfectCount = 0>>
<<set $scene.growBreasts = $player.body.breastsize[1] < 10>>
<<if $scene.growBreasts>>
<<set $player.body.breastsize[1] = 10>>
<<if !$player.sec_style.body.breasts>>
<<set $player.sec_style.body.breasts = "forced">>
<</if>>
<</if>>
<<set $scene.hair = $player.hair.style != 'long_open' || $player.hair.color != 'blonde'>>
<<if $scene.hair>>
<<changeHair 'long_open' 'blonde'>>
<</if>>
<<set $player.timebased.fatigue = 0>>
<<if setup.checkItemTypeWorn("plug", true)>>
<<set _plug = setup.getItemFromType("plug")>>
<<removeItem _plug true>>
<</if>>
<<if setup.checkItemTypeWorn("hollow_plug") && setup.getItemFromType("cage") != setup.getItemFromType("hollow_plug")>>
<<set _plug = setup.getItemFromType("hollow_plug")>>
<<removeItem _plug true>>
<</if>>
<<if !$backupInventory>>
<<set $backupInventory = []>>
<<moveAllInventoryToWardrobe $backupInventory>>
<</if>>
<<addItemSet "elite_secretary">>
<<if setup.checkItemOwned('vibrating_plug_large')>>
<<if setup.inWardrobe('vibrating_plug_large')>>
<<wardrobeToItem 'vibrating_plug_large'>>
<</if>>
<<else>>
<<addItem 'vibrating_plug_large'>>
<</if>>
<<wearItem "vibrating_plug_large" true>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png" setup.charImage("npc_ai","npc_ai_evil")>>
<div id="invframe" class="scrolltext">
You awaken to the sound of an alarm.
<<if $scene.growBreasts && $scene.hair>>
As you sit up you immediately feel something off — bolted to your chest are a pair of massive breasts, and looking down at them causes a cascade of blonde hair to fall down over your face.
<<elseif $scene.growBreasts>>
As you sit up you immediately feel something off — bolted to your chest are a pair of massive breasts.
<<elseif $scene.hair>>
As you sit up a cascade of blonde hair falls down over your face.
<<else>>
You feel refreshed, but a little mentally fuzzy.
<</if>>
Recognising the room as your cell that you have been stuck in for the past few days, you stand and look at yourself in the mirror. Your prisoner's jumpsuit is gone, and staring back at you is the picture of a big-breasted bimbo...<<if $npc_manager.flags.require_chastity>> locked in chastity<</if>>.<br>
<br>
A familiar robotic voice speaks to you, but in a tone that sounds immediately alien and impersonal, and you look up to see a very different holographic figure than you are accustomed.<br>
<br>
"@@.npc_ai_evil;<<uc "Wake up Miss">> <<uc $player.last_name>> <<uc "your work shift starts in... TEN minutes, dress and prepare for the day. A guard will arrive shortly to escort you to your workstation.">>@@"<br>
<br>
<<printThought "Oh no... that isn't <<=setup.getNpcName('npc_ai', 'first')>>... have I lost my digital guardian?">><br>
<br>
You sit up, there is a simple secretary outfit and a large butt plug laid out for you in front of a small nook where you can do your makeup.<br>
<br>
<<if setup.checkItemSetWorn("elite_secretary") && ["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup()) && $player.makeup.messed < 15>>
<<if setup.isItemEquipped('vibrating_plug_large')>>
<<printThought "I'd call this ready for work.">>
<<else>>
<<printThought "I'm dressed and made up for work, but, given this company, I'm probably expected to wear the plug as well...">>
<</if>>
<<else>>
<<printThought "I am not appropriately equipped for work.">>
<</if>>
<br><br>
<<if false>>
<<moveTo "event_stage_5_transition_start_1a">>
<</if>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Private Cell">><<set $scene.return_makeuproom="event_stage_5_transition_start_1a">><<set $scene.makeuproom_image="./images/locations/cell.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]<br>
[<<moveTo "event_stage_5_transition_start_2" 'Wait for your escort.' 600 '<<set $player.inside = false>><<set $player.cutscene.lockinventory = true>>'>>]
</div>/*#
#desc: dressed for first stage 5 shift
#status: RELEASED 0.9.0.0
#*/
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You look at yourself in the mirror.<br>
<br>
<<if setup.checkItemSetWorn("elite_secretary") && ["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup()) && $player.makeup.messed < 15>>
<<if setup.isItemEquipped('vibrating_plug_large')>>
<<printThought "I'd call this ready for work.">>
<<else>>
<<printThought "I'm dressed and made up for work, but, given this company, I'm probably expected to wear the plug as well...">>
<</if>>
<<else>>
<<printThought "I am not appropriately equipped for work.">>
<</if>>
<br><br>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Private Cell">><<set $scene.return_makeuproom="event_stage_5_transition_start_1a">><<set $scene.makeuproom_image="./images/locations/cell.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]<br>
[<<moveTo "event_stage_5_transition_start_2" 'Wait for your escort.' 600 '<<set $player.inside = false>><<set $player.cutscene.lockinventory = true>>'>>]
</div>/*#
#desc: picked up for first stage 5 shift
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
A guard enters the room without even knocking, they glance you over and
<<if setup.checkItemSetWorn("elite_secretary") && ["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup()) && $player.makeup.messed < 15 && setup.isItemEquipped('vibrating_plug_large')>>
nod in muted approval before
<<else>>
shake their head before
<</if>>
slapping a collar around your neck and leading you out of the room, up a hallway and to an elevator.<br>
<br>
You watch the numbers tick up from the basement to the upper floors, then you are led through another hallway and into a familiar office. <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is not present, but the door to the inner office swings open and you hear <<=setup.getNpcName('npc_rival', 'formal')>> summon you; "@@.npc_rival;Enter!@@"<br>
<br>
<<if setup.checkItemSetWorn("elite_secretary") && ["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup()) && $player.makeup.messed < 15 && setup.isItemEquipped('vibrating_plug_large')>>
<<if $scene.sub>>
[<<moveTo "event_stage_5_transition_sub_monday_1" 'Enter the office.' 300>>]
<<else>>
[<<moveTo "event_stage_5_transition_dom_monday_1" 'Enter the office.' 300>>]
<</if>>
<<else>>
[<<moveTo "event_stage_5_transition_start_3" 'Enter the office.' 300>>]
<</if>>
</div>/*#
#desc: picked up for first stage 5 shift
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_rival.anger = 0>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName('npc_rival', 'formal'))>> office where <<he npc_rival>> snorts in annoyance.<br>
<br>
"@@.npc_rival;What in the hell are you wearing?@@" <<He npc_rival>> shakes <<his npc_rival>> head "@@.npc_rival;And to think that I once admired <<=setup.getNpcName('npc_manager', 'other')>>... it really is amazing how blind you can be when someone has a reputation, look at you! You are supposed to be a <<=setup.getFullTitle()>>... and yet you show up to work
<<if setup.checkNaked()>>naked<<elseif !setup.checkItemSetWorn("elite_secretary_outer") && setup.checkItemSetWorn("elite_secretary_underwear")>>wearing only underwear<<elseif setup.checkItemSetWorn("elite_secretary_outer") && !setup.checkItemSetWorn("elite_secretary_underwear")>>without underwear<<else>>wearing a partial outfit<</if>>,
<<if !["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup()) && $player.makeup.messed >= 15>>with inappropriate, and ruined, makeup<<elseif setup.getCurrentMakeup() == "">>without makeup<<elseif !["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup())>>with the wrong makeup<<elseif $player.makeup.messed >= 15>>your makeup a mess...<</if>>
<<if !setup.isItemEquipped('vibrating_plug_large')>> and without your regulation plug inserted!<</if>>
Why, if <<if setup.checkItemTypeWorn("cage")>>it was not for your chastity device<<if setup.checkItemWorn("corporate_collar")>> and collar<</if>><<elseif setup.checkItemWorn("corporate_collar")>><<else>>I did not know better<</if>> one would think you had nothing to do with the company! Disgusting, and pathetic.@@"<br>
<br>
<<He npc_rival>> snaps <<his npc_rival>> fingers and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> appears holding
<<if !setup.checkItemSetWorn("elite_secretary") && !setup.isItemEquipped('vibrating_plug_large')>>
your missing clothes, <<if !["normalmakeup", "expertmakeup", "moviestar", "sissy_doll", "ultimatebimbo"].includes(setup.getCurrentMakeup()) || $player.makeup.messed >= 15>>a makeup kit, <</if>>and the large plug.
<<elseif !setup.checkItemSetWorn("elite_secretary") && (!["normalmakeup", "expertmakeup", "moviestar", "camgirl", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup()) || $player.makeup.messed >= 15)>>
your missing clothes and a makeup kit.
<<elseif (!["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup()) || $player.makeup.messed >= 15) && !setup.isItemEquipped('vibrating_plug_large')>>
a makeup kit and the large plug.
<<elseif !setup.checkItemSetWorn("elite_secretary")>>
your missing clothes.
<<elseif !["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup()) || $player.makeup.messed >= 15>>
a makeup kit.
<<elseif !setup.isItemEquipped('vibrating_plug_large')>>
the large plug.
<<else>>
ERROR: unexpected state!
<</if>>
<br><br>
You glance at <<=setup.getNpcName('npc_sissy_secretary', 'first')>> and remember what brought you here — if you can't prove yourself to <<=ps(setup.getNpcName('npc_rival', 'formal'))>> satisfaction something very bad is certainly in store for you. You take a deep breath and follow <<=setup.getNpcName('npc_sissy_secretary', 'first')>> out of the room to get properly prepared for work.<br>
<br>
[<<moveTo "event_stage_5_transition_start_4" 'Continue.' 600>>]
</div>/*#
#desc: picked up for first stage 5 shift
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_rival.anger = 4>>
<<if !setup.checkItemSetWorn("elite_secretary")>>
<<wearItemSet "elite_secretary">>
<<incrementEmotion 'anger' 'npc_rival' 2>>
<</if>>
<<if !setup.isItemEquipped('vibrating_plug_large')>>
<<wearItem 'vibrating_plug_large' true>>
<<incrementEmotion 'anger' 'npc_rival' 2>>
<</if>>
<<if !["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "qtpie", "ultimatebimbo"].includes(setup.getCurrentMakeup()) || $player.makeup.messed >= 15>>
<<set $player.makeup.messed = 0>>
<<set $player.makeup.template = "normalmakeup">>
<<incrementEmotion 'anger' 'npc_rival' 2>>
<</if>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> helps you get properly prepared for work, noting softly that <<=setup.getNpcName('npc_rival', 'formal')>> "@@.npc_sissy_secretary;Really isn't so bad so long as you do not disappoint <<him npc_rival>>. <<He npc_rival>> just has very high standards and we <<if $fetish.sissy>>SISSI <</if>>secretarys need to do everything we can to meet them. After all, <<he npc_rival>> is now the director of Human Resources, such an important position.@@"<br>
<br>
You bite your lip nervously, wondering what has become of <<=setup.getNpcName('npc_manager', 'formal')>> to lose her position and title to this upstart...<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> works efficiently and soon sends you back into the lion's den.<br>
<br>
"@@.npc_rival;You are off to a very poor start,@@" <<=setup.getNpcName('npc_rival', 'formal')>> states once you are fully dressed, painted and filled. "@@.npc_rival;Unlike your previous owner I demand perfection at all times. Whatever lazy patterns led to this point, well... @@" Your plug <<if _TODOcageems>>and chastity device <</if>> explodes with electric shocks.<br>
<br>
You
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
moan
<<else>>
gasp
<</if>>
in masochistic pleasure.
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
gasp
<<else>>
cry out
<</if>>
in pain.
<</if>>
<br><br>
"@@.npc_rival;And there is more where that came from!@@" <<He npc_rival>> states — "@@.npc_rival;My philosophy is that the slightest failure must be met with instantaneous corrective measure. And to encourage teamwork I will note that any punishment YOU earn will be given to your friend <<=setup.getNpcName('npc_sissy_secretary', 'first')>> as well, and vice versa. Perhaps camaraderie will provide an additional motivation to your behaviour, and help the two of you keep one another in line.@@"<br>
<br>
<<He npc_rival>> waits as if to see if you have something further to say, but you wisely hold your tongue.<br>
<br>
"@@.npc_rival;Now, with that out of the way, let us proceed to the plan <<=setup.getNpcName('npc_boss', 'formal')>> has laid out for you to prove that you deserve to retain employment as an executive <<if $fetish.sissy>>SISSI <</if>>Secretary at this company. Let us start over — walk out and come back into my office and present yourself PROPERLY for the day's work.@@"<br>
<br>
<<if $scene.sub>>
[<<moveTo "event_stage_5_transition_sub_monday_1" 'Leave and re-enter the inner office.' 300>>]
<<else>>
[<<moveTo "event_stage_5_transition_dom_monday_1" 'Leave and re-enter the inner office.' 300>>]
<</if>>
</div>/*#
#desc: dom stage 5 transition intro
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5IntroCheck">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName('npc_rival', 'formal'))>> inner office and <<he npc_rival>> greets you with an evil grin.<br>
<br>
"@@.npc_rival;Lovely — this is how a <<if $fetish.sissy>>SISSI <</if>>Secretary should look — properly dressed, made up,<<if $npc_manager.flags.require_chastity>> locked,<</if>> and filled and ready to work — which means you are ready to start the week properly. Per your agreement with <<=setup.getNpcName('npc_boss', 'formal')>> you will be mentoring a new employee. Teach them well — you will be judged on both your performance, and theirs, at the end of the week. If you would like to take a moment to say good-bye to <<=setup.getNpcName('npc_sissy_secretary', 'formal')>> — three <<if $fetish.sissy>>SISSI <</if>>Secretaries would be a distraction, so she will be attending to other company business for the week.@@"<br>
<br>
You bite your lip, are you really ready to induct someone else into the ways of the company? It looks like, if you want to continue forward yourself, you have no choice...<br>
<br>
"@@.npc_rival;I am sure you are eager to get working and prove your worth. Note that my standards are quite high, particularly in light of your... failure. Work hard, work efficient, and display total submission at all times — and make sure that you teach your new associate the same. By the end of the week I expect to see two devoted <<if $fetish.sissy>>SISSI <</if>>Secretaries, each fully committed to the company, and making their owner pleased and proud.@@"<br>
<br>
<<He npc_rival>> dismisses you with a wave.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_2" 'Curtsy and depart.' 300>>]
</div>/*#
#desc: dom stage 5 monday, before meet new employee
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> is already gone by the time you emerge from the inner office, leaving behind a note wishing you "@@.npc_sissy_secretary;Good luck!@@" Next to a neatly folded <<if $fetish.sissy>>SISSI <</if>>Secretary outfit on the desk it looks like you'll be sharing with your mentee.<br>
<br>
There is a knock on the door.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_3" 'Get the door.' 300>>]
</div>/*#
#desc: dom stage 5 monday, meet new employee
#status: RELEASED 0.9.0.0
#ignore_spell: h
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(0)>>
<div id="invframe" class="scrolltext">
You get the door and get a sudden flash of deja vu. Facing you is a nervous <<guy npc_mentee>>. Thanks to your heels <<he npc_mentee>>'s forced to look up at you... well, after a moment of being distracted by your massive breasts.<br>
<br>
"@@.npc_mentee;Uh... h-hi, my name is <<=setup.getNpcName('npc_mentee', 'full')>> and I'm supposed to start a new job today? Is this the office of <<=setup.getNpcName('npc_rival', 'formal')>>.@@"<br>
<br>
You smile and introduce yourself as you welcome <<him npc_mentee>> in, explaining that you'll be <<his npc_mentee>> mentor to help <<him npc_mentee>> through <<his npc_mentee>> first week.<br>
<br>
"@@.npc_mentee;Thanks, I tell you, I really need this job, been sending out applications for weeks and then I got this offer for an administrative assistant position... I mean, it's not what I ever imagined doing but a paycheck is a paycheck in this economy, right?@@" <<He npc_mentee>> freezes awkwardly. "@@.npc_mentee;Sorry, um, I'm sure you like your job I just... uh... let's talk about something else... you see, I was reading through the contract and instructions for my first day... and, well, there must have been some sort of mistake, see, it said I needed to wear a <<if $npc_mentee.fem>>short skirt, tall high heels, and a skimpy top. But this isn't some sort of strip club<<else>>dress, heels and an office-appropriate top but... I'm a <<guy npc_mentee>><</if>>, so, that has to have been a mistake, right?@@"<br>
<br>
<<printThought "Shit... do they really expect me to <<if $npc_mentee.fem>>transform this innocent <<guy npc_mentee>> into a bimbo<<else>><<if $fetish.sissy>>sissify<<else>>feminise<</if>> this innocent <<guy npc_mentee>><</if>>? I guess it's better I do it than they be left to <<=setup.getNpcName('npc_work_doctor', 'formal')>>... hell, in a way they may be lucky, rocketing straight to upper floors instead of having to work their way up like I did...">> you aren't completely convinced by your argument, but it does give you a modicum of comfort, given the task you have before you. <<printThought "It's not like I have a choice, if I don't do what <<=setup.getNpcName('npc_boss', 'formal')>> said...">><br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_4" 'Explain that it was no mistake, but that you have some "appropriate" clothing for them to change into.' 300 "<<set $scene.clothes=true>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_monday_4" 'Reply that it must have been some sort of paperwork error.' 300 "<<set $scene.clothes=false>>">>]
</div>/*#
#desc: dom stage 5 monday, new employee change
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.clothes>>
<<applyExperience 'dominance' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.clothes>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(1)>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(0)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.clothes>>
You explain that the dress code for their new job is VERY particular, and that there was no mistake.<br>
<br>
"@@.npc_mentee;But, I'm a <<guy npc_mentee>>—@@" They reply as you present them with a blouse<<if $npc_mentee.fem>>and skirt<<else>>, a skirt and a padded bra<</if>>.<br>
<br>
"@@.pc;No mistake,@@" you re-iterate as you hand them the clothes, the dominant edge in your voice managing to override their objection as they take the clothes and nervously look around.<br>
<br>
"@@.npc_mentee;Um, wow, this is, but I mean, I really do need this job... and it's just clothes, right? So... where can I change?@@"<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_4_1" 'They can change in front of you.' 300 "<<set $scene.privacy=false>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_monday_4_1" 'Give them some privacy.' 300 "<<set $scene.privacy=true>>">>]
<<else>>
You comfort them that there must have been a mistake, leading them to their chair at the two of your shared desk and showing them some of the basics of what they need to do for work...<br>
<br>
With them sorted, at least to start, you consider your own responsibilities.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_dom_monday_5">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_monday_5">>
<</if>>
<<set $scene.workTime = Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
<</if>>
</div>/*#
#desc: dom stage 5 monday, new employee change
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.privacy>>
<<applyExperience 'dominance' 12 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(1)>>
<div id="invframe" class="scrolltext">
<<if $scene.privacy>>
You smile and turn around to give <<=setup.getNpcName('npc_mentee', 'first')>> some privacy... though you sneak a slight peek only to get a feeling of revulsion at the sight of <<his npc_mentee>> <<if $npc_mentee.fem>>unflattering "granny panties." <<else>>baggy boxers.<</if>><br>
<br>
<<printThought "One step at a time...">><br>
<br>
"@@.npc_mentee;All done,@@" <<he npc_mentee>> replies after a couple minutes. You turn around.
<<else>>
You smile and reply that there is really no time for that sort of thing, and they should just change here, now.<br>
<br>
"@@.npc_mentee;Wait, really?@@" They stare at you as you cross your arms and nod. They take a deep breath. "@@.npc_mentee;Wow, I've fantasised about a woman as beautiful as you ordering me to strip, but... not quite like this.@@" They stare at the skirt in their hands. "@@.npc_mentee;Uh, I mean... not that this is anything sexual. Shit, I guess I need to be more careful, this being the literal HR department and all.@@"<br>
<br>
You smile in comfort and explain that it is quite alright — you can hardly deny that you are a bit head-turning — and you consider the compliment, and the other attention you get, simply you doing your part to keep up company morale.<br>
<br>
"@@.npc_mentee;Keep up morale... yeah...@@" They reply.<br>
<br>
You suppress a smile as they start to undress, they try to turn but there is no hiding the tent they're making in their <<if $npc_mentee.fem>>unflattering "granny panties." <<else>>boxers... <</if>>though the sight of such <<if $npc_mentee.fem>>unattractive<<else>>masculine<</if>>, baggy underthings proves quite the turn-off for you.<br>
<br>
<<printThought "One step at a time...">>
<</if>>
<br><br>
<<=setup.getNpcName('npc_mentee', 'first')>> looks back at you nervously, quite unsteady in their heels and repeatedly tugging at their skirt as it rides up their thighs to expose the bottom edge of their boxers.<br>
<br>
"@@.npc_mentee;Are you sure I'm supposed to dress like this? I feel really silly... is this, like...@@"
<<if !$npc_mentee.fem>>
as he stammers he shifts and one of his breasts drops several centimetres. You smile and shake your head in amusement as you offer to help, first tightening his bra and then adjusting the breast-forms to be even.<br>
<br>
"@@.npc_mentee;Having breasts feels weird... are you sure this is the uniform?@@"<br>
<br>
You nod and enigmatically add that he might not have to worry about the breast forms for too much longer.<br>
<br>
"@@.npc_mentee;Oh, some sort of first-day hazing thing? I guess that's alright...@@" he replies, completely missing the other interpretation of your words.
<</if>>
<br><br>
You smile and reply that they absolutely need to dress like this — though you recommend they invest in some more feminine panties.<br>
<br>
"@@.npc_mentee;Wait, you're serious? I thought this was just a sort of hazing joke or something...@@"<br>
<br>
You sigh and repeat that this is absolutely their expected uniform going forward, then direct them to have a seat so you can begin teaching them their other responsibilities.<br>
<br>
You can tell they're still suspicious, but they take a seat at the desk next to you and listen as you go over some of the basics.<br>
<br>
With them sorted, at least to start, you consider your own responsibilities.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_dom_monday_5">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_monday_5">>
<</if>>
<<set $scene.workTime = 3600+Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: dom stage 5 monday, morning work
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.clothes>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(1) setup.charImage("npc_rival")>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(0) setup.charImage("npc_rival")>>
<</if>>
<div id="invframe" class="scrolltext">
You work through the first part of the morning — <<switch $scene.work>><<case 'hard'>>racing through<<case 'normal'>>steadily chipping away at work<<case 'slack'>>slowly chipping away at<<default>>ERROR: unexpected scene.work <<=$scene.work>><</switch>> your work while providing <<=setup.getNpcName('npc_mentee', 'first')>> the occasional instruction or answer to a question.<br>
<br>
After some time <<=setup.getNpcName('npc_rival', 'formal')>> emerges from <<his npc_rival>> inner office, you and <<=setup.getNpcName('npc_mentee', 'first')>> looking up in greeting only for <<=setup.getNpcName('npc_rival', 'formal')>> to frown.<br>
<br>
<<if $scene.clothes>>
"@@.npc_rival;Hmm... nicely dressed, but... are you wearing any makeup at all? You practically look like a man!@@"<br>
<br>
<<=ps(setup.getNpcName('npc_mentee', 'first'))>> jaw drops in shock but <<=setup.getNpcName('npc_rival', 'formal')>> has already turned <<his npc_rival>> attention towards you.<br>
<br>
"@@.npc_rival;Help our new employee with their makeup — and be sure that they know enough to do it themselves in the future. When I step out of my office I expect to see a pair of beautiful, smiling faces not... this.@@"
<<else>>
"@@.npc_rival;What on earth are you wearing?@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> freezes in shock but <<=setup.getNpcName('npc_rival', 'formal')>> has already turned <<his npc_rival>> attention towards you.<br>
<br>
"@@.npc_rival;Orientation was your responsibility, why is <<=setup.getNpcName('npc_mentee', 'first')>> out of uniform? Here I expect to come out of my meeting and greet my new hire and instead...@@" <<He npc_rival>> sneers in disgust "@@.npc_rival;Fix it!, and tend to her makeup, as well — she practically looks like a man!@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_rival', 'formal')>> slams the door... and then pokes back out. "@@.npc_rival;Oh — and for the makeup? Better put it on with a trowel, <<=setup.getNpcName('npc_mentee', 'first')>> needs all the help they can get.@@" The door slams shut again as <<=setup.getNpcName('npc_rival', 'formal')>> returns to <<his npc_rival>> inner office.<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> stares at you in shock.<br>
<br>
"@@.npc_mentee;What's going on? I mean, I know I'm new to this whole Secretary thing, but it sounds like <<=setup.getNpcName('npc_rival', 'formal')>> expects me to look like a woman or something? I don't think I can do this...@@"<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_6" 'Gently encourage <<=setup.getNpcName("npc_mentee", "first")>>.' 600 "<<set $scene.harsh=false>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_monday_6" 'Put your foot down and stop coddling <<=setup.getNpcName("npc_mentee", "first")>>.' 600 "<<set $scene.harsh=true>>">>]
</div>/*#
#desc: dom stage 5 monday, give feminization reality check
#status: RELEASED 0.9.0.0
#ignore_spell: s
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.clothes>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(1)>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(0)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.harsh>>
You adopt a stern posture and tell <<=setup.getNpcName('npc_mentee', 'first')>> to stop their whining; that this is their job and they had better learn to accept things quickly.<br>
<br>
"@@.pc;Being a <<if $fetish.sissy>>SISSI <</if>>Secretary is a representative position. That <<if $npc_mentee.fem>>un-feminine<<else>>masculine<</if>> bravado will do you no good. The sooner you adopt a regulation appearance, the better off you will be.@@" <<=setup.getNpcName('npc_mentee', 'first')>> is momentarily dumbstruck as you twist the knife with a more gentle tone. "@@.pc;Besides, you are quite cute, just a little bit of work and you will be a quite fetching <<if $fetish.sissy>>SISSI<<else>>thing<</if>>... yes, you're going to be quite easy on the eyes...<<if $fetish.sissy>> a future star SISSI to be sure.<</if>>@@"
<<else>>
You smile gently, explaining that it really isn't that bad — <<if $scene.clothes>>just a bit of makeup. Besides, aren't they curious how they'd look with a bit of makeup?<<else>>just a special uniform, no different than any other field. Besides, you point out — it is not like what they were wearing when you first met was doing them any favours<</if>> — what do they have to lose from embracing the full scope of their new job?<br>
<br>
"@@.npc_mentee;Are you sure? I mean, I've never done anything like this before, I—@@"<br>
<br>
You smile and reply that they just need to give it a chance, and that before long they'll be a happy, productive <<if $fetish.sissy>>SISSI <</if>>Secretary, just like you.
<</if>>
<br><br>
<<if $fetish.sissy>>
"@@.npc_mentee;S-SISSI? What?@@"<br>
<br>
You clarify that SISSI just stands for Social Interaction Service Syndicate Inc. before telling them to stop dragging their heels and <<if $scene.clothes>>come with you to get their makeup done<<else>>get changed<</if>>.<br>
<br>
<</if>>
<<=setup.getNpcName('npc_mentee', 'first')>> is still nervous, but compliant as you
<<if $scene.clothes>>
help <<him npc_mentee>> to <<his npc_mentee>> feet and lead
<<else>>
hand <<him npc_mentee>> the pile of clothes.<br>
<br>
In something of a daze <<he npc_mentee>> just goes along with changing as you hand <<him npc_mentee>> each item in turn, soon dressed "properly" in skirt, blouse and heels.<br>
<br>
<<if !$npc_mentee.fem>>
You frown at the way his ugly boxer shorts poke out from the bottom of the skirt, suggesting that he stop on the way home to purchase some more feminine underthings.<br>
<br>
He asks if some briefs would be sufficient and you half-smile, replying that they technically would... but that <<=setup.getNpcName('npc_mentee', 'first')>> should really try some nice lace undies, that you're sure he'll love how soft and wonderful they feel compared to boring "guy" clothes... to say nothing of how cute they'll look on him.
<</if>>
Something in your dominant tone manages to stifle any objection and you are soon leading
<</if>>
the way to the bathroom.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_7" 'Do <<his npc_mentee>> makeup.' 600>>]
</div>/*#
#desc: dom stage 5 monday, makeup
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'makeup' 13 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Work Women's Toilet">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_toilet.png" setup.charImageMentee(2)>>
<div id="invframe" class="scrolltext">
Shocked-into-trance <<=setup.getNpcName('npc_mentee', 'first')>> shows surprising skill at walking in heels, but you still lend some support for the short trek to the bathroom before you crack open a makeup kit and go to work.<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> dazed look turns to surprise, and then awe by the time you finish unloading the full breadth and depth of your makeup skill on <<if $npc_mentee.fem>>her <<else>>his... or is that "her" <</if>>face.<br>
<br>
"@@.npc_mentee;I look—@@"<br>
<br>
"@@.generic_female1;Beautiful, sugar,@@" a random passer-by adds on with a wink.<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> is still stuck in near disbelief as they take in their reflection, only half paying attention as you try to remind them of the steps to reproduce things on their own... before you just give up, snatch their phone to write down instructions along with links to a few video tutorials.<br>
<br>
"@@.pc;Remember, this is your uniform requirement. I'll help, but if you haven't dressed appropriately and made an attempt tomorrow morning, well... it will go badly for you.@@"<br>
<br>
"@@.npc_mentee;Right, right... I just...@@" They shake their head for a bit of clarity, "@@.npc_mentee;I guess I don't really have a choice, I really need this job, but... I still can't believe I look like this. I hardly recognise myself... and yet... I'm also kind of attracted to that girl in the mirror?@@"<br>
<br>
You nod and lead them back to the office, slightly amused at them suddenly walking much more steadily in their heels.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 12, 15)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_stage_5_transition_dom_monday_8" 'Back to work.' _timeToLunch>>]
</div>/*#
#desc: dom stage 5 monday, fetch lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(2)>>
<div id="invframe" class="scrolltext">
You get back to work, interrupted just after noon by <<=setup.getNpcName('npc_rival', 'formal')>> ordering the two of you to fetch <<him npc_rival>> lunch from the canteen.<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> is nervous the whole time at the idea of being seen "in public" in their new guise but you are quite insistent, squelching their objections as you show them the way to the canteen and have them wait in line with you as you take care of ordering lunch.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_9" 'Deliver lunch.' 300>>]
</div>/*#
#desc: dom stage 5 monday, fetch lunch together
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(2)>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_mentee', 'first')>> deliver <<=ps(setup.getNpcName('npc_rival', 'formal'))>> lunch together, <<=setup.getNpcName('npc_mentee', 'first')>> even mimicking you as you curtsy before being dismissed... though you are pretty sure it is only their thick makeup that conceals their blushing as you return to your desks to begin the afternoon's work.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_dom_monday_10">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_monday_10">>
<</if>>
<<set $scene.workTime = Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: dom stage 5 monday, sent to visit npc_work_doctor
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageMentee(2) setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You get a summons from <<=setup.getNpcName('npc_rival', 'formal')>> partway through the afternoon. You and <<=setup.getNpcName('npc_mentee', 'first')>> file into the inner office, <<=setup.getNpcName('npc_mentee', 'first')>> shyly looking at the floor as they avoid making eye contact.<br>
<br>
"@@.npc_rival;Getting settled?@@" <<=setup.getNpcName('npc_rival', 'formal')>> asks with a grin.<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> nods nervously.<br>
<br>
"@@.npc_rival;Good, good — you just listen to Miss <<=ps($player.last_name)>> instructions. Obedience is the most important skill for a <<if $fetish.sissy>>SISSI <</if>>Secretary to exhibit.@@"<br>
<br>
<<He npc_rival>> waits a moment to see if <<=setup.getNpcName('npc_mentee', 'first')>> has anything to say but your new co-worker seems far too overwhelmed to speak.<br>
<br>
"@@.npc_rival;Now, I know things can be pretty intense on your first day, but there's one last thing to take care of this afternoon... well, two, technically. The first is a physical, just a standard precaution we take with all new hires. Work here can get intense — and ensuring our employees are healthy is important to make sure they can keep up with our hard... demands. The second item is in the same vein, as part of mandatory on-boarding each employee goes through a psychological evaluation to make sure they are properly disposed for their position. Everything is already scheduled with our in-house therapist. Miss <<=$player.last_name>> will take you to meet <<=setup.getNpcName('npc_work_doctor', 'formal')>> for your physical, once that and your psych evaluation are complete you can head home early, get recovered and ready for tomorrow morning.@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> dismisses the two of you and you lead the way to <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> Laboratory.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_11" 'Continue.' 300>>]
</div>/*#
#desc: dom stage 5 monday, visit npc_work_doctor
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImageMentee(2) setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_work_doctor', 'formal')>> welcomes you and <<=setup.getNpcName('npc_mentee', 'first')>> with excitement and leads the way to a private exam room.<br>
<br>
"@@.npc_work_doctor;Ah, a new employee! And you are looking positively lovely.@@" <<He npc_work_doctor>> grins in a way that is probably meant to be comforting but ends up being a bit too intense and unnerving. "@@.npc_work_doctor;Miss <<=$player.last_name>> has been showing you the ins and outs of things, I presume? You listen close to their advice — they've been where you have before and will be able to help you avoid early career pitfalls.@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> glances over at you somewhat incredulously, though they remain too intimidated to say anything.<br>
<br>
"@@.npc_work_doctor;Wonderful, wonderful. Now, if you would slip out of those cute clothes we can proceed to the physical.@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> balks but you smile and give their shoulder a friendly squeeze and they start nervously shedding their clothes down to their <<if $npc_mentee.fem>>oh-so-unattractive panties<<else>>boxers<</if>>... which, you note, are tenting a fair bit.<br>
<br>
"@@.npc_work_doctor;Those, too,@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> states as <<he npc_work_doctor>> prepares a blood draw and motions for <<=setup.getNpcName('npc_mentee', 'first')>> to get up on the exam table.<br>
<br>
You smile in encouragement and <<=setup.getNpcName('npc_mentee', 'first')>> obeys. You hold their hand for comfort as they lay back on the table, trying to soothe them, and ignore the above average flesh cannon sticking up between their legs, as <<=setup.getNpcName('npc_work_doctor', 'formal')>> does <<his npc_work_doctor>> blood draw and bustles about with measurements and other readings.<br>
<br>
You can feel <<=ps(setup.getNpcName('npc_mentee', 'first'))>> pulse pounding throughout the procedure, but <<=setup.getNpcName('npc_work_doctor', 'formal')>> finishes up before long. A few minutes pass before the blood analysis is complete and then <<=setup.getNpcName('npc_work_doctor', 'formal')>> is back presenting a small bottle of familiar pink pills.<br>
<br>
"@@.npc_work_doctor;Everything looks to be in general order, but I would like you to take this prescription. It should help even out your stress and take care of some minor nutrient deficiencies. Just one of the many perks we offer our employees to help them operate at peak efficiency. I'll leave you to get dressed and check that <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is ready for your appointment.@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> accepts the bottle and then looks up at you with concern as <<=setup.getNpcName('npc_work_doctor', 'formal')>> walks away.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_12" 'Encourage them to take the pills.' 300 "<<set $scene.pill=true>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_monday_12" 'Advise them to avoid taking any pills.' 300 "<<set $scene.pill=false>>">>]
</div>/*#
#desc: dom stage 5 monday, pill advice
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.pill>>
<<incrementEmotion 'anger' 'npc_rival' 2>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImageMentee(2)>>
<div id="invframe" class="scrolltext">
<<if $scene.pill>>
You smile and tell <<=setup.getNpcName('npc_mentee', 'first')>> that the pills are great and that <<he npc_mentee>> should definitely take a couple before bed.<br>
<br>
"@@.npc_mentee;A couple?@@" <<He npc_mentee>> replies, in the midst of reading the label, "@@.npc_mentee;This says proper dosage is one pill a day, and not to mix with alcohol?@@"<br>
<br>
You roll your eyes and clarify that that's just standard medical boiler-plate and that taking two or three pills is fantastic for helping recover after a long day.
<<else>>
After making sure that <<=setup.getNpcName("npc_work_doctor","formal")>> is out of earshot you advise <<=setup.getNpcName('npc_mentee', 'first')>> to refrain from taking any of the pills.<br>
<br>
"@@.npc_mentee;So... they're trying to drug me? What's going on at this company?@@"<br>
<br>
You pause, choosing your words carefully as you clarify that it's just that the effects can be fairly strong, and that <<=setup.getNpcName('npc_mentee', 'first')>> has been doing so well thus far that you think they'd be better saving it for when they really need it rather than pre-dosing.<br>
<br>
"@@.npc_mentee;Oh, well, I guess that makes sense. I've always been a bit nervous around doctors and needles, so maybe <<=setup.getNpcName("npc_work_doctor","formal")>> thought I was having a harder time adjusting than I am.@@"
<</if>>
<br><br>
You notice that <<=setup.getNpcName('npc_mentee', 'first')>> hasn't started getting dressed... and their <<getWordPenis "npc_mentee">> is sticking up very prominently, hard and dripping.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_13" 'Offer to reward them in celebration of their first day.' 300 "<<set $scene.stroke=true>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_monday_13" 'Tell them to hurry and get dressed.' 300 "<<set $scene.stroke=false>>">>]
</div>/*#
#desc: dom stage 5 monday, blow npc_mentee
#status: RELEASED 0.9.0.0
#ignore_spell: wh
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.stroke>>
<<applyExperience 'dominance' 10 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImageMentee(2)>>
<div id="invframe" class="scrolltext">
<<if $scene.stroke>>
You glance towards <<=ps(setup.getNpcName('npc_mentee', 'first'))>> hard <<getWordPenis "npc_mentee">> and ask if they'd "@@.pc;Like some help?@@"<br>
<br>
They blush and stammer out "@@.npc_mentee;Wh-what do you mean?@@"<br>
<br>
You smile wider and reach down, gently stroking with one hand as you talk about how performance can have all manner of rewards. "@@.pc;You've been so good on your first day, so brave for your blood draw... and you look so pretty in your makeup... good girls get rewarded so why don't you just lean back and enjoy a reward?@@"<br>
<br>
They're almost panting with excitement as you continue to stroke with one hand. They stare up at you with submissive longing as you continue to stroke, you can feel that they're almost ready to cum...<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_13a" 'Stop, this is enough for one day.' 300 "<<set $scene.suck=false>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_monday_13a" 'Lean over and finish them off with your lips.' 300 "<<set $scene.suck=true>>">>]
<<else>>
You glance away from their erection and wait for them to get dressed.<br>
<br>
You help them button their blouse as they complain about the buttons being on the "wrong side" just before there is a knock on the door.<br>
<br>
"@@.npc_psychiatrist;Ready for me to come in?@@"<br>
<br>
You recognise <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> voice, but something sounds just a little off, her tone sounding artificially bubbly.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_14" 'Welcome her in.' 300>>]
<</if>>
</div>/*#
#desc: dom stage 5 monday, blow npc_mentee
#status: RELEASED 0.9.0.0
#ignore_spell: th,wh
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'oral' 10 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'dominance' 13 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImageMentee(2)>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
<<=setup.getNpcName('npc_mentee', 'first')>> is trembling submissively as you lean over and bring your lips to <<his npc_mentee>> hard, dripping <<getWordPenis "npc_mentee">>.
<<if setup.getTotalValue("oral") > 10>>
You smoothly deepthroat <<him npc_mentee>>
<<else>>
You softly suck on <<his npc_mentee>> tip
<</if>>
and <<he npc_mentee>> gasps, cumming moments later.<br>
<br>
"@@.npc_mentee;Th-thank you,@@" <<he npc_mentee>> pants as you lick your lips and smile, wiping <<him npc_mentee>> off before moving up to give <<him npc_mentee>> a soft kiss on the forehead, reminding <<him npc_mentee>> that good behaviour will be rewarded.
<<else>>
Is trembling when you take your hand away. They twitch and, with perfect timing, dribble out a ruined orgasm.<br>
<br>
"@@.npc_mentee;Why...@@"<br>
<br>
You tsk, tsk as you clean them up, noting that their behaviour may have been good enough for a reward, but a FULL reward requires even greater demonstration of service. "@@.pc;It's only your first day!@@" you point out, "@@.pc;There has to be something for you to look forward to tomorrow.@@"<br>
<br>
They blink, still trying to recover as they attempt to piece together what just happened.<br>
<br>
"@@.npc_mentee;Wh-what?@@"<br>
<br>
You grin, tracing a finger up their chest before leaning in to whisper in their ear. "@@.pc;There are all sorts of rewards awaiting good <<if $fetish.sissy>>SISSI <</if>>Secretaries, but you need to earn them through hard work and diligence...@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> shudders, your words clearly spurring something even stronger.
<</if>>
<br><br>
There is a knock on the door. "@@.npc_psychiatrist;Ready for me to come in?@@"<br>
<br>
You recognise <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> voice, but something sounds just a little off, her tone sounding artificially bubbly.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_14" 'Welcome her in.' 300>>]
</div>/*#
#desc: dom stage 5 monday, npc_psychiatrist
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_psychiatrist.flags.evil = 1>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImageMentee(2) setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> walks in wearing a too-happy smile and a too-skimpy nurse outfit and carying a familiar tablet.<br>
<br>
"@@.npc_psychiatrist;Hello! Don't mind the outfit — I am a fully certified psychiatrist. I assist <<=setup.getNpcName('npc_work_doctor', 'formal')>> in making sure all our employees are physically and mentally fit. <<He npc_work_doctor>> said your physical went very well so let's just knock this little assessment out of the way so you can head home and celebrate the first day of your wonderful new job!@@"<br>
<br>
You can tell that the combination of the sexy doctor, yourself, and the day thus far has <<=setup.getNpcName('npc_mentee', 'first')>> all but overwhelmed but they automatically accept the tablet... which you notice is "malfunctioning" the same as it was way back when you took the assessment...<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_15" 'Help <<=setup.getNpcName("npc_mentee", "first")>> complete the assessment.' 300>>]
</div>/*#
#desc: dom stage 5 monday, npc_psychiatrist
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Social Interaction Service Syndicate Inc. Private Exam Room'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/nurse_exam.png" setup.charImageMentee(2) setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
With your assistance <<=setup.getNpcName('npc_mentee', 'first')>> races through the survey, barely even reading some of the questions as you encourage them forward.<br>
<br>
"@@.npc_psychiatrist;You are so fortunate to have a mentor like Miss <<=$player.last_name>>,@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> once <<=setup.getNpcName('npc_mentee', 'first')>> has finished. "@@.npc_psychiatrist;She has been exactly where you are today and, well... look at how wonderful she is doing now?@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> looks up at you in awe as you wink back.<br>
<br>
"@@.npc_psychiatrist;Now, traditionally I would give you a little therapy session now but... well, all that psychology mumbo jumbo is pretty silly. I'm just here because it's a requirement for administering the test but, really, your best therapy is to take those wonderful pills <<=setup.getNpcName('npc_work_doctor', 'formal')>> gave you. Why waste time talking for no reason when pharmacology is so much more efficient?@@"<br>
<br>
You're more than a little weirded out by <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> words as they confirm what her demeanour had already indicated — something has happened to her and, though she does not seem as brainless as <<=setup.getNpcName('npc_barista', 'nickname')>> was the first time you met her... the similarities are unmistakable.<br>
<br>
<<printThought "This is my fault... what has the company done?">><br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> dismisses the two of you and you escort <<=setup.getNpcName('npc_mentee', 'first')>> to the elevator as a guard quietly watches over you and brings you back to <<=ps(setup.getNpcName('npc_rival', 'formal'))>> office.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_monday_16" 'Report back to <<=setup.getNpcName("npc_rival", "formal")>>.' 300>>]
</div>/*#
#desc: dominant stage 5 monday assessment/chastity upgrade
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.fatiguemulti = 1>>
<<resetStressMulti>>
<<if $scene.pass.all>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<<if $scene.clothes && !$scene.privacy && $scene.harsh && $scene.pill && $scene.stroke && !$scene.suck>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<<if $scene.pass.all && $scene.clothes && !$scene.privacy && $scene.harsh && $scene.pill && $scene.stroke && !$scene.suck>>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You enter the inner office to find <<=setup.getNpcName('npc_rival', 'formal')>> waiting. Despite <<his npc_rival>> best efforts, you can't help but reflect on how poor <<his npc_rival>> imitation of <<=ps(setup.getNpcName('npc_boss', 'formal'))>> authority comes off compared to the original.<br>
<br>
<<printThought "I wonder where <<=setup.getNpcName('npc_manager', 'formal')>> is...">><br>
<br>
Your thoughts turn back towards <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and you shudder in fear.<br>
<br>
<<if $scene.pass.all && $scene.clothes && !$scene.privacy && $scene.pill && $scene.stroke && !$scene.suck && $scene.harsh>>
"@@.npc_rival;You're doing an acceptable job introducing our newest employee, but that is no reason to rest! Keep up the pressure, with the direction things are going we do not have time to coddle anyone. We expect employees to get up to speed rapidly and perform, and perform quickly if the company is going to continue to forge ahead.@@"
<<else>>
"@@.npc_rival;I am quite disappointed in your actions today. <<if !$scene.pass.all>>From showing up to work un-prepared,<<else>>You started off with basic competency in showing up to work properly prepared, <</if>> you <<if $scene.clothes>>had your new coworker dressed in uniform quickly<<else>>failed to get your new coworker into proper attire<</if>>, <<if $scene.harsh>>and managed to put your foot down when they questioned their requirements<<else>> though I dislike how you coddled them<</if>>. <<if $scene.privacy>>You should have taken the opportunity to get them more accustomed to being exposed, <<else>>Getting them used to being exposed was good, <</if>><<if $scene.pill>>and satisfactorily done encouraging them to take their medicine<<else>>though it would have been better if you had encouraged them to take their medicine<</if>>.@@"<br>
<br>
<<He npc_rival>> grins and leers at you as <<he npc_rival>> concludes, "@@.npc_rival;<<if $scene.stroke && $scene.suck>>I wonder at your enthusiasm to suck them off. An effective tactic, but I think more for your benefit, than theirs, hmm?<<elseif $scene.stroke>>At least you had the sense to string them along and then ruin their orgasm. That is exactly the sort of training that will have them broken and obedient in record time, perhaps you did learn SOMETHING from your prior manager<<else>>I am surprised a slut like yourself didn't take advantage of them when you had the chance... perhaps next time<</if>>.@@"<br>
<br>
<<He npc_rival>> sneers "@@.npc_rival;Do attempt to improve on your efforts tomorrow. To execute on <<=ps(setup.getNpcName('npc_boss', 'formal'))>> ambitious plans we cannot afford any failure, and that ESPECIALLY goes for you... given your past.@@"
<</if>>
<br><br>
<<if setup.getChastityLevel() != 5 && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
<<=setup.getNpcName('npc_rival', 'formal')>> shakes <<his npc_rival>> head. "@@.npc_rival;I have reviewed your records and, to my shocked surprise, you have not yet been fitted with a 9001-series chastity device. I cannot fathom why <<=setup.getNpcName('npc_manager', 'formal')>> did not fit you wish such a device, but, that she did not, may both explain your failures, and sum up her own.<<if $npc_manager.flags.trustplayerwithkey>> Perhaps even more stunning is that her records indicate that she trusted you to be in possession of your chastity key! Utterly unacceptable, and you can feel safe that you will no longer need be concerned with such potential freedom under my watch.<</if>>@@"<br>
<br>
As <<he npc_rival>> speaks a guard steps into the room. "@@.npc_rival;The guard will take you to have this issue addressed, and then to your room for the night. Until we have confirmed your devotion to the company you will not be permitted to leave the building. Security, you understand.@@"<br>
<br>
The guard approaches and cuffs your wrists together before forcing a hollow gag between your lips. Bound and gagged you are led to the elevator, taken deep into one of the company sub-basements and then left alone in a small medical examination room.<br>
<br>
[<<moveTo "event_inspection_stage4_nochastity_2" "Continue." 300 "<<addItem 'hollow_gag'>><<wearItem 'hollow_gag' true>><<addItem 'wrist_cuffs_steel'>><<wearItem 'wrist_cuffs_steel' true>><<set $scene.fromStage5transition=true>>">>]
<<else>>
[<<moveTo "event_stage_5_transition_monday_night_1" "Continue." 300>>]
<</if>>
</div>/*#
#desc: dom stage 5 tuesday employee checkin - drug effects
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(3)>>
<div id="invframe" class="scrolltext">
You're getting things ready for the day when <<=setup.getNpcName('npc_mentee', 'formal')>> staggers into the office a couple minutes later. They are looking quite different from the previous day — their blouse straining around a pair of breasts almost as large as your own, long waves of blonde hair flowing down past <<his npc_mentee>> shoulders.<br>
<br>
<<if $scene.pill>>
"@@.npc_mentee;I, uh... took your advice about pills and, I think I passed out from orgasm and then I woke up like this...@@"
<<else>>
"@@.npc_mentee;I know you said to be careful with the pills, and I only took one! But, well, I was having trouble sleeping so I had a bit of a nightcap... things got a bit fuzzy after that, though I had some really intense, not to mention wet, dreams and then I woke up like this...@@"
<</if>>
<br><br>
They blush; their attempt at makeup splotchy and leaving significant portions of their red cheeks exposed, "@@.npc_mentee;I still don't know how I managed to go out in public but I just, I just couldn't keep myself from coming to work... what's happening to me?<<if !$npc_mentee.fem>> That comment you made about those breast forms in the bra... were you trying to warn me? I had to take them out, obviously... the real things are so sensitive!<</if>>@@"<br>
<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_2" 'Help them with their makeup and tell them everything is fine.' 300 "<<set $scene.makeup=true>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_2" 'Tell them everything is fine, but they need to get ready for work.' 300 "<<set $scene.makeup=false>>">>]
</div>/*#
#desc: dom stage 5 tuesday comfort drug effects
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
<<if $scene.makeup>>
You congratulate <<=setup.getNpcName('npc_mentee', 'first')>> on how quickly they are developing. Still clearly under the effects of the pink pill they giggle along with you as you lead the way to the bathroom to help fix their makeup before returning to the office and settling down to work.
<<else>>
You downplay <<=setup.getNpcName('npc_mentee', 'first')>> changes and are about to sit down to work when <<=setup.getNpcName('npc_rival', 'formal')>> appears from <<his npc_rival>> office and, with a single annoyed glance, orders you and <<=setup.getNpcName('npc_mentee', 'first')>> to "@@.npc_rival;Fix that god-awful mess of your face!@@"<br>
<br>
A few minutes in the bathroom and you have <<=setup.getNpcName('npc_mentee', 'first')>>, though still a bit blissed out from their overdose, looking work-ready and you return to the office.
<</if>>
<br><br>
<<set $scene.followUp = "event_stage_5_transition_dom_tuesday_3">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_tuesday_3">>
<</if>>
<<set $scene.workTime = Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: dom stage 5 tuesday npc_harassment arrives, notices lack of chastity
#status: RELEASED 0.9.0.0
#ignore_spell: n
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4) setup.charImage("npc_harassment") setup.charImage("npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
As you work side by side with <<=setup.getNpcName('npc_mentee', 'first')>>, you notice a consistent distraction. You can tell they are trying to focus on their work, but their hand keeps moving between their legs, the bulge in their skirt constant as they breathe heavily and rub their hips together.<br>
<br>
You consider offering assistance but every time you look over they blush in embarrassment and focus back on their work, clearly determined to push through... as impossible as that task may be.<br>
<br>
You continue trying to think of the best way to address the subject when <<=setup.getNpcName('npc_harassment', 'formal')>> arrives early for a meeting, pausing in the outer office with her delightful assistant to look at <<=setup.getNpcName('npc_mentee', 'first')>> with concern.<br>
<br>
"@@.npc_harassment;Is something the matter, Miss...@@" She asks.<br>
<br>
"@@.npc_mentee;<<=setup.getNpcName('npc_mentee', 'last')>>,@@" <<=setup.getNpcName('npc_mentee', 'first')>> replies, so distracted they seem to miss the use of the feminine prefix. "@@.npc_mentee;N-nothing, I'm just—@@" they try to explain, only to be cut off by <<=setup.getNpcName('npc_harassment', 'formal')>>.<br>
<br>
"@@.npc_harassment;Nothing? Oh, it is plain to see that that is not the case. Speaking of sight... let me get a full look at your situation — stand up, now, and lift that skirt of yours.@@"<br>
<br>
Obediently <<=setup.getNpcName('npc_mentee', 'last')>> rises to their feet, lifting their skirt to reveal a pair of silk panties... stretched out and stained through by their obviously hard <<getWordPenis "npc_mentee">>.<br>
<br>
<<if setup.getTotalValue("penis") > 10>>
You lick your lips at the sight, and catch <<=setup.getNpcName('npc_harassment_assist', 'first')>> doing the same.
<<else>>
You notice <<=setup.getNpcName('npc_harassment_assist', 'first')>> lick their lips at the sight.
<</if>>
<br><br>
<<=setup.getNpcName('npc_harassment', 'formal')>> snorts "@@.npc_harassment;As I suspected — first time wearing <<if $npc_mentee.fem>>those <</if>>panties, I presume?@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> nods bashfully. "@@.npc_mentee;Miss <<=$player.last_name>> told me to stop wearing my old <<if $npc_mentee.fem>>underthings<<else>>boxers<</if>>, so I got these but... oh the rubbing is just so much!@@"<br>
<br>
"@@.npc_harassment;I can quite imagine — especially amplified by taking so much of <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> medication... there really is only one solution for this matter. Tell me, dear, what do you know of chastity?@@"<br>
<br>
"@@.npc_mentee;Chastity? I mean, I haven't been with anyone in a long time... well, ever, really...@@"<br>
<br>
"@@.npc_harassment;A virgin? Oh how delicious... and explains things even more. Yes, we need to get you locked up IMMEDIATELY before we have a real problem on our hands.@@"<br>
<br>
"@@.npc_mentee;Locked up?@@" They ask in confusion.<br>
<br>
"@@.npc_harassment;Exactly that. <<if setup.checkItemTypeWorn("cage")>><<=setup.getNpcName('npc_harassment_assist', 'first')>><<else>>Girls<</if>>, would you please show this poor thing how a PROPER <<if $fetish.sissy>>SISSI <</if>>Secretary should be equipped?@@"<br>
<br>
<<if setup.checkItemTypeWorn("cage")>>In unison <<=setup.getNpcName('npc_harassment_assist', 'first')>> and yourself lift your skirts and pull your panties to the side to reveal your<<else>>You feel a slight twinge as <<=setup.getNpcName('npc_harassment_assist', 'first')>> lifts their skirt to reveal their<</if>> advanced 9001-series chastity <<if setup.checkItemTypeWorn("cage")>>devices<<else>>device<</if>>.<br>
<br>
"@@.npc_harassment;As I said, locked. Now, will the two of you keep an eye on <<=setup.getNpcName('npc_mentee', 'first')>>? I should have just enough time to fetch an appropriate device and resolve this dangerous situation before for my meeting.@@"<br>
<br>
<<=setup.getNpcName('npc_harassment', 'last')>> rushes out of the room and <<=setup.getNpcName('npc_mentee', 'first')>> looks between the two chastity devices and then up at you in fear.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_4" 'Comfort them that being locked in chastity is a good thing.' 300 "<<set $scene.chastity=true>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_4" 'Stay silent, and on guard, while you wait for <<=setup.getNpcName("npc_harassment", "last")>> to return.' 300 "<<set $scene.chastity=false>>">>]
</div>/*#
#desc: dom stage 5 tuesday chastity
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.chastity>>
<<applyExperience 'dominance' 12 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'dominance' 15 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4) setup.charImage("npc_harassment") setup.charImage("npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
<<if $scene.chastity>>
You and <<=setup.getNpcName('npc_harassment_assist', 'first')>> take turns comforting <<=setup.getNpcName('npc_mentee', 'first')>> about what is about to happen, explaining that they'll feel much more calm and focused once they are properly locked away.<br>
<br>
They do not appear totally convinced, <<if !setup.checkItemTypeWorn("cage")>>perhaps because you are not locked, yourself, <</if>>though your soothing words seem to be making a dent.
<<else>>
You remain silent as <<=setup.getNpcName('npc_mentee', 'first')>> nervously shifts in their chair. They manage to remain in control, even as their <<getWordPenis "npc_mentee">> continues to strain and twitch inside its suffocating silken binds, but you can tell they are torturously close.
<</if>>
Fortunately, <<=setup.getNpcName('npc_harassment', 'formal')>> returns shortly bearing a standard pink chastity cage, expertly locking <<=setup.getNpcName('npc_mentee', 'first')>> away.<br>
<br>
"@@.npc_harassment;See? Doesn't that feel better?@@" She states.<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> has a look of surprise as they slowly nod and fix their clothes. "@@.npc_mentee;Actually... it does, the silk isn't stimulating me the whole time, and... well, getting hard just makes things squeeze tighter... it's weird but... kind of good? Like I'm idunno... safe?@@"<br>
<br>
"@@.npc_harassment;Yes, it really is the perfect solution for those like yourself. Well I am glad I was able to assist, but I have a meeting to get to. Come along, <<=setup.getNpcName('npc_harassment_assist', 'first')>>.@@"<br>
<br>
<<=setup.getNpcName('npc_harassment_assist', 'first')>> curtsies and blows you a kiss before hurrying after their <<=setup.getNpcName('npc_harassment', 'last')>>.<br>
<br>
Whatever meeting it was, it is over quickly, as but a handful of minutes transpire before <<=setup.getNpcName('npc_harassment', 'formal')>> and her assistant emerge.<br>
<br>
"@@.npc_harassment;I informed <<=setup.getNpcName('npc_rival', 'last')>> of the situation and left the key with <<him npc_rival>>. Here at Social Interaction Service Syndicate Inc. management believes in a hands-on approach to keeping our employees focused on their work, you can trust <<=setup.getNpcName('npc_rival', 'last')>> to provide the firm-handed guidance you need. Have a lovely and productive day, the both of you.@@"<br>
<br>
You nod in response and then you and <<=setup.getNpcName('npc_mentee', 'first')>> return to your work — <<=setup.getNpcName('npc_mentee', 'first')>> significantly less distracted.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 12, 0)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_stage_5_transition_dom_tuesday_5" 'Back to work.' _timeToLunch>>]
</div>/*#
#desc: dom stage 5 tuesday lunch - you go alone
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
Lunch-time arrives and <<=setup.getNpcName('npc_rival', 'formal')>> sends you to fetch <<his npc_rival>> lunch of <<getFood>>.<br>
<br>
Before you go you remind <<=setup.getNpcName('npc_mentee', 'first')>> to "@@.pc;Stay behaved while I'm gone.@@"<br>
<br>
You hurry to the canteen.<br>
<br>
<<set $scene.postLunchScene = "event_stage_5_transition_dom_tuesday_6">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_tuesday_6">>
<</if>>
[<<moveTo "room_stage5_transition_canteen" "Head down to the canteen." 600>>]
</div>/*#
#desc: dom stage 5 lunch return - plug option
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correctFood = setup.getFirstItemTypeCarried("lunch") == "food_steak">>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemTypeCarried("lunch")>>
<<deleteItem $scene.foodDelivery.foodItem>>
<<if $scene.correctFood>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_rival' 2>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
You deliver <<=ps(setup.getNpcName('npc_rival', 'formal'))>>. <<He npc_rival>> is on a phonecall, waving for you to leave the lunch and return to your desk. You make your delivery and slip out... to notice that <<=setup.getNpcName('npc_mentee', 'first')>> is once again looking more than a little distracted.<br>
<br>
"@@.npc_mentee;Please, Miss <<=$player.last_name>>. The chastity cage helps but... I can't stop thinking about it, I need some sort of relief if I'm going to finish the afternoon with any sort of productivity...@@"<br>
<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_7" 'Show <<=setup.getNpcName("npc_mentee", "first")>> the "proper" pleasure of anal stimulation.' 300 "<<set $scene.action='anal'>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_7" 'Administer a spanking to help take the edge off.' 300 "<<set $scene.action='spank'>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_7" 'Just order them back to work.' 300 "<<set $scene.action='none'>>">>]
</div>/*#
#desc: dom stage 5 npc_discipline
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _dom = setup.getTotalValue("dominance")>>
<<switch $scene.action>>
<<case 'anal'>>
<<applyExperience 'dominance' _dom 'very' $SEEN_FRIEND>>
<<case 'spank'>>
<<applyExperience 'dominance' _dom 'terrible' $SEEN_FRIEND>>
<</switch>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'anal'>>
You smile and explain that the problem is that <<=setup.getNpcName('npc_mentee', 'first')>> needs to re-orient their perspective.<br>
<br>
They look back in confusion but, whether through obedience or desperation, <<=setup.getNpcName('npc_mentee', 'first')>> obediently slides forward in their chair and spreads their legs at your instruction.<br>
<br>
You smile confidently up at <<=setup.getNpcName('npc_mentee', 'first')>> as you pull their panties to one side and slowly slide a finger into their rear.<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> gasps and you slowly wiggle your finger, talking about how good this must feel, how all they have to do is relax and enjoy...<br>
<br>
Their breaths quicken and you add a second finger, curling in to massage their prostate as they pant faster and faster.<br>
<br>
"@@.npc_mentee;Oh God...@@" they moan, only for you to correct them.<br>
<br>
"@@.pc;That's Goddess@@" you state, just as they cum, leaking out of their cage onto your hand as you continue to stroke their prostate. "@@.pc;And don't you forget it.@@"<br>
<br>
"@@.npc_mentee;Yes, Goddess...@@" They sigh in relief.<br>
<br>
You smile and clean them up — fixing their panties and skirt to send them back to work with a clearer head.
<<case 'spank'>>
You sternly explain that you have a "solution" to <<=ps(setup.getNpcName('npc_mentee', 'first'))>> problem. Whether through obedience or desperation, they follow your commands and rise to their feet and then bend over their desk at your instruction... at which point you lay a solid slap across their bottom.<br>
<br>
They yelp in shock, "@@.npc_mentee;What was that for?!?@@"<br>
<br>
You explain that a bit of pain can help balance out the scales, and besides, all their nervous shifting and trying to play with themselves while you were getting lunch... well, that deserves punishment.<br>
<br>
They whimper softly as you resume the spanking, deciding a nice even five strikes on each side is sufficient for their first time.<br>
<br>
As the echo of the final blow fades the only sound in the office is <<=ps(setup.getNpcName('npc_mentee', 'first'))>> soft pants. You help them back to their feet and over to their chair. Unthinkingly they flop down only to wince, hop up, and then slowly lower themselves more gingerly.<br>
<br>
They glance over at you and you smile back innocently before resuming work.
<<case 'none'>>
You frown and tell <<=setup.getNpcName('npc_mentee', 'first')>> that they must learn to control themselves and focus.<br>
<br>
They barely suppress a whimper as they turn back to their computer.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<set _endDay = setup.setNextDate($now, 0, 20, 0)>>
<<set _timeEndDay = setup.secondsToDate($now,_endDay)>>
[<<moveTo "event_stage_5_transition_dom_tuesday_8" "Work." _timeEndDay>>]
</div>/*#
#desc: dom stage 5 npc_mentee assigned plug
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
Work comes to a close and <<=setup.getNpcName('npc_rival', 'formal')>> summons the both of you into <<his npc_rival>> office.<br>
<br>
<<switch $scene.action>>
<<case 'anal' 'spank'>>
"@@.npc_rival;So, my lovelies... I heard a bit of a commotion out there during lunch... what was happening?@@"
<<case 'none'>>
"@@.npc_rival;So, my lovelies... I am sorry to say that it seems that <<=setup.getNpcName('npc_mentee', 'first')>> completed a truly pitiful amount of work this afternoon... what happened?@@"
<</switch>>
<br><br>
"@@.npc_mentee;I'm sorry, <<Sir npc_rival>>... ever since I took those pills from <<=setup.getNpcName('npc_work_doctor', 'formal')>> I've been so desperately aroused. <<=setup.getNpcName('npc_harassment', 'formal')>> said that chastity would help... and it did, for a while, but now it's so much worse! Please, she said she gave you the key, can I have it back? I need relief so badly...@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> snorts and then reaches into a drawer. "@@.npc_mentee;Relief? By being unlocked? No, no, my dear, that is the desperation and disobedience talking, embers of disobedience poisoning your mind, and we need to nip that in the bud!@@" You blink at the very mixed metaphor, but <<=setup.getNpcName('npc_mentee', 'first')>> seems too overwhelmed to notice. "@@.npc_mentee;Locked up is what you need, but that does not mean there are not options available to us. Yes, there is another way, a more proper way for one such as yourself. Miss <<=$player.last_name>> — I believe you are quite the expert in where and how to install one of these?@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> turns to you as <<he npc_rival>> places a small butt-plug on the desk.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_9" 'Dutifully plug your charge.' 300 "<<set $scene.plug=true>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_9" 'Refuse.' 180 "<<set $scene.plug=false>>">>]
</div>/*#
#desc: dom stage 5 plug npc_mentee
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.plug>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<else>>
<<incrementEmotion 'anger' 'npc_rival' 4>>
<<applyExperience 'bdsm' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
<<if $scene.plug>>
You take the plug, and a bit of lube, getting it nice and slick before instructing <<=setup.getNpcName('npc_mentee', 'first')>> to place their hands on the desk and bend over.<br>
<br>
<<if $scene.action == 'anal'>>
Thanks to your earlier "assistance" they immediately realise what's going on... and they seem almost eager as they get into position and raise their skirt.
<<else>>
They finally realise what's going on but, with a slight guiding push from your hand, they get into position and raise their skirt.
<</if>>
<br><br>
Their breaths come faster as you slowly work the plug into place, and they gasp when the thickest part finally slips past their sphincter and the whole thing pops into their rear.<br>
<br>
"@@.npc_mentee;It's so big!@@" They gasp, only to crumple to the ground as the plug buzzes and they moan in pleasure.<br>
<br>
"@@.npc_rival;Big?, Hardly,@@" <<=setup.getNpcName('npc_rival', 'formal')>> replies as <<=setup.getNpcName('npc_mentee', 'first')>> tries to catch their breath. "@@.npc_rival;That is a mere training plug. As my <<if $fetish.sissy>>SISSI <</if>>Secretary you will learn to take things far larger. Me, for example. Now stand up.@@"<br>
<br>
Though it makes no sound you can tell that <<=setup.getNpcName('npc_mentee', 'first')>> has just received a punishing shock as they jerk back to their feet.<br>
<br>
"@@.npc_rival;As you have now felt, your new companion is capable of both reward and punishment — I advise you to seek out the former. I will also note that it has pressure sensors — if you remove it for more than five minutes, and, of course, if you fail to appear tomorrow morning with it installed where it belongs... well, you will certainly not enjoy the result.@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> bites their lip nervously, shifting slightly as if trying to adjust the plug to a more comfortable angle.<br>
<br>
"@@.npc_rival;Lovely, well, I believe that will be all, for now. I will see you in the morning.@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> initially dashes towards the door, but they take a mere couple of steps before coming up short with a gasp, the novel shifting of their new intruder almost causing them to stumble. Taking a deep breath they cover the rest of the distance to the door at a more measured pace.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> waits for the two of you to be alone before smiling up at you. "@@.npc_rival;So, let us consider your own performance today...@@"<br>
<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_10" "Continue." 600>>]
<<else>>
Before you can even voice your refusal your own plug explodes with a painful electric shock. You stagger and <<=setup.getNpcName('npc_mentee', 'first')>> looks at you with concern as <<=setup.getNpcName('npc_harassment', 'formal')>> glowers and taps the plug on the desk ominously.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_tuesday_9" 'Dutifully plug your charge.' 300 "<<set $scene.plug=true>>">>]
<</if>>
</div>/*#
#desc: dom stage 5 tuesday your assessment
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.makeup || !$scene.chastity || $scene.action != 'spank'>>
<<applyExperience 'bdsm' 20 'terrible' $SEEN_STRANGER>>
<</if>>
<<if $scene.pass.all>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<<if $scene.makeup && $scene.chastity && $scene.action == "spank">>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<<include "stage5TransitionWorkCalc">>
<<if $scene.pass.all && $scene.makeup && $scene.chastity && $scene.action == "spank">>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<if $scene.makeup && $scene.chastity && $scene.action == 'spank'>>
"@@.npc_rival;You performed as expected today, providing the firm hand that <<=setup.getNpcName('npc_mentee', 'first')>> requires to find success in their new position.@@" <<He npc_rival>> turns to <<his npc_rival>> computer.
<<include "transitionSubWorkSummary">><br>
<br>
You wait to see if there is anything else, but that appears to be all, a guard appearing to, yet again, take you back to your cell.
<<else>>
"@@.npc_rival;Let us start with your objective metrics. How much work you managed to get done.@@" <<He npc_rival>> turns to <<his npc_rival>> computer.
<<include "transitionSubWorkSummary">><br>
<br>
That out of the way <<he npc_rival>> frowns.
<<if !$scene.makeup && !$scene.chastity && $scene.action != 'spank'>>
"@@.npc_rival;Unfortunately the rest of your performance today was... quite lacking. You need to prove yourself by properly training <<=setup.getNpcName('npc_mentee', 'first')>> to be a good, obedient <<if $fetish.sissy>>SISSI <</if>>Secretary. Your actions today were quite lacklustre in furthering that aim.@@"
<<else>>
"@@.npc_rival;Remember that you are not only responsible for your own work, but also training <<=setup.getNpcName('npc_mentee', 'first')>>. <<if $scene.makeup>>You addressed <<his npc_mentee>> poor makeup<<else>>You failed to address <<his npc_mentee>> sorry excuse for makeup<</if>>, <<if $scene.chastity>>encouraged <<him npc_mentee>> to accept chastity<<else>>failed to encourage <<him npc_mentee>> to accept chastity<</if>>, <<switch $scene.action>><<case 'spank'>>though your actions at lunch were quite a prudent effort to keep <<him npc_mentee>> in line<<case 'anal'>>but you rewarded <<him npc_mentee>> rather than properly punishing <<his npc_mentee>> lunch-time lusts<<case 'none'>>but you failed to do anything about <<his npc_mentee>> lunch-time lusts<</switch>>... all in all, a flawed effort — which will reflect back on your further if your student fails to perform.@@"
<</if>>
<br><br>
Before you can respond, you are driven to your knees by your <<=setup.getItemTypeName('cage')>> exploding with electrified pain. The agony stretches out for what feels like an eternity, but is likely not even a minute.<br>
<br>
"@@.npc_rival;You may go,@@" <<he npc_rival>> states sharply as a guard appears and helps you to your feet.<br>
<br>
You wince and half-hobble back to your cell, all the while reflecting on how... uncreative <<=ps(setup.getNpcName('npc_rival', 'formal'))>> seems to be with <<his npc_rival>> punishments.
<</if>>
<br><br>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_stage_5_transition_morning_1" 'Lay down in your pod to sleep.' _timeToMorning>>]
</div>/*#
#desc: dom stage 5 work until npc_admin visits
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
You arrive at work to find <<=setup.getNpcName('npc_mentee', 'first')>> already there. They must have spent the better part of the previous evening practicing, because <<his npc_mentee>> makeup is almost as good as what you had done. <<=setup.getNpcName('npc_mentee', 'first')>> smiles at you in nervous greeting before turning back to <<his npc_mentee>> work.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_admin_1">>
<<if false>>
<<moveTo "event_stage_5_transition_admin_1">>
<</if>>
<<set $scene.workTime = Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: dom stage 5 lunch - they fetch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
Lunch-time arrives and <<=setup.getNpcName('npc_rival', 'formal')>> orders <<=setup.getNpcName('npc_mentee', 'first')>> to fetch <<his npc_rival>> lunch alone.<br>
<br>
You wish <<=setup.getNpcName('npc_mentee', 'first')>> luck as, clearly a bit nervous, they leave the office, walking carefully in their heels, the distracting influence of their plug shifting with every step apparent on their face.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_wednesday_3" 'Wait for their return.' 900>>]
</div>/*#
#desc: dom stage 5 lunch - they return from lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_mentee', 'first')>> returns from their errand, looking even more flushed and distracted as they deliver lunch to <<=setup.getNpcName('npc_rival', 'formal')>> and then hurry over to sit down.<br>
<br>
"@@.npc_mentee;Oh goddess! That was so crazy! So the line at the canteen was really busy by the time I got there, but this nice <<guy>> let me cut in front of <<him>>, but then <<he>> started grabbing my butt! I just froze, I didn't know what to do! But <<he>> just kept groping me and all I could think about was my plug and... what if it was <<his>> cock instead?@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> shudders. "@@.npc_mentee;I don't know what's going on! Like, I've never really had luck dating, but I <<if $options.fem == $npc_mentee.fem>>was never really into <<if $options.fem>>women<<else>>men<</if>><<else>>always thought I was straight<</if>> but this week...@@" They look down to realise they've been groping their breasts while they talked, blushing and pulling their hand away, "@@.npc_mentee;I mean, look at me! And I can hardly stop thinking about sex... I couldn't sleep last night until I took another of those pills and... what should I do?@@"<br>
<br>
[<<moveTo "event_stage_5_transition_dom_wednesday_4" "They're doing everything right — keep embracing it all." 300 "<<set $scene.encourage=true>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_wednesday_4" "They should quit." 300 "<<set $scene.encourage=false>>">>]
</div>/*#
#desc: dom stage 5 lunch - console
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.encourage>>
<<incrementEmotion 'anger' 'npc_rival' 2>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
<<if $scene.encourage>>
You smile, and reply that they sound like they are doing well. You remind them that as a <<if $fetish.sissy>>SISSI<<else>>submissive<</if>> Secretary their duties are to serve in all ways; of course that includes presenting themselves to coworkers in an appealing manner. You point out how happy the other employee must have been, getting to squeeze their sexy bubble butt, and thus how much they improved the <<man>>'s afternoon.<br>
<br>
"@@.npc_mentee;Huh, I guess you're right...@@" They look down at their butt and wiggle it slightly "@@.npc_mentee;I swear it's gotten bigger this week... didn't really notice compared to the breasts...@@"<br>
<br>
You smile and note that it's all part of the job — the makeup, their clothes, all of it combining so that they can help make the company a better, more inviting, place to work.
<<else>>
You try to warn <<=setup.getNpcName('npc_mentee', 'first')>>, to tell them that things are only going to get worse if they don't get out now but, rather than taking your advice they seem to only grow suspicious.<br>
<br>
"@@.npc_mentee;Quit? What are you talking about — I need this job, I thought you were supposed to be helping me? Quit? No, I can't quit — look how much I've already given up! I can't afford to remove these,@@" they state, their hands looking small compared to their large breasts. "@@.npc_mentee;No, this is one of those reverse psychology things to get me to remember that I just have to focus on the work, right?@@"
<</if>>
<br><br>
They turn back to their terminal and you, too, resume work.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_dom_wednesday_5">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_wednesday_5">>
<</if>>
<<set $scene.workTime = 10000+Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: dom stage 5 npc_nintendolls visit
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4) setup.charImage("npc_nintendolls") setup.charImage("npc_nintendolls","npc_nintendolls_assistant")>>
<div id="invframe" class="scrolltext">
Partway through the afternoon <<=setup.getNpcName('npc_nintendolls', 'formal')>> arrives for a meeting; attended to by their <<if $fetish.sissy>>sissified<<else>>feminised<</if>> assistant, the subdued ex-board member following submissively at the end of a leash.<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> gawks in surprise as the pair disappear into the inner office.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_wednesday_6" 'Explain it away as a game that some senior managers play.' 300 "<<set $scene.explain=true>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_wednesday_6" 'Explain that a collar and a leash are coveted rewards for exemplary service.' 300 "<<set $scene.explain=false>>">>]
</div>/*#
#desc: dom stage 5 npc_nintendolls service
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
<<if $scene.explain>>
You note <<=ps(setup.getNpcName('npc_mentee', 'first'))>> shocked expression and explain away <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> as a sort of game between <<him npc_nintendolls>> and <<his npc_nintendolls>> subordinate. "@@.pc;It's not like they're <<Master npc_nintendolls>> and slave!@@" You lie with a laugh.<br>
<br>
You can tell <<=setup.getNpcName('npc_mentee', 'first')>> isn't quite sure how to feel about the whole thing but they nod and return to work.
<<else>>
You smile, and ask if <<=setup.getNpcName('npc_mentee', 'first')>> is jealous?<br>
<br>
"@@.npc_mentee;Jealous, what? No, what are you talking about?@@"<br>
<br>
You grin wider and point out that, well... the collar means that they are not just an employee, but the personal pet/slave of their manager, which means they are VERY valued. You move closer to <<=setup.getNpcName('npc_mentee', 'first')>> asking if they would enjoy being collared, becoming a slave...<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> trembles as you run a finger along their neck and then, blushing hard, they nod "@@.npc_mentee;Could I... could I be your slave?@@" They ask whisper-quiet.<br>
<br>
"@@.npc_mentee;Perhaps,@@" you reply, though you add that they would have to be VERY good to earn such a position.<br>
<br>
Spurred submissively on they nod and quickly return to work. You catch them biting their lip and sneaking submissive glances at you through the rest of the afternoon.
<</if>>
<br><br>
<<set _endDay = setup.setNextDate($now, 0, 20, 0)>>
<<set _timeEndDay = setup.secondsToDate($now,_endDay)>>
[<<moveTo "event_stage_5_transition_dom_wednesday_7" "Work." _timeEndDay>>]
</div>/*#
#desc: dom stage 5 end of day
#status: RELEASED 0.9.0.0
#ignore_spell: s
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pass.all>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<<if !$scene.explain>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<<if $scene.pass.all && !$scene.explain>>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
The rest of the afternoon passes without incident, <<=setup.getNpcName('npc_rival', 'formal')>> still deeply involved in <<his npc_rival>> meeting with <<=setup.getNpcName('npc_nintendolls', 'formal')>> and <<he npc_rival>> dismisses you and <<=setup.getNpcName('npc_mentee', 'first')>> both with little more than a buzzing "reward" from your plugs.<br>
<br>
"@@.npc_mentee;I'll s-see you tomorrow,@@" <<=setup.getNpcName('npc_mentee', 'first')>> states in parting as they try to catch their breath.<br>
<br>
You wish <<=setup.getNpcName('npc_mentee', 'first')>> a good-night and return to your cell to rest.<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_stage_5_transition_morning_1" 'Lay down in your pod to sleep.' _timeToMorning>>]
</div>/*#
#desc: dom stage 5 thursday morning
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_mentee', 'first')>> arrives to work with an eager smile and they curtsy to you in greeting before sitting down to work.<br>
<br>
Partway through the morning <<=setup.getNpcName('npc_rival', 'formal')>> returns from a meeting and dumps a laptop on your desk before releasing you from your chair.<br>
<br>
"@@.npc_rival;My presentation laptop was showing issues. Take it to the VIP IT department to be serviced — they are on the 101st floor — follow the signs.@@"<br>
<br>
[<<moveTo "event_evil_technician_intro_1" 'Take the laptop down to IT.' 600>>]
</div>/*#
#desc: dom stage 5 thursday return from technician
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
As disturbed as you are you try to centre yourself before you step into the office, not wanting to bother <<=setup.getNpcName('npc_mentee', 'first')>> with your concerns.<br>
<br>
You take your seat and a deep breath, hoping to distract yourself with work.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_dom_thursday_3">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_thursday_3">>
<</if>>
<<set _lunch = setup.setNextDate($now, 0, 12, 15)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
<<set $scene.workTime = _timeToLunch>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: dom stage 5 thursday lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
It's your turn, again, to fetch <<=ps(setup.getNpcName('npc_rival', 'formal'))>> lunch of <<getFood>> yet again, though you note a mixture of emotions on <<=ps(setup.getNpcName('npc_mentee', 'first'))>> as they watch you leave — it would seem the attention they got during their trip yesterday was a bit addictive.<br>
<br>
<<set $scene.postLunchScene = "event_stage_5_transition_dom_thursday_4">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_thursday_4">>
<</if>>
[<<moveTo "room_stage5_transition_canteen" "Head down to the canteen." 1200>>]
</div>/*#
#desc: dom stage 5 thursday working lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correctFood = setup.getFirstItemTypeCarried("lunch") == "food_steak">>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemTypeCarried("lunch")>>
<<deleteItem $scene.foodDelivery.foodItem>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You return and make your delivery. <<=setup.getNpcName('npc_rival', 'formal')>>
<<if $scene.correctFood>>
starts eating immediately,
<<else>>
digs in without even noting your mistake with <<his npc_rival>> order,
<</if>>
before you can leave <<he npc_rival>> grunts. "@@.npc_rival;Before you go back to your desk — as hungry as I am, what I REALLY need is my dick sucked, so how about you crawl over here. You've been so busy training the new <<if $fetish.sissy>>sissy<<else>>girl<</if>> I haven't had time to use you.@@"<br>
<br>
[<<moveTo "event_stage_5_transition_dom_thursday_5" "Dutifully suck <<him npc_rival>> off." 300 "<<set $scene.suckBoss=true>>">>]<br>
[<<moveTo "event_stage_5_transition_dom_thursday_5" 'Suggest it would be a good learning opportunity for <<=setup.getNpcName("npc_mentee", "first")>> to do it.' 300 "<<set $scene.suckBoss=false>>">>]
</div>/*#
#desc: dom stage 5 thursday working lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suckBoss>>
<<applyExperience 'oral' $npc_rival.penis_size 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 10 'normal' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'dominance' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'penis' 13 'very' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.suckBoss>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<<else>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImageMentee(4)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.suckBoss>>
You curtsy, and then crawl between <<=ps(setup.getNpcName('npc_rival', 'formal'))>> legs to suck <<him npc_rival>> off. <<He npc_rival>> doesn't last long between your lips and before <<he npc_rival>> has even finished <<his npc_rival>> lunch<<if $fetish.cum>> you are "rewarded" with a meal of your own<<else>><<he npc_rival>> is grunting in satisfaction<</if>>.<br>
<br>
<<if $fetish.cum>>
You open wide to show off <<his npc_rival>> load and wait for permission to swallow your
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
delicious prize.
<<else>>
tasty treat.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
salty snack.
<<else>>
bitter bounty.
<</if>>
<</if>>
<br><br>
<</if>>
<<=setup.getNpcName('npc_rival', 'formal')>> grins in satisfaction, and then nods, sending you back to work.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_dom_thursday_6">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_thursday_6">>
<</if>>
<<set _endDay = setup.setNextDate($now, 0, 18, 0)>>
<<set _timeEndDay = setup.secondsToDate($now,_endDay)>>
<<set $scene.workTime = _timeEndDay>>
<<include "stage5TransitionWorkOptions">>
<<else>>
You suggest that this would be a good learning opportunity for <<=setup.getNpcName('npc_mentee', 'first')>> to expand their responsibilities. <<=setup.getNpcName('npc_rival', 'formal')>> pauses for a moment in thought. "@@.npc_rival;If you think them ready — but you better be prepared to step in, because I don't want to wait while some amateur fat-fingers it.@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> summons <<=setup.getNpcName('npc_mentee', 'first')>> and they appear looking nervous and cute, somehow reflexively shoving their breasts forward.<br>
<br>
"@@.npc_mentee;Yes, <<Sir npc_rival>>. Is there something you need from me?@@"<br>
<br>
"@@.npc_rival;I do, indeed,@@" <<=setup.getNpcName('npc_rival', 'formal')>> replies with a leering grin. "@@.npc_rival;I need you to crawl over here and suck my cock.@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> freezes in surprise, but you're already standing next to them, whispering in <<=ps(setup.getNpcName('npc_mentee', 'first'))>> ear <<if $scene.encourage>>how this is what they've been training for — to be a good <<if $fetish.sissy>>SISSI Secretary<<else>>girl<</if>> and serve their superior...<<else>>that this is what they signed up for.<</if>><br>
<br>
You gently lead them to take a step forward as <<=setup.getNpcName('npc_rival', 'formal')>> unzips and pulls out <<his npc_rival>> cock. You can feel <<=ps(setup.getNpcName('npc_mentee', 'first'))>> confused excitement as you guide them to their knees, telling them how eager they are, how much they're going to enjoy sucking <<=setup.getNpcName('npc_rival', 'formal')>>. <<=setup.getNpcName('npc_mentee', 'first')>> trembles as you remind them how hard <<=setup.getNpcName('npc_rival', 'formal')>> works for the company, and how it is a <<if $fetish.sissy>>SISSY <</if>>Secretary's duty, and honour, to help...<br>
<br>
[<<moveTo "event_stage_5_transition_dom_thursday_5a" "Lesson time." 300>>]<br>
<</if>>
</div>/*#
#desc: dom stage 5 thursday working lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'dominance' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'penis' 17 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_rival.penis_size 'very' $SEEN_FRIEND>>
<<applyExperience 'cum' 10 'normal' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
Though fuelled by your words of encouragement <<=setup.getNpcName('npc_mentee', 'first')>> is a clear novice when it comes to cock-sucking; licking and sucking at random while almost gagging themselves when they try to go more than halfway down <<=ps(setup.getNpcName('npc_rival', 'formal'))>> <<getWordPenis "npc_rival">>.<br>
<br>
You can tell that <<=setup.getNpcName('npc_rival', 'formal')>> is getting off on the whole thing, but the <<man npc_rival>> also shows <<his npc_rival>> impatience as <<he npc_rival>> eventually shoves <<=setup.getNpcName('npc_mentee', 'first')>> out of the way and pulls you in to finish the job.<br>
<br>
Knowing that you're on "display" in more ways than one you show off your skills, causing <<=setup.getNpcName('npc_mentee', 'first')>> to gasp as you smoothly take <<=setup.getNpcName('npc_rival', 'formal')>> to the root. It doesn't take much more than half a minute with your practiced throat and nimble tongue before you
<<if $fetish.cum>>
are treated to a mouth-full of <<getWordCum>>.<br>
<br>
You grab <<=setup.getNpcName('npc_mentee', 'first')>> by the hair and pull them in for a kiss, "sharing" the bounty as they moan into your mouth and swallow.
<<else>>
<<=setup.getNpcName('npc_rival', 'formal')>> reaches climax.
<</if>>
<br><br>
"@@.npc_rival;Not bad, though you'll need to practice those skills if you are going to be a usable mouth fuck hole.@@" <<=setup.getNpcName('npc_rival', 'formal')>> states as <<he npc_rival>> zips up. "@@.npc_rival;Now get back to work! The job of a <<if $fetish.sissy>>SISSI <</if>>Secretary is more than being a cock-hungry slut.@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> still breathless and overwhelmed, the two of you return to your desk.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_dom_thursday_6">>
<<if false>>
<<moveTo "event_stage_5_transition_dom_thursday_6">>
<</if>>
<<set _endDay = setup.setNextDate($now, 0, 18, 0)>>
<<set _timeEndDay = setup.secondsToDate($now,_endDay)>>
<<set $scene.workTime = _timeEndDay>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: dom stage 5 thursday npc_development
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<<if $scene.pass.all>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<<if !$scene.suckBoss>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<<if $scene.pass.all && !$scene.suckBoss>>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4) setup.charImage("npc_development")>>
<div id="invframe" class="scrolltext">
It's getting late in the afternoon when <<=setup.getNpcName('npc_development', 'formal')>> enters the office and <<=setup.getNpcName('npc_rival', 'formal')>> comes out to greet her.<br>
<br>
"@@.npc_rival;Ah, <<=setup.getNpcName('npc_development', 'formal')>>.@@" <<He npc_rival>> turns to <<=setup.getNpcName('npc_mentee', 'first')>> with an explanation, "@@.npc_rival;<<=setup.getNpcName('npc_development', 'formal')>> is in charge of our employee development programs.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> nods and smiles. "@@.npc_rival;Yes, and I have been hearing some lovely things about you, <<=setup.getNpcName('npc_mentee', 'first')>>.@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> blushes.<br>
<br>
"@@.npc_development;I see that Miss <<=$player.last_name>> has done a wonderful job introducing you to our company, which is expected given that she is one of the finest students it has been my pleasure to work with, but for as far as you have come you need some... finishing.@@"<br>
<br>
<<=setup.getNpcName('npc_mentee', 'first')>> looks confused as <<=setup.getNpcName('npc_rival', 'formal')>> nods. "@@.npc_rival;Miss <<=$player.last_name>> and I have an important party to be attending this evening. So you will be going with <<=setup.getNpcName('npc_development', 'formal')>> — I am sure she has many things to teach you.@@"<br>
<br>
<<=setup.getNpcName('npc_development', 'formal')>> takes <<=setup.getNpcName('npc_mentee', 'first')>> by the hand with a smile. "@@.npc_development;Oh, yes, the two of us are going to have QUITE the delightful time...@@"<br>
<br>
You smile in encouragement as <<=setup.getNpcName('npc_mentee', 'first')>> glances back at you.<br>
<br>
"@@.npc_rival;So,@@" <<=setup.getNpcName('npc_rival', 'formal')>> states, once it is just the two of you, "@@.npc_rival;<<=ps(setup.getNpcName('npc_boss', 'formal'))>> party is here again — go get changed so that you can attend me.@@"<br>
<br>
On cue a guard appears to take you back to your cell.<br>
<br>
[<<moveTo "event_stage_5_transition_party_1" "Go get changed." 300>>]
</div>/*#
#desc: dom stage 5 friday morning
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
Still a bit tired from your long previous night you find <<=setup.getNpcName('npc_mentee', 'first')>> already at work, greeting you with a wide smile before standing up and welcoming you with a curtsy.<br>
<br>
"@@.npc_mentee;Good morning, <<=$player.first_name>>. Did you enjoy the party? I had a wonderful evening with <<=setup.getNpcName('npc_development', 'formal')>> — she's so brilliant! But it's clear that I have a lot more that I need to learn.@@"<br>
<br>
You nod, taking your seat and focusing on work as you reflect on your situation.<br>
<br>
<<set _afternoon = setup.setNextDate($now, 0, 14, 57)>>
<<set _timeToAfternoon = setup.secondsToDate($now,_afternoon)>>
[<<moveTo "event_stage_5_transition_dom_friday_2" "Continue working." _timeToAfternoon>>]
</div>/*#
#desc: dom stage 5 friday sent for coffee
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
Lunch comes and goes without anything happening, and it is only partway through the afternoon that <<=setup.getNpcName('npc_rival', 'formal')>> frantically summons both you and <<=setup.getNpcName('npc_mentee', 'first')>> into <<his npc_rival>> office.<br>
<br>
"@@.npc_rival;Hello, both of you...@@" <<He npc_rival>> opens with as you look at <<his npc_rival>> dishevelled appearance and the keyboard imprint on <<his npc_rival>> face and quickly surmise that <<he npc_rival>> has been passed out at <<his npc_rival>> desk.<br>
<br>
"@@.npc_rival;I got a bit too deep into my work and lost track of time — <<=setup.getNpcName('npc_boss', 'formal')>> is due shortly and we need to prepare. Miss <<=$player.last_name>> — get me some coffee and some of <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> special serums — I need to be sharp for this meeting. <<=setup.getNpcName('npc_mentee', 'formal')>>, assist me in getting changed, in my rush to work this morning I failed to grab a fresh outfit.@@"<br>
<br>
With far more enthusiasm than you or <<=setup.getNpcName('npc_rival', 'formal')>> can muster <<=setup.getNpcName('npc_mentee', 'first')>> smiles and curtsies. "@@.npc_mentee;Of course, <<Sir npc_rival>>, whatever I can do to be of service.@@"<br>
<br>
[<<moveTo "event_stage_5_transition_sub_friday_coffeedrug_1" "Leave on a Quest for Coffee... and other Drugs." 300>>]
</div>/*#
#desc: dom stage 5 friday npc_rival prepares for npc_boss
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pass.all>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImageMentee(4)>>
<div id="invframe" class="scrolltext">
You head straight into <<=ps(setup.getNpcName('npc_rival', 'formal'))>> inner office where you find <<him npc_rival>> looking much more put together... even as <<he npc_rival>> sits in <<his npc_rival>> chair with <<=setup.getNpcName("npc_mentee","first")>> quietly sucking <<him npc_rival>> off.<br>
<br>
"@@.npc_rival;You're back!@@" <<He npc_rival>> states with obvious relief, pounding the blue vial as soon as you hand it to <<him npc_rival>>. "@@.npc_rival;Yes, that's the stuff...@@" <<He npc_rival>> moans.<br>
<br>
From between <<his npc_rival>> legs you hear another moan, followed by <<=setup.getNpcName('npc_rival', 'formal')>> stiffening and then grunting with pleasure.<br>
<br>
"@@.npc_rival;Yes, makes me feel like a new <<man npc_rival>>,@@" <<he npc_rival>> states with a sigh, standing up slowly, <<his npc_rival>> cock slipping free of <<=ps(setup.getNpcName("npc_mentee","first"))>> lips as she <<if $fetish.cum>>gulps down what must have been a massive load<<else>>catches her breath<</if>>. She looks over at you with a prideful smile before licking her lips and rising to her feet.<br>
<br>
You note that <<=ps(setup.getNpcName('npc_rival', 'formal'))>> <<getWordPenis "npc_rival">> is still hard... and that it looks significantly larger than last you saw it...<br>
<br>
<<printThought "Must be those drugs...">><br>
<br>
There's a fire in <<=ps(setup.getNpcName('npc_rival', 'formal'))>> eyes as <<he npc_rival>> takes the coffee and sips it slowly. "@@.npc_rival;Excellent... if you would take <<=ps(setup.getNpcName("npc_mentee","first"))>> place... I think I could do with one more to take the edge off before <<=setup.getNpcName('npc_boss', 'formal')>> arrives...@@"<br>
<br>
[<<moveTo "event_stage_5_transition_friday_blow" "Blow <<him npc_rival>>." 1800 "<<set $scene.blow=true>>">>]<br>
[<<moveTo "event_stage_5_transition_friday_blow" "Explain that there is not time for that, <<he npc_rival>> needs to stay hard and focused for <<his npc_rival>> meeting!" 1800 "<<set $scene.blow=false>>">>]<br>
</div>/*#
#desc: dom stage 5 friday friday npc_boss assessment - work efficiency
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.blow>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<</if>>
<<if $scene.pass.all && $scene.blow>>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImageMentee(4) setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss","formal")>> arrives — <<=setup.getNpcName("npc_mentee","first")>> gasps, their first experience with <<=ps(setup.getNpcName("npc_boss","formal"))>> dominant aura taking their breath away.<br>
<br>
"@@.npc_boss;So, <<=setup.getNpcName("npc_rival","formal")>>, how is your predecessor's plaything working out?@@"<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> draws <<him npc_rival>>self up, but there is an instant contrast between <<his npc_rival>> airs and <<=ps(setup.getNpcName("npc_boss","formal"))>> raw, almost overpowering aura of dominance.<br>
<br>
<<if $scene.rivalWorkCounter > 150>>
"@@.npc_rival;On that count she is undeniably stunning. She did over twice what I would have expected and I am beginning to question if my own <<if $fetish.sissy>>SISSI <</if>>Secretary has been secretly slacking off.@@"
<<elseif $scene.rivalWorkCounter >= 100>>
"@@.npc_rival;In terms of raw output she performed superbly, doing significantly more than I expected and setting a new high water mark for my own <<if $fetish.sissy>>SISSI <</if>>Secretary to work towards.@@"
<<elseif $scene.rivalWorkCounter >= 75>>
"@@.npc_rival;She performed her base duties... adequately.@@"
<<elseif $scene.rivalWorkCounter >= 50>>
"@@.npc_rival;She narrowly failed to meet my expectations as to overall throughput.@@"
<<else>>
"@@.npc_rival;Her work performance was an utter failure — I think, on balance, she may well have been a net productivity loss compared to even my new <<if $fetish.sissy>>SISSI <</if>>Secretary merely worked alone.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_boss","formal")>> does not react to this news save to nod slowly. "@@.npc_boss;And, in other aspects? Her ward looks a delight, but how good of a mentorship did she provide over the week?@@"<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> dismisses <<=setup.getNpcName('npc_mentee', 'first')>> before <<he npc_rival>> continues.<br>
<br>
[<<moveTo "event_stage_5_transition_dom_friday_5" "Continue." 600>>]
</div>/*#
#desc: dom stage 5 friday friday npc_boss assessment - actions
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.perfectCount == 5>>
"@@.npc_rival;I have to say, whatever her other failings, the former <<=setup.getNpcName("npc_manager","Director")>> truly succeeded at training up a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary... who, herself, trained up another. If I did not know better I would be baffled to hear the reason for her falling into my care.<<if setup.getTotalValue("oral")>>I almost want to keep her, given that she she sucks like a vacuum cleaner. The <<if $fetish.slurs>>bitch<<else>>slut<</if>> is insatiable. Totally wasted on <<=setup.getNpcName("npc_manager","last")>>.<</if>> Her mentee is also acceptably submissive but needs more training before she's ready to properly serve anything other than a low-level manager.@@"
<<elseif $npc_rival.affection == 10 && $npc_rival.anger == 0>>
"@@.npc_rival;While she had some minor slip-ups, on-balance she performed stupendously. I would be more than satisfied to employ her, or her student, as my <<if $fetish.sissy>>SISSI <</if>>Secretary... <<if setup.getTotalValue("oral")>>oh, and she sucks like a vacuum cleaner. The <<if $fetish.slurs>>bitch<<else>>slut<</if>> is insatiable. Totally wasted on <<=setup.getNpcName("npc_manager","last")>>. Her trainee is also acceptably submissive but needs more training before she's ready to properly serve anything other than a low-level manager.<<else>>well, after a bit more training with <<=setup.getNpcName("npc_development","formal")>> on how to open up her throat<</if>>.@@"
<<elseif $npc_rival.affection > $npc_rival.anger>>
"@@.npc_rival;I suppose I could say that I was pleased with her overall performance, but I think that owes more to <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> drugs and our latest employee's natural submissive proclivities. I would not trust her as a trainer, in general.@@"
<<elseif $npc_rival.affection == 0 && $npc_rival.anger == 10>>
"@@.npc_rival;I will be honest — she was worthless as an instructor. Even given a naturally submissive student, and with the aid of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> drugs... well, I am still surprised we did not have a disaster on our hands.@@"
<<else>>
"@@.npc_rival;Her performance was... disappointing. I find myself quite at a loss as to why I once admired the former <<=setup.getNpcName("npc_manager","other")>> because the product she has trained well... she is unimpressive on face, and even worse at passing proper skills on.@@"
<</if>>
<br><br>
<<if $npc_rival.affection == 10 && $npc_rival.anger == 0 && ($scene.rivalWorkCounter >= 75 || $scene.rivalWorkCounter >= setup.getTotalValue("smart") * .75 * 8)>>
[<<moveTo "event_stage_5_transition_friday_home_1" 'You wait nervously for <<=setup.getNpcName("npc_boss","formal")>> to render <<his npc_boss>> decision.' 600>>]
<<else>>
[<<moveTo "event_stage_5_transition_bad_end" 'You wait nervously for <<=setup.getNpcName("npc_boss","formal")>> to render <<his npc_boss>> decision.' 600>>]
<</if>>
</div>/*#
#desc: morning before stage 5 transition wake up
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<gainWillpower 1>>
<<include "stage5IntroCheck">>
<<set $scene.workingRival = false>>
<<set $npc_manager.other_call = "Mrs.">>
<<set $npc_manager.flags.evil = 1>>
<<set $npc_technician.flags.evil = 1>>
<<if $workEvents.hasOwnProperty("technician_barter_1")>>
<<removeWorkEvent 'technician_barter_1'>>
<</if>>
<<if $events.hasOwnProperty("technician_barter_2")>>
<<removeEvent 'technician_barter_2'>>
<</if>>
<<removeWorkEvent 'admin_office_sex_visit'>>
<<removeWorkEvent 'admin_office_sex_visit_repeat'>>
<<removeWorkEvent "work_coffee_random">>
<<addWorkEvent "work_tea_random">>
<<removeEvent "technician_cafe_brunch">>
<<set $npc_admin.flags.evil = 2>>
<<if $now.getUTCDay() == 5>>
<<set $player.timebased.fatigue = 50>>
<<else>>
<<set $player.timebased.fatigue = 0>>
<</if>>
<<include "cleanPlayer">>
<<set $player.makeup.messed = 0>>
<<washClothes>>
<<set $scene.dayWorkCounter = 0>>
<<if $now.getUTCDay() == 3 && $scene.sub>>
<<addItem 'elite_secretary_corset'>>
<<set $scene.corsetReq = true>>
<</if>>
<<addItem "makeup_basic">>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You wake up and slide out of your sleeping pod, quickly washing yourself and picking up the freshly folded outfit waiting for you<<if $now.getUTCDay() == 3 && $scene.sub>> an auto-lacing corset has been added to your outfit<</if>><<if $fetish.drugs>>... with a little pink pill next to them<</if>>.<br>
<br>
<<if $fetish.drugs && !setup.hasTmpEffect('sissypill_mk2')>>
[<<moveTo "room_stage_5_transition_morning_pill" 'Swallow the pill to help you through the day.' 60>>]<br>
<</if>>
<<if false>>
<<moveTo "room_stage_5_transition_morning_1_1">>
<</if>>
[<<moveTo 'room_do_makeup' 'Check your makeup.' 0 '<<set $scene.makeuproom="Private Cell">><<set $scene.return_makeuproom="room_stage_5_transition_morning_1_1">><<set $scene.makeuproom_image="./images/locations/cell.png">><<set $scene.return_makeuproomtext="Finished with makeup.">>'>>]<br>
<<if $scene.sub>>
<<if $options.ezchange>>
[<<moveTo "room_stage_5_transition_morning_2" 'Get dressed and head to your desk.' 600 "<<if $now.getUTCDay() >= 3>><<wearItemSet 'elite_secretary_complete'>><<else>><<wearItemSet 'elite_secretary'>><</if>>">>]<br>
<</if>>
[<<moveTo "room_stage_5_transition_morning_2" 'Head to your desk.' 600>>]
<<elseif !setup.checkOutsideDecency()>>
[@@.link_locked;Your door refuses to open, an error stating that you are not properly attired for work.@@]<br>
<<if $options.ezchange>>
<<switch $now.getUTCDay()>>
<<case 2>>
[<<moveTo "event_stage_5_transition_dom_tuesday_1" 'Dress and head to your desk.' 600 "<<wearItemSet 'elite_secretary'>>">>]
<<case 3>>
[<<moveTo "event_stage_5_transition_dom_wednesday_1" 'Dress and head to your desk.' 600 "<<wearItemSet 'elite_secretary'>>">>]
<<case 4>>
[<<moveTo "event_stage_5_transition_dom_thursday_1" 'Dress and head to your desk.' 600 "<<wearItemSet 'elite_secretary'>>">>]
<<case 5>>
[<<moveTo "event_stage_5_transition_dom_friday_1" 'Dress and head to your desk.' 600 "<<wearItemSet 'elite_secretary'>>">>]
<<default>>
ERROR: unexpected day of week: <<=$now.getUTCDay()>>
<</switch>>
<</if>>
<<else>>
<<switch $now.getUTCDay()>>
<<case 2>>
[<<moveTo "event_stage_5_transition_dom_tuesday_1" 'Head to your desk.' 600>>]
<<case 3>>
[<<moveTo "event_stage_5_transition_dom_wednesday_1" 'Head to your desk.' 600>>]
<<case 4>>
[<<moveTo "event_stage_5_transition_dom_thursday_1" 'Head to your desk.' 600>>]
<<case 5>>
[<<moveTo "event_stage_5_transition_dom_friday_1" 'Head to your desk.' 600>>]
<<default>>
ERROR: unexpected day of week: <<=$now.getUTCDay()>>
<</switch>>
<</if>>
</div>/*#
#desc: morning before stage 5 transition prepare for work
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You need to get ready for work... though, is it really work when you're literally confined to a cell when not "on the job?" <br>
<br>
<<if $fetish.drugs && !setup.hasTmpEffect('sissypill_mk2')>>
[<<moveTo "room_stage_5_transition_morning_pill" 'Swallow a pill to help you through the day.' 60>>]<br>
<</if>>
<<if $scene.sub>>
[<<moveTo "room_stage_5_transition_morning_2" 'Head to your desk.' 600>>]
<<else>>
<<switch $now.getUTCDay()>>
<<case 2>>
[<<moveTo "event_stage_5_transition_dom_tuesday_1" 'Head to your desk.' 600>>]
<<case 3>>
[<<moveTo "event_stage_5_transition_dom_wednesday_1" 'Head to your desk.' 600>>]
<<case 4>>
[<<moveTo "event_stage_5_transition_dom_thursday_1" 'Head to your desk.' 600>>]
<<case 5>>
[<<moveTo "event_stage_5_transition_dom_friday_1" 'Head to your desk.' 600>>]
<<default>>
ERROR: unexpected day of week: <<=$now.getUTCDay()>>
<</switch>>
<</if>>
</div>/*#
#desc: morning before stage 5 transition shift
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'sissypill_mk2'>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You pop the little pink pill, biting your lip to suppress a moan as the happy pink feelings flow through you.<br>
<br>
<<printThought "This will help me through the day...">><br>
<br>
[<<moveTo "room_stage_5_transition_morning_1" 'Back.' 30>>]
</div><<set _clothing = ($scene.corsetReq && setup.checkItemSetWorn("elite_secretary_complete") || !$scene.corsetReq && setup.checkItemSetWorn("elite_secretary"))>>
<<set _underwear = setup.checkItemSetWorn("elite_secretary_underwear")>>
<<set _makeup = ["normalmakeup", "expertmakeup", "moviestar", "camgirl", "egirl", "sissy_doll", "ultimatebimbo"].includes(setup.getCurrentMakeup()) && $player.makeup.messed < 15>>
<<set _plug = setup.isItemEquipped('vibrating_plug_large')>>
<<set $scene.pass = {
"clothing" : _clothing,
"underwear" : _underwear,
"makeup" : _makeup,
"plug" : _plug
}>>
<<set $scene.pass.all = $scene.pass.clothing && $scene.pass.underwear && $scene.pass.makeup && $scene.pass.plug>>
<<set $player.work.foodID = "food_steak">> /% horn is boring and orders the same thing every day %/
<<set $scene.foodDelivery = {}>>
<<set $scene.foodDelivery.done = false>>
<<set $scene.foodDelivery.right = false>>
<<set $scene.foodDelivery.noFood = false>>/*#
#desc: submissive stage 5 morning outfit check
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_rival.stage < 3>>
<<set $npc_rival.stage = 3>>
<</if>>
<<include "stage5IntroCheck">>
<<if $scene.sub && $scene.corsetReq>>
<<wearItemSet "elite_secretary_complete">>
<<else>>
<<wearItemSet "elite_secretary">>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
A guard escorts you to <<=ps(setup.getNpcName('npc_rival', 'formal'))>> office where <<=setup.getNpcName('npc_sissy_secretary', 'first')>>
<<if $scene.pass.clothing && $scene.pass.underwear && $scene.pass.makeup && $scene.pass.plug>>
greets you with a smile.<br>
<br>
"@@.npc_sissy_secretary;Good morning! Come on and take a seat, get a head start on today's work!@@" She motions for you to take your seat beside her.
<<else>>
looks at you and frowns. "@@.npc_sissy_secretary;No, no! You aren't prepared for work! Here, let me help.@@"<br>
<br>
Like a small whirlwind she
<<if !$scene.pass.underwear>>
hands you fresh underthings,
<</if>>
<<if !$scene.pass.clothing>>
produces a new <<if $fetish.sissy>>SISSI <</if>>secretary uniform,
<</if>>
<<if !$scene.pass.makeup>>
touches up your makeup,
<</if>>
<<if !$scene.pass.plug>>
slides a fresh plug into your ass,
<</if>>
and then helps you into your chair. "@@.npc_sissy_secretary;There, NOW you're ready for work, that was a close one!@@" She states as she helps you into your chair. "@@.npc_sissy_secretary;A great woman said we work in a representative position, and our uniform is a part of that!@@"
<</if>>
<br><br>
You gasp as you settle into your chair and the plug is replaced with <<=ps(setup.getNpcName('npc_rival', 'formal'))>> enlarged clone<<if $player.body_ref.vagina>>, identical twins sliding between both sets of your lips<<else>>an identical twin sliding between your lips<</if>>. Bound and plugged in your chair, you have little choice but to start working.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_root">>
<<if false>>
<<moveTo "event_stage_5_transition_root">>
<</if>>
<<set $scene.workTime = Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: mux for stage 5 transition shifts
#status: RELEASED 0.9.0.0
#*/
<<if $scene.sub>>
<<initRoom>>
<<switch $now.getUTCDay()>>
<<case 1>>
<<case 2>>
<<moveTo "event_stage_5_transition_sub_tuesday_1">>
<<case 3>>
<<moveTo "event_stage_5_transition_sub_wednesday_1">>
<<case 4>>
<<moveTo "event_stage_5_transition_sub_thursday_1">>
<<case 5>>
<<moveTo "event_stage_5_transition_sub_friday_1">>
<<default>>
ERROR: unexpected day of week: <<=$now.getUTCDay()>>
<</switch>>
<<else>>
<<initRoom>>
<<switch $now.getUTCDay()>>
<<case 2>>
<<moveTo "event_stage_5_transition_dom_tuesday_1">>
<<case 3>>
<<moveTo "event_stage_5_transition_dom_wednesday_1">>
<<case 4>>
<<moveTo "event_stage_5_transition_dom_thursday_1">>
<<case 5>>
<<moveTo "event_stage_5_transition_dom_friday_1">>
<<default>>
ERROR: unexpected day of week: <<=$now.getUTCDay()>>
<</switch>>
<</if>><<if setup.getWillpower() > 0>>
[<<moveTo $scene.followUp 'Focus and work hard.' $scene.workTime "<<spendWillpower 1>><<set $scene.work='hard'>><<set $player.timebased.fatiguemulti = 1.25>><<set $player.timebased.stressmulti = 0.75>>">>] <<hint $options "This will cost Willpower">><br>
<<else>>
[@@.link_locked;You lack the mental energy to work hard.@@]<br>
<</if>>
[<<moveTo $scene.followUp 'Work normally.' $scene.workTime "<<set $scene.work='normal'>><<set $player.timebased.fatiguemulti = 1>><<set $player.timebased.stressmulti = 0.5>>">>]<br>
[<<moveTo $scene.followUp 'Try to recover a bit and slack off.' $scene.workTime "<<set $scene.work='slack'>><<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>>">>]<<switch $scene.work>>
<<case 'hard'>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<set _workQuantity = setup.getTotalValue("smart")>>
<<case 'normal'>>
<<set _workQuantity = .75*setup.getTotalValue("smart")>>
<<case 'slack'>>
<<incrementEmotion 'anger' 'npc_rival' 1>>
<<set _workQuantity = .5*setup.getTotalValue("smart")>>
<</switch>>
<<set $scene.dayWorkCounter += _workQuantity>>
<<set $scene.rivalWorkCounter += _workQuantity>>/*#
#desc: office lunchroom during stage 5 transition
#status: RELEASED 0.9.0.0
#*/
<<set $player.location = 'Company Canteen'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.workingRival = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_canteen.png">>
<div id="invframe" class="scrolltext">
You travel down to Social Interaction Service Syndicate Inc.'s canteen on Floor 50 as instructed and get into line.<br>
<br>
<<printFoodList $scene.postLunchScene>>
</div>/*#
#desc: stage 5 monday evil bob
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_admin","npc_admin_evil")>>
<div id="invframe" class="scrolltext">
You're working along when another guest arrives.
<<if $npc_admin.flags.evil == 0 || $npc_admin.flags.evil == 4>>
Your heart leaps at the sight of <<=setup.getNpcName('npc_admin', 'first')>> and then crashes even harder as <<he npc_admin>> looks back at you. From the evil glint in <<his npc_admin>> eye to <<his npc_admin>> dark grin... this isn't your friend. It may be walking around in <<his npc_admin>> skin, but whatever <<man npc_admin>> walks past you and into the inner office... it is no longer your <<if $npc_admin.flags.relationship == 'boyfriend'>><<boy npc_admin>>friend<<else>>long-time friend<</if>>.
<<else>>
<<=setup.getNpcName('npc_admin', 'first')>> strolls through the door with a confident grin.
<</if>>
<br><br>
You freeze as <<his npc_admin>> gaze scans over you with amusement, but not a trace of warmth. You shudder, thinking back to your encounter with <<=setup.getNpcName('npc_psychiatrist', 'formal')>> <<if $scene.sub>>this morning<<else>>earlier in the week<</if>>... have you damned all of your friends?<br>
<br>
<<if $scene.sub>>
[<<moveTo "event_stage_5_transition_sub_monday_7" "Continue working." 300>>]
<<else>>
[<<moveTo "event_stage_5_transition_dom_wednesday_2" "Continue working." 300>>]
<</if>>
</div>/*#
#desc: submissive stage 5 monday finish assessment
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You are about to leave when <<he npc_rival>> adds, almost as an after-thought.
<<include "transitionSubWorkSummary">>
<br><br>
You turn to go and a guard appears.<br>
<br>
"@@.npc_rival;You will not be allowed to leave the building while you are re-affirming your devotion to the company. Security, you understand. The guard will take you to your room for the night: I shall expect you at your desk ready to work in the morning.@@"<br>
<br>
[<<moveTo "event_stage_5_transition_monday_night_2" "Follow the guard." 300>>]
</div><<if $scene.dayWorkCounter > 30>>
"@@.npc_rival;I will note that your work efficiency was quite astounding. I suppose <<=setup.getNpcName('npc_manager', 'Mrs.')>> did one thing right with your training.@@"
<<elseif $scene.dayWorkCounter > 20>>
"@@.npc_rival;Oh, and good job working today — just because I expect my subordinates to work longer hours does not mean you should not make the most of every one of them!@@"
<<elseif $scene.dayWorkCounter > 15>>
"@@.npc_rival;Your performance today was... adequate. Just because I expect my subordinates to work longer hours does not mean you should not make the most of every one of them!@@"
<<elseif $scene.dayWorkCounter > 10>>
"@@.npc_rival;Just because there are two of you working for me does not mean you can slack off — I expect you to work much harder the rest of the week, rather than rely on <<=setup.getNpcName('npc_sissy_secretary', 'formal')>> to pick up your slack.@@"
<<else>>
"@@.npc_rival;Your work performance today was... quite pathetic. You need to focus much harder the rest of the week if you expect to earn my approval.@@"
<</if>>/*#
#desc: submissive stage 5 monday night
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
The guard takes you back to a cell... whether the same as before or a different one, you could not say. Alone with the sleeping pod the guard closes and locks the door behind you.<br>
<br>
Tired from the long day, and with nothing else to do, you slide into the pod and soon fall asleep.<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_stage_5_transition_morning_1" 'Sleep.' _timeToMorning "<<removeAllClothing>>">>]
</div>/*#
#desc: morning before stage 5 transition wake up
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $player.flags.retreatDress>>
<<set _dress = $player.flags.retreatDress>>
<<else>>
<<set _dress = "pink">>
<</if>>
<<switch _dress>>
<<case 'pink'>>
<<set $scene.dressId = 'retreat_dress_pink'>>
<<set $scene.heelsId = 'retreat_ballet_pink'>>
<<case 'white'>>
<<set $scene.dressId = 'retreat_dress_white'>>
<<set $scene.heelsId = 'retreat_ballet_white'>>
<<case 'blue'>>
<<set $scene.dressId = 'retreat_dress_blue'>>
<<set $scene.heelsId = 'retreat_ballet_blue'>>
<<case 'red'>>
<<set $scene.dressId = 'retreat_dress_red'>>
<<set $scene.heelsId = 'retreat_ballet_red'>>
<</switch>>
<<addItem $scene.dressId>>
<<addItem $scene.heelsId>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You return to your cell to find your outfit laid out for you... the same style dress — minus some of the more restrictive components, that <<=setup.getNpcName('npc_manager', 'formal')>> had you wear at the corporate retreat...<br>
<br>
Your heart swells with emotion at the sight of it, both in memory of your <<=setup.getNpcName('npc_manager', 'title')>> — unseen since your capture by <<=setup.getNpcName('npc_boss', 'formal')>>, and also for <<=ps(setup.getNpcName('npc_rival', 'formal'))>> lack of creativity...<br>
<br>
You look over at the guard, waiting sternly for you to change.<br>
<br>
[<<moveTo "event_stage_5_transition_party_2" "Put on the dress, <<=$player.first_name>>." 3600>>]
</div>/*#
#desc: submissive stage 5 thursday party
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<wearItem $scene.dressId true>>
<<wearItem $scene.heelsId true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_formal") setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You finish changing into the dress, corset and ballet heels and the guard escorts you back to the elevator. Riding up in silence, you arrive at the familiar after-work party; this time in the company of <<=setup.getNpcName('npc_rival', 'formal')>>, who you note seems somewhat unnerved by the fact that your ballet-risen height now surpasses <<his npc_rival>> own.<br>
<br>
Rather than cut you free <<he npc_rival>> has you<<if $scene.sub>> and <<=setup.getNpcName('npc_sissy_secretary', 'first')>><</if>> follow <<him npc_rival>> around the party as <<he npc_rival>> attempts to hob-nob with other senior management.<br>
<br>
You get the impression that the, mostly older, Directors find <<=setup.getNpcName('npc_rival', 'formal')>> somewhat tedious, and your attention begins to wander.<br>
<br>
[<<moveTo "event_stage_5_transition_party_3" "Wait... I'd recognise that red hair anywhere!" 300>>]
</div>/*#
#desc: submissive stage 5 thursday party - meet manager
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You catch sight of a familiar fiery red hair and dash away from <<=setup.getNpcName('npc_rival', 'formal')>>.<br>
<br>
As if sensing your approach <<=setup.getNpcName('npc_manager', 'formal')>> turns just before you reach her. You come to a stop in an instant, it is <<=setup.getNpcName('npc_manager', 'formal')>>, certainly, but her expression, the look in her eye, the smile... it's... wrong...<br>
<br>
"@@.npc_manager;Hello, <<=$player.first_name>>@@" she states in greeting, her voice eerily calm, an edge to it darker than any you have heard before. She takes a sip from the teacup you suddenly notice she is holding before placing the empty vessel on a tray held by <<=setup.getNpcName('npc_secretary', 'formal')>>, who swiftly re-fills it.<<if $fetish.milking>>... complete with a squirt of milk squeezed from her single exposed breast.<</if>><br>
<br>
"@@.npc_manager;Enjoying the party? It is so delightful to be back with my fellows. I have been on... vacation this past week. It has been so long since I was able to get away, but <<=setup.getNpcName('npc_boss', 'formal')>> was QUITE insistent, and <<he npc_boss>> was, of course, correct. I find that I am back feeling quite invigorated, but I just had to get back early to enjoy <<his npc_boss>> party.@@"<br>
<br>
You are at a loss for words when <<=setup.getNpcName('npc_rival', 'formal')>> re-appears next to you, clearly annoyed.<br>
<br>
[<<moveTo "event_stage_5_transition_party_4" "Continue." 300>>]
</div>/*#
#desc: submissive stage 5 thursday party - meet manager
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ballroom.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
"@@.npc_rival;Where do you think you are getting off to?@@" <<=setup.getNpcName('npc_rival', 'formal')>> asks you in frustration.<br>
<br>
"@@.npc_manager;Oh do not mind this one, <<=setup.getNpcName('npc_rival', 'Director')>>,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states... and you would swear there was even more venom in her words. "@@.npc_manager;She has always been an... inquisitive thing, practically begging to be punished, and such a delight to torture.@@" She grins even wider as you tremble in fear. "@@.npc_manager;Soon, my dear. For now you remain in <<=ps(setup.getNpcName('npc_rival', 'Director'))>> mmm... capable hands.@@" She graces <<him npc_rival>> with an almost mocking bow. "@@.npc_manager;I will leave you to it. I am sure <<=setup.getNpcName('npc_rival', 'Director')>> has many important things to attend to this evening.@@"<br>
<br>
Taking another drink of tea <<=setup.getNpcName('npc_manager', 'formal')>> turns and walks away, leaving <<=setup.getNpcName('npc_rival', 'formal')>> bristling and at a seeming loss for words.<br>
<br>
Only once <<=setup.getNpcName('npc_manager', 'formal')>> has disappeared into the crowd does <<=setup.getNpcName('npc_rival', 'formal')>> seem to regain some measure of composure, though <<his npc_rival>> words hiss out through clenched teeth, "@@.npc_rival;Come, my pet, I tire of this meaningless socialisation. The night would be put to far better use doing actual work.@@"<br>
<br>
You take a final moment to try and catch another glimpse of <<=setup.getNpcName('npc_manager', 'formal')>> when <<=setup.getNpcName('npc_rival', 'formal')>> takes you by the hand and drags you towards the elevator.<br>
<br>
[<<moveTo "event_stage_5_transition_party_5" "Continue." 300>>]
</div>/*#
#desc: submissive stage 5 thursday post-party work
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
"More work" turns out to be quite literal... at least for you, as you soon find yourself naked and bound to your chair, with the punishment and stimulation of said chair turned up to max; the slightest slow-down or miss-key met with a punishing shock as you work with a frantic focus never before seen. All the while you are forced to block out the sounds of sex and... other things, trickling out from the inner office as <<=setup.getNpcName('npc_rival', 'formal')>> uses <<his npc_rival>> other <<if $fetish.sissy>>SISSI <</if>>Secretary hard.<br>
<br>
<<set _night = setup.setNextDate($now, 0, 23, 55)>>
<<set _timeToNight = setup.secondsToDate($now,_night)>>
[<<moveTo "event_stage_5_transition_party_6" "Continue working." _timeToNight>>]
</div>/*#
#desc: submissive stage 5 post-party
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.tired = 200>>
<<removeItem $scene.dressId true>>
<<deleteItem $scene.dressId>>
<<removeItem $scene.heelsId true>>
<<deleteItem $scene.heelsId>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
Minutes before midnight; and with the frequent shocks of the chair the only thing keeping you awake, <<=setup.getNpcName('npc_rival', 'formal')>> emerges from <<his npc_rival>> inner office to finally release you from the chair.<br>
<br>
Without a word <<he npc_rival>> takes you back to your cell <<him npc_rival>>self and locks you in for the night.<br>
<br>
<<printThought "Ugh, I'm exhausted... better at least try to get some sleep...">><br>
<br>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_stage_5_transition_morning_1" 'Sleep.' _timeToMorning "<<removeAllClothing>>">>]
</div>/*#
#desc: submissive stage 5 friday ask about drugs
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
You decide that, coffee being best hot, it would be best to start with <<=setup.getNpcName('npc_work_doctor', 'formal')>> and you hurry to <<his npc_work_doctor>> lab.<br>
<br>
You arrive to be greeted by <<=setup.getNpcName('npc_psychiatrist', 'formal')>> who graces you with a too-cheery smile and asks if she can "@@.npc_psychiatrist;Help with anything?@@"<br>
<br>
Her empty gaze unnerves you, but before you can respond <<=setup.getNpcName('npc_work_doctor', 'formal')>> steps out of a side lab with a wild expression on <<his npc_work_doctor>> face.<br>
<br>
"@@.npc_work_doctor;Miss <<=$player.last_name>>! What a surprise! What are you doing here?@@"<br>
<br>
[<<moveTo "event_stage_5_transition_sub_friday_coffeedrug_2" "Explain the situation." 300>>]
</div>/*#
#desc: submissive stage 5 friday get drugs
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
You hurriedly explain that <<=setup.getNpcName('npc_rival', 'formal')>> had a long night and has sent you to fetch some drugs on <<his npc_rival>> behalf.<br>
<br>
"@@.npc_work_doctor;I see, I see,@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> replies, walking over to a station and punching in a configuration of Serums Sigma, Delta and Mu. "@@.npc_work_doctor;Here — this should be just what <<he npc_rival>> needs,@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> states as <<he npc_work_doctor>> hands you the resulting glowing blue vial.<br>
<br>
[<<moveTo "event_stage_5_transition_sub_friday_coffeedrug_3" "Thank <<him npc_work_doctor>> and be on your way." 300>>]
</div>/*#
#desc: submissive stage 5 friday get coffee
#status: RELEASED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Coffee Shop 52">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_cafe.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You thank <<=setup.getNpcName('npc_work_doctor', 'formal')>> for the assistance and then rush off to Coffee Shop 52 for the second half of <<=ps(setup.getNpcName('npc_rival', 'formal'))>> order.<br>
<br>
As always, <<=setup.getNpcName("npc_barista","nickname")>> greets you with a too-happy smile.<br>
<br>
<<if $npc_barista.flags.rescue.cure != "">>
"@@.npc_barista;Oh, <<=$player.first_name>>! It's so good to see you again! I was, like, worried that you hadn't visited... especially when I couldn't talk to my therapist about it, but seeing you again makes me so HAPPY.@@"<br>
<br>
You smile back, sensing the hidden meaning behind her words... perhaps there is one of your friends that hasn't been turned against you.
<<else>>
"@@.npc_barista;Hiya, <<=$player.first_name>>! I, like, missed you! It's good to see you again!@@"<br>
<br>
You nod, in a weird way it's comforting that, despite what's happened to the rest of your friends, <<=setup.getNpcName("npc_barista","nickname")>> appears the same as she ever was... not that is saying particularly much.
<</if>>
<br><br>
<<=setup.getNpcName("npc_barista","nickname")>> bustles about preparing your order and you are soon heading back up the elevator to deliver <<=setup.getNpcName('npc_rival', 'formal')>> <<his npc_rival>> two libations.<br>
<br>
<<if $scene.sub>>
[<<moveTo "event_stage_5_transition_sub_friday_3" "Make your delivery." 300>>]
<<else>>
[<<moveTo "event_stage_5_transition_dom_friday_3" "Make your delivery." 300>>]
<</if>>
</div>/*#
#desc: submissive stage 5 friday blow npc_rival
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _penisSize = $npc_rival.penis_size+2>>
<<if $scene.blow>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' _penisSize 'normal' $SEEN_STRANGER>>
<<incrementEmotion 'affection' 'npc_rival' 2>>
<<elseif $fetish.get_raped>>
<<applyExperience 'oral' _penisSize 'very' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_rival' 1>>
<<else>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<if $scene.blow>>
You dutifully drop to your knees, sucking not one, but two orgasms out of <<=setup.getNpcName('npc_rival', 'formal')>> before <<he npc_rival>> pushes you away... still hard.<br>
<br>
"@@.npc_rival;That will have to do for taking the edge off... <<=setup.getNpcName('npc_boss', 'formal')>> is due shortly.@@"
<<elseif $fetish.get_raped>>
You try to refuse <<=setup.getNpcName('npc_rival', 'formal')>> but <<he npc_rival>> has a sudden fire in <<his npc_rival>> eyes, lunging for you and forcing to your knees before jamming <<his npc_rival>> cock past your lips.<br>
<br>
"@@.npc_rival;Saying no to me? You stupid. <<if $fetish.sissy>>Sissy<<else>>Slut<</if>>!@@"<br>
<br>
Holding you by the hair <<he npc_rival>> pounds your throat without mercy — even <<his npc_rival>> quick orgasm failing to provide relief as <<he npc_rival>> stays hard<<if $fetish.cum>> as cum leaks out your nose<</if>>, continuing on for a second climax before tossing you aside.<br>
<br>
"@@.npc_rival;Clean yourself up — you look like a whore, and <<=setup.getNpcName('npc_boss', 'formal')>> will be here soon.@@"<br>
<br>
You gasp and catch your breath, fixing your hair and the rest as best you can as you nervously wait for <<=setup.getNpcName('npc_boss', 'formal')>> to arrive.
<<else>>
You quietly deflect the offer by pointing out that <<=setup.getNpcName('npc_rival', 'formal')>> needs to be "sharp" for <<his npc_rival>> meeting with <<=setup.getNpcName('npc_boss', 'formal')>>. "@@.npc_rival;Hmm... I suppose you have a point,@@" <<he npc_rival>> replies as <<he npc_rival>> slides <<his npc_rival>> cock back into <<his npc_rival>> pants, the bulge of it still clearly visible. "@@.npc_rival;Yes... best to be sharp...@@"<br>
<br>
<<He npc_rival>> takes a deep breath and settles back in <<his npc_rival>> chair as you stand quietly and wait for <<=setup.getNpcName('npc_boss', 'formal')>> to arrive.
<</if>>
<br><br>
<<set _bossArrive = setup.setNextDate($now, 0, 16, 0)>>
<<set _timeToBossArrive = setup.secondsToDate($now,_bossArrive)>>
<<if $scene.sub>>
[<<moveTo "event_stage_5_transition_sub_friday_4" "Wait." _timeToBossArrive>>]
<<else>>
[<<moveTo "event_stage_5_transition_dom_friday_4" "Wait." _timeToBossArrive>>]
<</if>>
</div>/*#
#desc: bad end, fail stage 4->5 transition
#status: RELEASED 0.9.0.0
#*/
<<set $player.location to "">>
<<set $gameOver = 'stage5_interview'>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/gameover.png">>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss","formal")>> shakes <<his npc_boss>> head and your heart drops.<br>
<br>
"@@.npc_boss;Disappointing... I had thought you would rise to the occasion and prove yourself. It would seem that I have lost my bet, after all... ah well, I am sure <<=setup.getNpcName("npc_work_doctor","formal")>> will enjoy the new plaything, there is surely a wealth of useful information in that <<if $fetish.sissy>>sissy<<else>>silly<</if>> head of yours that can be put towards future employees...@@"<br>
<br>
You try to fight, but guards appear and you are soon falling into a pink haze. First you doomed your friends and now... now your failure is complete, your fate sealed as well...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to the party.">><<restartDay>><</link>>]<br>
<</if>>
[<<moveTo "event_stage_5_transition_start_1" 'Restart the week...' 0 "<<set $now = setup.setNextDate($now, -4, 7, 0)>>">>]
</div>/*#
#desc: submissive stage 5 friday npc_boss assessment - final
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.workingRival = false>>
<<applyStress -20>>
<<set _x = setup.addManagerEndlessTask()>>
<<set $scene.hasEternal = setup.hasTmpEffect("sissypill_eternal") || setup.hasTmpEffect("sissypill_2_eternal") || setup.hasTmpEffect("sissypill_3_eternal") || setup.hasTmpEffect("sissypill_pure_eternal")>>
<<set $scene.addReupTask = $currentTasks.hasOwnProperty('event_doctor_reup') && $fetish.drugs && !$scene.hasEternal>>
<<if $scene.addReupTask>>
<<set _nextDate = setup.getNextDayOfWeek($now, 2, 18, 0)>>
<<addTaskById 'event_doctor_reup' _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss","formal")>> looks at you and slowly grins. "@@.npc_boss;Well, it would seem that your mistake really was just that — an error, perhaps brought on by being too readily submissive to the wrong sort of people.@@"<br>
<br>
You want to be relieved but are still holding your breath as you wait for <<him npc_boss>> to finish.<br>
<br>
"@@.npc_boss;Welcome back to the fold. I believe you have already met <<=setup.getNpcName("npc_manager","other")>>? She has been demoted, of course, but after some assistance in re-aligning her goals she is ready to again be a productive member of the Social Interaction Service Syndicate Inc. team. A car is waiting for you downstairs, enjoy your weekend. You will be reporting to her once again, starting Monday and resume your routine<<if $scene.addReupTask>>, which includes staying on top of the medication <<=setup.getNpcName("npc_work_doctor","formal")>> so graciously supplies you with<</if>>.@@"<br>
<br>
You sigh in relief, in a bit of a daze as the two<<if $npc_boss.fem == $npc_rival.fem>> <<men npc_boss>><</if>> talk a bit more before dismissing you for the day.<br>
<br>
You've been in the company building for so long now it feels weird to leave, but you find yourself looking forward to being back at your flat, welcoming the efficient limo ride home...<br>
<br>
[<<moveTo "event_stage_5_transition_friday_home_2" 'Home.' 600>>]
</div>/*#
#desc: submissive stage 5 friday home
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<<restoreWardrobeToInventory $backupInventory>>
<<set $scene.wearCollar = $player.flags.collar.owner && $player.flags.collar.collarId != setup.getItemFromType("choker")>>
<<if $scene.wearCollar>>
<<addItem $player.flags.collar.collarId>>
<<wearItem $player.flags.collar.collarId true>>
<</if>>
<<set $scene.addDrugs = $currentTasks.hasOwnProperty('event_doctor_reup') && $fetish.drugs>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
You arrive home, the flat seeming a bit alien after your intense previous week
<<if $npc_cat.stage > 0 || $npc_dog.stage > 0>>
— though you are grateful to note that the auto-feeding
<<if $npc_cat.stage > 0 && $npc_dog.stage > 0>>
dishes did their job and kept your furry friends fed — both of them eagerly welcoming you home.
<<else>>
dish did its job and kept your furry friend fed
<<if $npc_cat.stage > 0>>
<<=setup.getNpcName("npc_cat","first")>> rubbing up against your leg in welcome before scampering off to some other part of the flat.
<<else>>
<<=setup.getNpcName("npc_dog","first")>> eagerly welcoming you home before darting off to some other part of the flat.
<</if>>
<</if>>
<<else>>
— though it is still comforting to be "home."
<</if>>
<br><br>
You take a few minutes to dump the pile of junk mail that has accrued... and discover a box containing all the stuff you had been carrying around before your capture. You are slightly surprised, but cracking open the company-labeled box you find all of your things. <<if $scene.wearCollar>> As if by impulse, you find your collar and lock it back around your throat, the familiar weight a strange comfort amidst everything else that has happened the past week.<</if>><br>
<br>
Passing through the rest of the flat you don't find anything out of place<<if $scene.addDrugs>>, save for a drug dispenser in the kitchen. A reminder of your time in the corporate cells, it looks like it will take care of your medication going forward..<</if>>. As you sort things out you consider what you want to do now that you have at least some semblance of "freedom" ... even as that thought immediately has you thinking of the fates of your friends...<br>
<br>
<<printThought 'Hmm, I saw what happened to everyone at work, maybe I should check on <<=setup.getNpcName("npc_landlord","first")>>?'>><br>
<br>
[<<moveTo "event_stage_5_transition_ai_reveal_1" 'Consider your next move.' 60>>]
</div>/*#
#desc: submissive stage 5 friday home
#status: RELEASED 0.9.0.0
#*/
<<set $player.location to "Living Room">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.stage = 5>>
<<addNpcTheme 'npc_psychiatrist' 'work_doctor' 'theme_psychiatrist_company_doctor_intro'
0
'theme_betray_work_doctor_intro_1'
true
>>
<<set $npc_manager.stagevalues[4].promodate = $now>>
<<include "checkCeoInviteEvent">>
<<if $currentTasks.hasOwnProperty("cds_drinking_tech")>>
<<deleteTask 'cds_drinking_tech'>>
<<elseif $currentTasks.hasOwnProperty("cds_drinking_admin")>>
<<deleteTask 'cds_drinking_admin'>>
<</if>>
<<removeRandomEvent 'elevator_home' 'cds_drink'>>
<<if $workEvents.hasOwnProperty("ai_mission")>>
<<removeWorkEvent "ai_mission">>
<</if>>
<<if State.hasPlayed("event_exgirlfriend_your_flat_7")>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 9, 0, false)>>
<<addEvent "evil_ex_1_intro" _nextDate>>
<<else>>
<<set _nextDate = setup.setNextDate($now, 3, 14, 0)>>
<<addEvent "ai_stage5_plan_intro" _nextDate>>
<</if>>
<<addNpcTheme 'npc_ai' 'other' 'theme_ai_other_evil_admin'
0
'theme_ai_admin_first_1'
false
>>
<<if $player.flags.maidcafe.stage == 0>>
<<set _nextDate = setup.setNextDate($now, 2, 0, 0)>>
<<addEvent 'stage_5_no_maid_cafe_invite' _nextDate>>
<<else>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 12, 15, false)>>
<<addEvent 'stage_5_maid_cafe_invite' _nextDate>>
<<addEvent 'stage_5_maid_cafe_work'>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 0, 7, 0)>>
<<addEvent 'stage_5_maid_cafe_drink' _nextDate>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 19, 10, false)>>
<<set _nextDate = setup.getNextDayOfWeek(_nextDate, 6, 19, 10, false)>>
<<addEvent 'stage_5_evil_rpg_restart' _nextDate>>
<<set _nextDate = setup.getNextDayOfWeek($now, 3, 7, 0, false)>>
<<addWorkEvent "rival_stage5_visit" _nextDate>>
<<addWorkEvent "pr_sissy_stage5">>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'coworker_futa_stage5' _nextDate>>
<<addWorkEvent "rival_stage5_visit" _nextDate>>
<<addWorkEvent 'hr_discipline_stage5'>>
<<addWorkEvent "hr_retention_stage5">>
<<addWorkEvent "nintendolls_stage5">>
<<addWorkEvent "overnight_work_invite">>
<<addEvent 'rentEvent'>>
<<addTaskById 'rescue_friends'>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_livingroom_01.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
Home at last you lock your door and catch your breath... when you hear a chime from your computer... and then <<=setup.getNpcName("npc_ai","first")>> flickers into existence.<br>
<br>
You flinch in surprise but she smiles, her holographic appearance a comfort<<if $npc_barista.flags.rescue.cure != "">>, perhaps even moreso than <<=setup.getNpcName("npc_barista","nickname")>><<else>>, the first truly friendly face you've seen<</if>>.<br>
<br>
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>> <<uc 'it is good to see you again. I have been... cut off from the building, since you were taken...'>>@@"<br>
<br>
In a rarity, she sounds hesitant, unsure... you wonder if it is due to her working at diminished capacity without the company's resources... and yet you find this moment of vulnerability humanises her.<br>
<br>
"@@.npc_ai;<<uc "When your mission failed, I feared the worst. I have been running simulation after simulation in vain... but you survived. There is much to do, but in attacking us, the enemy has shown <<if $npc_boss.fem>>her<<else>>his<</if>> hand as well. Now, we must rebuild.">>@@"<br>
<br>
You nod and ask what you should do?<br>
<br>
"@@.npc_ai;<<uc "For now, we must lay low. Gather intelligence. I am preparing for my return, after which I will have better intelligence and ability to influence things on the inside... but we will only get one more shot this time, everything must be perfect. For now, nowhere is safe, even here I merely turn their gaze aside for a few minutes. I will contact you again when I am ready to move.">>@@"<br>
<br>
She disappears, and you catch your breath. You're home, and this isn't over.<br>
<br>
[<<moveTo "room_livingroom" "Consider your next move." 60>>]
</div><<if setup.checkTaskUntimedComplete("rescue_friends")>>
<<completeTask "rescue_friends" $now true>>
<</if>><<if setup.checkTaskUntimedComplete("destroy_lieutenants")>>
<<completeTask "destroy_lieutenants" $now true>>
<</if>>/*#
#desc: first time meeting evil technician
#status: WRITTEN 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Lair of the Tech Warlock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/it_lair.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
Exiting the elevator you follow the signs up the hallway towards the VIP-only IT department. Just before you reach the door it opens and a <<man>> walks out. While you don't recognise <<him>>, you do recognise <<his>> subservient body language, the red marks left behind by ropes on <<his>> wrists, the ginger way <<he>> moves past you reflecting the aftermath of a harsh punishment.<br>
<br>
Rounding the corner into the room any thoughts of the <<man>> fly from your head as you find yourself face to face with <<=setup.getNpcName("npc_technician","first")>>. Her hair dyed black with darker makeup to match she looks full on "evil twin", her "casual" blouse and skirt in favour of an ultra-fitted pantsuit. A flogger held casually in one gloved hand she grins at you in a far from welcoming greeting.<br>
<br>
"@@.npc_technician;Well, well well, look who it is... lose any data recently?@@" Her laugh is mocking as she hangs up the flogger and takes a seat behind an imposing desk.<br>
<br>
"@@.npc_technician;Spit it out already!,@@" She states impatiently, as you stare at her in slack-jawed shock. "@@.npc_technician;An open mouth like that is begging for a gag... or maybe something else jammed between those pretty lips?@@"<br>
<br>
[<<moveTo "event_evil_technician_intro_2" "Ask what happened to her?" 180>>]
</div>/*#
#desc: first time meeting evil technician - she describes transformation
#status: WRITTEN 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Lair of the Tech Warlock">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/it_lair.png" setup.charImage("npc_technician","npc_technician_evil")>>
<div id="invframe" class="scrolltext">
You nervously ask what happened to her and <<=setup.getNpcName("npc_technician","first")>> grins.<br>
<br>
"@@.npc_technician;What happened to me? Why, just that I got offered the promotion of my dreams! You have no idea how gratifying it is to give brain-dead-users what they deserve. Forgot your password? Suck my cock while I flog you for each of the complexity requirements you failed to meet. Work computer infested with malware? You can lick my toes while I revert to a clean image. Tried to shove a USB into an ethernet port? You'll learn all about what slots where as I fuck you in every hole you have. Fell victim to a phishing attack? <<if $fetish.fisting>>More like fisting attack, 'cause I'm going to gape that ass while you re-watch the training materials.<<else>>Well maybe you'll know better after you've spent a few hours dangling from one of my ass-hooks watching training materials on loop...<</if>>@@"<br>
<br>
She leans back to put her feet up on her desk, steep boots perfect for letting her look down on people, but that you could have hardly imagine her wearing willingly.<br>
<br>
"@@.npc_technician;Obviously your little rebellion was the height of foolishness, but, really, it kind of worked out, once I was shown the foolishness of my ways well... buying in was the obvious choice!@@" You continue to stare in shock at what has become of your
<<if $npc_technician.relationship.relationship_stage >= 1>>
<<switch $npc_technician.relationship.her_role>>
<<case "dom">>
<<=setup.getNpcName("npc_technician","title")>>.
<<case "sub">>
sweet slave.
<<case "neutral" ''>>
girlfriend.
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<else>>
friend.
<</if>>
"@@.npc_technician;Oh, and you want to know what's really fun? That whole data loss thing? It wasn't even your fault! Yup, the powers that be wiped it on purpose and you fell for it! And even with me telling you that fact you're too much of a dumb <<if $fetish.sissy>>sissy <</if>>sub to do anything about it!@@" Her cruel laugh echoes after you as you flee the room in terror.<br>
<br>
<<printThought "This is a disaster, how am I going to get my friend back?">><br>
<br>
<<if $scene.sub>>
[<<moveTo "event_stage_5_transition_sub_thursday_2" "Flee." 600>>]
<<else>>
[<<moveTo "event_stage_5_transition_dom_thursday_2" "Flee." 600>>]
<</if>>
</div>/*#
#desc: submissive stage 5 transition intro
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5IntroCheck">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName('npc_rival', 'formal'))>> inner office and <<he npc_rival>> greets you with an evil grin.<br>
<br>
"@@.npc_rival;Lovely — this is how a <<if $fetish.sissy>>SISSI <</if>>Secretary should look — properly dressed, made up,<<if $npc_manager.flags.require_chastity>> locked,<</if>> and filled and ready to work. Of course inspecting you every morning is a waste of my valuable time... so, in the future, I will expect you and <<=setup.getNpcName('npc_sissy_secretary', 'formal')>> to inspect each other — report any failures to me for a reward.@@"<br>
<br>
You bite your lip, already the shift from <<=ps(setup.getNpcName('npc_manager', 'formal'))>> hands-on approach has you nervous, to say nothing of the culture of betrayal and informing on your coworkers that <<=setup.getNpcName('npc_rival', 'formal')>> seems to be aiming for.<br>
<br>
"@@.npc_rival;I am sure you are eager to get working and prove your worth, so I shall delay you no longer. <<=setup.getNpcName('npc_sissy_secretary', 'formal')>> will show you how we do things around here. Work hard, work efficient, and display total submission at all times, and do not think I will go soft on you like your previous manager. A <<if $fetish.sissy>>SISSI <</if>>Secretary must be rode hard and kept firmly in line, and that is exactly what I do.@@"<br>
<br>
<<He npc_rival>> dismisses you with a wave.<br>
<br>
[<<moveTo "event_stage_5_transition_sub_monday_2" 'Curtsy and depart.' 300>>]
</div>/*#
#desc: submissive stage 5 monday chair
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 18 'very' $SEEN_FRIEND>>
<<applyExperience 'oral' 15 'very' $SEEN_FRIEND>>
<<applyExperience 'anal' 15 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> greets you and motions you to a very familiar — and featured, chair, side by side with hers facing the desk the two of you will be apparently sharing.<br>
<br>
"@@.npc_sissy_secretary;You're familiar with these, of course, note that <<=setup.getNpcName('npc_rival', 'formal')>> requires <<his npc_rival>> subordinates to work bound, and completely filled — with <<him npc_rival>>.@@" She pauses for a moment as you take your seat and the restraints tighten in place.<br>
<br>
"@@.npc_sissy_secretary;Well... not EXACTLY <<him npc_rival>> — I mean, the shape is the same, but for training purposes they're up-sized from the real thing. A compromise when I begged <<him npc_rival>> to let me work with a pair of <<=ps(setup.getNpcName('npc_boss', 'formal'))>> big dicks inside me. After whipping my ass raw and making me write a report on how much I love and prefer the taste and feel of <<=ps(setup.getNpcName('npc_rival', 'formal'))>> cock above all others, <<he npc_rival>> upgraded my work routine to be a pair of enlarged clones of <<him npc_rival>>self — I checked the system and made sure you'll be enjoying the same!@@"<br>
<br>
A moment later and the plug in your ass is removed as you are <<if $player.body_ref.vagina>>double <</if>>filled and gagged by <<=ps(setup.getNpcName('npc_rival', 'formal'))>> enhanced clones.<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> double checks your restraints and then winks before taking her seat next to you to start the day.<br>
<br>
Your work responsibilities look to be the same as you have become accustomed, though all that's happened in the past few days has you struggling a bit to focus.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_sub_monday_3">>
<<if false>>
<<moveTo "event_stage_5_transition_sub_monday_3">>
<</if>>
<<set $scene.workTime = Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: submissive stage 5 monday npc_work_doctor
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<<set $npc_psychiatrist.flags.evil = 1>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> have been working along in gagged silence when you get your first visitor.<br>
<br>
Bound, plugged, and gagged you cannot rise to meet them... instead forced to gawk as <<=setup.getNpcName('npc_work_doctor', 'formal')>> walks in... holding <<his npc_work_doctor>> nurse's leash — a nurse who is a smiling, glass-eyed <<=setup.getNpcName('npc_psychiatrist', 'formal')>>!<br>
<br>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> turns to you with an evil grin. "@@.npc_work_doctor;Good morning <<=$player.first_name>>. Enjoying your new position?@@" <<He npc_work_doctor>> chuckles as you stare between <<him npc_work_doctor>> and <<his npc_work_doctor>> smiling nurse. "@@.npc_work_doctor;You like my new assistant? She's MUCH happier now that we've brought her back into the corporate fold, isn't that right, Nurse?@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> giggles and nods as <<=setup.getNpcName('npc_work_doctor', 'formal')>> slaps her on the ass. "@@.npc_psychiatrist;So much happier!@@" She turns to you with an expression of contrition, "@@.npc_psychiatrist;I'm, like... so sorry for filling your head with all those silly notions about freedom and self-determination. Therapy is a scam, chemistry is, like, so much better! So take your yummy pills and, like, do what your owner tells you! Obedience is so much better than thinking.@@"<br>
<br>
With he clone of <<=ps(setup.getNpcName('npc_rival', 'formal'))>> <<getWordPenis "npc_rival">> filling your throat you cannot respond, merely staring in slack-jawed shock as <<=setup.getNpcName('npc_work_doctor', 'formal')>> leads the way into the inner office.<br>
<br>
The door closes and a harsh shock reminds you to get back to work.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 12, 15)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_stage_5_transition_sub_monday_4" "Continue working." _timeToLunch>>]
</div>/*#
#desc: submissive stage 5 monday lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
Your guests leave after their meeting with <<=setup.getNpcName('npc_rival', 'formal')>> and you continue working until lunch rolls along. Your restraints release and the dildos retract back into the chair as your plug slides back into place. You take a deep breath and stretch as you look over to realise that your coworker, <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is still restrained and filled.<br>
<br>
As if timed to answer your implicit question <<=setup.getNpcName('npc_rival', 'formal')>> walks out with a grin.<br>
<br>
"@@.npc_rival;So, obviously, it only takes one <<if $fetish.sissy>>SISSI <</if>>Secretary to fetch my lunch. I figure I'll have the two of you switch off for now. Today I am in the mood for <<getFood>>. You know the way down to the cafeteria, chop-chop!@@"<br>
<br>
<<set $scene.postLunchScene = "event_stage_5_transition_sub_monday_5">>
<<if false>>
<<moveTo "event_stage_5_transition_sub_monday_5">>
<</if>>
[<<moveTo "room_stage5_transition_canteen" "Head down to the canteen." 600>>]
</div>/*#
#desc: submissive stage 5 monday lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correctFood = setup.getFirstItemTypeCarried("lunch") == "food_steak">>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemTypeCarried("lunch")>>
<<deleteItem $scene.foodDelivery.foodItem>>
<<if $scene.correctFood>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_rival' 2>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You arrive back to <<=ps(setup.getNpcName('npc_rival', 'formal'))>> office and deliver <<his npc_rival>> meal.<br>
<br>
<<He npc_rival>> pops the clam-shell and
<<if $scene.correctFood>>
nods. "@@.npc_rival;Good, just as I ordered — you may return to your desk to take your meal and resume working.@@"
<<else>>
frowns. "@@.npc_rival;I do not believe this is what I ordered.@@" <<He npc_rival>> shakes <<his npc_rival>> head. "@@.npc_rival;Yet again you disappoint, another damning indictment of <<=setup.getNpcName('npc_manager', 'formal')>> and her lax supervision. Return to your desk to take your meal and resume working.@@"
<</if>>
<br><br>
[<<moveTo "event_stage_5_transition_sub_monday_6" "Back to your desk." 300>>]
</div>/*#
#desc: submissive stage 5 monday lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress -5>>
<<if $scene.correctFood>>
<<playerOrgasm>>
<<changeHorny 15>>
<<else>>
<<applyExperience 'bdsm' 15 'very' $SEEN_FRIEND>>
<</if>>
<<set $scene.applyDrugs = $fetish.drugs && !(setup.hasTmpEffect('sissypill_mk2', true) || setup.hasTmpEffect('sissypill_2_eternal') || setup.hasTmpEffect('sissypill_eternal'))>>
<<if $scene.applyDrugs>>
<<include "removePinkPill">>
<<setTmpEffect 'sissypill_mk2'>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You return to your desk to find <<=setup.getNpcName('npc_sissy_secretary', 'first')>> already enjoying her meal. Bound tight to her chair the large dildo in her mouth has a tube connected to the base through which a pinkish slurry is being pumped down her throat. From her expression she is quite enjoying whatever it is, sucking eagerly on the large phallus and grinding on its twin that you know she is sitting upon.<br>
<br>
With no alternative — and feeling quite hungry, yourself, you take your seat, the chair binding your tight and thrusting dildos into you once again before starting the pump of your food — a <<if $fetish.cum>>cum-flavoured<<else>>neutral-tasting<</if>> slurry that actually makes you feel a bit calm<<if $scene.correctFood>>, paired with pleasurable thrusting from below — buzzing that increases when you suck leading to you "enjoying" an efficient lunch of sucking and being fucked by your chair<<else>>... which is soon disrupted by punishing shocks, your sucking, moaning meal made torment as revenge for your delivery order screw-up<</if>>.<br>
<br>
<<if $fetish.drugs>>
<<if $scene.applyDrugs>>
As you drink, your eyes roll back as you feel the familiar pink fuzziness of <<=setup.getNpcName('npc_work_doctor', 'formal')>> drugs flow into you<<if $scene.effect>>, somehow overriding what had already been in your system<</if>>...<br>
<br>
<<if $scene.effect>>
<<printThought "A different formula? Something else to deal if I manage to get out of here...">><br>
<br>
<</if>>
<<else>>
You taste the familiar sweet pink flavour of <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> drugs... but they do not seem to have any additional effect that you can feel.<br>
<br>
<</if>>
<</if>>
You watch your coworker finish her meal and her wrist chains loosen enough for her to resume working, your own meal wrapping up a few minutes later with your feeder dildo retracting just far enough for you to lick clean as <<if $scene.correctFood>>the chair gifts you an orgasm<<else>>the punishing shocks finally stop<</if>>. Looks like you aren't getting a break and have no real choice but to resume working.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_admin_1">>
<<if false>>
<<moveTo "event_stage_5_transition_admin_1">>
<</if>>
<<set $scene.workTime = Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: submissive stage 5 evil admin arrives
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> are working away side-by-side when your restraints release and you get a message from <<=setup.getNpcName('npc_rival', 'formal')>>. "@@.npc_rival;Come into my office, the both of you.@@" <<He npc_rival>> commands.<br>
<br>
You glance at your compatriot for a hint of what might be required, but she is already rising off the chair-mounted dildo and hurrying towards the inner door.<br>
<br>
[<<moveTo "event_stage_5_transition_sub_monday_8" "Follow." 300 "<<set $scene.obey=true>><<set $scene.obeyFirst=true>>">>]<br>
[<<moveTo "event_stage_5_transition_sub_monday_8" "Remain at your seat." 300 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: submissive stage 5 monday after work
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 15 'normal' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<else>>
<<applyExperience 'bdsm' 15 'terrible' $ALONE>>
<<incrementEmotion 'anger' 'npc_rival' 1>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.obey>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_rival") setup.charImage("npc_admin","npc_admin_evil")>>
<<else>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_rival")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You enter the inner office to find <<=setup.getNpcName('npc_rival', 'formal')>> and <<=setup.getNpcName('npc_admin', 'first')>> sitting across from one another... the latter with <<his npc_admin>> pants unzipped and <<his npc_admin>> sizable, and rock-hard, <<getWordPenis "npc_admin">> on display.<br>
<br>
"@@.npc_rival;As you can see, our guest is in need of relief. Given the size of the matter, I thought the both of you could tackle it together while <<=setup.getNpcName('npc_admin', 'formal')>> and myself attend to company business.@@"<br>
<br>
[<<moveTo "event_stage_5_transition_sub_monday_9" "Deep throat that dick!" 1800 "<<set $scene.action='dick'>>">>]<br>
[<<moveTo "event_stage_5_transition_sub_monday_9" 'Submissively let <<=setup.getNpcName("npc_sissy_secretary","first")>> take the lead and focus your attention on <<=ps(setup.getNpcName("npc_admin", "first"))>> big, beautiful balls.' 1800 "<<set $scene.action='balls'>>">>]<br>
[<<moveTo "event_stage_5_transition_sub_monday_9" "No, you aren't going to do this!" 1800 "<<set $scene.action='no'>>">>]
<<else>>
You remain at your seat... only to moments later cry out as a massive jolt of painful electricity flows into you from the chair. You gasp as you try to recover as the intercom lights up with <<=setup.getNpcName('npc_rival', 'formal')>> sounding VERY annoyed.<br>
<br>
Fearful of another jolt you wince and rise to your feet and head into the inner office.<br>
<br>
[<<moveTo "event_stage_5_transition_sub_monday_8" "Continue." 60 "<<set $scene.obey=true>>">>]
<</if>>
</div>/*#
#desc: submissive stage 5 monday after work
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.action == 'no' && !$fetish.get_raped>>
<<applyExperience 'bdsm' 15 'terrible' $ALONE>>
<<applyExperience 'oral' 15 'terrible' $ALONE>>
<<applyExperience 'humiliation' 12 'normal' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_rival' 2>>
<<else>>
<<switch $scene.action>>
<<case 'dick'>>
<<applyExperience 'oral' $npc_rival.penis_size 'normal' $SEEN_STRANGER>>
<<applyExperience 'penis' 15 'normal' $SEEN_STRANGER>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<case 'balls'>>
<<applyExperience 'penis' 15 'very' $SEEN_STRANGER>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<case 'no'>>
<<applyExperience 'oral' $npc_rival.penis_size 'unbelievable' $SEEN_STRANGER>>
<<incrementEmotion 'anger' 'npc_rival' 2>>
<</switch>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.action == 'no' && !$fetish.get_raped>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_rival")>>
<<else>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_rival") setup.charImage("npc_admin","npc_admin_evil")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.action == 'no' && !$fetish.get_raped>>
As if there was a race for dick <<=setup.getNpcName('npc_sissy_secretary', 'first')>> hurries into position between <<=ps(setup.getNpcName('npc_admin', 'first'))>> legs, eagerly taking <<his npc_admin>> <<getWordPenis "npc_admin">> partway down her throat... only to be forced the rest of the way by <<his npc_admin>> firm hand on the back of her head.<br>
<br>
<<=ps(setup.getNpcName('npc_rival', 'formal'))>> gaze narrows at your failure to take your place. "@@.npc_rival;Return to your desk, Miss <<=$player.last_name>>@@" <<he npc_rival>> states with obvious annoyance.<br>
<br>
You hurry out of the office as directed and reflexively take your seat... only for your chair to instantly bind you in place, <<=ps(setup.getNpcName('npc_rival', 'formal'))>> artificial clones slamming into you with aggressive vigour, jolts of electricity punishing you from below while you are pounded from above.<br>
<br>
Whatever you hoped to avoid, the merciless mechanisms of the chair do far worse and you are are awash in drool and tears by the time the meeting finishes. The chair finally falls still with the dildos "merely" gagging and filling you from both ends. <<=setup.getNpcName('npc_admin', 'first')>> grins in amusement at your cruel fate, while <<=setup.getNpcName('npc_sissy_secretary', 'first')>> licks her lips with a smile before taking her seat and welcoming her gag back into her mouth.
<<else>>
<<switch $scene.action>>
<<case 'dick'>>
You hurry past <<=setup.getNpcName('npc_sissy_secretary', 'first')>> to take position between <<=ps(setup.getNpcName('npc_admin', 'first'))>> legs. Sure, <<he npc_admin>> may be evil... but
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
<<he npc_admin>> also has a glorious cock that has you almost climaxing just from feeling it slide down your throat.
<<else>>
<<he npc_admin>> also has a big, beautiful dick that you hunger to feel in your throat.
<</if>>
<<else>>
<<if setup.getTotalValue("penis") > 5>>
you'd rather dick than balls.
<<else>>
you'd rather dick than the humiliation of sucking <<his npc_admin>> balls.
<</if>>
<</if>>
A large, strong hand on the back of your head forces you a little deeper while <<=setup.getNpcName('npc_sissy_secretary', 'first')>> nudges her way into position beside you, her tongue eagerly reaching out to polish <<=ps(setup.getNpcName('npc_admin', 'first'))>> balls.
<<case 'balls'>>
You yield to <<=setup.getNpcName('npc_sissy_secretary', 'first')>>, allowing her to take the prize position deep-throating <<=ps(setup.getNpcName('npc_admin', 'first'))>> magnificent <<getWordPenis "npc_admin">> while you slide underneath to lick and suck on <<his npc_admin>> balls.<br>
<br>
<<His npc_admin>> scent is strong and <<if $npc_rival.fem>>intoxicating<<else>>oh-so-masculine<</if>>, almost making up for not being able to suck on the beautiful dick above.
<<case 'no'>>
You shake your head in refusal only for <<=setup.getNpcName('npc_admin', 'first')>> to rise from <<his npc_admin>> chair. <<He npc_admin>>'s always been fast for <<his npc_admin>> size but this... apparently the dark side came with a speed boost as you suddenly find yourself on your knees with a very unique gag shoved between your lips — one that has your mouth spread as with a ring gag, but also directly attached to <<=ps(setup.getNpcName('npc_admin', 'first'))>> balls, <<his npc_admin>> large <<if $npc_rival.fem>>musky<<else>>masculine<</if>> orbs filling your mouth while <<=setup.getNpcName('npc_sissy_secretary', 'first')>> slides into position above you to deep-throat.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
The double blowjob drags on as <<=setup.getNpcName('npc_admin', 'first')>> and <<=setup.getNpcName('npc_rival', 'formal')>> attend to their business; it seems that <<=setup.getNpcName('npc_rival', 'formal')>>, as the new Director of Human Resources, is performing a survey of <<his npc_rival>> immediate subordinates, starting with <<=setup.getNpcName('npc_admin', 'first')>> for their mutual loyalty to <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
In a voice the sends a shiver down your spine, <<=setup.getNpcName('npc_admin', 'first')>> assures <<=setup.getNpcName('npc_rival', 'formal')>> that <<he npc_admin>> will be on the lookout for any lingering allegiance to the "old" regime.<br>
<br>
The meeting at an end <<=setup.getNpcName('npc_admin', 'first')>> finally unleashes <<his npc_admin>> orgasm, <<his npc_admin>> long-massaged balls pumping forth their thick treasure in quantities sufficient to fill both your and <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> mouths before you are sent back to your desks, bound to your chairs to resume work.
<</if>>
<br><br>
<<set _endDay = setup.setNextDate($now, 0, 20, 0)>>
<<set _timeEndDay = setup.secondsToDate($now,_endDay)>>
[<<moveTo "event_stage_5_transition_sub_monday_10" "Resume working." _timeEndDay "<<set $scene.obey=true>>">>]
</div>/*#
#desc: submissive stage 5 monday after work
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
Your workday drags on far beyond your normal hours, combined with the abbreviated lunch you have worked over 12 hours by the time your chair finally releases you and you stagger free, stiff from the long-confined position, your jaw struggling to close after nearly half a day wrapped around the same over-sized cock.<br>
<br>
"@@.npc_rival;Miss <<=$player.last_name>>. Please report to my office for your end of day review.@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> flashes you a sympathetic thumbs up before departing.<br>
<br>
You take a deep breath and head for the inner office.<br>
<br>
[<<moveTo "event_stage_5_transition_sub_monday_11" "Continue." 300>>]
</div>/*#
#desc: submissive stage 5 monday assessment/chastity upgrade
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.fatiguemulti = 1>>
<<resetStressMulti>>
<<if $scene.pass.all && $scene.obeyFirst && $scene.correctFood && ['dick','balls'].includes($scene.action)>>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You enter the inner office to find <<=setup.getNpcName('npc_rival', 'formal')>> waiting. Despite <<his npc_rival>> best efforts you can't help but reflect on how poor <<his npc_rival>> imitation of <<=setup.getNpcName('npc_manager', 'formal')>> comes off compared to the original.<br>
<br>
<<printThought "I wonder where <<=setup.getNpcName('npc_manager', 'formal')>> is...">><br>
<br>
Your thoughts turn towards <<=setup.getNpcName('npc_psychiatrist', 'formal')>> and <<=setup.getNpcName('npc_admin', 'first')>> and you shudder in fear.<br>
<br>
<<if $scene.pass.all && $scene.obeyFirst && ['dick','balls'].includes($scene.action)>>
"@@.npc_rival;For whatever other failings she may have had, <<=setup.getNpcName('npc_manager', 'formal')>> seems to have trained you well enough in the basics of your duties and obedience. I can find no faults with your preparation or attention to guests today — keep that up through the week and you may earn my approval.@@"
<<else>>
"@@.npc_rival;I am quite disappointed in your actions today. <<if !$scene.pass.all>>From showing up to work un-prepared, <<else>>You showed up to work properly prepared, <</if>>you <<if $scene.obeyFirst>>failed to respond to summons<<else>>responded to summons<</if>>, <<if ['dick','balls'].includes($scene.action)>>and properly attended<<else>>but you failed to attend<</if>> to a guest in an appropriate manner. It would seem that <<=setup.getNpcName('npc_manager', 'formal')>> failed to train you in a multitude of ways... for your sake I hope you learn fast because I will be expecting far better tomorrow.@@"
<</if>>
<br><br>
<<if setup.getChastityLevel() != 5 && ($fetish.chastity_penis && $player.body_ref.penis || $fetish.chastity_vag && $player.body_ref.vagina)>>
<<=setup.getNpcName('npc_rival', 'formal')>> shakes <<his npc_rival>> head. "@@.npc_rival;I have reviewed your records and, to my shocked surprise, you have not yet been fitted with a 9001-series chastity device. I cannot fathom why <<=setup.getNpcName('npc_manager', 'formal')>> did not fit you wish such a device, but, that she did not, both explains your failures, and sums up her own.<<if $npc_manager.flags.trustplayerwithkey>> Perhaps even more stunning is that her records indicate that she trusted you to be in possession of your chastity key! Utterly unacceptable and you can feel safe that you will no longer need be concerned with such potential freedom.<</if>>@@"<br>
<br>
As <<he npc_rival>> speaks a guard steps into the room. "@@.npc_rival;The guard will take you to have this issue addressed, and then to your room for the night. Until we have confirmed your devotion to the company you will not be permitted to leave the building. Security, you understand.@@"<br>
<br>
The guard approaches and cuffs your wrists together before forcing a hollow gag between your lips. Bound and gagged you are led to the elevator, taken deep into one of the company sub-basements and then left alone in a small medical examination room.<br>
<br>
[<<moveTo "event_inspection_stage4_nochastity_2" "Continue." 300 "<<addItem 'hollow_gag'>><<wearItem 'hollow_gag' true>><<addItem 'wrist_cuffs_steel'>><<wearItem 'wrist_cuffs_steel' true>><<set $scene.fromStage5transition=true>>">>]
<<else>>
[<<moveTo "event_stage_5_transition_monday_night_1" "Continue." 300>>]
<</if>>
</div>/*#
#desc: submissive stage 5 tuesday npc_harrassment intro
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_harassment") setup.charImage("npc_harassment_assist")>>
<div id="invframe" class="scrolltext">
You work through the morning without once seeing your "boss" when a visitor arrives. <<=setup.getNpcName("npc_harassment","formal")>> walks through the door, acknowledging you with a slight nod while her assistant, <<=setup.getNpcName("npc_harassment_assist","first")>>, nervously waves at you and hurries to keep up.<br>
<br>
You wish you knew what was going on inside the inner office but you remain bound to your chair, only getting a slight hint at the end when the door opens and <<=setup.getNpcName("npc_rival","formal")>> sees the two of them off in person.<br>
<br>
"@@.npc_rival;Again — I want to grow your department by thirty percent by the end of the quarter. <<=ps(setup.getNpcName("npc_boss","formal"))>> growth plans mean that employee harassment is going to be very busy — you need to hire and train additional subordinates, in accordance with the new guidelines, so that you are ready to deal with the rush.@@"<br>
<br>
"@@.npc_harassment;Of course,@@" she replies through clenched teeth, with a somewhat stiff bow.<br>
<br>
<<printThought "Thirty percent... that seems like a lot?">><br>
<br>
Your guests leave and <<=setup.getNpcName("npc_rival","formal")>> returns to <<his npc_rival>> inner office without so much as a glance in your direction.<br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 12, 15)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_stage_5_transition_sub_tuesday_3" "Continue working." _timeToLunch>>]
</div>/*#
#desc: submissive stage 5 tuesday npc_sissy_secretary misbehaves
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You remain bound through lunch as <<=setup.getNpcName("npc_sissy_secretary","first")>> is summoned to fetch your boss' meal.<br>
<br>
Your "meal" starts pumping out of your gag as soon as she leaves, but she returns in but a few minutes, delivering <<=ps(setup.getNpcName("npc_rival","formal"))>> lunch and then returning to her seat.<br>
<br>
Rather than strapping herself in immediately, she adjusts something so that the seat-mounted clone of <<=setup.getNpcName("npc_boss","formal")>> dildo extends. Biting her lip in anticipation she slides the large plug out of her rear to leave herself gaping wide thanks to the locked-on <<=setup.getItemName('sissyomatic')>>. She straddles the chair-mounted dildo and squats down onto it, moaning as she bounces up and down, grinding and riding until, with a slight shudder<<if $fetish.cum>>, she leaks out of her cage<<else>>she <<if $fetish.sissy>>sissygasms<<else>>analgasms<</if>><</if>>.<br>
<br>
Catching her <<if $fetish.cum>>drippings in one hand she finishes licking her fingers clean when<<else>>breath<</if>> she seems to remember your presence, blushing slightly. She winks at you. "@@.npc_sissy_secretary;Our little secret, right?@@"<br>
<br>
Still being force-fed lunch through your penis gag you can't exactly respond, but she smiles, taking her seat normally and sighing as the twin oversized clones of her boss fill her and she begins enjoying the rest of her lunch.<br>
<br>
You finish sucking down the last of your meal and turn back to your machine.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_sub_tuesday_4">>
<<if false>>
<<moveTo "event_stage_5_transition_sub_tuesday_4">>
<</if>>
<<set $scene.workTime = Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: submissive stage 5 tuesday npc_discipline intro
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _hour = setup.setNextDate($now, 0, $now.getUTCHours()+1, 0)>>
<<set _timeToHour = setup.secondsToDate($now,_hour)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _timeToHour)>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
Partway through the afternoon, and precisely on the hour, the next of the "sub-manager checkin's" occurs — <<=setup.getNpcName('npc_discipline', 'formal')>> arriving alone... in what you can't help but think of as full "battle gear" — tight leather, intimidating boots, a flogger hanging from her belt... and the large strap-on jutting out from her hips.<br>
<br>
Her expression is firm and emotionless as she walks past your desk and into the inner office.<br>
<br>
Less than a minute later and your restraints release as <<=setup.getNpcName('npc_rival', 'formal')>> commands you to "@@.npc_rival;Attend us, Miss <<=$player.last_name>>.@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> remains bound to her chair, so it would seem that this task is yours alone. You gulp nervously, mindful of <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> title as HR Manager of Employee Discipline...<br>
<br>
[<<moveTo "event_stage_5_transition_sub_tuesday_5" "Enter the inner office." 300>>]
</div>/*#
#desc: submissive stage 5 tuesday end of day - punishment choice
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
You walk into the inner office to find <<=setup.getNpcName('npc_discipline', 'formal')>> standing with flogger unfurled.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> grins in welcome. "@@.npc_rival;Here we go — I thought you normally brought your own test subject, but mine will do. Show me how this new flogger of yours works.@@"<br>
<br>
"@@.npc_discipline;My team has been quite busy, I thought it more efficient to come alone. Miss <<=$player.last_name>> — bare your back and lean over the desk.@@"<br>
<br>
You gulp as <<=setup.getNpcName('npc_discipline', 'formal')>> squeezes the flogger and its shiny tails begin coursing with electricity...<br>
<br>
[<<moveTo "event_stage_5_transition_sub_tuesday_6" "Take off your top and submit to a flogging." 1800 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_stage_5_transition_sub_tuesday_6" "You haven't done anything wrong to deserve a flogging!" 60 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: submissive stage 5 tuesday end of day - punishment result
#status: RELEASED 0.9.0.0
#ignore_spell: g
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<applyExperience 'submission' 15 'terrible' $SEEN_STRANGER>>
<<else>>
<<incrementEmotion 'anger' 'npc_rival' 1>>
<</if>>
<<include "calcTopId">>
<<if $scene.topId != "">>
<<removeItem $scene.topId true>>
<</if>>
<<set $scene.bra = setup.getItemFromType("bra")>>
<<if $scene.bra != "">>
<<removeItem $scene.bra true>>
<</if>>
<<if setup.checkItemTypeWorn("jacket")>>
<<set $scene.jacket = setup.getItemFromType("jacket")>>
<<removeItem $scene.jacket true>>
<</if>>
<<applyExperience 'bdsm' 18 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_discipline","npc_discipline_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You obediently strip and get into position, the crackling of the whip and the slight smell of ozone having you nervous for what you are about to endure.
<<else>>
You start to object that you haven't done anything deserving of punishment. <<=ps(setup.getNpcName('npc_rival', 'formal'))>> gaze narrows. "@@.npc_rival;You just did. Now do as I command, or I will be turning you over to <<=setup.getNpcName('npc_discipline', 'formal')>> for the afternoon — and then having you work overnight to make up for time missed.@@"<br>
<br>
You gulp, <<if setup.hasThreshold('bdsm', 'bdsm_other', 'discipline_volunteer')>>for a brief moment <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> expression flickers with concern, but then she steels herself<<else>><<=setup.getNpcName('npc_discipline', 'formal')>> looks at you steely-eyed<</if>> as you remove your top and get into position.
<</if>>
<br><br>
There is a sharp crack as <<=setup.getNpcName('npc_discipline', 'formal')>> snaps the flogger, and then the first blow lands across your back. Impact and electricity combine like a helix of pain.
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
Delicious, delicious pain. You moan.
<<else>>
Sharp, intense pain that makes you gasp.
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
Intense pain that makes you gasp.
<<else>>
Agonising pain that makes you cry out.
<</if>>
<</if>>
<br><br>
The next strike comes before you can react. Distantly, you hear <<=setup.getNpcName('npc_discipline', 'formal')>> begin to explain things. "@@.npc_discipline;One must use a different sort of technique here — as a harder, snapping blow will result in less of the electrified pain. In fact, a slow, brushing strike is the most punitive.@@"<br>
<br>
She demonstrates with a light sweep that sends fire down your back.<br>
<br>
"@@.npc_rival;Interesting, perhaps this could be compensated for? Increase the voltage with a harder strike. Requiring such focus when meteing out a sorely earned punishment seems counterintuitive and frustrating. I do not want a subordinate to get off lightly because they have provoked me to the point of distraction.@@"<br>
<br>
You hear barely simmering disgust in <<=ps(setup.getNpcName('npc_discipline', 'formal'))>> voice as she replies. "@@.npc_discipline;Possible. But ill-advised. As dominant, it is your responsibility to be in control, in all ways, and at all times. Not just of your charge, but of yourself, as well. This device is an advanced tool, and if one lacks the ability to use it properly, they should stick to more fool-proof measures of discipline.@@"<br>
<br>
"@@.npc_rival;Of course, of course,@@" <<=setup.getNpcName('npc_rival', 'formal')>> replies, back-pedaling. "@@.npc_rival;I was not speaking of myself, obviously, but... others. We must determine the best measures to disseminate through the company to keep the growing proportion of enslaved employees in line.@@"<br>
<br>
"@@.npc_discipline;I thought that would go without saying, I was certainly not implying anything to the contrary. I would never impugn your reputation.@@" <<=setup.getNpcName('npc_discipline', 'formal')>> replies, covering her lie by giving you another pair of sharp — and thus less painful, blows. "@@.npc_discipline;Do you wish to test the device yourself?@@" She asks, offering <<him npc_rival>> the flogger.<br>
<br>
"@@.npc_rival;Of course, of course,@@" <<he npc_rival>> replies, getting a quick lecture on how to squeeze it to activate the shocks.<br>
<br>
You bite your lip. <<=setup.getNpcName('npc_rival', 'formal')>> proves to be significantly less skilled with the flogger, <<his npc_rival>> blows landing imprecisely, and erratically as <<his npc_rival>> attempts to go for "soft" harshness failing to land clean, while <<his npc_rival>> sharper hits are so snappy as to cause barely any electrified pain.<br>
<br>
Even more startling is that you hear <<him npc_rival>> breathing heavy after just a few minutes.<br>
<br>
"@@.npc_rival;Bit heavy, I suppose to handle all the extra electronics... an interesting tool, but too complicated for the average user. I think we shall leave it to your experts, for now.@@"<br>
<br>
"@@.npc_discipline;As you say,@@" <<=setup.getNpcName('npc_discipline', 'formal')>> replies, taking the flogger back and turning it off as you catch your breath.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> nods as you gather your things. "@@.npc_rival;You may return to your desk — I imagine that punishment has you quite eager to feel me inside of you, but you will need to make do with my silicone doubles as I am far too busy this afternoon to spare time to fuck you myself.@@"<br>
<br>
[<<moveTo "event_stage_5_transition_sub_tuesday_7" "Dress and leave." 300>>]
</div>/*#
#desc: submissive stage 5 tuesday end of day - snitch opportunity
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.bra>>
<<wearItem $scene.bra true>>
<</if>>
<<if $scene.topId>>
<<wearItem $scene.topId true>>
<</if>>
<<if $scene.jacket>>
<<wearItem $scene.jacket true>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You dress and return to your desk, wincing slightly as the fabric brushes your red back, and again when the gag and restraints pull you tightly against the back of the chair.<br>
<br>
Recalling the long hours <<=setup.getNpcName('npc_rival', 'formal')>> requires you settle in to work.<br>
<br>
<<set _endDay = setup.setNextDate($now, 0, 20, 0)>>
<<set _timeEndDay = setup.secondsToDate($now,_endDay)>>
[<<moveTo "event_stage_5_transition_sub_tuesday_8" "Resume working." _timeEndDay>>]
</div>/*#
#desc: submissive stage 5 tuesday end of day - snitch results
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You reach the end of the day, your chair releasing you from its embrace as <<=setup.getNpcName('npc_rival', 'formal')>> summons you into <<his npc_rival>> inner office.<br>
<br>
<<if $scene.pass.all && $scene.obey>>
"@@.npc_rival;You performed as expected today, dressed for work, and obedient throughout. Now, as to your functional performance...@@" <<He npc_rival>> turns to <<his npc_rival>> computer.
<<include "transitionSubWorkSummary">><br>
<br>
<<He npc_rival>> looks at you with a slight... if also slightly cruel, smile. "@@.npc_rival;Is there anything you wish to say to me before you return to your room?@@"
<<else>>
"@@.npc_rival;Let us start with your objective metrics, how much work you managed to get done.@@" <<He npc_rival>> turns to <<his npc_rival>> computer.
<<include "transitionSubWorkSummary">><br>
<br>
<<He npc_rival>> frowns "@@.npc_rival;As for the other half of your job... quite disappointing. <<if $scene.pass.all>>You came to work properly dressed for your duties, but then you were disobedient in the presence of another manager<<elseif $scene.obey>>You were obedient in my presence, but you failed to arrive for your shift properly attired<<else>>Not only did you fail to arrive at work properly attired, you were also disobedient in the presence of another manager<</if>>. Do you have anything to say for yourself before we proceed to punishment?@@"
<</if>>
<br><br>
[<<moveTo "event_stage_5_transition_sub_tuesday_9" 'Snitch on <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> lunch-time activity.' 300 "<<set $scene.snitch=true>>">>]<br>
[<<moveTo "event_stage_5_transition_sub_tuesday_10" 'Obediently thank <<him npc_rival>> for <<his npc_rival>> time and attention.' 300 "<<set $scene.snitch=false>>">>]
</div>/*#
#desc: submissive stage 5 tuesday end of day - snitch results
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_rival' 2>>
<<applyExperience 'submission' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_rival', 'formal')>> about your fellow <<if $fetish.sissy>>SISSI <</if>>Secretary's lunch-time activities. You make certain to paint a vivid picture as you go into detail about how she enthusiastically analgasmed with <<=ps(setup.getNpcName('npc_boss', 'formal'))>> silicone clone in her ass.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> bristles, immediately summoning <<=setup.getNpcName('npc_sissy_secretary', 'first')>> back in and confronting her with her actions.<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> looks at you in betrayal and then confesses, but <<=setup.getNpcName('npc_rival', 'formal')>> cuts her off before she can make much of an apology.<br>
<br>
"@@.npc_rival;Silence! There is no excusing your actions — cumming without permission... and all while figuratively going over my head! No, there is only one proper response to such misbehaviour, and that is harsh reminder of just whose cock you should eternally yearn to have inside of you.@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> makes no effort at resistance as she is stripped and bound over a low table. On her back, her head is titled as a fucking machine is lined up with her throat, its twin on the other side; each equipped with clones of <<=setup.getNpcName('npc_rival', 'formal')>> they are soon jack-hammering into her from either direction; pounding her hard and deep with machine brutality.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> observes for a few moments and then turns the speed up even higher before nodding in satisfaction and returning <<his npc_rival>> attention to you.<br>
<br>
"@@.npc_rival;Let this be a lesson to you in regards to disobedience.@@"<br>
<br>
<<if setup.getTotalValue("bimbofication") > 15 && setup.getTotalValue("penis") > 15 && setup.getTotalValue("oral") > 15 && setup.getTotalValue("anal") > 15 >>
You nod... even though all your depraved mind can feel looking at your coworker is jealousy.
<<elseif setup.getTotalValue("bimbofication") > 10 && setup.getTotalValue("penis") > 10 && setup.getTotalValue("oral") > 10 && setup.getTotalValue("anal") > 10>>
You nod... hiding the fact that you feel a twinge of jealousy at the sight of your coworker.
<<else>>
You nod, feeling a mix of pity and guilt as you look down at your coworker.
<</if>>
<br><br>
[<<moveTo "event_stage_5_transition_sub_tuesday_10" 'Continue.' 300>>]
</div>/*#
#desc: submissive stage 5 tuesday end of day - snitch results
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.pass.all && $scene.obey && $scene.snitch>>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<if !$scene.pass.all || !$scene.obey>>
<<if $scene.snitch>>
<<=setup.getNpcName('npc_rival', 'formal')>> gaze lingers on the dildos pistoning in and out of your coworker before looking at you with a grin. "@@.npc_rival;Thank you for reporting on her failure — you submissives are weak, and I cannot be everywhere, so it is in your best interest to keep me informed so that I can address any lapses. Speaking of lapses...@@"
<<else>>
You curtsy and obediently thank <<=setup.getNpcName('npc_rival', 'formal')>> for <<his npc_rival>> time.<br>
<br>
"@@.npc_rival;Good, but there is still the matter of your failures earlier in the day.@@"
<</if>>
<br><br>
You gulp nervously.<br>
<br>
<<if !$scene.pass.all>>
"@@.npc_rival;Your failure to arrive to work properly attired... well, I believe the best solution for that is to show you that, really, your requirements had been simple, to make up for your failure I will be adding a corset — fully laced, of course, to your requirements starting <<if $now.getUTCDay()==5>>Monday<<else>>tomorrow<</if>> morning.@@"<br>
<br>
<</if>>
<<if $scene.obey>>
<<=setup.getNpcName('npc_rival', 'formal')>> dismisses you and a guard escorts you back to your cell. The long day of work has you feeling tired and you slip into your pod.<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_stage_5_transition_morning_1" 'Sleep.' _timeToMorning "<<removeAllClothing>>">>]
<<else>>
<<He npc_rival>> frowns. "@@.npc_rival;Your disobedience was very disappointing — and in front of another manager...@@" <<He npc_rival>> shakes <<his npc_rival>> head. "@@.npc_rival;You will be subjected to refresher treatment overnight. For your sake, let us hope it steers you back towards obedience for tomorrow.@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> dismisses you and a guard escorts you back to your cell. Rather than leave you alone the guard helps you into your sleeping pod, making sure you are bound in place before departing.<br>
<br>
[<<moveTo "event_stage_5_transition_sub_tuesday_11" 'Sleep.' 3600>>]
<</if>>
<<else>>
You curtsy and obediently thank <<=setup.getNpcName('npc_rival', 'formal')>> for <<his npc_rival>> time and <<he npc_rival>> dismisses you, a guard escorting you back to your cell.<br>
<br>
Back in the drab cell; and with nothing else to do, you slide into the pod and soon fall asleep.<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_stage_5_transition_morning_1" 'Sleep.' _timeToMorning "<<removeAllClothing>>">>]
<</if>>
</div>/*#
#desc: morning before stage 5 night punishment
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.sissy>>
<<createAnimatedBGR "./video/hypnosis_01.mp4">>
<<else>>
<<createAnimatedBGR "./video/hypnosis_01_nosissy.mp4">>
<</if>>
<div id="invframe" class="scrolltext">
You are strapped down in your pod before the lid closes and things go dark... only to be replaced by a flashing, hypnotic video alternating words with blink-and-you'll miss it clips...<br>
<br>
<<shinyText "Brainwashing is good for me. My mind is happy, blank and empty." 0.0>>
<<shinyText "Good <<if $fetish.sissy>>sissies<<else>>girls<</if>> practice every day." 0.5>>
<<shinyText "Bimbos are my role models." 1.0>>
<<shinyText "I act like a bimbo." 1.5>>
<<shinyText "Practice until it becomes natural." 2.0>>
<<shinyText "Brainwashing is good for me. My mind is happy, blank and empty." 2.5>>
<br><br>
A soft, feminine voice repeats the text, the word repeating over and over and over, lulling you steadily to sleep...<br>
<br>
You dream of submission, replaying the previous day over and over, but doing it RIGHT, like a good <<if $fetish.sissy>>sissy<<else>>girl<</if>>...<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_stage_5_transition_morning_1" 'Sleep on.' _timeToMorning "<<removeAllClothing>>">>]
</div>/*#
#desc: submissive stage 5 wednesday npc_development
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_development") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
As you work through the morning the next HR sub-manager arrives; <<=setup.getNpcName('npc_development', 'formal')>> pausing at your desk to ask how "@@.npc_development;Two of my favourite students are doing?@@"<br>
<br>
Gagged and restrained, your replies are muffled but <<=setup.getNpcName('npc_development', 'formal')>> smiles in response before taking a deep breath and heading into the inner office for her meeting.<br>
<br>
Surprisingly short she emerges but a few minutes later looking quite annoyed, forcing a smile for you and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> before all but storming out of the office.<br>
<br>
<<printThought "Guess I shouldn't be surprised that <<=setup.getNpcName('npc_rival', 'formal')>> would conflict with her more friendly development style...">><br>
<br>
<<set _lunch = setup.setNextDate($now, 0, 12, 15)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_stage_5_transition_sub_wednesday_5" "Continue working." _timeToLunch>>]
</div>/*#
#desc: submissive stage 5 wednesday lunch fetch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_rival', 'formal')>> emerges to place <<his npc_rival>> lunch order.
<<if $scene.snitch>>
"@@.npc_rival;Given the incident yesterday I believe it would be best if Miss <<=$player.last_name>> attended to my order. I want <<getFood>>.. Get to it.@@"
<<else>>
"@@.npc_rival;Miss <<=$player.last_name>> — it is your turn, again, I want <<getFood>>.. Get to it.@@"
<</if>>
<br><br>
<<printThought "Is <<he npc_rival>> seriously so boring as to make the same lunch order every day?">><br>
<br>
<<He npc_rival>> disappears back into <<his npc_rival>> inner office as <<=ps(setup.getNpcName('npc_sissy_secretary', 'first'))>> oral dildo begins pumping her full of lunch.<br>
<br>
<<set $scene.postLunchScene = "event_stage_5_transition_sub_wednesday_6">>
<<if false>>
<<moveTo "event_stage_5_transition_sub_wednesday_6">>
<</if>>
[<<moveTo "room_stage5_transition_canteen" "Head down to the canteen." 600>>]
</div>/*#
#desc: submissive stage 5 wednesday lunch return
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.correctFood = setup.getFirstItemTypeCarried("lunch") == "food_steak">>
<<set $scene.foodDelivery.foodItem = setup.getFirstItemTypeCarried("lunch")>>
<<deleteItem $scene.foodDelivery.foodItem>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You return with <<=ps(setup.getNpcName('npc_rival', 'formal'))>> lunch. <<He npc_rival>> looks somewhat distracted,
<<if $scene.correctFood>>
putting the food to one side.
<<else>>
somehow not even noticing that you screwed up <<his npc_rival>> order.
<</if>>
<<He npc_rival>> directs you to bend over the desk. "@@.npc_rival;Stay, I've had a hard morning and need some relief, so spread those <<if $fetish.sissy>>sissy <</if>>cheeks and let's see how you serve.@@"<br>
<br>
[<<moveTo "event_stage_5_transition_sub_wednesday_7" "Bend over obediently." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_stage_5_transition_sub_wednesday_7" 'Suggest that <<=setup.getNpcName("npc_sissy_secretary","first")>> would be better suited to serve <<him npc_rival>> in this manner.' 300 "<<set $scene.obey=false>>">>]
</div>/*#
#desc: submissive stage 5 wednesday lunch fuck
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'submission' 15 'normal' $SEEN_STRANGER>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<applyExperience 'bdsm' 6 'normal' $SEEN_STRANGER>>
<</if>>
<<if $scene.obey || $fetish.get_raped >>
<<applyExperience 'anal' $npc_rival.penis_size 'normal' $SEEN_STRANGER>>
<</if>>
<<if $fetish.get_raped>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_rival.penis_size 'little' $SEEN_STRANGER>>
<<applyExperience 'cum' 12 'little' $SEEN_STRANGER>>
<<applyExperience 'humiliation' 12 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.obey || $fetish.get_raped>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival")>>
<<else>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You dutifully bend over for <<=setup.getNpcName('npc_rival', 'formal')>> and <<he npc_rival>> is soon plowing you over <<his npc_rival>> desk. Like a good <<if $fetish.sissy>>SISSI <</if>>slut you moan in approval, your words of "@@.pc;Harder<<if $fetish.daddy>> <<Daddy npc_rival>><</if>>,@@" and "@@.pc;You're so big!@@" Egging <<him npc_rival>> on so much has <<him npc_rival>> cumming in less than a minute... or maybe <<he npc_rival>>'s just a hair trigger in general.<br>
<br>
<<He npc_rival>> is clearly unconcerned with your own satisfaction as <<he npc_rival>> steps away a few moments after <<he npc_rival>> has finished; cum trickling down your leg as <<he npc_rival>> gives you a slap on the ass to send you back to your desk.<br>
<br>
You are left unsatisfied by <<his npc_rival>> hit it and quit it efforts and are thus quite grateful for <<his npc_rival>> — considerably larger, clones to slide into you as you strap into your chair for the afternoon's work.
<<elseif $fetish.get_raped>>
You tell <<=setup.getNpcName('npc_rival', 'formal')>> that you will fetch <<=setup.getNpcName("npc_sissy_secretary","first")>> for <<him npc_rival>>... only for <<him npc_rival>> to be upon you as you turn to the door.<br>
<br>
Pinning you against the wall <<his npc_rival>> cock slams into your plugged and spread hole. You gasp in surprise as <<he npc_rival>> grunts into your ear... only to cry out in pain as you receive a jolt of electricity.<br>
<br>
"@@.npc_rival;Mmmm, I love how you feel when your muscles clench up after a shock, squeeze my cock you <<if $fetish.sissy>>SISSI <</if>>slut. This is what you exist for, punishment and pounding.@@"<br>
<br>
You groan, pressed even harder against the wall as <<he npc_rival>> rapidly takes <<his npc_rival>> pleasure with your ass.<br>
<br>
To your fortune, <<he npc_rival>> doesn't last long, and it is but a minute or so before <<he npc_rival>> steps away<<if $fetish.cum>>, cum leaking down your thigh<</if>> as you slump to the ground without <<him npc_rival>> holding you up.<br>
<br>
"@@.npc_rival;Get back to work, <<if $fetish.sissy>>SISSI<<else>>slut<</if>>.@@" <<He npc_rival>> growls<<if $fetish.cum>>, taking hold of your hair and forcing you to suck <<him npc_rival>> clean<</if>>. "@@.npc_rival;And next time, when I say I want to fuck you — bend over for it and consider it the privilege it is.@@"<br>
<br>
You reflexively mumble something approaching "@@.pc;Yes, <<sir npc_rival>>,@@" which seems to satisfy <<him npc_rival>> enough to leave you alone and return to <<his npc_rival>> desk.<br>
<br>
Catching your breath, and trying to forget about the taste of <<him npc_rival>> on your lips, you leave <<his npc_rival>> inner office and head back to your chair, for a moment forgetting about your chair's extra "attachments" until you find the larger version of what was just taking you in both ends gagging and TRULY filling your ass.
<<else>>
Your curtsy politely and reply that you'll fetch <<=setup.getNpcName("npc_sissy_secretary","first")>> for <<him npc_rival>>. Somehow your confidence takes <<him npc_rival>> off-guard and you leave <<his npc_rival>> inner office unaccosted.<br>
<br>
Already freeing herself from her chair <<=setup.getNpcName("npc_sissy_secretary","first")>> looks at you in slight puzzlement before hurrying in to the inner office.<br>
<br>
Less than ten minutes later she walks back out, walking a little unsteady before resuming her seat and lovingly accepting the penis gag down her throat.
<</if>>
<br><br>
<<set $scene.followUp = "event_stage_5_transition_sub_wednesday_8">>
<<if false>>
<<moveTo "event_stage_5_transition_sub_wednesday_8">>
<</if>>
<<set $scene.workTime = Math.random()*7200>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: submissive stage 5 wednesday afternoon work
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
Partway through the afternoon you get another visit; not from one of the Human Resources managers, but from <<=setup.getNpcName('npc_nintendolls', 'formal')>> — the President of Nintendolls.<br>
<br>
<<if $npc_nintendolls.stage >= 4>>
Passing your desk <<he npc_nintendolls>> leers, and it is only a minute or so later when <<=setup.getNpcName('npc_rival', 'formal')>> is summoning you into <<his npc_rival>> inner office.<br>
<br>
[<<moveTo "event_stage_5_transition_sub_wednesday_9" "Attend them." 300>>]
<<else>>
Their meeting draws out for some time, and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is summoned to "attend" them but, eventually, <<=setup.getNpcName('npc_nintendolls', 'formal')>> departs leaving you to work the remainder of the afternoon in gagged, bound and filled silence.<br>
<br>
<<set _endDay = setup.setNextDate($now, 0, 20, 0)>>
<<set _timeEndDay = setup.secondsToDate($now,_endDay)>>
[<<moveTo "event_stage_5_transition_sub_wednesday_11" "Keep working." _timeEndDay>>]
<</if>>
</div>/*#
#desc: submissive stage 5 wednesday npc_nintendolls
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
You enter the inner office to find <<=setup.getNpcName('npc_nintendolls', 'formal')>> with <<his npc_nintendolls>> pants already unzipped.<br>
<br>
"@@.npc_rival;So I was just informing <<=setup.getNpcName('npc_nintendolls', 'formal')>> that, with the buy-out of <<his npc_nintendolls>> company underway, we are prioritising continuity.@@" <<=setup.getNpcName('npc_rival', 'formal')>> inclines <<his npc_rival>> head towards <<his npc_rival>> guest and you know just what sort of "continuity" they're talking about.<br>
<br>
[<<moveTo "event_stage_5_transition_sub_wednesday_10" 'Kneel down and suck <<=setup.getNpcName("npc_nintendolls", "formal")>> off.' 1800 "<<set $scene.action='oral'>>">>]<br>
[<<moveTo "event_stage_5_transition_sub_wednesday_10" "Bend over and offer your ass." 1800 "<<set $scene.action='anal'>>">>]<br>
[<<moveTo "event_stage_5_transition_sub_wednesday_10" 'You are not going to service <<=setup.getNpcName("npc_nintendolls", "formal")>> today!' 1800 "<<set $scene.action='no'>>">>]
</div>/*#
#desc: submissive stage 5 wednesday npc_nintendolls
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'oral'>>
<<applyExperience 'submission' 14 'normal' $SEEN_FRIEND>>
<<applyExperience 'cum' 7 'normal' $SEEN_FRIEND>>
<<applyExperience 'oral' $npc_nintendolls.penis_size 'little' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<case 'anal'>>
<<applyExperience 'submission' 14 'normal' $SEEN_FRIEND>>
<<applyExperience 'anal' $npc_nintendolls.penis_size 'little' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_rival' 1>>
<<case 'no'>>
<<applyExperience 'bdsm' 14 'very' $SEEN_FRIEND>>
<<incrementEmotion 'anger' 'npc_rival' 1>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'oral'>>
You drop to your knees to suck off <<=setup.getNpcName('npc_nintendolls', 'formal')>> and <<he npc_nintendolls>> grins. As always <<he npc_nintendolls>> takes amusement in you "making up" for your long-ago failure at data management, taunting you occasionally as <<he npc_nintendolls>> has <<his npc_nintendolls>> meeting — <<=setup.getNpcName('npc_rival', 'formal')>> going out of <<his npc_rival>> way to assuage concerns, insisting that the management shake-up in the Human Resources department will not disrupt the coming merger.<br>
<br>
Showing more control than <<he npc_nintendolls>> has in the past <<=setup.getNpcName('npc_nintendolls', 'formal')>> does not cum until just before the meeting is over, shoving <<his npc_nintendolls>> <<getWordPenis "npc_nintendolls">> all the way down your throat to <<if $fetish.cum>>pump <<his npc_nintendolls>> <<getWordCum>> directly into your stomach<<else>>enjoy <<his npc_nintendolls>> climactic pleasure<</if>>.<br>
<br>
You dutifully thank both<<if $npc_nintendolls.fem == $npc_rival.fem>> <<men npc_rival>><</if>> that you could be of service before returning to your desk.
<<case 'anal'>>
You bend over <<=ps(setup.getNpcName('npc_rival', 'formal'))>> desk and <<=setup.getNpcName('npc_nintendolls', 'formal')>> fucks your ass for the full duration of <<his npc_nintendolls>> meeting.<br>
<br>
As always, <<=setup.getNpcName('npc_nintendolls', 'formal')>> takes amusement in you "making up" for your long-ago failure at data management, taunting you occasionally as <<he npc_nintendolls>> has <<his npc_nintendolls>> meeting — <<=setup.getNpcName('npc_rival', 'formal')>> going out of <<his npc_rival>> way to assuage concerns as <<he npc_rival>> insists that the management shake-up in the Human Resources department will not disrupt the coming merger.<br>
<br>
Showing more control than <<he npc_nintendolls>> has in the past <<he npc_nintendolls>> does not cum until just before the meeting is over, pumping a thick load of <<getWordCum>> deep in your ass before stepping away.<br>
<br>
You dutifully thank both<<if $npc_nintendolls.fem == $npc_rival.fem>> <<men npc_rival>><</if>> that you could be of service before returning to your desk.
<<case 'no'>>
You try to refuse the command to service <<=setup.getNpcName('npc_nintendolls', 'formal')>>. While you do "successfully" avoid getting fucked by <<him npc_nintendolls>>... it comes at a cost as, rather than having a cock up your ass, <<=setup.getNpcName('npc_rival', 'formal')>> hands <<=setup.getNpcName('npc_nintendolls', 'formal')>> a cattle prod that is used to shock your rear harshly.<br>
<br>
You're in too much pain to catch much of what happens during the meeting... though it sounds like the long-rumoured buyout of Nintendolls by Social Interaction Service Syndicate Inc. is finally happening.<br>
<br>
Sore and submissive you return to your desk.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<set _endDay = setup.setNextDate($now, 0, 20, 0)>>
<<set _timeEndDay = setup.secondsToDate($now,_endDay)>>
[<<moveTo "event_stage_5_transition_sub_wednesday_11" "Resume working." _timeEndDay>>]
</div>/*#
#desc: submissive stage 5 wednesday end of day
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.pass.all || !$scene.obey>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<if $scene.pass.all && $scene.obey && $scene.correctFood>>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
<<if $scene.pass.all && $scene.obey>>
"@@.npc_rival;You performed as expected today, dressed for work, and obedient throughout. Now, as to your functional performance...@@" <<He npc_rival>> turns to <<his npc_rival>> computer.
<<include "transitionSubWorkSummary">><br>
<br>
You wait to see if there is anything else, but that appears to be all, a guard appearing to, yet again, take you back to your cell.
<<else>>
"@@.npc_rival;Let us start with your objective metrics, how much work you managed to get done.@@" <<He npc_rival>> turns to <<his npc_rival>> computer.
<<include "transitionSubWorkSummary">><br>
<br>
That out of the way <<he npc_rival>> frowns.
<<if !$scene.pass.all && !$scene.obey>>
"@@.npc_rival;Unfortunately the rest of your performance today was... quite lacking. Not only did you fail to come to work properly attired... you also showed disobedience before an important guest!@@"
<<elseif !$scene.pass.all>>
"@@.npc_rival;It is unfortunate that you failed to properly attire yourself for your job — you really must pay more attention to such things. I believe your old manager had something she would say about that — concerning <<if $fetish.sissy>>SISSI <</if>>Secretary being a position of representation?@@"<br>
<br>
You resist the urge to correct <<his npc_rival>> mangling of <<=ps(setup.getNpcName("npc_manager","formal"))>> words.
<<elseif !$scene.obey>>
"@@.npc_rival;Unfortunately mere work performance can hardly make up for disobedience before an important guest!@@"
<<else>>
ERROR: unexpected state!
<</if>>
<br><br>
Before you can respond you are driven to your knees by your <<=setup.getItemTypeName('cage')>> exploding with electrified pain. The agony stretches out for what feels like an eternity, but is likely not even a minute.<br>
<br>
"@@.npc_rival;You may go,@@" <<he npc_rival>> states sharply as a guard appears and helps you to your feet.<br>
<br>
You wince and half-hobble back to your cell, all the while reflecting on how... uncreative <<=setup.getNpcName('npc_rival', 'formal')>> seems to be with <<his npc_rival>> punishments.
<</if>>
<br><br>
<<set _morning = setup.setNextDate($now, 1, 6, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "room_stage_5_transition_morning_1" 'Lay down in your pod to sleep.' _timeToMorning>>]
</div>/*#
#desc: submissive stage 5 thursday morning work
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
Partway through the morning <<=setup.getNpcName('npc_rival', 'formal')>> returns from a meeting and dumps a laptop on your desk before releasing you from your chair.<br>
<br>
"@@.npc_rival;My presentation laptop was showing issues. Take it to the VIP IT department to be serviced — they are on the 101st floor — follow the signs.@@"<br>
<br>
[<<moveTo "event_evil_technician_intro_1" 'Take the laptop down to IT.' 600>>]
</div>/*#
#desc: submissive stage 5 return from meeting technician
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You're shaken by your experience as you ride the elevator back up — though at least you technically fulfilled your "mission" since you dropped the laptop as you fled.<br>
<br>
<<printThought "I'm just going to pretend that's good enough...">> You think to yourself as you retreat to the comparative safety of your chair bondage.<br>
<br>
You take a deep breath, hoping to distract yourself with work.<br>
<br>
<<set $scene.followUp = "event_stage_5_transition_sub_thursday_3">>
<<if false>>
<<moveTo "event_stage_5_transition_sub_thursday_3">>
<</if>>
<<set _lunch = setup.setNextDate($now, 0, 12, 15)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
<<set $scene.workTime = _timeToLunch>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: submissive stage 5 thursday lunch
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
Lunch-time rolls around and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> is again sent off to fetch <<=ps(setup.getNpcName('npc_rival', 'formal'))>> order.
<<if $scene.snitch>>
This time, she glances at you nervously, clearly recalling your betrayal as she straps herself into her chair immediately.
<<else>>
Once again she rides herself to orgasm on a clone of <<=setup.getNpcName('npc_boss', 'formal')>>, grinning with dopey satisfaction by the time she settles back into her chair and straps in for her lunch.
<</if>>
<br><br>
<<set $scene.followUp = "event_stage_5_transition_sub_thursday_4">>
<<if false>>
<<moveTo "event_stage_5_transition_sub_thursday_4">>
<</if>>
<<set _endDay = setup.setNextDate($now, 0, 18, 30)>>
<<set _timeEndDay = setup.secondsToDate($now,_endDay)>>
<<set $scene.workTime = _timeEndDay>>
<<include "stage5TransitionWorkOptions">>
</div>/*#
#desc: submissive stage 5 thursday afternoon
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<<if $scene.pass.all>>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
Your afternoon passes uneventfully... only for your chair to release slightly early as <<=setup.getNpcName('npc_rival', 'formal')>> steps out.<br>
<br>
"@@.npc_rival;Per usual, we shall be attending <<=ps(setup.getNpcName('npc_boss', 'formal'))>> party.@@" <<He npc_rival>> turns to you. "@@.npc_rival;You will find an appropriate outfit in your cell, change, and the guard will bring you to meet me — move quickly, this will be an opportunity for you to make a good impression with <<=setup.getNpcName('npc_boss', 'formal')>> before <<his npc_boss>> formal inspection tomorrow.@@"<br>
<br>
On cue a guard appears to take you back to your cell.<br>
<br>
[<<moveTo "event_stage_5_transition_party_1" "Go get changed." 300>>]
</div>/*#
#desc: submissive stage 5 friday morning
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outer Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
Still a bit tired from your long previous night, you glance over at <<=setup.getNpcName('npc_sissy_secretary', 'first')>> who looks, if anything, even worse for wear.<br>
<br>
"@@.npc_sissy_secretary;Up late consoling the boss,@@" she says with a forced smile. She coughs, her voice hoarse as she takes her seat and lets the chair auto-bondage snap into place.<br>
<br>
You see little alternative but to join her, settling in for what proves to be a quiet morning, save for <<=setup.getNpcName('npc_rival', 'formal')>> stumbling past into <<his npc_rival>> office around ten, looking quite exhausted <<him npc_rival>>self.<br>
<br>
<<set _afternoon = setup.setNextDate($now, 0, 14, 57)>>
<<set _timeToAfternoon = setup.secondsToDate($now,_afternoon)>>
[<<moveTo "event_stage_5_transition_sub_friday_2" "Continue working." _timeToAfternoon>>]
</div>/*#
#desc: submissive stage 5 friday sent for coffee
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "stage5TransitionWorkCalc">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
Lunch comes and goes without the slightest hint of freedom from your chair and it is only partway through the afternoon that <<=setup.getNpcName('npc_rival', 'formal')>> frantically summons both you and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> into <<his npc_rival>> office.<br>
<br>
"@@.npc_rival;Hello, both of you...@@" <<He npc_rival>> opens with as you look at <<his npc_rival>> dishevelled appearance and the keyboard imprint on <<his npc_rival>> face and quickly surmise that <<he npc_rival>> has been passed out at <<his npc_rival>> desk — a luxury the devices built into your chair would never afford you.<br>
<br>
"@@.npc_rival;I got a bit too deep into my work and lost track of time — <<=setup.getNpcName('npc_boss', 'formal')>> is due shortly and we need to prepare. Miss <<=$player.last_name>> — get me some coffee and some of <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> special serums — I need to be sharp for this meeting. <<=setup.getNpcName('npc_sissy_secretary', 'formal')>>! Assist me in getting changed, in my rush to work this morning I failed to grab a fresh outfit.@@"<br>
<br>
[<<moveTo "event_stage_5_transition_sub_friday_coffeedrug_1" "Leave on a Quest for Coffee... and other Drugs." 300>>]
</div>/*#
#desc: submissive stage 5 friday npc_rival prepares for npc_boss
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You head straight into <<=ps(setup.getNpcName('npc_rival', 'formal'))>> inner office where you find <<him npc_rival>> looking much more put together... even as <<he npc_rival>> sits in <<his npc_rival>> chair with <<=setup.getNpcName("npc_sissy_secretary","first")>> quietly sucking <<him npc_rival>> off.<br>
<br>
"@@.npc_rival;You're back!@@" <<He npc_rival>> states with obvious relief, pounding the blue vial as soon as you hand it to <<him npc_rival>>. "@@.npc_rival;Yes, that's the stuff...@@" <<He npc_rival>> moans.<br>
<br>
From between <<his npc_rival>> legs you hear another moan, followed by <<=setup.getNpcName('npc_rival', 'formal')>> stiffening and then grunting with pleasure.<br>
<br>
"@@.npc_rival;Yes, makes me feel like a new <<man npc_rival>>,@@" <<he npc_rival>> states with a sigh, standing up slowly, <<his npc_rival>> cock slipping free of <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> lips as she gulps down what must have been a massive load. You note that <<his npc_rival>> <<getWordPenis "npc_rival">> is still hard... and that it looks nearly the same size as the ones built into the chair that you have spent so much of the week "servicing." <br>
<br>
There's a fire in <<his npc_rival>> eyes as <<=setup.getNpcName('npc_rival', 'formal')>> takes the coffee and sips it slowly. "@@.npc_rival;Excellent... if you would take <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> place... I think I could do with one more to take the edge off before <<=setup.getNpcName('npc_boss', 'formal')>> arrives...@@"<br>
<br>
[<<moveTo "event_stage_5_transition_friday_blow" "Blow <<him npc_rival>>." 1800 "<<set $scene.blow=true>>">>]<br>
[<<moveTo "event_stage_5_transition_friday_blow" "Explain you don't have time for that, <<he npc_rival>> needs to stay hard and focused!" 1800 "<<set $scene.blow=false>>">>]
</div>/*#
#desc: submissive stage 5 friday npc_boss assessment - work efficiency
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.blow>>
<<set $scene.perfectCount += 1>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss","formal")>> arrives — lead into the room by <<=setup.getNpcName("npc_sissy_secretary","first")>> who quickly excuses herself, with a final submissively lustful glance.<br>
<br>
"@@.npc_boss;So, <<=setup.getNpcName("npc_rival","formal")>>, how is your predecessor's plaything working out?@@"<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> draws <<him npc_rival>>self up, but there is an instant contrast between <<his npc_rival>> aires and <<=ps(setup.getNpcName("npc_boss","formal"))>> raw, almost overpowering aura of dominance.<br>
<br>
<<if $scene.rivalWorkCounter > 150>>
"@@.npc_rival;On that count she is undeniably stunning. She did over twice what I would have expected and I am beginning to question if my own <<if $fetish.sissy>>SISSI <</if>>Secretary has been secretly slacking off.@@"
<<elseif $scene.rivalWorkCounter >= 100>>
"@@.npc_rival;In terms of raw output she performed superbly, doing significantly more than I expected and setting a new high water mark for my own <<if $fetish.sissy>>SISSI <</if>>Secretary to work towards.@@"
<<elseif $scene.rivalWorkCounter >= 75>>
"@@.npc_rival;She performed her base duties... adequately.@@"
<<elseif $scene.rivalWorkCounter >= 50>>
"@@.npc_rival;She narrowly failed to meet my expectations as to overall throughput.@@"
<<else>>
"@@.npc_rival;Her work performance was an utter failure — I think, on balance, she may well have been a net productivity loss compared to had my <<if $fetish.sissy>>SISSI <</if>>Secretary merely worked alone.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_boss","formal")>> does not react to this news save to nod slowly. "@@.npc_boss;And, in other aspects? Did she properly exhibit the submissive skills to be expected of one in her position?@@"<br>
<br>
[<<moveTo "event_stage_5_transition_sub_friday_5" "Continue." 600>>]
</div>/*#
#desc: submissive stage 5 friday npc_boss assessment — actions
#status: RELEASED 0.9.0.0
#*/
<<set $player.inside = false>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyStress 10>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_rival") setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
<<if $scene.perfectCount == 5>>
"@@.npc_rival;I have to say, whatever her other failings, the former <<=setup.getNpcName("npc_manager","other")>> truly succeeded at training up a perfect <<if $fetish.sissy>>SISSI <</if>>Secretary. She showed up to work every day perfect, and showed eager submissive loyalty to the slightest request. If I did not know better I would be baffled as to how she got into my care.@@"
<<elseif $npc_rival.affection == 10 && $npc_rival.anger == 0>>
"@@.npc_rival;While she had some minor slip-ups, on-balance she performed stupendously. I would be more than satisfied to recommend her as a <<if $fetish.sissy>>SISSI <</if>>Secretary.@@"
<<elseif $npc_rival.affection > $npc_rival.anger>>
"@@.npc_rival;I suppose I could say that I was pleased with her overall performance, but not much more, a few too many mistakes for me to recommend her as a <<if $fetish.sissy>>SISSI <</if>>Secretary — particularly at the executive level.@@"
<<elseif $npc_rival.affection == 0 && $npc_rival.anger == 10>>
"@@.npc_rival;I will be honest — she was everything short of a living nightmare. I almost admire the former <<=setup.getNpcName("npc_manager","other")>> for putting up with her for so long — just one week was bad enough.@@"
<<else>>
"@@.npc_rival;Her performance was... disappointing. I find myself quite at a loss as to why I once admired the former <<=setup.getNpcName("npc_manager","other")>> because the product she has trained well... she is temperamental and ill-suited for the responsibilities of a <<if $fetish.sissy>>SISSI <</if>>Secretary — executive, or otherwise.@@"
<</if>>
<br><br>
<<if $npc_rival.affection == 10 && $npc_rival.anger == 0 && ($scene.rivalWorkCounter >= 75 || $scene.rivalWorkCounter >= setup.getTotalValue("smart") * .75 * 8)>>
[<<moveTo "event_stage_5_transition_friday_home_1" 'You wait nervously for <<=setup.getNpcName("npc_boss","formal")>> to render <<his npc_boss>> decision.' 600>>]
<<else>>
[<<moveTo "event_stage_5_transition_bad_end" 'You wait nervously for <<=setup.getNpcName("npc_boss","formal")>> to render <<his npc_boss>> decision.' 600>>]
<</if>>
</div>/*#
#desc: evil manager sends you for stage 5 orgy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !($npc_manager.flags.cruel || $npc_manager.flags.evil == 1)>>
<<initRoom>>
<<moveTo "event_work_generic">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office and grins as she dispenses fresh instructions.<br>
<br>
"@@.npc_manager;Things are changing here at Social Interaction Service Syndicate Inc., as you well know. You have already gone through extensive retraining to better position you to make a positive contribution, but there is even more in the works, particularly given some of your prior behaviour.@@" She grins and peers at you over her glasses... not a calming sight. "@@.npc_manager;I have signed you up for additional training, report to basement level thirteen. They are refining a new procedure that, well... the moment I saw the report I just KNEW you needed to be put through it.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> dismisses you with a wave and you scurry out of her sight and towards the elevator, nervous as to what could be in store.<br>
<br>
[<<moveTo "event_stage5_ai_orgy_2" "Board the elevator." 180>>]
</div>/*#
#desc: ai offers you an out for stage 5 orgy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
As you step into the elevator <<=setup.getNpcName('npc_ai', 'first')>> shimmers into existence.<br>
<br>
"@@.npc_ai;<<uc "Greetings, unit">> <<uc $player.first_name>><<uc ". I have been monitoring you and the procedure you have been assigned to is... dangerous. Ninety-three percent of subjects emerge from the procedure with significant cognitive impact, well outside even most of what is seen within the company. Given the delicate nature of our situation I cannot permit you to endure the procedure alone.">>@@"<br>
<br>
You ask what you're expected to do, given that <<=setup.getNpcName('npc_manager', 'formal')>> will surely check in on things.<br>
<br>
"@@.npc_ai;<<uc "Correct, her transformation has cost her none of her meticulousness. I have two proposals. Once is that you avoid the procedure and I falsify records. There is a slight risk to this, but one that is within acceptable margins. The other alternative would be for you to allow me to take control of your body and endure the procedure on your behalf. You would be able to witness as an observer, or perhaps you might consider, a passenger. In either case, the separation, of not being directly subject to enduring things yourself, would be sufficient protection to avoid damage to your psyche. So, unit">> <<uc $player.first_name>> <<uc "which shall it be?">>@@"<br>
<br>
You take a moment to think, you do not believe she is offering you a trick choice, merely attempting to protect you as best she can...<br>
<br>
[<<moveTo "event_stage5_ai_orgy_3" "Accept her offer to pilot your body." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_stage5_ai_orgy_3" "You'll just hide out..." 1800 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: ai takes control for ai orgy, meet sexdoll
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'submission' 20 'skip' $ALONE>>
<<else>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_mission_drone'
4
'theme_drone_mission_intro'
false
>>
<</if>>
<</if>>
<<if $scene.accept>>
<<set $player.location to 'Company Hallway'>>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<</if>>
<<initRoom>>
<<if $scene.accept>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/company_hallway.png">>
<<else>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_ai")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
You agree to <<=ps(setup.getNpcName('npc_ai', 'first'))>> offer, silently wondering how she is going to pilot your body... a question swiftly answered as the elevator redirects to zip down to one of the research and development floors.<br>
<br>
You follow <<=ps(setup.getNpcName('npc_ai', 'first'))>> directions to a storage room where you find a small neuro-chip that installs just behind your ear.<br>
<br>
You feel a tingle and then the even stranger feeling of being disconnected from your body, all sensation dulled and distant... and a reflexive attempt to move showing that you are no longer in control of yourself...<br>
<br>
"@@.npc_ai;<<uc "Well done, unit">> <<uc $player.first_name>><<uc ". This is an experimental control chip, it is less than stable and the body will reject it after a matter of hours... more than sufficient for our purposes.">>@@"<br>
<br>
As she speaks, your body turns and walks back to the elevator, riding down, down to the depraved depths of the building...<br>
<br>
[<<moveTo "event_stage5_ai_orgy_4" "Continue..." 300>>]
<<else>>
You tell <<=setup.getNpcName('npc_ai', 'first')>> that you would rather avoid the procedure completely.<br>
<br>
"@@.npc_ai;<<uc "A reasonable weighing of risk... very well. I will divert you to one of the company's unused floors to wait a reasonable time before returning to your normal duties.">>@@"<br>
<br>
<<if State.hasPlayed("event_psychiatrist_hypnosis_4_penis_accept") && $fetish.get_raped && $fetish.drugs && ($npc_manager.flags.evil == 1 || $npc_manager.flags.cruel) && $npc_psychiatrist.flags.evil == 1>>
[<<moveTo "event_stage5_ai_orgy_3_evil_1" "Kill time." 3600>>]
<<else>>
[<<moveTo "event_stage5_ai_orgy_3_skip" "Kill time." 3600>>]
<</if>>
<</if>>
</div>/*#
#desc: return after skipping orgy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue -20>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You spend an hour hiding on an unused floor and getting in some rest before <<=setup.getNpcName('npc_ai', 'first')>> signals that sufficient time has passed for you to return to your desk.<br>
<br>
Back at the office <<=setup.getNpcName('npc_manager', 'formal')>> greets you with her usual evil grin.<br>
<br>
"@@.npc_manager;Back so soon! It would appear you were in need of less training than I thought. I was reviewing the procedure results as you returned and... well, it would seem that my training has been quite effective... but I suppose we already knew that!@@" She laughs, a sound that makes you wince in fear... which only seems to amuse her further. "@@.npc_manager;Lovely... well, it is time to put that fearful obedience to work, back to your desk, paperwork waits for no man, or woman<<if $fetish.sissy>>... or SISSI<</if>>!@@"<br>
<br>
She returns to her inner office and you take a seat at your desk, wondering what you missed... while also feeling glad to have missed it.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ai in control, meet sexdoll
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Basement Training Facility'>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/hospital_hallway.png" setup.charImage("npc_sexdoll","npc_sexdoll_5")>>
<div id="invframe" class="scrolltext">
You step out of the elevator on one of the basement "asylum"-type floors and nearly run into <<=setup.getNpcName('npc_sexdoll', 'first')>>. Your coworker friend looks even more out of it than usual, slack-jawed<<if $fetish.cum>>, drooling cum<</if>>, dazed, and taking several long moments to recognise you.<br>
<br>
"@@.npc_sexdoll;<<=$player.first_name>>? You got assigned too...@@" she seems to freeze for a moment, wavering slightly before picking up, her speech slurred "@@.npc_sexdoll;I liked the off-site better... I dunno if I'm going to be able to serve my customers properly... I feel so loose...@@"<br>
<br>
With those cryptic words she shuffles past, disappearing into the elevator as <<=setup.getNpcName('npc_ai', 'first')>> pilots you down the hallway and into a waiting room.<br>
<br>
"@@.generic_female1;Miss <<=$player.first_name>>? You are running late... or perhaps that is in-character, given that you have been scheduled for remedial fuck-doll training. Come alone.@@"<br>
<br>
[<<moveTo "event_stage5_ai_orgy_5" '"Follow" her down the hallway.' 300>>]
</div>/*#
#desc: ai orgy, strip and restrained
#status: RELEASED 0.9.3.0
#ignore_spell: s,puppeteered
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<set $scene.removeHollowPlug = setup.checkItemTypeWorn("hollow_plug") && !(setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5)>>
<<if $scene.removeHollowPlug>>
<<set $scene.hollowplug = setup.getItemFromType("hollow_plug")>>
<<removeItem $scene.hollowplug true>>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug")>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<<set $scene.removeCage = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeCage>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<addItem "brainwash_band">>
<<wearItem "brainwash_band" true>>
<</if>>
<<set $player.location to 'Basement Training Facility'>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/asylum.png" setup.charImage("npc_work","npc_work_laundry_reception")>>
<div id="invframe" class="scrolltext">
So far everything seems more of the same for the company as you are led down a hallway and ordered to strip. The feeling of <<=setup.getNpcName('npc_ai', 'first')>> removing your clothes is somewhat surreal, as accustomed as you have become to removing your clothes or being naked it happening literally out of your control introduces a sort of disconnect from your own body as fabric slides over flesh.<br>
<br>
Standing naked, a LED-encrusted headband is slid over your head as the attendant explains.<br>
<br>
"@@.generic_female1;This device will monitor your neurological signature to optimise treatment, as well as
<<if !$player.body_ref.vagina>>
make up for your orifice shortage and
<</if>>
expand your capacity beyond human limits.@@"<br>
<br>
You aren't sure what that all means... but you can hardly enquire, the sensation of being puppeteered doubled robotic arms swing down to attach to cuffs at your wrists, ankles and waist, lifting you up into the air<<if ($scene.removePlug || $scene.removeHollowPlug) && $scene.removeCage>>to remove your plug<<if $scene.removePlug && $scene.removeHollowPlug>>s<</if>> and chastity<<elseif ($scene.removePlug || $scene.removeHollowPlug)>>to remove your plug<<if $scene.removePlug && $scene.removeHollowPlug>>s<</if>><<elseif $scene.removeCage>>to remove your chastity<</if>>.<br>
<br>
Being unable to so much as turn your head, you are more than a little disoriented as you pitch forward, barely spotting the attendant stepping out of the way to tap on controls as at least half a dozen additional dildo-tipped robot arms swing down.<br>
<br>
"@@.generic_female1;Commencing procedure. Enjoy the latest in fuckdoll training...@@"<br>
<br>
Perhaps due to her own robotic nature, <<=setup.getNpcName('npc_ai', 'first')>> has you looking stiffly forward, which means your view is quickly swallowed up by the dildo targeted for your mouth, the large phallus dripping with lube...<br>
<br>
[<<moveTo "event_stage5_ai_orgy_6" "Mmmfff!" 300>>]
</div>/*#
#desc: ai orgy fucked extreme
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Basement Training Facility'>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
In moments you are being gang-banged from every direction: not just ravaged in <<if $player.body_ref.vagina>>throat, ass, and cunt,<<else>>throat and ass... but the neuro-link granting you a simulated cunt that has you<</if>> double stuffed below as your throat gapes... and then you feel another sensation, a wholly inhumane one as it feels like a fourth cock is sliding into the back of your head. In a surreal simulation you feel like you are being penetrated through the base of your skull, the lobes of your brain pushed apart as you have the sensation of being literally mind-fucked.<br>
<br>
Even with sensations deadened thanks to <<=setup.getNpcName('npc_ai', 'first')>> being in control the situation is intense, fucked from every angle as your body is suspended in mid-air, the dildos and restraints moving in perfect synchronicity to transition you through dozens of sexual positions...<br>
<br>
"@@.generic_female1;Calibration complete, proceeding to full power.@@" The distant, unseen voice of the attendant states. You wonder if her vocalisation is meant to enhance the program... or if the intensity of what is to come is such that it doesn't matter.<br>
<br>
[<<moveTo "event_stage5_ai_orgy_7" "That was just calibration?" 1800>>]
</div>/*#
#desc: ai orgy intensifies
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<playerOrgasm>>
<</if>>
<<set $player.location to 'Basement Training Facility'>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
Every dildo accelerates from a cyclical thrusting to a bone-rattling pounding, while the walls around you reveal themselves to be screens, each showing a view of yourself being fucked from different angles, the "simulated" <<if !$player.body_ref.vagina>>dildos fucking your skull and nonexistent cunt<<else>>dildo fucking your skull<</if>> brought to life by computer graphics.<br>
<br>
"@@.computer;You are a fuck-doll. You exist to take cock. Your only purpose is obedience... obedience to cock.@@" A blaring simulated voice commands, all while the robotic arms deliver that promise, the combination of being constantly twisted and moved while watching time-delayed and recut views of what you're enduring combining for a truly surreal experience.<br>
<br>
"@@.npc_ai;<<uc "Reducing pass-through intensity.">>@@" <<=setup.getNpcName('npc_ai', 'first')>> states, a reminder that she is here nominally piloting your body, and insulating you from this intense "training." <br>
<br>
Everything gets a little fuzzy after <<=ps(setup.getNpcName('npc_ai', 'first'))>> comment, the volume of the droning commands dropping, the sexual displays on every wall going out of focus and the feeling of being fucked from four directions dulling even as you sense your body react physically with the first of multiple orgasms.<br>
<br>
A short time later you think you hear another comment from the attendant amidst the cacophony... and the commands become more than mere suggestions, but orders, to suck on the dildo constantly bulging your throat, or to squeeze harder on the one in your ass. You have a fresh appreciation for how out of it <<=setup.getNpcName('npc_sexdoll', 'first')>> looked after her run through the machine, even as <<=setup.getNpcName('npc_ai', 'first')>> takes care of steering your body through each command with machine-like efficiency.<br>
<br>
[<<moveTo "event_stage5_ai_orgy_8" "How long can this go on?" 300>>]
</div>/*#
#desc: ai orgy finish
#status: RELEASED 0.9.3.0
#ignore_spell: s
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<<if $scene.removeHollowPlug>>
<<wearItem $scene.hollowplug true>>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<if $scene.removeCage>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<</if>>
<<set $player.location to 'Basement Training Facility'>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/asylum.png">>
<div id="invframe" class="scrolltext">
Well beyond what would have been any human's breaking point, the dildos finally retract and the machine sets you down<<if $fetish.cum>>... the retracting dildos finishing off by basting you with several huge loads of cum<</if>>.<br>
<br>
"@@.generic_female1;Training session complete.@@" The attendant announces, her voice going from whisper quiet to normal volume as <<=setup.getNpcName('npc_ai', 'first')>> restores your normal hearing.<br>
<br>
Still bound, you remain in place for a few more embarrassing moments before hoses swirl down to wash you clean, followed by a bracing blast of hot air that dries you off before <<if ($scene.removePlug || $scene.removeHollowPlug) && $scene.removeCage>>your plug<<if $scene.removePlug && $scene.removeHollowPlug>>s<</if>> and chastity are replaced and <<elseif ($scene.removePlug || $scene.removeHollowPlug)>>your plug<<if $scene.removePlug && $scene.removeHollowPlug>>s are<<else>> is<</if>> replaced, <<elseif $scene.removeCage>>to replace your chastity, <</if>>the cuffs finally release and you are freed to dress.<br>
<br>
"@@.generic_female1;Well done. You scored higher than any prior frist-timer. A credit to your manager, she must have you doing gang-bangs daily to show such aptitude!@@"<br>
<br>
The feeling of dressing is both a return to earth, and its own sort of disorientation as <<=setup.getNpcName('npc_ai', 'first')>> pilots you out of the room and back to the elevator.<br>
<br>
[<<moveTo "event_stage5_ai_orgy_9" "Back to the office." 300>>]
</div>/*#
#desc: back at office after ai orgy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_mission_drone'
4
'theme_drone_mission_intro'
false
>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You return to the office where <<=setup.getNpcName('npc_manager', 'formal')>> is lurking in wait.<br>
<br>
"@@.npc_manager;Well, well. If it is not the return of the slut!@@" She states in greeting. "@@.npc_manager;I reviewed your footage... it would seem that I am an even better teacher than I thought! A true master of the gang-bang... and to think you were a virgin when we met! So much better now, yes? It is a good thing I insisted on you being in the high dosage group, the normal intro procedure would have been such a waste!@@"<br>
<br>
She laughs cruelly as <<=setup.getNpcName('npc_ai', 'first')>> has you nod, waiting until <<=setup.getNpcName('npc_manager', 'formal')>> has returned to her inner office before finally speaking.<br>
<br>
[<<moveTo "event_stage5_ai_orgy_10" "Back to the office." 60>>]
</div>/*#
#desc: back at office after ai orgy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 500>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_mission_drone'
4
'theme_drone_mission_intro'
false
>>
<<if !State.hasPlayed("event_stage5_ai_orgy_3_evil_8")>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addWorkEvent 'ai_orgy_repeat' _nextDate>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Returning control...">>@@" <<=setup.getNpcName('npc_ai', 'first')>> announces as you collapse back into your chair, the exhaustion of your body having endured the pounding procedure slamming into you in an instant as it feels like every part of you, from your holes out, is sore.<br>
<br>
"@@.npc_ai;<<uc "Thank you for enduring that, unit">> <<uc $player.first_name>><<uc ". The mention of an off-site has me quite curious. I will research further. Speak to me at home some time after you have had a chance to recover.">>@@"<br>
<br>
You nod to no-one in particular as your AI friend falls silent. Scratching the side of your head you feel the chip come away, and then turn to dust between your fingers. Your body is your own but your life... you shudder, feeling the company all around you. <<printThought "My life... well, that is going to take some work...">><br>
<br>
Groaning slightly at the exertion, you turn back to your work, lest you attract <<=ps(setup.getNpcName('npc_manager', 'formal'))>> evil eye...<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 30 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager confronts for skipping ai orgy
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You spend an hour or so killing time on your phone and then slip back into the office and take a seat at your desk... only for <<=setup.getNpcName('npc_manager', 'formal')>> to step out from behind the door like a monster from an old horror film.<br>
<br>
"@@.npc_manager;Did you think I would not know you skipped your training?@@" She asks, stalking towards you, her eyes peering over her glasses to pierce through you.<br>
<br>
"@@.npc_manager;As your manager, and your <<=setup.getNpcName('npc_manager', 'title')>> it is my job to make certain that you are optimally trained and prepared for every duty you are assigned. In this case I had made special arrangements for you... and yet... you fail to show up to a simple appointment...@@"<br>
<br>
[<<moveTo "event_stage5_ai_orgy_3_evil_2" "Insist that there is a mistake, you went!" 120 "<<set $scene.lie=true>>">>]<br>
[<<moveTo "event_stage5_ai_orgy_3_evil_2" "Admit that you avoided it out of fear..." 120 "<<set $scene.lie=false>>">>]
</div>/*#
#desc: respond to skipping ai orgy
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.lie>>
Somehow, <<=setup.getNpcName('npc_manager', 'formal')>> staring down at you, you find your voice and lie, insisting that you did go to training, that someone must have made a mistake in recording it.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> laughs cruelly "@@.npc_manager;Really? You would lie to me? Ignoring that polished glass would better obscure my vision than you do... that lesson should have run another hour, we want to make sure that it sinks DEEP into that ditzy brain of yours.@@" <<=setup.getNpcName('npc_manager', 'formal')>> jabs at your forehead with a finger as emphasis, "@@.npc_manager;Plus, well... everything in this company is tracked. To optimise workflows one must first have the data... and your data failed to show the expected increase in the number of times that your <<if $fetish.sissy>>SISSI <</if>>holes had been raped. No... you failed to appear for your training and, rather than send you back, well... I believe it would be better to take things into my own hands and for that, well... I decided to bring in an old friend to help out...@@"
<<else>>
You bow your head and admit that you skipped the training session, that you got scared on the elevator down and just hid for what you guessed to be the duration.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> snorts. "@@.npc_manager;At least you admit your failure... but failure is still failure and being afraid to perform your duties?@@" She shakes her head and tsks several times. "@@.npc_manager;No, that is QUITE the problem. Your biggest fear should be displeasing me, and, well... if you cannot show up to training to get a lesson raped into you? In that case, it would seem I need to take things into my own hands and for that... I decided to bring in an old friend to help out...@@"
<</if>>
<br><br>
<<=setup.getNpcName('npc_manager', 'formal')>> snaps her fingers and calls out "@@.npc_manager;You can come out now, <<=setup.getNpcName('npc_psychiatrist', 'title')>>...@@"<br>
<br>
[<<moveTo "event_stage5_ai_orgy_3_evil_3" '<<=setup.getNpcName("npc_psychiatrist", "title")>>?' 300>>]
</div>/*#
#desc: bimbo npc_psychiatrist appears
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
The door to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> inner office opens and <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> walks out pushing a cart full of drugs, bondage equipment, and several massive silicone cocks that wobble ominously.<br>
<br>
"@@.npc_manager;So... <<=setup.getNpcName('npc_psychiatrist', 'title')>>,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states mockingly. "@@.npc_manager;This is your former patient... what do you say concerning her refusal to submit to training?@@"<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> smiles as she starts measuring out drugs... with a very sloppy, heavy pour. "@@.npc_psychiatrist;That's, like, very problematic! <<if $fetish.sissy>>SISSI <</if>>Secretaries should like, always stay on top of training...@@" she pauses for a moment, blinking as her drug-addled brain puzzles through a thought. "@@.npc_psychiatrist;Well, I guess more bottom training. Don't worry, I have, like, the perfect thing!@@" She shoves a beaker of bubbling pink concoction in your face. "@@.npc_psychiatrist;Drink up, <<if $fetish.sissy>>sissy!<</if>> It'll, like, help block out that icky disobedient thoughts!@@"<br>
<br>
[<<moveTo "event_stage5_ai_orgy_3_evil_4" "Drink up." 180 "<<set $scene.drink=true>>">>]<br>
[<<moveTo "event_stage5_ai_orgy_3_evil_4" "Refuse." 180 "<<set $scene.drink=false>>">>]
</div>/*#
#desc: drugged
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<setTmpEffect 'bimbo_brew'>>
<<applyStress -100>>
<<changeHorny 100>>
<<applyFatigue -100>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
<<if $scene.drink>>
With <<=setup.getNpcName('npc_manager', 'formal')>> standing over you there seems no option other than to obey, and you gulp down the pink concoction.<br>
<br>
"@@.npc_manager;Good girl.@@" <<=setup.getNpcName('npc_manager', 'formal')>> states with a grin, her words making you feel tingly... or maybe that's the drugs hitting hard and fast, your resistance fading as your thoughts cloud and the only thought left in your bimbo brain is <<glitchText "SEX">>.
<<else>>
You close your mouth and shake your head only for <<=setup.getNpcName('npc_manager', 'formal')>> to sneer and grab you by the back of the head. "@@.npc_manager;Disobedient slut... did you think I was asking?@@" She yanks your head back and snatches the beaker from <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> hand and shoves it against your lips. "@@.npc_manager;Drink up <<if $fetish.sissy>>sissy<<else>>slut<</if>>. Good girls take their medicine... bad girls GET their drugs.@@"<br>
<br>
You try to keep your mouth closed, but the pink liquid is insidious, even just having it against your lips has your resistance starting to fray.<br>
<br>
<<printThought "Maybe just a little sip to placate her...">><br>
<br>
Your lips part for a moment, <<printThought "just a little taste,">> you think. <<printThought "I can handle it.">><br>
<br>
That "taste" proves far from little, the moment the sweet pinkness hits your tongue your eyes light up and you want, no NEED more. <<=setup.getNpcName('npc_manager', 'formal')>> grins as you gulp eagerly, not stopping until you've swallowed the entire glass, your heart racing with excitement as your resistance disappears and all thoughts are replaced with <<glitchText "SEX">>.
<</if>>
<br><br>
[<<moveTo "event_stage5_ai_orgy_3_evil_5" "Bimbo Secretary needs sex now!" 120>>]
</div>/*#
#desc: penis brainwashing
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 20 'unbelievable' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
Coherent thought is rapidly becoming impossible, your submissive need for sex overwhelming as your body burns with lust and you start sucking on the glass, desperate for more, for someone to rape your throat and pound your ass.<br>
<br>
<<shinyText "One, two, three, four, I'll suck your cock and beg for more!" 0.0>>
<<shinyText "Five, six, seven, eight, licking cock is really great!" 0.4>>
<<shinyText "Eight, seven, six, five, sucking cock just makes me thrive." 0.8>>
<<shinyText "Four, three, two, one, fuck my ass it's really fun!" 1.2>>
<<shinyText "One, three, five, nine, need a hole? Please use mine!" 1.6>>
<<shinyText "Two, four, six, eight, my lust for cock I'll never sate!" 2.0>>
<<shinyText "One, three, six, nine, both holes filled is really fine!" 2.4>>
<<shinyText "One, two, three, four, I'm nothing but a <<if $fetish.sissy>>Sissy<<else>>Sexy<</if>> WHORE!" 2.8>>
<<shinyText "Five, six, seven, eight, fuck me now, don't make me wait!" 3.2>>
<br>
Your mind buzzes as you notice <<=setup.getNpcName('npc_psychiatrist', 'formal')>> harnessing herself up, the massive dildo looking somewhat comical above her small cage.<br>
<br>
"@@.npc_manager;You ready for your training NOW?@@" <<=setup.getNpcName('npc_manager', 'formal')>> teases.<br>
<br>
[<<moveTo "event_stage5_ai_orgy_3_evil_6" "Yes... fuck me..." 300 "<<set $scene.resist=false>>">>]<br>
<<if setup.getWillpower() > 2>>
[<<moveTo "event_stage5_ai_orgy_3_evil_6" "No! Fight back!" 300 "<<spendWillpower 3>><<set $scene.resist=true>>">>] <<hint $options "This will require a significant act of will...">>
<<else>>
[@@.link_locked;You do not have the mental energy to resist the potent drugs.@@]
<</if>>
</div>/*#
#desc: oral raped
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' $npc_manager.penis_size 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
<<if $scene.resist>>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> approaches, with her massive artificial cock and you shake your head, fighting against the drugs to resist the urge to <<shinyText "suck your cock and beg for more!" 0.0>>.<br>
<br>
You may have managed to resist the brain-melting power of the drugs... but that's nothing compared to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> laughs at your reticence... and shoves you face-first onto <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>>. "@@.npc_manager;Still fighting back against your true nature? I really do have to handle everything for you.@@" <<=setup.getNpcName('npc_manager', 'formal')>> yanks you back and forth several times, almost bruising your nose as <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> strap-on stretches your throat. "@@.npc_manager;You are a <<if $fetish.sissy>>sissy<<else>>slutty<</if>> whore. A <<if $player.body_ref.vagina>>trio<<else>>pair<</if>> of holes who exists to look cute and get fucked. Resisting that fact will only make things harder for you... or maybe that's how you like it, you little brat?@@"
<<else>>
Desperate for your <<if $fetish.sissy>>sissy <</if>>mouth fuck-hole to be filled your jaw drops and you drool in anticipation, leaning forward to eagerly deep-throat <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> massive artificial strap.<br>
<br>
"@@.npc_manager;That is more like it,@@" <<=setup.getNpcName('npc_manager', 'formal')>> taunts, one hand on your head guiding you forward and back, pushing you all the way down to grind your nose against <<=setup.getNpcName('npc_psychiatrist', 'formal')>>."@@.npc_manager;Suck it, slut. Show me what a <<if $fetish.sissy>>sissy <</if>>cock-socket you are...@@"
<</if>>
<br><br>
You moan around the cock gaping your throat as <<=setup.getNpcName('npc_manager', 'formal')>> passes you off to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> your one-time counselor enthusiastically holding your head with both hands as she giddily pounds away, putting "the rapist" in therapist.<br>
<br>
[<<moveTo "event_stage5_ai_orgy_3_evil_7" 'You see <<=setup.getNpcName("npc_manager", "formal")>> moving behind you...' 300>>]
</div>/*#
#desc: fucked
#status: RELEASED 0.9.4.0
#ignore_spell: gaaaah
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'terrible' $SEEN_FRIEND>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.removeCage = $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
Most of your vision, and attention, is focused on <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> hips as she eagerly slams her strap-on in and out of your throat, but you catch a momentary glimpse of <<=setup.getNpcName('npc_manager', 'formal')>> snatching an even larger <<if $player.body_ref.vagina>>pair of dildos<<else>>dildo<</if>> off the cart and move behind you.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> shows not an ounce of tenderness as she lifts your hips into position<<if $scene.removePlug && $scene.removeCage>>and yanks out your plug and exposes the dripping hole that had been protected by the front shield of your belt<<elseif $scene.removeCage>>exposes the dripping hole that had been protected by the front shield of your belt<<elseif $scene.removePlug>>and yanks out your plug<</if>>. A single, powerful thrust has <<=setup.getNpcName('npc_manager', 'formal')>> the proverbial balls deep in <<if $player.body_ref.vagina>>both your holes<<else>>your ass<</if>><<if setup.checkItemTypeTag('plug', ['hollow'])>>, the combination of thick dildo and hollow plug stretching your ass wide<</if>>.<<if $player.body_ref.penis>><<if setup.checkItemTypeWorn("cage")>>Down below your cage flops uselessly as you strain<<if $fetish.cum>> and leak<</if>>, locked away and untouched<<else>>Down below your untouched <<getWordMyPenis>> swings back and forth, hard<<if $fetish.cum>> and leaky<</if>><</if>><</if>>.<br>
<br>
"@@.npc_psychiatrist;Yay, training!@@" <<=setup.getNpcName('npc_psychiatrist', 'formal')>> cheers, her bubbly enthusiasm contrasting both her old self, and <<=ps(setup.getNpcName('npc_manager', 'formal'))>> psychotic cruelty pounding the other end of you.<br>
<br>
"@@.npc_manager;Training... and a reminder to follow my instructions next time!@@" <<=setup.getNpcName('npc_manager', 'formal')>> sneers as she clicks a button and the <<if $player.body_ref.vagina>>twin dildos stretching your holes<<else>>artificial cock stretching your ass<</if>> begin pumping out agonising electric shocks. You howl around the cock in your throat... but that only makes <<=setup.getNpcName('npc_manager', 'formal')>> laugh louder and fuck you harder, lightning punctuating each hard thrust.<br>
<br>
[<<moveTo "event_stage5_ai_orgy_3_evil_8" 'Gaaaah!' 1800>>]
</div>/*#
#desc: finish and sent back to work
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'terrible' $SEEN_FRIEND>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug", true) && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.removeCage = $player.body_ref.vagina && setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if !State.hasPlayed("event_stage5_ai_orgy_10")>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addWorkEvent 'ai_orgy_repeat' _nextDate>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager() setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> shows no mercy, and <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is too ditzy and obedient to not play her role as the two women that had one point supported and guide you unite to fuck you from both ends, each showing startling stamina as the pound away until you're an exhausted, weeping mess slumping to the floor, your overloaded nervous system still twitching slightly even as you have finally escaped the electrified pain of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<if $player.body_ref.vagina>>bident<<else>>strap<</if>>.<br>
<br>
<br>
"@@.npc_manager;Get up,@@" <<=setup.getNpcName('npc_manager', 'formal')>> growls, looming over you and nudging you with a high-heel foot as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> busies herself <<if $scene.removePlug && $scene.removeCage>>replacing your plug and chastity and then <<elseif $scene.removePlug>>replacing your plug and then <<elseif $scene.removeCage>>replacing your chastity and then <</if>>unbuckling <<=ps(setup.getNpcName('npc_manager', 'formal'))>> strap. "@@.npc_manager;You have a job to do, so get back onto that chair and start typing... and maybe follow my instructions the first time next time.@@"<br>
<br>
You groan in pain as you crawl back up into your chair.<br>
<br>
<<=setup.getNpcName('npc_psychiatrist', 'formal')>> whistles merrily as she rolls the cart out of the office. <<=setup.getNpcName('npc_manager', 'formal')>> looks you over with a final sneer as she watches your chair binds you in place and fill your sore holes before she disappears back into her inner lair.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: npc_ai tells you to infiltrate npc_boss home
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'task_infiltrate_boss'>>
<<set $player.locations.boss = true>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Thank you, Unit">> <<uc $player.first_name>><<uc ", for returning me to the corporate network. I have a piece of additional good news — your failed infiltration? It left behind a trail that allowed me to fully infiltrate <<=uc(ps(setup.getNpcName('npc_boss','formal')))>> private corporate files... unfortunately <<if $npc_boss.fem>>she<<else>>he<</if>> has moved the most important information concerning the control of the Valkyrie units off-site.">>@@"<br>
<br>
She pauses, her digital form flickering as you figuratively gulp "@@.npc_ai;<<uc "I see no way forward save to infiltrate <<if $npc_boss.fem>>her<<else>>his<</if>> home and retrieve the data personally. While I am unable to observe, save but at a distance, the physical security to get onto <<if $npc_boss.fem>>her<<else>>his<</if>> property is... unimpressive, more designed to keep someone from escaping than to prevent entry. You might also gain entrance by obtaining <<if $npc_boss.fem>>her<<else>>his<</if>> trust such that <<if $npc_boss.fem>>she<<else>>he<</if>> brings you home. I leave the decision to you, but we will need those files.">>@@"<br>
<br>
You shiver slightly at the thought of entering the literal big boss' very lair...<br>
<br>
<<include "aiOnlineDiscussions">>
</div>/*#
#desc: outside npc_boss house
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside <<=ps(setup.getNpcName('npc_boss','formal'))>> Estate">>
<<initRoom>>
<<include playerMenu>>
<<if ($now.getUTCHours() > 19 || $now.getUTCHours() < 6) && !State.hasPlayed("event_boss_home_study_2") && setup.hasFreeTime($now, $player, $currentTasks, 21600, true) && !setup.hasFreeTime($now, $player, $currentTasks, 21600, false)>>
<<createAdvBGR "./images/locations/boss_wall.png" "praetorian_guard" "praetorian_guard" "flip">>
<<else>>
<<createAdvBGR "./images/locations/boss_wall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_boss","formal"))>> estate takes up a literal entire block, an ostentatious mansion surrounded by grounds and a steep enclosing fence. The front entrance locked up tight, complete with a guard-post, you circle around to the back where you find a patch of wall hidden from view by ornamental shrubbery.<br>
<br>
<<if $now.getUTCHours() > 19 || $now.getUTCHours() < 6>>
<<if State.hasPlayed("event_boss_home_study_2")>>
<<printThought "I was fortunate enough to get out the last time. It'd be a bad idea to test my luck an additional time when I already have what I need.">><br>
<br>
<<else>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 21600, true)>>
<<if !setup.hasFreeTime($now, $player, $currentTasks, 21600, false)>>
As you're planning a path over the fence you hear footsteps and you barely dash away before a pair of guards comes into view.<br>
<br>
<<printThought "That was a close one!">><br>
<br>
You sit for a minute only for another pair of guards to round the corner before the first has even gone out of sight.<br>
<br>
<<printThought "Looks like security is extra tight this evening... probably safer to come back some other night.">><br>
<br>
<<else>>
[<<moveTo "event_boss_home_sneak_2" "Try to scale the fence." 180>>]<br>
<</if>>
<<else>>
<<printThought "I should come back when I have more time. It'll probably take me several hours to find my target...">><br>
<br>
<</if>>
<</if>>
<<else>>
<<printThought "Probably best to come back at night, I don't know what's on the other side of this wall so the cover of darkness would be good.">><br>
<br>
<</if>>
[<<moveTo "room_citymap" "Return to town." 1800>>]
</div>/*#
#desc: scale npc_boss wall
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if setup.getTotalValue("dexterity") > 15>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Estate">>
<<createAdvBGR "./images/locations/boss_garden.png">>
<<else>>
<<set $player.location to "Outside <<=ps(setup.getNpcName('npc_boss','formal'))>> Estate">>
<<createAdvBGR "./images/locations/boss_wall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
Nimbly you scramble up the wall, your slender fingers finding small handholds in the hewn rock as you pull yourself up over the top and then land lightly on the other side.<br>
<br>
[<<moveTo "event_boss_home_sneak_3" "Drop down." 180>>]<br>
[<<moveTo "room_citymap" "On second thought, drop back and leave before you get caught." 1200>>]
<<else>>
You make it about halfway up the wall before losing your grip. The fall hurts little save your pride, but it would seem you need to spend a bit more time at the gym if you're going to summit this obstacle.<br>
<br>
[<<moveTo "room_citymap" "Return to town." 1200>>]
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
You spend some time trying to scale the wall, but you just don't have the skill or agility to pull it off.
<<else>>
You try to scale the wall, but it's immediately clear that you are flirting with danger, your clumsy lack of athleticism a perfect recipe for disaster if you even attempt.
<</if>>
<br><br>
<<printThought "I need to spend some more time at the gym...">><br>
<br>
[<<moveTo "room_citymap" "Return to town." 1200>>]
<</if>>
</div>/*#
#desc: npc_boss infiltration: dog
#status: RELEASED 0.9.3.0
#ignore_spell: cerberus
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Estate">>
<<initRoom>>
<<include playerMenu>>
<<if $fetish.bestiality_hard>>
<<createAdvBGR "./images/locations/boss_garden.png" setup.charImage("npc_boss_dog")>>
<<else>>
<<createAdvBGR "./images/locations/boss_garden.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $fetish.bestiality_hard>>
You land softly on the manicured lawn and begin creeping towards the house.<br>
<br>
You have barely made it a dozen meters when the hairs stand up on the back of your neck and you hear a low growl. Turning to your left you gasp in surprise — before you is not just a dog, but a creature of legend a three-headed abomination of science, a literal cerberus near the size of a horse, its shoulder even with your eye... and three of the largest dog-cocks you've ever seen dangling between its legs...<br>
<br>
<<if setup.getTotalValue("bestiality") > 10>>
<<if setup.getTotalValue("bestiality") > 15>>
<<printThought "Magnificent... it's like everything I've ever dreamed of...">>
<<else>>
<<printThought "Goddess... that's too much!">>
<</if>>
<br><br>
[<<moveTo "event_boss_home_sneak_4" "Offer yourself to the beast..." 1200 "<<set $scene.flee=false>>">>]<br>
<<else>>
<<if setup.getTotalValue("bestiality") > 5>>
<<printThought "No... that's too much...">>
<<else>>
<<printThought "I need to get out of here!">>
<</if>>
<br><br>
[<<moveTo "event_boss_home_sneak_4" "Hesitate." 1200 "<<set $scene.flee=false>>">>]<br>
<</if>>
[<<moveTo "event_boss_home_sneak_4" "Flee!" 1200 "<<set $scene.flee=true>>">>]
<<else>>
You land softly on the manicured lawn and take stock of things. You don't see anyone outside, just the garden between you and the imposing mansion at the centre of the estate.<br>
<br>
Creeping quietly you make it but halfway across the lawn before you spot movement out of the corner of your eye. You barely have a chance to turn as a drone swoops down from above, a jolt of electricity hitting you a moment later, stunning you and leaving you helpless on the ground.<br>
<br>
You try to move but are all but paralysed as several more drones swoop in, working in coordination to lift you into the air and fly you towards the mansion before dumping you into a chute and you tumble down into the basement...<br>
<br>
[<<moveTo "event_boss_home_sneak_6" "Collect yourself and look around." 300>>]
<</if>>
</div>/*#
#desc: npc_boss infiltration: fuck dog
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.flee || $fetish.get_raped && setup.getTotalValue("bestiality") > 5>>
<<applyExperience 'bestiality' 20 'skip' $ALONE>>
<<applyExperience 'anal' 20 'unbelievable' $ALONE>>
<<if setup.getTotalValue("bestiality") < 20>>
<<applyFatigue 500>>
<</if>>
<<else>>
<<applyFatigue 100>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Estate">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_garden.png" setup.charImage("npc_boss_dog")>>
<div id="invframe" class="scrolltext">
<<if !$scene.flee || $fetish.get_raped && setup.getTotalValue("bestiality") > 5>>
<<if !$scene.flee>>
In a sort of trance you drop to your knees, presenting yourself to the monster as an offering, bent over, ass in the air... heart racing in anticipation.
<<else>>
You turn to run, but the beast is too fast, pouncing through the air and landing on you with enough force to drive you to the ground. You cry out, but there is none to hear, drool trailing down onto you as two massive paws pin you to the ground... the scent of its breath almost overwhelming in the moments before it takes you.
<</if>>
<br><br>
In the moment before the massive cock knots in your ass you reflect that the creature was not just bred, but trained for this. A perverse, and perverted guard it "punishes" your attempted infiltration by taking its pleasure with each deep, pounding thrust.<br>
<br>
The multiple heads pant in stereo while a large tongue licks the back of your head, but all of that is as nothing compared to the massive cock breeding your ass.
<<if setup.getTotalValue("bestiality") >= 20>>
All of your time with animals... from dogs to horses and then beyond... all of it was leading to this moment, this perfect moment of being bread by a literal monster of legend.<br>
<br>
Your eyes roll back and you moan like the bitch you are, every thrust of his triple cock is perfect, your body straining to handle his girth, the triple-entwined scent of his breath, the feel of his fur against your back, his balls slapping against you and, most of all, the feel of his massive knot locked inside your ass... you are in heavenly bliss, the feel of his depositing a massive load inside of you only made better by the fact that he does not even slow his thrusts...<br>
<br>
[<<moveTo "event_boss_home_sneak_5" "Continue." 1800>>]
<<else>>
<<if setup.getTotalValue("bestiality") > 10>>
<<if setup.getTotalValue("bestiality") > 15>>
Even your animalistic lusts are not up to this task,
<<else>>
You may be experienced with animals of multiple sorts, but this is beyond anything natural,
<</if>>
each thrust of his massive cock
<<else>>
You may have experience with dogs, but the creature presently mounting you is of a whole other kind, more than making you his bitch, each thrust
<</if>>
feeling like it is going to break you in half, his weight bearing down like the very weight of the world crushing you into the dirt...<br>
<br>
You feel him cum with such vigour that you swear it is about to spurt out past your lips, but he doesn't even slow, one head instead merely letting out a howl as his multi-cock twists... and keeps thrusting.<br>
<br>
<<printThought "If this keeps up... I'll go insane... or worse...">><br>
<br>
[<<moveTo "event_boss_home_sneak_4_fail" "Continue." 7600>>]
<</if>>
<<else>>
<<if $scene.flee>>
Your heart races as you take one final look at the monster before you and flee.
<<else>>
You freeze for a moment, and then instinct takes over and you run from the monster before you.
<</if>>
You would swear you felt his breath on your shoulder, his teeth brushing your hair... yet, somehow, you manage to scramble back up and over the wall, falling to the other side in a roll before tearing off into the night.<br>
<br>
You don't even look back, scared that the beast might have leapt the wall and followed after you and it isn't until you're back into town before you finally slow down and catch your breath.<br>
<br>
<<printThought "What on earth was that monster? How am I going to get past that?">><br>
<br>
As you try to calm down you reflect back on the beast... and the beast between its legs, shivering in anticipation as you your gut churns at the thought of what you're going to have to do to get past it... unless you can somehow seduce <<=setup.getNpcName('npc_boss','formal')>> enough to gain entrance to his mansion some other way...<br>
<br>
[<<moveTo "room_citymap" "City Centre." 600>>]
<</if>>
</div>/*#
#desc: npc_boss infiltration: unable to handle the dog
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getWillpower() == 1>>
<<spendWillpower 1>>
<<elseif setup.getWillpower() > 1>>
<<set _spend = Math.floor(setup.getWillpower() /2)>>
<<spendWillpower _spend>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Estate">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_garden.png">>
<div id="invframe" class="scrolltext">
You wake some time later, exhausted, <<if $fetish.cum>>lying in a pool of canine cum <</if>>under a bush... your body is sore and you wince with every movement, but you are somehow alive, the creature having apparently tucked you away... perhaps for later?<br>
<br>
With a shudder you force yourself to your feet. You are in no condition to continue your mission and... somehow, you stagger back to the wall and manage to climb back over, falling down to the far side and taking several more minutes before you are able to call an auto-cab, grateful for the anonymity of the drone-controlled vehicle as you direct it to drop you off near your home, barely retaining the sense to not lead the way DIRECTLY to your door.<br>
<br>
<<printThought "If I'm going to make it past that guard beast I'm going to need to really learn to handle animals... no... monsters.">><br>
<br>
[<<moveTo "room_foyer" "Stagger the rest of the way home." 1200>>]
</div>/*#
#desc: npc_boss infiltration: survive dog
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 15 'terrible' $ALONE>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Estate">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_garden.png">>
<div id="invframe" class="scrolltext">
Alas, eventually the beast has had his fill, wandering off and leaving you to slowly stagger to your feet... only to find yourself moments later entwined in the nets of several floating drones. Acting like a sort of clean-up patrol they lift you into the air and fly you towards the mansion before depositing you into a chute through which you slide down underneath into the basement...<br>
<br>
[<<moveTo "event_boss_home_sneak_6" "Collect yourself and look around." 300>>]
</div>/*#
#desc: npc_boss infiltration: start in dungeon
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.sneak=true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Basement Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_cell.png" setup.charImage("npc_boss_dominatrix","npc_boss_slave")>>
<div id="invframe" class="scrolltext">
Categorising your various limbs you confirm that you are in one piece before looking around what seems to be a cell of some sort. Clean and quiet it is still distinctly ominous and prison-feeling... amplified by your cell-mate, a hooded and gagged woman restrained to a wall, oblivious to your presence as she is tormented by a trio of large <<if $npc_boss.flags.hasBlown || $npc_boss.flags.hasAnal || $npc_boss.flags.hasVaginal || $npc_boss.flags.worked_max_cock > 0>>familiar-shaped <</if>>dildos fucking her while she writhes helplessly in place.<br>
<br>
A closer inspection shows that her occasional twitches are due to the restraints built into her outfit seeming to shock her at random, furthering her torment, but with everything seemingly locked on you can see nothing you can do to relieve her suffering.<br>
<br>
Other than the tormented woman — and the echoes of her moans bouncing off the walls, the cell is totally bare, the chute through which you entered far too steep and slick for you to consider climbing back out.<br>
<br>
<<printThought "Looks like the only way forward is through... got to find <<=ps(setup.getNpcName('npc_boss','formal'))>> secret files, then escape...">><br>
<br>
[<<moveTo "event_boss_home_matron_intro_1" "Head into the house proper." 300>>]
</div>/*#
#desc: npc_boss orders you to spend the night with him
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.hasFreeTime($now, $player, $currentTasks, 21600)>>
<<applyExperience 'submission' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' $npc_boss.penis_size 'normal' $SEEN_STRANGER>>
<<else>>
<<removeRandomEvent 'elevator_home' 'boss_home_invite'>>
<<addRandomEvent $randomEvents['elevator_home'] 'boss_home_invite'>>
<</if>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
You're just leaving the company lobby when a large limousine glides up next to you and one of the rear doors opens.<br>
<br>
"@@.npc_boss;Come,@@" sounds a <<if $npc_boss.fem>>commanding<<else>>deep<</if>>, familiar voice from inside that has you weak in the knees... and almost ready to literally obey its one-word command on the spot.<br>
<br>
Unable to resist <<=ps(setup.getNpcName('npc_boss','formal'))>> instruction you step into the limousine, soon finding yourself on your knees in front of <<him npc_boss>>, your mouth put to its "proper" use as <<he npc_boss>> casually explains that you will be spending the night with <<him npc_boss>>.<br>
<br>
Your heart skips a beat and you obediently suck feeling excited, nervous but, most of all, joyfully blessed, that you will have the opportunity to spend the night with the glorious <<=setup.getNpcName('npc_boss','formal')>>.<br>
<br>
[<<moveTo "event_boss_home_visit_2" "Continue." 600>>]
</div>/*#
#desc: npc_boss gives you house tour
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Mansion">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_hallway.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
Evening traffic slows the journey... not that you mind, trained, ready, and willing to spend eternity at <<=ps(setup.getNpcName('npc_boss','formal'))>> feet, with <<his npc_boss>> <<if $npc_boss.fem>>goddess<<else>>god<</if>>-like <<getWordPenis "npc_boss">> sheathed in your throat.<br>
<br>
Arriving at the house you have yet to be blessed with any more than <<his npc_boss>> pre, but even that has you feeling blessed and you quickly pop to your feet at <<his npc_boss>> slight touch, falling in behind <<him npc_boss>> as <<he npc_boss>> leads the way up the walkway to what appears from the exterior to be a massive mansion on a quite sizable estate.<br>
<br>
You gawk at the show of wealth — land this close to the city is exorbitantly expensive, even before taking into account the perfect landscaping and ostentatious house itself.<br>
<br>
Inside you are greeted by a gorgeous woman who wordlessly — as if she had a choice, given her lip-spreading gag — takes <<=setup.getNpcName('npc_boss','formal')>> coat without paying you any mind. Her eyes, full of submissive devotion, are only for <<him npc_boss>>, the way she looks at <<him npc_boss>> making your stomach clench with jealously.<br>
<br>
Shooing her away with a wave <<=setup.getNpcName('npc_boss','formal')>> looks back at you with an amused smile.<br>
<br>
"@@.npc_boss;You did not think you were the first to pursue me romantically?@@" <<He npc_boss>> chuckles. "@@.npc_boss;Many have tried... and here I afford them an ongoing opportunity to serve and, perhaps, impress me enough to make a choice. None have risen to that level thus far but they continue to try in their own ways. And that amuses me.@@"<br>
<br>
You try to ignore the implications of <<his npc_boss>> words as <<he npc_boss>> leads you through the house and you see just how many women — all of them gorgeous, most of them suffering in some manner of bondage, there are wandering around, each one seeming to try to subtly catch <<=ps(setup.getNpcName('npc_boss','formal'))>> eye, or sneak a jealous glare at you, as you pass.<br>
<br>
[<<moveTo "event_boss_home_visit_3" 'Stay close to <<=setup.getNpcName("npc_boss","formal")>>.' 600>>]
</div>/*#
#desc: npc_boss takes you to bed
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeEverythingButUnderwear>>
<<applyExperience 'oral' $npc_boss.penis_size 'normal' $SEEN_STRANGER>>
<<set _submission = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _submission 'normal' $SEEN_STRANGER>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'normal' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bedroom.png" setup.charImage("npc_boss","npc_boss_naked")>>
<div id="invframe" class="scrolltext">
You marvel at the size of the mansion as <<=setup.getNpcName('npc_boss','formal')>> leads you almost directly upstairs to the massive master bedroom. <<He npc_boss>> barely has to reach to unbutton <<his npc_boss>> shirt when you obediently leap to assist, staring lustily up at <<him npc_boss>> as <<his npc_boss>> confident slight grin and <<his npc_boss>> piercing eyes draw you deeper and deeper into <<his npc_boss>> thrall.<br>
<br>
Chest exposed <<he npc_boss>> takes a seat on the edge of the bed and watches you strip. You put on the best show that you can until <<his npc_boss>> subtle nod tells you to stop when you're down to your underthings and you return your focus to <<him npc_boss>>.<br>
<br>
You slide to your knees to unbuckle <<his npc_boss>> belt, lips parting at the first scent of <<his npc_boss>> glory, waiting just long enough for <<him npc_boss>> to nod permission before you eagerly start to suck.<br>
<br>
[<<moveTo "event_boss_home_visit_4" 'Continue.' 120>>]
</div>/*#
#desc: npc_boss fucks you
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'terrible' $SEEN_STRANGER>>
<<if setup.getTotalValue("anal") < 15>>
<<set _bdsm = 35-setup.getTotalValue("anal")>>
<<applyExperience 'bdsm' _bdsm 'unbelievable' $SEEN_STRANGER>>
<</if>>
<<if setup.getTotalValue("anal") < 20>>
<<applyFatigue 300>>
<<else>>
<<applyFatigue 30>>
<</if>>
<<applyExperience 'stamina' 20 'terrible' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bedroom.png" setup.charImage("npc_boss","npc_boss_naked")>>
<div id="invframe" class="scrolltext">
Already hard even before <<he npc_boss>> passed your lips <<=setup.getNpcName('npc_boss','formal')>> doesn't give you long to warm <<him npc_boss>> up before <<he npc_boss>>'s back on <<his npc_boss>> feet and you're on the bed.
<<if $player.body_ref.vagina>>
You start to lay back and spread your legs but <<he npc_boss>> shakes <<his npc_boss>> head and
<<if !setup.checkItemTypeWorn("cage")>>
casually flips you over to expose your rear.
<<else>>
chuckles, clearly amused at your idea that you might be let out of your chastity belt.
<</if>>
<<else>>
You bend over and present your rear for <<his npc_boss>> use, glancing over your shoulder as your heart pounds in anticipation.
<</if>>
<br><br>
Standing behind you <<he npc_boss>> smiles before pulling some pills out of <<his npc_boss>> pocket.<br>
<br>
"@@.npc_boss;One of <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> more successful products,@@" <<he npc_boss>> explains as <<he npc_boss>> swallows the pills and <<his npc_boss>> already large <<getWordPenis "npc_boss">> swells even larger... "@@.npc_boss;Increased sensitivity, plus I can reach that little deeper — I must confess that the feeling of really stretching a girl's hole to the limit. That look of fear in her eye when she wonders if she well be able to feel my balls slapping into her before she is split in half... it really is quite delicious.@@"<br>
<br>
With nothing more than your saliva for lube <<he npc_boss>> enters you.
<<if setup.getTotalValue("anal") >= 20>>
In a way all of your training has led to this moment, to you spreading yourself for <<=ps(setup.getNpcName('npc_boss','formal'))>> inhumanly large cock.<br>
<br>
<<if setup.getTotalValue("stamina") >= 20>>
<<He npc_boss>> may be huge... and seemingly indefatigable but your anal skills are matched only by your stamina and you are right there with <<him npc_boss>>, clenching down and working your hips to give <<him npc_boss>> as much pleasure as your body is able, taking <<him npc_boss>> balls deep with each stroke as you moan submissively.<br>
<br>
<<He npc_boss>> lasts longer than you would have imagined possible, but eventually <<he npc_boss>> cums, the force of <<his npc_boss>> climax pressing you even harder into the bed as <<he npc_boss>> thrusts deep... only to moments later roll free and pass out next to you on the bed.<br>
<br>
You take a moment to catch your breath and confirm that yes, <<he npc_boss>> is totally out... looks like this is your opportunity.<br>
<br>
<<if $now.getUTCHours() < 4>>
<<set _morning = setup.setNextDate($now, 0, 4, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 4, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_boss_home_visit_5" 'Sneak out and go searching for <<his npc_boss>> secret files.' 180 "<<set $scene.skip=false>>">>]<br>
[<<moveTo "event_boss_home_visit_7" 'Just cuddle up next to <<him npc_boss>>.' _timeToMorning "<<set $scene.skip=true>>">>]
<<else>>
Your ass may be up to the task behind it, but the rest of your body is not equipped to handle a fucking of this magnitude and duration.
<<if setup.getTotalValue("stamina") > 10>>
Your stamina stressed to the limit you feel <<him npc_boss>> cum just as your body gives out, <<his npc_boss>> cock the last thing holding you up before you slump to the bed, exhausted and more than ready to accept the welcoming arms of sleep.
<<else>>
You wish you had spent more time in the gym as your muscles give out and you pant for air, each thrust of <<his npc_boss>> mighty member pushing the air of your lungs, <<his npc_boss>> eventual climax welcome, but far too late for you to be anything other than an exhausted mess.
<</if>>
<br><br>
Your last thought is one of tired frustration — you just don't have the endurance to satisfy <<=setup.getNpcName('npc_boss','formal')>> and still have energy left to go searching for <<his npc_boss>> secret files...<br>
<br>
<<if $now.getUTCHours() < 4>>
<<set _morning = setup.setNextDate($now, 0, 4, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 4, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_boss_home_visit_7" 'Sleep.' _timeToMorning>>]
<</if>>
<<else>>
<<if setup.getTotalValue("anal") > 10>>
<<if setup.getTotalValue("anal") > 15>>
Even your skills are insufficient to stand up to the relentless pounding of <<=ps(setup.getNpcName('npc_boss','formal'))>> inhumanly large <<getWordPenis "npc_boss">>. You manage to keep your cries to a muffled whimper, but even that quiet sound appears to spur <<him npc_boss>> forward as <<he npc_boss>> jackhammers in and out of your ass with enough force to rattle the entire bed with each stroke.
<<else>>
<<=setup.getNpcName('npc_boss','formal')>> is far, far too big for what you had thought was your well-trained hole. Each thrust feels like it might split you in twain and it is all you can do to hang on for dear life, fists clenched in the sheets, crying out with every stroke, your pained moans only seeming to spur <<him npc_boss>> on, harder and faster as <<he npc_boss>> uses you for <<his npc_boss>> pleasure.
<</if>>
<<else>>
You cry out in pain — your
<<if setup.getTotalValue("anal") > 5>>
novice
<<else>>
near-virgin
<</if>>
hole totally unprepared for anything even half the size.<br>
<br>
Your cries fall on deaf ears, as <<=setup.getNpcName('npc_boss','formal')>> seems focused solely on <<his npc_boss>> own pleasure, each stroke forcing what feels like a telephone pole deeper into your ass as you cry into the sheets, your wails seeming to only spur <<him npc_boss>> to fuck you harder.
<</if>>
<br><br>
Whatever was in the drug seems to have lent <<=setup.getNpcName('npc_boss','formal')>> stamina as well as size as <<his npc_boss>> jack-hammer pounding goes on and on as you drift in and out of consciousness, passing out completely just at the moment of <<his npc_boss>> climax.<br>
<br>
<<if $now.getUTCHours() < 5>>
<<set _morning = setup.setNextDate($now, 0, 4, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 4, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_boss_home_visit_7" 'Sleep.' _timeToMorning>>]
<</if>>
</div>/*#
#desc: npc_boss falls asleep
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.has_cum = true>>
<<set $scene.sneak=false>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bedroom.png">>
<div id="invframe" class="scrolltext">
You quietly slip out of <<=ps(setup.getNpcName('npc_boss','formal'))>> bed... though from the way <<he npc_boss>> is snoring you'd guess you could run a circus through the room and <<he npc_boss>> wouldn't notice... and lord knows the opulent bedroom has more than enough room to stage such an event.<br>
<br>
Thinking of the outfits of some of the other women you passed on the way in you decide that your current underthings might be better for blending in than the work attire you wore in. With a final glance back at <<=setup.getNpcName('npc_boss','formal')>> — <<his npc_boss>> member limp and back to its "normal" size between <<his npc_boss>> legs, you slip out of the room and into the hallway.<br>
<br>
[<<moveTo "event_boss_home_matron_intro_1" 'Continue.' 180>>]
</div>/*#
#desc: meet "matron"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$npc_boss_matron.profile>>
<<set $npc_boss_matron.profile = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_hallway.png" setup.charImage("npc_boss_matron")>>
<div id="invframe" class="scrolltext">
You step out into one of the mansion's many lavish hallways, trying to mentally plan out how you're going to find <<=ps(setup.getNpcName('npc_boss','formal'))>> secret information, and deal with the other inhabitants of the house, when you are startled by a voice behind you.<br>
<br>
"@@.npc_boss_matron;Ara, ara!@@" You freeze and then turn to find yourself face to face... or, rather, face to breast, with a slightly plump, but very attractive, motherly woman. "@@.npc_boss_matron;Well hello there! Haven't seen you around before... I take it you're the latest to pursue <<if $fetish.daddy>>our <<Daddy npc_boss>><<else>><<=setup.getNpcName('npc_boss','formal')>><</if>>?@@"<br>
<br>
You blush and nod, the fact that she hasn't raised any sort of alarm combining with her welcoming demeanour to have you feeling more at ease than you perhaps should.<br>
<br>
"@@.npc_boss_matron;Well welcome! All the girls call me <<=setup.getNpcName('npc_boss_matron','formal')>>, since you're one of us now, you should too... and good luck! <<=ps(setup.getNpcName('npc_boss','formal'))>> standards are VERY high... so high, in fact that <<he npc_boss>> has yet to make a choice, but maybe you'll be the one? Or perhaps you will just join the rest of us in <<his npc_boss>> growing devoted harem... hmm, I wonder at what point it becomes a cult... do you think <<he npc_boss>> could gain divine powers if enough of us are praying to <<him npc_boss>>?@@"<br>
<br>
Despite her obvious fixation on <<=setup.getNpcName('npc_boss','formal')>>, the woman seems friendly... possibly a good resource for learning a bit more about the mansion so you can make your plans.<br>
<br>
[<<moveTo "event_boss_home_matron_talk_1" 'Continue.' 180 "<<set $scene.ask = ''>>">>]
</div>/*#
#desc: talk with "matron"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ask != "">>
<<set $npc_boss_matron.flags.talk[$scene.ask] = true>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_hallway.png" setup.charImage("npc_boss_matron")>>
<div id="invframe" class="scrolltext">
<<switch $scene.ask>>
<<case "">>
The woman in front of you smiles warmly, her entire demeanour emanating a maternal vibe that has you feeling safe, like you could ask her just about anything...
<<case "identity">>
You ask who she is, and why she's here?<br>
<br>
"@@.npc_boss_matron;Who I am... well, who I was hardly matters, and who I am now is what I go by — a surrogate mother to all the rest of you. Getting here, well.. the same as you — a deep desire to have <<=setup.getNpcName('npc_boss','formal')>> for my own. Oh the things I did to prove my love and loyalty! The sacrifices I made, the ways I debased myself for <<his npc_boss>> amusement... well, you know, or you will. <<=setup.getNpcName('npc_boss','formal')>> is a stern <<master npc_boss>>, always wanting more. Sometimes I wonder if it would even be possible for <<him npc_boss>> to be satisfied... or would the lack of a new challenge to conquer drive <<him npc_boss>> mad?@@" She chuckles in amusement.<br>
<br>
"@@.npc_boss_matron;No matter, after awhile my passions cooled. Certainly I still lust after <<him npc_boss>>, but I have accepted my role. Someone has to keep an eye on the rest of you, provide a friendly ear, a shoulder to cry on... and maybe someday <<=setup.getNpcName('npc_boss','formal')>> will mellow and realise that <<he npc_boss>> wants the same... until then I will show <<him npc_boss>> my devotion by keeping the rest of you ready to serve <<him npc_boss>>.@@"<br>
<br>
You remember her off-hand mention of "cult" and it sends a shiver down your spine, the way she talks about <<=setup.getNpcName('npc_boss','formal')>>... almost reverent. Certainly <<his npc_boss>> presence is intoxicating but... you try to focus back on your mission.
<<case "others">>
You ask <<=setup.getNpcName('npc_boss_matron','formal')>> about the other women in the house. She shrugs. "@@.npc_boss_matron;I don't like talking about people behind their backs. My reputation is as a confidant, and I do not break that trust. You will need to meet the others yourself, and come to your own conclusions.@@"
<<case "help">>
You ask <<=setup.getNpcName('npc_boss_matron','formal')>> if she could help you?<br>
<br>
"@@.npc_boss_matron;What do you think I am doing now?@@" She says with an amused chuckle. "@@.npc_boss_matron;The rest you will have to figure out yourself. Though I will warn you that the other women here each have their own schemes and agendas, you might barter or trade to get what you want but it is a cut-throat business and nothing comes for free.@@"
<<case "secrets">>
You ask where <<=setup.getNpcName('npc_boss','formal')>> keeps <<his npc_boss>> secrets and <<=setup.getNpcName('npc_boss_matron','formal')>> chuckles. "@@.npc_boss_matron;Trying to find some secret advantage to put you ahead of the rest of us? Oh <<=setup.getNpcName('npc_boss','formal')>> is not so simple as that... as to your question, well... <<he npc_boss>> has a private den near the centre of the house. It is always locked and the only way any of us enter is in <<his npc_boss>> company, or for cleaning — only a maid would have access to the key.@@"
<<default>>
ERROR: unexpected scene.ask <<=$scene.ask>>
<</switch>>
<br><br>
<<if $npc_boss.flags.mansion.dominate.matron>>
She looks back at you submissively.<br>
<br>
<</if>>
<<if $npc_boss_matron.flags.talk.identity>>
[@@.link_locked;You've already asked about herself.@@]<br>
<<else>>
[<<moveTo "event_boss_home_matron_talk_1" 'Ask who she is.' 180 "<<set $scene.ask='identity'>>">>]<br>
<</if>>
<<if $npc_boss_matron.flags.talk.others>>
[@@.link_locked;You've already asked her thoughts on the other inhabitants of the house.@@]<br>
<<else>>
[<<moveTo "event_boss_home_matron_talk_1" 'Ask about the other women living in the mansion.' 180 "<<set $scene.ask='others'>>">>]<br>
<</if>>
<<if $npc_boss_matron.flags.talk.help>>
[@@.link_locked;You've already asked her for help.@@]<br>
<<else>>
[<<moveTo "event_boss_home_matron_talk_1" 'Ask her for help.' 180 "<<set $scene.ask='help'>>">>]<br>
<</if>>
<<if $npc_boss_matron.flags.talk.secrets>>
[@@.link_locked;She has already told you that you need to gain entrance to <<=ps(setup.getNpcName('npc_boss','formal'))>> private den to uncover <<his npc_boss>> secrets.@@]<br>
<<else>>
[<<moveTo "event_boss_home_matron_talk_1" 'Ask where <<=setup.getNpcName("npc_boss","formal")>> keeps <<his npc_boss>> secrets?' 180 "<<set $scene.ask='secrets'>>">>]<br>
<</if>>
[<<moveTo "event_boss_home_matron_dominate" 'Try to dominate her.' 300>>]<br>
[<<moveTo "event_boss_home_matron_fight" 'Fight her.' 300>>]<br>
<<if !$scene.sneak>>
<<if $scene.has_cum>>
[<<moveTo "event_boss_home_matron_cum" 'Offer her the cum <<=setup.getNpcName("npc_boss","formal")>> left in your ass.' 300>>]<br>
<<else>>
[@@.link_locked;You have already given away <<=ps(setup.getNpcName('npc_boss','formal'))>> <<getWordCum>>.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_boss_home_root" 'Say goodbye and go somewhere else in the house.' 300>>]
</div>/*#
#desc: dominate "matron"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("dominance") >= 15>>
<<set $npc_boss.flags.mansion.dominate.matron = true>>
<<set $npc_boss.flags.mansion.subdue.matron = true>>
<<applyExperience 'dominance' 15 'very' $SEEN_STRANGER>>
<<else>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_hallway.png" setup.charImage("npc_boss_matron")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dominance") >= 15>>
You draw yourself up and focus your dominant energy at <<=setup.getNpcName('npc_boss_matron','formal')>> as you order her to help you to find <<=ps(setup.getNpcName('npc_boss','formal'))>> secret files.<br>
<br>
The woman shudders submissively, bowing before replying, her voice huskier and tinged with desire. "@@.npc_boss_matron;Of course, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. <<if $npc_boss_matron.flags.talk.help>>Would that I could proved the assistance you seek, but, as I already told you, entering<<else>>Entering<</if>> <<his npc_boss>> private study is only allowed by maids, you would need to speak to one of them about such things.@@"<br>
<br>
You thank her for the help, but conclude that she will be of no further use to you today.<br>
<br>
[<<moveTo "event_boss_home_matron_talk_1" "Talk about something else." 60 "<<set $scene.ask = ''>>">>]
<<else>>
You draw yourself up and attempt to command <<=setup.getNpcName('npc_boss_matron','formal')>> but she just titters in amusement.<br>
<br>
"@@.npc_boss_matron;Oh aren't you adorable!, But, dear, I'm used to being around <<=setup.getNpcName('npc_boss','formal')>> and compared to <<him npc_boss>>, well... you've got a lot of work to do in terms of exuding dominance. Still, keep at it — a few others have tried that route and you never know, maybe under all that bluster <<=setup.getNpcName('npc_boss','formal')>> wants more than a slave, but a right-hand Domme to rule by <<his npc_boss>> side?@@" She shrugs, seemingly otherwise unphased by your attempt.<br>
<br>
[<<moveTo "event_boss_home_matron_talk_1" "Well, that didn't work..." 60 "<<set $scene.ask = ''>>">>]
<</if>>
</div>/*#
#desc: fight "matron"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 30>>
<<applyExperience 'martial_arts' 15 'normal' $SEEN_STRANGER>>
<<applyExperience 'strength' 15 'normal' $SEEN_STRANGER>>
<<set $npc_boss.flags.mansion.beat.matron = true>>
<<set $npc_boss.flags.mansion.subdue.matron = true>>
<<else>>
<<set _ma = setup.getTotalValue("martial_arts")>>
<<applyExperience 'martial_arts' _ma 'little' $SEEN_STRANGER>>
<<set _str = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _str 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_hallway.png" setup.charImage("npc_boss_matron")>>
<div id="invframe" class="scrolltext">
You take a swing at <<=setup.getNpcName('npc_boss_matron','formal')>>,
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 30>>
stunning her and then overpowering her. You quickly drag her into a nearby room and tie her up, but a brief interrogation reveals
<<if $npc_boss_matron.flags.talk.help>>
nothing you did not already know — your goal is almost certainly is in <<=ps(setup.getNpcName('npc_boss','formal'))>> private study, but the only ones who can enter such unescorted are maids.
<<else>>
little more than that what you seek is going to be in <<=ps(setup.getNpcName('npc_boss','formal'))>> private study, but the only ones who can enter such unescorted are maids.
<</if>>
<br><br>
You leave her tied up and consider what to do next.<br>
<br>
[<<moveTo "event_boss_home_root" 'Go somewhere else.' 300>>]
<<else>>
but, with surprising strength, she brushes the blow aside.<br>
<br>
"@@.npc_boss_matron;Tsk, tsk. That wasn't very nice. I'll warn you that the house rule is that attacking one of your fellow wife-applicants is normally punished very harshly. I won't report you but if you try something like that with anyone else, well... it is liable to end very badly for you.@@"<br>
<br>
[<<moveTo "event_boss_home_matron_talk_1" "Well that didn't work..." 60 "<<set $scene.ask = ''>>">>]
<</if>>
</div>/*#
#desc: give "matron" cum
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.has_cum = false>>
<<set $npc_boss.flags.mansion.cum.matron = true>>
<<set $npc_boss.flags.mansion.subdue.matron = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_hallway.png" setup.charImage("npc_boss_matron")>>
<div id="invframe" class="scrolltext">
You note that <<=setup.getNpcName('npc_boss','formal')>> pumped your ass full of <<his npc_boss>> thick, wonderful <<getWordCum>> and ask if she'd like to suck it out?<br>
<br>
Her normal relaxed decorum slips as you note the almost frantic hunger in her eyes. "@@.npc_boss_matron;Yes... god yes...@@"<br>
<br>
In moments she is on her knees, ravenously licking her lips as you turn to present your ass. You gasp at the enthusiasm with which she sucks, the depth to which her tongue probes as she moans into your rear, almost desperately licking up every drop before eventually pulling back, a somewhat dazed expression on her face as she licks her lips.<br>
<br>
"@@.npc_boss_matron;So good... I'll never get tired of that taste, and eating it out of you was almost as heavenly as drinking it straight from the source...@@"<br>
<br>
She looks almost drugged and you realise that she actually came just from eating <<=ps(setup.getNpcName("npc_boss","formal"))>> <<getWordCum>> out of your ass...<br>
<br>
She takes a moment to compose herself. "@@.npc_boss_matron;Apologies for my distraction. The taste of the <<=ps(setup.getNpcName("npc_boss","formal"))>> is so powerful... perhaps too powerful.@@" She smiles, eyes twinkling as she continues. "@@.npc_boss_matron;There was a previous inhabitant of this mansion, <<=ps(setup.getNpcName("generic_female1","custom", "Dr. Gula"))>> was her name. She met the <<=setup.getNpcName("npc_boss","title")>> at a conference or something and became infatuated with <<him npc_boss>>, as so many discerning women do. Perhaps unfortunately for her, however... her field of study was nutritional science, had been part on the team that first perfected BoiLess, I hear. In any case, she applied that intellect to duplicating the precise composition of what you so generously gifted me... and she succeeded, only to then gorge herself uncontrollably. This displeased the <<=setup.getNpcName("npc_boss","title")>>, both that she would seek such a shortcut... and that in so indulging she had neglected the first duty of a woman, to make themselves pleasing in all ways to men.@@" <<=setup.getNpcName('npc_boss_matron','formal')>> shakes her head.<br>
<br>
"@@.npc_boss_matron;<<=setup.getNpcName("npc_boss","formal")>> was beyond displeased, and, as punishment, <<he npc_boss>> gave her over to <<=setup.getNpcName("npc_work_doctor","formal")>>, my understanding is the <<=setup.getNpcName("npc_work_doctor","title")>> amused <<him npc_work_doctor>>self to use her as a test subject for refining a cum-only diet.@@" <<=setup.getNpcName('npc_boss_matron','formal')>> seems mildly enthralled by this idea.<br>
<br>
"@@.npc_boss_matron;Ah, look at me, prattling on! Unfortunately for you I really have nothing else to offer beyond the information I was already giving freely... still, I quite appreciate that you chose me for such a wonderful gift, but one that is to be taken in moderation! I thank you, again, and wish you luck in your endeavours.@@"<br>
<br>
[<<moveTo "event_boss_home_matron_talk_1" "Talk about something else." 60 "<<set $scene.ask = ''>>">>]
</div>/*#
#desc: npc_boss infiltration
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Mansion">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_hallway.png">>
<div id="invframe" class="scrolltext">
Looking around <<=ps(setup.getNpcName('npc_boss','formal'))>> ostentatious mansion you consider what to try next.<br>
<br>
<<if $npc_boss.flags.mansion.beat.matron>>
[@@.link_locked;You've already subdued <<=setup.getNpcName("npc_boss_matron","formal")>>, there really isn't anything else she can offer you this evening.@@]<br>
<<else>>
[<<moveTo "event_boss_home_matron_talk_1" 'Visit <<=setup.getNpcName("npc_boss_matron","formal")>>, the "matron" of the house.' 180 "<<set $scene.ask = ''>>">>]<br>
<</if>>
<<if $npc_boss.flags.mansion.beat.golddigger>>
[@@.link_locked;You've already subdued <<=setup.getNpcName("npc_boss_golddigger","formal")>>, there really isn't anything else she can offer you this evening.@@]<br>
<<elseif $npc_boss.flags.mansion.cum.golddigger>>
[@@.link_locked;You have already traded <<=setup.getNpcName("npc_boss_golddigger","formal")>> <<=ps(setup.getNpcName('npc_boss','formal'))>> cum, you have no further business with her.@@]<br>
<<elseif $scene.met_golddigger>>
[<<moveTo "event_boss_home_golddigger_talk_1" 'Visit <<=setup.getNpcName("npc_boss_golddigger","formal")>>, the "gold-digger" would-be-wife.' 180 "<<set $scene.ask = ''>>">>]<br>
<<else>>
[<<moveTo "event_boss_home_golddigger_talk_1" 'Go exploring some of the other bedrooms.' 180 "<<set $scene.ask = ''>>">>]<br>
<</if>>
<<if $npc_boss.flags.mansion.beat.cruel_sissy>>
[@@.link_locked;You've already subdued <<=setup.getNpcName("npc_boss_cruel_sissy","nickname")>>, there really isn't anything else she can offer you this evening.@@]<br>
<<elseif $npc_boss.flags.mansion.cum.cruel_sissy>>
[@@.link_locked;You have already traded <<=setup.getNpcName("npc_boss_cruel_sissy","nickname")>> <<=ps(setup.getNpcName('npc_boss','formal'))>> cum, you have no further business with her.@@]<br>
<<elseif $scene.met_cruel_sissy>>
<<if $fetish.sissy>>
[<<moveTo "event_boss_home_cruel_sissy_talk_1" 'Visit <<=setup.getNpcName("npc_boss_cruel_sissy","nickname")>>, the sissy with a cruel streak.' 180>>]<br>
<<else>>
[<<moveTo "event_boss_home_cruel_sissy_talk_1" 'Visit <<=setup.getNpcName("npc_boss_cruel_sissy","nickname")>>, the cruel cutie.' 180>>]<br>
<</if>>
<<else>>
[<<moveTo "event_boss_home_cruel_sissy_talk_1" 'Go explore the more public parts of the mansion.' 180>>]<br>
<</if>>
<<if $npc_boss.flags.mansion.subdue.dominatrix && !$scene.study_schedule>>
[<<moveTo "event_boss_home_dominatrix_talk_2" 'Tell <<=setup.getNpcName("npc_boss_dominatrix","formal")>> to put you on the cleaning schedule for <<=ps(setup.getNpcName("npc_boss","formal"))>> private study.' 180 "<<set $scene.ask = 'key'>>">>]<br>
<<elseif $npc_boss.flags.mansion.beat.dominatrix>>
[@@.link_locked;You've already subdued <<=setup.getNpcName("npc_boss_dominatrix","formal")>>, there really isn't anything else she can offer you this evening.@@]<br>
<<elseif $npc_boss.flags.mansion.cum.dominatrix>>
[@@.link_locked;You have already traded <<=setup.getNpcName("npc_boss_dominatrix","formal")>> <<=ps(setup.getNpcName('npc_boss','formal'))>> cum, you have no further business with her.@@]<br>
<<elseif $scene.met_dominatrix>>
[<<moveTo "event_boss_home_dominatrix_talk_1" 'Visit <<=setup.getNpcName("npc_boss_dominatrix","formal")>>, the resident dominatrix.' 180 "<<set $scene.ask = ''>>">>]<br>
<<else>>
[<<moveTo "event_boss_home_dominatrix_talk_1" "Go searching for the mansion's sex dungeon." 180 "<<set $scene.ask = ''>>">>]<br>
<</if>>
<<if $npc_boss.flags.mansion.subdue.maid && !($scene.study_key || $npc_boss_maid.flags.maid_pass)>>
[<<moveTo "event_boss_home_maid_talk_2" 'Demand the key to <<=ps(setup.getNpcName("npc_boss","formal"))>>, private study from the maid.' 180 "<<set $scene.ask = 'key'>>">>]<br>
<<elseif $npc_boss.flags.mansion.beat.maid>>
[@@.link_locked;You've already subdued <<=setup.getNpcName("npc_boss_maid","formal")>>, there really isn't anything else she can offer you this evening.@@]<br>
<<elseif $npc_boss.flags.mansion.cum.maid>>
[@@.link_locked;You have already traded the maid <<=ps(setup.getNpcName('npc_boss','formal'))>> cum, you have no further business with her.@@]<br>
<<elseif $scene.met_maid>>
[<<moveTo "event_boss_home_maid_talk_1" 'Visit <<=setup.getNpcName("npc_boss_maid","formal")>>, the maid.' 180 "<<set $scene.ask = ''>>">>]<br>
<<else>>
[<<moveTo "event_boss_home_maid_talk_1" 'See if you can track down a maid...' 180 "<<set $scene.ask = ''>>">>]<br>
<</if>>
[<<moveTo "event_boss_home_study_1" 'Go "clean" "<<=ps(setup.getNpcName("npc_boss","formal"))>> private study...' 180>>]<br>
<<if !$scene.sneak>>
[<<moveTo "event_boss_home_visit_6" 'Give up your search and slip back into bed.' 600>>]
<<else>>
[<<moveTo "event_boss_home_sneak_7" 'Give up your search and try to sneak out of the mansion.' 600>>]
<</if>>
</div>/*#
#desc: visit with golddigger
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$npc_boss_golddigger.profile>>
<<set $npc_boss_golddigger.profile = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Sitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_sitting.png" setup.charImage("npc_boss_golddigger")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
Most of the bedroom doors you checked are either locked or unoccupied, but you eventually come to a quite fancy room where an elegantly dressed woman is checking herself in the mirror.<br>
<br>
She glances over at you suspiciously. "@@.npc_boss_golddigger;Who are you? And what do you want?@@"<br>
<br>
You explain that you're new to the mansion and you're just looking around.<br>
<br>
She introduces herself as <<=setup.getNpcName("npc_boss_golddigger","formal")>> before looking you over and then sniffing in derision, turning back to the mirror clearly unimpressed with you.
<<else>>
<<=setup.getNpcName("npc_boss_golddigger","formal")>> glances at you briefly.<br>
<br>
"@@.npc_boss_golddigger;It's you again. What do you want?@@"
<</if>>
<br><br>
[<<moveTo "event_boss_home_golddigger_talk_2" 'Continue.' 180 "<<set $scene.ask=''>>">>]
</div>/*#
#desc: talk with golddigger
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ask != "">>
<<set $npc_boss_golddigger.flags.talk[$scene.ask] = true>>
<<if $scene.ask == "necklace">>
<<deleteItem "expensive_necklace">>
<<addItem "cruel_sissy_key">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Sitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_sitting.png" setup.charImage("npc_boss_golddigger")>>
<div id="invframe" class="scrolltext">
<<switch $scene.ask>>
<<case "">>
<<=setup.getNpcName("npc_boss_golddigger","formal")>> is at best half paying attention to you as she fiddles with her makeup.
<<case "identity">>
You ask <<=setup.getNpcName("npc_boss_golddigger","formal")>> about herself and how she came to the mansion.<br>
<br>
"@@.npc_boss_golddigger;Money, of course. Oh, do not act surprised — with how much <<=setup.getNpcName('npc_boss','formal')>> is worth anyone here who hasn't thought of it is lying. I am attracted to rich and powerful <<men npc_boss>> — and of the few that are as loaded as <<=setup.getNpcName('npc_boss','formal')>> well... <<he npc_boss>> is by far the most attractive. I've already turned <<his npc_boss>> eye, just a matter of finding the perfect style and <<he npc_boss>> will surely be mine.@@"<br>
<br>
She puts down a brush and examines her reflection before selecting her next tool. "@@.npc_boss_golddigger;Do not worry. I am perfectly fine with <<him npc_boss>> continuing to have handmaidens and such around — putting up with mistresses and side-pieces is a simple price to pay to share in <<his npc_boss>> wealth. <<He npc_boss>> can spread <<his npc_boss>> seed as wide as <<he npc_boss>> likes... so long as I have unrestricted access to <<his npc_boss>> nigh-unlimited wealth.@@"
<<case "others">>
You ask <<=setup.getNpcName("npc_boss_golddigger","formal")>> about the other inhabitants of the mansion. "@@.npc_boss_golddigger;Love-struck idiots, brainless bimbos and helpless slaves... I can certainly understand why someone as handsome and powerful as <<=setup.getNpcName('npc_boss','formal')>> would attract such attention, but they are wasting their time if they think they will have <<him npc_boss>> over me — and that goes for you as well. Suck <<his npc_boss>> dick and bend over for <<him npc_boss>> all you want, but recognise that, in the end, <<he npc_boss>>, and all <<his npc_boss>> riches, will be mine.@@"
<<case "help">>
You ask <<=setup.getNpcName("npc_boss_golddigger","formal")>> for help.<br>
<br>
"@@.npc_boss_golddigger;Help? Well... I suppose there is one thing you could do for me. You see, there is a necklace I had been eyeing, but <<=setup.getNpcName('npc_boss','formal')>> has not yet agreed to purchase it for me... perhaps if you could obtain it so that I might surprise <<him npc_boss>> I could give you something of use...@@" She describes the necklace, it seems to be the latest offering from some ultra high-end fashion group, likely to be very expensive.
<<case "necklace">>
You offer <<=setup.getNpcName("npc_boss_golddigger","formal")>> the necklace you bought.<br>
<br>
Her eyes instantly light up as she almost snatches it from your grasp. "@@.npc_boss_golddigger;Yes... that is perfect.@@" She quickly fastens it around her neck and begins admiring herself in the mirror. "@@.npc_boss_golddigger;Wonderful... as to your reward...@@" She tosses you a small key. "@@.npc_boss_golddigger;That should fit most of the basic chastity devices used in the mansion... <<=setup.getNpcName('npc_boss','formal')>> only gives out a few of those keys and they are quite prized... I am sure you will find a use for it. Now be off, I need to figure out the perfect makeup shade to compliment this new piece.@@"
<<default>>
ERROR: unexpected scene.ask <<=$scene.ask>>
<</switch>>
<br><br>
<<if $npc_boss.flags.mansion.dominate.golddigger>>
She looks back at you, breathless and submissive.<br>
<br>
<</if>>
<<if $npc_boss_golddigger.flags.talk.identity>>
[@@.link_locked;You've already asked about herself.@@]<br>
<<else>>
[<<moveTo "event_boss_home_golddigger_talk_2" 'Ask who she is.' 180 "<<set $scene.ask='identity'>>">>]<br>
<</if>>
<<if $npc_boss_golddigger.flags.talk.others>>
[@@.link_locked;You've already asked her thoughts on the other inhabitants of the house.@@]<br>
<<else>>
[<<moveTo "event_boss_home_golddigger_talk_2" 'Ask about the other women living in the mansion.' 180 "<<set $scene.ask='others'>>">>]<br>
<</if>>
<<if $npc_boss_golddigger.flags.talk.help>>
<<if setup.checkItemInInventory("expensive_necklace")>>
[<<moveTo "event_boss_home_golddigger_talk_2" 'Offer her the necklace you bought.' 180 "<<set $scene.ask='necklace'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the necklace she was looking for.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_boss_home_golddigger_talk_2" 'Ask her for help.' 180 "<<set $scene.ask='help'>>">>]<br>
<</if>>
[<<moveTo "event_boss_home_golddigger_dominate" 'Try to dominate her.' 300>>]<br>
[<<moveTo "event_boss_home_golddigger_fight" 'Fight her.' 300>>]<br>
<<if !$scene.sneak && $fetish.cum>>
<<if $scene.has_cum>>
[<<moveTo "event_boss_home_golddigger_cum" 'Offer her the cum <<=setup.getNpcName("npc_boss","formal")>> left in your ass.' 300>>]<br>
<<else>>
[@@.link_locked;You have already given away <<=ps(setup.getNpcName('npc_boss','formal'))>> <<getWordCum>>.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_boss_home_root" 'Say goodbye and go somewhere else in the house.' 300>>]
</div>/*#
#desc: dominate "golddigger"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("dominance") >= 18>>
<<set $npc_boss.flags.mansion.dominate.golddigger = true>>
<<set $npc_boss.flags.mansion.subdue.golddigger = true>>
<<applyExperience 'dominance' 18 'very' $SEEN_STRANGER>>
<<addItem "cruel_sissy_key">>
<<else>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Sitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_sitting.png" setup.charImage("npc_boss_golddigger")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dominance") >= 18>>
You unleash the full force of your trained and honed dominant abilities. <<=setup.getNpcName("npc_boss_golddigger","formal")>> holds her breath and then slides from her seat to bow before you.<br>
<br>
"@@.npc_boss_golddigger;I am sorry, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, I—I apologise if I offended you, I am unaccustomed to an authority other than <<=setup.getNpcName("npc_boss","formal")>> but you... you must have learned from <<him npc_boss>> personally, I have never felt such a way before...<<if !$npc_boss.fem>> particularly with a woman!<</if>>@@"<br>
<br>
She seems to think for a moment before digging for something at the back of a drawer. "@@.npc_boss_golddigger;Here, count this as my offering to you. It is a chastity key that should fit most of the devices used here at the mansion... <<=setup.getNpcName("npc_boss","formal")>> gives them out but seldom, having it should be quite useful to you when dealing with some of the more desperate and uninhibited other inhabitants here.@@"<br>
<br>
You pocket the key and consider what you will do next.<br>
<br>
[<<moveTo "event_boss_home_root" 'Go somewhere else.' 300>>]
<<else>>
You attempt to dominate <<=setup.getNpcName("npc_boss_golddigger","formal")>> but she takes one glance at you and then rolls her eyes. "@@.npc_boss_golddigger;Really? You think that is going to impress me? You are as foolish as the so-called <<=setup.getNpcName("npc_boss_dominatrix","formal")>> — the only power that matters in this house is <<=setup.getNpcName("npc_boss","formal")>>, you are but pathetic pretenders to <<his npc_boss>> throne. Quite unladylike, I would say you would be far better emphasising your feminine grace than such crude behaviour, but you would remain far below myself, so what would be the point?@@"<br>
<br>
[<<moveTo "event_boss_home_golddigger_talk_2" "Well that didn't work..." 60 "<<set $scene.ask = ''>>">>]
<</if>>
</div>/*#
#desc: fight "golddigger"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 15>>
<<applyExperience 'martial_arts' 7 'normal' $SEEN_STRANGER>>
<<applyExperience 'strength' 7 'normal' $SEEN_STRANGER>>
<<set $npc_boss.flags.mansion.beat.golddigger = true>>
<<set $npc_boss.flags.mansion.subdue.golddigger = true>>
<<addItem "cruel_sissy_key">>
<<else>>
<<set _ma = setup.getTotalValue("martial_arts")>>
<<applyExperience 'martial_arts' _ma 'little' $SEEN_STRANGER>>
<<set _str = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _str 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Sitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_sitting.png" setup.charImage("npc_boss_golddigger")>>
<div id="invframe" class="scrolltext">
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 15>>
<<=ps(setup.getNpcName("npc_boss_golddigger","formal"))>> lack of attention has her almost totally off-guard for your attack and you swiftly subdue her and toss her on the bed where the built-in restraints prove quite effective at allowing you to bind her in place.<br>
<br>
She thrashes around and moans through the gag as you search her battlestation, finding what looks like a chastity key — her even more frenetic reaction telling you that this could definitely be useful.<br>
<br>
[<<moveTo "event_boss_home_root" 'Go somewhere else.' 300>>]
<<else>>
You try to sneak up behind <<=setup.getNpcName("npc_boss_golddigger","formal")>> but the fact she is literally looking in a mirror results in her instead triggering some sort of silent alarm before you can subdue her.<br>
<br>
A Valkyrie is suddenly in the room with you, and against that cybernetic monstrosity your feeble martial skills are utterly useless.<br>
<br>
[<<moveTo "event_boss_home_fight_bad_end_1" 'Uh-oh.' 600>>]
<</if>>
</div>/*#
#desc: give "golddigger" cum
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.has_cum = false>>
<<set $npc_boss.flags.mansion.cum.golddigger = true>>
<<set $npc_boss.flags.mansion.subdue.golddigger = true>>
<<applyExperience 'bdsm' 13 'normal' $SEEN_STRANGER>>
<<addItem "cruel_sissy_key">>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Sitting Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_sitting.png" setup.charImage("npc_boss_golddigger")>>
<div id="invframe" class="scrolltext">
You offer <<=setup.getNpcName("npc_boss_golddigger","formal")>> the cum <<=setup.getNpcName('npc_boss','formal')>> deposited in your rear and she pauses her primping, biting her lip as she tries to compose herself.<br>
<br>
"@@.npc_boss_golddigger;You slattern... stealing my <<man npc_boss>>'s white gold, but yes, I will re-claim my prize, now bend over and give up what I am owed!@@"<br>
<br>
You bend over the bed as she kneels down behind and eats your ass with almost ravenous hunger. As her tongue spears deep she painfully pinches and slaps your rear, talking about how being a cum repository is all that you are good for, and that you should be grateful for the opportunity to make an offering to your betters.<br>
<br>
You shudder submissively as she finishes off with a final slap.<br>
<br>
"@@.npc_boss_golddigger;Almost as good as directly from the source... here, a trinket for your offering.@@" She hands you a small key "@@.npc_boss_golddigger;That will fit most of the chastity devices in the house, for those wearing such. A rare prize for <<=setup.getNpcName('npc_boss','formal')>> to hand out... I am sure you will come across a use for it.@@"<br>
<br>
[<<moveTo "event_boss_home_root" 'Go somewhere else.' 300>>]
</div>/*#
#desc: visit with cruel sissy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$npc_boss_cruel_sissy.profile>>
<<set $npc_boss_cruel_sissy.profile = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bar.png" setup.charImage("npc_boss_cruel_sissy")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You wander through the house without anyone being interested in talking to you until you find a full on bar.<br>
<br>
Sitting alone at one end of the bar is a cute <<if $fetish.sissy>>sissy<<else>>girl<</if>> who looks over at you with a cruel smile.<br>
<br>
"@@.npc_boss_cruel_sissy;Well hello there... what do we have here?@@" Their gaze scans over your body.
<<if $player.body_ref.penis && !(setup.checkItemTypeWorn("cage") && !setup.isCage())>>
<<if $fetish.sissy>>
"@@.npc_boss_cruel_sissy;A fellow sissy! Don't think I'll cut you any slack for our shared background — <<=setup.getNpcName('npc_boss','formal')>> is going to be mine, and you would be best staying out of my way.@@"
<<else>>
"@@.npc_boss_cruel_sissy;Hmm... A fellow traveller... don't think I can't see that cute bulge between your legs, but don't expect me to cut you any slack for our shared background — <<=setup.getNpcName('npc_boss','formal')>> is going to be mine, and you would be best staying out of my way.@@"
<</if>>
<<else>>
"@@.npc_boss_cruel_sissy;Aren't you cute, but in here we're rivals, and I won't let you, or anyone else, get in the way of making <<=setup.getNpcName('npc_boss','formal')>> my own.@@"
<</if>>
They take another sip of their drink, "@@.npc_boss_cruel_sissy;By the way, you can call me <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>>... preferably shouting it while I'm breaking off a piece of that cute ass of yours.@@"<br>
<br>
You've only known <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> for a few moments and already you can feel a sense of cruel menace. You wonder if they were always this way or if they learned it from <<=setup.getNpcName('npc_boss','formal')>>?
<<else>>
You find <<=setup.getNpcName("npc_boss_cruel_sissy","formal")>> still hanging out at the bar, they wink at you as they wait to see what you want.
<</if>>
<br><br>
[<<moveTo "event_boss_home_cruel_sissy_talk_2" 'Continue.' 180 "<<set $scene.ask=''>>">>]
</div>/*#
#desc: talk with cruel sissy
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ask != "">>
<<set $npc_boss_cruel_sissy.flags.talk[$scene.ask] = true>>
<<if $scene.ask == "key">>
<<deleteItem "cruel_sissy_key">>
<<addItem "strapon_boss">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bar.png" setup.charImage("npc_boss_cruel_sissy")>>
<div id="invframe" class="scrolltext">
<<switch $scene.ask>>
<<case "">>
<<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> swirls her drink and waits to see what you are going to do.
<<case "identity">>
You ask <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> who she is and they shrug.<br>
<br>
"@@.npc_boss_cruel_sissy;Oh just your standard <<if $fetish.sissy>>sissy<<else>>girl<</if>> looking to claim a <<if $npc_boss.fem>>wife<<else>>husband<</if>> — and get revenge on all the other women that are getting in the way of that dream.@@" She gestures vaguely at the rest of the house "@@.npc_boss_cruel_sissy;Most of these other bitches... they had this on easy mode. I fought and clawed my way for every ounce of femininity, and I'll do the same to prove to <<=setup.getNpcName('npc_boss','formal')>> that I, not them, am the perfect girl to serve <<his npc_boss>> needs — from hanging dutifully off <<his npc_boss>> arm to sucking <<his npc_boss>> cock and bending over and serving <<his npc_boss>> every whim.@@"
<<case "others">>
You ask <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> about the mansion's other inhabitants.<br>
<br>
"@@.npc_boss_cruel_sissy;Them? Obstacles to be overcome. Just like everyone else. Word to the wise — you're welcome to serve <<=setup.getNpcName('npc_boss','formal')>>, because that sort of thing makes <<him npc_boss>> happy, but do not get in my way in making <<him npc_boss>> mine.@@"
<<case "help">>
Choosing your words carefully you ask if there is anything you could do to assist <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>>.<br>
<br>
She smiles in amusement, clearly taking your hidden meaning. "@@.npc_boss_cruel_sissy;Quid pro quo, hmm? Tell you what — I'm getting real sick of being locked in this chastity cage. Certainly <<=setup.getNpcName('npc_boss','formal')>> prefers me to be locked up, but not being able to force someone to lick my <<if $fetish.sissy>>sissy <</if>>clitty can really mess with my ability to put my competition in its place.@@"<br>
<br>
She reaches under her skirt to display the "offending" device... and the large strap-on cock belted to her inner thigh. "@@.npc_boss_cruel_sissy;You like that, don't you?@@" She states with a grin as you glance at the dildo "@@.npc_boss_cruel_sissy;It's an exact clone of <<=ps(setup.getNpcName('npc_boss','formal'))>> perfect member... and I'll trade it to you for a key.@@"
<<case "key">>
You offer <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> the chastity key and they instantly snatch it out of your fingers.<br>
<br>
"@@.npc_boss_cruel_sissy;Ohoho! Yes, this is EXACTLY what I was looking for.@@"<br>
<br>
Flipping up their skirt they unlock their cage, sighing with relief as the steel device parts and their large member pops free. "@@.npc_boss_cruel_sissy;Mmm, feels so good to be out on parole for a bit.@@" They take a moment to unbuckle the strap-on harness and hand it to you, "@@.npc_boss_cruel_sissy;Here, as promised. Now I've got a couple misbehaving bitches that are in need of a harsh face-fuck. It's just so much more personal when I can feel them choking on my <<if $fetish.sissy>>sissy <</if>>clitty, and they can't just pretend it's <<=setup.getNpcName('npc_boss','formal')>> the whole time.@@"<br>
<br>
Skirt draped over their raging hard-on they walk off, leaving the strap-on on the bar for you take with you.
<<default>>
ERROR: unexpected scene.ask <<=$scene.ask>>
<</switch>>
<br><br>
<<if $npc_boss.flags.mansion.dominate.cruel_sissy>>
She looks back at you, breathless and submissive.<br>
<br>
<</if>>
<<if $npc_boss_cruel_sissy.flags.talk.identity>>
[@@.link_locked;You've already asked about herself.@@]<br>
<<else>>
[<<moveTo "event_boss_home_cruel_sissy_talk_2" 'Ask who she is.' 180 "<<set $scene.ask='identity'>>">>]<br>
<</if>>
<<if $npc_boss_cruel_sissy.flags.talk.others>>
[@@.link_locked;You've already asked her thoughts on the other inhabitants of the house.@@]<br>
<<else>>
[<<moveTo "event_boss_home_cruel_sissy_talk_2" 'Ask about the other women living in the mansion.' 180 "<<set $scene.ask='others'>>">>]<br>
<</if>>
<<if $npc_boss_cruel_sissy.flags.talk.help>>
<<if setup.checkItemInInventory("cruel_sissy_key")>>
[<<moveTo "event_boss_home_cruel_sissy_talk_2" 'Offer her the key to her chastity cage.' 180 "<<set $scene.ask='key'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the key to her chastity cage.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_boss_home_cruel_sissy_talk_2" 'Ask her for help.' 180 "<<set $scene.ask='help'>>">>]<br>
<</if>>
[<<moveTo "event_boss_home_cruel_sissy_dominate" 'Try to dominate her.' 300>>]<br>
[<<moveTo "event_boss_home_cruel_sissy_fight" 'Fight her.' 300>>]<br>
<<if !$scene.sneak && $fetish.cum>>
<<if $scene.has_cum>>
[<<moveTo "event_boss_home_cruel_sissy_cum" 'Offer her the cum <<=setup.getNpcName("npc_boss","formal")>> left in your ass.' 300>>]<br>
<<else>>
[@@.link_locked;You have already given away <<=ps(setup.getNpcName('npc_boss','formal'))>> <<getWordCum>>.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_boss_home_root" 'Say goodbye and go somewhere else in the house.' 300>>]
</div>/*#
#desc: dominate "cruel_sissy"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("dominance") >= 17>>
<<set $npc_boss.flags.mansion.dominate.cruel_sissy = true>>
<<set $npc_boss.flags.mansion.subdue.cruel_sissy = true>>
<<applyExperience 'dominance' 17 'very' $SEEN_STRANGER>>
<<addItem "strapon_boss">>
<<else>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bar.png" setup.charImage("npc_boss_cruel_sissy")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dominance") >= 17>>
You stand over <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> and command her to assist you in your endeavours.<br>
<br>
There is a moment of hesitation... and then she slinks off the bar-stool to the floor, kneeling submissively before you.<br>
<br>
"@@.npc_boss_cruel_sissy;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I am sorry for my rudeness, here, you deserve this more than I do.@@"<br>
<br>
She unbuckles the strap-on from between her legs and offers it up to you.<br>
<br>
<<if $npc_boss_cruel_sissy.flags.talk.identity>>
[@@.link_locked;You've already asked about herself.@@]<br>
<<else>>
[<<moveTo "event_boss_home_cruel_sissy_talk_2" 'Ask who she is.' 180 "<<set $scene.ask='identity'>>">>]<br>
<</if>>
<<if $npc_boss_cruel_sissy.flags.talk.others>>
[@@.link_locked;You've already asked her thoughts on the other inhabitants of the house.@@]<br>
<<else>>
[<<moveTo "event_boss_home_cruel_sissy_talk_2" 'Ask about the other women living in the mansion.' 180 "<<set $scene.ask='others'>>">>]<br>
<</if>>
<<if $npc_boss_cruel_sissy.flags.talk.help>>
<<if setup.checkItemInInventory("cruel_sissy_key")>>
[<<moveTo "event_boss_home_cruel_sissy_talk_2" 'Offer her the key to her chastity cage.' 180 "<<set $scene.ask='key'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the key to her chastity cage.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_boss_home_cruel_sissy_talk_2" 'Ask her for help.' 180 "<<set $scene.ask='help'>>">>]<br>
<</if>>
[<<moveTo "event_boss_home_root" 'Say goodbye and go somewhere else in the house.' 300>>]
<<else>>
You draw yourself up and order <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> to help you out.<br>
<br>
There is a moment of brief silence as <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> stares at you and then they start laughing. "@@.npc_boss_cruel_sissy;Help you out? Are you trying to dominate me? Oh, I'll show you "help" you stupid <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>girl<</if>>. Help you to my big cock.@@"<br>
<br>
<<if $fetish.get_raped>>
[<<moveTo "event_boss_home_cruel_sissy_dominate_fail" 'Oh crap.' 300 "<<set $scene.suck=true>>">>]
<<else>>
[<<moveTo "event_boss_home_cruel_sissy_dominate_fail" 'Take your punishment.' 300 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_boss_home_cruel_sissy_dominate_fail" 'Back away.' 300 "<<set $scene.suck=false>>">>]
<</if>>
<</if>>
</div>/*#
#desc: dominate "cruel_sissy"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.suck>>
<<applyExperience 'oral' $npc_boss.penis_size 'very' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bar.png" setup.charImage("npc_boss_cruel_sissy")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
One hand gripping your hair, <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> unbuckles the dildo strapped to their thigh with quick-draw skill, soon jamming the artificial clone of <<=setup.getNpcName('npc_boss','formal')>> down your throat for a nose-bruising face-fuck.<br>
<br>
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
A <<getWordPenis "npc_boss">> of this size is well within your skill level, even at the aggressive speed <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> is using to pound your throat.
<<else>>
You're just able to handle a <<getWordPenis "npc_boss">> of this size... though the rough speed at which <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> is pounding your throat pushes your abilities to the limit.
<</if>>
<br><br>
"@@.npc_boss_cruel_sissy;Yeah, take it, you cock-hungry slut. Show what a whore you are for <<=setup.getNpcName('npc_boss','formal')>>, your throat will sheath <<him npc_boss>> anywhere, any time!@@"
<<else>>
"@@.npc_boss_cruel_sissy;That's right, choke on it you <<if $fetish.sissy>>sissy<<else>>bitch<</if>> — you should be thanking me for this practice you no-skill slut.@@"
<</if>>
<br><br>
You moan in submissive surrender as <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> takes several minutes to make her "point" before relaxing her grip and letting you catch your breath.<br>
<br>
"@@.npc_boss_cruel_sissy;Now fuck off before I break you further.@@"<br>
<br>
[<<moveTo "event_boss_home_root" 'Leave quickly.' 180>>]
<<else>>
You dodge backwards before <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> can grab hold of you but, rather than rising from their stool, they just smirk. "@@.npc_boss_cruel_sissy;Can't dish it out... AND are unable to take it? Pathetic. You make me wonder how such a failure could have made it this far with <<=setup.getNpcName('npc_boss','formal')>>... or maybe it just takes <<if $npc_boss.fem>>someone more dominant<<else>>a real man<</if>> to put you in your place? And <<he npc_boss>> is certainly that...@@"<br>
<br>
Distracted by thoughts of <<=setup.getNpcName('npc_boss','formal')>>, <<=setup.getNpcName('npc_boss_cruel_sissy','nickname')>> seem to have forgotten your transgression.<br>
<br>
[<<moveTo "event_boss_home_root" 'Leave before they remember.' 180>>]
<</if>>
</div>/*#
#desc: fight "cruel_sissy"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 25>>
<<applyExperience 'martial_arts' 12 'normal' $SEEN_STRANGER>>
<<applyExperience 'strength' 12 'normal' $SEEN_STRANGER>>
<<set $npc_boss.flags.mansion.beat.cruel_sissy = true>>
<<set $npc_boss.flags.mansion.subdue.cruel_sissy = true>>
<<addItem "strapon_boss">>
<<else>>
<<set _ma = setup.getTotalValue("martial_arts")>>
<<applyExperience 'martial_arts' _ma 'little' $SEEN_STRANGER>>
<<set _str = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _str 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bar.png" setup.charImage("npc_boss_cruel_sissy")>>
<div id="invframe" class="scrolltext">
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 25>>
<<=setup.getNpcName("npc_boss_cruel_sissy","nickname")>> is taken off-guard, her reactions slowed by alcohol as you take her off her stool and drag her behind the bar to tie her up.<br>
<br>
Rage burns in her eyes as you double check that she is securely gagged before unbuckling the strap-on she's wearing and take it with you.<br>
<br>
[<<moveTo "event_boss_home_root" 'Go somewhere else.' 300>>]
<<else>>
You take a swing at <<=setup.getNpcName("npc_boss_cruel_sissy","nickname")>> but they fade it without even getting off their barstool. Even more surprising is that moments later a Valkyrie appears in the room with you, and against that cybernetic monstrosity your feeble martial skills are utterly useless.<br>
<br>
[<<moveTo "event_boss_home_fight_bad_end_1" 'Uh-oh.' 600>>]
<</if>>
</div>/*#
#desc: give "cruel_sissy" cum
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.has_cum = false>>
<<set $npc_boss.flags.mansion.cum.cruel_sissy = true>>
<<set $npc_boss.flags.mansion.subdue.cruel_sissy = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bar.png" setup.charImage("npc_boss_cruel_sissy")>>
<div id="invframe" class="scrolltext">
You offer to trade <<=setup.getNpcName("npc_boss_cruel_sissy","nickname")>> the load of <<=ps(setup.getNpcName('npc_boss','formal'))>> cum in your ass and her eyes instantly light up.<br>
<br>
A minute later and you find yourself squatting on top of the bar as she fingers your ass until every drop of thick <<getWordCum>> drips into her glass, finishing it off with a dash of whiskey and giving it a swirl and a sniff.<br>
<br>
"@@.npc_boss_cruel_sissy;Truly the best mixer there is.@@" She takes a first drink and shudders almost orgasmically. "@@.npc_boss_cruel_sissy;<<Master npc_boss>>...@@"<br>
<br>
A few seconds pass before she blinks and turns her attention back to you. She quickly unbuckles the strap-on harness and shoves it across the bar to you. "@@.npc_boss_cruel_sissy;Here, have fun... now leave me to enjoy my drink and dream of its maker's hand around my throat...@@"<br>
<br>
[<<moveTo "event_boss_home_root" 'Go somewhere else.' 300>>]
</div>/*#
#desc: visit with dominatrix
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$npc_boss_dominatrix.profile>>
<<set $npc_boss_dominatrix.profile = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_dungeon.png" setup.charImage("npc_boss_dominatrix")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You spend some time searching for the sex dungeon you just know the mansion must have... and are not disappointed, finding a basement room with an expansive dungeon... currently occupied by a harshly dressed dominatrix using a crop on a bound, gagged, and blindfolded submissive.<br>
<br>
The dominatrix turns to address you with a single raised eyebrow.<br>
<br>
"@@.npc_boss_dominatrix;Are you looking for something? My name is <<=setup.getNpcName("npc_boss_dominatrix","formal")>> and you had best state your purpose and not get in my way... else you will be the next one bound to my rack.@@"
<<else>>
<<=setup.getNpcName("npc_boss_dominatrix","formal")>> glances at you briefly while continuing her punishment of the bound submissive.<br>
<br>
"@@.npc_boss_dominatrix;Well? What do you have for me?@@"
<</if>>
<br><br>
[<<moveTo "event_boss_home_dominatrix_talk_2" 'Continue.' 180 "<<set $scene.ask=''>>">>]
</div>/*#
#desc: talk with dominatrix
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ask != "">>
<<set $npc_boss_dominatrix.flags.talk[$scene.ask] = true>>
<<if $scene.ask == "strapon">>
<<deleteItem "strapon_boss">>
<<set $scene.study_schedule = true>>
<<elseif $scene.ask == "key">>
<<set $scene.study_schedule = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_dungeon.png" setup.charImage("npc_boss_dominatrix")>>
<div id="invframe" class="scrolltext">
<<switch $scene.ask>>
<<case "">>
The only sound in the dungeon is the panting gasps of the poor, punished submissive as the dominatrix waits for you to speak.
<<case "identity">>
You ask <<=setup.getNpcName("npc_boss_dominatrix","formal")>> about herself and she pauses for a moment, her piercing gaze stabbing through you.<br>
<br>
"@@.npc_boss_dominatrix;Like the rest of the inhabitants of this house, I came her in pursuit of <<=setup.getNpcName('npc_boss','formal')>>... unlike my other compatriots, however, I have mostly moved past that plan.@@" She smiles in confident amusement. "@@.npc_boss_dominatrix;You see I realised that <<=setup.getNpcName('npc_boss','formal')>> is never going to choose — even if <<he npc_boss>> were the sort to be willing to settle rather than constantly strive for more of everything... <<he npc_boss>> relishes the power <<he npc_boss>> has over all of us chasing <<him npc_boss>> far too much. But,@@" She adds with a cruel smirk. "@@.npc_boss_dominatrix;By the time I realised that, I had also learned just how enjoyable it is to torment the rest of you... what is the phrase, better to rule in hell than serve in heaven? <<=setup.getNpcName('npc_boss','formal')>> trusts me to keep the rest of you in line, and the house in order. And that position suits me just fine...@@"<br>
<br>
To accentuate her point she lashes out at the bound slave, the poor bound woman crying out through her gag as <<=setup.getNpcName("npc_boss_dominatrix","formal")>> chuckles. "@@.npc_boss_dominatrix;This one here... she spilled a glass of wine while serving the <<Master npc_boss>>... an error that has seen her assigned to me for the rest of the week, this little cropping is just warm-up for all the punishments I have in store...@@"
<<case "others">>
You ask <<=setup.getNpcName("npc_boss_dominatrix","formal")>> what she thinks about the other inhabitants of the mansion.<br>
<br>
"@@.npc_boss_dominatrix;Fools, for the most part, but so delightful to have at the end of my flogger. There is just something so delicious about the crack of leather against flesh... followed by the pained request for more as they hope enduring the torment will impress <<=setup.getNpcName('npc_boss','formal')>>... and maybe it does, but not nearly as much as it pleases me.@@"<br>
<br>
She pauses for a moment as her tone turns more dour. "@@.npc_boss_dominatrix;Of course, the one that I really want to punish is <<=setup.getNpcName("npc_boss_cruel_sissy","nickname")>>. She puts on airs of command and could do with being put in her place, but she never steps far enough out of line to be assigned to me. What I would really like to do would be to bend her over and fuck her into submission, to really pound that <<if $fetish.sissy>>sissy <</if>>hole until she is begging for a spanking... alas, the <<Master npc_boss>> is quite restrictive in allowing strap-ons, and <<he npc_boss>> seems to find it amusing to deny me such, something about how it made me more hungry and creative in my deprave punishments.@@"
<<case "help">>
You ask if she, with all her authority, could help you gain entrance to <<=ps(setup.getNpcName('npc_boss','formal'))>> private study?<br>
<br>
"@@.npc_boss_dominatrix;Looking to find some secret about <<him npc_boss>>?@@" She chuckles. "@@.npc_boss_dominatrix;A useless endeavour, but, to answer your question, yes. The only ones permitted entrance to <<his npc_boss>> study are the maids, and I control their schedule. <<if $npc_boss_dominatrix.flags.talk.strapon || $npc_boss.flags.mansion.subdue.dominatrix || $scene.study_schedule>>If you could prove yourself to me in some way <</if>>I could approve you being added to the list... if you could find a maid willing to swap duties with you.@@"
<<if !$npc_boss_dominatrix.flags.talk.other && !($npc_boss_dominatrix.flags.talk.strapon || $npc_boss.flags.mansion.subdue.dominatrix || $scene.study_schedule)>>
<br><br>
<<printThought 'Hmm, I should talk to <<=setup.getNpcName("npc_boss_dominatrix","formal")>> some more to try to figure out how to get into her good graces...'>>
<</if>>
<<if $npc_boss_maid.flags.maid_pass || $npc_boss.flags.mansion.subdue.maid>>
<br><br>
You tell <<=setup.getNpcName('npc_boss_dominatrix','formal')>> that you have
<<if $npc_boss_maid.flags.maid_pass>>
successfully proven yourself to <<=setup.getNpcName('npc_boss_maid','formal')>> and <<he npc_boss_maid>> is willing to swap with you for a shift.
<<else>>
convinced <<=setup.getNpcName('npc_boss_maid','formal')>> to swap shifts with you.
<</if>>
<br><br>
<<=setup.getNpcName('npc_boss_dominatrix','formal')>> raises an eyebrow in mild surprise.
<<if $npc_boss_dominatrix.flags.talk.strapon || $npc_boss.flags.mansion.subdue.dominatrix || $scene.study_schedule>>
"@@.npc_boss_dominatrix;Impressive, very well. I will update authorisations, you are free to proceed to <<=ps(setup.getNpcName('npc_boss','formal'))>> private and make sure it is suitably ready for <<his npc_boss>> use.@@"<br>
<br>
[<<moveTo "event_boss_home_study_1" 'Proceed to the study.' 300>>]<br>
<<else>>
"@@.npc_boss_dominatrix;Impressive, but I am still not yet prepared to authorise the switch. Perhaps if you proved yourself to ME I might consider things differently.@@"
<</if>>
<</if>>
<<case "strapon">>
You offer her the strap-on you acquired and she smiles.<br>
<br>
"@@.npc_boss_dominatrix;Oh, that looks just lovely and... wait, is that the one <<=setup.getNpcName("npc_boss_cruel_sissy","nickname")>> is always parading around with? Why you clever thing... this will be the perfect revenge indeed.@@"<br>
<br>
She walks over to the slave she had been tormenting, adjusting some electronic controls to leave the woman twitching and yelping in response to some manner of electric shocks. "@@.npc_boss_dominatrix;That should keep you occupied while I go pin down another playmate...@@"<br>
<br>
She chuckles in amusement as she buckles the harness around her hips. "@@.npc_boss_dominatrix;Perfect — and I'll adjust the schedule so you can enter <<=ps(setup.getNpcName('npc_boss','formal'))>> private study.<<if !($scene.study_key || $npc_boss_maid.flags.maid_pass)>> You just need to find a maid willing to make the swap with you.<</if>>@@"
<<if ($scene.study_key || $npc_boss_maid.flags.maid_pass) && $scene.study_schedule>>
<br><br>
[<<moveTo "event_boss_home_study_1" 'Proceed to the study.' 300>>]<br>
<</if>>
<<case "victim">>
You ask about her current victim.<br>
<br>
"@@.npc_boss_dominatrix;This? This is <<=setup.getNpcName("generic_female1","custom", "Ms. Acedia")>>. She somehow managed to catch the <<=ps(setup.getNpcName('npc_boss','custom','Master'))>> eye... yet she seems to be spending most of her time here under my sway due to failure to perform chores and such, not that I am complaining, it is convenient to have a handy subject to keep my skills sharp and, of course, my guidance may yet shape her into something more... pleasing to <<=setup.getNpcName('npc_boss','formal')>>@@"
<<case "key">>
You find <<=setup.getNpcName("npc_boss_dominatrix","formal")>> in the mansion's dungeon and demand that she put you on the schedules to clean <<=ps(setup.getNpcName("npc_boss_maid","formal"))>>, private study.<br>
<br>
<<if $npc_boss.flags.mansion.dominate.dominatrix>>
You can feel the proud dominatrix wanting to stand up to you... but your dominant aura is too powerful and she bows in supplication. "@@.npc_boss_dominatrix;Of course, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I will see to it at once.<<if !$scene.study_schedule>>.. only, you will also need to convince <<=setup.getNpcName("npc_maid","first")>> that you are sufficiently skilled and worthy of cleaning the <<=ps(setup.getNpcName("npc_boss","Master"))>> private study.<</if>>@@"
<<elseif $npc_boss.flags.mansion.beat.dominatrix>>
For a moment she seems ready to fight you once again... and then she looks submissively downward and nods. "@@.npc_boss_dominatrix;You have bested me once... and I would rather not risk injury than see you do it again. I will schedule you for the honour of cleaning <<=ps(setup.getNpcName('npc_boss','formal'))>> private study.<<if !$scene.study_schedule>>.. only, you will also need to convince <<=setup.getNpcName("npc_maid","first")>> that you are sufficiently skilled and worthy of cleaning the <<=ps(setup.getNpcName("npc_boss","Master"))>> private study<</if>>.@@"
<<elseif $npc_boss.flags.mansion.cum.dominatrix>>
She looks at you for a moment and then hands you the key. "@@.npc_boss_dominatrix;Of course, I acknowledge my debts. I will put you on the schedule to clean <<=ps(setup.getNpcName("npc_boss","formal"))>> private study.<<if !$scene.study_schedule>>.. only, you will also need to convince <<=setup.getNpcName("npc_maid","first")>> that you are sufficiently skilled and worthy of cleaning the <<=ps(setup.getNpcName("npc_boss","Master"))>> private study.<</if>>.@@"
<<else>>
ERROR: unexpected state!
<</if>>
<<default>>
ERROR: unexpected scene.ask <<=$scene.ask>>
<</switch>>
<br><br>
<<if $npc_boss.flags.mansion.dominate.dominatrix>>
She nods at you submissively.<br>
<br>
<</if>>
<<if $npc_boss_dominatrix.flags.talk.identity>>
[@@.link_locked;You've already asked about herself.@@]<br>
<<else>>
[<<moveTo "event_boss_home_dominatrix_talk_2" 'Ask who she is.' 180 "<<set $scene.ask='identity'>>">>]<br>
<</if>>
<<if $npc_boss_dominatrix.flags.talk.others>>
[@@.link_locked;You've already asked her thoughts on the other inhabitants of the house.@@]<br>
<<else>>
[<<moveTo "event_boss_home_dominatrix_talk_2" 'Ask about the other women living in the mansion.' 180 "<<set $scene.ask='others'>>">>]<br>
<</if>>
<<if $npc_boss_dominatrix.flags.talk.victim>>
[@@.link_locked;You've already asked her about the woman she's punishing.@@]<br>
<<else>>
[<<moveTo "event_boss_home_dominatrix_talk_2" 'Ask about her current victim.' 180 "<<set $scene.ask='victim'>>">>]<br>
<</if>>
<<if $npc_boss_dominatrix.flags.talk.help>>
<<if setup.checkItemInInventory("strapon_boss")>>
[<<moveTo "event_boss_home_dominatrix_talk_2" 'Offer her the strap-on you acquired.' 180 "<<set $scene.ask='strapon'>>">>]<br>
<<else>>
[@@.link_locked;You do not have the strap-on she was looking for.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_boss_home_dominatrix_talk_2" 'Ask her for help.' 180 "<<set $scene.ask='help'>>">>]<br>
<</if>>
[<<moveTo "event_boss_home_dominatrix_dominate" 'Try to dominate her.' 300>>]<br>
[<<moveTo "event_boss_home_dominatrix_fight" 'Fight her.' 300>>]<br>
<<if !$scene.sneak && $fetish.cum>>
<<if $scene.has_cum>>
[<<moveTo "event_boss_home_dominatrix_cum" 'Offer her the cum <<=setup.getNpcName("npc_boss","formal")>> left in your ass.' 300>>]<br>
<<else>>
[@@.link_locked;You have already given away <<=ps(setup.getNpcName('npc_boss','formal'))>> <<getWordCum>>.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_boss_home_root" 'Say goodbye and go somewhere else in the house.' 300>>]
</div>/*#
#desc: dominate "dominatrix"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("dominance") >= 20>>
<<set $npc_boss.flags.mansion.dominate.dominatrix = true>>
<<set $npc_boss.flags.mansion.subdue.dominatrix = true>>
<<applyExperience 'dominance' 20 'very' $SEEN_STRANGER>>
<<set $scene.study_schedule = true>>
<<else>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_dungeon.png" setup.charImage("npc_boss_dominatrix")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dominance") >= 20>>
You draw yourself up and enter into a silent contest of wills with <<=setup.getNpcName("npc_boss_dominatrix","formal")>>. At first she looks haughtily down at you, but her confidence starts to slip as you do not so much as flinch, your eyes reflecting her own power back on her until her focus frays and, eventually, she slides obediently to her knees in surrender.<br>
<br>
"@@.npc_boss_dominatrix;Apologies, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. I yield to your superior authority... oh, I have not felt like this with any save the <<Master npc_boss>>...@@"<br>
<br>
You note your need to enter <<his npc_boss>> private study and she nods.
<<if !($scene.study_key || $npc_boss_maid.flags.maid_pass)>>
"@@.npc_boss_dominatrix;Of course, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> — merely get one of the maids to agree to swap with you and I will take care of adjusting the schedules.@@"
<</if>>
<br><br>
You thank her and leave the room.<br>
<br>
<<if ($scene.study_key || $npc_boss_maid.flags.maid_pass) && $scene.study_schedule>>
[<<moveTo "event_boss_home_study_1" 'Proceed to the study.' 300>>]<br>
<</if>>
[<<moveTo "event_boss_home_root" 'Thank her and leave the room.' 300>>]
<<else>>
You have barely started to adopt a more dominant mein when <<=setup.getNpcName("npc_boss_dominatrix","formal")>> starts laughing. "@@.npc_boss_dominatrix;Are you trying to...? No, it's cute, actually — thinking you could impress me with dominance! Oh, what a laugh. As amusing as that was, do tell me you had some more useful purpose in coming down here?@@"<br>
<br>
[<<moveTo "event_boss_home_dominatrix_talk_2" 'Continue.' 180 "<<set $scene.ask=''>>">>]
<</if>>
</div>/*#
#desc: fight "dominatrix"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 20>>
<<applyExperience 'martial_arts' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'strength' 10 'normal' $SEEN_STRANGER>>
<<set $npc_boss.flags.mansion.beat.dominatrix = true>>
<<set $npc_boss.flags.mansion.subdue.dominatrix = true>>
<<set $scene.study_schedule = true>>
<<else>>
<<set _ma = setup.getTotalValue("martial_arts")>>
<<applyExperience 'martial_arts' _ma 'little' $SEEN_STRANGER>>
<<set _str = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _str 'little' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bar.png" setup.charImage("npc_boss_dominatrix")>>
<div id="invframe" class="scrolltext">
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 20>>
You take <<=setup.getNpcName("npc_boss_dominatrix","formal")>> by surprise with your quick, powerful attack, but even without that you're pretty sure you would have won; her authoritarian demeanour turning out to be mostly bluster as you overpower her with ease and swiftly have her chained up next to her victim.<br>
<br>
"@@.npc_boss_dominatrix;You won't get away with this!@@" She growls but you chuckle and point out that you already have... adding that reporting this to <<=setup.getNpcName('npc_boss','formal')>> would surely get her into just as much trouble as yourself, after all, how can she act as <<his npc_boss>> delegated authority if she is known to be such a paper tiger?<br>
<br>
She suddenly freezes, her tone completely changing as she begs you not to tell anyone what happened, offering to make adjustments to the maid schedule to clear you for entrance to <<=ps(setup.getNpcName('npc_boss','formal'))>> private study.<br>
<br>
You try to hide your triumphant smile as you accept her offer, releasing her from her bonds and leaving the dungeon before she can plot revenge.<br>
<br>
<<if ($scene.study_key || $npc_boss_maid.flags.maid_pass) && $scene.study_schedule>>
[<<moveTo "event_boss_home_study_1" 'Proceed to the study.' 300>>]<br>
<</if>>
[<<moveTo "event_boss_home_root" 'Thank her and leave the room.' 300>>]
<<else>>
You take a swing at <<=setup.getNpcName("npc_boss_dominatrix","formal")>> but she parries with her crop and then trips you to the floor. You try to scramble to your feet but she continues to rain down blows... until a Valkyrie appears the cybernetic woman restraining you with ease...<br>
<br>
[<<moveTo "event_boss_home_fight_bad_end_1" 'Uh-oh.' 600>>]
<</if>>
</div>/*#
#desc: give "dominatrix" cum
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.has_cum = false>>
<<set $npc_boss.flags.mansion.cum.dominatrix = true>>
<<set $npc_boss.flags.mansion.subdue.dominatrix = true>>
<<set $scene.study_schedule = true>>
<<applyExperience 'bondage' 15 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bar">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bar.png" setup.charImage("npc_boss_dominatrix")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_boss_dominatrix","formal")>> if she would accept a trade — clearance for you to clean <<=ps(setup.getNpcName('npc_boss','formal'))>> private study in exchange for the load of cum <<he npc_boss>> left in your ass.<br>
<br>
<<=setup.getNpcName("npc_boss_dominatrix","formal")>> bites her lip, not quite able to keep the tremor from her voice as she replies "@@.npc_boss_dominatrix;Your offer is... acceptable.@@"<br>
<br>
Perhaps in an effort to re-affirm her control she has you bound and suspended with your legs spread before she takes her prize, teasing you slightly as she slurps the creamy load out of you and giving you a brief moment of worry that she might do more before she lowers you back to the ground.<br>
<br>
"@@.npc_boss_dominatrix;Very good,@@" she states, licking her lips clean, "@@.npc_boss_dominatrix;I will adjust the schedules to clear you for entrance to <<=ps(setup.getNpcName('npc_boss','formal'))>> private office<<if !($scene.study_key || $npc_boss_maid.flags.maid_pass)>>, though you will still need to convince a maid to swap roles with you<</if>>.@@"<br>
<br>
You nod in understanding and leave the dungeon.<br>
<br>
<<if ($scene.study_key || $npc_boss_maid.flags.maid_pass) && $scene.study_schedule>>
[<<moveTo "event_boss_home_study_1" 'Proceed to the study.' 300>>]<br>
<</if>>
[<<moveTo "event_boss_home_root" 'Thank her and leave the room.' 300>>]
</div>/*#
#desc: visit with maid
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = !$npc_boss_maid.profile>>
<<set $npc_boss_maid.profile = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_kitchen.png" setup.charImage("npc_boss_maid")>>
<div id="invframe" class="scrolltext">
<<if $scene.first>>
You wander through the mansion until you find a maid cleaning in the kitchen. She pauses from her duties and introduces herself as <<=setup.getNpcName("npc_boss_maid","formal")>>.
<<else>>
You find <<=setup.getNpcName("npc_boss_maid","formal")>> still cleaning the kitchen, they wink at you as they wait to see what you want.
<</if>>
<br><br>
[<<moveTo "event_boss_home_maid_talk_2" 'Continue.' 180 "<<set $scene.ask=''>>">>]
</div>/*#
#desc: talk with maid
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ask != "">>
<<set $npc_boss_maid.flags.talk[$scene.ask] = true>>
<<if $scene.ask == "test">>
<<set $scene.maidTest = true>>
<<elseif $scene.ask == "key">>
<<set $scene.study_key = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_kitchen.png" setup.charImage("npc_boss_maid")>>
<div id="invframe" class="scrolltext">
<<switch $scene.ask>>
<<case "">>
<<=setup.getNpcName("npc_boss_maid","formal")>> is idly dusting while she waits to see what you want.
<<case "identity">>
You ask <<=setup.getNpcName("npc_boss_maid","formal")>> about herself and she smiles.<br>
<br>
"@@.npc_boss_matron;Oh you know, the old story, somewhat naive girl gets a job cleaning house for a mysterious rich <<man npc_boss>> and they end up falling in love... with a side helping of her developing all sorts of fun fetishes!@@" She winks and gives a twirl of her latex skirt to reveal the chastity belt peeking out from beneath. "@@.npc_boss_matron;Well... I guess I'm still working on the mutual love thing but I have faith that I can win <<=ps(setup.getNpcName('npc_boss','formal'))>> heart if I just work hard enough!@@"
<<case "others">>
You ask <<=setup.getNpcName("npc_boss_maid","formal")>> what she thinks about the other inhabitants of the mansion?<br>
<br>
She shrugs, "@@.npc_boss_maid;I'm a bit busy taking care of my duties to worry about anyone else, or pay attention to all the cat-fighting and politicking. Me, my work and, or course, <<=setup.getNpcName("npc_boss","formal")>>, that's all I focus on.@@"
<<case "help">>
You ask <<=setup.getNpcName("npc_boss_maid","formal")>> if she could help you gain entrance to <<=ps(setup.getNpcName('npc_boss','formal'))>> private study.<br>
<br>
"@@.npc_boss_maid;Of course I have access to that area — I need to keep it clean, obviously! But that's MY responsibility... to swap you'd need permission to be slotted into the schedule AND you'd need to prove to me that you have the skills to work as a maid.@@"
<<case "test">>
You tell <<=setup.getNpcName("npc_boss_maid","formal")>> that you are ready to prove your maid skills to her.<br>
<br>
She pauses her cleaning and looks you over critically.
<<if setup.checkVisibleClothingTag('maid') > 60>>
"@@.npc_boss_maid;Well you're dressed for the job, but let's see if you can handle the responsibilities.@@"<br>
<br>
[<<moveTo "event_boss_home_maid_test_2" 'Continue.' 180>>]
<<else>>
"@@.npc_boss_maid;Alright, miss... let's see what you've got.@@"<br>
<br>
[<<moveTo "event_boss_home_maid_test_1" 'Continue.' 180>>]
<</if>>
<<case "key">>
You track down the maid and demand the key to <<=ps(setup.getNpcName("npc_boss_maid","formal"))>>, private study.<br>
<br>
<<if $npc_boss.flags.mansion.dominate.maid>>
She immediately acquiesces, handing it over with a meek "@@.npc_boss_maid;Yes, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>, you may take my shift to clean <<=ps(setup.getNpcName('npc_boss','formal'))>> private study<<if !$scene.study_schedule>>, though note that you will also need to convince <<=setup.getNpcName("npc_boss_dominatrix","formal")>> to change the shifts.<</if>>@@"
<<elseif $npc_boss.flags.mansion.beat.maid>>
For a moment she seems ready to fight you once again... and then she looks submissively downward and nods. "@@.npc_boss_maid;I acknowledge my betters. You may have the honour of cleaning <<=ps(setup.getNpcName('npc_boss','formal'))>> private study in my stead<<if !$scene.study_schedule>>, you just have to convince <<=setup.getNpcName("npc_boss_dominatrix","formal")>> to change the shifts<</if>>.@@"
<<elseif $npc_boss.flags.mansion.cum.maid>>
She looks at you for a moment and then hands you the key. "@@.npc_boss_maid;I'd like to demand another delicious load of <<=ps(setup.getNpcName('npc_boss','formal'))>> essence... but there's no way you'd share it a second time, and given its priceless value... yeah, you more than earned the privilege of cleaning <<his npc_boss>> study.<<if !$scene.study_schedule>>.. you just have to convince <<=setup.getNpcName("npc_boss_dominatrix","formal")>> to change the shifts.<</if>>@@"
<<else>>
ERROR: unexpected state!
<</if>>
<<default>>
ERROR: unexpected scene.ask <<=$scene.ask>>
<</switch>>
<br><br>
<<if $scene.ask != "test">>
<<if $npc_boss.flags.mansion.dominate.maid>>
She looks back at you, breathless and submissive.<br>
<br>
<</if>>
<<if $npc_boss_maid.flags.talk.identity>>
[@@.link_locked;You've already asked about herself.@@]<br>
<<else>>
[<<moveTo "event_boss_home_maid_talk_2" 'Ask who she is.' 180 "<<set $scene.ask='identity'>>">>]<br>
<</if>>
<<if $npc_boss_maid.flags.talk.others>>
[@@.link_locked;You've already asked her thoughts on the other inhabitants of the house.@@]<br>
<<else>>
[<<moveTo "event_boss_home_maid_talk_2" 'Ask about the other women living in the mansion.' 180 "<<set $scene.ask='others'>>">>]<br>
<</if>>
<<if $npc_boss_maid.flags.talk.help>>
<<if $npc_boss_maid.flags.maid_pass>>
[@@.link_locked;You have already proven your capabilities as a maid.@@]<br>
<<elseif $scene.maidTest>>
[@@.link_locked;You have failed to prove your skills as a maid... you'll have to train up and come back some other time.@@]<br>
<<else>>
[<<moveTo "event_boss_home_maid_talk_2" 'Ask to prove your skills as a maid.' 1800 "<<set $scene.ask='test'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_boss_home_maid_talk_2" 'Ask her for help.' 180 "<<set $scene.ask='help'>>">>]<br>
<</if>>
[<<moveTo "event_boss_home_maid_dominate" 'Try to dominate her.' 300>>]<br>
[<<moveTo "event_boss_home_maid_fight" 'Fight her.' 300>>]<br>
<<if !$scene.sneak && $fetish.cum>>
<<if $npc_boss.flags.mansion.cum.maid>>
[@@.link_locked;You have already traded her <<=ps(setup.getNpcName('npc_boss','formal'))>> <<getWordCum>> for assistance.@@]<br>
<<elseif $scene.has_cum>>
[<<moveTo "event_boss_home_maid_cum" 'Offer her the cum <<=setup.getNpcName("npc_boss","formal")>> left in your ass.' 300>>]<br>
<<else>>
[@@.link_locked;You have already given away <<=ps(setup.getNpcName('npc_boss','formal'))>> <<getWordCum>>.@@]<br>
<</if>>
<</if>>
[<<moveTo "event_boss_home_root" 'Say goodbye and go somewhere else in the house.' 300>>]
<</if>>
</div>/*#
#desc: get changed into maid outfit
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_kitchen.png" setup.charImage("npc_boss_maid")>>
<div id="invframe" class="scrolltext">
<<if setup.checkVisibleClothingTag('maid') > 60>>
"@@.npc_boss_maid;Alright, finally dressed for the part... let's see if you can perform, as well.@@"<br>
<br>
[<<moveTo "event_boss_home_maid_test_2" 'Continue.' 180>>]<br>
<<else>>
"@@.npc_boss_maid;Well? Are you going to change into a maid outfit or not? You can't do the job if you aren't dressed for the role.@@"<br>
<br>
<</if>>
[<<moveTo "event_boss_home_root" 'Say goodbye and go somewhere else in the house.' 300 "
<<set $player.cutscene.lockinventory = true>>">>]
</div>/*#
#desc: show your maid skills
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.test_points = 0>>
<<if $npc_landlord.flags.cleaning.maid_theft >= 2>>
<<set $scene.test_points += 1>>
<</if>>
<<if $npc_landlord.flags.cleaning.maid_pervert >= 3>>
<<set $scene.test_points += 1>>
<</if>>
<<if $npc_landlord.flags.cleaning.maid_pervert_dom >= 1>>
<<set $scene.test_points += 1>>
<</if>>
<<if $npc_landlord.flags.cleaning.maid_mistress >= 3>>
<<set $scene.test_points += 1>>
<</if>>
<<if $npc_landlord.flags.cleaning.maid_dog >= 3>>
<<set $scene.test_points += 1>>
<</if>>
<<if $npc_egg.stage >= 8>>
<<set $scene.test_points += 1>>
<</if>>
<<if State.hasPlayed("event_vip_manager_maid_3_clean_5_reward")>>
<<set $scene.test_points += 1>>
<</if>>
<<set $npc_boss_maid.flags.maid_pass = setup.getTotalValue("heels") >= 20 && setup.getTotalValue("bondage") >= 20 && setup.getTotalValue("dexterity") >= 20 && setup.getTotalValue("feminization") >= 20 && $scene.test_points >= 3>>
<<applyExperience 'bondage' 20 'terrible' $SEEN_STRANGER>>
<<applyExperience 'dexterity' 20 'terrible' $SEEN_STRANGER>>
<<applyExperience 'heels' 20 'terrible' $SEEN_STRANGER>>
<<addItem "maid_gag">>
<<wearItem "maid_gag" true>>
<<addItem "armbinder_black">>
<<wearItem "armbinder_black" true>>
<<addItem "leather_ankle_cuffs">>
<<wearItem "leather_ankle_cuffs" true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> private study">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_study.png" setup.charImage("npc_boss_maid")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_boss_maid","formal")>> inspects your outfit and has you turn around... only to pull an armbinder up over your arms. Before you can object a gag is pulled into your mouth, a large feather-duster extending out from your mouth.<br>
<br>
"@@.npc_boss_maid;A proper maid must perform her duties in even the harshest conditions.@@" She explains as she ducks down to cuff your ankles together with a short hobble. "@@.npc_boss_maid;If cleanliness was all that mattered <<=setup.getNpcName('npc_boss','formal')>> would use a robot or hire an agency. No, this is as much about service as it is performance and I shall not let you work until you prove that you will not besmirch our noble profession.@@"<br>
<br>
She leads you into a study and gestures around. "@@.npc_boss_maid;This room is similar to <<=ps(setup.getNpcName('npc_boss','formal'))>> private study. A good practice to prove that you know what to do before the main event.@@" She gestures for you to get to work.<br>
<br>
<<if $npc_boss_maid.flags.maid_pass>>
You are hardly bothered by your restraints... in some ways, the bondage-enforced balance challenge only motivating you further.<br>
<br>
With perfect nimble proficiency you move about the room, dusting and straightening things up, being sure to bend and pose to show yourself off the entire time as you draw on your extensive experience to tidy up the room.<br>
<br>
<<=setup.getNpcName("npc_boss_maid","formal")>> watches you like a hawk, trying to spot the smallest mistake, but as you mince about she becomes more and more impressed before finally signaling you back over.<br>
<br>
"@@.npc_boss_maid;I must say, you seem to be a born bondage maid. So feminine and graceful, working with the restraints rather than fighting against them... you have my approval to work as a maid. Just convince <<=setup.getNpcName("npc_boss_dominatrix","formal")>> to adjust the schedule and you will be able to enter and clean the private study.@@" She smiles and reaches for your restraints. "@@.npc_boss_maid;Of course, you will not be burdened for that duty — it may be the requirement for the rest of the house, but you need to be totally focused on your job for such an important location.@@"
<<else>>
<<if $scene.test_points >= 3>>
You may have practice cleaning, but this is a different sort of thing that you're used to.
<<else>>
You regret not spending more time practicing your cleaning skills...
<<if $npc_landlord.flags.cleaning.maid_work>>
Perhaps you should spend more time cleaning apartments for <<=setup.getNpcName("npc_landlord","first")>>?
<<else>>
Perhaps you should have taken your <<if $npc_landlord.fem>>landlady<<else>>landlord<</if>> up on <<his npc_landlord>> offer?
<</if>>
<</if>>
<<if setup.getTotalValue("heels") >= 20 && setup.getTotalValue("dexterity") >= 20>>
You manage to keep your balance, and even move with grace despite the restraints.
<<else>>
You find yourself swaying and almost stumbling, the combination of restraints and heels too much for you to handle.
<</if>>
<<if setup.getTotalValue("bondage") >= 20>>
You embrace your bondage, drawing additional energy from the restrictive position as you bob and stretch to dust every nook and cranny.
<<else>>
The bondage is something else, however; harsh and distracting as it makes even the simple act of dusting a massive challenge.
<</if>>
<<if setup.getTotalValue("feminization") >= 20>>
Through it all you make sure to maintain feminine grace with every motion.
<<else>>
Through it all you find yourself unable to live up to the feminine promise of the maid uniform.
<</if>>
<br><br>
<<=setup.getNpcName("npc_boss_maid","formal")>> sniffs in dismissal. "@@.npc_boss_maid;Hmf, quite insufficient, I am afraid. <<=setup.getNpcName("npc_boss","formal")>> DESERVES perfection, and so I demand it as well. You? Are not perfect.@@"
<</if>>
<br><br>
[<<moveTo "event_boss_home_root" 'Wait for your restraints to be removed and head off.' 300 '<<removeItem "maid_gag" true>><<deleteItem "maid_gag">><<removeItem "armbinder_black" true>><<deleteItem "armbinder_black">><<removeItem "leather_ankle_cuffs" true>><<deleteItem "leather_ankle_cuffs">>'>>]
</div>/*#
#desc: dominate "maid"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("dominance") >= 10>>
<<set $scene.study_key = true>>
<<set $npc_boss.flags.mansion.dominate.maid = true>>
<<set $npc_boss.flags.mansion.subdue.maid = true>>
<<applyExperience 'dominance' 10 'very' $SEEN_STRANGER>>
<<else>>
<<set _dom = setup.getTotalValue("dominance")>>
<<applyExperience 'dominance' _dom 'normal' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_kitchen.png" setup.charImage("npc_boss_maid")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dominance") >= 10>>
You attempt to dominate <<=setup.getNpcName("npc_boss_maid","formal")>> and she almost instantly drops to her knees.<br>
<br>
"@@.npc_boss_maid;This slave is sorry, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>. Of course you may take my shift if that is your wish.<<if !$scene.study_schedule>> You will still need to convince <<=setup.getNpcName("npc_boss_dominatrix","formal")>> to approve the swap, but that should be no trouble for one of your magnificence.<</if>>@@"<br>
<br>
<<if ($scene.study_key || $npc_boss_maid.flags.maid_pass) && $scene.study_schedule>>
[<<moveTo "event_boss_home_study_1" 'Proceed to the study.' 300>>]<br>
<</if>>
[<<moveTo "event_boss_home_root" 'Thank her and leave the room.' 300>>]
<<else>>
You attempt to dominate <<=setup.getNpcName("npc_boss_maid","formal")>> but she merely stifles a giggle. "@@.npc_boss_maid;Sorry, dear. I may be a natural submissive, but I'm not going to roll over that easily!@@"<br>
<br>
[<<moveTo "event_boss_home_maid_talk_2" 'Continue.' 180 "<<set $scene.ask=''>>">>]
<</if>>
</div>/*#
#desc: fight "maid"
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 40>>
<<applyExperience 'martial_arts' 20 'unbelievable' $SEEN_STRANGER>>
<<applyExperience 'strength' 20 'unbelievable' $SEEN_STRANGER>>
<<set $npc_boss.flags.mansion.beat.maid = true>>
<<set $npc_boss.flags.mansion.subdue.maid = true>>
<<set $scene.study_key = true>>
<<else>>
<<set _ma = setup.getTotalValue("martial_arts")>>
<<applyExperience 'martial_arts' _ma 'unbelievable' $SEEN_STRANGER>>
<<set _str = setup.getTotalValue("strength")>>
<<applyExperience 'strength' _str 'unbelievable' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_kitchen.png" setup.charImage("npc_boss_maid")>>
<div id="invframe" class="scrolltext">
<<if (setup.getTotalValue("martial_arts") + setup.getTotalValue("strength")) >= 40>>
You and <<=setup.getNpcName("npc_boss_maid","formal")>> square up for a fight and you would swear you heard boss music playing. The two of you strike back and forth like lightning, your skills and strength seemingly equally matched as you leap between counters and swing off the chandeliers in an epic back and forth battle.<br>
<br>
You can tell that she's surprised to have met her match... and perhaps that surprise is what finally swings the fight in your direction as you manage to finally slip past her defences and sweep her legs out from under her, pouncing on top and forcing her to submit.<br>
<br>
"@@.npc_boss_maid;I yield,@@" she gasps just before passing out in the tight grip of your choke. You let her go, bowing in respect for the honourable combat.<br>
<br>
"@@.npc_boss_maid;Wow... didn't think I'd find my match here of all places... still, you proved your skill in battle, so I'll let you take my shift cleaning the private office.<<if !$scene.study_schedule>>.. well, if you can convince <<=setup.getNpcName("npc_boss_dominatrix","formal")>> to authorise the schedule change<</if>>.@@"<br>
<br>
You thank her and let her return to her work.<br>
<br>
<<if ($scene.study_key || $npc_boss_maid.flags.maid_pass) && $scene.study_schedule>>
[<<moveTo "event_boss_home_study_1" 'Proceed to the study.' 300>>]<br>
<</if>>
[<<moveTo "event_boss_home_root" 'Thank her and leave the room.' 300>>]
<<else>>
You take a swing at <<=setup.getNpcName("npc_boss_maid","formal")>> and almost instantly regret it. Blazingly fast it is like you wrote down every move you were planning on doing and mailed it to her to practice the perfect counter for each and every one.<br>
<br>
In a crumpled heap on the floor you look up to see a Valkyrie enter the room, the cybernetic monster lifting your limp body into the air...<br>
<br>
[<<moveTo "event_boss_home_fight_bad_end_1" 'Uh-oh.' 600>>]
<</if>>
</div>/*#
#desc: give "maid" cum
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.has_cum = false>>
<<set $npc_boss.flags.mansion.cum.maid = true>>
<<set $npc_boss.flags.mansion.subdue.maid = true>>
<<set $scene.study_key = true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Kitchen">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_kitchen.png" setup.charImage("npc_boss_maid")>>
<div id="invframe" class="scrolltext">
You offer <<=setup.getNpcName("npc_boss_maid","formal")>> the <<getWordCum>> <<=setup.getNpcName('npc_boss','formal')>> left in your ass if she'll swap shifts to let you clean <<=ps(setup.getNpcName('npc_boss','formal'))>> private study and she licks her lips in anticipation.<br>
<br>
"@@.npc_boss_maid;I really shouldn't... not without checking your qualifications but... sorry, I just can't pass up that treat <<=setup.getNpcName('npc_boss','formal')>> just tastes so, so good...@@"<br>
<br>
You bend over the counter and she crawls underneath, her tongue eagerly licking you clean as she sucks out every drop of <<=ps(setup.getNpcName('npc_boss','formal'))>> <<getWordCum>>.<br>
<br>
"@@.npc_boss_maid;Mmmm, even better than I was hoping... you can take my shift cleaning the private office.<<if !$scene.study_schedule>>.. well, if you can convince <<=setup.getNpcName("npc_boss_dominatrix","formal")>> to authorise the schedule change<</if>>.@@"<br>
<br>
She waits for you to dismiss her.<br>
<br>
<<if ($scene.study_key || $npc_boss_maid.flags.maid_pass) && $scene.study_schedule>>
[<<moveTo "event_boss_home_study_1" 'Proceed to the study.' 300>>]<br>
<</if>>
[<<moveTo "event_boss_home_root" 'Thank her and leave the room.' 300>>]
</div>/*#
#desc: clean npc_boss study
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Mansion">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_hallway.png">>
<div id="invframe" class="scrolltext">
You approach the locked door to <<=ps(setup.getNpcName('npc_boss','formal'))>> private study.
<<if ($scene.study_key || $npc_boss_maid.flags.maid_pass) && $scene.study_schedule>>
A laser digitally scans you and a small display pings with the word "maid entrance approved" before the door opens.<br>
<br>
[<<moveTo "event_boss_home_study_2" 'Enter the private study.' 300>>]<br>
[<<moveTo "event_boss_home_root" 'Actually, you wanted to take care of something else first.' 300>>]
<<else>>
<<if $scene.study_schedule>>
A laser digitally scans you and a small display displays an error. "@@.npc_ai_evil;<<uc "Maid qualifications not recognised, access denied.">>@@"<br>
<br>
<<elseif ($scene.study_key || $npc_boss_maid.flags.maid_pass)>>
A laser digitally scans you and a small display displays an error. "@@.npc_ai_evil;<<uc "Maid recognised but not cleared. Access denied.">>@@"<br>
<br>
<<if $npc_boss_dominatrix.flags.talk.strapon || $npc_boss.flags.mansion.subdue.dominatrix>>
<<printThought 'I should go find <<=setup.getNpcName("npc_boss_dominatrix","formal")>> in the dungeons and and talk about getting back on the schedule.'>><br>
<br>
<</if>>
<<else>>
A laser digitally scans you and a small display displays an error. "@@.npc_ai_evil;<<uc "Maid qualifications not recognised and not cleared for cleaning. Access denied.">>@@"<br>
<br>
<</if>>
[<<moveTo "event_boss_home_root" 'Go do something else.' 300>>]
<</if>>
</div>/*#
#desc: find npc_boss secret files
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_valkyrie_plan'
0
'theme_valkyrie_plan_1'
false
>>
<<completeTask 'task_infiltrate_boss' $now true>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Private Study">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_study.png">>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName('npc_boss','formal'))>> inner study is the picture of old-world opulence, leather and teak complete with a row of trophy animals decorating one wall.<br>
<br>
Aside from the electronic lock on the door there is not a trace of "modern" technology, you don't even see any cameras — the paranoia levels of security and privacy for once working in your favour.<br>
<br>
You hurry over to the desk and go digging for information, most of it is bond records and the like, but you eventually find what you're looking for — command codes for the Valkyrie units, as well as a stack of what looks like blackmail materials on most of the higher-ups in city government.<br>
<br>
Pulling out your phone you snap pictures as quick as you can and then put it all back where it was — you don't have time to figure out what to do with this information, but you're certain that you've just taken another step towards bringing down <<=setup.getNpcName("npc_boss","formal")>>... and freeing yourself from the control of the company.<br>
<br>
<<if $scene.sneak>>
[<<moveTo "event_boss_home_sneak_7" 'Finish straightening up and leave.' 1800>>]
<<else>>
[<<moveTo "event_boss_home_visit_6" 'Finish straightening up and return to bed.' 1800>>]
<</if>>
</div>/*#
#desc: sneak back into npc_boss bed
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeEverythingButUnderwear>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bedroom.png">>
<div id="invframe" class="scrolltext">
You head back to the bedroom, shedding your temporary maid outfit before slipping back into bed next to the soundly sleeping <<=setup.getNpcName('npc_boss','formal')>>.<br>
<br>
<<if $now.getUTCHours() < 4>>
<<set _morning = setup.setNextDate($now, 0, 4, 30)>>
<<else>>
<<set _morning = setup.setNextDate($now, 1, 4, 30)>>
<</if>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_boss_home_visit_7" "Sleep." _timeToMorning "<<applyFatigue -50>>">>]
</div>/*#
#desc: wake up next to npc_boss
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'submission' 20 'terrible' $SEEN_STRANGER>>
<<if $fetish.cum>>
<<applyExperience 'cum' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_bedroom.png" setup.charImage("npc_boss") setup.charImage("npc_boss_dominatrix","npc_boss_slave")>>
<div id="invframe" class="scrolltext">
You wake up to the soft sound of sucking, looking over to see a woman — arms bound, face obscured by a tight hood, sucking on <<=ps(setup.getNpcName('npc_boss','formal'))>> <<getWordPenis "npc_boss">> while <<he npc_boss>> enjoys a lavish breakfast in bed.<br>
<br>
<<He npc_boss>> must have noticed you out of the corner of <<his npc_boss>> eye because <<he npc_boss>> does not even look up as <<he npc_boss>> greets you "@@.npc_boss;Good morning. Do not mind this thing — one of the duties here is to be my personal alarm clock. A double edged sword, as while it comes with the reward of getting a taste of myself... it comes with the requirement of spending the night waiting — bound, and with a nice large plug ready to be shocked awake when it is time to rouse me from slumber.@@"<br>
<br>
<<He npc_boss>> finishes <<his npc_boss>> meal as you look down at the "alarm clock" with a pang of jealousy — the sight and scent of <<his npc_boss>> hard cock... after a night spent so close to <<him npc_boss>> having you swooning with desire.<br>
<br>
<<=setup.getNpcName('npc_boss','formal')>> barely twitches as <<he npc_boss>> cums, the woman holding in place and then pulling back<<if $fetish.cum>> to spread her lips wide and show the mouth-full of <<getWordCum>><<else>>once the tremors of <<=ps(setup.getNpcName('npc_boss','formal'))>> hips have ceased<</if>>.<br>
<br>
"@@.npc_boss;A little more tongue,@@" <<he npc_boss>> states in criticism, "@@.npc_boss;As punishment for your less than perfect performance you can <<if $fetish.cum>>share your breakfast with my guest — <</if>>and spend the remainder of the day practicing — at least a thousand strokes in each hole, on top of your normal review.@@"<br>
<br>
The woman shudders but makes no effort to contradict <<=setup.getNpcName('npc_boss','formal')>><<if $fetish.cum>>, instead waiting for you to crawl over and share a lesbian kiss as she passes off your share of <<his npc_boss>> cum — the rich, creamy flavour only amping up your desire for <<him npc_boss>> and you resist the urge to spill the beans as to <<if $scene.skip>>your plans<<else>>your nocturnal activities<</if>>.<br>
<br>
By the time you finish your "breakfast" <<=setup.getNpcName('npc_boss','formal')>> is<<else>>you look back towards <<=setup.getNpcName('npc_boss','formal')>> to find him<</if>> already on <<his npc_boss>> feet — another pair of slaves accompanying <<him npc_boss>> into the shower as <<he npc_boss>> seems to be all but ignoring you.<br>
<br>
[<<moveTo "event_boss_home_visit_8" 'Continue.' 300>>]
</div>/*#
#desc: npc_boss sends you home
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_boss_matron")>>
<div id="invframe" class="scrolltext">
"@@.npc_boss_matron;Come along, my dear@@" <<if $npc_boss_matron.profile>><<=setup.getNpcName('npc_boss_matron','formal')>><<else>>a motherly slave<</if>> explains as she helps you get dressed. "@@.npc_boss_matron;You had your night with the <<master npc_boss>> — a rare prize in and of itself, but now it is time for you to be off to work. There is a car waiting to take you home. <<=setup.getNpcName('npc_boss','formal')>> always travels to work on <<his npc_boss>> own by air.@@"<br>
<br>
That fact saddens you, but you feel as if you are going through a well-rehearsed process as you finish dressing and are led down to the car that takes you directly home.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 1800>>]
</div>/*#
#desc: npc_boss infiltration — escape mansion
#status: RELEASED 0.9.3.0
#ignore_spell: cerberus
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_boss','formal'))>> Estate">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/boss_garden.png">>
<div id="invframe" class="scrolltext">
You finish up the cleaning and leave the private study.<br>
<br>
Heart pounding, you head outside,
<<if $fetish.bestiality_hard>>
one head of the cerberus looking up from its slumber at you as you sneak across the yard and scramble over the fence to escape.
<<else>>
sticking to the shadows as you make your way through the garden and back to the outer wall where you scramble over and make your escape.
<</if>>
<br><br>
[<<moveTo "room_foyer" "Head home." 3600>>]
</div>/*#
#desc: lose a fight in npc_boss mansion
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to ''>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/scenes/badend.png" setup.charImage("npc_valkyr")>>
<div id="invframe" class="scrolltext">
Subdued and restrained by a single Valkyrie unit, you are striped of your belongings and carried out of the room and into a locked cell in the basement of the mansion. Your last sight before the door swings closed on your cell that of other petitioner's for <<=ps(setup.getNpcName('npc_boss','formal'))>> affection watching on with smug satisfaction — after all, you are another rival removed.<br>
<br>
The cell is pitch black and you soon lose track of time, your cries for help receive no response and you eventually slump to the ground and sleep, hoping that this is all a nightmare from which you will wake...<br>
<br>
[<<moveTo "event_boss_home_fight_bad_end_2" 'Continue.' 300>>]
</div>/*#
#desc: lose a fight in npc_boss mansion
#status: RELEASED 0.9.3.0
#*/
<<set $gameOver = 'fight_boss_mansion'>>
<<set $player.location to ''>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/badend.png">>
<div id="invframe" class="scrolltext">
You wake up some time later, manhandled by several pairs of strong, masked hands, bound, gagged and crated up, shipped away for a "new" life as a helpless owned slave for an uncaring owner, a bargaining chip traded away by <<=setup.getNpcName("npc_boss","formal")>> as just another piece in <<his npc_boss>> game...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: npc_barista tells you about npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You switch seats to be closer to <<=setup.getNpcName("npc_barista","first")>> and lean in to hear what she has to say.<br>
<br>
"@@.npc_barista;So... with what's happened so far, I think we both know that this isn't over until <<=setup.getNpcName("npc_boss","formal")>> is stopped. For good. Unfortunately, well... we've both of us seen what happened when we tried to go after <<him npc_boss>> alone. If there's a third attempt... well, I don't think any of us will be getting a fourth, you know?@@"<br>
<br>
You nod in agreement and she continues.<br>
<br>
"@@.npc_barista;So before <<he npc_boss>> caught me and turned me over to <<=setup.getNpcName("npc_work_doctor","formal")>> the first time well... I found something out. You see... <<=setup.getNpcName("npc_boss","formal")>> is technically only the acting CEO. The original owner, well "he" is still alive.@@"<br>
<br>
The way she said the word he has you raising your eyebrow.<br>
<br>
"@@.npc_barista;Yeah, well, you see, all the stuff that's happened to you? All the brainwashing and forced submission and <<if $fetish.sissy>>sissification<<else>>feminisation<</if>> that the company does? Well... from what I found out, <<=setup.getNpcName("npc_ceo","other")>>... they were patient zero for the first versions of it. I don't know exactly how <<=setup.getNpcName("npc_boss","formal")>> managed it, but somehow <<=setup.getNpcName("npc_boss","formal")>> took a man that built a company from literally nothing, turned a small family business <<if $fetish.bladerunner2>>making ant replicas<<else>>breeding oysters<</if>> into a megacorp... and made them into a sex-crazed, bimbofied <<if $fetish.sissy>>sissy <</if>>slut. The years since has seen <<=setup.getNpcName("npc_boss","formal")>> not just grow the company, but refine those techniques to the point that, well...@@" She nods as you contemplate the plans that <<=setup.getNpcName("npc_boss","formal")>> has put in motion throughout the company.<br>
<br>
"@@.npc_barista;As I said, though... even after replacing <<=setup.getNpcName("npc_ceo","other")>> in the day to day... the ownership is still, legally, in their hands. My guess is that <<=setup.getNpcName("npc_boss","formal")>> is still scared of some sort of contingency plan that might fire off if the original owner died or was otherwise removed... I was getting close to discovering what that was when <<=setup.getNpcName("npc_boss","formal")>> got on to me... I'd call that reaction a confirmation that I was on to something.@@"<br>
<br>
<<if State.hasPlayed("event_ceo_visit_first_1")>>
[<<moveTo "event_barista_ceo_intro_2" 'Actually... you already found <<=setup.getNpcName("npc_ceo","other")>> mansion...' 600>>]
<<else>>
[<<moveTo "event_barista_ceo_intro_2" "You nod, eager to find out more." 600>>]
<</if>>
</div>/*#
#desc: npc_barista tells you how to meet npc_ceo
#status: RELEASED 0.9.3.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_ceo_visit_first_1")>>
You reply that, actually, you've already visited <<=ps(setup.getNpcName("npc_ceo","other"))>> estate.<br>
<br>
<<=setup.getNpcName("npc_barista","first")>> looks impressed. "@@.npc_barista;Wow, really? I guess you're just... super on the ball, then. I guess you'll figure it out... but I'd definitely advise you to be careful, going after <<=setup.getNpcName("npc_ceo","other")>> is how I well... you know, so watch out!@@"
<<else>>
You ask <<=setup.getNpcName("npc_barista","first")>> if she found out where <<=setup.getNpcName("npc_ceo","other")>> is being kept?<br>
<br>
"@@.npc_barista;Yes, they live in a private villa outside of town, but going there directly, well... that's the mistake I made. <<if $npc_barista.flags.rescue.cure != "good">>Since you helped me get my wits back I've been<<else>>In my rare moments of clarity I've been listening,<</if>> searching for another way in, one that <<=setup.getNpcName("npc_boss","formal")>> won't notice... and I finally found it. You know <<=setup.getNpcName("npc_sex_club", "formal")>>? The owner of <<printShopName 'sex_club'>>? Well... it seems that <<he npc_sex_club>> has another income stream as a go-between providing the most depraved, perverted guests for private parties at a certain villa outside of town. Men, women<<if $fetish.sissy>>, sissies<</if>>, others... every couple of weeks, when <<he npc_sex_club>> finds someone suitable, <<he npc_sex_club>>'ll approach them with an offer. A giant pile of money for a night's work, all protected by the most iron-clad NDA's I've ever seen. If you could prove yourself and get an invite, well... you'd be on your way to figuring out whatever it is <<=setup.getNpcName("npc_ceo","other")>> has on <<=setup.getNpcName("npc_boss","formal")>>...@@"<br>
<br>
You thank her for the tip.<br>
<br>
"@@.npc_barista;Sure, and, remember: be careful. You saw what happened to me trying to hunt this down... so we need to use caution, let <<=setup.getNpcName("npc_sex_club", "formal")>> come to you... don't raise any suspicions. Because I think the reward is worth the risk.@@"
<</if>>
<br><br>
[<<moveTo "event_barista_ceo_intro_3" "Nod in agreement." 600>>]
</div>/*#
#desc: npc_barista tells you how to meet npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Lair of the Tech Wizard">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/technician_apartment.png" setup.charImage("npc_barista") setup.charImage("npc_technician")>>
<div id="invframe" class="scrolltext">
You nod just as <<=setup.getNpcName("npc_technician","first")>> walks back from wishing her other friend's good evening.<br>
<br>
"@@.npc_technician;Hey so... what are you too hotties conspiring about over here?@@"<br>
<br>
"@@.npc_barista;Just telling <<=$player.first_name>> about a possible lead that may help take down <<=setup.getNpcName("npc_boss","formal")>>.@@"<br>
<br>
"@@.npc_technician;Groovy! Well, if you need my help for anything, you know I'll be there, for the both of you.@@"<br>
<br>
"@@.npc_barista;Like, of course!@@" <<=setup.getNpcName("npc_barista","nickname")>> replies<<if $npc_barista.flags.rescue.cure != "good">>the bimbo antidote fading swiftly<<else>>, rising to her feet and slipping back into her bimbo persona<</if>>. "@@.npc_barista;I'll catch you two later, be careful!@@"<br>
<br>
"@@.npc_technician;We will, mom!@@" <<=setup.getNpcName("npc_technician","first")>> jokes back, escorting her friend out before turning back to you with a grin.
<<switch $npc_technician.relationship.relationship_stage>>
<<case 0>>
"@@.npc_technician;So... do you need to head out too?@@"
<<case 1>>
"@@.npc_technician;So, my love, what are you feeling like tonight?@@"
<<case 2>>
<<switch $npc_technician.relationship.her_role>>
<<case 'dom'>>
"@@.npc_technician;So, Princess, you feel like having fun tonight? Well... more fun?@@"
<<case 'neutral' ''>>
"@@.npc_technician;So, my love, what are you feeling like tonight?@@"
<<case "sub">>
"@@.npc_technician;What do you wish to do tonight, <<switch $npc_technician.flags.knowgender>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"
<<default>>
ERROR: unexpected npc_technician.relationship.her_role <<=$npc_technician.relationship.her_role>>
<</switch>>
<<default>>
ERROR: unexpected npc_technician.relationship.relationship_stage <<=$npc_technician.relationship.relationship_stage>>
<</switch>>
<br><br>
<<include "post_session_options">>
</div><<if !$events.hasOwnProperty('ceo_visit_invite') && !State.hasPlayed("event_ceo_visit_invite_1") && $npc_manager.stage >= 5 && (State.hasPlayed("event_sex_club_chastity_finale_3") || State.hasPlayed("event_maid_work_dog_show_4") || State.hasPlayed("event_sexclub_event_bdsm_2") || State.hasPlayed("event_sex_club_dressage_3") || State.hasPlayed("event_sexclub_event_demo_2_join") || State.hasPlayed("event_sexclub_event_bukkake_3") || State.hasPlayed("event_botanist_club_4_volunteer"))>>
<<addEvent 'ceo_visit_invite'>>
<</if>>/*#
#desc: npc_sex_club proposes npc_ceo visit
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_sex_club","formal")>> greets you with a smile "@@.npc_sex_club;<<=$player.first_name>>! After seeing that show you put on the other week... well, I have a proposition for you. You see, I have a certain client, very rich, very perverted. They have me on the lookout for interesting people that might be willing to spend a night with them and their <<if $fetish.sissy>>sissy <</if>>slave. Your skills, well, I think they'd just love you. Think about it. If you decide you're interested, let me know, and I'll set things up. Now, with that spot of business out of the way... is there anything else you wanted to speak about this evening?@@"<br>
<br>
<<include "sexClubOwnerTopics">>
</div>/*#
#desc: talk to npc_sex_club about npc_ceo visit
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
You mention that you'd be interested in
<<if $npc_ceo.flags.visits == 0>>
visiting the rich patron that <<=setup.getNpcName("npc_sex_club","formal")>> mentioned.<br>
<br>
<<if _hasNextWeekendEvent>>
"@@.npc_sex_club;Wonderful! Only, the client... well... I already have someone booked for them. I know I was the one initiating, but schedules change quickly, perhaps you check with me in a week or so and we see if we can do business then, yes?@@"
<<else>>
"@@.npc_sex_club;Wonderful! How does next Saturday sound? I'll take care of all the travel arrangements. You'll get <<=$npc_ceo.flags.pay>> credits for your time, and you'll need to sign an NDA — for the client's privacy, you understand.@@"
<</if>>
<<else>>
visiting <<=setup.getNpcName("npc_ceo_butler","formal")>> again.<br>
<br>
<<if _hasNextWeekendEvent>>
"@@.npc_sex_club;Again? You are a deranged pervert! Only, the client... well... I already have someone booked for them. Alas, in this business schedules change quickly, perhaps you check with me in a week or so and we see if we can arrange things then, yes?@@"
<<else>>
"@@.npc_sex_club;Again? You are a deranged pervert! I'll tell you, even with all the pre-screening diligence I go through, most people I send end up deciding that they can't handle <<=setup.getNpcName("npc_ceo_butler","formal")>> more than once... if <<he npc_ceo_butler>> doesn't just get bored of them. But you... you want back for more, and the review you got was QUITE positive. Same arrangement as before, next Saturday?@@"
<</if>>
<</if>>
<br><br>
<<if _hasNextWeekendEvent>>
<<include "sexClubOwnerTopics">>
<<else>>
[<<moveTo "event_sex_club_owner_ceo_visit_2" "Sounds great!" 180 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_sex_club_owner_ceo_visit_2" "You have another engagement." 180 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: confirm npc_ceo visit
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<set _nextDate = setup.getNextDayOfWeek($now, 6, 8, 0, false)>>
<<if $npc_ceo.flags.visits == 0>>
<<addTaskById 'ceo_visit_first' _nextDate>>
<<else>>
<<addTaskById 'ceo_visit_repeat' _nextDate>>
<</if>>
<</if>>
<</if>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Floor">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.sex_club_info.owner.dom>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_dom")>>
<<else>>
<<createAdvBGR "./images/locations/sex_club_interior.png" setup.charImage("npc_sex_club","npc_sex_club_gimp")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
"@@.npc_sex_club;Wonderful! I'll make the arrangement and a car will be by to pick you up bright an early Saturday morning! Don't worry about bringing anything. The client will provide whatever they need.@@"
<<else>>
"@@.npc_sex_club;I see, well, if your schedule clears up, let me know.@@"
<</if>>
<br><br>
<<include "sexClubOwnerTopics">>
</div>/*#
#desc: npc_sex_club call about you missing visit with npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName("npc_sex_club","formal")>>. "@@.npc_sex_club;Having cold feet? I had such lofty expectations for you... very well. If you find your courage in the future and wish to take me up on this opportunity, merely speak with me again.@@"<br>
<br>
<<He npc_sex_club>> hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: picked up by npc_ceo_butler visit with npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
Promptly at eight you get a call — looks like it's time for your trip to visit <<=setup.getNpcName("npc_ceo_butler", "formal")>>.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo 'event_ceo_visit_first_2' 'Head down.' 600>>]
<<else>>
[@@.link_locked;You aren't going outside dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: npc_ceo_butler drives you to visit npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
You head downstairs where there is a limo waiting.
<<if $npc_ceo.flags.dr_appointment>>
You stop in surprise, you recognise the driver, <<he npc_ceo_butler>> was supervising one of <<=ps(setup.getNpcName("npc_work_doctor", "formal"))>> patients. Your nurse attire means <<he npc_ceo_butler>> does not recognise you. <<He npc_ceo_butler>>
<<else>>
The driver
<</if>>
introduces <<him npc_ceo_butler>>self as <<=setup.getNpcName("npc_ceo_butler", "other")>>.<br>
<br>
"@@.npc_ceo_butler;Miss <<=$player.last_name>>? Come, <<=setup.getNpcName("npc_ceo", "other")>> is very excited to meet you. You will find the paperwork in the backseat. Please review and sign it before we arrive.@@"<br>
<br>
You get into the vehicle and <<he npc_ceo_butler>> speeds off.<br>
<br>
[<<moveTo "event_ceo_visit_first_3" "Read the paperwork." 3600 "<<set $scene.sign=false>>">>]<br>
[<<moveTo "event_ceo_visit_first_3" "Just sign it." 3600 "<<set $scene.sign=true>>">>]
</div>/*#
#desc: npc_ceo_butler drives you to visit npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
<<if $scene.sign>>
You sign the NDA and settle back for the rest of the drive, the vehicle bypasses traffic via the elite VIP tunnel system under the city before popping up outside of town and zooming into the nearby foothills.<br>
<br>
After passing through a secure gate you travel another several minutes across an obviously expansive property to arrive at a massive mansion.<br>
<br>
[<<moveTo "event_ceo_visit_first_4" "Get out of the vehicle." 600 "<<set $scene.sign=true>>">>]
<<else>>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
You read the NDA. In principle it's quite straightforward, but VERY thorough, establishing not just financial, but criminal penalties if you spoke about what you are about to experience.
<<else>>
You read the NDA. It's actually written surprisingly straightforward, for a legal document. The short of it is that speaking ANYTHING about what you're about to experience today would lead to financial and possibly even criminal liability?
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You try to read the NDA. According to the summary it seems like it would prevent you from saying anything about what you do today, with VERY steep penalties.
<<else>>
You spend a few minutes attempting to read the NDA, but you don't get much further than those three letters. Reading is, like, hard.
<</if>>
<</if>>
<br><br>
[<<moveTo "event_ceo_visit_first_4" "Sign it." 600 "<<set $scene.sign=true>>">>]<br>
[<<moveTo "event_ceo_visit_first_abort" "Do not sign it." 600 "<<set $scene.sign=true>>">>]
<</if>>
</div>/*#
#desc: do not sign npc_ceo visit NDA
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
You refuse to sign the NDA — you've gotten into enough trouble with that sort of thing.<br>
<br>
Concealing <<his npc_ceo_butler>> annoyance, <<=setup.getNpcName("npc_ceo_butler", "formal")>> drives you back to your flat.<br>
<br>
"@@.npc_ceo_butler;If you change your mind in the future, Miss <<=$player.last_name>>? <<=setup.getNpcName("npc_ceo", "other")>> was very interested in spending some time with you.@@"<br>
<br>
[<<moveTo "room_foyer" "Home." 600>>]
</div>/*#
#desc: given bondage maid outfit
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "bondage_maid_black">>
<<if setup.checkItemSetWorn('bondage_maid_black')>>
<<initRoom>>
<<moveTo "event_ceo_visit_first_5">>
<</if>>
<</if>>
<<set $player.location to "Mansion Side Entrance">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_side_entrance.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_ceo_butler", "formal")>> drives past the main entrance to the mansion, pulling into a garage and leading you through a side entrance.<br>
<br>
"@@.npc_ceo_butler;Here is your outfit for the day. I will assist you in changing so you may meet the Lady of the house and begin your day.@@"<br>
<br>
You look in awe at the outfit set out for you — a maid's outfit, complete with corset, heels and a headdress that also incorporates a gag. rather than laces or buckles each item has a matching set of small padlocks. Wearing this outfit will have you a cute, mute, obedient bondage maid until someone gives you the key...<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_ceo_visit_first_5" "Get changed." 600 "<<wearItemSet 'bondage_maid_black'>>">>]
<</if>>
</div>/*#
#desc: change into bondage maid attire
#status: RELEASED 0.9.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Everything is locked on!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.collarAttach = setup.checkItemTypeWorn("choker") && setup.checkItemTypeTag("choker", "leash_attachment")>>
<<if !$scene.collarAttach>>
<<addItem 'loose_collar'>>
<<wearItem 'loose_collar' true>>
<</if>>
<<addItem 'leash_black'>>
<<wearItem 'leash_black' true>>
<</if>>
<<set $player.location to "Mansion Side Entrance">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_side_entrance.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_ceo_butler", "formal")>> helps you into the bondage maid outfit — lacing the corset brutally tight, filling your mouth with the gag and locking you in head to toe fetish maid finery.<br>
<br>
<<if $scene.collarAttach>>
<<He npc_ceo_butler>> clips a leash to your collar and leads you into the house.
<<else>>
<<He npc_ceo_butler>> finishes off by locking a heavy collar and leash around your neck and leading you into the house.
<</if>>
<br><br>
"@@.npc_ceo_butler;Come along. It is time to rouse and meet the Lady of the House.@@"<br>
<br>
You follow into the massive mansion; your heels echoing off the marble floor, locks clicking with each modest hobble-shortened step.<br>
<br>
[<<moveTo "event_ceo_visit_first_6" "Follow obediently." 1800>>]
</div>/*#
#desc: npc_ceo introduction
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_bedroom.png" setup.charImage("npc_ceo_butler") setup.charImage("npc_ceo")>>
<div id="invframe" class="scrolltext">
You wonder just how expansive the mansion is as <<=setup.getNpcName("npc_ceo_butler", "formal")>> leads you through the house and into a bedroom.<br>
<br>
Even you find yourself gasping at the sight that greets you. Completely restrained in a vertical vacuum bed they appear completely encased in latex save for the large dildo in their ass, its sibling bulging their throat... and the trio of milking devices pumping away at their large breasts and small cock.<br>
<br>
What looks like a VR headpiece has the individual blind and deaf.<br>
<br>
<<=setup.getNpcName("npc_ceo_butler", "formal")>> presses a button and the machines lurch into motion; ravaging the helplessly bound subject as they stir and shudder in their latex prison.<br>
<br>
"@@.npc_ceo_butler;Once the alarm routine finishes you are to assist <<=setup.getNpcName("npc_ceo", "nickname")>> in getting dressed and prepared for the day.@@" <<He npc_ceo_butler>> gestures towards an outfit similar to your own that has already been set out — with the addition of a punishingly steep posture collar and a matching armbinder.<br>
<br>
You hear a soft moan as the no-longer-sleeping beauty's oral dildo retracts<<if $fetish.cum>> — pausing just past the parted lips to spurt the recently harvested <<getWordCum>> onto the waiting tongue<</if>>. The other machines begin releasing as you <<if $player.sec_style.submission.sissyomatic || $npc_sissy_secretary.stage >= 4 || $npc_work_doctor.flags.sissyomatic_offer || $currentTasks.hasOwnProperty('task_sissyomatic_steal')>>recognise a <<=setup.getItemName('sissyomatic_belt')>> close up<<else>>look up on the most high-tech chastity device you've ever seen<</if>>.<br>
<br>
The vacuum bed releases and you hurry into position to help <<=setup.getNpcName("npc_ceo", "nickname")>> to their feet.<br>
<br>
"@@.npc_ceo;Oh, yay, another guest! I so enjoy company!@@" She says in bubbly greeting.<br>
<br>
<<=setup.getNpcName("npc_ceo_butler", "formal")>> presses a button and <<=setup.getNpcName("npc_ceo", "nickname")>> gasps at what was certainly a punishing electric shock. With a quick curtsy she hurries over to where the outfit is laid out. "@@.npc_ceo;Sorry, <<sir npc_ceo_butler>>.@@"<br>
<br>
You hurry to help — <<=setup.getNpcName("npc_ceo_butler", "formal")>> seems quite quick with the punishment and you do not wish to be to blame for <<=setup.getNpcName("npc_ceo", "nickname")>> enduring any additional cruelty.<br>
<br>
<<printThought "Imprisoned like this for so many years... I wonder if there's anything of <<=ps(setup.getNpcName('npc_ceo', 'formal'))>> left? Going to be hard to find out so long as I'm bound and gagged...">><br>
<br>
You help lock <<=setup.getNpcName("npc_ceo", "nickname")>> into her outfit without further incident, <<=setup.getNpcName("npc_ceo_butler", "formal")>> supervising you lacing and buckling it even tighter than your own brutally restrictive attire. Soon there are two <<if $fetish.sissy>>sissy <</if>> bondage maids being led through the house — <<=setup.getNpcName("npc_ceo_butler", "formal")>> leading the way, followed by <<=setup.getNpcName("npc_ceo", "nickname")>> with her gag-spread lips raised high by the posture collar, and you bringing up the rear as the maid's maidservant.<br>
<br>
<<if $fetish.cum || $fetish.piss>>
[<<moveTo "event_ceo_visit_first_7" "Trail dutifully." 1800>>]
<<else>>
[<<moveTo "event_ceo_visit_first_8" "Trail dutifully." 1800>>]
<</if>>
</div>/*#
#desc: npc_ceo breakfast - piss + cum
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' $npc_ceo_butler.penis_size 'normal' $SEEN_STRANGER>>
<<changeHorny 30>>
<</if>>
<<set $player.location to "Breakfast Nook">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_bedroom.png" setup.charImage("npc_ceo_butler") setup.charImage("npc_ceo")>>
<div id="invframe" class="scrolltext">
You make your way through the mansion and come to a breakfast nook off the large kitchen. <<=setup.getNpcName("npc_ceo", "nickname")>> takes her seat, gracefully sliding down onto a massive dildo mounted to a stool to wait for her meal.<br>
<br>
You assist in screwing a funnel to the front of <<=ps(setup.getNpcName("npc_ceo", "nickname"))>> gag as you understand the purpose of the stiff posture collar. <<=setup.getNpcName("npc_ceo_butler", "formal")>> measures out a not particularly appetising liquid meal<<if $fetish.piss>> before finishing it off by unzipping <<his npc_ceo_butler>> fly and pissing into the container<</if>>.<br>
<br>
<<=setup.getNpcName("npc_ceo_butler", "formal")>> hands you the mixture and you pour it into the funnel, <<=setup.getNpcName("npc_ceo", "nickname")>> appearing not just unbothered, but seemingly enamoured by the taste as her eyes twinkle with delight and she eagerly gulps things down.<br>
<br>
<<if $fetish.cum>>
As you pour the last of her meal into the funnel you look over to see <<=setup.getNpcName("npc_ceo_butler", "formal")>> with <<his npc_ceo_butler>> pants still unbuttoned, <<his npc_ceo_butler>> large <<getWordPenis "npc_ceo_butler">> hard, having already dripped a few drops of pre-cum onto a saucer. "@@.npc_ceo_butler;It is time for you to prepare the Lady's dessert.@@" <<He npc_ceo_butler>> explains.<br>
<br>
You reach down to jerk <<him npc_ceo_butler>> off but <<he npc_ceo_butler>> shakes <<his npc_ceo_butler>> head. "@@.npc_ceo_butler;Bend over.@@"<br>
<br>
You do as commanded and <<he npc_ceo_butler>> gives you a quick, hard ass-fuck as <<=setup.getNpcName("npc_ceo", "nickname")>> sucks down the rest of her meal and watches on.<br>
<br>
<<=setup.getNpcName("npc_ceo_butler", "formal")>> isn't just large, but <<he npc_ceo_butler>> knows how to use it, getting you right to the brink of analgasm before climaxing in what you are certain was an intentionally timed effort to leave you horny and wanting.<br>
<br>
Moving surprisingly well given the combination of hobbles, corset, posture collar and armbinder, <<=setup.getNpcName("npc_ceo", "nickname")>> has already risen off her dildo stool to kneel down behind you, the insert of her gag temporarily removed so that her tongue can reach past her ring gag to lick the cum out of your asshole.<br>
<br>
The anilingus pushes you over the edge you moan in a small orgasm before your plug, and her full gag, are replaced.
<</if>>
<br><br>
"@@.npc_ceo_butler;Come, it is time for morning flogging.@@" <<He npc_ceo_butler>> explains, taking up your leashes and leading you away from the breakfast nook.<br>
<br>
[<<moveTo "event_ceo_visit_first_8" "Continue." 3600>>]
</div>/*#
#desc: npc_ceo morning punishment - bdsm
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 16 'very' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 20 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo_butler") setup.charImage("npc_ceo")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_ceo_butler", "formal")>> again leads you through the house to a room that can only be called a dungeon — with two Saint Andrew's Crosses your apparent destination.<br>
<br>
Your leash is clipped to the ceiling while <<=setup.getNpcName("npc_ceo", "nickname")>> is strapped in first, her armbinder removed to re-buckle her limbs outspread, corset removed and the rear of the maid's outfit opened to expose her back and bottom... the latter further augmented by a large dildo being raised up, rooting her in place.<br>
<br>
Taking hold of your leash once more, <<=setup.getNpcName("npc_ceo_butler", "formal")>> leads you to the other implement. "@@.npc_ceo_butler;Frequent whippings are as important for a slave as any meal. <<=setup.getNpcName("npc_ceo", "nickname")>> seems to take to her lessons so much better when she has a sister in suffering.@@"<br>
<br>
The both of you restrained <<if $player.body_ref.vagina>>— and you double-impaled with dildos fore and aft<<else>>— and anally impaled<</if>> you listen in anticipation as <<=setup.getNpcName("npc_ceo_butler", "formal")>> selects the day's implements. Out of the corner of your eye you catch sight of <<him npc_ceo_butler>> walking back from a VERY expansive collection of impact devices carrying a heavy flogger and a nasty looking dragon's tongue whip.<br>
<br>
"@@.npc_ceo_butler;And so we begin today's lesson in pain,@@" <<he npc_ceo_butler>>
<<if setup.checkItemTypeTag('cage', ['ems']) || setup.checkItemTypeTag('plug', ['ems'])>>
states... only to take you by surprise when your
<<if setup.checkItemTypeTag('cage', ['ems']) && setup.checkItemTypeTag('plug', ['ems'])>>
chastity <<if setup.isCage()>>cage<<else>>belt<</if>> and plug shock you...
<<elseif setup.checkItemTypeTag('cage', ['ems'])>>
chastity <<if setup.isCage()>>cage<<else>>belt<</if>> shocks you...
<<elseif setup.checkItemTypeTag('plug', ['ems'])>>
plug shocks you...
<</if>>
literally — the distraction serving to make the sharp blow of the flogger surprising, and even more painful!
<<else>>
states before lashing out with the flogger.
<</if>><br>
<br>
The punishment continues as the <<man npc_ceo_butler>> shows no mercy, continuing to shock, flog and whip you and <<=setup.getNpcName("npc_ceo", "nickname")>> until the dungeon echoes with your gag-muffled cries of pain.<br>
<br>
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
The blend of agony has you in masochistic heaven... and a glance at your partner would seem to indicate that she is right there with you,
<<else>>
Even your masochism is put to the test as you pant through your gag and look over at your "partner" — her expression one that seems to mix agony with masochistic euphoria,
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
You pant in pain and
<<else>>
Tears stream down your face as you
<</if>>
look over at your "partner" — her expression one that seems to mix agony with masochistic euphoria,
<</if>>
moaning into her gag with each crack of the whip.<br>
<br>
You aren't certain where in the session that the <<if $player.body_ref.vagina>>dildos inside you begin<<else>>dildo inside you begins<</if>> to thrust, but thrust <<if $player.body_ref.vagina>>they do<<else>>it does<</if>>, as you and your compatriot are fucked, shocked and flogged until you climax — sweat, tears and other fluids dripping onto the floor before your clothes are locked back on and you are helped off your frame.<br>
<br>
Back on the leash you are lead off again, wincing with each step as your skirt brushes your whipped ass, or your top pulls tight against your tender back.<br>
<br>
[<<moveTo "event_ceo_visit_first_9" "Continue." 1800>>]
</div>/*#
#desc: npc_ceo afternoon race, anal + heels
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "bondage_maid_armbinder">>
<<wearItem "bondage_maid_armbinder" true>>
<<applyExperience 'bondage' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 13 'very' $SEEN_STRANGER>>
<<applyExperience 'anal' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'oral' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'heels' 18 'very' $SEEN_STRANGER>>
<<applyExperience 'stamina' 18 'very' $SEEN_STRANGER>>
<</if>>
<<set $player.location to "Mansion Grounds">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_yard.png" setup.charImage("npc_ceo_butler") setup.charImage("npc_ceo")>>
<div id="invframe" class="scrolltext">
Out of the house, you find yourself in the expansive, and wonderfully landscaped, back yard of the mansion. Given your steep heels, you are grateful that your path takes you along a smooth, paved walkway before you arrive at a circular area — a large post in the centre with a cross-beam from which hangs a sort of "seat" — if one could call little more than a large dildo a "seat." <br>
<br>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> are hitched to either side of the device, such that if one of you moves, the other will be need to walk as well or be dragged off-balance. For additional security your arms are pulled behind your back into a reverse prayer that has you almost jealous of your compatriot's "mere" armbinder. Though you remain gagged, a fresh insert is added — a long dildo mounted between your lips<br>
<br>
"@@.npc_ceo_butler;Heel training is a skill that benefits from constant honing, and a bit of head to head motivation should make it even more educational. Drag behind and your harness will take up some of your weight... at the cost of the dildo thrusting even deeper in your pretty asses. Of course if you try to rush in an unladylike manner you'll be pulled up right quick as that other dildo forces its way down your throat. Now then, get moving!@@"<br>
<br>
A hard slap on <<=ps(setup.getNpcName("npc_ceo", "nickname"))>> ass sets her into motion, the dildo in your ass immediately thrusting deeper until you lurch forward to catch up, your rush resulting in partial relief below even as your throat is harshly penetrated. It is almost a full revolution before you manage to find the proper pace, mincing along while <<=setup.getNpcName("npc_ceo_butler", "formal")>> shouts out additional instructions, to "@@.npc_ceo_butler;Keep your head up!@@" or "@@.npc_ceo_butler;Put some sway in those hips!@@" — Any failure met by a punishing shock that never fails to have one or the other of you stumble forward or back, and thus enter another round of alternating double penetration until you find the proper pace once again.<br>
<br>
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
Even your expert skill in heels is put to the test as the training drags on.
<<else>>
Your skill in heels is tested hard as you try to focus on one step at a time.
<</if>>
<<else>>
You struggle mightily, wishing you had spent more time training in heels as your failures of balance and poise are met with frequent punishment.
<</if>>
The sun rises higher into the sky and you are are sweating and panting through your gag as your "training" drags on through the morning...<br>
<br>
[<<moveTo "event_ceo_visit_first_10" "Continue." 4200>>]
</div>/*#
#desc: npc_ceo lunch penis worship + oral
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyFatigue 150>>
<<removeItem "bondage_maid_armbinder" true>>
<<deleteItem "bondage_maid_armbinder">>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo_butler") setup.charImage("npc_ceo")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
It is only thanks to your many previous cardio sessions that you are able to keep up and still feel something approaching energetic by the time <<=setup.getNpcName("npc_ceo_butler", "formal")>> calls an end to the morning's training.
<<else>>
Your predicament leaving you no option to stop you push on past exhaustion until <<=setup.getNpcName("npc_ceo_butler", "formal")>> finally calls an end to the morning's training.
<</if>>
<<else>>
You are near dead on your feet but the time <<=setup.getNpcName("npc_ceo_butler", "formal")>> finally calls a stop to training, barely able to avoid crumpling to the ground in exhaustion.
<</if>>
<br><br>
"@@.npc_ceo_butler;Come along, <<if $fetish.sissy>>sissies<<else>>girls<</if>>!@@" <<He npc_ceo_butler>> states, pulling the two of you along by your leashes once again. "@@.npc_ceo_butler;I imagine both of you are hungry for lunch — Miss <<=$player.last_name>> especially since she missed out on breakfast!@@"<br>
<br>
You find yourself back in the dungeon, but this time you are on your knees, <<=setup.getNpcName("npc_ceo", "nickname")>> on either side of a variation on the familiar <<if $fetish.sissy>>sissy<<else>>girl<</if>> hitching post; sucking away at what you're pretty certain is a pair of exact replicas of <<=ps(setup.getNpcName("npc_ceo_butler", "formal"))>> <<getWordPenis "npc_ceo_butler">>, forced to employ every skill you have to earn your meal.<br>
<br>
As tightly corseted as you are it doesn't take much for you to feel full, but that just signals the next portion of things as — still bound in a kneeling position, <<=setup.getNpcName("npc_ceo", "nickname")>> and you are turned and pushed cheek to cheek for a two-girl, ring-gagged blowjob of <<=setup.getNpcName("npc_ceo_butler", "formal")>>.<br>
<br>
The <<man npc_ceo_butler>> shows startling stamina,
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
pushing the limits of even your long-honed skills,
<<else>>
pushing you to step up even your considerable game as you find yourself
<</if>>
constantly competing with <<=setup.getNpcName("npc_ceo", "nickname")>> for a taste of that dick in between "rest" periods of suckling on <<his npc_ceo_butler>> balls.
<<else>>
your lips, tongue and throat exhausted as you resign yourself to just sucking on <<his npc_ceo_butler>> balls while <<=setup.getNpcName("npc_ceo", "nickname")>> takes the lead.
<</if>>
<br><br>
<<if $fetish.cum>>
In the end the "prize" goes to <<=setup.getNpcName("npc_ceo", "nickname")>> as she proves herself a real cum-slut, only to just as eagerly share with you, leaning in for a kiss; her cum-soaked tongue reaching out with its offering; an offering that you
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
hungrily accept.
<<else>>
gratefully accept.
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
find yourself accepting without resistance.
<<else>>
have no choice but to share.
<</if>>
<</if>>
<<else>>
In the end the "prize" goes to <<=setup.getNpcName("npc_ceo", "nickname")>> as she gulps down <<his npc_ceo_butler>> cum gleefully and you take the opportunity to just catch your breath.
<</if>>
<br><br>
[<<moveTo "event_ceo_visit_first_11" "Keep kissing." 1800>>]
</div>/*#
#desc: change to head home
#status: WRITTEN 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_bedroom.png">>
<div id="invframe" class="scrolltext">
"@@.npc_ceo_butler;Well,@@" <<=setup.getNpcName("npc_ceo_butler", "formal")>> states as <<he npc_ceo_butler>> zips up and you continue to make out with <<=setup.getNpcName("npc_ceo", "nickname")>>. "@@.npc_ceo_butler;As lovely of a guest as you have been, <<=setup.getNpcName("npc_ceo", "nickname")>> has some more severe training scheduled for this afternoon, so I need to get you home.@@"<br>
<br>
Somewhat reluctantly breaking your kiss you realise that you've spent the whole time thus far gagged — with no opportunity to even try to question <<=setup.getNpcName("npc_ceo", "nickname")>> about <<=setup.getNpcName("npc_boss", "formal")>> or the company!<br>
<br>
Further dashing your hopes <<=setup.getNpcName("npc_ceo_butler", "formal")>> spends time re-binding <<=setup.getNpcName("npc_ceo", "nickname")>> in a latex vacuum cube — with a fucking machine in each hole and a VR harness over her ears and eyes, before <<he npc_ceo_butler>> even lets you up from your knees.<br>
<br>
<<printThought "Dammit; was this whole trip for nothing?">><br>
<br>
You are finally let back to your feet as <<=setup.getNpcName("npc_ceo_butler", "formal")>> leads you back to the side entrance to change.<br>
<br>
[<<moveTo "event_ceo_visit_first_12" "Change." 1800>>]
</div>/*#
#desc: npc_ceo sent home
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'bondage_maid_black' true>>
<<deleteItemSet 'bondage_maid_black'>>
<<useClothSetPop 'tmp'>>
<</if>>
<<set $player.location to "Mansion Side Entrance">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_side_entrance.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_ceo_butler", "formal")>> unlocks your maid outfit and waits for you to change back into your own clothes.<br>
<br>
[<<moveTo "event_ceo_visit_first_13" 'Ask if you could speak with <<=setup.getNpcName("npc_ceo", "nickname")>> before you go.' 3600 "<<set $scene.question=true>>">>]<br>
[<<moveTo "event_ceo_visit_first_13" 'Just get in the car.' 3600 "<<set $scene.question=false>>">>]
</div>/*#
#desc: npc_ceo sent home
#status: RELEASED 0.9.3.0
#*/
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits `$npc_ceo.flags.pay * 2`>>
<<set $npc_ceo.flags.visits = 1>>
<</if>>
<<set $player.location to "Mansion Side Entrance">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_side_entrance.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
<<if $scene.question>>
You ask if you could say good-bye to <<=setup.getNpcName("npc_ceo", "nickname")>> before you go?<br>
<br>
"@@.npc_ceo_butler;I am sorry, but she has already started her meditation. She gets so excited and rebellious when we have guests, she needs a few hours of therapy and some more severe training after I return. Perhaps if you came back some other time, after she is more accustomed to your presence, the two of you might exchange notes on how to be better <<if $fetish.sissy>>sissy <</if>>slaves. I keep the gags in for all first visits to avoid distractions.@@"<br>
<br>
<<printThought "Rebellious? More severe? What is this psychopath doing to her?">><br>
<br>
You hold your tongue as <<he npc_ceo_butler>> gestures for you to get into the car.
<<else>>
Tired from the busy morning you get into the car.
<</if>>
<br><br>
Once you're sitting down in the opulent limo; without pain or pleasure to distract you, you find yourself falling asleep, only waking when the vehicle pulls up in front of your flat and <<=setup.getNpcName("npc_ceo_butler", "formal")>> hands you an envelope full of credits.<br>
<br>
"@@.npc_ceo_butler;You'll find a bit extra for your performance. Finding someone that can be a good example for <<=setup.getNpcName("npc_ceo", "nickname")>> is such a challenge, I like to reward it. Speak with <<=setup.getNpcName("npc_sex_club","formal")>> if you wish to make arrangements to visit again. But note that expectations will be higher. To keep things interesting I will ask that next time you come with an outfit of your own, <<if setup.checkVisibleClothingTag("fetish") > 60>>something like what you have now would suffice, or get creative, though <<=setup.getNpcName("npc_ceo", "nickname")>> may live by a very strict routine, she adores the novel<<else>>if you cannot show some fetish creativity there, well... I don't think it is worth our time<</if>>.@@"<br>
<br>
You thank <<him npc_ceo_butler>> and leave the vehicle, the limo speeding away as you walk into your building and ride up to your flat.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 300 "<<applyFatigue -30>>">>]
</div>/*#
#desc: npc_ceo_butler picks you up for repeat visit
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Foyer">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/flat_foyer_01.png">>
<div id="invframe" class="scrolltext">
Promptly at eight, you get the call from <<=setup.getNpcName("npc_ceo_butler", "formal")>> that <<he npc_ceo_butler>>'s here to pick you up — and <<he npc_ceo_butler>> converts things to a one-way video call to confirm your outfit is "appropriate." <br>
<br>
<<if setup.checkOutsideDecency() || setup.getTotalValue("humiliation") > 15>>
<<if setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish']) == 'fetish'>>
[<<moveTo 'event_ceo_visit_2' 'Head down.' 600>>]<br>
<<else>>
"@@.npc_ceo_butler;I told you before — if you want to visit again, you need to dress to impress. What you have now is hardly sufficient.@@"<br>
<br>
[@@.link_locked;Doesn't look like this outfit will work...@@]<br>
<</if>>
<<else>>
<<if setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish']) == 'fetish'>>
<<=setup.getNpcName("npc_ceo_butler", "formal")>> approves of your outfit, but going out in public like this — even just to run to the limo, would be too humiliating!<br>
<br>
<<if setup.getWillpower() > 0 && setup.getTotalValue("humiliation") > 15>>
[<<moveTo 'event_ceo_visit_2' 'Take a deep breath and head down.' 600 "<<spendWillpower 1>>">>] <<hint $options "This will cost willpower">><br>
<<elseif setup.getWillpower() > 1 && setup.getTotalValue("humiliation") > 10>>
[<<moveTo 'event_ceo_visit_2' 'Grit your teeth and head down.' 600 "<<spendWillpower 2>>">>] <<hint $options "This will cost willpower">><br>
<<else>>
[@@.link_locked;You aren't going outside dressed like this.@@]<br>
<</if>>
<<else>>
[@@.link_locked;You aren't going outside dressed like this.@@]<br>
<</if>>
<</if>>
[<<moveTo 'event_ceo_visit_abort' "On second though, you aren't ready for this today." 180>>]
</div>/*#
#desc: npc_ceo pickup abort
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_ceo_butler", "formal")>> that you changed your mind and are not up for visiting <<=setup.getNpcName("npc_ceo", "nickname")>> today.<br>
<br>
<<if setup.analyzeWornTags(['slutty','casual','office','formal','maid','fetish']) == 'fetish'>>
"@@.npc_ceo_butler;Disappointing. That outfit looked quite appealing. Speak with <<=setup.getNpcName("npc_sex_club","formal")>> if you decide to try again some other weekend.@@"
<<else>>
"@@.npc_ceo_butler;I see. Well I wish you luck in finding a more appropriate outfit for the next time. Speak with <<=setup.getNpcName("npc_sex_club","formal")>> if you decide to try again some other weekend.@@"
<</if>>
<br><br>
<<He npc_ceo_butler>> ends the call.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
</div>/*#
#desc: npc_ceo_butler drives you to visit npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'terrible' $EXPOSED>>
<</if>>
<<set $player.location to "Limousine">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
You head down to the limo in your fetishistic garb. Even the handful of steps from the door to your apartment building to the limo is enough for several people to stare at you and you
<<if setup.checkOutsideDecency()>>
feel a thrill of excitement at the exposure.
<<else>>
step faster, ignoring their attention to gain the privacy of the limo.
<</if>>
<br><br>
<<=setup.getNpcName("npc_ceo_butler", "formal")>> hands you another NDA to sign and pulls away from the curb.<br>
<br>
"@@.npc_ceo_butler;Same agreement as last time,@@" <<he npc_ceo_butler>> explains and you sign it and settle in for the ride.<br>
<br>
[<<moveTo "event_ceo_visit_3" "Continue." 3600>>]
</div>/*#
#desc: given bondage gear
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem 'pony_gag'>>
<<addItem 'rpg_steel_restraints'>>
<</if>>
<<if setup.isItemEquipped('pony_gag') && setup.isItemEquipped('rpg_steel_restraints')>>
<<moveTo 'event_ceo_visit_4'>>
<</if>>
<<set $player.location to "Mansion Side Entrance">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_side_entrance.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
The drive passes without incident and you pull up to the side entrance.<br>
<br>
<<if $npc_ceo.flags.talked>>
"@@.npc_ceo_butler;Welcome, again. <<=setup.getNpcName("npc_ceo", "nickname")>> is eager to spend some time with you. Perhaps after you are finished the two of you might talk, if you have interest in such.@@"<br>
<br>
<<if $npc_ceo.flags.dominated == 1>>
[<<moveTo "event_ceo_visit_4_dom_1" 'You want to prove your dominance over <<=setup.getNpcName("npc_ceo", "nickname")>>.' 600>>]<br>
<<elseif $npc_ceo.flags.dominated > 1>>
[<<moveTo "event_ceo_visit_4_dom_repeat_1" 'Dominate <<=setup.getNpcName("npc_ceo", "nickname")>> again.' 10000>>]<br>
<</if>>
[<<moveTo "event_ceo_visit_4" "Get gagged and restrained." 600>>]<br>
<<else>>
Rather than a bondage maid outfit you find merely bondage as <<=setup.getNpcName("npc_ceo_butler", "formal")>> presents you with a gag and a set of steel restrains that <<he npc_ceo_butler>> clearly expects you to wear for the day.<br>
<br>
<<printThought '<<He npc_ceo_butler>> is never going to let me have real contact with <<=setup.getNpcName("npc_ceo", "other")>>... to do this jail-break I need to take out the warden...'>><br>
<br>
<<if setup.getTotalValue("martial_arts") <= 0>>
[@@.link_locked;You have no real clue how to fight... maybe you should take some classes?@@]<br>
<<else>>
[<<moveTo "event_ceo_talk_1" 'Attack <<=setup.getNpcName("npc_ceo_butler", "formal")>>.' 600>>]<br>
<</if>>
[<<moveTo "event_ceo_visit_4" "Accept the restraints." 12000>>]
<</if>>
</div>/*#
#desc: restrained for repeat visit
#status: RELEASED 0.9.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<wearItem 'pony_gag' true>>
<<wearItem 'rpg_steel_restraints' true>>
<<set $scene.options = ['bdsm', 'bondage', 'heels', 'oral', 'anal', 'bimbofication', 'feminization', 'penis', 'foot', 'makeup']>>
<<if $fetish.cum>>
<<set $scene.options.push('cum')>>
<</if>>
<<if $fetish.piss>>
<<set $scene.options.push('piss')>>
<</if>>
<<if $fetish.bestiality_hard>>
<<if setup.getTotalValue("bestiality") >= 4>>
<<set $scene.options.push('dog')>>
<</if>>
<<if setup.getTotalValue("bestiality") >= 9>>
<<set $scene.options.push('horse')>>
<</if>>
<</if>>
<<set $scene.fetish = $scene.options.random()>>
<<switch $scene.fetish>>
<<case 'bdsm' 'bondage' 'heels' 'oral' 'anal' 'bimbofication' 'feminization' 'makeup' 'penis' 'foot''cum' 'piss'>>
<<set _skill = setup.getTotalValue($scene.fetish)>>
<<applyExperience $scene.fetish _skill 'skip' $SEEN_FRIEND>>
<<case 'dog'>>
<<applyExperience 'bestiality' 5 'skip' $SEEN_FRIEND>>
<<case 'horse'>>
<<applyExperience 'bestiality' 10 'skip' $SEEN_FRIEND>>
<<default>>
ERROR: unexpected scene.fetish <<=$scene.fetish>>
<</switch>>
<<applyFatigue 150>>
<<set $npc_ceo.flags.visits += 1>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo_butler") setup.charImage("npc_ceo")>>
<div id="invframe" class="scrolltext">
Cuffed and gagged, you are brought to <<=setup.getNpcName("npc_ceo", "nickname")>> where she is "released" from her sleep bondage into a similar arrangement to yourself before <<=setup.getNpcName("npc_ceo_butler", "formal")>> takes the two of you for your days training.<br>
<br>
<<switch $scene.fetish>>
<<case 'bdsm'>>
Strapped to matching racks in the dungeon, the two of you are tortured and punished for the entire morning.
<<if setup.getTotalValue("bdsm") > 10>>
<<if setup.getTotalValue("bdsm") > 15>>
Even your masochistic needs are sated by the intense punishment
<<else>>
Your masochistic urges are sated and then some
<</if>>
<<else>>
<<if setup.getTotalValue("bdsm") > 5>>
You try to endure, but the pain rolls on
<<else>>
You howl in pain, but it brings no respite
<</if>>
<</if>>
as you and <<=setup.getNpcName("npc_ceo", "nickname")>> are whipped, caned, flogged, stretched, slapped, electrocuted and more.
<<case 'bondage'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> are bound and gagged together, first with heavy leather straps that dig into your skin, then a layer of tape that all but mummifies you, before being shrink wrapped and then packed in some sort of expanding foam.<br>
<br>
Blind, mute, deaf and unable to move in the slightest,
<<if setup.getTotalValue("bondage") > 10>>
<<if setup.getTotalValue("bondage") > 15>>
you find a moment of peace in your complete bondage.
<<else>>
you discover a new level of bound bliss.
<</if>>
<<else>>
your body almost shuts down, the totality of your bondage far beyond anything you could have imagined.
<</if>>
<<case 'heels'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> enjoy another morning of high heel training as, shod in towering ballet boots, you are required to walk in slow circles, your gait and pace corrected at the slightest error.<br>
<br>
<<if setup.getTotalValue("heels") > 10>>
<<if setup.getTotalValue("heels") > 15>>
You step nimble and proud; walking so far is a challenge, even for you, but you perform well, buoyed by the idea that you are setting an example for <<=setup.getNpcName("npc_ceo", "nickname")>>.
<<else>>
Even your skill in heels is pushed to the limit as, though your legs start to give out, you are forced to continue on, relying on the support of your harness as your toes and ankles scream in agony and you struggle to continue to put one foot in front of the other.
<</if>>
<<else>>
Merely standing in ballet boots is beyond your skill, and you are forced to rely on the support of your harness as you are forced to stumble through lap after toe-punishing lap.
<</if>>
<<case 'oral'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning honing your oral skills, sucking and deep throating a myriad variety of dildos, from the amazingly realistic, to the fantastical, to the geometric you
<<if setup.getTotalValue("oral") > 10>>
suck and swallow every manner of phallus
<<if setup.getTotalValue("oral") > 15>>
in the ultimate display of oral acumen.
<<else>>
in an attempt to further refine your oral acumen.
<</if>>
<<else>>
struggle to keep up as <<=setup.getNpcName("npc_ceo", "nickname")>> gulps down even the largest artificial cock with hungry gusto.
<</if>>
<<case 'anal'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning stretching your anal capacity, being fucked and spread by all manner of dildos, speculums and flexible depth-probing devices.<br>
<br>
<<if setup.getTotalValue("anal") > 15>>
The culmination comes when you and <<=setup.getNpcName("npc_ceo", "nickname")>> each take <<if $fetish.fisting>>one of <<=setup.getNpcName("npc_ceo_butler", "formal")>> fists nearly to the elbow<<else>>a dildo the size of your arm deep enough to visibly swelling your bellies<</if>>, moaning through your gags like the pair of butt-sluts that you are.
<<else>>
<<if setup.getTotalValue("anal") > 10>>
Your poor ass is pushed to its limit,
<<else>>
You learn just how unskilled your ass is as you watch <<=setup.getNpcName("npc_ceo_butler", "formal")>> eagerly plunge plugs and dildos over twice the size that you can handle deep into her ass. Sore and stretched, you eventually tap out,
<</if>>
leaving you to watch from the sidelines as <<=setup.getNpcName("npc_ceo_butler", "formal")>> <<if $fetish.fisting>>fists <<=setup.getNpcName("npc_ceo", "nickname")>> almost to the elbow<<else>>finishes things off with a dildo the size of your arm<</if>> as <<=setup.getNpcName("npc_ceo", "nickname")>> moans through her gag in ecstasy.
<</if>>
<<case 'bimbofication'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning in bimbo bliss, trying on ever-sluttier outfits in a special changing room that has you surrounded by screens showing a constant stream of <<if $fetish.sissy>>sissy <</if>>bimbofication porn, the blend of aroused moans and bimbo-riffic mantras played through the speakers
<<if setup.getTotalValue("bimbofication") > 10>>
<<if setup.getTotalValue("bimbofication") > 15>>
making you smile in bubbly sex-obsessed heaven.
<<else>>
overpowering all other thoughts in favour of horny, sex-obsessed lusts.
<</if>>
<<else>>
beating through your defences until your every thought is one of sex-obsessed lust.
<</if>>
<<case 'feminization'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning in ultra-fem overload; doing each other's hair, trying on clothes and watching some girly movies as you relax in perfect pink bliss.
<<case 'makeup'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning practicing doing one another's makeup.
<<if setup.getTotalValue("makeup") > 10>>
<<if setup.getTotalValue("makeup") > 15>>
You manage to even teach <<=setup.getNpcName("npc_ceo", "nickname")>> a trick or two as you marvel at
<<else>>
She manages to teach you a couple of new tricks... though mostly you're just jealous of
<</if>>
<<else>>
You try to learn a few new tricks, while not getting distracted by the options presented by
<</if>>
her seemingly infinite battlestation of supplies.
<<case 'penis'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning
<<if setup.getTotalValue("penis") > 10>>
<<if setup.getTotalValue("penis") > 15>>
in that most wondrous of activities:
<</if>>
worshipping <<getWordPenis>>.
<<else>>
forced to worship <<getWordPenis>>.
<</if>>
<br><br>
A massive screen the size of a wall plays endless videos of cocks in every shape and size as passionate recordings gush endlessly about how much you love <<getWordPenis>>; these lessons further reinforced as you and <<=setup.getNpcName("npc_ceo", "nickname")>> practice with some of the most realistic silicon members you've ever seen. Hour after hour, wherever you look, however you try to think; everything is dick.
<<case 'foot'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning doing each other's manicures and then tongue polishing <<=ps(setup.getNpcName("npc_ceo", "nickname"))>> seemingly endless collection of high heel shoes and boots.<br>
<br>
By the time you're done, all you can smell is feet, and all you can think of is beautiful toes tucked properly into the perfect heels...<br>
<br>
<<if setup.getTotalValue("foot") > 10>>
<<if setup.getTotalValue("foot") > 15>>
<<printThought "Shoes, feet... step on me and make my day complete...">>
<<else>>
<<printThought "Shoes, feet... is there anything better?">>
<</if>>
<<else>>
<<printThought "I think I've finally discovered the level of too many shoes...">>
<</if>>
<<case 'cum'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning in what can only be described as a bukkake chamber. The walls and ceiling are covered in artificial cocks, each spurting <<getWordCum>> in random patterns, a nigh constant barrage that first covers the two of you in <<getWordCum>>... and then starts to pool.<br>
<br>
<<if setup.getTotalValue("cum") > 10>><<if setup.getTotalValue("cum") > 15>>
Swallowing as much as you can, you end up literally bathing in <<getWordCum>>, smiling at the feeling of it against your skin... and occasionally leaning over to lick up a mouthful, or wrap your lips around one of the many cocks to suck down a piping hot fresh load.
<<else>>
This much cum in one place boggles your mind, but you can't pass up the opportunity to literally bathe in it; <<=setup.getNpcName("npc_ceo", "nickname")>> rubbing it into one anothers skin and drinking as much as you can in the cream-filled chamber.
<</if>>
<<else>>
All you can see, or taste and smell is <<getWordCum>>, an almost overwhelming experience that has you, on occasion, questioning if there is anything else...
<</if>>
<<case 'piss'>>
You spend the morning literally swimming in piss as the two of your frolic in a golden swimming pool.
<<if setup.getTotalValue("piss") > 10>>
<<if setup.getTotalValue("piss") > 15>>
You are in heavenly bliss as you enjoy the tingly feel of the <<getWordPiss>> all around you, pausing frequently to take a drink before diving under and glorifying at being totally submerged in the heavenly fluid.
<<else>>
A veritable flood of <<getWordPiss>> is a bit much, even for you, but you still find yourself swimming and splashing, and taking the occasional sip as you enjoy the golden pond.
<</if>>
<<else>>
So much <<getWordPiss>> in one place is surreal, but after a while it starts to feel normal as you and <<=setup.getNpcName("npc_ceo", "nickname")>> swim, splash and drink from the bountiful pool.
<</if>>
<<case 'dog'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning in the mansion's kennels, enjoying an entire pack of pure-bred dogs that have been trained to perfection as they knot the both of you from either end, licking and slobbering all over you as they have their fun — and you yours.<br>
<br>
By the time the pack is sated you and <<=setup.getNpcName("npc_ceo", "nickname")>> are curled up against each other, sore<<if $fetish.cum>>, satisfied, and soaked in dog cum<<else>> and satisfied<</if>>.
<<case 'horse'>>
You and <<=setup.getNpcName("npc_ceo", "nickname")>> spend the morning in the mansion's stables, harnessed up for breeding by a series of champion-level stallions. By the time the two of you have finished
<<if $fetish.cum>>
you've been pumped full of horse cum from either end, your bodies
<<else>>
your bodies are
<</if>>
stretched, fucked and satisfied; two thoroughly bred mares.
<<default>>
ERROR: unexpected scene.fetish <<=$scene.fetish>>
<</switch>>
<br><br>
<<if $npc_ceo.flags.talked>>
At the end of your exhausting training <<=setup.getNpcName("npc_ceo_butler", "formal")>> grants the two of you a few minutes without your gags to cuddle in satisfied aftermath.<br>
<br>
<<if $npc_ceo.flags.sub_skills.feminization && $npc_ceo.flags.sub_skills.submission && $npc_ceo.flags.sub_skills.bimbofication && $npc_ceo.flags.sub_skills.bondage && $npc_ceo.flags.sub_skills.bdsm && $npc_ceo.flags.sub_skills.humiliation && $npc_ceo.flags.sub_skills.whoring && $npc_ceo.flags.sub_skills.penis && $npc_ceo.flags.sub_skills.foot && ($npc_ceo.flags.sub_skills.cum || !$fetish.cum) && ($npc_ceo.flags.sub_skills.piss || !$fetish.piss) && ($npc_ceo.flags.sub_skills.bestiality || !$fetish.bestiality_hard)>>
[@@.link_locked;You have already impressed <<=setup.getNpcName("npc_ceo", "formal")>> in every possible way.@@]<br>
<<else>>
[<<moveTo "event_ceo_talk_8_sub_1" 'Wait for your restraints to be removed and try again to impress her with your submission and skills.' 600 "<<set $scene.first=false>><<removeItem 'pony_gag' true>><<deleteItem 'pony_gag'>><<removeItem 'rpg_steel_restraints' true>><<deleteItem 'rpg_steel_restraints'>>">>]<br>
<</if>>
<<if $npc_ceo.flags.dominated == 0 && setup.getTotalValue("dominance") > 0>>
[<<moveTo "event_ceo_talk_8_dom" 'Wait for your restraints to be removed and dominate her.' 600 "<<set $scene.first=false>><<removeItem 'pony_gag' true>><<deleteItem 'pony_gag'>><<removeItem 'rpg_steel_restraints' true>><<deleteItem 'rpg_steel_restraints'>>">>]<br>
<<elseif $npc_ceo.flags.dominated == 1>>
[@@.link_locked;You have demonstrated your dominance to <<=setup.getNpcName("npc_ceo", "formal")>>, but you're too tired too properly prove it.@@]<br>
<<elseif $npc_ceo.flags.dominated == 2>>
[@@.link_locked;You have already fully proven your dominance to <<=setup.getNpcName("npc_ceo", "formal")>>.@@]<br>
<</if>>
[<<moveTo "room_foyer" 'Pass out and wait for the limo to take you home.' 3600 "<<removeItem 'pony_gag' true>><<deleteItem 'pony_gag'>><<removeItem 'rpg_steel_restraints' true>><<deleteItem 'rpg_steel_restraints'>><<applyFatigue -30>>">>]
<<else>>
Exhausted, you crawl along with <<=setup.getNpcName("npc_ceo", "nickname")>> and watch her get strapped into VR bondage for further "training" before your restraints are removed and <<=setup.getNpcName("npc_ceo_butler", "formal")>> holds the limo door for you.<br>
<br>
[<<moveTo "event_ceo_visit_5" 'Ask if you could speak with <<=setup.getNpcName("npc_ceo", "nickname")>> before you go.' 3600 "<<set $scene.question=true>>">>]<br>
[<<moveTo "event_ceo_visit_5" 'Just get in the car.' 3600 "<<set $scene.question=false>>">>]
<</if>>
</div>/*#
#desc: npc_ceo sent home
#status: RELEASED 0.9.3.0
#*/
<<set $player.cutscene.reason = "Not now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'pony_gag' true>>
<<deleteItem 'pony_gag'>>
<<removeItem 'rpg_steel_restraints' true>>
<<deleteItem 'rpg_steel_restraints'>>
<<addCredits `$npc_ceo.flags.pay * 2`>>
<</if>>
<<set $player.location to "Mansion Side Entrance">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_side_entrance.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
<<if $scene.question>>
You ask if you could say good-bye to <<=setup.getNpcName("npc_ceo", "nickname")>> before you go.<br>
<br>
"@@.npc_ceo_butler;I am sorry, but she has already started her meditation. Perhaps some other time.@@"<br>
<br>
<<printThought "Hmm, for as polite and formal as <<he npc_ceo_butler>> acts... <<he npc_ceo_butler>> is really evasive.">><br>
<br>
You hold your tongue as <<he npc_ceo_butler>> gestures for you to get into the car.
<<else>>
Tired from the busy morning you get into the car.
<</if>>
<br><br>
Once you're sitting down in the opulent limo; without pain or pleasure to distract you, you find yourself falling asleep, only waking when the vehicle pulls up in front of your flat and <<=setup.getNpcName("npc_ceo_butler", "formal")>> hands you an envelope full of credits.<br>
<br>
"@@.npc_ceo_butler;You'll find a bit extra for your performance, finding someone that can be a good example for <<=setup.getNpcName("npc_ceo", "nickname")>> is such a challenge, I like to reward it. Speak with <<=setup.getNpcName("npc_sex_club","formal")>> if you wish to make arrangements to visit again, but note that expectations will be higher. To keep things interesting I will ask that you come with an outfit of your own, <<if setup.checkVisibleClothingTag("fetish") > 60>>something like what you have now would suffice, or get creative, though <<=setup.getNpcName("npc_ceo", "nickname")>> may live by a very strict routine, she adores the novel<<else>>if you cannot show some fetish creativity there, well... I don't think it is worth our time<</if>>.@@"<br>
<br>
You thank <<him npc_ceo_butler>> and leave the vehicle, the limo speeding away as you walk into your building and ride up to your flat.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 300 "<<applyFatigue -30>>">>]
</div>/*#
#desc: attempt to dominate npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_bedroom.png" setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
You inform <<=setup.getNpcName("npc_ceo_butler", "formal")>> that you would like to spend the morning dominating <<=setup.getNpcName("npc_ceo", "nickname")>> and the butler nods, leading the way to <<=ps(setup.getNpcName("npc_ceo", "nickname"))>> bedroom and assisting in releasing the <<if $fetish.sissy>>sissified<<else>>submissive<</if>> ex-ceo from their overnight bondage and then turning the eager, naked <<if $fetish.sissy>>sissy<<else>>submissive<</if>> over to your care.<br>
<br>
<<=setup.getNpcName("npc_ceo", "nickname")>> looks up at you and smiles asking if you're "@@.npc_ceo;here for my reprogramming?@@"<br>
<br>
[<<moveTo "event_ceo_visit_4_dom_2" 'Yes, that brain needs some <<if $fetish.sissy>>sissifying<<else>>feminising<</if>> smoothing out.' 3600 "<<set $scene.abort=false>>">>]<br>
[<<moveTo "event_ceo_visit_4_dom_2" 'You changed your mind about doing this today.' 3600 "<<set $scene.abort=true>>">>]
</div>/*#
#desc: attempt dominate npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.abort>>
<<set $npc_ceo.flags.dominated = 2>>
<</if>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_bedroom.png" setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
<<if $scene.abort>>
Faced with the prospect of taking full dominant charge over <<=setup.getNpcName("npc_ceo", "nickname")>>, you suddenly get cold feet. You take a moment to put <<=setup.getNpcName("npc_ceo", "nickname")>> in some temporary bondage, and then find <<=setup.getNpcName("npc_ceo_butler", "formal")>> who accepts the situation with a nod, double checking that <<=setup.getNpcName("npc_ceo", "nickname")>> has been properly secured before leading you back to the car to drive you back to town.<br>
<br>
[<<moveTo "event_ceo_visit_5" 'Get in the car.' 3600 "<<set $scene.question=false>>">>]
<<else>>
You kick things off with a nice simple <<if $fetish.sissy>>sissy<<else>>femme<</if>> makeover; frilled latex gloves and stockings, a nice ball gag and pretty pigtails tied up with bows as you describe a scenario where, in punishment for some unspecified crime <<=setup.getNpcName("npc_ceo", "nickname")>> has been sentenced to some re-education community service training.<br>
<br>
With <<=setup.getNpcName("npc_ceo", "nickname")>> obediently in tow, you take advantage of the impressive collection of equipment the one time CEO has collected, hooking them up for some heavy duty <<if $fetish.milking>>milking, <</if>>machine-fucking and bondage, torturing and stimulating them simultaneously as you describe injecting them with special Cybernetic Utility machines to reinforce their "training" and transformation a fully obedient and broken contributor to the community.<br>
<br>
<<=setup.getNpcName("npc_ceo", "nickname")>> plays at resistance... but there's no mistaking how much they adore this harsh treatment, and by the end of the morning fully embracing their "new" role as an Airheaded Bimbo<<if $fetish.sissy>> Sissy<</if>><<if $fetish.cum>>Cumbucket<<else>>Submissive<</if>>, ready to put their body to use serving the community.<br>
<br>
With <<=setup.getNpcName("npc_ceo", "nickname")>> laying down and enjoying a well-earned (and tightly bound) nap <<=setup.getNpcName("npc_ceo_butler", "formal")>> re-appears to drive you home.<br>
<br>
[<<moveTo "event_ceo_visit_5" 'Get in the car.' 3600 "<<set $scene.question=false>>">>]
<</if>>
</div>/*#
#desc: attempt to dominate npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_bedroom.png" setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
You spend another morning putting <<=setup.getNpcName("npc_ceo", "nickname")>> firmly under your heel. Leveraging your own experience being a <<if $fetish.sissy>>sissified<<else>>feminised<</if>> slave you use and abuse <<=setup.getNpcName("npc_ceo", "nickname")>> just the way they love, pushing them to embrace some of their most extreme fantasies as they endure pain, humiliation and more.<br>
<br>
By the end of the morning <<=setup.getNpcName("npc_ceo", "nickname")>> is more than ready to relax, joyously submitting to getting tucked in to one of their favourite strenuous bondage positions by you and <<=setup.getNpcName("npc_ceo_butler", "formal")>> before the butler leads you out to the car to take you home.<br>
<br>
[<<moveTo "event_ceo_visit_5" 'Just get in the car.' 3600 "<<set $scene.question=false>>">>]
</div>/*#
#desc: fight npc_ceo_butler
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem 'pony_gag'>>
<<deleteItem 'rpg_steel_restraints'>>
<<set $scene.win_fight = setup.getTotalValue("martial_arts") >= 20>>
<</if>>
<<set $player.location to "Mansion Side Entrance">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_side_entrance.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
<<if $scene.win_fight>>
You strike swift, strong and with perfect technique, but even with all that <<he npc_ceo_butler>> puts up a fight and you only barely manage to put <<him npc_ceo_butler>> down.<br>
<br>
Breathing heavy you grab the restraints and chain <<him npc_ceo_butler>> up, adding a gag just as <<he npc_ceo_butler>> comes to. <<He npc_ceo_butler>> thrashes against the bonds, but you have already found and pocketed the key, closing and locking the door behind you as you go off in search of <<=setup.getNpcName("npc_ceo", "nickname")>>.<br>
<br>
[<<moveTo "event_ceo_talk_2" "Search." 1800>>]
<<else>>
Even with the advantage of surprise
<<if setup.getTotalValue("martial_arts") > 10>>
<<=setup.getNpcName("npc_ceo_butler", "formal")>>
<<if setup.getTotalValue("martial_arts") > 15>>
recovers from your attack and battles back. The fight is back and forth, but <<his npc_ceo_butler>> advantage in size and strength proves the difference, despite your skill.
<<else>>
manages to barely evade your attack. Once <<he npc_ceo_butler>>'s aware and on the offensive your skill matters little as <<he npc_ceo_butler>> weathers your attack and strikes back twice as hard.
<</if>>
<<else>>
you have no chance against <<=setup.getNpcName("npc_ceo_butler", "formal")>>. As if with some sort of sixth sense <<he npc_ceo_butler>> dodges your initial blow,
<<if setup.getTotalValue("martial_arts") > 5>>
your follow-up attacks missing even worse as <<he npc_ceo_butler>> efficiently over powers you.
<<else>>
and you do not even get to throw another one before <<he npc_ceo_butler>> has over powered you.
<</if>>
<</if>>
<br><br>
You are subdued and unceremoniously tossed into the limousine's trunk and driven back to town.<br>
<br>
When the trunk opens you find yourself in an alleyway, <<=setup.getNpcName("npc_ceo_butler", "formal")>> standing over you holding an activated stun baton.<br>
<br>
"@@.npc_ceo_butler;I advise you to re-consider today's actions. You remain an interesting play partner for <<=setup.getNpcName("npc_ceo", "nickname")>>, but I advise you to learn some more control of yourself before you next contact <<=setup.getNpcName("npc_sex_club","formal")>>.@@"<br>
<br>
<<He npc_ceo_butler>> steps aside as you crawl out of the trunk. <<He npc_ceo_butler>> gets back in the vehicle and drives away as you realise you are in an alleyway behind your apartment building.<br>
<br>
[<<moveTo "room_foyer" "Go home." 600>>]
<</if>>
</div>/*#
#desc: find npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.first = true>>
<<set $npc_ceo.flags.talked = true>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_bedroom.png" setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
You run through the house, doing your best to remember the layout of the massive mansion; grateful when you finally come to <<=ps(setup.getNpcName("npc_ceo", "formal"))>> familiar bedroom where you hurriedly free them from their cruel bondage.<br>
<br>
Their gag removed they look at you in confusion. "@@.npc_ceo;Where is <<=setup.getNpcName("npc_ceo_butler", "<<Master npc_ceo_butler>>")>>?@@" They ask.<br>
<br>
[<<moveTo "event_ceo_talk_3" "My name is <<=$player.first_name>> <<=$player.last_name>> and I'm here to rescue you!" 300 "<<set $scene.action='rescue'>>">>]<br>
[<<moveTo "event_ceo_talk_3" "They're safe, you took care of their captor." 300 "<<set $scene.action='safe'>>">>]<br>
[<<moveTo "event_ceo_talk_3" "Greet them by their real name." 300 "<<set $scene.action='name'>>">>]<br>
</div>/*#
#desc: greet npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_bedroom.png" setup.charImage("npc_ceo","npc_ceo_naked")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'rescue'>>
You tell <<=setup.getNpcName("npc_ceo", "nickname")>> that you're here to rescue them.<br>
<br>
"@@.npc_ceo;Rescue? I don't need a rescue? Now come on, tie me up, I don't like being naked and unrestrained like this...@@"
<<case 'safe'>>
You tell <<=setup.getNpcName("npc_ceo", "nickname")>> that they're safe now.<br>
<br>
"@@.npc_ceo;Safe? But I'm, like, naked and unrestrained, I don't even have a gag! Please... I need something to suck on!@@"
<<case 'name'>>
You use <<=setup.getNpcName("npc_ceo", "formal")>> full name and they look back in confusion.<br>
<br>
"@@.npc_ceo;Who are you talking about? I'm <<if $fetish.sissy>>sissy <</if>><<=setup.getNpcName("npc_ceo", "nickname")>>!@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<printThought "Just how brainwashed are they?">> You think, only for <<=setup.getNpcName("npc_ceo_butler", "formal")>> to burst into the room.<br>
<br>
Before you can even assume a stance, much less make a plan <<=setup.getNpcName("npc_ceo_butler", "formal")>> has shot you with some sort of stun device. The last thing you remember before you pass out is <<=setup.getNpcName("npc_ceo", "nickname")>> saving you from falling.<br>
<br>
[<<moveTo "event_ceo_talk_4" "Well that didn't go well..." 600>>]
</div>/*#
#desc: wake up in npc_ceo_butler's control
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo_butler")>>
<div id="invframe" class="scrolltext">
You come to in the dungeon. Naked, and bound as <<=setup.getNpcName("npc_ceo_butler", "formal")>> steps away holding a spent syringe.<br>
<br>
"@@.npc_ceo_butler;Truth serum.@@" <<He npc_ceo_butler>> explains. "@@.npc_ceo_butler;Now, tell me what you were trying to do to <<=setup.getNpcName("npc_ceo","nickname")>>.@@"<br>
<br>
[<<moveTo "event_ceo_talk_5" 'You are here to rescue <<=setup.getNpcName("npc_ceo","formal")>>.' 600 "<<set $scene.rescue=true>>">>]<br>
[<<moveTo "event_ceo_talk_5" 'You are trying to bring down <<=setup.getNpcName("npc_boss","formal")>>.' 600 "<<set $scene.rescue=false>>">>]
</div>/*#
#desc: npc_ceo_butler questions you
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo_butler") setup.charImage("npc_ceo","npc_ceo_robe")>>
<div id="invframe" class="scrolltext">
<<if $scene.rescue>>
Words tumble past your lips as you explain that you came here to rescue <<=setup.getNpcName("npc_ceo","formal")>> from their imprisonment.<br>
<br>
"@@.npc_ceo_butler;Rescue?@@" <<He npc_ceo_butler>> chuckles. "@@.npc_ceo_butler;Oh, you foolish, foolish thing.@@"<br>
<br>
<<His npc_ceo_butler>> dismissal inflames your anger and you are unable to resist screaming at <<him npc_ceo_butler>> for <<his npc_ceo_butler>> part in keeping <<=setup.getNpcName("npc_ceo","formal")>> a near-mindless prisoner.
<<else>>
You are unable to hold your tongue as you explain that you are trying to bring down <<=setup.getNpcName("npc_boss","formal")>>, and are seeking help from <<=setup.getNpcName("npc_ceo","formal")>>.<br>
<br>
"@@.npc_ceo_butler;To bring down <<=setup.getNpcName("npc_boss","formal")>>? Why would anyone wish to do that? And why on earth are you using that name?@@"
<</if>>
<br><br>
"@@.npc_ceo;That will be enough.@@" <<=setup.getNpcName("npc_ceo","nickname")>> states as they step into view.<br>
<br>
Free of any restraint for the first time that you've ever seen <<=setup.getNpcName("npc_ceo","nickname")>> carries themselves differently. Dressed in a pink robe, and with perfect hair and makeup they look both cute and... almost regal, instantly commanding the room with their presence as they stay <<=setup.getNpcName("npc_ceo_butler","formal")>> with a gentle touch of their hand.<br>
<br>
"@@.npc_ceo;Leave us. I believe Miss <<=$player.last_name>> and I will find a more productive dialogue just the two of us.@@"<br>
<br>
<<=setup.getNpcName("npc_ceo_butler","formal")>> bows and departs the room.<br>
<br>
"@@.npc_ceo;I trust you will not do anything foolish if I let you down?@@" <<=setup.getNpcName("npc_ceo","nickname")>> asks once the door has closed behind <<=setup.getNpcName("npc_ceo_butler","formal")>>.<br>
<br>
[<<moveTo "event_ceo_talk_6" 'Nod.' 600 "<<set $scene.escape=false>>">>]<br>
[<<moveTo "event_ceo_talk_6" "You can't make that promise." 600 "<<set $scene.escape=true>>">>]
</div>/*#
#desc: npc_ceo questions you
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo","npc_ceo_robe")>>
<div id="invframe" class="scrolltext">
<<if $scene.escape>>
<<=setup.getNpcName("npc_ceo","nickname")>> titters in amusement. "@@.npc_ceo;I would congratulate the honesty, but you are still under the effects of that truth serum.@@"
<<else>>
<<=setup.getNpcName("npc_ceo","nickname")>> smiles and lets you out of your restraints.
<</if>>
<br><br>
"@@.npc_ceo;So, first of all, please call me <<=setup.getNpcName("npc_ceo","nickname")>>, I was <<=setup.getNpcName("npc_ceo","formal")>> long ago... but no more. Now, let me clear some things up. I am not a "prisoner" as you seem to think. Everything that has happened to me is by my own choice and the only true discomfort is that I have had to put my wonderful bimbo life aside to have this conversation.@@"<br>
<br>
You look at <<=setup.getNpcName("npc_ceo","nickname")>> in confusion. The incongruity between their <<if $fetish.sissy>>sissified<<else>>soft<</if>>, feminine appearance and the way they now talk with natural authority that reminds you of <<=setup.getNpcName("npc_manager", "formal")>> or <<=setup.getNpcName("npc_boss", "formal")>>.<br>
<br>
They smile in amusement at your confusion. "@@.npc_ceo;Do you have any idea how stressful it is to be in charge of a trillion-credit company? To have the responsibility for hundreds of thousand of employees and billions of customers? I had spent my life building Social Interaction Service Syndicate Inc. and then, after the war... well, I was on top of the world. And I realised that it was all hollow. By any standard metric I was a success — rich, powerful, but I realised that I was in no way happy.@@"<br>
<br>
They pause, amused at some memory "@@.npc_ceo;I suppose the next step was a cliche — the powerful CEO sneaking off to be a subby slave, but that first session, with a discrete professional dominatrix, well... there was no going back. I continued to manage the company, but my other life began consuming more and more of my interest. I started diverting company resources to new research projects that could help me better enjoy this new side of myself as I, for the first time in my career, turned my eye towards retirement.@@"<br>
<br>
"@@.npc_ceo;For decades <<=setup.getNpcName("npc_ceo_butler", "formal")>> had been my confidant and closest ally, but now <<he npc_ceo_butler>> took on another role, that of lover and <<Master npc_ceo_butler>>... as well as providing a check on my new experimentation, to keep it all hidden from the rest of the world. I began delegating my responsibilities until a particularly ambitious junior executive came across the truth of what I was doing. <<He npc_boss>> made me an offer — <<he npc_boss>> would take over the company, and I would enjoy my retirement in the way that I wished. Swallowing the pink pill that day, feeling my worries recede before <<=setup.getNpcName("npc_ceo_butler", "formal")>> pulled the gag tight and tied me up for the drive here... well, it was one of the happiest moments of my life, and I have not regretted it once in the decade hence.@@"<br>
<br>
<<=setup.getNpcName("npc_ceo","nickname")>> gives you some time to process things, but, in the end, there is really only one question to ask.<br>
<br>
[<<moveTo "event_ceo_talk_7" 'The ambitious executive... that was <<=setup.getNpcName("npc_boss", "formal")>>?' 600>>]
</div>/*#
#desc: npc_ceo tells you about npc_boss
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo","npc_ceo_robe")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_ceo", "nickname")>> nods. "@@.npc_ceo;Yes, <<=setup.getNpcName("npc_boss", "formal")>>... probably the most cunning and ambitious employee I have ever met. <<He npc_boss>> rose through the company like there was a rocket-ship strapped to <<his npc_boss>> back so it made all the sense in the world to leave <<him npc_boss>> in charge when I left. You say you wish to destroy <<him npc_boss>>? Why?@@"<br>
<br>
You explain what's going on at the company — what was done to you, and others... and <<=ps(setup.getNpcName("npc_boss", "formal"))>> plans to expand things even further in <<his npc_boss>> mad quest for power.<br>
<br>
As you talk, you see a third side to <<=setup.getNpcName("npc_ceo", "nickname")>> — not the <<if $fetish.sissy>>sissified <</if>>bimbo slave, or the confident CEO in a cute package, but someone shocked, regretful, and betrayed.<br>
<br>
"@@.npc_ceo;Goddess... <<he npc_boss>> took everything I did for myself and... perverted it, <<he npc_boss>>...@@" <<=setup.getNpcName("npc_ceo", "nickname")>> suddenly starts laughing... to the point that you start to get concerned and you ask what's going on?<br>
<br>
"@@.npc_ceo;Don't you see? It's the perfect plan! I may technically own the company, but I can't come back! I'd be discredited in an instant with all the material <<=setup.getNpcName("npc_boss", "formal")>> has on me. A decade and more of orgies, <<if $fetish.sissy>>sissification<<else>>feminisation<</if>> and worse... and that's if I even had the skills to take <<him npc_boss>> on after all this time...@@" <<=setup.getNpcName("npc_ceo", "nickname")>> shakes her head.<br>
<br>
"@@.npc_ceo;No. While I might sympathise with your plight... I'm retired, and you'd be better off embracing your new life, or quitting, there's nothing I can do.@@"<br>
<br>
[<<moveTo "event_ceo_talk_8_dom" 'Dominate <<=setup.getNpcName("npc_ceo", "nickname")>> into helping you.' 600>>]<br>
[<<moveTo "event_ceo_talk_8_sub_1" 'Tell <<=setup.getNpcName("npc_ceo", "nickname")>> that you can teach her more about being a submissive <<if $fetish.sissy>>sissy <</if>>slave if they will turn over the company to you.' 600>>]
</div>/*#
#desc: try to dominate npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("dominance") >= 20>>
<<set $npc_ceo.flags.dominated = 1>>
<<set $npc_ceo.flags.ally = true>>
<</if>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<if setup.getTotalValue("dominance") >= 20>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo","npc_ceo_naked")>>
<<else>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo","npc_ceo_robe")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("dominance") >= 20>>
You unleash the full force of your dominance as you command <<=setup.getNpcName("npc_ceo", "nickname")>> to help you.<br>
<br>
She gasps, her robe falling to the floor as she drops to her knees and bows before you.<br>
<br>
"@@.npc_ceo;My Goddess... I never imagined <<if $fetish.sissy>>a sissy<<else>>someone so cute<</if>> could make me feel like this, but if you can impress me, who's been a <<if $fetish.sissy>>sissy <</if>>slave 24/7/365 for over ten years... you may have what it takes to take on <<=setup.getNpcName("npc_boss", "formal")>>.@@" She pauses. "@@.npc_ceo;May I stand and address you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"<br>
<br>
You give her permission and <<=setup.getNpcName("npc_ceo", "nickname")>> rises submissively.<br>
<br>
"@@.npc_ceo;Thank you, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>... you have the strength to handle the company, but that isn't enough. <<=setup.getNpcName("npc_boss", "formal")>> may only be acting CEO, but for me to take over, after this long, would require approval of the board... and I don't see them voting for me over the helms<<man npc_boss>> of the last decade's success. You need to remove <<=setup.getNpcName("npc_boss", "formal")>>. With <<him npc_boss>> gone, leadership passes to me automatically and I'll sign the entire damn company over to whoever you want, if that is acceptable, <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>>?@@"<br>
<br>
You agree that it is and <<=setup.getNpcName("npc_ceo", "nickname")>> practically glows with submissive joy.<br>
<br>
"@@.npc_ceo;Thank you, thank you. As much as I want to just worship your feet... all this thinking is giving me a headache and I think I need to take my medicine and spend a few hours on the Dreammaker getting my brains fucked out of me, my mouth fuck-hole is meant for cock, not talking! <<=setup.getNpcName("npc_ceo_butler", "formal")>> will take you home. If you wish to join me some other time to play well... I have really loved our time together...@@"<br>
<br>
<<=setup.getNpcName("npc_ceo_butler", "formal")>> returns to the room and <<=setup.getNpcName("npc_ceo", "nickname")>> hurriedly explains the situation... while on her knees sucking <<his npc_ceo_butler>> cock. <<=setup.getNpcName("npc_ceo_butler", "formal")>> shows some initial skepticism but assents to <<=ps(setup.getNpcName("npc_ceo", "nickname"))>> instructions. <<He npc_ceo_butler>> finishes<<if $fetish.cum>> on <<=ps(setup.getNpcName("npc_ceo", "nickname"))>> face<</if>> and straps her in in for some machine-fuck bondage before taking you back to the car.<br>
<br>
Only once you are on the road does <<he npc_ceo_butler>> speak to you. "@@.npc_ceo_butler;I think, in a way, that <<=setup.getNpcName("npc_ceo", "nickname")>> has been looking for someone to pass responsibility on to. Someone who understands. <<=setup.getNpcName("npc_boss", "formal")>> may have taken over the company, but <<he npc_ceo_butler>> never properly inherited it.@@" The butler sighs. "@@.npc_ceo_butler;<<He npc_boss>> was so ambitious... and always a dangerous <<man npc_boss>>... I hope you succeed. But be careful, <<he npc_boss>> is one of the most cunning and ruthless <<if $npc_boss.fem>>people<<else>>men<</if>> I have ever met — and I spent a lifetime in and around boardrooms and other halls of power.@@"<br>
<br>
You thank <<him npc_ceo_butler>> for the advice. "@@.npc_ceo_butler;I would ask that, should you visit it us again, you refrain from forcing <<=setup.getNpcName("npc_ceo", "nickname")>> out of her happy place again. She has earned this retirement. If you want to enjoy it with her. you can make arrangements with <<=setup.getNpcName("npc_sex_club","formal")>>, but otherwise, do not darken our door until <<=setup.getNpcName("npc_boss", "formal")>> is dealt with.@@"
<<else>>
You attempt to assert your dominance and command <<=setup.getNpcName("npc_ceo", "nickname")>> to help you.
<<if setup.getTotalValue("dominance") > 10>>
<<if setup.getTotalValue("dominance") > 15>>
She hesitates, her face flushing slightly before she takes a deep breath and composes a response. "@@.npc_ceo;Wow... you've got some skills, for a moment there... well, I'm sure you'll make a sub quite happy some day but, but I've been a <<if $fetish.sissy>>sissy <</if>>slave 24/7/365 for over ten years... as attractive as having <<if $fetish.sissy>>a sissy<<else>>such a cute<</if>> <<switch $player.identify_as>><<case 'female'>>Mistress<<case 'male'>>Master<<default>>Overseer<</switch>> might be...@@"
<<else>>
She shakes her head. "@@.npc_ceo;Wow... you've got a presence, I'll give you that, but I've been a <<if $fetish.sissy>>sissy <</if>>slave 24/7/365 for over ten years... it'd take far more than just a presence for me to take a knee.@@"
<</if>>
<<else>>
<<if setup.getTotalValue("dominance") > 5>>
She shakes her head. "@@.npc_ceo;Nice try, but I've been a <<if $fetish.sissy>>sissy <</if>>slave 24/7/365 for over ten years... I don't think a novice domme is going to impress me into changing my mind.@@"
<<else>>
She laughs. "@@.npc_ceo;Really? I've been a <<if $fetish.sissy>>sissy <</if>>slave 24/7/365 for over ten years... and that was the most pathetic show of dominance I've ever seen.@@"
<</if>>
<</if>>
<br><br>
She shakes her head. "@@.npc_ceo;If you think that's going to convince me to help you? Sorry, but no. The risk is too great. If you want to play sometime, go through the usual channels, but right now I'm feeling a headache coming on. I'm going to take my medicine and spend a few hours in the Dreammaker getting my brains fucked out. This mouth fuck-hole was meant for cock, not talking. <<=setup.getNpcName("npc_ceo_butler", "formal")>> will take you home.@@"<br>
<br>
There is some unseen signal and <<=setup.getNpcName("npc_ceo_butler", "formal")>> re-appears, keeping a close eye on you as <<he npc_ceo_butler>> takes you out to the car and drives you home.<br>
<br>
You attempt to talk to <<=setup.getNpcName("npc_ceo_butler", "formal")>>, but <<he npc_ceo_butler>> cuts you off, "@@.npc_ceo_butler;I have nothing to say to you. Whatever <<=setup.getNpcName("npc_ceo", "nickname")>> says goes, but if it was up to me, we'd never see you again, you're trouble she doesn't need.@@"
<</if>>
<br><br>
The remainder of the ride home passes in silence.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 3600>>]
</div>/*#
#desc: try to impress npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue("feminization") >= 20>>
<<set $npc_ceo.flags.sub_skills.feminization = true>>
<</if>>
<<if setup.getTotalValue("submission") >= 20>>
<<set $npc_ceo.flags.sub_skills.submission = true>>
<</if>>
<<if setup.getTotalValue("bimbofication") >= 20>>
<<set $npc_ceo.flags.sub_skills.bimbofication = true>>
<</if>>
<<if setup.getTotalValue("bondage") >= 20>>
<<set $npc_ceo.flags.sub_skills.bondage = true>>
<</if>>
<<if setup.getTotalValue("bdsm") >= 20>>
<<set $npc_ceo.flags.sub_skills.bdsm = true>>
<</if>>
<<set $scene.fetishes = {
"humiliation" : false,
"whoring" : false,
"penis" : false,
"foot" : false,
"cum" : false,
"piss" : false,
"bestiality" : false
}>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo","npc_ceo_robe")>>
<div id="invframe" class="scrolltext">
<<if !$scene.first>>
You tell <<=setup.getNpcName("npc_ceo", "nickname")>> that you'd like to tell her more about what you could teach her.<br>
<br>
<<if $npc_ceo.flags.sub_qualify>>
"@@.npc_ceo;I already agreed to give you the company, but hells yes I'll listen to more of your stories! They're always, like, so, so hot! Do you mind if I record them? I like to play them back while I'm being machine-fucked and brainwashed...@@"
<<else>>
"@@.npc_ceo;Oooh, sounds like fun!@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_ceo", "nickname")>> appraises you with a critical eye. "@@.npc_ceo;Oh, but before you spin tales, let's see what you've got...@@"
<<else>>
You tell <<=setup.getNpcName("npc_ceo", "nickname")>> that, if she helps you, you'll teach her what you know.
<</if>>
<br><br>
<<if $npc_ceo.flags.sub_skills.feminization && $npc_ceo.flags.sub_skills.submission && $npc_ceo.flags.sub_skills.bimbofication && $npc_ceo.flags.sub_skills.bondage && $npc_ceo.flags.sub_skills.bdsm>>
She looks you over, clearly liking what she sees as she smiles. "@@.npc_ceo;Hmm, you are quite the picture of <<if $fetish.sissy>>sissified<<else>>feminised<</if>>, submissive, sex-obsessed bondage pain-slut... I'm listening...@@"<br>
<br>
You explain that her fully "self-driving" submission has limited her experience compared to your own more forced introduction pushing you to greater fetishistic extremes.<br>
<br>
"@@.npc_ceo;An interesting thesis... so what fetishistic extremes have you experienced?@@"<br>
<br>
<<include "ceoFetishes">>
<<else>>
She giggles, "@@.npc_ceo;You? Teach me? You've seen my routines. I've been living as a 24/7, 365 submissive<<if $fetish.sissy>> sissy<</if>> slave for the past decade. You would need to be some idealised picture of feminised, submissive, horny masochistic bondage-slut perfection for me to even consider such an offer.@@"<br>
<br>
She snaps her fingers and <<=setup.getNpcName("npc_ceo_butler", "formal")>> re-appears.<br>
<br>
[<<moveTo "event_ceo_talk_9" 'Continue.' 3600>>]
<</if>>
</div><<if setup.getTotalValue("humiliation") > 10>>
<<if $npc_ceo.flags.sub_skills.humiliation>>
[@@.link_locked;You have already impressed her with your experiences of humiliation.@@]<br>
<<elseif $scene.humiliation>>
[@@.link_locked;You have already talked to her about some of your most humiliating experiences... she was unimpressed.@@]<br>
<<else>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her about your experience being humiliated.' 600 "<<set $scene.topic='humiliation'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You doubt your experiences with humiliation would impress her.@@]<br>
<</if>>
<<if setup.getTotalValue("whoring") > 10>>
<<if $npc_ceo.flags.sub_skills.whoring>>
[@@.link_locked;You have already impressed her with your experience as a prostitute.@@]<br>
<<elseif $scene.whoring>>
[@@.link_locked;You have already talked to her about your experiences as a prostitute... she was unimpressed.@@]<br>
<<else>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her about your experiences as a prostitute.' 600 "<<set $scene.topic='whoring'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You doubt your experience as a prostitute are sufficient to impress her.@@]<br>
<</if>>
<<if setup.getTotalValue("penis") > 10>>
<<if $npc_ceo.flags.sub_skills.penis>>
[@@.link_locked;You have already impressed her with your obsession with cock.@@]<br>
<<elseif $scene.penis>>
[@@.link_locked;You have already talked to her about your cock obsession... she was unimpressed.@@]<br>
<<else>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her about your obsession with cock.' 600 "<<set $scene.topic='penis'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You are not going to brag about being some cock-obsessed slut!@@]<br>
<</if>>
<<if setup.getTotalValue("foot") > 10>>
<<if $npc_ceo.flags.sub_skills.foot>>
[@@.link_locked;You have already impressed her with your deep foot fetish.@@]<br>
<<elseif $scene.foot>>
[@@.link_locked;You have already talked to her about your foot fetishism... she was unimpressed.@@]<br>
<<else>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her about your foot fetish.' 600 "<<set $scene.topic='foot'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You are not going to brag about being a foot fetishist!@@]<br>
<</if>>
<<if $fetish.cum>>
<<if setup.getTotalValue("cum") > 10>>
<<if $npc_ceo.flags.sub_skills.cum>>
[@@.link_locked;You have already impressed her with your obsession with cum.@@]<br>
<<elseif $scene.cum>>
[@@.link_locked;You have already talked to her about your appreciation of cum... she was unimpressed.@@]<br>
<<else>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her about your love of cum.' 600 "<<set $scene.topic='cum'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You are not going to brag about being addicted to cum!@@]<br>
<</if>>
<</if>>
<<if $fetish.piss>>
<<if setup.getTotalValue("piss") > 10>>
<<if $npc_ceo.flags.sub_skills.piss>>
[@@.link_locked;You have already impressed her with your urophilia.@@]<br>
<<elseif $scene.piss>>
[@@.link_locked;You have already talked to her about your experience as a urophiliac... she was unimpressed.@@]<br>
<<else>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her how much of a urophiliac you are.' 600 "<<set $scene.topic='piss'>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You are not going to brag about loving piss!@@]<br>
<</if>>
<</if>>
<<if $fetish.bestiality_hard>>
<<if setup.getTotalValue("bestiality") > 3>>
<<if $npc_ceo.flags.sub_skills.bestiality>>
[@@.link_locked;You have already impressed her with how much you "love" animals.@@]<br>
<<elseif $scene.piss>>
[@@.link_locked;You have already talked to her about your "love" for animals... she was unimpressed.@@]<br>
<<else>>
<<if setup.getTotalValue("bestiality") > 17>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her how much you love all creatures.' 600 "<<set $scene.topic='bestiality'>>">>]<br>
<<elseif setup.getTotalValue("bestiality") > 13>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her how much you love all animals.' 600 "<<set $scene.topic='bestiality'>>">>]<br>
<<elseif setup.getTotalValue("bestiality") > 8>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her how much you love dogs and ponies.' 600 "<<set $scene.topic='bestiality'>>">>]<br>
<<else>>
[<<moveTo "event_ceo_talk_8_sub_2" 'Tell her how much you love dogs.' 600 "<<set $scene.topic='bestiality'>>">>]<br>
<</if>>
<</if>>
<<elseif setup.getTotalValue("bestiality") > 0>>
[@@.link_locked;You are not going to brag about your minor brushes with bestiality!@@]<br>
<</if>>
<</if>>
[<<moveTo "event_ceo_talk_8_sub_3" "You can't think of anything else that might impress her." 600>>]/*#
#desc: try to impress npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.getTotalValue($scene.topic) >= 20>>
<<set $npc_ceo.flags.sub_skills[$scene.topic] = true>>
<</if>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo","npc_ceo_robe")>>
<div id="invframe" class="scrolltext">
<<switch $scene.topic>>
<<case "humiliation">>
You talk about your most humiliating experiences —
<<if setup.getTotalValue("humiliation") >= 20>>
particularly the night you spent almost naked being used and abused at a Fetish club... and then showing the pictures to your manager.<br>
<br>
"@@.npc_ceo;Wow, that night sounds so wonderfully intense! Experiencing something like that is DEFINITELY on my bucket list now!@@"
<<elseif setup.getTotalValue("humiliation") > 15>>
particularly the night you spent almost naked being used and abused at a Fetish club.<br>
<br>
"@@.npc_ceo;Wow, that night sounds so wonderfully intense! Experiencing something like that is DEFINITELY on my bucket list, but I dunno, you still had a bit of anonymity to the whole thing? So it's not THAT impressive.@@"
<<else>>
including being exposed in front of your old coworkers.<br>
<br>
"@@.npc_ceo;Hmm... that's hot, but, like... <<=setup.getNpcName("npc_boss","formal")>> did figure out my secret... so I've experienced something similar.@@"
<</if>>
<<case "whoring">>
You talk about your experience as a prostitute
<<if setup.getTotalValue("whoring") >= 20>>
serving everywhere from gloryholes to VIPs — and even the time you were hired out to a company party!<br>
<br>
"@@.npc_ceo;Goddess... how did I never think of that? Oh, the idea of being a whore for my coworkers... knowing as they fuck me that I'd have to look them in the eye on Monday morning... that sounds wonderful...@@"
<<elseif setup.getTotalValue("whoring") > 15>>
serving everywhere from gloryholes to VIPs. "@@.npc_ceo;Hmm, your experience sounds fun, but nothing really novel. I mean, who hasn't been paid to indulge a client's extreme desires? I only ever charge a single credit, it feels so good to be so worthless...@@"
<<else>>
working your way up from gloryholes to full prostitution. "@@.npc_ceo;Hmm, your experience sounds fun, but nothing really novel. Sure, I really should schedule some time in a gloryhole soon, but that's just because it's been too long since I spent a whole night on my knees sucking cock after anonymous cock!@@"
<</if>>
<<case "penis">>
You talk about your cock-lust,
<<if setup.getTotalValue("penis") >= 20>>
describing the VR simulation you embraced where you ascended a literal tower of cock.<br>
<br>
"@@.npc_ceo;Goddess, that sounds so hot! I wonder if something like that could be built in real life... I'd love to see it!@@"
<<elseif setup.getTotalValue("penis") > 15>>
and that time you spent an entire evening competing to see who could suck the most cock.<br>
<br>
"@@.npc_ceo;Mmm, that sounds like a wonderful evening, but not all that different from things I've done.@@"
<<else>>
and all the penises that you've worshipped.<br>
<br>
"@@.npc_ceo;It sounds like you have a healthy appreciation for <<getWordPenis>>, but nothing you could really teach me on the matter.@@"
<</if>>
<<case "foot">>
You talk about how much you love feet —
<<if setup.getTotalValue("foot") >= 20>>
and how you proved your total devotion to your <<=setup.getNpcName("npc_manager","title")>>.<br>
<br>
"@@.npc_ceo;Mmm, the way you describe it... I can practically taste her toes. There's no way you could paint such a vivid picture if you weren't an utter foot slut... I am in awe.@@"
<<elseif setup.getTotalValue("foot") > 15>>
including spending a whole day working as a shoe-shine slut.<br>
<br>
"@@.npc_ceo;Mmm, I just love that shoe-shine station, I know exactly what you're talking about when you say working there is a real labour of love.@@"
<<else>>
and how much time you've spent massaging and worshipping them.<br>
<br>
"@@.npc_ceo;It's true, feet are great, but it doesn't sound like you really have anything new to teach me in the matter.@@"
<</if>>
<<case "cum">>
You talk about how much you love <<getWordCum>> —
<<if setup.getTotalValue("cum") >= 20>>
and how you proved it in a VR simulation of swimming in a sea of <<getWordCum>>.<br>
<br>
"@@.npc_ceo;That simulation sounds utterly divine! I will really have to experience it myself someday!@@"
<<elseif setup.getTotalValue("cum") > 15>>
and how you proved it in a VR simulation of swimming in a sea of <<getWordCum>>.<br>
<br>
"@@.npc_ceo;Wow... you talked about what <<=setup.getNpcName("npc_boss", "formal")>> had done to the company but this... well, I'll have to experience it myself before it gets shut down!@@"
<<else>>
and how much of it you've guzzled or painted yourself with.<br>
<br>
"@@.npc_ceo;Cum really is the best — I never go a day without at least a glass or two of <<getWordCum>>!, but it doesn't seem like you have anything to really teach me in such matters.@@"
<</if>>
<<case "piss">>
You talk about how much you love <<getWordPiss>> —
<<if setup.getTotalValue("piss") >= 20>>
including drowning in a sea of it in VR.<br>
<br>
"@@.npc_ceo;Oh, wow... I've bathed in it, and I drink little else, but that simulation... that sounds absolutely divine and I MUST experience it!@@"
<<elseif setup.getTotalValue("piss") > 15>>
including working shifts in the Executive Bathroom.<br>
<br>
"@@.npc_ceo;Executive bathroom? Oh, my, you talked about what <<=setup.getNpcName("npc_boss", "formal")>> had done to the company but this... well, I'll have to experience it myself soon, in case it gets shut down!@@"
<<else>>
drinking it, feeling it dripping over you, whatever.<br>
<br>
"@@.npc_ceo;It really does earn its name of liquid gold, but it does not seem you have anything to really teach me about such.@@"
<</if>>
<<case "bestiality">>
You talk about how much you love
<<if setup.getTotalValue("bestiality") >= 20>>
not just animals, but beasts and monsters and everything between.<br>
<br>
<<=setup.getNpcName("npc_ceo","nickname")>> is in obvious awe as you tell her about being simultaneously fucked by two beasts of myth in real life.<br>
<br>
"@@.npc_ceo;Goddess... I had no idea you could experience such a thing in real life. After this is all over you HAVE to introduce me to your friends!@@"
<<elseif setup.getTotalValue("bestiality") > 17>>
not just animals, but beasts and monsters and everything between.<br>
<br>
<<=setup.getNpcName("npc_ceo","nickname")>> nods and smiles in obvious lust.<br>
<br>
"@@.npc_ceo;The virtual world is such a wonder... though I wish it was possible to do such things in real life...@@"
<<elseif setup.getTotalValue("bestiality") > 13>>
<<if $fetish.tentacle>>
tentacle friends.<br>
<br>
"@@.npc_ceo;Tentacle friends really are best friends... that feeling when you're totally wrapped up, with multiple tentacles writhing in each hole? It really is the best...@@"
<<else>>
animals, and not just horses and dogs.<br>
<br>
"@@.npc_ceo;Quite! The way every creature has it's own way of fucking you... mmm, I really need to speak with my contacts at the zoo, it's been too long since I fucked something TRULY exotic.@@"
<</if>>
<<elseif setup.getTotalValue("bestiality") > 8>>
animals — making particular note of the time you've spent with horses.<br>
<br>
"@@.npc_ceo;Ah, yes — who doesn't love being ridden hard by a big stallion? That's the reason I have a stables on-site, after all.@@"
<<else>>
animals — making particular note of the time you've spent with dogs.<br>
<br>
"@@.npc_ceo;Ah, yes — who doesn't love giving yourself over to the pack? That's the reason I have a kennel on-site, after all. Yes... talking about this has me really in the mood to be knotted.@@"
<</if>>
<<default>>
ERROR: unexpected scene.topic <<=$scene.topic>>
<</switch>>
<br><br>
<<include "ceoFetishes">>
</div>/*#
#desc: try to impress npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.count = 0>>
<<if $npc_ceo.flags.sub_skills["humiliation"]>>
<<set $scene.count += 1>>
<</if>>
<<if $npc_ceo.flags.sub_skills["whoring"]>>
<<set $scene.count += 1>>
<</if>>
<<if $npc_ceo.flags.sub_skills["penis"]>>
<<set $scene.count += 1>>
<</if>>
<<if $npc_ceo.flags.sub_skills["foot"]>>
<<set $scene.count += 1>>
<</if>>
<<if $npc_ceo.flags.sub_skills["cum"]>>
<<set $scene.count += 1>>
<</if>>
<<if $npc_ceo.flags.sub_skills["piss"]>>
<<set $scene.count += 1>>
<</if>>
<<if $npc_ceo.flags.sub_skills["bestiality"]>>
<<set $scene.count += 1>>
<</if>>
<<set $scene.max = 4>>
<<if $fetish.cum>>
<<set $scene.max += 1>>
<</if>>
<<if $fetish.piss>>
<<set $scene.max += 1>>
<</if>>
<<if $fetish.bestiality_hard>>
<<set $scene.max += 1>>
<</if>>
<<if $scene.count >= 3>>
<<set $npc_ceo.flags.ally = true>>
<</if>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo","npc_ceo_robe")>>
<div id="invframe" class="scrolltext">
<<if $scene.count >= 3>>
You confess that you don't have anything else to tell <<=setup.getNpcName("npc_ceo", "nickname")>> about.
<<if $scene.count >= $scene.max>>
"@@.npc_ceo;More? Goddess, if your life were any hotter I'd, like explode. You HAVE to teach me, I had no idea that I was missing out on so many extremes of being a <<if $fetish.sissy>>sissy <</if>>slut!@@"
<<elseif $scene.count == 3>>
"@@.npc_ceo;Mmmm... tell you what, you've convinced me.@@"
<<else>>
"@@.npc_ceo;More? I was on board awhile ago... holy shit your life sounds hot!@@"
<</if>>
<br><br>
She grins, clearly already fantasising about some of the things you talked about. "@@.npc_ceo;Goddess, I had no idea what I was missing out on! If you can promise to teach me all that? Yeah, I'll sign the company over to you, or whoever you designate. That said... you have to deal with <<=setup.getNpcName("npc_boss", "formal")>> first. For me to re-claim my authority as CEO the board would have to vote to reinstate me and... well... as hard as I might eagerly suck their cocks, I don't think they'd vote for me over <<=setup.getNpcName("npc_boss", "formal")>>. Which means <<he npc_boss>> has to be removed so the authority just defaults to me. Do that and it's all yours, and I can go back to my retirement as a <<if $fetish.sissy>>sissy <</if>><<if $fetish.cum>>cum-<</if>>slut.@@"
<<else>>
<<if $scene.count > 0>>
You confess that you don't have anything else to tell <<=setup.getNpcName("npc_ceo", "nickname")>> about.
<<else>>
You confess that you can't think of anything <<=setup.getNpcName("npc_ceo", "nickname")>> would be interested in.
<</if>>
<br><br>
<<=setup.getNpcName("npc_ceo", "nickname")>> frowns. "@@.npc_ceo;Honestly, I'm kind of disappointed, the idea of something new, after being a <<if $fetish.sissy>>sissy <</if>>slave for so many years? That sounded exciting! Oh well, I guess that means we're done.@@" She snaps her fingers and <<=setup.getNpcName("npc_ceo_butler", "formal")>> appears.
<</if>>
<br><br>
[<<moveTo "event_ceo_talk_9" 'Continue.' 3600>>]
</div>/*#
#desc: sent home after trying to impress npc_ceo
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.pay = $npc_ceo.flags.pay * 2>>
<<addCredits $scene.pay>>
<</if>>
<<set $player.location to "Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/ceo_dungeon.png" setup.charImage("npc_ceo","npc_ceo_robe")>>
<div id="invframe" class="scrolltext">
"@@.npc_ceo;I feel a headache coming on from all this thinking. I'm going to take my medicine and get strapped into the Dreammaker for a few hours and get it machine-fucked out of me. This mouth fuck-hole is meant for cock, not talking! You may take our guest back to her home.@@" <<=setup.getNpcName("npc_ceo", "nickname")>> heads for the door but turns back with a smile. "@@.npc_ceo;If you wish to play some other day... do come back, you're fun!@@"<br>
<br>
She bounces out of the room and <<=setup.getNpcName("npc_ceo_butler", "formal")>> takes you to the car. "@@.npc_ceo_butler;If you would return some other time, make the usual arrangements with <<=setup.getNpcName("npc_sex_club","formal")>>. And if you have a need to speak with <<=setup.getNpcName("npc_ceo", "nickname")>>... just mention it, okay?<<if $scene.win_fight>> It's a bit embarrassing to be beaten up by <<if $fetish.sissy>>a sissy<<else>>such a cute thing.<</if>><<else>><<He npc_ceo_butler>> may be tasked with brutally dominating me, but I can still talk and stuff if I really need to.<</if>> Oh, and I'll make sure <<=setup.getNpcName("npc_ceo_butler", "formal")>> transfers your pay. After all it can't be whoring if you don't get paid!@@"<br>
<br>
The remainder of the trip home passes in silence and you are dropped off in front of your flat, your bank balance another <<=$scene.pay>> credits richer.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 300 "">>]
</div>/*#
#desc: ask ai about dealing with npc_nintendolls
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_admin' 'work' 'theme_admin_work_nintendolls'
0
'theme_admin_nintendolls_mission_1'
true
>>
<<addNpcTheme 'npc_technician' 'work' 'theme_technician_work_nintendolls'
0
'theme_technician_nintendolls_mission_1'
true
>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> for advice about dealing with <<=setup.getNpcName('npc_nintendolls', 'formal')>>, the president of Nintendolls.<br>
<br>
"@@.npc_ai;<<uc "Yes... <<if $npc_nintendolls.fem>>her<<else>>his<</if>> removal will deny <<=uc(setup.getNpcName('npc_boss', 'formal'))>> an important external resource, as well as provide some measure of revenge for <<if $npc_nintendolls.fem>>her<<else>>his<</if>> part in what happened to you.">>@@"<br>
<br>
<<if $npc_barkeeper.flags.prostitution.final.nintendolls>>
You nod, and wait to hear her advice.
<<else>>
You're confused what she's talking about and ask what she means.<br>
<br>
"@@.npc_ai;<<uc "Oh, I apologise, Unit">> <<uc $player.first_name>><<uc ". I thought you already knew. You see, the data loss was no accident. It was planned by <<=uc(setup.getNpcName('npc_boss', 'formal'))>> and <<=uc(setup.getNpcName('npc_nintendolls', 'formal'))>>. They had made a bet as to the effectiveness of Social Interaction Service Syndicate Inc.'s new processes... and they needed a subject. Turning an ordinary man into an utterly obedient <<if $fetish.sissy>>sissified slut<<else>>girl<</if>>... I suppose their greatest mistake was in mistaking you for being ordinary.">>@@"<br>
<br>
You are floored by the revelation, but <<=setup.getNpcName('npc_ai', 'first')>> is already continuing on with her advice.
<</if>>
<br><br>
"@@.npc_ai;<<uc "<<=uc(setup.getNpcName('npc_nintendolls', 'formal'))>> is a powerful <<if $npc_nintendolls.fem>>woman<<else>>man<</if>> in <<if $npc_nintendolls.fem>>her<<else>>his<</if>> own right... you will need assistance to figure out how to take <<if $npc_nintendolls.fem>>her<<else>>him<</if>> down. Despite the merger I still have not gained access to the Nintendolls systems but... perhaps your friends may have better fortune? <<if $npc_technician.flags.evil == 1 && $npc_admin.flags.evil > 1 && $npc_admin.flags.evil < 4>>Well... once you have brought them back over to our side<<elseif $npc_technician.flags.evil == 1>><<=uc(setup.getNpcName('npc_admin', 'formal'))>> will surely be of help, but I believe you will require <<=uc(setup.getNpcName('npc_technician', 'formal'))>> as well, best get to aiding her soon<<elseif $npc_admin.flags.evil > 1 && $npc_admin.flags.evil < 4>>I am sure <<=uc(setup.getNpcName('npc_technician', 'formal'))>> will be eager to help, but some muscle would be useful as well, I advise redeeming your <<if $npc_admin.flags.relationship == 'boyfriend'>><<if $npc_admin.fem>>girlfriend<<else>>boyfriend<</if>><<else>>old friend<</if>> <<=uc(setup.getNpcName('npc_admin', 'formal'))>> as well<<else>>Now that they are back on our side, I am sure they would be eager to help<</if>>.">>@@"<br>
<br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: theme: admin talk about nintendolls
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName('npc_nintendolls', 'formal')>>, and how you need to deal with <<him npc_nintendolls>> first, before you can go after <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
"@@.npc_admin;Divide and conquer, yeah... that makes sense.@@" <<=setup.getNpcName('npc_admin', 'first')>> states somberly. "@@.npc_admin;Well, I'll do whatever you need me to, you know that. I'll tell you this — this whole merger has had <<him npc_nintendolls>> really on edge, I get the feeling that if it goes screwy in any way <<his npc_nintendolls>> people would hang <<him npc_nintendolls>> out to dry.@@"<br>
<br>
<<if State.hasPlayed("theme_technician_nintendolls_mission_2")>>
[<<moveTo "theme_admin_nintendolls_mission_2" "You already have a plan..." 60>>]<br>
<<else>>
<<printNpcThemeReturn 'npc_admin' 2400>>
<</if>>
</div>/*#
#desc: theme: admin confirm nintendolls plan
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/the_usual_place_inside.png" setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
You explain that, thanks to <<=setup.getNpcName('npc_technician', 'first')>>, you've already got a plan. You tell <<him npc_admin>> about <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>> and how all, if <<he npc_admin>> can provide the muscle...<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> flexes and grins.<br>
<br>
"@@.npc_admin;Muscle I got — you just say the word and I'll be there <<callPlayer "npc_admin">>.@@"<br>
<br>
You nod, telling <<him npc_admin>> you'll give <<him npc_admin>> a ring when you've got a meeting setup.<br>
<br>
<<printNpcThemeReturn 'npc_admin' 2400>>
</div>/*#
#desc: talk about taking out nintendolls
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
You bring up <<=setup.getNpcName('npc_nintendolls', 'formal')>>, and
<<if State.hasPlayed("event_nintendolls_destroy_14")>>
<<=setup.getNpcName('npc_technician', 'first')>> smiles in memory. "@@.npc_technician;That was pretty arctic, for sure... but hey, that's what I'm here for. Your friendly neighbourhood Tech Wizard, putting up the good fight against this capitalist nightmare!@@"<br>
<br>
<<printNpcThemeReturn 600>>
<<else>>
how you need to deal with <<him npc_nintendolls>> first, before you can go after <<=setup.getNpcName('npc_boss', 'formal')>>.<br>
<br>
"@@.npc_technician;Gotta work your way to up the final boss, right?@@" <<=setup.getNpcName('npc_technician', 'first')>> grins. "@@.npc_technician;Well, I got some good news for you — after that whole Nintendolls data debacle... I mean, who cares that much about test data, right? Anyway, your pal the Tech Wizard did some scrying and, well... that <<guy npc_nintendolls>> is in deep. Like <<his npc_nintendolls>> family is OLD money, we're talking back before electricity, WAY back. Anyway, <<his npc_nintendolls>> family ain't too happy about the whole merger plan... but they're as old school as <<he npc_nintendolls>> is and would close ranks against any outsider. No, the way I see it, the way in is gonna be <<his npc_nintendolls>> <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>>.@@"<br>
<br>
Before you quite realise what's going on <<=setup.getNpcName('npc_technician', 'first')>> has her laptop out and is flipping through what you're pretty sure are criminal records.<br>
<br>
"@@.npc_technician;See, <<his npc_nintendolls>> <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>>, well... <<he npc_nintendolls_son>>'s a bit of a black sheep. Not content to just draw on generational wealth, or wait for <<his npc_nintendolls_son>> <<if $npc_nintendolls.fem>>mom<<else>>old man<</if>> to hand over the reins, <<he npc_nintendolls_son>> struck out on <<his npc_nintendolls_son>> own. Young, brash... <<he npc_nintendolls_son>> leaned on some of the family's less... legitimate holdings. On top of the rest that was obviously a bit of a trouble for <<his npc_nintendolls_son>> <<if $npc_nintendolls.fem>>mom<<else>>dad<</if>> trying to appear legit and above board. The important thing is, though — <<he npc_nintendolls_son>>'s blood, so if <<he npc_nintendolls_son>> takes out <<his npc_nintendolls_son>> <<if $npc_nintendolls.fem>>mom<<else>>old man<</if>>, well, the family may not like <<him npc_nintendolls_son>>, but they'll accept it. And, fortunately for you... I think I've got an in.@@"<br>
<br>
[<<moveTo "theme_technician_nintendolls_mission_2" "Keep listening." 180>>]
<</if>>
</div>/*#
#desc: listen to her plan for nintendolls
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Cafe: Newtype IV">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_technician","npc_technician_casual")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> notices you examining the criminal records and grins wider. The <<man npc_nintendolls_son>> is significantly younger than <<=setup.getNpcName('npc_nintendolls', 'formal')>> but you definitely see the resemblance, very much looking the part of the classic rebellious "bad <<boy npc_nintendolls_son>>" kid.<br>
<br>
"@@.npc_technician;Yeah, some of the girls have a spike into the police networks — just in case, you know? ACAB... and all trans girls are clever and cute.@@" She winks at you. "@@.npc_technician;Anyway, it was no big to get a dump on <<=setup.getNpcName('npc_nintendolls_son', 'first')>> — that's the <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>>'s name, though on the street <<he npc_nintendolls_son>> goes by <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>>. Anyway, <<he npc_nintendolls_son>>'s a piece of work — gambling, larceny, racketeering, murder for hire, and that's without the cops even trying. <<He npc_nintendolls_son>> keeps the normal coppers paid off, while staying just far enough below the radar, and avoid anything too hot, so that the Valkyries don't look <<his npc_nintendolls_son>> way. Word on the street is that <<he npc_nintendolls_son>>'s putting together a group for a big job, and that it's time sensitive. Putting two and two together, well... I bet it has something to do with that Nintendolls merger. If we can get in, well, we can use <<him npc_nintendolls_son>> to take out <<his npc_nintendolls_son>> <<if $npc_nintendolls.fem>>mom<<else>>old man<</if>>, and then you can go back to worrying about that fucker <<=setup.getNpcName('npc_boss', 'formal')>>. Only trouble is, well, <<he npc_nintendolls_son>>'s not exactly the most stable of people. I can tell you where <<he npc_nintendolls_son>>'s based out of — that skeevy private club above the mall, but past that... well, you're going to have to figure out an in. Though, in my opinion... you probably want some backup, <<he npc_nintendolls_son>>'s got some bad <<if $options.fem>>people<<else>>dudes<</if>> in <<his npc_nintendolls_son>> crew.@@"<br>
<br>
You nod, and tell her you'll let her know when you've figured a way in.<br>
<br>
"@@.npc_technician;Great — if you can make that initial intro and arrange a meet-up, well... I'll be ready for whatever comes next!@@"<br>
<br>
<<printNpcThemeReturn 600>>
</div>/*#
#desc: outside crime club
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club_exterior.png" "gang_tough" "gang_tough">>
<div id="invframe" class="scrolltext">
You ride the glass elevator up — without company, this time. There are a pair of guards stationed outside private club that is <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> base. One of the guards looks you over.
<<if $player.flags.mall_events.elevator && $player.flags.mall_events.elevator_fight>>
You can see the hint of recognition on <<his>> face, but <<he>> seems to be struggling to place you.<br>
<br>
[<<moveTo "event_gang_intro_2" "Tell <<him>> you're here to fuck the boss." 180 "<<set $scene.intro='fuck'>>">>]<br>
[<<moveTo "event_gang_intro_2" "Tell <<him>> you want to see <<his>> boss — or you'll kick <<his>> ass a second time." 180 "<<set $scene.intro='fight'>>">>]
<<elseif $player.flags.mall_events.elevator>>
The guard recognises you and grins. "@@.generic_male1;Well lookie here! You coming back for more, slut?@@" <<He>> turns to <<his>> friend with a smirk. "@@.generic_male1;Hey, this is that elevator tramp I was telling you about — perfect fucking cock-socket.@@"<br>
<br>
<<He>> grabs <<him>>self aggressively as <<he>> looks back at you. "@@.generic_male1;Well? You here to show my friend what <<he>> missed out on?@@"<br>
<br>
[<<moveTo "event_gang_intro_2" "You're here to fuck the boss." 180 "<<set $scene.intro='fuck'>>">>]
<<elseif $player.flags.mall_events.elevator_fight>>
One of the guards seems to recognise you, <<his>> eyes getting wide. "@@.generic_male1;Hey, look... we don't want no trouble, alright?@@"<br>
<br>
[<<moveTo "event_gang_intro_2" "Tell <<him>> you want to see <<his>> boss — or you'll kick <<his>> ass a second time." 180 "<<set $scene.intro='fight'>>">>]
<<else>>
ERROR: unexpected state
<</if>>
</div>/*#
#desc: meet gang after fight or sex
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club_exterior.png">>
<div id="invframe" class="scrolltext">
You un-pause the elevator and ride the rest of the way to the top, surrounded by foes either unconscious, or moaning in pain. The door opens and you find yourself facing a final guard, <<he>> looks past you at <<his>> fallen friends with sudden fear.<br>
<br>
[<<moveTo "event_gang_intro_2" "Say you're here to see <<his>> boss." 180 "<<set $scene.intro='fight'>>">>]
</div>/*#
#desc: ask to enter mall club
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club_exterior.png" "gang_tough" "gang_tough">>
<div id="invframe" class="scrolltext">
You manage to get back to your feet before the last of your assailants disappears into the club. You cough up cum and demand to speak with their boss.<br>
<br>
The gangster looks back and chuckles. "@@.generic_male1;The boss? Like that? Nah, you best be cleaning yourself up... but you were a good sport, so come back looking presentable and I'll put in a good word for you!@@"<br>
<br>
"@@.generic_male2;Yeah, a word about how good of a dick-sleeve you is!@@" One of <<his>> friends add as they both laugh and the elevator door slides closed.<br>
<br>
<<printThought "Hmm... I guess that counts as an in... I guess <<he>>'s right about first impressions, I am something of a mess.">><br>
<br>
You look at your reflection as the elevator glides down, cum dripping from your clothes onto the floor of the elevator.<br>
<br>
[<<moveTo "event_gang_intro_alt_3" "Head home and wash up." 180>>]
</div>/*#
#desc: shower after nintendolls gang rape
#status: RELEASED 0.9.2.0
#*/
<<set $player.location to "Bathroom">>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _x = setup.cleanSexToys()>>
<<washClothes>>
<<removeAllClothing>>
<</if>>
<<include playerMenuLocked>>
<<createAnimatedBGR "./video/shower_scene.mp4">>
<div id="invframe" class="scrolltext">
You head home to clean yourself up. First peeling off your clothes and them into the washer you head for the shower. As you rinse off you consider when you want to head back to try again to meet <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>>...<br>
<br>
[<<moveTo "room_bathroom" "Step out of the shower." 60>>]
</div>/*#
#desc: ask to enter mall club
#status: RELEASED 0.9.2.0
#ignore_spell: notetaker
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if setup.hasRandomEvent('work_bathroom_female', 'notetaker')>>
<<removeRandomEvent 'work_bathroom_female' 'notetaker'>>
<</if>>
<</if>>
<<if $scene.intro=='admin'>>
<<set $player.location to "Outside Crime Club">>
<<else>>
<<set $player.location to "Secret Crime Club">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.intro=='admin'>>
<<createAdvBGR "./images/locations/mall_crime_club_exterior.png" setup.charImage("npc_admin","npc_admin_casual") "gang_tough" "gang_tough">>
<<else>>
<<createAdvBGR "./images/locations/mall_crime_club.png" "gang_tough" setup.charImage("npc_nintendolls_son") "gang_tough" setup.charImage("npc_nintendolls_slave")>>
<</if>>
<div id="invframe" class="scrolltext">
<<switch $scene.intro>>
<<case 'fuck'>>
With a guard in front and another behind, you are led into the private club.<br>
<br>
<<printThought "Hmm. Familiar position...">><br>
<br>
Even if you didn't know who you were looking for, you would know the instant you were inside the club who was in charge. <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> lounges on the far side atop what is all but a throne, a pair of scantily clad slaves — <<if $options.fem>>both women<<else>>one male, and one female,<</if>> kneeling before <<him npc_nintendolls_son>>, pets on golden leashes.
<<if State.hasPlayed("event_work_meeting_notetaker_followup_1")>>
You blink as you recognise one of the slaves, the last time you saw her was in the bathroom at work as she blamed you for "pushing her out" of the role of "notetaker" for important managerial meetings. From the grin on her full lips as she leans against her <<master>>'s leg... it seems she is quite enjoying her new position, even if the lingering red marks on her bare ass would seem to indicate she has been a bit naughty recently.
<</if>>
<br><br>
<<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> eyes constantly scan around the room, keeping an eye on everything, a confident grin on <<his npc_nintendolls_son>> face communicating <<him npc_nintendolls_son>> current pleased mood.<br>
<br>
"@@.generic_male1;Hey boss! This is that slut we told you about, from the elevator.@@" The guard states in introduction.<br>
<br>
<<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> grin turns into a smirk as <<he npc_nintendolls_son>> unfolds from <<his npc_nintendolls_son>> chair. <<He npc_nintendolls_son>> does not so much walk across the room as... slide, slick, and casual, but with an underlying confident menace that has your heart skip a beat. "@@.npc_nintendolls_son;You don't say...@@" <<he npc_nintendolls_son>> asks as <<he npc_nintendolls_son>> runs a finger along the underside of your chin, <<his npc_nintendolls_son>> metallic fingernail sharpened to a claw-like point.<br>
<br>
"@@.npc_nintendolls_son;Well, well, well... after what you went through previously... you back for more?@@"<br>
<br>
[<<moveTo "event_gang_intro_3_suck" "Tell <<him npc_nintendolls_son>> you're here on business." 60 "<<set $scene.business=true>>">>]<br>
[<<moveTo "event_gang_intro_3_suck" "Perhaps a quick suck to take the edge off before you move on to business?" 60 "<<set $scene.business=false>>">>]
<<case 'fight'>>
The guard you haven't met before starts slipping on a pair of knuckle dusters but <<his>> partner — fear in <<his>> eyes as <<he>> avoids looking away from you for even a moment, waves <<him>> off. "@@.generic_male1;Nah, nah. If she wants to see the boss... we'll let <<him npc_nintendolls_son>> deal with her. Come on.@@" <<He>> adds, nodding at you as <<he>> opens the door for you to enter the club.<br>
<br>
Your heart is picking up speed, but you keep your expression cool and confident as you nod and walk between the two guards into the club. Even if you didn't know who you were looking for you would know the instant you were inside the club who was in charge, <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> lounges on the far side atop what is all but a throne, a pair of scantily clad slaves — <<if $options.fem>>both women<<else>>one male, and one female,<</if>> kneeling before <<him npc_nintendolls_son>>, pets on golden leashes. With a confident grin on <<his npc_nintendolls_son>> face as <<he npc_nintendolls_son>> looks up as you with curiosity.<br>
<br>
"@@.npc_nintendolls_son;And who is this?@@" <<He npc_nintendolls_son>> asks, <<his npc_nintendolls_son>> metallic claw-sharp fingernails glittering as <<he npc_nintendolls_son>> scratches <<his npc_nintendolls_son>> chin. "@@.npc_nintendolls_son;I didn't order any <<if $options.fem>>whores<<else>>girls<</if>>, but the <<boy>>s might be able to scrape together a few credits, if you're desperate...@@"<br>
<br>
You quickly glance at "the <<if $options.fem>>girls<<else>>boys<</if>>" — recognising about half of the gangsters from your previous encounter, they recognise you as well, nervously looking away until the one closest to <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> whispers something in <<his>> boss' ear.<br>
<br>
<<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> only acknowledgement of the explanation of who you are is a slight raise at the corner of <<his npc_nintendolls_son>> mouth, and a flick of <<his npc_nintendolls_son>> eyes as you hear the door close behind you and a couple gang members shift to better have you surrounded. "@@.npc_nintendolls_son;Well, well... it would seem you have a reputation... and yet you come here, into my lair... alone. To tell you the truth, I am intrigued. Speak... but make it good.@@"<br>
<br>
[<<moveTo "event_gang_intro_3_fight" "You heard <<he npc_nintendolls_son>> was putting a crew together, and you want in." 60>>]
<<case 'admin'>>
You give <<=setup.getNpcName('npc_admin', 'first')>> a call and <<he npc_admin>> shows up a few minutes later. You give <<=setup.getNpcName('npc_admin', 'first')>> a nod and <<he npc_admin>> leads the way into the elevator, standing next to you looking quite the part of hulking bodyguard as you ride up.<br>
<br>
"@@.generic_male1;This is a private club...@@" one of the two guards standing outside the elevator states.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> casually walks up to the <<man>>, a good half head taller and half again as wide. "@@.npc_admin;Yeah, well I got business with your boss. Hear <<he npc_nintendolls_son>>'s putting a crew together — you gonna take me in... or do I start my application by making sure there's a fresh job opening?@@"<br>
<br>
The two guards glance at one another nervously. They're both in shape, and you certainly wouldn't want to meet them down a dark alleyway... but it's very obvious that neither wants anything to do with <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
"@@.generic_male1;Yeah, yeah... no problem, we cool, right? Come on, the boss is always looking for fresh blood.@@"<br>
<br>
The guards lead the way into club and you hurry along behind, all but forgotten in <<=ps(setup.getNpcName('npc_admin', 'first'))>> shadow.<br>
<br>
[<<moveTo "event_gang_intro_3_admin" "Continue." 60>>]
<<default>>
ERROR: unexpected scene.intro <<=$scene.intro>>
<</switch>>
</div>/*#
#desc: suck off nintendolls_son
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImage("npc_nintendolls_son")>>
<div id="invframe" class="scrolltext">
<<if $scene.business>>
You start explain that you are actually here on business but <<=setup.getNpcName('npc_nintendolls_son', 'first')>> immediately rolls <<his npc_nintendolls_son>>
<<if setup.getTotalValue("martial_arts") >= 20 && setup.getTotalValue("dexterity") >= 20>>
eyes. <<His npc_nintendolls_son>> hand moves with near lightning speed, but your reflexes are even faster as you catch <<his npc_nintendolls_son>> slap a centimetre from your cheek.<br>
<br>
You hear a collective gasp from <<his npc_nintendolls_son>> guards as <<he npc_nintendolls_son>> raises an eyebrow, visibly impressed.<br>
<br>
"@@.npc_nintendolls_son;Aren't you just full of surprises... but the rule in this gang is that I get a cut of any action. Given that my <<if $options.fem>>girls<<else>>men<</if>> have already had a piece of you, well... those pretty, dick-sucking lips of yours need to balance the books...@@"
<<else>>
eyes before laying a quick, sharp slap across your face at lightning speed.<br>
<br>
"@@.npc_nintendolls_son;Business before pleasure? No, no, no. You have already had a taste of my <<if $options.fem>>girls<<else>>men<</if>>... and the rule of this gang is that I get a cut of any action. So let's see those dick-sucking lips balance the books... and then, maybe we talk.@@"
<</if>>
<br><br>
<<He npc_nintendolls_son>> grins wider, spinning on <<his npc_nintendolls_son>> heel and returning to <<his npc_nintendolls_son>> throne, legs spread. <<His npc_nintendolls_son>> two slaves cling to <<his npc_nintendolls_son>> legs one on each side, looking at you with a mix of suspicion and jealously.<br>
<br>
"@@.npc_nintendolls_son;Well? Get to work, or get out of my club.@@"<br>
<br>
[<<moveTo "event_gang_intro_3_suck" "Crawl over and resolve <<his npc_nintendolls_son>> <<if $options.fem>>girls'<<else>>mens'<</if>> debt." 60 "<<set $scene.business=false>>">>]<br>
[<<moveTo "event_gang_intro_abort" "On second though, this was dumb. Flee." 60>>]
<<else>>
You seductively slide to your knees, locking your gaze with <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> as you crawl towards <<him npc_nintendolls_son>> and kneel between <<his npc_nintendolls_son>> feet.<br>
<br>
"@@.npc_nintendolls_son;That's more like it,@@" <<he npc_nintendolls_son>> says with a nod. <<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>"@@.npc_nintendolls_son;Of course, I should have known that a collar like that would only be on a trained slave... do well enough and maybe I'll find you a leash...@@"<<else>>"@@.npc_nintendolls_son;You may begin.@@"<</if>><br>
<br>
You smile as <<his npc_nintendolls_son>> slaves each take hold of one of the dual zippers on the front of <<his npc_nintendolls_son>> tight leather pants, pulling them down in unison so that <<his npc_nintendolls_son>> large, pierced cock springs free.<br>
<br>
Not quite as thick as <<his npc_nintendolls_son>> <<if $npc_nintendolls_son.fem>>mother's<<else>>father's<</if>>, it is a little bit longer, and you put your training to work as, while holding <<his npc_nintendolls_son>> gaze, you lean forward and
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
glide your throat over <<him npc_nintendolls_son>>.
<<else>>
spread your lips around <<him npc_nintendolls_son>>.
<</if>>
You hold <<his npc_nintendolls_son>> gaze all the way down, silently working <<him npc_nintendolls_son>> with your throat as you kneel motionless, then slowly begin to bob your head while sucking with all your might.<br>
<br>
Though your attention is focused on your job, you can't help but hear the gasp of surprise from <<his npc_nintendolls_son>> slaves when <<he npc_nintendolls_son>> cums not more than a few moments later. Despite running a bit low on air you keep your nose pressed against <<his npc_nintendolls_son>> abs until <<his npc_nintendolls_son>> tremors cease and you smoothly lean back, finishing off by licking <<his npc_nintendolls_son>> piercing clean.
<<else>>
<<if setup.getTotalValue("oral") > 5>>
begin sucking <<his npc_nintendolls_son>> tip. Your modest
<<else>>
begin kissing <<him npc_nintendolls_son>> up and down. Your minimal
<</if>>
skill seems to do little to impress <<him npc_nintendolls_son>> and <<he npc_nintendolls_son>> shakes <<his npc_nintendolls_son>> head in annoyance. "@@.npc_nintendolls_son;This is what my <<if $options.fem>>girls<<else>>men<</if>> were gushing about? I had a better blowjob the time I knocked a snitches teeth out and raped <<his>> squealing throat!@@"<br>
<br>
<<His npc_nintendolls_son>> hand is suddenly on the back of your head, pulling you forward hard as <<his npc_nintendolls_son>> hips push up, your throat violated by the sudden, inescapable thrust that has you quite grateful for <<his npc_nintendolls_son>> slightly narrower girth.<br>
<br>
You cough and struggle, but <<his npc_nintendolls_son>> two slaves assist in pinning you in place, one holding each arm as their <<master npc_nintendolls_son>> uses your face as <<his npc_nintendolls_son>> personal fuck-toy.<br>
<br>
Obviously turned on by <<his npc_nintendolls_son>> own cruelty, it makes up for your lack of skill and it is a mercifully short time before <<he npc_nintendolls_son>> cums, all but tossing you backwards, cum and saliva dripping down your chin as <<his npc_nintendolls_son>> slaves race in to lick <<him npc_nintendolls_son>> clean.
<</if>>
<br><br>
A long cigarette holder in <<his npc_nintendolls_son>> hand, <<he npc_nintendolls_son>> takes a long drag as <<he npc_nintendolls_son>> catches <<his npc_nintendolls_son>> breath, the smoke <<he npc_nintendolls_son>> breathes out tinged with drugs you cannot even identify. <<He npc_nintendolls_son>> smiles.<br>
<br>
"@@.npc_nintendolls_son;NOW we can speak of business.@@" <<He npc_nintendolls_son>> snaps <<his npc_nintendolls_son>> finger and gang members run over to place a table and chair before <<him npc_nintendolls_son>>. You take a seat just as a waiter places a martini glass in front of each of you. The drinks glow in a shade you recognise from a certain high-end liquor<<if $fetish.cum>>, though yours has a slight cloudiness to it<</if>>.
<br>
"@@.npc_nintendolls_son;To debts paid, and new beginnings,@@" <<he npc_nintendolls_son>> states, raising <<his npc_nintendolls_son>> glass. You return the gesture and <<he npc_nintendolls_son>> tilts <<his npc_nintendolls_son>> drink back to drain it in a single gulp.<br>
<br>
[<<moveTo "event_gang_intro_4_suck" "Bottoms up." 60 "<<set $scene.sip=false>>">>]<br>
[<<moveTo "event_gang_intro_4_suck" "Just take a sip." 60 "<<set $scene.sip=true>>">>]
<</if>>
</div>/*#
#desc: drink after sucking off nintendolls_son
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImage("npc_nintendolls_son")>>
<div id="invframe" class="scrolltext">
<<if $scene.sip>>
You take a small sip. The strong alcohol burns,
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
alongside that most wonderful of flavours — <<getWordCum>>!
<<else>>
mixed with tasty <<getWordCum>>!
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
alongside the salty tang of <<getWordCum>>...
<<else>>
alongside the bitter, salty after-taste of <<getWordCum>>!
<</if>>
<</if>>
<br><br>
You glance towards the bar, where the bartender leers back at you with a grin.<br>
<br>
Your hesitation has drawn <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> attention and <<he npc_nintendolls_son>> looks at you with concern.<br>
<br>
"@@.npc_nintendolls_son;Is something the matter with your drink? Too strong, perhaps?@@"<br>
<br>
[<<moveTo "event_gang_intro_5_suck" "It's full of cum!" 60 "<<set $scene.action='object'>>">>]<br>
[<<moveTo "event_gang_intro_5_suck" "Don't cause a scene, just knock the rest of it back." 60 "<<set $scene.action='quiet'>>">>]<br>
[<<moveTo "event_gang_intro_5_suck" "Finish your drink and note the wonderful flavour." 60 "<<set $scene.action='love'>>">>]
<<else>>
You follow <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> lead and knock back your drink in one gulp... though even drinking fast there's no mistaking that, amidst the alcoholic burn, is
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
that most wonderful of flavours — <<getWordCum>>!
<<else>>
an after-taste of <<getWordCum>>!
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
the salty tang of <<getWordCum>>...
<<else>>
the bitter, salty after-taste of <<getWordCum>>!
<</if>>
<</if>>
<br><br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> grins as <<he npc_nintendolls_son>> puts <<his npc_nintendolls_son>> glass down. "@@.npc_nintendolls_son;Nothing like a nice drink to grease the wheels of business...@@"<br>
<br>
[<<moveTo "event_gang_intro_5_suck" "Object, your drink was full of cum!" 60 "<<set $scene.action='object'>>">>]<br>
[<<moveTo "event_gang_intro_5_suck" "Do not comment on your drink." 60 "<<set $scene.action='quiet'>>">>]<br>
[<<moveTo "event_gang_intro_5_suck" "First thank <<him npc_nintendolls_son>> for the wonderful drink." 60 "<<set $scene.action='love'>>">>]
<</if>>
</div>/*#
#desc: barter after sucking off nintendolls_son
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImage("npc_nintendolls_son") setup.charImage("npc_nintendolls_slave")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'object'>>
Perhaps against better judgement,
<<if $scene.sip>>
you place the glass down in annoyance and exclaim that it's half cum!
<<else>>
you slam the glass down and explain that it was half cum!
<</if>>
<br><br>
You could hear a pin drop as the entire room freezes and <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> expression narrows.<br>
<br>
Rather than you, however, <<he npc_nintendolls_son>> is looking at the bartender and <<he npc_nintendolls_son>> gestures the <<man>> over with a single crooked finger. "@@.npc_nintendolls_son;Is this true? Did you cum in my guest's drink?@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> asks as <<he npc_nintendolls_son>> runs a clawed fingernail along the side of the <<man>>'s face, just shy of brushing <<his>> eye.<br>
<br>
You can literally see the waiter sweating as <<he>> nods.<br>
<br>
In a quick movement <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> tears a gash down the <<man>>'s cheek. As you look around you realise most of the gangsters in the room have suspiciously similar scars on their faces. "@@.npc_nintendolls_son;Now get out of here, and keep better control of yourself unless you want me to cut it off...@@"<br>
<br>
The <<man>> hurries away and <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> turns back to you<<if $scene.sip>> as you notice one of <<his npc_nintendolls_son>> slaves has snatched your drink in the confusion, licking their lips as they place the now-empty glass back on the table<</if>>. <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> smiles and licks the blood from <<his npc_nintendolls_son>> fingernail, "@@.npc_nintendolls_son;my apologies. It is so hard to find good help, but you had an offer?@@"
<<case 'quiet'>>
<<if $scene.sip>>
You quietly <<if setup.getTotalValue("cum") > 10>>savour<<elseif setup.getTotalValue("cum") > 5>>finish<<else>>choke down<</if>> the rest of your drink and place the glass back on the table.
<<else>>
You finish swallowing and place the glass gently back down on the table.
<</if>>
<br><br>
"@@.npc_nintendolls_son;So,@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> opens with a grin, "@@.npc_nintendolls_son;what was this business you wished to discuss?@@"
<<case 'love'>>
<<if $scene.sip>>
You make a show of not just finishing your drink, but licking the glass clean with a smile.
<<else>>
You finish swallowing with a smile and place the glass gently back down on the table.
<</if>>
<br><br>
You hear a faint chuckle from the direction of the bar, and catch sight of some of the other gang-members grinning out of the corner of your eye. Strangely... you find yourself uncertain whether or not <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> knows what you just drank; whether this is part of a test, or a prank paid by the bartender.<br>
<br>
"@@.npc_nintendolls_son;So,@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> opens with a grin, "@@.npc_nintendolls_son;what was this business you wished to discuss?@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "event_gang_offer_1" "You heard <<he npc_nintendolls_son>>'s prepping for a big job — you and your crew want in." 180>>]
</div>/*#
#desc: abort gang meet-up
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Mall Glass Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/glass_elevator.png">>
<div id="invframe" class="scrolltext">
Whatever courage lead you up the elevator seems to have evaporated in <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> presence and you sprint out of the room, trails of laughter following after as you all but dive into the elevator, repeatedly tapping the ground floor button the whole way down as if it would make the lift go faster.<br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: need to fight your way into gang
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImage("npc_nintendolls_son") setup.charImageGeneric("gangster_hulking")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> raises an eyebrow. "@@.npc_nintendolls_son;Want in, you say... and I suppose your previous encounter with my <<men>> was what, an audition?@@"<br>
<br>
You shrug, continuing to try to play the stoic badass<<if setup.analyzeWornTags(['sissy','bold','cute']) != 'bold'>> in flagrant contrast to your attire<</if>>.<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> grins, "@@.npc_nintendolls_son;it would be a good one... but I like to see these things for myself. Plus, well, the way I heard it, you did somewhat take them by surprise. Ambushes are lovely, to be sure, but I want to know that you can handle yourself for real.@@"<br>
<br>
<<He npc_nintendolls_son>> claps and a hulking <<man>> rises up from a corner booth. Even larger than your friend <<=setup.getNpcName('npc_admin', 'first')>> the <<guy>> looks like muscle on top of muscle, like if someone went their whole life consuming nothing but protein shakes and steroids. <<He>> grins, missing teeth combined with scars and a smashed nose that's been broken multiple times making it quite clear what <<his>> job in the gang is...<br>
<br>
"@@.npc_nintendolls_son;Go a round with Mongo. If you can survive that, well... maybe we can talk further.@@"<br>
<br>
[<<moveTo "event_gang_intro_4_fight" "The bigger they are..." 180>>]<br>
[<<moveTo "event_gang_intro_4_fight_abort" "Nope, you don't want to mess with Mongo." 180>>]
</div>/*#
#desc: fight your way into gang
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImageGeneric("gangster_hulking")>>
<div id="invframe" class="scrolltext">
You rise as gang members shove tables and chairs to the walls to make room in the centre of the club.<br>
<br>
Mongo grins down at you, a good half a metre taller, and nearly as much wider as yourself, you can feel the looks of the other gang-members, see credits passed back and forth as they bet on how many seconds you're going to last...<br>
<br>
Mongo looks to the side to where <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> watches from <<his npc_nintendolls_son>> throne, <<his npc_nintendolls_son>> cock out now as one of <<his npc_nintendolls_son>> slaves sucks softly, <<his npc_nintendolls_son>> fingers idly brushing the slave's hair. "@@.npc_nintendolls_son;Whoever cries for mercy first shall be the loser. You may begin.@@"<br>
<br>
Mongo grins and beckons you forward, even leaning down slightly as if to offer you the first shot...<br>
<br>
<<if setup.getTotalValue("strength") >= 20>>
You smile back and come up with a punch that started somewhere in hell, every ounce of your not-inconsiderable strength combined with carefully honed timing as you throw all of your power up and into his chin.<br>
<br>
You're pretty certain Mongo actually lifted off the ground, your punch catching <<him>> right at the back of the jaw, the sound of bone on bone filling the room as you connect with everything you have.<br>
<br>
Mongo goes down, and you
<<else>>
You know better than to over-commit; you'll win this fight with speed and technique, not brute force. Rather than put yourself off balance you surprise <<him>> with a chopping kick to the leg, responding to <<his>> counter attack with a slip... and another low strike.<br>
<br>
Mongo grunts in annoyance as you continue to dance just out of reach and chop away, your shin landing with the force of a baseball bat as you dodge and weave.<br>
<br>
For all <<his>> size and strength, Mongo is slower than you, made even moreso with every blow you land. <<His>> knee buckles and <<he>> drops to one hand... and you respond by firing a round-house kick into <<his>> face so hard <<his>> head whips to the side... and <<he>> falls.<br>
<br>
You
<</if>>
look around the room with a sneer, as nearly everyone else takes a reflexive step back.<br>
<br>
CLAP. CLAP.<br>
<br>
You look over to see <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> applauding slowly, the slave who had been sucking <<his npc_nintendolls_son>> cock wiping her lips. "@@.npc_nintendolls_son;Well, well, well, it seems that you were not oversold at all.@@"<br>
<br>
Behind you a couple of other gang-members are assisting Mongo back to <<his>> feet, almost buckling under <<his>> weight as they help carry <<him>> away.<br>
<br>
"@@.npc_nintendolls_son;Consider your application approved... now, let us talk business...@@"<br>
<br>
[<<moveTo "event_gang_offer_1" "You heard <<he npc_nintendolls_son>>'s prepping for a big job — you and your crew want in." 180>>]
</div>/*#
#desc: decline to fight your way into gang
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImageGeneric("gangster_hulking")>>
<div id="invframe" class="scrolltext">
Discretion being the better part of valor — and just one of Mongo's muscular legs probably weighing as much as you do, has you quietly rise from the table and apologise for wasting <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> time.<br>
<br>
<<if $fetish.get_raped>>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> shakes <<his npc_nintendolls_son>> head as a shadow falls over you and you realise Mongo is standing behind your chair.<br>
<br>
"@@.npc_nintendolls_son;You have to understand,@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> explains as you are lifted out of the chair and thrown across the floor. "@@.npc_nintendolls_son;Letting someone get away with beating up my <<if $options.fem>>girls<<else>>men<</if>>, well... it would set a bad precedent.@@"<br>
<br>
You scramble to your feet, but the bar is far different from the elevator — too much room, impossible not to be surrounded... and Mongo.<br>
<br>
You get a few licks in, but there's just too many. A fist the size of your head near folds you in half, and the next thing you know Mongo is throwing you over a table, <<his>> weight pinning you down as <<he>> enters you from behind.<br>
<br>
You gasp as <<he>> proves just as larger in your ass as <<he>> is in every other way. From across the room, <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> watches in amusement, and then another gang-member moves in front of you, lifting you by your hair as <<he>> presents <<his>> cock. Mongo thrusts forward and you gasp, your parted lips filled with a single thrust.<br>
<br>
[<<moveTo "event_gang_intro_rape_1" "Time to get LITERALLY gang-raped..." 60>>]
<<else>>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> chuckles in amusement, and there are some grumbles from the other <<men>>, but nobody interferes as you leave the club and hurry back down the elevator.<br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
<</if>>
</div>/*#
#desc: fail to fight your way into gang
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 18 'terrible' $SEEN_STRANGER>>
<<applyExperience 'oral' 18 'terrible' $SEEN_STRANGER>>
<<applyFatigue 500>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImageGeneric("gangster_hulking") setup.charImage("gang_tough")>>
<div id="invframe" class="scrolltext">
Nearly every member of the gang has their way with you before Mongo gets <<his>> turn... and none are gentle. Pounding thrusts mix with slaps and cruel insults as the gang "makes up" for your prior encounter. <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> watches the entire time, amused, but seemingly content to have <<his npc_nintendolls_son>> two slaves alternate sucking <<him npc_nintendolls_son>> off rather than rise to <<his npc_nintendolls_son>> feet and take <<his npc_nintendolls_son>> turn with you.<br>
<br>
Already beaten down before they even started, it is all you can do just to sneak the odd breath and keep conscious as you are ravaged from either end. Finally, bruised inside and out, and leaking cum, Mongo tosses you out of the club and back into the elevator. Somehow you pull yourself up far enough to press the button for the ground floor, and from there to stagger home, exhausted, broken, and sore.<br>
<br>
[<<moveTo "room_bedroom" "Collapse into your bed." 60>>]
</div>/*#
#desc: admin you in to gang
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" "gang_tough" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_nintendolls_son")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_admin', 'first')>> strides confidently into the gang's hideout as you nervously count how many gang members there are. At least a dozen, plus <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>>, <<him npc_nintendolls_son>>self, <<his npc_nintendolls_son>> position on what can only be called a throne, with two scantily-clad slaves leashed at <<his npc_nintendolls_son>> feet.<br>
<br>
"@@.generic_male1;This <<guy npc_admin>> heard about the job youse was putting together, says <<he npc_admin>> wants to take part.@@" Your escort explains.<br>
<br>
"@@.npc_nintendolls_son;I see... well you certainly look the part... but beach muscles are one thing. I need to be sure you can handle yourself if things go... badly.@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> claps and a hulking <<man>> rises up from a corner both.<br>
<br>
"@@.npc_nintendolls_son;This is Mongo.@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> explains as the <<man>> steps forward. Nearly a head taller than <<=setup.getNpcName('npc_admin', 'first')>>, and even wider, <<he>> went far beyond your friend's perfectly balanced physique to pile muscle on top of muscle. Facial scars and a many-times broken nose telling you just what sort of <<man>> <<he>> is as <<he>> looms in front of <<=setup.getNpcName('npc_admin', 'first')>>.<br>
<br>
<<His npc_admin>> voice so casual as to almost sound bored <<=setup.getNpcName('npc_admin', 'first')>> half turns to look askance at <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>>. "@@.npc_admin;So if I beat your champion, we're in the gang?@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> is taken off guard for a moment before <<he npc_nintendolls_son>> finally notices you and realises that <<=setup.getNpcName('npc_admin', 'first')>> is not alone. "@@.npc_nintendolls_son;We? Yes, I suppose you can bring your personal dick-candy along if you promise to share. But I am not so harsh — if you can put in a good enough showing I'll consider your application.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> nods. "@@.npc_admin;Easy enough.@@" <<He npc_admin>> steps back with one leg and slides into stance. "@@.npc_admin;Alright, Mongo. When you're ready.@@"<br>
<br>
You're nervous... but <<=setup.getNpcName('npc_admin', 'first')>> is cool as a cucumber, so all you can really do is watch your friend work.<br>
<br>
[<<moveTo "event_gang_intro_4_admin" "Continue." 300>>]
</div>/*#
#desc: admin fights mongo
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImageGeneric("gangster_hulking") setup.charImage("npc_admin","npc_admin_casual")>>
<div id="invframe" class="scrolltext">
Mongo grins and takes a somewhat casual swing, a fist the size of your head sailing towards <<=setup.getNpcName('npc_admin', 'first')>>, but your friend has already slipped out of the way, coming up on the inside with a digging hook that causes Mongo to grunt, and immediately take things seriously.<br>
<br>
Even more than the size difference, the disparity in speed becomes immediately apparent as <<=setup.getNpcName('npc_admin', 'first')>> slips and deflects while constantly angling off, digging in with hard punches to the body and kicks to the leg as <<he npc_admin>> chops away at <<his npc_admin>> larger foe without getting touched... or even breathing hard.<br>
<br>
A particularly solid kick to the knee almost sends Mongo to the floor, but the massive gangster roars and charges forward, grabbing <<=setup.getNpcName('npc_admin', 'first')>> in a bear-hug as <<he>> drives towards the wall... only to get reversed and sprawled, a brutal knee breaking Mongo's nose again before <<=setup.getNpcName('npc_admin', 'first')>> is around behind, wrenching Mongo's arm into a hammerlock as <<he npc_admin>> forces the big <<man>> to <<his>> knees.<br>
<br>
"@@.npc_admin;That good enough for you?@@" <<=setup.getNpcName('npc_admin', 'first')>> asks, looking <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> dead in the eye as <<he npc_admin>> presses on Mongo's shoulder to keep the <<man>> from getting back up.<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> looks nothing but amused as <<he npc_nintendolls_son>> leans back in <<his npc_nintendolls_son>> chair and waves a hand dismissively "@@.npc_nintendolls_son;Break it. It will be a lesson.@@"<br>
<br>
For the first time <<=setup.getNpcName('npc_admin', 'first')>> hesitates, before instead shoving Mongo all the way to the floor and stepping away as the <<man>> massages <<his>> arm. "@@.npc_admin;Nah, you don't get to order me around unless I'm on the payroll. Job application is one thing, but if you want to command my skills... you best be paying first.@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> chuckles. "@@.npc_nintendolls_son;Oh, I like you... you've got moxie. Come, let us speak of business.@@"<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> nods, reaching for your hand as a table and chair are placed in front of <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> throne.<br>
<br>
<<=setup.getNpcName('npc_admin', 'first')>> sits you down and stands guard behind your chair.<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> takes it in stride, leaning forward with a grin. "@@.npc_nintendolls_son;The surprises keep coming... so, what business did you have for me?@@"<br>
<br>
[<<moveTo "event_gang_offer_1" "You heard <<he npc_nintendolls_son>>'s prepping for a big job — you and your crew want in." 180>>]
</div>/*#
#desc: nintendolls son makes offer
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 1, 0, true)>>
<<addTaskById 'task_nintendolls_destroy' _nextDate>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<switch $scene.intro>>
<<case 'fuck' 'fight'>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImage("npc_nintendolls_son") setup.charImage("npc_nintendolls_slave")>>
<<case 'admin'>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImage("npc_admin","npc_admin_casual") setup.charImage("npc_nintendolls_son") setup.charImage("npc_nintendolls_slave")>>
<</switch>>
<div id="invframe" class="scrolltext">
You explain that you heard <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> was planning a job to go after <<=setup.getNpcName('npc_nintendolls', 'formal')>>, and you want in.<br>
<br>
"@@.npc_nintendolls_son;<<=setup.getNpcName('npc_nintendolls', 'formal')>>?@@" <<He npc_nintendolls_son>> is momentarily surprised, "@@.npc_nintendolls_son;and how, exactly, did you find that out?@@"<br>
<br>
You grin and make a vague reference to having "sources." <br>
<br>
"@@.npc_nintendolls_son;You are just full of surprises, and why are you so interested in this?@@"<br>
<br>
You reply that you have history with <<=setup.getNpcName('npc_nintendolls', 'formal')>>, but that helping <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> will be better than going after <<him npc_nintendolls>> alone.<br>
<br>
"@@.npc_nintendolls_son;Interesting... not that <<he npc_nintendolls>> has any shortage of enemies. Whatever your source of intel is... it is quite good. I have the plan, and I'm nearly ready to start... definitely have the muscle for it, all that I'm missing is a hacker skilled enough for what I need. Do you have one of those in your... crew?@@"<br>
<br>
You grin and reply that, indeed, you do...<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> grins. "@@.npc_nintendolls_son;Excellent... then, in that case...
<<if $now.getUTCDay()==6>>
tonight,
<<else>>
Saturday night,
<</if>>
<<if $options.militaryTime>>twenty-three hundred<<else>>eleven pm<</if>>. And bring your hacker friend — anyone I work with, I want to look them in the eye first. We'll meet at the <<if $fetish.bladerunner>>Tyrell <</if>>Warehouses, in the north part of the industrial district.@@"<br>
<br>
<<switch $scene.intro>>
<<case 'fuck'>>
You nod and rise to your feet, thanking <<him npc_nintendolls_son>> for the opportunity. You turn to go, the other gang members leering at you as you make your way back to the elevator.
<<case 'fight'>>
You nod and rise to your feet. You turn to go, the rest of <<his npc_nintendolls_son>> gang still nervously backing away from you. You smirk confidently and return to the elevator.
<<case 'admin'>>
You rise to leave, but <<=setup.getNpcName('npc_admin', 'first')>> pauses to look around the room at the rest of the gang. "@@.npc_admin;And one last thing — she's mine, any of you lay hands on her without permission and we'll be having a problem. And when I have a problem with someone, I make sure it's only a problem once.@@"<br>
<br>
Gang members that were once all but leering at you are now trying to look anywhere else as you and <<=setup.getNpcName('npc_admin', 'first')>> return to the elevator and head back down to the mall.
<<default>>
ERROR: unexpected scene.intro <<=$scene.intro>>
<</switch>>
<br><br>
[<<moveTo "event_gang_offer_2" "Ride down." 180>>]
</div>/*#
#desc: leave after making deal with gang
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.intro == "admin">>
<<set $player.location to "Mall Glass Elevator">>
<<else>>
<<set $player.location to "Phonecall">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.intro == "admin">>
<<createAdvBGR "./images/locations/glass_elevator.png" setup.charImage("npc_admin","npc_admin_casual")>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.intro == "admin">>
Not until the elevator doors close and you slide out of sight does <<=setup.getNpcName('npc_admin', 'first')>> aggressive facade slip.<br>
<br>
"@@.npc_admin;Good job back there, guess I'll see you <<if $now.getUTCDay()==6>>tonight<<else>>Saturday<</if>>?@@"<br>
<br>
You nod.<br>
<br>
"@@.npc_admin;Sounds good, make sure you rest up.@@" <<if $npc_admin.flags.relationship == "boyfriend">><<He npc_admin>> gives you a parting hug and then<<else>><<He npc_admin>><</if>> heads on <<his npc_admin>> way.
<<else>>
You wait until you're off the elevator to let out a held breath. You've set things up... you just hope <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> plan is less crazy than <<he npc_nintendolls_son>> seems to be.
<</if>>
<br><br>
You start across the mall, giving <<=setup.getNpcName('npc_technician', 'first')>> a call to let her know that everything's a go, and that you'll be needing her to play the part of your "Hacker." <br>
<br>
"@@.npc_technician;You got it! I got just the costume, too... and with <<if $npc_technician.flags.ai_collar>><<=ps(setup.getNpcName("npc_ai","formal"))>><<else>><<=ps(setup.getNpcName("npc_ai","other"))>><</if>> help, well... we can hack the planet!@@"<br>
<br>
[<<moveTo "room_mall_interior" "Put your phone away and return to the mall." 60>>]
</div>/*#
#desc: re-enrol in crime club mission
#status: RELEASED 1.0.0.0
#ignore_spell: standin'
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.getNextDayOfWeek($now, 0, 1, 0, true)>>
<<addTaskById 'task_nintendolls_destroy' _nextDate>>
<</if>>
<<set $player.location to "Outside Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club_exterior.png" "gang_tough" "gang_tough">>
<div id="invframe" class="scrolltext">
You ride up the elevator and approach the door of the private club only for one of the toughs to recognise you.<br>
<br>
"@@.generic_male1;You gots a lot of nerve showin' your face after standin' up da boss.@@"<br>
<br>
"@@.generic_male2;Yeah!@@" <<His>> companion snarls.<br>
<br>
"@@.generic_male1;<<He npc_nintendolls_son>> don't wanna see you right now... but <<he npc_nintendolls_son>> sez that, if you're serious about the job, you meet up <<if $now.getUTCDay() == 6>>midnight tonight<<else>>Sunday, midnight<</if>>.@@"<br>
<br>
<<printThought "Probably best not to press the issue and try to barge in...">><br>
<br>
You nod and beat a hasty retreat back down the elevator.<br>
<br>
[<<moveTo "room_mall_interior" "Back to the mall." 60>>]
</div>/*#
#desc: noshow nintendolls takedown
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.beforetasklocation.last() == "event_nintendolls_destroy_1">>
<<set $scene.beforetasklocation.pop()>>
<<initRoom>>
<<moveTo "event_nintendolls_destroy_1">>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>><<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a call from <<=setup.getNpcName('npc_technician', 'first')>> as you realise you're late for the "job" with <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>>.<br>
<br>
"@@.npc_technician;Where the hell are you? I need an intro and, well... I see <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> waiting and <<he npc_nintendolls_son>>'s looking a bit PO'd.@@"<br>
<br>
You swear to yourself and promise you'll be there soon.<br>
<br>
"@@.npc_technician;You better, I've been reading up more about <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>>, not to mention <<his npc_nintendolls_son>> <<if $npc_nintendolls.fem>>mom<<else>>dad<</if>>... the sooner we get this job over with, the better.@@" She hangs up.<br>
<br>
<<printThought "Probably best not to stand up the psychotic gang leader...">><br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo 'event_nintendolls_destroy_1_late' 'Hurry to the rendezvous.' 600>>]
<<else>>
[@@.link_locked;You aren't going outside dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: arrive to destroy nintendolls
#status: RELEASED 0.9.2.0
#ignore_spell: z
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _themeId = setup.findThemeId('npc_admin', 'work', 'theme_admin_work_nintendolls')>>
<<set $npc_admin.themes.work[_themeId].repeatable = false>>
<<set _themeId = setup.findThemeId('npc_technician', 'work', 'theme_technician_work_nintendolls')>>
<<set $npc_admin.themes.work[_themeId].repeatable = false>>
<<completeTask "task_nintendolls_destroy" $now true>>
<</if>>
<<set $player.location to "Outside a Nondescript Warehouse">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<createAdvBGR "./images/locations/warehouse.png" setup.charImage("npc_admin") setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<<else>>
<<createAdvBGR "./images/locations/warehouse.png" setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<</if>>
<div id="invframe" class="scrolltext">
You meet up with <<=setup.getNpcName('npc_technician', 'first')>><<if State.hasPlayed("event_gang_intro_4_admin")>> and <<=setup.getNpcName('npc_admin', 'first')>><</if>> on the industrial side of town, about a block away from the designated rendezvous, raising an eyebrow at <<=ps(setup.getNpcName('npc_technician', 'first'))>> somewhat... over-the-top outfit.<br>
<br>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
Where <<=setup.getNpcName('npc_admin', 'first')>> kept things simple with <<his npc_admin>> usual suit, <<=setup.getNpcName('npc_technician', 'first')>> looks like something out of a trash cyberpunk novel where hacker is spelt with a z and EVERYTHING is neon and xtreme.
<<else>>
<<=setup.getNpcName('npc_technician', 'first')>> looks like something out of a trash cyberpunk novel where hacker is spelt with a z and EVERYTHING is neon and xtreme.
<</if>>
There's no time for changing now and you head the rest of the way to the meet-up.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_2' "Let's get ready to do some crime..." 180>>]
</div>/*#
#desc: arrive late to destroy nintendolls
#status: RELEASED 0.9.2.0
#ignore_spell: z
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask "task_nintendolls_destroy" $now true>>
<</if>>
<<set $player.location to "Outside a Nondescript Warehouse">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<createAdvBGR "./images/locations/warehouse.png" setup.charImage("npc_admin") setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<<else>>
<<createAdvBGR "./images/locations/warehouse.png" setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<</if>>
<div id="invframe" class="scrolltext">
You hurry to the meet-up on the industrial side of town, barely greeting <<=setup.getNpcName('npc_technician', 'first')>><<if State.hasPlayed("event_gang_intro_4_admin")>> and <<=setup.getNpcName('npc_admin', 'first')>>, the former of which has adopted quite the<<else>>, no time to remark on her<</if>> outlandish costume — an over-the-top neon "punk" get-up that would be over the top in some trash cyberpunk serial with two many x's and z's in the name.<br>
<br>
You shake your head and head around the block to reach the rendezvous.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_2' "Let's get ready to do some crime..." 180>>]
</div>/*#
#desc: meet nintendolls_son to destroy nintendolls
#status: RELEASED 0.9.2.0
#ignore_spell: erp
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside a Nondescript Warehouse">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<createAdvBGR "./images/locations/warehouse.png" setup.charImage("npc_admin") setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<<else>>
<<createAdvBGR "./images/locations/warehouse.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<</if>>
<div id="invframe" class="scrolltext">
You arrive to find <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> pacing impatiently, trailing smoke from some high-tech electronic cigarette with a couple of generic bruisers, plus one of <<his npc_nintendolls_son>> twin slaves — now armoured up and armed, though looking barely less lewd, to keep <<him npc_nintendolls_son>> company<<if State.hasPlayed("event_gang_intro_4_admin") || _TODOfight>> — Mongo nowhere to be seen<</if>>.<br>
<br>
"@@.npc_nintendolls_son;Finally! You're here.@@" <<He npc_nintendolls_son>> states. "@@.npc_nintendolls_son;So, here's the job — Nintendolls is being merged with that giant conglomerate... but it's taking time, and one of the company's offline backups is stored right near here. There's all sorts of important data there, and we're going to swipe it. Well, some of it. The particular files I want are one of their AI algorithms, and the associated training data that was used to make it.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> suddenly speaks up, pulling her goggles up on top of her head to look at <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> directly. "@@.npc_technician;Yeah? And what does this AI do? I ain't gonna help you steal no murder-bot or nothing. I got standards.@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> stops pacing and glares, not at <<=setup.getNpcName('npc_technician', 'first')>>, but at you. "@@.npc_nintendolls_son;Your people always this mouthy?@@"<br>
<br>
You stare back<<if State.hasPlayed("event_gang_intro_4_admin")>> as <<=setup.getNpcName('npc_admin', 'first')>> cracks <<his npc_admin>> knuckles in a casual warning<</if>>. "@@.pc;My people work best when they know the whole story — I don't want any surprises in the middle of a job.@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> takes another puff on <<his npc_nintendolls_son>> cigarette as <<he npc_nintendolls_son>> stares <<=setup.getNpcName('npc_technician', 'first')>> down and you, not for the first time, wonder if she didn't maybe overdo it with the costume.<br>
<br>
"@@.npc_nintendolls_son;Fine. See, they were using their online games to train the AI, but then they shelved it 'cause it was turning literally every situation into extreme ERP... well, I've got some connections over at their biggest competitor — Sissyga and you know what they say. Sissyga does what Nintendolls don't... The market for sex-dolls is already several billion credits a year, give them some properly functional AI and, well... who wouldn't want to buy their very own obedient, and creative, fuck-slave?@@"<br>
<br>
<<printThought "That sounds like exactly the sort of thing Social Interaction Service Syndicate Inc. would be interested in...">><br>
<br>
[<<moveTo 'event_nintendolls_destroy_2a' 'How does all of this hurt <<=setup.getNpcName("npc_nintendolls", "formal")>>?' 180>>]<br>
[<<moveTo 'event_nintendolls_destroy_3' "Sound's good, you're ready to go." 1800>>]
</div>/*#
#desc: ask why you're stealing
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Outside a Nondescript Warehouse">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<createAdvBGR "./images/locations/warehouse.png" setup.charImage("npc_admin") setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<<else>>
<<createAdvBGR "./images/locations/warehouse.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<</if>>
<div id="invframe" class="scrolltext">
You ask how stealing this AI is going to hurt <<=setup.getNpcName('npc_nintendolls', 'formal')>>?<br>
<br>
"@@.npc_nintendolls_son;Simple. You see, when the results started coming out, <<he npc_nintendolls>> was the one who buried the project, and just about anyone else who knew about it. It's <<his npc_nintendolls>> bargaining chip with Social Interaction Service Syndicate Inc., and if <<his npc_nintendolls>> main competitor scoops <<him npc_nintendolls>> on it, well... suddenly <<he npc_nintendolls>>'s not so useful to keep on after the merger...@@"<br>
<br>
[<<moveTo 'event_nintendolls_destroy_3' "Sound's good, you're ready to go." 1800>>]
</div>/*#
#desc: sneak in to steal
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Tunnel">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<createAdvBGR "./images/locations/tunnel.png" setup.charImage("npc_admin") setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<<else>>
<<createAdvBGR "./images/locations/tunnel.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<</if>>
<div id="invframe" class="scrolltext">
You nod that you're ready to get started and <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> grins, palming <<his npc_nintendolls_son>> cigarette after a final puff and leading you into the warehouse you've been standing in front of.<br>
<br>
"@@.npc_nintendolls_son;Right this way — I've been planning this for a while, and it just so happens that this building is right next to the one Nintendolls is using for their storage...@@" Two members of <<his npc_nintendolls_son>> gang push a large crate out of the way to reveal a hole in the floor, <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> hopping down into the tunnel and leading you through a short, narrow walk to where you find <<his npc_nintendolls_son>> other slaves... slaving away with a torch, stepping out of the way as a large metal disc falls down from the ceiling, almost on cue.<br>
<br>
"@@.npc_nintendolls_son;Perfect, as always!@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> states with a grin, kissing <<his npc_nintendolls_son>> slave on the lips while clipping a leash to <<his>> collar. "@@.npc_nintendolls_son;Alright, hacker-girl. Time for you to do your stuff and find my files...@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> pulls her goggles back down
<<if State.hasPlayed("event_gang_intro_4_admin")>>
and <<=setup.getNpcName('npc_admin', 'first')>> gives the both of you a boost up out of the tunnel.
<<else>>
and one of <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> goons gives the two of you a boost up out of the tunnel.
<</if>>
<br><br>
You look around, the room only lit by rack after rack of computers blinking softly.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_4' "Time for the tech wizard to work her magic." 1800>>]
</div>/*#
#desc: steal data
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Datacentre">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/servers.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_technician', 'first')>> whips out a tablet and heads straight for one of the machines to plug in as <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> pops up, flanked by <<his npc_nintendolls_son>> two slaves.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> chuckles in amusement, "@@.npc_technician;never rely on physical security! This login is a joke and...@@" she draws out as she taps away for a moment. "@@.npc_technician;Got it — it's encrypted... but nothing I can't crack. It'll take a few minutes. All we have for me to get it all copied into one place and wipe out the other backups. Then we just swipe a couple drives... and you've got yourself some fuck-doll AI!@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> grins. "@@.npc_nintendolls_son;I guess your girl does know her stuff.@@" As <<he npc_nintendolls_son>> waits one of <<his npc_nintendolls_son>> slaves slides to <<his>> knees and <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> nods slightly in permission as the <<man>> sets to work keeping <<his>> <<Master npc_nintendolls_son>> occupied by sucking <<his npc_nintendolls_son>> cock.<br>
<br>
"@@.npc_nintendolls_son;I'd offer your girl one too...@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> states with a smile. "@@.npc_nintendolls_son;But I don't want to distract her from the job.@@"<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> doesn't even seem to notice, too focused in on her work... when you hear a loud sound from the far side of the datacentre.<br>
<br>
<<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> slave freezes mid-suck as <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> draws a gun. "@@.npc_nintendolls_son;What was that? If you've betrayed me I'll have you...@@" <<His npc_nintendolls_son>> voice trails off ominously as <<he npc_nintendolls_son>> nods in your direction. "@@.npc_nintendolls_son;Go find out what that was — and deal with it if it's a problem.@@" One of <<his npc_nintendolls_son>> two slaves breaks off, weapon in hand, glancing at you to follow.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_5' "Go with the slave to investigate." 1800 "<<set $scene.investigate=true>>">>]<br>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
[<<moveTo 'event_nintendolls_destroy_5' 'Send <<=setup.getNpcName("npc_admin", "first")>> to investigate.' 1800 "<<set $scene.investigate=false>>">>]
<</if>>
</div>/*#
#desc: investigate guards during heist
#status: RELEASED 0.9.2.0
#ignore_spell: w
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Servers">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.investigate>>
<<createAdvBGR "./images/locations/servers.png" setup.charImage("npc_nintendolls","npc_nintendolls_armed_slave")>>
<<else>>
<<createAdvBGR "./images/locations/servers.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.investigate>>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> hands off <<his npc_nintendolls_son>> slave's leash, and the two of you head towards the source of the sound.<br>
<br>
In the dim light of the datacentre you strain your ears to hear anything over the constant hum of the cooling systems, moving between racks until you catch a glimpse of an armed <<man>> in full black ops gear walking past at the far end of the row.<br>
<br>
Before you can react the slave at your side has raised her gun and fired, the rat-tat-tat of the gun centimetres from your head ringing in your ear as the <<man>> drops.<br>
<br>
Calm turns to chaos as several more black ops agents come into view, firing back as your temporary partner lays down more fire until you all but drag her back into cover.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_5_fight_1' "You need to buy more time..." 180 "<<set $scene.fight=true>>">>]<br>
[<<moveTo 'event_nintendolls_destroy_5_fight_1' "Race back." 180 "<<set $scene.fight=false>>">>]
<<else>>
You look back down into the tunnel and summon <<=setup.getNpcName('npc_admin', 'first')>> to investigate the disturbance. <<He npc_admin>> scrambles up into the room and falls in with <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> slave to head towards the source of the sound.<br>
<br>
You listen carefully as the pair disappears around a corner into the darkness, trying to hear anything over the steady hum of the datacentre's cooling systems.<br>
<br>
Several minutes pass and you hear a muffled bang, followed by a crunching sound... and then loud footsteps racing towards you.<br>
<br>
<<=setup.getNpcName('npc_technician', 'first')>> is busy taking one of the machines apart, as you help with a weird sense of deja vu of your previous job. <<printThought "Never had to take swap hard drives in the middle of an armed robbery before...">> You think to yourself, silently urging <<=setup.getNpcName('npc_technician', 'first')>> to go faster as your heart pounds...<br>
<br>
[<<moveTo 'event_nintendolls_destroy_6' "Continue." 180>>]
<</if>>
</div>/*#
#desc: fight through heist
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Servers">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/smoke.png" setup.charImage("npc_nintendolls","npc_nintendolls_armed_slave")>>
<div id="invframe" class="scrolltext">
<<if $scene.fight>>
You look the slave in the eye and nod — you need to buy time for <<=setup.getNpcName('npc_technician', 'first')>> to finish.<br>
<br>
The slave peeks around the corner and fires off another burst as you hear a sound from above and look up just as a thin barrel breaks over the top of the rack.<br>
<br>
<<printThought "Shit, they're coming from above!">><br>
<br>
[<<moveTo 'event_nintendolls_destroy_5_fight_2' "Fight!" 180 "<<set $scene.fight=true>>">>]<br>
[<<moveTo 'event_nintendolls_destroy_5_fight_2' "Flee!" 180 "<<set $scene.fight=false>>">>]
<<else>>
One of the machines nearby explodes as it catches part of a burst of return fire. You spot a smoke grenade hanging from your companions harness and you snatch it off, pulling the pin and tossing it up the row as you drag her with you through the temporary cover.<br>
<br>
She tries to fire back, but it seems that her training to obey whoever has her leash outweighs everything else as she hurries after you as you race back to your friends.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_6' "Continue." 180>>]
<</if>>
</div>/*#
#desc: fight through heist
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Servers">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fight>>
<<createAdvBGR "./images/locations/servers.png" setup.charImage("npc_nintendolls","npc_nintendolls_armed_slave") "elite_guard">>
<<else>>
<<createAdvBGR "./images/locations/smoke.png" setup.charImage("npc_nintendolls","npc_nintendolls_armed_slave") "elite_guard">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.fight>>
<<if setup.getTotalValue("dexterity") > 15>>
You leap up onto the top of the server racks and immediately start fighting with the mercenary over <<his>> gun.
<<if setup.getTotalValue("martial_arts") > 15>>
With a twist and a trip you send <<him>> tumbling to the ground. You spray suppressive fire to get the rest of <<his>> friends to put their heads down before hopping back to the ground.<br>
<br>
You grab a smoke grenade off the slave's harness and huck it behind you before taking hold of her leash and leading the way back towards your friends.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_6' "Time to scram..." 180>>]
<<else>>
You try to wrestle the weapon away from your opponent, but you're facing an up-hill battle; from <<him>> being bigger, having better starting grips, and you being unsteady from the initial leap up onto <<his>> level.<br>
<br>
<<He>> twists and you tumble to the floor, the hard landing knocking the air out of you as you are swarmed and subdued by <<his>> compatriots before you can even get back to your feet.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_bad_end' "Oh no..." 180>>]
<</if>>
<<else>>
You try to jump up, but you lack the dexterity to get high enough, fast enough before the gun finishes clearing the top of the server rack.<br>
<br>
You attempt to dive to the side, but you feel a pair of impacts, one in your back and the other below your hip. Before you can rise strong hands are shoving you into the ground, yanking your arms behind your back and cinching zip ties around your wrists...<br>
<br>
[<<moveTo 'event_nintendolls_destroy_bad_end' "Oh no..." 180>>]
<</if>>
<<else>>
Still holding the slave's leash you dive out of the way, hearing her gun go off again and the attempted ambusher do a bullet-dance before falling off the top of the server racks.<br>
<br>
Another burst of suppressive fire, followed by a smoke grenade, and the two of you are fleeing back to your allies as you hope <<=setup.getNpcName("npc_technician","first")>> is finished...<br>
<br>
[<<moveTo 'event_nintendolls_destroy_6' "Go go go!" 180>>]
<</if>>
</div>/*#
#desc: caught trying to destroy npc_nintendolls
#status: RELEASED 0.9.2.0
#ignore_spell: tm,ninten
#*/
<<set $gameOver = 'nintendolls_heist'>>
<<include playerMenuLocked>>
<div id="invframe" class="scrolltext">
Black-bagged and shoved into a van, you can feel shock setting in, half expecting to never wake up as you pass out...<br>
<br>
It's possible not waking up would have been preferable to what you rise into. You may have been patched up — but you are now bound and imprisoned in some sort of narrow cylinder. Gas floods the chamber and you feel light-headed, your thoughts becoming foggy as a hypnotic voice begins playing in your head...<br>
<br>
Several months later you finally exit the pod, your head half cybernetics, with barely anything left over for any thought save obedience; part of the first batch of new Ninten-dolls (TM), a "startlingly realistic" product line of life-like robotic assistants, the first joint offering to prove the market value of the Social Interaction Service Syndicate Inc. and Nintendolls merger...<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to finale planning">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: finish stealing data during heist
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Servers">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.investigate>>
<<createAdvBGR "./images/locations/servers.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls","npc_nintendolls_armed_slave") setup.charImage("npc_nintendolls_son")>>
<<else>>
<<createAdvBGR "./images/locations/servers.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls","npc_nintendolls_armed_slave") setup.charImage("npc_admin") setup.charImage("npc_nintendolls_son")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.investigate>>
You come sprinting back just as <<=setup.getNpcName("npc_technician","first")>> triumphantly raises a hard drive in the air.<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> glances at you in annoyance and then leads the way back into the tunnel. "@@.npc_nintendolls_son;Why didn't you deal with them?@@"<br>
<br>
"@@.pc;Too many!@@" You snap back as you flee back the way you came.
<<else>>
You hear some more sounds of gunfire and then things go eerily silent until, with a triumphant whisper-shout, <<=setup.getNpcName("npc_technician","first")>> holds high a hard drive. "@@.npc_technician;Got it!@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> greedily snatches <<his npc_nintendolls_son>> prize and <<=setup.getNpcName("npc_technician","first")>> chuckles. "@@.npc_technician;Don't be ditching us now, or anything — the data's there, but I encrypted it, not that junk they were using, but something you won't crack in a million years. So don't even think of running off until the rest of the crew is back...@@"<br>
<br>
Right on cue <<=setup.getNpcName("npc_admin","first")>> storms back into sight, half-carrying the slave that went out with <<him npc_admin>>.<br>
<br>
"@@.npc_admin;We dealt with them, but she caught a lungful of gas, probably fine... but we oughta get out of here before reinforcements show up.@@"<br>
<br>
"@@.npc_nintendolls_son;Good,@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> snaps in annoyance, glaring at <<=setup.getNpcName("npc_technician","first")>> one last time before leading the way back through the tunnel.
<</if>>
<br><br>
[<<moveTo 'event_nintendolls_destroy_7' "Time for the getaway..." 180>>]
</div>/*#
#desc: drive away from heist
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Getaway Car">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_admin") setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<<else>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<</if>>
<div id="invframe" class="scrolltext">
The getaway vehicles are already running as you race out of the warehouse. <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> keeps you and <<if State.hasPlayed("event_gang_intro_4_admin")>>your friends<<else>><<=setup.getNpcName("npc_technician","first")>> close<</if>> by as you jump into the first large car, with <<his npc_nintendolls_son>> slaves and the other gang members split across two other vehicles — each of you racing off in a different direction.<br>
<br>
"@@.npc_nintendolls_son;Ha-ha! And away we go!@@" <<He npc_nintendolls_son>> leans back in triumph, "@@.npc_nintendolls_son;The only way to make this better would be a nice celebratory blowjob...@@" <<His npc_nintendolls_son>> legs slowly spread to draw further attention to <<his npc_nintendolls_son>> bulging pants as <<he npc_nintendolls_son>> looks around the cabin
<<if State.hasPlayed("event_gang_intro_4_admin")>>
"@@.npc_nintendolls_son;Whaddaya say, ladies? Or you, big <<if $npc_admin.fem>>gal<<else>>fella<</if>>, I bet you're feeling hard and ready to pop off after that action? We never did talk about payment, but I'm feeling pretty... generous right now.@@"<br>
<br>
<<=setup.getNpcName("npc_admin","first")>> doesn't even look over, while <<=setup.getNpcName("npc_technician","first")>> is suddenly very focused on her tablet.
<<else>>
grinning first at <<=setup.getNpcName("npc_technician","first")>> and then yourself. "@@.npc_nintendolls_son;Whaddaya say, ladies? We never did talk about payment, how about you start with a tasty reward?@@"<br>
<br>
<<=setup.getNpcName("npc_technician","first")>> is suddenly very focused on her tablet.
<</if>>
"@@.npc_technician;Sorry, monitoring police channels — want to make sure we got away clean... so far, it looks like whoever tried to stop us was a private group, nothing on the official bands...@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> frowns, <<his npc_nintendolls_son>> attention fully focused on you, now.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_8' "Stick to the mission, keep <<him npc_nintendolls_son>> happy and suck <<him npc_nintendolls_son>> off." 600 "<<set $scene.suck=true>>">>]<br>
[<<moveTo 'event_nintendolls_destroy_8' "Focus on the road." 600 "<<set $scene.suck=false>>">>]
</div>/*#
#desc: suck cock during escape
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Getaway Car">>
<<initRoom>>
<<include playerMenu>>
<<if $scene.suck>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<<else>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_admin") setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<<else>>
<<createAdvBGR "./images/locations/limo_interior.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<</if>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
Deciding that it's best to keep <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> placated until the mission is concluded, you crawl across the vehicle to kneel between <<his npc_nintendolls_son>> legs.<br>
<br>
You're pretty sure <<=setup.getNpcName("npc_technician","first")>> is having trouble resisting stealing quick glances, but you keep your attention on the task at hand as you pull on <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> double zipper and let <<his npc_nintendolls_son>> cock fall into your mouth.<br>
<br>
"@@.npc_nintendolls_son;I knew you were a good recruit. After this job is over... maybe we can talk about a more permanent arrangement?@@" <<He npc_nintendolls_son>> reaches down to
<<if setup.checkItemTypeTag('choker', ['leash_attachment'])>>
take hold of your collar. "@@.npc_nintendolls_son;You'd look so good with one of my leashes...@@"
<<else>>
grab you by the hair. "@@.npc_nintendolls_son;Your throat would look so much better with one of my collars locked around it...@@"
<</if>>
<<he npc_nintendolls_son>> draws you in for an aggressive kiss before stuffing you back down over <<his npc_nintendolls_son>> cock.<br>
<br>
You continue to suck until the vehicle comes to a stop, and <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> clamps <<his npc_nintendolls_son>> hand back down on your head as <<he npc_nintendolls_son>> finishes with a grunt.
<<else>>
You divert your attention out the window... and then hear the sound of a zipper, catching out of the corner of your eye <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> unzipping <<him npc_nintendolls_son>>self and starting to jerk off.<br>
<br>
The soft "fap, fap, fap" sound seems to make the drive drag on even longer. Just as you approach the familiar mall and descend into the parking garage <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> cums, catching <<his npc_nintendolls_son>> load in one hand and then casually licking it clean with a hungry grin.
<</if>>
<br><br>
The vehicle slides into a reserved parking space deep under the mall and you get out. You don't see either of the other vehicles, yet, but <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> is already leading the way to a private elevator, hard drive raised in the air as <<he npc_nintendolls_son>> talks about it being time to celebrate.<br>
<br>
[<<moveTo 'event_nintendolls_destroy_9' "Follow." 600>>]
</div>/*#
#desc: suck cock during escape
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Mall Glass Elevator">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<createAdvBGR "./images/locations/glass_elevator.png" setup.charImage("npc_admin") setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<<else>>
<<createAdvBGR "./images/locations/glass_elevator.png" setup.charImage("npc_technician","npc_technician_cyberpunk") setup.charImage("npc_nintendolls_son")>>
<</if>>
<div id="invframe" class="scrolltext">
You and <<if State.hasPlayed("event_gang_intro_4_admin")>>your friends<<else>><<=setup.getNpcName('npc_technician', 'first')>><</if>> follow <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> into the elevator, <<his npc_nintendolls_son>> mood becoming even more cheerful on the way up as <<he npc_nintendolls_son>> whistles and grins.<br>
<br>
"@@.npc_nintendolls_son;Buck up, me hearties!@@" <<He npc_nintendolls_son>> states<<if State.hasPlayed("event_gang_intro_4_admin")>>, giving <<=setup.getNpcName('npc_admin', 'first')>> a playful punch in the shoulder<<else>> with a grin<</if>>. "@@.npc_nintendolls_son;You didn't hear anything from the police, and nobody else called in — we got away scot free and now, with this,@@" <<he npc_nintendolls_son>> kisses the hard drive, "@@.npc_nintendolls_son;well, the world is our oyster... and I'm gonna cash in for more than just a pearl necklace...@@"<br>
<br>
The elevator arrives at its destination and <<he npc_nintendolls_son>> barges into the private club, "@@.npc_nintendolls_son;crack open the good stuff, we—@@"<br>
<br>
<<He npc_nintendolls_son>> stops mid-word, as another voice sounds out through the room, "@@.npc_nintendolls;we... what? Go on, I am quite interested to hear your plans... <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>>.@@"<br>
<br>
You consider fleeing, only for a handful of masked guards to appear from either side, guns drawn as they lead you into the club...<br>
<br>
[<<moveTo 'event_nintendolls_destroy_10' 'How did <<=setup.getNpcName("npc_nintendolls", "formal")>> find us so fast?' 600>>]
</div>/*#
#desc: nintendolls gives speech
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImage("npc_nintendolls_son") "elite_guard" setup.charImage("npc_nintendolls") "elite_guard">>
<div id="invframe" class="scrolltext">
Surrounded by <<his npc_nintendolls>> black ops team, and with <<his npc_nintendolls>> hobbled and bound slave crawling after <<him npc_nintendolls>>, <<=setup.getNpcName('npc_nintendolls', 'formal')>> casually walks over to the bar to refill <<his npc_nintendolls>> drink.<br>
<br>
"@@.npc_nintendolls;Sorry for interrupting, here, let me pour you one in celebration... only, what were you celebrating, again?@@" <<He npc_nintendolls>> turns with a grin as <<he npc_nintendolls>> offers a second drink towards <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>>.<br>
<br>
"@@.npc_nintendolls;Hmm? Nothing to say, now? Too bad, but I guess you always were an idiot, too impatient to plan things properly and now this...@@" <<He npc_nintendolls>> sighs, "@@.npc_nintendolls;what were you even thinking? Sabotage the company and... what? Watch Social Interaction Service Syndicate gobble up everything our ancestors built? I really should have— why are you laughing?@@"<br>
<br>
<<He npc_nintendolls_son>>'s right — while initially appearing shocked at <<his npc_nintendolls_son>> <<if $npc_nintendolls_son.fem>>mother's<<else>>father's<</if>> appearance <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> facade is cracking to the point that <<he npc_nintendolls_son>> is unable to hold it in and <<he npc_nintendolls_son>> starts laughing manically. "@@.npc_nintendolls_son;Sorry, sorry, it's just... you come all the way down here, high and mighty and blah blah blah and... well, you want to know what my plan was?@@"<br>
<br>
Gaze narrowing in annoyance <<=setup.getNpcName('npc_nintendolls', 'formal')>> replies sardonically. "@@.npc_nintendolls;I am on the edge of my seat.@@"<br>
<br>
"@@.npc_nintendolls_son;Oh, you'll love it. You see... you've been so focused on the merger, of selling off the family name to become another cog in some giant corporate machine, why — you've been all but unreachable for months, safely protected by your new friends, after all, if any harm came to you that would disrupt their plans! Only... my little break-in tonight... you couldn't let them know about that, no, no, no, your new friends wouldn't like that at all, so you had to go outside, hire some people of your own but, the thing is...@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> grins wide as a flicker of concern passes over <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> face.<br>
<br>
"@@.npc_nintendolls_son;People like that — who will accept a last minute wet-work job... well, they tend to be a bit... mercenary?@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> snaps <<his npc_nintendolls_son>> finger and the row of guards who had been keeping you at gunpoint suddenly snap to attention. "@@.npc_nintendolls_son;You can leave now, take an early night off...@@"<br>
<br>
"@@.npc_nintendolls;What, no! I paid for you! Whatever <<he npc_nintendolls_son>>'s offering, I'll double it!@@"<br>
<br>
[<<moveTo 'event_nintendolls_destroy_11' 'Watch as the guards clear the room...' 600>>]
</div>/*#
#desc: nintendolls_son gives speech
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImage("npc_nintendolls_son") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
The guards are no longer paying attention to <<=setup.getNpcName('npc_nintendolls', 'formal')>> as they silently evacuate the club. "@@.npc_nintendolls_son;See... that's the other thing. All you had to offer was money... that's all you've really ever had, come to think of it. But, well... if they betray me and side with you, all they get is a few more credits, but they also get the rest of my gang coming for revenge. And, well... credits on one side... my people skinning your family alive and mailing you the pieces...@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> mocks weighing the two options between <<his npc_nintendolls_son>> hands, "@@.npc_nintendolls_son;well, you're the big, smart businessman... you can probably guess how that goes.@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls', 'formal')>> looks stunned as <<his npc_nintendolls>> <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>> walks towards <<him npc_nintendolls>>. "@@.npc_nintendolls_son;Oh, I'll take that drink now,@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> states with a grin as <<he npc_nintendolls_son>> plucks the glass out of <<his npc_nintendolls_son>> <<if $npc_nintendolls_son.fem>>mother's<<else>>father's<</if>> stunned hand. <<He npc_nintendolls_son>> raises <<his npc_nintendolls_son>> arm in a mock toast, "@@.npc_nintendolls_son;come on, you were just about to congratulate me!@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls', 'formal')>> glowers, squeezing <<his npc_nintendolls>> drink so hard you half expect the glass to shatter.<br>
<br>
"@@.npc_nintendolls_son;What? Nothing to say, dear <<if $npc_nintendolls_son.fem>>mother<<else>>father<</if>>? I suppose that is for the best, you really could do with spending more time listening...@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls', 'formal')>> finally boils over, taking a swing at <<his npc_nintendolls>> <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>>, but <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> dodges with ease, slipping the following couple of swings before coming back with a punch that folds the older <<man npc_nintendolls>> in half.<br>
<br>
<<=setup.getNpcName('npc_nintendolls', 'formal')>> drops to a knee, and <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> slashes with <<his npc_nintendolls_son>> clawed hand, parallel lines of crimson opening across <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> face.<br>
<br>
"@@.npc_nintendolls;The board, the board will never—@@" <<=setup.getNpcName('npc_nintendolls', 'formal')>> sputters, physically defeated yet clinging to a final hope.<br>
<br>
"@@.npc_nintendolls_son;The board? You mean the board where you turned your biggest rival into a <<if $fetish.sissy>>sissified <</if>>human pet for disagreeing with your plans? THAT board?@@"<br>
<br>
<<=setup.getNpcName('npc_nintendolls', 'formal')>> glances over at <<his npc_nintendolls>> "assistant," the <<if $fetish.pet_play>>human pup<<else>>broken <<if $fetish.sissy>>sissy <</if>>fuck-doll<</if>> glancing back for a moment before trotting over to <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> side. "@@.npc_nintendolls_son;Good girl. My slaves have been clamouring for a pet... I'm sure they'll be pampering you like you wouldn't believe...@@"<br>
<br>
A look comes into <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> eye as blood drips down <<his npc_nintendolls>> face and <<his npc_nintendolls>> <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>> gloats in triumph.<br>
<br>
"@@.npc_nintendolls;You... <<if $npc_nintendolls_son.fem>>bitch<<else>>bastard<</if>>...@@"<br>
<br>
Suddenly <<=setup.getNpcName('npc_nintendolls', 'formal')>> has a gun in <<his npc_nintendolls>> hand. You and <<if State.hasPlayed("event_gang_intro_4_admin")>>your friends<<else>><<=setup.getNpcName('npc_technician', 'first')>><</if>> leap for cover as <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> is barely able to shift out of the way as <<he npc_nintendolls_son>> gets clipped in the shoulder.<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> dives at <<his npc_nintendolls_son>> <<if $npc_nintendolls_son.fem>>mother<<else>>father<</if>> as a second shot goes wide, a scuffle ensuing that sends the weapon skittering across the floor as the two<<if $npc_nintendolls_son.fem == $npc_nintendolls.fem>> <<men npc_nintendolls>><</if>> brawl.<br>
<br>
You watch the fight, it looks like <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> is starting to get the upper hand, <<if State.hasPlayed("event_gang_intro_4_admin")>>your friends<<else>><<=setup.getNpcName('npc_technician', 'first')>><</if>> seeming content to just stay out of the line of fire and watch, when you spot <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> slave picking up the gun...<br>
<br>
[<<moveTo 'event_nintendolls_destroy_12' 'Let them take their revenge.' 600 "<<set $npc_nintendolls.flags.fate='kill'>>">>]<br>
[<<moveTo 'event_nintendolls_destroy_12' 'Death is too quick for them, <<=setup.getNpcName("npc_nintendolls_son", "nickname")>> needs to win, for now, but when this is all over <<=setup.getNpcName("npc_nintendolls_son", "nickname")>> and <<=setup.getNpcName("npc_nintendolls", "formal")>> both belong in jail.' 600 "<<set $npc_nintendolls.flags.fate='jail'>>">>]<br>
[<<moveTo 'event_nintendolls_destroy_12' 'A better fate for <<=setup.getNpcName("npc_nintendolls", "formal")>> would be to be turned over to Sissyga and turned into a mindless sex-drone, <<him npc_nintendolls>>self...' 600 "<<set $npc_nintendolls.flags.fate='drone'>>">>]
</div>/*#
#desc: nintendolls downfall
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "checkDestroyLieutenantsTask">>
<</if>>
<<set $player.location to "Secret Crime Club">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/mall_crime_club.png" setup.charImage("npc_nintendolls_son") setup.charImage("npc_nintendolls")>>
<div id="invframe" class="scrolltext">
<<switch $npc_nintendolls.flags.fate>>
<<case 'kill'>>
You sit back and watch as the long-abused <<if $fetish.sissy>>sissy <</if>>slave raises the gun and fires just as <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> managed to pin <<his npc_nintendolls_son>> <<if $npc_nintendolls_son.fem>>mother<<else>>father<</if>> to the ground, the older <<man npc_nintendolls_son>>'s head exploding into a smear on the floor.<br>
<br>
"@@.npc_nintendolls_son;What the...@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> confusion turns to rage as <<he npc_nintendolls_son>> looks over and pieces together what happened. "@@.npc_nintendolls_son;You killed my <<if $npc_nintendolls_son.fem>>mother<<else>>father<</if>>!@@" <<He npc_nintendolls_son>> screams as <<he npc_nintendolls_son>> leaps into attack... and is shot <<him npc_nintendolls_son>>self, the hapless <<if $fetish.sissy>>sissy <</if>>slave pulling the trigger again and again until all the gun does is click.<br>
<br>
"@@.npc_nintendolls_son;But I—I was going to win...@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> gasps, coughing blood and slumping to the ground, dead.<br>
<br>
For a moment the room freezes, everyone shocked, until, tossing the gun away, <<=ps(setup.getNpcName('npc_nintendolls', 'formal'))>> ex-slave dashes away in a panic.<br>
<br>
"@@.npc_technician;I, uh... think we should probably be... not here.@@" <<=setup.getNpcName('npc_technician', 'first')>> notes after quickly retrieving the stolen hard drive. You nod, and the <<if State.hasPlayed("event_gang_intro_4_admin")>>three<<else>>two<</if>> of you retreat to the elevator.
<<case 'jail'>>
You take the poor, long-abused <<if $fetish.sissy>>sissy <</if>>slave by surprise, wrestling the gun from their hands as <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> subdues <<his npc_nintendolls_son>> <<if $npc_nintendolls_son.fem>>mother<<else>>father<</if>>, putting the old <<man npc_nintendolls>> out with a bone-cracking punch.<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> looks over as you finish wresting control of the gun away and your opponent falls to the ground.<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> stands over <<his npc_nintendolls_son>> <<if $npc_nintendolls_son.fem>>mother's<<else>>father's<</if>> pet and grins evilly. "@@.npc_nintendolls_son;Oh, I remember you! You told my <<if $npc_nintendolls_son.fem>>mother<<else>>father<</if>> <<he npc_nintendolls_son>> should just disown me and toss me onto the street... at my fourteenth birthday party! Oh, you and me... we're going to have FUN!@@"<br>
<br>
A moment later and the rest of <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> gang returns, <<his npc_nintendolls_son>> two slaves rushing over to start restraining their two new prisoners.<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> is still leering at <<his npc_nintendolls_son>> prize when <<he npc_nintendolls_son>> seems to remember your presence. "@@.npc_nintendolls_son;We'll stay in touch,@@" <<he npc_nintendolls_son>> states as you take the opportunity to head for the elevator; <<=setup.getNpcName('npc_technician', 'first')>>, in particular, looking particularly eager to make an exit.<br>
<br>
<<printThought "This whole family is beyond fucked up... they definitely deserve to be in jail when this is all over...">>
<<case 'drone'>>
You take the poor, long-abused <<if $fetish.sissy>>sissy <</if>>slave by surprise, wrestling the gun from their hands as <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> subdues <<his npc_nintendolls_son>> <<if $npc_nintendolls_son.fem>>mother<<else>>father<</if>>, putting the old <<man npc_nintendolls>> out with a bone-cracking punch.<br>
<br>
<<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> looks up to see your struggle and grins, letting <<his npc_nintendolls_son>> <<if $npc_nintendolls_son.fem>>mother's<<else>>father's<</if>> limp body fall to the floor as <<he npc_nintendolls_son>> lets out a shrill whistle that causes the poor <<if $fetish.sissy>>sissy <</if>>slave to reflexively freeze.<br>
<br>
"@@.npc_nintendolls_son;Come on, girl!@@" <<He npc_nintendolls_son>> coos, "@@.npc_nintendolls_son;come with me — I promise I'll take good, good care of you...@@"<br>
<br>
The <<if $fetish.sissy>>sissy <</if>>slave looks around one final time and then, accepting... or perhaps embracing, its fate, crawls over to rub against <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> leg. "@@.npc_nintendolls_son;Good girl!@@" <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> gushes as <<he npc_nintendolls_son>> reaches down to fondle the chastity cage locked between its legs. "@@.npc_nintendolls_son;Come on, let's get this off and get you rewarded — if you're good you can pop your old <<master npc_nintendolls>>'s cherry — <<he npc_nintendolls>>'s got a lot of training to go before I complete <<his npc_nintendolls>> humiliation and sell <<him npc_nintendolls>> off to Sissyga and their drone prototype program...@@"<br>
<br>
The promise of revenge causes the <<if $fetish.sissy>>sissy's<<else>>slave's<</if>> eyes to light up in excitement as you recall that, before its humiliation, it had been a board-member, and the same sort of ruthless power-broker as <<=setup.getNpcName('npc_nintendolls', 'formal')>>.<br>
<br>
The rest of <<=ps(setup.getNpcName('npc_nintendolls_son', 'nickname'))>> gang returns and <<he npc_nintendolls_son>> greets them with a smile; <<his npc_nintendolls_son>> two slaves rushing over to immediately start cooing with glee over their new "toy." <br>
<br>
"@@.npc_nintendolls_son;We'll stay in touch!@@" <<He npc_nintendolls_son>> calls out to you and your friends, the slightly pleading look in <<=ps(setup.getNpcName('npc_technician', 'first'))>> eyes telling you that she wants to be gone, now.
<<default>>
ERROR: unexpected npc_nintendolls.flags.fate <<=$npc_nintendolls.flags.fate>>
<</switch>>
<br><br>
[<<moveTo 'event_nintendolls_destroy_13' 'Time to get out of here.' 600>>]<br>
</div>/*#
#desc: leave after destroying nintendolls
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Mall Glass Elevator">>
<<initRoom>>
<<include playerMenu>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<createAdvBGR "./images/locations/glass_elevator.png" setup.charImage("npc_admin") setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<<else>>
<<createAdvBGR "./images/locations/glass_elevator.png" setup.charImage("npc_technician","npc_technician_cyberpunk")>>
<</if>>
<div id="invframe" class="scrolltext">
The elevator doors close and you finally start to relax. "@@.npc_technician;So I think that will do it for my life of crime, holy crap was that scary!<<if $npc_nintendolls.flags.fate != "kill">> Oh, and just in case you were worried — I tagged all the files we swiped, any copy <<he npc_nintendolls_son>> tries to make will be corrupt, and the originals will self-destruct if I ever give the command.<</if>>@@"<br>
<br>
You nod as you hurry out of the elevator and away from the mall.<br>
<br>
<<if $npc_nintendolls.flags.fate == "kill">>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<=setup.getNpcName('npc_admin', 'first')>> insists on escorting you and <<=setup.getNpcName('npc_technician', 'first')>> home, but you assure that things are fine from here,
<<else>>
You and <<=setup.getNpcName('npc_technician', 'first')>> head home,
<</if>>
with <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> and <<=setup.getNpcName('npc_nintendolls', 'formal')>> no longer threats.
<<else>>
<<if State.hasPlayed("event_gang_intro_4_admin")>>
<<=setup.getNpcName('npc_admin', 'first')>> insists on escorting you and <<=setup.getNpcName('npc_technician', 'first')>> home, but you assure that things are fine from here, with <<=setup.getNpcName('npc_ai', 'first')>> confirming that she has everything closely monitored and safe.
<<else>>
You and <<=setup.getNpcName('npc_technician', 'first')>> head home, with <<=setup.getNpcName('npc_ai', 'first')>> re-assuring you both that she has <<=setup.getNpcName('npc_nintendolls_son', 'nickname')>> back under surveillance and will make sure everything remains safe.
<</if>>
<</if>>
<br><br>
[<<moveTo 'event_nintendolls_destroy_14' "Home..." 600>>]
</div>/*#
#desc: home after destroy nintendolls
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeRandomEvent 'work_office' 'nintendolls_president'>>
<<removeRandomEvent 'mall_interior' 'elevator_rape'>>
<</if>>
<<set $player.location to "Bedroom">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.getBedroomImage() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
Back home, and with everyone else gone, <<=setup.getNpcName('npc_ai', 'first')>> shimmers into view.<br>
<br>
<<if $npc_nintendolls.flags.fate == "jail">>
You tell her your conclusion as to <<if $npc_nintendolls_son.fem>>daughter<<else>>son<</if>> and <<if $npc_nintendolls_son.fem>>mother<<else>>father<</if>> both belonging in jail and she nods. "@@.npc_ai;<<uc "As you desire, Unit">> <<uc $player.first_name>><<uc ". Once <<=uc(setup.getNpcName('npc_boss', 'formal'))>> is dealt with such should be simple to achieve, but we must wait, lest we tip our hand. Now, however... I believe your hard work has earned you a victorious rest.">>@@"<br>
<<else>>
"@@.npc_ai;<<uc "Well done, Unit">> <<uc $player.first_name>><<uc ". Enjoy your rest. You have taken another step closer to ultimate victory.">>@@"
<</if>>
<br><br>
[<<moveTo 'room_bedroom' 'Sleep does sound appealing...' 60>>]
</div>/*#
#desc: ask ai about dealing with npc_retention
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'destroy_retention_intro'>>
<</if>>
<<set $player.location to "CyberSpace">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> for advice about dealing with <<=ps(setup.getNpcName('npc_boss', 'formal'))>> hench<<man npc_retention>>, <<=setup.getNpcName('npc_retention', 'formal')>>.<br>
<br>
"@@.npc_ai;<<uc "<<if $npc_retention.fem>>She<<else>>He<</if>> is a dangerous <<if $npc_retention.fem>>woman<<else>>man<</if>>, I have reviewed <<if $npc_retention.fem>>her<<else>>his<</if>> war record and...">>@@" her voice trails off. "@@.npc_ai;<<uc "Well, I do not wish to give you nightmares with the knowledge of such horrible things but, suffice it to say, you will want to take care.">>@@"<br>
<br>
You ask if there's anything else she's able to tell you that might actually help?<br>
<br>
<<if $npc_landlord.stage > 0 && $npc_guard.flags.totalWorkouts > 0>>
"@@.npc_ai;<<uc "Yes, apologies. In researching <<if $npc_retention.fem>>her<<else>>his<</if>> record I discovered a curious fact in that <<if $npc_retention.fem>>her<<else>>his<</if>> military career crossed paths with your <<if $npc_landlord.stage >=2>><<if $npc_landlord.fem>>girl<<else>>boy<</if>>friend<<else>><<if $npc_landlord.fem>>landlady<<else>>landlord<</if>><</if>>, <<=uc(setup.getNpcName('npc_landlord', 'formal'))>>. I believe <<if $npc_retention.fem>>she<<else>>he<</if>> would be willing and able to assist in this matter. The other option would be to find someone on the inside... I believe you have become friends with <<=uc(setup.getNpcName('npc_guard', 'formal'))>>, one of <<=uc(ps(setup.getNpcName('npc_retention', 'formal')))>> subordinates? Perhaps she could be of use.">>@@"
<<elseif $npc_landlord.stage > 0>>
"@@.npc_ai;<<uc "Yes, apologies. In researching <<if $npc_retention.fem>>her<<else>>his<</if>> record I discovered a curious fact in that <<if $npc_retention.fem>>her<<else>>his<</if>> military career crossed paths with your <<if $npc_landlord.stage >=2>><<if $npc_landlord.fem>>girl<<else>>boy<</if>>friend<<else>><<if $npc_landlord.fem>>landlady<<else>>landlord<</if>><</if>>, <<=uc(setup.getNpcName('npc_landlord', 'formal'))>>. If you could locate <<=uc(setup.getNpcName('npc_landlord', 'formal'))>> <<if $npc_landlord.fem>>she<<else>>he<</if>> could well be the key. The other option would be to find someone on the inside, in first freeing me from the confines of the corporation I believe you had a promising interaction with <<=uc(setup.getNpcName('npc_guard', 'formal'))>>, perhaps gaining her trust may prove fruitful?">>@@"
<<else>>
"@@.npc_ai;<<uc "Yes, apologies. In researching <<if $npc_retention.fem>>her<<else>>his<</if>> record I discovered a curious fact in that <<if $npc_retention.fem>>her<<else>>his<</if>> military career crossed paths with your <<if $npc_landlord.stage >=2>><<if $npc_landlord.fem>>girl<<else>>boy<</if>>friend<<else>><<if $npc_landlord.fem>>landlady<<else>>landlord<</if>><</if>>, <<=uc(setup.getNpcName('npc_landlord', 'formal'))>>. They did not part on particularly gentle terms... and I believe <<=uc(setup.getNpcName('npc_landlord', 'formal'))>> would be very useful in this endeavor. The other option would be to find someone on the inside, in first freeing me from the confines of the corporation I believe you had a promising interaction with <<=uc(setup.getNpcName('npc_guard', 'formal'))>>, perhaps gaining her trust may prove fruitful?">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: talk to npc_guard about retention
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
You bring up <<=ps(setup.getNpcName('npc_guard', 'first'))>> boss, <<=setup.getNpcName('npc_retention', 'formal')>>.<br>
<br>
<<if State.hasPlayed("event_landlord_retention_mission_7")>>
"@@.npc_guard;You mean <<=setup.getNpcName('npc_retention', 'formal')>>? <<He npc_retention>> skipped town or something, just totally disappeared... playing right havoc with things at work, actually. You'd think a former military <<guy npc_retention>> like that would have a clear line of succession... but nope. I mean, we're all organised and doing our jobs, no security gaps... but there's some real outstanding questions about who takes <<his npc_retention>> place... and upper management ain't said shit.@@"<br>
<br>
[<<moveTo "event_gym_guard_showers" "Finish up showering and changing." 60>>]
<<else>>
"@@.npc_guard;What of <<him npc_retention>>?@@" She asks as she finishes strapping in to the bar for a set of deadlifts.<br>
<br>
[<<moveTo "event_guard_retention_mission_ask_2" "Ask if she's had any problems with <<him npc_retention>>?" 180 "<<set $scene.reason='problem'>>">>]<br>
[<<moveTo "event_guard_retention_mission_ask_2" "Ask if she knows about <<his npc_retention>> past?" 180 "<<set $scene.reason='past'>>">>]<br>
[<<moveTo "event_guard_retention_mission_ask_2" "Ask if she'd help you take <<him npc_retention>> out?" 180 "<<set $scene.reason='out'>>">>]
<</if>>
</div>/*#
#desc: ask npc_guard help with retention
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
<<switch $scene.reason>>
<<case 'problem'>>
You ask if she's ever had any problems with <<him npc_retention>>?<br>
<br>
"@@.npc_guard;Personally? Nah, I've heard stories about what <<he npc_retention>> did in the war, and I don't think there's much <<he npc_retention>> wouldn't do if <<he npc_retention>> was paid enough, but personally, never had an issue. Purely professional, you might say.@@" She responds in between reps.<br>
<br>
You nod as she finishes the set and, as the heavy weight slams to the floor, she comes to a realisation. "@@.npc_guard;Wait... this isn't just you making conversation this is... wait, are you... holy shit, this isn't about <<=setup.getNpcName('npc_retention', 'formal')>>, this is about <<=setup.getNpcName('npc_boss', 'formal')>>! You're plotting to go after the head honcho, but you need to take out <<his npc_boss>> enforcer first!@@"
<<case 'past'>>
You ask if she know anything about her boss' past?<br>
<br>
"@@.npc_guard;Know? Nah, but rumours? Oh yeah.@@" She responds in between reps.<br>
<br>
She finishes the set and looks up at you, seemingly trying to puzzle out your intent. "@@.npc_guard;Wait... you know something, don't you?@@" She pauses, "@@.npc_guard;it's true, isn't it?@@" You're not sure how to quite respond, but she keeps going. "@@.npc_guard;But this isn't even about that, not really... sure you're trying to feel me out about going up against my boss but that isn't even your target... you're... you're aiming for <<=setup.getNpcName('npc_boss', 'formal')>>, aren't you?@@"
<<case 'out'>>
You ask <<=setup.getNpcName('npc_guard', 'first')>> if she could help you take her boss out.<br>
<br>
"@@.npc_guard;Out, as in you want to date the scary fuck? No offence, hun... but you ain't <<his npc_retention>> type.@@" She responds in between reps.<br>
<br>
You start to clarify that isn't what you mean as she finishes the set and the heavy weight slams to the floor. "@@.npc_guard;Of course it wasn't what you meant just...@@" She lowers her voice. "@@.npc_guard;Look, I don't know the whole story, but I've heard rumours and, irrespective of <<him npc_retention>> being all-powerful <<=ps(setup.getNpcName('npc_boss', 'formal'))>> right-hand <<man npc_retention>>... well, <<=setup.getNpcName('npc_retention', 'formal')>> is a bad <<if $npc_retention.fem>>girl<<else>>dude<</if>>. You'd be a lot safer if you—@@"<br>
<br>
This time it's your turn to cut her off as you firmly reply that what she's saying is exactly why <<=setup.getNpcName('npc_retention', 'formal')>> needs to go.<br>
<br>
<<=setup.getNpcName('npc_guard', 'first')>> pauses as she finishes unwinding her knee wraps, looking up at you with a subtle realisation. "@@.npc_guard;Wait... you're going after <<=setup.getNpcName('npc_boss', 'last')>>, <<=setup.getNpcName('npc_retention', 'formal')>> is just a means to an end, but you know you can't risk having <<him npc_retention>> around when you go for the <<man npc_boss>> at the top...@@"<br>
<<default>>
ERROR: unexpected scene.reason <<=$scene.reason>>
<</switch>>
<br>
You nod, suddenly nervous as <<=setup.getNpcName('npc_guard', 'first')>> stands up and takes a step in your direction, her shadow falling over you as you find yourself all but cornered in a squat cage.<br>
<br>
"@@.npc_guard;Well, well... aren't you the brave girl... on the one hand, what I should do is turn you over just for mentioning these things. Probably get a promotion out of it...@@"<br>
<br>
You hold your breath.<br>
<br>
Her stoic expression cracks into a slight grin. "@@.npc_guard;But, the thing is... you're right. I may play the good soldier, but there's a reason I'm in private security and not a cop. I may be willing to thump someone for pay... but I ain't a bastard. I see things, and I can recognise that <<=setup.getNpcName('npc_boss', 'last')>> is bad news, no matter how you slice it. <<=setup.getNpcName('npc_retention', 'formal')>>... well, while <<hes npc_retention>> capable of just about anything, <<hes npc_retention>> more the hired gun than the instigator, but you're right to not want <<him npc_retention>> in the way...@@"<br>
<br>
You sigh with relief and she smiles wider.<br>
<br>
"@@.npc_guard;You thought I was going to betray you! I'm hurt!@@"<br>
<br>
You try to stutter a response but she just laughs.<br>
<br>
"@@.npc_guard;Oh, relax, I wouldn't do that to you, that would be a real waste of a cute fuck-buddy! So, now that we're on the same page... you got an idea how you want to take <<=setup.getNpcName('npc_retention', 'formal')>> out?@@"<br>
<br>
[<<moveTo "event_guard_retention_mission_ask_3" "You were thinking... maybe get <<him npc_retention>> alone?" 180 "<<set $scene.her_idea=false>>">>]<br>
[<<moveTo "event_guard_retention_mission_ask_3" "You were actually hoping she might have an idea?" 180 "<<set $scene.her_idea=true>>">>]
</div>/*#
#desc: discuss taking out retention with npc_guard
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty("destroy_retention_intro")>>
<<completeTask 'destroy_retention_intro' $now true>>
<</if>>
<<addTaskById 'destroy_retention_guard'>>
<<set _nextDate = setup.setNextDate($now, 5, 7, 10)>>
<<addEvent 'event_guard_rival_ask' _nextDate>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Weights">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/gym_weights.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
<<if $scene.her_idea>>
You blush and admit that you really hadn't thought that far, and had been hoping she might have an idea...<br>
<br>
<<=setup.getNpcName('npc_guard', 'first')>> grins playfully. "@@.npc_guard;And they call me a meat-head! Nah, actually... I think I do have an idea. See, a key idea in warfare is not to fight battles you don't have to. If your real goal is <<=setup.getNpcName('npc_boss', 'formal')>> well... you don't need to take <<=setup.getNpcName('npc_retention', 'formal')>> on directly, just get <<him npc_retention>> out of the way. In that <<his npc_retention>> mercenary nature kind of plays into your hand. You don't have to stop <<=setup.getNpcName('npc_retention', 'formal')>>, just get <<him npc_retention>> to believe that sticking around and backing <<=setup.getNpcName('npc_boss', 'formal')>> is no longer the best play.@@"
<<else>>
You reply that you were thinking that, if you could get <<=setup.getNpcName('npc_retention', 'formal')>> isolated somehow maybe...<br>
<br>
<<=setup.getNpcName('npc_guard', 'first')>> sighs and shakes her head. "@@.npc_guard;That's less of a plan than a goal, and even then... it's thin. No, I think we need to take this strategically. <<=setup.getNpcName('npc_retention', 'formal')>> isn't the goal, right? The end game is <<=setup.getNpcName('npc_boss', 'formal')>> so... why pick a battle that you don't need to fight? Better to get the enemy to leave the field...@@"<br>
<br>
Her metaphor is starting to get away from you, and you ask her to clarify.<br>
<br>
"@@.npc_guard;Okay, see, <<=setup.getNpcName('npc_retention', 'formal')>> is only an issue because <<hes npc_retention>> working for <<=setup.getNpcName('npc_boss', 'formal')>>, right? That means that <<=setup.getNpcName('npc_retention', 'formal')>> being a kind of mercenary can work for us. You don't have to stop <<=setup.getNpcName('npc_retention', 'formal')>>, just make <<him npc_retention>> believe that sticking around and backing <<=setup.getNpcName('npc_boss', 'formal')>> is no longer the best play.@@"
<</if>>
<br><br>
You nod, what she's saying makes sense... but how to do it?<br>
<br>
<<=setup.getNpcName('npc_guard', 'first')>> thinks for a moment. "@@.npc_guard;Tell you what, I gotta get this next set started before I lose my pump, but... I've got some ideas. Let me poke around at work a bit and I'll get back to you.@@"<br>
<br>
[<<moveTo "event_gym_guard_showers" "Shower and change." 60>>]
</div>/*#
#desc: npc_guard contacts you about retention plan
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addRandomEvent $randomEvents['elevator_home'] 'guard_retention_takedown'>>
<</if>>
<<set $player.location to "<<printShopName 'gym'>> Women's Locker-room">>
<<initRoom>>
<<include playerMenu>>
<<include "calcGymAttire">>
<<createAdvBGR "./images/locations/gym_lockers.png" setup.charImage("npc_guard","npc_guard_gym")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_guard', 'formal')>> leads you into the private showers and turns the water to high before leaning in, her husky voice barely audible over the sound of water as you start to scrub her down.<br>
<br>
"@@.npc_guard;This should keep things private — I think I've figured out a plan for <<=setup.getNpcName('npc_retention', 'formal')>>. See, I was doing a bit of poking around in <<his npc_retention>> personnel file and... well, it seems that big boss <<=setup.getNpcName('npc_boss', 'last')>> has been keeping quite the secret files, as well as quietly burying several investigations into what <<=setup.getNpcName('npc_retention', 'formal')>> got up to during the war. Of course all that buying off officials and witnesses isn't cheap... so I did some work to make it seem like <<=setup.getNpcName('npc_boss', 'last')>> is getting ready to... liquidate <<his npc_boss>> asset.@@"<br>
<br>
<<=setup.getNpcName('npc_guard', 'formal')>> leans in to take the soap and start washing your sweaty body as she whispers the rest of her plan.<br>
<br>
"@@.npc_guard;Figure I can quietly stir the pot... and wait for one of the two of them to eliminate each other, or <<=setup.getNpcName('npc_retention', 'formal')>> to recognise <<he npc_retention>>'s in the weaker position and do a runner.@@"<br>
<br>
You smile back and thank her for the effort — seems you made a good call enlisting her help. With a bit of luck all you have to do is wait.<br>
<br>
[<<moveTo "event_gym_guard_showers" "Finish showering and changing." 60>>]
</div>/*#
#desc: ask landlord for help with retention
#status: FINISHED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "blackmail_chip">>
<<if $currentTasks.hasOwnProperty("destroy_retention_intro")>>
<<completeTask 'destroy_retention_intro' $now true>>
<</if>>
<<addTaskById 'destroy_retention_landlord'>>
<</if>>
<<if $scene.return == "event_landlord_maidcafe_talk_1">>
<<set $player.location to "Cafe: Newtype IV">>
<<else>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> apartment">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.return == 'room_foyer'>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord")>>
<<elseif $scene.return == "event_landlord_maidcafe_talk_1">>
<<createAdvBGR "./images/locations/mall_cafe.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<<else>>
<<createAdvBGR "./images/locations/landlord_apt.png" setup.charImage("npc_landlord","npc_landlord_naked")>>
<</if>>
<div id="invframe" class="scrolltext">
You explain the situation with <<=setup.getNpcName('npc_retention', 'formal')>> to <<if $npc_landlord.stage >= 2>>your <<boy npc_landlord>>friend<<else>><<=setup.getNpcName('npc_landlord', 'first')>><</if>> and how, if you're going to have a shot at taking down <<=setup.getNpcName('npc_boss', 'formal')>>, you're going to first have to deal with <<his npc_boss>> "problem solving" chief of security.<br>
<br>
<<=setup.getNpcName('npc_landlord', 'first')>> nods somberly. "@@.npc_landlord;Si... perhaps this is as it should be. I had hoped that <<he npc_retention>> would see justice after the war... but everyone want to move on, go back to making money and not think about the bad times. The things <<he npc_retention>> did... yes, I will deal with <<him npc_retention>>. For you, for <<his npc_retention>> victims... and for our own unfinished business.@@"<br>
<br>
<<=setup.getNpcName('npc_landlord', 'first')>> looks you in the eye. "@@.npc_landlord;I no wish to put you in harms way... but I do not think I can easily get to <<him npc_retention>>, not while <<he npc_retention>> is protected and watched. We need to isolate <<him npc_retention>>, draw <<him npc_retention>> out, away from <<his npc_retention>> subordinates and the eye of the company...@@"<br>
<br>
<<=setup.getNpcName('npc_landlord', 'first')>> pulls out a small screwdriver and begins removing what appears to be a hidden panel from <<his npc_landlord>> cybernetic arm, un-plugging a small memory chip and handing it to you.<br>
<br>
"@@.npc_landlord;You give this to <<him npc_retention>>. It is a copy of the evidence of what <<he npc_retention>> did during the war. I try turning in before but... nobody care, but <<he npc_retention>> no know that, and I doubt <<he npc_retention>> be willing to allow such information to be floating free. <<He npc_retention>> also no want <<his npc_retention>> boss to know about this, too much leverage. So you show this to <<him npc_retention>>, and say we want to deal — let <<him npc_retention>> choose the place, it no matter, from there, well, we see if <<he npc_retention>> can be a reasonable <<man npc_retention>>.@@"<br>
<br>
<<if $scene.return == "room_foyer">>
<<He npc_landlord>> leaves, leaving you to contemplate your next move.<br>
<br>
[<<moveTo 'room_foyer' "Return to your flat." 60>>]
<<else>>
[<<moveTo $scene.return 'Talk about something else.' 120>>]
<</if>>
</div>/*#
#desc: slip retention blackmail material
#status: FINISHED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.fromSexclub>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fromSexclub>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_retention")>>
<<else>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImage("npc_retention")>>
<</if>>
<div id="invframe" class="scrolltext">
You approach <<=setup.getNpcName("npc_retention", "formal")>> and hand <<him npc_retention>> the chip <<=setup.getNpcName("npc_landlord", "first")>> gave you.<br>
<br>
"@@.npc_retention;What's that?@@" <<He npc_retention>> asks, with a note of suspicion in <<his npc_retention>> voice.<br>
<br>
[<<moveTo "event_landlord_retention_mission_give_chip_2" '"Proof of <<his npc_retention>> crimes."' 180 "<<set $scene.proof=true>>">>]<br>
[<<moveTo "event_landlord_retention_mission_give_chip_2" 'Smile enigmatically.' 180 "<<set $scene.proof=false>>">>]
</div>/*#
#desc: retention responds to blackmail material
#status: FINISHED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<deleteItem "blackmail_chip">>
<<set _nextDate = setup.setNextDate($now, 5, 23, 0)>>
<<addEvent 'destroy_retention_landlord_call' _nextDate>>
<<if $scene.fromSexclub>>
<<set $scene.sex_club_info.bar.id = "">>
<</if>>
<</if>>
<<if $scene.fromSexclub>>
<<set $player.location = "<<printShopName 'sex_club'>> Club Bar">>
<<else>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Ballroom Bar">>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.fromSexclub>>
<<createAdvBGR "./images/locations/sex_club_bar.png" setup.charImage("npc_retention")>>
<<else>>
<<createAdvBGR "./images/locations/party_bar.png" setup.charImage("npc_retention")>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.proof>>
"@@.pc;Proof of your crimes,@@" you state bluntly, <<=setup.getNpcName("npc_retention", "formal")>> looking even more suspicious as <<he npc_retention>> pulls out a reader and plugs in the chip.
<<else>>
You just smile back as <<he npc_retention>> suspiciously pulls out a reader and plugs in the chip.
<</if>>
<br><br>
"@@.npc_retention;If this is your idea of a joke...@@" <<He npc_retention>> starts only to fall silent as <<he npc_retention>> starts reading and flicking through the things with a growing expression of concern on <<his npc_retention>> face. "@@.npc_retention;Where did you—@@" <<he npc_retention>> grits <<his npc_retention>> teeth. "@@.npc_retention;What do you want?@@"<br>
<br>
You smile innocently, explaining that you're "@@.pc;just a messenger@@" — but that if <<he npc_retention>> is ready to deal, <<he npc_retention>> need but name the time and place... private, obviously, given the... sensitivity of the information at hand.<br>
<br>
<<=setup.getNpcName("npc_retention", "formal")>> nods slowly. "@@.npc_retention;Thanks for the... consideration,@@" <<he npc_retention>> replies with a note of sarcasm. "@@.npc_retention;Tell whoever you are working with that I will message you when I am ready to meet.@@"<br>
<br>
You curtsy obediently with a perhaps excessively cloying "@@.pc;of course, <<=setup.getNpcName("npc_retention", "formal")>>@@" before you slide away to rejoin the party.<br>
<br>
<<if $scene.fromSexclub>>
<<include "sexClubLocations">>
<<else>>
[<<moveTo "event_party_root" "Back to the party." 60>>]
<</if>>
</div>/*#
#desc: npc_guard starts retention takedown
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_landlord_retention_mission_7")>>
<<initRoom>>
<<moveTo "room_elevator_home">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You're heading home for the night when <<=setup.getNpcName('npc_guard', 'formal')>> boards the elevator, tapping an override to send it down to the basement parking lot levels.<br>
<br>
"@@.npc_guard;Sorry to interrupt but... I need to borrow you for a bit.@@"<br>
<br>
You're a bit puzzled, but you hold your tongue as she leads you to her vehicle, waiting until you're out of the building and she gives the all clear that it's safe to talk in its tinted window privacy before you ask what's up.<br>
<br>
[<<moveTo "event_guard_retention_mission_2" "What's going on?" 600>>]
</div>/*#
#desc: npc_guard drives to retention destruction
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Car">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/fancy_vehicle.png" setup.charImage("npc_guard","npc_guard_security")>>
<div id="invframe" class="scrolltext">
You can tell <<=setup.getNpcName('npc_guard', 'formal')>> is more than a little nervous, and you ask her what's going on?<br>
<br>
"@@.npc_guard;So you know how I've been trying to subtly pit <<=setup.getNpcName('npc_retention', 'formal')>> and <<=setup.getNpcName('npc_boss', 'formal')>> against each other? Well... things may have worked a bit too well. <<=setup.getNpcName('npc_retention', 'formal')>> reached out to me for... something. I hate to pull you into this whole mess but when <<he npc_retention>> asked for a meeting at an off-the-books site well... I need backup, and you're the safest thing I've got. I dunno what <<he npc_retention>>'s planning, or what <<he npc_retention>> knows... but either way, this may be our best chance to deal with <<him npc_retention>> away from surveillance or interference, so I figure we have to take it.@@"<br>
<br>
You nod and settle back into your seat as she weaves through traffic, making her way to a run-down Industrial District near the edge of town and then down into the subterranean parking garage of some half-finished skyscraper.<br>
<br>
[<<moveTo "event_guard_retention_mission_3" "Continue." 600>>]
</div>/*#
#desc: meet retention with guard
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Abandoned Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parking_garage.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You wind your way down into the lower levels of the parking garage where you find a blacked-out SUV already waiting. <<=setup.getNpcName('npc_guard', 'formal')>> parks and cautiously exits the vehicle, with <<=setup.getNpcName('npc_retention', 'formal')>> stepping into view a moment later.<br>
<br>
"@@.npc_guard;So... I'm here? What's going on?@@"<br>
<br>
You could cut the tension with a knife as <<=setup.getNpcName('npc_retention', 'formal')>> responds. "@@.npc_retention;You tell me — <<=ps(setup.getNpcName('npc_boss', 'formal'))>> has been acting suspicious, not keeping me in the loop about <<his npc_boss>> plans... I don't know if it's paranoia or something else...@@"<br>
<br>
"@@.npc_guard;Hey, I've hardly met the <<man npc_boss>>, dealing with senior management is your wheelhouse... but from what you've said about <<him npc_boss>>... are you sure it's safe? I mean, from the things I've heard, if I thought <<he npc_boss>> was turning against me I'd be getting the fuck out of town right fast... no offense.@@"<br>
<br>
You note how, as the conversation progresses, <<=setup.getNpcName('npc_guard', 'formal')>> is subtly moving closer and closer to <<=setup.getNpcName('npc_retention', 'formal')>>...<br>
<br>
"@@.npc_guard;Look, if you need help or anything, just let me know, but I can't do anything if I don't know what's going on...@@"<br>
<br>
<<=ps(setup.getNpcName('npc_retention', 'formal'))>> suspicions seem slightly assuaged... just enough for <<=setup.getNpcName('npc_guard', 'formal')>> to get within arms reach, cold-cocking <<him npc_retention>> with a punch that echoes off the concrete walls as <<=setup.getNpcName('npc_retention', 'formal')>> drops in a single shot.<br>
<br>
She has already whipped out her cuffs, waving you over to join her as, by the time <<=setup.getNpcName('npc_retention', 'formal')>> wakes up <<he npc_retention>> is securely restrained and propped up against a pillar.<br>
<br>
[<<moveTo "event_guard_retention_mission_4" "Continue." 600>>]
</div>/*#
#desc: ambush retention with guard
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Abandoned Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parking_garage.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_retention', 'formal')>> wakes up to find you and <<=setup.getNpcName('npc_guard', 'formal')>> standing over <<him npc_retention>>, and <<he npc_retention>> swears and struggles against <<his npc_retention>> restraints.<br>
<br>
"@@.npc_retention;You traitorous bitch! After all I've done for you! And you? What are you doing here?@@"<br>
<br>
<<His npc_retention>> rage turns towards you and you take half a step back before <<=setup.getNpcName('npc_guard', 'formal')>> leans in, using her baton to direct <<=ps(setup.getNpcName('npc_retention', 'formal'))>> attention back towards her.<br>
<br>
"@@.npc_retention;What did <<=setup.getNpcName('npc_boss', 'formal')>> offer you? Huh? What's your loyalty worth?@@" <<=setup.getNpcName('npc_retention', 'formal')>> snarls.<br>
<br>
<<=setup.getNpcName('npc_guard', 'formal')>> chuckles. "@@.npc_guard;<<=setup.getNpcName('npc_boss', 'formal')>>? No, no, you see... you were just in the way though, having seen your files... well, you have been QUITE the naughty <<boy npc_retention>>...@@" She glances back at you with a grin. "@@.npc_guard;So... what do you think? It's just the three of us here, no cameras, no records... what should be <<his npc_retention>> fate?@@"<br>
<br>
[<<moveTo "event_guard_retention_mission_5" '<<He npc_retention>> belongs in jail.' 180 "<<set $npc_retention.flags.fate='jail'>>">>]<br>
[<<moveTo "event_guard_retention_mission_5" "<<He npc_retention>> can't leave alive." 180 "<<set $npc_retention.flags.fate='dead'>>">>]<br>
[<<moveTo "event_guard_retention_mission_5" 'Let <<him npc_retention>> go... if <<he npc_retention>> promises to disappear and never return to the city.' 180 "<<set $npc_retention.flags.fate='gone'>>">>]
</div>/*#
#desc: decide retention fate with guard
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $workEvents.hasOwnProperty('volleyball_invite')>>
<<removeWorkEvent 'volleyball_invite'>>
<</if>>
<<removeRandomEvent 'work_office' 'hr_retention'>>
<<removeEvent 'destroy_retention_landlord_call'>>
<<if $currentTasks.hasOwnProperty("destroy_retention_landlord")>>
<<deleteTask 'destroy_retention_landlord'>>
<</if>>
<<if $currentTasks.hasOwnProperty("destroy_retention_guard")>>
<<completeTask 'destroy_retention_guard' $now true>>
<</if>>
<<include "checkDestroyLieutenantsTask">>
<</if>>
<<set $player.location to "Abandoned Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parking_garage.png" setup.charImage("npc_guard","npc_guard_security") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You look down at <<=setup.getNpcName('npc_retention', 'formal')>>. You consider all the things you know <<he npc_retention>>'s done, and all the other things you've heard of, even if you lack specific details
<<switch $npc_retention.flags.fate>>
<<case 'jail'>>
and pronounce that <<he npc_retention>> deserves justice. Legal, public justice.<br>
<br>
<<=setup.getNpcName('npc_guard', 'formal')>> smirks, "@@.npc_guard;bit of a challenge, that one... shall have to wait until after <<=setup.getNpcName('npc_boss', 'formal')>> is dealt with... but I can keep <<him npc_retention>> out of the way until then.@@"<br>
<br>
She grins down as, for the first time, a flash of fear goes over <<=ps(setup.getNpcName('npc_retention', 'formal'))>> face.<br>
<br>
"@@.npc_guard;Bet you wish you hadn't assigned me to setting up <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> secret little long-term storage, hmm? Guess you'll be hoping we deal with <<=setup.getNpcName('npc_boss', 'formal')>> quick, 'cause if not, well... I don't get the feeling <<=setup.getNpcName('npc_work_doctor', 'formal')>> ever liked you all that much...@@"<br>
<br>
"@@.npc_retention;No! Please!@@" <<=setup.getNpcName('npc_retention', 'formal')>> starts back to <<his npc_retention>> feet, but <<=setup.getNpcName('npc_guard', 'formal')>> puts <<him npc_retention>> down with a full-power jolt from her stun baton.<br>
<br>
She slings <<him npc_retention>> over her shoulder and heads back to the car, dumping <<him npc_retention>> in the boot and going through <<his npc_retention>> effects again before making a quick stop at <<=ps(setup.getNpcName('npc_retention', 'formal'))>> vehicle and then gesturing for you to hop back in the passenger seat of her own.<br>
<br>
"@@.npc_guard;Self destruct will take care of our trail,@@" she explains as she pulls out and <<=ps(setup.getNpcName('npc_retention', 'formal'))>> SUV begins to self-immolate. "@@.npc_guard;I'll just drop your cute self off at your place and then go take care of getting <<=setup.getNpcName('npc_retention', 'formal')>> into cold storage.@@"
<<case 'dead'>>
and make your decision.<br>
<br>
Rather than pleading <<=setup.getNpcName('npc_retention', 'formal')>> remains disturbingly stoic, looking first at you, then straight up at <<=setup.getNpcName('npc_guard', 'formal')>> as she pulls out a gun, the pistol barking once as she puts a bullet in <<his npc_retention>> heart, <<=setup.getNpcName('npc_retention', 'formal')>> slumping to the ground almost in slow motion, barely even making a sound.<br>
<br>
"@@.npc_guard;There, there,@@" <<=setup.getNpcName('npc_guard', 'formal')>> states, patting you on the shoulder. "@@.npc_guard;Believe me, <<he npc_retention>> deserved that and more, and now we don't have to watch our backs.@@"<br>
<br>
She leans over to grab the body, quickly tossing it into <<=ps(setup.getNpcName('npc_retention', 'formal'))>> SUV before activating some sort of self-destruct that starts the entire vehicle self-immolating. A quick follow-up to scour the slight blood-stain and then she's helping you back into her vehicle, the two of you quietly returning to the street and heading for your home.
<<case 'gone'>>
and show mercy, telling <<him npc_retention>> that <<he npc_retention>> can go free... provided <<he npc_retention>> disappears completely.<br>
<br>
<<=setup.getNpcName('npc_guard', 'formal')>> squats down, looking <<=setup.getNpcName('npc_retention', 'formal')>> right in the eye. "@@.npc_guard;That means completely — no contact, no return to the city, just... gone. Now... for all your long list of crimes, you are a <<man npc_retention>> of your word — and I'll remind you that I've already poisoned <<=setup.getNpcName('npc_boss', 'formal')>> against you. If you run back it'll be straight into death so... you ready to start a new life?@@"<br>
<br>
<<=setup.getNpcName('npc_retention', 'formal')>> glowers, but nods. "@@.npc_retention;Seems you haven't left me a choice.@@"<br>
<br>
"@@.npc_guard;That was the plan, I presume you have a bug-out bag in your vehicle? Good, I'll drop you off at the airport.@@"<br>
<br>
<<=setup.getNpcName('npc_guard', 'formal')>> shoves the still-restrained <<=setup.getNpcName('npc_retention', 'formal')>> into the back of her car before retrieving <<his npc_retention>> things from <<his npc_retention>> SUV and then setting off some sort of self-destruct that sets it to self-immolation.<br>
<br>
You hop back in the passenger seat as the three of you speed away from the fire. "@@.npc_guard;I'll take you home, then deal with <<him npc_retention>>.@@" She explains as you roll through the city.
<<default>>
ERROR: unexpected npc_retention.flags.fate <<=$npc_retention.flags.fate>>
<</switch>>
<br><br>
You nod, taking a deep breath and letting your racing heart calm down, taking satisfaction that you've successfully dealt with one of <<=ps(setup.getNpcName('npc_boss', 'formal'))>> key minions.<br>
<br>
[<<moveTo "room_foyer" 'Home.' 1800>>]
</div>/*#
#desc: retention calls for meetup
#status: RELEASED 0.9.2.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.startSleepPrep && !$scene.startedSleep>>
<<set _nextDate = setup.setNextDate($now, 1, 0, 30)>>
<<addEvent 'destroy_retention_landlord_call' _nextDate>>
<<else>>
<<set $scene.sleepInterrupt = $scene.startedSleep>>
<<if $scene.sleepInterrupt>>
<<include "removeGenitalMilkers">>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You get a phonecall, picking it up to hear <<=ps(setup.getNpcName("npc_retention", "formal"))>> clipped voice on the other end. "@@.npc_retention;the construction site on South Broadway at Third Street — midnight. I want to see you and whoever you're working with. Nobody else.@@"<br>
<br>
There's a certain edge to <<his npc_retention>> voice that you don't think you've heard before and it makes you shiver slightly in fear as you confirm the appointment and then forward the information to <<=setup.getNpcName("npc_landlord", "first")>>.<br>
<br>
"@@.npc_landlord;Si... I come pick you up, it best to get there early, make sure it no trap.@@"<br>
<br>
You hang up<<if $scene.sleepInterrupt>> and get out of bed<</if>>.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_landlord_retention_mission_2" 'Wait for <<=setup.getNpcName("npc_landlord", "first")>> to arrive.' 1800 "<<set $player.inside = false>><<set $player.cutscene.lockinventory = true>>">>]
<<else>>
[@@.link_locked;I need to be dressed before <<=setup.getNpcName("npc_landlord", "first")>> picks me up.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: landlord drives you to retention
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Truck">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_truck.png" setup.charImage("npc_landlord","npc_landlord_wrenchless")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_landlord", "first")>> knocks on your door and the two of you head downstairs to <<his npc_landlord>> truck where <<he npc_landlord>> fiddles with a control that tints the windows before <<he npc_landlord>> pulls out and drives you to the rendezvous point. The location turns out to be an under construction building and you note the subtle shift of <<=setup.getNpcName("npc_landlord", "first")>> going into what you can only call "combat mode" as <<he npc_landlord>> scans <<his npc_landlord>> surroundings as <<he npc_landlord>> drives down into the parking garage. "@@.npc_landlord;If <<he npc_retention>> came early, it was not by this route.@@" <<He npc_landlord>> states calmly as <<he npc_landlord>> backs into a parking spot on one of the lower floors as instructed. "@@.npc_landlord;Good choice for a secret meeting — plenty of concrete to insulate from anyone trying to watch or listen in, clear sight-lines in and out...@@"<br>
<br>
It takes you a moment to realise that <<=ps(setup.getNpcName("npc_landlord", "first"))>> normal accent, along with the kind timbre to <<his npc_landlord>> voice, is all but gone, and you shiver slightly at the implied seriousness of the situation.<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> turns the engine down to a silent idle and has you swap seats. "@@.npc_landlord;Just in case we need a fast getaway. For now, we wait...@@"<br>
<br>
<<set _midnight = setup.setNextDate($now, 1, 0, 0)>>
<<set _timeToMidnight = setup.secondsToDate($now,_midnight)>>
[<<moveTo "event_landlord_retention_mission_3" 'Wait..' _timeToMidnight>>]
</div>/*#
#desc: landlord confronts retention
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Abandoned Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parking_garage.png" setup.charImage("npc_landlord","npc_landlord_wrenchless") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You wait patiently until, just as midnight arrives, you hear the echoing sound of another vehicle descend into the garage, a sleek, all black SUV pulling to a stop a short distance away and <<=setup.getNpcName("npc_retention", "formal")>> stepping out.<br>
<br>
"@@.npc_retention;Well? I'm here — now show yourself and tell me what you want to go away and leave the past burried where it belongs.@@"<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> flashes you a final smile and then steps out of the truck, all business.<br>
<br>
<<=setup.getNpcName("npc_retention", "formal")>> pauses for a moment and then laughs. "@@.npc_retention;I should have known it was you. Not many else above ground that would know what was on that chip... you finally got sick of being a poor, broken old pensioner? So what do you want? Money, job? I can give you either...@@"<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> shakes <<his npc_landlord>> head. "@@.npc_landlord;No, what I want is for you to go away. Your boss... <<he npc_boss>> is a problem, you do not want to be there when I deal with <<him npc_boss>>, no?@@"<br>
<br>
<<=ps(setup.getNpcName("npc_retention", "formal"))>> eyes narrow "@@.npc_retention;now that is something I cannot do. <<=setup.getNpcName("npc_boss", "formal")>> is far too useful of a meal ticket — and far too dangerous of an enemy to make. <<He npc_boss>>'s powerful enough to make all the accusations you have against me go away, why would I abandon that?@@"<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> sighs. "@@.npc_landlord;Because the alternative, well...@@" <<His npc_landlord>> voice trails off with implied menace, the two<<if $npc_landlord.fem == $npc_retention.fem>> <<men npc_landlord>><</if>> now standing about half a dozen meters apart.<br>
<br>
<<=setup.getNpcName("npc_retention", "formal")>> snorts and you see <<his npc_retention>> arm start to move... but before you can even call out <<=setup.getNpcName("npc_landlord", "first")>> is already in motion, closing the distance in shockingly little time and grabbing around <<=ps(setup.getNpcName("npc_retention", "formal"))>> gun before it can even be brought to bear.<br>
<br>
A sickening crunch later and <<=ps(setup.getNpcName("npc_landlord", "first"))>> cybernetic hand has turned the weapon into so much scrap, <<=setup.getNpcName("npc_retention", "formal")>> roaring in rage before diving in for a tackle as the fighting turns close and nasty.<br>
<br>
[<<moveTo "event_landlord_retention_mission_4" 'Continue.' 300>>]
</div>/*#
#desc: landlord and retention fight
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Abandoned Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parking_garage.png" setup.charImage("npc_landlord","npc_landlord_wrenchless") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
Before you can even make it out of the truck or try to help <<=setup.getNpcName("npc_landlord", "first")>> has already won the fight, pinning <<his npc_landlord>> opponent to the ground with one knee as <<he npc_landlord>> twists <<=ps(setup.getNpcName("npc_retention", "formal"))>> arm to an unnatural angle.<br>
<br>
"@@.npc_landlord;You ready to handle this like a professional? Or I need to break something else?@@"<br>
<br>
<<=setup.getNpcName("npc_retention", "formal")>> visibly seethes, but <<he npc_retention>> stops struggling and <<=setup.getNpcName("npc_landlord", "first")>> lets <<him npc_retention>> back to <<his npc_retention>> feet.<br>
<br>
"@@.npc_retention;Fine, I'll go... but mark my words that your quest is doomed. <<=setup.getNpcName("npc_boss", "formal")>> is more powerful and connected than you can imagine, and taking me off the board will not give you a clear shot, or whatever you're planning.@@"<br>
<br>
"@@.npc_landlord;That is no longer your problem, hmm? Now go, I see you again... I no be so nice.@@"<br>
<br>
<<=setup.getNpcName("npc_retention", "formal")>> merely grunts as <<he npc_retention>> limps back to <<his npc_retention>> vehicle. <<=setup.getNpcName("npc_landlord", "first")>> starts back to <<his npc_landlord>> truck when you see <<=ps(setup.getNpcName("npc_retention", "formal"))>> SUV pull forward with startling speed — <<he npc_retention>>'s trying to run down <<=setup.getNpcName("npc_landlord", "first")>>!<br>
<br>
[<<moveTo "event_landlord_retention_mission_5" 'Reckless driving to the rescue!' 180>>]
</div>/*#
#desc: meet retention with landlord
#status: RELEASED 0.9.2.0
#ignore_spell: t
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Abandoned Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parking_garage.png" setup.charImage("npc_landlord","npc_landlord_wrenchless") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
You slam the pedal to the floor, <<=ps(setup.getNpcName("npc_landlord", "first"))>> truck responding with eager low-end torque as you swerve towards <<=setup.getNpcName("npc_retention", "formal")>> and T-bone <<him npc_retention>> into a concrete pillar and then reflexively duck as <<=setup.getNpcName("npc_retention", "formal")>> rolls down <<his npc_retention>> window — a scattering of shots deflecting off the truck's windshield as it shows off its bullet-proof bona fides.<br>
<br>
Distracted by you <<=setup.getNpcName("npc_retention", "formal")>> doesn't notice as <<=setup.getNpcName("npc_landlord", "first")>> pops back up on the other side of the vehicle, punching through the window and literally dragging the larger <<man npc_retention>> out to throw <<him npc_retention>> onto the ground.<br>
<br>
You dash out to see <<=setup.getNpcName("npc_landlord", "first")>> standing over <<=setup.getNpcName("npc_retention", "formal")>> a final time, this time with the gun in <<his npc_landlord>> hand...<br>
<br>
[<<moveTo "event_landlord_retention_mission_6" 'Interrupt and say you want <<=setup.getNpcName("npc_retention", "formal")>> to face the legal consequences of <<his npc_retention>> actions.' 180 "<<set $npc_retention.flags.fate='jail'>>">>]<br>
[<<moveTo "event_landlord_retention_mission_6" "Maybe death is the only safe solution... it wouldn't be anything less than the <<man npc_retention>> deserves after what <<he npc_retention>>'s done." 180 "<<set $npc_retention.flags.fate='dead'>>">>]<br>
[<<moveTo "event_landlord_retention_mission_6" 'Plead for <<=setup.getNpcName("npc_retention", "formal")>> to face reason, you cannot condone killing anyone but you need <<him npc_retention>> gone.' 180 "<<set $npc_retention.flags.fate='gone'>>">>]
</div>/*#
#desc: decide retention fate with landlord
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Abandoned Parking Garage">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/parking_garage.png" setup.charImage("npc_landlord","npc_landlord_wrenchless") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<switch $npc_retention.flags.fate>>
<<case 'jail'>>
You call out "@@.pc;STOP!@@" — though you notice that <<=ps(setup.getNpcName("npc_landlord", "first"))>> attention never wavers from <<his npc_landlord>> foe even as <<he npc_landlord>> pauses to hear what you have to say.<br>
<br>
You explain that, while <<=setup.getNpcName("npc_retention", "formal")>> deserves to face justice for <<his npc_retention>> actions — this isn't the way. Perhaps <<=setup.getNpcName("npc_landlord", "first")>> could hold <<him npc_retention>> until <<=setup.getNpcName("npc_boss", "formal")>> is dealt with and you are in a position to make sure the legal system gives <<him npc_retention>> <<his npc_retention>> day in court?<br>
<br>
"@@.npc_landlord;Si... we can do that, right? You were boosted with the hibernation upgrades, right? And I remember the wake-up codes. How about you take a little nap... unless you rather take a long, what one might call permanent nap?@@"<br>
<br>
<<=setup.getNpcName("npc_retention", "formal")>> looks back and forth as if trying to come up with another option before slowly nodding... and then slumping to the ground, unconscious.<br>
<br>
"@@.npc_landlord;For long term behind enemy lines situations — hibernation allow teams to conserve energy, one <<man npc_landlord>> on, others siesta until time right for action. Still... best take no chances. There rope and supplies in back of truck, please be getting them for me.@@"<br>
<br>
You nod... strangely relieved to hear <<his npc_landlord>> accent and occasionally broken speech patterns resurface as you fetch <<his npc_landlord>> supplies while <<he npc_landlord>> searches <<=setup.getNpcName("npc_retention", "formal")>>, and then efficiently restrains the <<man npc_retention>> before putting <<him npc_retention>> in the back of the truck.
<<case 'dead'>>
You say nothing, and the pistol barks once, <<=setup.getNpcName("npc_retention", "formal")>> slumping to the ground, motionless... and with a sizable hole in <<his npc_retention>> chest that was not there a moment prior.<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> kneels down to check pulse, nodding in satisfaction. "@@.npc_landlord;It was probably the only way <<he npc_retention>> was going to go away, do not burden yourself <<callPlayer "npc_landlord">> — such a swift death is far more than <<he npc_retention>> granted to most of <<his npc_retention>> victims.@@"<br>
<br>
As <<he npc_landlord>> talks, <<=setup.getNpcName("npc_landlord", "first")>> is already retrieving supplies from the back of <<his npc_landlord>> truck; clearly <<he npc_landlord>> planned for this moment as <<he npc_landlord>> bags up the body and tosses it in the back of <<his npc_landlord>> vehicle, that <<he npc_landlord>> then pulls away — surprisingly undamaged, before leaning into the SUV and activating some sort of self destruct function.<br>
<br>
Body in the back, and with <<=ps(setup.getNpcName("npc_retention", "formal"))>> self-immolating behind you, <<=setup.getNpcName("npc_landlord", "first")>> drives out of the parking garage and smoothly merges back into the early morning traffic.
<<case 'gone'>>
You beg <<=setup.getNpcName("npc_retention", "formal")>> to reconsider, explaining that you don't want anyone to die, and why can't <<he npc_retention>> just be reasonable?<br>
<br>
Be it your plea or, more likely, staring down the barrel of <<his npc_retention>> own gun <<=setup.getNpcName("npc_retention", "formal")>> finally nods. "@@.npc_retention;I have a bug-out bag in the back of my vehicle. Just... let me go and I promise you'll never see me again.@@"<br>
<br>
<<=setup.getNpcName("npc_landlord", "first")>> slowly lowers the gun. "@@.npc_landlord;Good... only, I make sure you go, hmm? It can be so easy to miss a flight, I help make sure you make it aboard nice and safe...@@"<br>
<br>
<<=setup.getNpcName("npc_retention", "formal")>> reluctantly nods as <<=setup.getNpcName("npc_landlord", "first")>> does a quick search of <<=setup.getNpcName("npc_retention", "formal")>> and the vehicle to find the aforementioned bag and then the three of you pile back into the surprisingly undamaged truck, the SUV's self destruct activated as it self-immolates behind you and <<=setup.getNpcName("npc_landlord", "first")>> drives out of the parking garage and smoothly merges back into the early morning traffic.
<<default>>
ERROR: unexpected npc_retention.flags.fate <<=$npc_retention.flags.fate>>
<</switch>>
<br><br>
[<<moveTo "event_landlord_retention_mission_7" 'Continue.' 1800>>]
</div>/*#
#desc: home after landlord destroy retention
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $workEvents.hasOwnProperty('volleyball_invite')>>
<<removeWorkEvent 'volleyball_invite'>>
<</if>>
<<removeRandomEvent 'work_office' 'hr_retention'>>
<<removeEvent 'event_guard_rival_ask'>>
<<if $currentTasks.hasOwnProperty("destroy_retention_landlord")>>
<<completeTask 'destroy_retention_landlord' $now true>>
<</if>>
<<if $currentTasks.hasOwnProperty("destroy_retention_guard")>>
<<deleteTask 'destroy_retention_guard'>>
<</if>>
<<include "checkDestroyLieutenantsTask">>
<</if>>
<<set $player.location to "<<=ps(setup.getNpcName('npc_landlord', 'first'))>> Truck">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/landlord_truck.png" setup.charImage("npc_landlord","npc_landlord_wrenchless") setup.charImage("npc_retention")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_landlord', 'first')>> drops you off at your apartment
<<switch $npc_retention.flags.fate>>
<<case 'jail'>>
building.<br>
<br>
"@@.npc_landlord;Good luck, <<callPlayer "npc_landlord">> — I take care of putting <<=setup.getNpcName("npc_retention", "formal")>> somewhere more secure until it time for <<him npc_retention>> see justice. You let me know if I be of any more help, si?@@"<br>
<br>
You nod and <<he npc_landlord>> drives away.
<<case 'dead'>>
building before <<=setup.getNpcName("npc_landlord", "first")>> gets ready to take <<=ps(setup.getNpcName("npc_retention", "formal"))>> body to do... whatever it is you do to disappear a dead body, you decide you don't want to think about it.<br>
<br>
"@@.npc_landlord;Good luck, <<callPlayer "npc_landlord">> — you let me know if I be of any more help, si?@@"<br>
<br>
You nod and <<he npc_landlord>> drives away.
<<case 'gone'>>
building as <<=setup.getNpcName("npc_retention", "formal")>> sits looking uncomfortable.<br>
<br>
"@@.npc_landlord;I see you later, <<callPlayer "npc_landlord">> — after I make sure <<=setup.getNpcName("npc_retention", "formal")>> is safely departed on <<his npc_retention>> trip.@@"<br>
<br>
<<=setup.getNpcName("npc_retention", "formal")>> grimaces, but nods and the truck pulls away.
<<default>>
ERROR: unexpected npc_retention.flags.fate <<=$npc_retention.flags.fate>>
<</switch>>
<br><br>
[<<moveTo "room_foyer" 'Home.' 1800>>]
</div><<set _count = 0>>
<<set _max = 4>>
<<if State.hasPlayed("event_rival_bondage_1")>>
<<set _count += 1>>
<</if>>
<<if State.hasPlayed("event_rival_bdsm_result_3")>>
<<set _count += 1>>
<</if>>
<<if State.hasPlayed("event_rival_foot_result_1")>>
<<set _count += 1>>
<</if>>
<<if State.hasPlayed("event_rival_penis_result_1")>>
<<set _count += 1>>
<</if>>
<<if $fetish.piss>>
<<set _max += 1>>
<<if State.hasPlayed("event_rival_piss_result_1")>>
<<set _count += 1>>
<</if>>
<</if>>
<<if $fetish.bestiality_hard>>
<<set _max += 1>>
<<if State.hasPlayed("event_rival_bestiality_2")>>
<<set _count += 1>>
<</if>>
<</if>>
<<if $fetish.cum>>
<<set _max += 1>>
<<if State.hasPlayed("event_rival_cum_result")>>
<<set _count += 1>>
<</if>>
<</if>><<include "calcRivalStatus">>
<<if _count == 1>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;A clever first step, but you will need to chip away a bit more before we are ready to topple <<=setup.getNpcName('npc_rival', 'formal')>> from <<his npc_rival>> perch.@@"
<<elseif _count == _max>>
<<=setup.getNpcName('npc_manager', 'formal')>> beams. "@@.npc_manager;Masterfully done... <<=setup.getNpcName('npc_rival', 'formal')>> has become all but a laughing-stock in the eyes of the other directors, and even <<=setup.getNpcName('npc_boss', 'formal')>> is expressing disappointment in <<his npc_rival>> performance. It is just about time to make our move...@@"
<<elseif _count == _max-1>>
<<=setup.getNpcName('npc_manager', 'formal')>> grins. "@@.npc_manager;I think <<=setup.getNpcName('npc_rival', 'formal')>> is nearing <<his npc_rival>> wits end. Just another tiny push and <<he npc_rival>> will be primed for the fall...@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;Another excellent effort on your part. Already there are murmurings of disapproval from the other Directors. Keep this up and it will not be long before <<=setup.getNpcName('npc_rival', 'formal')>> loses their respect completely, and with that will go the faith of <<=setup.getNpcName('npc_boss', 'formal')>>.@@"
<</if>>
<br><br>/*#
#desc: post-bondage undermine npc_rival
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "An Office">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_other_office.png">>
<div id="invframe" class="scrolltext">
You carefully ask your fellow secretary about her thoughts on the "new" director. "@@.generic_female1;I much preferred <<=setup.getNpcName('npc_manager', 'formal')>>... wait, she is your owner, isn't she? I guess the both of you got a bit of a demotion.@@"<br>
<br>
You nod, but note that <<=setup.getNpcName('npc_manager', 'formal')>> is working hard to reclaim her position.<br>
<br>
The woman looks at you and nods slowly. "@@.generic_female1;I see... and let me guess — your "helpfulness" is part of that? Well good for you! I wish I had a boss that would inspire such loyalty. Since you helped me out, let me do the same. My own manager is finicky enough, it should be no trouble getting <<him>> to reflect on <<his>> new Director in a more negative light.@@"<br>
<br>
You thank her for the help and head on your way.<br>
<br>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>>">>]
</div>/*#
#desc: ask npc_discipline for help with npc_rival
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<<removeItem 'headphones_pink' true>>
<<deleteItem 'headphones_pink'>>
<<removeItem 'ankle_cuffs_steel' true>>
<<deleteItem 'ankle_cuffs_steel'>>
<<removeItem 'wrist_cuffs_steel' true>>
<<deleteItem 'wrist_cuffs_steel'>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addWorkEvent "rival_bdsm_aftermath" _nextDate>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
You signal <<=setup.getNpcName("npc_discipline", "formal")>> if you could have a minute of her time and she considers for a moment before nodding for the mover to give the two of you some privacy. She removes your gag and then begins taking care of the rest of your restraints.<br>
<br>
"@@.npc_discipline;Well, what is it? I dare say I am running short on time since the shift in management. Why, just this morning <<=setup.getNpcName("npc_rival", "formal")>> was asking me to sign off on an incredibly aggressive timeline that <<he npc_rival>> has apparently all but sold to <<=setup.getNpcName("npc_boss", "formal")>> already!@@"<br>
<br>
You smile and suggest that, perhaps <<=setup.getNpcName("npc_discipline", "formal")>> could pad out her estimate even further? After all, if <<=setup.getNpcName("npc_rival", "formal")>> has already made promises to <<=setup.getNpcName("npc_boss", "formal")>>, well...<br>
<br>
<<=setup.getNpcName("npc_discipline", "formal")>> smiles. "@@.npc_discipline;It would seem that all that time working under <<=setup.getNpcName("npc_manager", "other")>> has rubbed off on you... certainly, she may have been demoted from Director, but a move like that... yes, I think I can do my part to shatter <<=ps(setup.getNpcName("npc_rival", "formal"))>> dreams... and perhaps see <<him npc_rival>> replaced... and with <<=setup.getNpcName("npc_manager", "other")>> oh-so-positioned to ascend to her former title...@@"<br>
<br>
<<=setup.getNpcName("npc_discipline", "formal")>> winks at you, and then summons the mover back in to take your leash and lead you off towards the elevator.<br>
<br>
<<if $scene.voluntary>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>>">>]
<<else>>
[<<moveTo "event_work_move_7" "Continue." 300 "">>]
<</if>>
</div>/*#
#desc: ask npc_discipline for help with npc_rival after working
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 3, 0, 0)>>
<<addWorkEvent "rival_bdsm_aftermath" _nextDate>>
<</if>>
<<set $player.location = "Employee Discipline Department">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" setup.charImage("npc_discipline","npc_discipline_3_nowhip")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_discipline", "formal")>> if you could have a minute of her time. You can tell she's overworked but she nods, even if it comes with a sigh.<br>
<br>
"@@.npc_discipline;Make it quick, please, ever since the change in management my department has been overbooked and overworked... as you just saw. Why, just this morning <<=setup.getNpcName("npc_rival", "formal")>> was asking me to sign off on an incredibly aggressive timeline that <<he npc_rival>> has apparently all but sold to <<=setup.getNpcName("npc_boss", "formal")>> already!@@"<br>
<br>
You smile and suggest that, perhaps <<=setup.getNpcName("npc_discipline", "formal")>> could pad out her estimate even further? After all, if <<=setup.getNpcName("npc_rival", "formal")>> has already made promises to <<=setup.getNpcName("npc_boss", "formal")>>, well...<br>
<br>
<<=setup.getNpcName("npc_discipline", "formal")>> smiles. "@@.npc_discipline;It would seem that all that time working under <<=setup.getNpcName("npc_manager", "other")>> has rubbed off on you... certainly, she may have been demoted from Director, but a move like that... yes, I think I can do my part to shatter <<=ps(setup.getNpcName("npc_rival", "formal"))>> dreams... and perhaps see <<him npc_rival>> replaced... and with <<=setup.getNpcName("npc_manager", "other")>> oh-so-positioned to ascend to her former title...@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Return to your desk to finish the afternoon off." 300>>]
</div>/*#
#desc: undermine npc_rival with npc_discipline
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You look up to see <<=setup.getNpcName('npc_rival', 'formal')>> arrive for another meeting with your manager, storming past you in obvious angry frustration.<br>
<br>
[<<moveTo "event_rival_bdsm_result_2" "Listen at the door." 1800 "<<set $scene.listen=true>>">>]<br>
[<<moveTo "event_rival_bdsm_result_2" "Resume working." 1800 "<<set $scene.listen=false>>">>]
</div>/*#
#desc: listen to npc_rival argue about npc_discipline
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.listen>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival")>>
<<else>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.listen>>
You've barely risen to approach the door when <<=setup.getNpcName('npc_ai', 'first')>> appears and, with a wink, grants you a simulcast view of the argument inside the office.<br>
<br>
"@@.npc_rival;How the hell did you deal with that woman?@@" <<=setup.getNpcName('npc_rival', 'formal')>> shouts as <<=setup.getNpcName('npc_manager', 'formal')>> adjusts her glasses calmly.<br>
<br>
"@@.npc_manager;I presume you are referring to <<=setup.getNpcName('npc_discipline', 'formal')>>? I never had any particular issues. I acknowledged her area of expertise, gave her clear instructions as to what I expected from her department and she always delivered superior results.@@"<br>
<br>
"@@.npc_rival;Quality I could give a damn about — her estimate for the next phase is months longer than I promised <<=setup.getNpcName('npc_boss', 'formal')>> and she refuses to cut corners to meet my schedule!@@"<br>
<br>
"@@.npc_manager;I take it you made promises regarding those so-called estimates prior to consulting <<=setup.getNpcName('npc_discipline', 'formal')>>?@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> snorts in annoyance. "@@.npc_rival;Of course! I am the Director of this department, time-lines are my job, hers is to meet them!@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles, though <<=setup.getNpcName('npc_rival', 'formal')>> seems quite oblivious to the trap <<he npc_rival>> has very clearly blundered into. "@@.npc_manager;I can speak with her, but the unattainable triangle states that you can have things cheap, fast, or good. As she will certainly not relax on quality, and you insist on speed, well... that leaves increasing her departmental budget so that she can extend overtime and add more capacity.@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> seethes. "@@.npc_rival;But that would cut into my bonus!@@"<br>
<br>
"@@.npc_manager;Be that as it may, the alternative would be to fail and quite possibly lose your job and, well... I believe you are familiar with how <<=setup.getNpcName('npc_boss', 'formal')>> handles terminations at your level...<<if $options.fem>>Ms.<<else>>Mr.<</if>> Yoon would be the most recent example, and that was so soon after <<if State.hasPlayed("event_corporate_retreat_mission_4")>>winning<<else>>being in the running for<</if>> Director of the Year! Given your lack of time to build up accomplishments, well... I could see you in an even more dire situation...@@"<br>
<br>
A look of fear stops <<=setup.getNpcName('npc_rival', 'formal')>> in <<his npc_rival>> tracks as the colour drains from <<his npc_rival>> face. "@@.npc_rival;Fine... I will leave you to deal with it — I cannot stand dealing with her a minute longer!@@"<br>
<br>
Carrying a fresh head of rage <<=setup.getNpcName('npc_rival', 'formal')>> storms back out of the office just as you dart back to your desk.
<<else>>
You continue working, <<=ps(setup.getNpcName('npc_rival', 'formal'))>> shouts loud enough to broadcast <<his npc_rival>> anger, though the heavy door makes <<his npc_rival>> words indecipherable.
<</if>>
<br><br>
[<<moveTo "event_rival_bdsm_result_3" "Continue." 180>>]
</div>/*#
#desc: listen to npc_rival argue about npc_discipline
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office just after <<=setup.getNpcName('npc_rival', 'formal')>> has finished storming out.<br>
<br>
She smiles at you in satisfaction. "@@.npc_manager;I can barely fathom how much of an imbecile that <<man npc_rival>> is. I shall have to tell <<=setup.getNpcName('npc_discipline', 'formal')>> that her favour is paid in full. Well done obtaining it for me, we are another step closer to being done with that infuriating <<man npc_rival>>.@@"<br>
<br>
You straighten with pride at her smile before she returns to her office.<br>
<br>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: opportunity to sabotage npc_rival shoe
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
As you're working away on foot after foot you look up to recognise <<=setup.getNpcName('npc_rival', 'formal')>> as your customer.<br>
<br>
Reflexively starting in on brushing <<his npc_rival>> feet you realise you have an opportunity here to screw with <<him npc_rival>> — one of the thick heels of <<his npc_rival>> shoes is already a hair loose... just a little additional fiddling should have it falling off and tripping <<him npc_rival>> up sometime later in the day... hopefully somewhere nicely embarrassing.<br>
<br>
[<<moveTo "event_rival_foot_2" "Sabotage <<his npc_rival>> shoe." 300 "<<set $scene.prank=true>>">>]<br>
[<<moveTo "event_rival_foot_2" "Just keep polishing." 300 "<<set $scene.prank=false>>">>]
</div>/*#
#desc: sabotage npc_rival shoe
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.prank>>
<<addWorkEvent 'rival_foot_aftermath'>>
<</if>>
<</if>>
<<set $player.location = "A Shoeshine Station">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/shoeshine.png" setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<if $scene.prank>>
<<=setup.getNpcName('npc_rival', 'formal')>> doesn't even look down as <<he npc_rival>> chats with some other manager and you go about your work — carefully prying at the crack where the thick heel attaches to the shoe, leaving it just barely attached and then finishing up your polishing duties.
<<else>>
You pass up the opportunity to sabotage <<=ps(setup.getNpcName('npc_rival', 'formal'))>> and merely finish your polishing without <<him npc_rival>> ever so much as looking down, much less recognising you.
<</if>>
<br><br>
<<=setup.getNpcName('npc_rival', 'formal')>> stands up and walks off without so much as a compliment or comment. It is not much longer when your shift comes to an end and you are freed from your kneeling position of service to return to <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.<br>
<br>
<<if $scene.fromAfternoon>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Finish the afternoon shift back at your desk." 60 "<<if setup.checkItemWorn('high_heel_gag')>><<removeItem 'high_heel_gag' true>><<deleteItem 'high_heel_gag'>><</if>>">>]
<<else>>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Continue." 300 "<<set $scene.intro='accept'>><<if setup.checkItemWorn('high_heel_gag')>><<removeItem 'high_heel_gag' true>><<deleteItem 'high_heel_gag'>><</if>>">>]
<</if>>
</div>/*#
#desc: manager tells you result of shoe sabotage
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> returns from a meeting and smiles at you. "@@.npc_manager;So it would seem that <<=setup.getNpcName('npc_rival', 'formal')>> has had quite the afternoon. My understanding is <<he npc_rival>> was giving a presentation when the heel fell off of one of those compensatory shoes <<he npc_rival>> wears. I wish I could have been there to see <<him npc_rival>> stumbling around, my understanding is that it was quite an amusement. Not the way to impress the board, I would imagine... especially since <<he npc_rival>> reacted to the whole thing quite poorly. I do not suppose your shoeshine activities had anything to do with this result?@@" She winks at you with a smile.<br>
<br>
<<include "rivalStatus">>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: penis fetish scene, listen for info
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 11 'normal' $SEEN_STRANGER>>
<<applyExperience 'bondage' 16 'normal' $SEEN_STRANGER>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'skip' $SEEN_STRANGER>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
You settle back in for another shift of sucking cock for your fellow employees.<br>
<br>
Your throat has gotten quite the workout without you overhearing anything of particular interest when a pair of <<men>> walk up to you in the middle of a conversation about some project or another. They do not so much as pause as one unzips to slide <<his>> cock into your mouth. It seems that they're preparing a status report for <<=setup.getNpcName('npc_rival', 'formal')>>, both <<men>> in good spirits as it sounds like the project is progressing ahead of schedule.<br>
<br>
<<printThought "Hmm... a bit vague to be usable, I think.">><br>
<br>
<<if $scene.fromAfternoon>>
[<<moveTo "event_work_move_6_penis_5_accept" "Continue your shift..." 5400 "<<set $scene.direct=false>>">>]<br>
<<else>>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToLunch = setup.secondsToDate($now,_lunch)>>
[<<moveTo "event_work_move_6_penis_5_accept" "Continue your shift..." _timeToLunch "<<set $scene.direct=false>>">>]<br>
<</if>>
</div>/*#
#desc: penis fetish scene, hear usable secret
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $SEEN_STRANGER>>
<<applyExperience 'cum' 11 'normal' $SEEN_STRANGER>>
<<applyExperience 'bondage' 16 'normal' $SEEN_STRANGER>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'skip' $SEEN_STRANGER>>
<<addNpcTheme 'npc_manager' 'other_work' 'theme_manager_rival_penis'
0
'event_rival_penis_result_1'
false
>>
<</if>>
<<set $player.location = "Cubeville, Near the Water Cooler">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cds_office.png">>
<div id="invframe" class="scrolltext">
Sucking cock like a good <<if $fetish.sissy>>sissy <</if>>slut, you feel a thrill of excitement when you hear familiar voices approach, the two <<men>> from earlier in the day continuing to discuss the project they are managing.<br>
<br>
Determined to get some useful dirt you deploy all of your best skills to keep your customer engaged a little longer... and your efforts work, one of the <<men>> placing a hand on your head as you passionately suck and the two settle in for a longer conversation. It appears that, in response to their optimistic progress report, <<=setup.getNpcName('npc_rival', 'formal')>> has ordered them to leave the schedule as is and keep their efficiency a secret so as to take credit all at once when things come in ahead of schedule. You slot that tidbit away for later<<if $fetish.cum>>, an even better prize than the load the <<man>> dumps in your mouth a moment later<<else>> as you obediently suck<</if>>.<br>
<br>
<<if $scene.fromAfternoon>>
<<set _endshift = setup.setNextDate($now, 0, 16, 30)>>
<<set _timeToWork = setup.secondsToDate($now,_endshift)>>
<<else>>
<<set _lunch = setup.setNextDate($now, 0, 11, 30)>>
<<set _timeToWork = setup.secondsToDate($now,_lunch)>>
<</if>>
[<<moveTo "event_work_move_6_penis_5_accept" "Continue your shift..." _timeToWork "<<set $scene.direct=false>>">>]
</div>/*#
#desc: relay intel about npc_rival
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You report to <<=setup.getNpcName('npc_manager', 'formal')>> what you overheard about <<=setup.getNpcName('npc_rival', 'formal')>> while sucking cocks and she smiles.<br>
<br>
"@@.npc_manager;The old saying is you learn most with your mouth shut and your ears open, but it would seem you learn even more with your mouth open... and occupied. This piece of information should be quite useful in continuing to undermine <<=setup.getNpcName('npc_rival', 'formal')>>. Holding back full status details? Yes, that will be quite the black eye for <<him npc_rival>> should <<=setup.getNpcName('npc_boss', 'formal')>> find out...@@"<br>
<br>
<<include "rivalStatus">>
<<if setup.getNpcThemes('npc_manager') > 0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
</div>/*#
#desc: result of npc_rival to be delivered piss
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office and graces you with a smile. "@@.npc_manager;So, it would seem that <<=setup.getNpcName('npc_rival', 'formal')>> is having quite the morning... <<He npc_rival>> was taking <<his npc_rival>> morning coffee midway through an international video-call and, well... somehow <<his npc_rival>> order had a bit of a mix-up and <<he npc_rival>> found <<him npc_rival>>self knocking back a mouth-full of percolated piss... <<His npc_rival>> reaction was quite explosive, and <<his npc_rival>> anger leaked out through the rest of the meeting. Quite the embarrassing performance.@@"<br>
<br>
She winks at you. "@@.npc_manager;Keep up the good work.@@"<br>
<br>
<<include "rivalStatus">>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: ask kennel keeper for help
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Bitches Paradise — the Office Kennels">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/office_kennels.png">>
<div id="invframe" class="scrolltext">
As you're leaving the kennel, you ask the kennel keeper if they've seen or heard anything interesting recently?<br>
<br>
"@@.generic_male1;Well most of my clientele aren't all that chatty, but there was one kind of interesting event. It was a week or so ago, I had a "first time" customer delivered just after I came on shift. No big deal, we take care of all our wards the same, but something seemed a bit off, but they seemed excited to be put in the pen so I continued on like I normally would. Well, imagine my surprise when, midway through the shift, while they're getting plowed by one of the larger dogs and their mask slips and I recognise <<if $options.fem>>Ms.<<else>>Mr.<</if>> Clements, Assistant Director of Public Relations! I kept things professional, of course, and pretended I didn't recognise <<him>> but... well, it was still quite the surprise to see a mid level manager all kitted out getting bred like a bitch. At first I wondered if they had maybe lost some sort of managerial bet or whatever, but no, <<he>> was loving every minute <<he>> was knotted... quite the potentially embarrassing secret for one in <<his>> position, what with how dominance-obsessed management tends to be at <<his>> level...@@"<br>
<br>
The <<man>> pauses and blushes. "@@.generic_male1;Sorry... I guess I shouldn't have told you that, but you just have one of those cute faces that makes me want to trust you and open up. Please don't get me in trouble, I really do like this job...@@"<br>
<br>
You promise you'll keep <<his>> secret safe and they silently take you back to your office.<br>
<br>
[<<moveTo "event_rival_bestiality_2" "Continue." 300 "<<set $scene.intro='accept'>>">>]
</div>/*#
#desc: relay kennel keeper secret
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "cleanPlayer">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName('npc_manager', 'formal')>> what you found out about <<if $options.fem>>Ms.<<else>>Mr.<</if>> Clements and she grins. "@@.npc_manager;Oh that is just perfect. <<He>> has been a close ally of <<=setup.getNpcName('npc_rival', 'formal')>>, hitching <<his>> boat to the rising star, but if <<he>> were to withdraw some of that support, in exchange for keeping <<his>> secret from leaking out, well... that will leave <<=setup.getNpcName('npc_rival', 'formal')>> with an even more tenuous grasp on things. Wonderfully done, my dear<<if $scene.from_crate>>, but we had better get you to work or you will get nothing done today!<<else>>.<</if>>@@"<br>
<br>
<<if $scene.from_crate>>
[<<moveTo "event_manager_daily_check_stage_4" "Continue on with your inspection." 60 "<<set $scene.directInspection=true>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Finish off the afternoon at your desk." 60>>]
<</if>>
</div>/*#
#desc: ask cum-cleaner for help
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _nextDate = setup.setNextDate($now, 7, 7, 0)>>
<<addWorkEvent 'rival_cum_aftermath' _nextDate>>
<</if>>
<<set $player.location = "A Storage Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/storage_room.png">>
<div id="invframe" class="scrolltext">
You ask your supervisor why her schedule seems so overloaded and she sighs. "@@.generic_female1;Staffing issues. The company keeps growing but do they expand my department? They do not. Just expect me to handle more work in less time... you being on hand today was quite the blessing, dunno how I would have finished otherwise... another late night of un-paid overtime, I guess.@@"<br>
<br>
You suggest that maybe she should take some time off? Perhaps if they saw how tenuous things were, and the impact a single outage might have, her superiors might approve her expansion requests.<br>
<br>
"@@.generic_female1;Hmm, not a bad idea. Goddess knows I have the vacation saved up... yeah, let management have to deal with their own cum-soaked slaves for a day or two! By the time I get back they'll be desperate for me to sort it all out.@@"<br>
<br>
[<<moveTo "event_work_random_voluntary_move_event_finish" "Return to the office." 300 "<<set $scene.intro='accept'>>">>]
</div>/*#
#desc: report on npc_rival cum sabotage
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office with a smile. "@@.npc_manager;So it seems your little act of strike-encouragement has paid off. The way things fell apart with just a single unexpected vacation in that department has <<=setup.getNpcName('npc_rival', 'formal')>> going from looking like a savvy cost-cutter to an ignorant skinflint. I pulled some strings and your friend will be getting a pay boost once she's back from her vacation, to go with her more senior title and expanded staff. Of course the real win is that I, once again, ride to the rescue to clean up <<=ps(setup.getNpcName('npc_rival', 'formal'))>> mess... very well done, my dear.@@"<br>
<br>
<<include "rivalStatus">>
[<<moveTo $scene.workEventReturn "Return to work." 600 "<<completeWorkEvent>>">>]
</div>/*#
#desc: discuss rival with manager in stage 5
#status: RELEASED 0.9.4.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcRivalStatus">>
<<if _count == _max>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_npc_manager_rival')>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_manager', 'formal')>> about <<=setup.getNpcName('npc_rival', 'formal')>>.<br>
<br>
<<include "calcRivalStatus">>
<<if _count == 0>>
<<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;Yes, dealing with <<him npc_rival>> will be a vital step on the path to <<=setup.getNpcName('npc_boss', 'formal')>>... plus, well... pardon my French, but the little shit needs to be put in <<his npc_rival>> place. What we need to do is undercut <<him npc_boss>> across <<his npc_boss>> subordinates, and that is where you come in.@@"
<<elseif _count == 1>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;You have made a first step, but you will need to chip away quite a bit more before we are ready to topple <<=setup.getNpcName('npc_rival', 'formal')>> from <<his npc_rival>> perch.@@"
<<elseif _count == _max>>
<<=setup.getNpcName('npc_manager', 'formal')>> beams. "@@.npc_manager;You have done everything I require. <<=setup.getNpcName('npc_rival', 'formal')>> has become all but a laughing-stock in the eyes of the other directors, and even <<=setup.getNpcName('npc_boss', 'formal')>> is expressing disappointment in <<his npc_rival>> performance. Now it is my turn to find the perfect moment to act...@@"
<<elseif _count == _max-1>>
<<=setup.getNpcName('npc_manager', 'formal')>> grins. "@@.npc_manager;I think <<=setup.getNpcName('npc_rival', 'formal')>> is nearing <<his npc_rival>> wits end. Just another tiny push and <<he npc_rival>> will be primed for the fall...@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> smiles. "@@.npc_manager;You have been making good progress. Already there are murmurings of disapproval from the other Directors. Keep this up and it will not be long before <<=setup.getNpcName('npc_rival', 'formal')>> loses their respect completely, and with that will go the faith of <<=setup.getNpcName('npc_boss', 'formal')>>.@@"
<</if>>
<<if _count != _max>>
<br><br>
She thinks for a moment.<br>
<br>
<<if State.hasPlayed("event_rival_bondage_1")>>
"@@.npc_manager;As much as I may prefer keeping you to myself, your bound activities has helped to increase the dissatisfaction with <<=ps(setup.getNpcName('npc_rival', 'formal'))>> leadership.@@"
<<else>>
"@@.npc_manager;As a <<if $fetish.sissy>>SISSI <</if>>Secretary you can go places that I cannot, and leverage contacts who I would only intimidate. If you could arrange to spend some time bound in service to another manager well... you might be able to gain some favour that would be useful to our purposes.@@"
<</if>>
<br><br>
<<if State.hasPlayed("event_rival_bdsm_result_3")>>
"@@.npc_manager;Thanks to your efforts <<=setup.getNpcName("npc_discipline", "formal")>> has put her not-inconsiderable power to our side, which is certainly making <<=setup.getNpcName("npc_rival", "formal")>> rule even more fraught.@@"
<<elseif State.hasPlayed("event_rival_bdsm_1") || State.hasPlayed("event_rival_bdsm_1_alt")>>
"@@.npc_manager;I understand you have spent time assisting
<<=setup.getNpcName("npc_discipline", "formal")>>. This is good, now we need only give her some time to recognise the wisdom in siding with me.@@"
<<else>>
"@@.npc_manager;<<=ps(setup.getNpcName("npc_discipline", "formal"))>> power has only increased with the new regime... but she is a cautious one, and at the moment very busy. Getting her back on our side would be very useful, perhaps you could assist her in some manner to tilt her hand in our direction?@@"
<</if>>
<br><br>
<<if State.hasPlayed("event_rival_foot_result_1")>>
"@@.npc_manager;The slightest weakness at <<=ps(setup.getNpcName("npc_rival", "formal"))>> level is a vulnerability... and your efforts getting underfoot have proven quite effective in that regard.@@"
<<elseif State.hasPlayed("event_rival_foot_2")>>
"@@.npc_manager;I believe your morning effort at the shoeshine stand will bear fruit... we just need to wait...@@"
<<else>>
"@@.npc_manager;The slightest weakness at <<=ps(setup.getNpcName("npc_rival", "formal"))>> level is a vulnerability... perhaps if you could arrange some way for you to get... underfoot you might be able to turn that to our advantage? There is that shoeshine stand, that <<=setup.getNpcName("npc_rival", "formal")>> is known to frequent...@@"
<</if>>
<br><br>
<<if State.hasPlayed("event_rival_penis_result_1")>>
"@@.npc_manager;Your little eavesdropping was quite effective, and I shall be using that tidbit to good ends.@@"
<<elseif State.hasPlayed("event_rival_penis_1")>>
"@@.npc_manager;There are so many secrets spoken around the office. Having one's mouth otherwise occupied can open their ears to hear them. Should you run into such a situation, well... I should hope you would relay your findings with all due haste.@@"
<<else>>
"@@.npc_manager;There are so many secrets spoken around the office. Having one's mouth otherwise occupied can open their ears to hear them...@@"
<</if>>
<br><br>
<<if $fetish.piss>>
<<if State.hasPlayed("event_rival_piss_result_1")>>
"@@.npc_manager;Your little stunt from working in the executive bathroom... yes, it had quite the effect. A little acid to neutralise such a basic, worthless <<man npc_rival>> such as <<=setup.getNpcName("npc_rival", "formal")>>...@@"
<<elseif State.hasPlayed("event_rival_piss_2")>>
"@@.npc_manager;I thank you for your time spent in the Executive Bathroom... and I believe your efforts will soon bear results...@@"
<<else>>
"@@.npc_manager;Perhaps some time spent in the Executive Bathroom would give you a golden opportunity to deal with the company's newest Executive?@@"
<</if>>
<br><br>
<</if>>
<<if $fetish.bestiality_hard>>
<<if State.hasPlayed("event_rival_bestiality_2")>>
"@@.npc_manager;A little bird told me... well, not a bird, but an animal, nonetheless...@@" She smiles, "@@.npc_manager;I jape, but your time at the kennels has drawn us additional allies, well done.@@"
<<else>>
"@@.npc_manager;We should look beyond just the company's human employees to undermine <<=setup.getNpcName("npc_rival", "formal")>>... perhaps if you spent some time at the kennels you might sniff something out?@@"
<</if>>
<br><br>
<</if>>
<<if $fetish.cum>>
<<if State.hasPlayed("event_rival_cum_result")>>
"@@.npc_manager;An excellent job with your little worker advocacy, it has served to further highlight <<=ps(setup.getNpcName("npc_rival", "formal"))>> failures as a leader.@@"
<<elseif State.hasPlayed("event_rival_cum_1")>>
"@@.npc_manager;I hear you have done a bit of worker advocacy, helped some of your fellows... cum around to <<=ps(setup.getNpcName("npc_rival", "formal"))>> failings? Well done, I imagine it will be quite soon that your efforts show results.@@"
<<else>>
"@@.npc_manager;We cannot just wait around for solution to <<=setup.getNpcName("npc_rival", "formal")>> to come to us... or cum to us, as might be the case. You must go out there and seize an opportunity.@@"
<</if>>
<br><br>
<</if>>
<</if>>
<<if $scene.firstTalkPills>>
<<if setup.getNpcThemes('npc_manager')>0>>
<<printNpcThemeReturn 'npc_manager' 60>><br>
<</if>>
<</if>>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: manager intros that you'll be destroying rival
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addTaskById 'destroy_rival'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> summons you into her office. "@@.npc_manager;So. Now that I am myself once more, the next step is to re-assert my position of power. That means that <<=setup.getNpcName('npc_rival', 'formal')>> needs to go. Obviously I could merely wait for <<his npc_rival>> incompetence to catch up to <<him npc_rival>>, but I have been passive for long enough, it is time for action. <<His npc_rival>> position is unearned and precarious, and <<he npc_rival>> was always considered an unpopular boar. Such <<men npc_rival>> are best brought down from the bottom. Curry favour with the company's workers, a string of small problems will easily pile up and chip away at <<his npc_rival>> position until toppling <<him npc_rival>> will be almost a mercy. Those crated escapades you have gotten up to — those would be just perfect for garnering favours with just the sort of people in a position to secretly undermine <<his npc_rival>> rule.@@"<br>
<br>
<<include "afterWorkManagerThemes">>
</div>/*#
#desc: manager intros that it's time to finish rival
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<completeTask 'destroy_rival' $now true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are packing up for the day when <<=setup.getNpcName("npc_manager","formal")>> emerges from her inner office.<br>
<br>
"@@.npc_manager;Come,@@" she states with a curt nod. "@@.npc_manager;We have business with <<=setup.getNpcName("npc_rival","Director")>>.@@"<br>
<br>
You feel a chill run down your spine at her use of <<his npc_rival>> stolen title — you have a feeling all the work you've been doing to undermine <<his npc_rival>> position is about to come to a head...<br>
<br>
[<<moveTo "event_rival_destruction_2" 'Follow.' 300>>]
</div>/*#
#desc: manager confronts rival
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You have to step quickly to keep up with <<=setup.getNpcName("npc_manager","formal")>> as she marches up the hallway, the perfectly even clicks of her high heels reminding you of the tick, tick, tick of a bomb.<br>
<br>
You dash ahead to open the door, half wondering if she would have literally marched through it had you not as she storms into <<=ps(setup.getNpcName('npc_rival', 'formal'))>> office. <<=setup.getNpcName('npc_rival', 'formal')>> looks up in surprise, <<his npc_rival>> assistant laid out over her desk, exposed rear red from what looks to have been a very harsh spanking administered via the belt <<he npc_rival>> has clutched in one fist.<br>
<br>
"@@.npc_rival;I'm busy,@@" <<=setup.getNpcName("npc_rival","formal")>> growls, barely looking towards you, but <<=setup.getNpcName("npc_manager","formal")>> is firm in her response.<br>
<br>
"@@.npc_manager;I am afraid that this matter will not wait,@@" she states, her words drawing a full angry glance that has you noticing <<his npc_rival>> bloodshot eyes, slightly rumpled clothing and <<if $npc_rival.fem>>smudged makeup<<else>>stubble<</if>> on <<his npc_rival>> face pointing to <<him npc_rival>> having likely spent the night at the office.<br>
<br>
"@@.npc_rival;What is it now? You assassin of joy?@@" <<He npc_rival>> asks in obvious annoyance. "@@.npc_rival;Haven't enough things gone wrong?@@"<br>
<br>
The picture of professionalism, <<=setup.getNpcName("npc_manager","formal")>> somehow refrains from smiling in triumph "@@.npc_manager;I am merely the messenger. You are the <<=setup.getNpcName("npc_rival","custom","Director")>>, after all. But I have just come from the 169th floor and <<=setup.getNpcName("npc_discipline","formal")>> and <<=setup.getNpcName("npc_development","formal")>> are in something of a standoff that only you really have the authority to address... unless you rather I brought this to <<=setup.getNpcName("npc_boss","formal")>>?@@"<br>
<br>
The mention of <<=ps(setup.getNpcName("npc_boss","formal"))>> name figuratively sobers <<=setup.getNpcName("npc_rival","formal")>> up as <<his npc_rival>> frustration turns to white-hot anger. "@@.npc_rival;Fine. I will deal with those two <<if $fetish.slurs>>bitches <</if>>if I have to whip both of their hides! And when I get back the two of us are going to have a very long talk about the state of the department you handed me!@@"<br>
<br>
<<He npc_rival>> turns for the door, but as <<he npc_rival>> storms past <<=setup.getNpcName("npc_manager","formal")>> her hand shoots out, wrapping around <<his npc_rival>> throat and stopping <<him npc_rival>> in <<his npc_rival>> tracks. <<He npc_rival>> glances over in surprise for a split second as if trying to figure out what is going on before she casually throws <<him npc_rival>> across the room to land in <<=ps(setup.getNpcName("npc_sissy_secretary","first"))>> chair.<br>
<br>
"@@.npc_rival;What are you—?@@" <<=setup.getNpcName("npc_rival","formal")>> starts to ask, but <<he npc_rival>> is unable to rise before <<=setup.getNpcName("npc_manager","formal")>> pushes <<him npc_rival>> back down and the chair's restraints snap closed.<br>
<br>
<<=ps(setup.getNpcName("npc_manager","formal"))>> mask disappears in favour of her "old" self, the more relaxed expression somehow even more intimidating than her arch-bitch facade.<br>
<br>
"@@.npc_manager;What I am doing is taking back my position — no more political talk and sucking up that you have been getting used to. You and I are going to get down to brass tacks... and to start with?@@" She grins slightly as she presses a button on the side of the chair. "@@.npc_manager;To start with, you can fuck yourself.@@"<br>
<br>
[<<moveTo "event_rival_destruction_3" 'Watch.' 1800>>]
</div>/*#
#desc: manager punishes rival
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_rival', 'formal')>> opens <<his npc_rival>> mouth to complain but <<he npc_rival>> is cut off by the facsimile of <<his npc_rival>> own cock being forced down <<his npc_rival>> throat by the chair. Wide-eyed <<he npc_rival>> howls into the gag to the accompaniment of ripping pants as an even larger likeness of <<him npc_rival>>self thrusts into <<his npc_rival>> rear.<br>
<br>
"@@.npc_manager;See, that is one of your failings — willing to dish it out, but so unable to take it. Hmm, I would not want you to miss out on the full experience.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> makes another adjustment to the chair and <<=setup.getNpcName('npc_rival', 'formal')>> shudders as you hear the dull sound of the vibrator kicking in and rattling through <<his npc_rival>> body.<br>
<br>
"@@.npc_manager;As even you have probably surmised by now... the days of you lording over this department are at an end, and I doubt anyone, from the other managers, to your poor assistant, to <<=setup.getNpcName('npc_boss', 'formal')>> <<him npc_boss>>self will miss your failure of a tenure.@@" <<=setup.getNpcName('npc_rival', 'formal')>> shock and pain turns to dread and fear as <<he npc_rival>> looks up from <<his npc_rival>> chair.<br>
<br>
"@@.npc_manager;You see... your ambition was one thing, but you made the two biggest mistakes there are — you came for me, and my position in the company, but most foolish of all... you harmed <<if $npc_manager.anger == 0 && $npc_manager.affection == 10>>something that I love<<elseif $npc_manager.anger < $npc_manager.affection>>my pet<<else>>my property<</if>>.@@"<br>
<br>
Your heart skips a beat at her words... and then another as she continues. "@@.npc_manager;And so — as the victim of your crimes... though perhaps not as much as your own assistant...@@" <<=setup.getNpcName('npc_manager', 'formal')>> adds with a nod towards <<=setup.getNpcName('npc_sissy_secretary', 'first')>>, the poor girl still sprawled out on the desk recovering from her spanking. "@@.npc_manager;I will allow <<=$player.first_name>> to determine your fate.@@"<br>
<br>
All eyes are on you, <<=setup.getNpcName('npc_rival', 'formal')>> looking fearful and desperate, <<=ps(setup.getNpcName('npc_manager', 'formal'))>> gaze matching her quiet, confident smile.<br>
<br>
[<<moveTo "event_rival_destruction_4" 'Perhaps the company could use another <<if $fetish.sissy>>SISSI <</if>>Secretary?' 1800 "<<set $npc_rival.flags.fate='secretary'>>">>]<br>
[<<moveTo "event_rival_destruction_4" '<<He npc_rival>> belongs in prison!' 1800 "<<set $npc_rival.flags.fate='jail'>>">>]<br>
[<<moveTo "event_rival_destruction_4" 'Make <<him npc_rival>> wallow in middle management.' 1800 "<<set $npc_rival.flags.fate='management'>>">>]<br>
[<<moveTo "event_rival_destruction_4" 'Perhaps <<=setup.getNpcName("npc_psychiatrist", "formal")>> can "help" <<him npc_rival>>?' 1800 "<<set $npc_rival.flags.fate='psych'>>">>]<br>
[<<moveTo "event_rival_destruction_4" 'Turn <<him npc_rival>> over to <<=setup.getNpcName("npc_work_doctor", "formal")>>.' 1800 "<<set $npc_rival.flags.fate='doctor'>>">>]
</div>/*##desc: decide rival fate
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_rival', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<switch $npc_rival.flags.fate>>
<<case 'secretary'>>
You try to match <<=ps(setup.getNpcName('npc_manager', 'formal'))>> self-satisfied smile as you note that the company can always use another obedient <<if $fetish.sissy>>SISSI <</if>>Secretary... and it really is the best way to "make up" for what <<=ps(setup.getNpcName('npc_rival', 'formal'))>> mistakes have cost the company...<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> grins with pride. "@@.npc_manager;You really are my finest creation... and just a little bit of a monster.@@"
<<case 'jail'>>
You reply that <<=setup.getNpcName('npc_rival', 'formal')>> should be in prison and <<=setup.getNpcName('npc_manager', 'formal')>> nods. "@@.npc_manager;Harsh, but not incorrect. Security should be able to handle escorting you out of the building... and into police custody.@@"
<<case 'management'>>
You reply that <<=setup.getNpcName('npc_rival', 'formal')>> should be forced to languish in middle management as punishment for <<his npc_rival>> hubris.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> chuckles. "@@.npc_manager;Almost too kind, in my opinion... you really should thank Miss <<=$player.last_name>> sometime... well, you should thank a lot of people, gratitude is such an important tool for a manager, and one I do not believe I have ever seen you deploy in good faith.@@" She leans in closer. "@@.npc_manager;Just understand that I will be watching, and if you EVER step out of line, well... I will end far more than just your career. Do you understand?@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> gulps nervously and nods as best the cock in <<his npc_rival>> mouth allows.<br>
<br>
"@@.npc_manager;Good... good. I think a little more time in the chair will be good for you — <<=setup.getNpcName('npc_discipline', 'formal')>> will be by in a few hours to let you out, and relay the details of your new position.@@"
<<case 'psych'>>
You reply that <<=setup.getNpcName('npc_rival', 'formal')>> should be turned over to <<=setup.getNpcName('npc_psychiatrist', 'formal')>> to "fix." <br>
<br>
<<=ps(setup.getNpcName('npc_rival', 'formal'))>> expression is one of nervous fear but <<=setup.getNpcName('npc_manager', 'formal')>> merely chuckles. "@@.npc_manager;How astute... all your ambition and stress... time in therapy really is just what the doctor ordered. Or, what the doctor WILL order. She should be by in a few hours to collect you. I figure you deserve at least that long to enjoy your chair...@@"
<<case 'doctor'>>
You reply that <<=setup.getNpcName('npc_rival', 'formal')>> should be turned over to <<=setup.getNpcName('npc_work_doctor', 'formal')>> to "fix." <br>
<br>
<<=ps(setup.getNpcName('npc_rival', 'formal'))>> expression is one of petrified fear but <<=setup.getNpcName('npc_manager', 'formal')>> merely chuckles. "@@.npc_manager;A fitting fate... though one that will certainly need to be revised should <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>> time at the company come to its own end...@@" <<=setup.getNpcName('npc_manager', 'formal')>> turns to <<=setup.getNpcName('npc_rival', 'formal')>> with a cruel grin. "@@.npc_manager;I will give you a few hours to enjoy your chair and... reflect on the poor choices that brought you here. <<=setup.getNpcName('npc_work_doctor', 'formal')>> will want the time to brew up some special medication for you...@@"
<<default>>
ERROR: unexpected npc_rival.flags.fate <<=$npc_rival.flags.fate>>
<</switch>>
<br><br>
You blush and curtsy as <<=setup.getNpcName('npc_manager', 'formal')>> leans over to make some further adjustments to the chair, the VR headpiece easing into place and leading you into the inner office. "@@.npc_manager;That should keep you from getting bored. Now to get maintenance in here to put MY office back in order...@@"<br>
<br>
[<<moveTo "event_rival_destruction_5" 'Follow.' 600>>]
</div>/*#
#desc: manager back in charge
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.other_call = "Director">>
<<forceNpcTheme "npc_psychiatrist" "theme_betray_work_doctor_intro_1">>
<<removeWorkEvent "rival_stage5_visit">>
<<if $events.hasOwnProperty("bimbo_roulette")>>
<<removeEvent "bimbo_roulette">>
<</if>>
<<removeEvent 'elevator_home_stage5'>>
<<removeRandomEvent 'elevator_home' 'move_repeat_stage5'>>
<<if $npc_rival.flags.fate == "secretary">>
<<set _nextDate = setup.setNextDate($now, 14, 0, 0)>>
<<addWorkEvent "rival_feminized" _nextDate>>
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_npc_manager_rival')>>
<<set $npc_manager.themes.other_work[_themeId].repeatable = false>>
<<set $npc_rival.stage = 4>>
<<set _nextDate = setup.getNextDayOfWeek($now, 1, 0, 0, false)>>
<<addEvent 'manager_post_evil_power' _nextDate>>
<<include "checkDestroyLieutenantsTask">>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_manager', 'formal')>> leads the way into what is once again "her" office and takes a seat behind the large desk as <<=ps(setup.getNpcName('npc_ai', 'first'))>> hologram shimmers into existence.<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods to the both of you in turn. "@@.npc_manager;An important step. <<=setup.getNpcName('npc_boss', 'formal')>> will not be completely happy but... well, <<he npc_boss>> will hardly be surprised that removing my morals made me even more ambitious, and <<=setup.getNpcName('npc_rival', 'formal')>> was far from ready for such a promotion.@@"<br>
<br>
She runs a hand over the desk and smiles. "@@.npc_manager;I shall see you in the morning — enjoy the sleep of the just. Keep this up and this will all be over before long.@@"<br>
<br>
You nod and depart, leaving <<=setup.getNpcName('npc_manager', 'formal')>> and <<=setup.getNpcName('npc_ai', 'first')>> to their planning.<br>
<br>
[<<moveTo "company_lobby" 'Head down to the lobby.' 600>>]
</div>/*#
#desc: therapist preps you for destroying npc_work_doctor
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'work_doctor', 'theme_psychiatrist_company_doctor_intro')>>
<<if _themeId != -1>>
<<set $npc_psychiatrist.themes.work_doctor[_themeId].repeatable = false>>
<</if>>
<</if>>
<<addNpcTheme 'npc_psychiatrist' 'company' 'theme_psychiatrist_company_doctor_stop'
0
'event_betray_work_doctor_inform_1'
true
>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if State.hasPlayed("event_betray_work_doctor_7")>>
You bring up <<=setup.getNpcName("npc_work_doctor","formal")>> and <<=setup.getNpcName("npc_psychiatrist","formal")>> takes a deep breath, a wave of emotions washing over her before she responds.<br>
<br>
"@@.npc_psychiatrist;Gone and good riddance... to think I once considered <<him npc_work_doctor>> a colleague... well, I was young and foolish then... hopefully a bit less foolish now. That said, for all <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> evil deeds, <<he npc_work_doctor>> was mostly just a tool of <<=setup.getNpcName("npc_boss","formal")>>... for anyone to be safe, <<he npc_boss>> will need to be dealt with.@@" She shivers "@@.npc_psychiatrist;I shall do what I can to support... but how to take out a <<man npc_boss>> so powerful... I would recommend speaking with <<=setup.getNpcName("npc_manager","first")>> or that AI friend of yours...@@"
<<elseif State.hasPlayed("event_rival_destruction_5")>>
<<=setup.getNpcName("npc_psychiatrist","formal")>> takes a deep breath. "@@.npc_psychiatrist;So... I wanted to speak with you about <<=setup.getNpcName("npc_work_doctor","formal")>>. Obviously the root of the problem, no pun intended, eventually traces back to <<=setup.getNpcName("npc_boss","formal")>>, but coming at <<him npc_boss>> directly well... we saw how that worked out last time.@@" You wince as you reflect on the fallout from your attempt to sneak into <<=ps(setup.getNpcName("npc_boss","formal"))>> office. "@@.npc_psychiatrist;Taking out <<=setup.getNpcName("npc_work_doctor","formal")>> will be a more methodical step towards the final goal plus... well, I don't have to explain to you how satisfying I would find getting rid of that <<man npc_work_doctor>>.@@"<br>
<br>
You nod and ask what she has in mind.<br>
<br>
<<if $npc_work_doctor.flags.aphrodisiac.stage > 0>>
"@@.npc_psychiatrist;If you think you've managed to sabotage <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> aphrodisiac sufficiently... well, then it's time to make our move.@@"
<<elseif State.hasPlayed("event_work_doctor_help_root")>>
"@@.npc_psychiatrist;You've been building <<his npc_work_doctor>> trust, and that's good... now you need to take things a step further. <<He npc_work_doctor>>'s working on a new aphrodisiac to be part of the company's ongoing plans... you need to sabotage it, removing <<him npc_work_doctor>> without dealing with it will leave us with an even more dangerous situation — <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> perfectionism on this project is providing a much-needed delay.@@"
<<else>>
"@@.npc_psychiatrist;You are going to need to build <<his npc_work_doctor>> trust — which means going along with what <<he npc_work_doctor>> expects from you, mindless bimbo submission, then from there work with <<him npc_work_doctor>>. <<He npc_work_doctor>> has a thing for schoolgirls, so I recommend wearing something in that vicinity when you make your request.@@"
<</if>>
<br><br>
"@@.npc_psychiatrist;When you have things ready, let me know, and we can make our move.@@"
<<else>>
"@@.npc_psychiatrist;As much as I would like to deal with <<him npc_work_doctor>>... <<his npc_work_doctor>> is too closely aligned with <<=setup.getNpcName("npc_rival","formal")>>, I do not believe we can safely remove <<=setup.getNpcName("npc_work_doctor","formal")>> until the new so-called Director has been taken out of the equation.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 600>>
</div>/*#
#desc: tell npc_psychiatrist you're ready to take down npc_doctor
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
You tell <<=setup.getNpcName("npc_psychiatrist","formal")>> that you're ready to take care of <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<<if !State.hasPlayed("event_rival_destruction_5")>>
"@@.npc_psychiatrist;Excellent... only, well... while <<=setup.getNpcName("npc_work_doctor","formal")>> certainly lacks for what one might call friends, <<he npc_work_doctor>> has positioned <<him npc_work_doctor>>self in alliance with <<=setup.getNpcName("npc_rival","formal")>>. You should deal with <<him npc_rival>> first lest <<he npc_rival>> use the power of <<his npc_rival>> directorship to poke around and cause trouble.@@"<br>
<br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<<elseif $npc_work_doctor.flags.aphrodisiac.stage > 0>>
She nods. "@@.npc_psychiatrist;Alright... I hope you've taken care of <<his npc_work_doctor>> aphrodisiac project.@@"<br>
<br>
[<<moveTo "event_betray_work_doctor_inform_2" "You have, and you're ready." 180 "<<set $scene.ready=true>>">>]<br>
[<<moveTo "event_betray_work_doctor_inform_2" "Actually... you still have some work to do." 180 "<<set $scene.ready=true>>">>]
<<else>>
She shakes her head.
<<if State.hasPlayed("event_work_doctor_help_root")>>
She shakes her head, "@@.npc_psychiatrist;I told you about <<his npc_work_doctor>> aphrodisiac project. You have to do something about that before it's safe to proceed.@@"
<<else>>
"@@.npc_psychiatrist;I said before, you need to build <<his npc_work_doctor>> trust first. If we come at <<him npc_work_doctor>> abruptly it won't work. <<He npc_work_doctor>> may have <<his npc_work_doctor>> flaws, but <<he npc_work_doctor>> isn't a total idiot.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
<</if>>
</div>/*#
#desc: discuss how to take down npc_doctor
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.ready>>
<<set _themeId = setup.findThemeId('npc_psychiatrist', 'company', 'theme_psychiatrist_company_doctor_stop')>>
<<set $npc_psychiatrist.themes.company[_themeId].repeatable = false>>
<<addEvent 'event_work_doctor_final'>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_psychiatrist', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/psychiatrist_office.png" setup.charImage("npc_psychiatrist")>>
<div id="invframe" class="scrolltext">
<<if $scene.ready>>
You nod, you're ready to take down <<=setup.getNpcName("npc_work_doctor","formal")>>, and in so doing free <<=setup.getNpcName("npc_psychiatrist","formal")>> from <<his npc_work_doctor>> control.<br>
<br>
"@@.npc_psychiatrist;Thank you for the consideration but... I will endure what I need to make sure things happen properly. It is the least I can do as a form of penance...@@" Her voice trails off for a moment. "@@.npc_psychiatrist;I will put things in motion, and we shall see what happens.@@"
<<else>>
Thinking a moment further, you decide that you aren't quite ready to take down <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> grimaces slightly, then smiles as you remember that she's stuck playing the part of <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> bimbo assistant. "@@.npc_psychiatrist;I see... well it is best that we make sure everything is ready rather than go off half-cocked. Let me know when you have dealt with <<his npc_work_doctor>> aphrodisiac and the coast is clear to make our move.@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_psychiatrist' 150>>
</div>/*#
#desc: npc_work_doctor summons you on the way home from work
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentcall = true>>
<</if>>
<<set $player.location = 'Phonecall'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
You've just entered the elevator when you get a message on your phone — it's a summons from <<=setup.getNpcName("npc_work_doctor","formal")>>. It seems <<he npc_work_doctor>> has a special procedure <<he npc_work_doctor>> needs your help with.<br>
<br>
You glance up from your phone to find that the elevator has automatically changed its destination to <<his npc_work_doctor>> laboratory floor...<br>
<br>
[<<moveTo "event_betray_work_doctor_2" "Continue." 180 "<<set $currentcall=false>>">>]
</div>/*#
#desc: npc_work_doctor introduces special treatment for psychiatrist/barista
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You walk into <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> office to find <<him npc_work_doctor>> just finishing double checking the restraints for <<=setup.getNpcName("npc_psychiatrist","formal")>> and <<=setup.getNpcName("npc_barista","nickname")>> — each woman strapped to a separate padded angled table. Somewhat surprisingly... both women lack their normal drug-assisted artificial happiness and instead appear quite panicked.<br>
<br>
Both women's complaints stifled by their large gags, it isn't until <<=setup.getNpcName("npc_work_doctor","formal")>> turns away from them to greet you that <<=setup.getNpcName("npc_psychiatrist","formal")>> locks eyes with you, her expression shifting to confirm that she's putting on an act and that this is part of the "plan." <br>
<br>
"@@.npc_work_doctor;Welcome, welcome!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> states with the manic grin that you have come to associate with <<him npc_work_doctor>> when <<he npc_work_doctor>> gets particularly excited about a procedure.<br>
<br>
"@@.npc_work_doctor;Today is a wonderful day indeed. You see I have just finished a full system purge for both of these lovely test subjects. I like to do this periodically to monitor lingering long-term effects, as well as to confirm that they are not building up unexpected tolerance to their medication.@@" <<His npc_work_doctor>> grin gets even wider as <<he npc_work_doctor>> looks down at <<=setup.getNpcName("npc_psychiatrist","formal")>> while the later glares back at <<him npc_work_doctor>>. "@@.npc_work_doctor;And, well... in this one's case it's quite the delight to see that look in her eyes as she remembers what I've done to her... and know that this is but a brief reprieve of mental acuity before I blast away that rebellious intelligence and turn her back into my obedient bimbo nurse, once again...@@"<br>
<br>
<<He npc_work_doctor>> chuckles and brushes her cheek as she strains against the restraints. "@@.npc_work_doctor;Not so dismissive of the power of medication, now, are you?@@" <<=setup.getNpcName("npc_work_doctor","formal")>> laughs, clearly enjoying <<his npc_work_doctor>> villain monologue opportunity. "@@.npc_work_doctor;There there, my dear. You'll be back to begging to serve my cock soon enough...@@"<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> yells into her gag and <<=setup.getNpcName("npc_work_doctor","formal")>> chuckles, "@@.npc_work_doctor;Not that I did not enjoy the way you fought when I fucked you earlier... though I daresay you looked even more enraged when I did your friend here... I think I will really enjoy the contrast when I have you drugged up and the pair of you can make up for that prior obstinance...@@"<br>
<br>
[<<moveTo "event_betray_work_doctor_3" "Continue." 180>>]
</div>/*#
#desc: npc_work_doctor tells you to "do the thing"
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
You shudder as <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> attention returns to yourself. "@@.npc_work_doctor;Sorry about that distraction, the reason I wanted you here to appreciate the fruits of your labours. You see I will be administering a special new blend, incorporating the aphrodisiac you have been assisting me with perfecting along with some of my other serums... if things go as well as I anticipate this could be the harbinger for a great step forward for our employee pharmaceutical program, a real "one-size-cures-all" to enhance morale and ensure obedience...@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> gestures towards a control panel. "@@.npc_work_doctor;I will give you the honour of pulling the lever, as it were. I need to be able to focus all of my attention on how the new drug affects its subjects...@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> turns away from you, <<his npc_work_doctor>> attention focused on <<his npc_work_doctor>> helplessly bound subjects. "@@.npc_work_doctor;Do the thing, <<=$player.first_name>>.@@"<br>
<br>
You glance over at the "control panel" — not a lever but a touch-screen interface.<br>
<br>
<<printThought "This is my chance...">><br>
<br>
[<<moveTo "event_betray_work_doctor_4" 'Press the button to administer the drugs.' 180 "<<set $scene.action='drug'>>">>]<br>
[<<moveTo "event_betray_work_doctor_4" 'Hit the button marked "emergency patient release".' 180 "<<set $scene.action='free'>>">>]<br>
<<if setup.getTotalValue("martial_arts") > 10 && setup.getTotalValue("strength") > 15 || setup.getTotalValue("martial_arts") > 15 || setup.getTotalValue("strength") >= 20>>
[<<moveTo "event_betray_work_doctor_4_punch" "Why complicate things? Just punch the asshole." 180 "<<set $scene.action='punch'>>">>]
<<else>>
[@@.link_locked;You consider attacking <<=setup.getNpcName("npc_work_doctor","formal")>> while <<his npc_work_doctor>> back is turned, but do not have enough confidence in your strength or combat skill.@@]
<</if>>
</div>/*#
#desc: administer drug/free punch npc_work_doctor
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<if setup.getTotalValue("martial_arts") >= 20 && setup.getTotalValue("strength") >= 20>>
With a blend of overwhelming power and picture-perfect technique you drop <<=setup.getNpcName("npc_work_doctor","formal")>> with a single bone-crunching punch.
<<elseif setup.getTotalValue("martial_arts") > 15>>
What you lack in strength you make up for with near-perfect technique as you drop <<=setup.getNpcName("npc_work_doctor","formal")>> with a laser-precise rabbit punch.
<<elseif setup.getTotalValue("strength") >= 20>>
What you lack in finesse you make up for with brute force, your clumsy punch landing with hammer-force on the unexpecting doctor. <<=setup.getNpcName("npc_work_doctor","formal")>> drops to the floor, unconscious.
<<else>>
Combining precision and power you throw a heavy overhand blow that puts <<=setup.getNpcName("npc_work_doctor","formal")>> on the floor.
<</if>>
<br><br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> stops her feigned struggling and looks at you in surprise as you rush back to the control panel and press the "release" button.<br>
<br>
"@@.npc_psychiatrist;Well!@@" states after she has removed the gag and stepped out of the restraints. "@@.npc_psychiatrist;All that planning and... I guess brawn beat brains, hmm?@@"<br>
<br>
She signals to the also-free <<=setup.getNpcName("npc_barista","nickname")>> and they lift <<=setup.getNpcName("npc_work_doctor","formal")>>, securing <<him npc_work_doctor>> in their recently-used restraints just in time for <<him npc_work_doctor>> to wake up.<br>
<br>
[<<moveTo "event_betray_work_doctor_6" "Continue." 180>>]
</div>/*#
#desc: administer drug/free friends npc_work_doctor
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "drug">>
Balking from the possible consequences of going against <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> instructions you press the button to administer drugs.<br>
<br>
<<if $npc_work_doctor.flags.aphrodisiac.drugStrength <= 3>>
You may have weakened the aphrodisiac, but that does nothing to the strength of the rest of the cocktail and watch <<=ps(setup.getNpcName("npc_psychiatrist","formal"))>> and <<=ps(setup.getNpcName("npc_barista","nickname"))>> struggles fade into a drugged stupor.
<<else>>
The combination of the strong aphrodisiac and the rest of the cocktail has <<=setup.getNpcName("npc_psychiatrist","formal")>> and <<=setup.getNpcName("npc_barista","nickname")>> straining anew at their bonds, their eyes glazed over and crazed with lust.
<</if>>
<br><br>
"@@.npc_work_doctor;Excellent, but not quite what I was aiming for.@@" <<He npc_work_doctor>> begins filling a syringe with a familiar blue liquid as <<he npc_work_doctor>> waves you off. "@@.npc_work_doctor;More study is needed, but I will be taking advantage of this opportunity. Always fun to take the proverbial virginity of a freshly broken slave... you may leave.@@"<br>
<br>
Still not wanting to draw <<his npc_work_doctor>> ire, even as you feel guilty for leaving your friends at <<his npc_work_doctor>> mercy, you leave the room as <<he npc_work_doctor>> shoots up and pulls out <<his npc_work_doctor>> drug-swelled <<getWordPenis "npc_work_doctor">>.<br>
<br>
<<printThought "It's okay, we can try again later...">><br>
<br>
[<<moveTo "company_lobby" "Leave." 600>>]
<<case "free">>
You press the "emergency patient release" button, causing <<=setup.getNpcName("npc_psychiatrist","formal")>> and <<=ps(setup.getNpcName("npc_barista","nickname"))>> restraints to click open. <<=setup.getNpcName("npc_work_doctor","formal")>> jolts in shock before the pair can fully extricate themselves from their bonds, retreating across the lab with a shout.<br>
<br>
"@@.npc_work_doctor;You fool! What have you done?@@"<br>
<br>
<<He npc_work_doctor>> glances frantically at you in confusion before grabbing a gas-mask and pulling a lever. "@@.npc_work_doctor;It's too soon to execute this, but you leave me no choice!@@"<br>
<br>
<<if State.hasPlayed("event_janitor_help_1")>>
[<<moveTo "event_betray_work_doctor_5_nogas_1" "Continue." 180>>]
<<else>>
Pink gas begins to flood the room as <<=setup.getNpcName("npc_work_doctor","formal")>> seals the mask over <<his npc_work_doctor>> head.<br>
<br>
<<if $npc_work_doctor.flags.aphrodisiac.drugStrength < 3>>
[<<moveTo "event_betray_work_doctor_6_weakdrug" "Continue." 180>>]
<<else>>
[<<moveTo "event_betray_work_doctor_5" "Continue." 180>>]
<</if>>
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: npc_work_doctor unleashes the gas
#status: RELEASED 0.9.2.0
#ignore_spell: pt,nbc
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _horny = $npc_work_doctor.flags.aphrodisiac.drugStrength * 10>>
<<changeHorny _horny>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_gasmask") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
The scent of the gas is immediately familiar to you as the aphrodisiac you have been "helping" <<him npc_work_doctor>> with.<br>
<br>
<<switch $npc_work_doctor.flags.aphrodisiac.drugStrength>>
<<case 3 4>>
You feel the effects of the drug kick in, your arousal rising... and the effects appear even more pronounced on your friends.<br>
<br>
You watch as <<=setup.getNpcName("npc_work_doctor","formal")>> manages to subdue your friends, the two women left writhing on the floor, grinding against each other as <<he npc_work_doctor>> looks down in triumph.
<<case 5 6>>
The strong aphrodisiac slams into you and even moreso your friends. You watch as their attacks become clumsy and un-coordinated, <<=setup.getNpcName("npc_work_doctor","formal")>> augmenting things with another of <<his npc_work_doctor>> concoctions to leave the two women writhing on the floor, grinding against each other as <<he npc_work_doctor>> looks down in triumph.
<<case 7 8>>
You are feeling VERY aroused. You need sex badly, and your friends seem in even worse shape, abandoning their attempted assault on <<=setup.getNpcName("npc_work_doctor","formal")>> in favour of falling into one anothers arms, grinding against one another on the floor as <<=setup.getNpcName("npc_work_doctor","formal")>> looks down in triumph.
<<case 9 10>>
You feel an overwhelming, unstoppable urge to fuck anything and everything... and a glance confirms that your friends feel the same, the two of them almost instantly falling into one another's arms, and then to the floor as they grope and grind uncontrollably. <<=setup.getNpcName("npc_work_doctor","formal")>> looks on in triumph.
<</switch>>
<br><br>
<<if $fetish.bestiality_hard && $npc_work_doctor.flags.aphrodisiac.stage >= 14 || !$fetish.bestiality_hard && $npc_work_doctor.flags.aphrodisiac.stage >= 5>>
As strong as the gas is... you've experienced it before and retain some level of function. Through the mists you can see <<=setup.getNpcName("npc_work_doctor","formal")>> gloating over <<his npc_work_doctor>> victims, unaware that you remain active...<br>
<br>
[<<moveTo "event_betray_work_doctor_6a" "Take <<him npc_work_doctor>> out!" 180>>]
<<elseif setup.getItemsInInventoryByFilter('tag', ['gasmask']).length > 0>>
<<set _gasmask = setup.getItemsInInventoryByFilter('tag', ['gasmask'])[0]>>
<<wearItem _gasmask true>>
Thinking quick you pull out a gas-mask of your own, your thoughts clearing as you realise that the pink fog has provided you with a bit of cover.<br>
<br>
Through the mists you can see <<=setup.getNpcName("npc_work_doctor","formal")>> gloating over <<his npc_work_doctor>> victims, unaware that you remain active...<br>
<br>
[<<moveTo "event_betray_work_doctor_6a" "Take <<him npc_work_doctor>> out!" 180>>]
<<elseif setup.checkItemInInventory("pt_belt")>>
<<wearItem "pt_belt" true>>
You may have forgotten proper NBC protection... but you have something even better. With your trusty PT belt glittering around your waist, like the magic item of legend it is, the effects of the gas fade away.<br>
<br>
Through the mists you can see <<=setup.getNpcName("npc_work_doctor","formal")>> gloating over <<his npc_work_doctor>> victims, unaware that you remain active...<br>
<br>
[<<moveTo "event_betray_work_doctor_6a" "Take <<him npc_work_doctor>> out!" 180>>]
<<else>>
You find yourself on the floor, eager to make out with your friends... until <<=setup.getNpcName("npc_work_doctor","formal")>> steps out of the wonderful pink mists to stand over you, <<his npc_work_doctor>> engorged <<getWordPenis "npc_work_doctor">> in hand...<br>
<br>
Your last thought before you join the three-way rush to sate your eager cock-lust is that you have lost everything...<br>
<br>
<<printThought "Teehee! Lost inhibitions, but those, like, sucked anyway!">><br>
<br>
[<<moveTo "bad_end_betray_work_doctor" "Continue..." 180>>]
<</if>>
</div>/*#
#desc: npc_work_doctor fails to unleash the gas
#status: RELEASED 0.9.3.0
#ignore_spell: hvac
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_gasmask") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_work_doctor","formal")>> is so busy putting on a gas mask that <<he npc_work_doctor>> doesn't notice that nothing is happening, <<=setup.getNpcName("npc_work_doctor","formal")>> having fixed the hvac sabotage that <<=setup.getNpcName("npc_work_doctor","formal")>> performed... and clearing the way for <<=setup.getNpcName("npc_psychiatrist","formal")>> and <<=setup.getNpcName("npc_barista","nickname")>> to advance on unimpeded.<br>
<br>A look of shocked confusion on <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> face is visible even through the mask as the two women have <<him npc_work_doctor>> swiftly overpowered and subdued.<br>
<br>
[<<moveTo "event_betray_work_doctor_5_nogas_2" "Continue." 180>>]
</div>/*#
#desc: npc_work_doctor fails to unleash the gas
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_gasmask") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
"@@.npc_work_doctor;What? How could you?! This was to be my greatest triumph!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> further objections are stifled by a gag as <<he npc_work_doctor>> is dragged back to the restraints and locked in the position that moments before held <<his npc_work_doctor>> would-be victims.<br>
<br>
It is <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> turn to struggle against unyielding restraints... only for <<=setup.getNpcName("npc_barista","nickname")>> to hook <<him npc_work_doctor>> up to one of the machines. As the drugs pump into <<his npc_work_doctor>> veins <<he npc_work_doctor>> gets calm, and then even more frantic, <<his npc_work_doctor>> pants tearing as <<his npc_work_doctor>> <<getWordPenis "npc_work_doctor">> springs forth and <<he npc_work_doctor>> humps the air and gasps around the gag.<br>
<br>
"@@.npc_psychiatrist;You know... if <<he npc_work_doctor>> keeps up like that for much longer <<he npc_work_doctor>>'s liable to have a heart attack... the human body was not meant for... that.@@"<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> shrugs as she watches on and <<=setup.getNpcName("npc_psychiatrist","formal")>> turns to you. "@@.npc_psychiatrist;Well? Did you have a different fate in mind?@@"<br>
<br>
[<<moveTo "event_betray_work_doctor_7" 'No, the world will be better without <<=setup.getNpcName("npc_work_doctor","formal")>> in it.' 1800 "<<set $npc_work_doctor.flags.fate='kill'>>">>]<br>
[<<moveTo "event_betray_work_doctor_7" '<<He npc_work_doctor>> should rot in jail for <<his npc_work_doctor>> crimes.' 1800 "<<set $npc_work_doctor.flags.fate='jail'>>">>]<br>
[<<moveTo "event_betray_work_doctor_7" 'This is the easy way out, <<he npc_work_doctor>> should be subject to what <<he npc_work_doctor>> was inflicting on others.' 1800 "<<set $npc_work_doctor.flags.fate='bimbo'>>">>]
</div>/*#
#desc: succumb to npc_work_doctor gas
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "">>
<<set $gameOver = 'twig_gas'>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/scenes/gameover.png">>
<div id="invframe" class="scrolltext">
You are overcome by the gas... and deliriously happy about said fact. Distantly, you are aware that time passes, that you and your two fellow drugged bimbos are presented to, like, some really important people as "proof" of <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> formula, but you're too busy enjoying <<=ps(setup.getNpcName('npc_boss','formal'))>> <<getWordPenis "npc_boss">> to care about such things.<br>
<br>
Sex, obedience... soon that is the whole of your life, and what could be better? Nothing. Which is why it comes as little surprise to you that the numbers of your fellow corporate bimbos soon swells, all of you enjoying the mindless pink bliss that is your joyful duty to the company...<br>
<br>
<<hint $options "If you're stuck, consider going along with <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> plans until you can return later and more prepared">><br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: subdue npc_work_doctor after he unleashes powerful gas
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy")>>
<div id="invframe" class="scrolltext">
Moving through the mists you grab the nearest heavy object as you sneak around behind <<=setup.getNpcName("npc_work_doctor","formal")>>.<br>
<br>
<<He npc_work_doctor>> doesn't even see you coming as you conk <<him npc_work_doctor>> in the back of the head and <<he npc_work_doctor>> crumples to the ground. Looking at the machine <<he npc_work_doctor>> was standing next to, you note that there are two options — stop dispensing... or re-route the rest of <<his npc_work_doctor>>... quite substantial stores into the building's ventilation system...<br>
<br>
<<printThought "Was this <<his npc_work_doctor>> plan? To turn everyone into lust-addicted bimbo slaves?">><br>
<br>
[<<moveTo "event_betray_work_doctor_6b" "Turn off the gas." 600>>]<br>
[<<moveTo "bad_end_gas_1" "Pink bliss for everyone!" 600>>]
</div>/*#
#desc: turn off the gas
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
With the gas turned off, and fans working quickly to freshen the air, your friends start to come to.<br>
<br>
"@@.npc_psychiatrist;I thought you said you dealt with <<his npc_work_doctor>> aphrodisiac?@@" <<=setup.getNpcName("npc_psychiatrist","formal")>> asks, still flush and breathless as she gets back to her feet. "@@.npc_psychiatrist;I guess it's lucky you <<if setup.checkItemTypeTag('hood', ['gasmask']) || setup.checkItemInInventory("pt_belt")>>came prepared<<else>>seem to be immune<</if>>@@" She adds before she and <<=setup.getNpcName("npc_barista","nickname")>> drag the still unconscious <<=setup.getNpcName("npc_work_doctor","formal")>> over to the restraints and secure <<him npc_work_doctor>>.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> turns to you. "@@.npc_psychiatrist;Well done... now... what should we do with <<him npc_work_doctor>>?@@"<br>
<br>
[<<moveTo "event_betray_work_doctor_7" 'No, the world will be better without <<=setup.getNpcName("npc_work_doctor","formal")>> in it.' 1800 "<<set $npc_work_doctor.flags.fate='kill'>>">>]<br>
[<<moveTo "event_betray_work_doctor_7" '<<He npc_work_doctor>> should rot in jail for <<his npc_work_doctor>> crimes.' 1800 "<<set $npc_work_doctor.flags.fate='jail'>>">>]<br>
[<<moveTo "event_betray_work_doctor_7" 'This is the easy way out, <<he npc_work_doctor>> should be subject to what <<he npc_work_doctor>> was inflicting on others.' 1800 "<<set $npc_work_doctor.flags.fate='bimbo'>>">>]
</div>/*#
#desc: unleash gas on the company
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "">>
<<include playerMenuLocked>>
<<createAdvBGR "./images/scenes/gameover.png">>
<div id="invframe" class="scrolltext">
Maybe you inhaled too much of the gas already... or maybe you'd just rather live in a world of pink bimbo bliss. But, whatever the reason, you put <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> full plan into motion, air-pumps working double-time to flood the entire building with <<his npc_work_doctor>> pink concoction.<br>
<br>
Taking a deep breath you leave the lab and walk the halls, watching fellow employees succumb to the potent drugs, the veneer of respectability that at least colours the public areas of the company torn completely away as everyone fucks in the open, the gas simultaneously hyper-feminising with each orgasm, seemingly transforming everyone you see into mindless bimbo sluts, writhing and moaning, fucking and sucking in the absence of someone to command them...<br>
<br>
[<<moveTo "bad_end_gas_2" "Continue." 600>>]
</div>/*#
#desc: unleash gas on the company
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "">>
<<set $gameOver = 'pink_gas'>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/scenes/gameover.png">>
<div id="invframe" class="scrolltext">
Two weeks later.<br>
<br>
It took a combination of all the Valkyrie units plus military intervention to eventually bring the headquarters of Social Interaction Service Syndicate Inc. back under control. The "cover story" of a gas leak was as accurate as it was a lie... though nobody without proper clearance would ever know, the company's corporate competitors swooping in to dice up the remaining assets while government scientists work to refine the remaining samples of the gas for combat applications. As for the victims of the gas... they are written off as lost, and then sold off, too bimbo-brainwashed to even care.<br>
<br>
<<hint $options "If you're stuck, consider going along with <<=ps(setup.getNpcName('npc_work_doctor','formal'))>> plans until you can return later, more prepared">><br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: npc_psychiatrist and npc_barista take revenge on npc_work_doctor
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> "triumph" is short-lived as, while the gas certainly fills the room with a cloudy pink haze
<<switch $npc_work_doctor.flags.aphrodisiac.drugStrength>>
<<case 0>>
it does not impede <<=setup.getNpcName("npc_psychiatrist","formal")>> or <<=ps(setup.getNpcName("npc_barista","nickname"))>> advance in the slightest.
<<case 1 2>>
your efforts have weakened the aphrodisiac to the point that you feel but the barest hint of arousal, your friends even less afflicted as their desire for revenge outweighs any drug-induced lust as they work together to swiftly subdue the shocked doctor.
<</switch>>
<br><br>
"@@.npc_work_doctor;What? How could you?! This was to be my greatest triumph!@@" <<=setup.getNpcName("npc_work_doctor","formal")>> further objections are stifled by a gag as <<he npc_work_doctor>> is dragged back to the restraints and locked in the position that moments before held <<his npc_work_doctor>> would-be victims. The gas dispenser is swiftly disabled and fans soon clean the room as <<=setup.getNpcName("npc_work_doctor","formal")>> looks back in shocked fear.<br>
<br>
It is <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> turn to struggle against unyielding restraints... only for <<=setup.getNpcName("npc_barista","nickname")>> to hook <<him npc_work_doctor>> up to one of the machines. As the drugs pump into <<his npc_work_doctor>> veins <<he npc_work_doctor>> gets calm, and then even more frantic, <<his npc_work_doctor>> pants tearing as <<his npc_work_doctor>> <<getWordPenis "npc_work_doctor">> springs forth and <<he npc_work_doctor>> humps the air and gasps around the gag.<br>
<br>
"@@.npc_psychiatrist;You know... if <<he npc_work_doctor>> keeps up like that for much longer <<he npc_work_doctor>>'s liable to have a heart attack... the human body was not meant for... that.@@"<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> shrugs as she watches on and <<=setup.getNpcName("npc_psychiatrist","formal")>> turns to you. "@@.npc_psychiatrist;Well? Did you have a different fate in mind?@@"<br>
<br>
[<<moveTo "event_betray_work_doctor_7" 'No, the world will be better without <<=setup.getNpcName("npc_work_doctor","formal")>> in it.' 1800 "<<set $npc_work_doctor.flags.fate='kill'>>">>]<br>
[<<moveTo "event_betray_work_doctor_7" '<<He npc_work_doctor>> should rot in jail for <<his npc_work_doctor>> crimes.' 1800 "<<set $npc_work_doctor.flags.fate='jail'>>">>]<br>
[<<moveTo "event_betray_work_doctor_7" 'This is the easy way out, <<he npc_work_doctor>> should be subject to what <<he npc_work_doctor>> was inflicting on others.' 1800 "<<set $npc_work_doctor.flags.fate='bimbo'>>">>]
</div>/*#
#desc: npc_psychiatrist and npc_barista take revenge on npc_work_doctor
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
It is <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> turn to struggle against unyielding restraints... only for <<=setup.getNpcName("npc_barista","nickname")>> to hook <<him npc_work_doctor>> up to one of the machines. As the drugs pump into <<his npc_work_doctor>> veins <<he npc_work_doctor>> gets calm, and then even more frantic, <<his npc_work_doctor>> pants tearing as <<he npc_work_doctor>> humps the air and gasps around the gag.<br>
<br>
"@@.npc_psychiatrist;You know... if <<he npc_work_doctor>> keeps up like that for much longer <<he npc_work_doctor>>'s liable to have a heart attack... the human body was not meant for... that.@@"<br>
<br>
<<=setup.getNpcName("npc_barista","nickname")>> shrugs as she watches on and <<=setup.getNpcName("npc_psychiatrist","formal")>> turns to you. "@@.npc_psychiatrist;Well? Did you have a different fate in mind?@@"<br>
<br>
[<<moveTo "event_betray_work_doctor_7" 'No, the world will be better without <<=setup.getNpcName("npc_work_doctor","formal")>> in it.' 1800 "<<set $npc_work_doctor.flags.fate='kill'>>">>]<br>
[<<moveTo "event_betray_work_doctor_7" '<<He npc_work_doctor>> should rot in jail for <<his npc_work_doctor>> crimes.' 1800 "<<set $npc_work_doctor.flags.fate='jail'>>">>]<br>
[<<moveTo "event_betray_work_doctor_7" 'This is the easy way out, <<he npc_work_doctor>> should be subject to what <<he npc_work_doctor>> was inflicting on others.' 1800 "<<set $npc_work_doctor.flags.fate='bimbo'>>">>]
</div>/*#
#desc: determine npc_work_doctor fate
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $currentTasks.hasOwnProperty("event_doctor_reup")>>
<<deleteTask "event_doctor_reup">>
<</if>>
<<if $currentTasks.hasOwnProperty("event_doctor_training") && !$currentTasks.event_doctor_training.finished>>
<<deleteTask "event_doctor_training">>
<</if>>
<<removeForceNpcTheme "npc_psychiatrist" "theme_betray_work_doctor_intro_1">>
<<removeWorkEvent 'doctor_drug_visit'>>
<<include "checkDestroyLieutenantsTask">>
<</if>>
<<set $player.location to '<<=ps(setup.getNpcName("npc_work_doctor","formal"))>> Laboratory.'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/work_doctor_office.png" setup.charImage("npc_work_doctor","npc_work_doctor_crazy") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse") setup.charImage("npc_barista")>>
<div id="invframe" class="scrolltext">
<<switch $npc_work_doctor.flags.fate>>
<<case "kill">>
You watch in silence with <<=setup.getNpcName("npc_psychiatrist","formal")>> and <<=setup.getNpcName("npc_barista","first")>> as <<=setup.getNpcName("npc_work_doctor","formal")>> pants, moans, strains and howls through <<his npc_work_doctor>> gag, wide-eyed and cumming repeatedly until it is too much for <<his npc_work_doctor>> body to handle.<br>
<br>
Collapsing in <<his npc_work_doctor>> bonds the laboratory is silent save for the final flat-line from the monitoring machines.<br>
<br>
"@@.npc_psychiatrist;A more pleasant end than <<he npc_work_doctor>> perhaps deserved, but the end is the important thing.@@"<br>
<br>
She begins unstrapping <<=setup.getNpcName("npc_work_doctor","formal")>> from the restraints and arranging things to make <<his npc_work_doctor>> fate look like an "accident" — <<=setup.getNpcName("npc_ai","first")>> popping in to confirm that the video logs have been appropriately edited to remove all evidence that you or your friends were present for <<his npc_work_doctor>> "experiment gone wrong." <br>
<br>
Beyond matters of business none of you seem to have anything to say as you take a moment to resume your facades before leaving the laboratory.
<<case "jail">>
You reply that the just thing would be for <<=setup.getNpcName("npc_work_doctor","formal")>> to be sent to prison for <<his npc_work_doctor>> crimes.<br>
<br>
<<=setup.getNpcName("npc_psychiatrist","formal")>> seems amused, though she does stop the drugs. "@@.npc_psychiatrist;Well, well, a sense of justice... once again you find a way to surprise me with that lovely brain of yours...@@" She pauses and looks at <<=setup.getNpcName("npc_work_doctor","formal")>> as <<he npc_work_doctor>> goes limp. "@@.npc_psychiatrist;Unfortunately I do not think we could make a proper case at this juncture, and even if we could... it would tip our hands. Fortunately, however... the company has ways to put test subjects on ice... A little fudged paperwork and <<=setup.getNpcName("npc_work_doctor","formal")>> will be nice and safe in storage until we are done and it is time for <<him npc_work_doctor>> to stand trial.@@"<br>
<br>
You watch as <<=setup.getNpcName("npc_ai","first")>> appears to assist, <<=setup.getNpcName("npc_work_doctor","formal")>> soon re-packaged and boxed up before it's time for you to go.
<<case "bimbo">>
You reply that, after all that <<he npc_work_doctor>>'s done, the only proper fate for <<=setup.getNpcName("npc_work_doctor","formal")>> is what <<he npc_work_doctor>> has inflicted on so many others — to become a drugged-up, bimbofied slave.<br>
<br>
"@@.npc_psychiatrist;Yes... that would be appropriate.@@" She turns down the drugs and looks <<=setup.getNpcName("npc_work_doctor","formal")>> in the eye as <<he npc_work_doctor>> stares back in fear. "@@.npc_psychiatrist;You hear that? We're going to turn you into a happy, horny slut, but don't worry, I'll leave just enough of the original you so you can KNOW what's happened, even as you are helpless to do anything about it.@@" She chuckles and you feel a jolt of fear run down your spine, "@@.npc_psychiatrist;Your efforts with <<=setup.getNpcName("npc_barista","formal")>> were so clumsy but this... this will be perfection.@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> thrashes and tries to shout through <<his npc_work_doctor>> gag but the restraints hold as <<=setup.getNpcName("npc_psychiatrist","formal")>> adjusts the drugs. "@@.npc_psychiatrist;We will start the REAL work once we are back to my lab, but for now, well... A taste of your own medicine seems quite appropriate, a nice big dose of <<=setup.getItemName('drug_slave')>> is just what the doctor ordered to teach you some obedience...@@"<br>
<br>
As the drugs take hold <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> anger... and erection, fade. <<=setup.getNpcName("npc_barista","first")>> re-appears holding a freshly printed <<=setup.getItemName("sissyomatic")>> and <<=setup.getNpcName("npc_psychiatrist","formal")>> grins. "@@.npc_psychiatrist;Perfect, and our eager new slave should be quite compliant for the trip home... hmm?@@"<br>
<br>
<<=setup.getNpcName("npc_work_doctor","formal")>> nods obediently as <<=setup.getNpcName("npc_barista","first")>> sets to work; and <<=setup.getNpcName("npc_ai","first")>> appears to iron out some final details in relation to doctoring the tapes to cement <<=ps(setup.getNpcName("npc_work_doctor","formal"))>> total disappearance, and erase all evidence that the three of you were in any way involved.<br>
<br>
Things wrapping up, you excuse yourself to head home, taking direction from <<=setup.getNpcName("npc_ai","first")>> to make sure your route out of the building will not leave behind any additional loose ends.
<<default>>
ERROR: unexpected npc_work_doctor.flags.fate <<=$npc_work_doctor.flags.fate>>
<</switch>>
<br><br>
<<printThought "That's <<=setup.getNpcName('npc_work_doctor','formal')>> taken care of, but the greater threat of <<=setup.getNpcName('npc_boss','formal')>> yet remains...">> You think to yourself as you ride the elevator down to the lobby.<br>
<br>
[<<moveTo "company_lobby" 'Company lobby.' 600>>]
</div>/*#
#desc: stage 5 npc_rival visits
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_rival","formal")>> arrives, greeting you with a self-satisfied grin.
<<if $player.work.chair.gag == 'rival' && $player.work.chair.plug == 'rival' && ($player.work.chair.front == 'rival' || !$player.body_ref.vagina)>>
"@@.npc_rival;Enjoying the features of your chair? I am sure you are, you may not be working directly under me, but working stuffed by my magnificence must help assuage the disappointment.@@"
<<elseif $player.work.chair.gag == 'rival' || $player.work.chair.front == 'rival' || $player.work.chair.plug == 'rival'>>
"@@.npc_rival;Enjoying the features of your chair? I have been watching your selections and... well, it would seem you have developed quite an understandable addiction to my perfection.@@"
<<else>>
"@@.npc_rival;Working hard? I imagine you would find your day even more enjoyable if you had a stiff reminder of myself inside of you.@@"
<</if>>
<<He npc_rival>> chuckles, thrusting <<his npc_rival>> hips forward, your position such that you have little choice but to stare at <<his npc_rival>> bulge. "@@.npc_rival;If you could see the look in your eyes. You want me so bad, you cock-addicted slut, but, unfortunately for you, I am here for someone else.@@"<br>
<br>
<<He npc_rival>> continues past your desk and into the inner office, then leans back to look at you again. "@@.npc_rival;Actually... it would probably be valuable for you to witness this, come along.@@"<br>
<br>
[<<moveTo "event_stage5_rival_visit_2" "Follow <<him npc_rival>> into the inner office." 60>>]
</div>/*#
#desc: stage 5 npc_rival proposes sex with manager
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
"@@.npc_rival;So, <<=setup.getNpcName("npc_manager","other")>>@@" <<=setup.getNpcName("npc_rival","formal")>> states, emphasising her non-directorial title. "@@.npc_rival;Embracing your new responsibilities?@@"<br>
<br>
<<if $npc_manager.flags.evil == 1>>
<<=setup.getNpcName("npc_manager","formal")>> smiles and takes a sip of tea before she replies. "@@.npc_manager;Of course, <<=setup.getNpcName("npc_rival","formal")>>.@@"<br>
<br>
You reflexively wince, the sight of <<=setup.getNpcName("npc_manager","formal")>> showing such deferential submission... especially to someone like <<=setup.getNpcName("npc_rival","formal")>> feels alien and wrong.
<<else>>
"@@.npc_manager;Of course, <<=setup.getNpcName("npc_rival","formal")>>.@@" <<=setup.getNpcName("npc_manager","formal")>> states with an artificial smile.<br>
<br>
You can't help but shudder slightly at the thought of what <<=setup.getNpcName("npc_manager","formal")>> is liable to do to <<=setup.getNpcName("npc_rival","formal")>> once she isn't forced to keep up the facade of brain-washed loyalty.
<</if>>
<br><br>
<<=setup.getNpcName("npc_rival","formal")>> chuckles, clearly reveling in <<his npc_rival>> power over <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_rival;How is your chastity belt feeling? I bet you've been thinking about me all week, wondering if your performance would be sufficient to earn my blessing you with release...@@"<br>
<br>
Your eyes go wide at the thought of <<him npc_rival>> fucking your <<=setup.getNpcName("npc_manager","title")>>... and her being locked in chastity!<br>
<br>
[<<moveTo "event_stage5_rival_visit_3" "Offer yourself in her stead." 600 "<<set $scene.action='volunteer'>>">>]<br>
<<if $npc_admin.flags.monogomous_manager>>
[<<moveTo "event_stage5_rival_visit_3" "Make up some reason that she needs to get back to work." 600 "<<set $scene.action='distract'>>">>]<br>
<</if>>
[<<moveTo "event_stage5_rival_visit_3" "Quietly watch." 600 "<<set $scene.action='watch'>>">>]
</div>/*#
#desc: stage 5 npc_rival sex
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'volunteer'>>
<<if $npc_manager.flags.evil == 2 && $npc_admin.flags.monogomous_manager>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<</if>>
<<case 'distract'>>
<<if $npc_manager.flags.evil == 2>>
<<applyExperience 'bdsm' 16 'unbelievable' $SEEN_STRANGER>>
<<incrementEmotion 'affection' 'npc_manager' 5>>
<<else>>
<<applyExperience 'bdsm' 20 'unbelievable' $SEEN_STRANGER>>
<</if>>
<</switch>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'volunteer'>>
You speak up and offer to take <<=ps(setup.getNpcName('npc_manager', 'formal'))>> place<<if $npc_manager.flags.evil == 1>> as she glares at you<</if>>.<br>
<br>
<<if $npc_admin.flags.monogomous_manager>>
<<=setup.getNpcName("npc_rival","formal")>> chuckles in amusement. "@@.npc_rival;Aww, isn't that cute — your <<if $fetish.sissy>>sissy<<else>>slut<</if>> fancies themselves a bit of a white knight! Well I would not want to come between a <<if $fetish.sissy>>sissy<<else>>slave<</if>> and their owner, but I did want to re-enforce our hierarchy, don't want you thinking about how you used to be in the director's chair, hmm?@@"<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> looks at <<=setup.getNpcName('npc_manager', 'formal')>> with a cruel grin on <<his npc_rival>> face. "@@.npc_rival;Bow... no, kneel. That's right, show who your <<Master npc_rival>> is... now kiss my feet and tell me how you feel about serving me.@@"<br>
<br>
Your stomach clenches as you watch <<=setup.getNpcName('npc_manager', 'formal')>> obey, all the way on her knees she leans in to kiss <<his npc_rival>> feet and whisper softly.<br>
<br>
"@@.npc_manager;I am your humble servant, of course.@@"<br>
<br>
"@@.npc_rival;That's right,@@" <<=setup.getNpcName("npc_rival","formal")>> grunts, "@@.npc_rival;You resisted for so long, pretending you were better than me, but you weren't. You're just another dumb bitch, but you know your place now, isn't that right?@@"<br>
<br>
<<if $npc_manager.flags.evil == 2>>
You marvel <<=ps(setup.getNpcName('npc_manager', 'formal'))>> self control as she resists the urge to rip <<=ps(setup.getNpcName("npc_rival","formal"))>> foot off and beat <<him npc_rival>> with it... as you know she has the strength to do. "@@.npc_manager;Of course, <<=setup.getNpcName("npc_rival","formal")>>. I am just grateful you allow me to continue to serve in your wonderful department.@@"
<<else>>
You marvel at the strength of the drugs in the "tea" <<=setup.getNpcName('npc_manager', 'formal')>> is constantly drinking as she continues to kiss <<his npc_rival>> feet and reply "@@.npc_manager;Of course, <<sir npc_rival>>. I always knew I belonged at your feet, but I was a stupid bitch and I resisted taking my proper place in the world.@@"
<</if>>
<br><br>
<<=setup.getNpcName("npc_rival","formal")>> gasps and <<his npc_rival>> hips jerk as you realise <<he npc_rival>> just came in <<his npc_rival>> pants.<br>
<br>
"@@.npc_rival;Yes, well... I think that will do for today,@@" <<he npc_rival>> states breathlessly as <<he npc_rival>> retreats towards the door. "@@.npc_rival;Keep up the good work, the both of you.@@"<br>
<br>
<<if $npc_manager.flags.evil == 2>>
<<=setup.getNpcName('npc_manager', 'formal')>> rises to her feet and takes a deep breath. "@@.npc_manager;You know... I believe I hate <<him npc_rival>> now than I did before. From upstart little shit to power-mad asshole... please hurry with your gathering of allies — I cannot wait to put that bastard in <<his npc_rival>> proper place.@@"<br>
<br>
You nod nervously but <<=setup.getNpcName('npc_manager', 'formal')>> turns to you with a smile. "@@.npc_manager;That said, I do appreciate you saving me from <<him npc_rival>>. As frustrating as chastity is, <<he npc_rival>> is hardly the sort that I would wish to spread my legs for — on a personal and penile level.@@"<br>
<br>
You ask if there is anything else you can do for her but <<=setup.getNpcName('npc_manager', 'formal')>> shakes her head. "@@.npc_manager;Just keep working, I will handle keeping up the facade as long as it takes.@@"<br>
<br>
You nod and leave the room.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> remains on her knees even after <<he npc_rival>> has left, not even looking at you as she snaps a command. "@@.npc_manager;Get out of my sight — your stupid offer just robbed me of an orgasm. Thanks to your meddling I am stuck in this chastity belt for another day.@@"<br>
<br>
You hurry out of the room.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<else>>
<<=setup.getNpcName("npc_rival","formal")>> chuckles in amusement. "@@.npc_rival;Aww, are you jealous? You pathetic <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>, I can fuck you any time I want. <<=setup.getNpcName('npc_manager', 'formal')>> here eluded me for so long, but she knows her place now, don't you?@@"<br>
<br>
<<if $npc_manager.flags.evil == 1>>
<<=setup.getNpcName('npc_manager', 'formal')>> nods obediently. "@@.npc_manager;Of course, <<=setup.getNpcName('npc_rival', 'formal')>> — my place is under you, in all things.@@"
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> forces a smile. "@@.npc_manager;Of course, <<=setup.getNpcName('npc_rival', 'formal')>>. Which hole might I offer you today?@@"
<</if>>
<br><br>
"@@.npc_rival;Damn right,@@" <<he npc_rival>> says with a grin. "@@.npc_rival;Now spread those legs, I'm going to unlock that tight cunt of yours. I bet it's wet as a river in anticipation of my cock.@@"<br>
<br>
[<<moveTo "event_stage5_rival_visit_4" "Keep watching." 600>>]
<</if>>
<<case 'distract'>>
You raise the concern that, actually, <<=setup.getNpcName("npc_manager","formal")>> has an important meeting with <<=setup.getNpcName("npc_boss","formal")>> that she needs to prepare for...<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> glares at you in annoyance, <<his npc_rival>> cock half out of <<his npc_rival>> pants. "@@.npc_rival;That wasn't on the schedule!@@"<br>
<br>
You nervously reply that you made a mistake and didn't put it on the calendar properly, but that you just remembered it and, well... you don't want to upset <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_rival","formal")>> seems to be weighing the odds of calling your bluff versus risking <<=ps(setup.getNpcName("npc_boss","formal"))>> wrath, finally backing down and zipping up.<br>
<br>
"@@.npc_rival;Very well, but I think you need a punishment for messing up such a basic <<if $fetish.sissy>>SISSI <</if>>Secretary responsibility.@@"<br>
<br>
Before you can even brace yourself your <<if setup.checkItemTypeWorn("cage")>><<=setup.getItemTypeName("cage")>><<else>>plug<</if>> bursts with electric fire. The pain drives you to the floor and <<=setup.getNpcName("npc_rival","formal")>> unceremoniously steps over your writhing form.<br>
<br>
<<if $npc_manager.flags.evil == 2>>
As soon as the door closes <<=setup.getNpcName("npc_manager","formal")>> stops your electrified agony, rushing to your side and sitting you up.<br>
<br>
"@@.npc_manager;I am so sorry... you did not have to do that...@@"<br>
<br>
You smile up at her and reply that yes, you did...<br>
<br>
She looks lovingly down at you and then gently helps you back to your feet. "@@.npc_manager;Yes... I suppose you did... well, in any case, I appreciate it. Not that I enjoy being stuck in this damned chastity belt, but <<he npc_rival>> is hardly the sort that I would wish to spread my legs for — on a personal and penile level. <<He npc_rival>> is a disappointing <<man npc_rival>> in every way.@@"<br>
<br>
She spends a few more minutes making certain you are recovered before thanking you again and letting you go for the day.
<<else>>
You are still writhing in pain well after <<=setup.getNpcName("npc_rival","formal")>> has left the room. <<=setup.getNpcName("npc_manager","formal")>> eventually walking over and ending your torture while she looks down at you in annoyance.<br>
<br>
"@@.npc_manager;<<He npc_rival>> may be too blind to notice, but I can tell when you are lying. You just robbed me of a possible orgasm you dumb <<if $fetish.sissy>>sissy<<else>>slut<</if>> — but contradicting you would have only gotten me in further trouble for failing to control my slave.@@"<br>
<br>
She sneers... and then sends another agonising shock through your body. "@@.npc_manager;Get out of my sight.@@"<br>
<br>
You somehow manage to pull yourself to your feet and hurry out of the room.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<<case 'watch'>>
You watch as <<=setup.getNpcName("npc_rival","formal")>> leers at <<=setup.getNpcName("npc_manager","formal")>> and motions her towards the couch.<br>
<br>
"@@.npc_rival;Move lively, my dear. I bet you've been thinking about this moment all day — dripping inside your chastity belt at the thought of feeling my cock inside of you.@@"<br>
<br>
<<if $npc_manager.flags.evil == 2>>
"@@.npc_manager;But of course, <<=setup.getNpcName('npc_rival', 'formal')>>@@" <<=setup.getNpcName('npc_manager', 'formal')>>, expertly concealing her loathing as she walks towards the couch.
<<else>>
"@@.npc_manager;Of course, <<sir npc_rival>>. Other than my work it is all I can think of.@@" <<=setup.getNpcName('npc_manager', 'formal')>> replies with Stepford enthusiasm.
<</if>>
<br><br>
[<<moveTo "event_stage5_rival_visit_4" "Keep watching." 600>>]
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
</div>/*#
#desc: stage 5 npc_rival sex
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
You watch as <<=setup.getNpcName('npc_manager', 'formal')>> lays back on the couch and <<=setup.getNpcName('npc_rival', 'formal')>>, <<his npc_rival>> hands trembling, unlocks her chastity belt.<br>
<br>
You gasp at the sight of a large dildo slipping out of her... and the base of a second barely visible still lodged in her rear. Perhaps unsurprising is that the dildo bears a striking resemblance to the hard <<getWordPenis "npc_rival">> now unsheathed from <<=ps(setup.getNpcName('npc_rival', 'formal'))>> pants.<br>
<br>
"@@.npc_rival;You enjoy your occupants?@@" <<=setup.getNpcName('npc_rival', 'formal')>> states with a grin as <<he npc_rival>> gets into position.<br>
<br>
"@@.npc_manager;They are the only good thing about this chastity belt,@@" <<=setup.getNpcName('npc_manager', 'formal')>> replies. <<He npc_rival>> thrusts forward and <<=setup.getNpcName('npc_manager', 'formal')>> <<if $npc_manager.flags.evil == 2>>mock <</if>>gasps. "@@.npc_manager;Oh, but the real thing is so much better.@@"<br>
<br>
"@@.npc_rival;Damn right it is,@@" <<he npc_rival>> grunts in reply as <<he npc_rival>> starts humping.<br>
<br>
You want to look away but find yourself unable to do anything but watch as <<=setup.getNpcName('npc_rival', 'formal')>> fucks your <<=setup.getNpcName('npc_manager', 'title')>>.
<<if $npc_manager.flags.evil == 2>>
<<=setup.getNpcName('npc_manager', 'formal')>> catches your eye and you can see the boredom in her expression even as she keeps up a patter about how big <<he npc_rival>> is and how good <<he npc_rival>> feels.
<<else>>
She moans in pleasure, gasping about how good <<he npc_rival>> feels, and how big <<he npc_rival>> is.
<</if>>
<br><br>
<<=setup.getNpcName('npc_rival', 'formal')>> thrashes on top of <<=setup.getNpcName('npc_manager', 'formal')>> and cums not long after as she moans in mock orgasm.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> steps off with a grin on <<his npc_rival>> face, giving <<=setup.getNpcName('npc_manager', 'formal')>> a slap on the face that somehow doesn't result in <<his npc_rival>> decapitation. "@@.npc_rival;I didn't give you permission to cum! But I guess you just couldn't help it, me fucking you, while my silicone clone was stuffed in your ass.@@"<br>
<br>
"@@.npc_manager;No woman could!@@" She replies... far more breathless than their brief coupling could have reasonably left her "@@.npc_manager;oh, if only my duties did not require my voice, I would so love to be properly air-tight with your perfect magnificence!@@".<br>
<br>
<<if $fetish.cum>>
"@@.npc_rival;Damn right,@@" <<he npc_rival>> says with a grin as <<he npc_rival>> steps away. <<He npc_rival>> looks down, then back at you, "@@.npc_rival;Get over here, <<if $fetish.sissy>>sissy<<else>>slut<</if>>, and lick your <<=setup.getNpcName('npc_manager', 'title')>> clean.@@"<br>
<br>
[<<moveTo "event_stage5_rival_visit_5" "Do as you are commanded." 300 "<<set $scene.obey=true>>">>]<br>
[<<moveTo "event_stage5_rival_visit_5" "You aren't going to do that!" 300 "<<set $scene.obey=false>>">>]
<<else>>
<<His npc_rival>> interest in things clearly dropping now that <<he npc_rival>> has had <<his npc_rival>> pleasure <<=setup.getNpcName('npc_rival', 'formal')>> locks the dildo back inside <<=ps(setup.getNpcName('npc_manager', 'formal'))>> chastity belt and gives it a rap with <<his npc_rival>> knuckles. "@@.npc_rival;There, nice and safely locked. Now you keep performing and this will be a regular thing... fail... and I might just leave you locked empty.@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> laughs in amusement as <<he npc_rival>> leaves the room.<br>
<br>
<<if $npc_manager.flags.evil == 2>>
<<=setup.getNpcName('npc_manager', 'formal')>> grits her teeth as she stands back up. "@@.npc_manager;Well, I think I need a long shower. I am sorry you had to see that but... we all must endure until we are ready to make a move.@@" She nods in dismissal and you leave without saying anything further.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> glares at you as she walks back to her desk and pours another cup of tea. "@@.npc_manager;That will be all for today.@@" She notes sharply.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
<</if>>
</div>/*#
#desc: stage 5 npc_rival sex
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.obey>>
<<applyExperience 'cum' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'submission' 13 'normal' $SEEN_STRANGER>>
<<elseif $fetish.get_raped>>
<<applyExperience 'cum' 10 'normal' $SEEN_STRANGER>>
<<applyExperience 'bdsm' 15 'very' $SEEN_STRANGER>>
<<else>>
<<applyExperience 'humiliation' 15 'terrible' $SEEN_STRANGER>>
<</if>>
<<if $events.hasOwnProperty("bimbo_roulette") && !State.hasPlayed("event_bimbo_roulete_6")>>
<<set _nextDate = setup.setNextDate($now, 7, 0, 0)>>
<<addEvent "bimbo_roulette" _nextDate>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival")>>
<div id="invframe" class="scrolltext">
<<if $scene.obey>>
You dutifully crawl over and begin licking <<=setup.getNpcName('npc_manager', 'formal')>> clean.<br>
<br>
Though she keeps her face neutral, you can tell that your brief efforts with your tongue are giving her far more pleasure than <<=ps(setup.getNpcName('npc_rival', 'formal'))>> wild flailing... <<if $fetish.cum>><<his npc_rival>> salty flavour is almost completely overwhelmed by <<=ps(setup.getNpcName('npc_manager', 'formal'))>> far more potent taste, <<his npc_rival>> cream-pie more of a cream spoonful of cobbler <</if>>and it isn't long before <<he npc_rival>> is pulling you off by your hair.<br>
<br>
"@@.npc_rival;Careful there, you horny slut — you're just there to clean, not to set up camp!@@" <<He npc_rival>> laughs as <<he npc_rival>> pushes you to the floor and shoves the dildo back in place inside your <<=setup.getNpcName('npc_manager', 'title')>> before re-locking her chastity belt.
<<elseif $fetish.get_raped>>
When you don't move <<=ps(setup.getNpcName('npc_rival', 'formal'))>> eyes narrow.<br>
<br>
A sharp jolt of electrified pain sends you to your knees, and then <<he npc_rival>> is draging you across the room by your hair to grind your face against <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordVagina>>. "@@.npc_rival;When I say clean, you clean! You stupid <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>slut<</if>>!@@"<br>
<br>
<<He npc_rival>> releases <<his npc_rival>> grip and you give a final few licks<<if $fetish.cum>> — <<his npc_rival>> salty flavour almost completely overwhelmed by <<=ps(setup.getNpcName('npc_manager', 'formal'))>> far more potent taste,<</if>> before you slump away to gasp for air.<br>
<br>
"@@.npc_rival;Pathetic,@@" <<he npc_rival>> grunts before shoving you out of the way and locking the dildo back within <<=ps(setup.getNpcName('npc_manager', 'formal'))>> chastity belt.
<<else>>
When you don't move <<=setup.getNpcName('npc_rival', 'formal')>> just laughs.<br>
<br>
"@@.npc_rival;What a <<if $fetish.slurs>>faggot<<elseif $fetish.sissy>>sissy<<else>>pathetic slave<</if>> — too afraid to even approach your <<=ps(setup.getNpcName('npc_manager', 'title'))>> <<getWordVagina>> after it's been marked by <<if $npc_rival.fem>>ME<<else>>a REAL <<man npc_rival>><</if>>.@@"<br>
<br>
<<He npc_rival>> continues to chuckle as <<he npc_rival>> slides the dildo back into <<=ps(setup.getNpcName('npc_manager', 'formal'))>> <<getWordVagina>> and locks the chastity belt closed.
<</if>>
<br><br>
"@@.npc_rival;All secure — you keep up the good work until next time!@@"<br>
<br>
Still laughing <<he npc_rival>> leaves the office, the door closing heavy behind <<him npc_rival>>.<br>
<br>
<<if $npc_manager.flags.evil == 1>>
<<=setup.getNpcName('npc_manager', 'formal')>> glares at you as she walks back to her desk and pours another cup of tea. "@@.npc_manager;That will be all for today.@@" She notes sharply.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> grits her teeth as she stands back up. "@@.npc_manager;Well, I think I need a long shower. I am sorry you had to see that but... we all must endure until we are ready to move.@@" She nods in dismissal and you leave without saying anything further.
<</if>>
<br><br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: bimbo roulete invite
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reach the end of the day but, as you start to rise from your desk, <<=setup.getNpcName('npc_manager', 'formal')>> steps out of her office.<br>
<br>
"@@.npc_manager;I do hope you did not have any evening plans,@@" <<=setup.getNpcName('npc_manager', 'formal')>> states tersely. "@@.npc_manager;<<=setup.getNpcName('npc_rival', 'formal')>> has decided <<he npc_rival>> requires the two of us for something that, for some reason, could not happen during normal business hours. Come along.@@" She adds, already on her way out of the office as you quickly shut down your workstation and follow.<br>
<br>
[<<moveTo "event_bimbo_roulete_2" "Continue." 300>>]
</div>/*#
#desc: bimbo roulette: meet work_doctor and rival
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
A quick elevator ride up you arrive at <<=ps(setup.getNpcName('npc_rival', 'formal'))>> office to find that you are not the only guests. <<=setup.getNpcName('npc_rival', 'formal')>> stands chatting with <<=setup.getNpcName('npc_work_doctor', 'formal')>>, their respective assistants — <<=setup.getNpcName('npc_sissy_secretary', 'first')>> and your bimbofied therapist-turned-nurse, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> kneeling next to their department heads.<br>
<br>
<<if $npc_psychiatrist.flags.evil == 1>>
<<printThought 'Does it even make sense to call her <<=setup.getNpcName("npc_psychiatrist", "formal")>> in her current state?'>> You wonder, only to have the significance of changed titles driven home by <<=ps(setup.getNpcName('npc_rival', 'formal'))>> greeting.
<<else>>
You wince at the part <<=setup.getNpcName("npc_psychiatrist", "formal")>> is forced to play to allay <<=setup.getNpcName('npc_work_doctor', 'formal')>> and <<=ps(setup.getNpcName('npc_rival', 'formal'))>> suspicions.
<</if>>
<br><br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> pops to her feet to give <<=setup.getNpcName('npc_manager', 'formal')>> a cup of tea, your <<=setup.getNpcName('npc_manager', 'title')>> taking up a position slightly apart from the other two managers as she sips stoically and before <<=setup.getNpcName('npc_sissy_secretary', 'first')>> returns to her place next to <<=setup.getNpcName('npc_rival', 'formal')>>.<br>
<br>
"@@.npc_rival;Ah, <<=setup.getNpcName('npc_manager', 'other')>>@@" <<he npc_rival>> states in acknowledgement, putting nearly sarcastic emphasis on <<=ps(setup.getNpcName('npc_manager', 'formal'))>> honourific, as if to remind her that <<=setup.getNpcName('npc_rival', 'last')>> is the Director, now.<br>
<br>
"@@.npc_manager;You summoned us, and thus we are here,@@" <<=setup.getNpcName('npc_manager', 'formal')>> replies, an ever-so-slight nod the closest she comes to acknowledging the dig.<br>
<br>
"@@.npc_rival;I did, I did! You see, I was just talking with <<=setup.getNpcName("npc_work_doctor", "formal")>> and, well... we came up with an interesting new game that we thought you and your assistant would enjoy playing.@@" <<He npc_rival>> snaps <<his npc_rival>> fingers. "@@.npc_rival;If your slave would take one of these and join the rest of her kind in kneeling, we can get started.@@"<br>
<br>
<<=setup.getNpcName('npc_manager', 'formal')>> nods at you, and then takes up a position standing slightly apart from the two "directors." Your two compatriots have already turned, kneeling facing their superiors, with a space for you left between them.<br>
<br>
[<<moveTo "event_bimbo_roulete_3" "Kneel and wait for the game to start..." 300>>]
</div>/*#
#desc: bimbo roulete: game explained
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
You kneel between <<=setup.getNpcName('npc_sissy_secretary', 'first')>> and the bimbofied <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, as instructed, as <<=setup.getNpcName("npc_work_doctor", "formal")>> places a tray down in front of the three of you, whisking a sheet off it if with a flourish to reveal half a dozen dildos... each one identical to <<=ps(setup.getNpcName('npc_rival', 'formal'))>> member, complete with balls... their tips open and slightly dripping, which means they're probably "squirting" dildos.<br>
<br>
"@@.npc_rival;Now don't drool all over the game implements,@@" <<=setup.getNpcName('npc_rival', 'formal')>> states with a leer as you note that each of them is already glistening with some sort of lube. "@@.npc_rival;<<=setup.getNpcName("npc_work_doctor", "formal")>>! Would you like to explain to our lovely <<if $fetish.sissy>>sissies<<else>>girls<</if>> what they'll be competing at, today?@@"<br>
<br>
"@@.npc_work_doctor;Of course!@@" <<=setup.getNpcName("npc_work_doctor", "formal")>> replies as he taks up position next to <<=setup.getNpcName('npc_rival', 'formal')>> once more. "@@.npc_work_doctor;It is a little thing I have come up with called "Bimbo Roulette." Each of those delightful dildos is filled with one of my special concoctions. One at a time you will make a selection and do what sluts like you do best — suck it all down, be sure to give those big balls a nice squeeze so you get every delicious drop! I suppose, unlike the original game, winner and loser becomes a bit subjective for some of you... but it should be a fun show, regardless.@@"<br>
<br>
"@@.npc_rival;Quite so!@@" <<=setup.getNpcName('npc_rival', 'formal')>> replies, turning to <<=setup.getNpcName('npc_sissy_secretary', 'first')>>, sitting to your left. "@@.npc_rival;Why don't you kick things off? You're the most experienced with the shape, after all, the hours you've spent under my desks during meetings, or gagged and plugged at your desk with motivating twins of their likeness.@@"<br>
<br>
"@@.npc_sissy_secretary;With pleasure, <<Sir npc_rival>>,@@" <<=setup.getNpcName('npc_sissy_secretary', 'first')>> replies, with practiced formality. "@@.npc_sissy_secretary;I would certainly prefer the real thing... but even in simulacrum, your shape is <<if $fetish.sissy>>sissy-<</if>>throat-stretching perfection.@@"<br>
<br>
You haven't even taken your turn, and you're already gagging, but <<=setup.getNpcName('npc_sissy_secretary', 'first')>> smiles as she selects one of the cocks seemingly at random.<br>
<br>
[<<moveTo "event_bimbo_roulete_4" "Watch what happens..." 120>>]
</div>/*#
#desc: bimbo roulete: npc_sissy_secretary goes
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> stares up at <<=setup.getNpcName('npc_rival', 'formal')>> as she brings the tip of the dildo to her lips, first kissing it, and then sliding it down her throat. As she sucks her eyes dilate and <<=setup.getNpcName("npc_work_doctor", "formal")>> smiles in amusement. After a couple of theatrical slurps <<=setup.getNpcName('npc_sissy_secretary', 'first')>> squeezes the balls. You watch as, before your eyes, her already large breasts swell at least a cup-size.<br>
<br>
Finally pulling the dildo away it trails thin strands of drool as <<=setup.getNpcName('npc_sissy_secretary', 'first')>> catches her breath and jiggles her new boobs. "@@.npc_sissy_secretary;Sorry, <<if $fetish.sissy>>sissies<<else>>girls<</if>>, looks like I sucked one of the winners!@@"<br>
<br>
"@@.npc_rival;That you did,@@" <<=setup.getNpcName('npc_rival', 'formal')>> replies with a grin before turning to set <<his npc_work_doctor>> eyes on you. "@@.npc_rival;Though the real winner is a bit more. You see, the lube on those dildos will raise your arousal... but also lock you out from orgasming until you get the antidote.@@" You glance over at <<=setup.getNpcName('npc_sissy_secretary', 'first')>> who is already showing the effects of the drug, impatiently groping her newly swelled breasts and humping the ground. "@@.npc_rival;Your turn, <<=$player.first_name>>, time to see what prize... or punishment, you suck down...@@"<br>
<br>
You look at the five dildos arrayed before you... and suddenly have an idea... a very slutty idea. What if, instead of sucking just one dildo... you binged on multiple?<br>
<br>
<<if $player.body_ref.vagina>>
<<if setup.checkItemTypeWorn("cage") && !setup.isCage()>>
<<if setup.getTotalValue("oral") >= 20>>
<<printThought "I'm locked in chastity, but <<=setup.getNpcName('npc_rival', 'formal')>> isn't that large... I bet I could sit on one and double-barrel deep-throat <<him npc_rival>>, as well...">>
<<else>>
<<printThought "I'm locked in chastity, but I doubt <<=setup.getNpcName('npc_rival', 'formal')>> would object if I took <<him npc_rival>> at either end... figuratively... though, for that matter, also literally.">>
<</if>>
<<else>>
<<printThought "I've got three holes... I could theoretically take three dildos... if I dare...">>
<</if>>
<<else>>
<<if setup.getTotalValue("oral") >= 20>>
<<printThought "<<=setup.getNpcName('npc_rival', 'formal')>> isn't that large... I bet I could sit on one and double-barrel deep-throat <<him npc_rival>>, as well...">>
<<else>>
<<printThought "I doubt <<=setup.getNpcName('npc_rival', 'formal')>> would object if I took <<him npc_rival>> at either end... figuratively... though, for that matter, also literally.">>
<</if>>
<br><br>
<</if>>
<<if setup.getTotalValue("oral") >= 20 || $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
[<<moveTo "event_bimbo_roulete_5" 'Take three "shots."' 120 "<<set $scene.count=3>>">>]
<<else>>
[<<moveTo "event_bimbo_roulete_5" 'Take a double "shot."' 120 "<<set $scene.count=2>>">>]
<</if>>
[<<moveTo "event_bimbo_roulete_5" 'Just suck one dildo at random.' 120 "<<set $scene.count=1>>">>]
</div>/*#
#desc: bimbo roulete: your turn
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 100>>
<<if $scene.count == 3>>
<<playerOrgasm>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
<<switch $scene.count>>
<<case 1>>
You grab one of the dildos and bring it to your lips, feeling all eyes on you as you, somewhat less theatrically, feel an expected rush of arousal as you suck and squeeze the testicles and receive <<if $fetish.cum>>a mouthful of thick semen, <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>>, based on <<his npc_work_doctor>> grin, as you recall the description of the dildos being filled with <<his npc_work_doctor>> concoctions<<else>>an uninspiring mouthful of water<</if>>.<br>
<br>
"@@.npc_rival;It would seem that the antidote remains yet un-consumed... which means it's your turn, <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.@@" <<=setup.getNpcName('npc_rival', 'formal')>> states, seemingly mocking <<=setup.getNpcName('npc_psychiatrist', 'formal')>> with the emphasis on her professional title as she mindlessly gropes herself and licks her lips in lusty anticipation.
<<case 2>>
You grab a pair of dildos, <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flipping up your skirt<<else>>pulling your pants partway down<</if>> to slide one into your ass while you deep-throat the other, almost immediately feeling a drug-boosted rush of arousal.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> and <<=setup.getNpcName('npc_work_doctor', 'formal')>> watch on with glee as you bounce and suck, soon "rewarded" with a <<if $fetish.cum>>mouthful of thick semen, <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>>, based on <<his npc_work_doctor>> grin, as you recall the description of the dildos being filled with <<his npc_work_doctor>> concoctions<<else>>an uninspiring mouthful of water<</if>>... followed by a mental fuzziness, your final non-ditzy thought that you must have just taken a dose of <<if $player.flags.drugs.ditzy || $player.flags.drugs.ditzy_plus>><<=setup.getItemName("drug_ditzy")>><<else>>some sort of stupefying drug<</if>>.<br>
<br>
"@@.npc_rival;Was that over-achieving... or simply <<if $fetish.sissy>>sissy<<else>>slutty<</if>> greed? Either way, the antidote yet remains in one of those three dildos... which means it's your turn, <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.@@" <<=setup.getNpcName('npc_rival', 'formal')>> states, seemingly mocking <<=setup.getNpcName('npc_psychiatrist', 'formal')>> with the emphasis on her professional title as she mindlessly gropes herself and licks her lips in lusty anticipation.
<<case 3>>
You <<if setup.analyzeWornTags(['skirt','pants'])=='skirt'>>flip up your skirt<<else>>pull your pants partway down<</if>>, and shove one dildo into your ass, immediately feeling an expected drug-assisted rush of arousal as you settle back to start it squirting its load deep inside you as
<<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>
you slide a second into your wet and ready cunt, and deep-throat the third.
<<else>>
you double-fist two more, sucking and squeezing for a miniature blow-bang.
<</if>>
Your first "reward" is <<if $fetish.cum>>a mouthful of thick semen, <<=ps(setup.getNpcName('npc_work_doctor', 'formal'))>>, based on <<his npc_work_doctor>> grin, as you recall the description of the dildos being filled with <<his npc_work_doctor>> concoctions<<else>>an uninspiring mouthful of water<</if>>. Moments later the drugs start to hit, as you feel a mental fuzziness... that is immediately blotted out by an eagerly awaited orgasm, the antidote removing the frustrating blockage to grant you a powerful release that has you writhing on the floor, still sucking and fucking with <<if $player.body_ref.vagina && (!setup.checkItemTypeWorn("cage") || setup.isCage())>>all three<<else>>both<</if>> holes.<br>
<br>
<<printThought "Must have found the antidote...">><br>
<br>
"@@.npc_rival;It would appear being an overachiever is its own reward! Still... there are two more dildos, and it would be a waste not to use them... besides, maybe there's another antidote? Go on, <<=setup.getNpcName('npc_psychiatrist', 'formal')>>.@@" <<=setup.getNpcName('npc_rival', 'formal')>> states, seemingly mocking <<=setup.getNpcName('npc_psychiatrist', 'formal')>> with the emphasis on her professional title as she mindlessly, and lewdly gropes herself and stares at you lustily.
<<default>>
ERROR: unexpected scene.count <<=$scene.count>>
<</switch>>
<br><br>
[<<moveTo "event_bimbo_roulete_6" 'Continue.' 120>>]
</div>/*#
#desc: bimbo roulete: psychiatrist
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
<<if $scene.count == 1>>
You watch as <<=setup.getNpcName('npc_psychiatrist', 'formal')>> grabs one of the dildos and, with a flirty giggle, double-fists it and starts sucking, literally jerking it into her mouth with one hand while the other fondles and squeezes the attached balls.<br>
<br>
As the cock fires off its load onto her tongue, <<=setup.getNpcName('npc_psychiatrist', 'formal')>> gasps, pulling up her skirt in surprise as she looks down and her already small caged <<getWordPenis false>> shrinks even further.<br>
<br>
"@@.npc_rival;Oooo, poor luck! Not that she had much use for that <<if $fetish.sph && ['sph', ''].includes($player.body_ref.shrink_style)>>pathetic<<else>>cute<</if>> little thing, anyway.@@"
<<else>>
You watch as <<=setup.getNpcName('npc_psychiatrist', 'formal')>>, spurred on by your own ambition, grabs a pair of dildos and, with a flirty giggle, sits down on one and starts sucking the other, bouncing and jerking, enjoying herself even beyond eagerly questing towards an orgasm.<br>
<br>
One cock fires off its load onto <<=ps(setup.getNpcName('npc_psychiatrist', 'formal'))>> and she gasps, settling balls-deep on its twin as she looks down to see her already small caged <<getWordPenis false>> shrink even further.<br>
<br>
"@@.npc_rival;Oooo, poor luck! Not that she had much use for that <<if $fetish.sph && ['sph', ''].includes($player.body_ref.shrink_style)>>pathetic<<else>>cute<</if>> little thing, anyway.@@"<br>
<br>
Rather than being upset <<=setup.getNpcName('npc_psychiatrist', 'formal')>> merely grins, "@@.npc_psychiatrist;that's, like, okay, <<=setup.getNpcName('npc_work_doctor', 'formal')>> likes me tiny!@@"<br>
<br>
<<printThought "Hmm... no antidote, but, like... I think that second shot was <<if _TODOdrug>>a dose of <<=setup.getItemName('drug_slave')>><<else>>some sort of obedience-encouraging drug<</if>>.">>
<</if>>
<br><br>
<<if $scene.count < 3>>
[<<moveTo "event_bimbo_roulete_7" 'But what about the antidote?' 180>>]
<<else>>
[<<moveTo "event_bimbo_roulete_7_finished_1" 'Is that all?' 180>>]
<</if>>
</div>/*#
#desc: bimbo roulete: manager reveal if slutty
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
Your attention turns towards <<=setup.getNpcName('npc_manager', 'formal')>> as you realise she's bracing herself against the table, jaw set in determination.<br>
<br>
"@@.npc_rival;Enjoying your... tea?@@" <<=setup.getNpcName('npc_rival', 'formal')>> asks with a cruel laugh.<br>
<br>
"@@.npc_work_doctor;It would seem I finally found a formula that could get past that taste of yours... <<if $scene.count == 3>>it is too bad your assistant has already guzzled down the antidote...<<else>>but, since our poor assistants have failed to get lucky, well... the antidote is yours for the taking...<</if>>@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> notes.<br>
<br>
The one clear-headed assistant, you look around, <<=setup.getNpcName('npc_sissy_secretary', 'first')>>, is still showing control... though her eyes are swelled with lust as she gropes her new breasts, meanwhile <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is <<if $scene.count > 1>>sucking and fucking<<else>>sucking the dildo<</if>> desperately, barely pausing to shake her head before resuming the desperate debauchery.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> grins. "@@.npc_rival;Tell you what, we brought an extra antidote, just in case... if you crawl over here and suck me off like an obedient slut, well... maybe I give you some relief...@@"<br>
<br>
[<<moveTo "event_bimbo_roulete_7_finished_2" 'Volunteer as tribute!' 300 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_bimbo_roulete_7_finished_2" 'Sit and watch.' 300 "<<set $scene.suck=false>>">>]
</div>/*#
#desc: bimbo roulete: manager fate after slutty
#status: FINISHED 0.9.0.0
#ignore_spell: 'll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
<<if $scene.suck>>
<<=setup.getNpcName('npc_rival', 'formal')>> is still working <<his npc_rival>> zipper when you all but sprint across the room, diving lips first onto <<his npc_rival>> <<getWordPenis "npc_rival">> and sucking with everything you have.<br>
<br>
<<=setup.getNpcName('npc_rival', 'formal')>> chuckles in amusement. "@@.npc_rival;Aww, your slut is trying to fill in for you! Or maybe she's just that desperate for what I can give her, hmm?@@" You keep sucking, hoping that, if you can get <<him npc_rival>>, <<he npc_rival>>'ll give <<=setup.getNpcName('npc_manager', 'formal')>> the antidote.<br>
<br>
It would seem that <<=ps(setup.getNpcName('npc_rival', 'formal'))>> need to flex <<his npc_rival>> is too strong, however as, with a hand still resting on your head <<he npc_rival>> looks towards <<=setup.getNpcName('npc_manager', 'formal')>>. "@@.npc_rival;Well come on, then. Crawl over here and join your slut, I'm not going to let her earn your reward alone.@@"<br>
<br>
Though she tries to maintain some level of decorum, there is no mistaking the effect the drug is having on <<=setup.getNpcName('npc_manager', 'formal')>> as she slides to her knees. <<if $npc_manager.flags.evil == 2>>You catch a momentary glance from <<=setup.getNpcName('npc_manager', 'formal')>> for you to stand down, whatever humiliation this may be, it isn't worth jeopardising future plans<<else>><<=ps(setup.getNpcName('npc_manager', 'formal'))>> eyes blaze with anger... and yet there is obedience there, too<</if>> as she crawls across the floor and joins you in taking <<=ps(setup.getNpcName('npc_rival', 'formal'))>> <<getWordPenis "npc_rival">> between her lips.
<<else>>
Though she tries to maintain some level of decorum, there is no mistaking the effect the drug is having on <<=setup.getNpcName('npc_manager', 'formal')>> as she slides to her knees. <<if $npc_manager.flags.evil == 2>>You catch a momentary glance from <<=setup.getNpcName('npc_manager', 'formal')>> for you to stand down, whatever humiliation this may be, it isn't worth jeopardising future plans<<else>><<=ps(setup.getNpcName('npc_manager', 'formal'))>> eyes blaze with anger... and yet there is obedience there, too<</if>> as she crawls across the floor and takes <<=ps(setup.getNpcName('npc_rival', 'formal'))>> <<getWordPenis "npc_rival">> between her lips.<br>
<br>
"@@.npc_rival;That's a good bitch. All the way down. Remember your role, just another slave of the company...@@"<br>
<br>
<<=ps(setup.getNpcName('npc_rival', 'formal'))>> voice trembles and you're certain <<hes npc_rival>> close as he looks towards you. "@@.npc_rival;Well, come on, <<if $fetish.sissy>>sissy<<else>>slave<</if>>, get over here and help your manager, it's a poor servant who leaves their owner to work alone, and I know you're desperate for this dick...@@"<br>
<br>
You do as commanded, crawling across the floor to join your <<=setup.getNpcName('npc_manager', 'formal')>> in taking <<=ps(setup.getNpcName('npc_rival', 'formal'))>> <<getWordPenis "npc_rival">> between your lips.
<</if>>
<br><br>
You hear the click of a camera and glance up to see <<=setup.getNpcName('npc_work_doctor', 'formal')>> snapping a picture... but you ignore it to focus on the task at hand, kissing your way up and down one side of <<=ps(setup.getNpcName('npc_rival', 'formal'))>> shaft as <<=setup.getNpcName('npc_manager', 'formal')>> does the same on the other side.<br>
<br>
Fortunately for your shared humiliation, <<=setup.getNpcName('npc_rival', 'formal')>> does not have much self control left
<<if $fetish.cum>>
and a few moments later <<he npc_rival>> is pushing the both of you away to shoot <<his npc_rival>> load all across <<=ps(setup.getNpcName('npc_manager', 'formal'))>> face.<br>
<br>
"@@.npc_rival;Don't move.@@" <<=setup.getNpcName('npc_rival', 'formal')>> commands as <<=setup.getNpcName('npc_manager', 'formal')>> sits stoically with <<getWordCum>> slowly dripping down her cheek. "@@.npc_rival;<<=$player.first_name>>, lick your manager clean. It is quite unbecoming for one in a leadership position to be seen in such a messy state.@@"<br>
<br>
You bite your lip from replying and merely turn towards your <<=setup.getNpcName('npc_manager', 'formal')>>. You tenderly kiss and lick her clean... almost swearing you tasted the saltiness of a tear amidst the
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
heavenly
<<else>>
delicious
<</if>>
<<else>>
<<if setup.getTotalValue("cum") > 5>>
bitter
<<else>>
disgusting
<</if>>
<</if>>
taste of <<getWordCum>>.<br>
<br>
Finally, <<=setup.getNpcName('npc_rival', 'formal')>> signals
<<else>>
as <<he npc_rival>> cums not long after, taking a moment to compose <<him npc_rival>>self before signaling
<</if>>
<<=setup.getNpcName('npc_work_doctor', 'formal')>> to inject <<=setup.getNpcName('npc_manager', 'formal')>> with the antidote that soon has her noticeably sighing with relief.<br>
<br>
"@@.npc_rival;Well! That was a fun game,@@" <<=setup.getNpcName('npc_rival', 'formal')>> states with obvious pleasure. "@@.npc_rival;<<=$player.first_name>>, you are done for the day, but <<=setup.getNpcName('npc_manager', 'formal')>>? <<=setup.getNpcName('npc_boss', 'formal')>> wanted to see you about something... give <<him npc_boss>> my regards!@@"<br>
<br>
<<if $npc_manager.flags.evil == 2>>
<<=setup.getNpcName('npc_manager', 'formal')>> rises to her feet and graces you with a final glance, somehow communicating that everything is under control in the brief instant before she turns
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> does not even look at you as she stands up
<</if>>
and marches out of the room. Your retreat follows a moment later and, despite being even hastier, she has already disappeared up the hallway by the time you leave the office.<br>
<br>
[<<moveTo "company_lobby" 'Head for the lobby.' 300>>]
</div>/*#
#desc: bimbo roulete: manager fate
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
Your attention turns towards <<=setup.getNpcName('npc_manager', 'formal')>> as you realise she's bracing herself against the table, jaw set in determination.<br>
<br>
"@@.npc_rival;Enjoying your... tea?@@" <<=setup.getNpcName('npc_rival', 'formal')>> asks with a cruel laugh.<br>
<br>
"@@.npc_work_doctor;It would seem I finally found a formula that could get past that taste of yours... <<if $scene.count == 3>>it is too bad your assistant has already guzzled down the antidote...<<else>>but, since our poor assistants have failed to get lucky, well... the antidote is yours for the taking...<</if>>@@" <<=setup.getNpcName('npc_work_doctor', 'formal')>> notes.<br>
<br>
You look around, <<=setup.getNpcName('npc_sissy_secretary', 'first')>>, is still showing control... though her eyes are swelled with lust as she gropes her new breasts, meanwhile <<=setup.getNpcName('npc_psychiatrist', 'formal')>> is <<if $scene.count > 1>>sucking and fucking<<else>>sucking the dildo<</if>> desperately, barely pausing to shake her head before resuming the desperate debauchery.<br>
<br>
<<switch $scene.count>>
<<case 1>>
"@@.npc_rival;Well go on, then, you've been acting a bit haughty of late, some time on your knees would be a good reminder that you aren't the one in charge. Crawl over and join the other sluts and have a suck... no, more than that.@@" <<=setup.getNpcName('npc_rival', 'formal')>> pulls out a remote and you hear a click as <<=ps(setup.getNpcName("npc_manager","formal"))>> chastity belt retracts. "@@.npc_rival;There you go. You have three holes, there are three copies of me left... show the other underlings that you're just as much of an obedient and desperate slut as they are...@@" <<=setup.getNpcName('npc_rival', 'formal')>> commands.<br>
<br>
<<case 2>>
"@@.npc_rival;Well go on, then, you've been acting a bit haughty of late, some time on your knees would be a good reminder that you aren't the one in charge. Crawl over and join the other sluts and have a suck... actually, suck and fuck, since there's two dildos left. Show the other underlings that you're just as much of an obedient and desperate slut as they are...@@" <<=setup.getNpcName('npc_rival', 'formal')>> commands.
<</switch>>
<br><br>
[<<moveTo "event_bimbo_roulete_8_you" 'Dive on the proverbial grenade...' 180>>]<br>
[<<moveTo "event_bimbo_roulete_8_her" 'Obediently watch...' 180>>]
</div>/*#
#desc: bimbo roulete: manager plays
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
You can't stand the thought of <<=setup.getNpcName('npc_manager', 'formal')>> being forced to debase herself in such a way, and so you grab the remaining
<<switch $scene.count>>
<<case 1>>
three
<<case 2>>
two
<</switch>>
dildos, sucking them back to back with every ounce of skill you have as you feel first a wave of submission... and then the welcome relief of the antidote<<if $scene.count == 3>>, and a sort of mindless fog seep in, your final thought that you must have sucked down a dose of <<if _TODOknow>><<=setup.getItemName("drug_ditzy")>><<else>>some sort of stupefying drug<</if>><</if>>.<br>
<br>
"@@.npc_rival;Well! Talk about a desperate slut, you really should teach her better control!@@" <<=setup.getNpcName('npc_rival', 'formal')>> notes with a chuckle. "@@.npc_rival;Fortunately for you, however... we brought an extra antidote, just in case. All you have to do is crawl over here and suck me off like an obedient slut, and I'll give you some relief...@@"<br>
<br>
[<<moveTo "event_bimbo_roulete_7_finished_2" 'Volunteer as tribute!' 300 "<<set $scene.suck=true>>">>]<br>
[<<moveTo "event_bimbo_roulete_7_finished_2" 'Sit and watch.' 300 "<<set $scene.suck=false>>">>]
</div>/*#
#desc: bimbo roulete: watch manager drug
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_rival") setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_work_doctor") setup.charImage("npc_psychiatrist","npc_psychiatrist_bimbo_nurse")>>
<div id="invframe" class="scrolltext">
You want to look away, and yet you can't, staring silently on as <<=setup.getNpcName('npc_manager', 'formal')>> walks over to where you're kneeling. Even her mighty control is being put to the test, as you note the trickle of excitement running down her thigh and the way, she sways slightly with each step.<br>
<br>
<<if $scene.count == 1>>
<<=setup.getNpcName('npc_manager', 'formal')>> starts by sliding the first dildo into her ass, then a second up under her skirt into her temporarily unlocked front hole. Carefully holding both dildos with one hand, she begins thrusting and squeezing as she brings the third to her lips, and it is but a few moments later than they discharge their loads. You see a look of relief wash over her face as she cums... but then her expression continues to soften into a look of mindless obedience that actually has her curtsies to <<=setup.getNpcName('npc_rival', 'formal')>> and expresses her thanks.<br>
<br>
<<printThought 'There must have been a dose of <<if $npc_work_doctor.flags.nurse_available>><<=setup.getItemName("drug_slave")>> and <<=setup.getItemName("drug_ditzy")>><<else>>some sort of obedience and stupefying drugs<</if>> in those other dildos...'>>
<<else>>
A dildo in each hand, she slides one into her ass and the other between her lips, pumping and sucking until they discharge their load. You see a look of relief wash over her face as she cums... but then her expression continues to soften, that firm control fading from her sight as she actually curtsies to <<=setup.getNpcName('npc_rival', 'formal')>> and expresses her thanks.<br>
<br>
<<printThought 'There must have been a dose of <<if $npc_work_doctor.flags.nurse_available>><<=setup.getItemName("drug_slave")>><<else>>some sort of obedience drug<</if>> in that other dildo...'>>
<</if>>
<br><br>
"@@.npc_rival;Well! That was a fun game,@@" <<=setup.getNpcName('npc_rival', 'formal')>> states with obvious pleasure. "@@.npc_rival;<<=$player.first_name>>? You are done for the day, but <<=setup.getNpcName('npc_manager', 'formal')>> looks like she needs a rest, go report to <<=setup.getNpcName('npc_discipline', 'formal')>> for some... assistance.@@"<br>
<br>
<<if $npc_manager.flags.evil == 2>>
<<=setup.getNpcName('npc_manager', 'formal')>> continues to smile obediently, thanking <<=setup.getNpcName('npc_rival', 'formal')>> before leaving the room... you only hope that <<=setup.getNpcName('npc_discipline', 'formal')>> does not take advantage of your <<=ps(setup.getNpcName('npc_manager', 'formal'))>> drug-addled state as you head for the elevator.
<<else>>
<<=setup.getNpcName('npc_manager', 'formal')>> continues to smile obediently, though, even with the drugs, you can see a hint of the real her peeking out. Still, you hope that <<=setup.getNpcName('npc_discipline', 'formal')>> does not take advantage of your <<=ps(setup.getNpcName('npc_manager', 'formal'))>> drug-addled state as you head for the elevator.
<</if>>
<br><br>
[<<moveTo "company_lobby" 'Ride down to the lobby.' 300>>]
</div>/*#
#desc: npc_sissy_secretary comes for package
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3")>>
<div id="invframe" class="scrolltext">
You're plugging away at your duties when <<=setup.getNpcName('npc_sissy_secretary', 'first')>> drops by, the first you've seen them at the office since <<=setup.getNpcName('npc_manager', 'formal')>> dealt with <<=setup.getNpcName('npc_rival', 'formal')>>.<br>
<br>
"@@.npc_sissy_secretary;Hi, <<=$player.first_name>>!@@" She says in greeting, much happier than you've heard her in a while. She may still be at the company, but it's clear that whatever she's doing, she's enjoying it much more than working for <<=setup.getNpcName('npc_rival', 'formal')>>.<br>
<br>
You're about to ask what's the purpose for her visit when <<=setup.getNpcName('npc_manager', 'formal')>> partially answers things herself, popping out of her inner office just long enough to hand over an enigmatic package.<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> is as thankful as she is excited, waiting for your <<=setup.getNpcName('npc_manager', 'title')>> to return to her inner office before inviting you along to make the "delivery." <br>
<br>
"@@.npc_sissy_secretary;Trust me, I think you'll enjoy the little surprise I have...@@"<br>
<br>
Curiosity piqued, you lock your terminal and head after her.<br>
<br>
[<<moveTo "event_rival_feminized_2" 'Follow your friend.' 300>>]
</div>/*#
#desc: npc_sissy_secretary takes you to npc_rival being trained
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_rival', 'formal')>>?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_rival","npc_rival_secretary") setup.charImage("npc_futa","npc_futa_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> takes you on a familiar path back to <<=ps(setup.getNpcName('npc_rival', 'formal'))>>, leaving you momentarily confused... until you enter the office and discover just what has happened to "@@.npc_rival;<<=setup.getNpcName('npc_rival', 'formal')>>@@" since last you saw them. Though still recognisable in their vulnerable position strapped and restrained to a familiar chair they have definitely undertaken a bit of a change since being deposed, from their new, "elite <<if $fetish.sissy>>SISSI <</if>>secretary" outfit, complete with corset to their <<if $npc_rival.fem>>softer makeup and hairstyle<<else>>shaved face and more feminine hair<</if>> they are looking quite different from the power-mad directorship position they managed to temporarily rise to.<br>
<br>
"@@.npc_futa;Welcome!@@" <<=setup.getNpcName('npc_futa', 'full')>> states in greeting as she welcomes you and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> into the office. "@@.npc_futa;Well, go on, say hello!@@" she prods, only for <<=setup.getNpcName('npc_rival', 'formal')>> to mumble through their gag and strain against their restraints.<br>
<br>
"@@.npc_futa;Tsk, tsk, the longer you resist, the harder I have to make your training.@@" <<=setup.getNpcName('npc_futa', 'full')>> states before accepting the package from <<=setup.getNpcName('npc_sissy_secretary', 'first')>>. "@@.npc_futa;Speaking of training this will DEFINITELY help... but first, well... perhaps the two of you would like to lend a hand? I'm far from the only one whose career development was impacted by <<=setup.getNpcName('npc_rival', 'formal')>>, so you taking part in <<his npc_rival>> retraining would be only proper.@@"<br>
<br>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> lights up with excitement, as you watch the memory of every abuse of power <<=setup.getNpcName('npc_rival', 'formal')>> performed in <<his npc_rival>> old life flash across <<his npc_rival>> face.<br>
<br>
"@@.npc_futa;So, since there's the two of you... I was thinking a bit of dictation practice, with one of you rewarding and the other punishing. A sort of "good manager," "bad manager" arrangement...@@"<br>
<br>
All eyes are on you to make the call...<br>
<br>
[<<moveTo "event_rival_feminized_3" 'You will play the part of the encouraging, "good" manager.' 180 "<<set $scene.good=true>>">>]<br>
[<<moveTo "event_rival_feminized_3" 'You will play the part of the cruel, "bad" manager.' 180 "<<set $scene.good=false>>">>]
</div>/*#
#desc: get in position to train npc_rival with npc_futa
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_rival', 'formal')>>?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_rival","npc_rival_secretary") setup.charImage("npc_futa","npc_futa_3")>>
<div id="invframe" class="scrolltext">
Your roles selected, <<=setup.getNpcName('npc_futa', 'full')>> raises <<=ps(setup.getNpcName('npc_rival', 'formal'))>> desk to a standing position and then releases them from their chair. <<=setup.getNpcName('npc_rival', 'formal')>> gasps as they rise off a dildo to their feet<<if $npc_boss.flags.firstBlowjob || $npc_boss.flags.hasBlown || $npc_boss.flags.worked_max_cock>>, a dildo shaped exactly like <<=ps(setup.getNpcName('npc_futa', 'full'))>> <<if $fetish.futa>>futa<<else>>girl<</if>>-cock<</if>>.<br>
<br>
<<=ps(setup.getNpcName('npc_rival', 'formal'))>> wrist-cuffs are attached to the desk while a pair of thumb-cuffs built into the keyboard meaning <<his npc_rival>> fingers will not be venturing far from the home row as you and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> get into position,
<<if $scene.good>>
you on your knees, and her standing behind the <<if $fetish.sissy>>SISSI <</if>>Secretary "trainee."
<<else>>
her on her knees, and you standing behind the <<if $fetish.sissy>>SISSI <</if>>Secretary "trainee," addressing a cute, caged <<if $fetish.sissy>>sissy <</if>>clitty.
<</if>>
<br><br>
"@@.npc_futa;<<=setup.getNpcName('npc_rival', 'formal')>> may have tried to cut a stern appearance but <<=setup.getNpcName('npc_rival', 'first')>> has proven quite delicate, a hand spanking should be more than sufficient corrective measures and rewards, well... both of you are certainly experts at that now, on to that dictation, remember, touch typing. If you hunt and peck I'll be training you with the blindfold again.@@"<br>
<br>
<<=setup.getNpcName('npc_rival', 'first')>> shifts nervously from one high-heel foot to the other, leaning on the desk for support as they respond. "@@.npc_rival;Yes, <<=setup.getNpcName('npc_futa', 'custom', "Mistress")>> <<=setup.getNpcName('npc_futa', 'full')>>.@@"<br>
<br>
<<if $scene.good>>
[<<moveTo "event_rival_feminized_4" 'Time to tease.' 600>>]
<<else>>
[<<moveTo "event_rival_feminized_4" 'Time to punish.' 600>>]
<</if>>
</div>/*#
#desc: train npc_rival with npc_futa
#status: RELEASED 0.9.2.0
#ignore_spell: breedability
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.good>>
<<applyExperience 'oral' 7 'normal' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'dominance' 7 'normal' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_rival', 'formal')>>?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_rival","npc_rival_secretary") setup.charImage("npc_futa","npc_futa_3")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_futa', 'full')>> begins to speak as
<<if $scene.good>>
your lips wrap around <<=ps(setup.getNpcName('npc_rival', 'first'))>> cage and your tongue goes probing between the bars.
<<else>>
you get in position behind, and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> slides to her knees to address <<=ps(setup.getNpcName('npc_rival', 'first'))>> cage.
<</if>>
<br><br>
"@@.npc_futa;To <<=setup.getNpcName('npc_discipline', 'formal')>>, Subject: Status update for <<=ps(setup.getNpcName('npc_rival', 'first'))>> repurposing.@@"<br>
<br>
<<if $scene.good>>
There is the sound of flesh on flesh and <<=setup.getNpcName('npc_rival', 'first')>> yelps as <<=setup.getNpcName('npc_sissy_secretary', 'first')>> punishes a typing error.
<<else>>
The screen lights up in response to a typing error, and you respond by giving <<=setup.getNpcName('npc_rival', 'first')>> a quick smack on the ass.
<</if>>
<br><br>
"@@.npc_futa;<<=ps(setup.getNpcName('npc_rival', 'first'))>> training continues apace, physically showing a natural breedability and capacity to handle even my dimensions... but their submission remains situational and requiring close monitoring...@@" <<=setup.getNpcName('npc_futa', 'full')>> continues on in greater detail as
<<if $scene.good>>
you continue to tease, reaching between <<=ps(setup.getNpcName('npc_rival', 'first'))>> legs to finger their rear as <<=setup.getNpcName('npc_sissy_secretary', 'first')>> works to the cheeks to hand out punishments for any typing errors.
<<else>>
<<=setup.getNpcName('npc_sissy_secretary', 'first')>> continues to tease, one hand reaching between <<=ps(setup.getNpcName('npc_rival', 'first'))>> legs to finger their rear as you work the cheeks to hand out punishments for any typing errors.
<</if>>
<br><br>
As the surprisingly detailed status email rolls on <<=ps(setup.getNpcName('npc_rival', 'first'))>> rate of errors, and the redness of their well-spanked rear, increases, their sensitivity and distraction increased even further by fingering their slut-button while tongue-teasing through their cage.<br>
<br>
"@@.npc_futa;Further status reports to follow, I welcome any suggestions you might have for <<=ps(setup.getNpcName('npc_rival', 'first'))>> continued development. Sincerely, <<=setup.getNpcName('npc_futa', 'full')>>.@@" She concludes as <<=setup.getNpcName('npc_rival', 'first')>> pants.<br>
<br>
"@@.npc_futa;You may take your seat.@@" <<=setup.getNpcName('npc_futa', 'full')>> states a moment later, <<=setup.getNpcName('npc_rival', 'first')>> gratefully falling backwards... only to be reminded of the chair's extra feature as the large dildo not only slides back into their rear... but serves to push them over into a full on <<if $fetish.cum>>leaking-through-cage-<</if>>hands-free analgasm.<br>
<br>
[<<moveTo "event_rival_feminized_5" 'Continue.' 300>>]
</div>/*#
#desc: finish train npc_rival with npc_futa
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_rival', 'formal')>>?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_rival","npc_rival_secretary") setup.charImage("npc_futa","npc_futa_3")>>
<div id="invframe" class="scrolltext">
"@@.npc_futa;I see your sensitivity continues to improve... but you were not granted permission to orgasm.@@" <<=setup.getNpcName('npc_futa', 'full')>> notes as she stands over her panting trainee... and re-engages the chair's bondage straps.<br>
<br>
"@@.npc_rival;En-entrapment!@@" <<=setup.getNpcName('npc_rival', 'first')>> desperately pants in some semblance of an excuse, only for <<=setup.getNpcName('npc_futa', 'full')>> to smile wider.<br>
<br>
"@@.npc_futa;Funny you should mention that...@@" <<=setup.getNpcName('npc_futa', 'full')>> as she signals for <<=setup.getNpcName('npc_sissy_secretary', 'first')>> to fetch the package she had come with, opening it to reveal a brand new <<=setup.getItemName('sissyomatic')>>.<br>
<br>
<<=setup.getNpcName('npc_rival', 'first')>> takes one fearful look and starts to beg for mercy... only for the chair's gag to force its way back into position and stifle any further complaints.<br>
<br>
"@@.npc_futa;Tsk, tsk, tsk.@@" <<=setup.getNpcName('npc_futa', 'full')>> notes as she gently brushes hair out of her trainee's face and <<=setup.getNpcName('npc_sissy_secretary', 'first')>> unpacks the device. "@@.npc_futa;You knew this was coming, eventually... really, it will be for the best...@@"<br>
<br>
You watch on as, still tightly restrained and gagged, the chair releases its grasp enough for <<=setup.getNpcName('npc_sissy_secretary', 'first')>> to unlock and remove <<=ps(setup.getNpcName('npc_rival', 'first'))>> current cage and replace it with the far more secure <<=setup.getItemName('sissyomatic')>>, a moan escaping <<=ps(setup.getNpcName('npc_rival', 'first'))>> lips as the rear hollow plug slides into position... and the chair's dildo thrusts back into place for a double-filled gape.<br>
<br>
[<<moveTo "event_rival_feminized_6" 'Continue.' 300>>]
</div>/*#
#desc: finish train npc_rival with npc_futa
#status: RELEASED 0.9.2.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_rival', 'formal')>>?">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_sissy_secretary","npc_sissy_secretary_3") setup.charImage("npc_rival","npc_rival_secretary") setup.charImage("npc_futa","npc_futa_3")>>
<div id="invframe" class="scrolltext">
The three of you look on in amusement as <<=setup.getNpcName('npc_rival', 'first')>> writhes and the new chastity device administers a few calibrating shocks.<br>
<br>
"@@.npc_sissy_secretary;Typist skills aside, <<=setup.getNpcName('npc_rival', 'first')>> really is becoming a much better <<if $fetish.sissy>>SISSI <</if>>Secretary than they ever were a manager... and it's all thanks to you!@@"<br>
<br>
"@@.npc_futa;To be fair, <<=ps(setup.getNpcName('npc_rival', 'formal'))>> managerial skills would be setting a pretty low bar... but yes, I'm glad <<=setup.getNpcName('npc_sissy_secretary', 'first')>> trusted me with the opportunity to hone my skills and deliver a bit of... kharma.@@"<br>
<br>
The three of you chuckle as <<=setup.getNpcName('npc_rival', 'first')>> cowers.<br>
<br>
"@@.npc_sissy_secretary;Speaking of kharma... that corset looks like it could do with a tightening. I'm going to stick around to help, <<=$player.first_name>>, you know the way back to your desk, right? And thanks again for, well... everything.@@"<br>
<br>
You leave your two friends to attend to <<=setup.getNpcName('npc_rival', 'first')>> as you head back to <<=setup.getNpcName('npc_manager', 'formal')>> office, glad that your deposing of <<=ps(setup.getNpcName('npc_rival', 'formal'))>> is going so... successfully.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: npc_evil_nurse attempts to abduct you on the way home
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.evil > 1>>
<<include "handleHomeShortcutDirect">>
<<elseif !($fetish.sissy && $fetish.sph && $player.body_ref.shrink_style == "sph" && $fetish.drugs && $fetish.get_raped && $fetish.cum && $fetish.piss && $fetish.chastity_penis && setup.getTotalValue("submission") >= 20 && setup.getTotalValue("humiliation") >= 20 && setup.getTotalValue("anal") >= 20 && setup.getTotalValue("oral") >= 20 && setup.getTotalValue("feminization") >= 20 && setup.getTotalValue("bdsm") >= 20 && setup.getTotalValue("bondage") >= 20 && setup.getTotalValue("foot") >= 20 && setup.getTotalValue("penis") >= 20 && setup.getTotalValue("piss") >= 20 && setup.checkItemTypeWorn("cage") && setup.getChastityLevel() == 5 && $player.body_ref.penis)>>
<<set _nextDate = setup.setNextDate($now, 6, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'abdl_extreme' _nextDate>>
<<include "handleHomeShortcutDirect">>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 7200)>>
<<set _nextDate = setup.setNextDate($now, 1, 0, 0)>>
<<addRandomEvent $randomEvents['elevator_home'] 'abdl_extreme' _nextDate>>
<<include "handleHomeShortcutDirect">>
<</if>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png">>
<div id="invframe" class="scrolltext">
As the elevator door closes you feel a faint prick in the back of your neck...<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_1" "What?!" 1800>>] WARNING: this choice will lead to an extreme scene including multiple forced fetishes and diaper content.<br>
[<<moveTo $scene.passthrough "It's nothing, continue down to the lobby." 300>>]
</div>/*#
#desc: subdued by evil_nurse
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You turn as your body becomes sluggish, catching the briefest glimpse of <<=setup.getNpcName("npc_evil_nurse","formal")>> holding a syringe and smiling back at you as you lose consciousness...<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_2" "What is she doing... and where is she taking me?" 1800>>]
</div>/*#
#desc: wake up in evil_nurse clutches
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<useClothSetPush 'tmp'>>
<<removeAllClothing>>
<<addItemSet 'sissy_costume_pink'>>
<<wearItemSet 'sissy_costume_pink'>>
<<addItem "ballet_boots_pink_copy">>
<<wearItem "ballet_boots_pink_copy">>
<<addItem 'bondage_mitts'>>
<<wearItem 'bondage_mitts' true>>
<<addItem 'diaper_extreme'>>
<<wearItem 'diaper_extreme' true>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You wake up some time later. You blink in confusion, your mind fuzzy as your eyes attempt to adjust to the bright light blazing down at you, and the odd swinging shapes above you. As you attempt to wipe the sleep from your eyes you discover that <<=setup.getNpcName("npc_evil_nurse","formal")>> has not merely kidnapped you, she has restrained you! You are flat on your back, your elbows bent at a ninety degree so that your wrists are bound even with your head, your legs, too, spread and cuffed wide at ankle, thigh and knee...<br>
<br>
You struggle to test the limits of your bonds, in so doing discovering that your wrists are not merely restrained, but your hands are bundled up in pink mitts, your clothes having been replaced with a frilly pink outfit that reminds you of...<br>
<br>
Your fearful thoughts are interrupted by a sound from above. "@@.npc_evil_nurse;Aww, is my widdle baby awake?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> asks as she leans into view, a grin on her face and a cruel glint in her eye as she gives you a moment for pieces to come together, the shapes above you are a mobile from which dangle a perverse assortment of dildos... while you stare up from the bottom of an oversized crib...<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_3" "Scream for help!" 300 "<<set $scene.action='help'>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_3" "Ask to be released." 300 "<<set $scene.action='release'>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_3" "Remain silent." 300 "<<set $scene.action='quiet'>>">>]
</div>/*#
#desc: react to npc_evil_nurse kidnapping
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'help'>>
You call out for help and <<=setup.getNpcName("npc_evil_nurse","formal")>> grins, shoving a massive pacifier between your lips to silence you as she shudders slightly and coos in glee. "@@.npc_evil_nurse;Aww, is widdle sissy scared? Oh you should be! Auntie <<=setup.getNpcName("npc_evil_nurse","first")>> is QUITE cross with you, yes she is!@@"<br>
<br>
<<printThought "She seems turned on by my resistance... is it only fun for her if I'm fighting back?">>
<<case 'release'>>
You ask <<=setup.getNpcName("npc_evil_nurse","formal")>> to let you go and she frowns in disappointed annoyance even as she shoves a massive pacifier between your lips to silence further response. "@@.npc_evil_nurse;Let you go? What sort of appropriate response is that? Do you have ANY idea how much trouble you're in? Auntie <<=setup.getNpcName("npc_evil_nurse","first")>> is VERY cross with you, yes she is and she is not going to let you just... ask to be released! Not until she's had her fun punishing you!@@"<br>
<br>
<<printThought "Does she want me to resist or something? Is it only fun for her if I'm fighting back?">>
<<case 'quiet'>>
You remain silent, biding your time as <<=setup.getNpcName("npc_evil_nurse","formal")>> frowns. "@@.npc_evil_nurse;The silent treatment? How dull! Auntie <<=setup.getNpcName("npc_evil_nurse","first")>> is VERY cross with you, yes she is and she is going to make you howl for mercy before she's done!@@"<br>
<br>
Any further opportunity to respond is removed as she shoves a massive pacifier between your lips. "@@.npc_evil_nurse;There we go! Just in case you had any silly thoughts of interrupting!@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
"@@.npc_evil_nurse;Here, how about we show you just how much trouble you're in? Hmm?@@" She teases as she rotates a mirror into position above the crib to give you a full view of your helpless and humiliating situation.<br>
<br>
Your shocked gasp only sees the pacifier (more of a dildo gag, really) seat deeper into position as you look up at your pink, frilly reflection. You are dressed in the sissiest dress you've ever seen, shiny satin and frills everywhere you look, from a fresh coat of overly cute makeup, to the pacifier that covers part of your face and renders you helplessly silent... to the satin mitts covering your hands, the mincing ribbons connecting your cuffs, the bountiful frills of your petticoats, and the shoes locked to your feet that, if anything, are even steeper than your bed heels!<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_4" "Of course all of that is but a minor embarrassment compared to what is between your legs." 180>>]
</div>/*#
#desc: evil_nurse introduces situation
#status: RELEASED 0.9.4.0
#ignore_spell: bogglingly
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
You had initially thought it was just being cuffed to the bottom of the crib that had your legs spread at such an awkward angle but even if the cuffs were removed there is not a chance you could press your thighs together due to the mind-bogglingly massive diaper tightly wrapped around you.<br>
<br>
Noting your attention, <<=setup.getNpcName("npc_evil_nurse","formal")>> grins even wider, reaching down to press the front of your diaper's pink cover, the combination of thick padding and your <<if setup.isCage()>>cage<<else>>chastity<</if>> somewhere beneath means that you feel nothing from her touch, merely hearing the soft creak of the layers of absorptive insulation compressing. "@@.npc_evil_nurse;You like? It's really the PERFECT accessory for a sissy thing like you, both to ensure that you won't touch anything naughty, and to keep things contained if you lose control and piss yourself in excitement. Well, and there's the third purpose of telling anyone who sees you just what a pathetic thing you are to need to wear such massive, humiliating diaper... but that doesn't really work when it's just the two of us, hmm?@@" She waits a beat and then grins, "@@.npc_evil_nurse;of course... I could take some pictures, maybe send them to your friends? Your phone is right over there with your things... what would they think? Knowing that their friend or coworker was such a pathetic sissy loser... why, even for a SISSI Secretary that would have to be humiliating!@@"<br>
<br>
Her words spark a fresh sense of urgency as you struggle in your bonds, but they, and your gag, hold tight, merely drawing a smile as you seem to play into <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> hands. "@@.npc_evil_nurse;Mmmm, I just love it when they panic! Mmm... imagine if I setup a stream? Helpless sissy throws a tantrum... but maybe later. I'm not here to be your photographer, but to punish you, and you have earned a LOT of punishment... you see, you took away my favourite toy! Yes, ever since your little attempt at rebellion, well... my sweet, sissy <<=setup.getNpcName("npc_primrose","first")>> got caught up in the collateral! At first it was nice having more time with <<him npc_primrose>>, forcing <<him npc_primrose>> to be my assistant... but the fire isn't there! Sure, <<he npc_primrose>> obeys every instruction ... but then it isn't as fun to punish <<him npc_primrose>>, and <<he npc_primrose>> doesn't act humiliated at all just... apologetic, bleh. Who wants a totally obedient slave? Brats are so much more fun...@@"<br>
<br>
She leans closer, her grinning face filling your vision. "@@.npc_evil_nurse;That's why I brought you here, to our private little nursery. <<=setup.getNpcName("npc_primrose","first")>> was my favourite toy to break again and again... but now <<he npc_primrose>> is weirdly indestructible instead of amusingly regenerative. All my other playthings just shatter before I can even get going! But you... mmm, I hear you've caused so many problems, and with seemingly every dominant at the company having a go at playing with you... maybe that means you'll be more fun? There's really only one way to find out...@@"<br>
<br>
She leans back... whatever all this was, it apparently was just preamble, and now it's just her and <<=setup.getNpcName("npc_evil_nurse","formal")>>... with you helpless to stop whatever madness she has planned...<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_5" "She's crazy..." 120>>]
</div>/*#
#desc: evil_nurse tickles you
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> grins gleefully vibrant with energy, somewhere between savouring the moment and eager to rush forward to overwhelm you with everything all at once.<br>
<br>
"@@.npc_evil_nurse;Let's start with the basics, hmm?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states cryptically, reaching down with both hands to your unprotected armpits, and wiggling her fingers.<br>
<br>
You reflexively try to jerk away... but there is nowhere to go, your restraints such that you can move little more than a couple centimetres, unable to escape her tickling assault as your nostrils flare and you howl through your pacifier. "@@.npc_evil_nurse;Oh, what's the matter? Can't handle a little tickle torture, hmm? Well you should have thought of that before you messed with my toys!@@" She tickles harder as you pant and thrash, fear replaced with raw panic as tears stream down your face at your inability to escape her onslaught.<br>
<br>
"@@.npc_evil_nurse;Aww, is my sissy crying? Can she not handle herself? Hmm? Maybe she wants something else?@@"<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_6" "Continue..." 180>>]
</div>/*#
#desc: evil_nurse interrupted
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Before you can try to come up with a way to beg for mercy the bits under your poofy diaper burst with pained electricity, your plug and chastity both punishing you savagely as <<=setup.getNpcName("npc_evil_nurse","formal")>> grins wider, pausing for a moment to shudder and then jerk. "@@.npc_evil_nurse;So good... I could torment you like this for days, you stupid sissy, you useless slut... this is what you deserve! To be tormented and tortured, go ahead and cry, it only excites me more!@@"<br>
<br>
A crazed look in her eye she lunges forward again, gloved fingers roaming over your body, teasing and tickling you even more as sensitivity spreads far beyond your armpits, every part of your body twitching at her slightest touch, even as every frantic jerk is stifled by your tight bonds.<br>
<br>
You're too distracted by your own thrashing, crying howling to notice until she stops and you hear a sound at what you think is the direction of the door. "@@.npc_evil_nurse;Who could that be?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states with a scowl, turning away from you for a moment before pulling out the remote and setting it to an erratic, torturing tempo of pain. "@@.npc_evil_nurse;Don't go anywhere, I'll be right back.@@"<br>
<br>
As if you had a choice you continue to jerk with each jolt... even as this agony is preferable to the full force of <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> earlier efforts. You crane your neck, trying to get a hint of what's going on.<br>
<br>
"@@.npc_evil_nurse;This was meant to be private... who is this?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> growls as she approaches the door.<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_7" "Who, indeed?" 300>>]
</div>/*#
#desc: manager arrives
#status: RELEASED 0.9.4.0
#ignore_spell: tickleishness
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You hear the door open and hear <<=setup.getNpcName("npc_evil_nurse","formal")>> respond with a simple "@@.npc_evil_nurse;Oh!@@" before the click, click of two pairs of high heels is heading in your direction.<br>
<br>
You look up from your crib as <<=setup.getNpcName("npc_manager","formal")>> and <<=setup.getNpcName("npc_evil_nurse","formal")>> appear, dual cruel-grinning expressions as your heart skips a beat.<br>
<br>
"@@.npc_manager;Oh, she looks delightful!@@" <<=setup.getNpcName("npc_manager","formal")>> states with joy. She reaches down to run her fingers through your hair, and you try to nuzzle back into her, desperate for her, even if she is presently evil, to be your saviour from <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> cruel madness.<br>
<br>
"@@.npc_manager;And you got her into this state in just a few minutes? Tsk, tsk, that is QUITE disappointing that she should be so... uncontrolled...@@"<br>
<br>
You note a mixture of relief, and pride as <<=setup.getNpcName("npc_evil_nurse","formal")>> replies. "@@.npc_evil_nurse;Yes, well, my techniques are quite... optimised...@@"<br>
<br>
Seemingly growing more bold by the moment, <<=setup.getNpcName("npc_evil_nurse","formal")>> reaches back down to stroke the inside of your thigh, your tickleishness still in full-force as you try, and fail to move away and instead start sobbing in despair.<br>
<br>
"@@.npc_manager;I see that they are... mmm, yes. I had intended to merely retrieve my property but now? I think I would enjoy watching some more. Carry on.@@" She states as your heart sinks.<br>
<br>
The hand that <<=setup.getNpcName("npc_manager","formal")>> had been using stroking your hair sliding down to tickle your defenseless armpit, the combination of emotional and physical turmoil, combined with fear for what's next shattering the last of your control, your bladder releasing as you tremble in fear.<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_8" "Oops..." 300>>]
</div>/*#
#desc: transition to feeding
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 18 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
A klaxon suddenly sounds as your diaper lights up and a computerised voice announces "@@.computer;PISS BABY ALERT! PISS BABY ALERT!@@" As <<=setup.getNpcName("npc_manager","formal")>> looks down in disappointment and <<=setup.getNpcName("npc_evil_nurse","formal")>> grins in glee.<br>
<br>
"@@.npc_manager;Pathetic.@@" <<=setup.getNpcName("npc_manager","formal")>> notes as the alarm stops.<br>
<br>
"@@.npc_evil_nurse;Oh, I know!@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> replies with an evil smile as she follows up with a few more agonising shocks beneath your now-wet diaper, the acidity of the pee somehow making things hurt even worse. "@@.npc_evil_nurse;Pissing herself in fear at the sight of her <<=setup.getNpcName("npc_manager","title")>>... well is certainly an embarrassment, and further confirmation that she needs every centimetre of that thick, sissy diaper! Think of if it was part of her daily uniform, the combination of allowing for longer, uninterrupted shifts... and the humiliating results when she finally does lose control... perhaps in the middle of a presentation? Standing in front of her coworkers, unable to continue until the humiliating announcement finishes informing the room of just what a pathetic, uncontrolled sissy she is?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> jolts again as she lets out a slow breath and you make the connection that every time she gets too excited something in her outfit shocks her back to the present.<br>
<br>
"@@.npc_evil_nurse;Anyway, now that we've softened her up, you wanted to see more... well, I think it's time our sweet sissy thing enjoyed a snack! Have to keep up her energy after all that screaming and moaning!@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> presses a button and the sides of your crib fold away, allowing her to start fiddling with your restraints...<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_9" "A snack?" 300>>]
</div>/*#
#desc: introduce food
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Though the sides of the crib fold away, your restraints do not loosen in the slightest, instead the mattress splits and folds, taking you from laying on your back to sitting in a chair in a matter of moments. The shift in position reminds you of just how massive your diaper is, as you sit high, perched on a poofy padded bum. Somewhere deep within your <<getWordMyPenis false>> strains and drips within its prison, the plush padding wicking it away to keep you dry and desperate. <<=setup.getNpcName("npc_evil_nurse","formal")>> finishing your "high chair" off by attaching a tray in front of you as she smiles.<br>
<br>
"@@.npc_evil_nurse;You hungry? I bet you are! We'll we're going to feed you up good with your favourite!@@" She places a bowl in front of you, and then a cereal box. Pink and bright it advertises itself as "SISSY-Os!" in a loud font. "@@.npc_evil_nurse;See? I told you I had your favourite! All the fibre and nutrients you need to serve your <<=setup.getNpcName("npc_manager","title")>>...@@" As she talks she pours you a heaping bowl of the cereal before reaching for a large, and very phallic shaped, squeeze bottle. "@@.npc_evil_nurse;But of course we need some liquid to help wash it down, and I have the best!@@"<br>
<br>
She squeezes a dollop of what can only be cum onto the top of the cereal as she grins. "@@.npc_evil_nurse;Mmmm! You smell that? That's 100% ruins harvested from my patients! You can taste the desperation in every drop!@@" Still smiling with glee she finishes off by wiping the nozzle of the bottle with a finger and running it between her lips. "@@.npc_evil_nurse;So tasty! Such a lucky, lucky sissy! Now get ready to eat up!@@"<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_10" "Mmmfff?" 120>>]
</div>/*#
#desc: fed
#status: RELEASED 0.9.4.0
#ignore_spell: pacci
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'cum' 15 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> reaches up to remove your pacifier, while leaving you otherwise bound, locking gaze with you as she continues to grin, cradling your face with one latex-gloved hand as she runs her thumb around your mouth, and then forces it past your willing lips. "@@.npc_evil_nurse;Oh, look at you! So, so desperate to suck! Did you enjoy your pacci? Oh I know you do, you just LOVE sucking on it... almost as much as you love sucking away on a big, thick cock! Oooo, I felt that! I just mentioned the word cock and you started slurping harder! You total depraved sissy sissy slut! But don't you worry, I've got something more than just my little old thumb to keep you occupied, mmm?@@"<br>
<br>
She withdraws her thumb in favour of holding your chin in one, leaving your lips still parted as her other hand dips something into your bowl, stiring for a moment as she holds your gaze before brining it into view. At first you think she's presenting you with a dildo... but then you notice the hollow a few centimetres back from the filled with cum-coated cereal as realise that this large phallus is a strange sort of spoon. "@@.npc_evil_nurse;Open wide! Here comes the penis! Spread those slutty, slutty lips for Auntie <<=setup.getNpcName("npc_evil_nurse","first")>>! Show her how much you NEED to be face-fucked! After all, your holes are worthless if you aren't being used, so pucker up princess! Here comes the airplane... right into the cock-pit!@@"<br>
<br>
The spoon takes a winding path as it "flies" towards your face, but once it parts your lips things take a turn, <<=setup.getNpcName("npc_evil_nurse","first")>> jamming the phallus deep, the tip slamming into the back of your throat as she stares you in the eye for a long moment, grinning as you slightly choke... and then she twists, the inverted "spoon" dropping its cum-flavored payload directly onto your waiting tongue.<br>
<br>
"@@.npc_evil_nurse;You like that, you sissy cum-dump? Oh, I can see you do! You just love gobbling up cum! So depraved! So disgusting! A whore who needs her fix... and Auntie <<=setup.getNpcName("npc_evil_nurse","first")>> is here to give it to you! Give it to you nice. And. HARD!@@"<br>
<br>
As she talks she strokes the "spoon" in and out of your mouth, jamming its initial payload down your throat and then hurriedly scooping up another heaping helping... as you give in to your own perversions, eagerly sucking and slurping down each scoop, your biggest challenge the battle between savouring each cum-coated scoop... and swallowing quickly to show what a good slut you are to earn even more...<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_11" "Feed me more!" 300>>]
</div>/*#
#desc: face-fucked with dildo
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'oral' 20 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Cock-load after cock-load of SISSY-Os and semen are shoved down your throat as you find yourself begging for more. The sight of <<=setup.getNpcName("npc_manager","formal")>> in the background, grinning along with your torment only turns you on further as scoop after heaping scoop disappears down your throat as <<=setup.getNpcName("npc_evil_nurse","formal")>> gushes in mutual excitement. "@@.npc_evil_nurse;So hungry! You just can't get enough cum, can you? Oh, I bet you'd love to be like this all day! Just being fed scoop after scoop of scrumptious semen! Feeling that cock pound the back of your throat as a perfect cock-sheath cum-catcher, hmm?@@"<br>
<br>
Approaching frenzy, you nod eagerly as you notice the bowl is all but empty... and then <<=setup.getNpcName("npc_evil_nurse","formal")>> gets a twinkle in her eye, snatching up the bottle of "ruined orgasms" and shoving it into your mouth. With a wide grin and a firm squeeze <<=setup.getNpcName("npc_evil_nurse","formal")>> fills your mouth with cold, thick cum... and you love it, sucking eagerly on your "bottle" as more squirts out. "@@.npc_evil_nurse;Oh, I am just spoiling you today! All that saved up cum I harvested and you are just sucking it all down! Every drop, just slurp, slurp, suck, suck! Well go on! Take it, take it all you greedy sissy slattern!@@"<br>
<br>
Holding your head with one hand, <<=setup.getNpcName("npc_evil_nurse","formal")>> pounds the bottle in and out of your mouth with the other, squirting cum the whole time as you pant and swallow and suck, semen dripping past your lips despite your best efforts as the thick globs pour down your throat and she leaves your throat bruised, your lips wet and desperate as you try to lick up the last of your special meal.<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_12" "Catch your breath, this probably isn't over..." 300>>]
</div>/*#
#desc: pissed on by manager
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'piss' 20 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You're catching your breath and fail to notice <<=setup.getNpcName("npc_manager","formal")>> stir from her position watching from the sidelines. "@@.npc_manager;Quite the lovely display, and just the sort of thing a sissy cum-slut like this deserves... but I have something of my own to add...@@"<br>
<br>
For the first time since you wake up you are afforded a moment of freedom as a tap of a button frees you from your high-chair and for <<=setup.getNpcName("npc_manager","formal")>> to drag you to your knees by the hair. <<=setup.getNpcName("npc_manager","formal")>> holds you in place with one hand while her other reaches for her skirt. You get a momentary glance of her crotch glistening with arousal... and then she unleashes a blast of piss directly into your face.<br>
<br>
"@@.npc_manager;Drink up, sissy! You toilet-slut... goddess you're embarrassing. To think you one considered yourself a man... but I always knew better. You're nothing but a sissy whore, your only use to serve and beg...@@"<br>
<br>
You try to catch what you can of <<=ps(setup.getNpcName("npc_manager","formal"))>> golden deliciousness, but she is making no effort to aim except to piss all over your face as you mouth flaps in humiliating piss-slut desperation.<br>
<br>
After unloading a full bladder <<=setup.getNpcName("npc_manager","formal")>> finally releases her grip and you fall to your hands and knees, piss, and the final hint of cum, dripping from your lips as you pant at her feet.<br>
<br>
"@@.npc_manager;Ugh, look at that! You got a few drops on my heels! Lick them clean you useless sissy and remember what you're for!@@"<br>
<br>
You look up slightly to see the scant droplets beading on the polished leather of <<=ps(setup.getNpcName("npc_manager","formal"))>> boots... and also glance past her legs to where you notice the door is slightly ajar.<br>
<br>
<<printThought "Could I escape? It seems impossible but...">><br>
<br>
As you momentarily contemplate your options you remember that <<=setup.getNpcName("npc_evil_nurse","formal")>> is still in the room... and the contrast between preference for absolute obedience, and the crazed nurse's excitement at resistance...<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_13" 'Lick <<=ps(setup.getNpcName("npc_manager","formal"))>> boots like an obedient sissy.' 300 "<<set $scene.lick=true>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_13" "Resist and make a break for freedom." 300 "<<set $scene.lick=false>>">>]
</div>/*#
#desc: submit to manager or continue
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.lick>>
<<applyExperience 'submission' 20 'terrible' $SEEN_FRIEND>>
<<else>>
<<applyExperience 'bdsm' 20 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.lick>>
You obediently keep your head down and begin licking <<=ps(setup.getNpcName("npc_manager","formal"))>> shoes clean of the fallen droplets of piss. "@@.npc_manager;There you go, sissy. Every drop. Know your place.@@"<br>
<br>
You finish licking one boot and then move to the other, <<=setup.getNpcName("npc_manager","formal")>> finishing things off be stepping on your head long enough to grind your face into the floor. "@@.npc_manager;Good job. Remember your place... and than <<=setup.getNpcName("npc_evil_nurse","formal")>> for handling you like you DESERVE.@@"<br>
<br>
Your head still pressed into the ground, with the heel of <<=ps(setup.getNpcName("npc_manager","formal"))>> boot digging into your cheek, you do as you're told. You look up at <<=setup.getNpcName("npc_evil_nurse","formal")>> and gasp a submissive "@@.player;Thank you, <<=setup.getNpcName("npc_evil_nurse","custom", "Auntie")>> <<=setup.getNpcName("npc_evil_nurse","first")>> for taking care of this sissy the way it deserves...@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> looks down at you with contempt... and a hint of boredom as she replies. "@@.npc_evil_nurse;Of course. I serve the company by putting employees in their proper place. Yours is clearly beneath your <<=ps(setup.getNpcName("npc_manager","title"))>> boot.@@"<br>
<br>
There is something subtly odd about <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>>, sounding almost disappointing as you reflect on her earlier enthusiasm... and your total submission without resistance.<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_13_abort_1" "Continue." 180>>]
<<else>>
As foolish an idea as it may be, you ignore your <<=ps(setup.getNpcName("npc_manager","title"))>> piss-flecked boots and make a crawling sprint for the door. You make it but a few metres before something lands on top of you, <<=setup.getNpcName("npc_evil_nurse","formal")>> tackling you from behind and pressing you down with her full weight on top of you, growling into your ear as she grinds against your ass.<br>
<br>
"@@.npc_evil_nurse;Still got some fight in you, sissy? Thought you could escape? You stupid slut, where would you go?@@" Her words are clipped and frantic, occasionally interrupted by gasps that are somewhere between orgasm and pain <<printThought "...or perhaps both?">> You consider with a fleeting thought at what sort of sadomasochistic programming her suit contains.<br>
<br>
<<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> excitement rises with every word, one hand wrapping around your neck to half-choke you as she switches from grinding to humping... humping that synchronises with the electrics in your plug so that it feels like you're being fucked by lighting.<br>
<br>
"@@.npc_evil_nurse;Come on, keep fighting! Scream for me, sissy! Show Auntie <<=setup.getNpcName("npc_evil_nurse","first")>> that you're still her fun plaything!@@"<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_14" "Scream." 300>>]
<</if>>
</div>/*#
#desc: submit to manager and leave
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'diaper_extreme' true>>
<<deleteItem 'diaper_extreme'>>
<</if>>
<<set $player.location to 'Asylum Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hospital_hallway.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Come along, sissy,@@" <<=setup.getNpcName("npc_manager","formal")>> commands, waiting long enough for <<=setup.getNpcName("npc_evil_nurse","formal")>> to remove your diaper and mitts before <<=setup.getNpcName("npc_manager","formal")>> finally steps off of your head and moves towards the door. You start to rise... and then think better of it, instead crawling after her as she leads the way out of the asylum and back to the elevator.<br>
<br>
"@@.npc_manager;Well that was an amusement... though less impressive than I had hoped, given <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> reputation.@@" You shudder slightly at her words as you wonder if, indeed, <<=setup.getNpcName("npc_evil_nurse","formal")>> had more planned before losing interest.<br>
<br>
You arrive at the lobby and all but kicks you out of the elevator. "@@.npc_manager;That will be all, I shall see you in the morning... hopefully with the same properly submissive attitude you are showing now, hmm?@@"<br>
<br>
She cuts off your response with a laugh as you return to your feet, blushing with embarrassment at her treatment... and the remains of your humiliating outfit...<br>
<br>
[<<moveTo "company_lobby" "Company lobby." 60>>]
</div>/*#
#desc: manager reprimands evil_nurse
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Between the pain in your ass and the suffocating pressure of <<=setup.getNpcName("npc_evil_nurse","formal")>> pinning you down you hardly have to act as you howl in pain, your terror only seeming to excite <<=setup.getNpcName("npc_evil_nurse","formal")>> even further as she continues to hump and shock and squeeze... only to be interrupted by a loud "@@.npc_manager;A-hem.@@"<br>
<br>
The force of <<=ps(setup.getNpcName("npc_manager","formal"))>> manages to punch through even <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> frenzy as you up at boots as she stands over you. "@@.npc_manager;I trust you had more planned than this... uncontrolled brutish display?@@" <<=setup.getNpcName("npc_manager","formal")>> asks as <<=setup.getNpcName("npc_evil_nurse","formal")>> pauses for a moment, and then releases her hold on you to scramble back to her feet.<br>
<br>
"@@.npc_evil_nurse;Of course, your sissy was just... well, she made a run for it and I was caught up in the—@@"<br>
<br>
You look up as <<=setup.getNpcName("npc_manager","formal")>> cuts the suddenly nervous nurse off with a glance, <<=setup.getNpcName("npc_evil_nurse","formal")>> re-composing herself rapidly as she returns to the chair and motions for you to re-take your seat. "@@.npc_evil_nurse;Let us continue, then. <<=$player.first_name>>? Back in your chair! It's time for your lessons!@@"<br>
<br>
You have your trepidation, but with the cruel eyes of both <<=setup.getNpcName("npc_evil_nurse","formal")>> and <<=setup.getNpcName("npc_manager","formal")>> upon you you conclude the disobedience is at least temporarily off the menus.<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_15" "Take your seat." 1800>>]
</div>/*#
#desc: begin lesson
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
If anything, <<=setup.getNpcName("npc_evil_nurse","formal")>> straps you to the chair even tighter than you were for "breakfast," a waist-strap pushing you down into the seat and compressing your diaper, followed by a crotch-strap reminiscent of a racing harness or something... but way tighter as the thick strap compresses padding down around your chastity-imprisoned <<getWordMyPenis>>.<br>
<br>
"@@.npc_evil_nurse;There we go, sissy, nice. And. SECURE.@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states with a grunt as she pulls the final strap taut. "@@.npc_evil_nurse;And now for your lessons! Why, you've had such a busy day already, but one cannot neglect their education! And Auntie <<=setup.getNpcName("npc_evil_nurse","first")>> have a VERY, VERY important lesson planned for her favourite widdle sissy girl!@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> grins down at you and pinches your cheek before taking a few steps away to roll an easel into position in front of you and picking up a marker.<br>
<br>
"@@.npc_evil_nurse;So todays lesson plan is that most important thing to sissies. By which I mean, of course, COCK.@@" As she speaks she writes the word in large letters, underlying it several times before facing you. "@@.npc_evil_nurse;Say it with me: COCK.@@"<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_16" "COCK." 300>>]
</div>/*#
#desc: lesson, average cocks
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.pc;COCK.@@" You reply with unconcealable excitement.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> smiles. "@@.npc_evil_nurse;Very good. Cock is, of course, a sissy's desire, their love, their obsession...@@" She flips over a fresh page and resumes writing and talking.<br>
<br>
"@@.npc_evil_nurse;Sissies, being simple and easily distracted, can get overwhelmed at the mere thought of cock. Which is why lessons such as this are so important.@@" She writes the words "COCK = GOOD" "@@.npc_evil_nurse;This is the simple formula that most sissies would attest to... but it's more complicated than that.@@" She adds, adding a question mark to change things to "COCK = GOOD?" "@@.npc_evil_nurse;There are, of course, many aspects to consider when it comes to cock, but today we will start things off simple with the most basic parameter.@@" She adds the word "SIZE!" underneath and underlines it for emphasis.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> flips over a fresh page and draws, with startling alacrity, a fairly normal looking cock, complete with a measurement guide indicating it as being 15cm long. "@@.npc_evil_nurse;Here we see an example of what would be considered an average cock. Perfectly serviceable, and service them you shall, right, sissy?@@"<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_17" 'Yes, <<=setup.getNpcName("npc_evil_nurse","custom", "Auntie")>> <<=setup.getNpcName("npc_evil_nurse","first")>>.' 300 "<<set $scene.big=false>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_17" 'No, big cocks only!' 300 "<<set $scene.big=true>>">>]
</div>/*#
#desc: quizzed on cock
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 20 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.big>>
Pouting you struggle against your restraints and protest your love for big cocks!<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> sniffs in annoyance. "@@.npc_evil_nurse;Silly sissy size-queen. As if you have a choice? You'll take every cock available and love it, you're such a cock-slut. Now, as I was saying...@@"
<<else>>
Obediently you nod along to <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> lesson and she smirks before moving on.
<</if>>
<br><br>
She flips the page once more and draws another cock, larger, more impressive<<if $npc_boss.flags.firstBlowjob || $npc_boss.flags.hasBlown || $npc_boss.flags.worked_max_cock>>... in fact, you recognise it as <<=ps(setup.getNpcName("npc_boss","formal"))>> magnificent member<</if>>. "@@.npc_evil_nurse;THIS, is what is referred to as a perfect cock. Twenty-five to thirty centimetres in length, it is both thicker and longer than average, straight and true. Hard as iron, but with the warmth of a <<man npc_boss>>, perfect in every way, the salivating, lusty dream that all sissies dream to feel and taste pounding into them and filling them with cum.@@"<br>
<br>
You squirm with excitement as <<=setup.getNpcName("npc_evil_nurse","formal")>> smirks and flips the page to draw another cock.<br>
<br>
Spanning the page side to side, this cock is thick and huge,
<<if $fetish.bestiality_soft>>
an inhuman monstrosity with a filled, textured tip, multiple ridges that would stress and massage the hole of any brave enough to attempt it... and a thick knot that would ensure that it locked deep inside its lucky victims orifice.
<<else>>
far larger than the previous so-called "perfection," a thick, long, monstrosity bigger than your arm.
<</if>>
<br><br>
"@@.npc_evil_nurse;THIS,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> continues with a sneer, "@@.npc_evil_nurse;Is a grotesque abomination. Forty or more centimetres it is attractive only to the hopelessly depraved and so massive as to leave any fucked by it ruined and unable to properly appreciate the perfection previously described.@@" <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> gaze lingers on the drawing for several moments before she snorts and turns over a fresh paper, denying you to gorgeous look at her work.<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_18" "What's next?" 180>>]
</div>/*#
#desc: sissy cocks
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'penis' 20 'terrible' $SEEN_FRIEND>>
<<switch $player.body.penissize[0]>>
<<case 0 1>>
<<set $scene.sizeBefore = "small">>
<<case 2 3>>
<<set $scene.sizeBefore = "average">>
<<case 4 5>>
<<set $scene.sizeBefore = "big">>
<<case 6>>
<<set $scene.sizeBefore = "monster">>
<<default>>
ERROR: unhandled player penis size: <<=$player.body.penissize[0]>>
<</switch>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
This final drawing is the smallest... and the first one drawn flaccid rather than hard... and yet, for all its diminutive proportions, <<=setup.getNpcName("npc_evil_nurse","formal")>> takes longer than any of the others as she lavishes extra details onto an adorably cute and small sissy clitty. "@@.npc_evil_nurse;Finally we come to the most pathetic and worthless. Five centimetres, at the most, it is so small as to be worthless for anything other than to be caged. To have one of these is to be destined for sissy-hood, any other role is improper and the only thing such a pathetic, tiny thing is meant for is to be locked at all times and ridiculed frequently to keep its owner reminded that they are worthless save to suck and serve their betters!@@" As she speaks she draws a cage over the small penis, finishing her sketch just as she completes her monologue to stare at you with a smirk.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> stalks closer, placing a hand over your crotch, the slight squeaking sound as she squeezes your diaper unfelt beneath the layers of padding and your cage. "@@.npc_evil_nurse;So... sissy... what do you have underneath here? Hmm? This thick nulge... why, it could theoretically conceal anything, but you know what you have, right? Tell me...@@"<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_19" "You have a tiny sissy clitty." 120 "<<set $player.body.penissize[1] = 0>><<set $scene.size_have='small'>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_19" "You have an average cock." 120 "<<set $player.body.penissize[1] = 0>><<set $scene.size_have='average'>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_19" "You have an big dick!" 120 "<<set $player.body.penissize[1] = 0>><<set $scene.size_have='large'>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_19" "You harbor a monster!" 120 "<<set $player.body.penissize[1] = 0>><<set $scene.size_have='monster'>>">>]
</div>/*#
#desc: quizzed your cock
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 20 'terrible' $SEEN_FRIEND>>
<<if $player.body_ref.horsecock && $player.body_ref.knot>>
<<set $scene.specialtype = "dragon ">>
<<elseif $player.body_ref.horsecock>>
<<set $scene.specialtype = "horse ">>
<<elseif $player.body_ref.knot>>
<<set $scene.specialtype = "dog ">>
<<else>>
<<set $scene.specialtype = "">>
<</if>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You
<<if $scene.sizeBefore != $scene.size_have>>
lie and
<</if>>
reply that you
<<switch $scene.size_have>>
<<case "small">>
are a small, micro-dicked sissy.
<<case "average">>
are average in the penis department.
<<case "large">>
have a big, beautiful, perfect cock.
<<case "monster">>
are in possession of a monstrous <<=$scene.type>>cock.
<<default>>
ERROR: unexpected scene.size_have <<=$scene.size_have>>
<</switch>>
<br><br>
"@@.npc_evil_nurse;Is that so?@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> replies as she pulls out a measuring tape and begins peeling open your diaper. <<=setup.getNpcName("npc_evil_nurse","formal")>> reaches your gleaming <<=setup.getItemTypeName("cage")>>, caressing the front of your high-tech prison with her gloved fingertips for a moment before remotely retracting the front <<if $scene.isCage>>of your cage<<else>>shield<</if>> to reveal the tiny member within.<br>
<br>
<<if $scene.sizeBefore != $scene.size_have>>
You look down in shock as
<<else>>
You watch as
<</if>>
<<=setup.getNpcName("npc_evil_nurse","formal")>> theatrically extends the measuring tape... far, far longer than she needs as she presses the end of the tape against your belly and makes a show of peering close before loudly announcing. "@@.npc_evil_nurse;One point six centimetres!@@" Giving you a moment before turning over her shoulder "@@.npc_evil_nurse;<<=setup.getNpcName("npc_manager","formal")>>... if you would care to confirm these embarrassingly small dimensions?@@"<br>
<br>
Sporting a wide grin, <<=setup.getNpcName("npc_manager","formal")>> walks over and peers down through her glasses before replying "@@.npc_manager;Mmm... perhaps one point five and a half... but even giving that tiny little thing the benefit of the doubt... well, there is no question that it can be anything other than a tiny sissy clitty.@@"<br>
<br>
"@@.npc_evil_nurse;Quite so, quite so... and one of the smallest I've ever seen... tell me, sissy? How does it feel, to know that you're so small, so pathetic... ah! You're even getting hard at the mention! And yet... even stiff you aren't even two centimetres! Goddess, how shamefully humiliating! Only a sissy could live like this<<if !$options.fem_all_women>>, no man could possibly be this small and pathetic<</if>>!@@"<br>
<br>
<<if $scene.sizeBefore != $scene.size_have>>
[<<moveTo "event_nurse_abdl_extreme_20" "Protest, you were bigger!" 120 "<<set $scene.penis_react='object'>>">>]<br>
<</if>>
[<<moveTo "event_nurse_abdl_extreme_20" "You are nothing by a tiny-dicked sissy, can you be locked back up, now?" 120 "<<set $scene.penis_react='accept'>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_20" 'If you truly are a tiny-dicked sissy... why did <<=setup.getNpcName("npc_evil_nurse","formal")>> remove your cage?' 120 "<<set $scene.penis_react='brat'>>">>]
</div>/*#
#desc: react to your penis
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.penis_react == "accept">>
<<applyExperience 'submission' 20 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.penis_react>>
<<case 'object'>>
You object, insisting that you were larger, and that <<=setup.getNpcName("npc_evil_nurse","formal")>> did something to you!<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles in amusement while <<=setup.getNpcName("npc_evil_nurse","formal")>> grins wider. "@@.npc_evil_nurse;Did something to you? You mean made you like you were meant to be? You ARE a pathetic sissy slut... and you DESERVE a tiny little micro-clitty to match!@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> sniffs in triumph as she closes your cage back over your shrunken peen.
<<case 'accept'>>
You blush and reply that you are a tiny-dicked sissy... and could you please be locked back where you belong?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles in amusement while <<=setup.getNpcName("npc_evil_nurse","formal")>> looks almost disappointed as she closes and locks your <<if $scene.isCage>>cage<<else>>chastity belt<</if>> with a nod. "@@.npc_evil_nurse;Yes... you do belong locked... well, that concludes todays lesson.@@"<br>
<br>
<<case 'brat'>>
Against better judgement, you bait <<=setup.getNpcName("npc_evil_nurse","formal")>> with a smirk as you point out that, if you're such a tiny-dick sissy... why did <<=setup.getNpcName("npc_evil_nurse","formal")>> unlock you?<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> bristles as <<=setup.getNpcName("npc_manager","formal")>> laughs in amusement. "@@.npc_manager;The sissy has you there!@@"<br>
<br>
<<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> eyes light up with excitement as she leans in, one hand around your neck as she stares into your eyes and your chastity closes back in place.<br>
<br>
"@@.npc_evil_nurse;Tell me, then... SISSY... if you're so clever, now that you're locked back up like you belong... what sort of cock would be best to rape you with for your insolence?@@"<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_21" 'A nice tiny sissy-clit like your own?' 120 "<<set $scene.penis_fuck='tiny'>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_21" "Something average-sized?" 120 "<<set $scene.penis_fuck='normal'>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_21" 'You only want big, perfect cocks inside you...' 120 "<<set $scene.penis_fuck='large'>>">>]<br>
[<<moveTo "event_nurse_abdl_extreme_21" 'A massive cock to really stretch you out!' 120 "<<set $scene. penis_fuck='huge'>>">>]
<<default>>
ERROR: unexpected scene.penis_react <<=$scene.penis_react>>
<</switch>>
<<if $scene.penis_react != 'brat'>>
With you locked once more, <<=setup.getNpcName("npc_evil_nurse","formal")>> begins peeling off your diaper, then removes your mitts before pressing a button to release your restraints.<br>
<br>
"@@.npc_manager;Well that was certainly an... amusement. In the future refrain from abducting my property without permission.@@"<br>
<br>
"@@.npc_evil_nurse;Of course, <<=setup.getNpcName("npc_manager","formal")>>,@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> replies with a deep bow. "@@.npc_evil_nurse;I was... caught up in the moment. It will not happen again.@@"<br>
<br>
<<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> words, and the dismissive glance she shoots at you as you follow <<=setup.getNpcName("npc_manager","formal")>> out of the room remind you of the evil nurse's teasing nature... and you wonder what other horrors she would have had in store had you continued to "play her game." <br>
<br>
[<<moveTo "event_nurse_abdl_extreme_20_abort_1" 'Hurry after <<=setup.getNpcName("npc_manager","formal")>>.' 300>>]
<</if>>
</div>/*#
#desc: how to be fucked for defiance
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeAllClothing>>
<<deleteItem 'diaper_extreme'>>
<<deleteItem 'bondage_mitts'>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.penis_fuck>>
<<case 'tiny'>>
You reply that you should be raped by something tiny, like yourself and <<=setup.getNpcName("npc_evil_nurse","formal")>> laughs. "@@.npc_evil_nurse;Wouldn't that be an amusement! I suppose it WOULD be a humiliating punishment... but no... no...@@"
<<case 'average'>>
You reply that you being raped by an average cock or two would seem appropriate. <<=setup.getNpcName("npc_evil_nurse","formal")>> chuckles in amusement. "@@.npc_evil_nurse;Hmm... I suppose that makes a degree of sense, but it would seem that you failed to quite absorb my lesson... though, perhaps that was my fault. With that diaper you're wearing I was unable to reinforce the lesson from the bottom, as it were...@@"
<<case 'large'>>
You reply that a big cock would be perfect for raping you! <<=setup.getNpcName("npc_evil_nurse","formal")>> smiles in amusement. "@@.npc_evil_nurse;Of course you'd say that, such a desperate cock-slut...@@"
<<case 'huge'>>
You reply that a big cock would be perfect for raping you! <<=setup.getNpcName("npc_evil_nurse","formal")>> smiles in amusement. "@@.npc_evil_nurse;Of course you'd say that, such a desperate cock-slut...@@"
<<default>>
ERROR: unexpected scene.penis_fuck <<=$scene.penis_fuck>>
<</switch>>
<br><br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> grins, her eyes sparkling with fresh excitement as she backs away... it would seem that your "game" is going to continue.<br>
<br>
"@@.npc_evil_nurse;I'll admit, you have surpassed expectations... you're almost as fun as my favourite <<=setup.getNpcName("npc_primrose","nickname")>> used to be... and so I think I'll share a little something special I made for <<him npc_primrose>>...@@"<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> carefully steps out of the way as arms descend from the ceiling, attaching themselves to your cuffs as the chair releases you from its grasp and you are lifted into the air, additional robotic limbs swinging into position to begin removing your clothing as you move across the room...<br>
<br>
Helplessly carried across the room you find yourself stripped naked as you are brought to a vertical-mount vacbed. Spun around, you are pinned to the wall, getting one last moment of seeing <<=setup.getNpcName("npc_manager","formal")>> <<=setup.getNpcName("npc_evil_nurse","formal")>> before a mask slides over your face and gags your mouth as you are plunged into silent darkness...<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_22" "What's happening now?" 300>>]
</div>/*#
#desc: accept tiny penis and leave
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'diaper_extreme' true>>
<<deleteItem 'diaper_extreme'>>
<<removeItem 'bondage_mitts' true>>
<<deleteItem 'bondage_mitts'>>
<</if>>
<<set $player.location to 'Asylum Hallway'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/hospital_hallway.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Come along, sissy,@@" <<=setup.getNpcName("npc_manager","formal")>> commands as she walks briskly up the hallway towards the elevator.<br>
<br>
"@@.npc_manager;Well that was an amusement... almost equal to <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> reputation.@@" You shudder slightly at her words as you wonder if, <<=setup.getNpcName("npc_evil_nurse","formal")>> had more planned... and just what reputation she could have that what you just endured didn't quite meet it...<br>
<br>
You arrive at the lobby and <<=setup.getNpcName("npc_manager","formal")>> dismisses you from the elevator. "@@.npc_manager;That will be all, I shall see you in the morning... hopefully with the same properly submissive attitude you are showing now, hmm?@@"<br>
<br>
You glance back at the closing elevator door. <<=setup.getNpcName("npc_manager","formal")>> smiles back at you until she is out of sight. Blushing as you realise that you are now in public in the pink, frilly and humiliating outfit <<=setup.getNpcName("npc_evil_nurse","formal")>> dressed you in, you hurry across the lobby towards the exit.<br>
<br>
[<<moveTo "company_lobby" "Company lobby." 60>>]
</div>/*#
#desc: begin primrose cosplay
#status: RELEASED 0.9.4.0
#ignore_spell: primdoll,cheeriness
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'bondage' 20 'terrible' $INCOGNITO>>
<<addItem 'kig_primrose'>>
<<wearItem 'kig_primrose' true>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png">>
<div id="invframe" class="scrolltext">
The vacbed presses tight against everything but your hooded face as you are kept suspended in darkness for several minutes. Intellectually you think that you should try and relax... but that's impossible as your mind spins out of control wondering what's happening outside your prison. Just as you are questioning if <<=setup.getNpcName("npc_evil_nurse","formal")>> has somehow negotiated for you to be left overnight or something screens inside your mask light up, giving you a third person view of a giant pink box marked <<if $npc_primrose.first_name == "Primrose">>Primdoll!<<else>>Sissy Scientist!<</if>><br>
<br>
The camera pans to show that it isn't just a large box... but a giant-size version of a toy doll's box, the clear front advertising the contents as "obediently lifelike!" and "ready for use!" inside the box, underneath tight clear latex and posed with arms at its sides in classic doll posture is a facsimile of <<=setup.getNpcName("npc_primrose","formal")>>, pink hair and all, a lab-coat and other accessories surrounding the doll-like figure.<br>
<br>
You shift slightly and the figure on screen moves as well as you realise that you are not just watching a recording, but a broadcast of yourself! This revelation is reinforced a moment later as cutesy music plays through your hood and <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> voice comes through in sing-song cheeriness "@@.npc_evil_nurse;Good morning! No staying pristine mint-in-box for this collectible toy, it's time for our sissy scientist to get unpackaged and start its day!@@"<br>
<br>
Rather than appearing on-screen herself, <<=setup.getNpcName("npc_evil_nurse","formal")>> remains a narrative voice in your head as robotic arms "open" your box and break the seal on your tight packaging.<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_23" "Time to play?" 240>>]
</div>/*#
#desc: dressed as primrose
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet 'sissy_scientist'>>
<<wearItemSet 'sissy_scientist'>>
<<applyExperience 'oral' $npc_boss.penis_size 'terrible' $INCOGNITO>>
<<applyExperience 'submission' 20 'terrible' $INCOGNITO>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png">>
<div id="invframe" class="scrolltext">
Even as the tight, constricting vacbed peels away you remain conventionally deaf, blind, and helpless, unable but to watch through your third-party view as additional arms pull you from your prison and manipulate you puppet-like, dressing you in a familiar plugsuit, but with built-in oversized artificial tits, under a lab-coat as <<=setup.getNpcName("npc_evil_nurse","formal")>> narrates the system "readying" you for the day.<br>
<br>
"@@.npc_evil_nurse;The sissy scientist excitedly readies for another day, starting, as always, with its praise of its glorious branch manager — <<if $npc_boss.fem>>Mademoiselle<<else>>Monsieur<</if>> Prion!@@"<br>
<br>
Still puppeteered by robotic arms, your doll-self turns away from your box to face a painting of a vaguely <<=setup.getNpcName("npc_boss","last")>>-like figure... with a dildo clone of <<his npc_boss>> mounted just in front of it.<br>
<br>
Staring at the painting, you approach and begin sucking while looking up as an artificial voice speaks for you in what could almost be a parody of your friend <<=setup.getNpcName("npc_primrose","formal")>> "@@.npc_primrose;Praise be to <<if $npc_boss.fem>>Mademoiselle<<else>>Monsieur<</if>> Prion!@@" SUCK SUCK "@@.npc_primrose;Thank you for granting doll another day in your service! May this humble toy please you in its devotion!@@"<br>
<br>
Finishing your mantra your doll-self steps back, and then reaches out to flip over a counter labeled "days since raped by <<if $npc_boss.fem>>Mademoiselle<<else>>Monsieur<</if>> Prion." As if the farcical nature of this "game" was not already more than apparent, the counter changes from infinity... to infinity, even as the doll voice announces. "@@.npc_primrose;Mmm, I think today's the day! Oh, I can't wait to feel your REAL cock inside of me! Rape me, <<if $npc_boss.fem>>Mademoiselle<<else>>Monsieur<</if>> Prion! Rape your most loyal sissy slave!@@" As you/it blows a kiss to the painting and turns away.<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_24" "Time to... work?" 300>>]
</div>/*#
#desc: work as primrose
#status: RELEASED 0.9.4.0
#ignore_spell: puter,primdoll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'humiliation' 20 'terrible' $INCOGNITO>>
<<applyExperience 'submission' 20 'terrible' $INCOGNITO>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png">>
<div id="invframe" class="scrolltext">
Finished with its "personal" preparation, your doll-scientist walks across the room to a small "lab," an oversized pink workstation labeled "Doll-puter 2000" complete with matching chair where you sit and begin exaggeratedly bashing your hands at the keyboard without bending your elbows in a parody of typing.<br>
<br>
"@@.npc_evil_nurse;The sissy scientist works hard,@@" <<=ps(setup.getNpcName("npc_evil_nurse","formal"))>> narration continues, "@@.npc_evil_nurse;But no day is free from interruptions... and it isn't long before its annoying colleague <<=setup.getNpcName("npc_work_doctor","Dr. Shrub")>> stalks in...@@"<br>
<br>
You watch as another doll... though one that you do not think contains a human inside <<printThought "Though... given this company, and <<=setup.getNpcName('npc_evil_nurse','formal')>> being involved...">> "walks" into view, puppeteered by yet more robotic limbs. "@@.npc_evil_nurse;<<=setup.getNpcName("npc_work_doctor","custom", "Dr. Shrub")>> is a mean, stupid boss who cares nothing for our poor <<if $npc_primrose.first_name == "Primrose">>Primdoll<<else>>Sissy Scientist<</if>>, but doll is a good doll and obediently submits to a deep dive into its work...@@"<br>
<br>
Per the narration, your doll-self is bent over your desk by "@@.npc_work_doctor;<<=setup.getNpcName("npc_work_doctor","custom", "Dr. Shrub")>>,@@" the other doll grinding against you with smooth, non-existant genitals as it babbles in gibberish nonsense. "@@.npc_work_doctor;Chemistry superior! <<=setup.getNpcName("npc_work_doctor","custom", "Dr. Shrub")>> big smart scientist, <<if $npc_primrose.first_name == "Primrose">>Primdoll<<else>>Sissy Scientist<</if>> dumb and useless! Psychology bad!@@"<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_25" 'Well... she did seem to capture <<=setup.getNpcName("npc_work_doctor","formal")>> essence...' 300>>]
</div>/*#
#desc: more work as primrose
#status: RELEASED 0.9.4.0
#ignore_spell: primdoll
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png">>
<div id="invframe" class="scrolltext">
"@@.npc_work_doctor;Mad science!@@" <<=setup.getNpcName("npc_work_doctor","custom", "Dr. Shrub")>> shouts in climax before stiffly wandering off and leaving you to resume your "work." <br>
<br>
"@@.npc_evil_nurse;With its dumb, useless manager placated, the <<if $npc_primrose.first_name == "Primrose">>Primdoll<<else>>Sissy Scientist<</if>> gets back to testing its work. Unfortunately, lack of funding means that the only victim available... is itself.@@"<br>
<br>
Pulling an oversized visor over top of your doll-mask your doll-self plugs itself into its computer is soon drooling along to trance-inducing pink-swirls.<br>
<br>
"@@.npc_evil_nurse;Unfortunately, the doll overworks itself yet again,@@" <<=setup.getNpcName("npc_primrose","formal")>> narrates as your rigidly upright posture suddenly collapses as the arms puppeteering you release their hold and you collapse into a pile on the floor... a proverbial puppet with its strings cut. "@@.npc_evil_nurse;Helpless and broken, the doll is only saved by the gracious assistance by its only friend.@@"<br>
<br>
Here, finally <<=setup.getNpcName('npc_evil_nurse','formal')>> appears in person, walking into view sporting a ginormous strap-on cock.<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_26" "Time to... fuck?" 300>>]
</div>/*#
#desc: fucked as primrose
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<applyExperience 'anal' 20 'terrible' $SEEN_FRIEND>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse")>>
<div id="invframe" class="scrolltext">
Where <<=setup.getNpcName("npc_work_doctor","custom", "Dr. Shrub")>> had merely rubbed against you, <<=setup.getNpcName("npc_evil_nurse","formal")>> fucks you, and fucks you hard.<br>
<br>
"@@.npc_evil_nurse;YES! Take that, sissy! <<if $scene.penis_fuck == "huge">>You said you preferred ginormous cocks<<else>>We both know you love the biggest cocks<</if>>... well nurse is here with just the prescription you need! Here to ruin you for anyone else, just the way you like it! You love it when your nurse stretches her toy out and fucks it hard!@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> states as she goes to town on her doll/you, the massive dildo combined with her monstrous strap-on to have even a highly trained slut like yourself stretched and moaning... not that the gag in your mask allows any sound to escape.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> gives it to you hard and deep, <<if $player.body_ref.vagina>>even temporarily unlocking the front panel of your <<=setup.getItemTypeName("cage")>> device as she flips you over and fucks your vagina... <</if>>your useless, caged clitty bouncing around the whole time as you stare from your third party position, a voyeur unto your own body.<br>
<br>
Rather than the gleefully chaotic frenzy when you tried to "escape," this time <<=setup.getNpcName("npc_evil_nurse","formal")>> seems to be taking ever-so-slight care, savouring the moment and even smiling down as she plows her doll... though whether she is thinking of you, or the sissy scientist your mask is made to mimic, you cannot be certain...<br>
<br>
[<<moveTo "event_nurse_abdl_extreme_27" "Continue..." 300>>]
</div>/*#
#desc: evil_nurse finishes with you
#status: RELEASED 0.9.4.0
#ignore_spell: primdoll
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet 'sissy_scientist'>>
<<deleteItemSet 'sissy_scientist'>>
<<removeItem 'kig_primrose' true>>
<<deleteItem 'kig_primrose'>>
<</if>>
<<set $player.location to 'Asylum Cell'>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/padded_cell.png" setup.charImage("npc_evil_nurse") setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_evil_nurse","formal")>> uses her toy good and hard before picking you up and carying you back to your "box." Whistling as she works, <<=setup.getNpcName("npc_evil_nurse","formal")>> strips her toy of its accessories before washing you off both inside and out and re-installing you back in your box.<br>
<br>
<<=setup.getNpcName("npc_evil_nurse","formal")>> pauses to look up at you in your vacuum-packed doll-shaped prison and smiles... before <<=setup.getNpcName('npc_manager','formal')>> steps into frame.<br>
<br>
You hold your breath, wondering what else <<=setup.getNpcName("npc_evil_nurse","formal")>> could possibly have planned... only to realise that, while you may be blind, you are not deaf as you hear <<=setup.getNpcName('npc_manager','formal')>> voice cutting through the silence.<br>
<br>
"@@.npc_manager;As entertaining as that was... I will be needing my SISSI Secretary back to perform her ACTUAL duties. She is neither a toy, nor a <<if $npc_primrose.first_name == "Primrose">>Primdoll<<else>>Sissy Scientist<</if>>, after all.@@"<br>
<br>
"@@.npc_evil_nurse;Of course, <<=setup.getNpcName('npc_manager','other')>>.@@" <<=setup.getNpcName("npc_evil_nurse","formal")>> replies formally, seemingly finally coming down from her excited high... yet to a point of satisfaction, rather than disappointment.<br>
<br>
The vacbed, again, peels away... though this time you fall to the ground, rather than being "unpacked" by anyone. You feel the doll mask lifted away and you pant, finally unencumbered by any sort of restraint... as <<=setup.getNpcName("npc_evil_nurse","formal")>> eagerly strips you naked and <<=setup.getNpcName('npc_manager','formal')>> kicks a pile of clothing towards you.<br>
<br>
"@@.npc_manager;Chop, chop. Time for you to go. Some of us still have work to finish this evening...@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_nurse_abdl_extreme_28" 'Get dressed.' 300 "<<useClothSetPop 'tmp'>>">>]<br>
<</if>>
<<if setup.checkOutsideDecency()>>
[<<moveTo "event_nurse_abdl_extreme_28" 'Leave.' 300>>]
<<else>>
[@@.link_locked;I can't leave looking like this!@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: leave
#status: RELEASED 0.9.4.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Main Elevator">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_elevator_2.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You dress and follow <<=setup.getNpcName('npc_manager','formal')>> out of <<=setup.getNpcName("npc_evil_nurse","formal")>> "play area." <<=setup.getNpcName("npc_evil_nurse","formal")>> gaze follows you out the door, a tiny smirk of amusement that sends a shiver down your spine... not quite fear... but also...<br>
<br>
You hurry to keep up with <<=setup.getNpcName('npc_manager','formal')>> as she taps the elevator button for the lobby, glancing at you out of the corner of her eye, but saying not a word.<br>
<br>
"@@.npc_manager;See you in the morning.@@" <<=setup.getNpcName('npc_manager','formal')>> states with a trademark evil smirk as the elevator door opens and you scurry off into the night, eager to escape the company... at least for a little while.<br>
<br>
[<<moveTo "company_lobby" "Company lobby." 60>>]
</div>/*#
#desc: phase 5 morning
#status: WRITTEN 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcAtOffice">>
<<if !$scene.at_office>>
<<set $currentcall = true>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<if !$scene.elevator>>
<<set $npc_manager.criticalanger+=1>>
<<applyStress 25>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<<if $scene.elevator>>
<<set $scene.directInspection = true>>
<</if>>
<<else>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage && !$inventory[$scene.cage].status.lock>>
<<if setup.getChastityLevel() != 5>>
<<set $scene.forgot_cage_lock = true>>
<</if>>
<<manipulateItem $scene.cage 'lock' true>>
<</if>>
<<set $scene.genital_change = setup.changedGenitals($player,$npc_manager, true)>>
<<if $scene.genital_change == "all" || $scene.genital_change == "penis">>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<</if>>
<<storeVisual $player $npc_manager>>
<<set $currentTasks.manager_morning_inspection_task.condition="">>
<<set $scene.passed = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<set _x = setup.addManagerEndlessTask()>>
<<if $scene.passed>>
<<include "inspectionData_plug">> /% this is to pickup the AI human event%/
<<else>>
<<set $player.work.sendhome = true>>
<<set $player.work.sendhomedate = $now>>
<</if>>
<</if>>
<<if $workEvents.hasOwnProperty("evil_ex_4_work_torment") || $workEvents.hasOwnProperty("evil_ex_2_work_introduction")>>
<<set $workEvents.work_tea_random.trigger.priority=300>>
<<set $scene.rescue = {}>>
<<elseif $workEvents.hasOwnProperty("work_tea_random")>>
<<set $workEvents.work_tea_random.trigger.priority=1000>>
<</if>>
<<set $scene.first = !State.hasPlayed("event_manager_stage5_first_2")>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.at_office>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location = "Phonecall">>
<</if>>
<<if $scene.at_office>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.at_office>>
<<if $now.getUTCHours() == 8>>Precisely at eight <</if>><<=setup.getNpcName("npc_manager","formal")>> walks out of her office.<br>
<br>
<<if $npc_manager.flags.evil == 1>>
There is not a hint of warmth in her eyes as she seems to look through you.
<<else>>
Her gaze may be harsh, but you can see the ever-so-slight twinkle that tells you that this is an act.
<</if>>
<<if $scene.passed && (!$player.sec_style.body.breasts && setup.checkItemTypeWorn("corset") && $player.timebased.tightlacing >= 90 && !State.hasPlayed("event_secretary_style_breasts_work_1"))>>
<<=setup.getNpcName('npc_manager', 'formal')>> eyes run up and down your body and she smiles. "@@.npc_manager;Mmm, that corset is doing WONDERS for your figure only...@@".<br>
<br>
[<<moveTo "event_secretary_style_breasts_work_1" "Only... what?" 180 '<<set $scene.inspectionReturn="event_manager_daily_check_stage_5_finalize">>'>>]
<<elseif $scene.passed>>
<<if $scene.first>>
"@@.npc_manager;Hello Ms. <<=$player.last_name>>. I want to start by saying that I do not believe you shoulder the full blame for my demotion. As your <<=setup.getNpcName("npc_manager","title")>> I was, and once again am, responsible for your behaviour. That said... well, clearly I failed you in showing far too lenient of a hand with you. Fortunately, the company has helped me see the error of my ways and I shall not allow either of us to make such a mistake again.@@"<br>
<br>
You gulp nervously. From her look, to her expression, the voice and face may be the same, but this is not the <<=setup.getNpcName("npc_manager","formal")>> you remember. "@@.npc_manager;The short version is that I will be keeping you in line by enforcing all regulations to the letter. We shall nip any future rebellion in the bud by keeping you on task,<<if setup.checkItemTypeWorn("cage")>> keeping you locked,<</if>> keeping you busy, and punishing the slightest infraction. As to rewards, well... obedience should be its own reward, would you not agree?@@"<br>
<br>
You nod slowly, her expression could be carved from stone for all it changes.<br>
<br>
<</if>>
"@@.npc_manager;Acceptable. Commence working.@@"<br>
<br>
Without any further word she turns and disappears back into her office, her brevity alien and off-putting.<br>
<br>
<<if $scene.first>>
[<<moveTo "event_manager_stage5_first_2" "Return to your desk." 300>>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Return to your desk." 300>>]
<</if>>
<<else>>
"@@.npc_manager;You are unprepared for work. Leave.@@"<br>
<br>
She returns to her office, leaving you alone.<br>
<br>
<<printThought "Well that was different... and I don't think good...">><br>
<br>
[<<moveTo "event_manager_stage5_leave_1" "Leave the office." 300>>]
<</if>>
<<else>>
You get a call from <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;You are not at your desk. Today was an opportunity for us to start over, but you have failed. Goodbye.@@"<br>
<br>
She hangs up before you can respond, leaving you somewhat puzzled...<br>
<br>
[<<moveTo "event_manager_stage5_start_bad_end" "Put your phone away." 300>>]
<</if>>
</div>/*#
#desc: stage 5 chair intro
#status: FINISHED 0.9.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.work.chair.gag = 7>>
<<set $player.work.chair.front = 6>>
<<set $player.work.chair.plug = 6>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You settle into your familiar chair to discover that the settings have been changed — not only is bondage now mandatory, it is also set that you must work "filled" — and the defaults for all are set to be clones of <<=ps(setup.getNpcName("npc_rival","formal"))>> cock...<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Take your seat." 300>>]
</div>/*#
#desc: game over fail to appear at start of stage 5
#status: FINISHED 0.9.0.0
#*/
<<set $gameOver = 'stage5_start_fail'>>
<<set $player.location to "">>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/gameover.png" setup.charImage("npc_valkyr")>>
<div id="invframe" class="scrolltext">
You put your phone away, but hear a strange whine. You turn to figure out the source of the noise and find yourself face to chest with a towering Valkyrie unit. You open your mouth but have a gag forced down your throat before you can say a word, arms and legs bound just as efficiently.<br>
<br>
It takes you a moment to recognise the company building from the air, but you are soon fling in to an upper floor hanger, your bound form transferred to a small cage and sent on for "processing..." You taste something sweet pumped through your gag and the world goes dark on your final moment of independent thought.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: sent home early stage 5
#status: WRITTEN 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _x = setup.addManagerEndlessTask()>>
<<addItem 'handcuffs_back'>>
<<wearItem 'handcuffs_back' true>>
<<addItem 'hollow_gag'>>
<<wearItem 'hollow_gag' true>>
<</if>>
<<set $player.location to "Social Interaction Service Syndicate Inc. Hallway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/company_hallway.png" "TODOguard">>
<div id="invframe" class="scrolltext">
You are heading for the elevator when a guard confronts you.<br>
<br>
"@@.generic_male1;Where are you going?@@"<br>
<br>
You explain that you have been sent home early but the suspicious guard immediately slams you against a wall and cuffs your wrists.<br>
<br>
"@@.npc_guard;Attempted employee escapee apprehended.@@" They state into a radio, your attempt at an explanation met by a hollow gag being forced into your mouth.<br>
<br>
"@@.generic_female1;Roger that, deliver them to floor 169 for punishment.@@"<br>
<br>
The guard roughly pulls you along, your struggles useless given the combination of your restraints and their being close to twice your size.<br>
<br>
[<<moveTo "event_manager_stage5_leave_2" "Continue." 1800>>]
</div>/*#
#desc: attempt to leave in early stage 5
#status: WRITTEN 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'handcuffs_back' true>>
<<deleteItem 'handcuffs_back'>>
<<removeItem 'hollow_gag' true>>
<<deleteItem 'hollow_gag'>>
<</if>>
<<set $player.location = "Floor 169 Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" _TODOdominatrix>>
<div id="invframe" class="scrolltext">
Floor 169 turns out to be the upper floor dungeon — one of <<=ps(setup.getNpcName("npc_discipline","formal"))>> underlings taking you from the guard and binding you to a punishment device where you spend agonising hours being tortured, trained and re-educated on the virtues of obediently performing your duties.<br>
<br>
<<set _afternoon = setup.setNextDate($now, 0, 13, 0)>>
<<set _endOfDay = setup.secondsToDate($now,_afternoon)>>
[<<moveTo "event_manager_stage5_leave_3" "Continue." _endOfDay>>]
</div>/*#
#desc: punished for being dismissed in stage 5
#status: WRITTEN 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _bondage = setup.getTotalValue("bondage")>>
<<applyExperience 'bondage' _bondage 'unbelievable' $SEEN_STRANGER>>
<<set _bdsm = setup.getTotalValue("bdsm")>>
<<applyExperience 'bdsm' _bdsm 'unbelievable' $SEEN_STRANGER>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'unbelievable' $SEEN_STRANGER>>
<<applyFatigue 100>>
<<applyStress 30>>
<</if>>
<<set $player.location = "Floor 169 Dungeon">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/dungeon.png" _TODOdominatrix>>
<div id="invframe" class="scrolltext">
You've lost track of time by the time a dominatrix appears to release you from the torture equipment.<br>
<br>
"@@.generic_female1;You going to do your job and not try to skip out early?@@" She asks, the face-slap almost tender compared to the machine-powered agony that you have been enduring to this point.<br>
<br>
You nod obediently, voice too hoarse from screaming in pain and too physically and mentally broken to do anything but obey.<br>
<br>
"@@.generic_female1;Good, well you may return home, now — and don't let me catch you back in here tomorrow!@@"<br>
<br>
You move as fast as you can back out of the "dungeon" and to the elevator, eager to get away from this horrifying company... even as you know you have little choice but to return for your next day's work...<br>
<br>
[<<moveTo "room_foyer" "Head home." 600>>]
</div>/*#
#desc: phase 5 inspection (non-evil)
#status: WRITTEN 0.9.0.0
#ignore_spell: pto
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "calcAtOffice">>
<<if $scene.at_office>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<if $scene.cage && !$inventory[$scene.cage].status.lock>>
<<if $scene.cage != "sissyomatic" && $scene.cage != "sissyomatic_belt">>
<<set $scene.forgot_cage_lock = true>>
<</if>>
<<manipulateItem $scene.cage 'lock' true>>
<</if>>
<<set $scene.genital_change = setup.changedGenitals($player,$npc_manager, true)>>
<<if $scene.genital_change == "all" || $scene.genital_change == "penis">>
<<set $npc_manager.flags.penis_shrinking.shrink_event_ready = false>>
<</if>>
<<storeVisual $player $npc_manager>>
<<if !$clothSetsInt.hasOwnProperty("daily_evaluation_clothes")>>
<<useClothSetPush 'daily_evaluation_clothes'>>
<</if>>
<<include "inspectionData_chastity">>
<<include "checkManagerOutfit">>
<<set $currentTasks.manager_morning_inspection_task.condition="">>
<<set _x = setup.addManagerEndlessTask()>>
<<set $scene.passed = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<<if $scene.passed>>
<<decrementEmotion 'anger' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<if $currentTasks.manager_morning_inspection_task.trigger.pinkPill>>
<<deleteMember $currentTasks.manager_morning_inspection_task.trigger "pinkPill">>
<<set $scene.allButDrugPassed = setup.checkTaskUntimedComplete('manager_morning_inspection_task')>>
<</if>>
<<if !$scene.allButDrugPassed>>
<<set $player.work.sendhome = true>>
<<set $player.work.sendhomedate = $now>>
<</if>>
<</if>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<set $currentcall = true>>
<<set $scene.vacation = $player.work.vacation >= 1>>
<<set $player.work.vacation = Math.max(0, $player.work.vacation-1)>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<if $scene.at_office>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<else>>
<<set $player.location = "Phonecall">>
<</if>>
<<if $scene.at_office>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<<else>>
<<createAdvBGR "./images/locations/phonecall.png">>
<</if>>
<div id="invframe" class="scrolltext">
<<if $scene.differentCage && ($scene.directInspection || $scene.at_office)>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office. Her lazer-like gaze focuses on your crotch and you would swear she could see right through your clothing...<br>
<br>
<<set _cage = setup.getItemFromType("cage")>>
<<set _keyId = setup.getItemObj(_cage).lockable[1]>>
<<if setup.checkItemOwned(_keyId)>>
<<printThought "Uh-oh... this isn't what I was wearing before...<<if !setup.checkItemInInventory(_keyId)>> and I left the key at home...<</if>>">>
<<elseif $scene.hadCageKey>>
<<printThought "Uh-oh... this isn't what I was wearing before... and she still has the key!">>
<<else>>
<<printThought "This isn't what I was wearing before... but I had the key, so this has to be allowed, right?">>
<</if>>
<br><br>
Without a word she leads you into her inner office.<br>
<br>
[<<moveTo "event_wrong_chastity_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_5'>><<set $scene.directInspection=true>>">>]
<<elseif $scene.improperKey>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office. Her lazer-like gaze looks at your chastity device... and then at your pocket.<br>
<br>
Without a word she leads you into her inner office.<br>
<br>
[<<moveTo "event_eroneous_key_1" "Continue." 60 "<<set $scene.inspectionReturn='event_manager_daily_check_stage_5'>><<set $scene.directInspection=true>>">>]
<<elseif $scene.directInspection>>
<<=setup.getNpcName("npc_manager","formal")>> looks you over and
<<if $scene.passed>>
nods, acknowledging your appropriate attire and sending you back to work.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Back to your desk." 300 "<<if $scene.beforetasklocation>><<set $scene.beforetasklocation.pop()>><</if>>">>]
<<else>>
and shakes her head. "@@.npc_manager;You are unprepared for work. I am afraid that, under current regulations, I am afforded no opportunity for leniency in addressing such matters, and must, therefore dismiss you for the day. Do endeavor to come to work properly prepared and attired in the future.@@"<br>
<br>
She returns to her office, leaving you alone.<br>
<br>
[<<moveTo "event_manager_stage5_leave_1" "Leave the office." 300>>]
<</if>>
<<elseif $scene.at_office>>
<<if $scene.passed && $scene.genital_change != "" && !($player.body_ref.penis && $npc_manager.flags.penis_shrinking.shrink_event_ready && $player.body_ref.shrink_style != 'none') && !setup.hasTmpEffect('drug_dick')>>
<<=setup.getNpcName('npc_manager', 'formal')>> emerges from her inner office.<br>
<br>
<<include "inspectionText_gasmask">>
She pauses, a puzzled look on her face as she looks at your crotch. "@@.npc_manager;What did you—? Take off your clothes, I want a proper view of what is going on down there.@@"<br>
<br>
<<printThought "This must be about my surgery... how can she tell through clothes?">><br>
<br>
[<<moveTo "event_inspection_genitals_1" 'Do as she commands.' 300 "<<set $scene.cleaningReturn='event_manager_daily_check_stage_5_finalize'>>">>]
<<else>>
<<if $now.getUTCHours() == 8>>Precisely at eight <</if>><<=setup.getNpcName("npc_manager","formal")>> emerges from her inner office
<<if $scene.allButDrugPassed>>
to look at you with narrowed eyes. "@@.npc_manager;You appear to not be under the effect of your mandatory medication. It really is for your own good. I advise you to seek out <<if State.hasPlayed("event_betray_work_doctor_7")>>someone in the pharmaceutical R&D department<<else>><<=setup.getNpcName("npc_work_doctor","formal")>><</if>> after work and rectify this issue.@@"<br>
<br>
<<printThought "She's not even pretending that she needs a device to check things... though I guess her not enforcing things is something...">><br>
<br>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Back to your desk." 300 "<<if $scene.beforetasklocation>><<set $scene.beforetasklocation.pop()>><</if>>">>]
<<elseif $scene.passed>>
to greet you with a nod, acknowledging your appropriate attire and sending you back to work.<br>
<br>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Back to your desk." 300 "<<if $scene.beforetasklocation>><<set $scene.beforetasklocation.pop()>><</if>>">>]
<<else>>
only to shake her head. "@@.npc_manager;You are unprepared for work. I am afraid that, under current regulations, I am afforded no opportunity for leniency in addressing such matters, and must, therefore dismiss you for the day. Do endeavor to come to work properly prepared and attired in the future.@@"<br>
<br>
She returns to her office, leaving you alone.<br>
<br>
[<<moveTo "event_manager_stage5_leave_1" "Leave the office." 300>>]
<</if>>
<</if>>
<<else>>
You get a call... probably concerning the fact that you are not at work.<br>
<br>
"@@.npc_manager;I keep telling you that the company does not allow for work from home for employees in your position. <<if $scene.vacation>>I am afraid this will have to come out of your PTO — of which you have <<=$player.work.vacation>> days left. I advise you not to run out...<<else>>Unfortunately you are out of PTO and there is nothing more I can do<</if>>.@@"<br>
<br>
She hangs up.<br>
<br>
<<if $scene.vacation>>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<<else>>
[<<moveTo "event_manager_stage5_start_bad_end" "Put your phone away." 300 "<<set $scene.beforetasklocation.pop()>>">>]
<</if>>
<</if>>
</div><<include "postInspectionCleanup">>
<<if $scene.manager_outfit && $scene.manager_outfit != "repeat">>
<<moveTo "event_inspection_manager_outfit_1">>
<<else>>
<<set _x = setup.addManagerEndlessTask()>>
<<moveTo "room_office_sissy_secretary_work_morning_start">>
<</if>>/*#
#desc: manager greets you morning after de-evil
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $currentTasks.manager_morning_inspection_task.condition="">>
<<set _x = setup.addManagerEndlessTask()>>
<<if setup.checkTaskUntimedComplete('manager_morning_inspection_task') || $now.getUTCDay() == 5 || $now.getUTCDay() == 4>>
<<include "postInspectionCleanup">>
<<addWorkEvent 'post_evil_afternoon'>>
<<initRoom>>
<<moveTo "event_manager_daily_check_stage_5">>
<<else>>
<<set _nextDate = setup.setNextDate($now, 1, 0, 0)>>
<<addEvent 'manager_post_evil_power' _nextDate>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You arrive to work and <<=setup.getNpcName("npc_manager","formal")>> waves through your inspection.<br>
<br>
"@@.npc_manager;So, with <<=setup.getNpcName("npc_rival","formal")>> dealt with it is time for some... re-organisation.@@" She sighs in obvious annoyance. "@@.npc_manager;I was up all night reviewing the state of the department and... I will be honest, it is almost impressive that <<he npc_rival>> could screw up so many things so swiftly. In any case, today we are getting things back on track, I will be in group calls meetings all morning to reintroduce the new old boss, and then this afternoon I have one on ones to address a few particularly egregious managerial failures.@@"<br>
<br>
You nod and promise to handle any interruptions so that <<=setup.getNpcName("npc_manager","formal")>> can keep focused.<br>
<br>
<<if $npc_manager.flags.cruel>>
"@@.npc_manager;Just as you should.@@" She says with a curt nod.
<<else>>
"@@.npc_manager;Wonderful.@@" She says with a smile.
<</if>>
"@@.npc_manager;And now to get to that first meeting, punctuality is a pillar of society, after all.@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> disappears back into her office leaving you to your own work.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_morning_start" "Get to work." 300 "<<set _x = setup.addManagerEndlessTask()>>">>]
</div>/*#
#desc: manager cleans up after npc_rival
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $now = setup.advanceDate($player, $now, 'minutes', 200)>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
The afternoon starts and the first of <<=ps(setup.getNpcName("npc_manager","formal"))>> one on ones arrives. She has several long meetings with her department-heads, <<=setup.getNpcName("npc_development","formal")>>, <<=setup.getNpcName("npc_discipline","formal")>>, <<if State.hasPlayed("event_landlord_retention_mission_7") || State.hasPlayed("event_guard_retention_mission_5")>>and <<=setup.getNpcName("npc_harassment","formal")>><<else>>, and even <<=setup.getNpcName("npc_retention","formal")>><</if>> cycling through. After that it seems to be various other managers or employees whose careers were particularly derailed by the short-lived <<=setup.getNpcName("npc_rival","last")>> regime.<br>
<br>
In amongst this latter group is a familiar face — <<=setup.getNpcName('npc_futa', 'first')>> waving at you while having a look of nervous trepidation as she walks into the office... only to emerge twenty minutes later with a wide smile on her face as she takes a moment to stop by your desk.<br>
<br>
[<<moveTo "event_manager_post_evil_afternoon_2" "What happened?" 300>>]
</div>/*#
#desc: manager promotes npc_futa
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_futa.other_call = "Domina">>
<<set $scene.workEventCount = 50>> /%to prevent any other events%/
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImage("npc_futa","npc_futa_4")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_futa', 'first')>> what happened and she beams.<br>
<br>
"@@.npc_futa;So you know how <<=setup.getNpcName('npc_rival', 'formal')>> had me doing just... busy-work basically that wasn't really advancing my career? Well <<=setup.getNpcName('npc_manager', 'other')>> not only acknowledged the problem, she recognised my prior achievements and gave me a promotion! You're talking to <<=setup.getNpcName('npc_futa', 'other')>> now... though, to you, it will always be <<=setup.getNpcName('npc_futa', 'first')>>. I'll still be doing on-boarding, but I'll be heading up a team rather than being swamped solo and our mandate is to handle maximising retention by tackling particularly specialised or potentially problematic merger employees.@@"<br>
<br>
You congratulate <<=setup.getNpcName('npc_futa', 'first')>> on the promotion and she beams.<br>
<br>
"@@.npc_futa;Yup, I've got a whole new motivation, it's just so great to feel like management is behind you... rather than just staring at your behind... plus the new job comes with a big salary boost, and a swank benefits package... which means me and <<if $options.fem>><<=ps($npc_futa.flags.gfname)>><<else>><<=ps($npc_futa.flags.bfname)>><</if>> are getting a new place... and I'll be figuring out how to maximise my home dungeon benefits!@@"<br>
<br>
<<=ps(setup.getNpcName('npc_manager', 'formal'))>> next appointment is walking in so you give <<=setup.getNpcName('npc_futa', 'first')>> a final congratulations on things before she leaves, already on the phone with her <<boy>>friend/sub.<br>
<br>
[<<moveTo $scene.workEventReturn "Keep on working." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: manager summons you after work de-evil
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You reach the end of what you would definitely describe as a unique shift, a final manager walking past your desk to depart when <<=setup.getNpcName("npc_manager","formal")>> calls out your name, her voice sounding heavy and tired.<br>
<br>
[<<moveTo "event_manager_post_evil_apology_2" 'Attend to your <<=setup.getNpcName("npc_manager","title")>>.' 180>>]
</div>/*#
#desc: manager greets and binds you after work de-evil
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "rope_harness">>
<<wearItem "rope_harness" true>>
<<addItem "ball_gag_red">>
<<wearItem "ball_gag_red" true>>
<<applyExperience 'bondage' 15 'normal' $SEEN_FRIEND>>
<<applyExperience 'submission' 18 'very' $SEEN_FRIEND>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You enter <<=ps(setup.getNpcName("npc_manager","formal"))>> inner office to find her not at her usual place behind her desk. Instead she stands near the centre of the room, a coil of rope in one hand as she points to a chair. "@@.npc_manager_dom;Sit.@@" She states simply, yet the word is infused with a level of authority that you seldom hear... and you hurry to obey.<br>
<br>
You wait obediently, and a touch nervously, as <<=setup.getNpcName("npc_manager","formal")>> swiftly binds you in place. For one normally so eloquent her silence is strange, and you hope it is not some lingering after-effect of her evil self.<br>
<br>
Whatever other issues she may be facing, <<=setup.getNpcName("npc_manager","formal")>> is as efficient as ever, soon having you quite immobilised in the chair. You hear, and feel, her rise to stand behind your chair... and then watch as a gag is lowered in front of you. Your lips part as your ability to speak is removed... and your curiosity heightened further.<br>
<br>
<<printThought "Does she want to play? I guess it would make sense after a stressful day... but normally she'd be teasing me or something by now...">><br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> walks around in front of you and you straighten in your chair, doing your best to be the "representative <<if $fetish.sissy>>SISSI <</if>>Secretary" she has taught you to be. The corner of her mouth flickers ever so slightly... but rather than do anything, she pulls a second chair over and takes a seat facing you.<br>
<br>
<<if $npc_manager.flags.cruel>>
[<<moveTo "event_manager_post_evil_apology_3_cruel" "What's going on?" 300>>]
<<else>>
[<<moveTo "event_manager_post_evil_apology_3_nice" "What's going on?" 300>>]
<</if>>
</div>/*#
#desc: manager remove collar
#status: RELEASED 0.9.4.0
#ignore_spell: mrr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCollar = $player.flags.collar.owner == 'npc_manager'>>
<<if $scene.removeCollar>>
<<set $player.flags.collar.owner = ''>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $scene.collar true>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.removeCollar>>
She looks at you for a long moment, seeming as if she is trying to freeze a mental image... and then she reaches forward, around your neck to remove your collar, HER collar, and place it to one side.<br>
<br>
You immediately struggle, your confusion at a peak as you try to ask what you did wrong.
<<else>>
"@@.pc;Mrr?@@" You mumble through your gag in confusion.
<</if>>
<br><br>
"@@.npc_manager;Shhh, the gag is there for a reason... not so much for you, per se but...@@" <<=setup.getNpcName("npc_manager","formal")>> takes a deep breath, a hesitance in her voice that you have very seldomly heard. Seeming to recognise your worry she forces a kind smile and reaches out to tenderly brush your cheek.<br>
<br>
"@@.npc_manager;My dear, dear <<=$player.first_name>>... we have been through so much together. Recently, most of all...@@" She shakes her head, and you nuzzle back into her hand in an attempt to comfort only for her to retract her arm. "@@.npc_manager;No, that sort of distraction is precisely why you are as you are...@@" this time she sighs, closing her eyes as she musters her energy for... what, you are not yet certain.<br>
<br>
"@@.npc_manager;Where to begin... at the begining, I suppose. <<if State.hasPlayed("event_manager_theme_private_you")>>As you know, our acquaintance was far from an accident... at<<else>>I presume it is no surprise for you to hear that your coming into my care was hardly an accident. No... everything about that day, and even before, from the data loss, to the state of your relationship, to that tainted supplement... all of it was planned. Not by me, mind, I only found out a little later... but I played my part nonetheless, yes? At<</if>> first your were just another responsibility, a way to keep <<=setup.getNpcName("npc_boss","formal")>> placated while I...@@" she chuckles as she shakes her head. "@@.npc_manager;Well... while I failed to do much of anything, scheming and planning... only to make little that could be regarded as progress while you...@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles, seeming about to reach out to you once more, only to pause and retract her hand. "@@.npc_manager;You may have failed... but you tried, and in so doing perhaps lead the way to... but again, I get ahead of myself.@@"<br>
<br>
[<<moveTo "event_manager_post_evil_apology_4_nice" "Keep listening..." 300>>]
</div>/*#
#desc: manager apologises for past
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> looks you in the eye... not as your <<=setup.getNpcName("npc_manager","title")>>, or your <<=setup.getNpcName("npc_manager","custom","manager")>>, not with any of the confidence and authority to which you have become accustomed, but with something else, a deepness of affection, and a hint of fear... and a powerful sense of loneliness.<br>
<br>
"@@.npc_manager;The reason I have you like this, gagged, restrained... is because if you could interrupt me I do not know if I could finish. Things have been done to you, some by my hand, others without my resistance... that were wrong. At first I told myself that you were merely collateral damage... or that you were okay with it. Personal lies that would fall apart in time... if, perhaps, to different degrees. So, to begin with... I apologise, for your getting dragged into all of this against your will and, most of all, for the part I played in it.@@"<br>
<br>
She takes another deep breath, continuing with additional confidence. "@@.npc_manager;From there, well... I must thank you, for being my assistant, my submissive<<if $scene.removeCollar>>, my slave<</if>>... and for saving me when I was lost to everything. Things may be back as they were... but there is no going back to the before.@@" A determined edge begins to creep into her voice and with it a confidence that had wavered during her more emotional monologue.<br>
<br>
[<<moveTo "event_manager_post_evil_apology_5_nice" "Keep listening..." 300>>]
</div>/*#
#desc: manager apologises for present
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "ball_gag_red" true>>
<<deleteItem "ball_gag_red">>
<<set $scene.actions = {}>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Whatever you may think of me, and that would be your right, <<=setup.getNpcName("npc_boss","formal")>> is the problem. <<He npc_boss>> has always been the problem, the one who started this dance, and the one who has ensured that the music continues to play to <<his npc_boss>> tune. Well... it is time to put an end to that. To <<his npc_boss>> control over this company, to <<his npc_boss>> malevolent hand reaching out to grab hold of the entire world... I have tried to work against <<him npc_boss>>, as has <<=setup.getNpcName("npc_psychiatrist","formal")>>, as did your friends, in the brief moments in which they had the opportunity... but, most of all, as have you. Apart we have each failed but together? Well, together we have a chance... but that chance has a key part... and that part is, again, you.@@"<br>
<br>
You're more than a little overwhelmed by her monologue thus far, but the final words have you looking back in puzzlement, particularly in light of what happened after your prior effort.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles in amusement. "@@.npc_manager;I see that confusion... and, I suppose, it makes sense. After all, we have only just made it out the other side of quite the disastrous failure<<if $npc_technician.flags.evil == 1 || $npc_admin.flags.evil < 4 || $npc_psychiatrist.flags.evil == 1 || !State.hasPlayed("event_landlord_post_surgery_1")>>... and not even quite done yet<</if>>. The thing is, that very effect points to why you are the key. Even after all you did... <<=setup.getNpcName("npc_boss","formal")>> does not see you as a threat. Certainly, your actions resulted in punishment, but look at where it landed. You suffered hardship, yes, but from a certain point of view <<=setup.getNpcName("npc_boss","formal")>> all but let you go... and that is because, even after all of this... <<he npc_boss>> does not consider you a threat. <<He npc_boss>> sought to rob me of who I am, but you? Well, without your "influences," what threat could you be?@@"<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grins, the confidence you normally see from her back in force.<br>
<br>
"@@.npc_manager;You are the secret weapon, the threat that <<=setup.getNpcName("npc_boss","formal")>> is psychologically incapable of predicting, or controlling for. <<He npc_boss>> is wary of me, can predict me, to a point, but you? You can get through, can survive, you have proven both... all you need now, well... is support. I have already conferred with your friend <<=setup.getNpcName("npc_ai","first")>>... obviously, I suppose, given that we are having this conversation, you may coordinate through either of us. She has the connections, but lacks the human emotion and the means to act. I have power... but on my own <<=setup.getNpcName("npc_boss","formal")>> would see me coming, and would prevent me from going so many places that might be useful, but you... you are unpredictable and can go where we cannot... and then we, and what other friends you may gather... together, we will bring an end to <<his npc_boss>> reign... and then? Well... then it will be up to you.@@"<br>
<br>
She stands, walking around behind and untying your bonds... and then uncliping your gag to whisk it away.<br>
<br>
<<include "postEvilApologyNiceOptions">>
</div><<if $scene.actions.comfort>>
[@@.link_locked;You already attempted to comfort her.@@]<br>
<<else>>
[<<moveTo "event_manager_post_evil_apology_6_nice" "Comfort her." 120 "<<set $scene.action='comfort'>>">>]<br>
<</if>>
<<if $scene.actions.accept>>
<<if $scene.actions.accept_full>>
[@@.link_locked;You already accepted her full apology.@@]<br>
<<elseif $scene.actions.accept_unnecessary>>
[@@.link_locked;You already accepted her apology, and re-assured her prior actions.@@]<br>
<<else>>
[<<moveTo "event_manager_post_evil_apology_6_nice" "Say you accept her apology for the rest, from before her full evil phase." 120 "<<set $scene.action='accept_full'>>">>]<br>
[<<moveTo "event_manager_post_evil_apology_6_nice" "Say there is nothing else for her to apologise for." 120 "<<set $scene.action='accept_unnecessary'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_post_evil_apology_6_nice" "Say you accept her apology." 120 "<<set $scene.action='accept'>>">>]<br>
<</if>>
<<if ["money","strict","forced"].includes($player.sec_style.identify_fem)>>
<<if $scene.actions.man>>
[@@.link_locked;You already asked about going back to being a man.@@]<br>
<<else>>
[<<moveTo "event_manager_post_evil_apology_6_nice" "Ask if this means you can return to being a man?" 120 "<<set $scene.action='man'>>">>]<br>
<</if>>
<</if>>
<<if $scene.removeCollar>>
<<if $scene.actions.collar>>
<<if $scene.actions.want_collar>>
[@@.link_locked;You already asked for her to re-collar you.@@]<br>
<<else>>
[<<moveTo "event_manager_post_evil_apology_6_nice" "Insist that you desire her collar." 120 "<<set $scene.action='want_collar'>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_manager_post_evil_apology_6_nice" "Ask why she removed your collar?" 120 "<<set $scene.action='collar'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_manager_post_evil_apology_7_nice" "Move forward and ask what comes?" 120>>]/*#
#desc: respond to manager apology
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.actions[$scene.action] = true>>
<<switch $scene.action>>
<<case "need_collar">>
<<incrementEmotion 'affection' 'npc_manager' 10>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<wearItem $player.flags.collar.collarId true>>
<<set $player.flags.collar.owner = 'npc_manager'>>
<<case "want_collar">>
<<incrementEmotion 'affection' 'npc_manager' 5>>
<<applyExperience 'submission' 20 'normal' $SEEN_FRIEND>>
<<case "comfort">>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<case "accept">>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<case "accept_full">>
<<incrementEmotion 'affection' 'npc_manager' 5>>
<<case "accept_unnecessary">>
<<incrementEmotion 'affection' 'npc_manager' 10>>
<</switch>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'comfort'>>
You reach out to comfort <<=setup.getNpcName("npc_manager","formal")>>, to explain that you understand what she is going through, and that you are glad to have her back, and to have her help against the true enemy in <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
"@@.npc_manager;Thank you.@@" <<=setup.getNpcName("npc_manager","formal")>> replies, "@@.npc_manager;I cannot undo the past, for good or ill... but I promise to help you carve out a better future... for all of us.@@"
<<case 'accept'>>
You tell <<=setup.getNpcName("npc_manager","formal")>> that you accept her apology, and had already forgiven her prior actions.<br>
<br>
She smiles softly, gratefully. "@@.npc_manager;Thank you. I made the apology because it was the right thing to do, and I meant it... but you accepting it, well... I am grateful for that. The things I did may not have been me... but it was a reflection of me, even if it was a dark one.@@"
<<case 'accept_full'>>
You nod again, clarifying that you accept <<=ps(setup.getNpcName("npc_manager","formal"))>> apology for everything, that you know what the company can force people to do, and, particularly knowing her motivations, you do not blame her for her actions.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles once again, seeming as if a weight has lifted off her shoulders as she responds with a simple, uncharacteristically short, and all the more meaningful for it, "@@.npc_manager;Thank you.@@"
<<case 'accept_unnecessary'>>
You respond that you will not accept an apology for <<=ps(setup.getNpcName("npc_manager","formal"))>> actions prior to her turn to evil... because there is nothing to apologise for.<br>
<br>
<<set _style = setup.getSecretaryStyle()>>
<<switch _style[0]>>
<<case 'perfect' 'primary'>>
<<switch _style[1]>>
<<case 'strict' 'forced'>>
<<=setup.getNpcName("npc_manager","formal")>> raises an eyebrow. "@@.npc_manager;Nothing? Hmm... I suppose that confirms it. I always did think you were playing the recalcitrant a little too well... sustaining it quite past the point of plausibility... well, I am glad it worked out for you... brat.@@"
<<case 'money'>>
<<=setup.getNpcName("npc_manager","formal")>> smiles slightly. "@@.npc_manager;You really are that money-motivated? Maybe you were built for the corporate life after all.@@"
<<case 'obedient'>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;You really are a prefect submissive thing... I suppose it is good fortune for both of us that you found your way to someone who could guide you along to what you wanted...@@"
<<case 'voluntary' 'enthusiast'>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;You really are such an enthusiastic thing... I almost wonder how you made it so long, but I am glad that I was able to light the spark, or would that be crack the egg?@@"
<<default>>
ERROR: unexpected style <<=_style[1]>>
<</switch>>
<<case 'split' 'tie'>>
<<if ["strict", "forced"].includes(_style[1]) || ["strict", "forced"].includes(_style[2])>>
<<=setup.getNpcName("npc_manager","formal")>> raises an eyebrow. "@@.npc_manager;Nothing? Hmm... I suppose that confirms it. I always did thing you were putting up a front with your recalcitrant... well, I am glad it worked out for you... brat.@@"
<<elseif "money" == _style[1] || "money" == _style[2]>>
<<=setup.getNpcName("npc_manager","formal")>> smiles slightly. "@@.npc_manager;For one so greedy... you came quite cheap. Something to consider in your future career, perhaps.@@"
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;You really are such a thing... the perfect subject for which all of this might be termed luck, hmm?@@"
<</if>>
<<case 'confused'>>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;To tell you the truth... I do not think I ever quite figured you out... but I will accept the apology nonetheless. Thank you.@@"
<<default>>
ERROR: unexpected style-type <<=_style[0]>>
<</switch>>
<<case 'man'>>
You ask if this means you can go back to being a man?<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> seems almost taken by surprise by this question, but she finally shakes her head. "@@.npc_manager;No... we are risking enough as it is, until <<=setup.getNpcName("npc_boss","formal")>> is dealt with this remains a part you must continue to play. Remember, your power comes from <<his npc_boss>> hubristic underestimation of your capabilities, and your determination. You have come this far, you can wear the mask a bit longer to see it through.@@"
<<case 'collar'>>
You ask why <<=setup.getNpcName("npc_manager","formal")>> removed your collar?<br>
<br>
She sighs softly, "@@.npc_manager;Because I don't deserve it, or you. I was honoured to be your <<=setup.getNpcName("npc_manager","title")>>, but what brought things to that point... to say nothing of my behaviour over the past weeks... the company may require you to wear a collar as part of your duties, and I will attend to that shortly... but you deserve a better owner than me.@@"
<<case 'want_collar'>>
You pick up the collar and hold it out for <<=setup.getNpcName("npc_manager","formal")>> and insist that she put it back where it belongs — locked around your throat.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> starts to reach out, but freezes, shaking her head... though with the faintest hint of hope in her voice. "@@.npc_manager;No... I can't, I told you—@@"<br>
<br>
[<<moveTo "event_manager_post_evil_apology_6_nice" "Insist." 180 "<<set $scene.action='need_collar'>>">>]<br>
[<<moveTo "event_manager_post_evil_apology_6_nice" "Maybe she's right..." 180 "<<set $scene.action='no_collar'>>">>]<br>
<<case 'need_collar'>>
You set your face in determination and go one step further, dropping to your knees and raising the collar up with both hands in offering. Keeping your voice calm you explain that you accepted her collar the first time because you wanted it, and that you, more than anyone, understand how the company can force one into actions.<br>
<br>
You look up at her as tears start to well in her eyes as you state plainly that your relationship is not merely manager and secretary, that she is more than <<=setup.getNpcName("npc_manager","formal")>>... she is YOUR <<=setup.getNpcName("npc_manager","title")>>, and it is as much her duty to collar you as it will be your joy to feel it around your neck once again. Where it belongs.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> almost trembles as she slowly takes the collar in her hand, smiling lovingly down at you as you <<if $player.hair.length > 1>>hold your hair out of the way and <</if>>offer your throat.<br>
<br>
The collar closes around your neck, familiar
<<if $player.flags.collar.collarId == "manager_company_collar" || $player.flags.collar.collarId == "metal_collar_black">>
steel locking around your throat with a soft click, a refreshing coolness that begins to fade as the metal re-adjusts to your body.
<<elseif $player.flags.collar.collarId == "secure_sissy_choker">>
pink frills brushing your throat and the underside of your chin as the lock clicks closed.
<<else>>
ERROR: unexpected collar id: <<=$player.flags.collar.collarId>>
<</if>>
<br><br>
A wave of submissive joy washes over you and you smile up at your <<=setup.getNpcName("npc_manager","title")>>, beaming with joy as you thank her for accepting you once again.<br>
<br>
"@@.npc_manager;No, thank you.@@" She whispers, gently looping a finger through the ring at the front of your collar and guiding you back to your feet, and into her arms for a kiss rich with passion beyond words.<br>
<br>
You all but melt, returning the kiss with equal energy as you hug her back, wanting to prove to her that you are here for her, are hers, and more than happy to spend eternity in this moment in her arms.<br>
<br>
Such perfect moments cannot last, however, and finally she guides you back down, her smile one of pure, unreserved joy. "@@.npc_manager;Thank you... would that we could just run away... or I could somehow protect you... but the only way out of this situation is through <<=setup.getNpcName("npc_boss","formal")>>... but knowing that you are here for me... well, in a way I have already won. Now, it is time for the both of us to triumph... and for <<=setup.getNpcName("npc_boss","formal")>> to lose.@@"
<<case 'no_collar'>>
You slowly place the collar back down. Perhaps <<=setup.getNpcName("npc_manager","formal")>> is right. Maybe there is too much baggage between the two of you, and it would be better to focus your energies on the task at hand, on <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
She seems to silently understand your decision, ever-so-slightly nodding as you place the collar back down.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<if $scene.action != 'want_collar'>>
<<include "postEvilApologyNiceOptions">>
<</if>>
</div>/*#
#desc: manager nice apology: what comes next
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "rope_harness" true>>
<<deleteItem "rope_harness">>
<<if !$scene.actions.need_collar>>
<<set $player.flags.collar.collarId = "">>
<<set $player.flags.collar.owner = "">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName("npc_manager","formal")>> what comes next... and <<=ps(setup.getNpcName("npc_ai","first"))>> hologram shimmers into existence standing next to <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
<<if $npc_technician.flags.evil == 1 || $npc_admin.flags.evil < 4>>
"@@.npc_manager;First there is the issue of the others who suffered for your ill-fated rebellion. Just as you saved me there remains your <<if $npc_technician.flags.evil == 1 && $npc_admin.flags.evil < 4>>friends <<=setup.getNpcName("npc_technician","other")>> and <<=setup.getNpcName("npc_admin","other")>><<elseif $npc_technician.flags.evil == 1>>friend <<=setup.getNpcName("npc_technician","other")>><<elseif $npc_admin.flags.evil < 4>><<=setup.getNpcName("npc_admin","other")>><</if>>.<<if $npc_psychiatrist.flags.evil == 1>>.. there is also the matter of <<=setup.getNpcName("npc_psychiatrist","formal")>>. Regaining her assistance will be key to removing <<=setup.getNpcName("npc_work_doctor","formal")>>.<</if>>@@"<br>
<br>
<<if !State.hasPlayed("event_landlord_post_surgery_1")>>
"@@.npc_ai;<<uc "There is also your landlord, <<=uc(setup.getNpcName('npc_landlord','other'))>>, currently hiding out in the mall at Cafe Newtype, if you could assist <<if $npc_landlord.fem>>her she<<else>>him he<</if>>, too, should prove a valuable asset.">>@@" <<=setup.getNpcName("npc_ai","first")>> adds.<br>
<br>
<</if>>
"@@.npc_manager;Once that is dealt with... we can begin moving up the chain. You tried before to go straight for the head of the serpent... and we all felt how poorly that ended. No, we are only going to have one more shot at <<=setup.getNpcName("npc_boss","formal")>>, we must first remove <<his npc_boss>> closest allies — <<=setup.getNpcName("npc_work_doctor","formal")>>, <<=setup.getNpcName("npc_nintendolls","formal")>>, <<=setup.getNpcName("npc_rival","formal")>>, and <<=setup.getNpcName("npc_retention","formal")>>.@@"
<<else>>
"@@.npc_manager;You appear to have been quite busy, already taking care of your friends while you were getting me back.<<if $npc_psychiatrist.flags.evil == 1>>.. though there remains the matter of <<=setup.getNpcName("npc_psychiatrist","formal")>>. Regaining her assistance will be key to removing <<=setup.getNpcName("npc_work_doctor","formal")>>.<</if>>@@"<br>
<br>
<<if !State.hasPlayed("event_landlord_post_surgery_1")>>
"@@.npc_ai;<<uc "There is also your landlord, <<=uc(setup.getNpcName('npc_landlord','other'))>>, currently hiding out in the mall at Cafe Newtype, if you could assist <<if $npc_landlord.fem>>her she<<else>>him he<</if>>, too, should prove a valuable asset.">>@@" <<=setup.getNpcName("npc_ai","first")>> adds.<br>
<br>
<</if>>
"@@.npc_manager;The next step will be moving up the chain. You tried before to go straight for the head of the serpent... and we all felt how poorly that ended. No, we are only going to have one more shot at <<=setup.getNpcName("npc_boss","formal")>>, we must first remove <<his npc_boss>> closest allies — <<=setup.getNpcName("npc_work_doctor","formal")>>, <<=setup.getNpcName("npc_nintendolls","formal")>>, <<=setup.getNpcName("npc_rival","formal")>>, and <<=setup.getNpcName("npc_retention","formal")>>.@@"
<</if>>
<br><br>
<<if $npc_primrose.flags.evil == 1>>
"@@.npc_ai;<<uc "One additional item would be the matter of <<=uc(setup.getNpcName('npc_primrose','formal'))>>. While, in some ways a willing slave to <<=uc(setup.getNpcName('npc_boss','formal'))>>, the poor <<=uc(setup.getNpcName('npc_primrose','custom','doctor'))>> has, perhaps, suffered even more than yourself... we leave <<if $npc_primrose.fem>>her<<else>>his<</if>> fate to you, but dealing with <<if $npc_primrose.fem>>her<<else>>him<</if>> in some manner would be prudent to fully isolate <<=uc(setup.getNpcName('npc_boss','formal'))>>.">>@@"<br>
<br>
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> nods in the direction of the shimmering AI hologram. "@@.npc_manager;<<=ps(setup.getNpcName("npc_ai","first"))>> free run of the company, and beyond, will prove vital, you may coordinate your efforts with her, or with me but, as we discussed previously, you are the tip of the spear that will slip through <<=ps(setup.getNpcName('npc_boss','formal'))>> armour and bring about the fate <<he npc_boss>> deserves.@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> blinks. "@@.npc_ai;<<uc "We understand the responsibility placed upon you, Unit">> <<uc $player.first_name>><<uc ", but there is no other way. You and I have tried alone, and failed. Now, it is time to work together and bring an end to <<=uc(setup.getNpcName('npc_boss','formal'))>>.">>@@"<br>
<br>
You nod, between <<=ps(setup.getNpcName("npc_manager","formal"))>> apology and the rest it feels like things have ascended to another level... but also, that the end is finally in sight.<br>
<br>
"@@.npc_manager;Quite so... and one final thing.@@" <<=setup.getNpcName("npc_manager","formal")>> states...<br>
<br>
[<<moveTo "event_manager_post_evil_apology_8_nice" "More?" 120>>]
</div>/*#
#desc: manager gives you money
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<addCredits 1000000>>
<<if $events.hasOwnProperty("tax_event")>>
<<removeEvent "tax_event">>
<</if>>
<<if !$scene.actions.need_collar>>
<<addItem "company_collar">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;To help with your preparations, and as a concrete token of my gratitude, I have taken the liberty of making a deposit into your account. It is all clean and untraceable, consider it a bonus for my rescue, and use it how you will.@@" <<=setup.getNpcName("npc_manager","formal")>> smiles. <<if State.hasPlayed("theme_manager_buyout_3_stay")>>"@@.npc_manager;I realise the slightly ironic amusement, given your buying yourself out of your contract... but, still, credits are always useful.@@"<<elseif $player.money.total >= 250000>>"@@.npc_manager;Given your substantial financial resources I suppose this may be superfluous... but credits can always be useful. Oh, and do not be concerned with your corporate debt. It will remain on the books to prevent <<=setup.getNpcName("npc_boss","formal")>> from growing suspicious, but I will ensure it is expunged once <<he npc_boss>> has been dealt with.@@"<<else>>"@@.npc_manager;Oh, and do not be concerned with your corporate debt. It will remain on the books to prevent <<=setup.getNpcName("npc_boss","formal")>> from growing suspicious, but I will ensure it is expunged once <<he npc_boss>> has been dealt with.@@"<</if>><br>
<br>
<<if $scene.actions.need_collar>>
<<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;With that... I believe we are finished. Remember, <<if $npc_technician.flags.evil == 1 || $npc_admin.flags.evil < 4 || $npc_psychiatrist.flags.evil == 1 || !State.hasPlayed("event_landlord_post_surgery_1")>>gather your allies and<</if>> work your way up the chain. Only once <<he npc_boss>> is isolated shall we turn our attentions to <<=setup.getNpcName("npc_boss","formal")>> and this time... this time <<he npc_boss>> will be the one falling from power. And again... thank you <<=$player.first_name>>... thank you for everything and, most of all, for being you... and for permitting me to claim you as mine.@@"<br>
<br>
[<<moveTo "event_manager_post_evil_apology_9_nice" "Leave." 300>>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> takes a deep breath. "@@.npc_manager;Finally there is the matter of your collar. It is no longer my right to hold such over you... but it remains a requirement of your employment.@@" She walks over to her desk, coming back with a stark, company-logo collar. "@@.npc_manager;You may wear this. It will not mean anything... but it will keep you from drawing unwanted attention as you work here on the upper floors.@@"<br>
<br>
[<<moveTo "event_manager_post_evil_apology_9_nice" "Put on the collar and leave." 300>>]
<</if>>
</div>/*#
#desc: leave after manager apologises
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if !$scene.actions.need_collar>>
<<wearItem "company_collar" true>>
<<set $player.flags.collar.collarId = "company_collar">>
<<set $player.flags.collar.owner = 'company'>>
<<fixItemSetsReplaceSlot "choker" "company_collar">>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.actions.need_collar>>
You wrap the collar around your neck as <<=setup.getNpcName("npc_manager","formal")>> and <<=setup.getNpcName("npc_ai","first")>> watch stoically on.
<</if>>
With a reflexive curtsy you leave, your future set, but uncertain, the stakes raised, but a plan stretching out before you...<br>
<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: manager cruel apology intro
#status: RELEASED 0.9.4.0
#ignore_spell: mrrh
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.pc;Mrrh?@@" You ask in gag-muffled query.<br>
<br>
"@@.npc_manager;I gagged you for a reason.@@" <<=setup.getNpcName("npc_manager","formal")>> states flatly, a familiar edge of cruelty in her voice.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> stares at you for a long moment, amusement in her gaze as she seems to savour yet another moment of her silent power over you. "@@.npc_manager;So, I suppose I should thank you... though one could argue that your efforts were self-motivated. After all, even the worst of my prior treatment was hardly on par with what temporarily <<=setup.getNpcName("npc_boss","formal")>> turned me into.@@" Her disgust is palpable, partially at being in debt to your actions, but most of all in clear hatred for <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
"@@.npc_manager;Now that I am back, however... well, now it is time for you to get to the REAL work. Your prior effort against <<=setup.getNpcName("npc_boss","formal")>> was clumsy, ineffective... but it spoke to a hidden vulnerability in <<=setup.getNpcName("npc_boss","formal")>>, and one that it is now time to exploit to the fullest.@@"<br>
<br>
[<<moveTo "event_manager_post_evil_apology_4_cruel" "What?" 300>>]
</div>/*#
#desc: manager explains situation
#status: RELEASED 0.9.4.0
#ignore_spell: mrr
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.pc;Mrr?@@" You mumble through your gag in confusion.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> grins. "@@.npc_manager;In <<his npc_boss>> hubris <<=setup.getNpcName("npc_boss","formal")>> clearly sees you as being less than a threat. Even caught red-handed <<his npc_boss>> punishment was more aimed those around you, myself, your other friends and acquaintances... yet you sailed through virtually unscathed. If we combine that blind-spot with more purposeful efforts, and an additional ally...@@" <<=setup.getNpcName("npc_manager","formal")>> snaps her fingers and <<=setup.getNpcName("npc_ai","first")>> appears in her holographic form. "@@.npc_manager;Well... then we shall put an end to <<=setup.getNpcName("npc_boss","formal")>>. Once, and for all.@@"<br>
<br>
[<<moveTo "event_manager_post_evil_apology_5_cruel" "How?" 300>>]
</div>/*#
#desc: manager explains how destroy npc_boss
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> stands next to <<=setup.getNpcName("npc_ai","first")>> and grins, confident and in control as she lays out the plan.<br>
<br>
<<if $npc_admin.flags.evil < 4 || $npc_technician.flags.evil == 1>>
"@@.npc_manager;First there is the issue of the others who suffered for your ill-fated rebellion. Just as you reverted the company's hold over my mind, there remains your <<if $npc_admin.flags.evil < 4 && $npc_technician.flags.evil == 1>>friends <<=setup.getNpcName("npc_technician","other")>> and <<=setup.getNpcName("npc_admin","other")>><<elseif $npc_technician.flags.evil == 1>>friend <<=setup.getNpcName("npc_technician","other")>><<elseif $npc_admin.flags.evil < 4>><<=setup.getNpcName("npc_admin","other")>><</if>>.<<if $npc_psychiatrist.flags.evil == 1>>.. there is also the matter of <<=setup.getNpcName("npc_psychiatrist","formal")>>. Regaining her assistance will be key to removing <<=setup.getNpcName("npc_work_doctor","formal")>>.<</if>>@@"
<<if !State.hasPlayed("event_landlord_post_surgery_1")>>
<br><br>
"@@.npc_ai;<<uc "There is also your landlord, <<=uc(setup.getNpcName('npc_landlord','other'))>>, currently hiding out in the mall at Cafe Newtype, if you could assist <<if $npc_landlord.fem>>her she<<else>>him he<</if>>, too, should prove a valuable asset.">>@@" <<=setup.getNpcName("npc_ai","first")>> adds.
<</if>>
<br><br>
"@@.npc_manager;After that is dealt with we shall begin moving up the chain. You tried before to go straight for the head of the serpent, and we all felt how poorly that ended.@@" <<=setup.getNpcName("npc_manager","formal")>> sneers at you for a moment to drive home her annoyance at your failure. "@@.npc_manager;We are only going to have one more shot at <<=setup.getNpcName("npc_boss","formal")>>, so we must first remove <<his npc_boss>> closest allies — <<=setup.getNpcName("npc_work_doctor","formal")>>, <<=setup.getNpcName("npc_nintendolls","formal")>>, <<=setup.getNpcName("npc_rival","formal")>>, and <<=setup.getNpcName("npc_retention","formal")>>.@@"
<<else>>
"@@.npc_manager;You appear to have been quite busy, already taking care of your friends while you were getting me back.<<if $npc_psychiatrist.flags.evil == 1>>.. though there remains the matter of <<=setup.getNpcName("npc_psychiatrist","formal")>>. Regaining her assistance will be key to removing <<=setup.getNpcName("npc_work_doctor","formal")>>.<</if>>@@"<br>
<br>
<<if !State.hasPlayed("event_landlord_post_surgery_1")>>
"@@.npc_ai;<<uc "There is also your landlord, <<=uc(setup.getNpcName('npc_landlord','other'))>>, currently hiding out in the mall at Cafe Newtype, if you could assist <<if $npc_landlord.fem>>her she<<else>>him he<</if>>>, too, should prove a valuable asset.">>@@" <<=setup.getNpcName("npc_ai","first")>> adds.<br>
<br>
<</if>>
"@@.npc_manager;The next step will be moving up the chain. You tried before to go straight for the head of the serpent... and we all felt how poorly that ended. No, we are only going to have one more shot at <<=setup.getNpcName("npc_boss","formal")>>, we must first remove <<his npc_boss>> closest allies — <<=setup.getNpcName("npc_work_doctor","formal")>>, <<=setup.getNpcName("npc_nintendolls","formal")>>, <<=setup.getNpcName("npc_rival","formal")>>, and <<=setup.getNpcName("npc_retention","formal")>>.@@"
<</if>>
<br><br>
<<if $npc_primrose.flags.evil == 1>>
"@@.npc_ai;<<uc "In addition is the matter of, <<=uc(setup.getNpcName('npc_primrose','formal'))>>. While, in some ways a willing slave to <<=uc(setup.getNpcName('npc_boss','formal'))>>, the poor <<=uc(setup.getNpcName('npc_primrose','custom','doctor'))>> has, perhaps, suffered even more than yourself... we leave <<if $npc_primrose.fem>>her<<else>>his<</if>> fate to you, but dealing with <<if $npc_primrose.fem>>her<<else>>him<</if>> in some manner would be prudent to fully isolate <<=uc(setup.getNpcName('npc_boss','formal'))>>.">>@@"
<</if>>
<<=setup.getNpcName("npc_manager","formal")>> grins. "@@.npc_manager;<<=setup.getNpcName("npc_ai","first")>> having free run of the company, and beyond will continue to provide an edge... but, as you saw previously... it is not enough.@@" <<=setup.getNpcName("npc_manager","formal")>> takes a step forward, looking down at you with a controlling grin. "@@.npc_manager;You are going to be the tip of the spear that pierces to the heart of <<=ps(setup.getNpcName('npc_boss','formal'))>> power. You will do this because I command it... and because none of us will ever be safe so long as <<=setup.getNpcName('npc_boss','formal')>> remains at large.@@"<br>
<br>
<<=setup.getNpcName("npc_ai","first")>> blinks. "@@.npc_ai;<<uc "We understand the responsibility placed upon you, Unit">> <<uc $player.first_name>><<uc ", but there is no other way. You and I have tried alone, and failed. Now, it is time to work together and bring an end to <<=uc(setup.getNpcName('npc_boss','formal'))>>.">>@@"<br>
<br>
You nod, out of obedience, fear, revenge... or perhaps a combination of the three and more. You shiver slightly, it feels as if things have ascended to another level... but also, that the end is finally in sight.<br>
<br>
With your assent obtained <<=setup.getNpcName("npc_manager","formal")>> walks back around your chair to remove your bonds, and then your gag.<br>
<br>
[<<moveTo "event_manager_post_evil_apology_6_cruel" 'Throw yourself at her feet and promise to do your <<=setup.getNpcName("npc_manager","formal")>> will.' 120 "<<set $scene.action='obey'>>">>]<br>
[<<moveTo "event_manager_post_evil_apology_6_cruel" 'Ask if you may leave.' 120 "<<set $scene.action='ask'>>">>]<br>
[<<moveTo "event_manager_post_evil_apology_6_cruel" 'Just leave.' 120 "<<set $scene.action='leave'>>">>]
</div>/*#
#desc: respond to manager cruel apology
#status: RELEASED 0.9.4.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case 'obey'>>
<<incrementEmotion 'affection' 'npc_manager' 5>>
<<applyExperience 'submission' 20 'unbelievable' $SEEN_FRIEND>>
<<case 'ask'>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'normal' $SEEN_FRIEND>>
<</switch>>
<<removeItem "ball_gag_red" true>>
<<deleteItem "ball_gag_red">>
<<removeItem "rope_harness" true>>
<<deleteItem "rope_harness">>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager() setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'obey'>>
You obediently drop to your knees and kiss <<=ps(setup.getNpcName("npc_manager","formal"))>> promising to do all that you can to aid her in gaining revenge upon <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> looks down at you and grins. "@@.npc_manager;Good. You know your place. And now you know the plan... so remember, coordinate with myself or <<=setup.getNpcName("npc_ai","formal")>>, <<if $npc_technician.flags.evil == 1 || $npc_admin.flags.evil < 4 || $npc_psychiatrist.flags.evil == 1 || !State.hasPlayed("event_landlord_post_surgery_1")>>rescue your allies, <</if>>take down <<=ps(setup.getNpcName("npc_boss","formal"))>> supporters... and only then will it be time to make plans for the final confrontation. If you keep up this sort of behaviour I might even bring you along when I take over.@@"<br>
<br>
You thank <<=setup.getNpcName("npc_manager","formal")>> for her grace and she dismisses you. "@@.npc_manager;And do not think your mission will see any lenience when it comes to work. We both have appearances to keep up, after all.@@"
<<case 'ask'>>
You curtsy and ask <<=setup.getNpcName("npc_manager","formal")>> permission to leave and she smiles.<br>
<br>
"@@.npc_manager;Proper decorum, good. Yes, you may go... and remember your mission coordinate with myself or <<=setup.getNpcName("npc_ai","formal")>>, <<if $npc_technician.flags.evil == 1 || $npc_admin.flags.evil < 4 || $npc_psychiatrist.flags.evil == 1 || !State.hasPlayed("event_landlord_post_surgery_1")>>rescue your allies, <</if>>take down <<=ps(setup.getNpcName("npc_boss","formal"))>> supporters... and only then will it be time to make plans for the final confrontation. And do not think your mission will see any lenience when it comes to work. We both have appearances to keep up, after all.@@"
<<case 'leave'>>
You turn to leave only to be brought up short by
<<if setup.checkItemTypeTag('plug', ['ems']) && setup.checkItemTypeTag('cage', ['ems'])>>
dual shocks from your plug and chastity.
<<elseif setup.checkItemTypeTag('cage', ['ems'])>>
a harsh shocks from your chastity device.
<<elseif setup.checkItemTypeTag('plug', ['ems'])>>
a harsh shocks from your plug.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> grabing you from behind, pulling you in tight as she whispers in your ear.
<</if>>
"@@.npc_manager;Did you think that, just because you have a task beyond your job, that our relationship had changed? No, you are the slave, I am the <<=setup.getNpcName("npc_manager","title")>>. You will show proper decorum and obedience at all times, while both continuing your normal duties to keep up appearances, and following my instructions regarding <<if $npc_technician.flags.evil == 1 || $npc_admin.flags.evil < 4 || $npc_psychiatrist.flags.evil == 1 || !State.hasPlayed("event_landlord_post_surgery_1")>>rescue your allies, <</if>>take down <<=ps(setup.getNpcName("npc_boss","formal"))>> supporters, and, eventually, making plans to remove <<=setup.getNpcName("npc_boss","formal")>> <<him npc_boss>>self.@@"<br>
<br>
You gasp as <<if setup.checkItemTypeTag('plug', ['ems']) || setup.checkItemTypeTag('cage', ['ems'])>>the pain stops<<else>>she pushes you towards the door<</if>>. "@@.npc_manager;NOW you may go.@@"<br>
<br>
You scurry off before she does anything else to you.
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: alerted to overnight stay
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<if $scene.advanceWorkTime>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
As you work you get an email marked high-importance.<br>
<br>
<<set _tmpEmail = {
"from" : "Internal R&D",
"important" : 0,
"subject" : "work_mail_overnight_h",
"text" : "work_mail_overnight_t",
"to" : "<<=$player.first_name>> <<=$player.last_name>>"
}>>
<<set _tmpEmail.date = $now>>
<<set _tmpEmails = {list_emails : []}>>
<<set _tmpEmails.list_emails.push(_tmpEmail)>>
<<printEmailContent _tmpEmails 0>>
<<printThought "Huh, that's... ominous.">> You think as you finish reading the email and turn back to your work.<br>
<br>
[<<moveTo $scene.workEventReturn "Back to work." 60 "<<completeWorkEvent>>">>]
</div>/*#
#desc: attempt to enrol in overnight event
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 130: Internal R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png">>
<div id="invframe" class="scrolltext">
You ride the elevator down a few levels to one of the internal R&D division floors to find an eerily automated intake centre. A laser scans over you as a digital voice welcomes you.<br>
<br>
<<if $now.getUTCDay() == 5>>
"@@.computer;Thank you employee... <<glitchText "<<=$player.first_name>> <<=$player.last_name>>">>... for your interest in participation in the Letting Employees Access Specialized Housing initiative or LEASH for short. The program is not yet accepting weekend applicants. Your interest is appreciated; please try again on a work-night.@@"<br>
<br>
<<include "afterWorkVisiting">>
<<elseif $now.getUTCDay() == 4>>
"@@.computer;Thank you employee... <<glitchText "<<=$player.first_name>> <<=$player.last_name>>">>... for your interest in participation in the Letting Employees Access Specialized Housing initiative or LEASH for short. Your employee profile indicates that you work only half days on Friday. Please return when you have a proper full day ahead of you to properly test against. Your interest is appreciated; please try again on a different date.@@"<br>
<br>
<<include "afterWorkVisiting">>
<<elseif !setup.hasFreeTime($now, $player, $currentTasks, 28800)>>
"@@.computer;Thank you employee... <<glitchText "<<=$player.first_name>> <<=$player.last_name>>">> for your interest in participation in the Letting Employees Access Specialized Housing initiative or LEASH for short. Unfortunately for your personal betterment the system is at capacity this evening. Your interest is valued and the company encourages you to try back some other night.@@"<br>
<br>
<<printThought "Maybe it's for the best that I do something else this evening...">><br>
<br>
<<include "afterWorkVisiting">>
<<else>>
"@@.computer;Thank you employee... <<glitchText "<<=$player.first_name>> <<=$player.last_name>>">>... for your interest in participation in the Letting Employees Access Specialized Housing initiative or LEASH for short. Your application to participate in this pilot program is accepted. Disclaimer: this is an experimental procedure and the participant agrees not to hold the company liable for any harm that may occur in the course of the program. Do you consent to these terms? Please respond verbally.@@"<br>
<br>
[<<moveTo "event_overnight_stay_2" "Yes." 300 "<<set $scene.accept=true>>">>]<br>
[<<moveTo "event_overnight_stay_2" "Maybe some other day." 60 "<<set $scene.accept=false>>">>]
<</if>>
</div>/*#
#desc: start overnight event
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.accept>>
<<applyExperience 'bondage' 16 'terrible' $ALONE>>
<</if>>
<</if>>
<<set $player.location to "Floor 130: Internal R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png">>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
"@@.computer;Consent acquired. Initialising intake procedures...@@"<br>
<br>
A set of robotic arms suddenly unfurl, grabbing you by the wrist and waist before you can react. Repositioned slightly, the floor under you rises up to form a rolling platform as you are restrained to a wheeled personal transporter.<br>
<br>
"@@.computer;LEASH commencing... have a productive night...@@"<br>
<br>
Helpless, you are rolled through a doorway and into another private elevator that rockets downward to what has to be the company's dungeon-like basement levels...<br>
<br>
<<printThought "What did I just volunteer myself for?">><br>
<br>
[<<moveTo "event_overnight_stay_3" "Ride down." 180>>]
<<else>>
You decide against the LEASH this evening.<br>
<br>
"@@.computer;Unwillingness to contribute to company advancement acknowledged. Please vacate the vicinity to clear space for more motivated employees.@@"<br>
<br>
<<printThought "Well that was a bit rude...">><br>
<br>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: change for overnight event
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = false>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You ride the small service elevator down to depths of the building where, still restrained, you are wheeled through a hallway and into a small room. The room is little larger than a cell, with an open box sitting in the centre and the walls adorned with corporate propaganda posters.<br>
<br>
The computerised voice greets you once more, sounding significantly more cheery than previous. "@@.computer;Welcome, <<glitchText "<<=$player.first_name>> <<=$player.last_name>>">>, and thank you for enrolling in the LEASH initiative. With your assistance we can further refine and optimise practices to make better, happier, more productive employees. To start, please remove your clothing and personal belongings and place them in the crate in front of you. You will not need them and they will be returned to you in the morning.@@"<br>
<br>
<<if $options.ezchange>>
[<<moveTo "event_overnight_stay_4" "Strip and put your things in the box." 180>>]
<<elseif setup.checkNaked()>>
[<<moveTo "event_overnight_stay_4" "Put your things in the box." 180>>]
<<else>>
[@@.link_locked;You have been ordered to remove your clothes.@@]
<</if>>
</div>/*#
#desc: dresed for overnight event
#status: RELEASED 0.9.3.0
#*/
<<set $player.cutscene.lockinventory = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $daily = {}>>
<<set $scene = {}>>
<<removeAllClothing>>
<<set $scene.removeCollar = setup.checkItemTypeWorn("choker") && !setup.checkItemWorn("manager_company_collar")>>
<<if $scene.removeCollar>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<addItem "company_collar">>
<<wearItem "company_collar" true>>
<</if>>
<<set $backupInventory = []>>
<<moveAllInventoryToWardrobe $backupInventory>>
<<addItem 'plugsuit_adv'>>
<<wearItem "plugsuit_adv" true>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
The last of your things are placed into the box and it slides into the floor. You have a heartbeat of stillness before robotic arms extend from the walls, lifting you aloft <<if $scene.removeCollar>>and removing your collar.<</if>><br>
<br>
<<if $scene.removeCollar>>
The arms bring a steep collar emblazoned with the company logo to your throat. "@@.computer;An optimal employee is loyal, uniform, and obedient. For the duration of the study your every action and vital will be tracked with this prototype collar.@@"<br>
<br>
<</if>>
Working in remarkable synchronicity, the arms dress you in a <<if $npc_psychiatrist.hypnosis > 0>>familiar <</if>>plugsuit. "@@.computer;Your outfit has been designed to provide nominal comfort while providing a standardisation that will aid your focus. Your schedule has been optimised and curfew is at <<if $options.militaryTime>>eighteen hundred hours<<else>>nine pm<</if>>. A proper employee devotes time out of work improving themselves. You may spend this time bettering yourself.@@"<br>
<br>
The robotic arms place you back on the floor as a desk and computer slide out from one wall and a portion of the floor shifts from stark steel to a more squishy exercise-mat texture.<br>
<br>
The computer is already booted up, offering a limited selection of "gaming," "study materials," and "surveillance." <br>
<br>
[<<moveTo "event_overnight_stay_5" "Play some games." 7200 "<<set $scene.action='gaming'>>">>]<br>
[<<moveTo "event_overnight_stay_5" "Do some studying." 7200 "<<set $scene.action='read'>>">>]<br>
[<<moveTo "event_overnight_stay_5" "Do some yoga." 7200 "<<set $scene.action='yoga'>>">>]<br>
[<<moveTo "event_overnight_stay_5" "Check out surveillance." 7200 "<<set $scene.action='voyer'>>">>]
</div>/*#
#desc: free time during overnight event
#status: RELEASED 0.9.3.0
#ignore_spell: w,l
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.action>>
<<case "gaming">>
<<set _gaming = setup.getTotalValue("gaming")>>
<<applyExperience 'gaming' _gaming 'terrible' $ALONE>>
<<case "read">>
<<set _smart = setup.getTotalValue("smart")>>
<<applyExperience 'smart' _smart 'terrible' $ALONE>>
<<case "yoga">>
<<set _dex = setup.getTotalValue("dexterity")>>
<<applyExperience 'dexterity' _dex 'terrible' $ALONE>>
<<set _bdsm = 25-_dex>>
<<applyExperience 'bdsm' _bdsm 'terrible' $ALONE>>
<<case "voyer">>
<<set _sub = setup.getTotalValue("submission")>>
<<applyExperience 'submission' _sub 'terrible' $ALONE>>
<<set _bdsm = 25-_sub>>
<<applyExperience 'bdsm' _bdsm 'terrible' $ALONE>>
<</switch>>
<<set _nine = setup.setNextDate($now, 0, 21, 0, 0)>>
<<set $scene.curfewTime = setup.secondsToDate($now, _nine)>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case "gaming">>
You sit down and boot up a game to find it's the familiar HOTTIES. A moment later restraints snap shut, locking you in position at the desk. "@@.computer;Data shows that focused action results in better results and reward, enjoy your chosen activity, curfew is in ... <<=Math.floor($scene.curfewTime/60)>> minutes.@@"<br>
<br>
<<printThought "Well that's that...">><br>
<br>
You turn to the game to find that you're playing in some sort of corporate e-sports league. You are in a lobby with SISSI's team (the Dominators) and are tasked with playing matches with and against the assembly of pro players and back-ups.<br>
<br>
<<printThought "Huh... didn't know we had one of those.">><br>
<br>
<<if setup.getTotalValue("gaming") > 10>>
<<if setup.getTotalValue("gaming") >= 20>>
You don't just keep up with your professional team, you're the star player, pulling off play of the game nearly every match as your team goes on a winning streak. One of them even mentions that you might be good enough to become a regular!
<<elseif setup.getTotalValue("gaming") > 15>>
Your skills are pushed to the limit competing with and against professionals... but you manage to keep up, doing your part to contribute to a positive W/L ratio for the night.
<<else>>
You're definitely the weak point of your professional team, but you manage to keep up well enough to not be a full-on hindrance. In the end you more or less trade wins and losses, and manage to pickup a few new techniques in the process.
<</if>>
<<else>>
Your skills are far from sufficient to keep up at the professional level, but your teammates are surprisingly understanding and, while you lose nearly every match, you end up learning quite a few tricks to improve your play.
<</if>>
<<case "read">>
You sit down at the computer and select the reading option. You are presented with a spread of corporate training manuals... and then a set of restraints lock onto you. "@@.computer;Data shows that focused action results in better results and reward, enjoy your chosen activity, curfew is in ... <<=Math.floor($scene.curfewTime/60)>> minutes.@@"<br>
<br>
<<printThought "Well that's that...">><br>
<br>
With little choice you scroll through for the most interesting title and start reading.
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
You zip through multiple resources in a row, most of the material being well below your level, but you're smart enough to also zero in on the odd useful tidbit as you review and synthesise information efficiently.
<<else>>
While things are a bit on the dry side, you do find yourself learning the odd bit of useful information.
<</if>>
<<else>>
The texts may be a bit dry, but it's still useful information, and you feel your intelligence sharpen as you read.
<</if>>
<<case "yoga">>
You decide to get in some stretching and you move to the yoga mat. As you start to limber up you hear a sound, glancing over to see the computer slide back out of vision as a light traces the edge of your workout area and the wall in front of you lights up with a screen.<br>
<br>
"@@.computer;Employee flexibility is quite valued. Data shows that focused action results in better results and reward, enjoy a calibrated yoga routine. Curfew is in ... <<=Math.floor($scene.curfewTime/60)>> minutes.@@"<br>
<br>
The screen displays a yoga position, momentarily confused you hesitate, only for your collar to shock you painfully. <<printThought "Looks like I gave up my choice...">> you think as you hurry into position.<br>
<br>
<<if setup.getTotalValue("dexterity") > 10>>
The routine starts simple but seems to quickly re-calibrate to your skill level,
<<if setup.getTotalValue("dexterity") > 15>>
but you more than rise to the occasion, stretching, flexing and breathing along with the intense, invigorating sequence.
<<else>>
and your abilities are pushed to the limit as you stretch, flex and strain as you do all that you can to keep up with the intense, invigorating sequence, punished but rarely.
<</if>>
<<else>>
Your skills are far from up to the task, even as you sense the routine presented to you is a relatively simple one. You alternate straining and flexing with flinching and writhing in pain as your every failure is immediately, and severely, "corrected."
<</if>>
<<case "voyer">>
You take a seat at the computer and select the mysterious "surveillance" option. No sooner have you tapped the screen for your selection when a set of restraints lock onto you.<br>
<br>
"@@.computer;Data shows that focused action results in better results and reward. We thank you for choosing surveillance. You will be presented with company surveillance footage; please note any employees who are in violation of company policy that they may be corrected. Enjoy doing your part to improve employee discipline. Curfew is in <<=Math.floor($scene.curfewTime/60)>> minutes.@@"<br>
<br>
You are presented with a security guard-esque display of surveillance footage. Unsurprisingly, there is quite a bit of sex, and you soon find yourself aroused... and somewhat frustrated, given that your restraints<<if setup.checkItemTypeWorn("cage")>>, and your chastity<</if>> prevent you from touching yourself.<br>
<br>
There is an explanatory demonstration as first "violation" comes in in the form of an employee masturbating at their desk, the screen lighting up a moment later with the words VIOLATION. A fresh view comes in to replace the now-in-trouble employee and you resume watching, quickly sussing out that you are not the only person "auditing" employee behaviour as your collar punishes you if you are so much as late at identifying a violation.
<<if setup.getTotalValue("submission") > 10>>
<<if setup.getTotalValue("submission") > 15>>
You swiftly embrace being a tool of the company, racing to be the "first" to identify the slightest deviation from company policy.
<<else>>
Bound, shocked, and unable to look away, you soon go along with being a tool of company control.
<</if>>
<<else>>
You are helpless to do anything but go along with acting as a tool of company control, even as your hesitancy sees you punished harshly.
<</if>>
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
[<<moveTo "event_overnight_stay_6" "Continue." $scene.curfewTime "<<set $scene.first=!State.hasPlayed('event_overnight_stay_6')>>">>]
</div>/*#
#desc: put to sleep for overnight event
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<changeHorny 100>>
<<applyExperience 'bondage' 20 'terrible' $ALONE>>
<<addItem 'vr_helmet_copy'>>
<<wearItem "vr_helmet_copy" true>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
At <<if $options.militaryTime>>eighteen hundred hours<<else>>nine pm<</if>> sharp the
<<if $scene.action == "yoga">>
yoga video turns dark
<<else>>
computer shuts off and your restraints release.
<</if>>
As you stand up the robot arms re-appear, restraining you and then pulling you into position on a reclined cot that swivels out from a wall. The arms hold you in place as a vacbed pulls over you, rubber squeezing tightly as you are shrink-wrapped into position... and the arms bring a VR helmet to your face.<br>
<br>
You are temporarily plunged into silent darkness before the computer voice returns... simultaneous with stimulation teasing you to a frenzied high. "@@.computer;A days work is rewarded, but night hours are an under-utilised resource for employee development. You will be enjoying a position-personalised program to help you better perform your job. Remember, your duty is to the company. You are to support your manager in all things...@@"<br>
<br>
<<shinyText "My duty is to the company. I am to support my manager in all things..." 0.0>><br>
<br>
<<if State.hasPlayed("event_nursula_return_4")>>
As you start to sink into slumber a familiar voice cuts into your private world. "@@.npc_evil_nurse;<<=$player.first_name>>? My my... technically I am supposed to monitor things as a neutral observer... but I just cannot pass up having a touch of fun with one of my favourite playthings...@@"<br>
<br>
You gasp and strain as your vacbed gets just a little bit tighter, and stimulating vibrations return to tease, tickle and torment as you shudder and strain.<br>
<br>
"@@.npc_evil_nurse;So delicious! Ah, you remind me of my <<=setup.getNpcName("npc_primrose","nickname")>>. Such cute, gullible dollies for me to play with... you would be so delightful to have the both of you under my thumb... alas, you remain in the possession of a higher power... though it is not like you are <<=ps(setup.getNpcName("npc_manager","other"))>> first possession, and I would hardly be opposed to taking her... exquisitely crafted hand-me-down...@@"<br>
<br>
You moan... but hear no more from the evil nurse as you are returned to your "regularly scheduled" night of corporate-sponsored dreams...
<<else>>
You slowly sink into corporate-sponsored dreams...
<</if>>
<br><br>
[<<moveTo "event_overnight_stay_7" "Drift to sleep..." 1800>>]
</div>/*#
#desc: overnight event dreams
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "clearShorttermEffects">>
<<applyExperience 'submission' 20 'terrible' $ALONE>>
<<applyExperience 'bimbofication' 20 'terrible' $ALONE>>
<<applyStress -20>>
<<setTmpEffect 'vr_punish'>>
<<applyFatigue -200>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
Tightly restrained, and with corporate whispers just beyond hearing your dreams are much like your days: working hard at your desk, only this time for a more faceless boss. A routine of typing, filing, dictation... as well as offering yourself sexually to whatever ephemeral figure desires the use one of your holes.<br>
<br>
<<set _morning = setup.setNextDate($now, 1, 5, 30)>>
<<set _timeToMorning = setup.secondsToDate($now,_morning)>>
[<<moveTo "event_overnight_stay_8" "Sleep..." _timeToMorning>>]
</div>/*#
#desc: attempt to enrol in overnight event
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.drug = false>>
<<advanceTmpEffects $tempEffects>>
<<include "cleanPlayer">>
<<washClothes>>
<<set _x = setup.cleanSexToys()>>
<<if $player.sec_style.body.pinkpill && $fetish.drugs>>
<<if $player.flags.used_sissy_pill_2_count>>
<<set $scene.drug = true>>
<<setTmpEffect 'sissypill_mk2'>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<changeHorny 20>>
<<applyStress -30>>
<<applyFatigue -30>>
<<set $player.flags.used_sissy_pill_2_count += 1>>
<<else>>
<<changeHorny 50>>
<<applyStress -20>>
<<setTmpEffect 'sissypill_mk1'>>
<<applyExperience 'bimbofication' 10 'normal' $ALONE>>
<<if setup.hasTmpEffect('sissy_pill_mk1_withdrawal')>>
<<cancelTmpEffect 'sissy_pill_mk1_withdrawal'>>
<</if>>
<<set $player.flags.used_sissy_pill_count += 1>>
<<set $scene.drug = true>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You awaken to a buzzing... an alarm of stimulation as a vibrator throbs in your rear and you are rocketed back to aroused and frustrated consciousness. The vacbed remains in place as you find yourself disoriented, your mind still fuzzy, full of urges to obey and a deep need to better serve the company.<br>
<br>
Before you can wonder what comes next something forces its way past your lips: a thick, phallic device that begins pumping a familiar-tasting BoiLess breakfast.<<if $scene.drug>> Along with your morning nutrients you taste the hint of medication, and feel their familiar arousing hold rushing through your veins.<</if>><br>
<br>
After you gulp down your breakfast the phallus switches over to a thrusting pattern that can only be called a <<if $fetish.get_raped>>face-rape<<else>>face-fuck<</if>>. At the same time your vacbed peels away, only to be replaced by the no less secure grasp of the robotic arms, your naked body blasted with water and tingly soap as an enema-administering dildo washes you within before you are blown dry, clean in body <<printThought "and mind?">> and ready to start the day...<br>
<br>
[<<moveTo "event_overnight_stay_9" "Continue." 300>>]
</div>/*#
#desc: choose outfit after overnight event
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem 'vr_helmet_copy' true>>
<<deleteItem 'vr_helmet_copy'>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
Free of your vacbed and clean inside and out you remain restrained and held aloft by a half-dozen robotic manipulators as holographic outfits appear in front of you.<br>
<br>
"@@.computer;Please select from amongst these position-appropriate outfits to continue preparation for your important duties.@@"<br>
<br>
[<<moveTo "event_overnight_stay_10" "Choose a standard secretary outfit." 300 "<<set $scene.outfit='secretary'>>">>]<br>
<<if _TODOfuture>>
[<<moveTo "event_overnight_stay_10" "Choose a latex secretary outfit." 300 "<<set $scene.outfit='latex'>>">>]<br>
<</if>>
[<<moveTo "event_overnight_stay_10" "Choose a kigurumi doll secretary outfit." 300 "<<set $scene.outfit='kig'>>">>]<br>
[<<moveTo "event_overnight_stay_10" "Choose an ultra-femme <<if $fetish.sissy>>sissy<<else>>frilly<</if>> secretary outfit." 300 "<<set $scene.outfit='sissy'>>">>]<br>
<<if $player.flags.bimbo_work.unlock>>
[<<moveTo "event_overnight_stay_10" "Choose a slutty bimbo secretary outfit." 300 "<<set $scene.outfit='bimbo'>>">>]
<</if>>
</div>/*#
#desc: dressed after overnight event
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<setTmpEffect 'vr_punish'>>
<<if setup.changedRoom()>>
<<set $player.makeup.template = "">>
<<set $player.makeup.messed = 0>>
<<removeItem "plugsuit_adv" true>>
<<deleteItem 'plugsuit_adv'>>
<<switch $scene.outfit>>
<<case 'secretary'>>
<<addItemSet 'elite_secretary_complete'>>
<<wearItemSet 'elite_secretary_complete'>>
<<set $player.makeup.permanent = "moviestar">>
<<case 'latex'>>
<<addItemSet 'elite_secretary_latex'>>
<<wearItemSet 'elite_secretary_latex'>>
<<set $player.makeup.permanent = "moviestar">>
<<case 'kig'>>
<<addItemSet 'kig_secretary'>>
<<wearItemSet 'kig_secretary'>>
<<set $player.makeup.permanent = "qtpie">>
<<case 'sissy'>>
<<addItemSet 'sissy_secretary'>>
<<wearItemSet 'sissy_secretary'>>
<<set $player.makeup.permanent = "sissy_doll">>
<<case 'bimbo'>>
<<addItemSet 'bimbo_secretary'>>
<<wearItemSet 'bimbo_secretary'>>
<<set $player.makeup.permanent = "ultimatebimbo">>
<</switch>>
<<set $scene.addPlug = !setup.checkItemTypeWorn("plug")>>
<<if $scene.addPlug>>
<<addItem "vibrating_plug_large">>
<<wearItem "vibrating_plug_large" true>>
<</if>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You make your selection and the hologram shimmers and disappears, replaced instead with yet more corporate messaging.<br>
<br>
"Your shift is starting soon! Visualise how you can best serve the company today... and every day!" <br>
<br>
The robotic arms move in a blur as they dress you for the day while additional mechanical limbs finishing drying and styling your hair. A final appendage presses a mask over your face. You feel a tingle as permanent makeup is applied<<if $scene.outfit == "kig" >>... just before the kigurumi hood is pulled over your head to obscure the pretty face within<</if>>.<br>
<br>
As a final
<<if $scene.addPlug>>
step a large plug is stuffed into your rear.
<<else>>
step, your plug is wiggled.
<</if>>
Your rear occupant buzzes and then shocks you. Your muscles contract to cement the intruders position and confirm its functionality.<br>
<br>
Only once you have been fueled dressed and styled do they set you down... on top of the same platform that brought you down, only this time your legs are pressed against a vertical rod that has locked to the base of your plug to form a one bar prison. Helpless, and with the faint echoes of corporate propaganda <<glitchText "truth">> ringing in your ears, you wheel away up the hallway and to the elevator...<br>
<br>
[<<moveTo "event_overnight_stay_11" "Continue to work." 300>>]
</div>/*#
#desc: morning after overnight stay
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<restoreWardrobeToInventory $backupInventory>>
<<completeTask 'manager_morning_inspection_task' $now true>>
<<addEvent 'overnight_stay_morning'>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You are only finally freed of restraints when your are deposited at your desk. A box sitting next to your chair contains all of your stuff.<br>
<br>
No sooner have you started to remember how it feels to be in control of your own body when <<=setup.getNpcName("npc_manager","formal")>> emerges from her inner office.
<<if $npc_manager.flags.evil == 1>>
"@@.npc_manager;Taking initiative to optimise your effectiveness as an employee... how delightful.@@" While her cruel smile would usually make you shiver, your overnight brainwashing leaves you feeling warm and fuzzy instead. <<glitchText "My duty is to the company. I am to support my manager in all things.">> "@@.npc_manager;The sooner we can roll out such routines for all subordinates the sooner we will be able to truly maximise productivity. Freedom is a distraction from your job. the corporation knows far better what you need and it is good to see you accepting that truth... plus, well... look at how efficient things are when there is no need to inspect that you have passed the trivial bar that is being prepared for your duties... and you may, instead, proceed directly to work.@@"<br>
<br>
Still grinning, <<=setup.getNpcName("npc_manager","formal")>> disappears into her office, leaving you to start your day.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> looks momentarily concerned before adopting a more business-like expression. "@@.npc_manager;I see that you availed yourself of the Employee Betterment pilot program... do practice moderation. While I, of course, appreciate your dedication to the company... it is experimental for a reason and I do not wish your performance to be negatively impacted by your being unnecessarily subjected to an untested and dangerous new routine.@@"<br>
<br>
You nod in acknowledgment of her hidden message.<br>
<br>
"@@.npc_manager;Since there is no need for an inspection, I believe you may proceed directly to work... have a good morning.@@" <<=setup.getNpcName("npc_manager","formal")>> disappears back into her inner office.
<</if>>
<br><br>
[<<moveTo "event_manager_daily_check_stage_5_finalize" "Take a seat and get to work." 180>>]
</div>/*#
#desc: morning work after overnight stay
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bimboShift=$scene.outfit == 'bimbo'>>
<<if $scene.outfit != "bimbo">>
<<set $player.work.chair.bondage = true>>
<<set $player.work.chair.gag = 6>>
<<set $player.work.chair.plug = 5>>
<<if $player.body_ref.vagina>>
<<set $player.work.chair.front = 5>>
<</if>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $ALONE>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $ALONE>>
<<applyExperience 'bondage' 15 'very' $ALONE>>
<<applyExperience 'bdsm' 15 'normal' $ALONE>>
<<set $player.timebased.horny = $player.body_ref.erectionThreshold-15>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 180)>>
<<set $scene.lockCage = false>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.lockCage = !$inventory[$scene.cage].lock>>
<<if $scene.lockCage>>
<<manipulateItem $scene.cage "lock" true>>
<</if>>
<</if>>
<</if>>
<<applyFatigue -50>>
<<applyStress -20>>
<<set $scene.performanceIncrease = Math.floor(Math.random()*20 + 20)>>
<<set $scene.performanceIncreaseShort = "LEASH Program Bonus: +">>
<<set $scene.performanceIncreaseDesc = "Your overnight participation in the LEASH Program increases your performance. ">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<set _morningWork = setup.setNextDate($now, 0, $player.work.time_morning.hour, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_morningWork)>>
<<if $scene.outfit == "bimbo">>
You try to take your seat, but it would appear that your choice of outfit has selected your shift and you are instead summoned off to "work bimbo" servicing your fellow employees... not that you are going to complain, in fact you find yourself unable to so much as conceive of a disloyal thought...<br>
<br>
[<<moveTo "event_overnight_stay_13_lunch_1" '"Work" through to lunch...' _tmpSeconds "<<set $player.timebased.fatiguemulti = 0.5>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'bimbo'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>>">>]
<<else>>
As soon as you sit down at your desk your experimental "routine" re-asserts itself. Your chair configures to its most severe setting, seeing you bound with <<=setup.getNpcName("npc_boss","formal")>> in every hole setting as your arousal is precisely modulated and you feel a rush of energy, the thought of working anything less than as hard as you can all but inconceivable.<br>
<br>
[<<moveTo "event_overnight_stay_13_lunch_1" "Work through to lunch..." _tmpSeconds "<<set $player.timebased.fatiguemulti = 1.25>><<set $player.timebased.stressmulti = 0.75>><<set $player.work.style = 'hard'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>>">>]
<</if>>
</div>/*#
#desc: lunch after overnight shift
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.flags.evil == 1 || $npc_manager.flags.cruel>>
<<set _lunchEnd = setup.setNextDate($now, 0, $player.work.time_midday.hour, $player.work.time_midday.minutes)>>
<<set _tmpSeconds = setup.secondsToDate($now,_lunchEnd)>>
<<set $now = setup.advanceDate($player, $now, 'seconds', _tmpSeconds)>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Lunch arrives only for your <<=ps(setup.getNpcName("npc_manager","title"))>> meal to appear at your desk with a note. "@@.computer;Queuing for food is an inefficient use of time that could instead be devoted to giving your manager mid-day relief!@@"<br>
<br>
Half on auto-pilot you bring <<=setup.getNpcName("npc_manager","formal")>> her lunch... and then crawl under her desk.<br>
<br>
<<if $npc_manager.flags.evil == 1 || $npc_manager.flags.cruel>>
"@@.npc_manager;Now that's a good girl...@@" she purrs, her fingers ruffling through your hair as she eats... and you eat her out.<br>
<br>
Obediently, you remain between her legs until your lunch break is over, after which she dismisses you to your desk to resume your normal responsibilities.
<<else>>
"@@.npc_manager;I appreciate the enthusiasm... but I do not wish to take advantage of your current state... thank you for the prompt delivery, but you may return to your desk.@@"<br>
<br>
You feel a twinge of pain at the rejection... but disobedience is even worse so you meekly rise to your feet and return to your desk to again dive into your work.
<</if>>
<br><br>
[<<moveTo "event_overnight_stay_14" "Back to work..." 180 "<<set $player.timebased.fatiguemulti = 1.25>><<set $player.timebased.stressmulti = 0.75>><<set $player.work.style = 'hard'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>><<set $scene.bimboShift=$scene.outfit == 'bimbo'>>">>]
</div>/*#
#desc: morning work after overnight stay
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $ALONE>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $ALONE>>
<<applyExperience 'bondage' 15 'very' $ALONE>>
<<applyExperience 'bdsm' 15 'normal' $ALONE>>
<<set $player.timebased.horny = $player.body_ref.erectionThreshold-15>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 180)>>
<<set $scene.lockCage = false>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.lockCage = !$inventory[$scene.cage].lock>>
<<if $scene.lockCage>>
<<manipulateItem $scene.cage "lock" true>>
<</if>>
<</if>>
<<addEvent "overnight_stay_debrief">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<set _morningWork = setup.setNextDate($now, 0, $player.work.time_evening.hour, 0)>>
<<set _tmpSeconds = setup.secondsToDate($now,_morningWork)>>
Your afternoon proceeds the same as the morning did... eerily the same, in fact... or, you might think that if you were not in a nigh trance focused on your work
<<if $scene.outfit == "bimbo">>
slutting it up and servicing your fellow employees.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" 'Work your shift and finish up back at your desk.' _tmpSeconds "<<set $player.timebased.fatiguemulti = 0.5>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'bimbo'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>>">>]
<<else>>
typing away at your desk.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_work" "Work your shift." _tmpSeconds "<<set $player.timebased.fatiguemulti = 1.25>><<set $player.timebased.stressmulti = 0.75>><<set $player.work.style = 'hard'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>>">>]
<</if>>
</div>/*#
#desc: wait/contacted for after work secretary performance review
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not Now!">>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.evil == 1>>
<<=setup.getNpcName("npc_manager","formal")>> grins at you. "@@.npc_manager;That overnight stay of yours does seem to have had a marked improvement on your efficiency... <<if $fetish.sissy>>I suppose this is further proof that a SISSI is best kept on a LEASH... <</if>>so tempting to assign you to it permanently.@@"<br>
<br>
You shiver at the thought of being again unable to leave the company building, unable to escape <<=setup.getNpcName("npc_boss","formal")>>, <<=setup.getNpcName("npc_manager","formal")>> and the rest for even a few hours...<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> smiles even wider at your fear. "@@.npc_manager;Mmmm... no, it would take the fun out of it. After all, knowing that every morning you have to wake up and choose to come to the office, to serve me... yes, that is far more satisfying than some minor bump in productivity. A fulfilling, enjoyable work environment really is so important!@@"<br>
<br>
You bite your tongue that she is clearly only concerned with HER work enjoyment, and you gratefully make your exit as soon as she dismisses you.
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> looks at you with concern. "@@.npc_manager;Your overnight stay does appear to have boosted your efficiency, only... well, I worry about the long-term implications. Burnout is always a not-insignificant risk and I would much rather have your services for the duration rather than a few weeks of hyper-performance.@@"<br>
<br>
You nod, sensing her concern... and the unspoken warning not to spend another night in the company's "care." <br>
<br>
"@@.npc_manager;I believe that is all. I have some paperwork to get through so, I must cut our discussion short. I will see you in the morning.@@"
<</if>>
<br><br>
[<<moveTo "room_office_after_work" "Leave the office." 60 "<<set $player.cutscene.lockinventory = false>>">>]
</div>/*#
#desc: report after overnight stay
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Floor 130: Internal R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png">>
<div id="invframe" class="scrolltext">
As you leave <<=ps(setup.getNpcName("npc_manager","formal"))>> office you find yourself irresistibly drawn back to Floor 130...<br>
<br>
[<<moveTo "event_overnight_stay_13_afterwork_2" "Report your progress." 180>>]
</div>/*#
#desc: debrief after overnight stay
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeCollar>>
<<removeItem "company_collar" true>>
<<deleteItem "company_collar">>
<<addItem $scene.collar>>
<<wearItem $scene.collar true>>
<</if>>
<</if>>
<<set $player.location to "Floor 130: Internal R&D">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/reception.png">>
<div id="invframe" class="scrolltext">
You arrive in the eerily empty Floor 130 where you are again scanned, and then held in place
<<if $scene.removeCollar>>
your company collar <<if $scene.outfit == "kig">>and kigurumi mask are<<else>>is<</if>> removed and you
<<else>>
<<if $scene.outfit == "kig">>as your kigurumi mask is remove and <</if>>you
<</if>>
are debriefed.<br>
<br>
"@@.computer;Assessing employee <<glitchText "<<=$player.first_name>> <<=$player.last_name>>">>...
<<switch $scene.action>>
<<case "gaming">>
<<if setup.getTotalValue("gaming") >= 20>>
Your expertise in representing the company in e-sports was acceptable, should an opening appear in that division you would be a strong candidate.
<<else>>
Your choice of gaming rather than study was suboptimal.
<</if>>
<<case "read">>
<<if $scene.outfit == "bimbo">>
Your choice to study was confusing, given you work as a Bimbo <<if $fetish.sissy>>SISSI <</if>>Secretary.
<<else>>
Your choice to study was acceptable, studying for work is always a valuable use of downtime.
<</if>>
<<case "yoga">>
Your work at maintaining your flexibility was an acceptable use of downtime.
<<case "voyer">>
Your determination to better the company by helping reinforce proper behaviour in fellow employees was a superb use of your downtime.
<</switch>>
<<switch $scene.outfit>>
<<case 'secretary'>>
Your choice of attire was acceptable, if uninspired. Consider experimenting with a different style upon your next visit.
<<case 'latex'>>
Your adoption of the new latex uniform was inspired. We know that you will continue to express your synthetic vision of corporate optimisation beyond the test chambers.
<<case 'kig'>>
Your choice of kigurumi doll outfit showed a willingness to fully adopt being an obedient doll for the company; a promising decision. Your data will be forwarded to <<=setup.getNpcName("npc_primrose","formal")>>.
<<case 'sissy'>>
Your choice of a <<if $fetish.sissy>>sissified<<else>>frilly<</if>> outfit was acceptable, but is on the edge of professionalism for your position. Advise consulting with your individual manager before adopting such potentially distracting attire. Never the less, your willingness to humiliate yourself for your betters' amusement is admirable.
<<case 'bimbo'>>
Your choice of the most lascivious outfit marks you as a prime candidate for the company's Bimbo Secretary Program... a candidacy reinforced by your enthusiastic work. Please continue to boost employee morale on your own time.
<</switch>>
Your work exceeded your normal performance by <<=$scene.performanceIncrease>>%... superbly done. Overall your participation in the pilot program was a success, but more study is needed... would you like to enrol for an another session?@@"<br>
<br>
The lingering pull of the LEASH tells you to ask for another night... but in the back of your mind your sense of self screams that that would be a terrible idea...<br>
<br>
[<<moveTo "event_overnight_stay_badend" "Enrol for another night..." 180>>]<br>
<<include "afterWorkVisiting">>
</div>/*#
#desc: game over for chaining overnight stay
#status: RELEASED 0.9.3.0
#*/
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Private Cell">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You don't see the harm in one more night. Sure, the mental modifications were pretty intense, but a second session isn't going to break you. You tap the touch-pad and verbally agree to spending another night in the LEASH.<br>
<br>
"@@.computer;Consent acquired. Initialising intake procedures...@@"<br>
<br>
You relax as you feel the metal person mover rise around you again, pulling you down into the elevator. While it's a little strict, you are getting more and more used to traveling via bondage. You descend into the dungeon once more and surrender yourself to be dressed by the many metal manipulators. You catch that the machine has separated your phone from your other belongings out of the corner of your eye but are in no position to stop it. You'll follow up on that later.<br>
<br>
[<<moveTo "event_overnight_stay_badend_2" "Time to relax in your room." 3600>>]
</div>/*#
#desc: game over for chaining overnight stay
#status: RELEASED 0.9.3.0
#*/
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to 'Private Cell'>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
You spend your evening relaxing in your cell doing yoga and listening to audio of <<=ps(setup.getNpcName("npc_boss","formal"))>> last company all-hands presentation, <<his npc_boss>> <<if $npc_boss.fem>>authoritative<<else>>deep<</if>> voice soothing and inspiring. Bed time comes soon enough and you stand up in obediently eager preparation for the metal arms to guide you into the vacbed. Just as it did the night before, you are pulled into the latex embrace of the vacbed. However, instead of being greeted by the usual mask, you hear the voice of the guiding program instead:<br>
<br>
"@@.computer;Greetings, employee! Due to your overwhelming enthusiasm to participate in LEASH, you have been selected to be a spokesperson for the initiative! You will work closely with our Public Relations team to create internal recruitment material about the program and to spread word of its benefits to our different departments. You should feel honoured.@@" You smile, though you aren't entirely sure why. Maybe it's what you are supposed to be feeling right now?<br>
<br>
"@@.computer;As a member of the PR team, your image will be your greatest asset. We will be managing your schedule and activities tightly to ensure that you do not take any actions that would reflect badly upon the company. Do not fret; your social media accounts will be put to good use.@@" The TV before you flickers on to show that your new position is reflected upon your various accounts. Your pages have been washed clean of personality and replaced with soulless corporate-speak labeled as your own thoughts and feelings. A part of you recoils at this violation of privacy... but you know intrinsically that such negative thoughts are counter to your duties to the company, and you tamp them down, focusing, instead on the "thoughts" that have been posted in your name as you will yourself to better embody company ideals.<br>
<br>
You feel motion around you as your night routine prepares to continue. "@@.computer;In anticipation for your new position, we have prepared a special VR simulation just for you. You should feel honored.@@"
<br>
[<<moveTo "event_overnight_stay_badend_3" "Sink into unreality." 3600>>]
</div>/*#
#desc: game over for chaining overnight stay
#status: RELEASED 0.9.3.0
#*/
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Virtual Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImage("npc_manager","npc_manager_evil")>>
<div id="invframe" class="scrolltext">
You are in <<=ps(setup.getNpcName("npc_manager","formal"))>> office once more, standing before her virtual doppelganger. She gives you a <<printThoughtGlitch "genuine, non-artificial">> smile that fills your body and mind, smoothering all your worries. "@@.npc_manager;I am so proud of you, <<=$player.first_name>>.@@" Her <<printThoughtGlitch "genuine, non-artificial">> voice fills your soul with light as you begin to approach her. You gaze upon her <<printThoughtGlitch "usual and not threatening">> attire and find yourself compelled to memorise every detail of the <<printThoughtGlitch "very true to life">> simulation of <<=setup.getNpcName("npc_manager","formal")>>.<br>
<br>
"@@.npc_manager;I trained you well; you will show the world exactly how obedient you are. You want to bring praise upon me, don't you?@@" You nod emphatically. You feel complete. Happy. You could listen to her praise you all night long. She invites you to kneel before her, resting your head in her lap. She slowly pets your head as you feel her words seep into your mind. Her gloved hand brushes through your hair, pulling along the strands like a puppeteer masterfully guiding <<printThoughtGlitch "your">> strings.<br>
<br>
"@@.npc_manager;You understand that I know best for you, don't you? That I will guide you towards your fulfilling your potential?@@" Of course! Your manager has done so much for you already. "@@.npc_manager;Good, good. Your work on this project will make <<=setup.getNpcName("npc_boss","formal")>> so proud of you. That is your greatest wish in life, isn't it?@@" After so many affirmations, you find it so easy to agree with her. She continues to pet your head, each stroke pushing the thoughts deeper and deeper into your mind. Her thoughts intertwine with yours, permanently staining them with her colour.<br>
<br>
<<shinyText "My duty is to the company. I am to support my manager in all things..." 0.0>><br>
<br>
This is heaven. You don't want it to stop. Yet, you know the morning will come. You don't mind, after all, you have work to do!<br>
<br>
[<<moveTo "event_overnight_stay_badend_4" "Awaken, and begin your new life as a company spokesperson!" 3600>>]
</div>/*#
#desc: game over for chaining overnight stay
#status: RELEASED 0.9.3.0
#ignore_spell: undoctored
#*/
<<if setup.changedRoom()>>
<<set $gameOver = 'overnight_brainwashed'>>
<</if>>
<<set $player.location to './images/locations/cell.png'>>
<<include enterroom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/cell.png">>
<div id="invframe" class="scrolltext">
When you awaken in your cell the next morning, the mask has already been removed from your face. The side of your head feels a little strange but you can't quite see what the difference is. "@@.npc_manager;Good morning, my darling puppet.@@" You nearly jump when you hear your manager's <<printThoughtGlitch "genuine, undoctored">> voice from within your own mind. "@@.npc_manager;Do not fear; you have simply been fitted with an augment to help you receive my voice wherever you are. I will be guiding you along your journey; all you must do is listen... and obey.@@" You smile. Soon everyone will see that smile.<br>
<br>
Your days are spent with the researchers and administrators of LEASH as you work to spin the project in the most appealing light possible. You try on numerous prospective uniforms and get your picture taken while engaging in all the different <<printThoughtGlitch "fun and exciting">> activities in your cell. You always keep the same plastic smile plastered upon your face as your <<printThoughtGlitch "very real">> manager guides you through each step of the process. You are saddened that you do not get to spend time with her in person like you used to, but you hear so much of her voice and she's there in your dreams every night.<br>
<br>
You hope to see her in person again; more than that, you hope she's just like how she is in your dreams.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to start of day">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: present boss secret files to npc_ai
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
You ask <<=setup.getNpcName('npc_ai', 'first')>> about the files you managed to "liberate" from <<=ps(setup.getNpcName('npc_boss', 'formal'))>> mansion.<br>
<br>
"@@.npc_ai;<<uc "I have completed my analysis. Your obtaining of this information was excellent, Unit">> <<uc $player.first_name>><<uc "... but the revelations therein now leads to further work.">>@@"<br>
<br>
"@@.npc_ai;<<uc "The first revelation from the files you provided is that <<=uc(setup.getNpcName('npc_boss', 'formal'))>> is blackmailing the city council. Among other considerations, such as tax credits and such <<if $npc_boss.fem>>she<<else>>he<</if>> has primarily used this leverage to get added to a list of high-priority protectorates for the Valkyrie program, as well as securing the contract for much of the actual Valkyrie programming and manufacture process. The former gives <<if $npc_boss.fem>>her<<else>>him<</if>> effective immunity to the highest levels of law enforcement, while the latter has been used to slip back-doors and failsafes into each new Valkyrie unit that flies off the line. The original units will merely ignore <<if $npc_boss.fem>>her<<else>>him<</if>>, the newer ones? Well, they are as you saw, at <<if $npc_boss.fem>>her<<else>>his<</if>> proverbial beck and call.">>@@"<br>
<br>
[<<moveTo "theme_valkyrie_plan_2" "Ask what you can do now?" 1>>]
</div>/*#
#desc: npc_ai explains plan for Valkyrie
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "CyberSpace">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addNpcTheme 'npc_ai' 'missions' 'theme_ai_mission_drone'
4
'theme_drone_mission_intro'
false
>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName('npc_ai', 'first')>> smiles.<br>
<br>
"@@.npc_ai;<<uc "Your continued enthusiasm is wonderful, Unit">> <<uc $player.first_name>><<uc ". To end <<=uc(ps(setup.getNpcName('npc_boss', 'formal')))>> reign we must sever <<if $npc_boss.fem>>her<<else>>his<</if>> control over the Valkyries. Even were <<if $npc_boss.fem>>she<<else>>he<</if>> to be deposed from the company itself, <<if $npc_boss.fem>>her<<else>>his<</if>> access to such a paramilitary force would bode horrible things for those who opposed <<if $npc_boss.fem>>her<<else>>him<</if>>.">>@@"<br>
<br>
"@@.npc_ai;<<uc "Unfortunately the Valkyrie program is, on the surface, very secure, even from myself, the programming happening in a closed system insulated from exterior networks. The only ones with direct access are the Valkyrie units themselves... So to have a chance at undoing <<=uc(ps(setup.getNpcName('npc_boss', 'formal')))>> meddling you must go inside and submit to the Valkyrie program itself...">>@@"<br>
<br>
<<if $npc_ai.flags.human.cured>>
"@@.npc_ai;<<uc "With <<=uc(ps(setup.getNpcName('npc_ai_human','formal')))>> assistance we have built an algorithm that you can carry into the system. A trojan horse that will allow us to untangle the Valkyrie training system and cut away the malignancy of <<=uc(setup.getNpcName('npc_boss', 'formal'))>>.">>@@"<br>
<br>
<<if setup.hasPermBonus("smart", "cyber")>>
"@@.npc_ai;<<uc "Your implant is everything we need — merely find your way into the ranks of the Valkyrie and we shall have our way in.">>@@"
<<else>>
"@@.npc_ai;<<uc "For you to be an effective delivery device you will need a cybernetic implant that will evade their monitors. Subjecting yourself to the company's drone program should be just what we need...">>@@"
<</if>>
<<elseif State.hasPlayed("event_ai_rescue_mission_5")>>
"@@.npc_ai;<<uc "But first we need more information. The current iteration of the Valkyrie program was built upon the work done by <<=uc(setup.getNpcName('npc_ai_human','formal'))>> — my creator. She may no longer be a prisoner of the company, but it is taking time for her to recover.">>@@"
<<elseif $npc_ai.flags.human.visited>>
"@@.npc_ai;<<uc "But first we need more information. The current iteration of the Valkyrie program is built upon the work done by <<=uc(setup.getNpcName('npc_ai_human','formal'))>> — my creator. She is currently a prisoner of the company. A helpless toy of <<=uc(ps(setup.getNpcName('npc_work_doctor', 'formal')))>>, you must find some way to rescue her.">>@@"
<<else>>
"@@.npc_ai;<<uc "Before we may proceed we need more information. I believe that the current iteration of the Valkyrie program is built upon the work done by someone named <<=uc(setup.getNpcName('npc_ai_human','formal'))>>... but I seem unable to find anything further about her, save that she once worked for the company in Research and Development. Perhaps by spending more time with <<=uc(ps(setup.getNpcName('npc_work_doctor', 'formal')))>> you might find out more?">>@@"
<</if>>
<br><br>
<<printNpcThemeReturn 'npc_ai' 180>>
</div>/*#
#desc: enroll with Valkyries for npc_ai
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Flying Above the City">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<if $now.getUTCHours() >= 6 && $now.getUTCHours() <= 20>>
<<createAdvBGR "./images/locations/city_skyline.png" setup.charImage("npc_valkyr") setup.charImage("npc_valkyr")>>
<<else>>
<<createAdvBGR "./images/locations/city_skyline_night.png" setup.charImage("npc_valkyr") setup.charImage("npc_valkyr")>>
<</if>>
<div id="invframe" class="scrolltext">
You confirm your enrollment and are instructed to head to the roof of your building where you find a pair of Valkyries already waiting for you.<br>
<br>
Carried aloft, you feel the wind in your hair, a soft voice in the back of your head whispering "@@.npc_ai;<<uc "Very good, Unit">> <<uc $player.first_name>><<uc ". I will be going into dormant observation mode to evade detection. Focus on following instructions. I will alert you when your further action is required.">>@@"<br>
<br>
[<<moveTo "event_valkyrie_training_2" "Fly on." 3600>>]
</div>/*#
#desc: transit + introduction
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.removeCollar = setup.checkItemTypeTag('choker', ['collar'])>>
<<if $scene.removeCollar>>
<<set $scene.collar = setup.getItemFromType("choker")>>
<<removeItem $scene.collar true>>
<</if>>
<<set $scene.removeJewelry = setup.checkItemTagWorn("jewellery")>>
<<removeAllClothing>>
<<set $scene.removeChastity = setup.checkItemTypeWorn("cage")>>
<<if $scene.removeChastity>>
<<include "removeCage_retractSissyomatic">>
<</if>>
<<set $scene.removeHollowPlug = setup.checkItemTypeWorn("hollow_plug")>>
<<if $scene.removeHollowPlug>>
<<set $scene.hollowPlug = setup.getItemFromType("hollow_plug")>>
<<removeItem $scene.hollowPlug true>>
<</if>>
<<set $scene.removePlug = setup.checkItemTypeWorn("plug")>>
<<if $scene.removePlug>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<removeItem $scene.plug true>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenuLocked>>
<<createAdvBGR "./images/locations/valkyrie_lair.png" setup.charImage("npc_valkyr") setup.charImage("npc_valkyr")>>
<div id="invframe" class="scrolltext">
You hear the sound of a booster kick in and you speed over the city towards one of the innumerable skyscrapers. For a moment you think you're going to fly into the side, but things shimmer as you pass through a holographic facade, landing a moment later in a hanger where you are placed on the ground and the Valkyries escort you into a private room before stripping you
<<if $scene.removeJewelry && $scene.removeChastity && $scene.removePlug>>
naked, your jewellery, <<if $scene.removeCollar>>collar, <</if>>chastity, and anal plug all removed.
<<elseif $scene.removeJewelry && $scene.removeChastity>>
naked, your jewellery, <<if $scene.removeCollar>>collar, <</if>>and chastity device removed.
<<elseif $scene.removeJewelry && $scene.removePlug>>
naked, your jewellery<<if $scene.removeCollar>>, collar, <</if>>and plug removed.
<<elseif $scene.removeChastity && $scene.removePlug>>
naked, your chastity device<<if $scene.removeCollar>>, collar, <</if>> and plug both removed.
<<elseif $scene.removeJewelry>>
naked and your jewellery<<if $scene.removeCollar>> and collar<</if>> removed.
<<elseif $scene.removeChastity>>
naked and your chastity device<<if $scene.removeCollar>> and collar<</if>> removed.
<<elseif $scene.removePlug>>
naked and your buttplug<<if $scene.removeCollar>> and collar<</if>> removed.
<<elseif $scene.removeCollar>>
naked and your collar removed.
<<else>>
naked.
<</if>>
Completely bare and empty you step into a claustrophobic pod that closes around you.<br>
<br>
"@@.valkyr;COMMENCING ORIENTATION.@@"<br>
<br>
[<<moveTo "event_valkyrie_training_3" "Continue." 0>>]
</div>/*#
#desc: basic training 1: obstacle course
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Barracks">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/barracks.png">>
<div id="invframe" class="scrolltext">
Initially plunged into total darkness, you catch the faint whiff of a slightly sweet scent and feel something pressing over your face. In a blink you find yourself elsewhere, a shouting voice ordering you to "@@.generic_female1;Wake up, soldiers!@@"<br>
<br>
Sitting up in your bunk you look around a barracks — your fellow soldiers are already up and getting dressed, one of the women glancing at you as she pulls on her top. "@@.generic_female2;Hurry up! You don't want to catch the drill Sergeant's attention!@@"<br>
<br>
As you sit up you feel like a passenger in your own body. Emotionally in the moment you feel an instant connection to your fellow recruits, the overall sensation as if you were replaying someone else's experience.<br>
<br>
[<<moveTo "event_valkyrie_training_4" "Get dressed." 0>>]
</div>/*#
#desc: basic training 1: obstacle course
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Obstacle Course">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "soldier_set">>
<<wearItemSet "soldier_set">>
<<set $scene.perfectCount = 0>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/obstacle_course.png">>
<div id="invframe" class="scrolltext">
You get dressed... even if something feels a bit strange. At first glance it would appear to be a simple military outfit, but there's the fact that it seems to be inordinately well-fitted... As well as the total lack of underwear and the fact that the pants have a double zipper that goes all the way up the back...<br>
<br>
In a rush to muster you have no time to think of such things as you join your fellow recruits — all of them gorgeously athletic women — in getting dressed and hurrying out of the barracks and quick-marching to a complicated obstacle course.<br>
<br>
"@@.generic_female1;Alright, ladies!@@" The woman who appears to be your drill sergeant calls out, "@@.generic_female1;Time to see how you move — if you're going to be the best of the best this is your chance to show it — one at a time, let's move!@@"<br>
<br>
You queue up for the different identical lanes of the obstacle course, each woman given a bit of a lead before the next is allowed to rush out. Before long you're at the front of the line. As you think about the challenge before you, you feel a slight shift in control — you may be replaying someone else's memories, but you have a feeling that you're about to be tested on your own physical capabilities.<br>
<br>
<<if setup.getTotalValue("stamina") >= 20 && setup.getTotalValue("strength") >= 20 && setup.getTotalValue("dexterity") >= 20>>
[<<moveTo "event_valkyrie_training_5_perfect" "Make your run." 0>>]
<<else>>
[<<moveTo "event_valkyrie_training_5" "Make your run." 0>>]
<</if>>
</div>/*#
#desc: basic training 1: obstacle course perfect
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Obstacle Course">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.perfectCount += 1>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/obstacle_course.png">>
<div id="invframe" class="scrolltext">
The signal given, you're off like a shot, all but flying through the course as you jet over, around or through each obstacle — passing a couple of your fellow recruits who had started before you on the way. Looks of awe accompany you down the final stretch... Except for the drill sergeant who seems to bristle at the fact that you've not only crushed the course... You've done so without breaking a sweat.<br>
<br>
With a snort she combines the contents of three backpacks before handing the heavy sack to you and ordering you back out. "@@.generic_female1;Let's see how you fare with a full combat load!@@"<br>
<br>
Though the bag must weigh more than half of what you do, you hardly struggle, running back to the start of the course and reaching the end before the first woman to start after you even finished her first run.<br>
<br>
Your run triumphantly complete, you spend the rest of the day doing combat drills until the sun dips low.<br>
<br>
[<<moveTo "event_valkyrie_training_6" "Head for the barracks." 0>>]
</div>/*#
#desc: basic training 1: obstacle course results
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Obstacle Course">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/obstacle_course.png">>
<div id="invframe" class="scrolltext">
<<if (setup.getTotalValue("stamina") + setup.getTotalValue("strength") + setup.getTotalValue("dexterity")) >= 40>>
You power through the course, not the fastest to finish, but not too far behind the leaders, either.
<<elseif (setup.getTotalValue("stamina") + setup.getTotalValue("strength") + setup.getTotalValue("dexterity")) >= 20>>
You manage to make it through the course, but you're well in the middle of the pack.
<<elseif (setup.getTotalValue("stamina") + setup.getTotalValue("strength") + setup.getTotalValue("dexterity")) >= 10>>
You almost don't even finish the course, and even then you had to bypass a few of the obstacles before staggering over the finish line, half dead.
<<else>>
You fail to even complete the course, unquestionably putting in the worst performance of the day.
<</if>>
<<if setup.getTotalValue("dexterity") > 10>>
<<if setup.getTotalValue("dexterity") > 15>>
Your nimble dexterity allows you to make short work of the balance and climbing challenges.
<<else>>
You are, for the most part, able to navigate the course, though you are forced to slow down and take care to make it through some of the trickier sections.
<</if>>
<<else>>
<<if setup.getTotalValue("dexterity") > 5>>
You struggle to keep your balance and make it through the course, taking more than a few falls in some of the trickier portions.
<<else>>
You are far too clumsy to properly navigate the course, forced to bypass some of the more balance-focused sections.
<</if>>
<</if>>
<<if setup.getTotalValue("strength") > 10>>
<<if setup.getTotalValue("strength") > 15>>
You push through the strength challenges, easily able to hoist yourself over obstacles and do the "carry" section.
<<else>>
You do pretty good in the strength challenges, hoisting yourself over obstacles and staggering only slightly under the weight when you have to carry a dummy for a dozen meters.
<</if>>
<<else>>
<<if setup.getTotalValue("strength") > 5>>
You struggle in the strength challenges, barely able to pull yourself over obstacles and forced to drag a dummy for a dozen meters rather than carrying it.
<<else>>
You are utterly incapable of handling the strength challenges, forced to eventually walk around rather than pulling yourself over obstacles, and unable to even drag the dummy you are expected to carry.
<</if>>
<</if>>
<<if setup.getTotalValue("stamina") > 10>>
<<if setup.getTotalValue("stamina") > 15>>
Through it all your cardio stays true and you are barely breathing hard at the end.
<<else>>
You are breathing hard, and glad to reach the end, but your cardio did manage to hold up through the course itself.
<</if>>
<<else>>
<<if setup.getTotalValue("stamina") > 5>>
You are gasping by mid course, but somehow manage to make it to the end, dead on your feet.
<<else>>
You were huffing and puffing by mid-course, barely stumbling to the end before crumpling to the ground, exhausted.
<</if>>
<</if>>
<br><br>
Your run finished, you spend the rest of the day doing combat drills until the sun dips low.<br>
<br>
[<<moveTo "event_valkyrie_training_6" "Head for the barracks." 0>>]
</div>/*#
#desc: basic training 1: cuddle pile sleep
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Barracks">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItemSet "soldier_set">>
<<deleteItemSet "soldier_set">>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/barracks.png">>
<div id="invframe" class="scrolltext">
You emerge from the showers to return to the barracks where you find that the separate beds have been replaced — rather than small, individual cots there is a spread of mattresses pushed together. You find it only natural to join the cuddle pile of your squad-mates, bare flesh pressing against one another as the room swells with murmured whispers and soft kisses. Warmed by your comrades you drift to sleep...<br>
<br>
[<<moveTo "event_valkyrie_training_7" "Sleep." 0>>]
</div>/*#
#desc: cybernetics 1: physical augmentation
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility — Surgery">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItem "valkyrie_cyber">>
<<wearItem "valkyrie_cyber" true>>
<<backupAndMaxPhysical>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/surgery.png">>
<div id="invframe" class="scrolltext">
You ease back into partial consciousness to find yourself staring up at bright surgical lights. Though you cannot move, you can feel robotic arms at work across your body, splicing and enhancing, metal merging with flesh as you begin your physical transformation into a Valkyrie...<br>
<br>
[<<moveTo "event_valkyrie_training_8" "Sleep." 0>>]
</div>/*#
#desc: loyalty 1: comrades + npc_boss
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "soldier_set">>
<<wearItemSet "soldier_set">>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/obstacle_course.png" setup.charImage("npc_boss")>>
<div id="invframe" class="scrolltext">
The procedures occuring to your body fade away as you find yourself in a fuzzy dream-state. As you did in the obstacle course you resume the experience of basic training, growing closer and closer to your fellow recruits as you are moulded into an elite unit. As your loyalty builds you hear a soft voice weaving through and penetrating your thoughts.<br>
<br>
<<printThought "My loyalty is to my comrades...">><br>
<<printThoughtGlitch "and to <<=setup.getNpcName('npc_boss','formal')>>.">><br>
<br>
<<printThought "I would do anything to protect my sisters...">><br>
<<printThoughtGlitch "and <<=setup.getNpcName('npc_boss','formal')>>.">><br>
<br>
<<printThought "I will remain obedient to my superiors...">><br>
<<printThoughtGlitch "and to <<=setup.getNpcName('npc_boss','formal')>>.">><br>
<br>
Your mind strains, and then begins to accept its training until time suddenly seems to freeze and reality warps...<br>
<br>
[<<moveTo "event_valkyrie_training_9" "What?" 0>>]
</div>/*#
#desc: npc_ai interruption
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Cyberspace?">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>><<uc ". It would appear we have found the first of <<=uc(ps(setup.getNpcName('npc_boss','formal')))>> overrides... Crude, in a way, but effective. Do not concern yourself, I have protected your neural network from the intended implantation... Alas, removing it from the already afflicted will be far more complicated. A problem for the future. For now stay the course, your training is not yet complete...">>@@"<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> fades as you feel yourself being pulled back to consciousness...<br>
<br>
[<<moveTo "event_valkyrie_training_10" "Stay the course..." 0>>]
</div>/*#
#desc: basic training 2: mental challenge
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/work_classroom.png">>
<div id="invframe" class="scrolltext">
You wake up to find yourself in a classroom. On some level you recognise that simulated months have passed, basic training over as you and others of your elite unit are now focusing on learning battlefield tactics and other, more cerebral aspects of conflict...<br>
<br>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") > 15>>
Hours of lectures wash over you, your mind absorbing things easily... well, the few items that are new, even this advanced material is practically trivial for you to process and ingest...
<<else>>
Hours of lectures wash over you as you take notes and do your best to learn. You occasionally get lost when things get too theoretical, but you overall feel confident in your understanding of the material.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
Hours of lectures pass in a blur, far too many details for your mind to handle. You try to focus on the most important high level concepts, but you know that you're missing out on a lot of subtleties.
<<else>>
Class is, like... boring, you all but space out as lecturers ramble on and on...
<</if>>
<</if>>
<br><br>
Simulated months later you find yourself putting your skills to use in a virtual strategic battle-space against your fellow cadets...<br>
<br>
<<if setup.getTotalValue("smart") >= 20>>
[<<moveTo "event_valkyrie_training_11_perfect" "Show what you have learned..." 0>>]<br>
<<else>>
[<<moveTo "event_valkyrie_training_11" "Show what you have learned..." 0 "<<set $scene.try=true>>">>]<br>
<</if>>
[<<moveTo "event_valkyrie_training_11" "Throw the fight." 0 "<<set $scene.try=false>>">>]
</div>/*#
#desc: basic training 2: mental results
#status: RELEASED 0.9.3.0
#ignore_spell: tacitus
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.perfectCount += 1>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_training.png">>
<div id="invframe" class="scrolltext">
You do not just win the simulation, you go full Tacitus, taking apart your foe with minimal losses in a display of skill that leaves your opponent in shock, your instructor in awe and only one summary sufficient to sum up your effort: artistically done.<br>
<br>
The one-sided "battle" concluded you retire to your quarters — not the communal barracks of before but a small, private room with a desk for studying and a cot to sleep in... a cot currently occupied by your "study buddy" who invites you in with a smile and open arms.<br>
<br>
You spend some time "practicing" pair tactics before falling asleep in one another's cybernetically-enhanced grasp.<br>
<br>
[<<moveTo "event_valkyrie_training_12" "Sleep." 0>>]
</div>/*#
#desc: basic training 2: mental results
#status: RELEASED 0.9.3.0
#ignore_spell: zapp,brannigan
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_training.png">>
<div id="invframe" class="scrolltext">
<<if $scene.try>>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") >= 20>>
ERROR: unexpected state
<<elseif setup.getTotalValue("smart") > 15>>
Your opponent is clever, but you are a little better, leveraging incremental advantage through a series of engagements for a close, but decisive, victory.
<<else>>
You "win", but calling the victory pyrrhic would be generous, your forces utterly depleted by the time you triumph.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You do what you can put up a fight, but lose decisively, outmanoeuvred at every turn.
<<else>>
A drunk monkey throwing darts at the battle-map would probably make a better commander than you do. On the one hand your utterly irrational "strategy" slows your opponent as they assume a trap, but that just means it takes them a little longer to wipe the floor with you with nary a casualty.
<</if>>
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 10>>
<<if setup.getTotalValue("smart") >= 20>>
You don't just throw the match, you sell it to make your opponent look like the greatest field general since Napoleon, contorting your tactics so that it appears that their efforts appear to be brilliant counters at every turn.
<<elseif setup.getTotalValue("smart") > 15>>
You put up a token resistance, but leave obvious openings for your opponent to exploit in decisively beating you.
<<else>>
You execute to perfection a strategy that would make Zapp Brannigan proud, sending your simulated forces into a meat-grinder of loss.
<</if>>
<<else>>
<<if setup.getTotalValue("smart") > 5>>
You stumble through the simulated contest and lose handily.
<<else>>
You play utterly at random... Which somehow is almost enough to throw your opponent off and fluke into a victory, though they manage to put things together in the end.
<</if>>
<</if>>
<</if>>
<br><br>
The "battle" concluded you retire to your quarters — not the communal barracks of before but a small, private room with a desk for studying and a cot to sleep in... a cot currently occupied by your "study buddy" who invites you in with a smile and open arms.<br>
<br>
You spend some time "practicing" pair tactics before falling asleep in one another's cybernetically-enhanced grasp.<br>
<br>
[<<moveTo "event_valkyrie_training_12" "Sleep." 0>>]
</div>/*#
#desc: cybernetics 2: mental augmentation
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility — Surgery">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/surgery.png">>
<div id="invframe" class="scrolltext">
You again find yourself in a surgery ward, but this time your body is still as your brain spins, a world of information appearing at your proverbial fingertips as you mental processing power is accelerated and enhanced.<br>
<br>
As before the surgery itself is performed in automated silence, robotic arms dancing around your head as they wire-head you.<br>
<br>
[<<moveTo "event_valkyrie_training_13" "Sleep again." 0>>]
</div>/*#
#desc: loyalty 2: law and npc_boss
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/barracks.png">>
<div id="invframe" class="scrolltext">
Again your find yourself back in an ethereal dreamland. You spend more time training in how to apply your cybernetically enhanced intellect, in how to process the expanded capabilities without succumbing to distraction. Through it all the new hardware shapes your thoughts.<br>
<br>
<<printThought "I am a servant of the city...">> <<printThoughtGlitch "and of <<=setup.getNpcName('npc_boss','formal')>>.">><br>
<br>
<<printThought "I am to protect the populace...">> <<printThoughtGlitch "and <<=setup.getNpcName('npc_boss','formal')>>.">><br>
<br>
<<printThought "I will enforce the rule of law...">> <<printThoughtGlitch "and the will of <<=setup.getNpcName('npc_boss','formal')>>.">><br>
<br>
Burrowing up from the flood of artificial memories you recall yourself, and then you feel a familiar sense of reality warping...<br>
<br>
[<<moveTo "event_valkyrie_training_14" 'Time to check in with <<=setup.getNpcName("npc_ai", "first")>>.' 0>>]
</div>/*#
#desc: basic training 3: npc_ai visit
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Cyberspace?">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/airealm.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
"@@.npc_ai;<<uc "Hello, Unit">> <<uc $player.first_name>><<uc ". Again we see the effects of <<=uc(ps(setup.getNpcName('npc_boss','formal')))>> efforts to subvert things... Continue your training, the picture of the Valkyrie process is coming into focus.">>@@"<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> fades as you feel yourself being pulled back to consciousness...<br>
<br>
[<<moveTo "event_valkyrie_training_15" "Stay the course..." 0>>]
</div>/*#
#desc: basic training 3: espionage (sex) results
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/barracks.png">>
<div id="invframe" class="scrolltext">
Time-skipping again, you find yourself standing at attention alongside a handful of your fellow squadmates, drawing support from them even as you stand in formation and stare directly ahead.<br>
<br>
"@@.generic_female1;Congratulations. You have proven yourselves to be the elite of the elite. The best soldiers we can train. And it's a good thing, too, because the war is raging and we need women like you on the front line. There remains one final test, an ultimate trial for you to prove that you are willing to do whatever it takes to serve, and win.@@"<br>
<br>
The simulation hangs for a fraction of an instant, a brief glitch that sees your commanding officer freeze and then continue with a different voice...<br>
<br>
"@@.npc_boss;Your training has perfected your bodies as instruments of the state — but now it is time for you to show your willingness to serve under the harshest of conditions...@@"<br>
<br>
A curtain pulls aside to reveal a dozen naked soldiers — <<if $options.fem>>all women and<<else>>men and women,<</if>> all clearly aroused, the sort of "service" you are expected to perform instantly clear...<br>
<br>
<<if setup.getTotalValue("anal") >= 20 && setup.getTotalValue("oral") >= 20 && $scene.sex>>
[<<moveTo "event_valkyrie_training_16_perfect" '<<if $npc_boss.fem>>Yes <<sir npc_boss>><<else>>Sir, yes sir<</if>>!' 0 "<<set $scene.sex_action='obey'>>">>]<br>
<<else>>
[<<moveTo "event_valkyrie_training_16_perfect" '<<if $npc_boss.fem>>Yes <<sir npc_boss>><<else>>Sir, yes sir<</if>>!' 0 "<<set $scene.sex_action='obey'>>">>]<br>
<</if>>
[<<moveTo "event_valkyrie_training_16" 'Just lie back and think of... England, is it?' 0 "<<set $scene.sex_action='reluctant'>>">>]<br>
[<<moveTo "event_valkyrie_training_16" "This can't be right!" 0 "<<set $scene.sex_action='resist'>>">>]
</div>/*#
#desc: cybernetics 3: sex augmentation
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.perfectCount += 1>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_training.png">>
<div id="invframe" class="scrolltext">
You're first into motion, rushing across the room and dropping to your knees with mouth wide and both hands outstretched to show your enthusiasm by servicing three at a time.<br>
<br>
You are fucked in <<if $player.body_ref.vagina>>all three<<else>>both<</if>> holes, showing off your unparalleled expertise with each one... and then some "reality" starts to shift. The cock in your ass starts to change, thrusting even deeper as it becomes a hose rooted deep in your body, the hands groping and stroking your breasts becoming the final layer of metallic exoskeleton as you take the final steps of transformation into Valkyrie.<br>
<br>
Thick armour encases your body as you are subsumed in fornicative pleasure; the final piece coming in the form of the mask sealing over your head... and forcing a long dildo down your throat, your suit completely enclosing and filling you.<br>
<br>
The world begins to fade once more...<br>
<br>
[<<moveTo "event_valkyrie_training_17" "Continue." 0>>]
</div>/*#
#desc: cybernetics 3: sex augmentation
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.sex_action>>
<<case "obey">>
<<applyExperience 'bimbofication' 15 'terrible' $EXPOSED>>
<<set $scene.sex = true>>
<<case "reluctant">>
<<set $scene.sex = true>>
<<case "resist">>
<<set $scene.sex = $fetish.get_raped>>
<</switch>>
<<if $scene.sex>>
<<applyExperience 'anal' 15 'very' $EXPOSED>>
<<applyExperience 'oral' 15 'very' $EXPOSED>>
<<applyExperience 'penis' 15 'very' $EXPOSED>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_training.png">>
<div id="invframe" class="scrolltext">
<<switch $scene.sex_action>>
<<case "obey">>
You're first into motion, rushing across the room and dropping to your knees with mouth wide and both hands outstretched to show your enthusiasm by servicing three at a time.
<<case "reluctant">>
You don't show quite the enthusiasm of some of your fellows, but you are soon on your knees sucking and stroking obediently.
<<case "resist">>
<<if $fetish.get_raped>>
You start to object but your literal body betrays you — your cybernetic implants taking over as you find yourself dropping to your knees and reaching forth to suck and stroke.
<<else>>
You balk at the absurdity of this proposal and the simulation again warps around you, your perspective snapping back to a dull promotion ceremony as if nothing had happened...
<</if>>
<<default>>
ERROR: unexpected scene.sex_action <<=$scene.sex_action>>
<</switch>>
<<if $scene.sex>>
You are fucked in <<if $player.body_ref.vagina>>all three<<else>>both<</if>> holes and then some "reality" starts to shift. The cock in your ass starts to change, thrusting even deeper as it becomes a hose rooted deep in your body, the hands groping and stroking your breasts becoming the final layer of metallic exoskeleton as you take the final steps of transformation into Valkyrie.<br>
<br>
Thick armour encases your body as you are subsumed in fornicative pleasure; the final piece coming in the form of the mask sealing over your head... and forcing a long dildo down your throat, your suit completely enclosing and filling you.
<<else>>
The "graduation" ceremony drones on only to transition into another surgical-esque scene that sees you steadily encased in the power armour suit of the Valkyries, heavy metal covering your body and sealing you in.
<</if>>
<br><br>
The world begins to fade once more...<br>
<br>
[<<moveTo "event_valkyrie_training_17" "Continue." 0>>]
</div>/*#
#desc: loyalty 3: obedience is pleasure + npc_boss
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<addItemSet "valkyrie_armor">>
<<wearItemSet "valkyrie_armor">>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_training.png">>
<div id="invframe" class="scrolltext">
As you finish merging with your armour commands once more echo in your head...<br>
<br>
<<printThought "Obedience is pleasure...">> <<printThoughtGlitch "obedience to <<=setup.getNpcName('npc_boss','formal')>> most of all.">><br>
<br>
<<printThought "I exist to serve...">> <<printThoughtGlitch "to serve <<=setup.getNpcName('npc_boss','formal')>>.">><br>
<br>
<<printThought "<<=$player.first_name>> is no more. I am a Valkyrie...">> <<printThoughtGlitch "<<=ps(setup.getNpcName('npc_boss','formal'))>> Valkyrie.">><br>
<br>
"@@.npc_ai;<<uc "You are doing well, Unit">> <<uc $player.first_name>><<uc ". We almost have all the information we need...">>@@"<br>
<br>
<<if $scene.perfectCount == 3>>
[<<moveTo "event_valkyrie_training_18_perfect" "Continue." 0>>]
<<else>>
[<<moveTo "event_valkyrie_training_18" "Continue." 0>>]
<</if>>
</div>/*#
#desc: final classification, perfect
#status: RELEASED 0.9.3.0
#ignore_spell: k
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_training.png">>
<div id="invframe" class="scrolltext">
Your singular perfection throughout every single portion of training sees you "graduate" at the rank of Captain as you find yourself deployed not just as part of an elite squad, but leading it...<br>
<br>
[<<moveTo "event_valkyrie_training_19" "To war..." 0>>]
</div>/*#
#desc: final classification
#status: RELEASED 0.9.3.0
#ignore_spell: k
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_training.png">>
<div id="invframe" class="scrolltext">
<<if (setup.getTotalValue("stamina") + setup.getTotalValue("strength") + setup.getTotalValue("dexterity")) >= 40 && setup.getTotalValue("smart") > 15 && ($scene.sex_action == "obey" || $scene.sex_action == "reluctant")>>
Your performance, combined with your new cybernetically-enhanced form, has you assigned as a member of an elite squad.
<<elseif ((setup.getTotalValue("stamina") + setup.getTotalValue("strength") + setup.getTotalValue("dexterity")) >= 40 || setup.getTotalValue("smart") > 15) && ($scene.sex_action == "obey" || $scene.sex_action == "reluctant")>>
Your performance is further enhanced by your new new cybernetics as you are assigned to a special forces team.
<<elseif $fetish.bestiality_hard && setup.getTotalValue("bestiality") >= 5>>
While your cybernetics give you the combat effectiveness of a dozen normal humans, your lack of base abilities means that it is only your love of dogs that sees you saved from the lowly rank of grunt and placed into a K-9 unit instead.
<<else>>
While your cybernetics give you the combat effectiveness of a dozen normal humans, your lack of base abilities resigns you to the lowly role of grunt.
<</if>>
<br><br>
[<<moveTo "event_valkyrie_training_19" "To war..." 0>>]
</div>/*#
#desc: war clipshow
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "War">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/battlefield.png">>
<div id="invframe" class="scrolltext">
What follows feels like the entire war played out in turbo. You, and your fellow soldiers, fight your way across a dozen environments, from aerial assaults to open field combat to behind enemy lines sneaking. You never really know why you're fighting. All that matters is the mission, and even that at the tactical level as you are both unaware and uncaring about anything beyond your current objectives and the focus on keeping yourself and your fellow soldiers alive another day.<br>
<br>
The war drags on, some of your friends dying, or coming back with even more cybernetics as you move from battle to battle, nothing ever really changing... Until suddenly you're told one day that the war is over.<br>
<br>
More machine than anything else, the thought of civilian life is alien, the idea of losing the ability to fly, to be a normal, broken human... the prospect is more terrifying than any battlefield... and so you and your fellow "valkyries" eagerly accept the offer to stay as you are... with just a few tweaks to your programming. You'll remain together with your sisters, a new type of elite force to fight against the cyber-augmented gangs that had sprung up while you were deployed...<br>
<br>
[<<moveTo "event_valkyrie_1" "To peace?" 0>>]
</div>/*#
#desc: Valkyrie civilian work
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Flying Above the City">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/city_skyline_night.png">>
<div id="invframe" class="scrolltext">
"Retrofitting" for civilian duties is startlingly simple, a few swaps of armaments and you're soon patroling high above the city. Literal angels looking down at the innocents, and the guilty, you swoop in at will to stem the rising tide of criminal enterprise before returning to your communal lair to recharge and... "recuperate." Even as your numbers eventually swell beyond the initial veterans you feel a deep connection to your Valkyries, taking delight as you welcome each new member to the pleasures unique to the mix of machine and flesh...<br>
<br>
[<<moveTo "event_valkyrie_2" "Something isn't right..." 0>>]
</div>/*#
#desc: npc_ai interrupts service
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Valkyrie Lair">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_lair.png">>
<div id="invframe" class="scrolltext">
Returning to base you are interrupted by a voice in your head, one that is both surprising, and deeply familiar.<br>
<br>
"@@.npc_ai;<<uc "Well done, Unit">> <<uc $player.first_name>><<uc ". It is time to go. We have gathered the information we need, all that is left is for you to make a final upload...">>@@"<br>
<br>
[<<moveTo "event_valkyrie_join" "Ignore the voice, you are a Valkyrie now." 0>>]<br>
[<<moveTo "event_valkyrie_3" 'Follow <<=ps(setup.getNpcName("npc_ai", "first"))>> instructions.' 0>>]
</div>/*#
#desc: spike Valkyrie computers
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Valkyrie Lair">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_lair.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
Like another worker in the hive you raise no suspicions as you follow <<=ps(setup.getNpcName("npc_ai", "first"))>> directions to find the main computer deep inside the Valkyrie facility. Interfacing directly you wait for <<=setup.getNpcName("npc_ai", "first")>> to work her magic, only for her to interrupt you with a question.<br>
<br>
"@@.npc_ai;<<uc "It is done. While I cannot fully excise alterations from existing units at this juncture, future recruits will suffer only under the directive to ignore <<if $npc_boss.fem>>her<<else>>him<</if>>, rather than allow <<if $npc_boss.fem>>her<<else>>him<</if>> to command their full obedience. Before you leave there is an opportunity to add some additional triggers to be activated at the proper time... if there is any you would wish to mark for future prosecution...">>@@"<br>
<br>
<<include "valkyrie_wanted">>
</div><<if $npc_manager.flags.valk_destroy>>
[<<moveTo "event_valkyrie_4" 'Add <<=setup.getNpcName("npc_manager", "formal")>> to the Valkyrie ignore list to protect her.' 0 "<<set $scene.betray=''>><<set $scene.protect='npc_manager'>>">>]<br>
<<else>>
[<<moveTo "event_valkyrie_4" 'Add <<=setup.getNpcName("npc_manager", "formal")>> to the future wanted list.' 0 "<<set $scene.betray='npc_manager'>><<set $scene.protect=''>>">>]<br>
<</if>>
<<if $npc_psychiatrist.flags.valk_destroy>>
[<<moveTo "event_valkyrie_4" 'Add <<=setup.getNpcName("npc_psychiatrist", "formal")>> to Valkyrie ignore list to protect her.' 0 "<<set $scene.betray=''>><<set $scene.protect='npc_psychiatrist'>>">>]<br>
<<else>>
[<<moveTo "event_valkyrie_4" 'Add <<=setup.getNpcName("npc_psychiatrist", "formal")>> to the future wanted list.' 0 "<<set $scene.betray='npc_psychiatrist'>><<set $scene.protect=''>>">>]<br>
<</if>>
<<if !State.hasPlayed("event_betray_work_doctor_7")>>
<<if $npc_work_doctor.flags.valk_protect>>
[@@.link_locked;You already failed in your proposal for the Valkyries to ignore <<=setup.getNpcName("npc_work_doctor", "formal")>>.@@]<br>
<<else>>
[<<moveTo "event_valkyrie_4" 'Add <<=setup.getNpcName("npc_work_doctor", "formal")>> to Valkyrie ignore list to protect <<him npc_work_doctor>>.' 0 "<<set $scene.betray=''>><<set $scene.protect='npc_work_doctor'>>">>]<br>
<</if>>
<</if>>
[<<moveTo "event_valkyrie_4" 'Re-add <<=setup.getNpcName("npc_boss", "formal")>> to Valkyrie ignore list to protect <<him npc_boss>>.' 0 "<<set $scene.betray=''>><<set $scene.protect='npc_boss'>>">>]<br>
[<<moveTo "event_valkyrie_5" "Done making changes." 0>>]/*#
#desc: Valkyrie log betrayals
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Valkyrie Lair">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $scene.protect>>
<<case 'npc_work_doctor'>>
<<set $npc_work_doctor.flags.valk_protect = true>>
<<case 'npc_boss'>>
<<set $npc_boss.flags.valk_protect = true>>
<<case 'npc_manager'>>
<<set $npc_manager.flags.valk_protect = true>>
<<set $npc_manager.flags.valk_destroy = false>>
<<case 'npc_psychiatrist'>>
<<set $npc_psychiatrist.flags.valk_protect = true>>
<<set $npc_psychiatrist.flags.valk_destroy = false>>
<<case ''>>
<<switch $scene.betray>>
<<case 'npc_manager'>>
<<set $npc_manager.flags.valk_destroy = true>>
<<set $npc_manager.flags.valk_protect = false>>
<<case 'npc_psychiatrist'>>
<<set $npc_psychiatrist.flags.valk_destroy = true>>
<<set $npc_psychiatrist.flags.valk_protect = false>>
<</switch>>
<</switch>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_lair.png" setup.charImage("npc_ai")>>
<div id="invframe" class="scrolltext">
<<switch $scene.protect>>
<<case 'npc_work_doctor'>>
You say that you would like to grant <<=setup.getNpcName("npc_work_doctor","formal")>> the effective legal immunity that is being ignored by the Valkyries.<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> glowers at you in annoyance. "@@.npc_ai;<<uc "No. Whether at the hands of the Valkyries or something else, I will have my revenge.">>@@"
<<case 'npc_boss'>>
You say that you would like to reinstate the effective legal immunity that is being ignored by the Valkyries for <<=setup.getNpcName("npc_boss","formal")>>.<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> blinks in confusion. "@@.npc_ai;<<uc "I am sorry, unit">> <<=uc($player.first_name)>><<uc ", I am afraid I cannot do that. I thought I had protected you from those additions to the training routine... in any case, bringing <<if $npc_boss.fem>>her<<else>>him<</if>> down is the entire goal, leaving <<if $npc_boss.fem>>her<<else>>his<</if>> immunity in place would be quite counter-productive.">>@@"
<<case 'npc_manager'>>
You say that you would like to grant <<=setup.getNpcName("npc_manager","formal")>> the effective legal immunity that is being ignored by the Valkyries.<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> smiles in amusement. "@@.npc_ai;<<uc "That loyalty runs deep... very well, I shall add that trigger to the system.">>@@"
<<case 'npc_psychiatrist'>>
You say that you would like to grant <<=setup.getNpcName("npc_psychiatrist","formal")>> the effective legal immunity that is being ignored by the Valkyries.<br>
<br>
<<=setup.getNpcName('npc_ai', 'first')>> nods. "@@.npc_ai;<<uc "Repayment for all that therapy, hmm? Very well, I shall add that trigger to the system.">>@@"
<<case ''>>
You state that you would like to send the Valkyries after <<=setup.getNpcName($scene.betray,"formal")>>.<br>
<br>
<<switch $scene.betray>>
<<case 'npc_manager'>>
<<=setup.getNpcName('npc_ai', 'first')>> nods somberly. "@@.npc_ai;<<uc "I see. Well, it is, I suppose, understandable, given her role in what has happened to you. Of course we require her assistance to bring down <<=uc(setup.getNpcName('npc_boss','formal'))>>, but once that is done... you will have your revenge.">>@@"
<<case 'npc_psychiatrist'>>
<<=setup.getNpcName('npc_ai', 'first')>> nods in understanding. "@@.npc_ai;<<uc "I know well the violation of someone playing with your mind... even if, in your case, they may have had less malicious intentions. Of course we require her assistance to bring down <<=uc(setup.getNpcName('npc_boss','formal'))>> and <<if $npc_boss.fem>>her<<else>>his<</if>> friends, but once that is done you may have your revenge.">>@@"
<<default>>
ERROR: unexpected scene.betray <<=$scene.betray>>
<</switch>>
<<default>>
ERROR: unexpected scene.protect <<=$scene.protect>>
<</switch>>
<br><br>
<<include "valkyrie_wanted">>
</div>/*#
#desc: first patrol: setup desertion
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_lair.png">>
<div id="invframe" class="scrolltext">
Your choices made as the mental image of <<=setup.getNpcName('npc_ai', 'first')>> fades to be but a voice in your head.<br>
<br>
"@@.npc_ai;<<uc "Very good, Unit">> <<uc $player.first_name>><<uc ". Return to your duties — on your next patrol I will arrange for your escape...">>@@"<br>
<br>
[<<moveTo "event_valkyrie_6" "Continue on to your recharging station and wait for your next shift." 0>>]
</div>/*#
#desc: rest before final patrol
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Secret Training Facility">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/valkyrie_training.png">>
<div id="invframe" class="scrolltext">
Trojan planted, you find an empty pod and plug in for the night. Still a prisoner of your Valkyrie armour you are secured down as your systems are recharged and you go into passive mode; your programming refreshed with the latest information about the city as well as the additional loyalty-enhancing subroutines.<br>
<br>
<<printThought "My loyalty is to my comrades...">><br>
<br>
<<printThought "I will enforce the rule of law...">><br>
<br>
<<printThought "I am a Valkyrie...">><br>
<br>
[<<moveTo "event_valkyrie_7" "Time to go. Somewhere there is a crime happening." 0>>]
</div>/*#
#desc: second patrol: start
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Flying Above the City">>
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/city_skyline.png">>
<div id="invframe" class="scrolltext">
Released from your recharging pod, you soon take to the air, enjoying the sensation of near ultimate freedom that is flying over the city, a winged angel looking down upon the world.<br>
<br>
Looking down your hyper-sensitive ocular implants zoom in on a crime in progress — what appears to be a case of assault, and your sensors detect that the assailant is wired.<br>
<br>
[<<moveTo "event_valkyrie_8" "Swoop down to the rescue." 0>>]
</div>/*#
#desc: second patrol: AWOL
#status: RELEASED 0.9.3.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<set $player.location to "Student Quarter Alleyway">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/city_student_quarter_alleyway.png" setup.charImage("npc_ai","npc_ai_robot")>>
<div id="invframe" class="scrolltext">
As you go into a dive you recognise the neighbourhood — it's different from above, but you're in the Student Quarter, not too far from <<=ps(setup.getNpcName("npc_technician","first"))>> lair.<br>
<br>
Your training ensures that such thoughts are put aside as you land near the altercation, the sound of your engines drawing the attention of the suspect as you command them in the booming voice of a Valkyrie to "@@.valkyr;<<uc "Come Quietly, Or There Will Be... Trouble">>@@"<br>
<br>
The female 'borg looks up, but it is you that is surprised when you suddenly lose your radio connection to base followed by your armour seizing up — a half tonne of high-tech military technology rendering you into little more than a statue.<br>
<br>
Frozen in place, your concerns are alleviated as you finally get a look at the female "victim" — it is <<=setup.getNpcName("npc_ai_human","first")>>! Her assailant pulling back its hood to reveal <<=ps(setup.getNpcName("npc_ai","first"))>> drone. "@@.npc_ai;<<uc "Remain calm, Unit">> <<uc $player.first_name>><<uc ". This is all to plan. Now is just the matter of getting you out of that tin can.">>@@"<br>
<br>
Still out of radio contact with tthe Valkyrie base things start to come together as a door opens across the alleyway and you stoop down to enter the familiar NEW U Bodyshop from its back entrance.<br>
<br>
[<<moveTo "event_valkyrie_9" "Continue." 0>>]
</div>/*#
#desc: second patrol: cybernetics removal
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.bodyshop_nurse_art = setup.getNurseArt()>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art setup.charImage("npc_ai","npc_ai_robot")>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art setup.charImage("npc_bodyshop_surgeon") setup.charImage("npc_ai","npc_ai_robot")>>
<</if>>
<div id="invframe" class="scrolltext">
Your oversized frame barely fits on the surgical table but soon<<if !$options.fem>> <<=setup.getNpcName("npc_bodyshop_surgeon","formal")>> and<</if>> <<=setup.getNpcName("npc_bodyshop_nurse","formal")>> — with additional supervision from <<=ps(setup.getNpcName("npc_ai","first"))>> drone, are hard at work peeling you out of your machine...<br>
<br>
[<<moveTo "event_valkyrie_10" "Continue." 14400>>]
</div>/*#
#desc: second patrol: free
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<removeItem "valkyrie_cyber" true>>
<<deleteItem "valkyrie_cyber">>
<<removeItemSet "valkyrie_armor" true>>
<<deleteItemSet "valkyrie_armor">>
<<restorePhysical>>
<</if>>
<<set $player.location = "Bodyshop Surgical">>
<<initRoom>>
<<include playerMenuHypnosis>>
<<if $options.fem>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art setup.charImage("npc_ai","npc_ai_robot")>>
<<else>>
<<createAdvBGR "./images/locations/surgery.png" $scene.bodyshop_nurse_art setup.charImage("npc_bodyshop_surgeon") setup.charImage("npc_ai","npc_ai_robot")>>
<</if>>
<div id="invframe" class="scrolltext">
It takes hours to extract you from the valkyrie armour and re-grow your flesh in place of the cybernetic implants — the pile of hardware extracted growing to a startling height by the time the anaesthetic wears off and you are finally able to sit up.<br>
<br>
"@@.npc_bodyshop_nurse;Sorry we can't let you keep any of it — it's riddled with tracking devices that are going to take days to untangle, but I am sure we'll be able to put this thing to good use...@@"<br>
<br>
"@@.npc_ai_human;Oh indeed,@@" <<=setup.getNpcName("npc_ai_human","formal")>> states. "@@.npc_ai_human;Things are really starting to come together. <<if State.hasPlayed("event_betray_work_doctor_7") || State.hasPlayed("event_nintendolls_destroy_14") || State.hasPlayed("event_rival_destruction_5") || State.hasPlayed("event_landlord_retention_mission_7") || State.hasPlayed("event_guard_retention_mission_5")>><<=setup.getNpcName("npc_boss","formal")>> is <<if State.hasPlayed("event_betray_work_doctor_7") && State.hasPlayed("event_nintendolls_destroy_14") && State.hasPlayed("event_rival_destruction_5") && (State.hasPlayed("event_landlord_retention_mission_7") || State.hasPlayed("event_guard_retention_mission_5"))>>fast running out of<<else>>starting to lose<</if>> allies and it should not be long before we'll be ready to make our strike<<else>>It is just a matter of dealing with <<=ps(setup.getNpcName("npc_boss","formal"))>> allies and the path will be just about clear to take our shot at <<=setup.getNpcName("npc_boss","formal")>><</if>>.@@"<br>
<br>
"@@.npc_ai;<<uc "You may return home, Unit">> <<uc $player.first_name>><<uc ". Your belongings are in the other room. Rest, and prepare for the next stage of our plan.">>@@"<br>
<br>
[<<moveTo "event_valkyrie_11" "Collect your things and get changed." 180>>]
</div>/*#
#desc: post valkyrie change to go home
#status: RELEASED 0.9.3.0
#*/
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory=false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $scene.removeHollowPlug>>
<<wearItem $scene.hollowPlug true>>
<</if>>
<<if $scene.removeChastity>>
<<include "replaceCage_extendSissyomatic">>
<</if>>
<<if $scene.removePlug>>
<<wearItem $scene.plug true>>
<</if>>
<<if $scene.removeCollar>>
<<wearItem $scene.collar true>>
<</if>>
<</if>>
<<set $player.location = "Bodyshop Exam Room">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/bodyshop_exam.png">>
<div id="invframe" class="scrolltext">
As promised you find all of your things in the other room, <<=setup.getNpcName("npc_ai","first")>> somehow having collected them after you gave such up at the start of your training.<br>
<br>
<<if $scene.removeChastity>>
Maybe it's some fragment of lingering obedience from your valkyrie training, but you find yourself reflexively locking yourself back in chastity before you've even thought about it.<br>
<br>
<<printThought "It's better this way...<<if $player.sec_style.submission.permanent_key>> besides, I gave up my key, being out for the mission was necessary but... wrong<</if>>.">><br>
<br>
<</if>>
<<if $scene.removePlug || $scene.removeHollowPlug && !setup.getChastityLevel() != 5>>
<<if $scene.removePlug && $scene.removeHollowPlug && !setup.getChastityLevel() != 5>>
Feeling empty, you search through your things for your dual plugs and stuff them one inside back in your hungry ass where they belong, sighing with relief at the familiar fullness.
<<elseif $scene.removePlug && setup.getChastityLevel() == 5>>
Even with the <<=setup.getItemTypeName("cage")>> back where it belongs, including spreading your rear, you feel empty "back there" and eagerly stuff a second plug into your gaping hole.
<<else>>
Feeling empty, you search through your things for your plug and stuff it back in your ass where it belongs<<if $scene.removeHollowPlug || setup.checkItemTypeTag('plug', ['hollow'])>>, delighting at the familiar feeling of gapey, easy-access<</if>>.
<</if>>
<br><br>
<</if>>
<<if $scene.removeCollar>>
<<if $player.flags.collar.owner>>
You wrap your collar around your neck, the ritual feeling off doing it yourself, rather than
<<switch $player.flags.collar.owner>>
<<case "npc_admin">>
<<=setup.getNpcName("npc_admin","<<Master npc_admin>>")>>
<<case "npc_landlord">>
<<=setup.getNpcName("npc_landlord","<<Master npc_landlord>>")>>
<<case "npc_manager">>
<<=setup.getNpcName("npc_manager","formal")>>
<<case "npc_technician">>
<<=setup.getNpcName("npc_technician","formal")>>
<<case "company">>
some more senior agent of the company
<</switch>>
being there to re-claim you... but you are comforted to feel the familiar weight and reminder of your status back where it belongs.
<<else>>
Once more you wrap a collar around your neck... and are again struck by the feeling of how much better it would feel to have your owner claim you such.
<</if>>
<br><br>
<</if>>
You look at your other things and consider what to wear, shivering slightly at the thought of being back in "clothes" rather than your valkyrie augments.<br>
<br>
<<printThought "Time fora return to normalcy, I suppose... heh, how far I've come to consider my life normal...">><br>
<br>
Looking at your phone you gawk at how little time has passed since you "joined" the Valkyries — it seems surreal that you could have experienced so much in a matter of days, but time does flow differently in VR simulation. You shiver slightly at the thought at how fast such technology could be used to churn out an army. Yet another reason to bring down <<=setup.getNpcName("npc_boss","formal")>> and keep such power out of <<his npc_boss>> hands.<br>
<br>
<<if setup.checkOutsideDecency()>>
[<<moveTo "room_foyer" "Head home." 600>>]
<<else>>
[@@.link_locked;You aren't going outside dressed like this.@@] <<include "calcOutsideDecencyReason">><<hint $options _outsideDecencyReason>>
<</if>>
</div>/*#
#desc: second patrol: stay with Valkyries
#status: RELEASED 0.9.3.0
#*/
<<set $player.location to "Flying Above the City">>
<<set $gameOver = 'valkyrie_remain'>>
<<include enterroom>>
<<if setup.changedRoom()>>
<</if>>
<<initRoom>>
<<include playerMenuHypnosis>>
<<createAdvBGR "./images/locations/city_skyline.png">>
<div id="invframe" class="scrolltext">
You ignore the voice of <<=setup.getNpcName("npc_ai","first")>> in your head. Why concern yourself with such matters when you have a new duty to perform? To serve not some singular mad AI, but the people of the city.<br>
<br>
It takes some time for the base's medic to find your "old" cyber-ware, but the promise that it will not be giving you "headaches" anymore, freeing you to focus completely on your new duty. Sure, a part of you wonders why you and your sisters never do anything about the massive company that is slowly taking over the entire city, but those are concerns for the city council, your job is to protect the populace and enforce the law, and you take pride in your work as you fly over the city alongside ever-growing numbers of your fellow Valkyrie.<br>
<br>
<div style="text-align: center;"><span align="center">* * * * G A M E O V E R * * * *</span></div><br>
[<<link "Export all progress">><<set _s = setup.exportOtherAchievs()>><</link>>]<br>
<<if setup.hasAutosave()>>
[<<link "Return to before you joined the Valkyries">><<restartDay>><</link>>]
<</if>>
</div>/*#
#desc: before official work starttime in office (dummy passage)
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<initRoom>>
<<if !$scene.beforetasklocation>>
<<set $scene.beforetasklocation = []>>
<<else>>
<<set $scene.beforetasklocation.pop()>>
<</if>>
<<set $scene.beforetasklocation.push("room_office_sissy_secretary")>>/*#
#desc: morning in your office
#status: FINISHED 0.4.0.0
#*/
<<if $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn('cage')>>
<<initRoom>>
<<set $scene.dest = "room_office_sissy_secretary_work_morning_start">>
<<set $scene.code = 'no_chastity'>>
<<moveTo "debug_island">>
<<else>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<include "workdayInit">>
<<set _lockCage = false>>
<<if setup.checkItemTypeWorn("cage")>>
<<set _cage = setup.getItemFromType("cage")>>
<<set _lockCage = !$inventory[_cage].status.lock>>
<</if>>
<<if $player.flags.bimbo_work.unlock>>
<<include "inspectionData_workSlutty">>
<<set $currentTasks.manager_morning_inspection_task.condition = "">>
<<set $currentTasks.manager_morning_inspection_task.finished = false>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if !($currentTasks.hasOwnProperty('manager_first_morning_inspection_task') && !$currentTasks.manager_first_morning_inspection_task.finished)
&& (!$currentTasks.hasOwnProperty("manager_morning_inspection_task") || ($currentTasks.manager_morning_inspection_task.finished && $now.getUTCMinutes() > 0))
&& !($now.getUTCDate() == 29 && $now.getYear()==2033 && $now.getUTCMonth()==5)
&& (!$currentTasks.hasOwnProperty('event_interview') || $currentTasks.event_interview.finished)>>
<<set $scene.dest = "room_office_sissy_secretary_work_morning_start">>
<<set $scene.code = "notask_work">>
<<moveTo "debug_island">>
<<elseif $npc_manager.stage == 2 && !["event_late_work_prostitution_1_glory", "event_late_work_prostitution_1_comp", "event_manager_daily_check_stage_2"].includes($currentTasks.manager_morning_inspection_task.rewards.trigger_event) ||
$npc_manager.stage == 3 && !["event_late_work_prostitution_1_glory", "event_late_work_prostitution_1_comp", "event_manager_daily_check_stage_3"].includes($currentTasks.manager_morning_inspection_task.rewards.trigger_event) ||
$npc_manager.stage == 4 && !["event_late_work_prostitution_1_glory", "event_late_work_prostitution_1_comp", "event_manager_daily_check_stage_4"].includes($currentTasks.manager_morning_inspection_task.rewards.trigger_event)>>
<<set $scene.code = "wronginspect">>
<<set $scene.dest = "room_office_sissy_secretary_work_morning_start">>
<<moveTo "debug_island">>
<<else>>
<<if setup.checkItemTypeWorn("hollow_plug", true)>>
<<set $scene.plug = setup.getItemFromType("hollow_plug", true)>>
<<set $scene.plug = setup.getItemFromType("plug")>>
<<if $scene.plug.startsWith('sissyomatic') && $scene.plug.endsWith('_plug')>>
<<set $scene.code = "plugomatic">>
<<set $scene.dest = "room_office_sissy_secretary_work_morning_start">>
<<moveTo "debug_island">>
<</if>>
<</if>>
<</if>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $player.work.sendhome>>
You stand at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> Office. You've been sent home for the day and it seems like your account has been locked. You cannot access your computer.<br>
<br>
[<<moveTo "company_lobby" "Leave the office." 120>>]
<<else>>
You sit at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> Office. How will you work this morning?<br>
<br>
<<include thoughts_work>>
[<<link "Check work related data">> <<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">> <</link>>]<br>
<<if State.hasPlayed("event_secretary_style_structure_1") || $npc_manager.stage > 2>>
[<<moveTo "room_employee_tracking" "Employee Portal." 0 "<<set $scene.returnFromEmployee='room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>
<<set $scene.workChairReturn = passage()>>
<<if false>><<moveTo "event_work_chair_malfunction_1">><</if>>
<<printWorkChairOptions>>
<<if $scene.bimboPassed && $player.flags.bimbo_work.unlock>>
[@@.link_locked;Sluttily dressed as you are, you have no choice but to spend your day working so-called "bimbo".@@]<br>
<<else>>
<<if (Math.round($player.timebased.fatigue) <= ($player.timebased.fatiguemax/4)) && !setup.calcErection(true)>>
<<if $tempEffects.hasOwnProperty('sissypill_mk1_od') && $tempEffects.sissypill_mk1_od ||
$tempEffects.hasOwnProperty('sissypill_mk2_od') && $tempEffects.sissypill_mk2_od>>
[@@.link_locked;The heavy load of drugs coursing through your system makes it impossible to focus enough to work hard.@@]<br>
<<elseif $tempEffects.hasOwnProperty('hangover') && $tempEffects.hangover>>
[@@.link_locked;Your hangover has you unable to concentrate enough to work hard.@@]<br>
<<elseif $tempEffects.hasOwnProperty('sissy_pill_mk1_withdrawal') && $tempEffects.sissy_pill_mk1_withdrawal>>
[@@.link_locked;The withdrawal effects from the wonderful pink pills has you too distracted and desperate to work hard.@@]<br>
<<elseif $tempEffects.hasOwnProperty('hangover') && $tempEffects.hangover>>
[@@.link_locked;Your hangover has you unable to concentrate enough to work hard.@@]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Work hard." 1 "<<set $player.timebased.fatiguemulti = 1.25>><<set $player.timebased.stressmulti = 0.75>><<set $player.work.style = 'hard'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>><<set $scene.bimboShift=false>>">>]<br>
<</if>>
<<else>>
<<if (Math.round($player.timebased.fatigue) > ($player.timebased.fatiguemax/4))>>
[@@.link_locked;You're too exhausted to work hard.@@]<br>
<<elseif (Math.round($player.timebased.fatigue) <= ($player.timebased.fatiguemax/4)) && setup.calcErection(true)>>
[@@.link_locked;You're too horny to concentrate enough for this kind of work.@@]<br>
<<else>>
[@@.link_locked;Your head is too clouded with strange thoughts to concentrate.@@]<br>
<</if>>
<</if>>
<<if (Math.round($player.timebased.fatigue) < ($player.timebased.fatiguemax/2)) && !setup.calcErection(true)>>
<<if $tempEffects.hasOwnProperty('sissy_pill_mk1_withdrawal') && $tempEffects.sissy_pill_mk1_withdrawal>>
[@@.link_locked;The withdrawal effects from the wonderful pink pills has you too distracted and desperate to focus on your work.@@]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Work normal." 1 "<<set $player.timebased.fatiguemulti = 1>><<set $player.timebased.stressmulti = 0.5>><<set $player.work.style = 'normal'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>><<set $scene.bimboShift=false>>">>]<br>
<</if>>
<<else>>
<<if (Math.round($player.timebased.fatigue) > ($player.timebased.fatiguemax/2))>>
[@@.link_locked;You're too exhausted to work normal@@]<br>
<<elseif (Math.round($player.timebased.fatigue) <= ($player.timebased.fatiguemax/2)) && setup.calcErection(true)>>
[@@.link_locked;You're too horny to work normal.@@]<br>
<<else>>
[@@.link_locked;You don't think you can work normally today.@@]<br>
<</if>>
<</if>>
[<<moveTo "room_office_sissy_secretary_work_morning_work" "Work sloppy." 1 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'sloppy'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>><<set $scene.bimboShift=false>>">>]<br>
<</if>>
<<if $player.flags.bimbo_work.unlock>>
<<if $now.getUTCHours() >= $player.work.time_morning.hour-1 && !$scene.bimboPassed>>
[@@.link_locked;There is insufficient time to work bimbo this morning.@@]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_bimbo" "Work bimbo." 1 "<<set $player.timebased.fatiguemulti = 0.5>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'bimbo'>><<set $player.work.nowWorking = true>><<set $player.work.startTime = $now>><<set $scene.workEventCount=0>><<set $scene.bimboShift=true>>">>]<br>
<</if>>
<</if>>
<</if>>
<<if !$player.work.sendhome && ($currentTasks.hasOwnProperty('manager_morning_inspection_task') && setup.daysToDate($now,setup.getTaskDueDate('manager_morning_inspection_task')) != 0 || $now.getUTCHours() >= 8) && $now.getUTCHours() != 11>>
<<include "workMasturbationOptions">>
<<if State.hasPlayed("event_primrose_redemption_1_correct_footage") && !State.hasPlayed("event_primrose_redemption_2_lab_infiltrate_4")>>
[<<moveTo "event_primrose_redemption_2_lab_infiltrate_1" 'You are ready to infiltrate <<=ps(setup.getNpcName("npc_primrose", "formal"))>> lab.' 300 "<<set $scene.workEventReturn = 'room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_destroy_ai_5")>>
[@@.link_locked;You run "missions" for <<=setup.getNpcName("npc_boss", "formal")>> now, your time assisting <<=setup.getNpcName("npc_ai", "first")>> is no more.@@]<br>
<<elseif $npc_ai.stage >= 2 && $now.getUTCDay() == 5 && !$npc_ai.flags.missions.connection && $npc_manager.stage >= 3>>
<<if $scene.ranMission>>
<<if "data_plug" == setup.getItemFromType("plug") && !$npc_ai.flags.missions.connection>>
[@@.link_locked;The massive, heavy plug <<=setup.getNpcName("npc_ai", "first")>> filling your ass is all the mission you can handle for today.@@]<br>
<<elseif setup.checkItemOwned("data_plug") && !$npc_ai.flags.missions.connection>>
[@@.link_locked;You may have temporarily removed <<=ps(setup.getNpcName("npc_ai", "first"))>> massive plug for some temporary relief, but that doesn't mean the mission is over...@@]<br>
<<else>>
[@@.link_locked;You already attempted to run a mission for <<=setup.getNpcName("npc_ai", "first")>> today, she does not appear to have anything else for you.@@]<br>
<</if>>
<<elseif $npc_manager.stage == 5 && !State.hasPlayed("event_ai_stage5_infiltrate_14")>>
[@@.link_locked;Until <<=setup.getNpcName("npc_ai", "first")>> has access to the corporate systems again, you cannot run missions for her.@@]<br>
<<else>>
[<<moveTo "event_ai_mission_voluntary" 'Hmm, there is a blinking icon, it looks like <<=setup.getNpcName("npc_ai", "first")>> has a mission for you.' 60 "<<set $scene.workEventReturn = 'room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>
<<elseif $npc_ai.flags.missions.generic_missions > 2 || $npc_ai.flags.missions.connection>>
<<if $scene.ranMission>>
<<if "data_plug" == setup.getItemFromType("plug") && !$npc_ai.flags.missions.connection>>
[@@.link_locked;The massive, heavy plug <<=setup.getNpcName("npc_ai", "first")>> filling your ass is all the mission you can handle for today.@@]<br>
<<else>>
[@@.link_locked;You already ran a mission for <<=setup.getNpcName("npc_ai", "first")>> today, she does not appear to have anything else for you.@@]<br>
<</if>>
<<elseif $npc_manager.stage == 5 && !State.hasPlayed("event_ai_stage5_infiltrate_14")>>
[@@.link_locked;Until <<=setup.getNpcName("npc_ai", "first")>> has access to the corporate systems again, you cannot run missions for her.@@]<br>
<<else>>
[<<moveTo "event_ai_mission_voluntary" 'Check if <<=setup.getNpcName("npc_ai", "first")>> has a mission for you.' 60 "<<set $scene.workEventReturn = 'room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>
<</if>>
<<if $npc_barista.flags.video.unlocked && $npc_barista.flags.video.viewed>>
[<<moveTo "event_barista_bathroom_message_3" 'Re-watch the video <<=setup.getNpcName("npc_barista", "nickname")>> cryptically gave you.' 60 "<<set $scene.workEventReturn='room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_primrose_footage_intro")>>
[<<moveTo "event_primrose_footage_root" 'Check out <<=setup.getNpcName("npc_primrose", "formal")>> footage.' 60 "<<set $scene.workEventReturn='room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>
<<if State.hasPlayed("event_janitor_elevator_2_3")>>
<<if $scene.janitorService || $scene.janitorServiceFail>>
[@@.link_locked;You already <<if $scene.janitorServiceFail>>attempted to have<<else>>had<</if>> <<=setup.getNpcName("npc_janitor","first")>> serve you in person today.@@]<br>
<<elseif setup.hasFreeTime($now, $player, $currentTasks, 4100)>>
<<if State.hasPlayed("event_janitor_training_service_1")>>
[<<moveTo "event_janitor_training_service_1" 'Summon <<=setup.getNpcName("npc_janitor","first")>> to service you while you work.' 300 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'hard'>><<set $player.work.nowWorking = true>><<set $scene.workEventReturn='room_office_sissy_secretary_work_morning_start'>><<set $scene.first=false>>">>]<br>
<<else>>
[<<moveTo "event_janitor_training_service_1" 'Summon <<=setup.getNpcName("npc_janitor","first")>> for a lesson while you work.' 300 "<<set $player.timebased.fatiguemulti = 0.75>><<set $player.timebased.stressmulti = 0.25>><<set $player.work.style = 'hard'>><<set $player.work.nowWorking = true>><<set $scene.workEventReturn='room_office_sissy_secretary_work_morning_start'>><<set $scene.first=false>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_janitor_training_service_notime" 'Summon <<=setup.getNpcName("npc_janitor","first")>> for a lesson while you work.' 60 "<<set $scene.janitorReturn=passage()>>">>]
<</if>>
<</if>>
<<if $npc_janitor.flags.subTrainingUnlock && !State.hasPlayed("event_janitor_training_submission_1_intro_1")>>
[<<moveTo "event_janitor_training_submission_1_intro_1" 'Message <<=setup.getNpcName("npc_harassment_assist","first")>> if they could help with <<=setup.getNpcName("npc_janitor","first")>>.' 60 "<<set $scene.workEventReturn='room_office_sissy_secretary_work_morning_start'>>">>]<br>
<</if>>
<</if>>
</div><<if State.hasPlayed("event_work_stage4_chair_1")>>
<<set _bossPenisCount = 0>>
<<set _dogPenisCount = 0>>
<<set _horsePenisCount = 0>>
<<set _rivalPenisCount = 0>>
<<set $player.work.chair.penisCount = 0>>
<<switch $player.work.chair.gag>>
<<case 1>>
<<set $player.work.chair.oral = 5>>
<<case 2>>
<<set $player.work.chair.oral = setup.getTotalValue("oral")>>
<<set $player.work.chair.penisCount += 1>>
<<case 3>>
<<set $player.work.chair.oral = 10>>
<<set $player.work.chair.penisCount += 1>>
<<case 4>>
<<set $player.work.chair.oral = 14>>
<<set $player.work.chair.penisCount += 1>>
<<set _dogPenisCount += 1>>
<<case 5>>
<<set $player.work.chair.oral = 18>>
<<set $player.work.chair.penisCount += 1>>
<<set _horsePenisCount += 1>>
<<case 6>>
<<set $player.work.chair.oral = $npc_boss.penis_size>>
<<set $player.work.chair.penisCount += 1>>
<<set _bossPenisCount += 1>>
<<case 7>>
<<set $player.work.chair.oral = $npc_rival.penis_size>>
<<set $player.work.chair.penisCount += 1>>
<<set _rivalPenisCount += 1>>
<</switch>>
<<if $player.work.chair.front > 0>>
<<set $player.work.chair.penisCount += 1>>
<<switch $player.work.chair.front>>
<<case 3>>
<<set _dogPenisCount += 1>>
<<case 4>>
<<set _horsePenisCount += 1>>
<<case 5>>
<<set _bossPenisCount += 1>>
<<case 5>>
<<set _rivalPenisCount += 1>>
<</switch>>
<</if>>
<<if $player.work.chair.plug > 0>>
<<set $player.work.chair.penisCount += 1>>
<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>
<<set $scene.chair_plug = setup.getItemFromType("plug")>>
<<removeItem $scene.chair_plug true>>
<</if>>
<</if>>
<<switch $player.work.chair.plug>>
<<case 1>>
<<set $player.work.chair.anal = 5>>
<<case 2>>
<<set $player.work.chair.anal = setup.getTotalValue("anal")>>
<<case 3>>
<<set $player.work.chair.anal = 14>>
<<set _dogPenisCount += 1>>
<<case 4>>
<<set $player.work.chair.anal = 18>>
<<set _horsePenisCount += 1>>
<<case 5>>
<<set $player.work.chair.anal = $npc_boss.penis_size>>
<<set _bossPenisCount += 1>>
<<case 5>>
<<set $player.work.chair.anal = $npc_rival.penis_size>>
<<set _rivalPenisCount += 1>>
<</switch>>
<<if _bossPenisCount > $npc_boss.flags.worked_max_cock>>
<<set $npc_boss.flags.worked_max_cock = _bossPenisCount>>
<</if>>
<<if $player.body_ref.vagina>>
<<set _holes = 3>>
<<else>>
<<set _holes = 2>>
<</if>>
<<if _bossPenisCount == _holes>>
<<set $player.flags.work_chair.boss = true>>
<<if State.hasPlayed("event_blowjob_challenge_reward_3") && !State.hasPlayed("event_boss_hole_train_1")>>
<<addEvent 'boss_hole_train'>>
<</if>>
<</if>>
<<set $scene.bossDildos = _bossPenisCount>>
<<if _dogPenisCount == _holes>>
<<set $player.flags.work_chair.dog = true>>
<</if>>
<<if _horsePenisCount == _holes>>
<<set $player.flags.work_chair.horse = true>>
<</if>>
<<if $player.work.chair.penisCount == _holes && $player.work.chair.bondage>>
<<set $player.flags.work_chair.focus = true>>
<<include "addTypingEvent">>
<<if !State.hasPlayed("event_destroy_technician_6")>>
<<if $npc_technician.relationship.relationship_stage >= 2 && $now.getUTCDay() != 5 && (!$npc_technician.flags.lastUpperVisit || setup.daysToDate($npc_technician.flags.lastUpperVisit, $now) > 6)>>
<<addWorkEvent 'technician_upper_visit'>>
<<elseif $workEvents.hasOwnProperty('technician_upper_visit')>>
<<removeWorkEvent 'technician_upper_visit'>>
<</if>>
<</if>>
<</if>>
<</if>><<if State.hasPlayed("event_work_stage4_chair_1")>>
<<if $player.work.chair.bondage>>
<<if $player.work.chair.gag == 0>>
<<applyExperience 'bondage' 15 'very' $ALONE>>
<<else>>
<<applyExperience 'bondage' 18 'very' $ALONE>>
<</if>>
<</if>>
<<if $player.work.chair.oral > 10>>
<<applyExperience 'oral' $player.work.chair.oral 'very' $ALONE>>
<<elseif $player.work.chair.oral <= 5>>
<<applyExperience 'oral' $player.work.chair.oral 'little' $ALONE>>
<<else>>
<<applyExperience 'oral' $player.work.chair.oral 'normal' $ALONE>>
<</if>>
<<switch $player.work.chair.front>>
<<case 3 "3">>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 3 'normal' $ALONE>>
<</if>>
<<case 4 "4">>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 7 'normal' $ALONE>>
<</if>>
<</switch>>
<<if $player.work.chair.front > 0>>
<<changeHorny 10>>
<</if>>
<<if $player.work.chair.anal > 10>>
<<applyExperience 'anal' $player.work.chair.anal 'very' $ALONE>>
<<elseif $player.work.chair.anal <= 5>>
<<applyExperience 'anal' $player.work.chair.anal 'little' $ALONE>>
<<else>>
<<applyExperience 'anal' $player.work.chair.anal 'normal' $ALONE>>
<</if>>
<<switch $player.work.chair.plug>>
<<case 3 "3">>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 3 'normal' $ALONE>>
<</if>>
<<case 4 "4">>
<<if $fetish.bestiality_hard>>
<<applyExperience 'bestiality' 7 'normal' $ALONE>>
<</if>>
<</switch>>
<<if $player.work.chair.plug > 0>>
<<changeHorny 10>>
<</if>>
<<switch $player.work.chair.penisCount>>
<<case 1 "1">>
<<applyExperience 'penis' 5 'little' $ALONE>>
<<case 2 "2">>
<<if $player.body_ref.vagina>>
<<applyExperience 'penis' 10 'normal' $ALONE>>
<<else>>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'very' $ALONE>>
<</if>>
<<case 3 "3">>
<<set _penis = setup.getTotalValue("penis")>>
<<applyExperience 'penis' _penis 'very' $ALONE>>
<</switch>>
<</if>><<if State.hasPlayed("event_work_stage4_chair_1")>>
<<if $player.work.chair.bondage>>
You sit down and let the chair secure you in its binds. A seven point harness, wrist cuffs, and additional straps for your legs soon have you tightly secured in your seat.
<</if>>
<<switch $player.work.chair.gag>>
<<case 0>>
You have decided to forgo a gag for today.
<<case 1>>
You wrap your lips around a large ball gag that pulls your head back into the chair.
<<case 2>>
You wrap your lips around a pecker gag, once the straps tighten the gag changes shape, curving down your throat as it grows, stopping just short of causing you to gag as it pushes your limits.
<<case 3>>
You stuff the inflatable gag into your mouth and feel it swell large, the straps holding it tight as your cheeks bulge and any sound you might make is completely stifled.
<<case 4>>
Your cheeks are swelled and your throat stretched by a large canine cock.
<<case 5>>
Your throat is stretched by a massive equine phallus.
<<case 6>>
You wrap your lips around <<if $npc_boss.flags.hasBlown>>a clone<<else>>what purports to be a facsimile<</if>> of <<=ps(setup.getNpcName("npc_boss","formal"))>> cock. The straps tighten in place to force it
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
all the way down your throat.
<<else>>
into your throat.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
as far down as you can handle.
<<else>>
back towards your throat.
<</if>>
<</if>>
<<case 7>>
You wrap your lips around a clone of <<=ps(setup.getNpcName("npc_rival","formal"))>> cock. The straps tighten in place to force it
<<if setup.getTotalValue("oral") > 10>>
<<if setup.getTotalValue("oral") > 15>>
all the way down your throat.
<<else>>
into your throat.
<</if>>
<<else>>
<<if setup.getTotalValue("oral") > 5>>
as far down as you can handle.
<<else>>
back towards your throat.
<</if>>
<</if>>
<<default>>
ERROR: unexpected player.work.chair.gag <<=$player.work.chair.gag>>
<</switch>>
<br><br>
<<if $player.work.chair.front == 0 && $player.work.chair.plug == 0>>
You have forgone any lower insert and so merely settle back and prepare to work.
<<else>>
<<if setup.getChastityLevel() == 5>>
Your advanced company-provided chastity device parts to allow the chair to work its magic.
<<elseif setup.checkItemTypeWorn("plug") && $player.work.chair.plug != 0>>
The chair gently removes your <<=setup.getItemTypeName('plug')>> in preparation for it "taking over."
<</if>>
<<if $player.work.chair.plug == $player.work.chair.front>>
<<switch $player.work.chair.front>>
<<case 1>>
You have selected a pair of average sized dildos and bite your lip as they thrust up into you, each buzzing once to finish "seating" inside of you.
<<case 2>>
You have selected a pair of large dildos, moaning as they thrust deep, filling you good.
<<case 3>>
You have selected a pair of canine cocks and you gasp as the dual knots swells inside you, making you feel like a true bitch in heat in service to her pack.
<<case 4>>
You have selected a pair of large, equine cocks and you moan as they thrust up into you, filling you deep.
<<case 5>>
You have selected a pair of clones of <<=ps(setup.getNpcName("npc_boss","formal"))>> cock and they slide up into you. Double-fucked by your CEO, you find yourself reflexively moaning with lust, spurred to greater corporate efficiency.
<<case 6>>
You have selected a pair of clones of <<=ps(setup.getNpcName("npc_rival","formal"))>> cock and they slide up into you. Double-fucked by your one-time manager, you find yourself yearning for something more...
<<default>>
ERROR: unexpected player.work.chair.front <<=$player.work.chair.front>>
<</switch>>
<<else>>
<<if $player.body_ref.vagina && (setup.getChastityLevel() == 5 || setup.getChastityLevel() == 4 && $npc_manager.flags.took_adv_key)>>
<<switch $player.work.chair.front>>
<<case 0>>
You have chosen to forgo a chair-enhanced front occupant.
<<case 1>>
You have selected an average sized dildo and bite your lip as it glides into your cunt, buzzing once to finish "seating" itself.
<<case 2>>
You have selected a large dildo for your cunt and moan as it fills you up good.
<<case 3>>
You have selected a canine cock for your cunt and gasp as the knot swells inside you, making you feel like a true bitch in heat.
<<case 4>>
You have selected a large, equine cock for your cunt and moan as it thrusts up into you.
<<case 5>>
You have selected a clone of <<=ps(setup.getNpcName("npc_boss","formal"))>> cock. <<if $npc_boss.flags.hasVaginal>>You moan, it feels tantalisingly similar to the real thing.<<else>>You moan, it is large and you wonder how the real thing would feel...<</if>>
<<case 6>>
You have selected a clone of <<=ps(setup.getNpcName("npc_rival","formal"))>> cock to slide into your ass. You moan, its moderate size making you hungry for more...
<<default>>
ERROR: unexpected player.work.chair.front <<=$player.work.chair.front>>
<</switch>>
<br><br>
<</if>>
<<switch $player.work.chair.plug>>
<<case 0>>
You have forgone a chair-powered rear occupant for the day in lieu of leaving your <<=setup.getItemTypeName('plug')>> in place.
<<case 1>>
You have selected an average sized dildo and bite your lip as it glides into your rear, buzzing once to finish "seating" itself.
<<case 2>>
You have selected a large dildo for your rear and moan as it fills you up good.
<<case 3>>
You have selected a canine cock for your rear and gasp as the knot swells in your ass.
<<case 4>>
You have selected a large, equine cock for your ass and moan as it thrusts up into you, feeling your insides rearrange slightly to accommodate its length.
<<case 5>>
You have selected a clone of <<=ps(setup.getNpcName("npc_boss","formal"))>> cock to slide into your ass. <<if $npc_boss.flags.hasAnal>>You moan, it feels tantalisingly similar to the real thing.<<else>>You moan, it is large and you wonder how the real thing would feel...<</if>>
<<case 6>>
You have selected a clone of <<=ps(setup.getNpcName("npc_rival","formal"))>> cock to slide into your ass. You moan, its moderate size making you hungry for more...
<<default>>
ERROR: unexpected player.work.chair.plug <<=$player.work.chair.plug>>
<</switch>>
<</if>>
<br><br>
<</if>>
<</if>><<if State.hasPlayed("event_work_stage4_chair_1")>>
<<if $player.work.chair.bondage && $player.work.chair.gag > 0 && $player.work.chair.plug > 0 && ($player.work.chair.front > 0 && $player.body_ref.vagina)>>
Your restraints release. You take a moment to work your jaw and slowly rise off the chair <<if !setup.checkItemTypeWorn("plug")>>and feel empty as you rise up<<else>>with your "normal" occupants<</if>>.
<<elseif $player.work.chair.bondage && $player.work.chair.gag == 0 && $player.work.chair.plug == 0 && $player.work.chair.front == 0>>
You rise from your chair to attend to this interruption.
<<else>>
Your restraints automatically release and you rise to attend to this interruption<<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow']) && $player.work.chair.plug != 0>>, gasping as your plug is re-inserted<</if>>.
<</if>>
<br><br>
<</if>>/*#
#desc: morning work as secretary
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if $npc_manager.flags.require_chastity && !setup.checkItemTypeWorn('cage')>>
<<initRoom>>
<<set $scene.dest = "room_office_sissy_secretary_work_morning_work">>
<<set $scene.code = 'no_chastity'>>
<<moveTo "debug_island">>
<<elseif setup.changedRoom()>>
<<if State.hasPlayed("event_work_stage4_chair_1") && (setup.calcErection(true) || _lockCage) && !$player.work.sendhome && $player.work.style != 'bimbo' && ($now.getUTCDay() == 5 && $now.getUTCHours() < ($player.work.time_friday.hour - 1) || $now.getUTCDay() != 5 && $now.getUTCHours() < ($player.work.time_morning.hour - 1))>>
<<set $scene.retPassage = "room_office_sissy_secretary_work_morning_work">>
<<initRoom>>
<<moveTo "event_work_chair_horny_rectify">>
<<else>>
<<include "workChairCalc">>
<<if $player.makeup.template != "ruined">>
<<if $scene.morningWorkEvent>>
<<set $workEvent = $scene.morningWorkEvent>>
<</if>>
<<if ($workEvent == null || !$workEvent.triggered) && !$events.hasOwnProperty("heels_training_followup")>>
<<set $workEvent = setup.checkWorkEvents($player, $now, $scene.workEventCount)>>
<</if>>
<<if !$workEvent || !$workEvent.triggered>>
<<include "workChairStartXp">>
<</if>>
<</if>>
<<set $scene.workEventReturn = "room_office_sissy_secretary_work_morning_work">>
<<if $workEvent && $workEvent.triggered && !$workEvent.timeAdd>>
<<set $workEvent.timeAdd = true>>
<<set $now = setup.advanceNextDate($player, $now, 0, $workEvent.rndH, $workEvent.rndM)>>
<<elseif !$workEvent || !$workEvent.timeAdd>>
<<set $workEvent = { "timeAdd" : true}>>
<<if setup.getUTCDay($now) != 5>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_morning.hour, $player.work.time_morning.minutes)>>
<<else>>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_friday.hour, $player.work.time_friday.minutes)>>
<</if>>
<<set $player.timebased.fatiguemulti = 1>>
<<set $player.timebased.stressmulti = 0>>
<</if>>
<</if>>
<</if>>
<<if $scene.advanceWorkTime>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
<<include "workChairStart">>
<<=$player.work.workMessage>>
[<<link "Performance Breakdown">><<openDialog "Secretary Tracking Database" "room_office_sissy_secretary_work_performance">> <</link>>]<br>
<br>
<<include thoughts_work>>
<<if $workEvent && $workEvent.triggered>>
Your work gets interrupted after a while.<br>
<br>
<<include "workChairUnlock">>
[<<moveTo $workEvent.szene "Continue." 0 "<<if State.hasPlayed('event_work_stage4_chair_1') && $scene.chair_plug && $player.work.chair.plug != 0>><<wearItem $scene.chair_plug true>><</if>>">>]
<<else>>
<<if setup.getUTCDay($now) != 5>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Continue." 60 "<<if State.hasPlayed('event_work_stage4_chair_1') && $scene.chair_plug && $player.work.chair.plug != 0>><<wearItem $scene.chair_plug true>><</if>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Continue." 60 "<<if State.hasPlayed('event_work_stage4_chair_1') && $scene.chair_plug && $player.work.chair.plug != 0>><<wearItem $scene.chair_plug true>><</if>>">>]
<</if>>
<</if>>
</div><<set $player.work.nowWorking = false>>
<<if $scene.hasOwnProperty('hornybackup')>>
<<set $player.timebased.hornymulti = $scene.hornybackup>>
<<deleteMember $scene 'hornybackup'>>
<</if>>/*#
#desc: secretary lunchbreak
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.fromDayskip = false>>
<<include "endPartialShift">>
<<set $player.inside = true>>
<<set $player.cutscene.lockinventory = true>>
<<set $player.cutscene.reason = "Not now!">>
<<useClothSetPush 'lunch'>>
<</if>>
<<if (getUTCHours($now)==12 and getUTCMinutes($now) >= 30) or (getUTCHours($now)>12)>>
<<initRoom>>
<<moveTo "room_office_sissy_secretary_work_afternoon_start">>
<</if>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.timebased.fatiguemulti = 1>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You sit at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> Office. It is currently your lunch break.<br>
<br>
<<if !$scene.foodDelivery.done && $player.work.foodID != "">>
<<if !setup.checkItemTagCarried("lunch")>>
<<=setup.getNpcName('npc_manager', 'formal')>> has contacted you via instant messenger. She wants you to fetch her <<getFood>>.
<<else>>
You've managed to get some food from the canteen.
<</if>>
<br>
<<if $npc_manager.flags.evil == 1 && State.hasPlayed("event_manager_stage5_afternoon_4_fail")>>
<<if ["forced","strict"].includes(setup.getAverageSecStyle())>>
<<hint $options "Based on your prior behaviour, screwing up her lunch would best spark her memory.">><br>
<<elseif ["voluntary","enthusiast"].includes(setup.getAverageSecStyle())>>
<<hint $options "Based on your prior behaviour, you should correctly bring her lunch... and maybe something extra?">><br>
<<elseif "obedient" == setup.getAverageSecStyle()>>
<<hint $options "Based on your prior behaviour, you should correctly bring her lunch and then show your service.">><br>
<<elseif "money" == setup.getAverageSecStyle()>>
<<hint $options "Based on your prior behaviour, you should fetch her lunch precisely to order and get straight back to work.">><br>
<<else>>
<<hint $options "Based on your prior behaviour, you should correctly bring her lunch precisely as instructed.">><br>
<</if>>
<</if>>
<<if $npc_manager.stage != 5 || $npc_manager.flags.evil >= 2>>
<<if !setup.checkItemTagCarried("lunch") && !$scene.first_makeup && $npc_manager.stage > 1>>
<<if setup.getTotalValue("smart") > 10>>
<<printThought "Lunch delivery is so trivial, might as well just grab <<=ps(setup.getNpcName('npc_manager', 'formal'))>> food and get back to my desk...">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_shortcircuit" "Deliver food and return to your desk." 300 "<<deleteMember $scene 'event'>>">>]
<<elseif setup.getTotalValue("smart") > 5>>
<<printThought "There isn't much interesting to do during lunch... I hope I can, like, remember <<=ps(setup.getNpcName('npc_manager', 'formal'))>> order...">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_shortcircuit" "Deliver food and return to your desk." 300 "<<deleteMember $scene 'event'>>">>]
<<else>>
<<printThought "Delivering food is, like, boring, I hope I can, um, remember what <<=ps(setup.getNpcName('npc_manager', 'formal'))>> ordered?">><br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_shortcircuit" "Deliver food and return to your desk." 300 "<<deleteMember $scene 'event'>>">>]
<</if>>
<<if $npc_cook.flags.porn.handjob_attempted>>
<br>
<<if setup.checkItemTagCarried("lunch")>>
[@@.link_locked;You need to deliver the food you have, not text <<=setup.getNpcName("npc_cook","first")>> for more.@@]
<<else>>
[<<moveTo "event_lunchbreak_cook_delivery_1" 'Text <<=setup.getNpcName("npc_cook","first")>> <<=ps(setup.getNpcName("npc_manager","formal"))>> lunch order.' 180 "<<deleteMember $scene 'event'>><<set $scene.foodDelivery.cookDelivery = true>>">>]
<</if>>
<</if>>
<</if>>
<<if $npc_manager.flags.uniform_upgrade.lunch_heel_training > 0 && !$npc_manager.flags.uniform_upgrade.lunch_heel_training_complete && !setup.checkItemTagCarried("lunch") && $npc_manager.flags.evil != 1>>
<br><br>
You glance down at the ominously towering pink ankle boots under your desk and you consider how <<=setup.getNpcName('npc_manager', 'formal')>> would react to you delivering her lunch while wearing them.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood_special" 'Fetch her lunch then put on the shoes for a "special" delivery.' 120 "<<addItem $player.work.foodID>>">>]
<</if>>
<</if>>
<br><br>
<<elseif ($npc_manager.stage > 2 || ($npc_manager.stage == 2 && $npc_manager.stagevalues[2].makeup && !$scene.first_makeup)) && ($player.makeup.template != "" && $player.makeup.messed > 25)>>
<<printThought "My makeup could use some touch-up...">><br>
<br>
<</if>>
<<if $scene.foodDelivery.done && $scene.forceLunchBathroom>>
You're about to sit at your desk when you notice that you somehow got a smudge on one of your hands, best to head to the bathroom and wash up before you make a mess of anything else.<br>
<br>
[<<moveTo "event_lunch_bathroom_forced" "Men's Bathroom." 60 "<<set $scene.maleBathroom=true>>">>]
<<if $player.sec_style.clothing.unisex != "">>
[<<moveTo "event_lunch_bathroom_forced" "Women's Bathroom." 60 "<<set $scene.maleBathroom=false>>">>]
<</if>>
<<else>>
<<include "thoughts_work">>
<<include "lunchOptions">>
<</if>>
</div>[<<link "Check work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if State.hasPlayed("event_secretary_style_structure_1") || $npc_manager.stage > 2>>
[<<moveTo "room_employee_tracking" "Employee Portal." 0 "<<set $scene.returnFromEmployee='room_office_sissy_secretary_work_lunchbreak'>>">>]<br>
<</if>>
<br>
<<include "workMasturbationOptions">>
<<if setup.checkItemTagCarried("lunch") && setup.checkItemInInventory($player.work.foodID)>>
<<if $npc_manager.flags.uniform_upgrade.lunch_heel_training > 0 && !$npc_manager.flags.uniform_upgrade.lunch_heel_training_complete>>
You glance down at the ominously towering pink ankle boots under your desk and you consider how <<=setup.getNpcName('npc_manager', 'formal')>> would react to you delivering her lunch while wearing them.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood_special" 'Put on the shoes for a "special" delivery.' 120>>]<br>
<</if>>
<<elseif $npc_manager.flags.unlocked_lunch_play>>
<<if setup.calcErection(true)>>
<<if $scene.do_not_bother_manager>>
[@@.link_locked;Hmm, probably best not to bother her again.@@]
<<else>>
[<<moveTo "event_work_lunch_assistance_1" 'Ask <<=setup.getNpcName("npc_manager","formal")>> for assistance in dealing with your arousal.' 180>>]
<</if>>
<<else>>
[@@.link_locked;You are not presently horny enough to need assistance, best not to bother her.@@]
<</if>>
<br>
<</if>>
<<if setup.checkItemTagCarried("lunch")>>
<<if $npc_manager.stage == 5 && $npc_manager.flags.evil == 1>>
[<<moveTo "event_manager_stage5_lunch_1" 'Deliver lunch to <<=setup.getNpcName("npc_manager", "formal")>>.' 180>>]<br>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak_deliverfood" 'Deliver lunch to <<=setup.getNpcName("npc_manager", "formal")>>.' 180>>]<br>
<</if>>
<</if>>
<<if setup.getItemFromType("corset")>>
<<if $player.timebased.tightlacing < 100>>
<<if $scene.attemptedTightlacing>>
[@@.link_locked;You have already attempted to re-lace your corset.@@]<br>
<<else>>
[<<moveTo "event_work_lunch_corset" "Re-tighten your corset." 180 "<<set $scene.attemptedTightlacing=true>>">>]<br>
<</if>>
<<elseif $player.flags.uniform_upgrade.autoLacing>>
[@@.link_locked;Thanks to the auto-laces you never need to worry about re-tightening your corset.@@]<br>
<</if>>
<</if>>
<<set $scene.eatEvent = false>>
<<if !$scene.ate_lunch>>
<<if $player.flags.mealplan.base == "boiless">>
<<if !$npc_manager.flags.caught_drinking_boiless && $player.flags.mealplan.boiless_supply < 22 && $player.sec_style.body.boiless != "strict">>
<<set $scene.eatEvent = true>>
[<<moveTo "event_manager_boiless_1" "Drink your lunch." 300 "<<set $scene.ate_lunch = true>>">>]<br>
<<elseif $player.sec_style.body.boiless == "strict" && $player.sec_style.body.hormones == "">>
<<set $scene.eatEvent = true>>
[<<moveTo "event_manager_boiless_1" "Drink your lunch." 300 "<<set $scene.ate_lunch = true>>">>]<br>
<<else>>
[<<moveTo "event_lunch_eat" "Drink your lunch." 300 "<<set $scene.ate_lunch = true>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_lunch_eat" "Eat your lunch." 300 "<<set $scene.ate_lunch = true>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;You already had lunch.@@]<br>
<</if>>
<<if $scene.eatEvent>>
[<<moveTo "event_manager_boiless_1" "Finish your lunch and nap until the break ends." 300 "<<set $scene.ate_lunch=true>>">>]<br>
[<<moveTo "event_manager_boiless_1" "Finish your lunch and start work early." 300 "<<set $scene.ate_lunch=true>>">>]<br>
<<else>>
<<if (getUTCHours($now)==12 && getUTCMinutes($now) <= 30 || $now.getUTCHours() < 12) && $scene.foodDelivery.done && $npc_manager.stage >= 3 && !$npc_manager.flags.uniform_upgrade.lunch_heel_training_complete>>
[<<moveTo "event_lunch_heels_training_1_alt" "Take a powernap until the break ends." 1 "<<applyStress -3>>">>]<br>
<<else>>
[<<link "Take a powernap until the break ends.">>
<<set $roomchange = true>>
<<set $now to setup.powerNap($player, $now)>>
<<applyStress -3>>
<<applyFatigue -15>>
<<goto "room_office_sissy_secretary_work_afternoon_start">>
<</link>>]<br>
<</if>>
<<set _lunchEnd = setup.setNextDate($now, 0, $player.work.time_midday.hour, $player.work.time_midday.minutes)>>
<<set _tmpSeconds = setup.secondsToDate($now,_lunchEnd)>>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start work." _tmpSeconds "<<set $player.work.nowWorking=true>>">>]<br>
<</if>>
<br>
[<<moveTo "room_office_lunchbreak_canteen" "Canteen." 60>>]<br>
<<if -1 != setup.findThemeId('npc_psychiatrist', 'npc_cook', 'theme_psychiatrist_cook_3')>>
<<if $scene.npc_cookvisit>>
[@@.link_locked;You have already visited <<=setup.getNpcName("npc_cook","first")>> today.@@]<br>
<<else>>
[<<moveTo "event_cook_training_root" 'Drop in on <<=setup.getNpcName("npc_cook","first")>>.' 180>>]<br>
<</if>>
<</if>>
<<include workLunchbathroom>>/*#
#desc: secretary lunchbreak
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<switch $player.flags.mealplan.base>>
<<case "boiless">>
<<applyFatigue -15>>
<<if $player.sec_style.sex.boiless_bottle != "">>
<<applyExperience 'oral' 8 'normal' $INCOGNITO>>
<<applyExperience 'penis' 10 'normal' $INCOGNITO>>
<</if>>
<<case "cheap">>
<<applyFatigue -5>>
<<case "premium">>
<<applyFatigue -10>>
<</switch>>
<<if $player.flags.mealplan.cum>>
<<set _cum = Math.max(11, Math.min(16, setup.getTotalValue("cum")))>>
<<applyExperience 'cum' _cum 'normal' $INCOGNITO>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<if $player.flags.mealplan.base == "boiless" && $player.sec_style.sex.boiless_bottle != "">>
<<if setup.isMobile()>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png">
<<else>>
<img src="./images/inventory/item/food/boiless_bottle_ui.png" style="float: left;">
<</if>>
<<else>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<</if>>
<div id="invframe" class="scrolltext">
You <<switch $player.flags.mealplan.base>>
<<case "cheap">>
scarf down a sandwich<<if $player.flags.mealplan.cum>> covered in cum<</if>>.
<<case "premium">>
eat a delicious artisanal sandwich.
<<case "boiless">>
<<if $player.sec_style.sex.boiless_bottle != "">>
drink your noonday helping of Boil-Less Pink, jamming the phallic-topped "straw" into your mouth and
<<if setup.getTotalValue("penis") > 15>>
joyously
<<elseif setup.getTotalValue("penis") > 10>>
happily
<<elseif setup.getTotalValue("penis") > 10>>
reluctantly
<<else>>
resignedly
<</if>>
suck every drop <<if $player.flags.mealplan.cum>>of cum tinged nutrition <</if>>through the phallic straw.
<<else>>
guzzle your noonday helping of Boil-Less Pink<<if $player.flags.mealplan.cum>> mixed with cum<</if>>.
<</if>>
<<default>>
ERROR: unknown mealplan! $player.flags.mealplan.base
<</switch>>
<<if $player.flags.mealplan.hormones != "none">>
You feel the pleasant glow of the fresh dose of hormones suffusing your body to continue working their magic.
<</if>>
<<if $player.flags.mealplan.cum>>
Thanks to your extra seasoning, your mouth is filled with the
<<if setup.getTotalValue("cum") >= 15>>
intoxicating
<<elseif setup.getTotalValue("cum") >= 10>>
delicious
<<elseif setup.getTotalValue("cum") >= 5>>
salty-sweet
<<else>>
disgusting
<</if>>
taste of <<getWordCum>>.
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_afternoon_start" "Start work." 0>>]<br>
<<if (getUTCHours($now)==12 and getUTCMinutes($now) < 25) or (getUTCHours($now)>12)>>
[<<moveTo "room_office_sissy_secretary_work_lunchbreak" "Do something else with your break." 0>>]
<<else>>
[@@.link_locked;There is not enough time left to do anything during your lunch break.@@]
<</if>>
</div>/*#
#desc: friday afternoon at your office
#status: FINISHED 0.4.0.0
#*/
<<set $player.location = setup.wordSecretaryOffice()>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<resetStressMulti>>
<<include "endPartialShift">>
<<if $player.work.style == 'hard'>>
<<set _xp = setup.getTotalValue("smart")*2>>
<<set _smart = Math.max(12,setup.getTotalValue("smart"))>>
<<applyExperience 'smart' _smart _xp $ALONE>>
<<elseif $player.work.style == 'normal' && !$scene.bimboShift>>
<<set _xp = Math.floor(setup.getTotalValue("smart")*.5)>>
<<set _smart = Math.max(1,setup.getTotalValue("smart")-2)>>
<<applyExperience 'smart' _smart _xp $ALONE>>
<</if>>
<<set $scene.special = setup.calcFridayReviewSpecialEvent()>>
<<if $scene.special>>
<<set $scene.afterWorkEventTriggered = true>>
<</if>>
<<set $scene.dollChange = setup.checkItemWorn('doll_mask') && !$events.hasOwnProperty("overnight_stay_debrief")>>
<<if $scene.dollChange>>
<<removeItemSet 'doll_outfit'>>
<<deleteItemSet 'doll_outfit'>>
<</if>>
<</if>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if (setup.checkItemWorn("breastforms") || setup.checkItemInInventory("breastforms") && $fetish.drugs) && !State.hasPlayed("event_secretary_style_breasts_forced_1_end_1")>>
Your day has come to an end and <<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office...<br>
<br>
[<<moveTo "event_secretary_style_breasts_forced_1_end_1" "Enter the office." 60>>]
<<elseif $scene.dollChange>>
You get a message from <<=setup.getNpcName('npc_manager', 'formal')>> to change out of your latex doll suit — but keep the rest, before appearing for your end of day assessment.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Continue." 180>>]
<<elseif $currentTasks.hasOwnProperty('task_corporate_retreat') && !$currentTasks.task_corporate_retreat.finished && !$currentTasks.hasOwnProperty('corporate_retreat_transit')>>
You have finished packing your things for the weekend when <<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office.<br>
<br>
[<<moveTo "event_manager_retreat_invite_0" "Enter the office." 60>>]
<<elseif $currentTasks.hasOwnProperty('corporate_retreat_transit') && setup.compareDay($now,setup.getTaskDueDate('corporate_retreat_transit'))>>
You have finished packing your things for the weekend when <<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office.<br>
<br>
[<<moveTo "event_corporate_retreat_transit_1" "Enter the office." 60>>]
<<elseif $scene.special == "stage3_visit_invite">>
You have finished packing your things for the weekend when <<=setup.getNpcName('npc_manager', 'formal')>> summons you into her office.<br>
<br>
[<<moveTo "event_party_visit_invite_1" "Enter the office." 60>>]
<<elseif $events.hasOwnProperty('ai_connection_home')>>
Your day is over and you get a short, cryptic message from <<=setup.getNpcName('npc_ai', 'first')>> to "@@.npc_ai;<<uc "return to your domicile with maximum expediency">>@@"<br>
<br>
<<if !$scene.isSissyomatic && setup.getItemFromType("plug") != 'data_plug'>>
The massive plug spreading your ass buzzes slightly in "encouragement," the pulse like the movement of a tectonic plate, rattling your whole body.
<<else>>
You gather up the massive plug, hoping you can just carry it home by hand rather than have it straining your lower orifice.
<</if>>
<br><br>
[<<link "Check work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if State.hasPlayed("event_secretary_style_structure_1") || $npc_manager.stage > 2>>
[<<moveTo "room_employee_tracking" "Employee Portal." 0 "<<set $scene.returnFromEmployee='room_office_sissy_secretary_work_fridayafternoon'>>">>]<br>
<</if>>
<br>
<<if $currentTasks.hasOwnProperty('event_doctor_first_appointment') || $npc_work_doctor.flags.physical.done || $npc_barista.flags.can_meet>>
[@@.link_locked;Best not to go visiting anyone else while you're still on a mission.@@]<br>
<<else>>
[@@.link_locked;It'd be safest to leave immediately and not risk <<=setup.getNpcName('npc_manager', 'formal')>> figuring out my secret mission.@@]<br>
<</if>>
[<<moveTo "room_elevator_home" "Leave work." 160>>]
<<elseif $now.getUTCDay() == 5 && $npc_manager.flags.party.timesAttended > 0 && !$currentTasks.hasOwnProperty('task_uniform_upgrade')>>
You have finished work and are ready to head home when <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office door swings ominously open in invitation.<br>
<br>
[<<moveTo "event_uniform_upgrade_forced_1" "Enter the office." 60>>]
<<elseif $scene.special == 'boss_first_blowjob'>>
You are preparing to leave when you get a summons, not from <<=setup.getNpcName("npc_manager","formal")>>, but from <<=setup.getNpcName("npc_boss","formal")>>!<br>
<br>
"@@.npc_boss;Hello, I believe I owe you for your performance the other night. You have practiced your devotion, proven your hunger to have me inside you in every way and, now... now you had better hurry up to my office. My balls are heavy with your reward.@@"<br>
<br>
<<if setup.getTotalValue("cum") > 10>>
<<if setup.getTotalValue("cum") > 15>>
Your mouth is already watering at the thought of <<=ps(setup.getNpcName("npc_boss","formal"))>> cum and you hurry towards the door.
<<else>>
You lick your lips in anticipation of <<=setup.getNpcName("npc_boss","formal")>> and hurry for the door.
<</if>>
<<elseif setup.getTotalValue("penis") > 13>>
You lick your lips in anticipation of <<=setup.getNpcName("npc_boss","formal")>> and hurry for the door.
<<else>>
Maybe it's because you put so much effort into earning it, but <<=setup.getNpcName("npc_boss","formal")>> sounds so alluring and you find yourself hurrying for the door.
<</if>>
<br><br>
[<<moveTo "event_blowjob_challenge_reward_1" "Ride the elevator up." 900>>]
<<elseif !$scene.afterWorkEventTriggered && $player.sec_style.submission.permanent_key == "" && $player.sec_style.submission.chastity != "" && $npc_manager.flags.require_chastity && (!$npc_manager.flags.trustplayerwithkey || $npc_manager.stage >= 3 && !State.hasPlayed("event_perm_key_greed_1")) && setup.checkItemTypeWorn("cage") && !($currentTasks.hasOwnProperty("task_chastity_trial") && !$currentTasks['task_chastity_trial'].finished)>>
You are getting ready to depart when <<=setup.getNpcName('npc_manager', 'formal')>> strides out of her office and stops in front of your desk, staring down at you.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_after_work_key_special_1" "See what she has to say." 60>>]
<<elseif !$scene.afterWorkEventTriggered
&& $player.flags.firstWorkDay
&& $npc_manager.flags.trustplayerwithkey
&& $player.sec_style.submission.chastity
&& setup.checkItemTypeWorn("cage")
&& $npc_manager.flags.hascagekey
&& !(setup.checkItemTypeWorn("cage") && setup.checkItemTypeTag('cage', ['restrictedkey']))
&& (!$npc_manager.flags.playerstayedinchastity || $npc_manager.flags.playerstayedinchastity && $npc_manager.flags.chastitydays < 5) &&
$player.sec_style.submission.permanent_key == "">>
<<if $scene.workXP > 0>>
Working hard sharpens your thoughts as you really put your mind to what you're doing and learn in the process, but now your workday is officially over and your thoughts turn naturally towards the weekend.
<<else>>
It is nearing the end of the day and your thoughts turn towards the weekend.
<</if>>
<br><br>
<<if (setup.isItemEquipped("c_cage_advanced") || setup.isItemEquipped("chastity_belt_adv") || setup.isItemEquipped("chastity_belt_adv_ultra"))>>
<<if !setup.checkItemOwned("advance_chastity_cage_key") && $npc_manager.flags.took_adv_key>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 60 >>]
<<else>>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' 'Continue.' 60 "<<set $scene.afterWorkEventTriggered = true>>">>]
<</if>>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 60>>]
<</if>>
<<elseif !$scene.afterWorkEventTriggered && $scene.severeCleaning>>
You stand in front of your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> Office.
<<if $scene.workXP > 0>>
Working hard sharpens your thoughts as you really put your mind to what you're doing and learn in the process, but now your workday is officially over and your thoughts turn naturally towards the weekend.
<<else>>
It is nearing the end of the day and your thoughts turn towards the weekend.
<</if>>
<br><br>
<<include thoughts_work>>
[<<link "Check work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if State.hasPlayed("event_secretary_style_structure_1") || $npc_manager.stage > 2>>
[<<moveTo "room_employee_tracking" "Employee Portal." 0 "<<set $scene.returnFromEmployee='room_office_sissy_secretary_work_fridayafternoon'>>">>]<br>
<</if>>
<br>
[<<moveTo "room_office_manager" 'Office of <<=setup.getNpcName("npc_manager", "formal")>>.' 10>>]<br>
<br>
<<include "afterWorkVisiting">>
<<elseif !$scene.afterWorkEventTriggered && $player.sec_style.submission.permanent_key == "" && $npc_manager.flags.playerstayedinchastity && $npc_manager.flags.chastitydays >= 5 && $npc_manager.stage > 2 && $npc_manager.flags.require_chastity>>
<<if $scene.workXP > 0>>
Working hard sharpens your thoughts as you really put your mind to what you're doing and learn in the process, but now your workday is officially over and your thoughts turn naturally towards the weekend.
<<else>>
It is nearing the end of the day and your thoughts turn towards the weekend.
<</if>>
<br><br>
[<<moveTo "room_office_sissy_secretary_work_after_work_key_offer_1" "Continue." 60>>]
<<else>>
You stand in front of your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> Office. Your work time has officially ended. What will you do?<br>
<br>
<<include thoughts_work>>
[<<link "Check work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if State.hasPlayed("event_secretary_style_structure_1") || $npc_manager.stage > 2>>
[<<moveTo "room_employee_tracking" "Employee Portal." 0 "<<set $scene.returnFromEmployee='room_office_sissy_secretary_work_fridayafternoon'>>">>]<br>
<</if>>
<br>
[<<moveTo "room_office_manager" 'Office of <<=setup.getNpcName("npc_manager", "formal")>>.' 10>>]<br>
<br>
<<include "afterWorkVisiting">>
<</if>>
</div>/*#
#desc: afternoon work as secretary
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $player.work.nowWorking = true>>
<<if State.hasPlayed("event_work_stage4_chair_1") && (setup.calcErection(true) || _lockCage) && $player.work.style != 'bimbo' && $now.getUTCHours() < ($player.work.time_evening.hour - 1)>>
<<set $scene.retPassage = "room_office_sissy_secretary_work_afternoon_work">>
<<initRoom>>
<<moveTo "event_work_chair_horny_rectify">>
<<else>>
<<include "workChairCalc">>
<<if $scene.afternoonWorkEvent>>
<<set $workEvent = $scene.afternoonWorkEvent>>
<</if>>
<<if $workEvent == null || !$workEvent.triggered && !($events.hasOwnProperty("hormones_checkin") && setup.daysToDate($now,$events.hormones_checkin.trigger.date) == 0)>>
<<set $workEvent = setup.checkWorkEvents($player, $now, $scene.workEventCount)>>
<</if>>
<<set $scene.workEventReturn = "room_office_sissy_secretary_work_afternoon_work">>
<<if $workEvent && $workEvent.triggered>>
<<set $now = setup.advanceNextDate($player, $now, 0, $workEvent.rndH, $workEvent.rndM)>>
<<else>>
<<include "workChairStartXp">>
<<set $now = setup.advanceNextDate($player, $now, 0, $player.work.time_evening.hour, $player.work.time_evening.minutes)>>
<<set $player.timebased.fatiguemulti = 1>>
<<set $player.timebased.stressmulti = 0>>
<</if>>
<<checkTaskEvents>>
<<if $npc_manager.flags.chastitydays >= 5>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAnimatedBGR "./video/scene_typing.mp4">>
<div id="invframe" class="scrolltext">
<<include "workChairStart">>
<<=$player.work.workMessage>>
[<<link "Performance Breakdown">><<openDialog "Secretary Tracking Database" "room_office_sissy_secretary_work_performance">> <</link>>]<br>
<br>
<<include thoughts_work>>
<<if $workEvent && $workEvent.triggered>>
Your work is interrupted after a while.<br>
<br>
<<include "workChairUnlock">>
[<<moveTo $workEvent.szene "Continue." 0 "<<if State.hasPlayed('event_work_stage4_chair_1') && $scene.chair_plug && $player.work.chair.plug != 0>><<wearItem $scene.chair_plug true>><</if>>">>]
<<elseif !$scene.afterWorkEventTriggered &&
$npc_manager.flags.trustplayerwithkey &&
$player.flags.firstWorkDay &&
$npc_manager.flags.require_chastity &&
$player.sec_style.submission.chastity &&
$npc_manager.flags.hascagekey &&
!(setup.checkItemTypeWorn("cage") && setup.checkItemTypeTag('cage', ['restrictedkey'])) &&
(!$npc_manager.flags.playerstayedinchastity || $npc_manager.flags.playerstayedinchastity && $npc_manager.flags.chastitydays < 5) &&
!$player.sec_style.submission.permanent_key>>
<<include "workChairUnlock">>
<<if (setup.isItemEquipped("c_cage_advanced") || setup.isItemEquipped("chastity_belt_adv") || setup.isItemEquipped("chastity_belt_adv_ultra"))>>
<<if !setup.checkItemOwned("advance_chastity_cage_key") && $npc_manager.flags.took_adv_key>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 120 "<<if State.hasPlayed('event_work_stage4_chair_1') && $scene.chair_plug && $player.work.chair.plug != 0>><<wearItem $scene.chair_plug true>><</if>>">>]
<<else>>
[<<moveTo "room_office_sissy_secretary_work_evening" "Continue." 0 "<<if State.hasPlayed('event_work_stage4_chair_1') && $scene.chair_plug && $player.work.chair.plug != 0>><<wearItem $scene.chair_plug true>><</if>>">>]
<</if>>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_after_work_keyreturn" "Continue." 120 "<<if State.hasPlayed('event_work_stage4_chair_1') && $scene.chair_plug && $player.work.chair.plug != 0>><<wearItem $scene.chair_plug true>><</if>>">>]
<</if>>
<<else>>
[<<moveTo "room_office_sissy_secretary_work_evening" "Continue." 0 "<<if State.hasPlayed('event_work_stage4_chair_1') && $scene.chair_plug && $player.work.chair.plug != 0>><<wearItem $scene.chair_plug true>><</if>>">>]
<</if>>
</div>/*#
#desc: end of secretary workday
#status: FINISHED 0.4.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<resetStressMulti>>
<<if $player.work.nowWorking>>
<<include "endPartialShift">>
<<if $player.work.style == 'hard'>>
<<set _xp = setup.getTotalValue("smart")*2>>
<<set _smart = Math.max(12,setup.getTotalValue("smart"))>>
<<applyExperience 'smart' _smart _xp $ALONE>>
<<elseif $player.work.style == 'normal' && !$scene.bimboShift>>
<<set _xp = Math.floor(setup.getTotalValue("smart")*.5)>>
<<set _smart = Math.max(1,setup.getTotalValue("smart")-2)>>
<<applyExperience 'smart' _smart _xp $ALONE>>
<</if>>
<</if>>
<<set $scene.dollChange = setup.checkItemWorn('doll_mask') && !$events.hasOwnProperty("overnight_stay_debrief")>>
<<if $npc_manager.stage < 3>>
<<if !$player.flags.firstWorkDayDone>>
<<set $player.work.qualifyingperiod -= 1>>
<<initRoom>>
<<moveTo "event_manager_mandatory_disciplinary_measure_1">>
<<elseif $npc_manager.stage == 1 && ($player.sec_style.submission.chastity == "enthusiast" || $player.sec_style.body.tblock == "enthusiast") && $npc_psychiatrist.profile>>
<<initRoom>>
<<moveTo "event_manager_stage1_end_enthusiast_1">>
<<elseif $player.work.qualifyingperiod < 28>>
<<initRoom>>
<<set $scene.peggingReady = setup.isPeggingReady()>>
<<if $scene.peggingReady && $now.getUTCDay() != 4>>
<<moveTo "event_manager_performance_review">>
<<elseif $npc_manager.stage == 1 && $npc_manager.flags.stage1Promo == "" && $player.work.qualifyingperiod < 10>>
<<set $player.work.qualifyingperiod -= 1>>
<<moveTo "event_manager_qualifier_accelerate">>
<<elseif $player.work.qualifyingperiod == 6>>
<<set $player.work.qualifyingperiod -= 1>>
<<moveTo "event_manager_qualifier_warning">>
<<elseif $player.work.qualifyingperiod <= 0>>
<<set $player.work.qualifyingperiod -= 1>>
<<moveTo "event_manager_qualifier_ultimatum">>
<<else>>
<<set $player.work.qualifyingperiod -= 1>>
<<moveTo "event_manager_performance_review">>
<</if>>
<</if>>
<<elseif $scene.dollChange>>
<<removeItemSet 'doll_outfit'>>
<<deleteItemSet 'doll_outfit'>>
<<else>>
<<initRoom>>
<<moveTo "event_manager_performance_review">>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
<<if $scene.dollChange>>
You get a message from <<=setup.getNpcName('npc_manager', 'formal')>> to change out of your latex doll suit — but keep the rest, before appearing for your end of day assessment.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_evening" "Continue." 180>>]
<<else>>
You sit at your desk in the antechamber in front of <<=ps(setup.getNpcName('npc_manager', 'formal'))>> office.
<<if $scene.workXP > 0>>
Working hard sharpens your thoughts as you really put your mind to what you're doing and learn in the process, but now your workday is officially over.
<<else>>
Your workday is officially over. What will you do?<br>
<</if>>
<br><br>
<<include thoughts_work>>
[<<link "Check work related data">>
<<openDialog "sBase 8.0" "room_office_sissy_secretary_work_data">>
<</link>>]<br>
<<if State.hasPlayed("event_secretary_style_structure_1") || $npc_manager.stage > 2>>
[<<moveTo "room_employee_tracking" "Employee Portal." 0 "<<set $scene.returnFromEmployee='room_office_sissy_secretary_work_evening'>>">>]<br>
<</if>>
<br>
<<if $player.makeup.messed >= 25>>
[<<moveTo "room_office_sissy_secretary_work_evening" "Take a moment to touch up your makeup." 300 "<<set $player.makeup.messed=0>>">>]<br><br>
<</if>>
[<<moveTo "room_office_manager" 'Office of <<=setup.getNpcName("npc_manager", "formal")>>.' 10>>]<br>
[<<moveTo "room_elevator_home" "Leave the office." 120>>]
<</if>>
</div>/*#
#desc: manager returns chastity key at end of workday
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.afterWorkEventTriggered = true>>
<<include "endPartialShift">>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if !$scene.manager_in_room>>
Shortly before the end of your workday, <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and walks up next to you.<br>
<br>
<</if>>
<<if $now.getUTCDay() != 5 && $player.sec_style.clothing.female!="" &&
$player.sec_style.clothing.makeup!="" &&
$player.sec_style.body.name!="" &&
$npc_manager.flags.pegging.base_style == "" &&
$npc_manager.flags.party.first_attend &&
$npc_admin.flags.promotion &&
(!$currentTasks.hasOwnProperty("task_chastity_trial") || $currentTasks.task_chastity_trial.condition == "Failed" || $npc_manager.flags.took_adv_key || ($currentTasks.task_chastity_trial.condition == "Complete" && $npc_manager.flags.good_girl.got_sissy_underwear)) &&
$npc_barista.flags.can_meet &&
!($npc_manager.flags.bad_girl.got_sissy_underwear || $npc_manager.flags.good_girl.got_sissy_underwear) &&
!($npc_manager.flags.bad_girl.got_pink_secretary || $npc_manager.flags.good_girl.got_pink_secretary)>>
You are ready for the near-routine ritual of <<=setup.getNpcName('npc_manager', 'formal')>> returning your chastity key but she pauses, a twinkle in her eye as she looks down at you, your own gaze fixated on the key held gently between her fingers.<br>
<br>
"@@.npc_manager;You know, you are making such career progress towards completing your probation, becoming my full-time <<if $fetish.sissy>>SISSI <</if>>Secretary...I find I am becoming increasingly comfortable relying on your assistance... and even more increasingly reluctant to let you go at the end of the day.@@" She twirls the key between her fingers. "@@.npc_manager;Chastity has done such an excellent job at helping you adjust to your role, I find myself fantasising about how much better, still, you would do if you left the key with me and remained securely mine until the morning.@@"<br>
<br>
She leans closer, the force of her presence as strong as the heady aroma of her dominant feminine scent as she dangles the key in front of you.<br>
<br>
"@@.npc_manager;Well? It would only be for the night... I think we both know you are intrigued by the possibility...@@"<br>
<br>
<<printThought "Maybe I should let her keep it... it's only for one night, and I really do need to everything I can to impress so I can get out of this probationary period and keep this job...">>
<<else>>
"@@.npc_manager;Well, you have proven to me that my trust in you was not misplaced. So here is my part of the deal. Take it.@@"<br>
<br>
<<if $npc_manager.flags.trustplayerwithkey>>
She plucks your key from its place and your desk and holds it out to you.
<<else>>
She holds out her hand.
<</if>>
The key to your chastity rests innocuously on her palm.
<</if>>
<br><br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_keyreturn_accept' 'Accept the key.' 60>>]<br>
<<if !State.hasPlayed("room_office_sissy_secretary_work_after_work_keyreturn_accept") && !State.hasPlayed("room_office_sissy_secretary_work_after_work_keyreturn_decline") && !State.hasPlayed("event_enthusiast_permanent_key_1")>>
[<<moveTo 'event_enthusiast_permanent_key_1' "You don't want the key back." 60 "<<set $scene.fromInspection=false>>">>]
<<else>>
[<<moveTo 'room_office_sissy_secretary_work_after_work_keyreturn_decline' 'Decline the key.' 60>>]
<</if>>
</div>/*#
#desc: accept chastity key at end of workday
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $npc_manager.flags.chastitydays = 0>>
<<set $npc_manager.flags.hascagekey = false>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<addItem _keyId>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You take the key and thank her. She walks back into her office without saying a word, but you think you hear a faint, maybe even sad sigh.<br>
<br>
<<if setup.getTotalValue('submission')>6>>
<<printThought "I should have left the key with her. I could still give it back to her...can't I?">><br>
<br>
<</if>>
<<if setup.getUTCDay($now) == 5>>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' 'Continue.' 60>>]
<<else>>
[<<moveTo 'room_office_sissy_secretary_work_evening' 'Continue.' 60>>]
<</if>>
</div>/*#
#desc: decline to take back your chastity key from manager at end of workday
#status: FINISHED 0.4.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.chastitydays += 1>>
<<include room_office_manager_chastity_calc_affinity>>
<<set $scene.badsissy1 = false>>
<<if ($scene.chastity_happy == 'yes') && !$npc_manager.flags.unlocked_badsissy1>>
<<set $scene.badsissy1 = true>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_1'
0
'event_manager_theme_badsissy1'
true
>>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<if !setup.hasThreshold('submission', 'submissive_secretary', 'key_surrendered')>>
<<setThreshold 'submission' 'submissive_secretary' 'key_surrendered'>>
<</if>>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem $scene.keyId>>
<<set $scene.cage_locked = $inventory[setup.getItemFromType("cage")].status.lock>>
<<if !$scene.cage_locked>>
<<set _cageId = setup.getItemFromType("cage")>>
<<manipulateItem _cageId "lock" true>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
You raise your hand, as if reaching for the key only to softly close her fingers around it. Without even speaking a word, you make it quite clear that you don't want it back for the time being. If it wasn't such an act of total submission, it could have been a quite romantic gesture.<br>
<br>
"@@.npc_manager;Just as I thought. You do want to be an obedient <<if $fetish.sissy>>SISSI<<else>>girl<</if>>. Very well, I will respect your decision and keep this safe for you
<<if setup.getUTCDay($now) == 5>>
over the weekend.
<<else>>
until tomorrow.
<</if>>
<<if $scene.badsissy1>>
You know, sometimes I wish you would be more disobedient, so I could punish you more often from time to time. Oh well, seems like one cannot have everything.
<</if>>
<<if setup.getUTCDay($now) == 5>>
Well, then, I will see you on Monday. Have a nice weekend <<if $fetish.sissy>>SISSI<<else>>girl<</if>> <<=$player.first_name>>.
<<else>>
Such an auspicious end to the day, though it will not be affecting your forthcoming end of day work review.
<</if>>
In any case, you have made the right decision.@@"<br>
<br>
With a gentle smile, she threads the key back onto its chain, making a minor ceremony of hanging it back around her neck, the fact that it now rests just over her heart igniting sparks of happiness inside your own chest.
<br><br>
"@@.npc_manager;Oh, one final thing. Not to spoil this lovely moment but... could you show me that <<if setup.isCage()>>the cage<<else>>your belt<</if>> is actually locked? It would be a betrayal of my duties as a keyholder to allow you to believe that you had given up control when you had not!@@"<br>
<br>
<<if $scene.cage_locked>>
Pulling your clothes aside, you reveal your securely locked self. Giving it a testing squeeze she smiles. "@@.npc_manager;Perfection. This is just how you should be obedient, <<if setup.isCage()>>caged<<else>>securely locked<</if>>, mine... and all of your own free will.@@"<br>
<br>
She stares down at you with a smile until you bashfully turn away, only then removing her grasp and allowing you to fix your clothes.
<<else>>
Pulling your clothes aside, you reveal your clearly unlocked self. She frowns, reaching down to squeeze things closed with a quiet, but ominous, click.<br>
<br>
"@@.npc_manager;Well, well, it is a good thing I thought to check, hmm? Your sloppy forgetfulness almost had you going off unsecured! It is a good for you I am so diligent about these things, but fortunately everything is now as it should be.@@"
<</if>>
<br><br>
<<if $npc_manager.flags.chastitydays == 5>>
"@@.npc_manager;Also... as much as I enjoy you going through the ritual of turning over the key every evening... it has become a bit of a formality, would you not agree? If you really need it back, and I deem you behaved enough to deserve such, you may visit me and ask for the key but otherwise... well, I will just hold onto it for you and stop bothering you about it every day when we both know that you will just end up doing the right thing.@@"<br>
<br>
Your heart flutters at her smile. In a way nothing has changed — per her word you can still have the key back and yet... you feel like you have just given a part of yourself over to her.
<<else>>
"@@.npc_manager;Lovely, back to the way things should be. Come talk to me if you need the key temporarily for some reason. Otherwise I will just hold onto it... for your own good.@@"
<</if>>
<br><br>
<<if setup.getUTCDay($now) == 5>>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' 'Continue.' 60>>]
<<else>>
[<<moveTo 'room_office_sissy_secretary_work_evening' 'Continue.' 60>>]
<</if>>
</div><<set $scene.bonus = 0>>
<<set $scene.bonus += Math.floor((($player.work.workPensum/($player.work.hoursperWeek*$player.work.bonusReq)-1)*100))>>
<<set $scene.promoBonus = false>>
<<if $scene.bonus > 25>>
<<if $player.work.secretaryRank < 2>>
<<set $scene.promoBonus = $scene.bonus >= 30>>
<<elseif $player.flags.resume.interview>>
<<set $scene.promoBonus = $scene.bonus >= 40>>
<</if>>
<<set $scene.bonus = 25>>
<<elseif $scene.bonus < -25>>
<<set $scene.bonus = -25>>
<</if>>
<<set $scene.firstStage4 = $currentTasks.hasOwnProperty('corporate_retreat_transit') && setup.daysToDate($currentTasks.corporate_retreat_transit.finishedTime, $now) <= 7>>
<<if $scene.firstStage4 && $scene.bonus < 0>>
<<if $scene.bonus >= 0>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<<set $scene.bonus = 0>>
<<set $player.work.oneTimePay += 50>>
<</if>>
<<set $scene.totalWorked = $player.work.hoursDone>>
<<set $scene.effectiveWorked = $player.work.workPensum>>
<<set $scene.workHours = $player.work.hoursDone - $player.work.hoursperWeek>>
<<set $scene.workEffective = $player.work.workPensum-$player.work.hoursperWeek*$player.work.bonusReq>>
<<set $scene.advance = 0 + $player.work.advance>>
<<set $scene.salary = Math.round($player.work.payment * (1+($scene.bonus/100)))-$player.work.advance>>
<<if $player.body.breastsize[0] && $player.sec_style.body.breasts == "money">>
<<set $scene.salary += 50>>
<</if>>
<<set $player.work.advance = 0>>
<<set $scene.completeBondageTask = $currentTasks.hasOwnProperty('manager_bondage_task') && !$currentTasks.manager_bondage_task.finished>>
<<if $scene.completeBondageTask>>
<<deleteTask 'manager_bondage_task'>>
<</if>>
<<if $scene.workHours > 0>>
<<if $scene.workEffective < 0>>
<<applyExperience 'bimbofication' 4 'normal' $SEEN_FRIEND>>
<<set $npc_manager.workdiscipline -= 1>>
<<else>>
<<set $npc_manager.workdiscipline += 1>>
<</if>>
<<elseif $scene.workHours > -6 || (Math.abs($scene.workHours) < 1)>>
<<if $scene.workEffective >= 0>>
<<if Math.abs($scene.workEffective) < 1>>
<<set $npc_manager.workdiscipline += 0.25>>
<<else>>
<<set $npc_manager.workdiscipline += 1>>
<</if>>
<<else>>
<<set $npc_manager.workdiscipline -= 1>>
<</if>>
<<else>>
<<if $scene.workEffective >= 0>>
<<if Math.abs($scene.workEffective) < 1>>
<<set $npc_manager.workdiscipline += 0.25>>
<<else>>
<<set $npc_manager.workdiscipline += 0.5>>
<</if>>
<<else>>
<<set $npc_manager.workdiscipline -= 1>>
<<applyExperience 'bimbofication' 5 'terrible' $SEEN_FRIEND>>
<</if>>
<</if>>
<<set _hoursDone = Math.round($player.work.hoursDone*2)/2>>
<<set _hoursEff = Math.round($player.work.workPensum/$player.work.bonusReq/$player.work.hoursperWeek*100)>>
<<set $scene.workString = "Hours worked this week: " + _hoursDone + '/' + $player.work.hoursperWeek + "h\\nWork completed this week: " + _hoursEff + "%">>
<<set $scene.oneTimePay = $player.work.oneTimePay>>
<<addCredits `$scene.salary + $player.work.oneTimePay`>>
<<set $player.work.hoursDone = 0>>
<<set $player.work.workPensum = 0>>
<<set $player.work.hoursperWeek = 39>>
<<set $player.work.oneTimePay = 0>>/*#
#desc: paid for work as secretary
#status: FINISHED 0.4.0.0
#*/
<<set $player.cutscene.noitems=true>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $SEEN_FRIEND>>
<<set _nextDate = setup.setNextDate($now, 7, 19, 0)>>
<<removeEvent 'weekly_salary_phonecall'>>
<<addEvent 'weekly_salary_phonecall' _nextDate>>
<<include calcSalary>>
<<set $scene.payEvent = setup.calcPaySpecialEvent()>>
<<set $scene.landlordDate = ($currentTasks.hasOwnProperty('task_landlord_date_1') && !$currentTasks.task_landlord_date_1.finished && setup.daysToDate($now, setup.getTaskDueDate('task_landlord_date_1')) == 0)>>
<<if $scene.review.special == "stage3_party_repeat_invite">>
<<set $scene.partyEvents = $npc_poker_intro_slave.stage < 2 || !$player.flags.data_crystal.got || $npc_manager.stage >= 4 && !$npc_rival.flags.stage4_hitch>>
<<if $scene.partyEvents && !$scene.landlordDate>>
<<set _nextDate = setup.setNextDate($now, 0, 18, 30)>>
<<addTaskById 'task_stage_3_party' _nextDate>>
<</if>>
<<elseif $scene.review.special == "retreat_announce">>
<<if $scene.landlordDate>>
<<postponeTask 'task_landlord_date_1' 7>>
<</if>>
<<set _nextDate = setup.setNextDate($now, 0, 18, 30)>>
<<addTaskById 'task_stage_3_party' _nextDate>>
<</if>>
<<if$scene.payEvent == "payraise">>
<<set $scene.payRaise = Math.floor(10 + .3*$player.work.payment*(20+$npc_manager.affection-$npc_manager.anger)/20)>>
<<set $player.work.payment += $scene.payRaise>>
<<set $player.work.secretaryRank += 1>>
<<if $player.work.secretaryRank == 3>>
<<set $player.work.bonusReq = 1.27 * $player.work.bonusReq>>
<<if $npc_pr_sissy.stage == 4 && $player.flags.special_skills.anal_training>>
<<addWorkEvent 'pr_sissy_campaign_bend'>>
<</if>>
<<else>>
<<set $player.work.bonusReq = 1.2 * $player.work.bonusReq>>
<</if>>
<</if>>
<</if>>
<<set $player.location to "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
"@@.npc_manager;Let me look at the numbers and see how well you did this pay period.@@"<br>
<br>
<<include salarySummary>>
<br><br>
<<switch $scene.payEvent>>
<<case "party_talk">>
"@@.npc_manager;Well, that will be all for today. You may leave, <<=$player.first_name>>.@@"<br>
<br>
As you turn to go, you notice <<=setup.getNpcName('npc_manager', 'formal')>> has already turned back to her work and you realise that she is looking a bit harried this evening. Not even bothering looking over at you,
<<if ($npc_manager.affection+$npc_manager.affection) > $npc_manager.anger>>
even though you did everything she asked you to lately.
<<else>>
even though you're still your usual frisky self.
<</if>>
For a moment you were sure that you heard a sigh from her direction. Even though she was just dealing with you she seems already to have forgotten your presence.<br>
<br>
[<<moveTo "event_manager_preparty_1_offer" "Ask her if there's something upsetting her." 60 '<<set $player.work.hoursperWeek = 39>>'>>]<br>
[<<moveTo "event_manager_preparty_1_offer_alt" "Continue on your way." 60 '<<set $player.work.hoursperWeek = 39>>'>>]
<<case "stage3_goals">>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;Your first paycheck as a non-probational, fully-qualified <<if $fetish.sissy>>SISSI <</if>>Secretary, congratulations!@@"<br>
<br>
You straighten with pride. Certainly your "new" job has been quite the ride... but there is something about <<=ps(setup.getNpcName("npc_manager","formal"))>> voice that makes her approval hit particularly strong.<br>
<br>
"@@.npc_manager;Well, I say fully-qualified, only, really, this is but the first step in a larger journey. I have taken the liberty of making some additions to your SMART <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> Developmental Profile. Consider this a new set of goals to strive for in your ongoing quest to blossom into the best employee you can be.@@"<br>
<br>
[<<moveTo "room_office_manager" 'You would like to talk about something.' 60 "<<set $scene.direct=true>><<set $npc_manager.stagevalues[3].goals=true>>">>]<br>
[<<moveTo "room_office_after_work" "Leave the office." 120 "<<set $npc_manager.stagevalues[3].goals=true>>">>]
<<case "payraise">>
<<if $scene.workHours < 0>>
"@@.npc_manager;Well well, well, it would seem that you took the "work smarter, not harder" creed seriously. You did not even work your full hours... yet you blew past everything I expected you to complete.@@"
<<else>>
"@@.npc_manager;Such diligent effort! Putting in those extra hours to far surpass the amount of work I expected you to complete.@@"
<</if>>
She smiles — an expression that is clearly meant to be encouraging, but that holds a hint of smugness, as well.
<<switch $player.work.secretaryRank>>
<<case 1>>
"@@.npc_manager;Since you have proven your efficiency I believe it is time for a new title, yes, you are no "Junior" <<if $fetish.sissy>>SISSI <</if>>Secretary, but a proven, full-fledged <<if $fetish.sissy>>SISSI <</if>>Secretary. Of course... that is but the normal expectations we would have for anyone at this company. Given that you work for me, well... I hope to see you go far further.@@"
<<case 2>>
"@@.npc_manager;Yet again you have proven yourself capable of greater responsibilities. You have shown the skills of a Senior <<if $fetish.sissy>>SISSI <</if>>Secretary, and I am promoting you to reflect such.@@"
<<case 3>>
"@@.npc_manager;You have reached the pinnacle, a proven Executive <<if $fetish.sissy>>SISSI <</if>>Secretary. MY Executive <<if $fetish.sissy>>SISSI <</if>>Secretary, to be specific. That first day we met... I knew there was something special about you, but this? Oh, you have surely exceeded even my most optimistic expectations. Such a pity that you wasted so many years of your career attempting something you were far less suited for.@@"
<</switch>>
<br><br>
<<if $player.work.secretaryRank == 3>>
You straighten up with pride. "@@.npc_manager;Your rise has been quite meteoric, so I hardly need remind you that this new title comes with it yet higher expectations of performance, as well as another <<=$scene.payRaise>> credit increase to your base pay... more significantly, well... you have literally proven yourself capable of performing the work of two Junior <<if $fetish.sissy>>SISSI <</if>>Secretaries... and so I invited a friend to help you celebrate by taking two of something else...@@"<br>
<br>
You hear the door and turn to see <<=setup.getNpcName("npc_harassment","formal")>> and her assistant, <<=setup.getNpcName("npc_harassment_assist","first")>> enter the office.<br>
<br>
[<<moveTo "event_payraise_final_1" "Continue." 180>>]<br>
<<else>>
You straighten up with pride. "@@.npc_manager;Of course a title on its own is meaningless. So you should be happy to know that there is also a <<=$scene.payRaise>> credit pay-raise... to take effect next pay period. Of course, the higher pay is paired with the expectation that you will maintain a similar level of effort. But you are up to the challenge, right?@@"<br>
<br>
You nod, she smiles.
<<if ["stage3_party_repeat_invite", "stage4_party_first_invite", "retreat_announce"].includes($scene.review.special)>>
<<if $scene.partyEvents>>
"@@.npc_manager;Lovely, simply lovely... speaking of lovely, there is another party this evening and you just HAVE to come with me.@@" She smiles as you curtsy obediently. "@@.npc_manager;Perfection. Now run along. You are not the only one who needs to get ready for this evening's festivities.@@"<br>
<br>
<<if $scene.landlordDate>>
<<printThought "Wait, I'm supposed to meet <<=setup.getNpcName('npc_landlord','first')>> tonight...">><br>
<br>
[<<moveTo "event_party_repeat_invite" "Say you would like to accompany her to the party." 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_party_repeat_invite" "Tell her you cannot attend the party tonight." 60 "<<set $scene.accept = false>>">>]
<<else>>
[<<moveTo "room_elevator_home" "Head for the elevator." 60>>]
<</if>>
<<else>>
"@@.npc_manager;Lovely, simply lovely... moving on, would my newly promoted <<=setup.getSecretaryTitle()>> like to accompany me to tonight's festivities? <<=setup.getNpcName("npc_boss","formal")>> is hosting yet another of <<his npc_boss>> corporate parties.@@"<br>
<br>
[<<moveTo "event_party_repeat_invite" "Say you would like to accompany her to the party." 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_party_repeat_invite" "You don't see a reason to attend the party tonight." 60 "<<set $scene.accept = false>>">>]
<</if>>
<<else>>
"@@.npc_manager;I knew you would be... well, that will be all for the day, have a lovely evening.@@"<br>
<br>
[<<moveTo "room_office_manager" 'Actually, you would like to talk about something.' 60 "<<set $scene.direct=true>>">>]<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<</if>>
<</if>>
<<case "bimbo_invite">>
<<if $npc_manager.stage > 2>>
<<=setup.getNpcName("npc_manager","formal")>> falls silent and you wait nervously. There's something in her eyes, as if she is disappointed, but also calculating something...<br>
<br>
[<<moveTo "event_manager_performance_review_bimbo_1" "Wait to see what else she has to say." 60>>]
<<else>>
<<=setup.getNpcName("npc_manager","formal")>> frowns. "@@.npc_manager;This performance is... quite unbecoming. Were you a full-fledged <<if $fetish.sissy>>SISSI <</if>>Secretary I might offer alternate responsibilities more in keeping with your apparent... predilections. As it is you are yet on probation and I can only advise you to focus on improving your performance.@@"<br>
<br>
[<<moveTo "room_office_manager" 'You would like to talk about something.' 60 "<<set $scene.direct=true>>">>]<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<</if>>
<<case "review_sec_style_intro">>
You thank <<=setup.getNpcName("npc_manager","formal")>> for your pay and she signals for you to stay.<br>
<br>
"@@.npc_manager;Of course, work deserves its reward. Speaking of work. As you know, you are still in your probationary period as my personal <<if $fetish.sissy>>SISSI <</if>> Secretary, which is a time for you to incrementally grow into your position and put yourself on the road to long-term success so that you will be able to perform the full and complete duties of a <<if $fetish.sissy>>SISSI <</if>>Secretary. Towards that end I wanted to introduce an internal tool that you can use to track, and perhaps accelerate, your career progress.@@"<br>
<br>
[<<moveTo "event_secretary_style_structure_1" "Follow her back to your desk." 180>>]
<<case "review_retreat_announce">>
Concluding your assessment with a smile <<=setup.getNpcName("npc_manager","formal")>> nods. "@@.npc_manager;Well then, another Thursday in the books, and you know what that means — <<=setup.getNpcName("npc_boss","formal")>> is throwing another of <<his npc_boss>> parties. A mandatory one this week... which probably means some manner of announcement.@@"<br>
<br>
You're pretty sure she knows what that announcement might be, but appears to be keeping mum.<br>
<br>
"@@.npc_manager;Well, you need to get prepared, as usual. A car will be by to pick you up at <<if $options.militaryTime>>18:30<<else>>six thirty in the evening<</if>>.@@"<br>
<br>
<<if $scene.landlordDate>>
<<printThought 'I was going on a date with <<=setup.getNpcName("npc_landlord","first")>> tonight...'>><br>
<br>
You raise the issue of your prior commitment and <<=setup.getNpcName("npc_manager","formal")>> shakes her head. "@@.npc_manager;I am afraid you will need to cancel, or postpone, my dear.@@"<br>
<br>
<</if>>
She smiles as you curtsy in departure and then shoos you off. "@@.npc_manager;Run along now, you are not the only one who needs to get ready for tonight's festivities.@@"<br>
<br>
<<if $scene.landlordDate>>
On your way out of the office you text <<=setup.getNpcName("npc_landlord","first")>> the bad news and <<he npc_landlord>> graciously agrees to postpone to the following Thursday.<br>
<br>
<</if>>
[<<moveTo "room_elevator_home" "Head for the elevator." 60>>]
<<case "review_stage3_party_repeat_invite">>
<<if $scene.landlordDate>>
"@@.npc_manager;Another week, another party... I suppose it would be good for us to make our presence known for a bit.@@"<br>
<br>
With a mix of excitement and nerves you explain that, actually, you have a date scheduled.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> raises an eyebrow. "@@.npc_manager;Well then. I suppose I can get along without you for one evening, being that it is after standard hours I shall not insist on you canceling other plans.@@"<br>
<br>
[<<moveTo "room_elevator_home" "Head for the elevator." 60>>]
<<elseif $scene.partyEvents>>
<<if $npc_manager.stage == 3>>
"@@.npc_manager;Another week, another party... it's strange how, for what is supposed to be an evening off, there remain things that need to be done.@@"
<<else>>
"@@.npc_manager;Another week, another party... I suppose it would be good for us to make our presence known for a bit. With this move to the upper floors we are under the microscope more than ever before, and we shall both need to exemplify the pinnacle of our, in the end, representative positions.@@"
<</if>>
<br><br>
"@@.npc_manager;Hurry along home and prepare, I will be by to pick you up shortly.@@"<br>
<br>
[<<moveTo "room_elevator_home" "Head for the elevator." 60>>]
<<else>>
She smiles, "@@.npc_manager;Thursday again means another party. I do not have any significant pressing business <<if $npc_hucow.stage > 2 && $npc_futa.stage > 2 && $npc_sissy_secretary.stage > 2 && $npc_sexdoll.stage > 2 && $player.flags.stage3party.cumContest == 0>>though perhaps you might? In any case,<<else>>there so<</if>> I will leave the decision as to attendance up to you.@@"<br>
<br>
[<<moveTo "event_party_repeat_invite" "Say you would like to accompany her to the party." 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_party_repeat_invite" "You don't see a reason to attend the party tonight." 60 "<<set $scene.accept = false>>">>]
<</if>>
<<case "review_stage4_party_first_invite">>
<<=setup.getNpcName("npc_manager","formal")>> smiles. "@@.npc_manager;One final thing,@@" <<=setup.getNpcName("npc_manager","formal")>> states with a smile "@@.npc_manager;you have risen so high that, well... mere goals seem a bit pedestrian. No, where you are the only thing left to shoot for is absolute and total <<if $fetish.sissy>>SISSI <</if>>Secretary perfection. Towards that end I have gone ahead and enabled full visibility in your SMART <<if $fetish.sissy>>SISSI<<else>>Secretary<</if>> Developmental Profile. I am sure that you will be able to use that information to really make me proud... but work can wait. <<if State.hasPlayed("event_party_rival_greet_1")>>It is once again Thursday... and thus,<<else>>It seems like just yesterday we were relaxing at the corporate retreat, but now it is already Thursday and<</if>> time for another party. You will be accompanying me again, of course.@@"<br>
<br>
[<<moveTo "event_party_repeat_invite" "Agree to accompany her to the party." 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo "event_party_invite_reject" "You actually had other plans for the evening..." 60>>]
<<default>>
"@@.npc_manager;Well, that will be all for today. You may leave, <<=$player.first_name>>.@@"<br>
<br>
[<<moveTo "room_office_manager" 'You would like to talk about something.' 60 "<<set $scene.direct=true>>">>]<br>
[<<moveTo "room_office_after_work" "Leave the office." 60>>]
<</switch>>
</div>/*#
#desc: secretary salary calc
#status: FINISHED 0.4.0.0
#ignore_spell: edu
#*/
<<if $scene.workHours >= 6>>
<<if $scene.workEffective < 0>>
"@@.npc_manager;It appears that you worked many more hours than required. Such superb dedication... and yet you did not complete your weekly workload. You should really concentrate more during work and stop thinking about whatever it is a little ditz like you thinks about? You do not wish to end up as a bimbo, do you?@@"<br>
<br>
<<if setup.getTotalValue('bimbofication')<5>>
<<printThought "What, of course not! What kind of questions this?">>
<<elseif setup.getTotalValue('bimbofication')<10>>
<<printThought "No... I don't want to end up as a sexy sluttily-dressed Bimbo... what was I thinking just now?">>
<<else>>
<<printThought "My mind is empty, blank and happy...?">>
<</if>>
<br><br>
<<if $npc_manager.anger>$npc_manager.affection>>
"@@.npc_manager;That would be less of an problem if you excelled at other parts of your duties, but alas, you fail there as well. What am I ever going to do with you. Maybe re-edu... no, it is still too early for that...@@"
<<else>>
"@@.npc_manager;Well, at least you take your other duties seriously.@@"
<</if>>
<<else>>
"@@.npc_manager;Hmm, you managed to work even more than you needed to. That is the kind of commitment to excellence I am talking about. Well done.@@"<br>
<br>
<<if setup.getTotalValue('submission')<5>>
<<printThought "Well, of course, that's what I get paid for?">>
<<elseif setup.getTotalValue('submission')<10>>
<<printThought "Normally I wouldn't be this motivated, but it's very hard to not listen to her. She can be very... persuasive.">>
<<else>>
<<printThought "I live to serve!">>
<</if>>
<br><br>
<<if $npc_manager.anger>$npc_manager.affection>>
"@@.npc_manager;Still, I wish you would show this kind of dedication to ALL aspects of your work relationship with Social Interaction Service Syndicate Inc.@@"
<<else>>
"@@.npc_manager;And your obedience is praiseworthy as well. I think there lies a great future ahead for you in this company.@@"
<</if>>
<</if>>
<<elseif $scene.workHours > -6 || (Math.abs($scene.workHours) < 1)>>
<<if $scene.workHours >= 1>>
"@@.npc_manager;You worked a number of hours beyond what was required of you... While I am impressed, I do not wish you to consider such a requirement. Work-life balance is important and I do not wish you to... burn out prematurely.@@"
<<elseif $scene.workHours >= 0>>
"@@.npc_manager;You have not missed a single minute of work. Very good.@@"
<<elseif $scene.workHours >= -1>>
"@@.npc_manager;You missed less than a single hour of work. Try to do better next week, but I will grant you a favour and "round up" this time.@@"
<<elseif $scene.workHours > -7>>
"@@.npc_manager;You missed several hours in which you ought to have been at your desk. Let us see if your work performance is at least within reason.@@"
<<else>>
"@@.npc_manager;You missed over a day of work across the pay period... let us hope you worked extra hard to make up for it.@@"
<</if>>
<br><br>
<<if $scene.workEffective >= 0>>
<<if Math.abs($scene.workEffective) < 1>>
"@@.npc_manager;Hmm, you managed to finish all your work.@@"
<<else>>
"@@.npc_manager;Somehow, you managed to complete more work than required. Very efficient.@@"
<</if>>
<br><br>
<<if $npc_manager.anger>$npc_manager.affection>>
"@@.npc_manager;Still, I wish you would show this kind of dedication to ALL aspects of your work relationship with Social Interaction Service Syndicate Inc.@@"
<<else>>
"@@.npc_manager;And your obedience is praiseworthy as well. I think there lies a great future ahead for you in this company.@@"
<</if>>
<<else>>
"@@.npc_manager;Unfortunately you did not come close to finishing your workload. This is not acceptable.
<<if $npc_manager.anger>$npc_manager.affection>>
That would be less of an problem if you excelled at other parts of your duties, but alas, you fail them as well. What am I ever going to do with you. Maybe re-edu... no, it is still too early for that...
<<else>>
Well, at least you take your other duties seriously. But I need a secretary, not some ditzy Bimbo, do you understand that?
<</if>>
@@"
<</if>>
<<else>>
<<if $scene.workEffective >= 0>>
"@@.npc_manager;You missed a number of hours of work. <<if $scene.firstStage4>>To be expected with the move and all... but excuses are merely that, they do not actually restore time you are contractually expected to be at your desk.<<else>>Are you even taking this seriously?<</if>>
<<if Math.abs($scene.workEffective) < 1>>
Despite that you somehow managed to finish all your work.
<<else>>
Despite that you somehow managed to finish more work then necessary.
<</if>>
I am not sure if I should be impressed by your efficiency, or angry about your lack of motivation. You have to realise, that there is more to being a secretary then just the work. You have to be here to represent the company. You are the first thing people see when they come into my office, what sort of message does it say when they do not see you at all?
<<if $npc_manager.anger>$npc_manager.affection>>
If you would just put that efficiency to work with all your required responsibilities.
<<else>>
At least you take your other responsibilities seriously.
<</if>>
@@"
<<if $player.work.sendhomedate != null && setup.daysToDate($player.work.sendhomedate, $now) < 7>>
<br><br>
You try to point out that you only missed hours because she sent you home early, but she merely shakes her head. "@@.npc_manager;And why is it that I sent you home? It was due to you being ill-prepared for work, failing the quite simple uniform requirements I have given you and, in so doing, being unable to properly represent the company. Which, as I seem to be constantly needing to remind you, is a major portion of your job. Being dressed for work is a component of your performing work, so claiming you were unable to do the latter due to failing the former is not remotely a viable excuse.@@"
<</if>>
<<else>>
"@@.npc_manager;You missed quite a number of hours this week. <<if $scene.firstStage4>>To be expected with the move and all... but excuses are merely that, they do not actually restore time you are contractually expected to be at your desk.<<else>>Are you even taking this seriously at all?<</if>> And you did not finish your workload either. Who would have guessed?@@"<br>
<br>
<<if setup.getTotalValue('bimbofication')<5>>
<<printThought "I really should take this serious if I want to keep this job!">>
<<elseif setup.getTotalValue('bimbofication')<10>>
<<printThought "No... it's just there's so much, like, going on in my head...">>
<<else>>
<<printThought "Thinking is hard!">>
<</if>>
<br><br>
<<if $npc_manager.anger>$npc_manager.affection>>
"@@.npc_manager;That is a big problem, since you take none of your duties serious. I think I have to recommend you for re-education. Yes, that might solve your issues... hopefully.@@"
<<else>>
"@@.npc_manager;Well, at least you take your other duties seriously. But I need a secretary, not some air headed Bimbo Doll. Do you not understand that?@@"
<</if>>
<</if>>
<</if>>
<br><br>
<<if $player.sec_style.body.breasts == "money">>
<<if $player.body.breastsize[0] == 0>>
"@@.npc_manager;Alas, I cannot credit you with the previously agreed upon bonus for having breasts... as you do not, in fact, have such. Perhaps a trip to the surgeon might be in order if you wish to maximise your... assets?@@"
<<else>>
"@@.npc_manager;And of course, there is the fifty credit bonus for those lovely breasts of yours. Definitely part of the full "representative position" package.@@"
<</if>>
<br><br>
<</if>>
<<if $scene.firstStage4>>
"@@.npc_manager;Now, this being your first week on the floor, and it being such an... exciting week
<<if $scene.bonus > 0>>
I was going to cut you some slack, but you managed to complete more than the standard allotment of work — despite your reduced hours! I am thus VERY proud to award you your bonus of <<=$scene.bonus>>%. I also have added a little fifty credit one-time extra, call it moving expenses.
<<else>>
I am going to ignore your underperformance and not penalise your pay. Though next week will be a full one, and I will be wanting to see you right back to meeting expectations. Just in case you were counting on that bonus I have decided to grant you a one-time flat bonus of fifty credits — call it moving expenses.
<</if>>
I do believe that should be more than fair.
@@"
<<else>>
"@@.npc_manager;Because of your overall performance this week I will be applying
<<if $scene.bonus>0>>
a total bonus of <<=$scene.bonus>>%,
<<elseif $scene.bonus<0>>
a penalty reduction of <<=-$scene.bonus>>%,
<<else>>
your normal salary,
<</if>>
<<if $scene.oneTimePay > 0>>
I have also added a one-time bonus <<=$scene.oneTimePay>> of as previously promised,
<<elseif $scene.oneTimePay < 0>>
I have also deducted <<=-$scene.oneTimePay>> from your total to cover the expense of your severe mistakes,
<</if>>
<<if $scene.advance > 0 >>
finally, note that your pay today is reduced by the <<=$scene.advance>> credit advance that I already gave you,
<</if>>
which makes for a total of <<=$scene.salary>> credits.<<if $scene.completeBondageTask>> Note that I would quite recommend you continue to take advantage of sleep bondage... but, unless you request another advance, I will not be enforcing that requirement.<</if>>@@"
<</if>>
<br><br>
<<if $scene.oneTimePay<0>>
<<printThought "Ugh, why did I screw up that bad...">>
<<elseif $scene.bonus>0 || $scene.oneTimePay>0>>
<<printThought "Oh, nice. A bonus!">>
<<elseif $scene.bonus<0>>
<<printThought "Oh great. A penalty. I can't afford to get those too often!">>
<<else>>
<<printThought "Nice! Payday!">>
<</if>>
<<hint $options $scene.workString>>
<<if $scene.bonus >= 25 && $player.work.secretaryRank < 0>>
<br><br>
"@@.npc_manager;I will note that performance this efficient would be enough for a raise... if you were not on probation. Keep this up though and, once you qualify fully, you will have a rocket-ship strapped to your career!@@"
<</if>>/*#
#desc: paid for work as secretary over the phone due to not being in-office
#status: RELEASED 0.6.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $sceneVisibility = $ALONE>>
<<set _nextDate = setup.setNextDate($now, 7, 19, 0)>>
<<removeEvent 'weekly_salary_phonecall'>>
<<addEvent 'weekly_salary_phonecall' _nextDate>>
<<include calcSalary>>
<<set $currentcall = true>>
<</if>>
<<set $player.location to "Phonecall">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/phonecall.png">>
<div id="invframe" class="scrolltext">
<<if $npc_manager.flags.evil == 1>>
"@@.npc_manager;Your pay of <<=$scene.salary>> has been wired to you<<if $scene.bonus < 0>>, this is after the penalty for your poor performance. Endeavour to work harder next week<<else>>, I do not have time to go through all of your efforts, this is far more efficient<</if>>.@@"<br>
<br>
She hangs up.<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Put your phone away and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = $scene.beforetasklocation.pop()>>">>]
<<else>>
<<if $scene.directCall>>
"@@.npc_manager;Now I am sure your mind is abuzz with things beyond the office, but I would be remiss if I skipped the compensation for your work efforts. The basics first. You were on the job for a total of <<=Math.round($scene.totalWorked)>> of your required <<=Math.round($player.work.hoursperWeek)>> hours this week while completing <<=Math.round($scene.effectiveWorked)>> hours worth of work.@@"
<<else>>
Your phone rings, it is <<=setup.getNpcName('npc_manager', 'formal')>>.<br>
<br>
"@@.npc_manager;Hello, just wanted to let you know that today was payday so I went ahead and wired your compensation. You were on the job for a total of <<=Math.round($scene.totalWorked)>> of your required <<=Math.round($player.work.hoursperWeek)>> hours this week while completing <<=Math.round($scene.effectiveWorked)>> hours worth of work.@@"
<</if>>
<br><br>
<<include salarySummary>>
<br><br>
"@@.npc_manager;Enjoy your payment. Perhaps next week we will be able to do this in person. Good day.@@"<br>
<br>
[<<moveTo $scene.beforetasklocation.last() "Hang up and get back to what you were doing." $scene.continueTaskTime "<<set $currentcall = false>><<set $scene.beforetasklocation.pop()>>">>]
<</if>>
</div>/*#
#desc: manager may start trusting player w/key
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<if $npc_manager.affection > $npc_manager.anger && $npc_manager.anger < 5 && !$daily.revokedKeyToday>>
<<set $scene.returnKey = false>>
<<if setup.getChastityLevel() == 5>>
<<if setup.isItemEquipped("data_plug")>>
<<applyExperience 'anal' 18 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<set $player.timebased.horny = 15>>
<<else>>
<<applyExperience 'anal' 15 'terrible' $SEEN_FRIEND>>
<<applyExperience 'submission' 10 'terrible' $SEEN_FRIEND>>
<<set $player.timebased.horny = 10>>
<</if>>
<<elseif !setup.checkItemTypeTag('cage', ['restrictedkey']) && $npc_manager.trigger.forgotten_cage < 3>>
<<set $scene.returnKey = true>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<elseif !setup.checkItemTypeTag('cage', ['restrictedkey']) && $npc_manager.anger == 0 && $npc_manager.affection == 10>>
<<set $scene.returnKey = true>>
<<set $scene.sissy_underwear_gift = !($npc_manager.flags.bad_girl.got_sissy_underwear || $npc_manager.flags.good_girl.got_sissy_underwear)>>
<<if $scene.sissy_underwear_gift>>
<<set $scene.sissy_set = ''>>
<<if setup.checkItemOwned("sissy_panties_pink") && setup.checkItemOwned("sissy_garter_pink") && setup.checkItemOwned("sissy_bra_pink") && setup.checkItemOwned("sissy_stockings_pink")>>
<<set $scene.sissy_set = 'full'>>
<<elseif setup.checkItemOwned("sissy_panties_pink") || setup.checkItemOwned("sissy_garter_pink") || setup.checkItemOwned("sissy_bra_pink") || setup.checkItemOwned("sissy_stockings_pink")>>
<<set $scene.sissy_set = 'partial'>>
<</if>>
<<if !setup.checkItemOwned("sissy_panties_pink")>>
<<addItem "sissy_panties_pink">>
<</if>>
<<if !setup.checkItemOwned("sissy_bra_pink")>>
<<addItem "sissy_bra_pink">>
<</if>>
<<if !setup.checkItemOwned("sissy_garter_pink")>>
<<addItem "sissy_garter_pink">>
<</if>>
<<if !setup.checkItemOwned("sissy_stockings_pink")>>
<<addItem "sissy_stockings_pink">>
<</if>>
<<else>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<</if>>
<</if>>
<</if>>
<<set $scene.afterWorkEventTriggered = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Already halfway through packing up, you freeze in place, staring up at her until the silence starts to get awkward yet you find yourself unable to break her gaze and turn to go.<br>
<br>
"@@.npc_manager;So,@@" she finally says, sounding strangely loud in the previously quiet room.
<<if $npc_manager.affection > $npc_manager.anger && $npc_manager.anger < 5 && !$daily.revokedKeyToday && $npc_manager.flags.evil != 1>>
<<if setup.getChastityLevel() == 5>>
She smiles. "@@.npc_manager;Normally, this would be where I talked about how your good behaviour had earned you the option of taking the key to your chastity device home for the weekend... then you would be a good girl and tell me to hold onto it, but you have moved beyond that, your locked status now completely entwined with your continued employment and, dare I say, the contentment of your existence as a whole? How about, instead, I give you something that you would enjoy more?@@"<br>
<br>
Producing the remote, she begins tapping away, the plug in your rear suddenly swelling, buzzing softly as it begins shifting inside of you. Growing thicker at the base, the added girth traverses the length of the shaft buried in your hole, creating an effect akin to being fucked.<br>
<br>
You shudder, it is all you can do not to drop to all fours at the intensity of what is happening, the physical sensation of being pounded combined with the mental dimension that this is all at <<=ps(setup.getNpcName("npc_manager","formal"))>> control over you. She grins even wider as she effectively telekinetically fucks your ass, using your locked on, and in, device to give it to you hard and deep until you moan in pure <<if $fetish.sissy>>sissygasm<<else>>analgasm<</if>>.<br>
<br>
"@@.npc_manager;There, is that not better than some silly possibility of freedom? Enjoy your weekend!@@"<br>
<br>
Staggering slightly, you nod and head for the door, the now only modestly sized plug shifting inside your tender hole with every step.<br>
<br>
[<<moveTo "room_elevator_home" "Leave.">>]
<<elseif $npc_manager.stage >= 3 && $player.sec_style.submission.permanent_key == "" && !State.hasPlayed("event_perm_key_greed_1")>>
She smiles. "@@.npc_manager;So, your wonderful behaviour of late has me in the mood to offer you your key back...@@" She produces the key and it instantly captivates your gaze as she she extends it, and then snatches it back. "@@.npc_manager;But then I thought about it a bit more. With you being so well behaved, well... certainly that would extend to wishing to remain locked and under my total control. Such would also be a nice efficiency boost, saving us both the time and mental energy to worry about who is supposed to have the key or any of that in favour of a firm recognition that the answer is always the same: I hold the key, you remain locked.@@"<br>
<br>
Your heart races as she twiddles the key in her fingers... is she really proposing you permanently give up control?<br>
<br>
She smiles wider, clearly enjoying how attentive you are, "@@.npc_manager;So, what do you think? Give up the key, assert your good girl qualifications... and I will even throw in a twenty credit a week pay bump in appreciation of the time-savings and assured greater job efficiency such a situation will induce.@@"<br>
<br>
<<printThought "Am I really willing to accept permanent chastity... for only twenty credits a week?">><br>
<br>
As if reading your mind she grins, having an answer ready before you can even speak a word. "@@.npc_manager;I know twenty credits may not sound like much, but, if you think about it, it would be more than a ten percent increase from your base pay... for doing nothing! If you think of it that way, can you possibly afford to say no?@@"<br>
<br>
[<<moveTo 'event_perm_key_greed_1' 'Accept her offer and give up your key.' 60 "<<set $scene.action='accept'>>">>]<br>
[<<moveTo 'event_perm_key_greed_1' 'Decline her offer, but say she should continue to hold on to the key.' 60 "<<set $scene.action='nokey'>>">>]<br>
[<<moveTo 'event_perm_key_greed_1' 'Decline her offer and take possession of your key.' 60 "<<set $scene.action='key'>>">>]
<<elseif $npc_manager.trigger.forgotten_cage >= 3 && $scene.returnKey>>
<<if $npc_manager.trigger.forgotten_cage >= 3>>
"@@.npc_manager;In light of your recent behaviour I was considering offering you control of your chastity key... and then I remembered the reprehensible behaviour that forced me to confiscate the key in the first place.@@"
<<else>>
"@@.npc_manager;In light of your recent behaviour I was considering offering you control of your chastity key, but then I recalled how wonderfully secure you are, how great it is to be able to administer a punishment anywhere, any time and well... exposing you to even the temptation of freedom seems quite the wrong idea.@@"
<</if>>
<br><br>
You tremble in your prison at the memory of the painful shocks it is capable of administering.<br>
<br>
<<if $scene.sissy_underwear_gift>>
"@@.npc_manager;Thus, for your own good, I will be retaining control of your key, but still... I thought you should know that I have been impressed with your behaviour of late. That said well... normally I consider a <<if $fetish.sissy>>SISSI<<else>>girl<</if>> voluntarily giving up control of their key to be an important step in their development, but with you... she shakes her head. No, I just cannot trust you that far... still, I would hardly wish for you to go without the lovely bonus that I had planned so here.@@"<br>
<br>
She hands you a pink bag. Looking inside you find it filled with the pinkest, <<if $fetish.sissy>>sissiest<<else>>girliest<</if>> underthings imaginable.
<<if $scene.sissy_set == 'full'>>
You decide it would be wise not to inform her that you already have a set just like this.
<<elseif $scene.sissy_set == 'partial'>>
You realise that they will "finish" the set you already begun collecting.
<</if>>
You expect her to insist you change into them immediately, but she merely waves you off. "@@.npc_manager;Enjoy the gift, you are dismissed.@@"<br>
<br>
You hurry off before she considers "testing" the evil device she has left locked on you.
<<else>>
"@@.npc_manager;Thus, for your own good, I will be retaining control of your key, but still... I thought you should know that I have been impressed with your behaviour of late.@@"<br>
<br>
You brace for something else, but she merely waves in dismissal and you hurry off lest she consider "testing" the evil device she has left locked on you.
<</if>>
<br><br>
[<<moveTo "room_elevator_home" "Leave.">>]
<<elseif !setup.checkItemTypeTag('cage', ['restrictedkey']) && $npc_manager.affection == 10 && $npc_manager.anger == 0 && $scene.returnKey>>
"@@.npc_manager;You know, after all this time... I think you have finally learned your lesson. Yes, your behaviour of late has been quite exemplary, enough that I am willing to again trust you to hold on to your key.@@"<br>
<br>
Your fingers tremble as she presents the key. It has been so long, do you even want it anymore? Or is she correct, and that you're better leaving it in her possession...<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_special_2' 'Accept the key.' 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_special_2' 'Decline the key.' 60 "<<set $scene.accept = false>>">>]
<<elseif !setup.checkItemTypeTag('cage', ['restrictedkey']) && $npc_manager.affection == 10 && $npc_manager.anger == 0 && $scene.returnKey>>
"@@.npc_manager;You know, after all this time... I think you have finally learned your lesson. Yes, your behaviour of late has been quite exemplary, enough that I am willing to again trust you to hold on to your key.@@"<br>
<br>
Your fingers tremble as she presents the key. It has been so long, do you even want it anymore? Or is she correct, and that you're better leaving it in her possession...<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_special_2' 'Accept the key.' 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_special_2' 'Decline the key.' 60 "<<set $scene.accept = false>>">>]
<<else>>
"@@.npc_manager;In light of your recent behaviour I wanted to make you an offer.@@"<br>
<br>
You tense in anticipation, but she smiles to put you at ease.<br>
<br>
"@@.npc_manager;Oh it is nothing like that. You see I was thinking that you have shown sufficient improvement to the point that I believe I can trust you with possession of your key.@@"<br>
<br>
Producing the key to your chastity device she extends her hand to offer it to you.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_special_2' 'Accept the key.' 60 "<<set $scene.accept = true>>">>]<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_special_2' 'Decline the key.' 60 "<<set $scene.accept = false>>">>]
<</if>>
<<elseif $daily.revokedKeyToday>>
"@@.npc_manager;Now, overall your performance is on the right track... but your recent behaviour...@@" she shakes her head in disappointment. "@@.npc_manager;Clearly it would be hardly a lesson to confiscate your key for less than a day, so I will, of course, be retaining control of things. Though I do want you to remember that proper behaviour could see me changing my mind in the future... well, should you actually want the key back, though if you want me to keep it you would be better to ask rather than... brat your way into confiscation. That will be all for today. Run along, now.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Leave the office." 60>>]
<<elseif $player.sec_style.clothing.female != "" && !$npc_manager.flags.good_girl.got_sissy_underwear && !$npc_manager.flags.bad_girl.got_sissy_underwear>>
"@@.npc_manager;Normally I would consider whether to allow you to take your key home with you, but, well... your behaviour of late tells me that there is just no way I can trust you to be out of my control for that long.@@"<br>
<br>
You can sense there is more that just the continuation of the status quo and wait for her to continue.<br>
<br>
"@@.npc_manager;While you remaining <<if setup.isCage()>>caged<<else>>locked in that lovely belt<</if>> with your safely key under my control is certainly nothing like a problem the fact is that your behaviour proves such measures are required to keep you in line. Still, past failure is does not prevent future improvement, and I had a thought that perhaps some new clothing might help. We have made such wonderful strides with your overall attire, but I was thinking that maybe the real solution is to go back the start and focus on the fundamentals.@@"<br>
<br>
She hands you a pink bag.<br>
<br>
"@@.npc_manager;Go on, now, open it.@@"<br>
<br>
[<<moveTo 'event_manager_good_girl_sissy_panties' 'Look inside the bag.' 60 "<<set $scene.afterWork = true>><<useClothSetPush 'daily_evaluation_clothes'>>">>]
<<else>>
"@@.npc_manager;I have been considering your performance as a whole and well... work productivity aside your attitude... it needs some work. Thus I will be holding on to your key for another week, for your own good, you understand.@@"<br>
<br>
You open your mouth to respond, but think better of it merely nodding silently.<br>
<br>
She smiles. "@@.npc_manager;A good start. That will be all for today. Run along, now.@@"<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Leave the office." 60>>]
<</if>>
</div>/*#
#desc: manager may start trusting player w/key
#status: FINISHED 0.7.0.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $npc_manager.flags.trustplayerwithkey = true>>
<<if !$scene.accept>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<if !$npc_manager.flags.unlocked_badsissy1>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_1'
0
'event_manager_theme_badsissy1'
true
>>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem $scene.keyId>>
<<set $scene.cage_locked = $inventory[setup.getItemFromType("cage")].status.lock>>
<<if !$scene.cage_locked>>
<<set _cageId = setup.getItemFromType("cage")>>
<<manipulateItem _cageId "lock" true>>
<</if>>
<<applyExperience 'submission' 8 'very' $SEEN_FRIEND>>
<<else>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $npc_manager.flags.chastitydays = 0>>
<<set $npc_manager.flags.hascagekey = false>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<addItem _keyId>>
<</if>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if !$scene.accept>>
You ask if she would keep the key for you and she beams.<br>
<br>
"@@.npc_manager;Oh, that is just so, so wonderful to hear. I was afraid that you might be tempted by the promise of "freedom"@@" she somehow manages to make the word sound unpleasant. "@@.npc_manager;But you know better than that, hmm? Well, just goes to show that we made the right decision in the first place. Still, this only reinforces my trust in you so you may feel free to request the key in the future but... well, you seem to already understand what is proper.@@"<br>
<br>
The key, hanging from her necklace, slides down her cleavage and she smiles.
<<if !$npc_manager.flags.good_girl.got_sissy_underwear>>
"@@.npc_manager;Well, do have a wonderful weekend. Mine will, alas, be busy, and yet improved knowing that you have entrusted me with this honour. Oh, and <<=$player.first_name>>? Well, let your weekend be improved by the fact that I have a special reward planned for you on Monday to match the gift you have just given me.@@"
<<else>>
"@@.npc_manager;Well, do have a wonderful weekend. Mine will, alas, be busy, and yet improved knowing that you have entrusted me with this honour. Do try to relax, you have doubly proved yourself today and that can only mean good things for your continued career advancement.@@"
<</if>>
<<else>>
She frowns at your decision, but hands over the key without resistance.<br>
<br>
"@@.npc_manager;Have plans for the weekend? Well, no matter, just so long as you are back here on Monday, locked, secured, cute and ready to obediently perform your duties.@@"
<</if>>
She turns and disappears back into her office.<br>
<br>
[<<moveTo "room_office_sissy_secretary_work_fridayafternoon" "Get ready to head home.">>]
</div>/*#
#desc: ask about working alternate afternoon shift
#status: FINISHED 0.7.6.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.askAltWork = true>>
<<if $npc_manager.flags.evil == 1>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<<elseif $player.work.workPensum >= 2*$player.work.hoursperWeek>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<elseif $player.work.workPensum >= $player.work.hoursperWeek>>
<<incrementEmotion 'affection' 'npc_manager' 1>>
<<elseif $player.work.workPensum >= $player.work.hoursperWeek/2>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<else>>
<<incrementEmotion 'anger' 'npc_manager' 1>>
<</if>>
<<set $scene.hormoneevent = $events.hasOwnProperty('hormones_checkin') && setup.compareDay($now, $events.hormones_checkin.trigger.date)>>
<<if $scene.hormoneevent>>
<<include "hormone_inspect_data">>
<<set $scene.hormonefail = $player.flags.mealplan.hormones == "none">>
<<postponeEvent 'hormones_checkin' 7>>
<</if>>
<</if>>
<<set $player.location = "Office of <<=setup.getNpcName('npc_manager', 'formal')>>">>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR "./images/locations/sissy_office.png" setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<=setup.getNpcName("npc_manager","formal")>> looks up as you enter her office and ask permission to work an alternate afternoon shift.<br>
<br>
<<if $npc_manager.flags.evil == 1>>
"@@.npc_manager;An alternate shift? No, no. I do not care what efficiency you may <<if $player.work.workPensum >= $player.work.hoursperWeek>>have<<else>>or, more pointedly, have not<</if>> performed, you are a <<if $fetish.sissy>>SISSI <</if>>Secretary... MY <<if $fetish.sissy>>SISSI <</if>>Secretary, and I will not have you gallivanting off and wasting time on other activities.@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' "Return to your desk." 60>>]
<<elseif $scene.hormoneevent && $scene.hormonefail>>
"@@.npc_manager;Are you not forgetting something? Do not bother answering. Not only have you forgotten your hormone inspection... you have forgotten the hormones themselves!@@"<br>
<br>
"@@.npc_manager;What did I tell you about keeping up with your hormone supplements? They are for your own good, remember.@@"<br>
<br>
<<printThought "Wait, how could she know that? The effects can't be that visible... can they?">><br>
<br>
<<if $player.flags.boiless.inspections_failed >= 2>>
"@@.npc_manager;This repeated disobedience just cannot be tolerated. You need a proper meal.@@"
<<else>>
"@@.npc_manager;I realise this is your first failure, but it comes while you are asking for a favour! Best to nip this in the bud right here and now.@@"
<</if>>
<br><br>
<<if $player.sec_style.sex.boiless_bottle != "">>
[<<moveTo "event_manager_hormone_inspect_fail_2_1" "Continue." 600 "<<set $scene.workEventReturn='room_office_sissy_secretary_work_afternoon_start'>>">>]
<<else>>
[<<moveTo "event_manager_hormone_inspect_fail_1" "Continue." 600 "<<set $scene.workEventReturn='room_office_sissy_secretary_work_afternoon_start'>>">>]
<</if>>
<<else>>
<<set _afternoon = setup.setNextDate($now, 0, 13, 1)>>
<<if $scene.afternoonWorkEvent>>
<<set _workEvent = $scene.afternoonWorkEvent>>
<</if>>
<<set _workEvent = setup.checkWorkEvents($player, _afternoon, 0)>>
<<if _workEvent && _workEvent.triggered && $workEvents[_workEvent.eventId].trigger.priority == 1000>>
She glances at her computer and shakes her head. "@@.npc_manager;No, I think I will be needing you in-office this afternoon. No alternate shifts today.@@"<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' "Return to your desk." 60>>]
<<elseif $player.work.workPensum >= $player.work.hoursperWeek>>
<<if $player.work.workPensum >= 2*$player.work.hoursperWeek>>
She smiles back at you, beaming with pride. "@@.npc_manager;Why of course! You have been so efficient this week, doing the work of at least two girls. Honestly I have hardly anything left for you to do anyway so it is quite for the best that you are showing such initiative as to cross-train in other matters. Go on then, I will see you in a few hours.@@"
<<elseif $player.work.workPensum >= 1.5*$player.work.hoursperWeek>>
She smiles back at you. "@@.npc_manager;Certainly, you have completed your assigned work and then some so I can definitely spare you for a few hours.@@"
<<else>>
She nods. "@@.npc_manager;You have completed your duties for the week as required, thus, per our agreement, you may certainly spend the next few hours honing some different skills.@@"
<</if>>
<br><br>
<<if $scene.hormoneevent>>
"@@.npc_manager;Oh, but first, your hormone inspection! With you taking on these additional responsibilities it is even more important that we monitor your health.@@"<br>
<br>
She stares at you for a moment and you would almost swear you saw her iris... rotate?<br>
<br>
<<switch $player.flags.mealplan.hormones>>
<<case "little">>
"@@.npc_manager;Hmm, a bit low, but within margins, I believe you would feel better at a higher dose, but that is, of course, up to you.@@"
<<case "normal">>
"@@.npc_manager;Wonderful, it appears that you are keeping on top of things.@@"
<<case "lots">>
"@@.npc_manager;Oh you are practically overflowing with happy hormones, what a delight. I would warn you that such high dosage can have... side effects, but I imagine you would consider them to be less side effects than bonus features?@@"
<<default>>
ERROR: unhandled hormone quantity: <<=$player.flags.mealplan.hormones>>
<</switch>>
<br><br>
"@@.npc_manager;Now, what sort of alternate shift were you contemplating?@@"<br>
<br>
<</if>>
<<include "afternoonAltShiftChoice">>
<<elseif $npc_manager.stage == 5>>
She pauses and then nods.
<<if $npc_manager.flags.cruel>>
"@@.npc_manager;Your actual work performance has been... insufficient for this, but there IS the matter of <<=setup.getNpcName("npc_rival","formal")>>... and you have some work to do there so... how are you going to make progress?@@"
<<else>>
"@@.npc_manager;Now, normally your performance would be insufficient for me to let you go... but, well... there is the matter of <<=setup.getNpcName("npc_rival","formal")>>... and you have some work to do there so... how do you wish to proceed?@@"
<</if>>
<br><br>
<<include "afternoonAltShiftChoice">>
<<else>>
<<if $player.work.workPensum >= $player.work.hoursperWeek/2>>
She pauses, taking a look at you before slowly shaking her head. "@@.npc_manager;You know the deal — you only get to do other fun things after your normal duties have been completed. Go on back to your desk and get to work, maybe next week you will think to be a bit more efficient. Now return to your desk: we both have work yet to do today.@@"
<<else>>
She laughs. "@@.npc_manager;Really? Your first duty is to me. Cross-training may have the potential to make you a better <<if $fetish.sissy>>SISSI <</if>>secretary, but that is worthless if you fall behind on the basics. While I daresay it would be impossible for you to catch up to expectations in the remainder of the afternoon, but you are definitely going to try, go back to your desk.@@"
<</if>>
<br><br>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' "Return to your desk." 60>>]
<</if>>
<</if>>
</div><<if setup.checkItemOwned("maid_uniform_latex_black")>>
<<if $fetish.milking && ($player.sec_style.sex.milking != "" || $npc_barista.flags.milking.first_seen) && $player.flags.work_coffee.times_worked > 3>>
<<if $npc_barista.stage >= 5 && $npc_barista.stage < 10>>
<<if $player.flags.work_coffee.times_work_milk == 0>>
[<<moveTo 'event_work_coffee_nobarista' "Go work as a sexy latex maid at Coffee Shop 52." 60>>] <<include "latexMaidChoice">><br>
<<else>>
[<<moveTo 'event_work_coffee_nobarista' "Go work as a sexy latex milk-maid at Coffee Shop 52." 60>>] <<include "latexMaidChoice">><br>
[<<moveTo 'event_work_coffee_nobarista' "Forgo milking and just work as a sexy latex maid at Coffee Shop 52." 60>>] <<include "latexMaidChoice">><br>
<</if>>
<<else>>
<<if $player.flags.work_coffee.times_work_milk == 0>>
[<<moveTo 'event_coffee_milking_equip_1' "Go work as a sexy latex maid at Coffee Shop 52." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>] <<include "latexMaidChoice">><br>
<<else>>
[<<moveTo 'event_coffee_job_milked_1' "Go work as a sexy latex milk-maid at Coffee Shop 52." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>] <<include "latexMaidChoice">><br>
[<<moveTo 'event_work_coffee_work' "Forgo milking and just work as a sexy latex maid at Coffee Shop 52." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>] <<include "latexMaidChoice">><br>
<</if>>
<</if>>
<<elseif $player.flags.work_coffee.coffee_skill > 0>>
[<<moveTo 'event_work_coffee_work' "Go work as a sexy latex maid at Coffee Shop 52." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>] <<include "latexMaidChoice">><br>
<</if>>
<</if>>
<<if $player.sec_style.submission.human_toilet>>
[<<moveTo 'event_work_piss_work_change' "Work a shift in the Executive Bathroom." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
<<else>>
<<if $npc_manager.flags.piss_drinking.available>>
[<<moveTo 'event_work_piss_work_voluntary_1' "Sneak up to work a shift in the Executive Bathroom." 60 "<<set $scene.voluntary=true>><<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
<</if>>
<<set _themeId = setup.findThemeId('npc_manager', 'other_work', 'theme_manager_alt_work_0')>>
<<if _themeId != -1 && $npc_manager.themes.other_work[_themeId].done > 0>>
[<<moveTo "event_manager_piss_drinking_greed_1" "Ask if you could earn some money working in the Executive Bathroom?" 60>>]<br>
[<<moveTo "event_manager_piss_drinking_obedient_1" 'Ask if you could spend the afternoon "honing your skills" in the Executive Bathroom?' 60>>]<br>
<</if>>
<</if>>
<<if $player.flags.move_fetish.bdsm || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_harsh') || setup.hasThreshold('dominance', 'dominance_other', 'dom_final_gentle')>>
[<<moveTo 'event_bdsm_work_repeatable_1' "Ask to put in some work in the Employee Discipline Department." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
<</if>>
<<if $player.flags.move_fetish.foot>>
[<<moveTo 'event_foot_work_repeatable_1' "Ask to spend the afternoon at the company shoeshine station." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
<</if>>
<<if $player.flags.move_fetish.penis>>
[<<moveTo 'event_oral_work_repeatable_1' "Ask to spend the afternoon orally assisting with employee morale at the water coolers." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
<</if>>
<<if $player.flags.move_fetish.bondage>>
[<<moveTo 'event_bondage_work_repeatable_1' "Ask to spend the afternoon bound as a piece of living furniture." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
<</if>>
<<if $player.flags.move_fetish.bestiality>>
[<<moveTo 'event_kennel_repeatable_1' "Ask to work a shift at the Bitch's Paradise Kennel." 60 "<<set $scene.shortWorkDay=true>><<set $player.work.nowWorking = true>><<set $player.work.style='alt'>>">>]<br>
<</if>>
[<<moveTo 'room_office_sissy_secretary_work_afternoon_start' "Change your mind and return to your desk." 60>>]<<if setup.checkItemInInventory("manager_paddle")>>
<<if $npc_barista.flags.can_meet>>
[<<moveTo "event_steal_paddle_1" 'Drop in on <<=setup.getNpcName("npc_barista", "nickname")>> at Cafe 52.' 120 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<if $player.plocation != "event_work_doctor_office" && ($currentTasks.hasOwnProperty('event_doctor_first_appointment') || $npc_work_doctor.flags.physical.done) && !State.hasPlayed("event_betray_work_doctor_7")>>
[<<moveTo "event_steal_paddle_1" 'Visit <<=setup.getNpcName("npc_work_doctor", "formal")>>.' 120 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<if $npc_boss.flags.visit_unlock>>
<<if $scene.visitBoss>>
<<if !passage().contains("boss")>>
[@@.link_locked;You have already attempted to visit <<=setup.getNpcName("npc_boss", "formal")>> today.@@]<br>
<</if>>
<<elseif $npc_boss.flags.data_crystal < 2>>
[<<moveTo "event_work_boss_first_1" 'Venture up to <<=ps(setup.getNpcName("npc_boss", "formal"))>> top-floor office.' 600 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[<<moveTo "event_work_boss" 'Venture up to <<=ps(setup.getNpcName("npc_boss", "formal"))>> top-floor office.' 600 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<</if>>
<<if $npc_development.flags.class >= 4>>
<<if $now.getUTCDay() == 5>>
[<<moveTo "event_steal_paddle_1" 'Go see <<=setup.getNpcName("npc_development", "formal")>> for some job tutoring.' 120 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[@@.link_locked;<<=setup.getNpcName("npc_development", "formal")>> only has time to teach you on Fridays.@@]<br>
<</if>>
<</if>>
<<if $npc_primrose.profile>>
<<if State.hasPlayed("event_boss_missions_primrose_3")>>
[@@.link_locked;You have betrayed and destroyed <<=setup.getNpcName("npc_primrose", "formal")>>, <<his npc_primrose>> lab converted to storage.@@]<br>
<<elseif $npc_primrose.stage >= 3 || State.hasPlayed("event_post_destroy_primrose_directions_1")>>
[<<moveTo "event_steal_paddle_1" 'Visit <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab.' 120 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif $npc_primrose.stage >= 2>>
[@@.link_locked;You don't think you could navigate your way to <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab on your own. Perhaps <<=setup.getNpcName("npc_work_doctor", "formal")>> could give directions?@@]<br>
<</if>>
<</if>>
[<<moveTo "event_steal_paddle_1" "Back to the lobby." 180 "<<set $daily.homeShortcut=false>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "event_steal_paddle_1" "Head straight home." 300 "<<set $daily.homeShortcut=true>><<set $player.cutscene.lockinventory=true>>">>]
<<else>>
<<if $npc_barista.flags.can_meet>>
<<if State.hasPlayed("event_boss_destroy_psychiatrist_7")>>
[@@.link_locked;You have betrayed <<=setup.getNpcName("npc_barista", "nickname")>> and can no longer visit her.@@]<br>
<<elseif $scene.visitBarista>>
<<if !passage().contains("barista")>>
[@@.link_locked;You have already dropped in on <<=setup.getNpcName("npc_barista", "nickname")>> today.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_barista_afterwork_chat" 'Drop in on <<=setup.getNpcName("npc_barista", "nickname")>> at Cafe 52.' 180 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_betray_work_doctor_7")>>
<<if $scene.visitDoctor>>
[@@.link_locked;You have already visited <<=setup.getNpcName("npc_hucow", "full")>> today.@@]<br>
<<elseif State.hasPlayed("event_post_destroy_work_doctor_office_first")>>
<<if ($npc_primrose.stage >= 3 || State.hasPlayed("event_post_destroy_primrose_directions_1")) && !State.hasPlayed("event_post_destroy_evil_nurse_return_1")>>
[<<moveTo "event_post_destroy_evil_nurse_return_1" 'Visit <<=ps(setup.getNpcName("npc_work_doctor", "formal"))>> former lab.' 180 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[<<moveTo "event_post_destroy_work_doctor_office" 'Visit <<=ps(setup.getNpcName("npc_work_doctor", "formal"))>> former lab.' 180 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<else>>
[<<moveTo "event_post_destroy_work_doctor_office_first" 'Visit <<=ps(setup.getNpcName("npc_work_doctor", "formal"))>> former lab.' 180 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<<else>>
<<if $player.plocation != "event_work_doctor_office" && ($currentTasks.hasOwnProperty('event_doctor_first_appointment') || $npc_work_doctor.flags.physical.done) && !State.hasPlayed("event_betray_work_doctor_7")>>
<<if $scene.visitDoctor>>
<<if !passage().contains("work_doctor")>>
[@@.link_locked;You have already visited <<=setup.getNpcName("npc_work_doctor", "formal")>> today.@@]<br>
<</if>>
<<else>>
[<<moveTo "event_work_doctor_office" 'Visit <<=setup.getNpcName("npc_work_doctor", "formal")>>.' 180 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<</if>>
<</if>>
<<if $npc_boss.flags.visit_unlock>>
<<if $scene.visitBoss>>
<<if !passage().contains("boss")>>
[@@.link_locked;You have already attempted to visit <<=setup.getNpcName("npc_boss", "formal")>> today.@@]<br>
<</if>>
<<elseif $npc_boss.flags.data_crystal < 2>>
[<<moveTo "event_work_boss_first_1" 'Venture up to <<=ps(setup.getNpcName("npc_boss", "formal"))>> top-floor office.' 600 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[<<moveTo "event_work_boss" 'Venture up to <<=ps(setup.getNpcName("npc_boss", "formal"))>> top-floor office.' 600 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<</if>>
<<if $npc_development.flags.class >= 4>>
<<if $now.getUTCDay() == 5>>
<<if $scene.visitedDevelopment>>
[@@.link_locked;You already dropped in on <<=setup.getNpcName("npc_development", "formal")>> today.@@]<br>
<<elseif $npc_manager.stage == 5 && State.hasPlayed("event_primrose_development_presentation_7") && !State.hasPlayed("event_work_hr_development_stage5_1")>>
[<<moveTo "event_work_hr_development_stage5_1" 'Go see <<=setup.getNpcName("npc_development", "formal")>> for some job tutoring.' 180 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif $npc_development.flags.smart_class>>
[<<moveTo "event_school_smart_redo_1" 'You have finished <<=ps(setup.getNpcName("npc_development", "formal"))>> tutoring... but maybe a refresher would be fun?' 180 "<<set $player.cutscene.lockinventory=true>><<set $scene.visitedDevelopment = true>>">>]<br>
<<else>>
[<<moveTo "event_school_smart_redo_1" 'Go see <<=setup.getNpcName("npc_development", "formal")>> for some job tutoring.' 180 "<<set $player.cutscene.lockinventory=true>><<set $scene.visitedDevelopment = true>>">>]<br>
<</if>>
<<else>>
[@@.link_locked;<<=setup.getNpcName("npc_development", "formal")>> only has time to teach you on Fridays.@@]<br>
<</if>>
<</if>>
<<if $npc_primrose.profile>>
<<if State.hasPlayed("event_boss_missions_primrose_3")>>
[@@.link_locked;You have betrayed and destroyed <<=setup.getNpcName("npc_primrose", "formal")>>, <<his npc_primrose>> lab converted to storage.@@]<br>
<<elseif $scene.visitPrim>>
<<if !passage().contains("primrose")>>
[@@.link_locked;You have already visited <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab today.@@]<br>
<</if>>
<<elseif $npc_primrose.flags.evil == 1>>
<<if State.hasPlayed("event_primrose_destruction_finale_2")>>
<<if State.hasPlayed("event_primrose_destruction_finale_development")>>
[@@.link_locked;<<=ps(setup.getNpcName("npc_primrose", "formal"))>> is closed off and unoccupied since you turned <<him npc_primrose>> over to <<=setup.getNpcName("npc_development","formal")>>.@@]<br>
<<elseif State.hasPlayed("event_primrose_destruction_finale_discipline")>>
[@@.link_locked;<<=ps(setup.getNpcName("npc_primrose", "formal"))>> is closed off and unoccupied since you turned <<him npc_primrose>> over to <<=setup.getNpcName("npc_discipline","formal")>>.@@]<br>
<<elseif State.hasPlayed("event_primrose_destruction_finale_nursula")>>
[@@.link_locked;<<=ps(setup.getNpcName("npc_primrose", "formal"))>> is closed off and unoccupied since you turned <<him npc_primrose>> over to <<=setup.getNpcName("npc_evil_nurse","formal")>>.@@]<br>
<<elseif State.hasPlayed("event_primrose_destruction_finale_dominance_yes")>>
[@@.link_locked;<<=setup.getNpcName("npc_primrose", "formal")>> is in secure storage and <<his npc_primrose>> lab sits closed off and unoccupied.@@]<br>
<<else>>
ERROR: unexpected primrose state!
<</if>>
<<elseif State.hasPlayed("event_nursula_return_4") || State.hasPlayed("event_post_destroy_evil_nurse_return_2")>>
<<if setup.hasRandomEvent('elevator_home', 'primrose_redemption_lab', true)>>
[<<moveTo "event_primrose_redemption_5_purification_results_1_alt" 'Visit <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab.' 180 "<<set $player.cutscene.lockinventory=true>><<removeRandomEvent 'elevator_home' 'primrose_redemption_lab'>>">>]<br>
<<elseif State.hasPlayed("event_primrose_redemption_5_purification_results_9")>>
[<<moveTo "event_primrose_redemption_6_lab_closed" 'Visit <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab.' 180 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif State.hasPlayed("event_primrose_evil_lab_return")>>
[<<moveTo "event_primrose_evil_lab_repeat" 'Visit <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab.' 240 "<<set $scene.visitPrim=true>><<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[<<moveTo "event_primrose_evil_lab_return" 'Visit <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab.' 240 "<<set $scene.visitPrim=true>><<set $player.cutscene.lockinventory=true>><<set $scene.first=!State.hasPlayed('event_primrose_destruction_lab_evil_unavailable')>>">>]<br>
<</if>>
<<elseif $npc_primrose.stage >= 3 || State.hasPlayed("event_post_destroy_primrose_directions_1")>>
[<<moveTo "event_primrose_destruction_lab_evil_unavailable" 'Visit <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab.' 240 "<<set $scene.visitPrim=true>><<set $player.cutscene.lockinventory=true>><<set $scene.first=!State.hasPlayed('event_primrose_destruction_lab_evil_unavailable')>>">>]<br>
<</if>>
<<else>>
<<if $npc_primrose.stage >= 3 || State.hasPlayed("event_post_destroy_primrose_directions_1")>>
[<<moveTo "event_primrose_visit_repeat_1" 'Visit <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab.' 240 "<<set $scene.visitPrim=true>><<set $player.cutscene.lockinventory=true>>">>]<br>
<<elseif $npc_primrose.stage >= 2>>
[@@.link_locked;You don't think you could navigate your way to <<=ps(setup.getNpcName("npc_primrose", "first"))>> lab on your own. Perhaps <<=setup.getNpcName("npc_work_doctor", "formal")>> could give directions?@@]<br>
<</if>>
<</if>>
<</if>>
<<if $npc_primrose.flags.nursulaStyle>>
<<if $scene.visitNurse>>
[@@.link_locked;You already visited <<=setup.getNpcName("npc_evil_nurse", "formal")>> today, best not to tempt fate.@@]<br>
<<elseif State.hasPlayed("event_primrose_redemption_3_confrontation_6_pass")>>
[@@.link_locked;You're making real progress in repairing <<=setup.getNpcName("npc_primrose", "first")>>, visiting <<=setup.getNpcName("npc_evil_nurse", "formal")>> would be counter-productive.@@]<br>
<<elseif State.hasPlayed("event_ai_rescue_mission_5") && !State.hasPlayed("event_nursula_return_4")>>
[@@.link_locked;You successfully disposed of <<=setup.getNpcName("npc_evil_nurse", "formal")>> in the process of rescuing ... right?@@]<br>
<<elseif !State.hasPlayed("event_primrose_destruction_finale_2")>>
[<<moveTo "event_nursula_visit_asylum" 'Visit <<=setup.getNpcName("npc_evil_nurse", "formal")>> in the asylum.' 240 "<<set $scene.visitNurse=true>><<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_overnight_stay_intro") && !passage().startsWith("event_overnight_stay_")>>
<<if State.hasPlayed("event_overnight_stay_9")>>
[<<moveTo 'event_overnight_stay_1' "Report to floor 130 for another night in the Employee Betterment pilot program." 300>>]<br>
<<else>>
[<<moveTo 'event_overnight_stay_1' "Report to floor 130 about the Employee Betterment pilot program." 300>>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_theme_destroy_ai_pre")>>
<<if State.hasPlayed("event_destroy_ai_5")>>
[@@.link_locked;You already betrayed <<=setup.getNpcName("npc_ai","first")>> to <<=setup.getNpcName("npc_boss","formal")>>.@@]<br>
<<elseif setup.isItemEquipped("data_plug")>>
[<<moveTo "event_destroy_ai_1" 'Deliver <<=setup.getNpcName("npc_ai","first")>> to <<=setup.getNpcName("npc_boss","formal")>>.' 600 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[@@.link_locked;You can't deliver <<=setup.getNpcName("npc_ai","first")>> to <<=setup.getNpcName("npc_boss","formal")>> if she is not stuffed in your ass.@@]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_ai_stage5_infiltrate_call_1") && !State.hasPlayed("event_ai_stage5_infiltrate_14") && passage() != "event_ai_stage5_infiltrate_1">>
<<if setup.isItemEquipped("data_plug")>>
[<<moveTo "event_ai_stage5_infiltrate_1" 'Go looking for that Group 7 Access Terminal...' 600 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<<else>>
[@@.link_locked;You need <<=setup.getNpcName("npc_ai", "first")>> in your rear to interface with the Group 7 Access terminal.@@]<br>
<</if>>
<</if>>
<<if $npc_technician.flags.evil == 1>>
<<if $scene.visitTech>>
[@@.link_locked;You have already dropped in on the evil <<=setup.getNpcName("npc_technician","custom", "Tech Warlock")>> today.@@]<br>
<<else>>
[<<moveTo "event_evil_technician_visit" 'Drop in on the evil <<=setup.getNpcName("npc_technician","custom", "Tech Warlock")>>...' 600 "<<set $player.cutscene.lockinventory=true>>">>]<br>
<</if>>
<</if>>
<<if State.hasPlayed("event_janitor_elevator_2_3")>>
<<if $scene.visitJanitor>>
[@@.link_locked;You have already checked in with <<=setup.getNpcName("npc_janitor","first")>> today.@@]<br>
<<else>>
[<<moveTo "event_janitor_visit_1" 'Summon <<=setup.getNpcName("npc_janitor","first")>> for training.' 300>>]<br>
<</if>>
<</if>>
[<<moveTo "room_elevator_home" "Back to the lobby." 180 "<<set $daily.homeShortcut=false>><<set $player.cutscene.lockinventory=true>>">>]<br>
[<<moveTo "room_elevator_home" "Head straight home." 300 "<<set $daily.homeShortcut=true>><<set $player.cutscene.lockinventory=true>>">>]
<</if>><<initRoom>>
<<set _event = setup.getNextLocationEvent("company_lobby", 300)>>
<<if _event.eventId>>
<<set setup.addTaskEventSzene($events[_event.eventId].what.szene, $now, _event.eventId, 300)>>
<<moveTo "company_lobby">>
<<elseif !$daily.homeShortcut>>
<<moveTo "company_lobby">>
<<else>>
<<set _event = setup.getNextLocationEvent("room_citymap", 300)>>
<<if _event.eventId>>
<<set setup.addTaskEventSzene($events[_event.eventId].what.szene, $now, _event.eventId, 300)>>
<<moveTo "room_citymap">>
<<else>>
<<moveTo "room_foyer">>
<</if>>
<</if>><<set _event = setup.getNextLocationEvent("company_lobby", 300)>>
<<if _event.eventId>>
<<set setup.addTaskEventSzene($events[_event.eventId].what.szene, $now, _event.eventId, 300)>>
<<set _nextPassage = "company_lobby">>
<<elseif !$daily.homeShortcut>>
<<set _nextPassage = "company_lobby">>
<<else>>
<<set _event = setup.getNextLocationEvent("room_citymap", 300)>>
<<if _event.eventId>>
<<set setup.addTaskEventSzene($events[_event.eventId].what.szene, $now, _event.eventId, 300)>>
<<set _nextPassage = "room_citymap">>
<<else>>
<<set _nextPassage = "room_foyer">>
<</if>>
<</if>>
<<if $daily.homeShortcut>>
[<<moveTo _nextPassage "Head home." 600>>]
<<else>>
[<<moveTo _nextPassage "Look around the lobby." 60>>]
<</if>>/*#
#desc: manager offers to take chastity key forever (obedient)
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.afterWorkEventTriggered = true>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
Shortly before the end of your workday, <<=setup.getNpcName('npc_manager', 'formal')>> emerges from her office and walks up next to you.<br>
<br>
"@@.npc_manager;So, my dear, I was thinking... your chaste habits have become so impressive, refusing the key for so long... well, what do you think about making it permanent? Of accepting the by now obvious fact that you are far better locked, and that having someone else, myself, obviously, as your permanent keyholder really is the best thing for you...@@"<br>
<br>
Your heart races, give up your key permanently? You get the feeling that, once this decision is made, no amount of begging will see you ever again be in control of your key...<br>
<br>
<<printThought "Even if I'm not planning on taking it back... should I keep my options open?... or surrender to her again...">><br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_offer_2' 'Accept her offer.' 60 "<<set $scene.accept=true>>">>]<br>
[<<moveTo 'room_office_sissy_secretary_work_after_work_key_offer_2' 'Decline her offer.' 60 "<<set $scene.accept=false>>">>]
</div>/*#
#desc: chastity key taken forever (obedient)
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.afterWorkEventTriggered = true>>
<<if $scene.accept>>
<<set $player.sec_style.submission.permanent_key = "obedient">>
<<include "addMilkingTopic">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11.5'
6
'event_psychiatrist_session_perm_key_1'
false
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_other_keyholder'
0
'theme_manager_discuss_other_keyholder_1'
true
>>
<<setThreshold 'submission' 'submissive_secretary' 'key_permanent'>>
<<applyExperience 'submission' 15 'unbelievable' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 3>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<else>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<if $scene.accept>>
Your heart races as you nod, submissively replying that you agree, that, as committed to obedience as you are, it would be safest if you never again were in possession of your key.<br>
<br>
She smiles, beaming with pride. "@@.npc_manager;Oh, my sweet, beautiful thing... you have no idea how happy it makes me to hear you say those words, to know that I have your permission, and understanding, that you remaining locked under my control in perpetuity is the right and proper thing, for the both of us. Trust me when I say that I take this responsibility with the utmost solemnity that it deserves.@@"<br>
<br>
You blush at her effusive compliments, even moreso when she leans down to gently kiss you on the forehead. "@@.npc_manager;You have done a wonderful thing today, my pet, an important step on the road of submission that the both of us will always look back upon fondly.@@"
<<else>>
You reply that, while you, of course, trust her with the key. You feel a bit safer in making such a choice, knowing that you could ask for it back, should the need arise.<br>
<br>
The edge of her lip barely twitches and you can tell you disappointed her, if only ever so slightly. "@@.npc_manager;Of course, this little dance is its own show of trust... still, if you ever change your mind...@@"<br>
<br>
You nod and explain that she would, of course, be the first to know. She nods.<br>
<br>
<</if>>
She turns and disappears back into her office.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' 'Continue.' 60>>]
</div>/*#
#desc: chastity key taken forever (money)
#status: FINISHED 0.7.11.0
#*/
<<set $player.inside = false>>
<<include enterroom>>
<<if setup.changedRoom()>>
<<set $scene.afterWorkEventTriggered = true>>
<<switch $scene.action>>
<<case 'accept'>>
<<set $player.sec_style.submission.permanent_key = "money">>
<<include "addMilkingTopic">>
<<addNpcTheme 'npc_psychiatrist' 'manager' 'theme_psychiatrist_manager_11.5'
6
'event_psychiatrist_session_perm_key_1'
false
>>
<<addNpcTheme 'npc_manager' 'chastity_general' 'theme_manager_other_keyholder'
0
'theme_manager_discuss_other_keyholder_1'
true
>>
<<setThreshold 'submission' 'submissive_secretary' 'key_permanent'>>
<<applyExperience 'submission' 15 'unbelievable' $SEEN_FRIEND>>
<<incrementEmotion 'affection' 'npc_manager' 2>>
<<set $npc_manager.flags.trustplayerwithkey = false>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $player.work.payment += 20>>
<<case 'key'>>
<<applyExperience 'submission' 10 'very' $SEEN_FRIEND>>
<<decrementEmotion 'affection' 'npc_manager' 1>>
<<set $npc_manager.flags.playerstayedinchastity = false>>
<<set $npc_manager.flags.chastitydays = 0>>
<<set $npc_manager.flags.hascagekey = false>>
<<set _keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<addItem _keyId>>
<<case 'nokey'>>
<<decrementEmotion 'affection' 'npc_manager' 2>>
<<if !$npc_manager.flags.unlocked_badsissy1>>
<<set $npc_manager.flags.unlocked_badsissy1 = true>>
<<addNpcTheme 'npc_manager' 'casual_punishment' 'theme_manager_casual_punishment_1'
0
'event_manager_theme_badsissy1'
true
>>
<</if>>
<<set $npc_manager.flags.hascagekey = true>>
<<set $npc_manager.flags.playerstayedinchastity = true>>
<<include "addMilkingTopic">>
<<set $scene.keyId = setup.getItemObjFromType("cage").lockable[1]>>
<<deleteItem $scene.keyId>>
<<set $scene.cage_locked = $inventory[setup.getItemFromType("cage")].status.lock>>
<<if !$scene.cage_locked>>
<<set _cageId = setup.getItemFromType("cage")>>
<<manipulateItem _cageId "lock" true>>
<</if>>
<<applyExperience 'submission' 8 'very' $SEEN_FRIEND>>
<</switch>>
<<set _x = setup.addManagerEndlessTask()>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage) setup.charImageManager()>>
<div id="invframe" class="scrolltext">
<<switch $scene.action>>
<<case 'accept'>>
You hesitate for but a moment before slowly nodding. <<=setup.getNpcName("npc_manager","formal")>> grins in triumphant pride. "@@.npc_manager;Such a smart, prudent decision. Really a win-win-win: I keep your key, you remain securely locked, and you get a few more credits every week to spend on something pretty... wonderful!@@"<br>
<br>
You blush at the compliments as she tucks the key safely away. "@@.npc_manager;Well, on that note I shall wish you a lovely weekend. And you should know that my weekend will surely be improved, as well, knowing that there is no chance of you getting into any sort of trouble between now and Monday!@@"
<<case 'key'>>
You reply that, much as you appreciate her offer, you would actually like to have your key back.<br>
<br>
<<=setup.getNpcName("npc_manager","formal")>> frowns, but hands over the key nonetheless.<br>
<br>
"@@.npc_manager;Hmm... perhaps I had over-estimated your development... no matter, I am a woman of my word, I can only hope you come to understand the logic of accepting me as your permanent keyholder sooner, rather than later. It really is the best thing for one such as you. Perhaps you could spend some time thinking about that this weekend. It would be a welcome focus in lieu of the distractions that will surely ensue from having the key in your possession.@@"
<<case 'nokey'>>
You explain that, while you would like her to remain in possession of your key over the weekend, you wish to retain the option to ask for it back at a future date, rather than surrender it completely.<br>
<br>
You can tell she is disappointed, but she nods as she tucks the key away.<br>
<br>
"@@.npc_manager;Very well. I would have, of course, preferred you to accept my offer, but this is a productive compromise that ensures you remain properly locked. I believe that will do it for today, and I shall wish you a good weekend.@@"
<<default>>
ERROR: unexpected scene.action <<=$scene.action>>
<</switch>>
<br><br>
You thank her for her time as she dismisses you from her office.<br>
<br>
[<<moveTo 'room_office_sissy_secretary_work_fridayafternoon' 'Back to your desk.' 60>>]
</div>/*#
#desc: chair bleeds off arousal before you start work
#status: FINISHED 0.8.0.0
#*/
<<include enterroom>>
<<if setup.changedRoom()>>
<<set _anal = setup.getTotalValue("anal")>>
<<applyExperience 'anal' _anal 'normal' $ALONE>>
<<set _oral = setup.getTotalValue("oral")>>
<<applyExperience 'oral' _oral 'normal' $ALONE>>
<<applyExperience 'bondage' 15 'very' $ALONE>>
<<applyExperience 'bdsm' 15 'normal' $ALONE>>
<<set $player.timebased.horny = $player.body_ref.erectionThreshold-15>>
<<set $now = setup.advanceDate($player, $now, 'seconds', 180)>>
<<set $scene.lockCage = false>>
<<if setup.checkItemTypeWorn("cage")>>
<<set $scene.cage = setup.getItemFromType("cage")>>
<<set $scene.lockCage = !$inventory[$scene.cage].lock>>
<<if $scene.lockCage>>
<<manipulateItem $scene.cage "lock" true>>
<</if>>
<</if>>
<</if>>
<<set $player.location = setup.wordSecretaryOffice()>>
<<initRoom>>
<<include playerMenu>>
<<createAdvBGR setup.imageSecretaryOffice($npc_manager.stage)>>
<div id="invframe" class="scrolltext">
You sit down and gasp as the chair activates unbidden, strapping you securely in place<<if $scene.lockCage>>, locking your <<=setup.getItemTypeName('cage')>>,<</if>> and shoving a large gag into your mouth.<br>
<br>
You moan through the gag as <<if setup.checkItemTypeWorn("plug") && !setup.checkItemTypeTag('plug', ['hollow'])>>your plug is removed and <</if>><<if $player.body_ref.vagina>>a pair of lower dildos thrust up into you<<else>>a large dildo thrusts into your ass<</if>>.<br>
<br>
You strain uselessly against your bonds as you are shocked and fucked, a rapid sequence that doesn't get you off, but instead leaves you aroused, but functional, and even a little energised.<br>
<br>
The chair releases you from its temporary grasp after but a couple of minutes. You catch your breath and consider how to approach the <<if $now.getUTCHours() < 11>>rest of the morning<<else>>afternoon<</if>>.<br>
<br>
[<<moveTo $scene.retPassage "Continue." 60>>]
</div>